From ead83854aaf42ae70966439afd2916c209dc9de8 Mon Sep 17 00:00:00 2001 From: nperez Date: Tue, 19 Nov 2019 17:47:18 +0100 Subject: [PATCH 01/44] ERA5 added to the BSC.config file --- inst/config/BSC.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inst/config/BSC.conf b/inst/config/BSC.conf index d9d617eb..aca91dbb 100644 --- a/inst/config/BSC.conf +++ b/inst/config/BSC.conf @@ -22,7 +22,7 @@ DEFAULT_DIM_NAME_MEMBERS = ensemble # Helper variables EXP_FILE = $VAR_NAME$_*$START_DATE$*.nc OBS_FILE = $VAR_NAME$_$YEAR$$MONTH$*.nc -RECON_LIST = (20thcr_v2|copernicus012|ds083.2|ecco|era40|era40-erainterim|eraclim|erainterim|erainterim-lores|eraland|gecco_v2|gfs|glorys2_v1|glorys2_v3|glosea5|ishii-kimoto|jra55|merra|merra_v2|ncep-reanalysis|oaflux|oi_v2|orap5|piomas|seaice-lim2|sst|tropflux|nemovar_system4) +RECON_LIST = (20thcr_v2|copernicus012|ds083.2|ecco|era40|era40-erainterim|eraclim|erainterim|erainterim-lores|eraland|gecco_v2|gfs|glorys2_v1|glorys2_v3|glosea5|ishii-kimoto|jra55|merra|merra_v2|ncep-reanalysis|oaflux|oi_v2|orap5|piomas|seaice-lim2|sst|tropflux|nemovar_system4|era5) # Defaults for extra variables from Load DEFAULT_FILE_GRID = -- GitLab From ff91b9ff7fdabb7de225205babf1ab6ec43c2139 Mon Sep 17 00:00:00 2001 From: aho Date: Fri, 29 Nov 2019 18:09:24 +0100 Subject: [PATCH 02/44] Fix daily data Dates attribute problem when daylight saving change --- R/Load.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/Load.R b/R/Load.R index e17f3cfa..cded9565 100644 --- a/R/Load.R +++ b/R/Load.R @@ -2209,7 +2209,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, } else if (storefreq == 'hourly') { store_period <- 'hour' } else if (storefreq == 'daily') { - store_period <- 'day' + store_period <- 'DSTday' } else if (storefreq == 'monthly') { store_period <- 'month' } -- GitLab From 3e41fd68f387e6c63bfd0ddae376b32160380b06 Mon Sep 17 00:00:00 2001 From: aho Date: Fri, 13 Dec 2019 17:50:56 +0100 Subject: [PATCH 03/44] Add warnings to parameter 'crop' choice --- R/CDORemap.R | 3 +++ 1 file changed, 3 insertions(+) diff --git a/R/CDORemap.R b/R/CDORemap.R index a04d88a5..ea6ff137 100644 --- a/R/CDORemap.R +++ b/R/CDORemap.R @@ -406,6 +406,7 @@ CDORemap <- function(data_array = NULL, lons, lats, grid, method, } if (is.logical(crop)) { if (crop) { + warning("Parameter 'crop' = 'TRUE'. The output grid range will follow the input lons and lats.") if (length(lons) == 1 || length(lats) == 1) { stop("CDORemap cannot remap if crop = TRUE and values for only one ", "longitude or one latitude are provided. Either a) provide ", @@ -516,6 +517,8 @@ CDORemap <- function(data_array = NULL, lons, lats, grid, method, } ###--- } + } else if (crop == FALSE) { + warning("Parameter 'crop' = 'FALSE'. The output grid range will follow parameter 'grid'.") } } else if (is.numeric(crop)) { if (length(crop) != 4) { -- GitLab From 07468858962536d39f222b47cafca79ba55cf886 Mon Sep 17 00:00:00 2001 From: nperez Date: Tue, 14 Apr 2020 19:46:18 +0200 Subject: [PATCH 04/44] Composite working with a missing cluster number in occ --- R/Composite.R | 46 ++++++++++++++++++++++++++-------------------- 1 file changed, 26 insertions(+), 20 deletions(-) diff --git a/R/Composite.R b/R/Composite.R index 865501d6..be6356a2 100644 --- a/R/Composite.R +++ b/R/Composite.R @@ -67,6 +67,12 @@ #'occ2[c(3, 9, 15, 21)] <- 1 #' #'filled.contour(Composite(var=f1, occ=occ2)$composite[,,1]) +#' +#'Example with one missing composite (#3) in occ: +#'data <- 1 : (4 * 5 * 6) +#'dim(data) <- c(lon = 4, lat = 5, case = 6) +#'occ <- c(1, 1, 2, 2, 4, 4) +#'res <- Composite(data, occ) #'@importFrom stats sd pt #'@export Composite <- function(var, occ, lag = 0, eno = FALSE, fileout = NULL) { @@ -89,34 +95,34 @@ Composite <- function(var, occ, lag = 0, eno = FALSE, fileout = NULL) { stdv_tot <- apply(var, c(1, 2), sd, na.rm = TRUE) for (k in 1 : K) { + if (length(which(occ == k)) >= 1) { + indices <- which(occ == k) + lag + toberemoved <- which(0 > indices | indices > dim(var)[3]) - indices <- which(occ == k) + lag - toberemoved <- which(0 > indices | indices > dim(var)[3]) - - if (length(toberemoved) > 0) { + if (length(toberemoved) > 0) { indices <- indices[-toberemoved] - } - if (eno == TRUE) { + } + if (eno == TRUE) { n_k <- Eno(var[, , indices], posdim = 3) - } else { + } else { n_k <- length(indices) - } - if (length(indices) == 1) { + } + if (length(indices) == 1) { composite[, , k] <- var[, , indices] warning(paste("Composite", k, "has length 1 and pvalue is NA.")) - } else { + } else { composite[, , k] <- Mean1Dim(var[, , indices], posdim = 3, narm = TRUE) - } - stdv_k <- apply(var[, , indices], c(1, 2), sd, na.rm = TRUE) + } + stdv_k <- apply(var[, , indices], c(1, 2), sd, na.rm = TRUE) - tvalue <- (mean_tot - composite[, , k]) / - sqrt(stdv_tot ^ 2 / n_tot + stdv_k ^ 2 / n_k) - dof <- (stdv_tot ^ 2 / n_tot + stdv_k ^ 2 / n_k) ^ 2 / - ((stdv_tot ^ 2 / n_tot) ^ 2 / (n_tot - 1) + - (stdv_k ^ 2 / n_k) ^ 2 / (n_k - 1)) - pvalue[, , k] <- 2 * pt(-abs(tvalue), df = dof) - } - + tvalue <- (mean_tot - composite[, , k]) / + sqrt(stdv_tot ^ 2 / n_tot + stdv_k ^ 2 / n_k) + dof <- (stdv_tot ^ 2 / n_tot + stdv_k ^ 2 / n_k) ^ 2 / + ((stdv_tot ^ 2 / n_tot) ^ 2 / (n_tot - 1) + + (stdv_k ^ 2 / n_k) ^ 2 / (n_k - 1)) + pvalue[, , k] <- 2 * pt(-abs(tvalue), df = dof) + } + } if (is.null(fileout) == FALSE) { output <- list(composite = composite, pvalue = pvalue) save(output, file = paste(fileout, '.sav', sep = '')) -- GitLab From cc4717e7baa74a37351bc3771edf8c27d2a08cb6 Mon Sep 17 00:00:00 2001 From: nperez Date: Thu, 16 Apr 2020 12:46:53 +0200 Subject: [PATCH 05/44] New parameter K to indicate the maximum number of composites --- R/Composite.R | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/R/Composite.R b/R/Composite.R index be6356a2..90abb5ba 100644 --- a/R/Composite.R +++ b/R/Composite.R @@ -17,6 +17,7 @@ #' use +2 occurrences (i.e., shifted 2 time steps forward). Default is lag = 0. #'@param eno For using the effective sample size (TRUE) or the total sample #' size (FALSE that is the default) for the number of degrees of freedom. +#'@param K numeric value indicating the maximum number of composites. By default (NULL), it takes the maximum value provided in occ. #'@param fileout Name of the .sav output file (NULL is the default). #' #'@return @@ -71,20 +72,22 @@ #'Example with one missing composite (#3) in occ: #'data <- 1 : (4 * 5 * 6) #'dim(data) <- c(lon = 4, lat = 5, case = 6) -#'occ <- c(1, 1, 2, 2, 4, 4) -#'res <- Composite(data, occ) +#'occ <- c(1, 1, 2, 2, 3, 3) +#'res <- Composite(data, occ, K = 4) #'@importFrom stats sd pt #'@export -Composite <- function(var, occ, lag = 0, eno = FALSE, fileout = NULL) { +Composite <- function(var, occ, lag = 0, eno = FALSE, K = NULL, fileout = NULL) { if ( dim(var)[3] != length(occ) ) { stop("Temporal dimension of var is not equal to length of occ.") } - K <- max(occ) - composite <- array(dim = c(dim(var)[1:2], K)) + if (is.null(K)) { + K <- max(occ) + } + composite <- array(dim = c(dim(var)[1:2], composite = K)) tvalue <- array(dim = dim(var)[1:2]) dof <- array(dim = dim(var)[1:2]) - pvalue <- array(dim = c(dim(var)[1:2], K)) + pvalue <- array(dim = c(dim(var)[1:2], composite = K)) if (eno == TRUE) { n_tot <- Eno(var, posdim = 3) -- GitLab From 5d24dea8abab22c2e73a189ccf6ce85985c5da25 Mon Sep 17 00:00:00 2001 From: nperez Date: Thu, 16 Apr 2020 13:14:32 +0200 Subject: [PATCH 06/44] fix tests Composite --- tests/testthat/test-Composite.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/testthat/test-Composite.R b/tests/testthat/test-Composite.R index f8edf1cd..4b18f1cc 100644 --- a/tests/testthat/test-Composite.R +++ b/tests/testthat/test-Composite.R @@ -11,7 +11,7 @@ test_that("Sanity checks", { var <- array(rep(c(1, 3, 2, 1, 2), 8), dim = c(x = 2, y = 4, time = 5)) occ <- c(1, 2, 2, 2, 1) - output <- c(x = 2, y = 4, 2) #dim(asd$composite) + output <- c(x = 2, y = 4, composite = 2) #dim(asd$composite) expect_equal( dim(Composite(var, occ)$composite), output -- GitLab From f417714eb7c648d27b84ffc4074e70eb7b1eb8e9 Mon Sep 17 00:00:00 2001 From: aho Date: Mon, 21 Sep 2020 15:24:48 +0200 Subject: [PATCH 07/44] Add more tests for new param 'K' --- tests/testthat/test-Composite.R | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/tests/testthat/test-Composite.R b/tests/testthat/test-Composite.R index 4b18f1cc..6c7eb1de 100644 --- a/tests/testthat/test-Composite.R +++ b/tests/testthat/test-Composite.R @@ -29,6 +29,20 @@ test_that("Sanity checks", { Composite(var, occ)$composite[, , 2], output ) + expect_equal( + dim(Composite(var, occ, K = 2)$composite), + c(x = 2, y = 4, composite = 2) + ) + expect_equal( + Composite(var, occ, K = 3), + Composite(var, occ) + ) + expect_equal( + Composite(var, occ, K = 4)$composite[1, 1, ], + c(1.5, 1.5, 2.0, NA), + tolerance = 0.01 + ) + }) -- GitLab From d8fcea54643bf04ecccfbe4bbafe1e18b3f5ca69 Mon Sep 17 00:00:00 2001 From: aho Date: Tue, 22 Sep 2020 15:59:12 +0200 Subject: [PATCH 08/44] Change time zone from local to UTC --- R/Load.R | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/R/Load.R b/R/Load.R index cded9565..bbaf2c89 100644 --- a/R/Load.R +++ b/R/Load.R @@ -1553,7 +1553,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, # the current date. if (is.null(exp) || dims == 0) { if (is.null(leadtimemax)) { - diff <- Sys.time() - as.POSIXct(sdates[1], format = '%Y%m%d') + diff <- Sys.time() - as.POSIXct(sdates[1], format = '%Y%m%d', tz = "GMT") if (diff > 0) { .warning("Loading observations only and no 'leadtimemax' specified. Data will be loaded from each starting date to current time.") if (storefreq == 'monthly') { @@ -1709,7 +1709,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, } day <- as.integer(day) startdate <- as.POSIXct(paste(substr(sdate, 1, 4), '-', - substr(sdate, 5, 6), '-', day, ' 12:00:00', sep = '')) + + substr(sdate, 5, 6), '-', day, ' 12:00:00', sep = ''), tz = "GMT") + (leadtimemin - 1) * 86400 year <- as.integer(substr(startdate, 1, 4)) month <- as.integer(substr(startdate, 6, 7)) @@ -2226,9 +2226,11 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, function(x) { do.call(c, lapply((0:(number_ftime - 1)) * sampleperiod, function(y) { - addTime(as.POSIXct(x, format = "%Y%m%d"), store_period, y + leadtimemin - 1) + addTime(as.POSIXct(x, format = "%Y%m%d", tz = "GMT"), store_period, y + leadtimemin - 1) })) })) + attr(dates[["start"]], "tzone") <- "GMT" + # end is similar to start, but contains the end dates of each forecast # time step dates[["end"]] <- do.call(c, lapply(dates[["start"]], @@ -2238,6 +2240,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, addTime(y, store_period) })) })) + attr(dates[["end"]], "tzone") <- "GMT" tags_to_find <- c('START_DATE', 'MEMBER_NUMBER', 'YEAR', 'MONTH', 'DAY') position_of_tags <- na.omit(match(tags_to_find, names(replace_values))) @@ -2249,14 +2252,19 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, models <- list() for (jmod in 1:length(exp)) { member_names <- paste0("Member_", 1:nmember[jmod]) - models[[exp[[jmod]][["name"]]]] <- list( - InitializationDates = lapply(member_names, + + InitializationDates <- do.call(c, lapply(member_names, function(x) { do.call(c, lapply(sdates, function(y) { - as.POSIXct(y, format = "%Y%m%d") + as.POSIXct(y, format = "%Y%m%d", tz = "GMT") })) - }), + })) + attr(InitializationDates, "tzone") <- "GMT" + + models[[exp[[jmod]][["name"]]]] <- list( + InitializationDates = InitializationDates, Members = member_names) + names(models[[exp[[jmod]][["name"]]]]$InitializationDates) <- member_names attr(models[[exp[[jmod]][["name"]]]], 'dataset') <- exp[[jmod]][["name"]] attr(models[[exp[[jmod]][["name"]]]], 'source') <- { -- GitLab From 83d6ba167f600ee368b52e7f3b79132cb2f7e42f Mon Sep 17 00:00:00 2001 From: aho Date: Tue, 22 Sep 2020 16:00:36 +0200 Subject: [PATCH 09/44] Change from GMT to UTC --- R/Load.R | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/R/Load.R b/R/Load.R index bbaf2c89..6b136ec9 100644 --- a/R/Load.R +++ b/R/Load.R @@ -1553,7 +1553,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, # the current date. if (is.null(exp) || dims == 0) { if (is.null(leadtimemax)) { - diff <- Sys.time() - as.POSIXct(sdates[1], format = '%Y%m%d', tz = "GMT") + diff <- Sys.time() - as.POSIXct(sdates[1], format = '%Y%m%d', tz = "UTC") if (diff > 0) { .warning("Loading observations only and no 'leadtimemax' specified. Data will be loaded from each starting date to current time.") if (storefreq == 'monthly') { @@ -1709,7 +1709,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, } day <- as.integer(day) startdate <- as.POSIXct(paste(substr(sdate, 1, 4), '-', - substr(sdate, 5, 6), '-', day, ' 12:00:00', sep = ''), tz = "GMT") + + substr(sdate, 5, 6), '-', day, ' 12:00:00', sep = ''), tz = "UTC") + (leadtimemin - 1) * 86400 year <- as.integer(substr(startdate, 1, 4)) month <- as.integer(substr(startdate, 6, 7)) @@ -2226,10 +2226,10 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, function(x) { do.call(c, lapply((0:(number_ftime - 1)) * sampleperiod, function(y) { - addTime(as.POSIXct(x, format = "%Y%m%d", tz = "GMT"), store_period, y + leadtimemin - 1) + addTime(as.POSIXct(x, format = "%Y%m%d", tz = "UTC"), store_period, y + leadtimemin - 1) })) })) - attr(dates[["start"]], "tzone") <- "GMT" + attr(dates[["start"]], "tzone") <- "UTC" # end is similar to start, but contains the end dates of each forecast # time step @@ -2240,7 +2240,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, addTime(y, store_period) })) })) - attr(dates[["end"]], "tzone") <- "GMT" + attr(dates[["end"]], "tzone") <- "UTC" tags_to_find <- c('START_DATE', 'MEMBER_NUMBER', 'YEAR', 'MONTH', 'DAY') position_of_tags <- na.omit(match(tags_to_find, names(replace_values))) @@ -2256,10 +2256,10 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, InitializationDates <- do.call(c, lapply(member_names, function(x) { do.call(c, lapply(sdates, function(y) { - as.POSIXct(y, format = "%Y%m%d", tz = "GMT") + as.POSIXct(y, format = "%Y%m%d", tz = "UTC") })) })) - attr(InitializationDates, "tzone") <- "GMT" + attr(InitializationDates, "tzone") <- "UTC" models[[exp[[jmod]][["name"]]]] <- list( InitializationDates = InitializationDates, -- GitLab From 29c8f247d2da5a574033a00918edce30d57e5ff5 Mon Sep 17 00:00:00 2001 From: aho Date: Wed, 30 Sep 2020 14:17:07 +0200 Subject: [PATCH 10/44] Bugfix for inconsistent dimensions between var and clim --- R/Ano.R | 112 +++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 90 insertions(+), 22 deletions(-) diff --git a/R/Ano.R b/R/Ano.R index 1c8ffee9..ded1e9ac 100644 --- a/R/Ano.R +++ b/R/Ano.R @@ -48,45 +48,113 @@ Ano <- function(var, clim) { clim <- InsertDim(clim, 2, dimvar[2]) } - if ((length(dimvar) > length(dim(clim))) & (dim(clim)[2] != dimvar[2])) { - clim <- InsertDim(clim, 2, dimvar[2]) - } - if ((length(dimvar) > length(dim(clim))) & (dim(clim)[2] == dimvar[2])) { - if (is.null(names(dim(clim))) | is.null(names(dimvar))) { - stop('Provide dimension names on parameter \'var\' and \'clim\' to avoid ambiguity.') - } else { - if (names(dim(clim)[2]) != names(dimvar[2])) { - clim <- InsertDim(clim, 2, dimvar[2]) + # Check 2nd dim + if (length(dimvar) > length(dim(clim))) { + + if (dim(clim)[2] != dimvar[2]) { + clim <- InsertDim(clim, 2, dimvar[2]) + } else { # clim[2] == dimvar[2] + if (is.null(names(dim(clim))) | is.null(names(dimvar))) { + stop('Provide dimension names on parameter \'var\' and \'clim\' to avoid ambiguity.') + } else { + if (names(dim(clim)[2]) != names(dimvar[2])) { + clim <- InsertDim(clim, 2, dimvar[2]) + } } } + } - if ((length(dimvar) > length(dim(clim))) & (dim(clim)[3] != dimvar[3])) { + # Check if clim has 3rd dim. If yes, directly go to the next if. If not, add 3rd dim. + if (length(dimvar) > length(dim(clim)) & length(dim(clim)) == 2) { clim <- InsertDim(clim, 3, dimvar[3]) } - if ((length(dimvar) > length(dim(clim))) & (dim(clim)[3] == dimvar[3])) { - if (is.null(names(dim(clim))) | is.null(names(dimvar))) { - stop('Provide dimension names on parameter \'var\' and \'clim\' to avoid ambiguity.') + + # Check 3rd dim + if (length(dimvar) > length(dim(clim))) { + + if (dim(clim)[3] != dimvar[3]) { + clim <- InsertDim(clim, 3, dimvar[3]) + } else { # clim[3] == dimvar[3] + if (is.null(names(dim(clim))) | is.null(names(dimvar))) { + stop('Provide dimension names on parameter \'var\' and \'clim\' to avoid ambiguity.') + } else { + if (names(dim(clim)[3]) != names(dimvar[3])) { + clim <- InsertDim(clim, 3, dimvar[3]) + } + } + } + + } + # Check if clim has 4th dim. If yes, directly go to the next if. If not, add 4th dim. + if (length(dimvar) > length(dim(clim)) & length(dim(clim)) == 3) { + clim <- InsertDim(clim, 4, dimvar[4]) + } + + # Check 4th dim + if (length(dimvar) > length(dim(clim))) { + + if (dim(clim)[4] != dimvar[4]) { + clim <- InsertDim(clim, 4, dimvar[4]) } else { - if (names(dim(clim)[3]) != names(dimvar[3])) { - clim <- InsertDim(clim, 3, dimvar[3]) + if (is.null(names(dim(clim))) | is.null(names(dimvar))) { + stop('Provide dimension names on parameter \'var\' and \'clim\' to avoid ambiguity.') + } else { + if (names(dim(clim)[4]) != names(dimvar[4])) { + clim <- InsertDim(clim, 4, dimvar[4]) + } } } + + } + # Check if clim has 5th dim. If yes, directly go to the next if. If not, add 5th dim. + if (length(dimvar) > length(dim(clim)) & length(dim(clim)) == 4) { + clim <- InsertDim(clim, 5, dimvar[5]) } - if ((length(dimvar) > length(dim(clim))) & (dim(clim)[4] != dimvar[4])) { - clim <- InsertDim(clim, 4, dimvar[4]) + # Check 5th dim + if (length(dimvar) > length(dim(clim))) { + + if (dim(clim)[5] != dimvar[5]) { + clim <- InsertDim(clim, 5, dimvar[5]) + } else { + if (is.null(names(dim(clim))) | is.null(names(dimvar))) { + stop('Provide dimension names on parameter \'var\' and \'clim\' to avoid ambiguity.') + } else { + if (names(dim(clim)[5]) != names(dimvar[5])) { + clim <- InsertDim(clim, 5, dimvar[5]) + } + } + } + + } + # Check if clim has 6th dim. If yes, directly go to the next if. If not, add 6th dim. + if (length(dimvar) > length(dim(clim)) & length(dim(clim)) == 5) { + clim <- InsertDim(clim, 6, dimvar[6]) } - if ((length(dimvar) > length(dim(clim))) & (dim(clim)[4] == dimvar[4])) { - if (is.null(names(dim(clim))) | is.null(names(dimvar))) { - stop('Provide dimension names on parameter \'var\' and \'clim\' to avoid ambiguity.') + + # Check 6th dim + if (length(dimvar) > length(dim(clim))) { + + if (dim(clim)[6] != dimvar[6]) { + clim <- InsertDim(clim, 6, dimvar[6]) } else { - if (names(dim(clim)[4]) != names(dimvar[4])) { - clim <- InsertDim(clim, 4, dimvar[4]) + if (is.null(names(dim(clim))) | is.null(names(dimvar))) { + stop('Provide dimension names on parameter \'var\' and \'clim\' to avoid ambiguity.') + } else { + if (names(dim(clim)[6]) != names(dimvar[6])) { + clim <- InsertDim(clim, 6, dimvar[6]) + } } } + + } + # Check if clim has 7th dim. If yes, directly go to the next if. If not, add 7th dim. + if (length(dimvar) > length(dim(clim)) & length(dim(clim)) == 6) { + clim <- InsertDim(clim, 7, dimvar[7]) } + # # Raw anomalies # ~~~~~~~~~~~~~~~ -- GitLab From 939ee66b0fba079e4a180e78eb95ce5fa6dd4485 Mon Sep 17 00:00:00 2001 From: aho Date: Wed, 30 Sep 2020 15:18:16 +0200 Subject: [PATCH 11/44] Retrieve only the number in the cdo version. Exclude the letter part. --- R/Utils.R | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/R/Utils.R b/R/Utils.R index 44600181..9dfcaa73 100644 --- a/R/Utils.R +++ b/R/Utils.R @@ -206,7 +206,11 @@ if (Sys.which("cdo")[[1]] == "") { stop("Error: CDO libraries not available") } - cdo_version <- as.numeric_version(strsplit(suppressWarnings(system2("cdo", args = '-V', stderr = TRUE))[[1]], ' ')[[1]][5]) + + cdo_version <- strsplit(suppressWarnings(system2("cdo", args = '-V', stderr = TRUE))[[1]], ' ')[[1]][5] + + cdo_version <- as.numeric_version(unlist(strsplit(cdo_version, "[A-Za-z]", fixed = FALSE))[[1]]) + } # If the variable to load is 2-d, we need to determine whether: # - interpolation is needed -- GitLab From 85cf2bd6a707615125ab5a0a69c962fc37ea6f2c Mon Sep 17 00:00:00 2001 From: aho Date: Thu, 1 Oct 2020 16:56:59 +0200 Subject: [PATCH 12/44] Bugfix for per-paired when NA existence. --- R/Clim.R | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/R/Clim.R b/R/Clim.R index 8445e462..cc934e21 100644 --- a/R/Clim.R +++ b/R/Clim.R @@ -70,11 +70,9 @@ Clim <- function(var_exp, var_obs, memb = TRUE, kharin = FALSE, NDV = FALSE) { # Find common points to compute climatologies # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # - tmp <- MeanListDim(var_obs, dims = 5:7, narm = TRUE) - tmp2 <- MeanListDim(var_exp, dims = 5:7, narm = TRUE) - nan <- MeanListDim(tmp, dims = 1:2, narm = FALSE) + Mean1Dim(Mean1Dim(tmp2, 2, - narm = TRUE), - 1, narm = FALSE) + nan <- MeanListDim(var_exp, dims = c(1:2, 5:7), narm = FALSE) + + MeanListDim(var_obs, dims = c(1:2, 5:7), narm = FALSE) + for (jdate in 1:dimexp[3]) { for (jtime in 1:dimexp[4]) { if (is.na(nan[jdate, jtime])) { -- GitLab From 749ba229c9040d3586e07acb2bc8ab3436ee61de Mon Sep 17 00:00:00 2001 From: aho Date: Mon, 5 Oct 2020 12:28:58 +0200 Subject: [PATCH 13/44] Revise the NA exclusion rule. each lon/lat/lev is independent --- R/Clim.R | 48 ++++++++++++++++++++++++++++++++++++++++-------- 1 file changed, 40 insertions(+), 8 deletions(-) diff --git a/R/Clim.R b/R/Clim.R index cc934e21..a60106a3 100644 --- a/R/Clim.R +++ b/R/Clim.R @@ -70,17 +70,49 @@ Clim <- function(var_exp, var_obs, memb = TRUE, kharin = FALSE, NDV = FALSE) { # Find common points to compute climatologies # ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ # - nan <- MeanListDim(var_exp, dims = c(1:2, 5:7), narm = FALSE) + - MeanListDim(var_obs, dims = c(1:2, 5:7), narm = FALSE) - for (jdate in 1:dimexp[3]) { - for (jtime in 1:dimexp[4]) { - if (is.na(nan[jdate, jtime])) { - var_exp[, , jdate, jtime, , , ] <- NA - var_obs[, , jdate, jtime, , , ] <- NA - } + na_array <- array(0, dim = dim(var_exp)[3:7]) + + for (i_dat in 1:dimexp[1]) { + for (i_memb in 1:dimexp[2]) { + na_array <- na_array + as.numeric(is.na(var_exp[i_dat, i_memb, , , , , ])) + } + } + for (i_dat in 1:dimobs[1]) { + for (i_memb in 1:dimobs[2]) { + na_array <- na_array + as.numeric(is.na(var_obs[i_dat, i_memb, , , , , ])) + } + } + na_array <- as.logical(na_array) # TRUE is NA, FALSE is not + + for (i_dat in 1:dimexp[1]) { + for (i_memb in 1:dimexp[2]) { + asd <- var_exp[i_dat, i_memb, , , , , ] + asd[which(na_array)] <- NA + var_exp[i_dat, i_memb, , , , , ] <- asd } } + for (i_dat in 1:dimobs[1]) { + for (i_memb in 1:dimobs[2]) { + asd <- var_obs[i_dat, i_memb, , , , , ] + asd[which(na_array)] <- NA + var_obs[i_dat, i_memb, , , , , ] <- asd + } + } + +# nan <- MeanListDim(var_exp, dims = c(1:2, 5:7), narm = FALSE) + +# MeanListDim(var_obs, dims = c(1:2, 5:7), narm = FALSE) +# +# for (jdate in 1:dimexp[3]) { +# for (jtime in 1:dimexp[4]) { +# if (is.na(nan[jdate, jtime])) { +# var_exp[, , jdate, jtime, , , ] <- NA +# var_obs[, , jdate, jtime, , , ] <- NA +# } +# } +# } + + # # Compute climatologies -- GitLab From 6cb708741a64a027ee0ffdd1e29b6fa5854a3748 Mon Sep 17 00:00:00 2001 From: aho Date: Mon, 5 Oct 2020 15:55:43 +0200 Subject: [PATCH 14/44] Correct Corr() p value. --- R/Corr.R | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/R/Corr.R b/R/Corr.R index 41900230..fe8e5716 100644 --- a/R/Corr.R +++ b/R/Corr.R @@ -198,9 +198,13 @@ Corr <- function(var_exp, var_obs, posloop = 1, poscor = 2, compROW = NULL, } if (pval) { #t <- qt(0.95, eno - 2) - t <- qt(siglev, eno - 2) - CORR[jexp, jobs, dim_pval, j3, j4, j5, j6, j7, j8, j9, - j10] <- sqrt((t * t) / ((t * t) + eno - 2)) +# t <- qt(siglev, eno - 2) +# CORR[jexp, jobs, dim_pval, j3, j4, j5, j6, j7, j8, j9, +# j10] <- sqrt((t * t) / ((t * t) + eno - 2)) + t <-sqrt(toto * toto * (eno - 2) / (1 - (toto ^ 2))) + CORR[jexp, jobs, dim_pval, j3, j4, j5, j6, j7, j8, j9, + j10] <- pt(t, eno - 2, lower.tail = FALSE) + } if (conf) { CORR[jexp, jobs, 1, j3, j4, j5, j6, j7, j8, j9, -- GitLab From 3aec51a5cd211216cb2e1bd586798c4071f71ece Mon Sep 17 00:00:00 2001 From: nperez Date: Wed, 14 Oct 2020 17:47:30 +0200 Subject: [PATCH 15/44] First version to check the first timestamp in files --- R/Load.R | 35 +++++++++++++++++++++++++++++++++-- R/Utils.R | 24 ++++++++++++++++++++++-- 2 files changed, 55 insertions(+), 4 deletions(-) diff --git a/R/Load.R b/R/Load.R index 6b136ec9..83012596 100644 --- a/R/Load.R +++ b/R/Load.R @@ -850,6 +850,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, configfile = NULL, varmin = NULL, varmax = NULL, silent = FALSE, nprocs = NULL, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial') { + #library(parallel) #library(bigmemory) @@ -1052,7 +1053,6 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, if (!is.character(storefreq) || !(storefreq %in% c('monthly', 'daily'))) { stop("Error: parameter 'storefreq' is wrong, can take value 'daily' or 'monthly'.") } - # sampleperiod if (is.null(sampleperiod) || !is.numeric(sampleperiod)) { stop("Error: parameter 'sampleperiod' is wrong. It should be numeric.") @@ -1732,7 +1732,36 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, ## This condition must be fulfilled to put all the month time steps ## in the dimension of length nleadtimes. Otherwise it must be cut: #(length(leadtimes) - 1)*sampleperiod + 1 - (jleadtime - 1)*sampleperiod >= days_in_month - day + 1 + + ## Nuria: The first time step in exp could be different from sdate: +if (jleadtime == 1) { + print("NEW:") + print(jleadtime) + if (is.null(found_data$time_dim)) { + stop("Check 'time' variable in the experimental files, ", + "since not units or first time step have been found.") + } else { + print("found_data$time_dim TRUE") + origin <- as.POSIXct( + paste(strsplit(found_data$time_dim$time_units , " ")[[1]][c(3,4)], + collapse = " "), tz = 'UTC') + units <- strsplit(found_data$time_dim$time_units, " ")[[1]][1] + if (units == 'hours') { + exp_first_time_step <- as.POSIXct(found_data$time_dim$first_time_step_in_file * + 3600, origin = origin, tz = 'UTC') + } else if (units == 'days') { + exp_first_time_step <- as.POSIXct(found_data$time_dim$first_time_step_in_file * + 86400, origin = origin, tz = 'UTC') + } + } + print(paste("exp_first_time_step :", exp_first_time_step)) + if (as.numeric(format(exp_first_time_step, "%d")) > 1) { + day <- as.numeric(format(exp_first_time_step, "%d")) + print(paste("day:", day)) + } +} obs_file_indices <- seq(day, min(days_in_month, (length(leadtimes) - jleadtime) * sampleperiod + day), sampleperiod) +print(obs_file_indices) } else { obs_file_indices <- 1 } @@ -1828,7 +1857,9 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, } if (storefreq == 'daily') { - startdate <- startdate + 86400 * sampleperiod * length(obs_file_indices) + #startdate <- startdate + 86400 * sampleperiod * length(obs_file_indices) +startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) +print(paste("New startdate:", startdate)) year <- as.integer(substr(startdate, 1, 4)) month <- as.integer(substr(startdate, 6, 7)) day <- as.integer(substr(startdate, 9, 10)) diff --git a/R/Utils.R b/R/Utils.R index 44600181..d59a32ec 100644 --- a/R/Utils.R +++ b/R/Utils.R @@ -590,7 +590,14 @@ if (length(time_dimname) == 1) { nltime <- fnc$var[[namevar]][['dim']][[match(time_dimname, var_dimnames)]]$len expected_dims <- c(expected_dims, time_dimname) +print(expected_dims) +print(time_dimname) dim_matches <- match(expected_dims, var_dimnames) +first_time_step_in_file <- fnc$var[[namevar]][['dim']][[match(time_dimname, + var_dimnames)]]$vals[1] +time_units <- fnc$var[[namevar]][['dim']][[match(time_dimname, var_dimnames)]]$units +print(first_time_step_in_file) +print(time_units) } else { if (!is.null(old_members_dimname)) { expected_dims[which(expected_dims == 'lev')] <- old_members_dimname @@ -621,6 +628,7 @@ # 3) Members (even if is not a file per member experiment) # 4) Lead-times if (work_piece[['is_file_per_dataset']]) { +print("HERE") time_indices <- 1:nltime mons <- strsplit(system(paste('cdo showmon ', filein, ' 2>/dev/null'), intern = TRUE), split = ' ') @@ -631,7 +639,8 @@ time_indices <- ts(time_indices, start = c(years[1], mons[1]), end = c(years[length(years)], mons[length(mons)]), frequency = 12) - ltimes_list <- list() +print(time_indices) + ltimes_list <- list() for (sdate in work_piece[['startdates']]) { selected_time_indices <- window(time_indices, start = c(as.numeric( substr(sdate, 1, 4)), as.numeric(substr(sdate, 5, 6))), @@ -639,7 +648,9 @@ selected_time_indices <- selected_time_indices[work_piece[['leadtimes']]] ltimes_list <- c(ltimes_list, list(selected_time_indices)) } +print(ltimes_list) } else { +print("HERE 2") ltimes <- work_piece[['leadtimes']] #if (work_piece[['dataset_type']] == 'exp') { ltimes_list <- list(ltimes[which(ltimes <= nltime)]) @@ -687,14 +698,19 @@ final_dims[3] <- length(members) } if (time_dimname %in% expected_dims) { +print("HERE 3") if (any(!is.na(ltimes))) { +print("HERE 4") start <- c(start, head(ltimes[which(!is.na(ltimes))], 1)) end <- c(end, tail(ltimes[which(!is.na(ltimes))], 1)) subset_indices <- c(subset_indices, list(ltimes - head(ltimes[which(!is.na(ltimes))], 1) + 1)) +print(subset_indices) } else { start <- c(start, NA) end <- c(end, NA) subset_indices <- c(subset_indices, list(ltimes)) +print("HERE 5") +print(subset_indices) } dim_time <- ncdim_def(time_dimname, "", 1:length(ltimes), unlim = TRUE) ncdf_dims <- c(ncdf_dims, list(dim_time)) @@ -854,6 +870,8 @@ } } dims <- list(member = nmemb, ftime = nltime, lon = final_lons, lat = final_lats) +print("HERE 6") +print(dims) } else { # If we are not exploring, then we have to process the retrieved data if (is_2d_var) { @@ -938,7 +956,9 @@ if (explore_dims) { list(dims = dims, is_2d_var = is_2d_var, grid = grid_name, units = units, var_long_name = var_long_name, - data_across_gw = data_across_gw, array_across_gw = array_across_gw) + data_across_gw = data_across_gw, array_across_gw = array_across_gw, + time_dim = list(first_time_step_in_file = first_time_step_in_file, + time_units = time_units)) } else { ###if (!silent && !is.null(progress_connection) && !is.null(work_piece[['progress_amount']])) { ### foobar <- writeBin(work_piece[['progress_amount']], progress_connection) -- GitLab From 565e7394db75693eeef438eea4853b11b56c4522 Mon Sep 17 00:00:00 2001 From: nperez Date: Fri, 16 Oct 2020 15:15:26 +0200 Subject: [PATCH 16/44] Load properly working for 2 sdates when loading ecmwf s5c3s --- R/Load.R | 99 ++++++++++++++++++++++++++++++++----------------------- R/Utils.R | 19 ++--------- 2 files changed, 59 insertions(+), 59 deletions(-) diff --git a/R/Load.R b/R/Load.R index 83012596..3d015dac 100644 --- a/R/Load.R +++ b/R/Load.R @@ -1382,6 +1382,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, dims2define <- TRUE is_file_per_member_exp <- rep(nmod, FALSE) exp_work_pieces <- list() + first_time_step_list <- NULL jmod <- 1 while (jmod <= nmod) { first_dataset_file_found <- FALSE @@ -1445,6 +1446,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, found_dims <- found_data$dims var_long_name <- found_data$var_long_name units <- found_data$units + first_time_step_list <- c(first_time_step_list, list(found_data$time_dim)) if (!is.null(found_dims)) { # If a file is found, we can define the dimensions of the output arrays. is_2d_var <- found_data$is_2d_var @@ -1635,6 +1637,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, found_data <- .LoadDataFile(work_piece, explore_dims = TRUE, silent = silent) found_dims <- found_data$dims var_long_name <- found_data$var_long_name + first_time_step_list <- c(first_time_step_list, list(found_data$time_dim)) units <- found_data$units if (!is.null(found_dims)) { is_2d_var <- found_data$is_2d_var @@ -1734,34 +1737,31 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, #(length(leadtimes) - 1)*sampleperiod + 1 - (jleadtime - 1)*sampleperiod >= days_in_month - day + 1 ## Nuria: The first time step in exp could be different from sdate: -if (jleadtime == 1) { - print("NEW:") - print(jleadtime) - if (is.null(found_data$time_dim)) { - stop("Check 'time' variable in the experimental files, ", - "since not units or first time step have been found.") - } else { - print("found_data$time_dim TRUE") - origin <- as.POSIXct( - paste(strsplit(found_data$time_dim$time_units , " ")[[1]][c(3,4)], - collapse = " "), tz = 'UTC') - units <- strsplit(found_data$time_dim$time_units, " ")[[1]][1] - if (units == 'hours') { - exp_first_time_step <- as.POSIXct(found_data$time_dim$first_time_step_in_file * + if (jleadtime == 1) { + if (is.null(first_time_step_list[[1]])) { + stop("Check 'time' variable in the experimental files ", + "since not units or first time step have been found.") + } else { + origin <- as.POSIXct( + paste(strsplit(first_time_step_list[[1]]$time_units, " ")[[1]][c(3,4)], + collapse = " "), tz = 'UTC') + units <- strsplit(first_time_step_list[[1]]$time_units, " ")[[1]][1] + if (units == 'hours') { + exp_first_time_step <- as.POSIXct( + first_time_step_list[[1]]$first_time_step_in_file * 3600, origin = origin, tz = 'UTC') - } else if (units == 'days') { - exp_first_time_step <- as.POSIXct(found_data$time_dim$first_time_step_in_file * + } else if (units == 'days') { + exp_first_time_step <- as.POSIXct( + first_time_step_list[[1]]$first_time_step_in_file * 86400, origin = origin, tz = 'UTC') - } - } - print(paste("exp_first_time_step :", exp_first_time_step)) - if (as.numeric(format(exp_first_time_step, "%d")) > 1) { - day <- as.numeric(format(exp_first_time_step, "%d")) - print(paste("day:", day)) - } -} - obs_file_indices <- seq(day, min(days_in_month, (length(leadtimes) - jleadtime) * sampleperiod + day), sampleperiod) -print(obs_file_indices) + } + } + if (as.numeric(format(exp_first_time_step, "%d")) > 1) { + day <- as.numeric(format(exp_first_time_step, "%d")) + } + } + obs_file_indices <- seq(day, min(days_in_month, + (length(leadtimes) - jleadtime) * sampleperiod + day), sampleperiod) } else { obs_file_indices <- 1 } @@ -2173,49 +2173,55 @@ print(paste("New startdate:", startdate)) attr(variable, 'daily_agg_cellfun') <- 'none' attr(variable, 'monthly_agg_cellfun') <- 'none' attr(variable, 'verification_time') <- 'none' - - number_ftime <- NULL + + number_ftime <- NULL if (is.null(var_exp)) { mod_data <- NULL - } else { + } else { dim_reorder <- length(dim_exp):1 dim_reorder[2:3] <- dim_reorder[3:2] old_dims <- dim_exp dim_exp <- dim_exp[dim_reorder] - mod_data <- aperm(array(bigmemory::as.matrix(var_exp), dim = old_dims), dim_reorder) + mod_data <- + aperm(array(bigmemory::as.matrix(var_exp), dim = old_dims), dim_reorder) attr(mod_data, 'dimensions') <- names(dim_exp) names(dim(mod_data)) <- names(dim_exp) number_ftime <- dim_exp[["ftime"]] } - + if (is.null(var_obs)) { obs_data <- NULL - } else { + } else { dim_reorder <- length(dim_obs):1 dim_reorder[2:3] <- dim_reorder[3:2] old_dims <- dim_obs dim_obs <- dim_obs[dim_reorder] - obs_data <- aperm(array(bigmemory::as.matrix(var_obs), dim = old_dims), dim_reorder) + obs_data <- + aperm(array(bigmemory::as.matrix(var_obs), dim = old_dims), dim_reorder) attr(obs_data, 'dimensions') <- names(dim_obs) names(dim(obs_data)) <- names(dim_obs) if (is.null(number_ftime)) { number_ftime <- dim_obs[["ftime"]] } } - + if (is.null(latitudes)) { lat <- 0 attr(lat, 'cdo_grid_name') <- 'none' attr(lat, 'first_lat') <- 'none' - attr(lat, 'last_lat') <- 'none' + attr(lat, 'last_lat') <- 'none' } else { lat <- latitudes - attr(lat, 'cdo_grid_name') <- if (is.null(grid)) 'none' else grid + attr(lat, 'cdo_grid_name') <- + if (is.null(grid)) + 'none' + else + grid attr(lat, 'first_lat') <- tail(lat, 1) attr(lat, 'last_lat') <- head(lat, 1) } attr(lat, 'projection') <- 'none' - + if (is.null(longitudes)) { lon <- 0 attr(lon, 'cdo_grid_name') <- 'none' @@ -2225,14 +2231,18 @@ print(paste("New startdate:", startdate)) attr(lon, 'last_lon') <- 'none' } else { lon <- longitudes - attr(lon, 'cdo_grid_name') <- if (is.null(grid)) 'none' else grid + attr(lon, 'cdo_grid_name') <- + if (is.null(grid)) + 'none' + else + grid attr(lon, 'data_across_gw') <- data_across_gw attr(lon, 'array_across_gw') <- array_across_gw attr(lon, 'first_lon') <- lon[which.min(abs(lon - lonmin))] attr(lon, 'last_lon') <- lon[which.min(abs(lon - lonmax))] } attr(lon, 'projection') <- 'none' - + dates <- list() ## we must put a start and end time for each prediction c(start date, forecast time) if (storefreq == 'minutely') { @@ -2244,18 +2254,23 @@ print(paste("New startdate:", startdate)) } else if (storefreq == 'monthly') { store_period <- 'month' } - + addTime <- function(date, period, n = 1) { seq(date, by = paste(n, period), length = 2)[2] } - + # We build dates, a list with components start and end. # Start is a list with as many components as start dates. # Each component is a vector of the initial POSIXct date of each # forecast time step + if (storefreq == 'daily') { + origin <- as.numeric(format(exp_first_time_step, "%d")) - 1 + } else { + origin <- 0 + } dates[["start"]] <- do.call(c, lapply(sdates, function(x) { - do.call(c, lapply((0:(number_ftime - 1)) * sampleperiod, + do.call(c, lapply((origin:(origin + number_ftime - 1)) * sampleperiod, function(y) { addTime(as.POSIXct(x, format = "%Y%m%d", tz = "UTC"), store_period, y + leadtimemin - 1) })) diff --git a/R/Utils.R b/R/Utils.R index d59a32ec..a7415c51 100644 --- a/R/Utils.R +++ b/R/Utils.R @@ -590,14 +590,10 @@ if (length(time_dimname) == 1) { nltime <- fnc$var[[namevar]][['dim']][[match(time_dimname, var_dimnames)]]$len expected_dims <- c(expected_dims, time_dimname) -print(expected_dims) -print(time_dimname) dim_matches <- match(expected_dims, var_dimnames) -first_time_step_in_file <- fnc$var[[namevar]][['dim']][[match(time_dimname, + first_time_step_in_file <- fnc$var[[namevar]][['dim']][[match(time_dimname, var_dimnames)]]$vals[1] -time_units <- fnc$var[[namevar]][['dim']][[match(time_dimname, var_dimnames)]]$units -print(first_time_step_in_file) -print(time_units) + time_units <- fnc$var[[namevar]][['dim']][[match(time_dimname, var_dimnames)]]$units } else { if (!is.null(old_members_dimname)) { expected_dims[which(expected_dims == 'lev')] <- old_members_dimname @@ -628,7 +624,6 @@ print(time_units) # 3) Members (even if is not a file per member experiment) # 4) Lead-times if (work_piece[['is_file_per_dataset']]) { -print("HERE") time_indices <- 1:nltime mons <- strsplit(system(paste('cdo showmon ', filein, ' 2>/dev/null'), intern = TRUE), split = ' ') @@ -639,7 +634,6 @@ print("HERE") time_indices <- ts(time_indices, start = c(years[1], mons[1]), end = c(years[length(years)], mons[length(mons)]), frequency = 12) -print(time_indices) ltimes_list <- list() for (sdate in work_piece[['startdates']]) { selected_time_indices <- window(time_indices, start = c(as.numeric( @@ -648,9 +642,7 @@ print(time_indices) selected_time_indices <- selected_time_indices[work_piece[['leadtimes']]] ltimes_list <- c(ltimes_list, list(selected_time_indices)) } -print(ltimes_list) } else { -print("HERE 2") ltimes <- work_piece[['leadtimes']] #if (work_piece[['dataset_type']] == 'exp') { ltimes_list <- list(ltimes[which(ltimes <= nltime)]) @@ -698,19 +690,14 @@ print("HERE 2") final_dims[3] <- length(members) } if (time_dimname %in% expected_dims) { -print("HERE 3") if (any(!is.na(ltimes))) { -print("HERE 4") start <- c(start, head(ltimes[which(!is.na(ltimes))], 1)) end <- c(end, tail(ltimes[which(!is.na(ltimes))], 1)) subset_indices <- c(subset_indices, list(ltimes - head(ltimes[which(!is.na(ltimes))], 1) + 1)) -print(subset_indices) } else { start <- c(start, NA) end <- c(end, NA) subset_indices <- c(subset_indices, list(ltimes)) -print("HERE 5") -print(subset_indices) } dim_time <- ncdim_def(time_dimname, "", 1:length(ltimes), unlim = TRUE) ncdf_dims <- c(ncdf_dims, list(dim_time)) @@ -870,8 +857,6 @@ print(subset_indices) } } dims <- list(member = nmemb, ftime = nltime, lon = final_lons, lat = final_lats) -print("HERE 6") -print(dims) } else { # If we are not exploring, then we have to process the retrieved data if (is_2d_var) { -- GitLab From 34dc2ddb91b7d5016b61bb0ece2d10c35b6d0b22 Mon Sep 17 00:00:00 2001 From: nperez Date: Fri, 16 Oct 2020 15:52:18 +0200 Subject: [PATCH 17/44] Tests added for loading exp system5 and obs --- tests/testthat/test-Load.R | 56 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 tests/testthat/test-Load.R diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R new file mode 100644 index 00000000..43111a0e --- /dev/null +++ b/tests/testthat/test-Load.R @@ -0,0 +1,56 @@ +Context("Testing Load with ECMWF System5c3s daily data") +test_that("First time step is correctly interpreted:", { + data <- Load(var = 'prlr', + exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), + obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), + sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') + nmember = 25,leadtimemin = 1, + leadtimemax = NULL, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = NULL, nleadtime = NULL) + expect_equal(dim(data$mod), c(dataset = 1, member = 25, sdate = 2, ftime = 214, + lat = 8, lon = 8)) + expect_equal(dim(data$obs), c(dataset = 1, member = 1, sdate = 2, ftime = 214, + lat = 8, lon = 8)) + expect_equal(sum(is.na(data$mod)), 0) + expect_equal(sum(is.na(data$obs)), 0) + dates <- c(seq(as.POSIXct("1993-11-02", tz = 'UTC'), + as.POSIXct("1994-06-03", tz = 'UTC'), "d"), + seq(as.POSIXct("1994-11-02", tz = 'UTC'), + as.POSIXct("1995-06-03", tz = 'UTC'), "d")) + attributes(dates)$tzone <- 'UTC' + expect_equal(data$Dates$start, dates) + dates <- c(seq(as.POSIXct("1993-11-03", tz = 'UTC'), + as.POSIXct("1994-06-04", tz = 'UTC'), "d"), + seq(as.POSIXct("1994-11-03", tz = 'UTC'), + as.POSIXct("1995-06-04", tz = 'UTC'), "d")) + attributes(dates)$tzone <- 'UTC' + expect_equal(data$Dates$end, dates) + + obs <- s2dverification::Load(var = 'prlr', exp = NULL, + obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), + sdates = c('19931101', '19941101'), + #paste0(1993:2018, '1101') + nmember = 25,leadtimemin = 1, + leadtimemax = 2, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = 1, nleadtime = NULL) + # The values of observation when loading exp and obs simultaneously corresponds to the second day of the observations in the file: + expect_equal(data$obs[1,1,1,1,,], obs$obs[1,1,1,2,,]) + expect_equal(data$obs[1,1,2,1,,], obs$obs[1,1,2,2,,]) + +} \ No newline at end of file -- GitLab From 1f070a739b8b865ed77ccda5b5500cf924b9c74a Mon Sep 17 00:00:00 2001 From: nperez Date: Fri, 16 Oct 2020 16:08:31 +0200 Subject: [PATCH 18/44] fix end of line --- R/Load.R | 1 - tests/testthat/test-Load.R | 5 ++++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/R/Load.R b/R/Load.R index 3d015dac..d35697b3 100644 --- a/R/Load.R +++ b/R/Load.R @@ -1859,7 +1859,6 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, if (storefreq == 'daily') { #startdate <- startdate + 86400 * sampleperiod * length(obs_file_indices) startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) -print(paste("New startdate:", startdate)) year <- as.integer(substr(startdate, 1, 4)) month <- as.integer(substr(startdate, 6, 7)) day <- as.integer(substr(startdate, 9, 10)) diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index 43111a0e..5384e1dd 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -53,4 +53,7 @@ test_that("First time step is correctly interpreted:", { expect_equal(data$obs[1,1,1,1,,], obs$obs[1,1,1,2,,]) expect_equal(data$obs[1,1,2,1,,], obs$obs[1,1,2,2,,]) -} \ No newline at end of file + + + +}) \ No newline at end of file -- GitLab From 6d86c28445063e11bbf667a7ff1dc21294fbe340 Mon Sep 17 00:00:00 2001 From: nperez Date: Fri, 16 Oct 2020 16:15:07 +0200 Subject: [PATCH 19/44] fix function context in tests --- tests/testthat/test-Load.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index 5384e1dd..0e5cf9d2 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -1,4 +1,4 @@ -Context("Testing Load with ECMWF System5c3s daily data") +context("Testing Load with ECMWF System5c3s daily data") test_that("First time step is correctly interpreted:", { data <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), -- GitLab From 482a04a94d3f4b19a9f4f5f939157866c0292214 Mon Sep 17 00:00:00 2001 From: nperez Date: Fri, 16 Oct 2020 18:03:09 +0200 Subject: [PATCH 20/44] New tests and fixes --- R/Load.R | 4 ++-- tests/testthat/test-Load.R | 36 ++++++++++++++++++------------------ 2 files changed, 20 insertions(+), 20 deletions(-) diff --git a/R/Load.R b/R/Load.R index d35697b3..1b7edbb3 100644 --- a/R/Load.R +++ b/R/Load.R @@ -1737,7 +1737,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, #(length(leadtimes) - 1)*sampleperiod + 1 - (jleadtime - 1)*sampleperiod >= days_in_month - day + 1 ## Nuria: The first time step in exp could be different from sdate: - if (jleadtime == 1) { + if (jleadtime == 1 & !is.null(exp)) { if (is.null(first_time_step_list[[1]])) { stop("Check 'time' variable in the experimental files ", "since not units or first time step have been found.") @@ -2262,7 +2262,7 @@ startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) # Start is a list with as many components as start dates. # Each component is a vector of the initial POSIXct date of each # forecast time step - if (storefreq == 'daily') { + if (storefreq == 'daily' & !is.null(exp)) { origin <- as.numeric(format(exp_first_time_step, "%d")) - 1 } else { origin <- 0 diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index 0e5cf9d2..a067c65b 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -4,7 +4,7 @@ test_that("First time step is correctly interpreted:", { exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') - nmember = 25,leadtimemin = 1, + nmember = 5,leadtimemin = 1, leadtimemax = NULL, storefreq = "daily", sampleperiod = 1, latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, @@ -15,7 +15,8 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = NULL, nleadtime = NULL) - expect_equal(dim(data$mod), c(dataset = 1, member = 25, sdate = 2, ftime = 214, + + expect_equal(dim(data$mod), c(dataset = 1, member = 5, sdate = 2, ftime = 214, lat = 8, lon = 8)) expect_equal(dim(data$obs), c(dataset = 1, member = 1, sdate = 2, ftime = 214, lat = 8, lon = 8)) @@ -34,21 +35,20 @@ test_that("First time step is correctly interpreted:", { attributes(dates)$tzone <- 'UTC' expect_equal(data$Dates$end, dates) - obs <- s2dverification::Load(var = 'prlr', exp = NULL, - obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), - sdates = c('19931101', '19941101'), - #paste0(1993:2018, '1101') - nmember = 25,leadtimemin = 1, - leadtimemax = 2, - storefreq = "daily", sampleperiod = 1, - latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, - output = 'lonlat', nprocs = 1, - method = 'conservative', grid = 'r360x181', - maskmod = vector("list", 15), maskobs = vector("list", 15), - configfile = NULL, varmin = NULL, varmax = NULL, - silent = FALSE, dimnames = NULL, - remapcells = 2, path_glob_permissive = 'partial', - nmemberobs = 1, nleadtime = NULL) + obs <- Load(var = 'prlr', exp = NULL, + obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), + sdates = c('19931101', '19941101'), + nmember = 1, leadtimemin = 1, + leadtimemax = 2, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = 1, nleadtime = NULL) # The values of observation when loading exp and obs simultaneously corresponds to the second day of the observations in the file: expect_equal(data$obs[1,1,1,1,,], obs$obs[1,1,1,2,,]) expect_equal(data$obs[1,1,2,1,,], obs$obs[1,1,2,2,,]) @@ -56,4 +56,4 @@ test_that("First time step is correctly interpreted:", { -}) \ No newline at end of file +}) -- GitLab From e969afd0472ce91b26024fc1a39e1476b12aa98a Mon Sep 17 00:00:00 2001 From: nperez Date: Fri, 16 Oct 2020 18:10:06 +0200 Subject: [PATCH 21/44] gitlab-ci now loads CDO --- .gitlab-ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index b1cf9976..39a31ecb 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -4,7 +4,7 @@ build: stage: build script: - module load R -# - module load CDO + - module load CDO - R CMD build --resave-data . - R CMD check --as-cran --no-manual --run-donttest s2dverification_*.tar.gz - R -e 'covr::package_coverage()' -- GitLab From aa78dd0a0049c771725bb65dbfe865838d216a2f Mon Sep 17 00:00:00 2001 From: nperez Date: Mon, 19 Oct 2020 19:48:12 +0200 Subject: [PATCH 22/44] New version working for several experiments --- R/Load.R | 92 +++++++++++++++++++++++++++++--------- tests/testthat/test-Load.R | 52 +++++++++++++++++++++ 2 files changed, 124 insertions(+), 20 deletions(-) diff --git a/R/Load.R b/R/Load.R index 1b7edbb3..14ab6d2f 100644 --- a/R/Load.R +++ b/R/Load.R @@ -840,6 +840,7 @@ #' } #'@import parallel bigmemory methods #'@importFrom stats ts window na.omit +#'@importFrom abind abind #'@export Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, nmemberobs = NULL, nleadtime = NULL, leadtimemin = 1, @@ -1428,6 +1429,21 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, if (is_file_per_member_exp[jmod]) { replace_values[["MEMBER_NUMBER"]] <- '*' } + if (jsdate == 1) { + work_piecetime <- list(dataset_type = dataset_type, + filename = .ConfigReplaceVariablesInString(quasi_final_path, + replace_values), + namevar = namevar, grid = grid, remap = remap, + remapcells = remapcells, + is_file_per_member = is_file_per_member_exp[jmod], + is_file_per_dataset = FALSE, + lon_limits = c(lonmin, lonmax), + lat_limits = c(latmin, latmax), dimnames = exp[[jmod]][['dimnames']], + single_dataset = single_dataset) + looking_time <- .LoadDataFile(work_piecetime, explore_dims = TRUE, + silent = silent) + first_time_step_list <- c(first_time_step_list, list(looking_time$time_dim)) + } # If the dimensions of the output matrices are still to define, we try to read # the metadata of the data file that corresponds to the current iteration if (dims2define) { @@ -1446,7 +1462,6 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, found_dims <- found_data$dims var_long_name <- found_data$var_long_name units <- found_data$units - first_time_step_list <- c(first_time_step_list, list(found_data$time_dim)) if (!is.null(found_dims)) { # If a file is found, we can define the dimensions of the output arrays. is_2d_var <- found_data$is_2d_var @@ -1533,6 +1548,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, jsdate <- jsdate + 1 } replace_values[extra_vars] <- NULL + #first_dataset_file_found <- FALSE jmod <- jmod + 1 } if (dims2define && length(exp) > 0) { @@ -1573,6 +1589,25 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, } leadtimes <- seq(leadtimemin, leadtimemax, sampleperiod) } + # If there are differences in the first time stamp in exp files: + in_date <- lapply(first_time_step_list, function(x) { + origin <- as.POSIXct( + paste(strsplit(x$time_units, " ")[[1]][c(3,4)], + collapse = " "), tz = 'UTC') + units <- strsplit(x$time_units, " ")[[1]][1] + if (units == 'hours') { + exp_first_time_step <- as.POSIXct( + x$first_time_step_in_file * + 3600, origin = origin, tz = 'UTC') + } else if (units == 'days') { + exp_first_time_step <- as.POSIXct( + x$first_time_step_in_file * + 86400, origin = origin, tz = 'UTC') + } + day <- as.numeric(format(exp_first_time_step, "%d")) + return(day) + }) + exp_first_time_step <- min(unlist(in_date)) # Now we start iterating over observations. We try to find the output matrix # dimensions and we build anyway the work pieces corresponding to the observational @@ -1736,30 +1771,17 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, ## in the dimension of length nleadtimes. Otherwise it must be cut: #(length(leadtimes) - 1)*sampleperiod + 1 - (jleadtime - 1)*sampleperiod >= days_in_month - day + 1 - ## Nuria: The first time step in exp could be different from sdate: + ## The first time step in exp could be different from sdate: if (jleadtime == 1 & !is.null(exp)) { if (is.null(first_time_step_list[[1]])) { stop("Check 'time' variable in the experimental files ", "since not units or first time step have been found.") } else { - origin <- as.POSIXct( - paste(strsplit(first_time_step_list[[1]]$time_units, " ")[[1]][c(3,4)], - collapse = " "), tz = 'UTC') - units <- strsplit(first_time_step_list[[1]]$time_units, " ")[[1]][1] - if (units == 'hours') { - exp_first_time_step <- as.POSIXct( - first_time_step_list[[1]]$first_time_step_in_file * - 3600, origin = origin, tz = 'UTC') - } else if (units == 'days') { - exp_first_time_step <- as.POSIXct( - first_time_step_list[[1]]$first_time_step_in_file * - 86400, origin = origin, tz = 'UTC') + if (exp_first_time_step > 1) { + day <- exp_first_time_step + } } - } - if (as.numeric(format(exp_first_time_step, "%d")) > 1) { - day <- as.numeric(format(exp_first_time_step, "%d")) } - } obs_file_indices <- seq(day, min(days_in_month, (length(leadtimes) - jleadtime) * sampleperiod + day), sampleperiod) } else { @@ -2203,6 +2225,36 @@ startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) number_ftime <- dim_obs[["ftime"]] } } + if (any(in_date > 1) & length(in_date) > 1) { + .warning(paste("There is at least one experiment with first timestamp in ", + "file one or more days ahead from the start date. The data ", + "could containg missing values.")) + pos_max <- max(unlist(in_date)) - 1 + empty_slice <- array(NA, c(ftime = 1, dim(mod_data[1,,,1,,]))) + empty_slice <- .aperm2(empty_slice, c(2, 3, 1, 4, 5)) + new_data <- lapply(1:length(in_date), function(x) { + pos <- in_date[[x]] - 1 + res <- mod_data[x,,,,,] + if (pos > 0) { + while (pos > 0) { + res <- abind(empty_slice, res, along = 3) + pos <- pos - 1 + } + } else { + while(pos < pos_max) { + res <- abind(res, empty_slice, along = 3) + pos <- pos + 1 + } + } + return(res) + }) + new_data <- abind(new_data, along = 6) + mod_data <- .aperm2(new_data, c(6,1,2,3,4,5)) + names(dim(mod_data)) <- names(dim_exp) + attr(mod_data, 'dimensions') <- names(dim_exp) + names(dim(mod_data)) <- names(dim_exp) + number_ftime <- dim(mod_data)[["ftime"]] + } if (is.null(latitudes)) { lat <- 0 @@ -2262,8 +2314,8 @@ startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) # Start is a list with as many components as start dates. # Each component is a vector of the initial POSIXct date of each # forecast time step - if (storefreq == 'daily' & !is.null(exp)) { - origin <- as.numeric(format(exp_first_time_step, "%d")) - 1 + if (storefreq == 'daily' & !is.null(exp) & exp_first_time_step > 1) { + origin <- exp_first_time_step - 1 } else { origin <- 0 } diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index a067c65b..f5269ab1 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -54,6 +54,58 @@ test_that("First time step is correctly interpreted:", { expect_equal(data$obs[1,1,2,1,,], obs$obs[1,1,2,2,,]) + # Test when 2 observational datasets are requested: + data <- Load(var = 'prlr', + exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), + obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc'), list(name = 'erainterim')), + sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') + nmember = 5,leadtimemin = 1, + leadtimemax = NULL, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = NULL, nleadtime = NULL) + expect_equal(data$obs[1,1,1,1,,], obs$obs[1,1,1,2,,]) + expect_equal(data$obs[1,1,2,1,,], obs$obs[1,1,2,2,,]) + eraint <- Load(var = 'prlr', exp = NULL, + obs = list(list(name = 'erainterim')), + sdates = c('19931101', '19941101'), + nmember = 1, leadtimemin = 1, + leadtimemax = 2, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = 1, nleadtime = NULL) + expect_equal(data$obs[2,1,1,1,,], eraint$obs[1,1,1,2,,]) + expect_equal(data$obs[2,1,2,1,,], eraint$obs[1,1,2,2,,]) + + # Test for 2 experimental datasets + data <- Load(var = 'prlr', + exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc"), + list(name = 'ecmwfS4', path = "/esarchive/exp/ecmwf/system4_m1/$STORE_FREQ$/$VAR_NAME$/$VAR_NAME$_$START_DATE$.nc")), + obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), + sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') + nmember = 5,leadtimemin = 1, + leadtimemax = NULL, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = NULL, nleadtime = NULL) }) -- GitLab From f857fe168c563f6949d0fd18d9f6550456a0e367 Mon Sep 17 00:00:00 2001 From: nperez Date: Mon, 19 Oct 2020 20:04:23 +0200 Subject: [PATCH 23/44] automatic documentation updated and extra tests --- NAMESPACE | 1 + man/Composite.Rd | 10 +++++- tests/testthat/test-Load.R | 67 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 77 insertions(+), 1 deletion(-) diff --git a/NAMESPACE b/NAMESPACE index 4e855789..8561a4f0 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -93,6 +93,7 @@ import(methods) import(ncdf4) import(parallel) import(plyr) +importFrom(abind,abind) importFrom(grDevices,bmp) importFrom(grDevices,col2rgb) importFrom(grDevices,colorRampPalette) diff --git a/man/Composite.Rd b/man/Composite.Rd index 4e990020..b9151d82 100644 --- a/man/Composite.Rd +++ b/man/Composite.Rd @@ -4,7 +4,7 @@ \alias{Composite} \title{Computes composites} \usage{ -Composite(var, occ, lag = 0, eno = FALSE, fileout = NULL) +Composite(var, occ, lag = 0, eno = FALSE, K = NULL, fileout = NULL) } \arguments{ \item{var}{3-dimensional array (x, y, time) containing the variable to @@ -23,6 +23,8 @@ use +2 occurrences (i.e., shifted 2 time steps forward). Default is lag = 0.} \item{eno}{For using the effective sample size (TRUE) or the total sample size (FALSE that is the default) for the number of degrees of freedom.} +\item{K}{numeric value indicating the maximum number of composites. By default (NULL), it takes the maximum value provided in occ.} + \item{fileout}{Name of the .sav output file (NULL is the default).} } \value{ @@ -76,6 +78,12 @@ occ2 <- rep(0, 30) occ2[c(3, 9, 15, 21)] <- 1 filled.contour(Composite(var=f1, occ=occ2)$composite[,,1]) + +Example with one missing composite (#3) in occ: +data <- 1 : (4 * 5 * 6) +dim(data) <- c(lon = 4, lat = 5, case = 6) +occ <- c(1, 1, 2, 2, 3, 3) +res <- Composite(data, occ, K = 4) } \author{ History: diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index f5269ab1..6622a7ee 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -108,4 +108,71 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = NULL, nleadtime = NULL) + + expect_equal(sum(is.na(data$obs)), 0) + expect_equal(sum(is.na(data$mod[1,,,-1,,])), 0) + expect_equal(sum(is.na(data$mod[2,,,-215,,])), 0) + expect_equal(sum(is.na(data$mod[1,,,1,,,])), 640) + expect_equal(sum(is.na(data$mod[2,,,215,,])), 640) + dates <- c(seq(as.POSIXct("1993-11-01", tz = 'UTC'), + as.POSIXct("1994-06-03", tz = 'UTC'), "d"), + seq(as.POSIXct("1994-11-01", tz = 'UTC'), + as.POSIXct("1995-06-03", tz = 'UTC'), "d")) + attributes(dates)$tzone <- 'UTC' + expect_equal(data$Dates$start, dates) + dates <- c(seq(as.POSIXct("1993-11-02", tz = 'UTC'), + as.POSIXct("1994-06-04", tz = 'UTC'), "d"), + seq(as.POSIXct("1994-11-02", tz = 'UTC'), + as.POSIXct("1995-06-04", tz = 'UTC'), "d")) + attributes(dates)$tzone <- 'UTC' + expect_equal(data$Dates$end, dates) + + obs <- Load(var = 'prlr', exp = NULL, + obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), + sdates = c('19931101', '19941101'), + nmember = 1, leadtimemin = 1, + leadtimemax = 215, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = 1, nleadtime = NULL) + expect_equal(obs$obs, data$obs) + + system5 <- Load(var = 'prlr', + exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), + sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') + nmember = 5,leadtimemin = 1, + leadtimemax = NULL, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = NULL, nleadtime = NULL) + + expect_equal(system5$exp, data$exp[1,,,-1,,]) + system4 <- Load(var = 'prlr', + exp = list(list(name = 'ecmwfS4', path = "/esarchive/exp/ecmwf/system4_m1/$STORE_FREQ$/$VAR_NAME$/$VAR_NAME$_$START_DATE$.nc")), + sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') + nmember = 5,leadtimemin = 1, + leadtimemax = NULL, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = NULL, nleadtime = NULL) + + expect_equal(system4$exp, data$exp[2,,,-215,,]) }) -- GitLab From 55885301b107398a3cc3015479bab41ff660e65d Mon Sep 17 00:00:00 2001 From: nperez Date: Mon, 19 Oct 2020 20:24:03 +0200 Subject: [PATCH 24/44] test fixed --- tests/testthat/test-Load.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index 6622a7ee..815c376c 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -112,7 +112,7 @@ test_that("First time step is correctly interpreted:", { expect_equal(sum(is.na(data$obs)), 0) expect_equal(sum(is.na(data$mod[1,,,-1,,])), 0) expect_equal(sum(is.na(data$mod[2,,,-215,,])), 0) - expect_equal(sum(is.na(data$mod[1,,,1,,,])), 640) + expect_equal(sum(is.na(data$mod[1,,,1,,])), 640) expect_equal(sum(is.na(data$mod[2,,,215,,])), 640) dates <- c(seq(as.POSIXct("1993-11-01", tz = 'UTC'), as.POSIXct("1994-06-03", tz = 'UTC'), "d"), -- GitLab From 12ee096533a4835ab32d40c9f9a61a294249a62a Mon Sep 17 00:00:00 2001 From: nperez Date: Mon, 19 Oct 2020 20:36:18 +0200 Subject: [PATCH 25/44] Try tests --- tests/testthat/test-Load.R | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index 815c376c..1ac0d837 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -141,7 +141,9 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = 1, nleadtime = NULL) - expect_equal(obs$obs, data$obs) + print(dim(obs$obs)) + print(dim(data$obs)) + expect_equal(obs$obs, data$obs[,1,,,,,]) system5 <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), -- GitLab From 9302c9eee9b9600bdce6535b5a759f69937e99b9 Mon Sep 17 00:00:00 2001 From: nperez Date: Mon, 19 Oct 2020 20:51:33 +0200 Subject: [PATCH 26/44] try test --- tests/testthat/test-Load.R | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index 1ac0d837..dcdcca31 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -143,6 +143,8 @@ test_that("First time step is correctly interpreted:", { nmemberobs = 1, nleadtime = NULL) print(dim(obs$obs)) print(dim(data$obs)) + expect_equal(dim(obs$obs), c(dataset = 1, member = 1, sdate = 2, ftime = 215, + lon = 8, lat = 8)) expect_equal(obs$obs, data$obs[,1,,,,,]) system5 <- Load(var = 'prlr', -- GitLab From 84c595784d053fe63af38477f284454a77d3a763 Mon Sep 17 00:00:00 2001 From: nperez Date: Tue, 20 Oct 2020 09:53:58 +0200 Subject: [PATCH 27/44] Fix era5 in test --- R/Load.R | 2 ++ tests/testthat/test-Load.R | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/R/Load.R b/R/Load.R index 14ab6d2f..cbeff7a2 100644 --- a/R/Load.R +++ b/R/Load.R @@ -1923,7 +1923,9 @@ startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) pointer_var_exp <- pointer_var_obs <- NULL if (!is.null(dim_exp) && (length(unlist(dim_exp)) == length(dim_exp)) && !any(is.na(unlist(dim_exp))) && !any(unlist(dim_exp) == 0)) { + print(dim_exp) var_exp <- big.matrix(nrow = prod(unlist(dim_exp)), ncol = 1) + print(var_exp) pointer_var_exp <- describe(var_exp) } if (!is.null(dim_obs) && (length(unlist(dim_obs)) == length(dim_obs)) && diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index dcdcca31..e0f5733e 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -131,7 +131,7 @@ test_that("First time step is correctly interpreted:", { obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), sdates = c('19931101', '19941101'), nmember = 1, leadtimemin = 1, - leadtimemax = 215, + leadtimemax = 214, storefreq = "daily", sampleperiod = 1, latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, output = 'lonlat', nprocs = 1, -- GitLab From dfc9a5e4751dd9f2021fa90f6f11f3be9df7dfa0 Mon Sep 17 00:00:00 2001 From: nperez Date: Tue, 20 Oct 2020 11:00:19 +0200 Subject: [PATCH 28/44] fix when exp is null --- R/Load.R | 37 ++++++++++++++++++------------------- tests/testthat/test-Load.R | 2 +- 2 files changed, 19 insertions(+), 20 deletions(-) diff --git a/R/Load.R b/R/Load.R index cbeff7a2..c8978d48 100644 --- a/R/Load.R +++ b/R/Load.R @@ -1590,25 +1590,26 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, leadtimes <- seq(leadtimemin, leadtimemax, sampleperiod) } # If there are differences in the first time stamp in exp files: - in_date <- lapply(first_time_step_list, function(x) { - origin <- as.POSIXct( - paste(strsplit(x$time_units, " ")[[1]][c(3,4)], - collapse = " "), tz = 'UTC') - units <- strsplit(x$time_units, " ")[[1]][1] - if (units == 'hours') { - exp_first_time_step <- as.POSIXct( - x$first_time_step_in_file * + if (!is.null(exp)) { + in_date <- lapply(first_time_step_list, function(x) { + origin <- as.POSIXct( + paste(strsplit(x$time_units, " ")[[1]][c(3,4)], + collapse = " "), tz = 'UTC') + units <- strsplit(x$time_units, " ")[[1]][1] + if (units == 'hours') { + exp_first_time_step <- as.POSIXct( + x$first_time_step_in_file * 3600, origin = origin, tz = 'UTC') - } else if (units == 'days') { - exp_first_time_step <- as.POSIXct( - x$first_time_step_in_file * + } else if (units == 'days') { + exp_first_time_step <- as.POSIXct( + x$first_time_step_in_file * 86400, origin = origin, tz = 'UTC') - } - day <- as.numeric(format(exp_first_time_step, "%d")) - return(day) - }) - exp_first_time_step <- min(unlist(in_date)) - + } + day <- as.numeric(format(exp_first_time_step, "%d")) + return(day) + }) + exp_first_time_step <- min(unlist(in_date)) + } # Now we start iterating over observations. We try to find the output matrix # dimensions and we build anyway the work pieces corresponding to the observational # data that time-corresponds the experimental data or the time-steps until the @@ -1923,9 +1924,7 @@ startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) pointer_var_exp <- pointer_var_obs <- NULL if (!is.null(dim_exp) && (length(unlist(dim_exp)) == length(dim_exp)) && !any(is.na(unlist(dim_exp))) && !any(unlist(dim_exp) == 0)) { - print(dim_exp) var_exp <- big.matrix(nrow = prod(unlist(dim_exp)), ncol = 1) - print(var_exp) pointer_var_exp <- describe(var_exp) } if (!is.null(dim_obs) && (length(unlist(dim_obs)) == length(dim_obs)) && diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index e0f5733e..dcdcca31 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -131,7 +131,7 @@ test_that("First time step is correctly interpreted:", { obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), sdates = c('19931101', '19941101'), nmember = 1, leadtimemin = 1, - leadtimemax = 214, + leadtimemax = 215, storefreq = "daily", sampleperiod = 1, latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, output = 'lonlat', nprocs = 1, -- GitLab From 5bd19eb89a1c0a67f2cb649355ad9de235b03fb8 Mon Sep 17 00:00:00 2001 From: nperez Date: Tue, 20 Oct 2020 13:08:48 +0200 Subject: [PATCH 29/44] version working for two experiments in different order --- R/Load.R | 70 +++++++++++++++++++++----------------- tests/testthat/test-Load.R | 33 +++++++++++++++--- 2 files changed, 68 insertions(+), 35 deletions(-) diff --git a/R/Load.R b/R/Load.R index c8978d48..edb55eab 100644 --- a/R/Load.R +++ b/R/Load.R @@ -1609,6 +1609,10 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, return(day) }) exp_first_time_step <- min(unlist(in_date)) + if (max(unlist(in_date)) > 1) { + leadtimes <- seq(exp_first_time_step, leadtimemax + max(unlist(in_date)) - 1, + sampleperiod) + } } # Now we start iterating over observations. We try to find the output matrix # dimensions and we build anyway the work pieces corresponding to the observational @@ -2226,37 +2230,37 @@ startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) number_ftime <- dim_obs[["ftime"]] } } - if (any(in_date > 1) & length(in_date) > 1) { - .warning(paste("There is at least one experiment with first timestamp in ", - "file one or more days ahead from the start date. The data ", - "could containg missing values.")) - pos_max <- max(unlist(in_date)) - 1 - empty_slice <- array(NA, c(ftime = 1, dim(mod_data[1,,,1,,]))) - empty_slice <- .aperm2(empty_slice, c(2, 3, 1, 4, 5)) - new_data <- lapply(1:length(in_date), function(x) { - pos <- in_date[[x]] - 1 - res <- mod_data[x,,,,,] - if (pos > 0) { - while (pos > 0) { - res <- abind(empty_slice, res, along = 3) - pos <- pos - 1 + if (!is.null(exp)) { + if (any(in_date > 1) & length(in_date) > 1 & in_date[[1]] > 1) { + .warning(paste("There is at least one experiment with first timestamp in ", + "file one or more days ahead from the start date. The data ", + "could containg missing values.")) + pos_max <- max(unlist(in_date)) - 1 + empty_slice <- array(NA, c(ftime = 1, dim(mod_data[1,,,1,,]))) + empty_slice <- .aperm2(empty_slice, c(2, 3, 1, 4, 5)) + new_data <- lapply(1:length(in_date), function(x) { + pos <- in_date[[x]] - 1 + res <- mod_data[x,,,,,] + if (pos > 0) { + while (pos > 0) { + res <- abind(empty_slice, res, along = 3) + pos <- pos - 1 + } + } else { + while(pos < pos_max) { + res <- abind(res, empty_slice, along = 3) + pos <- pos + 1 + } } - } else { - while(pos < pos_max) { - res <- abind(res, empty_slice, along = 3) - pos <- pos + 1 - } - } - return(res) - }) - new_data <- abind(new_data, along = 6) - mod_data <- .aperm2(new_data, c(6,1,2,3,4,5)) - names(dim(mod_data)) <- names(dim_exp) - attr(mod_data, 'dimensions') <- names(dim_exp) - names(dim(mod_data)) <- names(dim_exp) - number_ftime <- dim(mod_data)[["ftime"]] + return(res) + }) + new_data <- abind(new_data, along = 6) + mod_data <- .aperm2(new_data, c(6,1,2,3,4,5)) + names(dim(mod_data)) <- names(dim_exp) + attr(mod_data, 'dimensions') <- names(dim_exp) + number_ftime <- dim(mod_data)[["ftime"]] + } } - if (is.null(latitudes)) { lat <- 0 attr(lat, 'cdo_grid_name') <- 'none' @@ -2315,8 +2319,12 @@ startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) # Start is a list with as many components as start dates. # Each component is a vector of the initial POSIXct date of each # forecast time step - if (storefreq == 'daily' & !is.null(exp) & exp_first_time_step > 1) { - origin <- exp_first_time_step - 1 + if (!is.null(exp)) { + if (storefreq == 'daily' & exp_first_time_step > 1) { + origin <- exp_first_time_step - 1 + } else { + origin <- 0 + } } else { origin <- 0 } diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index dcdcca31..d6c3ba84 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -141,11 +141,10 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = 1, nleadtime = NULL) - print(dim(obs$obs)) - print(dim(data$obs)) + expect_equal(dim(obs$obs), c(dataset = 1, member = 1, sdate = 2, ftime = 215, - lon = 8, lat = 8)) - expect_equal(obs$obs, data$obs[,1,,,,,]) + lat = 8, lon = 8)) + expect_equal(obs$obs, data$obs) system5 <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), @@ -179,4 +178,30 @@ test_that("First time step is correctly interpreted:", { nmemberobs = NULL, nleadtime = NULL) expect_equal(system4$exp, data$exp[2,,,-215,,]) + expect_equal(system4$Dates$start, data$Dates$start) + + + # Test for 2 experimental datasets oposite order + data <- Load(var = 'prlr', + exp = list(list(name = 'ecmwfS4', path = "/esarchive/exp/ecmwf/system4_m1/$STORE_FREQ$/$VAR_NAME$/$VAR_NAME$_$START_DATE$.nc"), + list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), + obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), + sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') + nmember = 5,leadtimemin = 1, + leadtimemax = NULL, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = NULL, nleadtime = NULL) + expect_equal(dim(data$mod), c(dataset = 2, member = 5, sdate = 2, ftime = 215, + lat = 8, lon = 8)) + expect_equal(sum(is.na(data$mod[1,,,,,])), 0) + expect_equal(data$Dates$start, system4$Dates$start) + + # Test leadtimemin > 1 }) -- GitLab From fdd3af50dce544e80fede696efd429604670a717 Mon Sep 17 00:00:00 2001 From: nperez Date: Tue, 20 Oct 2020 15:50:02 +0200 Subject: [PATCH 30/44] New test for leadtimemin 2 --- tests/testthat/test-Load.R | 61 +++++++++++++++++++++++++++----------- 1 file changed, 44 insertions(+), 17 deletions(-) diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index d6c3ba84..1e83fe13 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -1,5 +1,21 @@ context("Testing Load with ECMWF System5c3s daily data") test_that("First time step is correctly interpreted:", { + system5 <- Load(var = 'prlr', + exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), + sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') + nmember = 5,leadtimemin = 1, + leadtimemax = NULL, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = NULL, nleadtime = NULL) + + data <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), @@ -35,6 +51,8 @@ test_that("First time step is correctly interpreted:", { attributes(dates)$tzone <- 'UTC' expect_equal(data$Dates$end, dates) + expect_equal(data$mod, system5$mod) + obs <- Load(var = 'prlr', exp = NULL, obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), sdates = c('19931101', '19941101'), @@ -73,7 +91,7 @@ test_that("First time step is correctly interpreted:", { expect_equal(data$obs[1,1,1,1,,], obs$obs[1,1,1,2,,]) expect_equal(data$obs[1,1,2,1,,], obs$obs[1,1,2,2,,]) - + expect_equal(system5$mod, data$mod) eraint <- Load(var = 'prlr', exp = NULL, obs = list(list(name = 'erainterim')), sdates = c('19931101', '19941101'), @@ -145,23 +163,8 @@ test_that("First time step is correctly interpreted:", { expect_equal(dim(obs$obs), c(dataset = 1, member = 1, sdate = 2, ftime = 215, lat = 8, lon = 8)) expect_equal(obs$obs, data$obs) - - system5 <- Load(var = 'prlr', - exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), - sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') - nmember = 5,leadtimemin = 1, - leadtimemax = NULL, - storefreq = "daily", sampleperiod = 1, - latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, - output = 'lonlat', nprocs = 1, - method = 'conservative', grid = 'r360x181', - maskmod = vector("list", 15), maskobs = vector("list", 15), - configfile = NULL, varmin = NULL, varmax = NULL, - silent = FALSE, dimnames = NULL, - remapcells = 2, path_glob_permissive = 'partial', - nmemberobs = NULL, nleadtime = NULL) - expect_equal(system5$exp, data$exp[1,,,-1,,]) + system4 <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS4', path = "/esarchive/exp/ecmwf/system4_m1/$STORE_FREQ$/$VAR_NAME$/$VAR_NAME$_$START_DATE$.nc")), sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') @@ -204,4 +207,28 @@ test_that("First time step is correctly interpreted:", { expect_equal(data$Dates$start, system4$Dates$start) # Test leadtimemin > 1 + data <- Load(var = 'prlr', + exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc"), + list(name = 'ecmwfS4', path = "/esarchive/exp/ecmwf/system4_m1/$STORE_FREQ$/$VAR_NAME$/$VAR_NAME$_$START_DATE$.nc")), + obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), + sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') + nmember = 5,leadtimemin = 2, + leadtimemax = NULL, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = NULL, nleadtime = NULL) + system4$mod[1,1,1,1,,] + data$mod[1,1,1,1,,] + s2dv::PlotEquiMap(system5$mod[1,1,1,2,,], lon = system4$lon, lat = system4$lat, + filled.continents = F) + s2dv::PlotEquiMap(data$mod[1,1,1,2,,], lon = data$lon, lat = data$lat, + filled.continents = F) + expect_equal(system4$mod[1,1,1,2:214,,], data$mod[2,1,1,1:213,,]) + expect_equal(system5$mod[1,1,1,2:214,,], data$mod[1,1,1,2:214,,]) }) -- GitLab From 8f2dc4f3cfe406632a18fb45dbd3db6b80ffccd6 Mon Sep 17 00:00:00 2001 From: nperez Date: Tue, 20 Oct 2020 18:51:50 +0200 Subject: [PATCH 31/44] Remove unnecessary lines --- tests/testthat/test-Load.R | 6 ------ 1 file changed, 6 deletions(-) diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index 1e83fe13..57f62b0a 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -223,12 +223,6 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = NULL, nleadtime = NULL) - system4$mod[1,1,1,1,,] - data$mod[1,1,1,1,,] - s2dv::PlotEquiMap(system5$mod[1,1,1,2,,], lon = system4$lon, lat = system4$lat, - filled.continents = F) - s2dv::PlotEquiMap(data$mod[1,1,1,2,,], lon = data$lon, lat = data$lat, - filled.continents = F) expect_equal(system4$mod[1,1,1,2:214,,], data$mod[2,1,1,1:213,,]) expect_equal(system5$mod[1,1,1,2:214,,], data$mod[1,1,1,2:214,,]) }) -- GitLab From 6635fde8783ff9175dd8a79279114d7361805ddd Mon Sep 17 00:00:00 2001 From: nperez Date: Wed, 21 Oct 2020 12:34:47 +0200 Subject: [PATCH 32/44] run devtools document --- DESCRIPTION | 2 +- man/ACC.Rd | 21 +++++--- man/Alpha.Rd | 1 - man/AnimateMap.Rd | 33 +++++++++--- man/Ano.Rd | 1 - man/Ano_CrossValid.Rd | 1 - man/ArrayToNetCDF.Rd | 1 - man/BrierScore.Rd | 13 +++-- man/CDORemap.Rd | 14 +++-- man/Clim.Rd | 1 - man/Cluster.Rd | 9 ++-- man/ColorBar.Rd | 32 +++++++++--- man/Composite.Rd | 1 - man/ConfigApplyMatchingEntries.Rd | 21 +++++--- man/ConfigEditDefinition.Rd | 9 ++-- man/ConfigEditEntry.Rd | 53 +++++++++++++------ man/ConfigFileOpen.Rd | 13 +++-- man/ConfigShowSimilarEntries.Rd | 27 ++++++---- man/ConfigShowTable.Rd | 13 +++-- man/Consist_Trend.Rd | 1 - man/Corr.Rd | 21 +++++--- man/EOF.Rd | 7 ++- man/Enlarge.Rd | 1 - man/Eno.Rd | 1 - man/EnoNew.Rd | 11 ++-- man/Filter.Rd | 1 - man/FitAcfCoef.Rd | 1 - man/FitAutocor.Rd | 1 - man/GenSeries.Rd | 1 - man/Histo2Hindcast.Rd | 1 - man/IniListDims.Rd | 1 - man/InsertDim.Rd | 1 - man/LeapYear.Rd | 1 - man/Load.Rd | 40 ++++++++++---- man/Mean1Dim.Rd | 1 - man/MeanListDim.Rd | 1 - man/NAO.Rd | 21 +++++--- man/Plot2VarsVsLTime.Rd | 31 ++++++++--- man/PlotACC.Rd | 27 +++++++--- man/PlotAno.Rd | 31 ++++++++--- man/PlotBoxWhisker.Rd | 29 ++++++++--- man/PlotClim.Rd | 26 +++++++--- man/PlotEquiMap.Rd | 86 ++++++++++++++++++++++++------- man/PlotLayout.Rd | 73 ++++++++++++++++++-------- man/PlotMatrix.Rd | 29 ++++++++--- man/PlotSection.Rd | 25 +++++++-- man/PlotStereoMap.Rd | 61 +++++++++++++++++----- man/PlotVsLTime.Rd | 30 ++++++++--- man/ProbBins.Rd | 12 +++-- man/ProjectField.Rd | 7 ++- man/RMS.Rd | 15 ++++-- man/RMSSS.Rd | 3 +- man/RatioRMS.Rd | 3 +- man/RatioSDRMS.Rd | 3 +- man/Regression.Rd | 1 - man/SVD.Rd | 12 +++-- man/Season.Rd | 1 - man/SelIndices.Rd | 1 - man/Smoothing.Rd | 1 - man/Spectrum.Rd | 1 - man/Spread.Rd | 1 - man/StatSeasAtlHurr.Rd | 9 ++-- man/Subset.Rd | 1 - man/ToyModel.Rd | 15 ++++-- man/Trend.Rd | 3 +- man/UltimateBrier.Rd | 15 ++++-- man/clim.palette.Rd | 3 +- man/s2dverification.Rd | 9 +++- man/sampleDepthData.Rd | 1 - man/sampleMap.Rd | 1 - man/sampleTimeSeries.Rd | 1 - 71 files changed, 647 insertions(+), 299 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 0045265c..1f0a201e 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -60,4 +60,4 @@ BugReports: https://earth.bsc.es/gitlab/es/s2dverification/issues LazyData: true SystemRequirements: cdo Encoding: UTF-8 -RoxygenNote: 5.0.0 +RoxygenNote: 7.0.1 diff --git a/man/ACC.Rd b/man/ACC.Rd index e3db377f..61b286f2 100644 --- a/man/ACC.Rd +++ b/man/ACC.Rd @@ -4,8 +4,16 @@ \alias{ACC} \title{Computes Anomaly Correlation Coefficient} \usage{ -ACC(var_exp, var_obs, lon = NULL, lat = NULL, lonlatbox = NULL, - conf = TRUE, conftype = "parametric", siglev = 0.95) +ACC( + var_exp, + var_obs, + lon = NULL, + lat = NULL, + lonlatbox = NULL, + conf = TRUE, + conftype = "parametric", + siglev = 0.95 +) } \arguments{ \item{var_exp}{Array of experimental anomalies with dimensions: @@ -97,6 +105,10 @@ acc <- ACC(Mean1Dim(ano_exp, 2), Mean1Dim(ano_obs, 2)) PlotACC(acc$ACC, startDates) } } +\references{ +Joliffe and Stephenson (2012). Forecast Verification: A + Practitioner's Guide in Atmospheric Science. Wiley-Blackwell. +} \author{ History:\cr 0.1 - 2013-08 (V. Guemas, \email{virginie.guemas@bsc.es}) - Original code\cr @@ -107,9 +119,4 @@ History:\cr 1.3.1 - 2014-09 (C. Prodhomme, \email{chloe.prodhomme@bsc.es}) - Add comments and minor style changes\cr 1.3.2 - 2015-02 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Fixed ACC documentation and examples } -\references{ -Joliffe and Stephenson (2012). Forecast Verification: A - Practitioner's Guide in Atmospheric Science. Wiley-Blackwell. -} \keyword{datagen} - diff --git a/man/Alpha.Rd b/man/Alpha.Rd index c2350b2a..26596dc2 100644 --- a/man/Alpha.Rd +++ b/man/Alpha.Rd @@ -42,4 +42,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/AnimateMap.Rd b/man/AnimateMap.Rd index 96074b01..5dc756da 100644 --- a/man/AnimateMap.Rd +++ b/man/AnimateMap.Rd @@ -4,13 +4,33 @@ \alias{AnimateMap} \title{Animate Maps of Forecast/Observed Values or Scores Over Forecast Time} \usage{ -AnimateMap(var, lon, lat, toptitle = rep("", 11), sizetit = 1, units = "", - monini = 1, freq = 12, msk95lev = FALSE, brks = NULL, cols = NULL, - filled.continents = FALSE, lonmin = 0, lonmax = 360, latmin = -90, - latmax = 90, intlon = 20, intlat = 30, drawleg = TRUE, - subsampleg = 1, colNA = "white", equi = TRUE, +AnimateMap( + var, + lon, + lat, + toptitle = rep("", 11), + sizetit = 1, + units = "", + monini = 1, + freq = 12, + msk95lev = FALSE, + brks = NULL, + cols = NULL, + filled.continents = FALSE, + lonmin = 0, + lonmax = 360, + latmin = -90, + latmax = 90, + intlon = 20, + intlat = 30, + drawleg = TRUE, + subsampleg = 1, + colNA = "white", + equi = TRUE, fileout = c("output1_animvsltime.gif", "output2_animvsltime.gif", - "output3_animvsltime.gif"), ...) + "output3_animvsltime.gif"), + ... +) } \arguments{ \item{var}{Matrix of dimensions (nltime, nlat, nlon) or @@ -194,4 +214,3 @@ History:\cr 1.2 - 2015-05 (V. Guemas, \email{virginie.guemas@bsc.es}) - Use of PlotEquiMap and PlotStereoMap } \keyword{dynamic} - diff --git a/man/Ano.Rd b/man/Ano.Rd index 6143be88..6461ec77 100644 --- a/man/Ano.Rd +++ b/man/Ano.Rd @@ -49,4 +49,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to R CRAN } \keyword{datagen} - diff --git a/man/Ano_CrossValid.Rd b/man/Ano_CrossValid.Rd index 85d1badb..70017492 100644 --- a/man/Ano_CrossValid.Rd +++ b/man/Ano_CrossValid.Rd @@ -43,4 +43,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/ArrayToNetCDF.Rd b/man/ArrayToNetCDF.Rd index 77cbfaf8..4e05d829 100644 --- a/man/ArrayToNetCDF.Rd +++ b/man/ArrayToNetCDF.Rd @@ -238,4 +238,3 @@ History:\cr 0.0 - 2017-01 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Original code. } \keyword{datagen} - diff --git a/man/BrierScore.Rd b/man/BrierScore.Rd index 5094987c..e802dc35 100644 --- a/man/BrierScore.Rd +++ b/man/BrierScore.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/BrierScore.R \name{BrierScore} -\alias{.BrierScore} \alias{BrierScore} +\alias{.BrierScore} \title{Compute Brier Score And Its Decomposition And Brier Skill Score} \usage{ BrierScore(obs, pred, thresholds = seq(0, 1, 0.1)) @@ -85,11 +85,6 @@ bs2 <- veriApply("BrierScore2", bins_ano_exp, Mean1Dim(bins_ano_ob,s 3), tdim = 2, ensdim = 3) } } -\author{ -History:\cr - 0.1 - 2012-04 (L. Rodrigues, \email{lrodrigues@ic3.cat}) - Original code\cr - 0.2 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() -} \references{ Wilks (2006) Statistical Methods in the Atmospheric Sciences.\cr Stephenson et al. (2008). Two extra components in the Brier score decomposition. @@ -97,5 +92,9 @@ Stephenson et al. (2008). Two extra components in the Brier score decomposition. Ferro and Fricker (2012). A bias-corrected decomposition of the BS. Quarterly Journal of the Royal Meteorological Society, DOI: 10.1002/qj.1924. } +\author{ +History:\cr + 0.1 - 2012-04 (L. Rodrigues, \email{lrodrigues@ic3.cat}) - Original code\cr + 0.2 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() +} \keyword{datagen} - diff --git a/man/CDORemap.Rd b/man/CDORemap.Rd index b2d5eaa3..bae7aa55 100644 --- a/man/CDORemap.Rd +++ b/man/CDORemap.Rd @@ -4,8 +4,17 @@ \alias{CDORemap} \title{Interpolates arrays with longitude and latitude dimensions using CDO} \usage{ -CDORemap(data_array = NULL, lons, lats, grid, method, avoid_writes = TRUE, - crop = TRUE, force_remap = FALSE, write_dir = tempdir()) +CDORemap( + data_array = NULL, + lons, + lats, + grid, + method, + avoid_writes = TRUE, + crop = TRUE, + force_remap = FALSE, + write_dir = tempdir() +) } \arguments{ \item{data_array}{Multidimensional numeric array to be interpolated. If @@ -226,4 +235,3 @@ History:\cr 0.0 - 2017-01 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Original code. } \keyword{datagen} - diff --git a/man/Clim.Rd b/man/Clim.Rd index 1ef5e3da..69f7ceb0 100644 --- a/man/Clim.Rd +++ b/man/Clim.Rd @@ -63,4 +63,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to R CRAN } \keyword{datagen} - diff --git a/man/Cluster.Rd b/man/Cluster.Rd index 70f22347..782c37a4 100644 --- a/man/Cluster.Rd +++ b/man/Cluster.Rd @@ -92,7 +92,7 @@ for (i1 in c1) { a1[i1, ] <- x1 + rnorm(4, mean = mean1, sd = sd1) } -c1p5 <- c0[!(c0 \\\%in\\\% c1)] +c1p5 <- c0[!(c0 \\%in\\% c1)] c2 <- c1p5[seq(1, length(c1p5), 2)] x2 <- c(2, 2, 4, 4) for (i2 in c2) { @@ -114,12 +114,11 @@ res2 <- Cluster(var = a1, weights = array(1, dim = dim(a1)[2])) print(res2$cluster) print(res2$centers) } +\references{ +Wilks, 2011, Statistical Methods in the Atmospheric Sciences, 3rd ed., Elsevire, pp 676. +} \author{ History:\cr 1.0 # 2014-10 (N.S. Fuckar, \email{neven.fuckar@bsc.es}) - Original code } -\references{ -Wilks, 2011, Statistical Methods in the Atmospheric Sciences, 3rd ed., Elsevire, pp 676. -} \keyword{datagen} - diff --git a/man/ColorBar.Rd b/man/ColorBar.Rd index 71da02be..98c99679 100644 --- a/man/ColorBar.Rd +++ b/man/ColorBar.Rd @@ -4,13 +4,30 @@ \alias{ColorBar} \title{Draws a Color Bar} \usage{ -ColorBar(brks = NULL, cols = NULL, vertical = TRUE, subsampleg = NULL, - bar_limits = NULL, var_limits = NULL, triangle_ends = NULL, - col_inf = NULL, col_sup = NULL, color_fun = clim.palette(), - plot = TRUE, draw_ticks = TRUE, draw_separators = FALSE, - triangle_ends_scale = 1, extra_labels = NULL, title = NULL, - title_scale = 1, label_scale = 1, tick_scale = 1, - extra_margin = rep(0, 4), label_digits = 4, ...) +ColorBar( + brks = NULL, + cols = NULL, + vertical = TRUE, + subsampleg = NULL, + bar_limits = NULL, + var_limits = NULL, + triangle_ends = NULL, + col_inf = NULL, + col_sup = NULL, + color_fun = clim.palette(), + plot = TRUE, + draw_ticks = TRUE, + draw_separators = FALSE, + triangle_ends_scale = 1, + extra_labels = NULL, + title = NULL, + title_scale = 1, + label_scale = 1, + tick_scale = 1, + extra_margin = rep(0, 4), + label_digits = 4, + ... +) } \arguments{ \item{brks}{Can be provided in two formats: @@ -185,4 +202,3 @@ History:\cr (V. Torralba, \email{veronica.torralba@bsc.es}) } \keyword{hplot} - diff --git a/man/Composite.Rd b/man/Composite.Rd index b9151d82..f0ce4692 100644 --- a/man/Composite.Rd +++ b/man/Composite.Rd @@ -90,4 +90,3 @@ History: 0.1 # 2014-08 (N.S. Fuckar, \email{neven.fuckar@bsc.es}) # Original code } \keyword{datagen} - diff --git a/man/ConfigApplyMatchingEntries.Rd b/man/ConfigApplyMatchingEntries.Rd index 626e385d..74abb167 100644 --- a/man/ConfigApplyMatchingEntries.Rd +++ b/man/ConfigApplyMatchingEntries.Rd @@ -4,8 +4,14 @@ \alias{ConfigApplyMatchingEntries} \title{Apply Matching Entries To Dataset Name And Variable Name To Find Related Info} \usage{ -ConfigApplyMatchingEntries(configuration, var, exp = NULL, obs = NULL, - show_entries = FALSE, show_result = TRUE) +ConfigApplyMatchingEntries( + configuration, + var, + exp = NULL, + obs = NULL, + show_entries = FALSE, + show_result = TRUE +) } \arguments{ \item{configuration}{Configuration object obtained from ConfigFileOpen() @@ -63,15 +69,14 @@ configuration <- ConfigEditEntry(configuration, "experiments", 1, match_info <- ConfigApplyMatchingEntries(configuration, 'tas', exp = c('ExampleExperiment2'), show_result = TRUE) } -\author{ -History:\cr - 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr - 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage types -} \seealso{ ConfigApplyMatchingEntries, ConfigEditDefinition, ConfigEditEntry, ConfigFileOpen, ConfigShowSimilarEntries, ConfigShowTable } +\author{ +History:\cr + 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr + 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage types +} \keyword{datagen} - diff --git a/man/ConfigEditDefinition.Rd b/man/ConfigEditDefinition.Rd index b1f7c882..a25a9c3b 100644 --- a/man/ConfigEditDefinition.Rd +++ b/man/ConfigEditDefinition.Rd @@ -52,14 +52,13 @@ match_info <- ConfigApplyMatchingEntries(configuration, 'tas', exp = c('ExampleExperiment2'), show_result = TRUE) } -\author{ -History: - 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version -} \seealso{ [ConfigApplyMatchingEntries()], [ConfigEditDefinition()], [ConfigEditEntry()], [ConfigFileOpen()], [ConfigShowSimilarEntries()], [ConfigShowTable()]. } +\author{ +History: + 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version +} \keyword{datagen} - diff --git a/man/ConfigEditEntry.Rd b/man/ConfigEditEntry.Rd index 83973231..2b13d0b9 100644 --- a/man/ConfigEditEntry.Rd +++ b/man/ConfigEditEntry.Rd @@ -1,22 +1,46 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/ConfigEditEntry.R \name{ConfigEditEntry} -\alias{ConfigAddEntry} \alias{ConfigEditEntry} +\alias{ConfigAddEntry} \alias{ConfigRemoveEntry} \title{Add, Remove Or Edit Entries In The Configuration} \usage{ -ConfigEditEntry(configuration, dataset_type, position, dataset_name = NULL, - var_name = NULL, main_path = NULL, file_path = NULL, - nc_var_name = NULL, suffix = NULL, varmin = NULL, varmax = NULL) +ConfigEditEntry( + configuration, + dataset_type, + position, + dataset_name = NULL, + var_name = NULL, + main_path = NULL, + file_path = NULL, + nc_var_name = NULL, + suffix = NULL, + varmin = NULL, + varmax = NULL +) -ConfigAddEntry(configuration, dataset_type, position = "last", - dataset_name = ".*", var_name = ".*", main_path = "*", - file_path = "*", nc_var_name = "*", suffix = "*", varmin = "*", - varmax = "*") +ConfigAddEntry( + configuration, + dataset_type, + position = "last", + dataset_name = ".*", + var_name = ".*", + main_path = "*", + file_path = "*", + nc_var_name = "*", + suffix = "*", + varmin = "*", + varmax = "*" +) -ConfigRemoveEntry(configuration, dataset_type, dataset_name = NULL, - var_name = NULL, position = NULL) +ConfigRemoveEntry( + configuration, + dataset_type, + dataset_name = NULL, + var_name = NULL, + position = NULL +) } \arguments{ \item{configuration}{Configuration object obtained via ConfigFileOpen() @@ -95,14 +119,13 @@ ConfigShowTable(configuration, "experiments") # Save the configuration ConfigFileSave(configuration, config_file, confirm = FALSE) } +\seealso{ +ConfigApplyMatchingEntries, ConfigEditDefinition, ConfigEditEntry, + ConfigFileOpen, ConfigShowSimilarEntries, ConfigShowTable +} \author{ History:\cr 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats } -\seealso{ -ConfigApplyMatchingEntries, ConfigEditDefinition, ConfigEditEntry, - ConfigFileOpen, ConfigShowSimilarEntries, ConfigShowTable -} \keyword{datagen} - diff --git a/man/ConfigFileOpen.Rd b/man/ConfigFileOpen.Rd index cff7427e..372ad386 100644 --- a/man/ConfigFileOpen.Rd +++ b/man/ConfigFileOpen.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/ConfigFileOpen.R \name{ConfigFileOpen} -\alias{ConfigFileCreate} \alias{ConfigFileOpen} +\alias{ConfigFileCreate} \alias{ConfigFileSave} \title{Functions To Create Open And Save Configuration File} \usage{ @@ -185,11 +185,6 @@ match_info <- ConfigApplyMatchingEntries(configuration, 'tas', # Finally save the configuration file. ConfigFileSave(configuration, config_file, confirm = FALSE) -} -\author{ -History: - 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version - 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats } \references{ [1] \url{https://stat.ethz.ch/R-manual/R-devel/library/base/html/regex.html}\cr @@ -199,5 +194,9 @@ History: ConfigApplyMatchingEntries, ConfigEditDefinition, ConfigEditEntry, ConfigFileOpen, ConfigShowSimilarEntries, ConfigShowTable } +\author{ +History: + 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version + 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats +} \keyword{datagen} - diff --git a/man/ConfigShowSimilarEntries.Rd b/man/ConfigShowSimilarEntries.Rd index 312da795..154bcb28 100644 --- a/man/ConfigShowSimilarEntries.Rd +++ b/man/ConfigShowSimilarEntries.Rd @@ -4,10 +4,18 @@ \alias{ConfigShowSimilarEntries} \title{Find Similar Entries In Tables Of Datasets} \usage{ -ConfigShowSimilarEntries(configuration, dataset_name = NULL, - var_name = NULL, main_path = NULL, file_path = NULL, - nc_var_name = NULL, suffix = NULL, varmin = NULL, varmax = NULL, - n_results = 10) +ConfigShowSimilarEntries( + configuration, + dataset_name = NULL, + var_name = NULL, + main_path = NULL, + file_path = NULL, + nc_var_name = NULL, + suffix = NULL, + varmin = NULL, + varmax = NULL, + n_results = 10 +) } \arguments{ \item{configuration}{Configuration object obtained either from @@ -71,11 +79,6 @@ ConfigShowSimilarEntries(configuration, dataset_name = "Exper", var_name = "Vari") } -\author{ -History:\cr - 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr - 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats -} \references{ [1] Simon White, string seamness: \url{http://www.catalysoft.com/articles/StrikeAMatch.html} @@ -84,5 +87,9 @@ History:\cr ConfigApplyMatchingEntries, ConfigEditDefinition, ConfigEditEntry, ConfigFileOpen, ConfigShowSimilarEntries, ConfigShowTable } +\author{ +History:\cr + 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr + 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats +} \keyword{datagen} - diff --git a/man/ConfigShowTable.Rd b/man/ConfigShowTable.Rd index a06b643e..56649156 100644 --- a/man/ConfigShowTable.Rd +++ b/man/ConfigShowTable.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/ConfigShowTable.R \name{ConfigShowTable} -\alias{ConfigShowDefinitions} \alias{ConfigShowTable} +\alias{ConfigShowDefinitions} \title{Show Configuration Tables And Definitions} \usage{ ConfigShowTable(configuration, dataset_type, line_numbers = NULL) @@ -48,16 +48,15 @@ configuration <- ConfigEditEntry(configuration, "experiments", 1, ConfigShowTable(configuration, 'experiments') ConfigShowDefinitions(configuration) -} -\author{ -History:\cr - 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr - 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats } \seealso{ [ConfigApplyMatchingEntries()], [ConfigEditDefinition()], [ConfigEditEntry()], [ConfigFileOpen()], [ConfigShowSimilarEntries()], [ConfigShowTable()]. } +\author{ +History:\cr + 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr + 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats +} \keyword{datagen} - diff --git a/man/Consist_Trend.Rd b/man/Consist_Trend.Rd index d067dcd7..124e5e3d 100644 --- a/man/Consist_Trend.Rd +++ b/man/Consist_Trend.Rd @@ -80,4 +80,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to R CRAN } \keyword{datagen} - diff --git a/man/Corr.Rd b/man/Corr.Rd index e311813d..11a40d79 100644 --- a/man/Corr.Rd +++ b/man/Corr.Rd @@ -1,16 +1,24 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/Corr.R \name{Corr} -\alias{.Corr} \alias{Corr} +\alias{.Corr} \title{Computes the correlation coefficient between an array of forecasts and their corresponding observations} \usage{ -Corr(var_exp, var_obs, posloop = 1, poscor = 2, compROW = NULL, - limits = NULL, siglev = 0.95, method = "pearson", conf = TRUE, - pval = TRUE) +Corr( + var_exp, + var_obs, + posloop = 1, + poscor = 2, + compROW = NULL, + limits = NULL, + siglev = 0.95, + method = "pearson", + conf = TRUE, + pval = TRUE +) -.Corr(exp, obs, siglev = 0.95, method = "pearson", conf = TRUE, - pval = TRUE) +.Corr(exp, obs, siglev = 0.95, method = "pearson", conf = TRUE, pval = TRUE) } \arguments{ \item{var_exp}{Array of experimental data.} @@ -131,4 +139,3 @@ History:\cr 1.3 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() } \keyword{datagen} - diff --git a/man/EOF.Rd b/man/EOF.Rd index bd0b31e4..25934f52 100644 --- a/man/EOF.Rd +++ b/man/EOF.Rd @@ -82,6 +82,9 @@ ano <- Ano_CrossValid(sampleData$mod, sampleData$obs) eof <- EOF(Mean1Dim(ano$ano_exp, 2)[1, , 1, , ], sampleData$lon, sampleData$lat) PlotEquiMap(eof$EOFs[1, , ], sampleData$lon, sampleData$lat) +} +\seealso{ +ProjectField, NAO, PlotBoxWhisker } \author{ History:\cr @@ -115,8 +118,4 @@ weighted by cos(lat)\cr EOF * PC\cr 1.0 - 2016-03 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Formatting to R CRAN } -\seealso{ -ProjectField, NAO, PlotBoxWhisker -} \keyword{datagen} - diff --git a/man/Enlarge.Rd b/man/Enlarge.Rd index 76f5cccf..47aed320 100644 --- a/man/Enlarge.Rd +++ b/man/Enlarge.Rd @@ -29,4 +29,3 @@ History:\cr 1.1 - 2015-03 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Improved\cr } \keyword{datagen} - diff --git a/man/Eno.Rd b/man/Eno.Rd index ba4f2088..ea70bc5e 100644 --- a/man/Eno.Rd +++ b/man/Eno.Rd @@ -60,4 +60,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens at ic3.cat}) - Formatting to R CRAN } \keyword{datagen} - diff --git a/man/EnoNew.Rd b/man/EnoNew.Rd index cc2de760..32bf55fd 100644 --- a/man/EnoNew.Rd +++ b/man/EnoNew.Rd @@ -55,16 +55,15 @@ sampleData <- s2dverification:::.LoadSampleData('tos', c('experiment'), eno <- EnoNew(sampleData$mod[1, 1, , 1, 2, 3]) print(eno) -} -\author{ -History:\cr -0.1 - 2012-06 (V. Guemas, \email{virginie.guemas at ic3.cat}) - Original code\cr -1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens at ic3.cat}) - Formatting to CRAN } \references{ Guemas V, Auger L, Doblas-Reyes FJ, Rust H, Ribes A, 2014, Dependencies in Statistical Hypothesis Tests for Climate Time Series. Bulletin of the American Meteorological Society, 95 (11), 1666-1667. } +\author{ +History:\cr +0.1 - 2012-06 (V. Guemas, \email{virginie.guemas at ic3.cat}) - Original code\cr +1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens at ic3.cat}) - Formatting to CRAN +} \keyword{datagen} - diff --git a/man/Filter.Rd b/man/Filter.Rd index 3e40f105..21807f5d 100644 --- a/man/Filter.Rd +++ b/man/Filter.Rd @@ -48,4 +48,3 @@ History:\cr 1.0 - 2012-02 (N. Manubens, \email{nicolau.manubens at ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/FitAcfCoef.Rd b/man/FitAcfCoef.Rd index 6ca51444..6de266e5 100644 --- a/man/FitAcfCoef.Rd +++ b/man/FitAcfCoef.Rd @@ -38,4 +38,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/FitAutocor.Rd b/man/FitAutocor.Rd index ff3ab943..2d623603 100644 --- a/man/FitAutocor.Rd +++ b/man/FitAutocor.Rd @@ -35,4 +35,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/GenSeries.Rd b/man/GenSeries.Rd index 9a49ed9d..549b259e 100644 --- a/man/GenSeries.Rd +++ b/man/GenSeries.Rd @@ -34,4 +34,3 @@ History:\cr 1.0 - 2012-04 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/Histo2Hindcast.Rd b/man/Histo2Hindcast.Rd index 7000628a..0f9bd18b 100644 --- a/man/Histo2Hindcast.Rd +++ b/man/Histo2Hindcast.Rd @@ -79,4 +79,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/IniListDims.Rd b/man/IniListDims.Rd index 422a4c76..71369945 100644 --- a/man/IniListDims.Rd +++ b/man/IniListDims.Rd @@ -39,4 +39,3 @@ History:\cr 1.1 - 2015-03 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Improved } \keyword{datagen} - diff --git a/man/InsertDim.Rd b/man/InsertDim.Rd index 4cdc5377..e7e50d14 100644 --- a/man/InsertDim.Rd +++ b/man/InsertDim.Rd @@ -34,4 +34,3 @@ History:\cr 1.1 - 2015-03 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Improvements } \keyword{datagen} - diff --git a/man/LeapYear.Rd b/man/LeapYear.Rd index 12b02b49..7504a27e 100644 --- a/man/LeapYear.Rd +++ b/man/LeapYear.Rd @@ -27,4 +27,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/Load.Rd b/man/Load.Rd index c721e613..6554f58b 100644 --- a/man/Load.Rd +++ b/man/Load.Rd @@ -4,15 +4,36 @@ \alias{Load} \title{Loads Experimental And Observational Data} \usage{ -Load(var, exp = NULL, obs = NULL, sdates, nmember = NULL, - nmemberobs = NULL, nleadtime = NULL, leadtimemin = 1, - leadtimemax = NULL, storefreq = "monthly", sampleperiod = 1, - lonmin = 0, lonmax = 360, latmin = -90, latmax = 90, - output = "areave", method = "conservative", grid = NULL, - maskmod = vector("list", 15), maskobs = vector("list", 15), - configfile = NULL, varmin = NULL, varmax = NULL, silent = FALSE, - nprocs = NULL, dimnames = NULL, remapcells = 2, - path_glob_permissive = "partial") +Load( + var, + exp = NULL, + obs = NULL, + sdates, + nmember = NULL, + nmemberobs = NULL, + nleadtime = NULL, + leadtimemin = 1, + leadtimemax = NULL, + storefreq = "monthly", + sampleperiod = 1, + lonmin = 0, + lonmax = 360, + latmin = -90, + latmax = 90, + output = "areave", + method = "conservative", + grid = NULL, + maskmod = vector("list", 15), + maskobs = vector("list", 15), + configfile = NULL, + varmin = NULL, + varmax = NULL, + silent = FALSE, + nprocs = NULL, + dimnames = NULL, + remapcells = 2, + path_glob_permissive = "partial" +) } \arguments{ \item{var}{Short name of the variable to load. It should coincide with the @@ -883,4 +904,3 @@ History:\cr 1.4 - 2016-01 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Added subsetting capabilities } \keyword{datagen} - diff --git a/man/Mean1Dim.Rd b/man/Mean1Dim.Rd index 613fc468..6b45e1a7 100644 --- a/man/Mean1Dim.Rd +++ b/man/Mean1Dim.Rd @@ -36,4 +36,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to R CRAN } \keyword{datagen} - diff --git a/man/MeanListDim.Rd b/man/MeanListDim.Rd index 98e07c8e..2fdf8981 100644 --- a/man/MeanListDim.Rd +++ b/man/MeanListDim.Rd @@ -33,4 +33,3 @@ History:\cr 1.1 - 2015-03 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Improved memory usage } \keyword{datagen} - diff --git a/man/NAO.Rd b/man/NAO.Rd index 24d58830..34f36339 100644 --- a/man/NAO.Rd +++ b/man/NAO.Rd @@ -4,8 +4,14 @@ \alias{NAO} \title{Computes the North Atlantic Oscillation (NAO) Index} \usage{ -NAO(ano_exp = NULL, ano_obs = NULL, lon, lat, ftime_average = 2:4, - obsproj = TRUE) +NAO( + ano_exp = NULL, + ano_obs = NULL, + lon, + lat, + ftime_average = 2:4, + obsproj = TRUE +) } \arguments{ \item{ano_exp}{Array of North Atlantic SLP (20N-80N, 80W-40E) forecast @@ -113,6 +119,11 @@ PlotBoxWhisker(nao$NAO_exp, nao$NAO_obs, "NAO index, DJF", "NAO index (PC1) TOS" } } +\references{ +Doblas-Reyes, F.J., Pavan, V. and Stephenson, D. (2003). The skill of + multi-model seasonal forecasts of the wintertime North Atlantic Oscillation. + Climate Dynamics, 21, 501-514. DOI: 10.1007/s00382-003-0350-4 +} \author{ History:\cr 0.1 - 2013-08 (F. Lienert, \email{flienert@ic3.cat}) - Original code\cr @@ -127,10 +138,4 @@ History:\cr 1.0 - 2016-03 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Formatted to CRAN } -\references{ -Doblas-Reyes, F.J., Pavan, V. and Stephenson, D. (2003). The skill of - multi-model seasonal forecasts of the wintertime North Atlantic Oscillation. - Climate Dynamics, 21, 501-514. DOI: 10.1007/s00382-003-0350-4 -} \keyword{datagen} - diff --git a/man/Plot2VarsVsLTime.Rd b/man/Plot2VarsVsLTime.Rd index 8ba44e4e..11af98a7 100644 --- a/man/Plot2VarsVsLTime.Rd +++ b/man/Plot2VarsVsLTime.Rd @@ -4,12 +4,30 @@ \alias{Plot2VarsVsLTime} \title{Plot Two Scores With Confidence Intervals In A Common Plot} \usage{ -Plot2VarsVsLTime(var1, var2, toptitle = "", ytitle = "", monini = 1, - freq = 12, nticks = NULL, limits = NULL, listexp = c("exp1", "exp2", - "exp3"), listvars = c("var1", "var2"), biglab = FALSE, hlines = NULL, - leg = TRUE, siglev = FALSE, sizetit = 1, show_conf = TRUE, - fileout = "output_plot2varsvsltime.eps", width = 8, height = 5, - size_units = "in", res = 100, ...) +Plot2VarsVsLTime( + var1, + var2, + toptitle = "", + ytitle = "", + monini = 1, + freq = 12, + nticks = NULL, + limits = NULL, + listexp = c("exp1", "exp2", "exp3"), + listvars = c("var1", "var2"), + biglab = FALSE, + hlines = NULL, + leg = TRUE, + siglev = FALSE, + sizetit = 1, + show_conf = TRUE, + fileout = "output_plot2varsvsltime.eps", + width = 8, + height = 5, + size_units = "in", + res = 100, + ... +) } \arguments{ \item{var1}{Matrix of dimensions (nexp/nmod, nltime).} @@ -120,4 +138,3 @@ History:\cr - Original code } \keyword{dynamic} - diff --git a/man/PlotACC.Rd b/man/PlotACC.Rd index fc66200a..289fbf17 100644 --- a/man/PlotACC.Rd +++ b/man/PlotACC.Rd @@ -4,11 +4,27 @@ \alias{PlotACC} \title{Plot Plumes/Timeseries Of Anomaly Correlation Coefficients} \usage{ -PlotACC(ACC, sdates, toptitle = "", sizetit = 1, ytitle = "", - limits = NULL, legends = NULL, freq = 12, biglab = FALSE, - fill = FALSE, linezero = FALSE, points = TRUE, vlines = NULL, - fileout = "output_PlotACC.eps", width = 8, height = 5, - size_units = "in", res = 100, ...) +PlotACC( + ACC, + sdates, + toptitle = "", + sizetit = 1, + ytitle = "", + limits = NULL, + legends = NULL, + freq = 12, + biglab = FALSE, + fill = FALSE, + linezero = FALSE, + points = TRUE, + vlines = NULL, + fileout = "output_PlotACC.eps", + width = 8, + height = 5, + size_units = "in", + res = 100, + ... +) } \arguments{ \item{ACC}{ACC matrix with with dimensions:\cr @@ -122,4 +138,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{dynamic} - diff --git a/man/PlotAno.Rd b/man/PlotAno.Rd index dd059310..2ff2c46c 100644 --- a/man/PlotAno.Rd +++ b/man/PlotAno.Rd @@ -4,12 +4,30 @@ \alias{PlotAno} \title{Plot Raw Or Smoothed Anomalies} \usage{ -PlotAno(exp_ano, obs_ano = NULL, sdates, toptitle = rep("", 15), - ytitle = rep("", 15), limits = NULL, legends = NULL, freq = 12, - biglab = FALSE, fill = TRUE, memb = TRUE, ensmean = TRUE, - linezero = FALSE, points = FALSE, vlines = NULL, sizetit = 1, - fileout = paste0("output", 1:5, "_plotano.eps"), width = 8, height = 5, - size_units = "in", res = 100, ...) +PlotAno( + exp_ano, + obs_ano = NULL, + sdates, + toptitle = rep("", 15), + ytitle = rep("", 15), + limits = NULL, + legends = NULL, + freq = 12, + biglab = FALSE, + fill = TRUE, + memb = TRUE, + ensmean = TRUE, + linezero = FALSE, + points = FALSE, + vlines = NULL, + sizetit = 1, + fileout = paste0("output", 1:5, "_plotano.eps"), + width = 8, + height = 5, + size_units = "in", + res = 100, + ... +) } \arguments{ \item{exp_ano}{Array containing the experimental data:\cr @@ -109,4 +127,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{dynamic} - diff --git a/man/PlotBoxWhisker.Rd b/man/PlotBoxWhisker.Rd index a536686b..9d602103 100644 --- a/man/PlotBoxWhisker.Rd +++ b/man/PlotBoxWhisker.Rd @@ -4,10 +4,24 @@ \alias{PlotBoxWhisker} \title{Box-And-Whisker Plot of Time Series with Ensemble Distribution} \usage{ -PlotBoxWhisker(exp, obs, toptitle = "", ytitle = "", monini = 1, - yearini = 0, freq = 1, expname = "exp 1", obsname = "obs 1", - drawleg = TRUE, fileout = "output_PlotBoxWhisker.ps", width = 8, - height = 5, size_units = "in", res = 100, ...) +PlotBoxWhisker( + exp, + obs, + toptitle = "", + ytitle = "", + monini = 1, + yearini = 0, + freq = 1, + expname = "exp 1", + obsname = "obs 1", + drawleg = TRUE, + fileout = "output_PlotBoxWhisker.ps", + width = 8, + height = 5, + size_units = "in", + res = 100, + ... +) } \arguments{ \item{exp}{Forecast array of multi-member time series, e.g., the NAO index @@ -119,6 +133,9 @@ PlotBoxWhisker(nao$NAO_exp, nao$NAO_obs, "NAO index, DJF", "NAO index (PC1) TOS" monini = 12, yearini = 1985, freq = 1, "Exp. A", "Obs. X") } +} +\seealso{ +EOF, ProjectField, NAO } \author{ History:\cr @@ -127,8 +144,4 @@ History:\cr normalization for sake of clarity. 1.0 - 2016-03 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Formatting to R CRAN } -\seealso{ -EOF, ProjectField, NAO -} \keyword{datagen} - diff --git a/man/PlotClim.Rd b/man/PlotClim.Rd index 7ee001ee..f4fd7e1a 100644 --- a/man/PlotClim.Rd +++ b/man/PlotClim.Rd @@ -4,11 +4,26 @@ \alias{PlotClim} \title{Plots Climatologies} \usage{ -PlotClim(exp_clim, obs_clim = NULL, toptitle = "", ytitle = "", - monini = 1, freq = 12, limits = NULL, listexp = c("exp1", "exp2", - "exp3"), listobs = c("obs1", "obs2", "obs3"), biglab = FALSE, - leg = TRUE, sizetit = 1, fileout = "output_plotclim.eps", width = 8, - height = 5, size_units = "in", res = 100, ...) +PlotClim( + exp_clim, + obs_clim = NULL, + toptitle = "", + ytitle = "", + monini = 1, + freq = 12, + limits = NULL, + listexp = c("exp1", "exp2", "exp3"), + listobs = c("obs1", "obs2", "obs3"), + biglab = FALSE, + leg = TRUE, + sizetit = 1, + fileout = "output_plotclim.eps", + width = 8, + height = 5, + size_units = "in", + res = 100, + ... +) } \arguments{ \item{exp_clim}{Matrix containing the experimental data with dimensions:\cr @@ -87,4 +102,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/PlotEquiMap.Rd b/man/PlotEquiMap.Rd index cb33fc60..c9db45b5 100644 --- a/man/PlotEquiMap.Rd +++ b/man/PlotEquiMap.Rd @@ -4,25 +4,72 @@ \alias{PlotEquiMap} \title{Maps A Two-Dimensional Variable On A Cylindrical Equidistant Projection} \usage{ -PlotEquiMap(var, lon, lat, varu = NULL, varv = NULL, toptitle = NULL, - sizetit = NULL, units = NULL, brks = NULL, cols = NULL, - bar_limits = NULL, triangle_ends = NULL, col_inf = NULL, - col_sup = NULL, colNA = NULL, color_fun = clim.palette(), - square = TRUE, filled.continents = NULL, coast_color = NULL, - coast_width = 1, contours = NULL, brks2 = NULL, contour_lwd = 0.5, - contour_color = "black", contour_lty = 1, contour_label_scale = 1, - dots = NULL, dot_symbol = 4, dot_size = 1, - arr_subsamp = floor(length(lon)/30), arr_scale = 1, arr_ref_len = 15, - arr_units = "m/s", arr_scale_shaft = 1, arr_scale_shaft_angle = 1, - axelab = TRUE, labW = FALSE, intylat = 20, intxlon = 20, - axes_tick_scale = 1, axes_label_scale = 1, drawleg = TRUE, - subsampleg = NULL, bar_extra_labels = NULL, draw_bar_ticks = TRUE, - draw_separators = FALSE, triangle_ends_scale = 1, bar_label_digits = 4, - bar_label_scale = 1, units_scale = 1, bar_tick_scale = 1, - bar_extra_margin = rep(0, 4), boxlim = NULL, boxcol = "purple2", - boxlwd = 5, margin_scale = rep(1, 4), title_scale = 1, numbfig = NULL, - fileout = NULL, width = 8, height = 5, size_units = "in", res = 100, - ...) +PlotEquiMap( + var, + lon, + lat, + varu = NULL, + varv = NULL, + toptitle = NULL, + sizetit = NULL, + units = NULL, + brks = NULL, + cols = NULL, + bar_limits = NULL, + triangle_ends = NULL, + col_inf = NULL, + col_sup = NULL, + colNA = NULL, + color_fun = clim.palette(), + square = TRUE, + filled.continents = NULL, + coast_color = NULL, + coast_width = 1, + contours = NULL, + brks2 = NULL, + contour_lwd = 0.5, + contour_color = "black", + contour_lty = 1, + contour_label_scale = 1, + dots = NULL, + dot_symbol = 4, + dot_size = 1, + arr_subsamp = floor(length(lon)/30), + arr_scale = 1, + arr_ref_len = 15, + arr_units = "m/s", + arr_scale_shaft = 1, + arr_scale_shaft_angle = 1, + axelab = TRUE, + labW = FALSE, + intylat = 20, + intxlon = 20, + axes_tick_scale = 1, + axes_label_scale = 1, + drawleg = TRUE, + subsampleg = NULL, + bar_extra_labels = NULL, + draw_bar_ticks = TRUE, + draw_separators = FALSE, + triangle_ends_scale = 1, + bar_label_digits = 4, + bar_label_scale = 1, + units_scale = 1, + bar_tick_scale = 1, + bar_extra_margin = rep(0, 4), + boxlim = NULL, + boxcol = "purple2", + boxlwd = 5, + margin_scale = rep(1, 4), + title_scale = 1, + numbfig = NULL, + fileout = NULL, + width = 8, + height = 5, + size_units = "in", + res = 100, + ... +) } \arguments{ \item{var}{Array with the values at each cell of a grid on a regular @@ -288,4 +335,3 @@ History:\cr and adapted to new ColorBar. } \keyword{dynamic} - diff --git a/man/PlotLayout.Rd b/man/PlotLayout.Rd index e4cf4ecf..3cb81d15 100644 --- a/man/PlotLayout.Rd +++ b/man/PlotLayout.Rd @@ -4,20 +4,52 @@ \alias{PlotLayout} \title{Arrange and Fill Multi-Pannel Layouts With Optional Colour Bar} \usage{ -PlotLayout(fun, plot_dims, var, ..., special_args = NULL, nrow = NULL, - ncol = NULL, toptitle = NULL, row_titles = NULL, col_titles = NULL, - bar_scale = 1, title_scale = 1, title_margin_scale = 1, - title_left_shift_scale = 1, subtitle_scale = 1, - subtitle_margin_scale = 1, brks = NULL, cols = NULL, drawleg = "S", - titles = NULL, subsampleg = NULL, bar_limits = NULL, - triangle_ends = NULL, col_inf = NULL, col_sup = NULL, - color_fun = clim.colors, draw_bar_ticks = TRUE, draw_separators = FALSE, - triangle_ends_scale = 1, bar_extra_labels = NULL, units = NULL, - units_scale = 1, bar_label_scale = 1, bar_tick_scale = 1, - bar_extra_margin = rep(0, 4), bar_left_shift_scale = 1, - bar_label_digits = 4, extra_margin = rep(0, 4), fileout = NULL, - width = NULL, height = NULL, size_units = "in", res = 100, - close_device = TRUE) +PlotLayout( + fun, + plot_dims, + var, + ..., + special_args = NULL, + nrow = NULL, + ncol = NULL, + toptitle = NULL, + row_titles = NULL, + col_titles = NULL, + bar_scale = 1, + title_scale = 1, + title_margin_scale = 1, + title_left_shift_scale = 1, + subtitle_scale = 1, + subtitle_margin_scale = 1, + brks = NULL, + cols = NULL, + drawleg = "S", + titles = NULL, + subsampleg = NULL, + bar_limits = NULL, + triangle_ends = NULL, + col_inf = NULL, + col_sup = NULL, + color_fun = clim.colors, + draw_bar_ticks = TRUE, + draw_separators = FALSE, + triangle_ends_scale = 1, + bar_extra_labels = NULL, + units = NULL, + units_scale = 1, + bar_label_scale = 1, + bar_tick_scale = 1, + bar_extra_margin = rep(0, 4), + bar_left_shift_scale = 1, + bar_label_digits = 4, + extra_margin = rep(0, 4), + fileout = NULL, + width = NULL, + height = NULL, + size_units = "in", + res = 100, + close_device = TRUE +) } \arguments{ \item{fun}{Plot function (or name of the function) to be called on the @@ -48,6 +80,12 @@ applied to each of them. NAs can be passed to the list: a NA will yield a blank cell in the layout, which can be populated after (see .SwitchToFigure).} +\item{\dots}{Parameters to be sent to the plotting function 'fun'. If +multiple arrays are provided in 'var' and multiple functions are provided +in 'fun', the parameters provided through \dots will be sent to all the +plot functions, as common parameters. To specify concrete arguments for +each of the plot functions see parameter 'special_args'.} + \item{special_args}{List of sub-lists, each sub-list having specific extra arguments for each of the plot functions provided in 'fun'. If you want to fix a different value for each plot in the layout you can do so by @@ -164,12 +202,6 @@ the layout and a 'fileout' has been specified. This is useful to avoid closing the device when saving the layout into a file and willing to add extra elements or figures. Takes TRUE by default. Disregarded if no 'fileout' has been specified.} - -\item{\dots}{Parameters to be sent to the plotting function 'fun'. If -multiple arrays are provided in 'var' and multiple functions are provided -in 'fun', the parameters provided through \dots will be sent to all the -plot functions, as common parameters. To specify concrete arguments for -each of the plot functions see parameter 'special_args'.} } \value{ \item{brks}{ @@ -249,4 +281,3 @@ History:\cr 0.1 - 2016-08 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Original code } \keyword{dynamic} - diff --git a/man/PlotMatrix.Rd b/man/PlotMatrix.Rd index 70c1211e..88458856 100644 --- a/man/PlotMatrix.Rd +++ b/man/PlotMatrix.Rd @@ -4,12 +4,28 @@ \alias{PlotMatrix} \title{Function to convert any numerical table to a grid of coloured squares.} \usage{ -PlotMatrix(var, brks = NULL, cols = NULL, toptitle = NULL, - title.color = "royalblue4", xtitle = NULL, ytitle = NULL, - xlabels = NULL, xvert = FALSE, ylabels = NULL, line = 3, - figure.width = 1, legend = TRUE, legend.width = 0.15, - xlab_dist = NULL, ylab_dist = NULL, fileout = NULL, size_units = "px", - res = 100, ...) +PlotMatrix( + var, + brks = NULL, + cols = NULL, + toptitle = NULL, + title.color = "royalblue4", + xtitle = NULL, + ytitle = NULL, + xlabels = NULL, + xvert = FALSE, + ylabels = NULL, + line = 3, + figure.width = 1, + legend = TRUE, + legend.width = 0.15, + xlab_dist = NULL, + ylab_dist = NULL, + fileout = NULL, + size_units = "px", + res = 100, + ... +) } \arguments{ \item{var}{A numerical matrix containing the values to be displayed in a @@ -93,4 +109,3 @@ PlotMatrix(var = matrix(rnorm(n = 120, mean = 0.3), 10, 12), xlabels = c("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec")) } - diff --git a/man/PlotSection.Rd b/man/PlotSection.Rd index f7447319..3dbe4fa1 100644 --- a/man/PlotSection.Rd +++ b/man/PlotSection.Rd @@ -4,10 +4,26 @@ \alias{PlotSection} \title{Plots A Vertical Section} \usage{ -PlotSection(var, horiz, depth, toptitle = "", sizetit = 1, units = "", - brks = NULL, cols = NULL, axelab = TRUE, intydep = 200, - intxhoriz = 20, drawleg = TRUE, fileout = NULL, width = 8, - height = 5, size_units = "in", res = 100, ...) +PlotSection( + var, + horiz, + depth, + toptitle = "", + sizetit = 1, + units = "", + brks = NULL, + cols = NULL, + axelab = TRUE, + intydep = 200, + intxhoriz = 20, + drawleg = TRUE, + fileout = NULL, + width = 8, + height = 5, + size_units = "in", + res = 100, + ... +) } \arguments{ \item{var}{Matrix to plot with (longitude/latitude, depth) dimensions.} @@ -75,4 +91,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{dynamic} - diff --git a/man/PlotStereoMap.Rd b/man/PlotStereoMap.Rd index 3bf2f69c..7559f6f7 100644 --- a/man/PlotStereoMap.Rd +++ b/man/PlotStereoMap.Rd @@ -4,19 +4,53 @@ \alias{PlotStereoMap} \title{Maps A Two-Dimensional Variable On A Polar Stereographic Projection} \usage{ -PlotStereoMap(var, lon, lat, latlims = c(60, 90), toptitle = NULL, - sizetit = NULL, units = NULL, brks = NULL, cols = NULL, - bar_limits = NULL, triangle_ends = NULL, col_inf = NULL, - col_sup = NULL, colNA = NULL, color_fun = clim.palette(), - filled.continents = FALSE, coast_color = NULL, coast_width = 1, - dots = NULL, dot_symbol = 4, dot_size = 0.8, intlat = 10, - drawleg = TRUE, subsampleg = NULL, bar_extra_labels = NULL, - draw_bar_ticks = TRUE, draw_separators = FALSE, triangle_ends_scale = 1, - bar_label_digits = 4, bar_label_scale = 1, units_scale = 1, - bar_tick_scale = 1, bar_extra_margin = rep(0, 4), boxlim = NULL, - boxcol = "purple2", boxlwd = 5, margin_scale = rep(1, 4), - title_scale = 1, numbfig = NULL, fileout = NULL, width = 6, - height = 5, size_units = "in", res = 100, ...) +PlotStereoMap( + var, + lon, + lat, + latlims = c(60, 90), + toptitle = NULL, + sizetit = NULL, + units = NULL, + brks = NULL, + cols = NULL, + bar_limits = NULL, + triangle_ends = NULL, + col_inf = NULL, + col_sup = NULL, + colNA = NULL, + color_fun = clim.palette(), + filled.continents = FALSE, + coast_color = NULL, + coast_width = 1, + dots = NULL, + dot_symbol = 4, + dot_size = 0.8, + intlat = 10, + drawleg = TRUE, + subsampleg = NULL, + bar_extra_labels = NULL, + draw_bar_ticks = TRUE, + draw_separators = FALSE, + triangle_ends_scale = 1, + bar_label_digits = 4, + bar_label_scale = 1, + units_scale = 1, + bar_tick_scale = 1, + bar_extra_margin = rep(0, 4), + boxlim = NULL, + boxcol = "purple2", + boxlwd = 5, + margin_scale = rep(1, 4), + title_scale = 1, + numbfig = NULL, + fileout = NULL, + width = 6, + height = 5, + size_units = "in", + res = 100, + ... +) } \arguments{ \item{var}{Array with the values at each cell of a grid on a regular @@ -192,4 +226,3 @@ History:\cr border and Constantin boxes. } \keyword{dynamic} - diff --git a/man/PlotVsLTime.Rd b/man/PlotVsLTime.Rd index 2c71e9fa..402414d1 100644 --- a/man/PlotVsLTime.Rd +++ b/man/PlotVsLTime.Rd @@ -4,12 +4,29 @@ \alias{PlotVsLTime} \title{Plots A Score Along The Forecast Time With Its Confidence Interval} \usage{ -PlotVsLTime(var, toptitle = "", ytitle = "", monini = 1, freq = 12, - nticks = NULL, limits = NULL, listexp = c("exp1", "exp2", "exp3"), - listobs = c("obs1", "obs2", "obs3"), biglab = FALSE, hlines = NULL, - leg = TRUE, siglev = FALSE, sizetit = 1, show_conf = TRUE, - fileout = "output_plotvsltime.eps", width = 8, height = 5, - size_units = "in", res = 100, ...) +PlotVsLTime( + var, + toptitle = "", + ytitle = "", + monini = 1, + freq = 12, + nticks = NULL, + limits = NULL, + listexp = c("exp1", "exp2", "exp3"), + listobs = c("obs1", "obs2", "obs3"), + biglab = FALSE, + hlines = NULL, + leg = TRUE, + siglev = FALSE, + sizetit = 1, + show_conf = TRUE, + fileout = "output_plotvsltime.eps", + width = 8, + height = 5, + size_units = "in", + res = 100, + ... +) } \arguments{ \item{var}{Matrix containing any Prediction Score with dimensions:\cr @@ -133,4 +150,3 @@ History:\cr 1.0 - 2013-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{dynamic} - diff --git a/man/ProbBins.Rd b/man/ProbBins.Rd index 6df49cc2..56cf0511 100644 --- a/man/ProbBins.Rd +++ b/man/ProbBins.Rd @@ -4,8 +4,15 @@ \alias{ProbBins} \title{Computes Probabilistic Information of a Forecast Relative to a Threshold or a Quantile} \usage{ -ProbBins(ano, fcyr = "all", thr, quantile = TRUE, posdates = 3, - posdim = 2, compPeriod = "Full period") +ProbBins( + ano, + fcyr = "all", + thr, + quantile = TRUE, + posdates = 3, + posdim = 2, + compPeriod = "Full period" +) } \arguments{ \item{ano}{Array of anomalies from Ano().\cr @@ -86,4 +93,3 @@ History:\cr 2.1 - 2017-02 (V. Torralba and N. Manubens, \email{veronica.torralba@bsc.es}) - Fix bug with cross-validation } \keyword{datagen} - diff --git a/man/ProjectField.Rd b/man/ProjectField.Rd index 7b2e9e93..7dd77123 100644 --- a/man/ProjectField.Rd +++ b/man/ProjectField.Rd @@ -74,6 +74,9 @@ for (i in 1:dim(sampleData$mod)[2]) { ylim = c(-15000, 15000)) } +} +\seealso{ +EOF, NAO, PlotBoxWhisker } \author{ History:\cr @@ -105,8 +108,4 @@ multiplied by W. Getting input dimensions. 1.0 - 2016-03 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Formatting to R CRAN\cr (J.-P. Baudouin, \email{jean.baudouin@bsc.es}) - Example code and testing } -\seealso{ -EOF, NAO, PlotBoxWhisker -} \keyword{datagen} - diff --git a/man/RMS.Rd b/man/RMS.Rd index 715f84d1..877300fa 100644 --- a/man/RMS.Rd +++ b/man/RMS.Rd @@ -1,12 +1,20 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/RMS.R \name{RMS} -\alias{.RMS} \alias{RMS} +\alias{.RMS} \title{Computes Root Mean Square Error} \usage{ -RMS(var_exp, var_obs, posloop = 1, posRMS = 2, compROW = NULL, - limits = NULL, siglev = 0.95, conf = TRUE) +RMS( + var_exp, + var_obs, + posloop = 1, + posRMS = 2, + compROW = NULL, + limits = NULL, + siglev = 0.95, + conf = TRUE +) .RMS(exp, obs, siglev = 0.95, conf = TRUE) } @@ -119,4 +127,3 @@ History:\cr 1.1 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() } \keyword{datagen} - diff --git a/man/RMSSS.Rd b/man/RMSSS.Rd index f602702b..8bc0d803 100644 --- a/man/RMSSS.Rd +++ b/man/RMSSS.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/RMSSS.R \name{RMSSS} -\alias{.RMSSS} \alias{RMSSS} +\alias{.RMSSS} \title{Computes Root Mean Square Skill Score} \usage{ RMSSS(var_exp, var_obs, posloop = 1, posRMS = 2, pval = TRUE) @@ -93,4 +93,3 @@ History:\cr 1.1 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() } \keyword{datagen} - diff --git a/man/RatioRMS.Rd b/man/RatioRMS.Rd index 44d13dbb..b1abbca1 100644 --- a/man/RatioRMS.Rd +++ b/man/RatioRMS.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/RatioRMS.R \name{RatioRMS} -\alias{.RatioRMS} \alias{RatioRMS} +\alias{.RatioRMS} \title{Computes the Ratio Between The RMSE of Two Experiments} \usage{ RatioRMS(var_exp1, var_exp2, var_obs, posRMS = 1, pval = TRUE) @@ -121,4 +121,3 @@ History:\cr 1.1 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() } \keyword{datagen} - diff --git a/man/RatioSDRMS.Rd b/man/RatioSDRMS.Rd index 09484740..97efe6da 100644 --- a/man/RatioSDRMS.Rd +++ b/man/RatioSDRMS.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/RatioSDRMS.R \name{RatioSDRMS} -\alias{.RatioSDRMS} \alias{RatioSDRMS} +\alias{.RatioSDRMS} \title{Computes the ratio between the ensemble spread and RMSE} \usage{ RatioSDRMS(var_exp, var_obs, pval = TRUE) @@ -86,4 +86,3 @@ History:\cr 1.1 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() } \keyword{datagen} - diff --git a/man/Regression.Rd b/man/Regression.Rd index 55646576..a3763150 100644 --- a/man/Regression.Rd +++ b/man/Regression.Rd @@ -73,4 +73,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/SVD.Rd b/man/SVD.Rd index 698df952..bbbcaa49 100644 --- a/man/SVD.Rd +++ b/man/SVD.Rd @@ -4,8 +4,15 @@ \alias{SVD} \title{Single Value Decomposition (Maximum Covariance Analysis)} \usage{ -SVD(vary, varx, laty = NULL, latx = NULL, nmodes = 15, corr = FALSE, - weight = TRUE) +SVD( + vary, + varx, + laty = NULL, + latx = NULL, + nmodes = 15, + corr = FALSE, + weight = TRUE +) } \arguments{ \item{vary}{Array containing the anomalies field for the predictor. The @@ -117,4 +124,3 @@ History:\cr 1.0 - 2016-04 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Formatting to R CRAN } \keyword{datagen} - diff --git a/man/Season.Rd b/man/Season.Rd index cc97941c..76f64053 100644 --- a/man/Season.Rd +++ b/man/Season.Rd @@ -54,4 +54,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/SelIndices.Rd b/man/SelIndices.Rd index dbf34da2..ab3ca88e 100644 --- a/man/SelIndices.Rd +++ b/man/SelIndices.Rd @@ -37,4 +37,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/Smoothing.Rd b/man/Smoothing.Rd index 4fa9c596..492370e9 100644 --- a/man/Smoothing.Rd +++ b/man/Smoothing.Rd @@ -47,4 +47,3 @@ History:\cr making it able to work on arrays of any number of dimensions. } \keyword{datagen} - diff --git a/man/Spectrum.Rd b/man/Spectrum.Rd index de5a2e5e..a3fce568 100644 --- a/man/Spectrum.Rd +++ b/man/Spectrum.Rd @@ -48,4 +48,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/Spread.Rd b/man/Spread.Rd index f84cecf3..a9f3125b 100644 --- a/man/Spread.Rd +++ b/man/Spread.Rd @@ -93,4 +93,3 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} - diff --git a/man/StatSeasAtlHurr.Rd b/man/StatSeasAtlHurr.Rd index 9822eb90..053698f7 100644 --- a/man/StatSeasAtlHurr.Rd +++ b/man/StatSeasAtlHurr.Rd @@ -66,10 +66,6 @@ hr_count <- StatSeasAtlHurr(atlano = AtlAno, hrvar = 'HR') print(hr_count$mean) -} -\author{ -History:\cr -0.1 - 2015-11 (Louis-Philippe Caron, \email{louis-philippe.caron@bsc.es}) - Original code } \references{ Villarini et al. (2010) Mon Wea Rev, 138, 2681-2705.\cr @@ -81,5 +77,8 @@ Caron, L.-P. et al. (2014) Multi-year prediction skill of Atlantic hurricane activity in CMIP5 decadal hindcasts. Climate Dynamics, 42, 2675-2690. doi:10.1007/s00382-013-1773-1. } +\author{ +History:\cr +0.1 - 2015-11 (Louis-Philippe Caron, \email{louis-philippe.caron@bsc.es}) - Original code +} \keyword{datagen} - diff --git a/man/Subset.Rd b/man/Subset.Rd index bccec4ac..570cd732 100644 --- a/man/Subset.Rd +++ b/man/Subset.Rd @@ -45,4 +45,3 @@ PlotLayout(PlotEquiMap, c('lat', 'lon'), subset, } \keyword{datagen} - diff --git a/man/ToyModel.Rd b/man/ToyModel.Rd index ca47b449..5eee0393 100644 --- a/man/ToyModel.Rd +++ b/man/ToyModel.Rd @@ -7,8 +7,18 @@ components of a forecast: (1) predictabiltiy (2) forecast error (3) non-stationarity and (4) ensemble generation. The forecast can be computed for real observations or observations generated artifically.} \usage{ -ToyModel(alpha = 0.1, beta = 0.4, gamma = 1, sig = 1, trend = 0, - nstartd = 30, nleadt = 4, nmemb = 10, obsini = NULL, fxerr = NULL) +ToyModel( + alpha = 0.1, + beta = 0.4, + gamma = 1, + sig = 1, + trend = 0, + nstartd = 30, + nleadt = 4, + nmemb = 10, + obsini = NULL, + fxerr = NULL +) } \arguments{ \item{alpha}{Predicabiltiy of the forecast on the observed residuals @@ -125,4 +135,3 @@ History:\cr 1.1 - 2016-02 (O.Bellprat) - Include security check for parameters } \keyword{datagen} - diff --git a/man/Trend.Rd b/man/Trend.Rd index 3b7f7bfd..b4e0ba36 100644 --- a/man/Trend.Rd +++ b/man/Trend.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/Trend.R \name{Trend} -\alias{.Trend} \alias{Trend} +\alias{.Trend} \title{Computes the Trend of the Ensemble Mean} \usage{ Trend(var, posTR = 2, interval = 1, siglev = 0.95, conf = TRUE) @@ -78,4 +78,3 @@ History:\cr 2.0 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapt to veriApply() } \keyword{datagen} - diff --git a/man/UltimateBrier.Rd b/man/UltimateBrier.Rd index 46fe124c..518a60cc 100644 --- a/man/UltimateBrier.Rd +++ b/man/UltimateBrier.Rd @@ -4,9 +4,17 @@ \alias{UltimateBrier} \title{Computes Brier Scores} \usage{ -UltimateBrier(ano_exp, ano_obs, posdatasets = 1, posmemb = 2, - posdates = 3, quantile = TRUE, thr = c(5/100, 95/100), type = "BS", - decomposition = TRUE) +UltimateBrier( + ano_exp, + ano_obs, + posdatasets = 1, + posmemb = 2, + posdates = 3, + quantile = TRUE, + thr = c(5/100, 95/100), + type = "BS", + decomposition = TRUE +) } \arguments{ \item{ano_exp}{Array of forecast anomalies, as provided by \code{Ano()}. @@ -124,4 +132,3 @@ History:\cr N. Manubens, \email{nicolau.manubens@bsc.es}) - First version } \keyword{datagen} - diff --git a/man/clim.palette.Rd b/man/clim.palette.Rd index 95f8407c..e67994f8 100644 --- a/man/clim.palette.Rd +++ b/man/clim.palette.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/clim.palette.R \name{clim.palette} -\alias{clim.colors} \alias{clim.palette} +\alias{clim.colors} \title{Generate Climate Color Palettes} \usage{ clim.palette(palette = "bluered") @@ -35,4 +35,3 @@ History:\cr 0.0 - 2016-01 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Original code. } \keyword{datagen} - diff --git a/man/s2dverification.Rd b/man/s2dverification.Rd index 698fa4ed..fe175f25 100644 --- a/man/s2dverification.Rd +++ b/man/s2dverification.Rd @@ -26,6 +26,14 @@ Check an overview of the package functionalities and its modules at \url{https://earth.bsc.es/gitlab/es/s2dverification/wikis/home}. For more information load the package and check the help for each function or the documentation attached to the package. +} +\seealso{ +Useful links: +\itemize{ + \item \url{https://earth.bsc.es/gitlab/es/s2dverification/wikis/home} + \item Report bugs at \url{https://earth.bsc.es/gitlab/es/s2dverification/issues} +} + } \author{ Nicolau Manubens \email{nicolau.manubens@bsc.es} @@ -33,4 +41,3 @@ Nicolau Manubens \email{nicolau.manubens@bsc.es} \keyword{datagen} \keyword{dynamic} \keyword{package} - diff --git a/man/sampleDepthData.Rd b/man/sampleDepthData.Rd index 974fe6bd..3292f5c6 100644 --- a/man/sampleDepthData.Rd +++ b/man/sampleDepthData.Rd @@ -32,4 +32,3 @@ Its name within IC3 local database is 'i00k'. Nicolau Manubens \email{nicolau.manubens@bsc.es} } \keyword{data} - diff --git a/man/sampleMap.Rd b/man/sampleMap.Rd index d33ab829..7286b8a6 100644 --- a/man/sampleMap.Rd +++ b/man/sampleMap.Rd @@ -47,4 +47,3 @@ Check the documentation on 'Load()' in the package 's2dverification' for more in Nicolau Manubens \email{nicolau.manubens@bsc.es} } \keyword{datasets} - diff --git a/man/sampleTimeSeries.Rd b/man/sampleTimeSeries.Rd index ce2c6395..4871a928 100644 --- a/man/sampleTimeSeries.Rd +++ b/man/sampleTimeSeries.Rd @@ -51,4 +51,3 @@ Check the documentation on 'Load()' in the package 's2dverification' for more in Nicolau Manubens \email{nicolau.manubens@bsc.es} } \keyword{datasets} - -- GitLab From 691e488d27ea92c936a88ea45fd1347b1aa5494e Mon Sep 17 00:00:00 2001 From: nperez Date: Wed, 21 Oct 2020 12:35:59 +0200 Subject: [PATCH 33/44] devtools with R.3.2.0 --- DESCRIPTION | 2 +- man/ACC.Rd | 21 +++----- man/Alpha.Rd | 1 + man/AnimateMap.Rd | 33 +++--------- man/Ano.Rd | 1 + man/Ano_CrossValid.Rd | 1 + man/ArrayToNetCDF.Rd | 1 + man/BrierScore.Rd | 13 ++--- man/CDORemap.Rd | 14 ++--- man/Clim.Rd | 1 + man/Cluster.Rd | 9 ++-- man/ColorBar.Rd | 32 +++--------- man/Composite.Rd | 1 + man/ConfigApplyMatchingEntries.Rd | 21 +++----- man/ConfigEditDefinition.Rd | 9 ++-- man/ConfigEditEntry.Rd | 53 ++++++------------- man/ConfigFileOpen.Rd | 13 ++--- man/ConfigShowSimilarEntries.Rd | 27 ++++------ man/ConfigShowTable.Rd | 13 ++--- man/Consist_Trend.Rd | 1 + man/Corr.Rd | 21 +++----- man/EOF.Rd | 7 +-- man/Enlarge.Rd | 1 + man/Eno.Rd | 1 + man/EnoNew.Rd | 11 ++-- man/Filter.Rd | 1 + man/FitAcfCoef.Rd | 1 + man/FitAutocor.Rd | 1 + man/GenSeries.Rd | 1 + man/Histo2Hindcast.Rd | 1 + man/IniListDims.Rd | 1 + man/InsertDim.Rd | 1 + man/LeapYear.Rd | 1 + man/Load.Rd | 40 ++++---------- man/Mean1Dim.Rd | 1 + man/MeanListDim.Rd | 1 + man/NAO.Rd | 21 +++----- man/Plot2VarsVsLTime.Rd | 31 +++-------- man/PlotACC.Rd | 27 +++------- man/PlotAno.Rd | 31 +++-------- man/PlotBoxWhisker.Rd | 29 +++-------- man/PlotClim.Rd | 26 +++------- man/PlotEquiMap.Rd | 86 +++++++------------------------ man/PlotLayout.Rd | 73 ++++++++------------------ man/PlotMatrix.Rd | 29 +++-------- man/PlotSection.Rd | 25 ++------- man/PlotStereoMap.Rd | 61 +++++----------------- man/PlotVsLTime.Rd | 30 +++-------- man/ProbBins.Rd | 12 ++--- man/ProjectField.Rd | 7 +-- man/RMS.Rd | 15 ++---- man/RMSSS.Rd | 3 +- man/RatioRMS.Rd | 3 +- man/RatioSDRMS.Rd | 3 +- man/Regression.Rd | 1 + man/SVD.Rd | 12 ++--- man/Season.Rd | 1 + man/SelIndices.Rd | 1 + man/Smoothing.Rd | 1 + man/Spectrum.Rd | 1 + man/Spread.Rd | 1 + man/StatSeasAtlHurr.Rd | 9 ++-- man/Subset.Rd | 1 + man/ToyModel.Rd | 15 ++---- man/Trend.Rd | 3 +- man/UltimateBrier.Rd | 15 ++---- man/clim.palette.Rd | 3 +- man/s2dverification.Rd | 9 +--- man/sampleDepthData.Rd | 1 + man/sampleMap.Rd | 1 + man/sampleTimeSeries.Rd | 1 + 71 files changed, 299 insertions(+), 647 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 1f0a201e..0045265c 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -60,4 +60,4 @@ BugReports: https://earth.bsc.es/gitlab/es/s2dverification/issues LazyData: true SystemRequirements: cdo Encoding: UTF-8 -RoxygenNote: 7.0.1 +RoxygenNote: 5.0.0 diff --git a/man/ACC.Rd b/man/ACC.Rd index 61b286f2..e3db377f 100644 --- a/man/ACC.Rd +++ b/man/ACC.Rd @@ -4,16 +4,8 @@ \alias{ACC} \title{Computes Anomaly Correlation Coefficient} \usage{ -ACC( - var_exp, - var_obs, - lon = NULL, - lat = NULL, - lonlatbox = NULL, - conf = TRUE, - conftype = "parametric", - siglev = 0.95 -) +ACC(var_exp, var_obs, lon = NULL, lat = NULL, lonlatbox = NULL, + conf = TRUE, conftype = "parametric", siglev = 0.95) } \arguments{ \item{var_exp}{Array of experimental anomalies with dimensions: @@ -105,10 +97,6 @@ acc <- ACC(Mean1Dim(ano_exp, 2), Mean1Dim(ano_obs, 2)) PlotACC(acc$ACC, startDates) } } -\references{ -Joliffe and Stephenson (2012). Forecast Verification: A - Practitioner's Guide in Atmospheric Science. Wiley-Blackwell. -} \author{ History:\cr 0.1 - 2013-08 (V. Guemas, \email{virginie.guemas@bsc.es}) - Original code\cr @@ -119,4 +107,9 @@ History:\cr 1.3.1 - 2014-09 (C. Prodhomme, \email{chloe.prodhomme@bsc.es}) - Add comments and minor style changes\cr 1.3.2 - 2015-02 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Fixed ACC documentation and examples } +\references{ +Joliffe and Stephenson (2012). Forecast Verification: A + Practitioner's Guide in Atmospheric Science. Wiley-Blackwell. +} \keyword{datagen} + diff --git a/man/Alpha.Rd b/man/Alpha.Rd index 26596dc2..c2350b2a 100644 --- a/man/Alpha.Rd +++ b/man/Alpha.Rd @@ -42,3 +42,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/AnimateMap.Rd b/man/AnimateMap.Rd index 5dc756da..96074b01 100644 --- a/man/AnimateMap.Rd +++ b/man/AnimateMap.Rd @@ -4,33 +4,13 @@ \alias{AnimateMap} \title{Animate Maps of Forecast/Observed Values or Scores Over Forecast Time} \usage{ -AnimateMap( - var, - lon, - lat, - toptitle = rep("", 11), - sizetit = 1, - units = "", - monini = 1, - freq = 12, - msk95lev = FALSE, - brks = NULL, - cols = NULL, - filled.continents = FALSE, - lonmin = 0, - lonmax = 360, - latmin = -90, - latmax = 90, - intlon = 20, - intlat = 30, - drawleg = TRUE, - subsampleg = 1, - colNA = "white", - equi = TRUE, +AnimateMap(var, lon, lat, toptitle = rep("", 11), sizetit = 1, units = "", + monini = 1, freq = 12, msk95lev = FALSE, brks = NULL, cols = NULL, + filled.continents = FALSE, lonmin = 0, lonmax = 360, latmin = -90, + latmax = 90, intlon = 20, intlat = 30, drawleg = TRUE, + subsampleg = 1, colNA = "white", equi = TRUE, fileout = c("output1_animvsltime.gif", "output2_animvsltime.gif", - "output3_animvsltime.gif"), - ... -) + "output3_animvsltime.gif"), ...) } \arguments{ \item{var}{Matrix of dimensions (nltime, nlat, nlon) or @@ -214,3 +194,4 @@ History:\cr 1.2 - 2015-05 (V. Guemas, \email{virginie.guemas@bsc.es}) - Use of PlotEquiMap and PlotStereoMap } \keyword{dynamic} + diff --git a/man/Ano.Rd b/man/Ano.Rd index 6461ec77..6143be88 100644 --- a/man/Ano.Rd +++ b/man/Ano.Rd @@ -49,3 +49,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to R CRAN } \keyword{datagen} + diff --git a/man/Ano_CrossValid.Rd b/man/Ano_CrossValid.Rd index 70017492..85d1badb 100644 --- a/man/Ano_CrossValid.Rd +++ b/man/Ano_CrossValid.Rd @@ -43,3 +43,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/ArrayToNetCDF.Rd b/man/ArrayToNetCDF.Rd index 4e05d829..77cbfaf8 100644 --- a/man/ArrayToNetCDF.Rd +++ b/man/ArrayToNetCDF.Rd @@ -238,3 +238,4 @@ History:\cr 0.0 - 2017-01 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Original code. } \keyword{datagen} + diff --git a/man/BrierScore.Rd b/man/BrierScore.Rd index e802dc35..5094987c 100644 --- a/man/BrierScore.Rd +++ b/man/BrierScore.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/BrierScore.R \name{BrierScore} -\alias{BrierScore} \alias{.BrierScore} +\alias{BrierScore} \title{Compute Brier Score And Its Decomposition And Brier Skill Score} \usage{ BrierScore(obs, pred, thresholds = seq(0, 1, 0.1)) @@ -85,6 +85,11 @@ bs2 <- veriApply("BrierScore2", bins_ano_exp, Mean1Dim(bins_ano_ob,s 3), tdim = 2, ensdim = 3) } } +\author{ +History:\cr + 0.1 - 2012-04 (L. Rodrigues, \email{lrodrigues@ic3.cat}) - Original code\cr + 0.2 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() +} \references{ Wilks (2006) Statistical Methods in the Atmospheric Sciences.\cr Stephenson et al. (2008). Two extra components in the Brier score decomposition. @@ -92,9 +97,5 @@ Stephenson et al. (2008). Two extra components in the Brier score decomposition. Ferro and Fricker (2012). A bias-corrected decomposition of the BS. Quarterly Journal of the Royal Meteorological Society, DOI: 10.1002/qj.1924. } -\author{ -History:\cr - 0.1 - 2012-04 (L. Rodrigues, \email{lrodrigues@ic3.cat}) - Original code\cr - 0.2 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() -} \keyword{datagen} + diff --git a/man/CDORemap.Rd b/man/CDORemap.Rd index bae7aa55..b2d5eaa3 100644 --- a/man/CDORemap.Rd +++ b/man/CDORemap.Rd @@ -4,17 +4,8 @@ \alias{CDORemap} \title{Interpolates arrays with longitude and latitude dimensions using CDO} \usage{ -CDORemap( - data_array = NULL, - lons, - lats, - grid, - method, - avoid_writes = TRUE, - crop = TRUE, - force_remap = FALSE, - write_dir = tempdir() -) +CDORemap(data_array = NULL, lons, lats, grid, method, avoid_writes = TRUE, + crop = TRUE, force_remap = FALSE, write_dir = tempdir()) } \arguments{ \item{data_array}{Multidimensional numeric array to be interpolated. If @@ -235,3 +226,4 @@ History:\cr 0.0 - 2017-01 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Original code. } \keyword{datagen} + diff --git a/man/Clim.Rd b/man/Clim.Rd index 69f7ceb0..1ef5e3da 100644 --- a/man/Clim.Rd +++ b/man/Clim.Rd @@ -63,3 +63,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to R CRAN } \keyword{datagen} + diff --git a/man/Cluster.Rd b/man/Cluster.Rd index 782c37a4..70f22347 100644 --- a/man/Cluster.Rd +++ b/man/Cluster.Rd @@ -92,7 +92,7 @@ for (i1 in c1) { a1[i1, ] <- x1 + rnorm(4, mean = mean1, sd = sd1) } -c1p5 <- c0[!(c0 \\%in\\% c1)] +c1p5 <- c0[!(c0 \\\%in\\\% c1)] c2 <- c1p5[seq(1, length(c1p5), 2)] x2 <- c(2, 2, 4, 4) for (i2 in c2) { @@ -114,11 +114,12 @@ res2 <- Cluster(var = a1, weights = array(1, dim = dim(a1)[2])) print(res2$cluster) print(res2$centers) } -\references{ -Wilks, 2011, Statistical Methods in the Atmospheric Sciences, 3rd ed., Elsevire, pp 676. -} \author{ History:\cr 1.0 # 2014-10 (N.S. Fuckar, \email{neven.fuckar@bsc.es}) - Original code } +\references{ +Wilks, 2011, Statistical Methods in the Atmospheric Sciences, 3rd ed., Elsevire, pp 676. +} \keyword{datagen} + diff --git a/man/ColorBar.Rd b/man/ColorBar.Rd index 98c99679..71da02be 100644 --- a/man/ColorBar.Rd +++ b/man/ColorBar.Rd @@ -4,30 +4,13 @@ \alias{ColorBar} \title{Draws a Color Bar} \usage{ -ColorBar( - brks = NULL, - cols = NULL, - vertical = TRUE, - subsampleg = NULL, - bar_limits = NULL, - var_limits = NULL, - triangle_ends = NULL, - col_inf = NULL, - col_sup = NULL, - color_fun = clim.palette(), - plot = TRUE, - draw_ticks = TRUE, - draw_separators = FALSE, - triangle_ends_scale = 1, - extra_labels = NULL, - title = NULL, - title_scale = 1, - label_scale = 1, - tick_scale = 1, - extra_margin = rep(0, 4), - label_digits = 4, - ... -) +ColorBar(brks = NULL, cols = NULL, vertical = TRUE, subsampleg = NULL, + bar_limits = NULL, var_limits = NULL, triangle_ends = NULL, + col_inf = NULL, col_sup = NULL, color_fun = clim.palette(), + plot = TRUE, draw_ticks = TRUE, draw_separators = FALSE, + triangle_ends_scale = 1, extra_labels = NULL, title = NULL, + title_scale = 1, label_scale = 1, tick_scale = 1, + extra_margin = rep(0, 4), label_digits = 4, ...) } \arguments{ \item{brks}{Can be provided in two formats: @@ -202,3 +185,4 @@ History:\cr (V. Torralba, \email{veronica.torralba@bsc.es}) } \keyword{hplot} + diff --git a/man/Composite.Rd b/man/Composite.Rd index f0ce4692..b9151d82 100644 --- a/man/Composite.Rd +++ b/man/Composite.Rd @@ -90,3 +90,4 @@ History: 0.1 # 2014-08 (N.S. Fuckar, \email{neven.fuckar@bsc.es}) # Original code } \keyword{datagen} + diff --git a/man/ConfigApplyMatchingEntries.Rd b/man/ConfigApplyMatchingEntries.Rd index 74abb167..626e385d 100644 --- a/man/ConfigApplyMatchingEntries.Rd +++ b/man/ConfigApplyMatchingEntries.Rd @@ -4,14 +4,8 @@ \alias{ConfigApplyMatchingEntries} \title{Apply Matching Entries To Dataset Name And Variable Name To Find Related Info} \usage{ -ConfigApplyMatchingEntries( - configuration, - var, - exp = NULL, - obs = NULL, - show_entries = FALSE, - show_result = TRUE -) +ConfigApplyMatchingEntries(configuration, var, exp = NULL, obs = NULL, + show_entries = FALSE, show_result = TRUE) } \arguments{ \item{configuration}{Configuration object obtained from ConfigFileOpen() @@ -69,14 +63,15 @@ configuration <- ConfigEditEntry(configuration, "experiments", 1, match_info <- ConfigApplyMatchingEntries(configuration, 'tas', exp = c('ExampleExperiment2'), show_result = TRUE) } -\seealso{ -ConfigApplyMatchingEntries, ConfigEditDefinition, - ConfigEditEntry, ConfigFileOpen, ConfigShowSimilarEntries, - ConfigShowTable -} \author{ History:\cr 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage types } +\seealso{ +ConfigApplyMatchingEntries, ConfigEditDefinition, + ConfigEditEntry, ConfigFileOpen, ConfigShowSimilarEntries, + ConfigShowTable +} \keyword{datagen} + diff --git a/man/ConfigEditDefinition.Rd b/man/ConfigEditDefinition.Rd index a25a9c3b..b1f7c882 100644 --- a/man/ConfigEditDefinition.Rd +++ b/man/ConfigEditDefinition.Rd @@ -52,13 +52,14 @@ match_info <- ConfigApplyMatchingEntries(configuration, 'tas', exp = c('ExampleExperiment2'), show_result = TRUE) } +\author{ +History: + 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version +} \seealso{ [ConfigApplyMatchingEntries()], [ConfigEditDefinition()], [ConfigEditEntry()], [ConfigFileOpen()], [ConfigShowSimilarEntries()], [ConfigShowTable()]. } -\author{ -History: - 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version -} \keyword{datagen} + diff --git a/man/ConfigEditEntry.Rd b/man/ConfigEditEntry.Rd index 2b13d0b9..83973231 100644 --- a/man/ConfigEditEntry.Rd +++ b/man/ConfigEditEntry.Rd @@ -1,46 +1,22 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/ConfigEditEntry.R \name{ConfigEditEntry} -\alias{ConfigEditEntry} \alias{ConfigAddEntry} +\alias{ConfigEditEntry} \alias{ConfigRemoveEntry} \title{Add, Remove Or Edit Entries In The Configuration} \usage{ -ConfigEditEntry( - configuration, - dataset_type, - position, - dataset_name = NULL, - var_name = NULL, - main_path = NULL, - file_path = NULL, - nc_var_name = NULL, - suffix = NULL, - varmin = NULL, - varmax = NULL -) +ConfigEditEntry(configuration, dataset_type, position, dataset_name = NULL, + var_name = NULL, main_path = NULL, file_path = NULL, + nc_var_name = NULL, suffix = NULL, varmin = NULL, varmax = NULL) -ConfigAddEntry( - configuration, - dataset_type, - position = "last", - dataset_name = ".*", - var_name = ".*", - main_path = "*", - file_path = "*", - nc_var_name = "*", - suffix = "*", - varmin = "*", - varmax = "*" -) +ConfigAddEntry(configuration, dataset_type, position = "last", + dataset_name = ".*", var_name = ".*", main_path = "*", + file_path = "*", nc_var_name = "*", suffix = "*", varmin = "*", + varmax = "*") -ConfigRemoveEntry( - configuration, - dataset_type, - dataset_name = NULL, - var_name = NULL, - position = NULL -) +ConfigRemoveEntry(configuration, dataset_type, dataset_name = NULL, + var_name = NULL, position = NULL) } \arguments{ \item{configuration}{Configuration object obtained via ConfigFileOpen() @@ -119,13 +95,14 @@ ConfigShowTable(configuration, "experiments") # Save the configuration ConfigFileSave(configuration, config_file, confirm = FALSE) } -\seealso{ -ConfigApplyMatchingEntries, ConfigEditDefinition, ConfigEditEntry, - ConfigFileOpen, ConfigShowSimilarEntries, ConfigShowTable -} \author{ History:\cr 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats } +\seealso{ +ConfigApplyMatchingEntries, ConfigEditDefinition, ConfigEditEntry, + ConfigFileOpen, ConfigShowSimilarEntries, ConfigShowTable +} \keyword{datagen} + diff --git a/man/ConfigFileOpen.Rd b/man/ConfigFileOpen.Rd index 372ad386..cff7427e 100644 --- a/man/ConfigFileOpen.Rd +++ b/man/ConfigFileOpen.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/ConfigFileOpen.R \name{ConfigFileOpen} -\alias{ConfigFileOpen} \alias{ConfigFileCreate} +\alias{ConfigFileOpen} \alias{ConfigFileSave} \title{Functions To Create Open And Save Configuration File} \usage{ @@ -185,6 +185,11 @@ match_info <- ConfigApplyMatchingEntries(configuration, 'tas', # Finally save the configuration file. ConfigFileSave(configuration, config_file, confirm = FALSE) +} +\author{ +History: + 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version + 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats } \references{ [1] \url{https://stat.ethz.ch/R-manual/R-devel/library/base/html/regex.html}\cr @@ -194,9 +199,5 @@ ConfigFileSave(configuration, config_file, confirm = FALSE) ConfigApplyMatchingEntries, ConfigEditDefinition, ConfigEditEntry, ConfigFileOpen, ConfigShowSimilarEntries, ConfigShowTable } -\author{ -History: - 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version - 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats -} \keyword{datagen} + diff --git a/man/ConfigShowSimilarEntries.Rd b/man/ConfigShowSimilarEntries.Rd index 154bcb28..312da795 100644 --- a/man/ConfigShowSimilarEntries.Rd +++ b/man/ConfigShowSimilarEntries.Rd @@ -4,18 +4,10 @@ \alias{ConfigShowSimilarEntries} \title{Find Similar Entries In Tables Of Datasets} \usage{ -ConfigShowSimilarEntries( - configuration, - dataset_name = NULL, - var_name = NULL, - main_path = NULL, - file_path = NULL, - nc_var_name = NULL, - suffix = NULL, - varmin = NULL, - varmax = NULL, - n_results = 10 -) +ConfigShowSimilarEntries(configuration, dataset_name = NULL, + var_name = NULL, main_path = NULL, file_path = NULL, + nc_var_name = NULL, suffix = NULL, varmin = NULL, varmax = NULL, + n_results = 10) } \arguments{ \item{configuration}{Configuration object obtained either from @@ -79,6 +71,11 @@ ConfigShowSimilarEntries(configuration, dataset_name = "Exper", var_name = "Vari") } +\author{ +History:\cr + 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr + 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats +} \references{ [1] Simon White, string seamness: \url{http://www.catalysoft.com/articles/StrikeAMatch.html} @@ -87,9 +84,5 @@ ConfigShowSimilarEntries(configuration, dataset_name = "Exper", ConfigApplyMatchingEntries, ConfigEditDefinition, ConfigEditEntry, ConfigFileOpen, ConfigShowSimilarEntries, ConfigShowTable } -\author{ -History:\cr - 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr - 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats -} \keyword{datagen} + diff --git a/man/ConfigShowTable.Rd b/man/ConfigShowTable.Rd index 56649156..a06b643e 100644 --- a/man/ConfigShowTable.Rd +++ b/man/ConfigShowTable.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/ConfigShowTable.R \name{ConfigShowTable} -\alias{ConfigShowTable} \alias{ConfigShowDefinitions} +\alias{ConfigShowTable} \title{Show Configuration Tables And Definitions} \usage{ ConfigShowTable(configuration, dataset_type, line_numbers = NULL) @@ -48,15 +48,16 @@ configuration <- ConfigEditEntry(configuration, "experiments", 1, ConfigShowTable(configuration, 'experiments') ConfigShowDefinitions(configuration) -} -\seealso{ -[ConfigApplyMatchingEntries()], [ConfigEditDefinition()], - [ConfigEditEntry()], [ConfigFileOpen()], [ConfigShowSimilarEntries()], - [ConfigShowTable()]. } \author{ History:\cr 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - First version\cr 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Removed grid column and storage formats } +\seealso{ +[ConfigApplyMatchingEntries()], [ConfigEditDefinition()], + [ConfigEditEntry()], [ConfigFileOpen()], [ConfigShowSimilarEntries()], + [ConfigShowTable()]. +} \keyword{datagen} + diff --git a/man/Consist_Trend.Rd b/man/Consist_Trend.Rd index 124e5e3d..d067dcd7 100644 --- a/man/Consist_Trend.Rd +++ b/man/Consist_Trend.Rd @@ -80,3 +80,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to R CRAN } \keyword{datagen} + diff --git a/man/Corr.Rd b/man/Corr.Rd index 11a40d79..e311813d 100644 --- a/man/Corr.Rd +++ b/man/Corr.Rd @@ -1,24 +1,16 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/Corr.R \name{Corr} -\alias{Corr} \alias{.Corr} +\alias{Corr} \title{Computes the correlation coefficient between an array of forecasts and their corresponding observations} \usage{ -Corr( - var_exp, - var_obs, - posloop = 1, - poscor = 2, - compROW = NULL, - limits = NULL, - siglev = 0.95, - method = "pearson", - conf = TRUE, - pval = TRUE -) +Corr(var_exp, var_obs, posloop = 1, poscor = 2, compROW = NULL, + limits = NULL, siglev = 0.95, method = "pearson", conf = TRUE, + pval = TRUE) -.Corr(exp, obs, siglev = 0.95, method = "pearson", conf = TRUE, pval = TRUE) +.Corr(exp, obs, siglev = 0.95, method = "pearson", conf = TRUE, + pval = TRUE) } \arguments{ \item{var_exp}{Array of experimental data.} @@ -139,3 +131,4 @@ History:\cr 1.3 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() } \keyword{datagen} + diff --git a/man/EOF.Rd b/man/EOF.Rd index 25934f52..bd0b31e4 100644 --- a/man/EOF.Rd +++ b/man/EOF.Rd @@ -82,9 +82,6 @@ ano <- Ano_CrossValid(sampleData$mod, sampleData$obs) eof <- EOF(Mean1Dim(ano$ano_exp, 2)[1, , 1, , ], sampleData$lon, sampleData$lat) PlotEquiMap(eof$EOFs[1, , ], sampleData$lon, sampleData$lat) -} -\seealso{ -ProjectField, NAO, PlotBoxWhisker } \author{ History:\cr @@ -118,4 +115,8 @@ weighted by cos(lat)\cr EOF * PC\cr 1.0 - 2016-03 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Formatting to R CRAN } +\seealso{ +ProjectField, NAO, PlotBoxWhisker +} \keyword{datagen} + diff --git a/man/Enlarge.Rd b/man/Enlarge.Rd index 47aed320..76f5cccf 100644 --- a/man/Enlarge.Rd +++ b/man/Enlarge.Rd @@ -29,3 +29,4 @@ History:\cr 1.1 - 2015-03 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Improved\cr } \keyword{datagen} + diff --git a/man/Eno.Rd b/man/Eno.Rd index ea70bc5e..ba4f2088 100644 --- a/man/Eno.Rd +++ b/man/Eno.Rd @@ -60,3 +60,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens at ic3.cat}) - Formatting to R CRAN } \keyword{datagen} + diff --git a/man/EnoNew.Rd b/man/EnoNew.Rd index 32bf55fd..cc2de760 100644 --- a/man/EnoNew.Rd +++ b/man/EnoNew.Rd @@ -55,15 +55,16 @@ sampleData <- s2dverification:::.LoadSampleData('tos', c('experiment'), eno <- EnoNew(sampleData$mod[1, 1, , 1, 2, 3]) print(eno) -} -\references{ -Guemas V, Auger L, Doblas-Reyes FJ, Rust H, Ribes A, 2014, Dependencies in - Statistical Hypothesis Tests for Climate Time Series. Bulletin of the - American Meteorological Society, 95 (11), 1666-1667. } \author{ History:\cr 0.1 - 2012-06 (V. Guemas, \email{virginie.guemas at ic3.cat}) - Original code\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens at ic3.cat}) - Formatting to CRAN } +\references{ +Guemas V, Auger L, Doblas-Reyes FJ, Rust H, Ribes A, 2014, Dependencies in + Statistical Hypothesis Tests for Climate Time Series. Bulletin of the + American Meteorological Society, 95 (11), 1666-1667. +} \keyword{datagen} + diff --git a/man/Filter.Rd b/man/Filter.Rd index 21807f5d..3e40f105 100644 --- a/man/Filter.Rd +++ b/man/Filter.Rd @@ -48,3 +48,4 @@ History:\cr 1.0 - 2012-02 (N. Manubens, \email{nicolau.manubens at ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/FitAcfCoef.Rd b/man/FitAcfCoef.Rd index 6de266e5..6ca51444 100644 --- a/man/FitAcfCoef.Rd +++ b/man/FitAcfCoef.Rd @@ -38,3 +38,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/FitAutocor.Rd b/man/FitAutocor.Rd index 2d623603..ff3ab943 100644 --- a/man/FitAutocor.Rd +++ b/man/FitAutocor.Rd @@ -35,3 +35,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/GenSeries.Rd b/man/GenSeries.Rd index 549b259e..9a49ed9d 100644 --- a/man/GenSeries.Rd +++ b/man/GenSeries.Rd @@ -34,3 +34,4 @@ History:\cr 1.0 - 2012-04 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/Histo2Hindcast.Rd b/man/Histo2Hindcast.Rd index 0f9bd18b..7000628a 100644 --- a/man/Histo2Hindcast.Rd +++ b/man/Histo2Hindcast.Rd @@ -79,3 +79,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/IniListDims.Rd b/man/IniListDims.Rd index 71369945..422a4c76 100644 --- a/man/IniListDims.Rd +++ b/man/IniListDims.Rd @@ -39,3 +39,4 @@ History:\cr 1.1 - 2015-03 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Improved } \keyword{datagen} + diff --git a/man/InsertDim.Rd b/man/InsertDim.Rd index e7e50d14..4cdc5377 100644 --- a/man/InsertDim.Rd +++ b/man/InsertDim.Rd @@ -34,3 +34,4 @@ History:\cr 1.1 - 2015-03 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Improvements } \keyword{datagen} + diff --git a/man/LeapYear.Rd b/man/LeapYear.Rd index 7504a27e..12b02b49 100644 --- a/man/LeapYear.Rd +++ b/man/LeapYear.Rd @@ -27,3 +27,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/Load.Rd b/man/Load.Rd index 6554f58b..c721e613 100644 --- a/man/Load.Rd +++ b/man/Load.Rd @@ -4,36 +4,15 @@ \alias{Load} \title{Loads Experimental And Observational Data} \usage{ -Load( - var, - exp = NULL, - obs = NULL, - sdates, - nmember = NULL, - nmemberobs = NULL, - nleadtime = NULL, - leadtimemin = 1, - leadtimemax = NULL, - storefreq = "monthly", - sampleperiod = 1, - lonmin = 0, - lonmax = 360, - latmin = -90, - latmax = 90, - output = "areave", - method = "conservative", - grid = NULL, - maskmod = vector("list", 15), - maskobs = vector("list", 15), - configfile = NULL, - varmin = NULL, - varmax = NULL, - silent = FALSE, - nprocs = NULL, - dimnames = NULL, - remapcells = 2, - path_glob_permissive = "partial" -) +Load(var, exp = NULL, obs = NULL, sdates, nmember = NULL, + nmemberobs = NULL, nleadtime = NULL, leadtimemin = 1, + leadtimemax = NULL, storefreq = "monthly", sampleperiod = 1, + lonmin = 0, lonmax = 360, latmin = -90, latmax = 90, + output = "areave", method = "conservative", grid = NULL, + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, silent = FALSE, + nprocs = NULL, dimnames = NULL, remapcells = 2, + path_glob_permissive = "partial") } \arguments{ \item{var}{Short name of the variable to load. It should coincide with the @@ -904,3 +883,4 @@ History:\cr 1.4 - 2016-01 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Added subsetting capabilities } \keyword{datagen} + diff --git a/man/Mean1Dim.Rd b/man/Mean1Dim.Rd index 6b45e1a7..613fc468 100644 --- a/man/Mean1Dim.Rd +++ b/man/Mean1Dim.Rd @@ -36,3 +36,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to R CRAN } \keyword{datagen} + diff --git a/man/MeanListDim.Rd b/man/MeanListDim.Rd index 2fdf8981..98e07c8e 100644 --- a/man/MeanListDim.Rd +++ b/man/MeanListDim.Rd @@ -33,3 +33,4 @@ History:\cr 1.1 - 2015-03 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Improved memory usage } \keyword{datagen} + diff --git a/man/NAO.Rd b/man/NAO.Rd index 34f36339..24d58830 100644 --- a/man/NAO.Rd +++ b/man/NAO.Rd @@ -4,14 +4,8 @@ \alias{NAO} \title{Computes the North Atlantic Oscillation (NAO) Index} \usage{ -NAO( - ano_exp = NULL, - ano_obs = NULL, - lon, - lat, - ftime_average = 2:4, - obsproj = TRUE -) +NAO(ano_exp = NULL, ano_obs = NULL, lon, lat, ftime_average = 2:4, + obsproj = TRUE) } \arguments{ \item{ano_exp}{Array of North Atlantic SLP (20N-80N, 80W-40E) forecast @@ -119,11 +113,6 @@ PlotBoxWhisker(nao$NAO_exp, nao$NAO_obs, "NAO index, DJF", "NAO index (PC1) TOS" } } -\references{ -Doblas-Reyes, F.J., Pavan, V. and Stephenson, D. (2003). The skill of - multi-model seasonal forecasts of the wintertime North Atlantic Oscillation. - Climate Dynamics, 21, 501-514. DOI: 10.1007/s00382-003-0350-4 -} \author{ History:\cr 0.1 - 2013-08 (F. Lienert, \email{flienert@ic3.cat}) - Original code\cr @@ -138,4 +127,10 @@ History:\cr 1.0 - 2016-03 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Formatted to CRAN } +\references{ +Doblas-Reyes, F.J., Pavan, V. and Stephenson, D. (2003). The skill of + multi-model seasonal forecasts of the wintertime North Atlantic Oscillation. + Climate Dynamics, 21, 501-514. DOI: 10.1007/s00382-003-0350-4 +} \keyword{datagen} + diff --git a/man/Plot2VarsVsLTime.Rd b/man/Plot2VarsVsLTime.Rd index 11af98a7..8ba44e4e 100644 --- a/man/Plot2VarsVsLTime.Rd +++ b/man/Plot2VarsVsLTime.Rd @@ -4,30 +4,12 @@ \alias{Plot2VarsVsLTime} \title{Plot Two Scores With Confidence Intervals In A Common Plot} \usage{ -Plot2VarsVsLTime( - var1, - var2, - toptitle = "", - ytitle = "", - monini = 1, - freq = 12, - nticks = NULL, - limits = NULL, - listexp = c("exp1", "exp2", "exp3"), - listvars = c("var1", "var2"), - biglab = FALSE, - hlines = NULL, - leg = TRUE, - siglev = FALSE, - sizetit = 1, - show_conf = TRUE, - fileout = "output_plot2varsvsltime.eps", - width = 8, - height = 5, - size_units = "in", - res = 100, - ... -) +Plot2VarsVsLTime(var1, var2, toptitle = "", ytitle = "", monini = 1, + freq = 12, nticks = NULL, limits = NULL, listexp = c("exp1", "exp2", + "exp3"), listvars = c("var1", "var2"), biglab = FALSE, hlines = NULL, + leg = TRUE, siglev = FALSE, sizetit = 1, show_conf = TRUE, + fileout = "output_plot2varsvsltime.eps", width = 8, height = 5, + size_units = "in", res = 100, ...) } \arguments{ \item{var1}{Matrix of dimensions (nexp/nmod, nltime).} @@ -138,3 +120,4 @@ History:\cr - Original code } \keyword{dynamic} + diff --git a/man/PlotACC.Rd b/man/PlotACC.Rd index 289fbf17..fc66200a 100644 --- a/man/PlotACC.Rd +++ b/man/PlotACC.Rd @@ -4,27 +4,11 @@ \alias{PlotACC} \title{Plot Plumes/Timeseries Of Anomaly Correlation Coefficients} \usage{ -PlotACC( - ACC, - sdates, - toptitle = "", - sizetit = 1, - ytitle = "", - limits = NULL, - legends = NULL, - freq = 12, - biglab = FALSE, - fill = FALSE, - linezero = FALSE, - points = TRUE, - vlines = NULL, - fileout = "output_PlotACC.eps", - width = 8, - height = 5, - size_units = "in", - res = 100, - ... -) +PlotACC(ACC, sdates, toptitle = "", sizetit = 1, ytitle = "", + limits = NULL, legends = NULL, freq = 12, biglab = FALSE, + fill = FALSE, linezero = FALSE, points = TRUE, vlines = NULL, + fileout = "output_PlotACC.eps", width = 8, height = 5, + size_units = "in", res = 100, ...) } \arguments{ \item{ACC}{ACC matrix with with dimensions:\cr @@ -138,3 +122,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{dynamic} + diff --git a/man/PlotAno.Rd b/man/PlotAno.Rd index 2ff2c46c..dd059310 100644 --- a/man/PlotAno.Rd +++ b/man/PlotAno.Rd @@ -4,30 +4,12 @@ \alias{PlotAno} \title{Plot Raw Or Smoothed Anomalies} \usage{ -PlotAno( - exp_ano, - obs_ano = NULL, - sdates, - toptitle = rep("", 15), - ytitle = rep("", 15), - limits = NULL, - legends = NULL, - freq = 12, - biglab = FALSE, - fill = TRUE, - memb = TRUE, - ensmean = TRUE, - linezero = FALSE, - points = FALSE, - vlines = NULL, - sizetit = 1, - fileout = paste0("output", 1:5, "_plotano.eps"), - width = 8, - height = 5, - size_units = "in", - res = 100, - ... -) +PlotAno(exp_ano, obs_ano = NULL, sdates, toptitle = rep("", 15), + ytitle = rep("", 15), limits = NULL, legends = NULL, freq = 12, + biglab = FALSE, fill = TRUE, memb = TRUE, ensmean = TRUE, + linezero = FALSE, points = FALSE, vlines = NULL, sizetit = 1, + fileout = paste0("output", 1:5, "_plotano.eps"), width = 8, height = 5, + size_units = "in", res = 100, ...) } \arguments{ \item{exp_ano}{Array containing the experimental data:\cr @@ -127,3 +109,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{dynamic} + diff --git a/man/PlotBoxWhisker.Rd b/man/PlotBoxWhisker.Rd index 9d602103..a536686b 100644 --- a/man/PlotBoxWhisker.Rd +++ b/man/PlotBoxWhisker.Rd @@ -4,24 +4,10 @@ \alias{PlotBoxWhisker} \title{Box-And-Whisker Plot of Time Series with Ensemble Distribution} \usage{ -PlotBoxWhisker( - exp, - obs, - toptitle = "", - ytitle = "", - monini = 1, - yearini = 0, - freq = 1, - expname = "exp 1", - obsname = "obs 1", - drawleg = TRUE, - fileout = "output_PlotBoxWhisker.ps", - width = 8, - height = 5, - size_units = "in", - res = 100, - ... -) +PlotBoxWhisker(exp, obs, toptitle = "", ytitle = "", monini = 1, + yearini = 0, freq = 1, expname = "exp 1", obsname = "obs 1", + drawleg = TRUE, fileout = "output_PlotBoxWhisker.ps", width = 8, + height = 5, size_units = "in", res = 100, ...) } \arguments{ \item{exp}{Forecast array of multi-member time series, e.g., the NAO index @@ -133,9 +119,6 @@ PlotBoxWhisker(nao$NAO_exp, nao$NAO_obs, "NAO index, DJF", "NAO index (PC1) TOS" monini = 12, yearini = 1985, freq = 1, "Exp. A", "Obs. X") } -} -\seealso{ -EOF, ProjectField, NAO } \author{ History:\cr @@ -144,4 +127,8 @@ History:\cr normalization for sake of clarity. 1.0 - 2016-03 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Formatting to R CRAN } +\seealso{ +EOF, ProjectField, NAO +} \keyword{datagen} + diff --git a/man/PlotClim.Rd b/man/PlotClim.Rd index f4fd7e1a..7ee001ee 100644 --- a/man/PlotClim.Rd +++ b/man/PlotClim.Rd @@ -4,26 +4,11 @@ \alias{PlotClim} \title{Plots Climatologies} \usage{ -PlotClim( - exp_clim, - obs_clim = NULL, - toptitle = "", - ytitle = "", - monini = 1, - freq = 12, - limits = NULL, - listexp = c("exp1", "exp2", "exp3"), - listobs = c("obs1", "obs2", "obs3"), - biglab = FALSE, - leg = TRUE, - sizetit = 1, - fileout = "output_plotclim.eps", - width = 8, - height = 5, - size_units = "in", - res = 100, - ... -) +PlotClim(exp_clim, obs_clim = NULL, toptitle = "", ytitle = "", + monini = 1, freq = 12, limits = NULL, listexp = c("exp1", "exp2", + "exp3"), listobs = c("obs1", "obs2", "obs3"), biglab = FALSE, + leg = TRUE, sizetit = 1, fileout = "output_plotclim.eps", width = 8, + height = 5, size_units = "in", res = 100, ...) } \arguments{ \item{exp_clim}{Matrix containing the experimental data with dimensions:\cr @@ -102,3 +87,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/PlotEquiMap.Rd b/man/PlotEquiMap.Rd index c9db45b5..cb33fc60 100644 --- a/man/PlotEquiMap.Rd +++ b/man/PlotEquiMap.Rd @@ -4,72 +4,25 @@ \alias{PlotEquiMap} \title{Maps A Two-Dimensional Variable On A Cylindrical Equidistant Projection} \usage{ -PlotEquiMap( - var, - lon, - lat, - varu = NULL, - varv = NULL, - toptitle = NULL, - sizetit = NULL, - units = NULL, - brks = NULL, - cols = NULL, - bar_limits = NULL, - triangle_ends = NULL, - col_inf = NULL, - col_sup = NULL, - colNA = NULL, - color_fun = clim.palette(), - square = TRUE, - filled.continents = NULL, - coast_color = NULL, - coast_width = 1, - contours = NULL, - brks2 = NULL, - contour_lwd = 0.5, - contour_color = "black", - contour_lty = 1, - contour_label_scale = 1, - dots = NULL, - dot_symbol = 4, - dot_size = 1, - arr_subsamp = floor(length(lon)/30), - arr_scale = 1, - arr_ref_len = 15, - arr_units = "m/s", - arr_scale_shaft = 1, - arr_scale_shaft_angle = 1, - axelab = TRUE, - labW = FALSE, - intylat = 20, - intxlon = 20, - axes_tick_scale = 1, - axes_label_scale = 1, - drawleg = TRUE, - subsampleg = NULL, - bar_extra_labels = NULL, - draw_bar_ticks = TRUE, - draw_separators = FALSE, - triangle_ends_scale = 1, - bar_label_digits = 4, - bar_label_scale = 1, - units_scale = 1, - bar_tick_scale = 1, - bar_extra_margin = rep(0, 4), - boxlim = NULL, - boxcol = "purple2", - boxlwd = 5, - margin_scale = rep(1, 4), - title_scale = 1, - numbfig = NULL, - fileout = NULL, - width = 8, - height = 5, - size_units = "in", - res = 100, - ... -) +PlotEquiMap(var, lon, lat, varu = NULL, varv = NULL, toptitle = NULL, + sizetit = NULL, units = NULL, brks = NULL, cols = NULL, + bar_limits = NULL, triangle_ends = NULL, col_inf = NULL, + col_sup = NULL, colNA = NULL, color_fun = clim.palette(), + square = TRUE, filled.continents = NULL, coast_color = NULL, + coast_width = 1, contours = NULL, brks2 = NULL, contour_lwd = 0.5, + contour_color = "black", contour_lty = 1, contour_label_scale = 1, + dots = NULL, dot_symbol = 4, dot_size = 1, + arr_subsamp = floor(length(lon)/30), arr_scale = 1, arr_ref_len = 15, + arr_units = "m/s", arr_scale_shaft = 1, arr_scale_shaft_angle = 1, + axelab = TRUE, labW = FALSE, intylat = 20, intxlon = 20, + axes_tick_scale = 1, axes_label_scale = 1, drawleg = TRUE, + subsampleg = NULL, bar_extra_labels = NULL, draw_bar_ticks = TRUE, + draw_separators = FALSE, triangle_ends_scale = 1, bar_label_digits = 4, + bar_label_scale = 1, units_scale = 1, bar_tick_scale = 1, + bar_extra_margin = rep(0, 4), boxlim = NULL, boxcol = "purple2", + boxlwd = 5, margin_scale = rep(1, 4), title_scale = 1, numbfig = NULL, + fileout = NULL, width = 8, height = 5, size_units = "in", res = 100, + ...) } \arguments{ \item{var}{Array with the values at each cell of a grid on a regular @@ -335,3 +288,4 @@ History:\cr and adapted to new ColorBar. } \keyword{dynamic} + diff --git a/man/PlotLayout.Rd b/man/PlotLayout.Rd index 3cb81d15..e4cf4ecf 100644 --- a/man/PlotLayout.Rd +++ b/man/PlotLayout.Rd @@ -4,52 +4,20 @@ \alias{PlotLayout} \title{Arrange and Fill Multi-Pannel Layouts With Optional Colour Bar} \usage{ -PlotLayout( - fun, - plot_dims, - var, - ..., - special_args = NULL, - nrow = NULL, - ncol = NULL, - toptitle = NULL, - row_titles = NULL, - col_titles = NULL, - bar_scale = 1, - title_scale = 1, - title_margin_scale = 1, - title_left_shift_scale = 1, - subtitle_scale = 1, - subtitle_margin_scale = 1, - brks = NULL, - cols = NULL, - drawleg = "S", - titles = NULL, - subsampleg = NULL, - bar_limits = NULL, - triangle_ends = NULL, - col_inf = NULL, - col_sup = NULL, - color_fun = clim.colors, - draw_bar_ticks = TRUE, - draw_separators = FALSE, - triangle_ends_scale = 1, - bar_extra_labels = NULL, - units = NULL, - units_scale = 1, - bar_label_scale = 1, - bar_tick_scale = 1, - bar_extra_margin = rep(0, 4), - bar_left_shift_scale = 1, - bar_label_digits = 4, - extra_margin = rep(0, 4), - fileout = NULL, - width = NULL, - height = NULL, - size_units = "in", - res = 100, - close_device = TRUE -) +PlotLayout(fun, plot_dims, var, ..., special_args = NULL, nrow = NULL, + ncol = NULL, toptitle = NULL, row_titles = NULL, col_titles = NULL, + bar_scale = 1, title_scale = 1, title_margin_scale = 1, + title_left_shift_scale = 1, subtitle_scale = 1, + subtitle_margin_scale = 1, brks = NULL, cols = NULL, drawleg = "S", + titles = NULL, subsampleg = NULL, bar_limits = NULL, + triangle_ends = NULL, col_inf = NULL, col_sup = NULL, + color_fun = clim.colors, draw_bar_ticks = TRUE, draw_separators = FALSE, + triangle_ends_scale = 1, bar_extra_labels = NULL, units = NULL, + units_scale = 1, bar_label_scale = 1, bar_tick_scale = 1, + bar_extra_margin = rep(0, 4), bar_left_shift_scale = 1, + bar_label_digits = 4, extra_margin = rep(0, 4), fileout = NULL, + width = NULL, height = NULL, size_units = "in", res = 100, + close_device = TRUE) } \arguments{ \item{fun}{Plot function (or name of the function) to be called on the @@ -80,12 +48,6 @@ applied to each of them. NAs can be passed to the list: a NA will yield a blank cell in the layout, which can be populated after (see .SwitchToFigure).} -\item{\dots}{Parameters to be sent to the plotting function 'fun'. If -multiple arrays are provided in 'var' and multiple functions are provided -in 'fun', the parameters provided through \dots will be sent to all the -plot functions, as common parameters. To specify concrete arguments for -each of the plot functions see parameter 'special_args'.} - \item{special_args}{List of sub-lists, each sub-list having specific extra arguments for each of the plot functions provided in 'fun'. If you want to fix a different value for each plot in the layout you can do so by @@ -202,6 +164,12 @@ the layout and a 'fileout' has been specified. This is useful to avoid closing the device when saving the layout into a file and willing to add extra elements or figures. Takes TRUE by default. Disregarded if no 'fileout' has been specified.} + +\item{\dots}{Parameters to be sent to the plotting function 'fun'. If +multiple arrays are provided in 'var' and multiple functions are provided +in 'fun', the parameters provided through \dots will be sent to all the +plot functions, as common parameters. To specify concrete arguments for +each of the plot functions see parameter 'special_args'.} } \value{ \item{brks}{ @@ -281,3 +249,4 @@ History:\cr 0.1 - 2016-08 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Original code } \keyword{dynamic} + diff --git a/man/PlotMatrix.Rd b/man/PlotMatrix.Rd index 88458856..70c1211e 100644 --- a/man/PlotMatrix.Rd +++ b/man/PlotMatrix.Rd @@ -4,28 +4,12 @@ \alias{PlotMatrix} \title{Function to convert any numerical table to a grid of coloured squares.} \usage{ -PlotMatrix( - var, - brks = NULL, - cols = NULL, - toptitle = NULL, - title.color = "royalblue4", - xtitle = NULL, - ytitle = NULL, - xlabels = NULL, - xvert = FALSE, - ylabels = NULL, - line = 3, - figure.width = 1, - legend = TRUE, - legend.width = 0.15, - xlab_dist = NULL, - ylab_dist = NULL, - fileout = NULL, - size_units = "px", - res = 100, - ... -) +PlotMatrix(var, brks = NULL, cols = NULL, toptitle = NULL, + title.color = "royalblue4", xtitle = NULL, ytitle = NULL, + xlabels = NULL, xvert = FALSE, ylabels = NULL, line = 3, + figure.width = 1, legend = TRUE, legend.width = 0.15, + xlab_dist = NULL, ylab_dist = NULL, fileout = NULL, size_units = "px", + res = 100, ...) } \arguments{ \item{var}{A numerical matrix containing the values to be displayed in a @@ -109,3 +93,4 @@ PlotMatrix(var = matrix(rnorm(n = 120, mean = 0.3), 10, 12), xlabels = c("Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec")) } + diff --git a/man/PlotSection.Rd b/man/PlotSection.Rd index 3dbe4fa1..f7447319 100644 --- a/man/PlotSection.Rd +++ b/man/PlotSection.Rd @@ -4,26 +4,10 @@ \alias{PlotSection} \title{Plots A Vertical Section} \usage{ -PlotSection( - var, - horiz, - depth, - toptitle = "", - sizetit = 1, - units = "", - brks = NULL, - cols = NULL, - axelab = TRUE, - intydep = 200, - intxhoriz = 20, - drawleg = TRUE, - fileout = NULL, - width = 8, - height = 5, - size_units = "in", - res = 100, - ... -) +PlotSection(var, horiz, depth, toptitle = "", sizetit = 1, units = "", + brks = NULL, cols = NULL, axelab = TRUE, intydep = 200, + intxhoriz = 20, drawleg = TRUE, fileout = NULL, width = 8, + height = 5, size_units = "in", res = 100, ...) } \arguments{ \item{var}{Matrix to plot with (longitude/latitude, depth) dimensions.} @@ -91,3 +75,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{dynamic} + diff --git a/man/PlotStereoMap.Rd b/man/PlotStereoMap.Rd index 7559f6f7..3bf2f69c 100644 --- a/man/PlotStereoMap.Rd +++ b/man/PlotStereoMap.Rd @@ -4,53 +4,19 @@ \alias{PlotStereoMap} \title{Maps A Two-Dimensional Variable On A Polar Stereographic Projection} \usage{ -PlotStereoMap( - var, - lon, - lat, - latlims = c(60, 90), - toptitle = NULL, - sizetit = NULL, - units = NULL, - brks = NULL, - cols = NULL, - bar_limits = NULL, - triangle_ends = NULL, - col_inf = NULL, - col_sup = NULL, - colNA = NULL, - color_fun = clim.palette(), - filled.continents = FALSE, - coast_color = NULL, - coast_width = 1, - dots = NULL, - dot_symbol = 4, - dot_size = 0.8, - intlat = 10, - drawleg = TRUE, - subsampleg = NULL, - bar_extra_labels = NULL, - draw_bar_ticks = TRUE, - draw_separators = FALSE, - triangle_ends_scale = 1, - bar_label_digits = 4, - bar_label_scale = 1, - units_scale = 1, - bar_tick_scale = 1, - bar_extra_margin = rep(0, 4), - boxlim = NULL, - boxcol = "purple2", - boxlwd = 5, - margin_scale = rep(1, 4), - title_scale = 1, - numbfig = NULL, - fileout = NULL, - width = 6, - height = 5, - size_units = "in", - res = 100, - ... -) +PlotStereoMap(var, lon, lat, latlims = c(60, 90), toptitle = NULL, + sizetit = NULL, units = NULL, brks = NULL, cols = NULL, + bar_limits = NULL, triangle_ends = NULL, col_inf = NULL, + col_sup = NULL, colNA = NULL, color_fun = clim.palette(), + filled.continents = FALSE, coast_color = NULL, coast_width = 1, + dots = NULL, dot_symbol = 4, dot_size = 0.8, intlat = 10, + drawleg = TRUE, subsampleg = NULL, bar_extra_labels = NULL, + draw_bar_ticks = TRUE, draw_separators = FALSE, triangle_ends_scale = 1, + bar_label_digits = 4, bar_label_scale = 1, units_scale = 1, + bar_tick_scale = 1, bar_extra_margin = rep(0, 4), boxlim = NULL, + boxcol = "purple2", boxlwd = 5, margin_scale = rep(1, 4), + title_scale = 1, numbfig = NULL, fileout = NULL, width = 6, + height = 5, size_units = "in", res = 100, ...) } \arguments{ \item{var}{Array with the values at each cell of a grid on a regular @@ -226,3 +192,4 @@ History:\cr border and Constantin boxes. } \keyword{dynamic} + diff --git a/man/PlotVsLTime.Rd b/man/PlotVsLTime.Rd index 402414d1..2c71e9fa 100644 --- a/man/PlotVsLTime.Rd +++ b/man/PlotVsLTime.Rd @@ -4,29 +4,12 @@ \alias{PlotVsLTime} \title{Plots A Score Along The Forecast Time With Its Confidence Interval} \usage{ -PlotVsLTime( - var, - toptitle = "", - ytitle = "", - monini = 1, - freq = 12, - nticks = NULL, - limits = NULL, - listexp = c("exp1", "exp2", "exp3"), - listobs = c("obs1", "obs2", "obs3"), - biglab = FALSE, - hlines = NULL, - leg = TRUE, - siglev = FALSE, - sizetit = 1, - show_conf = TRUE, - fileout = "output_plotvsltime.eps", - width = 8, - height = 5, - size_units = "in", - res = 100, - ... -) +PlotVsLTime(var, toptitle = "", ytitle = "", monini = 1, freq = 12, + nticks = NULL, limits = NULL, listexp = c("exp1", "exp2", "exp3"), + listobs = c("obs1", "obs2", "obs3"), biglab = FALSE, hlines = NULL, + leg = TRUE, siglev = FALSE, sizetit = 1, show_conf = TRUE, + fileout = "output_plotvsltime.eps", width = 8, height = 5, + size_units = "in", res = 100, ...) } \arguments{ \item{var}{Matrix containing any Prediction Score with dimensions:\cr @@ -150,3 +133,4 @@ History:\cr 1.0 - 2013-11 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{dynamic} + diff --git a/man/ProbBins.Rd b/man/ProbBins.Rd index 56cf0511..6df49cc2 100644 --- a/man/ProbBins.Rd +++ b/man/ProbBins.Rd @@ -4,15 +4,8 @@ \alias{ProbBins} \title{Computes Probabilistic Information of a Forecast Relative to a Threshold or a Quantile} \usage{ -ProbBins( - ano, - fcyr = "all", - thr, - quantile = TRUE, - posdates = 3, - posdim = 2, - compPeriod = "Full period" -) +ProbBins(ano, fcyr = "all", thr, quantile = TRUE, posdates = 3, + posdim = 2, compPeriod = "Full period") } \arguments{ \item{ano}{Array of anomalies from Ano().\cr @@ -93,3 +86,4 @@ History:\cr 2.1 - 2017-02 (V. Torralba and N. Manubens, \email{veronica.torralba@bsc.es}) - Fix bug with cross-validation } \keyword{datagen} + diff --git a/man/ProjectField.Rd b/man/ProjectField.Rd index 7dd77123..7b2e9e93 100644 --- a/man/ProjectField.Rd +++ b/man/ProjectField.Rd @@ -74,9 +74,6 @@ for (i in 1:dim(sampleData$mod)[2]) { ylim = c(-15000, 15000)) } -} -\seealso{ -EOF, NAO, PlotBoxWhisker } \author{ History:\cr @@ -108,4 +105,8 @@ multiplied by W. Getting input dimensions. 1.0 - 2016-03 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Formatting to R CRAN\cr (J.-P. Baudouin, \email{jean.baudouin@bsc.es}) - Example code and testing } +\seealso{ +EOF, NAO, PlotBoxWhisker +} \keyword{datagen} + diff --git a/man/RMS.Rd b/man/RMS.Rd index 877300fa..715f84d1 100644 --- a/man/RMS.Rd +++ b/man/RMS.Rd @@ -1,20 +1,12 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/RMS.R \name{RMS} -\alias{RMS} \alias{.RMS} +\alias{RMS} \title{Computes Root Mean Square Error} \usage{ -RMS( - var_exp, - var_obs, - posloop = 1, - posRMS = 2, - compROW = NULL, - limits = NULL, - siglev = 0.95, - conf = TRUE -) +RMS(var_exp, var_obs, posloop = 1, posRMS = 2, compROW = NULL, + limits = NULL, siglev = 0.95, conf = TRUE) .RMS(exp, obs, siglev = 0.95, conf = TRUE) } @@ -127,3 +119,4 @@ History:\cr 1.1 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() } \keyword{datagen} + diff --git a/man/RMSSS.Rd b/man/RMSSS.Rd index 8bc0d803..f602702b 100644 --- a/man/RMSSS.Rd +++ b/man/RMSSS.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/RMSSS.R \name{RMSSS} -\alias{RMSSS} \alias{.RMSSS} +\alias{RMSSS} \title{Computes Root Mean Square Skill Score} \usage{ RMSSS(var_exp, var_obs, posloop = 1, posRMS = 2, pval = TRUE) @@ -93,3 +93,4 @@ History:\cr 1.1 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() } \keyword{datagen} + diff --git a/man/RatioRMS.Rd b/man/RatioRMS.Rd index b1abbca1..44d13dbb 100644 --- a/man/RatioRMS.Rd +++ b/man/RatioRMS.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/RatioRMS.R \name{RatioRMS} -\alias{RatioRMS} \alias{.RatioRMS} +\alias{RatioRMS} \title{Computes the Ratio Between The RMSE of Two Experiments} \usage{ RatioRMS(var_exp1, var_exp2, var_obs, posRMS = 1, pval = TRUE) @@ -121,3 +121,4 @@ History:\cr 1.1 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() } \keyword{datagen} + diff --git a/man/RatioSDRMS.Rd b/man/RatioSDRMS.Rd index 97efe6da..09484740 100644 --- a/man/RatioSDRMS.Rd +++ b/man/RatioSDRMS.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/RatioSDRMS.R \name{RatioSDRMS} -\alias{RatioSDRMS} \alias{.RatioSDRMS} +\alias{RatioSDRMS} \title{Computes the ratio between the ensemble spread and RMSE} \usage{ RatioSDRMS(var_exp, var_obs, pval = TRUE) @@ -86,3 +86,4 @@ History:\cr 1.1 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapted to veriApply() } \keyword{datagen} + diff --git a/man/Regression.Rd b/man/Regression.Rd index a3763150..55646576 100644 --- a/man/Regression.Rd +++ b/man/Regression.Rd @@ -73,3 +73,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/SVD.Rd b/man/SVD.Rd index bbbcaa49..698df952 100644 --- a/man/SVD.Rd +++ b/man/SVD.Rd @@ -4,15 +4,8 @@ \alias{SVD} \title{Single Value Decomposition (Maximum Covariance Analysis)} \usage{ -SVD( - vary, - varx, - laty = NULL, - latx = NULL, - nmodes = 15, - corr = FALSE, - weight = TRUE -) +SVD(vary, varx, laty = NULL, latx = NULL, nmodes = 15, corr = FALSE, + weight = TRUE) } \arguments{ \item{vary}{Array containing the anomalies field for the predictor. The @@ -124,3 +117,4 @@ History:\cr 1.0 - 2016-04 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Formatting to R CRAN } \keyword{datagen} + diff --git a/man/Season.Rd b/man/Season.Rd index 76f64053..cc97941c 100644 --- a/man/Season.Rd +++ b/man/Season.Rd @@ -54,3 +54,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/SelIndices.Rd b/man/SelIndices.Rd index ab3ca88e..dbf34da2 100644 --- a/man/SelIndices.Rd +++ b/man/SelIndices.Rd @@ -37,3 +37,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/Smoothing.Rd b/man/Smoothing.Rd index 492370e9..4fa9c596 100644 --- a/man/Smoothing.Rd +++ b/man/Smoothing.Rd @@ -47,3 +47,4 @@ History:\cr making it able to work on arrays of any number of dimensions. } \keyword{datagen} + diff --git a/man/Spectrum.Rd b/man/Spectrum.Rd index a3fce568..de5a2e5e 100644 --- a/man/Spectrum.Rd +++ b/man/Spectrum.Rd @@ -48,3 +48,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/Spread.Rd b/man/Spread.Rd index a9f3125b..f84cecf3 100644 --- a/man/Spread.Rd +++ b/man/Spread.Rd @@ -93,3 +93,4 @@ History:\cr 1.0 - 2013-09 (N. Manubens, \email{nicolau.manubens@ic3.cat}) - Formatting to CRAN } \keyword{datagen} + diff --git a/man/StatSeasAtlHurr.Rd b/man/StatSeasAtlHurr.Rd index 053698f7..9822eb90 100644 --- a/man/StatSeasAtlHurr.Rd +++ b/man/StatSeasAtlHurr.Rd @@ -66,6 +66,10 @@ hr_count <- StatSeasAtlHurr(atlano = AtlAno, hrvar = 'HR') print(hr_count$mean) +} +\author{ +History:\cr +0.1 - 2015-11 (Louis-Philippe Caron, \email{louis-philippe.caron@bsc.es}) - Original code } \references{ Villarini et al. (2010) Mon Wea Rev, 138, 2681-2705.\cr @@ -77,8 +81,5 @@ Caron, L.-P. et al. (2014) Multi-year prediction skill of Atlantic hurricane activity in CMIP5 decadal hindcasts. Climate Dynamics, 42, 2675-2690. doi:10.1007/s00382-013-1773-1. } -\author{ -History:\cr -0.1 - 2015-11 (Louis-Philippe Caron, \email{louis-philippe.caron@bsc.es}) - Original code -} \keyword{datagen} + diff --git a/man/Subset.Rd b/man/Subset.Rd index 570cd732..bccec4ac 100644 --- a/man/Subset.Rd +++ b/man/Subset.Rd @@ -45,3 +45,4 @@ PlotLayout(PlotEquiMap, c('lat', 'lon'), subset, } \keyword{datagen} + diff --git a/man/ToyModel.Rd b/man/ToyModel.Rd index 5eee0393..ca47b449 100644 --- a/man/ToyModel.Rd +++ b/man/ToyModel.Rd @@ -7,18 +7,8 @@ components of a forecast: (1) predictabiltiy (2) forecast error (3) non-stationarity and (4) ensemble generation. The forecast can be computed for real observations or observations generated artifically.} \usage{ -ToyModel( - alpha = 0.1, - beta = 0.4, - gamma = 1, - sig = 1, - trend = 0, - nstartd = 30, - nleadt = 4, - nmemb = 10, - obsini = NULL, - fxerr = NULL -) +ToyModel(alpha = 0.1, beta = 0.4, gamma = 1, sig = 1, trend = 0, + nstartd = 30, nleadt = 4, nmemb = 10, obsini = NULL, fxerr = NULL) } \arguments{ \item{alpha}{Predicabiltiy of the forecast on the observed residuals @@ -135,3 +125,4 @@ History:\cr 1.1 - 2016-02 (O.Bellprat) - Include security check for parameters } \keyword{datagen} + diff --git a/man/Trend.Rd b/man/Trend.Rd index b4e0ba36..3b7f7bfd 100644 --- a/man/Trend.Rd +++ b/man/Trend.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/Trend.R \name{Trend} -\alias{Trend} \alias{.Trend} +\alias{Trend} \title{Computes the Trend of the Ensemble Mean} \usage{ Trend(var, posTR = 2, interval = 1, siglev = 0.95, conf = TRUE) @@ -78,3 +78,4 @@ History:\cr 2.0 - 2017-02 (A. Hunter, \email{alasdair.hunter@bsc.es}) - Adapt to veriApply() } \keyword{datagen} + diff --git a/man/UltimateBrier.Rd b/man/UltimateBrier.Rd index 518a60cc..46fe124c 100644 --- a/man/UltimateBrier.Rd +++ b/man/UltimateBrier.Rd @@ -4,17 +4,9 @@ \alias{UltimateBrier} \title{Computes Brier Scores} \usage{ -UltimateBrier( - ano_exp, - ano_obs, - posdatasets = 1, - posmemb = 2, - posdates = 3, - quantile = TRUE, - thr = c(5/100, 95/100), - type = "BS", - decomposition = TRUE -) +UltimateBrier(ano_exp, ano_obs, posdatasets = 1, posmemb = 2, + posdates = 3, quantile = TRUE, thr = c(5/100, 95/100), type = "BS", + decomposition = TRUE) } \arguments{ \item{ano_exp}{Array of forecast anomalies, as provided by \code{Ano()}. @@ -132,3 +124,4 @@ History:\cr N. Manubens, \email{nicolau.manubens@bsc.es}) - First version } \keyword{datagen} + diff --git a/man/clim.palette.Rd b/man/clim.palette.Rd index e67994f8..95f8407c 100644 --- a/man/clim.palette.Rd +++ b/man/clim.palette.Rd @@ -1,8 +1,8 @@ % Generated by roxygen2: do not edit by hand % Please edit documentation in R/clim.palette.R \name{clim.palette} -\alias{clim.palette} \alias{clim.colors} +\alias{clim.palette} \title{Generate Climate Color Palettes} \usage{ clim.palette(palette = "bluered") @@ -35,3 +35,4 @@ History:\cr 0.0 - 2016-01 (N. Manubens, \email{nicolau.manubens@bsc.es}) - Original code. } \keyword{datagen} + diff --git a/man/s2dverification.Rd b/man/s2dverification.Rd index fe175f25..698fa4ed 100644 --- a/man/s2dverification.Rd +++ b/man/s2dverification.Rd @@ -26,14 +26,6 @@ Check an overview of the package functionalities and its modules at \url{https://earth.bsc.es/gitlab/es/s2dverification/wikis/home}. For more information load the package and check the help for each function or the documentation attached to the package. -} -\seealso{ -Useful links: -\itemize{ - \item \url{https://earth.bsc.es/gitlab/es/s2dverification/wikis/home} - \item Report bugs at \url{https://earth.bsc.es/gitlab/es/s2dverification/issues} -} - } \author{ Nicolau Manubens \email{nicolau.manubens@bsc.es} @@ -41,3 +33,4 @@ Nicolau Manubens \email{nicolau.manubens@bsc.es} \keyword{datagen} \keyword{dynamic} \keyword{package} + diff --git a/man/sampleDepthData.Rd b/man/sampleDepthData.Rd index 3292f5c6..974fe6bd 100644 --- a/man/sampleDepthData.Rd +++ b/man/sampleDepthData.Rd @@ -32,3 +32,4 @@ Its name within IC3 local database is 'i00k'. Nicolau Manubens \email{nicolau.manubens@bsc.es} } \keyword{data} + diff --git a/man/sampleMap.Rd b/man/sampleMap.Rd index 7286b8a6..d33ab829 100644 --- a/man/sampleMap.Rd +++ b/man/sampleMap.Rd @@ -47,3 +47,4 @@ Check the documentation on 'Load()' in the package 's2dverification' for more in Nicolau Manubens \email{nicolau.manubens@bsc.es} } \keyword{datasets} + diff --git a/man/sampleTimeSeries.Rd b/man/sampleTimeSeries.Rd index 4871a928..ce2c6395 100644 --- a/man/sampleTimeSeries.Rd +++ b/man/sampleTimeSeries.Rd @@ -51,3 +51,4 @@ Check the documentation on 'Load()' in the package 's2dverification' for more in Nicolau Manubens \email{nicolau.manubens@bsc.es} } \keyword{datasets} + -- GitLab From 4e1cfcdd18a4d2270e480290015483331681e644 Mon Sep 17 00:00:00 2001 From: aho Date: Wed, 21 Oct 2020 13:38:48 +0200 Subject: [PATCH 34/44] Fix example in Composite.R and update .Rd --- R/Composite.R | 3 ++- man/Composite.Rd | 11 ++++++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/R/Composite.R b/R/Composite.R index 90abb5ba..f6860497 100644 --- a/R/Composite.R +++ b/R/Composite.R @@ -69,11 +69,12 @@ #' #'filled.contour(Composite(var=f1, occ=occ2)$composite[,,1]) #' -#'Example with one missing composite (#3) in occ: +#'# Example with one missing composite (#3) in occ: #'data <- 1 : (4 * 5 * 6) #'dim(data) <- c(lon = 4, lat = 5, case = 6) #'occ <- c(1, 1, 2, 2, 3, 3) #'res <- Composite(data, occ, K = 4) +#' #'@importFrom stats sd pt #'@export Composite <- function(var, occ, lag = 0, eno = FALSE, K = NULL, fileout = NULL) { diff --git a/man/Composite.Rd b/man/Composite.Rd index 4e990020..3d9a3fd8 100644 --- a/man/Composite.Rd +++ b/man/Composite.Rd @@ -4,7 +4,7 @@ \alias{Composite} \title{Computes composites} \usage{ -Composite(var, occ, lag = 0, eno = FALSE, fileout = NULL) +Composite(var, occ, lag = 0, eno = FALSE, K = NULL, fileout = NULL) } \arguments{ \item{var}{3-dimensional array (x, y, time) containing the variable to @@ -23,6 +23,8 @@ use +2 occurrences (i.e., shifted 2 time steps forward). Default is lag = 0.} \item{eno}{For using the effective sample size (TRUE) or the total sample size (FALSE that is the default) for the number of degrees of freedom.} +\item{K}{numeric value indicating the maximum number of composites. By default (NULL), it takes the maximum value provided in occ.} + \item{fileout}{Name of the .sav output file (NULL is the default).} } \value{ @@ -76,6 +78,13 @@ occ2 <- rep(0, 30) occ2[c(3, 9, 15, 21)] <- 1 filled.contour(Composite(var=f1, occ=occ2)$composite[,,1]) + +# Example with one missing composite (#3) in occ: +data <- 1 : (4 * 5 * 6) +dim(data) <- c(lon = 4, lat = 5, case = 6) +occ <- c(1, 1, 2, 2, 3, 3) +res <- Composite(data, occ, K = 4) + } \author{ History: -- GitLab From fef8ff4adc6a516fba4f6c5e14ba9ad641cdaf3e Mon Sep 17 00:00:00 2001 From: nperez Date: Wed, 21 Oct 2020 20:36:08 +0200 Subject: [PATCH 35/44] Uses the first expas reference --- R/Load.R | 105 ++++++++++++++++++++++------------ tests/testthat/test-Load.R | 114 ++++++++++++++++++++++--------------- 2 files changed, 138 insertions(+), 81 deletions(-) diff --git a/R/Load.R b/R/Load.R index edb55eab..eec1e3a7 100644 --- a/R/Load.R +++ b/R/Load.R @@ -1443,6 +1443,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, looking_time <- .LoadDataFile(work_piecetime, explore_dims = TRUE, silent = silent) first_time_step_list <- c(first_time_step_list, list(looking_time$time_dim)) + print(first_time_step_list) } # If the dimensions of the output matrices are still to define, we try to read # the metadata of the data file that corresponds to the current iteration @@ -1538,6 +1539,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, jmember <- jmember + 1 } } else { + print("HERE") work_piece <- list(filename = .ConfigReplaceVariablesInString(quasi_final_path, replace_values), namevar = namevar, indices = c(1, 1, jsdate, jmod), nmember = nmember[jmod], leadtimes = leadtimes, mask = maskmod[[jmod]], @@ -1590,6 +1592,10 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, leadtimes <- seq(leadtimemin, leadtimemax, sampleperiod) } # If there are differences in the first time stamp in exp files: + print("INFO") + print(exp_work_pieces) + print("details") + print(leadtimemax) if (!is.null(exp)) { in_date <- lapply(first_time_step_list, function(x) { origin <- as.POSIXct( @@ -1612,7 +1618,34 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, if (max(unlist(in_date)) > 1) { leadtimes <- seq(exp_first_time_step, leadtimemax + max(unlist(in_date)) - 1, sampleperiod) - } + } + if (leadtimemin > 1 & length(in_date) > 1) { + lags <- lapply(in_date, function(x) {x - in_date[[1]]}) + new_leadtimemin <- lapply(lags, function(x) {leadtimemin - x}) + new_leadtimemax <- lapply(lags, function(x) {leadtimemax - x}) + jmod <- 2 + npieces <- length(exp_work_pieces)/nmod + while (jmod <= nmod) { + jpiece <- 1 + while (jpiece <= npieces) { + print(npieces * (jmod - 1) + jpiece) + exp_work_pieces[[npieces * (jmod - 1) + jpiece]]$leadtime <- + seq(new_leadtime[[jmod]], new_leadtimemax, sampleperiod) + } + } + } + print(exp_work_pieces) + lag <- 1 - in_date[[1]] + print(lag) + print(leadtimemin) + print(leadtimemax) + print(in_date) + leadtimes <- seq(leadtimemin - lag, leadtimemax #+ max(unlist(in_date)) + lag, + - lag, + sampleperiod) + exp_first_time_step <- leadtimemin - lag + print(leadtimes) + print(exp_first_time_step) } # Now we start iterating over observations. We try to find the output matrix # dimensions and we build anyway the work pieces corresponding to the observational @@ -1778,13 +1811,13 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, ## The first time step in exp could be different from sdate: if (jleadtime == 1 & !is.null(exp)) { - if (is.null(first_time_step_list[[1]])) { + if (is.null(first_time_step_list[[1]])) { stop("Check 'time' variable in the experimental files ", "since not units or first time step have been found.") } else { - if (exp_first_time_step > 1) { - day <- exp_first_time_step - } + if (in_date[[1]] > 1) { + day <- leadtimes[1] + } } } obs_file_indices <- seq(day, min(days_in_month, @@ -2230,37 +2263,37 @@ startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) number_ftime <- dim_obs[["ftime"]] } } - if (!is.null(exp)) { - if (any(in_date > 1) & length(in_date) > 1 & in_date[[1]] > 1) { - .warning(paste("There is at least one experiment with first timestamp in ", - "file one or more days ahead from the start date. The data ", - "could containg missing values.")) - pos_max <- max(unlist(in_date)) - 1 - empty_slice <- array(NA, c(ftime = 1, dim(mod_data[1,,,1,,]))) - empty_slice <- .aperm2(empty_slice, c(2, 3, 1, 4, 5)) - new_data <- lapply(1:length(in_date), function(x) { - pos <- in_date[[x]] - 1 - res <- mod_data[x,,,,,] - if (pos > 0) { - while (pos > 0) { - res <- abind(empty_slice, res, along = 3) - pos <- pos - 1 - } - } else { - while(pos < pos_max) { - res <- abind(res, empty_slice, along = 3) - pos <- pos + 1 - } - } - return(res) - }) - new_data <- abind(new_data, along = 6) - mod_data <- .aperm2(new_data, c(6,1,2,3,4,5)) - names(dim(mod_data)) <- names(dim_exp) - attr(mod_data, 'dimensions') <- names(dim_exp) - number_ftime <- dim(mod_data)[["ftime"]] - } - } + #if (!is.null(exp)) { + # if (any(in_date > 1) & length(in_date) > 1 & in_date[[1]] > 1) { + # .warning(paste("There is at least one experiment with first timestamp in ", + # "file one or more days ahead from the start date. The data ", + # "could containg missing values.")) + # pos_max <- max(unlist(in_date)) - 1 + # empty_slice <- array(NA, c(ftime = 1, dim(mod_data[1,,,1,,]))) + # empty_slice <- .aperm2(empty_slice, c(2, 3, 1, 4, 5)) + # new_data <- lapply(1:length(in_date), function(x) { + # pos <- in_date[[x]] - 1 + # res <- mod_data[x,,,,,] + # if (pos > 0) { + # while (pos > 0) { + # res <- abind(empty_slice, res, along = 3) + # pos <- pos - 1 + # } + # } else { + # while(pos < pos_max) { + # res <- abind(res, empty_slice, along = 3) + # pos <- pos + 1 + # } + # } + # return(res) + # }) + # new_data <- abind(new_data, along = 6) + # mod_data <- .aperm2(new_data, c(6,1,2,3,4,5)) + # names(dim(mod_data)) <- names(dim_exp) + # attr(mod_data, 'dimensions') <- names(dim_exp) + # number_ftime <- dim(mod_data)[["ftime"]] + # } + # } if (is.null(latitudes)) { lat <- 0 attr(lat, 'cdo_grid_name') <- 'none' diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index 57f62b0a..ce71f5b0 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -1,5 +1,19 @@ context("Testing Load with ECMWF System5c3s daily data") test_that("First time step is correctly interpreted:", { + s2dv_system5 <- s2dv::Load(var = 'prlr', + exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), + sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') + nmember = 5,leadtimemin = 1, + leadtimemax = NULL, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = NULL, nleadtime = NULL) system5 <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') @@ -14,7 +28,7 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = NULL, nleadtime = NULL) - + expect_equal(system5$mod, s2dv_system5$mod) data <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), @@ -53,11 +67,11 @@ test_that("First time step is correctly interpreted:", { expect_equal(data$mod, system5$mod) - obs <- Load(var = 'prlr', exp = NULL, + era5 <- Load(var = 'prlr', exp = NULL, obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), sdates = c('19931101', '19941101'), nmember = 1, leadtimemin = 1, - leadtimemax = 2, + leadtimemax = 215, storefreq = "daily", sampleperiod = 1, latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, output = 'lonlat', nprocs = 1, @@ -68,8 +82,8 @@ test_that("First time step is correctly interpreted:", { remapcells = 2, path_glob_permissive = 'partial', nmemberobs = 1, nleadtime = NULL) # The values of observation when loading exp and obs simultaneously corresponds to the second day of the observations in the file: - expect_equal(data$obs[1,1,1,1,,], obs$obs[1,1,1,2,,]) - expect_equal(data$obs[1,1,2,1,,], obs$obs[1,1,2,2,,]) + expect_equal(data$obs[1,1,1,,,], era5$obs[1,1,1,2:215,,]) + expect_equal(data$obs[1,1,2,,,], era5$obs[1,1,2,2:215,,]) # Test when 2 observational datasets are requested: @@ -77,7 +91,7 @@ test_that("First time step is correctly interpreted:", { exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc'), list(name = 'erainterim')), sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') - nmember = 5,leadtimemin = 1, + nmember = 5, leadtimemin = 1, leadtimemax = NULL, storefreq = "daily", sampleperiod = 1, latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, @@ -88,15 +102,19 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = NULL, nleadtime = NULL) - - expect_equal(data$obs[1,1,1,1,,], obs$obs[1,1,1,2,,]) - expect_equal(data$obs[1,1,2,1,,], obs$obs[1,1,2,2,,]) + expect_equal(dim(data$obs), c(dataset = 2, member = 1, sdate = 2, ftime = 214, + lat = 8, lon = 8)) + expect_equal(dim(data$mod), c(dataset = 1, member = 5, sdate = 2, ftime = 214, + lat = 8, lon = 8)) + expect_equal(sum(is.na(data$mod)), 0) + expect_equal(sum(is.na(data$obs)), 0) + expect_equal(data$obs[1,1,,,,], era5$obs[1,1,,2:215,,]) expect_equal(system5$mod, data$mod) eraint <- Load(var = 'prlr', exp = NULL, obs = list(list(name = 'erainterim')), sdates = c('19931101', '19941101'), nmember = 1, leadtimemin = 1, - leadtimemax = 2, + leadtimemax = 215, storefreq = "daily", sampleperiod = 1, latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, output = 'lonlat', nprocs = 1, @@ -106,8 +124,7 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = 1, nleadtime = NULL) - expect_equal(data$obs[2,1,1,1,,], eraint$obs[1,1,1,2,,]) - expect_equal(data$obs[2,1,2,1,,], eraint$obs[1,1,2,2,,]) + expect_equal(data$obs[2,1,,,,], eraint$obs[1,1,,2:215,,]) # Test for 2 experimental datasets data <- Load(var = 'prlr', @@ -126,49 +143,31 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = NULL, nleadtime = NULL) - + expect_equal(dim(data$obs), c(dataset = 1, member = 1, sdate = 2, ftime = 214, + lat = 8, lon = 8)) + expect_equal(dim(data$mod), c(dataset = 2, member = 5, sdate = 2, ftime = 214, + lat = 8, lon = 8)) expect_equal(sum(is.na(data$obs)), 0) - expect_equal(sum(is.na(data$mod[1,,,-1,,])), 0) - expect_equal(sum(is.na(data$mod[2,,,-215,,])), 0) - expect_equal(sum(is.na(data$mod[1,,,1,,])), 640) - expect_equal(sum(is.na(data$mod[2,,,215,,])), 640) - dates <- c(seq(as.POSIXct("1993-11-01", tz = 'UTC'), + expect_equal(sum(is.na(data$mod)), 0) + dates <- c(seq(as.POSIXct("1993-11-02", tz = 'UTC'), as.POSIXct("1994-06-03", tz = 'UTC'), "d"), - seq(as.POSIXct("1994-11-01", tz = 'UTC'), + seq(as.POSIXct("1994-11-02", tz = 'UTC'), as.POSIXct("1995-06-03", tz = 'UTC'), "d")) attributes(dates)$tzone <- 'UTC' expect_equal(data$Dates$start, dates) - dates <- c(seq(as.POSIXct("1993-11-02", tz = 'UTC'), + dates <- c(seq(as.POSIXct("1993-11-03", tz = 'UTC'), as.POSIXct("1994-06-04", tz = 'UTC'), "d"), - seq(as.POSIXct("1994-11-02", tz = 'UTC'), + seq(as.POSIXct("1994-11-03", tz = 'UTC'), as.POSIXct("1995-06-04", tz = 'UTC'), "d")) attributes(dates)$tzone <- 'UTC' expect_equal(data$Dates$end, dates) - - obs <- Load(var = 'prlr', exp = NULL, - obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), - sdates = c('19931101', '19941101'), - nmember = 1, leadtimemin = 1, - leadtimemax = 215, - storefreq = "daily", sampleperiod = 1, - latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, - output = 'lonlat', nprocs = 1, - method = 'conservative', grid = 'r360x181', - maskmod = vector("list", 15), maskobs = vector("list", 15), - configfile = NULL, varmin = NULL, varmax = NULL, - silent = FALSE, dimnames = NULL, - remapcells = 2, path_glob_permissive = 'partial', - nmemberobs = 1, nleadtime = NULL) - - expect_equal(dim(obs$obs), c(dataset = 1, member = 1, sdate = 2, ftime = 215, - lat = 8, lon = 8)) - expect_equal(obs$obs, data$obs) - expect_equal(system5$exp, data$exp[1,,,-1,,]) + expect_equal(data$obs[,,,,,], era5$obs[,,,2:215,,]) + expect_equal(system5$exp, data$exp[1,,,,,]) system4 <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS4', path = "/esarchive/exp/ecmwf/system4_m1/$STORE_FREQ$/$VAR_NAME$/$VAR_NAME$_$START_DATE$.nc")), sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') - nmember = 5,leadtimemin = 1, + nmember = 1, leadtimemin = 1, leadtimemax = NULL, storefreq = "daily", sampleperiod = 1, latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, @@ -180,8 +179,8 @@ test_that("First time step is correctly interpreted:", { remapcells = 2, path_glob_permissive = 'partial', nmemberobs = NULL, nleadtime = NULL) - expect_equal(system4$exp, data$exp[2,,,-215,,]) - expect_equal(system4$Dates$start, data$Dates$start) + expect_equal(system4$exp, data$exp[2,,,,,]) + expect_equal(system4$Dates$start[c(-1,-216)], data$Dates$start) # Test for 2 experimental datasets oposite order @@ -203,9 +202,13 @@ test_that("First time step is correctly interpreted:", { nmemberobs = NULL, nleadtime = NULL) expect_equal(dim(data$mod), c(dataset = 2, member = 5, sdate = 2, ftime = 215, lat = 8, lon = 8)) + expect_equal(dim(data$obs), c(dataset = 1, member = 1, sdate = 2, ftime = 215, + lat = 8, lon = 8)) expect_equal(sum(is.na(data$mod[1,,,,,])), 0) + expect_equal(sum(is.na(data$mod[2,,,-215,,])),0) + expect_equal(sum(is.na(data$mod[2,,,215,,])), 640) expect_equal(data$Dates$start, system4$Dates$start) - + expect_equal(data$obs, era5$obs) # Test leadtimemin > 1 data <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc"), @@ -225,4 +228,25 @@ test_that("First time step is correctly interpreted:", { nmemberobs = NULL, nleadtime = NULL) expect_equal(system4$mod[1,1,1,2:214,,], data$mod[2,1,1,1:213,,]) expect_equal(system5$mod[1,1,1,2:214,,], data$mod[1,1,1,2:214,,]) + + + data <- Load(var = 'prlr', + exp = list(list(name = 'ecmwfS4', path = "/esarchive/exp/ecmwf/system4_m1/$STORE_FREQ$/$VAR_NAME$/$VAR_NAME$_$START_DATE$.nc"), + list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), + obs = list(list(name = 'era5', path = '/esarchive/recon/ecmwf/era5/$STORE_FREQ$_mean/$VAR_NAME$_f1h-r1440x721cds/$VAR_NAME$_$YEAR$$MONTH$.nc')), + sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') + nmember = 5,leadtimemin = 2, + leadtimemax = NULL, + storefreq = "daily", sampleperiod = 1, + latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, + output = 'lonlat', nprocs = 1, + method = 'conservative', grid = 'r360x181', + maskmod = vector("list", 15), maskobs = vector("list", 15), + configfile = NULL, varmin = NULL, varmax = NULL, + silent = FALSE, dimnames = NULL, + remapcells = 2, path_glob_permissive = 'partial', + nmemberobs = NULL, nleadtime = NULL) + expect_equal(system4$mod[1,1,1,2:215,,], data$mod[1,1,1,1:214,,]) + expect_equal(system5$mod[1,1,1,1:214,,], data$mod[2,1,1,1:24,,]) + }) -- GitLab From c2eb834e6db3fd07cd50e296669b953fbdc78bbb Mon Sep 17 00:00:00 2001 From: nperez Date: Thu, 22 Oct 2020 16:33:48 +0200 Subject: [PATCH 36/44] all tests completed --- R/Load.R | 63 +++++------------------------------ tests/testthat/test-Load.R | 68 +++++++++++++++++++++++++------------- 2 files changed, 54 insertions(+), 77 deletions(-) diff --git a/R/Load.R b/R/Load.R index eec1e3a7..b5600af2 100644 --- a/R/Load.R +++ b/R/Load.R @@ -1443,7 +1443,6 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, looking_time <- .LoadDataFile(work_piecetime, explore_dims = TRUE, silent = silent) first_time_step_list <- c(first_time_step_list, list(looking_time$time_dim)) - print(first_time_step_list) } # If the dimensions of the output matrices are still to define, we try to read # the metadata of the data file that corresponds to the current iteration @@ -1539,7 +1538,6 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, jmember <- jmember + 1 } } else { - print("HERE") work_piece <- list(filename = .ConfigReplaceVariablesInString(quasi_final_path, replace_values), namevar = namevar, indices = c(1, 1, jsdate, jmod), nmember = nmember[jmod], leadtimes = leadtimes, mask = maskmod[[jmod]], @@ -1592,10 +1590,6 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, leadtimes <- seq(leadtimemin, leadtimemax, sampleperiod) } # If there are differences in the first time stamp in exp files: - print("INFO") - print(exp_work_pieces) - print("details") - print(leadtimemax) if (!is.null(exp)) { in_date <- lapply(first_time_step_list, function(x) { origin <- as.POSIXct( @@ -1628,24 +1622,18 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, while (jmod <= nmod) { jpiece <- 1 while (jpiece <= npieces) { - print(npieces * (jmod - 1) + jpiece) - exp_work_pieces[[npieces * (jmod - 1) + jpiece]]$leadtime <- - seq(new_leadtime[[jmod]], new_leadtimemax, sampleperiod) + exp_work_pieces[[npieces * (jmod - 1) + jpiece]]$leadtimes <- + seq(new_leadtimemin[[jmod]], new_leadtimemax[[jmod]], sampleperiod) + jpiece <- jpiece + 1 } + jmod <- jmod + 1 } } - print(exp_work_pieces) lag <- 1 - in_date[[1]] - print(lag) - print(leadtimemin) - print(leadtimemax) - print(in_date) leadtimes <- seq(leadtimemin - lag, leadtimemax #+ max(unlist(in_date)) + lag, - lag, sampleperiod) exp_first_time_step <- leadtimemin - lag - print(leadtimes) - print(exp_first_time_step) } # Now we start iterating over observations. We try to find the output matrix # dimensions and we build anyway the work pieces corresponding to the observational @@ -1815,9 +1803,7 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, stop("Check 'time' variable in the experimental files ", "since not units or first time step have been found.") } else { - if (in_date[[1]] > 1) { day <- leadtimes[1] - } } } obs_file_indices <- seq(day, min(days_in_month, @@ -1917,8 +1903,8 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, } if (storefreq == 'daily') { - #startdate <- startdate + 86400 * sampleperiod * length(obs_file_indices) -startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) + startdate <- startdate + 86400 * sampleperiod * + max(obs_file_indices) year <- as.integer(substr(startdate, 1, 4)) month <- as.integer(substr(startdate, 6, 7)) day <- as.integer(substr(startdate, 9, 10)) @@ -2263,37 +2249,6 @@ startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) number_ftime <- dim_obs[["ftime"]] } } - #if (!is.null(exp)) { - # if (any(in_date > 1) & length(in_date) > 1 & in_date[[1]] > 1) { - # .warning(paste("There is at least one experiment with first timestamp in ", - # "file one or more days ahead from the start date. The data ", - # "could containg missing values.")) - # pos_max <- max(unlist(in_date)) - 1 - # empty_slice <- array(NA, c(ftime = 1, dim(mod_data[1,,,1,,]))) - # empty_slice <- .aperm2(empty_slice, c(2, 3, 1, 4, 5)) - # new_data <- lapply(1:length(in_date), function(x) { - # pos <- in_date[[x]] - 1 - # res <- mod_data[x,,,,,] - # if (pos > 0) { - # while (pos > 0) { - # res <- abind(empty_slice, res, along = 3) - # pos <- pos - 1 - # } - # } else { - # while(pos < pos_max) { - # res <- abind(res, empty_slice, along = 3) - # pos <- pos + 1 - # } - # } - # return(res) - # }) - # new_data <- abind(new_data, along = 6) - # mod_data <- .aperm2(new_data, c(6,1,2,3,4,5)) - # names(dim(mod_data)) <- names(dim_exp) - # attr(mod_data, 'dimensions') <- names(dim_exp) - # number_ftime <- dim(mod_data)[["ftime"]] - # } - # } if (is.null(latitudes)) { lat <- 0 attr(lat, 'cdo_grid_name') <- 'none' @@ -2353,8 +2308,9 @@ startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) # Each component is a vector of the initial POSIXct date of each # forecast time step if (!is.null(exp)) { - if (storefreq == 'daily' & exp_first_time_step > 1) { - origin <- exp_first_time_step - 1 + if (storefreq == 'daily' & leadtimes[[1]] > 1) { + origin <- leadtimes[[1]] - 1 + leadtimemin <- 1 } else { origin <- 0 } @@ -2369,7 +2325,6 @@ startdate <- startdate + 86400 * sampleperiod * max(obs_file_indices) })) })) attr(dates[["start"]], "tzone") <- "UTC" - # end is similar to start, but contains the end dates of each forecast # time step dates[["end"]] <- do.call(c, lapply(dates[["start"]], diff --git a/tests/testthat/test-Load.R b/tests/testthat/test-Load.R index ce71f5b0..645ceaae 100644 --- a/tests/testthat/test-Load.R +++ b/tests/testthat/test-Load.R @@ -1,19 +1,5 @@ context("Testing Load with ECMWF System5c3s daily data") test_that("First time step is correctly interpreted:", { - s2dv_system5 <- s2dv::Load(var = 'prlr', - exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), - sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') - nmember = 5,leadtimemin = 1, - leadtimemax = NULL, - storefreq = "daily", sampleperiod = 1, - latmin = 42, latmax = 49, lonmin = 4, lonmax = 11, - output = 'lonlat', nprocs = 1, - method = 'conservative', grid = 'r360x181', - maskmod = vector("list", 15), maskobs = vector("list", 15), - configfile = NULL, varmin = NULL, varmax = NULL, - silent = FALSE, dimnames = NULL, - remapcells = 2, path_glob_permissive = 'partial', - nmemberobs = NULL, nleadtime = NULL) system5 <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), sdates = c('19931101', '19941101'), #paste0(1993:2018, '1101') @@ -28,7 +14,7 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = NULL, nleadtime = NULL) - expect_equal(system5$mod, s2dv_system5$mod) + data <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS5', path = "/esarchive/exp/ecmwf/system5c3s/$STORE_FREQ$_mean/$VAR_NAME$_s0-24h/$VAR_NAME$_$START_DATE$.nc")), @@ -46,7 +32,7 @@ test_that("First time step is correctly interpreted:", { remapcells = 2, path_glob_permissive = 'partial', nmemberobs = NULL, nleadtime = NULL) - expect_equal(dim(data$mod), c(dataset = 1, member = 5, sdate = 2, ftime = 214, + expect_equal(dim(data$mod), c(dataset = 1, member = 5, sdate = 2, ftime = 214, lat = 8, lon = 8)) expect_equal(dim(data$obs), c(dataset = 1, member = 1, sdate = 2, ftime = 214, lat = 8, lon = 8)) @@ -84,7 +70,6 @@ test_that("First time step is correctly interpreted:", { # The values of observation when loading exp and obs simultaneously corresponds to the second day of the observations in the file: expect_equal(data$obs[1,1,1,,,], era5$obs[1,1,1,2:215,,]) expect_equal(data$obs[1,1,2,,,], era5$obs[1,1,2,2:215,,]) - # Test when 2 observational datasets are requested: data <- Load(var = 'prlr', @@ -110,6 +95,19 @@ test_that("First time step is correctly interpreted:", { expect_equal(sum(is.na(data$obs)), 0) expect_equal(data$obs[1,1,,,,], era5$obs[1,1,,2:215,,]) expect_equal(system5$mod, data$mod) + dates <- c(seq(as.POSIXct("1993-11-02", tz = 'UTC'), + as.POSIXct("1994-06-03", tz = 'UTC'), "d"), + seq(as.POSIXct("1994-11-02", tz = 'UTC'), + as.POSIXct("1995-06-03", tz = 'UTC'), "d")) + attributes(dates)$tzone <- 'UTC' + expect_equal(dates, data$Dates$start) + dates <- c(seq(as.POSIXct("1993-11-03", tz = 'UTC'), + as.POSIXct("1994-06-04", tz = 'UTC'), "d"), + seq(as.POSIXct("1994-11-03", tz = 'UTC'), + as.POSIXct("1995-06-04", tz = 'UTC'), "d")) + attributes(dates)$tzone <- 'UTC' + expect_equal(dates, data$Dates$end) + eraint <- Load(var = 'prlr', exp = NULL, obs = list(list(name = 'erainterim')), sdates = c('19931101', '19941101'), @@ -226,9 +224,21 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = NULL, nleadtime = NULL) - expect_equal(system4$mod[1,1,1,2:214,,], data$mod[2,1,1,1:213,,]) - expect_equal(system5$mod[1,1,1,2:214,,], data$mod[1,1,1,2:214,,]) - + expect_equal(dim(data$mod), c(dataset = 2, member = 5, sdate = 2, ftime = 213, + lat = 8, lon = 8)) + expect_equal(dim(data$obs), c(dataset = 1, member = 1, sdate = 2,ftime = 213, + lat = 8, lon = 8)) + expect_equal(sum(is.na(data$mod)), 0) + expect_equal(sum(is.na(data$obs)), 0) + expect_equal(system4$mod[,1,,3:215,,], data$mod[2,1,,,,]) + expect_equal(system5$mod[,,,2:214,,], data$mod[1,,,,,]) + expect_equal(era5$obs[,,,3:215,,], data$obs[1,,,,,], tolerance = 0.001) + dates <- c(seq(as.POSIXct("1993-11-03", tz = 'UTC'), + as.POSIXct("1994-06-03", tz = 'UTC'), "d"), + seq(as.POSIXct("1994-11-03", tz = 'UTC'), + as.POSIXct("1995-06-03", tz = 'UTC'), "d")) + attributes(dates)$tzone <- 'UTC' + expect_equal(data$Dates$start, dates) data <- Load(var = 'prlr', exp = list(list(name = 'ecmwfS4', path = "/esarchive/exp/ecmwf/system4_m1/$STORE_FREQ$/$VAR_NAME$/$VAR_NAME$_$START_DATE$.nc"), @@ -246,7 +256,19 @@ test_that("First time step is correctly interpreted:", { silent = FALSE, dimnames = NULL, remapcells = 2, path_glob_permissive = 'partial', nmemberobs = NULL, nleadtime = NULL) - expect_equal(system4$mod[1,1,1,2:215,,], data$mod[1,1,1,1:214,,]) - expect_equal(system5$mod[1,1,1,1:214,,], data$mod[2,1,1,1:24,,]) - + expect_equal(system4$mod[1,1,,2:215,,], data$mod[1,1,,1:214,,]) + expect_equal(system5$mod[1,1,,1:214,,], data$mod[2,1,,1:214,,]) + expect_equal(dim(data$obs), c(dataset = 1, member = 1, sdate = 2, ftime = 214, + lat = 8, lon = 8)) + expect_equal(dim(data$mod), c(dataset = 2, member = 5, sdate = 2, ftime = 214, + lat = 8, lon = 8)) + expect_equal(sum(is.na(data$obs)), 0) + expect_equal(sum(is.na(data$mod)), 0) + expect_equal(data$obs[,,,1,,], era5$obs[,,,2,,]) + dates <- c(seq(as.POSIXct("1993-11-02", tz = 'UTC'), + as.POSIXct("1994-06-03", tz = 'UTC'), "d"), + seq(as.POSIXct("1994-11-02", tz = 'UTC'), + as.POSIXct("1995-06-03", tz = 'UTC'), "d")) + attributes(dates)$tzone <- 'UTC' + expect_equal(data$Dates$start, dates) }) -- GitLab From ca7ea27c23ecc39d878473105c3e0d590bddb728 Mon Sep 17 00:00:00 2001 From: aho Date: Wed, 28 Oct 2020 10:45:37 +0100 Subject: [PATCH 37/44] Update NEWS.md --- NEWS.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/NEWS.md b/NEWS.md index 6d81252d..63ba6e43 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,4 +1,11 @@ -# s2dverification 2.8.6 (Release date: ) +# s2dverification 2.8.7 (Release date: 2020-) +- Correct the time metadata retrieval in Load() when start date and the first lead time in netCDF file do not match. +- Revise the per-paired method in Clim() when NA exists. +- Correct the Corr() p-value. +- Bugfix for CDO version reading. The error occurred when the CDO version number is followed by letters. +- Bugfix for Ano() when obs and exp have inconsistent dimensions. + +# s2dverification 2.8.6 (Release date: 2019-10-17) - Apply Roxygen2 format to all the files. - Bug fix in Composite(). - Bug fix in Ano(). Recommend to assign the dimensions by name to avoid confusion when the dimensions have same length. -- GitLab From eef1695fdac1447333644ca1bdb9932472a84405 Mon Sep 17 00:00:00 2001 From: nperez Date: Wed, 28 Oct 2020 12:55:55 +0100 Subject: [PATCH 38/44] fix condition --- R/Load.R | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/R/Load.R b/R/Load.R index b5600af2..9feec5d3 100644 --- a/R/Load.R +++ b/R/Load.R @@ -2314,16 +2314,25 @@ Load <- function(var, exp = NULL, obs = NULL, sdates, nmember = NULL, } else { origin <- 0 } + dates[["start"]] <- do.call(c, lapply(sdates, + function(x) { + do.call(c, lapply((origin:(origin + number_ftime - 1)) * sampleperiod, + function(y) { + addTime(as.POSIXct(x, format = "%Y%m%d", tz = "UTC"), + store_period, y + leadtimemin - 1) + })) + })) } else { origin <- 0 - } - dates[["start"]] <- do.call(c, lapply(sdates, + dates[["start"]] <- do.call(c, lapply(sdates, function(x) { - do.call(c, lapply((origin:(origin + number_ftime - 1)) * sampleperiod, + do.call(c, lapply((0:(number_ftime - 1)) * sampleperiod, function(y) { - addTime(as.POSIXct(x, format = "%Y%m%d", tz = "UTC"), store_period, y + leadtimemin - 1) + addTime(as.POSIXct(x, format = "%Y%m%d", tz = "UTC"), + store_period, y + leadtimemin - 1) })) })) + } attr(dates[["start"]], "tzone") <- "UTC" # end is similar to start, but contains the end dates of each forecast # time step -- GitLab From c63b91b0c1dc84cc6331177368cc093454f8bebd Mon Sep 17 00:00:00 2001 From: aho Date: Thu, 29 Oct 2020 11:16:52 +0100 Subject: [PATCH 39/44] Increase the version number and complete NEWS.md --- DESCRIPTION | 2 +- NEWS.md | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 0045265c..3fce5504 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -1,6 +1,6 @@ Package: s2dverification Title: Set of Common Tools for Forecast Verification -Version: 2.8.6 +Version: 2.9.0 Authors@R: c( person("BSC-CNS", role = c("aut", "cph")), person("Virginie", "Guemas", , "virginie.guemas@bsc.es", role = "aut"), diff --git a/NEWS.md b/NEWS.md index 63ba6e43..19925729 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,5 +1,6 @@ -# s2dverification 2.8.7 (Release date: 2020-) +# s2dverification 2.9.0 (Release date: 2020-10-30) - Correct the time metadata retrieval in Load() when start date and the first lead time in netCDF file do not match. +- One new parameter 'K' is added in Composite() to indicate the maximum number of composites. - Revise the per-paired method in Clim() when NA exists. - Correct the Corr() p-value. - Bugfix for CDO version reading. The error occurred when the CDO version number is followed by letters. -- GitLab From 6a65e7995a4511d3f42a62d1ac3427017fcf510e Mon Sep 17 00:00:00 2001 From: aho Date: Thu, 29 Oct 2020 13:44:16 +0100 Subject: [PATCH 40/44] Refine NEWS.md --- NEWS.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/NEWS.md b/NEWS.md index 19925729..5e124230 100644 --- a/NEWS.md +++ b/NEWS.md @@ -1,5 +1,7 @@ # s2dverification 2.9.0 (Release date: 2020-10-30) -- Correct the time metadata retrieval in Load() when start date and the first lead time in netCDF file do not match. +- Correct the time retrieval in Load() when start date and the first lead time in netCDF file do not match. +In addition, when the lead time in each data set is not consistent, the retrieved data should change according to + the first data set in the same Load call. - One new parameter 'K' is added in Composite() to indicate the maximum number of composites. - Revise the per-paired method in Clim() when NA exists. - Correct the Corr() p-value. -- GitLab From b483a653f99682773bb068764bec4a8ac87b2eb5 Mon Sep 17 00:00:00 2001 From: aho Date: Thu, 29 Oct 2020 16:13:18 +0100 Subject: [PATCH 41/44] Add tests/ into .Rbuildignore --- .Rbuildignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.Rbuildignore b/.Rbuildignore index aa8227b1..19a1af65 100644 --- a/.Rbuildignore +++ b/.Rbuildignore @@ -9,3 +9,4 @@ README\.md$ \..*\.RData$ vignettes .gitlab-ci.yml +^tests$ -- GitLab From ebaf360417ebcbcfe4dadc60cbcd3e335fe01f14 Mon Sep 17 00:00:00 2001 From: aho Date: Fri, 30 Oct 2020 09:30:50 +0100 Subject: [PATCH 42/44] Correct URLs and add paper in DESCRIPTION --- DESCRIPTION | 7 ++++--- R/ConfigFileOpen.R | 2 +- man/Composite.Rd | 1 + man/ConfigFileOpen.Rd | 2 +- 4 files changed, 7 insertions(+), 5 deletions(-) diff --git a/DESCRIPTION b/DESCRIPTION index 3fce5504..99565b9b 100644 --- a/DESCRIPTION +++ b/DESCRIPTION @@ -35,7 +35,8 @@ Description: Set of tools to verify forecasts through the computation of typical equations from a model, not a pure observational dataset). Intended for seasonal to decadal climate forecasts although can be useful to verify other kinds of forecasts. The package can be helpful in climate sciences for other purposes - than forecasting. + than forecasting. To find more details, see the review paper Manubens, N.et al. (2018) + . Depends: maps, methods, @@ -55,8 +56,8 @@ Suggests: easyVerification, testthat License: LGPL-3 -URL: https://earth.bsc.es/gitlab/es/s2dverification/wikis/home -BugReports: https://earth.bsc.es/gitlab/es/s2dverification/issues +URL: https://earth.bsc.es/gitlab/es/s2dverification/-/wikis/home +BugReports: https://earth.bsc.es/gitlab/es/s2dverification/-/issues LazyData: true SystemRequirements: cdo Encoding: UTF-8 diff --git a/R/ConfigFileOpen.R b/R/ConfigFileOpen.R index 182b205e..d0a4ada0 100644 --- a/R/ConfigFileOpen.R +++ b/R/ConfigFileOpen.R @@ -147,7 +147,7 @@ #' ConfigEditEntry, ConfigFileOpen, ConfigShowSimilarEntries, ConfigShowTable #'@references #'[1] \url{https://stat.ethz.ch/R-manual/R-devel/library/base/html/regex.html}\cr -#'[2] \url{http://tldp.org/LDP/abs/html/globbingref.html} +#'[2] \url{https://tldp.org/LDP/abs/html/globbingref.html} #'@author History: #' 0.1 - 2015-05 (N. Manubens, \email{nicolau.manubens@@ic3.cat}) - First version #' 1.0 - 2015-11 (N. Manubens, \email{nicolau.manubens@@ic3.cat}) - Removed grid column and storage formats diff --git a/man/Composite.Rd b/man/Composite.Rd index b957d9fd..3d9a3fd8 100644 --- a/man/Composite.Rd +++ b/man/Composite.Rd @@ -84,6 +84,7 @@ data <- 1 : (4 * 5 * 6) dim(data) <- c(lon = 4, lat = 5, case = 6) occ <- c(1, 1, 2, 2, 3, 3) res <- Composite(data, occ, K = 4) + } \author{ History: diff --git a/man/ConfigFileOpen.Rd b/man/ConfigFileOpen.Rd index cff7427e..3630c155 100644 --- a/man/ConfigFileOpen.Rd +++ b/man/ConfigFileOpen.Rd @@ -193,7 +193,7 @@ History: } \references{ [1] \url{https://stat.ethz.ch/R-manual/R-devel/library/base/html/regex.html}\cr -[2] \url{http://tldp.org/LDP/abs/html/globbingref.html} +[2] \url{https://tldp.org/LDP/abs/html/globbingref.html} } \seealso{ ConfigApplyMatchingEntries, ConfigEditDefinition, -- GitLab From 28421a3e116ee815e0e58edf5473de018925fc17 Mon Sep 17 00:00:00 2001 From: aho Date: Fri, 30 Oct 2020 13:59:59 +0100 Subject: [PATCH 43/44] Revise URL --- R/s2dverification.R | 6 +++--- man/s2dverification.Rd | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/R/s2dverification.R b/R/s2dverification.R index d332f38d..f22f06eb 100644 --- a/R/s2dverification.R +++ b/R/s2dverification.R @@ -11,12 +11,12 @@ #' \tabular{ll}{ #'Package: \tab s2dverification\cr #'Type: \tab Package\cr -#'Version: \tab 2.8.4\cr -#'Date: \tab 2019-01-30\cr +#'Version: \tab 2.9.0\cr +#'Date: \tab 2020-10-30\cr #'License: \tab LGPLv3\cr #' } #'Check an overview of the package functionalities and its modules at -#'\url{https://earth.bsc.es/gitlab/es/s2dverification/wikis/home}. +#'\url{https://earth.bsc.es/gitlab/es/s2dverification/-/wikis/home}. #'For more information load the package and check the help for each function #'or the documentation attached to the package. #' diff --git a/man/s2dverification.Rd b/man/s2dverification.Rd index 698fa4ed..47acf220 100644 --- a/man/s2dverification.Rd +++ b/man/s2dverification.Rd @@ -18,12 +18,12 @@ purposes than forecasting. \tabular{ll}{ Package: \tab s2dverification\cr Type: \tab Package\cr -Version: \tab 2.8.4\cr -Date: \tab 2019-01-30\cr +Version: \tab 2.9.0\cr +Date: \tab 2020-10-30\cr License: \tab LGPLv3\cr } Check an overview of the package functionalities and its modules at -\url{https://earth.bsc.es/gitlab/es/s2dverification/wikis/home}. +\url{https://earth.bsc.es/gitlab/es/s2dverification/-/wikis/home}. For more information load the package and check the help for each function or the documentation attached to the package. } -- GitLab From 798ebbd7f3124c563a600b6b0d2126048f31f922 Mon Sep 17 00:00:00 2001 From: aho Date: Mon, 2 Nov 2020 09:01:27 +0100 Subject: [PATCH 44/44] Update pdf to v2.9.0 --- s2dverification-manual.pdf | Bin 372712 -> 379385 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/s2dverification-manual.pdf b/s2dverification-manual.pdf index 0392b213206b1f57fe404dee8b31e4b81d31694c..67373123d612604dcdd3746f955af9a30fe4f665 100644 GIT binary patch delta 335828 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%0D1+Wtm)E?kibxvy+ob?0G`Lpf$ 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 z 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⪚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

)T(!7;D=SEzkvC zPQiH&hH#D`fArzt>DOeMKu@ymsFICVKlXDYLq>X4iVw$F4~BOKaBxO*=hPSKi-Wj4 zUL%7zhIMgPNH%dV4(Oj{S!w@=(=Zm@=rNTsy9qf7ZYMUc_Uk5OFt1i^H_0mPWLY&k zvn$j3sqhf14ztheupGw-l>s%|R%^S5KS1Hrx}A}1K3G$MT0 z1z$qS@&LOJZ`)!m>kA+I-bf=EX4&>V^=6~=5~wWj(wh9K<}sej<_~YW7cS2+kMquS z*QGwBk6M8%xpJ#{wXhWg5Cyz#SiH|I#bk&le~w7L!!z|zKFG4YgQ__S2KtzT+JPz6 zyjsZ?uf5GlG(rIL>9c6AOc_;rEt^Jl&!ldA-Z=61&3JmOJXlU~1}~t!8kzi%>qn^g zmtUv57p*N60^w%PmvndFo5)GqABHmxv(?_Qj2k@u_OzAWyE^Cggx`$4v<6+_+TtUS z9jxxw(W-2WmHg$2{!K5vZ`SvHfEAvZ{{u%z^%TfYM@3y}XUq@6*hymMM}cq_E9c|%Z7!=fMbo}0 zO84{P_2bi^&k{23Cn?C&v)CeC@zh zmO9@wY3YOuN*GxBG2d?6x`W;O)F>e~P+lvSToD=JM&PB9)?VfI1(&DO%^o=0gOtWM(bzZM zL)Asu)osUiidi&!^G@@P25%OU+WoNj;ATRL{x^xcIAqWe$kma@AJP6>(Ow;;-mzzz zUA`h=lp0=)+&WVU`X-#FT%k6@g8EbM&y!Q~=@#L)*Y_jxIy zCfvn^v(y*q0hg!O8%_FKu?+mBY=0dAi9>&ld1hI$e>ltZjh!m07P;hiDX{-?(|o0oEgmHMsB>H9p|)1ip?ZuCXd;dv8RP$U zbQK|ZBsAWg&(3~eWPM(j(9UfaIu!AFt!!bRwOd)W#nKdyW?5{vQqP55g191qq6#hU ztP9>(6%-ceAvgDc6F_ke#m|{u1;gA9f6Dl3P;tE=e~bteTo_PrIcr@$wYcEH02e$U zT=WZDU0BKI&l{tRRkObI2DX^W)5@aKwGd_`J^#ZO>f~Sf(lmm^ zK!l4mjAl!zhe+7TO7j7fmkszaS6yL+!yXDqTvxiC^rZpYfF~s9Xbqqb<*K3$8h;MN zCMl3pjk$#cXS}aw#s-SOrBNhf9X&k@C*8A1f4Dv(t6`;Rd7Des&^3{9OU4GTb5g#n zSH?+UAg0f5iEx##@t=o;zpG>BAm_S;G4RXXX6sFN3O#RWC3@zeswKt2I3T19&m-QwB5CJihQScK4GBGtblc5ACf7MxCbKABO zeb2AZBQ;|p00~lLCcRTNiQ9C1ZI9!$4{fIdQIO1rA~htHRR8|&VgZqqDW&%0;r5C6 z#_qwM-37=e>j|Iy_~M8A7cVcvaFVh#4&urEY9csip^PW9n6oGhCilz9Z{94J{&D~F z%S+iG8K#2qSim}F%=I*kf4uoLio6>f{DRvpVEv#s%XicKV1|t}`D3HjdNA$O7nY0r z;wBScq)f~bE5-cgcOG$7R)6Zhw^Kjn-209`*B`I0E~tpz)uK7oT~wtjsn(WOZNAZe zs?WMcN&6FnSMmZyp9sOyC1teLXSvgHv$P+j1OOAkqapEn(M9LW6eT;Ryq!}X#hrS)X! z!G?OXC^XeJP}cQeY|0N~n^x5=6=B1v@HCB_JzBLp9IT<~f4dd*wzoP;?9Rj*t63ok zkU4p~Thb1a(+)w@^;hMZ1|Z0`^S$k?%3@EYzE`0xH)PT1`tuYf!A4bSfP`iPB$R|# zYQ1czv90L4&;yArxLLK??pnPBL4$~U?L*#BX{&0r(XFnjnyHcsu#EW@dez!F6@Af% zPzjHIsaHr`f3+)G((#CQeM|H$@q7_88Ox5Z=%${^*D$tc4qwaHFcv+&Vu#@?7KVJq zmPdTW*%olHUcIDYJB#pK&Wb2F;%pQQIU9u?XGKgHLfe?FMZpni z!zdXiEsu=xOP~)f7^D&xG%Z1ozS!QQ@5n4mUo67bfBMw0j=NYR?$UI_-4O=h3eIK% zV0NFo!AusIUV`(Af8mQrGB}^LZgt zZG4*kTuFT(kf^fOGNy3%fqPny#D5Jn&f+d#OP3O2aHwx==@D6rZVvn+08`Ds&$Lt1 zP4#C;hHpEw^nEZv8G|zgU!nds#p>@bD#YH&&>ED7vg>AMVPadr; zRN%|(zbwVbi!MF$vf2J~;%t^b+czyui%LweyBI77w(PaonZ#1L4#(-@N_6?XSzoqf zNfT$c(@D^C7XibR=enp|=lsfXQ9-c5M;Er_=n{dimPXKmE}U8uZgeT+!qz#KPq8(| zF2VhVpy~AWsC4^<5 zyM1h3ze$8Yu%!nP&2;d_=_kgn019FTN5;iDUfbS(On}30Fxsv6p|}Jka&RqVR6_7C zU^Vw1f;sT3lIdViHqN~#x=1&OUxE9UPEGEMdZoB#BeLE&Je2mdA#bHJVAwa;j3{v6 zYep0G5Gibabt*s70-%tR$*q3^`N?b_bQnlfZ6K9~PlJq0L+pd^8X*{iRV1HC;O1GF z;UI>L?wtSjbkYSuKs<`Eva`hH`Xv5((gg25&epF=ZsRbw7?sy_L##9%GU`CO)=d_ zxqe+X$-3pE*XBA&C@0=Pi#U$?cY}zcI)j)au#bttGu!|^d8D02zP8#yIFV1;s8Dp- zzAk6-nq8xy24K5W{*+sl(zzZ+4|oj!`GuhNr9AM2!V;l%>f=WPO50Wh3FQ=`>xtOy z1@uIDP8ltruMizuC|ZES0vE;DL4cY6K2(HkN+7LMG==@V*ddm6p5PfJKGi}!wV*AaZ|=5%;V>Fbl|2GBpiAsCLZyH0BX;+Uar&yxh& zL?va*te)ncj;6LgJs_mT_47b z?~jFS0Ag}DZ6L?|rhP4ia~1VUY{i+;0`C!E9@v^ub+JdUY|A0R3?9%B;;BMa8yIS| zt_&5LofgbUqnxlLd|9&b1O96sb}z;2hv^=w2mTmPI(|t*u|Z8L+uL3L>=#6~(9>oN zIEn($;zJ?$b#q}Kj*o;pTYp~(N*R&&|L;xmD>dH_6g81+pAN9)l*##@{j~4((_m&W z2obcz$;Te&q$ZnH-iYH$uJ%Alu-*lHkN7kGUP$iRGmisIzkETH%9iLK7?H zPU2*$z{!KpF?trxXM_V?A;dmwvwfFo*DB(KuAu{S+*VJVh3fa*H(00(Pcb zDBmv1uwH$Xc`{Xm+mTi}I{4%9j_3k`p%j-Hv(M z;V~1tcfgUY2hSVhmEQAlSyEm8W{cp!G|4qYXE-({w!p6r~iOa3q%j=FO2!rz8Jc8 zzCM_6;%>lQ)u*_(uKo7DBm<*NCEyajb0S&8$7vZ=+PQph-EwNUb?@>ArBNIpEm^1SBtsjAE+w+ae@%&d-X{+3^ zYydSlF&C31$;(VY$uA~A5S|v<^T@ZJ!PNvA7ikBC=CNxjNYM?bjD69jjM;ks5<;+t z$Y;L$l=9!B9uKG{np^DW*44BXlS{4?@k1fi*j zxQ5LU7t4CNk%%zdRZT>m z)S5&{g<=~TTQW;M?cPu{+RIcG(U2uxTczgf(9h94)#e_F3>A{xW5O!*925D*sr+U= z*-_c1#VtcvF8UgSknQvPr4)B5vwJU{6af+E zM)5VrA!hoY8i(&k7z2jX-r% z3^fLtF5XQ!U85+kyuVDbm>7YT769-g!#${S(edyqjI#SF@t6eA@y093sA7*JleNs|p?ckp6!&^Z(L;SEf>bQcp(Nou@qM(Vyn}YHDu%e+99CQLJ0)T7WVPnS z0U7k4UeJvTjR&p;G^x1lZonygU^#a<+f3UuOH7i9u&t+**ub81#w}J+#$yJCC<5=J z`9v!8claI6q{0rIj=cS14(TSpc`fzXp2|`*aUdfVvQNlOh4k$wNNqKC_&S-=@+?1{ z;5dkO+$qn3duy((ZN)DpvLRUAHhg?`>`vUoPQm6%PY40|mjb#BPQb(!ySTDnXmi;i zkUBM2(34B7F*u%%jtgIVx&oP(UZ;eWZPRMfZZdgW+fUIV<0|;g^mYH}UrhO`=2;QJ zn^Yz7Ty5u8%)T2_EhE9}h|*wu|=|NK3AeieY7OtdtYR$FPl4DdFk^&7l;?7Bn?LAbHr%MjD7MLXVK)z zrhl%UgV#I{I%FycD8<_TtRTf7xFI7*7(s=nI-3v&TDQAq5!eeNj+x0PsEPgX>s`0i zZ{;LJ+=MQ$x&w~Et#7M;M*}B9=qnY#ZI8kY+?1z2wnoj;cB+(Gxi`|KG+BB^=oDDM z%BLieD0#kY=S5!S3|Df}q+JtvneJy#7$!g<{)X&?kZz!xfLJ5-J3(;VtSE2MIH4j5 zW+^_a;ngd*N}ElBMZvC?Z4t>K1XpX$p#1yjshY$ez6*%UUos+XRc4oxP13=2v4fMK z7Ej6I$3G?035hqt6DT38z<4R|Vc4gmP9&SWlMbeEf^j z_LT7Tun@u`^f3%1^q3Ml`Nw+;`i*!5X?rxnCj?cDGv=7I^I?yuD?iK@Oo$3?Arz&> zh=PPhk_8ZPU>{#1UqNEPxNE!pTmJ`^qUd5oCn^8J0Y}p6TqR?Dly2sWE9m`*ODy39 zl*omr=X5M**W|pm0|Zd=qEO0LMX~xpDa}mGtW5$!|0$zLtsM}#yDAIA!c+QW zP0m`ai}Y~g(N{Q7D1O8e>{uqj1d-X8&xZb`Gn7GrqBhE54cT@V%N|DEI8%$Wt}H z1J99E&C$W(HwI#c4K`u~34?@3IeWJrTL?f8=>7OpCsF5^3;(*?2~6OvGnD^D?!8dk zpUO|hcuON0yp^UB(xo!x)Xp>(Nf!!pO)|IttGSGgS&(#qz+J0 zCZMRS9-U;mOV$x5rzvBUp}K$n^xDMDSUTWvn&Kcn0vy>6Hc ztxZ;4o#0tn1Vyf>Z2&Ul??D>~**HM?L)WBvm;+JmF_^g$>t1*_h__h6CRSo0Q;;-< zGr~*Lc_ui$I*NNMed2JNx$7kXAlDL~@DvhoC;Or@M`J5;5gUh3;_0GsT9lIFy9r1> z%mu1;hZ$y^?SGS6%r2x|iK$!kk{I1=W>wuNJ}_nn$BsG7Z|5Pw>X{s>GDW-gfYai{ z(?k=pERHY0RCaBnsP5?QgRt+TRgXhZhk(I(QECuRVC66qVdX=eVaf6auq{AqvQ!6! zj9pFj&2r^1#(YY>-*p*u6zCD74}wj4BOEu^rN@dXRsn$&)l!>D&S;T**&a|f5XKNk zZmOgeCJm}rmZa{T&ZAQaDg`^Esu788$Pg$xhj`hkQB?6X41hp;R$LoCH69>~SZVyh z-dsU>ehTv8Gn`3{a<51SZ0_Z1K;Y&Iz-lcm(V$j>bBXe5N$Zp1+Zr|7eXOt>dxK4n z%yu7h=-|ELWb@Nnf z_1`K8{^ao+c!%!FH6PH`zPT^*w?U=y3pq;P$Cqo>XYl*V{On`Fb)#fYY%~IZ1`q9} z{|niGSyKNatp{aeF1AAi= z!&Buz1fogo)ID1VTG6aZ3P~|@a$~Pe0l9iZJ}IP7U$l@O5$rN#fH6WwY(Mt%xfu96 z&hf(x)AX2mgEpIMtRKuGf4|(>gtE z&T)dU8GVHZFycej=SWsF`0(Y-CmdY84y7bk{3#vYlG3-ydX-9P`R1npp|d|CnQEJj z0>qhIGAKQCf-*3!0%8N@{Ty5EHgM#Zg9@Z)QmO{U!@!Mk&G6#hL?b&sqt4}mgHiY( zGf)^H{S%8sSRh%Q=q^g<+>yZstU{#ukfmGjQ_F-rgMz-1I|@_XEo%>9mc_67kp(qj zss}HnAO4u83&{=B{$e8~kh4qn+wvp%wTjA7K&MjjDr|hdV(rR6M8J5+xO^7io0?BIz z)Xt-%;?Su!B2Cn|gNUV1#xwl9u6(kT_M-;3ZL!WMys zc^GMHHC@9Vz-#H(V{fHHckgC6?nrJ+(1Bx*@jWZ6`}A62HBk$jE>gW{*Hk~mU5Sja zb)5Niyq0c2VVT_U%ECVj%BEW81N^a5v5aN?R3@1G-}COWE-x371EM=<2H6(v(&3m8 zFzsPsz4qVOA6iPQ*fEmp;2TsHKh(gBJKb*@ET5(bfN&a8d0R=9d8kMaswu5M%IOaj zKe}h{kz>nSL++;2Dl=APruXtU6!(clOp3MCC03;}4*GH*rA9+S zc$ym5nboPP2HRPA2QLZ6C1;yiakZ0(bt|i9jamQ zBQ_2ffEwgxS4yP=`*m0kD?w{Rm=m&q7LrM~Xq87`hdUwN8N#rNg;OIiEhj6mwOpPD zn=g2;9;<=eaOHzkg--*42>1=wB8!P;|63y@v$*8cW92*({j5#a`@KgbY1-wwrS1UZ zdba|SbmEL_=SLN>b1uNsy^W>(qzA2r=eE=|0CI3EYyLB**s+b}$9%q4GI*_p3&@CM z0JI}0mZKm!FQar~ZFhkXjLRRxmCpgU)E9kdy8(Z58~itPX5M&g zb5i!U8}GXXtv-Ktk`yQkxK337;LX$mR~D+#Rh72cSxrTUG`3+rv8^Ttk(ml?n8=mk z(dmVWUSHqu9o0ha(H0)g8(LsX213hd+L~S(3m2IaDjJ)4v}*LqDiBoP5nMddb%sIL z9)w<`jUR+>dI)V-oRqN??=YE}abqBB;(PH)S6*{SC#EO(iBH{h6fTwoN&Z=OXTD(a zP&Uc8dvoz)Ga5><*|3Nv1S?MCm1iyF@oL6;1NhfowS0vKN0zm_e7SN)fo>&wfEwAP3 zWg`+VP1?|h!B~lNqeE2{Dfx`9y&09KoGh6F2(}f`;n|l#WB235uv-QxDEAUlzQ+vD zhq1Lp=^-bDbC5)~^#0$0@ZbpSR?wi;rP{E7rYYrOWJUj3-gck?sNP^@8`(q=9i6oJ zlnN+eG`JgN19`Q9nBEv{;d4w|2>aSmvP3-cOEh6ckYz1gYfiFj_!PX9&R~dvWD(Gb zihLm|I$@VpCgWYx@b3FV#<_r8b$9`g=3-UJU9e!mBbwj{LVr}rS%-8Nc;!qNkTEko zh3dO16-n`b8ZvYkC&ln-M$W6zF}xdq=VFB_r?zQ%15AGp;*v&$5WE3D5!o6xXF8WA9CI4z@(@GWxR?-FXqC`+xW+|5`>C@d zvyD6hgYEp7)OuEcySTrMXC&mLfbfZIe$sEo?+xS3AlVd(;V}`iSaB##1gYEAvH-Vc>k!clT zR2mj?LekYn$7_<^Y*5o-)5$p+ESy-%uhqkA>Ka}2$nj2<3C3?xJ^iz>%+4R{TJJVB ztJb*7$p^lC{4si(`F zTwzZqm^JPRr6L&x^scHUK^h&?bJ;e9 z^n%qbeIxHuYY~vU-^#yUPW{IC*!TX`TCs5g+c)R>7x8O+xInFolf-y^*OK6k*>8hyi-brE3ct*_ow!fpSAJW@{#y-wci|%5DgI|8GmRYL2-=in@XDm6E-Vu^#X=#lG~ZZbKosen^=zt&9VbZTpUO+)fjE5m z>_5Q^SgBT>Wc>=tqZ!athwpy6>QRBK?Rzj%#>5zGHJX-F%VM8fNU?(N(I?>lJmTA& z+1$d*x_VX}w4l%f!DJv-MYk%rYzrF=thBOb@USY#Wu0=327WUH+=JwaRMZM2_RKq*dtE;c?N)@YldgegwvW)xhra^K0F47iS8e>N zX8l;79XE1o3Tot`@m?+AvruMO4es-c8jUXKfYH}Lh$f0nEn1WyiPu`g!bBNaC=2XC z=pi?j>U2`*)3O}y49u(3qYD#avzgb7iAQ-MXenaji*bZM3~P+w2qS7H%I-54DWn6@ z0A!abD$9)1wWe^0$qKH{#yRzfA1AM~unox9HK&q>FL!L7!4QJSWhY9)%?HN79Hk>4{mq8&^w23CH&v3d=E@*j_Cp`-0JN%T zpcH_bh(KI?6PC=jo3r~%6E*X1>sWK8ochnaE>O?*Y97Ohv4&VTHa#lIno0DzqzqH6~tB`dn2a9CWxD?4J z^O!q%HBAsOkABpuuP5z(cuR)AyF8LIgMO(Sd@acZf2UMcIB%cU?0LZh#j&slUytv% z-|%uohvb+_^-qN4ZFNyw-wl{ir)kru+saxHQ0mDkbGyehBJ!W{0IKq2r9moQu>I_{ z4h9>x7wE8WmTjB$=7Zwe*r=E>?2b&a#ovkN;T*}0c`WD9NSxIcWXYgbuR`07qz$W# zfKK{ZO+34XYh70nC@s)xOz1?j*hK~`S%iOQ<{PTVGTU~kiKtrJ-y&!)5~;Ja)zVPI zaj9sEI4%-S)d=FC160jb)=dZJ9&R`|RSx0IB6yqqdW#dPZN8Yc!s*pKgvcammKP}( zF8h?TXX7_487Ez>C9;1Bs(~tPG)}<4)aXft+wTxw;sp5w*3F~@tZ7B_+8+ilhfn2s z!LHuCv&)(|p?)T6z8Md?)U=2Ox^9WUjy1e7%AQl{wE> zUh+K5W_rG+b3EziDKRYiGEVcRUc;k&3gW>~YcT)Wgw`)?EhU9sx|fPHaOt`Go_4< z9+Ljz@jn|wS436|I0$;3WM_2)wor?rQqhe^ldkJ7x!;sBjPAq4wPX?2g67yC1J&3YJa zb>W{t&dH8FGh&_qO-o3vN^+irev*k3)_UXjY|_rOlC4!DWzuTn?8v0R)5fyVN1sOPd!D0Gzs3{Gj&Cm>sk0Z>L@t4}7Re!R%x6V5eN}(5{xS zAT!q}rPg281iI3Zx3G2Dps2|R8s)MsmAG0}h%|uVZU#BK)hdi**v6R6Jo<23wyu;L zS;VMdUEC=IK5yd}@sw4DTGK7+fi{jY{=WcjU?7K}{7{gM6`L^NJ&*OnP~5wQQ>|J~1fgrp6_N@{b|M*#>nC zvQMl`p7VR5-Nq4!;TiJ2+6t_mP^q@x_c_2{gI%Q`m(dAmAcZxx*il1NtZIkC2Z(~G zzN#eEB4w_vOAFQCcGod>7yFuq$8$mKMrQ^ruFg;$4_{T-_-&Z_%;zm4n(Y=y+&I+# zPFI>d#7Our#1;|zAEWJ$)wPslJyK`WW_o172i%1^y_2%QDi^1i+Uj~m%(RNsLmI%e zcuHg_%RMcGTl(vCB5UxrHJvF)tYk~vRSh@$J;;g1zZNh3Gu9!%64RnS?axKfXXfWkn!)#u3R` zlNvox`wQtu{VurikofY&^jf!EZi#^6aO>-fQgb7mbjBo#0=DT91z;Y*95p{k zm2ikG=SP-fJt5f`-RDXDR{vgS|RSDicy36l*$vv1Vtw5 z=JD6nZ)UFJZd{3Pmn6C+_FcTjHi5#6g3-6#Y>M+#LUt{ljW<-8jteSZTlt&{BjUEo zY?G9S<<7qIq;_>dK+4%9ORGD3V$kvvSGg9Z2XaME&GH|C`8^oiBCRDXL=3?uHaU?? z^y+sX@VmP~ini=C-+j(C>F6U&$d1L-@u*$1&wVjwEykEssfc=MLTj?N@Lb6CkXN_i z2ZZiA2mgQT5?iX_(?7Qk*Z+m{X#Ec%ywuL>lwn04my;|sxmfYYQAkiYa3@-DQ;7;A zBO@C~QKmdxboSCyhNs|7Nb@|wrgU;XZw%qb1#Wj?Jm%p4Q}8%D{u=2H7r+u9*gmSl zfbb`v7}z$)e6_%RqJP*X*f!t%dAMImj5KyK<;DK6U=8uP%-Vqg6e|=nqr`%&Z%5k? z+Z!DbvS$v=3$ZfGZVJj}B33mDNwm++=0=gY?N>^}l4;Emh+6C>%dY$hb}lJ06^7v& zvFqNI?8WN(-i%d_wW*m(H;tX@t9v4Z`;yAo|F!l(2v1tYJsjR}c(gbNPkT^ZG+S`U z$ae{{Dl88Lu{TNpD1pWg_}CT^Nt6HYh?%X=~CPV-QyFJDG>~?o>eLigy zfa!WFRa)86(XZ~k?bv-;c?IVTPw^u-L>_Nx|s`0J+@rhLi=pifjQR3s;@;k2-QA(Tr| zYaU{kMh4-woWQjyvROT{m-U`D@l_1k{PhZ7+Mba7X>Vf2_Ve+b5#qjyf?LB?8F}%| z_#_$4xSo(2w}P&Nl0fG%pk>rVo`3UkTF%0MG0>Y5-05T3B+yWvhGE?yG1zrY;s5gd zc~~GI-L-H6u$$)jrM%ST?^lPn_!L}p3Zum*zDr90 z?(^8St+x?P_1h~>pb!RfQP465HhC>7QeOl1Hwsj>_72hA+9Mq<_r&DVghgM20uDM? zn>PDC05(+II#wN7mbyY16K?phj06qc>Or>ieIJM|PvGwyAfphm_PJo!vOV;hA%DzI z>pFR0?&VoAdHl<`fM5ygoWd?x=O&nU`m@QO~pDhwF95U4uXfR_-LP z2J^79#A%AnWdmSX%brR9v>P5%&isf8K#pdGYEYo$XMcK-XCxH2m3B$1d2o{Qw(B+F zeQV=C@GAIFyff>KQ?b1fWCx99EScG4xM=TI#pK7X<60!2bzzIm}90m`F_AvrnA+OqPwmg;OAq%VFV@wiUJ4cT0K4u~0abUI<&QR&(9e zDMDwnRQcMQ4*i5cKyyD4=Rg|zII9&ukr}tdu&O=@$pG^;#{`u$b0$c%C>sCQs@dwT zi7$$U7}@u{6tOl!LB_AvzMA0c0ireAF2f!tde|5 zJ_^AvZ6fMbnCcL5s4vZ!&j4z;1_5f0zm&l>Z}ey~riuMfn^sfe1T2jHL?eRBr;-%u zD0deALDcCaj=BZX{#g-ITuQHL*dB7_VP)ZkcWNMP{4{Zm){>=YI%=Is5d0?Gd1cu; zXc5GgYD&+Y>=SrPO@JgXPz;qm+!fkw2Reo*Io);IWG@?NXdj>UJ7go3=EZDHeSM1; zPy*<0kTHG!Zw>Mob|dcugQ$^wf*~WAjh;6$4B=Y#@|yO!)-B|Z{5M3oU6G5JjZY8- zX*KR@b75CBDcpwqhbHFt)Sr0s`0NcMlf} zsXTbzz8;T=ub^$DbN~G>r=}@^po4I6q#Acj_VRY*73epj&pZBdhNv)vKM6+tznfIf^r_aMr zYMAOpxkSSHCkG1?K_$)#UtS9tI52c7pYk+wd*0 z?O&B$%Py@`M^{nMI);Lyo%nzx$b)6DEe*`kjX%x#X5F(UE(AAXfOnn~#(~)d9Kf67 z$*gmJ3DLZ*s&T4Liomt%Y`2&TH*eDZoP0NEPnP1G{>E9VyP(+AW~AJ&pDO&g0!T43ZMZ4ebRbdYAORhnDym6Q2w@Eb-HWt0WZ~Ym_1oXEG1K7aJ^Zl)- z;*OpvSbFv?|1|j~O!m~3ZW-iudcXlPja} zveRP8Tp~?w0jr6~78JG?*$VrsAuxsdD_#C4#b4|r5rbPMOaGe0C^K3;HUMmIe~{gu zOD4ozc>gG6bc7S|Q~W_qHz>*!lREe0X14R_w7&1q5SZ7FiV3R*=Z42sHo%FuNjX(O zUc>W1>{Rzc^uo#|ZNfm3hREN<&Ib#~5DvGtVuJn?hS8sr)TR#7_@xLhia07AMsKIB zTxN$w*IKYALpj#N4TQO$wh3sn+6qUJLrFmOtcQP^$?Oa#*wAduPhG{8>lA?%C9+YZ zb((5Gl^cK+Ki=yLaMPKl`E#>0K?4<(4=E}mu8zd!VnRBq^A9ymz)M0piQ~rIGnNu6 zy7b|@Lo5d)9U`jTgPtoP@$>N^RDa=t5!N~$$mf?uIs6&MK4?(5w(z!o zeevP4bgrOLzdpOktOj&E9LH7N#7eT?ziJJ%_}xG(d>)jJFn*vSoXfcxi7!{{*o?Bz zJYwc+nih7f@ak8~tpVz7v)&MW8_VyfFS$!Sij!G4yFh}JIchG>@f&hYgrpUiCz~Q6 z61|$KJeK(QnF%JE1QqI^zRUQ7{#t-c5zS8R!R+NTTo69lEVEwv|MOfL&~b>R@_@-Y z7g$2Os>+yY?)FS=CDXL}_p=bX3qTuvfZ$9(a*tL<6)tF)j zg6+<+)yd9*m1K=kcIkP-s14N)?0B1FQSVh$y9LEn*v;6#k4p;)HaXO zMMo)NScUtK5CD)$hAima0oX}7Aa$D@UD^ecB$85IFa-Fv=i01#u`?^WdW%*5{Wl>A zTVJZUrZt6*b9X2lx2l-GsB*G;2*kA!yLN8jZ(Dz>*-jMdXpd=ZKBeP==T94NDhq&v zkR;w2#EpeWP7$IPo>`?uRnLV6Xg9{VHh{M_$8D)?+XL3&Iv75cx0X_OI>4C7DSQ2r z#JS~RP@XCB%P$ooAe^9?&1;_0!O2{%VPLi#LF~>w`{^ zPpK&8`vC4uis-^OVgjwnj#BNAZTn`aMHk-DD0$gwN}Z4#YkaBGiVSlgA0)%_aYQ$kL3gx2*sXL+4x+;}_&!o|44~JMQ;g zlcNyi{XL>Sr<}yY!`P$wwA&CF%=q6{$??zX`){daNxV~|N=3>80SBttjTv4B`K1;OXl_Hb3 z^P~)|OLfyt2n+<%DQNnZeZ#NUbpydid~Y>m1;yVD2J6&us?(zQb@qy7khVt+(M9GK zg3%0$5#{XNkAUDUED%?gyH}RWX`8DJzeU&;k5}L0T4$}YL;Dce_)N9jv(JkZOnHS5 zsIYoe*V0i9E&xVI+$Ihzf9yBufz3I$GWUkfBp=`;;OLP;qclLIl2k!pN=`CSV(zf8km|kWbfV1&{okrcI2Q~#&tN^5@7+J2 zqi&v;3W1%4yH$u!JD^|~f1wgaz0@oTAuV4+S%IN>GXiY-ARo}Z88u=CUej;ieu%u` zRS4krV%J$Fh7X%%)qq15S9BX@WSA1ETnE&;n`nb!$UC+b_uVHNF;R2_3X%`oO8rzt z5N7gtIrBN*r-5K)%kQZ|BeVGUZqzu-A2v8$;=g;H#oo_dY|2lUp;h<_6XwQ~Ca;Jh z4@38IW&jdNsbnZ(IYYb~>1pXG_yo+ePq&(M>7$8(?9=xys@^DQfB!rB5<@rP5v7Iu zD@u2As^0MA_S^;_kbTzc2ECWi<3F%;M2CB`(-ZZ4I9CW%6UN+a_`Z%uZHAoas!&?2 z8CK)2Qi6S}CrrCXGnaENDOquHg<)vT!X$vMsVNNwE^4jL1avQaA&&V#9liL$haQuR z@(-jaN@s0BS&2+MX5yzO-h?3AbvOq`IJIvBnIwuJ{PtPvv}}$((qg&32Ul|mRwWBz zdpb8>qR`~438d4BynBu#80sbFVt?T`@`6&1^5LO{HB^kKkejT^ zIFQt+y6CSZ=$A-Vi5SW!Wi%h=AohJiPp3=C*bV{^>BS^l*BGf9mJ7{OYWE6`taJEM z&jG46d&@RQrQM9uDyfDHhNVGsf(_V-8v)vg-32kw%-Ps!mgp+)#+t zcW8r6`-*B?bxNMP@T1p~O;+v87>67=)7z?f$8I3b7%@`=UgErq70eiZL3jYQ$rMIK zl>kHp(vtTC_~NySU3z_3G`_sO-%K4(y>MWPo!rLr2Uj$^;+Jy*kfb zggV-V6A>JtEwk^e}?(E5ThY?=F{3EU@% z6+|X;ha!u3XYGLxaWn`E+1;fUIVsMipKNcY9I)GD6@KXetSw9O+9=$eW7c6?rESTv zc+K&uR2w-X)5=ot$tt@)#r58&vK3_*H5+)i_> zb=Gf;HlgYrS=+{Itv;<)K_Sm{+-ONaRqsD!#YAI`dBFX49w3;`NZhWha8)GTAhi2y z=f;oRrC9MWA#!g&_2r`St#j!1&#R$Jw{8_fY9v9(Mbg~mpVtNN@JK7ST!Qh#Ao0gG zG7RkfJgXkvYW*3FNTM-f&`~aykE(Hw{Zt9TK)~RV-%si)T&=#3I}kOZ_`%AMHy3VC zXOFhe$BaFvBB1nAi{`H8UWe3{4XkMqj5ldtg<=h?Gc&em=AZ4b!82M<2IYR#*bi^o zd!ywNqGc4J+SfIgm3QIaht7vWsp%ul-+;&l$NhOSTfN=foV``7ByDlsaN=UgAQ!k7 zY22=X$0jfds2|N(-?Ad1N2S@aQ9icXMWHtHFB1<33ddMukowbAyGlGpB?SO<*5^s{ ze^`(6e^@W^R*f3at*P^G(M0uqsYTl49~GPo>(HWK4sEK3M75Y_o2EaF@N2OM%@i$9 z*yQ|p;_0F)IB$E#z9d2#bJ}x5n0b>NaaxW!`P}qkxyY6u=*22@xEz_bJ~EgQ5yIpt zToqB;wBX z!)?HS#oOmuD=V8tA%@hSwAU_;5M-D6$HiBZ!J?2%c&ylleWlb{oqnB(A?LE-j!;62 z`+*iR$)m<#FeGgUF$m3dPFk@saC9*}a+6CRF#lbtNTMZJteakPi#Ho8De=6MMfOW7K|E0By5=cMEP z^6W~ugk4|4-!0u1Cnh0k1)P1mL)s*!y-4b(w$)jfGEUM|XMdnb&B-=dY|t^jq+9Ex zM~@xwCg1*c$Ev?+DUgHBO9-Nc+^jqz@58j^Sg)SHoA!4rsG;!w;VqUi$%Wa~H5dp~ zqX-31d{&HE&KYM`sW)x#K;itm!f_Ir>MH3MTV`-gwgu8<&|tlqS9STsy;RMd5Cd-j6?jhST=#xyD5Lw83Yy1{ zU&v3%wts4T&+0ohT0)q-g1l6(8Zv45S;)2r<~!voTG9Bzj%PHRpYno~Br{8C4bD^x zi@8dhx5r1vU}Y@yslW}O^l2$j)*3PJ-_uYP5j6-8g4VM6E+WvS<=24^`4`nhQX5pK z=!fE5{1}CizW8q{vZgyreMjlX`%B*x5U}yBsDFRWS%6SZEt0#uxwtU*Xb$~Wr__@7 z4dXrRmWh1JWXE>WcM0EEqB0=w*;2G|OFP*K=Z>=Vo$WSi!MWY=?s4=PH=C5y76FfI2|}pFT~^uq zV^u1$^sz#5R?3@ZBRaX-+XDMb-;{gz)!in~5xlt*-;n3~7V|A~UK1!;zTQhUR$m`T zneqQincw{AXysqWKg1CljdT?>yzsnv+kZ!hawI~@3nhDu^vE0N*=YUPtTk+TMApoW zD-AUSlL2%zf`=pbpACY@RU|GqUa9XN1B|gdBwJSfFeJ_T2Sd89Nm)0g1J>s3=d`}3 zRHsWHqJHX#`vRWc0dU4ST?y(Sn^ZpmUTcNpk;_ZzVBFZ+PW-TdA5?MVo*00ZTz|%8 zDTJ21qNEb})eYGAOq3jg+4FK(XPj&Z59~$JQD6D1CL$4HUbBni& ztYL-ctTyu?I5?;aR@FAHUGGRvGWtB=#M|Nr!0lnsiask?{fIf7NJtQG69(G%}USMcw=?(Lq!TV)(v(q<*pW-kLFA_|^X}g@aFv zm+>Y76qikM0u=%x9G*U+h1RR0JW=)E_3d5`bDGw0t6odAV_DiTR4mFuKsd=_2Sm|7l}wV z-ez&XUAT@T{9v<)HjW5=Z*iY5eq6@h>gW5vy|@j|NBUtbHjWQ^%$R?7Mcv>0I_NjD z!NFG!Phne_XLBaK_5;U=ue}I~q-3iLRS*3{!G(d*MkKLkXMHP6wOV_jv#ht=4t)a} zO#dgx@d_nYYu|O2H-}zTovy2nn6fD9l@~4_RQ@%MP)+xu>7En&W207XxZLq?Q;ofR z%e}O0SXGr%r`KClxfOr70_*A=z>o|!|X`;NL@qcV+`f#S>Cnt1tmF*S(r$=h@6E-l!oyG5d6~l;6I8J}@9>%;8M{3Wsd;xwj zsoyKT+xK4#pqH>DBIx@B3J?ht=-Ac!&IN+N`^{jBU`xLf_~3s6AN-qzL;GLC7yd8c zWA{5V^~n(alUL@r6u!{*;5!Bk=%dODu4Uy4|I2 z3_shU%6iCB)2wzHTeq$1n!3t$wX@r1XZUib2VGC!uJ@{|i-C=ELf)0o?n-#EE8)ei zguE-^%&r8yE8(~+q1}~`!34?$m_Q*g&uy?^&TPv67g~QI#M7aD*{o9Me^Nj7-ft<0gbHFQ%-Q^EeaU`~$uK z32qxQZcIwu*K@GS{3D>{ZeTMIS~xUi_lYR!jtFUgBtm8m)r07UlsK75fyk)~ArHD^ zGW-=XJ+XgEsjCx<#evmIrnWs(I?a>=&#BsZZ!iH|YJ(M|gDpZ~;@r^F=26KeFh=+#nHwpIA{&+b5HLXf>#kh0UZn`7``QBJ%v{dR*aLuE$?H z$!R@rc`0vXHKb6q&o0J|MF3s9m`X!b$N_)ikYs*$HDM?MH+pn6>{j4G{dg3Z^9kDP z_b=bh`G%LcA`X0Zj)*kh9Aw!P7ia8atyy3U8aKh{Au)IeJK7&s>kVX!?`xS;uQR%- zpUYlS4?_l9%r163ox`|Dq$o1#JUN>QLzK_~ALrx`L>g3~^oN6%fV>v)UOmv!-0X zdHpUV+Usk7YRknwpdMJ|yq=r)cXxmHCvn3}_0F6}XX9^Qet&nvYgl?!G$3wL}J@HUYM0kN#S`tfIHkpmMf7k&~i9?Z~k5kR0v0lo?pi@U3T zJnHQ9@-Pi(M{ELj0YN65DE|Fdg%`I$G?DcnGrKmRVYIm*MUb6MbH9p$t)pw?OnSHAY-iOviC?^t_pO8#nQU7uW}fE^Bo&&i>RR$sbX~%Q-l8UF~!~Y{6!!xqWZwDf*56sCWO30xp#fY?ZI=-|fUa|I>i&~;j}hFz<3PRclJsy9Qm zlT87lGMhp>GE>2x*}d`j(g2-tVf5RywcRZ9|DgLl_26i!hgPu|n#Xii6dk@V1rb-> zNTm`3It;<6aBEhKnxWQa)s(rhw>Q-ebW)|NIZp!nP~T^rn|pwtEH!_Z_OSG(kVj>1 z08xy-i)=ER`l;j&ZdE~sL1{`bqmB&GHzO6bcoXaGjl*DuRH*g`$Z>Y2*ZtIzriOil z;4tAdUR7W~4wbr#mFmpGx}j06Ez=ydvOAV(UD&@2s%^7K zFNz>-R_11i8Y)(m)(3x_SeboFd=u9|u7)yIEM~5PK&wrxumW=x0p=8SzP{oa@bEWRg$hVyH! zzqEW51+S;H7LLvg9CN`L=5HL}L~u-SMXa~BoUv~;SMQ(tr=a9+qm&Pzrxs;m4U2Q-;@vN!xonmEz+RqZP15Y zV9*jRtC1xiMeWD^`p$4jS<*_*ZqNsVL(Y(#?-|P8s#tlezrFkG{kz+bQMlT;nQc2!$esMY zh|8L)U0}mA93;fSj>~O-RUR+gqh!hJq7qwC=a(+rmi7JzcN(dYxb03C&iZ_J0olmy zzN<$B8HnJXcqNn)XkhsHvsbr&bX<-tbpP)!AI#zVvZ_SxW=*ZiTGZ--xV%+c&C6>= z#tn~Ut`4IOet%%CnoeFccCgHi-n^|I^AQQe=>juE|C0Z!UB$D1?^n}v)$=8$w-w(B zuxQ37zCUk*yjj*O;I{4aao1EMifD+2khye=@oO$6_}H%H$FZO7tEQ3YB9*8Mbpd4(hS%UHfT-nLiM>$dHI@73a^1DdUl%2z0yKMAnV zlFtL`KO@}7yHCG=S!7wOXGn}AeBhmtPoTRO$axmpttzwcmvo9W7hH)vK=Q{*6f?ri z1v}Y)NN&eU2xd09+- zDOyhMKhUW5%O703Y`Gb^&pJJFS(Ib{kU|$=>q5~W;&#n{6J+s4OEpi~Br9BIvbH%!iZROf=7ZIBT@>8(bE6(D*ia7>ByO}}M1CjNzULI(Q5Vchz1rm-4O**d ze>m(VS>kSg(!lnTcT#dFN?{y=woq9Jse>TkVI9N{uR0VM=a|886g)GenW!p)nmvwz z!)aQ`GB=3YY^DLa20sQdD`3+sWC{ZJywI4jSi|LAdo!DoAlBE=;`;g`7dEiKxktWn zjgwRXgXG%MlD_rn1b2y?R#Zb22fhxVAw|5|t{%~U5)DoA5)9IoP2K*2Z23;6YaIti z?sD-Si4tso3q41JyK@YGvJ|Mw6ly;5kH8Lf%{ESH=Df`yft7VZQ>_dbVdG>y7Y4=a zoB*sazB9a~KeR^ip8F#~;90fenQ`o(K4JJfm^(-k;x$NO-Kg-=Og^u}*tsKk=qNZx z6=7F@)Jd&vSRwDi)2^{ErMf^-WStd@}FZ3#Er&Bb!Mo)m#uMK6L57)W6o}O;c>{@#s_}QGMODL(k zvgo)%uZtn^G&HJ%_E~^h>Y7Tc z*PUjEVJ^8b>EXtY-IN&>V{`KAjPe;0m@G4tof)PxMIp^hl3?d}vC|BsL<5hgOdd-6 zEW-e*K_~NctWP>;)b%>{jCacG*({Cj9C_(5?r@46<2a1F$lKVsLlin57*W{$G>&e6 zG``K!*!j>WAEd(MgX7NZ9%RMpdCtw-6VF7B?#-Bv4ISE$js(Cu698;;uu+KbNJy-d zynW{@6ba890MIwH#ccg*QDNeJ1C|p%a(?BC6LwEz!8tYJD$i$=$bUIn2}q*I%4KXD zg&;>&8r<%gmWW$euHvQKd+&l6Sip^u!npobMXdUuS zE0BKMQh{!(=f2J?267OjZWKq8NQMgW6OkNx<4A_NwomBwnHFdMD3Aw4WJCaeOdxB> z2J%Zf-v;skH3?+!KV9AC-bl9A1z~E#H3&C@a76@$D~@yF8hXhfTyd}N6+#ME9QU$0 z5{A>lsH>rcL05x>jX{{MMmI1sagLI|Cv)2ClizBR4u?{jbM z6oZ6p62u$B6fFGN)Vv}vYmTRXrq=O~B$_lqS?c^Y>!bwCZ9^Fg@xOasAgbIFQOWPc z-8jZzu%x?ygbTESQlGKBUfqI7YbLzqMUOmGG zy+1x6^~`n`earNJ(Tnkz{>$vEb#uSQhVx{cn7-;FNG>$+Ym~HrcF{P0G(Hgd&Qcr4 zz@*3}h^&OP^7!fSN%<4Dwx5n)Ez)oFb`7Ar*kdu|loa*c0!A#>i)EHc6YQ)B_9D$Q zhhmNdM zIFg!DtC*Dfwh@M25d`mlAeTm-gD$dR&ar8gr8yp(x_X{$HIMk&V@(W{#>Y}^huQ2h zsJ}KDzi`602UX}sk^Q(Nzqf!jf8B=#Nep$|_7~bvZ zry)EJd(~oRkbtLDRfC#+BsAWRBfjjspcX__)8bAF{=GGX2mP%AkVDdhNEtkS^~|TC z#8$*SVa>hvqO9UeA0YPn3j;GBLlDwl#!};DjE$eg%tSV0Q;)d`H~q&8^kygnEmR3I z3LZ%9kVfhT>UaVI6s$lfB*68srZL#5c!QKBxd{H21&R~0v|dn z1oC2M5qs{#B8XkpI*Z#NO5DeyEV;MU+-7xIpIV*ssHm`Axw})9^+jDVwBB*sAGAU1 zb;~=;c13TtE$eFE34Xm?+=kxTy*ubmmNu$YM-9t6JP;h_*7uj|IA)eri)dcxcDlkH zf4vAcVKIe?b>JvideI=IzrY#V532pmi#_;!Szt>j@t3I=m<6yWQQ7NCx2o4d=^(_n ztycFP_f?hiEDNfG69wzYeV^wA3W&}>&eEA~eJ@<5Q7lJGnC7l-0d8ljd?3;ms@j)&qpO@T zB4HRwv~{D~@;r=CIuAuo9L5pf9n9ocIqgX0e9!%&X+O{Xv(XM7@-;w5$@oMTe*rzZ zhW|FDsubSra&B<8{@t#UR}NZ7rkq6(h`?0#5Y@)pKuOGm@>6jG=jg zWz@I&X!Zrgd`e-$C>(i%J}D=5e@Gj`DBu&!uzp&EvHPC;;~_wdVUoD5?ivlA3E>aO ziv~qWViztwPE*%GG4p!g_g#l~>DB!LG=exr>U~e10&rp5E6h8U+8{@*L(b$j2vSz} zUsa@4!OIP`&rgj zWd5-5LJoLbFl~wh$i*mgM0c8^x_1UDSJ<~C2Q;IYxj=h@t3|&-e6SyZjw9wJaEWWs zGlX$uA{KxLP2wTRLbjPIe+;fFWR_109aK8Dy?i-gUM&Crb~X$&?ZwG)2lk-ec=A^{ zD85#4O5JJOsbf>>y#UacYcOxMfjiY`9t6%?^|-;gzR2z;z)qv)f{GdF#I56gu!7(gart4JV z=hqWP;@_8}WKuuY`yxXbgrR2}84k(2Lz^Ayx)Yc#Kq&2W-bjZ>3LD?bOA#n+QJ+pv zd#UWey?t8a{ma@!}P`<@=Y4x2|g`W zkd^-UtxIE z&ad!0FvZ%*Iirap(3$(y7kRT?F=P3)=~dwKrDAJt3HwwGL2FrW;71sU{{yDZL6a|@ z=~JwPVrP+p>R92=R2CS$tuO?`eXGuRc~BKfssTWb!V@KYBHn|_V%UX5iX;m|2Yrb# zmLT%o9~eGde}wav0d{y|wIS?F}Smxc8VQTDfPg~sAk=7$(G!Dyf; z$}2oqR;#Y(yzTk!Ysj!ACkWS)lp%n2WEdLsRjkz34xG2N17}GNP@x$GS;gU8K_)c6 zX-=2w5=+ts?IeMEw(wTA@E(gC{LAxwKM5sBA<3nMf7GSS3R>2vG&E8~SUD`1VFeQ# zgQ0C>Fr3&}!f8hZYHPE*D>#5)uB^YtJj+GIbINd)&57IfRJ*0Z4T!zET3-l$+S#g}da+gEM z#hc7dEf+je|NphV;&OFV}KC~4vbJ__0CX|f5H=rVb(~5{a%4tjMWM2g;XXc8T~^f zn@+BJQ$FS|^-mELs^XupOSySql6ZeT3JjsPz;HZ$enQAYp}1p<0mo!rG{HszfiOw} zk`6+P-4p5P_mS14%41nQHxy1PB9U2`aPa|@h<_vK!iUxG9W8X%;Qe7vP?3urG<_P6l5OC z0LSNb80x#aEOH6eyE_(1o1J+-R;muB!^Xc6;DfASDtYV$6k246cG-4@3NYEj{yA33-Wj#d1d z@ux+#m(XIz8K5`5J$5hGw7l+Lkub=k0=AMc;H!e2Fu+(zJ5Lxq@zGG5NCA0eafVlq z4@03J;v^1b4^#;JXmWVb#6?%ti1L8Y#F#L4tJ85y>H~c;4wwWnyz9=#ExxHBe;m`1 z)-0?U23gG%AUj5s)6lOadMQSTUAI_dOkFP<_R{hsy&7E0E9ea&NFwvBnApWWj&K98 zxyc~_%m!ypo?tL;@x{8Xa#kh)4UQ|3cyHsIbH%><;Vguor~<`^6ui2p|!O3 zdpyB+vsIle>ln_zWe8(XBblkWeJU|#IhqIro$;PhOQz}MiU`1Zl1@dNe_CoowLr}8 z05G9s9}xofZA-)*FG*ef=|Vpayug?ozKm*yjQ=OSK>pkYqW9*F6(Pg9pijqu7WnoD zzVWy1JlFz`A9G8;gf#xxHniAOB^)9{XNJ#<#`#f(zX48@9USwbG3e|QF;>}slrI8p z-Qe6T-kA2|-JAabAOVQ5mqGjj6ag@o5efnom%+sYDu2Zp%aY?Z?ml1Po9(J@x89Pc zDu+CJwq`5Y-Aa0D4wF`KUpr8krz!K))Uup7Jd*-;>cNqzBhTuCZA^i$;;;cf35mKRP$dR{(1M# z?=J})cYhHlu%Dq#LL_>;Y6KPY{F!z?TwHW}S*)j!eukZ9>w<>c@G)+mE6;o6oXCt#4m<7w3 zu4Jlyb{tP;gjNN8r}L0@n=a-v6R=h@3Rj%+vI6(mn&{E~%AZy+gkBi^IaedIz!#sf{zoNn< z)4I&$K;KM~I@`QioLXaGMmEQ-8!ncBF+z&Ee$?$si(PerC22tps)Hl=(ZHUbACss6 z*MBmXX+vYdAXqCKA}iO7s_PP!{j6zjlmU373^GIAPMNmIXwXMKF_QSkq<@%awV1oG zZ?PCN@V|?kRah2mu(D-anxmnydit?|<5@?I-edY|7BpAu(wm5^2bROR9duHRi@mPP zUC(3tMndW$dx?B{MVGGS`Z1Tq`6~Hd7Jr*&i(cchTXHZ$0PH4DGu^!)4~p=xDI}Krld%105-RxFLk|W){VKlz&*A zL|(R_4Ti9VmYx5Jg9gc6cB1c&E~1C=6@1}*p9zmXLn=GlV?MBkd%@y@t8g?Y>v~{JTaVz0MGc7nayl#%!VU2+lZCQ)2s10v;D1B>!+r@%*E>b81r!};eV|4kgtsq z91+T5qnb85l`$7hAH2sU)_rY`FUrP-kss%QGy8D=1=BDH`tb@${m`RQKlE`6nKQ`T zc!VA0MYz~wU5OVKFw&nKg` z&prhbhOnM+4Cme>Exl5qmH7BOd1LYJCu^&#BqFxQ1+47pmxz7G9mx zdg7w!ai!4a8eb^2cZJl3&ua_YD{zGR;cx02Ai1 z7Q`M%28a$YP~A8Rx4wsB%v#k#4Lt^ z82tkX1!-#n8c7hS)&!V}EThp^gs_LfS0jQyXx`>q)Wf{MHN(waDU(@1yWvR1Ms}_ZSXC- zsUOfw+}sdTegMD-fe;f|&5iOPVm&K$lFC`G#c3^OjUlHYOu zlEWcFfW_QRX23=hK-6Vxp2W+20q!pe7m+Qa)wXdrmSp52#o)VCoMj^ z*Xn|z=U?4Boqqs?$*{c=b4hMfISg`f;Ldz<1agG|Bin;dIAZ{=ZR}P}iDLUEN+V>e zHvFVc%zxnx@7_KmE&vAuT>(wRXM=Ci^)Sq4Q9Qh0USxk&07mabo?9}iQcZ`|wZ-NL z#ynf>c&mz{TaO`<5sSs>kBu*C;I+ynD*tQ)zf;Crqh$6Bie}l&0RW`M+;i-^+Ca#j z5!n+>6$R#g8zmbHu`%!(ZbFjZNN zX|S#MuH5e%S?FVx0)}L(XK#r@R{E~8kIDa56p46R72POX^JvxmN$T2Bin{BU+lCU} zrIvw8&@3EOh1L)-u>TH%Q@xK7bI%O2fpJh=qkfZ*y*=o6MY@$dH{GQmnVpz#)RRZr z+d;_}>``qc1cS?6+gtKV)S&N^Qasxig@KjccTO}2xEI7#uLBFyf%;%RP#?^V;PAat zec_qvv)}uNH~$BKLQJQZLHq&~0x&t3kx2p+0ysC5p#&&@y;y6H+qM$@o?l_$8mJA# zT)iz7&Ar!2oIa53rjC>LqAgrnqHT8dsvg;Oe|?7>QkG!uHM-8C?J7nd874iWEuvs9d9)E4C30>XdR7ynfTuHxAhNKZ=Ci>+x3ZO z*f5VA^FGdhs^yyuH*_or~G zZ|Q|U%HcE1Felj#ztz;792mC6ls&ChMQm!hlg~VqePi;g;Tpdhh81gr0>5`WjWRLx z4n~-2k_>HffQ=HK5@-a@NAt=@H8{(NCD`@!?vrGK*{FoZ+gdxH>9sFDh;?Dz1u(I}jB|Ma6BR;_9fl zicFAy^vDDWlG*k_lQ|HS|1Y(KkjGQID5j=A+1Ck6MMgk|NkYVT%kZ1ivSd+LCw&)< zgjI(u0=`_|oZO`G5ydnNS>8;j2k){tM*1aCA=(!-Kk$&oL%ij*ps)Zd%C9?W57jjK z111sKkfy3p-iijK%N_;W>WB^48KyhACuO~VRRW&k&@hV$z2~J8LocS=QzxN3J@roJ z1y$xnr6eU+jr-#e7*>c)7~r$MeN9JDIciZhi-_qnQi zM`5m8Wz$jy$9T)BmI~v6h298qbh%8jLZvTHcUh6pQ-afNR#&|oKW$~~m%2{>4w~Ny zo|SNRwsJdgFt_2bvwig7(=@OqG_Kiy;Bk4ONSHpr@JTRNFt)|*6Kd~EC~LRM=~~tS zd01!~V2fmR(bTO5Z$cH>q7*kLPb~M>p6NbUr7(hQ0>z!uqwocO)~hMhiH}QBv7b;3 z(R*<330PlAFaoUY09eQwi5EJE7aDE6wyp4j9PxtWgcqb8yr7hLL4J-GlrKG;T2#%P|m*NC0x6XUk`a^knWy`8?*@nPL=7? z)U<*LLBY2*OKACAx!)Fcpn;IgRjOhTfdaExV7$>f^CzhI7KRQcyn7x+w5cbq2*E9?Ykqz_G-OjFf2b zFcOU5rE_+8=W)oO9AAkJ;#J9f8ZnCIKA3-OhL_`b-ZLzX0L z5ToT1!#5j@;UUf#$+gKp*=#gY2d{Vtl^TgdT&o`|OI*)wVP`vz0OHLIA7wgLqWxg3 zESuPdb2(PqG9;|Lh{Nf^Xt}dekKhmzA73UmKFDMvinMIU=uCruw8$K0?4Yb_cy>MS zJ&tKa^GaWHbof)IZ@*#_K>aLULg94X$zZJ$6-v~(d4TII?`e|9y$A1ump3SHp64{x zZVuH>&GoP8%rgvpnTiI}bIYE%fr{_jj7Ind7R(8WKq9_%8o?d3l5nN`peEXJ5Mwju zsh*IhdKfP|3rbplT~W(trU8^{_mqFvnVPGpQ>@Ih^T83V=q9J)z9NQxGsACrEGw3f z9gi7eu;-;*b0Z8y_c;#CX?QDN8KUz7KXSAceP#vU!Lw3a%7sWDF7kkAxxnu8MR)ZW zjuWwL3fJ|snPE6gEZ)i;H#CA5n#vgRmEzs20Vz{tdtd^TMtL2a5O~Pn;HU6|%p>ks%-~^A4=)?dlp=b?NTx&-f7B1odIUxyQXQFEpAa97{lVB z(UxHt!{TQ2r9{CD1P^J~!4oojUS(x#X1!ZPiiuf!VzIqi;u8TF!oVZGJ@5Ju1H%<$ zU!tp$+EdNcT2JpgdPnKuRi4+?+0Ko#G^W+X-2=K%{(@G65p?~TOV=5ozu`jBKiv_#u%WXUH=>-K*A0R$vVUU_$~FA@oWB#18p5R2VHEdFux=Kkh~ zcVV!|+${Fv#r<~S3E>7|yhviyZmoNV^LB(2a$^SosNVKx^9i*y^@a%T+9d^LP4v6+!Z`QH9Q1 zRS?K1$%C%h%ADz2bvUXH3* z8U0@ctW6jLxqKCoXRrD8{^mb79;^}zZ+{S7oW^bfqRS6AU%rV&0Z7=`4YG7`vZRMa z=z+{Y?qX3cKHdC#5ZC43>IWn^(hsl~hu$KNGtf^sr=OAV!(_75ceB*%HTAk_mR{t@ zYPa-+1G4iY0keVz@0MZY=(42QFJ0N{)yHLu6qRBq9cgIt+cJU$?Ve`;0*%&{WPidR z>$2_|8o!av6QYX}HwdEtM|312f5wDkKXPL)q1*nXOx|eA)kH=kL!G!m3Wkumz8BH* z`@P0{CYiJCs@(1Zv(#zjcPl+cN(RfOk$(~hjS)emMuW4E?TBbtSTI>#9~oAodLHnj zcn>A>{dkYeY4_^DoYVw4f-Ug=R)2d$L=e+$R(xu2>>e09-x0~+FyK4LA}6n_R_Y2T zu~SzBlsuPRTOVYrb2x+Pcd9}!L|?_}!CK6btp(SV)>_=2cHvF-Oe#ysazQ&8*O?y*Bnuq{&T9<~ zs7~a_xQm?IF3H_{FgNAlia1Z4L(AzklIIFvc6f4@Cyv z^kaW--l`=*<5GzDsk7@q#_enfu>8UsP5cIaz{U-OK3XBxh6RA#E+e!uA9ubb6nPZj ztVaQ0WN3tV(2_92*0-+fE)xOUt)jqljk$9&&G>0n+X}Bc*LzwK}UGkybC3>gG|VvQ%4yGT^z>_L?_VH=`kunW9kkz zctmlZ10=omCcV)n&S_tlJnTJEJ_7f(9+t^*VljSK!3=mp*tC7X*JtCX!`*oN~jlxkTjCeRiA53=g$rN!B4 z$g*;fKz)EqGJm}d9PZrtoWB6gD1X5flx@JMJ2H375ZxSym9ln2lfq6ObbgsI66d^` zZu<+|(ZJMG1cE zd&4x}0VBS))od*_!ox}HKE%vZz~VJc7U#QHs(NGY=?NwDgX(77WK7}?IPF`{##^YuUE;S*~foIpE%t&Z!ybTl` z7h=Ev_4C^?l~MTOw6JzU_U`rjPj8>U^iv9l!Nu!P!YizIdZr@&YGk9UwkCpmLSFif0df}rU@;hhkWo^{DQ1pIY*l^!fx_s9BjGln; z)AqW-w!O>mZ^eW&=YP^W+ z?|*>mH~epy0{aOzkqWryFkU`XATYitwF4|7=L9~fP_Xv^sp`*LDlKifcC^`eCeFLt zF#|7-$tW?w|72sZg3z~>8KS7H%UdgvlzKIGSKj?F)SEaPBsmiu`kLFOSCPo~5ZCe{ zXEYGEs-5{8i__zF#yF*#@;^?jZsFWpPJhlI<>lP4=B>HY5Q(9aHC{TE>7#b<$aL9! zR$lBzBA`nRNz=>i?gQ9)qoLvpgTQtl!T^f3vosJ)(xCBJ14v34Gh#pxRZHb4J`adQ z^&raHnWdq21mdU}g+SYwnC;bYqb7*h;`<^W0o=@rCJqxt7e#RtlUV`6ss)P=KYt-R z1>ESOIPKq_z!voVK_f-aMjmTQXhd)k{IUMfcF2DGSWsgphLX5#5hJXo&n+2iFLB_E z*3!BYHHu>@oDq`mRZgAJf)KV-1BkNDq3U7So~dVq8;yjE)pQ6YrlCgF*?;^j7@8%3 zkcL4`UCdwg%WAN`Z_GZ>GyAZEWq%(aLo?GJ?O9bI974uwK21APODY(3bpuil4levK z3CNj};87gGe(mkR-^Aj!F__(1-#AY> zC;$S30#^GXAb9{t($8p2pNM>NoX@2`z^4|v^1-__pUCou(S|qajFpq$_ZcAkzMJhQ z*E%1A++P-{`v2SeoBsix@*=mFLHq&~mmv`W6a+FeIXIJ{1So&)S>KQ2xD9^azanqr z0GphD$LZT{+bvpL4+U<3KJJ?-&0FiemZC`@eki zE}cpy`DRUmAw+-vR=54P=BXWe7JU`!1iqzN^2xWWB;E4It9ZjasQ6&In{S_4w#nDq zBKGtBb*TGlwXe>$aaG%xdbx^=O<=mtJb`?y`jawyw6!%($UNvz7Q9h|L*Fi=EcoeS z%iiw6*{Qzq6Gx-f4`CRS1lda#t)ghX%`#YaAx|u6foXqm7@D#t)!fU1ssZ2-Bdw^w{<&sGq=+iAbh4J6qRcQK+lr4|sC0`W9_x4`8Ju zi(Gu3vk$?PgmKWAvlU|^RsGz7DOvwU7EeRiG9t_}4ucQNI15Zg2G$lT_{-jRBO zm4vWEU%g0zJFkZvwVJc=>b+H*q);p&OdZ*kILUt`J({Cuv;Ewb`yDhZi~f4J{=~gSwKqrRi8Xw`Wf3i#UVEe+aYC4Hw!X za@~r0(dZhIMI=NT^ieuZOPvQ{Od^-AEv<8qQ=j6?nH=ft#hM=BL#ftwAgn1*pu}2g zIaYsOv!((WO02y-ETfQ|Q}VPd0FxF@{*w)&-n4KLV}k&o0VzrPsR3(GDkvH#L2T2jGBK5@tEt?B zLs=hh1#@`S6(%WoB{PP@o$)3@WKqjYp^bk_HfiwPk|OPm179|p3DHjN#W*L*`J;CH zn2A_|>UX3i!%Aof%0R2BL_JluRviXk?rPJ#*D0+RtD39+kA^jSE(?RlQzdI65;hYd zHdA|PFGG!};;uRLTzQz3D7PxM{+b^Z zfMK%LrhYKp(S7=%`mJPSv_*__%LR#D>UfP|uG=;pLGOh6CXp_qKGaI|ajf>8;ciZ) zVo6zZ9H_YW4ib`RB05gtjgZY{LLzWx8+<%U#7MgHbRVic!X(pe%*L}fAqep219-H9 zARZ-kCE7QcMphQ^B7OpC&^%9#O|E~1y&fziWGzhiDEE1;w#+9o4X1^M6lj=61mcN^ zeT&vD0~VaY6{@k|urJhJE*5e)F?-xL7*DK93yyIrVmhjv$Q`a*%glctsvYWA z670O@8HHFbjmUCmb^(jWA5p-Y(P9V-+uxhmk?n<)!gwPf`|Wg3L(^*qG!MhK_CvS_S^2W4ex=2zzL zKQV4c1FlC9Q1%3tq#oz7fa}|f&hhpMgL^yc;|Y3;qXgxLTZfi{osR=PmU-?-qk~2i z`=SGbqU7qS2=@??#D{%kg(_*Qmk#&F#)28!bqX{QkL zY?=Yl#@q=K5qt?G!lb|B5bmb}(VnZHy$}~{hoKR!Fn@|x#4)o@{cI4^lx_VPNz8zJ zlEg{00h%VZCb6(^IVi>?W+pBobl$f0aF#n~1eDCo@r!E?^X-3A9Lwc@OymD_|A`64 zNT8GZ#{A_AD5Bh75}26guSAuEp=^{yHc=kM66upSyk6Tv1wL1$=`|$7>?6sW{m&(D z{{Q6t?Imx|FEo8^KRtnA%B5FuARh|}1UUr^@=&n4n5MBc2M2BZTaACdbUmS++{RyS zKLLmbvEc>xr{8~{2(^@er`rvMZU;O=G@ez;zSS{>%tYxVLLdCFg0U@1l8DLLiI@P4 ztzO}$!(*jMvuJe6R-Q3uw)cx%L{;*OTvTLN7Zv%fi;8S~z|F5ND*WB5@K;f00eX#( zy4kgSGZ*;9R~lkmJrw0LNvYN3R|%q>=^h+Gy%%J`_ac9exR;65A+vc zMZ=D5+qP|YY}+=z*h$B>-LY-k=-9TCmzh~_t@|UY?y0l49+~y3+1zoJDnnwcGSUE? z?h1Tj;Map>e|BdG-tGK^7d!`u=Z<3Jy{@pO3N(21sLc_dUXrDQOPU3y^{w;$ z?Y~45t|2|CzC{|R38}5Fo$=sY7Ql`UIw(Amu!H2Vfr~)WUH$ZSXWtI0sd+nc0^HnE zm|Fq2_pr=Q9k*9lgC5RknM-3ahoR|`?hA1*^{MqYhVf_oHy{LRi;#Td*ti-DDDlsd zo&$1x?^~gUuqV+sK!vPSseP);T=M7*o9TV~x9)cL(-lo=N9RFlc^BZR+U{Yu&~k44 zJ=rclr^x+HaPu{6e@y#mqG1WHBUSY{lXj^+`Cv?LE1{cWr;9g7)F>w!f_>pdhEd@` z?euAy5Tcu#-lW$w0r6)Ao7@p*8bIy5)eGvwTlbKJd&(fzsqS*Z_Hosk>! zzf_8ut=a91-}!d;+ZO=I3}~z9p*wrHHDH28VZq(S(Sm8&MCd5n1j@zi z`+P1hb;^<~|H_2OTv}S%T5?sN=;GRHaK8|%m+SOHZVjv&uNKnpjx_8FX^eKW8twI+MxVxi2yX* zeLS)!uym)(Xr(AjsA9Ip*3hbOc%6z(KNHhbpcJByP6zJx->9p;IgKMdWvQ`T{m`t7 zs`nH#VE}PdKe_%su#SX2cIYnu1f|pRD3?Rm9q$gk(Un^pb1i?kajAUfLzUJNChkue zPK)7l)bqfS7q2J%ZOQdhnn`hJ^j*9dK^*eF@oW77!d<)O*=o$gRr8)y3l@{zRhY&lsIO5;zTXqIa8$7GX7n zv_-thIU?g~0i(;5@&aYt=EIp%VW8DvTV9!n62xjC?^uR*Ey~%_|!SJUnch$ z?S~*tz76>RB1HbOcTHELI&nX(C9@2jaO^~W5_oZDrMKjcnzCPAr>nGbD2MqDW z#YprWG5gLQv%DHCLg)l{_{+F|#X(DD^3(ElBE^WC{o3D3H9g_pzOwUtv1|jT`TBT_ z4QqcjWDnLk3!&A};XcuZh}U!F!*?&#g-~s`y!Tra5}?zA)xn|&%SnmbIx&XWI&WS& z_FEOYhL9ntji2xb?{_Ku3-gQ7A7FA8t|ZG~YHd8mDuhTQ=QzHB3}0Q+28Jx3c^{1{e4{v_Bws5T4jel=`-0TF=odI?;(^byVDSYD4WL$Y)l#kK z%uYP2n=?N*dxRe1cH?f&L_1Z~IpqrufJpa6Ub&dsO|B!-k;qvz+i83+;C>?8`KNPc z4bzFR_Zon3%MsM6k!R5weFsW!{!t5q7)(M0?1Tws;X4GDI1f}>R0VQUlx~rhmL_}) zHZs|)Xx_nKaXkc95BIhM4oFW-Tv|3;t{!}XT2h!Gbo$5C-7`p+f|4J^hPt|%M;kbZ zq$~(4GNaimUjOgjV6HS@5A>52M{ zk`*v(_=L8$sO<>brdlNbn%TJTWCVs8&G;Zt9@r{k{aXLKg82_81aRl;=DZoO(6O=o z@pA~eb&9QS6qU+z%%dfCHU$?Ap~DZ};_c1|#oI)Z<>_$+O@s7hg`yPi z4gLt5lOOom=5@j@%)bVUFbrqffzrV z*x{v>e2H$?xf98+ZTa^g?!s$&{Y%?B+<;IxPY3%uknh4ZJ%DxY?=H2h_&OR3vRexI zg~vO_9i2aO+!3?Hh!W<~^rczwe3IhN#b{dHS^rQdR^)DZ(m1hMvPKD>T(95 zA#>By7=3qOb^vC?b!~%|)?`;r@o*O73j;#>)D_Zw9EEgGOCi5CPeImz-vb1-d_)OX z;78Y-=^^|X4S$z;jhF=SqDnUWsno%D!rr%?-b_{;K3u~HX4rgzdMd}9(jJ@LQ=ql+ z1C_E-&Vq>A)I|o$r{t~(wP&HfB zZvJG{G>F;(e_f@(aBA5D)_Q>{Pp2MIWE`AIcWF%mSXASI2xeb$JGGzYw|O=15459a zLU{}0vH`aKwi}(M<+*2xMfGas=2c zvoRnB3jZmlN#YU?=V{NhJr|>U2AP(R3vxC}*8>#Vsow*rRBZn(iwA$_W^_r0x-JQ= zDdxR9^HI@j-!QMfVUvVE?*G&hXvIegaaLqEKIb>DJ@@Ht@Q!9V--? zodA%>>0qwvKqjKBiPkC9LxH5g#mSqH{0)~Bs)u^%Lh2#KxoZSRskJdU`X67SKI#jB|sv&86^9UV?-b< zuH!-KU8|aHrPI(?Q9KpH5T2T2S=yutS+4Qt5hMJ&@vTAgoO9?1bM_adiHAgCL@{iC zYV#QlLOa?#U)HBy7b%ZfH;){2oRZ;ST)a_`CQW4Atp-bmVH}m%B_%N2^0v7o2l&n~ zY2-?(5-*Yt#W~|m#t1{~F}X}aCV`BNBXl~R+%urf>Cf`!G6sUMf}xNsF$4 z?fG|-v(SBDxpb(4Gd51NNiDt7sJ&#VA*LxUJW|WIJd&}GUAV1I8o%g>c38J)Cf3(X zCeR6oqEIKu~=Swnrmnkc>9CPrErwt&J4*yFs-~xZM@@B+|KnV;2c;dTEH$>zpuJ zqcbi(X@uJq)kUL{21FvM)l9p+H1=SDvleJL%!??a>iPx~5r zy4$eAVbqlh8dfbBleV9B`YbR5q8SVWK#QERuxCHOR+eK3nhYD#eq=>ZebPaT$&62y z8*cuPz8#Hc?7{&ma?~e#GKqxMYWCKC3XXh2>nB#<6KONp#~pXMiW?DZNFpd&hwK(y$aF11 zDV6h~%u~+vuIrL*&{Pt{OJ%KefFj(Gqz$3*WJxY)s^@RP@g-XY?C>FL!+1u?-BWOX z%M$Q^a!TDYsh#011r)Y8=6`C5mpMmnWz^wmM^PS<&oc@;68@fPNSjCt{$PcF*kRx@ zOwV+7lgG02+y{<2(#7?Eg$CLwPpF7P3k|E!g{Ng5XT$fDVkJC}dm~450GsOE|6+$v zQe@CRpMHjVI9=akq;;=bQ|6&C30>QIkUu#`11vLa9oO9Ps$WFZl~t?Vr!vd49V8>n zvI;C8TT>3j3vUUxsQxF#Vu%cc0tVuZHZZq`B`cZX1aY!)nA1w5n`qz`JBQh z(y%lB%1O%K6jT8iSEHbL;s zoH&E&etR3beSyM1am^_Ro#ASVqc^u9q^flVXIexzr9SJA_#!a{8>sje5Gg{qu*Tl5 z{lBrYs3?tVNYE}>r6RrXJYuify*cx$!Jw)6@uv9!Iy!O;<^v16mmhCt&73{ypIkbm zS;eIT3JW+!^cQfjfI|-%p@*W7=oHS?jDM3D*QNJszZFElB|#&XF;w03{rtdL38$mN ze%*XW$83)uylq{={PtwR227Q34D230E`1C<@75adr~8%O*3?UA@k&DuD$ppNX3@2H zPpRDv_$|H*2glM@JUe73>5hsl{r{zmO$09H=K;SZV1hB)&xzzyr|>s~aBvmQ4n2#v zlBwxLeFeG=Q)9ct@SRn>JJ2lBubiumL_1g}LLH%JGArt_46C1@-uvtZZ!9d6<8Niq zcuWH-{hfIwgvUF4HMzvjCC@z?gUs{e4%NKT6%BR=h{~Ef^l!BtS~UL_3Y+)Y;Bk}h zT$-`~K*ySZtIOD3V%M3~oqbTjxKQ?QWnd9ZHGS0ABJW?`2Yec3B-9dqX+NT?{k?u zXj9=bcsk8Qp(h>TEZEMZ1fBb_3%p^}9N%R^rwV_7pa8S{*Fgo!!NvR^-32v3#`(u~ z(S5G&-~`2n!sH{v`>@mKMv>jPKz>IxW*;UG=@g;@n5z zgY)z9P<2rk={qg#n&o+K0vCd(Iub_hSlJ zjor~M>0~$pbQKl;h$rOU?k08Z`k@jve7*)G;JWxH68wxv1?z%NTgrQ1)x!2#Bb}|# zxg7V*R6le;4Ml0GKH-57zUa_5-9i>hg1|MgYugy*&W#Gh2-hUKYzhSMS90smmTAq; zd#b8*{LoQ#$FhzlP znnH-OS&EFe^N!*ZrRSZ%Vtb>y_|=#r!(Ib~j(vf&B;jjpgugKg&{)^w&Xa!YQCpv> zB5la8!L3?o+jB;KM7#sq$$)(mbV*V>0tZu6ZEfdKUxkq;9M0HtgCK;wXFb5oCKHkx zl_?~B+_fjfQ|RP+w+Ck3-9ySEfF^bGRe~dS7;>7A9QD|%QDHL5e)}_E8j@Q(y+ss? zTO2Yz_S2R)>u?y6d2cQ3*EEjkCN4a@>`;8EEB0WHb{sB{I9S zV|z+Ez&lzR%5+bClXzyJznkY5Tl5Y#?GD^|w7V1QXdVRZ`lB=EWLQ^X|CfQzZpLXF zCIQ2@E{YqVbsz`uE(PwPsGWq-yu32uc;$GtR6nY=%`o5iY|w)d%vgec0IuPlehJeZ&;ZB3W09#FDp#8GJ8Ct`%0%M>wY3sikx-|<6 z2$M0Jtd_>N5!C;rQA~(?JynbL3X-uQ{YbBRz-2n;QiBLjJP)1vV8MS*E<<`#Y1N$e ze@JMuXp#XOAREg9)#Se2z@9rts6u+F<%PtX`erFZAe{#NHb$}}*g=HWUOOW25lE`I z0kSOj#A9+%O=zuf`*narYQ4Ra=2IA)Ug;xZ1b1ESv#<|^@}zCZ10Hk(*g;iZZ*$3x z0)jK?ly}sfh?&+&^zv*s21ffQwG6boc!k3)okIYy+}iU}Yd1C@^b%Xeri)mHYL;Yk zO}eSWvk?`_&7T#XR*fpQptcSeb&D{8re2at! z_|x-DQa6)H@$|C0J$HCh)L!J4>Q=*yu0kHb)pfPu#R}d2Z;moth85b#mI9SEguAx2 zMHUR;*tL=L1l6ryW%T?yOQ>1BgH)SLhkL$d+!C+vR-aX=xkrC)CGy~ZNNt4qy02)= zAG1b#iu*XqTi`kqP|d<`^q{owo6^$|p{+u5)oWm61tdRW0!e6%+J8Hx6?n!bCuwjY zJi=zq9|Ce+Z7gmpm#Y4u>4;eZUB4&V0YM6=3Ef{Esua$h^P+tSq~tjFnKpdD(p0j` zOtd%~zG|vty&Ht+83`T6&5Cx?`R3O*=LNM5g zQA9)r_9WlHp_)L!(v@yauJs__@TVLHXV7S94L!vFn^BLl6(m?8s7w3BzMB13MlC?+-3V)K%s$~euU;XkgvxqvoKMi zY7uYInAW<`@)GUoE7d?@AzmGp4bdr{2FYbcEbH@RI(Gf5J9U+VW=<;Jc znYI(OVB8FJgm%_xz(q|UmL8%uYW)3<*C@&kYKoFim)EQhTZS+ z%4WrgWNl0Q#VAy75!xxT!+x)8(BQ!*vO^q}M@Hd*_A!s=$|Wxs_^kJMKV!d8`sH{) zZVBsyI;HQqwpph-Fd>W#_!HjU@3WiJ>gz9|9lf)h;a&n2_X7z}6Uo7XP>|5NsnlnAXskma?`{3pxW+QT zp8@>pdUsDL;i~u(!1`lMDzbM7!?=pGze*dV_&P9sd_gAC+Hcv%JpD%sVia1Yzpb&x z$|SB~)DPmHY|yC4OpZTj5x^jxpH#uOt^}#3PNsoa#X)$~hmO(8(c94b%G~otG^jj< zQ**^igwP?@q0L;5bn)B?$Jtsusa;J{l^lB`hPNv?lkI;3Xj8^VeDOV!2TJBC);N*( zkKMw;aX%|{JRo{4fc`vj@sE!UGnl(YtYXCMXyik{>l&W$-D|&k<=4!E+J~BArZ+9( zs-dAK3}cgBY!zo2N+e@>X*W~0Pk5ZeQ#E|lPEXxqLpwoe^niUDvcELP1QsTvKXsgZ zA3>a7RS|7FEzip`bkA4&isB*%!T%{3RAd z@&O7&eFEdN9(f>RfWDb&BT>c3Y_LfDfa63Oxp4~u@a!;p*T~sfPyQ=u&4R_p1W$d! z@T&F^^AIK+(sw%hG_ab39t`Vda?N#3bImlj+chUH1fKIH-l({*gTu%;a3Z+Cfj(2g z9Rvgbb;P1wJ$na)ubBvM>fSbRh}kgXF#TW?PmO(kuW)_{G0f0#2?SE?=0=k001gVa zmjA8ydF6Sr^a(bAM3ibcC>kGPbu(o)Vy?Zo>o~3!HXL@e%dR__1#T<|oIUAj6(VGZ{jcpzC<$*2x0Ko{2x$(iUMhkGEJm zDDsS4UK%2W`;|B#R~BLQ*?l4&0(vn27>sHWa{)N#?9>oh(#za;bWYD5d3H$kc>NDR zdFDP(jdd3LWV&&}?e~TOen*`^kEr(II6<0OAf=lxi%F;9qx8+0cjCCg=MBQyV}>J^ zrl+Qj$AZ}fwJ}<#V-Gteaha0{E8F^B6}5x@0vt~dSQdQ{-u4-9O`)SU^q1U#^lvx> zieD%L^@b2G0!!9eb`O7I$5slx8}&v2H?;4*t$=5FXRnkq9?rMXovr8ED8Q9HYYN5` zip7G+d$10iYn0%7S(SsRZ8Y%-zj>xIM>^J1aGG~cx>aTTeP#Zz<;08G#xb(1&8KT` z*(N#V+Qu`lQ1s2LVFs-;u9aWp^hxMOQ(V_{$yQy#tKYFB_2xrmyl?+nHeE9S;}gE3 zeg=Lc*_`1z*;lVb;he7?Hd0Peq;Vxxp&t|W7(qsOw)Cslpt$PYvTsyJpPz>E(@&am zXcxk+Ieq6t(GjC5b!M@uQ1=H3hQ}dtk!He+{PI6$qG?CEh@v4l zDIGRgxdLEt`M1{nay956Wm|l4g>?(n^n@l%d8#%rQLZ-70zS5sR-$rEgu)VlJQFVQ zDSIeP581Ht2jWsKkm(r>btvZQFrNovWE?EfijuM^rk2sFVA-!p##XdmSU=lZ){oU4 z%bT5`vfUAFI0VQ7sp#|Cc2QDztU!t?XzN;6IawkV$DqSqblh~V6ORBiP*h$6A=G3M z83uSQXRuNsH3@77o5oOU~x+5@jQdGuq@RiuS z4S`24dNHAn79tGT~wytjV^4|rx#lI&lS7H3I#SU!Q>-5tKN>gtxhx`pj;Pfga6gOp`|G0NN=zPx~2 zDDyAHCaD`;LvEMtudeyOT0LbsEI*GPUA1~Pd^}}&)UUrjjDsKm1b!P;%i9B&M^Cpz zW^uP)R-bP74$rS&`$vX6QZe2FHh!O<1Mcqn^KyM~2ZSu^Evnu%nL2vbYN+$PtR-bt)H4z9qBEt^0wh;+URLR|4cRs3`UU3t zMaN)TSx!S4&giTFnG|*oWcD$&qgXksHbi}`L`xo8=%&OdVP7G|i=c12%+S{#1Sk7D z^rfYHqcC|Gw4td+QQRYFNHhjzBf{5pbGk6iGp=DSXbc*+dnS&1al(d8qr=4I-TLrr zEoEnx4yrs%q!B?U3dX&zjigzDCJQ?e%iQYH;TbbZ%$5P5#0v^;lYE)azVz5?to;~; z2BbMd^MKZ%VlCUOpiUQ}eOgpT?7bd$E^g*w2Zn47A#wBJfRsZ!?!fm(e)C_wMQ)V1 z2(!Gv{j5#S{;D^+OL=;Gx6XU_WakFOG+4HRytBR&`AO6?nDWUwVa?eDoz=)$gg^NM zudm$&%keNE1l*N(YM?#>0b9l*@L0fd*gYYH)m-k+$if8*>!(YGt)DwD@bz+G=;guU zak!MrQcBb$n8?&-<=6KHEHMvi?%CL0B0VC2;6skcI;G>rb9PVDm!2E>yoO~C7sBiw zX2SxJ03TvMbHCiuth)*;(KoOpM}C3cdKfh$Z%sk9gvwNC;VQ^I#*}Sjq|Ni>j0x(g z%_0l_0R-Oc_B$H%)^x3fV%^WlcYG~1T;TR{Y^3gm*CI+q&UYkNoaOl6aY3@yk(Z?e zO9cvyarH>aD}#zebSkhPIBM$53J4k~Gb2YLQw%lWKSi$A%by|_0k`v$Y}HaJo$1wj z$=24ntCLiQ&0B(r*H4pc^Q1DVvH5xhgHUkI>EPV%xI_Vr3aFn0xIJ-dF#E&fG4;Lj zyn``~RKETOBk}!l&{>xP5+m`j-?gAOchfvkVZq&V$lt0XRRh_)F11aAPdDNHxnVZjud}N=lWyR&a)rQ7 z6Ksdr8DyiHRPaJ|fAT2cSl<4?>sQo?lN#UvLW{P?T(X-`N@We7SyMpwAy?YrVt?{a zNg%lHm>Y$u6wc0)ohERypY3Y>$0H+w`Vm?7ON}<~_Df#BpSI=W`E`k?UNX*-TYBfT zn6-Zt_N6At3mapucTS=x(x-{6z|Mi#!qk28WaH|g)4dCtePgfwWo$r=y6{Yag%@D% zOVnGD9;t-Sq-nv*tUK07B~dX#ad==4oHvG>$-_c>xa-{R@3q^d-VMgLM0#A)D5@|9UD-!J>6NpC|l^4{LQ_4yB4FPTB1Gnz7(*0VF4w0 zD_-p?5CyzXvnTbWF=-~Siah7+=~rZ1yl%5$jx(!}hD?VEW`fE|S_ov&gs{m1)8Aqr zw-z|;Q;U~|@C16__m2|(+&;tJan5J%+M*jpG1sR5PgVN4VtxCQT_EUz`x{`4$1hL` zg6gqMNs841P1=Thw(&|OT~WADF-=O0m5mkIr9hez!Vg*a)NG)isQyD&PyuuzTMz@M@421JHoKxY8;g(#1NQgPfcs0q-I<;8RwkkJ?vQB zZ|BiPzbjQP*_}2Er%s*tJQ;8@Ni&zOPW&Xzx|bZ+h5V=&QKe4IPM(#8g(5$iR?4hl z9Lst5ZK5^(Ys4|fZe88$XlOxBeH3|t$iEU9F7RA>UMs4kufXwbYBUxIHQF{gpsQdt zvzzW76fcT3B&D27L{I%Gg(Y%tPCUx1QprL?d|X^VJ|orG3~dcmFB!nkS!j~?8VOW1 z5elz%8Q{OTnd=RKv)(7PP#sRHItkVe4Y85CeIY0K(Qm;%+CKNDNIpSuuJM zL7az<^JSiG2UXsTy!2W&={oT&rK|#Lab>@rl(|>48`*;K-X4~LZ}j1-=g53zO`jE( zvoni=>lG-{t<;}Gd>iiLZb7E)7$xlt{`;_fK7?}_vaZ5rV-=7ZVa#4@*1Y%)qVMPE zLHwvNA%d*r*?a1QJwkd;Aqgrx7N zvA64RW^2%`FaCWd9U>-31VX^A9&z?K;U%gM6`#iscU|f6vv3|qmHN~Mb}UyFo3q^F zo0B=p+i)*f$Os_SwoV}CRf$$xZ>*#x)Fmcn(BhKf$GAA+yy@&47{G6@k(?{GR{dk& zQXP)UMii`+Ehm%^g`kpV?J1W-<;rjAEQ6Ck1N*(PO-MKLt-syl#e$CQx5wp(32VIX z#t_LZ(2>DVE#8O8N#D;eXapG-m&rVECf*pg4RhkvoeNl4e_1PBw1N{O*#A6~5g$a_ zFxUup>H{4cTZm$HFN0doc_fIWen03UoK98K>%Q?4h6}oB2{T*epwALTym{evrk069 zpr&&}mwX1L%iS_q8!t%FYRo>e*GmvZlx(Cjsq0_HHpG~FAMEJrd3#QVpzc8V3-AP4 z;hJE~C;|*El`>qB2K_NWqmbMio6bW|L^N`N!grx~Js4OLpnn_Vwa*?ZIHwi12Vn_9 zp(}uy(WZ!nPX)CisE9N#M5>h&y34OmJH*!qxGjB%qp|KOWq>P7dbhHLs2Q1Jv-J9E z!%J@OW&v5|M*t0_gWsyCc`VtmhH{OvKbL4<{47cRUZv(l!QVl$$Hq&es7n)WzZQEH za*WOEO9k$9PUuj~u{_;+?Ubs|zMf|)|DFVS011&#NVU3K`H7>2R>rTCT84Gls>eVX0yUu^(uw^92nLLOODP-h#T zhXYnp#WCj4!rrs{DVp*Cf0LrazK@;Lk6)^qf%rGI*546x_VEE1pK>Gt}i$Swr{h3yDK(v5Xzqh^Apt|L)in0aUQ~R%`R} zRpSi&IyLjOpxZRkEx!2C%39byJ!xnD?4wfZ?ePxS+dgX#(V@(EY|C~$@gxWbJ5YMo zGg%Q_vu9tf5Mt&D7!$L3xE-6r<%eYv1=pULPFv9V&p!~L(5WN}(V&1aF|o7!_pX-p z$AFLzMg`E+{IkJ{>^Jk5@y-a#!rFxZlop+jWy}bpE2huom-foK$`)5YvF z`k%GEhU8zB41d1gPK^ze-tu8C!JZUZdoWa=XU72IYTxK=2|dm)h@5>a%hiwlO&I%x zbl;1SLAZ1s4a~KRT7?K@`9wMg2qwmC8GqVt@C)0mTspKtFD^boJ z6&3)7+FeEnB*$8`sb9gJPVy@U1-z(EBoi0w0hyhf-#fA?*by7u-SsP3Sz*@G|z+UZUVNiv;%9`24UC5zQNA`}FsLqzazPcoL-d z66Q;$cmtayzWlb8Mxsb*3qZ+pMaC4o*{J|LLD$JZmKhO}9B5C>c>b?jsfo>}4YjN@ zst_n{|EQ0DY(~oA)gMHo(Z(FDjT7!Dv)H9H6>7@`NV-cp-RVe#9GCL4veR9#E(e~8 zhhbEkpd!4)8Cy>_Ndo-ryaZ87`fE2;3yBu+ub68wDzVZ$S-m$L8)rPdU#=WLjU51} z)_*I$pz4=h9L?V2;-o|hKjHymM)#|wLITApQI-;KMEIKue_Lid3{>C^Ao#F!}@zY%9j(Q|s z;+2Ww@5=T4l?E_Z1i74B(Xpu0h0$c3z#q=@7-$DP>@)B0+vnQAfp<4PcT>96H|PXl zbv%=Sz|{u)czawF(qxPv6dOy)?60hOZJqM-e?))Cb}30dSbuMHH)OaVoPZQ4Ejk?43p$t+!BBz4yoI^fegx3?W((?l`xJPFKo=ChltI=n8{XlKD*u} zgv2MK|EFGnY(iOHP>g*eQcL>L&?I6@ei<6W3bkp$eNmGb+2EN>IVGKozWva}y~}+2 z>=VeG#gSrysL1YKgn?UB7qX_Lz}{UYEhL4Kkc#d{KX3&!8z%&}T@N@*tFOtd2n8zR z*dVc6togna8weVw)$%^Wlhv;`d#-f@<+;<{LpuO;Nwh&gEFbVB@tKvlhf}C-!D3$aYs*^ah-o4O$Q{VxrON-VD^-3fy-B1 z!j~d?I7BG@ExkSw9R|2%1uuv7y%M5v6MWctHtnKC9czZEM`ceU{&TFd5lLrnC4sU% zgvzV-WuzHw!gi=S=+r%D0fP$T@L$Hz>z5HYrxI}L2AYV+(ddbgpS{Q#?QF0fRE(eE zj{k=2BqM|Zp~Kj=-3h`Kn|9tX$0oKj6vV(?RV#=lha24)rUYQc$I*l^HQQjWGoxvM z=X}%6{B~zCqr4270`@{xGUf>fg|i&|jxw5g zG!BlqUDTqMs1lIEevs-?!){`1Wi;w9fVO3}!!gJ`qtMvqjp**O;zxbm4;X;#zvgl>;I8@`nT%Ym<~3B9 zSn&p5tika9y+ZL6m=*9B+LMV%5UskfQkzc@oN4V$ZqCtT+p`IuKs_yFX%eCfPFIzv z66~C`?gzg`m|yBY|3b<$mLO!8ke0l3cR4$Y@cS?NX@E2*g76hSNid;8{#$#W(NK^E zuWUy6Oa>ra|D}7CSR{O;ewdbKyLX=a`Zlww?}HFy+^p`oJQ)LZXias^P07T5Cb3N3 z2NaeN$}Bxm15N#fjEzi-35txR5KFqcybBxxg%e$vG^Sd4$t~l^rDA-~vp&gsZOwKK z?kKuWbZfwi-UeGp%DW7MkoDt?M)hY zqiM5XhA5#co{4m^QlbZ$f^kwsLO;HVE_iVJ)vY>qDj_RM1#O5&{-r~~SAB&~B)1eT zVgf7%RUFS#jGRoW;^kH%tfLiVgNtQetIpxwzXLU+4(|msp^xlKGnsY7?o;V4`*APc zhaZ;2+v+;v$Koi3=8>z)JMz=2F=0tXx0h#S@#FFrzFWGXi|T9}%9sM(uvKgj5>tWP zxcasYe1wUk2?!1LLl{@zNtU(@eKecCNdw4;%Ef_Wu_)6fJd;>l3A@zNTaLkW+~jTO zZfq!Snn2&s^y>gfF@D&&QhFpS@>zYx<*bnMTqL^LE(Zf_>$TO?rdecSO&YtU0j`;* zT-1_dfE-okYTc2RM8YiIsmdGR6)ti4NR9wcy<&K75n3*DGC|fpeJ8i<)}WngDS$7d zFj_DOLeywxBB!LH2ymeUMRAwkVi6~XmaEXCr@^5&wq}m+YJxZ==dYl|J|^yHJ*MozDz!ACMA zSzKWGANA{UJ~1&$s3?(TAnPLAUC}c*qh4TCg)y7GMlZD8Y?Sg&JQxb~Cs^2J10u&k z>721Jk`bqnzf=+ab3du)E$ql)^GoDu=8q`MMfV4ubUAgA`4BeZ{tbb312T8|zq%7U z*MG(`5LV{Y08daVKsDAz>_+P&pZ+e#gy7x@y=OpyWV2MfQ3quP)mv=`qeVn>TRfR+ z5(~@cTMmxtSfTB35HBX_3>WE4%rWtM)Ih)f$K%p_hq}GM@SIV@zn@BF>jneJw!Va8 z`=}BiTXc7?M(1Piv(V~ort8Y(-hHXYuj74VfHn*z!Yh$*j7I-Tqch^e zCENCHD3fu3PPVCPsoA2UMEmQEqVG%&^C)L+Kh4t$?d{)+YMRHmij}&h_%%M3?%5~x z4WDbx+X_&G@bwquBok7WW%{H>=!3+Rznbe=kq~?+L%a)BqjzYNZUZ#(btRQ+gpxm) zeV{>?6!K9!ps&k;BNq#-mn`nQz&+e-h9tr)y=39Dt#VheKMs|VKEk9!U}b_$kUjlb z>Sy+| zis-Tp?WL=nI;SnlF*%YMXtGMpTr+|GAT3v2aj#1o06t27%^YZIX=tRao2Kt8uz2Vt z|D4N~1H=3MDzUify>#oeJt{i(CTl}JN`QHsU#(K@wXg{5vX3%$3zo1+qXe^#tU9tToL z-Qwy!Bh@0zd4!d)A37SAKDQY7buQYwYq8P}aDzBEivJJkg>&56O85CmE%}SG9y~L= zF^q&C_keLV7#}mjfFyYbIdJ1TPXJc5wR2P9mg440jVqid7?m5ZDJpSpVHgKK+bg&g zZj5;MCWaMr?PT3CDSeK0i0gNe*i0|fxc~l$D!TWz-`mH}A%g_Ak+KUiFsE5>aPjgT zz-r1lCcb8Y)!|xoEr(@}WpYOW4pAy8iao&$QILYU3gpVX+^Kd78q^0d(KF7(1fP^} zH(*$kQl`KfMy{qy!$SN};UeU$Ko)GjsY@@f$6NVngdPF{UA|Bn5%kge?rbd+$z-6TulEBkbIzN7-`A4tuu?F-!AfD`O7m`Zs zzKWGXS36uJWkq`UklL|Hq$OzzbB-NnmaD?Y&N+ZTFr5aPSaeTmTCk;$fG8{yhGWSY zUSdccHOh|YdF6N^mYN|g5e^v2%EOvKfd}>t^6w&vDfs#-qipgaDj~(N9*pWK09&)S zKag<$&DdpXOF+Hu`tv*pca=ru_HH(PP5SRF>h;2EG9ROJ%`gowVN8iIP}*74q7-~$ z!6~=xMhU%~uR+}BOu8}F{Po|HY#phcE^pei^th@z_ZL3rSr>wbY;XoG@uPRNiqqeg=fZbD{1e~NS z66xO87qYzwg}+{WIBc^GAG3U1v|FqqDjRB{n8Dy7AYk0oDM*AtI{fNF;aN9$c6$_5 zKo&v460jcNCNPk8P8b5JQW>MOBm+IF2e4b?^>nc^>bbD|Q5d?+x5cZpGC^X+30lf% zA$H#C+pKhZ7cjo-AL`pXfVoxRyz~IBghX9-XpTu*;?{?7jW%RZx`n(D#0C`T2--B> zy{W~0#F)rFN23Zb%DJH%-XRaiIxJTO+-Z!k`%?H3%yQhJA!L2wWC5o-MX3thB~EBA z9(jE*i_`T6pijPuU&_zPXSw!+3MZolSQOTPzpj^}XL0~~-Lw#9z*u_)wqC$#q_now zt8uxEl|Ov;vfAL+gcv1{s{T$-uV(&fh}-L{(bs!fA6m!h)QMx_uUHwME)zrKObtFz7rA)H`2_vhsBg(096omH}I%Q!(b zOv}>3?#t@aJO?O#7hBTYN}wBjguGh9hpAV;E4AJ3Yh-AkaSY9y$P~70sIIG36IyBMc1V+vBX^epj z>AiDw`k*k$mBPN}stfdVuzB<&dF*|fy%IN;#`X7JShl9P_+a;?91JAtGAPSu*22tuSzdVE~i^gN0fzXT&maRmvdoFxNv|LofMzU=Hl z`z>|MTi`Pi#0Btd?bW$x}Af(tISYs_G3~FSVDO5s-v<7so{D9jd4PHn<<9Nb&p0CQf^PfWdS%qVd99-xS znHAjsOs89R`7>QC=DTA2GpJI9u!QRT&VdIVeF!No|9A(&^bV|Fh==<|4#paEf)`@J zd~N}r0{khd3H!t(0k6}Wd7|E4>h)H(RQYOv`boUnWAb)a>>9Ewa)W8zG?2m zHBy%PXCf&s)R1_@`#4XJqK`M*JRDRh~vOwr3}by)dH zRfeYm*sz#-`Yg;xH%+f@<7UnFe6xMCrg!OXd)TGLAbzp>P~fOSIsX>3_j%XX&dz~m z&D%FQlByQG==J<)omQi7$-l)nlK|)7hs=Z4bX^5Q@0v*2vXboqIJwM!jT^*sQgL*+ z@YUQNhWTu=h{u#28URws>vN-mx-Cjqdd>l6(hdrzwaan%U2+nEpR&=I zQMq}Q>kjy2N|&c?5hHon|hNXF;U$O=G8&h367diJAyrjPm@r z6s{rO2c>m# z&FTy(xv?}-DJJ^J<2QVZ$}y}_n475>n~2xi0ccY|x3F9~?crr&mB_Nd7P2AOtg+^A zJYW6{$e z*DUg8m)5kl`ifMW{+xZi{L!Qj)EpI=;DZq@>O4k*0$71Qu?o*2b7IyPZ+Y}w(TZ3+ zrA$b^A^fpu5CSxCS&99<_*8H~VurhbY9=^a?SO-!lCONA5lc@TDy8Q0((p^S-HSeG>gg_^ z00x}Px7B73c;L#9(NdO>#xVaLy4)_}RQO1{bP$L}Sm6zW=FX$En=D6{!9^ngrC`3K zFgnK*+Cv#R`hep{i9JbgWQ-<&)!g7&LG(kKl25e69rk+IIrI;qRyyUAJJ}CWBoDGP z>5ksgORh?jYDj{Obqb$y*~om+8zemdKm1~3^2Mm*kyZY)OsQ5iVJ)t`?+~slE~J`s zIV|=GS^7HX(NnlwM-3Nzn z>CDq}wtrM_vks#usAO)&nG2PV;G)De!lyy;(DEzrFRJ0lD%HTgJ4h zZ;5#9W$je>*}xXL&n#fa(+CWZb9$hcSrpLE<*$DIB5jk;Ql3;7Qtriim`N#HeD783T)yIxG2(kDd&ia3|GEPw!}nZ}k0;w^uTn_g(z2VmBsYiA z%>Hc*#s87X0IO5QAfV?kJDq-a-7<#GfVwMU>34T=Gi?JJ1O)W3Z{cQNe9TJtN%zQ~ z*RXaq#At4d-P0IqIA;h5m@%)0oTG<<+)=H#<6KHq_v6yI_!W5YCC^Zv$ynDG687B> zdvZ9Is%bfKoJ^m&7ZI?7?xmHnn53o-8_;7?{6e_Upt^1C4Fd-Jby62EDut?#X#kdc zYwHUkvtrB_NdQU_cr5n`dY{(N8~CiWZ29+@0!M(N5V0?c%McVW2>T_Qu;#87OlXQ) zCkXN3@K#n-PV0^gvzJbR{c3 z%A1%hr5dKSt=m_Kfzu3mbHd!I%G8j8a$iqQy8G9N!F) z4ij1K+SC?K#H`m~5FR(7OaJ^8GVhZB!6XM*0DvLXEWb4O5KK*K=_-9qv zy1NilTA-v%U6lUeNX55fnZz6DylHaf7|_QXTkF3b8irB7!OwS1D8gk@G6HQ1jJRE> z#Xdt)8C%f^BjJW|zBZCh@#izU)Pre$7!K08kF`2(-r`Sl{>6dZs176EFT+@Wl3uT} zTS9-3^OX``C_U0Xqv$pV{35%iCg;{!pw z&I>f($@7TU9x^%DbFz|DkeA)`gSOvXE*z`P&za}l6IjcPQ`*K^tVv_oSTt4~*zLrL zpP0Aa>1_Y^>ywHs1d0yI#r(es(k=~s`+tQsz)cC$JqmQVsbmUXhY+)i1&hsSdx0Ya z+{NrXifu!_glqz8N3NgvJ(YBM!n$NFWrF+R-Rr>@=~tiCE~203)5GV|DGLsw*|rUe z9K^#B(XFpNo-D)(>Q27`h$_u1(NcPgyYy`=_KR03 zt8F0ShBtYVR?X2$%wERXDR6U(v{MF#LL&;3$Xat2u<_?s2Hyw?Y@05}->f`3+N!{4 z%yuo~`}_DDM$|E-?i|?;pgCu|ZA5wQPbmanS!{*G0eOI$hKiN!vuI}2sEBe@a2XG^ z*d>A$JQa{!3Ju%5Z!(AC`1XAM4zgxF4R*z=q>K+1wxDXg|9KFNuH4V?c-^Nf^&H)Q z^|USDmhzH|N}a-A@13NDLuE0Z5GiRm zyb?iIdbZ6PQh)vz-~e0@%zbnrz?2LQTOMrp5I<_-WtI{x9)Fev?Hh*CbnT^?W{Eh4 zybBr|{@7m2CX7eIFhKNNtZ2efc`%Rc!2%}1C}Nw0MGYmW7qk`sk;#@f@ORt8a=mAh z2r7$st^WRuCVC13%L!5Kter$u6&Jm-dAUAsiT^K@x`8bNV94>bZGf3;khfjMPne^V zC5w}5&x6TTj7#GtuW2hL;a@LU@-j;kT-(RDdO5gsh>@BaeS0)`^)~1rWF!|cakY=q zr)LbK(Lx*MxNlikh#(&?V)>_nJ!AFRv=T=7vakKZW%MuZ@N^e{P)b0C&3&h+8t`sY zz^2*5a^009KyOgFz!yh7q^~cmJrLZsi)noBm#Eqybi!P!qTCYJi~_>Hj=7vJ@ET>P zxmDP)|I);s<4qy%+w|1X={$cdo@xLVd>(yE z|0wEZ;!PMdGISL(Fkz>1t-?1y75G%2h=uN9*%Eb?I;)~4|pt-0a)npx9r6{LbGO_m)~-80}RdR0?4z-s=`T6WK{v(v*&_clj29fh># zoQOrPHfr-mB+F$gcUCkCB9Y*R(YGZKSP}C3qyXZmg)gn>#Os7ImHca9U5GoK=9`(1TGj z^QH2Br6z7_X>_&>zN(IMpoH_DEh)tC8oY7bz==v3*i*G`oJj0?@w0MM+!rk2Y@ujoXumJ@wn z9Tm+MAEKdu7<=FLpZo&!C-uJ|(J41x{wJ9RPax}CM;J-MA<#Z+r`TU>XP!ag$PeH(hH&BM~+i`J>f?tk+0Xs(|MisQOHg`WbRFl zep~S0i`UHPO-)bRQ{j_SK}&LFREe#=AZLdbQavgPjaf9~eX+~!kL@%FPTLpzO5qGr z!9b5%T5O;E@+}2y%b>92$XYN>!&IkF`&7U@#u2ov)O(Z7hl!1%tJ6);hSgE_GP6Ob z1u_kVKE1=zHgnfd5I}#{X{58$wluwKPJm()3{yda{02~_@NtS%>S$Gq4jr99BMf)) zm!U&3eI%oW^aX_a{-zRLAhUGzAYHvLBz(Q?OIa7D7h?lJX&W`|9mS1;g)HFDndYGX zR1HQcWuZtQMJL>#yedHDb7-~+5OcsOpvh<>prXcxB9kyX{w@qj3eo6hYE1=a#JK9# zVj0>XYzw5bUTkx;0TW{C`Q0lN%9exMhq@mtt0&RCeH1ECTXGD>H7Q1WSdY_NwS>G* zcUU>7PSFj>P0xB@+;Hx~IrzOpXfN6{3DfX1M0W_)A8Zgz+6n3C?S-;W+4qh{)lylm z1+*j<>D9#@kYL(_ret;GA0s-{M~P{40TkR}UKY0#iVv?4UWmcF%hNb+9f5aneM69A zf$QLBtV0@HGA67uRhB6K;doUb+C!}ni&`0_S4|2K>64&3H#1klF+gi=;rqORc9*O;s?^9|pys}DB)h*UapPO5J>gJ{;_8c!? zmU4jC1k1K7>;Q*X^e<@!kpqgu`5`9VM!fUJ9K|$jk&6s;Z@4cXwzU`E)ata*L%!v}N zu?Y4NT=h&=wdr#ngu5w7$+#=Bcl5WQ?0p9;r@L#@P^Y-Aqv3LGv&=N(K@n}yh9#iu zG^uuufA7&K%gGF2fO>@kKgSvaL1C$X+hf@b27?`pc+!k7DYzLQ-k5U|1$12cS)+c$ zBtHeF4wOY3vypdD@0+IoB{65Gp_`H12?CPs2=tBH;A~%q(q#H;z)%M-p7wPAy?+Hz zNG5_7V}@%hRsr)4I#Te(D#hHRf{562QD@BiQqp$wV+zrm2{%(`ub(1lr)K5V1$oLy z#{aUbw~}jRE~n)a2&Q0`x@4U)z`jG$%xEzllAfu&%Cr2_4&t1XsWz{yglfr5o{IuO+=j~lDU+7D zCc|>YG)<0A#-It=?=-$v=M-#lBdg(WNu~ zZO{<>c6oJ+2)34r=+@h?=hxLUA;YAGVK?w+O^vy3f-!8>#eQ9t`1N>7eM@%K_SxM%e zFLGyyTPwMju2(b%p7tpm>w#c^ZGh1WMJ`D5KAmPhhxf9>2e(8YJdchc9tp=EyA7n@#fSSBn4)WQ#(`R*`0&>d@Nx`dQg zrH=Wix@!wr+q&n(O7%fN1mdT7N!EPn*YsgDs&w zk^Cz)B&Mk<^9IQtBwSUX8AN=1~s`1Q0k z1mZL5VrA|HQVW#Qu_GXSe8qR%#r0w4+uR;WS_2iyCe!uQG=dFV!1Yw01TKl@by4;5 zvEQVYXyz*h25=f%P&^ zj51U>+@!v*S|^Ojw)rwuVlvnr8T(~BSX^GwTp>l$V^f{H9aXIakG#kp9T-ZR%i3D} zMWsCoP-?`F-xkA&^NuGY8-5REXyGj1exG169G(6X7^)vra8|B` zvt@QC_dvCKspx@Pz4u4END_+-C@cP&cP*uz2kUEO76D0K2i&In&{H9J56l>VJ+!u; zM|mse*u9!JHc7D`S(q2C=4R~G4aBP96YoU}2x-RrF@Wx9W$?|RvwH%sHKn^uG2M&@Nx%s|Oyn!+IL^GUFPETe7u%N-e8XtAib zm~4~V%L9svDsyZ9fud{3%HzPrUiJO@`VKiyjwu!$fz6ef6+6nApm&%Ivstk71+m?w{36cXm z+SfTE2Hi{;>zM3mL+$dgQheIO;vE{%H3C!=gfzfY31U38CBtmSf(uePdt>TaY-7zE zGyS0O9}tA`>RY%;+fZrJLeR@-(!eGTAZHtJQt@@@Vxb97Bzx4(v)uHRw#LsHnk&pi zcj^rxin}$#UQ{!5-I^-9;)gQzq0o4S8OJ-;nb;U7Ts-|d)g#xM-p;nTqnY8Lf8aew z%{znN9!;zGB})0`>+Y1#owS4wSYoY_!k#zPnra-OLd;f%2&8Lm;%j(nOv_FcAYFIm zFWrNoE2tVh@FozRqIO0u531K{@Vm#0Nr5rbRuxA^$fgkU4_XitHaJ6Qr!1Je{4lCZ zz%>X?EESG)Y6+!&n%EoGR}vVW5kZ6KB!+x3_$5feaepxayCfLpo5^^%4#=06(`YHz z1$b&7Lv1d@-0Y`i;Bk7~B?*BoV32hlBDR^jC@3uRF?)s^aw}$fDYi;FvcUD-$_iqg z+R1+ony5>ckhrmF^TSd8j>){yk^PWQM^$a~3773>V}f|K`5q@Rifefb>R#_zZ(?sa zWX8FuW1XFW{JP@dnX~@RfetrTf+J7wO|#SEd!Qz@vGE#THXt;b8#_)GuwdE5pE4}x z@W%v)6(v(`iNmL#d7}+u-)s1Z@W#d0)U)bUm7ts*? zMRBNhOYx|@esehndqR)tiz;(F#Akq=%X8`zczs~c(HrslCv-NHrxfw;5;+WAgHlUu zqb$#;NoFqO2IRJC@xUbOhE0pS@CTn8y>eQI+?S8*H?A3DuQWa{pnd<{V)a9EenpHxq4KGi#0DZVv*c1rXt#6OY@Ot zpj?smF#{E%*k#|u1L0M&zSgI4Gj^MKL)G#zGtsl0HQf$7U}|NW{`%Fw0ute{=tkOn z9P5sRW^L%RsMG)u^ai*wD^d5N`yXB*WFou>OBxb z{Vud&8mrLBqJ2iy8AM( zjb&MP780-O0KaLBKE!03qH731i#cF$l3EOD1$lHa`Dv8SFi@&2dQAyfmDUv~ zXyfQOl*HrKr$qkyLW>w&s42~mD5h}K?;mPDl+W__ObRvo3g;|v&kT820v3C2WnS~_ zXD8ohMlqRHzW)l`sHqYlpctU+T%4(UmH#yM;y-)w=ep-t?`IzbNl4N5zY_Od%pr5&vJ1X?U-yskDt5GY7)IUbuA*t*ukC0%R!e&rFfJ^4+6t+(1Y|!lMy9? zhQX9N2Kk_4S1%0c{wqVnaoLk6*x+62+sA|SjEO7g3b7qfAlQPf?$=Q2mFe&US{ndT zL>GjU=^(9YW{pmyfRFzx2Q4#;Gdr+JIb#FnJ0LOnARwjkdUbuqT&;vvwPxdWIij+$6| z9B@#)E#f2GmN#>9-m9*#%@&j<_nPd755hN*HG3H981vzA8UG7m0vWkgqWU!J^A2p` zpS`l<=Kqts3TMx7trsv}G52cBlMWxI&bjiiqZb;aNLj2%d0SmU$?d6xMAnqC$S0YL z7+AG8a(DVz28FEIa+9Dok_`y;DI@hCj+dv-hiFc~OZ0Ohh@>$1 za#On7{kgMr#aiexA1#xG9)bgLD6R|C@`@Lsh|fX`rgsv~GSH4d^Z1{^8}dP~aNFn; zQ(?jyJeW_sIR~_%49!Sg0p2O0eqK~52Q7*o`WjXu2i?_mIv(Wo<`AD;3Z{rj<5+Rz zyd^xvzW`n=jTs|9^TfgH4sZU}E<28aB6%|C^XypOAh%TXp|QRbTpp$nb}F18>=)hW zhGlzUz(eSRufUY9;R0CsCJxy)Kz&=48?_9?E-eeLrb zg80uKuZ?wu3n{h($!AQoNoNu|V|N>AZ^cJ}rEi372~_Qr%zHz{<%xLe zE`xVW5-tJaj&TZ;K(>OUn-F#c>(4&yuj8*A(ZrZ7(WtcG>u4)Vo(X9(n zViPcIRQarm8(09r7JE|yBsjzwCr}tQBf+~%NBEV|s%Q~O8W=hl?A3UjeOt+m`}QQ2 zq^|OcUmVl;JFZ`&#Jh3hU%Q{xh{==3#&xR^1riU}QH57xvjQD{EAL~VVtoJdHEZmR zbs28_ZeMdnj*INs)p*$;*9A050vxOC-R;y1)TH{9D~lH zqap%j7Ozc=eOdka=irn%h66&s`ZRkah&YBczaU9n%3Vsf6iJ{FRn-U6z#WJ{tqR3P zZxV@F`&rm{od@(9&$dG+OOY(3r5n~scp}z8UVIaFo;_9ulXzb*P}i6v;rAkD)QjkX!vtTCSXB?}8^q^()-GpxGT*%ozQpHNm{ube&(yiA@_xH_NJTRL~u1 zJV$iRUVzMB6DT3)6;Lu>O%szUQy!};SP}TsMBe~aS?;^%q*esu$x%#xMiFM*OAozf zNE}nBd?D;2BO$Q83VI$I?|z`QIgkBdPLctTC0{Tgs0_z#_MdDBlC9>T{5sX@F@-eXmvqo=^ZN@1C=V z3^6YmR3hPq6KrRbgcdjFz)n=fX)D|WxO(+rr`fn~(X0q&RPOF%p zU$L_rpRip*Wn%v)C&2&CYK-8hU_{JZtpCgEOlc_orz!t6+?WJce-FkbkV}iQE?Qn; zh+de)%$aF~`KO$wRmg&)BoBT(k&6DCGhdf&Pwh%W^W^h$|Gf5KyWDg&IQbeI`aHB@ zx#d9)2jM)OOvMKyzJ(Ar#}eB0wlmLh`M%UOJ=-BWMwMEY{Hb{xX^2qQKM)1R5(C7~ zYDkfW7tKO1Wg=)F zUR@k%jdkbOK^jd08a$wgp$xd#tO0C+6Mwc9Ls!mepDZWZ3_w6W&!=8 zV$7sghak>!m8ZIhU;}x-dX^`8e^ql?4fJ9U|9UBl{UjLEw}cIZ0<&9X z13n`^pv*B`@+Et;8=~$|&OK9V^7%W}OSfgPx1;0BFv>FZxY)H%CW~#6c0?nW8pdI)VS+zwa&d+{D}Wy7~+Qawjtv0 zU5J3MTJipG^szc-i;34*CxT^XKsEeYiqag20?H45yygKzO& zEUhv6z)fgb}$v~m8gpT4EM)3;fMYj~S>&`d>RZV!aM3=VMs<8!~JFsA& ze3&`kq!u|7G6S-OdO2&mro~$=W1@+?1wog)&{lXi4})?wJ`RnjUlG0Tod5DQQ-W%%QjB|J6ATBD=7 zeIJX?n_QOwV`Cne3bz*MypW(|l%VjBksjIpYTCTaI{= zt>9x{8GP~DODD7(JEvf6&p0b*6+ShpYI;cEmGM&8zau#A=H;Ta+vN&92I+ZsTvNuQ zzfI3Gsk*?4$q)bDc`~seo4}fEX>0LO1<{HtF-Wa0CIle5-JzV_Z@5w;ylJ_B2@V*p zzdXy3O-|GhiozviumEVt5-AuBWXs->F6 z6CZjZ=@>BF1I=(R%%t!`;SvA+FRNn#U)Th7mHHD)1j-Q1uX`)|k;C}&ZyYw&>(DCu zKI-x8A~G^T(u6Z!lYX{n9woV?iH6phmI$^tj}!^KFAszZ4XCMF|6L9!pGCzjd`{PI ztdn9xo?5OPwhAx4GtTy(okno{H*DfAS*@|iNCV*dlql^+&1%GEZ=;bg4w(~7xy|ZV zv}ftFpmH$|Qyg{Yy9eg%;~jhS@H?{GO(oM_)U^Xxx}9Pi!agn4dwU%G{y_zLJL)p* zhV9#VDQVvBUWlc=$WimxSUydj0V;@RJ0ZI}X6ypX33KP#3f*9ck>)<90T%3ZH0=u5 zs3M@Oghk18-vG#`=LoXQnsl^B;3CGp+ODK<=HOcM#mkQycSp|bV5g%67unu?i?J|0 zqw`74GQO$>CU}UBTM-qrU992ls$VX?9@Ki6?L0&9tbmRrAq*ON00^-i$fo8oyl2J=8*cL` zQlggjK!RS=UN-0=vKTN_mm%tamPcCD=|);*5w~g?$HQwGv*7H5W#0r$-jL4SGA4WM zXV4|G^A-HoxES-wHXWNYwRMeioOY%SV=ylW&IK;mA{<`B{N59s_pScJ-RGe`uogbu z|7j^G3ky?fyd(%J2u&5l}%mcc4KWHT-L29T2S9==| zFVz~1G>Q%cBhFNn=7)dlLC8Ojl>1J&z`VGmj@=(F<8L8CiQ9o^K5?}|&) znGR`azIJm(w9apLI_1pJb=_R7<6Xb^iL=4#2CeEERHFc*X&2cEs;+K8yYO@lF(S}e z^*@~8$}s)!31Xj_S-gC_x`(j7S@u8QB`);gS#u7gqb%q_oeD~P_m948KWkmCy*5G9IpU`#EJjrHOVM;h6`Nam4(4PbbKlt&H z<@PVPek)mAvOE-)nk{wJe;S!JYIn6KVmy;D{}KUn7xSebRT@aH8GXBaw@H7da?y|M zsL!EK&5AI6f$93Zc>Ug{J=#wT@rt7`P4eeqv6>z>TI+qSzl?DZk=V$Qa>h_Ns-$slCvlRWZ1(LERNAdv z-frdb9I)8t%bTzKZ2%EUgoSR#t4Js|v4tk)ab5YLc9@j;hyB;C?x!4s?Y_mD28_aK z+~Qq|OD6(u)^T?upiDtXF`kGNn&GWh-~J&-`p^g9*cW5xNv~rO(}CJ-cgoV$jenzD z0!=Pr18(}*^9#Gk(U`nMkwtoiDjiEl3rtBtcwvcu$KI-K206wMYaCmmFmHT5-}L;r zl>E$oJ7IWX`-K3Q4lY{7cKTU&ivyotO8NWE`Ppn;9K) zkmZnrD=P*X1(rU}pUZD8I~+lCy4aLXylco&{IirjLeMy%{>xUC)s&KrdFs?ksC%jd z)nWwEtK->LK&rv2cRQ_OXP#qi;CnZyR5!RNw(j+QA8JBP6(kr}g{GcgB>x97J{h^x zVXw=3rwqo%G(7sMV{ps@Lbd|<_BsmPky4U`6JFM}!x?v`yQ7%Ym@0JL-Tm8|LMcv- zhBK>93dG=h zWXj32b+8$hZ5v^ZE#hD4j7B&L1>A#nJPfN)VT?{b&_R1vd>MNazwi1Q(Jh3${7b~S za<$w5Fp;l`YiAFwspWvUXjQtN%0KryjdPewx%0`rG6O*X)Fw=h?A| zUb<#LW^d6ideM4(G=#>woW?un#ARX9CsbHlRk9Jr{P$^CAj$i+afw-G5+c2{x;*|- z4X5gaPqLN={1>B^>++y+QrwdNvM&_G78YSsHrPX%Rg3F5*uR&ja2x*l~5+82!zo67jRlpMK^rIlnc9^ zNgpTT2s2h74m)VN&#cHB$kKR@J&$Oup>0Ac6+U&C`s!}h;($#;&vp#g*yC^D%MV@jl3+6E7NB>5U%&FL%x zgfVL!lO&qRn%wtSjD0;Btsdv)K)1%>orll$bsMUw`z@CPB;m|9{WJrEuRT&B7ulY{ z9aC?06rUiT%r8uE0&KeFpqfJNDind9Zrq=`R~N@K_NOi`kwh*CYk(ALM~(`Q^AvEN zEY5n2s{5!2%v15qLE0aScGIdVcvO1-x!ykJeqcLe?|<=m2uNcz$N;_0V%2oMX#AO> zLSH4@!|*@l@CziutgKp;*b}1t&iN-Q7E4=cV5C|MYgmwlB_R4PU_}_W-VLfXl^TlJ z%G5K2O-+HY*rM>}0{|)K*1-kP?qN1Ji9h1F5fMT~N-2U;>P2xDiuZXXH8Aj$OA9St zuFQlV*QYIO70&d>e^ZQELmno4Nw9EuyH8>ag+Bb=c63J_FzXtF5Y`q01g zm2s86#Ut?D9Vk*K7Ms3QuCu0Cw<(5;Ar+?+_&S5CPv3@ok^`8Av{H{RVwU=ux9y|R z|DlbW*JJB=_hTfMCoj8Yz*_Ae(@Gmv;{TpWmh!jl*ASZ<6aquLfmKJc^D)(Lgohao zC@zv%PF(^&#}NuCBB9CtIp_Qp*gUUJ>7a{W$AZek9iSbC6gn>Jq2@LvQe!_RA|wwN zp-GLZOTFyxA`76U(I8)EG9mhP=)Gr|H8g*i2eCdGc};i~PeiWL-?GpZ~Y%N!vt0V`mqDK^v=K-j!)8Z2?R z@%&=;QmO)I$D|z`jOB-CMNl|3?&zC+13GM$AxPXTHUbQ-w6k*!g7d`ZU4e_)t-#JW z9t2@>4hL9g*x%%*c+yCow;^eY3qmiL=jgvi&uZO+>L>Y))kO z72O|oP7c5^3QuQ23BVe-Do-#2{oyq0aU13TV@gm9H@R^cQEYqtv#5F!8 zrZ%lf8eki%>LY8him<>hRl*~Z?{_BdstYi`-2ylmS8N`)>t!38uBE1cC)W^^y${dH z-_g;e$ipL2@;ZR%G%J@e9D^V{CjgE zEk7R7GXC&!sH;cBn5w-jW58YXY2%J35mP6-Sy7@#L*~Z@=AlAb(gqF3>A{)n`)O{= z)Bwx}qV~4--2}Atrpw(LH_8;>DKW0(^NH_}SN7V?g0PM`YtB#JF@NswXgO@cI0X)5(ZMtf?upps>{zSFC zt=lewOIaujO9=A9ixaszXg8hMQbZCJ6M&{~UUC&L?tO9<5S}>jFoWHoT9k2%{$`1+ z&dL?$$~q%@WVMix#0C&zj%Q+IRH*3$hNjWHl{nqm5)vUuo-$M}dOYVDlan_3#(B7> z1HQav1Ce3M+OX-Pgmbh&)ADC&D!W0m^-$knM!--t_KOfvlpZpbRm-quHOTU19AGN1 zrP(6-g%7j`K3Tx0oekMo#lf{Mj#U#jl-Je1gnPy!gK18>4eeD+m=Sei*j$*k$8pvF zy^3R~O=9HXJxk0PL~2V9M+5PicmM>))6rWCf&cQ)M38ERiS6c%@V(LIMs??+yZ?an zDUof*LROE3S^?HLVcS*GQXv(gHh=KzKS-W+hmK%V<{0U1Tctr03=C zZ+L$z$7q%?Z*vx`my49PX`@v17!TPW#t&59Z@(Vf>t$c@pm3{P==>To;Sn6 zrfFR5O1d$puhjrKdZD^%C_@aI??e);y2?WnnGY8g0NlfD4>j=7*lcp0$lsl8lqO~N zQ$gTTEbf+y+YKe>+qqN5GnwCfoI9CcS}ad>fS?eeK61-6LiU}T50I? zN)4qVp1WoICCkQo{$L$yf8Wjvf)iXuRAA!~163OeQ`Pg91yA0vRH{y>oUuE$jn**v z+}OFg&%698rjmCm8a(BX>M@6V8kE+cE;V*20l#gfnYnhHh*h0OIU0+RfX&F!E5t~{ z&lv=6-q5RNt>8{=@ku}08uTR}XpB#Qnh6`~vDS*lMaZRe09gMx?U5BYNch2)CzZMC zoS6K1Q`V9JHxzz?auvfLEED76dVCs({FYI0b*Yp42fbhbebu#ws%#ehhd@mx0jDNb z0BsAQwVu#!=@Cs!kc)->9yL}{5c_QnPppxCmZp158hFquY-ql@iog%7n%x@&I+}fw z_5ncnf@}q%xpx&47tOR3A3q7BA}Ss;J2LgPr$;|BDFXOC!#{%o?JfE;)mAP&(9X!T z!tY8sszjb|;?fD!fB@V!8K9#|nf71b*cEv~OY)A3K*06DFJv`LP%MjS&c*<*n-8OL;EzG3zXa`|8 zFBkj#1u6j%FH6iY_>UA?JVM-Nb{=16)VnBZPSIM0qS1V0>p8 zz@Ds!^N^fJ9*^={G=3 zg@2AyU=LE+1xGK-S1L?Uez4oc5TGTKS;svt31$OBKkAl%WYOls^|KOn{J<~R4Vj$| z;%XE{K@IZjTEaj^8VLv4K6WEiuI>A~NA&_TzI1t(@&{Iolh@hiukZy#oMy9_#RP;= zIuj3*0UNIK(Dcc5lxM#QK+TzyVq*i|&JaG4Wj%1Ao<8KM;R^Ox8N-HQV?mmMlh>!( zHO#Pn2^Yy?xO?ux&1*BuLs%W&Z27^KV^8878nop+Aka*QKXZURg&aajKR@@8C=_zh z=12wl+oYK-VHdV9``7blS+FQP+Nym($V(OWyLg|*>Eo=)e6Z@SR0iQ|mmSB5n#iwH zlja6M++#rWb8UPMM$i1h`fWZoh8^M}E$S=qTz!!~PM`?td!y>@m=VWq_lPP{(V z^(d?d)iX|7Uq{Fel!r{&PGuB>$}jqW$-QwL?Hbis2fNWt-=yHm0OD zqKsR5+{J<*kFfzE3p-MXe7gBCJD?bE%6w*n-RbtRC-Zg@tQWtD_0z_aWz;c8E10GH zwx}a8+z^Yohy~dZ%lR!9<>A7bBd*$Cy)(sFL)j9wQ-Ud%IRNd87EC;v*tq%(2AGSl zQUzkSRMZaLBnfC$ktsO>+c@};6?=$uU;UsBf7m#l7Q@KN*DM9MExeBr!0?4#e})i% zF&|9x9y7|2quXCQ;3_Xb?StN-`=fa38EN)3^?b=^e8*OTdKpa^wGv4>W6_*-EUF@w z-nLH^>f|g{K~~rsv*f8<+GK>!5BLTYmI%y3-wkUM2Npk>sw`=zNGEy;Ta7HuE7sS> z*50u7nM!|u?)vFDY1xG^7x>?wdImtC+x7s+YJZfje=sD}*OYCD(Pm=ya}gW8@=UMt zbkyl+Inb9<5xtZ(Xx7if^lO{61TC5qBaVbhbbB&?vF28E!4 z2@|m4073-+B?08GBgWhG1;~*wHo*LCeW-&AXTGF{Q(g?xDq_s#VWTxgTwm_5A_l2e zP{aEL`%(`uOg{RWDS-6qRPR0%$H9T8)(8*YpC#Zmt>kd!Tdb30Q^)MbZo`>Y3f8m@ z0kp%aq79lRjqt~SG~uk@*70qf&Ez4874wi;>(XAqxa&Z^nV5~M0!U(yHtH{i>eGH4 z1(+6n5y5k;Tj55d=~fWpNpXwWTb`wIju!VNWsF@rB|L)klhmzBE~Ek%lxtNegSe;$ zrAVzXZ92BaSB0w~8*d|_T^s?VMIU6?TN(td-%=&NEi|zfwB5b!T<=1D-;!SC%Ve!W zJ?Oh9ujz*KS;#t;0Fe(jaygBGQhRKxsp&eC#^~P-g|m@Q^$?U&m|Xhhe0DheX$fNTL$=x}e0w zw|n&DYZeie{5&_Bhfi8@?${*W3yh&gUXxF3m>lJ)s(i5^0f;U`M_v2n08O&*Iuu0X zN&PU}rR85xB6LJ@h;MOQFC%rAwRa~{9ZuLsndE49d8|nMn9alKe42G^>l*3Dp7Xdf zzZnn^yqt+|Q<9n1D!jlltOPQ1^(=QlAg4C@cb=WlHQZ>`OV(QuGdn^4I9}a3lk~#yi_yF47T0%M0XFW`C-`YkQnH`JMxM|OKXDFM zr&;wZ7!6{0WFT(%>bBR=*;)FkhdO0b0Gif|qN$q{n4Lt&9r7?=(>V zTBqSEfH@eCgRaHbb(5;ngmIPnnDaZGXdcblr`iAPYPyArjc0Xf~7YJVkM8aVCmTYz#36%L{7bV$MAk@#PGx?V?hg$YW z`v*T$R3Qj85}iH%9ca4FD5n0Pmk@^ySTY(ccXzk>tU)E%_=o#(x2;j?8HhBJ{cnw6ocTQa7>Q(XfgloQJ!lbNm!&CDdLDktMk@@n<>a1V25y#j zOeQ}^x zN_SOOst(VsV=azVm*9O4xD!`i?K57Zd&J3!(2_K&U4bX-RD*>^qS?pk(sX~t5`Ek^HT3gbXFM64Mi8F(+o)2Y zGunrygl__3^$JZA7MiQcQqPfghPAj~DiVnxU=+OsdOBx;_s=a5uw-(F;0Iq31boSd z=h*cK75*y-86~bSIDqmtPF!&db#+2W{Z9~(UkejjAW=jz+*VfYAb~Ncd(NnoTg5& zZh7>*zo=~lj$fV@D&RLVv)R5MZebub}mw4t8+cnrj`pbS)VFOGye z%uhKwg7^=3b3UeuohYQMW#Jz5Q;}a44taTZG?V6&q;voe;37UbNL!5R{p7&7(Jx28 z5DC5cAG00c<1_Xs2YGl2#{#&QkiQ%7ZT@hz&fJ#5Jg3e(+Hf*wodsRY6q-WA74eK` z*^)zAmS|ZZyV!wTMGLhJ{CPOT*3|I(+F`#A|}jRWoj83~qp z2jsVjNm#oB`0VJEs$F~@ewb|XYyR*}?8)$cx)tE*^88q}Z~VkI_aL;dDTG8Y%e(x0rE`t?Z1{M%Z57b-ldpw^SVA{ySSmibaWK5SmY@nBnFj5h{aqtPtOuie zt|du1KSjrq;Dr#Kla9aaguwdlU~h@F3;keZ`eNb_*kQya48<<@u}%|u^G$o{H#if1 znd-ngA!p6d6R-6bgui}hAAKBrdj#j-JokO(;@6;93QS$cSSZQPVYidpXet&x<4Y|` zv{ag&wwUKkH3VYUD4g zA?Qp6Jo-;rv@X8c+PvCUzS_!^a!$(nq0m*WC+7%KdhnU=zL`Gjsn_))eogR8#VDk? z33nyB-_1Ex3n;!wcNU^$2EBm3~hyFqqxN~e?1x36+&!^Ftr&%@ZfoXb z3%-a5TmgRlLemy@QSlAAqs{PkuNClzq@aPldRbh5VY~Vej&DD1d*y}I=3~(7@P*W! z^K?U*E?A$avY!ioZ$?#UkKI{1e^tfsaJO+Lp?~U`hSqkX;Q`t;h?lXnbMG?o$E2Il z(CUSMKrEN!?@5W^nNe9kMPF5h-21LAcEm8|g3T}?WyusP982>;(bE|(epUI!thM%B zl!Irk)p$K#VW)uMKuVihEOJGn4QB9Uw}RT@Jy-G#3O_@dicJ5X8wOkIJS!+VFysI7 zal=2o+*?2XoLvKAA{{}HhNdzdF=bcOT2!>??6plIK@_Zp6n)g?`uY9CU5}8^nC1ge zuQOC?XLHVnX|W0RmJqwH%xIr35%m-bh9<&i^jE%&) zd&!HSh>1wZ{P6;Cl7?6l8uYv3Tq}(OGw@QQ|J7^=yUeIxuE%17)7b{Phk*;h0m9nF zGiH1ITchD^0}6(sNe{*2PC_K8p@Bs<$D$h7OA&HEl{(0=I>4vkd9A^EK+|||?sD_4 zgGtpxhme=;y>(7HTa22U9j#1jYO&;vA9E}MUuZd4lVyb*ovBBQ-}TkeJGj~tZ7IFm zsWN}5m&aDowm1W*HTtTnG+k>z0d0N;6^m8^(dDovX9AEa;n^(63wvTH9WQ0q$CqIvG30aP8K#(Qbef=qelY%{?1TKYH0cOaU_+BvM~3hDpaTJV5cIucbg z^y<0zaI;N2lMTWL2+Fu;^t5tocI5JVg?g#feyF)y<4h(}+hbOCN)MsUfIRa|%>n-U z_vx1GlKtTnP1s$h=~%V!5QB&4-$V1EJS|!l$MR0lWbfU6ZA2D&95-Bv9rP+WthS`( ziw%7)992Mzlu`R)gEZmd5Dj>QqG-5W$ihw}VahEwV@YB4_`<^KsXip$0{g2F5lLD3 z&e)O`7gH$P!HJUXfB~10qo2{IL_xyqYze z-oVwTiG@-VC+x1}hhtz6&cI$WFZ*1J`vcy|R!&GGzI#{ZU~C^~$Jbe9ly8qU_A+NV zni<>`Se{L^9!e&K)cBpeU4|Dc>ygW=-VsmkO?QTJR9&$Wa;vc>-6s9X@lKa#Z-5m3 zGVJ*b;x;isO=-V_16IWS|KRUqYTn{TYoZr78}uYjf<)@j);Vi{!su`VBrIgrjG}$f zGP+VshTXLiA|_xA)=C{^kK*c$H>n^L5VC!3!JL3{DuGJ$v~1fHAti%UoY4G5naH)B zNl9=8yk>B@f{Ah!RoG~Dqds?!Om*X(%xWpyb2b~pXQ(i`0si&d*F$U*cTFH|G(4r> zYw@Vt2mUgiRh0a6o38)#oR{x&@cbHp+IHH2+6d79gj@zj#z{!np?iqw48yOhJ4p>3 z$ZhrVZmTtSw>nZKznp9np_n#U}tbe%IiA`PaH z56h{sr=ydIm2dt3Z2g=&xCOZN{4#P+X{ixTq;peCogcQkX*Ov(6QyO-f^k8e5*EPvx^D?+|9n4rSba(THtgQ;?}-W)Gk^L-$;p=`_j zPh_2C{SjF?*#0N77GvrCoNunS|C1*$1g-ZjRj|<{Y#9C!PP7m2w6_ctj-PE|)KV^X z$+}vN<=q*llsMnGA?D0Dy36FHnOf(Zdb4``bbdS-?eqA#j(3e|)!@&hT|&mAN=(7~ z&1%(Tc_dy=W}aW)uVMNV(cs zjB_Yy467ekb0gX#I+MkPXC=|&L!tV`{Zd`hU9o^3W>Gev#+}A;I3+g_RMg6BcO*t5 zCWG0NIiC)grxQ3C=RL}D3YrZQKMR5{3~l2ZS!3)tya{l$HteW`1;!}x1C7mjtFO|Q zagJ|Ap+3mxmnf$^yQukG6ea|9ELjrSIQ8FZ&EJ^xW(fa2p8r=s6REn9q0&A%Nsw!? zxDZM}mzE3f1!t^KJk@3~1azkg$Ab}9-=iVe5r6?GhFMc9=CgV(#&>li=ZAmy)Tn;{ z(~E4SvoE)Dx&Q(3enioieZB)I^@JOLgR|>lKoMsjs!o)IH%lZ9v7a(H`8W}zbq)m>7$oaSkI$oIA5 z4!ZPZ4YXr_?nK`&s_@}5ZdY4?PDL8FK}rD*8mP|sa91LchPrujGN;B6{6xKtd%qc zg!V0zW>n=H503)kA{b*Nn?;-XJh28pU{Dn_ZA3GcFi2%ERXn@mkunO6swB>8w?0x6 z&=#1DJbBro40Ml!{2nZRIxt@3m*x0B67>{Uar| z+DAkkw;7bQ3#4+$qOg+=wn#z^0hrtqQI;Bf)JBK0&~Kf#wI|VvX7DcDD7n%>{DQ9l z><3h{mnT-k#8nl6tS+&mtSpcNicut`w}Zlc3Ef|i6!@Tqq|fd6pnU`Sk7egJ1sv!R zJeK-nRX z4Ci~=*6j<*awOimtf)?4ywt*MBC;HO_z3xIcyVkZ6erc9=~lA((x{|AjcE~ESHNmk z1;VSX?G~;r4db_rnmzz4j)v306nSkuHkG)}kmmsL?pY1-I#!JIR)~<@o+(S#llyo@ z?Vg^5uk1yW#q~y+{;<%ms9?n~z0}t1K5E;9Eu35%QdPfDe2LCVfu?J4(~!+T%=UaO z{+*_Cakv_MP#ej|a5k`m!1vp`ey_5p6Q5na9cvS|*z#tZds2X$*xFadBAFUx?e4Rs zhJ${0fuH(|V6AA`Jp}z6ca8&$6QJRa!l<-b_r-GZk|XjkHBiYz8Rs4KwQ95LySK)I zr4;w8tG{OJY8m41I2?Z>7fK=e@3-HUifHQ4w(-F46 zLfZG?S;iYoprKg=Rp4J<`AK^bU{>v*OtP-v4vo*eUQ7^`ido7JR1zPVLVzyL=V8rj zIsSeWiAbdhz;n)Usd3!5bj!+kole1PT^eik^EEU2X0p%@`_pT_r!LiSv(Eko5!Xci zwdEZ%6rS_;|0)+8|1)cXvU73%M;oRAZ2!k!1epEt7o8h|BFp>)8_>7ss-$$_vXVUrHByuLxO(y4gas04h`7?bpzu*2%H_2IlWO?ZZ5Q(_D-6^5sJ0$@0svZAq z9yHi0;IPYhzayn{Xw9GAQlGR>?zV=IHc-&?!2e=JQbwbV_bbHK#cIx2>JRJ?-a+7M*ebC_qZq*wtW z3cWJASPu%^5Hwjtrd~a>96AetTqC9m3@69urw{C<42V^W0351{EO!#YHQH$(h zULZA1BNh@o@l%Hn;qNn42YG7Myh>>j^U4?waKApAU1)ll9DkjCCN2ReP0;S-3hWV; z1U@I)qf~KFf<&z#x8#FZ)S^wJjCUFkzEa1>tI4M*&#+j{paNUEFS$(`S- zn`rx#GdhHrlvndqqgyBd9VSlOfYLO8?Mh7_?ZAVtPv_nOJ^LSmdpo5jwwStn(88rI~jhJuQ*0}n$&9CepHqbE^ zsEZEl?!FKC2VNq;)^IY4n;nBbTymWvrkJYsZ5|i7R?EB@@>($fvA%3|9Sisrwz%=Z z-vy+!h3`v4yw@D85g8R3D>KkEGbWHMA2Nxt&Mv7`Vp7QN?|!YwtM;l&7IuoFUD;1d zYK@O(E+B?)j&Rc}C{w=iQ3qLh5BPaoYnkuUDZo$6gc;z5K0?Q?-AnwGZIQg>t~5uv zU698xXFf_%n(F`%giTJ^^OTBTok@jB->fi6nUq^!o%{zg0o~9%IPI2pDqEQ}AHqFP zUIqe%%jY|%6(`;ux;Z^U6lxcY*8>p*=WcCMeelrSe!ZNKr(DC)9Qfs%YT0|<1hYFfwEp>H(8*^TYf$wg{{Opitj)=Pu zfRn4upTMS(HsR_fPJE|4zU9;q;cU5WHPhW0Xr@x~cXc=z$@Wv0Bi~4{f!^{I7GJb& z=(KJriBAZLPd*rBw<5^!g(5S3vTnnA6(*IN?>udLW$|^R7CtfLaPoFcWrxyp1`^o# zV6@^CnF}wVbaQ4tvGUdYiBOk%JlXwNT8om^)`mmcx$rX%_w!t3i^^lm^0rM0p>5vd z-*-9g2k4)m7sbQwXHiFP;269131|4}E)zZ@c27)9#?60NSO2o&OEBmYV2zwgz0?BE zp*m;=16y^P5h4+wY5KPl|o1*s-MQam|EV*Nr*#gBj48La;4NSd=0tuv}Jby zHkl9r8Qf_`J>+`X4VhUDPB?4B_F|$NNukhCr8ik^?XMhttO7^oQRqrT#6dRPZ!%~6 z`RU&eAA-HR7=cCtugBmAJ8q?JIG%Jnsc3beQL8c=zi6$ zTuNoCiHcijINku}pUs0Qg17;xf&#|JYX2R8BQKkR>;IX3=$S1>X(u;LJXOadY(d2; z*%<5(xE$k?YwR{|#u$B|rRE?#JbW2I8%yA?RR}e5pW8}yXGE}%VoCmK&R8&18iw4#b8HfPj zskmtryd1!PxY1qHd^yKNL6(oa-ZWkH#bgtj^n9e}Cre$MIUs?%r)hp16`u6P9s*s2 zehTT)z$vh;##zm?_`8!ev+AUDX3d2rc=5qLqt;Z$KSSr7roq#8McngV0WQl3TUe^z zIC*}b|8K#?I}~mgyPZ9av+(gcNNM#K-^TsxMNu#h`-5+9rB~jWCY?itnK8?Ek|}CTq&L{LHW)_1$qRk~P{g08#0&Y0(L_ zGjV0SC?!EAVO|l1EdTfynd#_vPv;uAm{d|J7pEru@8O$Pg<%)=nA3kwcOO>=7xZvh zLvkZuYw6Ya`(E})G1;D1?Miz*jmZyQfB)KZXCw5^e06oec7z6+UX4hB6ihMglY5>4 z229Q!y{}~V9yx~=3;SZT;t3DkI^xQ8&&@e;e0KIUv{MYa#&o2U%Z&rczLq;lQmvR~ zCxso}UT2%2)-Xl&=MP9v(J%Hz!+#xwv!LW;ib4xeFD9$E+nyv>okq*sbW1lEb&_hY zXlbpS65Q~cd{5bs68mz5n=mT1g{RE{de;qy`lp}meG!Q{ zRJ+^#iG+N6eF?c& zmkq0#wQe5!(S21?r}455Co1Y`;xy>u^h&=(U(9tN0D9(HZ(ztWx%WO98Y@hlBQ&p6 zHf}0v>ny*tPhjW##S9dr9m1W7H^Y>{^K$P0ILrOI!GY}j<5s&IvFz<20yXfG5xque zj%WR5S89!#$ZVG*@W&jS*?DGvvY{?AunbL7fQ5& z=zKFz`4d@&FZ;;PJ8Ny&rEhr~V4Kl=#{n#|u-CF?*A8(k!mWS`ZseBHF8T-SQl{d6 zPzn7>GDT&&BxV!GjA4)ofZlI4t&yXKqwEJL!5)d0O(d*O>rj1o< zxFVFl@t@THKxel3I%VySU|yrXvBsh1BQ}X#ZVTI8t14E zYN}bZAgRCEgLxxOJy(RoiB`J)nBQ}P`Yw9XMG#}{yAdQ&Cwo;)0l<5PEl`m}MjdhD z31*CCm=be}zYp0It6&hHT2-d#bfLm!*tJipy8<#1{CE+hB@d9e1zD|T&`gnzkRwVR z7QCo`$?aOH8^4MFlz8<4DI$Mc{kn`L*gyQzbUzAy$?C6& zc+Q3P9qH0#bs3y4_XUg8t@=GoqYyIr3x%nMyDz^R^=^*R1+)!Rf@;)nL(1ATI~Do0 zpeLr6sn@_Mc7WM=JVuJ+JR?wK;Vu zdiS)1PGc!=>gidAI`Nw}t&2wkmMZthhCjxxM^lidrhuL?O-uTE<-dj0wH0Mmim3V@ z0f+au!}bPvMk)`KHH6H4gqg0SKAlDi9(XTqqh%^mih&ZeL7XHDaqG{B|EytsULfcE zYqLAAi@d2n4@OWz zhn&5ZdILOO!$uih-rP?*_O0@8aUi41H?g)Bzd_Ehh65yw;R2PKRzoK*W6uK{2Q$2% z=i!Xd25Jytj7FmqF~xyVCy5T5VsoaT`+F>d?Kq!UTb{!;z@oBAI?knCK<8z6y68O{ zEi)}YNb6vG?MMU=+$GMxA)hnl(fJjl%)=We)}YZ#uD*drx28w`JD)(9Isfav1!hkr z4*S`!iZwQ!f2Nb)i-u*EY-k2FGDw%?QW55A{h_Ndhe`Q);NhJjiK&w`GMv!c{fizD zY(x?HsFeX6)Rx}W`egqG?iNB{CgW1mia`ovRmrwtO;R?N8{+HH?NR9p7qfnY!z`BtFiQvSi)d z{B1jXge0%|bH~ei1|~D=@Z3{ipOmxGR>t)wjZW1PyXyryhlSxg82B&Vis1P4!`ooZ z)Xa?1lT{6dM@1gj1zXAN6}NoS6iYDCJ~PLO;-n!X%dA8<FT!iq?_%yV5A{<0xDnW z;&>pWGS`q2N~AwZQC6#z0-3|4A{===ES-1|IS;GhT-gFQFsc)&A{Sia6tw^%{vM?h z#N)|97o!DW`?IGl+RLJv2FS+MG$S#dZ|Cqxz zUHqj?qL|7e@13Id5&>!Bz~iW@z+cAe|a zdb@&sr4hA|iT3NI7x%5u0R4>{3W~AhKqyUT)l&L2I;&JMw-8pss*4rFwXR)0VEbdn zA6{NBQRldcE}-~Vq>Y23pNiet02{VbSi>GF-&3!;cqnPcw%0mSZ)NTcV9PY5?{f?v zGM>hLQ>69>gU^|2dI1dcSd}G=WR#z_ABurd+sByzNqX=*)y0-aq=`?URp{I$9ufN4 zYKy$Ekoe5@BDo9=<#X)|Qk#2{Z0_Pve&P=5{URgSE2&+-4xSK+rHO?Jl91gu8_10} z8t-WYj6ei8(8Hru`?0khpo>HgSVwN+BvTU1g@DI@Yn-re98m8QF2chd2<$L3!UQMR zCk(#zzQY&>2jNtRn8w30p#+1{0@8uaAHyI~U^k8Co;Az|b`2-I1$U|Nlvn*ru{wQd zX7h?-^Y8u)1X-MvIVOk5H=#8CvYu{$RMfMD+IkNnO~Jhs8pd}E!1+!;j+#!PC8n-@ ztrgY>iM$DWMoZ#@kM77V_U{8dUinv}Y>7@o& zE$SS?@M>Wn*=aWi@P(jm?`wbawLN&#EnPM}sS*whw$EBBhvBlZyI&EY8`o+b58FIR zl=E4r^{&k7usw*bUa<5WxXibdhbw9Eok|JqW;zm4uudm&ZM_t?AXt`LF!WHnJUIw| zJd48HOsHG41P1l?i8Nc9nY~5Gud(T4?!AjrwE3r#YFPFGI$|%~R)y$xQH!I`Vs(+a zesV#*zk!MSMT;0-;YxbP6j-qOaQ5E$RV&1_ESj$w;ZFC9>+&_QSv${LqrXoIFh8}?wBp@{%Hc7W%+)7LwcM+Lx(2JIC-?7c-z(_8 zmmefXPYDG8p(j^|^|kU*Cow@(JaUvz*IByqrH$1cU!1e{52icu0(|eReEqYPyuV&u z7wF&7Qox8h{s9xw(21pnz{cL}f3+s>{ukfg zVu$-d5zkF8$fo{i$g-u2OW`atWOf_2K2pwm(z=n&`pHy0UoYU$6Du{VR?Kz^L4qJ) z{0HP0dR|LD&F@y78@i(TsfoP%;jP;~QOYRd;i(i!L&PsF#V`GYVvDQy!B=ii!j{Os z8$CO^K{EA>3X&P8c}p;iBU6BUbhnqTt(q@wCZh6Df|@<#@U8+azgN+2looxTx_FD7 zYQ8m3WD_#*%Q6k0TaDfw8y@{?OrwU!0Hp-cDH$v20$OMNzxUz@*0nJCYO4fTP*g>b z_gP2SncH3rZgnS2Pn~=DA;{=K#7zi$29^M+!C2W50w6%6 zkUad#6PPJkK~&==1C6gbg2Ifi;goU-X=HmzZs);xkwQcHK&UU!$N(dExb;~{<;1uuO1s$VW1_e!0z=#7{13;PkQrl|t0w(=Wj4X&-gaWV!dsRhbW2=AP&@un*%2PIkQ zV%0eLkA6TT7J8d$2&MV9ev?Td?4FN^UvW=R>h2!FBTy43B?(M)z2Zb%_gmv+@D z11m9yo7)o7{sLy;E~fJQ$uD=-h5U}$G40bm)f?!JoW$B&qcb4SI-U4|8FqGZn<0e9 zkTptDiw*7W(v7E&Gx~l!j2WzQNs@jMV~$- zn^-4i+$1Xe(sKy%!WxnBD;+SZNhU38dKs>tl@c#d$peU3GTf@rY6*Fm6FQ7md<3lDmRou3+;m9a&fKm{J$a%&a4 z3Gi>)76Gta#oSGd3c(20@p<~BVlsaf+thCYxh?T=v|eaOXI9u8DUtGpk$9R7yna4W z*jXBDn?x0}PMyNQC0P^uX0`)?6yAu2CxOo*eUfOeG(Lk?(s{BM|4n8T!f5wMQd34t zHfe8lTxZ7{PtjvyYsl_QG=i=c((Zt*FQFyNss|`o7)x`yv8+4*fl-th1fG)@mS^qG zrMa9iKU$~>BBuZSYAwiiN4mKAGSe->&gaeEJ^sKLmOLc$XU!)bCCnj^8{iD#3i|AQ z(7`e%i^|Or?sfNXOlV;@qz-*LJ|!4f@3Dx+t3;zZF$UEvHRm+U&Dg&hDb`^iAc5}j zUkBt?2@{o;I@j#ap4K%Z#25hOhy?*pe2>eHHO7&h_hvxfia6-3$5YPOzDQUPjdKOZ z!~ZIBMqv1%9Zl(efluAyfo|HLtjd%%a1E+p!O^NxMZINAucx;6TPhk`>=Ml6g2O#` z-ocIFAT;KaEU@3t!4b^tS*;Bgil}g}#{-&diEM*H-bT;%!ZR~Da~E?Ohr0$+qw)Du z0xRD}`W+BNkKk1zt%FQ-b3!G{p7%&t=mr&o8%ZNH`%)-pcJ+HA6=JAFUP@_Mxtcx7 z^<-NLoRY89&#ej6<_L%`5GXZOaQB%!81LHiN5*rhrE6z!#(^>z!pP6J@9f^6%}Nx4-S)ae^YLu1Yv^#c28hYhccRr1{5m z3EL8CLAxC~@D>w3{BI9oVN5l8`f<{+GXD3sUag_?qx7Kpztkcrf~Ne@Bz9|#uuqF5 z>m*98zKejjL!LvyhfO3`NXRtn^*{X^*Kjm3xbi$)H1jzU%i2glXYME9-Hn%R;FW{U z<8&6X;%w(Mf;Wp;O=T*-*S^BsytAIwxrjKKJ5&3wrVJAz26w7I4y9t)J#`YdUSu8_ zut*RyHOniYEX~3pY^?Dle3LO9Y&oPU?`8PioH?^K*V>q&uC#}cgyw6hBj#NcUtpS@4DM%NOx18uKaxe1i+w7O2ZqK*4LSA2 z>DI5>lgj27Dcy5L9aI$8WdZENl}N1v}d zMAm_%yQ9lyG&0+ZmzUxg2KL6Ob0_HoFLS^BSsFzy8n(t;_jmCqc$l}YsWp~10Gf6p zVq?7zuIvwR0|8bOzgv3usyg#^!Fm}sIJ;O`d!UF)61-XZ#7k5=8i=oPusxu=XJjec z{-!jc^f}Ji9HN#HRFZ4(nc9ZEsgSIGrs>G+PSURMwrEJ{Uzk7xvr%)@&U5Gk`u zCb=2?^U*(Xv=4N_&}TyT$Ab33t+BnM%7CS;>Xlb}HOiQ(UNvG}dI>-b=NNNjtKk)7 z&f&+OWLt?_e#T$m6id5z2klQqqOB>2A{avcQxnx6^9;E~1Kwe~(J?M3fFS^?8CQ%U0x+5o zZSC7iwx~cl6uf4tI^6bPE|lq>1kXQHz{5O-`DX0ep1&5W;(>&M0jj^jih3u7Syt8B zug5Wzg=-s1((QZr<~0*_PM7nG1l~E!`st|uT+uJ&Y^_C&n3@g6{VBR zRgynO;lrT|@SpIg0KscG!Q*KD+I8uc!@@4ng&pP3(CnPcAQ|@D39KVI*876nn;G&Q zYH4T8k4VJ7Vm1VsI?8jXg4w}n6ZLbOIv|oL*@{lSP`vCnY%MRDXUh$qCRIW^BNyY4 zyRuK6eA9|Tv-@yaO{e_X3Y-0F_60dFX;YJmF_pXs6@dk20g`p_I08NSVp1XnaYx*R zXz{KWT9kL;J8n4^Zh`vAj1ZUiU$9s_-{BJLIn*!?eT&2j)uC@(l42fq)H4X;t!6Y2 z4|m570s>p~_VlBtI-d7-_otA)^MwB#N3!Ea{T#*!diA=9ry&vbQ`NqFcZj2JQzJPh zLnDXp@BOdP08+KmhLbJ2fYx;XrgLSiN3hN9EW?pUfy~cDr>a(LBwYR-Z1>MqL z{_UPD1iM??^nh2IWM3ht-4ul;uLZRL0kfv^J-{rB9WsfN8d7*BJtt>iE8FalkI0$ul9f4>p8d+qj=!U$XZVTZ)qB zLDn(hxiBq4azh5Ix`(R}D-BvJIadETkn5v_k8SK|WiibnlKhHE!+amuFkiv!Og^qx z)EPy*?o#Eb7+1UW-TrB-+92F~mpU4j0)XT+qo4BARHt#lH5JCUT#njQ-$Y>j(8YJg z<+<&L(mq$n-zDf8bub!qPDb^%Nxb9|NE~>Q%0@|%_zzb)-G}UW)?N2>n`@a^$Jn0- z$Xaw~y2;?EgM`Pc0(mF9NGfx~vUCxh-#FtT#r0pd>u)JY;9AQnh27CObEc=t0r6aF z?hl~D)M9bdh&qT39T}VLx=}$cA|X$jZG1032Tw02Bo)nGeAV}9C$X`sn>@?-Wh;Y< zibOqqjUk+~<+mJRf3dEvjCDe@ce$JClL=^%PW1KeK@r?Ix5+fgW(yO44UQ(NOL2ID zKU&u0v!)~z=~cjbJ(RwQLk4sN0FIFZa_&JYZj>n*pyCZBh_<0CsA9rnC)LSgs1;Ms z>#(^MCWa8E&WOeO5pSQ0t}h11<%$`!#`1dS7cYqKq7&Yu?LX?`F9e9Ga`Ya-cPit` zW{2;HZ@ONf?4bMMruQlVuWDL_S`94^DP=>Gawv|wlA)UlO_vA_q+Z&f0Qvg~OH?q! ze8!Ve(ydkqWg*?f9QRE4oG7u73_4(hmf{38{p-!f_t#uz05iG%qllSlp}+2e%$+;{ zDBIF*)k74MB#KIyimwUrOuL7#@lQ^j$~1WX4Ik3|czj1**yr#tgo_kH-|f4tP*)s| z>u)|QL`6MW0v}xUF%DK%0IRV%F+^~ErdgEWq?>N81P-YrGHC{gc#fqMQ2#PE(U3+H z5M@RF$KWpBWvs0*6xXyl1!>UUb5xwrrx?<}6klC2QaoRXB-vH^JQPX10A>vFzzmYt zjTub*X$%EYdKy4L^c7aHXs(qo2n;z7heQ%y)KJO}PQ!Ju4oOrVus+XT3?X?7*}`Ue zlVjcj!Bw{auZzw8dBV+jSi_zlWx#x}C)1>uEerfR()}HYA1_PML*#1N&l<;BiBy-s za<9G8ggVgj)RK)>N^SmxQl;d=zQvxjFXTHd(t6 z>g_Nb*j$_9zzED=Cq7*RC(^*(?xOtJ0)OD+`XUz{QqTNuac{bCE>hU2`1oQ{!`zH0 z=-!Ke3ItKRxe0{I3{Hio5$4kT>Ft2Au=L}ccQ73j+))zsDlz<4w0Y1@9$=}GZglwhCTG6|`c44?^B;6u{%_F#rY@X>e-Lid>RSIHM*IhdS_eT3$|M(&Kufm~YMW@M z0|vNCRL5}%^iQr0({74 zOzLPAH>_w|EOCP>*h~1$pD}DDQxqi2XpO3MXjo}ICh>@S?}sFUM~2Pvsv6ubc=znF zI-}$VeZgjH(~w)?|=@Oi3+N^8?aA(PG{32wlS zNFIHp6+ria_v=!WC#aFbP{WXYs$+zlb8TAB^eqK&aW!bOmCFgF8xsprLSrqrp-P8) zmI52r!Dakk`qwm+{GFYzk#78In_`2X}nKe`93}|}< ziWk21eg7Hsb%}NvQd2+S*YjxgxlI=|+rX7f1}CP4I4ZJsIVLeVZnv_d#hzPU8Jps6 zoS&v<;Z!Yn+$Mf72HpT{$FxadBTv$t7%y$UY{Gff>zd$$f0nEO2Gn%AQVjvW-u9kX zM>f3^vwZjU2Z~S|-^W2JQsBt<9af+B!(n)9`_~#?)%Ax4k&K-h2K$xF$;hYW>m)QM zMDn`feEFR@%fSlKyd;uBF2k11F*NDOA&Bc?Vj{b`ikqKnIdVzAP@VHR> z!AV0s)g!jyT)UNI%o(Sb>_%}?Orp-YiU$hAN3mB+Coloa;V;V^{K;vlK%25?gfhhs zgr_url`HhSLbdPT$&k$gWtbK!3c!dBmzrg|0xkGlt&^w#1-=|i_O1r33%WF(cYDkE z{PY$Hgpe$;OgMx1zUJ(|mDy1Oh&aN^BaolE;UOK8&lo%wuP$+hWn9IuJ(Ro&Q%xI2~A9wdN5tk9o>vlneBfpgdSal=h zR@DpCQ%N9$PpD)LLwS!)Rn;jPXIXM^`b*`5z1iAeX4_$OG@ho4JkW3Sf=6oxx-0+s zX+-NKVd?I1lK%U?1kj8PIsO1<#)-yJ&`#OMWBm3mH<~S*Hnh{7>^s~T3YXcyoG~O$ zG8!w8a96O|{Egi_hHb2lDM|UqT<}V2kh-eiaW}MMRy7&~b$b?Qy1F%e^^x+13C>~V zvs6T#FVHuKLlxG3?UT2`&+|Umvz@O*_61X`{<^a3dKj*K0p#sDsbyM9K#5CHHUU2Fwg1e`|P2FXxjswM}nZ>uQ4 zW|Up~R7aYlFA)4$qptMj#IMc=q$)<5^RXV*9|6av*Qs#%4Q7xENHXf*1cA9ted#oc zJ};{;sp&-%)`UW?U+e0bUx#bUk^ zy!6|L1fY?`%1(m?zugfPB9C1HP>-N6m$JPp8f>)|ZPBK*w9+ifA9lmTHfkTV}TH74+3cnN{a(p zG;##oCNe_0J@t3SIHdm{qTVsC5^!zb&bDo1vTfI7*JRsV+1ARoU6VQ4w(Xi+)4#p< z^Zwp1>-+k!?)zTXd0fZIpP69-JN+|V;*-Qjm4lupmY{}x;-WGi#(8gPa)de38Ds9B zi6;Q(t43Cc3sdi?T0cT1oI#6DQ5kQZmMG{}kO*(rx6dW4lW(vbCBJ6AC}n!JkhsD>|B)nkE?41C798OKPzwya>TwO=3$DMhkhv>II)| zy_|`;iH*44+@XhbNwK6(r^-8@xMy_{mdjceu^_CU<2S1D4lUG#^zkTXcB(h$Zvx7W zj(4+PQq4R+A~;eLfvwGPXJcye=2iS^b8=g{=3WClq-j!@$6Dq*@^cv->YAk5C&n5>3_EGm&tL8NMgDv{?Ndcw=r~G(30L=n!oN%se5{}OEVXW zK!r^fKr#WU;1gXcW)$mP0H9AMOpqnqi?V{07?4gN$>O?=9her6vUJOp>Pw5(@1K+L zEZ4(R)3Uw05tbXdN7tiSV-_mAW&q>lXPQ=FY8TIoUU%*k&?R0F&(bL()4}XSp#B)@2p33 zOFPo!{IqVkZ#?xrHgOSci+nY^uq2)t7yX+rKG3pP;BGN{lbAQD5g0L|EX$2A~Oyw3;nvG~ex z;(>618b*siUC;t3_N;ApH~Z@J)I-Xd)D2_BWs%2ZT21%0&2?1clO>%8wK}@=ht{?= z&Q!L&%f?nS5BE&5JyuI_-YigsM^rS0E%PlaHZiHtTV%cP{kXy&vGhYZ)2uTRvz|EM zz79q_=TdeX=%j_U!GNny$dq5Cd7%g^S0*0z!$4aH#08 z2q&)(%JR=wlqwtrOMT9hZQe@S(6#YjSEj{f*mwH5=zp?*^$a74koC9Bzeq!R9?p^> zcmq1&vno%>_3d9rE5N-NMn5$Ukvh(mh|elCGY2#K0Omb*9gX!5ZoLkkGtt-~=$&ac zKi)(4AXw^)Gv+KixNPHL54-B`?b|NQrdv^WI2Fsi!Lgbcw^p}fw}mPuaPk&Qo{UsW zkJiUC3Y~#$lh12#6QWtss&s%{GmLE44>v|DM@>iEGKAQoGZ#2NLGV~byR7ApzsN$R z*v7BwfIj@9ZXcf?5;&;vlWpL`Aurs`@K=uyF~TdN8n-xj(~ah#Gz)QQkE7UxoByaD*;H2gi7S4H~}^M*Abs@2U^U9^|_gLERWh9Nm{zLF9e(fOTVpcKq{%(`MqW{ zlJI(u%Qp}A#K>$39X{-f<6mj`1(Ko_oWEV%FgpYB@5gCuVi6o1uAoZ(F1fHRHgni z%3B?IGMkw;b5IW%k|>w132FbH)boez20^wY+UdOAyiY+%>*cBW?6>a+GH*XzO$IgGkDG&hp+#AHxI5VLZlj#QQ1FQ@wt&Kqq*2L|78g@2f zDBKBWQ>ZGXjJg&Ip-an7nV!&08yHF8RtnY)nehju7*8JdSWZF_ry*5G0eZepBug2E3S&WJ zKPAQ?sw5-W6jWsnP)fe$e1U)#u|z{FNyu1=O-#i~T^quZ7EKE}((H&I zoROpeJ1A~;0H-bu>)O~p1maA0PLgz_&P?B!s6intI-5v`%_ximCcpUCI26@}Lq@Op zH336Km$WNR83Jq9DF(PLBD-ncC(ijs`lA8obLbMg2*Vf!P&KD?X~OXa`x3{lWq->N zdR!_=&zPH&JsCDqb+nw5-M+_?P%6-F@d7#$gPI4>qAX()N@5FJjrVyrA6$4m-+%SJ zP~5uxJ7>bxl@3_%Xu=iDc)|t%(hmk-vtDgIVdNf;+)YYGI02meSq>V+E7%WHW<0G8 zc_($)C&(Iryv+*4A-wKXJ>~n7-2UzFBJP0j@USo2(?mYIobuO~iMrn3Is&U_&R7mc z`u@IO|1Kq&GbP2!)Vd*`X)KNNgf|6Ui_g(Tx56cnAImcon-?!@ES?JHLb_T`6xlx{ zK`#U9Xj%s=^?URi;0%9uSzh`ac5>{@!|crO`O2vRUeY9+viVy>it^{Cx>{Nl+1usU zVgDc<*u7tfnGpZgn^(wwiEnjLQ#@oIh;-(rKF3g8Ok^0;QCN)pV}EkBI2(zy1`Y91 zf8UjSdh&T{QkH}9*+~4EO(p)t`(i_=#m_+qO&C1G&}~^E*yvt3H{G?ot&aBbO|95a zYR?M-XrqYaqtK`m_IY0}mTT6q3l-Vp!gGV33SsF{KcQqB&;9?>@6f#sejYhPmXrax z&|IqYrR86M_=r6CMAgf6Cl{px*@!|&N@3wIfx&kfJg$Kymcrwe>WOdeFO+wns7n}( z34H=zFV^rmgG$jyoqPYrWSW>adslyGOzgb^ZtvI7-=DWOuAT;u!;RAO>e?JWtENKp z9KyJwuihUt!HW@l|GD%SeDt()JD`8*bm`iLwN(in?+o5;yeg&$#63E8HYk$)8!-r; zz>l;0`_-|Xu4N`FqX!Krurq%=gINt31XI40IPo2%^+F(o|HwCR6rZx8#(6e!c)k<_ zu-lIcYVgA0dHCkFbCJd1$*$wu$*xJg{^3M~HLJ5*bLkJv3hP#P)f`27Id86w&|q5E z>9?f124Td^E!Mqc=F)rjNb&cYaVtjE9 zaiDf1S1dN09PL7V;E`xrnn(THcyxb1 zjc=CBUB;8R_y1egEJw0E8_keG%z|$u`cbg!t1N`(Ke2g?tdM@i8q&c+jqe?WsL}F3C30gd#7ZYzjZfZ<- zcU&PyQhd?-1kU<&DqgMf7cnZRlHULQ$>;dLG3WnCryR|Vxc{NKFdHB?;Phd|*WaUy zDRb3gh4tF4uHryaxn{;{iVn0EVDHT>+1mYh92XN6$6nKvTia01Gt)yX(F@5MTG8ThG!DD_aR+=0PTpye5(X#Ddk8lre zI;gmBKhm$m&LOz^=&n)1U$eB}&-rCC${0y$QOib;L#0GSN^)!(OCg>IFJr#P1j3JM z$Sd0Y2B{7_P7L&bR`1%~MI-GrHf7!xfD#V;Mboawv&2_I5L|0;$}(tqTw{j5*SpPny** zphEtem{QdZ<>h6>CZ}0OO9^euBLIPU+1TW~iQnMFP0#j0v6r?}M-V1V^rU2UaYw4A zrlra2YCWNmv8m=mU7LvCAhBxdTJ!8gM!WzE?@3_GwBrIFSsPy-CY|SBB`1_mC@vHA zt&32>tX-8HqmCktxb~$>BBsx*5$~ZKdaK;`F}cQDH7H*K9lLrfTiRql19*}Hzth!# zHxT$-rT0qKiivodT>gG+t*)+N&Yi#(%;8w|zlUKu`I-6Nv_KM&;dR)(?QB{s@zS$} zEz2GO8JvEiMdv}+I_^u3x^>X&HEepE&Cr3DbFUb}Dm|`+)`37So;{Gl5Z^o55?sCb zvZ@LGF>4CZLr5Yebv9a00?;;voHzx;6}cqEo{$0|q}Db^v!XR67{op7Hx`_#!rR&w zl){X6^Jo1emC4=;ME{b@%r!NXnGs58aVxL{Ef5lwwO6ALoj*LZJXmCwX5vOzr?IP3 z<^GjzG#Vpp2k)XeHF~qe&-ITG#rxaY0Oq6ztzuw{j|#taCX$eW3gGSVWf(mh3{#g^ zdcIL;*|6QSs-$+ZqLT1k!5s_H);orh+WLv6vz^k_!A1k6-Yu(hs19G9M+ts%`Ir2t z+Wz)hnbSuj@9Pi-bkbuZ4Fq?@&K58`6Ds7HeV)-Fot|6P5b-GAD#~MiWZzrOoZ~`k zv|gd_(BHSlZM*ypOe#}|Z6xv2v#;Xo#yf}<^5)L>LU|Zq@^`O4tHHiD3PRxlefx>p z{5Gw|;s<1zzM1g~cR0)#e|XGReldZ)D%#c1p8WUS5F{(%BL)b=Q~dI}T}4|_BX-=} zD?1j=l$MY~so%J5x|Yh&iH?vcv1IY2!gk>sk&qZY&y06`G`hAp`Bv}cke^Z+JS z8~20$q;N_%-d5LCAY7*)f*ussyrW1*F~IlNtO*(S$2;nk3~SwewDz-FLLRYpCM?uv zk=l&_EnUZ&EoU$DQ!Z43e{VY;+%DY&uEX0GF2%v00Qf5$0P}cu#D@(brRcPhD#V*la93=gLSv|N3#yUp?7X-0>xoL zi;ixL%KmEsW@rioQJcnZH+wcLK44Yb4DjFLVl+P*1S&UPjG(Q=GKXIUfB{<#np>Yy zkO{}OV%WXsw-k4LO|@ROp$a|pkuJQNjO`XuX~_|rBw2)H&A?mz%fa@}zbJ?ST2M)u zQ#SfSP?;A{%RVaBYp0|kTT_>H_eOcXIo==0<=w79ef9)Qjl(AfYHNg1h$BsUgG1z~ z7GGiX&iicfXkjt++`=K$fWj%f-&dykxLxiali{(9K+2&LA_GHxxnV}wD>p;4U~F#4 z)^rqTGY`g}J@yH|2f^Nv+^$CbnafvvxOxt)fQ1ZpnSYT=^t(}i&FAlbQbY3E~GxKz+ET6MKLI%O#B?B=a0Zw}HfBMwuFM2kf za@NJ#vCK9~HU4n1V)Iz5)X32LEw6t1G?Pr4(N?^zu7!j%(lVj7BeD;wG5ci35LXczc4UdoK zLyqn&!Q^rrrOUTmrOTUGC{l#yG%rl0x#c;^PoxgA9l=l63Id_9y;*ntvk}f0W2ts0 zb8H5_ZrVK?e*y@ZuM3*+Qv2MiZyfx2^h<>%TC1`;v0cUrLP)8wu@!MWXh(vh-sX(> z8(`tK{}#%V+C^+xBI2PFy_;0@b|p?pYN#YkIUY%6cu~l8YQ9y1u0U5Cuo@6*DUyCJ zOFO1w9n6RdrZAb(MeM>4vO!~zyXM88%$ts!%=%502T7txC=&8^(T?@TR0D&a)#iH)Tfl^M=E>qb0nNLe8e ziGB5mVvNA}`JJ?rmORzDWggTL`W_JVnlCE)k(R4}Ld8DOl}W3}Km@I);)RyUFh?v` zz`v2CnB+E#S?yh}x5U^}pb*h$-X7LP(EWP!KvBNIzc5F}$VkU_i!nQ3LwqkomB zb8`gYhmkW*?veM2XO~|sS&Ucb&||9q6D~S{6A1vpO#DoHZN8p%OG}>VAiIwGCuYwO z?%^cQ6b^XRh#)o_?0+{YXV`LW)YyEyw*cTcS9_kkk=P>CY}vn+TZ$@Oc#I7B^AT5$ zLDTKv@&PP(60%Gr^D7)$H)n)bu2OPmSJ~^12zl4;%{OQ!QlY(9LeWam41G}(Z9{3W zOGS8^+d+6)ctTbMuIc}e)yWI^W_37u{%4BH(bE3Us~lPqB^k^ zs}pZS>R-|^*I$WgJVylyDe-_E$ogXG%sFZQdeHAxVqExdL2eIyw>PPBgYU@aO_(uXd zUdM>%sAo_-MAD7&fS%e7L#>8cAfoQbF_!N?GsxplBS zd<3n)5?Z;PmC90B@n$8Ba?-FDWH_DJPD&_jAWa;?(ec=&I8}W~`7VY5SS|9^BUbvN z`3Bed+?!Q$wP~hctYmRw6*fTCiK&zo{d+sC#@aDFL$Wb)MZ>#2HL+nMZ3>gVCGwtT zT2opk1$dLXWg3+NXJP=Iq5(2<&MYEhpWv;E;ie9BZj!m@5MjQMyp#{cM+W5zK|OY% zT)DH%jvJ~G!fLCA7am`HZVX|5ptaj7Ja(AubD{;B0gSvJUkO$!O#wN7p1alIjtAB2 z*RPtA$5(xpB+~UP^_csWuhicy&W$sJlECY)%-nXtm+zr$n9TI4;{9%eiUac{dqvD! z_m*r=O9S7w?U_a4*+emMWM?rw!^kGnmH2m9g7U?Xus(tnr~OpiR8IDOXm3554bgBA z-w5hYf#!ll9b+mcA#9Cl9Z~?2cE%;TJBGw2Mavi+7iy89*oV zpOT-^MX!L4zji<0HwrK5ib-S3_sh-~YS!u6Xs`WD!jA6`QipDZw5Ap;n3KL4uF7Je ziVQ!HHDrnMO4$LyZE?P%_!U*^`+l8&F4)1BN4YPR$b(BzKLLsA28-ne2MwQeNT`zS zl1)Fxvxi&c=g%pRzCM)Av)KRHRXh3~@b?J;n(O7oW+!MCbp8~Gnr%mBi2SQKR`3gC zshvT1)O3MTnfIMos${4f_qA-QG*bmntc=btG)7fpSBIb%Q{O9<{&P%;*2Xbvie*1R zCg$P}Zk9h6J^)BbLF#(ec}UbkF7vn(>8|0#DEtP*ZTli{5 z$4xQK=`SPP)`Gk~9bVjX!I{roVH(zCU>4{QX@W0$E(Q>SBGQCP|I~j~W+Dod?)-;!aB{fFaDn)NM+^+SsWob)6Dp7yUXmb@#s zal*Lq$;Ox}g+!@HEW%bxZq=gJsC^xp5@PmEPyvO;V#(t+bLiHC;M)-U7>Hd?-fD_L z>1Sz}8CAgMQ?!vlfI@rmO5C}yo29VtIg%qRSly_)#d!$9`eXZiO&dC^x^uvcaA>vm@vN|2ipUZMVr3eK3Mnwr_Zbp{ z!6{v&J5B_1B3C5#6{KO)@mJ4@!q;>@?+Sjf@eSZ!Pj(OeJOUec@eI#(_HwB4>_mP& z@KudrS!JY5*?eC;1+z$;3gsJfh_)`PQW>IZir(Ekag^qADw_v?-> zIsR5uur$_TXL&JqFCOt2n1H=$AQ8T^=~ue&Z{khDo7m}b+t3`!m|z~CvGkl#bqBK~ z>K;&8Au^Jd+PiC}lA=`Phela_LavCLrECGzH7t#R&%znlu*)7hH*H=G-ZX;esk=#b zM!b$2(;OVBLk$0YDZHd1f;(^0Alm(Vi1P#{9v+t z_3Qyv{ddai6I9exIV(bbcw6~9uabtu_m78Skj8qa^9i#zjxR7+a6UI924w&I=xp5N|($S2@UwhOdG+H1GOmKnwo3C z8!7A-sI>9v>)Ef6E|QoWrNsrS%6VM3?cJ=8@rT-+hP1tAryBv`7l*kVbSX>I*JK3=n=Q=rXmQu7k3=T zGSi@POoGp}OsQ01|MEeMbfJ{^DK)*vJ+X4gF7gFtWzL%d4`i4Wj+a%6HMzMGEsn${ zb?c~hLH|FTvlEtT8pf+d*!G9w-8G|)1@pw2VX^$;Ljaq1+u1%*>W7Hd(J=a>QiVW> z&XSpk3=h30?Mfkh+^1kH0tjVZWRT16Yr2p@R1Bm>J$W56ijyN*WEa`SMAOh?KVpM} zY44(?fNH&p^w<#CR{U`7%l5aQP#sVf!}5y{wQGXF$z^R?OG+j7-`Kk#oCmdWcOyc! z1bzOyv4DbfKKqnnR*naGp;FD2vhkCg+SoH2U&`nHuV%#W%K5}}X)er`GLx)%^D7(i z9B5q`>m6Pc8u}~Kw^g|YmOHAG`yB2(uueqt;C~^06|RTM=X*}y#N>Uf>3psl`bWPu ztrds2Zn7+Er-#IND(-YeSIJ_w5gY}E3%z<@IzVH8w?6*zok+C~S>E&~U$tqDg6#tG zNQBJXT4$G_&<#ft8);kUeRb+UJPi)9VRm<<{2c+bb%{jde2AuS@A27^DeIPMdXu{1 zG2!cp)JgJ!LGLmTy%jRIHRuo0jjl98QZrR&7H~X)4%B5xeJj6|CruHNYd8%&zRzmI z1OT7L;xR#hBV+5}7Ox>*gd5X=AJV6gmC`@_bqJ6d&gy_rn>6ZgF!`T?r!OJd}2rR{j2ClF_pa7oVY`9&1w~}=}iS1j_!qQF=Ieo|i>~TFM zQ!pchemipLw)iO~2DX`C59IBXFzqgAe5#KnxnKcaGR^|3nxof(IFu!(@B+HQeyt=W zprr6)_UT;!3f+V#2(VY|wR!D3A6|CArOzJsY(vh^hVs=?9u~i=1%Dur9h-vy8emvL z<@_6ohFw|e8eVB;2hqeb^*&q8(bJ!BAZ`{6j62XfOz-fuJ8kM^HhyzMr4Mha8Rt-S zafzs1!Fg52eo?`Gl|qwr9fAuJS#ye}@$+XXWL8rZ6qhW49_3MxC`e%Z*4cW#TVL>x zc1aeJR(S+Z#`JUD6va-pzV3qfJ^)#qo=zer<`s?@rA^AYHP29`S`2v-7QPPck+Or@ z{2{$MqM?X$X@M$`UiVMFL81*gEq#x&+Nm~QRYjEnn2P~0BaX)H#2H{&tGd)b@Es$@WE7~3yt!% zA2yGX^AnXQi|eh|YD#!7ffu^3#hU(7B|7>v(AU_rd~KOW8Vqgnk1KS$*^CwE6_1xQ z7DmRLwv}LV)XrRQ#VSq7ECABgKfXRoVBkq9d!2+X4vN$MZCT&n#lrSBY9?^(?If|z z%k~|w?S5POYMW3p&w`zcU}a!AoC5-}cTIQs$oS-_6|eDFf!pDXqgT%j08qK} zdp%p)|94FPdIZA+Wlx?)BX615S{aZa>Tv$?t>Br?+i1h?eKFw>g6*b}0rXi`3FC5PO~bqe zZrL_(T(x#GutsZGsq&;$*JTAWSPLlU#sB(2FhWqLhv$PDTTQBbQb=(^k%#&A`*CEDUJTz#<1xu;>vub&D{NtyXdRt7;m z`oAH2HO7||MMrUF9xOzQtd-+-c)r(40 zNc}P>&M;HO@eGBk`!#~UvlFH*Y>p>DrbVI(r+lD1K0)laaC{N5ys-clcb1|;-M!q;)_wDqzJ@9Jm=r&kk>y8rH_20%KjO+_{8Z@_VnnOb^3o z)6>f!EvKhj9_tP~jXB50n~5iv9ETU zE%&v6lcx-Z6=>azOIkf!*EzfK8%HsTt7Dy{_aCMm4Mkhcx^!bc`7Kva zKR$$Fg8^cFk#R!T!G)Mxcj(+|y#33}sDQ$M!H?&d)5%^9uJbEqJsIIumxw{`iqJ*B z#$0}x71S?~p-aT&tnEUAB$3`v)Vh3L59O0w9(J>T^sr0{w9zldD;pch?^&W=Gd@m0 zi}(AJLB$eGL?+0q`i?FRp8cEzU|RYVQ6a$JHH&ziPjNbhH|VA^z;?Tbmy&##A-C zp90pQ95O9B%V$@kC%7~>qi{hI`jvHQ#)<5Wg5&;JXB7@S3eF`QT8IU#d{P8rRM zKk`_DI*cl1t$WDOocpn?ONTpQ0ffmL_bFc7nXB4N5uNuCb4S6+`jI}R6g-}mI24G$ z2@RpW=<=p`;@2YZ4h@DB==$Fi9Gso`zW^Hs7#r6&zeWT2R?>YN#Zh`LG*K);R0D<+ zI(?z8`X#bCCE%JH=82L>w4zgn!^kk5&Ayd%Y<~;Dp=teOrZm8KFW58DmrqVvL{$5tyVmGUWj zUp3vDa&92!zzjXwkiC{o#k4>EVHhi^}`_#R?aN|}-9(t2a zuWhDD&DrD(Jzib&yymZHc>PbLw;)Wv5_)wm@(ZxX!f$nt2#yz7)X1dU20pk~ z3{1@bN+L^uMu}tZ(#W*Hw(CS7)7%oOHBOPp#Skhcs~|IH<&PruV_~^7tBbZ@NQ2hr ze3Z@;p^E=W1_>xJ7!T9BksT#Yl=kqc<^qJlR*Pz?t2bdJ`i!V;&8}+m^$~RId55;? zjbW&?(s2#*sIY2Q)lGn?gig~M|6U`!sB2!ZRS-sLIc~7)4{$nUji2ucfdsxc4&)CF z6FP@4xHc38d#N_{C21RPZ=52Lh?~s+UReY=pwTit9M-nYL9)guFOJ=gq%}JqD+dVK zhDaiCa`Ti=X$I?AwMnqiSQ7((VbZXo0V$bD6FVfi>ZCsjR6h`%Q7I! z32`kw!Qh;}eOkLm_|8P*-NYR_i&nEK-4)A`dx5!;2b?WY?b7@DXvxN9>bP+Z)PBhtVKn z{Vj*w#fXNE!zvsnQ12s*>4QRr!3MYOF9C&yNP}p?{&h^6TG|@NYzEli^r6bXm%K&K z;AjBj--o~RPuEwzjBJLk>ujv7_QEN4DN2`#HV=C6+q+M{t2ZT=BtJ=w=tdC7`$x=M z4ev7SUFta!kL_SBi_qnaY&{!%l6~4$h=S+p>hNP*Umpp@>#sEiyYHPuw0}EK=J~_n zM4tcM^O@A2Sy)&Y`F8-XBWMLfapy?a^})!mDDG5tksR1Ks5pt$5f%!-anF)C#Vi)` zIZ-z8vH+>w-@WEKul>YKF4%hFO0OPl)3y3z1)~=cA(je2`|x93ozwQ9LwkX0(Ga{! zb$r7~*;?^7{|x;XLompCP%NiXT1E|f0WwZksPRu#JJ2W@3<5wbSb@;M(_Elx8#n)U zTV{P^2D0am&r?(K48&+%E@saq5*LkNts7KjIAM-9)qxz_(*Qdj^4mKgj!w!sBHyjFV1;24MM1Dar33#~z)l^#<!&>b>4^3t*M?e6%(T`~iEDSMLLiqWxSfpx&kUlNUM?`as zX>fw}4cu))cfL{I+arwe1isV^WMXTgVuS$o1yVNJc0NGA!g+?sk@aBE(o1EGU6RdzX{QYL(aSg{4SBe!8kr)a~9O5XK8aI4jlP*5G% z!&5ZmpUi5{P-3EodQLAo1iHP3V8_1g{3j?<WxjpJ|mi9upSUwU7fqp(I&*{iiy|TTVwf5eDSm`90A_0|aE*xVm*EPRN!FY48{ z;`d$g6@{5Z^xr%C+l%qvjUP~MpmNMNy7_%$e+S?HLC#S~bV%q`9cYD-YfZ2jlQ3FV zu1R6xyn);51*x1#oDE-o7TjXp3}vm!g2+!vV$P$l$NlkW%j;;%$k01XNJvWHJF+?K z_hdFscE3fr{ZX`?D6(gttB1$EE%FR|GX1nZTs_a9%igRGhpgbD{!*+wIL!wFer+-H zHKL^xLUQ|D`xJ0I8|x{;TmRlVI*;8Hn3&ifwk3j{1CAX-o`dVVXmVSn&sS2}IIAyQ z-ke%cUr2Ui7kDy#yu_{>RKV$0&-@HGjB~2iHsM44cwF>X(q41l>lPa~ug7_98XHMagYG1^O*cN%AV!WRF`uZl z%^J1tJBmb)+uSt1U|Ee0+asTGOkqGB$STR0K-0+^&r&Oa>a7c9*W_~m_YgM0 zC`=A5UvSdn-+_MWocMS&b!Q%_cIwK(W?d6#ZM4~(`T8)Y2?%p?qR3!A$LqQhgfOT2 zpF!*Ow%3C{%*jk8moGH|QGfJ_PPz+_*P2UVEiveooqrc#6@h)JNx)Mes=C{2;hq!P2e(eu z{40U=Yr2W1WA|~u!$wjOXRO;SKny9}(T7Yzh%aG+Abq~>iIJo{5P14px|wF9UhZrtRMwDVo9~Um-_&Kz z-Rjt3dN#W{Sa4yqoti1W-Oi0+=Z0R2;kvSm)JV2)2PtwNbjSeCR9_|{sSb;mffV+0 zGcxPvW^5KgiJbe(p!ClY+*9rD} zbp7Ymkku|ioV%y}#|!(*fHK|Az4lxS*$#qr52{)9(^}zek4M?vS`)&_4RDemIJ*?7S&=Grh zZg=+G;5GeMh(S>lhRIPByA;djGA2dyk?#_aFYx?}VgU2$UrDwus%-A#pOch01;P$n zj77H{?(_LI5mYCV;e9gpnj9P;LfAamXR>~q7OAYyn~y`B4JV#P#_XG_rc~ddFZFfh z2XOB3pid?Q0KJ_B!0h7sqW63~_hRmIcz(e&gCYAlAV%RA9!6)Kr7OB}^0PClUA7fq zy+X7RWHrTIQ~l3<_7W9P7Vv=6~22#rCA+qKs_E*hz; zs%#=;)sGwk{+=4wD1oVsnOlV~kDM)EGkoIacj4Q<@NGj=lEuZH zAGyN0e(Qw(BjL|MXM@jat|8hUK7V;n5isoe@?deAb-<2Go;;UV`T|zQRUL6mUp&vn zptmHqxFWWL1mRSPk=U^z-`4%byC-OSmmh%ft=zi~lYtR`az_eiXAabK(4Nxy#&nCo z|DnZU{c&2n7O5RkK6oR6x!SIN@1gKhAkq6r9ypr>bijcpr*wL`U^-q?h@q}_2P!Z*k>Sb2;`P)sCFwhnq9~<+^R>v} zBQDD&o)%=>(eFjh{OPsxD}ey^E~M#TwbuA!Fn&eD5A-_B_p|9{J8%t z1uF@h&&vaLD{dm*$>;K(B^K&+y5=jPot~wcNR>0SmwMlseD)>8TC3L_pJv=TNhRKq zo9duBZl%T10i8-#tDz4)d%6bSpsZbAj4bR5GMi{qdtJ2D=}+Kl$({^Qw`dfx>iMG3 zeuP6t21d0?W{RuO)JG*lfQc47e}JU3d~zcLTR}pVh1RQkiJkVZXIc1)$Ad2UZ)_re zyhQf6UuelR>~BAM>a8`gt}NwahNLfxNm!8LS&|aC0Skpa8NXR1kg>g0wC2v`7QH`! zzj)S_ZNe}@;tzVJqf1k(rx8D!Q2&kwR+mxM)d(Bta&A8%scpwf2b|J)E)TH1*oP)A zUD^;%U-P(3Q|Ml$e^hJtx;(BD>1eARCIUm3Nu_n%j^Vg=Pw1!GO|pbmmv_GmkfSzc z@}k0o0QZQ=dW+JHxD}0+-~}&@Sw~Lbx11l%d-UX`yBnZ*@P-M+0F=vD4u(c}znC)1iu%74H{`d!9KQfs zN1J$O?HvD_(svZ7xNaPPLfy7V#MWuRC$t+4{)@3D7EqhXVp=VK9130C>=SZa7aUVl z@*QTYhv`gT6SlsI`O$~+m4+HB3)gJ^KUb=5>C@77BeaYq`WD*;RwndPt z0E7~xQ5*xp`!SI9P;L2nk~0&U{sFYcx<>V}p+)6peG5bHivn$IpWho3O{0tw`mA0o zz+ZNr`G7^#<*@J)cZJ14zuFTItZ@7@T9BHjZV-0V_VU#JPR!N|_7=*s;miAK&x=(w z%=AIY%{wx!F3yw#LZ=6BdzkK;X6zb=L3G>4fq@`mjLG?neU1eM0 zrbz``zs-FPKE>~PjhY%D-BUOtj>am8JG?`haWi+HYHgnDgHE*pSD_uT)|fgwAbZ{g zj4N`g0v)ySO2u3=OGI`@s7oY~>!*GCFBJi^fA?*)nKjsNFMH_JQ_hJ$0iR(0+8@79xNO5$`?%2&zLx5UXJ&-Zf1CrA z2m*#L>%)bY-KJk$ttKcvkpa|Q09S(TL7uLv;rsI$dSrK%5kB`{{%Hvmh}jBmk9X*9 z&RP(A6r(C9+6@|tFjvB00=RCnC;!d|hezt|AKqsCW%p-YK2iq6_?QW^ajrH8ireO> zwa?e2zCH`WGRa=ekD>fSj%=|gR2i(;9OyWlq6LhUu@RrZ5p>uTjxmAq01v1@V$uCZ zjq+t^?7M3zYotPFxl3svBd*PjTIBtKxVl++7{~H=yZe0r`GT0{d>aWrg8JZL1`(BF z8Q)Zb%d81`1B$Hwtla3C?sN}>LST;*mhnZAP@>Rjs1&plqjg*Ac|SCy<^ZaQxvY?) zqeJ=3fD(iK5}uqxg1OirAPA;>QRWvN$Nh5yso9{lfHt;?EaZ#nbX3PsSjWbV)dF%N1eTEV`Dc3ol6 z;~efSlNfK`zS&GrlK$UiK?kxze_2qT*8+!4>bUTLjUvm2zLYyMps*$&T24p9Uh6AX zr~<>+W(}_5tQtZpT%=emaeh&poWal2!=uh(h9C=S*dXibG?)o3D1x{@;*JIc>(tQ= z=}Gi&zA8)jv&G;F+jpbP+_t2~A~-__r#7Kc4=JIKk@?VAX}L=uF=PR(8pRVs1O^NO z3pnhIT`!p}OFBscz`NbVXShh?41;Yf3|N}It^MNmSJt>Isd9AqAoq5MC4h|q0&MCD z;%Rj1I+!SyT-6cijdFlNc)uDU3&^nOwurN4;02GX+SOz)!PHqGd50EwO37wDk{E>OmR*Q6le^@3Gf6d<|I)Y0NR$Xq`MAbhgLJ_ie;u99vZ8F+ZQ}l6V`|> zui*OBwkGoH+yzJL^w-h8bHR)e4o8{sdX|)a;}V^R=X?p;5Z0zR z+lH_{>UtvQRj;xt4x_$~Tb8k25MKEpX}ad+Bi!OB40SdTXIg$2skwpN)b1v(UB@7- zd2Fb895jY+`C_e z!3m(L4W%*#Clrx*mN9}4>M?uZ&d`ZojUp4>(`-x*Jwb#gqBpO}o5SOOPDNX#o1D4R zwTgb^PoJi^?-gxmb*uLkl;5&wqB2w*yLuJI-dV1mCDUbZs*X^izpHKDb7SrV2Dgus z9Hw3+Q51ezFp^ZM5+#aksZnE1?Qya9A88`K0bEwcWZU9-&zw#Y#3UQ$;)~Vy&8>ccpVdiX(P7)DTf6nT27xGg z2N(6u>dHi9btL|_ z;1|_r4Hker<+){;H*t*S6ExnTK+2oDGvSIP*Rd+R8*_iHmQar<&A)>Cjj%slgQk;l zFk)Nc`HLW31Y;5LyQ6ruNOi>38mHsGpFbFju)v3SMi6A2#;d9G9vI&g4)I!$4kkUh zVpQ*ckjbjc%rPf9qs(=bHehxF{AeS)*jgs?k=1|TGpd!`0A;!yNvQ`+@3P7x{vTWK z*q&L`ZR^Ia*tTuks@S%Ziv7g4ZQHi(q+;7PcCB}OcY{1!keWv8Vdi}%>_3-i%MGs6(g2bZ%c2jIZf;6RTY z`7wpqK!4{yJ`0H-#65o!_7i_7mm}ts2#=K`I*I}H9Scm`{qeUzMaL?>A{tmi9?qjb!j$7Gue_|~cKHlxn{JokIr_ZmSP|38 zw=|T;M+MiYbU5D#fRI%&z6wHK#0!}UFB}fN`B$wG} z;-fiaNTGn1X+-T#Y5*t#ImEyi7HkY1>d6+VgekpMTVhx3_PwIy4xm7lLQngf%yeEp zeV)9#8ySY0j~!VIK6t-L)Y&k+0%@r>i1X)M9}HtJ_#)%;&Ia=F>$9)9dofYu<-o8t zrA%BHoJ&#-mSm7BDCH_nPy$#~U?hB(-W+x}dO^ljAz z&r-$*yr3fwxPq6BwE?@GHRC8{9}}0SuBf!B??Rk&uv_#R=WkDry|;M@hAEb9m+U(x zw1TNFegnae9e_(Lo8T&i%#awiLJ}R&BR&Vxb9Z%0K&qzRGt8D|SS=~^fz!)yvWZEf z*IIZwBN>0tt(yiB;Uk;D(b+8qb9L&gQ6a@r45MiAb z(u;i9M7_``6k|6{9QQ%rb0UT($q!#yNoDvmx41I2I{Ee3cVKU-CXg$a?9X`=h{>a(LvfV8h^r~*E&J4}0uW#53zSgB#3bko zMZU}BxU^MZUa~j*8{a-}H*w!2G>4WT!|p<*R!^sa9lm^`%Vbwch>ucCa!t~*xII$C z4L_~nCjg%1B{H~NzmCP}hwsriu!SY$#CLz0S^UKI0)oTps)0rK7P2kR?pj~og|;UW z0IKi{54S*U_bvXQIA~B#puN^q^P1>o>e^@fcl0`C#2#E=M;zE&&2KpPX(6+H_kLq$ zp6!>BC)%>)xBUDJ7~D6t;~zv|6oUbEuX({3OF&mjuE8dU+p%)K&%3%Q%s@g}<1GyB zl<5P;d$e)wiV+VhX`wyLu_g3SbgAFhk8=JZG-}|2_E~J+%HHP zFp#JE{}Gs35*2U%W$JPLCx5wH{l7_@FZx6#zG40uL}EVZ8-bl|cp+q#D2AtVs1S7X zF$zAa1&Ob{JBmd%ifW7Kn9rj3*X~^(XFWmH)xp(ni5&BX`*g)>VZyV|RTjobQAjSl zlP`>p<+ftsPiI-H+m}v{C&SvM4AOx>in4-=G^o>MUV0D2@dYS=Dt(}*9JD^X*?70( zrO~V6_A42&b1R~RwavlT&%f7nyKzP zA}tu_@>F$F*W*0ZyVSm)f|{M6QEXJ1?hHZ%8|}en=gFr5ZBYSUvR@@WPGk&Yg(Hnd zcNi^45Czpu*}V7MTSb2^DoF7R@ZG0!D}&!WQ`m+1wd+3rAxZ-GvoHo23m*h!q$lHx zr1>BzRAoKj9k+ljl+@`1zl}ORUwvJ=+qC2vO5EnBuNp^v5OItS(EUZB)x@FhS-j-7#!;i=kY|aa^VgLCI560B%iVdF^T>uX%j*KMlC&jm z!pYn7_*kH_-H38+L)h|$JR1MWVubOr zJeJqNl#xM|7%g4Xbz|SbwUuEA6vMJAOsdyIgrNE`s_r6UsXjBe{17J`RkL7HC@1^w z1WjYdm1?N+xGK=7A&Oj|!VzW|ohz!gMIs&`p-VGEk;`vP15C~vXo0EmyV}BzD~ON) zLd(W}%(d^wBobD7HlTwUbc0&L-(D5(+8yO){5H8V#zsxpZ z$VIE!SaauUd(-|?t;|du#Qao%tmeLYt4vD64oju&%Fk!&JtgZngPy5ihzsT(RQ#TF zqiMbR#VUC7yopuc%@#8G!z;>`XhFDyulO*_WkhmVH&3{yJ%>J4PI-iiH0E2at7cNm zc2T&GmASE)WUTE1-Z!fn z10r_Kt&;hNhsU-)tFkWpmiV}opIUmlv5-rPZ!skTPY3NmasxuQP5v(nP6#TNXlQGG zO)&S!++FIuR~T!Rh)E;O`u#wI$|agqZ$WJxLpfYkjwKhUa?YsG#NV!!*!mI-r_S@F z=7Zp-vvzJ-HHvbe^fv~GtNWAxZI%C>RnN(uc&GXgL85W-FRLE$XS;XclzR%oNNq`5 zjD^)YvBf$AJ$#YjLSc;E7B-GduHfPI#%+{mJfQ$=96whw-tBPfCMStaE4FI>!@PGo zrQB6Sqf-X{g297)f~Bh7u%)^3y;*XVvdi*XgXrPiHSw%kcK6!b5z{7(A~d42 z6%TO&X`)4t636h5w+n&o&?rP7-oNWr)D#QYfLb^0R zzx;oa@72D-KjDq?WZEw?0D2oQw`Gns#Fuq(R^-TuwCQ}n?&{FS~ita zOsIVf$Ndh8Qr#O~Em)IWbtltICQXnoNVOYfal}yC2Py&p?FHH>Z%gaNxLVP6*A4j`q6IXz8%3_K{){d2a=*f$>Rb1 zHRLUj*jK1NEzwt;?CCHZgoM4?Dcve-fBX2L*$)W%hqF68kz@^^vz)iuKS4EF3$iUqEcf%Ip1WuVADxV#DVmz-iJP z`#1}F)?#&}L)OkhucAN&?eL0xixHtMMQbS8Y)##?=L#33zO>~bY0IpVagK&bg^oD2 z$x=Pa9tBFpxE-KG*GAhr=kjpNsbZD{0qS@kOdX~Fp+J|?q*v^bZ($oBSlAd9+uyj~|ulh(XlweEJtC;x!7b?7yKa*YY9~0tIp#{#OuQ zklZhr%RfrH#>big%t4(vD$EOfhY6!k+Gv+V~q}r@vJjkM}QPd2&dqy%kfz}Jj495 zaVeI_=zeV5k&M+Ix5C_u0`OFeV0$hoC$?NRQ^@J?cc*n}P@^cEL%;0?2urq2z1{(JUkyWprGzKu&7feGooeCUa*dMNDG{9(*;AnE0Z>;$Z!*ij7iUrO zZho@j<-Q4*toW ztfQkUMSlUfU$lk?0c=Pt_P*q856%t7&ebUM;FedrdZZ^@63C>heobbY>_J(q`{D_z zcEtP5eA8FaE~GO17e+n(%90Tq31OxI=`^>Ys_NmNS&Ddm&#I@+J+R>jEyGoTm~%4J zqDdr+~`N{$dqoWepWyRD{ z1@(+>!hL5J;&d_iX50=4cV}pWSatc}=Q_xt;D%ih2!H=iz*o5N2WxEVXX#Lu+=FSA zafYE>UM{WIJ3!p7u|TrShjTBGs$#>fF%)i!GIZ?p&u5_ikN`DaDz>PC_sa!UbPwB* z?3F`k-J6sscQ>f5-r++8;QgQB$IJR;2Zb~1Q0ty;`lCsmB8pIPnqFY=+kJqe&hsemaoGqJ~eDskA_%CSo zrmpV(kV3C4HupPfDb=1uJn1g!lVt?NQ^;;E6~*NjWu>#eHRe0Tl$+^|CNA2gwWBl3 zFKZ;cV?{h}IH@Br#CpY9u25c(VT@@hag2(n=7Q%gV*k01mX8bmAECqRW;WNSSTO&PIj`)S3uH&^M4w9DqowM&I1m#>BDMSFxfJ}tQQf9Oq zJ7UVgaeO+DM{D;~F!3ul$O+I=idMW#3Zo3;EHt$hN#p+Wi#XP#ljI5TClc7C$h|7#TChpCrmv_J9ejv<3M)u!2|oameL# z4p|wBsJH-4+CX|LKL|BU0EV8Db3z)Y=~g8`cP>O90wqnvB}$MpP+rj^DYgK%9QO+> znNfdA+)AiYVj-f44^`NqNf;U+6dq@9!q&tapdzQl7Zpx0Ksz5yJ4FJe5+hx}R)vFB zkcKUaA}g9Ct|qHqO#-@C9xRJYW}#OY3@2jU4`6OW7mmnpMpS~Uj_0+cibp@UnwN}> z(h9_~$}0*$ow6{D2x6Tu4q;3U@wV8DMuK-m6d4Z0>#2AyBRU4lU=jx0HjOhfGqWPN z3QJ{MI=Qy2^~hteNh>UDG<_ZY-MQUP!mVY;n2u0M%@y$R?Dcp$@11urb?uUiojXxa zZ9TiBwVh=`JHN79^`M1&VVd#ay!eKW2uA+-0NcJ~?;+fNo_<;$&2?)%Bevb?;{Uzj z*2&O%Mzq}7`?J2+A1VNF&Af`0?Ck974tHxGd7XZ~x;{RCcpBZB-r{C{_g(+`J_#kL z=_!f~fWOKpoTE>Z1jKq1)F6?rH1~fff;V|r3*Hn0RsV@;zO2*v*!^&1E1*r=rJ6G{ z5N(vL^0d>aIi9o1fwmvO)zTWr%T2TxpwOG-V*Q(791Iw6h~)#c-1IDB&!EGVj^fO$ zV9ub^fw5*o*cvFAB3D%(tuB$zFFENxZXj!Q9Sb+g4%l~3GaKG*M(eGE{6+sX8~v!R zzSH&^5Hj;bZo)d^4j+z5#rc;6acQJtKF`T-qL?Fk5cU|9oI1Cx<@%D^()AXwwSMRN zz~=fu1{!Xno3sYN*fG5Ra5!9#zN|MOkSIoZNB~5R+^c`MpWTIf262 zHtl6Z@Hu^Diex(%or?Y>#%h(>xoA13iV&N!^My)e;7rJ}Txd$JMfAY`y1~ql|I50? zIY*R5rbbPTVji_~)W(83#+tp?FFNN;L4#fbcG4xd?qfF;2Fu)>>lgOl*4N-y(hf@c zrsoBAW4+ZVk1aD?04x`x-L%=1^~_V`sfIhv^vKG@+WWTBJHqnjBje+*5B4`&K@8=i<^7&qicPjoVyVOuyeJpwS*csIpwn zy&c=b(Dhet^tWCI%b68&X2B?#6ZwzjT7F~usG4>RoB=SVt{uC3US0e1$8oo9^NjYG z=(DcA_ZKmaiwM1M{3v6x2+Yp6@3>xsR};9}8#`W07dgHX(5x)L&2#SC3kUj)>pd_1 z3^X{k=(;%fs}1cZzxGy7J?l|{oh+LzYg$a3zo($_s8X$3~&;p%t5? znY6R#!9;s?Xvq%n9g_L-Pt)i3QqE@uFm`mf;Il(p% z!cW#v5_>^{q+)Nm-yT38XrMaz>ULHeJpTqdjf;{Je}U6MuQ$CL4w7_tOE?a-%KE1w z`B)dJ%8Lyqstnq{Bzy0Jqt-O`*A?*=k)a5BLUC)*^=Emh>u4{b^(`3cl^6^sn+aBM zxqyZlSsi%<16+XvVx+`y5svP1MsE99FJ0EBz-!M{xfL3ep4c`d>O8O1(QOq~$5^lv zyLOU-8$yd#sjWFmi%klTlKIvWdlpa!aFTnkl#E^Q@#AeR9&Q4=Qj=C)MdEKzix3G= zlLAVs6Hh@p`b{@1KPAvUHd|v{4GlvtGeETYn+Fg)%rSj*ZAt(Y1I+8HX<3z2TyBr^ z2BFyEXCIrirlhpbPB5mfpJoU4@32d-vlTfdwrpy?S_yby@ajI2E&9KZS_cTK2%yvC z54cb}xXSB9Nvzs$O@R@cU9@(VAjH-|{g|9-NobFBnLLS=b(+Nnc+H8@8{&G#jsTT< zZ32YQ1}kT)R&7f@i9iu0GOw+?l0~4~z95 z7d|Q;F{$_&F>+A}%ov1{6ZxZ1JyLgqWE8t!E&;IlY47~IDDLxdNpZNdmMSv7uw_}+cBjYC;;rv5V-!5Kwl~>wPPbr&U;T z=j^OAq3O{E|L863A?euzQ?yf6(>P1x5zp3w%o%W!s~G{Tp!ZIMD6;`ok)KXXgP#k= z77cuc!$P}q0tQd_+u3o%!>?s2e2e5%EifVASdmRyYY0_7ava?4u|eKUk!%7 z@^SS?p^w45<_OPBWq?HX4Uu<0-x}8sJ?BXp^t68vDFJlbt;M-^R-UOIbAem5Zrs(W z*IJDJLeta)B>F(voo1=*vwY)(dDAqRNu=J1{%nB<%q?7z(=yUegL7V5Ci;VhfqomD z>-TUqy^(|NjkJqdt~v>Aor7%GSDo^n;@)u7@2-g2ON!2AAb{ca5jpo&{nTtadJK2v zX+B6))1HF1kjs~+Gi@j+u@!PcZZOnHBR?Im;mf_1%iH=l z{p53~&g{3?qH&unqh#Alm_*VJAwgnQ2fY=gN_)w4pYFBx)aI|8{qbEaWv`$zaPNQXU4(3~wMooir+pzmoh{ZJy$*E1T zkz=5U);cIWv<7{RCb}jU`f2%GQDS|^JN7jx_e#03-sBDuPWjQoK54c4&(eNCAs>Ch zOIzL$=gU(5^T|L-^Nb$Ax77(+%H0XRyYd}SLTK4Pgj3?e$_g1X(rSBQLFOs(Lo9Bt zBk;=iBake^kQzVpU&u(d|2XtOIM`GF;eei<`c6Z|C#VI+1VQJ=cVeHFsKWz)J^ z2M=t!Sg#<(O4?rj^Raa&DdU_}g!hje8T0bGb%)=?(uT(w_;;2bW0t-K1Q54wc_O$D!Ge?W<|ph5gm|dbK}s1M_BSGHMA!O$O+^C?0#9 zQdE0{QBst!x*QEh#qsjL8l{J>eUnDzQ8bq$mll~0pXY2?9Kwmxos}0M^GY^SVkE5mEz@|=-n>D97CGKzRlQys|R$(3y`ZU!^EFPcu2nGN;&|tM)SK$GU zr2!gS%{+H;tc0z=?p}X2#Gn7gDa{voK1!|#9)|8|EV4N*1xyvo zodeXta2g=1K+=jyM@GYHoU5)`J(M zKs>j{7krX<5=_3hb1;{$-zDI|(Y24L>#!Z(LCwb)PHlS9_wHn5ou2$2ri3P%=Zv$C zqz(p(Y8Jfk7aGwwk%Xp4`2+wUS}83aJ!Sk>(q^Ie_dua|uHjW^* zL{18C=_eqh-qg!)zVBTr|Fs+WqM8zB8*wd%|tsgH-v$}lWI^;xN20K};35YB1j*H~$apV4$`)s9_4lWXs-bkbVHS~Rl9 z0Q&@XOKtL+Th%55*UFktrlFC<{5)wI3fIO)a00-c^{^Zdx4**8JTpRFvp5t`1n^!3eT8Z`<+gt2fS%AF7)^7jr^_?!j)Jt=hnPeL~G2 zM{QxE_u5g7`FvAyuJV#hDQI)x3cjR$f8ByUYr061Tkwm&$!F-WZ@BF4MaRDbU0S4> zp&ZaR`jTGnzkP`b?`-mAC~NIghNHKdNqeGkmWwM;Q#_A@+BfSI?evtsMg1wTK-}KV zW}?yJ4<`~DU!O=0my7LK)pv1_W9FMh0|9r{AIqJDNLW;mQ<$jIp=c1g zCxxq^PPD??iz)x}`E~4hZ^zw*IfHRyz6i*yTzib&lk3;?VEW`tpWll{0OVGD3KDv5 z4g|vUoMud+bJUVYp3Tv#a}$o{MSUprOMX7^2#cURV&49+un)eZKG=s%a7Y}~o|&-Y z_ILrh-5=aJc`dl?Y*aRy+X|<%VSp=_O7?Ah6pn~3w*H>O(Ih%*%B?DgJ>7xZh5)>a zY5L?6=UnhwQM8Fm^67T2Hj9=Ae~CrwV$^5iDMc(AOz#3if1pQWU!@&=p|r zBSi3(Jn4yETiXuKTU{A+zwoBf=X}8y;^;5@&(O%ulInl_FO`GvKR}XLA=m&x#NeCn z2rlxbi__Bz1q`CV8oSacg$6`wF}|f<`@hR&)}lNRU@!B^dGk%Zzn;1=D~c*B zouVkQ1E*lwriLcB%|Lkn)EkKd9JnAfcr%orY*LS_T1zgM`vQ1LerZg;nk z?09EOBq)r^iWo6O$T_BhU%GgM*E{1A({N{^%`6#D|E7d$kA zUdYSQBk;mU!3qU8AjOixp3WEd=JGQoi`LZM?33x95z2+sGMc_U9Cip0RASN%uA&A{-X#!@ z3qo0V9sa%l*X-^GOz3+7C`BL;^V{;=$z2`K&h@enW0rj8l2(%2%F8*f)*ipU#&w+m z9Xcbi>V`~SVF@1(MRl1(Zb-sU3Q>itIt+6Afz6t8 zxy{yu~|;nRU$2Z1tyc><{s(a+tgsFEx<^o1IWcG}(EZj`OKWniI{ z7}XOr9xg|JjTy`UGIeVy{+kpOn>N4Ly>QV=8#@iHuDw-kaQ`thhFJVm?V$BU+-k5X#2Z4z=O;5NXzdqJy@ zS043?C1h5C?UKO(bHb&P>wKFI*yx`C<$KR`YKKCc=$GsPHU|v{!5{0|nGJ|=NK<+0pzqa4V!uXEEuW zi{*|0-Z#spBtRZ*8Y9OO9+6H!KZ=Y$)xffa!D~ENa~EEQQ1C0*kX|Z8+nd1*h)^1c z;%1t>Q91e#Il~m<5T7(y^5AjVb9m5Kjiss&e#xIG!yon_FCo9~Tk5a13#a?R z1<#hm_~m0Ydih2c0Vk~qZCea>=zvtd_|&~i?Y8do3;rbiULiMfAS>Tfl(DVqJj7ps z7EJzwr{bycw8|}di24(ILapItteFUsnv$^yHTfRH|5p6a`6KC|f^?Pk59F|Bq><@6$ z5>@#&i)UlAPZ<$t(c$lwm6EBaU*w3Is@NvizJ@NycJ&&bxYj5#Da=qhqDDBek2vM`q0}Cb~5fw&E~_t+!+ro>!Wa>BSb%r4~>%5(#IzNY)-# zo?QGd1h7g|!2e3G?Em%0iQ*R*`~QXIFta7@)%|mcYfr}Lv?6WIsyn3HtX4r1fI~ri z`XvBC8?0)PA~h)-3K4_ z^e!aC1MtJe<+P~k--5IfB;|N--Cp5%6|ebsi*&sS%M*0>M){W2zA`hk%n2TsKC*Zh zcHaQe#q)JxEdglDz4Ip1saEcK6@cYi1VeIhjf6-&MHeOyPVN)~V*U2!p{fTAzWT>E zXVRMCmnGUiDEgJDL*1Q^KG%}~*tepv*+KH44EsD9c5NM5!SIQ!zX`aV1L8$%LpTZ{ zvb-`z^fkglT2n9FIwJc#*b4Ei5?Bc;)rNrRJ#2G{KYTCT5_D&nJv+c?DdlBMdCTR$ zc*}TkvCzvWV&IIIwS01zlK8!I`r!kqR~Y4%oxed+D7WIPi$_=i^U5esc!n&~9D(u0 zD^O$2sH^g85=rY0*}?@&GFbcxOH$C!lo{Lvzpc+bd2P%89<(xkI{QaJ`n2&`)h_|$ z2xW$a3#Up&ZzJDO3w|l40+rw~g0J`iqFi~aEgugoWk5v;o=m`D4Our+$0SmsPL#{W z;mgw!@RWq=S2_;rNpV!_AO^o=PZ;X3cBe;QOCA1bZvBnK6@b*5Z#N$)Tp;h#?s#nP z=oH2BrL5S66m(*ABYCC4t%~4bCqMxJiFnFdTwgQy*I_sF_ur#EQBKZFlOG7FC3GlF=F(K0&<`QNT<|AelCKxmL z|4%_O|3B3L_J0fT|1BXJ{;TlEdbxNOyKCildcXc=zP;57Y=54dKQ3Qg5Y*_;qA2NQ zeS5!8o?V=<3cTifK8+yonOnewo8n6#XFy*D@Uo_^FkVf1%=P{*71-kMl-ms#_>3~n zIEwYHdI?hyTH`EP78hp|j%IF`G(A*28w3z9MHAy{l@*%)HV}qg*0O7u3%Ei7#xiDK zZE>B3D>WSY@(0yGnoAO(1xe0kR$#9)4u+1>h3MB`V!~TfD2FAoD5R^~3ph|V3`*Ay zT%VSywpz0x8k7h0g}|2KNU-vlZci>b-Oz|VX3KN!1|tSoqcccqjhB%Vs!S`4gaU$h zvsa+52GL+*hO#po2nFVX5xW$_R+zgGEz>-(mL=%NW)Z3KVw3S*6P7#_MYRuC-8gDUZp-@8GCH29@7}NS8SsNuhsorm56mIXT-S` zroD(Z3FZjwK|t0n9;8?^qw$bL=+TlSm|4LEu0)_$vD%voM|mwVZAbaW#Ua_KF59lQ zqZ8)m&jxBE#F-TsW2YMZN`Sx{S$`4kb>hmZj@}uAJ(6Jr4Ddfq9ZI5G1dVAjX1#UX zED(V$Dry-P7;|71-}`?l^P#aR$Oa@)pY9d;jkJUI`+ zfmpgEj>Z#V25@UkoW>AARjGbRBem?1K)DFKCGV_}KsAxs=7$SmAOeJObo{S_%ka!J zNuA9;tR0XUll4DPW}o5w+htR_^BsXz8JQ_dsZH9xU4hCfmGzGl>kWqzUF;537OPYcWxDK;voIXeMxM%{V1-?R>lR5Ct8mCApKv| zmkM6l17-SHo)j*9@|7WAS2o%q`YRCnq8WHSnqSDjH>4w4lwn>C9$NKxGmkN5M}1n| zlACL}+ju%lK^B5km7YqlxU{s7k+v{CBZ&j4t48&p%j9%XP5QMK`> zZ{VTSMIV-#jvRq?QGY65I&SgjBiP;869U0t7IOUY%?*k0$zFtr;aYDxLWxe;*c&hv7>`ga^FmVCB0b$+~_Jhi8 z6)Lrf>ctw}eu(?2FrExS`w!F?*EpaZ`s88e>9l1tWB_m%s0w0}mq^bzhTYV$&d`VC z-fZ(*Bvi2`tJ_#ui-3674fi}~RIy6wDR+TCEDhHlla3|7*cHq*MU@g^DGOS4mKM4d zesS&W2Wf5mPTN$-c)vI_A20#L7xHNVJI+vP@L3Q#XX7P*iL0n#EIol#5T52<%P@JT zKGhRThyWlAx4RNAZ;U^VI4}HUBUFClpL`+JCsejZP7R_(^{?$H7=JD=Ype3q0vE>? z26FQ1jKiIdHcJS>+r%yrhgB;-xG$3%z5^uguD#GaoACSl&TcCu5ycv@CWbq!s{7^N zC8sMLA-H(5!M!OA~zb&RK8^wl1)Vf>4cJR5zNRGa8xL!MbPuRD+lAnI|?ta$Y z-TDszuP41s|M`3b`KQ6;`+=f@u>B8yVOUH1pD!5IceeJ{7?QS1^6outRVtGxmFT|V z*Oo%vKj|V_?03S(@lI^Rk*HEREM9>KfezBH!%OW^jqi8b`MX6H>WtMyNIWY z`hE-%>&~6D3wEtZe$C-}K`vAurpw%KuP60=*Y`EO-WJM`5zgbty9lw`eQBMG-S-35 zMGs$!M0d;nJ`q7Kr#_%Sy?^=yfIN&g@wbytb;Q}_W`I9aAIM$+@Uv0bAsz`>-rJ)SVC5ACccYth%dNRz;B#5Ge=&3~MMy z*p$_YdOF}4^e%#+ENDAw*JqQ^1N`uWNbNyaYJV?m%03~~S1)reWGHatdXEi}mO?L( zoQ^O;vOnYAt#!fMf}I=W2b~%f=nm++Ic$!}-5y1tm^{+dGWm^O;0Qx#Oh2^~&Z|8l zRw@fj`AZ@WpwrDZB<@EHXyCyj>dX!Ll7*84CZDs4dgAuzNEqH{k|&rT8KQ1o78Cw= z$9&d*LIc|7?%(B#^p4oYwlEhfP*89}FfKpn59LF>ykUO2S$0^LGtEno!X24p-bksL z15r5^vg&ves66+7UW2J2!P}EC0_J#2IVu=ia;re=(=rzO-zzz70Hf(PYO$RvRV&y^ z@zlfelAyL7C_{sL&~xSi*oB)9F3&uGLMs3pclG&k8=jgo&kzHN3 z)7%qeN~;`&AdOq@rmVNjwd8)xSDV--%${sO{cp;j@dPErpso#K-Qe4&kyE<*)mAKs zcbP#lNgF0)zVliJfZb%bc0rOrYA*8AAT7~|c0g;q_#L&p$;zVEE}}u};V=aEPj(-? zAlqVhLq?=Xg$Mr0@Tf=0LUC+84rJlTbqQI+)aYvXd|7=X|6Oiz2sFaP=xt#A!>!Y? z`9a|LYchh@ig$I-I&nOZylx9_8(>~_+#3JmcyqFTt<3l@;Dx57VM9Xq#W?bA)K^U} zi}t!yYwKf`KHlInAifu971cApkpL>s?%RzzT18@EOMX-yR*#d{_Q9;Fmm^)i@a0d3 z&RCbbs&N;je+Wi49f?lSU2#8Cq&ho`0tn`x@wXztiPE_B?Jn`Osv5}cKE&l^hz!|Z z0JQ)Q!NQae;A$2fcWf$Zc04G9Jy}Gtf8KFT)mJBOZtvWfKZ?NMD3pdw*}^Tb5l@5B z^QHObM*0a2r8Dd_AqESV+-Q}x?`b?bR+usGtsQZR^(W&LWNVzZcaq`cuEHsN?=aw7 zvg(jcM`3_7UEZgOAS%jE0DHZfF09klHSSsY>*{3`!1-fSJw7v@7Opt%4ja(pcj|tz zhZ}&)9cobieYqoN12{STw~dDBXAh8hE8+-_&GBoTmy^QlOJ*%xp2NOMOlv?xM z9R(5)Xs}e-=Be6|91`5B9-sQR7ud0-Uk$+8Na6ta!8159=u$;UpK$V`#rN~;AgROO zZl~}E#^Fo)t0EB}+sVL)SZLR~)Sg;+gu#-zH43{H50m{@(P0-x+=rmKRS0(EPK%y@ zGPM7N)A@5^!E4n5QuR&QG9pxl}K zAOdkB7j9x_a9{t@kBew_oau$u*6FkLFD zgQge7=%7Dt71WuY3c}~0Io`sSc2P>xtrCv$OmsQbQ}OdPh>iqw5b#j0 zp@FTv@wMo=0_c>zlKtj+>m~k*~MGjluAsT_~-UsJ^ijtamPQk?JQkO>Y%3r2q2%v$F5CJ73>= zP>Q**u7ui&Y-gHz>V{p&$gcgMctlnKBD3Eq!}Mz5_#cG%Mn23G%^+nXqlK<4?4=c@ zY9B#C>`NlopwEwknf+F;%z>!K8$knd|9BenYH=vBAWHkpzkzGspG~s7&ApzEIo#m6 z{}92u=<%{rwGxHspK}>TM3(w58YkXiyb^G@zVO)%8x&b7bVMdSW9~3v1pI@f8TO;w zGxo=a5kBWutECmCKSX?ch|r@=yq(G(kOc#SO&ZZ9v4Bp)xh(>HWm24)StzMZY_*V6 zsBGbpIAq|Ku{-ItOc!$U$KH#?TBLw>qVM$_QMP;;c<&SW_ZN1`6GI!<$owAwML@d0 z*Ung*JpaCR;5sOGBeARi=;DV8Cc*m$8K-{@X2TQUK2wfT#^>@W@rITipWeI#%0>Db z>4aC@O=_7Z8t5>2Qy(8z#{hO6SQCIL+M(0P3O0={=rAf9(A<`AW=5)YM%s6GSDSx- ztGPbDP;dgOG$otgZ<6yoeZ@&WmfU$vA?o#LtDSv}0%E`~rwsn(Kg2Xikw=uO%mZa=D=X^2I}b zyT*!>;@FS*y@`IspoB`_0NeS#=@Rn7_{E3 zA58sn_a`f2o@EYv-fxe`h{)0U;((oQ=2 z7M(I|Y7q3Os9XLC6tRvSUdn$Y6pPGb1;6amzNw4E9)Hz2sMset@^2f+W`+0`bZiXY zVTZfmUcrF1T23K9$>4d5C@_zcE0#2pMF`0C!iZajN@~ZY96E#31BMSVO6#6Go2NY_ zCM`;kL6L^@!lYcny;>+MIvxT=@75<8AEkJL=H!fXqF6#w_5k0}FpYn@sl2tn01%<} zX=9PRpj1+!eLIcK-0&xlX?8#{5Z2EZIa}au8jRnJP7rzKKutbj7V&lE1kYQ{eLp5| z?RI=0?OEYo=k+sxQ zd|XI%ga!yf89Sa1sl+^y*}-oFC8cfFKdoQ^*MZ1s+Q5l1^OS#GiG`*8kRKZR5{D() z*yB*-+_&*2oe>6weyoi^=2ru)RQg@@L*x$qy{Km$^9k_0ns`*tWP>1gcz>}HjNY`1 z;HVAP5#^%hqt-u}mQiUt1c`P?K+c-^xDhg{s-DNuNjyyWN5Kl+e)1c zP+VTImfjUp4}5=`xllyu7P8Oiwal8Il9nDMz;3P|uJ%iFZz2?=`UyJ8Lp#>}rMO(p za4%{{-OKAiSFnh=^(a#)31(~NGxTFNvK!K);ZdZjVWTN`%5n%GQ$f(gyjjBEQmp-o zqoxN34SCRtllxmKPgt%z49+OX({(48sRJ&3$iz8A=i7fzxnjrU%bA7bBG%wtKFy#n z5h#^2_mSgK{0+fz`VXzNa3Kmo>WEfh9-XONIxf0UBW2f%(RCoanSZ85&-w>Kc!W*K zL%qdgtiyZ8;8n0Yh0;TCwj2VU&R74~jNM4rdq)=YQb%R372AiEwLsf=ddA?@nM8Gp8IKP*N#>kc&94 zvuC)0Fn*=;)6?Beeg1D5X|Qg`?MKYHNg}S_E%<-5UwySqH*&D&M(tkc&+FhWG)R=i zJG{+CsRYM(JuHd1X2=e@x7%)>42Qy|3ye90EX~G5FBj+zvDEt$peisea~a^?jo$;D zx%uX0#T>Xv!MH`9%Yj!&{i^dI)S49tl1CjR4yodfm+asmIiZXw8LUP7eqvAE1Dz;C z3;ur{tLH8*)NV8BBw}^aKY5Rl$IQ1cmJWav!X#y-Sl!5~9zbw%lpyrh!lEm#g}ZaM z;2;a?2j?*JTgyhz@0^BGK|f@5Le~-`^RUa{3|I!SesxG8Hcw+g^M|26thW&ToZNs7 zMpuQ+OCdus;-*y{F6a>GHkRDdFwC0qg9(40*?Ec0R5@0BD=4XEW7N=C5;Ffop zICfS%%woZ1qL^1gi3G2rZ~jU@d8MEQ9+(7aF>#{# zIz@8r&-cdL@=~)F0IINrnPhtEq9K1OA!b-sFf`8`A$k!G2c!dQ)1(s7)d)9+xz%eUPk*lok>NRV7i=3JLEzMq20U#^F&STaM!gIlb8e#6;T-%4Wht=UJ-8!2}S1 zo9Wz^{|F&9Z~wsgq2S?{n27iHof_8-BWE=@3soJa5*5F^yb)nm!1e}QY_fkP5%Bhi zc+C0~VBvwC$bcI4%u~{MW)36+xy zoAI%gUn$HiVJ^JS%%oLgV5$X+JoGw4f^i>5?$g-Q3jvZsGwwW?Cdhx{gj5UBVsq3W zB1o*Mv5zu(*357vkm%k>P>#QqqqaorugiS-%#Q?+*EU~AVeF)y8!bC`CwBt63R@;9 z3VdQx4m3U`T-S2#+E`Lb)iRca8(q{t%ta@7v%9BI+itya~oI}S4Jbjpg4qU$U z&W}S3m%@0pMJQ~*Oa^}qU@lUo`1@5CzIR@ShES)-owzxbuQOHh&B(0qFs5=n6ajf+ zlnY5g@W@b1Q)9u8FcDn)9SicauNgDmGyTs#cN1^nAUIn!W(x;wlgD6MHF!%Q_h@d) zqO_~IZCg+EC?fKwfk`-3nX!EPeVr>gvq-MfR2J<(iA9gRA}@bNlCc-!O>0mPoEhV8 zCwNJyzo5WhJb;9=%1p&$6koMU=e7iI+}t(UwbQB+>ZU|W`rWpkZk! zX)G$8FtW>rVndJht=##hktEaw{t07Zw1~69+onuVMW8Oq%~rK(2I#>yId7>|LusyH zz8$1qcsnCbAJj0oi=ED{&c7csqXdCZ(qQ_^VV?MgJa3zs&aO@qvZ_XzqVzDjBP~Nnv<3z)d{eSkJd>0!2wgs7 zH%I#bNDv|{E5FFE*;1JZv1xx8R;D0grWQfbSUgccsM@a`s>w*N?w@?-A}%m z|E>mNGpT=d!?qW`EJV^&oCjZ4RqmZtJIBm zrGssN^ZRR6c95i&2#*JwKZ(%r=8XE+a$1@HPsx`LH!V4WK~-ysUgfKq6l>@o#SV&E z)ZBDZi_b^uvvh|m!-mTF*# zz8A(VY0fWrJ`5Q7z$Cyzgs~5px5378?KsWKxNb zf@oP8rDsLLgqT_~ADhWfZARyAym$o`=@}?>uT3^WAs)*|DpcDQg0W9x%p7Fxn^Qqa8jr1g&%&K59;INbz(x)x zYK9N1RZuN*;Q`ibb&!OfT-HD{r#F8S>hL?ONasR!^tbwOa1l_ddQ1sz;n01sD>;g2 z5L_&^*`9wcjw%^(oGlLkA-1t9Yx@hy9)5Nw4zA??8XM= z!q5--RfJ;zrsvKs0|E0>YjW5MXd#N2_jU_CQI%ik4l{Fz{z1GZ8ZwyP-%x)Exi`I5 z)eRt94H7yP<&RMx)jrGqdWHCw_Ra~_YlOB9as+$~KxU1!@bY%o8=OOYGIZ=Ynr^hy zuk~_2(~U`Oy<7MzV9pf5_w~gJ`se#7g#yytFS=zqYw9E$NkUs7r8^h&J&$`!)zV!k z9#EfLCtKq7&kk|2id`nnmlS^syR*P)0+z>Z6wTB-N#ZU8Qf!*$4MZORF}W9*VnreA z4y|P|i%V>-?4*<3c49v=5#KpVH!fuuTsoc7T)5rI7AB6mnQ%BI&LbX?Pe~s6z@K$a zcJpY)-w>MQO9(%sggz58>YL#Y#d5fta2FnnSz!JZ_s7?99W+N*>s8Z0m zz4RNfHVueboerIZmk)oE4ckjLw6ikv5smR%7ux}Y7o9)(GmnPU-vO1XnPbYyy@z5s zw&f%~Zfi_ROlnzs!8EP(nb|Y=3!OlQpffvEBD1F_{~0f9h!l1=w7Y59R6TB^e-;Lu z?;)ZbW^fX#O7{C9>+pACJUve7)I~kb8y8;r^0>Y_YGZ^g3vN4J6&bk-5rhE(R`&so)z!uhkNuMyA#;lvB;+{NiD< z=p-%wY~?!#32Q&z<#4)v_c3k%C84Z|^aq#j^)Q7uS1w%&GN8 z9n2T1_ahZ8)oUklD!nCV!cVyiVAP#!RRM}_r>M~rr4}vtubFxi0_cdz`9@PONZo?C` zSK#!B+4)LP?nBY|k!>B=WRUcOHYc3lULj&VKDdL6fGQHz;9;RhxKO9XIHL#(4HEyVhgF_GQ<7@ zPUSd8ZY5l4>_mQ`N0=Gx#$iWFtk08Vy2ptq{^Akv}eN5A?6Dl{6T zn^uC*kjBl0e|@mRCozI_qDl<#7yD2u&YgdI88ykNs!F=f`^Lebke|f>H)v2sB<=RR zvLp~2_7X4_a z(o*c1xAC$tWmkfvq8&R1-x=1h4acvm=lmKI4NpjN<8`fJX&M2&VXgidrRD<@6aRk& zHWKC9I8M{E1_;?+FAcd=ylv0F=I-+c5*-WJ?m?xLz;?H^W_O=QLIki88Bum<= z8~F8no(+gk^m=o|j+Q`ac=fy)exSRBo&A`d%rAIbV(agPZy=H%b6zRl3 z`(irxZlH>8)V#qfsdMvp8#K0~igb58m#b9)gsX?RJoX#hg z->_NDOVBJM4?>pcnYzlQk2wXjf>Fh{hwx23JY~870wofYjCv&vJ0R|b=@2DYulR7z z7XWLY?{x(TIhd$a1i|0KTiH1uLt5r@Y0c0q+%93E9@jzXjLxBVw`+gU06O@Jtm@e6z=Td@t zg><-D${LI0RY{A1wXb~+5u9{(iG;Ot(70kD|I16636tU-~L!wK(YeCP#2;c{KmA; zy-KurE=zH6v-<^t?+>5IXL`)Z)So)CxJ$?<9JOIuhLb<8qGr{QXX!MeF1V&lvDY9= zV2pY1-#`)+iNpi!bqkohp$W`I2w*}KMO9yDy>n!$*9w3=Nh_OT2frX8|){R>rzCvAY-6n5EZx*?%5t@I%>u{)+q7!mb zUwBP;!}VI=&fJ|v8nHCI_2+x&MfM%!NAr$UJ}W{JsQnQYfG!<ep%kzc#$D2{kGAkT`fZ*kJE{bZr04|R!cqP+5TH zcQAjp)Q*#b!r)(=oQU{^u*AJGBMZe0DZ|&O?8-s&hob!zm;)nt^S#Tww*C`>_cG(! zei+(n2xp@fmKn^Id}&dMImi@!m+f55ks^P&xUZn|if0M$$C5n>VkJxr9aS%U)6@8X z2M8sYJFeSY-xnvBq6}4jse0@;vxy}Qg=v2@5fonq20MDs%Xr7!lZ~iyqC;t~$BMBq z*Us$hO7Dn%O#gV#3AmNNweZG(^9Ih|$TfT=hYF=^DZTn@-<;Xxf@5*Pw~2m^idgGb zcE2PjG8#1FHtZ}Pial5uVD>5*oaQ)neMfu{3*%KLAD-$MHP;nn7$oLQGBC}*0eNiN* zGn?BZ>QlUFGe%%fPXqdG&l1264wZj9gLa$a2HD3^`2B0!9(F4FaW(&K6cZJb_6>T& zo2H`Ci8tI`Z)#`CmoF5KBdg@GqotFMmWJuFwKKYUAV?itJrG6DlELMv%uD$|#2b?` zTNd@=i;sIF4)e%(a{n#x-mI{R`wx_ zxr{D<%!Y5Dl5b^HR%qhSdu^Xch;dt77eCti-0|3#nVn8Sw*oSRMe{g)Su+<<=wNNd z=-H~i*!{OH^S!u(grMHASZ{v|LDDSC!R?0=K*bL-YhW}POyF|2r05H3I|Fbwfei@1 zbBF<^LXvsMf$f>OLy{~tn#etSZImYw+(h+vZ)j^bR0@(*W^VK0ZC&0c$5H#*5grWq z7k*rmlq6{9H@E9H177!W-Ai19wYJt2zTrK|dAb|pm%1A}NGx1B?W=z+ETIVdtxKZG zDUHtOwghGruFdR757e(ksxP4!_C4kb=tZN=HC(lw;<>>gp#?ct=O__xN)lv?+?tWY&^o zWD~;q-s&QkrlJSpzI4b;owi zxpuA@Au$j1mLW}e@GPAuP%%**W!B%9Axyn|WHx@zU4zj^fCe>KhUH0ip~ueHM%kx= zp$f(m&8)~{=Z?@|d61}fPKu}!ZpRi{K6iO#ym!&1m*+Sbj z7}#`vh1KUCt+jvbB~MtKoB+n)Ax;5fxch;&nB^n{AXZ$;T3=g59s(s~bqd*w}5 z8TsFU{jbpBt5B;Zwnm(u%}fn)`zv9T+4JPbR0x}$H+p{TS; zfX9QXIj4`iPDj6FHt@5$@6S>AGizvVSxRL2Ehasi8>-zP<5a}GzQ1bAht_7|Vt+|+ zf)*#HfqUxNO;#mp02tjqWoXf{@FLujeAW2wWOh$BzJ#lqvbZs0d(x?Ix;q1mz z5pt_pm85@laAN)_QI1UHM7PxkIe1e;%uovcyh*gSqN{6FoI6Y?%W0R8I&9^8yJ8qx`Kmbaaq|Q|_7wJ{cNY1)r20W}<$=Ds4B%PRt2SN%(9shs zhKiP{T12%z_c&onW3p%vl=>|>CGX5SLA=Rg{NTAw>?vQz3iVvZ-bs3vF=7ejdZk4hsgky%<%6qiPLU+;3+e) z(dtz0|B*}k={!&(2SR$D=OZ!9 z7cb8cGy^B|^B--zWu1tB>UmWX>xE>l7LSQzVuK37a}yGV7j5^@vKTj8oJX=n$S6I( zoqsg9vQFhjXyDnB6!vPEkBO6uUasP+B29mGk~lwwWjBNW;;2qf&bYUqw}5MkEG+L5 zj!E#7MbdSmg}i@opSjBWr1B?24hVp1AX{V+D z2HI);PDrm6fQ`(&{rT(9MhEfBVDtG>B`*#ZBAL6i!tSb1^mB9OY`0iB-2A-L>HBRjNLvh2OWe;jx#Q{f z`L`ttS0J%xP&^x%H?2`UM>kZXuYBBHu$)l=>x5ftL6C%dG?=0xBC=qY4M}jw@xAI@8`PWDU11%O` zN;`Az^%s@;X6MXk8N=OGXc@;3u?K-G2~aczCWRj#kT`@C1zrD`+-H9;Uj+G~yyWEU zP$twRYvg4nRe2HyMc-RqPR#HQQFjF4{s=Tqb#)f^#$2^#lIt6`oqa(mDQRyMTIO01bHQ0Q(Ua-{@$_D&c9I#=;(jRi^E`hskzTXyiOi zPi^*&oUI7l9y@Y!$)xS~wrys zVY)r@0&iOSpb+uyBWd|X=|&574SPciHH#b^R6#8rAsH}m=G38&mSrze7vXXf*X8`8 z5l?Au@c^t^hZGh|Kb(Z`{N2H@we|!4Cu|8@!~v=I)m^v?K_x?OlNO8h<4}9M`?DJg zhNu{mixhw0G8~514GMA2UKDDyv`;ISyT3H>eRt9Z_=a_w)oIa;E`;G7Y|YBYIMnef zezeFm3z!ud&O(CiE{Y4cyd8_Ya()S~YO_e)Hlp;-(6W8HtRa#58e<9#nX@{vx(*V5eX;Ca~J zwOU)rCmh*t&-m2j+vL~br>NdBLCTA#*@@dI-e6RO``L$ktD%U*b;*zk=hZh=doj*M z8WF!9*fa)Hd4#5$S>ar~1z#lr*o7Zfz*?#7kcV|pR&TXt(KymVaW%GfL0fE9=&TdW zd$WIYA#9fk1p!dh-s#eB+tOezE4kehz2{=zx9QDYe88gY1*(Ca(HaH882Hq)3y4lE z3Zfpw>cflOGGYj7m}l#s=+Pkai_>_*3BPC&kvo}y4=;(BptZ-c&&pv-%=xq5oQEdq z5EuHDKf2NE=HC?0DWRS%NL|ft;~rzFKNWwjWXL)TDeq`$2_0^S8B%atZG)`<*_3IH z93HkdjD8fZ7<8Xepb;`3-86WE%U985I|fa+>ZBz3fSsBU@r)lgzb;?}tH6Ql(w34o z5sdxrv`=r(ao=HJH1mLLr2O0)it`)S-E|YP!3*A1>=Mo}He`K&Ks<8FjD7cianpaX z-`F*58(Khj`CODn2s_g??0u{0n1|oZvRL&5t7_qBLrhlGPX$5jl1>~<b+0DyCw z%z<${xpgDUdj{d<%+n#)Cp(NiOACLT=YR&HL%7vb`n_%@+xX{jyuPqdR&7;Ti?J7s zerH4QcZpW2Y$Y(iMA?60IGIgcgF5rgM1>NgUWi4zc1ALF87cMh$Vvc?h%sW z9VS_fKAv}Y2E9i!J23s0XKZz|ySr@I!nOV(SXvf@Kk!s&f>2IB)!Tn339FT#&$i_r zf|7whu?2kQE?oA}szt4NkWm0zKPRtiE6{Q{VFv`(A#m9Rkfo-Vky`em&U~~K*CoZI zs#JEWn9hC@aB?v1p=%_qIAa-D;3vkOK%{{3y`p+C z_bFO#4&t}}Vf~4*j;((g1N**+#|`?*;OR|z1G!mMQz6>*<@1A;{+KtPw6Q?u!dNzd zEfb{MQe)t%Ji<*#F+=tJk;ffEA;CQf-HzixSn|tW+Ym`1|DI9zO%;BJe}?V;;_6uF zmz}`xOgq(2P!O?d3lGL92LBCg{w65cqqQ&A-Q##=WyTj4D&&9fk`nHhR}$F71R`o-(~eO z{!G~s>?7DdauqML(HHWI!Y-DsQeFSTswH|xcgCrPJ#{VXX4sdqwh{IIiRT7I$Kj(a z^MP;by{L1_7^z>%;lT!^tUkU*5z)&HDrUUZuE{Aa(Iw(cD?-DQiIeJ(*Kg}K{L%r% z2JMUa3%P&rWg4y}_y-LaEw%AGmnst=MG6KZA6qDDNQ~OH&2oS#14OvA|1^VLvw+;B{rIvPPxd${CEH|Uhr#>wq0|x zFw}49806te|HqqZJQO=EtU8c&4&AO{T{3;B&#(d;=b8k=+05)TWbRC=ayY&sCVD2v z?f5XaOsXddgTv)1d2>D&@I$aTMt`ZDYtlggTWkIYr@V~V^>)GKy!!V$_N z{Kz#ZQ7?dA`s#g1n>(7w8GA_xIJKoNEm`Ov{Nu~(UlENh3a%pqmu%B>3@VEyhR(MG zQTkXs-`Utw%JIR6*ri8QlkDrTHDpQ#`(uBq*(ibZNz+sz+Dfwnt7mN^KY8@<^<~e$ zxzt#qeqQ$nM57;5K#1YydIrVnhwBRlK*LC?sFUb9pD{cFa+s#N$FY$p(HD5>eBe_f zVcR=Wc#W(76fT0W%&&Xho<&FttVJSr>%ACvQc$JYj&+GtDwjNYow@EW>r%6J@7#a3 zLY68;UjLCQjMQ}D0!#O^n>c1|9POpF{UdUd1pTO?C8e9?>`m(?&g>cdGNa6eO7zNHyugpGJ|)q)wi2 zD@gjz)9Q@FJ=3^mb6en6NIjA{c+r2@9}B_A!zdN()nJ*y=19OBp{%OpfP-W6%!MP- z@sY+{fQdgf$pxmlxD8?2O{iH$?zjMWC}hxZla9& z&=`qwP?0l`Y~%NXzu!6L=ltnS^CtHd`rz1AG=t$yy@xYLqtaT5BRo(30ck$>mG;8k z!YD6FidRd*|5?AE;43CaHQW$wSa&8ZmoH$7WFI% zYINJwT&{SOHAh5RBsWf98a^-toC;}$08?O@P>ANtXzY)GEd2)sT>ej?RtF*qQgJ@N zf%RE;@1WL`oBn8~aeg#eT&tFHB~Yy;T@Q1Np1s~tS*GI@xKpluqjfY`B-FY1(cr;i z#CrSxESCxkI#fO!EvN&dP924j`+o@5_uwI=yfr&H1^5^B|k zCk@u^t~P6An-?``4^mn~>E)qXabN()d=K9_qE5SUcXS@eG*kr9uo*8%5m0PuFr)@# zMy0AAxs00r88PZBZU+oi5bz6~nqCNwKn78~R^x34_XmvHbR>VK)f(Qc_XZ(N3fqUt zIs9&h^{REbX;)0siqqENr%m*@qNWmbCj+3Clr$=BM!|Uu)W^b%A_&T&76!2&=Rqua zcw?H11|d5JhUH=->U%<#;yogx)5f1d>A0{$ zObS%RHS3Iij@l}b#TOJbI908?$SvvUpG0RTzArary7=E?{_LuGANbDap+$5lnQyUZ zIU^XOF!dQy#Ew5^Bat6Bt?>7v{{+%Nb{lLEQBb{T50igWr4Q$rUmAK4)Sq`1Jcz8E z|8ne$fym#q?^oi^BN_!A#TI%6Oz6*+XOIZKECOTK(o(na;vHWy17-3!T8So@51Xb> z?QRUI6PXmd>&Y`14Le36auuEOBH-)QyC^NiB@>-GFa1g(2(cO0ap#+i*Tc4QS0i*E z4z^*zXMKMNn~^wDd(c)OU21TjK+vl$Vso8tLpbG{?pr!>u=TdSyU6%XzOOEje;LgR z>=;ptP81m-EPGlw`p|OB6grDuq9Stc+#DqT_i!k%wAAKplp>ULttYX zw>Sygc2}=p=-aPTzzTcUcYfe?^d~#HG0KV>E+2n2duceGeM z%Z5l&2&^)d(yGztPsdcsKw#9Hzw@}X;J5IJEHh7RPn{z*!@;I;;POcFq$YTQ8= zBd||!k|;l=Hc}xe_euLQAt;kMfVgnm($Qwupl+v{%Jze4eRa~rSnErAW$8I{g?I6&5qdj~vt6_dt+8{>L_PIh96siT@Ie{rm}~l_`SEc;2IYG!J72pNo!s;I?638T}bL0!0o-7dXqVZAlOqr!hg zMoWIi`%p4RAE3_8xfI_NwDQmL%9#&kow|(6qG%7*d^zzP!sW8{-0@redw$*WUDVpR z6muwVz6(x@uu%6$#Lb&PsW~W%Blx52uHImMd}Nu&y$kgNQx9B8XPkND7VF3y?-&;C z5~Blxt1AFbq9LlZd$;D`D^Y(`&AEXd>b=+6wvw;K5caDNSk8(a*a}Sbt2DVy z*V-w~G!tb@@DiGzkkeYOTpUK+v*)e|s=_vL)f^d8Q1_K_FrVENc14$QF7@t1I7EEw zvR)lao82#Q-K~JRu&Qm50TPzh{_!04?zW=`94q3KyjSdeYPJy4PhVO=nbm)0Fafx? z3V9mn;I6iFqj9Itu)u;CrmM}$1$U}U_%3+1M0r^!wH&3?U#Cv~yu(kbmG=|V0=dRO z(4Nx$^-LhDcAps4025eqQuRRtUvUld58WcQo%;;Yz9t0w&+;nt$ks=D>IV0BN#S>{ z*2Po$F~h#Ks|?h>r12(Q_5^>q-whkDf{j&|NuF((Fj$2C>{xrNO?m^zja}cv8SKRp z(jECi`Fr)k0ivUcdrtB6YMoQe83o4gEYdzvyVzNY-oV#X^sxGqOisXcJ>t$ z?wBa%afAbbh&*wNok;d=E7j8(SmVO|sX9TJN2Sf*@Ql7IPu?65RoD_S8^bGuyY>&afpe@s zP|oM)4GRG;6ML$jOqQ(n3LZxEP(Ac~D}PE}pB$kF)t8e@rxPn2|&a1Y^6J#>H zURx@DX~w_*B-qPa9lzNb6qkKfXm9(i((C8lNS5RQA`*c{4&Q%yA^*;iOvUXYr3_=u zq)0WN@7#YY=y1lwR)x#XEdY870Kw;8IeN`Z>eP9#3`l;+lW!^`tR-r-brz$(?Q3Y#a-Cw+*Al?#jip>R z@~x^s=JZKS(`|ppJIOe7i>ZR63fn`J_pSj-t8;BEXXVKkA2OIMI zL3yPmuF}bb!U*)9+;@Qn?{v7|e&O8LM#kf`ao?QpSzlKy)*#G8i*LYp)Dh}Hhp~-J zx~#h{XnG|!A?9@_?G;J=`>I86Q#?wWKmVGDAY zr_6M;Btm~jR$g%ehw#ABw<38XD2uo%jYqqekkOOhQD&t4IRcN&#yfs7pCyEkeD6_pb22VCmZ8Vpdk>}x>;q)v0>PVSq z7YqypCu$zG-zJ357;lE9>Rq4pfqof&!m}%#${c@WPj=*SFy{sJd^5!0cDYeKB8|ztvP0|V(jZpP_HQKlg zT+4ryivD-9N|aV-9;WYiAq2u>8WBLyy9YEmbmy>lp1mNnMIA>*zh};dNpM9j7w35g zv72JVT!*mL?HKqxs9L#_*ANNR&&+1tKIB1kQY>C?{ot^HNhMpg74FUv!&30*G5o!y zQP#bjDt`X*wA!k!-9^x&*Y9b4%S*`AagBeR1*;vfZoo`2lIr(3O%icb-p!-l^ez-g zqk{%XF}JGan-J&C1LhvBAn`IhibSO~2*BARGP~f7!3zGyfIv1`$4VEU%@Bfg_e=fc z5S6js6YSJW2ObPx)w!)$~Om|cimfAX|OU)i>N<(VP1bV ztfpAErG}6D#O7JFN)N+*Lb1py?`!shn%(M2j4PT-S(s8b!Anf`oIcHiD4jE=DOK9f zls2gM^dzV-xE`&0S)lIp0R^1v4MW}Q$eT!`@%4&eOl_xe$zHp8 zYKWp`G?}DQ>T6BRUupG;%N(q_W=Ve_UakQfGq89!TaD~eY>L!ltukiBAiCGk?QZJi zSo&LMQ%?nRpm8n%k+%Dk*vMvv{3!ZZ97%B8$i;-CV6n{~N_+pEkI7Wa)upa@$pNb{ z$iSBo{U*5}ZA+1Vbv)lL(B5~a@RAqFdOv_y`GHWkf@h^@3w40O%sbE#q=0`PY%DYC zSC?NoaJ4a)?Zoi>Jm_LpCbw=YIYpt!ClZAVrALFYMl$r#&}`RR8CYTM6fDQ|pP*G^ z9MW0FY*w_-$?}7$){*l@0pGVH`mplR6?1R-qL*EF-lIW3$Ktvm7C8%%Jb zb@6+b&x<8Rlx^JlB^T82Fj2H4ji}6Ppx122?!Z)A~0JDgmxHl z0UxxC(%ak&5#zILE?pu@Bbp}ZNqnf#W7bQkr8?A0$nAs>nVr(ml+1kS^zS4X8vflW z+ds}$1K23)R`D~UyaIpL)Es%>1;dg%?HEG}BhVgZ)ouoa`m+~7RTZ^~8e(@T_A(Ya zlQJxoJNn|lnXgLJi~IxwA08c;$tn4JUGGo?`$cz+=$8O6R0z)OtvXZ+!0=j;v7rof z=>=GAV+F3Dr!}3)0w#8^#w>o8CjRA4DQU=8rHcnFj4h@18IgZT;<&*BnACzjBip5B z7I+yv20R!V+iixw;9C?<*za{a!OcW)3-t|s0d5HOe;1sb;*t*?dI8yTy6jVzK?Gzq zaaG86Xn4eLe0$rBKO&z4!@nkWS`ro=R7KF@#FD);QvK4-5K|0mueS=P==q*V-u>AU zBvm(K=ezj7NLGJ5Ho^h?+_s^CE023V4RefGXgwf91(Hy=8HhW}G*&e`lJ5CR{b#U6 z&%GH-T%tna?>T$KAO--*z08lH5Q(bmwc6G-#f*m%>HV|ms@;bH}9ChPmVLLsg-Cdv%PjMu?kU$lu7Xq>CJbhP_jW7lM@)@IET|GKY~>za_9UE8;giFEst0oMXt80axJ? zFO@wJ!YO~Ldn=x3qNEURC$4wBWYTi|q!HC;WV@6U+c8rg!ogQ4rPAi#=8g|xlGuP$ zY@)qJ-~ILL~Pp6O}aTyymYVJ703=Lddrt zOPxG5%5utdrJx|Mdmu^=+A;MI>ujA{tMGKcODLmp^^~1kJZS~WnlNHO1IhD=b1+!?0#tCFQdYMf?i^>3S z5}1q}Bjq}@{$LV+d5s>ZA3(f(e)Akc8c!ye#Wt{t4Uob;l4MMmZ6w=UN6=X*G6_x5 zlPWVWDdE-L(YA~lU~$(E#v@Uz$VBLrJ9!t9V^`??#S2Tl5|U+rn}4Syo{=Oq53t!Z zTlTj^XB^k=rh|%*u;A2FZ zv3FVhGjR%zjs$(fh)$j@Jj>|Y-YZrhq|;Sc2)vd=eu4`6F)E@v&lH*>(JqM43_IaN z{N)$+|MUjWRrk`ME_k`I23F}#d}fVI;mQ*&!b*QWoeZfdsq|w7-d3|XjfMx*?#7d6 zX2U|!@%FvkUV2woY-=lJM;c_}Hr&lIF%1#1Wxb+gcJ3s_y>k3&YU_=A;K4*y|6bx2 zKWzSvI9te6 zu(DBO{Ih0U_rG_2ORu${OvZ8@Y(H+o{ZI83`tLh-OqyVXuvk9K`ucTHvo1&nt5=#NRcr2&@A%=6*n*wGMbSvD3CuP^YO>xadTx@;H8bJj{z_Uk zG9bLg%^cY5!!G_;F)E_?zc^OveP(Gtl>-A%)b46l{hL=%`^Bjzxo zi-5)vz84_4&xDb_JP8~oc)L_1XG=+4eDwOeQvugH8e+hvkzvJ~OMarWoN0ufdJ(xM zju#~48dFgDCeU=akHA-I09Ic%Z25B${g%tL=6wP=^7X2^JI1pm1Vh2&kX^n%*lo@ zrimtLMK3+@?UYf7zg2A7KZNi6#;B6Y5X;Op`TDnv%T1G*A9}IaosxA304IuRbkph7 zQ=eJj$>?s7nd-D>@{~PYh7zUs` zJ|{7HR{FP9*@j(_>KTd659pdNIY!Rl3}fO#DCu4)2ZO8Zru<7`1L(<1ACdd*if5-o zs`)Q`&g(0U2DX@x81SA$?Lej&g@7E7OgES@qK`qo;NdxPfRRPEH%LO2PMsZZ%{tZ4_U@8pu z0}K8_=1}D0C^5^amyCpTsqinHa!6!k($C*3QdX%5`qyoqu2l$d2d~?w+IN8VnQH=# z%W-%Q(WkB%5bRV>3#Zh0~?Y>JW#8u*v))j(%Sl2Bd#OL?hOqq&O_e-Mcjb6|=~ zmGo1NuRfL7vxoRFLmz9GR>2_*7HbznN%AIG%A1UtlIA3Nq-{vf@ zS{}k{(;G zxhFf8(SJ8PgRli`X8nvC13*Ah{jx5r{BUmCb^_Ko{eOb@_CcGOf6zd{eF;agPR&eU z9UMI1A8>m`5pP$h$*XZvF;_siXnI9aD`Jr_UM6(ATpr2KG-xuOvjbNQO=)PRL zHNpo54}dlx>)vIYAKDT?%QDEf`jq4mB8EeSPg`hRha-m4)#K8gS;1oS)UyH}*HD zG9bV-d2vofIkw=(Hu+*Fc>G3ixAI#5C;Ez4LcW&qV`e~Cp9j$F2;pUHbhHmlSMONc zz0>8&*QrId{Ubfz^Q-Rrq7ul-1+?SWVr#KVVw-m7s7$B$MYLlXF)~B=k)o~M-nD0gWqDq0G^E(OB*xm@Qh14hfrWF@?ti@eGY^R2&pm|Le<#9@Bj)h@ z%elRn*4@w5?ywHv%A8!HtG_&2 znqt~J-b&pIL5M8G^%-sZ#~Hdo)!UOuqr9%9zS>dnK&KVn2>Wx`c);Pm@r2xF`^<{J zXtm!0a77sXw8E_6U0ZLHxqjTaGh*r--t~t5^!-9~{nJ_Ro7CKrUFmJ8Gu`@3BKF$+H*|*S z8AzN-myJ*sAn{HSMgmS@2u=4sa8HCUrezTV$T#2>8L{jhhnzj|8xf;(ina95I<`LT zyV4wZgKGmT9>&&LJjKJ13%4Vo za!JkBu2FReB%O|ATWc|}I6*Ui-oHo5>nx*fxpnNjybZY-hf(DlD_Eh`9+-S4KPq536J~V=0F*FjR;E|~F8#h1(JZ^nW|N}q{C(m-suHO$ zea_Q9*KucY^tdl$*wS7w+riLWGQ5T;bBGiT_G8zxkwY9rQMP z*5O@eOS*-9;HQ4Q?n0IWQ zfN6H{(vS1x@j!7788f?8>^U^u^;h($!4VcVg0&;)7oRWhJ_RfA1D#U{;QQ(rMO4W^ z8REPnphM20qT7rId*HM9mk7nUMC7m!o{6bPwlVF&pEnx32>?fCjB|?6_Z?({pF@2}48Uj?-7iwdB~^dW`HaTy%Br2w+lGqhM83S0%^0$AmVH)7*C*#pOj2LFqF!}H#qe^D~fsyRv) zMhK$W5H5WyMy<(x$+`Ei{JR4)O^WrzzNgp0GzZ=70-TNtAmtR>3MGp_B!6e_{Ifm| zqqZIp%9>1-m9(~@%GET6(#%2M*p;Zmowhnd#@seremfGJM8=6$%iX6B?Q2#nIQ0kK z>Nt{;z$zqPIVMtgUe`3fVtEKXJ=@a~a2BbqpD+=+$NAvM9usyIg(5Ah1HNX9ni(KI z8cxd-M%Z%-aF1RwY)fpgY*3mI%g>)}_>?Hlh>V}oXDUz^0HSvf3kY=IubvRhIcza#6ro za&C7=2P?N->?1(D#Z9P5<;y69(J98&m=~jMScxY@A)0b69+5K2d`#8VvYTH_zGWOP z`jm?e(9wFAxZ7YHAMBhuV0f)pg+94Qnh_^GJJstDF#DZw6f%cCeE>4)x1{k7Jmcb> z^UnVWkY#+Jy)9)kMr1OY zm;e}!`Ly|rD#yG~@^X2&?71@tsJ3$%VSbO6Q8FPM)+iL10$2Bx{Sw*BC-CSXtPBO0 zj^|k2SbjQ8CklzT-&&htZ1rq9@|Lwm?AnIt0c~iio2W78Uq)8ynG-45MbSd843MIL zz)>VE%GLrWBZVPk)Hg9fl zxDHgLnT!u5FY7{&C9d!Izd3k0pZ?wxDbn4Sb5M(V3QV$-rE;#f(Np`ors9UcnWcqO zM69rO6BIExgE4`c4_o30cN|F)G&7a&*khCAkI*@%(H`uxW^=Ub)Tt6Av(> z&Y`{l0l-l%R6qm?&BHL^2?$aFQO^_J%L|864<1|Sqyk_rkF0KN>Gll@$r97p4=y=G zbv-ev&LGv!gvnTAA2Ph!)OjqCrVRJAqYE6viD54F-~8vostINGe*LqZGR=Z;u(Pq* zQE){}U=Z2iZ!7%~+KY+fS3)JnDeU0FQyxmxycD^1?Rm3CZ3Usz7X{k@yAT6#ZKz7T zwDZ5{G8Orn^MRa4`|-U;wbqizO1hgxrCIbRsMJib9_}G29iF$vuitA z?p6G#XH5(AU>_VM=jkiJBBIKxZ_KL+QX*thonE)Alh7lU5-3*_rS&^?n?7jAA9g0{z^corBHe*~ zn@Ec)!V9yGqSE*gb)J?2)M|_~7xes>M39|`Qx_B-t>gSy4B=})(-`gum1q=am##E& zppimRwsL_H$Djc7?aH3sLw?IvE%KmpI)Y&=ZXe8c#-^Yey+YqbzxX4SBOFyefJFrO zXR$FPz}I%qerB9;%M6mS3S3g6*gqhoWU%lsJ#Nm2BOWM8#*gy%cYSUo^>`-6p$<_3 zVK`)rQ(XxMcZC&T8qYt*wRz*wf!u(vcahl7oNbSN;Hl9L%HY;Q7-8YBcFyZ7FPjO#B1{+X$d{XABWI~I33zq#_ zt+T9I_qQf}_y^rMc{;KH^Eatm3E$5rq<|#UQD37-7nl70nuCM z6X=~wG(`b|j^x484aX?pw`{FYiq@et8{^vFB|tX=&g|1G(X{YZs^OBZeFBITJ=w(6$vLBu5<4UaFhh>bDez^tcO%)Ec~B$` z@JLaBU!X?pSxZIl=l+ESmX+*u5JMQBEHs4BtBC-+_47Wf9o;* z%kGqTi3EArML+hPX>T^VY24d7e=>6H`U-6TcvAs3eb0+m#zd!HQUVR}_d#S$s*x9z zDBq>TMSObLMQ6`^F2u0z;xKwyq5k#_N8@}UHYoKICc($Ev?D^8tL%T1dYg5I)_qio#9M8OS*3TUXp z7Sr-yDQuN8BOlk1nUFRV3!7LXT;bJsP@yb4;*(y!0{Pk0co{BD_od;IJj|8q z3KiTy4uG36KAIIfxTK_F!Tr}%_Qv7>pnXcbUkbPl&*K-en(Reck42)p zSzAcvWTaw`<)q!9vK)cdKq0RB5!9w|dw=8$A!e+y1(nKoVDg~=40;YsCruL0hshV4 zlu|=TBqg$sb=@dV!Ov)EaAee1*|BE0P9yZ92i>*J9dGm)lWsrJiLey_ozX6Uu^mjW z$$-?hDmhv9JO zVI)kPI`CH<4i_<=SF3=Prba2i=Qz5bzr=+(rZVI&!|K>il)+x^<9^Hf{r-IMw=_xR ztn3Dr(WG$&!1Z(_$8AUUtKTD@i~Dpy(?-yNG6Al*idg=xajy2nbSL^BJD(QtiQ;c& z>+|#0snZ7gNj}N<^qXz#%gRnsKbK0@DUf@%qSY%3Izbk4>r5;y+>#csM>Z|W1dBP` z7K>k25389{-(}YoL~b#}?(DBf3N8zPS=sOw2QP@6!S<@e3dle5ei}1>{jg|mH5h|x zA~pEPd_PuqRwGQ;lb7@{A4fbY?6aS2!W>XFRheij!|i-ijZU`plKQQ*-tmFbV5JR- zciycju}|GEMhGx&9*+W$dgn2R{+ZPYjF7B6Wq(gVOt4=B`Uv9KnuzFkVJmXTd8LShR2Y8?1elCsNjKu2s;Zmz04)woEoF+Z4T z6<}O^(TA%h$4mb8z62|7oKv-w$GFq;8z;3kH}PuI%-r&{4V(l(G7FO2)czzj3JUPs z65AX!F4D7yi<(j{raU_j>ZSEa@OxW5jY-&-Y6n3iCu}+y~ZD;s{8h zI57|@FHj7aO-xFHyuaI`iGSjSV#O<^5`xt#c(9Nqm}1$tLsoJW)a9hi5)jp2=C-b& zx|ZkWhoH?A;w^zHb|bg&*o_LLV=bBLO+Bg9{+abM@!Uq8xmtb9tZ9v!*_ z^X5-9hTqt~I}wCC?3mWqsO!p6Ta}GCfT#vSBwdjT&aD^&(j@wMp=T`eE((T;NhzR< zo}B3xlt&FClt-p2#t3?-0~%eS6ek1CY3-M+(3;YcO8?bFuGvvxy6u_UcU({NN3M^3 zAHWE{AMW$s;xTf3xigmg;k z?BBqBF`h**6u;%TEbK9orXp`-N>h@fGdj=pypO&vz!ah(iwMU_rdWhQFy?`?Pp_0} zE4lyuA6H+ZetKe6UdTA~YoVOkX;eVa3t|vUwS*2?JI#kYZ zd#$=^xHn!C{tey4-tp4dr&vZlhe&HF!~L`Lv45ZM)~6G}`kUn$mZ+eBSN-lUBW|+j zI6fuvU`8Af2PhlEUj-bsgvK-o&js&c@{l?}3Sx{BjFz#+N;(u|tg?QnMQuM8K zR63QCYxDWi%+XNcfk#YWooX$FTR!S1(R(RkEb8E=>gh0LRW6CeDJ~Q*&gqF=`efNk zL2sVYflKDBvM0%PsT%-(vcLJofNd^iaZG~a8kLCbx`bT_SRWhyrY4a5TP06gLkktK zM1-2yz%a8oL%!hxouM;QntGb5Bx!PJd$Vo9`dWn-ZrzF3&hS=vb3W7htP+^p9P?6a zgAqIclFFN}sPubG`q=OQhvN4Ee(%;GR~_;Jt%(ldmzg*hMrgh~C*Qf(bt~YDI^?!r zugj9v5YQ>hbyBR;K7NVWcOx5Drb-3q-X@Cklr!j|b<(#VmX*Viyr!`F+}T}D+1h!p zc&Xv2>qN`f4EP#E*Z9xlRA+^2c?^U-a3 z`c_-FDjoY+iP2;8Fqdm8Qh>_*U{5uR-!dSKwAckX)JYC0y&nM`dGy_@a2XCDFr<<( zRrO&pX^ClPUN6!^`MJ$Mki?B=$}COq?WGWPWKh77<@z*#e}qPjo8Khy^z~o`hK&V# znXP*}N->wQ0Mh#g(SaM@-w4>YGIq#@`Ey2zmSW=)^}%cYf0JW4PnkxWacDM zR|NM{OxR`iDcTT}0C``Hbku)aT{!}xuJ#L17yb>wJMdbl4caBh`Gu}!hMfgMKgToJ z*mbU+o?xe&5^?Wa6+Q!?o}Zx~v)Yd6pn_NhT@ild;^=X1}7} zx0@TZ0iR;We~I1CLEQfYS6$I&jgiEMtUw@!pmjFEX=2#5$Hw42*ayY(y_#A;U9ipP zg_~?E62VZ`XG@46o*^qwsHU?nw?V$pz;f_Nt%ZjVf}D_6N52L5ENZLdEj`ZEUjPdk z|M5`eV{oa!@)9(Tlqm=s+ODU74?=Ox?lnhnC|Gu|cryV`7J-u1V&ted7aG3jmD#qe z5XkT0ZaS$;BBPjakagPn6u@3vK6@!aIBE;6Gsq~%nZHFkJg;CGM#0dTTACHwiO&gi zSa=TwhM$}cG#CUV`llP*hWxAE8di?yAm_*zWiFmIQCkhed&gW|a&RYv9YEAnJp>Bd z47WO>`yA93lU95q(ki zsx9^14;ve_$L5PeXd3j6+bJPv)k(4x`I+oK8BmQjml*t*k`I_0&XSpts!F>5MUJ`K zmLU)m_tAcc2Of7FX>JnS=hJUfS0kLEVlL1xur4j91lxq59E%p7>WDu1g7G+3PlERe zlwIB9W1a^v%yUkHg&zMV7~#9(XI0EkZY^5#uTvdA84Kf~J6YZ@m0H8ob}GQy!*8m8 zT%m+yyw8~766yx!#e@p$tZ!Cr*3B4*g)K>Rz@3CdJ0|Mt;7Jq=Zr(1t|Hgr>l+KYu zN{=G=mkN;}R*1XZY4vk+&K6v}3Pq~@HB@PV;x-pETk7U&*|MabKt9-=uDext?v23XYM9d08)h9Z zN!xF;S3MCWkML1@>Eo}_7h*&{%=5HCa=(cqw%i)LuRmh74V0RYfgtJcqfwb+jY6*< zm3jqe(^w?0(k9fTWgv0eqt?bzZ>v>?gZ*PfjRO970^Dw`I~t8@PMUrm`{V#|>f^66 zlWyYRr6JM~YB8DUVnwl-hJq=E@$#2Sh{wgZw%A?@N7Q8&J!j?M^?*U*fO4u}Wk3I=d!u zS$b4ZZ>El5oMOnEoKC4_u-MLMYLC&d*KvVAEbb%6Vqq(@i+0fD?SN{WmQ<35p|u!5 zoCMoL;I#wdVRGuo6;@WNgK;3Miowcz48BWcA&j-}F99gRc<{ZJJVeKAP6L|2qdHD$ z*jDGe3w}TPUhBOz{kXa?t`I40WGO##5VpOMH<8iF6jjnRe?ojzcbbH)jZ_Z?-daI;C2u+wIIJT~2v9FWC$mUJl-zVs9{3_L|fvb{W}dJ3u4L54xv0u>PP!1};&m=|$=uiUmb zzwRZw@^r2*5TGRCkA}$()m?Oe&>_xD&J{)%q&+k>ZWa#d*Bt&j4}%sIFE@`+k0?>m)Qm!O-xLXm_+YR$Rqv> z=6zdr?oLT*q&Y=)=G7m!K{w>E8nl}0S~paW1kGc=kQ1FkiJeUln;Rj3Z%dh3<~gzY zB>>#1(_W-o8bcSOZP5hK?9C;DjZssvJz1i>vnT$Y*Pl09Xm0^~>ZAR{76RF^%)lZF zKV`qxIa*2RFRmM;;;sfPi-XEK_qT=Sfj*4l>4s~5O3{PId~uv8)cpj~v9fB=SZ(iP zVhd@MNRqtpDo|%QT-poJb2}w*U#YB)$7q>^eCdMVn7gFlOI%X^lfEWrd#nshTjAiL zyh-P2)14rIDU_wCl}gUJhvkPZ5*W6wzHDsk6}@Vxq|fDzNO|aSH#$O>#Q5|3R~Rd( znb8E@QIdDx@hwhyf8u+>3k8F8h;2$GiHucj@mNc2KvuEw^NAP0I*J&l5683NC%Ll+ z7-y`Bd1f&*qG}mgi&Jx`WhS9+6qJ*>@Je5yeRsr2euh!wfoTdFqz;5T+(z6+V6oJP zBe%+FO#^bqvD2!~IP>NRhVs6>Zs<;PjaO&c>D*X$rv0n3{0DWHdu#vhgD2qadfo8c z|G*NMIf5fbRaF?k$^kjJxXu8JRGy7g2{{tD-fKA6zfH?YvL8x?ZbfI-z@7y7m~oZ7%Qzo%?j<?A_r0y($AgIrCuRSdpo9RZ>`zB6^M z5A~Pbj_s6UwH%=&jk09P;n1RuwCPd(AU*}Wt}yFB-$_F}w=tppZp2jxym(^2sN`6l zM+wapWd(jaj1s!f%ulAlErN$t-CwCFk>7&CEa%FZ$R_38DWGTNmhldAssbLwn1+U; zBh2Xo`21pjS=N;p_7M43CM6&n)W$E?hDuJVMVc)WBke&$aXehLl8RiMK!(8%p7)Or@3R@{iI*;|@E3Q>o-v-Agz8@HS@G zGs@|7_D{(ZRwHf{G0wvZS4_uW@SphTWB3L}sqye>d9Pm}}m%C%2`jK*7mw*~3iodQPN!J2)6+_*m66{`VN3X9S^W_|Y<~e2kk(ZT`m^OLktW~da zB#9K97e6>@;+0>EZ&{ncFcv|bM7D1o1{YoneP@PgGlK7qg*o@L+%_D}GoClbXT2^0 z=sFW;%w?I2s|F|NXKYIVXre%P#HEx|q}v8TDqrQp>&d&XFmCBf7^xgEZ=QvCf5cTu zTrQ!8c9Zv9ZNs&Oi!|lDD*_Mv6KGJw?OC?hb~+WzV~O3Wv#?EVeJXHM~tEaWr%QfT9E~SWB+>Ba*-M!dM#wB`f<2@tLhpGzB9#AxtWlIye+v{&xuj4 z4^5*ro_$4iOm$R&!Pt8wE!~a_j^R{8ZfMP@f1+rI59egYz|S#qE2y8a2xA==f(gAH zIWEzhU#{Eeh8K!>_zae+c4lVOn>Wn)(}O%6r+!_EM81ebrEvjJQ+Ndvi@QdxS=tmv z^(U(mWUmdMZz5h{`j=&tXr=J0iSBoz#Kz;2BqKqLm09KB=Np)T(c7{q&f|3sU-76~ zIJ1>Cb!+Yr8-#uL-2WGzfYXD(Abn7YmXE+697 z8Ci2IwmfB#Ip7SK5KwU&ON?qwS|F_lK?l7Nc+3AqUT>2Zd&J7EpoU9oabJMpzFFh z*8brsQfIqfE(>8Tn*9VeUY!+kJ2Ds28R5@=?BZN|o*)8nS84@1T<*|?XH!`|iqbJX zH~BhfFw{V->v_3X7*^ek#l~iAKqk(UnVABm&2pfQ5v`z&q>O0zBCe2ekXi;?@J*jT zHu`qp;I9MVA@C_9IEtO0Kmw<_qb#37kwBG(u9jif_~5>F*laP(-zElA9Q>K^DSCWH zt+wD>)9M7U6N@+3fK7SRLt&RbPbY5e%o<*GwI+P;^7(j%7#aMbm)K;O!Zf!Rps7*C zno9lzj_~RZm~ZBzBH;Nk0-yREg zS-rDT2ttAeFq#DmGR&_`J0|deUz>p?^q!>!NMjh+UQzta4DnO1RV&><_suJ{gNp!|6g%xkt)&3?Rgj z|03a4GvVP@_{*fhbn=1KmoDRAtq^L2phja3`ccZpFK^g-HIxAQMYMIUTAvK1t%*gB zw-5r*wA57XIGmn-i1b7621R`g-WsaoJPw3O4gosOdo5IA>y6(jpz4s(foBEMq)iBtwO*F z-vCxPJZ)D3C0!4G)PAp%DKZKpO&q{-&Z-GOg6r*W6j?8^-n<_DJ+#vakKHlD*CQAay9Q`%HYf~4Yj3YIS$34d= zbbxIYjz{xlsNM{XXx*fj$;~?AhNm`wxRlAgW(uB#>FrY`=XG`L_UqZC~^vB|6zy3|ZRm;eNLMaC!|UNPWDBm$GKOk)D{YruTTp zPTS00X89UmS^O0mvdiklN&PB_;#_I~(o-&6#t@c$baIg(7ajit8<@=x-Px1B-%;S3 z_NQaVF3)LYp9dEXUD4PMJTd<39SjSK_0LseB7F`Z25HA_hJVzEkUy2`sUT(J{QTmY zP-tmHjWkpvxI3{DWzOL1SPxT*Y=7gUJYO$zwAxmyC%B^@cWvn8bJx(tF#ZG(YgBT- z;DPU-ZH*!vA&etGD_EeZ!KQao?%~und!RwkZd#37Wn8Iuh{;@Iu%hPUn{C;{3dwW3 z&;F&KVxO@HBnA|A9|3XbpDEVPF;@Sy+pki&a^p7GX3Trvujwtu+mLwSLjOG`GVeAb z)Wu#B8lT?|DxyUMLn_f}@b?vvl?(Urn(Q(-n1$avZJybGKes<~QV30XN9B2*$kV&_s!eWMmK6Y zOxcuab35{?N_1*`$v_gb`ELT$hu_F{O*NyPy)H|kYGNs;&ekbGO3)-gYsLdcbNFzr zU0|+r!!M3M|3k>(cjOK`J!HTIeewbJDw2Rp-mXQT@rhl4^IV}D0qj=KO5_O!L_aAb z@MDvmpQWxRvJ^MJOk>o7NDQq1@-)ZY{Mupt@yQT!ZP4;964ZQrS&CePHBy0?Am>{f+;8cMy3Ry+a+P zpb=WFJm^T>SUPDktzx22wr6(L11}#(-MA1R^OoSM=Z2H~0*%+F+ou;!%wRoZLN6L?hnh!zyHxlZr04KMv~Gp(ne!t=yB+%la3rs#|&Z2c9C9q zV;Wt9DO0ODC{`VSG|FWeRs{hnb4t_X9j6~4)g!h89)@Jd+OKsVcNfpfD00D@I%0%{ z25Zq?jC!;c2CN6u>5*tj?-!xSNt%~WTP7GN@lG8_P0B>|`!>sy){(=aQOelO+0Jvw zH!Ag{jxrq^8=~;c4`Ct=?wk%LwdiXHm(D4p#z4rd|$IM#LuQ*U=bN-vdn z6O}3Qz|q${@1}UXN`AneLaVM+Fy0R{aJyC)4t92lN>!+fnVn$lwgyAJ^G+#(xcT`~ zHJ1(^vk_^NmJ;qM z_POsG!W>-L^~FnN2nj38Jl^kPw_U`~^$<8~DALQoqEK9Mf=EPv(Z4w%rv-~H2{Xj~ zy`ci|5FTS`QyE#1_F$oAlPxWrZoDPaQ@xvF9DFOGkM@x#*F6Bs;(aiE;O38y`7j}s zg!zj~65S=WIu3pl41Cei@ki9`^F5JJObA;+hV>p}YQZwEAIm$NgBf45|96Sw%AfT; zk2U09>-wI14fiGg{Au4DV@G!h@O?7}zRfX!S)zc$nd?^sWkIQ`LCFiMCx?2wAibi_ z34bZ&1%D9PZgEx41O*@|7oznVq4ha)?TScHh-a`qjpVO#K8p0qkdmeykbF_E^yaZKTvH^zO_{;3(b+JQEXW_;}kg7P47KrO#pDz(S2-|BCgi zRMwQ73G(dwsLz2B%HiL&mj3To21+S@VDU&c)`0DwIG&gJiT-Yd{_40t`A|%QP)>Z% zZLGH3RN@syUlOe<>8w%*HO`9sUbkZaluhMo{)U1U5v;$6&}(*@h4}bL1hc3G!K{01 zG^$lgBPGQf^!lCDW~pCYq9mhCsN!t;)8K|iqrVG2iA&P#DfjXJ6y+^qwu7HkGhtQr ze@4*dNf~0c3cOBIZ*O&{N=9nAy(j4eAUq*Sw5*yktqY)ExZppbS{G_g(sbMcz*flG zPodp3w7PzSlu9z+k~w$Zx;lQEE;2>HMt~ENqDJ z%HR{^;ZtnmHVaUOfEmSS{I1Ueh+V9J%=sU@i(Td){}yrh)oC55%Hva45bTcUVhz+p z*j{~%$v%Kuko0*+`c1BFV{Mk{;?_Hm+|asBiGC2ofMx^n2s4N#Hfd z)7|N2>v3p&2z0&r+gZtUGuvtV)Ngq!H+2cWM&9|Fdlw#Fsl&V@c0NZf+iq3ROPN*1luMcz1ww~IF&J&TdQVb#1i!Nb0N$@ zAUts8hoI+^Nd{4wE}w!> zs={ES*?I$I!(>Qg=T9I$vB`Qt~Ay9v}rIg7cI2c5!B;ZvvhB`f&i&*xb+p zyw33x^xEU11O@^;eaz=u7Q~EzS6*63U4;jk8?Ph>AqHaY7ahC|M2tpg32o?`8ALz3 z3@HXn*W?JQ_VWQm*WAEd_gcb48r-ASF9QS+^iANNUEQz2oZb3s_7f8hrw8xUSZC+( z{sCWW2a?K;@o&8=zXt5y{^iy6p~D=|?{Vp?@1)qSf-PO>jGp!$JqZ_?X_?_@)aPm6 z9{Hp}qVKGdhPJ#1-nuNR?{Z+5VgR-DWu*2u`I&Be4;`RsIvBNC2FNtGzx;d00RAo+LtDV#Jp+&f{Ih7R4ITe~K87|H z)*k;Sum5VT3H*1u{|7K>XT!g35wnE&%EZ|Ll3;STuzw{9lpe^r0~KfeDw{rE31;Kv_(-sQX`@JhQP;zDOBe-R*|$PR2;3>>HL!rhQ9}-S}lKVus-`-iGGCN z0-QdY`L|odg99IvkdU@z2+eua6ZES}Ia`e2J|8Yv%2pGmNX3+8)%?gBB(z{!b4)i% zt()xC0Xgd{PAH1hmQ528Pn2{n`MvjjvR-TN_wJrFarOYj1wn(Eg*+d&WSxKWk8g`cwZlzKbl)RSbayN9vN}XkGJ7L9_LF!CG67H5Y?%8L zu7c|MDdUJC?h#hs7Gj3$P-VtIAN3i{n5<7_YP4V*0KA<#k=Wl&8=mtc#BIQ0jaK)3 z<=&?@p+(=oG?STtVWG%2sBe5K+)8u1iF=*W$?<~b6wrlthS%zvXm$6fO6!T zQM|I=w7u1mCZv^G!@g1t#d6tV)$BINHvS=H`oZq?P8!HhuI_>M=**7=O02>lN`Myb z2Q6eVq3xrvyd%yy_RR!z(sh zRwsR1cMD9my(nRiyVwmgfqqL`Sb+=WB12@Ruf4_od~sWWYDhfLF@+yFr*gr%_jqkb zV!uQ0_RDiuLv$7u+NnjqEoAhi>B;DFF<@5E+Ya(_+ns-!Fq3U+`EJ85teTx(Z%YpZ zZi#)c*2xx~OqIEh}&d z1yfeF$-gTBNoXk>gSP(BOjOK|2=Ui3e(|;f*`$95z}s}TCE?Q>pFHwdE$l9@cWIPx zxEnG!%?9CzxJ$t4v{0+0SLo|_8O8anWcLQa2z1!?h(mw+T=W!OQG|qQ3SXICxEQpY z628BvxhmA+Ei1V1nOG(wep4mybT~vI%8M{;(2822Qm*o9hQc4gSKnOT$yLM(IJVtA zSk!;kaC=At4|10P&e?9>gsK#a`uxq?+?x=^pz_3C?>kchJZ}HD;lq!?;#T;T%xU(K z_jfp*aS$j`-oAbSv_Q(1%!wTsiNX6PO70?1m-hz#FiH|0G31!Ib{rk)cQ13Gjb`ln zVYY*rwcGjrY#ioZrNhdI|7f3v?pLPMN;-dlaDV&m)&^+eX!K$bu%#>Z%AL5-O@KUr zb*9nE%Ow)!`g5%ngK78%Z-3qp|HVX(>i&^&75&hdJ=%WTYoz0IiqlKVm>(3nPG??{ zW*JC>yMVx5J#BHm%~M@J{Jvh2@|wvfU|c%1J_dczJmJZSrlhO0#23Bl05{d>ZW(`{ z+o&-~kvu`-B2;|GUV~RSarECNN7IE@(yx9z2$9sdA@zx(P1=$QpZ4hhU99`EbR-4KRNj!nJz{ zA->+(k70TYW6nd-CS^p&ck4#s!rdMVp@&!7`h&J3^EE#r4)br`HPXBi2ZW#AHt*-? z>d+vWkp^qAv6Hz^pp^JQnd_lFx7VmS(P6_&OW&k%x3ky(DHpq4><%i1mepbbo0Pej zkd48HwIz@IvR88zgHJO#mbiZn1!p1rp~o0iyg%!Oqv`RKw_M7MVuwpn6!eCe&b(9c z`N%7LWD9c7z^y`o4+dG=X-D(=b>-dv!QHS26GX(l8U5moPgEMN%ae~B*ANGqbctSu7?9wg;XHVVzlksl%s>vD&*CL|j`hK-o`e`1_qU1q>7j*!A zEyw&8ZFt0+o}5cQ#w(|hz+->Nz?qmUjdK5WG<4%8LbQ0ROEcBOlV}c9wCL1xC3Cjh zR}d8v4aBfS3s--h30uJ7({IUM1crNsR zEJ?+kuyY@Jpl!V)S&4uD%J}goA{1q}&P_nba1Mpg_)ZS%hA9Wm&tx5F7WD9pV?zye z6O~!xB7=XA;WGN0v(Jpx2(mc+pRJpIseNm8FU%QdaJ8N_i)FfrsY&7|b4TUf3(fM* zEO2-pp3_{MHgye88YV1lgmZ`pHdRznTDHlkKqkjzKMS$_fYRDqLEs6{fdZ9>_!<-oRk$8 z(m^ZHEAmF`Aqs%jFdD>c+D2Cl?`f%+X;Va`iZWXad%cYA{YvP`AnREaJ>3u_IBVfK zRk*kotsyWM*P@uSx>}WN) zClh~xNxRlbf##^%5vheEe5_qM?t!&PCSNEhzGE7+u*re99@dnX$DpU4e_gk#+;oWD zW%-Sm*)cEDC8ho&vEmlx&dm>MUClawBW!6SP39CBMZjGBbg_Vqfa8H5oVPWn=DXns z;Zd@4rtw9HlF3If7}j_1SR{#>Eb3HgIw^kwPd5seFz^aW5I-c`(eNnWc_zVtZ3~6f zaGyYgTgX2}hp#u;HTZKFejpp^4g65mvF4LkY*kB${k~UcO-#E)Ki^*2ni9{Eh7qQl z49^|2Cd^&q^U*N@D?PNqs`p`rpk#`+E@6k!@&HQSu>H7aZcac|HXReWpwBG7ANqg7 z3NHH9&RUL~d(_!;fl2eRd^WHo{6H?MAlcE_-I~aK=7!Cyh>}T73fSY(I%Me63nCbG zK`3kaMp#*7FPkm(1b|E8VyU>040UxC267q{N z7ncO*cVLu%PO|IaHL*F^P&wK*2o!&V{Z4eCi?C^d8w{(@NLwB=L=i>)AezJ3GxX>( z*PJa7;~FXvh&Qk^YM)rhsTVjv!-F z45fgd#n=DiNY6#T?5{2fdlC*pr?JWXoZ4e>tScnxjiK5#OKBW&!MbBp3MgQTw~Ya zN35aLyNKM7qmVC1=NCd#He`QYa{?Ff`^;+U-A&j^L z+76N#uR5l7Y;zk)py0u7-v=H?(4P{!n-?_t<7k}NmM!rt5kT}7+QkFw;#eFWT&-MG zsktV~c2jl+-Kz*}-mF$dP+SVL36Qp%?^)}J+Xe2f0kJN!+Mvq8FTsC7+Y1Oy=pnI+ z54L)8*3Yx^Lq)m@UgU8EY|qLtee1x~Myv7y0X?|GsuVe7(8Ql4ExshY8(-e+lu&1R zMdt(pFg_HH6GlwpjXNf-HieJ`8|ri|iZ&Hdlu@;^Aba7j;Pz7Cp`h7~{^VYKzs8Kr z@qWLMkyO{fn?`~zk!ydVzu_3FY~)SFo^6Vj8o>rnOIzNO$D|lq>J*-r!BJu`na1P@ z#SxeQ0@)xctz16(#i`qdHEr$Ql8)P4e7&-z5XtO-#-BeSR;%3|{S8^vdoS3_3vE$1f|@T}Wq>OBK}2tsf{p_G5;l>ugY2t4FQDl|RR zBDW2d|1uS}%%u*H#QXX>Y%_6KfQ(9-lnLrF^YeGJ63{!oml^ZQ+jL(*@k#EoiUr6q zPULcl_X|Z3%7D|WdJRcO#2 z=o)Un((_#1&m#m1w{vG9m=>+;8(RhwYFAZv2;iqr^Hi5V$5*vGGppfmLrQS0!r$A( zJkqI}*4=;nJ)`CZtzVRt;wGL1IeBU^P}E8-CbaD3=)jD@qD%;J_sK|gH?USS9=T)r z32Md2g~ER~ZAeP$5Dif6Vi1wZg6Zj^3*(2eN!dyX$TbO>skq0MCvvR$m6rUzt-a_D zy&J&@L*lU-z#yw!fwrwIIm4?#O4q*%e&M3xGbn$}-`VL?En{a=u8*8$rr!D8WF>Y_5pc7=E(VZHqO+ zGU&)*wqMaIL3JX@AseR1?}XlrkAgT*->gJ;>Q;NB*AzaKA+G>6@LOwISk|UCbW_|9c}*%pSy4}TIWRvm;!Rr5`fRG7-LHRR9}ld$P0%Ys_Ez|bQCun^7?!>q!QsU! z3u#l~;~fL?mvfmQ>++FbU`5XCvKrRTHH(-)h9ci-?wTD3pSe66@Z(;m_I|oCtOfWr z2^pFZ7Olm^5wW(F^&+JfuKq-j_g~)64%b)eS7)5KrhnmaIjDoM_K*jVWc$>B`jUTw zs16N07=s}~!3V3%EK4w9H}$c&Z0A*pq(Sj!h5BG&p74R#*|v% zwI<#7&A{GmQ;WQPP}b`3#=@IJvz~tyKi#4{yyNdZYRE9P(4Z>wke))6$C!e$z`WWT znHae#{^ba|IK@sLRAWEac34fX;$Gx9&y?=%4L)bxe1r#Ckcrf zRRmv=_m|yT{DCd@B9cE-@^Cw*Cdf>Z5HD#%YnZdv(4veYCc@Q;_fMra`AvQW7Lm0o zEO;nHNviN8)v+*CgOn{cc9vsVwPllKX5sqFyx(7Qt8|C6LF^2vH#vU{koiBSA}@6! zHesX{zLzz7ACb5Op-mhetti;=lH&r+-p<^A1V$u7jfKSTUP<TD(I~{CI@r^>OVwW$Rr;8SEi3e?Pm= z02*~m3(;`#$urp&qo=a9zlIWlB^mEynM;gMKnzcd5zAa%CDFpy2Y$!x%{$OP@@JDh;r#pZ%(U>ukP74gm$V|*0RN8je3@fxom&`DJEf*7B?qD^v8Nb zp?&|0Sz!%USgMnC!}ai~bE)ORwW6QT)PSqr12M~XhLN>p@!}Bn26ZXICBNuePYX6= z!|-w{b(tJmCWGw$GEV{(^U@^LZ^QPTtJ%P?146 ztp-UR)+RsIK;a)(mkz0ALQjJUX4{w-@3qHE!B39OUsmmNq9?yG7NjrTGJ||+wV5gc z>p~Ou5|?H2jq~EPEV=j<9=a$6F^NquyI9CPkQ#O_KV}k@0?jeUERoyJ_`obzIboAaK$)lbUnms1U7(Rb4+;hvP z>8NARBo1iho2O)h2GJNPYBZG`A#Iz$@RUx$#qxbSv$e^9nwKR?S&%m!_*}Mr7Hf)Y z=G4FjQfGf-Z=9*`lA8#+&ywL7rfP3Y0WaZ(3PP+6@0|kUXcaJl4IfG93sOysMCY|M zgtBA4YN^{soLJumTvEqktT(Q&vMjxjt#~cJ7=LzI_6!SxS1P~lsEkD) zF^(U({kn#8oFEdm?|qeWQY5&C`{kHRdZLDV2~sdY`%0WbAwp!Dlr-cx8bcMMk*00}JCtHUSU-Z!GDB?zsRnxYBmhoQckh&(CzSz?BVIt%5yTUQ z#k7Aw?FZ8-2gXZQpS-0*$kb|t-0ukmtH(mp&HY8|>t$@3?^M1!q2l1Uw@wP9*Q((M za(eozLX_&wM(8bfJsPM&ky5FFwfqz;J6`cQ*+#1JO#H$0blK4cj@n>vnFkbu&O@WcJnuBwBx+@N}1MYq0>AYC@y42!6cc<;M`Fk_jsq zn=$tB)l+B5!<%ip#!Hgs-Te6zD6pmeP)Hqg>#}cta<6>S=QkA%8OurRgU&FZ3`2)j zPWJ7Z5H|#Fpx|y^7jI(K1O!*DM{3aA`VT`|ux+%0BCQ}7odAzZ&x1#?Sx2L*NWg!( zdt=zVr_BZO0YNiNpwWVsEpe9mg#uak`-)crl3pRpd&d`qRUa-8Zc#=g4PRf}j}LJ6gx6cwWR-h0K}|HnfiKc?!Q+mLCxVgUGgU zB^z>-D{5m71Bp}|889ikf+l`(s;YlL-6^k;OSkRM%Z@b8Picf^$!?}nNpxLJNH$lK z?!X01N)d9dDBg2rEU5lKG*Vk$y%0yrKWM}A+BZ*aRU$7@ltQd7uq<_(DxCIft{)clBQbUN+W-1TLi?H zU%w4vhIT2EaT+YDG-+>KCSwZKKf>_f*z2$c)h3=jg6Dx8+;IsRb*iZ65F$pdKUuHO zRJ>qv%o2IJZmE&Awg5_@nB;2ghLI2#qPcbNvwx-hx}d}&-s2^hxz~qk?$zzIVrYkP zP*mJvPc_!kUT3I_}uP_rhnN-zsN|5r^58|Z!Zt$YokX?dDN8-lL9xd+^@SiXD@ zn*M$XFl3D)_~J$|cM_72vNUqznC)7TthchPQT=C&$sfvxxUrv!KH$!hEC;U*N~qpB z4FsxE2TyOWKV>>G*9U)x^vn;`5Bar6JRO{qOR9Dr!C(f)d?r;y<8|Tl8AK2jySRs0 z>06imk5IH~rBN(a{tz?nNVb=6!QDpCQS~O_5+ z@12@vB$=4^tki!3Ve6gd>xBo}98x9_duAwQGjUSSL0ed`b(dwtSo}lH4~8^A=FvyQ zO1Pz_NoZYC4~+~$e9?@eWKlV)oW=kgkj<1TBNWPjW!ncy$_a%Y?ook}MeDPIYZ16c3rA^8;XvQ zf)>@RZz@~C&HN(Pb=#9C-Azn9M+VhVbG9cy1<^At#I2|u|DDIgwoiq35e@aHi7=DC zvelixW-RkpVcC|{DI!Nu%*S?GUn1-qzLK2|KHMz}7(8@sLwVzn<^&S1sks6Kmt$*^ zswj+*oV7S^76P-8&8)ck)ATHRcTlnBUTJ-*37*TWn)NuSLv7VsHRpYPfrgrJHT{78G;+?`^ks2MLl986Mx0m*f^@#5urdNM7oVO+4g@x8y-&-Q3t-{t-9{%2i|5(lSc77Ycch1yLOc^Tl$*&8=lueW-l5i2~QO`Nn@t zzMCDheV+BLm!B#(Q7u(qHE=Tf*%s9fVJCjpl_VP7UrxD{rk1l;UFRD^O!0XlF|dfK ze3nB*^5z;N%;wE-j}!S;;poc=6;kAk+&n4Yo^7~!enTkyO6H`vqF{O_uT7i}Lf2*T zhNDql^%;4f0B7G-56KF*^w&!C@+E)ePMp4!^Y0%X{f3;#EIra-%u+uyL%n$DY$MWy zP9BK8X;du>9I6<_uIxEoB3&LYrXIh3O(abq!-XQ}WA9E)UFm;j@YQ*EA!8gzm$>f9 zx)-Q?Du!&=b?2KbLPkpPby1PIm@F%fr!@V36ieR?MNeap*2ad+d5YvVqNsm3KROF} zN+q}J)UNFRrLw5K6ufmc>_O|A6N|6@D>r-cWkThSL)tdzLodTe!FZN4@O!F_ZpS=a zF;|}NxPaJ|-i?5l%nXxEfG$5)V3FNXpTq%@%SodC0%;xzCJ_b43Y8Zio94?PqL;~e zq6EWu;+U*9?-4JCRvL_-7+8N!kQ0?`@L`R-zwf#*QvakngF zR=!9c`*_^+Ml7;Ts6h}78-cRS&6Wq$`cd0#!S9u!W_cmh=F$1x8`CFvQX%^ZIB|1k zHpf7Un7Kw$n{v**(|p{ErTplkPM>|d9t3vnZ&lb6%ZJkz4}jQPN0Wcxt(E%n;$1kC z-LjnoRf(Pqxd_Grx2b=$j^n=oSou0}N(h=6`i6k)3?e1Yu#Qe<-Z$3!acGvYpuw~a z^PjUJA?f>2>aWBQ2+1U5{&>^V&2%9LrY1~>pMzPFVn%0J8%unrpLO&qhTjvvRuZCO zZO9sX68<>hMZ$O^5GaorZJse7vZlDMbY{FL_Mm^(s)a2!J~mUA6iO-x zA`F>Zu(60b2UEg;0kLI!+XdPkx+kb()G)yjgJ?| zobdVVq>V#?$;~+CIn1%Yh5qV-rkfgVo~D?<5baGF$$)!S(9`+4 zRjXA7#b-1K%cFKZ`C1Su-a0kWw%@Aft{toFVBYp!7tGG1_i+Hba8R}H|Ai(Dy|yTaovp`S|pO2?U?6w%1vvvi+evp zU2-u8IEGk9n;B}ai#N~2rX~`Y1dxi?w?t7kdpUo8E>VvKVaY#p#MlO@aQGLAOd4sj5gyWlvq3%!Ed9^ zfii!bDN-F`=_F%f-XKdbZ3J7lAK(xTZQ$;Dr!v2JQ$ZT-Cc`BI+!>YcQzyS@u-L#U z49u16mzO@1jBRZWLVDSJq4>YFa9Y~b6^bym*CU&(LH&F;!vru2KuV^!WRv|7^U5Fx zSMW{DR;ALd!bU*j2a6AecAi26Z^(*=7GZyhO+0A0y?%1Ti$XQq)Pen0o*PMxRgc-hC9qrgRqw#{-eM zGjiJfMI9*xa;sF$#ae=D!iqT|0(ZYbeFM|MQE(0F|0FBB(ZVXiIvn%OJk-(#Ahmx1 zMQd0-1@>*_8XALqs-4TPK%u7k)}gu2?QlDovib76j}qh`KG+7zoEgWx3y;FXz@Mx$ z%jmyX>7TIv_*6o~I5gw&7O~1l?z^RFT2d7duA08OOmSB`dlH>_YKj@6j59kqLcvwl zYhT43U3YEj&shl<|7JCAB0}rKL~?(~I#6v#o3%JZH4|+DXwa)1S*0Q!{5E(fQ#!d8 z|3g7c^}fjaej`N`J)m)=59?7p@&_hcX#A2_x%2`Ft;1Cc;F|HP6k1Zm@HUd zRu!7yQPop_sq0C#Pcu@1MfSrb^b(mlkd=!epK}fV=9yQadC|jG@Mc;O|_d)Nyw2Y zm$f1Yw8?18sV9*@PFkJhAKhxJpe3+Dw;&4$))l`%O5!;ax4|{L&rr7JwVS)g6mWZ!7kC3xYBDL<==y)>3jzs~6EnU& z{=N9+7)b0D!$!OlwbsM)^2#K-)PRGot8CbDU4uJX=sOvTtzf&D&#~+JpyzT*|1**( zMvUr=`gIo&x=eOb%;K5K)TT%N&+1bOg@tYF}=59c^6g<^Z8(R3;51!}NtAx9QGfLmdQ6`?)UT zE>@V!1Y1tK6&UcCnCm+h&vW2ypw5)Gzp}$rr&t^ zd}Dsp*x$u@?NBvn5Ad-a5|eDNEL}r+ek-7EbCF8~OHNCs@|pCQStz_MbN66=!nN0D zYti|M)z*^;sL&anE@`}EF`RK#A=XnLU(su&cpwm-$>M)2j}l`Q^46#}79vuCM5jKJC_MMm8?^r(ORL;7^Si`G;)C|qL#Y7 z@1$>aJov8tNeS#)6wi36wN#^)**N{)Dr1c#x^F8tsUMLZf+0 z%~zRS6y{oM+_v4nHAztU4lG)74IHac&QgnSc9>kS;n{;W+$?mTHod{Az3y{3S%3+q z^!PiMjfku$dq_ZpY$fnlMY#YGH4|MBfP)%9C1W?J02yKXB5#3>*4opqf2&Wh_p*{ahphxMEJKB9>-c9>s$q~0Z* zOa8NDXj9adU9>!^7rD|VV4}3N%df7L0v4OpkOU-J^xLyzVA0>n3GcgE)pL>QVa|tls&67R>4_ z{5!b7{zv~KP;9;pl4T#AFU~h!%MIcpm?(d<+;BYbA>)+v`Q4%F4Uh#+azgWz3XpSJ zQ2l9O6a^PWqBtu~D4E6n-k+5>TV6bcc1zF2`f-{Q{716h;aA$O?n)`7D6){53eTt4BibwX)YLF$i&L+kA0&TP zR5_TWMnT06#f2F`4O69!23pkL<`dT}zO2DkzDZWxw;igWDprRDp+kgI-lDhnMZBGj z$VwsMAYk2msU;?6XvR0%=W6s|!1b#~4}U}0?p>L)vw5>gC6pYETW-+Q<(gbD;0u8Z zOjhG$pnzg;n~C)|RNajk1x-)yz-NE3XxNpw_h~~u$*)|XSnE1zBWSFyk+DF;* z`ji&>I=WP5r6In@2n<`}4}cw02y-bpqK|q^dloj-T92P=2?C&9m*H_r@?urHji!Hw z9Buo6OHi~>F2QItSv%|f%5m!Jr)YvzYc*Emwm`hgPA0JY0C zs6{ZfG-H3~UwrGW~ z@xAcjxXA59ufQTdrRd9?y3+9KWPjTmA0G_8%yE2qBkR=gNB>Mp=DzXpvKfgRf~|CYIZAmkdA78BX09eFsk^zEy{ zke)rJ_?JQ7ikldLSt3T$oY!=w)%y;zh&QpOxs9L}0?|7@Wz#oh+;#Q?Rf~R5vMTG2 zw0aL#y>Z_-w07{l*d>4D19t@r>p&{?Z6yWIz%AMb=mIp;2&t%NhO?mIm2@*+KAY|q z5RORn*@p}ge;kYJW!|3JX0%tu;d;xo%MZjVx(3-Y2j!f5)Wjm(dLJsw_t5pb2pDv+0SS zeXN`N-tR{JzapnqfqT9qXmNL#^PxRb^C8PcASi}Vqa)u>;Bi4@Sld~mbAYrpPA;)Kqn!e` z+YNtz($jo41cS=}BP{xn5CG{%KY~zUNR8eHOU?WQLCPut-zp$0ud;yjRVd7Qh6r!} z)TPXr4kwYFW39Z@p~T`cN`sn1q!R|a+!gymRWcb3jUL^qZp5W$9-#vJ=P`o<{{6U5 zXf6{!a;XYqMoYW%4_i%Pf*AH7E=q{!jcI=)Lu?>toxKkUyLXIaYF%VOQt)PFMy9eu z<%Nw@j|L}RIqK^-WSm7xX^_2wWHx$q1+Qiq$RJ4YTmfmAxj_q>qP+pfSe;0damlMO z@!vg{NLV7CfE18YTY)Ms7MZS%c=!{W6ieyM@QV5B94Uber#^53wtg41Z#U>z&M<$p zH89{x7IdNl#nAptFjLMMX!lgCmnTd(BK%DV&L`!ogpX=QL?sQ3w zf%n9erj-pSrU->r+&jK7Dpi!MzhtOEKt~{BiqccTns2iWeRV`4FC?1&v*Uk-PzNn? zobJja)H`9kA=16QbguTu8{G;=wdZfOQlxpqFie6V7jK^Ta-Bk}2}9NT>Yh%}rxwtK zxc$wZ%2rjB!XHdLYLwM?%fVOEDV=|;vYfD&A_qoJw?*p7fk}vIi9lCv^NgQ!6jz7G5lpz$ z*w|t!Inkd_ET$5aJC%0g=>l9?V5H=JnkqR6@jw{?QVXBtN9Vnqxlt8Cj6lzW$tYVa zXNCochIAXN51|t|3lDU^96YcLRUPV9fs1vJFV#mU}sQgk0KK>2$1S+VLcJJl8hgJTAKpiHbrn z#8Y@3yu|wkmLE|*ZVSVtuVbt%s1NL^W2Mmcz~q9D`Yj^J&SfTJQhmY8}Z!_qN_g#Qqp~L>n@g zt8PR((U?hkK{JD|&)P;*ky2VHifl_>by{FhBqE56hzH18@su#DtgeUT=N5~+VOs%+ zbpum18n}smK7D@(knPliV)%jx(~DFUPB3D3Q-!n0_o%6jwjQlJ&HUjSPatdwD3%63f?@4CI-WoFQKyH*VXG~tHU7wp-}l>7QH8w; z)Txk2Ik1%Wz>rT9{b|MU1tCK5Ho6!+yOO5M^kJ_F+US2yGf*=mFNjVxl})>VkOyDt zY*;rQygD#n{1AP6EdFeE{2Pvy(;f^Izj}<6j2Nhr8ZAoCHT!a9$s6vVX?| zHu(CDcou(moIdTB#}KXxv?#zP1|dK5tnqV3ca0TRj=j;Yx*eDpWSPX&8(F}!;&}D?^ZQ+N3 z!MSP>KeyxStKUdj^sB)l!6Z3=&#N-TeG!3IYn6X*zD;I7SyW~@=DL=~>A;XQF4V`1 zuXI5MbPd$BPO$p4X(<%*^fBbu&iCeGy#U%@%EEjujV$nzm||7~{Zekz%qmtS<&^U+ zT@OiJnIy?Kl{O`DWbe{EHVGSWW`U%BuAZh+hv>D%x6Ie9X%2PkYTwnXb5#Vx3#y5| zg^PcKnu}9S51GzE}v@|Dlav-3w9x{1YHC@ZB74p-Qn!FR z^{qGu)SPpdqA~lO^i%R-ew`p(`rW^8?02J5pjB`hu=+8 z4+n6tsXTr4#8&}%QPVqleX}6pM=R^8jY~>7e_wrR6FouC<|Z(Bn+6|&-S2210;nR3 z&xRcrP13=MdX^T$ArTa~w6lM$E;vaAN4mb)^_^Em*=(NpO<7X6_mZ%GN`$*|;Ofqo z8Q?CBgrL+s2hvJxo!-w6}jr-(N%ClF#~+ zLFEWuzdn?{8^>7)V=@K`O#fdzW za6u)=G%B+yoHQ-&3@t~l5z^{X6tqJ6iD?*C=rOZnC%q@N+QWg=s{=}C;7PNH0!t{} zvo`^j$`5d6JZ4mc01tmlimbG$wza%rc^(E`6>Nqk)LS^w@Mv;2q*XvVh~)qkX}vF@ zvMa-Jxw$Yl3Rjz#9SXDQn0Tk^v|pZ(aqxRHIYxRG86W}p(-Eg~W)A593 zc((9eTe7NeV;CwVxyRg=l{yNe0J6(ePX_ym`>ky&^{xU}eO$3j|BfaV4xh_!AW?ES z>Sx9W|5eAr`;A5u{BZ}Jw$i@hTs<$J*;F4L_4Q?_5cIQ;-L>9tuEDq)BvRYYUOyS= z(+}lc=yoet%^`o@k5#{Cf3IRokd}~H*SXmRFf<0FPEQ*o@9&(xrj9<#+&2q+i#%nK zj;+ZNZPU8HVl#Nhxu6U#iVCa(P8(!<82Z5Mx)Q74I2Q+NiksSX;TUqhK3 zCDTM|3`qaTc+#)JjGT(v7avN^9)L&=&xurl55v*CS$e2{49CB!dHFr@V{cCd>9Ef{ zy^B*D=RjuqeMavJy1b7FH&Ru{U;-Lft+x|gGqnB2_{9I$(t80|TT}EMB;Ol3AKA$F z=hIb{#s7aV8xrL0w_%$Iw6yCyl+7B$S`P;Jg*s)%RMS@_*zEe--Vov)lP)%c5F6kw zB*H8G?n+`KaYfO*bcT1{VJxn%=k^=5XG%Y|tn_JqCd>jnBKS1g1}}bOp{cBYb<3CP z+n$e|xo9a^VRa4T}rQ}WvKm&gYQ!iEF?Vg+bzODerOlW6}Cy`s~ zh1xF1C_GR8ldDlr%SllSdN~)bW>IfeKSdL@BIa|A-Y^ zWd_e)``+eFth;P9jXm32`q%CqFa%qp9i{+)gxi1(Gi{Q22tArD5RHNrMe$yd%p zMG@KJ)f8Lv=12fwhNQ*Yk*4XJu+Y>(hGGihN|-x;OoS!q1A!LY)}#{dN%gFFr=}$u z7D9)Hayt}m3~$9vLR$ObcM!#Yu_bvB9Vmv$AHAts?D?3mmzrIaUUrzwD|aVY%5BMG0WISQ$DPlPV8KR9_ ze9onRu02px6n4!X0NHJ5sCq6;7w`s4a!!ke=g;jpX|-L$aTT8pVYlII{0^xsz+5<` zoM$?sizK@{F?XcOa9MO~X#fN0Ue6ZfG^!>#mJ)0*%L!lS!Q`SlH8VcWin-Sr$d7CQ z3))i0&VtZCwi~%Tt5x`7*gHIudiO=oDqT8%kkrQssl;#|zf06cM>lQjTCit-__5hk zfsjn-#bZmD9>u!`s`n{oKAAf=%kT0qrZ&AJx}~8L>@axObQCAdF6@EOk@W~82S;5B z9ijf6rsg_wMFGANFfa_TSd9V(M*Lg~FHZeZ0UUb>L^-!0>MG0GW#LF@)Nj`@ZVH0U_hGzVcXFkz#0;r3;y; zuLt#*^jkF= zar<~;Ag-4Ab6TX)?cCEGPUu|Z;b_T!^^T=V#$Q~FDsi(CQ z*1JH?hoT5av{Ix0BcgX&-$W(;rw@a_QV^V;~7y*yjfej79rL_?-!f5ku&=@ znnxe)wQgh$W^a21>ezM(hi(9+VG3mZ4h4!KA1yM z1)u_28hg1?tAcSdA7*L<%ybfe<;cqH^`_n?f8ffr2MVL8E$luSLm~8!s2P(`svyz@ z%;=5N*9f#(SU0v?aVZUJQNR$H^ zi08P8!0sGaNX1!Eg&df+hjzU5_WvD9}kNRge8f?G8z_0pw zsMYtyf}%-X6QgSYrEMILhbjlkw^}s^3Z09G{TGv=y}=_ak{4t0a0PF7x*xxceMZFc350}rPCNg=ARxRa<&g9`} zygPz_Mr(Yzp~5Y|qAe&c=P$LbFA~05UJz13-t_X{rz0nq;=hVXiq-|icDmzc64A7Z zjMefeFLz+UIwjP9^^Xv)vU!rA@`$E@B5LPXKs*}xs;hq_i@^G!bJE8Mm~|u~=R$LL zH|BFqPWZ|^SZjIWj+Onc9zjMCNrt312x#82z){%uS>&e=aUajj#`0hx6hL- z>E!%!2vUV1Bsh-Y+!W@(nd{8%KjXttd#CNOL~*98d4QgOLOKMy=RIZ2uau#=3o;V+ zOwC0@t4aeU%>X0DBR!G%e-Oal@ ziMFD=yA!N`LiBXhhup5i<&Fjz5j!q~zkSw*cI#}7ixqoRkpSn-OVUDj25Iks7fB=n zgjbbVPe4%ihleIX-6=dB9+3ji+@5)Rw1MyCS3~uLtZWwqM zKX;KStId&F%W>_v<5JJDr9dvj0>Nhz_oEVQl%fADpc2LQB8*-q=F)qHS@{yj5FMp! zvNF46?qHi%8As|r=w)pkK*-k-2ibQ)9T?z$<2ffWkHy=7m1M-f>D+Z@-yQ1_8c*-551AL%))+o|gSwUf1KC{g8d%rw60>Sb0Dj4}_~7ErTwiu@xni@V87|a+ z&8cBuOP#ULM2Cz*YtEw6PERn_mAUx%)y#R`#vN+lqtH98xKQ3o20!_4oSN!&Z@z9M zpXHTypm-71-`{Fl@aB%Yz{G?xUgR~6TB4_#3)u-l1m5-K#BxxzyC~QBXWIgH%Gq+V z%lci&8Q|JucJo3myk9=-MMM~e%M#mvs!933zo5FFZ#wy8?0tt|c-}aTV*|m(DU8ry zif6*Nc|Hr-*nW0CN$E#ouq(`^S8}f~vfU?k5Jev4; z{$ppBDmN5pU#q^c)_ah0ou0zDNi*PUw}-Ul-wjy6APO!8E68 zi8dHC!JO&o50hr3L>8f3h$#IqizsHM=d$7P%7_-t(70Jq*~BLdkrWzoPVBp{bW zLv{nL5gfbtVE(>H1>Dy?V%2FEZynle|BKHfB!w4ENv#oQGKE|sEIMTPBV4F`vQ46J zdQ$}Y$)EP3WUi%u5VTgOI3G8p0IYQ4W$MtzyCg`TSHuHB%J9E<0}(f&G|}%uiaCI$ z5xYo9&KMV};i3!Oc_`OSn7S(2=H=v|cu($;V=eZE8JGf%olU@micuvc z^o|2;9Bz7lFV+e95kWit;30@ZN}fZs6Im1Y5aZ$ZXXRBvjgSRYqBIGi-%3VvUtn(` z#JF-$-J%^dx(45Te|mtu|7_;a;0XjSrx#fxA9El6Py#3d*i~6zOi#1QO-1W0&Xr$K zLx(Zk_E|_-Q+a1#6uMD6A$Mb(N#QRFb1et8tniJ04>Y&dHl+(f{PlQ>tfJhG`|%)l z2(MV!ih^rCUV7W z*kO>WczT*;I!~nAF>bEDle!>WP_1NWcc@2?L#lzHEs3B!AZ<>IKz7&umf&?jhOAw; zuo-`Ud>7inDHR%cny%kC?y0QDJGp%Le?!RB*tnLF-7l*WMy|Qr-N?GoxPLol`qrJz zDPlK)zz|Gx4aX%@>GgESH2txt6fut!m2hluTq(D(ZSRpln(Ds_T?SuG&iP!27bqo|UW1w;((he= zohrm=)W8bEE}c=vRCBpDbV<=8Oiu=0COu*Ur?O_Gr6myx!rLB#CV2OkXg!nUBG=UV zP`Rk)uuHXJ9l{agMQ5vykJmxca{owd36pSTb8Ph9kWaN1dPIrVt2{gKizzMJju`~W z;Dk963m%wl33$%RDs1%iaRbg%bB6?fH#w=s3F~PvwGAFV~Ma24*`FyW>?P{Ap$=kq2d}!gKTTh@@rK%6{H?9jSwJJz8 zqY;>YW~@N_Dw%3Aa~QfWDM11~ANWk2Qx_&6FpRqThx>x~UZ|*FOjBheYwJjbH5Q z$nJ!gMq%9MGn-5Uj2p`4CDNTphu2R*EO7xa zl5@2#QBUH*A<*JdG_;FAK~r;&L8Ogho@(GD)Ke59L0z<5nPtd=jQu@UY76PMtL1rC?K;sFLOF(5HEG&Bk?Ol59obZ9alF*7+cI0`RJ zWo~D5Xfq%%3NK7$ZfA68ATcyII5U&6Bq)EmV{~P0wJRdj|srk>pwJ~p03uG4gku}7k8kYqmw<* z0rUy+f9$9R1Oh--K!Am{9S|U`c5qV}F7t{?e&}VE*YX=0Te`ZC-!NL*1!u)T!xtr5}=-h!W|7sBR zKQlw~nS_bCql29nz#M3Sz@&fZ2>J{Op#DE&neqP}$^Q>1{(nO7{}X!u@5ue{9Q_ZM z`2Y4k|95CfH#<8;6Z_8r`1g(hd@dOi2f*i^0muXXSu}PgF8`B{iM_R**Z9^C{fh_IekA8n_JF32P;AIh^-&dM} zVze#FE-t#mU?#(FU$V}$VtuX_<$poxax!Zk?oO$w8kWDp5Y2S4xxigL(gc2WFAl^c ze{e$fH_K>B!0JYA0Yh&n`F%#2a`N~8&h_&qLEcQ;oK>E9Ys90Lm}RNVucaK@?`WFT!qUTw zIlAFV=F*zX+^AV9I+`&8vs~w^E!d(}(>68pqifKx zLYb}cJ!thFa+muQY=7}0(4@EQTS$0gWeOzxV0&^kzzM1b_M9 zh4X42)scVhy#T9_gBOffEc9nj(>;4bUNo&AX=$O?i#gHXsV2zn6iv_Ri{{)*(Y(E)w5`NDvFk{ zhe$A8-3^d`o!*2Mdx6jlfJm+O*evXDilL-%+J}Glb$8EMN-Qj>#rnG6L%j4B>ek=t zlLn5X^RrCfsX5DObJiUucOyN~s?^l>hgltwRyq_ohWfN%k4md7L8WJbyQjMC_Je$` z%A_Muoi%ALqXsn%0183uGTn>Dz(Dy~sz{+^0341{^1;<`Und;P^jvJyjK z?X&p7CA$NgtC54JH8%Thtccfb!iJ^bfDIkI;JHev2`cl)?&3g^go9u$Gy(XyqCx(t ze3 z<>}S7%wWit_#0b;T*vTZU7b?Ps=

OC=M8 z{9Wi_%WK_rjg=6_X9TV9DTo6@JQXJ`7$GKNU087==9N!~v2NqxtOJM@`HpbafvIkT zrcP)4wZUp71gIJi`mTiTq8fjH*!nFE{TOO2k479YqX8qT7!7t&q%iwiaOQvMLWd*z z*F71d5Qui#-({yJpdL=cCb&-!!=7!7{R&3+mw^qJP@8s#mHjc+Y}f-Xg22o)!Z zjY9^{nHfydxPcrE!rXpWT)GvVJC5)XShHD{_QjZEivd1H{DzCD3K{BKn9&z&O|s*n zA?M~}Z?eW6^Lp+LU~)70>Lh>g7E>Ecr4@``C57i2jDcwmO-T1J9j^vCMke$vMcmS9 zXbZ&htWkF7s$|X5iKBj<2=F$(&J0%SgVYV?Cc?@ajIdhc5Zgh#)GZHHSVEeD8wy z8E<42g6|;H!nuv$OeA)dzOnL`GPk_Q2`pt5(ixH*I~IWU_UU5G^+;w;A@7MPMOsMT zQ?-1fq={QDn)mdYxs!j+&f6JbaX-}yc<*+B6R3K>&bOxh56%k<kDv+L&gHuEY7v%1*Q7P1)zzQ#z#$CQ5Ss~Sav6RMq2EgRVI$BuIj zx5r^3DOU3Gg~bAov@`p~_+W;ftiJH0Hn+04QckcW3{B)XN2pz*KPLapocLzS@x~MQ zbTyE{>eQ;P=K_DxMra6Q{qY%Od_IfR)vft0%ZG461UAl46%KYOpUSYurMD8=xTw(N za{t8<TYbCf^o#z)Gzi4;J{v1S7)Ig;9S*;)Z8*STIXdAj4+D%R&7oJ4x(Q zJIgphVhj_m3Oum=G5uMQ!RVVYrh)MK9YeH<+?kL4U~+%na(3z6D@h;%;pTqAcsT{+ zT`XlLIedR|={&>+aclcQ5A(r8(u6QB^}Q6$<5R`$aizW}&m+8Pk9Ohet^;C}W+vFc zr5aE89w8;Kq#!(9r*k%X(nEnIs@HcmoHY*+M}1)Jk+9&RIN`vKm3$^s7Z>iHM%eU4 zbj5~-@PmI97SBLi7?lPTHmK|}h3m)UsO2>@qhricmIfAc;L$~#;o$YMeE8H~$8~Y< z@Axo?DsN6`64VfhC(i805VBz$625l#6JOadnNs)h;WAI4U=JhKeSE5&e|~+pnL1#q zikX&ngw|a(G|d2>cd6($qdrbHW5Oll%uK-_Lljc zm@R);i16t4%7w5f49*02ejF_yau!Y)_2(Ye-OJ_*1!l$2Vr;T%?=y!g9ZOjyC`|aY zV5)z~oJ-kJE;7Ed3C84;AF<`%p#!I(fB#`QOr$2C#(AoEVw~@T6mULARx}AJscW<*e- zn&wa(xcx}*AQQ4Gg@7=8tC3n)1-qU+j?(v34UXIA!3doeSI8pY`*3;oq1~b!%G*7M z_Y0xJL*v{aG!bfw`+SY8SWMPdianWan-atUkvxnajFeO8fyHP@mc>W@%l=u*D_5sxm1SULo!Fy&_3PbR)Dk)4NPM zO5)Q9D!f!#-h7`yK6e)p!G^Gvq;g1bpx1Z^xn(H0^NHQ@oV<(mW7DrT$4u0_Kh+3~ ztZgZ=YqAvh`@A!M-ui4Q|J34OzpQ^HRT(s7ndlA10#j1y=L<=aA2(BA+`@nA8?p~G z|FsX@<8kIi%dR4Ra_Q|wVaHSsL&4|#!bDLzY`sc7O+y5ZUPX!tI|NS_atW$_`icYG z+91?W6wHdGr31f@+Wyirge8vqN5et9nRWS8=Uan#h(;isuQ97TK`?OwBZGf^tW8Y| zf*PLp>;=D*pKkUcwF|O-Fw2&`|LR`@`ZT`Po&nxZe&hE1>1FqfQ><{Ow=hU&8Ofd; z(^}sMa_oQG+p{9|AV_BaLj5j`2fobIvuc`O>CT@+EhbnR~10~_S1L^Z1&e(7E! z2LlaF8|LYpJCU&a8-l6uiZ9xUxl6jRHXfq+t?Oqna~xPej3ln9W-5PDOI?Zakx+<4 zf`FSEiTtvKYrn+bTRk3B#EM&wU_3z~tJnaA(w4C$?4eb2z`F!9U;bphltr_T;#Uev zyhiwsR$$=8ji=S?UzFb!T352lXd7^*v&%o8$t)A88ZMA8dFmj-47To8kaX>rYQw%D z^OQPeABY1>a0Viohfsg&drn^w_;@xP?%a|W^QRqZHatP|r9#jlZZBpnjO7>|d7fd_ ze=w!CCgKmJBE@f)LYy`Lqm4-$Qa_QvW(rmLr#AORrDYP%`ptoHlPw% z?x4uCuQJAXp>}M*$<%1JTmLP5Ado_h?1LvZ+xx;QoV61|kXxKNNIjJPi6H|g(3#4g^$!a?jDP;c=bL24A%Vv zjRr8MV>WKdFcDNGaMUB0*ai=+>8{P)$Fafr`Y)>pq;n1iK2Wxd7f#6NyF zA2=<&zx9j76bfbd%*NaTFjM>bO+A!4=qePCUgp8azg>$EL=@%7p3-`$*fD5PIhQ#> zBEqRJACjD6d~j&^t@6$VkEJFt5;wD7VIqLcS+~A7N+5qdW9CZg=_PxgWuP>eAXdLZ zd*q?=4MO8;iSjW;l3P_iga<1;ZCpE|I*8avjACJ}5xhiJoqqiZUTKP@Dz#mU zlx^Cp2TFepNaBMe+xyj)(%fVFau21a#*nolIu~>b(*|*RneNp2w$rk*Wq_{hwG+Yo zgxZB9>8)YMM=)aA-CChE8lf$Dwq}c;+9~LE!N7#X60Ky@$s+vsa#s(7B5<0(KHam$ zm0BWE?9VpV?hEpBk0wr!s|^XE>cW*~bdc3tJ2!t}xL=ibaF9c-`K3n&boZVc%k@)mLbRHx;g|-#~dApXDdbx;!&Ms>CfW3yiy4^yl2hIg z??eN7ByH~wIomJaXI-$9W4A6A?g<-`lOG{o`>HZFe{g@YoIa`Q;wGatPEq>(PAVP5 z&{Kbzgs@&P8N#Im35qN|C9M@f2dA4hO#M;`>npv2uSLZ{Jo%;&Ec`<)FHCO$)ttVl zki{|ExF$UsJH0f=)?#gx)HSv?csfNMN$1Ql4)ZoxuchVuMem^fdD+_Vj&)L~f_qYp zu2~?2^}8Z&-i7QM-?*A$>7dTITp|84gOz{fjQ9{;bmp_=fy6E*jAQ%h(_BnlA;j@i zSgQ`T-k0#>aQ09?r40W>GXLyN?ZS6X*UnTd^qSMUyFL{CN4v5eY%Wf0vhjVGe8!7b z-~=8?y50hH*88v)qmvmiMSloQWCWD9W5Q1H0E3as611tH%?X3(m=8-QjKgtCH0Ka&Q6!wf_cK5~v4twUQh`;Wj%AgFA7j>?8m0rqB*_*y z)o%I(ee;8K3WYp;2A-vl9b{fu;*Nrmay)-EFg;T9 zGJ~G`%b90|QY2F%5w_9h>tdWXr&1Ee27Kn*x>(m$HsceS^DsifFB>#jw+=oL z2#7Dx2s&aA*o6(c;<)^|?9a00nTJ+eX(-ONOqYG`o0Yz~ZAZRl4u)Wphg^Zeq;MmD zWAUvXr0!k>dPhrtucfI!;GrExCLXhqjF=Hb7LA zRv*kmqmJZwe;1WoM!g0bbJ8^LjW4X(Ult@^mX)k6aYTj4VvXRz`<#CY^=?x3{YMB_ z%0<7!6jwjU3M9BX!uRS&B&={O+sk6x)c4tzz_MS9SCJ>G%G@e5@DjlD1$F-w8{s$o zRZ=z|EmP4kx0G5Y3#(M;&P$r_S}>iteZ}Z{TC13%`iuivFVRQOpdV&BL^(`!xPYW? z3Nmo2K=}>HWMhFj`?#) zuuYQUC?EW4X(19g)Q8OzV!6eHk5{nHpHPOt0iaPq3!`&;WyLG;@DHFIDiMgOlcauZ zul>CW(ZKX`65&dM8S@z5vGvb0K~uY@2z9%*$RKJ6a6{GO;+joff92#Er3q$ z%XvT%Yr7d*{o^rrvj!JjjePiy+o@MSZ$M$yfbJP9JM2ek_a<*i6b9rcEcmA=Q@xZY%L# z-V~Zxr18go@FV8mW)Z|=@^PBNdk1E&J>RFvJQ-O@MXa=KsOAT9fdd%g4VY1w>(}l& zm~($j>y=g;9rVC^4=t`nc~L>xhRmojh@$*u z`ebeq8p0EcK&r}_PSUh-ru!suj+-NyUrMc}e2KJo0U!2aJZOry1flxS6y@p}VVr+R zQRTAd+E~{)e@pRvdfQm4>bjYiPhikWybtZ|znu)ZB@oK`;eP~ePMEpp$Vi(Xo)erK>^3g7pvcC}E z=)(}8EXCuO!FRW5Kt@s$t9|H9>%kTmNC)}^Z;PmSzc0>*aRb+fl;&gI=+ANGBhKP zQ>%+$ZaCS>W2F;QF@PyM#D_^)HiEeQ3D|XmzGhQy+#7t$OU<<#mAdglZom+h zM;uN4`#lT9IZLd(YXTi#7FQht-Qo-86!3Bpi>+8r? z48cY(Q~dz|#4~Lf4Zwk^7R(rtpM-9M*85%sI;VTtA6*;B@dW_DU#Nc$&Eh*xD#G80 zvXf#wh&ndBXp^iIliq50%~&9_u6Plx*$6#%&oIoc&Ca!zRL(pW@92@^X%ozCHBC$^ zDvj0cC^7OK4pn|{tMvIe%Vm6Ph5CWHq+xM21A9ZnS%=W2YcKaT+7fnXCJI*Kcg67n zbj?hZijYt{=Z%60%1?hte4*uUMSk!0@xp~ttWb$q+fjlB0SON{#I}GcSWg@u zDnWW2xCJU3O@q_OB6h)2+yz}->pQZj&4D137Hv-Tr=+=KiW4x@t*H~Rw7@eAIO+lF zNG7v*GynjZlx*Z+=V6=sxV(khG160HKuj4gjTmfI6gT#Ab%k!=xX zLlFX!SDwYDE4*?VL8I2Mp#+T@Rjo*+Qs+;Vy-pszdom?hIF=o|+66CMX!+PGy7M6V-?7P{QDld5(j~-I7?S3xB#Sf&A9cXWo>otaZQtrqB%|a7KSY1mcJyUa_@{F-hRRLEpE#e+ zF=!&T_37_mwIgTt4hD?#RzXO~VFI}&&dq`$lX~^W@%UuX{;Vu0+$}Jf<72^SrlU#G zO6T7$f}5<0JG?zH;>k0Nhy?2@^Gp*U>a>9p@_a6{{rFEggch^~%)8hMVp@*X{$BFk zM_ACXBnW?{s)t>ri}j_*Y9@Y_-VJq|U3m{jUs#hwISNNs3}j_~&h{M$eE^)LN9l6? z%upqZx539>n;G4EVuwd8_+^hVLMRTvOfndm5l-2=slXZG z{;gzwY6q~+P0)Grpe`Tz5JK1{ZrM&5C)yBh*@u4xeJ8C-ymDDCmW-~@H`Da7RB~8n zPR%Z`3oauf=S2UGXiUVg8`YG*&p};8{PJ`2W$8DK3tJ(^%JzoCZ(}scM89xvVnIde z)UM>J>pIQ)>@IEtX5=cDf$H*ue3KB7G#A^H5l+J3Kas$G^^8hAxGI3~=ybj&M9qsSMi(u@@674K70_RTPr2!7A;o{d-$aD!=Oq-nUD?I{t*^=yZt{a{WJgqY zfeR5x>Y6xc8&#SXes2EJDx0dqInNw0>9U5mGkc%SzR8a72I6ta7Q&qTVLNHdxQ%*4 zG?;_FaSf}%{H73hIj)@m-;Ay8Vv^;$m*i7y2}`xkhc=Jlhjq)(%N%+`jKJym!z+Kz z*+nTk3@%=>KfXpg2{5b4Hw+;mpac*ShE)g~pk4#}lS#3Hf7y2?3}|V!Ibcq>d&}wf zKAj}{D#lF#9>B2fT18?Hpw5`($e+87QTojU&4g@r=3vqb$2I3xy!~YRW51px2%S*qu&hJDQ5V6~ZT;yL~6(tUQO65B)h7>;1(Y`pDmg$d)~fej2i zQ`;w{f7<)fIJJ=#Nys$tFGFyTwmO1_4KZB5etjwfgL;!GjvS~P#jDA4wK zeq0T}@sw@4ZRrk=nyuNRlUfXMn3A5VOVg`5X4B*%I_(EH>;OC8v(tTAUc6VEeCJ&= z;k7%4QAxn`*?o5dvzRx(9_Q3~n>h;}|6SvDdOSCHL)(JFTNCi(V`VTZ%YjybdtE%C z5YBFQ?sZi;W+9taiM~M|)D(Yx$NAv5ofv!f%WHfg*89r0Z8iHXOV+lv<##^}saK1)absV-t0t;|uxV%X?_bLC@<+@2X#TlyaBaH*!F z?T>wWe1o8&lBOCjn~_aCEO7qEX1|M06kh$Jbw*t>FG0b*?8PZd4oH71&U8ut+DtHf z!-?tZF)5|%D|J%pvU8)4gA#O?!@G??UeqZqszD|q$TE}1^1+qDH*>Bj$OvQvmofB< z8ud9wv}R%l2GkYwiT5KgLYVSV!yg=1;3wG@EA9HpZ=z}wug6DcR@sQyN*Pga{Flx> zo-yS-;of{gzj%u;MnQiKi`dSxWyKt_WL!(fVSRcjp4IyoxLpW(iq559{JWa<3M z!-Oh6!Hp&M!CMt_O;BLgKQRJfXXMVC%aN&I=<_nVdgp%)^OHpccjIWt(ZI4-2;Xa# zO34Q*Ps_iclDqFWM4wJ57umAf9MgKiSP^=B&0t$rJvy}9#z>t?szK;HG>&TUK@7IT zkoozsAlXua;uf;{1@Yk=lI`_7;}fA^E~lWQpgMeXDIyJ~++0k_bwjLPOOD`w{EVl+ zFY-^o@2r3FJ((!gB_v`i&z1=qQhJ!8OLaX;A4*FeQ^2W7KK7?zkyVwNf?~Uanv~akVAYqFtxNI`(>ZAy^ z(6~pT&v5*KaF^DSpG^^~U5^~OF4R2qA_Ex!RAhhh+Ms#;nX$LbOmFb23-{9_hf$?n z5(8sERZ{-`D84~3zRJ+ysm9;6@{>dv;Gwj(n4G}G@-X4DkZlZ@>q-C{LPgM6 z-NeUD*hL7|=jJig@0nTtw%}feFBg^0?D&7=Dz3%=i7p$#OXY`jG7^0((wvVXyp)GU z*ZAicdjUaH^5Nhck?i5+SK}pKJH`ecUedu##k44<=q7SozTQN*lh`R9`8PgqO9t1$ zufcT_)3G!k$iGJi72Z0TLG!a0aHMKeQkU9n;iN{ZNxjB}F+@*vhB`jE6m#F;U)p~t zgv^*uJ-6!X$N;-jXNUZJ@eEfTOEQv`h4)I$RPa;E9+P0~$~&$oF^l^7&174R6Gx9=`2lJLl9W3;qkJ{GC#>o{3EJNMP0)yl|J=P%* zvNQ4ZpmXe*oxWI4Z;IIS1*kbbgu;K0p~%oir~Fa&!TjANAJIIWR&UMk1CdhRwF*9g z2npEYaeBptnituXKQTM7=3|WDS?kd%UG|4pQEV=n-@H#xDEMD|z=QMI`YHhPP|Y|H zAazUE^6ks?ovbGufugrdWYncbdcPsOpuVc@7(d*>aVbip!FJ`!=gB0P_?lLKzYi*q+VhaUc(X36B$wzX|_JKdSRY-6JTMOnO>&7=iRllxJ z^Dk5w)tA|P%m>kaOnB8bk6H$7Xd1>GoPOn*;JlY&$Pzo=&v}E)A~t^$)q70HH|Czw z%go0$9&&o*pohVtCcJ!6GI}zu>ch-;9hH3ld1sohGT~Y_Ro7h1a>0 z>Pw>{yX{EumBN(&J1d~An&%pi*p`i{o*UEN&^fx(PqcQueE4mI>Pz*|!BU3gWq~Cv zNB7209hu5CUMU_Oa?^iNQ=(4mWKZxOE)JOYo}xk@W!wC#j4F_Z|25IeeXyibR%;LI z`^vrdw+->A_EPZ_Rwek$n&C3MvvqVn!vazQzr5nNqsp0XO;^Mr+elR`3oSrB5v6Tl zZNOyLY(SZw?2q@x+3*`m{-E7EU)ve1S2Yv8d)`!$Xq4tm`!jzyPiI)L;4MhVUa|$6aB*yoo~;|+6G{6{HBw(h8V`{(rVe<55v%GM#W?U?Mq>q z9gyq6dW27nd5E;c(2J+t`1}?bgnYX&C*j%YGg4^_m>84YWyZ zoe#0AY@LbIXg0uE)F?0ToFq31k=E|bSX{^U#9!l7`BlYm1O>X%ZSSlVy>04Fm9w9V zfm1}al)>rH)#N7fcG)i9q-G8$=!G#GDO;IzCz%GLQ%!%Erf()&+Nklps)j@;3gWHX zO(Qo6hA_)_$5rMsg9!zn-~1R#APua08b_Y;B+lVkI$!CBakJX|isybN_?~LzqsQ$A z6PS4^Ky7H5*Hj*c(6mo3IbE@bI}5mc{h`dsPg@^H$$g5~I-etMSKCM&1 z9xOXn3<&wIjnc1zCJ##x3Och~RfV`qS(yu@wwPbIlpC8r2 z2wi`?G~rSg>*wBn?}-EM=hKrznYZkmF!4dbhOI53HcSzDrNs77CqgPA+cz+f9@+}< zTv@I%qPZTwRwkB<{O;P>5v4^P^N3k3`Zgn&>|y+F`2Ei7!(08k=k3Sp+kUjPJn_=- z7k=Sn0nWf0i(e~pc}hA0ta6mdWA8wGHHv>Db(ug$J7SiG?dHLp)8A(#E6CEfQZ7v? zJ8yj^^*@WtGu1NhJh1C6xtzo zP$f&$=aTpS#AYcT(O)D+q(PCgoYMMmIRuMT(KcOD9)EX+`>xq;Fo2rzou^@?f1-c& zEf&u6?#*-nRaN*MX|*htI)MZCY_nrV%H=`}{Z0qb6JE>s?PIP=c$RaX_KE~z>xyUc zoh)cl106YTv`ET9r6Ph;_l_=%1)+4|2SWh_I$d1H*o->n;kz7?Qzk}o+?T*=+c$aE zz?Ck``h*d#em11xLn8^OGxYYp&76O5ZTPc!{Xpz6(d!<(@F{*czKhTQ{I~&Iv*oSM zO%VgtlRen$(_}>;UrweHw&%Y;Q%n~nrt?^%*Mv8`7fr5{XNquqy=72c!O}Lmao6DP z65J)YySqbhcZY?$yL*7(5-ezNm*DOY+}%FTdEa}#x_|DE>FRz~SI?fQReR6uHqFpk z(gSTCPWv`u-b|68eH*BPa_qe-qTOVcouKN*m>UsjO}^c*1clx#i@AHXw;wi@)Lg9F zLBG150Xz3)%hkEe-gU8R1**?XLr>2q66_cIK$Mn|XMfny$A7ltV^VUO4-L|;P9vd% zZI@0hNTg_y{wGdS_=8WlZC}@?a^E}#C?$#i(uu6K)%m*EsHkLLa&^Gf7o0bz*?OZ} zOZTOW(xv8Z!kfcRd4^pOKF!5EDAf2U;EXzU(3%dWtMvJa*YpZNjz&p*byF}yx5 z8MQ7Uulj>R5((~r%i%WXx1A;abU)qLTcLNBZEIR(PK8T?xON-Uq5bo7XK7Z5n%VO!qkGsoh@%(4gjCBIg z_I_S>CEX4)vaS>)F6*kizPb(^>zNL2x}ZQ2DI4k-2gj`(4VG^HDHhx2V=7fB{TC#c zHfAus73YxUi{Y_^d^pMozMtQn=~Od~C&{}u&$xku8XeoLWWX(Lmz&v}8{1J&&HtowzRh$Q<`>|#8ms7-u zTjJktR=b?1m@w)38?(1~p_gW`AYza8Ie(C}Y?ZEg66nYGNk{{_V^f@n*%br*I}W#v zO0+TNeQBf+3FwNiHEDDSFnkJOC`-UUBHL)BvMBdZ946%w-3ZHah;f-%sobvDEXrtQ zo?Ns2d&|}*@7qve)qqH~!s6MfKwH1c4X9H@+I_GTRWM#%4}yeWcxIdvX4w~P4c7{S zUvAu5q_c-7&MC&g24>Uz;ICy_SZ{hXyBzT z=^#ezdt`GNPBAC4H3izsjCp}cqa)~67g23u)KL!`>Kcc-o{t%^fbIZhf^2^=YiGi# z7z~u|<~!W(bG&Z-fw+myV$0p4o3c9K3HGV*UH>2J;gc^X;j{*sO4E{dkk_09+Q z99{i5*x2g4(cIBWAq)?mgH!W7xn{eUtTy~dfLTeF_pdX=T^p~2!7-uA-0%+J3)Yi) z%54kMEoz#s1%zi{=-6!>@1aNBXA$1MY^HyWFHfaLRaMfsy2k+eTcwZgY-Ft)IanpQ z*{wza8$Wrs8rLOLIyr*Ym$2kSy>8X0nXP+MJd;5*PLc~Z+Amg~l-i^8b)i|C*;zl( zbUbUcc@l`|70El-46R`q3k6eD3^n$7P5IWbtH<&^(mO5mCb+JN`(NP2j!(Od9&-nq zt6S{lqq3l`*)V`g#FJWd#lapY!7GV^oAPT=Tm_ zZ48Z`);Ncan4kJxtsUoz-_(iI!`~?$iyw==#jXI2+*?55Im~#hOA6>Bq16I~*ABus zgGrd@W5lk#A?>}AWdfN&AtIK*GOPcuvAL`O!#%GblLF-|p*VjSGP*adH(YPPla;zx z|1WXsI}HC!140LIABAW29ZZ+5^)ny!v+tVn{C_3lQlBO6t|H$4*@)TFy!`05k0_Qr zCJbU4Nx1p%tcKkcLb43(h)9TsE z$tUC|c{AT_d$3=gQ45aT;w(3(*|7R`Pm42HavxLz;+eCzAU2PYQ`YR+i%Vyc)LuMP zL~v$?NN$-EsMcMLDju{h-_oyoqXVvOWqrOZA`$>^hQH*z=3q56XnBL=YTy!V0fbp= z>;j*?3V$qa@4M_efzL!nwri!;3q+Z<%&)VA%V}L;#9q*k+(WPh!mz{ICgT8lry8@JOvO_)-D^rXe!qn9HINtWqFc$_cAZcC=GupBe@A7;IkbhMatR?@ze;eC z;I8S)Mpk{txqivLdG~N_PwZHE_!L{oWqb?OceF;pZ|)u2p+zx8D|!C4 z2kXn=xb=%%qVQbJIq_OJNm-?jSrF{q1-ZKzWp&Zg8Hvv@?;`BVi&VNuONt|A6f9ECigem-7oUqg zlIwCm@{fnNzNba`?iZz+h;A8kEMZ|~k3FFOh?5LRaAc+&_Lx?=x2 zY2PuJ>8tF3C)b^PQBHRU^O_CfJ)|d=>i*UO^+owAJN?ElHM5b*Fbm0CmPFY*NB2m* zT2NWRLBLewaHg!lZbE~ZoUZ6&wPz(hA*PZmt&Zw=;);Ul`ywNpe7lIZz)3tF}9YlXSH>@Yt z#W*;h>*iPHG{-r-KZY8Hu=m0K{<2)6Mv~IAI3=N&9G$vwn-$_F(cO7aH6=|7J z$v|u@EPM|jYuG9%iU^GONntXsSs0PAL_`EHn{~F$0ms+NY$nEPi&9%HRnrE)c#F(w z0a22`b3&q00ScHLbw2qx&Fmjx_&xq&UZCu?eXyDX&Qn zH)G1*)PgUb8oRy!S~n6sNX7Ye8MG&|E;bVtPxgH~aTdo0O`g_@pDkH`vwe^tVUIwNp&EBtFAwJAPe+ANmrrOcb5>vWpNJBv9H}ipsz>TeDne>P z3U8s$ebTFqJ^9;lA+(V($8Ea`;lEHOyv5g?pN^%y|Chm=#5SRBe~4Q%B(Ax>>Ki#d zi|b%BB$$sTAU%$KRTfC_Kyek=D!?NrXsXA=o-$JV!JSSTz+Ux*9v#Xmraf1+w<|$# zJbwa81sLVBh?pJq8*}21LEO-gIx2Uq7cqyynn?}ff{sdcIZK(fCdJBsdb~~z- z7>Wvs#C$2NX1yoglN6=)TL%_znqW^YRSVXx0(2^rSAYg9oECb576d&fb_MohJAPU$ z5;L|H={_u^P70Z(rrg$1j?oP>D#$|ahc{o)_@#ZMNM3ieZqcj8;H_7GL46`M@|Fq< za4D|!)jryY?91~jDKbrvu)oBeq^gF~)grPR0xFVH4Y)+N4y>rCgoKC~#kLY(V1{yY zLIr6OIQj)`F1yi$kf4G1xvKKFNaJq-eq!q)x>{{rdRAd_OLmElG71uS2XzrdEfiRkF zXY^55_17#L31k@Ra7Vvkg;zAB!lE=MZH1=VrXXL(;iX(eu$mNo?ebbDN%we`x9=Q#!~Y$|QA|EmzGT{Al;OK%%4|1X+NkR}!TAN)k{uihx*E!Lin zHr!lG$g6nHG0#4xt5y$QW3DWr8L1kW`DJ!r7`bUF zscd8%*jkx-n0X$zPY;5#xB<=QWs=~tMg)2hoD?)i-fCC#;xwH9O89XO5s|Xh?YAc+ z?dWnX(!$!1c47Q2_k%R-V53;7U>l2>k6YY6L}vm(C<3fUQDzH-9n7BulQqCv+fekau7+YTORRPN9h+T+uh|-}<=~hD};4&>D*v z@O$BQ*`x>Fe&)#~eBbK{Y~6qb$*K8#B!v`-ILE-r+g;z$+h{$(n^kPC52g&Fb^jrQ zlAC{;A;CNz6=I>9)n&+r#FG2V@9hjtrSF?~+K7uJ;5~NCR^(z4{{VlV+k~1v98gQ( z!}+hlE%7-FZ}voJc8Lci12AFl241x=P32sO-Xotevl`(q0cb3?R=rsjC?h2{Ga(ue{)^?F>+I@&gVQodwQvYXG|_UQrpD+=;_w{>Yt#cA zrf>*W(_y+L@({RW7r^m9pT*Ksj$sh{(92;ID%iP9XVhizcib`A)Ovlov2ROTw4G5n ztcJ~?(d%d0E~J3e{Qou->GU*hUk3!_6MjR>7x+pHVpdbZ>bD&aV2YkES&q?qZD6gWs=}-N z+7L(TMWz_&~kPeb5XFrVqYW0}Wszk4hGfH&JtaE}J16!INA}Zox3B)qSV>s(9AB^?+K_QH;7>J%p~scioe8uZ zy5#qUd!?Y{D|#|IP)!m~3GNh}XIQ41bxI$?+aJIv=U!2{n^D_|Y{?@xVxB4U7=00OAC(;APe%V6q_Q#la-SCL{$>^mP|7hj4 zEAT2N=3;*A%EY-jiwUpf)zdYKu6qNxe4dZKI2Tv}eqb`nNe;;xXQO#sPo2BdMy~H+ zek>&gdKlCh#64+x{Mk-xFK#408Mzvfc?2v2mQD^O#tC+^*S9tY)^X=BggmJ&YAB80?8Kq%nP^Lx!%Z))37~j{au>k%lrSCo! zrCsb3UkAU^e53#i(N9qM4Tig_@p;`HZ9rmwZAzwUR;oq0N(%Swu za{AxF=FNG|z`nDFxZzup?vs!zR_ z3+@#p>F>yY_KHc&dc(KV*anX5Q<71>?I&<*Lh8HX&vUb`R(N?EYh2lwH$5Eh&q{t+ zTim(&KYQj8onO}`)n;VGn=D>l^zsOjJJ@UU=PIWAwq|C?Xv)dukEIzHrYaEqvf3Nb zfX8(sol;PmisM${ZqW7cT;&l{tn0EdVanftA6{^24m$VyVsY4XHU}(PzAQ6!Z>;(_ z39s_o_pg*{{gQW=T_w$%ZJs?`8wLXLm-RN^CC>dPmR~Run+Yc35{8D7M?4#FY8COl zIWmdnvv2)9-F5`@6wB@oZyv0g9c&I18@#fo%RUfz2>Ug3y2qQ+?v6?_&qy*i{0P05 z+C47bj=Bpyz)aveSzif~j2Q$zAZ27Dpen1KQ!y=x%Sj5|^5>+8UDt601inXeXdQ*SsX z)uBi-yd5*5qIG0bFROIl3@a5WgZNlR;je$0EV{H&S1eR?P>e)X0VV-y!n=?s2bW)K zW>__};R4fW1?X{gB!CPSIRNzYdyN)r40@z-ScEw4B*C)`j}UTe!!QavYe|hxmb#YD zq6zd>P-SXQq&R_=WULWYz}-A}I}C-uXPQY5v5xWqXiMxH`eU6tN$Ux+9P)I1vk;+3 zj!`Wr%!VclMuH9koZ)-YFg^oBU!?e$7G56k&)*_7`coa z8))P_$bocV9)tNsZbB<0PJ(`*j+q6aCIDP=oN%^5j#s2LiCIc+6rR3JR~!5!oK~B* z-sO^Kpnq@Cka}-_akZ4JtkMivbDeebS*=}2-hP<%{`^|+{N@KZzmCniJGC7dRADJ< z-k)wnA9&xC*B(A@0UcfEU$-~8d3F4LzPG|Gi9X=4LcueVT^Wm0Vg3mGn(sBrl0PV?ok=b;{(*lE!A zIJ-+4*SPWObZ7bfHQ76`vBqHXwU0DVPs8od-h+7L%y%|aCv-F<#IJ(!MM{o9yVWaW|acc;w z-vRB~$GNShj5ynW_z1mBV9wEP++n48)}4Qye%PF+uR>1qWH8;#bE+lE0c8=(N^lK& z!>@PI%Q9%O>7!}4+TpNq@Qg)Q<^5paT)@HmFTDlhsQGpnij{0@+@FEEw$t$ZbF!MC z;@>uF0HIzPb^J!R&&^oyO|*v)wGYCIou9AeXCvgA_6>$Sc}7dOz*@{!Ng zsCTBMbKkofi%hW&r`V$icd>s_8>hHwx<`vm#1!5li$!^D5%R!)_ev$EkC;dqFs}%A z_3!raanG2l-v|4~d-(%9WfJN$TA8X+?87inptd#}In=Mo2__Wo-Jt#ZAIEpX4dCx2 zkOP}lSg(8+hI+Y$=%3OXAN8V)vM9JV63P6hyx#wpX#Ex9S*{E$`L~|Py^YAdKdlbG zWuDFABrhD-EnFq3d2!}RO$cMc$Jg3s}#Y|Vm{n7WwmCyEoM4rci#9I$T6 zPJo9}PUxrO6F?`|o9#s0=8w)P_4;bIOYsP)@Tu2~0b=n^*fo{InZpS+4{v1+#LSo} zL#kTJV20pSK&B-@IDyhq;xIB{r-$G#ZB8b38Bo#Wbu=<}<=_M>BZWua#gssC92lzN zMu{Ej`wLYw7)eBZK%z-bCQzdauuzc?YG8b)gGYvGMgI=-8z6WZSqd~c6~b-)%6H_; zMVI%uGonpRK`!FXdWv~YoM~Xu_ix}W&cL;2@BQuwliW6t-PVuHHg<(*%k0tc=cY{x zp+~fnEKZBS(mln;d1iPdaKHcFg2(HyimhwCS&hkgzM#S#VtZ%O?%om$)LR@am*%&~ zTG(>qYi@s;$&Ib7+mjH)Yp!j6>-e*}Ed_ML!=0MrAo3e><%fS9o)Z=Ho!GwoZXQ^4 z<4zK^>*_C8`Mx6dy}>qydeAx13N2Q6CZnN!P$b7^@ZUnlU$gJ5EQ4%=YV>Vi(|y+( zI_psn^Xg%R(!hox14h9T0JH#lhy*xLDg+5RNE@029mEPFBmpWy6ruo`A_qi(#Bc+o zKoJBWG_XrnP#y@C2gC=yWd`B{BXI_KLiUV-w7>%nL6@)rsbF=GpeZmTG!Pwx5gaHD zqK6Db0}%iT8UqV}1&xA8z2SP%^zesTMtB{C>< z21iSk6Tl2MQtxX=M80#+ymECMoM z7z`B+#00Sg2TFwKAqN>i_k017!30QxIuHXWL7vEyYsO~?DEqIqM+|fhWF0)~u?@N!>te1hS@@JKRjrX*2e+J~cG`Ad z>L;x1QdS!NQi){GF4HucrOJzOmenhpjKOEa+A0_pccjg8pe^P!OIWcm(Akhx@#x1k z=xEG~skvm~Q8rbTM;091vX5G6%YR{+u(C?|+mJ*hg6DSY;IT|3_`fGiPLBT^DXBi) zHlJOEnB>gtEnF>0*g4q#$88gLd@Bmy z7SA^-*iH13eHyhIw-`e*UM&>Qqc^+^j-Ab;$Cj^4@ zAv$@hC{ez*A=`)ymT_|*G6;alN4kaNz@(F}7XQf}uKoc&Ri`rZh-#E#8>$<)plE*y zxfl70Di>x3FUox%Aqty$_ZL;A-VJe7lm_b&*1v&RE$knJ9-Vna;v0>7MCMTWYd?Bm zmv_FcSUmbyT1UZD?h;@WML@kMqC8IdtE&02u&8?)L;9${+lu-3FoGF!{BNe^bBb>E zG(5i75ShFTcd9tU=4k_g9lKpt1qmm%rpYied3VP#W+t7iN>|gBH=2mXh&JIn;J3%8 zScdBr`L9Z38RMxD;H`J61n}Z%>M*e^KafpqqU&jebd2$)dgy^terEeu2XuV5yZAz0 zq`U7N-;qj5+Mm1K;K)BalSZsnoBX16ZmBS%edNum)S2`=*J#RdsnSK&smt50ku6{& zcP1eH?Hp@!0^fJlG@=`}dt$l4#$ePxG`?;PldoD)Yz*xiX@oFKU~7cn_G>GX=@kx* z%0)R>{u<)x;!3ZZwFzeJLL3fvwT9D2NNoh#v@miAnyN{ulv!4gH&d z5iFY4Wlhlujb{zvRAP!PrY$1SD=<4o5MxW+=m77H>HTpC+t5#om~&UjkG<~&+px2O z&f@ttecs-ex945D4j=fl(DUId`0idl7V+^ko3A7KZaWOn<5sY_v+N~vs#)Av4*w7r zE#%na4cl2x&}BEp6P5J*o4}9T@XK_#bU|r4>@?H1U8>n`#GSC=>_4pgSksxKU#WNE zQJUo{>GODFZhbF5RQ+Zx(a_sv{ATCI#>e(~-3p=oaYy6*W%~v4?yjs48{}tY_BBMW z>urk9OxOW6sbO{Ya9!5jNnxM$o<0Mshyf+x&EmTU;(UXySML@g508h{b*&+! zE~~cnb9eP`Ee#JB=k|`}khJaJtr)9a-LxFyk7v`0do<`Zf5YGWcsjqE$tW{VL2+~9 zU%SM0P3-#JS^Z0wi9$=P+VtktO1((|%_&V-kpT@#^q+@vx3`X94f1aLybB>^OK}c9 za|+O8H-@z>BGN0P9JK*#babrSJ-iTWX1low;_0Xuefe>yis0Pkve~_Ef4ARv|8nK{ z@|+F-rx|sHGv*xcz^tdu0K#J=J#BSSu!EQwj8)>VNuJK?onlbO`Mleyd!v6px-Atn z84*Qu!_-Tk7Pb_tu(a2Zy>HjLeRF%Q<}}bO9<^>!L9DiETu8=MaCiz1I;79x!XW)?sAy) z!S%cX$euqZ5MLhns2*&u&$alsv+=>&*n@T}SmnPG)05|2(3)B=HU4t<-t)45MKGF( zwXz%#(R&o&rUJ=veIvl-xGJCzvkAN^weVX%9DMx)`tj%L;3w-HTL-m@ibS&R6_x?4 zxIl@FM;4Ay@q*-&TFXDf6K;vDYLVu(1Ow_E4}EKtSLxxQoU7``%j5UmGxt}mJJC}P zIltesmyj|K|DHjyQ{i^}UB^Zgk1i`;i-L@x{r{!=y4oBY+A8Uu?bk|2A<=+e+|yQ!Cpy!%~b`6fjt!l$`n zxcZjeWn^;QWGduEuwsm+*n8Q(KypZ$4jT{#2Ry5H*j31-T2D^Koe zpMI$X&Yt|9mWrglTXG2pGdObR-!?yGS@>1?k0wuoM&NsR=Z;}s>&6Q|xjvpc4#ZZoO!l;fsE8O1w>{gR8{T|@tyuC0ol*r& zfkipnmUpCF-=ikE+|iux7UjQJt9(3m-%>=h@M{M7IIjv^#Xt1dTZhj2qqCM=cIWO! zKV%VC*Br9oiN75l;5wHXZceS=m(?x~I~@?*HUIp+ z`}TA4UZmeG@$6s>+cMS}Sd5fyQ|NtMH{IZ>A9oj6$u~v3_jD*Ys&V>1<1DxOP3MB(NkIA<{=V zADr+|L^<)H04>0*#<^N&O4x9B`K;Na&@?`VIOm4_ls%bnLHe~0Se&|aO|U6ApQGwe z6=UtV<##DgHPMLFz0gYpx#E>+LwJPGgJE>?+IGFgm@YlL2e(@1ng7g_4t6eW|{|4gOb^oB8;Ym-#D1 z$LjgY1FLMfo3jgIjTc3?su!SEDOK(JI)h^C6@YW>TyMxP;9w2+>ic->?WRQvzM6AW z;T5E?cs6^rUwy3Gt@$~WT`X8e)C7JMQRKJP ztvTw>IyEFf9&_Co_T@`hOAcxXvFA9PuytS^i8G~8VU{k!Luo{G4gxEl1^2J;bs8d3u!%nD1eqTAU11&Ii|(gb!oS*HYSCVAy25*#`h#BIbp+VR%jvxO!%(+G3R3H0Y< zPS41eR8Cp+2Cu;qSP9WhXD{8w_ ze+!~m9_keX#3ss{=Z4Ad8geu(8nt0>3u6C5o})g4+a&`;{RE{ilBg{v+-7COTO^-@ zG41%DUJqt5L~36c(aY2x1^Xu%qi{%-I`Y401b5GrJAD77f1=Rswl?;2VOS~D06|Mdu#%qlWh`%7C$u@^C=bMDnBQHpx&`W5^ta^nFRt!uZ zg$osR1Qe+zawQ?-#5P2SEyRqH4`utY1OmxzAd`m43R546>ZkB?rzo<%B}Yi3V+kjv z{)3NRu^N;hXT36cv~MtLsM~$x5CRUr{~RZj4b?^uCQInQW|B)NG|l$O0p zC0Rf=jld>|aE6KUngL_BYl1LZ`3jTJ zYTBfxT#}$_U#LP_wkFah^8E7qfA&u$JSPmYG{O1HQ(k{m^$e8lL%5$ai^UCx8LlkMO zON?~#gJ}|IDi~nJ(FdSl8stc?P2dB;>F5f|8)&|^DD@@?s3{943cxB$D67~PrWF0E z3)%-S_?$`{hq5U^IU-RYSotvFlb8a^3y;FC8js4_)4gy)tf5+_#BO+I90Q@@B}@;murozcJ}nIpB)WsdlK*#9x)3ZHSgYUQi)+K?k)gx3 zqzH1)`KjHa8W~c;BfAm*jOi&fAyXgVQFBr&LJxjpHSA%g`q{k)0+yJxk%Go(iV1sS zQ)ZC2bYuv3%CUmn5!CfqoWQ#GHW?K_ALXMI9I!RFG0xF|ftgg~lcXvht^HX?mfrhQ zNTUxehX!W@})l&Y7s?r6!hFU+_rmv=|qI7$h(7FFHZ5`%Y9%V>e zY2NM?Khp7*Dzl{mMdoN`dNY4UF5Cv`J-5~-)Wa!J94`PB*eHQ6UyzTd{Qy`DWXj@N?k6rl44FcFcATAM(jGz#5#Hr_m^Ql_A z3+__Wpn{#@;uipQz-Rd)w;^IO`e_J?>#|W&{k?5Cr&4WJ{6KF%i;?wEc|zHAa-J|Y zTFxM=n>gu#ZrboVkXF&#wN!84iIH{xm~}wBRPSOakyg_Si?gOxiJXnGuxm>+Yl99$ z)#}+ez)mzl9VMW+4UfGfFTH;Qt>W9oQCJ9M~8{U~P3tC9KqK+D+cQsFrgfnd0HOWoH` zcgVGgl$k%{6&{vgaCx*%`qLjN%t!9RA_132AaLT?FFK>6E`i4^(`(w~KzQ6sDd%Q& z^@$5JHit(uwK>~hyC`fd=Oi~SqodVPCqYiolI1O9n)*N z>ZCV@v3kw=F#V$Gr6xW0Uu~vMsJA2i%kDxLo&5j#--nxpCp|t3DhQF4nT45+nVE-; zjh!c*FdGW{|BDD^LzRL3*XxLn#K{8BBw^+3;!48F%$i<53C;n;>d40vw4ilf)NZlZ zkhIG;biv|4Lynbcxz|m*Pm~5C5t0t1abO=!UgyG{Xlu&45WEja3+0 z|3^9)rmNWqT-`rJS~yQ@-U_%9t2ksZY7NUExM;I4GO&m0+@$IgGc(1e1EdTy>{iX3 zl%qxJO*!RSez}YlqZAMOa50t8k(Lc;R6A8ouKv;$vE0f)<(vz9jh^M&Y0!FU`Vl348()$$@`o4BoBTPj!c zQR2f@t84_eTPlhDmq3Ys(smP|ISi~Lk_Slpmv`#*W;|mrV>+^0j4jP>;2?0sc~Azh zc00m4X$HNJe3WBcU_V6y@K%$(KSoTWcRNpL&_FRkuLi~^;h~e@39F`&;2E@zbuKaM z`0Bye6R>zQ1cOt-5(g&AG00+6KFA%G`$?b>=W)s+{VWL27wK>L82Pv$Sxr;Pg16t<+Q-|ayuB;{uu^r z8jwWkvK4XuC{3QEh~m|IE+JTAq4>;H4tP3jn<|C}hb`~efr4tWzd(~H@mzTLNvSdr z%?1zj@ksvi+#*Q5!K<}lzn-jHG~RlRI{qTT9CPD2R_tWZJ43q9$0z@}aMJ`QqFNi) zYiq)Qgp+{~Fj&?}8*X^hoJFk~Cj+3*Ai)W_UT>G6*B~JgCb)BY^x(fnXk@B#!cCUB z!*RGKi~rR*#eqTMdvSxav=H;nA#hF>Yt%atHAThVlr!1pNctJ?=8z$h$3ruF+6#JG z3X1Wdh(|gRiOa>@(3qIysOk-Imw^;w_=q~NZx%(u?nPs+%Z*J^T*Qol|B(L~LNh7t zfm*|B{)i8SxVy^NSuBiTx@?1#MmB?ANj9rTypGsp!a5jc{n zKOqJCM!95jpW8;1MOCMOX0$q?^It22UP`*3nn5c;92uZ(SnDzzQ`9QeIYqRw*2Hi# zkcl~jTQ4YtBLh_p^V156p%D^Q$USV8IwX7!U_*!fOYiMl97#$hR7j#s`QeaO_jAW| zM1}C6R=c%Xm7aP)+HJ9c+Uj2rn;A~$$niA`Y>l@sqH|>!PViEN@(>BV^{jI5Z3<8#bn$l5MR;DH zVbykJX+csy@yiM@jt8vZEv1TALuXHm3TOC>4|0R*%H7H?{iJgl_xI~B5c;`P&$vQ4 z6(_iI_f0y_m)CoXE5+Y0HTNKP9C8`-hIb|8R<|!pO)-b#&n^qxLLvKzcwv`os zBIlA|)XasA8KkW27aup!u6-QW)2_WA19eALttW0%h>bBTQXKmsV}2U43c?a|z39;F zGIp27)|Iq0fmznQXSHaoCj@45+!ZKgjzZZg?R@#xI<$JB)}@hY4)r=#J9SkJ{i{Sm z<`X9PcTvZkw7yBIhw|IOIo|5<)iEm;@bUp!7Vr!KIu=QGC=2Fi#=1u`3hkT3z&+P& ztY4^&@yW*PP4?BI`n&sMv0&;EnNB7nZ>pbQgM+a9!VUb)MZVzM-TN;e{yTaPKw!PY z$MdN{cg%&9^IQ7z(Fw$D;9~D~MN?Bga(w&jd*Atf(&^A)nIKC3MK|BaOPAn7ozL6R z(XICqvF6RUukLC)<&(r>Zd)8Ofd1G=w<~e#lq?$YeS29x%Fygf->!~} z*L5GBo@<*IE#-FqRSIC#$??kaMU9&-V`@*IeZTwm?I%j!e?i8YytYsdN zk4@SuDWlYLd0>puz}@LODqW>{{_7NQH0I!QUE4+=39`RD;E?CQ73mGUbB`X`a9KR zcUOBcUhj-VQ&Z1U#_8{5>}3Ps#i?)3#-`X3=91g2LyRuK_~t9E&)J=`o#~>4Im~v{ zV2vgHY>R)o4(YUdfv*=JHV;;f&*|@>9oQ9i_kvZ4F#X#l@%aCe z?8Qw>Q`2VgVaz!F?IlbFz3shg*`l|LWO+0^1A!fMYDTC364rW@Jzb{!R0ygXw;dg7 z9*d8B)nA=(JJ&SJXsvtFgJ}D7HeH*KpEuO{V{a>fX1lHeMznu}~2^y}ycd~h_ z)mlH**aL5iN86XK$bUZ5p~vnw?N2Xw_xo;$UseHvhj-8X#|FULf?1V^SZU(X(9tk| z>wnKotjy_Jc~GPPH!F)iJd>)Gw;2h`ClAl0NutX_!bb8RRK>x;^%G^`CSfK~foGDo zH+T4t$n(FV7>O<)yBH5M54Wf|n3l*&gmtOb$#=D41xJ z>-NKoL3+}h2~YpEqn!ThFSL$UG)>N61~#JtzbcNYA7Vr!B5u}ZH4P#U{O1qeR9*pj z^Kv*g<&wv9)5Ui2@qaqG@@T03_iv0D%uI&t*^;edtds0aNQID)nJ`8~mZT_I?ijK( zNhM1|*_W(iO^6v$T8L~T+lVh>vSiKj@tgYozUO@Z{+@Hsxv%Fruh;Y3d*1K&z0bMl zeV_fz&~9Bm(&4REb)GgF34Z`+X#h|N!Vu=O$r%=ZRR~4ETR{K3O5re+KyXTU`LbK8 zeNn)-m&N7M{^DStMR2r(JAa{X!acN8bPVG>p)v6U9#y450CfqK$%W)3l&kbzMr!jn zVOY9diFm=P_w6rwM-lbts$8vOG@8Zj4wJlb~bk6%}RgIu+h{^3Cf=%YD zLORwg^{Nc?7vc>KN^}VO?2A?-Sz4>S=T>&|afLd? zKbO-sy$Q1t%s8TLZLd^uu*t^CWi6-cRoz!2LzvQ-<4h<`_%XGv{wjX`V3V1>al533 zPd=_M=}sEsXcZi-K#L$uzrQbS`5ncNlMi`O7;{~+H|Q&1YMfxTnx4L^iLsBx$q!ms z85e!te##IaOrbs3X4|{@lZE8Z_R8z=*LSHovjviX^%~q%pqM-a}@Acz9gQ|l(uR^Trj)@)#H1xCKcvPrIlq~fi51M>Dqv><(ae>kJQFZI6 z449uIvz60BM5mti5hAUo4qzOG@+~pa!t$3eB;ouk7_6}T4UDF6egp<4j1Yn(*sIsF z33R5TdXTUMYVOcL&Dm+~!*XL&<-Kq|qJa8=8Jgg`kT>dLDSdfNl?E6ft;zWcJT5#e zO*@lr&B<=fM?7ivMn;l5v%E4oG&Y;R42q*;0ukPa`&OT{LgemZ21S~|u%J3-x!t22 z$kH=Xv&tPU;ZLJ)#v7q)6^X=gs=vw7KuGp0AEh4sT8T2wQVi!HvF& zc~K#2M5)nF&5#esTY%bK_>YnLRX>BsZr>xu@I{W(l&7roC!_c9Vph@bMGRi&te9tK zEkI0}^4VD#O2OhcO9t=~I*504^FRp$*?U<00o%ciXhEhyItY12Ikv>?OBHg>xyJxv zp-)$(O0Ym-7-KQ$4r*?nq9?-z#`8-;O_^vN0-ZTDuyhmE!Z181U+H?NxnkDWF#PYtMN*6m-s3VU74ZQD|S1DQKE zj*&!h{RK!C=fx|>@=VU5QZ{hQj|GBrxZZwrKR4N7X=sIvHWdlab#sA+#tcYmkn-8q zJn1|lS}R*T3wY^LWfzE0&(2q(oegByqR>A4DCtXNwz48kH&9xgt3Z^l5GZ~bWY5%2 zuVUVm8K@iLm~zl#-z^Rg`s}=XFM9qq_b6nO7NL%OLE;wK9W2{6)kKCgWtyeNYU%d=PcK4Es$;a=gJbD?Rw4>#)P@MHrx=5!x1iP%J zW-L^Cr8p}mGIm>h{;HU~KG)GIt(3aPQaFd5CRbN1s(7N$B9SBJ%R7$wtABa5!^hx8 zItAUA4!=bY>o8MN+@l_B0*)c$r2SBbJ$@t8EySdjRdN?mf=Pi)?7OX-?jc^+aC7+7 zIM>Wc=#k|#B_B^_`tjjo5n5N$W#zuqgw|9{3*6xQ?oL zHY0swDg|0jZ&6mV-$?``?(h!H54qQ`UDZ2Mw4hq!KjA0{@4u7{%-pW{olCLH_7W<# zYd!txZr*S}kuudJ(efIUcxe4^j79DUFK(rQXX4mIZ|%8<8fUg%#i z+oie}T>;SCPwHTM*xG&K9~c-EX0@6AgHz=PBl}rJU}DQj3Wd|@@34FLAXM&W<$ea`X{+w`42oD1>bEfn{7^YJn=ZSA-udO; z(a7<2Ch_Z1b8h-fUoj=`R?9n<#PvC@`B}ZH?y_Q`sj6RH*=IL4la9tBe~sbE&L^_P z0zQU;QbHfH_qaTsikAc|rge_I7tl58+)R(Snpe@m-VNWGF}lB4c`WwrFR)49-Q6@9 zXx!(><=gWlhakigq_fyRBtp94d(PkS_kOAYX3eQumYpk>58Z-9tb?qQJt&f`(^DcL z`wbO%?Z;DTY->xQm8W(l$|tD&mbVXBYuX8A)tc*D3Hn0@!bO;wlC#rDTIRhsYW=@e zX@RfjcOcRZt*X!uGT4UI$^qogG(!nE<)a2yacfu4d-OzLBW!pmzt zC+7rCjBr?T`{dm$g2A+x;_V#Cacc#FzWP{ z64o^5pkIL;^QaiOh<*d^_S-U87nHtfyIq%_QU6s-R?G5-0++#9Mk6TQqTnPdd`f1(T-h00cujI; zX5s!ANX58dQ)O+!-m28ms_#O%gCR%R(SjtE@Ex0e^ZHAi6d|LjcXsr%dtN5Lqw6S; z?+1z?g*J(E0f;+LmtS{bFPDm=Q9lYuc) z0Qb#Axt4VqJ@PW&W0$0R`@1{$ClAD(91S7HNqPnD&;sBKzy;$!+`hKT!ph>M4crzz zzma+1Hb0&}4l{ZqkkPhpRI2(pL25kk&f7#z#P{V#rZ;c5wJia-=PR*qb@?oGE`Mh~ z-HFK2eDe+4=POZfx%p&t!kGc2V`M# z$B%74do(!q%KPm^v5ZI{HY=R#QcBq^LT~Q4)2$d}W~yu!2xX*-Tg$P|Ea$JiHs2eO zHqg#3Y*bwPqBGmpN4QGR`=>2AtW@PtxSNyrb6a>cLOLZCY}b0~#kD+hkH^5aKWDMq zWIRmYkq7HvH&>hKk`p<=ZQI(Wkdj(m2a75ha3w45Uw$rba2#==>Z_e>_`Ol#YYt!$ z>(=tfvg;Qga0^qMyj^ob*?*76RPwhF42s2&$I+FFbaAp*Yl#hJ3pS~YxFG8hOwVn~ z>T#Z~c+}J;Fd$^IHD6+m^aA=JUCQXnp5{}lun#4tS38nk!h@VTUEE{u8&uXxMt2H_ zx*ARoF}fS?r+Q1{)=WJbQwwHckCn|T_+MiS-8c?KwCWY*4IHkXt8+auVxm9C@jM%T zE84-tw>H7tc*V@A>_3$cc47>%L6jy(Zd*1IlzR+)Khz_=ft(Q0o?k54o-;dD6FtHz z9j@Pyd?ZjH0)bsy$+Ay-i|0W^%i*~sA$cYl0^1*X14nahD(Ai>vr8E8pGpPN?Y#CZ zElH18m1N1(Y~Tza`H;t17h6l2hZ^|2=my^TdtJfvK@y*%^qHy++>6oXRD7?fOv$S0 zvKX~<1~7e?s0Dh+hJ!aNeEXP+^3jH+h)7qj|3_ zZYIr0r`-|xZulwI_0y8~B9bF!lV@oqR)))au^0Fcqsx%8qd|1oy+Om~TLb{G?0*Zp z49AyeIeb&4yY?W&W$8)7wy>B@v348qp!Q$Lvvi%KpY537M6c{uY$eX#?eG8s$|E=Y<=7;K#2XcMnq#2l;I&e*Pt> zX$0s(8K2Ib=cv~atWS8-M|630MKTj2NNiNqMJj@JEO?u;Km4u7SXf0?q=FVPqH&r% zunfXE#!>74f2TFmk`*OBIVpUULLYG#tp6^!VU!$d(v?LWNmK7vV%aHl9o=7=81S?y z6K*ceGxr_a@{mF~FLXS8_yP+oTy-1j)$)x9O?mhNhugvFVe9KhWS(F+eRuvPs(0$C zu$gnOuZW!^zh}Y3HzU!$4tL=YIN@At`d78WHFDkN**#JHy)+KToHg>Xy+8go^^i;V zO4JGuK9F*BpOP({CqMtE22^Uh-to;KcpC{`{CLCZVuXf+TUkjGMIB(1v1)~biKv_w8HZg|#tkJDsF92t_%#Sq+HVuXnIR zDG*px7{twrE^5ErAr!80!kumJ9Mgcfm7!cpTGH7UGf#fGO(=QGa2NioFJzJ(mUZ_s zpyL4ENs*nsPVm3gj2gD<`9I0glq{@T2tvp+@AuNK0V%bi;>v@g!%tMiG3VaJKhel# zTjFx(V$=j$%(f0rTK+G<;(w9_jeZ+9>fgNvY;`gBL1_7Hp6z19`2yH={R;$)$ge@#X$}Y?!9NPPTn1`ryhy>fzrJ%6tE5rp!EGGOJZARe zLYu&cO(ces;-n}_Nr;h^GvX9T-YO*}Oemp)fE&X}C?!TLNsz~riU`vUBqYotOys0S zs>+gxegu>(l_<%S78KO6AP^)oNfr`ZCJ58l;^fAl-~gOhK{I!fU|6DL^5Yg#MlwZ7 zdC-Z939th$6%9}!Xof}+Pb^cmw|BO)T{ zLumm9b-sjsr;LR(qZTB`jA9liK0KUa)5c;J@)D#_`EgukieQ#F;TldrSXXisPqD5@ zcZyC0aDZAckle+~aOSvKUFLuCdf0m4;UgnpY-DgT`g>pVDA*=zxbGK9`^|fS62V8{ z>x>3_!4h!vVI-2Cf)u4&WM2Y(4-!h%M8NVQ6OjYx@kW^%SSQYh4q_$|s{tY-0&T=h zeDq{T^(PoebyPek?I+Tp$2^J1_}OEcNOI$C)&Q7SGBd_DQsWgtXQr9=g?%p9?*V2? z4ageFc|#^JpEU+KsbmqN!_75TaMN+Ve(v%%^EC40n-1Z*{~W`31N>{l$_gtP)Cwzo z5;)OI?Gb!{l0@`upJ(?Rxs<1KH)Y&hI*ieSupXaqK0=<1(WK5&BLPR0K24S&jXGuG~)GI^2Pw4xhh(KOVWGXknc60c_XiqNkv8!=o-K+Vf z`C8K0G^bu;XKUlS?VArVPr4O1F6>m%TI@Pvq2+pRvh*>vriT0>Aj1Vj($bYlPMI zwdux6n^$Iyr=PyEGW6{EXkaN|(n-${Hdfg9lO_0>cm|Sj^<@?8AB}$(Ru0zyz!R=2 zqbq)uCfG)PH8Z3&6M0*GAnJ7Gu+?b7qk4+DXT!?0)ZLI`>ae$;gub`^!cezwl=s}$ zHRoOYm=0LGWoSo_^|(-nRa8Glrka7f;~Rs11NKTUcYG7%mCxizjyb z%0hZ2{g`#Rn28tZfcI#AuI;H0Seo{A_B?GFJoeK^Y$X3}|9k>+^FjY)iQ;|y{eC{m z0E}>dxBNAe`;GYEiQ@ZxU6=hiA}?k*ZSc6Cy-s@2f@W58!8C?Ui+O0hJeDOqnMNTniQV>x`6f(`XG1e}xmn+Pl-W8wtKb`c^TVYJ?Oq^Yu zObu=Sr`a1>!7y>8_E&?T0W+lrw1HCrvegw6Gue>*W^3=XuhTUkZ2DYEvd1~wt(j(? zPiDrY6VfN@My!AoC3P;oKIl@0u<-vC$rH@o_tM~&Aa&boik>y5R zZ>A5Xj|k{9;x*DlyRTLu`Qj;Mki!ya)6G4vDns7YS9f6 zY>p(Fl61W!5EKk~>n;fckrTaOIb3JyL+^xC#tc?6ORoFTBy={FE(SG#EsOJ(b&m~c z*l2j@r?u{igAjVMfo`1<2*nMDg!O6TA$QYvWV*h#fvDBoAN?077Rc8gIXVTs zU9@Ou&?M%g(jdw5Mr@4$l&QiYzbNJuW$5s+mE})D2M z{76K)SouG(DOlt_|V{tvBNyA*u21c0}CV#1Y~26=Og(5TO=9>-33~U-CP6OmwjW$ zc1?p6mABr3NvlUWEcyqNK7=`NexRAAbJxTb!PKQNbp4eT*{p_Bn0%ICLPy}MLNTSp zGwS@{qsQAi!YVo-hcz-kj$v-=!p#n@*8XN?@m;~a61;??`Rzt2(zi{&)dWZB)!UrJ z!BX!wHY0Gcoq!-_lVn7%TC~?2rZmb~vhAE@&1Eq^ z8a(mpxO%PH*=}%zjg!FPkWQJ;SG3_I_gkCOc;Yr;YmMs8Seiz(u07)gKrz{r99D)d zySRSlQO^L#wbnr}Q$OijdJJJguOD6YdcICXSkAg zUUD#&F<{=edi?F~-J5O#W2ah%vAeVxxO{;KE&3s&g?Y!%4EvI{E@8M^+bAqhT&AhX zO5MFv>Kj;oYRc+dKO01^7{uPuO*AR5&fGMObk_mp4>{z4#prNOR?_VBcXPQrHgQQd z(xF58rYdAfSXlrSjwX1Nh7I$rI|p))z!1hzLT(R46}Jyh#9_xb+4on%`cQ~WFotBR5#BAYLdq!Bq9jXKF9q6mXN4uX8DIpzOU^{S9;DUi1v`9& zsD)|0ev{a_Ed6(dw|eu`7fOfaDJOYQX{f@?)?;I(i{^MI{OsTAU>UgWWkw1&5&d+} zWR(IlHDtM3s>q)Ky>0Ykq4}AeT?4p&scwDaz1>-y%Vj_)w1lC2UmEE+du<|I8p5}KRBob`1b``Ix42(iPwz2Q?gv=hbLAw? zxY#S;_F~8}`9&?Z=};h{v&DqkK%~R106&Ve^bs5oZu~jQnMI~CfBM?=jGSrLr*LLS zPd}uUxrn_|R`chAxMsOo$Af{HFcWe$liZx`t%m4zLud!+**|TiYD2jxK82-W&X6yT z*8zFS_yDvGJVjCI5;W)WUx`d0p_HCEwh0#Xx*12DIq?V3&I@-cY0X?E+bAB_&HJ#s z&EziS_HvU!)l`J`KP*H)>7?Jo_CR@~lB&t_>MH2gba>`M=Pb?d_@kx5hhBD)CwNoq z5tYnlcHrtdFpa$$L*+`VT6Gk=igOH zViAenjc7qdzIHKv2BozC&{L8*94hV#(+CIm7|S)MqPNo7K1fL&YmORMW47sAcVfO; z5NU6$s3p1Bog%m1ak2TNo7TF^Bn++w`0IFM6R2iF;&(u1KZP;uSdPOdZ~wxoag5Do zz5q<_WiDm72yBq`Pq3cT9p4(WsU6jZKCN}!FuB`P%@;$iB(b&#ouH_?Hm1hLSNXpfl9CR)yAEHy5M&`Nigug5oMW()24C6y>#3v zhnY7#0UUj_z`v)Mp!#~|lZpJmUr#k*|6hd1!kAhQ1B?d3%$zze2TBRJ)|Phu@A2xn zRCjP9GN<~B$j6-+M7wFr>{h~h{IqAng#oZKCNkr)ZxHPBS40knkiTdseI}dxbqO|(JKaOS1YeHs zT!B|09$y@c>Jq(N1&a`%+sRy_cu-2=FhY_dnzT@BO5DO4LrGY38!a4swVTsRAe-wX zY=ito#P6t;t~!n_@MV{!a5S>t>%xjZhGl#ZD#=4oVAtgsOdR>zFBujs$zjdbyNkK4 zk0(ZF-_0ml9^wbo&3RJJc#_yqM({PaM&xTTD__S5i>bdl%&HCWJS1r#Jd;gJ{2k%( z8u*IfWwQoWB!ic_@kHu(VJFEE8m+7`O4e zs_RK@m5U3vmT`Fa7?pn7JGl;~`)*FnM09}C$6kY-`rnP3720fmK{Ng|>>cB5gw=t6 z0~wCm*Z~F&Y`OvMGkJbSj{H%V%KrGoHZcIV9cCnOH{4IHRP{7v=Bf5jVfXcin#aD`WHSVt6%)*nD`{O%2-36d2DjgKXgc9(uw z>pGs(h$eXuNA%Uo!2F214cp_a$GbEyz0>(UVYA_B99-J;M`MNMkgp>Ben=n2gD{Fg z%W8VH2i=A%=`51102j$mJmC+mxpVur8M}APXvn$~HLA?m{<}&Nf9)oQkdoD`hdw8k z)D)TUr6yoB1jncP6@U6Od|im((*;3x&3OCp(a;Tz;Th$K?Llet(3SbLm>g9N#os*ecQlp0)XF$ERbo2K^IWR9Xi=ox$TlF2XE{!v0gzw9$(^f!r2 z79*iwMY?}6^X}Pzw|1W8(Wqrd_fE|CP0^ka*9U-Wz!&;!cG@!ngkNNBymEdU^Jq%& z4VbFP^1$a(m72V7Efy5!d|_Oym-mwEuik9w{GAt{m>-%!C`o;6-(Oc=ecfq%4ZI<4 z)4l^R`{*>5Wh>gFf4~9x4^4JdYJ3$_MFE_|(YkteujikkKKuJa*RQv*dXYWV-6e?} zKv96j)U+BI67L=X0^k?Q1)1zeI{Qe~-OAgz?niXcyC`M;1t3|C^xFQCowKlxgPchb zhB~|)smolNTYUdx5*&>kem$0Is_M#ox>|0%X{qc=j>=@A#yO{yUF-C}ki~K19z198 zuFhp?1nxAnS3wXjiwr7cOJx+JiHa9D z7AcK3L7Ib~9*oio?Q(9&sED6A2+K&N*0N*K4!JU&nI?~tNS8XYTST8X9o{rvsu0!9 zvBSJjA#D&MQ@*i@fk8X{rg8Aqzsl-f)7y zlRC_oE;UK?|75z<0r>W{H7!JBJ=FYO1BdB>!LbVb!yc)nUFDeE7mJyju)4WP;iKrg z@x9vhDXKb6qCaw%uEPySh}>FGT5AIzaCl)B0MK<5hxbHNG+qQ|7X*(RU>-&@=DxpBG~{d1`#~c&Q6Xyygw5{czkd47 z6wOB(A`F(t26d9?mH3r-k;7Jrgr;cec^n1d6NTo{QfHc#Rq-{-DaFqgpc_Rt5*CdO z$i75anMn0S@7Z^l_uPWwBg`jE!vCs`PUpCW3jn#@PGWxY6OLk;$q#O_K0gslhTGj*fznY1UMqyX%ia^`EZO3z;1>?&*DI)Z-^WF ze8hzeq}WkfRpHU0Zp4jujm9|)YU6wcYXWp8>B;-BK*n!b%rqk&(aiqi7CZy1-7TAA`W&tS&4m-kiI>2}q5g z@&4ilkhgjB6iq>J)PrDPI*mX6&~~Q#DE+kva>;UccML(A3aDNgAxFa%aJz$FaFHU? z13ZzCn%qs|3O)yQM`PWvI8eZ$3_Q4~{*m*>5WO7G?0bSE8wpon8q%Z?@K}Z8qJXKu zUuC4lKp;w|oUH6}vx*D=U2SSbyTWaapYB8TkCVsF3aOuhMYeKq`4*&#srylLwhI4hNVvIS5vRtSSXqu<_*>Vroz ze^}yMCk=_NuaAHP>Dev$05s~a*A?ovcA5AY^3$(pdr|G^4DQ(-^+&AIbyI4I!PiCb zfho*tkmN=VR*=cly(f{o8IO&PKj72v**3Rk8(%KZl0Q4VF58bE__B*LYTH3ST|JA} z9q&xHc;>m-Jlzqn)4wOZ)2q{i59PjyTf0!(-T_nd7D7AzL1NfhfP1Ln4U}BC51($o z{v14mTj%}V-*?gDs$-zA_~xKYO#0Z^)=`sq0o!0)%h<*9%@F=TTPcnYMW=F^kW89& zaC>eE!Ur)zGgkhZ6!%4p6fk3YzKWBM?~QJ<1!^kh(N&cc(8pRuPJ0TP@aYoS;%Q%M z&FPZn;^GA-OI=G}fTggdv8A$QB%k)vdciD)Z_8PuXfExC&Aj>lam7aPQGJx16&C!z zmA13Pg4jsDlL<9?6LsFr-5tJ`TbtHcc0po%(SM>^PR{n4*dplov_e2bGs~BCZ*WW& zH-!gnNL}+{3vaYwxqVn%G5xtfpaAh~2itW+2SM@6SYs&iK7RwaN5nsChK1@r@uNfj zb?t@$t=={S1Mdzv0j!6@0zt6DK>dGhl|$fHVq*G>tE%zW{3A=)N(LYAL^A*Tekd;QP1d!Ul?qgV3zN2%6o8p5sy!fY7FCg-Pu~@E1RbS<4EM8xBBcjbnli z$HNC9#i0NR6{fzTwkAMsPz1km#LI@Xwoiq$@P-6;nHE|&pjk(}w8r2Um88S@fQKEI z`mSOK8rw_FVRjA4>>#zFDt~>?4jx)oJW)UB?;)B*{b%d#&k=&bzr8*|I$(6JySF5h zqQiAK7lYU+cC{ApT>k_cmmL5zs5!1v2*M3mRFkB1w@YXM5mPt}?iMsfxX8rqX8(cP zC6$ZAp)v|P&2}nh>mQ_go3gq7X#6tD_z_w&*Z`)rcq|OjKm?t_!8h*2tW`sLt~mEQj}QdEuc(Z)ctu1cq&f<Grc zzv+Kz_xTj8gC!KW z=laPa3){s)?}LiqA=Ebm5HOGV~-P@krBM0Ac7{L#S6W){f2Fg`k9$?EjfT+&dv1@%GJt78oCbPTDJoBAE4| z!jSE6t(ru{EYHn&nkAdcF39KIUY!TmOr~?c@l{)@@?E`$WcdnTN#>LVbDH8=6{+0v zBtB(I-x4J$+G7Vgef~C|?>!Z%^71ojQGL1(r+M|Of#E2Cj?7^D8FjG*-TzHZ0Wv*CIP>mA5?0?~N03d7~WE7_RF?6{9OeB7k znO9(;BqhOVxWh)^dK~kKy>KLl8da%ta))5!?O*i;i~#W+Tk4oGatE-7t8Q$CxB(zl zoOt*A{ojajY3jr~95i5t|8<%E*K7h_1fc{BYiinWiXr*E)*^v4g_4DEbH&4^Lm6!nY0P&%Uoa0IP|oqwqR_AGPLCgVY zN^ym`LEw~_F=iu$N7QR>q||StSJ}LW`F?;o_A4kOnTV4#2~(csumS2vy(;<@P8kRs zk6ftO;kW5!M_Z$;h;wZ$KSzwGGvJo<+lv+&s4Q|A=~59jy~zQ^9#Q716WRcz`C5z3?<%Ri7I7nA$`-4WGV-n}gW(KTd9PQ- z!_0}Kf#jN9?>w!?Qt!U-Vo064p^U~8zw>bDplGMN= zI4EdKk)Sss>RIkt z^r!o-LH@M>aNnUSzZz|VK6XH^n)nM++@8Pww1}&&=HwuUBljkS;qq-ECtM<%m?VvSzcqJFbxJD=RndO=Jd}Liz@o zv|e9ip+^}?U<6UnM07Z?KNE|8kxlSNA8`-{MaMK1vS_z8xQa&gD>2}m9jn*4F}uLl zVqDOLkcwu5d?^J1ycK`y4-XHEM;Tf$K2_yFKw#UpN=TA8X+Bl@c(c1ukg;D%b$f;~ z^EAhrW48;9@#=*ThiyImit6$Jr&dt6?rQqlrmL%XD;Q3Zi$fe$ zRPfR!a=Y^&9F#5a`n{|dlNU9GS58m?0_~H%)U_s(m+}A^RdN5XSkN4NO8+qP<`{*$RmunFb{CZQwo0b zw?uwX?cugkm)LTCxl8zyIAc^bg@?is-gW#`8qaHcnZ zLot!+7>TA{j-YK7<*$D%_pG;u0TlpoleP@w`*hR+jg{Q^NvE0j{Y@$REXKjoF39yP-3= zGbDb5X5df%oVE35Ni>(8cQLKGW}*Y|nWI3KnsGIThzWo*j&ssZTWJJc0&Oq(tyL94 zU`ZYUdj6R)vw}@1hi_CioM>2%)pgKHgPi|8k&*X)(Jn&g$J2&GSth=JzFd%VYRF z;+wY6D&-6=EHWOLbidEP)OVg^UWRxuYeShXl`qD_T{URoy}vY+*et^>IoH6cJmdQ+ z^-tuQlCUx#&ZL_xbpou<%jflY;x{K9Lj^0R8)%yeW-t!}KU zPY^QKItOV4kT#CUT^Ek+?kY-vSMjQy7@(m`pFm|=(FMi`UE(`NwgT7EHu|F0-%)&Q z2fvdI4w3SdRg=|4)mSuf9)lKf>S99ZD11uMfDMQ1_-xV1sG;vzyQABq%0X{@oCJ(%OD;K+~D%NS{#mHBcRm#>TbaojPt)p1HrNoHO%e1MW_KJbwq3ttG7t8M#l_}i$ zbh`LTI9LK(z_ysi(%${=KB||x1V}^b1B7}KV_!8DPb)@onOxe9WZ|!kGTK_AHFP%r z11C-K<&Lk+CI4i?gU%|`yz+J~EBY9&-uOea+BgNsH1o=qYV= z1&nO^@?G|Wf!IvOfDG^ij+jkA0zJq|&v*QV>izsn(esO!!Z`{JM!-YUUD}X`>6bYE zCV$-UdjK5SBsBzJaKvkW&na7dPuJ&>7s3L z;WVmgM=PwC{ks(THq_-S#ei)`? z6~Xi^1QqF-jqz^ZH<^Y-S$->xw@SGn`hGd)IxVH!wNVt_LNJYPtx_8SBSW#Mfjf2J z5(VH3)Hjx@o^wq`Jmb+YQ8xPFbqY&21A+I(%QfZsd7)^SS~z<}5~Z*)J%kkN)gFI=MvJ_ zHa#Vb+HSRLsnclPp;(nz@-LllFjz1RurUCt57o-LiL*5XL(z_aVvOg;2{M9vpH;ug z^E=N2fM40{Rby4(km65EHh^jLnXJ;;2mAI|RL}A=a@!1PzeLoo`2Z@^E~BbO0L@$; zZ9Zz?Pj+EFyHFw4%&C7Z4dI5=h2pu*TzJ1H3rZ#stdg|IN9;1^SNZL7nNkWJ^MCPrurfy8x-Lzg{` zjI`jx((>E_S_ov~Gf{O^_w@p2>7$##r``J{XB%`kZ^X=dFk<;h7g^lDJK4Ven#~>T z&wH?(qi)(fP_)Hk1?yVMRJuFT#01FXugDh9)={X^9R|7e4ORTB=-g{A`-mHr1)pPZ zpd@VyswN6OVt7YlCl1CTYu)k=DcDv=hr)R13DBOk>7}cPIU>`p8&bGHz*?*n-T`qa zz{fOWym(cd06O?PVV```U1Vj-e)?7JeslI{q+HAXtao81nsfhQ@zJ+lBLrCCf;R7* z2t278bH9zIyu`WDBiV$r*}g5#o9UONBfRBn*sgP}wHag!#w@|_NZ&)psFeQDA@`lL z2(q*0=6=a=I}-5F&x3FK>1^SUR`DvyWm`^vou&A+Odq_=1o3)wPU1)vslEHr}7Y4(gxTtBW_4S$b0H$ zVVZI__$r$`P=|){xx_@AXT;`_cd3h1SWFU4MvSubs`J;f-7%;}2%lN=fIb1CKf+-j zo|(Bhm0bqwt@UunP{8s=dhA#usgBiy9)dXoxA!SV(2Jm_o@;e{X2k3&ubwtIHc490 zv3o`-&1s+XwK93DwE_ClFFu6VqbhdV@#p6n%2$U@n5qjsJoUm%A9;BhuHRzN=h(8i zJ4DGlv?{k8pd8@{cm839H)}E1L>E`QhpuRJFXkI7p1cl{iZ=MC%ZGpIHT3;s%Ricp zpjreOtX2Y*ypB#T!@tWOp$-T8l_R-;;wNomvkazT0Ii>E>H{!i2)*0i7>XpytVW1U zM;_3D+F8YvS}7raTpUvnTu-+WBi8I@y*AEnn&HbCMrF)5sQvXxtX<{$M*}5O6Q-E~ zTZ4t7m`Wti5*fR=V>z#*1}kTWC1K;~aG=n&p!RI68F7pKr%Ox8pa%T61VPzX_@Qqr zP9nC8EZvP-k{8g@caZSyPmGL;u}UV5av7J#DN`8-<(J531$t-+&n#X7_4y7a;-Y|e zu{)ns5lw@pft=7WlD6qbfIXg*GV)Uh!>rS`S)5O0Z zQXHMk;w5a=JzIU*jMODK^WX|B`;sJ1v46UQ#z;|>KK=Z+!U4_qUI6elpQKM6tn#;v zzosM2>-)geg*P*+$vC-cYWwg-xyu^NN8$%uIj$oWc^m{4goQ2DPy-kZm?bgbi5j53 z{XaedU{;^d#yieGjP%(O{u-!OwgX-=f=o_-!^nVSWS=UWj+FEK=L6SM#mG}C^JTc` zCeodM2X}T!+k45|_wMszZ`~2c8=SI%;!$lCuP|vy^5htc)Dp+Da>D!8ynl3Ae>Nsj zx1WO+Y7#50o@i2ytqZf%$Jhk148RRkCC)9iUxqH$PRON;%WzQ}D%Rx7uDGk;uhVjQ z1p=qoAfd$KqJE!qo7;Qok`r%)9L-l7$nk7S%#~k!7RVq~4yaZQ>fFTE+}UgCMQ+;{ zu9YfoF7u>Uy$s{6VbwqUw@;KUNy~>=a49PKqPrPQ>e3TpBS@r{7n*$546vxYg*xYv zC+v`}Z!_-XsG3F3#vOai)xCAdGuxU||M{f-PgMfuiZgCp{ z!?|9ADdzn_h9$ZPC4+NdF^NJe?`*IaeE&|I8C4Y3wU+I*}gYZj;!U!PJF2ciqvE(L7*mZ#jvE2 zD0~!q`SyO#xH%WKvGeC(h6rP0{$lSjz;mvA^ybvxBR+vb3eeTS>G2!yh0f5A7aken zZY_#UA3!r@$d;#ft&7v;i{^{NRFwkBG z)VxL!6nr5%!w2?Y3zPKr!`!}RZ+SNY<~Z*Lt5LR27<{wJu$v+~f%(mh`iYqA^zRIn z#C7mJx(}+wIDqjJ&j)$b!ptJlQtUxA%DfjvxBPgd#L=f zrz#qpYeGpImLi;*CxmIK;L5WT&x+f|B&@+OI!HmZJq!$nJI- zfz-FQ4I)7RaR{$4tB+e613h~gIg3-RHQu|at&e)M7GRbE+Yl$l`Q&#!P~IN0##@v7 zg!7FqYlN~lae6Mebnav`-*E{Rs`j8m=v{q)qbnJwFzxE7&P`3Jx($;sc7`7>h*v|hm6Q$BJl_w*lyI{08GV=|_8co9D%eM9O+J4?`D zve|mQx!b$*uzT|vMyd^8KOeKr!jKj4VR`jD1;{()<9e?JN)8_w!`51NM~$gByqi!; zC>=*@5)*8h)D$+`$Yvt?Z;mT3sug)1?A^svzi#!S{;{|e(m0ujIvQkY9MkHZzy6(u z7%nNbJOCDuemCanZ^hiR93$(l@nts`RQdSXb!s>cC$_?#(cN3Vr50PaeRL+ z3m7J@UHEFjxP*3g_48!86kylcSEM>zU=ZoSD9alO2C)dVj&)B=y&ZO-|^yOay)SV4VSvJ$a8q zvY6Fbw<5Mn+b$SI`Gu=*(OJnL$W+CX5qJ1qYt)Z_>t;(E=OVM2Fq^@Nfn1><`Kp&n zT7~4k*V;FAlS1^GVYTVz)!PC7Uj+M8uiGp!k_(JE0k_=yq9%m3hcOl>a&IY}r-@N_ z-zdFG^wfH5buXV)-7(F(^*yC`KhIMdhs^wL-(m8gG;+N~zcRjS(q_%cyf0ZYsm%(- zRO~Deb`?9dCZfVT8xwf8#zj?lkNxFes3oH0f#s)75yhHT14RN|RiL)b6^kSJX92yC_fIVmzBcr8iE= z0T~b|fk4(#wFS%zT8rw*>G1_dR6TNFj<2U+Y^!c9_}9{|^ceuvAO5(ndGCf582Fr0 zx!tD@j1oIvbhXV+2nWi`pr#gJ&|JQO4agYKx_u;-52*w*!Dj%A^D+&Gx~4TTe>PnU z|JpUhf0Ow|61N=o2l$igdI+$2gB}pnx(&Wv4b6{&4%tH;KfZ4;_Fj47+4sZe;mmU$ zC%rGP@4s&PBuJ>s5qa5aY4AWe?0isb$z(bQWvsr7Z~9;=R?1Xxu;~=ck{orXE9g!K zrVK*k=vxLy^bi1c4ipa!;q186zefvOIs2f!6(GK5C#7h1_nGH9xA6TzhZ^Shfqpvh zN=fKutn_&jWD&Y_^!INb>$!K76lgs=JLX5^a3kI)YGIxC(480kM;cq1_3ONAfy&5f zod&|sc+Xz}QWfMp^K6@u*wbplCUpDVI|X|luGvFA6u$tyV6J&}5ciwLJL}|A1HUx# zvIoHdZa);0xDh@^kM-){R0lhKA(L=ohscDwIGw$1eCWtiOP!dRV3wEZf11SZVrqTy zX;az9@jZbjsqJHS(20XHxRWdNai!8|wMRBni5~$>64l22rSap%``B~vqQ-x&q#5CP zLa)S+jVuB9~6Hq8xnkbL;o z%_`)*4UY&)UIw*(&kZcO2IMlFyMdUb9qJdq_j;8b0Gi8?-l+e;Cm4_5bb%6xK-4mv zy8R~VCSA8l8~BmW7(w0Y@Ub>EhS#J$B|Y@krNaRDiM7HyT)K$0!vc_&TNgmob*%Xk zkU&jb{*slTef0ydMgLe>8CkQe2Tl6^YA+e??SWLV5U?kdbs_IF-_T5VONS zXg1qdKD|C&2H*cNPA!z;&|bv2#c+15p8PsAJ#p*&JrXuYpS35WOO=qit1l?C%e zBHQ%1Sa_38cYjluy(vWVl|wZsJA*t1Z2{6)R58<()xI=};I2HkM?>#Vj2YRfXF7c&J0?U;%c@vkK_%1}pj zR42AxO9Pr_V;4G&Nnc7uThqE|e^IzjO`gu5o!fl&Ghbb!Ap&#!WcA>PEzbt=z}7@k z5OxQbITaDu<)GNB4jOp7hSul?ICcPb z^bXQFZYz$g{#a~^B>%fDHN5J26BBvcuTyRQ+P9If7ke%8!ho%-q^>!zVM17`W1<@T zY+lB)saH~^o%kpSoJ{pH9EgYKOwxizTEC1%L35qlk7_?N(?M`g95#xp6ad2yM*6rn~lJWyCM@iizlKz77IE;~-sp_(697F97o$u^Al=Z;3TEZHaY_(&3n{vYm^OoZyl6 zgv44AGiAoJ>h~CbAvRk44o(e(@gVlHRSde5Q(Y#1b4C~dp*8GST~!Ui?gHMULHvRR z=@UCs428Q^JZlsoAz|YEjV?=jc6~#xf`KoA=*v5rI9xI{>pvvqh$j*PE>iqWeNFI- zV6otIq#Qr~P~824l6w32mcY zT<_x58CfVO=AR|RQC_V;5ndX|j5Z=`LJk!gEUQMPt9d9RweaiW%v%g~>x|deDX1$# zQ5^~av*KVeS`;8|M#NYRz93*%&H)0xBzaUUp#Ms(uKd6hfdu5zd`&H(+E8Ekfdy4z z?*}?{?Eh@k(~P?HBV$HA;l?!KV0XSNg;xYTn+@G;+TpW$Wzq#x5&A1N9YGAC6n@tw zo%2+jgFX)FGd!kpe-OVsPd5U9;5oBy|1SuH}dXDZGXu2@c9E%XpY8& zG>K-~jWLb8HDY(zz_H&TFWNIFkFzJBEAYtE5G%QZnn>!m-n@351F6*C3V z35@OYd$YORIo^DWh{6u-$)RBjiDz8H4-ct0w$*nUq{{UciyHgW`LTNBwL$t6H1te_ zIAoEanT}o%4}h%~-*BIz06Om)WU*@>;SnOa*Bciz@w8=h1JgJe4ywoOjOQm^c~7Kx zX|EDD#$yn-wVa;#&i9Oc5Exm5-69DO+rcIlJ=?pLfL zyYM9y1w^p%#CYt5S+STRM7*Rms=HRy!k^Ju?t2WOl%gg3)@czPhPFd<8uXMD#}zyY zOl7LR*{cJ$eu(}C4p~xZTD|JE28C|zQ>YB$ZGcsYN9zao@Y+Q+DamH%EHlT1@#`V=*I#=3>075i}dC5t!po~mE2u^bO>B(X5o5m)_ zx0g*AI}42K%T;V880$?`QF$@Ih+KVWH1Wugk;fY#a&%%CJzQE8!AaZ!M&Z%(|Eh&x z1^d>b^IA5qsfqD7#fP#2C!hosOTYx$Cn5%xjATLxZM@(Fy3tR9Hg1vy`7NoV#QW<9 z07!hg`8#vyR(Dlj+;qYT-q4L3Fx<-w1LE*inIu;lgJ3O^fdgg#kh!GemJD3~S=@OP zH+jbITQ6FYU+ZnI9gfx`2vfB(aFKqq)Df@UQ(kU zHAUN&zj`z&s=B_c_!Ex=TZZAC5|4Q{14>b!ytrI>grP>Uzb$}fa2$={{jbNJ9A7&S zXi0tpLH7L0_jq|Rx5GeP-wzIilsPa}w6as9vU3E@p7H;a5@C`67G=}V8TFEX7qB2yD8y|BHs@IY)E|WD zpoLbAR`56R(=_~s4#nli&mOdU9Wl3P%l)ZCW42;=t8ddI!BKbU`)@&vKssQTe=8Q4 zojf@$sGIDun$43FG9BF0On*b+jOORO^zC&tf49TxWe|B+I1vt3WjnNas{j_kio4k=a{0FsO zZqesOR1(u{*Ml+p z(_o`yPpy|%1trc90ZkTOC1s!$)9lkO1(3TE%3Un}{xqpWWH%`Ad(*7wx*PgXS%Mlb zip54%g)Ggh7ss5+W(rlMw&aErE?jK8BGd>&n21pnL?^@LQ?4%HH!NFNFvgG8vu&TkfWuA_B;x7gl znShB|%L`6N;>}Zm2PM{+pabFL2vgznUPH7go$gRUR$=0knt-vy*BTp$={cn}Q`Yat z;)hvF8Y1~%=km2vPmkUV0I$X|CJhddPJ8Zf&0i**%%6zNYqt*&48<{-PN{rewqeEZ zI4*%7W27*iq*}b*AAfsB4E`rJVBGgRu?A<~+wCo^vV#*1m^Gi=cX0G>{Met|-%~i! zvsqq`{*dW2M+H&D0^;Auk?p3?LTu(7%qY@9;Ax!|;f>dy$C-nFFR2Ei4+ot!)+28T zmeb(xh|ORg`IrZYU#!A}P$AKvwFHpQew8V@iaTY}Y8ag;*F=syUF69Fw=qnIbZ$l3 z5O2grH7*5t!ibgBSk0qpTF&3!qHqkY}dIr#{3kWLwt2+@sZ16G8Lt(h~Ebn#bd@lVafqU=PqAvGkZ&-bAJ$oJLe7v zf2xY{dS|Bs+nxzF0iIq(>{h!bvUcoQwF&_iDm8AiFUrXi(GrdXi`%6MmM#4$PpXwH zpSfU;DGar*FNmfqODzj3H&m3`im%J!pIs@r3_y3=))YQ&!CdKjWhf(mHUnR5w8!ON zpl?}g%J^-`1nKbg^)83&r%#w%*(-wY;d7`r7nUD{rPGpSYpzIMHBMz%=x4mH`fF;u zsFY8Eb;3I*Th!bwAJ62I#MNsl&`Z*F2^*EVwFuPQdOm=e^}9cDV@o?9{;#F?f4^=) znOHay^T8+p%m2Ry@T)#yk#Ajq2J&;Yk@r}JiNL&##vxy^V4p^lunG~n0+lX%+75yXV8Ak&_DsgxrZ)JwA72vM|pq{J@%|(QGuxuIACq z@sq~b`trfxye0z)eD|8H5k44Y0h}aRPCQ%_pgs}A7KiAXM?zVY=M@z#PqQp;^`Rtv z+ITkehhdeP;`2aMPk6GzfV`>LKHx}Umljs9XBgiElq!%*a5u}t4#QN-s^4PgA%S(3 z^DE+?G~)`=MqAq+ZRxNprKmS|3Aq|8Y2iVKrRBDkXO2O9a`IqnJxdguk`A#ssLp#D z;8bYasEr}%Dxb-*;s0Ul9Gf(anrvORZQFL2ZFJeT&8KYJwr$%+mu;I}b^1MLPQ=8- z{DJ$!j<|ELTszm5!Tnp&TYSH9q_8^t&;+h?40j*$6$Z9wOiaGy3&%zUDBks%_@TC$ zE`y7;#}x&qk}?nGY%jW=%^C4WXM{-wbjeT& zF{J;289!J$U79u4W9q=3`Z@rIR_$N~2k&rP^9eZ(@>*@#N982dUh$!EdUDfP{`{cI zzwJzs{+AH@wvqSIh#7y(^%wS7#b2GoRpaF7aP3%u;?L3NLuCU^a?w-tN$wz%8r$2Z zy=<7Vned9ujO-J@5ehQN_kr`)9ES)t^~lu0@wV(jvek{LZQOQ0 zG3W5!KDYkTFn44jAsuoT=j9F(IVTNkrY23%&Q0tipmhkP z^7PS8EX@+a-|SKo z?S6YRPFXD(4ZV^|ZbW-5{9bJ$$`GDlui*~`ZTa?Es{hD6{R99#Q_hF_@8Meiy`H-w@IO)DD9eNhA}%L_*t?Lu^hYR3fc9t4J0-nMAg|ulM235# zWS25!^K!0v=m}Y)juKZmk%mU6{ENYF3Pf(Cb6l?-1=eOW735=p`)|A~0mRp4f-hsN zKRk_Ko+-!;hPA-ZOV6dhuMen=b2&ho?SC+FMyVozqyFxeI%hN)MRUo#?>QnMPImR0 z!_yc?Fu;0{#|2kRkrwQ7o1ng-5k^F=Hebc!#E*Cdf|S{!lRfuT$exb_WHo;V=BK=q zha$ffdosLeKhI47`d6nE+0G!QDH*axt9f~WuU-A~^|y+TiRFD}iuyQBw(O05Inn%c zZEyAwKZqTl0-{r`_}o?L$U(O-XN)lMpeZhFz^US4$Ck5B9z;2s(bb5tII6u>M%2Y{I>9r7 z^JKT>Ji)?LSF=uu7|nVmazoB|h@gelQpsGZ@Q;mySE&T*i9$C<*?qh9ZWs%=PQrpk zMdHcVorMTSh|(_itj?dYB5^DnhgtWnbcnMpZ}GqGh2@wIW<(f{4C274LlTuch_Ztt@1;z@oA~3nwPTgm_qB+7~ zA^O~1kWpMg;37aIgxQawZCsZ}?( zr>B=`iqn!pwdU2Jxsu5SAY04Hz@Bnx#PPv1Shm~p7Rmx9i0#4Dkotc1h`AGiZWFe%YptbeDA0lo#Zm(2%AbAqdfXDX(>Zt$2=omK6v z-9I|-;jvbT3GG8)&P{UzYU!)YrY}OqfdZrNW3Af?(0IF>e*dBdG!W(W05f2;14kJ- zAJmz)&@H(dk1uJCtvc@_j>dQVfo_YCdE_jabayA}Vwt)yGgmsG_3TR}ccP2o14a>vAjb#tTP%$#3*o*Gb4qVCyk=09^3iUWwU>CgU~X zILOtXg~Hf8xjZ=x04k+YhK>nWGEzu4o#qY8-k=Z%rAccO`)J{qr+~o~3QxQycDBMw zWNtp))G8)F)?f%QrI1Kij7!m&IMf{R3zR)5kO^V#MKvu;Kd{gibIy3Jn!LI=6gyQU zpj<4O*}ktFE%wYt#;;!|YhiYHJr(C9ra<2Mfe#qzvL2@aQ0x;y+QYa2Zyhu~vxhhXBY8XHS;;|Gj$h*X=5-+mZ}S(f%f zhILp4|48r`fONFHy;=vE*{-A^%*UT<no;n_o9yy(Drovqz zN^B((wH`lg?HQD&vz$Q@puXHJ50BBtm4D|NHF5}m$5W@uZTbE7CQa;;u_N$TAN(Fp2z3P#RO3DyMA(f&{C$&&G6}cGUH4GdWHC*IZPA_vv|GPLnoh=*LEKOj%G`*m|K&?&ZF8T2LA35hRSw2zUOCJBb?E_KT63XisRH2-zmJ!y*Sy`J8HQzp2C`FM1V6A zy%@C=HTu?S*4^&jI?zh*Lm8YQA$Zhj(0Q+)i6rQy9F~523heUJff3MdAAT!Phg{#O zuWc|bUVdJhr~3Tsyl@p&sd%Hus99??rwtg7%^l%zXlwj@jGhtAZWlVh<<>gBfA_P4 ziKmtE+Fb2e)CyQ9;fys>V=znV+WFmKaBNC>%wMl3Fj2W%Zl%Y{WC~ThP)*b7O6~pH zZ{4fgLgo;3R%rGrgG_&MLey1T{xW=N<<;x$@fkp_C4}mckwuo@LMUQkM)rPF#RtHX zS(y!;lsy}khe0`XfXV?A4m155(EQPm%B@tBD(Aw$JF(G(9(lp`@3}{sL}H;pp7|^w z%LA2Q2)tWyS}sY|H{P_sqwZGy$wzx7ZeIi=5br4I)52&+k4P z4`Tn!F1}09l^FtR4b@Aa@B_I=gz-Ucfn;v{;P>d3w3nK|2NTzRy zx(IIwtnO5nWn-f_Zvk5-5$_?LjSdL-?5~;!n5EHBQXJ&2cX}&B7Di5PoE<#?;~A?I zE#M>V^%By5q)s-DD=xz+iYDL+Z6CFlx4tuE3k3k#5Fj?iI(=4c(E|JnfF4Z$2A3jH z|EZ_5tSY+74JRq_FFz7OE`c99T@WowHCialm{yVkFGTEVrBcK_X_jcAcZi%shHkRC zPr5jYBw`203s>&a%}=Z=P*)SR;raq@J9?2i=5ShApaKrvqg3_h;&@iNNsGtK(e#jx zHazzXO|N)@)4)PYH~Kf2(r55zAhu17jhDn>2+Cij-IC(Z)Sj;QVwoz~&Rcu5A>wb& zh<7F_qd^pnv#`|kkys5U9tm$KuJT{)C#D@BKl6$M3iZHhp{FG3@7MV0@oM#Hjz(g5 z{K9->h_}J_84&ZZ>`0emos$#q9%owKC?9Da2NKeqQDQQ@*4O}vC|nLRrPS880l7+U z4y(H?8%jN6aQ{VdEW}@o#Cawv;{)1a<~W^|Nn$IV&OH}7U41zdT@!Rw@zzAAEb=8FuLy%IpwK;AHC01W8{dcQK7c|Ud-VT|RmeFerq6*=86=)(t4I?}7*^JycQ zj}Q$!8WEffK^bEhw!J?A5TJ==nL$9-kQJ)NR_tt|o1o0uIg}TVITXWXiy*QP`c%OM z;h2ch520PX0q=BPkW}obnVs>OSJ>LosD_dV>vF7>L5zUR9t=dr)a)3qL>a=xlJd{e z@x7&@58}Fx8eBiNV$BW=B@kOI%)fz_Qr1FIHkA8@fCyd` z3&K^=qrw5?JT%om3oo77Eqi6wXBrmtMVRw%(=E5XY9!@mIWC5N0IF0k+-?5;q50Gt zSpB|Z)sCVU7rS~({_?UOPSn6w%4rAvl`>R2$?*9V*uX|bC+eT^4)`+sf>A}E>9Eg| zhqj@f!*dY?*d;FVN72%p{}5@OG|enbQpUgd&bObVR4@Sho{MV77jY_M_KMbRdU@=1XcB&(b^X;ij zn<~xw^FGs5A}jO}8oF{$%RnnHSt;keg#}spZ3DL-wq*jG)g#N**e*bW$`IZzK>jV* z*`WY2r$92inum_1q~XT3)`*5o!Z_EWB4GU%SEHNcKn=K$JC}>SgpCzb&7yk7RT$s7 zf@!pF*-WS-#Mq3&ICm*awBC=uAn6)}(EaM{ z*FXN64hF%_|8+;XibM;1m zCjS7L+n8wEMYcb%XQynV8D3t1v~QT>6zyCR!W%n=9fGlyX`Ba9`I3Tk6LD~oSd{|G zy0&mHc)V9zd$@6Cz_ZFr1WyX#f;&N>K7AQ2*kHUv2xJ)-!Bn9@bR|q|v zIU|3-?%%pHvY_E7{us=ARK=on(%Av%_PR168G57T0;ti)6gw(wSn$Ktz&De`8~hE3 z^%F#zfSQ4j6yR5)jpeT4g0ZY97kQZC^ZzCU(#V1NnH{344wv;39-5l52!SId7kO#2 zV`uueVr2&wi>q0G99e;A9(8m?jdne+0Duf?DYyP-g9>H^!_J)MXbOy$=By4v3)t3> z`WMMV>-|)R8XrJ2U>*|F32gS?9M+BJ0^?3R>B~`O_Ho~gtwX)n*v%MUhje&1YE=?x!a|)yUt3QFw zWw?2nJtkzU3SMsRRPO+bh_|mlW_aQzL)G>)*TEzS*X-n8{*-%$WrQ;19|EO7xfGoS zmiIo#<_5NGp$1B`?Uao}toF6jn0H@Gw6?}3`=H*Or8W(ea^GWjITV4#EFWq}oZ*}b z?=e}MgsBE0g1WRP&WO76uk`NKw2}TQMC&j2UZ_O>K!oJRmRnZO>~ZbgT&4oikOokp z8dXCEi?nM02_g_djsv~TH^89Z=o3qwOeX$A$LV-W3>O`*Zz%eSm9+)z_G+y#rr1Vh zY(S8ynU%Jhm4SvVu-|kKhZV`5kMKwg4ZPSb8OCf4Ll#V%vNRH24J~<0Yt3Ps*Iy+; z|7;j~Yzz$+n=lS}!Q7VAGaT0Da~{LN6fJBHpoh*hG1A8`zvYR=bbz$VHLjQkim30= zJqo9M5Qai^%A*)r@FPCFdYZi-U?$p^DZ-c&!*a@fV8aUMQa8fXO?_S&le8*7{SL2a z63^;}J_m609Z#Fq^6q=~&@-Ni>5X12CK9LR)LQY#gNNv?Ll)ocY&WPBO$btY_Y1m5wE31!880y8l5D zLgO+OD;g$taf-1pMr>ufDHwKD4`wObj$up0t}#1{gGx011a*&dvKc5mi;hE3jiByc z!KKsM>R2-4RBeTNZy8A#@7O$ljx7T_Ar2zHf*Zg?u<;xa0uTKz1vm;J2*(B1j36yd2ig*HzoiT@zzCfBsw}48Zxl9d$QnuEB;L20qBb7I zaTlwc%&=ug=UEqV=w7o8{b{B43J6`atqhE--R<*yB)jX6<}g!NOCRhU$!2UhH@8@6 z>;y2YZVsZGECoX7d)y0qj16|US$<Gt1ZBDH=5iBQ*T}t9*}=g*_MrTx*{A7 zdL-ZZ0a}MFdt&~;LjrmLG$ET8$Tp3`>KcOIha%t}6aB3MQy2E~XhMl{*v8ni4L?_U zjtWVI>*kd>1a3f@hSU00rl$m^Yk`gyGc+=%`&(Npbe#HTB^-t_RG(H{Ite{H~gtn!h3Ha6Uhr|ox*R8C}g{5rVs?`O_TKRqBylmF}y zV}>`TY#}2iYY$)z;PtTtwx^BjWG)~;ekMzF>liVJx6AWj89anKv@g(_%&YVt0)mN}mcd^A*h zURUhO54s&@o!knw5|}l^ADypyIqdi8<@|+BWP(`wpB3K2=784o^_yM>LT&v&0$pZH%o+66GVh>rhLnn*VJ!59k`XQUj1xq1HuYmmwJfRVW(c zA(shx|F485$^oe5?D_oPGD>V#mBaAx@-2YaI5JgiLd(iYU-FUu8CoyCl~7)4gH3P> zFtjKc6yYE!9|z`WVJ2-EK1H_TLwt|Ww8XtoAp>&h2y{2G`$m{IYCZLKn#eVJEZERy zj9+)t_<&#$cBa+4-qE7@X`oh=+!a-iN=HJ`y#ft*aYG>y;6XrK7Si;7VK5)T3;cI;Jmc?kHaAN8d6BIJAZtf?X;ZMm z1z++z#h_R=J{ZgrXq<5v%goQXdtoid07Rf zIe=Mt!H4YCJBNU?u!-yb>QH=QW25u(a!S|4$FB)B|LN8)+uuJwKk;Gb`+EmCefRiz z%v$PGA1azzzkFVQ47AkLgA+gyfRD>t@@T^G)9vF?nA^9em@i75vWRj9R;kK`b?+xA zEh=K;lN&IMLQJV&!i$Ce`$}<{(t!J8}r#Ldluv_=aF(QVoSDaDZObvmC zJ4b`n^$%IbgB>M@Es1{T8X3eiQ1ZTMMMbvjV3ljoFp7;or7B9Jt29NsfyVfaVW33j zUagfz=iqAl!wgF&tXXNJDN6rX5w7^}Gp|?OG2zXrEfZ)_;1}R8i0Oa|ZIoK71%5H3 z0H*+7HSvf)jZCw`Nx+)NbyMgmhBx;7z#Ys|_f{OJ_w9H1s<+%+8L`+go!&=G@!PNx&SB90jHs%QT;50Em(6;dA<%UXI= z3O?i_n;Nkm*c;QlI~YB{1303d8h?Ndc??agpR53u*pn58CXx=>__P6h z3XHW7k6<8mp<_&4{J#K%A-sBV@jbgfT;45y0t9u0M5?y@)mh)^*dMtlF^(=&y*iv9vEhP5op%1iXDU*cM*&=+TI> z;7RWl^-+JVXs$qUFS`6R|JZ?y5qG6!kjgl$@gq*dFVu8{rEhqArGt-h(5;ETsvF&q zPkebLzSktu@f-UknD|AJJ$6XBjk|PLamCa|Eg_G*9ebip(M`a%kD9D zeR_@`1?XkFg$GZYbk?8!5U@S7!z{;d3$_>tuNTD!P^Fms2?|CjR5&hj6< zkD9b#%nNHYD3NIS>#9nHvLy-AgbYxhic#MS#~&QDkaDWU>WvW%N*hfN3AFhPVvPc{ z={}~`UhkLNGw0k6KUcOFy+iVHzqImRcXxR#|dB~Etp117z~6Cv9!BV z3M`&Ps5k$XRpB0+63yn2V4gwGSz|gKlALDFE}O*X;F8PIOdcX>$a;5AJb+_uKI^ei z!>FPAd!e)WSNh=+yY-wH;{@Q%iMDza??jc;CjacaV6`mE5c0qtvV}htL5azAKyy(k z2*Uc?;rn8K!(7WqED&R z2r;rMyY^nVRDiUhtX1X9aH|%CfJ>fK(?(8?%S#y< z*gvTrF(%}NEahly!8l;HJmyyy`A@(aESW-~r0J!b-jy3D$jKslva zVMXnGUlk1F9L-s5lOO;~%YyRgh0BUZr?u049l86E;yB}EeJpr=oy77b((@1OnawKD z+)-dT`ja0`tSur4%=iIF^eK&A9i(JLf_0Ab6_>WUlN0t(L{DkKQ70Yn)bH7f60|Ro zZsXcb_Xr=Cf?XzSZ-0(emg`V@+g2m(PeQ8aPA}!k;kJ|Xw^o4mK&j<~MS&#|Hjcnq z2S(5*ww0IsFKCz2ZL_`gUi-8D02W>j_zJu1<~Cn$^wWI5r!Wi*X~xBfdbq^K8{tgh zCSl~*drREd(|g&))%mF$q4z@4>vyWYZSO6OpwpEq#QTevv1~knupj|3dMM`qA&$WR zg;oCj9{(m+P(e93xRMmjX#v{ySxjjEaPfj0G9=`+@aa>{{3hD0mg<(I3YP?U4m>gj zBuqIUw^0op9VS(!g!kHW zkG+u$###%9KlmkX4kVtwZ4MFCd1_&GcB?!y*)I!;I2TC#AHP`9?EyP>WF`ohlja$vx60X=EVT6zl6!#;v z9<55WNPcw&V-=<`1k13e*UP%jwt#m4T}mz2I=Nb}HA#M#PMiLY4~81Dnv^Ey#tn`O z2nuADJvtr_!cctPTm`VE&EE@*3!D!)O@a%3M^+Uiiax-@y?;o}fn(w3q7uVQ$fy1~ zWv9kkFKNDNmsmJ6V%z7V%m_Br=t~N1g?$Mx^b|?_MJ~+oFW@>GgFL`u1-C*F`?BqY z4ELyZTHV2$fDaTW*B&Dn9;h^%NcP^ioA&!mBKOQEMoOBK35PxYP;@A9QxphA3mJHW`F`B%G^uCSfBnySbB01|Z`P6#@C=qEl ziKSOj8LaehlZ#(gdlF<=$K$Hq<|JB|v)}LQF69UkOHf3?T|#HhDe=9t%a=m<9l?q5 zk^WJS>J-TM2LS*UGCq<{5VD_%c_VUhSPkQ47x`>Cn*_{Etx<)1w!ZAwH0|Ghmnlox zsm53r?I^e8d)k$2H@@eAd!2N7hN17f&OQ*%%edWdo#ervda4{U92IbC53jV~q}4(N zRhmDfx5b_Ib#UuYt0ND8d;@jb2vwq^bT;ubHiD!^+cPr88A_Bk}8cUftl0p6aQH^Em)g&n;cKu`osp_@d4rF6{5td!1$x1liC>?e4T3g*k)TVQ&(sNs;B`*jb`~2i2#or0f8qixT zUtwDQ5XeQvlCYE(j4|cG$i|i}7jO?e757Fy0Gnj&zV0H&Z^&==JSM~F7n?b|34Z9B z;m%ZD1^(6J;(fRw@v8*7l09g^+#4BSc-RZ#eQj{hoT%3>Ya&L;+jG%WoJKLa!~KEu z;TE63d>MG*=*tErLyJSZiS&9Q+GpZSH?b!}?YJT$cKz;sVxJ%TrQAW?sjB4aJEf2{ zE{0F?jXB|!12AKPbby?f5?8|1)DRuXFF69bAWaB^VYc;a;9*VyF_j6hi&R~@LiL)k zfN}yUHihjg(X10Od+!;cdspd8J5#lWnYv(GbW!9o$;4=)@#hoNa?;Y$SsdnMX}>HF z?m9(B}XwIv12C0v7h7LTnKbN5N8z3s=X$$ZAj># z0-&G}2v>)Ww@Ws}Qhi>4zkw(m1kxLkj7I!o_8ngiu3*r4;t{E`d?fm%#6p!DfD5N1 z+Cv&25|Sj(G&}73*i?mkk5iT$Om7NBa#J2VM9wIf?dVZx`y39Oq_vWJsAcTR9M=h~v&^tW6I2j9Lcs~#U^XW%i}p@QLI{8=!W_gTfe1q8pcU|K;bkqB zlf!O`FHdgKHKEnWoYCkMA#;_|RlMy@18Z<8*Nav$-c0hK^&**egx%c8d;6EX3@)^w zpno_yXxeGII=fXuT!g;GcxaR$JLB2~N(_H>p=xt$XR)?q&a7OhM{!-O*M15)%r`#d zuUoEPZ*&51=0+wqRuy2R|G02%SoosTU8XTYD!9?U10uY~?HSoA9$(tqM!fTW2<~vt zc>ij$*hF|jI0wBtALfx8(*+CL`WCg((~XeW1^3>&U&>!7$m9-!0E1srhW%YQK<2x* z?CX(P8<&aG5cf#s#b?Uj6*8u(Wv^zg=PGaPOGp9GK+=5fz{EF|@=N~|eqA}s!2!`{ z)o+CTtfcp1>yUsr@wnNR?jVLP9ZbJp;%0-dym&DFJ@4A$ zdfNpsFJo*yy}J(Lwm3%_@wRM=mLBVp%}Q$@coOaeYRmPSx^mll2bEfd`{|Pgh17KU z63XU8h}oTK2oS)tz1_S^Hu;Z`New_qf8?p&auNP4khaI>KZgidYa*uNKUG%mtA{kA z+K38{74(G}a~}U`dA^@rLF8EY0rJm^sewsCw4wxMVPQ!_9s#8R{Qva{#QC2FMaUw` zbqJBb(5uz7tLQRtPa>>f$)cM&CJW@}9P4$vO2sx)YOBlZVZn?i+rQ?v?_&oC`1%Lx zDASgbnyRQ^C@c~e+0ti00+}NZ*v6Hk6T=~vXx{ip&fn_JKbxvNUQLous3uV7mvTFP z2UcY%)7Z@cat-VYa9^i`m6C~3$b}?XyUty%@;e?h%&CcznRZ_(Bw*NEZjfVUbZo0p1&6nx#9 zbGa?jA46%?q5$pg*jE!?w!t=f<1RN9v-;C5Bkx9lRw5sDD2TgaxM%(pnLN(Ktj>y1teBTm^>fvuq&SbNv|ej)J^R~2Cliov2+5)t9Aas&&1S36XzxD}cY?sliLlf3FIB?1KGuqZj&6 z_sy1=$KGz-b>Jl|B z<~w%lOG{09df>f`z^Bt1c`Mbl*?QXEY9)stjM`(mG#6hCyC5+muP2hg;%wHDz@0{` zwyU2%kbj|mqefb@WgGP?WjLJToS(LHjs})_yRq}GdZz{#)RbhjNJxuIoGj1Aq9GG- z9tj_Zt-W3u0)UC zU-A4{X2D2AMAOrlE8CWh4{uMenA8riHEtEI9Y~3vyLDjM_ORfREkcfk+U~74?sYdH zXlR#KqEl-Enx@dza@VOH?slMWjy&;oS-oB3L0cZ;JL;j5S4}-DsO+gD$1Zv}Npj~Z z#P+C?7roGtGFU`cV3=y+i&(6eOl!(IKxO5aGXr%eWGwF(&98SD-!2e z^VBc=lN5hh+K6%`*zaBu*4vK}mqH`&o8UFM1rX(g;T7dOGw9B2hU&uUqIs9_vPMpzD zeC_o-{dFtFc3LZxMMOiyMsk(J;?>%1ta~!Kwv?KIzU;#e-;T^ncFG}lUv76hm*)!) zOwQI!5|JZAE#B_q7L#-~+x-?7Tz1srJJ;v&G2!j8+SN%Oqo4N+58k3g?rkYH6l<_w zBpD?^6aaE#c*36}BHj(zj2MM65bZtUIP9I|zI(mO-l%I+lIOR2b8mS{^;}e?na3Jc zPvLc#TvcmfN+?)L;9$sYhi7)&QLfC%U(abn19f!!)*hG=U?`KyMHOZ8jQ5GCo+jz! z`VSS85pi3ooj6!605Fsjd+1Mz#mJ$pDnI!V5I}=It1B2rS9j9Bt6@t;cbgic#v@u_ z+%507;z#^%BJM=5xSB8!iCKvSAMDf#@w*D$$EL4goP+@Y1`Ce|M&X7Y``rvt4u_;aG}S5O^SqDQO_%i z2EdjNL=L&MM07xwd9SUAy$kK7Zc9NJVz&#$h1bm(tK*dU%~&d@x9VZ`U@u&{)*Lp7)lR9W;d(3shjr=ZVZZTFb_|xa-k&5I;O( z-<|WC%%3Vu>kxJ5uXWWjSkjSft$WiO5m9UtCREwtr&?=IMvHYf#U<~)aCp*7t*u22 z&?**)NO*G-q~g@SIJ+Vk^sNTVq5#@(blaNV1%fE1+P}E$J#bkCNK1~g>NrwQtcho3 z-Vsn;g)6-b(9zLKKoEje%?9p3x0Pz-1(`W?%an7lrsSfv%X5F$%s~tJsm?>{I7w?nq#+ zA$i?gLlit}q@|Kl0$NvK_`*nWbGaOiy&?bj2hy8H=)$vF=|GSuHXrgqct=r1P< zzTm3mvdF3lg*;CNtGyL#-2q&g^jw#(1~1rH))ERc=^D~NkE065kJMwUqUIMv;vuEG zkm}sdS=`e8v8G;^!HO^hxrdG$#VB8mB*q@;T++w6fUtR|>Q-b*WiB^=uSTMH8CbFK zRRs{&*QCG0eN+&^7;B3tIzwu7;qS|a4{;lneowBNLA|6bH@1rLZ~`JgU@0=7HFj|= z$ak++v{N*yMF&Jr3Ka;)iI!7GkH|DM!LRzk6)e?dlnCPK#qL9hH@4v2ZY>M2f@UxZ zmvt`v-RFp_zd{Q^giZpIJRmyI&F-&e&<9*iGpI4Vlmj_b+VITcJ0j&!kpyg9qz1)@ z%;wMht@K54g?GzmLIG|v6qeQnxL?wVbOno9-yn|Cm_QD7>zVLOBg!KXx;`=$azAv zmfGR2#(aCSil(ivK>eXGHjsQAy-Y+8COX8dc1i1gdxlJXyhN#VzK}|^)-dr-)3h+@ zK2swu2Q|@CMqiT*a*!z{H3LJ`=KD(mpi+|2gg6a}NkucmFIBv4F!p4GvuMmr6y=rnBS-%*9lN9R&h8E0-0hQ ziU89yloUdwaXLk*An97GwHAri<592>Kl*I?xgp3pi2k#g^$9QN`kFdl<_C}Ht0{)U zr(1aHQG6%)TV_*`q(gN7ib)&ta9itD()p_5h>QqpI7eyO8(*C!k!^*4iP?n()-N1c zATd9oX+R>i#Ti(#WiL?v0jR$g#)@no%5A7VZ=B+rg(qBI${fjT`C144f?f+ zG$^A>Q2h^Ki#@yqG^BpU4@eZy_`!c&%y9p0*(G}#^BOQZC@UxP|4ZFrPbF@)-`~`w zXO&kX!}m_i6j`lVQ)W4JQ=4bw9VEk&6d+quD-#!B&-wX&fGa0+>&^XU=m?L2n74Ss zrFV7pE~))~Itcp*_umy=P~FG0OxN4Kss$x$G(s-i_npKn~q|`cW{RVcmahdU9 zKIiqug~?a9mQxAK)BTd@Ue>aUV60(mcYMjWju7k0jSswRYxU)KhT%T~(opzf^XgOF z%+8DJNcke$%w8R*RB?A+bv5CIKKu@F`xaP$J{h#LHy6BH4>SPv7{8hR6%IuS%mP!$ zW5>qI|oGSYZPDg$EBTeqIZLc;_)pO$t zy%^-&G>vPc-v(%dD%){jGwtz?cRb0!;YxAM6sY0H(vwZgps2oC6S~>PnKE7g79>ZI zvjh(V3s+dL+^c$bUUr*{zcwknKGI_HFu$rI+-3SwssPk8!|mQ)J{alSyO5{Hw=xeW1Rd3DuVcDkl}yiRlH&*xzaI}>6p_t?zO2x1`n!^Do&wv`I= z!W$i!0xbkjZqnU*g^l@R-3<-IbN?Rp+{W3?Bc4Rn6Dky;-EdcL=%k-H*;#J$<^nvs zj9hlr*79$^wy-ONpB61cSjWXzD0yKrkAJ z2!;YuWo09?qL-deD=eF5*v*Vcl zp_%Aibse^SJ`22xI~fr;4^EL%3}7jv<;Xo{%!4~%@qaT?v}U*c+g|>m1+43H4UfG4BOQZ_l4fO@JxFIqVWSeZN9+(ZQb%t zcG6&uUE;2b5<~VLqzjf5?IF@q6BC=AK>7FMc59k9y#C$n>myLPEBX0q)@Di=jB8q^ z_BZ{z8Jck7ryT8OxDNj~Y)O?d!UB*UOxY_lfGDzEQ`Zp~>R;iJEIq7K`Gr&;J@6F9 zxoOf-*EltJikS>^53(P6q`{RNxomwQVhb+y{Y#EQr*KMq>T;|jLJljxT-^hKA6C6F zs1_1Pp?}k4gp5mj2yA$KG23*@>c~+@VH{SiB*fbwU%XBesl~qD1#3M>tOtPIk5sI~ zF!}_(=lcugLaT~e-K0p<%p%rhoh}S~9FtW-eJ1ieSZLCg%K|28io}<>OaU2hLH}^hb0Q1)gYm2vXFdW7yH`?j% zy)vPFNu8z$A^PJmOpeimxP8C?5t-Cg0*R`1<|N^L)3Cz9QI(FC>~>szx`+e#@buxG z1_oEDta)()j&B5p%hxe#go>YyT_9iZ=kep4I0i2HLdjJ(AQ)bxLU?zqkri7`^ z4T+ufbF)tfk1jO07Xnf0Ws9MBJARgOkwZCfV?ULcxW`lS9Z2yhNx!)xPu778g(DB{ zA=_K$hy;|$Tw)~wXbM1YHy3q)&U<;%bRfFK-j$9fJrGqpbrV&@9I}1fxwv2MD-%9FNcgO7&NX zoX#S1Ww4BvCjI7vC$hYX@p=qs?X4j`rt;xH2yMIHJvYJkopxNzWt88#x212oVZ1qo zY$hn*Ap3T}&gfDK3VEC&-M8)!*tRisM#cPGpiT6nAiCtf5shr$G_2H-`N*Fu0$T#L zkfu?Ny+e|sQMZ4Vc=re4CCDcf<)enZPbw+15}IE=%+6O28@}}#Rie?Sj-oyrJKC^N zybA2O!P|{>D&%CiAc`m5HTqM4g2{IkWh->yTlcF7w&4?XwsV8P2?3IrhiID}?HY5^ zE3(_(ZNsU{P@VL~DF!DzMIGJUj<3gO>S_D_tA_STF99HT{g<{Qim%nD=*+jX#uc2* z*+9jM6O57fc5DpB^RfjB*G`3&AH=PB&-)MdWtyGJ@brDhTKDBu6Q1}6;Tgu=Rvto` zMKL6%IK-v!@R1_k0E!Kw0XF= z3kT4lIa->IYrNybn@#`hsIwP(jENFUxyL-d|2P=|0HblbUjHv{2uD&t7Ahz=JLkXm zVj2L}ru-(;Q%+s@Fsy8hBZE9D8-ZJZC8{wBje@bT-64idhfAz>YhRx3rX?QA21wwq zJLRsiQ$HUD1Q#;|m)zC~?w8y-C(aOQ*^cl zl0<>Y+1S58s2j7tQ1zedTf$D{U`R}Ib=+2}SaSQZ=RFv0I%sLO*1>lzhrtumP;PoN znBN%d`Yqat(2SZT11c?Mrp!e?2`KPmVwH$sh~Q}~1@!WY)YY%GTC@+JI3!Sz7xn-o zp%%x>ABk~1v*Pr7ZAFG=LrN z3S4LLbb}8hdI_=rYfk+Ff173sKYDt9-c;^?<3AKxJ?m2nKIKqS*oU>ORCo~wQ|hK| zfKx}DvhFp~Jfo7KjgUU-L;#;r1GsTg@^?~}^6nR<7dD8th1O$AR)aOszDC+kl(7ra zKjt5<^~oJNlhLIZaERbqj_+UZH7>Y;I&pWDajtn#u5BIC>39oJ7sN!j`M{fE&YZ}K zkEkm)B(ahRm1z=pXQtAWHgn+{pGcCYlIq{6_Kl%V*GA?bX3=t>YFs`V0)#NYjMH3* zY9%H7A}Q)1YTN%iz~8=4%|w^KmqBKV7Rz#GbVVpr{o^R5ez{YVANWL;r=T|7Cc*Y0=QW5Q%WH0Kn+4W&FknmY)X6W86}+t`N0$!4{gY8X+*MwT=zukU!yA zKROb$7P`M4SAYU4Y4R=-Df!z~#Hn^=QnS6tLLnP--Zm({+UTZGZ&M30Fmku%%lN6X zECFh$Uoj2@&0^f`ya1Rfj3ci(=bjNx&FS5gnr;~GQX4uR;+nE39`Hvm%r7?XDr%bl zES=a=b^&11Hd_+1L4_LrqKG8WT)yur)4lR%WJ|6UIGxuG)mC$R!31tuTV#7RZVKJY zYNE5*WD{Dqv=b2($xBF~js0=aW!r8?lY{;74kCK*;Qb#riCZ=Z{;bPJP0#&uF$t!3>d5xaka}u$cL?_L0DnU>=|4|unYyxh_1m#J#KhiAS zoyJLSfbjJjpG*{XIx>OTH=%3irWZsVY0Rzv?S%hdO9&Sy*MA*x4eg(e=YKpQNVBP~ zVOZz%@K+)$WMYxPpxieWcpx1GHW(d6Xji2FdWziZhZJj4ifreu$qG)L-rVVVb3wYB zA-h*7dgTQxj@g9sy37-Wbf3ud*GwgnVKUN3isHyR_|DSs6cg*{|# zoSEo-eV_2?6w&~QJV26tYGL;NzcBiL zuBfzYH%IFcm8jhqCe;&at0+et8MsMR^iK~@2z+y&9D@MIiaZPgq5W{bc;lJv)b7XF zHRx;1J4wjsk8ldmw#JVjTv8}UTF9-nD^^ml^8&XL7TW-4k{hGy^Ow<-zk$KTl%o`t z8nzjGZFx!roAC^Xf(8gr6|2>zTJ(&-^Hj~W;-$Yl<)8;)zS+vD+qKR~j5{nXq9+zW z<8BcyNGKo7R}${;GnfnHda;J^+N>RtQh9l|I3Em|sW#YCtU+`e;53bVwnfRnd!GTt zYViTQ<81(HN#)`~Pp%VY#!s|H}dV9waak3@P=gM`*yl`O~Zm~w^-f!O+!m|uk%7+PEOS)7lVVmT; z(PE=$`iy^VWLwEJMZ3dwwua_)w9bDO>AJio+Lr(jQHvGny&rr_5X){*H>=hlnzY$r zmKot{lq;D;$c)S{dx-H+zu{{z558b`{`ECGRV1`U2nmcAM^BcRTd1 z+Sg-DRe?(wnxA#4PlX{mAy7J`kLO!(HwecKoTc6V^5Iu~*n!RWELV=QQ}ii*3pFJj zts@LMQ>95upif4(v7##)Ro|#nv!T)o5?}-@R<)uRcpBdl?-B$%AF@b=9^wLrp^kAe zuV~C5u*6JCaW*h%t%YUSZfAcjkGd&%QY63L6n-yP>at;+J1wGg4G{RT6Y`)DV5vBv)cN|#`k8_(}%J~o98#mZ)~W^+q3$o~b6j~hxMMo(xs0PN@*2*sn3 zQDl=s!onK(`!Mil{Gti`RZGrrlK6l#!)8Q-kkyyQ0H4V;@dQEwmv+<{!=w=1d1jJh zV@hz+o4eDds~5YbhSe{YFjgOLGH`0S3lE5batB59kmGQSUvn1bt&Oo39aP!AP5;Hn z{x$sDIA>`J^0+aJ!*Xxs`@Lo~qoeh~zuk~pEg9*_M@el88`E#;ufXDu>)*z7*tZG{ z)0@Pyi)M^J7sTXO>a{`YiRYU%YwS2#p%#r{g?hBWm?R$X!A5ydmUh} zdEum|>-|B^`W0iik3M{CLRf`wE*h_Dr90SlJ(ChLD&4{}DnVUUweO{jP;d1-kE z4QUgP!zh+^^{Jy>P9ua?X=;<)>C3_8{Fp`{{>6)w*ZuXR7cA3bvSEQ!(gP50naIDG z)ZnQllWz}$Q=yMYLm$$=EbxIqK()ImsmJMca{D%%dJKgwPR_)%+twve@#}cAL)(wa zFxFi8)g_h0P>g+1E!l9Cc)e?hmW!i=&a2+oTF~Crq4dbSfO(p-acfB?iBeHrCQU0w z79slh7}*mY*yQ*0V8pkpn6zFXK$(3>-VRR!zw;yS8s@)j^G~R>cjKS~nSsGo zhkTVAQ(1yk%|XCDd{;vQ%UH`ur++AY&;;YA_CNf^wsy>$xwa6{0#P$dO(m9$$Q10^ z<99Hx^QYXL_crA63k$#y@e!lA1DX~iQ5C8c*1ZeR1eDOL2?0c*O%TQqEcr}_rRm5_ zq%%?GiR<%%b?N3Kk%K3ZfHJP&_R}xS?tlhvuh>(;+K%w2_%4h%Gu&CvrzdELaZP!yHWn=X z>!E39;N>gNE|^QtNm-X_BFD9_arsv*V$^r z7k^Z1;cQm!A(Xu7kws`84+ce>4g#A7$)tHmO;U)IKo>3Y#@CI>LLPttKo>=p4tK1a zPi^#0#2-_Q`~vedQcLw}XR8ZZtj*R}?5Z?1F06wd{%H`seMSqJFZDlKGh^yot`Z5Y7?Nv(7FTPtz%9d!G8 zXtXf-3y~e~xyqu9FFsT1MrfQ-K;gS!akJ$QeU)B!9x^_tW(HOpVH}ZqC)qnay(Qg% z@=NYcl-z~qjmloc7j6sB@xPeKVCFpOj1)FLf3?ILY+eDKw&8sn7!on`@dA{ONWUh- zBb7)=djAnhO~a1cRBVB4x#(GY40Cvvr$ASjd4P)5-C%aoH9y{ajapEE$Ox%gZ_|(4 z!HT5}3q3557##cqnq#pj{7<1tog)N617TxL6e_0qZ{N`MkB1YS7?i2fO;e1Aa6)FI zS*~;Fir-o6$HPhT+pe&z=bMh?YD$;{E*6juNCPsp1dEK!pHBlcUvDB=` zj*K+CYgDU>cEur#KvWHvi}aDtDqb_!W+u~D^Yi_Y7R&KnNicyEm@9&U?mmIF$v~J9 zFvjQ5guoI|U|#0~p|$v(jyWNf0v*830iGpP;U~)5V()dcU+!w$geQmaoe#8B|Z-mYHJhD(~ zw!m2zyRDZ~K!%e09K>r$eO{oqvo}<6EXkOmM?yx%OfN@4`4UuJ!Z=%lG%TFhP1txcf!c)bj{#Te4K=p9v;y=_ecHs*<-u{j6( zopjueUvYltmei#B4O{M;j7YEJTRuqqFge3H5GUsZddJ?lYaPXxEhn5YxD=(qVm!_h zlOl4Pv*OQ`WIx*w^QVrguDoWP;;b_Knx=ot#nXvP5_2vfbEb0korqhqzyVF?azXn_ z+Mj@(xiy`qAVu-SwOJb1D{;X&k|c6td?--C>fKiPnz6dlvE-;pl)-UcSKrMvT*x-twPw{kRmy zu^W60$}@rj92Lrzzw*n1kx9^bnO34x8q!tZ^OBGzrFO}UnF?%0>7$JGc4ueR7@Y$N zT4g^fu3jTbGF0js46`C)8l(BG`y4fgKCvpt5hiY~X_7we4rAGSs%RvKks~k8n?WoC zyHrCX%bA{Ew=NI?MAO~;&jhR@<4WLOsaXq=6BEOxomx7_7XkDVpJol^vlEqF1}+rW zdniBJ96oW?*;fJar!&)=(|&+v%+a$QEf}5iQhlbcZr<#v}Lj7>RMYH&s|5mg05;|wCmhaelCpy2l z1qFrkMf?oFRX5pLGc5E!jZmt+N>yQ9MCIpcT^sCuna$q)Ufp$GFY1-R>6_ch94Ow&&8odn-}-)y zq2v;c_sk>El4JCN79?p`H0Y_5S{J>8(7HX?K%stI60!rb7l-hC&Xtb@l=FI`LZZ#fyBU5{YG)ctrH`UbVkjB7!(_kgsq)m#9a`0Q4-k2F(?S z8d(k$DkmfBvT(!(mZ<#aZ}7s_>$=2^WC}25Cg%TotP9A-`XQ&Z+2ugb6_<=M;?;BD;CKSew_MR8leHsniGEQ z(yS$tPw-Y^SMU8orlS@NxMc*^=hK=ujTg4JB|Iw->wdL=x|#7DB|i~E5;shV80JPt zih7GY%;MzO%DNjijEBW^7O2H0WBS81lm^gk{V3Le+{@jhr61s=?>RDc4s;8zcYu9qyhU%&k@%AxYo zq?ez+S>=kFJU{k8x7}LwVFB1)1woO|wGb}eF1g>{cL(>;kYA);wkomGH;92&T31wp z((q3%^i!D$8kcQ)N%?U!oS>b{KTuRAV(e35aMy1qhUS>`mHEj?%bn z5HsOCvkB_-nt#LV{2ojQMDXvq@BgdLuc1OVF-=XNL+;poExKo^%MPe^SxdFtvZhHx z>+_a7ODU~E1s+npWL2yyAclV`RCgpxbr|B>6fyWE>;h##$s{fOniC?*Bdn@R;&S09 ztMD>be|>6sJvky@$U$}RlViHBXkeUI+v%_@O>{aNd&Kyh$m=DHvz7BagZc4K?=sgm zS6|o~xu?h*8h-GWIS5dK+`5mY6;6xB6pBZVv_RK%G}RShN9c+l!kUlQ9)f0UP6 z?}WJzQ#*%ZTihRF;-USn%;OLK*N-U2@!T0lR#K3SKwXss$LsW?bNl%(U#qN;Qe6Co z8d=mP+&1znYL5Cd;3-`2RAn0JSA67xP1wq>;5hgt{XT2WsCNLT@am+T?3UOYze<~F z@NIX0DH*|ih+vxVbFm}&F0&@Xkgr!+7WK6{WF(G}*lv$Kr4K$T1}yxXXZU(SUq6t* zpb$cnk;;JO1h01Y%c0=PytKhYlrlwM`H?uS{1c;L>Y$rvt!D2ZXdXs~12>lm@C8rq zmUEy=?I{2!un7Sq-*dasEELxz;8pgBD;YrYF&#>94B>%T)?^l#T^? z$ELBVts*}k;mmw2i(R{G?Rf1tA%--`7)P>}_Ol`xZ_4BCWr^Vp5^nMsQP?d)e{}Af zxnwGDPih0%Y>JX~+L%?Ivi*~ItL(0bs-^e^6hjl52#qD!xu6sob>5a#2y+pZlx#@z| zGQ?M6fFyPlBds%CYcrd+bS<@Duh&%pkY9s3SU148toDv9^{C&)<8}hH=lEF$X$hqY z$XU~~i>lM`wi6sqZ5HMEuMA*KRyKp?7q@ltLa}l!fZxInr#bw$FO<_9p&s zo3Hs(Y)`yz2iJj^XLqZn!kugLSyr2sUXX?B*j?6MoWs+VrPUT+C#?K? zcwe4y`2YtZjA4lQjS(vxAF10ORj}qahKQ_vi|gV0toiLPWS5 z)TWoO^Dz-a52H+bJm&Vy`Cue!<$K!sJv@?03r*@K_pP0~vBeCrNE@wLX9fu6_UBxf zI)05bj$J*yFw~lEWsVVtxPWUa0GZ15?FxX1fLq(3EYg6h%NxbnIkkTW zg%f;dhcl*%3MR+C=&)uQ#h#1|0E{`O3?Jw>^N_mVDj&Imt%f+{C4Z%KQ-(7WyBS@% zYj#!9E$_7@ua~iNRPTdlV@xtm!836siY#yEA6RfsUsPDYi>UN(NvxyI+m~;_|D)^J zN&%;nncf^<6eR*~L*Y6GZO|HZ(PqYJpv8myIv?*?Vw(v#B8K<@3I%mE0m#{#Arycj z%*N-(+PQmL_GB@z7%Sk7Yy?qL+uD@EU~r4D!IrJl@>TU{B!f#*f?bK5JBcf*Z5a;P zu~iRR`NKd!{e)$yo?q{-{25tg>m!VB>eI62cTWaML&jA#+%UGIVZq4L=0nnWFe?IT z$&taJ8#waBA){+SFCE4E0Dm>>BrzZ7cE~5N5;~7~MxQMhMCU+g^}!yB8+rdZ&uqd^ zgC8D%7zkIn+giWVoBr;>(BWN*6WUycyK7PQGZHV@&BzGf^3MqBO17F8k%Jby?+PXy z&$_8F5bfG(w1)$lA%;@w3+yMC!ef{wylH2a<%F1sR6{RK3AF;815m)-Se42uv1yyf z;@chjZHPPe+WTgYuT`e`CkQ!tH6YVqW(AGbqr*sZa2WXtF6~L7%3$%d{JBzFya>>Y z>l%&3!y$D#^&q{pduc%p{F7l`a50398C2uLb8KK23)bo1651=;fDnapi>Jtls`dw+KcQIrWVa#q>X zN>MJggkee*e!WJu*KjR0ut@mD*YL6FZPUoarULriE=s z9LyibWO_{>DU~1mL2MzgB!rX>ryRtX<7Fp2H$S@75$(UQ2Ck**4U49{2rCve2EX{MhUTh@Pt5e(=LW|1d2 zxVkZ~rQCV*1_1vfZuJhd6SB$4aS(6>YCRpc{vdB>yyYlf+wGhgI~mA0S|l6iL-E+7 zId515i&xyVVS}H8Q$EuK)0t%;&{#_H@+R;ep%v6*-!Ni=q|Ks-5`(BcRo8Jm%0V5y zkbsuQc81mDdHAA)HcX@gH3ep0T3q~nBs<*4NWs*dN({Lt7VPl zY}=pa(7(3^4DCc3Zi`J1^KN#Rym>W|JGS_#e$bA25zIC-w@lN1w|TDKF>?bP=USq# z_xST!d1L3hl`+WN%G^~Nyk9=g_d_{SXY$`>ABb+=zmc~}O@aqe?DCrIsq1m8q){3# zdaGE&0Mjg`hI=YU;;%EC*BOU$p9AewRwkv>le!~8s}4T|FNvyEv3B=+!*#YnuKO2* z5K*~x5vr~?IJw*Q2jNjnT{An#1+r@@;AW0)YnpbQ%xG2k((K*8UQ7H#pvY0(X|-jx zCO+H&4h#WzPRKg^VvO6U{jdKb@^D~08VKHBnFR!M;RJIz>kr%Zr95XT_)Z1RcT-m= z{sGYtzmNa_)q|apBUR`D1TEFS4V)S zUQ6jW^aIn~jaob3B`i8L2>$aj<1C`%;$FK{$#us;IJut^iwI;73%udj*|O2=S}PSo zSM^AMbVCG=JfPe<5sDvCN+IvpMeRb=kKQWlIk5cLyS`!AE^>PJnJg#(Gfe?7j>Y{! z<#`s&ge03i_A1&c7Q-Hvs*{1~Qc&mgVpurY(8V9wgT(%BD7;gVKFBp!94vd!J)qs@ zx!1e(HwARtGP;#z4#(SK>6lRJ)fqedK6EW>h!}dUL$55>*ni81ZQa1)_ zWfbN~ZON@e6@M*p36QaBTRs3H%9Q*i7>{%~uY>tv*YKnD@TrFd4(JpXM}38Wtay*r z`d`K%adFS=ksW-Ax;6I2PZJXYh4d)D2reS~c7$mmyv^i!TS;e0|4BG`=Zm}*BaGcB zaki_vKfK#MOoa4ja~h;lj#EP@4Fz=Ubp1nugvSNhpsXI>wU+uYm>~rC5rQ4$!TPR$ zKA`Zl7Q(ASm1>p+*uUj~Yu1NKG%$#`V1#}cIWUD+B)sK)Wv(~S9-7rTCHVVW)J2(} zuT@v3-4q6?_DYB;lWC4|Yj(sMwYWJ#>(Y2IJK|!jPc}>tJ0hGZc(qYI_6$iLPE$3lXKm+ z%(OTn3Y%wQMh&B|P z=(e~_MbquBKaIHgEWQPL3?k#TZp<*eBk2H{*q={ct((bQCBkZr2tuZwV0MFG*6G1iXKvXqAxz){83 z;+pPm&PCfUgP$fD1eA|?Ca}tNRpDF;5z5*&<^`A)vk4U4IbG9Dyam+uD37{jMvN90s5R0f& zMUOeQGy=f>{2mlnGzEuo8_D=C}<46XsP4rX)HfYTVz# z5f*-^SOzfv+cGCvvv%+3lT8WR5%-oY&L)ITQ*V@*lq-V;-w-w<^R{2f+Bt3e-Fbf} zsc(e7t-X{qw%i(0#RZ(YbeMcYW<8JDW{hg%SYrUG7*D6haF)MkrkntTHPpMPW}@bY z8Sfrk+lF*D(GM$J&QXh)wkVr#7w{Nfnd8v@(iJ{K9>_Unmeu{Ec3(>LEw z*H2Ctk+jhf6Hh#43 zDLw#@myllI?8Yh`)*b+W-^+k*dhdE({|R7=0g(9GOm2Jc&t%?$ z;M1Z0Ghv!hWg|%Ocq<{xI5JgtJEoHT=P{*_C2g&o(!v)gBm;&yb>ae=Qd8@fP7`p{ zoF2%v)N`+VOSgCWjQds9-A9%?3Duwk+B4ONgleM-^k&OOlm(vB)U@6ilRrM7hX82E z^;~bRj^8@Ut?7IxwY0Fx;z^Df^Q;zx$<&qjjd@n|1Ie?jb4mkT~F>n?i8OjBm;y|sP{&X3A;e;^fl{An~5ycX3aEG^y@+Ik1Z}e z)d)GqpTm~Lhz~f-R)>qP#P_nI!U|IGMe8a*khA1?BQDsB-8LKMtB%?oKHFe|0%2)y zM}IgiT+Q`1qtS(6Hh1f?E!qu-jWKA;>>UPONF2g4N8R#Fn1+vsd%dl2=>XlEjueEm zO%pQlC8(|*avqRcNhEfRNpPQ+eTvi`Fe(@`>wkj}wlrlD4_c6WZfa+3%EqNd{BA@LTC6x?rH_zeox)XA zlAxr@iY3vdt}b6!O7-&uGo($k#>ps<;Pd9TUf+Qkb@0^p&JhWE0PnZ2ToG!+Es`!B zp4?Txv1|)DbxkbViVpqp+z*GB*#PiIsm(B;g9pV`f9TFD_iSx44(#8#WQ8}u zwT2&e910cF>kLf%V8 zSFJgl_QXAj%d6X9H(J&Ai$S#0O$}sRz9hsa`)&S=e}(tbS}#>`P-EH8$Yb4WnAm$5 z2Yp<-jO`oPVNDyhu^gr1$FRV%IDr1_0{wI)dfI`X$01%uNw|oOD6Ex&I>>+7dkkK| zX0g;#rr)|$C(I=QxY8YkRz3SG9Iy&i>+|(UO)t}3S)&V!zF#z5b?)F*eDzjVU2{%j(|sov!jB zHptf6kQ_94AUm5lplNAY;!7lLJ0sdapy6YS#-EQo%wpAVF-y9#XvML!M7b@d#Kl3b z`AN2#K+eHDB84+Ti1?qliVTWKaC*u7E}Sz>2OcW{XAqr`qP<)Z0$=b8Qwq8G0=12t zuh$F$z8&F&XJBjwEwQC7jlE4%iqhoR{=hp>aPNJJKrNT6Cd(RVQ5j0Ze%vcbD0>$# zn^7CFdfx=->UZoa;FWXwZuah}>$p4l?_-?)B3njB0JJv;HedA^XQ7aA)3XCn)$yu-0(ln6Qpp5@N(8c*G=3!FdiZdakSkq{5ay z)fqtZV9EuB-{E+Xlv;^h*={q80q^UKN*%uKK~-M3y?gZnHK zFO1qfz0V?EExkx_iYTlz!tC*=LI*E5ZaG^T&Ht9q8Pu{Y^6*XtwXa!M8qY3scoIJW z;6CL6_V6Y(uPNk{YjW6Y_h@Y79Cp^zY4aPz+`7|)gQc>HoTXp`bQ8gew58yF=i7Xc z#{}S}zVhTn_rWlxiVzr5(3#^`xG|hX>j6mJ8voiSL)*F2H()4#XO}Qd^WYP0smqq^ zgK1H5p(r*5J_3M=+S7oQ5ywK$FF`B;ee=>Le!Mug^&Orq@K_*|4QVbi%Up-$Ur+ah z%O69n*w|Kx)AYxaXw*wX&Z0;Rsj%>HpDuW0{cgfeA<20YClt6{Uh%D)h@Qi>GFgks zoT!i?^%OQ8b5Om~c~ompsw- zcNl@QPtrdn)Hx@JS<2EpV*~>s0;XZoLxXuPFN&WnqJfm-Pw-m(%V|_d{J)ZVno-Z? z*`UW3Cu=Ic9$`BF?7oCH*Z%X-NCd&wVyFuC)yPafa^MVMQ;!=QSz~|p=5q?QiT5kzQNKYR!0jglbyP>mgk9}xa+x(D4di;d{s33AKywCPg0|0uw@D~U+8svE;ibim z#PfK{W7qzhd-ucaCoN;^R8}^SfQKa2YJ!MRrYIth$+jQ5ri%6%aN0#KKg| z+yh|rv+crbxqs-2M4-C#aP#&E^Y$>xWQ0c*up4)^qJLd5S^}o*pEFTXSr|nK()Q$H z{_!#Dew>{R_5#t2;`jg0=I+0GyB`l3DkwA4&&pmNlnOAVxfOfR1`pWjCAK>Nik``> zSII-{TuBERc7=U(yb`HRQ?Vwyi>AYA=w^Al`H6Zf{L>vex%oUB`b(*(M^gH5Mz)TV zHegtP+h?`s>3vmANliwxmUKye|~g7C>2gR$XwXLs|_V*3P{pZag@`>8W@ z6)zVoKNoORm-Y+Gg!53hZ(;-ExGJ0LM?!X(ryh@!P=Vb%a1f}7M6Yq3SpFuDy|hIv zqzdGHxe@0N2qJtRQEF@*G5jf9jyYdyU2yX@DTUdNZt)zwS?v4Hu6oI&F zf&-0RL62xl4#*xrb6rwXEP$~8tBUoW$y(gVZVJezjOC*XRiY^}v{&eYNC^~^Upy!r zfJRxhk2K>|NFtLf79xF%N;F|=+GGeK-lt4a>NCndt)9 z@dYw19%9>x4cA|qJtxnU8w6_ZeUzrTZ!0JK!{S%zwpW6;o_IOMxl(~qy;9Y=g$6~F zIpENbd?-F;Yr-F^6O~E2T>>+#-W2$f+xViO2D=xv85iPBB@W^i^L=IId|&v!TPxTK zfJf0Jt=>9#<#uQ6RR*KPpuR`WSt-3GolJ;B?UMKXpcH_^>N0D;+ET%ftlA_O%AemZ zqA(;cb2r4g&4fRmip^7YKFBQ7^+Et>14v|_STA&Z2dFLbsifvqLRj9pq~9HH11Uvm z$*^gJ=9T1D1_ZkYT?wQ}?S8rcW3L>f${`4?08+JU`RYBs^iUhIpNa_CY;`@1x6z5r zuBx`USnjY$*zmI5Bz#<3uc^2cOQCM#d62(5=`zA3rkU1p^JNCqc*^aWLSxFN0?4uQ zTAvrU(`Bqi1(aB>eB25dPy}FzM=-mGR-p5bFhZ*appqhLHc>*YBBl+G+rZm9wa^qu z%V@~F_SGUZ(6SvgU@I(BGFIW0sUi-@%&_h7LS*3`l*$THPR>{mb}zEIndr#$N$!ek z<2M?9$B!*=>ErYq(TUvTsPij%0gepaWghV5*9NJ)+{FW1-+Ar_gGl&E!SWHBy^|^~ z3A~`p?oD$;n}!fg=c%=7`R1b%QJ(39S|A3t!H2!Kb3EN43TC^fc}FDrL<#)$8O2OK z5qfkq;Wn4qGPtI?ub4vzm4t6jCd2us9UXtSw2$)=3hFN`6`+Dna0xte1GZeN#oYrm z`$x64A|D0+A{U@+zUOp^DR{fGz?w-F^@)R<8`qykJ*p9#H`&CMX$B#V?T@(LYTJvbN-6^6Pw4<7a5qehYqJ? z+?eRe{*zAHU)*+gV##br1&FLbcCiCi)^!4F9cxhSUM#YD`xv$#Q59j^e2iF=&<3+M z9jBhAOgFj^y^3N4mg4zo{v8fIRDh<1PlCyXcG;@?7ffXrkWTyY{U;*D#7+8Uo*-Bd z<{K6oAb%U#ys03GHnfCvhcHU3g&x=j)NsBsovhI@Um z`6S@UU}3ij#!{PWtmdm)rA*MJ?2lN=Phyk|;60At+q}E~%I{UeUVG#ALff^~oLo8fbetalNP8u}*b0@_RoavjD#MMKp#2!9KroG)~{6H$@aW zs}S60SMvO_-)0rKWzF7-Mp# z(|yTCeW3#{0X|)svp9i+owfSYhdA4!J1=&LBt_3$r9O~kA zU||qFmfB!W7Wke33ZO)TI{H5xbmovZ8y&7XkyU{hTXTyMrq}Dgp)dY%hVMms4{C}f z_4>8fwH3`CA{%UfhjVrwQ9mNc;(UV42jK1pa!4Be0z{WB9>w`KiI7Waf54TKJj|J- z62HJBeTLl6|uLf)yP97FEOu>tSkVxbvJU z0G448T@;P#Cf^t9az`+Y;rgp)1bwm2yU5IoQ< zTWMkkR*RUoHkn8OG5EAcubj3UO^MgMWs&qf2JA2rbCg)4L{KSRQ?QqOI<<$Fh48#Y z{#7qfNejfr5s2Yv8kO%YiFxyv=_3DnVQ-TU!%Wa)Q$&9g)~8z((t|MiR26nY?*RDl z22Z?47y|^p8c@U+Y8l8}ruO3NmO9cZUE-^k#a^L+{}L+;IU!5_Br{`Q>y|f36XNxh z0!qyW{)QtOq?W3l=uK?;nm3^Xz`MruV(r=Vt(aFCbhH&hqnrjJK_txMVbvt5Y$bC} zk}`!==nIvOVX{iO{3s^d3Vzkdy`3+_5(p^IB;gCnY7jYJn6cQY!9AA-zT2?*vZ@QX z+A*nfr_&fZ6=NPtS8s=NxMm-6)s!n+{h;OL*yJ2wA`Ok?lJ(LeF6szPRf>E2f46k+ z^n5TRn`Q?5FHHwg3zR1hwXR3;8!s+1ZKFu=iID^HV= zZOZWKr{QNqC^)GkLBGEuI&UkbULBBNl#(UXT!+Gwm0s^}E{J$m#$3y-m^U}{+uN@_ z$q}sg#22mGm?YLvpe67c{f82|fZsAp^KMuCd^ zBVb?;)~}PJKoh&581sNQUXMX|+?KF9#-HwXe?|^ba6gK^ef8WVNZf8%IfSibwd-o2-Mr3VqqC#vvmr9OT3d45-x zKiG6{lxvE0D{_t*e7UW)R3)$CB>Yn?(mUaTEEkUM<$Wqn6-81}@O~pTEiC>S#^3MN z=(=Y4>mJSB&MRL!I5lwTAVQV zpHVdPzximsU7fFAAdPGFoB86QzLY4Vch+uq6LvAlgXD~%-f~re{2h%TP?MZ}tJKxG z^xt1qGUdo=rl}+aea*s{06x4fokOCizezcgv9p1!K9Kpt!%$?uiBX^mf(^h8cq(WvHc?jBWsm%#19f_INRIEI139;O=(|ok30N}H08>{TFRpBKf zBYq9oB$|fV03G2Xf~{ln(V(VzfqE$|xCpC^BLr-@p?Wpn)`1rtx#*j$i;xzx{?ROX_AY|3$ZVIN(LOGT zFxR(VZT4v?jz3IR1~?w%7xxPxY__I$MYalbR(8lv648Xf23QWIf3+v$xbPR@b9t1z zu2^5@bKw6Oqy*kRQKI5dM~GEb)!)(qyq}TGtcaDL_jGoAeV#2en)u(~ss>+}?r}et z?37n{wXy@4_oKho(Z&U+aw*^wvCQ$+qP}vjcwbu)v;}}W81!c_Br?4 z{u8U#Gi%lus3EFw2=$@2j68*~a=7}c@3eA1`*M}@lmYPCCBg(7t5WlS{S^tBKp&H7 z(E<2$p~@1ojm56X1+$GU#QK1rk~^6*P+TK@>_Cy9 zuzd|RR-Sm{BE6IKec{^CUR$NBKJQKs;>;Q{I+A#Qs03}yD0C1Peey0Z8@3H~jaLdR z&}0=Su}Y#EU8( zISF;!i3w0-^J88^Vx<|(Z|w|I*-cP#==ymj{&6SfXA}`DtL-3QGUm8y336AK!9B~a zR1yU{ZX4k^IhJd;Z;l4UyK$Vkcceni;;>@lLEK>=O~2URQyD(0#I*tY2+75WQUFHy z)=i^rs^>WOA+a4Wu=ei&h2&M)8P)Bub#|%Rk3T`FR;i&W`kxFA|J)SEUV>oHgZtrgX zb|{WrinfKJm=5oFjb>!-R*0SJKfb$oAN0!FPty2Wv6dXX<~i%B)Nm3Bit6_d#7{2X z@A@vJ`lhpAx^G6tAWozGbFqC67UGGD+#m=8W`{%%tgC4&F(NhDz zq*AV)6knIW_abh-w=Q4B7;O`?V9j2>92mJ{Z)96!$<0PNmjy6!^VnHdMV)*IaeD7> z`=GHZws5V_{hCY@j%8%!$uvbNC} zg%xhbvhTUj#5wFfYOb<3Z6|p``lj3aOk?1m{s7A_K>jzL!f(a|L<%@|R%iwpQ#*4P z3qmHQq<}|iz_f;J94;$j_eI~% z#i0THOg!->$=D$-EWyB0aG_wo!q|tzcLGEmP{TKF2}O&+@VPk2-C%j>!iteXJonHg zMhh8{Kw4u1h<<%CwKYS6OKjef!VIvI4n$H;qXq3?Jg9L{F)0kgD^1;bkfOk2AiY8r zIE0xC0)lz|t{bGR#K-JKn!rU%3VWf~6FvS03m^{lQR{bHBk@%=keCe zEpr*iSGsyQ3~cu;F90FTdo;i!6j%m?Nsx0V-^@)CL-5jhSRL{+mfQMsd{XUGOLimU zZXzy0Y0r0wX~T+^Bo4%~cnK*8Wy(Cq0)sXM00fj`16k@ zZGhd!^yQax0d3#Zou~<$lG<@GSJ{(g-jSVJl-P}>lfJF?ciQwRE1S(n`hm_mcL9ETh)1*wzY+LT zicCLBHr5{b#a@TOJJ&(SU8$J^02lDE*3VicAiDsN&E=(`;s}6rxM1zb24S`w{xgS~ ziW`Ovu%Tle(b`(0w&NGx>M?`HYt%a6WZV#*jzd#6z|&cN$JHQAkKzN>(2C*10ar%D zayDSAwMjBmNR#5DZyVgAn*C5aw5W=_^feZJX3|d>T?1^}eM4Oquv$z30^sUI>F*E? ztXlG{G7t2U4+9<@}O9 zEJ*r(2`X-T)hhgi^#~PtLwc$ec|&tjE973=R1L()LG*&G$KE*{!PW4pl1nmRt9<)< zQOqIDR%0-iYgE)-7Nq*wvuKxD4<|=9mZ15Wz{%HP+3=wO z{;M4H0;Kp%p#x%Y9|AE&EFq-tC9TuR1aECs9OC|w;$m`KFH&xeMhj1k$E3xHE`uL$ z`UgNb8i*K?Ldf4}q=Gat_kWdPG4#s!0s z5?HZN(a#L8ZgaG4XG(l71jv(_)?xP)SQvH6pb$f8inATai*?tet@sJ#R4&GKUO_58 z5c1`?yXq9LMxemMuj}l$z#oEV4zN81jwOH-RZ{5r=T0M8l|+TQW{z?YlM}j}ufNb) z4dM`po?#AOysPqg*6V<%w+=dIgg|uQj%kB~W`2X6l+w0W6Qt0~woF{H?Rb$3V)l7V zb`1h^N5B<)BMO1k;H58A0CTiJq!HY=|HznDI*|xsv0)|Dn>19^31o@|3XJHs6*QoN zeNkBr>uT4i{6@I;TkTRv0yoB#H=l+rM=uWSwvXvM<65(;aB6Urc`Z9v)e&z;k(Ze3T1Hl{{`?B=R+i)9d`$zw;waT_=IWhW z(p`*cMU-!w^-^ud zrFMWl>IO-;d>zc>H`&DMoh1dmuPA;5?D1$IesBWOj~-rdpL}+IZ97eh`VxRBRv@vI z;jh)2L`7W!Kc*~#5Q?CfIvr~Oq13^uB%FRBS(_2b+{q}`GYKL|*Uh-!7gJWXmif9I zx{W3C)avo~Gibd@_d>d-(60+`bKzo&wpL?iDgjUt#7uW-~cC zjHFo<(qaLKCpc_5(c<@lq#6qK)w%KE0tL`l%l$2yg%%XTc`dNU6Uv;ZaRT{g&`KEG z7mfjTMSome2%vsj42^mU?>@mWq#+VY*ac81_b4Wj(*7jE!sR<(bs>N!rHlGM*c!hB zT{)MY2bG&OFF#SXOY+4qCz7P*Jb`M*&ikS;WQ1QxLRMmIMW{dk_e-DxX?s^3sH3N0 zvFZn*GSjpx!LzjL(yUH^N4F(*_c3&H)m?5Vj#7ZSFHw z>P8MZrL@xmqUvR4O=G}e`U@Xgl$5vh0!?1zcuw#}=MrMX-(kyrr)7b$X(MIRPJb!| z>dNIz)un7?$L(tU~#*cbf7UsQx2Ne1{grsAoOM*v9q zk(EVBfzno)9Be=qEXBh1l3R34F7El>=l$hWX@8d8Yyx#X5;6lduDEDh<;~BzuyG$d zKi3})*7Qh;p&^RWLz2wlu*pRV0M)SY4~7fwU6>&b$VjOzz1JNnSH#PO`zT3G+L|S@3jt`)&e?TG zSXa@ert8*BSQ3Fb#n(fBJ_@(vp?J=E<3UF)Gi2cmqf?H`6$mMXtGY!v?xcB#-r`qPsaJ=iL~D;ckR*-B}V+ z+t*yneOB+APG*k@@c|4rT@+7AE)ow0)KBvsBc$#t51lH{&J&>LuZ&aEtfjV=`}|H8 zHrHM}ZMX3-bM|6ErwJ7V40u2aLjxRL#|nzOE`PHI(VA?bxrv-@VpGUs3xu7;*9x4D zG$|C_mcs(k@9`+v{*u67=o%H;R#N#wt>=3NCTLw3A&9%dXw8))2!wj6{>{*w>DJ!( zBEn%#2`Dz2wetXT3D)yk&;A@?p(Kb@J7m2cu*CpHb6tBANwr*762nsEXNNEO%UoW9 zAIj37+py_}UyMhmg1AWEcXJ-IFag2lP&M?J=_1-;sTzHe0zJ2d!2+OyItZYb3IRY3 zW`qWUU?Aw2a8!t<2tn)7L%^RKj*1T5w8#m3GO!5obx?p`S4SsNFqa|d3%M?DnGSO^ zt3H0xx(V|=zZm?dSlJe{qb*8Zfg-D2WUY;*a#dj3wd#UuLIus?6alk02VYse6 z+Nc-}J3s&^;I1>SywdYCFz3xdveel{&u;{04+t>PnUQV|2LvU$kJA`d^*p?3Z6cijkcFD ziSN@L(rzevdlDUvxO#h!!<640k8>z&ROQLWKpOx7ebPCG*Q>bq^79)_Gf21Iyw>-N zzjvv148@_NmrTKBF()6zYT^}hH<&j`$rPOZ-D^I>OoB|_q{{ufxjGqysGXp|EG{Ja z5feb_psL?np=q;qFRtEyD(hl>i{oJbIUwgsZ!4lo&?*@#hyTcm9xA&+3MHd2{?lkNZw0uJ`ktq_%+~Kt2C-X#N}8PmPx;UBbBf{ z>W#5Jjai?D!%`-#obw39IY6@d8~*C+^nh!gt5HN^O%p5FLRX;0cfq1lyS|nMkEqc( z0V}MgPgUpmX7Q>=UxNkE?mh`^!db!tyw2tZ#8YkUJ;2%7*S9I# z0v?6=Sz!IrB0O{JYm%%oYVkV!Gm6!wAZD`137QK-_XdGE>>m|sbeOMoQ2*8PItG`3 zSmU8lYdvE>){u^v4s+HV!wesyy){BVu6M+DUveLjXrs3N{x~9C)sF|$S@K*D(uOBn8P!5^Z! zHPtWACxdfl1UgY@fUt>Z03)&LK7<4C`mv-pUAlK6abL3KGhSX&if@=u$MA`{VA!#4 zsb=eGs@Seqa`MsZL}pq(cxuZY3nFmQO1{7peU$WrFO85!c2L?Bw!u>Mz((SPBWy>WEgp z<)4$KGod3KU^GWpjQzbEsvfH=r8YL4i{bP0NR`JZt8^8({n3(svAb2} zrJJFi`lfT4a$Qs1Y|UknD*ycOU2&($4KSxJIatA@(|=T}83=BkQnnk=ne07hV1HXt z5IEOn8$YoMd#F?po?Gfx3ef`Cvq9v8-&Rb3=BzmfI;?%pT7p2FHM`@M>>#arhgI`k z87nTOdHyt%ej_EM?)zE$e3^0K=ug-F^PZ90XWQuEnf}?EEk~m2awBkDAF>=~)~gr! ztSTy*u-+f29S0L9=`mZES{8;YELR+P6M}ej4cIadHy2Zy_UsN?eKNsuyC|pqsZNivNv7aEgwF9GUnv$h#h2ExN*jkmyycL;g?U& zxr~J$yz4IV1M+JwjKY#Unk4faGlyLp(chqZJ@nE7)n6NErLqN1iF3=i9y#_N| zM8UmpKjL$`rCRJ_t5Th_`r^KWez7nSovcdf;Sk3t!RIBED*`ec}jrE zCc9{lG~&%TjQ(o*;;KFLS3RWx8CsGA5Z8>;C6#e(0*ZYa)w!}uI|ao$*r#U zZ=Vtu#uJaNJ7VkdLEsoWcbXfHGE3bKo31|j(f{Z{-?O-}6v#e4R!=+FoIit@Xz7$n zVVEpJ=O5@oMf2v!CUMQasSx_Ujq|SZ0$hJxTe+oqcjBw6CP0p9yLYgs#&NIv?`_-3 zEng=|iVg)Py~`58UR6K*>@e&s(TQDl7N!?r7Y@sGPtucv0pQ8# z=`6l9jNp0BIvkHILQ=m49$v5wOc1R^aO8-xz<&o?WE=)0++ndtT3&NV1_hd_BWdHQC@~TF@wC0ZULq0ca+r_sO#kvb&DqRMTxHWr z<-_;UidAbXz4RDmmkHOlW!^<9!jd!dLcu62v^BC>9%V7zPxGszy&;oAc9J}|%9(S2 z>VoG(rlLVt%&`S9Rk;sU8(pq4)PfoF$Jy1>uDw2-ICVGBC9l5G)!E_@8E^U^4NrRQ z%F=n8BDSWeIi?8ix}wtwq4TMTd{8?BxoqYu(JL;y6^pQCI#YwS5XfhN0cy~bv& zDlY9wi6GNU4p!xm{w1ob)DcRscWAD}lS6(UOMJ#Z&AZWLVyMb5FXWSR*mlRhB`B1Yc`tx;6snns#Hi<)_;-xdNMx_dhHb$4r4>}%C0X%a)qRB~V5 zNHPMwJkTd2%jhOGkVx-(6X|ABB16jDXb~e`>Bm|fTdzPPUnel5NDKJIOmsULOq8n6 z2BV!GRy6a871gSkHjZyc`+_rNZN%|^L~YiB8Q9gx)Sc7p!-;nlfUvs3b2qVT`Sf;c zc69;0x_WeSiv-3ux_-&QmoE{;!RE^CRh&R-#%gY_*38Q0Zf%&^a}{yP+$G3TV-8@H z8lDnf)=l;Ha1py%HGjvn&jyfV2=+giS+}Vv4F%BOCI0fY{6)C?V%~lj3R)hSgsiPC zA&`Zt`h)P~&8Af=rY}BcsvukU2SpB}ptA}Pa(23iQ7P(^G$d8xcH;Um~8{E z2`QHL3WbI_!ZH>}CtTo4Jt&sF+)?sikhTLcCZfSi6h%clVF!f}j!!=jXAFy0Id0Iz z4WccXSF0YKhQc`gL?MV85ozqPhSLwg?xBd~1-|47`*V*Vf-$IkB)E-M11Uq?8t@Bv zwoR$l|LXnlq~cnZx`mXLd@JM>ia(b7v`64l*)LvNNQK-!fMlZMLznLe2!EIHHT$I_ zbvQ7R{0+_}*?$?e%NJ3%h~q`K+$C>CA;L4%7>3%4B|lI%7}_j8j8Tk}hB*WPP0JEk zO}Q`eugH&z{Op`vNxO-HP)EG%$$B!>zeC|^gMLl{f?=E?l$8b#b3h5 zj8Tg&TxQ!|0Q3(e(o`Q6S%m?sL_HZ^Xw8OU7qZHIC^WSOIIh7RWg8tVeS-=F2Ca0y z7fD6Pj&Jseqymdx3p({SL4g7wi#F=CHlmR)Spk~<`|iyq;ZHupaj!sNqUy!DWu4#7 z)x&Q-SM$oegcv4|*$c+czqW$;hp;VLT+0zfA9L1%E%r}ZJuuU1-PM_$CtU2i=yeA$ z#U+B-PtBGLY2=-(N&K_9mTgR!r=Sg%juFx&A8P6$RjjEg{hIC9;sX1CGvrNoed2l^ z8@9W)w2fm|5vUhWB=Vl4*6ov(QpXjN-RFo4E{qBFrLz9~iXG8Hxtf-KZ^|4k^P`JI zeVp0D(MweBk&yA*>%prl=lSimn>clzIpx52<2oXH%4~45=V0m0Px|$o?Z2OP2di=j zR%4JX%5j%q+09LR0J8#;Hgq;!&Z>zngl`0UYe4yb86E8Z33)&`f2Sdqf&6nL{I4n! z5R!lv&NEcG(;8|dxB;TbI~PZ6+$O`r4i~)1mG5KFQ#l3TrC0xFETo6B zr7Q2J<@;^ebZr;Yv*(Wv09d_=1UBI?!+aKaBVYVa{ZN!a1mlJi{YlTs<@qm$7VJy> zxIVhGDA?%Fp_s&QOjFekv_D$E=_;LQ#qtu5cqa~$2WJ#KZ!Y&zQxPkWQauw0yaW!f>f9!pEOa2 zeUOH7oAy}nD|HBIP(fE|C#f@{oYc2wlhzzZy1;mlHT}>L-Ok% zCVDUgo_$=tK2i*xwO>g(P{ObL7Dx%-2ET;nq^R+d2n=1B2w-==@17g&{W5WpE}9LJNvMe+_7`!FUlKqG%=n|W*$;$ zu>wP?lc5~Y7(*GDhbnW1l1XxrZSROt1rt-24Qys=?Z0l(#Ih79wwLwTX+=_LhPbG zY3R%Rp1rL#JOl3_zm1!*lV{uC#X{4Rghid&Hjz3;wdJfQp5?&LYRNiX@;(-LLulJj&R3k=_(bk zhh*sK2QZ5YqB8v2;G;K0`6MTSi!GA~8aF8h&Ypmf+CqcdD!Y^r?sajQ)8EzC|C0Mt zpa`?=-(S;nV4^Qat`9g#$3PTZx8 zte)kK?H#h6cttndrwoZ{Z3ge$+j6NWUhcK-CuPCNayeWs*R5y8YIIg88_5@NG z4Tz_k9)k%5DgviSWta$`7qI2(gCHi!zj*pv7^xm$2^=1zpp0xjwba4bx-np4Z-h-A z4eso0KoAuLx7*|iv=CXD>KuPMr3asRo2Q6>x%gLXei|LyT9jS#G8&=&40ut`tIrBk zBnipy%OY{pO5>QsXEEwapp?b7#4BA;62K6Iz1rvN#AU=i)WjXdza)h~z!n{9gWyWG zxP@*~QesI>&cfVnBuXcB;HD+Wl5S9_dg8RWDl+4%iV`Y?E@L$u=5zn8mL=9xM2ouX z$Km;Hc^!l?!>^Om`+c;3yp4-t&yXuGX>EsjdPS`*SWsr2$?pFf&dZL`&dN5I2;g68 z4D|NtbN$iNqz7pCikW|K+~$VKW3#l_hW%5z18UQqYP|{R0In~o{NY+tnT4B*oTmLfxCh*$>ltl3P?;X5= zS67g4;+%cZa6LDEM8eft0!grL2jJjYN6~GqB9W0VhF*n%5?lLxG*Cy;mT@~oHeO4S zYq0sI^8)`UUl5mjq->YU(V~QVG`Q-iC-JzDWj4L;c2-{KOlk+fZVEK}be9>K4F+F; z@^ATgYZSOwaib&DWop{JM@EVd#rNucFnawvJPYG;QprTM-|EHS#eerU7qGw*N$bK~ z+MD+Ze8eEkZu2(RR70^<5-)`kTuqe)!|vj<>Rlc_kC_R>IPx2x`uZS>@m32jsPCsR zmQZtF^d~Noax_o`vxmxQ;HtQunWLF6SwzZ}vu{94@*l-=9a8I)1Djg$yY}n|GKG*zY zaz=I@w2Lm!v@(pxjSKUAq@NR{{uerZPhQTtE#)GB39inb(&aR*5Uwmy%#Y*TI};ud zjg8m?tF6mB=eqn8=4Ct=dV3T&LZX~$jCRlBFcV@Exq!7NujjBZNg|3)5to`1_0$9a z#&|i_`7Z;TUBK(kE+Zl9&jj(59v&e1fP;s-HGB9VDk=?3c#f@2~5<(1g^9z zx=>&&PkJ?nPt=<@NS*lDMrF?VBf;C5Y#xP%3;!;hw~)&t*=F_7t#!PZcVq5vSD=8% z(M*})finDz6GGyesE~ZYIvx_J5%T1f*T{p6t8gD1>8{t>}y$ zszouKOyT)n8P~l31_-73t9aP)k0(vj()lI^%mmnX{KAf82E6rJY`F3ox=I4ard} zHMrL+vO*UXVQx4QO;#t~Rx2FBAMP0gs#kxLq9p_OR4yhm129J~5G`P9mf5uJ?_LW; zrfUp6iMeuar<;1ZJ1j^Bp`;>gBwuH8r`k{Hq>D#Sfe&jav%F@;eC;3erSE`6xi1>H z2`8GiO&uC$v5vmc5|S)fDg6L^Z2_$2o5xUzKSP^M^%izm5I4c%bj9UytnwZc`=|E0 zWC|pr>3SEe0Ey-oc3MsG@lM5jr!)urb0IHn;DU`+5!KxFvLcvsI%G8$AYVzB6g$2x zgBi@*h!g8a`y+_BKF1@KQCp5cgq3!BAe=K0W4$zo2S2a2SJ(H+%Ml*`G%+Wgs6)Kn z$TDIM#mu9hRtMCOJ5d3J}@&AReKWu^CB zF}6nw$rBab4r7apnc#`@D2V4${RGvNE3VNxiE+o3&#OobB441?P)2l&c|<3x&LlAj z=2STn&PxveL_$?ZrQ&Q|td~LhjaFYjMXM<*oDJ6gmSW5nc~XPw6yU+PQ3OMPq@H&J z<{jk^fCAMg>p4d;ZgL#x#R^r}B9aao7!4+(`ee*^qpd4f&is?{=8qnOl5jtiy<(ce zWY3891dZDy&}Fob&}i-NYrNT1%VwH?b@PsCBJ9oK^w-YfAh_9P*Q(AmHl7_S$^|ug z$Hx#pZUt@N+C*Ip_Uc=;k#{zhz5Bt&N6leU$X-Z?4azTm=kKkS`OY+C~0rcGPyp{7#_Nqg*d$Cdei=L%Vmo|4AD4rxw)-2xEv% zn6{_>%wK!hzC9x=p5Dqcs0?1LP0_vY+H;$tM)Flw8twgztxDywsUvc;>IxK8PG_f2 z0CF{l(8cd&9wYCb1&NcfVf3kgPN|E5{IT~|2<$bBtQAyqTpi(^Z{4#jzQ{tYHsZr# zI?0_ow2`Rs%}R359fA(tsr3Oxd|T5h)&cAW`p0-U_VR7F%{+HhWO<&dZ>2g>6@C}% zR+S=+8>Q+@@KuQR@>Cj<%Raim&b`bdz`Py7QR$ z$^t9xltEPtM%>cT-M}a`m0a7R-hbU6pk+8w0B|c&(>^V zp6P*3k0ef8*I}Yb&*g&-5EnOqQ`76hUb(L7z1;&a=73oP64hzZKpS}|1g<%Osgk1e zi>dd%6U!bmQs7Ms88}yD%u@J7Won^@0w}PEqajP}dFwOLbnY|xMu#51`VRdr3pxz; zX(79wj0B&3_U{22X?=LpgHVI~f>nM1l0=SP4b-5I#E5RHs715MWP;2HT=-45$q%@F@Ur3{$nQHt_lyG*6C4BDnBM zbPVCXEeW>R4%aEgsqA#dVd{eOoai2?Z++tT{XSvdlP5oYYHcJ1nLxeesqo*RVUcld z0di?BrJi&g1VY0 zw6tF;$BUYUHhZB5#c8;a78AQ8qGc!efMx_!JqKV6V`HJrH`M}#5h*%AYesF;6Ez)V zLa|Z{sS(C`tbW?%=z?Al7PsZ6KT_CErrgckhLAM`1)^xamMgV_DSjhVEyth9;3x&j zhm}poGZIV227WStEbcO(_cFRn5z+GjjC65BThuy7#&9jiw}_!BFACz)OZID3TMqHp?hH#>bF;e{_wyTKet#f+Z@Yiscq~g$QBOE476u3CfajE zoYK`LGcFroMIOF=u6)oZ0B1BL00=@a0Rt$8^%)as%Ho0CQHROD3XC zwcYIgUPjnYuSEII^uu7F@UDWJCo1Cio++J;I9G#OyNkkL6f$(EF#yP0 zh*W{cjmDLioukbLj~SYxytA3YN$seQ@{r9mF09(N1ZQHP-6!Q{{$eWtwzk$=&gYOT z4p`*&WoG-!7R2QX_?%pGd}K2}DuNOo{7L@zqPy2$7F2U#Xzy)bdI#9hUW;zi>kbq@ z-#RW`$ZVwIkzWDXZ?2{(ycZPVA_G>$_}BGzRT*duVd$zW4K~jyuM!;ox~knOaY12m zul6_BF8(-bwxD&9Tg&5=E%tgtoT^={r@NNfW#ma+NmXgoD`3JzP3j7h_ zo+;T^V6Jq#UW|0967!6b6gMTRB(+X)S^=Rzn2QT_`nYuY1D*fgo4%qvTMyuTw$y!G zTX-)MkkGcdB4y@Q1t#Meov~nv<2oKFE1A`?&w`W?-mzlI8ytirkKG{n`%C>?8icN} z-1ZxYoh3@Gu!zM#!7?y2Wkl^C??U_jDBkll-t-cclW@o}Y?bH)Vc_q1=_JEyoRNsV zr`&_=O|JB!OPVxE*Vsfg2Ra}}xUZ3bF4abPk{e1jp$@i2lM8srJgYzY40(C!Klg{G?Xzwrp3Y2smH-;8@BBB?*Ur~$8P{vdg?L@)%Wb` zROztJB&O%4B2CH-ELD?hTE~kG4--bc)e=kC`M`HARO>tcdTNxp3ElZZ-d3(C@`5%H z+_QOsHLZCbTxT`wj^s~P43M(^w7*#i)z}pErx`JcYl^2I&^icI@dAZ@27=96jS%|= z8!lx<1-;V~YI!h`9Nhpsk^V+BY_JA7LXkyzFu|>FKOhO`>aU>k5&m#A@7NXMZ=$+Z z?XTQeZ$Ic>B(ygusxf&f;y0*-m^|?8MrO5(vIy201=*(Gtg~}?_C9tLxw??utJ$@) z{n(D|QS>zr`#dVQkdEY~eDAjjz5jMpA4wN+!LOfZ*A!TG85@A|jhql(>FoZkZ_@eV zwj}<6ZJ_r_^XY;Mif-9_+#S^5>i&-)-{V=bx`{zeobW7V>D_W0`be?={~pyqx`_ zwl}_sB*@e14-yMF0WmLyR#w$!yzJhWh|n%c_YB`B&G*&uzCKn@a{GUq;B5baSpst= zDPBLp3^b3JO4Obb8#c#!hSc5QcXoB^0iBN8~fCx%B)hMU+^kSLr{WrpkMO5Xo zZ2R8(30=D&Jna|cZVFBwXP)KIy~CV$Z)Cxf`e3}GRA*hY1NdRR4*Ia7ed^l6y$I;| z>wk1U{Wu8Nn7;Nf8AJQT|9)ncTH^1UmF5&B@Q3J zxryIGLVweMTdtA)U9L*prpTUaR8^i!J-G`lGo2S59h^Qm7jRB%8ll*0VlTF)e!_W9 zaWx_`@raC4i28-tc%H)iuy2-30-!V3zHizdy9iN1`+Ck&_nh@lGTGe*G zggw*}3|3yBjF-8C@$-^igBh4DNScBY&=sA0A%bl}Yq+^<9C=Zd%^EivpPE z_uxWZbx7>~iI^8Lz`06%uUs_lN5f{Z=($~WiG^Hca zkmSf))Y?K~Io*@6s zKef}CusRm)=h;QSEvKT?#L{9_+xRQ39Vqt=e8!rrr18XMIRM4L=|+2O3^<2PpF@S3eqg) zAL)!lxuI$kwTaS8kYuNZwuC0gPWe!tUB+p2Y^D^3gj4FX8BHz)<*3TXK}apyMS_Ge z7i=vm^1mb9IRT{$X6>Qr2ts-YM|sw&B&tC#6u< zu25U$nh!0BK!H-{GS19J(6BpWQWX@Pur~RZ3NaiCCxewF0?3J>(o~)i_wYTkX%Hjd zsaYKVtfl|ZKJOb*j3$Sr-E#6gw*MH#JPjEQvhrIM{}jg!D&^SZ3%N$=6?-_lErJg- z_eq(8SIeG7aK%0!75rq(=5Lfeubsg#F@zh0{PxR1A3w;GpT=z7b(lB=%j+*C(oi zF|H;^_bt`4`dc?i)ojIliMCB95b!f={7;Lck2<$cdlair)s&Tr$n6wDx}Hp+L9|uV z@>F&_4#7|jwR0CmTtqSplXXrVI82diOf7-1^Z*PVh0}Wru~x3byrSDT62eczGgYjl zYOiG&t+b*zc(|{{p0DI;Mj=Gek$~E znUX?S7B-_D0fYxo6>0>b!zZ~#`Or2a{&e;qvA zqzyL2Z@=Ea0(KPcpd)r0Ve%_j+58;2L^uCK=|sa|I)NBlMQvPhKVPyM8=ILe)7nJ_ z2|dZG?UQwky~kGGvX{;2x=9>wwnuMc7WnS^wyj5kf3FO_4dxrwn?Km!p|n7z&fcd*~2>pTaf098cOff*3@oHTC(%9NvI zdyZk|ruUS)n=hNlU|(1h%HqB6s>GUM4l?IUGypyt1+j^TxBoH+M8H9PV z0Nj0&bq1Ye9bjG$f_`0$!NF@$LrR7<&UpzeQtVNaW;r9-zyL`BWrL(w6@rl%Z^f=b zIGa`L56_1h?4&BV7EBH5j+1J^vpEOT6q%%_&3p#U_y}V8-3|VeTDAVfij+6i0I`vk zpb&#GPlE8r_%Kw_y-#uo!1{M)4AB8MQU_#D1RPwmS{@gAifU4DYz0u|knjy1d269U-*GO&R%{<{#xlcF1}j<|3$6M!v{R_MhjAv;TW^pzuop|it4VYAFxCQlP3p^vL=CXF=nR7c*-jD>|9aD%SJioz8|LN}h2 z+Dip_9Jihgqsy|(hc9B7lCa+waHBzlmMV3?JaFc&<)oIa=emAPXjsgRkDZF^Gw8h4 z=L8ZzuFX%V;Su*Rn0a_4fP>G*;PMOAQ&9C=?}WvSiZ5R#kEv!3>8}%}2EuQV;b^_#^-?y@i=8z))OShs6fTPA^v{lVtrTe~KS$71t#jiN{W^mj=nbIwc~gM?J7J*CW@BI zvNzC$ZBCU3suNxq>&LjUM2fN{#C$TQz zb zIo10MFkyc6iAQgd!mM6h(d@IJ-4YqOkZ4+5*m1|9+*Z9_01aIGAva;v@{2dhN-(pM z#=P?Bm>L)x=tb53GDi2Vm&j^&QC^hz31U?dTgTCN&eWCQyWGKyf5}9j)2U#s=T&c; zJ~iph>B+4zd#8|xudH$T-h9bODs>y8LFcX+K*mYsAk}N#x-^Mpw6_!sR*ZykvtM%x zgb`5K<0OPEd-@Pw%{_$hyTat!RV>7_3RgX$yh@e821b-N+TdRA-tiPmEud2@tU)~aTnh{@`5oMH>3~X1cK2eh0N2s z9i996JT=^xv@BwlQdi%ID-AvRJm|=CMXqB?pV#@sTW(H%y>5Kgv%JY!ceK-nDLBO@ zp8bDBonv=q(H5m++qP{~Y*cL9M#Xqz+qP{d72CFLRIJXucXam{=fn8}XRmqon)8{b zqlkJ83rACbO?=P2{@;&TY6mDVEb#wE0_e}KDm7mB$6ccBoXLgule*lcXHr&%2IW9} zpPe!-&6Z=$ZrciFOH{0@YX;vFi<|hXkB{%)M{Jp3d%rt(b-K`=8yMc`8uqYqICFIP zIc9TA=8FPZ-#CdU9VP&4Y)*hGkO4mJbd=TE80=R6@$ZZ5Qh8ePbcAe~E9AH?NdO9Z z**tR|mIUy8EQ3a3zEodD+lRiHi}Zee=X8G)bWZJfdfi8K8%X6iZ{*}Fl$Ff?ad=v2 zvbTvf-w#dwc#;9Re>lB%XdT)rP@v+dPb2-oRWzL?%AYSZ;z;4QGvdA^JOe4{pG#N9 z8qC}vNU4X_E?m=PiG;iouvZYw78#2&Qk)9L&#ao zBt76~siBb*Xrq-=uBL<{Hp+9eaVoxun^oSh%cTu_dukmko`KOCG&x>jKvXIa(!L1= z1Sf(ylDYlWIYDM!vq11=)E55{F`1@ZC zo%N=o><~R7HbH&YzKzQY0WSPHq=zai@d!Y)9b&H;!wW%M>&C8`U&Y@g91-G|tMhbH zc1pql7}v=w45nD%NxYY7Y^y4CgMK7>E1U5Ci+jqe5J>@Gapj33+)K;eJ$Up8N^Dxb1_eLoz`0 zdIWAJvcZbc4o+ZqYu@e(4NMYdq(^J}tXk}nM$KU?83%=hk?6X)<#GKK(QiuZpf9-? z8!?1$$(r<8rBuC2);X}u5Zyiy!WiXPQx$`2BaB@OL=xV9H2fHmGrHtoTA?btEm}K2 zMz+v(hVXtmvVe{A4JSB}F}5{X;1IwV+vdxi9Vl0NDm|L7`ZeuO4}coG2zvDuG?a0N zAK+`Q@_S$qaiH76Xh}qUvT0V)z1=hpN}Tz5GC4d;K-8{;rQ7>(3|Vx^B)!cCO3oM^ zDN{S6JqN+J7_a@nk**na z&cAh*GNC)ZanQkd-DK=_J+lwqz~`{5A8E7ErMy5==dA$b;LpzicXD4k1#UZ5x70&V zw)XIPz4;o<`+TvM$h*df@wkTU%?#Y#L~Rg}?ZDESMD8hBi#Fsr3HFI=jA$XWhVDB&O?o z!hSAe?C_ofA=r$hz}nb2t|i-k=!{p7s@pJO!KWM7HYU#jlWSLWnEW3jTN<=Kf94# zQqLTCOEKlo2mfXQ*qQG`zGJ@;WvDK{1O(kGGta-&ThXs7Y;2zMGb=cfGM;e75=(Ga z36D*t zIL`hMpNahFYUI4(7Mi2*DR>qz>52-Sr`@gtricBfYrFN2yXS0od7vdp z7@dx-A%&nmh@AGJ0%o7HUdLa#+y^4$kvuckQsBEC>T(fB9Q;zTv3+yC`8ysr-~b?D zg1jl4kFo-aWPBD!Qd+fQ7g|OukxM!4EZ89qb*S2EJ^{ps_mD2`P3|se>NZ4zdN!*c z;_U`Yd&wQNXSzXxC?Ur(3Gli}V4&(gAO4Vvr~R{+)a5sR-0qQ)TM1|%>mbqVAc{~% zj8*YH3>M=oU7+pVtba(Us>vo(O91?m^)IhcLkgFmfA=elgfK5NRJk!WD;C0e(CPTWm>ZbgGTW(fnS`9+k8tr|tzb?6>XWL!IC9HfJz*(O=tVA|PVi4BtoS}j2= z^hNwZwC=Okk|ne>c41l=Du7WYKIbY10<`(WM(vDv0cj`C;u`Mxn(KC*66_kS4#~6` z)k;cI!#DI3Q&(b$=~a5C;RH>zMOP8%va7E^sYp)rzJOH~>dDl@Vy-mP@d);>XBR3c|8*A|f5LBN?~N);;9M0fNbk!cKaMy4K;}6UvA7?9Hi?)Kx7Ws-1OVMa(E+ChOG57K4euQZx+Og(5l| z2T-EWeExS)8Hr2hgX+KZc#`F8szFm^pv+|ZmXC46sx?gx{Y|!5$#>|bj+}@eJeLN+ zUuifk8N}`=RZxG0Jp!Em7MG(pmZm2MaGO)xrg3Nyv~M`n3Gv%Lb^AuI1ps={tCdUU z%r@srj_>;tv@n`~b5BTJnJI_ka_*6DED;mgppI!&Q1?da&}WxSjL$8lw8{CU_`g5u zQ8bp+cIG4!Aq6?ApK{ac>ihZn$X$Gu4I1&F*!)XdIPFhH9R?I8en(cWc{>T{Z^|4m z&?*#-sJPAu)#WIuJ}c6#_^!tVsBjg2YuQWbFV#Do4ujNT?CcvAdTCNB{QDaam+W#n zfw#sMc5_G8aVc89UC`@7wr;hQddzknP0CGLPD>PZ8BO^3^F`J#tT$i(vNla#ggrX1 ziK|3Rd>`r@+W?#`owj+WgWh1hJMH7kIWN7&*cAuq*PJz=S3s$5Ql*rx*JmQJiIK@JODbzn=?F-+^)TdunRq1Royy_ zhijCSE2Ax3m zbMlmbZwq>q80gMplRIJPNOh4o$TK} zs4m1aAREi?k7e$BE>VTRV$sq2dOO zAwXuf12TLkf^qHyxu0t>^A97Ow)Fivhc$KakM38J5e$^ z%=%5}XJiVnsx~yhD#903yf8k%36@lvXAbiRwlS82Hr$Qtbw$BU3oKo9R-`tuMFU-i z)A$$@H>w9&-YC*N=$EsExu| zq~m(Y9Q&06~m$C`WlGfX0fu{5OfDCyuKOK>sBsV+(F z(eZa>k2F7cEG%Y2I3s9BRbK!*0NFHzyyJrWgG?K;FZuse}RyK5t^X=a4)mwvCD^P9AgKdBWy)*TR18MU2 z_Ck4n!~L@*?C$Znd$?}lrQeW1tetooyWX;WZCXtH`@Oz5{2<_(c@?YS`h5NbKOP4- zI>@{_*viaot<}HW-c&8&nUn9_`S$)AnCiS|qi0T=G0^|vDe(?i&FG7OTWw}rzHdi< zU3_A>O-o2F5roFCkN8HZl&OKHFZZ^g*l2(}STr9DgZI)c`5;GS1kw70!#p?sor#Q8 z5<2pOsk`H)p{i9jBz#w;ne3%nW}g8pvNJiun=l|If(|R`=c99aa@5I+@E_RI}`#cT26^@ zSMFXZ-mYb(@p5E@%n{tR}SOH81NQDFyQo15k_4KP}&vdD}dm}B)z5R1duf$=P{^>BI> zwrw{1`|39xsDxd4;=vx|9TvdTj`uRmeYHxxe~!)Cvc#Z??bX%{n$Du~p>Q3CYk?(( z;x;@z%yoA4Fg1;o1^J%`#r^MDD~fAF0rr_uFnQ@kv?z`I_RB~ED|Ue#djF-ehFKg9 z2z8j(Yefadqg12d=eyX%L>DV=A-CK#Mz$<`{T2z4h zO9P(lT^#R`3SoEea$W<*;vaXpa7>vdB$cU&_}I{mffy%hoRJOvVutd-+$UZ@L<#C_ zBg0FGEh2e*)vhg;i#i2#hAgNHhhXEX{o6r|mrzvb(1QLS`YjEVVM~}sSLxkP3S$x0+%@!)IC{C{=+%~75=ZNs0Y2d2+?j3u`%DfWq!RrXr1mWxYVI!aUc-_`G~{Oa2XOZ%*ASI%!w6Ge(=rP8V> zs)_?NR?4%F@I~-ls5Uf?FY{Y^1cs~LqgZnxz$ypSYB_-EbNifRO%7ZE_uDO0;&QuF z4Vo!xTI)~U+UF6p4`D5_o#d>RFYCg;uPxs%IAS7J_> z5f>7H;S*~btLkfO7Hk}y?pb(_v9%ev-@wi}CG<5i9UL_NmR6p(Dw3M33a2Gyf8!?& z;ug#^I9C8oKJt8Yyu?z}3p9+UXU%hd%adg9>+=JtQPtJym?_${qG3i;G{xxSiLRLl z921zyyr(?5)ekd8CfCDR&`AsT2CZ7?F-nS;Wrf%@s$!@fGzbjfMf43G^&C92on>l8 z=@m`|>vpb~c^JDriAU$l|76uqr&Q`ADP;?F6*~aG4&GET&%fN|O*m49UYbkp(n;xu z4wk)LJpN|w(5n-kObn6lUo5CTb?DT|oE5y&q~gnKk6TJPJ;j<%@U{|R#!Tr5a_nR8 zX_xGTM~gDE%2`@L`w+&f0$y+^J|DD1J0Jq)qraNdA|4`2L{X&%$$1GTd5e zB3X-55%$>LV#=>)j&{m^kTW>&p_Ul zYYH+{{c`Ic07$3sN7#TA{kZ3w>&PsQK#t7cd9SDNP7S>e*brWi?EfCOsmpl4=pY9FaNMVWgf{ zA67Oo>qPXY(kvK_J*1?Lsb|GIINCq+bbRW6j#`Zo;bdFJ3~|8Qcn~p0|K+;dKJ01j z&5@fdmc2aH+I$3VRvc0N=<@k?8O*77%F_?f6U$Sry#<%k~AiAO|`{$^IVD)s7b!st;LFtBw3h{0w0536r!-eI5-dC4Xxjt4wIA? zBgHbT?PEz#W*Emz_cj7ZZvN@Jf6V7e;P5u|hfJp0D-vn=@|sbZAQgVBuOto>AyxM= ziY|PH99}~K2r(FmO1c_$2ELAXoKmWQx!X<9CpXnq z?ld&EI8YlRmyl-4*JxOM8MX6f0F$(;3l=HU!j{BYu*2vI8e4QQ3VNI{5*!9roc2?G zTj^>HG9_5ya^o6v(u6IPav>n%QaWKrSWT0eqal6OaLqsIcFhlMypHxf#yblnRjU?M;qMW$&uG$qyG_zv%X6WD?2~#zryVLfj(NIAO(^f0k zz2N>}x`nO#eG5A+KNdAr)%$fA(8TDrfVcI9e|Gl4lAl~~!f^p7@iay{O*pRIa zt@`CkwuADte)PkqC`>QQ_85=wWrr8s=}=KKsZ2{qiZful-f8S-@d?`YgFdxJJjd@K z8&X4_${6|`D$TG5w(or~gpa{VL*$MY+>ouGS_&04+DQp0ttp;@7_BV;lWM5KF%Y4h z!2^PEzg9vo_kS0|vk`nGh+X>7(o?m*Ao>q+cMxBIa`# zVqI_Da~ckFfSD1O9eWEl7a@%G%5lcGui3jT2kTBlxWvge8AByf3}0*H#DkRhA(EO| zOeF4PlYFEt2;0Qvz-2gKaBfNBb3`YDB1{)JVj8AqBDATdtbX{sCY5-|dXNek(MN8k zZZA9O2|wF2=}uFCDpQXxlEJ7IxX0urg`|m;5l10Z<;A6Jr+-7+XP^!8C8_jz_yeKi z8u;;!!RfCK)MB0WXQ}>5Lh09I2qcO9}aE8%c(^ z5y}jXv5qGf=Hug9ZKAp`D$cGhZTK-D*$HFp4U=Dn9OC>_ujPPwF{A(Xl7^H2H}qJm z6A|={&Fu3}!mOOL1!0Iac%f!Fj{Ni=wBC#B`32^dg9?O?7D?O$go<;?!qfT2gU>JA zj+oSSP2pG{5Z_5abZ*sZ@P$a_^-$#G5n@LANw2&SXIH=}Z+2(VbfXEN^=*lr_xP9A z6VJ-LLi{$M?4tAH8@#zjdD)q-trwFg2-FlYb1WH2BC(-=lJ1NT0`v{#~dJi@Cj%;#^9K>rFDz?uzvw^^^w?6#SK?z|h8p@WL2` znBlSq%`I(l{@X5ABMqV)L1BCzWK~F@`g7@pp0x^`z(Ds`N$XkB$?)dXUjdT0keOyO|kLDR=e{|(q__t73z;AC&-5I4yV^$G{*P1;jVAPP%G0NX<%y?>^ zyQY;+&^lZXznn-mqCc)*-2b#MD4$^y;rf!2@r*4$}whdGG|9b)kx5HWRCuP(<&jB zk(6$8m9>&}y*}R9y*t|2$K@+?qVz2e^OewK96AZAyb$?xJVCo!KK^FofC6$$d*WlQY9Gy5eIDQx>)oy{D zq9KN?1=4WvcgOC}191Ai$uSYI&A<0xib4Za(LTWRSNAWkJC2w@y2)cFf+{;uWHH06 z$-p6Am<0`pN|F~2sl$Ko=YJWuDMTi@A_q*U{bL6_sxu+#r%8_CqmBSTKFj+vhamo< zkH-={8|vfkNu_GLT!<-xyz*HU69yC*do0>WwE$W32dWI6^RB#X$1Y3#Lyl5iI}7>? zg6|os=v_*v0?BfH1!^Q-RK>JnZ0J2!G6P}ekd~TpeCBr-@t>##5jwRC@Hy|!*}ivK zIp{gAbA+Ydh4rKH%>%$k^&-(mG4kXk)I{D9JRdNGu0Y_3zu+RJlPS`z?BUbB(7Z*! zjOip33xcKPW9zE5Q7s=QV=ml3j@*NjcbHtm*;K8fH)+#eX!FZV-n&-9M-pzrGmwK7 z0{3F0Pf&hI*%u$m`*2$V#OvnE**_|1v4`!f^F}0;$zfaW$_}8ydfpD1%z6AKzUEbY zZf*Q9EX-a`nmEs_v{BZ=PLTgv7Sp!7e;aU!8|#{Xb|M!S=h)`wx*N{Z zSK)R|Rhi4y>ik}nNH3NKea)XsWBbjNN;@imc0&ia{?cq&^3q;!A?z+XN*{0^ra~lz zy3r@r2oG~K@fD6v0EW4Xqn+QbqlNa{J=nQ}jyB@I= zy|6}L)(UjJ4@Pu*;gcQ~DaXsJgO7M`d-rr`Jsw`)mTaoLMu&bsEgdc4@^7n|R*SES zQL?wu(-tExlM1D)WnQqK6v2v@J(Z}2?DHL)!f|qrxdECLqmP;j+c3wgD|+?lW`=s} zO6!;vd2G5&iu4$bqxGN0Jp&c6;2 z4RZiKkOrWs^ewI3P)fky_#F=bLtW-lg6QOiluOG01nT=q6AW9>KIxh^2z5e};?q{E z3#M?|2P4BPoV3q7z$-S&H39@k+8I=Bp(j5>3GQ9NJ>%u>Aw3sco3^ctI;W%A>BZ)T zP%~7IGyGI&aJp#iy2zz)$T`!_*;I`k4|Q|{2zl*dK; z!7LXgn>>)w@WCSwG|NXQA-!q3x#|}pVk?O{gO}c`dEMOy_&|7!$}@LB!wnxnwrVRU zP-7G~$goOmwKT$W@YU*Gy&H3?0da$3{rE?8U?j%{!78myAaa=0q1-ss5unm`#>|n0 zLjaSbNht@V7w_qlfHx%8Lpw6mv)kcIA)5F<%L|E_%W(=YC`657p)dnub88I(6V=e| zl_dS2YU~jnzc9nG&Nz$t(BLE_TAM)YP5^NJ$OoWTPE57pQ~6w@7HMiBM1z7xrkxB- z;NM7oBlMyT^q+c}&A)N5A1h`LK3jC`EjNNSlrZxPOx51POgS5(sJF))<|Zj_bl5QE z)@GEU-t8B-vc1U-esa}GX<=@wUP+ZOe(_uqXC6RAhrnhq1XQO|D@&jcruot0J%DF= z?9LJM>q_<}3ttmtEVRb=gS1V3>Po21M`iCk=F`j4kk)RS7 zr_Fe7n|8ls?#fhj-ox{qvg1WX(g-zo2Q+R4>Htn*ld;>_Frd>r0Nx#h-<}$H9v7@K zNzF^q@*H}rROO!pqB=5}FL7JMK7#-LLhWBtVCGA{81G^x+Aq!kpaI@SP(fJv{B9ns zFEM`dpQS);?zGjPoZ54_?Y})7$Tnj2SFwEG&$E3#oIIpz60JccI(Ovv8%cM|3E z;{Tn=hCkbf)NW8qmEmQ%GS@VsIk)9w;`hx%vqFhaoKugC#UEPPy4|I+fSGaY`=M; zcsZ8!k2&$g3%jo)QYun)3096dvA%NoXeJ$9KHT33Y@ah!GZtae`^A&rvnTMP0w!@R z1`w`v7}-!}RD-Pl42lfriV{t(3_RKpz%bLRp~qJINlk~u`I|?$Hw1ihE$gFi)qZ>QR}0Wj4t4OdZnz z;o6<8Oqwu#dNP?t%;)K~bx55LzKf_cAGE{q5%b*p*)yb4-b>|37TU|cGAZ}5l`oLA zg7k5~{D~fL*CO{Ch@^4`S3#djjBuZItb;!j&t%ig6pAr3IY zWzg1)F~vTYu(4I$c*Lc9tM4qhXCJa@+?mBd)EBbVS|!@N9nWYE!$w^tn&9Wpus+Sm zCFdJR^}N~{28gG*DEg+-tz%AOuBRI8{_&Bo?5$@@hXo)><|Ed2eawq%a@0f2S-jvaI}6tX?G zxdX_%dAvzMfgc%csX+hf12sz<`wC229bn*OY3*z*)|tjIdb=`sLoZKsnUNZ&wM$di z0j)I?Vybp<%so{1?l|N_*pW>zRWH@*v2fR|%C;Rfzj)dsh%(fmN)^$e*d&ucw3Rs^ zmgHFRY^ac}oI;iB0BEh7czvIbw|wPb-xt_nZ%*fpY<7KpEr}>_lbtS5 z#Y8F`oHtc0us^A7Rzu81h=y|G?vKJ!rt~Hfg+`%`h-SY1HJcAy-QYvz zV0yMYH?kN$C*r~c;KvZKhRYKG_E#%{{U8yqih4{_gYOB<50rLIm_B4H-2tmW zhf>p9Y0A4R4X8ysJl)WrEQ#`PwiSLVyYfbh%<{ZITW!IwbGF4?W8DqrHf*9;30a}H zg|mb!X%ZDI+vk5&?kz+Kz@h}1lW1u+TkNY(jvoUi!wE#3>p3w zN6}Q{3->G85DE*aV~2ZjUnL++(e<*&B#ZK}Ol<+fKzh|#*cB34AmMzV*-C@2W?)u5 z0W!6|9F~>?Y@pz;z-=);wu!tT<*KWKpvPeI6+x$l+9@hq?SVU9(kzZmykK0skDB{S z_FHRo0E}1U$U3y#6nX4;OE{bjjK%8k@hEu>RvY0>Z5G3)hg1reNyw_3ojKqjra|Wo z-yuofcYB3K&;(zDsPjg_ZR`18{TzCztFo5S95h$Z>iSCj<|2+5T1-&T1EmgoDYo8f zuwp-lmrPXKvIn~@vvXEzYTH@^9t7X(@Gpoe0OfSjUiFvWy&l^aXsG3U0zfo-;b9xE zl*Ix3b0Z!=X78+KboKgA>semd`@(^iZ}_Wb@}(R69wU3d6PvZ@Y$6LdwDyE$1YtN% zHKAc4GdR-+{%FH`rQNcL9`-*UlKknh%S8{2t0OD|k$3{V8;+4c6zJLo0>SY{+$Yxk%T`~m9*6LJ_I@yh&=er?(xD8CXI?HCNl;CA`81mkG-77%c`|3S; zefqu3tCjEeq!U0t%z=IdQ)xHR`tw+8%5Wq!3J0*9^M(fDhZ0RJ6LU2p5Ze%!dcU^m zH(|bfC7SMg|Bd4jF8f7t-f4URv|sECfS$ga@aY)vPPN)alOi;82)qsswkr*FIl+?B zH^MthGe%Pxx*0_?S#yNbSu}yMi}n)r$WQn-kA-t=4Ph?P#B|%4+}%aidwmLYKf3Nh z^Z$k^ZlL-b4Pw1_r|ddSt}Drn>HD4$ECFS}7>nV{o#CUT8=L&A{&ukd`XQG9;F^*| zm$CS-vtl`?{OgyI4m3VV*oQCvdDvr%jGN^(zj|#X`~gTYQGTG1OF|CTdC>`polA$Y z%Qo4oBlwo93UOUtZARD!wfu@$3SKu~F1L0g)BT^KoW)CwdR@i-g(kaghilMbo;Q!z z>*JUuT|uN_%AdO9+1%fA74O64yw<0YH#ILSZNvWXCZ%`$)Iwy4yJ7yQ<`=kNIgEvr zkKJoc_Ntl3U=G-+lZOG{RM_zU)F;fpA?kq|^!~SL<4FDKg#OvIaV7#g&;mA`HaPx+ z>U7xTl~hJ0c1JyO+)(t9T5v?+R9groEA$r|?T3?M0y~`8aTD@G6H>HVKMRD1+MMWH z8v?oDMvOV>!v5^Q>h3`RF%L1TC*+B24&*}wH@uWFMileEp;J0};DV#n$Nc-Z2ca`T zXg^<*36!UKQZ+u_Dj@L=6rkEqI@5N#<`%eGyQBlCz-VR>{~CP!Tw7fVyxALl1o=FO z#Pr}ibq!!9AnpDmM5C8wr66R}7aN}n24D6NWuNXa0Y9Oksnn$8iOTuZ#T@V1g-I(q zG&7tcHUwvIWdjUnW}}y~78#&ZX?ftwiR!0~MowH5^i;5Lnto_19-J%^ zI_$Xutr0bVV+Ud~4X|pk))qMZ+;T`bPcO5*@Q@~B=7r*GFrwVquTd|9a9I|IV-d)( zq&(KnF496q46kNMu{J)bAz(BRv$Rx51v*ikURYq5_l)0(41+XbGQN1c1W=%v_BO#1s zI_$U{N)0bTt1d((EGE;flrOC;$)yAaSp_;Qq63TfUv6$EX*M|!78D*h#9r`)@>G0x zijWpH+1e}U)FBq;-{{iL5;K;*@>N5mSDv=gS6X!FI40vHFwlOPctP19rpgH7+r<=- zCELi8vCHt<0#?U^9Kd6pB6GTO0rDzKD{lu4MN18?#aXMTM)s!`)$Xc~)3jA( zepCUs#oV20>#KVTGL;64k89!ix8ULMH-5#sO_21Du&}dVcLVxbdz6XfBFxx}AtDn+ zbxG?|z(Loq!^VsJ*M-(gq`$4$skwtw zAiT?70YErLq3Wz6D?w;$#QGT+9iKBS&&Fe?-v4_-_0%(I@8zS2g%VJ2#-P z5TfhiY!%O?0e1msL!GUy@p@if$Ysd`mx0+W%m1!)e7ZWdFBcyN{P;``w-f&6>}=|$ z&)|+C0X%I`w=F5fAc(6q#b4F5IMATRzz^+$EvRv1C?-QJ2)AY2t(HEAhJ!4p8lwd2 zOI*`of0~#gAnuGGL@mcy40m&%7Z>w{>JUk-wgWcoxrJt)lt=Wsm zvLVJZ68ucQhs(TtPSmhgAh*9`pV>Jt?J~4Qx=CfrCWTQol3~cpB~#{Prew*ao9Bpk zzJL29TRu3jzW!9aYlVGL0#eK9_0>vnIBFu^{MV);#hw2&WBK433hr^YT@8OgkwzJt z1CnF;0gqW|{2&VM?3B~W^cg(FO~?xhF0|>+oNouanVPNMYK=e}(IS^GLVh54uIugH zY7ALgp0i`*ZMHzUBt5+YQG*8kvGnQ>NKOD+-D&9l{G05=flog&TJu<;4@9t_5+ zyjwgf8vq>+)qvZ`CbHRP)bgKi}0ndE4SjmE63@f;9U*H z#1%eB?E%Q9*lk*tk9~J2g1+sAUv$*|d-8&C{x>ZClUd{ZZ&qzcZOi`W@C7{U=S#qr zVJVS3DxwX{FP^Cp(PwyWiL5|smDqx$9EK-lUe@j?7UBJN<)wsL#>AJpi+O(S9N3;8 z*nXeeI6K|X5Z4Q7;EL)#>nFu33>(%%F&-?K&7AJGKakRV-6`HCsGKGJ`UYM+dwv&Ga+tbMBW3K(51maygc4 ztVAv=O6YS$T~$us|0cZV^i*8}7>1yGk2-IE%hKpBJ=elBZX!YnVH-aYiVs$xYoHhj zgW#=2dpuUk_uE8W_PvXv>2y1FJUc;_Qps3i25@R?GMZ9@Yqik*9p@G1UiphBgr>itt2eblkg1t~x1&R=6T2GV1;FlVKjkj)hDf=phPtl$L zY@W;K*4Ho6rjA?JBu#eicOwItJ)rVKQ%ehOQN9eW6A+v=BNu5*;`#kWrKvp<2R#>n z6n>wct*oi1|A^D9O$(lS9>I+bVyI)T&IA0}vb1iK(RK`Y?N~PyejYASin9xxUP_%n z{564eTuNK6Cw^pAB5M1{G5tr$S?@{Px3I&Pa*MFoU&t~M4zocgOe?9q6E0@yylmV4 zRZh;li3(qfA%kUwN1yI|ock=|x7$Gl%7rTXhyIDRCXr96{IfwS7l5hq>N&+t~YC)+Mj^p`=5%C7HtfdM3SAhr#B}7NPEJOeC)|pb;IgQk&G> z|5l&yT2ZTDSNZ<2ujVyd3iS4s%Z&o0j`z%@{_eit&-@_5%J-`hIHA(c8Ap4XCNh^J zqal?*cI!_bJsF2TN0l1VJ0<4Goj zv)Ld-3LljlQ)9oTHjkh^{h8TvAebNjH{+OObKL)w9M^x896AU$Ya+7?H9$kteuL|O z<#N7p{%OQ6l@^!|xaN@sQl0g!t76(Z1+cKfX&uJ8em|5Qm#U-nH!H8c!}t4vyYiKzKLc@0 zam5kldPyfn`!7%Q_c4I77NGO&nAt^1*=(e6t*4li4Vgv0u@UiEEDdBR$ec|F6Io5k zfKlZR-%J@$>8oHQE0QR?S5*wF4~_dr&U57#kFT`xn4b3g=41^P@`iqt8}Y zmd(5j72{@IiW;LLkU%WjK?UqdF2=~?U!8!zli-X`u14a#0*k{Wrf}*b`evBYxAWZ$ZmO<;P2yULP*g0xIUJ=Z;U zVO64e1m1$-JyNR(H9ke_W~^zEw96{-jlIK7IxdIl)|?Fpd;(H3fx_M?&tmtxL`R6r zjD)#71Q2K3RC_t#*QC~xS@zE3GGDjeb;ebV2hzHxrpd=02(Wc1ME0_n1`iuXdUFF; zQYK4jqdR~~60(26kjzZ+Z`cehw0moc8)7wWgFq9rO7&MCJyW3qpBh+|blr!x}o5K9+eTY8Y* zP`qXyG4do#EjPvpURXaA4{oxUG)wR8WbPmq4A@*2ub%X}(e1DzDf=K2dKH1Z zuD=WyTPNsf?HBf8EMq=L5KzQvQKE4?AnIQI&HoM^Te-HZnnQ@D-c-tRCAC-T_e$!b z%)S7)nP}Rw{Fjlm+jSMcQ&PH5)B>~*lj=f z+6e2eikI$f+?)g(+qhNZ3KPHB10^qq<6P?o1@lvT$T1if=0MbyDXk@;im=706@=H6a7zv^+%1aA(+_o~5GcavzyYhEM zy)xh)_0&))*zwt>9%aIP+0>1`Nga?KdHv_fky*fsNAzrauYr2@yY*8O9DS;1-7xa| zB6X8=W5rVifuM`HlNlL8!51GDHLfN`p80#vBfbpLrAG?X+%2!v+N}azHXU-SO3pNJ zKJjYh)?w5nCbR@W)Rs=FKp4N2wtF*Hq`R$rT!-G8J-@mFdAdbaOU<+S5*q+(t0+=B zqM3*QvO*{2M@HA`4DF6QTyW`VcRcXvHK&WiLZE z8vQE=0+caS?_6qL?Ut}PqlOK0$F5PuVhch$P1>gO+;g?%=_7S81($;Ns!tf%3uaQU zMb?`xc*T@_qoXC#bNln1Ko0<9>hf(hiYcA8zM=x}P|u}|Q-;V^Vb3V0u(CcUm~PHS zBDc6rRck+gPDB5b9Qr3qrEk~aFNc~+*7fSMOJg7;x$9%{uT0ooU&K1ib(Jzky}Mz#0EHy0}yOs(&sa{^vmZ;lHohZE)Rg z=@aMuj4nxH7wdW-2TnOmvCKcVty^NPP*|BQ!O{il1sN|lZtkZIM?}E)M)9lz?dDu; zEG-Z$+p*j95~(XW)`PBiT>kZ&SXjgxk07LQaaWx&^*XpaQ)^d`ha>j`N6j1Lk4P;8 zP%n}=jA&$}Mckm(3;E4#fcl?;_L7*%vk(kaymU7Gxdykcfs#^uhu(O6(TKkH2(zLr zjT*vCeahAFDcDu8(JVFXUAjF&_S1;1(xRs0KLI`uf{*1Fh&X(;(lvqry|NqL_EeRC zYzS^BFC*;WWAv>BZ}8o5DjjC5g{}o)&A(5a^BgHfnm7Q>zcR zBpqG#E0e6HW3j$K4^{5^Dd-06>L%qaB{X4Sa+{1=RjthsKwZ2Y4r=6;5A|&Fm}t`s zZoed<#B-sK^Z_4~K}m;6bQbX|2_OCRpoft+SO-IiydHCnAm*LYDIr@LjDv`&kX!v6 zUefByTf39DxWx~~F`AY^s{~tn;hz)l`}@Pz)V~EA@AUetoB07>14nqRLpF*eetLi7YpiIVx4;N%wr zin^))n*Lo8?+D#te!#q4C^o6Nl<#rfGmEz=o5SE00t|1Fngfw=AUGFKXq1wFSxCOY zw4}5Xo12C@XIm%)RhT~KA-y3qv40Cc*ZIE`?HV8~Wi5Tmmue1l3@45dY%jR0-T4g3 zEAg0mNKbP@_2R?+!9fLfqob>Eq!ZvbH!Kb04IaKG6H`J-XCrJrpw z1!;4!sI8s8BbrnJLvPw}#za9%WndHNToA(rjY>ujoz^z4G~nUwnO#SjGP>?UTN?oS00oJa$g1y%6`h3>-ss9y$Y-|MFtb&m` zPu%0U>K@U~%`Do%+y-XU7(5rt+*fNc^yu;J5nD_k{8SSmQpyRD zBy_9X9tB>TYxQ!aL0cQ>q_E;4h=GzVi(F6&LWk1oSPS^k+6vGGeg9Ad;Yf473XmplOlCzWo#GTmD13FIbTjnLc;N_OtzKMTpLjG^{rg6H=as zs7405Fex-2(@V%-jUfvD(+>p!iinEEvDdDMiu^jbs%C^WSLLFXqyoCT%$59Og9QW4 zIBv)Sq{D|hbL01?brYY#VTU49OcMhk2Iw=%1`et zwTkopx|5Ip4vf^?;u{0IHWn+XgwEDVOJ7T?fgb-4Tj$uN3DjiSv~AnAQE98P(zb0r zX{*w)CdwN!Xm_HHg-iUMdj@^mTAq)j(gD$Z_0Y`2-0Y48v2-h~lmO2uV z^&>=KhKC;1l+7hCOc{pKJNkz)+YSM#!2&C8?a&|GPQio`5GB1&RJ#DYXY-9;9fKJs z@a;{gTQB`JedRhqlG!jf*m<_fK2xf2pQpe599k`;ou0Ow>s4^#f3{vcZjTvpkO@fX zxOjH_s^sPhpu|NJ-y!JN8_4ECP)J1;is$*ZN)O!AoLxTUtSK)y+i+ryBiiRz=D?Tq zy>YSnq^60yZgXEBI4=iW)x-R#`uxhnEK%8F%PDzj!4LMW`U#KI3@IPF0AN4vK#SUZ z;QuR6Nvr@!;GQ0PTLw}ZHJ&0;=3&W$&wlvA))BV#{A`o%3R$cy&&n7hu7F->+nuVi z&f(tmYorL)*g_jaCTJqsEjI#nP{jZK05?i(3;w@jcS@QxFd-;62Wvte7!_bi{p{af z2JL6Nr@t3ulEG3uUmo!Ss6?i{K#qm;6rxh(*F@u#3JQC~cwLWgEJ+z{LVjj~|&m+RBO zUD{63BL)_IEuyz&`a&eD*dt()xzeBUT5*Q{4Nt;Snb1>EYnNJzcAb|;+h1iBojH4Q z3rkFBc2gUn<{Abk*c{o2_Jk#8ihm^yg?O~f_fV^g2K_uVKvGIf_q-)DGOF-Wp?&Tq z{$goq0+Q0cJaa5DnVc_UON-*=-C}?xJta!ZHA0}Ko*iA<9Legs-5g+$q*SlJl4I&E zGJ$y;b+@Rv^6~D)Bo}U6&m(%Epqzc<7q)CjysAZ4Y*+E8o}|m{P5z_NOcPEQQA z0s$^U`}~n`IRIC~5)Lh!5!HDjeiO2KK3BpCK1e;7ytDZorkg z{O>Oca}e>QeCa~R=ykyRE>~(XE?ba@T4P(^z$Q5RrkFy1i3pTeb}-U&)R;kqzDIwA zrtqqqyXtM`as8qmJJlj)6^b?WVQNjf#EF)K&MHUynF358|9Svz!xjOM%ArCXh|HxX zw|)t%JRZ1?{qoM!m_Cia{7qs!2K%XD2{^vuDzD|PWpDHzYyp7l8;pTTpUHX`Tp&5< zh@JQs#j_$(ka(A3Lfjw4dZlbAZCDI9O~t={XJgZyDw8LOu51}|s%K_c!}P{?W#1Spnv8sk zLZbWnSK5ILNp~K>C$KZC4zpoh+88Q~@cWUf0;hL*Riyz8*F89q;*f2cgKfIC2m5Us z{u^oaNb@&#SW{(jjKle(cSz3}NN=7p%W)Eld7xb(8XEg~L8ErVAoR|ETg=<3 zwVNWLFF8Il@g%8o7bzq@_5voWU$askgQ#9GxT? z!KDN^9MS-VbRxB+bFC(Kv-RJbcbXI3#7W~#A#355&EoWt{Al6^Mr(_BB33T@gbkNc zO&Jxl9Sig$YR$7?qu5xh?3AjFHcCM-i4yzycB93SZR`e|hCJ4`?nA-35wS;E$keM@ z+=9wi6??i#%M-g!&?dEvGW|)3UGK|X%V>%-+8+S=nq_JmtQQS_G2c{tgpThoIxwlB z$>_YfiL|}f_WZbL3Fcjc!!{e|EheQLk&bssLa+-Kp+;{!(7qEx{k^==@DZU|3Pr24 z%2MMI6Q>M0tJ+!&N)EgU8eAS36CTJYD8&spWbXlc_` z+W~-c!W=wl{5pi>S=O(5ypE;*gCwG&GUOJo^o{FayD1mOCqr2+$GOL&&UmA!FG`m0 z;mc74Cj@$=uODRu9wUVr0m_}8W{uSNPMQ#`b*wDO?mB0rcbKhk@e^R}s#6G@O-Sr2 z=&w2yMsR=20U3&o00q14#gVmp(686#A4bh;m^p)X)mKLRs*A#?1`l zl3wu9B&7bAxg-qzrujIGc-;QaiSjb&D4w*cjqk-#ut7-+WKWTtKp7x(bP+;XqJ;@b`2Oc6*DfN!kHaq(JNx#gVqdfD3S!d|>`e^RW3~FToq~pjSz)FzA~z^EQ-~#vm!UemuBK5j zTA9vJiBf$`ixiaP-F`PxM9TX>5&>b>x1)zox3`z4v-jimxuJ`vPcs+K*V!pgAja+M z>6c@X;J-tfZup}v?3@a%Ew}5a|B9oF%h%QY`6JX(IQwY9kCuE*_7^z2W0z5ipAs-y zO5QUtIxy3Jg~(HCO@Ltmih`@ZrsCSIP9a*Wx(wChIi3RGEs&W|u8@-cfg;JSYj*M^ z$K&&hub%be1o%#FdEH>Ncwx1A6m;zbjCXDg(X-3jF-R0X^|b2zxnlE zv1WAX7t`YyGs@_;iB`()pT1s$ZIBFX!GFT5v+ifH+etMd!CiyBJ~ z!BPvlX}L(?LwQydhpy(A5z<5i#*&t1UH#3yx)e8XxNt0zEKj$}AyjO_NUKfM9ar0t zZ59)lWP{H*5b+f#pXM=G5*2T{TyyQn*KbSwI1^8oQ3=RW01}EdX$F`N5_N0qKK6wB zwoJKd3wKFumy=pfWc&KcQo^E~SoZvR#u=#D0PNMWBp0qOMmpDk(JmYv;X) zfT6}kwe5%i006zsU;9Sk>s;#~|)XdHf;o72zC)=-kVK;#~V?NVV#v zarZH#q?3ophyk~b!y;jY>mVB)5;Z2&EEl~J&4OMlLta&9N1IeC=+3~_Fn*4)SSS@2 zqE;q3#kvuDR{Js1IxX^oGni^ZCjFk`dBic(l!Tcb;7lg$;!_cy2CUyG(pogGd|G@+ zKXXWcB)jJZ&pg*|Q+7R$wm#vzb$0Zij295WVGzT@tPEFdbfg*GETLj%ReBeRiI@_mDl~+>K^r6x4T8D(_r<}X2(L(} z6>F^lpwbnBL;bj8&{1Ue*QmX|TX7xk<@w7G#7*0;yZ3lc@kG};`9uwoO zyC21g?F^@UvYrYA+(AcH5|I@G6jiIs9+fb^0pA}%b@cp&h{4wPjtkDnZPXg$`w`@t zt%}tNzFb)Gcc@GGd{!o~)8j@(!d_2&ffDyYzOa51uGG-*(@d#X8o*hsR<;oLQ$khH zv36qQ^#hwP#=kfILcY{8Y6`?%sXF{_f+L3G8jOT}?Gt`soMUBa_;y1D<--zwtlh_Pt(}5Sojp%08zO{LSg4voE>= z*5HS;hqQ}tScm4yt^1>#=ba;ch-sIIso-2le<})jIW+f4$!`Re@5}X?UC#*^h0>?L z`Ke@1-ELz_S(DX{8sfS^i-4IvW6qQ1cSR0tWgv0r`5zlTL!Lg+Wo8#{>SL%i0eb;p zR8f*W)&RJ{cMCRnEKp(jh`Chp>h`XS$q5hRfreVspCX?M^>k6?@3+4|)BYXRyHjg? zKI`G%2`xQ=jEG8jzStGqQO-|vi-tyqjI};=^%LB6r1r`puU#Pua8G$GveoZ44irB{+Cu1`(xR@lnE!H$mX=G(JRV=Yw zS)Qkc?ycGGZzJ9?RS9(cQ{>cvsZ#t}!D;`2sx<62IgosJ{_PTdX7iCnB6w8AaTe9Nzb_{8jUp>6|OcY2-B@d)%mER3)0~77qH5+_*+KASlq;CQ3rM`NRqI~PExMlsgLi%XG)QAfP> z!di__>SyaA*17%OQC^aO^R`kq~zZOGP@2{3xazZu}xSjZp!Fc!20Y~PrXnd z`}hxOHGjTSJSK_S)vI_q5(|q}DH-g2)mmsF(1&+W=3VPZM(lM(>79*O7i~x2Z=9VL=(E+1V$-s7jJAA^12) z>kl?%M5fh^_yu0?a0UW7;e8U zv{k9bYi?l~s+8nki`~bX zs60}5c_LNTcrDYj(}oD zDgp7tOx)OXW(DCK_mN}7+QWFNy{F3wO+uX5n$i$%C+T3;%?VcMTKer z#bf-wvA4&z7;F+Dt;||kaveGyXAq6v>3%ItbRiw+!>If>UFPr#>1+T4uwt$-18H*{ zk-l@;t~>+@l#BW<#N6aTdG9?|<+B8})!g_{Hi`~$SoSun;ST5(k2Xlb>MNfVe5UN| zKj#UWJDMF@YnA6NG%QuVhHzDo+vmFx1~v;ZnV zpL&@A4`S0~cg}}-Dzj#&5|4ka0QkS#CK)C4_ohW^Yee_Ndwsnu`Cvew9Hs$LI8r)!S3 z{vN!A;u4Ih9oA7bi34W6Scw_W0mBw&j(`-@YYD2_Qp{A8O{xgs3&?{grbF@^NF=Qe zd5!1Q7H_1AqZARRf@9znUPlTTrQGBw>Bpyl=RL{h&>OGsxGuUG{T6KEgKC{yHJ1=<<|vg!x>lqX4|t4Q&d(}6-0?NY zo*bfrOfC*>>95d0Ij}sJPy@SGR%YdL%|sh=-sbf9dx{TnA%-6R0m(AM#N`}B2cvZ39`%i$pWZhhUmx8hc4VQWN*Ko!&G-|kxdSY8X5^uMbrFHPpQUf|Kp0d08Z37Pi4 z)2Yrh zQ{vZHaF1u~KmGU<7Fg={Fv?F8#i0zMsUoYuMmK(kPSwQuqki`?h8^r&Z>`lV0Gi9e_6?q4VIv6k^%09VI9=0C@AGr^aMjNr8* zR-hdOYeb%1ruW>)RS3$okjPeS*;kLi_0N2|6QhN_2M8hV$L+ zoWSEx;PUu!vN^H7amF)FHviAC`%g*kzY%?0|F~5`4WwQpS>rM6)wJNl<(v+7BM8=ix zTTwsg2sM5AiV)E`UNkn`EEm4}Nl{Me3U8>IjrDTe0$;bm@d_6!ONY0TR_yT9r8DbNb z-nF?Ks;YPupX!|ijnirjdrcuv5&mf-#!ALe3plXJWn4DK-&kY>P)b@%x0ltmzF2+4 zx3O_^Ooln*bsVRQRV?VE56*MGD5LkWt08daHu)9;TVAMj=Jx}Z) zhLm1V9N}!5e+pwC5>@rzmpBDa^RYUrh4HWzO|})6cNb0r6woexRf=ffBIanCrMB_7f(A+kr@Z{mFKCDV ztm_^6KLwPg9cpN%MlXt2#4aj}kf_lv&8hD2tgokXHBvbqQ%mrn*%G6e#*@LQD|oprPVs5r$xz?b<+w1DBNMWeV7DQZQ4wl{)*Y6ML6#e zAthi5k4|RCq&0GQV_q-wOAs~?6dpT`unwhIAZd%G#G^~1GkPq5hFx9JqQX@5|Nc;Z zsFJhl=r{np#fR8VTdJB22d{3ico7b0a>PNZ{IWn5$r>`SAg}`d)r-$+Cf*>Tv|ciML0=@ud6umsz;Kdy3bm3XNB}KPj+Bn6hLm zpDw2*n@|GZq5_A|jykiOJ(j!4u}qu+NsJX= z!s7#MM@_jQskkjgJJ+wq_vYgMew<+O|JH51)BqiwzlXn2U)JGUz-E}*Qm`ziEi)-S z{_I$dUKdzg7-Mx(PM|~(1A8FEO9E^ zJ|K?hH;0QM@79E*N?;(`?dGl_L#&hx&CHr^1ISww^zq-G--mIS}ZBv8D;{ zs03PP{9}AU_4B;2G(z3|inVR&z-IdP1CXHji9xdbiJg=kf2-rl48Z(;;X-8XZ2Z9i z4;!kd`~Qq7HqQS$rvBqAqXu-T$~gT?pm$%W-AYcWLjiU3T9nwPj~K^0<5XM`PXiMh zge#*cO3lVRTy*pXG?tFWY+85`XUkl+d|U-WWcWcaVhUDaD(H$TDaMf;S=4sJU=@)? zED*_1OOX&%R_uzT-X4uST~IRae`P3X$I(gc30_ZEv~#BSl&h#jYy(z5V9)hDx^+LB z^qGo)JG}fPf{w)$nFy1c@b;a zfZ4=HXVMBsWyaDuuTF@@QUZ=gPc4x|`J;u^=t;`KWnjhyqXO6){D}^!LOb8B4pSbTUd3slck zVv`|8d&7#bD+H{k(&PNm!&l$=_4$P5(Ym}X_w8NiAcjD=xng^yr(KtLNcW891jny2 z^#D3g0^FT{cJO2m#;XzCf{Nc$p9DWXB4{_}eSd+u15^2t#8aq?T)^=0_~E1R%hep> ztyJ`cn)B$2e>zk6jXVs_w1O8``U{IXR<@y9+O=f|e*$2V=su*%Wk3EJG2B`k+fCek z4~I)7%?v-&xqoJ0161PiPcRiCt+zssta>`4ic>bG@)DSmS%xD)CQnJo6ZG-^Ilq*l z84jUVRGszrDTo>z>RG&Tz)5hPH2P`W$zb9-EvwVg z5MHP_XPn?%DpffYmWN&eoqYc-Z zjRLqplqkZHWeYEqI@E~1;E!cguRrrv(ZFrf4ebUi?as;sqN=%Gh5%z-b9dCw2x&D( z+~ZA>I4G}Y-eRu{9B2xxmMz&b6?k(dnx1~@thBA0DRBuYUibCM3ae$=#*(#BjY(#k zC}$J|+YFrQ(qc^A$MguW_DzY7xo3B==+WuqEtYM^e*&%qPUfBIRik&%8L`~j!;3lIGFxxfB~~7FM!Y{e3L^0vh@sdAuK_e<<50P zSbKFcF?13z!vC4OU;^u~wMs>?QIdu~o_M>*;wu}^lD&yt__jazB_I(wK>6IA?mZn? zx^6dxqV{{CAtF0~`>@({nV>+UyjQU4mIE0JTBN8QPi*>EXf-45R)#vxf;T#k3C4IcilcnmhX)DyFN^UCbIvCKd`4?mi8tm#tTHr0uoc+9 zf$wFIgxT`e&r}ZSZTg%nD|%9+db`jD=hG#{x~AG#Dp5a8>nSMSQTItvuxXp7^~Tnt zbAwBrde`4jwL~Oet68+M(Z%j_Ul;`kc8-qT-eevL<)&!woV9jDF8mBf79fPdWQ_RZ z61n7-O0t;&dMGq`SE2l?f)u1zAl~Jj1fN_>f8>C=A>fJ0obE*x@X^-i{jC?8q<$+1WKtfFC4un_@!CDW3@;VTsi;N9eEo2HWZ0n|%6*)+f6?nDYpoT8dmo z#GUcRR0T%$blOmn1D-3unPYd_5@?zwh_X)7wL>1oD+gh!o*71g8RB3xHcFJBdQA8o zh9go9Sbf>&5Qng*^mJfy@Dl<^7Uc{NhD%7IZvUYx@XJ_#TyE?~b|jez7^wJ&HVj@h zf*TO485GA|hV^f&ED{CfR67cdS*2BE9NO#COR!lY|fcZ;c*b8=i&k9+0fBeU9s zt4SfA1U|)TXrJ;Pc+}N_>MFkA;zUjK2FN1u{b%@Ur0N3XK|kSezV%K5IY_}7 z>rv$pGL`ZQ5eHACa)OYBz0aE1iHfx&fH&8aBSZ63Hn*#K_MesdpyDJj~D)44H z!SYumnJ!6U&vYkSUbkGfc&?25fb4r`ec6Os_H(|JBMxmOVt`Xwu?G_4gc z>5DoXk}u^}&3!%=O1Rzy=QaVF>E|EX#e!Of1LECR zr6(U^JvrcEhEI-L&-6#6Y56smNju{P1y#^@-!12_gD<58qoA)7mM-cE09;tC1%oLc zXV+Ftk4+QlP5Lv(m7?;f*y>ep)uuPf6xuEsBeq#!S7$TX&QqTpAHBubN+8*|-z2%ApfGFRgA>KVS1+Zq#- zJjnnra4L&?6JyJvsjiHJH?~w4Ra1*b86lO3%dFxCNBa?31!fn{el;QJGhv+tp43wTgd;P> zd02|@5v%CviiYdXni;&O?I&nA!$g*hay597#nN~Sxk$nW!YdEum$! z-R0^oV9-zAxIrvXL_8f+vT3gXokY`*%o;6Nq;4P5+m?so z5023tuYmE9*wD%7 z;WB;~(CaW3W!Qk#Av~zsuCrz?2{L%jy7Asi`D2iCNCrCnQ+-06(9G5pPM$>`3Akx} ziA{DKkQWHZgm1R?)j|OHnpWBpMNCvqM9-~S(ohTZ@#N7xu8;KJB zq2Ou5yEt<3w1@%7HdEa~u=3b< zA~|RU5w+s%trSZDC?|y!$MI;a2|=8;v*2n0sm(xCkkD}qfmM*oSr?5^Vl8ztCpZR< zIyu>1-ztIlX&Jx2LPG)nO(k_t#JfGDK?WN{CT9O4wsMMxayaPP8mn4WI0;JqVLp4a zvyjYr*ZLkZk#voLQ70p#MN?!1ukuuX zXMZELu=@evL(_mc8s@+L*%Cq4G3F8B!Yo!3t@fw&KQ!D0Ru`VkUSzzfRM_4LBQtk$r=MVgzfZ zAbI^uY1P31qk?gBvl0DQ;(AMMBj!ICk{7j8B@mJjOr;bO>h`uv4lxFs^FpZRkKR%3 zj8eL`#7^8FpAeFwq{iod`AD?W$WS!15HqfUJ?7_Rf@cQPnd63$6XXY$#38ol;}wEF ztU9Xacr4QCQcgYhly56)jvNs6`=Z&trO%X+6KiucgMfH6zUK8z0B#bttCt@G{%Od+ zJ7xHrsoXT1`%B736J3Uo_XVUhUzO|4b z8JNkYjX!eTs4#7=sbpAMR;rF5M3AXKJt0H0BmKDq!pEsEU>9wU?fm!Cq4-%5O_J!u z@*!msYhvW_2!BetD0YPUa$2(z0&&*@jCOec^u6WWF_e4+B~{+!5UQ3{z%3gA#{MNk zb_+uyXa1&di1sCXNFh~#0j6x(eL0d=qbmoZ_yBi=q$5-MgP(oRywx0Axps_KzZY$G zkD%9uuq>7|fRsZXyDf)BKza>;zhChru0}D5`#}1k%S-Q;j*P3L_3-!U`94zJ4(83? ziNGZdjc-^<@0D6w+0;kKD0+|H14Wa%5rfz1S9=gxD)1h}CuxVZrxLHbrI;;Ss@7$q zJ11wzRO%!`8oA9N|Gy;`gJN@uJ;2e#xW?b|9cqn^}_(p!-z}*&4 zPUQMycH-^w1{;`ZmGmo+K?rfsew~_o&x|i` z>UJ`_>^MdN7s)R$s(og{S_qFDp_ur;#KFZ1|7gA4@gBeGe$;Gao@0}OT&u1QCnFS& zrI>7O07|@a4Qs|snDx_5>y5FG)QkZYDR0tk_SG#W zzAuZM^;G9EIdJlW%!xVxoUAr2s&|n#<+4n=isQYJX`N5RCiU?HyRW_7c1Nb8?uK~0 zr}b|m+tcbF`D|eXou;JP8r6T+EG&kFdStJ4KyN}W=1vzTeghU+VJ4l9xkdX;{k(K* zlQz~cI7a5jPAC?C1r1fSki!#k)VP%%-;bgH7vgH7iPAN;Ri*c7Fhp3G*NE7A&S0Ma^aE{lIoy40QaCS^hcXc5iC@n*NsfZrYnk|mv4Uqj7xtm z8Od3nT9po_4a&)j{qo`;Qt5)7%C^rDoKUNz6XZ|Y&pq;9^NM^Xg@=~##TTTZ9g)Hj z(F(-aiXK%M^MYUS)uZ!Ve`sJM9?l<9sHpakRzrDqAZLO+5m1Wy@!ct5&UY8i0XuFs zqu&B@%w_f3wkGG7CCz{P71TM}eaDVG6(wwGz@UeENiuq#sU5XKUr652+* z)TMaQMOjub`D}!-k5}W@*!a|p3IIp=w~%CU<(OR5xAD7w>=s6qQ*%dSw3<0Zae8E# zZsb~g52r(W_nSAF8PtY%%eOIofnF4=*@hM+4xjbB^VU;U1EkrHr+W(-K=42jT*#@B zJolfgBrKZ1-O3wIz)uk|&kX!7iFT-R+pd`hwaMP!5;>Q%x+b0UW|j+|k@hX;G}`a` zaQ))$kTV%G(6jYv9ho=IEQ35f!N9SFedsJ3Ef5LTwC@)gNCyWN6zn&_I9 z2lp4Ac%wD8TJ>^4fI6(Lry^byzu(CGXtoVK*kJ;*(H*pZr^4_FYmV&rG<{feAm_Xm zdc=)H`m&{uGX|~rOh?~7k7=Y89D9&UCv&hBZ;!YOlGC{vw-~Hp$bS1v3%w}Vtc)np zgpz2lEA{B0kS@}{DEI~bPZSE6t8Q)0T_svZUF=R{8yxRDAo>zQSH!hs{$lq>HRecn zgI;2Rb7Z=eu`{MPt#FRbJ-!9K4Sa^b$;ED9JbmBY1qW^)1>vR^ zV}Oa(YOM?f@P!72hu0I`WP&lHi0{&-3#7V9Lk2BAfXcMbZjGS1$lCX)+@PG!$Nz&Q z@|JwJ2@~he%O<1zF`o98XDP8y{0puv0}EwU`(vW%1Qi1>&z)Xj%P68eQ-L|0^ngx=oj4zdrHOJts@%sH$wF~= zsRMK?^$P`tzhu`qRm*@L5rHeI4_$vDgskP!sZz;7zEnpDXMm_Kr36Ah%G5#BKm7s{ z>817*Q1$}(tGI8eH9ntm8nZ(&^OXV3>Zce4E2?@ZTo{rALu$~15e_FD&Y5qUG*cN4 zL&W5m-h*XXrc#&vig!l9x2FgimoR<0FF&dX2=^OvrsU8g)!1syl~KoTCMqy(v+3qF zm*@7!W)c#P%Em+t@hAq^IE7mkx{-N&&)60P&@ozOSI?x9ACd23!{F$&l8s5*pJgCa zJYLa-`y;{@Ll_6h?|mkr-larMZP%n61F0ZJ_8D$gT)9c{2kmjg@kAp(;6zpLJUGhh ziigtlF8IRzMR|zp7)8Jhv3vh0(`J8ad^X^JEJdJ@0#{^mZ5Ab?_18?XQ8x(rO)_L1 z5E1s$&FSv-*$o{3!YV$YQ~mHt6`=PV-@!3_oSW3;Lm2>(ha5Qos=R zrr}DKog>u1tKh_x>ym;|NHpyc6_>0Q@)PmwU7QSaQBWaWstcVON%vQ#WMpU&1qh4o z?+3L1t6P6o2gKHc^nkVp{NK72dv7gjK+d@?_2QOYwzT*^4ky)Yb7iTy%F$8@2@Un> zd|qMdjxMP8XONq=*A5+SNP4?fN!o>pR3UwN(=BJ{wn8wcgd{*^8+A}$XrYghgvAw| z3Sv_Qh~v#KxPXtO>m3LjtE5@mmX*-rGcqZblKopdUpz;~Tn?)vkHzU8*l!yT;HUJ< zx!!iL7Df1H>K?x(ZW%z{nFU3%lvYQlqa6`QeF<|Q=wq7ebw{b`DMbBa!mP`ywR*l> zhb4Jq6KnxgM{D(?!IC^9kVzX9^s}nrWAVo`XzS@(^HGhml3Q5+jtr<8;OyampKAD1 zzjrqhjA)31Cgt=KeR0yx)AJ;RZH;-{(Iru=_&aebH&y3z@^jDO2~eawCz3Lk2mD|3 zETwW(V3q{`M;bsE_C)*!$3IQLtlXcZp*S$9zirms4xO>%t7XQHl0#m8l9Kx&WQ}Br zcb`7(bMW1RV@ApvYSGYaIPlH|J1`t4avD+(}$sGW}?~4XE!w6i+Jiw@5oR~C1*gb$oe?FsY6pZ1f0Q8!uFuxkd z!ntZD>0FO>%2}9o?2~N@e~Po}8;cD1Gnn=yauhQZc;$3UKpLcGcIwF#P0qLiS7W2$ za`VN9?3lD^N&xYTC2n!pQl?SSYGXYIOw(2Js$ZesjTdlLIpO?^T% zOSzG?7a_neMTIf8DSvFHgX+%MM>&dYBOXImjUAy!$p$e9TPz1^yFwFPJV{wtC%CW* zPYCXV>G6S#TmX&aGwMZ!-dake)%QnPVL+JWvhryR9&>`suXyD7 z+m_LA&!;4HR2GD3r#ad(rhFs+cELUM!l)-}hZ~T`Yqy~}Hs71)3Ol=f-QVlfTWkqU zK)-vx5SBxx%a~zRRb5`;%uQLi;Xe#^*vwl$zi9wGYFMT7FNb?8m22o4lMyBtaJ4I# zoK?^T2I{jjmqT-S06s*U-{uY;rgqi8`r*7apZEv*w%MHt{w&L2PST6K_)u4A#}g#e zc?Ga~0=IwHDgF}TnxX<(&Y3@7x<3^kcV2FWR#A5=7RJu^*IfZ~sf_)OT0>irA3+zu zdwpSv>6wfGGpN@eUN06#8V&>n~ zWTxp^K4}sH`vJTz<=c zKa8UtN3+MBzbPOwW8bZ&Kz3>atbMvX8bPU`qJvRS`=p6D6piB5JAY`SWb=4{TS9>J!%pWI7ljl>9nT2R1pyO ztbwd=Y<7C44`GO>&HILd)53|@kyN&@@4`f;`=@x<90>vv%HwP^I^GGiv+sS?8NFSV zMIhA@(sUzmZ>&!md`9`DV)!f1rQW+{GR1CZ&V3ON&LAsc=*n{`t1g|mH&xKPV7q5) z$p7USSNQdNqsAjPGPp;8CZT;@!Mh_VwL=mF9rqZmUEjKjR3FXe1Vw}zVkX{KB!F(=nihE*E@jh75MwA zpXx>ZhL9lh^;K@W+k~XOt_{@VGOZM{EFaO??g!<>%g~4rM$h;xXOEAUDN=(&^9_nm z_ALba0e;lYd*FNk6p^mymK+%9IgtG8n}eVh4czY+8snQcFvC;(h6q^*mMMdNkwdz> z9=t;E1?-ZL{-7^n%EWolNfuz2E6SmDv^r{8sS8>1w|;IDW1lV_Fq$BgY7ef$g&*sA%Yb@Xt>ik0BTrKjT5a50-l$ur{xXDmcaYSJrU< z(x{1b zdq)&EJW&MHSxep&PbAg7&GK??h&l^ok+Wz_IJun|7mL^$crSi;S^WbgUuVZ9&`#-gc!$!1Z0sDImc3j=1$r99LzKl4O3 zkoZ@dJub`Nxk1H5##96cE?t@c-q1C+qSulw6p?k61;3YJ23n0@TLyI#`GzP+-d+W~ z;}NKc6~)OR^EQ=K4N=?;5#f-K|A(q`49=tryLD{a_QbYr+qSJIwmq?(Ol;e>ZBEQN z`M$SK)j7YqtE+!?)vn(AUTa;8*X^R0V;LibM=0A{ZWEt5*$QCaTv5wLD3xjVXO#si zbgOE4!e0H4a&y*P&Hdf=f!58hmwKf}qR$Z+1{qD+bs`F&SS|ao*47fTfKeQ)4)~xk z`l+r)<7%;jfRLP0CNT6>@JT+#7&2Co&BfLW8eX_0|#+FXVM74k0`3*oRFwdDXDi4cPBMXKg>A1U2LU z$q~q%3>Guif8X39%n8d_O|w{90^l-HRZ#IJ9EKEwtzXA4iS z16G=NiPlsT1qIXudLSfz=J<4aJ88J3Od(CrXRxN}SY&|B!fTORB_S~X-3|M~`hA~o z?+EHUJGj^E8bozX&L3^GC*J|bHUr6a3jdt?@O|BL!?+QJR_MWX)X-Y|(7XG{0Wr`- zpK29bmTu@+Nu)(KOs!SnK`K$?Vb#+pNw`Q3H$^AtFFybHnEj2wA+VOSp<+@=L5dCL zNIFW>JwL$q#t)yIlH~DQsQIjz>+%W}kyPmqR<;jDVq2R2Kp;wp);FZa+0^TRZ#lN?ecF;<9A%D?&FDBr1OLYP$w^Ef_WJguq zoZ0R*y)(z{v{er~j8%?3q9!WS0ouDp!*bK_=MsRu!t$G*S{0(kaxEH**HO6C)m=D& ze9@@yZ<41y+?RRchO6ySDrB-+R#yUW36YoqXe&!31~%4w1Ef2i7h0%5UsPjLq2zN1 z7|vU?C0@P|qH!||X4Q;HN|JYiU%~LZuSh-yj7dYF)x9S?>nUE%J9PBgFE7YL%<2j} z?4JOc(W4xiDmuGkZ&aDC&f+MQRWS=#o2~TCW0EOMfg`Adz4H}};=;BaYL~`o)ojTD z!7M6h;cHtwI&H}aN-J>YQ(Ur0{Jb>{Ikm|+iX;6DM6fMyi4Aqa#gZyo|D;nj7h;=| z!%c!Ho2Tn%4PDNE-)25Xlj^(P3by(q9kmNcuIw^?u1SNNkq$%fY?z z?0$|?=}0mA?WDAD*dCd#$LsIga&mmHxvf&DTJBMFRhAf@7_rQQSfYf{NYb!c_bd6> z#PT1FUH?xvYn28Xgk%u@BFWsBF7ZOjM8J2Gm-ntgV>QgAX}vs5cG2{oBr+Fv27fIJ zB{W(@zi!={WM%{$saYomM4xV%Vi#?V6)bngBCw z=r+4oDr=&UoS#)BAHO=5wHEg!c>4vsI z%q*iTRa$8>YByG#UzHrBxxN_D2sx~cFMcbMRO~!*jL0BIjiXx8wBzbC05|wf=x!X( zHz#}K(CV>g4tpEMzUMdAAi=9V&}RKYhH}dA-_vg9OIFBH9*2V8(7sq7@=z+1cH0J| zEvrCZ%E{E2OO7SK?{RbsM%`y2d%#t#a&%+TW}1q)nhzm`LZmCat;A#O0GwC~ix;^M zTuXKCtyw*GKC0um#(fkYfP=|fOQ2JQsy&jbC7`7O9?6H2ec!rlvA2s_O?SNaU7~kZ z)2}pjfJ7P6=sXXEDPPbp+sqd1-M9Wo5>n`uaXN=##K}>xq&#&eJlw|R&uxTx7DJMB zKS;rGg=|C-_{23fY2*>w-eK9B+xklcHs;|d6wQwnSjKen3l2F7fDN;515Lt*KbF-D zR$5D9Bu%p~hPx+!mT_D`8E=%`15Ff4gDZZ|^w!=M#oG!K?BwSl zQNJP09c{yk``c1$aw(_}cX@fOU&({3H(p3eS-&XrhYM!cr1+%ila>nm+sp9e>8w@L zeAreZx{)@Sg!WH^P6mq|A@%r+mPYUHH=aW0Cd7USHoy~TC$=k%^oW#yDT4J^205e5 zufKYDo;{Nb%9mi6r@k-Lbg_lQ(xBlPrjCSV8gN$1XD%rg2M6L2@(SnDE76kS{*)aj z3cV!E#$z8t=+|d`f}6KTyS9sEwbZ_IbM zCVJjd{9Ka#TxhB-iwDhWAL`_ef>qD3pk*M))=C8%TE8xdDy;LZcJ&^%Z@gh|+*~e@ zYFN$Js@xC#0rqrEPP*voG{ClMNZkau!niLwGX@t!v7oDOcJnR=7e-ci9XI7P+jE{w z@c=0!;crTnwwv?R`ZQGbEH*b$Hj;ZgAXc|E+T>_50CgH*m-cDr~+*j?jE;mA>L z&W#?;`GQ`PBZ&}`fFg+QfERn^({bugWzw{WCj1Ju(Jen@g zK0F{209RkYqGOwG#U=$<&jgtK3y9Ij856IJG|!bO8%A(sC;CdKbQ#`)Z;7Mdq;*Ur?=DHsOP{0-UZ8aLIp+YelD>aV!O#%&xBeH=@ zKB2CKV+D6z1O&_!*n7opx#2TVc>C`4x=y6y*0$@XX>PDAKV3BF$Zq|2i7!;9R6pg3h=!qNp zP;x6xv0=zxQ;=N|gF(YDuC=vKW-x)DnudWS1DocO%#Td9nO^!5gJJe=l*> z@|}j9lS0@)afoMqO(F2iD@xBtYi|-YlI?X>rJ4C5#!8{5l~{CokK#kR*6gtj18TiM z8vO;~waD%l+aGzA9$GQQKzz_Rf?o%TJ<;ohJ(4(CoAB(Ac%piGX3zaj8?mvO495>6 zj~7V@zx*yI^dH?1Hm2@R9D*q^zAZiJXe$tmw|xHYU0~3FQArW2a4)%v36%ZSVSig* zPVNP&*}6IS|1_5LodRHpp|JpP5~fg{{?q?@IH1A%E1r8>iVejq>ja3S zb>PK-?-~#AKprW`I_|ecE|x6j;wk98R^>7v%RT)J=z3MWW+PE=6l|4@qo`NL%X2xAm<-E8ek`F6BZpj%~bC0*a zqRh3tmfN}gR;z7z!3oITy>b=I(q_evLF}HzDKL3W?r?18%S+fB%=_5@js81+;KgqH zThJS(fbxnmc?3fUtFtFP7J&XjaO1Ei7N>rOvqlq=hGQ?X7j6jdwr2Z*;IfC`uWsoJ zM*W4f89`oAifX8O^22X9QKs|rs7$3T-&oh`rnSTK7+5)^+S^!eIWglyWyu*qjaI&0ziV;GY)n1H3^;b z>`q%^H4iWca^@zv9ztcip^LXZK^EO;C**0UkcAqC9-(DKFhUI{a2!STAcfi{f)1m9 z-bx0Ug%8RNujRN+SuwuGPC8p#ES!sNu=KUB-<6rS?wEwaEwYi1Dq??6Z#i09TnGb! zzEORMu%>l^k0Wa1Pd@~84e!PS zgLpBULL}voR+OpF3Ms<>ZXf%`jl_D)nL{cjZll{EhtHPx6=_Nqy&cXyp?VdoS@fahLB9r}LWzRN)0I1F81UliBF{&l51IejQ@hsGU zebMI4RoBju*0X#w2UV!H_Su)?!_&(wuLG_suJZH0i`EETo}@uTZ@SSzDkVDylBX#& zTV5BGg=9-UssOPMVA4~p985uHCl*Xo7HqMqt|vsQ4eY7P9IjXc89{ATZvx!qoGo*_OJZA2#rwa2yReY;y0b zHE316VF-%5-V8pyRVRhwCd5$&4Cda&BDP+v36#W_darLEPZ?w>;#5-~NC3avf-4TS z-MGFwNXc78-fT|jL`W$|vu%hQ{~=OnoPB5|)Qm9a8Va-qj3~iHWuEAhXqixu6x??g zAdb?NQ%ROI48n`ZVik>mfgN!`hhK z3#95~8NU`5qoQ;L8u*NKgVeMu?=?=&XxcvfmR-guh6;@|38tDa9b`jvG58f^0qm!! zdUSYZA2!X=dMbDh0igRm1AQcr3i{{{_%LF62Qi4p8}zmA@I+_l!^K0FBf^Ski3wb} zhWJ&ZruWNrVw8VWkV+X|e4w>R*ZIV!7V+(yarYBO$$IK>lmudlceLpn?;fi5fP50) zRAVH5!$f;fA|z|g)o;hE5+Qv^@0R*GrqQG*Wlrv4FEz)=Er2Jw2+IS5;@r^!u-42o z$Sxo$7|qBuUe^V*5>^fYsvv$1#)cyu&o0rkFWO`U(f%oA=f~@gCXoQ6ri=NE+qaPz z0~hN7@Z%X08_~lpPuxQ1{nnnV`}VBqCw*;@!{{8ZJb&K*>>s*=};`OHcUX z4BoOI7l(S=G&?cfkU|<06qFD}64$)kEVofdx|a&I^8;6XG2LbNC1?3B93u+|Aupw>R^-^FaXws8c^UTPaLn}~w6DNOx=HtwJfXbQB zP6!+RiTVukn{0FVi<5CHMeUGgmHTj7Qovg2wUccyt8E~G^MR-CxN#uDZ+eAILf*e{3Fu7h7XvLJj{mOX=_Q6SPE_{(9D{PV!cP2t=o)1S$ zU8=RT&`%lGPuV2%07W18Q_(O4FFZI9syW8?QF-*K0avR(-aVm&mp3aF;_RydkTg7OL@5mFhv zOxzAqmqoBStD$HgwKcQOO*@{}CKheZXsQzzaN3pGtWA~BMB#r~4Taa<|WoyTG`@h1&{ zdmv-7@jqrw;)N`wqJ-lB{0^Z#C_oUbD9S4L&RVwCJiSdef`^Z~ zQ>SWP7{AF%-}CP$!_FRbwP;>Ch(A{aJlHx84|ZB?O7m2&awux^m65-E#s(wRIMlSa zc~Z z6EyKsDl5y*Z*T}e|Go$dB61ngzC9P9!3VUdc##Q&iA4?d#1+tBw&sNc^9f)=sL?1v zh=N%jKb<(xdUnGAAnvAAdo~E*2@{Gy{lsWMmIX+)5(SLV1&RS^*f9A4ifiB0 z>K-+jp1@$KeXXzf#&fxUc+aDT1IJIxpQrrD63jbwXFn*5-S=|#ek4U!()>vNqCw+f z2|~U|ATWtTk~$(?=z@h4*ueF4Rm;>2f5cZ(6->qs{PGUUYVPUQbr!qeUTZH}u==PM zPVFV7T6HCW+%5xntpb_MlFKR;^d_yEjAOOX3!P|%yDZPwl|s)^P&?QYoLjGQ(vXw=NzH<+ZZoM=&(r~CpnQ)fMTu2JDmloqPZ3*gx zL<_mF?pCgycSW+l&%Hx9qULH8J@#24D9v+?3jz&t@2#B1KXU@G`ka{uIg)w5k&)`UE& zIuA@t2LVISyMdOAZu!QCjg|wq%^Xbk*kM1f{k|}3K)^g&KRm0tbTM#%j`SVB6u>4q zO~NRR?<3DsDDBBUSUi74A)M9Gk8%%{+wK`nC_VOv4WxK|Puw&LNrS`b&(mdYwY|qj zJWK=2o#vaGpAf6l*Z0BacawoRv_@kpkwM~VU%6oyqNilCRjhSIgfT19f(%kriuVM_ zo+)c>d^>=7@C8f1`VQiYIE~>60)*>bJ9hpfaG*P~O+GD=7yk>6$J!k@ZvulFu2SuY z$uQ=^=AVf`s~!!R@e-@gCCOg_1m=^>-@T{nDb-%paGLCk__*cM&w0dzs1UXns87Mr zrcGg1Mtspw4{&=q+xJQFc>v1;scr3TG)!$Zlil(@fw=+esS;?QR)~@C0-%nD{#6{( z((Fz`)rFIgz&j~j-6Mf>!b`l^qVDR<3Y5+NN)zZx2PdLP zea3A;{=tkWGC~~esF+rQ0M#4ph)oK^dY?*t_VK=^V4>Xr>~ABS19&X8`OAH&iA5uyZ^7>a5qu0d~;&?2mQ}n2S6MmRwMC3ZZe%E z%cOjY^!ZP!`I%!Io0?T6!i}`qv5#iCvskuwZlx9|Q%55-aI6*`>AT?A50YB1nG&_Z z&s=)MM0r6ZrSdn8TE%ib+3xbRl!EW!TUvC&NY9$>q%Rz|NKwy@RU=EilsV$2kW{L-X#f=PTxZ@lA|Lty1XB+KIa$H>$8ud zd1DvG-`r7P>Jyx}wMvZ>$1I(Det#l&RVN_t8fte}a?i(qPYP>(|r_CC$)jCF@{QPw&fjgnw4T^PDn1Yyy< zQfD|moiZdp!DdYRv=A+sOu*AY^ai2y*Pt!E2y(SRgsAKjt!xkj`e=Iz zz9Lxc5}~T+Orkkx-JJKzlIMIJtXo%+G}ikVn7^~=DlwR&Qq(Kmh$JFdhS;6g}4bg?PMbJ7ykE7kKecNR^};B zl^olhw85-Tgb8?hZ)S-UV@lFSKJJiCMi~j5*qJe0z!8|{LJXvsPV?#q`r8dCEtLtT zV?BHuCwwL8ge|lfsId$#Q-t^cMyyD;oyx5hTeKE}9$}zODS)sZBTI`uGCXLy80+ z??H2ldiK^nA%K%sV$~)2%{0T9y6?wfsC^4{pvdUQ3lnGW*1CheNTR7ElNPL`Q-Eyy zXG8wB-Z~fl^0md+zTEJ5Qh7@E6x?g#$otF!@7jNaAhnvOPJTrp6hiG5SMgV}# zTklqgHkCkPnZ)_~dO4t0?1o~E108Wg-|x3;zRtdV5aE~HiHZL004aQTapHhgD;UOe zXUQ!_1E7`%T;Y_ADy(v=D5zKw6ewE2&Bm5wlE?bOWbvc5Di8tNGbHtMY z&cDGG3PT`WkWz&SkFeGOF>&UYwFux3- z;`)Q8Xa6!g1Ru4PDs⪙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

^kXF2+78bQ7xXP&|7iGUXgpOXB3>N_t=rk!AJ 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

jBcn$UfePl{_w%If>iB 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 RhmV7u1A&@a>dR+@{{w+gJmvrZ -- GitLab