From 3c8c0847a0e8f7e12f600d96d1315fe9ff6abd08 Mon Sep 17 00:00:00 2001 From: Tony Craig Date: Thu, 7 Sep 2023 14:20:45 -0700 Subject: [PATCH 1/3] Update Cheyenne and Derecho port (#456) * Update port to Cheyenne and Derecho All results are bit-for-bit except some pgi tests. All machine/compiler combinations pass all tests. Update cheyenne gnu, intel, pgi compiler version Minor update to Derecho intel Add Derecho cray, gnu, intelclassic, inteloneapi, nvhpc * Add Derecho machine files --- .../scripts/machines/Macros.derecho_cray | 47 ++++++++++++++++ .../scripts/machines/Macros.derecho_gnu | 47 ++++++++++++++++ .../scripts/machines/Macros.derecho_intel | 2 +- .../machines/Macros.derecho_intelclassic | 49 +++++++++++++++++ .../machines/Macros.derecho_inteloneapi | 49 +++++++++++++++++ .../scripts/machines/Macros.derecho_nvhpc | 53 +++++++++++++++++++ .../scripts/machines/env.cheyenne_gnu | 12 ++--- .../scripts/machines/env.cheyenne_intel | 12 ++--- .../scripts/machines/env.cheyenne_pgi | 12 ++--- .../scripts/machines/env.derecho_cray | 51 ++++++++++++++++++ .../scripts/machines/env.derecho_gnu | 51 ++++++++++++++++++ .../scripts/machines/env.derecho_intelclassic | 51 ++++++++++++++++++ .../scripts/machines/env.derecho_inteloneapi | 51 ++++++++++++++++++ .../scripts/machines/env.derecho_nvhpc | 51 ++++++++++++++++++ 14 files changed, 519 insertions(+), 19 deletions(-) create mode 100644 configuration/scripts/machines/Macros.derecho_cray create mode 100644 configuration/scripts/machines/Macros.derecho_gnu create mode 100644 configuration/scripts/machines/Macros.derecho_intelclassic create mode 100644 configuration/scripts/machines/Macros.derecho_inteloneapi create mode 100644 configuration/scripts/machines/Macros.derecho_nvhpc create mode 100644 configuration/scripts/machines/env.derecho_cray create mode 100644 configuration/scripts/machines/env.derecho_gnu create mode 100644 configuration/scripts/machines/env.derecho_intelclassic create mode 100644 configuration/scripts/machines/env.derecho_inteloneapi create mode 100644 configuration/scripts/machines/env.derecho_nvhpc diff --git a/configuration/scripts/machines/Macros.derecho_cray b/configuration/scripts/machines/Macros.derecho_cray new file mode 100644 index 000000000..1ead7f5c8 --- /dev/null +++ b/configuration/scripts/machines/Macros.derecho_cray @@ -0,0 +1,47 @@ +#============================================================================== +# Makefile macros for NCAR derecho, cray compiler +#============================================================================== + +CPP := ftn -e P +CPPDEFS := -DFORTRANUNDERSCORE -DNO_R16 ${ICE_CPPDEFS} +CFLAGS := -c -O2 + +FIXEDFLAGS := -132 +FREEFLAGS := +FFLAGS := -hbyteswapio +FFLAGS_NOOPT:= -O0 + +ifeq ($(ICE_BLDDEBUG), true) + FFLAGS += -O0 -hfp0 -g -Rbcdps -Ktrap=fp +else + FFLAGS += -O2 -hfp0 # -eo +endif + +SCC := cc +SFC := ftn +CC := $(SCC) +FC := $(SFC) +LD := $(FC) + +NETCDF_PATH := $(NETCDF) + +#PIO_CONFIG_OPTS:= --enable-filesystem-hints=gpfs + +#PNETCDF_PATH := $(PNETCDF) +#PNETCDF_PATH := /glade/u/apps/ch/opt/pio/2.2/mpt/2.15f/intel/17.0.1/lib + +INCLDIR := $(INCLDIR) + +LIB_NETCDF := $(NETCDF)/lib +#LIB_PNETCDF := $(PNETCDF_PATH)/lib +#LIB_MPI := $(IMPILIBDIR) + +#SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff -L$(LIB_PNETCDF) -lpnetcdf -lgptl +SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff + +ifeq ($(ICE_THREADED), true) + LDFLAGS += -qopenmp + CFLAGS += -qopenmp + FFLAGS += -qopenmp +endif + diff --git a/configuration/scripts/machines/Macros.derecho_gnu b/configuration/scripts/machines/Macros.derecho_gnu new file mode 100644 index 000000000..103ff8cdf --- /dev/null +++ b/configuration/scripts/machines/Macros.derecho_gnu @@ -0,0 +1,47 @@ +#============================================================================== +# Makefile macros for NCAR derecho, gnu compiler +#============================================================================== + +CPP := ftn -E +CPPDEFS := -DFORTRANUNDERSCORE ${ICE_CPPDEFS} +CFLAGS := -c + +FIXEDFLAGS := -ffixed-line-length-132 +FREEFLAGS := -ffree-form +FFLAGS := -fconvert=big-endian -fbacktrace -ffree-line-length-none -fallow-argument-mismatch +FFLAGS_NOOPT:= -O0 + +ifeq ($(ICE_BLDDEBUG), true) + FFLAGS += -O0 -g -fcheck=bounds -finit-real=nan -fimplicit-none -ffpe-trap=invalid,zero,overflow --std f2008 +# FFLAGS += -O0 -g -fcheck=all -finit-real=snan -fimplicit-none -ffpe-trap=invalid,zero,overflow + CFLAGS += -O0 +endif + +SCC := gcc +SFC := gfortran +CC := $(SCC) +FC := $(SFC) +LD := $(FC) + +NETCDF_PATH := $(NETCDF) + +#PIO_CONFIG_OPTS:= --enable-filesystem-hints=gpfs + +#PNETCDF_PATH := $(PNETCDF) +#PNETCDF_PATH := /glade/u/apps/ch/opt/pio/2.2/mpt/2.15f/intel/17.0.1/lib + +INCLDIR := $(INCLDIR) + +LIB_NETCDF := $(NETCDF)/lib +#LIB_PNETCDF := $(PNETCDF_PATH)/lib +#LIB_MPI := $(IMPILIBDIR) + +#SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff -L$(LIB_PNETCDF) -lpnetcdf -lgptl +SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff + +ifeq ($(ICE_THREADED), true) + LDFLAGS += -qopenmp + CFLAGS += -qopenmp + FFLAGS += -qopenmp +endif + diff --git a/configuration/scripts/machines/Macros.derecho_intel b/configuration/scripts/machines/Macros.derecho_intel index 27c9a118c..d8d5efc78 100644 --- a/configuration/scripts/machines/Macros.derecho_intel +++ b/configuration/scripts/machines/Macros.derecho_intel @@ -1,5 +1,5 @@ #============================================================================== -# Makefile macros for NCAR cheyenne, intel compiler +# Makefile macros for NCAR derecho, intel compiler #============================================================================== CPP := fpp diff --git a/configuration/scripts/machines/Macros.derecho_intelclassic b/configuration/scripts/machines/Macros.derecho_intelclassic new file mode 100644 index 000000000..85b2faacb --- /dev/null +++ b/configuration/scripts/machines/Macros.derecho_intelclassic @@ -0,0 +1,49 @@ +#============================================================================== +# Makefile macros for NCAR derecho, intelclassic compiler +#============================================================================== + +CPP := fpp +CPPDEFS := -DFORTRANUNDERSCORE ${ICE_CPPDEFS} +CFLAGS := -c -O2 -fp-model precise -march=core-avx2 + +FIXEDFLAGS := -fixed -132 +FREEFLAGS := -free +FFLAGS := -fp-model precise -convert big_endian -assume byterecl -ftz -traceback -march=core-avx2 +FFLAGS_NOOPT:= -O0 + +ifeq ($(ICE_BLDDEBUG), true) + FFLAGS += -O0 -g -check uninit -check bounds -check pointers -fpe0 -check noarg_temp_created -link_mpi=dbg +# FFLAGS += -O0 -g -check all -fpe0 -ftrapuv -fp-model except -check noarg_temp_created -link_mpi=dbg -stand f08 +# FFLAGS += -O0 -g -check all -fpe0 -ftrapuv -fp-model except -check noarg_temp_created -init=snan,arrays -link_mpi=dbg +else + FFLAGS += -O2 +endif + +SCC := icc +SFC := ifort +CC := $(SCC) +FC := $(SFC) +LD := $(FC) + +NETCDF_PATH := $(NETCDF) + +#PIO_CONFIG_OPTS:= --enable-filesystem-hints=gpfs + +#PNETCDF_PATH := $(PNETCDF) +#PNETCDF_PATH := /glade/u/apps/ch/opt/pio/2.2/mpt/2.15f/intel/17.0.1/lib + +INCLDIR := $(INCLDIR) + +LIB_NETCDF := $(NETCDF)/lib +#LIB_PNETCDF := $(PNETCDF_PATH)/lib +#LIB_MPI := $(IMPILIBDIR) + +#SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff -L$(LIB_PNETCDF) -lpnetcdf -lgptl +SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff + +ifeq ($(ICE_THREADED), true) + LDFLAGS += -qopenmp + CFLAGS += -qopenmp + FFLAGS += -qopenmp +endif + diff --git a/configuration/scripts/machines/Macros.derecho_inteloneapi b/configuration/scripts/machines/Macros.derecho_inteloneapi new file mode 100644 index 000000000..df7d5b42f --- /dev/null +++ b/configuration/scripts/machines/Macros.derecho_inteloneapi @@ -0,0 +1,49 @@ +#============================================================================== +# Makefile macros for NCAR derecho, inteloneapi compiler +#============================================================================== + +CPP := fpp +CPPDEFS := -DFORTRANUNDERSCORE ${ICE_CPPDEFS} +CFLAGS := -c -O2 -fp-model precise -march=core-avx2 + +FIXEDFLAGS := -fixed -132 +FREEFLAGS := -free +FFLAGS := -fp-model precise -convert big_endian -assume byterecl -ftz -traceback -march=core-avx2 +FFLAGS_NOOPT:= -O0 + +ifeq ($(ICE_BLDDEBUG), true) + FFLAGS += -O0 -g -check uninit -check bounds -check pointers -fpe0 -check noarg_temp_created -link_mpi=dbg +# FFLAGS += -O0 -g -check all -fpe0 -ftrapuv -fp-model except -check noarg_temp_created -link_mpi=dbg -stand f08 +# FFLAGS += -O0 -g -check all -fpe0 -ftrapuv -fp-model except -check noarg_temp_created -init=snan,arrays -link_mpi=dbg +else + FFLAGS += -O2 +endif + +SCC := icx +SFC := ifx +CC := $(SCC) +FC := $(SFC) +LD := $(FC) + +NETCDF_PATH := $(NETCDF) + +#PIO_CONFIG_OPTS:= --enable-filesystem-hints=gpfs + +#PNETCDF_PATH := $(PNETCDF) +#PNETCDF_PATH := /glade/u/apps/ch/opt/pio/2.2/mpt/2.15f/intel/17.0.1/lib + +INCLDIR := $(INCLDIR) + +LIB_NETCDF := $(NETCDF)/lib +#LIB_PNETCDF := $(PNETCDF_PATH)/lib +#LIB_MPI := $(IMPILIBDIR) + +#SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff -L$(LIB_PNETCDF) -lpnetcdf -lgptl +SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff + +ifeq ($(ICE_THREADED), true) + LDFLAGS += -qopenmp + CFLAGS += -qopenmp + FFLAGS += -qopenmp +endif + diff --git a/configuration/scripts/machines/Macros.derecho_nvhpc b/configuration/scripts/machines/Macros.derecho_nvhpc new file mode 100644 index 000000000..3478b8516 --- /dev/null +++ b/configuration/scripts/machines/Macros.derecho_nvhpc @@ -0,0 +1,53 @@ +#============================================================================== +# Makefile macros for NCAR derecho, nvhpc compiler +#============================================================================== + +CPP := nvc -Mcpp +CPPDEFS := -DFORTRANUNDERSCORE -DNO_R16 ${ICE_CPPDEFS} +CFLAGS := -c -Kieee + +FIXEDFLAGS := -Mfixed +FREEFLAGS := -Mfree +FFLAGS := -Kieee -byteswapio -traceback +FFLAGS_NOOPT:= -O0 + +ifeq ($(ICE_BLDDEBUG), true) +# FFLAGS += -O0 -g -Ktrap=fp -Mbounds -Mchkptr +# FFLAGS += -O0 -g -Ktrap=fp -Mbounds +# FFLAGS += -O0 -Ktrap=fp -Mbounds -Mchkptr + FFLAGS += -O0 -Ktrap=fp + CFLAGS += -O0 +else +# FFLAGS += -O2 -Mnofma -target=zen3 + FFLAGS += -O2 + CFLAGS += -O2 +endif + +SCC := nvc +SFC := nvfortran +CC := $(SCC) +FC := $(SFC) +LD := $(FC) + +NETCDF_PATH := $(NETCDF) + +#PIO_CONFIG_OPTS:= --enable-filesystem-hints=gpfs + +#PNETCDF_PATH := $(PNETCDF) +#PNETCDF_PATH := /glade/u/apps/ch/opt/pio/2.2/mpt/2.15f/intel/17.0.1/lib + +INCLDIR := $(INCLDIR) + +LIB_NETCDF := $(NETCDF)/lib +#LIB_PNETCDF := $(PNETCDF_PATH)/lib +#LIB_MPI := $(IMPILIBDIR) + +#SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff -L$(LIB_PNETCDF) -lpnetcdf -lgptl +SLIBS := -L$(LIB_NETCDF) -lnetcdf -lnetcdff + +ifeq ($(ICE_THREADED), true) + LDFLAGS += -qopenmp + CFLAGS += -qopenmp + FFLAGS += -qopenmp +endif + diff --git a/configuration/scripts/machines/env.cheyenne_gnu b/configuration/scripts/machines/env.cheyenne_gnu index 7e9f18215..ab08fbcbf 100755 --- a/configuration/scripts/machines/env.cheyenne_gnu +++ b/configuration/scripts/machines/env.cheyenne_gnu @@ -7,21 +7,21 @@ endif if ("$inp" != "-nomodules") then -source /glade/u/apps/ch/opt/lmod/7.2.1/lmod/7.2.1/init/csh +source ${MODULESHOME}/init/csh module purge -module load ncarenv/1.2 -module load gnu/8.3.0 -module load mpt/2.19 +module load ncarenv/1.3 +module load gnu/10.1.0 +module load mpt/2.25 module load ncarcompilers/0.5.0 -module load netcdf/4.6.3 +module load netcdf/4.8.1 endif setenv ICE_MACHINE_MACHNAME cheyenne setenv ICE_MACHINE_MACHINFO "SGI ICE XA Xeon E5-2697V4 Broadwell" setenv ICE_MACHINE_ENVNAME gnu -setenv ICE_MACHINE_ENVINFO "GNU Fortran (GCC) 8.3.0" +setenv ICE_MACHINE_ENVINFO "GNU Fortran (GCC) 10.1.0" setenv ICE_MACHINE_MAKE gmake setenv ICE_MACHINE_WKDIR /glade/scratch/$user/ICEPACK_RUNS setenv ICE_MACHINE_INPUTDATA /glade/p/cesm/pcwg_dev diff --git a/configuration/scripts/machines/env.cheyenne_intel b/configuration/scripts/machines/env.cheyenne_intel index 4aaf7cf26..b9975527b 100755 --- a/configuration/scripts/machines/env.cheyenne_intel +++ b/configuration/scripts/machines/env.cheyenne_intel @@ -7,21 +7,21 @@ endif if ("$inp" != "-nomodules") then -source /glade/u/apps/ch/opt/lmod/7.2.1/lmod/7.2.1/init/csh +source ${MODULESHOME}/init/csh module purge -module load ncarenv/1.2 -module load intel/19.0.2 -module load mpt/2.19 +module load ncarenv/1.3 +module load intel/19.1.1 +module load mpt/2.25 module load ncarcompilers/0.5.0 -module load netcdf/4.6.3 +module load netcdf/4.8.1 endif setenv ICE_MACHINE_MACHNAME cheyenne setenv ICE_MACHINE_MACHINFO "SGI ICE XA Xeon E5-2697V4 Broadwell" setenv ICE_MACHINE_ENVNAME intel -setenv ICE_MACHINE_ENVINFO "ifort 19.0.2.187 20190117" +setenv ICE_MACHINE_ENVINFO "ifort 19.1.1.217 20200306" setenv ICE_MACHINE_MAKE gmake setenv ICE_MACHINE_WKDIR /glade/scratch/$user/ICEPACK_RUNS setenv ICE_MACHINE_INPUTDATA /glade/p/cesm/pcwg_dev diff --git a/configuration/scripts/machines/env.cheyenne_pgi b/configuration/scripts/machines/env.cheyenne_pgi index 51d4d1679..05a902bad 100755 --- a/configuration/scripts/machines/env.cheyenne_pgi +++ b/configuration/scripts/machines/env.cheyenne_pgi @@ -7,21 +7,21 @@ endif if ("$inp" != "-nomodules") then -source /glade/u/apps/ch/opt/lmod/7.2.1/lmod/7.2.1/init/csh +source ${MODULESHOME}/init/csh module purge -module load ncarenv/1.2 -module load pgi/19.9 -module load mpt/2.21 +module load ncarenv/1.3 +module load pgi/20.4 +module load mpt/2.22 module load ncarcompilers/0.5.0 -module load netcdf/4.7.3 +module load netcdf/4.7.4 endif setenv ICE_MACHINE_MACHNAME cheyenne setenv ICE_MACHINE_MACHINFO "SGI ICE XA Xeon E5-2697V4 Broadwell" setenv ICE_MACHINE_ENVNAME pgi -setenv ICE_MACHINE_ENVINFO "pgf90 19.9-0" +setenv ICE_MACHINE_ENVINFO "pgf90 20.4-0" setenv ICE_MACHINE_MAKE gmake setenv ICE_MACHINE_WKDIR /glade/scratch/$user/ICEPACK_RUNS setenv ICE_MACHINE_INPUTDATA /glade/p/cesm/pcwg_dev diff --git a/configuration/scripts/machines/env.derecho_cray b/configuration/scripts/machines/env.derecho_cray new file mode 100644 index 000000000..1fc814594 --- /dev/null +++ b/configuration/scripts/machines/env.derecho_cray @@ -0,0 +1,51 @@ +#!/bin/csh -f + +set inp = "undefined" +if ($#argv == 1) then + set inp = $1 +endif + +if ("$inp" != "-nomodules") then + +source ${MODULESHOME}/init/csh + +module --force purge +module load ncarenv/23.06 +module load craype +module load cce/15.0.1 +module load ncarcompilers +#module load cray-mpich/8.1.25 +#module load hdf5/1.12.2 +module load netcdf/4.9.2 +module load cray-libsci/23.02.1.1 + +# For perftools with mpiexec +# module load perftools-base +# module load perftools +#setenv PALS_TRANSFER FALSE + +endif + +limit coredumpsize unlimited +limit stacksize unlimited +setenv PALS_QUIET TRUE + +# May be needed for OpenMP memory +setenv OMP_STACKSIZE 64M +# OMP runtime diagnostics +#setenv OMP_DISPLAY_ENV TRUE + +setenv ICE_MACHINE_MACHNAME derecho +setenv ICE_MACHINE_MACHINFO "HPE Cray EX Milan Slingshot 11" +setenv ICE_MACHINE_ENVNAME cray +setenv ICE_MACHINE_ENVINFO "cce 15.0.1, netcdf4.9.2" +setenv ICE_MACHINE_MAKE gmake +setenv ICE_MACHINE_WKDIR /glade/derecho/scratch/$user/ICEPACK_RUNS +setenv ICE_MACHINE_INPUTDATA /glade/p/cesm/pcwg_dev +setenv ICE_MACHINE_BASELINE /glade/derecho/scratch/$user/ICEPACK_BASELINE +setenv ICE_MACHINE_SUBMIT "qsub" +setenv ICE_MACHINE_ACCT P00000000 +setenv ICE_MACHINE_QUEUE "main" +setenv ICE_MACHINE_TPNODE 128 +setenv ICE_MACHINE_BLDTHRDS 1 +setenv ICE_MACHINE_QSTAT "qstat " diff --git a/configuration/scripts/machines/env.derecho_gnu b/configuration/scripts/machines/env.derecho_gnu new file mode 100644 index 000000000..3c45d71bf --- /dev/null +++ b/configuration/scripts/machines/env.derecho_gnu @@ -0,0 +1,51 @@ +#!/bin/csh -f + +set inp = "undefined" +if ($#argv == 1) then + set inp = $1 +endif + +if ("$inp" != "-nomodules") then + +source ${MODULESHOME}/init/csh + +module --force purge +module load ncarenv/23.06 +module load craype +module load gcc/12.2.0 +module load ncarcompilers +#module load cray-mpich/8.1.25 +#module load hdf5/1.12.2 +module load netcdf/4.9.2 +module load cray-libsci/23.02.1.1 + +# For perftools with mpiexec +# module load perftools-base +# module load perftools +#setenv PALS_TRANSFER FALSE + +endif + +limit coredumpsize unlimited +limit stacksize unlimited +setenv PALS_QUIET TRUE + +# May be needed for OpenMP memory +setenv OMP_STACKSIZE 64M +# OMP runtime diagnostics +#setenv OMP_DISPLAY_ENV TRUE + +setenv ICE_MACHINE_MACHNAME derecho +setenv ICE_MACHINE_MACHINFO "HPE Cray EX Milan Slingshot 11" +setenv ICE_MACHINE_ENVNAME gnu +setenv ICE_MACHINE_ENVINFO "gcc 12.2.0 20220819, netcdf4.9.2" +setenv ICE_MACHINE_MAKE gmake +setenv ICE_MACHINE_WKDIR /glade/derecho/scratch/$user/ICEPACK_RUNS +setenv ICE_MACHINE_INPUTDATA /glade/p/cesm/pcwg_dev +setenv ICE_MACHINE_BASELINE /glade/derecho/scratch/$user/ICEPACK_BASELINE +setenv ICE_MACHINE_SUBMIT "qsub" +setenv ICE_MACHINE_ACCT P00000000 +setenv ICE_MACHINE_QUEUE "main" +setenv ICE_MACHINE_TPNODE 128 +setenv ICE_MACHINE_BLDTHRDS 1 +setenv ICE_MACHINE_QSTAT "qstat " diff --git a/configuration/scripts/machines/env.derecho_intelclassic b/configuration/scripts/machines/env.derecho_intelclassic new file mode 100644 index 000000000..7bd8e5dff --- /dev/null +++ b/configuration/scripts/machines/env.derecho_intelclassic @@ -0,0 +1,51 @@ +#!/bin/csh -f + +set inp = "undefined" +if ($#argv == 1) then + set inp = $1 +endif + +if ("$inp" != "-nomodules") then + +source ${MODULESHOME}/init/csh + +module --force purge +module load ncarenv/23.06 +module load craype +module load intel-classic/2023.0.0 +module load ncarcompilers +#module load cray-mpich/8.1.25 +#module load hdf5/1.12.2 +module load netcdf/4.9.2 +#module load cray-libsci/23.02.1.1 + +# For perftools with mpiexec +# module load perftools-base +# module load perftools +#setenv PALS_TRANSFER FALSE + +endif + +limit coredumpsize unlimited +limit stacksize unlimited +setenv PALS_QUIET TRUE + +# May be needed for OpenMP memory +setenv OMP_STACKSIZE 64M +# OMP runtime diagnostics +#setenv OMP_DISPLAY_ENV TRUE + +setenv ICE_MACHINE_MACHNAME derecho +setenv ICE_MACHINE_MACHINFO "HPE Cray EX Milan Slingshot 11" +setenv ICE_MACHINE_ENVNAME intelclassic +setenv ICE_MACHINE_ENVINFO "icc/ifort 2021.8.0 20221119, netcdf4.9.2" +setenv ICE_MACHINE_MAKE gmake +setenv ICE_MACHINE_WKDIR /glade/derecho/scratch/$user/ICEPACK_RUNS +setenv ICE_MACHINE_INPUTDATA /glade/p/cesm/pcwg_dev +setenv ICE_MACHINE_BASELINE /glade/derecho/scratch/$user/ICEPACK_BASELINE +setenv ICE_MACHINE_SUBMIT "qsub" +setenv ICE_MACHINE_ACCT P00000000 +setenv ICE_MACHINE_QUEUE "main" +setenv ICE_MACHINE_TPNODE 128 +setenv ICE_MACHINE_BLDTHRDS 1 +setenv ICE_MACHINE_QSTAT "qstat " diff --git a/configuration/scripts/machines/env.derecho_inteloneapi b/configuration/scripts/machines/env.derecho_inteloneapi new file mode 100644 index 000000000..09cdf7291 --- /dev/null +++ b/configuration/scripts/machines/env.derecho_inteloneapi @@ -0,0 +1,51 @@ +#!/bin/csh -f + +set inp = "undefined" +if ($#argv == 1) then + set inp = $1 +endif + +if ("$inp" != "-nomodules") then + +source ${MODULESHOME}/init/csh + +module --force purge +module load ncarenv/23.06 +module load craype +module load intel-oneapi/2023.0.0 +module load ncarcompilers +#module load cray-mpich/8.1.25 +#module load hdf5/1.12.2 +module load netcdf/4.9.2 +module load cray-libsci/23.02.1.1 + +# For perftools with mpiexec +# module load perftools-base +# module load perftools +#setenv PALS_TRANSFER FALSE + +endif + +limit coredumpsize unlimited +limit stacksize unlimited +setenv PALS_QUIET TRUE + +# May be needed for OpenMP memory +setenv OMP_STACKSIZE 64M +# OMP runtime diagnostics +#setenv OMP_DISPLAY_ENV TRUE + +setenv ICE_MACHINE_MACHNAME derecho +setenv ICE_MACHINE_MACHINFO "HPE Cray EX Milan Slingshot 11" +setenv ICE_MACHINE_ENVNAME inteloneapi +setenv ICE_MACHINE_ENVINFO "ifx 2023.0.0 20221201, netcdf4.9.2" +setenv ICE_MACHINE_MAKE gmake +setenv ICE_MACHINE_WKDIR /glade/derecho/scratch/$user/ICEPACK_RUNS +setenv ICE_MACHINE_INPUTDATA /glade/p/cesm/pcwg_dev +setenv ICE_MACHINE_BASELINE /glade/derecho/scratch/$user/ICEPACK_BASELINE +setenv ICE_MACHINE_SUBMIT "qsub" +setenv ICE_MACHINE_ACCT P00000000 +setenv ICE_MACHINE_QUEUE "main" +setenv ICE_MACHINE_TPNODE 128 +setenv ICE_MACHINE_BLDTHRDS 1 +setenv ICE_MACHINE_QSTAT "qstat " diff --git a/configuration/scripts/machines/env.derecho_nvhpc b/configuration/scripts/machines/env.derecho_nvhpc new file mode 100644 index 000000000..32f4d1aca --- /dev/null +++ b/configuration/scripts/machines/env.derecho_nvhpc @@ -0,0 +1,51 @@ +#!/bin/csh -f + +set inp = "undefined" +if ($#argv == 1) then + set inp = $1 +endif + +if ("$inp" != "-nomodules") then + +source ${MODULESHOME}/init/csh + +module --force purge +module load ncarenv/23.06 +module load craype +module load nvhpc/23.5 +module load ncarcompilers +#module load cray-mpich/8.1.25 +#module load hdf5/1.12.2 +module load netcdf/4.9.2 +module load cray-libsci/23.02.1.1 + +# For perftools with mpiexec +# module load perftools-base +# module load perftools +#setenv PALS_TRANSFER FALSE + +endif + +limit coredumpsize unlimited +limit stacksize unlimited +setenv PALS_QUIET TRUE + +# May be needed for OpenMP memory +setenv OMP_STACKSIZE 64M +# OMP runtime diagnostics +#setenv OMP_DISPLAY_ENV TRUE + +setenv ICE_MACHINE_MACHNAME derecho +setenv ICE_MACHINE_MACHINFO "HPE Cray EX Milan Slingshot 11" +setenv ICE_MACHINE_ENVNAME nvhpc +setenv ICE_MACHINE_ENVINFO "nvc 23.5-0, netcdf4.9.2" +setenv ICE_MACHINE_MAKE gmake +setenv ICE_MACHINE_WKDIR /glade/derecho/scratch/$user/ICEPACK_RUNS +setenv ICE_MACHINE_INPUTDATA /glade/p/cesm/pcwg_dev +setenv ICE_MACHINE_BASELINE /glade/derecho/scratch/$user/ICEPACK_BASELINE +setenv ICE_MACHINE_SUBMIT "qsub" +setenv ICE_MACHINE_ACCT P00000000 +setenv ICE_MACHINE_QUEUE "main" +setenv ICE_MACHINE_TPNODE 128 +setenv ICE_MACHINE_BLDTHRDS 1 +setenv ICE_MACHINE_QSTAT "qstat " From b2bd1a4e665e7f98f71c46c03903d60db14a59cb Mon Sep 17 00:00:00 2001 From: Tony Craig Date: Thu, 7 Sep 2023 16:55:45 -0700 Subject: [PATCH 2/3] Update version to 1.3.4 (#457) * Update version to 1.3.4 Update License and Copyright to 2023 Update icepack interface documentation * Update one more 2022 to 2023 copyright --- LICENSE.pdf | Bin 113509 -> 55036 bytes columnphysics/icepack_intfc.F90 | 4 ++-- columnphysics/version.txt | 2 +- configuration/driver/icedrv_MAIN.F90 | 4 ++-- doc/source/conf.py | 6 +++--- doc/source/intro/copyright.rst | 2 +- doc/source/user_guide/interfaces.include | 4 ++-- 7 files changed, 11 insertions(+), 11 deletions(-) diff --git a/LICENSE.pdf b/LICENSE.pdf index d98d3da80d4be814224a113d781d15426d4bbf6d..80ae31d5183808e151adbeca14f21d7b66e4761a 100644 GIT binary patch literal 55036 zcmaI6b8zHg(=HsF8+&5gw#|)=jWN;2wv*i?8*OZRW81cEJM-mv&wI{$>iqFlO;!K8 z`|7LjyK8Eurmvw?k&t3!W#T}foI5+&L0|>2031zi5CjC6HLP9jEC4hLvf`3T>XNhw z%qlL9=5A&dE&v*JTWb^MuR?%5D=QB`+R@SK3n}4f1_Y>CIG9_wSh&y%2_bwv{)dYF ze<;mN0IUeiVu}D}B}W%~6TANbas3ZS%G%ELs|mA|or$Z3goT--xdj5Vf`x;X>kj}I z3k#=^5CG`vVqs#B;F)=0pchZn>g<k)4kjA#tNqLh7UCB2+gd;%)bJq) zk~SO9+I*t)aLDp0J=)U41krbX!>*3WXyZg^waXvymNWbODGYkM^uH3D8C$3ZIpUmj zg5IwDJN=*guKc^+_HyPvwm?@^AVb+q2H!ZypxgBU$RY8M2-Tgrz3*dQ%Av@~RGLkq*uY`J}5?rvZYe)v}{HRk?Pxb3>dPawByWKy5B-3d+eTvxcH!{xO7cYDh z#uWFb|FwZH*E&~_Hfyk5f4tl*%S4*KT)LJu!^9&t5K}^~6Zv7X^HL;#|6~0-d!=85 zd=w1!)-j%7F6H8M?&w)~zuLBiY`FX))x3#2hi+=1@Ni2Y585M6+-4lhxHMzro&G*C zH+}|N!qg%__&xsSdCwUcKZ+ISJM`uCX70oaPAYeFKFp6`j!2Gu4f*7chLKxvu1@uP zXcz)3`q$#*Ev@uSF?3EFFS9?Jm!$o*S%3fFtkP$l_>v7VibX#;+ONumn-}#WQ0T9KzIu(?<&YJoDLu%Roji)X^W6 zh#)Q_o)M6XH)l>r>(a}j|JUqn5EWSFtHO`B)T+O2)2E|51UGy~t< z5kv?fV+|WDT|Gke82?_8eBG0pQHACT9^OWU8Kp|23CDsqqH3_e{c1gaX7H3vKIvwa zRrUHrTI874CIUJ?3)(5Mna;O_5TNRGe=5OGuB2U6Dh@OD!KrPP7ZFVin-@MK#EC(~ z)~9WH6#q<2;;*sBw`UH3}xTgt22GE%&VzenS`_!@-xI9ypG4RBR=z zCspnUADEgv%Q+vkRgvwNK%!JS5-UUwHd)NPn|Y!>mI1QGC{mII`OXwDtR$cp25rB{ ze%}@_T_H84uXnQB0f78{)No|m%Zbmjgo-U&K# z*=@vZC`5pZ`{lI3rC|!+6aqmwX$_{$u|L?2;G_FAk9dqRMp=Ug9?^G;`84==`iC}c zl??FE(sJ9kK#_f#?k@7`;{tRH-N&|(li~1KOXc@by|~$fpZ}1mZQXx# z4ac|y9$?A@{Gmu7B1&>(yO;tE<}NvvH+2{Os65(T#4)x}%yklFnF|NqfLjbETttRE zlL+eS#posw>1qxpe3nmr%f%LtMn@1wLb`SC{SDK%9RUM0S#w>5N9g^QQC8#2L#cCk z0aa~0t}C8M7NGI4V$biz8CC(4ftXT$FxUq}1^ShCb z;03EslRC<-`xGPH@4sZWzw(=cx|}6XI4gbA;Gn(62AS}rn8jK~RwO(QPMVlYuas;l zAVN*Fx*j>Sjv4#$1k_%b=^30l8h%5%y$H4`8WqmoiRr&aHI;5pQ^ghQ5mC~=p?&S0 zK@Mnh-xVNwrg(U{313(H{dkXpmRqRb))=?1kbR_S$0(yYta>F6$dU2ON{s~&tHS5O zP-v0u5Qv@WW$yi9E89>ew$7zOad8)*BS#^Wry?`%^PSk8{m9B58D z7Fr>rwEpVQjOkJ;lV%?L1hemU0Bdw`5fJzHk;QxwifosYRDea%Ovb&1{-=(&%C)bR2scFd+$w_wOP4BAxhs=01Z=<4w{+O9xD3u9VcbBQ9KPFqP{3P$pl316TJS z{eo05xdO_Y?21(ysLTi%`Hft6g3QwY%yKDD4XIE`f}8JczjTspQ2v6;damd~etc@|{U z?A%mHe>#XF<64&%9_Z$Kn-#VB`#*+h|P&gnv)PATYZjVXD z&A-IQw+b)vHT7F=?##D5}+Spc6C_%eHkQYWm3Te^`g(-*qoCFE{ODliet0 zbyZI-hp%ltTy7_voi1~XaCNwQfpBcSyN%>FEg)a_RYBeWG?b~noF3#sC*#ELY$ zmTfI~BAR50=3N|}sPQuiN!DjKV}`+FQkux~>HagO`-<;SfUOoj*Y?4JoCf`9(yR{y zj_okrKTr>WqVZ2%@04~DejeI*-wyXQhWOHP4R%@@TclBOC|#7lj{gXJ0R>SzC;QhQ zp$CO^g^J_2KwVop671`6XrBh?b{l4u@(qg=w1}Hi@s7+ttU$GWvpAH8ID2FE@dmUY zcB5{%%UB5#IgWVlpe;K^-Nk7+#S>`zlT|CZ6ePm&^4daP*f?JBkWY-2SHy)}7yqojp zfRS27FOmb;LW%=F91ceoC!TxFQ?(~|j+eTjsOIb%Yq9o}l0}-PW&KPG z(FEKK(?7wu}0Ef8FaS%hh^ z17g8Yo>HvZkY9ABR+N;F!bBWMu7eO=hzWs@Wr>J(j=u z-pv1Tl1zAb_gs%%NwEJD^iEox-&!M+qfgG;A9$qn07dOkw^~X2U4**5Naw-wBIC7k zSUc^Bzg$QYITkuS@40@WEH#@(mJ|H?yg}zdaF6Stfk%6VI;T>{Ku~Ez#+JVo*d?P}nW*f%1#$ZC{$cS(N!l06v(klCAgILG39D5;G-&yZ{NPi+ zU1HjH*|a3<`=sSB`=~36GOtB4mC$uP1}qA$17&fKnQH-4{8)Vt>dtsuPa9>P$?k9_ z<@?LIOeDs$(H0Ybx{kI|{-S1Ph@or;NlDyvKHmb;o#ZKEsdOo$JBfekh2(_~qNz|6 zR?M`@sq;RfhbMYpCbZe4^ISXaj9IKcBnD012Hje!!>CQ%jVwfQas^;)WT>cdHmIFC zebx@h2tOGMt17sBj|#|bgUre06&EBbz}d{&3xEK+lVv2x4TB9eSLS)aVrhj;_){T= zF4tSaiLY_pa`DMcRcK=HHnAW5bMigeb4c`dt>U_Gbp~1Ecq{N$>}>J`s00j++*`j(@_k`RyWqXazs@7S?|+} z?->_vq>Hp%pr4>UCGC3hy9Se7*99(2i4u&$WJbbJ|DItovHXT7=tJ*jw34MeAuWSHS=wEZp_Gk;z(tMW|Md*0(A`y=*rb8f| zKuqzLZg*0hP8Aj@$b+zkgFyV7<-ofg_}C`m@7#b#YjAl^8bf(8wPtjHmm)dvR6Su$ z3^F6WhQbqq8(#i3j44ew1)1njE%DHj-$#=l$@PiS*d(BI;kT*SFwG1VXh(NbVBrK2llsm5Q8$HMhkTLj&SIBVI{ zk+6%5$;Xl~GCecVBwMAiM?f1x6T)zyr*Ys&?q%uEVdp&ZbouSonJdy#ct~RFjae~W z*%$4_)KbWy5sCCg6xiKm=!QAUndpI51WZqNte!Cad(?#m)gN(Aa{zd`FvGCF8!EpD z*JwLW907vTc~{3a(lhDNq(yhw$KUPD&e2+~#)G_8(G6i_CHQTA4Ms>Tr{Wg2dZbz( znCCpefRvL7qE>YyQs8f%P+7YOlK(iz{iPFlRQOZ$&-M7PKA|=IO5Zqj>uAy;uiKwEX?*|{FYK7`FnMLWUSGbi4A7~cTBMg=*?(nTA&UmY7 zQ>8+r72OY^fAH1sC2H1IE)y}Y-@`m2pryD-#Z+AF+V{M+kG6@tyURLY3B{!?hHnW> zm>GSsp;o0T0@gw1Rb2i(PXzh|*26R)0m)@;AiU|eSkq7;cP5bC_ne*DI|C4`zi4kF zF4{EM`0a_D{HR&pev4>sdo(ba>|}~S%nNpaNVen0ge^RRq@&gxqxwi{+;RloO>ZQx zkY)}xXwv*m7c22}&aj9GPbT=vHN|#r+N!Ue@9L2sOC6JcCIJ9_28-K*ud9sBH^eAh zwvB5QVerigk!-}T$asSXcKlJ1f;7l#b8sVKVv_wPj^`@Q3^MEB4+Oe6aoa%?X5sxT zF3lfS1bJe3#;R^35~PXLmKH<#X`ZQx07c1ma{klEL*XM1l*RtR9{4~Mu#mRA#rjId zUpBgj3oGM)J2=hQv zYI?lV6sB%szqXgRh{PMit0-!MIT$p&6q#moZM15uOLae{ zm&cUw$?KdX0Y>8J3>}CkBb|Zd^h-yz>$cZaF&!uPE)}5;qK+vxSJ;q+)0ZRt_^$4F z;=#CbOfC|ZePb5vj!pVgbfjvsh>S~t4o{!xm6H^^gc67vDYZP8ipvgmiV3R7S1thA zs~1xV-9%Zg%NDSj2ME=v9wwQ%YEZ}KJD&<#(Ymx7yD2UqPevbsIEU~#4yV5<34Rpj z&q-yIKiQ@Gu|M306g&z1pBZLq0a3ZiKuMa#3@;wxh-Cu2Bc+xVV)%dlr$xD82_46gB2f~DH0)<(c?RKXtzR_tqSkbUtY!rpwyw* z&%1dlZd(p%8$u1X{QgVvL7E&2tHveXv>M4ndha$CVem676z)xaAKUYD$6UJNx*#V( zx67!Op8oa?^`z2%5f#4=GN{}?;^y_OhH;#)>)PIo^SVceXd&Jt7_4kY+UxfUw>r^l zL&$gf$2aUeA&qTy>14({&yloMPbWve1E#9lKDX9JY6+9j+YXCGX7huY3}#8#jW_!8o2HqdkG8>lrXvh%|iQnIIi=0Lbla_jRQ zl4JI5v*-GDDt=lI}a1%u{rte}iC9%?|_o?&y=NOx+ zr8KUsp3Ww@ePeg4$EcrF;dj61)3eSh`|9;;x2ohQUx*Rl?^kDA;*;j@_GybVS6X@< z9{pF=2e4u^j~gRDEOVV8M27BOdxIHss275!F1vWzkCD{|*JWEhcv5uH`)pVFp`LVF z8vg3Zwq~U!-F>!-LhZaHPv5V|gSH|#|6G%KlW&!jBcrwG!P8xlubApj<{GHYDqH9? z^E@b8Sj_6Xcz;5kXRYqQrakrs|F%83kj>45CuzBGdlv2r{)DRhSG$o;rY7|up&ATz zkJ+z8IAY@heAb_d3rkaEZPZH4#B;f(2)XRZI=`}hA| z@U#8T?q1`klLdfT#l-4sWv^xdbaZnuvj76V#Dp*Hz)ao36`=QDvH`P(g{LckS=Rmw zDE8l0{J*WN0Rpq6r>nHO>(~1KKc&*_fd5DcYF}ajvy`KQ>wjWW8~~30#J(b&0M7rF z{ZC%e!ra(okA#ZIC1nB)|0BQzb{r`I)JpXT*xQVNY zouk!%+E{(fI9Yi)IKD3T|09L4bMUfp{NGy0dB;y<4ap{9zcPob zvy037?EB3VimZYRyM*b4j95k*)us?q@m`cX3Ok6Peyj+@n7vN0xZtq>vt%$BCrsbd zl9KIX8YXg{prBEty=|0}tI|_T;9s;T<2#CRgrf z(xH5CeKl-^Jp{`J@5SgN$^*lX-gn3}|FZ_lXrGUpcx4D&9Fq)^@$)pd1Al=(!CB>$ zU;_a<7l{1b;5K%`fd>ORcfTj}`F166L=^G5SF=~g_1;amEnyjP(hFZYhlW*&}KohWM^dBF{EUF56e+ND;`SBJdm-KO$ihjCN2vI=cuIcI680qdBluTIvr8Pq1U?+>La1P*a5Wx_-AhKXQ~ z*b~2l&Jg#JYB>tc!fcctYynE+8@;X74@k`jc)%9JIYb?3!Oqh8NzgLGomc<of_Oj6Cd#3psCfz9h){N^N|t=zF5u#>fem^qs#q}sTX@uvoWr%@%UH1k;v9= zYCbK7lgcc1%Pe+;h4{nLHCdh8V1CH1f|WoFw`xe2d^&dUTdJ9l!0W^@mD!&N-|;~q zOS9Ow+Cjc^Gq#j%&olKb7NiY0*L-!~0*EfKQtsb3?Eh8G7$jsrO*)U63iYf!+;QAG!0=c|z2`Zk5Q+ zx_WB!H}pm-^O>8R(9r;|WayfNx|ePV1psU=K{8ZBz{#2s*pn*Dsb zoARg-MaJL<$uQiopP6U!x#GlzuZWGw03EWCOed9Okjh!SCzN)22~LY`FFVWiyZ*^8&P`zKgf9bF<)w%A;K_ev zV5|1a`!YwhK?mRRJ7wfW*Kl^?q$44LUAvuHeRXadBYSh~9#d4|9cwn=pf@p3ul9kA^)mHwjg*M= zEuYF)>SZc{KM`(_<)iG$XP5JC-ay>+4~0r~y6gN#jCV>SWyb?IJval*_}Nu@-QZ&` z)_X0o8ykP3Z^KA++&oYbU&Gv*-I|{Y{}sXbn$~!yPBUjl?s}t-r@Vb*{k1^+b83elXzk09MU}0XpGGBLEGrP}i>p2#Yul*; z``l|oYsy8Z+u~_>lQ)Ka*)A-{a2 z9s%yjH4p@OK6(-M_D72oz_^ozzis zB==GHlAR!R#ktnOL^f1=3>3EzX2tZy02q#M+ z89`#Rhe33efRA1}<_B%_=+@?b`_w?})T=k+qhy9S{{TX4`bHsSd{US=J zN51-NEEiGwlV))Pp=}t9Enu~j$Z9O^_q^x09&AP}$dE?_UlwsiJ{yN?Z0}>Cv?7J` zfmhcBdOC)D9d62uq*#V<%otTnM4RGn7<)v1Qa{|0hln@?@)|pC&n)xFaobxhV2b)) z_a7Z6>x1VhO`IgOVM7qJxV*iPZu<8=N0l<>?&xdOTMSLJk&n96{jmdTb&u`!!@P|Z zIJ262ZM!$@6gAZQojaz^!pP@qMwmqTkppvV9qCId-+kX(Ax#zGivlA!S(BXW#0oJc zWla-#E&*CkRe7pBMqbpaft60kttV$sctc99B>AZ8*v*00t=XOi;vDH?zt>u)7xtyrsfjyV<|%bZ|((A-5MY{ zJ)rerH$2(ivEtk??0TO3Pz*zb`;4~fQ^3%K<9?z%`cc|!DDJ!aT$1aJ-0f4|(!GTE zj1l8^Q^#vf+vrM%&*P9+#oqmq>-o?jq z=H=OS8rl_J?wEB|-eblCIvNc-D#Sfky+!%C<2vX%?m9ST6v2X3M~q99OWr-$uIrp} zMRY~krMg{INUu}$GpM(cMm^^HxaNAfr<}8bvu>#h7i}@!cbYBLA`KJsa^YR?tCr(u zLiKZM!~>nW!h5tT#PDfSBgMhJ7}{eVlWeE9Yw8yT7q#m|RGDTL=@znw2$mQ>=5cC_ zV;}{<^FXs#p#@9L9PuM0J1=Lf!kkc0>DIi9OnL4_j7amk9<;_*eh%}(Dxlj1tLaL) zB5(A~0nI_?1H5dXV3_m;<`w(dJiHVdWv9$g@v2A8ahCTU`^WEJBmP0WJXgxYsk=U? zg|;$**Ku}`gjhlMIr|i?1Uh@jY;xFnT?N0)5!o*Bb^|dAF!+WI0EvS8%mt`$KlMFh zVv6`uw31FoL>fpp(cbroM1!f>iVj=n<^CMY@)>$cIg8LxL+R`)*JQ#`#Qg(4&c$2J zr8`l_0*W~S8SRR4-QZ7vt(;T;FxIB`zwg-d_2Hpn0;Pkwzb^Zdw}^&0q@5KvW2kpG zN`h?xN>`y+rA%yDISp2Sz3vlR(a3ep<@w|6u`Y4A@I{z1gF5`;-$D3we&jC%`ied+ zb&q1%F$e2(wj!1`;-4MRIVaOmwXi!V11K+REMd#w=AEC&B?lxu%+6CUm~S3Cy!YRS z?NG-Moacqi50xrzj6rY-*R6Pu=m_-Amx z(aYO;5@bUvj*B}8pdhs~lU+ocZGvWK#`xoff;J2!2 zJllvqe(`%GbX$-cbx#TW(S4QVdAQXJ%wG5DOq z`Jhq@iRFJr!dMm`lHLhHX8dy5&t|$F=FY#|B+HQ9Sq8i? z%U{kTbhUw0Dpl$;mAYtsOqY3n)?60S5?bn%ozHR1nLub_{=OHk+@_mtZB#x$<;G`c zWHx`o!FR4$jOBK;HWV*bXu7oHmC2jQ!aGWW3>m#LEbUe0%iB5d@@R1q_rNEp6fIf} z)}b{|z)~=PS#OwQZB(dgtAW7epDtQC6Cf5Edn}5q746yS%XPNg2@zhdh^m+9uw~4G z`@om43NDqk@?#zkSvN)pX;9(K#?Gj6{s-n?)d>7b7$ce71>9QS@GPTZo7p}URz)=$ zw`UXQETx`wwiT`yt7pJ2*BKw375P14G4ZXQA#cUTO|KHCq5At7G962aUAr$M zS5oN3n@gsC03N4Fl1i!Mdrb>X(E$=y`9iiu(^{i(z4_XOW!r*X?F#VxQQ-{+og{Xq z1V+`K+tfnCDt`t=>e|}?wAwk6lC6_WJJ-2k2{cb9LSbC4cOgWn@3U-Ly)bMepX*F) zj_(6cULAocUMN+}Ba(oFb@2?mw>@3vmbQrB7*~(kr zT{#Y1V6tY&?5X9VicqJQd=gn5Rl94dXVnCu=5;zz1H8gNK*phJ%?dOKYx5|5c>Kb;Mz`G+DL` z%@9dsiWFJ;Baws8I8!sa{-BT6iXG=a1N3#jav1EdFGc12P}x zr~~nd`-dR5ugo(r27i}7VBk+Qi4bFJI+m`XnwqM=7Lkl5li`me;6Zoy^%1Q}B2@*8)2{$v%aK&^_FbtJkG)API zOiGL#g=u8qfJJ0~ngrRLUkezCho2C!z{SFgHt(9%)Ksi3iqR z_&{{DfsdQ`MFMGKu$-+e@UO%4L1SZKqqrQs?HSeLg5~NI^Wc!4#(5Cg5{uRffeRMS z!mg;rYl^&1VEeu8t}ZZ$y$wp3!B8zJ>+{x8!hR!y6jD0ox;LVSkz5K1UzPjEa0I%# zRLpRLk#`9r@9Zee#Y{$VLc7%K40n*r}KG1zmtdJn-{UJ#s?@8rAW!*wqoe-i zkGZ7a!yCsT4%R$g%=JddLW+qnbY*ol(~hcAMYF!jmgc3cOc@!Q`)&=`9KKk z-RsqF(C+B1?9D2%HQd48Sy~4%zB1kW2cLLW;Sdk<+;Lm(qW+z_y_zc63U?-WeX@M_ zX4#1S+<2!NrC{xcayWp5#BRI+b7&)RnpCo10m(k#COgbwxO+p zKMghNbUJ>i$vzMZ7=N>Kx2$F_Hs5$j)9u4V_Z1)HuB&7Byo@nyj4PZxb~`BWWpI;> z6-|R#`kS8+iYxX#tco~GA#D*O>Zb={YVR+)1f)$(*IzYqO>#`pOBi=RF?fz#gB|F4 z6)1RygsZG10OZ;{(J50Spv?EQMOTfx^x!U3vzJfw8i6%e7nfWCec!jVLvXZA?Y>|q zs%-XQRdKbzz4|dgD_i4SlTd|FD^p|GH>yQUje~X-lPHR5z-xdi)T_g^BdN)nzrjFP zbpEx$xw621cCBii%;eEQvgUrgl(HwK$W2d!mNNG0Rt%5P0 zNukrRy=lZ|UNI-N^Wa|i(llhR)10{&o~tIVC7cmfcf0BDT&@V&{z<948Pv7^?i=Qb zS2C27Ud+|M{y3ssAmOGMi7CR8F`*u$-m89FWcPalbrN-IDx*t>i;9OzfXZ>)Qpc@^ zPe1E>hYmL4U~g^vvSm8=F|zkvdxpiClrZOO>&%<@i9%Mt3x>`1e=`AwE1`gc%*rKziNs40-cb9cWLmQs7CQbP*N$yQh2}s=mU({2-n; z9?T;ANNSSm>W~sHlFBj4A6h)$h81jd(O{u4a%oR7%S}000&OpW=Bh#AMxX?vt&=6x zn|iO67WW5^==|TLtr>eXaji*<<^C(>ImZjA_oue^=8!#`xxe$n^D{_ayxMAsr&PR$ zmsH{z6SE~co8uv#WXh;jgAM(aO?kYmyuJ}kztvLT*j};k!}d0F+}bN2M>G%0DJ3Sd zVS}s&L9lr6deg#@pA7dTp-}MoptbCNw~BXiZIE9K2nK>q>(k`N?gLj+qQFP4!q?Ib zq1dz<^&XR{&+sZ-Z1YS|FjSi5VM#F5cBU=A*ooNd%&XTf0OR4JIn zf*ddF#2Knd0QF<%WE5F2v_ebp>~H-10~G9E9Fu&XFsR%}kE09t+tl$ufFl_}kk7OO z9B@k{#^>4#&dF#2qa8(0)ee>9#xHfb&ycW_bTAuvQ#q&SDI;K}D=AS>uif#&bZ%j9 z!)RH$m%qai=E>6t;UN)TaI+)Smu}p%swO^(Xw#l&M3zB*MCnRBw7y*#=I7-h;4rU* zn<}au6^i=j6{1=Dkhj4OyB)3*W#}AoxUyA5Lu>-OLjRU9yi_xA@HH*aA;&D|= z`g#q^UnOiMu5`#D?Kj(im z5Ro}AT3a7Ca-OqiWGrB9^}y#)dZ6qgioVKiwNq0gu5b&mmu<{n6`0rHt@zv$(Syl9 z5{^3#C6QLTy&SBa7}+{#ppe%F{F<9hBb@Ba+LGiyc@KLvXbAqvIMFujvby5LD^ERk zrZ9^Dp#n0fZcF84J9Ix+j1VD|MT{9rL<>Z`|Ri_txN_EEsFi413nx(-7u7 zu~sC@e(Jqi_!wsF?JIwkUw(?ud}@2q+Igz=kuj)MJ9w&X6wmdUaW3`ygXXL}@nK>3 z)l0)GhFIe)?KMKoGrww>z}`MGnQFXnB#infX7Jyls#GW^_N^)<=sYM?Wijj~X*{5oXvFON- z5N+s2;!oiJn5RD?l$cWBDBEuatSjwx;1Khn!clQ``i)Io(IZU*YEBFrSn#0_(}MD$ zYJQ~XS3HSeGr?pcV8VH6M-(%eFJQBS&ciJVP*)(}LVWjwL}(m*QC_~Uc3gMR4P4%< zef)(%&I`-OZYX6xXF^n+ngR2YAm6qA9Q!wCy!!(NeJ1D`!#ogv2EkH-z?^gy-5&~8 z8$HWd+SS=LnEV0KJQ$HRJRf#F!f;sXp42a%OAUoATN6EaTO5hh57y+G{7?*xwU-rD ztkm&_16ztAK);_x0u7Or`2iVIRLGPS6EMg#Ncx8l8uBk%EmRbmJnwH&h6iPua2`|W zp+FWeXS9@p&M-L|$%-JC{vJXMl|UY-8xj^w7&5IsfCPLQnk|~L7$cHYMKF}9Ad;w^ z$U8q$uucCCfHZEK=bMe1e_ux(b}jlTnzXp!F6DFrA9!jnOFt_MVQu7|1q;~&mOe^8 z+K>w&Y;44yiR-C+8dxeoX@42X3{CGZyz@8x->(pUJG6~YC|RnG17Ly z@DUd*=+1PztZ6V45pyQrc9EW;cNO}lW}-4;cnEaSkDM|Q)zxx(u%^R!P*>5b_dT%` z6p2D#SdeQWi^$!3k@}%o*xjJ8dl~vA332-D`YBmpZ*0DHXS56lEl7u?OyTtC)q&+| z{-Ice-^E~e8>b^%5Nhb5gxsb?7_4kJCm=+ec{ACaTm!yVf;d$;noA6 z_4-kb+28SRR9i4^SX&5goco`4;9FpCJe-(!v0G5*nq7Rp5qGC-^#w;LJ1g{xN30o( zp91c?rTPt*Lt2Q4rPjf_WIJH_chLKbc^`Wm(LH+dOFc}uhXk*2ciFFbc1gA)=W}*+ z;--4A`#Wl|Zhm^QJ)pFA-w1C%MKFtfyP@oF-mzE?dzL zsP3DKa1e=CYtmhA!miMGw65TI_3G{?C%7BfIN@HC{+#XPd6FHDA@*xpQ(;0;g`S!DF;L$L zXoB}ce)7b~MF|uHe8tI}>)Ouzgg(08%bbe`DhW^We(?N1j@ehnSxI=1_XGFneu}r) z{|f`0JjnqnfntEKR+)3cdzqhjUn!nql7mdY6yU4s?cngzb=OHg>e4g#y=YPs`mx_ z>QDWZ{-XLn0lxs?EBIIcuhVU3cIE(I{U%S|c#E%&GC!$~?zz7>M|eLJzlvOx{DXn7 z1Yay)W^DeWA!i9*uR`c zxa1zEtwh1)UiDFjEqw1+E+BrSFw_JGs23&(hreJ#C8655K)+D(ckUW-L?BPF!^?bx_g0p7A&gaS!a3WbfI4BnrFR-~>IqhU;x%&iE5>m3 zExqy%-eJ4M85ol>I@NX*{fQ^{fJF-nsRSEji`MJGmp8xSrjhKMY@!uP{5srXSh&sh zcPp7vBuAywpn7Q-2{*xxDRrZuRqc`Fk-kSlfxET->VC@LGD51$UhwV$KDm|cH%y68 za)~8meA49N_`)RwnS{&O7@eHF-6BKbHV#vSN@=eYES5Aqv4oJ{ zyjcsHnvjFaXP|_AM&^_<7}SXMO_0zVm#IF8=AW1!|7DP-+O@-+8I@PPLuI7RrDn#q zVeh9`sMJRb>2$%@kEROeF7xCyuU!Q)(%tdw5+POqN@c+>Z6JATgMLV$R%noJ{W-DR z_jPu&kKls+HCrzIQ;%5P6=7ikufuAYC;ozkLZrT!f8Vk1kQ6&C}BqjQCHr?AN)4O7!wPWCSggkS#Ro@P zqzc=*;{~15vRUvxY^C(Z*pcJ!rR3&9b&1${YFsi1m4MR1GM7dT10hL8uCg38^#?`1 zBGKLEEW|ujt|0ImmMiiNlE5?#b$xyHJBXp(wEorq4>v%_zZFtP=un(@0WO!+Am8Vm zRe{spCqyJY6|yL0zjUTVi@NNUvV1~ZXcIbwO~PS8A?zVf(tWZ%GJo44*6WE=?6nis ziPiGr=t}WLrm`eR=+J&^6Zukp`;Qakzhi&2U{vau@U(n3T45pB-P5k}^$|snTyABa zUhnE7M#-#pL9UcbrQEjMO}U42Ww|DnY?y)@@G9KIHh~efY*+8$i-z?!$GzHr@@FE&(mRxI)q$3vC*RrTc~%IJn;WX$C?8(->w>Z|^pcO8BH zyZ&R_?rLAKl~f*kU}4-pWNiO~D5H}|gbJK78{8vhNsczhCdXli3>=b!EehoM$WS-R>jHBt8orIJpRyVg0$M(0yb>f9}q;>6w7 zOQ_D%M{bk!p!n+;%M{Ce%PNb^(npk%h5grzF7QddE}zim+vKA@=N|F{t}{K6q^v1) zK3zrE(dX!XdWim=s;JYuo7{e0pN}Nc8r^ycE-R5OtP^KiJ8>)M+@@gv>EqMu)Z{t! zel>;G&X(vAMl@V9=E_Pcri*M}>AcN}`7MUTYEi!OMFTEL(z&1&CC0uei4wtI4p3f( zqEaY>6`37Gp`=QGNkzp#Vat@$hel|71~|=YVo1qq40;rUj&Ya zbt6^zedN~OygU*5=#kz7aT4zn%615H(MD{2WaEw;DHm?u|blqmxKpg-gf z`(+Aw*pQp6L2`-7il!2e5kr1$WGd09ixu&y#H-I?Y$GNzUu+dzhabMi7C>h-YN_Cy zgL1NQVfiy#i5(XoW1n))J-NXkTZc@t%Gp)hZhT~7?e3Lb9e4D9xprF2?{t}#+QS7i z?+LoR(Yr78joCQjy0!;q%SNreYwnmycWxN4^P1#!kJm?X3RUuIg?7WdF^z+A@@hPq zU*0%o)~ZLDRki}9+l|t7;yJdIESGk-;1*r#EiH)5FI^t!(st>(TwU(#!(F-ErB66E zyB-Vo>bAR{&fODvN%NBSJ-tl{8luosmpWq8+g)LO*w9FBB{%4AGCTo>!B9mSp^=Qt zn?imOnOr&-=8`#dR_@%$?9yw*QU^F4gs>>&@%3*4gfr-L1OQbhr5d z+oQQpMxHF~lkHR;*M6ZpZa5w}UXriWt0PrVNd}e3>s6q0MPwXAJKud2@*?J0^f@(Z zVniO5xQk<0Br_!u%B6BDmA92|DnDENv&7R)vxp5d~_6A$p)-0RdqF`P|KgimLTVH?T zx3A3GlB^v4!M5k;O;|<-ER~kboY_@Apki#(ZCB2_K6g0Xa^t26H$K<1VDyG7)?7NX zbKSmW?F%Pudw1T-F>|h7GNx>HtpD?2o7=8?VEM!mm2+`lzbth`cpP=Y4iTc0O0S8$ zFMluaend7~woJZKwOoC*ZmE8mR5Pw821YBF!31V1PNff-41%kZk&A=F+L4u(d;t|<~}k*GDE(U-<2;& z`EB`|@(<_B^2u(Lq92P%n&&iBitt8$H)u?6^49T4_XT*gn&AnmebjxCrRiFT;nCOFy8o^tfF zD%LwUp}8Z0QYV?UM#+liW7&G^CM&f*L&D&IKcSV+ZR%5ex5-%4QF4I+X}Qpt^fMC@ zU16-Imia<5ZB-W6oUzoVL$%D>yB)3SK4BYJu)NydKGcmaS3kMRT^oEmj%*UVoQg@W0}AhL~}Sf@9{j$ZgFtILerKgv*JG zigaEyVBtTpxrr+?_+S3q_!hQF>9I>c{`jwEIQxrpAWz~6F&n(pv5m4_Rx%T>hk9}# z+mj7BUgF87SJ)}w&j4ggLJXq8K{g@1+i+TbZ;DZBNk&C zC!RR*x35Sn{SjBLe(^;S-GI1Ta;pqRqh8c_)ZQk)!fLdLE|bgc&UWM|{Orfc;d18n z#+%EyA1&s7PkuVtmzz#@dD6*tp4?;Qo^+3BDbpLZ*m$LJlyR6i(lf^2Vw@-edzOe@vekxe<7#oWd97!S_W|Pr;(ewEJiCm$#6P%pdG;A!6JN=B&GVu0p!lWn zn0UcK;Z$D6YmAU$z?WQU|viAKR{v#C^SRdyfwQBoVR4&7{! zOno%oJH|siee^5I;FAnZhLZ-t@R;w4Zm!)<7iy2gB_cO7n@Yq7@l$D2~eU z;Ig{aQ0$1VMvE!x0PzG7_x>xc7FWKQP$uvn)4JC4Kf7Ac+CuzFPP%9e<7r?ZDJ5yk zm@A`}3QwH*=j6cPsr}=}J4=U>zXZv_%GR-Gj$c-pchzTKk(b{c6Y<8B;jqyW|FvxL zPxr35Odbx)iv5LCh@OVde8l$O0D$Z>`DpM!6b8|iQhX9j@~nk5p0%a-xgLsab#09t zcYP80Jf<52%OlH5?=QKpbaUu;r3YOHBM0*|vZ_A%d9QI+MHSPE>_8dwrBAK)vQo)k zh~V^;l}N!n1b0qZeW*UX*7ZJlH}pa2(Xdh$B4K@rC|DJ4SC+>XvgKLh#U%})QDqZJ zvvX49ZfX)itQt=yh1#k*s=BH+RjFKYS4k5HqS6)e_yc-oayKnZaEA6U!E%rg|%g~P@XN$_{ zb*udW(d)MPgQX!5WQ9;3^@fB%{-DBAp*WCNUaq#~=h^KxTAar;WqmHmWolnl&b?aZ zb@f))l(A@U-7xM;S(rY0N;c7W;@LENye#S+R5*ZThz;dtNw!Hw0pYMrkg-IK-c$xM z;*$|P2)`wT3l$a%9bc%!V-})bj~GB*Hi~q-(Z{034V6{Tkhj1O?ZknM8@=>Y6wg;D zP92peMIfC?f+(g@`-9l*Hx5r4Y^ul!B*3C@;lB z2%4XX3pTQ}6-rt=$$|w7U_s|OV+7b?B5igkg8uT-l7SWc^oRDRpV_3C9=5T)Ep3Y^ zO=%m1?|Mq1=eA+(U5AdI=_(x`w&z4HDW#)+JMHcbE6!XKo>FOds8m*8f63L4+kTqweq`yGJI1m9 zdY8bc)F*Nya&?GMsaEZYkr<5$G4I{R`#g^rA2IJVK5f>jJUDu?Qn<#t)OMTDZF@+# z+qG5LBdB$PK}K^%2rYspdHy#A!JE)tG-OwjA?)2R+&&w7_A3e0g6itdm>=SBs ztkZAQQ+=NhlVVwFx)lf^CF0hnOvG!dHc^vHLIqSOd=6rCcpcQi)x$9|JbfD9*P^Wp z_$|h_3p&ww>}2~Jo-Iy&R(;~DQ%E_?o_v*y*JpJrba(l)dHk4*l%m)gP=}a^l__ zUt8v#*?)3R|5LlVcarKq{CZu1*`4Lm%CG1z-M@2f|2v2J`oCV^`FPfj$A8>?dLJ3L zXN1k-jKh`Z!6WG5TiUV_x3b!&5O7Vi@OEXtRNOR`pr_ge0=zUqE8=N(byFqyM* zJc80nR=d`CXr4;pb%Q^k^t$!_pxy8E<{1on>ddp*K$V>sVBpty`!NWlz=(qFLXy>cZ&Zpasrhrbw)u`Z!3KvUMYzVYxWWd(q z8IEWhE{J~1g>rt$Ri0g9*)EUKDu%OiJ;v+_#AQXuF?lBtx5YW(?DVs98?Knv&eDq) zhEHa;ig4cCio2`I65+_5R-}-$2;ty9%I7UkP-#j^KVR)c_p)hZi zuQ1%*|LoiSN1uIXYBm{0?8HgxbC|9d;C`?jXS|eDNYzsLtn90^ABaEU*c#sxKU}Vw z;OtOzC|9Xgsk;iuv_Eo6VRN(?ibQr`rf=g`Q5Z#q+MMG)mYtoWQg2nM6kDs=DH@cba*R^Iwmy@Z zcw0+~w-!ddMKP>8&$ZQu7R@2I;2zsl-hqcIp&UdmDv?V?L7*-8o)MamT6u)$!ye0=}AV&0(7 z7S4_jt;t*b)0gph)Ms~v#>Hh;W5ilok~c$6&m0RDFY3>mmL1INubC9F`(i^^_HPZ_ zMQNJQd7URO-2dJcO;#h5s2?TD{(@BzDcF`5>mwd%V0e0kTBg<{W5T`B-O-n$?+b57 zkIRm0evhg3lFZ?WIb4!C8;bvB(VfCImq076lb^{@ zdVgy@Cp>;A<7cvHMtWz?`Y1wVINUvniHQt_SWJUK6P~J&*h;Mz>`Q0mhxz1@@5YbO zhr=Y&Q2(7?<1360II}xGF4v*gcu^^Yf9Qj*h8c5FXkRwY?=K%SD%?L|mfvZ1gu?@T z%Y}LAaR0kgTJo5@M&NGqJKSx`NUJnXBO6vsoe@_a6&<3J`YNP~wu+^y4o8P`X~BBO zdS}v+bZU!YOSG%Cf}^6?)l|_@ajWb}+2IPAPPkdSw?Y`9Lb*8p889=c1gqf|HG{zALM5m4k63WmIZnnb-G9h-R%pJb1MO|mCoGBugko2k(}#!MM^t}>_0 zGP8_H!;A!aWIHF&KKi|+)g+p7i80rkOVJQIDT%C^T#@DHjx3+voskt1BCfMol#7Z> z?Fc_EGAW5?cd86amieMeQ5DXMO5cKp#X9eTKoHjwp(V zHf$)$9H5zH&ac|}78d1el$joEBSR_rn2DX<$xO_gDEC|0DbH#`JA`j*xNzBNFMTC1 zJC0%>x9r*eGpjrA{%2R?tu@}7%cgvma@Nk)B_=aq$q6vc(HBRdf1ibESf1u3kF7^i+yzZg? z0QI^x{-DL{cKd_4aTNK3bNoydfMYZz^jmqh%Y0wSVM@ULu}az`n8-I~Q;= z;9uTmPHFh0so<yi3`JlLZNN!HL+(9tHey%!xDX-k=Z#PY^PfxW`DrxbrXM3?RA^{L9+>oTIFz3 zrZr9#(-NnQRdoi`9jY$XVU>_lk+`Z!)us}rsP?K3s05Xa6;p8yRQ094-_Gh{pkK=2 z20**7!{6mU>=)wxCV!h>*y}&wr%Wi9q9iy?CdJP zCzVfW_#!@K;nR2WFqmz6KCcuuohueuV5 zS=LaD(^Wyo(;2jju9eo)`=nm|cEj${-F1J~zgMC+Yl&c>3MwzT1y+}AfURVc;jI#t z7Oixka-CQ0(HB6N#MIU5G3s04<+AtT>oTKS>(s_cIW3iHrKW~Q$s=^Lw3F`CBx~P* zkKh1#hrTO(315>%tRi;jV8zcE+#(*c`X{fh? zHBJq25F!qn)9p|=RQb8?$lwTNs($7r4(v47$uG8IXA*9yQlVG66>LZF2V!1#oU(^%ZkU#fauF=vl5~>3Nl&}SG1SY~75`sdkD-|!4c z@MEy^>@oPP8Gr`B0`_GWTk#_9F4bZ>cqSp9f6@`0q1G7A6}zrQ$F6YL4Gz1&K|gbS zgS*N3o109e1<3hjU{d>U7s50a8w z1d;f_N2I_+I*VRSyM6chp78DR=}4fD+%A}31Kp+}0gcx!`hz~N z58@z!0H0@@M4BC>f(n=2JlaQJlw!7jcQ{k4HC$CRJXOP0MYF-*-g@3pOxql%PVuiq zajhI_Wrs4h7c9WNfY^nfT|-!NGur{T=PP7)`xpK6S?PqZl^?fe&YS2HbtN}Ud+^%X zl)C!XVY1!$mW4+d_;>Bq$QhbfG5+|=p$BYhQ0F~X~)aM!VjRmr} z(maF=iM2T9li7|dW6K=(ko#l%93ME2kuM#3y#o*Ciuka&P~oVE4|fQ*c*Kz#7ZeV8 z+-?`5kdLv!P-U-llsn7g)g@y}X2Wt=;#lTf6z_($j+^55!9DRO;L-S|l4Qy2_E#Ny zOFpu{?>JC$!v2Nh3+LgIZ{bJ#ck%EDGSWUQHi@*@C&cF3mpWf|ycB=e@oxO6<7nKF zzA^K8-7bHin6n7(=_-FPeTU}f48lxGAX(sW0&zMVj6R0OV_9*BJsxw!NDRkrcR8JQ zs%C$qD;|&Jsp7xDeasmv4)}cjP5z{x?Hh;v3jYSFgp?4%2+=NG_$zVn?3smrgF6^b1AFBCCvhk^Lsz;MxD5VTiJqj$HXjMHA#b5 z>2R1T9iq7sRE|n}U+TaPd!;>|Rhj55In6MVQSc4lvUV$gQx8`)2O2Lq?J^Yb?b_{EC2A)nuTR+mfp#K-d!SpEKZ zfb0#R<;pEpeq0E!gM)_Ku+F^p-<(~w$mO_h&)unD0){_hwq12v)+bJ^PKz1vh*!x) ztP~UMXwK+4Pi=OZ^GP*Sn#aH>^Awn5o)2@)%gqmvC&(VM!@Q6DNX&nygq;#v0MCJ) zb?mVz#J?3i4u6L2m@wjtrCn}YcUCDwy8PCnVoz6P3a|X*tpH>Qnv#RpbT3P++Kb%vXry2?^?EhB6&Yer~+^GXMY?B7u zV}4xugysoRb~Rb1Tus&}Wpyfj9thSvh1!u|f6<15APVea2x~j{4IZ_VI zF(uev!J+A|-$rIHDziz9ny=zDTsUefM ztYP<%>|2s3x33Gy(p^xDulnn%@>ua=$0GNl>=k((#dl>ZmpPse?auqq{bBY8A%!y{ z7U$(whASh3^Ww#mB6A`g#a+ePmw~vl^RpYX-*bNGmOq|HUJJc%{~+{!{AmsQ83v%+RgJXg;7*tvd@@zIMRVh_waEY$COLBF%Z`i?s=lj_>SOwx>F$~7$&jug_eBPB%_IyN zB_Jr8nE@gJVn#VafHfncT&sx(x4Q`;#{^^)Z$^U&{ zbx(r3`};Ua)qC~oRdpTT`zl?EVDgigXNpJEdH5AZDMWO3DrW>IjA31d~IjE=0_Fp1IF7NuSh9yf-5;ROA~x5Aw?hHBOnROL*SKbCd|+MQ^ZdVk?b^rUt)_07WBq=!{+MRzA}O+T1? z7=4|7B)PxveBo#1KNQXuY%=9V0b0&rENky6_LQ$oUR@H~csdk9o@me!i&I)ANMYsL z9!q$^(vi^Vyp~MHY2?O=b@CguN^@=5hlw%V2bar9Tt7F=F%#TAj^?P~H$v4(^f}$p zkqL)Gw8L)4Y9uccxB7tLR$sKbM#c8W=+#&#qGN}pPNa8^be`;FI;%XvY@R#^o?tc~ z_j(9sd&r=NV7BMWwGSO5>d^j9;y0_8|lV0&2syf3sz5>c&?C{<8<1h0zme1%FR%W6jjQ7y>&^rz97;ZGv` zRU=`2SPwdV&|S}fp5!JB6L(J^mg;56fmtLnI3pIfa=BOx5tRSGkpvF(Ce+a+3YaFC zubTbhY^|c&B2p-|vPOsl5#G`7e|BQe*PcYm@SR)VzrYm|zWu`9TY4_1Z=?~L-S$Be z(Rlp&9h0fqn{FSl()XgrKC^SL3+xNyXMbffV>;1IZ_xen7xKt~9JGa@9HtDFHRo2N z)wJO3nM8~Albzk20VZhLtZepg4r~sxW}DegwN3SyuCrWcyUxDNF%lVxj+92qyZPHK zyKKAcw>oy^9y2{wkz`xNR<+f_m2fp&12<&Bq(;IEw^|^2qMd@HAS_^irRo42~1_nDWtz25Yw03Fd#x6T!v1DDAU^Zb< zd*)@!J!A5iYj^T~?*7sP<;O}>nQyhdn49W3-Q&K9?+#L1>EM3!GNRE=)bwKNw%UX3 zpha%Cs|y40tz@9*I{Gih@%e zC3LCeeBMdF=0vJ;;!wuC#qbx;zK=0)%-iHA)dJ#A;C-byL|>~@ z$LG3w(z9Rx{L0t=<(lo?zCcXG5>al~zRPxAJioGH$CV$y_u>a%6U>cB3H|#$pBuh) zW5<>G$ak*0d+j~{QS(Pj0QvK=Y;=IgMt{_MHlmI6#_-0-$I!>)8igZX(COm>P|pOXB&aAYIr!KlJ*B$@l%sT?y&*gB>H4Ytm|srP89l%Y zgw6?sqzQ!132~n{nu`E^w8IfpM2c*V?2DKp&(Imld-fgO0#wjT=${v#{b_Z}km2k* zGXw-Lf(fjp1}8XZaa8dG&YhBao6aM6Gn8(r;ia|f4I=7*$rwrB1OGW_eTEMqWw?mW zqeH|H!zEm%uQ*Z`SM(!mpT`n;Y35rXo_}p~rn;OQa-(H*S>3Z)>OB6R*?XGJs zMf2gQTF$<1ehNR;BD&=mRmN&ZTd7(m5m-sm>TA8BYKHA$SF+n3CM}_*I}#n~MTte} zhtpg(T~E{f~wsh}Z@i_|EfEIMa{W(nU(VP5kA(=@@qCI@2v9lc)Z&v`DM{^2j*D65Mg z9HqK8=?|~mbJcA>UWGZ1Ijw06qN6jv_~Ea<^5AC%|4hp}F4DAGa%|?Q)ju3te%;}p z(b`TGzR@aUt?XX`yJ-24=wPF?;TbyQMG?t1$^81LJxY5yI~F9sPt%ZQPM(}XB?$Dh z%2Et@c}x9qFCx-}VubKjYDNfOzC>F67Bx}*FZsRb=@|2j@0jvz;6UuJocVG8Hv-=@ zA7PJi<|oXLvX665cpmkdAL1q)6Y_)JiJ19n&lcZxrtRW*%)HUN!Pg(Vg1wqEZ{h~| zP2y$tL62FF^;2t^4dykhS&daq-JZqNGP_x0vs{MHcrsoymLOy0*l_G*%-l3=hbVhY z6}FQB8%qObmIVN=d3}&v5_MoPi=sJJc+ZD?zb$)p?}YcX*W`V(?9n~_ zo&%oK9<%Bh_KbMOJtog2{q_+x_Qe=P{$b)V- zlt4g)(ij*aINOJi!3fed^S>_DYT4PeHfu^t{$=y&w#&MUXb|b8o<(M>d8KBHwO{ex zr%a#Q=#D1LnkE#J9Up!FH;nVTLbztZL;)yK@a(U+9T)=ZOvHe_BLeEqrrb^pePH0A z({xBE2Tc~4w(u0V3w`wl0mL~_^b4$wv-0E%1ZB3)$#%t6x8fxTfXEBgAjHq%HiTRK zP2A}eYNh4EplLvORA5tVj?Y^%){H9?$OhXo>Gn>x9;lX=unV~rmZib9>;N~w4~hfU zfxtj{ZTr>i7Va9$Re`I5AFFILZDY4_+r%3zH(75A+z{Lmx`MxYTqrGx`Wq5wnjfuFkQi2!CxgXD}Ebfe&-L>g zEsTkyL@Z{7yrs5KHrmeBEiHFWn3Cu91j|CmWN{i#HYoF)1zGrdS_ZJkaNkP+|AiOk zqRE4LUI>MFK@dY&?utZsip7ZF3b=!=Oeq`8$X0xobR-o_*W0^;^~tj%PX{fcI(c@h z?k@A3YPDG6K|DJc2!$eoC=x?lFoXv}r7+LO!BSf;wX+-tdqU-QyxH!O)0qrb@+sOP z!dFm)d0%E9ZpZKJpk8Y?0wPI(W2#WDmfOeMC)%0S?VH<&+egU8>+Pr8`Sv&Y-wKyl zf`P3taT z-Y)wN1M|*x_#Nlr;{T3}=dU@*-pk{EoYXr=48q1ArvG57z&Hm8>ds`mwnhY2Y8kJh zifn06O;^p(Ao9eU=-9+agFO(GbfrOUCXSkOgH1e5)VLkB3nT8_?CqJ^AIzRe&VIaL zbuXHS-c@Sdd1U!jM#Wm3%kOt(X(`!VEg%!3^I>o50*t|_YU0-So@Fk7|4XJTKjlkl znpTb{J~hM9yT&$kq+B+cXYo+BvU4U%zkPGrm*MRMs~uRM-jA`m!Q`79#cAS{AjauK zY)@B41LT%c&KOlRrTpD=iuUs?Pc`r#2`>jWBfUR|;L>&{viXHn54wT+WXvo_p?s;` zQ7=jEy40uV^ggB!0Ao)yQQbz};Jh(DlDo0+VElo^Bj^$7@z~?>#}khf9xpwccvgEh z^-TAX#!J!*!57q*>Qj9`m4B-K)pEKoB$p&rj;qOBrdTRnAeH5^Ixp6lF6Wj|SWWL! z`^tSM`%Etu&~=5IOSk2AmrM(CgVwuV0R%dNpVzgBUHeYQzl*#wd7XS zQZeSFOk{=P_3mznn+o{-ENkYkYM@4rLRiIAQ5ju|hS3N*fTqyv=rj`1B>gwtu~1#3 zZc!PvgNpBq)A33AJ4f`sFSZct%n(+EFbg|BAflO71d0&BBzqI3{vq@^f9=43gJ5vS zQuIOmWH4d?DxuK@14l|I8!ydgu&x6V_SLa1xviz)KH@7ySoa}V=D0F_bvNAxUeknR z11tHPy31NmD3*E=FNvkzdaCS&@u?%;dOYI=&iML4Zyjpp9fFJL+kp0n}P4J?BP5awcKAeo6YzxG9KC#qg0gSGU;SSE0)WPkzT$S4R9MH1DXEv zwd}RrwV7+%M#|%8oV}I1H8b8eUf$dGHS{%lU-@|Wr{UMj>TT>UZdZmu934c4LKsb{ z!6=m}1}Q@|j40t?B$-ltKCI@tG5B*l59kq3XYf`=N%=|{uFPk+bV@NtB?MpJh=3~T z^G=@q8wpAAw){}g(H%q+jO)BW6EzZ#9VMFNH`Fvd1=&_p)8(|D?oW@T$I}yOE5E=mJr>yl>su+lbgu7ra^!NV8)c?SHu&Qzr z{X7uZa!K#(u~6!g{LB<+sIzxpSX%B*(F-G`)fb>35_`j)otW1Y*MDecX7(E`brto| z-CH^mqNe5Z$;)O}ps!w54CVb`tzC9@n%T|lr#h$$m}SlECbdB#k{UX^8BdTaYP`h) zHe49hC~L*QS(#o}@xm0m{Y#>ZR^a7%;FVR#+)AAzEmt584^_a26f0E3l+Bl`R$ag+ zwd&z8tetq5b@J>_^axC{T1`6@q>xdC%upmP!u94&RB5^~jb())xlW?nPLyWgb^auG z0+sLvApuiUujX>crJtODFr}cr)e^e1Ld$D9k*r4R$G%I(x$mb+?f zSoZcvjq!#_2(2`)WEZK6;wyXf#_ljL+BubqFGDNDWtL^N6*xaCp`3hC-EoKYVXR&w(WvHf(2z6`5QnwOsK~GJ>vJ(vg)UcINNwdvr zvi2(Ae#~0xtCh{lR)r}kI~7{_6h;%c<8rUwOXJ%ffwbj94L`R@X0h%xS&CByR2bH% zip^@RR`G*>AHM;1UFBJ*2Ty76i}pIDMYVBlLNn>wX^kG&kS4(-?OA#O#ZewC21e_i zN%Rpt5-io*Io)1Yxqfb(VA1QR7>55mk>aE zz=Ab9OT8-tt%zF@w*qd3IgfDbZxG+7#&WIP&(1Exq|JJK?zxOahzs(NcyowA_ZS9p zU^^sZmtOKu$<7Nl-xSII;GGR?8d{1jrL@w4y*FMoFC>dT_~2IW$d&Cq=)U~wh3mUl z-uiK;|1%$5(7y17^~v2=#^d>(Vn?;Gej*#aFn8PR_imZz=4`#)UtIWkG}PmvEw#g%^8MVf~T+Mrlc1!(qgf+DcxZfLNWLh z_&7KQj*XbjDUE`>8FrmQ1N6e>{N)gANBi`rF~F0!>9N5<)T-@3V9Ri|rnQRG={@IWVbQ$X9{i^tfAy{> z`yXEKP?b=d9k~jXkJmSS=}TK`wG934u|NL%nJl{fVd1 zx6pUF@A}{3PlbM`oLJo`GO;w6d+1{J1&0GBab49CV} zG!>I#DhZt(iA|gr33WPVi(MIh&4C=>^=bka2FcZ3heq#~>-Z)uu^&dQXti~Zm9~~7 z5;HeUjZhQR0cwhRof2Sxrk=Pqa7%#h51_pP6qrO-T|Uhsij`QSERvaB5MOYN{+!`H zfgG}-vC)~)p;My-ta7==^zqEvxi(S)s3iNs82S%m-786s1}i1`Z94gpnQ|4%6YN1)s*^B{a-y0)mCF&<(9>ayamshCQH2X2~3KbL={n zEfon>JCQSp8-()bfLy#fG<2c?d7zlUVca-ImCjB*y<|zX1SoQ0u2>x|-E6wqe5Yx= zw7)b};`GvZiKa^4HcxJyc^$tt_eG9d$|1GXB`y)yi}#xzZQEDkrb?%Cw5n2S>=_L0 z7R&_~^{T7Y%hW5yYt$Rnz0_Xy3GNv8Vw)w!yVBM^IpSLA38%e%p-6aP6dz_Wh-J)(Yv(AV!H#|AM9m5AyCw|N-(4`i{EM&uoixo1Do8%e#l7S>&0$W* z*>0s70q}&yc(S}xSWGVwR!7&;YlRQfWAtvqXGAxD zl0y`ClA}kVg=YuBB?mZ`+hKB3Wv>S=)g{;E&7Pf}y`I-RCXXlhACPH&_9SK?;BPo+ zI2iP$avh%Wr9lL5g!>`y%>?TXFWTze>D}XHyl33*aYzT5;OR2IhkuP{Bwpw7o$v?v z*LjwI!tOCqy8*74ye^mRP&a{r&)=$c=CmEz;YtMjEbR*-3!0J(RsmMcjDpxQ3ZeSb zSk5PfL&gB4a$`>Xim}z^?d*Shu{9=kq2L#*@Yf6Oa99{ z*W5zS`{8xhU4Dam_pcE8`P+#5!4o|L$!`7ASRPtUQOu3zyQv(_H?dnQ5PntAf$bEC zULDLK$<89)o<%%~@RRYg{+%uZg4$(*`bMZ9`;3wArHg!0i})zYk#$U>;6a&%Dk9TU z(p2Nbv@~rnr6~}nk4rDYzvCo7r-{hNC5PbzP8&7`4$U$6;}A?PnD1=7%{e;6+Yd$fd*bL&gqvh|J(`H@jXWQrBhIAeL%Dve z{Fd9YvXkXGQNjQ|i7t714_0_5>30vJw%jC=bXz8iWQS9_$KgOp0M@66hpVLR=`q?y z!)TN3q}9ElSargV0K_-jN9({ zJ2TeXn8BKDsTnybYiYMPrFl}CHxr`L?qmr4UCa~~lFl>lfZI7yt6&wdSrQ2N5D}QL z=I5z+&?6yj{+gLrvzZJ12M-P$9=&>?ryB89mPezhq8@sOSvm8_cs!p>W)^;!-ng`P z_rG1gu+SZ;#XjzGwSVN53ztHjkPBuPGyez6PKGK-o9JzA z+t$!j8(U;Axl1)Qx>j%6+I4+uWE0fZy2W>^vZr?E{96|7S#kU7FZjNoJg|Dwbj*Cn zcS!kO^?NI(Hl5t``li#Hf&tZ2k!tSF=qB@{{PNC5kn%E}vE@O^zd(jEE;dLr5?n5~ zz>jN4*1$d_V?Lz8>u_5e(CQZ1(%7r**PhoHZ4!O?@IY=n2JY`)>Nc1w?~Uz`Js)FY z&0|Q54~gNqx-zjGEr&{d%XK`oJP)X|yx)!7lZe+{TY0pT#~mkxJJi?*7N7-_OuKIN zFBeOG)bAhn)Bfk^A5$zwu2obo-X*e}|6+7;KJQrdZ%i5Uy9i#_sZ~r_k4j~U_3^owOTZTNYJR)7pU&Z zpw*d?%v9!N#+0$c%uLJri95g7Wgr-t>(x!=P5P#N_?eqG!J#3GwYtf^=ZlNcVq(Qv z+^%|&!#m=A858@-vwzZ^B#Oogf`OM@qj!>iPIo=fK#le?)6dZT41z##nt?~@4_8Tx z&&t5hgP07Rqi~PR)f+cGgKofjo%qyla72*k4Xjm+&5+J?ZtRql8zo`=qdB8Y$*6RS zqzYq-)MN@XZvcyENKjx4vh>F!n2#r8E^+AP*lRHw^NF!D)8Jf(5$!b%kBqf!wM|p) zxl&IU<8EBBp=VLD77F_mWKL-v?UnXwJHz&+R;P+uTWYW)`U|T<)FrvKDq5&44xx4F4I#9CL%1i1rw8XzE8CZ=XvOkcr%o?WAyUfJ8$uVA zE)G#^vKOn=BHx0LQH`w?9oAfZ@Jm!}q)ZziKS>4~C9F*sixP&>nk0j*jJ*X=B+aug zio3frxWnM??(XiexVyW%+oFpv?(Xioi#sffyFR{i?>XQ9#k+CiO-xK=W>r>K{<1Qo zr@A})^iI{8RiYa6RU9o{SkV$astn2eiDs;~3~GDA{(@Apu>HokqzT{W18b|cX4BJT zn_+N!W*v8Bip#m+T;Stsfa2MzngH*49#T|S@MZSW?@tRRmSx;;z3Js7%jfj4<&QLC z1GTJo*@}(E!*)?cjY{MXIQ`W3w;jS!H&(hQu%aw|9v1(hyvoizT1%6uV7r6l`N_-m zx%mp}Utt4>^AA>gEZ(av_`O}b1NHci_FY%+ikeVO&dwh*rRqOdL$d_T2Zv63zp4gE zUs~UcIJP21(nTpG0Y#Lh2UWJc z1(m5uDHLefyEn1xQ;DCA1`aDf>{u*40A@$p44H6Q?<7Olpo|FT?bbA8;l|~}pza8k zKa@GYXR%sceM2j?6|+NIM!DgMiw1m^;i~!dlGPI<5zN@BwPJbfbBB}^#Yo>8;M)G9 z$Ft=)I8@h33_L%XaQtX?#`kGN{14M|LFW4rlsc@iZI3Ie&eQOu%<^($;bio@*#d?8 zPfJE%ljPOZ-5zGd^{~kBX_@5_PTEi`KyHF_4W{k4$xt#XneYR1#sExa2#OA)P&Bqv zb`aK@Yw`OD%oLWbOw8W?%ui(Y`M>vA9o^2EMmcatDBEXiD{Bf<;rqJGNXU(m6v_1S zzjh&PbKQ)suQ2776cMCU_6Ol;4|*ZhXw9GB-QyB& zZZ8klF7_`qCzS3=(#XUOb7OC8b$Y|ZV}zOwNL=+xfUo_A5$MaqefkcvhyK=2CW(k4 zLpd`DDmpr}`f(OD0z0TZF9!K3hK5KbnT$T}H@+y{n0>Cez*C*v2ju0cEctuE{7Yor z3LVe-zDQ7M7-mn0sMVZ|MIxrDS21n~OXpo<6{07NM|`*@R~Cy3f_y0mnpjUMM8bpZ z+tg^aM$UG++MS+0iGT4-{#j`73np82EH(Osz+sb#1`;Kbf82L)npZ@wK<&#Wk}{JS zcy@=QX!hbVUEd`je1YMH6H+ZN?=c*gY1>T8bk6F^3h$-r$3xFLBz&}RPz;0!F0XTr zAUv=4?_WpLBNj{dZU|#RTW%+!hGSL!lFksKkts!T8VJq$Q@8T81@I_)f2nN9BA2Yq zIB-ErHSmcNyp7{%UUMMu3X6{s(6+M}C6rUzQocbkrzgIW7H)|%CBB-(OknG(^}u+7 zP*IE2gD013r6#g|lZomHOeYb909$R$T=`Ls7w+1gGWRmWNPF0-gUAGZ`-d!eS;8^m z`CgS&cH;dgo8E|$lbzjdCU3r^fypE@!l>-QnUx3>aF$t2RI|uJNAmW0JAgd|I~jUU zG8!@yaR6QH^G7kpWYZAYHl2f)Q}Sn03s0*AaZy++*`l(y-c!@N_>uUi?wxMD^)azo z&#o}=ZQPUY4iuM)QtH0zpgGE(?+P^0(@1r)a|#|tN| zVGc2$Kdl~M4QTMW|34kn%8bzpj^ zo~cE4qe;hR*6v!mHezZ!41mx#d^9ab2Xu_*L`qX>KqR2rhKz~Up?G{q)YWNKdlc-; zgwlX=@&t{K=5|7%!~5kO2sNp?x0463pqJKOSuRA)xK{kcI@Oa(qmGeH zPX4x3L#h*JGGidoginH}vR2G!CbNj7oQzQ)Q{c6^!WThD+Md|r#v1PJ&iuCyhx2tXyI<^U7XDzmwI7%_u_@TWA}88 ztN@_xS!{}O8*3gCQ^Gvv1ob*PcjC1yS5{b(NoPpQgY`u5s zB@EMPwCxm6rj9To(QhQUf)G$FK|}VcK47&!vS7g$a%j;N>W1Kn3k}=PZB?QB-D!nT zf(!?-?MH$0%Dfi|n?zzRI=Mom51B9v!7(YCb*cI?T61Nuhil$`nvj4-Z}Y~)sLDxW zhHuy9-&R2aCaU*aOYD;1to7}em@12y7<8hT!CELjI|cGA!Pk!yMXU*pDqguNTK(L| z+x5>b8jXgSaq^osU(CCt^^}lJI2p=3EW>k?qk(SO;28*|Y(1A?4e=OnTJqbm>mqy4n(~BS zEuZj@TGS1QRuhL#`X)9u0rn{a+{SH-l@Zp8WdQqP3b&Tqe{{DADfL3l4DJDO-k2Vj!O^rGuclAf-i+`&%^bud?`KQhH{W{Mb>1E7%FCdE?H&?>AS(F9|-~ z6w81@U871F&d1&aV~j3+gMbRtc@>oHB?_C>Q{ay#q#A=(x6K*1sgC>eWOwmN-L|c+ z^{dH@z+yy1V=p@kxDOo!#K4PQkDTvFzpk8UB!6K?#d2CYFZo=bUavFcX6bg?^Z#gK zazcyrs2qAPJ&J@&Av0~S6=+zNYFyPj5S3ehR~<66h#lwqEKl>HBa{cRO+I`w;mZLs!__>d-OQsMKJKd~a#5$zROdHQ zL+8VZlgbbEyQj)1b+%?19r2&R0J+xIj&Ghuj>%h*UMmXbXm;&!W(l+6v@vyM3_VQP@G=GAZe)5c(m zDm(b}zB!?$#9DE7Z~Y<7ErvVYa8p}X^{Vw}X5Q)v3<@siU!etJRjKmcT588QloRP9|cT zi9wBMlMg|;aoRfqiYinY4aytG&ZJ+nyj`#WSn)NP&=l?b#1e~pMiFFBCgymy#)Ikr zVm51t9j|`>%-~Z4S~(=76!frhngMMS{Bg8??%!yMjp30JJeM4-Ut6{4yOH#mMJeV0 za*<9Xg_{Q?d<>q51y`p*og#Q?$%YX4gE*W5mGN>xNm9QvVvM-iVq!EDlyP8EE*XAC zTGvpEOm)WJ5=F-En_RtQ^$-OaR^l&phh06F*Y@i??k z?-)I^pv=Bl+ZK&?NqGt_j=vSBcI-V+PlmPktKl|e%~9FyMj||?3HvqR><>bJ&Ef=< zLMDn~-S960uXQmTPpwIhOA1v6wbTv|GFYn37KK9~Z+TD-E9 z4MBUJBuv4c=sX?pQ1WKk z<3Fykq>B+|tRMimBe5>EPM{BiT_6Mm5Seh98xVUN8c|Y?XsFwAVn~6t;~4cih}fLQ z;vjmN*vbr4zev3{LWu5(u6qJ|s0ffh^^6X;qpd3H#yb05@H=$Z{yupn#+(tdqdVDM z#uZ`nZ^O@dV=(ONYLcaVmARn*{5kU7N`%UI(*choE|XFYTCVz(@CijswDn?`b|zO7 zyNIX1I$hTZ&}cCn^bx};U>-;BL;Fp~eS9S77!aSvvP-U0sj!cYn5&_;;FEogbZ01Mta5@g^38*sEfeL zi^G>)IuWN>;`-9JdX%1X2EfQyt*XdzPmN+d!nkzWc(1|wfd2> zMI7){8}PhjD7e1*bTiE~{o%arF|)yskdzXTr$56NV$2}FeCmn5(r_!)T>{WQHx;-r=bTeN~DE7!K6F~~ADLHY!X-XDYA=NK?q3X53= zgIR_Wt{`Vzf50IRa{(Pp`{V1fpfQ6Vfa4Tr+3DeZ5G0b2w2vGXh&JrS|8xek(E$_Z zS^0^CBH0jJDzC-OcNYih?Jfpgr%r`EiPqxCyqeq{>P9PNR69y zR+IFvzigZNlD9W;UUWA(H^grKYyk|to9+Aobf3UStWV8;jeJfe+-d_=_S0LXC`%UY z^{`>u&%aLCShWkVw1m2O@k;R4+!@Al;uYxqX>$a6DTehPO_IZ~Nkmwq!|$YIJv9rA zk$iBK-vl8D<3~{-{@{XoAFVkehnk|9hc98WkunDn1iw#lS_+z;E5-D#QV$qZI&m0O zl~q?XXzcT-sWt4Xi=U_|cb1la=%c#tK@I@MtT1OcsB&Ql%5=fxhJEtI*KJYcq`<7; zc-Y`d($BU1j!TO@V)^R3SQmGzerBq_>sx0?%7|egszbhxuG(e=T$jEGwWpe$nf|o> zoMUhOFncM?Ba$?JsF|cirM|Yb-X8GvtgBx0m=UOFpJ#QPPaE~;^G+gF4c818h&JX9 zL2BJg`UOMYs9eA*FBaK^CN3ZL$M>E5SF%76Lpuo^P_!#ixkx}f>N_fhH*8iUxy1EL z|3R4&4Z_UB@@dU!o;79OE(TqQ@EODj$)XngvqJ;8R&ptFhZ>q=2Zn%qRh{a0NMEq9 zVNIF7b?G~Vwvk>`$N1nas8C!U@-h-UyUBdZh~)T`%&Vv6O!Na!X8|%Iv&0w zL#K9DF8I-4^k@|y4`Mtu52d81VX0QuE*K8!bz@r! zIVQ4VC5mbBG^y0GRVe636)ULJ8+mg5%or!O5{E_=;^Nt5IpXAzxpT7Umb@%BnWw^- zy>4AwOqg^V>K$gZuR$B9CTvY^+aOWYox+V&&YSRXpDKVTT4zn|Q7}KVZD8A~5|e`-X0?fC`Fv^hz7`+C)d)~A?6hvtz3(oc$dy`#D+|+c5+aE;S6i}a!T?+f0@K3ct z_tbL`{nB4kZ4%zZOG2%-m740s_%sMcW;SRgxCwt>H~IkG1-&M@zm1xuVsM^GA7`5V zS!-Lnk=RWV(D`0J^f8e$g->FW?vS7~JCBMXPH~f!w;_DizDEvsGQ&Z!7r=-ED+VqF zSN=5Kukh(&u!fs)Xf|NM%)L;;EIH>+Mt>f`nJt#e93WK8seFC9ceg+u}b8glU(9mVRh7C4yHD zqM*7%kxtKy%*`2fhqizAH^O*~Q)$g6BKstmY$YO@3pMc*O0P=NML3a z)*~+^^>12?Xewjcs?%~>ElE$B6;~dZwU?t;wc4g5D_?<O~_BtuDTbRS6sh*o`YyL3XbN8IU$mD9-FiepV;5G`5 z${d)!@xC7OCx$WSq{0EGd;7SKE;GD+_9N+n-7f~NC`%*NKr4e85k5tWKPIhwTq6NK zOTXj~Y3$T;w3H+0F&QZ#AAB)FblBHvr9FD+v2x^auI4?@aEmm)le1CB`E+zlA?FLnSD4_=5VayjV14mErF~ z=ORB9Jn~)U-SwUxKZMU;fauui+x@oPw0&(1z86nO*1-8Gc@2#NLFeH}Y{GYVw9I0j zEm7SJh5grW{Wkj;nP|i%jQ2@&0&FX*D>}=v9zy`7Y!E|)GKKr}!lTd$I~dIuT2Hk$ zrFK=n+J@`y;36Gll^%^>Odto&@SzBg^#?)#{FWP>@q_fPcrCtR9LTtB?9)44erSp> zS$&m=$$%cVMJZdyMkuXAwwCu(8QDOQMYj9zGQJXtZ0|mrP4S^mkSv_U zs5mYApqz~b9LHk>r|HS@^k5@Rww0n^m>jvSx?GX|{0MMhOe&?CE+~ajVd3Fyn{OC_ z*AyVh-H!PL%|WaK!MFxZRgbub2HFjvv)o*jiCRJoQJpDhEiLrOFE3p`+6pO?=WJ}l(8_C;r|lu%mEO8#hJ*^NsXx+1QSya{Z~U{h(@cx8Ar-rtpW+5I+j{J{FM|!vJa=3 zlJSWVNK5T@CyvS4r+7+?#&!|7!ANABp-LSiNslmYl2!}#CiP7Yh?;g#ChhbXRzel1 zJa;oE37H+(>dPu`8<9O;W8TM2b+Za?%CaE!@cZxXZ0?@~^~3`f zEQs(fFZHBdu-)eIp45S{3Z^*frw+}uLojMW7UQe%d7jGGBCNgs(O{a7cf6NuGMQwl zGui^bFqL6$f>9E7_v!6Tid;IiEb&oW&C@B#aC+4jly~{4oR2^7cYRAW6{W~s#IX<9 z_W~QnXP>0|H+2Zw<|6pmTek_NV4Rqb)DBCEUY3Otl(2owsM9ymwPu*mv7%#A#Xro0 zs-6Rmh*5elJb`VTA6)l1pLJL2pPJwake_ja^aQ90)ROPB5c!A-!vU3DbUjsF*wp8k zO1VQ$2%6G4Hk`ktR;)7UnSZ(dvOrQ*@)|{DxKkMkUOh<{~l%t`b!SD-Sgmvh|M_$&MywZ!dkMy)a5h zkdVrbQ^K)UV>!`(tO>7>{jtQHmSg{*Z{D=);X9@fv#nH?z4&W$dXRlXJRO)j)t)ag5Fu}vSu())it#I5f>-)Ts2yOO|8dsX)vg#k-gcl-pBKd2q8oKo~1Nj=Usy6etNj^hgX&;(fm%qnZDZ|v}98T4v2k2~!3}$P#)2%`} zJLjB+12vkA;}??WB&!9bt(xB*~>?_UbCXt*Z?rq`AcgkoqIf7I^^C#OHVwC6fkWbU#Lr!`MkwE%v^oz$IV8HdM?{UhIp1$Bg)F@8ek*k9#8sJ zdWrwu79YPcy&4XxUFMs?7JFQkpUowP8hW#m>iS?wt3}@!A+(;ESi8WTRyaLLpnD%D z){*J&74%!pm^#U*RUqKa=7u}C8*e2bPoM8cu2%`hjOvOiP$2BV!m&*Q4-H+os6h6X?FYqCvF75Mm<9;bBXTXi_g)8AOhnZzS z>ihJ0LG!v{Xr~V|KeM>V{M!`qeDC?${d!?XjG{~%KWl))g&@Abk^x2GO>8Tp32V@`s}-zoGKdUfCJaY1)R7#olD8#a^b$#3)lpU zInDr*)IVF8l900>VK)W*@{m{i7^P*rZ_=P9zyG!~nOSQ#pKLC8#XNJQV?i`dy*>vf zxBhH-GXb> zOfKEs*Yo4L3;n;YBxLphjygJT8)fPjApK0YQj zFGq6#lZ1o4tC+cqsk61CtAjJ#fAI>&c3&;R|Mj6$v$ivLQ84#Vaj-MCS5lQ%`|4wB zZ0Q2vfMXJNF*Ub$1#odQGcq%?vT(sM{WH`*A_f*_4n|fW7dtl`ld7w^od$q|nGwj! z&dmO$CTi>`Wo~V0nTiTiffd6YAA|ei+09^)l4lYJk z_ODI=238;kBL^FhgB8F61Ofrfz%QQbtBp>o8aCJ|#7^M6qJzagONX5#u^@QF%`{nPg!ELpw`lNM8RkdzjaH+BRtNt=BE zVeRVmUt(1+moF5g?JXPtU(lci2vY7?Qst;fX=&}L17{6%dFOHcRz{~<*Wo2aq0y(+9 z7{-c!{ z_;qw{E;ax=I|m~(I}0lt;NRANseh*d{Ev2y|Iy~+;{G}wkeTB@TL0DlKaKtGy#8(d zcf5af|E0LuSQ)w4I63~0$Iu6Ge4)bj-(B_IwYFW&oxdX1*4Wit z%-qz$%p8tM&fMP8)#}Tg+yVlC{~ha|x%$bI_8~wN@y8E1rr+Wa?f`j;(9}6Gllcgl zSI{9M71?2}5$&r-c2@GFZ?M%qeznA=RO;_4y6B!ayU@!*J9+iL2D$XQ!2E+7>*b_s z)GZFe5^3LDuzQ-$zU_8?E3#*tc^5(E zxJpf_XK;39VOz)r8M(g`;29*ZP1^EoDmQ=2~su$}hy@1{&Gm;I9nywG7l8)a|YRaqvF@{r}EotpCpHfBBvnz{1VJ z!S)CcJ%gVqteBJ;drS+b(0(fG>{7dwF8-vmWX@^o*9GI_B%Ad%hQ2? z&wEPf-6i|a^#^X(rGT$%>p8D?03XC5)vn+2T2Y}nnTFykYM&vzQIGjv?3qp>BjL8V zVc&~1`tfYqrCaYKV&D-Hh}&stbBbkGOPw#GkT1%mr9y3O6(sM;)%%k|BBi3C=P9HI zE-}~%85sEni}}LW-z2>&<_8CAflFeR(lYObt*4ADzXRRWOLjPdzwE<3C>+XNL(cDgLUqWRrx0}3cL6ky(QvmDo3fbGUCm} zn;XxLXmK6!Z{W53{^n-uY-evonrk!Cu50>1&dZ+h#$)X~)C`To&_klxEv^jT(# zpP-m7WHY3@8HJ^7AA5z-l*A%v0I_gQniz#01bF*e;u4Swsc^U74nW|HkRFQh$_ACF#qlfp zUwO7P%i8nHH;Lv5|3us*YXh;dL>Oeo*FJHz1aQqQNhcD+TyN}H&I+L>k4X&UN(nC& zCir8M*VjalyUfn}F+MJ~TQwp*ToNs{;tqF-+z;&(5}G(Mbu)wA+>%!QJXsx)DTqkx z4Siz&}%FNN45K>Z|qjZ*TZ|f z#>m<=K4{(h;wPe<@ByNqbrR(mQ7qcr;rvqJll91?FJC)n_=r2dZFb;IsA57zd?)>6 zq`W{&HrLN}$Tm2Ig09fyD>SG^nsg5%8l?O+vkew)`cg0sb+Ws4Yhy0(m#3 zAf@2Mq^lOq01cW3d_I6FEN9JjFy@NJDcRnP3s<&tPWz6?80jK4Yokg*q_++1qObLm z60{)-?-XfQ;9B`w)6L}7fC7qrFQOBu@Wji!D`l=C`607K@oG&%sCZfQ8mc=KG2F_w z%ylL^x4#XNFrYXj@{*WzV8RkcPdYg!f1q%~vo76J0@;*mAb||48oEBvxF^&l5#zSE zTxp}eTG4CEWD`*MKK)RTYI~@I6ZKFB;S)f&5kmGGfp-VI>!DAeh!hGfBttHF9LE{b zAZ8rVjDKB-h>~G#LZKnSSKJ>Um~2R6@2w`U&z4oTb6Dzfa(IX3&AA!0s_??_E?x&q zBO-J{a{zldK!3i>VvK2^2v-oT;1p55!)IA#uUeySr^H|BZQ!P5xAdkC|7+F1^U`zV zdh_pGPuF|PL)in?q3Yc;QWFiQC$JJP%14R)Vh|qa?+xgckA>S217{5x<6h2c{b@J_($ad){M4SrU(9rv;eixKvT0Pp zJH!{LU$>r_L*Q$s&?&& zSb?!pjy#VHR9PoEGj6@YdGLq!6TzV+(ugBfb%fM|T^+DBhox6bi*iUB2PD?-pg$IQ z=#rbojAt5#8I*$g{i4*{)SW}dfDx@9icfbT`8AAlhhlTp0sbBuiN%Jw`XqibycLM$ zMq?K?UWpTI0Bt&@`CGD|>rl8&H4A|?Z8}IQ|K=D_eI>vA2BsUA^px6jd$ z+2hGpjg5u{pjg&BdpqMyUOJs$I?6s{(YRF`eQ%%Mf`((njP1ltCr*a~E>*~)-a{#k z;6^h{tk+{Kk>35XW+eDb6|Pc*1q<3dyK9%*@o_gp{ z8@3bp?lAV3YB{SV{6uyDc7vArDqQotBoJFcg=-+#K_XjnQu;UxR~82qwrq}h8=31Xj($}T=#^k2 z(p%EYnC2vf9l6cMNJgFFB)<)j))cq)CKn(K zy|{b83rc&0)e%GLPX9Qe$x2MF;pyubV3Eq!OJ~J}#?kWi;5jhURb*2}xNZe)(I75X zDzVRmqr~cDZXCEmankwpYtwV4rhBD`J~KLaxg~Wn6X8iP*t$cQOO9q&Pf3gu$k z48<+lkD%|;$HIKZq13>khTJrK5t_`=zH0K-ZSYi4!2+(QmK_HDic(Fmf!>#C5JD3j zq7!mLv?+SIN!$i)q%Ql#YC3APs>^Defsa%U#`>Mg--Ng0=#N?fGnSJ*qd44N7 zX@BBiFT8SWBR$o<4Sw~JTN!&-#3{@?I7Wi&49$}P&wLox*j?2EAxhv)*`+vtsdBzZ z{RWK`8BSVVbU>?CQQ_i1v}VHi0b^D{0PEDE-0=Ip-zU-|VTYwHO5LF68!Zjt>fHBB zrHC>t`>Qvpa4h6f^KoZmn30`{yIsYqg_Q{9b~=n98agvDtAO32F*|5s%}}P%p=wq- z7Zje3@Ni)RFC|fRQMW1;!G1c~t?=nPuNPlYJ16xeN1Zf=)pn7PTBgzVY>}7UqVK@E zdD-*?TZH7p;?Xp_bdZC?Qgiv#xq-@{!?+49%@%Dam>ZP|8Eulzq;sW}+VQ$wm+k(Tc>a z^Hv{s0W#O1ZYi~s1q`V>Tdal9p|X#BqpBUd7IL#uEHhY^mi4&eST1;LvIUJGKTDv2 z)POVWHEoG^Nt~2!k~?VyD9YDUA#Cv03=0MtWaMxclMQ%mn~&~JXiSayg7PnkhV3{Zhjxd zObkBHCGB>dywz#-)@dbdI6AEc?ea0O=IZ*c-_x(=H2j9E4#tGG9*$onMSB4oLJOAM zcM|~%O)UQ&p9%pf>ryG`^H)O{f>bG}kNk?-4$PV*s}cTAtuUewjOc}sAE&kuI>&Ts z-3FfV`>WBHb>u-8gMUBz0n%Fs-2%NXXeYV^)c}+!r@dWCerlrJkks zlU7LW#CbwX3JU--ccw=LTr2{_Q40yE6fdYqf5?WkUPzpY7m(|1960YUa=NovgX~d9 z_G5q?nxXYtjk>40^1ZIYF*n6!^F{esDn=j&Ff{T#MEM&1TdADOi!zU#lc2L5!56OB zp^4NFX4oxV@Ma~bQtDF8Qr`}?#4q&AC3V7@kZ3|fHNvS$#$9!H(43xx6?LHS^Gejz;w9J$x4r-Ggzcz#jGKNqmQKH!d|GaY^~u~T?`?+d&SoR!Ly z&GZ=b#(ej2sT?lG$UN1^AKQE zyY26JOAb``2`Mi;DwkCE0xAVEXXXpMYceT0Gqbze%(L0>Yej=^U7#m^Ce|!7RxH1K zSzbbGB6$-r{ISJIxGCt*rA)kJTqOLTdTe^nwIM}MID8%PD~<8bh0&CSf6v9X?8>(6 z!keJpCXJ9alMsriBrZ|s1rr*MGh@}`s|b9p_o_rBk_s;mBogIJ%+o!It$O<;1!PMP zSA2tW(M_{#0=d);6(Ky*YS)xCauz;m>7wrbZ^Ku8CM(&xQPzu!Wd#8&LA64X4kdIX zsF?M%$vmnv=syTeUZOEQI&aEnDy{>|Py%g;+rBjXx>AhT2EHiweLh;rYIFX&P4!I7DkqxZC=G&v#bWf_#ZDHYNy zo@`Ng8I%S#^D@71YLu&1zcqiWDKFKT8)>EW2?2c|^z6zG*!_ux8=ad$E&3qN>EbOW zy9)+03`@~ub|<8Q_ALj70{viaett`%Xw*vlkWfk_9gUiX5a$e?+IpF~Sfm@Af@C@} zW)cs!y`Df;)Rp^Uq13!a%vfAj|6H#Q7lxUsyMOrRu9P!1BV?0Da68`t*XV+`{De&j zv%hcL?6Qw4+@20sAIqD(o-cJ8hoZiV+?AD=%a&3wad22XXZ(?#j_Ef&0zeQW!Q^lt zu;}I{S%W2gGDxmRlDjGMvOO1z(}EJZfrEy=m6HB=@K~8K&7AtjVo<{5vnvlH6&mHL zR)&t=QfBsqxh>0*Qx;E-Z{?Ib@x+s_-iQwJ@AfHo8~zkn#2r$5&S>)Xb{MDNoS3$# zl$cn4ngs^ZhP}`+xUFO%g^9L7ma=YT+(m;_SXYi^1Ox~vm(QCh%=0<*Lxx)6N;rMa zfM|X-LE&_Ks&q*O(~nA6^dEIy9h7PpH8gPYcUa?b?{o^P`u&x!J~4QOMQu&h^`u&= zOG|=ly=%JqYFm7sV)mCvb~Rk{8W)j^UA7QD+Ke_fj+cvSj~2@z+PdBU^$iIL@zU+H z^A*!B#)3*Wjh(%<_%>JEt5=L!gQ_Cal| z&rFmYb9Mxl8pOO7EUeXop-4+rafK{RBAddBEnRz1(u@bMCIeN$_LD669Rw13 z85GAY<8mzCHl{Zfcd$!!oz!uXnk!}707hkD%h;1h0SYmYEQ10w3|y>zS($?pw80d@ zE^i7!a-DE`_*wbnF$N_@hJz|^Boe!e1J4|ZHbk0@8ZZc4ip7D(8uE-3l@ofytVT(& z3V{&g-D7qPMD(KKO7sXqpPyz%)r*wg(eUq|%P2&MiX6vT`v9W>ka?p9gsVwO+zG=K z5noeDfis!#l#sfE3YtKTf|SrmlAtf3HgdU#Aq?502%RHoNAjZtgxa1&XM%5{xD<9e zLwGx%L-M2eh$5K~kEwsa`f)#mq3b}i5LJJq9E*Z5kQf}2a-gR z?fM?_;tV^n=>=-RQA`NqfQzDzI(NZ@lce`M9_ms@phoVaAP)=!(VpRO;Y7B};qNDVNM=8Z~!H$ru^bJR5h=ko>${le*(xUztpqR)2B335$#_qe8 zOXPy0*ZES)iRBL0V^Pu=_Su#T=Ypr8{^6PlqnS7cBA1cQL|8{=koiNw@30Jo0l}}C zfauq7@i9hNdud8BZ8#Qm&^xs8_ev3M5J#jRm`60{o%7F;tB!hb8Fa5ZI$D8k2w0?y z5xs!gK)O`LLQpIc187Z?@%zYv0mM3-Yl${ECklFDy|6ZH``}*E+VCn=hj5!zen`BRi`55Ml~676VS9ptsVC)72Ar-m2)mV__7d%sKMWuL~7N1?nI z`quuF0AIorsIBN5ihgyuPtuEHPY?sq zHv|L8H-aspH!ycvhrSGg-e6AD-tgAc)m?l~{A=BKXk+X>kE_}nJc8gy6l9k-qAkfc zPywMgD&I)Y(EWs~`Wsq;Fh!Jr;LS)uGW!TaBji2iwU{S5-{>d&(fv9@FUViJAVpvW zB>A_epO=0wkDrGE?>P#ucRxS+egxd}7JM8MKix6;A1?}ChAIj=4*Zxs-C2D63{u>l z^?Ui)e!lbD_;JZQ{Nr+8z>oOx^i|>dwBTdr$K|1bAJgNh&nLX!3-l*RLC>FDMZx36 z&p*B|0Y14O+kX~6sTIBiv(I;nuXh1&0XvH{pToc|ArM5N2JZE9Q2=1Tp<(VpS1F7s zahT&_{kT}ry@#yqC~J5k8uhq)u)zS$Uu{E#{?XFXA^v>v35 zS^^w$CI>u2S%y6CuF#$!`ZRO8n2SkKVxa=3Wt;h|(c;=u4B7}!SvjL@*MM`Ld7Pu= z6y770v*4zYKNTgC2iy+~CT{UxmFM;{moauNkTHv|GW9}YntI8~jucTmAdA`+dwUI3b|Q4s0YZ<_z82Hyy!(do{Ej2DuGzB`}v3xTW`j}dUgJVW0i zXWRMtxKe4UbK}#3gR(@dEfsN6q&-YEmmHbJaKvq2$}2C1dd9F*b!M#Hym|foEx^0> zv89hMy?aZXGWDVBlHdEh`;N&f(EHHim-@hU_h);2s#So@6z{PoyV?H!g(Ahw8~WqT%jssvI|OWXZF$o$OZ!rA4b-Cw)}OF435>Ugh)1Xcr(Oi|b9D>M}>$cztlz;X%0ik?uW#^{2DoqB_xJ>SUGQ{?u8HV_Fg$Acr zIyz^+=4MRZ=59FVFZ1XA@PIuwFyvB{gFAMonhn9Fq|wxqyq5`^mnYA3zup)Cl#W{* z&C+$~AG>(Zf^(9&+o9g!){$5%-zw>$^#e3dQnRXRwI&YZ?=lTfx1?mCl^E^G5?IbP z{nnWY*tayDr7Cs-%t)JIHxnsa^vCEkj_W!p;nd+gPb!lT!B*fQz=hr_CQ4Yr3=Z|a z+K)NE0`gCf1j$TOD=_EyeW}q6fV7B2=zEMt$sO*!6 zB;C6xsqwt>Ts~{zGV-L66{T&K&Hj5mdvK%&5iiq!`dY5nqUCihGk!Ytbj{Wbj-$%d zbh(=G{D73-450#na=qDB%>6>(??&q19(BgOJ;XKzww*o1op+BZ3KFUYC_V2Lkn|ST zg23D)_W!52JB^2O?H>SsN{7NjC5$CavNQ<8jG3_}OHCL>LbC5;pBejBsbm>4lAUDB z63V`X82ipxGE|g(sSHOH|6Avr>gf4DpXc3ky_(POUasGLE%WO8yKnY*uVyo*xwH71 zFKZ@ed~1hWxoMlN7;s*1&n4EB-|kMe+qj^uoNhLKy)Y6CGITH_Iu_KqMXOC;kW7L9 zPBl4scgyj7Zefg=9mb}N2jn5(n!AQu@jok@dEd!H*o7{pC76Bqn7^Vgi_dzEdiAt`y5=ae4y=ILX~D9zx8 zMfl7oE$PmaLDc8I#V3+vc076}m;R9NUwjI>)_9g!BDtnO|RWx&_}!cf&?G*+J}Z zOoF)Jl7Sb)1tV&PJSW&(N-Om2EU!jS9J34$;das_kjX_{>mS%jSXQa9VupBr=DBc0 zlQf(w&MhuJmzi1((y2J$+h0Fueb2T^s>nE;Cs?@$W@9!MbjQByaOYf19_ZjU=6&g`K0X@CKf&S^c*9rj z@Tn|d%};ZvRFdyeEez5*7Rhfv6jF;%U%hQEL!HugbMW??QX&bPn+G#$cHa9WKnu5n zGIaT)n=a*Ji!p^12imP`pAsoh@uPX=s?0)kXKZ91UB)$@jV^j6Ye0U!wyKy@<#{{9 zrLDs8!nn%gopmC)RHe93-sF5?GAi9{&7mdLyl%lX!w-^`Hm&sruoQwLqh6B+p!PU} z>4R9%%o}zN;)FSGKHuZxdE&#EtJ)MSJ~QB9z);G%MNX5B#hEhwCnALOjEfqX?hpL$ zV(&VWV2x6ZvTXqxigRO?=(diKy{s&w~Un6w}3=hZ-!~oscIr*Wx?`JDcAKKjC@G z{WS4W!Xq{){p4$@7IbajVemL_r+ znpEY7G)I;2%#;WEd|7kZzDT+^SE_I7yGqtCPd_4|HsE#W=}YG7AeCzJ5ww5_RA21a z`LNhfyjp2@KE>WW3t8NK;MPMB)iHfvt++pX3X{$| z#AECpHN-vo{2()XI(n?Z)adiP?&>Jz(`P;#t}o|WPM@k7V!04=eww%5F6d0oi;c!p zEcZh96slC-^XhP|<$CRJuojz5ZW@1ciES_OSJh7XW{yw4=#?Xx)k^vz zHKki$H-m|PWR9m!EC%+uXho{?LM}J+02ygo)y&Tx9_&-jNpHMTd>`xCOB(b{lIgM? z48x43g1M`NWR2!dH5@xHr2DKTY6Y|mS{a!gd3&ivRzAWoLV=}k%3$tMgl*scqZ=*^ zM@y2ugv6u3X-7vxggN++csM#cM3hf|O3y!L*)5pipf*WUO_;^>-pl8aH*wNaj8xA} z1xkmwLY52YBcqYJ#~YBo&N99=!mDB|zMxSlPlI?tS*!I76&r1ofQ(3R%$AzyK$Im@ zEeO`mnz(Us*@v#a_c96nW&l(FTXl3g&sB(H`sFu;u3s5B*>s7MC>q&wdZyp#BlOZD79Fl1j z6GKHBnycCFnF@H{wPp4RWa9}Xfu=E6)>6T~BD%F11i7HXqVHD9i$v2Zyq9unc%r)L z=S3vG)d1n%2g@r>Tu69Y9+|w^A0wv-o~e{b)YT=V3@>*m2DTM7Fbyc&JgKi)7MTm8 zj4fco2ePM+iRFUI*B`fxU6iPLKJL=mk8?Z$z@-s_|Xd$mNx)dtYy|$x78O!j> z+m-d&n+ex)ODIrK={6C(_gU@+ot&$Wk}rGuHmx_j;TcN!yw9Cv`csb;d31y7vPZ|H zTc|t=rNg{EunU4Scf8rMY)$Z5tI^uczxPKk8;kzyiJ`Wzi8gFt%%x&`qf13P89AVz zUO3UQJ;_k%BaL+HCmbrfF4AI%w=~Q?{&0hOmKRNFHY5skW9$Fb8NSMZ8nWYcAgT)v zvAN|_Y|EeB7-&m3<_B;HB*%#gP3YTV@r z@}6#uLae(~R$I4*zg1Y6ouBGL&_MDyTKoGF3BJ#VU=56YqP&fE><7iEx4r7mGH~J~ zd`3HsSI5Q>3X}=Oz*twu?gCWnkHFQyDT)lKuI z*aycbx2o`U@4Us6h3qA{hukmfwCr3@aHWS_b?LRcBmtU8b(-03LemKaz0f7et^*%+ z@ucym40P;x_n*se>xH1{b}U1a`@%xJ)nl$MCI!mJVqyuPWS$-|`o$h4sjtasiA8N_ zLP-_g2i1|mP~0{MX)7|hVtaqmr!UQ9@Y*x{)=(v(DkB&P$7>4f+fBGcf4pPfC?OLbXL}0$jb)SmyceC8L@CIntrUj}I~Egqw4P(mo-P z4KbN;tZX?;Pv$_Tfve$^oFEsgW}xk>j`)cW;Su}P!e!PS<^B-H92JnwPbO*JK$^`Y z2c{a-26?Od=a=EPKVFwLetu)|x#z|HX2td3Z@GwvaUsOf!>AoE@nmtb^7D>92wJYl zo#I^^*E9ECOhRc+P+DbTYLFcJaTY;+2VZQf$|AIJL#^r$*h}cSq^u)VJX>l=S&<1B0Gcb}`G|4on>}#JLU^fG$~$RHf`L4+xLQ zT@KHSIB-(1SJp_ZKfNqWn1MCcI2rYA9OmhwFKWmNq7E?bd!zYGVk zmnmTGA294NSy#-Eer1}_f9o`Vxb8ol_n)Nw+@GXf8E0?q_ye*7cJeRCj*^6nOCh9T zK;$RL4i!g10dxL0WQW1Uk$`{RHS0ehI|2$scOCYBg6sg(6oqF|0kUOm$&{KNq;*i2}XWL?msN}k6*ht_%5%F!AQi6B*e3Ad<`qRUZ+S4eso9D1+#@Tl~`nl_w7x zo(rllwvE(HXHaQBdL!WW?BY0Mu&}*P%_&+Jns71Fbt8AIe#v49fq9}}m63aP@^F%g z?A9x-gRu4pBD353Vawhx)_w&XH`Tgz5ic(!ISKc=`>5*JnCo3q4Awg`_{lU$SWgLf zRdku72ji&WRjPgzAKOP&_s94Q{yvCKfcSo>Nw!G!i7od!cw_PDNilngzK~Tye5gXv zIDbf4O8MvnJ@66LmtvC)O(z|D^toLEt%&1S#JcS94-w9+kn5vfNF|w$H2~i$7G~-!S-(Z z5tEceA@{^!Qb?cz;h*QhVK5}HO7~m~1$x{QlYs%n8o$JV>WjTGxb)s!U{E*=(Br%9 zdwwt|0@w|EVp1^V-uz(FlD|AJFdo0;0+&X}?9CYtg90@n-}@lo%z>gD+-}8@uDuT+ v+7XNrIxa3i)zI!N0DqUeH8J1dJ5ct3Cz#_1-{u1jlYycb1qIc#)fxW}2Uz;G literal 113509 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%0D@;oEI` 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 diff --git a/columnphysics/icepack_intfc.F90 b/columnphysics/icepack_intfc.F90 index 4a7d466dc..cf3c7d773 100644 --- a/columnphysics/icepack_intfc.F90 +++ b/columnphysics/icepack_intfc.F90 @@ -1,8 +1,8 @@ !======================================================================= -! Copyright (c) 2022, Triad National Security, LLC +! Copyright (c) 2023, Triad National Security, LLC ! All rights reserved. ! -! Copyright 2022. Triad National Security, LLC. This software was +! Copyright 2023. Triad National Security, LLC. This software was ! produced under U.S. Government contract DE-AC52-06NA25396 for Los ! Alamos National Laboratory (LANL), which is operated by Triad ! National Security, LLC for the U.S. Department of Energy. The U.S. diff --git a/columnphysics/version.txt b/columnphysics/version.txt index f31cebc77..739229a40 100644 --- a/columnphysics/version.txt +++ b/columnphysics/version.txt @@ -1 +1 @@ -ICEPACK 1.3.3 +ICEPACK 1.3.4 diff --git a/configuration/driver/icedrv_MAIN.F90 b/configuration/driver/icedrv_MAIN.F90 index 881bb9aac..5c84695f2 100644 --- a/configuration/driver/icedrv_MAIN.F90 +++ b/configuration/driver/icedrv_MAIN.F90 @@ -1,8 +1,8 @@ !======================================================================= -! Copyright (c) 2022, Triad National Security, LLC +! Copyright (c) 2023, Triad National Security, LLC ! All rights reserved. ! -! Copyright 2022. Triad National Security, LLC. This software was +! Copyright 2023. Triad National Security, LLC. This software was ! produced under U.S. Government contract DE-AC52-06NA25396 for Los ! Alamos National Laboratory (LANL), which is operated by Triad ! National Security, LLC for the U.S. Department of Energy. The U.S. diff --git a/doc/source/conf.py b/doc/source/conf.py index c512c61fa..6a6aa7cc0 100644 --- a/doc/source/conf.py +++ b/doc/source/conf.py @@ -54,7 +54,7 @@ # General information about the project. project = u'Icepack' -copyright = u'2022, Triad National Security, LLC (code) and National Center for Atmospheric Research (documentation)' +copyright = u'2023, Triad National Security, LLC (code) and National Center for Atmospheric Research (documentation)' author = u'CICE-Consortium' # The version info for the project you're documenting, acts as replacement for @@ -62,9 +62,9 @@ # built documents. # # The short X.Y version. -version = u'1.3.3' +version = u'1.3.4' # The full version, including alpha/beta/rc tags. -version = u'1.3.3' +version = u'1.3.4' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/doc/source/intro/copyright.rst b/doc/source/intro/copyright.rst index 86b15b8d2..e477d9d57 100755 --- a/doc/source/intro/copyright.rst +++ b/doc/source/intro/copyright.rst @@ -5,7 +5,7 @@ Copyright ============================= -© Copyright 2022, Triad National Security LLC. All rights reserved. +© Copyright 2023, Triad National Security LLC. All rights reserved. This software was produced under U.S. Government contract 89233218CNA000001 for Los Alamos National Laboratory (LANL), which is operated by Triad National Security, LLC for the U.S. Department diff --git a/doc/source/user_guide/interfaces.include b/doc/source/user_guide/interfaces.include index cfedb8697..3050fe53a 100644 --- a/doc/source/user_guide/interfaces.include +++ b/doc/source/user_guide/interfaces.include @@ -2561,7 +2561,7 @@ icepack_init_tracer_flags tr_pond_in , & ! if .true., use melt pond tracer tr_pond_lvl_in , & ! if .true., use level-ice pond tracer tr_pond_topo_in , & ! if .true., use explicit topography-based ponds - tr_snow_in , & ! if .true., use snow metamorphosis tracers + tr_snow_in , & ! if .true., use snow redistribution or metamorphosis tracers tr_fsd_in , & ! if .true., use floe size distribution tracers tr_iso_in , & ! if .true., use isotope tracers tr_aero_in , & ! if .true., use aerosol tracers @@ -2604,7 +2604,7 @@ icepack_query_tracer_flags tr_pond_out , & ! if .true., use melt pond tracer tr_pond_lvl_out , & ! if .true., use level-ice pond tracer tr_pond_topo_out , & ! if .true., use explicit topography-based ponds - tr_snow_out , & ! if .true., use snow metamorphosis tracers + tr_snow_out , & ! if .true., use snow redistribution or metamorphosis tracers tr_fsd_out , & ! if .true., use floe size distribution tr_iso_out , & ! if .true., use isotope tracers tr_aero_out , & ! if .true., use aerosol tracers From 795280797a2c2921336dd27323f6d9738fe94a27 Mon Sep 17 00:00:00 2001 From: Elizabeth Hunke Date: Wed, 13 Sep 2023 15:26:57 -0600 Subject: [PATCH 3/3] generalize logic for coupling frazil fluxes (#458) * cherry-pick update_ocn_f commit: generalize update_ocn_f logic * update interfaces.include * declare update_ocn_f as logical * move optional arg check and alphabetize doc --- columnphysics/icepack_parameters.F90 | 24 ++++++---- columnphysics/icepack_therm_itd.F90 | 48 +++++++++---------- configuration/driver/icedrv_flux.F90 | 2 - configuration/driver/icedrv_init.F90 | 13 +++-- configuration/driver/icedrv_step.F90 | 4 +- configuration/scripts/icepack_in | 1 + configuration/scripts/options/set_nml.alt04 | 1 + doc/source/icepack_index.rst | 1 + .../science_guide/sg_boundary_forcing.rst | 15 +++++- doc/source/user_guide/interfaces.include | 20 +++++--- doc/source/user_guide/ug_case_settings.rst | 3 ++ 11 files changed, 82 insertions(+), 50 deletions(-) diff --git a/columnphysics/icepack_parameters.F90 b/columnphysics/icepack_parameters.F90 index c0bb453c7..53a218a06 100644 --- a/columnphysics/icepack_parameters.F90 +++ b/columnphysics/icepack_parameters.F90 @@ -147,8 +147,9 @@ module icepack_parameters ! 2 = mushy layer theory character (char_len), public :: & - conduct = 'bubbly', & ! 'MU71' or 'bubbly' - fbot_xfer_type = 'constant' ! transfer coefficient type for ice-ocean heat flux + conduct = 'bubbly', & ! 'MU71' or 'bubbly' + fbot_xfer_type = 'constant', & ! transfer coefficient type for ice-ocean heat flux + cpl_frazil = 'fresh_ice_correction' ! type of coupling for frazil ice logical (kind=log_kind), public :: & calc_Tsfc = .true. ,&! if true, calculate surface temperature @@ -438,7 +439,8 @@ subroutine icepack_init_parameters( & argcheck_in, puny_in, bignum_in, pi_in, secday_in, & rhos_in, rhoi_in, rhow_in, cp_air_in, emissivity_in, & cp_ice_in, cp_ocn_in, hfrazilmin_in, floediam_in, & - depressT_in, dragio_in, thickness_ocn_layer1_in, iceruf_ocn_in, albocn_in, gravit_in, viscosity_dyn_in, & + depressT_in, dragio_in, thickness_ocn_layer1_in, iceruf_ocn_in, & + albocn_in, gravit_in, viscosity_dyn_in, & Tocnfrz_in, rhofresh_in, zvir_in, vonkar_in, cp_wv_in, & stefan_boltzmann_in, ice_ref_salinity_in, & Tffresh_in, Lsub_in, Lvap_in, Timelt_in, Tsmelt_in, & @@ -451,6 +453,7 @@ subroutine icepack_init_parameters( & qqqice_in, TTTice_in, qqqocn_in, TTTocn_in, & ktherm_in, conduct_in, fbot_xfer_type_in, calc_Tsfc_in, dts_b_in, & update_ocn_f_in, ustar_min_in, a_rapid_mode_in, & + cpl_frazil_in, & Rac_rapid_mode_in, aspect_rapid_mode_in, & dSdt_slow_mode_in, phi_c_slow_mode_in, & phi_i_mushy_in, shortwave_in, albedo_type_in, albsnowi_in, & @@ -543,8 +546,9 @@ subroutine icepack_init_parameters( & ! 2 = mushy layer theory character (len=*), intent(in), optional :: & - conduct_in, & ! 'MU71' or 'bubbly' - fbot_xfer_type_in ! transfer coefficient type for ice-ocean heat flux + conduct_in, & ! 'MU71' or 'bubbly' + fbot_xfer_type_in, & ! transfer coefficient type for ice-ocean heat flux + cpl_frazil_in ! type of coupling for frazil ice logical (kind=log_kind), intent(in), optional :: & calc_Tsfc_in , &! if true, calculate surface temperature @@ -896,6 +900,7 @@ subroutine icepack_init_parameters( & if (present(conduct_in) ) conduct = conduct_in if (present(fbot_xfer_type_in) ) fbot_xfer_type = fbot_xfer_type_in if (present(calc_Tsfc_in) ) calc_Tsfc = calc_Tsfc_in + if (present(cpl_frazil_in) ) cpl_frazil = cpl_frazil_in if (present(update_ocn_f_in) ) update_ocn_f = update_ocn_f_in if (present(dts_b_in) ) dts_b = dts_b_in if (present(ustar_min_in) ) ustar_min = ustar_min_in @@ -1156,7 +1161,7 @@ subroutine icepack_query_parameters( & zref_out, hs_min_out, snowpatch_out, rhosi_out, sk_l_out, & saltmax_out, phi_init_out, min_salin_out, salt_loss_out, & min_bgc_out, dSin0_frazil_out, hi_ssl_out, hs_ssl_out, & - awtvdr_out, awtidr_out, awtvdf_out, awtidf_out, & + awtvdr_out, awtidr_out, awtvdf_out, awtidf_out, cpl_frazil_out, & qqqice_out, TTTice_out, qqqocn_out, TTTocn_out, update_ocn_f_out, & Lfresh_out, cprho_out, Cp_out, ustar_min_out, a_rapid_mode_out, & ktherm_out, conduct_out, fbot_xfer_type_out, calc_Tsfc_out, dts_b_out, & @@ -1261,8 +1266,9 @@ subroutine icepack_query_parameters( & ! 2 = mushy layer theory character (len=*), intent(out), optional :: & - conduct_out, & ! 'MU71' or 'bubbly' - fbot_xfer_type_out ! transfer coefficient type for ice-ocean heat flux + conduct_out, & ! 'MU71' or 'bubbly' + fbot_xfer_type_out, & ! transfer coefficient type for ice-ocean heat flux + cpl_frazil_out ! type of coupling for frazil ice logical (kind=log_kind), intent(out), optional :: & calc_Tsfc_out ,&! if true, calculate surface temperature @@ -1651,6 +1657,7 @@ subroutine icepack_query_parameters( & if (present(conduct_out) ) conduct_out = conduct if (present(fbot_xfer_type_out) ) fbot_xfer_type_out = fbot_xfer_type if (present(calc_Tsfc_out) ) calc_Tsfc_out = calc_Tsfc + if (present(cpl_frazil_out) ) cpl_frazil_out = cpl_frazil if (present(update_ocn_f_out) ) update_ocn_f_out = update_ocn_f if (present(dts_b_out) ) dts_b_out = dts_b if (present(ustar_min_out) ) ustar_min_out = ustar_min @@ -1856,6 +1863,7 @@ subroutine icepack_write_parameters(iounit) write(iounit,*) " conduct = ", trim(conduct) write(iounit,*) " fbot_xfer_type = ", trim(fbot_xfer_type) write(iounit,*) " calc_Tsfc = ", calc_Tsfc + write(iounit,*) " cpl_frazil = ", cpl_frazil write(iounit,*) " update_ocn_f = ", update_ocn_f write(iounit,*) " dts_b = ", dts_b write(iounit,*) " ustar_min = ", ustar_min diff --git a/columnphysics/icepack_therm_itd.F90 b/columnphysics/icepack_therm_itd.F90 index 405427af3..ce3683bf5 100644 --- a/columnphysics/icepack_therm_itd.F90 +++ b/columnphysics/icepack_therm_itd.F90 @@ -27,7 +27,7 @@ module icepack_therm_itd use icepack_parameters, only: rhosi, conserv_check, rhosmin, snwredist use icepack_parameters, only: kitd, ktherm use icepack_parameters, only: z_tracers, hfrazilmin - use icepack_parameters, only: saltflux_option + use icepack_parameters, only: cpl_frazil, update_ocn_f, saltflux_option use icepack_parameters, only: icepack_chkoptargflag use icepack_tracers, only: ntrcr, nbtrcr @@ -1306,7 +1306,6 @@ subroutine add_new_ice (ncat, nilyr, & aice0, aice, & frzmlt, frazil, & frz_onset, yday, & - update_ocn_f, & fresh, fsalt, & Tf, sss, & salinz, phi_init, & @@ -1379,9 +1378,6 @@ subroutine add_new_ice (ncat, nilyr, & phi_init , & ! initial frazil liquid fraction dSin0_frazil ! initial frazil bulk salinity reduction from sss - logical (kind=log_kind), intent(in) :: & - update_ocn_f ! if true, update fresh water and salt fluxes - ! BGC real (kind=dbl_kind), dimension (nblyr+2), intent(in) :: & bgrid ! biology nondimensional vertical grid points @@ -1617,29 +1613,29 @@ subroutine add_new_ice (ncat, nilyr, & ! is NOT included in fluxes fresh and fsalt. !----------------------------------------------------------------- - if (update_ocn_f) then - dfresh = -rhoi*vi0new/dt + dfresh = c0 + dfsalt = c0 + if (cpl_frazil == 'external') then + ! do nothing here, calculations are in the coupler or elsewhere + else + if (update_ocn_f) then + dfresh = -rhoi*vi0new/dt + elseif (cpl_frazil == 'fresh_ice_correction' .and. ktherm == 2) then + ! correct frazil fluxes for mushy + vi0tmp = fnew*dt / (rhoi*Lfresh) ! ocn/cpl assumes frazil volume is pure, fresh ice + dfresh = -rhoi*(vi0new - vi0tmp)/dt + frazil_diag = frazil - vi0tmp +! else +! do nothing - other correction options could be implemented in the future + endif + if (saltflux_option == 'prognostic') then dfsalt = Si0new*p001*dfresh else dfsalt = ice_ref_salinity*p001*dfresh endif fresh = fresh + dfresh - fsalt = fsalt + dfsalt - else ! update_ocn_f = false - if (ktherm == 2) then ! return mushy-layer frazil to ocean (POP) - vi0tmp = fnew*dt / (rhoi*Lfresh) - dfresh = -rhoi*(vi0new - vi0tmp)/dt - if (saltflux_option == 'prognostic') then - dfsalt = Si0new*p001*dfresh - else - dfsalt = ice_ref_salinity*p001*dfresh - endif - fresh = fresh + dfresh - fsalt = fsalt + dfsalt - frazil_diag = frazil - vi0tmp - ! elseif ktherm==1 do nothing - endif + fsalt = fsalt + dfsalt endif !----------------------------------------------------------------- @@ -2009,6 +2005,8 @@ subroutine icepack_step_therm2 (dt, ncat, nltrcr, & d_afsd_latm, d_afsd_weld, & floe_rad_c, floe_binwidth) + use icepack_parameters, only: icepack_init_parameters + integer (kind=int_kind), intent(in) :: & ncat , & ! number of thickness categories nltrcr , & ! number of zbgc tracers @@ -2019,7 +2017,7 @@ subroutine icepack_step_therm2 (dt, ncat, nltrcr, & integer (kind=int_kind), intent(in), optional :: & nfsd ! number of floe size categories - logical (kind=log_kind), intent(in) :: & + logical (kind=log_kind), intent(in), optional :: & update_ocn_f ! if true, update fresh water and salt fluxes real (kind=dbl_kind), dimension(0:ncat), intent(inout) :: & @@ -2139,6 +2137,9 @@ subroutine icepack_step_therm2 (dt, ncat, nltrcr, & ! Check optional arguments and set local values !----------------------------------------------------------------- + if (present(update_ocn_f)) then + call icepack_init_parameters(update_ocn_f_in=update_ocn_f) + endif if (icepack_chkoptargflag(first_call)) then if (tr_iso) then if (.not.(present(fiso_ocn) .and. & @@ -2237,7 +2238,6 @@ subroutine icepack_step_therm2 (dt, ncat, nltrcr, & aice0, aice, & frzmlt, frazil, & frz_onset, yday, & - update_ocn_f, & fresh, fsalt, & Tf, sss, & salinz, phi_init, & diff --git a/configuration/driver/icedrv_flux.F90 b/configuration/driver/icedrv_flux.F90 index 06b0d06d0..39c090818 100644 --- a/configuration/driver/icedrv_flux.F90 +++ b/configuration/driver/icedrv_flux.F90 @@ -19,7 +19,6 @@ module icedrv_flux use icepack_intfc, only: icepack_warnings_flush, icepack_warnings_aborted use icepack_intfc, only: icepack_query_parameters use icepack_intfc, only: icepack_query_tracer_flags, icepack_query_tracer_indices - use icepack_intfc, only: icepack_query_parameters use icedrv_system, only: icedrv_system_abort implicit none @@ -193,7 +192,6 @@ module icedrv_flux scale_factor! scaling factor for shortwave components logical (kind=log_kind), public :: & - update_ocn_f, & ! if true, update fresh water and salt fluxes l_mpond_fresh ! if true, include freshwater feedback from meltponds ! when running in ice-ocean or coupled configuration diff --git a/configuration/driver/icedrv_init.F90 b/configuration/driver/icedrv_init.F90 index 8d130a620..bc0cb5b96 100644 --- a/configuration/driver/icedrv_init.F90 +++ b/configuration/driver/icedrv_init.F90 @@ -64,7 +64,7 @@ subroutine input_data use icedrv_calendar, only: npt, dt, ndtd, days_per_year, use_leap_years use icedrv_history, only: history_format use icedrv_restart_shared, only: restart, restart_dir, restart_file, restart_format - use icedrv_flux, only: update_ocn_f, l_mpond_fresh, cpl_bgc + use icedrv_flux, only: l_mpond_fresh, cpl_bgc use icedrv_flux, only: default_season use icedrv_forcing, only: precip_units, fyear_init, ycycle use icedrv_forcing, only: atm_data_type, ocn_data_type, bgc_data_type @@ -98,9 +98,10 @@ subroutine input_data natmiter, kitd, kcatbound character (len=char_len) :: shortwave, albedo_type, conduct, fbot_xfer_type, & - tfrz_option, saltflux_option, frzpnd, atmbndy, wave_spec_type, snwredist, snw_aging_table + cpl_frazil, tfrz_option, saltflux_option, & + frzpnd, atmbndy, wave_spec_type, snwredist, snw_aging_table - logical (kind=log_kind) :: sw_redist, use_smliq_pnd, snwgrain + logical (kind=log_kind) :: sw_redist, use_smliq_pnd, snwgrain, update_ocn_f real (kind=dbl_kind) :: sw_frac, sw_dtemp ! Flux convergence tolerance @@ -174,7 +175,7 @@ subroutine input_data formdrag, highfreq, natmiter, & atmiter_conv, calc_dragio, & tfrz_option, saltflux_option, ice_ref_salinity, & - default_season, wave_spec_type, & + default_season, wave_spec_type, cpl_frazil, & precip_units, fyear_init, ycycle, & atm_data_type, ocn_data_type, bgc_data_type, & lateral_flux_type, & @@ -216,7 +217,7 @@ subroutine input_data pndaspect_out=pndaspect, hs1_out=hs1, hp1_out=hp1, & ktherm_out=ktherm, calc_Tsfc_out=calc_Tsfc, & floediam_out=floediam, hfrazilmin_out=hfrazilmin, & - update_ocn_f_out = update_ocn_f, & + update_ocn_f_out = update_ocn_f, cpl_frazil_out = cpl_frazil, & conduct_out=conduct, a_rapid_mode_out=a_rapid_mode, & Rac_rapid_mode_out=Rac_rapid_mode, & aspect_rapid_mode_out=aspect_rapid_mode, & @@ -788,6 +789,7 @@ subroutine input_data if (trim(atm_data_type)=='default') & write(nu_diag,*) ' default_season = ', trim(default_season) + write(nu_diag,1030) ' cpl_frazil = ', trim(cpl_frazil) write(nu_diag,1010) ' update_ocn_f = ', update_ocn_f write(nu_diag,1010) ' wave_spec = ', wave_spec if (wave_spec) & @@ -980,6 +982,7 @@ subroutine input_data floediam_in=floediam, hfrazilmin_in=hfrazilmin, & ktherm_in=ktherm, calc_Tsfc_in=calc_Tsfc, & conduct_in=conduct, a_rapid_mode_in=a_rapid_mode, & + update_ocn_f_in=update_ocn_f, cpl_frazil_in=cpl_frazil, & Rac_rapid_mode_in=Rac_rapid_mode, & aspect_rapid_mode_in=aspect_rapid_mode, & dSdt_slow_mode_in=dSdt_slow_mode, & diff --git a/configuration/driver/icedrv_step.F90 b/configuration/driver/icedrv_step.F90 index 7fff4ab72..b24be16a4 100644 --- a/configuration/driver/icedrv_step.F90 +++ b/configuration/driver/icedrv_step.F90 @@ -437,7 +437,7 @@ subroutine step_therm2 (dt) use icedrv_domain_size, only: ncat, nilyr, nslyr, n_aero, nblyr, & nltrcr, nx, nfsd use icedrv_flux, only: fresh, frain, fpond, frzmlt, frazil, frz_onset - use icedrv_flux, only: update_ocn_f, fsalt, Tf, sss, salinz, fhocn, rside, fside, wlat + use icedrv_flux, only: fsalt, Tf, sss, salinz, fhocn, rside, fside, wlat use icedrv_flux, only: meltl, frazil_diag, flux_bio, faero_ocn, fiso_ocn use icedrv_flux, only: HDO_ocn, H2_16O_ocn, H2_18O_ocn use icedrv_init, only: tmask @@ -505,7 +505,7 @@ subroutine step_therm2 (dt) frzmlt=frzmlt(i), frazil=frazil(i), & frain=frain(i), fpond=fpond(i), & fresh=fresh(i), fsalt=fsalt(i), & - fhocn=fhocn(i), update_ocn_f=update_ocn_f, & + fhocn=fhocn(i), & bgrid=bgrid, cgrid=cgrid, & igrid=igrid, faero_ocn=faero_ocn(i,:), & first_ice=first_ice(i,:), & diff --git a/configuration/scripts/icepack_in b/configuration/scripts/icepack_in index d989f2a83..453d12d95 100644 --- a/configuration/scripts/icepack_in +++ b/configuration/scripts/icepack_in @@ -107,6 +107,7 @@ calc_dragio = .false. emissivity = 0.985 fbot_xfer_type = 'constant' + cpl_frazil = 'fresh_ice_correction' update_ocn_f = .false. l_mpond_fresh = .false. tfrz_option = 'mushy' diff --git a/configuration/scripts/options/set_nml.alt04 b/configuration/scripts/options/set_nml.alt04 index 8986e13ff..c468c4661 100644 --- a/configuration/scripts/options/set_nml.alt04 +++ b/configuration/scripts/options/set_nml.alt04 @@ -14,6 +14,7 @@ krdg_redist = 0 calc_Tsfc = .true. highfreq = .true. + cpl_frazil = 'internal' update_ocn_f = .true. l_mpond_fresh = .true. restore_ocn = .true. diff --git a/doc/source/icepack_index.rst b/doc/source/icepack_index.rst index ab7d582c8..38d04202a 100755 --- a/doc/source/icepack_index.rst +++ b/doc/source/icepack_index.rst @@ -92,6 +92,7 @@ either Celsius or Kelvin units). Deprecated parameters are listed at the end. "cp_wv", "specific heat of water vapor", "1.81x\ :math:`10^3` J/kg/K" "cp063", "diffuse fresnel reflectivity (above)", "0.063" "cp455", "diffuse fresnel reflectivity (below)", "0.455" + "cpl_frazil", ":math:`\bullet` type of frazil ice coupling", "" "Cs", "fraction of shear energy contributing to ridging", "0.25" "Cstar", "constant in Hibler ice strength formula", "20." "**D**", "", "" diff --git a/doc/source/science_guide/sg_boundary_forcing.rst b/doc/source/science_guide/sg_boundary_forcing.rst index 5d99962d3..c7715228d 100755 --- a/doc/source/science_guide/sg_boundary_forcing.rst +++ b/doc/source/science_guide/sg_boundary_forcing.rst @@ -278,9 +278,20 @@ In addition to runoff from rain and melted snow, the fresh water flux and water frozen (a negative flux) or melted at the bottom surface of the ice. This flux is computed as the net change of fresh water in the ice and snow volume over the coupling time step, excluding frazil ice -formation and newly accumulated snow. Setting the namelist option +formation and newly accumulated snow. + +Setting the namelist option ``update_ocn_f`` to true causes frazil ice to be included in the fresh -water and salt fluxes. +water and salt fluxes. Some ocean models compute the frazil ice fluxes, +which then might need to be corrected for consistency with mushy physics. +This behavior is controlled using a combination of ``update_ocn_f``, +``cpl_frazil`` and ``ktherm``. In particular, +``cpl_frazil = 'external'`` assumes that the frazil ice fluxes are +handled entirely outside of Icepack. When ``ktherm=2``, +``cpl_frazil = 'fresh_ice_correction'`` +sends coupling fluxes representing the difference between the mushy frazil +fluxes and fluxes computed assuming the frazil is purely fresh ice. +Otherwise the internally computed frazil fluxes are sent to the coupler. There is a flux of salt into the ocean under melting conditions, and a (negative) flux when sea water is freezing. However, melting sea ice diff --git a/doc/source/user_guide/interfaces.include b/doc/source/user_guide/interfaces.include index 3050fe53a..7c8d3589d 100644 --- a/doc/source/user_guide/interfaces.include +++ b/doc/source/user_guide/interfaces.include @@ -794,7 +794,8 @@ icepack_init_parameters argcheck_in, puny_in, bignum_in, pi_in, secday_in, & rhos_in, rhoi_in, rhow_in, cp_air_in, emissivity_in, & cp_ice_in, cp_ocn_in, hfrazilmin_in, floediam_in, & - depressT_in, dragio_in, thickness_ocn_layer1_in, iceruf_ocn_in, albocn_in, gravit_in, viscosity_dyn_in, & + depressT_in, dragio_in, thickness_ocn_layer1_in, iceruf_ocn_in, & + albocn_in, gravit_in, viscosity_dyn_in, & Tocnfrz_in, rhofresh_in, zvir_in, vonkar_in, cp_wv_in, & stefan_boltzmann_in, ice_ref_salinity_in, & Tffresh_in, Lsub_in, Lvap_in, Timelt_in, Tsmelt_in, & @@ -807,6 +808,7 @@ icepack_init_parameters qqqice_in, TTTice_in, qqqocn_in, TTTocn_in, & ktherm_in, conduct_in, fbot_xfer_type_in, calc_Tsfc_in, dts_b_in, & update_ocn_f_in, ustar_min_in, a_rapid_mode_in, & + cpl_frazil_in, & Rac_rapid_mode_in, aspect_rapid_mode_in, & dSdt_slow_mode_in, phi_c_slow_mode_in, & phi_i_mushy_in, shortwave_in, albedo_type_in, albsnowi_in, & @@ -899,8 +901,9 @@ icepack_init_parameters ! 2 = mushy layer theory character (len=*), intent(in), optional :: & - conduct_in, & ! 'MU71' or 'bubbly' - fbot_xfer_type_in ! transfer coefficient type for ice-ocean heat flux + conduct_in, & ! 'MU71' or 'bubbly' + fbot_xfer_type_in, & ! transfer coefficient type for ice-ocean heat flux + cpl_frazil_in ! type of coupling for frazil ice logical (kind=log_kind), intent(in), optional :: & calc_Tsfc_in , &! if true, calculate surface temperature @@ -1209,7 +1212,7 @@ icepack_query_parameters zref_out, hs_min_out, snowpatch_out, rhosi_out, sk_l_out, & saltmax_out, phi_init_out, min_salin_out, salt_loss_out, & min_bgc_out, dSin0_frazil_out, hi_ssl_out, hs_ssl_out, & - awtvdr_out, awtidr_out, awtvdf_out, awtidf_out, & + awtvdr_out, awtidr_out, awtvdf_out, awtidf_out, cpl_frazil_out, & qqqice_out, TTTice_out, qqqocn_out, TTTocn_out, update_ocn_f_out, & Lfresh_out, cprho_out, Cp_out, ustar_min_out, a_rapid_mode_out, & ktherm_out, conduct_out, fbot_xfer_type_out, calc_Tsfc_out, dts_b_out, & @@ -1314,8 +1317,9 @@ icepack_query_parameters ! 2 = mushy layer theory character (len=*), intent(out), optional :: & - conduct_out, & ! 'MU71' or 'bubbly' - fbot_xfer_type_out ! transfer coefficient type for ice-ocean heat flux + conduct_out, & ! 'MU71' or 'bubbly' + fbot_xfer_type_out, & ! transfer coefficient type for ice-ocean heat flux + cpl_frazil_out ! type of coupling for frazil ice logical (kind=log_kind), intent(out), optional :: & calc_Tsfc_out ,&! if true, calculate surface temperature @@ -1990,6 +1994,8 @@ icepack_step_therm2 d_afsd_latm, d_afsd_weld, & floe_rad_c, floe_binwidth) + use icepack_parameters, only: icepack_init_parameters + integer (kind=int_kind), intent(in) :: & ncat , & ! number of thickness categories nltrcr , & ! number of zbgc tracers @@ -2000,7 +2006,7 @@ icepack_step_therm2 integer (kind=int_kind), intent(in), optional :: & nfsd ! number of floe size categories - logical (kind=log_kind), intent(in) :: & + logical (kind=log_kind), intent(in), optional :: & update_ocn_f ! if true, update fresh water and salt fluxes real (kind=dbl_kind), dimension(0:ncat), intent(inout) :: & diff --git a/doc/source/user_guide/ug_case_settings.rst b/doc/source/user_guide/ug_case_settings.rst index fa62e1781..b76fea103 100644 --- a/doc/source/user_guide/ug_case_settings.rst +++ b/doc/source/user_guide/ug_case_settings.rst @@ -369,6 +369,9 @@ forcing_nml "", "``minus1p8``", "constant ocean freezing temperature (:math:`-1.8^{\circ} C`)", "" "", "``mushy``", "matches mushy-layer thermo (ktherm=2)", "" "``trestore``", "integer", "sst restoring time scale (days)", "90" + "``cpl_frazil``", "``external``", "frazil water/salt fluxes are handled outside of Icepack", "``fresh_ice_correction``" + "", "``fresh_ice_correction``", "correct fresh-ice frazil water/salt fluxes for mushy physics", "" + "", "``internal``", "send full frazil water/salt fluxes for mushy physics", "" "``update_ocn_f``", "``.false.``", "do not include frazil water/salt fluxes in ocn fluxes", "``.false.``" "", "``true``", "include frazil water/salt fluxes in ocn fluxes", "" "``ustar_min``", "real", "minimum value of ocean friction velocity in m/s", "0.005"