From 022a1e0af9ffd2146ff9496abbc8a3d7996c1760 Mon Sep 17 00:00:00 2001 From: stevencarlislewalker Date: Mon, 2 Dec 2024 13:09:11 -0500 Subject: [PATCH 1/3] general tv specification draft --- Makefile | 1 + NAMESPACE | 5 +- R/calibrator_arg_constructors.R | 35 +- R/distributions.R | 41 +- R/expr_list.R | 6 +- R/fit_methods.R | 2 +- R/frame_utils.R | 12 +- R/lists.R | 1 - R/mp_cal_time.R | 9 +- R/mp_tmb_calibrator.R | 537 +++++++++++++++--- R/mp_tmb_model_spec.R | 3 +- R/tmb_model.R | 14 +- inst/starter_models/macpan_base/README.R | 310 +++++++++- inst/starter_models/shiver/README.R | 29 +- inst/starter_models/shiver/README.Rmd | 1 - inst/starter_models/shiver/README.md | 141 +++-- .../shiver/figures/mult_traj_fit-1.png | Bin 87705 -> 87058 bytes inst/starter_models/si/README.R | 4 +- inst/starter_models/sir_mosquito/README.R | 2 + inst/starter_models/ww/README.R | 205 +++++++ inst/starter_models/ww/README.Rmd | 9 +- inst/starter_models/ww/README.md | 261 +++------ inst/starter_models/ww/calibration_example.R | 9 +- .../starter_models/ww/figures/plot_fits-1.png | Bin 98779 -> 99696 bytes man/TMBTV.RBFArg.Rd | 135 +++++ man/mp_par.Rd | 4 +- man/mp_tmb_calibrator.Rd | 2 +- man/mp_traj.Rd | 2 +- tests/testthat/test-calibrator-time.R | 19 +- tests/testthat/test-distributions.R | 16 +- 30 files changed, 1380 insertions(+), 435 deletions(-) create mode 100644 man/TMBTV.RBFArg.Rd diff --git a/Makefile b/Makefile index 8af643492..938a98c1f 100644 --- a/Makefile +++ b/Makefile @@ -53,6 +53,7 @@ quick-test-all: make run-vignette-code make run-tests make run-examples + make run-starter-readme-code quick-test: make quick-doc-install diff --git a/NAMESPACE b/NAMESPACE index 7a158b869..d144b2e02 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -8,7 +8,6 @@ S3method(StructuredVector,StructuredVector) S3method(StructuredVector,data.frame) S3method(StructuredVector,numeric) S3method(TMBTV,RBFArg) -S3method(TMBTV,TVArg) S3method(TMBTV,character) S3method(TMBTraj,"function") S3method(TMBTraj,TrajArg) @@ -38,6 +37,8 @@ S3method(length,StructuredVector) S3method(macpan2::TMBPar,ParArg) S3method(macpan2::TMBPar,character) S3method(macpan2::TMBPar,list) +S3method(macpan2::TMBTV,TVArg) +S3method(macpan2::TMBTV,list) S3method(mp_default,TMBModelSpec) S3method(mp_default,TMBSimulator) S3method(mp_default_list,TMBModelSpec) @@ -248,6 +249,7 @@ export(mp_per_capita_outflow) export(mp_poisson) export(mp_positions) export(mp_rbf) +export(mp_rbf_exper) export(mp_reduce) export(mp_reference) export(mp_rename) @@ -255,6 +257,7 @@ export(mp_rk4) export(mp_set_numbers) export(mp_setdiff) export(mp_sim_bounds) +export(mp_sim_offset) export(mp_simulator) export(mp_slices) export(mp_sqrt) diff --git a/R/calibrator_arg_constructors.R b/R/calibrator_arg_constructors.R index d27dd9559..b2f9bab05 100644 --- a/R/calibrator_arg_constructors.R +++ b/R/calibrator_arg_constructors.R @@ -5,15 +5,18 @@ #' Define the prior distributions for parameters and random effects to be #' passed to `par` argument of the \code{\link{mp_tmb_calibrator}} function. #' -#' @param param Named list of distributional specifications for the +#' @param params Named list of distributional specifications for the #' fixed effects. #' @param random Named list of distributional specifications for the random #' effects. #' #' @export -mp_par = function(param, random) { +mp_par = function( + params = empty_named_list() + , random = empty_named_list() + ) { arg = list() - arg$param = param + arg$params = params arg$random = random structure(arg, class = "ParArg") } @@ -22,9 +25,17 @@ mp_par = function(param, random) { #' @param parameters List of time-variation specifications for parameters. #' @noRd -mp_tv = function(parameters) { +mp_tv = function( + params = empty_named_list() + , random = empty_named_list() + , known = empty_named_list() + , linear = empty_named_list() + ) { arg = list() - arg$parameters = parameters + arg$params = params + arg$random = random + arg$known = known + arg$linear = linear structure(arg, class = "TVArg") } @@ -73,6 +84,16 @@ mp_rbf = function(tv, dimension, initial_weights, seed, prior_sd = 1, fit_prior_ structure(arg, class = "RBFArg") } +#' @export +mp_rbf_exper = function(dimension + , initial_weights + , seed + , prior_sd = 1 + , fit_prior_sd = TRUE + , sparse_tol = 1e-2) { + mp_rbf("", dimension, initial_weights, seed, prior_sd, fit_prior_sd, sparse_tol) +} + mp_piecewise = function(tv, data) { arg = list() @@ -96,8 +117,8 @@ mp_piecewise = function(tv, data) { #' identify the trajectories produced by each condensation method. #' @export mp_traj = function( - likelihood = list() - , condensation = list() + likelihood = empty_named_list() + , condensation = empty_named_list() ) { arg = list() arg$likelihood = likelihood diff --git a/R/distributions.R b/R/distributions.R index 66c2dfc1a..6b45f80a8 100644 --- a/R/distributions.R +++ b/R/distributions.R @@ -44,7 +44,7 @@ DistrParam = function(generic_name, trans = DistrParamTransDefault()) { self$generic_name = generic_name # Name of the variable being modelled by the distribution containing this - # distributional parmaeter (e.g., beta has this prior) + # distributional parameter (e.g., beta has this prior) self$variable_name = character(1L) # Name of the instance of this distributional parameter (e.g., sd_beta) @@ -92,11 +92,11 @@ DistrParam = function(generic_name, trans = DistrParamTransDefault()) { ## length 0 (if this distributional parameter does not have to be added ## to the model spec) or length 1 (if it does). any other length is ## invalid - self$default = function() list() + self$default = function() empty_named_list() ## section 1b: list parallel to self$default() containing the objects ## that represent each distributional parameter - self$default_objs = function() list() + self$default_objs = function() empty_named_list() ## section 3: how should each distributional parameter be represented in @@ -196,14 +196,14 @@ DistrSpec = function(distr_param_objs = list(), trans_distr_param = list()) { self$default = function() { dpo = self$distr_param_objs - dp = list() + dp = empty_named_list() for (o in dpo) dp = append(dp, o$default()) dp } self$default_objs = function() { dpo = self$distr_param_objs - dp = list() + dp = empty_named_list() for (o in dpo) dp = append(dp, o$default_objs()) dp } @@ -331,6 +331,12 @@ DistrList = function(distr_list = list(), model_spec = mp_tmb_model_spec()) { for (i in seq_along(nms)) default_objs[[i]]$update_global_name(nms[i]) } + self$update_variable_names = function(obj, mth = "time_var") { + tv_nms = names(globalize(obj, mth)) + nms = names(obj[[mth]]()) + for (i in seq_along(nms)) self$distr_list[[nms[i]]]$update_variable_name(tv_nms[i]) + } + # section 2: distributional parameters that need to be added as ## _new_ defaults to model spec to be updated by calibration machinery @@ -344,6 +350,9 @@ DistrList = function(distr_list = list(), model_spec = mp_tmb_model_spec()) { ## calibration machinery? self$distr_params_frame = function() { + if (length(self$distr_list) == 0L) { + return(empty_frame(c("mat", "row", "col", "default"))) + } (self$distr_list |> method_apply("distr_params_frame") |> bind_rows() @@ -367,22 +376,6 @@ DistrList = function(distr_list = list(), model_spec = mp_tmb_model_spec()) { mp_distr_param_null = function(generic_name) DistrParamNull(generic_name) DistrParamNull = function(generic_name) { self = DistrParam(generic_name, DistrParamTrans()) - # self$err = function() { - # if (self$variable_name == "") { - # msg = sprintf("A %s parameter for some distribution is not provided" - # , self$generic_name - # ) - # } else { - # msg = sprintf("A %s parameter for a distribution on %s is not provided" - # , self$generic_name - # , self$variable_name - # ) - # } - # msg - # } - # self$default = function() stop(self$err()) - # self$default_objs = function() stop(self$err()) - # self$expr_ref = function() stop(self$err()) return_object(self, "DistrParamNull") } DistrParamNum = function(generic_name, value, trans = DistrParamTrans()) { @@ -465,7 +458,7 @@ DistrParamCharNoFit = function(name, instance_name, trans = DistrParamTrans()) { self = DistrParamChar(name, instance_name, trans) self$default = function() { self$check_in_spec() - list() + empty_named_list() } return_object(self, "DistrParamCharNoFit") } @@ -609,7 +602,7 @@ NULL #' @export mp_uniform = function(trans_distr_param = list()) { self = DistrSpec( - distr_param_objs = nlist() + distr_param_objs = empty_named_list() , trans_distr_param = trans_distr_param ) self$prior = \(par) { @@ -896,7 +889,7 @@ to_distr_param.character = function(x) mp_nofit(x) #' @noRd mp_poisson2 = function(location) { self = DistrSpec() - self$distr_params = \() list() + self$distr_params = \() empty_named_list() self$expr_char = \(x, location) sprintf("-sum(dpois(%s, %s))", x, location) return_object(self, "Poisson") } diff --git a/R/expr_list.R b/R/expr_list.R index 75031db2c..1d6b0ce1d 100644 --- a/R/expr_list.R +++ b/R/expr_list.R @@ -221,9 +221,9 @@ ExprList = function( model_steps_printer = function(steps_list, eval_schedule, file = "", time_steps = "T") { if (sum(eval_schedule) == 0L) { lines = c( - "---------------------", - "Empty simulator", - "---------------------" + "-------------------------", + "Empty model specification", + "-------------------------" ) |> cat(file = file, sep = "\n", append = FALSE) } else { to = cumsum(eval_schedule) diff --git a/R/fit_methods.R b/R/fit_methods.R index c69eedaf2..fb577122f 100644 --- a/R/fit_methods.R +++ b/R/fit_methods.R @@ -78,7 +78,7 @@ mp_tmb_coef.TMBSimulator = function(model, back_transform = TRUE, ...) { assert_dependency("broom.mixed") tab = mp_add_effects_descr(broom.mixed::tidy(mp_tmb(model), ...), model) - if (back_transform){ + if (back_transform & (nrow(tab) > 0L)){ vars1 <- intersect(c("default", "estimate", "conf.low", "conf.high"), names(tab)) # regex matching log or logit transformed model coefficient/parameter names # including time varying parameters and distributional parameters diff --git a/R/frame_utils.R b/R/frame_utils.R index b3b30db5e..16ae10f35 100644 --- a/R/frame_utils.R +++ b/R/frame_utils.R @@ -51,16 +51,20 @@ bind_rows <- function(..., .id = NULL) { if (!missing(.id)) { lsts <- lapply(seq_along(lsts), function(i) { nms <- names(lsts) - id_df <- data.frame(id = if (is.null(nms)) as.character(i) else nms[i], stringsAsFactors = FALSE) + id_col = if (is.null(nms)) { + as.character(i) + } else if (nrow(lsts[[i]]) == 0L) { + character() + } else { + nms[i] + } + id_df <- data.frame(id = id_col, stringsAsFactors = FALSE) colnames(id_df) <- .id y = try(cbind(id_df, lsts[[i]]), silent = TRUE) if (inherits(y, "try-error")) return(NULL) y }) } - - # some_rows = function(x) isTRUE(nrow(x) != 0L) - # lsts <- Filter() nms <- unique(unlist(lapply(lsts, names))) lsts <- lapply( lsts, diff --git a/R/lists.R b/R/lists.R index ed6ae7b7b..f041d70a0 100644 --- a/R/lists.R +++ b/R/lists.R @@ -133,4 +133,3 @@ assert_named_list = function(l) { } self_named_vector = function(...) c(...) |> setNames(c(...)) - diff --git a/R/mp_cal_time.R b/R/mp_cal_time.R index a70f13b62..b5d3780ec 100644 --- a/R/mp_cal_time.R +++ b/R/mp_cal_time.R @@ -28,7 +28,7 @@ mp_sim_bounds = function(sim_start, sim_end, time_scale, time_column = "time") { self$sim_end = sim_end self$time_scale = time_scale self$time_column = time_column - self$cal_time_steps = function(data) { + self$cal_time_steps = function(data, original_coercer = force) { column = data[[self$time_column]] dat_start = min(column) dat_end = max(column) @@ -37,18 +37,19 @@ mp_sim_bounds = function(sim_start, sim_end, time_scale, time_column = "time") { , steps = CalTimeStepsInt , daily = CalTimeStepsDaily ) - constr(self$sim_start, self$sim_end, dat_start, dat_end) + constr(self$sim_start, self$sim_end, dat_start, dat_end, original_coercer) } return_object(self, "SimBounds") } +#' @export mp_sim_offset = function(sim_start_offset, sim_end_offset, time_scale, time_column = "time") { self = Base() self$sim_start_offset = as.integer(sim_start_offset) self$sim_end_offset = as.integer(sim_end_offset) self$time_scale = time_scale self$time_column = time_column - self$cal_time_steps = function(data) { + self$cal_time_steps = function(data, original_coercer = force) { column = data[[self$time_column]] if (is.character(column)) column = as.Date(column) if (!inherits(column, "Date")) column = as.integer(column) @@ -61,7 +62,7 @@ mp_sim_offset = function(sim_start_offset, sim_end_offset, time_scale, time_colu , steps = CalTimeStepsInt , daily = CalTimeStepsDaily ) - constr(sim_start, sim_end, dat_start, dat_end) + constr(sim_start, sim_end, dat_start, dat_end, original_coercer) } return_object(self, "SimOffset") } diff --git a/R/mp_tmb_calibrator.R b/R/mp_tmb_calibrator.R index 5c059aa5e..b86fc4bed 100644 --- a/R/mp_tmb_calibrator.R +++ b/R/mp_tmb_calibrator.R @@ -54,7 +54,7 @@ mp_tmb_calibrator = function(spec, data , tv = character() , outputs = traj , default = list() - , time = NULL ## TODO: implement start-date offset. TODO: implement forecast extension + , time = NULL ) { cal_args = nlist(traj, par, tv, outputs, default, time) if (inherits(spec, "TMBSimulator")) { @@ -122,8 +122,8 @@ mp_tmb_calibrator = function(spec, data , integers = c( globalize(tv, "change_points") , globalize(tv, "change_pointer") - , must_not_save = names(globalize(tv, "time_var")) ) + , must_not_save = names(globalize(tv, "time_var")) ) cal_spec = mp_tmb_update(cal_spec , default = c( @@ -180,16 +180,17 @@ mp_tmb_calibrator = function(spec, data cal_sim$replace$params_frame(par$params_frame()) cal_sim$replace$random_frame(par$random_frame()) - TMBCalibrator(spec, spec$copy(), cal_spec, cal_sim, cal_args) + TMBCalibrator(spec, spec$copy(), cal_spec, cal_sim, cal_args, struc$time_steps_obj) } -TMBCalibrator = function(orig_spec, new_spec, cal_spec, simulator, cal_args = NULL) { +TMBCalibrator = function(orig_spec, new_spec, cal_spec, simulator, cal_args = NULL, time_steps_obj = NULL) { self = Base() self$orig_spec = orig_spec ## original spec for reference self$new_spec = new_spec ## gets updated as optimization proceeds self$cal_spec = cal_spec ## contaminated with stuff required for calibration self$simulator = simulator ## model simulator object keeping track of optimization attempts self$cal_args = cal_args + self$time_steps_obj = time_steps_obj return_object(self, "TMBCalibrator") } @@ -285,6 +286,15 @@ TMBCalDataStruc = function(data, time) { , col = c("col", "Col", "column", "Column") , value = c("value", "Value", "val", "Val", "default", "Default") ) + if (is.character(data$time)) { + original_coercer = as.character + } else if (is.integer(data$time)) { + original_coercer = as.integer + } else if (inherits(data$time, "Date")) { + original_coercer = as.Date + } else { + original_coercer = force + } if (is.null(time)) { if (infer_time_step(data$time)) { data$time = as.integer(data$time) @@ -294,7 +304,7 @@ TMBCalDataStruc = function(data, time) { time = mp_sim_bounds(min(data$time), max(data$time), "daily") } } - self$time_steps_obj = time$cal_time_steps(data) + self$time_steps_obj = time$cal_time_steps(data, original_coercer) data$time_ids = self$time_steps_obj$external_to_internal(data$time) ## TODO: Still splitting on matrices, which doesn't allow flexibility ## in what counts as an 'output'. In general, an output could be @@ -341,17 +351,21 @@ CalTimeStepsAbstract = function() { self$dat_vec = function() seq(from = self$dat_1st(), by = 1L, len = self$dat_len()) return_object(self, "CalTimeStepsAbstract") } -CalTimeStepsInt = function(ext_sim_1st, ext_sim_end, ext_dat_1st, ext_dat_end) { +CalTimeStepsInt = function(ext_sim_1st, ext_sim_end, ext_dat_1st, ext_dat_end, original_coercer = force) { self = CalTimeStepsAbstract() self$ext_sim_1st = as.integer(ext_sim_1st) self$ext_sim_end = as.integer(ext_sim_end) self$ext_dat_1st = as.integer(ext_dat_1st) self$ext_dat_end = as.integer(ext_dat_end) + self$original_coercer = original_coercer self$consistency() self$dat_1st = function() self$ext_dat_1st - self$ext_sim_1st + self$sim_1st() self$sim_len = function() self$ext_sim_end - self$ext_sim_1st + self$sim_1st() self$dat_len = function() self$ext_dat_end - self$ext_dat_1st + 1L - self$internal_to_external = function(internal) internal - self$sim_1st() + self$ext_sim_1st + self$internal_to_external = function(internal) { + external = as.integer(internal) - self$sim_1st() + self$ext_sim_1st + self$original_coercer(external) + } self$external_to_internal = function(external) external - self$ext_sim_1st + self$sim_1st() return_object(self, "CalTimeStepsInt") } @@ -366,12 +380,13 @@ if (FALSE) { xx$external_to_internal(50) } -CalTimeStepsDaily = function(ext_sim_1st, ext_sim_end, ext_dat_1st, ext_dat_end) { +CalTimeStepsDaily = function(ext_sim_1st, ext_sim_end, ext_dat_1st, ext_dat_end, original_coercer = force) { self = CalTimeStepsAbstract() self$ext_sim_1st = as.Date(ext_sim_1st) self$ext_sim_end = as.Date(ext_sim_end) self$ext_dat_1st = as.Date(ext_dat_1st) self$ext_dat_end = as.Date(ext_dat_end) + self$original_coercer = original_coercer self$consistency() self$dat_1st = function() { d = difftime(self$ext_dat_1st, self$ext_sim_1st, units = "days") @@ -385,7 +400,10 @@ CalTimeStepsDaily = function(ext_sim_1st, ext_sim_end, ext_dat_1st, ext_dat_end) d = difftime(self$ext_dat_end, self$ext_dat_1st, units = "days") as.integer(d) + 1L } - self$internal_to_external = function(internal) internal + (self$ext_sim_1st - self$sim_1st()) + self$internal_to_external = function(internal) { + external = internal + (self$ext_sim_1st - self$sim_1st()) + self$original_coercer(external) + } self$external_to_internal = function(external) { d = difftime(as.Date(external), self$ext_sim_1st, units = "days") as.integer(d) + 1L @@ -446,6 +464,23 @@ NameHandlerAbstract = function() { unlist(self$global_names(), recursive = TRUE, use.names = FALSE) ) } + self$global_names_subset = function(model_vars) { + + ## list of character vectors. each element of this list + ## corresponds to a method that returns a named vector. + ## the names of these vectors have local and global + ## forms. the character vectors in this gnms list + ## are the global forms of these names. + gnms = self$global_names() + mths = names(gnms) + + for (mth in mths) { + model_vars_mth = names(self[[mth]]()) + i = model_vars_mth %in% model_vars + gnms[[mth]] = setNames(gnms[[mth]][i], model_vars_mth[i]) + } + return(gnms) + } ## check_assumptions has no return value. while running ## it is allowed to throw messages, warnings, errors, @@ -550,6 +585,9 @@ TMBTVAbstract = function() { self$tv_params_frame = function(tv_pars) self$empty_params_frame self$tv_random_frame = function() self$empty_params_frame + self$tv_distr_params = function() list() + self$tv_distr_random = function() list() + self$local_names = function() { make_names_list(self @@ -605,6 +643,287 @@ TMBTV = function(tv, struc, spec, existing_global_names = character()) { UseMethod("TMBTV") } + +#' @exportS3Method macpan2::TMBTV +TMBTV.list = function(tv + , struc, spec + , existing_global_names = character() + ) { + TMBTV( + mp_tv(params = tv, random = list(), known = list(), linear = list()) + , struc, spec + , existing_global_names + ) +} + +#' @exportS3Method macpan2::TMBTV +TMBTV.TVArg = function(tv + , struc, spec + , existing_global_names = character() + ) { + self = macpan2:::TMBTVAbstract() + self$tv = tv + self$struc = struc + self$spec = spec + self$existing_global_names = existing_global_names + + fix_tv_list = function(tv_list) { + for (p in names(tv_list)) { + tv_list[[p]] = macpan2:::rename_synonyms(tv_list[[p]] + , mat = c("matrix", "Matrix", "mat", "Mat", "variable", "var", "Variable", "Var") + , row = c("row", "Row") + , col = c("col", "Col", "column", "Column") + , default = c("value", "Value", "val", "Val", "default", "Default") + ) + if (isTRUE(!any(tv_list[[p]]$time_ids == 0))) { + ## if the data do not define what value to + ## give at time-id zero, then look for the + ## default value of the parameter that is + ## being converted to a time-varying parameter + ## at calibration time. + baseline = self$spec$default[[p]] + if (is.null(baseline)) { + stop("Baseline value not specified for time-varying parameter, ", p) + } + tv_list[[p]] = macpan2:::add_row(tv_list[[p]] + , mat = p + , row = 0L + , col = 0L + , time_ids = 0L + , default = baseline + ) + } + } + return(tv_list) + } + + # self$data_time_ids = struc$time_steps_obj$dat_vec() + # self$par_name = tv$tv + # self$prior_sd_default = tv$prior_sd + # self$fit_prior_sd = tv$fit_prior_sd + + fix_linear_list = function(sm_list) { + for (nm in names(sm_list)) { + sm_list[[nm]]$tv = nm + sm_list[[nm]]$sparse_basis_data = macpan2:::sparse_rbf_notation( + struc$time_steps_obj$dat_len() + , sm_list[[nm]]$dimension + , zero_based = TRUE + , tol = sm_list[[nm]]$sparse_tol + ) + sm_list[[nm]]$initial_outputs = c(sm_list[[nm]]$sparse_basis_data$M %*% sm_list[[nm]]$initial_weights) + } + return(sm_list) + } + + # internal data structure + self$pnms = names(self$tv$params) + self$rnms = names(self$tv$random) + self$knms = names(self$tv$known) + self$lnms = names(self$tv$linear) + + # local name utility: return list of outputs of self$global_names, + # organized by the type of time-varying variable + self$global_names_by_tv_type = function() { + list( + params = self$global_names_subset(self$pnms) + , random = self$global_names_subset(self$rnms) + , known = self$global_names_subset(self$knms) + , linear = self$global_names_subset(self$lnms) + ) + } + + self$anms = c(self$pnms, self$rnms, self$knms, self$lnms) + dups = duplicated(self$anms) + if (any(dups)) stop("duplicates: ", unique(self$anms[dups])) + + self$ptv_list = struc$matrix_list[self$pnms] |> fix_tv_list() + self$rtv_list = struc$matrix_list[self$rnms] |> fix_tv_list() + self$ktv_list = struc$matrix_list[self$knms] |> fix_tv_list() + self$stv_list = self$tv$linear |> fix_linear_list() + + self$time_var = function() { + l = list() + for (nm in self$pnms) l[[nm]] = self$ptv_list[[nm]]$default + for (nm in self$rnms) l[[nm]] = self$rtv_list[[nm]]$default + for (nm in self$knms) l[[nm]] = self$ktv_list[[nm]]$default + for (nm in self$lnms) l[[nm]] = self$stv_list[[nm]]$initial_weights + return(l) + } + + self$change_points = function() { + l = list() + for (nm in self$pnms) l[[nm]] = self$ptv_list[[nm]]$time_ids + for (nm in self$rnms) l[[nm]] = self$rtv_list[[nm]]$time_ids + for (nm in self$knms) l[[nm]] = self$ktv_list[[nm]]$time_ids + return(l) + } + + self$change_pointer = function() { + ## Depended upon to return a list of length-one + ## integer vectors with a single zero. Names of + ## the list are the time-varying matrices in the + ## spec. + nms = names(self$change_points()) + (nms + |> macpan2:::zero_vector() + |> as.integer() + |> as.list() + |> setNames(nms) + ) + } + + self$values_var = function() { + l = list() + for (nm in self$lnms) l[[nm]] = self$stv_list[[nm]]$sparse_basis_data$values + return(l) + } + + self$prior_sd = function() { + l = list() + for (nm in self$lnms) l[[nm]] = self$stv_list[[nm]]$prior_sd + return(l) + } + + self$row_indexes = function() { + l = list() + for (nm in self$lnms) { + l[[nm]] = as.integer(self$stv_list[[nm]]$sparse_basis_data$row_index) + } + return(l) + } + + self$col_indexes = function() { + l = list() + for (nm in self$lnms) { + l[[nm]] = as.integer(self$stv_list[[nm]]$sparse_basis_data$col_index) + } + return(l) + } + + self$outputs_var = function() { + l = list() + for (nm in self$lnms) l[[nm]] = self$stv_list[[nm]]$initial_outputs + return(l) + } + + self$data_time_indexes = function() { + l = list() + for (nm in self$lnms) { + l[[nm]] = as.integer(c(0, self$struc$time_steps_obj$dat_vec())) + } + return(l) + } + + self$var_update_exprs = function() { + nms = self$global_names_by_tv_type() + s = character() + s = c(s, sprintf("%s ~ time_var(%s, %s)" + , self$pnms + , nms$params$time_var + , nms$params$change_points + )) + s = c(s, sprintf("%s ~ time_var(%s, %s)" + , self$rnms + , nms$random$time_var + , nms$random$change_points + )) + s = c(s, sprintf("%s ~ time_var(%s, %s)" + , self$knms + , nms$known$time_var + , nms$known$change_points + )) + s = c(s, sprintf("%s ~ exp(time_var(%s, %s))" + , self$lnms + , nms$linear$outputs_var + , nms$linear$data_time_indexes + )) + lapply(s, as.formula) + } + + self$prior_expr_chars = function() { + nms = self$global_names_by_tv_type() + s = character() + s = c(s, sprintf( + "-sum(dnorm(%s, 0, %s))" + , nms$linear$values_var, nms$linear$prior_sd + )) + for (i in seq_along(self$pnms)) { + nm = self$pnms[i] + pp = self$tv$params$distr_list[[nm]] + s = c(s, pp$prior(nm)) + } + for (i in seq_along(self$rnms)) { + nm = self$rnms[i] + pp = self$tv$random$distr_list[[nm]] + s = c(s, pp$prior(nm)) + } + return(s) + } + + self$.util_params_frame = function(gnms) { + + ## default values of the variables that are + ## time varying, indexed using the 'model + ## names' (see below) + time_var = self$time_var() + + ## model names: names of the variables that are + ## time varying as they are represented in the model + ## (e.g., beta) + mnms = names(gnms) + + l = list() + for (nm in mnms) { + l[[nm]] = data.frame( + mat = gnms[[nm]] + , row = seq_along(time_var[[nm]]) - 1L + , col = 0L + , default = time_var[[nm]] + ) + } + + if (length(l) == 0L) { + cols = c("mat", "row", "col", "default") + frame = empty_frame(cols) + } else { + frame = bind_rows(l) + } + return(frame) + } + + self$tv_params_frame = function(tv_pars) { + ## global names: names of the variables that + ## are time varying as they are represented + ## as vectors giving how they vary in time + ## during calibration + ## (e.g., time_var_beta) + gnms = self$global_names_by_tv_type() + gnms = c(gnms$params$time_var, gnms$linear$time_var) + self$.util_params_frame(gnms) + } + + self$tv_random_frame = function() { + ## global names: names of the variables that + ## are time varying as they are represented + ## as vectors giving how they vary in time + ## during calibration + ## (e.g., time_var_beta) + gnms = self$global_names_by_tv_type() + gnms = c(gnms$random$time_var) + self$.util_params_frame(gnms) + } + + self$tv$params = macpan2:::DistrList(self$tv$params, spec) + self$tv$random = macpan2:::DistrList(self$tv$random, spec) + self$tv$params$update_global_names(self, "tv_distr_params") + self$tv$random$update_global_names(self, "tv_distr_random") + self$tv$params$error_if_not_all_have_location() + self$tv$random$error_if_not_all_have_location() + + return_object(self, "TMBTV") +} + #' @export TMBTV.character = function( tv @@ -664,10 +983,10 @@ TMBTV.character = function( bind_rows(l) } self$change_pointer = function() { - ## Depended upon to return a list if length-one + ## Depended upon to return a list of length-one ## integer vectors with a single zero. Names of ## the list are the time-varying matrices in the - ## spec. + ## spec. nms = names(self$change_points()) (nms |> zero_vector() @@ -710,45 +1029,45 @@ TMBTV.character = function( return_object(self, "TMBTV") } -#' @export -TMBTV.TVArg = function( - tv - , struc - , spec - , existing_global_names = character() -) { - self = TMBTVAbstract() - self$existing_global_names = existing_global_names - self$spec = spec - - self$before_loop = function() list() - self$after_loop = function() list() - - ## List with the values of each - ## time varying parameter at the change points. The - ## names of the list are the time-varying matrices - ## in the spec. - self$time_var = function() list() - - ## List of the integers - ## giving the time-steps of the changepoints with - ## the first time-step always being 0 (the initial) - ## The names of the list are the time-varying - ## matrices in the spec. - self$change_points = function() list() - self$change_pointer = function() list() - - ## List of expressions that update parameters that - ## are time-varying - self$var_update_exprs = function() list() - - ## data frames describing the fixed and random effects corresponding - ## to time-varying parameters - self$tv_params_frame = function(tv_pars) self$empty_params_frame - self$tv_random_frame = function() self$empty_params_frame - - return_object(self, "TMBTV") -} + +#' TMBTV.TVArg = function( +#' tv +#' , struc +#' , spec +#' , existing_global_names = character() +#' ) { +#' self = TMBTVAbstract() +#' self$existing_global_names = existing_global_names +#' self$spec = spec +#' +#' self$before_loop = function() list() +#' self$after_loop = function() list() +#' +#' ## List with the values of each +#' ## time varying parameter at the change points. The +#' ## names of the list are the time-varying matrices +#' ## in the spec. +#' self$time_var = function() list() +#' +#' ## List of the integers +#' ## giving the time-steps of the changepoints with +#' ## the first time-step always being 0 (the initial) +#' ## The names of the list are the time-varying +#' ## matrices in the spec. +#' self$change_points = function() list() +#' self$change_pointer = function() list() +#' +#' ## List of expressions that update parameters that +#' ## are time-varying +#' self$var_update_exprs = function() list() +#' +#' ## data frames describing the fixed and random effects corresponding +#' ## to time-varying parameters +#' self$tv_params_frame = function(tv_pars) self$empty_params_frame +#' self$tv_random_frame = function() self$empty_params_frame +#' +#' return_object(self, "TMBTV") +#' } #' @export TMBTV.RBFArg = function( @@ -1111,56 +1430,97 @@ TMBPar.ParArg = function(par , tv, traj, spec , existing_global_names = character() ) { - self = TMBPar(names(par$param), tv, traj, spec, existing_global_names) + self = TMBParAbstract() + self$existing_global_names = existing_global_names + self$par = par + self$tv = tv + self$traj = traj + self$spec = spec - self$par_ranef = names(par$random) + # internal data structure + self$pnms = names(self$par$params) + self$rnms = names(self$par$random) - self$distr_params = function() self$arg$param$default() - self$distr_random = function() self$arg$random$default() - - self$random_frame = function() { - pf = (self$spec$default[self$par_ranef] - |> melt_default_matrix_list(FALSE) - |> rename_synonyms(mat = "matrix", default = "value") - ) - bind_rows(pf, self$tv$tv_random_frame()) + self$local_names = function() { + macpan2:::make_names_list(self, c("trans_vars", "hyperparams", "distr_params")) } + ## make distr + self$par$params = macpan2:::DistrList(self$par$params, spec) + self$par$random = macpan2:::DistrList(self$par$random, spec) + self$prior_expr_chars = function() { - # union to get both parameters and - # time-varying pars we are estimating - par_nms = union(self$par, self$tv_par) y = character() - for (i in seq_along(par_nms)) { - nm = par_nms[i] - pp = self$arg$param$distr_list[[nm]] + for (i in seq_along(self$pnms)) { + nm = self$pnms[i] + pp = self$par$params$distr_list[[nm]] y = c(y, pp$prior(nm)) } - for (i in seq_along(self$par_ranef)) { - nm = self$par_ranef[i] - pp = self$arg$random$distr_list[[nm]] + for (i in seq_along(self$rnms)) { + nm = self$rnms[i] + pp = self$par$random$distr_list[[nm]] y = c(y, pp$prior(nm)) } - y + return(y) + } + + self$params_frame = function() { + pf = (self$spec$default[self$pnms] + |> melt_default_matrix_list(FALSE) + |> rename_synonyms(mat = "matrix", default = "value") + ) + if (is.null(pf)) pf = self$empty_params_frame + bind_rows(pf + , self$traj$distr_params_frame() + , self$distr_params_frame() + ## do we need tv params here? + ) + } + self$random_frame = function() { + pf = (self$spec$default[self$rnms] + |> melt_default_matrix_list(FALSE) + |> rename_synonyms(mat = "matrix", default = "value") + ) + if (is.null(pf)) pf = self$empty_params_frame + bind_rows(pf + ## do we need tv params here? + ) } - self$distr_params_frame = function() self$arg$param$distr_params_frame() - self$distr_random_frame = function() self$arg$random$distr_params_frame() + self$distr_params = function() self$par$params$default() + self$distr_random = function() self$par$random$default() + self$distr_params_frame = function() self$par$params$distr_params_frame() + self$distr_random_frame = function() self$par$random$distr_params_frame() - ## adapt (prior) distributional parameters to this parameter object - self$arg = par - self$arg$param = DistrList(self$arg$param, spec) - self$arg$random = DistrList(self$arg$random, spec) - self$arg$param$update_global_names(self, "distr_params") - self$arg$random$update_global_names(self, "distr_random") - self$arg$param$error_if_not_all_have_location() - self$arg$random$error_if_not_all_have_location() + self$par$params$update_global_names(self, "distr_params") + self$par$random$update_global_names(self, "distr_random") + self$par$params$error_if_not_all_have_location() + self$par$random$error_if_not_all_have_location() + self$check_assumptions_basic = function(orig_spec, data_struc) { + pnms = c(self$pnms, self$rnms) # union(self$par, self$tv_par) + bad_pars = !pnms %in% names(orig_spec$default) + if (any(bad_pars)) { + spec_mats = names(orig_spec$all_matrices()) + sprintf("%s (including %s) %s:\n %s%s%s" + , "Requested parameters and/or random effects" + , paste0(pnms[bad_pars], collapse = ", ") + , "are either not available in the model spec, which includes the following" + , paste(spec_mats, collapse = ", ") + , "\nor cannot be fit because they are not default model parameters. See " + , "mp_default(spec) for all default model parameters." + ) |> stop() + } + } self$check_assumptions = function(orig_spec, data_struc) { self$check_assumptions_basic(orig_spec, data_struc) - self$arg$param$check_variables(data_struc$matrix_list) - for (p in self$par) { - self$arg$param$distr_list[[p]]$check_args(self$arg$param$distr_list[[p]]$distr_param_objs) + self$par$params$check_variables(data_struc$matrix_list) + self$par$random$check_variables(data_struc$matrix_list) + for (p in self$pnms) { + self$par$params$distr_list[[p]]$check_args(self$par$params$distr_list[[p]]$distr_param_objs) + } + for (p in self$rnms) { + self$par$random$distr_list[[p]]$check_args(self$par$random$distr_list[[p]]$distr_param_objs) } NULL } @@ -1173,7 +1533,7 @@ TMBPar.list = function(par , existing_global_names = character() ) { TMBPar( - mp_par(param = par, random = list()) + mp_par(params = par, random = list()) , tv, traj, spec , existing_global_names ) @@ -1192,8 +1552,8 @@ TMBPar.character = function(par ## internal data structure tv_names = self$tv$time_var() |> names() - self$par = setdiff(par, tv_names) - self$tv_par = intersect(par, tv_names) + self$par = par # setdiff(par, tv_names) + self$tv_par = tv_names # intersect(par, tv_names) self$local_names = function() { make_names_list(self, c("trans_vars", "hyperparams", "distr_params")) @@ -1207,12 +1567,13 @@ TMBPar.character = function(par , self$tv$tv_params_frame(self$tv_par) , self$traj$distr_params_frame() , self$distr_params_frame() + ## need a self$tv$distr_params_frame() ) } self$random_frame = function() self$tv$tv_random_frame() self$check_assumptions_basic = function(orig_spec, data_struc) { - pnms = union(self$par, self$tv_par) + pnms = self$par # union(self$par, self$tv_par) bad_pars = !pnms %in% names(orig_spec$default) if (any(bad_pars)) { spec_mats = names(orig_spec$all_matrices()) diff --git a/R/mp_tmb_model_spec.R b/R/mp_tmb_model_spec.R index 2e42e594d..8341a5eef 100644 --- a/R/mp_tmb_model_spec.R +++ b/R/mp_tmb_model_spec.R @@ -303,7 +303,8 @@ print.TMBModelSpec = function(x, ...) { spec_printer = function(x, include_defaults) { #e = ExprList(x$before, x$during, x$after) #e = x$expr_list() - if (include_defaults) { + has_defaults = length(x$default) > 0L + if (include_defaults & has_defaults) { cat("---------------------\n") msg("Default values:\n") |> cat() cat("---------------------\n") diff --git a/R/tmb_model.R b/R/tmb_model.R index 73432c1c9..2441df4f7 100644 --- a/R/tmb_model.R +++ b/R/tmb_model.R @@ -476,7 +476,9 @@ mp_trajectory.TMBSimulator = function(model, include_initial = FALSE) { #' @export mp_trajectory.TMBCalibrator = function(model, include_initial = FALSE) { - mp_trajectory(model$simulator, include_initial = include_initial) + traj = mp_trajectory(model$simulator, include_initial = include_initial) + traj$time = model$time_steps_obj$internal_to_external(traj$time) + return(traj) } @@ -514,20 +516,20 @@ mp_trajectory_sd.TMBSimulator = function(model, conf.int = FALSE, conf.level = 0 r$conf.low = r$value + r$sd * qnorm(alpha) r$conf.high = r$value + r$sd * qnorm(1 - alpha) } - r + return(r) } #' @export mp_trajectory_sd.TMBCalibrator = function(model, conf.int = FALSE, conf.level = 0.95) { traj = mp_trajectory_sd(model$simulator, conf.int, conf.level) - time = model$cal_args$time - if (!is.null(time)) traj$time = time$ending_time_engine(traj$time) - traj + traj$time = model$time_steps_obj$internal_to_external(traj$time) + return(traj) } #' @export mp_trajectory_ensemble.TMBSimulator = function(model, n, probs = c(0.025, 0.975)) { - model$report_ensemble(.n = n, .probs = probs) + traj = model$report_ensemble(.n = n, .probs = probs) + return(traj) } #' @export diff --git a/inst/starter_models/macpan_base/README.R b/inst/starter_models/macpan_base/README.R index b503f8275..6650ab4a2 100644 --- a/inst/starter_models/macpan_base/README.R +++ b/inst/starter_models/macpan_base/README.R @@ -2,7 +2,9 @@ knitr::opts_chunk$set( collapse = TRUE, comment = "#>", - fig.path = "./figures/" + fig.path = "./figures/", + message = FALSE, + warning = FALSE ) round_coef_tab = function(x, digits = 4) { id_cols = c("term", "mat", "row", "col", "type") @@ -24,6 +26,10 @@ library(ggplot2) library(dplyr) +## ----options------------------------------------------------------------------ +options(macpan2_verbose = FALSE) + + ## ----model_lib---------------------------------------------------------------- spec = mp_tmb_library( "starter_models" @@ -37,3 +43,305 @@ system.file("utils", "box-drawing.R", package = "macpan2") |> source() layout = mp_layout_paths(spec, x_gap = 0.1, y_gap = 0.1) plot_flow_diagram(layout) + +## ----get_data----------------------------------------------------------------- +ts_data = ("https://github.com/canmod/macpan2" + |> file.path("releases/download/macpan1.5_data/covid_on.RDS") + |> url() + |> readRDS() +) + + +## ----prep_ts------------------------------------------------------------------ +prepped_ts_data = (ts_data + |> rename(matrix = var) + # dates from base model calibration (Figure 4) + |> filter(date >= "2020-02-24" & date < "2020-08-31") + # create unique time identifier + |> arrange(date) + |> group_by(date) + |> mutate(time = cur_group_id()) + |> ungroup() + # one negative value for daily deaths (removing for now time==178) + # this explains negative values: + # https://github.com/ccodwg/Covid19Canada?tab=readme-ov-file#datasets + |> filter(matrix %in% c("death","report") & value >= 0) +) + + +## ----prep_mob----------------------------------------------------------------- +prepped_mobility_data = (ts_data + |> filter(var == "mobility_index") + # dates from base model calibration (Figure 4) + |> filter(date >= "2020-02-24" & date < "2020-08-31") + # create unique time identifier + |> arrange(date) + |> group_by(date) + |> mutate(time = cur_group_id()) + |> ungroup() + |> mutate(log_mobility_ind = log(value)) +) + + +## ----mob_breaks--------------------------------------------------------------- +mobility_breaks = (prepped_ts_data + |> filter(date %in% c("2020-04-01", "2020-08-07"), matrix == "report") + |> pull(time) +) + + +## ----time_steps--------------------------------------------------------------- +time_steps = nrow(prepped_ts_data %>% select(date) %>% unique()) +prepped_ts_data = select(prepped_ts_data, -date) + + +## ----mobility_matrix---------------------------------------------------------- +S_j = function(t, tau_j, s) 1/(1 + exp((t - tau_j) / s)) +X = cbind( + prepped_mobility_data$log_mobility_ind + , S_j(1:time_steps, mobility_breaks[1], 3) + , S_j(1:time_steps, mobility_breaks[1], 3) * prepped_mobility_data$log_mobility_ind + , S_j(1:time_steps, mobility_breaks[2], 3) + , S_j(1:time_steps, mobility_breaks[2], 3) * prepped_mobility_data$log_mobility_ind + ) %>% as.matrix() +X_sparse = macpan2:::sparse_matrix_notation(X, TRUE) +model_matrix_values = X_sparse$values +row_ind = X_sparse$row_index +col_ind = X_sparse$col_index + + +## ----focal_model-------------------------------------------------------------- +focal_model = (spec + # add variable transformations: + |> mp_tmb_insert(phase = "before" + , at = 1L + , expressions = list( + zeta ~ exp(log_zeta) + , beta0 ~ exp(log_beta0) + , nonhosp_mort ~ 1/(1+exp((-logit_nonhosp_mort))) + , E ~ exp(log_E) + ) + , default = list( + log_zeta = empty_matrix + , log_beta0 = empty_matrix + , logit_nonhosp_mort = empty_matrix + , log_E = empty_matrix + ) + + ) + + # add accumulator variables: + # death - new deaths each time step + |> mp_tmb_insert(phase = "during" + , at = Inf + , expressions = list(death ~ ICUd.D + Is.D) + ) + + # add phenomenological heterogeneity: + |> mp_tmb_update(phase = "during" + , at = 1L + , expressions = list( + mp_per_capita_flow( + "S", "E" + , "((S/N)^zeta) * (beta / N) * (Ia * Ca + Ip * Cp + Im * Cm * (1 - iso_m) + Is * Cs *(1 - iso_s))" + , "S.E" + )) + + ) + + # compute gamma-density delay kernel for convolution: + |> mp_tmb_insert_reports("S.E" + , report_prob = 0.1 + , mean_delay = 11 + , cv_delay = 0.25 + , reports_name = "report" + ) + + # add time-varying transmission with mobility data: + |> mp_tmb_insert(phase = "before" + , at = Inf + , expressions = list(relative_beta_values ~ group_sums(model_matrix_values * log_mobility_coefficients[col_ind], row_ind, model_matrix_values)) + , default = list(log_mobility_coefficients = empty_matrix, model_matrix_values = empty_matrix) + , integers = list(row_ind = row_ind, col_ind = col_ind) + ) + |> mp_tmb_insert(phase = "during" + , at = 1L + , expressions = list( + beta ~ exp(log_beta0 + relative_beta_values[time_step(1)]) + ) + ) + +) + + +## ----calibrator--------------------------------------------------------------- +focal_calib = mp_tmb_calibrator( + spec = focal_model |> mp_rk4() + , data = prepped_ts_data + , traj = c("report","death") + , par = c( + "log_zeta" + , "log_beta0" + , "logit_nonhosp_mort" + , "log_mobility_coefficients" + , "log_E" + # negative binomial dispersion parameters for reports and deaths get added + # automatically with options(macpan2_default_loss = "neg_bin") set above + ) + , outputs = c("death","report") + , default = list( + + # states + # Population of Ontario (2019) from: + # https://github.com/mac-theobio/macpan_base/blob/main/code/ontario_calibrate_comb.R + S = 14.57e6 - 5 + , log_E = log(5) + , Ia = 0 + , Ip = 0 + , Im = 0 + , Is = 0 + , R = 0 + , H = 0 + , ICUs = 0 + , ICUd = 0 + , H2 = 0 + , D = 0 + + , model_matrix_values = model_matrix_values + + # set initial parameter values for optimizer + + , log_beta0 = log(5) + , logit_nonhosp_mort = -0.5 + , log_mobility_coefficients = rep(0, 5) + , log_zeta = 1 + + ) +) +# converges +mp_optimize(focal_calib) + + +## ----get_trajectory----------------------------------------------------------- +fitted_data = mp_trajectory_sd(focal_calib, conf.int = TRUE) + + +## ----coefficients------------------------------------------------------------- +mp_tmb_coef(focal_calib, conf.int = TRUE) |> round_coef_tab() + + +## ----plot_fit----------------------------------------------------------------- +(ggplot(prepped_ts_data, aes(time,value)) + + geom_point() + + geom_line(aes(time, value) + , data = fitted_data |> filter(matrix %in% c("death","report")) + , colour = "red" + ) + + geom_ribbon(aes(time, ymin = conf.low, ymax = conf.high) + , data = fitted_data |> filter(matrix %in% c("death","report")) + , alpha = 0.2 + , colour = "red" + ) + + facet_wrap(vars(matrix),scales = 'free') + + theme_bw() +) + + +## ----cohort_model------------------------------------------------------------- +cohort_model_ph = ( + focal_model + %>% mp_tmb_update(phase="during" + , at = 2L + , expressions = list(S.E ~ (S^zeta) * (beta / (N^(zeta) * N_cohort)) * (Ia * Ca + Ip * Cp + Im * Cm * (1 - iso_m) + Is * Cs *(1 - iso_s))) + , default = list(S.E = 0)) +) + + +## ----simulate_cohort---------------------------------------------------------- +cohort_sim_ph = (mp_simulator(cohort_model_ph + , time_steps = 100L + , outputs = "S.E" + , default = list( + S = 14.57e6 - 1 + , log_E = log(1) + , Ia = 0 + , Ip = 0 + , Im = 0 + , Is = 0 + , R = 0 + , H = 0 + , ICUs = 0 + , ICUd = 0 + , H2 = 0 + , D = 0 + , N_cohort = 1 + , model_matrix_values = model_matrix_values + , qmax = 34 + , log_beta0=log(1) + , logit_nonhosp_mort = -0.5 + , log_mobility_coefficients = rep(0,5) + , log_zeta = 1 + ) + ) |> mp_trajectory() +) + + +## ----R0----------------------------------------------------------------------- +R0_ph = sum(cohort_sim_ph$value) +print(R0_ph) + + +## ----cohort_no_ph------------------------------------------------------------- +cohort_model = (focal_model + %>% mp_tmb_update(phase="during" + , at = 2L + , expressions = list(mp_per_capita_flow( + "S", "E" + , "(beta / N) * (Ia * Ca + Ip * Cp + Im * Cm * (1 - iso_m) + Is * Cs * (1 - iso_s))" + , "S.E" + ) + )) + %>% mp_tmb_insert(phase="during" + , at = Inf + , expressions = list(foi ~ (beta / N) * (Ia * Ca + Ip * Cp + Im * Cm * (1 - iso_m) + Is * Cs *(1 - iso_s))) + ) +) + +cohort_sim = (mp_simulator(cohort_model + , time_steps = 100L + , outputs = "foi" + , default = list( + S = 0 + , log_E = log(1) + , Ia = 0 + , Ip = 0 + , Im = 0 + , Is = 0 + , R = 0 + , H = 0 + , ICUs = 0 + , ICUd = 0 + , H2 = 0 + , D = 0 + , N = 1 + , model_matrix_values = model_matrix_values + , qmax = 34 + , log_beta0=log(1) + , logit_nonhosp_mort = -0.5 + , log_mobility_coefficients = rep(0,5) + , log_zeta = 1) # not actually used + ) |> mp_trajectory() +) + +R0 = sum(cohort_sim$value) +print(R0) + + +## ----check_R0----------------------------------------------------------------- +all.equal(R0_ph, R0) + + +## ----euler_lotka-------------------------------------------------------------- +euler_lotka = function(r) sum(cohort_sim$value * exp(-r * cohort_sim$time)) - 1 +uniroot(euler_lotka, c(0,10)) + diff --git a/inst/starter_models/shiver/README.R b/inst/starter_models/shiver/README.R index 6fcb3e3f2..d752fde4f 100644 --- a/inst/starter_models/shiver/README.R +++ b/inst/starter_models/shiver/README.R @@ -80,6 +80,7 @@ varvax = simple_sims( + ggtitle("Michaelis-Menten function") + ylab(expression(f(S(t)))) + xlab(expression(S(t))) + + theme_bw() ) @@ -98,6 +99,7 @@ varvax = simple_sims( + ggtitle("Vaccination Rate") + ylab(expression(phi(S(t)))) + xlab(expression(S(t))) + + theme_bw() ) @@ -296,6 +298,7 @@ est_coef + geom_ribbon(aes(ymin = conf.low, ymax = conf.high), fill = "red", alpha = 0.3) + geom_point(data = reported_hospitalizations, aes(time, value)) + ylim(c(0, NA)) + + theme_bw() ) @@ -371,6 +374,7 @@ print(cc) + geom_ribbon(aes(ymin = conf.low, ymax = conf.high), fill = "red", alpha = 0.3) + geom_point(data = reported_hospitalizations, aes(time, value)) + ylim(c(0, NA)) + + theme_bw() ) @@ -484,7 +488,7 @@ multi_traj_spec = (reparameterized_spec ## ----multiple_traj_calib------------------------------------------------------ ## we need a more elaborate prior distribution sd_par = 1 ## for convenience we give all parameters the same prior sd, for now -sd_state = 8 ## extremely vague priors on state variables +sd_state = 4 ## extremely vague priors on state variables prior_distributions = list( log_beta = mp_normal(log(0.2), sd_par) , log_sigma = mp_normal(log(sigma), sd_par) @@ -502,17 +506,21 @@ dd = rbind(reported_hospitalizations, reported_cases) # calibrate shiver_calibrator = mp_tmb_calibrator( - spec = multi_traj_spec |> mp_hazard() + spec = (multi_traj_spec + |> mp_hazard() + ) # row bind both observed data , data = dd - # fit both trajectories with negative binomial distributions - , traj = list(H = mp_neg_bin(disp = mp_fit(1)) - , reported_incidence = mp_neg_bin(disp = mp_fit(1)) + # fit both trajectories with log-normal distributions + # (changed from negative binomial because apparently it is easier + # to fit standard deviations than dispersion parameters) + , traj = list(H = mp_log_normal(sd = mp_fit(1)) + , reported_incidence = mp_log_normal(sd = mp_fit(1)) ) , par = prior_distributions - # fit the transmission rate using four radial basis functions for + # fit the transmission rate using five radial basis functions for # a flexible model of time variation. - , tv = mp_rbf("rbf_beta", 4, sparse_tol = 1e-8) + , tv = mp_rbf("rbf_beta", 5, sparse_tol = 1e-8) , outputs = c(states, "reported_incidence", "beta") ) @@ -525,12 +533,11 @@ mp_optimize(shiver_calibrator) ## ----mult_traj_estimates, echo=FALSE------------------------------------------ #check estimates -mp_tmb_coef(shiver_calibrator, conf.int = TRUE) |> round_coef_tab() +cc = mp_tmb_coef(shiver_calibrator, conf.int = TRUE) +round_coef_tab(cc) ## ----mult_traj_fit, echo=FALSE------------------------------------------------ -# how does data look with these parameters -# not good! (shiver_calibrator |> mp_trajectory_sd(conf.int = TRUE) |> ggplot(aes(time, value)) @@ -542,7 +549,7 @@ mp_tmb_coef(shiver_calibrator, conf.int = TRUE) |> round_coef_tab() ) + geom_point(data = dd, aes(time, value)) + facet_wrap(vars(matrix), scales = 'free') - #+ ylim(c(0, NA)) + + theme_bw() ) diff --git a/inst/starter_models/shiver/README.Rmd b/inst/starter_models/shiver/README.Rmd index 547f5a2ea..a16c653c0 100644 --- a/inst/starter_models/shiver/README.Rmd +++ b/inst/starter_models/shiver/README.Rmd @@ -783,4 +783,3 @@ We are able to recover the transmission rate `beta` but not the proportion `p`, This model has been specified in the `shiver` directory [here](https://github.com/canmod/macpan2/blob/main/inst/starter_models/shiver/tmb.R) and is accessible from the `macpan2` model library (see [Example Models](https://canmod.github.io/macpan2/articles/example_models.html) for details). # References - diff --git a/inst/starter_models/shiver/README.md b/inst/starter_models/shiver/README.md index fb1157408..e53311343 100644 --- a/inst/starter_models/shiver/README.md +++ b/inst/starter_models/shiver/README.md @@ -2,37 +2,25 @@ SHIVER = SEIR + H + V ================ Jennifer Freeman, Steve Walker -- Packages Used and Settings -- Model - Specification -- States -- Parameters -- Variable Vaccination Rate -- Dynamics -- Calibration - Example - - Calibration Scenario - - Deciding - on Defaults - - Simulating - Dynamics - - Estimating Parameters - - Re-parameterizing - and Introducing Transformations - - Runge-Kutta 4 - - Fitting to Multiple - Trajectories - - Parameter Identifiability -- Model - Specification -- References +- [Packages Used and Settings](#packages-used-and-settings) +- [Model Specification](#model-specification) +- [States](#states) +- [Parameters](#parameters) +- [Variable Vaccination Rate](#variable-vaccination-rate) +- [Dynamics](#dynamics) +- [Calibration Example](#calibration-example) + - [Calibration Scenario](#calibration-scenario) + - [Deciding on Defaults](#deciding-on-defaults) + - [Simulating Dynamics](#simulating-dynamics) + - [Estimating Parameters](#estimating-parameters) + - [Re-parameterizing and Introducing + Transformations](#re-parameterizing-and-introducing-transformations) + - [Runge-Kutta 4](#runge-kutta-4) + - [Fitting to Multiple + Trajectories](#fitting-to-multiple-trajectories) + - [Parameter Identifiability](#parameter-identifiability) +- [Model Specification](#model-specification-1) +- [References](#references) This model builds on the basic SEIR model, with two additional compartments for vaccination and hospitalizations. @@ -115,22 +103,22 @@ article](https://github.com/canmod/macpan2/blob/main/inst/starter_models/shiver/ | E | Number of exposed individuals | | R | Number of recovered individuals | -The size of the total population is, $N = S + H + I + V + E + R$, and +The size of the total population is, $N = S + H + I + V + E + R$, and the disease spreads through homogeneous mixing of the subpopulation $N_{\text{mix}}=N -H$. # Parameters -| variable | description | -|------------|-----------------------------------------------------------------------------------------------------| -| $\phi$ | per capita vaccination rate of susceptibles | -| $\rho$ | per capita vaccine waning rate | -| $\beta_S$ | per capita transmission rate for susceptibles (in $N_{\text{mix}}$ population) | -| $\beta_V$ | per capita transmission rate for vaccinated individuals (in $N_{\text{mix}}$ population) | -| $\alpha$ | per capita infection rate (average time spent in compartment $E$ is $1/\alpha$) | -| $\gamma_I$ | per capita recovery rate for infected individuals | -| $\gamma_H$ | per capita recovery rate for hospitalized individuals | -| $\sigma$ | per capita rate at which infected individuals develop severe infections and require hospitalization | +| variable | description | +|----|----| +| $\phi$ | per capita vaccination rate of susceptibles | +| $\rho$ | per capita vaccine waning rate | +| $\beta_S$ | per capita transmission rate for susceptibles (in $N_{\text{mix}}$ population) | +| $\beta_V$ | per capita transmission rate for vaccinated individuals (in $N_{\text{mix}}$ population) | +| $\alpha$ | per capita infection rate (average time spent in compartment $E$ is $1/\alpha$) | +| $\gamma_I$ | per capita recovery rate for infected individuals | +| $\gamma_H$ | per capita recovery rate for hospitalized individuals | +| $\sigma$ | per capita rate at which infected individuals develop severe infections and require hospitalization | # Variable Vaccination Rate @@ -923,44 +911,44 @@ shiver_calibrator = mp_tmb_calibrator( Next we optimize, and look at our estimates. #> mat row default estimate std.error - #> 1 time_var_rbf_beta 1 0.0000 -0.0300 0.0487 - #> 2 time_var_rbf_beta 2 0.0000 0.0485 0.0541 - #> 3 time_var_rbf_beta 3 0.0000 -0.0695 0.0679 - #> 4 time_var_rbf_beta 4 0.0000 0.1091 0.0907 + #> 1 time_var_rbf_beta 1 0.0000 -0.0236 0.0262 + #> 2 time_var_rbf_beta 2 0.0000 0.0292 0.0250 + #> 3 time_var_rbf_beta 3 0.0000 -0.0283 0.0249 + #> 4 time_var_rbf_beta 4 0.0000 0.0286 0.0247 #> 5 prior_sd_rbf_beta 0 1.0000 0.5297 0.0177 - #> 6 distr_params_sd_H 0 1.0000 0.0752 0.0157 - #> 7 distr_params_sd_reported_incidence 0 1.0000 0.2209 0.0187 - #> 8 time_var_rbf_beta 0 0.0000 -0.0270 0.0431 - #> 9 beta 0 0.0100 0.3099 0.0443 - #> 10 sigma 0 0.0498 0.0336 0.0113 - #> 11 gamma_h 0 0.0498 0.9811 0.1856 - #> 12 E_I_ratio 0 0.0100 0.0851 0.1017 - #> 13 I 0 2718.5714 2986.9423 943.6758 - #> 14 H 0 63.0000 0.1453 2.9807 - #> 15 R 0 1.0000 1.0000 54.5981 - #> 16 report_prob 0 0.5000 0.8292 0.2194 - #> 17 p 0 0.0100 0.2197 9.1710 + #> 6 distr_params_sd_H 0 1.0000 0.0757 0.0089 + #> 7 distr_params_sd_reported_incidence 0 1.0000 0.2221 0.0185 + #> 8 time_var_rbf_beta 0 0.0000 -0.0305 0.0257 + #> 9 beta 0 0.0100 0.3136 0.0362 + #> 10 sigma 0 0.0498 0.0341 0.0104 + #> 11 gamma_h 0 0.0498 0.9937 0.1872 + #> 12 E_I_ratio 0 0.0100 0.0880 0.1034 + #> 13 I 0 2718.5714 2948.4429 839.7054 + #> 14 H 0 63.0000 0.1378 2.8151 + #> 15 R 0 1.0000 1.0000 54.5980 + #> 16 report_prob 0 0.5000 0.8340 0.1891 + #> 17 p 0 0.0100 0.2354 9.6937 #> conf.low conf.high - #> 1 -0.1255 6.550000e-02 - #> 2 -0.0576 1.546000e-01 - #> 3 -0.2026 6.360000e-02 - #> 4 -0.0687 2.869000e-01 + #> 1 -0.0750 2.780000e-02 + #> 2 -0.0197 7.810000e-02 + #> 3 -0.0771 2.060000e-02 + #> 4 -0.0198 7.710000e-02 #> 5 0.4951 5.643000e-01 - #> 6 0.0445 1.060000e-01 - #> 7 0.1843 2.574000e-01 - #> 8 -0.1116 5.750000e-02 - #> 9 0.2342 4.102000e-01 - #> 10 0.0174 6.490000e-02 - #> 11 0.6772 1.421400e+00 - #> 12 0.0082 8.853000e-01 - #> 13 1608.0649 5.548174e+03 - #> 14 0.0000 4.193101e+16 - #> 15 0.0000 2.978526e+46 - #> 16 0.1891 9.902000e-01 + #> 6 0.0582 9.330000e-02 + #> 7 0.1859 2.584000e-01 + #> 8 -0.0808 1.980000e-02 + #> 9 0.2500 3.933000e-01 + #> 10 0.0188 6.200000e-02 + #> 11 0.6870 1.437400e+00 + #> 12 0.0088 8.801000e-01 + #> 13 1687.2279 5.152425e+03 + #> 14 0.0000 3.347001e+16 + #> 15 0.0000 2.978521e+46 + #> 16 0.2568 9.865000e-01 #> 17 0.0000 1.000000e+00 Our prior for `sigma` is similar to the posterior, but `gamma_h` seems -to have been pushed up by the data from about `0.05` to about 0.98. We +to have been pushed up by the data from about `0.05` to about 0.99. We still do not have confidence in our estimate of `p`. We now have five other parameters controlling transmission, and so to interpret them we really need a plot of how transmission varies over time in the model. We @@ -1092,7 +1080,10 @@ for details). # References -
+PKG_CPPFLAGS=-DTMBAD_FRAMEWORK + +
diff --git a/inst/starter_models/shiver/figures/mult_traj_fit-1.png b/inst/starter_models/shiver/figures/mult_traj_fit-1.png index 0798f2e8666f54eb7b1820678422418be36c1d80..09222489fa78fa63a22258865a677b2ab0741287 100644 GIT binary patch literal 87058 zcmZU)WmH^2w=Ie#Sa1mLPH=a3cb5ch+}$leaCdii3l<3O?(Xi=Xy49v-#PD`_kQ#k zn_YD6-6eC)HP@^NWko3@1Uv)?2nZw@X>nBu2&g;=2*_=?&)_>=QCsW~5HQG=Vq(hH zVp3xEHug?x4nIuHq|EHhoGeXLr9>ehxTB*r3;+Zgn1Y$@jo&CHgXc?15|BSQlA3H( zXF^twKg=3!*Xa{&nndD8&Ns3xso3`3iY#dbF-1^&%eE7@L3+K^q*j#|kqiY*$^|gN zG{ET>sr*@N__KDl#*V}`>#ni&=fkWkzoSj(%T2_%HhR63O-d+wyc&jsx!uO0!~T9= zmtNm#B;RRMn@f+aPauo48f7WS@Qu*rD(+FTT{DOetbqoD z02qxQZHc-C+u33{4}sE_`&aM&aAM_m|L=j*i? zevYzgTCy>T5zfjCMe@0>;8*_^i4E)iwP2;#MrL2kE$Ft#R63`WoiNl~js10(@LER8 z#sO52S-U0t4LO8CM`x%L!i`|RiH3J4!Ldtu1=q}96;7N}dn9J%*L!pEYu0Gva&;lQ@TujWv`mkbt`yi3zO#pb_6 z=r1GpZqYPL1^czib5cd$jTl-n2Pp-98fJZQ8D@5Udw6lv%1(#dP2j;s#EYV2(rmsF z9ro91rY=G?YH{(8-CZA6SW6s*%wpB>LIiRHfTk=y%2I4AzZRh+YYagi-!_7KRJQb+Q32Q8yo&l z#y&z+$iK3ZhD| z#N$!bgSy{%3yOOo_;0V465doL@!5l(haKf6#IjG9A?Wqp%l8g?ehZ>44+IUO^gtXi zSsVic1h<*CjJbjW1ReMq4gxaF5&{N%1quG(fj|GS1nR%;K;`8@|JOC-_P<7SqqTJi z2w?~raS?S7$n$L2EKG^VA)~2;ahlI@RU`<9aK^&w;sa4U0X$)IY`M7al{i=OI7-Y} zkXUR5ILeSL&;`byq0J@K`xHT2t!~z3C)w%QD;F!-8`V$G<1R|>t_x>IPcA)PEO5#F ziBf;ax6!WQJYe{th#+GFr1D}=rRQh3{cyn7|GP=#4`SYjpPtgr&s^_`>(&j&4IiU;4WMdT8YR1_cQ->O!WWnIAh@ipx{zR?Ej`R$-Ngv z<@NZ{BnKJj`?wU;-*Ez!8qHL4FUDuRDlTTpRT86lh|aKsV%?P>MYkq9m?KFivmm1 z0I2Q5O#4aCSwn~kcqJdcV3N3oh6W(-{eQa5E8lcic<8+AWbkPuBUP4t%J#p)JRy6v zGZFdo8ZZb|c-8;E2ZY23JgON?s@>WDbNnD%y@)XpMaO7*)H?AwP zMJs3r4NwJ_x88R7`>eLfHjj1sP#^@@YCP;C^GCAkfJFUE|~J zZi-Gf1w8Hw%S-uUu!((i>GGqgMt-#ZZ#QA%nOsUKx>mGo$4otMWIn4cw$?=G97p}c zCuo3GxGy-&!fwky!b*^WguMT)aYfW?C_wg~bJ&ref5w=4=#>N>lF*oEej0k66c5t- zzh1PCHBJdyhfERs0Yw;l-kfy64GMZNb2EifV}Y{=ItQ9eOiTTuJ2>|Owgv&7{lj2SR#)*J%8*Xd1-QhnG!;S3k;go+bQ~HQ`K6(7YhGYsDj4ZvX7KTCnTHW|$o@q

I>r%{s$E)Is;mpswU{B`UyK+u#ubAP z$)20?m0p|VVy%@+NCz2@efV;;&F5*u{h(otk&R8wFzc+UF$Q(yY~&w^;6j0C!6%ud zDC1#2_7;v^A7;2g^ygPOKXmi>aQAlL1+jfkH&?8%Ash+w?p#F5-NTYmDnrY%Xv?~j z+%s@5w%DMG|cXHaaEo_h8ySnmQ?aPEmL-d&3}}HO|~yfkfmj-V)dC|A4v= z)N8!ym%p2_RdDpJ>rPJdDpE3@p6%abt`@5^d(E!5ds$6~ujX5w%cm;nd#rka)9}XLd>XT;Ht422wq0H1b)CB%e6O@ z{~)2V-aoL^gL%K>? zABH4f#K3LE>=P1gUlsNLeMCW!#f|`woF57aACk42AM|#op}1R=s94c3VP7TyWe8C% z@UuHimn?u}gjyE3(biYG5xZ5kM#NC@uY>rm(&ClQf6w!)cYl-PE$v!`k@HJrz zpGo z;?`zLLg?)}n810QWwyuP|M|4Cb{~uos7`gFY9;dV_;zii$r$OjaCw+#+~;+Fqa0qr zFQ2wcu%z!CjV5WC7=bFxwfsG}$v|IdQ)&Ue))Mvrs8Z!!Rel54uV32+s&w3ii(TL9 z9IGI|j0D34qXipNz+nh=cQ(K9B+pTndRQl>-`kCpC3uKzxCl^a7+(_P7}N1eIlm!A z3}I<%lhz7J2zp%K3Ik*ChuS>FmED|6&H1>R=vAU+TUw&c{%wErUzp2x^(bPhZUdeM z&r|WioX8FQvqpkT9JwrLacJDK*+ZUphv@~F&sl1Mw%zZKdd`!MyJ<|ZLZG)sea8VT zo)w>+P;ArMu1D7Am}lav-)A+q2dPG~N0ZrRhvVsoT%p|hqS6~SjT7=aNG-&^_cM~g zR?UTWdL7-Pbd^Q#D9gy4MXlsVW&|)G=cCEw#cI8wnd}qj-cKJ+H$X5t!X2dXNWt9c ztJ4#;_plZtj1S1Q_;xz`fiZa55j-tba!KdaF&>Y~^i8jU3bPE}Jj z!BNR1U)!=cd7KJHIb;-!cuK$BuNd*|JL_kh{J_A+`uz`tcN(pjJdd#!ghV44N_t9G zN#^sU!_lF1N-k#Hp5M%)Z1(n@eM&gx2c2#_j`PDZf+zrAXoZ~)(=G56oH)-USv*3n zxTi9mV;Y4bt+RZ;_K`!;TsX&L3p?lUJ$e2&%aVrEcj*1Z3J!QYkIN=%8J;l8aJ^3Z z!|{XsO38FhK{ZsF4=arprH-7&{cyM(R_a#x-No9g1tFSQN?9S6oQk7^5p<>f7%a0?-0$3x4CBU2{RMFtVBqgtrTM4{(g~>&Q z6*NxUs9!L@y0&37S8Dm-&CtH6l@mh!i)*yRQQPx127D{vkg*RAGVJEs#?W8{!d|g$ z-H6JIi0yb4J^Iwsk1kil;&9yyJNCF{pS$X|7tMuGBgD8v_Q!F?WP>xbs_=)H_P7}% zQ<2c>;Vv2^p$*OwdWLdPW5JQt6L#>Bk>B$`ze9g0`KstT|89Rh4nI0YYU~>1lZC4z zt|3ITJHVIG^|1t5`C%lGcnusS!l5A_LJ@^t_0=X!X68dw>6$# z85E!bPv%PH)>>>8z6ifQUKAVk_<^T>t+n>%Q*#g|BrTA;;Qilfjs9*9DJp%oTwnNZ znF5Tvtq+l8SNj83aw@-e;TTGf_UjHwex%iC{B*?whUu*hErg!**yUoCRmtrXgZg<(sV zl=&D6_OCTa{sh)jT$3O4N{&ysTKTcYC1!%QpHYZx$POYlB|SvjDA0*| zPm|OXcHv6dD!?eTnN4iGfcV(bLV z7NYE=K-Ofz7Ao|#?mQR@X+==%d6|{GH5X1Cx1v$UHF}ClcJ69LB=W(q9$a`HB zf8#?%pEsf>vJb`G!u|NB*YD1_iPtB%jx>G0>lA=O@A7stG*+e4ID1>Ud-n|H$Rj10 zb{RKK(*!64+{(k40X#VC$6*AOIkM1T!nQc$x(#Vgym=XC?yVXcoa-O&FtGX@vhr~; zOIXTz_H!uhQ(Bux(>ps1QTykVtyO)LH6@nG_7gQp&qJf=h3tJ@&@xIUbYGu=TY}lI>bxEO zmn>yov=Ozz4BB@+Xi7rfU$kze2>QOLrw8QefMGX#0>{qCugmWr=_cHs{E~uQ@LDGl z9E!owxOG_FR1xse9;8bZXF*_yddc0)Bak}OR>5}thxT(Ux6aT3U?Lb9NphWgaDsd_ z&Bw!3zfz)n;(a^T6?Gd_ap6YNeK0Fa zVuad(WfS*XAjln{!V>-qU;C>J6%UwdUO!`(^iKXKzJ^wI;5v4KUC~AV6<>|7m~W#( zL3>btXRd_-5q(y&I@oB_EsVhBf`fG@_#|QaY2WDdsi*Jbb(C+(kh-#ZR#V(S+prtt z*S_5#$Mz`Z57fi}YQWW|#2%yjp%u+k42s;RUU)4ufnN6Gokv^*Hk@yu$|5CwYnWz9 zh-J$TR7{!$SME)`VKUgEtTyMwqg`QpxA2%bWYjnxw8fz86KeU^@kgX#=-Rudv%Y3X z>bvjCdc?%302n-+G7tB@&dYNYpyar=$oOo^8yKJp=7;i95d*d=e~vZb+kaiXbU(n- z3C*c)S(SZUcUB?~Fuv^hcsb*EcQY5#n{(ta0*YdM`I@T4XlFD~_KBD)HgrBnsxUj! zhiF>=c>Y1q&@Sg6)twa=HuBi%xU!_sA#5D-uu9-6&oQ2DnZLmW?(jod!r8Q}m^Zwf zR%R}THxW*vG-dq_BcjWE7t|WH@7Cz%eQ>d4&|nBLswCk~?fm_+wVg(TRwX__yUVO7 z^zP#Ma#DJb<9*43r~RfZut5B8AqkyV##B+kC=mq?{`?ck)D2*#cM(h&#tTt5x01Yt`#nABwT(} z{iIX1!gajwW?r)dvj8~l!>9Qb9eh!t)##X|70i#AsHO~Z0gq7hr$8-3Pl-t|%}biX z5>yilL&geGZ9=uka+IXwSm3+rG%jY|MEG(*K=|y0>_Y%mDDqwHT#)VHbG2MBYWDoTQsW= z6%5Lr&EEwr1FGAjcgiGCMc#Xx)LOK~oE!bOZ|=j6E5&lyCt#hR!h#-he?r`(ZG?T6}fjp=xpD9u9AXNxz!zP(9FyB zO`!D6-&5}@J(%$B&bQmK39;8--)f|hKK>~I0g%wDJzVptu*tHVn;s@=jP@I@8hNT@ z(t*MeU^1fHKo~r26_E;)p(+<;-~7#Hk1J&H?}idy9WelBis(o<8q}pNJiOlg15EgOQiMYd(`x=R!IYi(bb$_*G)ctb$?MDKK z576N+Zwf@!=QpJ?`bHttM6`qMBmY-_f<6K zQ;+q(OxYUJkOdjZAE**U(AZ!cb@F--*B|}oFN#o=UaMXgm^{V^EHwv?SM;y9oR23Bg@r%(b4T;%Br4?D$9D`^|(3) zSOmxsdO#WTx?k$ArUXDSAwb=M(}mQMo1%TXXYQFp(fxbw-w zlGynwc_@W7Ok>F-U+t$eRm3;c^kvI5bu`8j)KinMYvNgLR$W%i z=OzvYTE3OXSa|aI9f{03?NY>ZX#B0hQ!5c?i>=UMNT^4-QV5H&%C&Ys<$ud6SJYgGxc#g%37CDn|CljIYfRPUwk97q>&^83qrw6U#)B*hM_}k$7FwZ)Y z*{u8m+DuV8nv=*?bpG3dsZ!$<0jj0hUAPbZOfZo|6WpWAgja&&c^Dwa(a`$k-1Gh@ zClWS@@kJV`|Ght?sw4&C!@EeQLEK++x^Ye0eC@Jj#C^jmgDslP?+wVllPK6e*-`$- zcgyz)mw2K&qjlO!+JEGf0b1uEr{iE`;kR_UahiIsOa5n~P+P6?MLM`cqYBsJ;*7Pm za&OT*NN=wMtkSv@sswedN~<<7L&IG@{&K9+tt;BiJi@$~$WB^Ew8 zi4_eb<0I*a)?f-UdUUr{%#ox9!>s&PMDBS{Vlv zzi_vq9RW4{OdF(?#Vh@!RcVh~xXAwNRQc}RG6Q{{C&Bb63SJ<7++qio)N3*IRQjXkA$_P$JD=L+m`p`t?vF> z^i|m-ZWGe8CUq|TT0%QuA4!8 ziA9yj0IR=aLT}QCXQoav69RPDITpY8*n1w3E&V2+Ge-RE;|1K3-50Q*Qih0}J7o31 zJ8A9H&LVoCF<@nHcD)dCz_x!EFjPL#fWyDrm!t&cf2nu5qQC!18J5r-;hEd>$ce=L zcjb*$8A^EGpwuh0090}0AF#G<;S_M2&@UfB+wcvKuXrzpk1^RV!WYI^xIKmi>DN7$ z-;2%$b$0BTKD&`6aFK72fEZP#s=Fme78a7MYONv}al-$^mW+ z!ZQY_m6o;lQ2Lq0)sNxE_C;OZ8-wv-(sLLHA}?*ZY~(`A{B%ey|-0 zESLMR?qn{C<4Xj~obJx@g^LWR*KsOm4et z-YLGv69vAA1ON==_^W0{nIk2=w*@=l|7;6|%S7|eq&N|pto3)#W7AT#e^xr3O8G-w z=gk$*@jJ323Ga=T<0nQMtJ$ydbhaUJJrf1;J}%aCXf&@$|-B^3a6(6tLFNM!4AW@B04SucpFQ?@ns5tx{b!dilZ9n=X?_?pEp|Zc^cliZr1b>Tyhe4gOx?ZXHgVE z;I_O$+NousR4gYH&8jAQ0o=WtK2=K?fs^#0$qK-yNaK}%?}pm+D3Wn_HHHvwQ1Z`0 zUWvlfDmmqswP40>pz+>qfPGnMAKEokS+I`aiDA~E`PW0nRZkon=$gKx((aLXJ-yQ-x=8_hTRzpKtp#*Q2qr0C^##?H8TT7Q%L%}s*Da4 zy_zQ@OBlI+Az>3#zW1@v;$l{_`&MPUAWEvRuOalqOs4{LX^aN3HWYR_iqdC@g6Ce! zM5@FOO@~W8`h@R;&M^>@x0QzAdgNuD#*&6K;p+ugLrBa`s#PAF3Zg4y+u1hhtgON{ z>gqJjk6+YGXJF$vohj%qM#LG-RnhuarSq9Hj0{@_awj6*G!yf&zf#gVLtxd7Yyfz?c)3wqZ3>|9)cy=;_-)?9pMNc{Cy#jUtC|3qeed4oH)m%WV zO@Gk)A$K<*@+9|({`D5?4|fgj)ZP~;fM_A}Po@psM_kvQq^V~Wbl6Mkjd`PojV}it zo}hIwe%|gUDk1c$a*TeD=gsWXiX*2{zXlg6@B*_Tl!2CT`?=hc8l%)3h!c%GaUD1GwJ6n21c<x3_M)<%hk4`N&lV@%YDTo` z=7iCr+c-|tvXG;G_B~%{{VS`Jkq7h?B@TBC7bYt{onGNpY_)ejw}j}TtIU&OpoeHY z?=lfe3Q!mS`ZK2_WDv^1o^J%eojec%iS~sNqpf)6-H0HwLm3p8&|PdGaYkcUCYP0n z|LT9*@;BlH>yNEE(Mu=91Iknk_xcMZEe7?`6rZnXBlPUiPgDepH>BSY%aKG=Y#X?+W+hkMGICPpy}o ztc^2`%#ZVW{j-;Cv@uQny;bM(lLYH4D#g}!2chL-r;h3pIq%pV)&Q!>kELT20^Rr9 z%5kkZZ&3yo|H|ZA{buJ9AM+RxlCL(A?FDePpG=#G?T5(ZPIPli=Rx+950e5?t640^ zw@VqA$zYVY@2|FId<#EoSS^Em;vwk=wR^;<)8$yg-M12pG#z9sKC!8DrTWld$F9V{ zCdywrt_Np*^CgSZMRIEKyWKDZm*c$KbDE=0z|`eg|HKfi_1vqE=_Bu#ONLglFO5z2 zNC*6mqA$|qKQeuU92Hjxqz?Y$BWi?+!j+L?73`V(6k*lcO zeHN2vs@o8q0hL{gpYGvfeQtNq-1Af&Jt3jFzK5xms8j0-ZJIcuwlRCQJuK>(MRP1N zFC}<`y)#4`-Gw2wMohgbVPmX#cc_5S!qf18ZR2aeyVb>h$XSFW)(@mD87CjL-igku zU*_H0{*xM!Lm_T03P)94r)E9)CE)4OxhXO556nU!%D89JWd~RM|sEMY6*Y^LNjXr?!`-AT|B>UXwiC zR90V7uF_4;q7SE+#UzLenrA%@blt$3<EMz*7Lu0X7iiqJLR*2T9Jmu~HmN<#8L@7Dq z#UGe!rAnN|+$%mt?7fF{J2C7nU+w*@6O8wOp$G~{;zoBlC!s?tLDEPh20i(MsQ)F+ z8H4G5({8${BIpl$<_=&N$-HTJ0dXQot>Czd{Q@!w`9fmRP_NHoD54Fjj4DCXTdTVH zivqrZ|07W#KkA82ag{Wwu zde{qTO^Jin^dLpgZsb_kgu3BAwDOC{cd$dJ$>#S-NvMkvwQU!KE;aKJmo&43H+=2y z#q~TYDdMp5U8;GQ*}#_~kAL=%Utz+)ca(v%PTGg4hW1$-d-QGR%a;UBDB5Ry78$GA z8_}jB1^DitZZ$?eH=!&KeXR^VGAgOgA2%qtoCgMI3&7}E?3Mi2%S>JlW4gS?NnW|> z{Q;5rkRdFHYO2*MM5fN^v?hZKQ2SAio*7MuTt#y}mMi=ZEUr)MJoN9?x^rj5#3nG) z5_AATiD{K$*MXKF?acC{Y*Vp`J4UA+-ecY9Hk*2)4Dh^aTL=E-%FCh~KAIm^DOKSM z0id9lNQ4z?gghUH&w#7)8i_yXJeqP5;2MIc7Wr~#Y{=LK?MP{Easx(;!T3tmO2ISD zSJ0#Nzq0T-9BP32kFwY<>n&1^V!zouxOW^;xnJde5(-1XDf5o00J`t_@IG=19Yv~Q z%yp~0FhugDj4H!0qJxO9B5u;casGU(JOM4M{?NoY=m-T7c4wt$BV#xC5OERoqp2VBK` zFg;(cALN?1tGp^!loLosfP(BrN!v2=(h)^UlSV@;_rmb{&*BIP_}J?6ypd=Odm;Ox zftWN8a&o#aOnBQ0PVm`hk?CeO>_ZVsP!5jHU?)8RRZKN02_`$t;;TOPMP_U%Hp^5f zs9|XqhW#YLm*q`7jrBTGpA~5fk-p;sYn`58+M`C?LJs(TD7j58MMZU}4+T3k{|Sxl zN2rB+C*`wH`QzPdG}pZ6PXu+HaOZM{og*A9#@i-x+p$sV53gYaBp?Cf@G5#lv(unwNnjB} zAGJ$U#)(k|`%G0PQ!_zGk?B0BKd3Y(rT4uxS@D$X_pi@yt{Rk>BC_k$`cH|9ydz1r z2i&_V|GbsyEGC1y-KOBaYldy$ZT=On^qDF;pfhv-+7?Qx$wPvO!@c3|=6< zO?^8K@ijLNpv;$~4r9J3SD8bkz${!Q%3eMZ7{|%lw;xF&#^4c7ak)1bohTCgc?6u# zDj0Z-@^sw)fkwfxB`t>_eS4u&%CQ;c@3=Vi%BJI|aG`EkFL9$&gFN4Sj-*(&sB6-? zb5`eW;wNhxM2l8Z@Cae%+Q2afmW`xi{z?)Sxaz!MBB=Fz?%2(r|he_uJ7 zlw(R{&^lvm`0z@Y7JuE5#Fx&?Sa6-E+-~IAD%bN0)x_3*?+=|+C<5X>axf}06RWASMi-;H?9 z8ZMUXOd{gqEj!kzwp?KvZ|H0YU8Y3_ryM?EE!tVNCsjSnF*P`ZU6@705FUWdJgH*H zJVmmpaJF#4Du&Bo8h7t|Qk;rMisLt}PG&<0wvm?DTbo;C%{5)}YsC4zKWHJzUVVpI zItHewy!65-#i3IQTH13gNN&%2qg9hHAmbJ$=2X4`6FWcFot++s5kwXqlWkW-Lnlqo zIMJhg4RtG$i#m0jc^tsXz>Phg05K_yr{FrDwRPT-Is;z)y_LZP4>M$d$7X`$>24%b z41vK7hG1hh(@|5xO9kssfhp_SF3r8dr4+EGVxmaH*r;W11G4=I=iC2vI6X8mEqhYK zGqq{=xo;+a|BLhmn-tB3cMra;7wkHgC4ju0W0@=YyG6hlR{cS(HfQI zOyTmTFex0~(s{%yu5l~_VTn|7WlY4+PyX{}HahUly7FzWH5^~B|Xo%m3Yd!0@ro)zNfgiPa>~l zoo=?2^Eb4&w^fpHpr;;CG8l?*7>LZxK8^s4d)qhBT${}A{$w$d(=x)>U-%;xa3P6erpiADz#3p6?q+!XnSjGc;{kb@oc<(uzOAs)c4Q{+9X6dqN3_#BYRC~8@6kfeSW463R4%kDJ5tvdhGa4k9n zn;?^hWqhfg9~6KgUriyg^&elDjH-Q;Qi?}!VZQT8F6gZkHOm;@Ss*A!&iQbh#U#Fp zA32D+DP%0LC!-*7O3)(6K81guM5n@HY94jXzNhPYB&;syk5N8a% z`F@iJuy#=tx`_`ke8$ldV89gl8kFVuzW|fwAgClv+1bfggD(RVG7KK(fT=2k$FP$jdE%(CgMu zzHvaB9jbV~jk&n&PX0u_pk61tXWQOU(gn`a{XhTiFu2rhJ-8jI!*8x2$G=Y6RDQj$ zYTTmxbv;kW-6G{-I~aG?7}%V#<%F9K@=uj6W6DaJvPdzhSR<%emi$WKm_|>~ncC#D zOH2E@B}N7=4M}*P(;e^~N9u9lg`yu#j4hQ6(cS|A-jU>oJX$!vTE6YOS9?%wBpM2d zF=WU|k0>kLVK!OO`qLVw8BiLc!5wO28;a-hZuH)lBi%4m_?2z zRT+_=tcn}w;4te4X|y2z8c|Y1m{bh!Z~EF^K??1=%Du*v7Vu9dRv9Jz{qY zEx^o-5_QO|@SZ9r{5bb{DT=;e+j?wYZRbC<(mL+8;omh5T+BEd33Iy+nEoY18${d_ zO{M>IXPC=;>DjJLy~Ac+St6wLVtIMxbS*lT;rS>@ z@d&)DYwG_?BuWy20Ba`nMgzZ*!<5`5q@Zi~YEOH$D)GU8ATFbP)*i6e7;WN7ztkk| zk0PKA#WB!|^Pa}uapXtqZC*vc?9HSz--=>?Xk(zhqL}MrjMm@eK1Pl+xMD%i?}YS` zRSk7wV_75WE*jcev?(^ft7s)CrQ=nO5LnMEVi=2bPe}ww^2@_34ncs;&#B#+K`R@5 z_>kp&O8b=iI=O4wDv_!r^xg!PsSryNqV+sc8fjOReX!HN?-)sYkv1s;rG)Or*#@gW zP2i#3!$c;1p*0`zCKfiJitv4$g=lD@{Htrg7WDo3q%=3MjWwvi4d&2_>0dVDk@Z=D19Yj zFN<53y=gEd^W5!y_P4RYj;Znea--?Z;P**raJ6LLWA^5cogN#1`n^*Of&y*K$(3F5 zU%lkMoK!?Sxu=HVk!aEONW>iSQT$EQaNDoR6Hz!D$k^-7{1k<+%S0Rk=-PjVX5*!Z z(jV)N-q1`vSJ?i#(|$4Ex9u*@GQ3?q;~=RkP0IHD-K745c{O*U4_l{sVl zW0wCe7ya_Jm;%J7s=MJ-8Ez#LBo-!Z+~s0I$8`B|pCSM?#Z!|+xC6tZQLP6~ zy6<2+%XzXs)2bP4&aB=ZyZUZOpZ2cLme!Tuc72f4P#N{z+51b&nx-!QM-si)sSfSd zgv?04obtkjN`ojF${6?X0n6Nkb|MRXY|B-~{SJ}I>&~aI9M!)s5OnO}_?@D8+`T{A zCsAxpRUr-xMerj&hlL$2>e(|;{K^sZ_0nV`dwvA^lhDV%;fjXm{gx3d8PY$>btV>t z70mNg1|Dc7bnb)X3y%9eE#!DaCB+-#q_{qD!8h$2t%M$>C;Z$oaF+wtA{O}+B2hXX zlTwX#ZzE^EKmy|#Um6WnJb*i4jWIp(B@ehP#vzWRKhQ0zq2Th1Q2Uf(Wn^7HTyF05UR0V&c-4<^du=g7b=IUllw6CWKm2CNkN5}hAiWEjNJHmJIm0adY;cZ0c8wB~%w2wz4B5UhFkcuKP7|9N@`pUG=gP?g&hgL(VT z+PakOm%e}3&8KdV_2GMJiC)Gjpq^{G2mRZPiFQuOBS~_}`e(GJ+Gc{tX$?!KDzL~o z6HbUj`6m`|yr}I@YmPetrMeRDqjvuB=iVd^(pt!Bcq>;Ac~NN8f8_#YAz&!pY=hg5 zMXubmNi^?%Kgt2xFbX77ro zJh=YI0Jgzb11X99DBxXj;eWeWCIGhYh$vhBodaTZIi5}$#B-+zQMG1Z=?2_+FL-I<5vODxTYnKY+XaHLAvg%sRM&OQ}# z!nCN#szCzoso-QxAwp@UNkPUJ7e_?B^;LL4wN19TH`rRVnIL~81U=L9z@msRx4|mPaa5_0i~J2n#dYa#ZTlD<9%_o% zBs1ZemR$8Tr;+u7SlW})nu${Ty$BNhm@wi3)cw{`Zfc@B?jl3*m;|0ZZj41Dws0ea zT56_@KB1zg8V7y4?@SQb^UHHZW_yA@Ya(}1-9;)X0gvfqE=907H z5+Tnf3AXFg7t@W0NqJb#oZaS`G|(U=M3YUPhpjvrvcksN<9QhF0X+cqdb zvap%E7|(_%6gai5G;9uQj!<-!Ee717F|J+gtg{vqOz?j_}CP#b7mWp2zcyjza0+Q(!=ee3XA#D zQq*=UHg)Gvu$Q~hVvLlIvGWS5Ur?8??aN?^=lUv&7sdx)v?e<=Dq!m=$v%to+t-r? zd`1$oO6^`Sy@3;1p$fBGJLc8FD+5Cp{lc=P6SF0cW6;}Xb0iD3)R4>CQKRDEuZ-KY za(@`okOP~QCi3>?*KtS?`@uZywGI9y|a`gh~M)k{j=di88bEv(}XVyjb=FIKDRo~r6o zDCUbrC56ba8TCn)WHiA3F+Vl6H%~1?(xF`coSO?`Zinv`)-cMI``;lJO!^UimBU zckm=|KbXRkLHg?;{~xa20XpukZTpVe=!%oZR%6??ttO4x7}MCcZL6`-G`4Lvw)OsV zJ@4~j6SKh%0Zuayu=E%5#<5TqTAL|L?vGQZ^lIsprPPpXYl(>r@Q(q*${ z_c$!C7BYfX{iK#lfvbCLvk{av_Y{#dn(E3Mqr-z?DPC+a7*4tXpjZu~-S?xsPAy(Q zuG~$O>hH{oxuI}besjQ=1kBQZRgjEO4i*AHqjYy_K=h*cWLXRc2PH8LtG;efZehgF zaa_6U7drDG_$oWm@)yu;O3&3z%vIH#{Ygf< z=2})_#s)Nch*!XTXJO_UAat-%W>hMHq|5D_6>nBaYQ_@Xpq-0?@XjzPqB_$f-d8;soDGDQ2s?Sr8s^OH=6Gox5-6dv4SoF9I>q*15{wFJkj^2m*fL~G_Qn4iRX$;$96^a`k_WeF5iRU>xLC?kBQlHaG zJupe!jP>71{IImXGm%wGtih21NCN8TCtMW=rZA0Eb##kTsq2IC!;Xx4at~%?rK}rV zPhVs6v;~S0QihP`FzSNKkR{pj*%WCuZS1d?^E}E$Q?Djz-$|R#y-|;LIhH!o$<)5e zSq4QGh|dHa3G6E~xfLip^diyAZ*va>=68($Ft$}@l0AawlYWqDJjvsBA?mHi{QyUIIbt>mKy?Rzww-*45X1rq4l-R^(5M+M*i1VwK zu|hG4$WBQguQQ!nNvDH*8K_{%-ng?8Sx@Hl1)7x|=TE+_nu)IH_(8)3HoqrsIMuc` zd=~kXmf9QhCV(Q`rH=MYpZv`b3CLP!!Weac0n9?=`lH%P{ulpq@0g2VLY4fu1)4=~ z0oY)Dx}j1P@*4TVd9?6BXzGfebmnk0UDNd_21U`>qo@#2h>r!4QW#j>HyA^Q*ky__ zvr+`_h2%|#W=IpwyM?}AzRv0Qt3TQXNCaTk!gN!Ty}m=adIk9OwP$&%H`|Xby07tNS=X0c5{lB`%yVCoHg+ zfpdQ~m250Zyz%DJ-4;+Iq`iUomOe^+82HO^q{)`w(Lp|whA8!Z*bP-7L}bH^Z@FlN z#QNh&MjUIBKPFr6-iy-~IY~#4k36Km-g--}#n+P6Uze|H=l{1JunYf#Q&smD03OqFznnh=r;g_^G@(@B=*6$gq ziYeGflrvAmkog^fB(_{oJoxMRWg5_B+94~-`O{8DiSu?^f6>jFxbQ_`GL$- zC$`b1LH?o4RHv-|m(4~%5=?Z}K58T?j(q(QFhtKz0ov3QvlnrfV|HYftunR#gTTT1 zNTLUh?(5Xr8m%du|3wbAm!I`MwQ*&KnGS^?C7`k;MQL4&Q@?8AepYzS0CQQti0Onq z0FTw)9_7{KPhOGHq?w%EC@X=~{*-mTNi^<&2WSa-Z(}t9s8dj@ZGPf z1lpd(AL%Lq>TTLRdB2t$k=Yb5RdaG#gp_GXX3tQ3>mPK*F}LQO)>rA&5DP zCR(tRC1PEku{5Bq#GOo z9}8FF*opa}F+)*r7!E^GY}gK~D1#_XyOPUNn|lecIyBZvt}>X{^c@iEoqo97iJX+e z!G+LZ^l!yNmWq@CH+5%KOwyFlbUys(#rF8D1u4c4HGSFo4Ts!l<2<70y2eKCF`eW+ z2{}_d-0HeY3^YL-#_4W;_DjOZdu$iTYR(qD7Y&jsz3tMP)c)xJJ?7KwB` znJbbnXL*DB9rq1xk7>nVGw1@lINj%#iedJg2{+mtp2;_vJKFp>+ig44x;S=u{52FL zfVsDxemp4N%%D$s4vhbZ`HGpfislFEd!!!mE9NFR$!!g~lb^J;Ko!{fxeY3)?1UJl zRWELJ0h3|i;et5~;|Zmj9LoD&wn7T7v%>rZeZc&K(0t8z5LEn$@J2P{zLlS=s)TJE zQgVlSf&2o1Xu>{n@~N^V2rBK3vYQ1@?gi*#h`-}XP28q_LTv}LsYb0gq>(_QUr+u9e}762<$qBbk$5?Q2uNSW!17+xbo2E&&%%>-#{%o!%(#d1Q`8L4pi(Oa z?-#9DKlw`jAy1^ZE0s5@y|i++$157tvc?K}*o`hl%E#QI?`2dd7neQo41>T$oq@`K z2p@^!D{d~Ht5HAB9@_J0-LjWdv`Xyd_oDFdZVk*^7wPGFTzZK<=t|E#sLlnJsmbg8 zhLaQhhUxLlB#jAP4enee$1lImI&8a{OYNU zz+6Gbx+j6{E1s0}Oo zmc(;4dX|t*Q|LImJloQ`0FB&_cVr`*`s%45Ocr(-^lLti4QE?E67RrMP%*l&qh59! z5Ps2qfM_!8`?0S+bbYx|Fd%b4+s%U31k_$OtT$}CUJI=7Kab@4zCNERIo!wOI#@k7 zUNyeio?K(T4NBoS!y2?vMhmh7+SMbX_~>|!kLgk#Jt-ioh?pE=ha&ahSrwp!0B6w} zrA_s)TJ2OmK0;Ev^WXpEjK+T6)TAz#Ml17nPMqr9Q&UuWsIa%PpTSy~+IS{FleMnBeXnK5ucG)Ej2ad)Ttx)1+ydV_BVYw1a zXo)xzEx?Yk#kg_|nMf0>iAV2 z@l!i67CvoN&4NTHM<_uY2TFQ|Cnx6Uox$%@Ypxra+X%c~3K4N?Lk7eTm8 zBYgdA^~P*$F7BKPpAg#K8$zj7|GrC;#>0vaC;uI}OFn06Sr!A0&arQJ8cddeRA=hV zQ>O$4Vt!w&obOIp%oG&1k|d&B++514c&V!TIK6s}fsf4!i+(}rNUCKN>Ai)c{-umz zS+Ds7&Ifc6}X=hF>SiqTd#TO~bcq`z)s-40NxmpE3!*C&bw))^ma&y=-g|VR0??w{{Yhnb3NH)y4yYMdTa7&FE&97N?xgsE+S;&+6_2+vr;PcLeiStKG8J_-|-QNJ>6GF0;+ zH2yLW5?r4qb#9+bMB$ocBLoh3RI}aV+k7xv@SPmEK=C^f$q>HiEr9UkEUXdduRm+= zvN*e9;x4$Ch>F zIBsfEV)KMO{N<`fl(p*Eam*hX96h%HW4Uy=-ek|XWzpEkB2>Y^*O>5^J*@l%%#Vk= zzPVxy#ODzq|MXI(GY(T zA$uwy=gSBjpNFDR7L~CveeMAj*{|-v=}iO=cs%dwK6dpFk$U!n)*~Y&o;^mLBY`72 zCw^ooJ-MV1h+-P$YLbQSf1oOVGI}%YDkP(lrI3r=?Xr#O-AgXwT8w8WoBaCId6b6T zs?$5#=L2FhoiBmJwH1IiJqdi)n_Xrz6CVUK?3oGUTG;~UtOF!mALHr!5?KC4+YR36 zn=t@e1rJUOuUc*&Duoz&S}t=n{*LgSo7!g@b2zP3rFa;}s^a@90^@Iq0s8@3Cw$BV z54X`KeG0?A%~&ZFU3En$(5nBxeT>w>gFnEMI46N+L$m(DA4TYcuPKmvERTZ_C8XZ7 z48xSeM2!NGWWG8eh)+7WJ=IHYoOy$w48;xlBe0n*rpeHTWN;{+K>$Q(EFAt_QF$n4 z+!~;Mm8voqWPf*X1)yAml}+o^KnB*h6_KphXk^*j`dLf}Krf6kYZfPKJ$*30445FG z7&;3=4}jW9AArw`u}I$7M;XNRMNO`~;*Ty`Qaol3FVc26?hOXm6tz2ouo4!5WVg@% zNQxL*oDpKYc&NT2D@w;=)Of%U%n=F$%8rD)!Z$WoopS>nC=q@h+p;iXf$pscNvYI03^nU%Tk z5Idg{?fne|GPqP6@vD{%bZH$@D_1v(F<(Av*kw9R6mCM0%QBEp+eIcx?6)I-FxXY$j;}jY{KJ3uSO9XQkvbyvjnJn#j-Fd29#;A`WA}{#1yB1eZp!tP)WG zk>r4*15K4M*XVEn33EO1jUBSS82b=mt)-!)#b*3eryR#CbkT zG8(wYBFrjJeWSz}>&PNv_y^aVbePj5A=7hTQO=(XT^CLL^@6^bfy6XE2UGUZpV z2lb@Nf0ju@klzKa^mpn`fwjejdWo-O|C=~i^E-`?`iPk45e8Nn4v}B6=RGQ6cbSiT z%JsT$wak><;~8IWb5#cdN>c#=6FgE9VFR>aH3HY}SCo)XfM!nrM;ir1#N%91GMd*|G z`~itvCeef&Fxpm8X_s}Qi%d6|Sc`0AX@C0+t0se!BUe+eXtruAiz38079-uuemycR z=F_{p^{j2){fzX*BQ^p zNv`O;bc@)hKOW~?z=CS(>zJx*8jx_#B~&@zD`l|&>)fP=cU+)Y*F*V=B8FIv9%na` z*~gT0o`3l9JN7%AQZc{3`oVj3>*TjUS%m=&%ziHR?QJiU16~J|Yj_Jl+l%;m3$r=1#t1QT{T zC7sClC8wFXC-2vpO4WJ`XepL}l@{W}leI4hb~>B}i_V^Ly0oX!(nWvjn3c@g5D{2Y zMJw+q@!*g^6?jucF{zflfB*|`mUh=B;IeJ|7VqdBotw=Gs`tc9A5erG5I!KN+lf1A zZ^dM2!Jcw3CHY@o8AaxjnueZ9ee?)7y-LLd1!ld-OtC^TWwr-%gNfQL&A8L)Z(QGL z)IfFXIp#Og0qYrk@sh?FjLN}x$e3eV;NHv&CY%g*tR%!!8m zC$;+s02wq^Epmuo+9D*vHf0gC$(k*w%=GD}uP&5QBWx zz>{i*pQv7$H)75H>WET?bcA&15B!;mr+A^`K^T%>ACiD{j`oxTh9pV?9QOn*fIGQ@ z>9oHMB|2IqZ+)J%WLiSf!AP9G5$3a(!AVrBGFc zDWuKitUI|8f79q7?zVOSqPps?QjRY;)7|auYtvEccEX(IRlj-vdZnT8CJ6Zqx@GCj z1#8p&L(lY?f!!6))jRi?KDyy7{-x__i~N^j;N%zh`miQ#iJt5^VZV1*grO@3w;rQyZpYdWXUqB@(E zMr?z=F1IcjZdTw&&sJE*^oStWa3b!kxwUwh8>7qk5pUWk$*lV+dGmZ zSa;7ROV$=fZTm-h#TL~mA6AVnn*VnC?vd~|1guDH?x(Z~#O=@B0;PZOmD|COCOZvN zk9BsujVsy62Xh{WoHeCRb=2i@e(&?Iqc3>!=hEDn+n`)4M&Lr z(3SuK;{YxiuUa3>o0j+MEgMQt^as;bQkUG~l1c1O%1|I#sjKwkypANtsvIyy81_L* z4Tq{&q0@#mO&1_VSC6|z5#EdXOoS+m3(2HD*$|%K$LT9HmPcQoAJC?7 zi{Wq^6<$_p6W=SSQZrO_U3eB3?_6|LzTtqY%7uZy#kas%*mO8Ymhx-VeQr_+MD+Mm z=>Mn1Qu;Dd?Vu{Gn;JtBa;{&ga;VweF8lDBoal(4OG4IabB7z2d+l*9jo4@Z20+0v z6`E5?Jo}sSa(=Mj+91g-hQOtbTO4qI2y$219eMkKt`F+fbP6q z1~LvcZjnt7%`$3EFvtPJ*jtrusut%|hn2tzwEacm#m>^Ev10cVIDs!+ppo8H$xhgl zIX1D>CutFEC~{fni@#}oei*Y117i+~LmZ2}Y(u5w=!N#pPg7|xX)Vpf(|R&XWs%Gp z<^6R?UFy2FH%9dZJ4txNlbRP;K%p3VpCKi<@A7O*_<>@R_}W2Q*m4yGE(sfWRFuf0Zm8#Gg4q{b0^cBtC3tpb5Woo zLPOq?8Q!$MfxurhSRg^*d?L1M3Q8RbY>47`>tdI`4gv_vpgg( z!k;GTGi#%T)JRtq)50!N@k3wk77v8kz@e*%WClt%sAH0@2`Axrf+ib}$dGL+rUprJ z@-p}Q6Z1n~1WGs)LV=9>5Wpt315B*izArk1a54;}j_)Zniz*Mi`H3l6T4wmzET*#a z=C88tk2VCp!XL~xVsp0M#-|wA8*l<;qh;cN$y%eRIEQ+IdjX<70dq@24C!(xlaf1< zmt7UuIV7gP>vAIqF4kCnB}U4u49sj)hFOS<E43{~NA2~FDLISG-E zi@XZsr}X>rRjy=nKDM?dt7K5uhPDUPiFc*)wf>>ovon@d9msrT z6F&H{7V<8>KzuxyBQmBS$yElZWkMyQq{y?(Nt*YpmEyo$U&_uAI0J$FmF2a(l`?~X zYWE)vWl8crE>u-tgW?y{JP#;7j}2t`Kf@&xz-Yo!(EKP|%0Ce~M*OW+5H|1_te0G) z3611v*^wr=;E3lP_gNQtb)s1#fGBV#<;xJwUvYt*Bw>e{MI-D|wevq4hb{y-%}LXdq-c zR4qq|zem>a`z+XR;&)&eaN#%*2`#HF_fv$s1DI^nko69&@56^(sM4k9ZHBmHdKK#j zYIhIvmzp#389Tt_=GwrRQO4`iOmy9Zu-y$v@D$@>1Wtt)Nv>EqE|8qbz#X{#i|-Ujd9$v(Xm$eub%`+sZy_{?QE%=ILV8i`pE%_53ne_)woIY?XjcvU?8I zkhZy?<%)b};Zn7>91V%ja`(8b=ORBgBr&B1?n+}!;a*LQQEda==V*1wsN?oShLzi4 zmv3`6)d~cFaB*$U!tmMub|F3{_*kQ^ECV!Io=o=U8A%qbPrCJpDfO6>DTc_OBi%Op z*_e)PCHRS{K0lP|Q``00}{xpY(S{DY4akXn5k{h7?I0RsZNgrxjI;~rdwDeuqoSCf`8C9%)0(A0N z(kM=0mvxYt3M@qx&f=CfUp@1p7Kv#Y0fZh-=QB@ioSXon;{3k({QoR`Lnt5cG6U}>w#-NneJ@erfBE#rFp4UYC#K%$b3%*)7S_D&gGp=~O@N{8f zHcvJ%yvx_+40yQ0%Pf|y_dwX_rP5S!RjcU5cR>3nj<)Fy)ZR>cf+u^(VwAIh(TYA{ zz+ItFxG~@v0iX&ILu^8`Oq28NaS2M|wHF6yqm;e`rJIzNSI1xUX^`<+hhU+Z5Fd!8 zB?hA8qUTBlf*Bj-UrOLZQfCWfufub1bq{abb zBlJlE1N@XSfXIzZfmh5pe2l#2{+nS`Wc|Isj)+ga>{dMztLMBsiOM=^VmGyH5UwrR z?_6$_$wE*~nM-*tiYcGQS3!SCzT>|x%K%v&k{@rjkPNml&rIXHc zC8sUkN~{@EIm8tRb*v(yzzB+TqVt3XsR;04MxOY6apI<_ zB>SDDBl$4Df?@KQ2VJgizP0aJp!RM&mwZvRer( zK^_S~;ZbyD9E{2$3JD~ESKR<7Ei&ogruj5YuY3eDte+uJwDxAd(BnhrT{JXCtZyq; z>Me|367Bvrefl)%We73qB8$hHK5MuN3GBz)fbM4dosS%Q%B{F>BH7T?U+`gcH$9j} zioetI7Al^w5ryQ}LzHa*<$(ef5|nB;-0T3$%LQrdgc_J~OEFyOyQ$%VQ2z<8yqj7N zWp*quJ~bE76)*^t$$u>sX$yFDgk5>5Ax3%oml{=4tk{hsiSsNEA#Nfyi> zAoSL~TX(kw0b)$q3rKL}rKnPD=!ZT6Mut<<4qbrT*eL<${H8VO9G2K|f~L10S|t zpUMXnw6P@{{4rwhsLjV8J4u$)ErlLpwJqm$(;BA!y3g&yLE!o^K7xl@_P3W|@Ecpq z8IX{X2p*jX{OZX)6-gGil2#16>xl88#z5C8d1QW(sd*3)up}Yt`nqrLKf!xzlUb~- zRttt)qY%*f^d+rz>1W22!L)!8RkUcvXBldw;rJocNiBG&isroEs|8R%0!G#_geY25 zv0rB9xoSUv{ay!%_h-$`0RpK9i)odSWgogla{FDKI`WghRS;Me%Ib!|Wkk55p0PjY z^GTgaV6gbet-c4v7`GE6IakNI*{<+IwwMI4bYj8H;0QUL_P^(KuvzRL4vV?4kyICH zc|<>riy+3uEbpCnQf}QKiK_Y_WaGDK#)h#g1}Zk3Vi7Y68Mnik?D@i(j&@%5J?nhp z4EQ!@SOlAF=Od1?Sk%ZN&Y?|A&DLTu5YMy5~wepYFL?!Y4ZCk84! zL8ec@=l)X=OyKXjwr%Fmlavj*%Zd^?b{JZigoXM58Tfa~WUS{P+#fLl0DMTpwmsGQ z{RYj{wLa5bw#wNf`7*fb@G|wONa3aYHz^|ZmuP!aZS$|Z+dLUSab>yX?Jcz`AK=-Q zTm+A)7m`oUzKrg6#h2>&FBSFV-e`*W0TtC0?n>dW6+xikFKN?(Jcz7xa(gJw=15(c zqcWjM0&Do%aurM(kcS|Nwvi4ERe z`Cnmnuh<*|6m#p5opPYefrZML(UDBTmF1wGeF2ZDyN&%Wnhx!mZ!gX{x2 z12P(%NG71tH|y=T%WDs|f=2+p+6nO|hQoL#{WH!_u5nvFoX?daIP-OsHU*xxri<&Z;6J#vt~?LM0N=NMuU%2c5BnuTs7!(_p@CS`fvX{GXl zYN?(KnlNfbN5sx%tkDL9pK5J}G=(Tan$e~P#z^1l?d2j`D4_fjxucDhN~$=)7h<0q zTdk4H&aRA6eyM4{-Bx?2D*L=BJsOF_8a$GIAknAvBF|hy7|4ah)BIowr!=jnBN55H zg%J>aF=iDOfns?tvR$2!=DdT6|5sL}m)=mcnE-|U?gHsIg^xo*yxU3;zqd}!;rMqq1XD1d&FIu zEL@2va+@MZ%87=PNgzr(gL^c@#@K0Za-j+db-@NuE3^^BZ-U*RuEcXvmWZla_HkMO z!v>W;e7EH9^7zcglIt&zK?J_dAKhAifKd>nMWUu{Da;=D&j3kp6dsqd`s7zf8S@1@ zEQvvKCOfd;#6qfxglJ3hY53`u1N6=wZZJ3bG~w4i+n9xD z!Ch=5*-p}xPIxNC-xjniOU%T^e(DXAh>u4%M^8FA>cPMbNLX?6%vU`m1e$Cd!dxftvzvEB4sBQnuwGfBYx0 zbTBL$Yi6cM-{|MxJRwAd02NcSQyqRy{q-513fRU_M<48Y?h?$p?JySE9bGlz0nr-Q zN?txsrrTsyCjh19nff{7{k_hW zz)l&>me9Kv&#z;l>r+8V2!2hDAO5GlH){5ij@(71-gR8VbG=`A20~)J^kdR!$iFyF zJ~g*bxJGH2I<~pDxwou!w1N1u+l=F7hvJR*ITYpuAbW0Cc@Y9px7QSC6$Q!fd$T`f zYMo7W5U=p_B3M9oOL-`7!|rPa>*$NDnJFF6KY$_6*Z8VtP&}*A*=Bvx)+^XH&Q(4u z<=i|m}8~C=(lZ3h+wprIST^tX^W_Nu#5)3Gj&Eg#`(S_J^Pr^RL&wUceZ)T z5kUG}y^TT-ow3!NlzZCecxO56g259gWI;w|LK1ke-*M#Z-k*b)T*K6w=(c=_qMmMM zRTP}1AM_@`|L?>1Y8R{sO!6?_xbS{zC-9{RK^ASgK}FItK}b@G@F_$~T=yP1+K;l+L|N5-Y{JPbo5O1U}kP+$+n=i=1lYuElcc6aX$< z?#;AM(haYN1>9qY2#+DBIU^0nickx5eVM>Qct~2V)UIho(i7fi0v*$n%kA3f+ zuU`=T$AxM9V3F1C(4T@h$YZW>vcsUFxHT(Fv&|;`D5Dmp^AVn`f^SbMj-reIA95 zxieH0NGj$r)3V;o&48ifMtS&k=aLKHuq**6%fQV)_Q*(hWrw*3%U{+r*ysLU?HWb< zZl94tV!(p8IvtYG#1Qg--i`-=cl>c&eg_*Zj%Hf+VhH<$kb5fw0B=hnUZo)_ckfB5 zk7a__C@c4r?kJ}?>!mM)PEU6& zfc;`*!LPr*JN*-!sbzbc*=fuDZ?SY=SJ@IPVw zLuI%6eu4L&j}j~3>!!VccX#WK==L9v0=w=NpQ2y+ZUU+lKYCHfs|&(;NIairR+^`&P-aQ;Q?sLKmTdQZ@EGxFT%h=t}xqvd)E za#A?Eg5iK`^FJPn$k6R@okWd~!da02`3Q6%$^uIWY+Mf+DZOv>0LEr1cBNYi?#UW= z|4!x0jdlYALIM^zg0wAw;FoOA!UUl*#=)drz;rZ)7;w6Cu2mM+T(V>A^(uI$)2?US zVv57Wun)$Y1=?x~7AR=&4{GurvWEtw4@!vV;@s?L`OY5>ORsiD&X!IQ2^U-eXbz4m z#pUJnQ6|spFz5Lw%%hw&fJ020tiAJ8u(h-4^ZHi}dXG^Tq(0t*F8`k9Q{d@AU4^RJ zuR2u3*$${yRDWp8XTc~D#z=ueVjVI^Rl z?DdGq*|!okzG=mseFG*!u7IhqA!QjllV#|ygl?O@rg>Yd@;s-;+vRshb25No!$jVF z?5O5PJ)l;vo7rA4+x@JicH5}dKhgjiSs8d+33CAYg`GXDmwXSG=k;br>`zgOlLuh( zCKpNyniPVDtdWKcB6AE zhFE0u93WHhwF9nOaR<^Zb?o?}MRAp>@4%RUKHI>5}%y2fEt50A_FHvS{|?i_YaR zi*xA<;`Mj{H-bNa!5rmd8#>R_d1c0fCY+b(%FTvQ0%^Wt#zIj}Vf$o;fBE?BS-%(tdJ#C%9XTbaEW%d}O3ZK`9 zeWQ~k3Rj=bbL`HZfv5F3)oIAdG*0wukabd$uEUUVr3`INzz1-8XrpkMSb&{4mng9x zOR#B#zAa@#HUwDkDy0E|i*Cs2Vg*9S_Qm(khi!NxOlTMig;zj`N6pZF;rFloB1a|e zI2-|_x{MeY-1N|QID=B%2lM9{tj4{EAKk8Ba_0Br`2p~*e;z9JwIqdH8rfn9@F|{~ zwgIk7u#N70MY0>XuieJMH6zNU12s+?IxQDdS0xEL@A&BBo*z$bY0^I_3;zAxx2M6g zXls}o&|>-2hv^!_Br$6aw5@CUWHruO4hW1KhYDJNhObmK0pCA@Vy%j@Bn*s?uF2ni zTFlUL{W#PKM#NWk8JmW4`FgS58wjG#V+S2N#KOR5g1PQ8Ux59j)=lF4{D*Y{(wlEG8}GP+w1X6 z9{3!$x-oW^to>OIhh0fX>B<7uZ1(NuB&ldcS-_7{L0tnlKwZjEPGTNQGS(4B98{0Y zvOq<;Zd-vpJSV8<=O26!#P8lgQlpJ4KaRgCC%gjNBzy`O1=9wM3{6keTQKuLANRA^ zp+M(qQgvMI z41i^br~O@4Is<0q9EPciQx?-WWsxb-p>u#&RsyVsTduGe+JVg~mqOmn<6;KP0n}9d z>VXrN9tnsl3x$pQh21Mp`|0~J2yg)$-2CmYl13?R(Q?65XoTuM#TGy z15QeAjk5C_h(SmJD0@2cegyJ24_ltI=KKt&X(=hXfXaNV72pkSY=~j%8Go7austHD z1(GdWrdHL;NZAb?uFD$jVi~(`Z|FdlHQ?!*UPlT^u+F|1aRPi_vqgtzgxi|Bu}ljV z;z>6KM`sVD8UPoQb5?~GKo`~8+Yi$)Fl?g(Y*UWTS!eH~KW$rAV270O)P~kcakZYd zoYLR_L|4d`x$u1pfPaN9KX%1&hoq>=ge0 z!r}i3wSBGeF2GoEU0=BV`-MfWO>pxQ+FOjD{}GM2AsX)pK8hoa&maGEiQ*jxCi~r% zyAN+q)ID5}iJ=EY6pG3rk$8U*+;#q5}HH{9RAnZB6EB!VS0Wi|9`Jk#m5rTxW7pK_Y2Kj zn;n}w`z6&3E{L0bnUZA2na=Z}9Y6GQ4}1=MU~*eO$dP0;595< z4a~%cH;*y(^4BPLSo3_h(c5Q=j{pn=q;<#lau4h7hzU&4z(k#G%T^FB!0+gc1B4Ii zrekU3(fm&(c+Rs*A10Sc_7k29ywIZkfOQifrZM_fLG+F0oL7()S1yH72)Mbzt&@#; zlS^p_g8#vetI;*$0uJZMJ*nsCn}2t9i7zB@)ThMWEsoGPZ$e=6do<(O_oCdzZ2Uyr z?FBbPVrc!FcLfM9MySgx42Ov<%wp?$;Am1D@r*BL3Z&5L#KMMJzSa;4qbhjD&|U9D z3*bocg%=3CJ&1gmChxM<3%K7|YdO!U$-OqpKV5tTXTWV>jbyTR2E;w$!qU1j%X+}! zHwJ-#;CmWf>GPATanUe5Riv?k?;W@fV7fV^eGJI*FfcHv?kD(=XRrty#sH6?6lKv!+C_4yqLwAo4qtV+Npm$9RICB+( z8vzEhx!~V@TK^rd1pfuj8T&w72*Bd+5gtU3KHO-BNuzlU3m*RjA+X$n?}OzP1d*|9 z0jp28XudB3_O06{{0rUg6+Jb)pLYBq~!{-_-FH}c_)e`hfmKPh~Iw9w_2y~)!u^D z>t+R<2mj9-59ONdaCe1-Na;QpO(g|V;W8zzq-LGY$DhN#KvJ|pYYr9&_6vAleLiA8 zpeHTBKTOrLRO4Mw7M1wlUmSOwq^Xt2qLJg=W)CG%hzlaXR!ShJ0KQ=aHSV)KOam9H zG8i4I`WH21n|+xZ@C(@2bMN0nJ^gFQ}69%OYpxefDP+Ylk$;yefpJ`W_|jOyVw8CjZ0JzGk`X9e;Zb5BIShdvK<(% ze9vF-(d7m!Gdvr`K%L2;BP_ciLYHhwKKm=7*HJEWz`lgp^T`PfhjtnBi`%1kLnwBkle5Z)n0n;9xYZ z%C(WvYjt8m9c#2%Nqgh}=y%(1i@I~4va7fU&L%eclHkh*Zi!jWa_s!yyFzgtuN!+e z#VG2-NK}n|%}HekMtPm@u7k!55%1^U++cR+8MBoB{C5_>fKq+*LsHhEo*;bKcv%eYn|D zzj|y3iLW?$&zOy>|C$nIZUfBC$@tz|5LE&Q_-MpXEH|NGzb{@*hn#R2U6#=5(rN(;hn49YHa;jr|K69|dcF6S3c{-4+& zCJ=JbHYqNK1a)&wOu2*Kfjpu6SQi} z)!_;RInl0pOm`4KCRg$sTyZ-Dn75sPN+Fl1CL(0mKrk4kL6F#WYO)gK>fn z(9_>MUvC#E{tr#p99HM!_D|NbTeh*>vTb{r%PqSt+qP@jwrefhZrS=heXsZZuRqUq zdd_p-_lNp8geO5Z)CCc?Q)@<_KBA|_8W!|V2syw^*9;qJsK$0-AX3ha&xpiJA0^** z2Sw>g!!J7qUUhe>qRk0^WI8M?pgcGK5&xVxaPSjdzV+O1a)7&P=v7`Z`#k@fP~}@< zT66*Lgg7F+pFEI}9;8nq1M*FR)t9lU=m~`RZ1}Wj96bV*$!H8gcLZLZ-r@rwo=zZizJ2#8Au-pEykp>_Bd80hTuo0~tio~RIAK82el z4=39FIk9PsXnxczaIw9$pkV zOm;jc(=Kt&wY)Oa8!dF{8Pa{0gvD2;NP>uU@&=}i!V!G?mUjppG^G<#KsHx4QP$DT z)IH1IpS{<7#)pt;M(hLnLBe!AHkF~z7$DO)3dJ)3S|a~IhSyoqnf(oIml;$qKJIyL z0n<^8B|v{4x8NA{Qa_t$hl}m^MNH2ao@Fck+? zcY5K?jMGMYTCdpa5Jz*6tkqto2RgxULK_Q)dkg;C9Df7K zg2zYcHog?~KE7+ZfSZuivVi2JM6f8-OB~Rd95QyFagaGr0-`^?u%n`r2I}ac1b(8~ ze^8h7JeY|Vc%%N9X<7pFz-F;a1M;CvKM@`!r@Q<5fl=P3LBLvmaF^(cgn;rOnx8hF zN+Aj8T3mZgb z`7|~fD9FE*v=3Z!wH(;rb#Xn1?{=KvM~)T9QY}?RIhz+JBt&D zEs;;>U=Y)T_XGJEg`;CnZy7^z4U`(OdCw+Vs3g`yl~E$Rt0?#sSYl$LvDs0U4WXK1 zmGHWEEx8_-MLR4bd>ifF#O5U0`A3Ejr28b<=D>r$cp&r7xFBoZ=jkI#S&1yhHSXs{ zoD5?uBFAEP2?)U2B#(eEQas(74Kg^P#`{ud%0JIhP>yMwtAtil;nIE+I3K>0>1n9+ zdvO2;Z#TS)h6Dl_JSY%FJz5;DV=V+Pa2=2me060*Ha@9rO8VCK6Hcdl{$m0D$V{Pc zJFRt3rfDnINk^h-hBF&aC?fJD1-qr*thkcVRkXa~#4f2+s@{gr`-Fvg!q_}~&aR1c z!H`SXR}ZNIB7a+i&i!WiCm4}Eh>ub*6^=4~!UX`Nt{8Wgb^j|MUuhUO+paa^z~ABQ z=Zso2!xzn@2iKGx6l#oK#H)o33p`dKa<|(qXx-e=^=1q${aX+k6?r{x&6F77jtVY# zsqZ!#4dEs$(M5qT6RN&b`pq#%38Z++0~|^gLhyAT8$EzHk??umu_-tM=T1!1x`#~6 zdQMTlYn|y>(!MT7sSyMkg|M0FS`glKU7(7`#k2KB~ghz&H8A$!L{3~YQs-j2P zX~v^}!q0XA4;#GLWM{w)sM^Ol{q~_%T0Wo{{|)z@jt*!z!8U*hdTE&j_F9qy`n!~W zq66?J+u=+cX!!cBoCyjfrmGw$Yn{tC!8?QDFS=ics3Anb3bGYYZUtj=OcDMZzTHL< zboMQA+XH5!^z(hdD#{TjMu~*~Z@JM{M-Dv586hTR#D~WtBgvX}=MG6n^^KkYI6Td2 zEPct~>h;T8QWzE;mm2;4wO#}i`}$o1t(Nn_*j}sN<8yty8d;le@W{qn`HWHfWt4~6 zM80KZ3LC~D!Hu0JmTjuo91E78tqftNc&}xJj6)fywTA(~fX}q^yJ6GHpbWdHdhQP(DWC27Q^_8b#WIe zktTWFDjKSYkMd*3>y2x!Isgdj^6A1kSj==zY9m#XYx6e0rn)9eBd^hY>zPQE8)t5y za(u4mIlL4NQ2Ro{ORCkYVOKuzgpY%@Zwy7?8f%Nqh+9yce)&Thv$_Siky#JKqwpZ2?t!oD{l#7O&PSUOE@u$0Aw>~0|t|n+NmNfsZY!n{|#&S=Wkmrc) z+jdwms+yzX{ze6lBNTI4wDmhoU?RWV`vkY3C!uz2Wu1Ouox`*1mZ{zWEQ_gve-?d6 zJ49W6-k@*e9J9?{myp4YK$_OIFcw6V&c0vchXg|4J@#5yJ4c`m(gIX(7KFxbTya7B_?@7WUnmC*Oa zVF&lz>~1qnmSZ6}p_Hlp>XqIJsbr$0M(dp}3l`4Qr^$4V&&VX6<40@J_#j49N;a3{ zfY74%j;!q3Vp06h6@ubzi@pUVE&#D%$oO&FRsfBNT=Pi(bC(sp_-%eRcZWYturF?G@pr4apL#@KuyLa2F! zE2%U&gVYaR4?V^%O9=D~;p0BS)rq*DTJpfM9+Y#_KU7sZ2_UfIPd7)#afT>^p^N?V zQ-QTXVRcAR1rmFlxbQpnqWv|f68&jUDG10dMI2t^^WquayID@&^SVQPrey!Yk-1ra zqbcz#8$C_)%;0_hI>(*+QrDh-L93{13TTz*()0aoAGIGm-hx5Nyg zK=jfn0|j3RI~bEUI8IebZgUZ9K(USV-7RO0E4u(hGPWqOjfDP&*ll?PpesoL#60#< zeLe02K(84Itqdq+W)~kK)Nsu9$_ejcYqoz+HlJs8hU;qf))@T0Ed2OoF14~W{DDnc z<{b3a?1+vk%@rtz*w3zz(p6IDl|AMZJ>(H{1K z6ggs>+(c02tk2)33!o?}Znn{)>$d&AfGZNXrK4Ez52d(b)mPKjxuio|T~6IitozQF zu{p=fs#yjvp9NKFOQ%qBHC6sfWO$7TJndNSoNt_LJtXta*Vp;c$lv?M3-I4GM|Pn}{soReiVQlbWlZ-r0HU$^AK-dE-=Ev{ zHkck$qsi|7br$6@+zt``=&|O#8YUCQ;o1)U0__Umx&S^{E_`9>2 zf!|wYszgI4I13wC%Ozf8KTJP-6mnqVH+&O+adC(f1^z_l@IJ|Uw5bM|~p_)yuaNX8!^VTSB4?*UAW z;cveP%mgiE5GQ`2qphC+!J@GnH@Mpc_1j@qN$lC6lw@5;DRv=*9em3M!0zYnS=tWt z%TgvD&?9n6j&A`R=5#-m_@UE`6jiG1cm751I6bkAOHlnGJ(E)4?hh&rPj8Aj;$J0u zk2>GA;O1v>@+?pNj!(`WeTK%sPP1UW?BGC`07jT9Cbo(YZbSIm_^R6oJel1NtALzm z-+0wKXhFcjW@iA?nXT_iR3&{r2{cR(zxsnpQyL0>@~hd(CO1bTRCdSxA;%hc>Hz^} zE9eXAtS*3_?t7c&J^=r7oa!+1mmHx$6Ttt#G8aF--F`iZUQqr)X@cbe`uqSwR+zzD7{2MEGsr)oNrr9n-mWkxb zBZ9zS)?Z*{@ps;Zrc+>)bgcde`Yxu|He3d#zd5&Mo0gZtWr2*Y7KVoMivp0S9Hm z$~%Dn18q$lEJgZNH;ZYNXFwK;)QVC;M#=R3vNcoui_u4_TG?#^Jej~?v04xC$@uSeB=Pe6Uu3SAx^AO_ z$kwNwv+<0?2DICmeAPq6%aWTtHm$u zhK#v`@)7vYA{|eI(B+v8(dyEHcl+P0FDvW|x_?cCrMXK4O0EGoIGXUTD|{G?35T;@CV^ozD7=rdSu1}?nXKwY71CL7si15IKdHj(i*a=sq8sk zfqzL-1*~xT9?u8ivwm_lsxQDcD`%vyUi)-$;a{LlZ(p>qRhIk>etD6xTxN7Bx7fN_ z?^9r#SijIv<0%9CS1gYyTkl30iJeg zCrtd%(NE_%MpSHcyYKjRT<0?Y*8AOOJ2YDQbIi{*6Wy)L)yC~bs%uoxOv8zZ@6F*K z%W|sduj~JSpI0SV<=4~dK&f(E#8}a3k4de>_K6$OX3FH%m(vfIUN~bbHQY}c2m!eJ z-H%TQs;__fT{j=Oc5tqSOLANh`=rg1s`#d8NzGv_M@LTleHH#`XukaT+M`T1gvjf{ zKNaPx>uJgtk}tW;Tf{BI<6(t1@fIYeHXS}Ie%yj_Z~-Ibl|Mv?w^b%naxbM0(2oxQ zk%SVUabdgWL&RYg)NcB2tMIuyi0u*pEU{;_fHt88O13{A`jiA5N+!m@Of@zhIEPd{ zP}uTkHBZW35?FJR5U!jf3jn3i*t$2_SrqjK{>;Ag`vFFs;{`M~N@7t>^W~sNdp!Xy zM=-cK>FwR;2@w#H;C?>&;>RE2pl@G*kmWLRR`B>d3eoE^`nrh65$S(2k-06vD>i)` z@h;6KzNDkbL?=>&YM19ul@*4KNAOE0b%0_d9X85g)3m#?*#Zsp9o_hHMJpeY5MwVT^zuk4S zWOuyNq5UlS^!Cv%VYe4T7RB5I-n|S2Dtv^_$+a|mcq2GgY*@K(XH_N~zPz>r^v{Sp z{oXd(I|%249kZxw>@9) z2VQ5etb$HLO$G5-$B}BkiHGM80GMM{{PiA5x^s!bN#Vkqmz{7#UdRPM?tYUS( zw}^f3d^FPn+K21p^BSX+zl$^^#|mKgf2A`uI96LJIrddkn*@yiilrQ8;Y>wB=gIM) zBWj^@Oig#~Zm>=w^7M~X7;ZNJh=WIH1lS9M@6B7#@s%b3tHi7v29Pc@yJkS_9G0?~ zkll-Z;0}npL#gTg#woCk-BSeiOUx5VVV&P6P?&uXTiiGw0bp3@4s(xy%A^P)1qO>2 zJSda-n{Zfl@Z-etw`E70Q2*3_&7N{q&x;1zyYb4|W&Im12l_30Rc*V7ve5Ol2kX8H zjH)hN;d3hT+ygfRn<-JS``Ok+8q+nn6L5z3o(gUf*{g2_XU45RuerpDST8xFt>TiE z4cPf9r?5Iz%J^p(?-L?F00}2>Ulbx~oVH=Y+}Ush)=mTq{_<-Xx+D{GwcEaI*xb;TtCq5T_fMV)|{z-&|0 zsIRHFTjcnwAGIhR-l<_nlQs zbcLp!15usDw|dfLd!n$?V@cwHc@F_jR$GlMHJgtg&~e7+;a+3PfD}XS)9LxfIfGb)8El1U50(zn9YP<&oa2*VXXJfusJBY` z3^GhQ8KAN-pH{);Fu-q@ZJd@oUl9xTY9!J(-f1ry>ZcgnhOHF@$P(!oB9^EG#nz&nYy&IOb zub5|$8$>$_999^hS<`M{Q(*wmo-DYKF$aEE&>%a25S`jGc69oHR%*21{>N;DS9kRt@%V{_LU|*viFWJsFNkk{Fz;R8%wR`9+2TO|f)zecs6Cj;zXx)bw2kW#KN=G`l*6x5KH%m>Zdqhvp=* zV2lf)E-o@TK$YWXNg(UR-@TsCpDuePW>%H2XWLX4yq#BQox2#HLay<5+~xY8N4};< z;$ebJO+_tWDd}Y5DdoNhqNZ0;sz)uZk#9j0otPWU7u@BxI|&2ro**xq>SxB>d|X?Q0m?oLVVw&bKx zO1RfFIbN~jSY-Bglqva;EQj=;IU0?g<0!(`oP?%EYh}|0?f2X)TMy;JsXEB)|9PWRPV#Vh5F5u@p za3k@qGu`}puHSNh$pmE^?t9w+fF->}2%+?az751!M7-wfuUsMbslh*=b;0$#(B#OZ zz2aLUj<`s2F%M@7WoqFEb-a)&kii?{+lR)v-A3v{>iXXR63)ywjX{5>>VRv*yS0-! ztN3e{vKEqnWcbJ7oCZamERZLh<|)su=5bbSTzeB{mHv3X3Kgf|xt-1Zu68Sw-O>I! z`C{W*d1lFa(Emq5CwC8uMgWzRg_4=cz+nJWD)R6HGG531p)^u={&9xgOp7#@?at4S zfF1AX1U4NB3s4}KF6J^eb$&|T^X3Ai?MGxUn@=_v$neAS!nm0tqoHMenJF=zX`=Nq#Nr)p>{|8fh40RL5h}@j|C^9iB7Il`B7Q=xRhc zpxlr94HIV}Opg@GJ&c8G4a1~Wy#ZI_{U?j@^616#%i_3eP$;!kVWK)(CAsBT|5vPq zAlQp7f^jin!8Qj5;#G4$6R2Wv8T#fJ3>3;>W@=t*&o0>{Nvtn&d2ZeNI)ja4Sp3cH zhMP|3sXvgy2svR8UL;-}<`*oUOX5n3h@xU4XW|~??fs+43pH1#D76i8rVI>f6F45X zI)BW`^T1Ruh_dcSRi5rFMa84xvCnqH@+%e^A4q!11$~yhUiW#ng~-aF4R0OeYME2l zQM10@{rWw5jpsY%*yN8d+FGwPfTTiz`@9DxZh>R&@%9nniNZI&XOtX8Y0kUaA(7U* zXXN3|ULOyLb&w7YvRnpubCYm}MrN~H<=d?2?*?$p!3e{$5UDi#F;E_I}RH9r^R>|2MQVHeG;i8%q zs;33LS)+AwO9#+cO+jZ@lE2wXsUd~u7x5;-`z)s+5NM%ED#&Q%jQ?3gLW}=%fjycg<*MkyyZ8n(qtf@t6PvTyuo-OaB0I2u;@- zktAOY>cGy1Q7F(3!^r*Cvheh(io}KoN6iFHm6-Em@co~4@=818HbnO|LIb`?6H7T)UN2557=Qjtt`-{86?1( zV65T#si}(2A2v*wB9v2VQo#f0c-O{M?zAk7w|kvx`rRa*A$l#{N5}nV+Iv!;Rm{z+ zn}o_N)y^7ofkkt{t(%N-$Pk-~JR;6r3YQp`s4ra7a3zb+GtFp;Qc1_|Pm>DfsvE5x z(xEi>F88Izp8{GCzpDvkw?aHoOS>Jk%0dz49svSpC-#Dg|2fpTp3UXzqURFjAK}r2 zuhCxbr1*+b<_~{{Zkc@B$~4p4A8J*jyks!kQ-e)PqLh~yR!Q%(4ipw(dKmDM`F`t| zS3ReU)LZOS)bBBib`t6sb>f;K;}2%yq@8HJg>nfQZA+gCG@QERWA;-W<850 zSUhYYtee6=_t`6Y*jiLt&%rKgF}24(*KbYofsf2!N~~E$T>n7h)t=Rc4A~yi4h)lM zK_ww*bmM>~XjW37=B%E>T6Y29GnN2-%LKwPo-45C<=aTeEGiS(^-R%T8k)IxA+RWLtL?XV>f@yKOLal21Lj&d#N?UoUc&Xp~o3$(VAb+My7tJjc0N8kQuIHsff47(| z-_WjjoC@ptSG{dX`tkhuXJdo~K^*I~EopfKT(<01H)$a1#omd2QTIVn zVQ%-)N&gHm>cQzYi&aKK!foqWJDhXvDM!(j+f?9nT@mvjBLO@B&I=23H8If`F2Ti5 zK%eCs)}wXO@VJ&*w6aQ2*+Lqe9GZpTiy}-th=ztk<7i!iV0A8ig3Dpnfbt=WQxd6K zknlZr_+>F>&nLRzuoBWa%1xweq)QdC;#;shul}1_cMElRzqs^P!HDwZ9H(WWcR1s$ zEMvzxe`;Z4x(5C_U9gC6dC z2Cejr+Cic(S^(4i90E=P@SqfGkb8YAA$Jat{p36MX>sdXgu-iYu56_Cn?uirocDp> zGQv;02zt*8T-xah)eF}1S=NH9*}vtWXlWjF2)j5+4TGw|v6a*itlL)yj9K6m`&EX7 z4VBaXpsR}A6Z+^{I=i6D{>$6*Hm)TMYCgnIVTEwPZs|J#w={d$^mc2CzAVM4%yIA2 zjD~(vB0nC(bCb34>E4!aU5`R(ZV7~HD8lpnN*c$bwT@|p4k_Z|w8r;=6#Uh~rHpR= zl=UTYFx|i~?~lZ5Jmt?l0Xtk_OQ-fP@)8dTF=A06yo=Lqdw=yd6r)R13e9>4!z-wO zL&sN|nj}R+x)KmpivU1CeHz`BM*pNg%7vDKs&>tWmvN(3iG$ETprbj2^; z$zc$*w-|{YXsCG^G#SiFv_RYVu3TbuuGpeI1l%N#NWcV7(K30`wcM=f2L93Q#%MO8 z0>6@v3a=rUN-+4C%j|l(@z91xI9So5tN4)uL)#0Q%&4DnbaG&;4ORA328qO~v+<~@ zg3n#)jfUqRguWp9o7p-%l5ZJ7<{6YicFDLgCC@MdaHiOQWE0wF%}jQiAo zcoYj)o(H&7hlv(LjOeUvrPdlzN4FH>Mt))|c#-00e*ObQ{LKWpgC}rsj9T9H?xPmf z;)S5K%y1u+isDzNx=YWt+s*%{4k8YQ0OsH=By$2uFi&*w@8}pHYh)Jld8{l1gU>a- zKWarraY}Av+lZ657hkfjE@Zs?3TNXXA>Jgdtn6U&2Wehq3p~e=)kBwqhn`AeP!UA- zgenD}Tm!qD>T;=mXl;wM5_+g$lB(1S_*yai^Rfdq3jWPp3(zEAqC-b>0zmldZ?bJp9lXo-adIJaO5x=-J?(Wg0nN!jl@LXyb;c6k-MCG{Ify zl_80NXwW5J12|44b5bZyXvULE=Y+;+JVt807v*)BXZpW$YV$)F&cWFwBhhAsVKd1* z8_k=4`KDgM`SYc;oA*g3c$=^0btsr%R-v8PX5-)+^MX34Ra?wtQauL>kJ;Z7f{^+0 za(}Za^&Az`YZAZQc_yZcu5je_s2bOJQ0H%2LPyLpYSOl|V3Glrupd+By z)X8;;;R}5F&X?#1q5q@>Ui3_Pf&c?DNTMeONj49iJqkC@igY;4X=Fd)bes#SfMC*= zicy@1v*2!PBI9K<{W6v8G?ru)vKhCOWn@h6^$O9_<%M&!%5rTH1lRa~CO*An{;&~J zQ@c0zT_^`I?@)`=ZRh#|X((*^qcVeUJv88SubJu%aa`774DPatPU!CYox*X@) z>>K?GgR(Yxb`s8W^SQni1TR43d2$`tPJ$9-1wNcnT9`4y5y=rZhA-~4U@+BvO24Xk zC=e@jaydA6zh?icPdvp?7xt65i<6NS{CE9cNh%c1PEH+Yqv$e)MZ5rkldp z{#jyvPln|AT{eq;VgrXFG&W!KO&tcy=Ia!<3Yyi5R_?iYXF^pp7_BLkiV|s+Ne7$E z-*d8Y5I^0o4sy;{RtY3w_DraXos@`tq$Nl=huxwA*T??*(B)L-5U+T@l$}}JgX1ii zuuc12MWeu53Vi!O)pf`8AkJ0#Yc@&m?I7d$;~#&`T@>Nf_0)PB*m$wFY8{DH_c(Mu ze@nGt_6Re>BRixTv1$HYGC{cktyN(~TB{4TEqONab&AWVZa}P$drnoOW(pk@`!rs(<|Z}@$-64+Ld#GHZ)mUO8L&D)3B>zdT3d`#gQwD zaG9Lcqvt!(9;^w%q*$!8)r8SiJ@ip(%6=oe9p@iyXI`@!e!RJldIy1H}2xy!dw3j`E@T#CipxS+X; zA=t+y{;-g+Sk^+eYKAIrpZzE_+B};vUO6+hNUq!qTCq!fPgr18rH)l39wCMK&AD_I9haFKbsx%Z*lm0H*2n$y$a`LwnD@+z&_=`+*H#8AuVa!%9^BoSvM=&&-m)5u8^$-` zP^c?hA*0rAvCc#$K^Qxl*te~iv2ur@R9W`OkKVr^D$+EMn!gdc zg|r7%fF2*NNY!(E53ShI&?h=Af+f*niq!czBzJE)F&wO3fylvs?eQ;FaT8)I^^-UV zi9RYE89Z`m=#i`)h9iHgzY;1!yF^UfO#F27vX|Oq zVpcDq$HBwe$4Zz zy)Hf?5rYVPcbVOqsh2Ugl&4=4m-V{$6G^tGG^>apYY3gFlLEQ>lE$33(_gK1MpeKev zb0WnAGj>V$X1Zc;K6Yo2{Nf!n#fF8H8)e<5%-Z8W_X(YgYpvo z{xl94(RBEg;z9eyc~8s&1^_ZXI2rrc9l$l{bi9dk`KL5Lxa=P*#kA)1<7|gTnmjP8 zWIJjv3}E?Y_)oygPp5MOGk|&=BX9o{vRK1-J=!P!9;#{uj!|4cv}VkG&48niViTPk zsCGcSclND|0UAd26X77ai=dJEV+tc-7H*z6*966)MhD`LGg|-UzZc+Y$G>#Zp=b&A z6gW1=`BfIu zgxK-ASBZG&8mhwPPa;Wq-`gZ}5cav@rPIZGR39DcCOsiRl1#o0`{T60tz1i^N0@Ov)8WaAi4^TGMsPs-+^!I&a|8iZ{{6BZlIlo>%)y#{U?^wU2FAP5cP{tN|VBtt#v~)?J z^j=ijt2VcMdx8PH;(4pJYL`FFjarStjhpbdAX{f*MIcl7W6e zAaa5qknf?ptd%~*BGEIODPj;~fRSKZSau_CM^mB!qNV*Ni|;!gfFg-0N4{7u@?>Mv za3uJ%_D8wg5umB2d#9e{60c**YPn|Imj;;&k5h_ux zn!AwganW;i=mmm}2}4V(r%r*SzdQURk_Gr4tjZ3~*kHXAI%li(7yXTDCGpMyE^t^k zz~c>8ZXW{d?RVQh9$dh>ZBy-UENnPAAMGnDw*9-Y-mpc*P;L>D7wAlfO1c}k+V@-5 zH@i|EFRmIb&W^u$gAsL3Ol{uM?g=en3{i8c4we?bjkY0kVoO)Zv3k2G0z+G`3dd5L zqPmdOYtoA>FKj)`{{0vD;)uV(2q%6gF-2?OZn7FarPvnuOeYb#c-;7AFZQI4Mb!^BqJ zpHfeF@QT^*{Tn>e`fgpqwxz6>9jg3I0Zl`nc4AJyZlsx|w);14gNoBFp@GK%K`gTP zm{HkLo2=TYIfRYgZ70^_W+1ZcAX$_1R2CoNATFDQB3h1-t0a$OGP6>@#7{d&TNc8d zpfb@b%O0u)9XZFLD1yjqBsgz8I$&Oo1O-XYqdo5iciqg$6oz-UXNC3oFG~xs%>Kr= zFCQ-d9qPQIh9+^Nougg4qtk88w(6r(x>^;kdT6Neczm)Pz2H*rt>r)g*LY6qpM`*T z38OU>oikaM&81XmEX_r#+4~c|?+uGVy8vIpTMWr`mNkgbK}{Y|)}B4u64)C)Iim)Q zS`Viyqkx^!{VFNL4AoW1tZFjX;uO*{8 z-{Pk#sZ=3JWuea0vKt3wdqOz$T~Y2t2?#c@K6%D5A}Z?#-))YUPe_mA6W`~#H1O_FZ_?TU|tX)#%>LALDMedfA4=)_G-h zfJFsJBhVLy%FA62`x(t!G&Ai&vFQ34j;AzCf9^4BG##Q&jn?-A|3ubA5F9GwJch#7 zHJoJwN@^1HJ3Laa-MqIQTC4btNiB%g1PP#U7z$+For(zW<%jS(Wgg#thXYrzUNGkc5lm} zQRTDgtztBqR@}pwXb`m{@ciKlz@M?+7LgU?u8y5q2`g6h^KDrK#iQ`v&l?k z?Qc$vYAJDGOXgBgx<#njn=xgj))1e+_X+M_rd34qe`>4EX2d9xkKgQdqR3tM-xC~6 zk`OTqc}vA`$7ACW75lBce9`#zwz)`0g}q~Bq5@4-0hlHcw`;J-Hy6+@Ai)6t$iF}^ z43){$A%J)DzCG;JE}5lM?CfoEhnHCab^)dm*+++bup3D#GYI~Ja_(>!iIS&2Y=b04 z0_?p5pp{CUm#Zxr@_02xwokKSk}c0QN`_(4Sdah0jTZzwoL&s!?7TbYe z1fTN2Dm)4qU_cv5X8+w9D)M~xqxR0Kd}Q<(<2ur6Av&gU}7^1&#J>+*#*vkLhO<2kx-ui$@vThrS1JwiUM?fM%N5*)vUr(|f0lNC>QT=&0AcSzkLb zoSPLapE}gOCu$7iLrE#3t4-O}zQ8-q z;CHZMc8{xMpq&;`;+N^IRPLBLjuOmKL=Tt74JT1j~UyyG#FrlCBY_@OK->|F)Xo5Hd%5$^J7ZW}G@ zzb21UkBBE^FG`_%_+@!pCWJutTmAo1`a@eu@Qt7K_maZ!L?D5<9zB)8qN|* zK|d`D@wN{2KBg&%s0=&XZE)Br#aEMN^FL;4Dsjl^QmK`e95i0-ZxW` z3Mn#6vI~nm*2l&d3meM*mPknaTEmr7(xSDxS+}afXJ6Axi(P`tp3t8=y-d4VS zg-iYeM^sj565?59OH|I2=jPQ3mP@ymR(|fzGo~r4T#+BjU@*Co1kd4nx+W3T`48_= z9?XD~z5JwODC??x5W%)_>#4RHoJn;nWjT^aK>x$3cnTKz)PQ7X;~r`62Z78_d8E2n z@{?u9e>ebAa8;&f+nzuLsp}GYN7ltK*|zZAAI8$+MEdbQGIj<4`Ox$|19`gFDatK1 zyBDIq3N^OfVrhvJlrxKP`7C^Qj5%4;FRhzUpjFyape!X8RhwKE&+!fQb>Ua{v(Btl zRJrbC!2;(1%Sxfv29I#W@4{shmqd-FM-ziZr<_UJwl(-(zwU8DF?Zf*7jbrCMLT!V zc1}@32YQO~h!nHMvw>NyJQ3X_WGeQSg*_dU?i%LxV_`{{paDOC7p5aF6`HZ8(ZThU z%UH2rz6mHRZx+HfM*{Ov(q89>Y6m@7!e00}ROh%+Ze^I~5QcP5$=V|bxb zEBd$S_;p5|wx!FptkF2}WbW4GDM1sJH3kia8P6{zl!gb)iH}3?j}v~e*9}+Z@6rg* z!2UuVIW_wvoVJi#b2yODssLqZJG#K4G^x(N*ie?LASgf`IcO)S(#Q|Z6AF{ILJguF;0UV0+u%l(D^)oStqLl8oSPqud@d&yUo$Nmx=1}l$`72L<-s8ZD@QI<3lzu zgTTXv?faYh+V5v%m{LJ!pqIm@?2`#TV4_iCQHC>Mg#)%y*D%(+O7jn6G)LTr363ve z6-`kU_p*Sm(O75mp#!?-$CQPkhwj zEZ8X38^cClR{=jZ#YQQ{A81)IK3I@x&gd?N10VwX49C2HYM))NQ%-k0rCuceAlR)d z=bp-xIxgO4Q0~ap`?DAfg>Fiaf+EkCi*EeyjrF^QMdUv17Gk!$JkWJcA$nCbC8ZjS zU2jPNW`)noWu2n?8RQw}ityJZjuZj5++$e2)y)G9CVIqwBuokcAY3bP!@2GlYLM+s zgi`EqbzpQ(D<0~ClD&CA@F;!w#7Ns&xCpDRRw};{1b0T)CWF8V&+-FQ9z|8uCsVZc zM7xEnpdG<1I21ouLVv!wph)EB;}jjL1){nZCxevA6uV;-?U@y*j)i+<>lu7>Kxqm@ zf9H&&YZf=x*Z9*?MkYyz^bt0HE2IwXm#A+(-wVWueYIooJ-Ki0k)m4EVbSqJ3rFlU z9}YlKodgwm!F{~|B;h<-8$j@@Nr5jt-d|MzDLAcu(s-X~eguCAB(Cn=^ynlw%@8!H zJyt!{iTi{fzu~kSV<;tvXtq#)NdYxC^pAI6YfIO=O5TO`{8mKg^~*=M!fZchim39W zC1ND}tn*dV88(PdqHCuEKyu4*vxRSrq%`2y(Tt5NClA;0Q3NvO>WA2S9TcM|jc_p8 zj-){l5hp-WJaf+r3nrKQP-f8SuZF@35SunP5j&~L*OE)6yqP>F2S|#@M(l(0kz=_L z7zjUSns^n+7C9D2LSDCOTvHN6MQ5DY6f zc-mozAQ=$8xUxmswO@*B3rc;4^fvDq!bh^Re^>&#(Z6v1_G2Pe;5FtGWQzp-au7Jo znQVT7d59mO?N_uVk(U!s$-OU;5F5Ud$gmke>ai-9zUWe`P4j*&@>=`1T4(x`=NeVx z*6ua^^?_Imqqx(cTvnIXY&^~n$}njEh_CD^gc&lHweVdEUOq2L*ZyCNV@Dbyezlx= z%jvX!!?7l?Fk&bJ4)BUtWlS_Lqs#)0+t$3d#V~SACKV5}(;_O!?vVMP|a;-~iqiV}7<*OQC#Uf(CGVq~`t-M8kIxvtbc@z^S zXhx$wV(~Q|l)6xu+eEW+i&E4WOXMlJz&_sKRoha{d=QZT|15wqJz%C7 zI};NU&M(A7ud-NO{k^LeuG#a-D;hb)Jl7wst7wedUl~=G=ej81_m^UhvY6qax5?JKF7hrBvrjB8PF0dB$ zL3Ke;F{z`A)=PP$)yG74?r?f2=J)wSYdni~d9;vq%EAE}5V*`gmsNIhgO@kn<#{^Q zwS?)L^R-qs@LCmjEOpFRZ%t40eY&@_ZA}S%<q!S24BmPa~e(jhq(IImL60;-blUc5rM7nk-;4-oM5E;TK8 zU01B6wxEQ4EY<)^g%UvgCtR6?WIWHsen&$$q)IO|Cs+5*RKKOOETG>Ka~1wE9~GrAv+2wefg^{&+i(YzmiQ zu3;dDRu<)ZQf6%u+2@&hQ|ve8bhoA;uS`YVb9t1!bQNfI&B4D%P9`+)^HyU{J3`}c z-fgB>_zGtRHw#rp4xZqH03Zv!cdoqe@nIxcBDk5S<~Bc8wLDqeXj_=A?=rlZa->k^ z5yXbB_hNG^W-0xM$bw$n8W8K8ccj=3B?%RRg3aY8{|W|TYpt!jV@Qos;a}mN6sh{d z#sn?Cpx)8z&abWt2hv%n&UBJ8>LtE4ljESiMgY~K|5#^$yPcHPbte9ky5NoLLOnc^uddPsN#_Ade0GmQD3B;##MlEjB%OmqRIq)knhD{@y+8Aj zqcfiSkrIY$j!T!qbOrZq-)f!N5|9Qc#36o}GCbZ!yKZrzc8oS(E@tBRiz_b#Yd5XC z=z;sInP~eJoV@fMD1|Cb8X2BP*6)smJJ8=3*vIl={k_cNUaWf!sna;k;2nhRYxLgn z{i_YE>cvGQB%Z)*f$K!gwgIMdW7|_$Lb*ga$C-_{Px8%dKdpyC==D@3{Nz8~+a@dK zKpkkS*`RJoaS^o>je1QzGuJh_x4*Wgu-}e-SWx zCv@d*Gb_PRhd}W)-oSp|BsfPo#}*cTuzu85lL32g5J0fxd$)Yoomo=+=l%kBR5kS- zaKSh$;L-@($3{AW=V19Qj(oSpBtj?jub>Lq(yLCatWnMsfrp5x1z~(u#E&zSr!0n5 zcfgU*5e`;Z_XH+|r>%|7EOeRhWMV+9owP9D^Z4eJ^q9&zK5UG~2}rGFa=8{oeCL|R z1ZANoShb`CTT3k6aG>mp1HqC&QVa(54P0*%veHFo49d@T#f}fgs?T3=h$mk>gSClc zPL)n3q)AcjbjvW&?HFM6-zL?cCmGo6y-1bLJbVqoU@iinXJbqJabkX0g^d6z?5UL5 z-Os%?LY2o7tX2sQCN)DT<@uX^R=cO{sg1fYDPYsu#4KjxIL5w5^CPQa@i8($+E0F{ zb!e#^54eD#6=*R4X0=X-%2d+?VtAYQAB41}$lSiTOO2HW*h& z(eVWZX8+r93azTuT6Bch|EPM)s5qi+TNr7e@y6XfKnU(ma1HLB;I6?Mm*5`U9fAi- zkl-Y^li=>|@``is_r3Fe)fhDfP1UZo_p-U>lpJ08WUOnzE^!l^ImCI=S&BVb@sn56 zX;y<<*mjqm7`u>p8x+E|1d6C=r#dW1J5S>c%epo>tIpcf1H) zyYbxR?oU*-DjXj+Y(ehaAu=I54IU842ZA%>z$tKDNzkQhnh_29*@u~M(h4=V8r+Hy z0p|f>`e~`D8o?dC-^OV)NYN+>xcSPE0M0V3LbrV`kBuz{Tu1)$-adBgPP+Y(%g#4X?PvCCTF`UH&P@rPO(Jr z9$V3>uP$e>1>y?kn=#A-f!qLMibv6uO}$g=)^5iT$J2M2{X<5%9wX~`qy;DaoPKQa zmeWNa+5HH1Y^3`GG>Flj@;#~`Uga`zx9 z*C4`4Duvh}P445ev&2XmAV&uN18e~d|j9ZFZJcMsH_BrB)KcDb;RUJY+XmR(iA_i3VMn2%~nvT9x75A>4 zNtJHORTaBVe%5lXY+UxFxKqllq?-&-emK@As%Xyor)d*ivZ~^4u+RHw`StNYrT%z3 zbFk0Hfci_ob!*nmbdt+N?-(5!S|9fBV)9H!s+%A874i(~n#=#R^$oEB#4-dHd?r6J zT}K$BwW<|%su0M4W%+j(R)J~xL52)9*WWhzQv2a~>{Ib#B29c?xWlR6_eHk{et6Y_ zHJsmMb$neoXLrCzshyS`w84epyq3D|JqQz~38rdq(&FO?VV2p?;`7`~nYJrP;!+cj zQTTlaV+Qk;u1jlL7aXWKEdzt}t3!C!p62~BTz`T{`=m+1{c6V{{rA;Yscr_tK4c$H z5)JYJ!O|C3QU-;cTKV^tAquXVUX3lE|M9A`a=v*W5Rn~>8N*~Z%^dybf~xzWsj2j@ zvwqZK`&X@L&mP>bb1xs1lG^e?#BKq+M@vI*C_BW3r_!{1rGE?@wN<*UI2FEO?ek?S z{_2RmDCsA%t&;mG&u`N!?;<(jo_a_N`ICUe ztR`AZ8XEUiMnqhfhRS8xlS0yhnwWKq4wDXKDP_%#bWhCy*%SlV#f(H{QEyokBR(ag z&@k+$4qm;SW>WXE&)|vxz21-^Yi5~opF2BY87z|1$1sBo7ig z&4<2wvDYyel-r`Qjuol83&%>AosdZf&`zLR5xbmdiIS*X!M8hqRJWE z?QuzrBx?m$DppPAI`I+i7&f+~~bHencU%gJ<)|J8J!l)HRMVtxu4Z<3t@7O#L?SE18 zev0Wo;Bp=mC-?2YC5%$j{P3Yocfi86pI(-sNLBb$EjNsqNqkz&D8^fsftJG+fA$W0 zw*gbfPNS^*J?GP}2SWyI6-`nx^$mH4=pQvX)Jq>Uigg&r-qr4mWgDPWe{pG!lkGjf zhMD!}Qfo5I8%2LRA-W&4h}SkJb>rM$M#!P@#>nqqRz|xY!Pli9nIQ^nnlm!lpuJpM z62fYl+?C5Xf3rdYhO;cxWAo6U7`oKtVLDCyk`LA16+g2o#nwc#tR15Lg~fdZEc^!)T7`*NPq$XJ3hrFTd4@59#ID3bSX-`W}Hq;91IdZ z+g_J^Tg|2o&ex+>3zzgr^^1?R+n?bVxERW`)CT6HpqMwAm3#Lt{3>9%-{3=u#0N`L z$e$TyEvZL2Lj9K1_lReT36N5n0wk0Eftwz|*sj>dg5#@9hqiL(D36(!>884VJ z`9WIx43nZAq8|iSeV0PmQ+qb0{9b=`790=k6Ss}PED?Pq`(_#dtD<(-6uLEnV9Am%l@NR3A5*2U0j3yjL`J_*A#kq!qa+_RbS6)2B! zbLX73kr!3O|F|AMM7O_ioKAbCxA*cK_M-b>1>xXxP86y|6b>Mc(8B4 zSQvW*2+^rOwQ3g?yU*$k1-_h?UViyJz^kpl@v%aUGxm?wYzbpomaw$L*QbWR^c8=` z50umB>(gk98lIok#Od)Xq~7a%IC#)(l1sI^IQzbmsIMZ@M_w_*^X(f(3H1|g2OO-j zH%!?UF!Ot&=Uy;DFq48kThR}Nooh;QR|%)G|pxm6}I!Vvph(WWOt_mUN3 z<-)#3qr%D5Ca0mIlbtrYmgr`Xe?Pu9R(Z(2PrOb*ASm-Pcgd#a-noH5YLM@TwS=;2 zc}4!+FS$Hu3w6x*jwba#ZYOu7V?;&eXn?oN165P z`K1lZ#gm!8*ojbC;Tj|F%#v?^v*`o{!4V@e?n5^X);v)+#oER{tCd$&XQbDbT}Bpv z1_)d;t-x=+`b3Cv@P3OqUG`KVUcCtXbDJomOl^J_7YIIcoBeS!s2NUSTB+jT%&7PI zVI56KLuz4^v8t4Q} zVAehT{m~Axu{it>1p=0H*P_qpGxtd*hWjLn=At!ztzO(=Mp8dM2oV zA)QwNz2deA%!B~d*wp+Nsx@FObb0*Vmd2L(nTmy=r_6ds#lhc>yu!<7-W&q6?oH;` zFfivp)s7SPtXjB27>SVXFU~|nt)sNr7s+`(4$i$G)E&08H3JW65VeqE)60?sw?IlOKds`)ByU62MWr8<3`uF?_JyIKf%af!>fckL&FDA zH$QLbvB_x(p{@z#F=rCXY0LhpX`h&9d1@FqriCgonH{+GT{01D-u;>l7xySh(a+JO z{{c*(U2GZbUtKS>_-2(ZpF^V=>pnNn$&B5tTt&dA@2}b=fBR7?&-R9!NaA)LM>A(> z$vq+DBNr8lGL4~fZo#k9 zF9lVrI3$w+J4?QAtDqOXem68sZI#8JV4HTfL}qb^AgsomZ500lC_Y8@^JZS+ zB`bSi+VEywR^Z3=IBIqJBsJtQMGI^ivVBLl%-H{ZSEoVJkxi(NgGD`2niC2SOmjtx zcX$-Tr=qCH#-76t>oxofFpc#q&+eeYB%lcWVw=(D$E=thBwq8wtQe@QSe-T0#{P6Y zYei&#UY0MFR`DwyAgket!DP&(_pH_o58bOq&$9( zisZDq_41BAe4NU+&R#QLbcUaAn}v~9VT|$^vYdj{nDbMq8b*L^X=^5hU3&-j=Un`n zOQPv&vKP+IFX#$Liq2J5pO^hdJ&|`_m@)9d&zD0QwvX_hza0VH< zcfY)p*n!OTH+%o7|NkI`f-PG=F0fzcyl8yiQ}P_^g|GIN<);1i^KHR4zxatd?YIt9 zx*|vz7`G}*gvh>GKugtpP@>I}I#X58g^+lq40}bT!9ye5)-0=zN~e(=89waXBUrBFQTCCPwk`tOx9%hCgzNQpq`Xud%Qo(cn+FQ) z1ydh6xA_)DpS|`OLVg%8H_hX!0wPi(FIA@e#BkZEf#G{*rGv12aCsTsxp4p>G1K4A zw88<^QYgz3dA>D&n5sHA98;yIWE_=?>CW|WUy}34gOV)`1eE$x6)ab-`DWHsX#zwL zToX?6cx-6uFmoE)*Fs|3?lVAWDh%g|)y}d#-eBWT`4| zB2dB!Isl{wk^v;(qVL8jcDw{v7ULN?jFHP9Y&_Q7;~US6EhKov9#wSJh zPG{&lWsS0vq^lxtM?1gh7>Ac5XU_xJvXK~$rB84b9oL97+_I$JI$y6wJxl9cp@DOm?xj3~m3gm8$v8j~|MNZ(^7Es@_F>D9$2oIe!E3MlUps$4X$)v6@dw?TvhYdAYZufNDTj>lKcHQ7J z=N=n7VlIDQ2*qnx<sO#__r7yYxzp#}PwSEYppHD@qfWIMx~>5(`5 z*5`mWA)OOv%F4@MqWUJQ32I$x1&bB=dJCpxMq3M1x?ybjrzX_|iG%{|`XoQw1nOb7 z$)I{#d#U&LGi;{EPq`--pZl}DKW%4!y&1jFxwz{%`IoaLw6e1dusQ6oSO{H#B5yt= zDn`{NAO`|%*z!ZG+O3d&xJ8}-D$E`jf0i@zkDXx`05eLi41?}W9Vds|u4+#%J;WZ=93Uo$qgoS`=yerBFTfQY>dhldXm2qqoEE zd&S9YVhASafrI7j@G@2s?>1%-|VZadA`5|rgQlW6d`MNJE)rGb;h;SG59O`#wX4WncMbhT@3 z5%Zryw6L2kuDx3BeYxBdvEs_S%mPOjPqB3Ek_e($t|hL}0)narWNJOVL`Fldxmqd6 zB@j__ooVoe{`90JXht?MRk?>|GifraR1ss5jJ7CATnl9I*k`!VmXAvGwYnvWJlvHk zqDxqvG5G!tDV#a~#xO8S1w(~nJ#HF~EU0Gn=9Q9OXIoe59iijhI^FGz^ALGaKd zzy_r9&L=1dYdscGzea{^K5;!5=jb6Inva_rODtPrvfG0N!`M7#n~m_Nw}Gd-ORc4~ zJj4kjP_t5N0>HoR0mxu2kDNBkN7mwG+qN=Q8B*93D2d!!rwW-vz7PW>mcrpQpuY8xzZgD? zYcwSh`Q8K|QfhQu5jo)y-ONjiBzm@!RJlZk}GTcx^7l1H89)+tVnsft5v6wLxI=aHph$OxcuxT0Z z-w$B1AD+@gKnHGv!UrsoLr~44N@9iM)7$oL48-M<{wv3R_z$L}Z}CInND zdE`jrj{FrDJnMuS>_6t4;I>7uJT9M2W;aXs;S*!!Prs*(rwsI@%2A)EvJ^QB7{uFCW7tpE zf~`6JABz7*7ZD8%pJz&k`j~waXb|)FCvqPC>FYhzHG*tWe}NEyS4SWbrVblm%Fal{ z|A|w6@P!l#6Fnb{mAZlDGPH7moiU0`z45!g+!6nyGhf!B@)b&qU8$V7d!X1Ogz3&UPQFH2cKP)Pu!F5Y8 zA=K;k31a3?Q{qyMd)Kx_63KnO)+>_5qAL|U0Nea+VK*&CrZ~>XqYSoh=v0lE&V?A& zQ6orPV*RfCw{7%2kQJmbFHe(!Oe)SkcT0%e_%{}!T$jh$`CMluEVn3C0uvGs{Xq=Y z)!iP=t^|!gk*-lB#X`S%^xUD7@IZ{}y-rpA0l~ZBL0%0ONgtB6W1r6}X=|**Htt0q z++w`4f;rN_-#=fEY;7;WtZ~mLbU}CCoHJjfQ<>xh@xvHj%(a1h`KiKL!lSw<%z~XQ z{zZ4H6EXGFkCipX+kinAyCGV1gzwcEbo7TjmU}+zT$716M6`GwQQdTeX1RE>)!DEWQl~ZtHNNA*GpXd>A1sdUYHW^Z|xh z3t}@@tuF)ch-)za9Ip}q=2_$+%{Lp<{;?3TZ$IyCGB_-w2si;|e>rJNEpVQyH@uy% zbC)?T4}NXJxUrv3ka4R^u?>w5uu=v+bH)LNeujB)jY3xXOQx$?TKO-15_&&Ns@CRj z*}t-8B<;-NOOX<$pMY?`L|mrDE{9d2{lN*K`kH1~08*SC$YsJnM^8$V!Doc`qslEe zSqi=mkvuNzoGL|+4wdvLjBby_HDby7TtJvxO>k1k=r#x=Fq0WQ9sU$%-iQb z&e63&-D84v<3omBeeE{GK5+NZG4jkS29qXsN8m6T1UN-s$WJ?_Xc<$P<`C=QW6WCP9nLup+arN-2C zR~xwLTrl-lx*H#Xd)JE_i=lpa=abK$98Fr-2bm5yOecfJTqE!+00IJ)?V zQ^xdUk4F-j1m9NYPl0wV4y;doj**S|5UUAAo3L-_9$g?5p+NxIG_9%fwm}{@+(O|k zzDpGl*`smE@~Vl&Xtqk@Jz3NFsmk}a$pn#;*{X5Qo_VS3%$Dq?ap^-X)|JvNuV`WXS z&fv~UH#Ws(LwIoY6xtEddV=xIo{rue&Ry1;iWVYY<8glceHy6%&Id$|Zli|&1ZMid z@f<{9Idltx(D8D|I*+|~64mbC6klC-;vUYA(m0qffJcN^**jmf@iw}1T|)>s8jBx? z`aO#6^fM4(eJsek=g5BUXHi;xI8#OHWskyG@1sf8Fzs1W(V6TQX2cBuv3U3v{d=Su z_L%ahKP6?+m7X>8z+K(xwpt0>ZPwod<&Gg-q*;L#4j$Lvy|q+gXw3Hdcz0JjAEqJ; zsilG57%q3d49P~?bW%PbOTsKl^96I;&MMyJi9L5=xB6Ypj*@n)QOQc!MtS1nzSEJH zK~oW2djiYQTPaM?H^+ze7|k^DZlC(cVu=A#F}9YS$UZ3T+CQJ75~LT(y|_zA28kvGNY3YZPxv{Oj2 zel7H`?6ig10Re#+G*sl^f-U0F%ty~xMc;OLo3Qh+3&CfvL`er{MtZ@Bnbp0B8J3h@ zjYO`ZR;IY>V;jXra+9sD{ z4jBjo0ogjOyUMPgILx(+(wq=|*+y8TIza5hh{-gMDHMMucU3Cpp}&UdJ%81sK(WsG z3FqGpQYxs#6c}E=sH~zV?8!sIfQw~>CK!euXMf-S>7I$3XELE111^Z+yr9RHyvUr$ z>3s8HDAlWpPbAe6ZZr{J{U=K<;GPL+cKog33Cb7 zGHhWYKI3UCJPc>S&?7*M&UUzJheF~`v2kIove&G?$z@WSM2`Hd&;KUV@LurwDUU3e z6Svjl=(=ejbOG6?xt-uGeQ-eB?}HjTm3AHraVOB4k%$sR@sJJGZ@InihyPHY#ThEt zd-exzR}Jw|p0FVP^10ff73q_)l^WMp^*UEvo9S5uOrSPd(8G0H30I zYtz|sAP&pnS>B(ZQ+7aQ>5V2(oZ$rLDa#nwnWRxv4x$*1S~7e9<*lMLA0DsZix`pn zU8=oIEt?;atObZlprRP#-wx0wx`e<)DYC+l*8Sn?<}n*eq?;~LBDp#>*Co$6fA=%= z8mAcx5Lu!Qp%Bvzi3t2e$O!n*fBpr{`^*{Hgk=T`(R3|R?ARmz`CHu|IG=Bkrhh5x ziXJ=<-O;R`&x%-x=Op0T<;;rf3@3IcJj305t4`x zE7a-r)i!7qL=%ucJ3n@CFkwgKTVUwu-5}|A051{e_i7XSbH` zZzi`LBT?TMwLA*rj(4?OsY6*IN{Y3OH6Sg%yHGhu;@SDxIpN12CVggsg;PR7p5Q>` zQEsnZV?I8KO5ESg${TGa-EerK1Z$6C5lH|%>f{4JOObp6bMEuYyH^=l$-u8krZ3Ps zPx=SzK$uO~zYVv8bvT>(stK}(mgcP#yS(pGpXiG0K`j``3$VYt0(SvQ;}19?6#fsG zX#QwGGEp%-SIa&fLec!6*jCC8-N=D=B#ohPa4T|Gg#TfaA06-aN{#N!13oG&J_xBf zX>x}HJr)7;TWSh|!ME*{rf>Ly@I>PP@-_TkvSUDFM&c8(mrWKF#>CiYGDA?P{rX~o z2;KiLRY(qkcv9gdki?|*D!_^%aL zZLsxt;}NTbjCY?i31z79WbHCXOrHbFakgOG8VJwh9tHmRMZM}drtP>gV#~3y$Ta&g z@?Z17dt^VfVbX zLVeFK0fUYJ{aIo!c2&2${ytug#QDBJ-59c9ME8+tXcguG3{a}&6_&nj)?YiN#WySRd-h;9E_fDl3Z0!W2H z(Oi}tC!QBbL^)P>1D(N^Pw>}ocnXeeK~Js9?uk*K7NM|MFly})eJ*qx>o{&VZHeFMGQ68+*DE~$W8{oO^#G$y$|7=64Z zD+(4)XL5bZW9~+jQK_|WP31RUC4biBlHJ%4v19X@oA5b=s8~MiSct%OcfotmEK@ny zUO>e~5dRnxUnF#r0v1G(%kNr(!cwEX5WkL}z?_HNxs|F9Hcg_;lQ^)OV_ZY{M$=$b zfch3G$HbhJB~S{ag=Fkpf16l^aHTC4)!FdQ$a(!yCWx+UHbD=;HQPp?_g z>Wx|Cl<#_NAk8@ltkPr^yiZ3q@rL)Pl{f>OWs$JY&|+t9(~O;d#|6oGm0zya6a%Sz zOn|bZoor1i>)FXfU)W1)%F!q{lg`^aY@~5VfEA|{0_mJK zUi-($JTAR6u)eBr zD^N!o_OZ9;c+8bamv-XA3l3GbpfO9ctJ{e_(kRwA(D^9pwi|yQG8g@-{xi(;4G`r7 z)STerX*fnCF@=kS?z5wRnmKpa&aDPYWnlr)iYzW1HIyFZPWBF%Hs!C<2B;+fN+(D`Moc7J3~P6(K74eCXf|C+hWT zDxNIU?ksgwR)dyzyW^G4Wi>-d49xn1Qq~j8=gQK?b@M}i#5BUd5}y$)b>4#E)Tk-p ztdhI>s)4^o+Etr zdqSlH8AtpXT650hdcRBi*Rn4u0_P~rQfd{n3X_jZg*`fK43*rs@an4AO8tWB9BYKJf-PMJ z|Bt*G%!Rr(D#{i9Ly`6&Lnh=`?LhUHBJ`JfwG$&=x@Q^DbH9+g(0v4a+T?!c8uHDNZ+9JTma$8r;+MaZ@0Y`u`1i=E(~PET ze@xl-EHK)nAAZEcMu|xp^=K~$3lVLn{9PF!x-XIZ;_D^!PbOK(yVA6SKSoB_i+c{a zYr=oU+9=WG3nnY@H3GpAFvJX}R50^X4SRlehVC_6mwufI-LWXLtdTki6Y=;QZc7u5 zrr!#e)PxW}V=bYEx1Ipuk#KnE0b2CURw%V<3vm zNquX$ztt)oLp*Fd@3Vf1(b#?Y$HC=nV72_=q%di2wjfEf(&?{K=O>IsH4F|44E|#8 zIX@~(#^q^1jHr0k{DtuU>hAkd-0^EU_g2sL5<`;A$F%mGyW&k`#!uCJvDm z0QDeu#Y~4)>wmvK$G|irQ@~=#Hx&AOX%$xDdoHDkA?m+?e1n0`s3_MnAyJ9Za9ipv z<>O7}VirVMq^(!KD^fL5w~iG=#&xAUf%WX=L_8qtHBC{c93!)c1)9Wy#S)ux*0NL# z5+kO90PmKV6@?#=VFdI%jb!->XQoG%PHCHS=e7zLBnF|-9SxtlRV)dP=frFo7Jb3K z!W;#L9b&?;5t{ydZDB69dOQ#)@HbfY-O%s!K_YQ6h%7Y-;za`6k{@^Py<=h7SfF&Ec}1JD;|5oqkZ*Ep<@k+mtvB{_4 z2LNIL)rES?>=rugNog+FmVnzeq}(0!=wHt`i%bl;alka@8XSXA7(fT%64}d6DmXFz zSI`qL@bKt_tP#y_RbxNdoN1Z=-G$Sz9Z0ChpJ1%~6wFmnDzy&2qhjW`-A(}Y>gFf^ zIe?(u94+lkp%}$GWr@vx!KRbHHTZHZrc$gvA}Z>f(amn&Uv@~U?Se?pFlbFqWe`Iy zoBi?Z9t`@mQ`&$kUi}Y_AGq3%}G18MX*3)frlBVnl32?AEp-1kk6i#<#CHpX&&eL_U+eAwtl>;}$!Yozk_}+= zOk=_`5l^NL_RsR8ygguL5D*CVe=dPwEC?)@L|4|E*l(^ZKLo9LH*g)>$mUm|GNo`! z2OimfZOGMOWlDRl_#%y!tx-pUThfk(C==}uGX`Y2ew>j9Z?o%U40>JQREb(WCwkWe zpOM8~cwr>^Jx39+je6^h#vzfa-N2G3{i`Y`EX7j(NZNtQLy@2^47eIHLBt*R0ml^mY;)w`k6U z5*z~(fGK}I^+nedM7U=@)*{^BVGB&^$H z4Zee08v|bab45&fkvbBQWhf9`yTm#Ek_4InT`ab4b-bJKf3u$f1AEh4Py^4V^UW{3* z>hv1b^lrY+ywPrfL!O@W2ii823`{lTbcQb5j&d3LB8Rjpp$3$OLZ;t>R#wJ&=miUh(?$f%OCM`rdWaC zq)F-+=S2dkH_5a7Cr1(Ubi<)V}YX7YZN1{5D~3}WL%Q* zviCQ;Z>YsM8a>`>BVOtRg*UTLOand5{lBdZY3No*d0Q}4m1rEqzjK5$MV>Cz9kn2i zYkWsyoIaa_SQ4LGzjA)U=HL#@+v^f>LZE69l^}ltq~Q1Y)LwM*wDp*?XXtgE6miKT zcX@SBVu0RtMv3Cr^-$1Qrt(_ELy>F(b>qiB#CmOR<$4LH_|Y56wL9o6U2ZU)h8c-# zo-E@Rsc3vQ(b%miJCvU$pKa%yUWp_i!OBNlxP(cx~rauf`z5tpcl3T+@-s5ChsTNCS zU(GHd1E<;Nti)uD&$u!tCSBDGgPkX%xPS@Q}Ai;6354AhhfVTXw2lrS1|9x2CuXT)phn1v1xHu=Z zh*4{#lY%E^by1s@G;(kMi1CnS=%Jfj&99HHmwtD#!(7T}p$bFwNx0*xX$Xd^7*df3 z8_D|wxx0L=T7sX%MMuP^i^8; z*t4APVoyV^5OB)rC~zTHo=C=q<@(RkuE|3t!TH*G#pW^;#Y`j8NwFHCU5y?`dY|vM z()=1dbW+24a1~A|JGe|aRDldg=02tfi=|;L6n#m9$4zT_`)YrN2He+VGxH&5+sY9T zT$g85(m>(pxP(NNON62{NFUwlhQ*Na52O%g)br21H^_rMoW8BrIqg#Aj_tnJOHO>+wJ<7lvI2+Hx}+S zgveT=i0pK5Q1uR=^{j|W@b+?#oLxQ%L58A#@)3sk(V~@?YZ~B+qK<{GnSYO72?jcb z#4gWz9XjxGcRuTp4ATQ#IlR}{B|tFO8(ggD2OLC+ z$ODRs467l)iv|DZ#X>8XUbAj9FZ3SLpMRUOEz#Ots;qsHC3YK7%VW98#U*v%q*OiI zaYAZhw-SR8Q1^co{RK{5Ib>zDukxWjzeIekM9;)S2{R*$fK!>Y*yLBvF6OT4EiGzn zzE|`Pa4Z){>gNRSI-zPRfW}pK2f6>-pMqcquplI=15_!9|F5H!paQZ!Mz_t3|Ldt= z9rOl}DD3kUP3HYSx5Zv_b@b3!1DyXqym&-Rt)BAdLqA8;ZzcI2YoCXC=7r>kWM_J#SkEp zq2zsz+kek=m*gV}p9$!vvlrDD40sXY}v#!)fi;i?-!}zh)A} zAQIcBg3{6u7`kBrj5i`z=>)L|fqegouLEO*h78+1V$>ZcVv0|9pp2^r6l0uI39 z=ck9ABB~LcBoJ&7j2|EylNdr`DhYX4bx8gHaRJC0fqD_SymzGe{(B)PSzjY9)>2JG zy4O(te}f#c^Vhukd^E<1{=e_)z24PRu0)gn?^tc~y%=bGGn-^h@xSjjN&&&pl#AZf zC)Hg4d#0m>hHw;IMzIuT?Gm%TsN%6z3)&#DM9R}Yyes1`&o`nKdQBCWG63-aZ?$n} zjsxKJInaLXWRU*nq2kFvQt%mMmqiYWScHNeEJ|NFLQk>({_x=iBHsuRVB8`7nkfbq zjvotF$h=TGhI)$2FRatyp8y>+>U0nO%YS|a9vp!<4GSqo-od&Bq}_M3J(u%=b9DmX zvM&|rI{Vw|S`M@aMm-r>QQ-IqVXZ_GSZ#sON~2njn+@A*d$G}aLpYV}KL(m5A;y)b zOvQA>7bW)7_l_~(`LWTg59J<^0M%F;+~%~Nq?LI{=m(4dI(;sXx&Xv^2ca9Kx&8$} z{sXC(M@D{K>QyeFZXys<*0=+P8!UbVlv^iWGpM7*rb2+HW8!jeYOgmEC$^C-=5-O+ z;FL0XiepH4CjkM8%C}+<3q^7`!zl{*!@dcLG_Mv72Uv8rnA&0lG8{msN+%3Jn79CF z%>H;jyx&j2|#{M<~3iyka-`*27K{43E-3J zP%$5UL>erIQ)a^Tn7b1GorKqkiAz z;_~6u4gwEfjl}~i`JP=IhVAFpNE$Py!O_=t%Mtu0Qm-MpwB8~WYYoWY9=K~6$8=1q z#z5{*Chypu)8OrE87&MP;jDtzol;ULlLw?ETrQik#G?K}F+`lw-n;lLI`KK)+eATr zWv?kHUmT3k8kVIQkSK9^oto?j#^e9zyx@Bc(_NTpS>eD!qV|hi_dw7#xN$ZP(5huO zcA%ICiM3HW0Wm7}^XqmMgGA5)-=iPf(0U0A1WA;W{lDfsi3D2*tCZWCobZ452$V7& z8?Y!Yx)Ql`T+n)W7l1FTEWnuG5Iz3ao(2ib1B5*-=45GHV`E8>F%;6?DiIhs1)5z0 zexML21AI7J?<)tQ{AJiYA=2Ua<+|4*#7}MGXaHBitp6V?0|ict19n!(Zig59UMJuHbPa<|7OVAn z7hkst5r>rF0K)u50s1E4YaO>OEIldDYQHS%T;+dWlX43ZQHh9q_XA6@13-;`h2Eb8 zyi_()N8FU{0nz%tL9u+wZo!wglch8GY`;!AUvlDq&HJ;aBO;^(%^(*iM3%&27M5bh zD`V@?0!5o;uo&a-;Xu@$&C|7CdjJRijj1D$@>~KNZxWDaD<73i;`cl@sL*YoKU(R` zjlyM;0MzNP%Y)&i*u-$*h1vmrIbfFKr+(_ctfs_5psSOdiMODz3_j z>7nVfJ)D<^m6uI#RK(bx%?-5te>^(;xY7c;)J;8pe_Naz%?B{r0H*fc;xwZIWE^_ciGufl z`(aZnijy35veJ7^W$H1wIR3SJmY#2oRKo0_;7QI zG=^v8Kd!=&bh`Wdkd}A=(8>%a1s9;1c>mCC__+KDf)`KpX*ii_x$Ty*w*gI}Ll&F| zUI>okyG#%b@DF58z z$WeK$a_R_{qIAiv?T6bY)>zEzrU;Ryd<(}28Ue)Ou{ai2$8zIc2^SRwfx>D$pb|+A z{6WW!WT5YIN*1A)!!-+yf6H zGng`;m@D`vF&?^V;Yl9Z%sM?KBvI@7=C=KGcXTw_>p(h)CUyMmuSNJN8akPPhM&~l zLkFN=8X{`NE8dcuj~+^o`?!ES#sK>KSLWK54-2Q>sxFiOZ3LbaSg@tVk^0SHcX(Wnm7>T?oSF*Qpz+ihZkasc)eh-?) z1G#`+U!Pf{EU)VkU~=^p>%+WNR}n5g>^?O&Wtfk?0vK_BjMpkY0kT5nBS@I!mlFjN zwZZ@N7}4cx1+3nsOCvtcH#N28s=DI_m%fM>RvNz^og(6S{ivEaMm&^RuJSMlIc-W! zNq+(|WLOU^8u&F0y?&?P9GW4MUOigOXnE|M06SfaxE~fCu?!FSAB9M*NkBD%s;|kK zZu@BuDzb;uJv{1G{!=d}^n89U#IMLOrX1PMf_>cl_KD=F796?{xRjImB0If z)pv-9xbDJS*wW8!tWM!^L_zUezwQCI`iqDLu_{nr1<&umLu34%d2#s7_6iK^-ft}=AUHEauUEW28GvjmViWS7bfyTmU51f zgb*vucU}M-?ghD7q;r2Xk;v!=FYj(sls!7v2BEgI&M#-psjUC@k>Krwd|UfiwD z=}W|!vRH`VJ4>Ln$`uO~&$~IY2w3j>gh|j%pV#^@#%_TY{4EzOD~-rw?ISwX4v=VR zk1UUO{hF`>ilMJ(lN|~qi;pa3;1Oqj`^VXAbW88js_`6j1;Tu#IAnn zWB?e#lZQm01cro}_P9JI(kUdX_W-~5?Ql@9*{&SK*>Srn7LrC}qy>});-g5{o{4e! zNawj3iIJ<_k+qPv;H)k3%7N4Rn74pc(A}%1Tz4^A5oQOp%F%ntHoB_&-|im-H< zpXpL38~M!EaTxvu5Hg)ryLp0oFUo=* zrmy!2w?MgxMRc?D;{kIk4SznRWT?`soY(bjU-N)QwgEuh@4~#@CkT)E2gti>f0Gp{ zr-o)}{%Ck*rVo?0fDGPT(atRgVE4AMXx%=d2!kS(~ z?aTvL?5NRhtA7mf_UNqP|1;Tw8{7sd`M-8cm0)BRv<}clfIXPS}8;QqMk?@ zO=d@u@i)anR_Gc8vclj!S+1Xch#%A&$GAD+wZgk6dW357;3MBR;Av7C%af1e8n><^ zk@NFC`)`xRxC;KH)9fCtd_;I$Z7!9@P}9x%5wD(*D=3e?kn&%#A1M#%uK{*~;cO$T z8QCAL16`X#c~x`sX#*O$4Pa|Ag*-7wE=q*foZ<^QY5f?iew2R2U)#<>m$@TMX{e7e zzAvFFH5KM)q4OqrUf(vUgDtnmd_J^a*^t6Yv=>y3@Gip$8PQ^u=2+*KcfaJznA7w7 z?izn9fp1=-X*6M#BSmU}f z?|xx?kdmR=s6e3`au02y^jS_Dy!sE8l$w2S-c1!&GeOr3AS(@!bU(Xr)2#=5@9RK> z@`lq?^h`58YtIzbd8LGrjxI}3>TN3S@qQAA-P&x$)^!cMTMls*($)xO;JjOK+#lD z9BOjz_BW(QmZ`mU*(h4>LYegsJ=IU3Riyc|kO-@-!id03%2kC5IW zCn2$$**>MOfd~bEXtRj|!YZS|&HJ8->JhrlmbG?soGeB=Eb6xxN-y zb2GJ-US@Ba%#8&##n2nbG`}T64A=SUM%&9W}CH%gtv71iIcRt;U=4GHd zTUis^!Y77REQksocrsKSchm}KoF(mZ_^S|!rH3xmH$y~qiX5n z`bFK`{`gRaI0vrhY;GcCXz;Edjh6aJyiTch^tHoan&UD`>~3fBwAkHG>7rL!B5kNX z-xl3M(mal3(z#;+tCtNJv*B8+xdKpZ`~gr@0Wb9BSdE1yIM14RAcZFesP0!dQAK9J z9yS6xpoz<$A^2T6;g~1(k%m~_s(JaZFpt&BL?&N0ZVjQWZm(^iubDd zgDVKG9|yFP#>dUS5u{Pf$B5k>>FOT4;i?QLew3Yug9TxO2{(0va+aPspEw4@hK~VK z%oG&R9Kiho?{Pu<_X_ua%>rD}1}KQ=;HrApllM+mHy20n9&!hq6k5aw)^gtVK{AD@ zuO|%GJeY_^pHKMNQuwLMX)Lzw?FFtM*PkEce6(o|3lgJ+x9V^>#7=ni`Agd;-}~?h z*f_T3XrbX@)H1YNYttt5n)}+ZAD0Yxot%uXKAb(SERt;fgY$^Q$-r{K*}1E9&W8)* zDW8bKNkLVXL0RgC@;74h`K_15_HAE5i#T4Q#cn>F;q$E?>=w#!ddQ~+#1F{=uv={k z@Efn>lQ@pzf7Sp&kO}}hfjiYp<<$1*iStEwx{%OqzcvHyuD8BCU_PCgP=V8 zLt{v|&~$pq$q=o=bxuYIO8D}j3jl}HaUrxD%CoS49P=tiF*G;@RPZ)7Fncl%a?`Id zJ|U&y``t}npH}+hDU-Jw zhi49D#KHMuK0l^_?1PU8sSUY2#H2@0wSI<-B~~NnY)~t6e>!QBU{6qyf=R!Gq+C)f zyi_A1!PL9Ecv0P2P%Vt$^TSJ!Pgg7?AYobyw>RczW>UYNXSdr07TaVwExv_Vm@f*Y zxnLeY@1N00e$fKkhf+<|M{s_91?z+uBce_61U7=+7GU?woSA(`bZL|x+fVmIsC<_k zCGVbdA?^Osb|)h=Poq>D>y85e|6@|Nli!J50=Xv9L_d*3Yn;jX`SxdB{Skgc5cN$} zV^XC|bN5MkeLAi8rwhN+YXyDm*LFVd#H5>Yno?Or2mlFfHJ}pipnTnaLQ%+#EEk;e z1abodD5{X~==yM5pI4`vy}Wx^3Fgblz=X9@dD8s8Ln9(PQ8>sV>rmL}hj+q;f&Ab* z+skmyx2=E(047rWB4g|8(dw2BBjSZ}%duyOIfH-xv_!<%s8L#g)a(J*7<V&`PrZhAXik^C#xRZdDIScq{lef|M{`z z-Cq1yawyCYHQU~3AVt0mD(SUts03zd-_I$eM$L*C7TQUbt)uzB2z2;{f_FrUE^77ym5VoQMP;*f80V2^C zt_p2xh9?O9rk;)ufBHg{=e})m@L(QU1eZJk94dgxU|J>M+z_5XFeCE_5}Rt$ifB}N z?OibFwB}{OA_Kdu{-RCbPZo&=-ue)@a=L9zqu;!~6?OI&t`Vn&Od9Hg=%3*aMSTG% zzQkmLFSu_!#Is36x;*AJz~V7G#P@ga$R|U($z0izh zS9y&G;A?;m+D6G{+dr_#*Gadg*!d`=g-sKsRl}u4H2QBV_Hm&wu&YK(x*=RISBohr z9P8%1iF(X8#PzK!27UV#*kYe}gY6s*L4crvgS#m_8F{L4iitL4mB)=?g6w3Xu%|8Q z5MCPaARz8$hcP(OoO*iqU%iZUpVE{?0GVIp03wtA2#2(9H@VlK=(T80A8%0-_j&E+ zhuwR$>yvcY^=Lcr4ET+Z?UiBDq7YcfNZJwf1(ygEJ@>q-kLya9Ny%Mk#!U4DSD`l5 z_F6`kgr{Dl>}^L+^Aa;#UtD%fal*(E;RKr9JA!`Oz<6UG_oo$1k4%&i?0h;>cWv1s zj7L&+@ZjAxh4)5~8HRwg-zrzbuQ&1=4u(A*f9%#X*50F1H?$~h1>38`q~Aec^LjCO z2TM^lLgnRBjS?9j@@HRBlSECEt=LsnSXcB!>=usvknC6^I49B)Xk^?%zk423*UUsS zuw9SwO&~Ue>qrbwEV|EESR2lNXv>?NJy>b{WT8RpWqeMiln6`Y2?-#^`eJ!mYX=VgM zC@Mc}0`E4;yA;Bzv@vPd@lzx#%4MuoFr{I^_6o2=31LfN&!g@mDaqX6wZ)dOQ0vql zm$yi%zjAo6Oh~bwfT~@DOa)Ss?nN;~yx(KlPg=d1CU$UdNp)^f?h-I0Jr{EfufYW2 z#gm}J_O$fl!Lb7`D>ki1o6)-o9Y*6tuQo2w!fRO3;Tx|TrNLL{X(IM`eq+Yy(>v6) zB(~4O&0|+@xGl)1u&L;63*NRjeN7~wrFkB)_a2a`AZaI3S zqmQu}kztT`f!?RfZpZUunx!dEKYSQ^ZN15){jb=a#tKSC2=*9>5W1_Aoxzv>zpx}) z23@03&lA@4!-oOh+;6`_sJ&YNF9gS}Y(B*W<1#WJI>MD6>-vD~GX-%J>2xW+{en;US+@Dy90Cx?&D6- zNaw%!JrPedz(T|Ux~qO!ocz+J4Du=mU#HGC^NIK7VCt)?_XAmQV{q=H67^!d)8FaK zmSaHMFx%wHuG{MxNLi}d=xoKuXIArj=T}5%a&lz;t*()CT}a8#K3A=MYBrZL|51D& zKO#00q0QA=Y{9`l&EXM(?sd;fRLD&D>88!a3vdHXccxuqZZ9ak4UQ*cr@D!*pjc9k z_VQ1qB-7oy4Qy=TOA8F*OAfzSFKrPW5a!ktwHgp_EzEq;!sKpFQcx?$klVT^8aeh0AazeYYPS?8EKl*Y1Z)?P{g71dS~K`KL$Z_}?(O z5X7YVlNos4p}4x)Rfj6h_!oMcby7*iTV8J&`_hOMKBEp|+-M%Cg+-z@+WZ&gidOmj7 zrrpLI9NQB^KFHUZ(wEv4d>*9ptvc`H#m|$e?yex(ANj8f{Jxw#EjoE#o{JPwQ9KxI z8?mev@@Z$X^wkBjh{H^_6ec0BV*&4{_c-UZo;9MnOCQ@cC^rU@rF=Aq4n4$GrOs*R zxGCGtQ#bEPXm3gsegvtu3FL(B$yJw;^NrC_F$m9Zca-tF_enK6(Wng4DvN z)!F)9m${Y16Zn008=;^d8UtsolqhcXxZs7W6#c)%!P;&GrEEl-`kcwSsXQl!n zAdmCD;@ns33$1``?zPF5Jb)sfMaNeNn3}nlkkgWWCXyeBGX9WoY zg??C?pcg^iN0M?E;>Kq-?xFO*Fe{IqsO4nsSdglJGcQ@@?jCcrH-^KIUIkEo1e8y1 zi`m5GWvI-&{(Q7{5a6DaAt9dzMfX*8`Qt4+$;zKy@Hq6?{pzxB?&sD{`W+jD?^%Gu zmH{xhVPrQV)3xV?nv}k!+y+i$qr6F&mOcS@b?q+>Ufh_CUf;nHm)bL~?84vrU5jap z=d9S0MJ2huKL}XLdODR`r3DjkZbr&!9VzRIH!;30t$08<}^62tRv8>Ew8o ziQ;!s%TkdGZ*d+|QF7QUnzkr^dAkPQ%}}d3Zdb2EOJh$+xZ&*3nZzM7uRPo%f) zf$Hji+-7|oyYRJRuh)#IV;zfBuP*&>pTdEJhAS*qCE3f~0?1jxpR(~xGJu!OgG0Oc zI9{)%LZ4>#0uDY902^8HTVL0>K`f9HiLnw1E4|AW9-~Gmuk&6(8K?Pp5EqCyAm(*c z>Wc;ZVm^=>7g&spE8{vW3AuDMZVpoHo@uOYzl`KZPmbJeaqkiC6<``d%jH0NU0Me= z0*_7vRG|_wQy+|CESDp(!$-A*Se8G@lXwODyG7(+70!E9iV=(A$@gNC`Qb*Pp7D3a znHp(ZU)q?%fKcI~Pu;_e!`EH@kO0r@Y#cra>XRGM$(*p*3&W0BqB|e-z{|X@^eE6Nu7*Fbv5-Kzvnze4Q zdhA%(BA{(R><4)^x84cPneJS0L?UB`hOp9{XSo^;rpQlb1a@0GVr!kBQLLIxs+}~U z<>DcA^Mf6TygX0U0aF#%RKjF{cXMi;;Q-cVUY_3tI4$#-6R{g_nUX2l< zBDX!K7xz(EBL0syxufFYHESxCv=$;qDlN5c=f(;(U$L?n+wXm;$q?44(=&G?exW3g ziZ^N;#Pg0w+98Arh!6*;D{&*}Enht|&Q_5JHv<@kpJ+V%ADqdn zF0I5h=&)+jU;s zo)2TPGq=SsGLwNpu@N2G-wPVm!W<%vL3OUwM_UDfN7;pO{tc!`Kr@=eMff&|B z#F^;bBt&89GkQub#2$zWTcDzWu)Mh%mbCi~Z@231!o)SzWz zC_g;z=x9FoG-7@u(^+a6C~!&LJAmOErBdSJZ@W4Eo%)OHz(qH zW-Fp}s`8@Tx8L}0;ryGqR8Ig}js3ahkLLr#$xnnYxv0*icDoJG={%39U0*{vQH8`o zC2Z2$lLnq3{{U~NEf^Nx)%tc1y&VsB;`J_TcW%Obhq(yIZvm|!U~j|`!iZ}}?Kz;f zNop@mJ-9t;4Ux~Ur*6c=5uji5$#F>%CMI4(QU1MUS5Fp;k3^n@f z9lSeppujfgM3Jq5P7%JlZRRc&f12};k2sPPPKjIztNVj5h_vUw*3im2G9cgMw)UcO z+Hb1rK#YxBskTu{lR^Q79>*OL`RK0A2YE4^rRh*q)J*|K#8PWHBl;j&32>x-_M3zI z%;$49ts}qyQ0Q{BqLwE|@Y^+i*X7yZGT%n9y3wL1=GQ5#dcBVUItz{OUE)u^{`1xJ zd;)XN?hBSnIEj!~3a+b(CBd>Xn(wzfRgxI!J))?-g3{<=Hxgzucf9?=xc@Of`=@zi z)UhL!kgXqLn4_PQCMJ}Ymv4afhVO+X?n^9mo-jiu7ysu8xS9F_30iUJj*R}IKv=6MLs5iqs09)L6~M9{^Ite6fj#N0(M*ezdfy#tYf?U`OO8 zK)4J)oi^Ks^b|4DdNuY4NWO%x;E2oB00>d)uDf{01}nKc(=fXGg)Ppin0KPlD*wPj ztWbk;?6bs4H-maK_jI8mu7~uc;j${(cfTN)$5mGOuHy@z z0NlATW{Z|27$_@R}z z-AeWoOUACr%qrv>omH>-g`f-{OY(OtC*IB%1s8 zWxIDxsbwe%+5cXAb^n+|y6d_sl|yCv!SiMroQTY*lja@Z={pr4;5~E@a7n{9KQ>(>Vi$wp9`@FzqXsHAS%rru}(ig3AE6x@2^ z+@?b%f>NPMuIbKrp)7*aNuamx7r*ydqDA+v;~kt|GB5P|6o{*fw=)AtC~nMlW~yj) z`)BRtVbJQs-5fI%jv`o7D%k*~91T*U#_N)S>dqG7jf#6p2IZ9bI+^)+ZrBUCNk5CjIT! z^tb~HED0*pp1sPqZi(wRV-E@^k@vx(Vh#CtbA&49@<43b=Q}ytt7sq*j*2iOj^6>2 zaJj?iK;gF^B1flEN@AJ{c!m;BS0jwLEPFo_kkDjLEv(($sN&L2U8dzo{KYm_{J_$3 z)UM_BnG>l*mtC79U#D-80w1+9pHix4ZzNg4ss2qaSv3-qVrNpWqv<_Z1vm`a5RCcI z&=&v_RiGzuR=uG!<+MAQ3;Yem)TZ3URdcs>ZamK90@{;&Jzw)p~fS4?}-`+rc23IQCdU!TEVWT$NFD}&R!BYQNJouSkY zh@0(;hf%?wrO*FRWv|8k7**YHv!@|L0wVVuu%N1z>ot$F@y6Rrg&H8H7b<56scunm8L*8nHUH=Rqi{7X<$Xu<2k8in_UgP+oY))x-}X|devDvz*D93+dn3oL9cHaK1&~|)8JeN>e+#VNWip}rVG8yT<6}P*<>l*)SD6!w;dVrTaz#q zA>N5nd@Y++vEk=v0f7kBU)qVZmiFEP7@v7IK=B%ED${cc+n(Y3J6>)at~*>*4Tnhf zHrEl*bb5iz?@eGghKK>^-k`ht@{fqO*l`_?XTHVHcWm6Y0-lHDuGYVWCnMh)Szo7Y z{rLQcpg5Gu7^|Y?KJ8(xc^}eNm65Fr^*QacZo1T{V-90f>d?PR4j2R!1AYjU`D2d} z^+=r63*`>*(`cvWUw$@MqjWefHd>tg#7{K)iF=W{(K&x6! z?Pxyp(0<_qWpt)*wga;JBRyO`l(RKM38j4nAFw&66e1|i5puG~ zBG=#`^%^$S-cKl^06tJz1zczL5ux;)JzSng}4nh+{*s?P46Y8;dnjAGYbeA z8981d4KsJDfx{ym2j6Pg``@(D&bs>h8T<>}Y{(V@ilMHb6c!i4m@q6OE(&|TXWzSU zg!lAkZxA??UQTRgEl9FWL2rJK-$?Y8k7EOM5L_DYHr~H$nyjtwxRVpNTi_Ut&Bjb& zqfa#`o{4(O{WrFgrPTX#mNf=V4amrJ2I-i_GLG?339<-8D`crO{c&Ps|L2qr&tWAB zg{-B;%Fp&Eo~D~GlxT8H5&XCYx8rD$Cpd9j~#hSn=UB8Hp3n*m!tT#f?MM8tWk z({i!$s7N(mfu;=B3jjmr@eC2LDxXlKiPU#Uu-d6&~Em_!F^Xkwd;+RvkEfe*@`n~LzIqY0%h?! zvtx9^`a+Bz`N{r=&u*tn2#Ek``jj3t~W)&EgRr{$?i^;W&_(?k(=8L&1<1d z5UpsG>A6dLzE=kCYZX4w zvY4Wm;yy2C4LM9?ilOv?7ZvkBq4>a&w6zWZ>3Q)#_WItrRf7oF@X_}>hOqW*C;t(vWMN2wL6P@B)yGA{t^WW34M zffv9!!@QsvQZ+*czg&K`yU_U3YOyJCHCCU{E)`@+y1T}w;z+dZ(}alq`r_%PdXStH zdAh+=`F@amXyF|8m1cZlpM}ENfQ`F4CXx(>fpn2kljfP$FLjZfXHRYa@eqSRQ;$GF zo&K+GOn8<84w#>DNAMp*;TFGY^9csh=a|I2;#DR?c`csTqyA{v9%ai00M?e}yX<^s zQ(ysm51{C+ny>9oZh(X>4s~5o=r*S;bBQ`ZC(E+g>+aIz3YdqHCPnH&A*TX}j|$+v z+n=vjosmb`K@ISo`1&Yg3EvR8UaP=I&Xc)z9QeQt}?XT?n za@6fmx=DwF4d?KSQgj?h5JT7r55R4KIqQg_nco_Y(sYYcj!_Fq#?N%Vq;IISMkYqrYY*IIyz!dxzGG`IU5->5;X zDN*X-gH9=YIfKI}luZoz=k8x0-BpaWEcrefUpF|L&a^Dc2Ed6-ZE4Li<#F}q57ZmP zCGAS@j*oT^U;o>;A&3FOI$%F}J(S2E*c;FM>b3U$)owXEuHSsE`k+Sj|bWDLM>_jc6Bq*OU=hj~vD!817;FV_v;TdOU+9@pnsCX7XZ& z2dhGc2k^2Skm&Z9Dy0|5ZF`fPxB<-#){qFdUdt9fsrtxhn@>tyV0t4^&OSNV1)e`; zARL-F;RMc+zdqybzZ?jT?=~OOetR>BY^Tm_#X;ynbRwSMt{`66peY!r=Xm=T1{E%eMo|t2&dw zY^E}IO4$rtdA#DS7;mzJn}shImS`c3DK~559-A>`@VaGnCJL4gV}CgHu>FG~KQ5Mr zEs9*~nr|O|;%d_Eo8&k-KC6^hh1egheos3tdneITcc9J2%|F=a7zj&=G)+;_W6tkQSzW$=_t2b?Uc0$Rrd$aa{FFBz^j32 zqH%yT?ag$ch417H37KB9h__;Md7orsz=PSvh@*5x`VaZm;x~Nu!DG!yd)1wtzX(3Q zb6-B3~)Nd6d{E$BU0*&?JFH*JA^r_6zWF ztB@R2a58qjdIK6CHDgeJuA;a43%9*Sf&>(e0d2`_ogJmq*02ZHMD40s$k_9)eJq7N!t_Xm?U%lkw|a^rCNd8Ts=U=4*_Kiq0y?UwhQCE199&szSqQjd9NkD2D)@e z7k%!im1J*~7dnEr}82_{BGe#21cN8Jt0j}j+ z34Dd)GUPZ-0Uea@v@JvydXA*u0Q(d}*Egk6h$o6r9)byWKFCeRc_zXi+qH0AG zUNsbVYZwi^HZmF3zZjnqooJ6xCkxI~$Z%fMNuq3HCGuMhd@>i7b8V&@^!wy!s%?gNTd7$h1Aang$bxBTsZ z$s79!&v+ffF4)&qojaMBo~^NTew&K0lfd1ccgxJUP-PfAS2;r9>`TNU+TvT2(rf|Y zzB91T7ppZmyIbmF)J|WFaZSDcE-_cJP@<9>tnE6?HNOnDZtfsI;MKTx4U z-u~{>Ud5kfsgzjabg;)s)oZGo+gf}z(PqWSgR6~;Ci2${y zkZg0k0h^aGtYZ1}M zou0ez8E{RRQi5w;IUlFgA0PuLQ{`>V{4RGV?MF2iqO)1&Xnixd&&>M92^sm5NcSu1%TO5Q zNv2d#S*iR1N>xvV>(q68EZl1fe^pyJ(yEh_lLAO+B%+;H0hRy((YZ0y6hQlB`N;@CVmXtQtt}Lf4=EES@ zGsOy6!9K7z7F|<-{AOA}2$%p^^v`3wN?Irt9wNqqKha4yxs5Qac^_|(y)_6Pm!?@t zzB0d3rojw0!1dnnSeA`FSy9jmauNE6j6x8RX6zyfXupi%^uAV%pmDgsHkzM~)JYj? z&L~A+h+iy{liox5Z4^&_2)#?`Us`pf$$5SF)Hik-42(lOYKtB;Kcu8M%mALa9AV0sWlKBSb5(YmzzYBD$X z;>RM6J#6;O`V!+M^of>~=C(n!rt+%HKl42cKF@z^xsB)lRzp5}o;vE*FniSU4-5Ad zmV-ZSd57;g!gB?frrx4S#ne(?1tuKY4xowhnG-}^JNT-6mYP20F%H3JB+A}6+N=6p zq)wfEXl!Jwt;qBf+hWHa&?RZ=HZeVevNY*c+VgUFtbAA4R{_i!O79{4AAV6*d77*^ zIojJ?MFPx+9Y31=??VK4|APR=)yN0d!%I&iyYaHod?}!t|HvWO(~&aOeIP9%q@C8` z;k3@Ta}4dGkcf>RyVy42?b+rVi2tT!U5n|&tS`e-i^ch9fV|jFY$5f-BTL(Rv`Y$u zaQCSGcFZUrafG1XJ%lFz71ll%a0rUXwzH3v9twK6-F8QhYR z_b}oq<@4%%-~PcmWqd+0T08ON@T2a&{mJ!!o|`+=Ufl*9t^EVCn1JCbbCy5N^9Tr- zLNekaY7Pgka{`|PMYdi}peVTn*np^@Fkm+$j0LoDXuHJGua(;V#l3YwPZ|Qx-|A+Z z)Ga1B!m_x3Cw?WI5}ZL$EP9B9Cgv?yMP5JFx=zJ_4W$5^#ef5W|0lX_$f$89@)yq|mYYO?E!Z3HZ;zjPbu* zV;dGo3fO^$js}rM8bC(550>->WygV2p0y3wKy%?LdO!s z*gKT>*8~LEdyiB+oS|0BLyL;evsEWsYRPTnxGsOv%lDQFc6oWM5Aj(dzVQ9O0B9_* z9#V-S_zdm0FMhoT`1qym1?YsvMsrgHb~xG|R)Uio3^+p{?vN3Ou?@cIzxtQAkK?bv3MxfRe=|)&>v1RC6(4#OpRjhF=e5#KJ$?85SuBiwz{I;ACJ&i zSjQqceCp1&`V=jqTi#0l`{cPnktOTOp|rCV%~^Tf%0tpK;Mx-f=Z`S;fXFpX(jsPm z36~*0o^qEB*z$M!CnTvNY*E~4+;-nLSGy9iWEeq69Yq_fb|yDj8HgZ1b!wB@J~=*&xU zHok(4p2<)G_9vZ&@h|gnz;1@vSFd=^fisv&q>{lMdSh7D0CgPbX{j2EKm0=cXK-8| zg=ok&S;sw$kTVNpFsOjIt8sG?&{7qOe}1CHwtcVj7USZjP{X0T*4c)fj}ge2pyrGC zf@Yc*<5`wkZuX%m_pAl_`!f9F>;49>1{&;w;9 z$%5mUyc$q{LF^)(zS%xRhydC_ugL&xHPI87b`*T7Ait8v0A#3b^&H)M-B+>~l##@= zxYJsO7{O$zX3^0bUxDO9rWfQ?ys%~J{Av=DXx(zTk+bg!ZI8)Gh-Khy z-QOg?|Gpr=BITs*N&nlE|NHU-7l8B;jPoYEVqd=e_5V+xynP?-qmafg1E4;2yC-lc z$7vFttzilVMv!T?YWPAY=m=3%i=4EMhRH(TX+nJmW=GQg@xSZ?c)}U5ALjrw&-EWP zlc!5@a@<$XzaV2oFE2tN?3Mht7poCFcNJZ<>swC+3F2izh{EUR>}aP=rw9ADS#I}heg21TIw-@(kgH#;B%nv)dXoHQg{9v3Ie0HKQ!nF$PU;$4l3W}cw zN<7gCvL-?bhWM7vi~o2_F1zAws`dl%v+t9zppZR(Q(Hq=Kx9T;ndW@}gKGI$dHT>n zk@y{P!fOy$9Q`P(;s17TpVR@GD@bA(){3byS;My4S<;=w8-4t z@NkSFMU$r_0$w+DAMWowzj-cyNBIqi%jK_Bnl~{1G#j2l*jq4CdLKWw&i!T_TLgo{ z|4TH+PA`QI$GtK$vwe4e-)SK4vtbHRv^8Vc(5DrIYgyx<4M60wOcpvfeY{_sYj*$O z!qgLIc{^~=eR_krtyI0S@xHvgoONE|-Fo^hvpiAEl1MU4nh()K*znH!5ZN@j#98Ew z621Kz@t0vdMOA%#Jf4N6Gn4ygpXsa19?;nDl=Sj`!3!twy=&(iy|QG|Yno=! zYkC^3`BC+Z1XqAIsr3Hh$S~oT;4jzZ4oQa+qg|UTb}f?AIow!|oA9uyU!!d=41PR8 zf(1PhMhrWqyNLIQ$ML17TVG%2;^!x_q^VVt9c~Nk`_{=FppYr2_D9s?_NwMt_<2=G z-P=+s2r&_nqnDjMno`C#2&S9`fA@B$%2|G&Ot-DRLocjIcezY|Hc`wGi12hKHURhM{jjhE^}mS!9tH4Be3Fn7&0eke~4$}yCemp@1^xnM}z%ifgn%CL*K zye+M*oxCi|+y3ts?H1W*eT83OwILCnEEJWLgudP|$}KJ`3f2lfN{+$Z00LfX6*ZXY z?2zLA`(0EPb4p6ew^d1Xxo9#EWA8zjQ+LT*yHrjK4HxTqModz{ zY9Isr1b;T^)X+-kWJPDw!Vs<-Km6_=vinVQe<|44ZoSD%k;_i!HpprJ^QfTm@_w^ALk-OkFbF8x|>FTB`OJ#mA{UXn5d70OXsa`cORjzNN5^P~^J}>9c zbGY*JQGP5l}|qhb)*e&ytRD{3do ziMR!{*~>qYT!L;b*8!wIIX1Q$`{6Q`Ug`p9DO2M#SRK*pcTfr=<$_bch)0#1SXdN; zQ#=?)o8HBOtBO|$d59f3j~!b=3UC?vBfPQD-sJr91A{*cE-CkR80Y(|TPq+*t_7*o zwkz+Hq=@>!157$(Wo30>sC_$-&TIqL{2;NMP_D|;Zya|0uq0xbw|AyD%^#R_;#h+F zl1XCZ)7J44CJL3SPKLr(HIX!hNmzz&LqsYBORe;6M{sbk0ef6uwXGa=3erRM$3vad zeF>+kq-w!GlZ`IF-Q|5&Iewdv%Tr3tOf=SuT2B^=xlAwxg}>M!wEI20ABw_E)b68Oxr${)Ot z5)*jYkaY!eTJY~pfn~&HD(zTd&W$@V?N}mH7)_nl#PL7Wofr;XLwxUq8^{rST)>;` z>`R`656ulLk}MCO$siGYc?E^oG}un|LB99o+}!Sts;n&imw|x+4P9L;!1J)>j!i^* zg53k?3VL{Xd3BN$Z+(~w0TbrPv#`6ntIL%=JFC6Bw|Ap|d?W>bCtd*vVu!7wArA0& zN+oUpf_pSnRSii6J#6uYkA6HQA#s-72I2*|ZLi-8jV7`ZGvLuwIOiXV4b-dO$PM+n z1JR!?o)&=TtN~WsnVZX#{ozcpT8GWSAF2o8A3XQ`5FmF%U`Br&Y+jQEgZqRwBV`ZJ zp$<4kh@i2sHX2niHqKS$b@~oi4$F=HL~9qpHZBehBmEW+yN;WyH-A48Q7mCZW*n`Z z0Pyj_*b%kZXcbbP*75?w4>S?0f?zB+ zVrZO1;Exy?B7N*71NgKZI!^cZ_cOoqaC4io>bG!c$^R_Ap_@0mPsV_@(}vK9|&O zFb^+Rm1qC^2Kappa7R1{c2B`;{r7WZt>DQ&>5G~D-=qWo@&EZ^-bhLMY2y$6%}n@j zNBSW=G{q1m`t*OV2Vruh?j{P`2HWMUkpS5 literal 87705 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

oWd^s;{zFli+b8drem-VO%) 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 JF6*2UngCzP1JeKi diff --git a/inst/starter_models/si/README.R b/inst/starter_models/si/README.R index d33dc17cb..c75bf503d 100644 --- a/inst/starter_models/si/README.R +++ b/inst/starter_models/si/README.R @@ -33,9 +33,9 @@ specs = mp_tmb_library("starter_models" |> lapply(mp_simulator, 50L, "I") |> lapply(mp_trajectory) |> bind_rows(.id = "integrator") - |> rename(prevalance = value) + |> rename(prevalence = value) |> ggplot() - + geom_line(aes(time, prevalance, colour = integrator)) + + geom_line(aes(time, prevalence, colour = integrator)) + theme_bw() ) diff --git a/inst/starter_models/sir_mosquito/README.R b/inst/starter_models/sir_mosquito/README.R index 921780da4..d2e2126c2 100644 --- a/inst/starter_models/sir_mosquito/README.R +++ b/inst/starter_models/sir_mosquito/README.R @@ -1,6 +1,8 @@ ## ----include = FALSE---------------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, + warning = FALSE, + message = FALSE, comment = "#>", fig.path = "./figures/" ) diff --git a/inst/starter_models/ww/README.R b/inst/starter_models/ww/README.R index a67aa0f3d..aa6e44c90 100644 --- a/inst/starter_models/ww/README.R +++ b/inst/starter_models/ww/README.R @@ -21,6 +21,12 @@ round_coef_tab = function(x, digits = 4) { library(macpan2) library(ggplot2) library(dplyr) +library(lubridate) + + + +## ----options------------------------------------------------------------------ +options(macpan2_verbose = FALSE) ## ----model_lib---------------------------------------------------------------- @@ -40,3 +46,202 @@ plot_flow_diagram(layout_base) ## ----diagram_shedding, echo = FALSE, fig.height = 2, fig.width = 3------------ plot_flow_diagram(layout_ww) + + +## ----default_load------------------------------------------------------------- +repo = "https://github.com/canmod/macpan2/releases/download/macpan1.5_data" +macpan1.5 = (repo + |> file.path("covid_on_macpan1.5_calibration.RDS") + |> url() + |> readRDS() +) + + +## ----covid_data--------------------------------------------------------------- +covid_on = (repo + |> file.path("covid_on.RDS") + |> url() + |> readRDS() +) + + +## ----prep--------------------------------------------------------------------- +obs_data = (covid_on + |> filter(var %in% c("report","W") & between(date,macpan1.5$settings_sim$start_date,macpan1.5$settings_sim$end_date)) + |> rename(time = date, matrix = var) + |> mutate(matrix = ifelse(matrix == "report", "reported_incidence", matrix)) + # leading zeroes seem to cause calibration challenges + |> filter(!is.na(value) & time > as.Date("2020-02-23")) +) + + +## ----time_bounds-------------------------------------------------------------- +burn_in_period = 15 ## number of days before the data start to begin the simulations +forecast_period = 30 ## number of days after the data end to make forecasts +time_bounds = mp_sim_offset( + sim_start_offset = 15 + , sim_end_offset = 30 + , time_scale = "daily" +) + + +## ----cal_spec_update---------------------------------------------------------- +focal_model = ( + # waste water model with hazard correction + spec |> mp_hazard() + + # add variable transformations: + |> mp_tmb_insert(phase = "before" + , at = 1L + , expressions = list( + beta0 ~ exp(log_beta0) + , nu ~ exp(log_nu) + , xi ~ exp(log_xi) + , report_prob ~ 1 / (1 + exp(-logit_report_prob)) + ) + , default = list( + log_beta0 = log(1) + , log_nu = 0 + , log_xi = 0 + , logit_report_prob = qlogis(0.1) + ) + ) + + # add accumulator variables: + # death - new deaths each time step + |> mp_tmb_insert(phase = "during" + , at = Inf + , expressions = list( + death ~ ICUd.D + Is.D + , prevalence ~ Ip + Ia + Im + Is + ) + ) + + # add phenomenological heterogeneity: + |> mp_tmb_update(phase = "during" + , at = 1L + , expressions = list(mp_per_capita_flow("S", "E", "((S/N)^zeta) * (beta / N) * (Ia * Ca + Ip * Cp + Im * Cm * (1 - iso_m) + Is * Cs *(1 - iso_s))", "incidence")) + + ) + + # add convolution to compute case reports from incidence: + |> mp_tmb_insert_reports("incidence" + , report_prob = NA_real_ # defined above with a logit transform + , mean_delay = 11 + , cv_delay = 0.25 + , report_prob_name = "report_prob" + ) + + # add time-varying transmission + |> mp_tmb_insert(phase = "during" + , at = 1L + , expressions = list(beta ~ beta0 * beta1 * beta2) + ) + + |> mp_tmb_insert(phase = "during" + , at = 1L + , expressions = list( + beta2 ~ time_var(beta_changes, beta_changepoints) + ) + , default = list(beta_changes = c(1))#, 3)) + , integers = list(beta_changepoints = c(0))#, steps("2021-03-05"))) + ) +) + + +## ----------------------------------------------------------------------------- +useful_params = names(macpan1.5$params) %in% names(focal_model$default) +macpan1.5_defaults = c( + macpan1.5$params[useful_params] + , list( + S = macpan1.5$params$N + , log_beta0 = log(macpan1.5$params$beta0) + , log_nu = log(macpan1.5$params$nu) + , beta1 = 1 + , E = macpan1.5$params$E0 + ) +) + +# calibrator +focal_calib = mp_tmb_calibrator( + spec = focal_model + , data = obs_data + , traj = list( + # set likelihoods for trajectories we are fitting to + reported_incidence = mp_neg_bin(disp = 0.1) + , W = mp_normal(sd = 1) + ) + , par = c( + # parameters to fit + "log_beta0" # baseline transmission + , "log_nu" # viral shedding rate + , "log_xi" + #, "logit_report_prob" # reporting probability (only makes sense to fit if you fit to incidence) + ) + # flexible non-parametric (radial basis function) fit + # for the time-varying transmission rate + , tv = mp_rbf("beta1", dimension = 7, sparse_tol = 1e-4) + + # return these trajectories so that they can be + # explored after fitting + , outputs = c( + "reported_incidence", "W", "beta" + , "prevalence", "incidence", "S" + ) + + # update defaults with macpan1.5 wastewater model defaults + , default = macpan1.5_defaults + + , time = time_bounds +) +# converges +mp_optimize(focal_calib) + + +## ----get_fits----------------------------------------------------------------- +macpan2_fit = mp_trajectory_sd(focal_calib, conf.int = TRUE) +fitted_coefs = mp_tmb_coef(focal_calib, conf.int = TRUE) +print(fitted_coefs) + + +## ----plot_fits---------------------------------------------------------------- +macpan1.5_fit = (macpan1.5$sim + |> group_by(Date, state) + # summarize to ignore vaccination status + |> summarise(value = sum(value)) + |> ungroup() + |> rename(time = Date, matrix = state) + |> filter(matrix %in% c("conv", "W")) + |> filter(!is.na(value)) + |> mutate(matrix = ifelse(matrix == "conv", "reported_incidence", matrix)) +) + +plot_fit = function(obs_data, sim_data, ncol = 1L) { + (ggplot(obs_data, aes(time, value)) + + geom_point() + + geom_line(aes( + time + , value + , colour = source + ) + , data = sim_data + ) + #+ scale_y_log10() + + geom_ribbon(aes( + time + , ymin = conf.low + , ymax = conf.high + , colour = source + , fill = source + ) + , data = sim_data + , alpha = 0.2 + ) + + facet_wrap(vars(matrix), scales = 'free', ncol = ncol) + + theme_bw() + + theme(legend.position = "top") + #+ scale_x_date(limits = c(as.Date("2020-11-01"), NA)) + ) +} +plot_fit(obs_data, mutate(macpan2_fit, source = "macpan2_fit"), ncol = 2L) + diff --git a/inst/starter_models/ww/README.Rmd b/inst/starter_models/ww/README.Rmd index 02b530e7e..06681c00b 100644 --- a/inst/starter_models/ww/README.Rmd +++ b/inst/starter_models/ww/README.Rmd @@ -188,12 +188,11 @@ obs_data = (covid_on ```{r time_bounds} burn_in_period = 15 ## number of days before the data start to begin the simulations forecast_period = 30 ## number of days after the data end to make forecasts -time_bounds = mp_sim_bounds( - sim_start = min(obs_data$time) - lubridate::days(burn_in_period) - , sim_end = max(obs_data$time) + lubridate::days(forecast_period) - , "daily" +time_bounds = mp_sim_offset( + sim_start_offset = 15 + , sim_end_offset = 30 + , time_scale = "daily" ) -steps = time_bounds$time_id_engine ## function to convert dates to time-steps ``` diff --git a/inst/starter_models/ww/README.md b/inst/starter_models/ww/README.md index 3d1b010b2..79047362f 100644 --- a/inst/starter_models/ww/README.md +++ b/inst/starter_models/ww/README.md @@ -1,8 +1,8 @@ -Wastewater model +Wastewater Model ================ -Jennifer Freeman +Jennifer Freeman, Steve Walker -- [Packages Used](#packages-used) +- [Packages and Settings Used](#packages-and-settings-used) - [Model Specification](#model-specification) - [States](#states) - [Parameters](#parameters) @@ -18,7 +18,7 @@ Jennifer Freeman The McMasterPandemic model ([Bolker et al. 2024](#ref-macpan)) modified to include a wastewater component. -# Packages Used +# Packages and Settings Used The code in this article uses the following packages. @@ -29,6 +29,13 @@ library(dplyr) library(lubridate) ``` +To keep the optimizer from printing too much in this article, we set the +`macpan2_verbose` option to `FALSE`. + +``` r +options(macpan2_verbose = FALSE) +``` + # Model Specification This model has been specified in the `ww` directory @@ -63,51 +70,51 @@ virus into wastewater with the following sub-model. # States -| variable | description | -|----------|---------------------------------------------------------------------| -| $S$ | Number of susceptible individuals | -| $E$ | Number of exposed individuals | -| $I_a$ | Number of asymptomatic infectious individuals | -| $I_p$ | Number of pre-symptomatic infectious individuals | -| $I_m$ | Number of mildly infectious individuals | -| $I_s$ | Number of severely infectious individuals | -| $H$ | Number of hospitalized individuals (acute care) | -| $ICU_s$ | Number of individuals admitted to the ICU with a survival prognosis | -| $ICU_d$ | Number of individuals admitted to the ICU with a death prognosis | -| $H_2$ | Number of hospitalized individuals (acute care) after ICU stay | -| $D$ | Number of dead individuals | -| $R$ | Number of recovered individuals | -| $W$ | Concentration of viral particles in wastewater | -| $A$ | Total accumulated concentration of virus in wastewater over time | +| variable | description | +|----|----| +| $S$ | Number of susceptible individuals | +| $E$ | Number of exposed individuals | +| $I_a$ | Number of asymptomatic infectious individuals | +| $I_p$ | Number of pre-symptomatic infectious individuals | +| $I_m$ | Number of mildly infectious individuals | +| $I_s$ | Number of severely infectious individuals | +| $H$ | Number of hospitalized individuals (acute care) | +| $ICU_s$ | Number of individuals admitted to the ICU with a survival prognosis | +| $ICU_d$ | Number of individuals admitted to the ICU with a death prognosis | +| $H_2$ | Number of hospitalized individuals (acute care) after ICU stay | +| $D$ | Number of dead individuals | +| $R$ | Number of recovered individuals | +| $W$ | Concentration of viral particles in wastewater | +| $A$ | Total accumulated concentration of virus in wastewater over time | The size of the total population is, -$N = S + E + I_a + I_p + I_m + I_s + H + ICU_s + ICU_d + H_2 + D + R$. +$N = S + E + I_a + I_p + I_m + I_s + H + ICU_s + ICU_d + H_2 + D + R$. # Parameters -| variable | description | -|---------------|-------------------------------------------------------------------------------------| -| $\beta_0$ | baseline (non-intervention) transmission across categories | -| $C_a$ | relative asymptomatic transmission (or contact) proportion | -| $C_p$ | relative presymptomatic transmission (or contact) proportion | -| $C_m$ | relative mildly transmission (or contact) proportion | -| $C_s$ | relative severly transmission (or contact) proportion | -| $\alpha$ | fraction of infections that are asymptomatic | -| $\mu$ | fraction of symptomatic infections that are mild | -| $\sigma$ | 1/time in exposed class | -| $\gamma_a$ | 1/time to recovery for asymptomatic infections | -| $\gamma_p$ | 1/time in pre-symptomatic state | -| $\gamma_m$ | 1/time to recovery for mildly symptomatic infections | -| $\gamma_s$ | 1/time spent in severely symptomatic state before either hospitalization or death | -| $\rho$ | 1/time in hospital (initial acute care admission) | -| $\delta_{nh}$ | probability of mortality without hospitalization | -| $\phi_1$ | fraction of hospitalized infections that only require acute care (no ICU admission) | -| $\phi_2$ | fraction of ICU infections that are fatal | -| $\psi_1$ | 1/time spent in ICU before returning to acute care | -| $\psi_2$ | 1/time spent in ICU before dying | -| $\psi_3$ | 1/time in post-ICU acute care before hospital discharge | -| $\nu$ | viral shedding rate to wastewater | -| $\xi$ | rate at which virus is denaturing/removed from wastewater | +| variable | description | +|----|----| +| $\beta_0$ | baseline (non-intervention) transmission across categories | +| $C_a$ | relative asymptomatic transmission (or contact) proportion | +| $C_p$ | relative presymptomatic transmission (or contact) proportion | +| $C_m$ | relative mildly transmission (or contact) proportion | +| $C_s$ | relative severly transmission (or contact) proportion | +| $\alpha$ | fraction of infections that are asymptomatic | +| $\mu$ | fraction of symptomatic infections that are mild | +| $\sigma$ | 1/time in exposed class | +| $\gamma_a$ | 1/time to recovery for asymptomatic infections | +| $\gamma_p$ | 1/time in pre-symptomatic state | +| $\gamma_m$ | 1/time to recovery for mildly symptomatic infections | +| $\gamma_s$ | 1/time spent in severely symptomatic state before either hospitalization or death | +| $\rho$ | 1/time in hospital (initial acute care admission) | +| $\delta_{nh}$ | probability of mortality without hospitalization | +| $\phi_1$ | fraction of hospitalized infections that only require acute care (no ICU admission) | +| $\phi_2$ | fraction of ICU infections that are fatal | +| $\psi_1$ | 1/time spent in ICU before returning to acute care | +| $\psi_2$ | 1/time spent in ICU before dying | +| $\psi_3$ | 1/time in post-ICU acute care before hospital discharge | +| $\nu$ | viral shedding rate to wastewater | +| $\xi$ | rate at which virus is denaturing/removed from wastewater | # Dynamics @@ -175,12 +182,11 @@ obs_data = (covid_on ``` r burn_in_period = 15 ## number of days before the data start to begin the simulations forecast_period = 30 ## number of days after the data end to make forecasts -time_bounds = mp_sim_bounds( - sim_start = min(obs_data$time) - lubridate::days(burn_in_period) - , sim_end = max(obs_data$time) + lubridate::days(forecast_period) - , "daily" +time_bounds = mp_sim_offset( + sim_start_offset = 15 + , sim_end_offset = 30 + , time_scale = "daily" ) -steps = time_bounds$time_id_engine ## function to convert dates to time-steps ``` ## Calibration Model Specification @@ -301,73 +307,26 @@ focal_calib = mp_tmb_calibrator( ) # converges mp_optimize(focal_calib) -#> outer mgc: 34213183472 -#> outer mgc: 1808704 -#> outer mgc: 2551045 -#> outer mgc: 315372 -#> outer mgc: 364062.9 -#> outer mgc: 65241.37 -#> outer mgc: 113934.9 -#> outer mgc: 158729 -#> outer mgc: 13362.04 #> Warning in (function (start, objective, gradient = NULL, hessian = NULL, : #> NA/NaN function evaluation -#> outer mgc: 37182.53 -#> outer mgc: 222532.7 -#> outer mgc: 139896.7 -#> outer mgc: 5636.26 -#> outer mgc: 19800.53 -#> outer mgc: 2662.605 -#> outer mgc: 1958.237 -#> outer mgc: 3940.576 -#> outer mgc: 849.9417 -#> outer mgc: 689.8649 -#> outer mgc: 449.8951 -#> outer mgc: 1238.384 -#> outer mgc: 483.1618 -#> outer mgc: 217.6186 -#> outer mgc: 1214.281 -#> outer mgc: 762.7452 -#> outer mgc: 170.8267 -#> outer mgc: 474.4059 -#> outer mgc: 2443.055 -#> outer mgc: 3114.345 -#> outer mgc: 1735.96 -#> outer mgc: 1880.754 -#> outer mgc: 842.6753 -#> outer mgc: 446.8432 -#> outer mgc: 111.6187 -#> outer mgc: 30.10798 -#> outer mgc: 13.24426 -#> outer mgc: 2.377015 -#> outer mgc: 35.81794 -#> outer mgc: 3.506537 -#> outer mgc: 0.05931208 -#> outer mgc: 0.04557651 -#> outer mgc: 0.02944557 -#> outer mgc: 0.01707333 -#> outer mgc: 0.009711682 -#> outer mgc: 0.003303307 -#> outer mgc: 0.001104547 -#> outer mgc: 0.0003484738 #> $par -#> params params params params params params -#> -6.52995834 -12.70164806 2.46932057 5.94570085 0.03153882 2.60307739 -#> params params params params params -#> 2.48856516 1.77014545 3.33504510 -1.29713155 0.51309682 +#> params params params params params params +#> -8.6647123 -12.6963648 2.3858522 7.2248134 1.3915078 3.4112490 +#> params params params params params +#> 2.8777186 3.8903473 2.3726918 4.6262171 0.5130978 #> #> $objective -#> [1] 4573.278 +#> [1] 4218.004 #> #> $convergence #> [1] 0 #> #> $iterations -#> [1] 46 +#> [1] 49 #> #> $evaluations #> function gradient -#> 77 47 +#> 98 50 #> #> $message #> [1] "relative convergence (4)" @@ -379,79 +338,32 @@ Get fitted data and coefficients. ``` r macpan2_fit = mp_trajectory_sd(focal_calib, conf.int = TRUE) -#> outer mgc: 0.0003484738 -#> outer mgc: 75.90668 -#> outer mgc: 78.13266 -#> outer mgc: 0.03653088 -#> outer mgc: 0.03572156 -#> outer mgc: 0.0003453333 -#> outer mgc: 0.0003516485 -#> outer mgc: 33.86326 -#> outer mgc: 34.33087 -#> outer mgc: 42.14893 -#> outer mgc: 42.80556 -#> outer mgc: 34.69467 -#> outer mgc: 35.15062 -#> outer mgc: 24.97114 -#> outer mgc: 25.29291 -#> outer mgc: 12.80699 -#> outer mgc: 12.93173 -#> outer mgc: 3.718643 -#> outer mgc: 3.734022 -#> outer mgc: 0.4876116 -#> outer mgc: 0.487327 -#> outer mgc: 19.20977 -#> outer mgc: 19.39788 fitted_coefs = mp_tmb_coef(focal_calib, conf.int = TRUE) -#> outer mgc: 0.0003484738 -#> outer mgc: 75.90668 -#> outer mgc: 78.13266 -#> outer mgc: 0.03653088 -#> outer mgc: 0.03572156 -#> outer mgc: 0.0003453333 -#> outer mgc: 0.0003516485 -#> outer mgc: 33.86326 -#> outer mgc: 34.33087 -#> outer mgc: 42.14893 -#> outer mgc: 42.80556 -#> outer mgc: 34.69467 -#> outer mgc: 35.15062 -#> outer mgc: 24.97114 -#> outer mgc: 25.29291 -#> outer mgc: 12.80699 -#> outer mgc: 12.93173 -#> outer mgc: 3.718643 -#> outer mgc: 3.734022 -#> outer mgc: 0.4876116 -#> outer mgc: 0.487327 -#> outer mgc: 19.20977 -#> outer mgc: 19.39788 -#> outer mgc: 42590615 print(fitted_coefs) -#> term mat row col default type estimate std.error -#> 3 params.10 prior_sd_beta1 0 0 1.00 fixed 5.130968e-01 7.197444e-03 -#> 5 params.3 time_var_beta1 0 0 0.00 fixed 5.945701e+00 2.248685e+00 -#> 6 params.4 time_var_beta1 1 0 0.00 fixed 3.153882e-02 6.643082e-01 -#> 7 params.5 time_var_beta1 2 0 0.00 fixed 2.603077e+00 1.816507e+00 -#> 8 params.6 time_var_beta1 3 0 0.00 fixed 2.488565e+00 9.195061e-01 -#> 9 params.7 time_var_beta1 4 0 0.00 fixed 1.770145e+00 1.986389e+00 -#> 10 params.8 time_var_beta1 5 0 0.00 fixed 3.335045e+00 1.444504e+00 -#> 11 params.9 time_var_beta1 6 0 0.00 fixed -1.297132e+00 4.256654e+00 -#> 1 params beta0 0 0 0.25 fixed 1.459067e-03 4.023029e-03 -#> 2 params.1 nu 0 0 0.03 fixed 3.046101e-06 1.894822e-06 -#> 4 params.2 xi 0 0 1.00 fixed 1.181442e+01 3.524161e+03 +#> term mat row col default type estimate std.error +#> 3 params.10 prior_sd_beta1 0 0 1.00 fixed 5.130978e-01 7.974368e-03 +#> 5 params.3 time_var_beta1 0 0 0.00 fixed 7.224813e+00 2.382914e+00 +#> 6 params.4 time_var_beta1 1 0 0.00 fixed 1.391508e+00 7.159840e-01 +#> 7 params.5 time_var_beta1 2 0 0.00 fixed 3.411249e+00 1.890247e+00 +#> 8 params.6 time_var_beta1 3 0 0.00 fixed 2.877719e+00 9.751478e-01 +#> 9 params.7 time_var_beta1 4 0 0.00 fixed 3.890347e+00 1.834456e+00 +#> 10 params.8 time_var_beta1 5 0 0.00 fixed 2.372692e+00 8.529387e-01 +#> 11 params.9 time_var_beta1 6 0 0.00 fixed 4.626217e+00 2.269486e+00 +#> 1 params beta0 0 0 0.25 fixed 1.725692e-04 5.055458e-04 +#> 2 params.1 nu 0 0 0.03 fixed 3.062237e-06 1.915017e-06 +#> 4 params.2 xi 0 0 1.00 fixed 1.086832e+01 2.400334e+03 #> conf.low conf.high -#> 3 4.989901e-01 5.272036e-01 -#> 5 1.538360e+00 1.035304e+01 -#> 6 -1.270481e+00 1.333559e+00 -#> 7 -9.572102e-01 6.163365e+00 -#> 8 6.863663e-01 4.290764e+00 -#> 9 -2.123106e+00 5.663396e+00 -#> 10 5.038697e-01 6.166220e+00 -#> 11 -9.640021e+00 7.045758e+00 -#> 1 6.562802e-06 3.243852e-01 -#> 2 9.000275e-07 1.030939e-05 -#> 4 2.220446e-16 9.551758e+254 +#> 3 4.974683e-01 5.287272e-01 +#> 5 2.554388e+00 1.189524e+01 +#> 6 -1.179513e-02 2.794811e+00 +#> 7 -2.935677e-01 7.116066e+00 +#> 8 9.664641e-01 4.788973e+00 +#> 9 2.948800e-01 7.485815e+00 +#> 10 7.009628e-01 4.044421e+00 +#> 11 1.781058e-01 9.074328e+00 +#> 1 5.537921e-07 5.377492e-02 +#> 2 8.989322e-07 1.043159e-05 +#> 4 2.220446e-16 1.069341e+189 ``` Plot the fitted values. @@ -504,7 +416,8 @@ plot_fit(obs_data, mutate(macpan2_fit, source = "macpan2_fit"), ncol = 2L) # References -

+
diff --git a/inst/starter_models/ww/calibration_example.R b/inst/starter_models/ww/calibration_example.R index 6be76f58f..9c9594b93 100644 --- a/inst/starter_models/ww/calibration_example.R +++ b/inst/starter_models/ww/calibration_example.R @@ -37,12 +37,11 @@ obs_data = (covid_on burn_in_period = 15 ## number of days before the data start to begin the simulations forecast_period = 30 ## number of days after the data end to make forecasts -time_bounds = mp_sim_bounds( - sim_start = min(obs_data$time) - lubridate::days(burn_in_period) - , sim_end = max(obs_data$time) + lubridate::days(forecast_period) - , "daily" +time_bounds = mp_sim_offset( + sim_start_offset = 15 + , sim_end_offset = 30 + , time_scale = "daily" ) -steps = time_bounds$time_id_engine ## function to convert dates to time-steps ## ------------------------- ## Model Specification diff --git a/inst/starter_models/ww/figures/plot_fits-1.png b/inst/starter_models/ww/figures/plot_fits-1.png index 93fdc24369cf19ecb011b574c3351e13e14940a1..2e9c5599d49796304c835d16e2ea7315fceae171 100644 GIT binary patch literal 99696 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

8nDy|1((0E#!xIB{D6(hjJ2cZcF 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

BP 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�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%0Ah4qDln5@!A>wGZ6Ab-Vr#!kh%cWfb*=g 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 diff --git a/man/TMBTV.RBFArg.Rd b/man/TMBTV.RBFArg.Rd new file mode 100644 index 000000000..53304b027 --- /dev/null +++ b/man/TMBTV.RBFArg.Rd @@ -0,0 +1,135 @@ +% Generated by roxygen2: do not edit by hand +% Please edit documentation in R/mp_tmb_calibrator.R +\name{TMBTV.RBFArg} +\alias{TMBTV.RBFArg} +\title{TMBTV.TVArg = function( +tv +, struc +, spec +, existing_global_names = character() +) { +self = TMBTVAbstract() +self$existing_global_names = existing_global_names +self$spec = spec + +self$before_loop = function() list() +self$after_loop = function() list() +\subsection{List with the values of each}{ +} + +\subsection{time varying parameter at the change points. The}{ +} + +\subsection{names of the list are the time-varying matrices}{ +} + +\subsection{in the spec.}{ + +self$time_var = function() list() +} + +\subsection{List of the integers}{ +} + +\subsection{giving the time-steps of the changepoints with}{ +} + +\subsection{the first time-step always being 0 (the initial)}{ +} + +\subsection{The names of the list are the time-varying}{ +} + +\subsection{matrices in the spec.}{ + +self$change_points = function() list() +self$change_pointer = function() list() +} + +\subsection{List of expressions that update parameters that}{ +} + +\subsection{are time-varying}{ + +self$var_update_exprs = function() list() +} + +\subsection{data frames describing the fixed and random effects corresponding}{ +} + +\subsection{to time-varying parameters}{ + +self$tv_params_frame = function(tv_pars) self$empty_params_frame +self$tv_random_frame = function() self$empty_params_frame + +return_object(self, "TMBTV") +} +}} +\usage{ +\method{TMBTV}{RBFArg}(tv, struc, spec, existing_global_names = character()) +} +\description{ +TMBTV.TVArg = function( +tv +, struc +, spec +, existing_global_names = character() +) { +self = TMBTVAbstract() +self$existing_global_names = existing_global_names +self$spec = spec + +self$before_loop = function() list() +self$after_loop = function() list() +\subsection{List with the values of each}{ +} + +\subsection{time varying parameter at the change points. The}{ +} + +\subsection{names of the list are the time-varying matrices}{ +} + +\subsection{in the spec.}{ + +self$time_var = function() list() +} + +\subsection{List of the integers}{ +} + +\subsection{giving the time-steps of the changepoints with}{ +} + +\subsection{the first time-step always being 0 (the initial)}{ +} + +\subsection{The names of the list are the time-varying}{ +} + +\subsection{matrices in the spec.}{ + +self$change_points = function() list() +self$change_pointer = function() list() +} + +\subsection{List of expressions that update parameters that}{ +} + +\subsection{are time-varying}{ + +self$var_update_exprs = function() list() +} + +\subsection{data frames describing the fixed and random effects corresponding}{ +} + +\subsection{to time-varying parameters}{ + +self$tv_params_frame = function(tv_pars) self$empty_params_frame +self$tv_random_frame = function() self$empty_params_frame + +return_object(self, "TMBTV") +} +} +} diff --git a/man/mp_par.Rd b/man/mp_par.Rd index c2be2b026..fed366bc4 100644 --- a/man/mp_par.Rd +++ b/man/mp_par.Rd @@ -4,10 +4,10 @@ \alias{mp_par} \title{Fit Parameters} \usage{ -mp_par(param, random) +mp_par(params = empty_named_list(), random = empty_named_list()) } \arguments{ -\item{param}{Named list of distributional specifications for the +\item{params}{Named list of distributional specifications for the fixed effects.} \item{random}{Named list of distributional specifications for the random diff --git a/man/mp_tmb_calibrator.Rd b/man/mp_tmb_calibrator.Rd index 721dabe7a..dc5bc02f7 100644 --- a/man/mp_tmb_calibrator.Rd +++ b/man/mp_tmb_calibrator.Rd @@ -8,7 +8,7 @@ mp_tmb_calibrator( spec, data, traj, - par, + par = character(), tv = character(), outputs = traj, default = list(), diff --git a/man/mp_traj.Rd b/man/mp_traj.Rd index ff1c1231a..f8bfbc5f8 100644 --- a/man/mp_traj.Rd +++ b/man/mp_traj.Rd @@ -4,7 +4,7 @@ \alias{mp_traj} \title{Trajectory Specification} \usage{ -mp_traj(likelihood = list(), condensation = list()) +mp_traj(likelihood = empty_named_list(), condensation = empty_named_list()) } \arguments{ \item{likelihood}{List of likelihood components. The names of the list diff --git a/tests/testthat/test-calibrator-time.R b/tests/testthat/test-calibrator-time.R index e8f979e08..d58aced0d 100644 --- a/tests/testthat/test-calibrator-time.R +++ b/tests/testthat/test-calibrator-time.R @@ -9,19 +9,18 @@ test_that("times can be supplied as times, and assume daily time-step", { hospitalnonicu_unvac, hospitalnonicu_partial_vac, hospitalnonicu_full_vac)) |> dplyr::ungroup() - |> dplyr::mutate(matrix="I") # not actually I, just using as an example + |> dplyr::mutate(matrix = "I") # not actually I, just using as an example ) sir = mp_tmb_library("starter_models", "sir", package = "macpan2") - # get a lapply warning - sir_calib = mp_tmb_calibrator(sir, - , data=sir_obs - , traj = "I" - , par = "beta") - # dates are there - expect_identical(sir_calib$cal_spec$integers$obs_times_I, 1:318) + sir_calib = mp_tmb_calibrator(sir + , data = sir_obs + , traj = "I" + , par = "beta" + ) - # this seg faults - expect_identical(mp_trajectory(sir_calib)$time, 1:318) + expect_identical(sir_calib$cal_spec$integers$obs_times_I, 1:318) + expect_identical(sir_calib$time_steps_obj$external_to_internal(mp_trajectory(sir_calib)$time), 1:318) + expect_identical(mp_trajectory(sir_calib)$time, sir_calib$time_steps_obj$internal_to_external(1:318)) }) diff --git a/tests/testthat/test-distributions.R b/tests/testthat/test-distributions.R index 75be2f3c0..1d2229265 100644 --- a/tests/testthat/test-distributions.R +++ b/tests/testthat/test-distributions.R @@ -49,14 +49,16 @@ test_that("distributions give appropriate variable assumption warnings", { ) # The variable assumption is violated here. For the log-normal distribution, # the variable cannot be zero. + # TODO: be careful! it didn't look like this test made sense, + # but it was working before so what changed? expect_warning(mp_tmb_calibrator(sir_spec - , data = bind_rows(sir_prevalence, sir_beta) - , traj = "I" - , par = list(beta = mp_log_normal(location = 1, sd = 1)) - , tv = "beta" - , default = list(N = 300) - ) - , regexp = "contains zeros at the beginning of the simulation" + , data = bind_rows(sir_prevalence, sir_beta) + , traj = "I" + , par = list(beta = mp_log_normal(location = 1, sd = 1)) + , tv = "beta" + , default = list(N = 300) + ) + , regexp = "contains zeros at the beginning of the simulation" ) data = mp_simulator(sir_spec, 50, "infection") |> mp_trajectory() From 1c6207bee3644086a52429fc9fb580361b82ec88 Mon Sep 17 00:00:00 2001 From: stevencarlislewalker Date: Tue, 3 Dec 2024 09:54:49 -0500 Subject: [PATCH 2/3] tv --- R/distributions.R | 19 +++++++--- R/mp_tmb_calibrator.R | 59 +++++++++++++++++++++++------ tests/testthat/test-distributions.R | 9 +++++ 3 files changed, 70 insertions(+), 17 deletions(-) diff --git a/R/distributions.R b/R/distributions.R index 6b45f80a8..399c6ea94 100644 --- a/R/distributions.R +++ b/R/distributions.R @@ -647,9 +647,14 @@ mp_normal = function(location = mp_distr_param_null("location") #' @description * Log-Normal Distribution - `mp_log_normal` #' @name distribution #' @export -mp_log_normal = function(location = mp_distr_param_null("location") - , sd - , trans_distr_param = list(location = mp_identity, sd = mp_identity)) { +mp_log_normal = function( + location = mp_distr_param_null("location") + , sd + , trans_distr_param = list( + location = mp_identity + , sd = mp_identity + ) + ) { self = DistrSpec( distr_param_objs = nlist(location, sd) # identity transformations because distributional parameters are already @@ -662,6 +667,7 @@ mp_log_normal = function(location = mp_distr_param_null("location") , par , self$distr_param_objs$location$expr_ref() , self$distr_param_objs$sd$expr_ref() + #, par ) } self$likelihood = \(obs, sim) { @@ -669,6 +675,7 @@ mp_log_normal = function(location = mp_distr_param_null("location") , obs , sim , self$distr_param_objs$sd$expr_ref() + #, obs ) } self$check_variable = function(variable) { @@ -696,17 +703,19 @@ mp_logit_normal = function(location = mp_distr_param_null("location") ) self$prior = \(par) { - sprintf("-sum(dnorm(log(%s) - log(1 - %s), %s, %s))" + sprintf("-sum(dnorm(log(%s) - log(1 - %s), %s, %s) / (%s * (1 - %s)))" , par, par , self$distr_param_objs$location$expr_ref() , self$distr_param_objs$sd$expr_ref() + , par, par ) } self$likelihood = \(obs, sim) { - sprintf("-sum(dnorm(log(%s) - log(1 - %s), log(%s) - log(1 - %s), %s))" + sprintf("-sum(dnorm(log(%s) - log(1 - %s), log(%s) - log(1 - %s), %s) / (%s * (1 - %s)))" , obs, obs , sim, sim , self$distr_param_objs$sd$expr_ref() + , obs, obs ) } self$check_variable = function(variable) { diff --git a/R/mp_tmb_calibrator.R b/R/mp_tmb_calibrator.R index b86fc4bed..1a29539a0 100644 --- a/R/mp_tmb_calibrator.R +++ b/R/mp_tmb_calibrator.R @@ -213,6 +213,8 @@ print.TMBCalibrator = function(x, ...) { } } + + #' Optimize #' #' @param model A model object capable of being optimized. See below @@ -740,14 +742,14 @@ TMBTV.TVArg = function(tv self$ptv_list = struc$matrix_list[self$pnms] |> fix_tv_list() self$rtv_list = struc$matrix_list[self$rnms] |> fix_tv_list() self$ktv_list = struc$matrix_list[self$knms] |> fix_tv_list() - self$stv_list = self$tv$linear |> fix_linear_list() + self$ltv_list = self$tv$linear |> fix_linear_list() self$time_var = function() { l = list() for (nm in self$pnms) l[[nm]] = self$ptv_list[[nm]]$default for (nm in self$rnms) l[[nm]] = self$rtv_list[[nm]]$default for (nm in self$knms) l[[nm]] = self$ktv_list[[nm]]$default - for (nm in self$lnms) l[[nm]] = self$stv_list[[nm]]$initial_weights + for (nm in self$lnms) l[[nm]] = self$ltv_list[[nm]]$initial_weights return(l) } @@ -775,20 +777,20 @@ TMBTV.TVArg = function(tv self$values_var = function() { l = list() - for (nm in self$lnms) l[[nm]] = self$stv_list[[nm]]$sparse_basis_data$values + for (nm in self$lnms) l[[nm]] = self$ltv_list[[nm]]$sparse_basis_data$values return(l) } self$prior_sd = function() { l = list() - for (nm in self$lnms) l[[nm]] = self$stv_list[[nm]]$prior_sd + for (nm in self$lnms) l[[nm]] = self$ltv_list[[nm]]$prior_sd return(l) } self$row_indexes = function() { l = list() for (nm in self$lnms) { - l[[nm]] = as.integer(self$stv_list[[nm]]$sparse_basis_data$row_index) + l[[nm]] = as.integer(self$ltv_list[[nm]]$sparse_basis_data$row_index) } return(l) } @@ -796,14 +798,14 @@ TMBTV.TVArg = function(tv self$col_indexes = function() { l = list() for (nm in self$lnms) { - l[[nm]] = as.integer(self$stv_list[[nm]]$sparse_basis_data$col_index) + l[[nm]] = as.integer(self$ltv_list[[nm]]$sparse_basis_data$col_index) } return(l) } self$outputs_var = function() { l = list() - for (nm in self$lnms) l[[nm]] = self$stv_list[[nm]]$initial_outputs + for (nm in self$lnms) l[[nm]] = self$ltv_list[[nm]]$initial_outputs return(l) } @@ -816,6 +818,10 @@ TMBTV.TVArg = function(tv } self$var_update_exprs = function() { + ## turns out all types of time variation require + ## the same step here, but going to keep it + ## separated for now in case we would like to + ## modify specific types. nms = self$global_names_by_tv_type() s = character() s = c(s, sprintf("%s ~ time_var(%s, %s)" @@ -833,7 +839,7 @@ TMBTV.TVArg = function(tv , nms$known$time_var , nms$known$change_points )) - s = c(s, sprintf("%s ~ exp(time_var(%s, %s))" + s = c(s, sprintf("%s ~ time_var(%s, %s)" , self$lnms , nms$linear$outputs_var , nms$linear$data_time_indexes @@ -899,8 +905,22 @@ TMBTV.TVArg = function(tv ## during calibration ## (e.g., time_var_beta) gnms = self$global_names_by_tv_type() - gnms = c(gnms$params$time_var, gnms$linear$time_var) - self$.util_params_frame(gnms) + nms = c(gnms$params$time_var, gnms$linear$time_var) + d = self$.util_params_frame(nms) + linear = self$tv$linear + for (nms in names(linear)) { + p = linear[[nms]] + if (p$fit_prior_sd) { + d_prior = data.frame( + mat = gnms$linear$prior_sd[[nms]] + , row = 0L + , col = 0L + , default = p$prior_sd + ) + d = rbind(d, d_prior) + } + } + return(d) } self$tv_random_frame = function() { @@ -914,6 +934,21 @@ TMBTV.TVArg = function(tv self$.util_params_frame(gnms) } + self$before_loop = function() { + nms = self$global_names_by_tv_type()$linear + s = sprintf("%s ~ group_sums(%s * %s[%s], %s, %s)" + , nms$outputs_var, nms$values_var, nms$time_var + , nms$col_indexes, nms$row_indexes, nms$outputs_var + ) + s2 = sprintf("%s ~ %s * exp(c(%s[0], %s))" + , nms$outputs_var, self$lnms, nms$outputs_var, nms$outputs_var + ) + as.list(c(lapply(s, as.formula), lapply(s2, as.formula))) + } + + #self$tv_distr_params = function() self$tv$params$default() + #self$tv_distr_random = function() self$tv$random$default() + self$tv$params = macpan2:::DistrList(self$tv$params, spec) self$tv$random = macpan2:::DistrList(self$tv$random, spec) self$tv$params$update_global_names(self, "tv_distr_params") @@ -1473,7 +1508,7 @@ TMBPar.ParArg = function(par bind_rows(pf , self$traj$distr_params_frame() , self$distr_params_frame() - ## do we need tv params here? + #, self$tv_distr_params_frame() ) } self$random_frame = function() { @@ -1487,7 +1522,7 @@ TMBPar.ParArg = function(par ) } - self$distr_params = function() self$par$params$default() + self$distr_params = function() self$par$params$default() # self$tv$params$default() self$distr_random = function() self$par$random$default() self$distr_params_frame = function() self$par$params$distr_params_frame() self$distr_random_frame = function() self$par$random$distr_params_frame() diff --git a/tests/testthat/test-distributions.R b/tests/testthat/test-distributions.R index 1d2229265..929f9965d 100644 --- a/tests/testthat/test-distributions.R +++ b/tests/testthat/test-distributions.R @@ -1,4 +1,13 @@ library(macpan2); library(testthat); library(dplyr); library(tidyr); library(ggplot2) + +norm = mp_normal(location = "texas", sd = "fred") +norm$likelihood("obs", "exp") +norm$prior("beta") +norm$distr_param_objs$location$expr_ref() +norm$distr_param_objs$sd$expr_ref() + + + test_that("distributions give appropriate variable assumption warnings", { # At this time the only distribution with variable assumptions is the From 48f9a753b0e01e013dfef341e86000968c0d2fe6 Mon Sep 17 00:00:00 2001 From: stevencarlislewalker Date: Tue, 3 Dec 2024 14:24:06 -0500 Subject: [PATCH 3/3] tv --- R/mp_tmb_calibrator.R | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/R/mp_tmb_calibrator.R b/R/mp_tmb_calibrator.R index 1a29539a0..560e9b22f 100644 --- a/R/mp_tmb_calibrator.R +++ b/R/mp_tmb_calibrator.R @@ -818,10 +818,6 @@ TMBTV.TVArg = function(tv } self$var_update_exprs = function() { - ## turns out all types of time variation require - ## the same step here, but going to keep it - ## separated for now in case we would like to - ## modify specific types. nms = self$global_names_by_tv_type() s = character() s = c(s, sprintf("%s ~ time_var(%s, %s)" @@ -839,7 +835,7 @@ TMBTV.TVArg = function(tv , nms$known$time_var , nms$known$change_points )) - s = c(s, sprintf("%s ~ time_var(%s, %s)" + s = c(s, sprintf("%s ~ exp(time_var(%s, %s))" , self$lnms , nms$linear$outputs_var , nms$linear$data_time_indexes @@ -940,8 +936,8 @@ TMBTV.TVArg = function(tv , nms$outputs_var, nms$values_var, nms$time_var , nms$col_indexes, nms$row_indexes, nms$outputs_var ) - s2 = sprintf("%s ~ %s * exp(c(%s[0], %s))" - , nms$outputs_var, self$lnms, nms$outputs_var, nms$outputs_var + s2 = sprintf("%s ~ c(%s[0], %s)" + , nms$outputs_var, nms$outputs_var, nms$outputs_var ) as.list(c(lapply(s, as.formula), lapply(s2, as.formula))) }