From 8431ccf7005d8875f701d3b0a60d62183ed0a6cd Mon Sep 17 00:00:00 2001 From: John Halley Gotway Date: Mon, 12 Dec 2022 15:13:32 -0700 Subject: [PATCH 01/30] Cleanup. Remove file inadvertently added during development. --- src/tools/tc_utils/tc_stat/out.tcst | 0 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 src/tools/tc_utils/tc_stat/out.tcst diff --git a/src/tools/tc_utils/tc_stat/out.tcst b/src/tools/tc_utils/tc_stat/out.tcst deleted file mode 100644 index e69de29bb2..0000000000 From a953921c18e00f60a355f88fc3cf1d72027c5d3f Mon Sep 17 00:00:00 2001 From: John Halley Gotway Date: Tue, 13 Dec 2022 16:30:00 -0700 Subject: [PATCH 02/30] Fix testing.yml in main_v11.0 branch to ignore the docs directory. --- .github/workflows/testing.yml | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml index 170e97d14c..d270ba6404 100644 --- a/.github/workflows/testing.yml +++ b/.github/workflows/testing.yml @@ -1,27 +1,27 @@ name: Testing -# Compile MET and run unit tests -# for pull requests into develop branch +# Compile MET for feature branches +# Run unit tests for pull requests on: - pull_request: - types: [opened, reopened, synchronize] + push: branches: - develop - - 'main_v*' + - develop-ref + - 'feature_**' + - 'main_v**' + - 'bugfix_**' paths-ignore: - - 'met/docs/**' + - 'docs/**' - push: + pull_request: + types: [opened, reopened, synchronize] branches: - - 'feature_*' - - 'bugfix_*' - - 'develop' - - 'develop-ref' - - 'main_v*' + - develop + - 'main_v**' paths-ignore: - - 'met/docs/**' + - 'docs/**' workflow_dispatch: inputs: @@ -104,7 +104,7 @@ jobs: needs: [job_control] if: ${{ needs.job_control.outputs.run_unit_tests == 'true' }} steps: - - uses: dtcenter/metplus-action-data-update@v1 + - uses: dtcenter/metplus-action-data-update@v2 with: docker_name: ${{ secrets.DOCKER_USERNAME }} docker_pass: ${{ secrets.DOCKER_PASSWORD }} From 4e3fd4503d48c4888f301d34bdec89efc07b4c72 Mon Sep 17 00:00:00 2001 From: jprestop Date: Wed, 21 Dec 2022 09:28:26 -0700 Subject: [PATCH 03/30] Feature update installation (#2384) * Updating compile_MET_all.sh for a newer version of NetCDF (4.7.4) * Updating config files * Updating modulefiles --- .../scripts/installation/compile_MET_all.sh | 4 +- .../installation/config/install_met_env.acorn | 8 ++-- ..._env_all.casper => install_met_env.casper} | 17 +++---- ..._all.cheyenne => install_met_env.cheyenne} | 7 ++- .../config/install_met_env.frontera | 27 +++++++++++ .../installation/config/install_met_env.gaea | 14 ++++-- .../installation/config/install_met_env.hera | 28 +++++++++++ .../installation/config/install_met_env.jet | 26 ++++++++--- .../installation/config/install_met_env.orion | 14 +++--- .../config/install_met_env_all.hera | 13 ------ .../config/install_met_env_met_only.casper | 27 ++++++----- .../config/install_met_env_met_only.cheyenne | 3 +- .../config/install_met_env_met_only.frontera | 27 +++++++++++ .../config/install_met_env_met_only.gaea | 14 +++--- .../config/install_met_env_met_only.jet | 15 +++--- .../config/install_met_env_met_only.orion | 7 ++- .../installation/modulefiles/11.0.0_acorn | 34 ++++++++++++++ .../installation/modulefiles/11.0.0_casper | 28 +++++++++++ .../installation/modulefiles/11.0.0_cheyenne | 3 ++ .../installation/modulefiles/11.0.0_frontera | 24 ++++++++++ .../installation/modulefiles/11.0.0_gaea | 17 +++++++ .../installation/modulefiles/11.0.0_hera | 46 +++++++++++++++++++ .../installation/modulefiles/11.0.0_jet | 7 ++- .../installation/modulefiles/11.0.0_orion | 9 ++-- 24 files changed, 331 insertions(+), 88 deletions(-) rename internal/scripts/installation/config/{install_met_env_all.casper => install_met_env.casper} (59%) rename internal/scripts/installation/config/{install_met_env_all.cheyenne => install_met_env.cheyenne} (88%) create mode 100644 internal/scripts/installation/config/install_met_env.frontera create mode 100755 internal/scripts/installation/config/install_met_env.hera delete mode 100644 internal/scripts/installation/config/install_met_env_all.hera create mode 100644 internal/scripts/installation/config/install_met_env_met_only.frontera create mode 100644 internal/scripts/installation/modulefiles/11.0.0_acorn create mode 100644 internal/scripts/installation/modulefiles/11.0.0_casper create mode 100644 internal/scripts/installation/modulefiles/11.0.0_frontera create mode 100644 internal/scripts/installation/modulefiles/11.0.0_gaea diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index 7b51918ade..d8a5918f2e 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -637,8 +637,8 @@ if [ $COMPILE_NETCDF -eq 1 ]; then mkdir -p ${LIB_DIR}/netcdf cd ${LIB_DIR}/netcdf rm -rf netcdf* - unzip ${TAR_DIR}/netcdf-4*.zip > /dev/null 2>&1 - cd netcdf-4* + tar -xzf ${TAR_DIR}/netcdf-4*.tar.gz + cd netcdf-c-4* export FC='' export F90='' echo "cd `pwd`" diff --git a/internal/scripts/installation/config/install_met_env.acorn b/internal/scripts/installation/config/install_met_env.acorn index 4a77956e6e..33bc4de786 100644 --- a/internal/scripts/installation/config/install_met_env.acorn +++ b/internal/scripts/installation/config/install_met_env.acorn @@ -2,7 +2,7 @@ module use /apps/ops/para/libs/modulefiles/compiler/intel/19.1.3.304/ module load intel module load python/3.8.6 module load netcdf/4.7.4 -module load hdf5/1.10.6 +module load hdf5/1.12.2 module load bufr/11.5.0 module load zlib/1.2.11 module load jasper/2.0.25 @@ -10,19 +10,19 @@ module load libpng/1.6.37 module load gsl/2.7 module load g2c/1.6.4 -export TEST_BASE=/lfs/h1/emc/vpppg/noscrub/Julie.Prestopnik/MET/10.1.0 +export TEST_BASE=/apps/sw_review/emc/MET/11.0.0 export LIB_DIR=${TEST_BASE}/external_libs export BIN_DIR_PATH=${TEST_BASE}/exec export COMPILER=intel_19.1.3.304 export MET_SUBDIR=${TEST_BASE} -export MET_TARBALL=met-10.1.0.20220314.tar.gz +export MET_TARBALL=v11.0.0.tar.gz export USE_MODULES=TRUE export PYTHON_MODULE=python_3.8.6 export MET_PYTHON=/apps/spack/python/3.8.6/intel/19.1.3.304/pjn2nzkjvqgmjw4hmyz43v5x4jbxjzpk export MET_PYTHON_CC=-I/apps/spack/python/3.8.6/intel/19.1.3.304/pjn2nzkjvqgmjw4hmyz43v5x4jbxjzpk/include/python3.8 export MET_PYTHON_LD=-L/apps/spack/python/3.8.6/intel/19.1.3.304/pjn2nzkjvqgmjw4hmyz43v5x4jbxjzpk/lib\ -lpython3.8\ -lpthread\ -ldl\ -lutil\ -lm\ -Xlinker\ -export-dynamic export MET_NETCDF=/apps/prod/hpc-stack/intel-19.1.3.304/netcdf/4.7.4 -export MET_HDF5=/apps/prod/hpc-stack/intel-19.1.3.304/hdf5/1.10.6 +export MET_HDF5=/apps/prod/hpc-stack/intel-19.1.3.304/hdf5/1.12.2 export MET_BUFRLIB=/apps/ops/prod/libs/intel/19.1.3.304/bufr/11.5.0/lib64 export MET_GRIB2CLIB=/apps/ops/prod/libs/intel/19.1.3.304/g2c/1.6.4/lib64 export MET_GRIB2CINC=/apps/ops/prod/libs/intel/19.1.3.304/g2c/1.6.4/include diff --git a/internal/scripts/installation/config/install_met_env_all.casper b/internal/scripts/installation/config/install_met_env.casper similarity index 59% rename from internal/scripts/installation/config/install_met_env_all.casper rename to internal/scripts/installation/config/install_met_env.casper index f54f0bb00f..78c632e305 100644 --- a/internal/scripts/installation/config/install_met_env_all.casper +++ b/internal/scripts/installation/config/install_met_env.casper @@ -1,20 +1,21 @@ module load ncarenv/1.3 module load intel/2021.2 -module load python/3.7.9 module load netcdf/4.8.0 -ncar_pylib -export TEST_BASE=/glade/p/ral/jntp/MET/MET_releases/casper/10.1.0 +export TEST_BASE=/glade/p/ral/jntp/MET/MET_releases/casper/11.0.0 export COMPILER=intel_2021.2 export MET_SUBDIR=${TEST_BASE} -export MET_TARBALL=met-10.1.0.20220314.tar.gz +export MET_TARBALL=v11.0.0.tar.gz export USE_MODULES=TRUE -export MET_PYTHON=/glade/u/apps/ch/opt/python/3.7.9/gnu/9.1.0 -export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.7m -export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.7m\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm +export MET_PYTHON=/glade/p/ral/jntp/MET/METplus/miniconda/miniconda3/envs/metplus_v5.0_py3.8 +export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm +#export MET_PYTHON=/glade/p/ral/jntp/MET/METplus/casper/miniconda/miniconda3 +#export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +#export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm export MET_NETCDF=/glade/u/apps/ch/opt/netcdf/4.8.0/intel/2021.2/ export MET_HDF5=/glade/u/apps/ch/opt/netcdf/4.8.0/intel/2021.2/ -#export EXTERNAL_LIBS=/glade/p/ral/jntp/MET/MET_releases/casper/10.1.0/external_libs +#export EXTERNAL_LIBS=/glade/p/ral/jntp/MET/MET_releases/casper/11.0.0/external_libs #export MET_GSL=${EXTERNAL_LIBS} #export MET_BUFRLIB=${EXTERNAL_LIBS} #export BUFRLIB_NAME=-lbufr diff --git a/internal/scripts/installation/config/install_met_env_all.cheyenne b/internal/scripts/installation/config/install_met_env.cheyenne similarity index 88% rename from internal/scripts/installation/config/install_met_env_all.cheyenne rename to internal/scripts/installation/config/install_met_env.cheyenne index af9272845d..b9f23b7990 100644 --- a/internal/scripts/installation/config/install_met_env_all.cheyenne +++ b/internal/scripts/installation/config/install_met_env.cheyenne @@ -12,7 +12,7 @@ export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm export MET_NETCDF=/glade/u/apps/ch/opt/netcdf/4.8.0/intel/2021.2/ export MET_HDF5=/glade/u/apps/ch/opt/netcdf/4.8.0/intel/2021.2/ -#export EXTERNAL_LIBS=/glade/p/ral/jntp/MET/MET_releases/11.0.0/external_libs +export EXTERNAL_LIBS=/glade/p/ral/jntp/MET/MET_releases/11.0.0/external_libs #export MET_GSL=${EXTERNAL_LIBS} #export MET_BUFRLIB=${EXTERNAL_LIBS} #export BUFRLIB_NAME=-lbufr @@ -24,6 +24,5 @@ export MET_HDF5=/glade/u/apps/ch/opt/netcdf/4.8.0/intel/2021.2/ #export LIB_LIBPNG=${EXTERNAL_LIBS}/lib #export LIB_Z=${EXTERNAL_LIBS}/lib #export SET_D64BIT=FALSE -#export CFLAGS="-Wall -g" -#export CXXFLAGS="-Wall -g" - +##export CFLAGS="-Wall -g" +##export CXXFLAGS="-Wall -g" \ No newline at end of file diff --git a/internal/scripts/installation/config/install_met_env.frontera b/internal/scripts/installation/config/install_met_env.frontera new file mode 100644 index 0000000000..e8e3feffec --- /dev/null +++ b/internal/scripts/installation/config/install_met_env.frontera @@ -0,0 +1,27 @@ +module load intel/19.1.1 +module load hdf5/1.12.0 +module load netcdf/4.7.4 + +export TEST_BASE=/work2/06612/tg859120/frontera/MET/11.0.0 +export COMPILER=intel_19.1.1 +export MET_SUBDIR=${TEST_BASE}/ +export MET_TARBALL=v11.0.0.tar.gz +export USE_MODULES=TRUE +export MET_PYTHON=/work2/06612/tg859120/frontera/miniconda/miniconda3/envs/metplus_v5.0_py3.8 +export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm +export MET_HDF5=/opt/apps/intel19/hdf5/1.12.0/x86_64/ +export MET_NETCDF=/opt/apps/intel19/netcdf/4.7.4/x86_64/ +export EXTERNAL_LIBS=${TEST_BASE}/external_libs +#export MET_GSL=${EXTERNAL_LIBS} +#export MET_BUFRLIB=${EXTERNAL_LIBS} +#export BUFRLIB_NAME=-lbufr +#export MET_GRIB2CLIB=${EXTERNAL_LIBS}/lib +#export MET_GRIB2CINC=${EXTERNAL_LIBS}/include +#export GRIB2CLIB_NAME=-lgrib2c +#export LIB_JASPER=${EXTERNAL_LIBS}/lib +#export LIB_LIBPNG=${EXTERNAL_LIBS}/lib +#export LIB_Z=${EXTERNAL_LIBS}/lib +export SET_D64BIT=FALSE +#export CFLAGS="-Wall -g" +#export CXXFLAGS="-Wall -g" diff --git a/internal/scripts/installation/config/install_met_env.gaea b/internal/scripts/installation/config/install_met_env.gaea index 0e40bccd01..312c1ecea1 100644 --- a/internal/scripts/installation/config/install_met_env.gaea +++ b/internal/scripts/installation/config/install_met_env.gaea @@ -1,8 +1,12 @@ -export TEST_BASE=/usw/met/10.1.2 +module load intel/19.0.5.281 + +export TEST_BASE=/usw/met/11.0.0 export COMPILER=intel_19.0.5.281 export MET_SUBDIR=${TEST_BASE} -export MET_TARBALL=met-10.1.2.20220516.tar.gz +export MET_TARBALL=v11.0.0.tar.gz export USE_MODULES=TRUE -export MET_PYTHON=/lustre/f2/dev/esrl/Julie.Prestopnik/projects/miniconda/miniconda3/envs/metplus_v4.1_py3.6/ -export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.6m -export MET_PYTHON_LD=-L${MET_PYTHON}/lib/python3.6/config-3.6m-x86_64-linux-gnu\ -L${MET_PYTHON}/lib\ -lpython3.6m\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm +export MET_PYTHON=/lustre/f2/dev/esrl/Julie.Prestopnik/projects/miniconda/miniconda3/envs/metplus_v5.0_py3.8/ +export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +export MET_PYTHON_LD=-L${MET_PYTHON}/lib/python3.8/config-3.8-x86_64-linux-gnu\ -L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm +export EXTERNAL_LIBS=/usw/met/11.0.0/external_libs +export LIB_Z=${EXTERNAL_LIBS}/lib diff --git a/internal/scripts/installation/config/install_met_env.hera b/internal/scripts/installation/config/install_met_env.hera new file mode 100755 index 0000000000..803d5e1aef --- /dev/null +++ b/internal/scripts/installation/config/install_met_env.hera @@ -0,0 +1,28 @@ +module use -a /contrib/anaconda/modulefiles +module load intel/2022.1.2 +module load anaconda/latest +export TEST_BASE=/contrib/met/11.0.0 +export COMPILER=intel_2022.1.2 +export MET_SUBDIR=${TEST_BASE} +export MET_TARBALL=v11.0.0.tar.gz +export USE_MODULES=TRUE +export PYTHON_MODULE=anaconda_latest +export MET_PYTHON=/contrib/anaconda/anaconda3/latest/ +export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.7m +export MET_PYTHON_LD=-L${MET_PYTHON}/lib/python3.7/config-3.7m-x86_64-linux-gnu\ -L${MET_PYTHON}/lib\ -lpython3.7m\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm\ -Xlinker\ -export-dynamic +export SET_D64BIT=FALSE +export EXTERNAL_LIBS=/contrib/met/11.0.0/external_libs/ +#export MET_NETCDF=${EXTERNAL_LIBS} +export MET_GSL=${EXTERNAL_LIBS} +export MET_BUFRLIB=${EXTERNAL_LIBS} +export BUFRLIB_NAME=-lbufr +#export MET_HDF5=${EXTERNAL_LIBS} +export MET_GRIB2CLIB=${EXTERNAL_LIBS}/lib +export MET_GRIB2CINC=${EXTERNAL_LIBS}/include +export GRIB2CLIB_NAME=-lgrib2c +export LIB_JASPER=${EXTERNAL_LIBS}/lib +export LIB_LIBPNG=${EXTERNAL_LIBS}/lib +export LIB_Z=${EXTERNAL_LIBS}/lib +#export SET_D64BIT=FALSE +#export CFLAGS="-Wall -g" +#export CXXFLAGS="-Wall -g -lcurl" diff --git a/internal/scripts/installation/config/install_met_env.jet b/internal/scripts/installation/config/install_met_env.jet index 9836dccc2d..b90839a982 100644 --- a/internal/scripts/installation/config/install_met_env.jet +++ b/internal/scripts/installation/config/install_met_env.jet @@ -1,11 +1,25 @@ +module load intel/2022.1.2 +module load netcdf/4.7.0 +module load hdf5/1.10.5 + export TEST_BASE=/contrib/met/11.0.0 export COMPILER=intel_18.0.5.274 export MET_SUBDIR=${TEST_BASE} export MET_TARBALL=v11.0.0.tar.gz export USE_MODULES=TRUE -export PYTHON_MODULE=intelpython_3.6.5 -export MET_PYTHON=/apps/intel/intelpython3 -export MET_PYTHON_CC=-I/apps/intel/intelpython3/include/python3.6m -export MET_PYTHON_LD=-L/apps/intel/intelpython3/lib\ -lpython3.6m\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm\ -Xlinker\ -export-dynamic -export MET_NETCDF=/apps/netcdf/4.6.1/intel/18.0.5.274 -export MET_HDF5=/apps/hdf5/1.10.4/intel_seq/18.0.5.274 +export MET_PYTHON=/mnt/lfs1/HFIP/dtc-hurr/METplus/miniconda/miniconda3/envs/metplus_v5.0_py3.8 +export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -L${MET_PYTHON}/lib/python3.8/config-3.8-x86_64-linux-gnu\ -lpython3.8\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm\ -Xlinker\ -export-dynamic +export MET_NETCDF=/apps/netcdf/4.7.0/intel/18.0.5.274 +export MET_HDF5=/apps/hdf5/1.10.5/intel/18.0.5.274 +export EXTERNAL_LIBS=/contrib/met/11.0.0/external_libs/ +#export MET_GSL=${EXTERNAL_LIBS} +#export MET_BUFRLIB=${EXTERNAL_LIBS} +#export BUFRLIB_NAME=-lbufr +#export MET_GRIB2CLIB=${EXTERNAL_LIBS}/lib +#export MET_GRIB2CINC=${EXTERNAL_LIBS}/include +#export GRIB2CLIB_NAME=-lgrib2c +#export LIB_JASPER=${EXTERNAL_LIBS}/lib +#export LIB_LIBPNG=${EXTERNAL_LIBS}/lib +#export LIB_Z=${EXTERNAL_LIBS}/lib +export SET_D64BIT=FALSE diff --git a/internal/scripts/installation/config/install_met_env.orion b/internal/scripts/installation/config/install_met_env.orion index 56cbe4bfe3..a144d8c492 100644 --- a/internal/scripts/installation/config/install_met_env.orion +++ b/internal/scripts/installation/config/install_met_env.orion @@ -1,15 +1,15 @@ module load intel/2020.2 -module load intelpython3/2020.2 export TEST_BASE=/apps/contrib/MET/11.0.0 export COMPILER=intel_2020 export MET_SUBDIR=${TEST_BASE}/ export MET_TARBALL=v11.0.0.tar.gz export USE_MODULES=TRUE -export MET_PYTHON=/apps/intel-2020.2/intel-2020.2/intelpython3 -export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.7m -export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.7m\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm -#export EXTERNAL_LIBS=/apps/contrib/MET/11.0.0/external_libs +export MET_PYTHON=/work/noaa/ovp/miniconda/miniconda3/envs/metplus_v5.0_py3.8 +export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +export MET_PYTHON_LD=-L${MET_PYTHON}/lib/python3.8/config-3.8-x86_64-linux-gnu\ -L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm +export EXTERNAL_LIBS=/apps/contrib/MET/11.0.0/external_libs +export LIB_Z=${EXTERNAL_LIBS}/lib #export MET_GSL=${EXTERNAL_LIBS} #export MET_BUFRLIB=${EXTERNAL_LIBS} #export BUFRLIB_NAME=-lbufr @@ -20,7 +20,7 @@ export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.7m\ -lcrypt\ -lpthread\ -ldl #export GRIB2CLIB_NAME=-lgrib2c #export LIB_JASPER=${EXTERNAL_LIBS}/lib #export LIB_LIBPNG=${EXTERNAL_LIBS}/lib -#export LIB_Z=${EXTERNAL_LIBS}/lib -export SET_D64BIT=FALSE +#export SET_D64BIT=FALSE #export CFLAGS="-Wall -g" #export CXXFLAGS="-Wall -g" + diff --git a/internal/scripts/installation/config/install_met_env_all.hera b/internal/scripts/installation/config/install_met_env_all.hera deleted file mode 100644 index b405dd1726..0000000000 --- a/internal/scripts/installation/config/install_met_env_all.hera +++ /dev/null @@ -1,13 +0,0 @@ -module use -a /contrib/anaconda/modulefiles -module load intel/2022.1.2 -module load anaconda/latest -export TEST_BASE=/contrib/met/11.0.0 -export COMPILER=intel_2022.1.2 -export MET_SUBDIR=${TEST_BASE} -export MET_TARBALL=v11.0.0.tar.gz -export USE_MODULES=TRUE -export PYTHON_MODULE=anaconda_latest -export MET_PYTHON=/contrib/anaconda/anaconda3/latest -export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.7m -export MET_PYTHON_LD=-L${MET_PYTHON}/lib/python3.7/config-3.7m-x86_64-linux-gnu\ -L${MET_PYTHON}/lib\ -lpython3.7m\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm\ -Xlinker\ -export-dynamic -export SET_D64BIT=FALSE diff --git a/internal/scripts/installation/config/install_met_env_met_only.casper b/internal/scripts/installation/config/install_met_env_met_only.casper index 02eb6a1c13..e84e5d3ff1 100644 --- a/internal/scripts/installation/config/install_met_env_met_only.casper +++ b/internal/scripts/installation/config/install_met_env_met_only.casper @@ -1,18 +1,21 @@ -module load intel/19.0.5 -module load python/3.7.5 -module load netcdf/4.7.4 -ncar_pylib +module load ncarenv/1.3 +module load intel/2021.2 +module load netcdf/4.8.0 -export TEST_BASE=/glade/p/ral/jntp/MET/MET_releases/casper/10.0.0 -export COMPILER=intel_19.0.5 +export TEST_BASE=/glade/p/ral/jntp/MET/MET_releases/casper/11.0.0 +export COMPILER=intel_2021.2 export MET_SUBDIR=${TEST_BASE} -export MET_TARBALL=met-10.0.0.20210510.tar.gz +export MET_TARBALL=v11.0.0.tar.gz export USE_MODULES=TRUE -export MET_PYTHON=/glade/u/apps/dav/opt/python/3.7.5/gnu/8.3.0/ -export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.7m -export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.7m\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm -export MET_NETCDF=/glade/u/apps/dav/opt/netcdf/4.7.4/intel/19.0.5 -export EXTERNAL_LIBS=/glade/p/ral/jntp/MET/MET_releases/casper/10.0.0/external_libs +export MET_PYTHON=/glade/p/ral/jntp/MET/METplus/miniconda/miniconda3/envs/metplus_v5.0_py3.8 +export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm +#export MET_PYTHON=/glade/p/ral/jntp/MET/METplus/casper/miniconda/miniconda3 +#export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +#export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm +export MET_NETCDF=/glade/u/apps/ch/opt/netcdf/4.8.0/intel/2021.2/ +export MET_HDF5=/glade/u/apps/ch/opt/netcdf/4.8.0/intel/2021.2/ +export EXTERNAL_LIBS=/glade/p/ral/jntp/MET/MET_releases/casper/11.0.0/external_libs export MET_GSL=${EXTERNAL_LIBS} export MET_BUFRLIB=${EXTERNAL_LIBS} export BUFRLIB_NAME=-lbufr diff --git a/internal/scripts/installation/config/install_met_env_met_only.cheyenne b/internal/scripts/installation/config/install_met_env_met_only.cheyenne index 318b3c3841..d1bc4a47a0 100644 --- a/internal/scripts/installation/config/install_met_env_met_only.cheyenne +++ b/internal/scripts/installation/config/install_met_env_met_only.cheyenne @@ -25,5 +25,4 @@ export LIB_LIBPNG=${EXTERNAL_LIBS}/lib export LIB_Z=${EXTERNAL_LIBS}/lib export SET_D64BIT=FALSE ##export CFLAGS="-Wall -g" -##export CXXFLAGS="-Wall -g" - +##export CXXFLAGS="-Wall -g" \ No newline at end of file diff --git a/internal/scripts/installation/config/install_met_env_met_only.frontera b/internal/scripts/installation/config/install_met_env_met_only.frontera new file mode 100644 index 0000000000..0d56c92e8a --- /dev/null +++ b/internal/scripts/installation/config/install_met_env_met_only.frontera @@ -0,0 +1,27 @@ +module load intel/19.1.1 +module load hdf5/1.12.0 +module load netcdf/4.7.4 + +export TEST_BASE=/work2/06612/tg859120/frontera/MET/11.0.0 +export COMPILER=intel_19.1.1 +export MET_SUBDIR=${TEST_BASE}/ +export MET_TARBALL=v11.0.0.tar.gz +export USE_MODULES=TRUE +export MET_PYTHON=/work2/06612/tg859120/frontera/miniconda/miniconda3/envs/metplus_v5.0_py3.8 +export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm +export MET_HDF5=/opt/apps/intel19/hdf5/1.12.0/x86_64/ +export MET_NETCDF=/opt/apps/intel19/netcdf/4.7.4/x86_64/ +export EXTERNAL_LIBS=${TEST_BASE}/external_libs +export MET_GSL=${EXTERNAL_LIBS} +export MET_BUFRLIB=${EXTERNAL_LIBS} +export BUFRLIB_NAME=-lbufr +export MET_GRIB2CLIB=${EXTERNAL_LIBS}/lib +export MET_GRIB2CINC=${EXTERNAL_LIBS}/include +export GRIB2CLIB_NAME=-lgrib2c +export LIB_JASPER=${EXTERNAL_LIBS}/lib +export LIB_LIBPNG=${EXTERNAL_LIBS}/lib +export LIB_Z=${EXTERNAL_LIBS}/lib +export SET_D64BIT=FALSE +#export CFLAGS="-Wall -g" +#export CXXFLAGS="-Wall -g" \ No newline at end of file diff --git a/internal/scripts/installation/config/install_met_env_met_only.gaea b/internal/scripts/installation/config/install_met_env_met_only.gaea index 478c7d0bae..63420b15d8 100644 --- a/internal/scripts/installation/config/install_met_env_met_only.gaea +++ b/internal/scripts/installation/config/install_met_env_met_only.gaea @@ -1,12 +1,14 @@ -export TEST_BASE=/usw/met/10.1.2 +module load intel/19.0.5.281 + +export TEST_BASE=/usw/met/11.0.0 export COMPILER=intel_19.0.5.281 export MET_SUBDIR=${TEST_BASE} -export MET_TARBALL=met-10.1.2.20220516.tar.gz +export MET_TARBALL=v11.0.0.tar.gz export USE_MODULES=TRUE -export MET_PYTHON=/lustre/f2/dev/esrl/Julie.Prestopnik/projects/miniconda/miniconda3/envs/metplus_v4.1_py3.6/ -export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.6m -export MET_PYTHON_LD=-L${MET_PYTHON}/lib/python3.6/config-3.6m-x86_64-linux-gnu\ -L${MET_PYTHON}/lib\ -lpython3.6m\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm -export EXTERNAL_LIBS=/usw/met/10.1.2/external_libs +export MET_PYTHON=/lustre/f2/dev/esrl/Julie.Prestopnik/projects/miniconda/miniconda3/envs/metplus_v5.0_py3.8/ +export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +export MET_PYTHON_LD=-L${MET_PYTHON}/lib/python3.8/config-3.8-x86_64-linux-gnu\ -L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lm +export EXTERNAL_LIBS=/usw/met/11.0.0/external_libs export MET_NETCDF=${EXTERNAL_LIBS} export MET_GSL=${EXTERNAL_LIBS} export MET_BUFRLIB=${EXTERNAL_LIBS} diff --git a/internal/scripts/installation/config/install_met_env_met_only.jet b/internal/scripts/installation/config/install_met_env_met_only.jet index cb339714f8..e642880266 100644 --- a/internal/scripts/installation/config/install_met_env_met_only.jet +++ b/internal/scripts/installation/config/install_met_env_met_only.jet @@ -1,14 +1,17 @@ +module load intel/2022.1.2 +module load netcdf/4.7.0 +module load hdf5/1.10.5 + export TEST_BASE=/contrib/met/11.0.0 export COMPILER=intel_18.0.5.274 export MET_SUBDIR=${TEST_BASE} export MET_TARBALL=v11.0.0.tar.gz export USE_MODULES=TRUE -export PYTHON_MODULE=intelpython_3.6.5 -export MET_PYTHON=/apps/intel/intelpython3 -export MET_PYTHON_CC=-I/apps/intel/intelpython3/include/python3.6m -export MET_PYTHON_LD=-L/apps/intel/intelpython3/lib\ -lpython3.6m\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm\ -Xlinker\ -export-dynamic -export MET_NETCDF=/apps/netcdf/4.6.1/intel/18.0.5.274 -export MET_HDF5=/apps/hdf5/1.10.4/intel_seq/18.0.5.274 +export MET_PYTHON=/mnt/lfs1/HFIP/dtc-hurr/METplus/miniconda/miniconda3/envs/metplus_v5.0_py3.8 +export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -L${MET_PYTHON}/lib/python3.8/config-3.8-x86_64-linux-gnu\ -lpython3.8\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm\ -Xlinker\ -export-dynamic +export MET_NETCDF=/apps/netcdf/4.7.0/intel/18.0.5.274 +export MET_HDF5=/apps/hdf5/1.10.5/intel/18.0.5.274 export EXTERNAL_LIBS=/contrib/met/11.0.0/external_libs/ export MET_GSL=${EXTERNAL_LIBS} export MET_BUFRLIB=${EXTERNAL_LIBS} diff --git a/internal/scripts/installation/config/install_met_env_met_only.orion b/internal/scripts/installation/config/install_met_env_met_only.orion index 5b9a8477d2..ece8d88aa3 100644 --- a/internal/scripts/installation/config/install_met_env_met_only.orion +++ b/internal/scripts/installation/config/install_met_env_met_only.orion @@ -1,14 +1,13 @@ module load intel/2020.2 -module load intelpython3/2020.2 export TEST_BASE=/apps/contrib/MET/11.0.0 export COMPILER=intel_2020 export MET_SUBDIR=${TEST_BASE}/ export MET_TARBALL=v11.0.0.tar.gz export USE_MODULES=TRUE -export MET_PYTHON=/apps/intel-2020.2/intel-2020.2/intelpython3 -export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.7m -export MET_PYTHON_LD=-L${MET_PYTHON}/lib\ -lpython3.7m\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm +export MET_PYTHON=/work/noaa/ovp/miniconda/miniconda3/envs/metplus_v5.0_py3.8 +export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +export MET_PYTHON_LD=-L${MET_PYTHON}/lib/python3.8/config-3.8-x86_64-linux-gnu\ -L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm export EXTERNAL_LIBS=/apps/contrib/MET/11.0.0/external_libs export MET_GSL=${EXTERNAL_LIBS} export MET_BUFRLIB=${EXTERNAL_LIBS} diff --git a/internal/scripts/installation/modulefiles/11.0.0_acorn b/internal/scripts/installation/modulefiles/11.0.0_acorn new file mode 100644 index 0000000000..117c0aa323 --- /dev/null +++ b/internal/scripts/installation/modulefiles/11.0.0_acorn @@ -0,0 +1,34 @@ +#%Module###################################################################### +## +## Model Evaluation Tools +## +proc ModulesHelp { } { + puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.1.0 + *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" +} + +# The intel compiler is required to run MET + +module use /apps/ops/para/libs/modulefiles/compiler/intel/19.1.3.304/ +module load intel +module load python/3.8.6 +module load netcdf/4.7.4 +module load hdf5/1.12.2 +module load bufr/11.5.0 +module load zlib/1.2.11 +module load jasper/2.0.25 +module load libpng/1.6.37 +module load gsl/2.7 +module load g2c/1.6.4 + +set base /apps/sw_review/emc/MET/11.0.0 +set ver 11.0.0 +set share $base/share/met +set lib_base $base + +prepend-path PATH $base/exec + +setenv METversion V$ver +setenv MET_ROOT $base + + diff --git a/internal/scripts/installation/modulefiles/11.0.0_casper b/internal/scripts/installation/modulefiles/11.0.0_casper new file mode 100644 index 0000000000..8cf3358f62 --- /dev/null +++ b/internal/scripts/installation/modulefiles/11.0.0_casper @@ -0,0 +1,28 @@ +#%Module###################################################################### +## +## Model Evaluation Tools +## +proc ModulesHelp { } { + puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v11.0.0 + *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" +} + +# If they exist, remove ncdump and ncgen from /glade/p/ral/jntp/MET/MET_releases/casper/11.0.0/external_libs/bin + +# The intel compiler is required to run MET +module load ncarenv/1.3 +module load intel/2021.2 +module load netcdf/4.8.0 + +set base /glade/p/ral/jntp/MET/MET_releases/casper/11.0.0 +set ver 11.0.0 +set share $base/share/met + +prepend-path PATH $base/bin:/glade/p/ral/jntp/MET/MET_releases/casper/11.0.0/external_libs/bin::/glade/p/ral/jntp/MET/METplus/miniconda/miniconda3/envs/metplus_v5.0_py3.8/bin + + +setenv METversion V$ver + +# setenv MET_BUFRLIB /glade/p/ral/jntp/MET/MET_releases/11.0.0/external_libs/libs +# setenv MET_GRIB2C /glade/p/ral/jntp/MET/MET_releases/11.0.0/external_libs +# setenv MET_GSL /glade/p/ral/jntp/MET/MET_releases/11.0.0/external_libs diff --git a/internal/scripts/installation/modulefiles/11.0.0_cheyenne b/internal/scripts/installation/modulefiles/11.0.0_cheyenne index ac7adc868b..d6c23de79c 100644 --- a/internal/scripts/installation/modulefiles/11.0.0_cheyenne +++ b/internal/scripts/installation/modulefiles/11.0.0_cheyenne @@ -22,3 +22,6 @@ prepend-path PATH $base/bin:/glade/p/ral/jntp/MET/MET_releases/11.0.0/external_l setenv METversion V$ver +# setenv MET_BUFRLIB /glade/p/ral/jntp/MET/MET_releases/11.0.0/external_libs/libs +# setenv MET_GRIB2C /glade/p/ral/jntp/MET/MET_releases/11.0.0/external_libs +# setenv MET_GSL /glade/p/ral/jntp/MET/MET_releases/11.0.0/external_libs diff --git a/internal/scripts/installation/modulefiles/11.0.0_frontera b/internal/scripts/installation/modulefiles/11.0.0_frontera new file mode 100644 index 0000000000..02202a7ffe --- /dev/null +++ b/internal/scripts/installation/modulefiles/11.0.0_frontera @@ -0,0 +1,24 @@ +#%Module###################################################################### +## +## Model Evaluation Tools +## +proc ModulesHelp { } { + puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v11.0.0 + *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" +} + +# If they exist, remove ncdump and ncgen from /work2/06612/tg859120/frontera/MET/11.0.0/external_libs/bin + +module load intel/19.1.1 +module load hdf5/1.12.0 +module load netcdf/4.7.4 + +set base /work2/06612/tg859120/frontera/MET/11.0.0 +set ver 11.0.0 +set share $base/share/met +set lib_base $base + +prepend-path PATH $base/bin:/work2/06612/tg859120/frontera/miniconda/miniconda3/envs/metplus_v5.0_py3.8/bin + +setenv METversion V$ver +setenv MET_ROOT $base diff --git a/internal/scripts/installation/modulefiles/11.0.0_gaea b/internal/scripts/installation/modulefiles/11.0.0_gaea new file mode 100644 index 0000000000..c91a2e74bb --- /dev/null +++ b/internal/scripts/installation/modulefiles/11.0.0_gaea @@ -0,0 +1,17 @@ +#%Module###################################################################### +## +## Model Evaluation Tools +## +proc ModulesHelp { } { + puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.1.2 + *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" +} + +module load intel/19.0.5.281 + +set base /usw/met +set ver 11.0.0 +set share $base/$ver/share/met +set lib_base $base/11.0.0 + +prepend-path PATH $base/$ver/bin:$lib_base/external_libs/bin:/lustre/f2/dev/esrl/Julie.Prestopnik/projects/miniconda/miniconda3/envs/metplus_v5.0_py3.8/bin diff --git a/internal/scripts/installation/modulefiles/11.0.0_hera b/internal/scripts/installation/modulefiles/11.0.0_hera index 905b76e82a..5a38c524bb 100644 --- a/internal/scripts/installation/modulefiles/11.0.0_hera +++ b/internal/scripts/installation/modulefiles/11.0.0_hera @@ -17,6 +17,52 @@ set share $base/$ver/share/met set lib_base $base/11.0.0 setenv MET_ROOT $base/$ver/MET-11.0.0 + prepend-path PATH $base/$ver/bin:$lib_base/external_libs/bin +#prepend-path LD_LIBRARY_PATH $lib_base/external_libs/lib + +#setenv METversion $ver +#setenv MET_CONFIG $share/config +#setenv MET_POLY $share/poly +#setenv MET_COLORTABLES $share/colortables +#setenv MET_PS $share/ps +#setenv MET_TCDATA $share/tc_data +#setenv MET_TABLES $share/table_files +### +#setenv CC icc +#setenv CXX icc +#setenv F77 ifort + +#module load intel/2022.1.2 +#module load anaconda/latest + +#setenv libdir /contrib/met/11.0.0/external_libs/lib +#setenv incdir /contrib/met/11.0.0/external_libs/include +#setenv iprefix /contrib/met/11.0.0/external_libs +#setenv basedir /contrib/met/11.0.0/met-11.0.0 + +#setenv MET_HDF5 $iprefix +#setenv MET_NETCDF $incdir +#setenv MET_GRIB2CINC $incdir +#setenv MET_GRIB2CLIB $libdir +#setenv MET_GSLLIB $libdir +#setenv MET_GSLINC $incdir +#setenv MET_BUFR $libdir +#setenv MET_HDFINC $incdir +#setenv MET_HDFLIB $libdir +#setenv MET_HDFEOSINC $incdir +#setenv MET_HDFEOSLIB $libdir +#setenv MET_PYTHON /contrib/anaconda3/latest +#setenv MET_PYTHON_CC -I/contrib/anaconda/anaconda3/latest/include/python3.7m +#setenv MET_PYTHON_LD -L/contrib/anaconda/anaconda3/latest/lib\ -lpython3.7m\ -lpthread\ -ldl\ -lutil\ -lm\ -Xlinker\ -export-dynamic +#setenv MET_FONT_DIR $basedir/fonts/ + +# CAIRO and FREETYPE were not used +#setenv MET_CAIROLIB $libdir +#setenv MET_CAIROINC $incdir/cairo +#setenv MET_FREETYPELIB $libdir +#setenv MET_FREETYPEINC $incdir/freetype2 + + diff --git a/internal/scripts/installation/modulefiles/11.0.0_jet b/internal/scripts/installation/modulefiles/11.0.0_jet index 356ae2bbac..30a6fcc946 100644 --- a/internal/scripts/installation/modulefiles/11.0.0_jet +++ b/internal/scripts/installation/modulefiles/11.0.0_jet @@ -8,13 +8,12 @@ proc ModulesHelp { } { } prereq intel -prereq intelpython/3.6.5 -prereq netcdf/4.6.1 -prereq hdf5/1.10.4 +prereq netcdf/4.7.0 +prereq hdf5/1.10.5 set base /contrib/met/11.0.0 set ver 11.0.0 set share $base/share/met setenv MET_ROOT $base/$ver/MET-11.0.0 -prepend-path PATH $base/bin:$base/external_libs/bin:/apps/intel/intelpython3/bin:/apps/netcdf/4.6.1/intel/18.0.5.274/bin:/apps/hdf5/1.10.4/intel_seq/18.0.5.274/bin \ No newline at end of file +prepend-path PATH $base/bin:$base/external_libs/bin:/apps/netcdf/4.7.0/intel/18.0.5.274/bin:/apps/hdf5/1.10.5/intel_seq/18.0.5.274/bin:/mnt/lfs1/HFIP/dtc-hurr/METplus/miniconda/miniconda3/envs/metplus_v5.0_py3.8 \ No newline at end of file diff --git a/internal/scripts/installation/modulefiles/11.0.0_orion b/internal/scripts/installation/modulefiles/11.0.0_orion index cb2600d3f7..655c4af0cb 100644 --- a/internal/scripts/installation/modulefiles/11.0.0_orion +++ b/internal/scripts/installation/modulefiles/11.0.0_orion @@ -8,7 +8,6 @@ proc ModulesHelp { } { } prereq intel/2020.2 -prereq intelpython3/2020.2 set base /apps/contrib/MET set ver 11.0.0 @@ -16,7 +15,7 @@ set share $base/$ver/share/met set lib_base $base/11.0.0 setenv MET_ROOT $base/$ver/MET-11.0.0 -prepend-path PATH $base/$ver/bin:$lib_base/external_libs/bin +prepend-path PATH $base/$ver/bin:$lib_base/external_libs/bin:/work/noaa/ovp/miniconda/miniconda3/envs/metplus_v5.0_py3.8/bin #export CC=icc #export CXX=icc @@ -38,9 +37,9 @@ prepend-path PATH $base/$ver/bin:$lib_base/external_libs/bin #export MET_HDFLIB=$libdir #export MET_HDFEOSINC=$incdir #export MET_HDFEOSLIB=$libdir -#export MET_PYTHON=/apps/intel-2020/intel-2020/intelpython3/ -#export MET_PYTHON_CC=-I/apps/intel-2020/intel-2020/intelpython3/include/python3.7m -#exoprt MET_PYTHON_LD=-L/apps/intel-2020/intel-2020/intelpython3/lib\ -lpython3.7m\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm +#export MET_PYTHON=/work/noaa/ovp/miniconda/miniconda3/envs/metplus_v5.0_py3.8 +#export MET_PYTHON_CC=-I${MET_PYTHON}/include/python3.8 +#export MET_PYTHON_LD=-L${MET_PYTHON}/lib/python3.8/config-3.8-x86_64-linux-gnu\ -L${MET_PYTHON}/lib\ -lpython3.8\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm #export MET_FONT_DIR=$basedir/fonts/ #export LDFLAGS=-Wl,--disable-new-dtags -Wl,-rpath,${libdir}:${MET_PYTHON}/lib #export CPPFLAGS=-I/apps/contrib/met/11.0.0/external_libs/include From 3b38681433b5a29ca15c43ec6a062e48d4992cbb Mon Sep 17 00:00:00 2001 From: johnhg Date: Wed, 28 Dec 2022 13:08:21 -0700 Subject: [PATCH 04/30] Bugfix #2389 main_v11.0 flowchart (#2391) --- .github/ISSUE_TEMPLATE/bug_report.md | 2 +- docs/Flowchart/MET_flowchart.pptx | Bin 372533 -> 373080 bytes docs/Flowchart/MET_flowchart_v11.0.0.png | Bin 0 -> 171779 bytes docs/Users_Guide/figure/overview-figure.png | Bin 169527 -> 171779 bytes docs/Users_Guide/overview.rst | 14 +++++++------- 5 files changed, 8 insertions(+), 8 deletions(-) create mode 100644 docs/Flowchart/MET_flowchart_v11.0.0.png diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 11857bcd22..99dcf64150 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -1,7 +1,7 @@ --- name: Bug report about: Fix something that's not working -title: '' +title: 'Bugfix: ' labels: 'alert: NEED ACCOUNT KEY, alert: NEED MORE DEFINITION, alert: NEED PROJECT ASSIGNMENT, type: bug' assignees: '' diff --git a/docs/Flowchart/MET_flowchart.pptx b/docs/Flowchart/MET_flowchart.pptx index afb35fe7462ba5835b6cf40226562ed85065b913..892fcff3b5af06d196db3d1f24af60e062cc752f 100644 GIT binary patch delta 22052 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 UYleQEj|D}m0Im~B_W+3g2Y)yZ-2eap diff --git a/docs/Flowchart/MET_flowchart_v11.0.0.png b/docs/Flowchart/MET_flowchart_v11.0.0.png new file mode 100644 index 0000000000000000000000000000000000000000..201e9b7a531fce948f8a3d1323a70a7090b14a77 GIT binary patch literal 171779 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

VyZ{l?)QfqzLL8JWhk zN3^_3XdZI^2O4U-TlEZpCv!6&4dHtgu7mavU;U3wGX!A+{fO&HG=0ga-8@|&f$UD) zjJ!hQuh{RR3$*R*tzi5@dbmx-v6>0z(?9QLO;SzZ^gUf0^uygo)|s#lwoe=AY&s&+{yUfIpd?ZMkA{Ok zb~{z6!=lp^Hr+!MUl!2BHfT4X3uC}G`mXyAgF%~WqDt`d&CzL`R6NShAqdZWkoB)> zrDm?h-CX}LSljk9(o;Y&(_eWKQZd^yNB=zJ^A%2`$%>V}qvfVQ7J5w;rQ$vddqQi? zOwU(HI=t1|t#2whw0(oFc6QsYI3e!=Q1H#~)3)Ddw;xmWj1R9jJ+Gwn5v?H@h5)D$ zY{Z~<*Z?snz1J~9Mu|&4LNXY10q#;|k51Oj?cq3m8N1vc;f9Lh>LZ%goey@gVKJz^ z!|{Uo%uPx|L($;X{98r)oj=X)Dl@c%Yb5)sYhAozTx&P2WJ#m=5#gz3%x3WcA#2=W zYfI=Gjk2P!pKi5WoNb zmXJ*s>k7`9+MkZwf>hg=V_12}I<7ijk&dQmRV%hDlitNM7nM4lPL#hf{L#VTunJ2E zwmkzlGH&4q9VzM|f}a)bVv7GG(F}S@V|o{za29>&aXT_~X=d)}*GT`KarTQ|Uzh5H zZL zka477DfT83Qf6j~HKdblFCgMbppm?uI3X0dvw_~vg=(I|d0Zo(PY6VXqNO}xf$e5wy zm;Q3-dXkJJp(dW z?Av12$g|(bd@%RDzE3?xL-RX^d4toK!m8EM@cPy&v;het)SzdQ_+|5Omo_n$ej(H*6Rj!(* z0DbJ`_%2uy^7dfghCGG$!Fd)VO_lI}SpdMl&9@hp9&6B(slsQY-IF$6&s6~*3TUtg zzC4fK6U`LLB)~_(qRk0NJq3ou|4jb~AJ!7uvF#3}*k~h{Rzvfh|EHI7DIH8U>z za+A;>BZu>qKH`W%EkQYfBEC={xs@N zXB|4cvQ)C(1GAY|cV3>xXXU3TRI!cze>1yB3Im%B5i9vK`^QLV9s@M^2S8Z+H_U&< z{?b?*24(te2#Bf0?3RoDU`Pyv#ZXrFLb>^0S z)b$OviZn>g)5||#hXXnoaehV0TnNc|_@^@6b90WpsrET{&u(K6m2;+3d`)iEXQB7- zzr82TXKdffZvSKwW+HcV>}<6+w!Ge*vYT8Tt9grCd&z+xQuuqrAP>ABTY9OoXW&wb zGya5agEOCf2$H=w*}WYiIWMkpRqd{qEz(tsV{1GG7MBz0DY7Iz z#Uc!#Sw?^7rb_D{(YN_p6*er&q`0*}{^k3AD*1MC_zY2ra^|Ty_L(1=tI>e?sA3on zHG3>cRG8v;xg$VPMBc~1Q~8dl#@}7mpeYW>U_jI$T)D4+2%_68AN^lw(s+ftBa++) zZ;nXbdJ+C#mT@p9M4QgKPvP^V8ZFbR`iu3QtneR+4w=7I4yr2wIT?+=I>c^}W_*Zj zReNtsP`poEMszZ+`HP{_WlCC=Fbc|B2iXQ28>XgS7 zRv{7;!m|O{k5^j?e44u!J?mUPZ(N;nH(mdw8a=^X7c(&oT_I-kY|}`#_3cj?)^juz zC!YKcpW!a-`kMItZ8|Wc&G`)4Cgdhxd2mj!nIixwcWFR~LM3;jyY8E7YrI936Q%gW zN&SZuC;QK=j+osAlb_L#v%pC<3#}l>wN7Nm*^fM`#0J)EZzLh(rI`C1(h3%zo{U9QrQL!$MQ}PC z&YFAOA1p3ohYXVj`PH_b!x8=lpN!IPHw~b$j%UTXxX6KH5CacI>7G`r4(sVdDcQX; zCHV1;4Do@-^`EtXyx`v{wV8j(QE~DU5I$@sCjSk4J9AC zk)yvO&s^Jw|Eu4(T&n)Tr1nuOhx2?XAXS+x%ivGvqL8jFV8W|UY}#bk8=s0N0;BU4 zxeqEHeh#mFx{#!ADvF0-^_VRV1Hgtsnj{7Kv8#N6X;#HwArjeE@cMIxnU9`KaCR*M zbAs&v&IdVPUK?FmNw3S*`LqlFwjQ4{DZAx$D~By5)Yuan`r$XS|HFo7#DVD-o8zl9 zH8~g42%SdxEMQp@k_O~lgIAE*A6&x1k8$K8%YlVTQ#Jo?3eZ78iLK~uMKe!VVOwPxnp5rZQE9GLo;CF&s-vBF+EBR_i+ig|>-H|NWY4p7Gs0>` zaE;e&uiyaIz`V$oR2-q#=&znjR3Oz~0nq#_dQm5IRhi%PCeV{kDO!$y*Gttp&Z3t* zCIhflC+Aa(yFABJ4+@LuTXI8lavD`(NV82_)JU;iPdSJzbr#KV3jcnf>*QpZ2K)O< z?$J3~F9BclH?l$w5~Rvu1hTk|ODWc`Ez~8`4c@q0^kci%P6i30e|nwg(A98*{!yUr z2(BfWtrcEpd?`$p&r0M`l3pcS;5>0SoAbn3lA}%|J~4pQ$Mm(JX2z2>`C3Ucff|Qn z2K?GJ{4|HG$bp{-Zp*qRtS71POazMx_$q%|>8`@nh)i4C0UztTxksq`;%B#>bd?wV zjAdpwt=($C|JqS@ev%hJq^k>C|MqG16s`7Sc#yW8odjP=-cA1$|t zMW(AiCbPzHiftTBgl+YZo9%TRDdT{oPn95~Ow~H)E2A~vg{r-9=t{tWR zDi~aYVki5&)}sCP603edbGh+tLf~69r>cqemG|Gz&u`>+MgwnZV9lOU808cl)8eI) zuIZb;&66Oy9DF7wKdEMea z7Y+os>E{ib;q7Jxg5`@of1H+A7q&$KMu67? zbJJw{sBo#IejK6InLnS>MEh5XG=%>9exVo)4;er%wka;wDOFgQ@6XjIStBR>`SzwW zwXx0kWDoDeZy}MmY6A;%Kz^1V{#pw44n!8;0B;V}wEJf(ro2UKE)9V+f0D)0dem7Rj-3<9Up{bvHflCWp44SXAnmgx{nz<#v%S~| z=Izff%y?uwA`;XymVqF{mxP5A{_MwUgjXKN-?f3zhybN@A&Is%NkA(s>U$VESIrZU zCt^C83HpLI*9Oc%gf8@a-;+`|0pAs~fhz3rJ0Ro-Q096r13GLB7uRR9>Hx76?$ znXYD6*0%FYzh*ch_-R6S09wl)^DiQOuLOs3=$R3)3zLRz0 z55wL*DVED9yBHxG>?b+|q?dn?vH>BLYkNT4H9_STv&`X6YlTJ~1rHC8OqIOWZwk|fs^$B%=d87uH2$#5{IAei*UBnbqSE6OcbarJ9adT*o6 zwY=gIARkGCWyxaJRT|R!8Od@zy}g`O8#GE*f4-n0!NZdtw)li6|Ibs9|956c7Zx_m z0MFFTh6+Z4cKdJl;C9W`hQC?udBw%9f%eB-UT&Rre672s$5B$rUsrpQAN^w72=G$+ zIO_|>y~4k9iS32QbzF(~*iO%P&WNlOolg=DJnoN0lAc8@gf>^v$1p23+s^lB;_+eN zwH?)^0Y@l;XUX%cwQrggc=Z&8h7*9r0r28)+y1-e{bOVBO!z1${y&g@4g)-iYG7{x z$&*c1E5h{GtpMChGzwgz(RvNT4lXr>fFIx}SdfyE_Vx8u>vaKETyVDqWm3xoY?Di( zcHwUf+E{ZV8g(Xrb<^URJZ1}}?0P<*_K@?_`y9TX@!4+jnaFUX_JyEA2|{8)iorQK ziuSkl566?vOtT{O2|ImXh1CB%%&=u~OD(rBrFmPp-Tm=H%=6xC@d8#4)8OTZliDW!2#8Km_62-O0CeE!irj+)4=RL||H; zZ#273#ZF*L1?GkN+`G^5G=$1$6F8VCd}HEyzr0W;nP6*bK{sQ4M{CObYm`j?_^&MM z&_H$pMKb{J3s$HS5sErhsbU`ZHBuG0ijc)JCJ^ieb4#z+i8sCe|7_7we;hWoKfFdq~y%r#TC}6&Q3{o12fVz16D< z>(eYzCI9}nScXc*Cm~aJ0VxdHU&5lok=kA8DHtA1?5H{kFN0_(-X11nR9p2D4XY+O z7P;5?`5ac34{JwO>g~~F*2Sl0G3TN%U~IDaeFr0o$|GBsJ8r6E)(A&`mp+5vY};Iu za_i7qmcIo%0DTy~_^KRu!M4}pAEn?b8O6tx*!nuJI<7pU3i#Qb)1PgZJH+wP?YQ3S zXFux1W{GCReo)fsb-1jACCAcogjvq2>`-NBwW6mQ4b?8Aqj?}c8BV99?b(t3l>`R| zpYK(0k|GF5U2Cv(eSNU5FC_btm6^$5v;H5c;F>TLFlRr(Zl%z`#otT(2qmxkHG=vs zA~Rl)H$?UIfH@aCQJU}W20)Q*3w?Dgl1}oQmxQh+O(2!`!d?tp6R4kI%7Z~Bh|2x= zc(tWtEC)>G=;@wFpy~ZB&ny0uEwli3HYY?O0EV15!Of3aqYox$2IsY%!{aPnMF^AA zPP;ddxMb`E_bp$3Tdox_%rtkJ;zmByYA2;&YtoiEdKO{Br9d#~tham9x}3QR+Z?*m zS*cC3cj{MZKR^Xl4r}PmbaJhzZO;Xwx(HsK8Zy_+xIcdX{gv`6Xaw6Pm5HPz`XYKR zC9?I~ZJAz^ew9~;=L3sYJIPUnw}~I*A${s?;8mFLBzJko9@D$tUi#rMC9`1TYMK1t zsOG%eTIJdBseeh|($rhErejJWm{WKBnoJ13YxU1RkKahk6vInEb3A0;&vRD-K_@eH z5?4xsF{)F>0@!Q;xw8xxt8^L-E(473*{W7wjRcrp?sPNo#|&NG9v)t;VJ=n&eojc( zjEqCd(iM~+H&JWe1#@zqB+GYwSDh%Z3?16t&SfS03jWTMiP5eH029>9b~L!iqWi}} zH;Cc?w)eA!j~f-hVQ`uud~i_BAOX7^22P#HkK-llC|xP0&2w1SYUhUA<$QU1TCwqh zY6veQtK!^FC%Ot{ozL`R9Z`!jhs$ZaPHABnoCE5VhqsA=oVa#|!NLHr*d8(w|KP|Q z?5s*~Tp&K5I}!ZV=XoHE+?U_oCcz2m{*&6u$a4RYi-BQtmB(O7fQN)nP6ye1i9Vvm}*6@N52du$-b3@Hn)+x2@e&k0^9Xg_ub_iC_MNh zngjJhpEMl)*L1HmFw580|3lV42Zz~3UEFYNv$1Wvand+x*x0shr%{78R%2U@ZQHi( z_sacz&-c7DZ~y6ZI+MwzbI#s-t>22Q!2K58^4#?_sbg^P27McYvwdC1w%tw*;VXI9sGat}_)yk-^+9|DdIPYGnF!hzi@jR8 z(*Cs>PkrB!W2?uYp2-*Rv$^VPb)G9q=s{Wnq%TksWLbB_uAvaG+V;sU9(lzhfGF$>L5>U0WM;(oJK+RBxBT>q4tuAq#@* zJng=q=JTfraaPu|u=H+$Twe*T${GYQLe9kG63j;BI>*dq77>y75^fj}r@ukO2Q zmJXgEpk~gPKg*MUiu#d{#XC~mFE+3S@AFEH?-)m|pC#k>KH~GiQ_oiCO%PU7kKZub zT6Or6mo-|pqtuLI&TZF~o`j3x#AsBw@im2?xn;1`LuQWtpU1th`h%eib~*D(E9$N^ z9PkGT>8lTedtb>EmoJhC$=hO=vXYFEtvOnhXhs1}#GXLy%hf$*NXFV%^Oc6B%?Zne z2KQ|{*2VyfQbmP7wU(XKjW3T^J4Fe^QKh+^LMZoaVv?K|s-|SR+_SGhSTl*J5mS+) z5fGx6?HYzzzF!Xr3IOTz2*5n$*;@Io%h2@CS_Y@h@v@Qp-#(-!uyrD!PdT> z{xccqmlsrHVMdXCis)}#A;H6T8ChxaI+|&<9qc(QT4ZZY@*Xg#TxkU|jdq4Ilhof= z{7Uaz2|ui1X|~fF?+%i_`(iDjeOY@NpmjexTzm`Km(!%zdDXI%9IU#h{wq~)6{SnC z3{v2LgY_wojGZFs5}vvu#S%BzdyYpUWZJZVEmL(z6r*f=Oc|j4I*=lOtZ?4w%ObgB@%OOX5fkYUO@hOj+3Yrb)-zle$rFm`gv;GxH_^Juqm+q=p;C&t z8iF2A2s~WX?ZH}*LYI)jy_kIZdl(YI;LN(C&NiNo&UQBepBtymbZ@<|N#R7Q@t##Pe1zPN1zNrt3b`z8;TjF_FEiPKS5#R0PyX%z$XBh>*hGjew4;ooJmXvfpWWtSuOxA*cI@C_P8 zPVx5+R^Kh+BQ(8w{{@!E!g#iWam_aG{Cnz&$5QDT_A7yJ#PTE^#{1nCP3Muhtw)WWIa@?g^`ZQgO|WPbgr%X|75K|msf6c-qY^){?( zquQj~v;5DmAiH^<{6!k1cXT2$KhMnLt;OvkhBM=~AI}cOgt>Su9Vi;hbXqxIbRBK> zQXzgN`9oS|18k9E-T>3+-t1pk$cd!|$j??>=9PLTM^7z?$2xHEL*LlCZeMhq!xrp-x2;fWDmMF3L6ggP~ChmD5vlT1Ts!Pqg z)UxhZv(hm|>FkrR49CR{1u9SZB<36JamWEt@rfEc z-PUwhai`Mp9A%DdVIyXCP(6*`!p*Kgou34v7NlOGU9G(z+Jcf|ppL~SG8hf;wE3O( z5#D+2WkP=QZfBtvDoV(ZF!BZrnQs6!5K!%00g6uCfYg0<1SgaNJvfM77)Oq(&lic%ygiEi;$Ib;S>-gQ zXL_DQuSz#;7`=sO{2W<>;HgG|gND{E!6+sv;(>1aGg=!g4hZ==0%WPAq@Mcv+0Odn zP_1)7;NLWYTHUhFh&kHe_@^WeQtyoyc%BIG4d%D>`N*NJ)_0zhp$TP&{{4H*7g{w= z5BHb9X4nQ^8ngPv`dGnCVViGOvcJij*4e-_^-2tQwO!~=UQsweC*Y7%s7@EyUtZcF zpYr_rb+4KBGg0U}`P$EPQ7pa%p!b5!py><%wE)Mi{~seGBVc+VV7uCs*5VAD*Mshm zzA$f=H?Ff%&wkz@Ggu9@5b*buuSXt0!|aqRC;9UFdK>NidW0!bPOSKQuPiB$;Lh-N z5_up~vKagw9!GBBABI7)Jy~V4mb7VCH{|ag5ozDK>F<>3ul!w;;#%$fk?d*RyO2qs z^+nk*D^{~{Aa^(Ubl6rMCz+WRqfgtLvE>cd2P=*v4~Sf^vtu9YW8_>RTw`B5eE0pf zxUwi+`u)ioCI8iXtS^N9vW&ZS^j;ANZx2G_-P5T{PKBUX0c&yv!iXsZiytw&D2NJz z0r)tvF&FChR1PcCoT%x7aw%dm3VkV%Wg*zE-}pkKG1FZ^!|j6g_RXJ7GmDu50Q7`j zqCzB!j*AU$=@VqQeDm1ZNYH?RPAQvhBrz=TcJSCM7g&xx$NmV2YRO8%eHe&mg*3)_Wa?C zYIFiD*B1gDY~P!qpw@WH-|S|JBI;JE&RyM47KFklMN*yL$rYRI4Y0AXamLbk@*)}4 zEATsh0XPrN=WA=4lj;3pDdHaTxO{4Se)#L7?^$1cBC!~FjR#TUoHO}7KBEGz27pE< zKz~P4?EhVu$P_PAol9)Y_@buRHG7Sa;G3$zZhrW{BaOl0=jKwZL;NMx#pQV3q;Gn! z_^h;^s~p16(9nMhusrsu_$^i$ST8WY$7HO$jLH|IFYO-8+~%>mta#e~dD`}#nxy}@~ml+DbR*Fgkl#+=nXnhOxAus1`D&cham ztRqM49qsJQbolw*+c~rfpXz!*-lZKK$ocxzg90v;T!dofVr zN1B~RUCqv93xi+NDoV_RhCp*PE5 zpWkH3Gm~apLl!=)DTAmu~EV9^gx%SmWW@uAGWn#A&ZCG@p z5(T?pwgCQ$`(tYpy{{ST#qB1~ob%>C0vKkWw8TsS^3F_woQ!3OH`6RF_?L2sI8LR= z=xAu14MdMocgRyG$V|krP~oyJwKqELC$7`O(Cl!&_^h#Fw;e|aoY~QNo-z?IQuB1a zj`BRO_tL`ix3>{Ly(f;#B5i8=U5E8R9y$){dLyZfaV%OImnDwSb zSV?wCm4?-oo}&~p$zRfQE$2#rOrEaqDD~_=k$yzcBrSbjR+O+eXWK`=&v zxNIoU&1Q7<-}k_ z*}xx^?yi7(<2QLE*dV5AL|I#AX=HbWKA2O@{0Ud?V5dUaoQ-Lt4nbV3|!B?343 zndTfRe}Smo{}hXp|2`bHD+93OCH!A`4wZ(VAZF zOd0L&>EWvgr`>l#dK$C%e{y~y@!Lv&^DD=5csQymNDG|UXsl@{d8-%@)WQgHKAE7y zVVCbADUFJX2A3tDX#~>QkNe$N$LeV1z>+CIt*orv9-LFSH0C|)mn_k~6++a|`}Yg- zqk#7QG+~iY8gYR&04;VqU!^IJP%qO6@WnP0_(Gy5eQ(4X=}B8%IPlJmy^ zq$4Guu%=aM6MMX(!~ZpOrt&SrKo>b|aUh;Lwg(9kMYVOc@nX276&ehU6&gH!qd2G1 zbVRS8hLINP=Q}g;?Rd$xDx#vIR*}p>6&ZcP zULV%IVqd!Qo5+rJ6ZFk7`p=W#u^om*&29OuwYiU2?_4R<- zMby827x0SmS$@nvfE?L(Wh4i!^D6XgfV|0-Pi_NziN9Jkx>j00;I-Qiw)*g1_n6LZ z50}pha~{g9I~lJ)4B_At9n>bapW@vZp<87-YypQcZFq{KIbM?YO3=uTp`n6LBSHz3 zhPI8u{{Fr4y~}V3MJ)Kmx3yZp>O|k+N6XABved=(4RV;rE~_c?#85G_M3nTrpv33i zVpJgO)sO`*4)HdpmY(K(3+kww9Hb?(kqzJ6g|hRo93D*G8lFZc?=XMIjb@;iSuY1d zH*T5Up?_U*MIye6f7^w zJKnC|Kl~o7n`m6F#HN;RXUnPpAySC#MG=_)fMMl%g-ZP__;GgE1x=J443CVg4(bqr zMqzI>FgQLw4!|T-wNecvN|tOPH>lr9{m5*TUCcGM&I4{@88;%iu@U@{_=<|M;MJK> ziLl)+4){T_C?z(;$Z`PZ5 zIbsb{!4v5;i$ht4MV7#;NjbJ&3cHH|38W?ix85b{JOV++J?)2#|nC3h@K&Sn{}1CI$J4JqLMy%)d_dL32mAo3=C zqw;TeWFOz3Htqi8;T7H)i0T;$PZk=(6I z8n9;SjoR~9&E?xC3s;U#PC?;@4W%=b1;8W=cyVuj`%{3L8%E>8)B$z^%OSItzl6gG z@|^E47lLmhzMSJ(f(jAu<^aqqY@>LC-eJAYt2bhRiyHLS?L1wd5+((YoyYxhvll7^ zs_nbiAF|lotsX4qubfCoP)~uX0%F?yAh_GCo>nfMrM~a1dSxD}FP;+*4|zoV&D=gl z-m>XIZWPYbCBIhMWP)lzO9^#ao)$R`_;l5Z3xYpI62I2V{T$F6JuF~-)$OfH6vW*v zu*(AyLGD4AvwyaGB{KfFzpf5u$Yzf^Ni$iOc;P%(YcUx3W!`jyQN^H0{@a?(QwzSn z8uuL~CM>nE;r|K{!IOMfDVzO4J(3MZo8)C(oJqo71Z^Z3gmtIQ$!4R-o$>U(NG(8) zb+k#cniiQlu`W*Fg0p7UTQ0;?ZLhQ6UE4F3_OQ6F`*3NDjnWWRs%7D}z<9PY{XJ+F z$DV-g4Ff_*zZ472FGnQA{&o1P&38e%SE#N#k&VP7r+G?X;=}*n8IhmjQQFJ|gO{&` zS2&rOnN+riJu`S+v{+WM6|Ukz0b2Suf%?AfZ_z%1=+N?k>9`;DmY5*8dW9B;X=ANlLdL&SuCK4>ODC>#pJ+$i%!~bL-N`n)?8TQT;H&@+{(Jc4OEg8Wu(DrcOIl5`^IdWk`V zfZlWBbi8YR>S&54o1o6tay>|?L+XNq;@W%Eb`ZSCYb&u^>;v?u{#h=ZujiD9{>^`_ z*`-P)1|v?S|8c$D7iGP5f4bxZ$X?A;(U|T5cEn;0730Ex1Hrh@k|t#xw%O_6{dPtn z+A;&6|6WjmW?!5O#!jm<7JtjAc~Hd{T3&B^aWQmm3sy)9tji zTJRbqsv9#~nL67f7UQEzCJ^;K0h)r)<&EH*$%U!}nz(tw7a>7zqG8-Um3jrIgibpd zwYicH-Yyuq?qJT+IR-oje0U?LKWI%JTf-b$AKFGI8vHF%>Q_hfleI@wP@g70gMeA@ z^;XQLtK0Rp9p51bFO)AWl9Gs0X}Y`n%%q+;2qeJKsNQ}{#QN~+?)Gj$57(jba5r6@O+fir-U{~KJ51Tx5UweE=%TEnLytA^>~^2W@|^RalO;A zh4gh_0!K)16V2@w#>!R^JIEujY_f5v0e;0*krA;Mw6-)T*%gqk9f>PHhXVx90$SeJ zt2G}uIw=2fbJ%j15B?S|{+AugRk!Tf-UH|2cRR@PukII%6t8-OU{Wkf3>`y@cnB+$TN97v>5whxT>fvS&Ngm~SMon)yzM}A35 zo(+1aPBN#?X9__0vk;!f{ri**!cj-4s04hf(v_o^e9#rfDeWqb*}P7E2U*P}TZTfJ z$6Jja=QXfr+YCCs-8V-rtG+ZB0@1DX6rP;-w-y*K7xDFSNccfTs?RBLZDzPk7G;2p zaZDNvF!SiG+DE`f;43K@+3EVAJW)eM2_?OGJ4${#?1RR{!=TgMYKHDtClB+_b2GZY z!soNxro;Wn?-BX`nDP2#TGN^W2!Ca=y(LhT;&NPz!a?qhDWVM{7 z&Yc4okI;#-#E`DSG>wgo2k1sV_}yqV4+V@<{q&}lav}*r1=5|o$`hIQ2|$gXL9LiC z^SfWCQ6XJI(inI|CB z%HTUIfF~3|cDJNdP%lT!g z!bzc4bw-sp8+AH5VT~@qLRy5ZpHkSd>jG88+k@>1I8MAlwfOw*MG|ikH*SQGyaTSR z3lH9s4}U0iFuxGQCoHj=1*!fSB6(d40Eb57hYwZP2L`}Av}zQ=F}pO3CnKJNn{;h`B!Cf)SQ zw%zzSK-+L-t^&Zs0q;+mfvn5Sup}TT5rU)mw5e%nX<3IosR6YZA-`M^24GW@70JD{ z8F&LrJpyJbO1=P83rGXsA;O(NP>k|0p3F1@C1CmUE$8oO3C^X-_TiN%Wvp~Busm86 zc(QKcDcG%5{9&^kdZozjnS?&!D#Ii6thtG`*cG+AQTA3&t}ysmN`D4wO=;CyJ&yC; zoDMK8zj&12FQb`wUh2B-c&|-{Z-zROYEVI3r0?B5e2VSUXuOh666XuL=@^ZlPT3H%gm%wgyuAK7i0he{cnye#xafamx$3 zUeRZ$uSNG48(Fm8+TH05t9w>#z}QOUb2d8v8%)pl8-WJ@<*5;Lq!8`Fc!nr=01iZ? zC1DvL*Gj9e&$T_M0yYSgf155S6lobWZw~a-8>MCwV=Il;X)QUs>I@9#%R{nv*RzOw zku6+S)9fjnnn^#TKo9^^`8&^zS&St|;nP6A{aF0+5oA_}0(K=bztDv7aov@+z?QLh zI!tqRVnVka|5cgh?)n(jhb?^Z^db)>?S1S}A;Id6&!t?F7Z*|1eFsTe{yq9~|3uq^ z>)E=+(e}pol?C!MEtf-FloT>o*T59J$bN)Yl3bTj2#hF8y279ucPzkMoWR7F0E^lh>OYgE| zlpHJ*I6)j^kV&zPL{M(wWaC?{5}g_e2|0uGF1WfAz~dLN*$(ED*H*uB1=aw&C-3Tukk16ELG zeGqb<+3C3w)!IXN18t7;gw5(k|?rrxJxX#o{y);bT zhqYdIYL<#W@7*c{d8^J#y!yJoqOX4|FX|B?WFm6tW-KI2m%lGlURfhQORK-|EFYU} z8bMk_*zq$mVNxjo&OtJ?eo!0#tQ&?kZ0Q~_-H9fPnniiUM}N`Ug31hYkMmB3rT6Kp)@-wD#{48l4)K%jtKHFrJWZ#C z`yf51Qbp=rk>2%v=d(a(6Pk}JP+DV8 zLm_?quN)d5`=(tzN<5vk@!)7DtM}tR!gMX`_m|z=%t*ejZQsCML|Q%1FB=y2?s>NQ z<~S;^`Dbj|pfQULwrg5YOrmDh@;0g>v(f$E*hwgf+B*n5%l;XcX&ZgnWTu2EqLwM1^sa$y>OmU zsr_R@CBg3F*mC1M`!I6`6LaqkG`Bfcn zae0e?*ms4N*PBjJCHCm&FFimh3H^bFbe=n+D9#|Dbzu2+Ep;U>pwtmzPtDY~IVH7l?DENxwq!$8$fX#PvB$1|vWNbK@L1vJG|1R5lvBm`6 z*qpx7z+npvx$tTzy#ITN5O@dEi_Lo=Gd9fgY>+gg>2yAXvuCRhN1RgLW5=7xG=tw0z8jymSNt@@=VZ|*TwkFMPfXKPf|IH zl|hiEGIQ@WXJvp3x+kt;W4%_z#fy7p1sm%0NAafh?;6*;Wlt;z`RTu~No8*(9H_v5JL&KZb$n9UOieh+& z!-AlhR{8r)>DkW|dcft!ybXQph!4@m<^EWynW@?MYV)2j3SY&UuJnI3GhEoX1vMH$$X@KuOP@W_cWR{P|Tqc8O4F>>M!E8(w6ckq1 zw-zzBF(oBwo*5Lu+TAV)t>HZOf}5JS6>Yd3y18Wcn6uS_K}ZxiQ72Ww7|u(-zm6i} zu>J)EiT1wrUWVRBTi zM^|lalFcgK8Sa*`k_0jeNOUMQuHXCnds@Tm`^cXlReaicbJMk&SQ#bOwW2%$pk-m& zF+Nystd7Lg#t+s$lDdQJ(G6&6`NM_$qPg07HXe zQTW~x{uQy0e=zf^8rAIusE4n=V@AYp7J&c!p?KDp0LB*fLKz?gubwR?x~z%>T9o$N z(_dlFRK6SrbP48=HXym0mU$<4_siGQV9M=PP3qYo1dWlcwUBwUJtgrBSQb-q}YjwUFoDWVYF;7i5}#T!g+ z?pm9f>z^L)8yf3RmxZ>*2VB+dW$)?c(rUK-c)GDH;w|D84-(l+c6)xxCU~)iU1^Ui z#~nyoc#V@oPsnMvA+@ACCEeK_U%uV@!>jGW^?lEd=I_KE$dhl-+e{{h>Mxd zmm!f+OO@ydLOugLTmQrY1jx$B_=gC;djDChg{m&hkp=}NoxBc=G5aUaUlMZH)Z83U zP8yImn#y-D{uDQ9^Lx}%Z4MzJv;@lCNpsT3$!KPrfR71rIr0g{DG!09ldMw@lRtmn zNS09taX9Ou@EA-zJ!!p%O3xAD3syjQg`rM;)%figf}b}UMy1@?hEjLt*2J`O(xWzVY@WidLp?q|C3@}`xH|GdKdxBLpJqNBYH%#6XP*V zjdTdftms=9)3(volkUHeCafCw=5!ASTn2>%z|qh2qXvR@{FB`Od3xk|j`G<73S;TZvfYJOCx%7oc`S@dW)%KaK3C7S(C&41c^ zl#s$x+0&>u#4re*&sfFER$I+p{yhL1(!*F*T+3J}z8X?||2iT))@B#+d+l`s8+ss- zxf>oZN)9wK_g=|zS zz!cIEqIKx+57JvKj=|9T++PArz}s!tcp=JcHrfTWUH!Sp%s~)PP^++%5d5C@uxEv( z0OavjCHT6$2{@!4Q4Jl8Bx)Nxx<9&Vj@Sol6)t(3*&APZUG6ptF&G0RPMi8JSi-(w zDwA##%n5W>KUN~|se`-uV_x`3eDhOt^OFZ`^;OlB!cV_pBbC1P)Bw=ZeRDf&bCrd; zxzWYmwg{^0?2+C-9^vLPFyF*Gm)B_^X|XKLQkX%5k)U!tu(2n#j;*E3nECm&5Aj%G zNFd4-AJ<0#k{ZeFUTIfUZ8j`oG}4mI)-n$%={BJLLm?qUBVl*Q;`jKKk`f_AJ2@j1 z=%w5aU1jF}6UwXKHUtiH(n(D%`E=X_UkAYR{mk1A6A=*+$`+pKgP%+L{Ro!5KE8Jv zeVe%l5m|Bs3MQ7FpWa(jFbMe-5yM@Y0TPLp6aofx4y9;6+ZOEXL!h-OE2?jdY7wad zVV4w1V%0#Is|Ly@GNY2;CDKOwHDEK!CAFURy~ugT42;o%$pflC6Xd49iCC73Ii$FvJ;qjUy#}|?Js|r_h=-G4KS$5 zhLj~GZUAN|l-}WDfjA2^Cbg@hW1u4>`I4T`UDE46EL_|s9WQtHO(WdELVO-a2ADoH5Bz)i4#iG$FDqy0Nb0g3V7T`@r|+S@k9 ztqI++wUkniv0t0D>5^bF+230_K^Xsi)1IXkoZ1M;b$PzkEH+i_MOG ziJ;E0KU=QXYOub#x&mbyARz3MMi7&O0TuB_K|z_60F#TB?(_ULT z^6g~hbT7b7R_;Iqj(BUW-Jz;xbAtNea*spqt`DSic6~K^Y!9Yo09#NmrbNC>M^LSE zu^RC-i=j-)Z2$X31}~*0T5sl3#9Z+?grma(Q=WR%97 zts9Me%Q73i`%9=+cYhPdOegN{XzI{^%_MpQKj9yWLhJTNE(+wniwb5NPd)xG3qaZh zbm<0&mlb@wRnFnKjuQeR@Ce6`cwJ9n{BUiS>jJL(f#HM_^!TZMN%-Kp{n8ZR`hBbo z8Z-s8V3&bz+r6-h7zG6dBFGRN2L3Q3f;n2lC}6SNO}N|ff(Wz1l0Ti z>FlCSK;L5g?}mzw{3YbP0}M9*o(DqfE%wbv424+D;AXe&7BBSCEzW4p260kBNwY z{bw(m$&cfE9(Mp<=6tq{>1dUM{&cbcoRhzH{pE`Jp z7%g4Vk;2fWM%RIYmON+^-nJOkNk-xIb-g()Ep2B`Tz^8uhuN*l6gR zY6g!Ue)vA3Rrh%wkKAGB+Umyf$muf6eTR^%VEB@{Un~9cg{-gn zl#YZay`n|zx5iq8_SdFSk!9MDF`|Ng-Lz^RVH7g6N{&znz9*fT3aDOcSVESPz)x<8 z0d_bY!60@&;HOSfK)55V*d~k5}mH$;BDmtv%*O1>Vz}U#n3WSav-1OvgBih|Qwlp=iHnm>PS2hctxVyd< zA&~xjjj6ykC!Gr9k5^mv(vz&VMHr2dQ~RuScCEE|=Q73dDse81Qybj}#sQp6@;JV^ z%71Tr9Teyq*`)pA(ZxkpR@Mf%-aX%5xIfY)+z z0mlU!qY-cuGi78PbvzmCTD@@XA=czOQiibV)(9!@47N0N4Dt?X7!QO{L^Ykp!? zBl~b_j#y+HSWp}o|A_Z$%cpT4XjktK2h%s#rws2e&WZI50#Tg2wPZ~CPlpi+X0kLK zeiO@~aARS>XFSXe)*_j`RX#H~NX^Up{9DhrYiOm;V&?tr1?ZgZZ*2h*6c#{g^>lL( z#7l-N1Mmcd^AZvgfd2WXG%T;CGiM4y_ZGFIL>ARNZa?qi{pNtk&vP2x&(YNL~JpCZt?ye z3X%{*f`;dINr&BEG}>GQ`0I7J>vZT;+)o~EM)jMy?q)8{wN*a+bUI*GrGd{T{qGSC zlYd?bh5Sr1gO*TKSEdpWjN*c_{UbM6=h7M?Pef$0m{zr9G*h4znE#-B+h}z|R>3R7 zWwquWwVN%97t8W&fM0(-3EjBASXOQ?ap_CuC=YY@7bx|KCZ6ZC;r>xChv&wHn$>>K z{MEkO%tH!ia}vEjnu@aAb+lNtO&Da=d45)^2l|%JkHUN;Q@q;Buol%WzwYnUMDCAE z@frVoED1=_=Z64JNr`ZAX%jC~fZsnr z=mVI1gdf3mITgxhWH+x==!wWvx@} zHdBOo=^h=G{euToF7B_7SCinj>;IkreWh@joSYoR@yRV?^8HHxhMz`FndXY8D>^US zGIoAVk;qV8xK!m^kKbEA;u^2poA;;&+PB}sN7=$IV4%$EfB*dXvM2#Gd7(~q5-(*C zAf{7P*SMsa6`huey_+f34(BU;}QWC1I&T5l*M_S7K~d zHdZ2OQNT>FKwf3a4(NQpv3 zhzNDk1`LtGOiyn^!0Y~V8^p)OCHP!n=Gg3OHjBYuxj8rh1w!d%GmFcy3LPEYp)~?7 z`{2YxtY8|m)ayxQ$8C_%j-38v6-hIuTwOG8)Q7!L-j#ZVYklp&d#y{|N}CUMr3;yE z*!Aa1833YCpv3J&>jvSCs}Hi^g^XL(@V6YuAvLKN{1&pS93_pR;_ZejZ$-sh{$$X_2p{x0?PnE>Mxa3}=- z)2G{`86XX&8%L}Ml}th?9yjwMSVU(O0hjakamep9tdRj0T(}+_4C#z{m5qVDVnY9d zP^T5}xGA5BDuxC76Ow^^jh?&G63{JBV?eB=)1LrxGXS4bC?RpRSvfBsJC2CZ4a}F$ zwX}UnOrm)B@vcA2h^L`pbgwKdOiWCSjN|k34Z&c=LYKs&ir&|nzwDM<#Kj!F$1I4f zhP-#PpxAk*14(r^ezrSqp^ftH**&hO0&!9yUReJ)w!r(m=#(KvgxX-J-H4Pg@TD8M z?$+7rK_>uBE)NR}stC^BqEmy6(>rh7M z+Z>s2fzrTAsAW#;sa;hqFCF6v5a?XsoCCQ zEn1Hf`sb$Z2yq)MWW_T~!PN%Ekh)vvMtfna?kH-WZPuzQ7oEo2V7?N`T?aK;K=OIM zf`!oM2nPZC+nfX8JR6KMDFflG0Im5x6Bi#3+Gig8nA{OzJNH_ZB&q9VCgbL{mfA48 z#CvOtHK9Q_!3oRa@SRSPgd|%FMkq|Uk+N*Bb`FX^Lcr=tTx5m}f<3}tUOF3aS?=^%WI`wkgG5Y8E_w!H* z{FTiD;rvSooPgSt7{mZ@Ni8?p5uu@hNx$_V3kne3 z>+)Z{^I4Ap&x;xp!Z}IkM!(Bt4VZ4Dx}k{S5C)=%?@a=+S%Geso5CvLF){lo?5r?_ zfkkV;RCnc{2b*SBydtn10CQjj%JK{)m8xI>`9m6KH#GvbeIU8D#c8t|MMyh1G9fLC z{_Z%l5z0O>=AJ>A9EbWuf8i1{$xOwOP??^Qn3GO`KWvw zx)m(aPV}?;x4wDeu1Oo4+Hz0R?Ipw&EX-KQPZNTd!lNPbU@VaT>a_oEoe+#U9$1T| z*dve(`*Afu1bA%yoyNL?phc4b^~NVR3`Eb)4*0+Km4N|C{FARf&q8Ln6crT}fPD98 zy^W8lr=hwUwX#6qX`xb&OcvqWXOjn&5tw5u{aIPP=m;tas-nvr@_c7CUe{_INaDAg z{jvf{&uMy*)C-UNmMHQH?qX@QbCTHlOfW?$B1GT|^9V1J{F~MfZuKo0R?r2GQQ;43@_)}( zs1#*V6_(x5_;kGuZ`(}KELa6{Ew~4f@CWlwS(zJo!FG6$QC$^$A2La01`a(0JMOHW zHm=X}Xv%Q8l}tvJ63@(Vxg}nzQ;a0-Y|Ty{8YOSWeC*6uu0Md-E5G*Mp=#Er+dJj5|sT2A|Z4Ud!`EH6QhY#X^53F)XG zT!oxunGpBd)$Qm_?!vZT!`s~}=b{)Ckq-H9#mA~0jyIawBNOr)eM+sdY25b~F{3+(g~WLB+*g8WY9Z3Zb1fVt z%N4rMJB0=v?+L%-?_O60UNYrwoNj(qgyemdOw==>f)o%Tah)0-YRz}>xEZC2c)%tQ zLXe6xouN(U?ky}VyjZUDE!F*nlQB4wx#r#Wcs<)X#lyt5q4N9v!^E-#IPKpWT_>%# zx+%0rszm+QANlXN2?N@PGARY7lQ;rQQd5WQ4hlNf>u73AP9AUU9D;n--oa{+J#+ws~eyDV)&I5ARY0K@lG_^uDWaG?_37!=8!}{h7jz!LEMWo`zPMSM; z=h+zeg899tt!(H(glANZ`Z;LE*PQK!$?ZYei9dpVz7CkXOiXEAG zJRp=IyZ3un+NaRt*Do-K8i0xAcMI?>y!U}mOvI;1^2Vd-q6xt2I668e(T31=h!7Ox zAf9+ZKtLeid_P3Rp|=P88204dRwC*yMagfZi1f^}{8`awHOkKh4g)LSGtkrQ}wdA~V!DyPmUy0Yd~ z$3^yPQ6QC5f?y|UZd_o`jmLc~@lirvbb>&@tCB=m#PGk1^XD2Zj{5mnoN>G(>g!z` z!u}=)=?@KM=5sCxYcAoiio| zm>!k23AXmUc*!mVIZ$t`kFeJh6QP^2mEh82=;p@6My8Mmnm9?RZARnfn#KI1D8M(* z-rsbT5g&Rg3MO$Kzah5Foe;>X-iXuFir+D^U zV0f~#p{?!voVp(DceAS>J}jQAtL1ba;KEmqyTaaC8L;D0ULoGs(F0JSp~OwDYq+8; z;K|-8N)uZmj8|v}G2jLt!3|Qv25~q+4W=F6xN6JISDFo`>zSz)M7i=T!=8(vuGm_{ z!^VS_dr#ZoC@e5Eo7CjIFk%J2P>Lur+(JFzN-gw2WZ_|+@FZ8-!i&d*(Zwv*mFUD} z#ri5rLIsS&$Q^F%k>!Z~PbcVqcS2Pdlz{n?nJZUTAMvBJc8v=8^5q`}(?--HO?ZB{ zSbAK0u73lnQDN!;?kfsskf@-*P;*vLPLAltzUuNUsw!J2mOLl0;-;$96-`%U`cxJu z>iIe(-AsX|TCEh5uqrx)&f=61OxlIMm??=u@x}=5BC<#)9D9>=gy;^mJ-uWLfJHmS zJ*MjUV$@z(UXR&V*{d+u7lTMM=<1PvupT-rSm=<$S$wwL{{QzK=(Y;=l(dQe9@Dym zo#|vG&A}*FYoV|wry8wtHtUXEFO!RMPxFRmp{e1o9hM*WM>a(talBSh^CB3`WC5+R zVRpyK00wQEJnTFBdseK+lO+GG2hQ-I!Sq6PmEh1wmz?J<93H9VxTtZP{FbLFEz`_k zEyvKFfX z=(*->crr_;ICG>QFxt(#&>{2UN&mHa{(l!V3DmsO*(AvCz!B#I5Wxp4S2s3(oYqd9 z1HClNroVs5A)b>xzq!G$t*-V*6TX}t+N|jW&ZZ2!dKf&H;a~(Q(sHYO`=5i&=Tp@T z^shiO?;IG|u23!<2k1a3JRxq&{&vPTD-FQeiIHCv@Qo7ADH0M8tO5T91&7kdF6je` z6x-P%)bw6)adC?w3q?a*pe{Cxr@4~6Jy;_aU|(lkFzoxaC!H<)KRw+4{pG)ac^Zl> z0)91W7vk&(Xd-VArYS~7Mr1;M|B@d79-O!cD1q-PbXpM*n;Rid1BH6**l&4JC|&@W z@a&iQV*(hF!%}RfM)MWg7#8uQoH;)9`dcU>;{F38TfG+rhBgZ`s<^T&z5$+z0lF}%XOF{3h3mj_JKL)F z=2X_%E^uJGgpx7V6&{e@A_Qxw4ge*UBvggXVVh&XbQJYL_`FGRs%$N@J;mXt#cwb50CJ1I&f-#Vvixc z)d$$D+2am?;`)tyOye{O{o1;O*0?xX)qj<~SR&i(;ji$`6nOTGpbEpHuuD((L* zw27#nC(@pTZQ#;UIc<1>ZaMeTVv7r%HMGMxaFm0=ws+pi0H!n$Rep#3=XyZRgaR64>q07E-ZdK} zuC|7I3f585-<@+jHH39@k^k1-CNQjx?dBLmgm+}ts;Su|k^ zBB9=2o)v86TY>JP+x7J~XVQdfzTUhd)g>`8aw0#yfak_Ma#ceLYdUbx^@nFTPsb(# zV|uwSY5;xpE>X??aI*dIj;sZ7?mvecP_OxbUFw^+!t%##kidve%$W}|1y;NRq~*%; zlD`{_$H*8T3=lB469A1vap!e(r+6p1q)rsv_a1$5Yfmv~xd@-|Y-zQ*Oo)LSLY%bz1+?FN7VfHw&k}1dg{#Z zBzkK)1n)+j`>USd&_ng0Ox(>Tb=Q{w#DKYMi0%H&6>l{`C z5HTw%D@%%t!TPqgySux;f8Y9eKho9p9;~%b8HnbTLZzfcL}63#2nfRNqy)ql^v~JZ zc|`(_4bs^s#9ZEbAE z(rm-m*jSZ;Z_HdAYUt5l;^X6EVibYHPR`zcdOK^wZm>bHTY4`DMN}a*Uoxx3NrojwGltQ%*X$Z!Vl)P@< zBv!^Cm=_2l9>D(V|2qdf{UCqo3Y?TsKf9gU0XHI;9VQV3;tc|9VAT}&K|J5`>~XH_ z@+0sMUhYiEWyO5_d)8Wdl3kmDf&_$=C-r8JXt%tk2EhW2m>$Z9eowzI10hgEh4 zoNPB|+aTdVl&?k2`=}ieJOh#~AR2Q<`H7NvYPdGYX9NTU03+Mp{(kp#@VpW5;_prt z1k4+O=J?L9lKD&s*q9NI`Arxw|Hrlp88ntvGIvVxTyA7za_C!qk7pFT%au(zX!cvk zt39}}>H-^+nJv$u7Mh$dA7Vo;l4tlgolXq(OAtNOAC1I{1<)mHGbU$fMLr3Wdmi77 z>qn-IK!uQVN%tmj3Ukz0O!RaI#kK>|#|y9oFh&Ff1f#zL0wuw8^ChSkOffZ-0d$gl zN*zinDk|^0tx)9YAx}p{U(gSe&p0N+K&iWP&lq?*8?9yTqTz3XH5`IYtQ?Xm;36*L zKAge_{)158O{?#J=*3LIqmJZ>0mym-H+lkptZWZf~dLou~7&%$L&UHW5WO#N;M_ER6C%J^z`wb z)#RZ(0>0OE)_$Amo7p&Olp!t2@PhU4n$DbU4oW=M)SrDqmcVQLHcb$D2Tk%RVCgAU zlDTB`10)Mm5bx*@PR9l~Q2O&z@HcDz zq}I+ia9K!kf?hXg;6aXxQk-DMwYYF`Ji7j1c4QHnk}6fjsH*kL|GP15b?&)S%H(>m zg?K9!tXDARgul!f9%qQCLksOSQ5)s6716L+od%}@^E*EJdhlIW&N3a-hU6+7ZRdO~~K z<9PQc!gL{zU_`%33vnCRxe-MtDgO-Uo^|D-e=!Q|SWgWd`D$RX&jG~6c?mFa#Rx6s zZf|c}n3*BYWAj!P>9-1FEVnm#UVq4FYb+0F=dzZ4@0*n!VnATLYhLTUn4U2_<<31e ztmZ5AuDWoYvtVGh?~(1@pq9X7*SM}6FDAITx!F*b-$s$k5hI|JxZkab zTy)NV3-rsFW3?GI4_QvL$aL^R@VMNX^8)37C51o#Bo18oDOcF#yJI5RADjOEFvGi7 zjWU+YjcRp5e?PV5FUS*SDfJ(it&Dy?Ln`!oRl_oi>ob7Say46ZoT^=W<-Cq*Ng>va zVPj)+%!M<&cf^HL%Dpk13Z(PXEU%R@sB?3%ZK8|y9|=#LGc1U2na)`U;~etWfBFEY za7iLTb;bnv+-+otEAVkaj=!s%KZUNjUIxLcYFUeUd#f91e^hR8aN}?ku!6+aPD?H9 zrf9rkjp$EInpKx@v%Rs3Lo!ZOXRtHK8O%eo_o{sPrwm?lMnFKX-d^ShBEEZW1UaQ* zN|_82((>o~$`Rp!X4c<|E5_I5_jt-Ir!_GV$AlXlx zV#fa>##)%#+R&V3jmKv0#oEh%R#7xK)t2=Btz--fI3O)1tyQ}eY?po+mKr}lqVr(c zZ1L=VOQbWqjEgz1fXIT(aR1c>5VVcYuRVGOfLt0*{ZHx>3ZV^XM`1fW zbghO0TyGBNM6B1%zTETvGPNqJY$TkS3uB_HIHKo0y9+3mqW;+*elXwg9zE%+Zrcso z1s~oIND(imv?G|=gs+P=^#s5?_07&AMOSy3g_qUx6~%P!GT>Mm#&g6z(bn&$GX2?C zO|+L-f;2<2hyR^0j^Mw&nH6NRkdhqe8%;$IJz87_6s==wuClPL1eE{wF1ctjcO)V`d zSeT&^(hutZOY~zgj(6!rwK7P+>G+IsIFx!RkHGlK)5Tu^{>9yzSQi8W`J}#jJ6UM6 z2`&8jexq=x%+ZZ;W6t-Tfi?ZWkf9o>mYbF7W)Hi5#d@cfI|@gof&5c0B-6!bJgw@A zQ9QJ?uN`PrF%ZT^%D*g8ps&#rxgR{RDHecWSYj`!TB6PMjE>45?`&aZW#veSuxHxD zFT`u6pSrA>W2@L`vq^gYD!W$E)YeXSGg)|aQB;_jle~$Dm~6&qIx{-N*_h}3cqi_U z62*z(z790Fxvn`F7>l_4G*Wk-0NsBz91AbiwT0SRnSyDF5_lhuxR4##%{jdb|NcX` z`n1CoNc0PRefgka(ZRw_-~MfLR-BJNaL;kA@3SZJ`w_)i25tHLGMdB#SiafHxfu@i zsVa`kkhAZIpHPjd34eUl(XsvLYD4AmaLnmg(0g(+^Vxaugv_AcvM{HeLq)SaFTkr* zUocOWhvrXBojwgI=kjNjeo{5C&Omm_1A zd{*zSPb*p(vP!s_#Jc%FNBhN7&$EAzXrj;c4s9MZpopH4hJ><1dXKm~PB&&Yws zKsUw?O@F*Q9l@njXj{b>wDXN`YB>TLD76KsR-h zVx+;<|JA9G0L;>c7IW;#$g=pzn%Vls3$ws7q4r0blsX#&^CjWtcr{~<86g$cw zQT*3>I>>4R8Oj0$GZj6@v2;!>gD8S+p11q8N5daM^fR180*@WJEY>Dk3*P6p!d5U} zMEG&+HHG1_J!BpPZY`)We+1bu-4sEBXxwi+$rp@s#B&^jy04Sg2$fZ*EJ1-18U<&{ zVbq0`#+XfeCggpyP3IfT{0M`Vj*LpcB-(`5RJvr=Vm3lvFja-fa&;o$ZSRBeThNNO zxqqqW6|4Suwu#FbpCi1Iy1%S@#^puyC5sN#mBTUD_Xh?Cb3k$dtMj{Ncdi9v!*Ai2 zdOCJUdZK}(RO6?V)A_^qstz>-%)_n@Yl?Qj}cZ0Zvp)R<>(%{0j(bIJzBo+ zk5bo)=P#%NC+e8Rd!WcC8l0_u3oSENf$p|HU#o=OT#vg2A-a)axB$lN)0FtcdLpgrmOCUg0S<=ap9ceq5eoHW787&2x)8au&RM(*b3w0* zh~)S(8Pf5MKcEO(N=0Y2HfWOuhrVUAf!nu%J231W@kTM?`THGP=q*2w1Ic-8Q@($v z(WjVe?nC9OcKeAkgf8;7poR8W1^>ox;*~I_88L`Ul#!P9?Wx2HCnEoS+=HrXwq=DZ zf5iT~)#njlLY?}EIQ`$%ad+Y+5a_UX=tn7V6^tCRJzw3w{#YiiWz6)$};^fNj zG^v-B5Yx4gG-(8r7geWAA2ZYwJgu#*$1Dt~qB}aLo~6#0+c`$Sd?3BMKgc0jK2q+* zOgg_??_3WN_qh>xIDB_Bn-be|4Kiv+iO%@1XbfhVqLezPKn^nL`34uY+ZfTYOZQH@y6>B`+S(w|>o7UHTO>)P&m*l;wC z%FGm|Pfrg9)olp)L6IzGxLyp#OP5?MV1F%zy4P0pF^^`_Yf8WjV5nvcO{Y%lGUw!X z8F5JATAq;R{`2X6yVskzGuOqS+)z0$&(aVwQfCdRM#`i**KGV)g3~I7lqTT36Nn2< zG17#ky;FwcKB5>UE`Llj;3ywHohSHL(h(JXi^Qo)b$m{0`ME1+sVp#8-!Oa) zDdoV+$V3KKvZE23XT(YK+I*OnD%HBpYmd*BA3k-#ov>Fbmg>Qv|GTq41>#j3{rgaA z%)yKg z#1zm+uxCd{zV^^kNLL*J`dO3uGzUcqIi-T|s=cvK;;Y{mh-io!Zw5+OBUQ`Ja}-A5 z(9T2r!RV`7>LdRI=<;0Ag5z#d76C<=WBds5qo4Td@`@bYWHoCBY8oRkUA|JC?aZF* z;&RcL1df0?DAadWoW}AL!QU0&O5mYnWu&9y!fl%E8w_L(k$UZ|pr>FNEF*~undm6` z-jgtl=0o$Xf4WAX`QlBO^J7}nF%n{Aum=~GQNCpV%T)hSyhZ+)QGvAkqk3-7tD`LH z?>RX@@kdxuOHm{R4uR)aoGb%bTm?BVu;>dvl=LXM5~DNQ)GfzuU5rm<++BO)1X(WV z(p3=S9pbU1$3Jvd=vU^zskbNHGM2|p|M>I0S#EMlsHMqI>a?}}m2pqgB@a@kL+Io2 zL3kjaXgZ2MS>~wDnFdHr3|KglSn??>eEaMRF`s~+LQM)+!4tK-1^2YI98(68b1(^J z)ce`h0b{do4#8q5JPi5>!d1cpXy&buqa;2*)Y=1Wslfa52qF$aAt49%1rL1!ksz9z zEqsc6b3K2lP5d?dlI(9dN2b*8hF_MsvU9%j7r;2iL0`i)T9w7NXHra&YISM0PjdD5sj*`DXa=B(3jNGAEnutWx1w=A)`i#3RU zv;e|kPzwgSF2934EkH>|sPI0>Z7a@WLg5kugZTCf=t zTo7NLntb8|;k01mvh6onZ;Ar-uolAOnY3WsP*}Ll@7q-n7d#EfRjS^($zJ^sKABwG z%?}N`gH@6T8Z5oVQxj;_Dzy&&3l#1fx4;uf2!+cSMgb?1Vf z8fJe-UDD5^2gI~qA?Na!oB|Vrb;RWG+N8wfO5Mx$y35H3duvCs!L?+bmrpIyu3Nmc zB-hf;Uy8hN0d(f09bCzQ%DIYStsHe}nWy~LGi-MX%g>1on~#eEJtDJ;5W1l|BnR-B zmwm*-YrZH^ENBEeM%Fs@rMU%&x6^*HOU9w-wAOupmVFu`Yv&vzw2Ds9(gTmStO?7a zK~5rFwCRQe!CFr?HZRlu? zqwZq{?w>obgsAZhIJyNUm!K`jiN>3Y{)Zfk*ZX0#0!x*5t%>&d95x(cFVZWpsECTe z&Odg?_0pIfCuB_mZE_ZjN}1+fBz=#^U!1|@I;2@{1jGqeQC`aF5GSlESp7DtrI1gr zQmENT>U7%hVLrg_tnM(xn}vN5ji4J{nM~CG1P22Yft*2+TyG5YbF_TkJeqRZk7&z{ z=(2BzBTX)=30j>QL%0uq)OLXQ9KCUQ^}-p zIR14XCC??>W3_~NEuI7s#U_c5?u3q+jSE{Oz z!p}I>J}>omXJ_4+T({xq2TD5>)sZkVR@IKRBtSC}s+0Kzz7*5kAO1p_G=GW2B zL0H%rOLEvm(i!U@6HZj5)yHLxXYCE^WNg%3&qe5Dpbp88o06I4A|{4F8i^*F(d+9$ zMMs5iXaTHF*3`N_x|!!I_;`7GNy)Swy@GmjO7*i8412R!M>!eHspDr2Aa_aq^}Q~e zMq_xlH(uv)veFuEiHZbe^ym$Y2J%r+GcaCAKX>!c=frDqJt1dU-h-JWl1e;j6pImZ z4mmXqq%KGN&nhQ; ze@U&sSz01GNI%uv6x8+--1lZ$sZq7i$7H%5+cB;uvP*>Onpxg`lyAm`ud$hKMrJfv zdEI>*&+)kOfnGg?t6wXRvNZf89k9Is;Nkk9LNSJws#!YCZw*UJ z2GR{AI};i~V&}I&S9cG60!w~hWguQJ`aHI;zzuU6v|`$gDvv}r>|K8UsHYut>vAB| zdck`unM6z%^MMhjdG_2~x#ScPqnQu?J=~k0p`PDjzd(mo3}C(8gf1D{XQZ;0b=UM~ zE6q%NMMp9?;6w22gkdAd>(G>7m?05g>H)j%Lm07yRtMV4>}n)YY9yT35)lC=Fr>6? z*oZKkMm35rrSM*KodvtU`lvMY=MR}eujts3Dg0M+dXJ?cqGR*6Ca!Gt9RA>44Hh1O z##CH{qO^*IXV9$*W;|~zx&u%jV_JVi?~+n`bXt#9+Mu&7FK2H~9SE z!$aoO*I%C3f2w45cHRtoTTYio9^(5unp_RhAK0KE%z}AId85q2T26a2*rgu~5>f0F zTpc^9&Je=Td=i&`J`eO=r{MySBA3-KqB$ zdd02MqWTyX&Kz3JtHCV)2Bx4|3ZWHFf5+OKZ*cHvXRu`>GsK}a8Qn~+zVloxo?|P~ zAJ*-@SbRsRrag0YKT$9}JI%2&yn-k~0!`c;b;=)K`RFAGTOov{<3r@ltOyCqupi8@ zHc7?INJ$qMZtP}$Kr2HMraA;O@GHX8fDjdFF zP~q*4m|Eq7H_vGzwMEVQK+#ms(Iyb$%5d59`aSgJgt|~-F_Fk#(a$78k<~OzX<$~4 z4?;!#zD@tRAqD7qsK?NhW_~J!UAaL8u#>yXaTcI(wbu=)arK-81FV>s&|Gjq2X1-QVLm5C=t3UN z3A`63Z!-`212#hhc=&d>D#|-Fvv91W>=?1q1C(LQ8{n67#^D( zR&1B~1G*Z0pnvZtM8Pq;>x8RVfDog%ERf9^rHsQ z+TpGO`B#jU(w@F%>@fUHegq;mb-mju_bpdHmR9PeDogpI^8 zcc1xat69I^h{Kv$IEbb*O_Uy8?*(Y=>McsDj7}s`qZ^I3DB%DvWvm2yw!HlkPh#GH z)!w7`h$d)vRALzDhK~2#gI#gD_sRP@aDNyO3WYwjCo4&`I(^2}E|utO;wwIST>4as zNC1LlLORf=CNlt`JG$wYA%PVnAt~v{V_XaR`UX9`XF&YQ#(2+o6c2OriIoH-BjQrD z($n=!z-8J{nJpLX&sJ^%J566F{vf!8Obg$hY%z-8o~VM7-iurIQU&`hAVmYO1b=&5 zTd9T$5!ZKe%Q}M?SH4M(-=57WAyq>%!))a>Z0tPi(dxyUSMB4O^j*_$6yNKuSN*Mz zvL;>E`+lEkjPCmKhq#8EY%bRhuX(;u8Q%1&wsgW^4-!VXb@Zze1Dcc{#y+U1M7 z^+@c}YkvQgjCWx$uLYOrL9fL?D>20+vz%V`u05_JJ9LkEO|1>ADJ>diglzf9Z!ri{5_fF^wLQmzWr&Kb~PT(!2XDZ`s2m z_euK6;6d7A^V`_JH2mUowlxN(ozPu0;I63r1_hm?6>P@O8_8X8rB2H{cG2AUFRG28eDm_TB>ou; zbQROJTzrYp$~|si4K^HhX5r$1MPW65&vk0lS!|) z{)IC#hSz$>cf);;5bs(-;idN)zY4Pz=SBMtY{~a+b(hZ|^w=;aaL_SLu+Rb_)0JGe zcd#E#^H@swubzv4{A*WzTVP=;-FChnuivpn!@`2GepKRTzXGO_O0+TAuY(C-<{Z?b zIO1Ka^jqhEpw8q*ZzYY%G`IxGAL8^W#l=iBB@4|SE+D3Fv?%y%W|wG{+`rn-2pvWB zt_8HGO|rhgbF_ky-w$`REf4N;GxEi4->N$5C#)c*n59nXgiHoU#<7|oX^BVslkY22 z7{KSiKk5=TthhyrakXUMxiG#ly zw&-}4^+C>MebPC?8F^{xXFxd?oNxvq2YLb-i{+qGS%?3cET8N4=0+if7rVLrC1MAnpa~xOuxj z6374BB9Gmj*M!t6@mI#`(h{e-!!K^e)^dp3kqloETc7U6!0x(~KQyRgEQ*xj_$zr1QG<;JMuk z6fgzAhplMm51XU-f`oRMxOemEPyZx@EdvuL9Y z#TqUDs(?iiYU1K{v1y@2ekF+w6}eDzDcaU@U$$F2Fhx#G<~epX81?$t$ia!0}_jNOb9UK9)izzAr18 z=lgdSz~OeRmA5{C{ZQpTNkP_9F4!Kf%jXGbH;i9L>opmS3H0rBUQsG`Bq& zmo;QV@`Vs;*bzDV4~<&#QLZ@nasrC%klHM|5G)mJKj6)@TWowBKBvTew@Er`KGc`f zo;OXGJDjWtj=#<8mM%~nNzd7#>Su+7!X`ft@pXtFW z;VZ&}IsTc*XM7cAwFms@#6Aw@`A~B2f)ZYsO6TjP@Kb8+UYDVY};*ZZHR`Mk7>gAWcXi`)8pgQ?X-IR zw2~b?8)OXy@z(sJM9aiJmnYNAnbPH+UVrGxO^i;X4HT>?ueI5po$D|5_ZZR!vsZWv zd1O4u7aBgu;}}`KhI&tI_Ne5v7sM#`FJo#s9LfKaF_l-K<1oEguB!IZzfXKvJXEvNn| zA(29IN1YY93gaH(dm0|YBm!Khs8y$y;s9yH)cB_~Xa8QDnNyIgyp;ZUwA^_EQ0{}@ zzkmOj(j_wyYP`!~$t%{4RTfjsS8T;zB{QO5BY;qy<$q9uJG%{MXwdu1a)NX+%NOFa zMaswY&p6(Xm;?$Hh2nEfqro`IGlX+c<T|<5N&f5!iNb*~K?gTZd6?HWj-DB{ z!tCXzyyqnnzNIpfZ&Ck;mntvEeCRRc3iVaH+gI*41c@x1QBbfM%BivJnaAWB2dCPJ%cWZ6}9@=yO@<1CqXIsDii15oF?EsDW7NBm`Sj1 zW;??X(}#qFSdsi1-JGa-Ipzs|C6E%Sk+3KjsOhvL2VOkSlwvDjEI=}+_WQ=K#PH%D zN|wIz=@pfEX#@&L=5#PQuqCORL8g-b0sEg0E8m|yDdV`1iNBoM|0Zll72wW7L^s#h zyL);}O-y8<8w4f!e``ERcx=`|%SEkeKw`Lp8}w0APrZ{AqjLU-ybd%gk4vHVh$dX*!) z!C;%OT8#@kx4}h}f@v`P1_FFq$vZ&kRa?(0pHAdr%aQr@^+^v>v9YnSvvaba_?h#B zl&AFdZARcrNYbq47Zq`_klxkTtCXABLl;< zKT$u3i2z9fx97W?KtrzqLzo`{Ul}Ge!Rq%^dJ#dhnU1c%9xEp-g%hg#*}R{u?#OMv zm8drLwcg2;oFyo>7T-i-K7J(Yx&u#%_H5`N443dt8pWGd4m`B^_OXI*pH@eq7xHD| z8n7VuHz8(Op)8B2XoBGRBx4!|?I+7(yAkK}jDme**lkr8i}<*2D+W5OcPHe6s~ zFJDU~r3qY)PgUb+Rwuvn(q9~L_$Mo4fcPmZ0uW`RAU5mCOWKLM1sur#K!YA1RR4hn z`+OPG0UQU`1cQ+o5JYkd((6AlxGrHm-8t~~aG_&1RN@03=2}G<)60X?Kt{n#p5v@b zT7u1mhuL7Pg(@z47Ohrl@JYC>!3=8vtFXb|+IY2=3#(d%i{(_s`jOv4SI#18$%O`# z1qPbn-eGIxt2Fw&+iSn=6Wn-Jr#Q_hxFUk6o0}FXyBYBAFwg>vZ=%u{+Z{Lc8XMG) zPj1AAe=ziM02-(Pw>!i%(6Ly(zdn zAUQL&u>Qr$1QF%LNY+~f{idcpjo3|&;IqTa^SGZ$$*_?*OfU}*t+&@h4vqsC=kl<2 z-!^fBDj+g7tJhU!cKl~Wu&|gn*Qvp|A!UcWBCRxE)GPq3LH%@NAy51sfMB~{idr+o zm|~fO9Pg)$h4%)ENXQ_JAP-?+nZ%i;rB zy96iVgsQSbOj}#4=B9?*nMw zi|_NOY&x=H?kj_cumO+Ia&~evFkKs6#+pYh5r#F&0p}zGgDyf6!vb*(5JALZhA16^ z34j&V)%RdxI;BUjBfmM{(=;sdT}8xSfdFmTnyY5)&m4nBw=kE3I1=0LiFP?UI>PgO zEYYrh{+iVNqshbvB_!IU=F4^s)X5&hT zdPyI=-pllowzkTamis@y$3;_#2AJ1p@i>~KDN|S1zpie&v<(e`gc1sC^iKtH-GROb zR0fKaH}_vxx-!H3#)2#i2r)SEQZbY00Qm-k&OYQqe+HFx2e@(os;UF5i(ZverP5U1 zFgU#C`_0oHL<)n$gSgKB@~isE?_SzB=?)wH)x}}0Uqk&2keLOpvSwLV1*&b2cl#;c zM`tW}r@fUSRXZeJPtPnn1Sdc0hldmobX^%gKgAuk%afh`!`9cZj=wfgrCjW+ zhX!!VMQ%d0e($X@h5X*60xz)5 zl_xRbxjTwRT>40wRJobbUd3Xf#q!-s^D{rS?m@fF-UZ-XT(pGRt2+bI~>0N2ZkZjC(ZKwk{XjFWp+ z#9z`Xf46wiPgq;*ZFGf;DR;s9lWcibk3YVq%UrB#CYLl1ALtoa(NzTYb!0D%o?=!I zN4{WWY_Qw?!ey@h5qg(nW>c{ZV`VgaB~R9iwT$1}ds$B}eET*`i^CO*)Jga zyTA88A9eG6E74lNV>prk`Ag8w8{#mfpy z6AdLcS9RGC!=+JAMF*3{%#SFPltv?&;T2|vP#he;ngw2aR#wg)wmJ%GN{^Ny5lE8U zooi%9IPY{Fn@Xob#FrLO99HWg@vM$Rb_;7W9Cg(=$4mEjCthCqu5Mfbk1@3YN>Ny& zVsK7xVEz+X_Tf+qWt3u1xZ|^UX*km>Urai z6QG+ft?&M$j*a^Rv=to=6}jHPxC-yZ-Kxcga`gIoIrVOW35_$0<C<7;1+#JM2I*DT7YjtxiDt7x;UNs4z=x3zr@gmIlR;_=@i;8Jlv{7BRq4> z=f?{l&$dB?H+aF%|f$}q;+0@Jkq;L+&xgS~I%l)Fjc+czq?iGPBZNTD^+ zrL@&p6+dkRyS6HyX7bdn`~}qDrl$XIK&^ikU+{jqNCOjL#nX$|yukrdwf1};76#_w z?(}Wu)ntJRV7LP}zhCUngRI3n2Aqa09!QInF&GCM=N-bm+@p7|msM2)22+fxC^n^x8`{V0$4viyx#WTOw z97Nn*iZ@6*)2*WRH?;Vh^xFWGGBh;wWcF;kTlvI_fJyGD5l6tPHz>d+IS;@FYD{7D zk3oniX~gFKC%`^%`i0n91n_=5*%k*Ps$}3jrMLRjghTv!AVJ1+oC@DO*N_}teC8L= zwwX9$_h&oZFW#T;wlc?4juxpqgotKj_W9+Y_(?hHFBZ48wZe|+{-jHJ?Ybf>EzRqG zMlYi6pn)2-(BehnM}1`p=85P(xm%`+fc0e=>T=?(NVE4n|J=$cm+aGtnXtkB2dY1n z)2CXlWq-d@otBgu_b}fmZ1aLmDDn(e-G)GB7LzV&(f5boD6zak&hNAZ;=Q72!CBh< zXvwb?q@t|$iWLVb9Cgmr*pM7#emyD=$N9USpggB+4cz{;y;vc$i?^p2v~yJNceY4$ zq1~19Il7_OZB5Z*#Tvzo^{xO&f~Ayga_GkDxUW_?zGJ z${xH60v4Ss5F-n6N|6PhEhN5?mj}UU7(^(Gr21UT{m37_0fRR&5s}UBy3ed2@@wfk z_e@sQm1fe<+nb9&4Ql8Ru^?C&nuT{$i$1LrnbDY)gl;z18_6#H?`log2P!=-XC5DV ziFr)ZJv-|E_;M1T;XG*Ugtgc-O^ALbTgV+9u?v45xln)#$px1e6dc^5qCJRlHv=R? z2f$FZnc}*HEDZqG6!p zXMozp{}ni|!@LMQBzU7+XJDTg7A@%}1QDe`;#5FxNq9mtpM31_1BStGl~9k%5!kmS znw&W9mfk`JbwJ<}sL>RXIKxDOz!!?cwk3w25{*}1{KRRh|M=0m{%Xe^6F7 zK^9hVEW&E}IcabIyUM)J)(wQW6Vdma!SaV~MyT-R6=p?8W5H<-v%!|w;t(&GOPl3@ zy1hhEVwj?5iqA8(RaNomho5HG({`a#gn-H`fS(dVDFy6y@aa7ou9?E@l69r|!KI*xc46*I!2XS$2fIG{8!D)cBwmpsF^dpw3(*qgaGY}S z4j$H$Wg+I|CgjObzuYBC1S^8G#b7gA0Y7fiLaH9Hv9TdeCLB=v=8oIm@e6&P?%!Lv z_8KY&-908_3_zBwrBnUs8jz{Xx@=2k9{RnZ9zSNm!JXB0gVRz_cfqh@%_bl*WF2(W-cj?#JQwa!=@c6t) z=oj@z>IC@UqChLiJv9^06N?kRJL(k6g0nnd2<}(&eStqWrRl6hyuZoQJFTI%j*g{I z{Oi>o{usW^P!XW=W+{Bv&VEep|m*zMJ5R7~V`yCR0P04(C9(T9hi4sS_; zwh$Ojzjw^`DHeXN%eTnSe$%4hwg-e=9C4i^AeQ6S}k$@*L48_{bT-E>_VO zBz_;1U`c0?rkmQ=f=!2ML3mwBwSzSflQOUdhbT-p6XxqF5*9`v?4ukQP|<>~8RY7C z?W6C>c)cs9laJFVd5eAX8iAAe#yDf_Dh)M&`xw%v-#{EEviLSjaj0=OJYlqb{dC+% z^TO&|TpNR?BVhPWh-(_FT*4X}LeMG9&p;0YPi><;S(^-L_IPrQ31Y$zPVeGSy8N<*HBvnG!mIfo9!L0_s>FRLb z_8yC(islA;(d+tzX5kk?OFO*AFrxCJWY@f+9_v$D1GC`H(eZbm$A>HAXoQr0NtqhQ$gLt)uHzun1X?wJjP4>r(Kn`=N3JcqBv6Aw_RA8Zvm{@ zit*M9P4yD8u=YB@ z4n4*Ki@2#%v>)lyD$xkloqisqPb%A-&pmdvPVh$?%)Xm zuiTNFEk|950#HI!b+SjJV?Jk$MT9l=B8Qx_z%IK;^;kLZykua(*6oZORT-Y8aIA`uas4?LGlz~qpbh(Xy@@qgECoc~R zdCE&oy>=%2Byod5S04h3&=V7AXkD7oAJ}*bm~W(F0{@r{d=vYO0eADbpNi;-CwbdT z_k!wd0eNl99|=Vk+m)~Fq?S6LQWIlMQdA6D5_?jmfB&X<9&YX>KTo5DZ$_6GL`?KUsGZwFP-CPektm0UIo`cX^u>VR*# zSr}90%NTbuTD0+fNgO{5Q9LBuKW-NZ3By0&VW^)O1Bo)SJ9fy0BVQqt&UbXugz>uX z08i~@u?_Qy=SKv`_0LgCOTgo$fV}gAwe_x|#RU4Z_$|y!%kQh~L?h{Wf!(OA4)cOUjLR08Ey+l_ z$we&Jt=s4mGP;L5BqMks7Sd^Kc5MEzius&X_N35X$F^KIv!hW@rJBfIkSB zzogY8un|V`-@ot|b*1(d65tHg&{xF?aLgTUjsNlLz0zJQhid$$=4s7-bkkXE87Z+z zM5hObJw0B5?AM8voGlrbGBH(g-M6rRhVBKbI3yIrx?J{R!dZ&@`Rc}@(2hPs{v zvVarPkdz(+%fxJ-p!OyX%jMW>ZQieDX$~yIx@q`3=Oc`G-){Rp;R!Ld z78YCzmVNH9LU(+{*P?Fn+4wz1KfTlpDd)z?m*tHD=c-cRCBDk-3DlPFvYFysN2{xGc)_9`sV>RigDuhEtV{HwvUms&Dl2 zst1TU?be;G;)91LXV>FElM8RnpM?vZJtuxQsz+yM?JyJ7`4^%wyISqM5Y1?y+gKRW zigOXybY;8Q)ai&-)K1FRw8}#o8c8b{t;;0Qd28Mqd$Z<*`ykdd$yKAi7%HSM$9)dv zOw*5UB`a$E^+d{MoA90C;-5O}{ny~3v5vflkUjlN@%p_V1-{X#ld5l^K2$-Vc;B0!dl=!z$$=BtJK z15!)INo!e-78-qdW;PdE8wy)E_{&c!-Fwi$ED$lyT33I~o-3Jo-1^txO|zWl6;;z^ zkdTLqt_2N}uW#Ps8)!N3X~98@wZTJQxQ#_Sy&Uw^tTnY>c9!Fa_fYX~=>D`=SnI7~ zLMpDVtJb+?eh@+&qPOeB9LK+-mz}zJ)~H>pqibL1BueuBG~KdOwxr2{B#3RkR@L>m z>apq~0FGE~14c5{d9vJm@J;Hu3he|wck=78cMo?eCGYb7S9^ce6jvK|?ZSbO&_M72 z!7WH|ZQR}6Ex5b8LvRQLcXxujySux)yRVu1dF%bYXJh??l}Z&GKvgqm&%RC>;}|x? zz6$%6%QIDmn9g5=M|*fXO>vj{9*W&hnafhE1HKAq_z%Hj6(VvE6qdes`>)r|o0U0e zWIec0%YeFbL}nFaObd|M=F7|a!sXoWi=pvkKSG7 zX8j1aEB3HT@Y$}YhBh}QLI-@RR~wy}L(^_4dcBIRZt9dbDPjQv7f4zYb@)JdYo~HM2$G8Dw97BnzL)oQ zhF3I}F3~YAF}GG`#?qvi|8do~&Ir08)~``OGWp6T%HBF>x0XNnF&+Om^5*O^O|Div zsHcBCGKyBO-dN2SRj?qPTdTyUTW{6)a$cuox`38B2`n|5UIvqrHRk=2rCuw4drV10 z;_=>^zabz6n>OtOv4jkDU(sG8Q>G5PkKUw9q|0*Hq9?>`n{6M4Gp4P4yTwJUehuTQ4g2iN<|?tF<3dxBI1 ze!d$90_X7D5ix5Gw#hwMT+u>dGZM5#9A^!sT6e~@B}c4(Rbc_oTP%^+Sa^6`04yY- zWM&#+pZ6%xW!YFn^4Jr(Y?EM-MK;6{(NX!CSu}+R{whP1V*UO>S5J>fxK_1<)tSik zzgrI(?6ccOL-MXw?6EU3Nq-NqZrSw~~rBp1?PJCvx`V zqD6T1ZX*^W95A!7LCX_HrBl)2!CefI*Bva^IJO#<%z{N;+1#(v6Wt16V8B2zi=oa{F<3+l_g9w;dA5C;pxlb2S3^;nTIODL} zVjZ@65}#cGVFUv&pU23mjm8toL2rQu_H z)5G~;=1kyVAB(5mve$GmG7CQTzzAiUufEbtJ_TYhL4fmvdsZ2Rvsng@Ec!sHZ;KW+ zWyaNIjuf$_1W0Zm!N9fX)d*HXLI{o70e17 z?!2}o8%C%?2#%{pYvQ$i zAlLrssJ+br&&Xc9({s$j10%OK&RRHSlLZP`P!)$Ls4F-v#%4mUAkuaxdGL*@cGQSm zggC|WkGTXJIut*Wuk5TZDFYIoKnka#Xo}f0)ijU*+C3F3$UjKG_pAIWdN!M z2q@|3`=lQTjC^nn5jod&^%^{%oyLMTsACD?fWyRu_(O0yv;LDmJY_GZ+aGl%t~gTv z^T;tnt6~kqGnMSd7{vS0&MZ`^{C>%NqJ{yGNtXv5z1(QxW=2?MUFUh(phNv%yq6Of^%xy1$$>6u7LgH(%d0IoC5R&Zx7S9>U4 z*V^@yyaI5*dx(6SM*cCfAWA~%6r@;L?Gk*{0F)++Dm-?WPQ7W*uf z`qN$c@;67r@-cMkcXpC@S=MH6`@q!APN!yHe$--dOQ>o!i<5j_xr+ zu?&7>fVb|;o;0G2iMH9=4CY7~byjPzY0J+fnLr9bz-1D$ne-i-|Fo462Io75B9e_( zZu5P0GmYw=D&{xpzlw|eFO+&PsxK2^#vJKs>g8>{yHkEgmW&dUsbrJ9)VnGU`}a}J zl7%Lc0`xI*4d%PEaxLoyyaXY(Wze2WHyp?pLAnzb(p2P$gZoXOnd=jRB}1Cc3rXyD z*>IyDjcGn!uIteZs;w;=RXp_Q9*4h3-&am3cE%Va7>6-RDnT=luakF<%M&oJ-x;E; z*kPj3L^8d<%~b>*3&2LAjJxoNKXKi7I#7=+L`AarTv{8+SD)jpR=`3N~`qkWxfMsH{>+f8ST}3WXdu zhXA6)IGvu6C#97)cnQeUc*MpuuL<<70?ZVDdF!fW7FL9D3dcFC^(b{d`6*q`9a)1d z@QSPTtIFA{72if7jg|GYh%KVl7^Z?!*`_ICmO? zdX4-apa2}mhqIp}PwUax9={O2are|26v8P>A`sfQ9g_ziU=7Uv4HVshEtf6TB>xJH zdq96oWE{fG9m0tn(3xT4;Kfg~LB<*szb){dwq7QuduO0y5K?NXw z8gIQY_|E^GlTYmE!H;(W+2j&^fA}=6?!S&MfCREDxa+F!vxz+acSxvGhvV>nKeFE` zrv2}Q{i`aFxWAkKYj*wMA?S&|)Nv4PBmbXo{LdGV8I+$iWLdN57yc1JD3kye66>Jv z<_y+0@g*QgH9~^*&eG@@yL!-opDkS2*C!0$OyUViYXBecmX>?o`pN$(?Yue~uSJ-5 zE_Z%HOn|S07Bt{IK}(08Ds9mDHPt;$hY<}e@`Yc!obq4i@~;p5?+emz5b)FtE|dDB z|F73GKnvw37ud}~1q6h(8;_^MqEYnp^swG%CL~a*l$%UukL~_;7VfaBU$&^DUaqrR zYGONGS=`CZwZ|AcUv1>z(!yP6O-SA?Q4W<&)>hj+Qp$l9nhOsL3ki)3p;##r5Yg*S z9yQuu`+klAWi+0?TB+X;pgZyr|h4#BZIn(m6 z6$bc406IOBaSD^^)gW0$9JR(Bpkc`oiFyOL_JG(1Frv7wI?mg&S}gnpiUGMRfXS;2 zsEQ^s`Akhs0o{ORqg`G*9sHY@LsN_Ear`43#&;4D+=beD!Mv(GEJYyN7*(MyH&i)r zS=kU>X^3UV8izzYjm zD-O4mLDfIJov?8H4~0FR_s4M{T2D=pK;W@dt-8GFhys`7{Ehp5#eUuMJ`Ks_d;;!S z`NxkRoF7j)D#rSg--(d3E?7d`xcNv!Zw1b#yGogkh-+9eVSO$FfbK%LllTDRO_8A~dq4iGA~ znt&{&3lo>u+j-q7B$J1J09Xd>IQyOPHg5pP{9lR(AQ2Hb9+vVX5`aC>)E&??c^?%O zz=GUAry}yCUrqZxmY}>d)mkSjGZgRKDwV9si4+VhdPBf+m@qjqFx)a0C$wu1cVg-; zn6sQIA6>lTRi|<|RM{9XbsfHQPm#3@GPS7zf<83>a-zJ1ZQU{nY|E_M9`g+be{(-s zWVueL#~8Ou?^pn`pTny<+#fKMUjCEos7a)q|bGoj2%qtZ)475=;AN{3VH`p*Qy z>g-zs7DKF(?}ycg69?NR?s4TP%QZqJ3^5o@>+Vq(rnn^+&+aia)>Vspi>Dw-glbO{ zut>6G!A*oftXN9TwNCTvuSoyZav1TGyV}U^Uk?uzS(7j@BHLR-$)hbkf2vjAu-9Z< zaG@V5K@CC#Hy|dzR$xt8ke~m166OZjQvfQQr)1_@ok$?SuJwA1!(e0R8d%CO8Y7$} zbpv5ZEw6XWpp-$3ngFZ5mQU9@xQyinc~$g|6o1S$DqPRoyr3cUwBFpLl;QJ&B=Of9 zI5sDQmpizP5z`K4vZix9yYASA!5~>)KtBUxNN~goL#5hUcU@Sm?6w+S$TuTfD0=j(09NB#UIWKFzZ0gt(R-6;=0Q=I&iC zfUG+OiJDT!*~Dk~A9k5!=Fz4!P)X7&HRg+%ZD^qh>2!NaiF%n8={m0%l*%XZ8dhp` zUxc?vD+K|00~Q(@GqBfP+tmgpQp&UyuC%Q;D4Lj)%p4TXzz30j6j#tze~NWm$nU8L zmbHU?;vWeXQFu-8gL z9Gx`rw5598iE9R(X*)6A1;V3e&Ej6$&D622ZS)dT3G*tU(O5M3^YImud060B<_y`X zlVLS({j#xo8PD=5G6LzUPGU`aX1tdlrY{ol1kcNb006^=<3O2t1Z-H|J24_>4ciEX zFin``b{;R6{TD`cle!Btuto9X_x7PurONZ}A0E5{Ga6HY+8-**T zi?N;nk(JN@()SOEh1ZMo68*2j6>@d7$eE%WIbJr;eXFT}H+$cq-XH zd2STVr_F5NCzxJWEra`0Y*Z`FkkYNJ`J0Q>t_~RK=s{uC!q;THKd-;rxyzyiG6`f3 z=Cu31qGNu6jp3!$Y(S!D+4tJXF}l=BE$w{1?}-PtTZhdvpkFsBsrL@Z0oAam-6T#C6BBS~m$FF5ekrXCRN79 zP1y~mOmW?FPbJbB8sBTImw29cGTqM)lQRTyiO+@uKF0T z3ZJR(tt1sZ2`2inYvPbe7*WTRJgsWN*Yh~`&FbVQIP2`!c7hO`^@)SP>~hNd-<7W~ zVQ5%dkG^xw@z!Q@O}*wh{ajNV2kB*adIMllKr$kWPNCDr8D9!;H${4X)y45#bbJ&h z)A4#F!J2BBxr|h)x6;C!e)`cp8x(W6-p(UF)pDB!6Ct{Mz{j8)@}b$_HJDpphB8<9 z)uqXHnIMh$b6Cz^`eMS%mBuUgv)i1zb$CCVb~Hk5#}_!;kY2lbc@1=0Wut2M+DZ@T zkEE8>d5fo}=)~2&yf7tyP)Ni(V55D0YTp9)&ma5E(iQU9eU*Gq zuIr42R7p`73vzcOCNc?jm-9{+t4TTC0&nm6_wY7^;LdYYjWlk!uFWqj6DzsQ$Ib5G zn1#wJc$#cyNI9e4ZOH^$F{@_gqxm9*{%=`w-#C+wmunZ@Ofce@TpYlhP|$KWYo?UP zab-;&hZT6>!Dq9zvcZvUgK;S5NxH+4f>enMwXtP_;+L_&q-(x5QbxpuFqF1B3-Zd& zP;V64lwC&{mLYKy`=)1vo z?E;{D{aXacrc(pedE;yq*}Yy|b|yTZwe9q0fd%}-!-IK6E7+baN#f>H_W~>0NI22; zKwb|uWY%|ICk}|#Xf#vNTg_s^YdCA>19VGuYpxp9R!~BSyRFOKz~GJjf}du5wgeir zqN)bjzDx#N>$A<%;+56v9P0&ljk;?vY+4>niJjbSL~UL0XKa0*Nj~ z<45h7E@`4l!p$T5uk6hy^kMoiLprQwu*O?3wg0yb$FKXM|M+M%BUWHV){+p?@82`G zC-bGS7Z_94#-P|sNacaX2!sl$g=F<-nXS%b+HATru1TQAhoP-t6m>uU%+}FGu|%eT zL26sRO|8*;(9Kbq|Hkp%` zmt>`Lvm;$b!&6^-93>$*`U1&|NB#-n03VZVP}}XC2AOo~!JXNG^-tcwEI2PaWd0n) zH27twW&f{1B#>_p>H(y54RLRPrNP!0Be{ECc(q9@g*w>jDU54c7Z`vc#{`b0iF3F= zd`}`$0>Yh$!qC>5f8M?Y-0p<+#YYv%UL7Rw%&e;SsCbjGI^->vOFx=2GpYk{Fh{l* z=5;`jo?RNn9^B3z=fw~5ORV(D06TgNJw%qHMn)t{1OcvYQF zlrQ;P-)_?#Av82j!rk{c&91bem&^X<%#epKIe#@|CJ{};jy#bsc$fMb-{N<$`X*^} z09y~%6~_0z3gLN%=hfjflQV1vYHUXmFgi-fU?&OC0!DUN|4P7iVxeYBaN#1UN3$aY?cD#CR4vc#`cozWS%JR9#rpw6CW-*L+L)G7a z2zPuJ7C?u&?EcBT(8a-juarNw1baW#wmcg3215z0HORF-nFaA;Q3nYGGu@>o7XI29 z?sC1Ba-6h|hU3@9V`pW;JDUR@VHRLd1+AVdikv=vzv_(7V`i|mwH0l}s^N0X!z3NTijA>Jfj z3dtTTcNta^calFFy^+6twNw#?BC=!CV@J<2|`MP7}5=P}yaQHW~K5Sd=snV`4y4DL%8 zg9gaPskiEtjq5ssGll~oDr8r^fF`+8WITbU`kevnUHFk3 z5a5u^e9#Q#9DR*SRN+!D6PU!iD>g01?o1KWYBD)V>gmE{R~&v|IeeNhx>k4;%2Y$_ zq25!Ah^29<9@f9hiQ;D1lV|}G%LEM_0O{UiuKz9~FyvF(9Pn`8=ofv?9DaD`9}o%L z*)bqelLSE6(%mYb$n;L?w%03xiPf*COok*5m=F|BpEj_O$Diet-BFV;Wy&xO{c^{h z^V27^X)#si%F7uol>qj(jDrerqz{7FLJ-A6Q$@)09^d4sLNZKb$s zsHZF(ok?f}92;bHgSS9o-H*740vh_jf`?U+h;K9kPK@*`vJY2=#fNX~OhLtP(rv4vh zrqdj3k3UY-J7B(n0uX&k=Li^ha-D%88EM5jdk-QVN{s}vDDja-n+F>*N61^m&!~%l zP7in22}a!SyGhV6LM8V1w;*%I3|K)J?h}f27c?%i@dw9evM_lgl5+3ElvSQLv|r|v z1>gz>p+tS3r}2D^2O6HdAXqyvGh1&3)h&Pp4JXahj{R`;*T6vKV2*h9XN7=D(}r_0 z9c9xP4qDZDeDzDfHmrI@UnFBb^>;0TG<}UCq*M?R-R^chnbv@W_xQsK!E38%o>3{u zpBnA!0c4+^miSUhgUGh~2%LbwU-7)4?OSk&j8n;2uYb1rc-T9>8wvz{;rom71x3&x zRfh8tiYR@Akw5NYN&>Z1xxI+nxGg|pP-&@Kdo-hhhCATv)!YXdro@C%@VdDz45E@1 z$rBrmLNu^4w*FU+M2tjb`hTF6c)g|CkWKis<`9y8QC_SY_Wd(v%=9Iv@+COMhPuIUn2A9&Fok zJ5-2$>CS5+`HFO&Yh!|P7MtoG>tRCpL4aazJBicr(L+N=sU>{LTt#5?h_NJjLImEj z!pRB-WJNBZ^2>hl@a~Ks$YV=!IeQEgzW(a?JQVuQpgrkY-P;UVX$rVYPgYG{XO95$ zTuUh9@d#70ZQFw$OhBz`{I4FBy3(aODP(Me2b~-Q-j$d!`;PuXv3e|QmPY}8~PSc0p#wxP6;nd@OzVzS^Oj!Cb zCzR=~dzf5jzgOQd+z?!C9D|e7op8Mj(5dA=LKp82qY2~0b?2JTBg`OC#WR9a5}uQg zOgvQ^dI?_F-(T@R=LCGYu`MOv$oiCfj*q2P8A^vkrk!#f6lAOXe@+?McxXJAjt1j{ z#HvfF6Dh^yXaX!b70i7k!9g^tJS!k4qD)`)i;Sro}mIqH9K7o0t5*+@xEf6YNjit zi_mKzwdi%?+^_@l@2>sNUQf1Z0XR@9)F6(Fk3bb+lDc@QDtysdf)V^n+QwHTgl1uD zaf}%ElU$FznwIoXH{!q3o)cEf>NBb4L3CCY1oET|;U?qJ-zQ+y0k5dCI4=Od#EMOk zRJxKEIP}1UW1L>(?9PgpV5W+@**!qsW1%xH5cybS6!uY{PkZyGbsO-MYEYqrg>P=nJ`<~j2UR{_N#XUY~h){)=oDG#X^a^_O1KYlPgDX#b*FdW19xpJ88(b7MMv%%x{UrE zMz^GMX|lR=7YoJ= z5VbuObJ*|fbn387DfQkVFp_R#;Tb35+OMQkEpMa06%ANZu-~}pxUexPvQ8Xayg;7# zDi+E2HgaotjWv7yDxKJ}Dc^8hlhwUyf;J@wJwW@4Cri~`mk?mJYI8E$TIsvgZQAxb z%c^Yh=5%-4HhufF<@zy+=(iC7C*pst{dd_!NyPB9!_2ft=wpABS=xS{%4%4V zy&+xY>~=g}u0`}QZo;eqO<&_56$0#}qG9xbcDB^XXqxtWBf6GI5`nldxp*%FRx1sa z!1~1PC%@vk!>CLA4M3qU`r@8XnSM&HL}W2mtnq_Z78HQyi_p%o&!2V+)7P66351v4 zzud6!HNwY*DpG6Q-WlzdmkA8UJ9}~eamd{JcuG-cZlZWWW4|{MqGkU^un;;A_4LrU zIx^W@^1L>b#QwaNazg;};ax1Q48A9MrU($m-2O|7GA(ZqN1>tioTAi)c*7H>G`oap zt5j9IS8?SzI5Me|#-?E0elv(&O5;iAHvO7_8Qd9dE0MOnMX_-DhQXgxXZ!G%=;>$a zx>a%l($=~^n;!M4mOD8!JiVD8`>}2r=SlE9#dlI8CegSqdyFF|CXwh79nIVAsEkqA zRcBTlT)tZSdTq*G4riiAI$i<+Xr3=dC`Jk!x}h7f^EzwJT6nLo&o^8#iJQL{!_-9n zP|3F_lcY}PopHB#4t43j=etab@us9MHf6AVzCp3#5IKZj_I5g+h>8=*)%cY=!2wlM zK?k+eU&GGFwZybNy)QmHo!jQkF-$X0tuifA(yL>n*4a)rM`Q0Q={nCz$IQYf`zM@;Hen2vh{AbrSdnePM4=Gi%(l}rg05ym}Ml6x7;Cg;&L#RbXxo-bF4B= zpZ$?iMs7cHWD&VbF5|A-52N1)i7mkU)K7;Doe$J5f|eg&9{_;YaiBrl(-Eb|g}y98 zo|9|kpzTljECK?gViXgmzKP22&Cf^g4XeyV^@eT6F0(>0z&$;P&kUa}a6ad13uFkP zQ7U~}rT(zl6W?mW(=3!DE2-G~&J^BSpcF%47*#H|#`un347{`K-1f6jHSWHa$-SLy z#&Q_Hf9~e4-QKAC0jF?}_hYreh+aXczSUJVk&}7za6f$#ZH&_b<@;=OY9*-{2z((i z)Xh@jo5kOsjYj66wu$Ps3pnY+wd-dP`Asr^sA)%}m#n>upxL(+Sv_jJUZfvQtF9`@ zIhN$7pXEk##m>$Wu{HlwIsO$0s<_jivCH~1o^8=QZqAeC)6FxG#zrjiC3 zbq*78JFH5loPT`gu#yS1+Vpw9<7j`KxRh%4Nb<81O!Rv5cw)PUYVtV#OwNS=rcY^S zNaLV)jkj$#@b?&@fi2(8)RFKt*YkaHR*cgSC<>Kfy$2;rc(Dg z4xeU?Tg<%tmm0-Nwgo7d8sCYdcsg-B4+N5%L_Wy*^-lGhML2k~C*++jnZnD?lIv(A zmzs7#1u`!5MKI#bW(9jJTZaBDDzxW(F2&+f&-(eY=598IGtW*>-`HYmFCfnTGu}mpp@4GwrDN4u;Wp zd1nw{tVUf|K;;1lyqjO^d{G99yOAPz-u$*90~O>r=nL zc9(hZH+5aI$W<5^0k727jdy^6nBk-r3&pQrllb@NU_gdCFsb-U>JRb$6R%s~-s!Pe zV|*JF9#Fc3~6TnxCbm(E4fW0lMahX%9D-y5Om{=P2xBJau zu~{Rx{ZXYgyRyHuy0gTj&qT18rLDME@Kb(!yrGw}%SN_hGXGV2q$$F&slopYD9Wx6 z54{#X49@Z***6Hj_tlbzNM}L=O$wHTb@l7NdarS-IROlUwpBY&1R}G{>7FsaqT{d+KyDPm} zf``!ILG*m>w8E;a2XJ}MTgCf(aN|EKs9CFaXVhj~x zoH2}lfJLB>VaTrDLg`?16OSvGYOZoOG$IAqKD+{hMqbm=U06+9j&@X;*w~D}YxBLp z%R{GkPUYUX1W@1RIvxH3eTqHf6jcgWGDn#ixioWN(Fy7a&-bEVO~A{wyaN%?RI2OL ztG{NBAsBl;=t_zCN0nPfB0kMxa4}w5357<@_e_1gJIb?aTXZyW!=0C}h)kN?>V<1D z!|D(g-6i<)*&SS-+iVH*G2^B${QEWsBq5crQ#xm-f(xI4OzJH>br3IcKp*Re2omvV zI6eH#`GNpZ>z;-!OO$n%v9th9Jf&c=49_93uGK1Gy(^Oo^hfDsXDZ8g+ZUz;D=d}U zc=L;aO_P!|jz&v-{8mb)++j^i_Nt+_+ttTjv!-I^<78uu+i{{$WlEL1CiY8y*XO^X1&7-VX;DEmyIpq4FFS+H2)nrC0@bF}2n?IZsK%*{Jx@J!rofKzgNU^^7uPol- zfYjyB1k!%6z!n2{u(|*dC6U#Zh&HB2b?#CK2nxw838)`{K_%r)3y~VoZCn4K^V!E> zYt*&^5%2BhcgVFFd>cuBxn6VK)^?qG_x{rG3_Hv z(Q3i;;BH*Qkw&4z3S2bucqh`lO)43=TohvQ&0C6=)O7|CLCfwO-s z6`g~}YV0Y;uVRR;OLTTtN-+Uv!WY_gGqo~n)iUFeJy&pwdn}qv)A@oNDz*1bj55Zl z5EJ`nMCIPFlDAj1uETMjdG2ptz1~~Z|MI>*l@#ZEf*BAUbF?wthw}xe$Q`x~8A-G( z)W2Xr@uT=6kxm4N2y2D-qynSi-gh?atrZ9ae76I_#NG4ucLdL@fHZ~g9sz$vjFYPm z7_$y#mj8+Kzn?Gc`Wxk=_P2p8dM*OQ-YM-R^mP=oY0p`=$(s~ucD}gW*({5J16AR( z?^iPUBX)HO-HoO{#xO!a!juO7VW}*gXc=!IwS5jfS+uGr4lpA7J~C$juGf&hWUWHL zys7dR*jEPv)uqhtkXgPtdCIRYiCmY-Wj*CpvuJ$9=YoG#y`-O-zBHTo;b>App`*l? z-zq+kj{TMG{#83DfV0NRi&qgi3=1_BD7PWg~lCXm^C*b)5>n=%7ts-ohi^98Moy<$sK% z>0e4G1sPsTz|PPL=Km<^LD#AXMSV_e$lSK^(j$a3@^W__^zd~xiI!S3yr5H!LI2wl zQ=Lf6rt*RI;H9sc(C zM+oR=e^q5rva;S7#2zA4H$p+`SD=n8BykU!<`bM~2Og7I)!s>-*uB#9;W7 zI$h_}ep?@i%lc10bBqaso6!NFJ}KsznLE!mc^?zP;G8GdI*i&S{2PXm$?W=cV+#DC z9FWU4TCs0hV8WRcGIOInmi5Ra*2jRxf}`}ZOC4D$Y#9&6z9`Ihil>#us9`|3FLN>C z#p%m>yw2vv-SzMgRXUdiEOkp}uZ15qW3#qA4yI)aGRM=P1z`4o4K**p1Evt(O1^Bn zAh1iS?!+}Z=}Ipek!~7GAG8OnoUo;sf13TVgKBT&#o_uAP)NdY=TW&LLOThOjFqEj z0ZQ-ZzU3GFYuvuE;UtwkkX3C=gIsPtMSBovPG&RF$XHOzQ_I|RuH=O(1dTuyywNxr z4+Vw8R<+*|!SD7NB3NpZqWKj)w&*Wy_CX7T0tV-@g^B>?br9G7Xv+?TAMZDm14u6g z_xmH}`;tZF;n<0TTVkWnh!NZk9;n-FFT3Zh>?@HWc1cNlmFFWn=icJqD^5IrQ9mpp1^=W1oQRPlP9VmX*-`owx6y$pj! z&m7-uV(CGUUV;Q)lvrPWMNTStSgfAowTzBJF$IWV78i{px&I6gv4-hsOJZx@u}#dtJj2k z+h>hIGu1|F9VRZjzJ=d0hyQ7T#HgnN_6OU?M^?5DA6Y$%4uPAUZ%agtN=uQ z+uMMoe9dutU-|NK$Sgv>IIfqW!_2dHyw!a|i;nhNU*8wOz;6HLZzoCtyzUOcF0y(B zCY7q3#kdB4T)GhO+4OGn9XWpg)<04l!6uE^!Cv#=wAF|y>`G&Iz~V4tB8nyW*f+fi zbz05pFrQm65p2PAKKF&mZFi_grY-qT-0$B`hRrvTT-U*3=Ms^s%}hpn3k?ekYxj)v!4tfE1!|5Hhk$rLR?{r#8Ec_|324M+vpFy#C z<(E3uD=AHs5xAgA+loNm=c*0=+%lvCDr+bnBPc3KadEf(H0QzqCJY`twK;@9R89l$ zw_WdZ?;Bk^dHJHxv*U5$6pOrJFeey;OuzTGv7HNWIlZiweP54blj|(Jjw4v^J$Kr( zhEpOmusFxJE;M3459r2U+K$@f=%lf_YF&-3ayX|0ay>ly!`k7E(Lf9tT6OYPsp0tU z&xripJ;%>mI(CP|>DuE&&p{*f3tkv50~%%H3#Z=8ryL`DH7&YRg=PyD$d{LbAIOC* zzLq$8wDH{eyLLM8772kI?sUqK*eIcvUL&>!RrAFE05Z|@#p>XOpw7EE2Og6s3EVB% z<-IbEJz7nhBa5RmT#oTP9Uu9EgvgK|I#o7-UsQy54y*od(_)e{cxMf$zxnLxr+D;C z*1!eJoc>>-@_MdU4mQUs(vdZm^n|G7^OM5 zo++uEKE)b#EVzBW-G^Pg@%7lL6XZKa9nPnr1FA{UU{-3q1~D!0z=YrI$s<3R zo7?RsMb6+mAekR3E|enKl8#27R8DXn9iJGn<_AVSpv@#h9XA7B_Z?JgbfJG*>30>V z-?6bFgH$JrXc%l`JWvKwd-!*qE{0meU9?T;ovf{yIH=)C4OxVv>7BDXNDRS+d>*pp zVN}p)cyOe{hl4PA0ldv>p8yDIKGO*^%gTsms2>`HT5PAAv4Q5NPY@5Xt!}scDtDT) zX9^P|3h0s(E1|sb-@m~yxqJI2m-oNIy5D^(hLn?=Gw^K~Wf0>dFo*h!^)HAP%}`5d z3-Buo#%h{5)Xdf#CVwtLo+HDBR@gdDgj<}NvDGWHXcGGDkyf* zHH_DQVh7^??ZT)7eT7|48tnNWugL#(V)%X_h<<0EfJlsU`0>AffdB*r3lYN$4Xbvj z^8d3-{EvSP2@*HHUWt_CfBgayIaI*^_v8OBSLO|0KBE~{&DQPb2jHKWkhEYq|4+aF E2gm6?^8f$< literal 0 HcmV?d00001 diff --git a/docs/Users_Guide/figure/overview-figure.png b/docs/Users_Guide/figure/overview-figure.png index 5b26111a7f26fbcabd9e84cf7777e9ab46e0fc27..201e9b7a531fce948f8a3d1323a70a7090b14a77 100644 GIT binary patch literal 171779 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

VyZ{l?)QfqzLL8JWhk zN3^_3XdZI^2O4U-TlEZpCv!6&4dHtgu7mavU;U3wGX!A+{fO&HG=0ga-8@|&f$UD) zjJ!hQuh{RR3$*R*tzi5@dbmx-v6>0z(?9QLO;SzZ^gUf0^uygo)|s#lwoe=AY&s&+{yUfIpd?ZMkA{Ok zb~{z6!=lp^Hr+!MUl!2BHfT4X3uC}G`mXyAgF%~WqDt`d&CzL`R6NShAqdZWkoB)> zrDm?h-CX}LSljk9(o;Y&(_eWKQZd^yNB=zJ^A%2`$%>V}qvfVQ7J5w;rQ$vddqQi? zOwU(HI=t1|t#2whw0(oFc6QsYI3e!=Q1H#~)3)Ddw;xmWj1R9jJ+Gwn5v?H@h5)D$ zY{Z~<*Z?snz1J~9Mu|&4LNXY10q#;|k51Oj?cq3m8N1vc;f9Lh>LZ%goey@gVKJz^ z!|{Uo%uPx|L($;X{98r)oj=X)Dl@c%Yb5)sYhAozTx&P2WJ#m=5#gz3%x3WcA#2=W zYfI=Gjk2P!pKi5WoNb zmXJ*s>k7`9+MkZwf>hg=V_12}I<7ijk&dQmRV%hDlitNM7nM4lPL#hf{L#VTunJ2E zwmkzlGH&4q9VzM|f}a)bVv7GG(F}S@V|o{za29>&aXT_~X=d)}*GT`KarTQ|Uzh5H zZL zka477DfT83Qf6j~HKdblFCgMbppm?uI3X0dvw_~vg=(I|d0Zo(PY6VXqNO}xf$e5wy zm;Q3-dXkJJp(dW z?Av12$g|(bd@%RDzE3?xL-RX^d4toK!m8EM@cPy&v;het)SzdQ_+|5Omo_n$ej(H*6Rj!(* z0DbJ`_%2uy^7dfghCGG$!Fd)VO_lI}SpdMl&9@hp9&6B(slsQY-IF$6&s6~*3TUtg zzC4fK6U`LLB)~_(qRk0NJq3ou|4jb~AJ!7uvF#3}*k~h{Rzvfh|EHI7DIH8U>z za+A;>BZu>qKH`W%EkQYfBEC={xs@N zXB|4cvQ)C(1GAY|cV3>xXXU3TRI!cze>1yB3Im%B5i9vK`^QLV9s@M^2S8Z+H_U&< z{?b?*24(te2#Bf0?3RoDU`Pyv#ZXrFLb>^0S z)b$OviZn>g)5||#hXXnoaehV0TnNc|_@^@6b90WpsrET{&u(K6m2;+3d`)iEXQB7- zzr82TXKdffZvSKwW+HcV>}<6+w!Ge*vYT8Tt9grCd&z+xQuuqrAP>ABTY9OoXW&wb zGya5agEOCf2$H=w*}WYiIWMkpRqd{qEz(tsV{1GG7MBz0DY7Iz z#Uc!#Sw?^7rb_D{(YN_p6*er&q`0*}{^k3AD*1MC_zY2ra^|Ty_L(1=tI>e?sA3on zHG3>cRG8v;xg$VPMBc~1Q~8dl#@}7mpeYW>U_jI$T)D4+2%_68AN^lw(s+ftBa++) zZ;nXbdJ+C#mT@p9M4QgKPvP^V8ZFbR`iu3QtneR+4w=7I4yr2wIT?+=I>c^}W_*Zj zReNtsP`poEMszZ+`HP{_WlCC=Fbc|B2iXQ28>XgS7 zRv{7;!m|O{k5^j?e44u!J?mUPZ(N;nH(mdw8a=^X7c(&oT_I-kY|}`#_3cj?)^juz zC!YKcpW!a-`kMItZ8|Wc&G`)4Cgdhxd2mj!nIixwcWFR~LM3;jyY8E7YrI936Q%gW zN&SZuC;QK=j+osAlb_L#v%pC<3#}l>wN7Nm*^fM`#0J)EZzLh(rI`C1(h3%zo{U9QrQL!$MQ}PC z&YFAOA1p3ohYXVj`PH_b!x8=lpN!IPHw~b$j%UTXxX6KH5CacI>7G`r4(sVdDcQX; zCHV1;4Do@-^`EtXyx`v{wV8j(QE~DU5I$@sCjSk4J9AC zk)yvO&s^Jw|Eu4(T&n)Tr1nuOhx2?XAXS+x%ivGvqL8jFV8W|UY}#bk8=s0N0;BU4 zxeqEHeh#mFx{#!ADvF0-^_VRV1Hgtsnj{7Kv8#N6X;#HwArjeE@cMIxnU9`KaCR*M zbAs&v&IdVPUK?FmNw3S*`LqlFwjQ4{DZAx$D~By5)Yuan`r$XS|HFo7#DVD-o8zl9 zH8~g42%SdxEMQp@k_O~lgIAE*A6&x1k8$K8%YlVTQ#Jo?3eZ78iLK~uMKe!VVOwPxnp5rZQE9GLo;CF&s-vBF+EBR_i+ig|>-H|NWY4p7Gs0>` zaE;e&uiyaIz`V$oR2-q#=&znjR3Oz~0nq#_dQm5IRhi%PCeV{kDO!$y*Gttp&Z3t* zCIhflC+Aa(yFABJ4+@LuTXI8lavD`(NV82_)JU;iPdSJzbr#KV3jcnf>*QpZ2K)O< z?$J3~F9BclH?l$w5~Rvu1hTk|ODWc`Ez~8`4c@q0^kci%P6i30e|nwg(A98*{!yUr z2(BfWtrcEpd?`$p&r0M`l3pcS;5>0SoAbn3lA}%|J~4pQ$Mm(JX2z2>`C3Ucff|Qn z2K?GJ{4|HG$bp{-Zp*qRtS71POazMx_$q%|>8`@nh)i4C0UztTxksq`;%B#>bd?wV zjAdpwt=($C|JqS@ev%hJq^k>C|MqG16s`7Sc#yW8odjP=-cA1$|t zMW(AiCbPzHiftTBgl+YZo9%TRDdT{oPn95~Ow~H)E2A~vg{r-9=t{tWR zDi~aYVki5&)}sCP603edbGh+tLf~69r>cqemG|Gz&u`>+MgwnZV9lOU808cl)8eI) zuIZb;&66Oy9DF7wKdEMea z7Y+os>E{ib;q7Jxg5`@of1H+A7q&$KMu67? zbJJw{sBo#IejK6InLnS>MEh5XG=%>9exVo)4;er%wka;wDOFgQ@6XjIStBR>`SzwW zwXx0kWDoDeZy}MmY6A;%Kz^1V{#pw44n!8;0B;V}wEJf(ro2UKE)9V+f0D)0dem7Rj-3<9Up{bvHflCWp44SXAnmgx{nz<#v%S~| z=Izff%y?uwA`;XymVqF{mxP5A{_MwUgjXKN-?f3zhybN@A&Is%NkA(s>U$VESIrZU zCt^C83HpLI*9Oc%gf8@a-;+`|0pAs~fhz3rJ0Ro-Q096r13GLB7uRR9>Hx76?$ znXYD6*0%FYzh*ch_-R6S09wl)^DiQOuLOs3=$R3)3zLRz0 z55wL*DVED9yBHxG>?b+|q?dn?vH>BLYkNT4H9_STv&`X6YlTJ~1rHC8OqIOWZwk|fs^$B%=d87uH2$#5{IAei*UBnbqSE6OcbarJ9adT*o6 zwY=gIARkGCWyxaJRT|R!8Od@zy}g`O8#GE*f4-n0!NZdtw)li6|Ibs9|956c7Zx_m z0MFFTh6+Z4cKdJl;C9W`hQC?udBw%9f%eB-UT&Rre672s$5B$rUsrpQAN^w72=G$+ zIO_|>y~4k9iS32QbzF(~*iO%P&WNlOolg=DJnoN0lAc8@gf>^v$1p23+s^lB;_+eN zwH?)^0Y@l;XUX%cwQrggc=Z&8h7*9r0r28)+y1-e{bOVBO!z1${y&g@4g)-iYG7{x z$&*c1E5h{GtpMChGzwgz(RvNT4lXr>fFIx}SdfyE_Vx8u>vaKETyVDqWm3xoY?Di( zcHwUf+E{ZV8g(Xrb<^URJZ1}}?0P<*_K@?_`y9TX@!4+jnaFUX_JyEA2|{8)iorQK ziuSkl566?vOtT{O2|ImXh1CB%%&=u~OD(rBrFmPp-Tm=H%=6xC@d8#4)8OTZliDW!2#8Km_62-O0CeE!irj+)4=RL||H; zZ#273#ZF*L1?GkN+`G^5G=$1$6F8VCd}HEyzr0W;nP6*bK{sQ4M{CObYm`j?_^&MM z&_H$pMKb{J3s$HS5sErhsbU`ZHBuG0ijc)JCJ^ieb4#z+i8sCe|7_7we;hWoKfFdq~y%r#TC}6&Q3{o12fVz16D< z>(eYzCI9}nScXc*Cm~aJ0VxdHU&5lok=kA8DHtA1?5H{kFN0_(-X11nR9p2D4XY+O z7P;5?`5ac34{JwO>g~~F*2Sl0G3TN%U~IDaeFr0o$|GBsJ8r6E)(A&`mp+5vY};Iu za_i7qmcIo%0DTy~_^KRu!M4}pAEn?b8O6tx*!nuJI<7pU3i#Qb)1PgZJH+wP?YQ3S zXFux1W{GCReo)fsb-1jACCAcogjvq2>`-NBwW6mQ4b?8Aqj?}c8BV99?b(t3l>`R| zpYK(0k|GF5U2Cv(eSNU5FC_btm6^$5v;H5c;F>TLFlRr(Zl%z`#otT(2qmxkHG=vs zA~Rl)H$?UIfH@aCQJU}W20)Q*3w?Dgl1}oQmxQh+O(2!`!d?tp6R4kI%7Z~Bh|2x= zc(tWtEC)>G=;@wFpy~ZB&ny0uEwli3HYY?O0EV15!Of3aqYox$2IsY%!{aPnMF^AA zPP;ddxMb`E_bp$3Tdox_%rtkJ;zmByYA2;&YtoiEdKO{Br9d#~tham9x}3QR+Z?*m zS*cC3cj{MZKR^Xl4r}PmbaJhzZO;Xwx(HsK8Zy_+xIcdX{gv`6Xaw6Pm5HPz`XYKR zC9?I~ZJAz^ew9~;=L3sYJIPUnw}~I*A${s?;8mFLBzJko9@D$tUi#rMC9`1TYMK1t zsOG%eTIJdBseeh|($rhErejJWm{WKBnoJ13YxU1RkKahk6vInEb3A0;&vRD-K_@eH z5?4xsF{)F>0@!Q;xw8xxt8^L-E(473*{W7wjRcrp?sPNo#|&NG9v)t;VJ=n&eojc( zjEqCd(iM~+H&JWe1#@zqB+GYwSDh%Z3?16t&SfS03jWTMiP5eH029>9b~L!iqWi}} zH;Cc?w)eA!j~f-hVQ`uud~i_BAOX7^22P#HkK-llC|xP0&2w1SYUhUA<$QU1TCwqh zY6veQtK!^FC%Ot{ozL`R9Z`!jhs$ZaPHABnoCE5VhqsA=oVa#|!NLHr*d8(w|KP|Q z?5s*~Tp&K5I}!ZV=XoHE+?U_oCcz2m{*&6u$a4RYi-BQtmB(O7fQN)nP6ye1i9Vvm}*6@N52du$-b3@Hn)+x2@e&k0^9Xg_ub_iC_MNh zngjJhpEMl)*L1HmFw580|3lV42Zz~3UEFYNv$1Wvand+x*x0shr%{78R%2U@ZQHi( z_sacz&-c7DZ~y6ZI+MwzbI#s-t>22Q!2K58^4#?_sbg^P27McYvwdC1w%tw*;VXI9sGat}_)yk-^+9|DdIPYGnF!hzi@jR8 z(*Cs>PkrB!W2?uYp2-*Rv$^VPb)G9q=s{Wnq%TksWLbB_uAvaG+V;sU9(lzhfGF$>L5>U0WM;(oJK+RBxBT>q4tuAq#@* zJng=q=JTfraaPu|u=H+$Twe*T${GYQLe9kG63j;BI>*dq77>y75^fj}r@ukO2Q zmJXgEpk~gPKg*MUiu#d{#XC~mFE+3S@AFEH?-)m|pC#k>KH~GiQ_oiCO%PU7kKZub zT6Or6mo-|pqtuLI&TZF~o`j3x#AsBw@im2?xn;1`LuQWtpU1th`h%eib~*D(E9$N^ z9PkGT>8lTedtb>EmoJhC$=hO=vXYFEtvOnhXhs1}#GXLy%hf$*NXFV%^Oc6B%?Zne z2KQ|{*2VyfQbmP7wU(XKjW3T^J4Fe^QKh+^LMZoaVv?K|s-|SR+_SGhSTl*J5mS+) z5fGx6?HYzzzF!Xr3IOTz2*5n$*;@Io%h2@CS_Y@h@v@Qp-#(-!uyrD!PdT> z{xccqmlsrHVMdXCis)}#A;H6T8ChxaI+|&<9qc(QT4ZZY@*Xg#TxkU|jdq4Ilhof= z{7Uaz2|ui1X|~fF?+%i_`(iDjeOY@NpmjexTzm`Km(!%zdDXI%9IU#h{wq~)6{SnC z3{v2LgY_wojGZFs5}vvu#S%BzdyYpUWZJZVEmL(z6r*f=Oc|j4I*=lOtZ?4w%ObgB@%OOX5fkYUO@hOj+3Yrb)-zle$rFm`gv;GxH_^Juqm+q=p;C&t z8iF2A2s~WX?ZH}*LYI)jy_kIZdl(YI;LN(C&NiNo&UQBepBtymbZ@<|N#R7Q@t##Pe1zPN1zNrt3b`z8;TjF_FEiPKS5#R0PyX%z$XBh>*hGjew4;ooJmXvfpWWtSuOxA*cI@C_P8 zPVx5+R^Kh+BQ(8w{{@!E!g#iWam_aG{Cnz&$5QDT_A7yJ#PTE^#{1nCP3Muhtw)WWIa@?g^`ZQgO|WPbgr%X|75K|msf6c-qY^){?( zquQj~v;5DmAiH^<{6!k1cXT2$KhMnLt;OvkhBM=~AI}cOgt>Su9Vi;hbXqxIbRBK> zQXzgN`9oS|18k9E-T>3+-t1pk$cd!|$j??>=9PLTM^7z?$2xHEL*LlCZeMhq!xrp-x2;fWDmMF3L6ggP~ChmD5vlT1Ts!Pqg z)UxhZv(hm|>FkrR49CR{1u9SZB<36JamWEt@rfEc z-PUwhai`Mp9A%DdVIyXCP(6*`!p*Kgou34v7NlOGU9G(z+Jcf|ppL~SG8hf;wE3O( z5#D+2WkP=QZfBtvDoV(ZF!BZrnQs6!5K!%00g6uCfYg0<1SgaNJvfM77)Oq(&lic%ygiEi;$Ib;S>-gQ zXL_DQuSz#;7`=sO{2W<>;HgG|gND{E!6+sv;(>1aGg=!g4hZ==0%WPAq@Mcv+0Odn zP_1)7;NLWYTHUhFh&kHe_@^WeQtyoyc%BIG4d%D>`N*NJ)_0zhp$TP&{{4H*7g{w= z5BHb9X4nQ^8ngPv`dGnCVViGOvcJij*4e-_^-2tQwO!~=UQsweC*Y7%s7@EyUtZcF zpYr_rb+4KBGg0U}`P$EPQ7pa%p!b5!py><%wE)Mi{~seGBVc+VV7uCs*5VAD*Mshm zzA$f=H?Ff%&wkz@Ggu9@5b*buuSXt0!|aqRC;9UFdK>NidW0!bPOSKQuPiB$;Lh-N z5_up~vKagw9!GBBABI7)Jy~V4mb7VCH{|ag5ozDK>F<>3ul!w;;#%$fk?d*RyO2qs z^+nk*D^{~{Aa^(Ubl6rMCz+WRqfgtLvE>cd2P=*v4~Sf^vtu9YW8_>RTw`B5eE0pf zxUwi+`u)ioCI8iXtS^N9vW&ZS^j;ANZx2G_-P5T{PKBUX0c&yv!iXsZiytw&D2NJz z0r)tvF&FChR1PcCoT%x7aw%dm3VkV%Wg*zE-}pkKG1FZ^!|j6g_RXJ7GmDu50Q7`j zqCzB!j*AU$=@VqQeDm1ZNYH?RPAQvhBrz=TcJSCM7g&xx$NmV2YRO8%eHe&mg*3)_Wa?C zYIFiD*B1gDY~P!qpw@WH-|S|JBI;JE&RyM47KFklMN*yL$rYRI4Y0AXamLbk@*)}4 zEATsh0XPrN=WA=4lj;3pDdHaTxO{4Se)#L7?^$1cBC!~FjR#TUoHO}7KBEGz27pE< zKz~P4?EhVu$P_PAol9)Y_@buRHG7Sa;G3$zZhrW{BaOl0=jKwZL;NMx#pQV3q;Gn! z_^h;^s~p16(9nMhusrsu_$^i$ST8WY$7HO$jLH|IFYO-8+~%>mta#e~dD`}#nxy}@~ml+DbR*Fgkl#+=nXnhOxAus1`D&cham ztRqM49qsJQbolw*+c~rfpXz!*-lZKK$ocxzg90v;T!dofVr zN1B~RUCqv93xi+NDoV_RhCp*PE5 zpWkH3Gm~apLl!=)DTAmu~EV9^gx%SmWW@uAGWn#A&ZCG@p z5(T?pwgCQ$`(tYpy{{ST#qB1~ob%>C0vKkWw8TsS^3F_woQ!3OH`6RF_?L2sI8LR= z=xAu14MdMocgRyG$V|krP~oyJwKqELC$7`O(Cl!&_^h#Fw;e|aoY~QNo-z?IQuB1a zj`BRO_tL`ix3>{Ly(f;#B5i8=U5E8R9y$){dLyZfaV%OImnDwSb zSV?wCm4?-oo}&~p$zRfQE$2#rOrEaqDD~_=k$yzcBrSbjR+O+eXWK`=&v zxNIoU&1Q7<-}k_ z*}xx^?yi7(<2QLE*dV5AL|I#AX=HbWKA2O@{0Ud?V5dUaoQ-Lt4nbV3|!B?343 zndTfRe}Smo{}hXp|2`bHD+93OCH!A`4wZ(VAZF zOd0L&>EWvgr`>l#dK$C%e{y~y@!Lv&^DD=5csQymNDG|UXsl@{d8-%@)WQgHKAE7y zVVCbADUFJX2A3tDX#~>QkNe$N$LeV1z>+CIt*orv9-LFSH0C|)mn_k~6++a|`}Yg- zqk#7QG+~iY8gYR&04;VqU!^IJP%qO6@WnP0_(Gy5eQ(4X=}B8%IPlJmy^ zq$4Guu%=aM6MMX(!~ZpOrt&SrKo>b|aUh;Lwg(9kMYVOc@nX276&ehU6&gH!qd2G1 zbVRS8hLINP=Q}g;?Rd$xDx#vIR*}p>6&ZcP zULV%IVqd!Qo5+rJ6ZFk7`p=W#u^om*&29OuwYiU2?_4R<- zMby827x0SmS$@nvfE?L(Wh4i!^D6XgfV|0-Pi_NziN9Jkx>j00;I-Qiw)*g1_n6LZ z50}pha~{g9I~lJ)4B_At9n>bapW@vZp<87-YypQcZFq{KIbM?YO3=uTp`n6LBSHz3 zhPI8u{{Fr4y~}V3MJ)Kmx3yZp>O|k+N6XABved=(4RV;rE~_c?#85G_M3nTrpv33i zVpJgO)sO`*4)HdpmY(K(3+kww9Hb?(kqzJ6g|hRo93D*G8lFZc?=XMIjb@;iSuY1d zH*T5Up?_U*MIye6f7^w zJKnC|Kl~o7n`m6F#HN;RXUnPpAySC#MG=_)fMMl%g-ZP__;GgE1x=J443CVg4(bqr zMqzI>FgQLw4!|T-wNecvN|tOPH>lr9{m5*TUCcGM&I4{@88;%iu@U@{_=<|M;MJK> ziLl)+4){T_C?z(;$Z`PZ5 zIbsb{!4v5;i$ht4MV7#;NjbJ&3cHH|38W?ix85b{JOV++J?)2#|nC3h@K&Sn{}1CI$J4JqLMy%)d_dL32mAo3=C zqw;TeWFOz3Htqi8;T7H)i0T;$PZk=(6I z8n9;SjoR~9&E?xC3s;U#PC?;@4W%=b1;8W=cyVuj`%{3L8%E>8)B$z^%OSItzl6gG z@|^E47lLmhzMSJ(f(jAu<^aqqY@>LC-eJAYt2bhRiyHLS?L1wd5+((YoyYxhvll7^ zs_nbiAF|lotsX4qubfCoP)~uX0%F?yAh_GCo>nfMrM~a1dSxD}FP;+*4|zoV&D=gl z-m>XIZWPYbCBIhMWP)lzO9^#ao)$R`_;l5Z3xYpI62I2V{T$F6JuF~-)$OfH6vW*v zu*(AyLGD4AvwyaGB{KfFzpf5u$Yzf^Ni$iOc;P%(YcUx3W!`jyQN^H0{@a?(QwzSn z8uuL~CM>nE;r|K{!IOMfDVzO4J(3MZo8)C(oJqo71Z^Z3gmtIQ$!4R-o$>U(NG(8) zb+k#cniiQlu`W*Fg0p7UTQ0;?ZLhQ6UE4F3_OQ6F`*3NDjnWWRs%7D}z<9PY{XJ+F z$DV-g4Ff_*zZ472FGnQA{&o1P&38e%SE#N#k&VP7r+G?X;=}*n8IhmjQQFJ|gO{&` zS2&rOnN+riJu`S+v{+WM6|Ukz0b2Suf%?AfZ_z%1=+N?k>9`;DmY5*8dW9B;X=ANlLdL&SuCK4>ODC>#pJ+$i%!~bL-N`n)?8TQT;H&@+{(Jc4OEg8Wu(DrcOIl5`^IdWk`V zfZlWBbi8YR>S&54o1o6tay>|?L+XNq;@W%Eb`ZSCYb&u^>;v?u{#h=ZujiD9{>^`_ z*`-P)1|v?S|8c$D7iGP5f4bxZ$X?A;(U|T5cEn;0730Ex1Hrh@k|t#xw%O_6{dPtn z+A;&6|6WjmW?!5O#!jm<7JtjAc~Hd{T3&B^aWQmm3sy)9tji zTJRbqsv9#~nL67f7UQEzCJ^;K0h)r)<&EH*$%U!}nz(tw7a>7zqG8-Um3jrIgibpd zwYicH-Yyuq?qJT+IR-oje0U?LKWI%JTf-b$AKFGI8vHF%>Q_hfleI@wP@g70gMeA@ z^;XQLtK0Rp9p51bFO)AWl9Gs0X}Y`n%%q+;2qeJKsNQ}{#QN~+?)Gj$57(jba5r6@O+fir-U{~KJ51Tx5UweE=%TEnLytA^>~^2W@|^RalO;A zh4gh_0!K)16V2@w#>!R^JIEujY_f5v0e;0*krA;Mw6-)T*%gqk9f>PHhXVx90$SeJ zt2G}uIw=2fbJ%j15B?S|{+AugRk!Tf-UH|2cRR@PukII%6t8-OU{Wkf3>`y@cnB+$TN97v>5whxT>fvS&Ngm~SMon)yzM}A35 zo(+1aPBN#?X9__0vk;!f{ri**!cj-4s04hf(v_o^e9#rfDeWqb*}P7E2U*P}TZTfJ z$6Jja=QXfr+YCCs-8V-rtG+ZB0@1DX6rP;-w-y*K7xDFSNccfTs?RBLZDzPk7G;2p zaZDNvF!SiG+DE`f;43K@+3EVAJW)eM2_?OGJ4${#?1RR{!=TgMYKHDtClB+_b2GZY z!soNxro;Wn?-BX`nDP2#TGN^W2!Ca=y(LhT;&NPz!a?qhDWVM{7 z&Yc4okI;#-#E`DSG>wgo2k1sV_}yqV4+V@<{q&}lav}*r1=5|o$`hIQ2|$gXL9LiC z^SfWCQ6XJI(inI|CB z%HTUIfF~3|cDJNdP%lT!g z!bzc4bw-sp8+AH5VT~@qLRy5ZpHkSd>jG88+k@>1I8MAlwfOw*MG|ikH*SQGyaTSR z3lH9s4}U0iFuxGQCoHj=1*!fSB6(d40Eb57hYwZP2L`}Av}zQ=F}pO3CnKJNn{;h`B!Cf)SQ zw%zzSK-+L-t^&Zs0q;+mfvn5Sup}TT5rU)mw5e%nX<3IosR6YZA-`M^24GW@70JD{ z8F&LrJpyJbO1=P83rGXsA;O(NP>k|0p3F1@C1CmUE$8oO3C^X-_TiN%Wvp~Busm86 zc(QKcDcG%5{9&^kdZozjnS?&!D#Ii6thtG`*cG+AQTA3&t}ysmN`D4wO=;CyJ&yC; zoDMK8zj&12FQb`wUh2B-c&|-{Z-zROYEVI3r0?B5e2VSUXuOh666XuL=@^ZlPT3H%gm%wgyuAK7i0he{cnye#xafamx$3 zUeRZ$uSNG48(Fm8+TH05t9w>#z}QOUb2d8v8%)pl8-WJ@<*5;Lq!8`Fc!nr=01iZ? zC1DvL*Gj9e&$T_M0yYSgf155S6lobWZw~a-8>MCwV=Il;X)QUs>I@9#%R{nv*RzOw zku6+S)9fjnnn^#TKo9^^`8&^zS&St|;nP6A{aF0+5oA_}0(K=bztDv7aov@+z?QLh zI!tqRVnVka|5cgh?)n(jhb?^Z^db)>?S1S}A;Id6&!t?F7Z*|1eFsTe{yq9~|3uq^ z>)E=+(e}pol?C!MEtf-FloT>o*T59J$bN)Yl3bTj2#hF8y279ucPzkMoWR7F0E^lh>OYgE| zlpHJ*I6)j^kV&zPL{M(wWaC?{5}g_e2|0uGF1WfAz~dLN*$(ED*H*uB1=aw&C-3Tukk16ELG zeGqb<+3C3w)!IXN18t7;gw5(k|?rrxJxX#o{y);bT zhqYdIYL<#W@7*c{d8^J#y!yJoqOX4|FX|B?WFm6tW-KI2m%lGlURfhQORK-|EFYU} z8bMk_*zq$mVNxjo&OtJ?eo!0#tQ&?kZ0Q~_-H9fPnniiUM}N`Ug31hYkMmB3rT6Kp)@-wD#{48l4)K%jtKHFrJWZ#C z`yf51Qbp=rk>2%v=d(a(6Pk}JP+DV8 zLm_?quN)d5`=(tzN<5vk@!)7DtM}tR!gMX`_m|z=%t*ejZQsCML|Q%1FB=y2?s>NQ z<~S;^`Dbj|pfQULwrg5YOrmDh@;0g>v(f$E*hwgf+B*n5%l;XcX&ZgnWTu2EqLwM1^sa$y>OmU zsr_R@CBg3F*mC1M`!I6`6LaqkG`Bfcn zae0e?*ms4N*PBjJCHCm&FFimh3H^bFbe=n+D9#|Dbzu2+Ep;U>pwtmzPtDY~IVH7l?DENxwq!$8$fX#PvB$1|vWNbK@L1vJG|1R5lvBm`6 z*qpx7z+npvx$tTzy#ITN5O@dEi_Lo=Gd9fgY>+gg>2yAXvuCRhN1RgLW5=7xG=tw0z8jymSNt@@=VZ|*TwkFMPfXKPf|IH zl|hiEGIQ@WXJvp3x+kt;W4%_z#fy7p1sm%0NAafh?;6*;Wlt;z`RTu~No8*(9H_v5JL&KZb$n9UOieh+& z!-AlhR{8r)>DkW|dcft!ybXQph!4@m<^EWynW@?MYV)2j3SY&UuJnI3GhEoX1vMH$$X@KuOP@W_cWR{P|Tqc8O4F>>M!E8(w6ckq1 zw-zzBF(oBwo*5Lu+TAV)t>HZOf}5JS6>Yd3y18Wcn6uS_K}ZxiQ72Ww7|u(-zm6i} zu>J)EiT1wrUWVRBTi zM^|lalFcgK8Sa*`k_0jeNOUMQuHXCnds@Tm`^cXlReaicbJMk&SQ#bOwW2%$pk-m& zF+Nystd7Lg#t+s$lDdQJ(G6&6`NM_$qPg07HXe zQTW~x{uQy0e=zf^8rAIusE4n=V@AYp7J&c!p?KDp0LB*fLKz?gubwR?x~z%>T9o$N z(_dlFRK6SrbP48=HXym0mU$<4_siGQV9M=PP3qYo1dWlcwUBwUJtgrBSQb-q}YjwUFoDWVYF;7i5}#T!g+ z?pm9f>z^L)8yf3RmxZ>*2VB+dW$)?c(rUK-c)GDH;w|D84-(l+c6)xxCU~)iU1^Ui z#~nyoc#V@oPsnMvA+@ACCEeK_U%uV@!>jGW^?lEd=I_KE$dhl-+e{{h>Mxd zmm!f+OO@ydLOugLTmQrY1jx$B_=gC;djDChg{m&hkp=}NoxBc=G5aUaUlMZH)Z83U zP8yImn#y-D{uDQ9^Lx}%Z4MzJv;@lCNpsT3$!KPrfR71rIr0g{DG!09ldMw@lRtmn zNS09taX9Ou@EA-zJ!!p%O3xAD3syjQg`rM;)%figf}b}UMy1@?hEjLt*2J`O(xWzVY@WidLp?q|C3@}`xH|GdKdxBLpJqNBYH%#6XP*V zjdTdftms=9)3(volkUHeCafCw=5!ASTn2>%z|qh2qXvR@{FB`Od3xk|j`G<73S;TZvfYJOCx%7oc`S@dW)%KaK3C7S(C&41c^ zl#s$x+0&>u#4re*&sfFER$I+p{yhL1(!*F*T+3J}z8X?||2iT))@B#+d+l`s8+ss- zxf>oZN)9wK_g=|zS zz!cIEqIKx+57JvKj=|9T++PArz}s!tcp=JcHrfTWUH!Sp%s~)PP^++%5d5C@uxEv( z0OavjCHT6$2{@!4Q4Jl8Bx)Nxx<9&Vj@Sol6)t(3*&APZUG6ptF&G0RPMi8JSi-(w zDwA##%n5W>KUN~|se`-uV_x`3eDhOt^OFZ`^;OlB!cV_pBbC1P)Bw=ZeRDf&bCrd; zxzWYmwg{^0?2+C-9^vLPFyF*Gm)B_^X|XKLQkX%5k)U!tu(2n#j;*E3nECm&5Aj%G zNFd4-AJ<0#k{ZeFUTIfUZ8j`oG}4mI)-n$%={BJLLm?qUBVl*Q;`jKKk`f_AJ2@j1 z=%w5aU1jF}6UwXKHUtiH(n(D%`E=X_UkAYR{mk1A6A=*+$`+pKgP%+L{Ro!5KE8Jv zeVe%l5m|Bs3MQ7FpWa(jFbMe-5yM@Y0TPLp6aofx4y9;6+ZOEXL!h-OE2?jdY7wad zVV4w1V%0#Is|Ly@GNY2;CDKOwHDEK!CAFURy~ugT42;o%$pflC6Xd49iCC73Ii$FvJ;qjUy#}|?Js|r_h=-G4KS$5 zhLj~GZUAN|l-}WDfjA2^Cbg@hW1u4>`I4T`UDE46EL_|s9WQtHO(WdELVO-a2ADoH5Bz)i4#iG$FDqy0Nb0g3V7T`@r|+S@k9 ztqI++wUkniv0t0D>5^bF+230_K^Xsi)1IXkoZ1M;b$PzkEH+i_MOG ziJ;E0KU=QXYOub#x&mbyARz3MMi7&O0TuB_K|z_60F#TB?(_ULT z^6g~hbT7b7R_;Iqj(BUW-Jz;xbAtNea*spqt`DSic6~K^Y!9Yo09#NmrbNC>M^LSE zu^RC-i=j-)Z2$X31}~*0T5sl3#9Z+?grma(Q=WR%97 zts9Me%Q73i`%9=+cYhPdOegN{XzI{^%_MpQKj9yWLhJTNE(+wniwb5NPd)xG3qaZh zbm<0&mlb@wRnFnKjuQeR@Ce6`cwJ9n{BUiS>jJL(f#HM_^!TZMN%-Kp{n8ZR`hBbo z8Z-s8V3&bz+r6-h7zG6dBFGRN2L3Q3f;n2lC}6SNO}N|ff(Wz1l0Ti z>FlCSK;L5g?}mzw{3YbP0}M9*o(DqfE%wbv424+D;AXe&7BBSCEzW4p260kBNwY z{bw(m$&cfE9(Mp<=6tq{>1dUM{&cbcoRhzH{pE`Jp z7%g4Vk;2fWM%RIYmON+^-nJOkNk-xIb-g()Ep2B`Tz^8uhuN*l6gR zY6g!Ue)vA3Rrh%wkKAGB+Umyf$muf6eTR^%VEB@{Un~9cg{-gn zl#YZay`n|zx5iq8_SdFSk!9MDF`|Ng-Lz^RVH7g6N{&znz9*fT3aDOcSVESPz)x<8 z0d_bY!60@&;HOSfK)55V*d~k5}mH$;BDmtv%*O1>Vz}U#n3WSav-1OvgBih|Qwlp=iHnm>PS2hctxVyd< zA&~xjjj6ykC!Gr9k5^mv(vz&VMHr2dQ~RuScCEE|=Q73dDse81Qybj}#sQp6@;JV^ z%71Tr9Teyq*`)pA(ZxkpR@Mf%-aX%5xIfY)+z z0mlU!qY-cuGi78PbvzmCTD@@XA=czOQiibV)(9!@47N0N4Dt?X7!QO{L^Ykp!? zBl~b_j#y+HSWp}o|A_Z$%cpT4XjktK2h%s#rws2e&WZI50#Tg2wPZ~CPlpi+X0kLK zeiO@~aARS>XFSXe)*_j`RX#H~NX^Up{9DhrYiOm;V&?tr1?ZgZZ*2h*6c#{g^>lL( z#7l-N1Mmcd^AZvgfd2WXG%T;CGiM4y_ZGFIL>ARNZa?qi{pNtk&vP2x&(YNL~JpCZt?ye z3X%{*f`;dINr&BEG}>GQ`0I7J>vZT;+)o~EM)jMy?q)8{wN*a+bUI*GrGd{T{qGSC zlYd?bh5Sr1gO*TKSEdpWjN*c_{UbM6=h7M?Pef$0m{zr9G*h4znE#-B+h}z|R>3R7 zWwquWwVN%97t8W&fM0(-3EjBASXOQ?ap_CuC=YY@7bx|KCZ6ZC;r>xChv&wHn$>>K z{MEkO%tH!ia}vEjnu@aAb+lNtO&Da=d45)^2l|%JkHUN;Q@q;Buol%WzwYnUMDCAE z@frVoED1=_=Z64JNr`ZAX%jC~fZsnr z=mVI1gdf3mITgxhWH+x==!wWvx@} zHdBOo=^h=G{euToF7B_7SCinj>;IkreWh@joSYoR@yRV?^8HHxhMz`FndXY8D>^US zGIoAVk;qV8xK!m^kKbEA;u^2poA;;&+PB}sN7=$IV4%$EfB*dXvM2#Gd7(~q5-(*C zAf{7P*SMsa6`huey_+f34(BU;}QWC1I&T5l*M_S7K~d zHdZ2OQNT>FKwf3a4(NQpv3 zhzNDk1`LtGOiyn^!0Y~V8^p)OCHP!n=Gg3OHjBYuxj8rh1w!d%GmFcy3LPEYp)~?7 z`{2YxtY8|m)ayxQ$8C_%j-38v6-hIuTwOG8)Q7!L-j#ZVYklp&d#y{|N}CUMr3;yE z*!Aa1833YCpv3J&>jvSCs}Hi^g^XL(@V6YuAvLKN{1&pS93_pR;_ZejZ$-sh{$$X_2p{x0?PnE>Mxa3}=- z)2G{`86XX&8%L}Ml}th?9yjwMSVU(O0hjakamep9tdRj0T(}+_4C#z{m5qVDVnY9d zP^T5}xGA5BDuxC76Ow^^jh?&G63{JBV?eB=)1LrxGXS4bC?RpRSvfBsJC2CZ4a}F$ zwX}UnOrm)B@vcA2h^L`pbgwKdOiWCSjN|k34Z&c=LYKs&ir&|nzwDM<#Kj!F$1I4f zhP-#PpxAk*14(r^ezrSqp^ftH**&hO0&!9yUReJ)w!r(m=#(KvgxX-J-H4Pg@TD8M z?$+7rK_>uBE)NR}stC^BqEmy6(>rh7M z+Z>s2fzrTAsAW#;sa;hqFCF6v5a?XsoCCQ zEn1Hf`sb$Z2yq)MWW_T~!PN%Ekh)vvMtfna?kH-WZPuzQ7oEo2V7?N`T?aK;K=OIM zf`!oM2nPZC+nfX8JR6KMDFflG0Im5x6Bi#3+Gig8nA{OzJNH_ZB&q9VCgbL{mfA48 z#CvOtHK9Q_!3oRa@SRSPgd|%FMkq|Uk+N*Bb`FX^Lcr=tTx5m}f<3}tUOF3aS?=^%WI`wkgG5Y8E_w!H* z{FTiD;rvSooPgSt7{mZ@Ni8?p5uu@hNx$_V3kne3 z>+)Z{^I4Ap&x;xp!Z}IkM!(Bt4VZ4Dx}k{S5C)=%?@a=+S%Geso5CvLF){lo?5r?_ zfkkV;RCnc{2b*SBydtn10CQjj%JK{)m8xI>`9m6KH#GvbeIU8D#c8t|MMyh1G9fLC z{_Z%l5z0O>=AJ>A9EbWuf8i1{$xOwOP??^Qn3GO`KWvw zx)m(aPV}?;x4wDeu1Oo4+Hz0R?Ipw&EX-KQPZNTd!lNPbU@VaT>a_oEoe+#U9$1T| z*dve(`*Afu1bA%yoyNL?phc4b^~NVR3`Eb)4*0+Km4N|C{FARf&q8Ln6crT}fPD98 zy^W8lr=hwUwX#6qX`xb&OcvqWXOjn&5tw5u{aIPP=m;tas-nvr@_c7CUe{_INaDAg z{jvf{&uMy*)C-UNmMHQH?qX@QbCTHlOfW?$B1GT|^9V1J{F~MfZuKo0R?r2GQQ;43@_)}( zs1#*V6_(x5_;kGuZ`(}KELa6{Ew~4f@CWlwS(zJo!FG6$QC$^$A2La01`a(0JMOHW zHm=X}Xv%Q8l}tvJ63@(Vxg}nzQ;a0-Y|Ty{8YOSWeC*6uu0Md-E5G*Mp=#Er+dJj5|sT2A|Z4Ud!`EH6QhY#X^53F)XG zT!oxunGpBd)$Qm_?!vZT!`s~}=b{)Ckq-H9#mA~0jyIawBNOr)eM+sdY25b~F{3+(g~WLB+*g8WY9Z3Zb1fVt z%N4rMJB0=v?+L%-?_O60UNYrwoNj(qgyemdOw==>f)o%Tah)0-YRz}>xEZC2c)%tQ zLXe6xouN(U?ky}VyjZUDE!F*nlQB4wx#r#Wcs<)X#lyt5q4N9v!^E-#IPKpWT_>%# zx+%0rszm+QANlXN2?N@PGARY7lQ;rQQd5WQ4hlNf>u73AP9AUU9D;n--oa{+J#+ws~eyDV)&I5ARY0K@lG_^uDWaG?_37!=8!}{h7jz!LEMWo`zPMSM; z=h+zeg899tt!(H(glANZ`Z;LE*PQK!$?ZYei9dpVz7CkXOiXEAG zJRp=IyZ3un+NaRt*Do-K8i0xAcMI?>y!U}mOvI;1^2Vd-q6xt2I668e(T31=h!7Ox zAf9+ZKtLeid_P3Rp|=P88204dRwC*yMagfZi1f^}{8`awHOkKh4g)LSGtkrQ}wdA~V!DyPmUy0Yd~ z$3^yPQ6QC5f?y|UZd_o`jmLc~@lirvbb>&@tCB=m#PGk1^XD2Zj{5mnoN>G(>g!z` z!u}=)=?@KM=5sCxYcAoiio| zm>!k23AXmUc*!mVIZ$t`kFeJh6QP^2mEh82=;p@6My8Mmnm9?RZARnfn#KI1D8M(* z-rsbT5g&Rg3MO$Kzah5Foe;>X-iXuFir+D^U zV0f~#p{?!voVp(DceAS>J}jQAtL1ba;KEmqyTaaC8L;D0ULoGs(F0JSp~OwDYq+8; z;K|-8N)uZmj8|v}G2jLt!3|Qv25~q+4W=F6xN6JISDFo`>zSz)M7i=T!=8(vuGm_{ z!^VS_dr#ZoC@e5Eo7CjIFk%J2P>Lur+(JFzN-gw2WZ_|+@FZ8-!i&d*(Zwv*mFUD} z#ri5rLIsS&$Q^F%k>!Z~PbcVqcS2Pdlz{n?nJZUTAMvBJc8v=8^5q`}(?--HO?ZB{ zSbAK0u73lnQDN!;?kfsskf@-*P;*vLPLAltzUuNUsw!J2mOLl0;-;$96-`%U`cxJu z>iIe(-AsX|TCEh5uqrx)&f=61OxlIMm??=u@x}=5BC<#)9D9>=gy;^mJ-uWLfJHmS zJ*MjUV$@z(UXR&V*{d+u7lTMM=<1PvupT-rSm=<$S$wwL{{QzK=(Y;=l(dQe9@Dym zo#|vG&A}*FYoV|wry8wtHtUXEFO!RMPxFRmp{e1o9hM*WM>a(talBSh^CB3`WC5+R zVRpyK00wQEJnTFBdseK+lO+GG2hQ-I!Sq6PmEh1wmz?J<93H9VxTtZP{FbLFEz`_k zEyvKFfX z=(*->crr_;ICG>QFxt(#&>{2UN&mHa{(l!V3DmsO*(AvCz!B#I5Wxp4S2s3(oYqd9 z1HClNroVs5A)b>xzq!G$t*-V*6TX}t+N|jW&ZZ2!dKf&H;a~(Q(sHYO`=5i&=Tp@T z^shiO?;IG|u23!<2k1a3JRxq&{&vPTD-FQeiIHCv@Qo7ADH0M8tO5T91&7kdF6je` z6x-P%)bw6)adC?w3q?a*pe{Cxr@4~6Jy;_aU|(lkFzoxaC!H<)KRw+4{pG)ac^Zl> z0)91W7vk&(Xd-VArYS~7Mr1;M|B@d79-O!cD1q-PbXpM*n;Rid1BH6**l&4JC|&@W z@a&iQV*(hF!%}RfM)MWg7#8uQoH;)9`dcU>;{F38TfG+rhBgZ`s<^T&z5$+z0lF}%XOF{3h3mj_JKL)F z=2X_%E^uJGgpx7V6&{e@A_Qxw4ge*UBvggXVVh&XbQJYL_`FGRs%$N@J;mXt#cwb50CJ1I&f-#Vvixc z)d$$D+2am?;`)tyOye{O{o1;O*0?xX)qj<~SR&i(;ji$`6nOTGpbEpHuuD((L* zw27#nC(@pTZQ#;UIc<1>ZaMeTVv7r%HMGMxaFm0=ws+pi0H!n$Rep#3=XyZRgaR64>q07E-ZdK} zuC|7I3f585-<@+jHH39@k^k1-CNQjx?dBLmgm+}ts;Su|k^ zBB9=2o)v86TY>JP+x7J~XVQdfzTUhd)g>`8aw0#yfak_Ma#ceLYdUbx^@nFTPsb(# zV|uwSY5;xpE>X??aI*dIj;sZ7?mvecP_OxbUFw^+!t%##kidve%$W}|1y;NRq~*%; zlD`{_$H*8T3=lB469A1vap!e(r+6p1q)rsv_a1$5Yfmv~xd@-|Y-zQ*Oo)LSLY%bz1+?FN7VfHw&k}1dg{#Z zBzkK)1n)+j`>USd&_ng0Ox(>Tb=Q{w#DKYMi0%H&6>l{`C z5HTw%D@%%t!TPqgySux;f8Y9eKho9p9;~%b8HnbTLZzfcL}63#2nfRNqy)ql^v~JZ zc|`(_4bs^s#9ZEbAE z(rm-m*jSZ;Z_HdAYUt5l;^X6EVibYHPR`zcdOK^wZm>bHTY4`DMN}a*Uoxx3NrojwGltQ%*X$Z!Vl)P@< zBv!^Cm=_2l9>D(V|2qdf{UCqo3Y?TsKf9gU0XHI;9VQV3;tc|9VAT}&K|J5`>~XH_ z@+0sMUhYiEWyO5_d)8Wdl3kmDf&_$=C-r8JXt%tk2EhW2m>$Z9eowzI10hgEh4 zoNPB|+aTdVl&?k2`=}ieJOh#~AR2Q<`H7NvYPdGYX9NTU03+Mp{(kp#@VpW5;_prt z1k4+O=J?L9lKD&s*q9NI`Arxw|Hrlp88ntvGIvVxTyA7za_C!qk7pFT%au(zX!cvk zt39}}>H-^+nJv$u7Mh$dA7Vo;l4tlgolXq(OAtNOAC1I{1<)mHGbU$fMLr3Wdmi77 z>qn-IK!uQVN%tmj3Ukz0O!RaI#kK>|#|y9oFh&Ff1f#zL0wuw8^ChSkOffZ-0d$gl zN*zinDk|^0tx)9YAx}p{U(gSe&p0N+K&iWP&lq?*8?9yTqTz3XH5`IYtQ?Xm;36*L zKAge_{)158O{?#J=*3LIqmJZ>0mym-H+lkptZWZf~dLou~7&%$L&UHW5WO#N;M_ER6C%J^z`wb z)#RZ(0>0OE)_$Amo7p&Olp!t2@PhU4n$DbU4oW=M)SrDqmcVQLHcb$D2Tk%RVCgAU zlDTB`10)Mm5bx*@PR9l~Q2O&z@HcDz zq}I+ia9K!kf?hXg;6aXxQk-DMwYYF`Ji7j1c4QHnk}6fjsH*kL|GP15b?&)S%H(>m zg?K9!tXDARgul!f9%qQCLksOSQ5)s6716L+od%}@^E*EJdhlIW&N3a-hU6+7ZRdO~~K z<9PQc!gL{zU_`%33vnCRxe-MtDgO-Uo^|D-e=!Q|SWgWd`D$RX&jG~6c?mFa#Rx6s zZf|c}n3*BYWAj!P>9-1FEVnm#UVq4FYb+0F=dzZ4@0*n!VnATLYhLTUn4U2_<<31e ztmZ5AuDWoYvtVGh?~(1@pq9X7*SM}6FDAITx!F*b-$s$k5hI|JxZkab zTy)NV3-rsFW3?GI4_QvL$aL^R@VMNX^8)37C51o#Bo18oDOcF#yJI5RADjOEFvGi7 zjWU+YjcRp5e?PV5FUS*SDfJ(it&Dy?Ln`!oRl_oi>ob7Say46ZoT^=W<-Cq*Ng>va zVPj)+%!M<&cf^HL%Dpk13Z(PXEU%R@sB?3%ZK8|y9|=#LGc1U2na)`U;~etWfBFEY za7iLTb;bnv+-+otEAVkaj=!s%KZUNjUIxLcYFUeUd#f91e^hR8aN}?ku!6+aPD?H9 zrf9rkjp$EInpKx@v%Rs3Lo!ZOXRtHK8O%eo_o{sPrwm?lMnFKX-d^ShBEEZW1UaQ* zN|_82((>o~$`Rp!X4c<|E5_I5_jt-Ir!_GV$AlXlx zV#fa>##)%#+R&V3jmKv0#oEh%R#7xK)t2=Btz--fI3O)1tyQ}eY?po+mKr}lqVr(c zZ1L=VOQbWqjEgz1fXIT(aR1c>5VVcYuRVGOfLt0*{ZHx>3ZV^XM`1fW zbghO0TyGBNM6B1%zTETvGPNqJY$TkS3uB_HIHKo0y9+3mqW;+*elXwg9zE%+Zrcso z1s~oIND(imv?G|=gs+P=^#s5?_07&AMOSy3g_qUx6~%P!GT>Mm#&g6z(bn&$GX2?C zO|+L-f;2<2hyR^0j^Mw&nH6NRkdhqe8%;$IJz87_6s==wuClPL1eE{wF1ctjcO)V`d zSeT&^(hutZOY~zgj(6!rwK7P+>G+IsIFx!RkHGlK)5Tu^{>9yzSQi8W`J}#jJ6UM6 z2`&8jexq=x%+ZZ;W6t-Tfi?ZWkf9o>mYbF7W)Hi5#d@cfI|@gof&5c0B-6!bJgw@A zQ9QJ?uN`PrF%ZT^%D*g8ps&#rxgR{RDHecWSYj`!TB6PMjE>45?`&aZW#veSuxHxD zFT`u6pSrA>W2@L`vq^gYD!W$E)YeXSGg)|aQB;_jle~$Dm~6&qIx{-N*_h}3cqi_U z62*z(z790Fxvn`F7>l_4G*Wk-0NsBz91AbiwT0SRnSyDF5_lhuxR4##%{jdb|NcX` z`n1CoNc0PRefgka(ZRw_-~MfLR-BJNaL;kA@3SZJ`w_)i25tHLGMdB#SiafHxfu@i zsVa`kkhAZIpHPjd34eUl(XsvLYD4AmaLnmg(0g(+^Vxaugv_AcvM{HeLq)SaFTkr* zUocOWhvrXBojwgI=kjNjeo{5C&Omm_1A zd{*zSPb*p(vP!s_#Jc%FNBhN7&$EAzXrj;c4s9MZpopH4hJ><1dXKm~PB&&Yws zKsUw?O@F*Q9l@njXj{b>wDXN`YB>TLD76KsR-h zVx+;<|JA9G0L;>c7IW;#$g=pzn%Vls3$ws7q4r0blsX#&^CjWtcr{~<86g$cw zQT*3>I>>4R8Oj0$GZj6@v2;!>gD8S+p11q8N5daM^fR180*@WJEY>Dk3*P6p!d5U} zMEG&+HHG1_J!BpPZY`)We+1bu-4sEBXxwi+$rp@s#B&^jy04Sg2$fZ*EJ1-18U<&{ zVbq0`#+XfeCggpyP3IfT{0M`Vj*LpcB-(`5RJvr=Vm3lvFja-fa&;o$ZSRBeThNNO zxqqqW6|4Suwu#FbpCi1Iy1%S@#^puyC5sN#mBTUD_Xh?Cb3k$dtMj{Ncdi9v!*Ai2 zdOCJUdZK}(RO6?V)A_^qstz>-%)_n@Yl?Qj}cZ0Zvp)R<>(%{0j(bIJzBo+ zk5bo)=P#%NC+e8Rd!WcC8l0_u3oSENf$p|HU#o=OT#vg2A-a)axB$lN)0FtcdLpgrmOCUg0S<=ap9ceq5eoHW787&2x)8au&RM(*b3w0* zh~)S(8Pf5MKcEO(N=0Y2HfWOuhrVUAf!nu%J231W@kTM?`THGP=q*2w1Ic-8Q@($v z(WjVe?nC9OcKeAkgf8;7poR8W1^>ox;*~I_88L`Ul#!P9?Wx2HCnEoS+=HrXwq=DZ zf5iT~)#njlLY?}EIQ`$%ad+Y+5a_UX=tn7V6^tCRJzw3w{#YiiWz6)$};^fNj zG^v-B5Yx4gG-(8r7geWAA2ZYwJgu#*$1Dt~qB}aLo~6#0+c`$Sd?3BMKgc0jK2q+* zOgg_??_3WN_qh>xIDB_Bn-be|4Kiv+iO%@1XbfhVqLezPKn^nL`34uY+ZfTYOZQH@y6>B`+S(w|>o7UHTO>)P&m*l;wC z%FGm|Pfrg9)olp)L6IzGxLyp#OP5?MV1F%zy4P0pF^^`_Yf8WjV5nvcO{Y%lGUw!X z8F5JATAq;R{`2X6yVskzGuOqS+)z0$&(aVwQfCdRM#`i**KGV)g3~I7lqTT36Nn2< zG17#ky;FwcKB5>UE`Llj;3ywHohSHL(h(JXi^Qo)b$m{0`ME1+sVp#8-!Oa) zDdoV+$V3KKvZE23XT(YK+I*OnD%HBpYmd*BA3k-#ov>Fbmg>Qv|GTq41>#j3{rgaA z%)yKg z#1zm+uxCd{zV^^kNLL*J`dO3uGzUcqIi-T|s=cvK;;Y{mh-io!Zw5+OBUQ`Ja}-A5 z(9T2r!RV`7>LdRI=<;0Ag5z#d76C<=WBds5qo4Td@`@bYWHoCBY8oRkUA|JC?aZF* z;&RcL1df0?DAadWoW}AL!QU0&O5mYnWu&9y!fl%E8w_L(k$UZ|pr>FNEF*~undm6` z-jgtl=0o$Xf4WAX`QlBO^J7}nF%n{Aum=~GQNCpV%T)hSyhZ+)QGvAkqk3-7tD`LH z?>RX@@kdxuOHm{R4uR)aoGb%bTm?BVu;>dvl=LXM5~DNQ)GfzuU5rm<++BO)1X(WV z(p3=S9pbU1$3Jvd=vU^zskbNHGM2|p|M>I0S#EMlsHMqI>a?}}m2pqgB@a@kL+Io2 zL3kjaXgZ2MS>~wDnFdHr3|KglSn??>eEaMRF`s~+LQM)+!4tK-1^2YI98(68b1(^J z)ce`h0b{do4#8q5JPi5>!d1cpXy&buqa;2*)Y=1Wslfa52qF$aAt49%1rL1!ksz9z zEqsc6b3K2lP5d?dlI(9dN2b*8hF_MsvU9%j7r;2iL0`i)T9w7NXHra&YISM0PjdD5sj*`DXa=B(3jNGAEnutWx1w=A)`i#3RU zv;e|kPzwgSF2934EkH>|sPI0>Z7a@WLg5kugZTCf=t zTo7NLntb8|;k01mvh6onZ;Ar-uolAOnY3WsP*}Ll@7q-n7d#EfRjS^($zJ^sKABwG z%?}N`gH@6T8Z5oVQxj;_Dzy&&3l#1fx4;uf2!+cSMgb?1Vf z8fJe-UDD5^2gI~qA?Na!oB|Vrb;RWG+N8wfO5Mx$y35H3duvCs!L?+bmrpIyu3Nmc zB-hf;Uy8hN0d(f09bCzQ%DIYStsHe}nWy~LGi-MX%g>1on~#eEJtDJ;5W1l|BnR-B zmwm*-YrZH^ENBEeM%Fs@rMU%&x6^*HOU9w-wAOupmVFu`Yv&vzw2Ds9(gTmStO?7a zK~5rFwCRQe!CFr?HZRlu? zqwZq{?w>obgsAZhIJyNUm!K`jiN>3Y{)Zfk*ZX0#0!x*5t%>&d95x(cFVZWpsECTe z&Odg?_0pIfCuB_mZE_ZjN}1+fBz=#^U!1|@I;2@{1jGqeQC`aF5GSlESp7DtrI1gr zQmENT>U7%hVLrg_tnM(xn}vN5ji4J{nM~CG1P22Yft*2+TyG5YbF_TkJeqRZk7&z{ z=(2BzBTX)=30j>QL%0uq)OLXQ9KCUQ^}-p zIR14XCC??>W3_~NEuI7s#U_c5?u3q+jSE{Oz z!p}I>J}>omXJ_4+T({xq2TD5>)sZkVR@IKRBtSC}s+0Kzz7*5kAO1p_G=GW2B zL0H%rOLEvm(i!U@6HZj5)yHLxXYCE^WNg%3&qe5Dpbp88o06I4A|{4F8i^*F(d+9$ zMMs5iXaTHF*3`N_x|!!I_;`7GNy)Swy@GmjO7*i8412R!M>!eHspDr2Aa_aq^}Q~e zMq_xlH(uv)veFuEiHZbe^ym$Y2J%r+GcaCAKX>!c=frDqJt1dU-h-JWl1e;j6pImZ z4mmXqq%KGN&nhQ; ze@U&sSz01GNI%uv6x8+--1lZ$sZq7i$7H%5+cB;uvP*>Onpxg`lyAm`ud$hKMrJfv zdEI>*&+)kOfnGg?t6wXRvNZf89k9Is;Nkk9LNSJws#!YCZw*UJ z2GR{AI};i~V&}I&S9cG60!w~hWguQJ`aHI;zzuU6v|`$gDvv}r>|K8UsHYut>vAB| zdck`unM6z%^MMhjdG_2~x#ScPqnQu?J=~k0p`PDjzd(mo3}C(8gf1D{XQZ;0b=UM~ zE6q%NMMp9?;6w22gkdAd>(G>7m?05g>H)j%Lm07yRtMV4>}n)YY9yT35)lC=Fr>6? z*oZKkMm35rrSM*KodvtU`lvMY=MR}eujts3Dg0M+dXJ?cqGR*6Ca!Gt9RA>44Hh1O z##CH{qO^*IXV9$*W;|~zx&u%jV_JVi?~+n`bXt#9+Mu&7FK2H~9SE z!$aoO*I%C3f2w45cHRtoTTYio9^(5unp_RhAK0KE%z}AId85q2T26a2*rgu~5>f0F zTpc^9&Je=Td=i&`J`eO=r{MySBA3-KqB$ zdd02MqWTyX&Kz3JtHCV)2Bx4|3ZWHFf5+OKZ*cHvXRu`>GsK}a8Qn~+zVloxo?|P~ zAJ*-@SbRsRrag0YKT$9}JI%2&yn-k~0!`c;b;=)K`RFAGTOov{<3r@ltOyCqupi8@ zHc7?INJ$qMZtP}$Kr2HMraA;O@GHX8fDjdFF zP~q*4m|Eq7H_vGzwMEVQK+#ms(Iyb$%5d59`aSgJgt|~-F_Fk#(a$78k<~OzX<$~4 z4?;!#zD@tRAqD7qsK?NhW_~J!UAaL8u#>yXaTcI(wbu=)arK-81FV>s&|Gjq2X1-QVLm5C=t3UN z3A`63Z!-`212#hhc=&d>D#|-Fvv91W>=?1q1C(LQ8{n67#^D( zR&1B~1G*Z0pnvZtM8Pq;>x8RVfDog%ERf9^rHsQ z+TpGO`B#jU(w@F%>@fUHegq;mb-mju_bpdHmR9PeDogpI^8 zcc1xat69I^h{Kv$IEbb*O_Uy8?*(Y=>McsDj7}s`qZ^I3DB%DvWvm2yw!HlkPh#GH z)!w7`h$d)vRALzDhK~2#gI#gD_sRP@aDNyO3WYwjCo4&`I(^2}E|utO;wwIST>4as zNC1LlLORf=CNlt`JG$wYA%PVnAt~v{V_XaR`UX9`XF&YQ#(2+o6c2OriIoH-BjQrD z($n=!z-8J{nJpLX&sJ^%J566F{vf!8Obg$hY%z-8o~VM7-iurIQU&`hAVmYO1b=&5 zTd9T$5!ZKe%Q}M?SH4M(-=57WAyq>%!))a>Z0tPi(dxyUSMB4O^j*_$6yNKuSN*Mz zvL;>E`+lEkjPCmKhq#8EY%bRhuX(;u8Q%1&wsgW^4-!VXb@Zze1Dcc{#y+U1M7 z^+@c}YkvQgjCWx$uLYOrL9fL?D>20+vz%V`u05_JJ9LkEO|1>ADJ>diglzf9Z!ri{5_fF^wLQmzWr&Kb~PT(!2XDZ`s2m z_euK6;6d7A^V`_JH2mUowlxN(ozPu0;I63r1_hm?6>P@O8_8X8rB2H{cG2AUFRG28eDm_TB>ou; zbQROJTzrYp$~|si4K^HhX5r$1MPW65&vk0lS!|) z{)IC#hSz$>cf);;5bs(-;idN)zY4Pz=SBMtY{~a+b(hZ|^w=;aaL_SLu+Rb_)0JGe zcd#E#^H@swubzv4{A*WzTVP=;-FChnuivpn!@`2GepKRTzXGO_O0+TAuY(C-<{Z?b zIO1Ka^jqhEpw8q*ZzYY%G`IxGAL8^W#l=iBB@4|SE+D3Fv?%y%W|wG{+`rn-2pvWB zt_8HGO|rhgbF_ky-w$`REf4N;GxEi4->N$5C#)c*n59nXgiHoU#<7|oX^BVslkY22 z7{KSiKk5=TthhyrakXUMxiG#ly zw&-}4^+C>MebPC?8F^{xXFxd?oNxvq2YLb-i{+qGS%?3cET8N4=0+if7rVLrC1MAnpa~xOuxj z6374BB9Gmj*M!t6@mI#`(h{e-!!K^e)^dp3kqloETc7U6!0x(~KQyRgEQ*xj_$zr1QG<;JMuk z6fgzAhplMm51XU-f`oRMxOemEPyZx@EdvuL9Y z#TqUDs(?iiYU1K{v1y@2ekF+w6}eDzDcaU@U$$F2Fhx#G<~epX81?$t$ia!0}_jNOb9UK9)izzAr18 z=lgdSz~OeRmA5{C{ZQpTNkP_9F4!Kf%jXGbH;i9L>opmS3H0rBUQsG`Bq& zmo;QV@`Vs;*bzDV4~<&#QLZ@nasrC%klHM|5G)mJKj6)@TWowBKBvTew@Er`KGc`f zo;OXGJDjWtj=#<8mM%~nNzd7#>Su+7!X`ft@pXtFW z;VZ&}IsTc*XM7cAwFms@#6Aw@`A~B2f)ZYsO6TjP@Kb8+UYDVY};*ZZHR`Mk7>gAWcXi`)8pgQ?X-IR zw2~b?8)OXy@z(sJM9aiJmnYNAnbPH+UVrGxO^i;X4HT>?ueI5po$D|5_ZZR!vsZWv zd1O4u7aBgu;}}`KhI&tI_Ne5v7sM#`FJo#s9LfKaF_l-K<1oEguB!IZzfXKvJXEvNn| zA(29IN1YY93gaH(dm0|YBm!Khs8y$y;s9yH)cB_~Xa8QDnNyIgyp;ZUwA^_EQ0{}@ zzkmOj(j_wyYP`!~$t%{4RTfjsS8T;zB{QO5BY;qy<$q9uJG%{MXwdu1a)NX+%NOFa zMaswY&p6(Xm;?$Hh2nEfqro`IGlX+c<T|<5N&f5!iNb*~K?gTZd6?HWj-DB{ z!tCXzyyqnnzNIpfZ&Ck;mntvEeCRRc3iVaH+gI*41c@x1QBbfM%BivJnaAWB2dCPJ%cWZ6}9@=yO@<1CqXIsDii15oF?EsDW7NBm`Sj1 zW;??X(}#qFSdsi1-JGa-Ipzs|C6E%Sk+3KjsOhvL2VOkSlwvDjEI=}+_WQ=K#PH%D zN|wIz=@pfEX#@&L=5#PQuqCORL8g-b0sEg0E8m|yDdV`1iNBoM|0Zll72wW7L^s#h zyL);}O-y8<8w4f!e``ERcx=`|%SEkeKw`Lp8}w0APrZ{AqjLU-ybd%gk4vHVh$dX*!) z!C;%OT8#@kx4}h}f@v`P1_FFq$vZ&kRa?(0pHAdr%aQr@^+^v>v9YnSvvaba_?h#B zl&AFdZARcrNYbq47Zq`_klxkTtCXABLl;< zKT$u3i2z9fx97W?KtrzqLzo`{Ul}Ge!Rq%^dJ#dhnU1c%9xEp-g%hg#*}R{u?#OMv zm8drLwcg2;oFyo>7T-i-K7J(Yx&u#%_H5`N443dt8pWGd4m`B^_OXI*pH@eq7xHD| z8n7VuHz8(Op)8B2XoBGRBx4!|?I+7(yAkK}jDme**lkr8i}<*2D+W5OcPHe6s~ zFJDU~r3qY)PgUb+Rwuvn(q9~L_$Mo4fcPmZ0uW`RAU5mCOWKLM1sur#K!YA1RR4hn z`+OPG0UQU`1cQ+o5JYkd((6AlxGrHm-8t~~aG_&1RN@03=2}G<)60X?Kt{n#p5v@b zT7u1mhuL7Pg(@z47Ohrl@JYC>!3=8vtFXb|+IY2=3#(d%i{(_s`jOv4SI#18$%O`# z1qPbn-eGIxt2Fw&+iSn=6Wn-Jr#Q_hxFUk6o0}FXyBYBAFwg>vZ=%u{+Z{Lc8XMG) zPj1AAe=ziM02-(Pw>!i%(6Ly(zdn zAUQL&u>Qr$1QF%LNY+~f{idcpjo3|&;IqTa^SGZ$$*_?*OfU}*t+&@h4vqsC=kl<2 z-!^fBDj+g7tJhU!cKl~Wu&|gn*Qvp|A!UcWBCRxE)GPq3LH%@NAy51sfMB~{idr+o zm|~fO9Pg)$h4%)ENXQ_JAP-?+nZ%i;rB zy96iVgsQSbOj}#4=B9?*nMw zi|_NOY&x=H?kj_cumO+Ia&~evFkKs6#+pYh5r#F&0p}zGgDyf6!vb*(5JALZhA16^ z34j&V)%RdxI;BUjBfmM{(=;sdT}8xSfdFmTnyY5)&m4nBw=kE3I1=0LiFP?UI>PgO zEYYrh{+iVNqshbvB_!IU=F4^s)X5&hT zdPyI=-pllowzkTamis@y$3;_#2AJ1p@i>~KDN|S1zpie&v<(e`gc1sC^iKtH-GROb zR0fKaH}_vxx-!H3#)2#i2r)SEQZbY00Qm-k&OYQqe+HFx2e@(os;UF5i(ZverP5U1 zFgU#C`_0oHL<)n$gSgKB@~isE?_SzB=?)wH)x}}0Uqk&2keLOpvSwLV1*&b2cl#;c zM`tW}r@fUSRXZeJPtPnn1Sdc0hldmobX^%gKgAuk%afh`!`9cZj=wfgrCjW+ zhX!!VMQ%d0e($X@h5X*60xz)5 zl_xRbxjTwRT>40wRJobbUd3Xf#q!-s^D{rS?m@fF-UZ-XT(pGRt2+bI~>0N2ZkZjC(ZKwk{XjFWp+ z#9z`Xf46wiPgq;*ZFGf;DR;s9lWcibk3YVq%UrB#CYLl1ALtoa(NzTYb!0D%o?=!I zN4{WWY_Qw?!ey@h5qg(nW>c{ZV`VgaB~R9iwT$1}ds$B}eET*`i^CO*)Jga zyTA88A9eG6E74lNV>prk`Ag8w8{#mfpy z6AdLcS9RGC!=+JAMF*3{%#SFPltv?&;T2|vP#he;ngw2aR#wg)wmJ%GN{^Ny5lE8U zooi%9IPY{Fn@Xob#FrLO99HWg@vM$Rb_;7W9Cg(=$4mEjCthCqu5Mfbk1@3YN>Ny& zVsK7xVEz+X_Tf+qWt3u1xZ|^UX*km>Urai z6QG+ft?&M$j*a^Rv=to=6}jHPxC-yZ-Kxcga`gIoIrVOW35_$0<C<7;1+#JM2I*DT7YjtxiDt7x;UNs4z=x3zr@gmIlR;_=@i;8Jlv{7BRq4> z=f?{l&$dB?H+aF%|f$}q;+0@Jkq;L+&xgS~I%l)Fjc+czq?iGPBZNTD^+ zrL@&p6+dkRyS6HyX7bdn`~}qDrl$XIK&^ikU+{jqNCOjL#nX$|yukrdwf1};76#_w z?(}Wu)ntJRV7LP}zhCUngRI3n2Aqa09!QInF&GCM=N-bm+@p7|msM2)22+fxC^n^x8`{V0$4viyx#WTOw z97Nn*iZ@6*)2*WRH?;Vh^xFWGGBh;wWcF;kTlvI_fJyGD5l6tPHz>d+IS;@FYD{7D zk3oniX~gFKC%`^%`i0n91n_=5*%k*Ps$}3jrMLRjghTv!AVJ1+oC@DO*N_}teC8L= zwwX9$_h&oZFW#T;wlc?4juxpqgotKj_W9+Y_(?hHFBZ48wZe|+{-jHJ?Ybf>EzRqG zMlYi6pn)2-(BehnM}1`p=85P(xm%`+fc0e=>T=?(NVE4n|J=$cm+aGtnXtkB2dY1n z)2CXlWq-d@otBgu_b}fmZ1aLmDDn(e-G)GB7LzV&(f5boD6zak&hNAZ;=Q72!CBh< zXvwb?q@t|$iWLVb9Cgmr*pM7#emyD=$N9USpggB+4cz{;y;vc$i?^p2v~yJNceY4$ zq1~19Il7_OZB5Z*#Tvzo^{xO&f~Ayga_GkDxUW_?zGJ z${xH60v4Ss5F-n6N|6PhEhN5?mj}UU7(^(Gr21UT{m37_0fRR&5s}UBy3ed2@@wfk z_e@sQm1fe<+nb9&4Ql8Ru^?C&nuT{$i$1LrnbDY)gl;z18_6#H?`log2P!=-XC5DV ziFr)ZJv-|E_;M1T;XG*Ugtgc-O^ALbTgV+9u?v45xln)#$px1e6dc^5qCJRlHv=R? z2f$FZnc}*HEDZqG6!p zXMozp{}ni|!@LMQBzU7+XJDTg7A@%}1QDe`;#5FxNq9mtpM31_1BStGl~9k%5!kmS znw&W9mfk`JbwJ<}sL>RXIKxDOz!!?cwk3w25{*}1{KRRh|M=0m{%Xe^6F7 zK^9hVEW&E}IcabIyUM)J)(wQW6Vdma!SaV~MyT-R6=p?8W5H<-v%!|w;t(&GOPl3@ zy1hhEVwj?5iqA8(RaNomho5HG({`a#gn-H`fS(dVDFy6y@aa7ou9?E@l69r|!KI*xc46*I!2XS$2fIG{8!D)cBwmpsF^dpw3(*qgaGY}S z4j$H$Wg+I|CgjObzuYBC1S^8G#b7gA0Y7fiLaH9Hv9TdeCLB=v=8oIm@e6&P?%!Lv z_8KY&-908_3_zBwrBnUs8jz{Xx@=2k9{RnZ9zSNm!JXB0gVRz_cfqh@%_bl*WF2(W-cj?#JQwa!=@c6t) z=oj@z>IC@UqChLiJv9^06N?kRJL(k6g0nnd2<}(&eStqWrRl6hyuZoQJFTI%j*g{I z{Oi>o{usW^P!XW=W+{Bv&VEep|m*zMJ5R7~V`yCR0P04(C9(T9hi4sS_; zwh$Ojzjw^`DHeXN%eTnSe$%4hwg-e=9C4i^AeQ6S}k$@*L48_{bT-E>_VO zBz_;1U`c0?rkmQ=f=!2ML3mwBwSzSflQOUdhbT-p6XxqF5*9`v?4ukQP|<>~8RY7C z?W6C>c)cs9laJFVd5eAX8iAAe#yDf_Dh)M&`xw%v-#{EEviLSjaj0=OJYlqb{dC+% z^TO&|TpNR?BVhPWh-(_FT*4X}LeMG9&p;0YPi><;S(^-L_IPrQ31Y$zPVeGSy8N<*HBvnG!mIfo9!L0_s>FRLb z_8yC(islA;(d+tzX5kk?OFO*AFrxCJWY@f+9_v$D1GC`H(eZbm$A>HAXoQr0NtqhQ$gLt)uHzun1X?wJjP4>r(Kn`=N3JcqBv6Aw_RA8Zvm{@ zit*M9P4yD8u=YB@ z4n4*Ki@2#%v>)lyD$xkloqisqPb%A-&pmdvPVh$?%)Xm zuiTNFEk|950#HI!b+SjJV?Jk$MT9l=B8Qx_z%IK;^;kLZykua(*6oZORT-Y8aIA`uas4?LGlz~qpbh(Xy@@qgECoc~R zdCE&oy>=%2Byod5S04h3&=V7AXkD7oAJ}*bm~W(F0{@r{d=vYO0eADbpNi;-CwbdT z_k!wd0eNl99|=Vk+m)~Fq?S6LQWIlMQdA6D5_?jmfB&X<9&YX>KTo5DZ$_6GL`?KUsGZwFP-CPektm0UIo`cX^u>VR*# zSr}90%NTbuTD0+fNgO{5Q9LBuKW-NZ3By0&VW^)O1Bo)SJ9fy0BVQqt&UbXugz>uX z08i~@u?_Qy=SKv`_0LgCOTgo$fV}gAwe_x|#RU4Z_$|y!%kQh~L?h{Wf!(OA4)cOUjLR08Ey+l_ z$we&Jt=s4mGP;L5BqMks7Sd^Kc5MEzius&X_N35X$F^KIv!hW@rJBfIkSB zzogY8un|V`-@ot|b*1(d65tHg&{xF?aLgTUjsNlLz0zJQhid$$=4s7-bkkXE87Z+z zM5hObJw0B5?AM8voGlrbGBH(g-M6rRhVBKbI3yIrx?J{R!dZ&@`Rc}@(2hPs{v zvVarPkdz(+%fxJ-p!OyX%jMW>ZQieDX$~yIx@q`3=Oc`G-){Rp;R!Ld z78YCzmVNH9LU(+{*P?Fn+4wz1KfTlpDd)z?m*tHD=c-cRCBDk-3DlPFvYFysN2{xGc)_9`sV>RigDuhEtV{HwvUms&Dl2 zst1TU?be;G;)91LXV>FElM8RnpM?vZJtuxQsz+yM?JyJ7`4^%wyISqM5Y1?y+gKRW zigOXybY;8Q)ai&-)K1FRw8}#o8c8b{t;;0Qd28Mqd$Z<*`ykdd$yKAi7%HSM$9)dv zOw*5UB`a$E^+d{MoA90C;-5O}{ny~3v5vflkUjlN@%p_V1-{X#ld5l^K2$-Vc;B0!dl=!z$$=BtJK z15!)INo!e-78-qdW;PdE8wy)E_{&c!-Fwi$ED$lyT33I~o-3Jo-1^txO|zWl6;;z^ zkdTLqt_2N}uW#Ps8)!N3X~98@wZTJQxQ#_Sy&Uw^tTnY>c9!Fa_fYX~=>D`=SnI7~ zLMpDVtJb+?eh@+&qPOeB9LK+-mz}zJ)~H>pqibL1BueuBG~KdOwxr2{B#3RkR@L>m z>apq~0FGE~14c5{d9vJm@J;Hu3he|wck=78cMo?eCGYb7S9^ce6jvK|?ZSbO&_M72 z!7WH|ZQR}6Ex5b8LvRQLcXxujySux)yRVu1dF%bYXJh??l}Z&GKvgqm&%RC>;}|x? zz6$%6%QIDmn9g5=M|*fXO>vj{9*W&hnafhE1HKAq_z%Hj6(VvE6qdes`>)r|o0U0e zWIec0%YeFbL}nFaObd|M=F7|a!sXoWi=pvkKSG7 zX8j1aEB3HT@Y$}YhBh}QLI-@RR~wy}L(^_4dcBIRZt9dbDPjQv7f4zYb@)JdYo~HM2$G8Dw97BnzL)oQ zhF3I}F3~YAF}GG`#?qvi|8do~&Ir08)~``OGWp6T%HBF>x0XNnF&+Om^5*O^O|Div zsHcBCGKyBO-dN2SRj?qPTdTyUTW{6)a$cuox`38B2`n|5UIvqrHRk=2rCuw4drV10 z;_=>^zabz6n>OtOv4jkDU(sG8Q>G5PkKUw9q|0*Hq9?>`n{6M4Gp4P4yTwJUehuTQ4g2iN<|?tF<3dxBI1 ze!d$90_X7D5ix5Gw#hwMT+u>dGZM5#9A^!sT6e~@B}c4(Rbc_oTP%^+Sa^6`04yY- zWM&#+pZ6%xW!YFn^4Jr(Y?EM-MK;6{(NX!CSu}+R{whP1V*UO>S5J>fxK_1<)tSik zzgrI(?6ccOL-MXw?6EU3Nq-NqZrSw~~rBp1?PJCvx`V zqD6T1ZX*^W95A!7LCX_HrBl)2!CefI*Bva^IJO#<%z{N;+1#(v6Wt16V8B2zi=oa{F<3+l_g9w;dA5C;pxlb2S3^;nTIODL} zVjZ@65}#cGVFUv&pU23mjm8toL2rQu_H z)5G~;=1kyVAB(5mve$GmG7CQTzzAiUufEbtJ_TYhL4fmvdsZ2Rvsng@Ec!sHZ;KW+ zWyaNIjuf$_1W0Zm!N9fX)d*HXLI{o70e17 z?!2}o8%C%?2#%{pYvQ$i zAlLrssJ+br&&Xc9({s$j10%OK&RRHSlLZP`P!)$Ls4F-v#%4mUAkuaxdGL*@cGQSm zggC|WkGTXJIut*Wuk5TZDFYIoKnka#Xo}f0)ijU*+C3F3$UjKG_pAIWdN!M z2q@|3`=lQTjC^nn5jod&^%^{%oyLMTsACD?fWyRu_(O0yv;LDmJY_GZ+aGl%t~gTv z^T;tnt6~kqGnMSd7{vS0&MZ`^{C>%NqJ{yGNtXv5z1(QxW=2?MUFUh(phNv%yq6Of^%xy1$$>6u7LgH(%d0IoC5R&Zx7S9>U4 z*V^@yyaI5*dx(6SM*cCfAWA~%6r@;L?Gk*{0F)++Dm-?WPQ7W*uf z`qN$c@;67r@-cMkcXpC@S=MH6`@q!APN!yHe$--dOQ>o!i<5j_xr+ zu?&7>fVb|;o;0G2iMH9=4CY7~byjPzY0J+fnLr9bz-1D$ne-i-|Fo462Io75B9e_( zZu5P0GmYw=D&{xpzlw|eFO+&PsxK2^#vJKs>g8>{yHkEgmW&dUsbrJ9)VnGU`}a}J zl7%Lc0`xI*4d%PEaxLoyyaXY(Wze2WHyp?pLAnzb(p2P$gZoXOnd=jRB}1Cc3rXyD z*>IyDjcGn!uIteZs;w;=RXp_Q9*4h3-&am3cE%Va7>6-RDnT=luakF<%M&oJ-x;E; z*kPj3L^8d<%~b>*3&2LAjJxoNKXKi7I#7=+L`AarTv{8+SD)jpR=`3N~`qkWxfMsH{>+f8ST}3WXdu zhXA6)IGvu6C#97)cnQeUc*MpuuL<<70?ZVDdF!fW7FL9D3dcFC^(b{d`6*q`9a)1d z@QSPTtIFA{72if7jg|GYh%KVl7^Z?!*`_ICmO? zdX4-apa2}mhqIp}PwUax9={O2are|26v8P>A`sfQ9g_ziU=7Uv4HVshEtf6TB>xJH zdq96oWE{fG9m0tn(3xT4;Kfg~LB<*szb){dwq7QuduO0y5K?NXw z8gIQY_|E^GlTYmE!H;(W+2j&^fA}=6?!S&MfCREDxa+F!vxz+acSxvGhvV>nKeFE` zrv2}Q{i`aFxWAkKYj*wMA?S&|)Nv4PBmbXo{LdGV8I+$iWLdN57yc1JD3kye66>Jv z<_y+0@g*QgH9~^*&eG@@yL!-opDkS2*C!0$OyUViYXBecmX>?o`pN$(?Yue~uSJ-5 zE_Z%HOn|S07Bt{IK}(08Ds9mDHPt;$hY<}e@`Yc!obq4i@~;p5?+emz5b)FtE|dDB z|F73GKnvw37ud}~1q6h(8;_^MqEYnp^swG%CL~a*l$%UukL~_;7VfaBU$&^DUaqrR zYGONGS=`CZwZ|AcUv1>z(!yP6O-SA?Q4W<&)>hj+Qp$l9nhOsL3ki)3p;##r5Yg*S z9yQuu`+klAWi+0?TB+X;pgZyr|h4#BZIn(m6 z6$bc406IOBaSD^^)gW0$9JR(Bpkc`oiFyOL_JG(1Frv7wI?mg&S}gnpiUGMRfXS;2 zsEQ^s`Akhs0o{ORqg`G*9sHY@LsN_Ear`43#&;4D+=beD!Mv(GEJYyN7*(MyH&i)r zS=kU>X^3UV8izzYjm zD-O4mLDfIJov?8H4~0FR_s4M{T2D=pK;W@dt-8GFhys`7{Ehp5#eUuMJ`Ks_d;;!S z`NxkRoF7j)D#rSg--(d3E?7d`xcNv!Zw1b#yGogkh-+9eVSO$FfbK%LllTDRO_8A~dq4iGA~ znt&{&3lo>u+j-q7B$J1J09Xd>IQyOPHg5pP{9lR(AQ2Hb9+vVX5`aC>)E&??c^?%O zz=GUAry}yCUrqZxmY}>d)mkSjGZgRKDwV9si4+VhdPBf+m@qjqFx)a0C$wu1cVg-; zn6sQIA6>lTRi|<|RM{9XbsfHQPm#3@GPS7zf<83>a-zJ1ZQU{nY|E_M9`g+be{(-s zWVueL#~8Ou?^pn`pTny<+#fKMUjCEos7a)q|bGoj2%qtZ)475=;AN{3VH`p*Qy z>g-zs7DKF(?}ycg69?NR?s4TP%QZqJ3^5o@>+Vq(rnn^+&+aia)>Vspi>Dw-glbO{ zut>6G!A*oftXN9TwNCTvuSoyZav1TGyV}U^Uk?uzS(7j@BHLR-$)hbkf2vjAu-9Z< zaG@V5K@CC#Hy|dzR$xt8ke~m166OZjQvfQQr)1_@ok$?SuJwA1!(e0R8d%CO8Y7$} zbpv5ZEw6XWpp-$3ngFZ5mQU9@xQyinc~$g|6o1S$DqPRoyr3cUwBFpLl;QJ&B=Of9 zI5sDQmpizP5z`K4vZix9yYASA!5~>)KtBUxNN~goL#5hUcU@Sm?6w+S$TuTfD0=j(09NB#UIWKFzZ0gt(R-6;=0Q=I&iC zfUG+OiJDT!*~Dk~A9k5!=Fz4!P)X7&HRg+%ZD^qh>2!NaiF%n8={m0%l*%XZ8dhp` zUxc?vD+K|00~Q(@GqBfP+tmgpQp&UyuC%Q;D4Lj)%p4TXzz30j6j#tze~NWm$nU8L zmbHU?;vWeXQFu-8gL z9Gx`rw5598iE9R(X*)6A1;V3e&Ej6$&D622ZS)dT3G*tU(O5M3^YImud060B<_y`X zlVLS({j#xo8PD=5G6LzUPGU`aX1tdlrY{ol1kcNb006^=<3O2t1Z-H|J24_>4ciEX zFin``b{;R6{TD`cle!Btuto9X_x7PurONZ}A0E5{Ga6HY+8-**T zi?N;nk(JN@()SOEh1ZMo68*2j6>@d7$eE%WIbJr;eXFT}H+$cq-XH zd2STVr_F5NCzxJWEra`0Y*Z`FkkYNJ`J0Q>t_~RK=s{uC!q;THKd-;rxyzyiG6`f3 z=Cu31qGNu6jp3!$Y(S!D+4tJXF}l=BE$w{1?}-PtTZhdvpkFsBsrL@Z0oAam-6T#C6BBS~m$FF5ekrXCRN79 zP1y~mOmW?FPbJbB8sBTImw29cGTqM)lQRTyiO+@uKF0T z3ZJR(tt1sZ2`2inYvPbe7*WTRJgsWN*Yh~`&FbVQIP2`!c7hO`^@)SP>~hNd-<7W~ zVQ5%dkG^xw@z!Q@O}*wh{ajNV2kB*adIMllKr$kWPNCDr8D9!;H${4X)y45#bbJ&h z)A4#F!J2BBxr|h)x6;C!e)`cp8x(W6-p(UF)pDB!6Ct{Mz{j8)@}b$_HJDpphB8<9 z)uqXHnIMh$b6Cz^`eMS%mBuUgv)i1zb$CCVb~Hk5#}_!;kY2lbc@1=0Wut2M+DZ@T zkEE8>d5fo}=)~2&yf7tyP)Ni(V55D0YTp9)&ma5E(iQU9eU*Gq zuIr42R7p`73vzcOCNc?jm-9{+t4TTC0&nm6_wY7^;LdYYjWlk!uFWqj6DzsQ$Ib5G zn1#wJc$#cyNI9e4ZOH^$F{@_gqxm9*{%=`w-#C+wmunZ@Ofce@TpYlhP|$KWYo?UP zab-;&hZT6>!Dq9zvcZvUgK;S5NxH+4f>enMwXtP_;+L_&q-(x5QbxpuFqF1B3-Zd& zP;V64lwC&{mLYKy`=)1vo z?E;{D{aXacrc(pedE;yq*}Yy|b|yTZwe9q0fd%}-!-IK6E7+baN#f>H_W~>0NI22; zKwb|uWY%|ICk}|#Xf#vNTg_s^YdCA>19VGuYpxp9R!~BSyRFOKz~GJjf}du5wgeir zqN)bjzDx#N>$A<%;+56v9P0&ljk;?vY+4>niJjbSL~UL0XKa0*Nj~ z<45h7E@`4l!p$T5uk6hy^kMoiLprQwu*O?3wg0yb$FKXM|M+M%BUWHV){+p?@82`G zC-bGS7Z_94#-P|sNacaX2!sl$g=F<-nXS%b+HATru1TQAhoP-t6m>uU%+}FGu|%eT zL26sRO|8*;(9Kbq|Hkp%` zmt>`Lvm;$b!&6^-93>$*`U1&|NB#-n03VZVP}}XC2AOo~!JXNG^-tcwEI2PaWd0n) zH27twW&f{1B#>_p>H(y54RLRPrNP!0Be{ECc(q9@g*w>jDU54c7Z`vc#{`b0iF3F= zd`}`$0>Yh$!qC>5f8M?Y-0p<+#YYv%UL7Rw%&e;SsCbjGI^->vOFx=2GpYk{Fh{l* z=5;`jo?RNn9^B3z=fw~5ORV(D06TgNJw%qHMn)t{1OcvYQF zlrQ;P-)_?#Av82j!rk{c&91bem&^X<%#epKIe#@|CJ{};jy#bsc$fMb-{N<$`X*^} z09y~%6~_0z3gLN%=hfjflQV1vYHUXmFgi-fU?&OC0!DUN|4P7iVxeYBaN#1UN3$aY?cD#CR4vc#`cozWS%JR9#rpw6CW-*L+L)G7a z2zPuJ7C?u&?EcBT(8a-juarNw1baW#wmcg3215z0HORF-nFaA;Q3nYGGu@>o7XI29 z?sC1Ba-6h|hU3@9V`pW;JDUR@VHRLd1+AVdikv=vzv_(7V`i|mwH0l}s^N0X!z3NTijA>Jfj z3dtTTcNta^calFFy^+6twNw#?BC=!CV@J<2|`MP7}5=P}yaQHW~K5Sd=snV`4y4DL%8 zg9gaPskiEtjq5ssGll~oDr8r^fF`+8WITbU`kevnUHFk3 z5a5u^e9#Q#9DR*SRN+!D6PU!iD>g01?o1KWYBD)V>gmE{R~&v|IeeNhx>k4;%2Y$_ zq25!Ah^29<9@f9hiQ;D1lV|}G%LEM_0O{UiuKz9~FyvF(9Pn`8=ofv?9DaD`9}o%L z*)bqelLSE6(%mYb$n;L?w%03xiPf*COok*5m=F|BpEj_O$Diet-BFV;Wy&xO{c^{h z^V27^X)#si%F7uol>qj(jDrerqz{7FLJ-A6Q$@)09^d4sLNZKb$s zsHZF(ok?f}92;bHgSS9o-H*740vh_jf`?U+h;K9kPK@*`vJY2=#fNX~OhLtP(rv4vh zrqdj3k3UY-J7B(n0uX&k=Li^ha-D%88EM5jdk-QVN{s}vDDja-n+F>*N61^m&!~%l zP7in22}a!SyGhV6LM8V1w;*%I3|K)J?h}f27c?%i@dw9evM_lgl5+3ElvSQLv|r|v z1>gz>p+tS3r}2D^2O6HdAXqyvGh1&3)h&Pp4JXahj{R`;*T6vKV2*h9XN7=D(}r_0 z9c9xP4qDZDeDzDfHmrI@UnFBb^>;0TG<}UCq*M?R-R^chnbv@W_xQsK!E38%o>3{u zpBnA!0c4+^miSUhgUGh~2%LbwU-7)4?OSk&j8n;2uYb1rc-T9>8wvz{;rom71x3&x zRfh8tiYR@Akw5NYN&>Z1xxI+nxGg|pP-&@Kdo-hhhCATv)!YXdro@C%@VdDz45E@1 z$rBrmLNu^4w*FU+M2tjb`hTF6c)g|CkWKis<`9y8QC_SY_Wd(v%=9Iv@+COMhPuIUn2A9&Fok zJ5-2$>CS5+`HFO&Yh!|P7MtoG>tRCpL4aazJBicr(L+N=sU>{LTt#5?h_NJjLImEj z!pRB-WJNBZ^2>hl@a~Ks$YV=!IeQEgzW(a?JQVuQpgrkY-P;UVX$rVYPgYG{XO95$ zTuUh9@d#70ZQFw$OhBz`{I4FBy3(aODP(Me2b~-Q-j$d!`;PuXv3e|QmPY}8~PSc0p#wxP6;nd@OzVzS^Oj!Cb zCzR=~dzf5jzgOQd+z?!C9D|e7op8Mj(5dA=LKp82qY2~0b?2JTBg`OC#WR9a5}uQg zOgvQ^dI?_F-(T@R=LCGYu`MOv$oiCfj*q2P8A^vkrk!#f6lAOXe@+?McxXJAjt1j{ z#HvfF6Dh^yXaX!b70i7k!9g^tJS!k4qD)`)i;Sro}mIqH9K7o0t5*+@xEf6YNjit zi_mKzwdi%?+^_@l@2>sNUQf1Z0XR@9)F6(Fk3bb+lDc@QDtysdf)V^n+QwHTgl1uD zaf}%ElU$FznwIoXH{!q3o)cEf>NBb4L3CCY1oET|;U?qJ-zQ+y0k5dCI4=Od#EMOk zRJxKEIP}1UW1L>(?9PgpV5W+@**!qsW1%xH5cybS6!uY{PkZyGbsO-MYEYqrg>P=nJ`<~j2UR{_N#XUY~h){)=oDG#X^a^_O1KYlPgDX#b*FdW19xpJ88(b7MMv%%x{UrE zMz^GMX|lR=7YoJ= z5VbuObJ*|fbn387DfQkVFp_R#;Tb35+OMQkEpMa06%ANZu-~}pxUexPvQ8Xayg;7# zDi+E2HgaotjWv7yDxKJ}Dc^8hlhwUyf;J@wJwW@4Cri~`mk?mJYI8E$TIsvgZQAxb z%c^Yh=5%-4HhufF<@zy+=(iC7C*pst{dd_!NyPB9!_2ft=wpABS=xS{%4%4V zy&+xY>~=g}u0`}QZo;eqO<&_56$0#}qG9xbcDB^XXqxtWBf6GI5`nldxp*%FRx1sa z!1~1PC%@vk!>CLA4M3qU`r@8XnSM&HL}W2mtnq_Z78HQyi_p%o&!2V+)7P66351v4 zzud6!HNwY*DpG6Q-WlzdmkA8UJ9}~eamd{JcuG-cZlZWWW4|{MqGkU^un;;A_4LrU zIx^W@^1L>b#QwaNazg;};ax1Q48A9MrU($m-2O|7GA(ZqN1>tioTAi)c*7H>G`oap zt5j9IS8?SzI5Me|#-?E0elv(&O5;iAHvO7_8Qd9dE0MOnMX_-DhQXgxXZ!G%=;>$a zx>a%l($=~^n;!M4mOD8!JiVD8`>}2r=SlE9#dlI8CegSqdyFF|CXwh79nIVAsEkqA zRcBTlT)tZSdTq*G4riiAI$i<+Xr3=dC`Jk!x}h7f^EzwJT6nLo&o^8#iJQL{!_-9n zP|3F_lcY}PopHB#4t43j=etab@us9MHf6AVzCp3#5IKZj_I5g+h>8=*)%cY=!2wlM zK?k+eU&GGFwZybNy)QmHo!jQkF-$X0tuifA(yL>n*4a)rM`Q0Q={nCz$IQYf`zM@;Hen2vh{AbrSdnePM4=Gi%(l}rg05ym}Ml6x7;Cg;&L#RbXxo-bF4B= zpZ$?iMs7cHWD&VbF5|A-52N1)i7mkU)K7;Doe$J5f|eg&9{_;YaiBrl(-Eb|g}y98 zo|9|kpzTljECK?gViXgmzKP22&Cf^g4XeyV^@eT6F0(>0z&$;P&kUa}a6ad13uFkP zQ7U~}rT(zl6W?mW(=3!DE2-G~&J^BSpcF%47*#H|#`un347{`K-1f6jHSWHa$-SLy z#&Q_Hf9~e4-QKAC0jF?}_hYreh+aXczSUJVk&}7za6f$#ZH&_b<@;=OY9*-{2z((i z)Xh@jo5kOsjYj66wu$Ps3pnY+wd-dP`Asr^sA)%}m#n>upxL(+Sv_jJUZfvQtF9`@ zIhN$7pXEk##m>$Wu{HlwIsO$0s<_jivCH~1o^8=QZqAeC)6FxG#zrjiC3 zbq*78JFH5loPT`gu#yS1+Vpw9<7j`KxRh%4Nb<81O!Rv5cw)PUYVtV#OwNS=rcY^S zNaLV)jkj$#@b?&@fi2(8)RFKt*YkaHR*cgSC<>Kfy$2;rc(Dg z4xeU?Tg<%tmm0-Nwgo7d8sCYdcsg-B4+N5%L_Wy*^-lGhML2k~C*++jnZnD?lIv(A zmzs7#1u`!5MKI#bW(9jJTZaBDDzxW(F2&+f&-(eY=598IGtW*>-`HYmFCfnTGu}mpp@4GwrDN4u;Wp zd1nw{tVUf|K;;1lyqjO^d{G99yOAPz-u$*90~O>r=nL zc9(hZH+5aI$W<5^0k727jdy^6nBk-r3&pQrllb@NU_gdCFsb-U>JRb$6R%s~-s!Pe zV|*JF9#Fc3~6TnxCbm(E4fW0lMahX%9D-y5Om{=P2xBJau zu~{Rx{ZXYgyRyHuy0gTj&qT18rLDME@Kb(!yrGw}%SN_hGXGV2q$$F&slopYD9Wx6 z54{#X49@Z***6Hj_tlbzNM}L=O$wHTb@l7NdarS-IROlUwpBY&1R}G{>7FsaqT{d+KyDPm} zf``!ILG*m>w8E;a2XJ}MTgCf(aN|EKs9CFaXVhj~x zoH2}lfJLB>VaTrDLg`?16OSvGYOZoOG$IAqKD+{hMqbm=U06+9j&@X;*w~D}YxBLp z%R{GkPUYUX1W@1RIvxH3eTqHf6jcgWGDn#ixioWN(Fy7a&-bEVO~A{wyaN%?RI2OL ztG{NBAsBl;=t_zCN0nPfB0kMxa4}w5357<@_e_1gJIb?aTXZyW!=0C}h)kN?>V<1D z!|D(g-6i<)*&SS-+iVH*G2^B${QEWsBq5crQ#xm-f(xI4OzJH>br3IcKp*Re2omvV zI6eH#`GNpZ>z;-!OO$n%v9th9Jf&c=49_93uGK1Gy(^Oo^hfDsXDZ8g+ZUz;D=d}U zc=L;aO_P!|jz&v-{8mb)++j^i_Nt+_+ttTjv!-I^<78uu+i{{$WlEL1CiY8y*XO^X1&7-VX;DEmyIpq4FFS+H2)nrC0@bF}2n?IZsK%*{Jx@J!rofKzgNU^^7uPol- zfYjyB1k!%6z!n2{u(|*dC6U#Zh&HB2b?#CK2nxw838)`{K_%r)3y~VoZCn4K^V!E> zYt*&^5%2BhcgVFFd>cuBxn6VK)^?qG_x{rG3_Hv z(Q3i;;BH*Qkw&4z3S2bucqh`lO)43=TohvQ&0C6=)O7|CLCfwO-s z6`g~}YV0Y;uVRR;OLTTtN-+Uv!WY_gGqo~n)iUFeJy&pwdn}qv)A@oNDz*1bj55Zl z5EJ`nMCIPFlDAj1uETMjdG2ptz1~~Z|MI>*l@#ZEf*BAUbF?wthw}xe$Q`x~8A-G( z)W2Xr@uT=6kxm4N2y2D-qynSi-gh?atrZ9ae76I_#NG4ucLdL@fHZ~g9sz$vjFYPm z7_$y#mj8+Kzn?Gc`Wxk=_P2p8dM*OQ-YM-R^mP=oY0p`=$(s~ucD}gW*({5J16AR( z?^iPUBX)HO-HoO{#xO!a!juO7VW}*gXc=!IwS5jfS+uGr4lpA7J~C$juGf&hWUWHL zys7dR*jEPv)uqhtkXgPtdCIRYiCmY-Wj*CpvuJ$9=YoG#y`-O-zBHTo;b>App`*l? z-zq+kj{TMG{#83DfV0NRi&qgi3=1_BD7PWg~lCXm^C*b)5>n=%7ts-ohi^98Moy<$sK% z>0e4G1sPsTz|PPL=Km<^LD#AXMSV_e$lSK^(j$a3@^W__^zd~xiI!S3yr5H!LI2wl zQ=Lf6rt*RI;H9sc(C zM+oR=e^q5rva;S7#2zA4H$p+`SD=n8BykU!<`bM~2Og7I)!s>-*uB#9;W7 zI$h_}ep?@i%lc10bBqaso6!NFJ}KsznLE!mc^?zP;G8GdI*i&S{2PXm$?W=cV+#DC z9FWU4TCs0hV8WRcGIOInmi5Ra*2jRxf}`}ZOC4D$Y#9&6z9`Ihil>#us9`|3FLN>C z#p%m>yw2vv-SzMgRXUdiEOkp}uZ15qW3#qA4yI)aGRM=P1z`4o4K**p1Evt(O1^Bn zAh1iS?!+}Z=}Ipek!~7GAG8OnoUo;sf13TVgKBT&#o_uAP)NdY=TW&LLOThOjFqEj z0ZQ-ZzU3GFYuvuE;UtwkkX3C=gIsPtMSBovPG&RF$XHOzQ_I|RuH=O(1dTuyywNxr z4+Vw8R<+*|!SD7NB3NpZqWKj)w&*Wy_CX7T0tV-@g^B>?br9G7Xv+?TAMZDm14u6g z_xmH}`;tZF;n<0TTVkWnh!NZk9;n-FFT3Zh>?@HWc1cNlmFFWn=icJqD^5IrQ9mpp1^=W1oQRPlP9VmX*-`owx6y$pj! z&m7-uV(CGUUV;Q)lvrPWMNTStSgfAowTzBJF$IWV78i{px&I6gv4-hsOJZx@u}#dtJj2k z+h>hIGu1|F9VRZjzJ=d0hyQ7T#HgnN_6OU?M^?5DA6Y$%4uPAUZ%agtN=uQ z+uMMoe9dutU-|NK$Sgv>IIfqW!_2dHyw!a|i;nhNU*8wOz;6HLZzoCtyzUOcF0y(B zCY7q3#kdB4T)GhO+4OGn9XWpg)<04l!6uE^!Cv#=wAF|y>`G&Iz~V4tB8nyW*f+fi zbz05pFrQm65p2PAKKF&mZFi_grY-qT-0$B`hRrvTT-U*3=Ms^s%}hpn3k?ekYxj)v!4tfE1!|5Hhk$rLR?{r#8Ec_|324M+vpFy#C z<(E3uD=AHs5xAgA+loNm=c*0=+%lvCDr+bnBPc3KadEf(H0QzqCJY`twK;@9R89l$ zw_WdZ?;Bk^dHJHxv*U5$6pOrJFeey;OuzTGv7HNWIlZiweP54blj|(Jjw4v^J$Kr( zhEpOmusFxJE;M3459r2U+K$@f=%lf_YF&-3ayX|0ay>ly!`k7E(Lf9tT6OYPsp0tU z&xripJ;%>mI(CP|>DuE&&p{*f3tkv50~%%H3#Z=8ryL`DH7&YRg=PyD$d{LbAIOC* zzLq$8wDH{eyLLM8772kI?sUqK*eIcvUL&>!RrAFE05Z|@#p>XOpw7EE2Og6s3EVB% z<-IbEJz7nhBa5RmT#oTP9Uu9EgvgK|I#o7-UsQy54y*od(_)e{cxMf$zxnLxr+D;C z*1!eJoc>>-@_MdU4mQUs(vdZm^n|G7^OM5 zo++uEKE)b#EVzBW-G^Pg@%7lL6XZKa9nPnr1FA{UU{-3q1~D!0z=YrI$s<3R zo7?RsMb6+mAekR3E|enKl8#27R8DXn9iJGn<_AVSpv@#h9XA7B_Z?JgbfJG*>30>V z-?6bFgH$JrXc%l`JWvKwd-!*qE{0meU9?T;ovf{yIH=)C4OxVv>7BDXNDRS+d>*pp zVN}p)cyOe{hl4PA0ldv>p8yDIKGO*^%gTsms2>`HT5PAAv4Q5NPY@5Xt!}scDtDT) zX9^P|3h0s(E1|sb-@m~yxqJI2m-oNIy5D^(hLn?=Gw^K~Wf0>dFo*h!^)HAP%}`5d z3-Buo#%h{5)Xdf#CVwtLo+HDBR@gdDgj<}NvDGWHXcGGDkyf* zHH_DQVh7^??ZT)7eT7|48tnNWugL#(V)%X_h<<0EfJlsU`0>AffdB*r3lYN$4Xbvj z^8d3-{EvSP2@*HHUWt_CfBgayIaI*^_v8OBSLO|0KBE~{&DQPb2jHKWkhEYq|4+aF E2gm6?^8f$< literal 169527 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. These methods are discussed in :ref:`Ebert (2008) `. The Grid-Stat tool accumulates statistics over the entire domain. Users wishing to accumulate statistics over a time, height, or other series separately for each grid location should use the Series-Analysis tool. Series-Analysis can read any gridded matched pair data produced by the other MET tools and accumulate them, keeping each spatial location separate. Maps of these statistics can be useful for diagnosing spatial differences in forecast quality. -Ensemble-Stat is a hybrid tool that provides based post-processing capability of the ensemble members as well as computing measures of ensemble characteristics. Basic post-processing capability includes computing the ensemble mean, min, max, standard deviation, and ensemble relative frequency or probability. These fields can then be used in other MET tools for additional evaluation. Note however that the Gen-Ens-Prod tool also performs ensemble product generation, and this functionality will be removed from Ensemble-Stat in future versions. The ensemble characteristics include computation of rank and probability integral transform (PIT) histograms, the end-points for receiver operator curve (ROC) and reliability diagrams, and ranked probabilities scores (RPS) and the continuous version (CRPS). +Ensemble-Stat compares ensemble member data to gridded analyses and/or point observations and computes measures of ensemble characteristics. The ensemble characteristics include ensemble mean and spread information, computation of rank and probability integral transform (PIT) histograms, the points for the receiver operator characteristic (ROC) and reliability diagrams, and ranked probabilities scores (RPS) and the continuous version (CRPS). When categorical thresholds are specified, Ensemble-Stat derives ensemble relative frequencies and verifies them as probability forecasts against the gridded analyses and/or point observations provided. Note that the ensemble post-processing provided in prior versions of this tool has moved to Gen-Ens-Prod. The MODE (Method for Object-based Diagnostic Evaluation) tool also uses gridded fields as observational datasets. However, unlike the Grid-Stat tool, which applies traditional forecast verification techniques, MODE applies the object-based spatial verification technique described in :ref:`Davis et al. (2006a,b) ` and :ref:`Brown et al. (2007) `. This technique was developed in response to the "double penalty" problem in forecast verification. A forecast missed by even a small distance is effectively penalized twice by standard categorical verification scores: once for missing the event and a second time for producing a false alarm of the event elsewhere. As an alternative, MODE defines objects in both the forecast and observation fields. The objects in the forecast and observation fields are then matched and compared to one another. Applying this technique also provides diagnostic verification information that is difficult or even impossible to obtain using traditional verification measures. For example, the MODE tool can provide information about errors in location, size, and intensity. @@ -62,11 +62,11 @@ The Grid-Diag tool produces multivariate probability density functions (PDFs) th The Wavelet-Stat tool decomposes two-dimensional forecasts and observations according to the Intensity-Scale verification technique described by :ref:`Casati et al. (2004) `. There are many types of spatial verification approaches and the Intensity-Scale technique belongs to the scale-decomposition (or scale-separation) verification approaches. The spatial scale components are obtained by applying a wavelet transformation to the forecast and observation fields. The resulting scale-decomposition measures error, bias and skill of the forecast on each spatial scale. Information is provided on the scale dependency of the error and skill, on the no-skill to skill transition scale, and on the ability of the forecast to reproduce the observed scale structure. The Wavelet-Stat tool is primarily used for precipitation fields. However, the tool can be applied to other variables, such as cloud fraction. -Results from the statistical analysis stage are output in ASCII, NetCDF and Postscript formats. The Point-Stat, Grid-Stat, and Wavelet-Stat tools create STAT (statistics) files which are tabular ASCII files ending with a ".stat" suffix. In earlier versions of MET, this output format was called VSDB (Verification System DataBase). VSDB, which was developed by the NCEP, is a specialized ASCII format that can be easily read and used by graphics and analysis software. The STAT output format of the Point-Stat, Grid-Stat, and Wavelet-Stat tools is an extension of the VSDB format developed by NCEP. Additional columns of data and output line types have been added to store statistics not produced by the NCEP version. +Results from the statistical analysis stage are output in ASCII, NetCDF and Postscript formats. The Point-Stat, Grid-Stat, Wavelet-Stat, and Ensemble-Stat tools create STAT (statistics) files which are tabular ASCII files ending with a ".stat" suffix. The STAT output files consist of multiple line types, each containing a different set of related statistics. The columns preceeding the LINE_TYPE column are common to all lines. However, the number and contents of the remaining columns vary by line type. -The Stat-Analysis and MODE-Analysis tools aggregate the output statistics from the previous steps across multiple cases. The Stat-Analysis tool reads the STAT output of Point-Stat, Grid-Stat, Ensemble-Stat, and Wavelet-Stat and can be used to filter the STAT data and produce aggregated continuous and categorical statistics. The MODE-Analysis tool reads the ASCII output of the MODE tool and can be used to produce summary information about object location, size, and intensity (as well as other object characteristics) across one or more cases. +The Stat-Analysis and MODE-Analysis tools aggregate the output statistics from the previous steps across multiple cases. The Stat-Analysis tool reads the STAT output of Point-Stat, Grid-Stat, Ensemble-Stat, and Wavelet-Stat and can be used to filter the STAT data and produce aggregated continuous and categorical statistics. Stat-Analysis also reads matched pair data (i.e. MPR line type) via python embedding. The MODE-Analysis tool reads the ASCII output of the MODE tool and can be used to produce summary information about object location, size, and intensity (as well as other object characteristics) across one or more cases. -Tropical cyclone forecasts and observations are quite different than numerical model forecasts, and thus they have their own set of tools. The MET-TC package includes several modules: TC-Dland, TC-Pairs, TC-Stat, TC-Gen, TC-RMW, and RMW-Analysis. The TC-Dland module calculates the distance to land from all locations on a specified grid. This information can be used in later modules to eliminate tropical cyclones that are over land from being included in the statistics. TC-Pairs matches up tropical cyclone forecasts and observations and writes all output to a file. In TC-Stat, these forecast / observation pairs are analyzed according to user preference to produce statistics. TC-Gen evaluates the performance of Tropical Cyclone genesis forecast using contingency table counts and statistics. TC-RMW performs a coordinate transformation for gridded model or analysis fields centered on the current storm location. RMW-Analysis filters and aggregates the output of TC-RMW across multiple cases. +Tropical cyclone forecasts and observations are quite different than numerical model forecasts, and thus they have their own set of tools. These consist of TC-Dland, TC-Pairs, TC-Stat, TC-Gen, TC-RMW, and RMW-Analysis. The TC-Dland module calculates the distance to land from all locations on a specified grid. This information can be used in later modules to eliminate tropical cyclones that are over land from being included in the statistics. TC-Pairs matches up tropical cyclone forecasts and observations and writes all output to a file. In TC-Stat, these forecast / observation pairs are analyzed according to user preference to produce statistics. TC-Gen evaluates the performance of Tropical Cyclone genesis forecast using contingency table counts and statistics. TC-RMW performs a coordinate transformation for gridded model or analysis fields centered on the current storm location. RMW-Analysis filters and aggregates the output of TC-RMW across multiple cases. The following sections of this MET User's Guide contain usage statements for each tool, which may be viewed if you type the name of the tool. Alternatively, the user can also type the name of the tool followed by **-help** to obtain the usage statement. Each tool also has a **-version** command line option associated with it so that the user can determine what version of the tool they are using. From 4be326350a594786a3cc60574e3eec5475d87e05 Mon Sep 17 00:00:00 2001 From: John Halley Gotway Date: Thu, 29 Dec 2022 11:19:43 -0700 Subject: [PATCH 05/30] Add in the MET-10.1.0 flowchart. --- docs/Flowchart/MET_flowchart.pptx | Bin 373080 -> 397326 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/docs/Flowchart/MET_flowchart.pptx b/docs/Flowchart/MET_flowchart.pptx index 892fcff3b5af06d196db3d1f24af60e062cc752f..a505eae61c9c177156fa348711b4ceedc294f3b9 100644 GIT binary patch delta 26235 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

_G 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 M2S;=bTAJbfA6Jl>fB*mh delta 5688 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 From 2943b152521381f2054cfef15f6d54fceb7a844b Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Mon, 9 Jan 2023 15:20:33 -0700 Subject: [PATCH 06/30] #2370 checking NaN and print out "NA" to avoid an Exception --- scripts/utility/print_pointnc2ascii.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/utility/print_pointnc2ascii.py b/scripts/utility/print_pointnc2ascii.py index 7586026ff8..88ad830eb8 100755 --- a/scripts/utility/print_pointnc2ascii.py +++ b/scripts/utility/print_pointnc2ascii.py @@ -84,7 +84,7 @@ def dump(self, out_handler, show_header=True, use_comma=False): obs_val = [ f'{i:.0f}' for i in self.obs_val ] else: obs_precision = self.get_precision(self.obs_val) - obs_val = [ 'NA' if np.ma.is_masked(i) else + obs_val = [ 'NA' if np.ma.is_masked(i) or np.isnan(i) else f'{i:.1f}' if abs((i*10)-int(i*10)) < 0.000001 else f'{i:.1f}' if abs((i*10)-int(i*10)) > 0.999998 else f'{i:.2f}' if abs((i*100)-int(i*100)) < 0.000001 else From aad4de3e881ab1980709077beeb7005ecb8e6c16 Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Mon, 9 Jan 2023 15:21:32 -0700 Subject: [PATCH 07/30] #2370 AOD 550 is interpolated only AOD 440 and 650 are not negative values --- src/tools/other/ascii2nc/aeronet_handler.cc | 30 ++++++++++++--------- 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/src/tools/other/ascii2nc/aeronet_handler.cc b/src/tools/other/ascii2nc/aeronet_handler.cc index 1d6b9dbd2d..18ef588f6c 100644 --- a/src/tools/other/ascii2nc/aeronet_handler.cc +++ b/src/tools/other/ascii2nc/aeronet_handler.cc @@ -29,6 +29,7 @@ using namespace std; #include "aeronet_handler.h" +static bool test_AOD_550 = false; static const char *AERONET_NA_STR = "N/A"; static const char *AERONET_V3_STR = "AERONET Version 3"; @@ -436,15 +437,17 @@ bool AeronetHandler::_readObservations(LineDataFile &ascii_file) var_name = AOD_NAME; double dheight = 550; double aod_at_550 = angstrom_power_interplation(aod_at_675,aod_at_440,675.,440.,dheight); - _addObservations(Observation(header_type, - (sid_idx<0 ? _stationId : data_line[sid_idx]), - valid_time, _stationLat, _stationLon, _stationAlt, - na_str, var_id, bad_data_double, dheight, - aod_at_550, - var_name)); - mlog << Debug(7) << method_name << " AOD at 550: " - << aod_at_550 << "\t440: " << aod_at_440 - << "\t675: " << aod_at_675 << "\n"; + if (!is_eq(aod_at_550, bad_data_double)) { + _addObservations(Observation(header_type, + (sid_idx<0 ? _stationId : data_line[sid_idx]), + valid_time, _stationLat, _stationLon, _stationAlt, + na_str, var_id, bad_data_double, dheight, + aod_at_550, + var_name)); + mlog << Debug(7) << method_name << " AOD at 550: " + << aod_at_550 << "\t440: " << aod_at_440 + << "\t675: " << aod_at_675 << "\n"; + } } } } // end while @@ -455,7 +458,7 @@ bool AeronetHandler::_readObservations(LineDataFile &ascii_file) << ascii_file.filename() << "\".\n\n"; } - if (format_version == 3) { + if (format_version == 3 && test_AOD_550) { double aod_at_675, aod_at_440; double aod_at_550_expected, aod_at_550; @@ -785,8 +788,11 @@ string AeronetHandler::make_var_name_from_header(string hdr_field) { double angstrom_power_interplation(double value_1, double value_2, double level_1, double level_2, double target_level) { - double angstrom_log = -log10(value_1/value_2)/log10(level_1/level_2); - double angstrom_value = value_2 * pow((target_level/level_2),-angstrom_log); + double angstrom_value = bad_data_double; + if ((value_1*value_2) >=0 && (level_1*level_2) >=0) { + double angstrom_log = -log10(value_1/value_2)/log10(level_1/level_2); + angstrom_value = value_2 * pow((target_level/level_2),-angstrom_log); + } return angstrom_value; } From 5530c86bbac6169c1aeb484162ca6eeeedf2daf3 Mon Sep 17 00:00:00 2001 From: johnhg Date: Sun, 15 Jan 2023 07:22:48 -0700 Subject: [PATCH 08/30] Per #2399 fix definitions of G172 and G220 based on comments in NOAA-EMC/NCEPLIBS-w3emc#157. (#2405) --- src/libcode/vx_grid/find_grid_by_name.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libcode/vx_grid/find_grid_by_name.h b/src/libcode/vx_grid/find_grid_by_name.h index 96be17247e..b2ecfa46fd 100644 --- a/src/libcode/vx_grid/find_grid_by_name.h +++ b/src/libcode/vx_grid/find_grid_by_name.h @@ -198,8 +198,8 @@ static const StereographicData ncep_st_grids [] = { // { "G028", 'S', -60.0, 20.826, -145.0, 0.0, 0.0, 80.0, 381.0, ncep_earth_radius_km, 65, 65 }, - { "G172", 'S', -60.0, -36.866, -139.806, 0.0, 0.0, -100.0, 12.7, ncep_earth_radius_km, 690, 710 }, - { "G220", 'S', -60.0, -36.866, -139.806, 0.0, 0.0, -100.0, 25.4, ncep_earth_radius_km, 345, 355 }, + { "G172", 'S', -60.0, -36.899, -139.806, 0.0, 0.0, 80.0, 12.7, ncep_earth_radius_km, 690, 710 }, + { "G220", 'S', -60.0, -36.899, -139.806, 0.0, 0.0, 80.0, 25.4, ncep_earth_radius_km, 345, 355 }, { "G224", 'S', -60.0, 20.826, -120.0, 0.0, 0.0, 105.0, 381.0, ncep_earth_radius_km, 65, 65 }, }; From 6cb0ef43532f52dfe220022d79df76e429647fc0 Mon Sep 17 00:00:00 2001 From: johnhg Date: Tue, 17 Jan 2023 09:08:50 -0700 Subject: [PATCH 09/30] Bugfix #2380 main_v11.0 override (#2381) --- src/libcode/vx_seeps/seeps.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libcode/vx_seeps/seeps.h b/src/libcode/vx_seeps/seeps.h index 47ee2ad3df..60bca4468b 100644 --- a/src/libcode/vx_seeps/seeps.h +++ b/src/libcode/vx_seeps/seeps.h @@ -177,7 +177,7 @@ class SeepsClimo : public SeepsClimoBase { SeepsClimo(); ~SeepsClimo(); - void clear() override; + void clear(); SeepsRecord *get_record(int sid, int month, int hour); double get_score(int sid, double p_fcst, double p_obs, int month, int hour); SeepsScore *get_seeps_score(int sid, double p_fcst, double p_obs, int month, int hour); @@ -221,7 +221,7 @@ class SeepsClimoGrid : public SeepsClimoBase { SeepsClimoGrid(int month, int hour); ~SeepsClimoGrid(); - void clear() override; + void clear(); SeepsScore *get_record(int ix, int iy, double p_fcst, double p_obs); double get_score(int offset, int obs_cat, int fcst_cat); double get_score(int ix, int iy, double p_fcst, double p_obs); From f7e439d0b84988b30c57f843cf58ab33f1675669 Mon Sep 17 00:00:00 2001 From: johnhg Date: Tue, 17 Jan 2023 10:05:49 -0700 Subject: [PATCH 10/30] Bugfix #2408 main_v11.0 empty config (#2409) --- src/basic/vx_config/Makefile.am | 4 +++- src/basic/vx_config/Makefile.in | 5 ++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/basic/vx_config/Makefile.am b/src/basic/vx_config/Makefile.am index b4d2d52ce6..3bbde1ca86 100644 --- a/src/basic/vx_config/Makefile.am +++ b/src/basic/vx_config/Makefile.am @@ -9,8 +9,10 @@ MAINTAINERCLEANFILES = Makefile.in include ${top_srcdir}/Make-include # Yacc/lex flags +# Initialize yystate to 8 to allow for empty configuartion files -AM_YFLAGS = --defines=config.tab.h -p config +AM_YFLAGS = --defines=config.tab.h -p config ; \ + sed -i 's/yystate = 0;/yystate = 8;/g' config.tab.cc # The library diff --git a/src/basic/vx_config/Makefile.in b/src/basic/vx_config/Makefile.in index 4c152e5961..c1481df8e1 100644 --- a/src/basic/vx_config/Makefile.in +++ b/src/basic/vx_config/Makefile.in @@ -400,7 +400,10 @@ top_srcdir = @top_srcdir@ MAINTAINERCLEANFILES = Makefile.in # Yacc/lex flags -AM_YFLAGS = --defines=config.tab.h -p config +# Initialize yystate to 8 to allow for empty configuartion files +AM_YFLAGS = --defines=config.tab.h -p config ; \ + sed -i 's/yystate = 0;/yystate = 8;/g' config.tab.cc + # The library noinst_LIBRARIES = libvx_config.a From 285d4c302c496baac21f6fa08ef488f0650ce85a Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Tue, 17 Jan 2023 15:38:53 -0700 Subject: [PATCH 11/30] #2387 Do not increase n_file_obs when n_derived_obs is increased --- src/tools/other/pb2nc/pb2nc.cc | 1 - 1 file changed, 1 deletion(-) diff --git a/src/tools/other/pb2nc/pb2nc.cc b/src/tools/other/pb2nc/pb2nc.cc index 07f6f57a33..df934ad5b5 100644 --- a/src/tools/other/pb2nc/pb2nc.cc +++ b/src/tools/other/pb2nc/pb2nc.cc @@ -1581,7 +1581,6 @@ void process_pbfile(int i_pb) { OBS_BUFFER_SIZE); // Increment the current and total observations counts - n_file_obs++; n_total_obs++; n_derived_obs++; From e53b4d173728f8be399f3d04faddd99b47cf1c9b Mon Sep 17 00:00:00 2001 From: George McCabe <23407799+georgemccabe@users.noreply.github.com> Date: Wed, 18 Jan 2023 09:45:51 -0700 Subject: [PATCH 12/30] Bugfix #2390 main_v11.0 fix compiling hdf5 with zlib and handle NetCDF-C zip (#2403) --- .../scripts/installation/compile_MET_all.sh | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/internal/scripts/installation/compile_MET_all.sh b/internal/scripts/installation/compile_MET_all.sh index d8a5918f2e..0a7907d63a 100644 --- a/internal/scripts/installation/compile_MET_all.sh +++ b/internal/scripts/installation/compile_MET_all.sh @@ -95,9 +95,15 @@ if [ ! -e $TAR_DIR ]; then fi # Update library linker path -export LD_LIBRARY_PATH=${TEST_BASE}/external_libs/lib${MET_PYTHON:+:$MET_PYTHON/lib}${MET_NETCDF:+:$MET_NETCDF/lib}${MET_HDF5:+:$MET_HDF5/lib}${MET_BUFRLIB:+:$MET_BUFRLIB}${MET_GRIB2CLIB:+:$MET_GRIB2CLIB}${LIB_JASPER:+$LIB_JASPER}${LIB_LIBPNG:+:$LIB_JASPER}${LIB_Z:+$LIB_Z}${MET_GSL:+:$MET_GSL/lib}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} +export LD_LIBRARY_PATH=${TEST_BASE}/external_libs/lib${MET_PYTHON:+:$MET_PYTHON/lib}${MET_NETCDF:+:$MET_NETCDF/lib}${MET_HDF5:+:$MET_HDF5/lib}${MET_BUFRLIB:+:$MET_BUFRLIB}${MET_GRIB2CLIB:+:$MET_GRIB2CLIB}${LIB_JASPER:+:$LIB_JASPER}${LIB_LIBPNG:+:$LIB_LIBPNG}${LIB_Z:+:$LIB_Z}${MET_GSL:+:$MET_GSL/lib}${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH} echo "LD_LIBRARY_PATH = ${LD_LIBRARY_PATH}" +# if LIB_Z is not set in the environment file, set it to the +# lib directory so it can be used to install HDF5 with zlib support +if [[ -z "$LIB_Z" ]]; then + LIB_Z=${LIB_DIR}/lib +fi + # Constants if [[ -z ${MET_GRIB2CLIB} ]] && [[ -z ${MET_GRIB2C} ]]; then COMPILE_ZLIB=1 @@ -617,7 +623,7 @@ if [ $COMPILE_NETCDF -eq 1 ]; then tar -xzf ${TAR_DIR}/hdf5*.tar.gz cd hdf5* echo "cd `pwd`" - echo "./configure --prefix=${LIB_DIR} --with-zlib=${LIB_DIR}/lib CFLAGS=-fPIC CXXFLAGS=-fPIC FFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" + echo "./configure --prefix=${LIB_DIR} --with-zlib=${LIB_Z} CFLAGS=-fPIC CXXFLAGS=-fPIC FFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1" ./configure --prefix=${LIB_DIR} --with-zlib=${LIB_Z} CFLAGS=-fPIC CXXFLAGS=-fPIC FFLAGS=-fPIC LDFLAGS=-L${LIB_DIR}/lib:${LIB_Z} CPPFLAGS=-I${LIB_DIR}/include > configure.log 2>&1 ret=$? if [ $ret != 0 ]; then @@ -635,10 +641,9 @@ if [ $COMPILE_NETCDF -eq 1 ]; then echo echo "Compiling NetCDF-C at `date`" mkdir -p ${LIB_DIR}/netcdf - cd ${LIB_DIR}/netcdf - rm -rf netcdf* - tar -xzf ${TAR_DIR}/netcdf-4*.tar.gz - cd netcdf-c-4* + rm -rf ${LIB_DIR}/netcdf/netcdf* + tar -xzf ${TAR_DIR}/netcdf-4*.tar.gz -C ${LIB_DIR}/netcdf > /dev/null 2>&1 || unzip ${TAR_DIR}/netcdf-4*.zip -d ${LIB_DIR}/netcdf + cd ${LIB_DIR}/netcdf/netcdf-* export FC='' export F90='' echo "cd `pwd`" From 4f81f59e37ac2ed42694ded0fb97ba8f93699fa5 Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Fri, 20 Jan 2023 16:08:37 -0700 Subject: [PATCH 13/30] #2228 Added parameters for ellipsoidal earth --- src/libcode/vx_grid/st_grid_defs.h | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/libcode/vx_grid/st_grid_defs.h b/src/libcode/vx_grid/st_grid_defs.h index 66596de81a..ab44bdcb10 100644 --- a/src/libcode/vx_grid/st_grid_defs.h +++ b/src/libcode/vx_grid/st_grid_defs.h @@ -25,9 +25,9 @@ struct StereographicData { const char * name; - char hemisphere; // 'N' or 'S' + char hemisphere; // 'N' or 'S' from latitude_of_projection_origin - double scale_lat; + double scale_lat; //latitude_of_projection_origin double lat_pin; double lon_pin; @@ -35,11 +35,17 @@ struct StereographicData { double x_pin; double y_pin; - double lon_orient; + double lon_orient; // -straight_vertical_longitude_from_pole double d_km; - double r_km; + double r_km; // semi_major_axis + + // ellipsoidal earth + double eccentricity; // 0 for shperical earth + double false_east; + double false_north; + double scale_factor; int nx; int ny; From d06a6f543c5f36a94c724f1302a25636a8fea67c Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Fri, 20 Jan 2023 16:11:32 -0700 Subject: [PATCH 14/30] #2228 Added functions for ellipsoidal earth --- src/libcode/vx_grid/st_grid.cc | 156 +++++++++++++++++++++++++++++---- src/libcode/vx_grid/st_grid.h | 14 ++- 2 files changed, 152 insertions(+), 18 deletions(-) diff --git a/src/libcode/vx_grid/st_grid.cc b/src/libcode/vx_grid/st_grid.cc index b0b79bd12d..4e71f1dbdc 100644 --- a/src/libcode/vx_grid/st_grid.cc +++ b/src/libcode/vx_grid/st_grid.cc @@ -1,5 +1,3 @@ - - // *=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=* // ** Copyright UCAR (c) 1992 - 2022 // ** University Corporation for Atmospheric Research (UCAR) @@ -108,6 +106,7 @@ Ny = data.ny; Name = data.name; Lon_orient = data.lon_orient; +Data = data; // @@ -116,6 +115,7 @@ Lon_orient = data.lon_orient; Alpha = (1.0 + H*sind(data.scale_lat))*((data.r_km)/(data.d_km)); + // // Calculate Bx, By // @@ -129,8 +129,6 @@ theta0 = H*(Lon_orient - data.lon_pin); Bx = data.x_pin - Alpha*r0*H*sind(theta0); By = data.y_pin + Alpha*r0*H*cosd(theta0); -Data = data; - // // Done // @@ -203,13 +201,23 @@ const double H = ( IsNorthHemisphere ? 1.0 : -1.0 ); reduce(lon); -r = st_func(lat, is_north()); +if(is_eq(Data.eccentricity, 0.0)) { -theta = H*(Lon_orient - lon); + r = st_func(lat, is_north()); -x = Bx + Alpha*r*H*sind(theta); + theta = H*(Lon_orient - lon); -y = By - Alpha*r*H*cosd(theta); + x = Bx + Alpha*r*H*sind(theta); + + y = By - Alpha*r*H*cosd(theta); +} +else { + st_latlon_to_xy_func(lat, lon, x, y, Data.scale_factor, (Data.lon_orient*-1.0), + (Data.r_km*m_per_km), Data.false_east, Data.false_north, + Data.eccentricity, IsNorthHemisphere); + x = x / (Data.d_km*m_per_km) - Data.x_pin; + y = y / (Data.d_km*m_per_km) - Data.y_pin; +} return; @@ -227,19 +235,27 @@ double r, theta; const double H = ( IsNorthHemisphere ? 1.0 : -1.0 ); -x = (x - Bx)/Alpha; -y = (y - By)/Alpha; +if(is_eq(Data.eccentricity, 0.0)) { + x = (x - Bx)/Alpha; + y = (y - By)/Alpha; + + r = sqrt( x*x + y*y ); -r = sqrt( x*x + y*y ); + lat = st_inv_func(r, is_north()); -lat = st_inv_func(r, is_north()); + if ( fabs(r) < 1.0e-5 ) theta = 0.0; + else theta = atan2d(H*x, -H*y); // NOT atan2d(y, x); -if ( fabs(r) < 1.0e-5 ) theta = 0.0; -else theta = atan2d(H*x, -H*y); // NOT atan2d(y, x); + if ( is_south() ) theta = -theta; -if ( is_south() ) theta = -theta; + lon = Lon_orient - theta; +} +else { + st_xy_to_latlon_func(x, y, lat, lon, Data.scale_factor, (Data.r_km*m_per_km), + (-1.0*Data.lon_orient), Data.false_east, Data.false_north, + Data.eccentricity, IsNorthHemisphere); +} -lon = Lon_orient - theta; reduce(lon); @@ -608,7 +624,7 @@ return ( p ); //////////////////////////////////////////////////////////////////////// -double st_func(double lat, bool is_north_hemisphere) +double st_func(double lat, bool is_north_hemisphere, double eccentricity) { @@ -617,6 +633,9 @@ double r; if ( is_north_hemisphere ) r = tand(45.0 - 0.5*lat); else r = tand(45.0 + 0.5*lat); +if (!is_eq(eccentricity, 0.)) { + r *= pow(((1 + eccentricity*sind(lat)) / (1 - eccentricity*sind(lat))),(eccentricity/2)); +} return ( r ); } @@ -660,6 +679,109 @@ return ( a ); //////////////////////////////////////////////////////////////////////// +bool st_latlon_to_xy_func(double lat, double lon, double &x_m, double &y_m, + double scale_factor, double scale_lat, double semi_major_axis, + double false_east, double false_north, + double e, bool is_north_hemisphere) +{ + + const double lat_rad = lat * rad_per_deg; + const double lon_rad = lon * rad_per_deg; + const double lat_sin = sin(lat_rad); + const double lonO_rad = scale_lat * rad_per_deg; + const double H = (is_north_hemisphere? 1.0 : -1.0 ); + double t = tan(M_PI/4 - H*lat_rad/2) * pow((1 + e*lat_sin)/(1 - e*lat_sin), e/2); + double rho = (2 * semi_major_axis * scale_factor * t) + / sqrt(pow(1+e,1+e) * pow(1-e,1-e)); + // meters in polar stereographics, not index + x_m = false_east + rho*sin(lon_rad - lonO_rad); + y_m = false_north - H*rho*cos(lon_rad - lonO_rad); + + return true; +} + +//////////////////////////////////////////////////////////////////////// + + +bool st_xy_to_latlon_func(double x_m, double y_m, double &lat, double &lon, + double scale_factor, double semi_major_axis, + double proj_vertical_lon, double false_east, double false_north, + double eccentricity, bool is_north_hemisphere) +{ +bool result = true; +double chi; +double x_diff = x_m - false_east; +double y_diff = y_m - false_north; +double lonO_rad = proj_vertical_lon * rad_per_deg; +double r_rho = sqrt(x_diff*x_diff + y_diff*y_diff); +double t = r_rho * sqrt(pow((1+eccentricity),(1+eccentricity)) * pow((1-eccentricity),(1-eccentricity))) + / (2*semi_major_axis*scale_factor); +if (is_north_hemisphere) chi = M_PI/2 - 2 * atan(t); +else chi = 2 * atan(t) - M_PI/2; + +lat = chi + (eccentricity*eccentricity/2 + 5*pow(eccentricity,4)/24 + + pow(eccentricity,6)/12 + 13*pow(eccentricity,8)/360*sin(2 * chi) + + (7*pow(eccentricity,4)/48 + 29*pow(eccentricity,6)/240 + 811*pow(eccentricity,8)/11520)*sin(4*chi) + + (7*pow(eccentricity,6)/120 + 81*pow(eccentricity,8)/1120)*sin(6*chi) + + (4279*pow(eccentricity,8)/161280)*sin(8*chi)); + +if (x_m == false_east) lon = lonO_rad; +else if (is_north_hemisphere) lon = lonO_rad + atan2(x_diff,-y_diff); +else lon = lonO_rad + atan2(x_diff,y_diff); + +lat /= rad_per_deg; +lon /= rad_per_deg; +return result; + +} + + +////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + + +double st_eccentricity_func(double semi_major_axis, double semi_minor_axis, + double inverse_flattening) +{ + +double c; +double eccentricity = bad_data_double; + +if (is_eq(semi_minor_axis, bad_data_double)) { + semi_minor_axis = semi_major_axis - semi_major_axis/inverse_flattening; +} +eccentricity = sqrt(semi_major_axis*semi_major_axis - semi_minor_axis*semi_minor_axis) / semi_major_axis; + +return ( eccentricity ); + +} + + +//////////////////////////////////////////////////////////////////////// + + +double st_sf_func(double standard_parallel, double eccentricity, bool is_north_hemisphere) +{ + +double scale_factor; +double tF, mF, temp1, temp2; +double sp_rad = standard_parallel * rad_per_deg; +double lat_sin = sin(sp_rad); +double lat_cos = cos(sp_rad); + +temp1 = eccentricity * lat_sin; +temp2 = pow((1 + temp1)/(1 - temp1), eccentricity/2); +if (is_north_hemisphere) tF = tan(M_PI/4 - sp_rad/2) * temp2; +else tF = tan(M_PI/4 + sp_rad/2) / temp2; +mF = lat_cos / sqrt(1 - eccentricity*eccentricity * lat_sin*lat_sin); +scale_factor = mF * sqrt(pow((1+eccentricity),(1+eccentricity)) * pow((1-eccentricity),(1-eccentricity))) / (2 * tF); + +return ( scale_factor ); + +} + +//////////////////////////////////////////////////////////////////////// + + double stereographic_alpha(double scale_lat, double r_km, double d_km) { diff --git a/src/libcode/vx_grid/st_grid.h b/src/libcode/vx_grid/st_grid.h index 53d5150b9b..ff9a1e3997 100644 --- a/src/libcode/vx_grid/st_grid.h +++ b/src/libcode/vx_grid/st_grid.h @@ -121,11 +121,23 @@ inline double StereographicGrid::scale_km () const { return ( Data.d_km ); } extern double stereographic_alpha(double scale_lat, double r_km, double d_km); -extern double st_func (double lat, bool is_north_hemisphere); +extern double st_func (double lat, bool is_north_hemisphere, double eccentricity = 0.); extern double st_der_func (double lat, bool is_north_hemisphere); extern double st_inv_func (double r, bool is_north_hemisphere); +extern double st_eccentricity_func(double semi_major_axis, double semi_minor_axis, + double inverse_flattening); +extern double st_sf_func(double standard_parallel, double eccentricity, bool is_north_hemisphere); +extern bool st_latlon_to_xy_func(double lat, double lon, double &x_m, double &y_m, + double scale_factor, double scale_lat, double semi_major_axis, + double false_east, double false_north, + double e, bool is_north_hemisphere); +extern bool st_xy_to_latlon_func(double x_m, double y_m, double &lat, double &lon, + double scale_factor, double semi_major_axis, + double proj_vertical_lon, double false_east, double false_north, + double eccentricity, bool is_north_hemisphere); + //////////////////////////////////////////////////////////////////////// From 56f79f7b8e7637aec26a8cfc908b69e29142bbc4 Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Fri, 20 Jan 2023 16:15:00 -0700 Subject: [PATCH 15/30] #2218 Support polar stereographics without scale_factor and ellipsoidal earth --- src/libcode/vx_data2d_nccf/nccf_file.cc | 282 +++++++++++++++++++----- 1 file changed, 232 insertions(+), 50 deletions(-) diff --git a/src/libcode/vx_data2d_nccf/nccf_file.cc b/src/libcode/vx_data2d_nccf/nccf_file.cc index 3e3cfcdbad..df3642d469 100644 --- a/src/libcode/vx_data2d_nccf/nccf_file.cc +++ b/src/libcode/vx_data2d_nccf/nccf_file.cc @@ -37,6 +37,7 @@ using namespace netCDF; static const int max_met_args = 30; static const double DELTA_TOLERANCE_PERCENT = 0.05; +static const double EARTH_MAJOR_AXIS_km = 6371.20; const double NcCfFile::DELTA_TOLERANCE = 15.0; @@ -53,7 +54,8 @@ static const char var_lon_nt[] = "tlon"; static ConcatString x_dim_var_name; static ConcatString y_dim_var_name; -static double get_nc_var_att_double(const NcVar *nc_var, const char *att_name); +static double get_nc_var_att_double(const NcVar *nc_var, const char *att_name, + bool is_required=true); #define USE_BUFFER 1 @@ -1648,7 +1650,9 @@ void NcCfFile::get_grid_mapping_lambert_conformal_conic(const NcVar *grid_mappin << "assuming meters.\n\n"; } else { - if (x_coord_units_name == "m" ) x_coord_to_m_cf = 1.0; + if ( x_coord_units_name == "m" || + x_coord_units_name == "meter" || + x_coord_units_name == "meters") x_coord_to_m_cf = 1.0; else if (x_coord_units_name == "km") x_coord_to_m_cf = 1000.0; else { mlog << Error << "\n" << method_name << " -> " @@ -1671,7 +1675,9 @@ void NcCfFile::get_grid_mapping_lambert_conformal_conic(const NcVar *grid_mappin << "assuming meters.\n\n"; } else { - if (y_coord_units_name == "m" ) y_coord_to_m_cf = 1.0; + if ( y_coord_units_name == "m" || + y_coord_units_name == "meter" || + y_coord_units_name == "meters" ) y_coord_to_m_cf = 1.0; else if (y_coord_units_name == "km") y_coord_to_m_cf = 1000.0; else { mlog << Error << "\n" << method_name << " -> " @@ -1705,8 +1711,10 @@ void NcCfFile::get_grid_mapping_lambert_conformal_conic(const NcVar *grid_mappin double dx_m = (x_values[x_counts-1] - x_values[0]) / (x_counts - 1); double dy_m = (y_values[y_counts-1] - y_values[0]) / (y_counts - 1); + double dx_m_a = fabs(dx_m); + double dy_m_a = fabs(dy_m); - if (fabs(dx_m - dy_m) > DELTA_TOLERANCE) + if (fabs(dx_m_a - dy_m_a) > DELTA_TOLERANCE) { mlog << Error << "\n" << method_name << " -> " << "MET can only process Lambert Conformal files where the x-axis and y-axis deltas are the same\n\n"; @@ -1718,8 +1726,8 @@ void NcCfFile::get_grid_mapping_lambert_conformal_conic(const NcVar *grid_mappin for (int i = 1; i < (int)x_counts; ++i) { - double curr_delta = x_values[i] - x_values[i-1]; - if (fabs(curr_delta - dx_m) > DELTA_TOLERANCE) + double curr_delta = fabs(x_values[i] - x_values[i-1]); + if (fabs(curr_delta - dx_m_a) > DELTA_TOLERANCE) { mlog << Error << "\n" << method_name << " -> " << "MET can only process Lambert Conformal files where the delta along the x-axis is constant\n\n"; @@ -1729,8 +1737,8 @@ void NcCfFile::get_grid_mapping_lambert_conformal_conic(const NcVar *grid_mappin for (int i = 1; i < (int)y_counts; ++i) { - double curr_delta = y_values[i] - y_values[i-1]; - if (fabs(curr_delta - dy_m) > DELTA_TOLERANCE) + double curr_delta = fabs(y_values[i] - y_values[i-1]); + if (fabs(curr_delta - dy_m_a) > DELTA_TOLERANCE) { mlog << Error << "\n" << method_name << " -> " << "MET can only process Lambert Conformal files where the delta along the y-axis is constant\n\n"; @@ -1767,12 +1775,14 @@ void NcCfFile::get_grid_mapping_lambert_conformal_conic(const NcVar *grid_mappin data.y_pin = y_pin; data.lon_orient = -double_datas[0]; data.d_km = dx_m / 1000.0; - data.r_km = 6371.20; + data.r_km = EARTH_MAJOR_AXIS_km; data.nx = _xDim->getSize(); data.ny = _yDim->getSize(); data.so2_angle = 0.0; grid.set(data); + if (dy_m < 0) grid.set_swap_to_north(true); + if(std_parallel_att) delete std_parallel_att; if(central_lon_att) delete central_lon_att; if(proj_origin_lat_att) delete proj_origin_lat_att; @@ -1937,16 +1947,19 @@ void NcCfFile::get_grid_mapping_orthographic(const NcVar *grid_mapping_var) //////////////////////////////////////////////////////////////////////// -double get_nc_var_att_double(const NcVar *nc_var, const char *att_name) +double get_nc_var_att_double(const NcVar *nc_var, const char *att_name, bool is_required) { NcVarAtt *nc_att = get_nc_att(nc_var, (string)att_name); if(IS_INVALID_NC_P(nc_att)) { - mlog << Error << "\nget_nc_var_att_double() -> " - << "Cannot get \"" << att_name << "\" from " - << GET_NC_NAME_P(nc_var) << " variable.\n\n"; - exit(1); + if (is_required) { + mlog << Error << "\nget_nc_var_att_double() -> " + << "Cannot get \"" << att_name << "\" from " + << GET_NC_NAME_P(nc_var) << " variable.\n\n"; + exit(1); + } + else return bad_data_double; } double att_val = get_att_value_double(nc_att); if (nc_att) delete nc_att; @@ -1960,30 +1973,48 @@ double get_nc_var_att_double(const NcVar *nc_var, const char *att_name) void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_var) { - static const string method_name = "NcCfFile::get_grid_mapping_polar_stereographic()"; double x_coord_to_m_cf = 1.0; double y_coord_to_m_cf = 1.0; + static const string method_name = "NcCfFile::get_grid_mapping_polar_stereographic() --> "; // Get projection attributes - - double proj_origin_lat = - get_nc_var_att_double(grid_mapping_var, - "latitude_of_projection_origin"); - double proj_origin_lon = - get_nc_var_att_double(grid_mapping_var, - "longitude_of_projection_origin"); - double proj_vertical_lon = - get_nc_var_att_double(grid_mapping_var, - "straight_vertical_longitude_from_pole"); - double proj_origin_scale_factor = - get_nc_var_att_double(grid_mapping_var, - "scale_factor_at_projection_origin"); + // proj_origin_lat: either 90.0 or -90.0, to decide the northern/southern hemisphere + bool is_spherical_earch = true; + double proj_origin_lat = get_nc_var_att_double( + grid_mapping_var, "latitude_of_projection_origin"); + double proj_vertical_lon = get_nc_var_att_double( + grid_mapping_var, "straight_vertical_longitude_from_pole"); + double proj_origin_lon = get_nc_var_att_double( + grid_mapping_var, "longitude_of_projection_origin", false); + double proj_standard_parallel = get_nc_var_att_double( + grid_mapping_var, "standard_parallel", false); + double proj_origin_scale_factor = get_nc_var_att_double( + grid_mapping_var, "scale_factor_at_projection_origin", false); + double semi_major_axis = get_nc_var_att_double( + grid_mapping_var, "semi_major_axis", false); + double semi_minor_axis = get_nc_var_att_double( + grid_mapping_var, "semi_minor_axis", false); + double inverse_flattening = get_nc_var_att_double( + grid_mapping_var, "inverse_flattening", false); + bool has_scale_factor = !is_eq(proj_origin_scale_factor, bad_data_double); + bool has_standard_parallel = !is_eq(proj_standard_parallel, bad_data_double); // Check that the scale factor at the origin is 1. - if(!is_eq(proj_origin_scale_factor, 1.0)) - { - mlog << Error << "\n" << method_name << " -> " + if (!is_eq(inverse_flattening, bad_data_double) || + (!is_eq(semi_minor_axis, bad_data_double) && !is_eq(semi_minor_axis,semi_major_axis))) { + is_spherical_earch = false; + mlog << Warning << "\n" << method_name + << "This is an ellipsoidal earth which is not fully supported.\n\n"; + } + else if(!has_scale_factor && !has_standard_parallel) { + mlog << Error << "\n" << method_name + << "The attribute \"scale_factor_at_projection_origin\" and \"standard_parallel\" of the " + << GET_NC_NAME_P(grid_mapping_var) << " variable do not exist.\n\n"; + exit(1); + } + else if(has_scale_factor && !is_eq(proj_origin_scale_factor, 1.0)) { + mlog << Error << "\n" << method_name << "Unexpected attribute value of " << proj_origin_scale_factor << " for the scale_factor_at_projection_origin attribute of the " << GET_NC_NAME_P(grid_mapping_var) << " variable.\n\n"; @@ -2042,21 +2073,21 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va if (_xDim == 0) { - mlog << Error << "\n" << method_name << " -> " + mlog << Error << "\n" << method_name << "Didn't find X dimension (projection_x_coordinate) in netCDF file.\n\n"; exit(1); } if (_yDim == 0) { - mlog << Error << "\n" << method_name << " -> " + mlog << Error << "\n" << method_name << "Didn't find Y dimension (projection_y_coordinate) in netCDF file.\n\n"; exit(1); } if (_xCoordVar == 0) { - mlog << Error << "\n" << method_name << " -> " + mlog << Error << "\n" << method_name << "Didn't find X coord variable (" << GET_NC_NAME_P(_xDim) << ") in netCDF file.\n\n"; exit(1); @@ -2064,7 +2095,7 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va if (_yCoordVar == 0) { - mlog << Error << "\n" << method_name << " -> " + mlog << Error << "\n" << method_name << "Didn't find Y coord variable (" << GET_NC_NAME_P(_yDim) << ") in netCDF file.\n\n"; exit(1); @@ -2073,7 +2104,7 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va if (get_data_size(_xCoordVar) != (int) GET_NC_SIZE_P(_xDim) || get_data_size(_yCoordVar) != (int) GET_NC_SIZE_P(_yDim)) { - mlog << Error << "\n" << method_name << " -> " + mlog << Error << "\n" << method_name << "Coordinate variables don't match dimension sizes in netCDF file.\n\n"; exit(1); } @@ -2085,21 +2116,24 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va ConcatString x_coord_units_name; const NcVarAtt *x_coord_units_att = get_nc_att(_xCoordVar, units_att_name); if (!get_var_units(_xCoordVar, x_coord_units_name)) { - mlog << Warning << "\n" << method_name << " -> " + mlog << Warning << "\n" << method_name << "Units not given for X coordinate variable -- assuming meters.\n\n"; } else { if (0 == x_coord_units_name.length()) { - mlog << Warning << "\n" << method_name << " -> " + mlog << Warning << "\n" << method_name << "Cannot extract X coordinate units from netCDF file -- " << "assuming meters.\n\n"; } else { - if ( x_coord_units_name == "m" ) x_coord_to_m_cf = 1.0; + if ( x_coord_units_name == "m" || + x_coord_units_name == "meter" || + x_coord_units_name == "meters") x_coord_to_m_cf = 1.0; else if ( x_coord_units_name == "km") x_coord_to_m_cf = 1000.0; else { - mlog << Error << "\n" << method_name << " -> " - << "The X coordinates must be in meters or kilometers for MET.\n\n"; + mlog << Error << "\n" << method_name + << "The X coordinates (" << x_coord_units_name + << ") must be in meters or kilometers for MET.\n\n"; exit(1); } } @@ -2108,20 +2142,22 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va ConcatString y_coord_units_name; const NcVarAtt *y_coord_units_att = get_nc_att(_yCoordVar, units_att_name); if (!get_var_units(_yCoordVar, y_coord_units_name)) { - mlog << Warning << "\n" << method_name << " -> " + mlog << Warning << "\n" << method_name << "Units not given for Y coordinate variable -- assuming meters.\n\n"; } else { if (0 == y_coord_units_name.length()) { - mlog << Warning << "\n" << method_name << " -> " + mlog << Warning << "\n" << method_name << "Cannot extract Y coordinate units from netCDF file -- " << "assuming meters.\n\n"; } else { - if ( y_coord_units_name == "m" ) y_coord_to_m_cf = 1.0; + if ( y_coord_units_name == "m" || + y_coord_units_name == "meter" || + y_coord_units_name == "meters" ) y_coord_to_m_cf = 1.0; else if ( y_coord_units_name == "km") y_coord_to_m_cf = 1000.0; else { - mlog << Error << "\n" << method_name << " -> " + mlog << Error << "\n" << method_name << "The X coordinates must be in meters or kilometers for MET.\n\n"; exit(1); } @@ -2150,14 +2186,20 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va double dx_m = (x_values[x_counts-1] - x_values[0]) / (x_counts - 1); double dy_m = (y_values[y_counts-1] - y_values[0]) / (y_counts - 1); + double dx_m_a = fabs(dx_m); + double dy_m_a = fabs(dy_m); - if (fabs(dx_m - dy_m) > DELTA_TOLERANCE) + if (fabs(dx_m_a - dy_m_a) > DELTA_TOLERANCE) { - mlog << Error << "\n" << method_name << " -> " + mlog << Error << "\n" << method_name << "MET can only process Polar Stereographic files where the x-axis and y-axis deltas are the same.\n\n"; exit(1); } + if (is_eq(semi_major_axis, bad_data_double)) + semi_major_axis = EARTH_MAJOR_AXIS_km * m_per_km; + else semi_major_axis *= x_coord_to_m_cf; // meters + // Calculate the pin indices. The pin will be located at the grid's reference // location since that's the only lat/lon location we know about. @@ -2169,17 +2211,157 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va StereographicData data; data.name = stereographic_proj_type; data.lat_pin = proj_origin_lat; - data.lon_pin = -1.0 * proj_origin_lon; - data.hemisphere = (data.lat_pin > 0 ? 'N' : 'S'); + data.lon_pin = -1.0 * (is_eq(proj_origin_lon, bad_data_double) ? 0 : proj_origin_lon); + data.hemisphere = (proj_origin_lat > 0 ? 'N' : 'S'); data.x_pin = x_pin; data.y_pin = y_pin; data.scale_lat = proj_origin_lat; data.lon_orient = -1.0 * proj_vertical_lon; data.d_km = dx_m / 1000.0; - data.r_km = 6371.20; + data.r_km = semi_major_axis / 1000.0; data.nx = _xDim->getSize(); data.ny = _yDim->getSize(); + + bool is_north_hemisphere = proj_origin_lat > 0; + double eccentricity, false_east,false_north, scale_factor; + scale_factor = proj_origin_scale_factor; + eccentricity = false_east = false_north = 0.; + if(!has_scale_factor && has_standard_parallel) { + double lat, lon; + double x, y, x2, y2; + + false_east = get_nc_var_att_double(grid_mapping_var, "false_east", false); + false_north = get_nc_var_att_double(grid_mapping_var, "false_north", false); + + if (is_eq(false_east, bad_data_double)) false_east = 0.; + if (is_eq(false_north, bad_data_double)) false_north = 0.; + if(!is_spherical_earch) eccentricity = st_eccentricity_func(semi_major_axis, semi_minor_axis, + inverse_flattening); + + x = (dx_m > 0) ? x_values[0] : x_values[x_counts-1]; + y = (dy_m > 0) ? y_values[0] : y_values[y_counts-1]; + scale_factor = st_sf_func(proj_standard_parallel, eccentricity, is_north_hemisphere); + st_xy_to_latlon_func(x, y, lat, lon, scale_factor, semi_major_axis, + proj_vertical_lon, false_east, false_north, + eccentricity, is_north_hemisphere); + if(is_eq(eccentricity, 0.0)) { + data.x_pin = 0.; + data.y_pin = 0.; + } + else { + data.x_pin = ((dx_m>0) ? x_values[0] : x_values[x_counts-1]) / dx_m_a; + data.y_pin = ((dy_m>0) ? y_values[0] : y_values[x_counts-1]) / dy_m_a; + } + data.lat_pin = lat; + data.lon_pin = -lon; + + st_latlon_to_xy_func(lat, lon, x2, y2, scale_factor, proj_vertical_lon, + semi_major_axis, false_east, false_north, + eccentricity, is_north_hemisphere); + mlog << Debug(6) << method_name + << "pin: (x,y)m -> (lat,lon) -> (x2,y2)m: (" << x << "," << y << ") -> (" + << lat << "," << lon << ") -> (" << x2 << "," << y2 + << ") Diff (m): x=" << (x-x2) <<", y=" << (y-y2) << "\n"; + + } + + // ellipsoidal earth + data.scale_factor = scale_factor; + data.eccentricity = eccentricity; + data.false_east = false_east; + data.false_north = false_north; + grid.set(data); + + if (dy_m < 0) grid.set_swap_to_north(true); + + if(mlog.verbosity_level() >= 10) { + double lat1, lon1; + double x1, y1, x2, y2; + + mlog << Debug(15) << method_name + << "dx_m=" << dx_m << ", dy_m=" << dy_m << "\n"; + + x1 = (dx_m > 0) ? x_values[0] : x_values[x_counts-1]; + y1 = (dy_m > 0) ? y_values[0] : y_values[y_counts-1]; + st_xy_to_latlon_func(x1, y1, lat1, lon1, scale_factor, semi_major_axis, + proj_vertical_lon, false_east, false_north, + eccentricity, is_north_hemisphere); + st_latlon_to_xy_func(lat1, lon1, x2, y2, scale_factor, proj_vertical_lon, + semi_major_axis, false_east, false_north, + eccentricity, is_north_hemisphere); + mlog << Debug(10) << method_name + << "left bottom: (x,y) -> (lat,lon) -> (x2,y2)m: (" + << x1 << "," << y1 << ") -> (" + << lat1 << "," << lon1 << ") -> (" << x2 << "," << y2 + << ") Diff (m): x=" << (x1-x2) <<", y=" << (y1-y2) + << "\n"; + + x1 = x_values[int(x_counts/2)]; + y1 = y_values[int(y_counts/2)]; + st_xy_to_latlon_func(x1, y1, lat1, lon1, scale_factor, semi_major_axis, + proj_vertical_lon, false_east, false_north, + eccentricity, is_north_hemisphere); + st_latlon_to_xy_func(lat1, lon1, x2, y2, scale_factor, proj_vertical_lon, + semi_major_axis, false_east, false_north, + eccentricity, is_north_hemisphere); + mlog << Debug(10) << method_name + << " center: (x,y)m -> (lat,lon) -> (x2,y2)m: (" << x1 + << "," << y1 << ") -> (" + << lat1 << "," << lon1 << ") -> (" << x2 << "," << y2 + << ") Diff (m): x=" << (x1-x2) <<", y=" << (y1-y2) + << "\n"; + + x1 = (dx_m > 0) ? x_values[x_counts-1] : x_values[0]; + y1 = (dy_m > 0) ? y_values[y_counts-1] : y_values[0]; + st_xy_to_latlon_func(x1, y1, lat1, lon1, scale_factor, semi_major_axis, + proj_vertical_lon, false_east, false_north, + eccentricity, is_north_hemisphere); + st_latlon_to_xy_func(lat1, lon1, x2, y2, scale_factor, proj_vertical_lon, + semi_major_axis, false_east, false_north, + eccentricity, is_north_hemisphere); + mlog << Debug(10) << method_name + << " top-right: (x,y)m -> (lat,lon) -> (x2,y2)m: (" << x1 + << "," << y1 << ") -> (" + << lat1 << "," << lon1 << ") -> (" << x2 << "," << y2 + << ") Diff (m): x=" << (x1-x2) <<", y=" << (y1-y2) + << "\n"; + + if(mlog.verbosity_level() >= 15) { + mlog << Debug(15) << method_name + << "data.scale_factor=" << data.scale_factor + <<", -data.lon_orient=" << -1.0*data.lon_orient << ", data.r_km=" << data.r_km + << ", data.false_east=" << data.false_east << ", data.false_north=" << data.false_north + << ", data.eccentricity=" << data.eccentricity + << ", is_north_hemisphere=" << is_north_hemisphere << "\n"; + for (int ix=0; ix (lat,lon) -> (x2,y2)m: (" << x1 + << "," << y1 << ") -> (" + << lat1 << "," << lon1 << ") -> (" << x2 << "," << y2 + << ") Diff (m): x=" << x_diff <<", y=" << y_diff + << ((abs(x_diff/dx_m) > 0.5) ? " [x_delta > dx/2] " : " ") + << ((abs(y_diff/dy_m) > 0.5) ? " [y_delta > dy/2] " : " ") + << ((abs(x_diff) > dx_m_a || abs(y_diff) > dy_m_a) ? " *** check dx/dy ***" : " ") + << "\n"; + } + } + } + } + } From 29945fe49693c22506883e51271b8d2c409a06a0 Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Fri, 20 Jan 2023 17:06:20 -0700 Subject: [PATCH 16/30] #2218 Addedmrtwo unit tests for polar stereographics --- .../test_unit/xml/unit_plot_data_plane.xml | 30 ++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/internal/test_unit/xml/unit_plot_data_plane.xml b/internal/test_unit/xml/unit_plot_data_plane.xml index 3dc7c53f59..ba8203e15d 100644 --- a/internal/test_unit/xml/unit_plot_data_plane.xml +++ b/internal/test_unit/xml/unit_plot_data_plane.xml @@ -507,5 +507,33 @@ &OUTPUT_DIR;/plot_data_plane/nbm_2022021513_F119_GRIB2_FICEAC_A48_Perc-10.ps - + + + &MET_BIN;/plot_data_plane + \ + &DATA_DIR_MODEL;/nccf/radolan_sp.nc \ + &OUTPUT_DIR;/plot_data_plane/radolan_sp_PREC.ps \ + 'name="PREC"; level="(0,*,*)";' \ + -title "NCCF Polar Stereographic Precipitation" \ + -v 1 + + + &OUTPUT_DIR;/plot_data_plane/radolan_sp_PREC.ps + + + + + &MET_BIN;/plot_data_plane + \ + &DATA_DIR_MODEL;/nccf/NSIDC0081_SEAICE_PS_N25km_20220723_v2.0.nc \ + &OUTPUT_DIR;/plot_data_plane/NSIDC0081_SEAICE_PS_N25km.ps \ + 'name="F16_ICECON"; level="(0,*,*)";' \ + -title "Sea Ice Concentration" \ + -v 1 + + + &OUTPUT_DIR;/plot_data_plane/NSIDC0081_SEAICE_PS_N25km.ps + + + From dc7ec946515f02f0dc9c095ec2024cad27cb444f Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Mon, 23 Jan 2023 10:30:40 -0700 Subject: [PATCH 17/30] #2218 convert index to meter at xy_to_latlon --- src/libcode/vx_grid/st_grid.cc | 71 ++++++++++++++++++++-------------- 1 file changed, 43 insertions(+), 28 deletions(-) diff --git a/src/libcode/vx_grid/st_grid.cc b/src/libcode/vx_grid/st_grid.cc index 4e71f1dbdc..6b7db8ec7f 100644 --- a/src/libcode/vx_grid/st_grid.cc +++ b/src/libcode/vx_grid/st_grid.cc @@ -201,7 +201,7 @@ const double H = ( IsNorthHemisphere ? 1.0 : -1.0 ); reduce(lon); -if(is_eq(Data.eccentricity, 0.0)) { +if(is_eq(Data.eccentricity, 0.0) || Data.eccentricity >= 0.1) { r = st_func(lat, is_north()); @@ -235,7 +235,7 @@ double r, theta; const double H = ( IsNorthHemisphere ? 1.0 : -1.0 ); -if(is_eq(Data.eccentricity, 0.0)) { +if(is_eq(Data.eccentricity, 0.0) || Data.eccentricity >= 0.1) { x = (x - Bx)/Alpha; y = (y - By)/Alpha; @@ -251,7 +251,9 @@ if(is_eq(Data.eccentricity, 0.0)) { lon = Lon_orient - theta; } else { - st_xy_to_latlon_func(x, y, lat, lon, Data.scale_factor, (Data.r_km*m_per_km), + double x1 = Data.x_pin + x * (Data.d_km*m_per_km); // index to meters + double y1 = Data.y_pin + y * (Data.d_km*m_per_km); // index to meters + st_xy_to_latlon_func(x1, y1, lat, lon, Data.scale_factor, (Data.r_km*m_per_km), (-1.0*Data.lon_orient), Data.false_east, Data.false_north, Data.eccentricity, IsNorthHemisphere); } @@ -677,7 +679,7 @@ return ( a ); //////////////////////////////////////////////////////////////////////// - +// lat/lon to meters bool st_latlon_to_xy_func(double lat, double lon, double &x_m, double &y_m, double scale_factor, double scale_lat, double semi_major_axis, @@ -685,6 +687,12 @@ bool st_latlon_to_xy_func(double lat, double lon, double &x_m, double &y_m, double e, bool is_north_hemisphere) { +if (e >= 0.1) { + mlog << Error << "\nst_latlon_to_xy_func() -> " + << "eccentricity (" << e << ") should be less than 0.1 for earth\n\n"; + exit( 1 ); +} +else { const double lat_rad = lat * rad_per_deg; const double lon_rad = lon * rad_per_deg; const double lat_sin = sin(lat_rad); @@ -696,12 +704,12 @@ bool st_latlon_to_xy_func(double lat, double lon, double &x_m, double &y_m, // meters in polar stereographics, not index x_m = false_east + rho*sin(lon_rad - lonO_rad); y_m = false_north - H*rho*cos(lon_rad - lonO_rad); - +} return true; } //////////////////////////////////////////////////////////////////////// - +// meters to lat/lon bool st_xy_to_latlon_func(double x_m, double y_m, double &lat, double &lon, double scale_factor, double semi_major_axis, @@ -709,28 +717,35 @@ bool st_xy_to_latlon_func(double x_m, double y_m, double &lat, double &lon, double eccentricity, bool is_north_hemisphere) { bool result = true; -double chi; -double x_diff = x_m - false_east; -double y_diff = y_m - false_north; -double lonO_rad = proj_vertical_lon * rad_per_deg; -double r_rho = sqrt(x_diff*x_diff + y_diff*y_diff); -double t = r_rho * sqrt(pow((1+eccentricity),(1+eccentricity)) * pow((1-eccentricity),(1-eccentricity))) - / (2*semi_major_axis*scale_factor); -if (is_north_hemisphere) chi = M_PI/2 - 2 * atan(t); -else chi = 2 * atan(t) - M_PI/2; - -lat = chi + (eccentricity*eccentricity/2 + 5*pow(eccentricity,4)/24 - + pow(eccentricity,6)/12 + 13*pow(eccentricity,8)/360*sin(2 * chi) - + (7*pow(eccentricity,4)/48 + 29*pow(eccentricity,6)/240 + 811*pow(eccentricity,8)/11520)*sin(4*chi) - + (7*pow(eccentricity,6)/120 + 81*pow(eccentricity,8)/1120)*sin(6*chi) - + (4279*pow(eccentricity,8)/161280)*sin(8*chi)); - -if (x_m == false_east) lon = lonO_rad; -else if (is_north_hemisphere) lon = lonO_rad + atan2(x_diff,-y_diff); -else lon = lonO_rad + atan2(x_diff,y_diff); - -lat /= rad_per_deg; -lon /= rad_per_deg; +if (eccentricity >= 0.1) { + mlog << Error << "\nst_xy_to_latlon_func() -> " + << "eccentricity (" << eccentricity << ") should be less than 0.1 for earth\n\n"; + exit( 1 ); +} +else { + double chi; + double x_diff = x_m - false_east; + double y_diff = y_m - false_north; + double lonO_rad = proj_vertical_lon * rad_per_deg; + double r_rho = sqrt(x_diff*x_diff + y_diff*y_diff); + double t = r_rho * sqrt(pow((1+eccentricity),(1+eccentricity)) * pow((1-eccentricity),(1-eccentricity))) + / (2*semi_major_axis*scale_factor); + if (is_north_hemisphere) chi = M_PI/2 - 2 * atan(t); + else chi = 2 * atan(t) - M_PI/2; + + lat = chi + (eccentricity*eccentricity/2 + 5*pow(eccentricity,4)/24 + + pow(eccentricity,6)/12 + 13*pow(eccentricity,8)/360*sin(2 * chi) + + (7*pow(eccentricity,4)/48 + 29*pow(eccentricity,6)/240 + 811*pow(eccentricity,8)/11520)*sin(4*chi) + + (7*pow(eccentricity,6)/120 + 81*pow(eccentricity,8)/1120)*sin(6*chi) + + (4279*pow(eccentricity,8)/161280)*sin(8*chi)); + + if (x_m == false_east) lon = lonO_rad; + else if (is_north_hemisphere) lon = lonO_rad + atan2(x_diff,-y_diff); + else lon = lonO_rad + atan2(x_diff,y_diff); + + lat /= rad_per_deg; + lon /= rad_per_deg; +} return result; } From 2dcc27409c568cff02f22934c2b1ce88af43b9b6 Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Mon, 23 Jan 2023 15:53:47 -0700 Subject: [PATCH 18/30] #2218 Check eccentricity --- src/libcode/vx_grid/st_grid.cc | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/libcode/vx_grid/st_grid.cc b/src/libcode/vx_grid/st_grid.cc index 6b7db8ec7f..8e0262597f 100644 --- a/src/libcode/vx_grid/st_grid.cc +++ b/src/libcode/vx_grid/st_grid.cc @@ -201,7 +201,7 @@ const double H = ( IsNorthHemisphere ? 1.0 : -1.0 ); reduce(lon); -if(is_eq(Data.eccentricity, 0.0) || Data.eccentricity >= 0.1) { +if(is_eq(Data.eccentricity, 0.0)) { r = st_func(lat, is_north()); @@ -235,7 +235,7 @@ double r, theta; const double H = ( IsNorthHemisphere ? 1.0 : -1.0 ); -if(is_eq(Data.eccentricity, 0.0) || Data.eccentricity >= 0.1) { +if(is_eq(Data.eccentricity, 0.0)) { x = (x - Bx)/Alpha; y = (y - By)/Alpha; From a04888ef9f92d89e09b8b39a20ba221b7ddaa174 Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Mon, 23 Jan 2023 15:53:47 -0700 Subject: [PATCH 19/30] #2218 Changed the order of members --- src/libcode/vx_grid/st_grid_defs.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/libcode/vx_grid/st_grid_defs.h b/src/libcode/vx_grid/st_grid_defs.h index ab44bdcb10..47c9b172e7 100644 --- a/src/libcode/vx_grid/st_grid_defs.h +++ b/src/libcode/vx_grid/st_grid_defs.h @@ -41,15 +41,15 @@ struct StereographicData { double r_km; // semi_major_axis + int nx; + int ny; + // ellipsoidal earth double eccentricity; // 0 for shperical earth double false_east; double false_north; double scale_factor; - int nx; - int ny; - void dump(); }; From e452aef42816eb498beecd75c1a323c4e72ca272 Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Mon, 23 Jan 2023 15:53:47 -0700 Subject: [PATCH 20/30] #2218 Initialize newly added members --- src/libcode/vx_grid/find_grid_by_name.cc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/libcode/vx_grid/find_grid_by_name.cc b/src/libcode/vx_grid/find_grid_by_name.cc index 57e5a3de2e..0f018cfeeb 100644 --- a/src/libcode/vx_grid/find_grid_by_name.cc +++ b/src/libcode/vx_grid/find_grid_by_name.cc @@ -450,6 +450,11 @@ if ( !west_longitude_positive ) { } +sdata.eccentricity = 0.; +sdata.false_east = 0.; +sdata.false_north = 0.; +sdata.scale_factor = 1.0; + ToGrid = new Grid ( sdata ); g = *ToGrid; From c3b3b9ae59d11f4aa90f969ea75e6ef67cb6c649 Mon Sep 17 00:00:00 2001 From: jprestop Date: Wed, 25 Jan 2023 10:41:47 -0700 Subject: [PATCH 21/30] Bugfix #2415 main_v11.0 modulefiles (#2416) * Update modulefiles * Updating modulefiles --- .../config/install_met_env.wcoss2 | 46 +++++++++++++ .../installation/modulefiles/10.0.0_cray | 37 ----------- .../installation/modulefiles/10.1.0_acorn | 34 ---------- .../installation/modulefiles/10.1.0_casper | 29 --------- .../installation/modulefiles/10.1.0_cheyenne | 29 --------- .../installation/modulefiles/10.1.0_dell | 31 --------- .../installation/modulefiles/10.1.0_dogwood | 32 --------- .../installation/modulefiles/10.1.0_hera | 65 ------------------- .../installation/modulefiles/10.1.0_orion | 46 ------------- .../installation/modulefiles/10.1.0_stampede | 24 ------- .../scripts/installation/modulefiles/10.1.2 | 17 ----- .../modulefiles/11.0.0.lua.wcoss2 | 27 ++++++++ .../installation/modulefiles/11.0.0_casper | 2 +- .../installation/modulefiles/11.0.0_frontera | 1 + 14 files changed, 75 insertions(+), 345 deletions(-) create mode 100644 internal/scripts/installation/config/install_met_env.wcoss2 delete mode 100644 internal/scripts/installation/modulefiles/10.0.0_cray delete mode 100644 internal/scripts/installation/modulefiles/10.1.0_acorn delete mode 100644 internal/scripts/installation/modulefiles/10.1.0_casper delete mode 100644 internal/scripts/installation/modulefiles/10.1.0_cheyenne delete mode 100644 internal/scripts/installation/modulefiles/10.1.0_dell delete mode 100644 internal/scripts/installation/modulefiles/10.1.0_dogwood delete mode 100644 internal/scripts/installation/modulefiles/10.1.0_hera delete mode 100644 internal/scripts/installation/modulefiles/10.1.0_orion delete mode 100644 internal/scripts/installation/modulefiles/10.1.0_stampede delete mode 100644 internal/scripts/installation/modulefiles/10.1.2 create mode 100644 internal/scripts/installation/modulefiles/11.0.0.lua.wcoss2 diff --git a/internal/scripts/installation/config/install_met_env.wcoss2 b/internal/scripts/installation/config/install_met_env.wcoss2 new file mode 100644 index 0000000000..a8ed47974b --- /dev/null +++ b/internal/scripts/installation/config/install_met_env.wcoss2 @@ -0,0 +1,46 @@ +# JY module use /apps/ops/para/libs/modulefiles/compiler/intel/19.1.3.304/ +module load intel +# JY add following two +module load craype/2.7.13 +module load cray-mpich/8.1.12 + +module load python/3.8.6 +module load netcdf/4.7.4 +module load hdf5/1.10.6 +module load bufr/11.6.0 +module load zlib/1.2.11 +module load jasper/2.0.25 +module load libpng/1.6.37 +module load gsl/2.7 +module load g2c/1.6.4 + +#export TEST_BASE=/apps/ops/para/libs/intel/19.1.3.304/met/11.0.0 +export TEST_BASE=$(pwd) +export LIB_DIR=${TEST_BASE}/external_libs +export BIN_DIR_PATH=${TEST_BASE}/bin +export COMPILER=intel_19.1.3.304 +export MET_SUBDIR=${TEST_BASE} +export MET_TARBALL=v11.0.0.tar.gz +export USE_MODULES=TRUE +export PYTHON_MODULE=python_3.8.6 +export MET_PYTHON=/apps/spack/python/3.8.6/intel/19.1.3.304/pjn2nzkjvqgmjw4hmyz43v5x4jbxjzpk +export MET_PYTHON_CC=-I/apps/spack/python/3.8.6/intel/19.1.3.304/pjn2nzkjvqgmjw4hmyz43v5x4jbxjzpk/include/python3.8 +export MET_PYTHON_LD=-L/apps/spack/python/3.8.6/intel/19.1.3.304/pjn2nzkjvqgmjw4hmyz43v5x4jbxjzpk/lib\ -lpython3.8\ -lpthread\ -ldl\ -lutil\ -lm\ -Xlinker\ -export-dynamic +export MET_NETCDF=/apps/prod/hpc-stack/intel-19.1.3.304/netcdf/4.7.4 +# JY export MET_HDF5=/apps/prod/hpc-stack/intel-19.1.3.304/hdf5/1.12.2 +export MET_HDF5=${HDF5_ROOT} +export MET_BUFRLIB=/apps/ops/prod/libs/intel/19.1.3.304/bufr/11.6.0/lib64 +# JY export MET_GRIB2CLIB=/apps/ops/prod/libs/intel/19.1.3.304/g2c/1.6.4/lib64 +# JY export MET_GRIB2CINC=/apps/ops/prod/libs/intel/19.1.3.304/g2c/1.6.4/include +export MET_GRIB2CLIB=${g2c_ROOT}/lib64 +export MET_GRIB2CINC=${G2C_INC} +export MET_GSL=/apps/spack/gsl/2.7/intel/19.1.3.304/xks7dxbowrdxhjck5zxc4rompopocevb +export BUFRLIB_NAME=-lbufr_4 +export GRIB2CLIB_NAME=-lg2c +# JY export LIB_JASPER=/apps/spack/jasper/2.0.25/intel/19.1.3.304/sjib74krrorkyczqpqah4tvewmlnqdx4/lib64 +export LIB_JASPER=${JASPER_LIBDIR} +# JY export LIB_LIBPNG=/apps/spack/libpng/1.6.37/intel/19.1.3.304/4ohkronuhlyherusoszzrmur5ewvlwzh/lib +export LIB_LIBPNG=${LIBPNG_LIBDIR} +# JY export LIB_Z=/apps/spack/zlib/1.2.11/intel/19.1.3.304/hjotqkckeoyt6j6tibalwzrlfljcjtdh/lib +export LIB_Z=${ZLIB_LIBDIR} +export SET_D64BIT=FALSE diff --git a/internal/scripts/installation/modulefiles/10.0.0_cray b/internal/scripts/installation/modulefiles/10.0.0_cray deleted file mode 100644 index e50a8bc1dd..0000000000 --- a/internal/scripts/installation/modulefiles/10.0.0_cray +++ /dev/null @@ -1,37 +0,0 @@ -#%Module###################################################################### -## -## Model Evaluation Tools -## -proc ModulesHelp { } { - puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.0.0 - *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" -} - -# The intel compiler is required to run MET - -module load PrgEnv-intel/5.2.56 -module unload intel/15.0.3.187 -module load intel/18.1.163 -module swap craype-haswell craype-sandybridge -module load cray-mpich/7.2.0 -module load python/3.6.3 -module load gsl-intel-haswell/2.1 -module use /usrx/local/dev/modulefiles -module load NetCDF-intel-sandybridge/4.7.4 -module load HDF5-parallel-intel-sandybridge/1.10.6 -module use /gpfs/hps/nco/ops/nwprod/lib/modulefiles -module load bufr-intel/11.0.1 -module load jasper-gnu-sandybridge/1.900.1 -module load png-intel-sandybridge/1.2.44 -module load zlib-intel-sandybridge/1.2.7 -module load g2c-intel/1.6.3 - -set base /gpfs/hps3/emc/meso/noscrub/emc.metplus/met/10.0.0 -set ver 10.0.0 -set share $base/share/met -set lib_base $base - -prepend-path PATH $base/exec - -setenv METversion V$ver -setenv MET_ROOT $base diff --git a/internal/scripts/installation/modulefiles/10.1.0_acorn b/internal/scripts/installation/modulefiles/10.1.0_acorn deleted file mode 100644 index 56d2d6d8dc..0000000000 --- a/internal/scripts/installation/modulefiles/10.1.0_acorn +++ /dev/null @@ -1,34 +0,0 @@ -#%Module###################################################################### -## -## Model Evaluation Tools -## -proc ModulesHelp { } { - puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.1.0 - *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" -} - -# The intel compiler is required to run MET - -module use /apps/ops/para/libs/modulefiles/compiler/intel/19.1.3.304/ -module load intel -module load python/3.8.6 -module load netcdf/4.7.4 -module load hdf5/1.10.6 -module load bufr/11.5.0 -module load zlib/1.2.11 -module load jasper/2.0.25 -module load libpng/1.6.37 -module load gsl/2.7 -module load g2c/1.6.4 - -set base /lfs/h2/emc/vpppg/noscrub/Julie.Prestopnik/MET/10.1.0 -set ver 10.1.0 -set share $base/share/met -set lib_base $base - -prepend-path PATH $base/exec - -setenv METversion V$ver -setenv MET_ROOT $base - - diff --git a/internal/scripts/installation/modulefiles/10.1.0_casper b/internal/scripts/installation/modulefiles/10.1.0_casper deleted file mode 100644 index ac50f68913..0000000000 --- a/internal/scripts/installation/modulefiles/10.1.0_casper +++ /dev/null @@ -1,29 +0,0 @@ -#%Module###################################################################### -## -## Model Evaluation Tools -## -proc ModulesHelp { } { - puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.1.0 - *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" -} - -# If they exist, remove ncdump and ncgen from /glade/p/ral/jntp/MET/MET_releases/casper/10.1.0/external_libs/bin - -# The intel compiler is required to run MET -module load ncarenv/1.3 -module load intel/2021.2 -module load python/3.7.9 -module load netcdf/4.8.0 - -set base /glade/p/ral/jntp/MET/MET_releases/casper/10.1.0 -set ver 10.1.0 -set share $base/share/met - -prepend-path PATH $base/bin:/glade/p/ral/jntp/MET/MET_releases/casper/10.1.0/external_libs/bin - - -setenv METversion V$ver - -# setenv MET_BUFRLIB /glade/p/ral/jntp/MET/MET_releases/10.0.0/external_libs/libs -# setenv MET_GRIB2C /glade/p/ral/jntp/MET/MET_releases/10.0.0/external_libs -# setenv MET_GSL /glade/p/ral/jntp/MET/MET_releases/10.0.0/external_libs diff --git a/internal/scripts/installation/modulefiles/10.1.0_cheyenne b/internal/scripts/installation/modulefiles/10.1.0_cheyenne deleted file mode 100644 index e3a408ff8f..0000000000 --- a/internal/scripts/installation/modulefiles/10.1.0_cheyenne +++ /dev/null @@ -1,29 +0,0 @@ -#%Module###################################################################### -## -## Model Evaluation Tools -## -proc ModulesHelp { } { - puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.1.0 - *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" -} - -# If they exist, remove ncdump and ncgen from /glade/p/ral/jntp/MET/MET_releases/10.1.0/external_libs/bin - -# The intel compiler is required to run MET -module load ncarenv/1.3 -module load intel/2021.2 -module load python/3.7.9 -module load netcdf/4.8.0 - -set base /glade/p/ral/jntp/MET/MET_releases/10.1.0 -set ver 10.1.0 -set share $base/share/met - -prepend-path PATH $base/bin:/glade/p/ral/jntp/MET/MET_releases/10.1.0/external_libs/bin - - -setenv METversion V$ver - -# setenv MET_BUFRLIB /glade/p/ral/jntp/MET/MET_releases/10.1.0/external_libs/libs -# setenv MET_GRIB2C /glade/p/ral/jntp/MET/MET_releases/10.1.0/external_libs -# setenv MET_GSL /glade/p/ral/jntp/MET/MET_releases/10.1.0/external_libs diff --git a/internal/scripts/installation/modulefiles/10.1.0_dell b/internal/scripts/installation/modulefiles/10.1.0_dell deleted file mode 100644 index 320248ca3a..0000000000 --- a/internal/scripts/installation/modulefiles/10.1.0_dell +++ /dev/null @@ -1,31 +0,0 @@ -#%Module###################################################################### -## -## Model Evaluation Tools -## -proc ModulesHelp { } { - puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.1.0 - *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" -} - -# The intel compiler is required to run MET - -module load ips/18.0.1.163 -module load python/3.6.3 -module load bufr/11.3.0 -module load NetCDF/4.5.0 -module load HDF5-serial/1.8.20 -module load jasper/1.900.1 -module load libpng/1.2.59 -module load zlib/1.2.11 -module load gsl/2.1 -module load g2c/1.6.3 - -set base /gpfs/dell2/emc/verification/noscrub/emc.metplus/met/10.1.0 -set ver 10.1.0 -set share $base/share/met -set lib_base $base - -prepend-path PATH $base/exec - -setenv METversion V$ver -setenv MET_ROOT $base diff --git a/internal/scripts/installation/modulefiles/10.1.0_dogwood b/internal/scripts/installation/modulefiles/10.1.0_dogwood deleted file mode 100644 index 82d86411c3..0000000000 --- a/internal/scripts/installation/modulefiles/10.1.0_dogwood +++ /dev/null @@ -1,32 +0,0 @@ -#%Module###################################################################### -## -## Model Evaluation Tools -## -proc ModulesHelp { } { - puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.1.0 - *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" -} - -# The intel compiler is required to run MET - -module use /apps/ops/para/libs/modulefiles/compiler/intel/19.1.3.304/ -module load intel -module load python/3.8.6 -module load netcdf/4.7.4 -module load hdf5/1.10.6 -module load bufr/11.6.0 -module load zlib/1.2.11 -module load jasper/2.0.25 -module load libpng/1.6.37 -module load gsl/2.6 -module load g2c/1.6.4 - -set base /lfs/h2/emc/vpppg/noscrub/Julie.Prestopnik/MET/10.1.0 -set ver 10.1.0 -set share $base/share/met -set lib_base $base - -prepend-path PATH $base/exec - -setenv METversion V$ver -setenv MET_ROOT $base diff --git a/internal/scripts/installation/modulefiles/10.1.0_hera b/internal/scripts/installation/modulefiles/10.1.0_hera deleted file mode 100644 index 7e3294d7f9..0000000000 --- a/internal/scripts/installation/modulefiles/10.1.0_hera +++ /dev/null @@ -1,65 +0,0 @@ -%Module###################################################################### -## -## Model Evaluation Tools -## -proc ModulesHelp { } { - puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.1.0 - *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" -} - -# The intel compiler is required to run MET -prereq intel -prereq anaconda/latest - -set base /contrib/met -set ver 10.1.0 -set share $base/$ver/share/met -set lib_base $base/10.1.0 - -prepend-path PATH $base/$ver/bin:$lib_base/external_libs/bin - -#prepend-path LD_LIBRARY_PATH $lib_base/external_libs/lib - -#setenv METversion $ver -#setenv MET_ROOT $base/$ver/met-10.1.0 -#setenv MET_CONFIG $share/config -#setenv MET_POLY $share/poly -#setenv MET_COLORTABLES $share/colortables -#setenv MET_PS $share/ps -#setenv MET_TCDATA $share/tc_data -#setenv MET_TABLES $share/table_files -### -#setenv CC icc -#setenv CXX icc -#setenv F77 ifort - -#module load intel/2022.1.2 -#module load anaconda/latest - -#setenv libdir /contrib/met/10.1.0/external_libs/lib -#setenv incdir /contrib/met/10.1.0/external_libs/include -#setenv iprefix /contrib/met/10.1.0/external_libs -#setenv basedir /contrib/met/10.1.0/met-10.1.0 - -#setenv MET_HDF5 $iprefix -#setenv MET_NETCDF $incdir -#setenv MET_GRIB2CINC $incdir -#setenv MET_GRIB2CLIB $libdir -#setenv MET_GSLLIB $libdir -#setenv MET_GSLINC $incdir -#setenv MET_BUFR $libdir -#setenv MET_HDFINC $incdir -#setenv MET_HDFLIB $libdir -#setenv MET_HDFEOSINC $incdir -#setenv MET_HDFEOSLIB $libdir -#setenv MET_PYTHON /contrib/anaconda3/latest -#setenv MET_PYTHON_CC -I/contrib/anaconda/anaconda3/latest/include/python3.7m -#setenv MET_PYTHON_LD -L/contrib/anaconda/anaconda3/latest/lib\ -lpython3.7m\ -lpthread\ -ldl\ -lutil\ -lm\ -Xlinker\ -export-dynamic -#setenv MET_FONT_DIR $basedir/fonts/ - -# CAIRO and FREETYPE were not used -#setenv MET_CAIROLIB $libdir -#setenv MET_CAIROINC $incdir/cairo -#setenv MET_FREETYPELIB $libdir -#setenv MET_FREETYPEINC $incdir/freetype2 - diff --git a/internal/scripts/installation/modulefiles/10.1.0_orion b/internal/scripts/installation/modulefiles/10.1.0_orion deleted file mode 100644 index 05f7971e9a..0000000000 --- a/internal/scripts/installation/modulefiles/10.1.0_orion +++ /dev/null @@ -1,46 +0,0 @@ -#%Module###################################################################### -## -## Model Evaluation Tools -## -proc ModulesHelp { } { - puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.1.0. - *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" -} - -prereq intel/2020.2 -prereq intelpython3/2020.2 - -set base /apps/contrib/MET -set ver 10.1.0 -set share $base/$ver/share/met -set lib_base $base/10.1.0 - - -prepend-path PATH $base/$ver/bin:$lib_base/external_libs/bin - -#export CC=icc -#export CXX=icc -#export F77=ifort -#module load intel/2020.2 -#module load intelpython3/2020.2 -#export libdir=/apps/contrib/met/10.1.0/external_libs/lib -#export incdir=/apps/contrib/met/10.1.0/external_libs/include -#export iprefix=/apps/contrib/met/10.1.0/external_libs -#export basedir=/apps/contrib/met/10.1.0/met-10.1.0 -#export MET_HDF5=$iprefix -#export MET_NETCDF=$incdir -#export MET_GRIB2CINC=$incdir -#export MET_GRIB2CLIB=$libdir -#setenv MET_GSLLIB=$libdir -#export MET_GSLINC=$incdir -#export MET_BUFR=$libdir -#export MET_HDFINC=$incdir -#export MET_HDFLIB=$libdir -#export MET_HDFEOSINC=$incdir -#export MET_HDFEOSLIB=$libdir -#export MET_PYTHON=/apps/intel-2020/intel-2020/intelpython3/ -#export MET_PYTHON_CC=-I/apps/intel-2020/intel-2020/intelpython3/include/python3.7m -#exoprt MET_PYTHON_LD=-L/apps/intel-2020/intel-2020/intelpython3/lib\ -lpython3.7m\ -lcrypt\ -lpthread\ -ldl\ -lutil\ -lrt\ -lm -#export MET_FONT_DIR=$basedir/fonts/ -#export LDFLAGS=-Wl,--disable-new-dtags -Wl,-rpath,${libdir}:${MET_PYTHON}/lib -#export CPPFLAGS=-I/apps/contrib/met/10.0.0/external_libs/include diff --git a/internal/scripts/installation/modulefiles/10.1.0_stampede b/internal/scripts/installation/modulefiles/10.1.0_stampede deleted file mode 100644 index aa62ef1fe6..0000000000 --- a/internal/scripts/installation/modulefiles/10.1.0_stampede +++ /dev/null @@ -1,24 +0,0 @@ -#%Module###################################################################### -## -## Model Evaluation Tools -## -proc ModulesHelp { } { - puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.1.0 - *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" -} - -module load intel/18.0.2 -module load python3/3.7.0 -module load hdf5/1.10.4 -module load netcdf/4.6.2 - -set base /work2/06612/tg859120/stampede2/met/10.1.0 -set ver 10.1.0 -set share $base/share/met -set lib_base $base - -prepend-path PATH $base/bin - -setenv METversion V$ver -setenv MET_ROOT $base - diff --git a/internal/scripts/installation/modulefiles/10.1.2 b/internal/scripts/installation/modulefiles/10.1.2 deleted file mode 100644 index 121150be4b..0000000000 --- a/internal/scripts/installation/modulefiles/10.1.2 +++ /dev/null @@ -1,17 +0,0 @@ -#%Module###################################################################### -## -## Model Evaluation Tools -## -proc ModulesHelp { } { - puts stderr "Sets up the paths and environment variables to use the Model Evaluation Tools v10.1.2 - *** For help see the official MET webpage at http://www.dtcenter.org/met/users ***" -} - -module load intel/19.0.5.281 - -set base /usw/met -set ver 10.1.2 -set share $base/$ver/share/met -set lib_base $base/10.1.2 - -prepend-path PATH $base/$ver/bin:$lib_base/external_libs/bin:/lustre/f2/dev/esrl/Julie.Prestopnik/projects/miniconda/miniconda3/envs/metplus_v4.1_py3.6/bin diff --git a/internal/scripts/installation/modulefiles/11.0.0.lua.wcoss2 b/internal/scripts/installation/modulefiles/11.0.0.lua.wcoss2 new file mode 100644 index 0000000000..c4afdd9fda --- /dev/null +++ b/internal/scripts/installation/modulefiles/11.0.0.lua.wcoss2 @@ -0,0 +1,27 @@ +help([[ +]]) + +local pkgName = myModuleName() +local pkgVersion = myModuleVersion() +local pkgNameVer = myModuleFullName() + +local hierA = hierarchyA(pkgNameVer,1) +local compNameVer = hierA[1] + + +conflict(pkgName) + +local opt = os.getenv("HPC_OPT") or os.getenv("OPT") or "/opt/modules" + +local base = pathJoin(opt,compNameVer,pkgName,pkgVersion) + +prepend_path("PATH", pathJoin(base,"bin")) + +setenv("MET_ROOT", base) +setenv("MET_BASE", pathJoin(base, "share", "met")) +setenv("MET_VERSION", pkgVersion) + +whatis("Name: ".. pkgName) +whatis("Version: " .. pkgVersion) +whatis("Category: applications") +whatis("Description: Model Evaluation Tools (MET)") diff --git a/internal/scripts/installation/modulefiles/11.0.0_casper b/internal/scripts/installation/modulefiles/11.0.0_casper index 8cf3358f62..b0d007db53 100644 --- a/internal/scripts/installation/modulefiles/11.0.0_casper +++ b/internal/scripts/installation/modulefiles/11.0.0_casper @@ -18,7 +18,7 @@ set base /glade/p/ral/jntp/MET/MET_releases/casper/11.0.0 set ver 11.0.0 set share $base/share/met -prepend-path PATH $base/bin:/glade/p/ral/jntp/MET/MET_releases/casper/11.0.0/external_libs/bin::/glade/p/ral/jntp/MET/METplus/miniconda/miniconda3/envs/metplus_v5.0_py3.8/bin +prepend-path PATH $base/bin:/glade/p/ral/jntp/MET/MET_releases/casper/11.0.0/external_libs/bin:/glade/p/ral/jntp/MET/METplus/miniconda/miniconda3/envs/metplus_v5.0_py3.8/bin setenv METversion V$ver diff --git a/internal/scripts/installation/modulefiles/11.0.0_frontera b/internal/scripts/installation/modulefiles/11.0.0_frontera index 02202a7ffe..ebd3cb9c5f 100644 --- a/internal/scripts/installation/modulefiles/11.0.0_frontera +++ b/internal/scripts/installation/modulefiles/11.0.0_frontera @@ -9,6 +9,7 @@ proc ModulesHelp { } { # If they exist, remove ncdump and ncgen from /work2/06612/tg859120/frontera/MET/11.0.0/external_libs/bin +module unload python3 module load intel/19.1.1 module load hdf5/1.12.0 module load netcdf/4.7.4 From 5d36e9510feda9aa1bf92abd9267d62d5b95153f Mon Sep 17 00:00:00 2001 From: John Halley Gotway Date: Wed, 25 Jan 2023 16:46:15 -0700 Subject: [PATCH 22/30] Bugfix #2412 main_v11.0 climo (#2420) Co-authored-by: MET Tools Test Account --- internal/scripts/docker/build_met_docker.sh | 4 +- src/basic/vx_cal/doyhms_to_unix.cc | 65 +++++++++++ src/basic/vx_cal/vx_cal.h | 10 ++ src/basic/vx_util/interp_util.cc | 10 +- src/libcode/vx_statistics/read_climo.cc | 119 ++++++++------------ 5 files changed, 127 insertions(+), 81 deletions(-) diff --git a/internal/scripts/docker/build_met_docker.sh b/internal/scripts/docker/build_met_docker.sh index 3e900f3a90..873df8e0aa 100755 --- a/internal/scripts/docker/build_met_docker.sh +++ b/internal/scripts/docker/build_met_docker.sh @@ -15,14 +15,14 @@ fi LOG_FILE=/met/MET-${MET_GIT_NAME}/make_install.log echo "Compiling MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" -make install > ${LOG_FILE} +make -j install > ${LOG_FILE} if [ $? != 0 ]; then exit 1 fi LOG_FILE=/met/logs/MET-${MET_GIT_NAME}_make_test.log echo "Testing MET ${MET_GIT_NAME} and writing log file ${LOG_FILE}" -make test > ${LOG_FILE} 2>&1 +make -j test > ${LOG_FILE} 2>&1 if [ $? != 0 ]; then exit 1 fi diff --git a/src/basic/vx_cal/doyhms_to_unix.cc b/src/basic/vx_cal/doyhms_to_unix.cc index 8c03137841..2c130131bb 100644 --- a/src/basic/vx_cal/doyhms_to_unix.cc +++ b/src/basic/vx_cal/doyhms_to_unix.cc @@ -97,8 +97,28 @@ return ( s ); } + +//////////////////////////////////////////////////////////////////////// + + +int unix_to_day_of_year(unixtime u) { + +int mon, day, yr, hr, min, sec; + +unix_to_mdyhms(u, mon, day, yr, hr, min, sec); + +int sec_of_year = mdyhms_to_unix(mon, day, 1970, 0, 0, 0); + +int sec_per_day = 60 * 60 * 24; + +return ( sec_of_year / sec_per_day ); + +} + + //////////////////////////////////////////////////////////////////////// + long unix_to_long_yyyymmddhh(unixtime u) { int mon, day, yr, hr, min, sec; @@ -112,4 +132,49 @@ return ( yyyymmddhh ); } + +//////////////////////////////////////////////////////////////////////// + + +int sec_of_day_diff(unixtime ut1, unixtime ut2) { + +int sec_per_day = 60 * 60 * 24; + +int s1 = unix_to_sec_of_day(ut1); + +int s2 = unix_to_sec_of_day(ut2); + +int dt = s2 - s1; + + if ( dt < -1 * sec_per_day/2 ) dt += sec_per_day; +else if ( dt > sec_per_day/2 ) dt -= sec_per_day; + +return ( dt ); + +} + + +//////////////////////////////////////////////////////////////////////// + + +int day_of_year_diff(unixtime ut1, unixtime ut2) { + + +int sec_per_day = 60 * 60 * 24; +int day_per_year = 365; + +int d1 = unix_to_day_of_year(ut1); + +int d2 = unix_to_day_of_year(ut2); + +int dt = d2 - d1; + + if ( dt < -1 * day_per_year/2.0 ) dt += day_per_year; +else if ( dt > day_per_year/2.0 ) dt -= day_per_year; + +return ( dt ); + +} + + //////////////////////////////////////////////////////////////////////// diff --git a/src/basic/vx_cal/vx_cal.h b/src/basic/vx_cal/vx_cal.h index b06b6fc7fe..74353e1e91 100644 --- a/src/basic/vx_cal/vx_cal.h +++ b/src/basic/vx_cal/vx_cal.h @@ -81,6 +81,8 @@ extern int hms_to_sec (int hour, int min, int sec); extern int unix_to_sec_of_day (unixtime u); +extern int unix_to_day_of_year (unixtime u); + extern long unix_to_long_yyyymmddhh (unixtime u); // Parse time strings @@ -128,6 +130,14 @@ extern ConcatString sec_to_timestring(int); //////////////////////////////////////////////////////////////////////// +extern int sec_of_day_diff (unixtime ut1, unixtime ut2); + +extern int day_of_year_diff (unixtime ut1, unixtime ut2); + + +//////////////////////////////////////////////////////////////////////// + + extern bool is_datestring(const char * text); extern bool is_yyyymmdd(const char * text); diff --git a/src/basic/vx_util/interp_util.cc b/src/basic/vx_util/interp_util.cc index bdaf7a573d..b123e972ce 100644 --- a/src/basic/vx_util/interp_util.cc +++ b/src/basic/vx_util/interp_util.cc @@ -1280,14 +1280,16 @@ DataPlane valid_time_interp(const DataPlane &in1, const DataPlane &in2, double w1 = bad_data_double; double w2 = bad_data_double; - // Store min and max valid times. + // Store min and max valid times dp1 = (in1.valid() <= in2.valid() ? in1 : in2); dp2 = (in1.valid() > in2.valid() ? in1 : in2); + // Check for matching valid times + if(dp1.valid() == dp2.valid()) return(dp1); + // Range check the times - if(dp1.valid() > to_ut || dp2.valid() < to_ut || - dp1.valid() == dp2.valid()) { - mlog << Error << "\time_interp() -> " + if(dp1.valid() > to_ut || dp2.valid() < to_ut) { + mlog << Error << "\ntime_interp() -> " << "the interpolation time " << unix_to_yyyymmdd_hhmmss(to_ut) << " must fall between the input times: " << unix_to_yyyymmdd_hhmmss(dp1.valid()) << " and " diff --git a/src/libcode/vx_statistics/read_climo.cc b/src/libcode/vx_statistics/read_climo.cc index cb6a0efb17..142833337f 100644 --- a/src/libcode/vx_statistics/read_climo.cc +++ b/src/libcode/vx_statistics/read_climo.cc @@ -150,21 +150,19 @@ void read_climo_file(const char *climo_file, GrdFileType ctype, int day_ts, int hour_ts, const Grid &vx_grid, const RegridInfo ®rid_info, DataPlaneArray &dpa) { + Met2dDataFileFactory mtddf_factory; Met2dDataFile *mtddf = (Met2dDataFile *) 0; VarInfoFactory info_factory; VarInfo *info = (VarInfo *) 0; - DataPlaneArray cur_dpa; + DataPlaneArray clm_dpa; DataPlane dp; - int n_climo, i; - int vld_mon, vld_day, vld_yr, vld_hr, vld_min, vld_sec; - int clm_mon, clm_day, clm_yr, clm_hr, clm_min, clm_sec; - unixtime ut; + int i, n_clm, day_diff_sec, hms_diff_sec; - ConcatString cur_ut_cs; + ConcatString clm_ut_cs; // Allocate memory for data file if(!(mtddf = mtddf_factory.new_met_2d_data_file(climo_file, ctype))) { @@ -179,94 +177,65 @@ void read_climo_file(const char *climo_file, GrdFileType ctype, info->set_dict(*dict); // Read data planes - n_climo = mtddf->data_plane_array(*info, cur_dpa); - - // Compute the valid month and day - unix_to_mdyhms(vld_ut, vld_mon, vld_day, vld_yr, - vld_hr, vld_min, vld_sec); + n_clm = mtddf->data_plane_array(*info, clm_dpa); // Loop through matching records - for(i=0; i= hour_ts) { - mlog << Debug(3) << "Skipping the " << cur_ut_cs << " \"" - << info->magic_str() - << "\" climatology field since the time offset (" - << labs(ut - vld_ut) - << " seconds) >= the \"" << conf_key_hour_interval - << "\" entry (" << hour_ts << " seconds) from file: " - << climo_file << "\n"; + for(i=0; i= day_ts) { + mlog << Debug(3) << "Skipping " << clm_ut_cs << " \"" << info->magic_str() + << "\" climatology field with " << day_diff_sec / sec_per_day + << " day offset (" << conf_key_day_interval << " = " + << day_ts / sec_per_day << ") from file \"" + << climo_file << "\".\n"; continue; } - // Recompute the unixtime to check the day of the year. - // Use the valid YYYY and climo MMDD_HHMMSS. - ut = mdyhms_to_unix(clm_mon, clm_day, vld_yr, - clm_hr, clm_min, clm_sec); - - // Check the day time step. - if(!is_bad_data(day_ts)) { - - // For daily climatology, check the hour timestep. - if(day_ts <= 3600*24 && labs(ut - vld_ut) >= hour_ts) { - mlog << Debug(3) << "Skipping the " << cur_ut_cs << " \"" - << info->magic_str() - << "\" climatology field since the time offset (" - << labs(ut - vld_ut) << " seconds) >= the \"" - << conf_key_hour_interval << "\" entry (" << hour_ts - << " seconds) from daily climatology file: " - << climo_file << "\n"; - continue; - } - // For non-daily climatology, check the day timestep. - else if(labs(ut - vld_ut) >= day_ts) { - mlog << Debug(3) << "Skipping the " << cur_ut_cs << " \"" - << info->magic_str() - << "\" climatology field since the time offset (" - << labs(ut - vld_ut) << " seconds) >= the \"" - << conf_key_day_interval << "\" entry (" << day_ts - << " seconds) from file: " << climo_file << "\n"; - continue; - } + // Check the hour time step + if(!is_bad_data(hour_ts) && abs(hms_diff_sec) >= hour_ts) { + mlog << Debug(3) << "Skipping " << clm_ut_cs << " \"" << info->magic_str() + << "\" climatology field with " << (double) hms_diff_sec / sec_per_hour + << " hour offset (" << conf_key_hour_interval << " = " + << hour_ts / sec_per_hour << ") from file \"" + << climo_file << "\".\n"; + continue; } + // Compute climo timestamp relative to the valid time + unixtime clm_vld_ut = vld_ut + day_diff_sec + hms_diff_sec; + // Print log message for matching record - mlog << Debug(4) - << "Found matching " << cur_ut_cs << " \"" - << info->magic_str() << "\" climatology field in file \"" - << climo_file << "\".\n"; + mlog << Debug(3) << "Storing " << clm_ut_cs << " \"" << info->magic_str() + << "\" climatology field with " << day_diff_sec / sec_per_day + << " day, " << (double) hms_diff_sec / sec_per_hour << " hour offset as time " + << unix_to_yyyymmdd_hhmmss(clm_vld_ut) << " from file \"" + << climo_file << "\".\n"; // Regrid, if needed if(!(mtddf->grid() == vx_grid)) { - mlog << Debug(2) - << "Regridding the " << cur_ut_cs << " \"" + mlog << Debug(2) << "Regridding " << clm_ut_cs << " \"" << info->magic_str() << "\" climatology field to the verification grid.\n"; - dp = met_regrid(cur_dpa[i], mtddf->grid(), vx_grid, + dp = met_regrid(clm_dpa[i], mtddf->grid(), vx_grid, regrid_info); } else { - dp = cur_dpa[i]; + dp = clm_dpa[i]; } - // Set the climo time as valid YYYY and climo MMDD_HHMMSS. - dp.set_valid(ut); + // Set the climo time relative to the valid time + dp.set_valid(clm_vld_ut); // Store the match - dpa.add(dp, cur_dpa.lower(i), cur_dpa.upper(i)); + dpa.add(dp, clm_dpa.lower(i), clm_dpa.upper(i)); } // end for i @@ -376,7 +345,7 @@ DataPlaneArray climo_time_interp(const DataPlaneArray &dpa, int day_ts, // For equality, do a single time interpolation. if(prv_hms == nxt_hms) { - ut = (vld_ut / sec_per_day) + prv_hms; + ut = (vld_ut / sec_per_day)*sec_per_day + prv_hms; interp_dpa.add(climo_hms_interp( dpa, it->second, ut, mthd), dpa.lower(it->second[0]), From fe1495fdaa7fa966a07159a7a8d3823cc97a909b Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Mon, 30 Jan 2023 23:12:40 -0700 Subject: [PATCH 23/30] #2218 Added dy_km --- src/libcode/vx_grid/find_grid_by_name.cc | 1 + src/libcode/vx_grid/grid_base.cc | 1 + src/libcode/vx_grid/st_grid_defs.h | 1 + 3 files changed, 3 insertions(+) diff --git a/src/libcode/vx_grid/find_grid_by_name.cc b/src/libcode/vx_grid/find_grid_by_name.cc index 0f018cfeeb..9d8fe9acf1 100644 --- a/src/libcode/vx_grid/find_grid_by_name.cc +++ b/src/libcode/vx_grid/find_grid_by_name.cc @@ -454,6 +454,7 @@ sdata.eccentricity = 0.; sdata.false_east = 0.; sdata.false_north = 0.; sdata.scale_factor = 1.0; +sdata.dy_km = sdata.d_km; ToGrid = new Grid ( sdata ); diff --git a/src/libcode/vx_grid/grid_base.cc b/src/libcode/vx_grid/grid_base.cc index 4dd2604dca..b909547805 100644 --- a/src/libcode/vx_grid/grid_base.cc +++ b/src/libcode/vx_grid/grid_base.cc @@ -1313,6 +1313,7 @@ if ( st1->nx == st2->nx && is_eq (rescale_lon(st1->lon_orient), rescale_lon(st2->lon_orient), loose_tol) && is_eq (st1->d_km, st2->d_km, loose_tol) && + is_eq (st1->dy_km, st2->dy_km, loose_tol) && is_eq (st1->r_km, st2->r_km, loose_tol) ) status = true; return ( status ); diff --git a/src/libcode/vx_grid/st_grid_defs.h b/src/libcode/vx_grid/st_grid_defs.h index 47c9b172e7..dcd5111eeb 100644 --- a/src/libcode/vx_grid/st_grid_defs.h +++ b/src/libcode/vx_grid/st_grid_defs.h @@ -49,6 +49,7 @@ struct StereographicData { double false_east; double false_north; double scale_factor; + double dy_km; void dump(); }; From 6ee856b3864a03cd539563f1354aa327f698a9b2 Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Mon, 30 Jan 2023 23:15:25 -0700 Subject: [PATCH 24/30] #2218 Adjusted meters to index at latlon_to_xy & xy_to_latlon --- src/libcode/vx_grid/st_grid.cc | 59 +++++++++++++++++++--------------- 1 file changed, 33 insertions(+), 26 deletions(-) diff --git a/src/libcode/vx_grid/st_grid.cc b/src/libcode/vx_grid/st_grid.cc index 8e0262597f..952568e6b4 100644 --- a/src/libcode/vx_grid/st_grid.cc +++ b/src/libcode/vx_grid/st_grid.cc @@ -212,14 +212,17 @@ if(is_eq(Data.eccentricity, 0.0)) { y = By - Alpha*r*H*cosd(theta); } else { - st_latlon_to_xy_func(lat, lon, x, y, Data.scale_factor, (Data.lon_orient*-1.0), + double delta_sign; + st_latlon_to_xy_func(lat, -lon, x, y, Data.scale_factor, (Data.lon_orient*-1.0), (Data.r_km*m_per_km), Data.false_east, Data.false_north, Data.eccentricity, IsNorthHemisphere); - x = x / (Data.d_km*m_per_km) - Data.x_pin; - y = y / (Data.d_km*m_per_km) - Data.y_pin; -} -return; + delta_sign = ((Data.d_km > 0) ? 1.0 : -1.0 ); + x = delta_sign * ((x / (fabs(Data.d_km)*m_per_km)) - Data.x_pin); // meters to index + delta_sign = ((Data.dy_km > 0) ? 1.0 : -1.0 ); + y = delta_sign * ((y / (fabs(Data.dy_km)*m_per_km)) - Data.y_pin); // meters to index + +} } @@ -251,14 +254,13 @@ if(is_eq(Data.eccentricity, 0.0)) { lon = Lon_orient - theta; } else { - double x1 = Data.x_pin + x * (Data.d_km*m_per_km); // index to meters - double y1 = Data.y_pin + y * (Data.d_km*m_per_km); // index to meters + double x1 = (Data.x_pin + x) * (Data.d_km*m_per_km); // index to meters + double y1 = (Data.y_pin + y) * (Data.dy_km*m_per_km); // index to meters st_xy_to_latlon_func(x1, y1, lat, lon, Data.scale_factor, (Data.r_km*m_per_km), (-1.0*Data.lon_orient), Data.false_east, Data.false_north, Data.eccentricity, IsNorthHemisphere); } - reduce(lon); // @@ -681,36 +683,39 @@ return ( a ); //////////////////////////////////////////////////////////////////////// // lat/lon to meters + bool st_latlon_to_xy_func(double lat, double lon, double &x_m, double &y_m, double scale_factor, double scale_lat, double semi_major_axis, double false_east, double false_north, double e, bool is_north_hemisphere) { -if (e >= 0.1) { - mlog << Error << "\nst_latlon_to_xy_func() -> " - << "eccentricity (" << e << ") should be less than 0.1 for earth\n\n"; - exit( 1 ); -} -else { - const double lat_rad = lat * rad_per_deg; - const double lon_rad = lon * rad_per_deg; - const double lat_sin = sin(lat_rad); - const double lonO_rad = scale_lat * rad_per_deg; - const double H = (is_north_hemisphere? 1.0 : -1.0 ); - double t = tan(M_PI/4 - H*lat_rad/2) * pow((1 + e*lat_sin)/(1 - e*lat_sin), e/2); - double rho = (2 * semi_major_axis * scale_factor * t) - / sqrt(pow(1+e,1+e) * pow(1-e,1-e)); - // meters in polar stereographics, not index - x_m = false_east + rho*sin(lon_rad - lonO_rad); - y_m = false_north - H*rho*cos(lon_rad - lonO_rad); -} + if (e >= 0.1) { + mlog << Error << "\nst_latlon_to_xy_func() -> " + << "eccentricity (" << e << ") should be less than 0.1 for earth\n\n"; + exit( 1 ); + } + else { + const double lat_rad = lat * rad_per_deg; + const double lon_rad = lon * rad_per_deg; + const double lat_sin = sin(lat_rad); + const double lonO_rad = scale_lat * rad_per_deg; + const double H = (is_north_hemisphere? 1.0 : -1.0 ); + double t = tan(M_PI/4 - H*lat_rad/2) * pow((1 + e*lat_sin)/(1 - e*lat_sin), e/2); + double rho = (2 * semi_major_axis * scale_factor * t) + / sqrt(pow(1+e,1+e) * pow(1-e,1-e)); + // meters in polar stereographics, not index + x_m = false_east + rho*sin(lon_rad - lonO_rad); + y_m = false_north - H*rho*cos(lon_rad - lonO_rad); + } + return true; } //////////////////////////////////////////////////////////////////////// // meters to lat/lon + bool st_xy_to_latlon_func(double x_m, double y_m, double &lat, double &lon, double scale_factor, double semi_major_axis, double proj_vertical_lon, double false_east, double false_north, @@ -745,6 +750,8 @@ else { lat /= rad_per_deg; lon /= rad_per_deg; + reduce(lon); + } return result; From e37c837190b3fdc0b1b3a14a28b809194ddd46a1 Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Tue, 31 Jan 2023 10:02:19 -0700 Subject: [PATCH 25/30] #2218 Removed a warning for ellipsoidal earth --- src/libcode/vx_data2d_nccf/nccf_file.cc | 80 ++++++++++++++++++------- 1 file changed, 58 insertions(+), 22 deletions(-) diff --git a/src/libcode/vx_data2d_nccf/nccf_file.cc b/src/libcode/vx_data2d_nccf/nccf_file.cc index df3642d469..ad8098d868 100644 --- a/src/libcode/vx_data2d_nccf/nccf_file.cc +++ b/src/libcode/vx_data2d_nccf/nccf_file.cc @@ -2004,8 +2004,8 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va if (!is_eq(inverse_flattening, bad_data_double) || (!is_eq(semi_minor_axis, bad_data_double) && !is_eq(semi_minor_axis,semi_major_axis))) { is_spherical_earch = false; - mlog << Warning << "\n" << method_name - << "This is an ellipsoidal earth which is not fully supported.\n\n"; + mlog << Debug(2) << "\n" << method_name + << "This is an ellipsoidal earth.\n\n"; } else if(!has_scale_factor && !has_standard_parallel) { mlog << Error << "\n" << method_name @@ -2198,7 +2198,7 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va if (is_eq(semi_major_axis, bad_data_double)) semi_major_axis = EARTH_MAJOR_AXIS_km * m_per_km; - else semi_major_axis *= x_coord_to_m_cf; // meters + else if (semi_major_axis < 10000.0) semi_major_axis *= m_per_km; // meters // Calculate the pin indices. The pin will be located at the grid's reference // location since that's the only lat/lon location we know about. @@ -2217,8 +2217,9 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va data.y_pin = y_pin; data.scale_lat = proj_origin_lat; data.lon_orient = -1.0 * proj_vertical_lon; - data.d_km = dx_m / 1000.0; - data.r_km = semi_major_axis / 1000.0; + data.d_km = dx_m / m_per_km; + data.dy_km = dy_m / m_per_km; + data.r_km = semi_major_axis / m_per_km; data.nx = _xDim->getSize(); data.ny = _yDim->getSize(); @@ -2238,28 +2239,33 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va if(!is_spherical_earch) eccentricity = st_eccentricity_func(semi_major_axis, semi_minor_axis, inverse_flattening); - x = (dx_m > 0) ? x_values[0] : x_values[x_counts-1]; - y = (dy_m > 0) ? y_values[0] : y_values[y_counts-1]; + x = x_values[0]; + y = y_values[0]; scale_factor = st_sf_func(proj_standard_parallel, eccentricity, is_north_hemisphere); st_xy_to_latlon_func(x, y, lat, lon, scale_factor, semi_major_axis, proj_vertical_lon, false_east, false_north, eccentricity, is_north_hemisphere); - if(is_eq(eccentricity, 0.0)) { - data.x_pin = 0.; - data.y_pin = 0.; - } - else { - data.x_pin = ((dx_m>0) ? x_values[0] : x_values[x_counts-1]) / dx_m_a; - data.y_pin = ((dy_m>0) ? y_values[0] : y_values[x_counts-1]) / dy_m_a; - } data.lat_pin = lat; data.lon_pin = -lon; + if(!has_scale_factor && has_standard_parallel) { + if(is_eq(eccentricity, 0.0)) { + data.x_pin = data.y_pin = 0.; + } + else { + data.x_pin = x / dx_m_a; + data.y_pin = y / dy_m_a; + } + } + st_latlon_to_xy_func(lat, lon, x2, y2, scale_factor, proj_vertical_lon, semi_major_axis, false_east, false_north, eccentricity, is_north_hemisphere); mlog << Debug(6) << method_name - << "pin: (x,y)m -> (lat,lon) -> (x2,y2)m: (" << x << "," << y << ") -> (" + << " x: between " << x_values[0] <<" and " << x_values[x_counts-1] + << ", y: between " << y_values[0] <<" and " << y_values[y_counts-1] << "\n"; + mlog << Debug(6) << method_name + << "pin: (x,y) -> (lat,lon) -> (x2,y2): (" << x << "," << y << ") -> (" << lat << "," << lon << ") -> (" << x2 << "," << y2 << ") Diff (m): x=" << (x-x2) <<", y=" << (y-y2) << "\n"; @@ -2273,7 +2279,7 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va grid.set(data); - if (dy_m < 0) grid.set_swap_to_north(true); + //Note: do not set grid.set_swap_to_north() if(mlog.verbosity_level() >= 10) { double lat1, lon1; @@ -2291,7 +2297,22 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va semi_major_axis, false_east, false_north, eccentricity, is_north_hemisphere); mlog << Debug(10) << method_name - << "left bottom: (x,y) -> (lat,lon) -> (x2,y2)m: (" + << " bottom left: (x,y) -> (lat,lon) -> (x2,y2): (" + << x1 << "," << y1 << ") -> (" + << lat1 << "," << lon1 << ") -> (" << x2 << "," << y2 + << ") Diff (m): x=" << (x1-x2) <<", y=" << (y1-y2) + << "\n"; + + x1 = (dx_m > 0) ? x_values[0] : x_values[x_counts-1]; + y1 = (dy_m > 0) ? y_values[y_counts-1] : y_values[0]; + st_xy_to_latlon_func(x1, y1, lat1, lon1, scale_factor, semi_major_axis, + proj_vertical_lon, false_east, false_north, + eccentricity, is_north_hemisphere); + st_latlon_to_xy_func(lat1, lon1, x2, y2, scale_factor, proj_vertical_lon, + semi_major_axis, false_east, false_north, + eccentricity, is_north_hemisphere); + mlog << Debug(10) << method_name + << " top left: (x,y) -> (lat,lon) -> (x2,y2): (" << x1 << "," << y1 << ") -> (" << lat1 << "," << lon1 << ") -> (" << x2 << "," << y2 << ") Diff (m): x=" << (x1-x2) <<", y=" << (y1-y2) @@ -2306,7 +2327,7 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va semi_major_axis, false_east, false_north, eccentricity, is_north_hemisphere); mlog << Debug(10) << method_name - << " center: (x,y)m -> (lat,lon) -> (x2,y2)m: (" << x1 + << " center: (x,y) -> (lat,lon) -> (x2,y2): (" << x1 << "," << y1 << ") -> (" << lat1 << "," << lon1 << ") -> (" << x2 << "," << y2 << ") Diff (m): x=" << (x1-x2) <<", y=" << (y1-y2) @@ -2321,7 +2342,22 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va semi_major_axis, false_east, false_north, eccentricity, is_north_hemisphere); mlog << Debug(10) << method_name - << " top-right: (x,y)m -> (lat,lon) -> (x2,y2)m: (" << x1 + << " top right: (x,y) -> (lat,lon) -> (x2,y2): (" << x1 + << "," << y1 << ") -> (" + << lat1 << "," << lon1 << ") -> (" << x2 << "," << y2 + << ") Diff (m): x=" << (x1-x2) <<", y=" << (y1-y2) + << "\n"; + + x1 = (dx_m > 0) ? x_values[x_counts-1] : x_values[0]; + y1 = (dy_m > 0) ? y_values[0] : y_values[y_counts-1]; + st_xy_to_latlon_func(x1, y1, lat1, lon1, scale_factor, semi_major_axis, + proj_vertical_lon, false_east, false_north, + eccentricity, is_north_hemisphere); + st_latlon_to_xy_func(lat1, lon1, x2, y2, scale_factor, proj_vertical_lon, + semi_major_axis, false_east, false_north, + eccentricity, is_north_hemisphere); + mlog << Debug(10) << method_name + << "bottom right: (x,y) -> (lat,lon) -> (x2,y2): (" << x1 << "," << y1 << ") -> (" << lat1 << "," << lon1 << ") -> (" << x2 << "," << y2 << ") Diff (m): x=" << (x1-x2) <<", y=" << (y1-y2) @@ -2348,8 +2384,8 @@ void NcCfFile::get_grid_mapping_polar_stereographic(const NcVar *grid_mapping_va data.eccentricity, is_north_hemisphere); x_diff = (x1-x2); y_diff = (y1-y2); - mlog << Debug(15) << method_name - << "index=("<< ix << "," << iy << "): (x,y)m -> (lat,lon) -> (x2,y2)m: (" << x1 + mlog << Debug(15) + << " index=("<< ix << "," << iy << "): (x,y) -> (lat,lon) -> (x2,y2): (" << x1 << "," << y1 << ") -> (" << lat1 << "," << lon1 << ") -> (" << x2 << "," << y2 << ") Diff (m): x=" << x_diff <<", y=" << y_diff From 2adc503970cdf749d9e0b12d3f08ef773724458d Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Thu, 2 Feb 2023 12:17:45 -0700 Subject: [PATCH 26/30] #2218 Initialize polar stereographics parametres for ellipsoial earth --- src/libcode/vx_data2d_grib/grib_utils.cc | 6 ++++++ src/libcode/vx_data2d_grib2/data2d_grib2.cc | 5 +++++ src/libcode/vx_data2d_nc_met/get_met_grid.cc | 12 ++++++++++++ src/libcode/vx_data2d_nc_pinterp/get_pinterp_grid.cc | 6 ++++++ 4 files changed, 29 insertions(+) diff --git a/src/libcode/vx_data2d_grib/grib_utils.cc b/src/libcode/vx_data2d_grib/grib_utils.cc index c1ef70f775..71b3ee8dc2 100644 --- a/src/libcode/vx_data2d_grib/grib_utils.cc +++ b/src/libcode/vx_data2d_grib/grib_utils.cc @@ -572,6 +572,12 @@ data.nx = char2_to_int(gds.nx); // Number of points in the y-direction data.ny = char2_to_int(gds.ny); +data.eccentricity = 0.; +data.false_east = 0.; +data.false_north = 0.; +data.scale_factor = 1.0; +data.dy_km = data.d_km; + data.dump(); // diff --git a/src/libcode/vx_data2d_grib2/data2d_grib2.cc b/src/libcode/vx_data2d_grib2/data2d_grib2.cc index 42582b781e..45d931b9c2 100644 --- a/src/libcode/vx_data2d_grib2/data2d_grib2.cc +++ b/src/libcode/vx_data2d_grib2/data2d_grib2.cc @@ -1172,6 +1172,11 @@ void MetGrib2DataFile::read_grib2_grid( gribfield *gfld) { data.r_km = r_km; data.nx = gfld->igdtmpl[7]; data.ny = gfld->igdtmpl[8]; + data.eccentricity = 0.; + data.false_east = 0.; + data.false_north = 0.; + data.scale_factor = 1.0; + data.dy_km = data.d_km; // check for dx != dy if( !is_eq((double)gfld->igdtmpl[14] / 1000000.0, diff --git a/src/libcode/vx_data2d_nc_met/get_met_grid.cc b/src/libcode/vx_data2d_nc_met/get_met_grid.cc index 6016ab4dd2..67ddad0fa8 100644 --- a/src/libcode/vx_data2d_nc_met/get_met_grid.cc +++ b/src/libcode/vx_data2d_nc_met/get_met_grid.cc @@ -447,6 +447,12 @@ get_global_att(ncfile, string("nx"), data.nx); // Number of points in the y-direction get_global_att(ncfile, string("ny"), data.ny); +data.eccentricity = 0.; +data.false_east = 0.; +data.false_north = 0.; +data.scale_factor = 1.0; +data.dy_km = data.d_km; + data.dump(); // @@ -643,6 +649,12 @@ get_global_att(ncfile, string("nx"), data.nx); // Number of points in the y-direction get_global_att(ncfile, string("ny"), data.ny); +data.eccentricity = 0.; +data.false_east = 0.; +data.false_north = 0.; +data.scale_factor = 1.0; +data.dy_km = data.d_km; + data.dump(); // diff --git a/src/libcode/vx_data2d_nc_pinterp/get_pinterp_grid.cc b/src/libcode/vx_data2d_nc_pinterp/get_pinterp_grid.cc index b5a78b109a..d93f0d3701 100644 --- a/src/libcode/vx_data2d_nc_pinterp/get_pinterp_grid.cc +++ b/src/libcode/vx_data2d_nc_pinterp/get_pinterp_grid.cc @@ -185,6 +185,12 @@ data.d_km *= 0.001; data.r_km = default_grib_radius_km; +data.eccentricity = 0.; +data.false_east = 0.; +data.false_north = 0.; +data.scale_factor = 1.0; +data.dy_km = data.d_km; + // // done // From 568223f19f6750459a9b58e25cf40afaa21e0462 Mon Sep 17 00:00:00 2001 From: Howard Soh Date: Thu, 2 Feb 2023 13:14:07 -0700 Subject: [PATCH 27/30] #2218 Initialize polar stereographics parameters for ellipsoidal earth --- src/libcode/vx_data2d_python/grid_from_python_dict.cc | 5 +++++ src/tools/other/mode_time_domain/nc_grid.cc | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/src/libcode/vx_data2d_python/grid_from_python_dict.cc b/src/libcode/vx_data2d_python/grid_from_python_dict.cc index 8c9aa7dae1..93de48387d 100644 --- a/src/libcode/vx_data2d_python/grid_from_python_dict.cc +++ b/src/libcode/vx_data2d_python/grid_from_python_dict.cc @@ -208,6 +208,11 @@ data.r_km = dict.lookup_double("r_km"); data.nx = dict.lookup_int("nx"); data.ny = dict.lookup_int("ny"); +data.eccentricity = 0.; +data.false_east = 0.; +data.false_north = 0.; +data.scale_factor = 1.0; +data.dy_km = data.d_km; //////////////// diff --git a/src/tools/other/mode_time_domain/nc_grid.cc b/src/tools/other/mode_time_domain/nc_grid.cc index e31246ab4d..022a2e8ebe 100644 --- a/src/tools/other/mode_time_domain/nc_grid.cc +++ b/src/tools/other/mode_time_domain/nc_grid.cc @@ -191,6 +191,11 @@ data.r_km = string_att_as_double(f, "r_km"); data.nx = string_att_as_int(f, "nx"); data.ny = string_att_as_int(f, "ny"); +data.eccentricity = 0.; +data.false_east = 0.; +data.false_north = 0.; +data.scale_factor = 1.0; +data.dy_km = data.d_km; // // done From 01234646a66dc92877869f427a4490c106ae80d0 Mon Sep 17 00:00:00 2001 From: John Halley Gotway Date: Sat, 4 Feb 2023 10:03:23 -0700 Subject: [PATCH 28/30] Bugfix #2426 main_v11.0 buoy (#2432) --- data/table_files/ndbc_stations.xml | 12 +++ src/tools/other/ascii2nc/ndbc_handler.cc | 103 ++++++++++++----------- 2 files changed, 66 insertions(+), 49 deletions(-) diff --git a/data/table_files/ndbc_stations.xml b/data/table_files/ndbc_stations.xml index 7e73ef73a3..c536e399f4 100644 --- a/data/table_files/ndbc_stations.xml +++ b/data/table_files/ndbc_stations.xml @@ -260,6 +260,7 @@ + @@ -475,6 +476,7 @@ + @@ -777,6 +779,7 @@ + @@ -789,6 +792,7 @@ + @@ -919,9 +923,11 @@ + + @@ -946,6 +952,7 @@ + @@ -1113,11 +1120,13 @@ + + @@ -1231,6 +1240,7 @@ + @@ -1333,6 +1343,7 @@ + @@ -1341,6 +1352,7 @@ + diff --git a/src/tools/other/ascii2nc/ndbc_handler.cc b/src/tools/other/ascii2nc/ndbc_handler.cc index f76df3c4d8..cd9f960f90 100644 --- a/src/tools/other/ascii2nc/ndbc_handler.cc +++ b/src/tools/other/ascii2nc/ndbc_handler.cc @@ -87,11 +87,11 @@ NdbcHandler::NdbcHandler(const string &program_name) : // read in and parse the locations file if (!locations.initialize(locationsFileName)) { - mlog << Error << "\ncould not initialize station loations file\n\n"; + mlog << Error << "\nCannot initialize NDBC station loations file: " + << locationsFileName << "\n\n"; exit(1); } - //locations.print(); - + // // store column info for all the data columns (column names) // NOTE these will be used as index values in the observations @@ -215,13 +215,14 @@ bool NdbcHandler::_readObservations(LineDataFile &ascii_file) //////////////////////////////////////////////////////////////////////// bool NdbcHandler::_parseObservationLineStandard(DataLine &data_line, - const string &filename) + const string &filename) { string method_name = "NdbcHandler::_parseObservationLineStandard() "; if (format_version != NDBC_FORMAT_VERSION_STANDARD) { - mlog << Error << "\n" << method_name << "->" - << "Standard NDBC format is the only supported format\n\n"; + mlog << Warning << "\n" << method_name << "->" + << "Standard NDBC format is the only supported format: " + << filename << "\n\n"; return false; } @@ -229,11 +230,11 @@ bool NdbcHandler::_parseObservationLineStandard(DataLine &data_line, // Make sure that the line contains the correct number of tokens // if (data_line.n_items() != NUM_COLS_STANDARD) { - mlog << Error << "\n" << method_name << "-> " - << "line number " << data_line.line_number() - << " does not have the correct number of columns " << data_line.n_items() - << " (" << NUM_COLS_STANDARD << "). Skipping this line in \"" - << filename << "\".\n\n"; + mlog << Warning << "\n" << method_name << "-> " + << "Skipping line number " << data_line.line_number() + << " with an unexpected number of columns (" + << data_line.n_items() << " != " << NUM_COLS_STANDARD << "): " + << filename << "\n\n"; return false; } @@ -242,10 +243,10 @@ bool NdbcHandler::_parseObservationLineStandard(DataLine &data_line, // time_t valid_time = _getValidTime(data_line); if (valid_time == 0) { - mlog << Error << "\n" << method_name << "-> " - << "line number " << data_line.line_number() - << " time could not be parsed, skipping this line in \"" - << filename << "\".\n\n"; + mlog << Warning << "\n" << method_name << "-> " + << "Skipping line number " << data_line.line_number() + << " whose vaild time cannot not be parsed: " + << filename << "\n\n"; return false; } @@ -263,9 +264,9 @@ bool NdbcHandler::_parseObservationLineStandard(DataLine &data_line, name = column[i].name; grib_code = i; // it's not actually grib code, its obs_vid, according to howard _addObservations(Observation(header_type, stationId, valid_time, - stationLat, stationLon, stationAlt, - quality_flag, grib_code, pressure_level_hpa, - height_m, value, name)); + stationLat, stationLon, stationAlt, + quality_flag, grib_code, pressure_level_hpa, + height_m, value, name)); } return true; } @@ -287,15 +288,15 @@ bool NdbcHandler::_setStationInfo(const string &filename) // expect .txt as the name i0 = fname.find(".txt"); if (i0 == string::npos) { - mlog << Error << "\n" << "expect file name of format '.txt'\n" - << "Got " << fname << "\n\n"; + mlog << Warning << "\n" << "NDBC file name does not follow the " + << "expected '.txt' format: " << fname << "\n\n"; return false; } stationId = fname.substr(0, i0); if (!locations.lookupLatLonElev(stationId, stationLat, stationLon, - stationAlt)) { - mlog << Error << "\n" << "No location information found for station " - << stationId << " do not process file " << filename << "\n\n"; + stationAlt)) { + mlog << Warning << "\n" << "NDBC station " << stationId + << " location information not found: " << filename << "\n\n"; return false; } return true; @@ -323,8 +324,8 @@ bool NdbcHandler::_determineFileType(LineDataFile &ascii_file) } } format_version = NDBC_FORMAT_VERSION_UNKNOWN; - mlog << Error << "\nNdbcHandler::_determineFileType -> " - << "Unknown file type\n\n"; + mlog << Warning << "\nNdbcHandler::_determineFileType -> " + << "Unknown file type: " << ascii_file.filename() << "\n\n"; return false; } @@ -335,10 +336,10 @@ time_t NdbcHandler::_getValidTime(const DataLine &data_line) const // // Pull out the date information // - if (column_pointer_year < 0 || column_pointer_month < 0 || column_pointer_day < 0 || + if (column_pointer_year < 0 || column_pointer_month < 0 || column_pointer_day < 0 || column_pointer_hour < 0 || column_pointer_minute < 0) { - mlog << Error << "\nNdbcHandler::_getValidTime -> " - << "Not all time related column pointers are set\n\n"; + mlog << Warning << "\nNdbcHandler::_getValidTime -> " + << "Not all time related column pointers are set.\n\n"; return 0; } string year = _extractColumn(data_line, column_pointer_year); @@ -391,9 +392,9 @@ bool NdbcHandler::_readHeaderInfo(LineDataFile &ascii_file) // The first line of the file contains the headers // if (!(ascii_file >> data_line)) { - mlog << Error << "\nNdbcHandler::_readHeaderInfo() -> " - << "error reading header line from input ASCII file \"" - << ascii_file.filename() << "\"\n\n"; + mlog << Warning << "\nNdbcHandler::_readHeaderInfo() -> " + << "Problem reading header line from input ASCII file: " + << ascii_file.filename() << "\n\n"; return false; } @@ -401,9 +402,10 @@ bool NdbcHandler::_readHeaderInfo(LineDataFile &ascii_file) // Check for the correct number of columns in the header line // if (data_line.n_items() != NUM_COLS_STANDARD) { - mlog << Error << "\nNdbcHandler::_readHeaderInfo() -> " - << "NDBC file has incorrect number of columns (" - << data_line.n_items() << ") in header line\n\n"; + mlog << Warning << "\nNdbcHandler::_readHeaderInfo() -> " + << "Unexpected number of header columns (" << data_line.n_items() + << " != " << NUM_COLS_STANDARD << "): " + << ascii_file.filename() << "\n\n"; return false; } @@ -426,30 +428,33 @@ bool NdbcHandler::_readHeaderInfo(LineDataFile &ascii_file) } else { bool found = false; for (size_t j=0; j " - << "NDBC file has unknown header item " << s << "\n\n"; - status = false; + mlog << Warning << "\nNdbcHandler::_readHeaderInfo() -> " + << "Unexpected header column (" << s << "): " + << ascii_file.filename() << "\n\n"; + status = false; } } } - if (column_pointer_year == -1 || column_pointer_month == -1 || - column_pointer_day == -1 || column_pointer_hour == -1 || + if (column_pointer_year == -1 || column_pointer_month == -1 || + column_pointer_day == -1 || column_pointer_hour == -1 || column_pointer_minute == -1) { - mlog << Error << "\nNdbcHandler::_readHeaderInfo() -> " - << "NDBC file did not have all time fields in header \n\n"; - status = false; + mlog << Warning << "\nNdbcHandler::_readHeaderInfo() -> " + << "NDBC file did not have all time fields in header: " + << ascii_file.filename() << "\n\n"; + status = false; } for (size_t j=0; j " - << "NDBC file did not have all expected fields in header \n\n"; + mlog << Warning << "\nNdbcHandler::_readHeaderInfo() -> " + << "NDBC file did not have all expected fields in header: " + << ascii_file.filename() << "\n\n"; status = false; break; } From 245ebe94ae2a02e599a606d553560823763103f8 Mon Sep 17 00:00:00 2001 From: John Halley Gotway Date: Wed, 15 Feb 2023 12:43:07 -0700 Subject: [PATCH 29/30] Bugfix #2437 main_v11.0 convert (#2438) --- data/config/GridStatConfig_default | 1 - docs/Users_Guide/config_options.rst | 10 +- .../config/GridStatConfig_climo_wrap_year | 266 ++++++++++++++++++ .../test_unit/config/PointStatConfig_climo | 25 +- .../test_unit/xml/unit_climatology_2.5deg.xml | 60 ++++ scripts/config/GridStatConfig_all | 1 - src/basic/vx_config/config_util.cc | 10 +- src/basic/vx_config/dictionary.cc | 103 ++++--- src/basic/vx_config/dictionary.h | 55 ++-- src/libcode/vx_statistics/read_climo.cc | 20 ++ 10 files changed, 473 insertions(+), 78 deletions(-) create mode 100644 internal/test_unit/config/GridStatConfig_climo_wrap_year diff --git a/data/config/GridStatConfig_default b/data/config/GridStatConfig_default index 9ac3423238..3ac1b1050c 100644 --- a/data/config/GridStatConfig_default +++ b/data/config/GridStatConfig_default @@ -90,7 +90,6 @@ climo_mean = { } time_interp_method = DW_MEAN; - match_month = TRUE; day_interval = 31; hour_interval = 6; } diff --git a/docs/Users_Guide/config_options.rst b/docs/Users_Guide/config_options.rst index 5cc2432fd6..af1c78f6f2 100644 --- a/docs/Users_Guide/config_options.rst +++ b/docs/Users_Guide/config_options.rst @@ -693,14 +693,16 @@ using the following entries: smoothing. The default is 120. Ignored if not Gaussian method. * The "gaussian_dx" and "gaussian_radius" settings must be in the same - units, such as kilometers or degress. Their ratio + units, such as kilometers or degress. Their ratio (sigma = gaussian_radius / gaussian_dx) determines the Guassian weighting function. * The "convert", "censor_thresh", and "censor_val" entries are described - below. When specified, these operations are applied to the output of the - regridding step. The conversion operation is applied first, followed by - the censoring operation. + below. When specified, these operations are applied to the output of the + regridding step. The conversion operation is applied first, followed by + the censoring operation. Note that these operations are limited in scope. + They are only applied if defined within the regrid dictionary itself. + Settings defined at higher levels of config file context are not applied. .. code-block:: none diff --git a/internal/test_unit/config/GridStatConfig_climo_wrap_year b/internal/test_unit/config/GridStatConfig_climo_wrap_year new file mode 100644 index 0000000000..38e8ffcd0c --- /dev/null +++ b/internal/test_unit/config/GridStatConfig_climo_wrap_year @@ -0,0 +1,266 @@ +//////////////////////////////////////////////////////////////////////////////// +// +// Grid-Stat configuration file. +// +// For additional information, please see the MET User's Guide. +// +//////////////////////////////////////////////////////////////////////////////// + +// +// Output model name to be written +// +model = "GFSANL"; + +// +// Output description to be written +// May be set separately in each "obs.field" entry +// +desc = "NA"; + +// +// Output observation type to be written +// +obtype = "GFSANL"; + +//////////////////////////////////////////////////////////////////////////////// + +// +// Verification grid +// +regrid = { + to_grid = NONE; + method = NEAREST; + width = 1; + vld_thresh = 0.5; + shape = SQUARE; +} + +//////////////////////////////////////////////////////////////////////////////// + +// +// May be set separately in each "field" entry +// +censor_thresh = []; +censor_val = []; +mpr_column = []; +mpr_thresh = []; +cat_thresh = []; +cnt_thresh = [ NA ]; +cnt_logic = UNION; +wind_thresh = [ NA ]; +wind_logic = UNION; +eclv_points = 0.05; +nc_pairs_var_name = ""; +nc_pairs_var_suffix = ""; +hss_ec_value = NA; +rank_corr_flag = FALSE; + +// +// Forecast and observation fields to be verified +// +fcst = { + + name = "TMP"; + level = "P500"; + + field = [ + { set_attr_init = "20201225_12"; set_attr_valid = "20201225_12"; nc_pairs_var_suffix = "20201225_12"; }, + { set_attr_init = "20210105_12"; set_attr_valid = "20210105_12"; nc_pairs_var_suffix = "20210105_12"; }, + { set_attr_init = "20201225_03"; set_attr_valid = "20201225_03"; nc_pairs_var_suffix = "20201225_03"; }, + { set_attr_init = "20201225_21"; set_attr_valid = "20201225_21"; nc_pairs_var_suffix = "20201225_21"; } + ]; +} +obs = fcst; + +//////////////////////////////////////////////////////////////////////////////// + +// +// Climatology data +// +climo_mean = { + + field = [ + { name = "TMP"; level = "P500"; }, + { name = "TMP"; level = "P500"; }, + { name = "TMP"; level = "P500"; }, + { name = "TMP"; level = "P500"; } + ]; + + file_name = [ ${CLIMO_MEAN_FILE_LIST} ]; + + regrid = { + method = BILIN; + width = 2; + vld_thresh = 0.5; + } + + time_interp_method = DW_MEAN; + day_interval = ${DAY_INTERVAL}; + hour_interval = ${HOUR_INTERVAL}; +} + +climo_stdev = climo_mean; +climo_stdev = { + file_name = [ ${CLIMO_STDEV_FILE_LIST} ]; +} + +// +// May be set separately in each "obs.field" entry +// +climo_cdf = { + cdf_bins = 1; + center_bins = TRUE; + write_bins = FALSE; + direct_prob = FALSE; +} + +//////////////////////////////////////////////////////////////////////////////// + +// +// Verification masking regions +// +mask = { + grid = [ "FULL" ]; + poly = []; +} + +//////////////////////////////////////////////////////////////////////////////// + +// +// Confidence interval settings +// +ci_alpha = [ 0.05 ]; + +boot = { + interval = PCTILE; + rep_prop = 1.0; + n_rep = 0; + rng = "mt19937"; + seed = ""; +} + +//////////////////////////////////////////////////////////////////////////////// + +// +// Data smoothing methods +// +interp = { + field = BOTH; + vld_thresh = 1.0; + shape = SQUARE; + + type = [ + { + method = NEAREST; + width = 1; + } + ]; +} + +//////////////////////////////////////////////////////////////////////////////// + +// +// Neighborhood methods +// +nbrhd = { + width = [ 1 ]; + cov_thresh = [ >=0.5 ]; + vld_thresh = 1.0; + shape = SQUARE; +} + +//////////////////////////////////////////////////////////////////////////////// + +// +// Fourier decomposition +// +fourier = { + wave_1d_beg = []; + wave_1d_end = []; +} + +//////////////////////////////////////////////////////////////////////////////// + +// +// Gradient statistics +// May be set separately in each "obs.field" entry +// +gradient = { + dx = [ 1, 2, 5 ]; + dy = [ 1, 3, 5 ]; +} + +//////////////////////////////////////////////////////////////////////////////// + +// +// Distance Map statistics +// May be set separately in each "obs.field" entry +// +distance_map = { + baddeley_p = 2; + baddeley_max_dist = NA; + fom_alpha = 0.1; + zhu_weight = 0.5; + beta_value(n) = n * n / 2.0; +} + +//////////////////////////////////////////////////////////////////////////////// + +// +// Statistical output types +// +output_flag = { + fho = NONE; + ctc = NONE; + cts = NONE; + mctc = NONE; + mcts = NONE; + cnt = NONE; + sl1l2 = NONE; + sal1l2 = STAT; + vl1l2 = NONE; + val1l2 = NONE; + vcnt = NONE; + pct = NONE; + pstd = NONE; + pjc = NONE; + prc = NONE; + eclv = NONE; + nbrctc = NONE; + nbrcts = NONE; + nbrcnt = NONE; + grad = NONE; + dmap = NONE; + seeps = NONE; +} + +// +// NetCDF matched pairs output file +// +nc_pairs_flag = { + latlon = TRUE; + raw = FALSE; + diff = FALSE; + climo = TRUE; + climo_cdp = FALSE; + weight = FALSE; + nbrhd = FALSE; + fourier = FALSE; + gradient = FALSE; + distance_map = FALSE; + apply_mask = FALSE; +} + +//////////////////////////////////////////////////////////////////////////////// +// Threshold for SEEPS p1 (Probability of being dry) + +seeps_p1_thresh = NA; + +//////////////////////////////////////////////////////////////////////////////// + +grid_weight_flag = NONE; +tmp_dir = "/tmp"; +output_prefix = "${OUTPUT_PREFIX}"; +version = "V11.0.0"; + +//////////////////////////////////////////////////////////////////////////////// diff --git a/internal/test_unit/config/PointStatConfig_climo b/internal/test_unit/config/PointStatConfig_climo index 565463ada5..7bcf6c318f 100644 --- a/internal/test_unit/config/PointStatConfig_climo +++ b/internal/test_unit/config/PointStatConfig_climo @@ -53,21 +53,24 @@ fcst = { field = [ { - name = "TMP"; - level = [ "Z2" ]; - desc = "KELVIN"; + name = "TMP"; + level = [ "Z2" ]; + desc = "KELVIN"; + set_attr_units = "K"; }, { - name = "TMP"; - level = [ "Z2" ]; - desc = "CELCIUS"; - convert(x) = K_to_C(x); + name = "TMP"; + level = [ "Z2" ]; + desc = "CELCIUS"; + convert(x) = K_to_C(x); + set_attr_units = "C"; }, { - name = "TMP"; - level = [ "Z2" ]; - desc = "FAHRENHEIT"; - convert(x) = K_to_F(x); + name = "TMP"; + level = [ "Z2" ]; + desc = "FAHRENHEIT"; + convert(x) = K_to_F(x); + set_attr_units = "F"; }, { name = "TMP"; diff --git a/internal/test_unit/xml/unit_climatology_2.5deg.xml b/internal/test_unit/xml/unit_climatology_2.5deg.xml index 7c8c0b300a..b513d5577d 100644 --- a/internal/test_unit/xml/unit_climatology_2.5deg.xml +++ b/internal/test_unit/xml/unit_climatology_2.5deg.xml @@ -50,4 +50,64 @@ + + + + &MET_BIN;/grid_stat + + OUTPUT_PREFIX WRAP_YEAR_CLIMO_2.5DEG + DAY_INTERVAL 31 + HOUR_INTERVAL 6 + CLIMO_MEAN_FILE_LIST + "&DATA_DIR_CLIMO;/NCEP_2.5deg/pgba_mean.19591215", + "&DATA_DIR_CLIMO;/NCEP_2.5deg/pgba_mean.19590115" + + + CLIMO_STDEV_FILE_LIST + "&DATA_DIR_CLIMO;/NCEP_2.5deg/pgba_stdv.19591215", + "&DATA_DIR_CLIMO;/NCEP_2.5deg/pgba_stdv.19590115" + + + + \ + &DATA_DIR_MODEL;/grib2/gfsanl/gfsanl_4_20120409_1200_000.grb2 \ + &DATA_DIR_MODEL;/grib2/gfsanl/gfsanl_4_20120409_1200_000.grb2 \ + &CONFIG_DIR;/GridStatConfig_climo_wrap_year \ + -outdir &OUTPUT_DIR;/climatology_2.5deg -v 3 + + + &OUTPUT_DIR;/climatology_2.5deg/grid_stat_WRAP_YEAR_CLIMO_2.5DEG_000000L_20201225_120000V.stat + &OUTPUT_DIR;/climatology_2.5deg/grid_stat_WRAP_YEAR_CLIMO_2.5DEG_000000L_20201225_120000V_pairs.nc + + + + + + + &MET_BIN;/grid_stat + + OUTPUT_PREFIX SINGLE_MONTH_CLIMO_2.5DEG + DAY_INTERVAL 31 + HOUR_INTERVAL 6 + CLIMO_MEAN_FILE_LIST + "&DATA_DIR_CLIMO;/NCEP_2.5deg/pgba_mean.19591215" + + + CLIMO_STDEV_FILE_LIST + "&DATA_DIR_CLIMO;/NCEP_2.5deg/pgba_stdv.19591215" + + + + \ + &DATA_DIR_MODEL;/grib2/gfsanl/gfsanl_4_20120409_1200_000.grb2 \ + &DATA_DIR_MODEL;/grib2/gfsanl/gfsanl_4_20120409_1200_000.grb2 \ + &CONFIG_DIR;/GridStatConfig_climo_wrap_year \ + -outdir &OUTPUT_DIR;/climatology_2.5deg -v 3 + + + &OUTPUT_DIR;/climatology_2.5deg/grid_stat_SINGLE_MONTH_CLIMO_2.5DEG_000000L_20201225_120000V.stat + &OUTPUT_DIR;/climatology_2.5deg/grid_stat_SINGLE_MONTH_CLIMO_2.5DEG_000000L_20201225_120000V_pairs.nc + + + diff --git a/scripts/config/GridStatConfig_all b/scripts/config/GridStatConfig_all index ae38f06cd5..3d0e53f12e 100644 --- a/scripts/config/GridStatConfig_all +++ b/scripts/config/GridStatConfig_all @@ -107,7 +107,6 @@ climo_mean = { } time_interp_method = DW_MEAN; - match_month = TRUE; match_day = FALSE; time_step = 21600; } diff --git a/src/basic/vx_config/config_util.cc b/src/basic/vx_config/config_util.cc index 52817f1b6d..318f974654 100644 --- a/src/basic/vx_config/config_util.cc +++ b/src/basic/vx_config/config_util.cc @@ -1299,14 +1299,18 @@ RegridInfo parse_conf_regrid(Dictionary *dict, bool error_out) { info.gaussian.trunc_factor = (is_bad_data(conf_value) ? default_trunc_factor : conf_value); if (info.method == InterpMthd_Gaussian || info.method == InterpMthd_MaxGauss) info.gaussian.compute(); + // MET#2437 Do not search the higher levels of config file context for convert, + // censor_thresh, and censor_val. They must be specified within the + // regrid dictionary itself. + // Conf: convert - info.convert_fx.set(regrid_dict->lookup(conf_key_convert)); + info.convert_fx.set(regrid_dict->lookup(conf_key_convert, false)); // Conf: censor_thresh - info.censor_thresh = regrid_dict->lookup_thresh_array(conf_key_censor_thresh, false); + info.censor_thresh = regrid_dict->lookup_thresh_array(conf_key_censor_thresh, false, true, false); // Conf: censor_val - info.censor_val = regrid_dict->lookup_num_array(conf_key_censor_val, false); + info.censor_val = regrid_dict->lookup_num_array(conf_key_censor_val, false, true, false); // Validate the settings info.validate(); diff --git a/src/basic/vx_config/dictionary.cc b/src/basic/vx_config/dictionary.cc index 08dc1f7fe9..90fae2a93a 100644 --- a/src/basic/vx_config/dictionary.cc +++ b/src/basic/vx_config/dictionary.cc @@ -1261,7 +1261,7 @@ return ( e[n] ); //////////////////////////////////////////////////////////////////////// -const DictionaryEntry * Dictionary::lookup(const std::string name) +const DictionaryEntry * Dictionary::lookup(const std::string name, bool search_parent) { @@ -1288,13 +1288,13 @@ scope = Name.split("."); if ( scope.n_elements() == 1 ) { - return ( lookup_simple(name) ); + return ( lookup_simple(name, search_parent) ); } for (j=0; j<(scope.n_elements() - 1); ++j) { - E = D->lookup(scope[j].c_str()); + E = D->lookup(scope[j].c_str(), search_parent); if ( !E ) { @@ -1320,7 +1320,7 @@ for (j=0; j<(scope.n_elements() - 1); ++j) { const string stub = scope[scope.n_elements() - 1].c_str(); -E = D->lookup_simple(stub); +E = D->lookup_simple(stub, search_parent); if ( E ) { @@ -1335,7 +1335,11 @@ if ( E ) { E = (const DictionaryEntry *) 0; -if ( Parent ) E = Parent->lookup(name); +if ( search_parent ) { + + if ( Parent ) E = Parent->lookup(name, search_parent); + +} // // done @@ -1351,7 +1355,7 @@ return ( E ); //////////////////////////////////////////////////////////////////////// -const DictionaryEntry * Dictionary::lookup_simple(const std::string name) +const DictionaryEntry * Dictionary::lookup_simple(const std::string name, bool search_parent) { @@ -1381,8 +1385,11 @@ for (j=0; jlookup(name); +if ( search_parent ) { + if ( Parent ) E = Parent->lookup(name); + +} // // done // @@ -1473,11 +1480,12 @@ return; bool Dictionary::lookup_bool(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -const DictionaryEntry * Entry = lookup(name); +const DictionaryEntry * Entry = lookup(name, search_parent); bool is_correct_type = false; if ( Entry ) { @@ -1521,11 +1529,12 @@ return ( Entry->b_value() ); int Dictionary::lookup_int(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -const DictionaryEntry * Entry = lookup(name); +const DictionaryEntry * Entry = lookup(name, search_parent); bool is_correct_type = false; if ( Entry ) { @@ -1569,11 +1578,12 @@ return ( Entry->i_value() ); double Dictionary::lookup_double(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -const DictionaryEntry * Entry = lookup(name); +const DictionaryEntry * Entry = lookup(name, search_parent); bool is_correct_type = false; double v = bad_data_double; @@ -1641,11 +1651,12 @@ return ( v ); NumArray Dictionary::lookup_num_array(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -const DictionaryEntry * Entry = lookup(name); +const DictionaryEntry * Entry = lookup(name, search_parent); const Dictionary * Dict = (const Dictionary *) 0; ConfigObjectType Type = no_config_object_type; bool is_correct_type = false; @@ -1765,12 +1776,13 @@ return ( array ); IntArray Dictionary::lookup_int_array(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { IntArray array; -NumArray num_array = lookup_num_array(name, error_out, print_warning); +NumArray num_array = lookup_num_array(name, error_out, print_warning, search_parent); for (int i=0; istring_value() ); StringArray Dictionary::lookup_string_array(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -const DictionaryEntry * Entry = lookup(name); +const DictionaryEntry * Entry = lookup(name, search_parent); const Dictionary * Dict = (const Dictionary *) 0; bool is_correct_type = false; StringArray array; @@ -1934,11 +1948,12 @@ return ( array ); SingleThresh Dictionary::lookup_thresh(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -const DictionaryEntry * Entry = lookup(name); +const DictionaryEntry * Entry = lookup(name, search_parent); bool is_correct_type = false; if ( Entry ) { @@ -1987,11 +2002,12 @@ return ( *(Entry->thresh_value()) ); ThreshArray Dictionary::lookup_thresh_array(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -const DictionaryEntry * Entry = lookup(name); +const DictionaryEntry * Entry = lookup(name, search_parent); const Dictionary * Dict = (const Dictionary *) 0; bool is_correct_type = false; ThreshArray array; @@ -2089,11 +2105,12 @@ return ( array ); Dictionary *Dictionary::lookup_dictionary(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -const DictionaryEntry * Entry = lookup(name); +const DictionaryEntry * Entry = lookup(name, search_parent); bool is_correct_type = false; if ( Entry ) { @@ -2139,11 +2156,12 @@ return ( Entry->dict_value() ); Dictionary *Dictionary::lookup_array(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -const DictionaryEntry * Entry = lookup(name); +const DictionaryEntry * Entry = lookup(name, search_parent); bool is_correct_type = false; if ( Entry ) { @@ -2191,18 +2209,19 @@ return ( Entry->array_value() ); int Dictionary::lookup_seconds(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -ConcatString cs = lookup_string(name, false); +ConcatString cs = lookup_string(name, false, true, search_parent); if ( LastLookupStatus ) { if ( cs.empty() ) return ( bad_data_int ); else return ( timestring_to_sec( cs.c_str() ) ); } -return ( lookup_int(name, error_out, print_warning) ); +return ( lookup_int(name, error_out, print_warning, search_parent) ); } @@ -2212,11 +2231,12 @@ return ( lookup_int(name, error_out, print_warning) ); IntArray Dictionary::lookup_seconds_array(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -StringArray sa = lookup_string_array(name, error_out, print_warning); +StringArray sa = lookup_string_array(name, error_out, print_warning, search_parent); IntArray ia; int j; @@ -2232,11 +2252,12 @@ return ( ia ); unixtime Dictionary::lookup_unixtime(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -ConcatString cs = lookup_string(name, error_out, print_warning); +ConcatString cs = lookup_string(name, error_out, print_warning, search_parent); if ( cs.empty() ) return ( (unixtime) 0 ); else return ( timestring_to_unix( cs.c_str() ) ); @@ -2248,11 +2269,12 @@ else return ( timestring_to_unix( cs.c_str() ) ); TimeArray Dictionary::lookup_unixtime_array(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -StringArray sa = lookup_string_array(name, error_out, print_warning); +StringArray sa = lookup_string_array(name, error_out, print_warning, search_parent); TimeArray ta; int j; @@ -2269,11 +2291,12 @@ return ( ta ); PiecewiseLinear *Dictionary::lookup_pwl(const char * name, bool error_out, - bool print_warning) + bool print_warning, + bool search_parent) { -const DictionaryEntry * Entry = lookup(name); +const DictionaryEntry * Entry = lookup(name, search_parent); bool is_correct_type = false; if ( Entry ) { diff --git a/src/basic/vx_config/dictionary.h b/src/basic/vx_config/dictionary.h index 4265b7c3d1..45ed66e946 100644 --- a/src/basic/vx_config/dictionary.h +++ b/src/basic/vx_config/dictionary.h @@ -179,6 +179,8 @@ static const bool default_dictionary_error_out = true; static const bool default_dictionary_print_warning = true; +static const bool default_dictionary_search_parent = true; + //////////////////////////////////////////////////////////////////////// @@ -195,7 +197,8 @@ class Dictionary { void patch_parents(); - virtual const DictionaryEntry * lookup_simple(const std::string name); // no scope + virtual const DictionaryEntry * lookup_simple(const std::string name, + bool search_parent = true); // no scope int Nentries; @@ -253,7 +256,7 @@ class Dictionary { virtual void store(const Dictionary &); - virtual const DictionaryEntry * lookup(const std::string name); + virtual const DictionaryEntry * lookup(const std::string name, bool search_parent = true); // // convenience functions @@ -261,43 +264,56 @@ class Dictionary { bool lookup_bool (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); int lookup_int (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); double lookup_double (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); NumArray lookup_num_array (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); IntArray lookup_int_array (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); ConcatString lookup_string (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); StringArray lookup_string_array (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); SingleThresh lookup_thresh (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); ThreshArray lookup_thresh_array (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); int lookup_seconds (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); IntArray lookup_seconds_array (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); unixtime lookup_unixtime (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); TimeArray lookup_unixtime_array (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); // // return value not allocated @@ -305,13 +321,16 @@ class Dictionary { Dictionary * lookup_dictionary (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); Dictionary * lookup_array (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); PiecewiseLinear * lookup_pwl (const char * name, bool error_out = default_dictionary_error_out, - bool print_warning = default_dictionary_print_warning); + bool print_warning = default_dictionary_print_warning, + bool search_parent = default_dictionary_search_parent); }; diff --git a/src/libcode/vx_statistics/read_climo.cc b/src/libcode/vx_statistics/read_climo.cc index 142833337f..47666cafe3 100644 --- a/src/libcode/vx_statistics/read_climo.cc +++ b/src/libcode/vx_statistics/read_climo.cc @@ -299,6 +299,26 @@ DataPlaneArray climo_time_interp(const DataPlaneArray &dpa, int day_ts, } // For exactly 2 fields, do a simple time interpolation. else if(it->second.n() == 2) { + + // If the valid time falls outside the climo times, shift them. + if(vld_ut < min(dpa[it->second[0]].valid(), dpa[it->second[1]].valid()) || + vld_ut > max(dpa[it->second[0]].valid(), dpa[it->second[1]].valid())) { + + unixtime ut1 = dpa[it->second[0]].valid(); + unixtime ut2 = dpa[it->second[1]].valid(); + + int shift_sec = day_of_year_diff(min(ut1, ut2), vld_ut) * sec_per_day; + + mlog << Debug(3) + << "Shifting climatology times " << shift_sec / sec_per_day + << " day(s) from " << unix_to_yyyymmdd_hhmmss(ut1) + << " to " << unix_to_yyyymmdd_hhmmss(ut1 + shift_sec) + << " and " << unix_to_yyyymmdd_hhmmss(ut2) + << " to " << unix_to_yyyymmdd_hhmmss(ut2 + shift_sec) << ".\n"; + dpa[it->second[0]].set_valid(ut1 + shift_sec); + dpa[it->second[1]].set_valid(ut2 + shift_sec); + } + mlog << Debug(3) << "Interpolating climatology fields at " << unix_to_yyyymmdd_hhmmss(dpa[it->second[0]].valid()) From 272f41d5980e5b12dad5e77fe6c3821b51002c54 Mon Sep 17 00:00:00 2001 From: John Halley Gotway Date: Wed, 15 Feb 2023 17:24:00 -0700 Subject: [PATCH 30/30] Hotfix for main_v11.0, for #2437, forgot one reference to the search_parent for a dictionary lookup. --- src/basic/vx_config/dictionary.cc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/basic/vx_config/dictionary.cc b/src/basic/vx_config/dictionary.cc index 90fae2a93a..9a738810f3 100644 --- a/src/basic/vx_config/dictionary.cc +++ b/src/basic/vx_config/dictionary.cc @@ -1387,7 +1387,7 @@ const DictionaryEntry * E = (const DictionaryEntry *) 0; if ( search_parent ) { - if ( Parent ) E = Parent->lookup(name); + if ( Parent ) E = Parent->lookup(name, search_parent); } //