From f7464c8df61b0ee53a591a0673adb9e99819a4cc Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 3 Jun 2021 13:34:22 -0400 Subject: [PATCH 01/45] Protect against bounds error when ntol range goes below 0. --- lib/qra/q65/q65.f90 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/qra/q65/q65.f90 b/lib/qra/q65/q65.f90 index 0552bc8da..c3795d125 100644 --- a/lib/qra/q65/q65.f90 +++ b/lib/qra/q65/q65.f90 @@ -439,8 +439,8 @@ subroutine q65_ccf_22(s1,iz,jz,nfqso,ntol,ndepth,ntrperiod,iavg,ipk,jpk, & ib=min(nfb,4900)/df if(nqd.ne.1 .or. iavg.ne.0) max_drift=0 if(max_drift.ne.0) then - ia=nint((nfqso-ntol)/df) - ib=nint((nfqso+ntol)/df) + ia=max(100,nint((nfqso-ntol)/df)) + ib=min(4900,nint((nfqso+ntol)/df)) endif do i=ia,ib From 2e05e120302a93ccb2ec8615bf57b1735b3f86a2 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Mon, 7 Jun 2021 12:57:23 -0400 Subject: [PATCH 02/45] Increase size of iwave[] buffer for 12000 Hz sample rate. --- map65/mainwindow.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/map65/mainwindow.cpp b/map65/mainwindow.cpp index 947f25969..f3d08f2a1 100644 --- a/map65/mainwindow.cpp +++ b/map65/mainwindow.cpp @@ -23,7 +23,7 @@ #define NFFT 32768 -short int iwave[2*60*11025]; //Wave file for Tx audio +short int iwave[2*60*12000]; //Wave file for Tx audio int nwave; //Length of Tx waveform bool btxok; //True if OK to transmit bool bTune; From b7cb4ae9a6f3808a4ca26df008f2b108cacb7aca Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Tue, 8 Jun 2021 11:12:42 -0400 Subject: [PATCH 03/45] Make test_q65 execute jt9 with the single_decode ('-X 32') flag set. --- lib/test_q65.f90 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/test_q65.f90 b/lib/test_q65.f90 index e2987d719..598de976f 100644 --- a/lib/test_q65.f90 +++ b/lib/test_q65.f90 @@ -73,7 +73,7 @@ program test_q65 ! 1 2 3 4 5 6 7 ! 1234567890123456789012345678901234567890123456789012345678901234567890123456' cmd1='q65sim "K1ABC W9XYZ EN37 " A 1500 5.0 0.0 0.0 1 60 100 -10.0 > junk0' - cmd2='jt9 -3 -p 15 -L 300 -H 3000 -d 3 -b A -Q 3 -f 1500 *.wav > junk' + cmd2='jt9 -3 -p 15 -L 300 -H 3000 -d 3 -b A -Q 3 -f 1500 -X 32 *.wav > junk' write(cmd1(10:33),'(a)') '"'//msg//'"' cmd1(35:35)=csubmode From dac2414da5a24753492dd405f79c1031c72ac713 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Tue, 8 Jun 2021 11:16:26 -0400 Subject: [PATCH 04/45] Fix several comments. --- lib/q65_decode.f90 | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/q65_decode.f90 b/lib/q65_decode.f90 index f917d5b7d..1dfaf2e00 100644 --- a/lib/q65_decode.f90 +++ b/lib/q65_decode.f90 @@ -148,13 +148,14 @@ contains nused=1 iavg=0 call timer('q65_dec0',0) -! Call top-level routine in q65 module: establish sync and try for a q3 decode. +! Call top-level routine in q65 module: establish sync and try for a +! q3 of q0 decode. call q65_dec0(iavg,nutc,iwave,ntrperiod,nfqso,ntol,ndepth,lclearave, & emedelay,xdt,f0,snr1,width,dat4,snr2,idec) call timer('q65_dec0',1) if(idec.ge.0) then - dtdec=xdt !We have a list-decode result at nfqso + dtdec=xdt !We have a q3 or q0 decode at nfqso f0dec=f0 go to 100 endif From 6a2526f98474688cd451d7cc1fc1b76252837e3a Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Wed, 9 Jun 2021 12:43:19 +0100 Subject: [PATCH 05/45] Updated Boost library build information to include Boost::timer --- doc/building-Boost-libs.txt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/doc/building-Boost-libs.txt b/doc/building-Boost-libs.txt index f45b3ceec..79a7f9aaf 100644 --- a/doc/building-Boost-libs.txt +++ b/doc/building-Boost-libs.txt @@ -141,7 +141,7 @@ C:\Tools\boost-build\MinGW32\bin\b2 -j8 toolset=gcc ^ --build-dir=%USERPROFILE%\build\boost ^ address-model=32 architecture=x86 variant=debug,release ^ link=shared threading=multi ^ - --with-log --with-stacktrace --prefix=C:\Tools\boost install + --with-log --with-stacktrace --with-timer --prefix=C:\Tools\boost install If all is well you should see the following line about a 1/3 of the way through the initial configuration steps. @@ -188,7 +188,7 @@ cd ..\.. C:\Tools\boost-build\MinGW64\bin\b2 -j8 toolset=gcc-8~64 ^ address-model=64 architecture=x86 variant=debug,release ^ link=shared threading=multi ^ - --with-log --with-stacktrace ^ + --with-log --with-stacktrace --with-timer ^ --build-dir=%USERPROFILE%\build\boost ^ --prefix=C:\Tools\boost install @@ -206,9 +206,11 @@ After some time it should complete with something like: warnings can usually be ignored. If successful; you can release some space by cleaning the build tree: -C:\Tools\boost-build\MinGW32\bin\b2 toolset=gcc-8~64 ^ +C:\Tools\boost-build\MinGW64\bin\b2 toolset=gcc-8~64 ^ address-model=64 --build-dir=%USERPROFILE%\build\boost ^ --build-type=complete clean + + Run-time Environment -------------------- From 05d8aa50226a8ccd771d79dd58e979e72b4e8f5e Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Wed, 9 Jun 2021 13:12:25 +0100 Subject: [PATCH 06/45] Repair a minor defect in callsign input validation --- validators/CallsignValidator.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/validators/CallsignValidator.cpp b/validators/CallsignValidator.cpp index d6e1bb2c9..d6aba538c 100644 --- a/validators/CallsignValidator.cpp +++ b/validators/CallsignValidator.cpp @@ -14,7 +14,7 @@ auto CallsignValidator::validate (QString& input, int& pos) const -> State input.remove (0, 1); if (pos > 0) --pos; } - while (input.size () && input[input.size ()].isSpace ()) + while (input.size () && input[input.size () - 1].isSpace ()) { if (pos > input.size ()) --pos; input.chop (1); From b2dd8d5817fb6bdde69c76caba43a10f78a10e8e Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 10 Jun 2021 10:23:48 -0400 Subject: [PATCH 07/45] Remove several routines that are no longer used. --- getfile.cpp | 220 +--------------------------------------------------- getfile.h | 11 --- 2 files changed, 1 insertion(+), 230 deletions(-) diff --git a/getfile.cpp b/getfile.cpp index 8cc6cedc2..d5f1b75f9 100644 --- a/getfile.cpp +++ b/getfile.cpp @@ -1,9 +1,9 @@ #include "getfile.h" -#include #if QT_VERSION >= QT_VERSION_CHECK(5, 15, 0) #include #include #endif + #include #include #include @@ -22,155 +22,6 @@ #include #endif -#include "commons.h" - -extern dec_data dec_data; - -void getfile(QString fname, int ntrperiod) -{ - // struct WAVHDR { - // char ariff[4]; - // int lenfile; - // char awave[4]; - // char afmt[4]; - // int lenfmt; - // short nfmt2; - // short nchan2; - // int nsamrate; - // int nbytesec; - // short nbytesam2; - // short nbitsam2; - // char adata[4]; - // int ndata; - // } hdr; - - char name[512]; - strncpy(name,fname.toLatin1(), sizeof (name) - 1); - name[sizeof (name) - 1] = '\0'; - - FILE* fp=fopen(name,"rb"); - - int i1=fname.lastIndexOf("/"); - QString baseName=fname.mid(i1+1); - - i1=fname.indexOf(".wav",0,Qt::CaseInsensitive); - dec_data.params.nutc=0; - if(i1>0) { - int i0=fname.indexOf("_",-11); - if(i1==i0+7) { - dec_data.params.nutc=fname.mid(i1-6,6).toInt(); - } else { - dec_data.params.nutc=100*fname.mid(i1-4,4).toInt(); - } - } - if(ntrperiod > 120 or ntrperiod <0) ntrperiod=120; - int npts=ntrperiod*12000; - memset(dec_data.d2,0,2*npts); - - if(fp != NULL) { - struct - { - char id[4]; - uint32_t size; - } desc; - char type[4]; - struct - { - uint16_t nfmt2; - uint16_t nchan2; - uint32_t nsamrate; - uint32_t nbytesec; - uint16_t nbytesam2; - uint16_t nbitsam2; - } fmt; - - // read header - if (fread(&desc, sizeof desc, 1, fp) < 1) return; // RIFF - if (fread(type, sizeof type, 1, fp) < 1) return; // WAVE - do - { - if (fread(&desc, sizeof desc, 1, fp) < 1) return; // WAVE component - if (!memcmp(desc.id,"fmt ",4)) { - fpos_t pos; - fgetpos(fp,&pos); - if (fread(&fmt,sizeof fmt,1,fp) < 1) return; - fsetpos(fp,&pos); - } - if (!memcmp(desc.id,"data",sizeof desc.id)) break; - } while (!fseek(fp,(desc.size + 1) / 2 * 2,SEEK_CUR)); - - // Read (and ignore) a 44-byte WAV header; then read data - // int n=fread(&hdr,1,44,fp); - int n=fread(dec_data.d2,2,npts,fp); - if(fmt.nsamrate==11025) wav12_(dec_data.d2,dec_data.d2,&n,(short*)&fmt.nbitsam2); - fclose(fp); - dec_data.params.newdat=1; - dec_data.params.kin=n; - } -} - -void savewav(QString fname, int ntrperiod) -{ - struct { - char ariff[4]; //ChunkID: "RIFF" - int nchunk; //ChunkSize: 36+SubChunk2Size - char awave[4]; //Format: "WAVE" - char afmt[4]; //Subchunk1ID: "fmt " - int lenfmt; //Subchunk1Size: 16 - short int nfmt2; //AudioFormat: 1 - short int nchan2; //NumChannels: 1 - int nsamrate; //SampleRate: 12000 - int nbytesec; //ByteRate: SampleRate*NumChannels*BitsPerSample/8 - short int nbytesam2; //BlockAlign: NumChannels*BitsPerSample/8 - short int nbitsam2; //BitsPerSample: 16 - char adata[4]; //Subchunk2ID: "data" - int ndata; //Subchunk2Size: numSamples*NumChannels*BitsPerSample/8 - } hdr; - - int npts=ntrperiod*12000; -// qint16* buf=(qint16*)malloc(2*npts); - char name[512]; - strncpy(name,fname.toLatin1(),sizeof (name) - 1); - name[sizeof (name) - 1] = '\0'; - FILE* fp=fopen(name,"wb"); - - if(fp != NULL) { -// Write a WAV header - hdr.ariff[0]='R'; - hdr.ariff[1]='I'; - hdr.ariff[2]='F'; - hdr.ariff[3]='F'; - hdr.nchunk=36 + 2*npts; - hdr.awave[0]='W'; - hdr.awave[1]='A'; - hdr.awave[2]='V'; - hdr.awave[3]='E'; - hdr.afmt[0]='f'; - hdr.afmt[1]='m'; - hdr.afmt[2]='t'; - hdr.afmt[3]=' '; - hdr.lenfmt=16; - hdr.nfmt2=1; - hdr.nchan2=1; - hdr.nsamrate=12000; - hdr.nbytesec=2*12000; - hdr.nbytesam2=2; - hdr.nbitsam2=16; - hdr.adata[0]='d'; - hdr.adata[1]='a'; - hdr.adata[2]='t'; - hdr.adata[3]='a'; - hdr.ndata=2*npts; - - fwrite(&hdr,sizeof(hdr),1,fp); -// memcpy(dec_data.d2,buf,2*npts); -// fwrite(buf,2,npts,fp); - fwrite(dec_data.d2,2,npts,fp); - fclose(fp); - } -// free(buf); -} - //#define MAX_RANDOM 0x7fffffff /* Generate gaussian random float with mean=0 and std_dev=1 */ float gran() @@ -202,72 +53,3 @@ float gran() return v2*fac; #endif } - -int ptt(int nport, int ntx, int* iptt, int* nopen) -{ -#ifdef WIN32 - static HANDLE hFile; - char s[10]; - int i3=1,i4=1,i5=1,i6=1,i9=1,i00=1; //Defs to silence compiler warning - - if(nport==0) { - *iptt=ntx; - return 0; - } - - if(ntx && (!(*nopen))) { - sprintf(s,"\\\\.\\COM%d",nport); - hFile=CreateFile(TEXT(s),GENERIC_WRITE,0,NULL,OPEN_EXISTING, - FILE_ATTRIBUTE_NORMAL,NULL); - if(hFile==INVALID_HANDLE_VALUE) { - QString t; - t = t.asprintf("Cannot open COM port %d for PTT\n",nport); - return 1; - } - *nopen=1; - } - - if(ntx && *nopen) { - i3=EscapeCommFunction(hFile,SETRTS); - i5=EscapeCommFunction(hFile,SETDTR); - *iptt=1; - } - - else { - i4=EscapeCommFunction(hFile,CLRRTS); - i6=EscapeCommFunction(hFile,CLRDTR); - i9=EscapeCommFunction(hFile,CLRBREAK); - i00=CloseHandle(hFile); - *iptt=0; - *nopen=0; - } - if((i3+i4+i5+i6+i9+i00)==-999) return 1; //Silence compiler warning - return 0; -#else - int control=TIOCM_RTS | TIOCM_DTR; -// int control = TIOCM_RTS; - static int fd; - - if(*nopen==0) { - fd=open("/dev/ttyUSB0",O_RDWR | O_NONBLOCK); - if(fd<0) { - return -1; - } - *nopen=1; - } - - if(ntx) { - ioctl(fd, TIOCMBIS, &control); - *iptt=1; - *nopen=1; - } else { - ioctl(fd, TIOCMBIC, &control); - close(fd); - *iptt=0; - *nopen=0; - } - return 0; -#endif - if((nport+ntx+(*iptt)==-99999)) *nopen=0; //Silence compiler warning - return 0; -} diff --git a/getfile.h b/getfile.h index 4dfd1dbbe..c79b9f30f 100644 --- a/getfile.h +++ b/getfile.h @@ -1,19 +1,8 @@ // -*- Mode: C++ -*- #ifndef GETFILE_H #define GETFILE_H -#include -#include #include -void getfile(QString fname, int ntrperiod); float gran(); -//int ptt(int* nport, int* ntx, int* iptt); -int ptt(int nport, int ntx, int* iptt, int* nopen); - -extern "C" { -int ptt_(int nport, int ntx, int* iptt, int* nopen); -void wav12_(short d2[], short d1[], int* nbytes, short* nbitsam2); -} - #endif // GETFILE_H From ed0279c226d933f292b786ed74bc418e0151f8a5 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 10 Jun 2021 11:44:20 -0400 Subject: [PATCH 08/45] Code cleanup in keyPressEvent(). --- widgets/mainwindow.cpp | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index f8c1f2e0c..c35264ff3 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -2201,17 +2201,12 @@ void MainWindow::keyPressEvent (QKeyEvent * e) return; } break; - case Qt::Key_Z: //### Recover from hung decode() ?? ### - if(e->modifiers() & Qt::AltModifier) { - decodeDone(); - return; - } - break; case Qt::Key_PageUp: - - break; - case Qt::Key_PageDown: - band_changed(m_freqNominal-2000); - break; } + case Qt::Key_X: + if(e->modifiers() & Qt::AltModifier) { +// qDebug() << "Alt-X" << WSPR_message(); + return; + } + } QMainWindow::keyPressEvent (e); } From a891220b9e33450303577ee7a1bae54562f2871d Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 10 Jun 2021 12:57:53 -0400 Subject: [PATCH 09/45] Remove declaration of an unused variable. --- widgets/mainwindow.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index c35264ff3..1ebd022cf 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -3802,7 +3802,6 @@ void MainWindow::guiUpdate() static char message[38]; static char msgsent[38]; double txDuration; - QString rt; if(m_TRperiod==0) m_TRperiod=60.0; txDuration=0.0; From df86257119f75e9b054f373b642cd41d883ed4ae Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 10 Jun 2021 14:39:23 -0400 Subject: [PATCH 10/45] Add helper_functions.cpp with a function tx_duration(). --- CMakeLists.txt | 1 + helper_functions.cpp | 33 +++++++++++++++++++++++++++++++++ helper_functions.h | 7 +++++++ widgets/mainwindow.cpp | 9 ++++++++- wsjtx.pro | 2 ++ 5 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 helper_functions.cpp create mode 100644 helper_functions.h diff --git a/CMakeLists.txt b/CMakeLists.txt index 3c1bedfee..6cb21cf97 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -169,6 +169,7 @@ set (fort_qt_CXXSRCS ) set (wsjt_qt_CXXSRCS + helper_functions.cpp qt_helpers.cpp widgets/MessageBox.cpp MetaDataRegistry.cpp diff --git a/helper_functions.cpp b/helper_functions.cpp new file mode 100644 index 000000000..706c427eb --- /dev/null +++ b/helper_functions.cpp @@ -0,0 +1,33 @@ +#include "helper_functions.h" + +double tx_duration(QString mode, double trPeriod, int nsps, bool bFast9) +{ + double txt=0.0; + if(mode=="FT4") txt=1.0 + 105*576/12000.0; // FT4 + if(mode=="FT8") txt=1.0 + 79*1920/12000.0; // FT8 + if(mode=="JT4") txt=1.0 + 207.0*2520/11025.0; // JT4 + if(mode=="JT9") txt=1.0 + 85.0*nsps/12000.0; // JT9 + if(mode=="JT65") txt=1.0 + 126*4096/11025.0; // JT65 + if(mode=="Q65") { // Q65 + if(trPeriod==15) txt=0.5 + 85*1800/12000.0; + if(trPeriod==30) txt=0.5 + 85*3600/12000.0; + if(trPeriod==60) txt=1.0 + 85*7200/12000.0; + if(trPeriod==120) txt=1.0 + 85*16000/12000.0; + if(trPeriod==300) txt=1.0 + 85*41472/12000.0; + } + if(mode=="WSPR") txt=2.0 + 162*8192/12000.0; // WSPR + if(mode=="FST4" or mode=="FST4W") { //FST4, FST4W + if(trPeriod==15) txt=1.0 + 160*720/12000.0; + if(trPeriod==30) txt=1.0 + 160*1680/12000.0; + if(trPeriod==60) txt=1.0 + 160*3888/12000.0; + if(trPeriod==120) txt=1.0 + 160*8200/12000.0; + if(trPeriod==300) txt=1.0 + 160*21504/12000.0; + if(trPeriod==900) txt=1.0 + 160*66560/12000.0; + if(trPeriod==1800) txt=1.0 + 160*134400/12000.0; + } + if(mode=="MSK144" or bFast9) { + txt=trPeriod-0.25; // JT9-fast, MSK144 + } + if(mode=="Echo") txt=2.4; + return txt; +} diff --git a/helper_functions.h b/helper_functions.h new file mode 100644 index 000000000..e62e23b7d --- /dev/null +++ b/helper_functions.h @@ -0,0 +1,7 @@ +#ifndef HELPER_FUNCTIONS_H +#define HELPER_FUNCTIONS_H +#include + +double tx_duration(QString mode, double trPeriod, int nsps, bool bFast9); + +#endif // HELPER_FUNCTIONS_H diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 1ebd022cf..a7f5c1188 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -45,6 +45,7 @@ #include #endif +#include "helper_functions.h" #include "revision_utils.hpp" #include "qt_helpers.hpp" #include "Network/NetworkAccessManager.hpp" @@ -1031,6 +1032,7 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, void MainWindow::not_GA_warning_message () { + /* MessageBox::critical_message (this, "This is a pre-release version of WSJT-X 2.5.0 made\n" "available for testing purposes. By design it will\n" @@ -1039,6 +1041,7 @@ void MainWindow::not_GA_warning_message () if (now >= QDateTime {{2021, 8, 31}, {23, 59, 59, 999}, Qt::UTC}) { Q_EMIT finished (); } + */ } void MainWindow::initialize_fonts () @@ -2203,7 +2206,7 @@ void MainWindow::keyPressEvent (QKeyEvent * e) break; case Qt::Key_X: if(e->modifiers() & Qt::AltModifier) { -// qDebug() << "Alt-X" << WSPR_message(); + qDebug() << "Alt-X" << revision(); return; } } @@ -3858,6 +3861,9 @@ void MainWindow::guiUpdate() if(m_transmitting) m_bEchoTxed=true; } + Q_ASSERT(txDuration == tx_duration(m_mode,m_TRperiod,m_nsps,m_bFast9)); + Q_ASSERT(m_mode==m_modeTx); + if(m_mode=="WSPR" or m_mode=="FST4W") { if(m_nseq==0 and m_ntr==0) { //Decide whether to Tx or Rx m_tuneup=false; //This is not an ATU tuneup @@ -4381,6 +4387,7 @@ void MainWindow::guiUpdate() //Once per second (onesec) if(nsec != m_sec0) { // qDebug() << "AAA" << nsec; + if(m_mode=="FST4") chk_FST4_freq_range(); m_currentBand=m_config.bands()->find(m_freqNominal); if( SpecOp::HOUND == m_config.special_op_id() ) { diff --git a/wsjtx.pro b/wsjtx.pro index 04c0ce68e..1cf2a1295 100644 --- a/wsjtx.pro +++ b/wsjtx.pro @@ -65,6 +65,7 @@ SOURCES += \ getfile.cpp \ WFPalette.cpp \ WsprTxScheduler.cpp \ + helper_functions.cpp \ main.cpp decodedtext.cpp wsprnet.cpp \ WSPRBandHopping.cpp MessageAggregator.cpp SampleDownloader.cpp qt_helpers.cpp\ MultiSettings.cpp PhaseEqualizationDialog.cpp \ @@ -72,6 +73,7 @@ SOURCES += \ LotWUsers.cpp TraceFile.cpp HEADERS += qt_helpers.hpp qt_db_helpers.hpp \ + helper_functions.h \ pimpl_h.hpp pimpl_impl.hpp \ ExceptionCatchingApplication.hpp Logger.hpp WSJTXLogging.hpp \ Radio.hpp NetworkServerLookup.hpp revision_utils.hpp \ From 57c4187b24b31c657e4b24d0997b467b72a34687 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 10 Jun 2021 14:40:56 -0400 Subject: [PATCH 11/45] Remove the redundant cone for txDuration. --- widgets/mainwindow.cpp | 32 ++------------------------------ 1 file changed, 2 insertions(+), 30 deletions(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index a7f5c1188..58b228f15 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -3807,32 +3807,8 @@ void MainWindow::guiUpdate() double txDuration; if(m_TRperiod==0) m_TRperiod=60.0; - txDuration=0.0; - if(m_modeTx=="FT4") txDuration=1.0 + 105*576/12000.0; // FT4 - if(m_modeTx=="FT8") txDuration=1.0 + 79*1920/12000.0; // FT8 - if(m_modeTx=="JT4") txDuration=1.0 + 207.0*2520/11025.0; // JT4 - if(m_modeTx=="JT9") txDuration=1.0 + 85.0*m_nsps/12000.0; // JT9 - if(m_modeTx=="JT65") txDuration=1.0 + 126*4096/11025.0; // JT65 - if(m_modeTx=="Q65") { // Q65 - if(m_TRperiod==15) txDuration=0.5 + 85*1800/12000.0; - if(m_TRperiod==30) txDuration=0.5 + 85*3600/12000.0; - if(m_TRperiod==60) txDuration=1.0 + 85*7200/12000.0; - if(m_TRperiod==120) txDuration=1.0 + 85*16000/12000.0; - if(m_TRperiod==300) txDuration=1.0 + 85*41472/12000.0; - } - if(m_modeTx=="WSPR") txDuration=2.0 + 162*8192/12000.0; // WSPR - if(m_modeTx=="FST4" or m_mode=="FST4W") { //FST4, FST4W - if(m_TRperiod==15) txDuration=1.0 + 160*720/12000.0; - if(m_TRperiod==30) txDuration=1.0 + 160*1680/12000.0; - if(m_TRperiod==60) txDuration=1.0 + 160*3888/12000.0; - if(m_TRperiod==120) txDuration=1.0 + 160*8200/12000.0; - if(m_TRperiod==300) txDuration=1.0 + 160*21504/12000.0; - if(m_TRperiod==900) txDuration=1.0 + 160*66560/12000.0; - if(m_TRperiod==1800) txDuration=1.0 + 160*134400/12000.0; - } - if(m_mode=="MSK144" or m_bFast9) { - txDuration=m_TRperiod-0.25; // JT9-fast, MSK144 - } + txDuration=tx_duration(m_mode,m_TRperiod,m_nsps,m_bFast9); + double tx1=0.0; double tx2=txDuration; @@ -3854,16 +3830,12 @@ void MainWindow::guiUpdate() m_tRemaining=m_TRperiod - fmod(tsec,m_TRperiod); if(m_mode=="Echo") { - txDuration=2.4; tx1=0.0; tx2=txDuration; if(m_auto and m_s6>4.0) m_bEchoTxOK=true; if(m_transmitting) m_bEchoTxed=true; } - Q_ASSERT(txDuration == tx_duration(m_mode,m_TRperiod,m_nsps,m_bFast9)); - Q_ASSERT(m_mode==m_modeTx); - if(m_mode=="WSPR" or m_mode=="FST4W") { if(m_nseq==0 and m_ntr==0) { //Decide whether to Tx or Rx m_tuneup=false; //This is not an ATU tuneup From a7ee9b29beb540be680aeb413987f4a11762f94a Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 10 Jun 2021 14:49:52 -0400 Subject: [PATCH 12/45] Remove setting of m_modeTx in WideGraph and Plotter. No need for it now. --- widgets/mainwindow.cpp | 11 ----------- widgets/plotter.cpp | 9 ++------- widgets/plotter.h | 2 -- widgets/widegraph.cpp | 7 ------- widgets/widegraph.h | 2 -- 5 files changed, 2 insertions(+), 29 deletions(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 58b228f15..5945a2995 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -1009,7 +1009,6 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, m_fastGraph->setMode(m_mode); m_wideGraph->setMode(m_mode); - m_wideGraph->setModeTx(m_modeTx); connect (&minuteTimer, &QTimer::timeout, this, &MainWindow::on_the_minute); minuteTimer.setSingleShot (true); @@ -6084,7 +6083,6 @@ void MainWindow::on_actionFST4_triggered() setup_status_bar(false); ui->cbAutoSeq->setChecked(true); m_wideGraph->setMode(m_mode); - m_wideGraph->setModeTx(m_modeTx); m_wideGraph->setPeriod(m_TRperiod,6912); m_wideGraph->setRxFreq(ui->RxFreqSpinBox->value()); m_wideGraph->setTol(ui->sbFtol->value()); @@ -6122,7 +6120,6 @@ void MainWindow::on_actionFST4W_triggered() ui->WSPRfreqSpinBox->setMinimum(100); ui->WSPRfreqSpinBox->setMaximum(5000); m_wideGraph->setMode(m_mode); - m_wideGraph->setModeTx(m_modeTx); m_wideGraph->setPeriod(m_TRperiod,6912); m_wideGraph->setTxFreq(ui->WSPRfreqSpinBox->value()); m_wideGraph->setRxFreq(ui->sbFST4W_RxFreq->value()); @@ -6150,7 +6147,6 @@ void MainWindow::on_actionFT4_triggered() m_toneSpacing=12000.0/576.0; ui->actionFT4->setChecked(true); m_wideGraph->setMode(m_mode); - m_wideGraph->setModeTx(m_modeTx); m_send_RR73=true; VHF_features_enabled(bVHF); m_fastGraph->hide(); @@ -6194,7 +6190,6 @@ void MainWindow::on_actionFT8_triggered() m_toneSpacing=0.0; //??? ui->actionFT8->setChecked(true); //??? m_wideGraph->setMode(m_mode); - m_wideGraph->setModeTx(m_modeTx); VHF_features_enabled(bVHF); ui->cbAutoSeq->setChecked(true); m_TRperiod=15.0; @@ -6303,7 +6298,6 @@ void MainWindow::on_actionJT4_triggered() VHF_features_enabled(true); m_wideGraph->setPeriod(m_TRperiod,m_nsps); m_wideGraph->setMode(m_mode); - m_wideGraph->setModeTx(m_modeTx); m_bFastMode=false; m_bFast9=false; setup_status_bar (bVHF); @@ -6345,7 +6339,6 @@ void MainWindow::on_actionJT9_triggered() m_toneSpacing=0.0; ui->actionJT9->setChecked(true); m_wideGraph->setMode(m_mode); - m_wideGraph->setModeTx(m_modeTx); VHF_features_enabled(bVHF); if(m_nSubMode>=4 and bVHF) { ui->cbFast9->setEnabled(true); @@ -6409,7 +6402,6 @@ void MainWindow::on_actionJT65_triggered() VHF_features_enabled(bVHF); m_wideGraph->setPeriod(m_TRperiod,m_nsps); m_wideGraph->setMode(m_mode); - m_wideGraph->setModeTx(m_modeTx); m_wideGraph->setRxFreq(ui->RxFreqSpinBox->value()); m_wideGraph->setTol(ui->sbFtol->value()); m_wideGraph->setTxFreq(ui->TxFreqSpinBox->value()); @@ -6459,7 +6451,6 @@ void MainWindow::on_actionQ65_triggered() QString fname {QDir::toNativeSeparators(m_config.temp_dir().absoluteFilePath ("red.dat"))}; m_wideGraph->setRedFile(fname); m_wideGraph->setMode(m_mode); - m_wideGraph->setModeTx(m_modeTx); m_wideGraph->setPeriod(m_TRperiod,6912); m_wideGraph->setTol(ui->sbFtol->value()); m_wideGraph->setRxFreq(ui->RxFreqSpinBox->value()); @@ -6575,7 +6566,6 @@ void MainWindow::on_actionWSPR_triggered() ui->WSPRfreqSpinBox->setMaximum(1600); m_wideGraph->setPeriod(m_TRperiod,m_nsps); m_wideGraph->setMode(m_mode); - m_wideGraph->setModeTx(m_modeTx); m_bFastMode=false; m_bFast9=false; ui->TxFreqSpinBox->setValue(ui->WSPRfreqSpinBox->value()); @@ -6602,7 +6592,6 @@ void MainWindow::on_actionEcho_triggered() m_modeTx="Echo"; setup_status_bar (true); m_wideGraph->setMode(m_mode); - m_wideGraph->setModeTx(m_modeTx); ui->TxFreqSpinBox->setValue(1500); ui->TxFreqSpinBox->setEnabled (false); if(!m_echoGraph->isVisible()) m_echoGraph->show(); diff --git a/widgets/plotter.cpp b/widgets/plotter.cpp index 8c2e96138..372789c4c 100644 --- a/widgets/plotter.cpp +++ b/widgets/plotter.cpp @@ -479,7 +479,7 @@ void CPlotter::DrawOverlay() //DrawOverlay() } } - if(m_modeTx=="JT9" and m_nSubMode>0) { //JT9 + if(m_mode=="JT9" and m_nSubMode>0) { //JT9 bw=8.0*12000.0/m_nsps; if(m_nSubMode==1) bw=2*bw; //B if(m_nSubMode==2) bw=4*bw; //C @@ -500,7 +500,7 @@ void CPlotter::DrawOverlay() //DrawOverlay() float baud=12000.0/nsps; bw=65.0*h*baud; } - if(m_modeTx=="JT65") { //JT65 + if(m_mode=="JT65") { //JT65 bw=65.0*11025.0/4096.0; if(m_nSubMode==1) bw=2*bw; //B if(m_nSubMode==2) bw=4*bw; //C @@ -817,11 +817,6 @@ void CPlotter::setSubMode(int n) //setSubMode m_nSubMode=n; } -void CPlotter::setModeTx(QString modeTx) //setModeTx -{ - m_modeTx=modeTx; -} - int CPlotter::Fmax() { return m_fMax; diff --git a/widgets/plotter.h b/widgets/plotter.h index 52936f2b8..d1aa064aa 100644 --- a/widgets/plotter.h +++ b/widgets/plotter.h @@ -61,7 +61,6 @@ public: void setTxFreq(int n); void setMode(QString mode); void setSubMode(int n); - void setModeTx(QString modeTx); void SetPercent2DScreen(int percent); int Fmax(); void setDialFreq(double d); @@ -149,7 +148,6 @@ private: QString m_HDivText[483]; QString m_mode; QString m_mode0; - QString m_modeTx; QString m_rxBand; QString m_redFile; diff --git a/widgets/widegraph.cpp b/widgets/widegraph.cpp index 78325d27c..28435a972 100644 --- a/widgets/widegraph.cpp +++ b/widgets/widegraph.cpp @@ -305,13 +305,6 @@ void WideGraph::setSubMode(int n) //setSubMode ui->widePlot->DrawOverlay(); ui->widePlot->update(); } -void WideGraph::setModeTx(QString modeTx) //setModeTx -{ - m_modeTx=modeTx; - ui->widePlot->setModeTx(modeTx); - ui->widePlot->DrawOverlay(); - ui->widePlot->update(); -} void WideGraph::on_spec2dComboBox_currentIndexChanged(int index) { diff --git a/widgets/widegraph.h b/widgets/widegraph.h index e8d241daf..9043f691f 100644 --- a/widgets/widegraph.h +++ b/widgets/widegraph.h @@ -39,7 +39,6 @@ public: void setTxFreq(int n); void setMode(QString mode); void setSubMode(int n); - void setModeTx(QString modeTx); bool flatten(); bool useRef(); void setTol(int n); @@ -116,7 +115,6 @@ private: QString m_rxBand; QString m_mode; - QString m_modeTx; QString m_waterfallPalette; float m_swide[MAX_SCREENSIZE]; QString m_user_defined; From 83758c40daeb6e0d8aa5ada6f38b0fee2eda1ac4 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 10 Jun 2021 15:20:36 -0400 Subject: [PATCH 13/45] Remove all remaining references to m_modeTx. We no longer support dual-mode operation, so it's not needed. --- widgets/mainwindow.cpp | 70 +++++++++++++++++------------------------- widgets/mainwindow.h | 1 - 2 files changed, 29 insertions(+), 42 deletions(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 5945a2995..16706bc76 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -1141,7 +1141,6 @@ void MainWindow::writeSettings() m_settings->beginGroup("Common"); m_settings->setValue("Mode",m_mode); - m_settings->setValue("ModeTx",m_modeTx); m_settings->setValue("SaveNone",ui->actionNone->isChecked()); m_settings->setValue("SaveDecoded",ui->actionSave_decoded->isChecked()); m_settings->setValue("SaveAll",ui->actionSave_all->isChecked()); @@ -1240,7 +1239,6 @@ void MainWindow::readSettings() m_settings->beginGroup("Common"); m_mode=m_settings->value("Mode","JT9").toString(); - m_modeTx=m_settings->value("ModeTx","JT9").toString(); ui->actionNone->setChecked(m_settings->value("SaveNone",true).toBool()); ui->actionSave_decoded->setChecked(m_settings->value("SaveDecoded",false).toBool()); ui->actionSave_all->setChecked(m_settings->value("SaveAll",false).toBool()); @@ -2286,7 +2284,7 @@ void MainWindow::statusChanged() if (!tmpGrid.size ()) tmpGrid="n/a"; // Not Available out << qSetRealNumberPrecision (12) << (m_freqNominal / 1.e6) << ";" << m_mode << ";" << m_hisCall << ";" - << ui->rptSpinBox->value() << ";" << m_modeTx << ";" << tmpGrid + << ui->rptSpinBox->value() << ";" << m_mode << ";" << tmpGrid #if QT_VERSION >= QT_VERSION_CHECK (5, 15, 0) << Qt::endl #else @@ -3139,7 +3137,6 @@ void MainWindow::decode() //decode() if(dec_data.params.nutc < m_nutc0) m_RxLog = 1; //Date and Time to file "ALL.TXT". if(dec_data.params.newdat==1 and !m_diskData) m_nutc0=dec_data.params.nutc; dec_data.params.ntxmode=9; - if(m_modeTx=="JT65") dec_data.params.ntxmode=65; dec_data.params.nmode=9; if(m_mode=="JT65") dec_data.params.nmode=65; if(m_mode=="JT65") dec_data.params.ljt65apon = ui->actionEnable_AP_JT65->isVisible () && @@ -3160,6 +3157,7 @@ void MainWindow::decode() //decode() } if(m_mode=="FST4") dec_data.params.nmode=240; if(m_mode=="FST4W") dec_data.params.nmode=241; + dec_data.params.ntxmode=dec_data.params.nmode; // Is this used any more? dec_data.params.ntrperiod=m_TRperiod; dec_data.params.nsubmode=m_nSubMode; dec_data.params.minw=0; @@ -4035,13 +4033,13 @@ void MainWindow::guiUpdate() } else { if(m_QSOProgress==REPORT || m_QSOProgress==ROGER_REPORT) m_bSentReport=true; if(m_bSentReport and (m_QSOProgressROGER_REPORT)) m_bSentReport=false; - if(m_modeTx=="JT4") gen4_(message, &ichk , msgsent, const_cast (itone), + if(m_mode=="JT4") gen4_(message, &ichk , msgsent, const_cast (itone), &m_currentMessageType, 22, 22); - if(m_modeTx=="JT9") gen9_(message, &ichk, msgsent, const_cast (itone), + if(m_mode=="JT9") gen9_(message, &ichk, msgsent, const_cast (itone), &m_currentMessageType, 22, 22); - if(m_modeTx=="JT65") gen65_(message, &ichk, msgsent, const_cast (itone), + if(m_mode=="JT65") gen65_(message, &ichk, msgsent, const_cast (itone), &m_currentMessageType, 22, 22); - if(m_modeTx=="Q65") { + if(m_mode=="Q65") { int i3=-1; int n3=-1; genq65_(message,&ichk,msgsent,const_cast(itone),&i3,&n3,37,37); @@ -4060,15 +4058,15 @@ void MainWindow::guiUpdate() genwave_(const_cast(itone),&nsym,&nsps4,&nwave, &fsample,&hmod,&f0,&icmplx,foxcom_.wave,foxcom_.wave); } - if(m_modeTx=="WSPR") genwspr_(message, msgsent, const_cast (itone), + if(m_mode=="WSPR") genwspr_(message, msgsent, const_cast (itone), 22, 22); - if(m_modeTx=="MSK144" or m_modeTx=="FT8" or m_modeTx=="FT4" - or m_modeTx=="FST4" or m_modeTx=="FST4W") { + if(m_mode=="MSK144" or m_mode=="FT8" or m_mode=="FT4" + or m_mode=="FST4" or m_mode=="FST4W") { char MyCall[6]; char MyGrid[6]; ::memcpy(MyCall, (m_config.my_callsign()+" ").toLatin1(), sizeof MyCall); ::memcpy(MyGrid, (m_config.my_grid()+" ").toLatin1(), sizeof MyGrid); - if(m_modeTx=="MSK144") { + if(m_mode=="MSK144") { genmsk_128_90_(message, &ichk, msgsent, const_cast (itone), &m_currentMessageType, 37, 37); if(m_restart) { @@ -4078,7 +4076,7 @@ void MainWindow::guiUpdate() } } - if(m_modeTx=="FT8") { + if(m_mode=="FT8") { if(SpecOp::FOX==m_config.special_op_id() and ui->tabWidget->currentIndex()==1) { foxTxSequencer(); } else { @@ -4109,7 +4107,7 @@ void MainWindow::guiUpdate() } } } - if(m_modeTx=="FT4") { + if(m_mode=="FT4") { int ichk=0; char ft4msgbits[77]; genft4_(message, &ichk, msgsent, const_cast (ft4msgbits), @@ -4123,7 +4121,7 @@ void MainWindow::guiUpdate() gen_ft4wave_(const_cast(itone),&nsym,&nsps,&fsample,&f0,foxcom_.wave, foxcom_.wave,&icmplx,&nwave); } - if(m_modeTx=="FST4" or m_modeTx=="FST4W") { + if(m_mode=="FST4" or m_mode=="FST4W") { int ichk=0; int iwspr=0; char fst4msgbits[101]; @@ -4201,7 +4199,7 @@ void MainWindow::guiUpdate() if(m_restart) { write_all("Tx",m_currentMessage); if (m_config.TX_messages ()) { - ui->decodedTextBrowser2->displayTransmittedText(m_currentMessage.trimmed(),m_modeTx, + ui->decodedTextBrowser2->displayTransmittedText(m_currentMessage.trimmed(),m_mode, ui->TxFreqSpinBox->value(),m_bFastMode,m_TRperiod); } } @@ -4299,7 +4297,7 @@ void MainWindow::guiUpdate() if (m_config.TX_messages () && !m_tune && SpecOp::FOX!=m_config.special_op_id()) { ui->decodedTextBrowser2->displayTransmittedText(current_message.trimmed(), - m_modeTx,ui->TxFreqSpinBox->value(),m_bFastMode,m_TRperiod); + m_mode,ui->TxFreqSpinBox->value(),m_bFastMode,m_TRperiod); } } @@ -4862,8 +4860,8 @@ void MainWindow::processMessage (DecodedText const& message, Qt::KeyboardModifie return; } - if ((message.isJT9 () and m_modeTx != "JT9" and m_mode != "JT4") or - (message.isJT65 () and m_modeTx != "JT65" and m_mode != "JT4")) { + if ((message.isJT9 () and m_mode != "JT9" and m_mode != "JT4") or + (message.isJT65 () and m_mode != "JT65" and m_mode != "JT4")) { // We are not allowing mode change, so don't process decode return; } @@ -5920,7 +5918,7 @@ void MainWindow::on_logQSOButton_clicked() //Log QSO button default: break; } - m_logDlg->initLogQSO (m_hisCall, grid, m_modeTx, m_rptSent, m_rptRcvd, + m_logDlg->initLogQSO (m_hisCall, grid, m_mode, m_rptSent, m_rptRcvd, m_dateTimeQSOOn, dateTimeQSOOff, m_freqNominal + ui->TxFreqSpinBox->value(), m_noSuffix, m_xSent, m_xRcvd); m_inQSOwith=""; @@ -6059,7 +6057,7 @@ void MainWindow::displayWidgets(qint64 n) void MainWindow::on_actionFST4_triggered() { m_mode="FST4"; - m_modeTx="FST4"; + m_mode="FST4"; ui->actionFST4->setChecked(true); m_bFast9=false; m_bFastMode=false; @@ -6101,7 +6099,6 @@ void MainWindow::on_actionFST4_triggered() void MainWindow::on_actionFST4W_triggered() { m_mode="FST4W"; - m_modeTx="FST4W"; ui->actionFST4W->setChecked(true); m_bFast9=false; m_bFastMode=false; @@ -6132,7 +6129,6 @@ void MainWindow::on_actionFST4W_triggered() void MainWindow::on_actionFT4_triggered() { m_mode="FT4"; - m_modeTx="FT4"; m_TRperiod=7.5; bool bVHF=m_config.enable_VHF_features(); m_bFast9=false; @@ -6181,7 +6177,6 @@ void MainWindow::on_actionFT8_triggered() m_bFastMode=false; WSPR_config(false); switch_mode (Modes::FT8); - m_modeTx="FT8"; m_nsps=6912; m_FFTSize = m_nsps / 2; Q_EMIT FFTSize (m_FFTSize); @@ -6284,7 +6279,6 @@ void MainWindow::on_actionJT4_triggered() bool bVHF=m_config.enable_VHF_features(); WSPR_config(false); switch_mode (Modes::JT4); - m_modeTx="JT4"; m_TRperiod=60.0; m_modulator->setTRPeriod(m_TRperiod); // TODO - not thread safe m_detector->setTRPeriod(m_TRperiod); // TODO - not thread safe @@ -6329,7 +6323,6 @@ void MainWindow::on_actionJT9_triggered() m_bFastMode=m_bFast9; WSPR_config(false); switch_mode (Modes::JT9); - m_modeTx="JT9"; m_nsps=6912; m_FFTSize = m_nsps / 2; Q_EMIT FFTSize (m_FFTSize); @@ -6385,7 +6378,6 @@ void MainWindow::on_actionJT65_triggered() { on_actionJT9_triggered(); m_mode="JT65"; - m_modeTx="JT65"; bool bVHF=m_config.enable_VHF_features(); WSPR_config(false); switch_mode (Modes::JT65); @@ -6435,7 +6427,6 @@ void MainWindow::on_actionJT65_triggered() void MainWindow::on_actionQ65_triggered() { m_mode="Q65"; - m_modeTx="Q65"; ui->actionQ65->setChecked(true); switch_mode(Modes::Q65); fast_config(false); @@ -6494,7 +6485,6 @@ void MainWindow::on_actionMSK144_triggered() return; } m_mode="MSK144"; - m_modeTx="MSK144"; ui->actionMSK144->setChecked(true); switch_mode (Modes::MSK144); m_nsps=6; @@ -6550,7 +6540,6 @@ void MainWindow::on_actionWSPR_triggered() m_mode="WSPR"; WSPR_config(true); switch_mode (Modes::WSPR); - m_modeTx="WSPR"; m_TRperiod=120.0; m_modulator->setTRPeriod(m_TRperiod); // TODO - not thread safe m_detector->setTRPeriod(m_TRperiod); // TODO - not thread safe @@ -6589,7 +6578,6 @@ void MainWindow::on_actionEcho_triggered() m_hsymStop=9; m_toneSpacing=1.0; switch_mode(Modes::Echo); - m_modeTx="Echo"; setup_status_bar (true); m_wideGraph->setMode(m_mode); ui->TxFreqSpinBox->setValue(1500); @@ -7277,7 +7265,7 @@ void MainWindow::rigFailure (QString const& reason) void MainWindow::transmit (double snr) { double toneSpacing=0.0; - if (m_modeTx == "JT65") { + if (m_mode == "JT65") { if(m_nSubMode==0) toneSpacing=11025.0/4096.0; if(m_nSubMode==1) toneSpacing=2*11025.0/4096.0; if(m_nSubMode==2) toneSpacing=4*11025.0/4096.0; @@ -7287,7 +7275,7 @@ void MainWindow::transmit (double snr) true, false, snr, m_TRperiod); } - if (m_modeTx == "FT8") { + if (m_mode == "FT8") { // toneSpacing=12000.0/1920.0; toneSpacing=-3; if(m_config.x2ToneSpacing()) toneSpacing=2*12000.0/1920.0; @@ -7299,7 +7287,7 @@ void MainWindow::transmit (double snr) true, false, snr, m_TRperiod); } - if (m_modeTx == "FT4") { + if (m_mode == "FT4") { m_dateTimeSentTx3=QDateTime::currentDateTimeUtc(); toneSpacing=-2.0; //Transmit a pre-computed, filtered waveform. Q_EMIT sendMessage (m_mode, NUM_FT4_SYMBOLS, @@ -7308,7 +7296,7 @@ void MainWindow::transmit (double snr) true, false, snr, m_TRperiod); } - if (m_modeTx == "FST4" or m_modeTx == "FST4W") { + if (m_mode == "FST4" or m_mode == "FST4W") { m_dateTimeSentTx3=QDateTime::currentDateTimeUtc(); toneSpacing=-2.0; //Transmit a pre-computed, filtered waveform. int nsps=720; @@ -7330,7 +7318,7 @@ void MainWindow::transmit (double snr) true, false, snr, m_TRperiod); } - if (m_modeTx == "Q65") { + if (m_mode == "Q65") { int nsps=1800; if(m_TRperiod==30) nsps=3600; if(m_TRperiod==60) nsps=7200; @@ -7345,7 +7333,7 @@ void MainWindow::transmit (double snr) true, false, snr, m_TRperiod); } - if (m_modeTx == "JT9") { + if (m_mode == "JT9") { int nsub=pow(2,m_nSubMode); int nsps[]={480,240,120,60}; double sps=m_nsps; @@ -7364,7 +7352,7 @@ void MainWindow::transmit (double snr) true, fastmode, snr, m_TRperiod); } - if (m_modeTx == "MSK144") { + if (m_mode == "MSK144") { m_nsps=6; double f0=1000.0; if(!m_bFastMode) { @@ -7382,7 +7370,7 @@ void MainWindow::transmit (double snr) true, true, snr, m_TRperiod); } - if (m_modeTx == "JT4") { + if (m_mode == "JT4") { if(m_nSubMode==0) toneSpacing=4.375; if(m_nSubMode==1) toneSpacing=2*4.375; if(m_nSubMode==2) toneSpacing=4*4.375; @@ -8385,7 +8373,7 @@ void MainWindow::statusUpdate () const } m_messageClient->status_update (m_freqNominal, m_mode, m_hisCall, QString::number (ui->rptSpinBox->value ()), - m_modeTx, ui->autoButton->isChecked (), + m_mode, ui->autoButton->isChecked (), m_transmitting, m_decoderBusy, rx_frequency, ui->TxFreqSpinBox->value (), m_config.my_callsign (), m_config.my_grid (), @@ -8518,7 +8506,7 @@ void MainWindow::write_transmit_entry (QString const& file_name) time = time.addSecs (-fmod(double(time.time().second()),m_TRperiod)); out << time.toString("yyMMdd_hhmmss") << " Transmitting " << qSetRealNumberPrecision (12) << (m_freqNominal / 1.e6) - << " MHz " << m_modeTx + << " MHz " << m_mode << ": " << m_currentMessage #if QT_VERSION >= QT_VERSION_CHECK (5, 15, 0) << Qt::endl diff --git a/widgets/mainwindow.h b/widgets/mainwindow.h index 0185d75d7..02f6ee691 100644 --- a/widgets/mainwindow.h +++ b/widgets/mainwindow.h @@ -612,7 +612,6 @@ private: QString m_palette; QString m_dateTime; QString m_mode; - QString m_modeTx; QString m_fnameWE; // save path without extension QString m_rpt; QString m_nextRpt; From 5492b82bde27c8d3bbae8d2eb5157aab8a96fbf3 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 10 Jun 2021 16:30:03 -0400 Subject: [PATCH 14/45] No need for m_nseq to be a member variable. Use a local nseq instead. --- widgets/mainwindow.cpp | 10 +++------- widgets/mainwindow.h | 1 - 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 16706bc76..3e64807d7 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -294,7 +294,6 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, m_idleMinutes {0}, m_nSubMode {0}, m_nclearave {1}, - m_nseq {0}, m_nWSPRdecodes {0}, m_k0 {9999999}, m_nPick {0}, @@ -3805,14 +3804,11 @@ void MainWindow::guiUpdate() if(m_TRperiod==0) m_TRperiod=60.0; txDuration=tx_duration(m_mode,m_TRperiod,m_nsps,m_bFast9); - - double tx1=0.0; double tx2=txDuration; if(m_mode=="FT8" or m_mode=="FT4") icw[0]=0; //No CW ID in FT4 or FT8 mode if((icw[0]>0) and (!m_bFast9)) tx2 += icw[0]*2560.0/48000.0; //Full length including CW ID if(tx2>m_TRperiod) tx2=m_TRperiod; - if(!m_txFirst and m_mode!="WSPR" and m_mode!="FST4W") { tx1 += m_TRperiod; tx2 += m_TRperiod; @@ -3823,7 +3819,7 @@ void MainWindow::guiUpdate() double tsec=0.001*ms; double t2p=fmod(tsec,2*m_TRperiod); m_s6=fmod(tsec,6.0); - m_nseq = fmod(double(nsec),m_TRperiod); + int nseq = fmod(double(nsec),m_TRperiod); m_tRemaining=m_TRperiod - fmod(tsec,m_TRperiod); if(m_mode=="Echo") { @@ -3834,7 +3830,7 @@ void MainWindow::guiUpdate() } if(m_mode=="WSPR" or m_mode=="FST4W") { - if(m_nseq==0 and m_ntr==0) { //Decide whether to Tx or Rx + if(nseq==0 and m_ntr==0) { //Decide whether to Tx or Rx m_tuneup=false; //This is not an ATU tuneup bool btx = m_auto && m_WSPR_tx_next; // To Tx, we need m_auto and // scheduled transmit @@ -3975,7 +3971,7 @@ void MainWindow::guiUpdate() } if((m_mode=="WSPR" or m_mode=="FST4W") and - ((m_ntr==1 and m_rxDone) or (m_ntr==-1 and m_nseq>tx2))) { + ((m_ntr==1 and m_rxDone) or (m_ntr==-1 and nseq>tx2))) { if(m_monitoring) { m_rxDone=false; } diff --git a/widgets/mainwindow.h b/widgets/mainwindow.h index 02f6ee691..2761e98b8 100644 --- a/widgets/mainwindow.h +++ b/widgets/mainwindow.h @@ -454,7 +454,6 @@ private: qint32 m_nclearave; qint32 m_minSync; qint32 m_dBm; - qint32 m_nseq; qint32 m_nWSPRdecodes; qint32 m_k0; qint32 m_kdone; From e3de62152d880eb808e2e6afa786e363a1e7d3af Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 10 Jun 2021 16:34:05 -0400 Subject: [PATCH 15/45] No need for m_s6 to be a member variable. Use a local s6 instead. --- widgets/mainwindow.cpp | 7 +++---- widgets/mainwindow.h | 1 - 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 3e64807d7..07eb43662 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -275,7 +275,6 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, m_freqNominal {0}, m_freqTxNominal {0}, m_reverse_Doppler {"1" == env.value ("WSJT_REVERSE_DOPPLER", "0")}, - m_s6 {0.}, m_tRemaining {0.}, m_TRperiod {60.0}, m_DTtol {3.0}, @@ -3818,14 +3817,14 @@ void MainWindow::guiUpdate() int nsec=ms/1000; double tsec=0.001*ms; double t2p=fmod(tsec,2*m_TRperiod); - m_s6=fmod(tsec,6.0); + double s6=fmod(tsec,6.0); int nseq = fmod(double(nsec),m_TRperiod); m_tRemaining=m_TRperiod - fmod(tsec,m_TRperiod); if(m_mode=="Echo") { tx1=0.0; tx2=txDuration; - if(m_auto and m_s6>4.0) m_bEchoTxOK=true; + if(m_auto and s6>4.0) m_bEchoTxOK=true; if(m_transmitting) m_bEchoTxed=true; } @@ -4365,7 +4364,7 @@ void MainWindow::guiUpdate() progressBar.setFormat ("%v/%m"); if(m_auto and m_mode=="Echo" and m_bEchoTxOK) { progressBar.setMaximum(3); - progressBar.setValue(int(m_s6)); + progressBar.setValue(int(s6)); } if(m_mode!="Echo") { if(m_monitoring or m_transmitting) { diff --git a/widgets/mainwindow.h b/widgets/mainwindow.h index 2761e98b8..653023b23 100644 --- a/widgets/mainwindow.h +++ b/widgets/mainwindow.h @@ -419,7 +419,6 @@ private: Astro::Correction m_astroCorrection; bool m_reverse_Doppler; - double m_s6; double m_tRemaining; double m_TRperiod; From 4b120abf93e17488b61c159da454bf670bc55903 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 10 Jun 2021 19:12:49 -0400 Subject: [PATCH 16/45] Clean up the declaration and use of fTR. --- widgets/mainwindow.cpp | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 07eb43662..4d7ae5409 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -3904,7 +3904,7 @@ void MainWindow::guiUpdate() tx_watchdog (true); // disable transmit } - float fTR=float((ms%int(1000.0*m_TRperiod)))/int(1000.0*m_TRperiod); + double fTR=float((ms%int(1000.0*m_TRperiod)))/int(1000.0*m_TRperiod); QString txMsg; if(m_ntx == 1) txMsg=ui->tx1->text(); @@ -3916,7 +3916,7 @@ void MainWindow::guiUpdate() int msgLength=txMsg.trimmed().length(); if(msgLength==0 and !m_tune) on_stopTxButton_clicked(); - if(g_iptt==0 and ((m_bTxTime and fTR<0.75 and msgLength>0) or m_tune)) { + if(g_iptt==0 and ((m_bTxTime and (fTR < 0.75) and (msgLength>0)) or m_tune)) { //### Allow late starts icw[0]=m_ncw; g_iptt = 1; @@ -4278,6 +4278,7 @@ void MainWindow::guiUpdate() m_sentFirst73 = false; } } + if (g_iptt == 1 && m_iptt0 == 0) { auto const& current_message = QString::fromLatin1 (msgsent); if(m_config.watchdog () && m_mode!="WSPR" && m_mode!="FST4W" @@ -4310,15 +4311,14 @@ void MainWindow::guiUpdate() transmitDisplay (true); statusUpdate (); } - if(!m_btxok && m_btxok0 && g_iptt==1) - { - stopTx(); - if ("1" == m_env.value ("WSJT_TX_BOTH", "0")) - { - m_txFirst = !m_txFirst; - ui->txFirstCheckBox->setChecked (m_txFirst); - } + + if(!m_btxok && m_btxok0 && g_iptt==1) { + stopTx(); + if ("1" == m_env.value ("WSJT_TX_BOTH", "0")) { + m_txFirst = !m_txFirst; + ui->txFirstCheckBox->setChecked (m_txFirst); } + } if(m_startAnother) { if(m_mode=="MSK144") { @@ -4332,16 +4332,16 @@ void MainWindow::guiUpdate() } if(m_mode=="FT8" or m_mode=="MSK144" or m_mode=="FT4") { - if(ui->txrb1->isEnabled() and - (SpecOp::NA_VHF==m_config.special_op_id() or - SpecOp::FIELD_DAY==m_config.special_op_id() or - SpecOp::RTTY==m_config.special_op_id() or - SpecOp::WW_DIGI==m_config.special_op_id()) ) { + if(ui->txrb1->isEnabled() and + (SpecOp::NA_VHF==m_config.special_op_id() or + SpecOp::FIELD_DAY==m_config.special_op_id() or + SpecOp::RTTY==m_config.special_op_id() or + SpecOp::WW_DIGI==m_config.special_op_id()) ) { //We're in a contest-like mode other than EU_VHF: start QSO with Tx2. ui->tx1->setEnabled(false); ui->txb1->setEnabled(false); } - if(!ui->tx1->isEnabled() and SpecOp::EU_VHF==m_config.special_op_id()) { + if(!ui->tx1->isEnabled() and SpecOp::EU_VHF==m_config.special_op_id()) { //We're in EU_VHF mode: start QSO with Tx1. ui->tx1->setEnabled(true); ui->txb1->setEnabled(true); From 2106cd30c1ef8616e89cd1d5b2e6de83f8a7ce48 Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Fri, 11 Jun 2021 12:22:07 +0100 Subject: [PATCH 17/45] Correct a script example in documentation --- doc/building on MS Windows.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/building on MS Windows.txt b/doc/building on MS Windows.txt index bb15e1f05..4df3ddd22 100644 --- a/doc/building on MS Windows.txt +++ b/doc/building on MS Windows.txt @@ -214,7 +214,7 @@ a suitable location like ~/build and change working directory to it: Configure and build and install the library in a suitable place (I use ~/local as a root directory for installed packages. - ~/src/portaudio/configure --prefix=$(HOME)/local/portaudio/mingw64 \ + ~/src/portaudio/configure --prefix=$HOME/local/portaudio/mingw64 \ --with-winapi=wmme,directx,wdmks --disable-static --enable-shared CFLAGS=-DNDEBUG make && make install From c6b72f497b47f9e9f8e5e6f809281d9b28335862 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Fri, 11 Jun 2021 11:39:18 -0400 Subject: [PATCH 18/45] Example code for use of 'Alt-X' to test refactored code. --- widgets/mainwindow.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 4d7ae5409..cf18df9bc 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -927,7 +927,6 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, QByteArray cfname=fname.toLocal8Bit(); fftwf_import_wisdom_from_filename(cfname); - //genStdMsgs(m_rpt); m_ntx = 6; ui->txrb6->setChecked(true); @@ -2201,7 +2200,8 @@ void MainWindow::keyPressEvent (QKeyEvent * e) break; case Qt::Key_X: if(e->modifiers() & Qt::AltModifier) { - qDebug() << "Alt-X" << revision(); +// qDebug() << "Alt-X" << m_mode << m_TRperiod << m_nsps << m_bFast9 +// << tx_duration(m_mode,m_TRperiod,m_nsps,m_bFast9); return; } } From 87bca164f84edc37b549f86df3ce2cf14e2370bf Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Sat, 12 Jun 2021 02:08:51 +0100 Subject: [PATCH 19/45] Don't allow application to continue after an uncaught exception Qt does not allow exceptions to pass through the event loop so we must abort. --- ExceptionCatchingApplication.hpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/ExceptionCatchingApplication.hpp b/ExceptionCatchingApplication.hpp index 04c04d62e..cfebc96fd 100644 --- a/ExceptionCatchingApplication.hpp +++ b/ExceptionCatchingApplication.hpp @@ -31,11 +31,13 @@ public: } catch (std::exception const& e) { - LOG_FATAL (e.what ()); + LOG_FATAL ("Unexpected exception caught in event loop: " << e.what ()); + qFatal ("Aborting"); } catch (...) { - LOG_FATAL ("Unexpected fatal error"); + LOG_FATAL ("Unexpected unknown exception caught in event loop"); + qFatal ("Aborting"); } return false; } From c74e115d2d099e3a0219a8965551c0e14523e87e Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Sat, 12 Jun 2021 02:46:55 +0100 Subject: [PATCH 20/45] Flush all logging sinks before aborting due to uncaught exceptions --- ExceptionCatchingApplication.hpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/ExceptionCatchingApplication.hpp b/ExceptionCatchingApplication.hpp index cfebc96fd..b9a3f9612 100644 --- a/ExceptionCatchingApplication.hpp +++ b/ExceptionCatchingApplication.hpp @@ -3,6 +3,7 @@ #include +#include #include "Logger.hpp" class QObject; @@ -12,8 +13,8 @@ class QEvent; // We can't use the GUI after QApplication::exit() is called so // uncaught exceptions can get lost on Windows systems where there is // no console terminal, so here we override QApplication::notify() and -// wrap the base class call with a try block to catch and display -// exceptions in a message box. +// wrap the base class call with a try block to catch and log any +// uncaught exceptions. // class ExceptionCatchingApplication : public QApplication @@ -32,13 +33,15 @@ public: catch (std::exception const& e) { LOG_FATAL ("Unexpected exception caught in event loop: " << e.what ()); - qFatal ("Aborting"); } catch (...) { LOG_FATAL ("Unexpected unknown exception caught in event loop"); - qFatal ("Aborting"); } + // There's nowhere to go from here as Qt will not pass exceptions + // through the event loop, so we must abort. + boost::log::core::get ()->flush (); + qFatal ("Aborting"); return false; } }; From 80448bfb573b876b7409afe3b7185c9040c0fd8b Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Sat, 12 Jun 2021 14:15:39 +0100 Subject: [PATCH 21/45] Avoid wide to narrow(UTF-8) conversion errors causing aborts --- WSJTXLogging.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/WSJTXLogging.cpp b/WSJTXLogging.cpp index 9cf5da31c..ee19c9a01 100644 --- a/WSJTXLogging.cpp +++ b/WSJTXLogging.cpp @@ -93,7 +93,7 @@ namespace << boost::log::add_value ("Line", context.line) << boost::log::add_value ("File", file) << boost::log::add_value ("Function", function) - << msg.toStdWString (); + << msg.toStdString (); } else { @@ -101,7 +101,7 @@ namespace << boost::log::add_value ("Line", context.line) << boost::log::add_value ("File", file) << boost::log::add_value ("Function", function) - << context.category << ": " << msg.toStdWString (); + << context.category << ": " << msg.toStdString (); } } @@ -132,7 +132,7 @@ namespace #else , keywords::file_name = #endif - app_data.absoluteFilePath ("logs/wsjtx_syslog_%Y-%m.log").toStdString () + app_data.absoluteFilePath ("logs/wsjtx_syslog_%Y-%m.log").toStdWString () , keywords::time_based_rotation = sinks::file::rotation_at_time_point (gregorian::greg_day (1), 0, 0, 0) , keywords::open_mode = std::ios_base::out | std::ios_base::app #if BOOST_VERSION / 100 >= 1063 From e28e9ff9b54133de5f7e18c0d186dc2d8ce658cf Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Sat, 12 Jun 2021 15:12:04 +0100 Subject: [PATCH 22/45] Bump RC number --- CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 6cb21cf97..5aabcd1fd 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -71,7 +71,7 @@ message (STATUS "******************************************************") include (set_build_type) # RC 0 or omitted is a development build, GA is a General Availability release build -set_build_type (RC 1) +set_build_type (RC 2) set (wsjtx_VERSION "${PROJECT_VERSION_MAJOR}.${PROJECT_VERSION_MINOR}.${PROJECT_VERSION_PATCH}${BUILD_TYPE_REVISION}") # From 1c86b18b24a2c9916801f791fb67ebd7ae22af51 Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Wed, 16 Jun 2021 15:02:40 +0100 Subject: [PATCH 23/45] Do necessary COM thread initializations for ASIO audio --- map65/main.cpp | 2 +- map65/soundin.cpp | 121 ++++++++++++++++++++++++++++++--------------- map65/soundin.h | 6 --- map65/soundout.cpp | 32 ++++++++++-- 4 files changed, 111 insertions(+), 50 deletions(-) diff --git a/map65/main.cpp b/map65/main.cpp index 198047ca9..918f64b43 100644 --- a/map65/main.cpp +++ b/map65/main.cpp @@ -19,7 +19,7 @@ int main(int argc, char *argv[]) QApplication a {argc, argv}; // Override programs executable basename as application name. a.setApplicationName ("MAP65"); - a.setApplicationVersion ("3.0.0-rc1"); + a.setApplicationVersion ("3.0.0-devel"); // switch off as we share an Info.plist file with WSJT-X a.setAttribute (Qt::AA_DontUseNativeMenuBar); MainWindow w; diff --git a/map65/soundin.cpp b/map65/soundin.cpp index bca728a4d..0e50f2935 100644 --- a/map65/soundin.cpp +++ b/map65/soundin.cpp @@ -1,45 +1,52 @@ #include "soundin.h" -#include + +#ifdef Q_OS_WIN32 +#include +#else +#include +#endif #define NFFT 32768 #define FRAMES_PER_BUFFER 1024 -extern "C" { #include -extern struct { - double d8[2*60*96000]; //This is "common/datcom/..." in fortran - float ss[4*322*NFFT]; - float savg[4*NFFT]; - double fcenter; - int nutc; - int idphi; //Phase correction for Y pol'n, degrees - int mousedf; //User-selected DF - int mousefqso; //User-selected QSO freq (kHz) - int nagain; //1 ==> decode only at fQSO +/- Tol - int ndepth; //How much hinted decoding to do? - int ndiskdat; //1 ==> data read from *.tf2 or *.iq file - int neme; //Hinted decoding tries only for EME calls - int newdat; //1 ==> new data, must do long FFT - int nfa; //Low decode limit (kHz) - int nfb; //High decode limit (kHz) - int nfcal; //Frequency correction, for calibration (Hz) - int nfshift; //Shift of displayed center freq (kHz) - int mcall3; //1 ==> CALL3.TXT has been modified - int ntimeout; //Max for timeouts in Messages and BandMap - int ntol; //+/- decoding range around fQSO (Hz) - int nxant; //1 ==> add 45 deg to measured pol angle - int map65RxLog; //Flags to control log files - int nfsample; //Input sample rate - int nxpol; //1 if using xpol antennas, 0 otherwise - int mode65; //JT65 sub-mode: A=1, B=2, C=4 - int nfast; //1No longer used - int nsave; //Number of s3(64,63) spectra saved - char mycall[12]; - char mygrid[6]; - char hiscall[12]; - char hisgrid[6]; - char datetime[20]; -} datcom_; +extern "C" +{ + struct + { + double d8[2*60*96000]; //This is "common/datcom/..." in fortran + float ss[4*322*NFFT]; + float savg[4*NFFT]; + double fcenter; + int nutc; + int idphi; //Phase correction for Y pol'n, degrees + int mousedf; //User-selected DF + int mousefqso; //User-selected QSO freq (kHz) + int nagain; //1 ==> decode only at fQSO +/- Tol + int ndepth; //How much hinted decoding to do? + int ndiskdat; //1 ==> data read from *.tf2 or *.iq file + int neme; //Hinted decoding tries only for EME calls + int newdat; //1 ==> new data, must do long FFT + int nfa; //Low decode limit (kHz) + int nfb; //High decode limit (kHz) + int nfcal; //Frequency correction, for calibration (Hz) + int nfshift; //Shift of displayed center freq (kHz) + int mcall3; //1 ==> CALL3.TXT has been modified + int ntimeout; //Max for timeouts in Messages and BandMap + int ntol; //+/- decoding range around fQSO (Hz) + int nxant; //1 ==> add 45 deg to measured pol angle + int map65RxLog; //Flags to control log files + int nfsample; //Input sample rate + int nxpol; //1 if using xpol antennas, 0 otherwise + int mode65; //JT65 sub-mode: A=1, B=2, C=4 + int nfast; //1No longer used + int nsave; //Number of s3(64,63) spectra saved + char mycall[12]; + char mygrid[6]; + char hiscall[12]; + char hisgrid[6]; + char datetime[20]; + } datcom_; } typedef struct @@ -133,6 +140,26 @@ extern "C" int a2dCallback( const void *inputBuffer, void *outputBuffer, return paContinue; } +namespace +{ + struct COMWrapper + { + explicit COMWrapper () + { +#ifdef Q_OS_WIN32 + // required because Qt only does this for GUI thread + CoInitializeEx (nullptr, COINIT_APARTMENTTHREADED | COINIT_DISABLE_OLE1DDE); +#endif + } + ~COMWrapper () + { +#ifdef Q_OS_WIN32 + CoUninitialize (); +#endif + } + }; +} + void SoundInThread::run() //SoundInThread::run() { quitExecution = false; @@ -144,8 +171,10 @@ void SoundInThread::run() //SoundInThread::run() return; } -//---------------------------------------------------- Soundcard Setup -// qDebug() << "Start souncard input"; + COMWrapper c; + + //---------------------------------------------------- Soundcard Setup + // qDebug() << "Start souncard input"; PaError paerr; PaStreamParameters inParam; @@ -158,15 +187,27 @@ void SoundInThread::run() //SoundInThread::run() udata.iqswap=m_IQswap; udata.b10db=m_10db; + auto device_info = Pa_GetDeviceInfo (m_nDevIn); + inParam.device=m_nDevIn; //### Input Device Number ### inParam.channelCount=2*m_nrx; //Number of analog channels inParam.sampleFormat=paFloat32; //Get floats from Portaudio - inParam.suggestedLatency=0.05; + inParam.suggestedLatency=device_info->defaultHighInputLatency; inParam.hostApiSpecificStreamInfo=NULL; paerr=Pa_IsFormatSupported(&inParam,NULL,96000.0); if(paerr<0) { - emit error("PortAudio says requested soundcard format not supported."); + QString error_message; + if (paUnanticipatedHostError == paerr) + { + auto const * last_host_error = Pa_GetLastHostErrorInfo (); + error_message = QString {"PortAudio Host API error: %1"}.arg (last_host_error->errorText); + } + else + { + error_message = "PortAudio says requested soundcard format not supported."; + } + emit error(error_message); // return; } paerr=Pa_OpenStream(&inStream, //Input stream diff --git a/map65/soundin.h b/map65/soundin.h index 5e53e7ef8..369cf1d71 100644 --- a/map65/soundin.h +++ b/map65/soundin.h @@ -6,12 +6,6 @@ #include #include -#ifdef Q_OS_WIN32 -#include -#else -#include -#endif //Q_OS_WIN32 - // Thread gets audio data from soundcard and signals when a buffer of // specified size is available. class SoundInThread : public QThread diff --git a/map65/soundout.cpp b/map65/soundout.cpp index fdc2f745b..e74d0549d 100644 --- a/map65/soundout.cpp +++ b/map65/soundout.cpp @@ -1,10 +1,12 @@ #include "soundout.h" +#ifdef Q_OS_WIN32 +#include +#endif + #define FRAMES_PER_BUFFER 256 -extern "C" { #include -} extern float gran(); //Noise generator (for tests only) @@ -120,18 +122,42 @@ extern "C" int d2aCallback(const void * /*inputBuffer*/, void *outputBuffer, return 0; } +namespace +{ + struct COMWrapper + { + explicit COMWrapper () + { +#ifdef Q_OS_WIN32 + // required because Qt only does this for GUI thread + CoInitializeEx (nullptr, COINIT_APARTMENTTHREADED | COINIT_DISABLE_OLE1DDE); +#endif + } + ~COMWrapper () + { +#ifdef Q_OS_WIN32 + CoUninitialize (); +#endif + } + }; +} + void SoundOutThread::run() { + COMWrapper c; + PaError paerr; PaStreamParameters outParam; PaStream *outStream; paUserData udata; quitExecution = false; + auto device_info = Pa_GetDeviceInfo (m_nDevOut); + outParam.device=m_nDevOut; //Output device number outParam.channelCount=2; //Number of analog channels outParam.sampleFormat=paInt16; //Send short ints to PortAudio - outParam.suggestedLatency=0.05; + outParam.suggestedLatency=device_info->defaultLowOutputLatency; outParam.hostApiSpecificStreamInfo=NULL; udata.nTRperiod=m_TRperiod; From e729a67a3622695721390e71a20c07c05e4cb8fe Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Tue, 22 Jun 2021 10:38:21 -0400 Subject: [PATCH 24/45] Increase max EME delay to 5.0 s. --- lib/qra/q65/q65.f90 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/qra/q65/q65.f90 b/lib/qra/q65/q65.f90 index c3795d125..eee12b2a5 100644 --- a/lib/qra/q65/q65.f90 +++ b/lib/qra/q65/q65.f90 @@ -124,7 +124,7 @@ subroutine q65_dec0(iavg,nutc,iwave,ntrperiod,nfqso,ntol,ndepth,lclearave, & dtstep=nsps/(NSTEP*12000.0) !Step size in seconds lag1=-1.0/dtstep lag2=1.0/dtstep + 0.9999 - if(nsps.ge.3600 .and. emedelay.gt.0) lag2=4.0/dtstep + 0.9999 !Include EME + if(nsps.ge.3600 .and. emedelay.gt.0) lag2=5.0/dtstep + 0.9999 !Include EME j0=0.5/dtstep if(nsps.ge.7200) j0=1.0/dtstep !Nominal start-signal index From fbd5028711de1c0b36eae9bc1dc83cb8c6ef5711 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Mon, 14 Jun 2021 10:52:36 -0400 Subject: [PATCH 25/45] Insert leading zero when needed in UTC hours or minutes, on waterfall. --- map65/plotter.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/map65/plotter.cpp b/map65/plotter.cpp index 20b0f81b6..3c42051a4 100644 --- a/map65/plotter.cpp +++ b/map65/plotter.cpp @@ -274,7 +274,7 @@ void CPlotter::UTCstr() ihr=imin/60; imin=imin % 60; } - m_sutc = QString {"%1:%2"}.arg (ihr, 2).arg (imin, 2); + m_sutc = QString {"%1:%2"}.arg (ihr,2,10,QLatin1Char('0')).arg (imin,2,10,QLatin1Char('0')); } void CPlotter::DrawOverlay() //DrawOverlay() From ceea631d5e38aecc29331ac8db0074a70b023bfd Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Wed, 16 Jun 2021 15:03:22 -0400 Subject: [PATCH 26/45] Add several instructive comments. --- map65/libm65/wideband_sync.f90 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/map65/libm65/wideband_sync.f90 b/map65/libm65/wideband_sync.f90 index 61d9b06c1..78fa9812f 100644 --- a/map65/libm65/wideband_sync.f90 +++ b/map65/libm65/wideband_sync.f90 @@ -166,7 +166,7 @@ subroutine wb_sync(ss,savg,jz,nfa,nfb) do lag=0,LAGMAX ccf=0. - do j=1,22 + do j=1,22 !Test for Q65 sync k=isync(j) + lag ccf=ccf + ss(ipol,k,i+1) + ss(ipol,k+1,i+1) + ss(ipol,k+2,i+1) enddo @@ -179,7 +179,7 @@ subroutine wb_sync(ss,savg,jz,nfa,nfb) endif ccf=0. - do j=1,63 + do j=1,63 !Test for JT65 sync, std msg k=jsync0(j) + lag ccf=ccf + ss(ipol,k,i+1) + ss(ipol,k+1,i+1) enddo @@ -192,7 +192,7 @@ subroutine wb_sync(ss,savg,jz,nfa,nfb) endif ccf=0. - do j=1,63 + do j=1,63 !Test for JT65 sync, OOO msg k=jsync1(j) + lag ccf=ccf + ss(ipol,k,i+1) + ss(ipol,k+1,i+1) enddo From 42a3e246bf2417c685622da2f680cff4d7fc06fa Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Fri, 18 Jun 2021 14:16:16 -0400 Subject: [PATCH 27/45] Compute pol angle from sync symbols. Display recommended TxPol. --- map65/libm65/CMakeLists.txt | 3 +- map65/libm65/map65a.f90 | 69 ++++------------- map65/libm65/polfit.f90 | 86 ++++++++++++++++++++++ map65/libm65/q65b.f90 | 44 +++++++---- map65/libm65/synctest.f90 | 2 +- map65/libm65/txpol.f90 | 33 +++++++++ map65/libm65/wideband_sync.f90 | 131 +++++++++++++++++++++------------ 7 files changed, 248 insertions(+), 120 deletions(-) create mode 100644 map65/libm65/polfit.f90 create mode 100644 map65/libm65/txpol.f90 diff --git a/map65/libm65/CMakeLists.txt b/map65/libm65/CMakeLists.txt index eff6dd9a8..238180322 100644 --- a/map65/libm65/CMakeLists.txt +++ b/map65/libm65/CMakeLists.txt @@ -60,8 +60,8 @@ set (libm65_FSRCS nchar.f90 noisegen.f90 packjt.f90 -# pctile.f90 pfxdump.f90 + polfit.f90 recvpkt.f90 rfile3a.f90 s3avg.f90 @@ -80,6 +80,7 @@ set (libm65_FSRCS trimlist.f90 twkfreq.f90 twkfreq_xy.f90 + txpol.f90 wavhdr.f90 f77_wisdom.f diff --git a/map65/libm65/map65a.f90 b/map65/libm65/map65a.f90 index 091d270d4..e8359a5a0 100644 --- a/map65/libm65/map65a.f90 +++ b/map65/libm65/map65a.f90 @@ -19,7 +19,7 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, & real*8 fcenter character*22 msg(MAXMSG) character*3 shmsg0(4) - character mycall*12,hiscall*12,mygrid*6,hisgrid*6,grid*6,cp*1,cm*1 + character mycall*12,hiscall*12,mygrid*6,hisgrid*6,cp*1,cm*1 integer indx(MAXMSG),nsiz(MAXMSG) logical done(MAXMSG) logical xpol,bq65,q65b_called @@ -43,12 +43,13 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, & mode65=mod(nmode,10) if(mode65.eq.3) mode65=4 mode_q65=nmode/10 + xpol=(nxpol.ne.0) nts_jt65=2**(mode65-1) !JT65 tone separation factor nts_q65=2**(mode_q65) !Q65 tone separation factor if(nagain.eq.0) then call timer('get_cand',0) - call get_candidates(ss,savg,mfa,mfb,nts_jt65,nts_q65,cand,ncand) + call get_candidates(ss,savg,xpol,mfa,mfb,nts_jt65,nts_q65,cand,ncand) call timer('get_cand',1) candec=.false. endif @@ -66,7 +67,6 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, & mcall3a=mcall3b mousefqso0=mousefqso - xpol=(nxpol.ne.0) if(.not.xpol) ndphi=0 nsum=0 @@ -318,28 +318,7 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, & if(npol.lt.0) npol=npol+180 endif -! If Tx station's grid is in decoded message, compute optimum TxPol - i1=index(decoded,' ') - i2=index(decoded(i1+1:),' ') + i1 - grid=' ' - if(i2.ge.8 .and. i2.le.18) grid=decoded(i2+1:i2+4)//'mm' - ntxpol=0 - cp=' ' - if(xpol) then - if(grid(1:1).ge.'A' .and. grid(1:1).le.'R' .and. & - grid(2:2).ge.'A' .and. grid(2:2).le.'R' .and. & - grid(3:3).ge.'0' .and. grid(3:3).le.'9' .and. & - grid(4:4).ge.'0' .and. grid(4:4).le.'9') then - ntxpol=mod(npol-nint(2.0*dpol(mygrid,grid))+720,180) - if(nxant.eq.0) then - cp='H' - if(ntxpol.gt.45 .and. ntxpol.le.135) cp='V' - else - cp='/' - if(ntxpol.ge.90 .and. ntxpol.lt.180) cp='\' - endif - endif - endif + call txpol(xpol,decoded,mygrid,npol,nxant,ntxpol,cp) if(ndphi.eq.0) then write(*,1010) nkHz,ndf,npol,nutc,dt,nsync2, & @@ -368,9 +347,9 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, & q65b_called=.true. f0=cand(icand)%f call timer('q65b ',0) - call q65b(nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol, & - xpol,mycall,hiscall,hisgrid,mode_q65,f0,fqso,newdat, & - nagain,max_drift,idec) + call q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf, & + ntol,xpol,mycall,mygrid, hiscall,hisgrid,mode_q65,f0,fqso, & + newdat,nagain,max_drift,idec) call timer('q65b ',1) if(idec.ge.0) candec(icand)=.true. enddo @@ -379,9 +358,9 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, & ikhz=mousefqso f0=freq - (nkhz_center-48.0-1.27046) !### ??? ### call timer('q65b ',0) - call q65b(nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol, & - xpol,mycall,hiscall,hisgrid,mode_q65,f0,fqso,newdat, & - nagain,max_drift,idec) + call q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf, & + ntol,xpol,mycall,mygrid,hiscall,hisgrid,mode_q65,f0,fqso, & + newdat,nagain,max_drift,idec) call timer('q65b ',1) endif endif @@ -416,8 +395,8 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, & ikhz=nint(freq) f0=cand(icand)%f call timer('q65b ',0) - call q65b(nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol, & - xpol,mycall,hiscall,hisgrid,mode_q65,f0,fqso,newdat, & + call q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,ntol, & + xpol,mycall,mygrid,hiscall,hisgrid,mode_q65,f0,fqso,newdat, & nagain,max_drift,idec) call timer('q65b ',1) if(idec.ge.0) candec(icand)=.true. @@ -494,28 +473,8 @@ subroutine map65a(dd,ss,savg,newdat,nutc,fcenter,ntol,idphi,nfa,nfb, & if(npol.lt.0) npol=npol+180 endif -! If Tx station's grid is in decoded message, compute optimum TxPol - i1=index(decoded,' ') - i2=index(decoded(i1+1:),' ') + i1 - grid=' ' - if(i2.ge.8 .and. i2.le.18) grid=decoded(i2+1:i2+4)//'mm' - ntxpol=0 - cp=' ' - if(xpol) then - if(grid(1:1).ge.'A' .and. grid(1:1).le.'R' .and. & - grid(2:2).ge.'A' .and. grid(2:2).le.'R' .and. & - grid(3:3).ge.'0' .and. grid(3:3).le.'9' .and. & - grid(4:4).ge.'0' .and. grid(4:4).le.'9') then - ntxpol=mod(npol-nint(2.0*dpol(mygrid,grid))+720,180) - if(nxant.eq.0) then - cp='H' - if(ntxpol.gt.45 .and. ntxpol.le.135) cp='V' - else - cp='/' - if(ntxpol.ge.90 .and. ntxpol.lt.180) cp='\' - endif - endif - endif + call txpol(xpol,decoded,mygrid,npol,nxant,ntxpol,cp) + cmode='#A' if(mode65.eq.2) cmode='#B' if(mode65.eq.4) cmode='#C' diff --git a/map65/libm65/polfit.f90 b/map65/libm65/polfit.f90 new file mode 100644 index 000000000..7013432e2 --- /dev/null +++ b/map65/libm65/polfit.f90 @@ -0,0 +1,86 @@ +subroutine polfit(y,npts,a) + +! Input: y(npts) !Expect npts=4 +! Output: a(1) = baseline +! a(2) = amplitude +! a(3) = theta (deg) + + real y(npts) + real a(3) + real deltaa(3) + integer ipk(1) + save + +! Set starting values: + a(1)=minval(y) + a(2)=maxval(y)-a(1) + ipk=maxloc(y) + a(3)=(ipk(1)-1)*45.0 + + deltaa(1:2)=0.1*(a(2)-a(1)) + deltaa(3)=10.0 + nterms=3 + +! Start the iteration + chisqr=0. + chisqr0=1.e6 + iters=10 + + do iter=1,iters + do j=1,nterms + chisq1=fchisq_pol(y,npts,a) + fn=0. + delta=deltaa(j) +10 a(j)=a(j)+delta + chisq2=fchisq_pol(y,npts,a) + if(chisq2.eq.chisq1) go to 10 + if(chisq2.gt.chisq1) then + delta=-delta !Reverse direction + a(j)=a(j)+delta + tmp=chisq1 + chisq1=chisq2 + chisq2=tmp + endif +20 fn=fn+1.0 + a(j)=a(j)+delta + chisq3=fchisq_pol(y,npts,a) + if(chisq3.lt.chisq2) then + chisq1=chisq2 + chisq2=chisq3 + go to 20 + endif + +! Find minimum of parabola defined by last three points + delta=delta*(1./(1.+(chisq1-chisq2)/(chisq3-chisq2))+0.5) + a(j)=a(j)-delta + deltaa(j)=deltaa(j)*fn/3. +! write(*,4000) iter,j,a,deltaa,chisq2 +!4000 format(2i2,2(2x,3f8.2),f12.5) + enddo + chisqr=fchisq_pol(y,npts,a) +! write(*,4000) 0,0,a,chisqr + if(deltaa(1).lt.0.01*(a(2)-a(1)) .and. deltaa(2).lt.0.01*(a(2)-a(1)) & + .and. deltaa(3).lt.1.0) exit + if(chisqr/chisqr0.gt.0.99) exit + a(3)=mod(a(3)+360.0,180.0) + chisqr0=chisqr + enddo + + return +end subroutine polfit + +real function fchisq_pol(y,npts,a) + + real y(npts),a(3) + data rad/57.2957795/ + + chisq = 0. + do i=1,npts + theta=(i-1)*45.0 + yfit=a(1) + a(2)*cos((theta-a(3))/rad)**2 + chisq=chisq + (y(i) - yfit)**2 + enddo + fchisq_pol=chisq + + return +end function fchisq_pol diff --git a/map65/libm65/q65b.f90 b/map65/libm65/q65b.f90 index c85e3be3d..1f1840b30 100644 --- a/map65/libm65/q65b.f90 +++ b/map65/libm65/q65b.f90 @@ -1,5 +1,6 @@ -subroutine q65b(nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & - mycall0,hiscall0,hisgrid,mode_q65,f0,fqso,newdat,nagain,max_drift,idec) +subroutine q65b(nutc,nqd,nxant,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & + mycall0,mygrid,hiscall0,hisgrid,mode_q65,f0,fqso,newdat,nagain, & + max_drift,idec) ! This routine provides an interface between MAP65 and the Q65 decoder ! in WSJT-X. All arguments are input data obtained from the MAP65 GUI. @@ -16,6 +17,7 @@ subroutine q65b(nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & parameter (MAXFFT1=5376000) !56*96000 parameter (MAXFFT2=336000) !56*6000 (downsampled by 1/16) parameter (NMAX=60*12000) + parameter (RAD=57.2957795) ! type(hdr) h !Header for the .wav file integer*2 iwave(60*12000) complex ca(MAXFFT1),cb(MAXFFT1) !FFTs of raw x,y data @@ -25,10 +27,11 @@ subroutine q65b(nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & real*8 fcenter,freq0 character*12 mycall0,hiscall0 character*12 mycall,hiscall - character*6 hisgrid + character*6 mygrid,hisgrid character*4 grid4 character*80 line character*80 wsjtx_dir + character*1 cp,cmode*2 common/cacb/ca,cb save @@ -88,10 +91,14 @@ subroutine q65b(nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & ! 96000 5376000 0.017857143 336000 6000.000 ! 95238 5120000 0.018601172 322560 5999.994 - if(ipol.eq.1) cz(0:MAXFFT2-1)=cx - if(ipol.eq.2) cz(0:MAXFFT2-1)=0.707*(cx+cy) - if(ipol.eq.3) cz(0:MAXFFT2-1)=cy - if(ipol.eq.4) cz(0:MAXFFT2-1)=0.707*(cx-cy) + poldeg=0. + if(xpol) then + poldeg=sync(ipk)%pol + cz(0:MAXFFT2-1)=cos(poldeg/RAD)*cx + sin(poldeg/RAD)*cy + else + cz(0:MAXFFT2-1)=cx + endif + cz(MAXFFT2)=0. ! Roll off below 500 Hz and above 2500 Hz. ja=nint(500.0/df) @@ -136,21 +143,30 @@ subroutine q65b(nutc,nqd,fcenter,nfcal,nfsample,ikhz,mousedf,ntol,xpol, & if(nsnr0.gt.-99) then nq65df=nint(1000*(0.001*k0*df+nkhz_center-48.0+1.000-1.27046-ikhz))-nfcal nq65df=nq65df + nfreq0 - 1000 - + npol=nint(poldeg) + if(nxant.ne.0) then + npol=npol-45 + if(npol.lt.0) npol=npol+180 + endif + call txpol(xpol,msg0(1:22),mygrid,npol,nxant,ntxpol,cp) if(nqd.eq.1 .and. abs(nq65df-mousedf).lt.ntol) then - write(line,1020) ikhz,nq65df,45*(ipol-1),nutc,xdt0,nsnr0,msg0(1:27),cq0 -1020 format('!',i3.3,i5,i4,i6.4,f5.1,i5,' : ',a27,a3) + write(line,1020) ikhz,nq65df,npol,nutc,xdt0,nsnr0,msg0(1:27),cq0, & + ntxpol,cp +1020 format('!',i3.3,i5,i4,i6.4,f5.1,i5,' : ',a27,a3,i4,1x,a1) write(*,1100) trim(line) 1100 format(a) endif ! Write to lu 26, for Messages and Band Map windows - write(26,1014) freq0,nq65df,0,0,0,xdt0,45*(ipol-1),0, & - nsnr0,nutc,msg0(1:22),':',char(ichar('A') + mode_q65-1) -1014 format(f8.3,i5,3i3,f5.1,i4,i3,i4,i5.4,4x,a22,2x,a1,3x,':',a1) + + cmode=': ' + cmode(2:2)=char(ichar('A') + mode_q65-1) + write(26,1014) freq0,nq65df,0,0,0,xdt0,npol,0, & + nsnr0,nutc,msg0(1:22),':',cp,cmode +1014 format(f8.3,i5,3i3,f5.1,i4,i3,i4,i5.4,4x,a22,1x,2a1,2x,a2) ! Write to file map65_rx.log: - write(21,1110) freq0,nq65df,xdt0,45*(ipol-1),nsnr0,nutc,msg0(1:28),cq0 + write(21,1110) freq0,nq65df,xdt0,npol,nsnr0,nutc,msg0(1:28),cq0 1110 format(f8.3,i5,f5.1,2i4,i5.4,2x,a28,': A',2x,a3) endif diff --git a/map65/libm65/synctest.f90 b/map65/libm65/synctest.f90 index f84042eae..a4a851c5b 100644 --- a/map65/libm65/synctest.f90 +++ b/map65/libm65/synctest.f90 @@ -41,7 +41,7 @@ program synctest call timer('synctest',0) call timer('get_cand',0) - call get_candidates(ss,savg,nfa,nfb,nts_jt65,nts_q65,cand,ncand) + call get_candidates(ss,savg,.true.,nfa,nfb,nts_jt65,nts_q65,cand,ncand) call timer('get_cand',1) do k=1,ncand diff --git a/map65/libm65/txpol.f90 b/map65/libm65/txpol.f90 new file mode 100644 index 000000000..042d3e549 --- /dev/null +++ b/map65/libm65/txpol.f90 @@ -0,0 +1,33 @@ +subroutine txpol(xpol,decoded,mygrid,npol,nxant,ntxpol,cp) + +! If Tx station's grid is in decoded message, compute optimum TxPol + character*22 decoded + character*6 mygrid,grid + character*1 cp + logical xpol + + ntxpol=0 + i1=index(decoded,' ') + i2=index(decoded(i1+1:),' ') + i1 + grid=' ' + if(i2.ge.8 .and. i2.le.18) grid=decoded(i2+1:i2+4)//'mm' + ntxpol=0 + cp=' ' + if(xpol .and.grid(1:4).ne.'RR73') then + if(grid(1:1).ge.'A' .and. grid(1:1).le.'R' .and. & + grid(2:2).ge.'A' .and. grid(2:2).le.'R' .and. & + grid(3:3).ge.'0' .and. grid(3:3).le.'9' .and. & + grid(4:4).ge.'0' .and. grid(4:4).le.'9') then + ntxpol=mod(npol-nint(2.0*dpol(mygrid,grid))+720,180) + if(nxant.eq.0) then + cp='H' + if(ntxpol.gt.45 .and. ntxpol.le.135) cp='V' + else + cp='/' + if(ntxpol.ge.90 .and. ntxpol.lt.180) cp='\' + endif + endif + endif + + return +end subroutine txpol diff --git a/map65/libm65/wideband_sync.f90 b/map65/libm65/wideband_sync.f90 index 78fa9812f..352d985fc 100644 --- a/map65/libm65/wideband_sync.f90 +++ b/map65/libm65/wideband_sync.f90 @@ -4,12 +4,14 @@ module wideband_sync real :: snr !Relative S/N of sync detection real :: f !Freq of sync tone, 0 to 96000 Hz real :: xdt !DT of matching sync pattern, -1.0 to +4.0 s + real :: pol !Polarization angle, degrees integer :: ipol !Polarization angle, 1 to 4 ==> 0, 45, 90, 135 deg integer :: iflip !Sync type: JT65 = +/- 1, Q65 = 0 end type candidate type sync_dat real :: ccfmax real :: xdt + real :: pol integer :: ipol integer :: iflip logical :: birdie @@ -17,12 +19,13 @@ module wideband_sync parameter (NFFT=32768) parameter (MAX_CANDIDATES=50) + parameter (SNR1_THRESHOLD=4.5) type(sync_dat) :: sync(NFFT) integer nkhz_center contains -subroutine get_candidates(ss,savg,nfa,nfb,nts_jt65,nts_q65,cand,ncand) +subroutine get_candidates(ss,savg,xpol,nfa,nfb,nts_jt65,nts_q65,cand,ncand) ! Search symbol spectra ss() over frequency range nfa to nfb (in kHz) for ! JT65 and Q65 sync patterns. The nts_* variables are the submode tone @@ -33,7 +36,7 @@ subroutine get_candidates(ss,savg,nfa,nfb,nts_jt65,nts_q65,cand,ncand) real ss(4,322,NFFT),savg(4,NFFT) real pavg(-20:20) integer indx(NFFT) - logical skip + logical xpol,skip type(candidate) :: cand(MAX_CANDIDATES) do j=322,1,-1 !Find end of data in ss() @@ -41,7 +44,7 @@ subroutine get_candidates(ss,savg,nfa,nfb,nts_jt65,nts_q65,cand,ncand) enddo jz=j -call wb_sync(ss,savg,jz,nfa,nfb) +call wb_sync(ss,savg,xpol,jz,nfa,nfb) tstep=2048.0/11025.0 !0.185760 s: 0.5*tsym_jt65, 0.3096*tsym_q65 df3=96000.0/NFFT @@ -57,7 +60,7 @@ call wb_sync(ss,savg,jz,nfa,nfb) f0=0.001*(n-1)*df3 snr1=sync(n)%ccfmax ! print*,'=A',f0,snr1 - if(snr1.lt.4.5) exit + if(snr1.lt.SNR1_THRESHOLD) exit flip=sync(n)%iflip if(flip.ne.0.0 .and. nts_jt65.eq.0) cycle if(flip.eq.0.0 .and. nts_q65.eq.0) cycle @@ -94,6 +97,7 @@ call wb_sync(ss,savg,jz,nfa,nfb) cand(k)%snr=snr1 cand(k)%f=f0 cand(k)%xdt=sync(n)%xdt + cand(k)%pol=sync(n)%pol cand(k)%ipol=sync(n)%ipol cand(k)%iflip=nint(flip) if(k.ge.MAX_CANDIDATES) exit @@ -103,18 +107,21 @@ call wb_sync(ss,savg,jz,nfa,nfb) return end subroutine get_candidates -subroutine wb_sync(ss,savg,jz,nfa,nfb) +subroutine wb_sync(ss,savg,xpol,jz,nfa,nfb) ! Compute "orange sync curve" using the Q65 sync pattern + use timer_module, only: timer parameter (NFFT=32768) parameter (LAGMAX=30) real ss(4,322,NFFT) real savg(4,NFFT) real savg_med(4) - logical first + real ccf4(4),ccf4best(4),a(3) + logical first,xpol integer isync(22) integer jsync0(63),jsync1(63) + integer ip(1) ! Q65 sync symbols data isync/1,9,12,13,15,22,23,26,27,33,35,38,46,50,55,60,62,66,69,74,76,85/ @@ -147,12 +154,14 @@ subroutine wb_sync(ss,savg,jz,nfa,nfb) df3=96000.0/NFFT ia=nint(1000*nfa/df3) + 1 !Flat frequency range for WSE converters ib=nint(1000*nfb/df3) + 1 + npol=1 + if(xpol) npol=4 - do i=1,4 + do i=1,npol call pctile(savg(i,ia:ib),ib-ia+1,50,savg_med(i)) enddo ! do i=ia,ib -! write(14,3014) 0.001*(i-1)*df3,savg(1:4,i) +! write(14,3014) 0.001*(i-1)*df3,savg(1:npol,i) !3014 format(5f10.3) ! enddo @@ -162,57 +171,82 @@ subroutine wb_sync(ss,savg,jz,nfa,nfb) do i=ia,ib ccfmax=0. - do ipol=1,4 - do lag=0,LAGMAX + do lag=0,LAGMAX - ccf=0. - do j=1,22 !Test for Q65 sync - k=isync(j) + lag - ccf=ccf + ss(ipol,k,i+1) + ss(ipol,k+1,i+1) + ss(ipol,k+2,i+1) - enddo - ccf=ccf - savg(ipol,i+1)*3*22/float(jz) - if(ccf.gt.ccfmax) then - ipolbest=ipol - lagbest=lag - ccfmax=ccf - flip=0. - endif + ccf=0. + ccf4=0. + do j=1,22 !Test for Q65 sync + k=isync(j) + lag + ccf4=ccf4 + ss(1:npol,k,i+1) + ss(1:npol,k+1,i+1) + ss(1:npol,k+2,i+1) + enddo + ccf4=ccf4 - savg(1:npol,i+1)*3*22/float(jz) + ccf=maxval(ccf4) + ip=maxloc(ccf4) + ipol=ip(1) + if(ccf.gt.ccfmax) then + ipolbest=ipol + lagbest=lag + ccfmax=ccf + ccf4best=ccf4 + flip=0. + endif - ccf=0. - do j=1,63 !Test for JT65 sync, std msg - k=jsync0(j) + lag - ccf=ccf + ss(ipol,k,i+1) + ss(ipol,k+1,i+1) - enddo - ccf=ccf - savg(ipol,i+1)*2*63/float(jz) - if(ccf.gt.ccfmax) then - ipolbest=ipol - lagbest=lag - ccfmax=ccf - flip=1.0 - endif + ccf=0. + ccf4=0. + do j=1,63 !Test for JT65 sync, std msg + k=jsync0(j) + lag + ccf4=ccf4 + ss(1:npol,k,i+1) + ss(1:npol,k+1,i+1) + enddo + ccf4=ccf4 - savg(1:npol,i+1)*2*63/float(jz) + ccf=maxval(ccf4) + ip=maxloc(ccf4) + ipol=ip(1) + if(ccf.gt.ccfmax) then + ipolbest=ipol + lagbest=lag + ccfmax=ccf + ccf4best=ccf4 + flip=1.0 + endif - ccf=0. - do j=1,63 !Test for JT65 sync, OOO msg - k=jsync1(j) + lag - ccf=ccf + ss(ipol,k,i+1) + ss(ipol,k+1,i+1) - enddo - ccf=ccf - savg(ipol,i+1)*2*63/float(jz) - if(ccf.gt.ccfmax) then - ipolbest=ipol - lagbest=lag - ccfmax=ccf - flip=-1.0 - endif + ccf=0. + ccf4=0. + do j=1,63 !Test for JT65 sync, OOO msg + k=jsync1(j) + lag + ccf4=ccf4 + ss(1:npol,k,i+1) + ss(1:npol,k+1,i+1) + enddo + ccf4=ccf4 - savg(1:npol,i+1)*2*63/float(jz) + ccf=maxval(ccf4) + ip=maxloc(ccf4) + ipol=ip(1) + if(ccf.gt.ccfmax) then + ipolbest=ipol + lagbest=lag + ccfmax=ccf + ccf4best=ccf4 + flip=-1.0 + endif - enddo ! lag - enddo !ipol + enddo ! lag + poldeg=0. + if(xpol .and. ccfmax.ge.SNR1_THRESHOLD) then + call polfit(ccf4best,4,a) + poldeg=a(3) + endif sync(i)%ccfmax=ccfmax sync(i)%xdt=lagbest*tstep-1.0 + sync(i)%pol=poldeg sync(i)%ipol=ipolbest sync(i)%iflip=flip sync(i)%birdie=.false. if(ccfmax/(savg(ipolbest,i)/savg_med(ipolbest)).lt.3.0) sync(i)%birdie=.true. + if(sync(i)%iflip.eq.0 .and. sync(i)%ccfmax .gt. 20.0) then + write(50,3050) i,lagbest,sync(i)%ccfmax,sync(i)%xdt,sync(i)%ipol, & + sync(i)%birdie,ccf4best +3050 format(2i5,f10.3,f8.2,i5,1x,L3,4f7.1) + endif + enddo ! i (frequency bin) ! do i=ia,ib @@ -223,7 +257,6 @@ subroutine wb_sync(ss,savg,jz,nfa,nfb) call pctile(sync(ia:ib)%ccfmax,ib-ia+1,50,base) sync(ia:ib)%ccfmax=sync(ia:ib)%ccfmax/base -! print*,base return end subroutine wb_sync From 1df2101b11d4548f2a9cde8a4faffadd21b741f6 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Tue, 22 Jun 2021 12:24:18 -0400 Subject: [PATCH 28/45] Fix the generation of Tx5 message when "hiscall" has suffix /P or /R. Is there a better method? --- widgets/mainwindow.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index cf18df9bc..7958b79ce 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -5535,7 +5535,8 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) msgtype(t, ui->tx5->lineEdit ()); } } else { - if (hisCall != hisBase and SpecOp::HOUND != m_config.special_op_id()) { + if (hisCall != hisBase && hisCall != (hisBase+"/P") && hisCall != (hisBase+"/R") + && SpecOp::HOUND != m_config.special_op_id()) { if (shortList(hisCall)) { // cfm we know his full call with a type 1 tx1 message t = hisCall + " " + my_callsign; From c2ad6adc08957cac932732d15129a94b9879a935 Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Tue, 22 Jun 2021 18:50:47 +0100 Subject: [PATCH 29/45] Updated CTY.DAT database, 22-Jun-2021 Big CTY, tnx to Jim, AD1C --- cty.dat | 1206 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 609 insertions(+), 597 deletions(-) diff --git a/cty.dat b/cty.dat index 5ef100b0d..32731879a 100644 --- a/cty.dat +++ b/cty.dat @@ -497,8 +497,8 @@ Bahamas: 08: 11: NA: 24.25: 76.00: 5.0: C6: Mozambique: 37: 53: AF: -18.25: -35.00: -2.0: C9: C8,C9,=C98DC/YL; Chile: 12: 14: SA: -30.00: 71.00: 4.0: CE: - 3G,CA,CB,CC,CD,CE,XQ,XR,=CE9/PA3EXX,=CE9/PA3EXX/P,=CE9/VE3LYC,=CE9/VE3LYC/P,=CE9/WW3TRG,=XR90IARU, - =XR96IARU, + 3G,CA,CB,CC,CD,CE,XQ,XR,=CE9/PA3EXX,=CE9/PA3EXX/P,=CE9/VE3LYC,=CE9/VE3LYC/P,=CE9/WW3TRG,=VERSION, + =XR90IARU,=XR96IARU, =CD0YJA/3,=CE0YHF/3, =CD0YJA/4, =CE6PGO[16],=CE6RFP[16],=XQ6CFX[16],=XQ6OA[16],=XQ6UMR[16],=XR6F[16], @@ -803,7 +803,7 @@ Reunion Island: 39: 53: AF: -21.12: -55.48: -4.0: FR: FR,=TO019IEEE,=TO0FAR,=TO0MPB,=TO0R,=TO19A,=TO1PF,=TO1PF/P,=TO1TAAF,=TO2R,=TO2R/P,=TO2Z,=TO3R, =TO5R,=TO7CC,=TO7DL,=TO90R; St. Martin: 08: 11: NA: 18.08: 63.03: 4.0: FS: - FS,=TO0A,=TO1E,=TO1K,=TO2EME,=TO4X,=TO5D,=TO5SM,=TO5SM/P,=TO9W; + FS,=TO0A,=TO1E,=TO1K,=TO2EME,=TO4X,=TO5D,=TO5SM,=TO5SM/P,=TO9PL,=TO9W; Glorioso Islands: 39: 53: AF: -11.55: -47.28: -4.0: FT/g: FT0G,FT1G,FT2G,FT3G,FT4G,FT5G,FT6G,FT7G,FT8G,FT9G,=FR5ZQ/G; Juan de Nova, Europa: 39: 53: AF: -17.05: -42.72: -3.0: FT/j: @@ -885,69 +885,70 @@ Scotland: 14: 27: EU: 56.82: 4.18: 0.0: GM: =GB0MLM,=GB0MOD,=GB0MOG,=GB0MOL,=GB0MSL,=GB0MUL,=GB0NGG,=GB0NHL,=GB0NHL/LH,=GB0NHS,=GB0NRL, =GB0OYT,=GB0PLS,=GB0POS,=GB0PPE,=GB0PSW,=GB0RGC,=GB0SAA,=GB0SBC,=GB0SCD,=GB0SFM,=GB0SHP,=GB0SI, =GB0SJR,=GB0SK,=GB0SKG,=GB0SKY,=GB0SLB,=GB0SRC,=GB0SSB,=GB0TH,=GB0THL,=GB0TNL,=GB0TTC,=GB0TTS, - =GB0WRH,=GB100BCG,=GB100MAS,=GB100MUC,=GB100ZET,=GB10SP,=GB150NRL,=GB18FIFA,=GB19CGM,=GB19CS, - =GB1AJ,=GB1ASC,=GB1ASH,=GB1BD,=GB1BOL,=GB1CFL,=GB1COR,=GB1DHL,=GB1FB,=GB1FRS,=GB1FVS,=GB1FVT, - =GB1GEO,=GB1GND,=GB1HRS,=GB1KGG,=GB1KLD,=GB1LAY,=GB1LGG,=GB1LL,=GB1MAY,=GB1NHL,=GB1OL,=GB1OL/LH, - =GB1PC,=GB1RB,=GB1RHU,=GB1RST,=GB1SLH,=GB1TAY,=GB1WLG,=GB20YOTA,=GB250RB,=GB2AES,=GB2AGG,=GB2AL, - =GB2AMS,=GB2AST,=GB2AYR,=GB2BAJ,=GB2BHM,=GB2BHS,=GB2BMJ,=GB2BOL,=GB2CAS,=GB2CHC,=GB2CM,=GB2CMA, - =GB2CR,=GB2CVL,=GB2CWR,=GB2DAS,=GB2DAW,=GB2DHS,=GB2DL,=GB2DRC,=GB2DT,=GB2DTM,=GB2ELH,=GB2ELH/LH, - =GB2EPC,=GB2FBM,=GB2FEA,=GB2FSM,=GB2FSW,=GB2GEO,=GB2GKR,=GB2GNL,=GB2GNL/LH,=GB2GTM,=GB2GVC, - =GB2HLB,=GB2HMC,=GB2HRH,=GB2IGB,=GB2IGS,=GB2IMG,=GB2IMM,=GB2INV,=GB2IOT,=GB2JCM,=GB2KDR,=GB2KGB, - =GB2KW,=GB2LBN,=GB2LBN/LH,=GB2LCL,=GB2LCP,=GB2LCT,=GB2LDG,=GB2LG,=GB2LG/P,=GB2LGB,=GB2LHI,=GB2LK, - =GB2LK/LH,=GB2LMG,=GB2LP,=GB2LS,=GB2LS/LH,=GB2LSS,=GB2LT,=GB2LT/LH,=GB2LXX,=GB2M,=GB2MAS,=GB2MBB, - =GB2MDG,=GB2MN,=GB2MOF,=GB2MSL,=GB2MUC,=GB2MUL,=GB2NBC,=GB2NEF,=GB2NL,=GB2NMM,=GB2OL,=GB2OWM, - =GB2PBF,=GB2PG,=GB2QM,=GB2RB,=GB2RDR,=GB2ROC,=GB2RRL,=GB2RWW,=GB2SAA,=GB2SAM,=GB2SAS,=GB2SB, - =GB2SBG,=GB2SBS,=GB2SHL/LH,=GB2SKG,=GB2SLH,=GB2SMM,=GB2SOH,=GB2SQN,=GB2SR,=GB2SSB,=GB2SUM,=GB2SWF, - =GB2TDS,=GB2THL,=GB2THL/LH,=GB2TNL,=GB2VCB,=GB2VEF,=GB2WAM,=GB2WBF,=GB2WG,=GB2WLS,=GB2YLS,=GB2ZE, - =GB3ANG,=GB3GKR,=GB3LER,=GB3LER/B,=GB3ORK,=GB3ORK/B,=GB3SWF,=GB3WOI,=GB4AAS,=GB4AST,=GB4BBR, - =GB4BG,=GB4CGS,=GB4CMA,=GB4DAS,=GB4DHX,=GB4DTD,=GB4DUK,=GB4EPC,=GB4FFS,=GB4GD,=GB4GDS,=GB4GS, - =GB4IE,=GB4JCM,=GB4JOA,=GB4JPJ,=GB4JYS,=GB4LER,=GB4MSE,=GB4NFE,=GB4PAS,=GB4SK,=GB4SKO,=GB4SLH, - =GB4SMM,=GB4SRO,=GB4SWF,=GB50FVS,=GB50GDS,=GB50GT,=GB50JS,=GB5AG,=GB5AST,=GB5BBS,=GB5BOH,=GB5C, - =GB5CS,=GB5CWL,=GB5DHL,=GB5DX,=GB5EMF,=GB5FHC,=GB5FLM,=GB5JS,=GB5LTH,=GB5RO,=GB5RO/LH,=GB5RR, - =GB5SI,=GB5TAM,=GB5TI,=GB60CRB,=GB6BEN,=GB6TAA,=GB6WW,=GB75CC,=GB75GD,=GB7SRW,=GB80GD,=GB8AYR, - =GB8CSL,=GB8FSG,=GB8RU,=GB8RUM,=GB90RSGB/11,=GB90RSGB/12,=GB90RSGB/21,=GB90RSGB/22,=GB90RSGB/23, - =GB999SPC,=GB9UL,=GG100AGG,=GG100GA,=GG100GCC,=GG100GGP,=GG100GGR,=GG100GLD,=GG100SBG, - =GM/DL5SE/LH,=GM0AZC/2K,=GM0DHZ/P,=GM0GFL/P,=GM0KTO/2K,=GM0MUN/2K,=GM0SGB/M,=GM0SGB/P,=GM0WED/NHS, - =GM0WUX/2K,=GM3JIJ/2K,=GM3OFT/P,=GM3TKV/LH,=GM3TTC/P,=GM3TXF/P,=GM3USR/P,=GM3VLB/P,=GM3WFK/P, - =GM3YDN/NHS,=GM4AFF/P,=GM4CHX/2K,=GM4CHX/P,=GM4SQM/NHS,=GM4SQN/NHS,=GM4WSB/M,=GM4WSB/P,=GM4ZVD/P, - =GM6JNJ/NHS,=GM6WRW/P,=GO0AEG,=GO0AIR,=GO0BKC,=GO0DBW,=GO0DBW/M,=GO0DEQ,=GO0GMN,=GO0OGN,=GO0SYY, - =GO0TUB,=GO0VRP,=GO0WEZ,=GO1BAN,=GO1BKF,=GO1MQE,=GO1TBW,=GO2MP,=GO3HVK,=GO3JIJ,=GO3NIG,=GO3VTB, - =GO4BLO,=GO4CAU,=GO4CFS,=GO4CHX,=GO4CXM,=GO4DLG,=GO4EMX,=GO4FAM,=GO4FAU,=GO4JOJ,=GO4JPZ,=GO4JR, - =GO4MOX,=GO4MSL,=GO4PRB,=GO4UBJ,=GO4VTB,=GO4WZG,=GO4XQJ,=GO6JEP,=GO6JRX,=GO6KON,=GO6LYJ,=GO6VCV, - =GO7GAX,=GO7GDE,=GO7HUD,=GO7TUD,=GO7WEF,=GO8CBQ,=GO8MHU,=GO8SVB,=GO8TTD,=GQ0AEG,=GQ0AIR,=GQ0BKC, - =GQ0BWR,=GQ0DBW,=GQ0DEQ,=GQ0DUX,=GQ0FNE,=GQ0GMN,=GQ0HUO,=GQ0KWL,=GQ0MUN,=GQ0NTL,=GQ0OGN,=GQ0RNR, - =GQ0TKV/P,=GQ0VRP,=GQ0WEZ,=GQ0WNR,=GQ1BAN,=GQ1BKF,=GQ1MQE,=GQ1TBW,=GQ3JIJ,=GQ3JQJ,=GQ3NIG,=GQ3NTL, - =GQ3TKP,=GQ3TKP/P,=GQ3TKV,=GQ3TKV/P,=GQ3VTB,=GQ3WUX,=GQ3ZBE,=GQ4AGG,=GQ4BAE,=GQ4BLO,=GQ4CAU, - =GQ4CFS,=GQ4CHX,=GQ4CHX/P,=GQ4CXM,=GQ4DLG,=GQ4ELV,=GQ4EMX,=GQ4FAU,=GQ4JOJ,=GQ4JPZ,=GQ4JR,=GQ4MSL, - =GQ4OBG,=GQ4PRB,=GQ4UIB,=GQ4UPL,=GQ4VTB,=GQ4WZG,=GQ4XQJ,=GQ4YMM,=GQ6JEP,=GQ6JRX,=GQ6KON,=GQ6LYJ, - =GQ7GAX,=GQ7GDE,=GQ7HUD,=GQ7TUD,=GQ7UED,=GQ7WEF,=GQ8CBQ,=GQ8MHU,=GQ8PLR,=GQ8SVB,=GQ8TTD,=GR0AXY, - =GR0CDV,=GR0DBW,=GR0EKM,=GR0GMN,=GR0GRD,=GR0HPK,=GR0HPL,=GR0HUO,=GR0OGN,=GR0PNS,=GR0SYV,=GR0TTV, - =GR0TUB,=GR0UKZ,=GR0VRP,=GR0WED,=GR0WNR,=GR150NIB,=GR1BAN,=GR1MWK,=GR1TBW,=GR1ZIV,=GR3JFG,=GR3MZX, - =GR3NIG,=GR3OFT,=GR3PPE,=GR3PYU,=GR3VAL,=GR3VTB,=GR3WFJ,=GR3YXJ,=GR3ZDH,=GR4BDJ,=GR4BLO,=GR4CAU, - =GR4CCN,=GR4CFS,=GR4CMI,=GR4CXM,=GR4DLG,=GR4EMX,=GR4EOU,=GR4FQE,=GR4GIF,=GR4JOJ,=GR4NSZ,=GR4PRB, - =GR4SQM,=GR4VTB,=GR4XAW,=GR4XMD,=GR4XQJ,=GR4YMM,=GR6JEP,=GR6JNJ,=GR7AAJ,=GR7GAX,=GR7GDE,=GR7GMC, - =GR7HHB,=GR7HUD,=GR7LNO,=GR7NZI,=GR7TUD,=GR7USC,=GR7VSB,=GR8CBQ,=GR8KJO,=GR8KPH,=GR8MHU,=GR8OFQ, - =GR8SVB,=GS4WAB/P,=GV0DBW,=GV0GMN,=GV0GRD,=GV0LZE,=GV0OBX,=GV0OGN,=GV0SYV,=GV0VRP,=GV1BAN,=GV3EEW, - =GV3JIJ,=GV3NHQ,=GV3NIG,=GV3NKG,=GV3NNZ,=GV3PIP,=GV3ULP,=GV3VTB,=GV4BLO,=GV4EMX,=GV4HRJ,=GV4ILS, - =GV4JOJ,=GV4KLN,=GV4LVW,=GV4PRB,=GV4VTB,=GV4XQJ,=GV6KON,=GV7DHA,=GV7GDE,=GV7GMC,=GV8AVM,=GV8DPV, - =GV8LYS,=MB18FIFA,=MM/DJ4OK/M,=MM/DJ8OK/M,=MM/DL5SE/LH,=MM/F5BLC/P,=MM/F5LMJ/P,=MM/HB9IAB/P, - =MM/KE5TF/P,=MM/N5ET/P,=MM/OK1FZM/P,=MM/W5ZE/P,=MM0BNN/LH,=MM0BQI/2K,=MM0BQN/2K,=MM0BYE/2K, - =MM0DFV/P,=MM0DHQ/NHS,=MM0LON/M,=MM0MOL/P,=MM0SHF/P,=MM0YHB/P,=MM0ZOL/LH,=MM3AWD/NHS,=MM3DDQ/NHS, - =MM5PSL/P,=MM5YLO/P,=MM7WAB/NHS,=MO0BFF,=MO0CWJ,=MO0CYR,=MO0DBC,=MO0DNX,=MO0FMF,=MO0GXQ,=MO0HZT, - =MO0JST/P,=MO0KJG,=MO0KSS,=MO0NFC,=MO0SGQ,=MO0SJT,=MO0TGB,=MO0TSG,=MO0WKC,=MO0XXW,=MO0ZBH,=MO1AWV, - =MO1HMV,=MO3BCA,=MO3BRR,=MO3GPL,=MO3OQR,=MO3TUP,=MO3UVL,=MO3YHA,=MO3YMU,=MO3ZCB/P,=MO3ZRF,=MO5PSL, - =MO6BJJ,=MO6CCS,=MO6CHM,=MO6CRQ,=MO6CRQ/M,=MO6DGZ,=MO6HUT,=MO6KAU,=MO6KAU/M,=MO6KSJ,=MO6MCV, - =MO6SRL,=MO6TEW,=MQ0BNN/P,=MQ0BQM,=MQ0BRG,=MQ0CIN,=MQ0CXA,=MQ0CYR,=MQ0DNX,=MQ0DXD,=MQ0EQE,=MQ0FMF, - =MQ0GXQ,=MQ0GYX,=MQ0GYX/P,=MQ0KJG,=MQ0KSS,=MQ0LEN,=MQ0NFC,=MQ0NJC,=MQ0SJT,=MQ0TSG,=MQ0WKC,=MQ0XXW, - =MQ0ZBH,=MQ1AWV,=MQ1HMV,=MQ1JWF,=MQ3BCA,=MQ3BRR,=MQ3ERZ,=MQ3FET,=MQ3OVK,=MQ3SVK,=MQ3UIX,=MQ3UVL, - =MQ3YHA,=MQ3YMU,=MQ3ZRF,=MQ5PSL,=MQ6AQM,=MQ6BJJ,=MQ6CCS,=MQ6CHM,=MQ6CRQ,=MQ6DGZ,=MQ6HUT,=MQ6KAJ, - =MQ6KAU,=MQ6KSJ,=MQ6KUA,=MQ6LMP,=MQ6MCV,=MR0BQN,=MR0CWB,=MR0CXA,=MR0DHQ,=MR0DWF,=MR0DXD,=MR0DXH, - =MR0EPC,=MR0EQE,=MR0FME,=MR0FMF,=MR0GCF,=MR0GGG,=MR0GGI,=MR0GOR,=MR0HAI,=MR0HVU,=MR0OIL,=MR0POD, - =MR0PSL,=MR0RDM,=MR0SGQ,=MR0SJT,=MR0TAI,=MR0TSG,=MR0TSS,=MR0VTV,=MR0WEI,=MR0XAF,=MR0XXP,=MR0XXW, - =MR1AWV,=MR1HMV,=MR1JWF,=MR1VTB,=MR3AWA,=MR3AWD,=MR3BRR,=MR3PTS,=MR3UIX,=MR3UVL,=MR3WJZ,=MR3XGP, - =MR3YHA,=MR3YPH,=MR3ZCS,=MR5PSL,=MR6AHB,=MR6ARN,=MR6ATU,=MR6CHM,=MR6CTH,=MR6CTL,=MR6HFC,=MR6MCV, - =MR6RLL,=MR6SSI,=MR6TMS,=MV0DXH,=MV0FME,=MV0FMF,=MV0GHM,=MV0HAR,=MV0LGS,=MV0NFC,=MV0NJS,=MV0SGQ, - =MV0SJT,=MV0XXW,=MV1VTB,=MV3BRR,=MV3CVB,=MV3YHA,=MV3YMU,=MV5PSL,=MV6BJJ,=MV6KSJ,=MV6NRQ; + =GB0WRH,=GB1002ZE,=GB100BCG,=GB100MAS,=GB100MUC,=GB100ZET,=GB10SP,=GB150NRL,=GB18FIFA,=GB19CGM, + =GB19CS,=GB1AJ,=GB1ASC,=GB1ASH,=GB1BD,=GB1BOL,=GB1CFL,=GB1COR,=GB1DHL,=GB1FB,=GB1FRS,=GB1FVS, + =GB1FVT,=GB1GEO,=GB1GND,=GB1HRS,=GB1KGG,=GB1KLD,=GB1LAY,=GB1LGG,=GB1LL,=GB1MAY,=GB1NHL,=GB1OL, + =GB1OL/LH,=GB1PC,=GB1RB,=GB1RHU,=GB1RST,=GB1SLH,=GB1TAY,=GB1WLG,=GB20YOTA,=GB250RB,=GB2AES, + =GB2AGG,=GB2AL,=GB2AMS,=GB2AST,=GB2AYR,=GB2BAJ,=GB2BHM,=GB2BHS,=GB2BMJ,=GB2BOL,=GB2CAS,=GB2CHC, + =GB2CM,=GB2CMA,=GB2CR,=GB2CVL,=GB2CWR,=GB2DAS,=GB2DAW,=GB2DHS,=GB2DL,=GB2DRC,=GB2DT,=GB2DTM, + =GB2ELH,=GB2ELH/LH,=GB2EPC,=GB2FBM,=GB2FEA,=GB2FSM,=GB2FSW,=GB2GEO,=GB2GKR,=GB2GNL,=GB2GNL/LH, + =GB2GTM,=GB2GVC,=GB2HLB,=GB2HMC,=GB2HRH,=GB2IGB,=GB2IGS,=GB2IMG,=GB2IMM,=GB2INV,=GB2IOT,=GB2JCM, + =GB2KDR,=GB2KGB,=GB2KW,=GB2LBN,=GB2LBN/LH,=GB2LCL,=GB2LCP,=GB2LCT,=GB2LDG,=GB2LG,=GB2LG/P,=GB2LGB, + =GB2LHI,=GB2LK,=GB2LK/LH,=GB2LMG,=GB2LP,=GB2LS,=GB2LS/LH,=GB2LSS,=GB2LT,=GB2LT/LH,=GB2LXX,=GB2M, + =GB2MAS,=GB2MBB,=GB2MDG,=GB2MN,=GB2MOF,=GB2MSL,=GB2MUC,=GB2MUL,=GB2NBC,=GB2NEF,=GB2NL,=GB2NMM, + =GB2OL,=GB2OWM,=GB2PBF,=GB2PG,=GB2QM,=GB2RB,=GB2RDR,=GB2ROC,=GB2RRL,=GB2RWW,=GB2SAA,=GB2SAM, + =GB2SAS,=GB2SB,=GB2SBG,=GB2SBS,=GB2SHL/LH,=GB2SKG,=GB2SLH,=GB2SMM,=GB2SOH,=GB2SQN,=GB2SR,=GB2SSB, + =GB2SUM,=GB2SWF,=GB2TDS,=GB2THL,=GB2THL/LH,=GB2TNL,=GB2VCB,=GB2VEF,=GB2WAM,=GB2WBF,=GB2WG,=GB2WLS, + =GB2YLS,=GB2ZE,=GB3ANG,=GB3GKR,=GB3LER,=GB3LER/B,=GB3ORK,=GB3ORK/B,=GB3SWF,=GB3WOI,=GB4AAS, + =GB4AST,=GB4BBR,=GB4BG,=GB4CGS,=GB4CMA,=GB4DAS,=GB4DHX,=GB4DTD,=GB4DUK,=GB4EPC,=GB4FFS,=GB4GD, + =GB4GDS,=GB4GS,=GB4IE,=GB4JCM,=GB4JOA,=GB4JPJ,=GB4JYS,=GB4LER,=GB4MSE,=GB4NFE,=GB4PAS,=GB4SK, + =GB4SKO,=GB4SLH,=GB4SMM,=GB4SRO,=GB4SWF,=GB50FVS,=GB50GDS,=GB50GT,=GB50JS,=GB5AG,=GB5AST,=GB5BBS, + =GB5BOH,=GB5C,=GB5CS,=GB5CWL,=GB5DHL,=GB5DX,=GB5EMF,=GB5FHC,=GB5FLM,=GB5JS,=GB5LTH,=GB5RO, + =GB5RO/LH,=GB5RR,=GB5SI,=GB5TAM,=GB5TI,=GB60CRB,=GB6BEN,=GB6TAA,=GB6WW,=GB75CC,=GB75GD,=GB7SRW, + =GB80GD,=GB8AYR,=GB8CSL,=GB8FSG,=GB8RU,=GB8RUM,=GB90RSGB/11,=GB90RSGB/12,=GB90RSGB/21, + =GB90RSGB/22,=GB90RSGB/23,=GB999SPC,=GB9UL,=GG100AGG,=GG100GA,=GG100GCC,=GG100GGP,=GG100GGR, + =GG100GLD,=GG100SBG,=GM/DL5SE/LH,=GM0AZC/2K,=GM0DHZ/P,=GM0GFL/P,=GM0KTO/2K,=GM0MUN/2K,=GM0SGB/M, + =GM0SGB/P,=GM0WED/NHS,=GM0WUX/2K,=GM3JIJ/2K,=GM3OFT/P,=GM3TKV/LH,=GM3TTC/P,=GM3TXF/P,=GM3USR/P, + =GM3VLB/P,=GM3WFK/P,=GM3YDN/NHS,=GM4AFF/P,=GM4CHX/2K,=GM4CHX/P,=GM4SQM/NHS,=GM4SQN/NHS,=GM4WSB/M, + =GM4WSB/P,=GM4ZVD/P,=GM6JNJ/NHS,=GM6WRW/P,=GO0AEG,=GO0AIR,=GO0BKC,=GO0DBW,=GO0DBW/M,=GO0DEQ, + =GO0GMN,=GO0OGN,=GO0SYY,=GO0TUB,=GO0VRP,=GO0WEZ,=GO1BAN,=GO1BKF,=GO1MQE,=GO1TBW,=GO2MP,=GO3HVK, + =GO3JIJ,=GO3NIG,=GO3VTB,=GO4BLO,=GO4CAU,=GO4CFS,=GO4CHX,=GO4CXM,=GO4DLG,=GO4EMX,=GO4FAM,=GO4FAU, + =GO4JOJ,=GO4JPZ,=GO4JR,=GO4MOX,=GO4MSL,=GO4PRB,=GO4UBJ,=GO4VTB,=GO4WZG,=GO4XQJ,=GO6JEP,=GO6JRX, + =GO6KON,=GO6LYJ,=GO6VCV,=GO7GAX,=GO7GDE,=GO7HUD,=GO7TUD,=GO7WEF,=GO8CBQ,=GO8MHU,=GO8SVB,=GO8TTD, + =GQ0AEG,=GQ0AIR,=GQ0BKC,=GQ0BWR,=GQ0DBW,=GQ0DEQ,=GQ0DUX,=GQ0FNE,=GQ0GMN,=GQ0HUO,=GQ0KWL,=GQ0MUN, + =GQ0NTL,=GQ0OGN,=GQ0RNR,=GQ0TKV/P,=GQ0VRP,=GQ0WEZ,=GQ0WNR,=GQ1BAN,=GQ1BKF,=GQ1MQE,=GQ1TBW,=GQ3JIJ, + =GQ3JQJ,=GQ3NIG,=GQ3NTL,=GQ3TKP,=GQ3TKP/P,=GQ3TKV,=GQ3TKV/P,=GQ3VTB,=GQ3WUX,=GQ3ZBE,=GQ4AGG, + =GQ4BAE,=GQ4BLO,=GQ4CAU,=GQ4CFS,=GQ4CHX,=GQ4CHX/P,=GQ4CXM,=GQ4DLG,=GQ4ELV,=GQ4EMX,=GQ4FAU,=GQ4JOJ, + =GQ4JPZ,=GQ4JR,=GQ4MSL,=GQ4OBG,=GQ4PRB,=GQ4UIB,=GQ4UPL,=GQ4VTB,=GQ4WZG,=GQ4XQJ,=GQ4YMM,=GQ6JEP, + =GQ6JRX,=GQ6KON,=GQ6LYJ,=GQ7GAX,=GQ7GDE,=GQ7HUD,=GQ7TUD,=GQ7UED,=GQ7WEF,=GQ8CBQ,=GQ8MHU,=GQ8PLR, + =GQ8SVB,=GQ8TTD,=GR0AXY,=GR0CDV,=GR0DBW,=GR0EKM,=GR0GMN,=GR0GRD,=GR0HPK,=GR0HPL,=GR0HUO,=GR0OGN, + =GR0PNS,=GR0SYV,=GR0TTV,=GR0TUB,=GR0UKZ,=GR0VRP,=GR0WED,=GR0WNR,=GR150NIB,=GR1BAN,=GR1MWK,=GR1TBW, + =GR1ZIV,=GR3JFG,=GR3MZX,=GR3NIG,=GR3OFT,=GR3PPE,=GR3PYU,=GR3VAL,=GR3VTB,=GR3WFJ,=GR3YXJ,=GR3ZDH, + =GR4BDJ,=GR4BLO,=GR4CAU,=GR4CCN,=GR4CFS,=GR4CMI,=GR4CXM,=GR4DLG,=GR4EMX,=GR4EOU,=GR4FQE,=GR4GIF, + =GR4JOJ,=GR4NSZ,=GR4PRB,=GR4SQM,=GR4VTB,=GR4XAW,=GR4XMD,=GR4XQJ,=GR4YMM,=GR6JEP,=GR6JNJ,=GR7AAJ, + =GR7GAX,=GR7GDE,=GR7GMC,=GR7HHB,=GR7HUD,=GR7LNO,=GR7NZI,=GR7TUD,=GR7USC,=GR7VSB,=GR8CBQ,=GR8KJO, + =GR8KPH,=GR8MHU,=GR8OFQ,=GR8SVB,=GS4WAB/P,=GV0DBW,=GV0GMN,=GV0GRD,=GV0LZE,=GV0OBX,=GV0OGN,=GV0SYV, + =GV0VRP,=GV1BAN,=GV3EEW,=GV3JIJ,=GV3NHQ,=GV3NIG,=GV3NKG,=GV3NNZ,=GV3PIP,=GV3ULP,=GV3VTB,=GV4BLO, + =GV4EMX,=GV4HRJ,=GV4ILS,=GV4JOJ,=GV4KLN,=GV4LVW,=GV4PRB,=GV4VTB,=GV4XQJ,=GV6KON,=GV7DHA,=GV7GDE, + =GV7GMC,=GV8AVM,=GV8DPV,=GV8LYS,=MB18FIFA,=MM/DJ4OK/M,=MM/DJ8OK/M,=MM/DL5SE/LH,=MM/F5BLC/P, + =MM/F5LMJ/P,=MM/HB9IAB/P,=MM/KE5TF/P,=MM/N5ET/P,=MM/OK1FZM/P,=MM/W5ZE/P,=MM0BNN/LH,=MM0BQI/2K, + =MM0BQN/2K,=MM0BYE/2K,=MM0DFV/P,=MM0DHQ/NHS,=MM0LON/M,=MM0MOL/P,=MM0SHF/P,=MM0YHB/P,=MM0ZOL/LH, + =MM3AWD/NHS,=MM3DDQ/NHS,=MM5PSL/P,=MM5YLO/P,=MM7WAB/NHS,=MO0BFF,=MO0CWJ,=MO0CYR,=MO0DBC,=MO0DNX, + =MO0FMF,=MO0GXQ,=MO0HZT,=MO0JST/P,=MO0KJG,=MO0KSS,=MO0NFC,=MO0SGQ,=MO0SJT,=MO0TGB,=MO0TSG,=MO0WKC, + =MO0XXW,=MO0ZBH,=MO1AWV,=MO1HMV,=MO3BCA,=MO3BRR,=MO3GPL,=MO3OQR,=MO3TUP,=MO3UVL,=MO3YHA,=MO3YMU, + =MO3ZCB/P,=MO3ZRF,=MO5PSL,=MO6BJJ,=MO6CCS,=MO6CHM,=MO6CRQ,=MO6CRQ/M,=MO6DGZ,=MO6HUT,=MO6KAU, + =MO6KAU/M,=MO6KSJ,=MO6MCV,=MO6SRL,=MO6TEW,=MQ0BNN/P,=MQ0BQM,=MQ0BRG,=MQ0CIN,=MQ0CXA,=MQ0CYR, + =MQ0DNX,=MQ0DXD,=MQ0EQE,=MQ0FMF,=MQ0GXQ,=MQ0GYX,=MQ0GYX/P,=MQ0KJG,=MQ0KSS,=MQ0LEN,=MQ0NFC,=MQ0NJC, + =MQ0SJT,=MQ0TSG,=MQ0WKC,=MQ0XXW,=MQ0ZBH,=MQ1AWV,=MQ1HMV,=MQ1JWF,=MQ3BCA,=MQ3BRR,=MQ3ERZ,=MQ3FET, + =MQ3OVK,=MQ3SVK,=MQ3UIX,=MQ3UVL,=MQ3YHA,=MQ3YMU,=MQ3ZRF,=MQ5PSL,=MQ6AQM,=MQ6BJJ,=MQ6CCS,=MQ6CHM, + =MQ6CRQ,=MQ6DGZ,=MQ6HUT,=MQ6KAJ,=MQ6KAU,=MQ6KSJ,=MQ6KUA,=MQ6LMP,=MQ6MCV,=MR0BQN,=MR0CWB,=MR0CXA, + =MR0DHQ,=MR0DWF,=MR0DXD,=MR0DXH,=MR0EPC,=MR0EQE,=MR0FME,=MR0FMF,=MR0GCF,=MR0GGG,=MR0GGI,=MR0GOR, + =MR0HAI,=MR0HVU,=MR0OIL,=MR0POD,=MR0PSL,=MR0RDM,=MR0SGQ,=MR0SJT,=MR0TAI,=MR0TSG,=MR0TSS,=MR0VTV, + =MR0WEI,=MR0XAF,=MR0XXP,=MR0XXW,=MR1AWV,=MR1HMV,=MR1JWF,=MR1VTB,=MR3AWA,=MR3AWD,=MR3BRR,=MR3PTS, + =MR3UIX,=MR3UVL,=MR3WJZ,=MR3XGP,=MR3YHA,=MR3YPH,=MR3ZCS,=MR5PSL,=MR6AHB,=MR6ARN,=MR6ATU,=MR6CHM, + =MR6CTH,=MR6CTL,=MR6HFC,=MR6MCV,=MR6RLL,=MR6SSI,=MR6TMS,=MV0DXH,=MV0FME,=MV0FMF,=MV0GHM,=MV0HAR, + =MV0LGS,=MV0NFC,=MV0NJS,=MV0SGQ,=MV0SJT,=MV0XXW,=MV1VTB,=MV3BRR,=MV3CVB,=MV3YHA,=MV3YMU,=MV5PSL, + =MV6BJJ,=MV6KSJ,=MV6NRQ; Shetland Islands: 14: 27: EU: 60.50: 1.50: 0.0: *GM/s: =2M0BDR,=2M0BDT,=2M0CPN,=2M0GFC,=2M0SEG,=2M0SPX,=2M0VIK,=2M0ZET,=2M1ANT,=2M1ASQ,=2M1ODL,=G0FBJ, =GB0BL,=GB0DAW,=GB0SI,=GB100ZET,=GB1COR,=GB2AES,=GB2CAS,=GB2DAW,=GB2ELH,=GB2ELH/LH,=GB2HMC, @@ -980,44 +981,44 @@ Wales: 14: 27: EU: 52.28: 3.73: 0.0: GW: =GB0LBG,=GB0LM,=GB0LVF,=GB0MFH,=GB0MIW,=GB0ML,=GB0MPA,=GB0MSB,=GB0MUU,=GB0MWL,=GB0NAW,=GB0NEW, =GB0NG,=GB0NLC,=GB0PBR,=GB0PEM,=GB0PGG,=GB0PLB,=GB0PLL,=GB0PSG,=GB0RME,=GB0ROC,=GB0RPO,=GB0RS, =GB0RSC,=GB0RSF,=GB0RWM,=GB0SCB,=GB0SDD,=GB0SGC,=GB0SH,=GB0SH/LH,=GB0SOA,=GB0SPE,=GB0SPS,=GB0TD, - =GB0TL,=GB0TPR,=GB0TS,=GB0TTT,=GB0VCA,=GB0VEE,=GB0VK,=GB0WHH,=GB0WHR,=GB0WIW,=GB0WMZ,=GB0WUL, - =GB0YG,=GB1004FTS,=GB100AB,=GB100BP,=GB100CSW,=GB100FTS,=GB100GGC,=GB100GGM,=GB100HD,=GB100LB, - =GB100LSG,=GB100MCV,=GB100TMD,=GB10SOTA,=GB19CGW,=GB19CW,=GB19SG,=GB1AD,=GB1ATC,=GB1BAF,=GB1BGS, - =GB1BPL,=GB1BSW,=GB1BW,=GB1CCC,=GB1CDS,=GB1CPG,=GB1CR,=GB1DS,=GB1FHS,=GB1HAS,=GB1HTW,=GB1JC, - =GB1KEY,=GB1LSG,=GB1LW,=GB1LWF,=GB1OOC,=GB1ORM,=GB1PCA,=GB1PCS,=GB1PD,=GB1PGW,=GB1PJ,=GB1PLL, - =GB1RTF,=GB1SDD,=GB1SEA,=GB1SL,=GB1SPN,=GB1SSL,=GB1STC,=GB1STM,=GB1TDS,=GB1WAA,=GB1WIW,=GB1WSM, - =GB2000SET,=GB2003SET,=GB200HNT,=GB200TT,=GB250TMB,=GB250TT,=GB2ADU,=GB2BEF,=GB2BGG,=GB2BOM, - =GB2BOW,=GB2BPM,=GB2BYF,=GB2CC,=GB2CI,=GB2COB,=GB2CRS,=GB2DWR,=GB2EI,=GB2FC,=GB2FLB,=GB2GGM, - =GB2GLS,=GB2GOL,=GB2GSG,=GB2GVA,=GB2HDG,=GB2HMM,=GB2IMD,=GB2LBR,=GB2LM,=GB2LNP,=GB2LSA,=GB2LSA/LH, - =GB2LSH,=GB2MD,=GB2MGY,=GB2MIL,=GB2MLM,=GB2MMC,=GB2MOP,=GB2NF,=GB2NPH,=GB2NPL,=GB2OOA,=GB2ORM, - =GB2PRC,=GB2RFS,=GB2RSG,=GB2RTB,=GB2SAC,=GB2SCC,=GB2SCD,=GB2SCP,=GB2SFM,=GB2SIP,=GB2SLA,=GB2TD, - =GB2TD/LH,=GB2TTA,=GB2VK,=GB2WAA,=GB2WHO,=GB2WIW,=GB2WNA,=GB2WSF,=GB2WT,=GB3HLS,=GB3LMW,=GB4ADU, - =GB4AFS,=GB4AOS,=GB4BB,=GB4BIT,=GB4BOJ,=GB4BPL,=GB4BPL/LH,=GB4BPL/P,=GB4BPR,=GB4BRS/P,=GB4BSG, - =GB4CI,=GB4CTC,=GB4EUL,=GB4FAA,=GB4FTS,=GB4GM,=GB4GSS,=GB4HFH,=GB4HI,=GB4HLB,=GB4HMD,=GB4HMM, - =GB4LRG,=GB4MBC,=GB4MD,=GB4MDH,=GB4MDI,=GB4MJS,=GB4MPI,=GB4MUU,=GB4NDG,=GB4NPL,=GB4NTB,=GB4ON, - =GB4OST,=GB4PAT,=GB4PCS,=GB4PD,=GB4POW,=GB4RC,=GB4RME,=GB4RSL,=GB4SDD,=GB4SLC,=GB4SSP,=GB4SUB, - =GB4TMS,=GB4UKG,=GB4WT,=GB4WWI,=GB4XT,=GB50ABS,=GB50EVS,=GB50RSC,=GB50SGP,=GB5AC,=GB5FI,=GB5GEO, - =GB5MD,=GB5ONG,=GB5PSJ,=GB5SIP,=GB5VEP,=GB5WT,=GB60DITP,=GB60ER,=GB60PW,=GB60SPS,=GB60VLY, - =GB65BTF,=GB6AC,=GB6BLB,=GB6CRI,=GB6GGM,=GB6OQA,=GB6ORA,=GB6PLB,=GB6RNLI,=GB6TS,=GB6TSG,=GB6WT, - =GB6WWT,=GB70BTF,=GB750CC,=GB75ATC,=GB75BB,=GB8HI,=GB8MD,=GB8MG,=GB8ND,=GB8OAE,=GB8OQE,=GB8RAF, - =GB8WOW,=GB8WT,=GB90RSGB/62,=GB90RSGB/72,=GB9GGM,=GC4BRS/LH,=GG100ACD,=GG100ANG,=GG100CPG, - =GG100RGG,=GG100SG,=GO0DIV,=GO0EZQ,=GO0EZY,=GO0JEQ,=GO0MNP,=GO0MNP/P,=GO0NPL,=GO0PLB,=GO0PNI, - =GO0PUP,=GO0VKW,=GO0VML,=GO0VSW,=GO1DPL,=GO1IOT,=GO1JFV,=GO1MVL,=GO1PKM,=GO3PLB,=GO3UOF,=GO3UOF/M, - =GO3XJQ,=GO4BKG,=GO4BLE,=GO4CQZ,=GO4DTQ,=GO4GTI,=GO4JKR,=GO4JUN,=GO4JUW,=GO4MVA,=GO4NOO,=GO4OKT, - =GO4SUE,=GO4SUE/P,=GO4TNZ,=GO4WXM,=GO6IMS,=GO6NKG,=GO6UKO,=GO7DWR,=GO7SBO,=GO7VJK,=GO7VQD,=GO8BQK, - =GO8IQC,=GO8JOY,=GO8OKR,=GQ0ANA,=GQ0DIV,=GQ0JEQ,=GQ0JRF,=GQ0MNO,=GQ0MNP,=GQ0NPL,=GQ0PUP,=GQ0RYT, - =GQ0SLM,=GQ0TQM,=GQ0VKW,=GQ0VML,=GQ0VSW,=GQ0WVL,=GQ1FKY,=GQ1FOA/P,=GQ1IOT,=GQ1JFV,=GQ1MVL,=GQ1NRS, - =GQ1WRV,=GQ1ZKN,=GQ3IRK,=GQ3PLB,=GQ3SB,=GQ3UOF,=GQ3VEN,=GQ3VKL,=GQ3WSU,=GQ3XJA,=GQ3XJQ,=GQ4BKG, - =GQ4BLE,=GQ4CQZ,=GQ4EZW,=GQ4GSH,=GQ4GTI,=GQ4IIL,=GQ4JKR,=GQ4JUN,=GQ4JUW,=GQ4LZP,=GQ4MVA,=GQ4NOO, - =GQ4OKT,=GQ4SUE,=GQ4VNS,=GQ4VZJ,=GQ4WXM,=GQ4WXM/P,=GQ6IMS,=GQ6ITJ,=GQ6NKG,=GQ6UKO,=GQ7BQK,=GQ7DWR, - =GQ7FBV,=GQ7SBO,=GQ7UNJ,=GQ7UNV,=GQ7VJK,=GQ7VQD,=GQ8BQK,=GQ8IQC,=GQ8JOY,=GQ8OKR,=GR0ANA,=GR0DIV, - =GR0DSP,=GR0HUS,=GR0JEQ,=GR0MYY,=GR0NPL,=GR0PSV,=GR0RYT,=GR0SYN,=GR0TKX,=GR0VKW,=GR0WGK,=GR1FJI, - =GR1HNG,=GR1LFX,=GR1LHV,=GR1MCD,=GR1SGG,=GR1WVY,=GR1YQM,=GR3SB,=GR3SFC,=GR3TKH,=GR3UOF,=GR3XJQ, - =GR4BKG,=GR4BLE,=GR4CQZ,=GR4GNY,=GR4GTI,=GR4HZA,=GR4JUN,=GR4JUW,=GR4OGO,=GR4SUE,=GR4VSS/P,=GR4XXJ, - =GR4ZOM,=GR5PH,=GR6NKG,=GR6SIX,=GR6STK,=GR6UKO,=GR6ZDH,=GR7AAV,=GR7HOC,=GR7NAU,=GR7TKZ,=GR7UNV, - =GR7VQD,=GR8BQK,=GR8IQC,=GR8OGI,=GR8TRO,=GV0ANA,=GV0DCK,=GV0DIV,=GV0EME,=GV0FRE,=GV0MNP,=GV0NPL, - =GV1FKY,=GV1IOT,=GV1JFV,=GV1NBW,=GV1YQM,=GV3ATZ,=GV3TJE/P,=GV3UOF,=GV3WEZ,=GV3XJQ,=GV4BKG,=GV4BRS, - =GV4CQZ,=GV4JKR,=GV4JQP,=GV4NQJ,=GV4PUC,=GV6BRC,=GV6JPC,=GV6NKG,=GV7UNV,=GV7VJK,=GV8IQC, + =GB0TL,=GB0TPR,=GB0TS,=GB0TTT,=GB0VCA,=GB0VEE,=GB0VHF,=GB0VK,=GB0WHH,=GB0WHR,=GB0WIW,=GB0WMZ, + =GB0WUL,=GB0YG,=GB1004FTS,=GB100AB,=GB100BP,=GB100CSW,=GB100FTS,=GB100GGC,=GB100GGM,=GB100HD, + =GB100LB,=GB100LSG,=GB100MCV,=GB100TMD,=GB10SOTA,=GB19CGW,=GB19CW,=GB19SG,=GB1AD,=GB1ATC,=GB1BAF, + =GB1BGS,=GB1BPL,=GB1BSW,=GB1BW,=GB1CCC,=GB1CDS,=GB1CHM,=GB1CPG,=GB1CR,=GB1DS,=GB1FHS,=GB1HAS, + =GB1HTW,=GB1JC,=GB1KEY,=GB1LSG,=GB1LW,=GB1LWF,=GB1OOC,=GB1ORM,=GB1PCA,=GB1PCS,=GB1PD,=GB1PGW, + =GB1PJ,=GB1PLL,=GB1RTF,=GB1SDD,=GB1SEA,=GB1SL,=GB1SPN,=GB1SSL,=GB1STC,=GB1STM,=GB1TDS,=GB1WAA, + =GB1WIW,=GB1WSM,=GB2000SET,=GB2003SET,=GB200HNT,=GB200TT,=GB250TMB,=GB250TT,=GB2ADU,=GB2BEF, + =GB2BGG,=GB2BOM,=GB2BOW,=GB2BPM,=GB2BYF,=GB2CC,=GB2CHM,=GB2CI,=GB2COB,=GB2CRS,=GB2DWR,=GB2EI, + =GB2FC,=GB2FLB,=GB2GGM,=GB2GLS,=GB2GOL,=GB2GSG,=GB2GVA,=GB2HDG,=GB2HMM,=GB2IMD,=GB2LBR,=GB2LM, + =GB2LNP,=GB2LSA,=GB2LSA/LH,=GB2LSH,=GB2MD,=GB2MGY,=GB2MIL,=GB2MLM,=GB2MMC,=GB2MOP,=GB2NF,=GB2NPH, + =GB2NPL,=GB2OOA,=GB2ORM,=GB2PRC,=GB2RFS,=GB2RSG,=GB2RTB,=GB2SAC,=GB2SCC,=GB2SCD,=GB2SCP,=GB2SFM, + =GB2SIP,=GB2SLA,=GB2TD,=GB2TD/LH,=GB2TTA,=GB2VK,=GB2WAA,=GB2WHO,=GB2WIW,=GB2WNA,=GB2WSF,=GB2WT, + =GB3HLS,=GB3LMW,=GB4ADU,=GB4AFS,=GB4AOS,=GB4BB,=GB4BIT,=GB4BOJ,=GB4BPL,=GB4BPL/LH,=GB4BPL/P, + =GB4BPR,=GB4BRS/P,=GB4BSG,=GB4CI,=GB4CTC,=GB4EUL,=GB4FAA,=GB4FTS,=GB4GM,=GB4GSS,=GB4HFH,=GB4HI, + =GB4HLB,=GB4HMD,=GB4HMM,=GB4LRG,=GB4MBC,=GB4MD,=GB4MDH,=GB4MDI,=GB4MJS,=GB4MPI,=GB4MUU,=GB4NDG, + =GB4NPL,=GB4NTB,=GB4ON,=GB4OST,=GB4PAT,=GB4PCS,=GB4PD,=GB4POW,=GB4RC,=GB4RME,=GB4RSL,=GB4SDD, + =GB4SLC,=GB4SSP,=GB4SUB,=GB4TMS,=GB4UKG,=GB4WT,=GB4WWI,=GB4XT,=GB50ABS,=GB50EVS,=GB50RSC,=GB50SGP, + =GB5AC,=GB5FI,=GB5GEO,=GB5MD,=GB5ONG,=GB5PSJ,=GB5SIP,=GB5VEP,=GB5WT,=GB60DITP,=GB60ER,=GB60PW, + =GB60SPS,=GB60VLY,=GB65BTF,=GB6AC,=GB6BLB,=GB6CRI,=GB6GGM,=GB6OQA,=GB6ORA,=GB6PLB,=GB6RNLI,=GB6TS, + =GB6TSG,=GB6WT,=GB6WWT,=GB70BTF,=GB750CC,=GB75ATC,=GB75BB,=GB8HI,=GB8MD,=GB8MG,=GB8ND,=GB8OAE, + =GB8OQE,=GB8RAF,=GB8WOW,=GB8WT,=GB90RSGB/62,=GB90RSGB/72,=GB9GGM,=GC4BRS/LH,=GG100ACD,=GG100ANG, + =GG100CPG,=GG100RGG,=GG100SG,=GO0DIV,=GO0EZQ,=GO0EZY,=GO0JEQ,=GO0MNP,=GO0MNP/P,=GO0NPL,=GO0PLB, + =GO0PNI,=GO0PUP,=GO0VKW,=GO0VML,=GO0VSW,=GO1DPL,=GO1IOT,=GO1JFV,=GO1MVL,=GO1PKM,=GO3PLB,=GO3UOF, + =GO3UOF/M,=GO3XJQ,=GO4BKG,=GO4BLE,=GO4CQZ,=GO4DTQ,=GO4GTI,=GO4JKR,=GO4JUN,=GO4JUW,=GO4MVA,=GO4NOO, + =GO4OKT,=GO4SUE,=GO4SUE/P,=GO4TNZ,=GO4WXM,=GO6IMS,=GO6NKG,=GO6UKO,=GO7DWR,=GO7SBO,=GO7VJK,=GO7VQD, + =GO8BQK,=GO8IQC,=GO8JOY,=GO8OKR,=GQ0ANA,=GQ0DIV,=GQ0JEQ,=GQ0JRF,=GQ0MNO,=GQ0MNP,=GQ0NPL,=GQ0PUP, + =GQ0RYT,=GQ0SLM,=GQ0TQM,=GQ0VKW,=GQ0VML,=GQ0VSW,=GQ0WVL,=GQ1FKY,=GQ1FOA/P,=GQ1IOT,=GQ1JFV,=GQ1MVL, + =GQ1NRS,=GQ1WRV,=GQ1ZKN,=GQ3IRK,=GQ3PLB,=GQ3SB,=GQ3UOF,=GQ3VEN,=GQ3VKL,=GQ3WSU,=GQ3XJA,=GQ3XJQ, + =GQ4BKG,=GQ4BLE,=GQ4CQZ,=GQ4EZW,=GQ4GSH,=GQ4GTI,=GQ4IIL,=GQ4JKR,=GQ4JUN,=GQ4JUW,=GQ4LZP,=GQ4MVA, + =GQ4NOO,=GQ4OKT,=GQ4SUE,=GQ4VNS,=GQ4VZJ,=GQ4WXM,=GQ4WXM/P,=GQ6IMS,=GQ6ITJ,=GQ6NKG,=GQ6UKO,=GQ7BQK, + =GQ7DWR,=GQ7FBV,=GQ7SBO,=GQ7UNJ,=GQ7UNV,=GQ7VJK,=GQ7VQD,=GQ8BQK,=GQ8IQC,=GQ8JOY,=GQ8OKR,=GR0ANA, + =GR0DIV,=GR0DSP,=GR0HUS,=GR0JEQ,=GR0MYY,=GR0NPL,=GR0PSV,=GR0RYT,=GR0SYN,=GR0TKX,=GR0VKW,=GR0WGK, + =GR1FJI,=GR1HNG,=GR1LFX,=GR1LHV,=GR1MCD,=GR1SGG,=GR1WVY,=GR1YQM,=GR3SB,=GR3SFC,=GR3TKH,=GR3UOF, + =GR3XJQ,=GR4BKG,=GR4BLE,=GR4CQZ,=GR4GNY,=GR4GTI,=GR4HZA,=GR4JUN,=GR4JUW,=GR4OGO,=GR4SUE,=GR4VSS/P, + =GR4XXJ,=GR4ZOM,=GR5PH,=GR6NKG,=GR6SIX,=GR6STK,=GR6UKO,=GR6ZDH,=GR7AAV,=GR7HOC,=GR7NAU,=GR7TKZ, + =GR7UNV,=GR7VQD,=GR8BQK,=GR8IQC,=GR8OGI,=GR8TRO,=GV0ANA,=GV0DCK,=GV0DIV,=GV0EME,=GV0FRE,=GV0MNP, + =GV0NPL,=GV1FKY,=GV1IOT,=GV1JFV,=GV1NBW,=GV1YQM,=GV3ATZ,=GV3TJE/P,=GV3UOF,=GV3WEZ,=GV3XJQ,=GV4BKG, + =GV4BRS,=GV4CQZ,=GV4JKR,=GV4JQP,=GV4NQJ,=GV4PUC,=GV6BRC,=GV6JPC,=GV6NKG,=GV7UNV,=GV7VJK,=GV8IQC, =GW0AWT/2K,=GW0GEI/2K,=GW0GIH/2K,=GW0MNO/2K,=GW0VSW/2K,=GW3JXN/2K,=GW3KJN/2K,=GW4IIL/2K, =GW4VHP/2K,=M2000Y/97A,=MO0AQZ,=MO0ATI,=MO0COE,=MO0CVT,=MO0EQL,=MO0EZQ,=MO0GXE,=MO0HCX,=MO0IBZ, =MO0IML,=MO0KLW,=MO0LDJ,=MO0LLK,=MO0LUK,=MO0LZZ,=MO0MAU,=MO0MUM,=MO0MWZ,=MO0OWW,=MO0SGD,=MO0SGR, @@ -1182,8 +1183,8 @@ United States: 05: 08: NA: 37.53: 91.67: 5.0: K: NW0(4)[7],NX0(4)[7],NY0(4)[7],NZ0(4)[7],W0(4)[7],WA0(4)[7],WB0(4)[7],WC0(4)[7],WD0(4)[7], WE0(4)[7],WF0(4)[7],WG0(4)[7],WI0(4)[7],WJ0(4)[7],WK0(4)[7],WM0(4)[7],WN0(4)[7],WO0(4)[7], WQ0(4)[7],WR0(4)[7],WS0(4)[7],WT0(4)[7],WU0(4)[7],WV0(4)[7],WW0(4)[7],WX0(4)[7],WY0(4)[7], - WZ0(4)[7],=AH2BW(4)[7],=AH2BY(4)[7],=AH6ES/0(4)[7],=AH6FY(4)[7],=AH6MD(4)[7],=AH6N(4)[7], - =AH6N/0(4)[7],=AH6O(4)[7],=AH6OS(4)[7],=AH6PC(4)[7],=AH6RS(4)[7],=AH9C(4)[7],=AL0G(4)[7], + WZ0(4)[7],=AH2BY(4)[7],=AH6ES/0(4)[7],=AH6FY(4)[7],=AH6MD(4)[7],=AH6N(4)[7],=AH6N/0(4)[7], + =AH6O(4)[7],=AH6OS(4)[7],=AH6PC(4)[7],=AH6RS(4)[7],=AH9C(4)[7],=AL0G(4)[7],=AL1VE/R(4)[7], =AL2AK(4)[7],=AL3E(4)[7],=AL3V(4)[7],=AL6E(4)[7],=AL7BX(4)[7],=AL7EK(4)[7],=AL7FU(4)[7], =AL7GQ(4)[7],=AL7NY(4)[7],=AL7O/0(4)[7],=AL7OX(4)[7],=AL7QQ(4)[7],=AL7QQ/P(4)[7],=AL9DB(4)[7], =KH0EX(4)[7],=KH2CZ(4)[7],=KH2FM(4)[7],=KH2JK(4)[7],=KH2OP(4)[7],=KH2OP/0(4)[7],=KH2SL(4)[7], @@ -1205,16 +1206,16 @@ United States: 05: 08: NA: 37.53: 91.67: 5.0: K: =KL7ZD(4)[7],=KL7ZT(4)[7],=KP2X(4)[7],=KP2Y(4)[7],=KP4ATV(4)[7],=KP4MLF(4)[7],=KP4XZ(4)[7], =NH0AD(4)[7],=NH2LH(4)[7],=NH6CF(4)[7],=NH6EU(4)[7],=NH6LR(4)[7],=NH6WF(4)[7],=NH7CY(4)[7], =NH7FI(4)[7],=NH7XM(4)[7],=NH7ZH(4)[7],=NL7AS(4)[7],=NL7BU(4)[7],=NL7CO/M(4)[7],=NL7CQ(4)[7], - =NL7CQ/0(4)[7],=NL7FF(4)[7],=NL7FU(4)[7],=NL7SB(4)[7],=NL7T(4)[7],=NL7XT(4)[7],=NL7XU(4)[7], - =NL7ZG(4)[7],=NP3XP(4)[7],=NP4AI(4)[7],=NP4AI/0(4)[7],=VE4AGT/M(4)[7],=VE4XC/M(4)[7],=WH2S(4)[7], - =WH2Z(4)[7],=WH6AKZ(4)[7],=WH6ANH(4)[7],=WH6BLT(4)[7],=WH6BUL(4)[7],=WH6BXD(4)[7],=WH6CTU(4)[7], - =WH6CUE(4)[7],=WH6CYM(4)[7],=WH6CZI(4)[7],=WH6CZU(4)[7],=WH6DCJ(4)[7],=WH6DUV(4)[7],=WH6DXA(4)[7], - =WH6EAA(4)[7],=WH6EAE(4)[7],=WH6ENX(4)[7],=WH6FBM(4)[7],=WH6LR(4)[7],=WH6MS(4)[7],=WH6QS(4)[7], - =WH7IR(4)[7],=WH7MZ(4)[7],=WH9AAH(4)[7],=WL0JF(4)[7],=WL1ON(4)[7],=WL7AEC(4)[7],=WL7AJA(4)[7], - =WL7ANY(4)[7],=WL7ATK(4)[7],=WL7BRV(4)[7],=WL7BT(4)[7],=WL7CEG(4)[7],=WL7CLI(4)[7],=WL7CPW(4)[7], - =WL7CQF(4)[7],=WL7CRT(4)[7],=WL7CY(4)[7],=WL7J(4)[7],=WL7JB(4)[7],=WL7LZ(4)[7],=WL7LZ/M(4)[7], - =WL7RV(4)[7],=WL7S(4)[7],=WL7YM(4)[7],=WP2B/0(4)[7],=WP3QH(4)[7],=WP4BTQ(4)[7],=WP4GQR(4)[7], - =WP4LC(4)[7],=WP4LEY(4)[7],=WP4NPV(4)[7], + =NL7CQ/0(4)[7],=NL7FF(4)[7],=NL7FU(4)[7],=NL7IN(4)[7],=NL7SB(4)[7],=NL7T(4)[7],=NL7XT(4)[7], + =NL7XU(4)[7],=NL7ZG(4)[7],=NP3XP(4)[7],=NP4AI(4)[7],=NP4AI/0(4)[7],=VE4AGT/M(4)[7],=VE4XC/M(4)[7], + =WH2S(4)[7],=WH2Z(4)[7],=WH6AKZ(4)[7],=WH6ANH(4)[7],=WH6BLT(4)[7],=WH6BUL(4)[7],=WH6BXD(4)[7], + =WH6CTU(4)[7],=WH6CUE(4)[7],=WH6CYM(4)[7],=WH6CZI(4)[7],=WH6CZU(4)[7],=WH6DCJ(4)[7],=WH6DUV(4)[7], + =WH6DXA(4)[7],=WH6EAA(4)[7],=WH6EAE(4)[7],=WH6ENX(4)[7],=WH6FBM(4)[7],=WH6GOZ(4)[7],=WH6LR(4)[7], + =WH6MS(4)[7],=WH6QS(4)[7],=WH7IR(4)[7],=WH7MZ(4)[7],=WH9AAH(4)[7],=WL0JF(4)[7],=WL1ON(4)[7], + =WL7AEC(4)[7],=WL7AJA(4)[7],=WL7ANY(4)[7],=WL7ATK(4)[7],=WL7BRV(4)[7],=WL7BT(4)[7],=WL7CEG(4)[7], + =WL7CLI(4)[7],=WL7CPW(4)[7],=WL7CQF(4)[7],=WL7CRT(4)[7],=WL7CY(4)[7],=WL7J(4)[7],=WL7JB(4)[7], + =WL7LZ(4)[7],=WL7LZ/M(4)[7],=WL7RV(4)[7],=WL7S(4)[7],=WL7YM(4)[7],=WP2B/0(4)[7],=WP3QH(4)[7], + =WP4BTQ(4)[7],=WP4GQR(4)[7],=WP4LC(4)[7],=WP4LEY(4)[7],=WP4NPV(4)[7], =AH2V(5)[8],=AH2W(5)[8],=AH6BV(5)[8],=AL0A(5)[8],=AL1K(5)[8],=AL1O(5)[8],=AL4V(5)[8],=AL6L(5)[8], =AL6M(5)[8],=AL7GD(5)[8],=AL7LV(5)[8],=AL7QS(5)[8],=AL8A(5)[8],=AL8E(5)[8],=KH2AB(5)[8], =KH2AK(5)[8],=KH2BA(5)[8],=KH2EH(5)[8],=KH6GR(5)[8],=KH6HZ(5)[8],=KH6IKI(5)[8],=KH6JKQ(5)[8], @@ -1268,117 +1269,117 @@ United States: 05: 08: NA: 37.53: 91.67: 5.0: K: =NP4RH(5)[8],=NP4YZ(5)[8],=WH6ADS(5)[8],=WH6AWO(5)[8],=WH6AZN(5)[8],=WH6CE(5)[8],=WH6CTO(5)[8], =WH6DOA(5)[8],=WH6ECO(5)[8],=WH6EEL(5)[8],=WH6EEN(5)[8],=WH6EIJ(5)[8],=WH6FPS(5)[8],=WH6GEU(5)[8], =WH6IO(5)[8],=WH6OB(5)[8],=WH6RN(5)[8],=WH7F(5)[8],=WH7USA(5)[8],=WL7AF(5)[8],=WL7L(5)[8], - =WP2XX(5)[8],=WP3BX(5)[8],=WP3CC(5)[8],=WP3EC(5)[8],=WP3FK(5)[8],=WP4DA(5)[8],=WP4DCK(5)[8], - =WP4EDM(5)[8],=WP4GJL(5)[8],=WP4HRK(5)[8],=WP4HSZ(5)[8],=WP4IYE(5)[8],=WP4KDN(5)[8],=WP4KKX(5)[8], - =WP4KTU(5)[8],=WP4LEM(5)[8],=WP4LNP(5)[8],=WP4LTI(5)[8],=WP4MNV(5)[8],=WP4MSX(5)[8],=WP4MYN(5)[8], - =WP4NXG(5)[8],=WP4OSQ(5)[8],=WP4PPH(5)[8],=WP4PUR(5)[8],=WP4PYL(5)[8],=WP4PYM(5)[8],=WP4PYU(5)[8], - =WP4PYV(5)[8],=WP4PYZ(5)[8],=WP4PZA(5)[8], - =AH0BV(5)[8],=AH0BZ(5)[8],=AH0G(5)[8],=AH2AJ(5)[8],=AH2AM(5)[8],=AH2AV/4(5)[8],=AH2DF(5)[8], - =AH2EB(5)[8],=AH2EJ(5)[8],=AH2X(5)[8],=AH3B(5)[8],=AH6AL(5)[8],=AH6AT(5)[8],=AH6AU(5)[8], - =AH6BJ(5)[8],=AH6C(5)[8],=AH6EZ/4(5)[8],=AH6FX(5)[8],=AH6FX/4(5)[8],=AH6IC(5)[8],=AH6IW(5)[8], - =AH6JH(5)[8],=AH6JN/4(5)[8],=AH6JN/M(5)[8],=AH6KS(5)[8],=AH6KT(5)[8],=AH6KT/4(5)[8],=AH6LQ(5)[8], - =AH6LS(5)[8],=AH6OB(5)[8],=AH6TI(5)[8],=AH7DN(5)[8],=AH7I(5)[8],=AH7I/4(5)[8],=AH7MI(5)[8], - =AH8B(5)[8],=AH8M(5)[8],=AH8M/M(5)[8],=AH8R(5)[8],=AH8T(5)[8],=AL0I(5)[8],=AL1A(5)[8],=AL3G(5)[8], - =AL3M(5)[8],=AL4T(5)[8],=AL4T/4(5)[8],=AL4U(5)[8],=AL4X(5)[8],=AL5A(5)[8],=AL7AL(5)[8], - =AL7AM(5)[8],=AL7BA(5)[8],=AL7FR(5)[8],=AL7GF(5)[8],=AL7GK(5)[8],=AL7HG(5)[8],=AL7HW(5)[8], - =AL7HW/4(5)[8],=AL7IS(5)[8],=AL7KI(5)[8],=AL7KT(5)[8],=AL7LH(5)[8],=AL7LJ(5)[8],=AL7NL(5)[8], - =AL7NM(5)[8],=AL7NS(5)[8],=AL7NS/140(5)[8],=AL7PL(5)[8],=AL7QI(5)[8],=AL7RB(5)[8],=AL7RE(5)[8], - =AL7RL(5)[8],=G8ERJ(5)[8],=GO4AZM(5)[8],=GQ4AZM(5)[8],=GR4AZM(5)[8],=KH0CW(5)[8],=KH0G(5)[8], - =KH0HR(5)[8],=KH0NI(5)[8],=KH0ZZ(5)[8],=KH2D(5)[8],=KH2D/4(5)[8],=KH2GUM/P(5)[8],=KH2HB(5)[8], - =KH2KD(5)[8],=KH2NC(5)[8],=KH2PM(5)[8],=KH2RL(5)[8],=KH2TI(5)[8],=KH2UG(5)[8],=KH2UV(5)[8], - =KH2UY(5)[8],=KH2UZ(5)[8],=KH2VB(5)[8],=KH2VM(5)[8],=KH3AC(5)[8],=KH3AG(5)[8],=KH6AE(5)[8], - =KH6AHQ(5)[8],=KH6AME(5)[8],=KH6CG(5)[8],=KH6CG/4(5)[8],=KH6CT(5)[8],=KH6ED(5)[8],=KH6FHS(5)[8], - =KH6HHS(5)[8],=KH6HHS/4(5)[8],=KH6HOW(5)[8],=KH6ILR(5)[8],=KH6ILR/4(5)[8],=KH6ITI(5)[8], - =KH6JAU(5)[8],=KH6JJD(5)[8],=KH6JNW(5)[8],=KH6JUA(5)[8],=KH6KZ(5)[8],=KH6M(5)[8],=KH6M/4(5)[8], - =KH6M/M(5)[8],=KH6MT(5)[8],=KH6MT/4(5)[8],=KH6NC(5)[8],=KH6NI(5)[8],=KH6OU(5)[8],=KH6POI(5)[8], - =KH6PU(5)[8],=KH6RP(5)[8],=KH6TY(5)[8],=KH6TY/R(5)[8],=KH6UN(5)[8],=KH6WE(5)[8],=KH6WY(5)[8], - =KH6XH(5)[8],=KH7DA(5)[8],=KH7DM(5)[8],=KH7DY(5)[8],=KH7FC(5)[8],=KH7FU(5)[8],=KH7GM(5)[8], - =KH7GZ(5)[8],=KH7HJ/4(5)[8],=KH7OC(5)[8],=KH7OV(5)[8],=KH7WK(5)[8],=KH7WU(5)[8],=KH7XS/4(5)[8], - =KH7XT(5)[8],=KH7ZC(5)[8],=KH8DO(5)[8],=KH8U(5)[8],=KL0AG(5)[8],=KL0BG(5)[8],=KL0IP(5)[8], - =KL0KC(5)[8],=KL0KE/4(5)[8],=KL0L(5)[8],=KL0MG(5)[8],=KL0MP(5)[8],=KL0S(5)[8],=KL0SS(5)[8], - =KL0ST(5)[8],=KL0TY(5)[8],=KL0UA(5)[8],=KL0UD(5)[8],=KL0VU(5)[8],=KL0WF(5)[8],=KL1AN(5)[8], - =KL1AV(5)[8],=KL1KP(5)[8],=KL1NK(5)[8],=KL1NS(5)[8],=KL1OK(5)[8],=KL1PA(5)[8],=KL1SS(5)[8], - =KL2AK(5)[8],=KL2CX(5)[8],=KL2EY(5)[8],=KL2GG(5)[8],=KL2GP(5)[8],=KL2HV(5)[8],=KL2MQ(5)[8], - =KL2NN(5)[8],=KL2UM(5)[8],=KL2UQ(5)[8],=KL2XI(5)[8],=KL3BG(5)[8],=KL3EV(5)[8],=KL3FA(5)[8], - =KL3HG(5)[8],=KL3IA(5)[8],=KL3KB(5)[8],=KL3KG(5)[8],=KL3NR(5)[8],=KL3SH(5)[8],=KL3WM(5)[8], - =KL3X(5)[8],=KL3XB(5)[8],=KL4CO(5)[8],=KL4DD(5)[8],=KL4H(5)[8],=KL4J(5)[8],=KL4XR(5)[8], - =KL5X(5)[8],=KL5YJ(5)[8],=KL7A(5)[8],=KL7AF(5)[8],=KL7DA(5)[8],=KL7DA/4(5)[8],=KL7EA(5)[8], - =KL7FO(5)[8],=KL7GLL(5)[8],=KL7H(5)[8],=KL7HIM(5)[8],=KL7HJZ(5)[8],=KL7HNY(5)[8],=KL7HOT(5)[8], - =KL7HQW(5)[8],=KL7HV(5)[8],=KL7HX(5)[8],=KL7I(5)[8],=KL7IEK(5)[8],=KL7IKZ(5)[8],=KL7IV(5)[8], - =KL7IVY(5)[8],=KL7IWF(5)[8],=KL7JDS(5)[8],=KL7JR(5)[8],=KL7LS(5)[8],=KL7MJ(5)[8],=KL7NCO(5)[8], - =KL7NL(5)[8],=KL7NL/4(5)[8],=KL7NT(5)[8],=KL7OO(5)[8],=KL7P/4(5)[8],=KL7PS(5)[8],=KL7QH(5)[8], - =KL7QU(5)[8],=KL7SR(5)[8],=KL7TZ(5)[8],=KL9A/1(5)[8],=KP2AF(5)[8],=KP2AV(5)[8],=KP2AV/4(5)[8], - =KP2BU(5)[8],=KP2CH(5)[8],=KP2CR(5)[8],=KP2L(5)[8],=KP2L/4(5)[8],=KP2N(5)[8],=KP2QL(5)[8], - =KP2R(5)[8],=KP2U(5)[8],=KP2US(5)[8],=KP2V(5)[8],=KP3AMG(5)[8],=KP3BL(5)[8],=KP3BP(5)[8], - =KP3SK(5)[8],=KP3SW(5)[8],=KP3U(5)[8],=KP4AD(5)[8],=KP4AOD(5)[8],=KP4AOD/4(5)[8],=KP4AYI(5)[8], - =KP4BBN(5)[8],=KP4BEC(5)[8],=KP4BM(5)[8],=KP4BOB(5)[8],=KP4CBP(5)[8],=KP4CEL(5)[8],=KP4CH(5)[8], - =KP4CJ(5)[8],=KP4CPP(5)[8],=KP4CSJ(5)[8],=KP4CSZ(5)[8],=KP4CW(5)[8],=KP4CZ(5)[8],=KP4DAC(5)[8], - =KP4DDS(5)[8],=KP4DPQ(5)[8],=KP4DQS(5)[8],=KP4EDL(5)[8],=KP4EF(5)[8],=KP4EH(5)[8],=KP4EIA(5)[8], - =KP4EMY(5)[8],=KP4ENK(5)[8],=KP4EOR(5)[8],=KP4EOR/4(5)[8],=KP4ERT(5)[8],=KP4ESC(5)[8], - =KP4FBS(5)[8],=KP4FDE(5)[8],=KP4FFO(5)[8],=KP4FGI(5)[8],=KP4FIR(5)[8],=KP4FJE(5)[8],=KP4FLP(5)[8], - =KP4FOF(5)[8],=KP4GW(5)[8],=KP4HE(5)[8],=KP4HN(5)[8],=KP4II(5)[8],=KP4IRI(5)[8],=KP4IT(5)[8], - =KP4JCC(5)[8],=KP4JOS(5)[8],=KP4JWR(5)[8],=KP4KA(5)[8],=KP4KD(5)[8],=KP4KD/4(5)[8],=KP4KE/4(5)[8], - =KP4KF(5)[8],=KP4LEU(5)[8],=KP4LF(5)[8],=KP4LMD(5)[8],=KP4LQ(5)[8],=KP4LUV(5)[8],=KP4LX(5)[8], - =KP4MA(5)[8],=KP4MMG(5)[8],=KP4MPR(5)[8],=KP4MSP(5)[8],=KP4ND(5)[8],=KP4NI(5)[8],=KP4OO(5)[8], - =KP4PC(5)[8],=KP4PEC(5)[8],=KP4PF(5)[8],=KP4PM(5)[8],=KP4PMD(5)[8],=KP4Q(5)[8],=KP4QT(5)[8], - =KP4QT/4(5)[8],=KP4REY(5)[8],=KP4RGD(5)[8],=KP4RGT(5)[8],=KP4ROP(5)[8],=KP4RRC(5)[8],=KP4RT(5)[8], - =KP4RZ(5)[8],=KP4SU(5)[8],=KP4SWR(5)[8],=KP4TL(5)[8],=KP4UFO(5)[8],=KP4USA(5)[8],=KP4VMR(5)[8], - =KP4VO(5)[8],=KP4WK(5)[8],=KP4WW(5)[8],=KP4WY(5)[8],=KP4XP(5)[8],=KP4YLV(5)[8],=KP4ZF(5)[8], - =KP4ZV(5)[8],=KP4ZX(5)[8],=NH2A(5)[8],=NH2BQ(5)[8],=NH2DB(5)[8],=NH2F(5)[8],=NH2GY(5)[8], - =NH2KW(5)[8],=NH2NG(5)[8],=NH6AU(5)[8],=NH6AX(5)[8],=NH6BD/4(5)[8],=NH6E(5)[8],=NH6GE(5)[8], - =NH6GR(5)[8],=NH6HX(5)[8],=NH6HX/4(5)[8],=NH6JX(5)[8],=NH6KI(5)[8],=NH6QR(5)[8],=NH6SR(5)[8], - =NH6SZ(5)[8],=NH6T(5)[8],=NH6TL(5)[8],=NH7AA(5)[8],=NH7AQ(5)[8],=NH7AR(5)[8],=NH7FG(5)[8], - =NH7FV(5)[8],=NH7OI(5)[8],=NH7P(5)[8],=NH7T/4(5)[8],=NH7UN(5)[8],=NH7XN(5)[8],=NH7YL(5)[8], - =NL7AJ(5)[8],=NL7AU(5)[8],=NL7AU/4(5)[8],=NL7BV(5)[8],=NL7KL(5)[8],=NL7KX(5)[8],=NL7LO(5)[8], - =NL7LR(5)[8],=NL7LY(5)[8],=NL7MD(5)[8],=NL7MR(5)[8],=NL7OB(5)[8],=NL7OS(5)[8],=NL7P(5)[8], - =NL7PV(5)[8],=NL7U(5)[8],=NL7UP(5)[8],=NL7VV(5)[8],=NL7VX(5)[8],=NL7VX/4(5)[8],=NL7VX/M(5)[8], - =NL7YZ(5)[8],=NP2B(5)[8],=NP2B/4(5)[8],=NP2BB(5)[8],=NP2BW(5)[8],=NP2C/4(5)[8],=NP2CB(5)[8], - =NP2D(5)[8],=NP2DB(5)[8],=NP2DJ(5)[8],=NP2EI(5)[8],=NP2FJ(5)[8],=NP2FT(5)[8],=NP2GN(5)[8], - =NP2GW(5)[8],=NP2HQ(5)[8],=NP2HS(5)[8],=NP2HW(5)[8],=NP2IE(5)[8],=NP2IF(5)[8],=NP2IJ(5)[8], - =NP2IS(5)[8],=NP2IW(5)[8],=NP2IX(5)[8],=NP2JA(5)[8],=NP2JS(5)[8],=NP2JV(5)[8],=NP2L(5)[8], - =NP2LC(5)[8],=NP2MM(5)[8],=NP2MN(5)[8],=NP2MP(5)[8],=NP2MR(5)[8],=NP2MR/4(5)[8],=NP2O(5)[8], - =NP2OL(5)[8],=NP2OO(5)[8],=NP2OR(5)[8],=NP2PA(5)[8],=NP2R(5)[8],=NP2T(5)[8],=NP2W(5)[8], - =NP3AX(5)[8],=NP3BL(5)[8],=NP3CC(5)[8],=NP3CI(5)[8],=NP3CM(5)[8],=NP3CT(5)[8],=NP3FR(5)[8], - =NP3G(5)[8],=NP3HD(5)[8],=NP3HG(5)[8],=NP3HN(5)[8],=NP3HP(5)[8],=NP3HU(5)[8],=NP3IL(5)[8], - =NP3IU(5)[8],=NP3K(5)[8],=NP3KM(5)[8],=NP3MM(5)[8],=NP3MX(5)[8],=NP3NC(5)[8],=NP3OW(5)[8], - =NP3QT(5)[8],=NP3R(5)[8],=NP3ST(5)[8],=NP3TM(5)[8],=NP3UM(5)[8],=NP3VJ(5)[8],=NP4AS(5)[8], - =NP4AV(5)[8],=NP4CC(5)[8],=NP4CK(5)[8],=NP4CV(5)[8],=NP4DM(5)[8],=NP4EM(5)[8],=NP4GH(5)[8], - =NP4J(5)[8],=NP4JL(5)[8],=NP4JU(5)[8],=NP4KV(5)[8],=NP4M(5)[8],=NP4ND(5)[8],=NP4PF(5)[8], - =NP4RJ(5)[8],=NP4SY(5)[8],=NP4TR(5)[8],=NP4WT(5)[8],=NP4XB(5)[8],=NP4ZC(5)[8],=WH2AAT(5)[8], - =WH2ABJ(5)[8],=WH2G(5)[8],=WH6A(5)[8],=WH6ACF(5)[8],=WH6AJS(5)[8],=WH6AQ(5)[8],=WH6AVU(5)[8], - =WH6AX(5)[8],=WH6BRQ(5)[8],=WH6CEF(5)[8],=WH6CMT(5)[8],=WH6CNC(5)[8],=WH6CTC(5)[8],=WH6CXA(5)[8], - =WH6CXT(5)[8],=WH6DBX(5)[8],=WH6DMJ(5)[8],=WH6DNF(5)[8],=WH6DOL(5)[8],=WH6DUJ(5)[8],=WH6DXT(5)[8], - =WH6DZ(5)[8],=WH6ECQ(5)[8],=WH6EFI(5)[8],=WH6EFX(5)[8],=WH6EFY(5)[8],=WH6EIK(5)[8],=WH6EIR(5)[8], - =WH6EKW(5)[8],=WH6ELG(5)[8],=WH6ELM(5)[8],=WH6ETF(5)[8],=WH6FCP(5)[8],=WH6GHO(5)[8],=WH6HA(5)[8], - =WH6IF(5)[8],=WH6IZ(5)[8],=WH6J(5)[8],=WH6L(5)[8],=WH6LE(5)[8],=WH6LE/4(5)[8],=WH6LE/M(5)[8], - =WH6LE/P(5)[8],=WH6NE(5)[8],=WH6NU(5)[8],=WH6WX(5)[8],=WH6YH(5)[8],=WH6YH/4(5)[8],=WH6YM(5)[8], - =WH6ZF(5)[8],=WH7GD(5)[8],=WH7HX(5)[8],=WH7NI(5)[8],=WH7XK(5)[8],=WH7XU(5)[8],=WH7YL(5)[8], - =WH7YV(5)[8],=WH7ZM(5)[8],=WH9AAF(5)[8],=WL4X(5)[8],=WL7AUL(5)[8],=WL7AX(5)[8],=WL7CHA(5)[8], - =WL7CIB(5)[8],=WL7CKJ(5)[8],=WL7COL(5)[8],=WL7CPA(5)[8],=WL7CQT(5)[8],=WL7CUY(5)[8],=WL7E/4(5)[8], - =WL7GV(5)[8],=WL7IO(5)[8],=WL7JE(5)[8],=WL7SR(5)[8],=WL7UN(5)[8],=WL7YX(5)[8],=WP2AGD(5)[8], - =WP2AGO(5)[8],=WP2AHC(5)[8],=WP2AIG(5)[8],=WP2AIL(5)[8],=WP2BB(5)[8],=WP2C(5)[8],=WP2J(5)[8], - =WP2L(5)[8],=WP2MA(5)[8],=WP2P(5)[8],=WP3AY(5)[8],=WP3BC(5)[8],=WP3DW(5)[8],=WP3HL(5)[8], - =WP3IM(5)[8],=WP3JE(5)[8],=WP3JQ(5)[8],=WP3JU(5)[8],=WP3K(5)[8],=WP3LE(5)[8],=WP3MB(5)[8], - =WP3ME(5)[8],=WP3NIS(5)[8],=WP3O(5)[8],=WP3PW(5)[8],=WP3QE(5)[8],=WP3TQ(5)[8],=WP3ZA(5)[8], - =WP4AIE(5)[8],=WP4AIL(5)[8],=WP4AIZ(5)[8],=WP4ALH(5)[8],=WP4AQK(5)[8],=WP4AVW(5)[8],=WP4B(5)[8], - =WP4BFP(5)[8],=WP4BGM(5)[8],=WP4BIN(5)[8],=WP4BJS(5)[8],=WP4BK(5)[8],=WP4BOC(5)[8],=WP4BQV(5)[8], - =WP4BXS(5)[8],=WP4BZG(5)[8],=WP4CKW(5)[8],=WP4CLS(5)[8],=WP4CMH(5)[8],=WP4DC(5)[8],=WP4DCB(5)[8], - =WP4DFK(5)[8],=WP4DMV(5)[8],=WP4DNE(5)[8],=WP4DPX(5)[8],=WP4ENX(5)[8],=WP4EXH(5)[8],=WP4FEI(5)[8], - =WP4FRK(5)[8],=WP4FS(5)[8],=WP4GAK(5)[8],=WP4GFH(5)[8],=WP4GX(5)[8],=WP4GYA(5)[8],=WP4HFZ(5)[8], - =WP4HNN(5)[8],=WP4HOX(5)[8],=WP4IF(5)[8],=WP4IJ(5)[8],=WP4IK(5)[8],=WP4ILP(5)[8],=WP4INP(5)[8], - =WP4JC(5)[8],=WP4JKO(5)[8],=WP4JNB(5)[8],=WP4JQJ(5)[8],=WP4JSR(5)[8],=WP4JSV(5)[8],=WP4JT(5)[8], - =WP4KCJ(5)[8],=WP4KDH(5)[8],=WP4KFP(5)[8],=WP4KGE(5)[8],=WP4KGI(5)[8],=WP4KI(5)[8],=WP4KJV(5)[8], - =WP4KPK(5)[8],=WP4KSK(5)[8],=WP4KTD(5)[8],=WP4LBK(5)[8],=WP4LDG(5)[8],=WP4LDL(5)[8],=WP4LDP(5)[8], - =WP4LE(5)[8],=WP4LEO(5)[8],=WP4LHA(5)[8],=WP4LTA(5)[8],=WP4MAE(5)[8],=WP4MD(5)[8],=WP4MO(5)[8], - =WP4MQF(5)[8],=WP4MWE(5)[8],=WP4MWK(5)[8],=WP4MWS(5)[8],=WP4MXE(5)[8],=WP4MYG(5)[8],=WP4MYK(5)[8], - =WP4NAI(5)[8],=WP4NAQ(5)[8],=WP4NBF(5)[8],=WP4NBG(5)[8],=WP4NFU(5)[8],=WP4NKU(5)[8],=WP4NLQ(5)[8], - =WP4NVL(5)[8],=WP4NWV(5)[8],=WP4NWW(5)[8],=WP4NYU(5)[8],=WP4O/4(5)[8],=WP4O/M(5)[8],=WP4OAT(5)[8], - =WP4OBD(5)[8],=WP4OBH(5)[8],=WP4ODR(5)[8],=WP4ODT(5)[8],=WP4OEO(5)[8],=WP4OFA(5)[8],=WP4OFL(5)[8], - =WP4OHJ(5)[8],=WP4OKI(5)[8],=WP4OLM(5)[8],=WP4OMG(5)[8],=WP4OMV(5)[8],=WP4ONR(5)[8],=WP4OOI(5)[8], - =WP4OPD(5)[8],=WP4OPF(5)[8],=WP4OQH(5)[8],=WP4OTP(5)[8],=WP4OXA(5)[8],=WP4P(5)[8],=WP4PEP(5)[8], - =WP4PR(5)[8],=WP4PUV(5)[8],=WP4PWV(5)[8],=WP4PXG(5)[8],=WP4QER(5)[8],=WP4QGV(5)[8],=WP4QHU(5)[8], - =WP4RRR(5)[8],=WP4TD(5)[8],=WP4TX(5)[8],=WP4UC(5)[8],=WP4UM(5)[8],=WP4UO(5)[8],=WP4VL(5)[8], - =WP4VM(5)[8],=WP4YG(5)[8],=WP4ZW(5)[8], + =WP2XX(5)[8],=WP3BX(5)[8],=WP3CC(5)[8],=WP3EC(5)[8],=WP3FK(5)[8],=WP3ZV(5)[8],=WP4DA(5)[8], + =WP4DCK(5)[8],=WP4EDM(5)[8],=WP4GJL(5)[8],=WP4HRK(5)[8],=WP4HSZ(5)[8],=WP4IYE(5)[8],=WP4KDN(5)[8], + =WP4KKX(5)[8],=WP4KTU(5)[8],=WP4LEM(5)[8],=WP4LNP(5)[8],=WP4LTI(5)[8],=WP4MNV(5)[8],=WP4MSX(5)[8], + =WP4MYN(5)[8],=WP4NXG(5)[8],=WP4NYL(5)[8],=WP4OSQ(5)[8],=WP4PPH(5)[8],=WP4PUR(5)[8],=WP4PYL(5)[8], + =WP4PYM(5)[8],=WP4PYU(5)[8],=WP4PYV(5)[8],=WP4PYZ(5)[8],=WP4PZA(5)[8], + =AH0BV(5)[8],=AH0BZ(5)[8],=AH0G(5)[8],=AH2AJ(5)[8],=AH2AM(5)[8],=AH2AV/4(5)[8],=AH2BW(5)[8], + =AH2DF(5)[8],=AH2EB(5)[8],=AH2EJ(5)[8],=AH2X(5)[8],=AH3B(5)[8],=AH6AL(5)[8],=AH6AT(5)[8], + =AH6AU(5)[8],=AH6BJ(5)[8],=AH6C(5)[8],=AH6EZ/4(5)[8],=AH6FX(5)[8],=AH6FX/4(5)[8],=AH6IC(5)[8], + =AH6IW(5)[8],=AH6JH(5)[8],=AH6JN/4(5)[8],=AH6JN/M(5)[8],=AH6KS(5)[8],=AH6KT(5)[8],=AH6KT/4(5)[8], + =AH6LQ(5)[8],=AH6LS(5)[8],=AH6OB(5)[8],=AH6TI(5)[8],=AH7DN(5)[8],=AH7I(5)[8],=AH7I/4(5)[8], + =AH7MI(5)[8],=AH8B(5)[8],=AH8M(5)[8],=AH8M/M(5)[8],=AH8R(5)[8],=AH8T(5)[8],=AL0I(5)[8], + =AL1A(5)[8],=AL3G(5)[8],=AL3M(5)[8],=AL4T(5)[8],=AL4T/4(5)[8],=AL4U(5)[8],=AL4X(5)[8],=AL5A(5)[8], + =AL7AL(5)[8],=AL7AM(5)[8],=AL7BA(5)[8],=AL7FR(5)[8],=AL7GF(5)[8],=AL7GK(5)[8],=AL7HG(5)[8], + =AL7HW(5)[8],=AL7HW/4(5)[8],=AL7IS(5)[8],=AL7KI(5)[8],=AL7KT(5)[8],=AL7LH(5)[8],=AL7LJ(5)[8], + =AL7NL(5)[8],=AL7NM(5)[8],=AL7NS(5)[8],=AL7NS/140(5)[8],=AL7PL(5)[8],=AL7QI(5)[8],=AL7RB(5)[8], + =AL7RE(5)[8],=AL7RL(5)[8],=G8ERJ(5)[8],=GO4AZM(5)[8],=GQ4AZM(5)[8],=GR4AZM(5)[8],=KH0CW(5)[8], + =KH0G(5)[8],=KH0HR(5)[8],=KH0NI(5)[8],=KH0ZZ(5)[8],=KH2D(5)[8],=KH2D/4(5)[8],=KH2GUM/P(5)[8], + =KH2HB(5)[8],=KH2KD(5)[8],=KH2NC(5)[8],=KH2PM(5)[8],=KH2RL(5)[8],=KH2TI(5)[8],=KH2UG(5)[8], + =KH2UV(5)[8],=KH2UY(5)[8],=KH2UZ(5)[8],=KH2VB(5)[8],=KH2VM(5)[8],=KH3AC(5)[8],=KH3AG(5)[8], + =KH6AE(5)[8],=KH6AHQ(5)[8],=KH6AME(5)[8],=KH6CG(5)[8],=KH6CG/4(5)[8],=KH6CT(5)[8],=KH6ED(5)[8], + =KH6FHS(5)[8],=KH6HHS(5)[8],=KH6HHS/4(5)[8],=KH6HOW(5)[8],=KH6ILR(5)[8],=KH6ILR/4(5)[8], + =KH6ITI(5)[8],=KH6JAU(5)[8],=KH6JJD(5)[8],=KH6JNW(5)[8],=KH6JUA(5)[8],=KH6KZ(5)[8],=KH6M(5)[8], + =KH6M/4(5)[8],=KH6M/M(5)[8],=KH6MT(5)[8],=KH6MT/4(5)[8],=KH6NC(5)[8],=KH6NI(5)[8],=KH6OU(5)[8], + =KH6POI(5)[8],=KH6PU(5)[8],=KH6RP(5)[8],=KH6TY(5)[8],=KH6TY/R(5)[8],=KH6UN(5)[8],=KH6WE(5)[8], + =KH6WY(5)[8],=KH6XH(5)[8],=KH7DA(5)[8],=KH7DM(5)[8],=KH7DY(5)[8],=KH7FC(5)[8],=KH7FU(5)[8], + =KH7GM(5)[8],=KH7GZ(5)[8],=KH7HJ/4(5)[8],=KH7OC(5)[8],=KH7OV(5)[8],=KH7WK(5)[8],=KH7WU(5)[8], + =KH7XS/4(5)[8],=KH7XT(5)[8],=KH7ZC(5)[8],=KH8DO(5)[8],=KH8U(5)[8],=KL0AG(5)[8],=KL0BG(5)[8], + =KL0IP(5)[8],=KL0KC(5)[8],=KL0KE/4(5)[8],=KL0L(5)[8],=KL0MG(5)[8],=KL0MP(5)[8],=KL0S(5)[8], + =KL0SS(5)[8],=KL0ST(5)[8],=KL0TY(5)[8],=KL0UA(5)[8],=KL0UD(5)[8],=KL0VU(5)[8],=KL0WF(5)[8], + =KL1AN(5)[8],=KL1AV(5)[8],=KL1KP(5)[8],=KL1NK(5)[8],=KL1NS(5)[8],=KL1OK(5)[8],=KL1PA(5)[8], + =KL1SS(5)[8],=KL2AK(5)[8],=KL2CX(5)[8],=KL2EY(5)[8],=KL2GG(5)[8],=KL2GP(5)[8],=KL2HV(5)[8], + =KL2MQ(5)[8],=KL2NN(5)[8],=KL2UM(5)[8],=KL2UQ(5)[8],=KL2XI(5)[8],=KL3BG(5)[8],=KL3EV(5)[8], + =KL3FA(5)[8],=KL3HG(5)[8],=KL3IA(5)[8],=KL3KB(5)[8],=KL3KG(5)[8],=KL3NR(5)[8],=KL3SH(5)[8], + =KL3WM(5)[8],=KL3X(5)[8],=KL3XB(5)[8],=KL4CO(5)[8],=KL4DD(5)[8],=KL4H(5)[8],=KL4J(5)[8], + =KL4XR(5)[8],=KL5X(5)[8],=KL5YJ(5)[8],=KL7A(5)[8],=KL7AF(5)[8],=KL7DA(5)[8],=KL7DA/4(5)[8], + =KL7EA(5)[8],=KL7FO(5)[8],=KL7GLL(5)[8],=KL7H(5)[8],=KL7HIM(5)[8],=KL7HJZ(5)[8],=KL7HNY(5)[8], + =KL7HOT(5)[8],=KL7HQW(5)[8],=KL7HV(5)[8],=KL7HX(5)[8],=KL7I(5)[8],=KL7IEK(5)[8],=KL7IKZ(5)[8], + =KL7IV(5)[8],=KL7IVY(5)[8],=KL7IWF(5)[8],=KL7JDS(5)[8],=KL7JR(5)[8],=KL7LS(5)[8],=KL7MJ(5)[8], + =KL7NCO(5)[8],=KL7NL(5)[8],=KL7NL/4(5)[8],=KL7NT(5)[8],=KL7OO(5)[8],=KL7P/4(5)[8],=KL7PS(5)[8], + =KL7QH(5)[8],=KL7QU(5)[8],=KL7SR(5)[8],=KL7TZ(5)[8],=KL9A/1(5)[8],=KP2AF(5)[8],=KP2AV(5)[8], + =KP2AV/4(5)[8],=KP2BU(5)[8],=KP2CH(5)[8],=KP2CR(5)[8],=KP2L(5)[8],=KP2L/4(5)[8],=KP2N(5)[8], + =KP2QL(5)[8],=KP2R(5)[8],=KP2U(5)[8],=KP2US(5)[8],=KP2V(5)[8],=KP3AMG(5)[8],=KP3BL(5)[8], + =KP3BP(5)[8],=KP3SK(5)[8],=KP3SW(5)[8],=KP3U(5)[8],=KP4AD(5)[8],=KP4AOD(5)[8],=KP4AOD/4(5)[8], + =KP4AYI(5)[8],=KP4BBN(5)[8],=KP4BEC(5)[8],=KP4BM(5)[8],=KP4BOB(5)[8],=KP4CBP(5)[8],=KP4CEL(5)[8], + =KP4CH(5)[8],=KP4CJ(5)[8],=KP4CPP(5)[8],=KP4CSJ(5)[8],=KP4CSZ(5)[8],=KP4CW(5)[8],=KP4CZ(5)[8], + =KP4DAC(5)[8],=KP4DDS(5)[8],=KP4DPQ(5)[8],=KP4DQS(5)[8],=KP4EDL(5)[8],=KP4EF(5)[8],=KP4EH(5)[8], + =KP4EIA(5)[8],=KP4EMY(5)[8],=KP4ENK(5)[8],=KP4EOR(5)[8],=KP4EOR/4(5)[8],=KP4ERT(5)[8], + =KP4ESC(5)[8],=KP4FBS(5)[8],=KP4FDE(5)[8],=KP4FFO(5)[8],=KP4FGI(5)[8],=KP4FIR(5)[8],=KP4FJE(5)[8], + =KP4FLP(5)[8],=KP4FOF(5)[8],=KP4GW(5)[8],=KP4HE(5)[8],=KP4HN(5)[8],=KP4II(5)[8],=KP4IRI(5)[8], + =KP4IT(5)[8],=KP4JCC(5)[8],=KP4JOS(5)[8],=KP4JWR(5)[8],=KP4KA(5)[8],=KP4KD(5)[8],=KP4KD/4(5)[8], + =KP4KE/4(5)[8],=KP4KF(5)[8],=KP4LEU(5)[8],=KP4LF(5)[8],=KP4LMD(5)[8],=KP4LQ(5)[8],=KP4LUV(5)[8], + =KP4LX(5)[8],=KP4MA(5)[8],=KP4MMG(5)[8],=KP4MPR(5)[8],=KP4MSP(5)[8],=KP4ND(5)[8],=KP4NI(5)[8], + =KP4OO(5)[8],=KP4PC(5)[8],=KP4PEC(5)[8],=KP4PF(5)[8],=KP4PM(5)[8],=KP4PMD(5)[8],=KP4Q(5)[8], + =KP4QT(5)[8],=KP4QT/4(5)[8],=KP4REY(5)[8],=KP4RGD(5)[8],=KP4RGT(5)[8],=KP4ROP(5)[8],=KP4RRC(5)[8], + =KP4RT(5)[8],=KP4RZ(5)[8],=KP4SU(5)[8],=KP4SWR(5)[8],=KP4TL(5)[8],=KP4UFO(5)[8],=KP4USA(5)[8], + =KP4VMR(5)[8],=KP4VO(5)[8],=KP4WK(5)[8],=KP4WW(5)[8],=KP4WY(5)[8],=KP4XP(5)[8],=KP4YLV(5)[8], + =KP4ZF(5)[8],=KP4ZV(5)[8],=KP4ZX(5)[8],=NH2A(5)[8],=NH2BQ(5)[8],=NH2DB(5)[8],=NH2F(5)[8], + =NH2GY(5)[8],=NH2KW(5)[8],=NH2NG(5)[8],=NH6AU(5)[8],=NH6AX(5)[8],=NH6BD/4(5)[8],=NH6E(5)[8], + =NH6GE(5)[8],=NH6GR(5)[8],=NH6HX(5)[8],=NH6HX/4(5)[8],=NH6JX(5)[8],=NH6KI(5)[8],=NH6QR(5)[8], + =NH6SR(5)[8],=NH6SZ(5)[8],=NH6T(5)[8],=NH6TL(5)[8],=NH7AA(5)[8],=NH7AQ(5)[8],=NH7AR(5)[8], + =NH7FG(5)[8],=NH7FV(5)[8],=NH7OI(5)[8],=NH7P(5)[8],=NH7T/4(5)[8],=NH7UN(5)[8],=NH7XN(5)[8], + =NH7YL(5)[8],=NL7AJ(5)[8],=NL7AU(5)[8],=NL7AU/4(5)[8],=NL7BV(5)[8],=NL7KL(5)[8],=NL7KX(5)[8], + =NL7LO(5)[8],=NL7LR(5)[8],=NL7LY(5)[8],=NL7MD(5)[8],=NL7MR(5)[8],=NL7OB(5)[8],=NL7OS(5)[8], + =NL7P(5)[8],=NL7PV(5)[8],=NL7U(5)[8],=NL7UP(5)[8],=NL7VV(5)[8],=NL7VX(5)[8],=NL7VX/4(5)[8], + =NL7VX/M(5)[8],=NL7YZ(5)[8],=NP2B(5)[8],=NP2B/4(5)[8],=NP2BB(5)[8],=NP2BW(5)[8],=NP2C/4(5)[8], + =NP2CB(5)[8],=NP2D(5)[8],=NP2DB(5)[8],=NP2DJ(5)[8],=NP2EI(5)[8],=NP2FJ(5)[8],=NP2FT(5)[8], + =NP2GN(5)[8],=NP2GW(5)[8],=NP2HQ(5)[8],=NP2HS(5)[8],=NP2HW(5)[8],=NP2IE(5)[8],=NP2IF(5)[8], + =NP2IJ(5)[8],=NP2IS(5)[8],=NP2IW(5)[8],=NP2IX(5)[8],=NP2JA(5)[8],=NP2JS(5)[8],=NP2JV(5)[8], + =NP2L(5)[8],=NP2LC(5)[8],=NP2MM(5)[8],=NP2MN(5)[8],=NP2MP(5)[8],=NP2MR(5)[8],=NP2MR/4(5)[8], + =NP2O(5)[8],=NP2OL(5)[8],=NP2OO(5)[8],=NP2OR(5)[8],=NP2PA(5)[8],=NP2R(5)[8],=NP2T(5)[8], + =NP2W(5)[8],=NP3AX(5)[8],=NP3BL(5)[8],=NP3CC(5)[8],=NP3CI(5)[8],=NP3CM(5)[8],=NP3CT(5)[8], + =NP3FR(5)[8],=NP3G(5)[8],=NP3HD(5)[8],=NP3HG(5)[8],=NP3HN(5)[8],=NP3HP(5)[8],=NP3HU(5)[8], + =NP3IL(5)[8],=NP3IU(5)[8],=NP3K(5)[8],=NP3KM(5)[8],=NP3MM(5)[8],=NP3MX(5)[8],=NP3NC(5)[8], + =NP3OW(5)[8],=NP3QT(5)[8],=NP3R(5)[8],=NP3ST(5)[8],=NP3TM(5)[8],=NP3UM(5)[8],=NP3VJ(5)[8], + =NP4AS(5)[8],=NP4AV(5)[8],=NP4CC(5)[8],=NP4CK(5)[8],=NP4CV(5)[8],=NP4DM(5)[8],=NP4EM(5)[8], + =NP4GH(5)[8],=NP4J(5)[8],=NP4JL(5)[8],=NP4JU(5)[8],=NP4KV(5)[8],=NP4M(5)[8],=NP4ND(5)[8], + =NP4PF(5)[8],=NP4RJ(5)[8],=NP4SY(5)[8],=NP4TR(5)[8],=NP4WT(5)[8],=NP4XB(5)[8],=NP4ZC(5)[8], + =WH2AAT(5)[8],=WH2ABJ(5)[8],=WH2G(5)[8],=WH6A(5)[8],=WH6ACF(5)[8],=WH6AJS(5)[8],=WH6AQ(5)[8], + =WH6AVU(5)[8],=WH6AX(5)[8],=WH6BRQ(5)[8],=WH6CEF(5)[8],=WH6CMT(5)[8],=WH6CNC(5)[8],=WH6CTC(5)[8], + =WH6CXA(5)[8],=WH6CXT(5)[8],=WH6DBX(5)[8],=WH6DMJ(5)[8],=WH6DNF(5)[8],=WH6DOL(5)[8],=WH6DUJ(5)[8], + =WH6DXT(5)[8],=WH6DZ(5)[8],=WH6ECQ(5)[8],=WH6EFI(5)[8],=WH6EFX(5)[8],=WH6EFY(5)[8],=WH6EIK(5)[8], + =WH6EIR(5)[8],=WH6EKW(5)[8],=WH6ELG(5)[8],=WH6ELM(5)[8],=WH6ETF(5)[8],=WH6FCP(5)[8],=WH6GHO(5)[8], + =WH6HA(5)[8],=WH6IF(5)[8],=WH6IZ(5)[8],=WH6J(5)[8],=WH6L(5)[8],=WH6LE(5)[8],=WH6LE/4(5)[8], + =WH6LE/M(5)[8],=WH6LE/P(5)[8],=WH6NE(5)[8],=WH6NU(5)[8],=WH6WX(5)[8],=WH6YH(5)[8],=WH6YH/4(5)[8], + =WH6YM(5)[8],=WH6ZF(5)[8],=WH7GD(5)[8],=WH7HX(5)[8],=WH7NI(5)[8],=WH7XK(5)[8],=WH7XU(5)[8], + =WH7YL(5)[8],=WH7YV(5)[8],=WH7ZM(5)[8],=WH9AAF(5)[8],=WL4X(5)[8],=WL7AUL(5)[8],=WL7AX(5)[8], + =WL7CHA(5)[8],=WL7CIB(5)[8],=WL7CKJ(5)[8],=WL7COL(5)[8],=WL7CPA(5)[8],=WL7CQT(5)[8],=WL7CUY(5)[8], + =WL7E/4(5)[8],=WL7GV(5)[8],=WL7IO(5)[8],=WL7JE(5)[8],=WL7SR(5)[8],=WL7UN(5)[8],=WL7YX(5)[8], + =WP2AGD(5)[8],=WP2AGO(5)[8],=WP2AHC(5)[8],=WP2AIG(5)[8],=WP2AIL(5)[8],=WP2BB(5)[8],=WP2C(5)[8], + =WP2J(5)[8],=WP2L(5)[8],=WP2MA(5)[8],=WP2P(5)[8],=WP3AY(5)[8],=WP3BC(5)[8],=WP3DW(5)[8], + =WP3HL(5)[8],=WP3IM(5)[8],=WP3JE(5)[8],=WP3JQ(5)[8],=WP3JU(5)[8],=WP3K(5)[8],=WP3LE(5)[8], + =WP3MB(5)[8],=WP3ME(5)[8],=WP3NIS(5)[8],=WP3O(5)[8],=WP3PW(5)[8],=WP3QE(5)[8],=WP3TQ(5)[8], + =WP3ZA(5)[8],=WP4AIE(5)[8],=WP4AIL(5)[8],=WP4AIZ(5)[8],=WP4ALH(5)[8],=WP4AQK(5)[8],=WP4AVW(5)[8], + =WP4B(5)[8],=WP4BFP(5)[8],=WP4BGM(5)[8],=WP4BIN(5)[8],=WP4BJS(5)[8],=WP4BK(5)[8],=WP4BOC(5)[8], + =WP4BQV(5)[8],=WP4BXS(5)[8],=WP4BZG(5)[8],=WP4CKW(5)[8],=WP4CLS(5)[8],=WP4CMH(5)[8],=WP4DC(5)[8], + =WP4DCB(5)[8],=WP4DFK(5)[8],=WP4DMV(5)[8],=WP4DNE(5)[8],=WP4DPX(5)[8],=WP4ENX(5)[8],=WP4EXH(5)[8], + =WP4FEI(5)[8],=WP4FRK(5)[8],=WP4FS(5)[8],=WP4GAK(5)[8],=WP4GFH(5)[8],=WP4GX(5)[8],=WP4GYA(5)[8], + =WP4HFZ(5)[8],=WP4HNN(5)[8],=WP4HOX(5)[8],=WP4IF(5)[8],=WP4IJ(5)[8],=WP4IK(5)[8],=WP4ILP(5)[8], + =WP4INP(5)[8],=WP4JC(5)[8],=WP4JKO(5)[8],=WP4JNB(5)[8],=WP4JQJ(5)[8],=WP4JSR(5)[8],=WP4JSV(5)[8], + =WP4JT(5)[8],=WP4KCJ(5)[8],=WP4KDH(5)[8],=WP4KFP(5)[8],=WP4KGE(5)[8],=WP4KGI(5)[8],=WP4KI(5)[8], + =WP4KJV(5)[8],=WP4KPK(5)[8],=WP4KSK(5)[8],=WP4KTD(5)[8],=WP4LBK(5)[8],=WP4LDG(5)[8],=WP4LDL(5)[8], + =WP4LDP(5)[8],=WP4LE(5)[8],=WP4LEO(5)[8],=WP4LHA(5)[8],=WP4LTA(5)[8],=WP4MAE(5)[8],=WP4MD(5)[8], + =WP4MO(5)[8],=WP4MQF(5)[8],=WP4MWE(5)[8],=WP4MWK(5)[8],=WP4MWS(5)[8],=WP4MXE(5)[8],=WP4MYG(5)[8], + =WP4MYK(5)[8],=WP4NAI(5)[8],=WP4NAQ(5)[8],=WP4NBF(5)[8],=WP4NBG(5)[8],=WP4NFU(5)[8],=WP4NKU(5)[8], + =WP4NLQ(5)[8],=WP4NVL(5)[8],=WP4NWV(5)[8],=WP4NWW(5)[8],=WP4NYU(5)[8],=WP4O/4(5)[8],=WP4O/M(5)[8], + =WP4OAT(5)[8],=WP4OBD(5)[8],=WP4OBH(5)[8],=WP4ODR(5)[8],=WP4ODT(5)[8],=WP4OEO(5)[8],=WP4OFA(5)[8], + =WP4OFL(5)[8],=WP4OHJ(5)[8],=WP4OJU(5)[8],=WP4OKI(5)[8],=WP4OLM(5)[8],=WP4OMG(5)[8],=WP4OMV(5)[8], + =WP4ONR(5)[8],=WP4OOI(5)[8],=WP4OPD(5)[8],=WP4OPF(5)[8],=WP4OQH(5)[8],=WP4OTP(5)[8],=WP4OXA(5)[8], + =WP4P(5)[8],=WP4PEP(5)[8],=WP4PR(5)[8],=WP4PUV(5)[8],=WP4PWV(5)[8],=WP4PXG(5)[8],=WP4QER(5)[8], + =WP4QGV(5)[8],=WP4QHU(5)[8],=WP4RRR(5)[8],=WP4TD(5)[8],=WP4TX(5)[8],=WP4UC(5)[8],=WP4UM(5)[8], + =WP4UO(5)[8],=WP4VL(5)[8],=WP4VM(5)[8],=WP4YG(5)[8],=WP4ZW(5)[8], AA5(4)[7],AB5(4)[7],AC5(4)[7],AD5(4)[7],AE5(4)[7],AF5(4)[7],AG5(4)[7],AI5(4)[7],AJ5(4)[7], AK5(4)[7],K5(4)[7],KA5(4)[7],KB5(4)[7],KC5(4)[7],KD5(4)[7],KE5(4)[7],KF5(4)[7],KG5(4)[7], KI5(4)[7],KJ5(4)[7],KK5(4)[7],KM5(4)[7],KN5(4)[7],KO5(4)[7],KQ5(4)[7],KR5(4)[7],KS5(4)[7], @@ -1456,13 +1457,13 @@ United States: 05: 08: NA: 37.53: 91.67: 5.0: K: =AH6ML(3)[6],=AH6NL(3)[6],=AH6NP(3)[6],=AH6PD(3)[6],=AH6RI(3)[6],=AH6S(3)[6],=AH6SU(3)[6], =AH6TX(3)[6],=AH6UK(3)[6],=AH6UN(3)[6],=AH6UX(3)[6],=AH7A(3)[6],=AH7D(3)[6],=AH7F(3)[6], =AH8C(3)[6],=AL3A(3)[6],=AL5ET(3)[6],=AL7DQ(3)[6],=AL7EM(3)[6],=AL7EP(3)[6],=AL7EW(3)[6], - =AL7FN(3)[6],=AL7GS(3)[6],=AL7HO/6(3)[6],=AL7L/6(3)[6],=AL7PS(3)[6],=AL7QR(3)[6],=KH0BR(3)[6], - =KH0BU(3)[6],=KH0CA(3)[6],=KH0CG(3)[6],=KH0DH(3)[6],=KH0DJ(3)[6],=KH0HQ(3)[6],=KH0JA(3)[6], - =KH0JJ(3)[6],=KH0LY(3)[6],=KH0UV(3)[6],=KH0V(3)[6],=KH0XD(3)[6],=KH2BD(3)[6],=KH2BI(3)[6], - =KH2BR(3)[6],=KH2BR/6(3)[6],=KH2C(3)[6],=KH2EE(3)[6],=KH2FI(3)[6],=KH2FI/6(3)[6],=KH2H(3)[6], - =KH2IW(3)[6],=KH2LU(3)[6],=KH2LW(3)[6],=KH2LZ(3)[6],=KH2OJ(3)[6],=KH2QE(3)[6],=KH2QL(3)[6], - =KH2QY(3)[6],=KH2TJ(3)[6],=KH2TJ/6(3)[6],=KH2XW(3)[6],=KH2YJ(3)[6],=KH2Z(3)[6],=KH2ZM(3)[6], - =KH4AB(3)[6],=KH6AS(3)[6],=KH6BMD(3)[6],=KH6BRY(3)[6],=KH6COL(3)[6],=KH6DDW(3)[6],=KH6DX/M(3)[6], + =AL7FN(3)[6],=AL7GS(3)[6],=AL7HO/6(3)[6],=AL7L/6(3)[6],=AL7PS(3)[6],=KH0BR(3)[6],=KH0BU(3)[6], + =KH0CA(3)[6],=KH0CG(3)[6],=KH0DH(3)[6],=KH0DJ(3)[6],=KH0HQ(3)[6],=KH0JA(3)[6],=KH0JJ(3)[6], + =KH0LY(3)[6],=KH0UV(3)[6],=KH0V(3)[6],=KH0XD(3)[6],=KH2BD(3)[6],=KH2BI(3)[6],=KH2BR(3)[6], + =KH2BR/6(3)[6],=KH2C(3)[6],=KH2EE(3)[6],=KH2FI(3)[6],=KH2FI/6(3)[6],=KH2H(3)[6],=KH2IW(3)[6], + =KH2LU(3)[6],=KH2LW(3)[6],=KH2LZ(3)[6],=KH2OJ(3)[6],=KH2QE(3)[6],=KH2QL(3)[6],=KH2QY(3)[6], + =KH2TJ(3)[6],=KH2TJ/6(3)[6],=KH2XW(3)[6],=KH2YJ(3)[6],=KH2Z(3)[6],=KH2ZM(3)[6],=KH4AB(3)[6], + =KH6AS(3)[6],=KH6BE(3)[6],=KH6BMD(3)[6],=KH6BRY(3)[6],=KH6COL(3)[6],=KH6DDW(3)[6],=KH6DX/M(3)[6], =KH6DX/M6(3)[6],=KH6DZ(3)[6],=KH6EAM(3)[6],=KH6EHF(3)[6],=KH6FH(3)[6],=KH6FL(3)[6],=KH6FOX(3)[6], =KH6FQR(3)[6],=KH6FQY(3)[6],=KH6GBQ(3)[6],=KH6GC(3)[6],=KH6GJV(3)[6],=KH6GJV/6(3)[6],=KH6GK(3)[6], =KH6GKR(3)[6],=KH6HH(3)[6],=KH6HJE(3)[6],=KH6HOU(3)[6],=KH6IKH(3)[6],=KH6IKL(3)[6],=KH6IP(3)[6], @@ -1491,21 +1492,22 @@ United States: 05: 08: NA: 37.53: 91.67: 5.0: K: =NH7ST(3)[6],=NH7SU(3)[6],=NH7WC(3)[6],=NH7WE(3)[6],=NH7WG(3)[6],=NH7ZE(3)[6],=NL7GE(3)[6], =NL7IB(3)[6],=NL7LC(3)[6],=NL7OP(3)[6],=NL7RO(3)[6],=NL7TP(3)[6],=NL7VL(3)[6],=NL7YB(3)[6], =NP2KY(3)[6],=NP4AB(3)[6],=NP4AI/6(3)[6],=NP4IW(3)[6],=NP4IW/6(3)[6],=NP4MV(3)[6],=NP4XE(3)[6], - =WH0AAZ(3)[6],=WH0M(3)[6],=WH2ABS(3)[6],=WH2ALN(3)[6],=WH2K(3)[6],=WH6AAJ(3)[6],=WH6AFM(3)[6], - =WH6ANA(3)[6],=WH6ASW/M(3)[6],=WH6BYT(3)[6],=WH6CIL(3)[6],=WH6CK(3)[6],=WH6CO(3)[6],=WH6CPO(3)[6], - =WH6CPT(3)[6],=WH6CRE(3)[6],=WH6CSG(3)[6],=WH6CUF(3)[6],=WH6CUU(3)[6],=WH6CUX(3)[6],=WH6CVJ(3)[6], - =WH6CWS(3)[6],=WH6CZF(3)[6],=WH6CZH(3)[6],=WH6DHN(3)[6],=WH6DPA(3)[6],=WH6DSK(3)[6],=WH6DVM(3)[6], - =WH6DVN(3)[6],=WH6DVX(3)[6],=WH6DYA(3)[6],=WH6DZV(3)[6],=WH6DZY(3)[6],=WH6EEZ(3)[6],=WH6EHY(3)[6], - =WH6EKB(3)[6],=WH6ENG(3)[6],=WH6EUH(3)[6],=WH6EZW(3)[6],=WH6FTF(3)[6],=WH6FTO(3)[6],=WH6JO(3)[6], - =WH6LZ(3)[6],=WH6MC(3)[6],=WH6MK(3)[6],=WH6OI(3)[6],=WH6PX(3)[6],=WH6QA(3)[6],=WH6RF(3)[6], - =WH6TD(3)[6],=WH6TK(3)[6],=WH6TT(3)[6],=WH6USA(3)[6],=WH6VM(3)[6],=WH6VN(3)[6],=WH6XI(3)[6], - =WH6XX(3)[6],=WH6YJ(3)[6],=WH7DG(3)[6],=WH7DH(3)[6],=WH7HQ(3)[6],=WH7IV(3)[6],=WH7IZ(3)[6], - =WH7L(3)[6],=WH7LP(3)[6],=WH7OO(3)[6],=WH7PM(3)[6],=WH7PV(3)[6],=WH7QC(3)[6],=WH7RU(3)[6], - =WH7TT(3)[6],=WH7TY(3)[6],=WH7UZ(3)[6],=WH7VM(3)[6],=WH7VU(3)[6],=WH7XR(3)[6],=WL3AF(3)[6], - =WL3DZ(3)[6],=WL4JC(3)[6],=WL7ACO(3)[6],=WL7BA(3)[6],=WL7BGF(3)[6],=WL7CPL(3)[6],=WL7CSD(3)[6], - =WL7DN/6(3)[6],=WL7EA(3)[6],=WL7EKK(3)[6],=WL7RA(3)[6],=WL7SE(3)[6],=WL7TG(3)[6],=WL7WL(3)[6], - =WL7YQ(3)[6],=WL7YQ/6(3)[6],=WP2Q(3)[6],=WP3OV(3)[6],=WP4CUJ(3)[6],=WP4CW(3)[6],=WP4HNF(3)[6], - =WP4IER(3)[6],=WP4KSU(3)[6],=WP4MVE(3)[6],=WP4OBB(3)[6],=WP4OBC(3)[6],=WP4PWS(3)[6],=WP4QQA(3)[6], + =WH0AAZ(3)[6],=WH0M(3)[6],=WH2ABM(3)[6],=WH2ABS(3)[6],=WH2ALN(3)[6],=WH2K(3)[6],=WH6AAJ(3)[6], + =WH6AFM(3)[6],=WH6ANA(3)[6],=WH6ASW/M(3)[6],=WH6BYT(3)[6],=WH6CIL(3)[6],=WH6CK(3)[6],=WH6CO(3)[6], + =WH6CPO(3)[6],=WH6CPT(3)[6],=WH6CRE(3)[6],=WH6CSG(3)[6],=WH6CUF(3)[6],=WH6CUU(3)[6],=WH6CUX(3)[6], + =WH6CVJ(3)[6],=WH6CWS(3)[6],=WH6CZF(3)[6],=WH6CZH(3)[6],=WH6DHN(3)[6],=WH6DPA(3)[6],=WH6DSK(3)[6], + =WH6DVM(3)[6],=WH6DVN(3)[6],=WH6DVX(3)[6],=WH6DYA(3)[6],=WH6DZV(3)[6],=WH6DZY(3)[6],=WH6EEZ(3)[6], + =WH6EHY(3)[6],=WH6EKB(3)[6],=WH6ENG(3)[6],=WH6EUH(3)[6],=WH6EZW(3)[6],=WH6FTF(3)[6],=WH6FTO(3)[6], + =WH6JO(3)[6],=WH6LZ(3)[6],=WH6MC(3)[6],=WH6MK(3)[6],=WH6OI(3)[6],=WH6PX(3)[6],=WH6QA(3)[6], + =WH6RF(3)[6],=WH6TD(3)[6],=WH6TK(3)[6],=WH6TT(3)[6],=WH6USA(3)[6],=WH6VM(3)[6],=WH6VN(3)[6], + =WH6XI(3)[6],=WH6XX(3)[6],=WH6YJ(3)[6],=WH7DG(3)[6],=WH7DH(3)[6],=WH7HQ(3)[6],=WH7IV(3)[6], + =WH7IZ(3)[6],=WH7L(3)[6],=WH7LP(3)[6],=WH7OO(3)[6],=WH7PM(3)[6],=WH7PV(3)[6],=WH7QC(3)[6], + =WH7RU(3)[6],=WH7TT(3)[6],=WH7TY(3)[6],=WH7UZ(3)[6],=WH7VM(3)[6],=WH7VU(3)[6],=WH7XR(3)[6], + =WL3AF(3)[6],=WL3DZ(3)[6],=WL4JC(3)[6],=WL7ACO(3)[6],=WL7BA(3)[6],=WL7BGF(3)[6],=WL7CPL(3)[6], + =WL7CSD(3)[6],=WL7DN/6(3)[6],=WL7EA(3)[6],=WL7EKK(3)[6],=WL7RA(3)[6],=WL7SE(3)[6],=WL7TG(3)[6], + =WL7WL(3)[6],=WL7YQ(3)[6],=WL7YQ/6(3)[6],=WP2Q(3)[6],=WP3OV(3)[6],=WP4CUJ(3)[6],=WP4CW(3)[6], + =WP4HNF(3)[6],=WP4IER(3)[6],=WP4KSU(3)[6],=WP4MVE(3)[6],=WP4OBB(3)[6],=WP4OBC(3)[6],=WP4PWS(3)[6], + =WP4QQA(3)[6], AA7(3)[6],AB7(3)[6],AC7(3)[6],AD7(3)[6],AE7(3)[6],AF7(3)[6],AG7(3)[6],AI7(3)[6],AJ7(3)[6], AK7(3)[6],K7(3)[6],KA7(3)[6],KB7(3)[6],KC7(3)[6],KD7(3)[6],KE7(3)[6],KF7(3)[6],KG7(3)[6], KI7(3)[6],KJ7(3)[6],KK7(3)[6],KM7(3)[6],KN7(3)[6],KO7(3)[6],KQ7(3)[6],KR7(3)[6],KS7(3)[6], @@ -1523,116 +1525,116 @@ United States: 05: 08: NA: 37.53: 91.67: 5.0: K: =AH6VM(3)[6],=AH6Y(3)[6],=AH7MP(3)[6],=AH7Q(3)[6],=AH8AC(3)[6],=AH8DX(3)[6],=AH8K(3)[6], =AH9A(3)[6],=AH9AC(3)[6],=AL0AA(3)[6],=AL0FT(3)[6],=AL0H(3)[6],=AL0X(3)[6],=AL1N(3)[6], =AL1P(3)[6],=AL1R(3)[6],=AL1VE(3)[6],=AL2B(3)[6],=AL2GR(3)[6],=AL2I(3)[6],=AL2N(3)[6],=AL3L(3)[6], - =AL4D(3)[6],=AL4F(3)[6],=AL4K(3)[6],=AL4Q/7(3)[6],=AL4R(3)[6],=AL5B(3)[6],=AL5W(3)[6],=AL6U(3)[6], - =AL7AA(3)[6],=AL7AN(3)[6],=AL7AW(3)[6],=AL7BN(3)[6],=AL7BQ(3)[6],=AL7CC(3)[6],=AL7CG(3)[6], - =AL7CM(3)[6],=AL7CM/7(3)[6],=AL7CR(3)[6],=AL7CS(3)[6],=AL7D(3)[6],=AL7D/7(3)[6],=AL7D/P(3)[6], - =AL7D/R(3)[6],=AL7DD(3)[6],=AL7DU(3)[6],=AL7EI(3)[6],=AL7EJ(3)[6],=AL7FA(3)[6],=AL7FB(3)[6], - =AL7FZ(3)[6],=AL7GN(3)[6],=AL7HD(3)[6],=AL7HI(3)[6],=AL7HJ(3)[6],=AL7HS(3)[6],=AL7HY(3)[6], - =AL7IG(3)[6],=AL7IT(3)[6],=AL7JF(3)[6],=AL7JJ(3)[6],=AL7JS(3)[6],=AL7JU(3)[6],=AL7JV(3)[6], - =AL7JW(3)[6],=AL7JY(3)[6],=AL7KE(3)[6],=AL7KF(3)[6],=AL7KG(3)[6],=AL7KK(3)[6],=AL7KL(3)[6], - =AL7KV(3)[6],=AL7L/7(3)[6],=AL7LI(3)[6],=AL7LL(3)[6],=AL7MH(3)[6],=AL7ND(3)[6],=AL7NK(3)[6], - =AL7NZ(3)[6],=AL7OK(3)[6],=AL7OW(3)[6],=AL7PR(3)[6],=AL7PV(3)[6],=AL7QL(3)[6],=AL7QZ(3)[6], - =AL7R(3)[6],=AL7R/7(3)[6],=AL7RF(3)[6],=AL7RF/7(3)[6],=AL7RM(3)[6],=AL7RR(3)[6],=AL7W(3)[6], - =AL8F(3)[6],=G4KHG/M(3)[6],=KH0AS(3)[6],=KH0H(3)[6],=KH0K(3)[6],=KH0SH(3)[6],=KH0TL(3)[6], - =KH0X(3)[6],=KH2CH(3)[6],=KH2DX(3)[6],=KH2G(3)[6],=KH2GG(3)[6],=KH2JA(3)[6],=KH2QH(3)[6], - =KH2RK(3)[6],=KH2SK(3)[6],=KH2SR(3)[6],=KH2TJ/7(3)[6],=KH2TJ/P(3)[6],=KH2XP(3)[6],=KH2YL(3)[6], - =KH3AD(3)[6],=KH6AB(3)[6],=KH6BXZ(3)[6],=KH6CN(3)[6],=KH6CN/7(3)[6],=KH6COY(3)[6],=KH6CQG(3)[6], - =KH6CQH(3)[6],=KH6CQH/7(3)[6],=KH6CTQ(3)[6],=KH6DB(3)[6],=KH6DE(3)[6],=KH6DOT(3)[6],=KH6DUT(3)[6], - =KH6EE(3)[6],=KH6EE/7(3)[6],=KH6FE(3)[6],=KH6FKA/7(3)[6],=KH6FU(3)[6],=KH6GB(3)[6],=KH6GDN(3)[6], - =KH6GN(3)[6],=KH6HP(3)[6],=KH6HU(3)[6],=KH6HWK(3)[6],=KH6IA(3)[6],=KH6ICQ(3)[6],=KH6IKC(3)[6], - =KH6IMN(3)[6],=KH6IQX(3)[6],=KH6JFL(3)[6],=KH6JIM(3)[6],=KH6JIM/7(3)[6],=KH6JJS(3)[6], - =KH6JKL(3)[6],=KH6JMK(3)[6],=KH6JPJ(3)[6],=KH6JPO(3)[6],=KH6JRW(3)[6],=KH6JT(3)[6],=KH6JUC(3)[6], - =KH6JUQ(3)[6],=KH6KS(3)[6],=KH6KW(3)[6],=KH6LEM(3)[6],=KH6ME(3)[6],=KH6MF(3)[6],=KH6NA(3)[6], - =KH6ND/7(3)[6],=KH6NO/7(3)[6],=KH6NO/M(3)[6],=KH6NU(3)[6],=KH6OV(3)[6],=KH6PG(3)[6],=KH6PR(3)[6], - =KH6QAI(3)[6],=KH6QAI/7(3)[6],=KH6QAJ(3)[6],=KH6RW(3)[6],=KH6RY(3)[6],=KH6SAT(3)[6],=KH6SS(3)[6], - =KH6TX(3)[6],=KH6VI(3)[6],=KH6VM(3)[6],=KH6VM/7(3)[6],=KH6VT(3)[6],=KH6WX(3)[6],=KH6XG(3)[6], - =KH6XJ(3)[6],=KH6XS(3)[6],=KH6XT(3)[6],=KH6YL(3)[6],=KH7AR(3)[6],=KH7AX(3)[6],=KH7CB(3)[6], - =KH7CM(3)[6],=KH7CZ(3)[6],=KH7FJ(3)[6],=KH7FR(3)[6],=KH7HH(3)[6],=KH7HWK(3)[6],=KH7IP(3)[6], - =KH7LE(3)[6],=KH7ME(3)[6],=KH7MR(3)[6],=KH7NI(3)[6],=KH7NP(3)[6],=KH7R(3)[6],=KH7RD(3)[6], - =KH7RT(3)[6],=KH7SB(3)[6],=KH7SQ(3)[6],=KH7SR(3)[6],=KH7TG(3)[6],=KH7VB(3)[6],=KH7VC(3)[6], - =KH7WW/7(3)[6],=KH7WX(3)[6],=KH7X/7(3)[6],=KH7YD(3)[6],=KH7YD/7(3)[6],=KH7ZD(3)[6],=KH8AB(3)[6], - =KH8AH(3)[6],=KH8AZ(3)[6],=KH8BG(3)[6],=KH8D(3)[6],=KH8E(3)[6],=KH8K(3)[6],=KH9AA(3)[6], - =KL0AI(3)[6],=KL0AN(3)[6],=KL0AP(3)[6],=KL0CA(3)[6],=KL0CM(3)[6],=KL0CW(3)[6],=KL0DF(3)[6], - =KL0DG(3)[6],=KL0DR(3)[6],=KL0DT(3)[6],=KL0ER(3)[6],=KL0EU(3)[6],=KL0IR(3)[6],=KL0IS(3)[6], - =KL0IW(3)[6],=KL0IX(3)[6],=KL0LF(3)[6],=KL0MO(3)[6],=KL0NM(3)[6],=KL0NP(3)[6],=KL0NP/P(3)[6], - =KL0PC(3)[6],=KL0PP(3)[6],=KL0QD(3)[6],=KL0RA(3)[6],=KL0SA(3)[6],=KL0SZ(3)[6],=KL0TQ(3)[6], - =KL0TR(3)[6],=KL0TU(3)[6],=KL0VB(3)[6],=KL0VZ(3)[6],=KL0WN(3)[6],=KL0ZF(3)[6],=KL0ZL(3)[6], - =KL1AA(3)[6],=KL1AE(3)[6],=KL1AK(3)[6],=KL1CQ(3)[6],=KL1DO(3)[6],=KL1DW(3)[6],=KL1ED(3)[6], - =KL1HF(3)[6],=KL1HS(3)[6],=KL1JF(3)[6],=KL1K(3)[6],=KL1KU(3)[6],=KL1LE(3)[6],=KL1LZ(3)[6], - =KL1MF(3)[6],=KL1OH(3)[6],=KL1QL(3)[6],=KL1RH(3)[6],=KL1RV(3)[6],=KL1SF/7(3)[6],=KL1SO(3)[6], - =KL1SP(3)[6],=KL1U(3)[6],=KL1UA(3)[6],=KL1UM(3)[6],=KL1XI(3)[6],=KL1YO(3)[6],=KL1YY/7(3)[6], - =KL1ZN(3)[6],=KL1ZP(3)[6],=KL1ZR(3)[6],=KL2A(3)[6],=KL2A/7(3)[6],=KL2BO(3)[6],=KL2BP(3)[6], - =KL2BW(3)[6],=KL2BY(3)[6],=KL2BZ(3)[6],=KL2FD(3)[6],=KL2FL(3)[6],=KL2JY(3)[6],=KL2K(3)[6], - =KL2KY(3)[6],=KL2LA(3)[6],=KL2LN(3)[6],=KL2LT(3)[6],=KL2MA(3)[6],=KL2MB(3)[6],=KL2MP(3)[6], - =KL2NJ(3)[6],=KL2NU(3)[6],=KL2NW(3)[6],=KL2OH(3)[6],=KL2OJ(3)[6],=KL2P(3)[6],=KL2QE(3)[6], - =KL2TR(3)[6],=KL2TZ(3)[6],=KL2VK(3)[6],=KL2WE(3)[6],=KL2XQ(3)[6],=KL2YH(3)[6],=KL2YQ(3)[6], - =KL3DL(3)[6],=KL3ET(3)[6],=KL3EZ(3)[6],=KL3FE(3)[6],=KL3FY(3)[6],=KL3HL(3)[6],=KL3HM(3)[6], - =KL3HN(3)[6],=KL3IC(3)[6],=KL3II(3)[6],=KL3IO(3)[6],=KL3ML(3)[6],=KL3NE(3)[6],=KL3NO(3)[6], - =KL3OQ(3)[6],=KL3PD(3)[6],=KL3RH(3)[6],=KL3TW(3)[6],=KL3TY(3)[6],=KL3VJ(3)[6],=KL3XS(3)[6], - =KL4BQ(3)[6],=KL4BS(3)[6],=KL4FX(3)[6],=KL4KF(3)[6],=KL4LB(3)[6],=KL4NG(3)[6],=KL4QJ(3)[6], - =KL4RKH(3)[6],=KL4RY(3)[6],=KL4YFD(3)[6],=KL7AB(3)[6],=KL7AD(3)[6],=KL7AW(3)[6],=KL7BB(3)[6], - =KL7BD(3)[6],=KL7BDC(3)[6],=KL7BH(3)[6],=KL7BJ(3)[6],=KL7BR(3)[6],=KL7BS(3)[6],=KL7BT(3)[6], - =KL7BUR(3)[6],=KL7BXP(3)[6],=KL7C(3)[6],=KL7CPO(3)[6],=KL7CR(3)[6],=KL7CT(3)[6],=KL7CY(3)[6], - =KL7DC(3)[6],=KL7DF(3)[6],=KL7DI(3)[6],=KL7DK(3)[6],=KL7DLG(3)[6],=KL7DSI(3)[6],=KL7DZQ(3)[6], - =KL7EBN(3)[6],=KL7EF(3)[6],=KL7EFL(3)[6],=KL7EH(3)[6],=KL7EIN(3)[6],=KL7EU(3)[6],=KL7FDQ(3)[6], - =KL7FDQ/7(3)[6],=KL7FIR(3)[6],=KL7FLR(3)[6],=KL7FOZ(3)[6],=KL7FRQ(3)[6],=KL7FS(3)[6],=KL7GA(3)[6], - =KL7GCS(3)[6],=KL7GKY(3)[6],=KL7GRF(3)[6],=KL7GT(3)[6],=KL7GU(3)[6],=KL7HB(3)[6],=KL7HBV(3)[6], - =KL7HFI/7(3)[6],=KL7HFV(3)[6],=KL7HI(3)[6],=KL7HJR(3)[6],=KL7HLF(3)[6],=KL7HM(3)[6],=KL7HMK(3)[6], - =KL7HQL(3)[6],=KL7HSR(3)[6],=KL7IAL(3)[6],=KL7IBT(3)[6],=KL7IDY(3)[6],=KL7IEI(3)[6],=KL7IFK(3)[6], - =KL7IG(3)[6],=KL7IGB(3)[6],=KL7IHK(3)[6],=KL7IIK(3)[6],=KL7IKV(3)[6],=KL7IL(3)[6],=KL7IME(3)[6], - =KL7IOW(3)[6],=KL7IPV(3)[6],=KL7ISE(3)[6],=KL7IUX(3)[6],=KL7IWC/7(3)[6],=KL7IZC(3)[6], - =KL7IZH(3)[6],=KL7JAV(3)[6],=KL7JBB(3)[6],=KL7JDQ(3)[6],=KL7JEA(3)[6],=KL7JES(3)[6],=KL7JIJ(3)[6], - =KL7JJE(3)[6],=KL7JKV(3)[6],=KL7KA(3)[6],=KL7KG/7(3)[6],=KL7LG(3)[6],=KL7LI(3)[6],=KL7LX(3)[6], - =KL7LZ(3)[6],=KL7M(3)[6],=KL7MY(3)[6],=KL7MZ(3)[6],=KL7NA(3)[6],=KL7NP(3)[6],=KL7NP/7(3)[6], - =KL7OA(3)[6],=KL7OF(3)[6],=KL7OL(3)[6],=KL7OR(3)[6],=KL7OR/7(3)[6],=KL7OS(3)[6],=KL7OY(3)[6], - =KL7PC(3)[6],=KL7PO(3)[6],=KL7QA(3)[6],=KL7QK(3)[6],=KL7QK/140(3)[6],=KL7QK/7(3)[6],=KL7QR(3)[6], - =KL7QR/7(3)[6],=KL7R(3)[6],=KL7RC(3)[6],=KL7RK(3)[6],=KL7RM(3)[6],=KL7RN(3)[6],=KL7RS(3)[6], - =KL7S(3)[6],=KL7SK(3)[6],=KL7SP(3)[6],=KL7SV(3)[6],=KL7T(3)[6],=KL7TU(3)[6],=KL7UP(3)[6], - =KL7UT(3)[6],=KL7VK(3)[6],=KL7VL(3)[6],=KL7VN(3)[6],=KL7VQ(3)[6],=KL7WC(3)[6],=KL7WG(3)[6], - =KL7WM(3)[6],=KL7WN(3)[6],=KL7WP(3)[6],=KL7WP/7(3)[6],=KL7WT(3)[6],=KL7XL(3)[6],=KL7YJ(3)[6], - =KL7YQ(3)[6],=KL7YY/M(3)[6],=KL7ZH(3)[6],=KL7ZW(3)[6],=KL8RV(3)[6],=KL8SU(3)[6],=KL9PC(3)[6], - =KP2BX(3)[6],=KP2CB(3)[6],=KP2CT(3)[6],=KP4EFZ(3)[6],=KP4UZ(3)[6],=KP4X(3)[6],=NH0F(3)[6], - =NH0K(3)[6],=NH0O(3)[6],=NH2DM(3)[6],=NH2JE(3)[6],=NH2KR(3)[6],=NH6AD(3)[6],=NH6AJ(3)[6], - =NH6AY(3)[6],=NH6B(3)[6],=NH6BF(3)[6],=NH6CI(3)[6],=NH6CO(3)[6],=NH6DQ(3)[6],=NH6DX(3)[6], - =NH6F(3)[6],=NH6FF(3)[6],=NH6GZ(3)[6],=NH6HE(3)[6],=NH6HZ(3)[6],=NH6KF(3)[6],=NH6LF(3)[6], - =NH6LM(3)[6],=NH6NS(3)[6],=NH6SO(3)[6],=NH6U(3)[6],=NH6WE(3)[6],=NH6XN(3)[6],=NH6XP(3)[6], - =NH6YR(3)[6],=NH6Z(3)[6],=NH6ZA(3)[6],=NH6ZE(3)[6],=NH7DZ(3)[6],=NH7FU(3)[6],=NH7FZ(3)[6], - =NH7L(3)[6],=NH7M(3)[6],=NH7MY(3)[6],=NH7N(3)[6],=NH7ND(3)[6],=NH7NJ/7(3)[6],=NH7OC(3)[6], - =NH7PL(3)[6],=NH7RS(3)[6],=NH7S(3)[6],=NH7SH(3)[6],=NH7TG(3)[6],=NH7VZ(3)[6],=NH7W(3)[6], - =NH7WT(3)[6],=NH7WU(3)[6],=NH7YE(3)[6],=NH7YI(3)[6],=NH8A(3)[6],=NL5L(3)[6],=NL7AH(3)[6], - =NL7AR(3)[6],=NL7AZ(3)[6],=NL7BI(3)[6],=NL7CH(3)[6],=NL7D(3)[6],=NL7D/7(3)[6],=NL7DH(3)[6], - =NL7DY(3)[6],=NL7EO(3)[6],=NL7FQ(3)[6],=NL7FX(3)[6],=NL7FY(3)[6],=NL7GM(3)[6],=NL7GN(3)[6], - =NL7GO(3)[6],=NL7GU(3)[6],=NL7GW(3)[6],=NL7HH(3)[6],=NL7HK(3)[6],=NL7HQ(3)[6],=NL7HU(3)[6], - =NL7IN(3)[6],=NL7JE(3)[6],=NL7JJ(3)[6],=NL7JN(3)[6],=NL7KV(3)[6],=NL7LI(3)[6],=NL7MS(3)[6], - =NL7MT(3)[6],=NL7NL(3)[6],=NL7OF(3)[6],=NL7PN(3)[6],=NL7QI(3)[6],=NL7RL(3)[6],=NL7RN(3)[6], - =NL7TK(3)[6],=NL7UE(3)[6],=NL7US(3)[6],=NL7VS(3)[6],=NL7WD(3)[6],=NL7WJ(3)[6],=NL7XX(3)[6], - =NL7ZM(3)[6],=NL7ZN(3)[6],=NL7ZP(3)[6],=NP2CT(3)[6],=NP2KL(3)[6],=NP2LK(3)[6],=NP2X/7(3)[6], - =NP3PH(3)[6],=NP4AI/M(3)[6],=NP4ES(3)[6],=NP4FP(3)[6],=NP4I(3)[6],=NP4JV(3)[6],=NP4JV/7(3)[6], - =VA2GLB/P(3)[6],=WH0AAM(3)[6],=WH0J(3)[6],=WH2ACV(3)[6],=WH2AJF(3)[6],=WH6ANB(3)[6],=WH6ARU(3)[6], - =WH6ASB(3)[6],=WH6B(3)[6],=WH6BDR(3)[6],=WH6BLM(3)[6],=WH6BPL(3)[6],=WH6BPU(3)[6],=WH6CF(3)[6], - =WH6CMS(3)[6],=WH6CN(3)[6],=WH6CUS(3)[6],=WH6CWD(3)[6],=WH6CXB(3)[6],=WH6CXE(3)[6],=WH6CXN(3)[6], - =WH6CYB(3)[6],=WH6CZ(3)[6],=WH6DAP(3)[6],=WH6DAY(3)[6],=WH6DJO(3)[6],=WH6DKC(3)[6],=WH6DKG(3)[6], - =WH6DKO(3)[6],=WH6DLQ(3)[6],=WH6DMS(3)[6],=WH6DQ(3)[6],=WH6DRP(3)[6],=WH6DST(3)[6],=WH6DTH(3)[6], - =WH6EEC(3)[6],=WH6EEG(3)[6],=WH6EGM(3)[6],=WH6EHW(3)[6],=WH6EJV(3)[6],=WH6EQB(3)[6],=WH6EQE(3)[6], - =WH6EQH(3)[6],=WH6ESS(3)[6],=WH6ETO(3)[6],=WH6EWE(3)[6],=WH6FCT(3)[6],=WH6FEU(3)[6],=WH6FJR(3)[6], - =WH6FL(3)[6],=WH6FOJ(3)[6],=WH6FPR(3)[6],=WH6FPV(3)[6],=WH6FQ(3)[6],=WH6FQK(3)[6],=WH6GCT(3)[6], - =WH6GEV(3)[6],=WH6OL(3)[6],=WH6OY(3)[6],=WH6QV(3)[6],=WH6SD(3)[6],=WH6SR(3)[6],=WH6TI(3)[6], - =WH6U(3)[6],=WH6XV(3)[6],=WH6YT(3)[6],=WH6YX(3)[6],=WH6ZR(3)[6],=WH6ZV(3)[6],=WH7A(3)[6], - =WH7CY(3)[6],=WH7DA(3)[6],=WH7DB(3)[6],=WH7DE(3)[6],=WH7G(3)[6],=WH7GC(3)[6],=WH7GY(3)[6], - =WH7HU(3)[6],=WH7LB(3)[6],=WH7NS(3)[6],=WH7OK(3)[6],=WH7P(3)[6],=WH7RG(3)[6],=WH7TC(3)[6], - =WH7TN(3)[6],=WH7TR(3)[6],=WH7U(3)[6],=WH7UP(3)[6],=WH7WP(3)[6],=WH7WT(3)[6],=WH7XP(3)[6], - =WH8AAG(3)[6],=WL7AAW(3)[6],=WL7AL(3)[6],=WL7AP(3)[6],=WL7AQ(3)[6],=WL7AUY(3)[6],=WL7AWD(3)[6], - =WL7AXI(3)[6],=WL7AZG(3)[6],=WL7AZL(3)[6],=WL7BCR(3)[6],=WL7BHR(3)[6],=WL7BLM(3)[6],=WL7BM(3)[6], - =WL7BNQ(3)[6],=WL7BON(3)[6],=WL7BOO(3)[6],=WL7BSW(3)[6],=WL7BUI(3)[6],=WL7BVN(3)[6],=WL7BVS(3)[6], - =WL7CAZ(3)[6],=WL7CBF(3)[6],=WL7CES(3)[6],=WL7COQ(3)[6],=WL7CPE(3)[6],=WL7CPI(3)[6],=WL7CQX(3)[6], - =WL7CRJ(3)[6],=WL7CSL(3)[6],=WL7CTB(3)[6],=WL7CTC(3)[6],=WL7CTE(3)[6],=WL7DD(3)[6],=WL7FA(3)[6], - =WL7FR(3)[6],=WL7FU(3)[6],=WL7H(3)[6],=WL7HE(3)[6],=WL7HK(3)[6],=WL7HL(3)[6],=WL7IQ(3)[6], - =WL7IS(3)[6],=WL7JG(3)[6],=WL7JM(3)[6],=WL7K(3)[6],=WL7K/7(3)[6],=WL7K/M(3)[6],=WL7LB(3)[6], - =WL7LK(3)[6],=WL7OA(3)[6],=WL7P(3)[6],=WL7PJ(3)[6],=WL7QC(3)[6],=WL7QX(3)[6],=WL7RV/140(3)[6], - =WL7SD(3)[6],=WL7SO(3)[6],=WL7SV(3)[6],=WL7T/P(3)[6],=WL7VK(3)[6],=WL7VV(3)[6],=WL7WB(3)[6], - =WL7WF(3)[6],=WL7WG(3)[6],=WL7WK(3)[6],=WL7WM(3)[6],=WL7WU(3)[6],=WL7XE(3)[6],=WL7XJ(3)[6], - =WL7XN(3)[6],=WL7XW(3)[6],=WL7Z(3)[6],=WL7ZM(3)[6],=WP2ADG(3)[6],=WP3ZO(3)[6],=WP4DYP(3)[6], - =WP4NBP(3)[6], + =AL4D(3)[6],=AL4F(3)[6],=AL4K(3)[6],=AL4Q/7(3)[6],=AL4R(3)[6],=AL5B(3)[6],=AL5K(3)[6],=AL5W(3)[6], + =AL6U(3)[6],=AL7AA(3)[6],=AL7AN(3)[6],=AL7AW(3)[6],=AL7BN(3)[6],=AL7BQ(3)[6],=AL7CC(3)[6], + =AL7CG(3)[6],=AL7CM(3)[6],=AL7CM/7(3)[6],=AL7CR(3)[6],=AL7CS(3)[6],=AL7D(3)[6],=AL7D/7(3)[6], + =AL7D/P(3)[6],=AL7D/R(3)[6],=AL7DD(3)[6],=AL7DU(3)[6],=AL7EI(3)[6],=AL7EJ(3)[6],=AL7FA(3)[6], + =AL7FB(3)[6],=AL7FZ(3)[6],=AL7GN(3)[6],=AL7HD(3)[6],=AL7HI(3)[6],=AL7HJ(3)[6],=AL7HS(3)[6], + =AL7HY(3)[6],=AL7IG(3)[6],=AL7IT(3)[6],=AL7JF(3)[6],=AL7JJ(3)[6],=AL7JS(3)[6],=AL7JU(3)[6], + =AL7JV(3)[6],=AL7JW(3)[6],=AL7JY(3)[6],=AL7KE(3)[6],=AL7KF(3)[6],=AL7KG(3)[6],=AL7KK(3)[6], + =AL7KL(3)[6],=AL7KV(3)[6],=AL7L/7(3)[6],=AL7LI(3)[6],=AL7LL(3)[6],=AL7MH(3)[6],=AL7ND(3)[6], + =AL7NK(3)[6],=AL7NZ(3)[6],=AL7OK(3)[6],=AL7OW(3)[6],=AL7PR(3)[6],=AL7PV(3)[6],=AL7QL(3)[6], + =AL7QZ(3)[6],=AL7R(3)[6],=AL7R/7(3)[6],=AL7RF(3)[6],=AL7RF/7(3)[6],=AL7RM(3)[6],=AL7RR(3)[6], + =AL7W(3)[6],=AL8F(3)[6],=G4KHG/M(3)[6],=KH0AS(3)[6],=KH0H(3)[6],=KH0K(3)[6],=KH0SH(3)[6], + =KH0TL(3)[6],=KH0X(3)[6],=KH2CH(3)[6],=KH2DX(3)[6],=KH2G(3)[6],=KH2GG(3)[6],=KH2JA(3)[6], + =KH2QH(3)[6],=KH2RK(3)[6],=KH2SK(3)[6],=KH2SR(3)[6],=KH2TJ/7(3)[6],=KH2TJ/P(3)[6],=KH2XP(3)[6], + =KH2YL(3)[6],=KH3AD(3)[6],=KH6AB(3)[6],=KH6BXZ(3)[6],=KH6CN(3)[6],=KH6CN/7(3)[6],=KH6COY(3)[6], + =KH6CQG(3)[6],=KH6CQH(3)[6],=KH6CQH/7(3)[6],=KH6CTQ(3)[6],=KH6DB(3)[6],=KH6DE(3)[6],=KH6DOT(3)[6], + =KH6DUT(3)[6],=KH6EE(3)[6],=KH6EE/7(3)[6],=KH6FE(3)[6],=KH6FKA/7(3)[6],=KH6FU(3)[6],=KH6GB(3)[6], + =KH6GDN(3)[6],=KH6GN(3)[6],=KH6HP(3)[6],=KH6HU(3)[6],=KH6HWK(3)[6],=KH6IA(3)[6],=KH6ICQ(3)[6], + =KH6IKC(3)[6],=KH6IMN(3)[6],=KH6IQX(3)[6],=KH6JFL(3)[6],=KH6JIM(3)[6],=KH6JIM/7(3)[6], + =KH6JJS(3)[6],=KH6JKL(3)[6],=KH6JMK(3)[6],=KH6JPJ(3)[6],=KH6JPO(3)[6],=KH6JRW(3)[6],=KH6JT(3)[6], + =KH6JUC(3)[6],=KH6JUQ(3)[6],=KH6KS(3)[6],=KH6KW(3)[6],=KH6LEM(3)[6],=KH6ME(3)[6],=KH6MF(3)[6], + =KH6NA(3)[6],=KH6ND/7(3)[6],=KH6NO/7(3)[6],=KH6NO/M(3)[6],=KH6NU(3)[6],=KH6OV(3)[6],=KH6PG(3)[6], + =KH6PR(3)[6],=KH6QAI(3)[6],=KH6QAI/7(3)[6],=KH6QAJ(3)[6],=KH6RW(3)[6],=KH6RY(3)[6],=KH6SAT(3)[6], + =KH6SS(3)[6],=KH6TX(3)[6],=KH6VI(3)[6],=KH6VM(3)[6],=KH6VM/7(3)[6],=KH6VT(3)[6],=KH6WH(3)[6], + =KH6WX(3)[6],=KH6XG(3)[6],=KH6XJ(3)[6],=KH6XS(3)[6],=KH6XT(3)[6],=KH6YL(3)[6],=KH7AR(3)[6], + =KH7AX(3)[6],=KH7CB(3)[6],=KH7CM(3)[6],=KH7CZ(3)[6],=KH7FJ(3)[6],=KH7FR(3)[6],=KH7HH(3)[6], + =KH7HWK(3)[6],=KH7IP(3)[6],=KH7LE(3)[6],=KH7ME(3)[6],=KH7MR(3)[6],=KH7NI(3)[6],=KH7NP(3)[6], + =KH7R(3)[6],=KH7RD(3)[6],=KH7RT(3)[6],=KH7SB(3)[6],=KH7SQ(3)[6],=KH7SR(3)[6],=KH7TG(3)[6], + =KH7VB(3)[6],=KH7VC(3)[6],=KH7WW/7(3)[6],=KH7WX(3)[6],=KH7X/7(3)[6],=KH7YD(3)[6],=KH7YD/7(3)[6], + =KH7ZD(3)[6],=KH8AB(3)[6],=KH8AH(3)[6],=KH8AZ(3)[6],=KH8BG(3)[6],=KH8D(3)[6],=KH8E(3)[6], + =KH8K(3)[6],=KH9AA(3)[6],=KL0AI(3)[6],=KL0AN(3)[6],=KL0AP(3)[6],=KL0CA(3)[6],=KL0CM(3)[6], + =KL0CW(3)[6],=KL0DF(3)[6],=KL0DG(3)[6],=KL0DR(3)[6],=KL0DT(3)[6],=KL0ER(3)[6],=KL0EU(3)[6], + =KL0IR(3)[6],=KL0IS(3)[6],=KL0IW(3)[6],=KL0IX(3)[6],=KL0LF(3)[6],=KL0MO(3)[6],=KL0NM(3)[6], + =KL0NP(3)[6],=KL0NP/P(3)[6],=KL0PC(3)[6],=KL0PP(3)[6],=KL0QD(3)[6],=KL0RA(3)[6],=KL0SA(3)[6], + =KL0SZ(3)[6],=KL0TQ(3)[6],=KL0TR(3)[6],=KL0TU(3)[6],=KL0VB(3)[6],=KL0VZ(3)[6],=KL0WN(3)[6], + =KL0YD(3)[6],=KL0ZF(3)[6],=KL0ZL(3)[6],=KL1AA(3)[6],=KL1AE(3)[6],=KL1AK(3)[6],=KL1CQ(3)[6], + =KL1DO(3)[6],=KL1DW(3)[6],=KL1ED(3)[6],=KL1HF(3)[6],=KL1HS(3)[6],=KL1JF(3)[6],=KL1K(3)[6], + =KL1KU(3)[6],=KL1LE(3)[6],=KL1LZ(3)[6],=KL1MF(3)[6],=KL1OH(3)[6],=KL1QL(3)[6],=KL1RH(3)[6], + =KL1RV(3)[6],=KL1SF/7(3)[6],=KL1SO(3)[6],=KL1SP(3)[6],=KL1U(3)[6],=KL1UA(3)[6],=KL1UM(3)[6], + =KL1XI(3)[6],=KL1YO(3)[6],=KL1YY/7(3)[6],=KL1ZN(3)[6],=KL1ZP(3)[6],=KL1ZR(3)[6],=KL2A(3)[6], + =KL2A/7(3)[6],=KL2BO(3)[6],=KL2BP(3)[6],=KL2BW(3)[6],=KL2BY(3)[6],=KL2BZ(3)[6],=KL2FD(3)[6], + =KL2FL(3)[6],=KL2JY(3)[6],=KL2K(3)[6],=KL2KY(3)[6],=KL2LA(3)[6],=KL2LN(3)[6],=KL2LT(3)[6], + =KL2MA(3)[6],=KL2MB(3)[6],=KL2MP(3)[6],=KL2NJ(3)[6],=KL2NU(3)[6],=KL2NW(3)[6],=KL2OH(3)[6], + =KL2OJ(3)[6],=KL2P(3)[6],=KL2QE(3)[6],=KL2TR(3)[6],=KL2TZ(3)[6],=KL2VK(3)[6],=KL2WE(3)[6], + =KL2XQ(3)[6],=KL2YH(3)[6],=KL2YQ(3)[6],=KL3DL(3)[6],=KL3ET(3)[6],=KL3EZ(3)[6],=KL3FE(3)[6], + =KL3FY(3)[6],=KL3HL(3)[6],=KL3HM(3)[6],=KL3HN(3)[6],=KL3IC(3)[6],=KL3II(3)[6],=KL3IO(3)[6], + =KL3ML(3)[6],=KL3NE(3)[6],=KL3NO(3)[6],=KL3OQ(3)[6],=KL3PD(3)[6],=KL3RH(3)[6],=KL3TW(3)[6], + =KL3TY(3)[6],=KL3VJ(3)[6],=KL3XS(3)[6],=KL4BQ(3)[6],=KL4BS(3)[6],=KL4FX(3)[6],=KL4KF(3)[6], + =KL4NG(3)[6],=KL4QJ(3)[6],=KL4RKH(3)[6],=KL4RY(3)[6],=KL4YFD(3)[6],=KL5CS(3)[6],=KL7AB(3)[6], + =KL7AD(3)[6],=KL7AW(3)[6],=KL7BB(3)[6],=KL7BD(3)[6],=KL7BDC(3)[6],=KL7BH(3)[6],=KL7BJ(3)[6], + =KL7BR(3)[6],=KL7BS(3)[6],=KL7BT(3)[6],=KL7BUR(3)[6],=KL7BXP(3)[6],=KL7C(3)[6],=KL7CPO(3)[6], + =KL7CR(3)[6],=KL7CT(3)[6],=KL7CY(3)[6],=KL7DC(3)[6],=KL7DF(3)[6],=KL7DI(3)[6],=KL7DK(3)[6], + =KL7DLG(3)[6],=KL7DSI(3)[6],=KL7DZQ(3)[6],=KL7EBN(3)[6],=KL7EF(3)[6],=KL7EFL(3)[6],=KL7EH(3)[6], + =KL7EIN(3)[6],=KL7EU(3)[6],=KL7FDQ(3)[6],=KL7FDQ/7(3)[6],=KL7FIR(3)[6],=KL7FLR(3)[6], + =KL7FOZ(3)[6],=KL7FRQ(3)[6],=KL7FS(3)[6],=KL7GA(3)[6],=KL7GCS(3)[6],=KL7GKY(3)[6],=KL7GRF(3)[6], + =KL7GT(3)[6],=KL7GU(3)[6],=KL7HB(3)[6],=KL7HBV(3)[6],=KL7HFI/7(3)[6],=KL7HFV(3)[6],=KL7HI(3)[6], + =KL7HJR(3)[6],=KL7HLF(3)[6],=KL7HM(3)[6],=KL7HMK(3)[6],=KL7HQL(3)[6],=KL7HSR(3)[6],=KL7IAL(3)[6], + =KL7IBT(3)[6],=KL7IDY(3)[6],=KL7IEI(3)[6],=KL7IFK(3)[6],=KL7IG(3)[6],=KL7IGB(3)[6],=KL7IHK(3)[6], + =KL7IIK(3)[6],=KL7IKV(3)[6],=KL7IL(3)[6],=KL7IME(3)[6],=KL7IOW(3)[6],=KL7IPV(3)[6],=KL7ISE(3)[6], + =KL7IUX(3)[6],=KL7IWC/7(3)[6],=KL7IZC(3)[6],=KL7IZH(3)[6],=KL7JAV(3)[6],=KL7JBB(3)[6], + =KL7JDQ(3)[6],=KL7JEA(3)[6],=KL7JES(3)[6],=KL7JIJ(3)[6],=KL7JJE(3)[6],=KL7JKV(3)[6],=KL7KA(3)[6], + =KL7KG/7(3)[6],=KL7LG(3)[6],=KL7LI(3)[6],=KL7LX(3)[6],=KL7LZ(3)[6],=KL7M(3)[6],=KL7MY(3)[6], + =KL7MZ(3)[6],=KL7NA(3)[6],=KL7NP(3)[6],=KL7NP/7(3)[6],=KL7OA(3)[6],=KL7OF(3)[6],=KL7OL(3)[6], + =KL7OR(3)[6],=KL7OR/7(3)[6],=KL7OS(3)[6],=KL7OY(3)[6],=KL7PC(3)[6],=KL7PO(3)[6],=KL7QA(3)[6], + =KL7QK(3)[6],=KL7QK/140(3)[6],=KL7QK/7(3)[6],=KL7QR(3)[6],=KL7QR/7(3)[6],=KL7R(3)[6],=KL7RC(3)[6], + =KL7RK(3)[6],=KL7RM(3)[6],=KL7RN(3)[6],=KL7RS(3)[6],=KL7S(3)[6],=KL7SK(3)[6],=KL7SP(3)[6], + =KL7SV(3)[6],=KL7T(3)[6],=KL7TU(3)[6],=KL7UP(3)[6],=KL7UT(3)[6],=KL7VK(3)[6],=KL7VL(3)[6], + =KL7VN(3)[6],=KL7VQ(3)[6],=KL7WC(3)[6],=KL7WG(3)[6],=KL7WM(3)[6],=KL7WN(3)[6],=KL7WP(3)[6], + =KL7WP/7(3)[6],=KL7WT(3)[6],=KL7XL(3)[6],=KL7YJ(3)[6],=KL7YQ(3)[6],=KL7YY/M(3)[6],=KL7ZH(3)[6], + =KL7ZW(3)[6],=KL8RV(3)[6],=KL8SU(3)[6],=KL9PC(3)[6],=KP2BX(3)[6],=KP2CB(3)[6],=KP2CT(3)[6], + =KP4EFZ(3)[6],=KP4UZ(3)[6],=KP4X(3)[6],=NH0F(3)[6],=NH0K(3)[6],=NH0O(3)[6],=NH2DM(3)[6], + =NH2JE(3)[6],=NH2KR(3)[6],=NH6AD(3)[6],=NH6AJ(3)[6],=NH6AY(3)[6],=NH6B(3)[6],=NH6BF(3)[6], + =NH6CI(3)[6],=NH6CO(3)[6],=NH6DQ(3)[6],=NH6DX(3)[6],=NH6F(3)[6],=NH6FF(3)[6],=NH6GZ(3)[6], + =NH6HE(3)[6],=NH6HZ(3)[6],=NH6KF(3)[6],=NH6LF(3)[6],=NH6LM(3)[6],=NH6NS(3)[6],=NH6SO(3)[6], + =NH6U(3)[6],=NH6WE(3)[6],=NH6XN(3)[6],=NH6XP(3)[6],=NH6YR(3)[6],=NH6Z(3)[6],=NH6ZA(3)[6], + =NH6ZE(3)[6],=NH7DZ(3)[6],=NH7FU(3)[6],=NH7FZ(3)[6],=NH7L(3)[6],=NH7M(3)[6],=NH7MY(3)[6], + =NH7N(3)[6],=NH7ND(3)[6],=NH7NJ/7(3)[6],=NH7OC(3)[6],=NH7PL(3)[6],=NH7RS(3)[6],=NH7S(3)[6], + =NH7SH(3)[6],=NH7TG(3)[6],=NH7VZ(3)[6],=NH7W(3)[6],=NH7WT(3)[6],=NH7WU(3)[6],=NH7YE(3)[6], + =NH7YI(3)[6],=NH8A(3)[6],=NL5L(3)[6],=NL7AH(3)[6],=NL7AR(3)[6],=NL7AZ(3)[6],=NL7BI(3)[6], + =NL7CH(3)[6],=NL7D(3)[6],=NL7D/7(3)[6],=NL7DH(3)[6],=NL7DY(3)[6],=NL7EO(3)[6],=NL7FQ(3)[6], + =NL7FX(3)[6],=NL7FY(3)[6],=NL7GM(3)[6],=NL7GN(3)[6],=NL7GO(3)[6],=NL7GU(3)[6],=NL7GW(3)[6], + =NL7HH(3)[6],=NL7HK(3)[6],=NL7HQ(3)[6],=NL7HU(3)[6],=NL7JE(3)[6],=NL7JJ(3)[6],=NL7JN(3)[6], + =NL7KV(3)[6],=NL7LI(3)[6],=NL7MS(3)[6],=NL7MT(3)[6],=NL7NL(3)[6],=NL7OF(3)[6],=NL7PN(3)[6], + =NL7QI(3)[6],=NL7RL(3)[6],=NL7RN(3)[6],=NL7TK(3)[6],=NL7UE(3)[6],=NL7US(3)[6],=NL7VS(3)[6], + =NL7WD(3)[6],=NL7WJ(3)[6],=NL7XX(3)[6],=NL7ZM(3)[6],=NL7ZN(3)[6],=NL7ZP(3)[6],=NP2CT(3)[6], + =NP2KL(3)[6],=NP2LK(3)[6],=NP2X/7(3)[6],=NP3PH(3)[6],=NP4AI/M(3)[6],=NP4ES(3)[6],=NP4FP(3)[6], + =NP4I(3)[6],=NP4JV(3)[6],=NP4JV/7(3)[6],=VA2GLB/P(3)[6],=WH0AAM(3)[6],=WH0J(3)[6],=WH2ACV(3)[6], + =WH2AJF(3)[6],=WH6ANB(3)[6],=WH6ARU(3)[6],=WH6ASB(3)[6],=WH6B(3)[6],=WH6BDR(3)[6],=WH6BLM(3)[6], + =WH6BPL(3)[6],=WH6BPU(3)[6],=WH6CF(3)[6],=WH6CMS(3)[6],=WH6CN(3)[6],=WH6CUS(3)[6],=WH6CWD(3)[6], + =WH6CXB(3)[6],=WH6CXE(3)[6],=WH6CXN(3)[6],=WH6CYB(3)[6],=WH6CZ(3)[6],=WH6DAP(3)[6],=WH6DAY(3)[6], + =WH6DJO(3)[6],=WH6DKC(3)[6],=WH6DKG(3)[6],=WH6DKO(3)[6],=WH6DLQ(3)[6],=WH6DMS(3)[6],=WH6DQ(3)[6], + =WH6DRP(3)[6],=WH6DST(3)[6],=WH6DTH(3)[6],=WH6EEC(3)[6],=WH6EEG(3)[6],=WH6EGM(3)[6],=WH6EHW(3)[6], + =WH6EJV(3)[6],=WH6EQB(3)[6],=WH6EQE(3)[6],=WH6EQH(3)[6],=WH6ESS(3)[6],=WH6ETO(3)[6],=WH6EWE(3)[6], + =WH6FCT(3)[6],=WH6FEU(3)[6],=WH6FJR(3)[6],=WH6FL(3)[6],=WH6FOJ(3)[6],=WH6FPR(3)[6],=WH6FPV(3)[6], + =WH6FQ(3)[6],=WH6FQK(3)[6],=WH6GCT(3)[6],=WH6GEV(3)[6],=WH6OL(3)[6],=WH6OY(3)[6],=WH6QV(3)[6], + =WH6SD(3)[6],=WH6SR(3)[6],=WH6TI(3)[6],=WH6U(3)[6],=WH6XV(3)[6],=WH6YT(3)[6],=WH6YX(3)[6], + =WH6ZR(3)[6],=WH6ZV(3)[6],=WH7A(3)[6],=WH7CY(3)[6],=WH7DA(3)[6],=WH7DB(3)[6],=WH7DE(3)[6], + =WH7G(3)[6],=WH7GC(3)[6],=WH7GY(3)[6],=WH7HU(3)[6],=WH7LB(3)[6],=WH7NS(3)[6],=WH7OK(3)[6], + =WH7P(3)[6],=WH7RG(3)[6],=WH7TC(3)[6],=WH7TN(3)[6],=WH7TR(3)[6],=WH7U(3)[6],=WH7UP(3)[6], + =WH7WP(3)[6],=WH7WT(3)[6],=WH7XP(3)[6],=WH8AAG(3)[6],=WL7AAW(3)[6],=WL7AL(3)[6],=WL7AP(3)[6], + =WL7AQ(3)[6],=WL7AUY(3)[6],=WL7AWD(3)[6],=WL7AXI(3)[6],=WL7AZG(3)[6],=WL7AZL(3)[6],=WL7BCR(3)[6], + =WL7BHR(3)[6],=WL7BLM(3)[6],=WL7BM(3)[6],=WL7BNQ(3)[6],=WL7BON(3)[6],=WL7BOO(3)[6],=WL7BSW(3)[6], + =WL7BUI(3)[6],=WL7BVN(3)[6],=WL7BVS(3)[6],=WL7CAZ(3)[6],=WL7CBF(3)[6],=WL7CES(3)[6],=WL7COQ(3)[6], + =WL7CPE(3)[6],=WL7CPI(3)[6],=WL7CQX(3)[6],=WL7CRJ(3)[6],=WL7CSL(3)[6],=WL7CTB(3)[6],=WL7CTC(3)[6], + =WL7CTE(3)[6],=WL7DD(3)[6],=WL7FA(3)[6],=WL7FR(3)[6],=WL7FU(3)[6],=WL7H(3)[6],=WL7HE(3)[6], + =WL7HK(3)[6],=WL7HL(3)[6],=WL7IQ(3)[6],=WL7IS(3)[6],=WL7JG(3)[6],=WL7JM(3)[6],=WL7K(3)[6], + =WL7K/7(3)[6],=WL7K/M(3)[6],=WL7LB(3)[6],=WL7LK(3)[6],=WL7OA(3)[6],=WL7P(3)[6],=WL7PJ(3)[6], + =WL7QC(3)[6],=WL7QX(3)[6],=WL7RV/140(3)[6],=WL7SD(3)[6],=WL7SO(3)[6],=WL7SV(3)[6],=WL7T/P(3)[6], + =WL7VK(3)[6],=WL7VV(3)[6],=WL7WB(3)[6],=WL7WF(3)[6],=WL7WG(3)[6],=WL7WK(3)[6],=WL7WM(3)[6], + =WL7WU(3)[6],=WL7XE(3)[6],=WL7XJ(3)[6],=WL7XN(3)[6],=WL7XW(3)[6],=WL7Z(3)[6],=WL7ZM(3)[6], + =WP2ADG(3)[6],=WP3ZO(3)[6],=WP4DYP(3)[6],=WP4NBP(3)[6], AA8(4)[8],AB8(4)[8],AC8(4)[8],AD8(4)[8],AE8(4)[8],AF8(4)[8],AG8(4)[8],AI8(4)[8],AJ8(4)[8], AK8(4)[8],K8(4)[8],KA8(4)[8],KB8(4)[8],KC8(4)[8],KD8(4)[8],KE8(4)[8],KF8(4)[8],KG8(4)[8], KI8(4)[8],KJ8(4)[8],KK8(4)[8],KM8(4)[8],KN8(4)[8],KO8(4)[8],KQ8(4)[8],KR8(4)[8],KS8(4)[8], @@ -1645,17 +1647,17 @@ United States: 05: 08: NA: 37.53: 91.67: 5.0: K: WZ8(4)[8],=AH2AR(4)[8],=AH2AV(4)[8],=AH2JD(4)[8],=AH6AO(4)[8],=AH6MQ(4)[8],=AH8AH(4)[8], =AL4E(4)[8],=AL7AH(4)[8],=AL7BA/8(4)[8],=AL7GI(4)[8],=AL7GI/8(4)[8],=AL7J/8(4)[8],=AL7JB(4)[8], =AL7OP(4)[8],=KH2AP(4)[8],=KH6BZF/8(4)[8],=KH6DHK(4)[8],=KH6IK(4)[8],=KH6ILT(4)[8],=KH6SM(4)[8], - =KH7DK(4)[8],=KH7SP(4)[8],=KL0DN(4)[8],=KL0NR(4)[8],=KL0PD(4)[8],=KL0PE(4)[8],=KL2NI(4)[8], - =KL2PS(4)[8],=KL2WF(4)[8],=KL2YU(4)[8],=KL3DA(4)[8],=KL3HQ(4)[8],=KL4PQ(4)[8],=KL5A(4)[8], - =KL7DS(4)[8],=KL7FHI(4)[8],=KL7FHK(4)[8],=KL7GF(4)[8],=KL7IKR(4)[8],=KL7IUC(4)[8],=KL7IYK(4)[8], - =KL7IYK/8(4)[8],=KL7OG(4)[8],=KL7RF(4)[8],=KL7RF/8(4)[8],=KL7SW(4)[8],=KL8X(4)[8],=KL9A/8(4)[8], - =KP2RF(4)[8],=KP4AKB(4)[8],=KP4AMZ(4)[8],=KP4AQI(4)[8],=KP4E(4)[8],=KP4HMR(4)[8],=KP4MAS(4)[8], - =KP4VZ(4)[8],=KP4ZD(4)[8],=NH6CN(4)[8],=NH6CN/8(4)[8],=NL7CF(4)[8],=NL7FK(4)[8],=NP2AK(4)[8], - =NP2DW(4)[8],=NP2F(4)[8],=NP3NA(4)[8],=NP4C/8(4)[8],=VE3ACW/M(4)[8],=WH2U(4)[8],=WH6BCB(4)[8], - =WH6CYR(4)[8],=WH6E(4)[8],=WH6E/8(4)[8],=WH6EBA(4)[8],=WH6EJD(4)[8],=WH6EWB(4)[8],=WH6TB(4)[8], - =WL7AGO(4)[8],=WL7AM(4)[8],=WL7BKR(4)[8],=WL7CMV(4)[8],=WL7GG(4)[8],=WL7HC(4)[8],=WL7OS(4)[8], - =WL7OT(4)[8],=WL7U(4)[8],=WP3KU(4)[8],=WP3S(4)[8],=WP4HJF(4)[8],=WP4IJK(4)[8],=WP4JVV(4)[8], - =WP4MWB(4)[8],=WP4NAE(4)[8],=WP4NYQ(4)[8],=WP4PLR(4)[8], + =KH7DK(4)[8],=KH7SP(4)[8],=KL0DN(4)[8],=KL0NR(4)[8],=KL0PD(4)[8],=KL0PE(4)[8],=KL1BM(4)[8], + =KL2NI(4)[8],=KL2PS(4)[8],=KL2WF(4)[8],=KL2YU(4)[8],=KL3DA(4)[8],=KL3HQ(4)[8],=KL4PQ(4)[8], + =KL5A(4)[8],=KL7DS(4)[8],=KL7FHI(4)[8],=KL7FHK(4)[8],=KL7GF(4)[8],=KL7IKR(4)[8],=KL7IUC(4)[8], + =KL7IYK(4)[8],=KL7IYK/8(4)[8],=KL7OG(4)[8],=KL7RF(4)[8],=KL7RF/8(4)[8],=KL7SW(4)[8],=KL8X(4)[8], + =KL9A/8(4)[8],=KP2RF(4)[8],=KP4AKB(4)[8],=KP4AMZ(4)[8],=KP4AQI(4)[8],=KP4E(4)[8],=KP4HMR(4)[8], + =KP4MAS(4)[8],=KP4VZ(4)[8],=KP4ZD(4)[8],=NH6CN(4)[8],=NH6CN/8(4)[8],=NL7CF(4)[8],=NL7FK(4)[8], + =NP2AK(4)[8],=NP2DW(4)[8],=NP2F(4)[8],=NP3NA(4)[8],=NP4C/8(4)[8],=VE3ACW/M(4)[8],=WH2U(4)[8], + =WH6BCB(4)[8],=WH6CYR(4)[8],=WH6E(4)[8],=WH6E/8(4)[8],=WH6EBA(4)[8],=WH6EJD(4)[8],=WH6EWB(4)[8], + =WH6TB(4)[8],=WL7AGO(4)[8],=WL7AM(4)[8],=WL7BKR(4)[8],=WL7CMV(4)[8],=WL7GG(4)[8],=WL7HC(4)[8], + =WL7OS(4)[8],=WL7OT(4)[8],=WL7U(4)[8],=WP3KU(4)[8],=WP3S(4)[8],=WP4HJF(4)[8],=WP4IJK(4)[8], + =WP4JVV(4)[8],=WP4MWB(4)[8],=WP4NAE(4)[8],=WP4NYQ(4)[8],=WP4PLR(4)[8], AA9(4)[8],AB9(4)[8],AC9(4)[8],AD9(4)[8],AE9(4)[8],AF9(4)[8],AG9(4)[8],AI9(4)[8],AJ9(4)[8], AK9(4)[8],K9(4)[8],KA9(4)[8],KB9(4)[8],KC9(4)[8],KD9(4)[8],KE9(4)[8],KF9(4)[8],KG9(4)[8], KI9(4)[8],KJ9(4)[8],KK9(4)[8],KM9(4)[8],KN9(4)[8],KO9(4)[8],KQ9(4)[8],KR9(4)[8],KS9(4)[8], @@ -1678,9 +1680,9 @@ United States: 05: 08: NA: 37.53: 91.67: 5.0: K: =NL7YI(4)[8],=NP2AV(4)[8],=NP2DK(4)[8],=NP2GM(4)[8],=NP2I(4)[8],=NP2L/9(4)[8],=NP2MU(4)[8], =NP3QC(4)[8],=NP4ZI(4)[8],=WH0AI(4)[8],=WH2T(4)[8],=WH6AFV(4)[8],=WH6ERQ(4)[8],=WH6FBA(4)[8], =WH6FIR(4)[8],=WH6SB(4)[8],=WL7AHP(4)[8],=WL7AIT(4)[8],=WL7BEV(4)[8],=WL7BSZ(4)[8],=WL7CTA(4)[8], - =WL7FJ(4)[8],=WL7JAN(4)[8],=WL7NP(4)[8],=WL7UU(4)[8],=WL9N(4)[8],=WP2B(4)[8],=WP4JSP(4)[8], - =WP4LKY(4)[8],=WP4LSQ(4)[8],=WP4MQX(4)[8],=WP4MSD(4)[8],=WP4MTN(4)[8],=WP4MVQ(4)[8],=WP4MXP(4)[8], - =WP4MYL(4)[8],=WP4OCZ(4)[8], + =WL7FJ(4)[8],=WL7JAN(4)[8],=WL7NP(4)[8],=WL7UU(4)[8],=WL9N(4)[8],=WP2B(4)[8],=WP4HSQ(4)[8], + =WP4JSP(4)[8],=WP4LKY(4)[8],=WP4LSQ(4)[8],=WP4MQX(4)[8],=WP4MSD(4)[8],=WP4MTN(4)[8],=WP4MVQ(4)[8], + =WP4MXP(4)[8],=WP4MYL(4)[8],=WP4OCZ(4)[8], =AH2BG(4)[8],=AH2CF(4)[8],=AH6ES(4)[8],=AH6FF(4)[8],=AH6HR(4)[8],=AH6HR/4(4)[8],=AH6KB(4)[8], =AL0F(4)[8],=AL0P(4)[8],=AL2C(4)[8],=AL2F/4(4)[8],=AL4B(4)[8],=AL7CX(4)[8],=AL7EU(4)[8], =AL7JN(4)[8],=AL7KN(4)[8],=AL7LP(4)[8],=AL7MR(4)[8],=AL7QO(4)[8],=KH0UN(4)[8],=KH2AR(4)[8], @@ -1697,7 +1699,7 @@ United States: 05: 08: NA: 37.53: 91.67: 5.0: K: =WH6EMF(4)[8],=WH6EOG(4)[8],=WH6EQW(4)[8],=WH6FEJ(4)[8],=WH6LAK(4)[8],=WH6OR(4)[8],=WH6Q/4(4)[8], =WL4B(4)[8],=WL7BHI(4)[8],=WL7BHJ(4)[8],=WL7C(4)[8],=WL7CQH(4)[8],=WL7CQK(4)[8],=WL7IP(4)[8], =WL7PC(4)[8],=WL7SF(4)[8],=WL7TD(4)[8],=WL7XZ(4)[8],=WP3IK(4)[8],=WP4CNA(4)[8],=WP4XF(4)[8], - =AH3D(4)[7],=AL1VE/R(4)[7],=AL7AU(4)[7],=AL7IC(4)[7],=AL7NI(4)[7],=AL7RT(4)[7],=AL7RT/7(4)[7], + =AH3D(4)[7],=AL7AU(4)[7],=AL7IC(4)[7],=AL7NI(4)[7],=AL7QR(4)[7],=AL7RT(4)[7],=AL7RT/7(4)[7], =KH2BR/7(4)[7],=KH6JVF(4)[7],=KH6OZ(4)[7],=KH7AL(4)[7],=KH7SS(4)[7],=KL0NT(4)[7],=KL0NV(4)[7], =KL0RN(4)[7],=KL0TF(4)[7],=KL1HE(4)[7],=KL1MW(4)[7],=KL1TV(4)[7],=KL2NZ(4)[7],=KL4CZ(4)[7], =KL7AR(4)[7],=KL7HF(4)[7],=KL7HSG(4)[7],=KL7JGS(4)[7],=KL7JGS/M(4)[7],=KL7JM(4)[7],=KL7JUL(4)[7], @@ -1730,56 +1732,57 @@ Midway Island: 31: 61: OC: 28.20: 177.37: 11.0: KH4: Palmyra & Jarvis Islands: 31: 61: OC: 5.87: 162.07: 11.0: KH5: AH5,KH5,NH5,WH5; Hawaii: 31: 61: OC: 21.12: 157.48: 10.0: KH6: - AH6,AH7,KH6,KH7,NH6,NH7,WH6,WH7,=AA7FL,=AA7LE,=AA8JA,=AB0JM,=AB3WS,=AB4CO,=AB6AP,=AB7RT,=AB8VQ, - =AC4PJ,=AC4TJ,=AC9PT,=AE3TT,=AE5AB,=AE5LR,=AG4FH,=AG5LT,=AH0A,=AH0AG,=AH2CC,=AH2CN,=AJ0M,=AJ8HT, - =AK2J,=AK4RA,=AL3U,=AL6D,=AL7RQ,=K0BAD,=K0LAS,=K0LIH,=K0OUS,=K1ENT,=K1ER,=K1HZM,=K1OSP,=K1OWL, - =K1RJ,=K1TOR,=K1VAN,=K2FFT,=K2GT,=K3NW,=K3UNS,=K4AJQ,=K4EVR,=K4JMB,=K4RAC,=K4UAI,=K4UHL,=K4XV, - =K5HQM,=K5PKT,=K5ZAI,=K5ZYO,=K6AMA,=K6APP,=K6BU,=K6CEE,=K6GJS,=K6GUY,=K6HI,=K6HNL,=K6IJ,=K6JAE, - =K6KKW,=K6LN,=K6RSB,=K7ALH,=K7ASH,=K7NRJ,=K7QAS,=K7ZOX,=K8EUT,=K9AGI,=K9FD,=K9UBS,=KA0FOR,=KA0VHP, - =KA1ICJ,=KA1YJ,=KA2IXG,=KA2WXU,=KA3HIZ,=KA3TUA,=KA4INK,=KA4SBE,=KA6QOD,=KA6SVW,=KA7APU,=KA7BSK, - =KA7RKW,=KA8EBL,=KA8KND,=KA9DMP,=KB0DJR,=KB0PXK,=KB0ZKZ,=KB1EUJ,=KB1GC,=KB1KAC,=KB1PCX,=KB1UHL, - =KB2MRY,=KB3DMT,=KB3FDP,=KB3HXI,=KB3IOC,=KB3OXU,=KB3PJS,=KB3SEV,=KB3UWV,=KB3UWW,=KB3VLO,=KB4NGN, - =KB5FCV,=KB5HVJ,=KB5MTI,=KB5NNY,=KB5OWT,=KB5OXR,=KB6CNU,=KB6EGA,=KB6INB,=KB6PKF,=KB6SWL,=KB7AKH, - =KB7AKQ,=KB7DDX,=KB7EA,=KB7G,=KB7JB,=KB7LPW,=KB7MEU,=KB7QKJ,=KB7UQH,=KB7UVR,=KB7WDC,=KB7WUP, - =KB8SKX,=KB9YGQ,=KC0HFI,=KC0WQU,=KC0YIH,=KC1DBY,=KC2CLQ,=KC2GSU,=KC2HL,=KC2MIU,=KC2PGW,=KC2SRW, - =KC2YL,=KC2ZSG,=KC2ZSH,=KC2ZSI,=KC3BW,=KC3GZT,=KC4HHS,=KC4TJB,=KC5GAX,=KC6HOX,=KC6JAE,=KC6MCC, - =KC6QQI,=KC6RYQ,=KC6SHT,=KC6SWR,=KC6YIO,=KC7ASJ,=KC7AXX,=KC7DUT,=KC7EJC,=KC7HNC,=KC7KAT,=KC7KAW, - =KC7KBA,=KC7KHW,=KC7KJT,=KC7LFM,=KC7NZ,=KC7PLG,=KC7USA,=KC7VWU,=KC7YXO,=KC8EFI,=KC8EJ,=KC8JNV, - =KC8KPX,=KC9AUA,=KC9EQS,=KC9KEX,=KC9NJG,=KC9SBG,=KD0JNO,=KD0OXU,=KD0QLQ,=KD0QLR,=KD0RPD,=KD0WVZ, - =KD0ZSP,=KD3FZ,=KD4GVR,=KD4GW,=KD4ML,=KD4NFW,=KD4QWO,=KD5BSK,=KD5HDA,=KD5HX,=KD5TBQ,=KD6APH, - =KD6CVU,=KD6CWF,=KD6EPD,=KD6IPX,=KD6LRA,=KD6NVX,=KD6VTU,=KD7GWI,=KD7GWM,=KD7HTG,=KD7KFT,=KD7SME, - =KD7SMV,=KD7TZ,=KD7UV,=KD7UZG,=KD7WJM,=KD8GVO,=KD8LYB,=KE0JSB,=KE0KIE,=KE0TU,=KE2CX,=KE4DYE, - =KE4RNU,=KE4UXQ,=KE4ZXQ,=KE5CGA,=KE5FJM,=KE5UZN,=KE5VQB,=KE6AHX,=KE6AXN,=KE6AXP,=KE6AYZ,=KE6CQE, - =KE6EDJ,=KE6EVT,=KE6JXO,=KE6MKW,=KE6QQ,=KE6RAW,=KE6TFR,=KE6TIS,=KE6TIX,=KE6TKQ,=KE7DES,=KE7DET, - =KE7FJA,=KE7FSK,=KE7HEW,=KE7IZS,=KE7JTX,=KE7KRQ,=KE7LWN,=KE7MW,=KE7PEQ,=KE7PIZ,=KE7QML,=KE7RCT, - =KE7UAJ,=KE7UV,=KE7UW,=KF4DWA,=KF4FQR,=KF4IBW,=KF4JLZ,=KF4OOB,=KF4SGA,=KF4UJC,=KF4URD,=KF4VHS, - =KF5AHW,=KF5JFX,=KF5MXM,=KF5MXP,=KF6BS,=KF6FDG,=KF6IVV,=KF6LWN,=KF6LYU,=KF6MQT,=KF6OHL,=KF6OSA, - =KF6PJ,=KF6PQE,=KF6QZD,=KF6RLP,=KF6YYH,=KF6YZR,=KF6ZAL,=KF6ZVS,=KF7GNP,=KF7LRS,=KF7OJR,=KF7QMX, - =KF7TUU,=KF7VUK,=KG0XR,=KG4CAN,=KG4FJB,=KG4HZF,=KG4JKJ,=KG4MGL,=KG4SGC,=KG4SGV,=KG4TZD,=KG5CH, - =KG5CNO,=KG5IVP,=KG6CJA,=KG6CJK,=KG6DV,=KG6EZW,=KG6HRX,=KG6IER,=KG6IGY,=KG6JJP,=KG6LFX,=KG6MZJ, - =KG6NNF,=KG6NQI,=KG6OOB,=KG6RJI,=KG6SC,=KG6SDD,=KG6TFI,=KG6WZD,=KG6ZRY,=KG7AYU,=KG7CJI,=KG7EUP, - =KG7JHH,=KG7TSD,=KG7ZJM,=KG9MDR,=KH0AI,=KH0HL,=KH0WJ,=KH2DC,=KH2MD,=KH2TD,=KH2TE,=KH2YI,=KH3AE, - =KH3AE/M,=KH3AF,=KH8Z,=KI4CAU,=KI4HCZ,=KI4NOH,=KI4YAF,=KI4YOG,=KI6CRL,=KI6DVJ,=KI6EFY,=KI6FTE, - =KI6HBZ,=KI6JEC,=KI6LPT,=KI6NOC,=KI6QDQ,=KI6QQJ,=KI6SNP,=KI6VYB,=KI6WOJ,=KI6ZRV,=KI7AUZ,=KI7EZG, - =KI7FJW,=KI7FJX,=KI7FUT,=KI7OS,=KI7QZQ,=KJ4BHO,=KJ4EYV,=KJ4KND,=KJ4WOI,=KJ6CAV,=KJ6CKZ,=KJ6COM, - =KJ6CPN,=KJ6CQT,=KJ6FDF,=KJ6GYD,=KJ6LAW,=KJ6LAX,=KJ6LBI,=KJ6MQL,=KJ6NIA,=KJ6NIB,=KJ6NZH,=KJ6PEH, - =KJ6QQT,=KJ6RGW,=KJ6TJZ,=KJ7UOI,=KK4EEC,=KK4RNF,=KK6BRW,=KK6DIT,=KK6DWS,=KK6EJ,=KK6GM,=KK6GRC, - =KK6OMX,=KK6PGA,=KK6RM,=KK6VJN,=KK6ZQ,=KK6ZZE,=KK7WR,=KL0TK,=KL1TP,=KL3FN,=KL3JC,=KL7PN,=KL7TN/P, - =KL7UB,=KL7XT,=KM4FPS,=KM4IP,=KM6HPE,=KM6IK,=KM6RM,=KM6RWE,=KM6UVP,=KN6BE,=KN6ZU,=KN8AQR,=KO4BNK, - =KO4LCM,=KO6KW,=KO6QT,=KQ6CD,=KQ6M,=KR1LLR,=KU4OY,=KW4JC,=KX6RTG,=KY1I,=N0CAN,=N0KXY,=N0PJV, - =N0VYO,=N0ZSJ,=N1CBF,=N1CFD,=N1CNQ,=N1IDP,=N1SHV,=N1TEE,=N1TLE,=N1VOP,=N1YLH,=N2KJU,=N2KLQ,=N3BQY, - =N3DJT,=N3FUR,=N3GWR,=N3HQW,=N3RWD,=N3VDM,=N3ZFY,=N4BER,=N4ERA,=N4ZIW,=N5IWF,=N5JKJ,=N6BAA,=N6CGA, - =N6DXW,=N6EQZ,=N6GOZ,=N6IKX,=N6KB,=N6NCT,=N6OM,=N6PJQ,=N6QBK,=N6XLB,=N6ZAB,=N7AMY,=N7BLC,=N7BMD, - =N7JRO,=N7KZB,=N7NYY,=N7OBR,=N7ODC,=N7TSV,=N7WBX,=N9GFL,=N9SBL,=NB6R,=ND1A,=NE7SO,=NH2CC,=NH2CD, - =NH2CF,=NH2CQ,=NH2CR,=NH2HR,=NH2HS,=NH2HU,=NH2IB,=NH2IC,=NH2IF,=NH2II,=NH2IJ,=NH2IN,=NH2IO,=NH2JO, - =NH2KF,=NH2KH,=NH2YL,=NH2Z,=NI1J,=NL7UW,=NO0H,=NR0G,=NT0DA,=NT4AA,=NZ2F,=W0OHO,=W0UNX,=W1BMB, - =W1ETT,=W1JJS,=W2UNS,=W3ZRT,=W4AJM,=W4PRO,=W4YQS,=W5CHT,=W5FJG,=W6CAG,=W6CWJ,=W6DSD,=W6KEV,=W6KIT, - =W6KPI,=W6KZL,=W6MQB,=W6MRJ,=W6NBK,=W6QPV,=W6ROM,=W6SHH,=W6UNX,=W7EHP,=W7NVQ,=W7NX,=W7RCR,=W7TEN, - =W7UEA,=W7WKS,=W8AYD,=W8JAY,=W8WH,=WA0FUR,=WA0NHD,=WA0TFB,=WA2AUI,=WA3ZEM,=WA6AW,=WA6CZL,=WA6ECX, - =WA6IIQ,=WA6JDA,=WA6JJQ,=WA6QDQ,=WA6UVF,=WA7ESE,=WA7HEO,=WA7TFE,=WA7WSU,=WA7ZK,=WA8HEB,=WA8JQP, - =WB0RUA,=WB0TZQ,=WB1HAL,=WB2AHM,=WB2SQW,=WB4JTT,=WB4MNF,=WB5ZDH,=WB5ZOV,=WB6CVJ,=WB6PIO,=WB6PJT, - =WB6SAA,=WB6VBM,=WB8NCD,=WB9SMM,=WD0FTF,=WD0LFN,=WD4MLF,=WD8LIB,=WD8OBO,=WH2Y,=WH7K,=WK1K,=WL7CSW, - =WL7CSW/H,=WL7M,=WV0Z,=WV6K,=WX0H,=WY6F; + AH6,AH7,KH6,KH7,NH6,NH7,WH6,WH7,=AA6OC,=AA7FL,=AA7LE,=AA8JA,=AB0JM,=AB3WS,=AB4CO,=AB6AP,=AB7RT, + =AB8VQ,=AC4PJ,=AC4TJ,=AC9PT,=AD6YJ,=AE3TT,=AE5AB,=AE5LR,=AG4FH,=AG5LT,=AH0A,=AH0AG,=AH2CC,=AH2CN, + =AJ0M,=AJ8HT,=AK2J,=AK4RA,=AL3U,=AL6D,=AL7RQ,=K0BAD,=K0LAS,=K0LIH,=K0OUS,=K1ENT,=K1ER,=K1HZM, + =K1OSP,=K1OWL,=K1RJ,=K1TOR,=K1VAN,=K2FFT,=K2GT,=K3NW,=K3UNS,=K4AJQ,=K4EVR,=K4JMB,=K4RAC,=K4UAI, + =K4UHL,=K4XV,=K5HQM,=K5PKT,=K5ZAI,=K5ZYO,=K6AMA,=K6APP,=K6BU,=K6CEE,=K6GJS,=K6GUY,=K6HI,=K6HNL, + =K6IJ,=K6JAE,=K6KKW,=K6LN,=K6RSB,=K7ALH,=K7ASH,=K7NRJ,=K7QAS,=K7ZOX,=K8EUT,=K9AGI,=K9FD,=K9UBS, + =KA0FOR,=KA0VHP,=KA1ICJ,=KA1YJ,=KA2IXG,=KA2WXU,=KA3HIZ,=KA3TUA,=KA4INK,=KA4SBE,=KA6QOD,=KA6SVW, + =KA7APU,=KA7BSK,=KA7RKW,=KA8EBL,=KA8KND,=KA9DMP,=KB0DJR,=KB0PXK,=KB0ZKZ,=KB1EUJ,=KB1GC,=KB1KAC, + =KB1PCX,=KB1UHL,=KB2MRY,=KB3DMT,=KB3FDP,=KB3HXI,=KB3IOC,=KB3OXU,=KB3PJS,=KB3SEV,=KB3UWV,=KB3UWW, + =KB3VLO,=KB4NGN,=KB5FCV,=KB5HVJ,=KB5MTI,=KB5NNY,=KB5OWT,=KB5OXR,=KB6CNU,=KB6EGA,=KB6INB,=KB6PKF, + =KB6SWL,=KB7AKH,=KB7AKQ,=KB7DDX,=KB7EA,=KB7G,=KB7JB,=KB7JHB,=KB7LPW,=KB7MEU,=KB7QKJ,=KB7UQH, + =KB7UVR,=KB7WDC,=KB7WUP,=KB8SKX,=KB9YGQ,=KC0HFI,=KC0WQU,=KC0YIH,=KC1DBY,=KC2CLQ,=KC2GSU,=KC2HL, + =KC2MIU,=KC2PGW,=KC2SRW,=KC2YL,=KC2ZSG,=KC2ZSH,=KC2ZSI,=KC3BW,=KC3GZT,=KC4HHS,=KC4TJB,=KC5GAX, + =KC6HOX,=KC6JAE,=KC6MCC,=KC6QQI,=KC6RYQ,=KC6SHT,=KC6SWR,=KC6YIO,=KC7ASJ,=KC7AXX,=KC7DUT,=KC7EJC, + =KC7HNC,=KC7I,=KC7KAT,=KC7KAW,=KC7KBA,=KC7KHW,=KC7KJT,=KC7LFM,=KC7NZ,=KC7PLG,=KC7USA,=KC7VWU, + =KC7YXO,=KC8EFI,=KC8EJ,=KC8JNV,=KC8KPX,=KC9AUA,=KC9EQS,=KC9KEX,=KC9NJG,=KC9SBG,=KD0JNO,=KD0OXU, + =KD0QLQ,=KD0QLR,=KD0RPD,=KD0WVZ,=KD0ZSP,=KD3FZ,=KD4GVR,=KD4GW,=KD4ML,=KD4NFW,=KD4QWO,=KD5BSK, + =KD5HDA,=KD5HX,=KD5PIU,=KD5TBQ,=KD6APH,=KD6CVU,=KD6CWF,=KD6EPD,=KD6IPX,=KD6LRA,=KD6NVX,=KD6VTU, + =KD7GWI,=KD7GWM,=KD7HTG,=KD7KFT,=KD7SME,=KD7SMV,=KD7TZ,=KD7UV,=KD7UZG,=KD7WJM,=KD8GVO,=KD8LYB, + =KE0JSB,=KE0KIE,=KE0TU,=KE2CX,=KE4DYE,=KE4RNU,=KE4UXQ,=KE4ZXQ,=KE5CGA,=KE5FJM,=KE5UZN,=KE5VQB, + =KE6AHX,=KE6AXN,=KE6AXP,=KE6AYZ,=KE6CQE,=KE6EDJ,=KE6EVT,=KE6JXO,=KE6MKW,=KE6QQ,=KE6RAW,=KE6TFR, + =KE6TIS,=KE6TIX,=KE6TKQ,=KE7DES,=KE7DET,=KE7FJA,=KE7FSK,=KE7HEW,=KE7IZS,=KE7JTX,=KE7KRQ,=KE7LWN, + =KE7MW,=KE7PEQ,=KE7PIZ,=KE7QML,=KE7RCT,=KE7UAJ,=KE7UV,=KE7UW,=KF4DWA,=KF4FQR,=KF4IBW,=KF4JLZ, + =KF4OOB,=KF4SGA,=KF4UJC,=KF4URD,=KF4VHS,=KF5AHW,=KF5JFX,=KF5MXM,=KF5MXP,=KF6BS,=KF6FDG,=KF6IVV, + =KF6LWN,=KF6LYU,=KF6MQT,=KF6OHL,=KF6OSA,=KF6PJ,=KF6PQE,=KF6QZD,=KF6RLP,=KF6YYH,=KF6YZR,=KF6ZAL, + =KF6ZVS,=KF7GNP,=KF7LRS,=KF7OJR,=KF7OUJ,=KF7QMX,=KF7TUU,=KF7VUK,=KG0XR,=KG4CAN,=KG4FJB,=KG4HZF, + =KG4JKJ,=KG4MGL,=KG4SGC,=KG4SGV,=KG4TZD,=KG5CH,=KG5CNO,=KG5IVP,=KG6CJA,=KG6CJK,=KG6DV,=KG6EZW, + =KG6HRX,=KG6IER,=KG6IGY,=KG6JJP,=KG6LFX,=KG6MZJ,=KG6NNF,=KG6NQI,=KG6OOB,=KG6RJI,=KG6SC,=KG6SDD, + =KG6TFI,=KG6WZD,=KG6ZRY,=KG7AYU,=KG7CJI,=KG7EUP,=KG7JHH,=KG7TSD,=KG7ZJM,=KG9MDR,=KH0AI,=KH0HL, + =KH0WJ,=KH2DC,=KH2MD,=KH2TD,=KH2TE,=KH2YI,=KH3AE,=KH3AE/M,=KH3AF,=KH8Z,=KI4CAU,=KI4HCZ,=KI4NOH, + =KI4YAF,=KI4YOG,=KI6CRL,=KI6DVJ,=KI6EFY,=KI6FTE,=KI6HBZ,=KI6JEC,=KI6KWD,=KI6LPT,=KI6NOC,=KI6QDQ, + =KI6QQJ,=KI6SNP,=KI6VYB,=KI6WOJ,=KI6ZRV,=KI7AUZ,=KI7EZG,=KI7FJW,=KI7FJX,=KI7FUT,=KI7OS,=KI7QZQ, + =KJ4BHO,=KJ4EYV,=KJ4KND,=KJ4WOI,=KJ6CAV,=KJ6CKZ,=KJ6COM,=KJ6CPN,=KJ6CQT,=KJ6FDF,=KJ6GYD,=KJ6LAW, + =KJ6LAX,=KJ6LBI,=KJ6MQL,=KJ6NIA,=KJ6NIB,=KJ6NZH,=KJ6PEH,=KJ6QQT,=KJ6RGW,=KJ6TJZ,=KJ7UOI,=KK4EEC, + =KK4RNF,=KK6BRW,=KK6DIT,=KK6DWS,=KK6EJ,=KK6GM,=KK6GRC,=KK6OMX,=KK6PGA,=KK6RM,=KK6VJN,=KK6ZQ, + =KK6ZZE,=KK7WR,=KL0TK,=KL1TP,=KL3FN,=KL3JC,=KL7PN,=KL7TN/P,=KL7UB,=KL7XT,=KM4FPS,=KM4IP,=KM6HPE, + =KM6IK,=KM6RM,=KM6RWE,=KM6UVP,=KN4KYO,=KN6BE,=KN6ZU,=KN8AQR,=KO4BNK,=KO4LCM,=KO6KW,=KO6QT,=KQ6CD, + =KQ6M,=KR1LLR,=KU4OY,=KW4JC,=KW6CR,=KX6RTG,=KY1I,=N0CAN,=N0KXY,=N0PJV,=N0VYO,=N0ZSJ,=N1CBF,=N1CFD, + =N1CNQ,=N1IDP,=N1SHV,=N1TEE,=N1TLE,=N1VOP,=N1YLH,=N2KJU,=N2KLQ,=N2LTL,=N3BQY,=N3DJT,=N3FUR,=N3GWR, + =N3HQW,=N3RWD,=N3VDM,=N3ZFY,=N4BER,=N4ERA,=N4ZIW,=N5IWF,=N5JKJ,=N6BAA,=N6CGA,=N6DXW,=N6EQZ,=N6GOZ, + =N6IKX,=N6KB,=N6NCT,=N6OM,=N6PJQ,=N6QBK,=N6XLB,=N6ZAB,=N7AMY,=N7BLC,=N7BMD,=N7JRO,=N7KZB,=N7NYY, + =N7OBR,=N7ODC,=N7TSV,=N7WBX,=N9GFL,=N9SBL,=NB6R,=ND1A,=NE7SO,=NH2CC,=NH2CD,=NH2CF,=NH2CQ,=NH2CR, + =NH2HR,=NH2HS,=NH2HU,=NH2IB,=NH2IC,=NH2ID,=NH2IF,=NH2II,=NH2IJ,=NH2IN,=NH2IO,=NH2JO,=NH2KF,=NH2KH, + =NH2YL,=NH2Z,=NI1J,=NL7UW,=NO0H,=NR0G,=NT0DA,=NT4AA,=NZ2F,=W0OHO,=W0UNX,=W1BMB,=W1ETT,=W1JJS, + =W2UNS,=W4AJM,=W4PRO,=W4YQS,=W5CHT,=W5FJG,=W6CAG,=W6CWJ,=W6DSD,=W6KEV,=W6KIT,=W6KPI,=W6KZL,=W6MQB, + =W6MRJ,=W6NBK,=W6QPV,=W6ROM,=W6SHH,=W6UNX,=W7EHP,=W7NVQ,=W7NX,=W7RCR,=W7TEN,=W7UEA,=W7WKS,=W8AYD, + =W8JAY,=W8WH,=WA0FUR,=WA0NHD,=WA0TFB,=WA2AUI,=WA3ZEM,=WA6AW,=WA6CZL,=WA6ECX,=WA6IIQ,=WA6JDA, + =WA6JJQ,=WA6QDQ,=WA6UVF,=WA7ESE,=WA7HEO,=WA7TFE,=WA7WSU,=WA7ZK,=WA8HEB,=WA8JQP,=WB0RUA,=WB0TZQ, + =WB1HAL,=WB2AHM,=WB2SQW,=WB4JTT,=WB4MNF,=WB5ZDH,=WB5ZOV,=WB6CVJ,=WB6PIO,=WB6PJT,=WB6SAA,=WB6VBM, + =WB8NCD,=WB9SMM,=WD0FTF,=WD0LFN,=WD4MLF,=WD8LIB,=WD8OBO,=WH2Y,=WH7K,=WK1K,=WL7CSW,=WL7CSW/H,=WL7M, + =WV0Z,=WV6K,=WX0H,=WY6F; Kure Island: 31: 61: OC: 29.00: 178.00: 10.0: KH7K: AH7K,KH7K,NH7K,WH7K; American Samoa: 32: 62: OC: -14.32: 170.78: 11.0: KH8: @@ -1795,13 +1798,13 @@ Alaska: 01: 01: NA: 61.40: 148.87: 8.0: KL: =K0AZZ,=K0BHC,=K0ESQ,=K1BZD,=K1IEE,=K1KAO,=K1LQ,=K1MAT,=K1TMT,=K2ICW,=K2NPS,=K3JMI,=K4DRC,=K4ETC, =K4HOE,=K4PSG,=K4RND,=K4WGX,=K4WPK,=K5DOW,=K5HL,=K5RD,=K5RSO,=K5RZW,=K5TDN,=K5VOR,=K6ANE,=K6GKW, =K7BUF,=K7CAP,=K7EJM,=K7GRW,=K7LOP,=K7MVX,=K7OCL,=K7RDR,=K7UNX,=K7VRK,=K8IEL,=K8OUA,=K9DUG, - =KA0SIM,=KA0YPV,=KA1NCN,=KA2TJZ,=KA6DBB,=KA6PJV,=KA6UGT,=KA7ETQ,=KA7HHF,=KA7HOX,=KA7JOR,=KA7PUB, - =KA7TMU,=KA7TOM,=KA7UKN,=KA7VCR,=KA7YEY,=KA7ZSX,=KA9GYQ,=KB0APK,=KB0LOW,=KB0TSU,=KB0UGE,=KB0UVK, - =KB1CRT,=KB1FCX,=KB1IEV,=KB1KLH,=KB1PHP,=KB1QCD,=KB1QCE,=KB1SYV,=KB1WQL,=KB2FWF,=KB2JWV,=KB2ZME, - =KB3CYB,=KB3JFK,=KB3NCR,=KB3VQE,=KB4DX,=KB5DNT,=KB5HEV,=KB5NOW,=KB5UWU,=KB5YLG,=KB6DKJ,=KB7AMA, - =KB7BNG,=KB7BUF,=KB7DEL,=KB7FXJ,=KB7IBI,=KB7JA,=KB7LJZ,=KB7LON,=KB7PHT,=KB7QLB,=KB7RWK,=KB7RXZ, - =KB7SIQ,=KB7UBH,=KB7VFZ,=KB7YEC,=KB7ZVZ,=KB8LJT,=KB8QKR,=KB8SBG,=KB8TEW,=KB8VYJ,=KB9MWG,=KB9RWE, - =KB9RWJ,=KB9THD,=KB9YGR,=KC0ATI,=KC0CWG,=KC0CYR,=KC0EF,=KC0EFL,=KC0GDH,=KC0GHH,=KC0GLN,=KC0JVX, + =KA0SIM,=KA0YPV,=KA1NCN,=KA2TJZ,=KA6DBB,=KA6PJV,=KA6UGT,=KA7HHF,=KA7HOX,=KA7JOR,=KA7PUB,=KA7TMU, + =KA7TOM,=KA7UKN,=KA7VCR,=KA7YEY,=KA7ZSX,=KA9GYQ,=KB0APK,=KB0LOW,=KB0TSU,=KB0UGE,=KB0UVK,=KB1CRT, + =KB1FCX,=KB1IEV,=KB1KLH,=KB1PHP,=KB1QCD,=KB1QCE,=KB1SYV,=KB1WQL,=KB2FWF,=KB2JWV,=KB2ZME,=KB3CYB, + =KB3JFK,=KB3NCR,=KB3VQE,=KB4DX,=KB5DNT,=KB5HEV,=KB5NOW,=KB5UWU,=KB5YLG,=KB6DKJ,=KB7AMA,=KB7BNG, + =KB7BUF,=KB7DEL,=KB7FXJ,=KB7IBI,=KB7JA,=KB7LJZ,=KB7LON,=KB7PHT,=KB7QLB,=KB7RWK,=KB7RXZ,=KB7SIQ, + =KB7UBH,=KB7VFZ,=KB7YEC,=KB7ZVZ,=KB8LJT,=KB8QKR,=KB8SBG,=KB8TEW,=KB8VYJ,=KB9MWG,=KB9RWE,=KB9RWJ, + =KB9SZM,=KB9THD,=KB9YGR,=KC0ATI,=KC0CWG,=KC0CYR,=KC0EF,=KC0EFL,=KC0GDH,=KC0GHH,=KC0GLN,=KC0JVX, =KC0LLL,=KC0NSV,=KC0OKQ,=KC0PSZ,=KC0TK,=KC0TZL,=KC0UYK,=KC0VDN,=KC0WSG,=KC0YSW,=KC1DL,=KC1KPL, =KC1LVR,=KC2BYX,=KC2HRV,=KC2KMU,=KC2OJP,=KC2PCV,=KC2PIO,=KC3BWW,=KC3DBK,=KC3NUH,=KC3QVN,=KC4MXQ, =KC4MXR,=KC4OPI,=KC5BNN,=KC5CHO,=KC5DJA,=KC5IBS,=KC5KIG,=KC5LKF,=KC5LKG,=KC5NHL,=KC5QPJ,=KC5THY, @@ -1816,61 +1819,62 @@ Alaska: 01: 01: NA: 61.40: 148.87: 8.0: KL: =KD8GMS,=KD8JOU,=KD8KQL,=KD8LNA,=KD8WMX,=KD9QKS,=KD9TK,=KE0DYM,=KE0KKI,=KE0PRX,=KE4DGR,=KE4LJD, =KE4MQD,=KE4YEI,=KE4YLG,=KE5CVD,=KE5CVT,=KE5DQV,=KE5FOC,=KE5GEB,=KE5HHR,=KE5JHS,=KE5JTB,=KE5NLG, =KE5QDJ,=KE5QDK,=KE5WGZ,=KE5ZRK,=KE5ZUM,=KE6DLM,=KE6DUJ,=KE6DXH,=KE6IPM,=KE6SYD,=KE6TCE,=KE6VUB, - =KE7DFO,=KE7ELL,=KE7EOP,=KE7EPZ,=KE7FNC,=KE7FXM,=KE7GOE,=KE7HMJ,=KE7KYU,=KE7PXV,=KE7TRX,=KE7ZXH, - =KE8RO,=KF3L,=KF4JET,=KF4PLR,=KF4TBD,=KF4YFD,=KF5CVM,=KF5ETW,=KF5FJQ,=KF5HFB,=KF5HJC,=KF5NDT, - =KF5UBP,=KF5YYK,=KF6AWG,=KF6AXS,=KF6BMF,=KF6BOV,=KF6EJR,=KF6GNM,=KF6IAO,=KF6ILC,=KF6IOT,=KF6LGK, - =KF6MFK,=KF6QOJ,=KF6RMG,=KF6RPC,=KF6SHS,=KF6TGR,=KF6UWT,=KF7ARC,=KF7CXJ,=KF7FLL,=KF7FLM,=KF7GCF, - =KF7GKY,=KF7ING,=KF7ITN,=KF7KTH,=KF7LEX,=KF7LUA,=KF7MVM,=KF7PCJ,=KF7PFT,=KF7PSS,=KF7PUQ,=KF7UFY, - =KF7VBO,=KF7WVE,=KF8ZB,=KG2IA,=KG4BBX,=KG4NBL/P,=KG4TJS,=KG4WNZ,=KG5EQN,=KG5GDF,=KG5GTD,=KG5JQC, - =KG5MIB,=KG5MIO,=KG6ALN,=KG6DTI,=KG6MBC,=KG6RJE,=KG6TAL,=KG7CUR,=KG7DVI,=KG7GJL,=KG7JVJ,=KG7OQC, - =KG7OUF,=KG7OYE,=KG7SEQ,=KG7SRS,=KG7TGE,=KG7ZEV,=KH0NF,=KH0NG,=KH0RF,=KH2YN,=KH7BW,=KI4COG, - =KI4ERC,=KI4FJK,=KI4GAG,=KI4GCF,=KI4GDI,=KI4NGY,=KI4NVI,=KI4SET,=KI4SOM,=KI6BGR,=KI6DES,=KI6HGW, - =KI6YXZ,=KI7BKQ,=KI7COR,=KI7PZ,=KI8JT,=KJ4HEW,=KJ4IAQ,=KJ4NPK,=KJ4PSV,=KJ4WIQ,=KJ4YOY,=KJ4ZWI, - =KJ6DCH,=KJ6KRG,=KJ6RFQ,=KJ6ZSX,=KJ7IR,=KJ7MY,=KK4AMV,=KK4BAN,=KK4CAS,=KK4CAU,=KK4CHH,=KK4CLS, - =KK4LRE,=KK4QXE,=KK4RYG,=KK4WWH,=KK4WWI,=KK6IUY,=KK6LL,=KK6PGV,=KK6PLA,=KK6SNS,=KK7I,=KK7IV, - =KK7STL,=KL7D/M,=KL7NC/IMD,=KM4AGL,=KM4KWS,=KM4KX,=KM4NIC,=KM4OE,=KM4PJH,=KM4TJI,=KM6NOL,=KM6YOD, - =KN4ENR,=KN4HGD,=KN4LJD,=KN4LVS,=KN4MGX,=KN4RXC,=KN8IVE,=KO4DHN,=KR4WV,=KV3X,=KW1W,=KW4XD,=KY7J, - =KZ6HJC,=N0GDT,=N0GDU,=N0GLI,=N0HJT,=N0HYI,=N0HZF,=N0JEN,=N0JOB,=N0LHN,=N0SN,=N0SUB,=N0WXJ,=N0XKY, - =N0XS,=N0ZKV,=N1HEN,=N1HUT,=N1KDQ,=N1KTI,=N1NDA,=N1NJS,=N1QFE,=N1ROR,=N1TX,=N2CXH,=N2SHO,=N2TJY, - =N2YZW,=N3QEH,=N4AVX,=N4CM,=N4DBX,=N4HCJ,=N4HZU,=N4NAV,=N5AAR,=N5CSO,=N5UKX,=N5WPR,=N6BSC,=N6CVV, - =N6CZU,=N6IGV,=N6JM,=N6QEK,=N6ZZX,=N7BUO,=N7DBN,=N7DKL,=N7DUD,=N7ELD,=N7FCT,=N7GLP,=N7HER,=N7HQK, - =N7IA,=N7JUX,=N7MGT,=N7MTG,=N7QAN,=N7QOV,=N7TBU,=N7UTV,=N7UWT,=N7XEA,=N7XNM,=N7YKY,=N7YQS,=N8DDY, - =N8EX,=N8JKB,=N8KCJ,=N8KYW,=N8SUG,=N9AIG,=N9YD,=NA7WM,=NC2US,=NC4OI,=NE7EK,=NH2GZ,=NH2LS,=NH7UO, - =NM0H,=NN5H,=NP4FU,=NU9Q,=NW7F,=W0EZM,=W0FJN,=W0HPD,=W0OPT,=W0RWS,=W0UZJ,=W0ZEE,=W1JM,=W1LYD, - =W1RSC,=W1ZKA,=W2DLS,=W2KRZ,=W2LUV,=W3ICG,=W3JPN,=W3MKG,=W4AUL,=W4BMR,=W4RSB,=W5AIT,=W5JKT,=W5SPY, - =W6DDP,=W6GTE,=W6ROW,=W6SMA,=W7DDG,=W7EGG,=W7EIK,=W7JMR,=W7PWA,=W7RAZ,=W7ROS,=W7WEZ,=W7ZWT,=W8MDD, - =W8PVZ,=W8TCX,=W9ITU,=W9JMC,=W9WLN,=WA0JS,=WA1FVJ,=WA1OUS,=WA2BGL,=WA2BIW,=WA4RRE,=WA6GFS,=WA7B, - =WA7MDS,=WA7PXH,=WA7USX,=WA7YXF,=WB0CMZ,=WB1GZL,=WB1ILS,=WB6COP,=WB7ULO,=WB8BRU,=WB9JZL,=WD6CET, - =WE3B,=WH6CYY,=WH6DPL,=WH6GBB,=WH6GCO,=WH7AK,=WI5GUY,=WJ6AA,=WJ8M,=WT5T,=WW4AL,=WX1NCC; + =KE7BAQ,=KE7DFO,=KE7ELL,=KE7EOP,=KE7EPZ,=KE7FNC,=KE7FXM,=KE7GOE,=KE7HMJ,=KE7KYU,=KE7PXV,=KE7TRX, + =KE7ZXH,=KE8RO,=KF3L,=KF4JET,=KF4PLR,=KF4TBD,=KF4YFD,=KF5CVM,=KF5ETW,=KF5FJQ,=KF5HFB,=KF5HJC, + =KF5NDT,=KF5UBP,=KF5YYK,=KF6AWG,=KF6AXS,=KF6BMF,=KF6BOV,=KF6EJR,=KF6GNM,=KF6IAO,=KF6ILC,=KF6IOT, + =KF6LGK,=KF6MFK,=KF6QOJ,=KF6RMG,=KF6RPC,=KF6SHS,=KF6TGR,=KF6UWT,=KF7ARC,=KF7CXJ,=KF7FLL,=KF7FLM, + =KF7GCF,=KF7GKY,=KF7ING,=KF7ITN,=KF7KTH,=KF7LEX,=KF7LUA,=KF7MVM,=KF7PCJ,=KF7PFT,=KF7PSS,=KF7PUQ, + =KF7UFY,=KF7VBO,=KF7WVE,=KF8ZB,=KG2IA,=KG4BBX,=KG4NBL/P,=KG4TJS,=KG4WNZ,=KG5EQN,=KG5GDF,=KG5GTD, + =KG5JQC,=KG5MIB,=KG5MIO,=KG6ALN,=KG6DTI,=KG6MBC,=KG6RJE,=KG6TAL,=KG7CUR,=KG7DVI,=KG7GJL,=KG7JVJ, + =KG7OQC,=KG7OUF,=KG7OYE,=KG7SEQ,=KG7SRS,=KG7TGE,=KG7ZEV,=KH0NF,=KH0NG,=KH0RF,=KH2YN,=KH7BW, + =KI4COG,=KI4ERC,=KI4FJK,=KI4GAG,=KI4GCF,=KI4GDI,=KI4NGY,=KI4NVI,=KI4SET,=KI4SOM,=KI5KBN,=KI6BGR, + =KI6DES,=KI6HGW,=KI6YXZ,=KI7BKQ,=KI7COR,=KI7PZ,=KI8JT,=KJ4HEW,=KJ4IAQ,=KJ4NPK,=KJ4PSV,=KJ4WIQ, + =KJ4YOY,=KJ4ZWI,=KJ6DCH,=KJ6KRG,=KJ6RFQ,=KJ6ZSX,=KJ7IR,=KJ7MY,=KK4AMV,=KK4BAN,=KK4CAS,=KK4CAU, + =KK4CHH,=KK4CLS,=KK4LRE,=KK4QXE,=KK4RYG,=KK4WWH,=KK4WWI,=KK6IUY,=KK6LL,=KK6PGV,=KK6PLA,=KK6SNS, + =KK7I,=KK7IV,=KK7STL,=KL7D/M,=KL7NC/IMD,=KM4AGL,=KM4KWS,=KM4KX,=KM4NIC,=KM4OE,=KM4PJH,=KM4TJI, + =KM6NOL,=KM6YOD,=KN4ENR,=KN4HGD,=KN4LJD,=KN4LVS,=KN4MGX,=KN4MTF,=KN4RXC,=KN8IVE,=KO4DHN,=KR4WV, + =KV3X,=KW1W,=KW4XD,=KY7J,=KZ6HJC,=N0GDT,=N0GDU,=N0GLI,=N0HJT,=N0HYI,=N0HZF,=N0JEN,=N0JOB,=N0LHN, + =N0SN,=N0SUB,=N0WXJ,=N0XKY,=N0XS,=N0ZKV,=N1HEN,=N1HUT,=N1KDQ,=N1KTI,=N1NDA,=N1NJS,=N1QFE,=N1ROR, + =N1TX,=N2CXH,=N2SHO,=N2TJY,=N2YZW,=N3QEH,=N4AVX,=N4CM,=N4DBX,=N4HCJ,=N4HZU,=N4NAV,=N5AAR,=N5CSO, + =N5UKX,=N5WPR,=N6BSC,=N6CVV,=N6CZU,=N6IGV,=N6JM,=N6QEK,=N6ZZX,=N7BUO,=N7DBN,=N7DKL,=N7DUD,=N7ELD, + =N7FCT,=N7GLP,=N7HER,=N7HQK,=N7IA,=N7JUX,=N7MGT,=N7MTG,=N7QAN,=N7QOV,=N7TBU,=N7UTV,=N7UWT,=N7XEA, + =N7XNM,=N7YKY,=N7YQS,=N8DDY,=N8EX,=N8JKB,=N8KCJ,=N8KYW,=N8SUG,=N9AIG,=N9YD,=NA7WM,=NC2US,=NC4OI, + =NE7EK,=NH2GZ,=NH2LS,=NH7UO,=NM0H,=NN5H,=NP4FU,=NU9Q,=NW7F,=W0EZM,=W0FJN,=W0HPD,=W0OPT,=W0RWS, + =W0UZJ,=W0ZEE,=W1JM,=W1LYD,=W1RSC,=W1ZKA,=W2DLS,=W2KRZ,=W2LUV,=W3ICG,=W3JPN,=W3MKG,=W4AUL,=W4BMR, + =W4RSB,=W5AIT,=W5JKT,=W5SPY,=W6DDP,=W6GTE,=W6ROW,=W6SMA,=W7CXW,=W7DDG,=W7EGG,=W7EIK,=W7JMR,=W7PWA, + =W7RAZ,=W7ROS,=W7WEZ,=W7ZWT,=W8MDD,=W8PVZ,=W8TCX,=W9ITU,=W9JMC,=W9WLN,=WA0JS,=WA1FVJ,=WA1OUS, + =WA2BGL,=WA2BIW,=WA4RRE,=WA6GFS,=WA7B,=WA7MDS,=WA7PXH,=WA7USX,=WA7YXF,=WB0CMZ,=WB1BR,=WB1GZL, + =WB1ILS,=WB6COP,=WB7ULO,=WB8BRU,=WB9JZL,=WD6CET,=WE3B,=WH6CYY,=WH6DPL,=WH6GBB,=WH6GCO,=WH7AK, + =WI5GUY,=WJ6AA,=WJ8M,=WT5T,=WW4AL,=WX1NCC; Navassa Island: 08: 11: NA: 18.40: 75.00: 5.0: KP1: KP1,NP1,WP1; US Virgin Islands: 08: 11: NA: 17.73: 64.80: 4.0: KP2: - KP2,NP2,WP2,=AC7FX,=AJ2O,=K5KFL,=K5KUB,=K5TP,=K8RF,=K9VV,=KA7KDU,=KB1MDZ,=KB1ZTY,=KB3ZUD,=KB9ALR, - =KC9MCN,=KD4SGB,=KD5QJN,=KE3QL,=KF2HC,=KF4CGR,=KF4MSI,=KG4CZD,=KG4SZC,=KG5KHO,=KG6KVR,=KH2XQ, - =KH2XR,=KI4FOE,=KI4FZD,=KI6BLD,=KJ6IR,=KL7NZ,=KO4ALI,=KR7O/R,=KV4/W2KW,=KV4AD,=KV4BA,=KV4BT, - =KV4BW,=KV4CF,=KV4CQ/P,=KV4EY,=KV4FZ,=KV4HR,=KV4IH,=KV4JC,=KV4KW,=N1TKK,=N1VKI,=N4QXL,=W0AIH/KV4, - =W0YNY,=W2AZK,=W2KW/KV4,=W3K/KD2CLB,=W4LIS,=WA4HLB,=WB2KQW,=WB4WFU,=WD8AHQ; + KP2,NP2,WP2,=AC7FX,=AJ2O,=K2AHU,=K5KFL,=K5KUB,=K5TP,=K8RF,=K9VV,=KA7KDU,=KB1MDZ,=KB1ZTY,=KB3ZUD, + =KB9ALR,=KC9MCN,=KD4SGB,=KD5QJN,=KE3QL,=KF2HC,=KF4CGR,=KF4MSI,=KG4CZD,=KG4SZC,=KG5KHO,=KG6KVR, + =KH2XQ,=KH2XR,=KI4FOE,=KI4FZD,=KI6BLD,=KJ6IR,=KL7NZ,=KO4ALI,=KR7O/R,=KV4/W2KW,=KV4AD,=KV4BA, + =KV4BT,=KV4BW,=KV4CF,=KV4CQ/P,=KV4EY,=KV4FZ,=KV4HR,=KV4IH,=KV4JC,=KV4KW,=N1TKK,=N1VKI,=N4QXL, + =W0AIH/KV4,=W0YNY,=W2AZK,=W2KW/KV4,=W3K/KD2CLB,=W4LIS,=WA4HLB,=WB2KQW,=WB4WFU,=WD8AHQ; Puerto Rico: 08: 11: NA: 18.18: 66.55: 4.0: KP4: - KP3,KP4,NP3,NP4,WP3,WP4,=AA2ZN,=AB2DR,=AF4OU,=AF5IZ,=AG4CD,=AI4EZ,=K1NDN,=K4C/LH,=K4LCR,=K4PFH, - =K5YJR,=K6BOT,=K9JOS,=KA2ABJ,=KA2GNG,=KA2MBR,=KA2UCX,=KA2YGB,=KA3ZGQ,=KA4ROB,=KA7URH,=KA9UTY, - =KB0AQB,=KB0JRR,=KB0TEP,=KB1CKX,=KB1GIW,=KB1IJU,=KB1JMX,=KB1KDP,=KB1RUQ,=KB1TUA,=KB1UEK,=KB1UNX, - =KB1UZV,=KB1ZKF,=KB2ALR,=KB2BVX,=KB2CIE,=KB2KWB,=KB2MMX,=KB2NMT,=KB2NYN,=KB2OIF,=KB2OMN,=KB2OPM, - =KB2QQK,=KB2RYP,=KB2TID,=KB2VHY,=KB2WKT,=KB2YKJ,=KB3BPK,=KB3BTN,=KB3LUV,=KB3SBO,=KB3TTV,=KB8ZVP, - =KB9OWX,=KB9RZD,=KB9YVE,=KB9YVF,=KC1CRV,=KC1CUF,=KC1DRV,=KC1IHB,=KC1IHO,=KC1JLY,=KC1KZI,=KC2BZZ, - =KC2CJL,=KC2CTM,=KC2DUO,=KC2EMM,=KC2ERS,=KC2ERU,=KC2EWB,=KC2GRZ,=KC2HAS,=KC2JNE,=KC2LET,=KC2TE, - =KC2UXP,=KC2VCR,=KC3GEO,=KC3JYF,=KC4ADN,=KC5DKT,=KC5FWS,=KC8BFN,=KC8IRI,=KD2BK,=KD2KPC,=KD2VQ, - =KD4TVS,=KD5DVV,=KD5PKH,=KD9GIZ,=KD9MRY,=KE0AYJ,=KE0GFK,=KE0SH,=KE1MA,=KE3WW,=KE4GGD,=KE4GYA, - =KE4SKH,=KE4THL,=KE4WUE,=KE5LNG,=KF4KPO,=KF4TZG,=KF4VYH,=KF4WTX,=KF4ZDB,=KF5YGN,=KF5YGX,=KF6OGJ, - =KG4EEG,=KG4EEL,=KG4GYO,=KG4IRC,=KG4IVO,=KG4VCC,=KG5AFY,=KG6WWV,=KG9KG,=KH2RU,=KH4AA,=KI4LRJ, - =KI4RGF,=KI4TSW,=KI4WOA,=KI4WOB,=KI5KQH,=KJ4KZN,=KJ4LOZ,=KJ4UPN,=KJ4UXJ,=KJ4VSD,=KJ6OV,=KK4AOZ, - =KK4DCX,=KK4EBE,=KK4PHB,=KM4VDZ,=KM4WGI,=KM4YBN,=KM4YSR,=KM4ZJW,=KM4ZWY,=KM6CTO,=KN4AWH,=KN4GNO, - =KN4IBD,=KN4IDV,=KN4IGP,=KN4ILO,=KN4INP,=KN4JCC,=KN4KPX,=KN4KPY,=KN4MNT,=KN4NAR,=KN4NLZ,=KN4ODN, - =KN4QBT,=KN4QZZ,=KN4REC,=KN4SKZ,=KN4TNC,=KN4UAN,=KP2H,=KP2Z,=KP3CW/SKP,=KP3RE/LGT,=KP3RE/LH, - =KP3RE/LT,=KP4ES/L,=KP4ES/LGT,=KP4ES/LH,=KP4FD/IARU,=KP4FRA/IARU,=KP4FRD/LH,=KP4MD/P,=KP4PRE/EVNT, - =KP4VP/LH,=KR4SQ,=KU4JI,=N0XAR,=N1CN,=N1HRV,=N1JFL,=N1QVU,=N1RWD,=N1SCD,=N1SZM,=N1YAY,=N1ZJC, - =N2FVA,=N2IBR,=N2KKN,=N2KUE,=N2OUS,=N2PGO,=N2WCS,=N3VIJ,=N3VVW,=N3YUB,=N3ZII,=N4AKO,=N4CIE,=N4JZD, - =N4LER,=N4MMT,=N4NDL,=N4UK,=N5YIZ,=N6NVD,=N6RHF,=N8MQ,=NB0G,=NP3M/LH,=NP3VI/LH,=NP4VO/LH,=W1AW/PR, - =W6WAW,=W9NKE,=WA2RVA,=WB2HMY,=WB5YOF,=WB7ADC,=WB7VVV,=WP4L/TP,=WQ2N; + KP3,KP4,NP3,NP4,WP3,WP4,=AA2ZN,=AB2DR,=AB3DP,=AF4OU,=AF5IZ,=AG4CD,=AI4EZ,=K1NDN,=K4C/LH,=K4LCR, + =K4PFH,=K5YJR,=K6BOT,=K9JOS,=KA2ABJ,=KA2GNG,=KA2MBR,=KA2UCX,=KA2YGB,=KA3ZFY,=KA3ZGQ,=KA4ROB, + =KA7URH,=KA9UTY,=KB0AQB,=KB0JRR,=KB0TEP,=KB1CKX,=KB1GIW,=KB1IJU,=KB1JMX,=KB1KDP,=KB1RUQ,=KB1TUA, + =KB1UEK,=KB1UNX,=KB1UZV,=KB1ZKF,=KB2ALR,=KB2BVX,=KB2CIE,=KB2KWB,=KB2MMX,=KB2NMT,=KB2NYN,=KB2OIF, + =KB2OMN,=KB2OPK,=KB2OPM,=KB2QQK,=KB2RYP,=KB2TID,=KB2VHY,=KB2WKT,=KB2YKJ,=KB3BPK,=KB3BTN,=KB3LUV, + =KB3SBO,=KB3TTV,=KB8ZVP,=KB9OWX,=KB9RZD,=KB9YVE,=KB9YVF,=KC1CRV,=KC1CUF,=KC1DRV,=KC1IHB,=KC1IHO, + =KC1JLY,=KC1KZI,=KC2BZZ,=KC2CJL,=KC2CTM,=KC2DUO,=KC2EMM,=KC2ERS,=KC2ERU,=KC2EWB,=KC2GRZ,=KC2HAS, + =KC2JNE,=KC2LET,=KC2TE,=KC2UXP,=KC2VCR,=KC3GEO,=KC3JYF,=KC4ADN,=KC5DKT,=KC5FWS,=KC8BFN,=KC8IRI, + =KD2BK,=KD2KPC,=KD2VQ,=KD4TVS,=KD5DVV,=KD5PKH,=KD9GIZ,=KD9MRY,=KE0AYJ,=KE0GFK,=KE0SH,=KE1MA, + =KE3WW,=KE4GGD,=KE4GYA,=KE4SKH,=KE4THL,=KE4WUE,=KE5LNG,=KF4KPO,=KF4TZG,=KF4VYH,=KF4WTX,=KF4ZDB, + =KF5YGN,=KF5YGX,=KF6OGJ,=KG4EEG,=KG4EEL,=KG4GYO,=KG4IRC,=KG4IVO,=KG4VCC,=KG5AFY,=KG6WWV,=KG9KG, + =KH2RU,=KH4AA,=KI4LRJ,=KI4RGF,=KI4TSW,=KI4WOA,=KI4WOB,=KI5KQH,=KJ4KZN,=KJ4LOZ,=KJ4UPN,=KJ4UXJ, + =KJ4VSD,=KJ6OV,=KK4AOZ,=KK4BXJ,=KK4DCX,=KK4EBE,=KK4PHB,=KM4VDZ,=KM4WGI,=KM4YBN,=KM4YSR,=KM4ZJW, + =KM4ZWY,=KM6CTO,=KN4AWH,=KN4GNO,=KN4IBD,=KN4IDV,=KN4IGP,=KN4ILO,=KN4INP,=KN4JCC,=KN4KPX,=KN4KPY, + =KN4MNT,=KN4NAR,=KN4NLZ,=KN4ODN,=KN4QBT,=KN4QZZ,=KN4REC,=KN4SKZ,=KN4TNC,=KN4UAN,=KP2H,=KP2Z, + =KP3CW/SKP,=KP3RE/LGT,=KP3RE/LH,=KP3RE/LT,=KP4ES/L,=KP4ES/LGT,=KP4ES/LH,=KP4FD/IARU,=KP4FRA/IARU, + =KP4FRD/LH,=KP4MD/P,=KP4PRE/EVNT,=KP4VP/LH,=KR4SQ,=KU4JI,=N0XAR,=N1CN,=N1HRV,=N1JFL,=N1QVU,=N1RWD, + =N1SCD,=N1SZM,=N1YAY,=N1ZJC,=N2FVA,=N2IBR,=N2KKN,=N2KUE,=N2OUS,=N2PGO,=N2WCS,=N3VIJ,=N3VVW,=N3YUB, + =N3ZII,=N4AKO,=N4CIE,=N4JZD,=N4LER,=N4MMT,=N4NDL,=N4UK,=N5YIZ,=N6NVD,=N6RHF,=N8MQ,=NB0G,=NP3M/LH, + =NP3VI/LH,=NP4VO/LH,=W1AW/PR,=W6WAW,=W9NKE,=WA2RVA,=WB2HMY,=WB5YOF,=WB7ADC,=WB7VVV,=WP4L/TP,=WQ2N; Desecheo Island: 08: 11: NA: 18.08: 67.88: 4.0: KP5: KP5,NP5,WP5; Norway: 14: 18: EU: 61.00: -9.00: -1.0: LA: @@ -2173,11 +2177,11 @@ Finland: 15: 18: EU: 61.38: -24.82: -2.0: OH: =OH1F/LH,=OH1FJ/S,=OH1FJ/SA,=OH1KW/S,=OH1KW/SA,=OH1LD/S,=OH1LEO/S,=OH1MLZ/SA,=OH1NR/S,=OH1OD/S, =OH1PP/S,=OH1PV/S,=OH1S/S,=OH1SJ/S,=OH1SJ/SA,=OH1SM/S,=OH1TX/S,=OH1TX/SA,=OH1UH/S,=OH1XW/S, =OI1AXA/S,=OI1AY/S,=OI1SWM/S, - =OF2BNX/SA,=OG2O/YL,=OH0AM/2,=OH0BT/2,=OH0HG/2,=OH2AAF/S,=OH2AAF/SA,=OH2AAV/S,=OH2AN/SUB, - =OH2AUE/S,=OH2AUE/SA,=OH2AY/S,=OH2BAX/S,=OH2BMB/S,=OH2BMB/SA,=OH2BNB/SA,=OH2BNX/S,=OH2BNX/SA, - =OH2BQP/S,=OH2BXT/S,=OH2C/S,=OH2EO/S,=OH2ET/LH,=OH2ET/LS,=OH2ET/S,=OH2FBX/S,=OH2FBX/SA,=OH2HK/S, - =OH2HZ/S,=OH2MEE/S,=OH2MEE/SA,=OH2MH/S,=OH2MO/S,=OH2MO/SA,=OH2NAS/S,=OH2NAS/SA,=OH2NM/LH,=OH2PO/S, - =OH2PO/SA,=OH2S/S,=OH2S/SA,=OH2XL/S,=OH2XMP/S,=OH2ZL/SA,=OH2ZY/S,=OI2ABG/S, + =OF2BNX/SA,=OG2O/YL,=OH0AM/2,=OH0BT/2,=OH0HG/2,=OH0SCA/2,=OH2AAF/S,=OH2AAF/SA,=OH2AAV/S, + =OH2AN/SUB,=OH2AUE/S,=OH2AUE/SA,=OH2AY/S,=OH2BAX/S,=OH2BMB/S,=OH2BMB/SA,=OH2BNB/SA,=OH2BNX/S, + =OH2BNX/SA,=OH2BQP/S,=OH2BXT/S,=OH2C/S,=OH2EO/S,=OH2ET/LH,=OH2ET/LS,=OH2ET/S,=OH2FBX/S,=OH2FBX/SA, + =OH2HK/S,=OH2HZ/S,=OH2MEE/S,=OH2MEE/SA,=OH2MH/S,=OH2MO/S,=OH2MO/SA,=OH2NAS/S,=OH2NAS/SA,=OH2NM/LH, + =OH2PO/S,=OH2PO/SA,=OH2S/S,=OH2S/SA,=OH2XL/S,=OH2XMP/S,=OH2ZL/SA,=OH2ZY/S,=OI2ABG/S, =OF3HHO/S,=OF3KRB/S,=OG3X/LH,=OH0MZA/3,=OH3A/LH,=OH3ABN/S,=OH3ACA/S,=OH3AG/LH,=OH3CT/S,=OH3CT/SA, =OH3FJQ/S,=OH3FJQ/SA,=OH3GDO/LH,=OH3GQM/S,=OH3HB/S,=OH3HB/SA,=OH3HHO/S,=OH3HHO/SA,=OH3IH/S, =OH3IH/SA,=OH3IS/S,=OH3KRB/S,=OH3KRB/SA,=OH3LB/S,=OH3LB/SA,=OH3LS/S,=OH3MY/S,=OH3MY/SA,=OH3N/S, @@ -2431,28 +2435,28 @@ European Russia: 16: 29: EU: 53.65: -41.37: -4.0: UA: R,U,=R0AGD/6,=R0CAF/1,=R0XAD/6/P,=R25EMW(17)[19],=R80PSP,=R80UPOL,=R8CT/4/P,=R8FF/3/M,=R8FF/7, =R90DOSAAF,=R9AV/6,=R9FCH/6,=R9HV/6,=R9JBF/1,=R9JBH/7,=R9JI/1,=R9KC/6/M,=R9WR/1,=R9XAU/6,=RA0AM/6, =RA0BM/6,=RA0ZZ/3,=RA3CQ/9/M(17)[20],=RA80SP,=RA9JR/3,=RA9JX/3,=RA9P/4,=RA9RT/3,=RA9UEZ/6, - =RA9UUY/6,=RA9YA/6,=RC80SP,=RG0F/5,=RG50P(17),=RG50P/9(17)[30],=RJ80SP,=RK0HWW/1,=RK80X(17)[19], - =RK8O/4,=RL9AA/6,=RM80SP,=RM8A/4/M,=RM94AE,=RN9M/4,=RN9OI/3,=RO80RO,=RP61XX(17)[19], + =RA9ULL/6,=RA9YA/6,=RC80SP,=RG0F/5,=RG50P(17),=RG50P/9(17)[30],=RJ80SP,=RK0HWW/1,=RK80X(17)[19], + =RK8O/4,=RL9AA/6,=RM80SP,=RM8A/4/M,=RM94AE,=RN9M/4,=RN9N/M,=RN9OI/3,=RO80RO,=RP61XX(17)[19], =RP62X(17)[19],=RP63X(17)[19],=RP63XO(17)[19],=RP64X(17)[19],=RP65FPP(17)[30],=RP8X(17)[30], =RQ80SP,=RT9T/3,=RU0ZW/6,=RU2FB/3,=RU2FB/3/P,=RU4SS/9(17)[30],=RU4WA/9(17)[30],=RU9MU/3,=RV9LM/3, =RV9XX/3,=RW0IM/1,=RW0QE/6,=RW2F/6,=RW9FF/3,=RW9W/3,=RW9W/4,=RX2FS/3,=RX9TC/1,=RX9UL/1,=RZ9AWN/6, =UA0AK/3,=UA0FQ/6,=UA0KBG/3,=UA0KBG/6,=UA0KCX/3/P,=UA0KT/4,=UA0QNE/3,=UA0QNU/3,=UA0QQJ/3,=UA0UV/6, - =UA0XAK/3,=UA0XAK/6,=UA4NF/M,=UA8CAD/3,=UA9CCO/6,=UA9CDC/3,=UA9CTT/3,=UA9FFS/1/MM,=UE23DKA, - =UE6MAC/9(17),=UE95AE,=UE95E,=UE95ME,=UE96ME,=UE99PS, - =R800ANL,=R900BL,=R900DM,=R900DV,=R9J/1,=RA2FN/1,=RA9KU/1,=RA9KU/1/M,=RA9MC/1,=RA9SGI/1,=RD1A/M, - =RK9XWV/1,=RL1O,=RM0L/1,=RM80DZ,=RN1M/P,=RN85AM,=RN85KN,=RT9T/1,=RU2FB/1,=RU9YT/1,=RU9YT/1/P, + =UA0XAK/3,=UA0XAK/6,=UA4NF/M,=UA8CAD/3,=UA9CCO/6,=UA9CDC/3,=UA9CTT/3,=UA9FFS/1/MM,=UB2FCS/6, + =UE23DKA,=UE6MAC/9(17),=UE95AE,=UE95E,=UE95ME,=UE96ME,=UE99PS, + =R800ANL,=R900BL,=R900DM,=R900DV,=R9J/1,=RA2FN/1,=RA9KU/1,=RA9KU/1/M,=RA9MC/1,=RA9SGI/1,=RK9XWV/1, + =RL1O,=RM0L/1,=RM80DZ,=RN1M/P,=RN85AM,=RN85KN,=RT9T/1,=RU2FB/1,=RU9YT/1,=RU9YT/1/P,=RV1CC/M, =RW1AI/ANT,=RW1AI/LH,=RW8W/1,=RW9QA/1,=RX3AMI/1/LH,=UA1ADQ/ANT,=UA1BJ/ANT,=UA1JJ/ANT,=UA2FFX/1, =UA9B/1,=UA9KG/1,=UA9KGH/1,=UA9KK/1,=UA9UDX/1,=UB9YUW/1,=UE21A,=UE21B,=UE21M,=UE22A,=UE25AC, =UE25AQ,=UE2AT/1, - =R0XAC/1,=R1CF/M,=R8FF/1,=R8XF/1,=R8XF/M,=R90LPU,=R9JNO/1,=RA0FU/1,=RA9FNV/1,=RN2FA/1,=RN9N/1, - =RU9MU/1,=RV0CA/1,=RV1CC/1,=RV1CC/M,=RV2FW/1,=RV9JD/1,=RX9TN/1,=UA0BDS/1,=UA0SIK/1,=UA1CDA/LH, - =UA1CIO/LH,=UA9MA/1,=UA9MQR/1,=UB5O/1/M, + =R0XAC/1,=R1CF/M,=R8FF/1,=R8XF/1,=R90LPU,=R9JNO/1,=RA0FU/1,=RA9FNV/1,=RD1A/M,=RN2FA/1,=RN9N/1, + =RU9MU/1,=RV0CA/1,=RV1CC/1,=RV2FW/1,=RV9JD/1,=RX9TN/1,=UA0BDS/1,=UA0SIK/1,=UA1CDA/LH,=UA1CIO/LH, + =UA9MA/1,=UA9MQR/1,=UB5O/1/M,=UE2FA, R1N[19],RA1N[19],RC1N[19],RD1N[19],RE1N[19],RF1N[19],RG1N[19],RJ1N[19],RK1N[19],RL1N[19],RM1N[19], RN1N[19],RO1N[19],RQ1N[19],RT1N[19],RU1N[19],RV1N[19],RW1N[19],RX1N[19],RY1N[19],RZ1N[19],U1N[19], UA1N[19],UB1N[19],UC1N[19],UD1N[19],UE1N[19],UF1N[19],UG1N[19],UH1N[19],UI1N[19],=R01DTV/1[19], - =R100RK[19],=R85KFF[19],=R90K[19],=RK75OP[19],=RN1NA/ANT[19],=RO25KL[19],=RO75RK[19],=RP72PT[19], - =RP72RK[19],=RP73PT[19],=RP73RK[19],=RP74PT[19],=RP74RK[19],=RP75PT[19],=RP75RK[19],=RP76OG[19], - =RP76PT[19],=RP76RK[19],=RV9JD/1/M[19],=UA9CSA/1[19],=UB5O/1[19], + =R100RK[19],=R85KFF[19],=R90K[19],=R90KFF[19],=RK75OP[19],=RN1NA/ANT[19],=RO25KL[19],=RO75RK[19], + =RP72PT[19],=RP72RK[19],=RP73PT[19],=RP73RK[19],=RP74PT[19],=RP74RK[19],=RP75PT[19],=RP75RK[19], + =RP76OG[19],=RP76PT[19],=RP76RK[19],=RV9JD/1/M[19],=UA9CSA/1[19],=UB5O/1[19], R1O[19],RA1O[19],RC1O[19],RD1O[19],RE1O[19],RF1O[19],RG1O[19],RJ1O[19],RK1O[19],RL1O[19],RM1O[19], RN1O[19],RO1O[19],RQ1O[19],RT1O[19],RU1O[19],RV1O[19],RW1O[19],RX1O[19],RY1O[19],RZ1O[19],U1O[19], UA1O[19],UB1O[19],UC1O[19],UD1O[19],UE1O[19],UF1O[19],UG1O[19],UH1O[19],UI1O[19],=R0000O[19], @@ -2467,7 +2471,8 @@ European Russia: 16: 29: EU: 53.65: -41.37: -4.0: UA: =R9SAO/1[20],=R9XC/1[20],=R9XT/1[20],=RA2FW/1[20],=RA9JG/1[20],=RA9LI/1[20],=RC9XM/1[20], =RK1PWA/ANT[20],=RL1P[20],=UA1PAC/1/ANT[20],=UA9FOJ/1[20],=UA9MRY/1[20],=UA9XRP/1[20], =R9FM/1,=RA0BM/1,=RA0BM/1/P,=RA1QQ/LH,=RU9MX/1,=RW9XC/1,=UA1QV/ANT,=UA9XC/1,=UE80GS, - =R800ANN,=R88EPC,=R95NRL,=RA9FBV/1,=RA9SC/1,=RA9XY/1,=RV2FW/1/M,=RZ0IWW/1,=UA9XF/1,=UE9WFF/1, + =R800ANN,=R88EPC,=R8XF/M,=R95NRL,=RA9FBV/1,=RA9SC/1,=RA9XY/1,=RV2FW/1/M,=RZ0IWW/1,=UA9XF/1, + =UE9WFF/1, =R800ANP,=RA0ZD/1,=RP9X/1,=RP9XWM/1,=UE25WDW,=UE9XBW/1,=UF2F/1/M, R1Z[19],RA1Z[19],RC1Z[19],RD1Z[19],RE1Z[19],RF1Z[19],RG1Z[19],RJ1Z[19],RK1Z[19],RL1Z[19],RM1Z[19], RN1Z[19],RO1Z[19],RQ1Z[19],RT1Z[19],RU1Z[19],RV1Z[19],RW1Z[19],RX1Z[19],RY1Z[19],RZ1Z[19],U1Z[19], @@ -2476,18 +2481,20 @@ European Russia: 16: 29: EU: 53.65: -41.37: -4.0: UA: =RP73ZP[19],=RP74ZP[19],=RP75BFS[19],=RP75EP[19],=RP75PL[19],=RP76MU[19],=RP76PL[19],=RP76SSF[19], =RP76ZZ[19],=RU1ZC/ANT[19],=RV1CC/P[19],=RW1ZQ/LH[19],=RY83HN[19],=UB1ZBD/N[19], =R01DTV/3,=R85PAR,=R870B,=R870C,=R870K,=R870M,=R870O,=R9FM/3,=RA2AT,=RA2FDX/3,=RA3AL/M,=RA9CO/3, - =RA9USU/3,=RC85MP,=RL3AB/FF,=RT2F/3/M,=RT9K/3,=RW0LF/3,=RX9UL/3,=RX9WN/3,=RZ9UA/3,=UA0KCX/3, - =UA3AV/ANT,=UA8AA/3,=UA8AA/5,=UA9KHD/3,=UA9MA/3,=UA9MDU/3,=UA9MRX/3,=UA9QCP/3,=UA9UAX/3,=UE24SU, - =R18JPN,=R85AAL,=R85QMR,=R85WDW,=R8B,=R8FF/3,=R90DNF,=R90PAR,=R90WDW,=R99FSB,=R9YU/3,=RA0BY/3, - =RA80KEDR,=RA9KV/3,=RA9SB/3,=RA9XY/3,=RD0L/3,=RK3DSW/ANT,=RK3DWA/3/N,=RN9MD/3,=RT80KEDR,=RU0LM/3, - =RU2FA/3,=RU3HD/ANT,=RV0AO/3,=RV9LM/3/P,=RW0IM/3,=RW3DU/N,=RW9UEW/3,=RX9SN/3,=RZ9OL/3/M, - =RZ9OL/3/P,=RZ9SZ/3,=RZ9W/3,=UA0JAD/3,=UA0KCL/3,=UA0ZAZ/3,=UA9AJ/3/M,=UA9DD/3,=UA9HSI/3,=UA9ONJ/3, - =UA9XGD/3,=UA9XMC/3,=UE23DSA,=UE25FO,=UE95GA,=UE96WS, + =RA9USU/3,=RC85MP,=RL3AB/FF,=RT2F/3,=RT2F/3/M,=RT9K/3,=RW0LF/3,=RX9UL/3,=RX9WN/3,=RZ9UA/3, + =UA0KCX/3,=UA3AV/ANT,=UA8AA/3,=UA8AA/5,=UA9KHD/3,=UA9MA/3,=UA9MDU/3,=UA9MRX/3,=UA9QCP/3,=UA9UAX/3, + =UE24SU, + =R85AAL,=R85QMR,=R85WDW,=R8B,=R8FF/3,=R90DNF,=R90PAR,=R90WDW,=R99FSB,=R9YU/3,=RA0BY/3,=RA80KEDR, + =RA9KV/3,=RA9SB/3,=RA9XY/3,=RD0L/3,=RK3DSW/ANT,=RK3DWA/3/N,=RN9MD/3,=RT80KEDR,=RU0LM/3,=RU2FA/3, + =RU3HD/ANT,=RV0AO/3,=RV9LM/3/P,=RW0IM/3,=RW3DU/N,=RW9UEW/3,=RX9SN/3,=RZ9OL/3/M,=RZ9OL/3/P, + =RZ9SZ/3,=RZ9W/3,=UA0JAD/3,=UA0KCL/3,=UA0ZAZ/3,=UA9AJ/3/M,=UA9DD/3,=UA9HSI/3,=UA9ONJ/3,=UA9XGD/3, + =UA9XMC/3,=UE23DSA,=UE25FO,=UE95GA,=UE96WS, =R80ORL,=UA0QGM/3,=UE80O,=UE80OL, - =R0AI/3,=R0CAF/3,=R3GO/FF,=RM0L/3,=RN3GL/FF,=RN3GW/FF,=RT5G/P/FF,=RW0IW/3,=UA3GM/ANT,=UE90FL, + =R0AI/3,=R0CAF/3,=R3GO/FF,=RL1I/P,=RM0L/3,=RN3GL/FF,=RN3GW/FF,=RT5G/P/FF,=RW0IW/3,=UA3GM/ANT, + =UE90FL, =RA9KT/3,=RZ9SZ/3/M,=UA0FHC/3,=UF2F/3/M, - =R0IA/3,=R863LC,=R863LK,=R863LX,=R875R,=R9XZ/3,=RG80KEDR,=RL80KEDR,=RN0CF/3,=RN2FA/3,=RU9QRP/3, - =RZ90W/3,=UA3LMR/P,=UA9JFM/3,=UA9XZ/3,=UE80G,=UE80V,=UE80YG, + =R0IA/3,=R863LC,=R863LK,=R863LX,=R875R,=R9XZ/3,=RG80KEDR,=RK3AW/M,=RL80KEDR,=RN0CF/3,=RN2FA/3, + =RU9QRP/3,=RZ90W/3,=RZ9SZ/M,=UA3LMR/P,=UA9JFM/3,=UA9XZ/3,=UE80G,=UE80V,=UE80YG, =R800AN,=R800RAN,=RK3MXT/FF,=RV9AZ/3,=UA0AD/3, =R870T,=RT90PK,=RU0ZW/3,=RW0UM/3,=RW9JV/3, =R0AI/M,=R0AIB/3,=R89AFG,=RA0CCV/3,=RA0QA/3,=RC9YA/3/P,=RM8X/3,=RV9LC/3,=UA0QJE/3,=UA0QQO/3, @@ -2497,10 +2504,10 @@ European Russia: 16: 29: EU: 53.65: -41.37: -4.0: UA: =R3TT/FF,=R800ANG,=R8TA/4/P,=R8TR/3,=R90NOR,=R9KW/3,=R9KW/4,=R9PA/4,=RA95FL,=RA9AP/3,=RA9CKQ/4, =RA9KW/3,=RA9KW/3/M,=RA9ST/3/P,=RG9A/3/P,=RM9T/4/P,=RN0CT/4,=RT9S/3,=RT9S/3/P,=RT9S/4,=RT9S/P, =RU95FL,=RU9LA/4,=RV9FQ/3,=RV9FQ/3/M,=RV9WB/4,=RV9WLE/3/P,=RV9WZ/3,=RW9KW/3,=RW9WA/3,=RX9SN/P, - =UA0ADX/3,=UA0DM/4,=UA0S/4,=UA0SC/4,=UA9APA/3/P,=UA9CTT/4,=UA9PM/4,=UA9SSR/3,=UE200TARS,=UE25TF, - =UE9FDA/3,=UE9FDA/3/M,=UE9WDA/3,=UI8W/3/P, + =UA0ADX/3,=UA0DM/4,=UA0S/4,=UA0SC/4,=UA9APA/3/P,=UA9APA/P,=UA9CTT/4,=UA9PM/4,=UA9SSR/3,=UE200TARS, + =UE25TF,=UE9FDA/3,=UE9FDA/3/M,=UE9WDA/3,=UI8W/3/P, =R5VAJ/N,=R800ANV,=R850G,=R850PN,=RU0BW/3,=RV80KEDR,=RX9TL/3,=UA0FM/3,=UA3A/P, - =R110A/P,=R80PVB,=RK3AW/M, + =R110A/P,=R80PVB, =R8XF/3,=RA9XF/3,=RC80KEDR,=RK0BWW/3,=RN80KEDR,=RW9XC/3/M,=RX3XX/N,=UA0KBA/3/P,=UA9SIV/3, =UE0ZOO/3, =R85WTA,=R8FF/3/P,=R90WDWR,=R90WTA,=R98KPM,=R99KPM,=RA3YV/ANT,=RK0UT/3,=RW0LX/3,=UA3YH/ANT, @@ -2528,15 +2535,15 @@ European Russia: 16: 29: EU: 53.65: -41.37: -4.0: UA: =RU4I[29],=RV9JD/4/M[30],=RW4HM[29],=RW4HTK[29],=RW4HW[29],=RW4HZ[29],=RW9SW/4[30],=RW9TP/4[30], =RW9WJ/4[30],=RW9WJ/4/P[30],=RW9WJ/P[30],=RZ4HWF/LH[30],=RZ4HZW/FF[30],=RZ9WU/4/M[30], =UA0KAO/4[30],=UA0QJA/4[30],=UA4H[29],=UA4HBM[29],=UA4HGL[29],=UA4HIP[29],=UA4HIP/M[30], - =UA4HRZ[29],=UA4HY[29],=UA9JGX/4[30],=UA9LAO/4[30],=UA9SQG/4/P[30],=UA9SY/4[30],=UC4I[29], - =UI4I[29], + =UA4HRZ[29],=UA4HY[29],=UA9JGX/4[30],=UA9LAO/4[30],=UA9SQG/4/P[30],=UA9SY/4[30],=UB8S/P[30], + =UC4I[29],=UI4I[29], =R01DTV/4,=R9XC/4,=RA9XAF/4,=UA4HIP/4,=UA9JFE/4, =R8XF/4,=RA4NCC[30],=RA9FR/4/P,=RA9XSM/4,=RD9CX/4,=RD9CX/4/P,=RU0LM/4,=RW9XC/4/M,=UA4NE/M, =UA4NF[30],=UA9APA/4/P,=UA9FIT/4,=UA9XI/4,=UE9FDA/4,=UE9FDA/4/M,=UE9GDA/4, =R95PW,=R9WI/4/P,=RA9CKM/4/M,=RA9FR/4/M,=RJ4P[30],=RK4P[30],=RK4PK[30],=RM4P[30],=RM4R[30], =RM8W/4/M,=RN9WWW/4,=RN9WWW/4/M,=RT05RO,=RV9FQ/4/M,=RV9WKI/4/M,=RV9WKI/4/P,=RV9WMZ/4/M,=RV9WZ/4, =RW9TP/4/P,=RW9WA/4,=RW9WA/4/M,=RZ9WM/4,=UA2FM/4,=UA3AKO/4,=UA4PN[30],=UA4RF[30],=UA4RW[30], - =UA9AJ/4/M,=UA9JFN/4/M,=UA9JNQ/4,=UA9SG/4,=UB5O/M,=UE96MP,=UE9WDA/4,=UE9WDA/4/M, + =UA9AJ/4/M,=UA9JFN/4/M,=UA9JNQ/4,=UA9SG/4,=UE96MP,=UE9WDA/4,=UE9WDA/4/M, =R8UT/4/P,=R9JBF/4,=RX9WN/4,=UA5B/4, =RQ0C/4,=RZ5D/4,=UA9XX/4,=UE9WFF/4, R4W[30],RA4W[30],RC4W[30],RD4W[30],RE4W[30],RF4W[30],RG4W[30],RJ4W[30],RK4W[30],RL4W[30],RM4W[30], @@ -2544,23 +2551,23 @@ European Russia: 16: 29: EU: 53.65: -41.37: -4.0: UA: UA4W[30],UB4W[30],UC4W[30],UD4W[30],UE4W[30],UF4W[30],UG4W[30],UH4W[30],UI4W[30],=R0CM/4[30], =R100MTK[30],=R100UD[30],=R9GM/4[30],=R9UT/4[30],=RA9FDR/4/P[30],=RA9KV/4/M[30],=RA9WU/4[30], =RA9WU/4/M[30],=RA9WU/4/P[30],=RP72IZ[30],=RP73IZ[30],=RP74IZ[30],=RP75IZ[30],=RP76IZ[30], - =RT20NY[30],=RT21NY[30],=RT30DX[30],=RT36MS[30],=RT60YG[30],=RT78ML[30],=RW9FWB/4[30], + =RT20NY[30],=RT21NY[30],=RT21RU[30],=RT30DX[30],=RT36MS[30],=RT60YG[30],=RT78ML[30],=RW9FWB/4[30], =RW9FWR/4[30],=RW9FWR/4/M[30],=RX9FW/4[30],=UA9UAX/4/M[30], =RT9T/4,=RV9MD/4,=UA4PCM/M,=UE04YCS,=UE85AGN,=UE90AGN, - =R01DTV,=R01DTV/7,=R0IT/6,=R7AB/M,=R80TV,=R8XW/6,=R9JO/6,=R9KD/6,=R9OM/6,=R9WGM/6/M,=RA0APW/6, - =RA0FW/6,=RA0LIF/6,=RA0LLW/6,=RA0QR/6,=RA9ODR/6,=RA9ODR/6/M,=RA9SAS/6,=RA9UWD/6,=RA9WW/6,=RD9CX/6, - =RD9CX/6/P,=RK6AH/LH,=RK75KH,=RK75MP,=RK9JA/6,=RM8W/6,=RN0CF/6,=RN0JT/6,=RQ0C/6,=RT9K/6,=RT9K/6/P, - =RT9K/6/QRP,=RU2FB/6,=RU9MX/6,=RU9QRP/6/M,=RU9QRP/6/P,=RU9SO/6,=RU9SO/M,=RV9FQ/6,=RW0LIF/6, + =R01DTV,=R01DTV/7,=R0IT/6,=R80TV,=R8XW/6,=R9JO/6,=R9KD/6,=R9OM/6,=R9WGM/6/M,=RA0APW/6,=RA0FW/6, + =RA0LIF/6,=RA0LLW/6,=RA0QR/6,=RA9ODR/6,=RA9ODR/6/M,=RA9SAS/6,=RA9UUY/6,=RA9UWD/6,=RA9WW/6, + =RD9CX/6,=RD9CX/6/P,=RK6AH/LH,=RK75KH,=RK75MP,=RK9JA/6,=RM8W/6,=RN0CF/6,=RN0JT/6,=RQ0C/6,=RT9K/6, + =RT9K/6/P,=RT9K/6/QRP,=RU2FB/6,=RU9MX/6,=RU9QRP/6/M,=RU9QRP/6/P,=RU9SO/6,=RV9FQ/6,=RW0LIF/6, =RW0LIF/6/LH,=RW6AWW/LH,=RW9JZ/6,=RW9WA/6,=RX6AA/ANT,=RX6AAP/ANT,=RX9TX/6,=RZ9HG/6,=RZ9HT/6, =RZ9UF/6,=RZ9UZV/6,=UA0AGE/6,=UA0IT/6,=UA0JL/6,=UA0LQQ/6/P,=UA0SEP/6,=UA2FT/6,=UA6ADC/N,=UA9COO/6, =UA9CTT/6,=UA9JON/6,=UA9JPX/6,=UA9KB/6,=UA9KJ/6,=UA9KW/6,=UA9MQR/6,=UA9UAX/6,=UA9VR/6,=UA9XC/6, =UA9XCI/6,=UE9WDA/6,=UE9WFF/6,=UF0W/6, =RA6EE/FF,=RN7G/FF,=UA0LEC/6,=UA9KAS/6,=UA9KAS/6/P, - =R9XV/6,=RA0ZG/6,=RA9CHS/6,=RA9CHS/7,=RK7G/FF,=RT9K/7,=RU9CK/7,=RU9ZA/7,=RZ7G/FF,=RZ9ON/6, - =UA0ZDA/6,=UA0ZS/6,=UA6HBO/N,=UA6HBO/ST30,=UA6IC/6/FF,=UA9CE/6,=UA9UAX/7/M,=UE80HS, + =R7AB/M,=R7AB/P,=R9XV/6,=RA0ZG/6,=RA9CHS/6,=RA9CHS/7,=RK7G/FF,=RT9K/7,=RU9CK/7,=RU9ZA/7,=RZ7G/FF, + =RZ9ON/6,=UA0ZDA/6,=UA0ZS/6,=UA6HBO/N,=UA6HBO/ST30,=UA6IC/6/FF,=UA9CE/6,=UA9UAX/7/M,=UE80HS, =RM8A/6/M,=UA6IC/FF, =RU2FB/6/P,=UA9UAX/7, - =R6LCA/J,=R7AB/P,=R8WC/6,=R8WC/6/P,=RA20NY,=RA21NY,=RA98AE,=RU97AE,=RV9CMT/6,=RV9DC/6/P,=RV9LC/6, + =R6LCA/J,=R8WC/6,=R8WC/6/P,=RA20NY,=RA21NY,=RA98AE,=RU97AE,=RV9CMT/6,=RV9DC/6/P,=RV9LC/6, =RW9XC/6/M,=RX9KT/6,=UA0QBR/6,=UA0ZED/6,=UA6LP/P/LH,=UA6LV/ANT,=UA6MM/LH,=UE20DS,=UE28DX,=UE29DX, =UE92L, =RV0ANH/6,=RV0APR/6,=RW0AF/6, @@ -2655,7 +2662,8 @@ Asiatic Russia: 17: 30: AS: 55.88: -84.08: -7.0: UA9: =RA4AAJ/9(18),=RD17CW(19),=RD1AL/0(40)[75],=RD3ARX/0/P(19),=RF1A/9(18),=RI18POL(40)[75],=RJ17WG, =RK3Q/8,=RL19WF,=RM17NY,=RM19WF(18),=RN17CW,=RO19WF(19),=RQ17CW(18),=RQ17WG,=RQ4D/9(18), =RU17NY(18),=RV3PZ/9,=RW1AI/0(19),=RW55YG,=RX17WG(19),=RX55YG(18),=RX80SP(18),=RY1AAB/0/M(19), - =RY80SP(19),=RZ6A/9,=RZ9YI/9,=UA0ZDA/MM(29),=UA3DND/8,=UA3TT/8,=UE18M,=UE18U(18),=UE18Z(19), + =RY80SP(19),=RZ6A/9,=RZ9YI/9,=UA0ZDA/MM(29),=UA3DND/8,=UA3TT/8,=UC7T/9(19),=UE18M,=UE18U(18), + =UE18Z(19), =R100RG,=R120RG,=R2014Y,=R2015TL,=R20UFO,=R22SKE,=R280A,=R280B,=R3HD/9,=R3RRC/8,=R55TV,=R6RA/9, =R70PW,=R70PW/P,=R9SRR,=RA0QK/8,=RA1AIP/9/P,=RA1AR/9,=RA1QR/9,=RA3WJ/9,=RA3XBN/9,=RA3ZM/8, =RA4FSC/9,=RA4HGN/9,=RA9SC/9,=RA9WJV/8/P,=RC20AB,=RC20AC,=RD3BN/9,=RD4CAQ/9,=RG110RAEM,=RJ17CW, @@ -2670,16 +2678,16 @@ Asiatic Russia: 17: 30: AS: 55.88: -84.08: -7.0: UA9: =R160DMP,=R16SVK,=R170GS/8,=R2015BP,=R2015R,=R2016DR,=R20EKB,=R22SKJ,=R27EKB,=R30ZF,=R35CZF, =R375I,=R44YETI/8,=R4WAB/9/P,=R55EPC,=R55EPC/P,=R6UAE/9,=R70NIK,=R7LZ/8,=R8FF/8,=R9GM/8,=R9GM/8/M, =R9WCJ/8,=RA/DL6XK,=RA/US5ETV,=RA0BA/8,=RA0BA/9,=RA27AA,=RA27EK,=RA36GS,=RA36ZF,=RA4YW/9, - =RA4YW/9/M,=RA9FW/9,=RC18EK,=RD0B/8,=RK3AW/8,=RK9AD/9/M,=RK9DR/N,=RL20NY,=RL21NY,=RL4R/8,=RL60YG, - =RM0B/9,=RM19NY,=RN16CW,=RN3QBG/9,=RP68DT,=RP68RG,=RP68TG,=RP68TK,=RP69GR,=RP70DT,=RP70G,=RP70GB, - =RP70GR,=RP70MA,=RP70SA,=RP70UH,=RP71DT,=RP71GA,=RP71GA/M,=RP71GB,=RP71GR,=RP71LT,=RP71MO,=RP71SA, - =RP72DT,=RP72FI,=RP72GB,=RP72GR,=RP72IM,=RP72KB,=RP72SA,=RP73DT,=RP73GB,=RP73GR,=RP73IM,=RP73SA, - =RP74DT,=RP74GB,=RP74GR,=RP74IM,=RP75DT,=RP75GB,=RP75IM,=RP75MF,=RP75MLI,=RP75RGA,=RP75TT,=RP75UR, - =RP76DT,=RP76GB,=RP76OIA,=RP76PAW,=RP76RGA,=RP76UR,=RT4C/8,=RT4W/9,=RT73BR,=RT73EB,=RT73FL, - =RT73HE,=RT73KB,=RT73SK,=RU22CR,=RU5D/8,=RU5D/9,=RU9CK/M,=RV6LGY/9,=RV6LGY/9/M,=RV6LGY/9/P, - =RV6MD/9,=RV9WB/8,=RW4NX/9,=RW9C[20],=RX0SD/9,=RX3Q/8,=RX3Q/9,=RX9UL/9,=RY9C/P,=RZ1CWC/8,=RZ37ZF, - =RZ38ZF,=RZ39ZF,=UA0BA/8,=UA3FQ/8,=UA3IHJ/8,=UA4WHX/9,=UA8WAA/8,=UA9CGL/M,=UA9MW/9,=UA9UAX/8, - =UA9UAX/8/M,=UE16SR,=UE25F,=UE40CZF,=UE4NFF/9,=UE56S,=UE64RWA,=UE70SL,=UE75DT, + =RA4YW/9/M,=RA9DF/P,=RA9FW/9,=RC18EK,=RD0B/8,=RK3AW/8,=RK9AD/9/M,=RK9DR/N,=RL20NY,=RL21NY,=RL4R/8, + =RL60YG,=RM0B/9,=RM19NY,=RN16CW,=RN3QBG/9,=RP68DT,=RP68RG,=RP68TG,=RP68TK,=RP69GR,=RP70DT,=RP70G, + =RP70GB,=RP70GR,=RP70MA,=RP70SA,=RP70UH,=RP71DT,=RP71GA,=RP71GA/M,=RP71GB,=RP71GR,=RP71LT,=RP71MO, + =RP71SA,=RP72DT,=RP72FI,=RP72GB,=RP72GR,=RP72IM,=RP72KB,=RP72SA,=RP73DT,=RP73GB,=RP73GR,=RP73IM, + =RP73SA,=RP74DT,=RP74GB,=RP74GR,=RP74IM,=RP75DT,=RP75GB,=RP75IM,=RP75MF,=RP75MLI,=RP75RGA,=RP75TT, + =RP75UR,=RP76DT,=RP76GB,=RP76OIA,=RP76PAW,=RP76RGA,=RP76UR,=RT4C/8,=RT4W/9,=RT73BR,=RT73EB, + =RT73FL,=RT73HE,=RT73KB,=RT73SK,=RU21RU,=RU22CR,=RU5D/8,=RU5D/9,=RU9CK/M,=RV6LGY/9,=RV6LGY/9/M, + =RV6LGY/9/P,=RV6MD/9,=RV9WB/8,=RW4NX/9,=RW9C[20],=RX0SD/9,=RX3Q/8,=RX3Q/9,=RX9UL/9,=RY9C/P, + =RZ1CWC/8,=RZ37ZF,=RZ38ZF,=RZ39ZF,=UA0BA/8,=UA3FQ/8,=UA3IHJ/8,=UA4WHX/9,=UA8WAA/8,=UA9CGL/M, + =UA9MW/9,=UA9UAX/8,=UA9UAX/8/M,=UE16SR,=UE25F,=UE40CZF,=UE4NFF/9,=UE56S,=UE64RWA,=UE70SL,=UE75DT, R8H(18)[31],R8I(18)[31],R9H(18)[31],R9I(18)[31],RA8H(18)[31],RA8I(18)[31],RA9H(18)[31], RA9I(18)[31],RC8H(18)[31],RC8I(18)[31],RC9H(18)[31],RC9I(18)[31],RD8H(18)[31],RD8I(18)[31], RD9H(18)[31],RD9I(18)[31],RE8H(18)[31],RE8I(18)[31],RE9H(18)[31],RE9I(18)[31],RF8H(18)[31], @@ -2734,7 +2742,7 @@ Asiatic Russia: 17: 30: AS: 55.88: -84.08: -7.0: UA9: =RW4HIF/9[20],=RW4HIH/9[20],=RW6BA/9[20],=RW9XU/9[20],=RX6CP/8[20],=RX6LMA/9[20],=RX9SN/8[20], =UA0KY/9[20],=UA0QMU/0[20],=UA0QQO/9/P[20],=UA1FBP/9[20],=UA1PBA/9[20],=UA1PBP/9[20], =UA3DFM/8[20],=UA3DFM/9[20],=UA3MGA/9[20],=UA6BTN/9[20],=UA9SUV/8[20], - R18J,=R110WG,=R115AN,=R11QRP/8,=R11QRP/8/P,=R120RL,=R18POR,=R18UGRA,=R1PN/8,=R2015EP,=R2015LY, + =R110WG,=R115AN,=R11QRP/8,=R11QRP/8/P,=R120RL,=R18POR,=R18UGRA,=R1PN/8,=R2015EP,=R2015LY, =R2015LY/8,=R22BIA,=R30STM,=R430LT,=R4FAA/8,=R8MC/9,=R8MD/9,=RA/EW8ADX,=RA0UAC/8,=RA0UF/8, =RA3CW/9,=RA9JG/9,=RC1M/8/M,=RO25TN,=RO6C/8,=RO6C/8/P,=RP67JH,=RP67LK,=RP67LL,=RP67TT,=RP68LS, =RP68TT,=RP69CM,=RP69DK,=RP69GP,=RP69LK,=RP69LL,=RP69LS,=RP69MM,=RP69P,=RP69YN,=RP70GP,=RP70LL, @@ -2742,11 +2750,11 @@ Asiatic Russia: 17: 30: AS: 55.88: -84.08: -7.0: UA9: =RP74LL,=RP74P,=RP75GP,=RP75LL,=RP75P,=RP75YN,=RP76P,=RR110RAEM,=RU22LR,=RW0QJ/9,=RX4W/8,=RX6DL/8, =RX6DL/8/P,=RX6DL/8/P/QRP,=RX6DL/9/P,=RZ9MXM/9/M,=UB5O/8/P,=UE44Y/8,=UE9FDA/9/M,=UE9MDA/9, =R16CAN,=R1716K,=R1716M,=R1716O,=R1716S,=R21HNY,=R30MDXC,=R9MJ/M,=RA/DK2AI/M,=RA22MX,=RA4CQ/9/M, - =RA9MR/0,=RA9MX/P,=RC20MX,=RG78ML,=RK6YYA/9,=RN0SZ/9,=RN9N/9,=RN9N/M,=RP65MOH,=RP67MC,=RP67MD, - =RP68MC,=RP68MD,=RP69MC,=RP69MD,=RP70GK,=RP70MC,=RP70MD,=RP70OB,=RP70OF,=RP70OS,=RP71GK,=RP71MJ, - =RP71OB,=RP72GK,=RP72MJ,=RP72OB,=RP72ZW,=RP73GK,=RP73OB,=RP74PO,=RP75GK,=RP8M,=RT22MC,=RT22MD, - =RU20NY,=RU20RU,=RV0SR/9,=RW22MW,=RY22MC,=RZ5D/9,=UA1ZGD/9,=UA3AKO/9,=UA9MA/M,=UA9UAX/M,=UB5O/9, - =UE55OM,=UE70KRM/9,=UE70KRM/9/M,=UE9OFF/9, + =RA9MR/0,=RA9MX/P,=RC20MX,=RG78ML,=RK6YYA/9,=RN0SZ/9,=RN9N/9,=RP65MOH,=RP67MC,=RP67MD,=RP68MC, + =RP68MD,=RP69MC,=RP69MD,=RP70GK,=RP70MC,=RP70MD,=RP70OB,=RP70OF,=RP70OS,=RP71GK,=RP71MJ,=RP71OB, + =RP72GK,=RP72MJ,=RP72OB,=RP72ZW,=RP73GK,=RP73OB,=RP74PO,=RP75GK,=RP8M,=RT22MC,=RT22MD,=RU20NY, + =RU20RU,=RV0SR/9,=RW22MW,=RY22MC,=RZ5D/9,=UA1ZGD/9,=UA3AKO/9,=UA9MA/M,=UA9UAX/M,=UB5O/9,=UE55OM, + =UE70KRM/9,=UE70KRM/9/M,=UE9OFF/9, R8O(18)[31],R8P(18)[31],R9O(18)[31],R9P(18)[31],RA8O(18)[31],RA8P(18)[31],RA9O(18)[31], RA9P(18)[31],RC8O(18)[31],RC8P(18)[31],RC9O(18)[31],RC9P(18)[31],RD8O(18)[31],RD8P(18)[31], RD9O(18)[31],RD9P(18)[31],RE8O(18)[31],RE8P(18)[31],RE9O(18)[31],RE9P(18)[31],RF8O(18)[31], @@ -2801,10 +2809,11 @@ Asiatic Russia: 17: 30: AS: 55.88: -84.08: -7.0: UA9: =RN3GW/8(16),=RN3GW/8/QRP(16),=RN3GW/9(16),=RN3GW/9/QRP(16),=RN3QOP/4/M(16),=RN3QOP/9(16), =RN9S(16),=RN9SM/P(16),=RN9WWW/9(16),=RO9S(16),=RP65TT(16),=RP68GR(16),=RP69NB(16),=RP71TK(16), =RP75TS(16),=RP9SBO(16),=RP9SBR(16),=RP9SNK(16),=RT22TK(16),=RT73OA(16),=RT8T(16),=RT9S(16), - =RT9T(16),=RU22TU(16),=RV1CC/4/M(16),=RV9WGF/4/M(16),=RV9WMZ/9/M(16),=RW4PJZ/9(16), + =RT9T(16),=RU22TU(16),=RU9SO/M(16),=RV1CC/4/M(16),=RV9WGF/4/M(16),=RV9WMZ/9/M(16),=RW4PJZ/9(16), =RW4PJZ/9/M(16),=RW4PP/9(16),=RW9WA/9(16),=RW9WA/9/M(16),=RY4W/9(16),=RZ4HZW/9/M(16), =UA0AGA/9/P(16),=UA0KBA/9(16),=UA3WB/9(16),=UA4LCQ/9(16),=UA9SIV/9(16),=UB5O/4(16), =UB9JBN/9/M(16),=UE1RFF/9(16),=UE25ST(16),=UE55OB(16),=UE60TDP(16),=UE60TDP/P(16),=UE9WDA/9/M(16), + =UG4I/P(16), R8U(18)[31],R8V(18)[31],R9U(18)[31],R9V(18)[31],RA8U(18)[31],RA8V(18)[31],RA9U(18)[31], RA9V(18)[31],RC8U(18)[31],RC8V(18)[31],RC9U(18)[31],RC9V(18)[31],RD8U(18)[31],RD8V(18)[31], RD9U(18)[31],RD9V(18)[31],RE8U(18)[31],RE8V(18)[31],RE9U(18)[31],RE9V(18)[31],RF8U(18)[31], @@ -2823,41 +2832,42 @@ Asiatic Russia: 17: 30: AS: 55.88: -84.08: -7.0: UA9: UE8V(18)[31],UE9U(18)[31],UE9V(18)[31],UF8U(18)[31],UF8V(18)[31],UF9U(18)[31],UF9V(18)[31], UG8U(18)[31],UG8V(18)[31],UG9U(18)[31],UG9V(18)[31],UH8U(18)[31],UH8V(18)[31],UH9U(18)[31], UH9V(18)[31],UI8U(18)[31],UI8V(18)[31],UI9U(18)[31],UI9V(18)[31],=R10NRC(18)[31],=R22ULM(18)[31], - =R2SD/9(18)[31],=R400N(18)[31],=R70B(18)[31],=R9/EW1TM(18)[31],=R9UAG/N(18)[31],=RA30KR(18)[31], - =RA4CQ/9(18)[31],=RAEM(18)[31],=RC4W/9(18)[31],=RK6CG/9(18)[31],=RN30KR(18)[31],=RP65UMF(18)[31], - =RP67KM(18)[31],=RP68KM(18)[31],=RP69KM(18)[31],=RP70KM(18)[31],=RP70NM(18)[31],=RP70UK(18)[31], - =RP70ZF(18)[31],=RP71KM(18)[31],=RP72KM(18)[31],=RP72NM(18)[31],=RP73KM(18)[31],=RP73NZ(18)[31], - =RP73ZF(18)[31],=RP74KM(18)[31],=RP75KM(18)[31],=RP75YE(18)[31],=RP76KM(18)[31],=RP76KUF(18)[31], - =RT22UA(18)[31],=RT77VV(18)[31],=RW0CE/9(18)[31],=RW4CG/9(18)[31],=UA9JFE/9/P(18)[31], - =UE3ATV/9(18)[31], + =R2SD/9(18)[31],=R400N(18)[31],=R5QA/P(18)[31],=R70B(18)[31],=R9/EW1TM(18)[31],=R9UAG/N(18)[31], + =RA30KR(18)[31],=RA4CQ/9(18)[31],=RAEM(18)[31],=RC4W/9(18)[31],=RK6CG/9(18)[31],=RN30KR(18)[31], + =RP65UMF(18)[31],=RP67KM(18)[31],=RP68KM(18)[31],=RP69KM(18)[31],=RP70KM(18)[31],=RP70NM(18)[31], + =RP70UK(18)[31],=RP70ZF(18)[31],=RP71KM(18)[31],=RP72KM(18)[31],=RP72NM(18)[31],=RP73KM(18)[31], + =RP73NZ(18)[31],=RP73ZF(18)[31],=RP74KM(18)[31],=RP75KM(18)[31],=RP75YE(18)[31],=RP76KM(18)[31], + =RP76KUF(18)[31],=RT22UA(18)[31],=RT77VV(18)[31],=RW0CE/9(18)[31],=RW4CG/9(18)[31], + =UA9JFE/9/P(18)[31],=UE3ATV/9(18)[31],=UE90AS(18)[31], R8W(16),R9W(16),RA8W(16),RA9W(16),RC8W(16),RC9W(16),RD8W(16),RD9W(16),RE8W(16),RE9W(16),RF8W(16), RF9W(16),RG8W(16),RG9W(16),RJ8W(16),RJ9W(16),RK8W(16),RK9W(16),RL8W(16),RL9W(16),RM8W(16), RM9W(16),RN8W(16),RN9W(16),RO8W(16),RO9W(16),RQ8W(16),RQ9W(16),RT8W(16),RT9W(16),RU8W(16), RU9W(16),RV8W(16),RV9W(16),RW8W(16),RW9W(16),RX8W(16),RX9W(16),RY8W(16),RY9W(16),RZ8W(16), RZ9W(16),U8W(16),U9W(16),UA8W(16),UA9W(16),UB8W(16),UB9W(16),UC8W(16),UC9W(16),UD8W(16),UD9W(16), UE8W(16),UE9W(16),UF8W(16),UF9W(16),UG8W(16),UG9W(16),UH8W(16),UH9W(16),UI8W(16),UI9W(16), - =R05SOTA(16),=R100W(16),=R10RTRS/9(16),=R18KDR/4(16),=R2013CG(16),=R2015AS(16),=R2015DS(16), - =R2015KM(16),=R2017F/P(16),=R2019CG(16),=R20BIS(16),=R20UFA(16),=R25ARCK/4(16),=R25MSB(16), - =R25WPW(16),=R27UFA(16),=R3XX/9(16),=R44WFF(16),=R53ICGA(16),=R53ICGB(16),=R53ICGC(16), - =R53ICGF(16),=R53ICGJ(16),=R53ICGS(16),=R53ICGV(16),=R53ICGW(16),=R7378TM(16),=R8JAJ/4(16), - =R8JAJ/4/P(16),=R8JAJ/9(16),=R90WGM(16),=R90WJV(16),=R90WOB(16),=R90WXK(16),=R9LY/4(16), - =RA0R/4(16),=RA1ZPC/9(16),=RA3AUU/9(16),=RA4POX/9(16),=RA8JA/4(16),=RA8JA/4/P(16),=RA9DF/4/M(16), - =RA9KDX/8/M(16),=RA9WU/9(16),=RF9W(16),=RG5A/8(16),=RK3PWJ/9(16),=RK6YYA/9/M(16),=RK9KWI/9(16), - =RK9KWI/9/P(16),=RL3DX/9(16),=RM90WF(16),=RM9RZ/9/P(16),=RN9S/M(16),=RN9WWW/9/M(16),=RN9WWW/P(16), - =RO17CW(16),=RO30KR(16),=RP67GI(16),=RP67MG(16),=RP67NG(16),=RP67RK(16),=RP67SW(16),=RP67UF(16), - =RP68GM(16),=RP68NK(16),=RP68UF(16),=RP69GI(16),=RP69PW(16),=RP69UF(16),=RP70GI(16),=RP70GM(16), - =RP70LS(16),=RP70NK(16),=RP70UF(16),=RP70ZO(16),=RP71GI(16),=RP71GM(16),=RP71UF(16),=RP72AR(16), - =RP72GI(16),=RP72GM(16),=RP72UF(16),=RP72WU(16),=RP73AR(16),=RP73GI(16),=RP73UF(16),=RP73WU(16), - =RP74GI(16),=RP74UF(16),=RP75DM(16),=RP75GI(16),=RP75MGI(16),=RP75UF(16),=RP75VAM(16),=RP75WU(16), - =RP76GI(16),=RP76UF(16),=RP76WAO(16),=RP76WU(16),=RT22WF(16),=RT2F/4(16),=RT2F/4/M(16), - =RT2F/9/M(16),=RT73EA(16),=RT73EL(16),=RT8A/4(16),=RT9W(16),=RT9W/P(16),=RU110RAEM(16), - =RU20WC(16),=RU22WZ(16),=RU27WB(16),=RU27WF(16),=RU27WN(16),=RU27WO(16),=RU3HD/9/P(16), - =RU90WZ(16),=RU9CK/4/M(16),=RU9KC/4/M(16),=RU9SO/4(16),=RU9SO/4/P(16),=RV22WB(16),=RV2FZ/9(16), - =RV90WB(16),=RV9CHB/4(16),=RV9CX/4/M(16),=RV9WB/M(16),=RW3SN/9(16),=RW3XX/9(16),=RW4WA/9/P(16), - =RW90WC(16),=RW95WJ(16),=RW9FWR/9/M(16),=RW9JZ/4(16),=RW9JZ/9(16),=RX22WN(16),=RX95WN(16), - =RZ16WF(16),=RZ90W(16),=RZ90WU(16),=UA0AZA/9(16),=UA1AAE/9(16),=UA1ZPC/9(16),=UA4LU/9/P(16), - =UA4PIE/9(16),=UA4PIE/9/M(16),=UA4PIE/9/P(16),=UA4PJM/9(16),=UA4PJM/9/M(16),=UA4PJM/9/P(16), - =UA4PXR/9/M(16),=UA9KAA/4(16),=UA9KAA/9(16),=UB5O/4/M(16),=UB8S/P(16),=UE10RFF/4(16),=UE90W(16), + =R05SOTA(16),=R100W(16),=R10RTRS/9(16),=R18KDR/4(16),=R1BIP/9(16),=R2013CG(16),=R2015AS(16), + =R2015DS(16),=R2015KM(16),=R2017F/P(16),=R2019CG(16),=R20BIS(16),=R20UFA(16),=R25ARCK/4(16), + =R25MSB(16),=R25WPW(16),=R27UFA(16),=R3XX/9(16),=R44WFF(16),=R53ICGA(16),=R53ICGB(16), + =R53ICGC(16),=R53ICGF(16),=R53ICGJ(16),=R53ICGS(16),=R53ICGV(16),=R53ICGW(16),=R7378TM(16), + =R8JAJ/4(16),=R8JAJ/4/P(16),=R8JAJ/9(16),=R90WGM(16),=R90WJV(16),=R90WOB(16),=R90WXK(16), + =R9LY/4(16),=RA0R/4(16),=RA1ZPC/9(16),=RA3AUU/9(16),=RA4POX/9(16),=RA8JA/4(16),=RA8JA/4/P(16), + =RA9DF/4/M(16),=RA9KDX/8/M(16),=RA9WU/9(16),=RF9W(16),=RG5A/8(16),=RK3PWJ/9(16),=RK6YYA/9/M(16), + =RK9KWI/9(16),=RK9KWI/9/P(16),=RL3DX/9(16),=RM90WF(16),=RM9RZ/9/P(16),=RN9S/M(16),=RN9WWW/9/M(16), + =RN9WWW/P(16),=RO17CW(16),=RO30KR(16),=RP67GI(16),=RP67MG(16),=RP67NG(16),=RP67RK(16),=RP67SW(16), + =RP67UF(16),=RP68GM(16),=RP68NK(16),=RP68UF(16),=RP69GI(16),=RP69PW(16),=RP69UF(16),=RP70GI(16), + =RP70GM(16),=RP70LS(16),=RP70NK(16),=RP70UF(16),=RP70ZO(16),=RP71GI(16),=RP71GM(16),=RP71UF(16), + =RP72AR(16),=RP72GI(16),=RP72GM(16),=RP72UF(16),=RP72WU(16),=RP73AR(16),=RP73GI(16),=RP73UF(16), + =RP73WU(16),=RP74GI(16),=RP74UF(16),=RP75DM(16),=RP75GI(16),=RP75MGI(16),=RP75UF(16),=RP75VAM(16), + =RP75WU(16),=RP76GI(16),=RP76UF(16),=RP76WAO(16),=RP76WU(16),=RT22WF(16),=RT2F/4(16), + =RT2F/4/M(16),=RT2F/9/M(16),=RT73EA(16),=RT73EL(16),=RT8A/4(16),=RT9W(16),=RT9W/P(16), + =RU110RAEM(16),=RU20WC(16),=RU22WZ(16),=RU27WB(16),=RU27WF(16),=RU27WN(16),=RU27WO(16), + =RU3HD/9/P(16),=RU90WZ(16),=RU9CK/4/M(16),=RU9KC/4/M(16),=RU9SO/4(16),=RU9SO/4/P(16),=RV22WB(16), + =RV2FZ/9(16),=RV90WB(16),=RV9CHB/4(16),=RV9CX/4/M(16),=RV9WB/M(16),=RW3SN/9(16),=RW3XX/9(16), + =RW4WA/9/P(16),=RW90WC(16),=RW95WJ(16),=RW9FWR/9/M(16),=RW9JZ/4(16),=RW9JZ/9(16),=RX22WN(16), + =RX95WN(16),=RZ16WF(16),=RZ90W(16),=RZ90WU(16),=UA0AZA/9(16),=UA1AAE/9(16),=UA1ZPC/9(16), + =UA4LU/9/P(16),=UA4PIE/9(16),=UA4PIE/9/M(16),=UA4PIE/9/P(16),=UA4PJM/9(16),=UA4PJM/9/M(16), + =UA4PJM/9/P(16),=UA4PXR/9/M(16),=UA9KAA/4(16),=UA9KAA/9(16),=UB5O/4/M(16),=UE10RFF/4(16), + =UE90W(16), R8Y(18)[31],R9Y(18)[31],RA8Y(18)[31],RA9Y(18)[31],RC8Y(18)[31],RC9Y(18)[31],RD8Y(18)[31], RD9Y(18)[31],RE8Y(18)[31],RE9Y(18)[31],RF8Y(18)[31],RF9Y(18)[31],RG8Y(18)[31],RG9Y(18)[31], RJ8Y(18)[31],RJ9Y(18)[31],RK8Y(18)[31],RK9Y(18)[31],RL8Y(18)[31],RL9Y(18)[31],RM8Y(18)[31], @@ -2867,13 +2877,13 @@ Asiatic Russia: 17: 30: AS: 55.88: -84.08: -7.0: UA9: U8Y(18)[31],U9Y(18)[31],UA8Y(18)[31],UA9Y(18)[31],UB8Y(18)[31],UB9Y(18)[31],UC8Y(18)[31], UC9Y(18)[31],UD8Y(18)[31],UD9Y(18)[31],UE8Y(18)[31],UE9Y(18)[31],UF8Y(18)[31],UF9Y(18)[31], UG8Y(18)[31],UG9Y(18)[31],UH8Y(18)[31],UH9Y(18)[31],UI8Y(18)[31],UI9Y(18)[31],=R100KM(18)[31], - =R2015RR(18)[31],=R2015SV(18)[31],=R6XBA/9(18)[31],=R9/UN7JHC(18)[31],=R9/UN7JMO(18)[31], - =R9PS/9(18)[31],=RA/IK5MIC(18)[31],=RA/IK5MIC/M(18)[31],=RA0CCJ/9(18)[31],=RA50VT(18)[31], - =RJ30KR(18)[31],=RK1B/9(18)[31],=RL30KR(18)[31],=RP68BP(18)[31],=RP68TZ(18)[31],=RP70AF(18)[31], - =RP70BP(18)[31],=RP70GA(18)[31],=RP71BP(18)[31],=RP72BP(18)[31],=RP73BP(18)[31],=RP9Y(18)[31], - =RP9YAF(18)[31],=RP9YTZ(18)[31],=RQ1A(18)[31],=RT73GM(18)[31],=RW22WG(18)[31],=RX6AY/9(18)[31], - =UA0LLW/9(18)[31],=UA0ZDY/9(18)[31],=UA9UAX/9/P(18)[31],=UE0ZOO/9(18)[31],=UE44R/9(18)[31], - =UE80AL(18)[31], + =R2015RR(18)[31],=R2015SV(18)[31],=R5QA/9(18)[31],=R6XBA/9(18)[31],=R9/UN7JHC(18)[31], + =R9/UN7JMO(18)[31],=R9PS/9(18)[31],=RA/IK5MIC(18)[31],=RA/IK5MIC/M(18)[31],=RA0CCJ/9(18)[31], + =RA50VT(18)[31],=RJ30KR(18)[31],=RK1B/9(18)[31],=RL30KR(18)[31],=RP68BP(18)[31],=RP68TZ(18)[31], + =RP70AF(18)[31],=RP70BP(18)[31],=RP70GA(18)[31],=RP71BP(18)[31],=RP72BP(18)[31],=RP73BP(18)[31], + =RP9Y(18)[31],=RP9YAF(18)[31],=RP9YTZ(18)[31],=RQ1A(18)[31],=RT73GM(18)[31],=RW22WG(18)[31], + =RX6AY/9(18)[31],=UA0LLW/9(18)[31],=UA0ZDY/9(18)[31],=UA9UAX/9/P(18)[31],=UE0ZOO/9(18)[31], + =UE44R/9(18)[31],=UE80AL(18)[31], R8Z(18)[31],R9Z(18)[31],RA8Z(18)[31],RA9Z(18)[31],RC8Z(18)[31],RC9Z(18)[31],RD8Z(18)[31], RD9Z(18)[31],RE8Z(18)[31],RE9Z(18)[31],RF8Z(18)[31],RF9Z(18)[31],RG8Z(18)[31],RG9Z(18)[31], RJ8Z(18)[31],RJ9Z(18)[31],RK8Z(18)[31],RK9Z(18)[31],RL8Z(18)[31],RL9Z(18)[31],RM8Z(18)[31], @@ -2882,7 +2892,7 @@ Asiatic Russia: 17: 30: AS: 55.88: -84.08: -7.0: UA9: RW9Z(18)[31],RX8Z(18)[31],RX9Z(18)[31],RY8Z(18)[31],RY9Z(18)[31],RZ8Z(18)[31],RZ9Z(18)[31], U8Z(18)[31],U9Z(18)[31],UA8Z(18)[31],UA9Z(18)[31],UB8Z(18)[31],UB9Z(18)[31],UC8Z(18)[31], UC9Z(18)[31],UD8Z(18)[31],UD9Z(18)[31],UE8Z(18)[31],UE9Z(18)[31],UF8Z(18)[31],UF9Z(18)[31], - UG8Z(18)[31],UG9Z(18)[31],UH8Z(18)[31],UH9Z(18)[31],UI8Z(18)[31],UI9Z(18)[31], + UG8Z(18)[31],UG9Z(18)[31],UH8Z(18)[31],UH9Z(18)[31],UI8Z(18)[31],UI9Z(18)[31],=R5QA/M(18)[31], =RA/IK5MIC/P(18)[31],=RA3DS/P(18)[31],=RC9YA/9/M(18)[31],=RW9MD/9/P(18)[31],=UA0KBG/9/P(18)[31], =UA9MAC/9(18)[31], R0A(18)[32],R0B(18)[32],R0H(18)[32],RA0A(18)[32],RA0B(18)[32],RA0H(18)[32],RC0A(18)[32], @@ -2983,18 +2993,18 @@ Asiatic Russia: 17: 30: AS: 55.88: -84.08: -7.0: UA9: UF0N(19)[34],UG0L(19)[34],UG0M(19)[34],UG0N(19)[34],UH0L(19)[34],UH0M(19)[34],UH0N(19)[34], UI0L(19)[34],UI0M(19)[34],UI0N(19)[34],=R150L(19)[34],=R17CWH(19)[34],=R20RRC/0(19)[34], =R3BY/0(19)[34],=R3HD/0(19)[34],=R66IOTA(19)[34],=R70LWA(19)[34],=R8CW/0(19)[34],=R8XW/0(19)[34], - =R9MI/0(19)[34],=R9XT/0(19)[34],=RA/IK7YTT(19)[34],=RA/OK1DWF(19)[34],=RD3ARD/0(19)[34], - =RD3BN/0(19)[34],=RL5G/0/P(19)[34],=RM0M(19)[34],=RM0M/LH(19)[34],=RM5M/0(19)[34], - =RN1NS/0(19)[34],=RP0L(19)[34],=RP0LPK(19)[34],=RP60P(19)[34],=RP66V(19)[34],=RP67SD(19)[34], - =RP67V(19)[34],=RP68SD(19)[34],=RP68V(19)[34],=RP69SD(19)[34],=RP69V(19)[34],=RP70DG(19)[34], - =RP70SD(19)[34],=RP70V(19)[34],=RP71DG(19)[34],=RP71SD(19)[34],=RP71V(19)[34],=RP72DG(19)[34], - =RP72SD(19)[34],=RP72V(19)[34],=RP73DG(19)[34],=RP73SD(19)[34],=RP73V(19)[34],=RP74DG(19)[34], - =RP74SD(19)[34],=RP74V(19)[34],=RP75DG(19)[34],=RP75SD(19)[34],=RP75V(19)[34],=RP76DG(19)[34], - =RP76V(19)[34],=RU3BY/0(19)[34],=RU5D/0(19)[34],=RV1AW/0(19)[34],=RV3DSA/0(19)[34], - =RW22GO(19)[34],=RW3LG/0(19)[34],=RX15RX(19)[34],=RX20NY(19)[34],=RX21NY(19)[34],=RX30DX(19)[34], - =RX60YG(19)[34],=UA0SDX/0(19)[34],=UA0SIK/0(19)[34],=UA3AHA/0(19)[34],=UA4SBZ/0(19)[34], - =UA6MF/0(19)[34],=UA7R/0(19)[34],=UB0LAP/P(19)[34],=UC0LAF/P(19)[34],=UE1RFF/0(19)[34], - =UE70MA(19)[34],=UE75L(19)[34], + =R9MI/0(19)[34],=R9XT/0(19)[34],=RA/IK7YTT(19)[34],=RA/OK1DWF(19)[34],=RA6KE/0(19)[34], + =RD3ARD/0(19)[34],=RD3BN/0(19)[34],=RL5G/0/P(19)[34],=RM0M(19)[34],=RM0M/LH(19)[34], + =RM5M/0(19)[34],=RN1NS/0(19)[34],=RP0L(19)[34],=RP0LPK(19)[34],=RP60P(19)[34],=RP66V(19)[34], + =RP67SD(19)[34],=RP67V(19)[34],=RP68SD(19)[34],=RP68V(19)[34],=RP69SD(19)[34],=RP69V(19)[34], + =RP70DG(19)[34],=RP70SD(19)[34],=RP70V(19)[34],=RP71DG(19)[34],=RP71SD(19)[34],=RP71V(19)[34], + =RP72DG(19)[34],=RP72SD(19)[34],=RP72V(19)[34],=RP73DG(19)[34],=RP73SD(19)[34],=RP73V(19)[34], + =RP74DG(19)[34],=RP74SD(19)[34],=RP74V(19)[34],=RP75DG(19)[34],=RP75SD(19)[34],=RP75V(19)[34], + =RP76DG(19)[34],=RP76V(19)[34],=RU3BY/0(19)[34],=RU5D/0(19)[34],=RV1AW/0(19)[34], + =RV3DSA/0(19)[34],=RW22GO(19)[34],=RW3LG/0(19)[34],=RX15RX(19)[34],=RX20NY(19)[34], + =RX21NY(19)[34],=RX30DX(19)[34],=RX60YG(19)[34],=UA0SDX/0(19)[34],=UA0SIK/0(19)[34], + =UA3AHA/0(19)[34],=UA4SBZ/0(19)[34],=UA6MF/0(19)[34],=UA7R/0(19)[34],=UB0LAP/P(19)[34], + =UC0LAF/P(19)[34],=UE1RFF/0(19)[34],=UE70MA(19)[34],=UE75L(19)[34], R0O(18)[32],RA0O(18)[32],RC0O(18)[32],RD0O(18)[32],RE0O(18)[32],RF0O(18)[32],RG0O(18)[32], RJ0O(18)[32],RK0O(18)[32],RL0O(18)[32],RM0O(18)[32],RN0O(18)[32],RO0O(18)[32],RQ0O(18)[32], RT0O(18)[32],RU0O(18)[32],RV0O(18)[32],RW0O(18)[32],RX0O(18)[32],RY0O(18)[32],RZ0O(18)[32], @@ -3046,16 +3056,18 @@ Asiatic Russia: 17: 30: AS: 55.88: -84.08: -7.0: UA9: UG0W(18)[31],UH0W(18)[31],UI0W(18)[31],=R01DTV/9(18)[31],=R10RTRS/0(18)[31],=R3YAB/9/P(18)[31], =RA0AM/0(18)[31],=RP0W(18)[31],=RP0W/P(18)[31],=RP0WWS(18)[31],=RP70SL(18)[31],=RP72SL(18)[31], =RV0AE/0/FF(18)[31],=RZ0AM/0(18)[31],=RZ22WW(18)[31],=UA0FCB/P(18)[31],=UA9UAX/0/M(18)[31], - =UE0ARD/0(18)[31],=UE10RFF/9(18)[31],=UE1RFF/0/P(18)[31],=UE9FDA/0(18)[31],=UE9FDA/0/M(18)[31], + =UB5O/M(18)[31],=UE0ARD/0(18)[31],=UE10RFF/9(18)[31],=UE1RFF/0/P(18)[31],=UE9FDA/0(18)[31], + =UE9FDA/0/M(18)[31], =R205NEW(19)[25],=R23RRC(19)[25],=UA6HMC/0(19)[25], R0Y(23)[32],RA0Y(23)[32],RC0Y(23)[32],RD0Y(23)[32],RE0Y(23)[32],RF0Y(23)[32],RG0Y(23)[32], RJ0Y(23)[32],RK0Y(23)[32],RL0Y(23)[32],RM0Y(23)[32],RN0Y(23)[32],RO0Y(23)[32],RQ0Y(23)[32], RT0Y(23)[32],RU0Y(23)[32],RV0Y(23)[32],RW0Y(23)[32],RX0Y(23)[32],RY0Y(23)[32],RZ0Y(23)[32], U0Y(23)[32],UA0Y(23)[32],UB0Y(23)[32],UC0Y(23)[32],UD0Y(23)[32],UE0Y(23)[32],UF0Y(23)[32], UG0Y(23)[32],UH0Y(23)[32],UI0Y(23)[32],=R0WX/P(23)[32],=R8MZ/0(23)[32],=R9OOO/9/M(23)[32], - =R9OOO/9/P(23)[32],=R9OY/9/P(23)[32],=RA0AJ/0/P(23)[32],=RA0WA/0/P(23)[32],=RA9YME/0(23)[32], - =RK3BY/0(23)[32],=RP0Y(23)[32],=RX0AE/0(23)[32],=RX0AT/0/P(23)[32],=UA0ADU/0(23)[32], - =UA0WGD/0(23)[32],=UA9ZZ/0/P(23)[32],=UE0OFF/0(23)[32],=UE44Y/9(23)[32],=UE70Y(23)[32], + =R9OOO/9/P(23)[32],=R9OY/9/P(23)[32],=R9YU/M(23)[32],=R9YU/P(23)[32],=RA0AJ/0/P(23)[32], + =RA0WA/0/P(23)[32],=RA9YME/0(23)[32],=RK3BY/0(23)[32],=RP0Y(23)[32],=RX0AE/0(23)[32], + =RX0AT/0/P(23)[32],=UA0ADU/0(23)[32],=UA0WGD/0(23)[32],=UA9ZZ/0/P(23)[32],=UE0OFF/0(23)[32], + =UE44Y/9(23)[32],=UE70Y(23)[32], R0X(19)[35],R0Z(19)[35],RA0X(19)[35],RA0Z(19)[35],RC0X(19)[35],RC0Z(19)[35],RD0X(19)[35], RD0Z(19)[35],RE0X(19)[35],RE0Z(19)[35],RF0X(19)[35],RF0Z(19)[35],RG0X(19)[35],RG0Z(19)[35], RI0X(19)[35],RI0Z(19)[35],RJ0X(19)[35],RJ0Z(19)[35],RK0X(19)[35],RK0Z(19)[35],RL0X(19)[35], @@ -3141,7 +3153,7 @@ Marshall Islands: 31: 65: OC: 9.08: -167.33: -12.0: V7: Brunei Darussalam: 28: 54: OC: 4.50: -114.60: -8.0: V8: V8; Canada: 05: 09: NA: 44.35: 78.75: 5.0: VE: - CF,CG,CJ,CK,VA,VB,VC,VE,VG,VX,VY9,XL,XM,=VE2EM/M,=VER20210526, + CF,CG,CJ,CK,VA,VB,VC,VE,VG,VX,VY9,XL,XM,=VE2EM/M,=VER20210622, =CF7AAW/1,=CK7IG/1,=VA3QSL/1,=VA3WR/1,=VE1REC/LH,=VE1REC/M/LH,=VE3RSA/1,=VE7IG/1, CF2[4],CG2[4],CJ2[4],CK2[4],VA2[4],VB2[4],VC2[4],VE2[4],VG2[4],VX2[4],XL2[4],XM2[4],=4Y1CAO[4], =CY2ZT/2[4],=VA3MPM/2[4],=VA7AQ/P[4],=VE2/G3ZAY/P[4],=VE2/M0BLF/P[4],=VE2FK[9],=VE2HAY/P[4], @@ -3272,7 +3284,7 @@ South Sandwich Islands: 13: 73: SA: -58.43: 26.33: 2.0: VP8/s: Bermuda: 05: 11: NA: 32.32: 64.73: 4.0: VP9: VP9,=VP400BO,=VP9400/HW; Chagos Islands: 39: 41: AF: -7.32: -72.42: -6.0: VQ9: - VQ9,=VERSION; + VQ9; Hong Kong: 24: 44: AS: 22.28: -114.18: -8.0: VR: VR; India: 22: 41: AS: 22.50: -77.58: -5.5: VU: From c40475953c1946f15158302708485f4e4a8b8efc Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Tue, 22 Jun 2021 18:51:57 +0100 Subject: [PATCH 30/45] Preparation for a v2.5.0 RC2 --- Release_Notes.txt | 4 ++++ map65/main.cpp | 2 +- widgets/mainwindow.cpp | 3 +-- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/Release_Notes.txt b/Release_Notes.txt index 8e3999553..99b497426 100644 --- a/Release_Notes.txt +++ b/Release_Notes.txt @@ -12,6 +12,10 @@ Copyright 2001 - 2021 by Joe Taylor, K1JT. + Release: WSJT-X 2.5.0-rc2 + Jun 28, 2021 + ------------------------- + Release: WSJT-X 2.5.0-rc1 Jun 3, 2021 ------------------------- diff --git a/map65/main.cpp b/map65/main.cpp index 918f64b43..fb910a116 100644 --- a/map65/main.cpp +++ b/map65/main.cpp @@ -19,7 +19,7 @@ int main(int argc, char *argv[]) QApplication a {argc, argv}; // Override programs executable basename as application name. a.setApplicationName ("MAP65"); - a.setApplicationVersion ("3.0.0-devel"); + a.setApplicationVersion ("3.0.0-rc2"); // switch off as we share an Info.plist file with WSJT-X a.setAttribute (Qt::AA_DontUseNativeMenuBar); MainWindow w; diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 7958b79ce..dfc8cf2b2 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -1028,7 +1028,7 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, void MainWindow::not_GA_warning_message () { - /* + MessageBox::critical_message (this, "This is a pre-release version of WSJT-X 2.5.0 made\n" "available for testing purposes. By design it will\n" @@ -1037,7 +1037,6 @@ void MainWindow::not_GA_warning_message () if (now >= QDateTime {{2021, 8, 31}, {23, 59, 59, 999}, Qt::UTC}) { Q_EMIT finished (); } - */ } void MainWindow::initialize_fonts () From e92cf06267edb7ef0956856e6216120baf5e5a7d Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Wed, 23 Jun 2021 08:02:23 -0400 Subject: [PATCH 31/45] Fix wideband_sync to work also with single-polarization data. --- map65/libm65/wideband_sync.f90 | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/map65/libm65/wideband_sync.f90 b/map65/libm65/wideband_sync.f90 index 352d985fc..65b5074ce 100644 --- a/map65/libm65/wideband_sync.f90 +++ b/map65/libm65/wideband_sync.f90 @@ -59,7 +59,6 @@ call wb_sync(ss,savg,xpol,jz,nfa,nfb) n=indx(iz+1-i) + ia - 1 f0=0.001*(n-1)*df3 snr1=sync(n)%ccfmax -! print*,'=A',f0,snr1 if(snr1.lt.SNR1_THRESHOLD) exit flip=sync(n)%iflip if(flip.ne.0.0 .and. nts_jt65.eq.0) cycle @@ -177,9 +176,10 @@ subroutine wb_sync(ss,savg,xpol,jz,nfa,nfb) ccf4=0. do j=1,22 !Test for Q65 sync k=isync(j) + lag - ccf4=ccf4 + ss(1:npol,k,i+1) + ss(1:npol,k+1,i+1) + ss(1:npol,k+2,i+1) + ccf4(1:npol)=ccf4(1:npol) + ss(1:npol,k,i+1) + & + ss(1:npol,k+1,i+1) + ss(1:npol,k+2,i+1) enddo - ccf4=ccf4 - savg(1:npol,i+1)*3*22/float(jz) + ccf4(1:npol)=ccf4(1:npol) - savg(1:npol,i+1)*3*22/float(jz) ccf=maxval(ccf4) ip=maxloc(ccf4) ipol=ip(1) @@ -195,9 +195,9 @@ subroutine wb_sync(ss,savg,xpol,jz,nfa,nfb) ccf4=0. do j=1,63 !Test for JT65 sync, std msg k=jsync0(j) + lag - ccf4=ccf4 + ss(1:npol,k,i+1) + ss(1:npol,k+1,i+1) + ccf4(1:npol)=ccf4(1:npol) + ss(1:npol,k,i+1) + ss(1:npol,k+1,i+1) enddo - ccf4=ccf4 - savg(1:npol,i+1)*2*63/float(jz) + ccf4(1:npol)=ccf4(1:npol) - savg(1:npol,i+1)*2*63/float(jz) ccf=maxval(ccf4) ip=maxloc(ccf4) ipol=ip(1) @@ -213,9 +213,9 @@ subroutine wb_sync(ss,savg,xpol,jz,nfa,nfb) ccf4=0. do j=1,63 !Test for JT65 sync, OOO msg k=jsync1(j) + lag - ccf4=ccf4 + ss(1:npol,k,i+1) + ss(1:npol,k+1,i+1) + ccf4(1:npol)=ccf4(1:npol) + ss(1:npol,k,i+1) + ss(1:npol,k+1,i+1) enddo - ccf4=ccf4 - savg(1:npol,i+1)*2*63/float(jz) + ccf4(1:npol)=ccf4(1:npol) - savg(1:npol,i+1)*2*63/float(jz) ccf=maxval(ccf4) ip=maxloc(ccf4) ipol=ip(1) @@ -241,11 +241,11 @@ subroutine wb_sync(ss,savg,xpol,jz,nfa,nfb) sync(i)%iflip=flip sync(i)%birdie=.false. if(ccfmax/(savg(ipolbest,i)/savg_med(ipolbest)).lt.3.0) sync(i)%birdie=.true. - if(sync(i)%iflip.eq.0 .and. sync(i)%ccfmax .gt. 20.0) then - write(50,3050) i,lagbest,sync(i)%ccfmax,sync(i)%xdt,sync(i)%ipol, & - sync(i)%birdie,ccf4best -3050 format(2i5,f10.3,f8.2,i5,1x,L3,4f7.1) - endif +! if(sync(i)%iflip.eq.0 .and. sync(i)%ccfmax .gt. 20.0) then +! write(50,3050) i,lagbest,sync(i)%ccfmax,sync(i)%xdt,sync(i)%ipol, & +! sync(i)%birdie,ccf4best +!3050 format(2i5,f10.3,f8.2,i5,1x,L3,4f7.1) +! endif enddo ! i (frequency bin) From 652e989356eba4787a97728775df07ecffbed116 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Wed, 23 Jun 2021 13:58:08 -0400 Subject: [PATCH 32/45] For now, increase max DT to 5.5 s in Q65 EME mode. --- lib/q65_decode.f90 | 4 +++- lib/qra/q65/q65.f90 | 2 +- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/q65_decode.f90 b/lib/q65_decode.f90 index 1dfaf2e00..5d5dcf710 100644 --- a/lib/q65_decode.f90 +++ b/lib/q65_decode.f90 @@ -149,10 +149,12 @@ contains iavg=0 call timer('q65_dec0',0) ! Call top-level routine in q65 module: establish sync and try for a -! q3 of q0 decode. +! q3 or q0 decode. call q65_dec0(iavg,nutc,iwave,ntrperiod,nfqso,ntol,ndepth,lclearave, & emedelay,xdt,f0,snr1,width,dat4,snr2,idec) call timer('q65_dec0',1) +! write(*,3001) '=a',sum(abs(float(iwave))),nfqso,ntol,ndepth,xdt,f0,idec +!3001 format(a2,f15.0,3i5,f7.2,f7.1,i5) if(idec.ge.0) then dtdec=xdt !We have a q3 or q0 decode at nfqso diff --git a/lib/qra/q65/q65.f90 b/lib/qra/q65/q65.f90 index eee12b2a5..ac2438a81 100644 --- a/lib/qra/q65/q65.f90 +++ b/lib/qra/q65/q65.f90 @@ -124,7 +124,7 @@ subroutine q65_dec0(iavg,nutc,iwave,ntrperiod,nfqso,ntol,ndepth,lclearave, & dtstep=nsps/(NSTEP*12000.0) !Step size in seconds lag1=-1.0/dtstep lag2=1.0/dtstep + 0.9999 - if(nsps.ge.3600 .and. emedelay.gt.0) lag2=5.0/dtstep + 0.9999 !Include EME + if(nsps.ge.3600 .and. emedelay.gt.0) lag2=5.5/dtstep + 0.9999 !Include EME j0=0.5/dtstep if(nsps.ge.7200) j0=1.0/dtstep !Nominal start-signal index From 31a4fac51630515d277d1e8287604e8a8b481146 Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Thu, 24 Jun 2021 13:00:05 +0100 Subject: [PATCH 33/45] Revert "Fix the generation of Tx5 message when "hiscall" has suffix /P or /R. Is there a better method?" Fixed by a later more comprehensive change. This reverts commit 1df2101b11d4548f2a9cde8a4faffadd21b741f6. --- widgets/mainwindow.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index dfc8cf2b2..7b225f576 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -5534,8 +5534,7 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) msgtype(t, ui->tx5->lineEdit ()); } } else { - if (hisCall != hisBase && hisCall != (hisBase+"/P") && hisCall != (hisBase+"/R") - && SpecOp::HOUND != m_config.special_op_id()) { + if (hisCall != hisBase and SpecOp::HOUND != m_config.special_op_id()) { if (shortList(hisCall)) { // cfm we know his full call with a type 1 tx1 message t = hisCall + " " + my_callsign; From bbd7fa059afe69d0193d15a71b629d993337a661 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 24 Jun 2021 10:36:34 -0400 Subject: [PATCH 34/45] Correct a flaw in setting values of ia, ib in q65_ccf_22.f90. --- lib/qra/q65/q65.f90 | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/qra/q65/q65.f90 b/lib/qra/q65/q65.f90 index ac2438a81..4a5508cdc 100644 --- a/lib/qra/q65/q65.f90 +++ b/lib/qra/q65/q65.f90 @@ -439,8 +439,8 @@ subroutine q65_ccf_22(s1,iz,jz,nfqso,ntol,ndepth,ntrperiod,iavg,ipk,jpk, & ib=min(nfb,4900)/df if(nqd.ne.1 .or. iavg.ne.0) max_drift=0 if(max_drift.ne.0) then - ia=max(100,nint((nfqso-ntol)/df)) - ib=min(4900,nint((nfqso+ntol)/df)) + ia=max(nint(100/df),nint((nfqso-ntol)/df)) + ib=min(nint(4900/df),nint((nfqso+ntol)/df)) endif do i=ia,ib From 1b2ed29ebacaf555756a340eb4c98eba8fab7dae Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Thu, 24 Jun 2021 14:26:22 -0400 Subject: [PATCH 35/45] Correct a one-symbol offset in the MAP65 Tx waveform for Q65, leading to +0.6 s DT bias. --- map65/libm65/gen_q65_wave.f90 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/map65/libm65/gen_q65_wave.f90 b/map65/libm65/gen_q65_wave.f90 index 08f84ab20..bd91c8ddb 100644 --- a/map65/libm65/gen_q65_wave.f90 +++ b/map65/libm65/gen_q65_wave.f90 @@ -36,7 +36,7 @@ subroutine gen_q65_wave(msg,ntxfreq,mode65,msgsent,iwave,nwave) j0=0 do i=1,iz t=t+dt - j=t/tsym + j=t/tsym + 1.0 if(j.ne.j0) then f=f0 + itone(j)*dfgen dphi=twopi*dt*f From b241b913ba6bc34a4c194f1102c66052c220f0f4 Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Thu, 24 Jun 2021 19:13:27 +0100 Subject: [PATCH 36/45] Improve band combo box pop up list width management --- CMakeLists.txt | 1 + map65/mainwindow.ui | 4 ++-- widgets/BandComboBox.cpp | 27 +++++++++++++++++++++++++++ widgets/BandComboBox.hpp | 16 ++++++++++++++++ widgets/mainwindow.ui | 11 ++++++++--- 5 files changed, 54 insertions(+), 5 deletions(-) create mode 100644 widgets/BandComboBox.cpp create mode 100644 widgets/BandComboBox.hpp diff --git a/CMakeLists.txt b/CMakeLists.txt index 5aabcd1fd..cfd644278 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -238,6 +238,7 @@ set (wsjt_qt_CXXSRCS Network/NetworkAccessManager.cpp widgets/LazyFillComboBox.cpp widgets/CheckableItemComboBox.cpp + widgets/BandComboBox.cpp ) set (wsjt_qtmm_CXXSRCS diff --git a/map65/mainwindow.ui b/map65/mainwindow.ui index 29aac7e39..c52295a93 100644 --- a/map65/mainwindow.ui +++ b/map65/mainwindow.ui @@ -7,7 +7,7 @@ 0 0 635 - 512 + 523 @@ -1704,7 +1704,7 @@ p, li { white-space: pre-wrap; } DisplayText QTextBrowser -
displaytext.h
+
widgets/displaytext.h
diff --git a/widgets/BandComboBox.cpp b/widgets/BandComboBox.cpp new file mode 100644 index 000000000..0dc8eba61 --- /dev/null +++ b/widgets/BandComboBox.cpp @@ -0,0 +1,27 @@ +#include "BandComboBox.hpp" + +#include +#include +#include +#include "models/FrequencyList.hpp" + +BandComboBox::BandComboBox (QWidget * parent) + : QComboBox {parent} +{ +} + +// Fix up broken QComboBox item view rendering which doesn't allow for +// a vertical scroll bar in width calculations and ends up eliding the +// item text. +void BandComboBox::showPopup () +{ + auto minimum_width = view ()->sizeHintForColumn (FrequencyList_v2::frequency_mhz_column); + if (count () > maxVisibleItems ()) + { + // for some as yet unknown reason, in FT8 mode the scrollbar + // width is oversize on the first call here + minimum_width += view ()->verticalScrollBar ()->width (); + } + view ()->setMinimumWidth (minimum_width); + QComboBox::showPopup (); +} diff --git a/widgets/BandComboBox.hpp b/widgets/BandComboBox.hpp new file mode 100644 index 000000000..aaad114cb --- /dev/null +++ b/widgets/BandComboBox.hpp @@ -0,0 +1,16 @@ +#ifndef BAND_COMBO_BOX_HPP__ +#define BAND_COMBO_BOX_HPP__ + +#include + +class BandComboBox + : public QComboBox +{ +public: + explicit BandComboBox (QWidget * = nullptr); + +private: + void showPopup () override; +}; + +#endif diff --git a/widgets/mainwindow.ui b/widgets/mainwindow.ui index 8f787d5ae..a07e79570 100644 --- a/widgets/mainwindow.ui +++ b/widgets/mainwindow.ui @@ -644,7 +644,7 @@ QPushButton[state="ok"] { - + <html><head/><body><p>Select operating band or enter frequency in MHz or enter kHz increment followed by k.</p></body></html> @@ -661,7 +661,7 @@ QPushButton[state="ok"] { QComboBox::NoInsert
- QComboBox::AdjustToMinimumContentsLength + QComboBox::AdjustToMinimumContentsLengthWithIcon @@ -3434,7 +3434,7 @@ Double-click to reset to the standard 73 message DisplayText - QTextEdit + QTextBrowser
widgets/displaytext.h
@@ -3468,6 +3468,11 @@ Double-click to reset to the standard 73 message QPushButton
widgets/DoubleClickablePushButton.hpp
+ + BandComboBox + QComboBox +
widgets/BandComboBox.hpp
+
decodedTextBrowser From 9b01bfae529eadf24cfeeb1bb62b40f00ed06f45 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Fri, 25 Jun 2021 14:57:36 -0400 Subject: [PATCH 37/45] Restore plotting of a Q65 sync curve after a q3 decode. --- lib/q65_decode.f90 | 1 + lib/qra/q65/q65.f90 | 7 ++++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/q65_decode.f90 b/lib/q65_decode.f90 index 5d5dcf710..cbe295adc 100644 --- a/lib/q65_decode.f90 +++ b/lib/q65_decode.f90 @@ -210,6 +210,7 @@ contains call q65_dec0(iavg,nutc,iwave,ntrperiod,nfqso,ntol,ndepth,lclearave, & emedelay,xdt,f0,snr1,width,dat4,snr2,idec) call timer('list_avg',1) + if(idec.ge.0) then dtdec=xdt !We have a list-decode result from averaged data f0dec=f0 diff --git a/lib/qra/q65/q65.f90 b/lib/qra/q65/q65.f90 index 4a5508cdc..13f254669 100644 --- a/lib/qra/q65/q65.f90 +++ b/lib/qra/q65/q65.f90 @@ -162,9 +162,10 @@ subroutine q65_dec0(iavg,nutc,iwave,ntrperiod,nfqso,ntol,ndepth,lclearave, & call timer('list_dec',0) call q65_dec_q3(s1,iz,jz,s3,LL,ipk,jpk,snr2,dat4,idec,decoded) call timer('list_dec',1) - if(idec.eq.3) go to 900 !Good q3 decode, we're done +! If idec=3 we have a q3 decode. Continue to compute sync curve for plotting. endif +! Get 2d CCF and ccf2 using sync symbols only if(iavg.eq.0) then call timer('ccf_22a ',0) call q65_ccf_22(s1,iz,jz,nfqso,ntol,ndepth,ntrperiod,iavg,ipk,jpk, & @@ -172,7 +173,7 @@ subroutine q65_dec0(iavg,nutc,iwave,ntrperiod,nfqso,ntol,ndepth,lclearave, & call timer('ccf_22a ',1) endif -! Get 2d CCF and ccf2 using sync symbols only +! Get 2d CCF and ccf2_avg using sync symbols only if(iavg.ge.1) then call timer('ccf_22b ',0) call q65_ccf_22(s1,iz,jz,nfqso,ntol,ndepth,ntrperiod,iavg,ipk,jpk, & @@ -211,7 +212,7 @@ subroutine q65_dec0(iavg,nutc,iwave,ntrperiod,nfqso,ntol,ndepth,lclearave, & call q65_write_red(iz,xdt,ccf2_avg,ccf2) - if(iavg.eq.0 .or. iavg.eq.2) then + if(idec.lt.0 .and. (iavg.eq.0 .or. iavg.eq.2)) then call q65_dec_q012(s3,LL,snr2,dat4,idec,decoded) endif From f8038951af85a88accbaab74322837b76a8ddc12 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Fri, 25 Jun 2021 15:14:26 -0400 Subject: [PATCH 38/45] Enable "View | Message Averaging F7" only for JT4 and JT65. --- widgets/mainwindow.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 7b225f576..34655d95f 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -7543,7 +7543,7 @@ void::MainWindow::VHF_features_enabled(bool b) } ui->actionInclude_averaging->setVisible (b); ui->actionInclude_correlation->setVisible (b && m_mode!="Q65"); - ui->actionMessage_averaging->setEnabled(b); + ui->actionMessage_averaging->setEnabled(b && (m_mode=="JT4" or m_mode=="JT65")); ui->actionEnable_AP_JT65->setVisible (b && m_mode=="JT65"); if(!b && m_msgAvgWidget and (SpecOp::FOX != m_config.special_op_id()) and !m_config.autoLog()) { From 7760ad05f6757212ee015cc3a7793681e2a1b993 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Fri, 25 Jun 2021 15:39:00 -0400 Subject: [PATCH 39/45] Switching to Q65 mode now defaults to "Decode Fast". --- widgets/mainwindow.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 34655d95f..f707b9947 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -6426,6 +6426,7 @@ void MainWindow::on_actionQ65_triggered() fast_config(false); WSPR_config(false); setup_status_bar(true); + ui->actionQuickDecode->setChecked(true); m_nsps=6912; //For symspec only m_FFTSize = m_nsps / 2; Q_EMIT FFTSize(m_FFTSize); From 588e862346d38f04d001800328e9de8595083ea2 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Fri, 25 Jun 2021 16:29:42 -0400 Subject: [PATCH 40/45] Improves setting of limits for flattening s1(), when nfqso is too close to 0. --- lib/qra/q65/q65.f90 | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/qra/q65/q65.f90 b/lib/qra/q65/q65.f90 index 13f254669..914932705 100644 --- a/lib/qra/q65/q65.f90 +++ b/lib/qra/q65/q65.f90 @@ -139,16 +139,17 @@ subroutine q65_dec0(iavg,nutc,iwave,ntrperiod,nfqso,ntol,ndepth,lclearave, & endif i0=nint(nfqso/df) !Target QSO frequency - if(i0-64.lt.1 .or. i0-65+LL.gt.iz) go to 900 !Frequency out of range - call pctile(s1(i0-64:i0-65+LL,1:jz),LL*jz,45,base) + ii1=max(1,i0-64) + ii2=i0-65+LL + call pctile(s1(ii1:ii2,1:jz),ii2-ii1+1*jz,45,base) s1=s1/base s1raw=s1 ! Apply fast AGC to the symbol spectra s1max=20.0 !Empirical choice do j=1,jz !### Maybe wrong way? ### - smax=maxval(s1(i0-64:i0-65+LL,j)) - if(smax.gt.s1max) s1(i0-64:i0-65+LL,j)=s1(i0-64:i0-65+LL,j)*s1max/smax + smax=maxval(s1(ii1:ii2,j)) + if(smax.gt.s1max) s1(ii1:ii2,j)=s1(ii1:ii2,j)*s1max/smax enddo dat4=0 From c6624d261ebbd489345716903aaebb147c1aeec1 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Sun, 27 Jun 2021 09:40:00 -0400 Subject: [PATCH 41/45] Update Release_Notes.txt, in preparation for WSJT-X 2.5.0-rc2. --- Release_Notes.txt | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/Release_Notes.txt b/Release_Notes.txt index 99b497426..2fd544f04 100644 --- a/Release_Notes.txt +++ b/Release_Notes.txt @@ -16,6 +16,32 @@ Copyright 2001 - 2021 by Joe Taylor, K1JT. Jun 28, 2021 ------------------------- +Remember that the WSJT-X 2.5.0 package includes MAP65 3.0.0. Changes +in the package since WSJT-X 2.5.0-rc1 include the following +enhancements and defect repairs: + +MAP65: + - Compute polarization angle for Xpol systems and display to nearest + degree + - Compute and display the recommended Tx polarization + - Protect against Fortran bounds errors in several places + - Insert leading 0 when needed in UTC hours and minutes on waterfall + - Wideband Q65 synchronization corrected to include single-polarization + mode + - Corrected a one-symbol (0.6 s) delay in Q65 Tx audio + +WSJT-X, including the decoder for Q65 used by MAP65: + - Increase maximum DT to 5.5 s when EME decoding is enabled in Q65 + - Repair a minor defect in callsign input validation + - Fix generation of Tx5 message when "hiscall" has suffix /P or /R. + - Improve width management of GUI's band-selection combo box + - Restore plotting of Q65 sync curve after a q3 decode + - Disable selection of "View | Message Averaging F7" for modes + other than JT4 and JT65 + - Switching to Q65 mode now defaults to "Decode | Fast" + - Updated CTY.DAT database + + Release: WSJT-X 2.5.0-rc1 Jun 3, 2021 ------------------------- From 37bbcbc7cfec369fc39720f42c3227df57c65e86 Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Sun, 27 Jun 2021 16:45:33 +0100 Subject: [PATCH 42/45] Repair a long-standing defect with 72-bit modes message generation This defect caused source messages to be incorrectly generated when using a compound callsign. This repair also fixes some issues with Q65 mode related to source message generation. --- widgets/mainwindow.cpp | 62 ++++++++++++++++++++++-------------------- widgets/mainwindow.h | 1 + 2 files changed, 34 insertions(+), 29 deletions(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index f707b9947..ec8af755e 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -754,10 +754,6 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, ui->bandComboBox->setModel (m_config.frequencies ()); ui->bandComboBox->setModelColumn (FrequencyList_v2::frequency_mhz_column); - // combo box drop down width defaults to the line edit + decorator width, - // here we change that to the column width size hint of the model column - ui->bandComboBox->view ()->setMinimumWidth (ui->bandComboBox->view ()->sizeHintForColumn (FrequencyList_v2::frequency_mhz_column)); - // Enable live band combo box entry validation and action. auto band_validator = new LiveFrequencyValidator {ui->bandComboBox , m_config.bands () @@ -5243,27 +5239,32 @@ void MainWindow::setTxMsg(int n) void MainWindow::genCQMsg () { - if(m_config.my_callsign().size () && m_config.my_grid().size ()) { - QString grid{m_config.my_grid()}; + auto const& my_callsign = m_config.my_callsign (); + auto is_compound = my_callsign != m_baseCall; + auto is_type_two = !is77BitMode () && is_compound && stdCall (m_baseCall) && !shortList (my_callsign); + if(my_callsign.size () && m_config.my_grid().size ()) { + auto const& grid = m_config.my_grid (); if (ui->cbCQTx->isEnabled () && ui->cbCQTx->isVisible () && ui->cbCQTx->isChecked ()) { - if(stdCall(m_config.my_callsign())) { + if(stdCall (my_callsign) + || is_type_two) { msgtype (QString {"CQ %1 %2 %3"} .arg (m_freqNominal / 1000 - m_freqNominal / 1000000 * 1000, 3, 10, QChar {'0'}) - .arg (m_config.my_callsign()) + .arg (my_callsign) .arg (grid.left (4)), ui->tx6); } else { msgtype (QString {"CQ %1 %2"} .arg (m_freqNominal / 1000 - m_freqNominal / 1000000 * 1000, 3, 10, QChar {'0'}) - .arg (m_config.my_callsign()), + .arg (my_callsign), ui->tx6); } } else { - if(stdCall(m_config.my_callsign())) { - msgtype (QString {"%1 %2 %3"}.arg(m_CQtype).arg(m_config.my_callsign()) + if (stdCall (my_callsign) + || is_type_two) { + msgtype (QString {"%1 %2 %3"}.arg(m_CQtype).arg(my_callsign) .arg(grid.left(4)),ui->tx6); } else { - msgtype (QString {"%1 %2"}.arg(m_CQtype).arg(m_config.my_callsign()),ui->tx6); + msgtype (QString {"%1 %2"}.arg(m_CQtype).arg(my_callsign),ui->tx6); } } if ((m_mode=="JT4" or m_mode=="Q65") and ui->cbShMsgs->isChecked()) { @@ -5278,15 +5279,15 @@ void MainWindow::genCQMsg () QStringList tlist=t.split(" "); if((m_mode=="FT4" or m_mode=="FT8" or m_mode=="MSK144") and SpecOp::NONE != m_config.special_op_id() and - ( tlist.at(1)==m_config.my_callsign() or - tlist.at(2)==m_config.my_callsign() ) and - stdCall(m_config.my_callsign())) { + ( tlist.at(1)==my_callsign or + tlist.at(2)==my_callsign ) and + stdCall(my_callsign)) { if(SpecOp::NA_VHF == m_config.special_op_id()) m_cqStr="TEST"; if(SpecOp::EU_VHF == m_config.special_op_id()) m_cqStr="TEST"; if(SpecOp::FIELD_DAY == m_config.special_op_id()) m_cqStr="FD"; if(SpecOp::RTTY == m_config.special_op_id()) m_cqStr="RU"; if(SpecOp::WW_DIGI == m_config.special_op_id()) m_cqStr="WW"; - if( tlist.at(1)==m_config.my_callsign() ) { + if( tlist.at(1)==my_callsign ) { t="CQ " + m_cqStr + " " + tlist.at(1) + " " + tlist.at(2); } else { t="CQ " + m_cqStr + " " + tlist.at(2) + " " + tlist.at(3); @@ -5319,6 +5320,12 @@ bool MainWindow::stdCall(QString const& w) return standard_call_re.match (w).hasMatch (); } +bool MainWindow::is77BitMode () const +{ + return "FT8" == m_mode || "FT4" == m_mode || "MSK144" == m_mode + || "FST4" == m_mode || "Q65" == m_mode; +} + void MainWindow::genStdMsgs(QString rpt, bool unconditional) { genCQMsg (); @@ -5335,7 +5342,7 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) } auto const& my_callsign = m_config.my_callsign (); auto is_compound = my_callsign != m_baseCall; - auto is_type_one = is_compound && shortList (my_callsign); + auto is_type_one = !is77BitMode () && is_compound && shortList (my_callsign); auto const& my_grid = m_config.my_grid ().left (4); auto const& hisBase = Radio::base_callsign (hisCall); auto eme_short_codes = m_config.enable_VHF_features () && ui->cbShMsgs->isChecked () @@ -5348,7 +5355,7 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) QString t0s=hisCall + " " + my_callsign + " "; QString t0a,t0b; - if(bHisCall and bMyCall) t0=hisCall + " " + my_callsign + " "; + if (is77BitMode () && bHisCall && bMyCall) t0=hisCall + " " + my_callsign + " "; t0a="<"+hisCall + "> " + my_callsign + " "; t0b=hisCall + " <" + my_callsign + "> "; @@ -5366,7 +5373,7 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) int n=rpt.toInt(); rpt = rpt.asprintf("%+2.2d",n); - if(m_mode=="MSK144" or m_mode=="FT8" or m_mode=="FT4" || m_mode=="FST4") { + if (is77BitMode ()) { QString t2,t3; QString sent=rpt; QString rs,rst; @@ -5430,8 +5437,8 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) } } - if((m_mode!="MSK144" and m_mode!="FT8" and m_mode!="FT4" && m_mode != "FST4")) { - t=t00 + rpt; + if (!is77BitMode ()) { + t=(is_type_one ? t0 : t00) + rpt; msgtype(t, ui->tx2); t=t0 + "R" + rpt; msgtype(t, ui->tx3); @@ -5470,7 +5477,7 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) } } - if(m_mode=="FT8" or m_mode=="FT4" or m_mode=="MSK144" || m_mode == "FST4") return; + if (is77BitMode ()) return; if (is_compound) { if (is_type_one) { @@ -5483,8 +5490,7 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) case Configuration::type_2_msg_1_full: msgtype(t + my_grid, ui->tx1); if (!eme_short_codes) { - if((m_mode=="MSK144" || m_mode=="FT8" || m_mode=="FT4" || m_mode == "FST4") && - SpecOp::NA_VHF == m_config.special_op_id()) { + if(is77BitMode () && SpecOp::NA_VHF == m_config.special_op_id()) { msgtype(t + "R " + my_grid, ui->tx3); // #### Unreachable code } else { msgtype(t + "R" + rpt, ui->tx3); @@ -5496,8 +5502,7 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) break; case Configuration::type_2_msg_3_full: - if ((m_mode=="MSK144" || m_mode=="FT8" || m_mode=="FT4" || m_mode == "FST4") && - SpecOp::NA_VHF == m_config.special_op_id()) { + if (is77BitMode () && SpecOp::NA_VHF == m_config.special_op_id()) { msgtype(t + "R " + my_grid, ui->tx3); msgtype(t + "RRR", ui->tx4); } else { @@ -5512,8 +5517,7 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) case Configuration::type_2_msg_5_only: msgtype(t00 + my_grid, ui->tx1); if (!eme_short_codes) { - if ((m_mode=="MSK144" || m_mode=="FT8" || m_mode=="FT4" || m_mode == "FST4") && - SpecOp::NA_VHF == m_config.special_op_id()) { + if (is77BitMode () && SpecOp::NA_VHF == m_config.special_op_id()) { msgtype(t + "R " + my_grid, ui->tx3); // #### Unreachable code msgtype(t + "RRR", ui->tx4); } else { @@ -5548,7 +5552,7 @@ void MainWindow::genStdMsgs(QString rpt, bool unconditional) } } m_rpt=rpt; - if(SpecOp::HOUND == m_config.special_op_id() and is_compound) ui->tx1->setText("DE " + m_config.my_callsign()); + if(SpecOp::HOUND == m_config.special_op_id() and is_compound) ui->tx1->setText("DE " + my_callsign); } void MainWindow::TxAgain() diff --git a/widgets/mainwindow.h b/widgets/mainwindow.h index 653023b23..854afef2f 100644 --- a/widgets/mainwindow.h +++ b/widgets/mainwindow.h @@ -778,6 +778,7 @@ private: void foxGenWaveform(int i,QString fm); void writeFoxQSO (QString const& msg); void to_jt9(qint32 n, qint32 istart, qint32 idone); + bool is77BitMode () const; }; extern int killbyname(const char* progName); From 5a09ce3aedabd4842286b9b48742733d304993b9 Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Sun, 27 Jun 2021 18:29:38 +0100 Subject: [PATCH 43/45] Include instructions for users to build a personal use portaudio DLL with ASIO support --- ...portaudio on Windows with ASIO support.txt | 76 +++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 doc/building portaudio on Windows with ASIO support.txt diff --git a/doc/building portaudio on Windows with ASIO support.txt b/doc/building portaudio on Windows with ASIO support.txt new file mode 100644 index 000000000..71f8bf653 --- /dev/null +++ b/doc/building portaudio on Windows with ASIO support.txt @@ -0,0 +1,76 @@ +Building the MS Windows portaudio DLL with ASIO Support +======================================================= + +Some MAP65 users may not be able to use WDM/KS hosted audio devices +due to sharing issues with other applications, to circumvent this they +can build a version of the portaudio DLL with ASIO support. We cannot +provide a portaudio DLL with ASIO support as the Steinberg ASIO SDK +license prevents redistribution of drivers or hosting applications +without a commercial license agreement, nor is the Steinberg ASIO SDK +license compatible with the GPL v3 license that MAP65 is released +under. Users may build a portaudio DLL themselves, strictly for +personal use, under the terms of the Steinberg ASIO license. + +Building portaudio on MS Windows is done most easily using the MinGW +(GNU) tool-chain which can be installed on MS Windows using the MSYS2 +unix like environment which in turn includes a package manager +(pacman) that allows simple installation of necessary prerequisite +packages like the MinGW 64-bit tool-chain. To install MSYS2 download +the latest 64-bit installer from the MSYS2 project web site. This page +contains links to the installer download and detailed instructions to +install and bring up-to-date the base MSYS2 packages. + +https://www.msys2.org/wiki/MSYS2-installation/ + +Take particular care to restart the MSYS2 shell window when directed +to. + +Once MSYS2 is installed you will find a start menu entry labelled +"MSYS2 MinGW 64-bit", use that to start a fresh MSYS2 shell window for +the rest of these instructions. + +The first step is to install some prerequisite packages which contain +the tools needed to prepare and build the portaudio DLL. Execute the +following command to do that: + + pacman -S make diffutils unzip mingw-w64-x86_64-gcc sed tar curl + +Then make directories to put downloaded sources in and for building: + + mkdir -p ~/src ~/build/portaudio + +Fetch and unpack the Steinberg ASIO SDK (note the ASIO SDK license +document included, particularly that it strictly disallows +redistribution of the DLL we will be building here), and portaudio +sources: + + curl -Lo ~/src/asiosdk.zip https://www.steinberg.net/asiosdk + (cd ~/src ; unzip asiosdk.zip) + curl -O --output-dir ~/src \ + http://files.portaudio.com/archives/pa_stable_v190700_20210406.tgz + tar -C ~/src -xf ~/src/pa_stable_v190700_20210406.tgz + +Patch and build the portaudio library: + + sed -i -e 's/-luuid//g' ~/src/portaudio/configure + cd ~/build/portaudio + ~/src/portaudio/configure --with-winapi=wmme,directx,wdmks,asio \ + --with-asiodir=$HOME/src/asiosdk_2.3.3_2019-06-14 \ + --disable-static --enable-shared + make -j + +You can check the library build is working by running a test program +that was also built: + + bin/pa_devs + +which should list every audio device on your system by every host API, +if all is well that should include the audio devices on your system +with ASIO drivers. + +Copy the new portaudio DLL to your WSJT-X/MAP65 installation directory: + + cp lib/.libs/libportaudio-2.dll /c/WSJT/wsjtx/bin/ + +Note that if you upgrade WSJT-X you will need to copy this DLL again +since it will be overwritten by one with no ASIO support. From d72d1f6c720c8d703df96effb1faec33b1ac5870 Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Sun, 27 Jun 2021 21:24:33 +0100 Subject: [PATCH 44/45] Release note updates --- NEWS | 48 +++++++++++++++++++++++++++++++++++++++++++++++ Release_Notes.txt | 44 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 92 insertions(+) diff --git a/NEWS b/NEWS index 227f2274e..0f2f6fc08 100644 --- a/NEWS +++ b/NEWS @@ -12,6 +12,54 @@ Copyright 2001 - 2021 by Joe Taylor, K1JT. + Release: WSJT-X 2.5.0-rc2 + Jun 28, 2021 + ------------------------- + +This release repairs several MAP65 defects and omissions discovered in +the first release candidate, it also repairs some regressions in +WSJT-X, including some in the Hamlib library. + +Changes for MAP65: + + - Implement linear drift compensation for Q65 mode when FTol >100 Hz. + + - Implement a "Max drift" UI control for Q65. + + - Repair a regression which omitted signal meter scales. + + - Basic instruction document for building an MS Windows portaudio DLL + for MAP65 users who are unable to use WDM/KS drivers for their + multi-channel sound cards. + +Changes for WSJT-X: + + - Implement linear drift compensation for Q65 mode when FTol >100 Hz. + + - Implement a "Max drift" UI control for Q65. + + - Repair a long standing regression with message generation for + 72-bit modes when using a compound callsign. + + - Message averaging window no longer available in Q65 mode as it is + not relevant. + + - Improvements to the frequency/band combo box pop up list width to + address a regression occurring in recent releases. + + - Updated CTY database. + + - Repair a defect in diagnostic logging that could cause crashes on + some platforms. + + - Repair a defect which failed to strip leading and trailing spaces + on input of callsigns during validation. + + - Hamlib updates including repair of defects with PTT handling on a + separate serial port via rigctld, delayed PTT with Elecraft K3 + series rigs, and support for the Icom IC-575 rig. + + Release: WSJT-X 2.5.0-rc1 Jun 3, 2021 ------------------------- diff --git a/Release_Notes.txt b/Release_Notes.txt index 99b497426..15aefbed2 100644 --- a/Release_Notes.txt +++ b/Release_Notes.txt @@ -16,6 +16,50 @@ Copyright 2001 - 2021 by Joe Taylor, K1JT. Jun 28, 2021 ------------------------- +This release repairs several MAP65 defects and omissions discovered in +the first release candidate, it also repairs some regressions in +WSJT-X, including some in the Hamlib library. + +Changes for MAP65: + + - Implement linear drift compensation for Q65 mode when FTol >100 Hz. + + - Implement a "Max drift" UI control for Q65. + + - Repair a regression which omitted signal meter scales. + + - Basic instruction document for building an MS Windows portaudio DLL + for MAP65 users who are unable to use WDM/KS drivers for their + multi-channel sound cards. + +Changes for WSJT-X: + + - Implement linear drift compensation for Q65 mode when FTol >100 Hz. + + - Implement a "Max drift" UI control for Q65. + + - Repair a long standing regression with message generation for + 72-bit modes when using a compound callsign. + + - Message averaging window no longer available in Q65 mode as it is + not relevant. + + - Improvements to the frequency/band combo box pop up list width to + address a regression occurring in recent releases. + + - Updated CTY database. + + - Repair a defect in diagnostic logging that could cause crashes on + some platforms. + + - Repair a defect which failed to strip leading and trailing spaces + on input of callsigns during validation. + + - Hamlib updates including repair of defects with PTT handling on a + separate serial port via rigctld, delayed PTT with Elecraft K3 + series rigs, and support for the Icom IC-575 rig. + + Release: WSJT-X 2.5.0-rc1 Jun 3, 2021 ------------------------- From d12d603e33a48fadf43361195958768ab83d075e Mon Sep 17 00:00:00 2001 From: Bill Somerville Date: Mon, 28 Jun 2021 02:14:50 +0100 Subject: [PATCH 45/45] Update NEWS --- NEWS | 54 +++++++++++++++++++++++------------------------------- 1 file changed, 23 insertions(+), 31 deletions(-) diff --git a/NEWS b/NEWS index 0f2f6fc08..8409bd71c 100644 --- a/NEWS +++ b/NEWS @@ -16,49 +16,41 @@ Copyright 2001 - 2021 by Joe Taylor, K1JT. Jun 28, 2021 ------------------------- -This release repairs several MAP65 defects and omissions discovered in -the first release candidate, it also repairs some regressions in -WSJT-X, including some in the Hamlib library. - -Changes for MAP65: - - - Implement linear drift compensation for Q65 mode when FTol >100 Hz. - - - Implement a "Max drift" UI control for Q65. - - - Repair a regression which omitted signal meter scales. +Remember that the WSJT-X 2.5.0 package includes MAP65 3.0.0. Changes +in the package since WSJT-X 2.5.0-rc1 include the following +enhancements and defect repairs: +MAP65: + - Compute polarization angle for Xpol systems and display to nearest + degree + - Compute and display the recommended Tx polarization + - Protect against Fortran bounds errors in several places + - Insert leading 0 when needed in UTC hours and minutes on waterfall + - Wideband Q65 synchronization corrected to include single-polarization + mode + - Corrected a one-symbol (0.6 s) delay in Q65 Tx audio - Basic instruction document for building an MS Windows portaudio DLL - for MAP65 users who are unable to use WDM/KS drivers for their + for MAP65 users who are unable to use WDM/KS drivers for their multi-channel sound cards. -Changes for WSJT-X: - - - Implement linear drift compensation for Q65 mode when FTol >100 Hz. - - - Implement a "Max drift" UI control for Q65. - +WSJT-X (including the decoder for Q65 used by MAP65): + - Increase maximum DT to 5.5 s when EME decoding is enabled in Q65 + - Fix generation of Tx5 message when "hiscall" has suffix /P or /R. + - Improve width management of GUI's band-selection combo box + - Restore plotting of Q65 sync curve after a q3 decode + - Disable selection of "View | Message Averaging F7" for modes + other than JT4 and JT65 + - Switching to Q65 mode now defaults to "Decode | Fast" - Repair a long standing regression with message generation for 72-bit modes when using a compound callsign. - - - Message averaging window no longer available in Q65 mode as it is - not relevant. - - - Improvements to the frequency/band combo box pop up list width to - address a regression occurring in recent releases. - - - Updated CTY database. - - - Repair a defect in diagnostic logging that could cause crashes on + - Repair a defect in diagnostic logging that could cause crashes on some platforms. - - Repair a defect which failed to strip leading and trailing spaces on input of callsigns during validation. - - Hamlib updates including repair of defects with PTT handling on a separate serial port via rigctld, delayed PTT with Elecraft K3 series rigs, and support for the Icom IC-575 rig. - + - Updated CTY.DAT database Release: WSJT-X 2.5.0-rc1 Jun 3, 2021