From 64f3bc69786f9a67b45e5a405fe609ac9f1106ae Mon Sep 17 00:00:00 2001 From: tereom Date: Thu, 28 Nov 2024 01:57:52 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20tereom/f?= =?UTF-8?q?undamentos-2024@5c31f8be667c59c19880cf28f016099631dca467=20?= =?UTF-8?q?=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 01-exploratorio.md | 294 +-- 10-bootstrap-parametrico.md | 32 +- 12-mas-hipotesis.md | 79 +- .../figure-html/unnamed-chunk-44-1.png | Bin 30131 -> 30174 bytes 14-intro-bayesiana.md | 158 +- ...-chunk-18-1.png => unnamed-chunk-17-1.png} | Bin ...-chunk-21-1.png => unnamed-chunk-20-1.png} | Bin .../figure-html/unnamed-chunk-25-1.png | Bin 0 -> 75216 bytes .../figure-html/unnamed-chunk-26-1.png | Bin 74222 -> 0 bytes .../figure-html/unnamed-chunk-28-1.png | Bin 0 -> 110516 bytes .../figure-html/unnamed-chunk-29-1.png | Bin 59875 -> 68086 bytes .../figure-html/unnamed-chunk-30-1.png | Bin 68086 -> 0 bytes ...-chunk-36-1.png => unnamed-chunk-35-1.png} | Bin .../figure-html/unnamed-chunk-37-1.png | Bin 0 -> 13505 bytes .../figure-html/unnamed-chunk-38-1.png | Bin 13505 -> 13266 bytes .../figure-html/unnamed-chunk-39-1.png | Bin 13266 -> 0 bytes ...-chunk-44-1.png => unnamed-chunk-43-1.png} | Bin .../figure-html/unnamed-chunk-6-1.png | Bin 0 -> 9788 bytes .../figure-html/unnamed-chunk-7-1.png | Bin 9624 -> 0 bytes .../figure-html/unnamed-chunk-8-1.png | Bin 0 -> 19561 bytes .../figure-html/unnamed-chunk-9-1.png | Bin 19884 -> 0 bytes 15-bayesiana-calibracion.md | 1080 +++++++++ .../figure-html/unnamed-chunk-10-1.png | Bin 0 -> 97699 bytes .../figure-html/unnamed-chunk-11-1.png | Bin 0 -> 67261 bytes .../figure-html/unnamed-chunk-13-1.png | Bin 0 -> 11318 bytes .../figure-html/unnamed-chunk-16-1.png | Bin 0 -> 69772 bytes .../figure-html/unnamed-chunk-17-1.png | Bin 0 -> 63483 bytes .../figure-html/unnamed-chunk-20-1.png | Bin 0 -> 22066 bytes .../figure-html/unnamed-chunk-31-1.png | Bin 0 -> 26738 bytes .../figure-html/unnamed-chunk-33-1.png | Bin 0 -> 72856 bytes .../figure-html/unnamed-chunk-35-1.png | Bin 0 -> 23122 bytes .../figure-html/unnamed-chunk-37-1.png | Bin 0 -> 66444 bytes .../figure-html/unnamed-chunk-39-1.png | Bin 0 -> 51627 bytes .../figure-html/unnamed-chunk-6-1.png | Bin 0 -> 61563 bytes .../figure-html/unnamed-chunk-8-1.png | Bin 0 -> 84934 bytes 16-bayes-mcmc.md | 2146 +++++++++++++++++ .../figure-html/unnamed-chunk-13-1.png | Bin 0 -> 40661 bytes .../figure-html/unnamed-chunk-14-1.png | Bin 0 -> 57231 bytes .../figure-html/unnamed-chunk-15-1.png | Bin 0 -> 48840 bytes .../figure-html/unnamed-chunk-16-1.png | Bin 0 -> 51777 bytes .../figure-html/unnamed-chunk-19-1.png | Bin 0 -> 10040 bytes .../figure-html/unnamed-chunk-20-1.png | Bin 0 -> 13613 bytes .../figure-html/unnamed-chunk-21-1.png | Bin 0 -> 104955 bytes .../figure-html/unnamed-chunk-24-1.png | Bin 0 -> 9916 bytes .../figure-html/unnamed-chunk-25-1.png | Bin 0 -> 17969 bytes .../figure-html/unnamed-chunk-26-1.png | Bin 0 -> 15940 bytes .../figure-html/unnamed-chunk-27-1.png | Bin 0 -> 44698 bytes .../figure-html/unnamed-chunk-33-1.png | Bin 0 -> 26296 bytes .../figure-html/unnamed-chunk-34-1.png | Bin 0 -> 55546 bytes .../figure-html/unnamed-chunk-38-1.png | Bin 0 -> 91221 bytes .../figure-html/unnamed-chunk-42-1.png | Bin 0 -> 9329 bytes .../figure-html/unnamed-chunk-45-1.png | Bin 0 -> 116650 bytes .../figure-html/unnamed-chunk-51-1.png | Bin 0 -> 17104 bytes .../figure-html/unnamed-chunk-52-1.png | Bin 0 -> 59493 bytes .../figure-html/unnamed-chunk-53-1.png | Bin 0 -> 9039 bytes .../figure-html/unnamed-chunk-55-1.png | Bin 0 -> 233856 bytes .../figure-html/unnamed-chunk-58-1.png | Bin 0 -> 9608 bytes .../figure-html/unnamed-chunk-59-1.png | Bin 0 -> 16646 bytes .../figure-html/unnamed-chunk-60-1.png | Bin 0 -> 112169 bytes .../figure-html/unnamed-chunk-61-1.png | Bin 0 -> 47690 bytes .../figure-html/unnamed-chunk-62-1.png | Bin 0 -> 11404 bytes .../figure-html/unnamed-chunk-64-1.png | Bin 0 -> 73346 bytes .../figure-html/unnamed-chunk-65-1.png | Bin 0 -> 72929 bytes .../figure-html/unnamed-chunk-66-1.png | Bin 0 -> 80791 bytes .../figure-html/unnamed-chunk-67-1.png | Bin 0 -> 59198 bytes .../figure-html/unnamed-chunk-68-1.png | Bin 0 -> 136389 bytes .../figure-html/unnamed-chunk-72-1.png | Bin 0 -> 22948 bytes .../figure-html/unnamed-chunk-73-1.png | Bin 0 -> 23152 bytes 404.html | 64 + 89-transformaciones.md | 110 +- .../figure-html/unnamed-chunk-3-1.png | Bin 36302 -> 36406 bytes .../figure-html/unnamed-chunk-4-1.png | Bin 116445 -> 116061 bytes "an\303\241lisis-exploratorio.html" | 358 +-- ...251ndice-principios-de-visualizacion.html" | 68 +- "ap\303\251ndice-transformaciones.html" | 262 +- "bootstrap-param\303\251trico.html" | 96 +- ...3n-bayesiana-y-regularizaci\303\263n.html" | 1326 ++++++++++ ...263n-por-m\303\241xima-verosimilitud.html" | 64 + ...-y-distribuci\303\263n-de-muestreo-1.html" | 64 + index.html | 64 + intervalos-de-confianza-y-remuestreo.html | 64 + ...ci\303\263n-a-inferencia-bayesiana-1.html" | 638 ++--- ...bas-de-hip\303\263tesis-e-intervalos.html" | 437 ++-- ...dos-de-cadenas-de-markov-monte-carlo.html" | 2138 ++++++++++++++++ "propiedades-te\303\263ricas-de-mle.html" | 64 + "pruebas-de-hip\303\263tesis.html" | 64 + reference-keys.txt | 3 + referencias.html | 70 + search_index.json | 2 +- temario.html | 64 + tipos-de-estudio-y-experimentos.html | 64 + 91 files changed, 8811 insertions(+), 1062 deletions(-) rename 14-intro-bayesiana_files/figure-html/{unnamed-chunk-18-1.png => unnamed-chunk-17-1.png} (100%) rename 14-intro-bayesiana_files/figure-html/{unnamed-chunk-21-1.png => unnamed-chunk-20-1.png} (100%) create mode 100644 14-intro-bayesiana_files/figure-html/unnamed-chunk-25-1.png delete mode 100644 14-intro-bayesiana_files/figure-html/unnamed-chunk-26-1.png create mode 100644 14-intro-bayesiana_files/figure-html/unnamed-chunk-28-1.png delete mode 100644 14-intro-bayesiana_files/figure-html/unnamed-chunk-30-1.png rename 14-intro-bayesiana_files/figure-html/{unnamed-chunk-36-1.png => unnamed-chunk-35-1.png} (100%) create mode 100644 14-intro-bayesiana_files/figure-html/unnamed-chunk-37-1.png delete mode 100644 14-intro-bayesiana_files/figure-html/unnamed-chunk-39-1.png rename 14-intro-bayesiana_files/figure-html/{unnamed-chunk-44-1.png => unnamed-chunk-43-1.png} (100%) create mode 100644 14-intro-bayesiana_files/figure-html/unnamed-chunk-6-1.png delete mode 100644 14-intro-bayesiana_files/figure-html/unnamed-chunk-7-1.png create mode 100644 14-intro-bayesiana_files/figure-html/unnamed-chunk-8-1.png delete mode 100644 14-intro-bayesiana_files/figure-html/unnamed-chunk-9-1.png create mode 100644 15-bayesiana-calibracion.md create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-10-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-11-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-13-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-16-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-17-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-20-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-31-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-33-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-35-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-37-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-39-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-6-1.png create mode 100644 15-bayesiana-calibracion_files/figure-html/unnamed-chunk-8-1.png create mode 100644 16-bayes-mcmc.md create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-13-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-14-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-15-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-16-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-19-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-20-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-21-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-24-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-25-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-26-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-27-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-33-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-34-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-38-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-42-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-45-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-51-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-52-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-53-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-55-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-58-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-59-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-60-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-61-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-62-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-64-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-65-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-66-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-67-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-68-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-72-1.png create mode 100644 16-bayes-mcmc_files/figure-html/unnamed-chunk-73-1.png create mode 100644 "calibraci\303\263n-bayesiana-y-regularizaci\303\263n.html" create mode 100644 "m\303\251todos-de-cadenas-de-markov-monte-carlo.html" diff --git a/01-exploratorio.md b/01-exploratorio.md index 789bd15..f08ea99 100644 --- a/01-exploratorio.md +++ b/01-exploratorio.md @@ -67,23 +67,23 @@ slice_sample(propinas, n = 10) |> gt() ``` ```{=html} -
- @@ -528,66 +528,66 @@ slice_sample(propinas, n = 10) |> gt() - 8.35 -1.50 + 9.78 +1.73 No Jue Comida 2 - 16.45 -2.47 + 13.42 +1.68 No -Sab -Cena +Jue +Comida 2 - 15.69 -3.00 + 11.02 +1.98 Si Sab Cena -3 - 17.78 -3.27 +2 + 22.49 +3.50 No -Sab +Vie Cena 2 - 20.92 -4.08 -No + 11.59 +1.50 +Si Sab Cena 2 - 25.00 -3.75 + 24.71 +5.85 No +Jue +Comida +2 + 9.60 +4.00 +Si Dom Cena -4 - 38.73 +2 + 19.65 3.00 -Si +No Sab Cena -4 - 12.74 -2.01 -Si -Jue -Comida -2 - 15.48 -2.02 -Si -Jue -Comida 2 - 13.42 -3.48 -Si -Vie -Comida + 18.04 +3.00 +No +Dom +Cena 2 + 30.40 +5.60 +No +Dom +Cena +4 @@ -636,23 +636,23 @@ bind_rows(head(cuenta), tail(cuenta)) |> ``` ```{=html} -
- diff --git a/10-bootstrap-parametrico.md b/10-bootstrap-parametrico.md index 6f2be58..ff189bf 100644 --- a/10-bootstrap-parametrico.md +++ b/10-bootstrap-parametrico.md @@ -62,7 +62,7 @@ res$convergence ``` ``` r -est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) %>% +est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) |> column_to_rownames(var = "parametro") ``` @@ -116,7 +116,7 @@ res_boot$convergence ``` ``` r -est_mle_boot <- tibble(parametro = c("media", "sigma"), estimador = res_boot$par) %>% +est_mle_boot <- tibble(parametro = c("media", "sigma"), estimador = res_boot$par) |> column_to_rownames(var = "parametro") est_mle_boot ``` @@ -176,7 +176,7 @@ Ya ahora podemos estimar error estándar: ``` r -error_est <- reps_boot %>% group_by(parametro) %>% +error_est <- reps_boot |> group_by(parametro) |> summarise(ee_boot = sd(estimador_boot)) error_est ``` @@ -192,8 +192,8 @@ Así que nuestra estimación final sería: ``` r -bind_cols(est_mle, error_est) %>% - mutate(across(where(is.numeric), round, 3)) %>% +bind_cols(est_mle, error_est) |> + mutate(across(where(is.numeric), round, 3)) |> select(parametro, estimador, ee_boot) ``` @@ -252,7 +252,7 @@ res$convergence ``` ``` r -est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) %>% +est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) |> column_to_rownames(var = "parametro") est_mle ``` @@ -314,7 +314,7 @@ examinar este comportamiendo visualizando las replicaciones bootstrap ``` r -ggplot(reps_boot %>% pivot_wider(names_from = parametro, values_from = estimador_boot), +ggplot(reps_boot |> pivot_wider(names_from = parametro, values_from = estimador_boot), aes(x = media, y = sigma)) + geom_point(alpha = 0.5) + coord_equal() ``` @@ -459,11 +459,11 @@ ajustando un modelo para cada horario: ``` r -propinas <- read_csv("data/propinas.csv") %>% +propinas <- read_csv("data/propinas.csv") |> mutate(cuenta_persona = cuenta_total / num_personas) -propinas_mle <- propinas %>% - group_by(momento) %>% - summarise(est_mle = list(tidy(MASS::fitdistr(cuenta_persona, "lognormal")))) %>% +propinas_mle <- propinas |> + group_by(momento) |> + summarise(est_mle = list(tidy(MASS::fitdistr(cuenta_persona, "lognormal")))) |> unnest(est_mle) propinas_mle ``` @@ -484,11 +484,11 @@ Ahora verificamos el ajuste: ``` r -g_1 <- ggplot(propinas %>% filter(momento == "Cena"), aes(sample = cuenta_persona)) + +g_1 <- ggplot(propinas |> filter(momento == "Cena"), aes(sample = cuenta_persona)) + geom_qq(dparams = list(mean = propinas_mle$estimate[1], sd = propinas_mle$estimate[2]), distribution = stats::qlnorm) + ylim(c(0, 20)) + geom_abline() + labs(subtitle = "Cena") -g_2 <- ggplot(propinas %>% filter(momento == "Comida"), aes(sample = cuenta_persona)) + +g_2 <- ggplot(propinas |> filter(momento == "Comida"), aes(sample = cuenta_persona)) + geom_qq(dparams = list(mean = propinas_mle$estimate[3], sd = propinas_mle$estimate[4]), distribution = stats::qlnorm) + ylim(c(0, 20)) + geom_abline() + labs(subtitle = "Comida") @@ -630,9 +630,9 @@ rep_boot <- function(rep, simular, crear_log_p, pars, n){ } set.seed(8934) reps_boot <- map(1:500, ~ rep_boot(.x, simular_modelo, crear_log_p, est_mle, - n = length(muestra))) %>% - bind_rows -reps_boot %>% mutate(across(everything(), round, 2)) %>% head() + n = length(muestra))) |> + bind_rows() +reps_boot |> mutate(across(everything(), round, 2)) |> head() ``` ``` diff --git a/12-mas-hipotesis.md b/12-mas-hipotesis.md index 304fcee..80f9c9b 100644 --- a/12-mas-hipotesis.md +++ b/12-mas-hipotesis.md @@ -77,11 +77,11 @@ Obtenemos: ``` r set.seed(29) -muestra_edomex <- read_csv("data/enlace.csv") %>% - filter(estado == "ESTADO DE MEXICO") %>% +muestra_edomex <- read_csv("data/enlace.csv") |> + filter(estado == "ESTADO DE MEXICO") |> sample_n(180) -resumen <- muestra_edomex %>% - summarise(media = mean(mate_6), s = sd(mate_6), n = n()) %>% +resumen <- muestra_edomex |> + summarise(media = mean(mate_6), s = sd(mate_6), n = n()) |> mutate(ee = s / sqrt(n)) resumen ``` @@ -98,15 +98,16 @@ es igual a 454. Calculamos el valor-$p$ usando la prueba de Wald: ``` r -dif <- (resumen %>% pull(media)) - 454 -ee <- resumen %>% pull(ee) +dif <- (resumen |> pull(media)) - 454 +ee <- resumen |> pull(ee) w <- dif / ee -p <- 2 * (1 - pnorm(abs(w))) + +p <- 2 * (1 - pt(abs(w), 179)) p ``` ``` -## [1] 0.8410806 +## [1] 0.8413082 ``` y vemos que esta muestra es consistente con la media nacional. No tenemos evidencia en contra de que la media del estado de México es muy similar @@ -347,7 +348,7 @@ Supongamos por ejemplo que los datos que obtenemos son: ``` r -datos_clasif %>% head +datos_clasif |> head() ``` ``` @@ -366,9 +367,9 @@ Como explicamos arriba, nos interesa la diferencia. Calculamos $d$: ``` r -datos_clasif <- datos_clasif %>% +datos_clasif <- datos_clasif |> mutate(d = x - y) -datos_clasif %>% head +datos_clasif |> head() ``` ``` @@ -382,12 +383,26 @@ datos_clasif %>% head ## 5 5 0 1 -1 ## 6 6 1 0 1 ``` + +``` r +datos_clasif |> + summarise(sd_x = sd(x), + sd_y = sd(y), + sd_d = sd(d)) +``` + +``` +## # A tibble: 1 × 3 +## sd_x sd_y sd_d +## +## 1 0.393 0.309 0.539 +``` Y ahora calculamos la media de $d$ (y tasa de correctos de cada clasificador:) ``` r medias_tbl <- - datos_clasif %>% summarise(across(where(is.numeric), mean, .names = "{col}_hat")) + datos_clasif |> summarise(across(where(is.numeric), mean, .names = "{col}_hat")) d_hat <- pull(medias_tbl, d_hat) medias_tbl ``` @@ -402,10 +417,10 @@ Ahora necesitamos calcular el error estándar. Como explicamos arriba, hacemos ``` r -ee <- datos_clasif %>% - mutate(d_hat = mean(d)) %>% - mutate(dif_2 = (d - d_hat)) %>% - summarise(ee = sd(dif_2) / sqrt(n())) %>% +ee <- datos_clasif |> + mutate(d_hat = mean(d)) |> + mutate(dif_2 = (d - d_hat)) |> + summarise(ee = sd(dif_2) / sqrt(n())) |> pull(ee) ee ``` @@ -420,7 +435,7 @@ Y ahora podemos calcular la estadística $W$ y el valor p correspondiente: ``` r w <- d_hat / ee valor_p <- 2 * (1 - pnorm(abs(w))) -c(w = w, valor_p = valor_p) %>% round(3) +c(w = w, valor_p = valor_p) |> round(3) ``` ``` @@ -483,7 +498,7 @@ hipótesis nula. Esto se explica en la siguiente gráfica: log_verosim <- function(p){ 75 * log(p) + (120 - 75) * log(1 - p) } -verosim_tbl <- tibble(p = seq(0.4, 0.7, 0.01)) %>% +verosim_tbl <- tibble(p = seq(0.4, 0.7, 0.01)) |> mutate(log_verosim = log_verosim(p)) ggplot(verosim_tbl, aes(x = p, y = log_verosim)) + geom_line() + @@ -540,7 +555,7 @@ lambda <- function(n, x, p_0 = 0.5){ lambda } lambda_obs <- lambda(n_volados, 75, 0.5) -sims_tbl <- tibble(sim_x = simulados_nula) %>% +sims_tbl <- tibble(sim_x = simulados_nula) |> mutate(lambda = map_dbl(sim_x, ~ lambda(n_volados, .x, p_0 = 0.5))) ggplot(sims_tbl, aes(x = lambda)) + geom_histogram(binwidth = 0.7) + @@ -584,7 +599,7 @@ crear_log_p <- function(x){ # crear log verosim para dos muestras normales independientes. log_p <- function(params){ mu <- params[1] - log_vero <- dnorm(x, mean = mu, sd = 1, log = TRUE) %>% sum + log_vero <- dnorm(x, mean = mu, sd = 1, log = TRUE) |> sum() log_vero } } @@ -611,7 +626,7 @@ bajo la nula ``` r sims_nula <- map(1:10000, ~ rnorm(n_muestra, 8, 1)) lambda_nula_sim <- map_dbl(sims_nula, ~ lambda_calc(.x, crear_log_p)) -tibble(lambda = lambda_nula_sim) %>% +tibble(lambda = lambda_nula_sim) |> ggplot(aes(x = lambda)) + geom_histogram() + geom_vline(xintercept = lambda, colour = "red") ``` @@ -636,9 +651,9 @@ checar para el último ejemplo: ``` r -teorica <- tibble(x = seq(0.1, 10, 0.01)) %>% +teorica <- tibble(x = seq(0.1, 10, 0.01)) |> mutate(f_chi_1 = dchisq(x, df = 1)) -tibble(lambda = lambda_nula_sim) %>% +tibble(lambda = lambda_nula_sim) |> ggplot() + geom_histogram(aes(x = lambda, y = ..density..), binwidth = 0.1) + geom_line(data = teorica, aes(x = x, y = f_chi_1), colour = "red") ``` @@ -650,7 +665,7 @@ la téorica: ``` r -tibble(lambda = lambda_nula_sim) %>% +tibble(lambda = lambda_nula_sim) |> ggplot(aes(sample = lambda)) + geom_qq(distribution = stats::qchisq, dparams = list(df = 1)) + geom_qq_line(distribution = stats::qchisq, dparams = list(df = 1)) @@ -696,8 +711,8 @@ crear_log_p <- function(x, y){ mu_2 <- params[2] sigma_1 <- params[3] sigma_2 <- params[4] - log_vero_1 <- dnorm(x, mean = mu_1, sd = sigma_1, log = TRUE) %>% sum - log_vero_2 <- dnorm(y, mean = mu_2, sd = sigma_2, log = TRUE) %>% sum + log_vero_1 <- dnorm(x, mean = mu_1, sd = sigma_1, log = TRUE) |> sum() + log_vero_2 <- dnorm(y, mean = mu_2, sd = sigma_2, log = TRUE) |> sum() log_vero <- log_vero_1 + log_vero_2 #se suman por independiencia log_vero } @@ -713,8 +728,8 @@ crear_log_p_nula <- function(x, y){ mu <- params[1] sigma_1 <- params[2] sigma_2 <- params[3] - log_vero_1 <- dnorm(x, mean = mu, sd = sigma_1, log = TRUE) %>% sum - log_vero_2 <- dnorm(y, mean = mu, sd = sigma_2, log = TRUE) %>% sum + log_vero_1 <- dnorm(x, mean = mu, sd = sigma_1, log = TRUE) |> sum() + log_vero_2 <- dnorm(y, mean = mu, sd = sigma_2, log = TRUE) |> sum() log_vero <- log_vero_1 + log_vero_2 #se suman por independiencia log_vero } @@ -835,7 +850,7 @@ que obtuvimos: ``` r -tibble(lambda = lambda_sim) %>% +tibble(lambda = lambda_sim) |> ggplot(aes(x = lambda)) + geom_histogram() + geom_vline(xintercept = lambda, colour = "red") @@ -859,7 +874,7 @@ con un grado de libertad. ``` r -tibble(lambda = lambda_sim) %>% +tibble(lambda = lambda_sim) |> ggplot(aes(sample = lambda)) + geom_qq(distribution = stats::qchisq, dparams = list(df = 1)) + geom_qq_line(distribution = stats::qchisq, dparams = list(df = 1)) @@ -1068,8 +1083,8 @@ de la función potencia es entonces ``` r -potencia_tbl <- tibble(mu = seq(450, 550, 1)) %>% - mutate(beta = pnorm((505 - mu)/13)) %>% # probabilidad de rechazar +potencia_tbl <- tibble(mu = seq(450, 550, 0.5)) |> + mutate(beta = pnorm((505 - mu)/13)) |> # probabilidad de rechazar mutate(nula_verdadera = factor(mu >= 515)) # nula verdadera ggplot(potencia_tbl, aes(x = mu, y = beta, colour = nula_verdadera)) + geom_line() diff --git a/12-mas-hipotesis_files/figure-html/unnamed-chunk-44-1.png b/12-mas-hipotesis_files/figure-html/unnamed-chunk-44-1.png index 9abeb9fccf47be149d117d71df99c7f556ec994a..02dffa358b2439fc6c653088667280ff26de7a1e 100644 GIT binary patch literal 30174 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 literal 30131 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 diff --git a/14-intro-bayesiana.md b/14-intro-bayesiana.md index 47410df..decf046 100644 --- a/14-intro-bayesiana.md +++ b/14-intro-bayesiana.md @@ -95,11 +95,10 @@ Este es un ejemplo completo, aunque muy simple, de inferencia bayesiana. La estrategia de **inferencia bayesiana implica tomar decisiones basadas en las probabilidades posteriores.** -
-

¿Cuál sería la estimación de máxima verosimilitud para este problema? -¿Cómo cuantificaríamos la incertidumbre en la estimación de máxima -verosimilitud?

-
+ + + + Finalmente, podríamos hacer predicciones usando la **posterior predictiva**. Si ${X}_{nv}$ es una nueva tirada adicional de la moneda que estamos usando, nos @@ -208,14 +207,14 @@ crear_verosim <- function(no_soles){ # evaluar verosimilitud verosim <- crear_verosim(2) # ahora usamos regla de bayes para hacer tabla de probabilidades -tabla_inferencia <- probs_inicial %>% - mutate(verosimilitud = map_dbl(theta, verosim)) %>% - mutate(inicial_x_verosim = prob_inicial * verosimilitud) %>% +tabla_inferencia <- probs_inicial |> + mutate(verosimilitud = map_dbl(theta, verosim)) |> + mutate(inicial_x_verosim = prob_inicial * verosimilitud) |> # normalizar mutate(prob_posterior = inicial_x_verosim / sum(inicial_x_verosim)) -tabla_inferencia %>% - mutate(moneda_obs = moneda) %>% +tabla_inferencia |> + mutate(moneda_obs = moneda) |> select(moneda_obs, theta, prob_inicial, verosimilitud, prob_posterior) ``` @@ -321,14 +320,14 @@ sim_inicial <- tibble(theta = rbeta(10000, 3, 3)) ggplot(sim_inicial) + geom_histogram(aes(x = theta, y = ..density..), bins = 15) ``` - + De modo que nuestra información inicial es que la proporción puede tomar cualquier valor entre 0 y 1, pero es probable que tome un valor no tan lejano de 0.5. Por ejemplo, con probabilidad 0.95 creemos que $\theta$ está en el intervalo ``` r -quantile(sim_inicial$theta, c(0.025, 0.975)) %>% round(2) +quantile(sim_inicial$theta, c(0.025, 0.975)) |> round(2) ``` ``` @@ -362,14 +361,14 @@ Concluimos entonces que la posterior tiene una distribución $\mathsf{Beta}(22, ``` r -sim_inicial <- sim_inicial %>% mutate(dist = "inicial") -sim_posterior <- tibble(theta = rbeta(10000, 22, 14)) %>% mutate(dist = "posterior") +sim_inicial <- sim_inicial |> mutate(dist = "inicial") +sim_posterior <- tibble(theta = rbeta(10000, 22, 14)) |> mutate(dist = "posterior") sims <- bind_rows(sim_inicial, sim_posterior) ggplot(sims, aes(x = theta, fill = dist)) + geom_histogram(aes(x = theta), bins = 30, alpha = 0.5, position = "identity") ``` - + La posterior nos dice cuáles son las *posibilidades* de dónde puede estar el parámetro $\theta$. Nótese que ahora excluye prácticamente valores más chicos @@ -381,16 +380,16 @@ usamos la media posterior: ``` r -sims %>% group_by(dist) %>% - summarise(theta_hat = mean(theta) %>% round(3)) +sims |> group_by(dist) |> + summarise(theta_hat = mean(theta) |> round(3)) ``` ``` ## # A tibble: 2 × 2 ## dist theta_hat ## -## 1 inicial 0.5 -## 2 posterior 0.611 +## 1 inicial 0.503 +## 2 posterior 0.61 ``` Nota que el estimador de máxima verosimilitud es $\hat{p} = 19/30 = 0.63$, que es ligeramente diferente de la media posterior. ¿Por qué? @@ -401,8 +400,8 @@ suelen llamarse *intervalos de credibilidad*, por ejemplo: ``` r f <- c(0.025, 0.975) -sims %>% group_by(dist) %>% - summarise(cuantiles = quantile(theta, f) %>% round(2), f = f) %>% +sims |> group_by(dist) |> + summarise(cuantiles = quantile(theta, f) |> round(2), f = f) |> pivot_wider(names_from = f, values_from = cuantiles) ``` @@ -455,7 +454,7 @@ puedes usar la aproximación de R, por ejemplo: ``` r -qbeta(0.025, shape1 = 22, shape2 = 14) %>% round(2) +qbeta(0.025, shape1 = 22, shape2 = 14) |> round(2) ``` ``` @@ -463,7 +462,7 @@ qbeta(0.025, shape1 = 22, shape2 = 14) %>% round(2) ``` ``` r -qbeta(0.975, shape1 = 22, shape2 = 14) %>% round(2) +qbeta(0.975, shape1 = 22, shape2 = 14) |> round(2) ``` ``` @@ -496,7 +495,8 @@ $$P(\theta) = \frac{\alpha \theta_0^\alpha}{\theta^{\alpha + 1}}$$ con soporte en $[\theta_0,\infty]$. Tenemos que escoger entonces el mínimo $\theta_0$ y el parámetro $\alpha$. En primer lugar, como sabemos que es una lotería nacional, creemos que no puede haber menos de unos 300 mil números, así que $\theta_0 = 300$. -La función acumulada de la pareto es $1- (300/\theta)^\alpha$, así que el cuantil 99% es +La función acumulada de la pareto es $1- (300/\theta)^\alpha$, así que si $\alpha = 1.1$ +el cuantil 99% es: ``` r @@ -507,8 +507,10 @@ alpha <- 1.1 ``` ## [1] 19738 ``` -es decir, alrededor de 20 millones de números. Creemos que es un poco probable + +es decir, alrededor de 20 millones de números. Creemos que es poco probable que el número de boletos sea mayor a esta cota. + Nótese ahora que la posterior cumple (multiplicando verosimilitud por inicial): $$P(\theta|X_1,\ldots, X_n |\theta) \propto \theta^{-(n + 2.1)}$$ @@ -522,12 +524,12 @@ muestra de números: ``` r -loteria_tbl <- read_csv("data/nums_loteria_avion.csv", col_names = c("id", "numero")) %>% +loteria_tbl <- read_csv("data/nums_loteria_avion.csv", col_names = c("id", "numero")) |> mutate(numero = as.integer(numero)) set.seed(334) -muestra_loteria <- sample_n(loteria_tbl, 25) %>% +muestra_loteria <- sample_n(loteria_tbl, 25) |> mutate(numero = numero/1000) -muestra_loteria %>% as.data.frame %>% head +muestra_loteria |> as.data.frame() |> head() ``` ``` @@ -578,11 +580,12 @@ ggplot(sims_theta) + geom_rug(data = muestra_loteria, aes(x = numero)) ``` - + + Nótese que cortamos algunos valores de la inicial en la cola derecha: un defecto de esta distribución inicial, con una cola tan larga a la derecha, es que pone cierto peso en valores que son poco creíbles y la vuelve poco apropiada para -este problema. Regresamos más adelante a este problema. +este problema. Regresaremos más adelante a este problema. Si obtenemos percentiles, obtenemos el intervalo @@ -590,8 +593,8 @@ obtenemos el intervalo ``` r f <- c(0.025, 0.5, 0.975) -sims_theta %>% group_by(dist) %>% - summarise(cuantiles = quantile(theta, f) %>% round(2), f = f) %>% +sims_theta |> group_by(dist) |> + summarise(cuantiles = quantile(theta, f) |> round(2), f = f) |> pivot_wider(names_from = f, values_from = cuantiles) ``` @@ -626,7 +629,7 @@ qplot(rgamma(2000, 5, 0.001), geom="histogram", bins = 20) + scale_x_continuous(breaks = seq(1000, 15000, by = 2000)) ``` - + Sin embargo, los cálculos no son tan simples en este caso, pues la posterior no tiene un forma reconocible. Tendremos que usar otras estrategias de simulación @@ -741,6 +744,7 @@ no son tratables con análisis conjugado (veremos más adelante cómo tratarlos ### Ejemplo {-} + Supongamos que queremos estimar la estatura de los cantantes de tesitura tenor con una muestra iid de tenores de Estados Unidos. Usaremos el modelo normal de forma que $X_i\sim \mathsf{N}(\mu, \sigma^2)$. @@ -760,7 +764,7 @@ sigma_0 <- 7 # disperisón a <- 3 # ponemos 7 = sqrt(b/a) -> b = a * 64 -b <- a * sigma_0^2 +b <- a * sigma_0 ^ 2 c(a = a, b = b) ``` @@ -853,15 +857,15 @@ simular_normal_invgamma <- function(n, pars){ rnorm(n, mu, sigma) } set.seed(3461) -sims_tbl <- tibble(rep = 1:20) %>% - mutate(estatura = map(rep, ~ simular_normal_invgamma(500, c(mu_0, n_0, a, b)))) %>% +sims_tbl <- tibble(rep = 1:20) |> + mutate(estatura = map(rep, ~ simular_normal_invgamma(500, c(mu_0, n_0, a, b)))) |> unnest(cols = c(estatura)) ggplot(sims_tbl, aes(x = estatura)) + geom_histogram() + facet_wrap(~ rep) + geom_vline(xintercept = c(150, 180), colour = "red") ``` - + Pusimos líneas de referencia en 150 y 180. Vemos que nuestras iniciales no producen simulaciones totalmente fuera del contexto, y parecen cubrir apropiadamente el @@ -876,9 +880,9 @@ Ahora podemos usar los datos para calcular nuestras posteriores. ``` r set.seed(3413) -cantantes <- lattice::singer %>% - mutate(estatura_cm = round(2.54 * height)) %>% - filter(str_detect(voice.part, "Tenor")) %>% +cantantes <- lattice::singer |> + mutate(estatura_cm = round(2.54 * height)) |> + filter(str_detect(voice.part, "Tenor")) |> sample_n(20) cantantes ``` @@ -947,22 +951,22 @@ sim_params <- function(m, pars){ a <- pars[3] b <- pars[4] # simular sigmas - sims <- tibble(tau = rgamma(m, a, b)) %>% + sims <- tibble(tau = rgamma(m, a, b)) |> mutate(sigma = 1 / sqrt(tau)) # simular mu - sims <- sims %>% mutate(mu = rnorm(m, mu_0, sigma / sqrt(n_0))) + sims <- sims |> mutate(mu = rnorm(m, mu_0, sigma / sqrt(n_0))) sims } -sims_inicial <- sim_params(5000, c(mu_0, n_0, a, b)) %>% +sims_inicial <- sim_params(5000, c(mu_0, n_0, a, b)) |> mutate(dist = "inicial") -sims_posterior <- sim_params(5000, pars_posterior) %>% +sims_posterior <- sim_params(5000, pars_posterior) |> mutate(dist = "posterior") sims <- bind_rows(sims_inicial, sims_posterior) ggplot(sims, aes(x = mu, y = sigma, colour = dist)) + - geom_point() + geom_point(alpha = 0.4) ``` - + Y vemos que nuestra posterior es consistente con la información inicial que usamos, hemos aprendido considerablemente de la muestra. La posterior se @@ -971,33 +975,33 @@ media y desviación estándar. ``` r -medias_post <- sims %>% filter(dist == "posterior") %>% - select(-dist) %>% +medias_post <- sims |> filter(dist == "posterior") |> + select(-dist) |> summarise(across(everything(), mean)) -ggplot(sims %>% filter(dist == "posterior"), - aes(x = mu, y = sigma)) + +ggplot(sims |> filter(dist == "posterior"), aes(x = mu, y = sigma)) + geom_point(colour = "#00BFC4") + geom_point(data = medias_post, size = 5, colour = "black") + coord_equal() ``` - + + Podemos construir intervalos creíbles del 90% para estos dos parámetros, por ejemplo haciendo intervalos de percentiles: ``` r f <- c(0.05, 0.5, 0.95) -sims %>% - pivot_longer(cols = mu:sigma, names_to = "parametro") %>% - group_by(dist, parametro) %>% - summarise(cuantil = quantile(value, f) %>% round(1), f= f) %>% +sims |> + pivot_longer(cols = mu:sigma, names_to = "parametro") |> + group_by(dist, parametro) |> + reframe(cuantil = quantile(value, f) |> + round(1), f = f) |> pivot_wider(names_from = f, values_from = cuantil) ``` ``` ## # A tibble: 4 × 5 -## # Groups: dist, parametro [4] ## dist parametro `0.05` `0.5` `0.95` ## ## 1 inicial mu 169. 175. 181. @@ -1011,7 +1015,7 @@ Como comparación, los estimadores de máxima verosimlitud son ``` r media_mv <- mean(cantantes$estatura_cm) -sigma_mv <- mean((cantantes$estatura_cm - media_mv)^2) %>% sqrt +sigma_mv <- mean((cantantes$estatura_cm - media_mv)^2) |> sqrt() c(media_mv, sigma_mv) ``` @@ -1142,7 +1146,7 @@ Y ahora simulamos otra muestra ``` r muestra_sim <- simular_normal_invgamma(20, pars_posterior) -muestra_sim %>% round(0) +muestra_sim |> round(0) ``` ``` @@ -1156,25 +1160,27 @@ Podemos simular varias muestras y hacer una prueba de lineup: ``` r library(nullabor) set.seed(9921) -sims_obs <- tibble(.n = 1:19) %>% - mutate(estatura_cm = map(.n, ~ simular_normal_invgamma(20, pars_posterior))) %>% +sims_obs <- tibble(.n = 1:19) |> + mutate(estatura_cm = map(.n, ~ simular_normal_invgamma(20, pars_posterior))) |> unnest(estatura_cm) pos <- sample(1:20, 1) -lineup_tbl <- lineup(true = cantantes %>% select(estatura_cm), + +lineup_tbl <- lineup(true = cantantes |> select(estatura_cm), samples = sims_obs, pos = pos) ggplot(lineup_tbl, aes(x = estatura_cm)) + geom_histogram(binwidth = 2.5) + facet_wrap(~.sample) ``` - + + Con este tipo de gráficas podemos checar desajustes potenciales de nuestro modelo.
  • ¿Puedes encontrar los datos verdaderos? ¿Cuántos seleccionaron los -datos correctos?
  • -
  • Prueba hacer pruebas con una gráfica de cuantiles. ¿Qué problema ves -y cómo lo resolverías?
  • +datos correctos? + +
@@ -1206,15 +1212,15 @@ crear_sim_rep <- function(x){ } } sim_rep <- crear_sim_rep(x) -lineup_tbl <- map(1:5, ~ sim_rep(.x)) %>% - bind_rows() %>% +lineup_tbl <- map(1:5, ~ sim_rep(.x)) |> + bind_rows() |> bind_rows(tibble(rep = 6, x_rep = x)) ggplot(lineup_tbl, aes(x = x_rep)) + geom_histogram(bins = 15) + facet_wrap(~rep) ``` - + Y vemos claramente que nuestro modelo no explica apropiadamente la variación de los datos observados. Contrasta con: @@ -1232,15 +1238,15 @@ crear_sim_rep <- function(x){ } } sim_rep <- crear_sim_rep(x) -lineup_tbl <- map(1:5, ~ sim_rep(.x)) %>% - bind_rows() %>% +lineup_tbl <- map(1:5, ~ sim_rep(.x)) |> + bind_rows() |> bind_rows(tibble(rep = 6, x_rep = x)) ggplot(lineup_tbl, aes(x = x_rep)) + geom_histogram(bins = 15) + facet_wrap(~rep) ``` - + Y verificamos que en este caso el ajuste del modelo es apropiado. @@ -1266,9 +1272,9 @@ del valor que vamos a observar. Entonces haríamos: ``` r -sims_posterior <- sim_params(50000, pars_posterior) %>% +sims_posterior <- sim_params(50000, pars_posterior) |> mutate(y_pred = rnorm(n(), mu, sigma)) -sims_posterior %>% head +sims_posterior |> head() ``` ``` @@ -1285,7 +1291,7 @@ sims_posterior %>% head ``` r f <- c(0.025, 0.5, 0.975) -sims_posterior %>% summarise(f = f, y_pred = quantile(y_pred, f)) +sims_posterior |> summarise(f = f, y_pred = quantile(y_pred, f)) ``` ``` @@ -1346,7 +1352,7 @@ k_posterior <- nrow(muestra_loteria) + 1.1 sims_pareto_posterior <- tibble( theta = rpareto(100000, lim_inf_post, k_posterior)) # Simulamos una observación para cada una de las anteriores: -sims_post_pred <- sims_pareto_posterior %>% +sims_post_pred <- sims_pareto_posterior |> mutate(x_pred = map_dbl(theta, ~ runif(1, 0, .x))) # Graficamos ggplot(sims_post_pred, aes(x = x_pred)) + @@ -1354,6 +1360,6 @@ ggplot(sims_post_pred, aes(x = x_pred)) + geom_vline(xintercept = lim_inf_post, colour = "red") ``` - + Que es una mezcla de una uniforme con una Pareto. diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-18-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-17-1.png similarity index 100% rename from 14-intro-bayesiana_files/figure-html/unnamed-chunk-18-1.png rename to 14-intro-bayesiana_files/figure-html/unnamed-chunk-17-1.png diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-21-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-20-1.png similarity index 100% rename from 14-intro-bayesiana_files/figure-html/unnamed-chunk-21-1.png rename to 14-intro-bayesiana_files/figure-html/unnamed-chunk-20-1.png diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-25-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-25-1.png new file mode 100644 index 0000000000000000000000000000000000000000..2905c4026c233ea77363f013548e022795bae5a6 GIT binary patch literal 75216 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 z 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

CJ)x2qeu4T4_@g0uJRgV&L2K2t zqT9v#>5WPyWY0ZU(_I{+ws%JW!{cl9SB)j@M9a0VKx%}f!x7=A{|UsEu|5u8Wwd50 z%{72uP(zaq=E9ESWS}|e3RUy+>hegOo`nVM%g;`g3bma(XPYiVB1d_sdVjdS3mQzy zN`EVgjiS)QS6Vu`HVv$Y#tXxnX(Tqq#yzvYSM4v`H{DXLvO6?mnDFxYh^mBrAz!O= zRXjLVpp%tQaVGc9rA=waNGuqKj%dvfM6_4l3O%-PVtK8`MZ3~4S#m#XborXkcAcegWjG}vx@tYOSc*6}%Apvu6} zMTR}jZ$oZHzaP1v^jd=j#oT-ixUi6?DQRkHnN2lK?)?F0DQ&tVARt|v{{HvidLG<6{a7^HN#eW52Ki{c}re%Bamw zqz>oMrVPr5J~)Cprqvr9PnjOWp8oAhR%e(Zm}QAoBcCH?0y<^TDH>uwv+bF@F?oXu zry@^#kyQMlFGM|Cf^KT5uavkvC09MA%D6bZ#%Sj&L)UBDUv!7YMZZ6PwYs5z4(>#1 z4+%MyWEo&ya;lREtI2cPLR{->Pg0}3Psn74_6pL&(7xai0@eR17mV)8 z_VHO4Z?zjGV?9#apnjUp|l)YF4Pf=Bv{oJYIpUg(#?(BM5h8au+Ikvg@p>AG71WV zp|a?z`U7DRFo~&*R`sJbh4(X+r$`7qUVf^Htw55@E3KJHLlaCGLv~+@zZ{edh#)F? zb6USHZS==_4Z+qZE(F=8Q>LA;cWNxi$)6yMPLpN$v}Y%zDww6pfb@bpEATaYC|hc- zsxAZH^RKd+PbSO$y}4c&8mg=A`t$dh)A8n*&Ey)DDbH{UPaOXMA+cZv3F@o0*#Jse ztS~Ok2txK0QjXLR%5zy+TfyT#A_kJmq23-TQN%!Q^-

Ez59iWa*lN3;mg+b5blSNnz?>C%tmLC z$6WoI_q|#wAC4IPijG7fd>-A7HR0sEd4w>VGC^5aq;ng2VUI`^sfLMtgX4((?pa18zna8(@AE_9*ZAEgjHVZHOo)LQ#F@)+U5LSPk8GYsSy^bGt7U&s7wzi_D?PASPZ$!PMXRMYxx$fd%q>q*qYx=qTH>Q?LS)39^}DeJWFrCL&vLf*6#E6|jCXk}VB#V&f2`cPZpFd) zP}TNwl{FzqAPEr`_g7WnyQ}L{@KYkMl|z+-lGb^a(SlVC78bQNRe#QKwg4`=a=r3Y`#oY z!hI$BlGo2C$7QjSg4bP>SKoY#sanE&bc&}S7<-SR0y8}VQHac$qvmyx+vUA;^si_S zB*cc27Om*qXoHG`Y3sSqMg*z}b7Dp_6aucFX@2~X8W|ud`9$sgiv1%GiO<#5X%nus z4{DQ@b-BrRx>Bs9;g_^jbY=Rc_37{bs$iv%meR{7(T356ow&7yxjea>dQ-Iay@j}K zW&0A_l8G-BPSj)CcQu5^_%K<;tw}-MQn5X+?2FyAKa$;iQ4gEQEV$fiBlU3>HJ|g6 z&v-Nm@wfbw59f2~PylDIkw>lAGd0@a>FNa>A0@s#A)&J}g|K5Kji=D=Ig=-#mA*q? z68Ys1tCmp~#mAx`({rCC2}kia5C0q?K4R+ezRoD4y(4m3053H%GUCKdU>qUws}n0Q zdsVIBQJQ$UJe_S_qE?FSL4;V)t`L>50Ny-RcK;<_>Gb!GBVI2)#WQq#b2gQV8Md#^ zJT}a%gv1xNXgQ1$mAHG6U48lliFtRv{+LKs}ZlH$O_-{F~lGNJt_> zp>LpI@O-(JYi-ruq&AaE21ckijcCGYkUK4Z%dhk6gktzCEnb5d-jrjb6$6nG8y(9` z$rN@*O5iijqW9kkZ3RAXS3sIA@&@os@9mkj1=Z^edhbsVCH1ttRSC>;kj#;NJc5K(dA>2#@U5bb?i&&0XNaB1uLxA0=kouLZTQs#7x)g*c zmhm|$i5?%GXQx*2I9IU4Y{bl-v3i1rvxO-3TW63Hvu9^DxXlnu$M=mG9=>_6=j54o zn`pN}EFWA>*)w{+l)2qFb2b>@Aw?E$H8i$cs#<9wnLTa?&Fs7axuPH)Y;HaJ4`T}c%nzJR!>1u>}o&Aj7LK4$4c>fJD{thhT7}rFUut%5p3eF z#xLMxEn5{~YSP41hA+fp>V!v|Zw)OY-RgcM_DLI!9FB3k{vl&w7Dh-K%ZP`C-WLof zj+Q1x#|qRf62ZgzESqG7)i>Qjb@NYC)*VYO=r%lGQXzs#v+vs>Zp-fKVke*>oe>n0ijd`x zK`6A~^%XX_f%{7q$wVUWwjbTKspz)-AbZ&dswY8Cfr&q|x61S?s3>rKa`>pAWy{z) z)426re)5xNS`sIF+ZV4jCH^3+PyXQ^S=aMdEG4Porg6anH`Bnv^k8ylU6|@G!6Vm~ z-<|%BoBqvd8L;{Lk0)#ULh!&$@POjQOn~#z)A;%O6$it+m;VZ3-XHkG94)6_t$Noy7f8DKWLTeB9LcJgMP_V zTvAHv9~d0`c6$DY>eb!c>tmMKS;EcL>(Y_>282utf;rGJY(VIN^KLIE$=7C60n zJJ`N3=h4Iv%wBc36&AJg`N;c+nFw2%y|3*-FIIXMmu;F6+*kg`n${V5V)%ZX+oz~= z&IKp*eY?EdplLjgB2q!Z2ipkCT){QV0n;olr!?iB7^17BVIn~_x$2}M6)tl0@h{Y= z^QLlwf%I!oOuBbssqblXi@o3q1yU+m+%L)05(fK+*cXl}44N5|$Ma$fns+s$aOBd) zkIp%tID#eP-D=YTs@#$UOetRym%}eGRG0eIFyHK`J;HQp%%Jc^Ok`w#GWF$|lCN9- zckD;Rs_!@KYj>t>gaoQ6C}y?Z4CSj$-O6o0n?BMmVxNW^w_d{-(ao;?h?$(KZ^z)- z%eWjI$t99*KfO584ZEQYWfk`kYNIw5uMj$WrWk*vnj&puVfm3tyuw)Pr8w&?kQ*o@ z=9rJ3yp~TsW*O}P-Xbl*)vaV{l={|wh5#(p;f;hH_Su?Uz-sGrgR$pX6L-6>{@Im; zi-?PNbadPTsOA`%U5@1C|2x-YR|?r^fJ3cC7Q8fOa z{Q8@N`6gY-HC&w8pyg+v&yC!>Qf9VRVC>@I((cpZu=%)O>~k~6F;(4Rlp zGU7+FT^H+5%b>%qI2Z8ZQQCM2O6hPTp%$T_33;1Ymtp9UHdBayJZ+|;;*&lT@7qPH|d=U7GX#TLkVB7p{sv~#oTzt;u9X9*0;NcB#_d{QLi%J zQ0J$*#$mcY5J&XrD4B-+>wnXR52kVMPd|YL*JfkE$+o+zA~W-HI@H3X%tEVN&(k|W zjf>i+Z;D`}{@>A`+e?-1#xFYt7UI=(ucdj%bOcxm?q&Idk`xCj_|*H}3rR8;++TcO zY=T>>{#fI^o=mcGgJ&JhDKAmoFqP`E<9jsWj}K9Z$m!OlUCBK&NR%8Ke^3tv#bX^V zBYR%aCJ`N-L7xqcR< zo~|+~s1u-q!xa?0m(D>JTp z{#Ez%Ykhqku;tB=%^~W0;fmMQ*7lxx)G=pH0GSvJnG?YA$pm!+C(w-yrSC-w@_f4e z#1bS4y$lB|emL{*!JrWrV?dkt^1+9#bEmeAa+Ulucm9{qO zu_!+hg=QgFL*$J=cmZY z%E?!bljty;`=>;-eSUan*WEdp!8mVGvBHpQvx1aNHNV6`^jVyQM69>|n?y~A;e4qU zJ3HD$LJSsmb^vNat-06`t?cnlQkFe9?&h3uR`W0kfZO9@>6;#Rzy(m5u9G3-Nm{Luq z@sGM9Eyt3=yv;WG{%2Qn$FAQ8*%;Hmr6m<#%F$$FA|0)1SnA7`F=Q9HBbSY}pnLKE z{_bIJM+wrV27DJ!GlTa9<&>7|K^U$+Z&V|o zF9^;67G5Zaw^6H`6x2*j3}eRcf+}d;`#%|M|J9~Xg##`zVL+9xUA;6DaOU=++k06d z6ZfHr{1Mx}d(nyjyxhk*YCs8yytWCfZ>&unE7liMCoCU!d;8;p2!FdCw zQ2ziB(!$Zv(bm?s+VxWV2{@8=K0fy^ks>dBGA!0g@1^|B02_HgU-CQ*nB;8#o7#3b z>#ncAc+q5K7&xsR{r^D%rkh%PhRpKKX$%8Wv4aEwhF3+7`$ZkbMt62=U{9gM04#Yi zSsck8R(Q&dTC0&C?kCdO^1y2=Ix{tY9Y@PBQyN`4wTTR?5g><1GGUMpG&7h`Em)S% zfMZ^}w@K`#0w-!_`WO(RhkB&>i5Bl}9^+s)0bb{F;v77#Ji4LWS=4kGA@j6!VN?xY~bso7N=szIOjl>1I%hQ zBmwVuM)Zf!SIr9W|NPx^IrD_-TzQn){JBPBGu7h~_F-*ra|9EJ|4IFFMP~CSdBEL;ZdT;L_f7 z00#v)JQ>USsF#3?7fK(JTeIZ#OPW=ZrV}4fyMAGz*_k_Hs6kDx{N-pf8y6yV`vOj6qB?72A+}vhYhG-? zyN`2WR23fhJR~G~gbmvApIKuEWz6&{R%Xu|X4#Z*fLD$|sccvss(FE+%acPd8-#B= zMP;2Z#H`DREwyA8PoJX$0pTE3NOlX)+mvIh?& zp-Wjdr7_R1^3tXJD$M_N&&kChUpCxBA%HocN<051`Y+}K+%SC1Ya+zw>U+YTwS^))08shWYjQ&37*AnvM+g?0gT7{=#7%1 zxGaZajkx(M0qObg`bZ(m3!3nhVzSYv0qTpFGS@U%{Rwlcyu&9|9>l?KYr6t- zid}u&*I{j|ceWdhr{$bgs%hyQokl!WqlC6sXn*rqGl!mt**k1Z#f44#&ZwyvOY8Vd zdDQl_*R(b^atI1`H#b`neFbD4tgEMbGrj~toHo;v z&jElc>;@31odH7C#g_&MP*~!>49741%F)r$h=^ZW$$wW25KFVw*|Tv9pOv4#-Fev; zjF7mHcHq->^2-ST<-qWVa4NWA1p^S}{5@X}jZ6!2U=$m=o=i}mJ)U~YaXMo$8-2mBxnp@1L&4jd@cpz@Tn00aL((ATeXwiZpxyqch><%Jeo7*Scc zYBC<1QWib#)K7R7l+$ybh#_F9MYNMm$+TL}M4-8%uF$p9g zj}tPO6m9E`$6umrIF#yZh6xHUT>Ttv`O_2OV?Sy3P%XlU&B)RXviqp1yTO2q&rhnh z94>aGkzn#-OY})p|B57VXmJVZ#t)}R2hxmJKS#?|SE|*}xeb%)rmtk#$Odk7fF(fRuT@kFJ+O7hJH5+PIJ{#dC~t6q zH0%~En2!W6?_IlBPqqANO%TLOM4&4F5}-V~K%5e>E&|k+nY<$9Obd3@U@Fs@_&}wc zo35Asm(I_ECkTIL+e?kaokp`ql~9q!qja%gzmr+KA4>C%xdVQ+=jD`IrbtUuzp6-@ zsNOv8=bAgOd*DGhj_{nsL)<)7t&LoQKv@$klgT1CsBUfJWdvI8KbyKx`O41 z=|?t2`1WlZ#{Nkv2r3vS38xGR-rm|82h1$p8n5cy6s<@Q9mf9@m9IGc*m_F+py0kV`Fd*h*XsaG|11JQLeLs1y89ZLuMj3Y*KyQqD%5=(MUD0Z zk{n4UmevQ7Lw&jwXE^K?`%OF77My4|`xUA0ZXWTDInpCLshFpLRX zVTO66H&ec1jgIUc2jcJV;Si8dLTt)Y-cH#(*UY7a$xVDCOIaDbko@w&fc0u~F+H_~ zF>`|OeVqHYG?0n<^=lXeuytYd5Hlqi?lsswC+swZo|^JAjA@2C%Vop7~PK z8XgGxbsQ1P+YA-b2(Y}9sUqyw7Oxm>otePbrVbIc!HBSO?HcZ3b&T?CK)>0v6%tXP zDQ?ypW6l;YA7-9NQ*pR8G`UVCaPC% z&`b#j8gpf9NGy%!$@N&HuDy4jb-@xaqiUBx5teSuRaMQCOZ~y?P=q-kf_@> zIzq5Rh4QnLg*2+@%K0r3Rzig=|AOEUJfST66TkJ4pL*u> zZ$sj!Q4g6;83GJg-Q4&+=;AeBvT0uO7Yy1yfBu{{u`jDR%@zlkNDdDV1Hmu<`AmBG z0e*3C0Q(6Nbp8M&*UnJ`t>V&)1PhpKU;IA(Ux-sg7&>He#C;|9h6 z{)#P=Xl9c`$1cohgITD(zm#561y6mNunL z(3q55GLn!iS5E+QKu_K>7^eh3LOSU!G*hNmG#jilZmBmLgM)U9V63<3)>NVG-W5I? zpQu-t-mXp$-TR$31~plXMl9#-C6XaRndUB8^zivgp>JZ1yo{EV?Qh9I zib3j|umZKngMPQ$MogG4O&#&yvJYIppbVBwdgkqH6s7rIQyc56 z0)uzC3gE3jfA_4L@2gl>Q?-lb@}=!k5-C0*c8rnTElT?9-m7;p1|~#g!d16QCZGEo zmEG?FM7+NR-G&n|{3zsEBZwMJg7LJkSgZ(nX+r9E``GgC^+(mA>1B$Z5Fsq03(iIn zf`{$FVG~NyKrwm`u4LX6+07K?$Mc;ZZ}ES(mDC;P>;aGUEblz*?*RZTfL=C!3|>D< z-v%%Sy+rl(e(!rRS_B#YPRRtpTJ%w{D7pc*ndXe?fz4aMe0d&v`of-cfhnJGD1rd*niy4#|ZgRqz>69ZARJ{Lzo5rulL(UsE z$9`*g*4(kMV;pIq)ckRjkRg433{L?8yu+LCyohW>p9}Dbk>4Pw7j3EMvX-g?(05*e?x)fq^$SCf=ftHk znT{pX($PlVY-##fP4qH22S)hUMc$vP@vr~l@l`b&Y@Q#NO5GZ=X%L0LEu$i=^6Xzh zP4*Nsnv0@^xEdmv?GHV6uG_mimzI;e$XU~euEiQ`&d)IBu1^>rFA%!BQEijB+P5u$ znH2KJP=9CP^;|{nooeF8v|4^YN^&#uQ8(V+-{X1=740<<3d zKEOs|ax(6~=e^&?#`>v8*EY~G1Ie(IC>KS9J+Ncqt}Ul8U(TvuCPW~s`Xv$-7#VDe z=RgH%e}NRjt0R>U{K>K}mT0{t_G?Nyb!?${32>R|Y=Gcb!0}dyLy=a)+#7MF?-K!j zB+#vXuBA#Ae5b=gw~wASR=O1+gYKPY>CG7G$9KwmZSJSz}kp@)9IuOU_}`dIY$u zY&VZ01)|i+knA|8ws0!PkF)5KN%V+nZKS6v9fHl$fDrpDfa7u~5rk0%S+fgC;A#+B zOA2E4P`tCVBmp~jNM^`&i0`Q~C>mrcbauyhe*)9YZ_Ykayq#8Kny4ugeyZ2}93vs1 zjBnFuTCld)f-{VBAw+~+R3*9W@X@k-4Xb^7r|HVDTAV$yP|zQ7jSK+$ZgGHFj?EMy z7Is}_{hJk_CHcmP6T z9s{~V=e6(BMl*R~>INR3KEBe5XN8qLIt>=snq&m;gff}&X;VQGBnR0fodN7ZP22{d zMZ5-;r#Z2$@5e~ZX67aonr%e-(v)eyVu%ysOu(FX%F`@fK2<|t#ma`f@>x8EzBHBU zhjwa&^w4b7`a8!@-gxXe>ck94D`v=E`gn-6h>D@nl1#(;*r4rQ<4mE%uU{Fk4@fwP z#FGyCJ*ZK8SfdK?98wJ90vM?`g__!C^=3W>#hHTwH*nfI0EYN(zywhk@TLHaFds2^+G1S)#|6N^nDLo*dr8)LL9vUA55}Y3 z1IE)YVD`&DATjj`=q1DpFEGAbV0dl1i~w5@dbbJ6{uk-;i#12j@qy#&K%t_PLA#{*n9Ns<=Q; zD0tAiDSKi+Zsf9}Yty-@P(`@xKv{z+)SYBLX!-DN)^5Jn_G1>h4A6b$dkf}mGQR!6 zIDEB;AhLYbWbXeP{zHqg)s!9g)N$gNjfj^dv}bxHs-4aF6fc@ z+0At^*4!ZjU28Vt{_hxJKZ1|~Zv2>Iw|wke9=|+ZXGrUCdW_44f~{-fa_7wj!dDus z?5ieMcQ8OASiMuNbHhX5;2}d1pIt?y)2Pt$a8%kuPn$keR#>UR`@{AIHY|_L85X4} zX-cB1c*GU2OhpiTBFm6HAODevIMS+ezlm0o)a<`hR}sz zq`ejqL3|uEUA!$;Iv&6?9N_1J)F17%nn~0>#C{n#%L8&%`b1jG1j39 z%&7nBn_Z_#yH#m7r0Wt-;bD!qN$_TUwJ6&rULI%&o_{Y8NJxwQDYjSYWK&h9!k5I`xA5T)4WkmDq40x;ws zC_*kHUN0ypl~vp}hI7CSqD{$34smZvK2bJP-uE7!>io4u!~Ldw0d)MZz2oa!#h3Z&Zn<#e<{>mnMxfL z-sJCVq7N1u1kiQp&z0gkEgp5!aEZ*E642qC@LnK<#o#c;jJTI0Oh6YbXQ<1WfBR8| z$(CKO`M{Z4UT2%g@B$nMV0f5%DZ6}!&1)V2ybz1es-&>@Tg@T$Gl=H6cU z%qQt$3YOleBjQ|Hv%ggP7zSQH<@LO}9Q1UJ7i%R3Y1qKZB~g8)TH4hARO1p-$WfvK zfP=@HX-dSAALwxK^bh~))CtEZ-Rgw zID)%?Gnr>6B!U4`f>AcK%SfG?E)~R!ij8PkrzSZ4kr6x6N(_AZZ|_+6@=Z7SMt zr>}mYznzR7fT+tQ1)+Bs?|P>GmiqIQ5I$ulDly3B$RIUe;BaPs?7^d`Y}NPKUW?s_ z)g@ae6DZd4DynZVBb*l1So^tnv#A!scG*ES)U>6XNhzU_DSrG2QzB^Qidz%(<4?*L zniU)Z=mp=(MA~|RbeZtl9@8w)3K9a(t59Y^FxSL4mV8lVs*tO$Z!(Be_pa+ozRY?R_Uw`BYn~T&Y4L zJ?h`TVvMtjqvf(lEx=}Kg;7~kz;GYsR*eR$fS6BENiy?d;>e+foFBDtD4nhG$b_9{ z<>jO&zqW$ZA5)>WFBHAvvEE=zZl0T2f`jWwU)BF~QX$JKjAdTJoIH%A1a9$60<#TB zN{jgS*hfxiIss=Sb?Itb{=BWR{*Y?2IT{ttEX<{c{&r?|Q5Y4wlq_o>2eji??~s=t ziavWzlNowE;D*ig@l%Lxv35A<7dJu5E41y`pvn3-VQ{n(vTTFRXp{12)-0u~?`Y^> zC$mspTt~|QCiSdpJQyoTZ5<0@-$SFoq0w@vt#8g+`M`VxyY3mII{?~O`U7(J@T(!R zZBtmf!W8J0^7C7UCaK-meVw%TFb;|irVI!boH>vNOT6K22-_D5{mq1g=r1}pfDh88 zZk}rZ=W#&!XGF4#X{l_$9#12m5c8W*QlJUwRV{ycUEL5AiR8^R?M zcX1WqF-t`>T%Nx2dc5fjX*RICrS*UQXCU;p4C{>RBRTLIJR=6~>jdrt;S|YJH$ml5 zVj!XKuBKV$z7eE1jv{+(AW_0$#g#XP`T)y;i$8%OH!~`wk^xEE^6GCg%4p-*dYMC7 z3AM}!L`BsMl?hQ4w8kEn;An>yn?0ycDZ@3Ugh*W|!8Q~eYVL{^ANOnFb-VUHXL%{Q z9uXvnl8QoNVwXy^93u$ek2wxDx2s#@yLKVXm_d?*%=(g4(GjVtkgkCnnVK2+yNt=f z;k?^=leh^IoyiYQI^m@XF@sW9uIzY{n(DS{$26M`hT+pt%c08K?2Y53$nkrVw~^F4 z_B4xLA}V5h?l3;EMnGie5i8!MeWfi7pbsk&M4!uLM%vPnINYkEogzbna)tj2ecT+p zhX;Pat}~Ri?=!Ewd+`7lhJ3HVNmL*_d|edkpjeuxYRoo+zkg@|%7i>E%rXren*KvR z+s`Phkk>maW>BXq5f~8L`MYj5$A7kO z1go((qHY`DnP;!n(=NJ;D{l)LU<-rz-oFvV>iCrP32IjFSUmULDYA`~OK1IKa8;a*#y<)uc7qM{R3Mc1c3 z3B?D;YL52GX!s>f7pNVK3Hk3Kn-fU-0(+AaI(wtvi2{yc!eN&9=o6MRk;mew97>O? zG|ma{4}ehD;X~WjjGXV*4P-GLb*eN%4{llC3jPujf{o6 z&i=XfpPCp*wH4dp!<*`D9;-Esg3!iVVvr9%X|+ToC7CWz+14MZL5aCX<*^}j;?8X> zWj3t+ikIVkpAVFeIm;_~yDMX4K{#@>slI^(5!6jSh6>|g;5iUoD4JjRk~{N7jWA}8 zY`)Q1fx-5=>&uqra}$X2_sp?-o|cY()JB)_>=WQeu>s?s-?vVon1e=Zr$wL%NoME& zk`^zK57MPqO!f36EHB)-fw>+x^v;yx_c%w;-vuF(**qdl6eY7eaYczmbD6V$PVd-~ zEXITw5(3;w`i;d$VZH!QUr9-QF~)=uDW1py2nrlr+FR!@Z_8{{4KvY-{eyAj5aI5H zIY@d~yI7my(dMbSB$zWoa9l{p%M~-Yk1gf#V*G!z2mDZD!kcq!u+o6`_plNrPoUM+ z!bbRJG`@1E86y#yp)SA!Oyrwi=z0YB=v3l$uOlKDvwvzUoQO~*lF@A2EFYVcdmF~7 zNT-CPO&xXUX^wMoxjKOd9VYWqO7Y46$kJoShGy#?ONagysz`Fksm6~P!3OT)GW^to zhJ(2aR4IA#+*Vl|2(s!&2U77vWzt-r@r~Kq=r_b}UkW=`7Yr;c;}wm@O9=?0Ua8Lf zZqE7N?aUhfQj30zKG>8j=!{T?A472hG(P$X-2yQY1zCKG0(yUq>_2xcI9fVz9?vt? zv8LLp@?Z>FZigPY7Qc*M7 zB#d};0C)Vd{M-C}ZH&naAw=PUBsd7h#Jqf}HiV<9Ep+~)ST0W%W6pjb;R1>+EbIrG zF|%7al8C98CfWRz4a_6E|Ab$S3AHKAsy}JdYmALA#%wz3t3~-%5;UP8-y`GaGrGr5zI-ZHbInk%UN{x}=|K`%7Ien;=34&KVNZf}?W!>I%v5FH*|x_b1Ao zJ+v^mH6BqscyQM4S*5yvh}(TX1h$Z1oYjZ%=A z!+(*yF*v}$3(FG5E1OS~{f+gMIsn0NJ1(F3nKbQM-H>dlOP zBb<8HYZp014kp3L)8>u|wa4ix_OLP{O|9O(nrmcuh&UFtns)v z!4@Gk*uMR>UKxp8G;J8(_PE>V(-lJHJ)bz=dTKxZ!=^6?g9vf#_=7;OFB<>Y*yr@{PBg<|}+d4KcmC@zpEP*7*D;dh`=9s4t>W=IhPH z=o#r{z=td9aZUX=l^9pK#5mPzMrNyN%avI8E~9CzVARRQ3XSgoTPPL6Bw0tOc)D~M zCSTHOd|s6uS2uit_D9*4NA9*rdG*R{#I)=8qZ!yKUv*j zLzOx$D)t4@~ULsu)0b!BDa?S9+HF%)>vdh^>|VezQ&h$J-Z@QromisHje zb;vI7$|3_SHGkjnJ<->fk&*>yEM{o(XGAWQNey?kzpXjke&p~1_=}bGzkklh)TUj} z!=DfhI|M=gY@VZS&}+nG4|ds>=-1Gvj;&hrxCz&3RV>Rd+Bp-|o2kD^pbFZsS%#(; zMKih!kf}IVvkK*RI=UR9mf-ECauMGM*GQg@k+&c-saHKJ7NWs3V{9E8xE-I)?nHy;ljw=*OXoG;kkAJ4j{K;o zMVrB1`@|reOtvwKy28}C;JPAzVHiR!DI4LUe4vbab|>}Kd_nXLJ(khy{0D#3{@hmK z%L+_{4ERbe|3szKH?hDsif6bF&i3)(qnGs#aBAz=nzvEz2P(aseOy9}p_t&q&l+FC z?&gB6-dZgHL!?Wk`faG=v3{v9MVmTsy0G|7;nCL+oTKhld$44+epWv8$V%QJ%+4nz zu-&7?eC{v&K`ERuIo<0LE&n0iYGGU;R~hSbcYYEe7Ylku`wyx?V9hpG$(v#9m2=G79Kx)z)_6QkB0ug;E z%(wWRM!*W6@Bu3*n^P}lxPNksr_&L_j>Z8V9Sx)dp_Yx!Uck%BWrVYZo%dg53DhgD zcd2MjbZ(R>=9SDAV!@|{P=k_e?Vt&GQmjeWt&9OgvPoSM)(W(ya=Xb?$|ZFKPnz(}ty{5dmwfvU%Y!zfQXt;B|#oHY7# zC@+9?9Hv6B5}t&YNRx{cn&aWXo?s1XVM6Ksv_4T5?nIb3xP=Ku*rFH!h45M?L9J0? zwncNagF#l&nm|(pu{6`QU*00P>BLj1|2!ToRG9|+hf5funOTB7^X75Ew#_yIwrrzSa1fR0@{lQh%5uFTn;0WoDt_p>Eq+pl zvmp_WIT~a&AsMoHlw?)orxgL$kT7)K`i<7uc(HmymFf2@>;=xb&mxK%0I4o}f!`#l zhqaV*)0UI-O-@)4a-TC9ZR(HjJEIaZnL5}JY4S8CVF#grPo5;3;<#mpb}*H^O}pBz za^!}R<~Y?4%NPMi`H~9NAg%&#Zc<(5qYm1rp`BvbVt<^wHR+Pu0?yH!thow{6Q~!0 zbr>AyD3@1Dh#0LkX8#?q_H+F!TWXr6ir#bfJo7C_h|jZhCD8sf0C`e&&k$jZi6GLc zQLfVC6jk7}^Xd-jbKBjH^eR?hBaM4q9o|Yx-6G9c)#S$}CX~rO;=8tg&Z@Y2OO^`1 zoLa-THMF2E&LA=>fT(d(v()~%eS`9`;{e-^f9}XAfSJB*!_77kC;c7bQbz~@`IHqjS)hpqq* z^19R1L3H;~MsrWt^Jn7sIz@Ksj=VZZYS;)hO=VuDqkTQR*UAG5sT z+i@c6U0tVa`D+u@S(|AfKHELF~VU#2)gDahj`|j(f zi7(=A?24~FeG}g~!6$)1A!d9sT4SG&PW1JlG2FeDc{$OKd1biC?wH5i$P(U(bG5as z*B8Pvejk;S>Q1lo1bk)w>Qp# zpTM>;Z~S_OEK`7|;&QNM*F3z*n)eWkkxutR_np&^Km6YuJN~>D)5-KaKc=Tgen2U) zK=u8rD-{g&$`5F$DQt6C`(18jAo~8kX&CGgKKjMYw=BDkN#WlWIt&D=GxDMgv@G{J zBKLdD6wy&Tyyx_KNa(u!Ci3vTj)KmyKjha(wY`K|TXq>T`wo!lbeCYUTlW=vv2MwD zNDsvnZw{1*HWn(**2h=E5^Mg`Ub3O8@BR~ks@C{QiG&&yQ7WR_v>Hj>Ly1_x@d{fk zybl_Qh~qA6kmSN29yek2r~E^`jS63{cvn1R^@v9vE4;H(Kn&_gv-nvlm$e6lyc?zP zh6LwLdj(R8u=zr;aSg;y3%{v_J`?7OavT#%Z7fUf?on8cA>+$M*m9#rX^qJM#(^n^x z(9?HD%gR#8&G_~ovB*E{(hr=Aw}-vC{)2-So_=rh!6*pIUvH;$U@eaaCQpniE)y9n z&p+1)W(}SkTrg=(d}jg(i9t^jJdJB-?FL?;)iI;VGFTg^=uNuK*)n;;ZBi>2aq*J% z1Il%w#H@RfLwuvAQNxy5*WeRKpg7)7e<4^|oy?@^CPBOaX|hc5-OkR*org=pFxeIb z6ibE;3U|PxRYzl0qG4pl&l7B|ltL-$jdHGqqAjJd0-bU8V1(1Mvg-dPN^R;o%p2^5 zD&~WEfY=A`<<;@YzDHaOinxTWCHIG`fV-9FtK*xBk2o6em4Z4Mj0S*gl>`A(s_Tf-F!`242LO(-V&;$J zuwk2ZVUz5N&wO%8A;56=+gy{X9&8S$=OioJ$C2t+M)}4(LG+q~ab`zQ_SzSeBg{|5 zUq0%_MjO>>-rG7Rc|}}ABqts+NFL~n;Zr!_=5?IVbw6-91+J#^zrLlDuO4QIVC?q7 zkfJa$h6zRxQ^EhbF^kv=*tsl_TSc zx0zDGT8y|Xy2<^1U(q&Lng#0nb`rV*MkqvFAK`v#D1Gg07j4RO!JI(a{!-fXnxEf# z9X*i(ct_4CyLYfo$-M61R=4W5p5UCe?!{JMY77R&YvbM{;>xidtZ%OmgS!H8g~c<( z;9NqS2<7Zvd(GM1zkU9NBD6_K#KX?M;?%t#D#@eO!eZ?Nl+?AxeU*{cpl`niQQ@R8 zA+~=<$du<(Wp4lMC`8+Yc3n02Jrg9>c05XK_7>Zy__&{LSRMaCw9OsAlZ(b18H-`}vB4F52Pnxz z`R7MjkRFp)gV!TGK2Px}#QpSkB7^7dcJoxg_cxIMO;*E7DjK{sE?Sj6FTYAL4Q}g3 z>oiwx{U|6VVG4g?NQ5=x@b<9#$IuN58CY#=VekQ+`>VyRZxl4VuSm74MzCqY59amH z#>7e{GUeI7D3;)ooZiG9$g!|@BXB``PAwFoB^d)r0a}x3--1VEbe^Arws?< zZU6jS5$^{X70Qj>$lLE>#YUcf@wcFA;IarOKH8jPe>=l6;e3l&yfwvUqGiXwWOpR| zly)9)aT>bZlIveQ_UERf8rCv^(ssEcvuzPH>(sQh?5g)1`Jt{nQ58>CV+gG$bTO;) z@)t*Q*VC8h<0+#m`KC(N>C+uX*0)45JYzgZzFKnpO0{gOa}GuKA(10bJsabkvT0Q} zF;c{EWF{zR2j0$m0$Uf?*kp{*7!zV`N%nPe>&z4qIj%_ve0OLfZDFmM z^nuz+l!X`r#_it=W1neSX)@+TFgJ>T{v=#gt+zM$pjp?nMU#wOPBrZUQwuGdwha40 z!qR>SyIV$Yb;+&GxN@ruDY!c@HDx+)RH`D=={=?M2MR^Rb%q%B54?zchH!w-L(rr5pi)&!aw`_?QBjf%Eq zwEE%2ry!6K)H0^}1qnQ}`oSt|y>UgC*n|pZ??hg)hmc%Ob%pku&|v?M%D*!pr%gzES3 z@0wG_yrp@;@9o3r*)2K!`2#?vJiY9P4Agxv`|^aeJ9>J?98C@LCpI#K%1K@fCVn|+ z&WQc>;Tem+Csvh44jW#)Oj>I8tYFkpcz5@~=`SC$givSQ!3@=!$Wu@J$k}(*1u`wP z0Rp!$5^FXyezEHPZkh7X++>ABHLXG>abw=>FM=cAC^pC^+=K!K=A4QxQLieiKH~IA zH^pj`VqUX1DMBri7&Z`d7r9pt3*m4z5nOEtl(Cc+TfI))(``O00BZ8l;-xwNS{W?J zNSsA@!B|!gtBo5kmig|=9Fgn;sugRru=P9f^#OnDE5=wum$=+yW^}n2+(mq&l6`c2 zCWApfE(%%>BV%MVzXwE<4lPOSc}=b8&L3VOz#LJSQD zM44nmc6#}T-+<-r$Od$BIe2kM-N>Eui_^An!|hb_n5;V6vci6m`xg$*CkrheQp_ZX zT?q?fXy1L9?glSAUTGhjNp1zxid({%Fy7?%mK)@N>2U zo|*TM6BY;#eth}%`yw2y`R1+dJn?UO$!o-B5|opSv#gbV(Cy@os$= zc9&b;Y#eU#M056mCfmLRuN+bk1kDWMwN43APNZDhjVxJkb;43!J!O>3Zf(}L^^fN5 zH)lQ9TcVOujo6>>6w32|H6V^_2vuQ_%OdRL^?E-0;_=O*1GbD-#cU`jlg#Xhjp-5w zm1&L0mX&0u#o?fuk&0BsoqC1?DJiU~S!(`aesFLVK#v{E6F zP&Y%CH!-&GXyYZ=^c@kZX;dC(df16^=?+sq~YkHdHaiFg|u z?TpTD(>#TGlV^BgS1(~t%D~BChDFod`RumY zUK}!-6(Oj7a1m8dwDYymOSr|B$DcZoL$Xf@h`bS0sxx^Pf9MTZ;HvCXn9zBO^S6s! zvZ8mlmjVMj*~JcWQav5KoSk9icfioLf^o zccy&YZRN}~rvezJGej6)>V&{tsthnlqR71G@{7!~B z8r#Crox>CY5I;<~sV;E$x$DcadH)0fPwV{TNBF2p1&26Q?1G_qY; zYPLn#;utGDDv}-*E#GpfxG0_&(gG0W6AOcw2GRmTLqXL0S2?&zJfBkf*@9j*fmryn9JR*f1ri3|a zcPefD+AEv(E#1l4U!|NlmYM5oY%l34s^W3O1+?*T5B_dXgl&JiU;@=N=de4^TTL4k z?AM#bW<5Vl4-@KWW={4yofzxo{)YDNRtwdkRKoKYjV#!je1C~!N$!Vb~K2pkzT zY(hgk>%LM)ELg)!*zS1?^6ZR(vJh4rXS)8g?o-PoTz#H?Jv^Dg+~(ESpEwYXAQy5c z>}>7%Oz~I3UBI$L)x2TW_w?L<5=-Q-M*feNYEjd~Qqa~-9Ghchaea@%H^UJ&EQ#_Ttza01n6Hvyp(=YS~=%YJ2Z-bys?OxxWh%zq70h5CylcYbfS@CP+)NW3o)yb7ubHpPPsgCm;5N9}o* z%rOt<&YPTJUL9>HkTvw!aG`+7TqC8g{C*)-mNxYb$Mg_BT3ZVmcvY+Ddj}eEZ{phC ztPcj&oJ5_8!eV&TZ#S3ds>bzMKyNTK>58HTscFN|!{*aYd3HyY&x$s#@;^lLiggV- zsT_0njF>w$`Ot95XuYeY|M*rD$Yr3c+_GLbC!1JoN3rVxk`kF{D;rzB>cnW!GZI{_ zutG-qMW;4@`6CC_@VxIm|EbaSA(8(29gkbMttCuwEp8%%r3T&|xr%K-ARf=tACr8`Jm7UVMp3#SMq>&zKqsS5aRs>%kt2p&%L_{&dd1gnB|P9}wOTiWQsO`mKr1RQHJZZCRk zS)E-d0xuJzXcoCM+&uh%th7Cv3^kr*!)2t5@E>~2eJ^u!=%qraa3JA9S0Ney9cFd8xye|0xg-2m1G7PRD zS%b|j`@sIQz+s1@j|}~Rlqm$9HQK8i7UZg#=&m)MfRz7z&>G$Z(m1@_cn^Xk_5*_7 zUsRu9-l9Z2c-dPNjsN*PbCgr4evX%x`+`Oci4*$HdtT^QsiXd7e_ zf?FOAHO@{NR{+2aJg3q3&ai|IvK zh?5Wi5bT5}N4@n`++e_%FI=FjJVM;+U1pZmOoG#D$;QEeb2lyE$<_HuEbeH{Mbigy z;3!KRaQIov%9T%p*lKWsm2N|lsAjk}9hIA>?>L@RGL8|~uv7`MOLM)e5k}0Xa zN1tTK!AWXDjR;J+(9TcC-0zY-`g|R=qz+ao>$l9xWA{U(f*F3m2v1wZVSBg?7Og>*0+qaHzsu}EZb9Qd+2r{0XP|{eKIDt(jBpitVG$hn{vl>?pg@JmZEn1`mPzN)gxd z_?JV|y0tm?&j!{LKMS`GcWV7F!o^EP_t9x%H!g3*Zxtaz(rV0T8DjHos?BBVJWf*5 zFZ@tW6`v+I77lhk#J@Xb9943y+JZ;qo+vG2HmdS*4KXR`o}$1sa%%TU9MQ*0ler1` znBLam8BXbaPZ?;WVThMKrK1;5wEzXk>oW`ChKFA9yS_P5qU=H885|ib`eP+y-rjfH zcIg-H!H|&3u*e?Y_I+>%%KCdb%Ml4}XewCr7^E?_>~|#oj#Y%FhYt`~rOg|~N@K3n zTiipgS}J2cKOL1N5SKURPhyT{KeiK`vIg#Dk4RA(jR|T-W08@y?mFa%Z8=(})mn3( zla~?wxgzNWlU{$)`EqM-5vPG?SgmN!C!J4C0Io49*$So}9`u#TPaaLxVMM5#;4v`( zv8<36&JCDX3ALy@Gpljr*z?UeMpD_V9_&EL`@774vG%&_KQCCG;hhJ<9>0{2l30}s zC9BDXb_VjV_MOa?u~QoY&QDv=#p|krkVnqWN;I1F(j^R0g$8Sj2{gWc)L5n&=9x>= z>CMB0GwFUjuEBVQ!TAC(HUSitbjasdfLzD z%832Brsh&4hI)omk&ua5SuRCX90uVK2#hgFvWs*39>5x71;s5iET6H@ z7Q+{_fW=3Qq=rF4=nK0h@M8cm@OxVX9Q0{ZKyb^UE3tLap$BZXIpOHafaqE%9c4{`b0;UAY7Y)+_XBp)EyO*|7|kgOl<$WYqG#YNU|M{ zoc{}Z1yUkqE>%{@wM4N_8P5n&`#bHS70d%wyaJjQVje)(C_LP|$=f6aYRy zi*!U5Pd{Mc)fk%3&3YAH+Ytr8l7~vHh9zw)ke650nDm9ExO;{LsN5HGlk)j)urPlv z|Ea!i7Q&_1rK{7{izf9$mv|1b&Di>zWnqa26OzDBLszm*Ol=H1Rg7j!0Ku=A%F=Hj zB)9KvO)Fp3$*%rp$D&}(-jyPoWaRMMx{!0t<4PCa+yBsK!T717CCh1Nq@kGadncwILMepBSyv$D5LHyCB=TY5_mxb5HXf5Zo#O7g%HcY__{=W+ z!vg!iBn3KppTufpBXFSh!gy(oj&yl`luKn)TDTI`=*~cWi41DR z?apxq1ga6CVPVV$0JfCb94(q876oInNv)pm@zW#}DP!ml#YB(KJue=j6v%nzCxxhEAg5)Rxzbs-t?t9;fF<-4`AA!07=G zxqOXcFMLS0v*9{~kWg(4rGpw$k$!AQr>6%Y;A=sz%xIC(=9L))D77ZF(JT<-oSEP_ zHoVBvFQ9-;&bValhl&o|#iw91t3;t?_BYeJr;hrSFBseT;(hibAV@4}212D#0npSi zczRjG%R6)QLlRO*pm9068@7=T34erzEwUZ=W@OP2^Qs(T9fdso%iO6kpmU`w1~vh{ ziML8=F`^yS^huK76|JvU5678+9g@I)0XN;K`qj>0BjD?u+I4#wlW^xyc(_YkSsgFJ z&4)63FMk0rUn&7U{oj;Iybh7Wr~=o{h6-q5>ZLQvsRk1dj=jxL(YB;l>Wf`h*9ZUH z@&B!q-hWuqzHPe%$sW&1ZQZ|ss6uFf{?7tkiR7g@^Yz@K0=3Wg(?=`4nBctd{DKv~ zGtlVk-u1=e^qvEm7pmAFW@qiEwS*SwA((M^u96@inGUjB3RF2gIHuh{2 zI$h-n8`b2xt|wHM5H+`WuI38nrIX_BKAr(TMC{pU;r3rhI=BdXkRSrUrZ{ulBbY4Y z52A{?FN66YEYcNuBr^uVDrirc)WRwjqcoamAu}z39En-}4WncPsr;iWDXeizv%T8U z9a2ljMjTl%x^~96u4h+mZMdbzb&`Y@_0cklmGkV$@e%hvW289Wv=cUNl_C9Vg<=pT;s+rCE<464fNh>6;KS)H=X&oW zcZA^z(!{*kA3*|&SOj~{W+rN=if;q<{fnJl$i0pU!zWiHz$Y%L~6IIU(m zCBD3JoSqReV}f0838W;g=wf?j(XagW@?>O>-4Csze#5VUj$tIdUdVuBq)BQ;%D(!a z@l;S{Fju_jiQh`Wx3^>O_P~jaz`Lhm55c5;&4^r^pTvfhwikdC+&oBt@v?n~-sxI0 zywMfDvNus-0O~`&Cjf1E%P;+<>ilG*USqhkjW7YCR$M*_m-(qIfq!^<>*G1GAr6$V zEw-1E&>3kZS48^#Nj$*ji|sqoh?>ix*WNOQ8*tZoLCY>Np6sXxAll+Q zo}*y3(rAZqPkn-JCt*HF2%VWGP5@qu}Xmw)3&IN6_;Z{!RZvdL3NVg+j zV|7r)fJ*9MrmLE#V`Ga+F=*k;oog`48yq9D>)OvCMY4MZEjH^OLx+SGalbAu(Jgb1SMl2|r*R$=0Xdul&P*nqm7q3-6~i!+tw0V9Yp#iQ zvn~0(5ucMb#M%QJ*7U2hwMEi@9FGE@l%|`MFz7_*4F%MRRxc z8z3`NzmlfUZ=w_Cl>E;MwwIrhxh0{WsJCnX8=#MLyfoHAWze>f)ySbyN`pdm<{?*s z1m*FKwX|F`0C4!SqftK%4d7NC)Mw2(9Nw8ERvtAW52?&>emEeJs_$n)J|}NkbkM8& zb`_tfpk?J?Y+`0}nEq0-A=k9%cXo%q;7kqs{sPIPe=9#<3mm)^wFh}H$8Y{~CATK- zjNHf24+=iFxB)4-(V}b{yR2%*d(m{6tsGbm+||^{Eci5bm3DILa_wRr6E60AsK=Ji zE*JBf={kl{uFLCC0CRZoeWf_I(4pyvE>4E^N9xT&09RjUo1|nbI*VDU)4Z}v{Hf@r*A;-pT5kNoZnlVjnRaLSL6Ow)iisyM;_ug~!`X%u7b!%m$qddN~d1^xx z7fz~j3|YXP*wav-O(qHhLq2EHQ-{kvTI3i&UbImp0jT6_>vRS7)&Up@cOxbl=Rr(9R8yR! zMjAN6?Mah0v2is7qM!*AS3YMJ2TT#`bF|#BH9@m-qp$0?|3UXM;cBHKrcyg znHx#1A&c_3HNTJ)3JB5Xj>APGQ_kMq z{pj{U_{mm>CEwjZPk+b8RD72o=+jP-z6bY~B5bjU>I)*Jn}4Ts=GN_ENzSRv$V z{3i1}f$6Y3f@JNXEqOwxarU3T!$5yS77o((o#=}#i1%By@e$!}8^;z;*!CXm>wfsBV9Tw2mJ+isbo(vz?9Q`hU8}pF`0?0-m~%LJ ziL3{|AiQc3Af*h?3{(>(dfQ@`9%O| zI(ZR;2F`gsdp4oLX4mf3_<7KTh;(-ngB$`#NhUvG=jMc#D_SJH$IGVPGO%dL#J_O$ z|91f-b?gL}gy!78>{A(z!;G{I&R~wVT{`TXS6u-iT$=>k{qo3HXZbHG+Z_1EWTN(r zG!OVW4?pVN{gr|Is(S$f=Z>{;o}A?)#AoStpUFoOMI}w0n2#k3UZyX(&0-PvOh}>v zb|R^~UGt8m6_B`EM8q8D=GhLDVrno2 zC+t_afO$`_4juyUke)l)83~}n2Iu4$x~L9AUl+t&mHjo10JcputLWFXJtxhnC+ugw zbhxI~Q!kz*uxM1fAzN~FZB}?95(Bf)eefAse*E40b?+@qh4?qs6dU@yP2cv4Tl3ZP zx9T(xJUB`H5WwLM0+t&J2Jj1&ybgs^1(PC(fujpLkM+Q@dFN$t6lVDsJWd(p=< zGRhwNh{8jgo$i-PvfSnCdODmz6;DsqdmTAJUcqQOTFkks4CJr0tE8T76t$ly5($P{ zyf(;k1!e=UwEWn60xvV;EfT7=abOz^A*5Y#TsP+#KIguQMSo#<$-W8t&)yFeFs{b$ z1*9=SFF8-OkSms#*U0XOSG8B>EHPd$~l4%{po z`^s7InnkL;n7na?l|DPrZL(xH_)@RuKSuPP_D@uyj~raIQ3j1Au+1N%L);PPpudsl zbApL?xrOxT8-HO2YT4LmD3xA@#An{R-v45slQWE+@^{x%2ahpm?s1Y?2ubGJ)|$0f zoGb|vnDf*Pp_3LKPWc2RG@lDVJYvXMY=~`XkPb_uvz)gWV(`1S-wi+~hDOpjjaU|@ zL(h1IcXMR%M&7tP372NYa{Lx)((RwXuyXJ|L5mcAD^WjtX+7VnpKH&_-V{#odU&W6 z^|!BpySp>SDQ8$Y!JghE3%bUU-E2^^`@ma_3Wdfd#o>&SM|%ji0JgJT*`p*?7@p7) zQqLDdo&k$C?j)uw0#K`M28E46ZRNa2<61CH1}LG!Xv7`6FPbN>QOJ^BO0(jODD|yR z_Ai;6I}!bT+w1$!?rS}rO%U_QN4%(-oO$t^Nd1Z6^rqk@Ly#S!KRi}12Jau|Ftkmh zjPOZzJxUzgfM01iI*!6Ce^oXZ5VGV_4EmVPqV%YM zKlL%)u$rgK(NT`Zj<0?pJ2BpTx)ySQZ&ybyG3$t2x`_^hvWPFvM3_NnAsyl(vvBYMRTA+9XRMo#gy%1w`crL@^e(Ssz$me z*#;Xrnu7pN>tq4r6h<>3JmO<_Dk*XfsvA~F9M!)nj~wT*VVvMSy3eanTcF=X)rKvI zO;n`unO>x85+B>b5y-QikS~Iwr&qObaGRr|DJqT~VWaNI^@Z>c>}2_`=ny*70bk#x z@5Ka?_%qN9htVMOpUl5LE*0vve*sy-rniD(Qz^}{%Bc|h5$k?oO4)Y03%3)T+H%Tk zP`EQewhLinqw%c6XbatRU1S81!@OKZEVkTCwYS&%9C+Jig{zV(<@C04*Z|K>BgoL? zb!gKSgSOzCEw3c+A{A^gq_*h}awuih)61Uv#gxP0p$YcZ(5u>LY8wooi@`H1wf56V z#E?QIr-Y3(R3~%uMz^92>+HfMj0@w+!m&@TnING9OqZAKDJ}L&NpuprI+7^z6kI*2 zdbVf9`vNJ!w_kk*IsXvkvDKwd7VI8tT9rd;3K0UBF?D7-g&P_MHR7 z`glxNayI{{IAk@A{zF3ei05aYtLX#ord5{~69pnu#<7(%$JDeOa-(hYs{LX_!#;D+ zwG9N9eP7pN&<)3H4XG4cg8`bpk)?Sb3fC;so@!0%=RT)WsA=F3TSVxt1wPC)tKVE< z>EV|-$km$QjcUY;gd1=t-~O)n_VsHup)3-ww8YoHtEk?t!zcV3xA*fWbAkXbH#Ba3 zlCCQwTaz?~-_Om)IF}D?&o9be{*ZD;-@ri%dIphoVbrUnXi*^hi36UwgL@PWDe{sT+GfLX?s;C2lI#Z!*-0urMLI=nMg)mG zv{J1RGpNn$0R-xb(eEBD%Z@)&Orr{~VvE8ED^CF%A16AeM$~p)AU7d@Z32sqVgXeV z8?_96!$JzET>FBhTHnhTc!{}BF-#B&AKz>5ON}#fkKFY8udNR@9IB5yi4#6>NRR)n zWmriSI2;y9#V36XKPxdUReyncL2Z&fv8|O!sY|qt-E*}Dc=Bh+u{Y{%@Mhj42K#Wk z@LETHXGG^Em`DhRDRfzwIJ1Vn98936veF9=@vjRTjy_RVYub@Q2q~$83ki*n32rh7 z+~|}Ijr)QSA4!0!l_Yp0HfhkAqW6u{(%BOM{{#O#ka{darZWr zP0~rQM}*pC{gq)$1xl4I`qp4b$zEglnd7Vc0oYd!Yb&WWY!*5Kh1T^L=h-BXooLUWlE4~Hn>c7)J-vIrd8je#aW4Ly0t%};VI zsp_Fe6dU?scdJl44*rWGyJUC(hqR8lz`WzAh)p#;fiAMhs{j&%``YSGrLedKYDez} zV#mMC@u;Dj+tt_x`ARjfEA+>=7+l$IvN}ITXY)Iv2!KJ0Z|*v~4?mU|(|;>G-6&Zl zgp1eRi*0ZA>NN!f?n9i&_Zrne56+JLhI3R;zu#wP+Pq5{@$piwJnu7^?g&>C)mzk%--zg z+6Ki;EB&5~DH#M3>}?T0+j(IMqJh(KLP&S6}Y8K7&44s5}Bna z7%l3mrwe6%CxBR>*p{M z2FHI$X0#U2(9yK45by6aZkA7C<}LB@Gh-6~UzyLzT?O^VJ-vR}58d5yl3YGv#kEFK zYxB}!cej}vTy6LK^hl)7GO=s?owJlZ^-=dmE~Cp5V-%N-#P{4ZVALO7fTT%B=G+wV z1dM*#iOxZ^wXS{g?C?$zFSow2wC`(66#S+FoEV7!CM+PW3G0vRRB47=+vlk7{xs3c zHTf*IU{01~N>82wbGH}he`rkhhAV`_zibwc`ZhKgDdF;W3Hh9K86L{_JWdvzjqv!! z?<7*|y_q2XuzMH0m)adv&R;#vT+=>;L1E*_k^gY54p@%rtQHVGMhe;AKvfxjjg+L} z+Hh}o&bX{35Mw=fxh%6pp?>}iu?Tmrj>dM%FQM- zX_IzGFZ0;3I(v#E=lB6tcdUTW3Kd}R_fTCcgAiUC1!BInPS3}nQMIjW;SowApx^+K z&Me8k?@L)RBJzxC=m-c8xXL7*p_o(HI+;K)jgLXu2dAIzx88TkJ(1Pj$^3%6&wdH} zO0Qz0ng$dh%hPb-dpNl1*?dIYM3~t0CKa8q+QbMq#X@IGuo{WW%eJ|TY7{*HEW8Fo zcaCk_)b&0?Hc!aL#W=^|B<2(kQ0Wvy{H5D~GUw0&C~`|dfl}@B8d8ZGkO*~!|3Wif zoiTphglOBiXPZ@L>KPRK7~g4}Y~hK9x# z^K=%cG+%%|5fWIGjClE61fG+EPb2VyBlS$}#fEN>I7>V14+Nz`gjqOXO<7Z{-ulFw zgzp>bE2hM6)eBZF#~_zLbMQ2F`^7A10pGp2dGeC9FMS1#)z3DWwi zQXGbyp2E3%$ag|r+D~0sD|h*#e&c;c_Ee>MZ>QKTMj7uBQI_GTe9PNZ}0%-cPu)ckcG>gTYsTHuPPTD)NB?63dP1wA>V2>XHUZR3QpeuH%p{jGvg!@m%KU;mYbQ8-bm`(8G8A*K;;cFeo`;wu0hOM4%H$ zRw7C}9d8gSrtoINALeS2$h5kN4Z%TFX8w^eL4T(bHpmm2bslT>i&|IN3T_lGn<3d? zdIV8@)9hVA$LXHTR?I~h&A-PrdJOsO^myQ~%%N@f)*%Ts%?=iz1Q_P}R`jc-vu_8% z>DimqWg`)td@b$X0B7PNsQ3|rC9%+*Vx@Xmwxy+Z)jEb8mT;rA)&?(NcwH1vuiwu} ztJ=bVPBD3G=oj=HS<<;Jav%p~WWApkn@Nf?o-bW89WdNM*#|VdaoP_JzIn zl31@~_vla@$jckjkhXF`-O}#l`I_cE1ZZk{t6BJ9{lec_C~E6Z$~`POw#!Hp>fq6N zJFgB4e2jOmiW9stENZ9S?c|$VI^!^0ealyHfO+Et01kqcU3wwWUR&6ZG(-rr0z)fF zlgpIJNJ^Om^715pze$e$Jme0(s}+Cmzq{vL(T!)(!)grF zp4@@01E=jSACEw|*>T0P?8+iR^LDEKax}z%M4aI33Z5$1xzW$W|HZV~Iz%Op)vcZc z^opgsI_(#KDiRI)vy|yNWFLc}&Gs?fmS|7VypKiN7+SkCqW=yWlVU`-)akm2v{u7$ znrA$$xG!E6(owPRE>RCcK}`KsmA=aNCso2QuA#l`ld24Yrws=`H*zfMy6m%=;PXUW znmCzDpuZokVZjGjga=E3$98=BizypAN&|K*>~q{rc%5<8*iLXp~R;Ak(Q>qTnjY!ha)YpnD#({%d}v})xTH=6wE zekzR8qh~B9r^4*~Q*tNk$~D^}8bE>a#|5PvqlKrUr?1Wo3T7&@9sC=c?q=&d zvqI;29+AKjx;mzX6C)k_)?}HwGv!PKt@se5U)!76o<!=l}Nm}{oN(7g6<=|Nt5fCB;lmvvhDSJRuXUwXVZ8%q<#A1v;k+5`?4o32n~ zli~0cW*c~aiZsop=m(knK6K8 z*S0^ev+*oct|5Q%+}OYwos3fM{f5xno0I5zk+t>u__z9|E01Jr|4NK#&~J#X99)uK zWih`%E48gF4-Gjrf_?<8Vgz=KbYPgJZyzoj0YS5loC2}!9Alfe4gk0&tWeU~7k^0V zxKH+V)B2ccwY>K8`G%rp7CtmCaO zIH|4n{eVB1Dnz#4;ReFMRDb5GQL0N)RCecR53l|@?~pK-WJ5+F^uGI8<>?-e;d7GM z0Rk>F?FAB-y=0!*|BrS2w+PtDND?2mQ>?i+JCiW7UiX~JK~#ms_k0@LmBOCt0}KM< z^2J8JWL>YK&Sz#WNu6TeUai5dyQ{yL6=IsInkSZPpkre@$zsW3bHfg}`#-2AFc2a# z?V-r%z=R>QRqCQh8bpHb^w{0p9nm*?R~YZ_)ls@l4!|iHN2=Xje@RFvdJp@+&x}phOTzrmbbiqIU3!*`1E!~>!e(rS ztvjhf(O2ITYkc8z? zG40MJ0V2BZ(No=8J1ugCF?q25xqRAK|E0vNVt2-QNL$ z<@H*51;?im>|%%KWEbm!YvM=%&f`;Ud>bUf1MU`P{kjx|$xA$`zmH$-Z6io1m|R*Z z5Rq9&h*5XUjmOF=lyCefTD%JfROp9<#GE_ltxfb?ZH5~R|J-JRZ#h@wst?8Aih|!5 zvpLj?VnWntrr^4nlrl=W(xsD(2~g)@t9s zCmAh0Gt^j(ZD79jcdzGWvb4yQfqzVcn`ikq-Q7KDa!&#^qm%8G)P7T!E>WzIQ!LsO ziHoY$;tZ=mTR=!{^CLavj$x}%gUCmcS}0WaT9Werl2d#3-KD4;ERKndKLG` z5dVAMz=2&>Ry+_f(Pt=FTU(|O*Pki7ocHJweJ_wJ7uwmTFo@BjT+6FC3j8x5V0pqG z)Us$c?0O&6;=fh81d$POV{jq8J1L|j?mUZ^4(O6YEUoGz=4T;-M^4qXnhYSZF z@TRp3=@UQUiP{y!Pl|AJ3!0Vtucz!+5^cov(-dXE)O&Dve#W7)3>(MU6>>RuGCz(9 zYj$yV!Z=r8;zhvjh_U3)Y)$UyuqHP{d%V^u?5mFA9!;UgjQNqdjag@_12=Acar=9PRnbB^E5q1PB1PY)*MLUrv{E^N;$Ilbx_dndvi$<7)yPUAB z)+DO)^TS+wf*U)j{5Tk4d$2PCbQb65*S*63>1)cdk8COT93cIY`Zyl9HtP2#U;F$>qfrBF&^nD;Sg(;h43f4yKxRh0p-FvxjT!2xr2QH0ZCYt_Y({JR=Ha@kKW%x`aW_tIVstO)%oeQ!zgOc>phT82^Wf?+ zFEp~_M`$b0DNB7~TevuRL8-unmyQUjj2Xq%q*gptvJAug=xBsBbMkzety+n1+E4yg zzR<{-+J2H(Kw z;(B{Mg7b2Egt^bpxM72zIGdY%-ziPIuf$)e{rY{Nu^?S!BG+Ptc8qDJqWg#rPi=b*u1Z}=Z!UkndMMOyw9v`*|xT( zRPEqXlcGnWOr~93SsPkt7$cvj1sBRZq;&{J!PdtfyD_i3riv+1N+H5ni;)V;6WdV5 z0`2#`#EPh{e{_hUV)2bJ(yh1+G0k4S&JazrPVEb$K#R05UWLa0IMS0BNw9O$OpH0> zY{*Dg0`&fFVIRnp*MpW+$cT#*8IlDpJ%PZHr{49R@lel?{M1yN^DxTW7kpFn}VD*CEJ$9CN zdPQ}9P7OOzN}_&4{yuG^^+7tgu(-z@Dw+Iv#6kcPO7LAui!ikIT z+K!j3vG|F!S?!M&h&LKFUtX69?D&{(Jpt94=0(E+1kf%Uwf^XvXiaPX`&ftm*>$|o zQGI_C&@oFgkd?rwbfUrpj034&IoJgiCDml~t3K;l7zM_43uGg9_A zsZHE8)z3GEkJ zRjZ^!$@*%KxyG@7P8`&eisVF*z^~2at1+4$8*s*<2ot{e8VWZ5LxTk&7DCzUWR}kt zj-rez!e?A3woo^VSgG-AF;Vp2T8(iUSi!Nijh_&r(JC3}u(|P}<9!EB*rGf0kC9{x zs>I;ftCo+q>qiqvvyJ@QIa@Q78i$ zu)Zmo@4=Hnf)AOw4d-v`l9_Ym`QuYux96k0A8Sy>a=6Hcmb7X8xGv+j_m7bvvf_Z%EoK|KD=PhZQi0sFo*qmIJVAK`j;!kz_)9%h`PSdNX zFkbIPIprYV7f|Opg)LW8vG6n>@?y#^qMxXW&D#NxAfY7~oRsg%cfSHmZfGB3kvI9y zu7Y6ZFF*Fhn!8GOeGLL3D=Mm$1g)KYl}?L|*4##{mw2ISQTNv}CXR;f|8u{g9U*nz zZj|U5(}05lu|{EZPv5FIkBAdr6Swp42tj5mlHBFTd4`^AOsjK z@-KqMV-eD^#0w)|asx&_+$VAr z^C8(*jAIw^I#4IWsox>ahOLTwQTviUs?B?f1~9BoYk2zNHF%j%rsAxtYBWhwI08*Q zzvF5%Gx@KkOMl&=LxfFEUL>yFEjL7m^16;?JS+xs(a)l1sd$#L1}MILoxlB~pHek_(1o=z6LE;XWx!JGU<~2W4c^}SP1yy)`MOw$*fmjyZ zH*rDpS`ZxosGtSBcsdXMXC8hC&RfO+qXr=sjv@CC&k%G{HFotbhN2A?PdkqGQV7Dx zfKTV0w;o3-wQ&J=PXs7um)N;^<^oc~$?LT-T-JmXEif_w$mo*J!Y6zgBW91bG+VHf zDSQSp#0BozN$x8$H7#P$JSK^SGOu)(%qs4K_7_EcGORRow=s|x6s>Lh8V^OCjfBL4 z!~*h~WcOA6b<4@l`kYpoXA^!YGDdNOL(Yc3_08mbUMHJP1!XCC~#U!fXkGyokg+B%e z=4!Ux(Lzg7bd@1pQ6X6k9|Is&CqVwIc8a#{^sop#YV22L*um(w&l!wkq7fXB^S}xT zpZE=C${g60&&g}~x6h1R>5mQ%vrT%r0EL{E3Ok?=RT@NxkyXy?Hl=~2aMH}G_+~aOj?AhN5?ez?&`iwY3DoZwHDo8aB201WD-`Z(FDslIC8V$^eEP5N?W8DQ0+0z{@w`OaqtiNCd zk+@)i4Kzk{vSbLqViheSx1UUZ!RaZRv;b2kB%wF~w^E4evmzatUXYPhX1vdhjOlhj z0-Dc#M%U6~^unS=@Aby^mh-=y zM(tMWb-pp}eS0Z1WR-fe3jX`9;??aPC>XCw)iU$@`VH)je!f@re*5sH71>+|Vx#v; z{@&O8`FTu}YuKpo%PGt127@Kllf%y@Vyv`4;fWG|i+idNoQsVvuqIid0+hidOIn;N zD)-vT?px?6md(!~U`!n3e7}(i7=hzq0!-+MHXpl&Em>{aSTQP%n{AC(sH+g2A88hQ zgw0K!cOSS|@dU)f+xK!E9mH&cvjeVk9UJA_f2&@0T^2Ddir|{zv7(L6d`~*pr z)z|#&G#>V5(8AqZru4FdWzN++wK}7wr!-YQt2Ty-nZ_v{V~4GYk_LeG-l8pEHb&ReTvN z+~F}x{L*{=CTSpMqS8%(QeF3lY3!%L{bLHx;#6E|c5$-2^_UucLAk&)2N$6}>)`K{qrvU!H0t@f+u zmG3I_61_)>1iftYqs=qU0WNvZ$CdQdS7ZO^8VjWYSZ@*@RR{}eqKJXitOF}Gpr;e zR}YP9#Fk<5^9knR$(P&7yR3MkDowwmwlE8?wMe@);spXr=J)~0`(77fE?aOtkY$4D zb^qr)h>yt44|NQa7+2IVIUINdw4kTYir2`9M~(YLnM?=ZEC#hn@`Qen(c=HS#A9pD z#f>19VbR)S8P}I$t!Eoe*Femp0eejbq2^Nuh$6ui-q=EcD zM$}#oj2YO~xw-qY-Jb#n`qu|In!insM6DmyI6cU@^I%iF_1$f{x%{P1+vs)!YWz~i zyPoT~ck#Xp?H9m?K0a=jt8+HzDA z=ycIF6m{XaeElDPWdEsNd}B5GLOAMDUj zrmT(v+h^?noy=HG>~B&NntyW%4TD1v&kG^F!f&>gAGmoM^>hdl103}BYuD{y8418= zU=pnr^5vF$_%f!pW;^c@G75Fr6=CY%MvhqEW2kSry-MAcjULOPe36fpmT`QcFe3~T ziDA+bG{HQZPp=!VTP-5&FN3s_mxXNj6{n_W8-6q7qNIspxoX}yT!Qh)4>WwdXAMii z#r4h*9>T0#QwcY7m0p^{<5gN7FmLNBVV5!yVhU zor!JRNrw|ptch*gwr$&<*q&gLOfs?k_Vv4;_Ydd~eVlvmwN_QFDtA)VTA$Y69!2Y@ zGGj>d`$7Cf@R4i0S#ng2ym=UZ>5gl$`8S!wo6iIreoZn?IuETh_MRg=WG8({VBbZypZ z$wDYCuN6FdDCj zwzTHt#n92!3{#a=Z?pZY6C5+L#5yav%0^QVWk3wv;`h1l_!goZm$iZpna-YXuzw4# zm0kx6^U50yLSbZnbP9Sz@IT!gQ)N$;t1D6W^+tCUg{~$fn|1L(1a{q|GhgJo`yYSQ z4FW(Y$J4)?Zrxf^M;6OrzW*qBu4hTp|FJf&qH?nM6Ku#~+-9znSAxHLVP0?YZ;mp; z+Z&qY0gAEIPAZuIQquM4WF zou&>Cy}V0tc;qIsnp+dVgt&=IqZnhRTnG7Qd0qGU=%v>nUDXBLzY1qIGfMrgb9XB% zm+6MgS^5VQd^iuA3{8Am1uC}Oe@d>Ift9gPGXJ=Yc%)#pzgdBqh4uvCnJne4|0zY_ z6AVoBtZNeO48S*ovfSSI^9gn(Yy|7KfPrM*0w}&U(U+^o-MSUmC&TA#t%~!VCA4g1}VVM>lOk$s~1G>6ImOwruh*EA}LL>sWb9q#L z)wl~Qmg2iyX*HcfUC@1H#(e2r;1P`NRcfxOh>h3;tq{H%Q7$rw+6lpFo3#tCE=zj9 z_9Ojoy0y~#Ie9*D-lU=X`!n=T>UpNUNl<7&T=pk{*2yhs9SEAU`N7h(mWKw1wI>~6k>=D~+AtUJ5#0y0@_Kci1(7K;#} zT&p3{fb2g-@wis(NuN*1xOOwuB0} zMMe>k7viMGgl~x_V7H^HB@#F|&pdmvF}}Gg3R@xPeG=LKu7-1x(9ym&hBI3>G24<+ zJRxf$a2y;S333v;!)QTo0LjB%(}K zQ{!!{zK{{`mf&HNXvu0T&kn2_%cQvKpqAh3F)}y5pbqNynOXu?DB(XWfu7J_!N+hu z;XfDrAT8Wiv+(Exm6*!J`X+i(-G)?cZTQ9}A}Zhye8Z2p(1I?tm|6?+Kc+3)s=EB1 zbfiPwk0_=mdTHB|^Fad0*~eG;y>4g!D=RAmG1=52%?asaSB5#CGt+l4)llEe>{W6} zca>o4q;D3>wuU)7`Su!*bv|!AZe4hYxn?e$T0aZgvd>CRzcxJhgEFrPv~a2!#X|`U zkfCmKM{V(Mzj!uuLVkf^{OCd6Xx_I(8wz%Ebm&yE*|B6cC=V!(F7%WCKBk!BO2D(j zdX@H6@66Rj?(8~-1wmBeN))HBA+4o{VI=d1`WM?hXi>dNZY`azSFak~95)UZ{EiTN z(Ev0US7H$XO9f7TG^ItQ;`{toaLHh$F#K?ly z@6p9K!%#cE(W;X=QNKJjt8S`OM3mtnB2|E(df zUww^W(Mb-FD}PvKlHhd0w-ThV@A8y>#|&M3SF~PT^}vsOZcW^DQamZ_bys8zx>kau zLs~i09l$h_*n_=3zTSyw|8{qk4*VwSet$wWq^B>XEh!H znnN1iy*-5G`P5P-s)O_CWl@=&+m#PJH$>Vbq9DHPkk8mIYG?uu8~G2nhR|vG-2B^B zJAK3QWIqBLvTS&ohKH{|>o@9s z`TcH91^uHAxdjBgwx$cC*%`6_J$1H!;sYx{Q%JB&7~oQMMp?GD6h%F!{Z4=)N|uc%sB=JP8~#&~?& z-c7{Y>81B{t0MUTIi>T(zQKfOr_#c+6x5+rjDBC!>fytQ9Y*VW54wy(tHx??1E#{_ zZR^o#asS|!?S>vCa?DKw<5K*W)5RhWXL+zCNX@-yMI%?7YQ82E{v+g?3pR5=N&n*` znLBoaV;YiRtc!#qBJA3;=pnK>Xml$bQoY~oxLm*LPIxtC2>M6ch)LrNsHAiTa6;& zsjkB6J1^FFM!BV^bh_)uYC;hqP*NtXunMeUZOI8a9`)a&zBw-n%Hf?wh9XFPx3_k~ znl|kgi$eg5s|dM&7_V{!57vGKD2Q&qI=!7L*J=<+l6r)hVnZJHc}5m%7{4-Zy(jqu z82ZdEpz1I=G-y}YgXHVayWF1w;rIUs{q}4BuNgE%`K}Kbu)Jl*g@~Mt1FZ?@x$A=a zIu_0e{W+wem4~v49g-~~j3*1nd-L^vm#7E%5q!)LFgT4s-{CRRqW#%&Ke$ttIXtAv zP?o(tO*?ir&lH>Y85>$YFRq%uG8I_7$JZ&V0!JbXUIAmM0f^v~&|FD>K&vSx z*T7PH!fGB>S&uxYslBGH_snL<8{41ZKf!jD>$?b&*9MX$yPbD6L)_6Hef_(Bl+63u zy)^EoJAFH$@#ow9grTW_I;+C^#lP=uSIjcsjoZD5_*U)a+x)DZpP|UNtZk5t`y(<@ZuN3(X07Q!cs@OhM|GjUt7VmXQKIZ+-`z`d}9#Us#RqA{e#tcy(79R zB2+M-(|U33f);SRUcl=OhbXe4|3oD<1$2p>a|1U2cBf#0d;uzY!UfvbJ(jfD)I&r> z6>aCt1btw7h`trh{%Y8L-Hezoo7r*sS4v`iaZNk(`BdEfb$|V+wBzIM#an5U(46q~ zv&UHz6X~VD=hNv_F{*N4hF=}=J0C_A?KT+a*hSY%Z1vrtpMQN_-R)4I;}Y)u#os?H zV}0CTr!zQT#wQ7OEu56bgWZ1)uD<78tOD5--aj7)?*^Yy+EMy=`**8tlBKUZ*1m#w zAkcbog>wwQ&U1(3rIY=e-62Vn@zDpKn3ejxT|c?&nPIi%CiLz;ndWt+s@RS9YJMd7 zzfyM;pFdq{*iXV5o;-Fg={x=4ZEFKb*m$9lK7_;o8}M_|?PQI0uAcj@r7s}y!uZzq zmIby(9ZT=+IUS{~-PWfu+kFEqtua?DPWmcC%lG&Gf4w?2-?TKp@f?3==-SEs%-Pyn zTf2~_K}ou#Bk))hS5~IKQGW=A6qb1zgi$M$5DP-_Lq+$8)#y*rpob^xRf9{FqsKbJ zpoEhhqDXexoNdYN>x*^p-rSMuUd?%EB!A@Xb2I0QU2@A3v^BgU;8z-niXeK6;WYil zx{2Qzdp)9le0#{3Uu0#(h!ke$GzHI4(=Y^20(_@MJMDk1?x&x=CEDW?5P0w1d+R0O zwg+hI>3P5WNjLO+`GaHNvET0h)*e0#{IM1f&W8{w?OmyxgKZ8L@;gZhS2U$W_sGko zK(s^;TZa8(HM*-UuxoV^E(>23+-5LL8Uic4DlHg7fm-`=eoO{Qbb+Cjb^_PV`iJib z>ngX{UdA#f-N*_@KJ(K1Px^XG@B0D(y9QkoYPi%2cZv}R9s8Ay`sN(nAtwxyJkYz z+vg{jJk_&l&aFQ!o!dG5Kw&JC_gn}DMt>rbwW*A&t(k4H%)Ky)kP4~h$Nl6WD1Y%y zHA{~mde3R4Q1R2OMX1rSBBy`Rusid?-^Ys(Y7G+{;-uPXzQccgJrX#sdavvMya&Uy zG5!B*0l3@p3>4b3#v*vwU}WD{9_&O+S4gt+P%$Fgz~ajJE;W16gs9LZ@TdL8>@P)s zbGa>e>dq?8&tiAjDMNaqpeaz}kMrd(ERa3CvOtfW`ambHW@gLYbzTa?s|wQ(nfkw#MXbs!LD^*@soEjU6`mOhfU&To`jt=Xb{l#nRL^4#g58e_kM+_ssix z$^UwpX6}FA(R>~jejf&XXP*O%{O6gy_nC`}3-71PkI$>GPkH9vdm8^+n*JMt{u@zb z*U+a3j>GD;pDuu&r4Slz5ym@}Ma%$Astu3_qvFG<2nw_K1t~nBZ zO>Z98wp7v{Ch6;vWXeXvd>8Trc{ZsWU_GNzkYTh{k|wzzI!2l|ta z?pj0WZTn_li>u9aP}ts^c}EME45KhuTBfGXRC6$GV;^uZ790Vmhx{{WEKMMLeq;3Mh}Vg}X~*)DKEX(<>Q9M?3a3-qGm6 z#oBSmt@hWxi6>59$YmI{HmIupB3t||&F$z?^`J}6;B)$1fpN<0cN6XZlJ4($I2Kz~ z)wji0-*Y<^&D_U>i|BXa?nkqn&HTONy1W0ayZ_Oq|8dR#W3B&vy1%En`3?-(GxP~u zcaPLObH=hIt`tf-0G8Uc&+B42(a1Ep-e9TQp=d4K8T1B(!*CFi%kC3m-_65?SB3D5 zus(#dNP!miqd@R8iO$%aOswi!LaRz3yb<`{KW!ulMz+-{MENSJr?nF0 zZtuP=9_OLq$%)Icn;PQ9m?Q>M_Gzc=m-FTGStAmSPWl_}y-tlOm4N?l9*3#4{rdI% zyK+?QF9$C4fS3Nq$UP7Dd%r=S8!ioT%PvQw%w!n{HI`x1#~zdLjYnUH+OOdZVQ;6O zg^VADA~uI8@Bc{**bG*d$V3oOEo{7OSQk#-;GB@iH2Gl+ls&U8~XUv(_fbL z2Gc@c{}AfW{rghoQ8V#I-VNMf*_ra1`(-f=gR+Tl3ZW9=Ao$Ej7R$tWWPEWsED@!- zf`)kUVA`otwV zY=E6LK4PLDNn)5#4|BWy1VMeU2(=no#7XtqsZoBu=jF#uI1{|RHI-z2ycx)&@4pIg z1y14$?t6DU1G@ZFvPqPawp{8f?e%x5^*&Go${)+hxj>tL7Z-w0+s>d@VNt99b;a;~ z)bRbcRL_uiaO}^0^vH>e?3Px=Ucd7nnpj>g6X_)77er?$LtQO>kqcS79d%DvfrT(I z%jaaWs;PX2DoNIT1+j`piA>lNYOZkyAzqr%-*bzbM6$@vjoGLP3WWz;g1W@6lac*~ z6~%+ebgIpe)2%TnW?(b9kgI+|8mg+FR}$ocClmx){((?=s1U>#lQ}YIYJSWRcaeSm zJ3E}w_3EN$ggk_N=EJL734<2M!u{B9cjas4eAVdW*vKe@IiEEni`mbGyE_r)%WNZB ziUfPNzL^e9u;v}SGxhoJ$g;PR=rnckltoF-6yN!I+jjA+a4U-2PU{bM`1zacCaPX) zV=U}?^%SQT&X|D0VxGI6>w`w$dgXLuWM5mGC&M>qQ||27jhFk_-QS`~23JT7reSrF z5=uoLCf~rEZMe60bnn;Tdc{0~!0^r{jg!CM;`uEm9j%*j@ z^jgfiVV&*()F#yjn=cAlLk@GU9ZVx~BZGc=TR+ogBPF_zC)+-i$;l?eK<2NI)HAOc ziisr>BK_etbBUoih`YDzAu+04s0;Hoogr1TCzjSDbhUN@UI-P|6`s{oxq40?oZG#_ z{NCDn(jH~1E3d!vFhNNrpL_jJ-bnMsp!|p})kKJSzda1H>F3+Smd2O*jeq~0oqi&p zWw`qj;jfoD|IfSqhx+%adWG_(_Il@!S64v(>vB1<4oK(Vdsdom0Do0?EjsKi=uwf} zxXQ^|yf*&2g*&V_h{G(u#6rql$Dn>50vfaHjeUdbg*@HN?v|S=i|#VNUWLi>tBo8ZfTQsOt`sOCn5ldaJh|_ zJ`mRhr(L!ynZ`*hHNb}-<(5A8Z|-!jq-Vn7?UEYMHk;x0y)wK)3hVo9?4qyj&3ue6 zJ~i0v&P1{v{%*3otfyF7&|4-@S>&(1$5oXc^)kV!0xeSD@FeZu-1`>Wsz`x9Jig0& zoHetZ6;>3b$e2X%Hg}#KIbjd9?XqUE`;3o{k1u}CeEDaeMKrQO8C5q^?rcLtjqkBJcobJQQT;%?4={%-zbj%1&%3nU zZqvGcIj$rgDWJ8EwSFP(>7uF6&Eiv^vey5a7R>?ae35>F?QVCJfyc*3is|8`ZuhIc zH$~o)-H)k7DjDx9{{oVC<6-aq_dD@Gr7^D$&RYYAyjg>z+ru*9`}Deq33oyL^tw~a zl3}zNi!)zR$S!Z>Y&|8&>50pL^8DdJ@h*312`gU+2^n@dH6oH~8G=qQwc(#JqlBbp znl~AW8Uj^v_1{yc;~ldW5e&6VJUvLpNK3GymSjVDM1{hgEv=8(X*uM6-hfj<=x@LQ-*JCKWaZ3@YNFQf0zQy<^P%`d7f?uw{ZV_P|}Ypo~R<0ZlvkTel)p(xN&LI>fRb$IkYGcHlIFS7l-wGJQy zl+|~QFcJLk_#&Sfix)PZddK}eVE3v?DjhUx`Y!xM7{~8=`!4!PVp#8$^7pYcpCf)B ziWJ~PLj|;V+aW?j06g>h-xL+8lif8UeH@NFKOrvu1P|JBy{SA-zYKl%pV{s!>pxxDJh0sjU0{K^)}6(K3Ekq<^$I61S*oYT*zii~r}bE$(06#Ur}NX{W`i2t z7m(dZ72x2EF_Dtw51SADP=XVsO+1mud)iwWna`!I4_mVS)s>Jwgrl5GUWX=${h4W->m#vWe-(-=fnlcB4J;a$|(2uBBz`2>|6q)4rX zugA70+g#|b{AVe)>?USA>&t6@YA%nE{<mRm#;c^rN`Ou zx%f&Ocb|V(d+lq6ob9{w983H7MKZlAz>GBm*XU3M>dztm<)n*;tM#?MZ+iUr?ZC6y z&4>!_-)nt4xaavEXWlz`B(P(97inJ&Xns3B%h$%fTmFVAW-mKE&3(+PtE)xQug03% z`^6#g5P|kt&?0Gq_CW%qr?9zU}l|KlgoT`kVV!rJeIR5?<|JOAyf=N*y`(db~@7IyqJ*w1`hDc83?^>Eg-b&?_`XBar`+ zYP0)aoAoq29w>qmK78Zx9dndoS{(Qca~r6XbhM*YkUn=?(@Ih~f(@)a=ZiZ;*?-Z} z`Khj+b@n<&@vgPeRjy;iMO=xjQNHTqF=65)2v_Sm(NV%!^U^=O{uYt!+`o@`nHNQr_; z)Z+Msz@_P0T*-b#q&l2~0UTSl#k9;I(x7wtrL#mhE^BW~o6f!*c=r1c8r9LhgBqTf z5mHg&r0p9c6}j8IW8E-^#XX7Dl-CzLx1cpA-t%P7e*i0>@cV++M$qCcf z9Jk?lG{P|@Dr#_L^Mo%zgK0%@Aaeq>46mazwZo zLk=>o7-k8({l27;jA%7>$Qr-uYFSx17)DVIly#IN(2L&{U0pn;-t%3`=`L`v6Da5+ zx1p1r)V=b3u4{h$hKcqLHaC{dxE9u!7qdi>E-O~EI>SWawnY@PDMblSMGkn7<6{1Pd;}iQqau! zCgZ!qe{$A!`QUZ+l6@{HUahvMA#F2Q^^&McCz9;wbM6(Q)M)X|ut#BkVQeR23IdD_A~3{|(dTV51twN%oB zs^w$~-~cX1Ynh-m{xVh$jB55Fd0cdon_G)4D_(J>E1s{@7|*xs-MZm#J;+}u=tw;;qM3lEz$=z%FpA;G z6Q`o7nX1IRLtUq`=3ZeLd!hRf<5rs`F%{Mml9J7YmHW?9;)Hq8T;6)6iI~XvDaY3K z5mpzdf%Q52t@pF*nD-SzJGx91(?$qnqk=F_88*)oq0ZK3W%Mngg?62#v~rgE{=T`T ztt>gRu6|)FuLn%zhZz?;{rl=|;A&(^@3iU1pO?`cd z25xR{D5jN_lmNDNzE3{&Si9~KFe2|t56>GZaVVZbOUdFy$dLuE#V>@j3nsJ50uOn- z9Kv^m8LoVZ1Z(0eD$zl+hDF8VR6+GAc#5G#5}2xKbQw`WIqFxb5%|*NsQVX03T4-M z2inx8)>*5maY%Sl=S66=*x~|omDPzSM4i^r$&i282e)ed@#nGf#F@$Xa_zdY^S|jb zzaa;I>gcVVXl`!txt-F`B!9Ww|L(WDXgo{xK@$b=9K6Xsnx}ni-+XSbJ0P!xbew#2 zR`sNt6LZ9qQ>fvyv#Xwc1f3d65rE`M3(Nk!zL%+=*R+#_EOBwb?$G zuczUzYiG@DhI@Fuj#QwQK?gS~o*$s^3ykOr%b4U$I^htyRLGJAO=?0X(dmtCfs;qM z4jiPA7H3;o?X+>mwX0Zyi}3`%d$~9zZ^9??{+rVLG_D;<=e6p-zr3#Xf5tla96IN} zfrL8DJ=fp?)mrs_GKa6+k+jeSvw}mRt#ytr6ExEJszh}l0zaybc}K*3vg?gO|L{PTJafjwj%bM$ z2r5$5Vx!5`Xf!{O>jGO*MKOZ|vLr$yS@MH$Ys%+7#T#50DlR^Q=`%DUbs}Y<0-|!9 ztO1q?>pb4Cm;k!`uDWkF8=0?PPCxS{`a7IIjg!iD*;Q~U2Ih#a{4XuPLKnt_!w7Ae zA$KaPgJxQs$r>Bz$-vrRk$KKY^Esz8L>Bc{69Foo&&hrPq#hs>n1%Eq{Gdf<+eKlOctXnI*4Ru>OqY5_6P;mw^7KdZe39ST4sn9-d71FF8#e9#W9RId_M92JQ3dB|HuYMk|tdo&EaaFbpu;;i8&OfPO*0ROuyj7>s6w4@Dsbq8bCbhz8|P#>$a6v|0%y3q(@X8TL|8cxNC5{ z`)%^E(k)AA1tND6I+v?M)U~_rbNquJr2Hk&@i(Rr!MI6}IvBS&R8?0jdM>Ay_IJEg zlXPKpWHjme@JIlc0yUhCXTy{a5&$zrU;cBPv5}$xuHR8IjCerQ>NYtO2s0qnvl3^K z3MvemyVk=+)*URobr7wjG64xzEe>3}O*2J6Li1z~yU5vDkliR_#N9Gt5A*u+FW0PI z*^N^2{&aJcwY@bc+TQ5FHOOC{f}ze*Z<$VobUhnVv*;0yrO0JaVY$G$n3L^FqTnO z_4ym+v%o6L@Hy1*G#`mkdp{h>#>xW4p{EXoWPZ1kDm+bKtqd&D_Uf9V(M~pqXQc{J zxqYuba3c2nc9X$pKgizx;2JOn3m`XxFeKy2P@R@qVL=cT5L3y4&60vsTSa6uqoW1~ zU^PI&)~RAO1jeSOWI>}_=WSC#naGy#W0;WQ3P#Y}lq*?@Oml3l4yuFIx2>3410gMe z^WU1&9%UQm` zDkEosD-ShaEK2G(F+5mkVtbxssFLh$@J`#T3P4ovP#S2ApdVs<(tpgNj~0uS(+jEO z|F(;jW^1dQq6z4OMf6^I(};mjA;DgU(T{Mxah{NNHH<}VPkIsOMD(lt$rs}F@eAB306D%{n)h!qkK2FIVZ~*96r3e)^bbtD>Rtk8s+;uCo}z zt`rf#bkIrD&l*HEbgJhz%3 z?I*^F(!UZ-%N`ldbtc#&{>O-Mr+e6ys&7A6Fas7IvOKP`%KfM}NmR(HzJ}h~*t{Xo z#^ut=8|T34N?@u<&|x(wf}}g@WxM~jX_X2^3SSa6zGvQNP^wPb5>ia)m zkB^Vbg+KlpzLpy5K79GXvV?u^+;zAnM;6d?*WInywDc9yH#L`EJIjsvAEXIdB1X85L6i$c1?1thja7FN#Jxgb zv+?B;bnz!3M^5E+O%R|2$Kj)TD5+!6mAFub)nck~=Xe0tKya`=(2TfPAUy-qSnRDn5aT}~C zId>9rEe(kP&P0{-e}SZ1_MJZ5)@NP|o14u{@dZmljGdeSP4q=2qQ3iR0kgT<^==L+ z5tDVVNEta?C<@yb;Qy}$h*%C3Kuk;uf^#M?q;mq7QoKVU;CChf8i5+_a%9Rdwv*ZP zKTFX%;Dvu8f2f_13H|VDZ$>?n`p|q-sI~2S3+MTj5HtxJk%D)&N%2GcV1Xy1V!sWQ zDXNTXJp3%jW3HFj?&{P>Y8b6d9WOpIGDbAXaw((|PMQ_hyoG6tUjWyLWii=w$N%?q z6K8uPnw|YZsQmqvkX2J&Ts+um>^b21j5Er_@15SxPnoWnwaI(d&KB(V%uK4``hPbY zC5nU!{G;6ewS4bzXJ%%`@aw_wYXG`==m~%)uPhKb9sk#5NQ+pD%eJ=Xwbs3CqDnVS zLgEVZ@|t)bztb_dy>0lIjQE2rcGXfyTn0A03RXuxtkquQJt>4fux6iDlR!0z>~A6{ zFywb=Bt;?02o{# zf7IsdAQ&RKXhLyI6rhF4T0y@v`>)=|g0Su7JBZd*Yn}CX@nqH|r$#5iuEY^#9^=Qtg~PvT%H5-S!`cm{quEB?n6l z?rg6a&U`^$4`aIzP-04b3Ic!>y*?s{B)ke9Ef`kJ(u`I`B*^LGo^{YlTXDX6{x-`) z`GPSFO;SVaOfVv%Mhbctt-!I!NN^hlbIuq27p*)16K_4Grw9(qCZ3k97|qT$Q2Q3D zoX+m*%%=9M+76y=64x8Hx|ju;gAI0Zjmm16X(- z=`&JrD4k$k(!eLwBuJewj^eVk!{J%Oi~$uaYs`@bv{J!3d7khtaCU`~MMkQrQ~Ggv zV-cGRk=*Po_z2fdV!kDdfDBUls#=YMdud%PFkP6#g56T1N=M<@vQ@T8shyFcP|o2p z*_{65hpQ4DV_R8Upml5T?do$ z8!vVbaCKYtMALK;o-gepwKl=T%E6IdI#J0IErtB294Wd;ENf98mbc1$0D_Um+bq@D zIM-|}hXm4{YRdAM2kAqf3GuV}@9eeL;SV0W_4kutZ=9(nJ5ERuL|E2fUI9E(s&Z$%}ufkVYDtnuz69KN&4@KvgQ0H+?0{=E7)P z?XF0IMM!}(Q3r#Nb#G4(M-fl6cNofTzqBQk3PiQ(rz` zI8)vF@A|<+V+9)Q2LmoH7e2Zx7@EHTdRzKe{;`wVIL>~zR$aHxZ=KzPB4D5u7TVQe z-zW_Hdro=BnhYg?3ZYfKvV^YYPfh?!Fj!pBkvNVzChrQTgmG*ev<2iarq0wWACY*- zZ;p{F4}Z;}1?)VSu>+LjSJvbNntUa|3BmxwIx{OcjlcDJ0R;@Q1 zX;p!Q-PPiua!>rz?0?@2{tB7_ymtr&++5(JhCzM`=lGL|SI8R2uvcoq?C!q# zs`v{UaE6kiLxW*wy}N*9cbdSNUyjQqfmzs5Yc0qgo+U}`V0#!Rm3>Uqbxj@ zLzVsuP;%i5^N?utTHD-@Y{?@Q&Dr+sM%%m>0R%MV$+0~zdlk8Q%~NHUwcYx(Wq8wE z^zM=nN=Kq97o9q^yA?h!9@o*(#~Lp%^!f~QDjzjxvI2-k=o0%fe{kwaYv7wonp%o( z2lN!upYt{ZqPLJ2TQ;NUS<;wYj;;S~!BWW8+HnfNe5X_DrJHTJc9pYaG{xQ;>o&8} zfur0Rlab}ui(iE`rLzZX6vHRyJcfi5w<){mLLXh0N}nRf2BX#7sg43EEb`oiS$TzI znkrjiWSg|G0Hiysg(Wf9A^YDBF6*ud?^#tLO_#lI>xh8pH;+sjR$LEDtUcwlnl~y~ zP%E4wDuFm7XlGFwXf&i^OQ(~Kvt>Rvtjyq8yWIer0cgp%Q85d4wR$r&C8*R;dJoTg@Ts5pKTG__d*rxfeGFmCZL}g!b0qw&V1)vM7q(KD_Bs5k=9%mIe=TQ%G zIOceUGBA*~%m>VoUJj8(w1a9%h59+omg!rf>qZ;4!c|GKe7j&UnZ1guPLQUg;``c` zw|mpSD=s%M%&{Jx?*v;snj4m9SubLVYpaB#H`^fTH|GjSa&kxuj}H%y|MNgloS<}I zSuioA#;(A4DN+_-Qjud-dTx37_gqEETqKQnHU3pIJRI0p%>L+(cYQtFq;vsFY;Jr9~#V_!{F=ew4C?v#AZ&xoc@iFzrTd)Kc3l zi{njS^EqsDx*N9mPN_AsnEG%vskT0Yg&=<1Kuk?|l}KK-7f^Y(nx&}X&*9jB6e?LL zHgC?-sF-pbC`-$QRa&1y7H#8NR(zGh99NBoM~Kq2p*MOr0QmEAXlo`f63Mm%)X}$~ z3;v%yMkU-HyQ=TAa0o;S533k;}INR3UK*#nZ6!_Qh2CBbZ z2v#~;7d^`@42OAwA*8Uzp9izM{(|mQcb6NZF3TJst%qK6Y(X4o;+swPEK1^7bpCX! z|N6$i>B7ly%%w*9c#r|7i)Sus*D;N2C9RXMwsJkxE^bvi7f1_(!)=XFEkDlZ66ZQl zIS|7CFx*rkztbJH6uM8y!WRgm8@AJS?@AZy;CKhXjN{???t)Cp!I_BKNRHtzrK_0e zA!1`*efvbfFU-r!OE9~Wx8K&-T>NrDW%;)%gf{J(k=$}#yzqNS8AgZH344`|b~U}F zKmnw(q6#G1E5zADD`RTr3aRYhsl#In;o&X*&rt``nF$1ttM#Ruj9L_iQ>+&ZP{^G) zxR6lbs9n0$rTp41KkNS~L}CBC5$YXb2Pw?@3qGR3g;6vnC2%119yCyr-}`<0F6Cic ztG{ME{3jA#G5r}KAjH05;C7vsHBx<;vIC>&>=-G+=dDG*wye ztILUb!HN4@xIpn%K-EEPi$C)u^scZl0l`XWW4Np?UY82?n@pMvL_6z0|KXu>fTBlem)qK8#ZYG#O`sl3HH&RFwOr zq%BHrAKA;Te9%=pXNo)?BFT`xvC@b0=b{3O3g`I0uN5FbxqRl=;8(46g;8Z>SE6vj zcW_-l;Q%#AB)FTqU>YdMw9Ft;jv5X^M1ZV?daXPmk#(Lamv8v@%Skv)kTy->tNsKWBB1d(i6UCxL_D7*%wpA=MOE`*5!=grQO1; z83?qu42&^+v%-;K%(PuMm7 z4;5$_dJ6_Z{qH!pxxbuo_PWEI%wqJH%BserkjZ6lIi0j^cPQa7O_~HwYCH4=HX(-1 z=Vld{CI0xvFVe#&UB!`47Ii=9%blIkHO7W_ofvRYI#hVLG7`|%dOVwOs6j?JH8tV?vRxs^^y1WuonJh;k0K=ocWzS2O4_%KsTN9v8kldjD z7n9n>d}j3uqH*f3d2*D^pZ#J--aGQn_bRUFD0O!rNRBH#deo5+;o9)=%K!Ko)ngix z#^7eTt?)8K^pLkkmm0_e%#YC|M=fSz&9v0H zUYc8YY$Lu@&r++eFFF#84bx3+z^(&B?eQp-079t($xcW`@T;SUFKvKLw6>6`(i(HQ z?mJ1>fe&a5mPk#3$QOIM{eMYGRH0O<$wRVu)Iv>WRx;g@9Ib504KQ0-x0eA}V@G2R zX9N6z$mcLcJVLHbXweHFc371LD~7DXOb4rP<@##{jMCxkV#rqMA=@c!CA*3Qn6;+& zO-MHy0y{UiMtgy!1TO6!bfk%K3hj*jru+KDvGiyhSpJO@{$5U$=N1f}xj&KM)s){-f;R8=re)GSzzC<~9{)RR(r|JTmc zTnCzh+Rf+npnN~%-N|8?+haRz@v)$YdV}H`i#oy5XeaR}bltBGi~o7V`prypEPlW-yuB?ptZ9=!7L5T2UWtuqRRH8CPw!Nt-lPOyQcOR(yw zx+?Ona8+J~6aODkUl|ow7c2_|9oz}-uEB!4J7LhE!QBb&4hin=?ykYzVQ>$w!JRvN zcis2anqTwpoV`zXRabR4B)@$9*nlWP?UU8xsU+9esQBn2MKye7TZ({$!JpvjbU80~ zE`_RBjdY(DACGgy!LP)u1v@xXLeo!VQZdQfbh`Wi7vDWa39l8HpKXuKuLY}~V;!vu z+C6b#z{EI>I3dCVt%2_mzx{& zc@CSk$5ghEIc2h^J(m{~dhh-tlB-$$)crqULaaYRxcc&6km8WXNyt7= z#oju2q1TduS#n(#SG4aDjPCfYJ;~&Zy|hVg**rlEAjO4CB+XLLt}=63`5Pwt*=g?L zVxO2L{k+RbXc2U56YiOOq_)AZhpW85Qhp*|v+mDK6CHRyq^n>>)=FqEBf+=F-N5ek zHJQxKDh4z`wrpa_k;O%>3+iQIe1>DcP?>Iy!LXQPMWAZNc=T;gwqYrH?%r1{x!16! z!oTdQ7(CI+2!DYPbC2BFT2`MGHjX0rI_sDN)!LBkGuS+-CAYc{kMGPP?n!NeNtn8Y zZWjc9q{5MpM|-=ssMm&zf4g|v7^2jvI_Kl&zALv{#f{i8qmeSi$NUx4cCG;Y+V_5O z*ZOXDZ#30je6{?C2gWq^^`Nn`dv%F!=?xXmt(CLw8&m=^Pw@`jxKr5lN#JJ(XjX)B zPH9i=MRQ9GxL?D3nG?=Vh$rdN+LbUSsnn%Og;|98j4}ysQ*`wxQdmQlKa7Su+uPn_ zrgY8EWc|1-yB2pluN|+EwKsF3D}5J;>i#!xbVGem@U{??d(J6CM$euZvS>+Z)l4M>D_$Z@oh5h`@jf-PZ^i@>h$OpQ%N4?swJ`|76C}4fWpZ>+hzThQ(FS}_taf)$gYl7&#BhN zqAz6!U`NaN3h$C8YOG+;y3` z*bI}>5-8h*tny<;K_F|2MNMM=H9UG_{ONu1aSROkpKczMSG^ghSi&xQ4QvPp2ozq| zyk=z;)t)!b)E36_Z(sE;boy=&ifQOEOyT;Ywp5D+A2#VQqh^+oEF>pqR;a0B_gf>1 z-?KZpJ(Et`CSST5?|5hq(z!3xTAE__M)P^ zLlSLw_f)?Tyv(1umG+Top=eQKTgn-wAA^J;OL~<{wtu-h@z3dvp?Y38)d|Ny!$H89 zzvHP?jHbI^8E;fXUU=PB+J)yW4owof@!lHHS~NXA7BGGyMcs_|wEK6?93g6!ymm%D z0q>`IY}`g(DXU6WyR@po^)~J)U;=tP<$k!Q!Uz{9?`BjHmg+J;^r*b(V7lMTd;Ns} zYb}~mJ&B?9p6lX#_U;$MyQ-=8yRLwbxK{ES3JN)Xbg52+=F0Nin_q|+d7Rtkj8Sww zrgPh{Dw77g<85LZ32t8uq2jk**{ z+&N#<`}S%_z3Vh0qrjr2pcZBBYU2w1Dt8h=wZ zKqIzekUE=Z;cA%nmHVM&!dNIZRC*Mg=;E5>!w!X=+pn*wO*hr49nN(+feV#yr%33C z{Xo-_D)~5z)UrDpWP{?Wh_V!_qYM2`LkRWt(y{b0AY9cU^ytmL!A;-D+ak+UsRcHr zuwjl{awJKV8_mGe!ZM7S8bX;G@Vrb$LDa8ASx*>?Ub7NQSQqj~N&;&2(ZJ^r9p_i- zLb?bjkk6qQ03wnK0x8rWuhTnoYWT<+-Omt%R(Vky3rsq2UDq*H;)MGXf4=N=qsB^8 zVmv~JLGfNmh>-{-c-qYv7pqJ`IP)&lW3CWebq#t+u41Ac-Jxhj?n*iHEX+usq(PLF zjCr1(r=D>4R2&p*;|x0$&>@HNX2(9?JDUQ7;e&%jmCdL0GHwoTPwtguEB?mdRriGsHuZx-rw^7SkiOq^j~@cIzS6C9XYJuag!uyZsy92+dFevtk>&_9L zeLrlKA$IkYi>IV-H*wdjz+S41=xjq0bXjVKg7`|WF8ed?wrX!o21spbbsps85^i?) z8G&UbeXCySyJv72{G>D9Za!%dLKjD%s8Mi$vTO6Ol8eSeA}u_dd60WQa&ntZezNPi za=OI2A+}t7XK+r$sC{>xJRt5D;7_=$L<3h5#a*E7yGXHqU8{Wjra(HvHVJHge8o46 z>Lst&s}2Lzg#v|u=1(E#nG2OhU!Z33qx!WCH=%BfZ>BD%SZF0I1V zV~e)aZz9(sAo9@0bllMYF8WRQe;0iWqhINaTYaI8oSKz^20EuI)&#=bjs!eOlvyN4 zPyfKlTIr`}z!{M&#*((;uh{BRp_(}-W`LjaB58n2Ik%URy%=9O+{3h!^kZ-8h`i-O zvfOkiF}S-!@y*)oB6CAnL}+RG)8*jf$RE&V+gESfP5?ft4`Ak1<+gF)20V^cD1{Jy znVK9LwekFPAMJeMqk-G^@RdxsQks%em!{ozoNOJcoMM^lZu~HuE+^?mSB- zZ3yF)(GOQjz|w^r%}PlakH2@esiu-(9ToP)>G?Ztc(TQnNbyvV{F#r+X%Y|mUF1#; z?OUI5D17tcn4zw}@{{TB%T6)?1A+=`yk(K>IKVu`gc29(Gtx-Jz7_5CiAvfLeers3 z7UAkOJ7xGCT#M#d{7}L{gWDfmGi{)U2b3w^{t0(&d+6>EZ|11yMcS%c$zpMzRa_A* z1C+Bzh%M^i^u+4duhtW$=mG-Ut8QFWE|lOPFX)};_seVBJju;^*1WtMPV*jrpwLYs@DidbZ&|8oIvBY znOPD0#tt?6dBmJim|PVduDCVT0?ARI?qNt|vaL^6Q|#~ne$^gUQ4(9ZUW zcXt+FXZ3y`1AY?^+xJT?P9I%0rfdIAz#XMjBBoG~fjKF3ZBs7fPadPQR?ztY7$NH63lh$u{sIKf2;Y21zqh*3;jMr;ZvsFHaxQ< zMRK2s#816@Ajwb28aBuyegj`jHK#8KYW@MAg-7=9EG<$O2mgk^Hg@V&Wa&>33}s?H z?>$w%T{;w({~3!Mvq*azsvIf5wxG8uGPM~`51b*uEv{x{UjG~e6LsGSlmM1i#kfqL zK|$+0t0ygBC?DTH+(kCje*)?<-^{?#B8Ke+mLH=2WS#!kM1WJEmt9S0sdAhTw{kWk z@%vfs|GWV9huVV1ok6tklg+Jj3*^bqb`)N54|hZ>>$|INzMb7<{{<(P|AJHC{hh<} zFF`Ni&_(S}jY1I8Q&TxxZx94yoi438ZF$>abx|l)TU&rK+44BB7As|z{4^<$k!|QH zukPTnLpWQbIbAtGfd>nL-W{cr-nk$={L;o3cJ0zQ!rzW>sw&#EKk>$j?QOxsUgp!; zKp*B>zT=VgGBVl2a6JY_9x_K9W8m2x2R>icp348(BGVoQFYse}#<@7|2i6%JVxD6( zP~RQbsN2^sRjYKa6vgP8NZ|=0`6E9B2m9TA zACFdW=M=btg0AXhgzt4O+4U^X0}o3Zws~<^9>+2}UQ%})31;kCc?jy5QDrJ4%V?K{ z12-boN`JDIT<;@|)PSUEg-0@=$Nhn$^}QF6rO1SkE*ga#us_sMt@gWlTJIT=F}2Q* zPRVYmPO?$e$P8Xxe47~q^JFGMWp$ccFa3JH%sg!y#N-Ne3a`3~N`HGi8=8xUhLq)A{c(8I;MEg5ji{+j zIdToqZA`ZUVs2!YLL;zk-|YM1gO7JB%5&D~mBhVj9pNE9eWi`O_Y4fpJhv0ec5Z(k zyRLp2*+{gAqbj3vm;fWhgi=a+nDlZ9Jq$$j=co`5NLfRv@KxnQiLxhJ2?A*ZUTm`O z0n|Bb{G+-U(C;k>K3_w@M$+>le-!&nr^<(o0vQ7(Q~K3U9dQ(uQ_lSYBD3nw!`Ua~7Gt*< zP6rb0pRq=$*vdvOV<3E8R1-}@J+9@S=GsOD5+BX~;?$4-;uPslvL0;xq?zOU88z~R zo8J6cc-7*~VXiALscSIo%Zu*v${IPoGm4YD~547gIy#*@VCv>$2^ z(S#%F_@}$<{HxC7fq8d+&uMDGvjAls;Ul7sxwZbg%A7UEJ)shxKAOFQ*4dmNLUnMc>Iv)zrBtuinB20Xg6GK1VtGD$IaJll zIeTj3^as7+0cHBNag=dwa27Ebg(>pI*6?gFCF8yBz99R>sloxs+h<5-L-4SuF#Y6j zs-;%n4LvUyPri>OLsxtq5sxZE+Z*SMhd_*P84)3)G1l$pF+VIKuyt}UV0SOw)&Oxy zq5l<<4oGp$YG{gVUltCeS+9__fF+s{=Y*Ce5c5~iBFE6EcncC6BTn0d=Bd=x}dPms@Rsu`a%pZO%fT%<`#MlD zA&R!>N&MPj>jPPHTW)H&9U@v^M@6w6hcOc4VDRibF$J{N zX3&}I+x8JFdR>Jih@ZabX>fcHPu`0}kW^Qm7o3St+NIjM%4#U4Ik$tImU)ZtY!Rtdm);j zz+pOfj-akEDS6b1W%uwR^qZukXSl_}NP=+vn{0Q6(bQqT z7ES(gV}0XDiOtt0IU6g&_6qpOb$9dwfBem{qs$mB=QD#^OGd z&vT;H=lwOKCdD8E3~R`^V~?1{zdkHtG%Yx{ zw|wohw$y)z?Y_(t^a*NnZFKf}Mmam3IVTpn_iD(dh?V~9B!x8{J3JNGrrUMPFaGy! zmDZ67AkRXpz@r}-0V=Dfi)h@ZLWZkJ%8^D2`vYqv15d7C)La>BPH2%$4I2wEucm$5 z8|jljjff{XZLx6zOuI2F>ZL0A9_%0mWf~zEWKxz|PKLY^<4lO zOwOl)0Q#Y!HU1L7;b<|-o|nMRS1{DF+h;(lIw&U?m|cG9(LfDFbkq_t2+`DM8Wy(z z{CGjoJQ??7VlYw$Z^IdG(>*>1YPx+^xtc-k9Wl4cUNs6r&>%A3B%-5Fz0mUOnahglRLdkb&PLO^oS9N zUWWo=DCwnSg>`{3s%ymbwS|g)70>1lN&f{;qk$UnqA%q2UfFY~-u2xfuH+Orus-0W znoO#CcuRf}{+&__>Rr>&mKq{h`O9J+j`$%;CwOWk?x&k%p)<8|d-g>1cO|I3Q>;H*gAjhA*heHUb!ytE1) zdgLS^Faz#zkQSFEjX(5|pq|;rv5DS$6PV{Yjtc`qgH$nP%)d1eu!oc>U@W~_`mr#X zfqzTVvX~`MJ}pkHa&>Bj91YZ;3dKzZGQtwT4MEUO3hAkEK{1Xc?nMTO&&O?&yRf=P zjTS$IzFFBndpf3Xnui=FOwSwgDXn;OT4#vpND(~=;HUGfH7Z1vJY;TfeBDP*=8d8+ z^OHt6#kIAv+zYh5s19B27T`lwP4D=({tH%>7DXj)>%II7`+QzitP6y%MDE}pbxYOb zf)b_>v2k4E%7|c1$R(f{1MPPn^X8#GGV98wBFe;asqUkxAO8<*i3<{ob8PHKI$2?~ zxdyiD&No&q&R>vC9jzdbo3(t+pTW8Hx9|#0#~3cXbD~Ug7cu$#=fVwq%Q^iKCI}h*?P%>9B9#9+E6sk4C8Kbpajpogfy5 zCBV4Bg0XOZmY!bD>cTA`BL@SP6aX}WWy8qV8U*MvL+)*(QRil^D;=|c{y_axVc`4~ zs}Ch01cRyDEn@rm0q$b#@w1Ix{%~WNbEg_MCqk`CDTLqf*^E<~{oKs$a`fP5;G&cN zv~6*^tP*hZ1a;#G*{7lLT4^7bvP}oumuhG zq`CdWK%wScNsEd$XrNbSV~MKG>0ZXqHd~e{etz8z%`dw#bb`0Ji&6g8D59i*UY1j} z4oe7>8>b&t<^&siw4@fT+(#5qlbI8zE(<*l7Peg!hDodu@ozcTT(Je_zSf&&QU z)i^qgGv!rnsg)Y`?0l&i_Do%nVc4N#=~(bH2Eh;HzK}f^nYsibNgzmZ!MruA5miY4Q-nne$G?zmTSPt z{LUqQu|C?$+OLLy@+&C%=Yo2x>KuKgPhie(snB9ukQ+Cf)%|e_DL!R;lhRq%q>xfP zy9Kjg0C=+jHKKQ1e+eqhZ|m1tBM|m;sAp(k+goQmYVW8h?A91`BN3yu6honm`#fvZ z3Pz5BQ7i`=b?2hz8N~SfS&5AK*FV-GT5#b#9)%|U|G2szOs;p5dtj@i z_&>shJ{FjdhzoMrTo6FSlrI_#S{7b^Mz_d1aioJPK_=5-`8Ql$k?*P>TK3zb!7(Y| z&!;V#^E4CUVlCJKMP1I{t)1FhL z#_whqGhDM`=byviydm@o59o5lwx%4DZ!T7*2QbM&d=)DE7o_i*ss9slofs!_^YY+7 z9+A!Y5iv>9DPh=;N5_;+A&jlGDr>dNx-&;=v{n0RKvYy-q|11XiV#mW^!RtWd}1r% zYQZ|=A`q=06u0JxD8Hs`Gl7a1tAW$%vsrik)1{ zJD~Qjw@A{MjJf!wefzE+R3{JLuVZ2@jD+P-ZE!(Azl7d+K(T4efTefKKr9on!3yx(jL}z06NF$lPJBa;}RiWTVZFFL_C4y^d7Y8(tZ}f32b^bfNN*u z@+k#-)UXV7`^}t!=xyJ=WIwTGSMK^)lt%Yk{I->_=y6)sd9RhW;7g;}QsPn;Gz6A4 zh?+;S{ymk9Qu_7LR<8QRz*nc0QFev>d<5F)9vgnQOugAQ%0e$aV4rzc5_7{C` zTiKG5lK4|`rRa8Lb!QI1NCU#Ed}09-x_n{zrtk( z=0~1DKfDpm=C32^_&tYNvU3HM$?SWCO_jGU;PX$e#LE3$chsp=4$n35bHPqw0UI>f zLmCiWrkv)7EN7d_BhwR(V^zYT5*d?CDzvj7t)6`52NhrT@^t#$PbmFVsmy3qozWx9 zRW;GS5dzkTC9cBtQ5RVjH}`azioC?a*;bY*;KeRu`I0zDBJlhx8C;&y6a_huqq~?#JJAJW?n&bUHQ+Q!eLQeEB@wgZZ--`%vbChIXa=*h!W~#>aCxj%BvY zs)*tDdkqf<#YH>PF?0UhGnwbSIusA@`9|h_j+G~5Z+RLU+R^d25WS6$9J0ayX5$qFAU4dD*^O-x81x_sR><10|RgSfdn3cFnveVEz`G_`E zY{hS9x8d+jvt>vdRU~$+B@wP3bu+UNGv)Ob)m3mt$<{tC^{87qxW$~ic5pw?27!%< zz*e?O&Q;o@L4Mm?HsKx!*9kluISJM{7Yd#;G?-99K9XAVfHlL#9AC!gFgC=3qk5m? zNA9;j%Ks7!=W_u40RD=q0B7qb}K7=J$zoC_S~nmfw#p+ ztK4ZRoMGR|8lV8C3dl4>oFPSK5UeY+*X*Ob+8Q-DKLWzCGOw=P9`A_oZMH9^i@)hk z-ex{KJ7;=$b8A1%N6LSLpan$v?4g=`1f49VkKCIjO59OQqx5$p-8c%$*_lWtqHcaK zgS!3j_GU(mkoagXAxfoB`b!jhMs{E{yAifu8Ht?Sw|OYKR~!MwTv-zYsQx@;)c6oh z5sL4f_iJiZu~04T+H2ZO#4bGv1(+gtm2gEi?IkF)Oc;rAXQbaDp zN+R@FN(6_z?-mxcEW%LK^8hQCAHGuTKMp*3va~yQEOTF5(&bq3wmfRvVxLWaKouI9 zQNNDZ-wb(%>UBK@l4@2FY*fPXoIG)NpsrH}tos?Tdml=eJ=5A@a}xjp|GF8i*sx(i z68w2;w{dm*na)Qk&tWX&r%uT2c6qhl=(-er5r6+X-HH9r0=Y&oHAl>o&RqQa`Aj>U z$ux{HNH`G7`Kabbn&va2Ag(!BV4+0E32lg_V7mQ*172|s?=giH`VXkC>on;(*R*QT8 z#8y@p>%XmRfFhli@C_&tEK3Z_tniepl}y4DR3h6Zf1qo);WqsgBb8rUX`j@hQbj8V z_&3tEI6eFmMP$8syuI4&xQ-WE>C|R_e}2u!CLm8%5Qf(ZHHt1KpM<~@(F_pFtS_&+ zj>fzUz*ER33iWFYQvTxpoSH_Bj)FXQyx_Fj-BbCwg88cm+PbuPP)4Y4&J^>fqUanB zIuu~@3VI%3LhVWWB4O`diTFGjMpRrI!H0*}rX%>xpb8R(b&!&dy4~?ANS(ntx^y)d zezU7DlezPO>KN5$f5^0M47_e2A9Y&bDF&gk9Q%rsmk7z{uJ6A%cnb0`QGmrXc8s4!+C@-Ybp@&`?TyN7UJ_yl4gp#=ONUp{V@_do6VExrzYwggQ~E` zWkEdcnAIa5+(lbQtheQLt)IBO^Gu-}Vb=J6&vSRmiwGQ67#W>EhZo7O4D@7@7o*v3 zU^OXZteicW;`)P-&o;W)6yAc>;5AbkWPdi(cl*BdfQy$30Xn*hE9w7w2Hg%OZF}Q{ zgDN6LNL&Wub(tKAqYn>xM`e|=hK&r>4x77Re+XXv=zE5{`kVWg=NHM3Iw`H=4W-m6 z2Zu6lyD`I4|6kyn!-DmZ;R!ebt*Z7P#W=JKYe{!j-C|vieILMEm03^r5^~b0p(TpP zrq)AB_B+5a1Lq}nuwGQtFClIC7-$9_*Dtr&yWz1 z`y82IOLQeY+m*`<$Eb6vfn)S~dtQ8|{!{*camFm=gBl~(p+J<$8tcO3GOjUYwZTI4 zwP~WE>+|&gIVm=UzLp(oH3pQt=&j)9?MM^L9Md6ICa!r|fG`X%GDAQsOtJ zq^!d|GjCuXQ=mx1`zjUvxH7!XYJW&vIvvnLb0?dcZMqInV}(0wsqJsCjmhjyQ2+g$ z8DPIYfyBT{mNla}yp#fUGp3Gzk_u_jX=WP&gH7t&P-M80z8TTf7!Xj|@%bIz9d$o? ziNogW-e^QtC72+24xzpsH2cm1SB<&Xu0#$%pN@}(m+)l19GjTd!01@T&i#z4gGP7p zJagg{@Q&AQedluV6#6FoX_$AvvHEy7bpGVT1IAAw;LJv_qX=J+=Rfq5hXzJJv%T>| zo!(L#zHsrn;E)mt9xbXbUlie`(C(>?g_fJCix=1vqyJ2kGWD>})Z!AD&xHRAVt6+c zO$2CVQ@Z$x%?+@GPa0;E#wm?`%Dwi;YwpI*bF`L~9-|*Y)W*?)K=_p2+2d8H$$n!K z8=9#nfpyc`ggvH+#>cg2`z_^ecY15PYc_0a(62Ze1$l#Z$K2S8B6u}~&)*P!X@;mL^8y+8Ej zKY)z?-{<2DmQF&S?dH6S)=?B(Z(kBTyi>5sgZE)ftkC{N>hGsFuS!KXeJ@=uY9cp+ z$$|P2Q=pAgLQfebyA8Nf!!GMDpcg+C8@vpjt}5(v!3`DTTVArh6N}HXcOi_3W$JSB zakTr&t9kH#zmX`FS(UtR6B>GvY(;Qr&R&g_JuMvXeO)cAaCR>q^msv1ytRb0$+X45i zOOi8U=6LAn+H$gTq%&q1aRqz{!kY58QgG?1dA!X=v-#c@UjM1eZD^W;UQQq zms#uc2K9dnTL~}OE~(EMH-c=rai7xHkK8Iuj1Vj0j8&7Kfu#g@Kj-R;p^ftMERpJ> z`pM-Q$yFt?PK+dFWc$b8G-&?OjvDfE4s><3@VvTyBN7tMXWCd%uhm{u!?9%mr0Bv0M|`zXgZu(ZZ(Nw! zY!#U;#ut1MPkL)rrCS@6-S1@Ll6Sapx3D*l;nUFBu8&36PbcWFbD7t(Y@>>HIp?o9 z^E4hJ1V_?*x$CE(B?V8Czw8i(CgpmIPXPX-qWv=mrFDaBs0SM0-mKwEXC))!nKG=z7@TvA(u*9k&sjXcp&_5&N>WEF3 zr(pZAbhd4oO3k99Hiz%y+P}Ae{TmpMbSdDXsgpC&qxM+bEK=vj5c-6YNPqMBDBu0% zxqxo9h_I0|5JIh^_gdu>@Jo16(28hfvqE|_x!==z0JKXbkqAD0%V%^o7Ev%TWs#T7 z5!z^<#Y}}-ake`Art6edj4_@bz!_#;U63hP*@J3ozsuad7+Hf+7`wkMr+5XmVPKoh z_MOoDE00aa5w%UnOgEWf&2Iz%&P1vw2&Lema(TcO=uxN$Ym^(o5!`4X8J9;NTbMw} zdTJ(y35m%oP*MVqetk>e;WOGPct*lu_iOTiSK#2_VpgRhFA|&`!)U<3;jfu+kly>E z7OB)?^>uXm-44a})Kbn(g0m z7A9O>tH6V^Pg6bnaN#gH{r#{IVIomM?i}ja$G6}^@^}PhPMEXJf$hU^7f#LjWo?s& zRz7dco9_Sen~@|xG!zo5k5HD4C;oC}C5`dCzxgfg$jJW|P)}F!&>)s1!dL+li-8Fr zVhB@!6c!g}rM(eF&G8s+D#~okoRFp+**-Rqxo2b>cklUH-;hqQtJa(t-6Mj5W`J(V zymg=3LecaiLS)MpZ}d&WPMSh`d&{nU1sSE=4HD@>Ce%7YHN^x8V;L2LW+1)ckKPy=U(VcMw`@ZWis`?))W zheJ^xlP*(wa!_S$t2<)gw%zGB^#4eM(0|WH3bvEsIK`WS`6%yK;jBPurQa&6HMHW` z;_6}0GP1^Mvid!cxyslFROQwF*QhJQMjYRqHUO@04|fAc_mfIK?_2oL$`#1%aS?+X zA#E$s#a3C^1_3~{_8JbP9&+nr+ic8nWrVpvg@!b)UeK`<5&oTz)39(m@&-OHm#9@p z_c~F5j6)7nkmY^=WeyIzo2t4lOV8lEh>F;QZgc#3A4d1Jc~ z8xndQCsmOQ|D16$bvrHMgcG@F^>50znE!x(X!yI$&xl)(*MAq^L-*iKv?BD~UgWnF zi)bUt$^=iGENVe*oAWNOa-CDzC_vzmQZ?~QwEa&aEx3L)9Ef4cVU4!$y?ErH6^wG; z{AF!4(!6nLjIdyA!y-x9GKfk?+uOP+p%$4QP-thX-s|1z>HGSIcbtpX!j}W{G`cl1 zH1bITCYQe;x6rfAD(xzFa*k3YHyqn1>4_OEG=PQ0mB)Id zCrYVJaPPwyY}D~FSm{2vGO>-*O7k)ExO*BnS|GpA#UTeO$FUN$dPwJKGP9;fz%L|H ze^xWFI-ouI8Bo`cs9&e^<8|8X%LGJD*`?JxRUIf|xc)BH&c}G~Ty;CO=XKr#v{5yY zeK+yD&J5D+%hZa}^Zr>`*|El(x+^cyuTJjR4|tai9t)~30>G6}N!p`v5bQ>A&+-Ko zU(TojfkK{<%cFHK(B0vkkmnuJ68>H``}GB@2NevjkP!ikatXl!(v0F{P_B?B-SR<5 zeI|_Je@JU;$bgM5>9z2^&50mr;Fp+9&#OzuqnFiuon#Bke*Aa{V}FnZNZDZVZyaX= zSYfS9w~aw-l)U^s!w6n%u~&pRMI>9WzKRjBx_yu3h>x{)5)%zFHJx_9u!Qd`BbQJ* z6XNr{s*J>>SsSX+@6OoJW{IIJ6V0=IZNVs5EUstg!&6mhVQd67`l?W?2-gua?XR3I zSg7BJYE}xCUI^xtl`CC6bVE(-?bK5P*TV(s?KD)dvd>bzC{J#mQriHQ4=z3{;L(?0 zyS5fJ;IKGF-Y2}MY{7ERXY{vZzGCq;;>CNZ%HpjvFVXLzk@}nJDHE+pQ+9|>Jv&ys zm)>XJw2Z7Q6xhJ?xpsCzgqt0CS63HbedZ#WI0M#sx%@~T$ePB0T0PaI(nj0E>Jc`) zcM_=(L)SDG5Y7%1w{n?vBmekz~|EAY{k2G=X*d75?Ss_rCDqa;z|+X zt*3B@8cqomEEWiIcAq?P+U8*3W`BSNCJ_lOOD`AWYG9ThS@arKn`I5A6ub0zTD|np z75J7+gZlm)dU0D}633R_>7#@+GnpmI$)aXiWz{I!M@B`5Q*X?+NU73ij4`oD$tfOd zYT6LYvCZO}=<53Th$}dgF=$jBvNF8q`TU4=lvgg>^-u|qW zJ^YO^So#@6Uca*F_ug=!KHAd2#>T{Y2dG8A?aAuRn(R#m!k3`h$?gRo5O4?q?+Kw)MHFo0cy>S7Hz zkh_Ej5bmA$I=x>Exw!kXW>9M>*+A-1Bhbm3Qq52N%_aa?%cgN^PU7Qp1@-2|*W8Fh z!hcnB3R>9K)8VsPdmNqD9J5W0Y!EqUGNcgC+h#$Qbm1v2TW=c|5vvubl|0L|3|=wf z0D+l}&CvsbTH_~CYM>3$Tn|upe7YR~WZZ|AjQv(DrlaB9xpTt(a4rWf61IEV1{;5r zvdFvtB7q*sL+8n z09H|atxi>&rud*g;&~5GH!lpyxMP&=Ye#^8y+wddX+G>&L*|#ABvQl5fRXk|!C1n! zY>BL^@Kx~GghCVoHl&Bnz^)gREAkhuI4dfE7Jtl$cD=a-;Gp7o!^GO{NAl{RWrE_~WLOZX?8HcH^9 z17ieFxSO>zr9B;Ro9_NSt#+zW&AmI$Hvd(bj>w5QB>8{Glo$YxBq&Uf6x8Rd{ zFiw-H#~uw&%b4}$H{Cc9R~APw=emMi2!|C^qqieqc4N#0fpb>G%c&&U_1-K5i07Y2 zb4PGM)9vZ7(wykmMqUc=3zl)*k?QQ3DBIfB6#OaNDHs>Dq^uhsq3CM@kXs%kMS|D8Wl^_70jwY51K!9(4Uiv1K+ z&(4X9ht$YSD-&Ct3zf~RP6-QW4(C+qXDWeL zm9~#5<{~{LtrabS79;T1zk@aI@ud`~>e{-mSx*AW!i(Yuh!yge4S| z)5O`Zf=()(Ybk?JJ<0rjLW7#6xKA&f-}bU?{C;vhrsH;=R_&vEkPJUS(X?2smpv8` zws#ZcQ`VX)4;3UCYgQ^v_Hh}r`Ti3%B~p$C6{;BA?*(1&Em$GYZ$p<2qNvn&gYa65Am{It$U zWIZODrL80#y;n(U;;-VsbK(H>-recvaJQwR%9dvvHyBLp``i8wquY&O<-+qZVWfP4 z_c5JhE?z1P4@|fBUiygZ`PgVO=WgO(C8a))8=}HT@vj&_^t~|8K={17(o9??Pu+m2 z`=RdWmR7;Ro$h{fcJ9ZdMom&3ipv*cu;rm5SuM%3@}%MuJC>;ByoDH)C}QY4^7MY} z(V)lUloD~Vx@;e~apOA^sGjmntF=9?vmr(6i?99Op+m7%B8WPb#?)eVdKxKPH)-$( zil?e{uU&5zmIlHEzO9sw$|8s#Q*F4K$!(P6lg@=&p-EQ4UKLZ|n(M6>^bg^N(Kb7* z@|m+$a1$2gO&fATHKkgd2*T+8Ev z>%<;Nmmnd&mM2=+lt6LA7jKv4Y1{c^N78i-GB^QQrm~ym!2x~T*e>K=i}^HsI5q@n zukPDk|9Lp99lf2|kJ0meYp--DLi>H!6I-MiC=xJu^^wJ+zF>5464#NWN>eu(D5}|2 zCO3m3)ovK-Ehb;UvL`M~*b7C<42jx!abRV;i%(zaLAEGO`<-O?5zH-|qhr7$RrH{q z7z@rhhp`}dhn4xoR{R_D|DLG)$BCLj*hE`cAwhuJh~^z%#1GhwKa=Rq&HZTC?xpMx zq6}`-tTx0rc4osLdx^`@RyWw^_|}J(*g;y-HXh;@v;Z7xrDUUPHFhrgY2yBPwG%ge z%0db8Eb*@$yr5Ko5Y_tCEwC~o1v@Ftk$;1>bvMR8gk{=%5bkx%>YNZ`%9edhlHRzy zs!f~aE5YId*s?z1RXNSgtZ2)EdyqLva!S(4gD23fhfmE)F>&>_MI&<;y|6PT6&l!= z|JzIBYy(n><>rCS-I$n6`sqkXw5rzNJo?Tc0*_W%qlj&%HkbRNT<(JFoN=$5&ChC zlvn>gRCISPP3AvQinvu_pP@}TL#&bG{qX>eIKV;)MIcPPYFf^4Y;_E!!VleH4cf*Z z!KB&8@aU+jeroF^SfhX&i7t0{aK(Lja$|wKJCjARj&Y(*iMKPy2beG%O^xCI$L1~# z(xG!w(#5{DXae6ICjKcRJ<5@o4NO5+9i)ApyT%aIB24&@@-)x z{{;AUXU}L+CLtm-OVwd?QoY_1yYb}yI+13&pICkPNT=ZH(ixyx$%Guz(Hy!R_A~_o zjQ{5iQ2b#3?yzVo=qb~yrg$NSTH&;YEjwnV;DDu~tjj=f>=KSAK}MZRNktCcwRPKQ zoBKPk6X36An{2{cHXcL-+mPKwtN(9>dt@f(8W6t!AoNgWJkwv`&@K(3TO?mQ__2Ttcr5yt7k30wepV)?wVu)mU z;`YngWB3bNZiN97Qa&vQ3u%BNTps`OcKXzjBi-+y2n_iI=LJAN1{-_{J%=Z}*iA~p za81M$HIiww#2O1GrRrgF()EFQq-WnuwAbTMyT<#RxmUgB>#M;@=Xnl;Iu__M%{{e1 zRGCT+TG-FOkq>ygu>6>eTkqB$7;(9Nz3b~hA4&PRZ9FBgO@K?YTlTW?IO3z#fCyZ& zPixz-tYH}mq%TdW<45Cc&MLNAd>mx*d9$s^{-{w5*9(6H3wB7G=-je$D&&wQ{Og`v zFxqnAqXpDJVp%}Jh_m8dZj-II1TRxnf;`+sly5=}0te*h626l-0eQ1ibZsfvhQW#@ zK(4<`c2HOoDBVv}lqful>0u)1ZNla4!1lh|$pG&2+hi^;q@y-T6x}#{RsHRW4U^!2 z!A!uBzwrOmcHIw6Y}-0ElrA8>cR17lqV!?{C`~|+79vF;^dP;8qJ(y+(u;KI3P|WE z9qCH18hQyJz56!j-FyFm``-Mr$z&$8_A1}E)}CQj!axrOBQ8cqkH+;z$8>LyQ9OC5 z_ht%i%FaQ_CF|5tD`qR&(`Deq_)yYh>*CrK2qgHu;L;HuqU|+VSQ~UTU71wO zi7o5fjUKDJapKARLI%ai)CET znjDawBXG_$WAsy!-sIlcxQC<_4a(M7adw!!cl!y6t&%X05nx@+^c3a62S?5vhSea#cjt5;Og zHawP`cr~dIiH~1cz-r~44;BOeOxX==ZU^98GThrvr7DZFW&3Bd_~s{#H(fsmlz)Jj*TTAzdtaruEYtFET1L=E_BsqTm<^3S3Q!PdxIswd7CQwG z?M{m^&{s-PA>h=5g?(U_eBt^3J5s+CYPZ-0c zY&43?eja$4e-;C;7Dt(p)04=`5##BB)p#zg7W~}muR>Hdp6L1F^~uRD2kVFYZx^g| zJd^23vhxa;MTn1%KTdgFKoSyW&z17lnc1s$|4=$UttuiO9-^2OFQJ$Z)zT&DU8Yug z=k9eKnnjSDPuP+4Rnb`VE?rH*XQ&#-mpgDB4GqzpWE<;SI8*Z$JP&>nq$yA5c+5p( zZgbE*dqsf~yqjJkxwvk5v?8!&*qw?Ed2%_ zqiYRpi$0Wbl&A8m{6g7S7h^m>zJHX`k&JxIB<>=X^rrY76_qk)yGF{Ru&-Om4%U%>5r;4qDLAQ9yj@k3YA>z+uza5 zHosh6fctpcbr>3uJtfJmj5F%ZrR$offMplz-2NS*K}3+O#NM2lmls~w69LsE4Xg7Z zIs$iQRpRVKMeARq{&IHU>c25BE0T$+dRu2dW>1kz5V}C-6sa~O5ebbXNi%Ykl@s@S zq(Y_M^X!+&Ww`PI!<$?i*epOX0Poy~HF z{=S}(p=2<#tY)o3H6U_FsBb6iFTs8#1g+-vGgw=CcMC(od3~78aAN0wA{U+4P$wh5+>C_!d)^-?C<8Ct}O zxrp`v*nP2e9uI*)kn+GHhR?-*XJKPTR2-jT)Sj5Jd8=hl^zINPiStWDOU1btM4!DH%Wk{RzFr0JP5sk?X} zsb^Zp@}F1_(VB~0OQ_k&6#?!>t!g|5Xg>7 zG4Ku&q^X#so6iP3%N=P`NNrz(h*4@X0qT)R=RU_K*XvL zB`9<){2sV(7?!1Y?aQCPxq0}pyrCYn-g2_{GJCC;Fo}t*Hz5#=0pB2G`%gR5?*+^j z-U!Tpn(HWn8jKLdn|Ew4M+h^R&E@E(7zAJk0vQC>y&V594tU_K{gVbbXGAw+qgA=PD)uRegc9`?P zKf?V?2;yeClnNpZa*fMz1nr2}(5cLG`8F zrKhJiC#R;Rb)Idg?JPIOIw3qfJXXpEmVI~o?rCSpuDaF|5feK%pC6!pPkw4pReJAj=sOS+4g+d7l3Awww7iguY$orp= z2OhN!{%4AHbzgTyX((TR2)WAKzrOD@QL(r&Q8~uQM!W~~a=O1xdk{V0KsICc*-roY z^Tm(mtr=dp(D?Xx^+e&zcGj7GJKgr>jR(cZ^EH7Kzw)E?$qnHO$53*BkE2?+^z?MKt3URcl6xoaz&yV+W~b&iaVR{QMR>Fak!u`1Z~r{(5y z>FcXMdSn)OzK_GIic0LJez{}gS=g?10rH4>zO>zMiP z>(|d*gd@+C$$&?rP=#ab%(7nFKrN9foD@ca37xEgvO+?og@uI;4W{6j@A;akPxSqd zeuZo`{|V@qqTuG{7BZ^fl9M|hF4Q9>C3Q6%?%cmP-MV=-i2cD^LDL#he*RF*9k};O zR!F`^GDquK`2}TR(;7t>r|RD%Q}V70UE1=;FnNX>91k~G z{~X<I#eVB4CvtF8*urnG$w|<*^z_#|F+QVmegYg3!E1hg{vCwD)13z-wY`ZP{p@S=*%+#v zt^h|%b|~fs-{48tK4WNT=oHpj!ENQSzrX*ZM~?ymE`Z&LiHMY2g%NcyxyHxcLatb& zh-lv{033>oivDJiJDIS_-&-t62bV&^73->^F#}_ zva;gF`q-_5MKr@5^#6K=VX(!&CBEtpLM@J0n}Ou*(a}-LKO49jK*Q6oH(BFbWm(86 z+!a#Bov>6fW9yBzm7AKb48HBT#lP2D@l_in}n!JzCv*de*oTB z7r`Po`ApPHHbcmyx?#6phEdXiPTK8*tg5q(4KIaJ>F7rh?1TgC&RWbT#fy)rl8y|L z4&zaQXY*%gXCMS(V`BmKmw;&i65O#=;u_7-OqE3U19YLUW=6jO&VmEZ2U~EH*3;Ep zTU(o)ni@!x(la*p>16iof@0Kt7GhLsM9fTebuA=Qn|ITi4`H z)u;qUau(U6Wzfd{cscVAa713@Bt@cxRabN;i?73cN2CcBT;9ES+E$eA67qo327`v6 z)MFrK&3y5n^YeMa+r@y&0L0(hdmJp)_Qce!wT=d)4h7(#k9l0-iN*3OZ^Qhmd-)j2Uifuk@+yZjmcRP}#Tz3LK zIgC#uq{PKufF^sCL)rm5agTj@vO}qOtE;LUrfbliu zg%S08>*x#tLIcqTA`&-0znDZ9+Oz0dYJ%My|6~c<1O56eM@x(V;UR7UFNdcZdj!sTKf+5O}sP}<;PCI!X?k03KH$+B8s+Fh$ zfX>Uy(<-Pu{j>%P1_W1Hs+m#e)tdx0C!axgGBe(D5)={XtSqhvR2kAA$CfVb9)_u? ztX!Ni#1v;`{p#k;bZ~O&@9Rrf2)qCpRee;bXow*uoI@RWNGu&pF72lA&GIo5UEK=b zLnn6F_ybK%O;~(ts=!mhg{39RAwVchk|kAD@fe@!5a!Z_?Cs4lg~T4=%8H6;!zlTq zpV!#if(fY>Ziuw733F5!mx`s8*$li;?bxv(%bY0F3FSK=zI7U{LAja)|@u% z+D)=}<lba)q;K%q9qB7FGbpR$|EutK$nc-w@pbcf0O62iKHMV4decAFa87Q+yet zz+Zp$r^_t6NiV{od<3}3=Dc4}&B0fUn0f~xh64Zl-7Rskruaw4M5XLx$r?>7z(*HLyB1)4^k z?5)D8%v;}rDRz0p1s-TrL+8@*i^l7mSyj+FgHdpZM6gIlzA$htSu*=Qvqq*-3VZ z69&clWjOcyOvJRpB#5LGj4-mP!FDLSx*8BgLTajsjt<4G>i~TXN(?F9snR1wpd3Yo zh2A^eyi-$C^p=3}Ku%=~`0ulwI@<8J)j z!3a{=+sa8AJOw`{hKF;Din94Ct@~2Mo(X8m>mo#sV?()0=K4R4L+%Qt%01m>5tJNbl-*}V1ufG1fd=x<2Oj+-pqu=wbZ{cWDfCn*K&`8k` zzQ4oWcxbX#v`8$jAN;$DyZc{PZU24U2Y$h&$JW^y6h)14#Gq_;2YUuRrI^S%#y4l` zFG)O-F)=#&*=J*BvQD6)S+99gsg6Zgx&2{15FZs24#~;MfXb&UZM4Unb&<#cQ1d#@ zH8r08!KHi7#zYxBeL5GMc?$x`ewl^kg+R8E@d*jQ60LZTo_Z(jDKJ5$&A`Rk?!aOC~Bt*Gd)K-1|4N%l~u3BqOE?!>M*+B{Xk_I^hVnGV(_&xX4)m3wo`^_g<0f4+dQX zgKs~&2EmFBKZihSj<+ZOss8_|`rE2N$}*dAxol(s7BSciZn4)n%K|<1WfFpY-~ZV+ zJUkriNO=7!AZ`4+ZXi$Tr99cDc6LQGPQ2Oo=KRFzNZwWxvu6aHtbY6UZ8jCGeoV(+ zp8E~m&#RH72xIl%8^VHg1;hZhs>-b=LFf=bRv5K_3kwi@kT`LN;N{9?P5_dXyONSD zaz1+iauKY?O@7DO@Nge{3kbwTprwo!f(bZ3*+1R;p`8gTPYOTd(6~DU55e7Cg9ixi8r%W|5ANCo|g8Q=Bd7Jo$tYek!^KygRCy+ z^vliq>Mwy7Z%&emaY5%DB3ZD+Yg0g=^;|6C|2_mHl6{4H{S*$uw0M0FK=?oM#o+7n z$b%Cl@n;TtpySo+WbJ*V z*l}w?BnL~#oCLgw{c40)s44@+)b%{`5X_^)giv{P(t(lEk+5+p z$erlMZSqEMB9N;JelC#yl7=*@Ni?u<>;?(fEKkydIX?5i3ysqg?!9Pr&nZ`D7GFh=SgKgh73M$9VJq{fpT7UZhk$SWygE za-GwiEbVPy-P6Ihi0@%V!4g9uLhTcUc&#_{o4krn&L3I}eowT)qfA`HFYT^=2o|pa z8qtA0aC3Ki6BQhuN7v^o{EX`f`4^v|K!ZJVtAd8{KCEZmsR@(#9ndP+#O&Vh>n2;H(dYy{sKTG{#BimoJx%v3`roM`Y?s{g7Ng}8)BO?^^XPyM zD@JsAvnmg7I}L4%8K^Gr8UQQBDK3VT3V24rZ3S<84z*XOv|~;!)8P}TDvCjb0~Yz~ zn16(g{rL9vgE%Pi5d^}7p16su3H(~H*}r1*!f%tW>R=GK_~{aKS%w7y6(AyVf&vm- z`Pf{1)yfb5GPhDP?K^lsbFts6wrtNsV>P&mEo5fy|#u z_NPOOZo^b zPv9F+>d0#orNx4v_)ZyKQhT-_(C763z6!ed+nQ@>2ecm=3`+p|NN}!E7P|y45wrh) zzKT{-P?;icuTxTx`>wHF_*!Tu>)b;A<)$|R21dqBQd*$D0b68Wv$MEu7lA18Bz$!>XDD(tqb4|k1!3plP@sW!c6MGLFKJci zxb7FG^z+ESj?um-jL;Hq*0}qcZ)1D=>S?WJ`Bj>E_PXcuym3t1PP#P;+}nwZ9G~+c zLi^UURqs;`EiG1qR^IV9ughB+8FO#J_+n>_kjKu(-u}iz@N2_Doh4QeTT)U|=ph=DMgwUJ`dxdVJ-P8Tm>v{lz0(%sKYo&mfp<#|}p{$}}5#8`9H#0MHa4eQ0 zZ&!v;jKKX~{y@%atOy|c1ta9G=Y3p1XW(6N<8SD9w{2`}oY1(=%OWHsBqHM9y@?bO zh_S&O^%?>L$YMWEFn7E>ojwV-+b(fKq%AEiZ|(aoTFDTm5Jza;cRjOB7cAOreLQZ0 zwz^5yb_2t&6K9?g{VmvH)>M9xQSC61(??a>ZT(f-vB?`C!NZ{Cv_# zk>=9rfjdZc0PGha7~k!RyvQK%owiUWz%-&TCb*`gZrJ_4z)GPvj1jS(Dy*yuaq!!+W>hy;Xw{LoxFS*NuK zq5)6Fp9LPB(s8})*x?b?)z!F$K8}ZfDuQE;qxp8q$}5LQN24wk)EP9u9H5wiO@$vx zvW1%E-(Q1#&pL*LO4S@Kkcu6Mb`^dA&D;ufZ&_g)IdI`0da}KynFP|RU5+<8-gimL zrrz!^)gD+DZ3e7;ZzX|-o#;)O)p}xCy#B`ZKC+LZ&t3xPw!)9X|Js9Qo!Xw8n=5eI z>g?iD_v_ccq71vTk`iebabV~`s)4Xxc0hi(S#e+6+uIwW&1vYik=xVSSmc@=MzL^m-c=BI4z8jpL>yWUy&Bo3JFLcFPX^72bq%P)#}`Ok4mf zlIkCCQf6jmilHB0yXfnGCykO!xEs5^zD_re1`GV1ngOh6fwrqZx(TGCN7Q zOfC-wh%f>4Ky<}$cCUA}Bdk^MQKt&VXe85H{@=@fXFaEeT56JU}e(O1P9sI4h1uyrEYtuwANJL)$|u-!PlBYq^rU_OKKnfWpN38 z`VI$@5e1s2yRKJ!Vj3&d$#mmjKCuQL_9#5N<&vc}M;FXH1`A3R1tLUmGIx|Ul%JsE z8(YSL$Mf0ADjDI?uLThz{O`JguSr&92~@370hKf*1nn={G{{?sax6#zVe%vY>)n6O zsh(geXl}Vv%uIV}@dAP^oSVe#H__TqL7gaHVF}0@=pfmQjBzUJKT!RWjRg6axw6Sc zmp}3OrHr)?oZxLjes+x8fe}3(rRx5>h1(7E!M%+9>NM%1YH5xCj^X+pem@T*E)^9+ zc&Yu*25$lWj$ct{dC~}RDloJ=+cl)~MPv6V zHtx_ZV48-giU)4kTj+ykW%v`aST`+CZY7kJ8iib$fGMH6OG0Vsr^54_rKI5 zEpULOaRG=HP%@-Kf0Y~BSUhaf-@6_Cpg$hF#L2Jk7!C{i*!&9wQrmLj7a~!rTU8MJ zgn8i9ly}>3MveeO-fP4C8l|I7okNYNZ~^|J%S2xG9c!bG>Ph5D125)5rp5q#D}L-u zI})?~5dK#M+hCYwCfF~+6}PAd6}tX|fv98@34l|HoY ziH;Wn5rty5xa^;Kv>Iw6g+QDZI!3nRN49H}Q@G3sLXAAKX@dv1o#_9E(y_iDa9q8> zNt36M@>M@F!tDXmCk@k?fkxf8B@Lker2YKd(WU{YQ9q* zn03FJo|8dUf29Zt;7yqKBnJghfy*@fvklL8@2JtTixCQwh(A@}$+$?ADAGJ=xo*>Q zUEz!?eYo5Yt$T<>-XsMOeBI}F1R%0d7xo2@Ye6w4rRh_H_RH=lmo>8qZP`Ao!oEXX z4F=0^*nA*RFX`(t-O2n?fACc1#5gcFPwbWrV0hepm%+?8pzc?$@i|&HZX{YxLD2;a zP!^6_7N-A%gHeb70gWJvfY*((k14Kt>T>NNNRVz&0L90?wR#6i9s9?O4q|hqAfLFo z7FnEy9vZdAOa^Bf$$RIy7!+zI%+G^BWRl9=Z-7M6N>^F7=I`vRTa|(DuS~WDRk=9N z@@_~CLVX01&OQWSC2SH(t~b7Hf<~T$m=7-pwA2pb&Ih}KN5&Roj?EQDu()WiDnGGO9}k_ zGeiLAZoJaQPOy+Zw~{2W&LH{oKM^e&TK(jt_q(w`SJ7U%ocxrGWocDPie+oa`0C8v zXMSJtn&-`f;cxp~AkZih-Zs!tS1mJhlC1bg7o|0S`5l%n%jE#* z$eU5cn>yEflZma)aKQ)+h}BWF#?=EBCU&Pw>jySoK5vp6W%HX99BaYNHvxRejFX_+ zNsJ!hr6pXGpckE=8O(pS9gz{p2(ph(P}{rIR(uDFi+X8O|9Yq_bDLGU^5Us5sg?q) zStf1-lNbyVM}6(HMbOYF!k2%x!X#X*JVpJqBmw(}7i zHw}FdixvkGmlNp;UheO@(2R}|V-p23 zm%p8UzWud4g5$qON_`=b3R?tEGh|RaFk_#iyZP~?BMoqxVFPKz8RfRt>b=4)8j`O+ zPS~;QlANA=GZzG5P`-|9E@nM{l&w0DAINleN@s_1hr@9X>b}_`JlQCb(!%K)`_at6 zfyfa5yOtx$vP?NEd*VY;9{^NJl&5FPqAvd~QMF=U?&2^arjx|f=zU*#U*!NI(*&01 zCy}Y@V%oMEMSQ@;~ zsj;&v>tN@%ohV^IKis?=4A%S7o>LCdl%}gHm|~m-o$)Edm2NJXSKD=OW*d>O>%m-{ zIctk|X+xQNzYA!kN|);j%Jj;~gXQTqMQEr!dp1H4Nvl17C=2Y-tE%GlErZy4a=#OI z9#Q3&)FY2fDDnudtTaN+a1qFZN9Qd3(lV~fTlJ_F9EB5N$=xJBU0=4L3fNwsN#UtH zcAwmSvF{o4^KGe)l%Xn}q=$m40YQwG@X!8$CEM4WRp%`eWr|Rse&U7R>#lXvQES+m% zVId*MwPnQ~AS!@Bz{Ab0siV{EvOk^kbY#x1r;*uK$KEWC)yxVn9+|akZ-4BO?;m@m zdva7Oc=yr#=4E6Itypv^s_)xIS?Cif2|G{rZ`k$kUvsbWcP3IaS*I)u$&@_ek*N`tLuSNY_*&SN4Sns;8udw7xxRp2K<1=YsU+(}AO09%_@QO`Z(q z-6BF`VvQrg`2`_zZxWu-n%x<0ZlY?Y^}-=XF*Or?*Ssnd4nG12 zK?SIYmo}R&{A<29EBE*J9|;AYE}_TA#~KnFFb|i1&V-iM+2r6!qXoFntMjG+jR7D2PENC4jue> z1s9K;-b02t4=$#^%Uzx^R=fUt1R{wjw}pGl3pd;4i_?=HQbvX9_PG)+>toDNtD8kZ z|H)^GYUx6LXsVlrTan^$3IV7S_y48Jz(iZDHrgB7+Ey4;bv&H3v>lE$H8lZ>!YQB; zy{x@F-_(q-j0_Hj8xK17z5FybpXK&~HR|5Xqyv^1Fnez=kgza6MRD@!bD@Pr;v&tI zQ6?mCI-6a^VQk<8r`*F)cp-|+R=ODzbu>4*9{>GydU$%eXONWkd>&YnsLUaiw}Cv8 z8if9V{{gB}y9T?+j6jnt7e7)kn-qxMrz9zFs67CO*I%OiQ-0bo)+jR;UoAM(PFi3k zK=Tk(iv#o~A9z(&DHW=gsxxGa(cC|jKaTONVL*~u4Nr6{;*ydyw6(Q?!3U^(mg^tw zvq%p+3~?u4wZp9=&t)L^0n|x-Gy=J0EqcMu(r)Pl>PR8M^5E*Xx*~D+Eejo&N5IC- zyCm2t(9lFdTd%yMO7XwbCwaZurxc77V$i=mQzr4?V@ z3gcCRGo*^0gUp{97fxn=g#&Ycsu>A0mVEv4a1oj+>Yw`F72<{xoWp=>hvZ)x0{`g) zDwaJlxFo%)zCH=VY2GMI!DIO${6;&x(w18{s0ZKVts;1h2roicu=-;C-=1TOwJ*Ru z!;>~&s`3v<+fbv}Xp6#bHTQ$X6rja;s>T0AS+B1i#Un0;5YCpB( zd#3}-s{TQD*^iZ4MVxA@Xs6-5n`91vl)$;c#&(XpM8UB`hfuG!Y>W*TI99CzVf_T#8RXiK%82);s#|B*Shw(E~@9$8pfZf{lF#-+$kOgzL=#2%5g<5Dq zV!jjC9O;usXgl3~p3D_2E=^j^nIcC(cZC&*xzBO6v6b4jl({bn=C^xP&KZAmk+f31 zhJRE()a__r=Wbvd<+oD1Vt3=`DmMtQ9Gxfk%Zwp$l`USD!4+{1=&i6jFHt*u)D+!1 zjR*%mATx!SYD2;$IjWa6%V#km6i@B{bj^f(KX@&DLI%5e;o-}N>LqvP@H3D;g$VVM zdbE()xbwzDTgm+uKdxgvj*b~PdRQU(8Vf0WC1ct{UVIYoA=9RpGBV8y4H(|WUu8Xw zo7dy(z*e#%A>UA~BMQ=Xr%hDaM|sJ0@X2q?ir40`{R8whVws~|HZnh_cUmbiK@f(O; z5ih6y2$#O$9hi2zP^M|+EXt&(5s%Km+^sZFlVm6wr0nyd_hCmpSIOD&ZBP7@M` z5kZs>ZP$xUpifbvy=9YHz%Ra`PxzL{dxxr3Sa|LHND3cHTihRJIqT0nnvdRIz!BBj zk!6(sJaOP%V&AavGAS~1WYnLd5I1Bet<*x@Lx+CfghPJWmTP7ZuJRA_Ns|gQD)V!W zn8&M>3>Vb(rFx!LW7&&TMlSO2Mm|7d_wyQ*x6V9lxCzO{%V)h(dZ>HX9oSH?EKcze z`HbfUJ8E+LSNpcWyP&! zZo@o6)i0z4RJX-!FTiR9pPDM%Yw~^>deeM zG`Z;~3W3A)Os2IH#&k9u$898unJQjgCY)E_lJs{PA-@;R&v9+f=eVvoe#P5g%@opT zS=R1x>loN%d^)x>L8SQjQ-@av^z~LUWEo>SZ3SuZ@f10#N&Ya}OgK$?Clxk{7=Q>{ zu{^o&5-;%TgNAX*t65nwoM|CgaAzPg6n@z$d{-!Sy1H~&yT_#{saBC4EF>*2ncy)nmKVl7oH77yNaGF1MlPRNlzpOO73b-Bp^AKc68h-dYKmQ590;;8g zfbNV{f&~YNvHw#GK)A}J`9t-|`>Y!-?4kq5nzV;%#DpV+CL88{xx94-ZO( z=2t~o6ZF%Q9Q_?d8&vVn>v7GBI+jI#^&P!Ldt)nz=+YcRIpSi4$n6ui?#xoWrxNWF zmyK$33>&MKb|qKeGd_Huz4kfnl!|1a?I@1Qd)C%J%lH$W@&M;!jz3Iyu$cK%BxxMk zV2V(faloFiR@+liZV)D0DXm|(aCp0ee$boEL9Az6=KdnzQP^_()+|Misz5%UO$e(404h z3>Kf3Z=9fiEHUBAD;0Y4C+41!!rr|_sl2pGyPDHjH7h2xC@078JR@*9MoM0Rg@@dv zUDCH<3ZsG{TqU_BzhbkZEBB0?*D0czZRPRuahhox92tGW$YSBtv`TocHlSLh@>1T+ z9_5GEWz)EDYI(T)rP@o0!2$xPDovCx7&A$ z#2yw*8IxF9>4XG?G_7~rg*nnr?GBfZommOn^wV1q3=rdYUq{D%*>L~> zj~!V8?l?F&4fXXOP!cjS9wH4NDW-Boy8+&G;}y_FB!=Scrf=L6(G#ebego(`!n%4_ zQ-gZ|*zrC>qh$p&r(!}?`@ylHOsjS-=MqbP4VK2>;g}xnikze8XqFD3u_8T>)wR3( zAi3L%nFHN(=i-04UBCbuyU!{9MvuqptMAD-j9zHhX)bY*wQP>c`@_QY@{RnsG`qbG zzP6L8aO2?U=Nk4l?NHHd{XHNvSl=}M54Sh6ZN89RxFW&5@|&OX zidLVhk2n&xG z2N_r3$rk7-YtG*eo=J42{2G=WUZ9+x4$&Fd7jWXf3VCpJ@4Ub8E+WZ|-R=OhdLW}f84>cN=jxxrQ)rxsIsl;+q^-|bP z(Os`^o235z?FjpbAO=|mdpDE2(%kfT{&xQIR@jh&9Npd3zuCg*5e6o8X)@&P=gPw` z^RY{HEmYjI+&DmVYARDuw0YFB@ zu>q;3NfD>N%#wF$^j%CMxUKbvOLudrrsPW{+e=T`a4A>&pe6%^+gN4F<>+8gi|c63 zia7F8Lns^HMUkt!CK~kgjKKE`Z7gC#xEN}mH}j4c@BdEh&8z z8Cs2B`q-?C-favI*C^qWKK#}Vg*@|T*ggZvZ+9?DsI?Sx| zp+n&tKHqnGXA<|pT6?B7q=i(zrijVi*{SJy;R*vi3T7i){q*aT{o4&qY$2Wp?ET2A zWfpuAru5hh>Dk4aSw_+=EVKgJ!W9p=#tIT4^^HBtD4-(y=x0RO0LPK~MW3Xafwdpv zkZ|`QM%~g+zihQ?4?o_pq{phETE--SLu~AM7%eUCY5VJP#80_vT9A?3Yi8iRk}0-M z@&XDep_dcNH>_}~TnPm1Mf6+yNPP%|&3HpCfg|6(bcEe07_FX0A{8y%QwrB4MsPL> zdQ|w-$Uo~Tbx48F)rZxlRn5%?Vk=`irg?a?g|Hy75Fkov zoh-Kaxomv$NDYLdl-}Ur-ugyRY*kNh7^}wTUug@G6!mSB2+YTH-{f%lfXU4X&6TUL zBVv)+DI%rFw$3V7J=czJ9mjv2CjSY2L_G`X&`kSBe8hJpS zGq3)sleT8R*hR#nAMsXMBIO$|m*4N!H$sa#<>oNH0=l?JN!cd{3w*mI#fP)J;WeBs zg_oxaB7bvTscW7!T%Q)-=Y}jxLx10g{~n=2ZH`Ee4G-F(jxX=SW-C55R5m;5yP9tP_s6xGF?eUG zzG->H?Z~sW{N`_b0Ubt-?WmjRQ~R5k4p_#hhzS|Ih>* zw>-IQh3tgBF{=DOfFYdb3LsD&mdD}R;vi=Nz-r?CyO&ttI-AsB9K%UmJMFrxa>baO zWy=Xfzb{hPiBH$xTYF{CU~OETF`}I82u$rL5*RZEV%CXV~n=U z4`3dxwV2x4$f`bVp0>|_4ErDfhku>$9uZ7Q3?Qw>FAHsb?`HWcB8p}?vq;K#Mg)R- z$Xi<9c7lQV3ivj?<#cMXQOTy06jF;yH3|HPie?^*3gMo*ur_le8rNjVVPduuacVmJ zouB;f8{})n`9opG06*vb&=2u%EYMK34Z&b`ivYZjgaRN0i?5Pm zAvGWa)a zB6qE>-dpKJst$G#nJ}=W^3~#lVoF=+IE3uZq=^|L&{5Dj1g)-#n|!3K2dK62Sw~qF zWc2d#Q>LtUQXWffR{e@c`Y$NR0Z}Ll&LELlv%JhD{ouF-K9$t#mknX9En#ij49~x* zykQBBABc_(s!eW2ckiwq1dZfrM7X`a!)#hg#QRmPyf=9p5xXrT;}{A5`J}U63xu%q zZF+-@;~zs^`fSs}S(Makm}^<$SE?-4ZLi%au1Ae=y)sbmIBhb*a<;hpB|QjCT=8** z`+4p~D?Qz8NzbyRqKXFp@$go`lI~)V$%Iw9pQq?P@NA#jUB_d)8%wS$Q3Dd>Rys8H zBa9x!l2Ku3>h-Zvq(9hdSqT{JP;x6{$Blj5g|sf@c_og5?Q#l>ChswKVF;4t*0aHIB~P#~C>9?O>j>%MrD6Pi^P2yfV!WR)jui~Qum{WYBww$t3WS(D*7|n4KmZ7P25kj zJ8|zx=~ylmNO@8rH`I?Ye7)c#_ps0$I%YJUz0&*79$UNL$5?WZzQ0d?l6(34&_fA4 zaE?E--mO>)Bi>X!MD;EMWfPuTY9!b80hsMM#vRfm!P*ESBEgrPzyHi>oMXb`&K~2b zp0N2A1`6+4*|pWUm00t04o)`Fv%ab2&bGGv@@a=_qyzQBQr{Dcy~8jB+*h;O_Yk1Y zQ#0fCU?`lI2rblTdYZ}&F?EwSvJZlwQmQVaS|0yD+}eUuHH?L^osaF(LQ5(C;$u8j zaS2mlH<^|R!!~0=Lgn~4QgL<{HNq8I@%LTl#9^ljn(5$%vF*y`_DIB;9R(CObAyZF zo{{eG$*P+$Ns{A(1z$FmKSL(v>`-86M%CzBgt8N?4>B?2am>;bD8tq)K~Q$A*UD38U*SPhg2@iJ@$9To(5&o zU3;Y(po$a#p}74P3dVRR zL7Wi(xYXS`RNpa7XPRgy8g2>WYbd29zQ92qj2!|v0^E(eBZaf@W;o+)S7^KY-iJ?a zXrBHSy+g=3Ol6l3-KyX3S2qISxk2K@Kypb%%|71Gh!s-m|F!{C7=g(*S@nI1hfrpFFnI={m8pw7hdM3m;{Z4>iYgW^%o)Iv@EX`tsPqhg zF^4|wZV!~;8dB!(hA>#c2k@qTyNU#{30!iF7U%B(Q{PTp8v>QJ8Rk{-`OUH1@`vQ; zNZ6&4i#(Vu(8F$}9TDg}Jm%C(D$`9}m@ZTh$6#}Ph#edei%o-;o%8EpICA4{)=HP* zxzk!FszL?zlH2m^pERZv>{1O;yQfw%N}*d)I8+5zbgr$_y1KelP4r6-K`39|^9Mox zw^DIHU6exZIMON+UNlgmi$Mg~?_~D`S(S#3b$6BTiv~>_cXn6xKVeiLy)j(sx1ltO z(KUv3JpMZfh~n+&mBa*g!k5=Ih=8cv(!#d(1K}wvts?Ww+%IdV8W`*d9}zSEniltj zg)i&8>9N#aD-*RGRTE>HQL;Ba8|QiH(DJ$) zBVDsjv3^q8N#pUQK^UdDOayPmAt4Au0>>ZvA)nvo%{Ej zPZ$Ubw(duEmM@2$lc9ac0+8pUFfV|FJ)&%e;CK1Onh)=!Y1%}as;J5lr(NLbm3YHiQBl`=>n|h! zpdP;G!4#asi?*j-bG$XWoE)FMz0655tkP1$HBi7F1Q8x6SHc@Goc}fP{_n&iaH)`O zmdcB=#GuCU*{%fSQA67$Bren~G{s3j(P%W%!KF{>d#Hk3+2ylclef9UZDoVvs$tRZ zffL^1$~YvI??(g3ZCFS}GA&EM=9>dHS%63{m=V_jIvZ`aM zffRxxJaZ;5lT3%B%%cEnDE9sq z`>7MYM`vubvojB76PvVhA}`;!puAV>976%%zi96&=sa@m|F&;* z??qQc|5#v_Kp@vnsEKtzk_(hKxhzZ=TCLP`xL<|qXfkVnJVX3WSW;TVz@Bl5Rx{@K zs8Uo9hE>}VXX6cM5a}N$?rSj%OB6a^aS(F{d5n!=$m`vtf}lf@TZH9Tv(Myfv&%}7 z3g~Vw9eM`Mep8TBN?#JQuA7#?)-#yzUOn+;@q1ho_pWl@Kk(0kP`v&0HvzqoJEOu+ zk-3}keOdI=uQLFfJfT@%E`DivwsqJ8Py=A=Nlzb|vU^W*?O>_B&Ey7s^Z^Pz0xTBs z4p``7$b5{dvjJqg5ymog2)KIx?2(r&Yg^uR-AFdSBN)@ddD&n5?XalkL7Wj^1AwL# zTjEXPQsCGLxd;~liLBCy#-Nh)pD-w|&r<5sXOX`F+UsZ;ZQ}WM$QS0tfE)e3H^NpR zBdEQ%|00Elv($2N>0-U2YyG1Zc5Awx9mhx<-S!0F)LeZwW&4s3ojo?nrlW6ft61?T zmg@9dqIh2_pR@rMvr>nk_I6!hS?kj@l~-KsYNu`P+F7Nye_-9M?i3?R;&gTP18d&A z`F#IcJ2N$dC7C7WUN@pd56NcA!hIh5hKjbk5~djsTZKpyT)+qxK{GzHkJ>!7IUKy- zdAK+rXj^bDf;dJ`{W}P(DM||SZ!KZxiCV%Kc-K)iRX()u)mp&&cq4c_4us`rC*`lP z8R<)-L^rByoe3+s8JRZqaD*U|xbJ3>Yh_76bdW)~ggfsH=I*0349NS4$5I!ApHk}F z{Q8y3zK~G7orP85HK`M3244QY7j?>rSdj@<)Qc}8z|KkfKDNDfI{akzFiq_3w=ymK zwj~-Q{Yq5AiyY45KW(w>77%7<8Dc)~)$cysD+u@17Za$`#(>YREM!y$g(rnb%Z#v0|ks| z4@c!6C7T=wbAz{b!Pctt%q(*vp;AvBe&;dH|F&h*z3lvkOttZ$$ZT~VSbnxVk?ilC z3296Y?9HVP}>!dT!!?+J=~$#(sIM z^Ul_8YsfZBpfpQ~JxZO~mexKwO+`C`TjGH8!<-mcwn8;D}Ox9c zpog>b(o&EGB`OAS$?MK)2I8r`XvXg(s~IV(yAEj~U%9L1Mn+r=i0099ZO;xuHnSUX z^Jp4Hif?!A2dVvPX9)>|mbK$3OJN|wSP8s*qU zY*AaXhc=(4V`4g3P*)Q(NQD8bw8uh~yNOCnQU$2zGf2vkL0A|6@E8c_0ryiFSp|G5 zkK515b50a=B+AgsQ=|)j+}~%0aXPN9*S&>jFiBP;@dxGCT=uDx%lxf^^AmF29<%F! zt9j{16YP+8yE-WyZb83+DW;_MK~mLG5dq(1o+L(!H31m;_fLmPl4@I8o=pI5v0E(3 z%S#?_7vRLSDOLtr4-{FnM=nq@Jv1#W9yl>tmO;w-K5%I;ig}@80NX8quWR_Mv9Y0p z&q2DeMz;Q-I`bzMMb#MUNmdB5CfCu+O+m1#7?hQXj@a2g7rr#jGvm9{Yd|5r*m?1rEPQMn%-%_R6FfOOD{Gz z)k}Z)_+69I)nz&)DMss{+pZf=Rv#~g_<%^!9%c+-gOs0t?(*{CT323+jwDsfx0H6hM)1w9+>nxfPXUYt*WdF5@7| zU<^&L`w}rAqVk79?OPE46Ilh_+-;}l*4jCEGmBzh*yuYAOYNto!wkJ9FqlH}*eLBqWh$7N-EwE39sh2*i{-~HEQtqjq%Q*}HAO#gCIp?FU^{A^dC^f!jyO z-=Z`$j&zY-%%&2YnPPX@fT0+!hFS_py27aHnxb*EvXMRb*_cIF`9(i$=lmuC6Yu2M z(7t{NorVQq*`dps-Vx^mjA~NaCr8bp_CCqq$C#uL;?!nl7t&geqmQ}08y`A@(Xd92 z>jexB2yf*)_o>tT4#Xgp0dNo%s;!Aj#qGdIc4&_+2$O_c{ic!asfg_7#??Tx_bQTu zwSG<*UrR%^TiL-|~$;9-c<-nIGy5bU%q_K=efrq4G6ko0(0h)`Z?B@xXm@5Cg zmKzjf9bR9;H#@+IOvk>9$8;|1_S=ofhK7cZghy)~IT(2n*BY*=wUXK=V?W%l7ChFI zp1+EKv3r>dZas=?9v|=fCul3G01GSTBBF8-={L^miCY!n2QL0h81f6QgB$`>@}*Et zUdrFbr}`J<_0%-U-oW{UHJXcExiZylr?}XQL&AWUe4u)2S8J-XD`;x%PPF9VcV4`JcKKLLK`-qOfafyN2b@2$NYBP~lPj7MVW z0QO-6f993OJ0Kd@33HyxJ=_MsvL}OS742V<>WHFKR+d(BR&NOUetvuc2_rL_I-0k& z-^m@mNa7w_;O+Cj!49dh6_S|rBHaDD6jM_o;lg$z{FNCHzOS+m-Mf;Ben}jGE6~f$8b#JgXkYz*)iF9DiYQ zli4y2R$%8CKA)%Px45l%Y<_oZ@g0aJcC^++sx?sk>k4%oA}_WdePfS~sxY2C;LBs? zUDm=gSzD}_{RK}`;!>PYe&@+3>J%-{NVU2}Q?f(Hz|BG}jxy`shWS~>i@$ltJFL)&sZ%m7lH^Jr_pa@hv5**H;QY?h3D{141pJc0ERaeq8FDG(}ZVyQMb)Um0lJ zF>af-m)Gjx`vORH?A#O(g63FtQu8l64qlc5Tg!VYe@d#a-QxX5EEJ#s~Q<}VlnifUT zEpfQk;HH-vmrc~)m-kVa~mMpo5UfV^2a}(A2bW( z+FXz$Hf>vM)k+2dAJs=+SgsU^6n!tOJl-3XXwQ{lJ1p2b$Gu5M0fY~phQLWcm%sk9 z*b0WJanJG#t&I%0f@<8S=J@^lJm-W)3$c`VYj~-D&aJ9-uJRMNfN2S~-~dN(UC4z- z8!UKko!?`RG)L=YQzZyZ&$ju^%uKMEMO(WxKQAwJSUhBRz*UZ_D9@1YV!s>8297+0 z?9rc0JR*#wj}hIJ(tnO6x2=!X2PBi>`%>>!lZH&gHQu{Vo(=|6Ul}o<{jLFr)DZX1 zHv!~~r1@jBI4|#ug+)nyz3XG#^0HpNj=rw$2wT+o-)-rju8#=&r>9EtiAKhFp{SdR ziEL-^_QB?Ok|+!H?VL3Af9cS>(UwlTS*l5#tGc+7O@|hKw*Ay+qMe*qLLTk?#bHYp$-|^JkKoB$LeCbI(3|uk~n+Yit-fKa6Lih$#%6KZhwO${@N-_?w4r;YJ^| zY)!o{5iyB?gVjpDrQoYn%W{UD}D&IY*=!rD)>H5&q#m?@@??_oAdfV$fuq z!hX8guD3rXsw$8LtEs82IzT>iZTPU0?Ev;_ueZm297gR1&+EOhv9X?>o&*Kn($3B| z;E$L7I2z}DjUkC0G_GHQCj*$9^3SXdMn!C znIrs(aJ`HTEZW8g;PXVtgaD`8!iN?~N)o5OHzWOP{UC); zK@cdkLo4RrkI!B+hL3KBcND%92sbV}8E{3XzecpzC zqqxysuUEBn7OG#PyH{1|a6$&8+Db4)LO>C4MVazl6n?4Meq%dU=*-vQ_GpeRtpaE< z{`~pV+S>Z(&te<2?~FVbC7XJHRxnP#{)zQn0-&3qK{vbe0lZ+%A)ax5Hvo0~16v-2 zQYECV&!l^yLrU>*(LB0%JnxEOGrV4nw8{!Hb0Ay#r zZV%P_W1Z7W_!rlOGy5egqH8k^s^n*Y6_jkdQ#e3h<1R%utb6^zXBe9g&q}jHR&P!) z*)_}MVEJ_hc$;x%&%G*ap zrSJ#E-`t!<-0g>%`{qt=BRAq@472>n&)Mc~()ah(qb+wI-~ z;H-t^t$Mp_?h*h*eB$Eb+vTKyX#+**g@vqd*J*BH0a#z6LthrYJKrstQ?n@rXzj?3 zYWkK~ulDEyhu6}-GGSGm4qyQwkRv-g%}7uA z`0*7S8OMOq>2i=eNDAN>*L;aUTlpjAEX6nZ4sytOik;`&ayz5!JnYV=!PN-RE9*8* zKHU6X8an2{uK<>K!ZTd&-fcH<%2=K0uSMWlAxy2WEfHUF73-LkZs33K7mNsXlgI90 z(G&l#6`d7#IPOBg+a><_*>}?Ho==z0h75nRU4WZ#`~j2)h2Zj?7Bk{MEn0p)r1^Rv z%YD5Ccq-|u{`?yhdb@O8&}|0#aSeUnFF!E2|smU-qf ze3)(A9oKB>)sO+#oWrnFirp|}!c$%4ctu{TgKB4M>Cf9O zh513;SLs_e{t4<6Sls0&S$=+iZ?wo2m^^dinabtM3BSM7 zufXDb+$Xk$fB2As;GA&I_Nr#&n)D*pBXJxgvHAATVbq1iLg}$qBgt*S* z8T~W_fD`2G$#1kMiqo<8|DtcwA7Deu!smh^49{u9t9w^}F-vEy6s2Y5(`I{8u=wM(FIJ8MS5A0c3|Lk`fu2WJR|0mPe@|0jA!;h<`_W^Q7Mn0jJ^{14J|TYKGRQ zR$Gx;RsNs4{ZLD0>H_6IZE&b?Mh!BbT-OzRz zGM?bv;xj-J=qPs{BN3npq%5%P`>Kusl=O7omH1@khi6#MUdE!w7yeootvfzO1#EH2VF)P*w6v8i&CNZ4 zqaZv;kTE{LxVShsC(c57s_QgNd5MQU$l9N~;B9IgnbP~kt-1e6Sn@u7I&X{8jHI)y z&HXjNj5}4E4*Q*+>v&)+s@7395-BiPvb8nm_z)sF&>khY0kE81X=6I&bo-vUk)E|OGD@7%CAl`Y?8P0yDHA&<4W3o$ft#y{_YXq$n^^c^LuCU4;$aU>COKg zlSqfXYX16JKm=<0ck`HJ{Kmm&Av}2kdYK^n5Dvb~NUN9HYcxA}Zt1Eyyii}!Jc%C2 zNLr>FgJ64TlY0?K^3fyMvKNAf1hppIIeiF7XO3KmrbZBOo7nhfWT)RO5Ip<^#E0Y5>Z&ihE+uaX1;+iE~M5-4D=qHQbe-JLKhOYE6-fG2A!@=RgcPYiu zd<#T@qV_o4!NJzd!Z+LLr`y5^SP>WpKqzd12)FYkhQJvqtrZZ@g!E>*3p>nu+X_x zSM1lkA2*SWQI3Ljx~$(){4_FRmH$E zT-fFyJLc2!JE!cp{>FWmqnIRQ>Q)yl`IJ zn4&#X+$qFNokX%n)uEgZ)XJ_qJPDwmOJVv`e*>YQK?_{XS}=RI1Vj@kUxG$eRXNoX z>u62*H(h+oOiS2dKwKg(W^ByT(obGq{Sl$qs#5IN!YUtLLYzVZV~MB}^x~73k6b#J z7wm5y;~!txYEzj?O>3+Um6jweY^Dk{Vq(2$6n4UhYkuot+# zC^hI#K+w36t*TI_5(>B-mcC2n)>(JdV9MDoY4v93#T6gMB{!k z?L&b;9|hJE&`sUv>)jET-&$uG_9erEfIBQy z#qddv<2|BP+!Gi2qra`0mnhgZfpsS^ap%h;kNbVeDw&XPNm{9S>@y&`NGuJW9yBH%6y zO=gCIUMAF<&dG-4(|f|MDXdWi@QY+IkXgnp-i3bNE{OPk(AD z3_hz^QrwQ12esxzA4c{jeb#dHiJWlgHf#3k=+as8`u?!J1SEyD9!7Qp0g8}-JFylY zW%)my8&SV%R*XIbyrS6;3kR(^j`S?&n9K1gJA(1K#L26&*{{2nd&YTv%V$DBiL!k- zg;dOn@}4!uCIJc3Xvod7NPIb{4dpIBNYf_0fu=I#A9Us5F;)0YfFCP!3Z|e=qJOv9 zf@g;`e`i+rWLatP^3tTlwXAPhu3e-wYxD+;Fy%4aEL5y{q9ujDtb&yjx1yi}O~a7l z{v~jL+dwXl*=M+t6LJ^_YIv*r>)tiC-Ynjl8taRn1@)kHep>}hQ`NjZEal#N*aC|w?B-Vbp9^P zT0gkaNO)AOJd1Bgw89=vdDe3I7fnX5qAHYY3nbCXBNwk9Lo`<#AXOMu)tV+{CJAON zYQoj3)^BU;Sp7SGrh&n*i+Nlu)rd;g?%$VY(Io`x(O8X5WJRG#H_3m>;-{~~W?7(Fre<^oHa-0cLMwrq^@{5hflkd5&ue#l$t| zX`_V)vcE$%L=r`X8SthhIlPUx$Z|b9T8#^zgdX8*BxFG^tTvHw>Ml+OjsdM zksWjw1Oly2%`4m1+Y;g;y+nPZ1h=cH{E@<=LRrK(HSpuoIvb5NgJ{ML?hD1mrKhG2 zMc!hd!3~N9jP^v6$fhuT2mtIsHtlduQBFf<`g3dE@~X$Kfz)X zj7dp>eqMD$ECV30{)vx;7zO0oFI)$>B!Ru0N=KMfTmJ{`QG`j5`| zAPkYBnrP&GNS1)|3ET&d#s*Yz5JJ9buRk2cm*ZT6zKQp^Y`6CB*a^Y28Z_zRDA!^d z=T}cf$W-i&hUhFOKiV@DQmp4YgMb@?dmWp@G{k70lJ*qT!(n?4g){M@!^Hx=t+KOP z8~^v*NG@>OAKwdX>$nSqd*&Iwl`&++B%rFOJ|-_**iB&X>Zmuz{2A;oKE;&{3vxj3 zqr4se9s9F5?AQhJk#i22kdROrB45#m((?Unl(~yRv*y2J<-Fs5{jfMEJ10lcxXiq2npv5N5exj?Z=~EdBc70$yL0Ij+$$P)a8l4m5-2wg&FKXe z(jcy)@9P!g$)CulF1cJ>d4-wsqRnVwkSvkL6b`*`uqoy%=ACu#HxRB&+`%FyY`%u5Mh4kEX`)8H; z_SRppL_>Vh%DYM~y>CCOwwlR?*Bg}$vx6mVt9C@OW6jY}mqM0a;6p4Ns4IgZs-u(@ zRx2&*@w+knltLZ@HqNSgQGA0i5`Vo^QV#GXx_J zQ+}g;_Ubq<`{KSIV`1XqTX#j&F^uUc@pfa8#03WjM*y7V8uOLF9c2N5;E)Nq9X3I) zBbfm)2+TKSy@fl(d;YwTF#J;?O+~nR>Gg{QMpPhd&$72PJYu7yBVq>jWpsM+V+YVR zm9^dX>m^Zi%Zmp7zTYtuiq9D}CgSbj7q}g+(n}9Nikwk-`LXz}p8Wc%1exg0-TW)T zUVzYHcMnu`{<7*HL%{FJ1%%TFH%fF5>=IN#5*TwZpn$D;M|cp4NET9fBap3Y%9fNN zGQcP;Ewg>?&zZ)Tsla*t>enoY`GY+%oZXQGWPn?wMz;n_hU5{vZrWsLax{5D4xhh} z!f_RM2wX^#JR^g%T41;IRlSI=#e|$@1?;7;#$@pf9qxipNqt74mqK@qQ~2V+weDCV z<7d$Q?%qrBfrAk!P)vx#Fx(bqJ=^goq;w03`r5#VZWxEGu2PYBvR2n7nLZ6IS81|*o%Wi?ke zFdz}xZGCs~e_D+${N=CC-!#rton^u2TM@^L@?Gg-eVT>=Nt{K*)MvpFwz zwu7rgdMr{?AO)1*{Lw^7>HUIuNBKPF*|PgL<8taUb8)hWx8^zqn%=&W%$a4Yc zaetdR>~+F?;p79Mf)B{;$?$G4Ib_pW6sZce)6k@)R5qZBtwn6NKe$GR*|@!@U80(3 zSveiQ@Q@^?gvwWRaWL+#Ip~c>*~}lBp9%pN!1v-i<<)L~hcdS4ez6bV7VP9ec?N@U_Rh-!e;y@c3=5YiTLq=2t z|8&;Ii8G)~Q}^bVA-3<7bBh<95WL6NyouARRH+{pXMMhScM*vI9sa)-;J%9FFLFvG zf)W^Qdpub>r2wp(6eltF;le#(*VpR3&8qyg^h~g0;aMRU(F9sVqCrqE_g6I&Z6;Bk zkc?Qb)t!Jmv?h0AQ1)1Bm1Ee_la=Mx?YONnArk{4u^Y?KI4Ts#0j&=xh13cCe`{b- z^-5kYJ$To#T^O?;+^TT07r(efdu-8nh!7iEpDBeIN20t>Sy9Bk| zS@?EjE1}vo2zcpv*bcwoSsDt=;*~b?F)eNSd6@&j{LH1iBK( z-YtiRpppGd=LwJ4UEIKEn}1|daWkht5BwJA_Yh8=Hc6lGGXwH86Wyn<`3Ym! zUV*j~Q0X?+(W2M-M^)e43Qf&nq%QQBUs})%)&Nhl0Wf#M%DvBVL)I&ub4mSZfgAL z8$;K`*`NAK=dYfJGvbemUj?r<(>yBbsVlthjQcMERn3Ap*5ckKH{F&B_rKuD{jaF7 zpr`@(>CZe8(%Dj}wF55Ri~B-V;(P3d7jKH$JgDQbZgYall4eQc!$ z(<+Ow{`tDmt7Il4H3 zeiClatD|^6_~SFoqk}LXDn-3HjtEOpC4g(UAQB_T7y=~_^^Viyc6E4 z4fTgCL4wtwGmHGAJ`E#DTmLrrRv* zM`!qd#f;k8niL2o(g)W|jD}Z0#K|h}-`30O-ebM}(sF)JhnT>CmxT=g14N^nB=72a(!er zRDY0-Unkn4(N!OXJGYnXCMUviW+Td4*#ggi{NYE$1 zRArF5O;kNWOz~GNTH^fT3D5;Xb<^CR!4v#2Ti*4CNf$_l$Cv>k<%t6;nCU+^2xc-S zs8dPd_i7(TKTYc9OrKO*+B7o+_Rw7|!JI-j4u=M6As-cS#ZULiQ z>mlxbu)CfR6kx!$AsTh2938Z65eU>G`OVGuZ_nrcC$)pbUI)MbO99;K4LLk?sh#{* zuHJ8JBgu-6^lCUTo1wiN#=wBQ!NLmL!b86u@-NWwAV8&#L4C(Iupljkbp*10681dvyIgwa{X;WPtRA* zuvl;s{~Kolt6ZZIh+A53W3`DznfM@1^w)(-&Jmy+>?SN=_`O-$`?4STsl=`D+DqfU zl&;5mBe{ zY*(ZkB?h8Iwe2n3Ta^MvV27s@cgP)0bO#4g+MMgUaAy~SCwqj=q%h9#mi);u6GL!+ zYwbUcxoAVlQvV2a z(^EHMH>&s(gv*lvmNKf6@U^(<6*EFiz>cefqK~rFMF5B7=p;r|00#72@C{V*>nHHv zzZY0UHL0=tfX3!$t;XcZ&!ZCn7xpy1hD+}=3mX+jT@vj-&A}qXZr6@ z<^zZu;U7S~+*-*OoLi)c@#|yP$L~@jUisynNm7VTk;363#~2d=Xbg(=$w)YNjQsS6 z7hCqCR}&83LUs-wLXZ+u-1pRY%;iE#24I_<$>11eIgwk|_0?phl>d8MBtrytju1Bz z99i9eAv_|Ntw-_C7Ya=N1+bR)Y$5AG9^Nv;;c&>7i_K&36oFc!5(8L+a)$L#;;8DP zK1d%AsfOM^y9%GUwYUd+wMRYWA_sbOYTV}Z`hYaEX*O({UQ7z<^C&@`(|Cb`3X&t# zno-n$KkoPIVZDw3h>U^;om4>NaYmP6nIe2BEOA7;x;AE93ctYh?zF2ZB^PJ&2e1>N zpgCHEpBhi09D3RsfC*21rq1QzrouC)!#Ff$!rBMZE6S?DrkuhJ1r8!Q6*kZ&iDLRz zHXOv9j48soes(L4B(3;k-!?pbW~49=8z7*r^C4uT_ngYv<*;25dyi3Rh+?@wieZ_x zyv%AtgiqD;pJ6ZOW2ESxV4K37OKdt!{bLB+?KWtI z0QKbz1~}IJ_Qiz56CNFe_WNKXAxRN)M?QKUk`3&WAsBxN2?r73yNgvvu}Q3OrxHvL zlKpku_H<7~TU5dS0M-S{0DwGWnvm~c{;Cjc-L}xSMT3HID#$TCt1E8mTv{7Y@fXYX zYs89AL!0q=v%tjFnhfm%e8(`+^O(PW>yTq>`TUvRCW36EpAU4kmyCtl~pW8_CzP@AiH>;6ymQ! zD{f|MOZPMA6a3garen6(n79H-L&$&s%=pcXttQ2#;Sb(iXL+LRHYN zP@>YqpKy%*OvHL*zy*C5?_$yDmU3L!=?A;HR}n=?E1kvE3=%Jv0Xv%@l(%~492`Zz zl71av+4Cm(R7gB5h_ZNcbGQEkGZYhhX52nFN@Vx$ghNMBZRo(y!3z9mP@j>bqvIu@?q_a2$h)54LkX|>Mhpjs z1&!IlPJKL)$q>0RW6wdyqDF^4OwKI+RPFXxI>iM|VtXt>d45V=hP+cpUuxxYN;aNI zAteRu9MY>48^c=K^$CHce%2G*ef$c;-JS6j8x`cBXm__C^yC%65g_+FAX?gi|M!gn zUSv*{)cvrwLrz8}W&?Oy-M=eUj+)NIliZLz);#a_l_uqPm}TW-I6}gMf+(mQRM{~wi)a2zSnYu$VbH2Gd3$-x%5r2||Cd^WZmip+n(Qp!;qhis1(27O+gv|0DN!`S<`PRy1Wagmeg) zvQwmxm7b6Q*}nAh_9h@8@PF8X3nY!p8{{H^@ zU2m{fx@*N*QfDwF=xNJ?Ig}JQDfDS+$55jlO_;E5rW#2LaPQQ$5XKSt#*)9s)r=1_ z)k8z^DWp5{H=M5In2mZiM*lE|NME5O?AoZlZh!EM#U{MlqQj0XqLjiNZ8w5ldDt&6 zdy~JSef!*W6is5)z+27rl~foMOcPIr`tUkhZrcQGlqIm`n2>C`k#{k^KkTBrT=By~ zyI5OzQmiLHm-%=1qrM4B`PJ{8=t0CQL4w)C5^sHf&JxuN7HhCT5Ykqs3vg5SffQU$ zXRlcl$bWG4f2Ut339C*VyeEbI}QCn6$hUUeG%Pgdvu_A*zl0RxKJ z24+IFpS2zX;~eIz_5A@}J9@C2XCOhn*m>(mYp$nBCRk|d2&fTP%oRwg-B?bnQxU~_ z<*`hE*9r*1BD`CjYmVvm6KB3i;W%y0X)w#Dwo9JXPe zvgm9meO}E@!0S=s;pUcrO99*m>Xq8xbaeQ9pKiu8xWdZJK{Rx9PgkSNc?9Li_rKhgxNyUTA#|Bh8E0=xAQs$!nesc4dxQ-_TmoumjN&+0BaB>2EKeS7td(b&@l;(TN!P;Q;m~^ zxaoBR;R>ED3gf@l2?b}nY&Dy=>|a0pMk0?&c;IC2_5w-`oytBy{a}3uq})D_yD6X= zqyC6s*bzCUa4{#~XA)i)3qYz$uU>J%%zwY?oa1}91W@bTpA(IHFUp4-CUdOh(2`ax zYu^mna^i>nMx57+tN}S6YgH8LjtIDJ)@DycPP7r-x_|)FRWj285aI-_UCs|RQF${o zxmu0)Thbnn%Dgh7FiXpNmgGyGe>QK#t|@>VqATt1+_eZyvfpOp{_Z(@kYe}vCXxQ0 zqvL|)*9ve)ei^3#YUCYMJ9nt^d0{I~nTlx;KXkJ^l9c9ks@HySe#H6CCy(z5aa05{TR?qH(ZO+za3v=ayQr8L4^Dszx=+u zBj$lpKtVkqP+Hn|zZF(Vp-<&(ShkZVU#_+`7c=|CH5! zvET0;#ZUKV)xza+o;unNRZh7qUCR!Evv$>Eu5r%Ey`WD;a^&N*N4@3ssy+wEDIAf5 zl9eSfso<&w25x0C9nus-HM}k~+G+UR^7Z}W+!Dhq#)LOE=XC#nA#a*1^2xyL32fpL zf&3zcz`E&Gj)zd<3*4j6QXr6EpjdL1z`!DcQDpyJg~Yvq#K1_ogAh(Z6cdLCQAJTxc}C8Z11M?y(T1djU?isQd)#lR7S zVq1kh6t|#xoQcAreH_Q>hm`Rf9!QM8a&gajN0#|@(VzPkAG&wwjiPo^y59S@FEt6? z%8~or_8d9@-O0O@>rZpIS(8b& z+|zeM!Dr)F8;|^A!(|EqRa44;mgwEll*$HJn*Ry#PD(}gChvV)h*?`s3P=H`}&0O3FcS>J>@ zs?9VKzHjFz)xb6bG2Z1N_%;Z)2aBXPxz1;X>Fxo(wEh^3^wj>LQiOZXDRYdqUrBgz zq;_uHpZa?#1`%3nq8<;4<9%}TpE2^6HX#5=m8b9dPt$>aYR=nOw#~6XfCS+pT;2Vs zXZhy|Gtfh@!Alcl{rkxXlm~(Ocre0tc6NZCTtNXDRH6njB?H;nkTbPO;IaV<_Y-KQ zSh2di93~)*-TZ8$i$vV`qPyOBFa}4@18UHbI5s6U)q(@xkq`$lBv$C{VYXCNvg`f8 zp>0jQ918?S4+mcrxok%QA>tnVGNvY#HA{cb|0koHxnPEZ@Wx~$P~~QBVZGHtzQ(QM zL0vLZM8*Iz(@#5BBOP;cdHjUi-hqxhyojXRwIf9WW=rhmALZ-iKnJdE?`|bOI(+|R zhGl^@e9T#b{a`RW+p!L5tII$3+F*-9hpwe$bj(=2Dv-RP9XyTQxHbqLJ8lPz3%YNJ zq{GGO)Uz)nWB1z&D;u(&}~=5#2kI_!VS>EW9o3dR1_8=GK6_B}4nZOH6h$2Mr>6hS*JjI^`F|9DYfpzI5E z_pOj_=|f2A`i&-)eD}GKA+axZ@aI8)j&wo7zh})$&#T0}@8J;_<5;9a5e>70pRS!k zdaW~bxR5Mh^a@rM8u2V;1pO;zh;V6B3>RS@c>v~A%(iO_4DZMw%I;TXZ|AKcZ(c$z zG1c?o`VeDsAnO6%B4M(*q3Uqqmo$)H(#cx*a75-zb_YN+6LPufLB_$9vdNkLZ;v^^ z7f?_Ao&WD+&xKc3My5zEjm>-_)4HmKN{Qyb(VoB}W2TE(y7rQnkA`f~Ff(_Z)Q!H# zijhwNL9J@Kx|MTQE6d9RtnlM#$9Stii z9GnLT-&vsS38HM<>f6DU`)cO3E6}1PgezyOfD<7cBIe|#VuaZk1n#C9-{igRR;Zto zjR%f=tGt)HlZyIybc(fasD5zh_?fV^lUBwq>-Hx?4i#3b)93MOcNA~od!3224GIu@4I<^@;&LF1$OA-{+LcY!)v*|VF@6F1?@`r+ zjT4fGQKK&&9m76v(uj}aT6n5jCMJ4m*%Bn~gx@UOdINr4SeQ@tpw_Q1IUVjN?S>eU zDZ~TfTI3kE7PmZsuo@=%KItnU4wPo@`oQ&wh7%{B#uQQY1YbfgJG+%F<4P-$bZew2 zIhG?R?ldu7!|S8Y)3q?|lf{^P&y zaMN4)jSt|y6~`Byj!WP(`DCoIP(0tW8P0O>T#_J+@E&1OgV$H{_9P7SA8B&wvn%#I zyagXjPtM;YrKkuOker;{JxdfjIJ2~b0K&t=+va3L)&`KTYDLn7qsz*QEcl%%@KD`^X7QM3+vZaY(H35bt#eC#?K&7-PZ_?|F#n z*M0AG-${V#5jC>^hpeX4n(IQpkJ^8BsANVRpoRNyK&&iN3;4^IZ-pwhi~sE>6RE8E zWo2}Gk~_HiEU=GW+WouHj5?4cl1o&vkzQJRpPy5(zHKwE67sJ>k397C^=}+HorN@z zbaHG%nrVyJzm>_Z=;Cs@HIm34o>3B_p*yvI&#B!U>my(<-M=N3e|sgd1^^_<)S1|a z0tuT<%Ad?|xBAFO$^nros`JU%A;~*$8#L*rDvsUQ714`wv5StYKQLTkW*geqgd8LR z`v1!_`B%6DC-_tZg_~BAGiib#;mUTr|umv;p2{@-k8&`*3}6yl;#9Y=hvxxvNbN06})m zmlky|eDF}cep7v>=l!=M0ah4jm)EEK7bR#h20O=?BuOGS{P4W6E$WqqE7eNw|+G+ZgZ$s_7L+6!4Cxb$KVHp0$SG`^v7oVLSgol+8 zS#}tXhKYT8eoe)CX_qnSUoYy)_$@+&y4H$StB}C z7d7t@h6C62=mYBBzpf2n8|PjOC(MvzE9_<-Gd&26NPjI`|KFONEe z0S3ded;@<6qa*p(XTs7Fw}_4bV+ZYz4&Dk#%{`>g9gbw>NN`n@I1X?qBEcA}W5HpV zv>#bi!7h@weEEZyaNe{89v?1?)bE?rn>Cr96(y_`z--#Pw<_3bNV>e}xr1htvEQ=> zNiy#`a4FOHE3!m{zIrt@V^uE@;I99Jy}<>Fwpybq>A1SO<8GOKlK*-qK~W(`(AP(Dh!xw%ym7wuz^}5)(!%rqwE(Qb zU|c6K6M_3mqxf{NkPR|(2qfsr&kS?cr{UAn0n1Hrl?NY4$;e&bIl}(!5kKfZ< znwD}K{}Kw&aiq^0c$Pc#Ks1;aiiuK8(urN-aYj4)h^C2qSo#?ZO;R#a2mzJY$4qU; zvdZh2zXNvFMZu(1a<5H@)N+G;jyoKsJBrH;$gB~B%xR#?Z#*Sius511TY_;MfJJr0D3XPNOFR}Z?&i7vBOEbl$eHLQV8s9Z5{yg^Bj;6Alz{3Cz1Fn612 zFryrLj=Q9pL@8wH2+6cMty)+bJhY4cUzUPvMS&d z-NjN=YKVkGE`W({d(1@ewMnzs>=Jbcw&mpqYW=66g?mlKjs8+vEzzxW3idU$0DAUm zJ!VF9iRT1s)AxffSKHdw?k_ft?*eI+WS3VBi2yotQB4K{jjE`MVd$-p!3X9Yq`nmt zUp?k1GCu3reqA)L2b^SspFTaH2{L{*7g88lIWRF1rM@EJJGgxU5Ta`RuFl$8$CDA> zexuqhJP!-2l=n#LI4SZ%Dxp6>i9xO;S3-JA&wga;(&TIfTrX3&e zVs15Eb%+HN&yq78%t;-Yh>w5XOgL(V{!%>ha16@qUIVYA(Cb!nJ5j8^lZPFLI-12> zVe2}Fab$z7Llo83UOL93M?4o03o+^dffC=<)NU>yD9ma-R|MIDGNm6fCA#<<5Nizjmeehuze>RCNPJ$#?mtC*lf7p z3?$u^I%yFd{QV|WLmq#09a9=j0YE9_y}h~PSlnu|dIlZqP2D`BVOg=nRtYE`?nh+- z@LXTsEP9ZlzsA$)Fn-6R%X{H;NlX72mrVsX^?+;(fv*#RuSOYliifP>-Q>sT!G$|j zSc@=^(q{kjOuWd@qH|Z?ti-HCzR#bqu9~0V@>ZIJ(BUqTer!IMjeI&v_xj2}KVFu}6L8dTc%KXW5Oz2!EzYAkx_$(Lw4NUKbMk3g zZIw=_1aSSoDKzkL zQW$r4E*=FKZa#7_8L7~G%Sb0m5AYGB1=Kz3GiVl^fpdqV{&#f4_IOefdQA~H@@O1N}ZOTSQmpWfJ{HMp%;r0}-BnR7I@3cv^c zXN4#LZ=`3%aW65*Y=3PH=t@0a7C_h%9KSSvzB~21Wk7{@azb7K+b%bhc6E_}=Bsqu zET-~+#_%1O$G!rbXTY~4nBW)$zz(dUqqDL%o}ur#o3xDF}g z^u~T-G2z|4Vvq5O;PmcO;}0!P>pu|yWz(fBWk?+H&sb7@IeLG8;b)cVGP{z2%rNpo zqp2>Z`d6Z%6YkEOQpmhtxovU3SKxQ-ySZ;6kMf+)ZcVnWMrDTsY7_%*lb65hzYgO1 zvYN_C5V%ouv_)U!>c#&N;tGR(&@Q$I*mqc3w8-9O_i*BPSh3Sf8V@7T!>CP5MI(Dn z=oUuh8Q^&X+LHS{v-*uv*snq*G`c<|Jw%>-_lI#QUGyG{0%?}?37DW?sj1wD6|X$p zi``#T!vAv`thIYOD=18m_`fJ?dT6F+0&y8DO}5X^z^p%DZr(!*phV*V-mq739NimW zCB;rjrDtSx0f8H5XJuYm|LZ9vh>(LaZT<*4iWKBXzh|m4Fy9@2RK?b-NufPo>PzwS$!#tcA7}c5v+n zPY&N=c3~0Tf`v1|IcJC7MQxLKEy$ajAlyooNi0Nf1#TO|**zCq_EbAN+t~4LXr(L` zW?7p5W9lnl;_A9~2P;}!TO5kJOL2Gi0xjaA8U^hZmPfTY)B!B?T}y2n-Jj$1l_QDPq96X9aU^g`^~P@} zUzPfGbIaAsR!&1ksDH^(U;ty9hX(ZiRYh!Qo2RAx*8&_;T zt54Z9c>;?IWVaQJgIwh@Er#R${(28sS`0bCwY9Z?zQ^|DZi*QK5V1DmsQ}&ohLYu- zwlzOkw!0bz{c?hOR7^@bapgLFq}-tmgUKpJ)+0k!+*!lMwbezdTpeHI%8inCH%Db; zjp1G^^yqfWiUIg{Q=(G9jzyCWp<}lZ>>Rx$yk!$PFNG>ics?f@j5180C+oMLLKme3 zO#p!w(F#W@*X@cHG=P&zn>%`XiM|W4p$8snN0Q(`2|-T_JV>DsK|#pXxfyxG?0b{< z?(|nEDX;Ygyu;XC*eT-RJ-3#V->X`_Y4p7G*m)=ld)M;nRCk&cv^u=S9PUhvlnA%@ zoU;5IZ59(KA5^ke=zFSDXM$*FRTQM6ykXE_C8z*(JP{DK1X5H|Vs1A&U+;J`y-|_p zHg?MqXv@nByuyhNB;#R%ZsA~kT^@Hr?>_4LBA6yik%!XNS$BY#hli39MUxz+4c zQnu6GFMC8FvF$E2NS9-54|ce&zcOj7Gq82eZzJ*hrmE7kX7$6p{Ni_~hnNRVgkZzG z`UI)e$mVUwV%c)}>^qO6c4eH_VJ;k<>`z$jrSW8$3a&RZQw2o~A?VEwckWo(@3T?X z;QUE6271n+Bn*YBK#kao!hqscQXD6SYIIo#l^*cy#{ZTraB58 zgv9{t*7dKP=`CVVgjg;>GPCCQP)EV}WrRL@@k7OAuPn`eLYK63;F{u5ecu?R1{{|! zGRTW3MFiy^uRNCx)OP$!kEsc9SV4VgIR+EqyCs}-8WgaYWgvjkZsg_-% z?(UoKT@qmpF~j`3bb!tF^?jer)0QqkrrKSRaz-eL5rB*nL1l3LIsy1YQ^NdEM zcr~jmUE4RE`y&WIhIv(ry2V4UV@}EeFERU8x_PLiUwFB}P&}7@Qut>#lbkFGFe5rZ zB)8G2AF1`0JZu>ox>JwyZ=6;TyxW{>|ANyOk{Qq|vyNP^CjUa+x}z@HUnUcoyW;W< zz(xWKQMYL`-*h_Sz29+=W2iRwxweP!Oo2J%$A2n-t@5)J*tYBS?(Ov%V)NyCib$`h zvJ!~Pa0Yeb8Q6(J3-toZR!#}vO46O5+A}=`kS}%r0ORCS{+i?hYbr(?3Z&x{ViKBQ zGO;1IpB-%is;(3&s1u1Nw)M7R39?uH3 z&wLlo>Dp{V8%OA&OA)O`ywU|_fZj51UM|BrYea9xcDz~rVC zpmmdtmvq{R=7bcqx33X^v}VGc1mZt{%#W5e8)%`k&gZjBLdGE@gFNx)ighjnrS6J> z5R7DYwvELZLbtZZKC2(9ZGbZ#bm7Q#9z&eO&c?n-VAV=K?5py)O009Ff;>^qpsC(xUBq%K0n{L}ljfnsObm~3; zz3_%~_;2^!A5Y!k)s7h%SUHO0FeGV8YI=r+T!FUm{#oGDhve1{>K?T2-o4FKS&19& z8~tMN#7@ueb@rB4+5ww&tp0<}(?*O$GGz}A@8-RkMf|b<$JCcJsDWedpi}!{Np+KT z3|`cTE^`f|rgtWy7tIXahWW z6q0ksr=}c`pg`1vCvh-9uE#xq@^!XnSf*(&m7h}#&5WgL#Sja<6NzlAU*N1MQTQ)O zo(yvSF&(YG(9t8&y#MTI#Vjctl z<#i(?qi?{t*_^TK>+9#Ir)`0(@IL;~Yni%&k)1vzas{fdlv3{I+NH#;rB{YXh%wKL zd;Hp74~!JEEhE5oQrPd4#0HGBm-*6N>39bSqWK(605`ZTZVE1Z*j7FXf+8JS6K`gy z4hu>Js|LlqTSo`UtG6aaR| zz65(E&GIJ1VeGLmN6fgYXy?mDt+)ZAv}R1?n9Cu542>q|tl8;0dD~^127r1O_;Um( z{W4pdodNho}4l4GelgLz|}l3T+1_rxL!ckUs!aAUzWByzMm~V+OT5#F^*v)Y@lIhfG5l ziprvIZI{2cV2XX057>Qc&k!(GTSMV$mH^#j?wI!KWmdvDsrlz>2z>1H0BD{=jg z6Y*TLfe)DgQ;f$;QO`(zlDg2#rh|huEL9yg0OZY{!SeJNHdcHyUpRhF^%Oxmk1G1+(SA}3`eo5x0bujJxZ-uJ{R>n7Zi!265qrR%_yikR zGIRd z>{OK{?oALp{YG4(y{paLg}{o|qFg;srVqs0`H#i`h6G7v08SmohBL2)y4_7Yct6!Y9Q++g+t~vo zf&1;h%e1Th+_kQO{QiL(H|y;uh$`a!=5W~VseQ-f)ztx$_|k2dzlLY#c2jtlq?qSI zV#hzi)5cOn>qSL2X8zJ3(`)5NhRxv$Lh3{4&t2AhfSc#dxNmTM|G@$4ys(oO#<^)p z*YlgVwvLc-IFikzeat{tePg$0sm>$QU>K-VZz>O z-cZDj)K_(auwK@ynTo@6lnT)sbaEmgU^_N8xCAz6Q%dSQL@Zz_ACmMIn+oub|B=%^ z1xO^NlhnZfEm6Q6ato!ML0)3h*klB=pygOiuG~u4ro*b46;C%!PTwTqb;Yat|gXK}2MVPSkY;N9wrdaRn*j22E1XMXG>1ilkWA+z* zbe|0UeK|aoK-5UsvfUW(vjM+&5^vN>Ln@MOFJ!RQ*o`z^$Z5l}d^tZG#ZcI^vmiu3 zrwQPMEM+4IFpQk58H1L0%z7{ed{y4hg-rx$#P-y<8QUrH62Na5+3uOsT1 zx)-iGYF{2~dA7u!pX2*Iy@vkde(fQl|G+yXJ9C({<*}xc5Tu!u_M)y8PPJ;)4akRq z)Qw)kUJ@5aI=UH20 z)agd!`KDF?-#rubk_b*=LFnO6gB$Tsp9vu2NJHmde1ms>-sq#{~hiJUCUMx>ClW2xIa4_Q#9?uT^$=T&MuFRN?ue;l&fk z0K-HCEvPhcvp5AQ=Xdxpv*X%&nz91`{aR!4po{ojE!jp1LEKHIGV5SdWLflGb}euK zLbBQOABAjN-K(i+1V1AMhll{lrzyqKP}&ZaxF2zm)ED1mNpkdkkB0ERCXXGpQ(ZSn zcw~7npbduD9O-Sp#KYsQee_~PlzOUhVbUj;-oK1V9?N26_}+4@UUXdT5dtb;N0?`) zIKqp;!ou}5tNbjbyN!pjM4*5ArkqXl=@y?!G9&0(`KP&8&)3xYu|uE6CdNjxe1DLe zOocmbhF@oMXQ~pwyJ|^=8!|B<$Bg_ZUe6tp0dqFgZ;=~AJOklP8YcNk5d%4lTJ|r1 zN^SD&0^O)n(hVS3zh|U{UTUW3@lDSkzeB;KkR@Zm1&e1Z0Px#rK0qw*!SzjH;r6=l ze2tj5z$|4@7q-iV2{dnosy$Dat26OZXiN___rMiLc8Ht=yyq4l7*VL2qEUQP>2nYP zLE_=(S`a8MuDj1>DyEPX@qg0#T;LdLja^QG1htd5NU=V+^@I_#!C$mWzuK9`Qg`ot zglT3WJDmrU4w#i!<>qQq6`N$%$bn88H1B)2ynX{5DWGltsubtyt0(_=)ap~Uq2DG3 z{W-hxi!vh*yiC_f&5kRY$A!HYAsk**a)!Ao;-A%-@Cj)h`b-tgDn+v`@Vl$ znxY1y5fk&V312-?;}N&G1~2z&p4BNDj*Rr1N{Xux!U9!#AQ=)+a&3lzO-6lpwU)OF0;Rnhst${JRSIN?wx$VajAg+l4gGSm~c*6fiVW}p!HXnW9mq& z_i}`GXEWsis73?Hq=AC3MvLCi2+pNKTFw{8r_8q-qwLYZMN;vmt+b?^oo#P%&Sq*` z8(nYzHL2!Q$nlBf`L=W0W`2a=tUbW$1JMHZ-X!yZ2*E*D{8dy{BDE2+{ z%bu3H{&F7vn2f(f;giSSfQi#C99jghg5TEG&&4Cq2=ig-F-O^g67pXuK~eW0!!dHT z+;LkWa!L-Ns4}vbZ)=(9-m8kx%W|l$4bIpn%dWbPDAcq1a;uqzW8QrVW9cn43=!yO!cYni`PnX~91ed%zM0YvgRupUe(I+HycBRUDk>q~l-~c+@(uw_ zZIa_RP9x)L&tkxWioMnO86SW8_r61ombI={jg?VZmnb&HXRAMWh}eoZBJd&V%$oKu z1Pv7RXokU}UVva9aRBD2dfg=+pOi2T(|49B2XY$?E%3LrV%P6z6|0qr%Y_g>LL-<#OMPILH$V?tggK$zNn{NZl>*B+E$`CH_(#e_enImW z*jSr>xD8R;uz9nxxzpm5(_f)ZX$pFd$sFEFXe(<*^<9F(z-Ze%=`Z0sK|x z{O!LOt`eS~KUALnMXr5*k>usm12s3-KlFrXON$n4>UF*MSMYL*VSd;+ajL{8RK_YP?t1;Sw&)wdSX6SZ@JUPbX zIOiB}(GULkAz*_?7Z&dZBnZmT_~!PkH_1|LpW}ba8ik&)L?VgwP$n3+YyQWAqw3pJ zZ0iv#ePN$$NFIHmzWUD!{pqLO-jHGLCCX6o%GFt{k}Okqqwjx{3DyFj9`W`U>3Q!; z4#KkVbAD5=tZ=lV7kBhRX0&!#$9Tw_w`LnwYIzmHy!8gT)2@JK+6CzkCleOqCyuLr zbOn=!IYuC~G|C4HQ`)X@b7O?qix|5{swW7Z(;+=TEjYUrnUDpXWdHILkNX*i){jD0 z*roc@r`G9`S0?RURineeCYJ|zTE}SPiB5>3ZhuHz4tM{~;BXv>iv0oHS9II!F7cs_ z^ps;y?3@@M4c(e$vp6(pkQtRj^a!T!fl-ipVLx81T~r&j^JDrSGMUzEa+jYkf-DKo zqzf!olB1**`)gk!*KwP!>+z7Gi9V&sd*|g9-)pDGvVC@6R=`lAJIr|_sT5>~PM!J= z2OE%|>`IAm*nYfWp5*<*=;TkDbQT9AT*bw+nSlcrDxGo|)fMc8)pm<+G|N%QXheD$ zEyQ;k(a%P6;>n(mPjcaR3AkX1j~6%Ct}6T?KX=`>BenA3r6G56(5hmqM0fuoy85gD0Nt`~iM8*#eVLUj57=ns;4y z;f|5qud8q@0zwec#D~V|ajsgjpL?Jyk-8aTIi&?X&Gx5za{fIVt!pGn70RW5v?nwY zlOvd^A+i0Mf8}d3*Yz@IKu!HbR135RF?9JS1ID@{GvpGkV-qUMb7da zpPa9(2xqynj4s`~ZQ%e1-=l2BQOPsZKNp$hZ){UqB6-W8m9}A4meAAszBO;qc3118 zgixG2Jc1dy6ri$D)_g#Rk(;es3lZLC72btL>Z_(3Gj61%^5SCP>Gz#8_=DRL&@(LG z`uc{^biRz2)9&ioaewcgjf<}yv_KcpQH4>VJyA6#lS@aJtn?}3=J$4`zbYGa{N~wn zk3oMuF+lcB>BwgY3jY+~nuaL{ch46&L77V(MSydM^+`wGll?*8d+>6J2yhX66-!mW ze$%M?!}8e|#vp~fWSU8T@Yod%a(%jNHnRt?s?2nvLS+s+jt(J)X00<>9{b|?+>!s_K5 z3}&ytyy_P9UEO3y>&RH~R1IydaR#c&B8IoOsDFHb5?EY%b8{cL96V%ENF*%;k7|Xy zqhO-Q7qPYw)FH~v`U@IRzdOJJy1L7gHc2ZE9qj0(SYUyWhXcX(G>OW$*l^Ij0&a=Y z1<(;cmhEi`oylt!E7NLVVNI^n zo*xrMlw}pABUY4yG5X!bU~Vnu?M+k?#3$xYVrgze(;K--U)i{~^2eDM`!oO6!C9yW zl$C5AP$xVx@~n~VpUm?bE_Uf=y*~y-HXO|&S|QHUfT(UCWw0XrMe_+Ksuz%>3H8;{ z87dq;2=Vjt_sr@kC{ZRR1wl3S?_9d|LaJ6RsHhq|n-CPuN-6ymPmml0<9DCmhjwUx ziWc{WZ=Xf^x8@|lAhd>?E)&A z^S68q==fOI+|6-|TQ4?#q8>IEIIs($u40#8U#ul~M9;=X^+JOfx>%_sOM4Mjo&?8J z=iOXt`tgh7Xvq1tmJ?SU?*Q}Pc$1w8HLRDrafdLau2(EYv)?PbSCB1Vfnfz+ z;}jI@`>H|M8jHdGeUi~X_04Sb@V6%$;Z~B58>rLJ5uq+-{<^Uoxra;@-HEAxU8&#X zEquT*(@09z(^ca5g!I-`!Hc|Jy@$f*%@`fUC&1z%<2nVl<;YrST*(Y2nS>*S|5rVo zV$$sD)9X73Nh#$kQh;Kbv^mPHtmng9yRy{Ho}HGq=Lfm(Tci`OrU##fJ|E|u-T9zJ zBA=I6TB%KiCrzu&$*E!4GTO)&U!-VJwAGZpjP1#YqwsB}MX>0v<~T|{hkuFWICwh* z&-AVeXxoS`zD3S}RS>N~Ew}losXC5T8v=xNe^SXe+qZiK78aV#pFGo>-YF@@17X}O z%yyqwmd$!n091iUh*BWH2r@zT&dl&N(|P`wA~Vq6PmF%lBh+vzzS#7%Qb4isZxFZ45dEUOp%I4byNh&!x~{a0txZ{_9J;) zlN0NHOCmd|@r(~&{J!$ajwu574Dw9l~~_ zM_{y)74^iz!zK>VWEe8iZ|vfJw0=L@^W-^b&ORW#;^TWwIy||`IM}Y~A;J7T{1qC8 zE#L$t3MP=#`SvT{SC;gYRAN74u5*vB670`=bXm~Hb>qP@w}TwR1S|>G+D4(=Za(N= z`a-LTGHQ&NM~sTFmOPn#iVwj0;@kO2oDA4#d}#@wR?w zE-M%phPV`V%u6CYRxP#T;0p=9RAjjJS1Cv+hDY9WOmFCSRm|GWAjZ*M4#(?j$UCbREF!Z|945ujfy z2VI7?=Usy*Tg~DaVg!c2bv3lxzZ#%zAvYaF@adi_oJ2;=DbEcQ40KhMs1C{4E*zk| zv{Yp~KDgT(PLvb{!PSD}L`!Rw4}&I-#zl~;m(93VjmSarjP(;w>3uiPP&g;c*NvG~ zPv6O5|K4UhP-IYmHfL(VKdr>#UjD7BevKBSakU2Jo2 zUapkMAu(8g;aC*@-Cf5E)^P$pZa`2I1&p(rQwrmx^u42C8YM+R$bMEx&psE`C==K!SV9q>F*^7B46nHbtpMGyZxo=C*Eo68Eb38J?#9w2&&L)dO#7P+`V5Gij>3QhL zVfmO3zXW}+2|)!zJ-qr9&BB9#qc(5aXbg!`j;O=^IT=mN#*|u}ieGPe2Dgf|Y2_3d z8q&nE6h2F=_8~o5iabgsPSo#*`_0}6$1!jg?X~f`^W?x8Y;LLrI}(vIn4h~DeWz0L zd>AG`%iv84E2@Jc^g;dOo6yZbAGtL%_RCyp*-ARjDZ>TZPjYG@)gU7Z)7%sj`kS)4 z19+lUxhgV^Y-@5_`fZqQEL6SYKK_@>y{qCT1>5&H9A z+#Mw9_G7+~y1(l-KgY(Iai?4BY}Lwa*3xd}pBD|4LrV>rQz{=POY9@$GvS~QE9Ymz zS6?W;|4t2tQ95dwJ=W>4KQd@sPxhVJ_r5mdc)>h7!>A!|LdZJaViSw!{5Yg4Nt%^$Kvulo8K^kjJDQ{EuC z>yhlh61Df2;WLH}-skJfu3myJ1x>!t9P{RL!sdGgdtrW2@LG#((vEY4u9RR1VQ&E4 zbJ=8v646_29xn-?1^p1wT2}cq-Wx!e{hqb{MtkR^w=n&Ba}g$TRDTHvKK}mb0f9J>~K_o$D5Yh-JvS4`|HN9>0Ys9@;cjy&{P9A7y!W;s5B6e9iDWmO3YZ< zqKp}-`EJ+vYs8G{;mNJHOS(>$0~<+ib^Y?_uiGvWG@sa-wu-x$yZQRWD6wSPzlU@7 z=IJ%S+C#KHK4S#cdlyKX_imi8hdlZ5QwoiUrX=wsw)S=E=7=Qdv^Ptes@T0gwD zb#5tWp#B2>Lp9Ayu{<{ZmWui5xYKXwjYdv`@hc)byWLIA%nb$Mp@N17X%@y2i=pKg zcpw-3SKl!r;@=9JDQe(BS0%+X2$#QJlUr#VDzCMhxl!|M{Q%|9YgvYIRK0TUTika4 z3NMi@@T+imk7td00H$cs>Koo)G;;m_J~tKIRv1M=7zfyK>1@*MHseFYZiG;A0|VoskwuAivb`=7H@xdAf>mt}PR*(#PCY|#u7Ogt zm{0cCi5X|HaS4Cy$*Jp#S?B&jYx(JxBNGw`3K6GrkF343thWT~KY<@TDnBT-pQN;! z9M}NGp1pj~_ikHX$JNfkuQ$?;2}(&KheBxNN=zSsFJB9nu}>URPJ4@EW@hJFfOQ-# zm7ahlfNRDI-K@VioMX(R=y>y^PG^LcMa%418^}JJj4s(oj$sM>b?Pe&gH(1EB*ept zp}}W~L5?tU?3EPSVG@G;0v-EIhX!;@bPdgSd<#_?0ROUF$qWMA5wx_@8@LCw)xD5k z=LD!~n_|CZjXi~$%sY}3$;xK6c6?OvBXR!-6ili6W|1T0KWz@{ArGN`!9w|)hDe;B z9JV#tZuW(bY_4i8043I8=fp7l_T}JHU1Sh)v|prjgm1fJlOR?|^F9T+S_1FpoI=7d zp=Njp2K>9ANZ`eCS3c2A$Neuu1%o#7`bM=256Ohm$=tGZ5U6^@c=|`bfgCAxI>W-T zbYes-L4s6%%TKiaiFqu6>ZRtHZiT*H(+oBEyidJyfqh?7i#D?D+BuRY*q7kIq`1BQ z#It{?j_%S%vmGgg-;|Vk{BsW&1~&5#%kG`{xY^LPa0`?R+M6mVzTu#Po(yXB>`1w= zCLvLQPFEIML@xva1S5r?Grz8>ca@nd91^_eL7-4RyhX9&M%AoSZ6#e^#jG?B&KQ;I zFliVjU~OSjwEOkm`LV}n<`Y6U%f4$8sQvkhL^~kfVV3OJ^%O=#5f-GejwVH=bgrNBnh3EO?%#;6nL3q)Etk>!?YHpag3$%A(X=j<43vDKhb_R*5H5EU-o#zWavU5t;?dc_nOHk z4aeiU3Y-h9W*uvD83Ghn+4MRmaKRq05HLb>C2A}I&Gj83ih`ULb89~OR*KLNb`sX} z+GThkaYNrO{2{#}^^OiBCI4^yyw@h!N|*hll{BLa*%uzi1mT{eXymTlsL0T%edndL z3-q>pWyQZ_ONb%p9F}UZuW2U`-{)uYBStop5V{VJ!qukgzO@vUt?j`0l|qmGe5ucu zWQ^@%E0QgFnA+a|(4Z{_Mr1zZi07+gQ%s}>W@kPe4%*5If}-zd|P;$1e z+OAMGwyvtM5pc-K3gvbRZl>?aC{S0^n7(1hgUX^qTy@fIi|J5&4Wh7`MeC)2=X%@- zSkVDh94P|NqZfzC0;}tH(X$PzMQU(-HIW&?*Wr>>XL3A;TmieFzy9KJX2?u`v)Jh* zk5LKJ+^yoOUYz5M8LiH7KYl36WZQl*mHTuHeAn-aI=6qje83 zx`URL4j@?hA+*!kq|EJ6_eS?Kri>I#&R0j_oIO*w&X)G)sE#F#Mg$c;9~MH3*;Doe zA|KoA)-?=Xp?F1v!{@4*p<~lZDHFU~fuY?K9ZI=(N2eEk!@IWQQU%&-KGv_JhJBA; z!~$F(1xo_zM(^qNq)Q@GNF_h~1Lw3hX^U9Twr?c)!<+lUTQ(Tyir?$pAIHI4GaRd; zYPZL?&%QH_D-<~G1a+W(X98WuCOW#fF&xVs%9yWz3>egCJ~Z#dNBh4E@jXe|)%LKrvEQoMrimrYoh_B>9ZT1F!;MtjCxRaN!4w1~RNHOW&b6~k47$NA zC@S9iez9xKTXp<5Mh9(BgcSfQY&TY1fewEoRNR2p0dYJ3&^L4e*I3oJTIpRTaCp}e zj6!)@;#kz;5Y5V?m1AV|#Xog-;GNuR%-03|wnQA335|6?@rv#0* zAPo6%^rZ&mdUxYn?{ols00 z*!Lu~f5;W5R+RR%{~B;PLjgVGSQ?Q>oQH3ZnVm~6;)SBhEj}2;ETZgBY=!%MQ^&J} z;%Pj|U(>l)+;N|R=y~6==Sj)naO7~PcSF;oOtF^hS$);yYqj*g&AIhd@?kjYuJJ^a zs#3c&KcXL=+!w_RiQHEGo5x zU71L1?V!vvIB?tMUL>*BFSVj*t;Gb8hT6}!+V+!bIURxQs2wt==^HKHWkj7l;O#*d zD`#0cZJv3{L7I1$Iq`BTlNx2TqJtzp^eqA`tV%@B{^~oznftZ;X<@|ve`iyk%=acL z;(xGk)OS-EM1O}^$KObHI9uA9-f%kgw%7_-`W2>vP%e=wH-!}I#c_!L@xuhm63M@9 z9EP@Qjn1vQt)ue`&uI;I-LTn522AKnFSVsShAHn?k$B}ds=C9eTXuSU5-K<_<3EU> zPO(rG-($$W0t8L8L!<#WC#%D6~hNiz3Xgimy9S#>%DmR9T548Sxw)+wiv^kr+ z@(aYoVZKc|88xRjVMb_ACVqV`b(iq624n5*|NHDS+wzlUp?&_F;VUlfb@`8N6owBN zfl;mX<-0%=c~6NCe67GC>b09v4=XY&#oY{xV6Pz{g^4Hh(wch`QabvPL8EG;iehAs zN4G@T&6^}(m;WC`#k;DZ?|Bh2kswu~jJ^4|#r($cS@(=1_TK*u;w^nE;cjF@^=CMq zYCkC@nj{&QgZY2~%~HHdzWiwau6=Pux;xg7v$szu3DD+pd+}TlAsxjXhC`*sbFz15 zKE9h0yekKE64=a&)&V)60;nXni38t=<7yGG0*na0iG~p`3-E+9b86Oyfirs*PAV4!Xww~8NqfrdqdC8+96t{b_IQem-y+5?Le{RprJLVgme9rXX;y#g^tWLYlI z(CzU{$Twxg&fR^aP7ac~SjrEhJn8Tgbh|^(7?Z)#SxoY@TC3JRjDtP;}; z+C&o<0r~?J1biSLD*5@plW>HB2K==vpQ@Cj=kv}TjyM+?+axWu#a!`N;;4_W-$t@l zj_N1lIY~j{t@?O$pE#GW&CSW=zK?Mx>Hjnun_xz{%ZwJ9vmM&4^H@f(4h z`U*1dmYvBeF>gU5POZ3yk`ujlVDmKNZ2V7X(_WKUUSjUl8ks+d$IkBDcwgUeLL@dC z6&3?YKup8MI~7Ukr8H@5=6X{R#4WHMz_K`SE3bKDQh9L;&l@iUkR*srvpT_#ka_=r z7MzS|wYYxL93$jY!t>hO^s3XpHrEb3^)a<6$eH1n&7HYFyZW@8SXe^mSi7k0n-DAr zIIO2&w{nu{LlevL&)X{rI~|*E*7jji+el|wl;edVK)U?zDPc=ROSEpmdiT=Tz0XIM z208#}a&W$E_;^yb4?wHc#zS>|d3UMYWhJPus~3N-ZqxO)eKsZHUa@WfYH~6suNXyJ zhY;Wwn|uTB)vqIK!HCikeHi5ejI=FXzTauuKQLzz-2nJ0j1<5hK5)2B09l=S zRh$WZqJm1UM z4&C{Rt?BO`(%-y`L(C)8+;8OVZx$kcz%zL`bv$265xpO6SJ^5$Ir2jssvnbgcN@TN zccGO^l$Up}isktD-}PZb-&px;=1+6nMcBQNu6G*mU_RX{XR4Pc!hzrawUZ8LctYRQ z)oXYB_I5%E7wtDA!slUabQ?}`XSSCv`bmRd9t*{dHTU{gzbRB}+Z5Bm`VnC-#~f6` zs#7JbeY4tG{Cb({y>7RqaCUME>ld#0x93ghjsLMVLf<5$5r%uWwbnP-k06?!RD!W$)a))4!bwEX-5E zk;)spAtQ6*={ReHsKU_tYxt<7u0Vl4EqXX*SwuwmHZLB11fI`8NBMHZE$jEgcXpm^ z5lQHd@*kHhZx}yjF;9~~H)%AjUFN=a^`*{Szi)B(3g`*n=W7+kQ2~;-y}9^OLJX#+ zjd7+}zk-2rr)wIroyx<(C3I!>9L0-?8E=ysn@&>LK}FV3=seR1lGAf*6-O5V7N1H^ zBQkC4$g<#&hNM5E{e~}EG`d&hsq+WNlUUV8*Tl|aY0f@fx*B22i(j8`UX+JH;hal> zv{r$#gSHF^q)MG=KX7?XmWOk;ykm%-KI`Uc&?_Rt^D%(9PX@%{q?%^n|0H|$`Zw-D~r7okjUeHMLvkSV6QMs_1gNtYUm>a0Q^FXIhcvS~D;^MZCt#zt5fe7rl=VAo$0R zx|P@E6kTytpdt-uajjMJSfhE(fC(l+Qv$P%g`nG0wwY=7WR@5r8=UUU^nyNng7Ui1BYhRGcEDQoqWxR548wSd4U#M`CG)ucJuaW!)&1)} z`~lC0hkLK^P>bEmUF&e=E*ypOfe0n-Ht8T@;H00jI6kD_;ma@e3CntyZDKK6C6b>jb75`Ik#^;6&*FWf&B%f9PTrj zGfpr<%JM)?f{D<4Y0|uDuqn4d;5$?|6)f-uKVQdGLvn8JlCirLUd4 z({`XbfPCFd%Sk(@n>5rkRKm6SUd?!U+lA7!D1(@$Mx2u+TM&Xz;qh-?tWEP)28g8XDlybWd1m@BA&ZsB^eN(7`TWIsFJwF6BrrJzbY`@ZvXCOTyxJ0kO8)vCZm2!5 z@UZQy)$*Tn3P9UC^v***eg@JO+<*+gDy=$-l|Ll#*C!WL$D>9O`!1osa+(NUoHY`Lz+5UcGpcD#tm1v|^BHs}MYSIe!M5&W7;zvY;zwSeb zjP2EctqU-_ezs}OsjNf>{mY#iBJ@0ommoB^wr*I0-hYn!wgaFrUv%J{Jz92 zKFkbc{+k1*1hBTNGv_Ge%>4`skXl^IUj|ApGL)yj3DKo;g2{98G1GLu4@jHoA?@v@ zs!xGMxloxI$t6m&;Bz|B1xWaO-tWcSINOnSveSJkj%u=*O5S$+2WoLRVm~ARXDM*tbXockKW& zpQMV7Iqb{dp5TdIflu&u+pF3#v7CRdk@6`<5)jK7IXN2%s#j~Cx_z72==&gphTEZG zZeF&_syZS40+D&BjvONgX6EKp)zycX?8!e^L!ire2$hZo#WX^#gY`w z00=3~_t>Wsg=V~S5AGQG-(4%wQZGJ(Kt|9tf)(oVyYqX!zPYX*?Go1O03RE&!C}cR zu73izkE#^wC<~=3i@Ii*Z z4sg7^y+MkKioe&^UV#vV#-=6}Odv*(L5oTLU` zwK!-^G)9c2!8eg_q-TeRT{-3CUK$yE2QPy}hAdv&sKrgBvXx?#65z&d%4amvNg1nz z;$Mgyh2#yQWJ6KOa4j#+Q;Us*#hj>{2+(JT$2fKR*#Z}BlO6Z-YM~qaiYoKx*S@Id z8eUOLPPTH!CsP};s0!?J>so4WOFtdia9I@R{6FY+NW*Mj4MBl;S(n7F>Al94{y#Ox zCBhPEiAZ(0!XfG77+|N|x^(+z4+SD0riqxJtCUL^T6V!?F5|br_d zMeotn$#!jcBv&rhd!wSI!E)2%LT$VfB9E>($;tS`Ca1!Oeir+*-|Zk&;!PGe%A7g|b0EHH z@zlllYJ_qMFb)F4*(qyjQ)LUK>o@T@+2mjYd+eIrIX5s7g3Z#@X$r!yx^#gv#3W0M3Iavs?lLb`k#Z|Cgm!dfq!;}3xL!X`i=`yCas)D5 zbhmwhIk>n~Ed9dK%Jvx}c2Yn5{gFrZ93pa0;6uiPcM%e$TLyMIEWUGL+Lor8EFFK4 zNc#Md7Gvs`K@y-&VQm4M1#`)bLxdo)AS(2`{s2BX@X5$HdvRnNCzjqvSPKI3!=wuw zTD}3p{-U3p2|Q0~fNZXjEI!YE*8)|VFF&Jvx&-KcVIc&IlfCL+*KfPDX(i1c)+T+p zrOLDkoqtMx>(OcTggLKKZ=kWVpu$8zG)t8ov~9=kCQsnLgPE5qy2|wg=dO6o{i-t> zcQBtsM~qW7s$<)|>v?xKpf>fxEUClN?Lo(n&~7t0Y9$Wp@oy@g1z zvVZapoM|t))zzpVg9XG80U`o|fs}`@1Ek5Xg{|A7>0;G;GyUfX(A}5n*Q+Sxqy$ft zu54ISvDAkfsj32s<}4r3m7T!Le*=uh+KsCEfYvcCS_gsuUHkqpIYOb6%gA-%)H^VN z#6!%g0R4Zh4xXXfDPpK_7=p%hN=7L?&O3Cl9rLV zwyFFWzT5fqDdM1TR5(Z2Cu88JVm4j(Se_x!=iH<}iX6dyzAyXE&0+r$=eDI@;CD)t zIkhu5U6jBuq;l(L2oNYVWODWU^bXeM__JoKk71d784e$#ueC8AC<;1|P+Jfm7T1Ni z1YHJ>Wl9KwuZ!!fc?Yza>AD_1D)?_s2b7?Qh=|L$FnO+YL3>AIge9#|_xt>U1x9!@ zP<@5#xMnqaFC1(Itb_kntopxG&EzAtw94IFn<+m_vk(W&^0j?g^cJTTiWq)MhFjx* z*Wz_qLwi0p*=g^{uYU-I;Q+;jJBEc>g%C@U|GNdw&dzdja+#T#t{dL>b90y==)j%> zAU81(gt;r{+g7{+jBoo8JB_yjQ1%GtQw?dk(mD zyKCVe=Nh#nmrmyRw%{Wn=tFgLDc9^y%fzCC{))BZ>y4Tw+f*N$rLL6K6^n>gYjIN@ zV~5CZ#BZ8HaaB<<-aDA_2pB?fa7-vS?RiyI=RnGhD^Di0(4rMb+Zy2{@nxj`%Qg^z zGnJ&~)3tHv1nDQ9H!>s^07_W6gxF@K-l zcWhdOWKHbapz6Z*Rt?~Yr=Ojjy}@@`>B7?1X!Cm9*f3C4RrU0I1g1RNgiMgM0IuTT z`4W+j<Qf&ar;q->U?T*l}t`G z#D0W~Sw0z&-)IwFX8Fx46UMCO?5@`y+|Yi^=MhSrcD59~F3w$l)*QEp3J!618h6;B z&SQ(T>5I=D%6C+dF&3`T0@v$mYG;9SMQun3WDHpf#%kwcdG6z+*)e-;6}**XPeJtz zvB#vT2KU&Mf3~9AdO%;)WkNoIg>}^%A-~6Zle-@7`MMIdgbM|Bzd?eR6mrRawJd`2 z65*3)fd>2L%O)qL;JP|J+w@AOb@^)hqlr*~RtvhTB<*7l<5nO~Qt{B7SZu5#!uGXFJJopZg3FRdE7z$nk3EaAa-Pa}B& z1@@=wTRzU;APErSj0p`73!x(deRPeQf6R`A2m`ImtAxHf-`Ii$7$~XuMze6=!G>al z2!;Qs_kP=qa2}Z*?HxJm?AiUr7cOxbygvPWWt zLO3{=@EA$;F6E;PL(tFK7%W_VXFF95tpD5<4Dbk6o;aC;^-4ee{QUWb?IAbE4^$NS zFE5@OynRH8&kMIzUA}}Z#Q8(|gIyvmVyoenMr1T6SARaw>G&w{4#4?sJKxQ$jMA5{ zmUe|Y*kc_WUAVNR*m0S1_5MaiMmP!N!DCSl5Irm9b zd`y3#t9zJ+UIV?n@mstE)r{+q6ekUx2%cVAnexp3weu~ z(3swb&dbPQtB`v&j}eIJn8bZD%kl`4D1s@kR(440_4L$1dP<|SLmG{0&+|tGP@+8l zo3qOkKfjO>I?v4)DQ$-RNFs9>4Iym*9r3l7Hum;|(P09f z?Ss~spFkRmWV!PvL^Y~p15~tVqzdlkN&A$b_ZMi-gRNF|&r3$P@2#aru|&H;O;EdN z0+^bYG!OsiB#e{%_kk|?cX4uDP9R^sPY@^@E!$Pst^oX$iamriIE>mUg$_qDGK4^W@8x>K$7qY8dQDvT-kY;4x761{XL`ldFjvD%Ot3G`F@U z#aiEs26;J-Q_Ylg?7N#9Nd4;9VG;6eHzEA?>vK7?AL*<73ZbaSw}>JMG#GwhJnol# zNovyeH}7L*5hK6C*jiP5&N3*NzMhJU%_u!hpsdKo;jw-#{?}*FApO0v^7yWD83~&G zPmNjXaREC~+7H;74h0o~R8LZssLy1MjUN&g(KFgt172T!5AMte?5M}~z2JcJv+)Ij zu|?JRQ^Jy;kplt3t`yI(BF+8|a!>lIEkazdos2rHlT>ego@~fWE#_$U*ED0gUAq5I zB_kx4?yB!M%-E{G$kGdnWlAM-JP1Wl7*&^0VNl<_^nDamcS{Zt_14K?z0-;5<1?|m zjTl3j_d!#`!jPul`2>Y4|B2D`*(yi4Cy@dR_Rp#E4dq#uj8u$phFD<))2-Lqv1`mw zO6U0rxPXz)f&Cms`sc&T$EIoNwA2(Z6vbr`^8Gkv3`-#$h!2rXp!1qOa?xK{TD^>h zp`HAN7d|ZMz*Q~V zGFhfcxZrkr#zoLmQ(HBm8V}Cz#b3Be)X2L!`d&tMcwkrRfv)J1=@1A1pqTir)8U1f91(UoW7}D-la*~mMlc9N}QvWuiZ$yk9f;gid*}wWl z{%l+G;M5eK7x&53)gZ!w;IQtQQ=^?w9$&f1&NM1CuY5rveGA+ylQ#gdGgN!FnEX-N z%#*Mki%N`-@ATTyPtwGQ>dn0#1p;{w^a4xs?1VFCm6b8MB+zV-m#Z>x7h2a% z(F~^8yp17*7yDGgMIbM{?PBA^7jvW_(b+5(A4i9|EI_5D+n@@2^cfM1M{Os>bI9F~66|Aqt$tF6=V z-jh<7Fi~_0Bau`H7-M1mh8)k~3Hkb@5ki6p2d5nFS2ZUOdsu>-ebU2d@E>avu^MC#8cd3FIPjl->X7ap7?5bF#SFQT z!!=$UL7cLk`Z z#Nit;EiBGIM|kQn3BQL7sSU|Q8f%9!IkTP-2Y9fcggH3JLI8SiY58k0A!p=o<KtWLSW(!eT#ENyH@DB)@8)&qA zG2~(>wQ|vULmO7eh8m&ZQTg;|d98QxQ|@;#e<{7e%^_ftW=c*dcv_aSRyo?`nKEMS z{}u1H7#fQ60vRh7lNUgfoVK1juzNRm+0%b^JXca49$x3#jL;5Uvj3mdM(z+fqR7%bO_~;$YvmgJ zFx7I^H+}!PF5cMPh}m8O(Wfs3^CALoV*uOIQ&q52Q8S zJs%30zELXoDx0vvtMh!1Aw4cDZY`@k&}_=>*w2O2t5B}$w%B;bCx9Xh^K$G^kgu@@ zv0qx4qd%G8gJ}0Yr5~g#T%4~73F9$MC(#91OeP1a=hz~TJ$pKB2q`Io^0*Gs(ytbS zgSE5?pEAa~bv7b1ViA-n*+`~&`?2r-`O(g=pEHb`xjjB#9T;OGu`xJ%Of%KIL|u9%RiJ4(*=(T@-t6oXMgtK`{PjA3I^Q%zKEsYW4f zQXdC^9eHUe*4u85gB}q`78bj-MNlw)Fv4uy`%auH@!|9`^EQ#NP(Z)k)E1)$ozOWy z0GA`2&Ee>-js{`~y_U8}B&5@0LDWuMI%(%gWirP9p2qv~a=8GiM{mk!zFme)Jk0|i z96xVP?X97~fdj|Xj@i2zJu##fV)nJz+5Psf;9HC{rhpS1DuND`OFGRBuYYWQ*M~d; z57V6!G3M`~AcPb_{0E1YvefN`f_XeF93NlYECJA)P)Hm~la4{kvu7azK6byK1 z`Iq2)7~vfeQRCW7>myC?-gC4vULKf?V2p)<1_=ncDJ~qQqQ8+|Kp16C(^N#+)yQ}| z2JX{9Ajyh}FuPGH6!xR)?K=nbU8F9YC@5Y7s1Q+bB zj8@Xb4$R)1<0{&Ae>mA%-ng(jT!E-T9}x0HaiTzazDa?vs!WfyBp%P6vYEI#(1gRl z#(vhLtf8rO^|yD%sgC04pIXgceo@G59VqZ<|27{H_P25|a=DmJcbBbI?G~zlcb;Id zX5R9}MB2kJmSFlvZWrZ;I6>s6aE}QGji!1`@yL$fvd72Jd4>#;Z7- zKpP9u7v5*BFW6Hh;(YFSeuTTQFERk9AJbP>O4(GKLmTWV86WaYr}=Pqb3>E6-jr{S zS}a?sDns{s7*?vu(_~?vEuu#Tb#XhKa?V{@ed*&`=A~)0NFO?%nbbCO=!H2cz+RfSYOUJQ! zH&LH%>s&GfpWtIe(=@OEU__BA8=^o|+)K}P&;<`a(_QFd`c;rinEO2}rpcr%gNBWd z0M`5yZoy}HXs@7Vsg>?hrv{$NzAFlBctoP{ik4?Px9r2yZnv`1NZMaCa+F7Vhu0&T z+4r8Qmt)dqX`86>pq8GcSd^kuCi|YMWHiM$I(|ATu6~O((=Y$sM<&K$ zJi8CJE*_pTN`ZEye|lPI3`Rg!HU0}(m*p%{q%W{MR%yDkm3_m(STc<* zIJK4wG9)njb#K4ij=vN(xhtY}o0Nt=j0~SzIXF^OtS&02U2bAI{!6450HEoq=wyn; z;rxESBHpKoi{|NCKLt>eLN|TY1lI1^tZ@}$@;PX-3xGwH4=pooRKG$ zu2d|gOqe_8G3E^^1>oEGyuco*-#?+HCrHK7K8C)r!~CK9ch3(^C4!}(_nLoK4l8Wd zVmL$Yo*6i!82=o~1_x6K(-frVGpdjnc*8FPtb*An(i3PI;e+k}bJY<;O2*>V(nB$` zrJm_s(|7Yw|9H3L3vc@em&~pqhP3g~ccbL(r-Su%r`O^zHzb@fUv>JrC?!$;r722; zcpi?Eu;m>pZB!KKn=CCwFzpfiqV{$he3EU-9ojx;wrG)XEg7@1jUFPu%w$N(rwZxk z#>PQ_HBEtqBugbY@A0F+p}<5tdyflcj~-aE9MdOxkdDN?jo}72Bzf}n&{bj&Uf!QR zz(4{7v-|1}3askDu#R*Yi8=*XxBx+2D7x4_QWh@>|Ild>d0E*8`olep*@6&KZ41?U ziSqlN(O%s3_vw7gS^S@(UD9hIBnIkg>%_$BA&TyPrt4^IBy#YXgxK;Dr$59kcg*6= zSWq08nIr8NTI67Cg`@$*v87+9zKAVPpljv)HclcB{Js~9S##j(fCeb#?R44BRU5H; z6~-5I@>fb2$gRtt4H8#2AzwnV2>odICQC|auZ9Ae;U6w{wc@!?CZ+?{XsFj&!>;If zMQJ}jO;al~j8LsQC65aa^NlbHDFVow;E18TcXsCsGG>Fkw{r@9wb5Dp4u#Xke+TPY zTgKQ`c$7f-2HO#UbeYiMx>ZJa_^eEo;xTsM=w-UQrh_m})CP6Z1~ezS2W=U>!2?w3MDC=4A{caAp4D ztYfH;XDAk`KeIK~V4l}14Ro-=Av5i8&JXqCwX#9TL)=PogfV0$Q%c5J}^Pq}SgjMSHz*Ptdr5`tfMje+zKqb<@guGx6lh5~d*PV6;Ic@*^x14DAg@ zoy}J+ZOqNzOT;^6nuYpcI0-O*dfk>&ru+a&cX)1X)0oDh37TguMrFq?X1VA2(~>rp zRm5XNQ^I5s!#kG;iJmC^>MJUnL3m}gA3;Z7_krXV<=c3o@Y;?=w9>gA>^0+HIagEL zx7LkUP3uBE2IK$e(A+|VPz;t{%5PDMg{aZhZOXg_0Em)j7SddnJI~5~r5~+)E;RvN zM%!!)DoVvl_hxq{RD0k5C4jbC;N6>9m@qd`uDwf2)sl7k4570GN?Yr!b!x^=yv)y; zJ91@_!!4W|umR=-PQ^4iU=!i}HXcu6Uy7V{)3KSq#tY5A1!A zlm3^#$ZviK75^%bffCDm4V*L>4!{r|QHp#Yi4j6F*ja0(XG>JSDq21$fe1eYXIRvq)B9=b-{iaTG9K1 zPVlYU7Y_T6+J*AAYQ96LZ&eM>o@XfLc<`gaBt({m?mr@7Z_)Pp;MT(a`WgRN_je6@BUE6ue0iJ@044*d zg@BgQwuZ(v=f#JvzSl4s;S!G4p3*lpjtq|aD#+gVq~e0*GRK00o-`sOkiNs*c)19j zAa4~cX_ewQ5G@`{bD&*bX{)O`ftf34KZyPp3^fR5K}&t==(3f~C~|Q!OSx^l`I9=Q z1H2Cy1_QokWu07`DJ&Kn=4rkL20-cow6AW0nk|Cur|MPARRrsslu1%}NS&ez7$DKM zH^+^(GN3cmVYcpIx8DOBXe|-z_T%S8QLoN{lxG(V3bmk%t9G(H6vSKgtNUnO>LHOY zEu*dhjBVwRo2KDx5ln|W3QV%~3YtEQ04c~?pUq6~_Wc?`Zhh4O-SF_E|IAvY_D7x+ zJ&4HkYb~%8N9fdsxJ!p5{A^?bO?sw(cs{jrqXwUNsmWJgXT@97X;cIX$5O>fOQD&x9vmMCDecg1`ib)Js-rK@~!H z8#CXU?Ui`Yt&`&hj4=x6pM@hvglP}R>%vOFM1BqZ>d8l(yjZT-&JxfdyT7?Q!$i|A zo8XK7(isXq(83fS`NGdUl?|?QEQJVhN`LUr` zdLy8b^5=gwnlw;h`cz*`Au(guTM^r`vQ{@!hp@Ik%5_chg$VDc0)t$i+YrNfM)^M& z%uvVMl}>pWx|#;qagmATNw|j1(o$xDdy7TKDSjHNw{4G^`Vuyy9D_lUsZxBH5==ix z$>b+81}+;jF|dFqr6qv_43bprB^HmC|A9Tys+RqBKuRCZt~3;^!auvlR%e_$ zK^C>jZ5ampU0ViR5m$?lbI<(3QYZo!&j)^O@-PBh?-1S{;`^?I6An1JwCEBkWucVy zF>%Cp<_@h}p1Tm>es~g9=qQoBGbCz}fp|1{^!WwVCr0bYpE-ZgkQw(FAZ8BpBmI{o zW&JMRoz%z0S-i^8YBW@wys53#DO=5R_ekcHWRGeu$@C;%J($eH_g?i@?IU6Zo2KR_h z6dcc7UdGWp)M|>=RX|?ZcesXEvHptnqd5kB4=v>|*iMmfoBh!DvJn*FLq{-nx0+g7 zTrRyu%hQU~dI=>m@Mr;h@Hh`0upsR^>Ly&XAk# z-H`j+xcUQZ-PQ~{GfsT|5@LMGx6HWCoxg3ihOcxZ(&#{wLWAXDa`hX5DE}9)+{?2z z6XfA!t6DNO7-B>x!dvs3=wCWjZ$U&Mls5!YL@YsSC&ybi1TGlT*7I7s=~PtuY+b!W zg@wlkD}$Tr@BXNB?Pl1Vh+Aock<2Z66^f3+y%B62I!dAHTvUbDu7%GG0btpt6} zO#OGH0Pe|CSmXtHP3-$s&r4SDZ(UE0{}ke)`T1W(mqaE9-LT`qU3w=`wO(Iy6stZ= zgeuXmr_fWz^c~UDt>Lsu6}r@C%WP1}GZGSaHV||Gpn%FBkyap4@8)=y6zb|MH^0UG z`z5!mrs=AtTkVDW2c!+-FD`7h{M*!>)U!T!;E&UJzH4=&- z<5bL#04#Y?aeg&&T=taR_tl8$NzYlO+*^kD1X%eV%t@6HxY}q;)^bsvupfdHSbiIn zFUjNVGxl4Ue-=yK@&9y^mG7tel^MM@Kbgfiz?;qjr@tx|25cHTjhgk&!BhDnW9qA) z;(5(wjcbp=eXq4WaSKZjnfCte0fJ~rcpuQT52A@4t64ruMMs9*6R{a|v%(wIVOngO zi$=$RM2(r&?ND(F*=LycDGbAh+%%n}k-mNU?vPrr#B3L0KWVMiGV7_zwXE2-!LDv@&%rPRJ8ebp;ImHiD@|BLNtk z*6s{L4|(1@jr}|Ievl5nF7>p?*Ee8XMeLU<$zN7_=w=}rh0~sUNo&FRqjHnHj;z2# zmvdi#QPL!Wvie2+tSLQpPzLe?@TEX>XL;YLTrhBWPWNeN8gr&dQ37)%H@NRvS_TQ$ z4>Q@KLCalVWyC6y9hIL2)ygB;WVtPk(5kqw5vVXp54d8aAPEBPz1&~E%lkhK3wWt0 z?B?v=-@)eKbAkA`p=b@*{ez?c!XUW+#3YlMOz%)L%CH4tNa+Vj2*9laR4Et;0$=Ol zWx%5R`S|3%!2j*~qqUux1($@dqCrIpv23*(I9QEea@wF~4j>_A3A$}ttQdwAYIKnZ z2%cP=hR6Y7=#D{SHgcw?Yc9SGu-J~EGJ_u4w`%ht{7Zud5(K6_+Gss`%X9xKVc$X2 zdUlDb%&wo-7y~0swR0OavI~q=^v?h0rX>VT zYX#8nhr6dcHQ1Hx4~Wu`kGf2lH0W14y~K%hqraXtv`O;qqbDDqua0M2OGexsbA3QHN*%{Myc>44uCr+Yu=6Ej!4UT*Gh;PYLO`>SkvzRd%0t zQxbJPRHG9aEPj9LHYj>N`b!wAm$TeA)JnpZpW8IAn-}OLc^%SUZk%!dw?qD8YrPqh zr@QVo-Er;PbHs&P6o?fqnhC^nnPk`0xk0<(Ah;xqJI(@|PW6+H&va_R`&>ke8Jg zOq)1`4|+1ubm*Gbk$zvjJjkXAL^$}vI>5~>>hC&hsMh~Ioi{ci4SUaNzsWroEiZ86 zZ}l8pIdfI1AYAseiF|s#TY0hFJ!Q6mrBY2|=(Sh~5h*KarvhT}hmV+;Bn%_4K3YMb z=lm`JrF5(92Z9F=^P|{AO(-575stK#u&{teSQ=hDUR-VM&|}U)+@s)dSweq316kjq z<*`A_(@v6{$aX8o?c!7xs~`^xp=0`Dl_!ywdI73n(7Zlgq8+n(DMfSXd%N1wmfGTh zb8>Rttf?SXD)Hjh)`Qv~UmnzpD&yH9St>-nu%nTkxEIVZ9%@jfKN}3qc4yfF<5^l$ zdCdcERNdzGvNQhGf55@N>Z>1nvyY3+#-i-tgu{}ON<#83_WgNllh0E#T);Ea;G_R_8!T?8uXYTHHaAsghvh;$S}m{>S}H*t=I zS7l5kJq1VPFIRpa83uJtMzQ(DC3%r3-Bv{~EwFD^FvwdxhE{z*-BwJYqT%2ZzCl;}FTj`M#mc zA{pH>E|zzIg`3rNbGeACv1#$}SIm3VR^6Mg+h?Cj*%+ACG}M~{LkoWR{|u~84>`;w zTGgfK318Aus4Hk)6?6~$64V?NWGa5jFC#Tt;eZE;C-H@aH1Jt8Zq*D|BY#s z<}>Q%nrfIF<6Lj5@|CS~wz6(!W9+WywH9{!)q}C@k0LlIE}fB)^t-t1$v|?SwaWFg zSZ}&*#q$TOea>g3DYIt>`=t_lZLiUp4I2}^FkAH{xa9MnP!J@stox>rkdUrWtnJOs z(r*>SGnPK*XHE0rc*^q znoNB0u!R0e2}vh6c_D4Gc{W62I`!N{ORXCX{pFfQBQf@thsDK3iHOY=3RL;sU0e(k zP>>x)C*p(Y7s5(aRqO+0ND->_XgT(llcRAs3Ij5M9zVlhy_!~ah5g$UYwf~Q^?L{e zN&tG%JDtzd?fL1Ek&*F_6+J)b`LcddA{pwq&jw2xJv~E?iUsJOeO62^b zQ%~2;!OhA!W-8eRXfSN6X8(2*L$ZiTM;|9?%A3b$X6ij|?P80`>L4x&AN6hwjT)yP ze<|=B$5>(rl3d_O%LhHPPryPJIHXp0B9{R7A7IxccvyJ@IJ^E>y&FyJ!oASvp{l17|Xu-%1#`;@&D8#Oxb+?SR_4GUpTD>+gM(z?RCVrA1R991DF_XM* zYHG^ED%$xpJU2hjoyHz@ylBB_ZE6Z{CFz#c)HJVG@yp7SdOqrCRCjIdp_Y;Q0GuuZ zW~hi--BCpk{yRj(%T0OEsBiZw!=q6k5fKv4rjBxsYvERXDrRv(keZ^2pPq@r&B`Q* zu^iNy@S!j|WX&Qn=}mx}df6UQ?#spv5Img(hGH>bVqh2=8{d1eJ}(7TK3CrsWhM;07^%_dVA>ObH#VP(WVBNm<)biYt9-pdObE?h-(YK{PJ(3$Nd0E z2FYW^9SLHShm3aLA4Wx??IU0^YAnssC#avum)YMXh zbd8OT_4W0|#KZ&z{ZIrQuM;2;2y_@sBSGKDh_hB*S$)0BW`BG`Ljxdjhm$A<|2i2k zf&w6fkk?{a|JQFxuNIf3(>QDa-{2ps*AR%0navv<@MB+nVE!L}bIcl3H(|ki^|){_j`x zncx66E0V)*qj$f&t<~%C4xrNR&+d=g+8P>WJA#W<%JJDOk}evns_X|6=*Y;(fN>BC zM8ab>8Vti`cHl}+gT1jUlei_@!oa|2az5s>-;z>LP!JRpR960Xu{&XJZ{N~-Uu!wP zbODAKC@dUc+FlqPwE+hnOCdX)#(55?=*~T& zX;jKCR!XOauaoZ4*zX#MYm@Hf!@Z8O>g#Xv616J7(E_vs8(S>^N>x^#0hpG@)vU2- z#7EQOZkMvSV@6{h)QzO>g~`@&yG z!Mt_$Y_5@$Id5)Z0bmp@U3yg1)G3VmKmO?K92_iEn@(gtKWr-%D_hR|{)73x+y3?e z&A$7*oy7Oc2p*ru&1kmJ=H}*fxwf+k1ugAh!|&qaeel$3kxElnBtk? zdk&56M-2tp*}B(9i}%;ZiOefTMn;VuO|6}gj97e~-~>J!4Q@V9*9-I4si>*VEiLis zbq3|+5Eqit(jL4##PiMp0B=-PlO2TOPBqB+yVFj2PF#Xecva-&gzt1tBjJ%e!{HITOdM^IMIHU|XZ0#oDEO4&$A zgy7_ql*r;gWejZeBr#{a!FSFYvp)yqzwFi-7jyfuTx{|2@qkwP1GkfffPio5$#|Zm zU{HmA50@f7_-g(GuUln{~N&NT&i45w+bk2#yt$xvp$R%p6L%_kGzV6!STJCUw*1> zYI46in7s;^nwk=X+cpl#L)(?LarWS>%e28hFUa(oGu)KryA_6GblCZdj1|Xs3}S*s zAcSCzWm+vMfaKTZWMy}v02!O9(;HERF_H0_%<96vT%)_WXA0(Vp>Lxv_WE#MMN6yI zXecF_*_fP+OcO8@f=vhy56=~itd&O7;khPBeo-ABG!vM~7cBwQihZ#Z$oM=nt<9yS z(r~K}{*H=@aVR-0EsGtjo}6|3HdywF0AS{Pv_R#b#AcZiXg2Pn4$eB@i1vsVNq~B_N5v$}uFJOCoy^aW3SYB9%pNFiy z>qX4=zkB=E>*+jm{wR_u<34&Ysj1V&ODOs?N!F6ry(JJ6_YZ&bi;E@UQ1S7P zzT%^z68WE;_yk05U%fffJ6gHB+y~k@Uti# zeP?HtxlOcnC6mTc0fMN;#>U^je}g0SdcI%2_LwbHD2Tvir>CJAxDq!vFxXgVum>>| z|J_dR;d~u~X5*yw^7lEHpaurp+)Q`Es?32BBO!k06QF~w4`%~ka&2$VHo?2eua4!4 zYI|NzVQIOnPPaYP#QkFYZxiSBd5{s5S3j?OZt<$0rrZV3G63Z};JD;=Dmmv7*7F$7sySUBR?+1TC^p`oGiXv~5Iv5hb$QuCa4z6U5r z06=?(N&A6O&p+~*lK0cn=%~(fyGz>|>lS?Re$cs!i;2nMNJ zHFRyt?TQD<@;^>KVMlLmZ7~}U`}_M#B{Ow(!~^}aKL2>$5s0ka>cPp+?+v7RTrHa^ zATZE+x%DxeeTl>KuDT-|X!lzpJ3BkKIfJQl6nld8FZ|9u_WUZ~k`(A0DXH+>@H()l zNP#~WWi298fOv#H{AVTMS)j99Tc1EU@^9AxJjPj7ck-7UCnqN`8T-@aiBFR+VM>2I zO;cl|6=1~e?G;lWdi4hBV7_j|OPlO=`-(N@dV4be zZ{R>2)WzV&W@m4YnvU_g9C}Sy`Zd*r>@IDF4ELZ3fJcV32ew8y=^f zFb?sc(fLw~yYstdJx}dfb&VG9r(zD;upsaQo5d1+~lS}D-7u^f?c+HS92bN)mE5U5Dmbz>$^?QCl; zI?Y=Gmvs#O(_D?YHlSLqudi=x8Fnu!7)DAlo*B4GF}!?RZ z`;upWCJ+E64$r7DlSvbnH%K2j?6(GgipT2d>HY2K2>-HvbGq(*-Lx$32w3W0faD-j z4GIbZrw0rTc(FO{jlHSj|HdUBEHq5q(t*<^!7D8(L1=e|fwTnj&47r0fif>IFCZYG zw6t_Q5&V(qb+-#7gkGze!~5w0d{9Wp+ug6CqCN36DiL_xSHPb$eEUskLI(?BT|r`j zT&NBtG62g-M@>D~=Iw23ds=BYfB^d)Wi0?pD~ZEaPei1v+4cM-vySAuGXZ)E76ez} zuq&_r7ZG9;%smPjHCClf*v@c2DlEu|X>A6QDI_Qe=#PzR)Y@*hQZM(XpVzS3qL8FB zcxElw+OFozL0r8(l1aet<#D2h2x-A{&VtGs=^q|`nkx4))MnD}M%e92V$}bbZ-$PE zDZyZI&IN(cM}L0xIg{0}A3a^hSUU#9|1I_B!`ykCxNJZU#zT*ej@ns}A&Q`$3ArnY zi$f1YE4`Z6^eQQQ}~Y5rAIWJd|&wfQ=0WC?u;;m%7UR|awz5fKr1qFRetJ+@TKP37WC zFz|w&fdN@-0z#Pd-_MxV%uy-i!x71(b6vI^ds>5B51f^Hoz>$iviHrnBtu2S8y~OG z(q<@#6$qJi7wT<+Q1?WFeF5!$+2FwFRVzuqA-?hx)@e^4;n>B+#0MEM8)buncOJO7Y(5ZV3@%!<=ayY7w;LUxY gL9Our|8LK4R%H;adq)pjz+xccA~M2df;xWx2XQ@4!2kdN literal 59875 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 diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-30-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-30-1.png deleted file mode 100644 index dd4825be16e066022e10e148bef3d1f7ede4f813..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68086 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 diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-36-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-35-1.png similarity index 100% rename from 14-intro-bayesiana_files/figure-html/unnamed-chunk-36-1.png rename to 14-intro-bayesiana_files/figure-html/unnamed-chunk-35-1.png diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-37-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-37-1.png new file mode 100644 index 0000000000000000000000000000000000000000..f47b3408ffd177dd4147529be7c6cef5ba8a13a1 GIT binary patch literal 13505 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 literal 0 HcmV?d00001 diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-38-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-38-1.png index f47b3408ffd177dd4147529be7c6cef5ba8a13a1..6044b091560c64a7093c9b01114ec92ca67e8ee8 100644 GIT binary patch literal 13266 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 literal 13505 zcmd6Oby$?$*DekWF@U6$gd;VCG)jsL(jeX4Ac{ziAmG5ztssJ=q|znQqoji%5>k?q z(%o<#tk?G!-#Op;eb>3pA6_#&&wAGEXRp2Pz1DqiL)CA|6GP}ASXfxZiV8P1v9Pew zSXiJN_}IV|_m8J7z#qrzD%!HZpXbh<1A#!;*w{EYIAAas7Z(=~4-X$7pMZb>0)Y?` z5)u&+5fc-iKYyNtgoKool#GmwoSdA3f`XEg^1_7+)YQ~8G&Hodv~+ZI7cX9AFN zU|?iqWMX2vbm@_CMGT}E+HWyDJgmV`gJKO zsT((LNJ~q@;cyulnVUCn%F4>h$;rvf%PS}-C@Lx{DJdx{E32resH&>ox^+uUO-)^0 zT|+}dQ&Uq*OG{f@TSrGnS65e0PfuT8-@w4Y(9qDx$jI2(*u=!d)YR0>%*@=}+`_`b z($dn(%F5c>+Q!Dl*4Ea}&d%Q6-oe4)_U+q_j*fTk+_`)Au9K6~y?ghZot^LBzwhGW z;_B+^=H}+^?(X5?;pyp#Kp-AGc;Myb7#I{36dW8J5)u*`8X6WB79JiR5fKp?85tE76&)QN6B82~8~gb2<0ns^#KpzM z$HzZ?`ZOUS;n}liiHV6xNlDM2KTl3hPDx2gO-)TpOG{5r&&bGl@!~~hW@c7aR(5uF zPEJm4Zf;&)-piLSU%h&jpPye)P*7M{SX5M0TwGjIQc_x4T2@w8US3{NQBhf0`TF(i zs;a6tZ{Ac_SJ%|k)YjJ4)z#J4*EcjYG&VM((df5t-@beIuBoZ1xw*NerKPpCwXLnK zy}kYY`}Y_OrlX_d!-o%@ot<4>T^~Pw?C$RV^yyPiPfu@eZ(m(}Y&>6w|C+1c5-xw-lI`Gtjr zZ{NNxE-o%DEiErEudJ-BuCA`Ft*x)GZ)|LAZfMU z9v&VY9UUJZpPZbWo}NZ_wp#-UK;W!k;EILC5PbIUT=dMk4HniVEXAAB+KA-k6z^nu zo0JtoS%Z%?i|)I3!2bB$FW!VxOH6#zs7wC(cJuiMK3W;`5Plhac4KnZW|a`}**u!d z{HW#*|9}qJ$cxe;j}TNe*Fanss}-DT&}?{*W3mp!b`w={t{dqHN(%Pt+>`9@7albc z{J0z4mp$&aIG|QP?&hxM8E;DtClA+M2H`_LWuQ?kG!PX9|Nqxto-JHjd)m9JQ;RaR z-F@sjc7JT{v~bv_kB^~qE_LVqOtEe)ky%avnph01Tkf7y^8C`lKmTkg?cp6Hk%sDGQqiLpnuSy8C{+p2JTjJr^4bJvgqb zn@_D>sjnVp?Guvh*jA&@_aFnVS(Yy|98mNZWdv0pt=fKbCDE;gNWu8{JI5~G>KV|h z4KbW`wOcq~uhRK(ooO%K_h7W2=SAzn!Ahv0<9Y`VC1UtVgYf`$z2-9K?X<=1j(ih; z5=unPCgyN^vkGuQ$F_+smbYc>kxT97WXl<3`puiEmaiIlsh;FT zg4FIsrDjp@IafNq)WD^4JC1Nw>rtyO9*#eAckR#(5+QOB@GE#`5;R{YAwFyuu&h+s!hHO*c(sCGw_41N%$h?LodWb6!b~?(}g!^X!y# zWWvpy3Y3$_gOG@+lA*h~oWISm>1))$n`b6CvLXQvD zy@BL#zC<|)2JZxev?gxAN3g&OlR&kU|P>aIAf? zj59gAP6Up^2g|9O(9*6r?O0=a@1X5!wTyS0r&{j1? zSoJQ)Gxdr_?D2t1RK!)oU8Z6?kh-`giW_G$Ko*Xk9UCz$Zu~lPcSE+<__BD44nx`S zXinqD0C)ev8I#4!@p=*y1ZG3B(Vr;lNEUJUi81ZDHv)JTxA27CTZa!&`WSWIYpje_ zPjmOjH`M0JFb+Y9T_8cJ<%u`bgfT;PvcWyoQ^K+Y@!KZz-qUQocb?qsdRJdY;DjbA zB|Rb~d`nVle3Kk;O2|CQQ#E=w!6-TK>I2e00<`B*-Je>=vRN>&$sq8N(Pf|TV(nzm z&$TJbf;3CgY3!swX_DAatgle{d_M8GuA6uVyJ9;?K~xP~fTx@`5x$C{WK zY?!6N^jS+o#}Iv}ebB^$s$p=%0-vA9W(cAo$DkD2%b&bJJ=_fskG3MxVaw=ohaHSN zl7m-PHq0d#lRXQ=wRP7Yu|Kq-evnDA)J$iXF8dja*yVG+i2dU(%3|6G=8V!~I5OVE zjqX9klVOE+yNix}nNwP?@RfnuggpgHu7t!DeOO`v|A`orlww|I-vfcf0kY?RY*u~& z>H>yH?F_$j(7tEjdzOM4VBe(<*V)Qt+Qik`!fc0@*$h%6jh{C^;V{-nPfxME^lmog zDP>kXDcs%1b*x0%CD zL^8B($T9u`?^yZ>l5Q%t)5+AQkI;~RlO@;=R)7)Hp=e|hAFe08KwT!NyP0}FM?TAU z@HYUo{|x}X&U3Bt9J=OvRJRz|KfybjQ?h(CrX9AnMYShuFjW_GujF*AR%UichR4ss z>e^oc*)f@)DPy~L{^X6*4%E>iv4BC~(8vaREb3Rp*w(nHl}G)(5|16dC(X-0R2OMb ztq&;3o^9z07yL+)PgeX}xds}=YD(_=$|#GA>0kY|^%b{gF_Mx11TEbQAT6&y*$_d?uz2*@X1!Nw?W;Dq)hBlhrxu zp9%)C*q%}QZNRxgAfMUH9X3+hS5 z4<}bzlF$51 zWJ?Z1(%QCL|M>x zFKQ0RQ+>VD_Vgj2Ok=0UrJ}eCK@ZGJ3)(Jf{@VU=##o*&D~{6-*(G^f7x~bf?;l`5 z{&Cxsr>naBL7{|G(sEgsfqi`8pVfidUDv1&Yb|BH*8^6Zb^nBkxOKa%hSheRrW{c- z50P+&G9oAVF9e}NbiVM~_ijpZC>zH&x|7hdLbab9Tw!5d=V(H+0K~J2*DY4K%${8i zQlW4$T^d&^Ub_a-iKPO&S#?3FUF#v41v%X3dy1Cq!BJ11sb3A^kBhV*lBGiQvtHJd zvg_;vYKWGz8lr@^&Hy(%*lg^CQyQouC{1)%ZL;O}JJVK>M*W<*pTeuDCve5Tnkkc`zHm{(btq^_ai!}Z_2-zVmN&c-eK zMu2J4Jg#cl{*-VNU&cz3B8(7&|3sbIo}3lxNVJV~(h6jzkj(In>o%7l$l#A#;5OBY zQ>R3Vry*>uXBDekg+{EOmpd2V@i*F#;l`0_hOfzRQ)}Q{=T>DtC3b7)JX}Rri4fl1 zxb)@mFA%uAw#K?qAXu(Dtm+#4p*-05!D_5RW z%Gmnl-$DNoRYqf|z+9Puz{rDL?|&>Lyv(L)hP{@*ynvc~= zP^=URTYMEaLy|bnDijJL+463`D3@?ne$36Q?BmH)lPvl*5W$$!K*TjfnG{0rr^5z_ z-lD{0SmKycLQ@rrfs!+tkAN2Fb_;3{+T= zKhX&PT0sT?c^Ys^kr)n^lKYVgbVR|-mS@F@WUWD|17aY}ISssI|9zh5=wVCZsF4so3y zrcI@!VFkuUkt7ECn846g0hA(tw{?2#)8$sn%`@!TDudzc8LK@1gtQ^JG=)}9Nka}< zaqc244KrB2y_7W{=AZ5U9F0HRE=&?hLjpaXL&9QDe_U?_>OS!O9AzTR!=0>VMG$<>f_)jcEkvJHX6l@OB& z*0SD2kM`Sxuj9tC^V?}#ot?uMTs+|yhV;pmCcGy=9D7~lY;kM%EJq)1q5=c1jWhJg zJip_bvx{LX;e|wGob`_H%*^jjeM=b*m6ojNxYAXj%7}CL0!{OMTY}?1jP`)5lZacV zN=|Q3U-by^(J&|aUR^RG{dPSFRlN^s?up*=mN%#FuwITC8t1%-E>ijBnR)G=Fz+=S zkNZEd0COm;dG05jAOUJD!@zrWBR6%n80NNG_ld78&zlczjjf;h5&u*_wCZuftLo$nBJES?6`!wiR7&WxV&sM@A0?E`KdpZ^s7E3vC@76gDZ#}fv;=j7dtbcV(|AM5=UOdr+i3KP4|c3m7a=RP7{1+ zmfJ%xBO-I>Scw{r&%toIi@q|PNY;?8g#VK71mu}on9^ALE}j&w)M_??=X-E#xsvH_ zb;DXf7KBdf?4lATmj>PbxWM~l6ao$b?g!1e){E&WETc2*P z4pi7&;Nf)gXtcUjshnr>c`>t2e_82v!j)~iWS{ptxAi8KpYggJfouA0BYRH?Qb1e= zO2~8aMsCNWxr>6nhRg6HG^laCoLBEn&YS(PTgZN)`HwpykHlwhnK|`IZGBlQWtz`r z%=2KqzDM}b9@NHZtg+|v?HN4A0-##%gD_Nk(J>KQ=(5;P0nvpmT9d(>F-sl`Y(y3FLNJ}%= zBV8tznxCsQIQ9eJp6Xh7f*Bd(f)2thS&wqPeVeq>f)VcCxqc zL#)blc*tCWL~<uX%6F zrzFlCgmETl=1UZxMnk<1WPKC?F8Qt5L~m|8#}H}b#Y{idU)|f|I_2CU=ZH=N7r%JVQ_xL?F5Y``hyM8 z+~h_Ujq&D#>KuoA*LPopcX^i!ySmya19%|2t%Eu2f<27ih`{k93y|1rq`TXfvCL zwx^EZ6;d(2gz6(b0X3>RGMT-R5zmIV07%kgHbGI57Rmc1|5!0F42p^iYDBMgvmJ@J zWqY{T+y*X$Gy*8($50FHK{ocxwp3P4S|BvY2QRBI%?yy`bZ;Dn^l(vF!YS6M_o@eO z+g%qBIBXsoPLl|R5GY4mYz446xaFoMTRdWS@534&XS^E0J*cb(R6f^;^c~pkC#uYn z)gjB*E-J%COA>Cg_T8nyPFH+IErcc@eu0V#RKOqY?^VLr9R}0E8rts%}ufqRzVH!X`ZF zLxXcdw_yLpGb;OM)5Lk`3jf^-9sbYpPy)m_U2_sy#LQm-axaih-{%pP0W+Z?jT~eJ zEYyxda4t*K#dr$X^Bi2ACoNW_B2xN4eOMFUd=>@xZp%xg91H%8Q3>Z zn$GB^VX~FIF>?=h58agcuPziIQjN?`(fop=Y-Z&Nx)?~4M2Y_AuYZs;#ZSeT-lJ{Y zgH>IlKU9)5WgOHn|Jl%WmW?N#G*eZZd=@1vEW7X*bxHQd$l5x_9cV|0YMKlN$*1U( zesv>T5D9rxkDTW=84g`Q4F(V94)~+fFy)XcVfP`N*6h6llwz3Wvcb_;1Ik@|Vm<&Z zb4JM0reb(%B3CAS^q*!))9zE+cRSF$QX;f2YjKQvhuQ$>*kTLo8{vEeGdG^V0HQyS z&@Epj@5b;!BkP;9#+_0gUZSank|mHOM|h4F)Slly@_pIPnq$BloDyG~)iTOy(;Q}p zXdUs9owtEMy6y?@=gGz8P=XDQBUc?s!-I_O+Wox;lr?u=rFF%`t2_|{B7 z`(9B&$Kl+wm{s3Mr|v7)1)k!)y<({d1Jk*E<&W#SP|Tr}SFj2nXTFwb3)Fg4EAgt% z*uEiw6T$lUz9BQ0AEOV=Xcj!Gmz`?AOmSDd5BM`sRUL&p)2xYh^{J~d4|ZZY%mxRE zuVwvQk(UXMdI}Ei&aN@dzW=zCZBypazH~317}2DOvqK~gkpKbgsr@6dk1;Ej-a10&l}}(`5_KP%OEfOpgq15 znrF-=peOwYm)LGhyjT6+pZq0Xow?KI0ONZ9AXWaxQ31(1apz}kzrq%X>x|&6Rk&!* zMBAj0A)wB*K&sXPFvwgGxkZnHop}PAwOf{o_&bvh-6Rwc{-Cv3q)(QW0)A8zpH+Kr zIxItx@=a|=z_yfG7a&7%ii=?f=az-neIoF%1mhW66L(*-s}BocTTod~dMiRMfKkiq zZO=^UlY?I$(VtD9(t^P|==pAL*#Dha*44&n*=uvCWxO?g>(0^`4s<@Jl7OXdZE zgj+y+i>l^sNWJ-YT)`Y-Q%j#o2L1nvWZp8WBf-KVGd(*C@c$p-%xT)k1N}SG9K0*u z$$MLmx6D#+^<-7CiEHQGZ<)#FT(I3wrWsbV=2Y47QaX%0jKw*?c;?~VuWZ$y{(&Tt znW)}~5gg?pRCNtqa-$NnuB`3X;QgFv5PhbK)ymmTtZ93Ey0?Y5YSsOBt{Gs7+NKm> zI*F*V^oZN6)+x0+{!Ut>=}33F>oi|pkgy7oUd|A*H)qA+`VMHJ5?@uK6^=`W*hZ2A zy=^GI#4uSx_n=h%OqSIEd*Av=Z^C3}PIuWQyu6!@cR2zSu?tIHM(0SeZ3imILXyh;5!FR^;rI9*sx!+x0`a4fW z2ZS+~Pv~CapS6WAr&f`@<0jpRnFBp}>Z|{N4igtdDSu`x@bQm}SUUTk7pywR4?P4T zaUQIzt%TG7_)y@3ql9S^tScu6tU{JEF$Rz_|Hcjd6NwEF)c-_cD?Q=iE3Tf;c&C@G zVs33?5-))KSmieLhSNsG>wkzv4qJgsomRNJkQy8OTP8WjWT`|B~H*;o8qx zisCL2ASIz3r2bti{UYaq_xi7BL@MU7cMVlQ)@3(K{vJA2+dv@`791)s;&b<~#wHNKa9Zi%pdJQwP)3Nfe z^l8BDg5mTKhRLmNA9n*q*Ycoz9?w;!J1+;5#5qiPNOc7K@GY#R!CTnxi3vk09gv zcV+t1l(OFm=7t0sRmLBYafiqXR))^!A*((Rb<8mZR4ETYl>+l7eM2V1%f`7F4E3b> zfw0#}$8Bu9S6}9j-%U!0st57Ttl@kw$C@9Q%&&IP^%`6HJ+>KMMe5ZuG3;2@`z>q& zOtRZYfJv6m>~2Ztrva4cV`ZwiPftL^2L+ypbj70HatK>r0EH4DchbX{Rp6uPigBm{ z{yr%Iy@O3X+$jqzRw2qWm>{(zvZHk&Kh4;wiRFXCAr#>yhvw5<`=1r1Ee-mdo`S1 z#;7=DWUEEBwO!Ne>rv2C54Vy#zp~miR_2$0!tq}UDF26@b3s`5z9R-?Fkw{ zXWn{pVl1O$-Gp<`D{oK8_I%I*^;S#Ak7{WW>D>A9d)y)J%hMqbd%a zOwxx=3R6qQx$9tPg1)jy7Sg<2)8U|ark|{rO=O!sE;DwZHUv~3uUy@7wn_+1wrJ|# z9?qAW0`d@09h=vay7{vu8m}iopQ-1HWzYm!W#pS?vcK8-2X>h;F&rAx9r^%2R-K(r zW|Thy+JFZXBD;Xv*MNr`&vq_>z<+`+bC4?XD?lx)soWv@Vo3y{=f4A?mxog# zfWw{>R95N}Ar@K_A^=59L2(hgiY5RgPxKtr7E20FeKtt*riF%5#Bz{QBnkyvYi@2u zUuk`23TmUd3I?<^hy;HrzjHW0%(=OQ!RRbi)<-l zyjGa+BYYx!+y#Ct*!CZp#L%KI6;(I1l zs!$@qML)b%vahk=s8irb&Oz`c0HLe*yaDdW=Pm$kVNi%MhkvRo80Q}-XlB=V{MK^s zFP0G%8NPQaq$gj(6tlwy0Ohl!!ikG6(E<^+s|~q`zFtSLjmM%LiuDS~{uE6GoI2rk zuBZ3N0a}{l8xyixTx3LJ3t1+ITGExgTt;5j@oe*DW%2mwbO<>99kN3ko9|7{H(&I@ zX(f&0=~#S=s--=$_J%54C`8>}V{hSGJnqHjo)=rW{uE(WL@iI$hwwNx!w1cfXZrat zG~Z%G)0d>+vK>v++bcQq)S{5AZr}1!7H#iUq&&?jrJ*9^s#lt*Mt_y0jl8OuLqVI0wBt5 z=1yjTz>x(UpG{k328U;cC&=`5yUQGRrb&awEj_gX;b;_7Y4}O?cJXkpu!~>y$96&r zI3JWGp5jehEsfWHj>NReZaXz*o>S`Hm<;oz{L+-g;h<5L=PK_m?SnJF(-|(H1Q%)< zUbDk@n_XM7iF$H+<1x!>5oeD3H|F=?5B~1-)qbqcX>gv2B=@+md{gvb3;coaYD)g_ z3ZgRNdK@1Vhhjrr6dCWy&mB0&6F0}~>7Kq2b^_lct9{07WE(EqYxU_+{T+%_rCnwQ zM|Z4+PvY3~!{g4_TDk+xW2R2PF#jdBL216{>2B6!ynd>N#+(YidlxD!FBy%gr3so{ z=T+!!`czw^?0Y9Fkf}5Yw;Hp5X_Kv*Kgw=82#7#TFowVwV?uP?UQAZK?z~lGn(SVf zGGY%nP82_op1ozDe8b4;? z_SP1=B{eVRvDJ=Sz_DHJMrtfI8_FEc$hl`SPrhO~KclpNT&jUtye)K;XTqHz{J?ds z&Apr?UN4AO1^+E7>}5Kd6>!(oT~NBqn2<1_13d~csdFjqyONhM)X0-b!urE(dKK9; z4%p>SK^h~9Ad~XTmybumk$Odbl?B)PQUsxWq7*JoTrQ+Pq>JAg#((sM)?&Wo^q{Ey zS~UBGMNPYZ!&S(L}UZ@2b6FM$5u*8w0XYvgTpzPSB(x@8g@mR1pe%9?@?h zsJOB=m$IOFSI(lJdwDqu-AHRPmhOPZUIiy7hDb>6CFc0t+#XyXZjZ!0sk(|B5CKt} z#`^KE2)yI~P8LmYCGE@|UWjHW_8Cn~71S_a&b#7lL9wX1Rm`c$&Oru|xPq8PEDIZ^ zOuh9-r}cKZ7FOZ-K78o0nsq@Q1B?O>_eAcn_MYP~)u}uo$WQjL;~l$>j7%H7BjL6B zWT^q{97mw4E`sgST zbZcAdhR?TG9V@BEg9$+-X_@u?)ppB|?Az)^He{o?meK_1#q@f`IJLPrfEV1RMHKH8 zopU^3RrT&$UH3=NK526(e!g3e_qnlSpE3B#+QkajfjbROK{+Ps)h>!0>Ju+NZV%rd zS#sD_S?)7UYiq-~%9O}|a4jo;nN@khtl@#Rtn0(7dA3p@))JoywqC?mo7oS$q~U%A zJx`ojJ>Hb^K7Ba%JpMI$6tBp4j^N($ph*POt)feZ~hyuSUi;r74{EXrpwI5J2AMZW*= c%PB#VGr^h`(Gl>Ul(4WAWpCXqf}8vQFDla;Q~&?~ diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-39-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-39-1.png deleted file mode 100644 index 6044b091560c64a7093c9b01114ec92ca67e8ee8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13266 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 diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-44-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-43-1.png similarity index 100% rename from 14-intro-bayesiana_files/figure-html/unnamed-chunk-44-1.png rename to 14-intro-bayesiana_files/figure-html/unnamed-chunk-43-1.png diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-6-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-6-1.png new file mode 100644 index 0000000000000000000000000000000000000000..3d01d1bf75a5695ed3327fa7994d888614436b0e GIT binary patch literal 9788 zcmeHtc{tQv|Gyc#vL)pvsU&rah!8Qlm2y{9ipqK$nQClhZ;TnG+?FWHlC4ElcEw;Y zgR*3qN{n@86k{1vz5M=oe$RD1-|f1d?;m{Tobx{K_4R(Ab3W%2eb(lL zw3M=xkdTnH^~q!Bg@lB$LP9_b31NOuAddHu-{?7e`oeL36951Jfk0tlVG$7#QBhGb zF)?v*aR~_tNl8g5DX9$`Hf-FuQCeDBMn*U`uh3?1_p-?9WpdDG%_+WHa0$d_^_#| z>5(Hx%*@Qp&CNj|kcEZC(W6H#EiI27J7#5Nb@Jp%YisLMr%s(defrFqGd4Chwzjrs z&z?PZ?%etF=k4t5E?l^9@!~~$dwT~5hf9|(UA}zz%9SgQj*d=FPR`EGE-o&vuC8uw zZomEZo4dO^7!3CC@VI*Qs;8$X1OmBs?b`M0*Kgdo0fj=nyu7@C^P|^o)#*%*@QJtgP(p?B~y)=j7zPdi5$dH#aXY@Ad1~ zZ{ECl`}S>qettngL1AHGQBhHGadAmWNoi?mSy|b;ckkZ6e_vi+UQtnjLZK=vE32xi zs;jHfXmm|YO>J#$U0odpgTZ34_4V})4GoQrjUPUI`1tW-Q&UrOb8|~eOKWTEr%#{S z+S=ON+dDcsIy*aYINayYpTB(h^7ZT2uCA_c-@bKsclY%4;PLq0-rl~xzW)CHfq{X+ z!NH-SAp(IwBoav^()aJ*fBg6{GBPqcI!Y#!$HvCS$HyloCMG8*DHO`o)D)FUot~bi z(P%R>Gqba^b8~a^^YaS}3v@c2!C)|%%*DmUrKKeni^XQMmzS4091fSu&_y_DR-r&-^V>@m;YWvp%AYwG zI-@B*!IZD|xQDv&sl_t!+Dc1%qSGU4ynxR<^`^^2u-Jww z8lgR!Za{`QX@(_oL<=ZWY>N#SDG≶WgbrKzk&zk)lwd2GFv=4$~!j6Of8KRw$=V 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 Nanj~QfeGyH{{Yi@`w{>E diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-8-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-8-1.png new file mode 100644 index 0000000000000000000000000000000000000000..bf2b9caf16de4c1b9e08b04195aaf1c3644eb93f GIT binary patch literal 19561 zcmd_S2{@K*+b(?5q$D&@RB|hgD1OAJ6$}2kAmL8@x|t!83jeHHX@H*+RR67) zZXT_nd$-g!V(%;#LHSr%7*ysl>)39Y`9(juOyA4q)Og2)W3FZrrOrgat8im~S5L{H zZOD1f`$}r~4E0S3b#?W4)~LM^<=rFpk{^vyRTDgBQ%3DYT=T`n#KdaoD*aoB?XsJ7 zKDMvoFOtczxsj+AELx>MXf z^1Y_UlhSM^*fPSa=|1V0d-Uj0^20}u^j=GJS!U*FCcUS&{$;<1lapn@p2}z2fhb}u zDo_6(8=3$9c#=q=<$vh5I$z%wSh|NivgP_xxu zJYIQ*CwKgt=az%V?S{6GRy3OD=ejP;a@MM5T3$;xYyM*?At^~K-AqGMQ&T}fVYnrC z4gF3L?GGz4sc#jZ6k_NqT2h{q!a_pSw6t0~PQ}WFt-DV9{P}ZQX6{3W4sG^(^ytwa z%g6lue0}nD;q4o$b?_;JyA7w^F?r^>6N)EJyw6-`K;>BSa8Gl#9lgUoM8Ndax92jn zw6tqBY!|ZX`r_^F{qyHfDKDnM)_k|>R|-|J@=9D75qH}cslGQ`(o7rURgyVngHsHv zV#YRCQCm+9HE&`$5_DcQ=++wgp~m!bv-I*HzP%hArzEp%2amfgI(rqqb(x#wyZ&|G zmK9hAbKe_QjK9$>_Vn^%7Dsgop8(}onArGE8xUzu~~5asO$X-{oGW+^FYX=!;fz*r{b zOaTvZ)srtxy>E(%o6es$GU_YxVHIDTZbxY2E(Zn%M%s&~`l=5q$7f_HOQu}hMrSA^ z7b^7h%6bgjp#KeOYs`hFW_Y#HV8zo@7m1@XQ6oF%d=RhgfO3Mesc8a*f2b&}aghAe z`uJndJI~&}{{ zNcyG5I_jbOq=1=b<@#hEx^0%RlCka81M>2b*S4}t`0f;)ooiikRa8{8Xp*wD9R2?C z^1%ZKYzOMzXcu@Kv+ANy3ff-8$D1?_M%!#(ogG?mXn7t=XsC`06G!&QXn#_^Yw`UZ zXMA^7FNTDNYpSTIT)w>N(s{Lq0Rb^r4sG8dY`Z?+;x*IYnYu@hHiwkOWH}luUc9KC zT%Y21*rUz*_^sA>majr)r0eD3M?=b1&lM>vDaHC!zHJ=rj!21BIQwd5sPaUEuP!^! zhoV}`6fW+-xU4KyNlbi7D~aw|OiWS#L=1jru{&C3H)FYxA3k~VBs6q;e;28;y5V{o zMN(fshVm#d&^Ujkp}9h5XD54M%0+|suUYkvAUIOwO~oXH!@ib<2<9&>&iNF}JPru( zlvY#>usy1YpOk^-Y{6({SJyns%DLBnj=;;ZH9a3cexzd+$eAB4)pDJ=_UTk(x;eAo z;=-Kq(hdQWCzOGf-0ZeH?zo`2$w4nKFVWPJ3%uXWVj2x#|t}(fz@;kB_ zxyd;Tla2j-eJw6i%?@K-$F|?cm0^Xhq^7!Ca74Gr+e69l%abFzHSsFKc0*0c*X0!z zYbu|eX*RQ~P1J}zAN0-QmNpZynuYallT6C%6qkPvUYEv{|y# z?ida<1PC1WXcKL14%-+ zP2HvLqpIorw^Jkos&NTiFlil41%A3yQ}g4WNOuw){@J(duU>M9q>9|bZ?33Mk~k0iB7MOIdJ7sCbB!u|;(H=!`O6YmqyWo#xz z9B=~J--PuU4=~EqoR4EpUw^;oPI=neoz+Sdq|!Lg8mo%bu#Jp?rCUU7i+)TvuDB`D z@9@foQAE=$U3l6qdC#6bDu)6ntg9qxsg8T%3`Xu70_ay#`{h%m3KTW&U%|#>TDv~; z^2TTF&u7gT;tr^mpP*0s_@Fy*#P(ckdo^`8EyG%B>&-Sj6(?*S2L}hw&N?!lm6J=W zH@RqV<;#^TSAedvn|C6Gm-Jd650hg&d+wa4udlC-)wuQKfJ$=xfQ67wGlOU~4uB$Q z9UYyMCr{!Iv~CDEvf5>;lcP$#4&yRMeR@80S{k~ftX;eI?Afz#%+zyng-qg5;%3m)0#Gqhn(z zZG#pm09u(`r2AjqC878l5C`8x4hTc0(RH5cATei3?&U8CX4&1XjWg(Uz zD#0df3-lx;CYE>V?gmc(mnFQ}wu2k}o}RiZuwBb9DCpSLckU9q9s~w5`w(C>%W0-F zFe&4wC#zWodkx+DnUu*R6;&~^Ap)kslT*!htr`jn)fr#>IL=7!-n)0No`am+SCq%p zGd2X8tGM9kIQ#N)tYkD!_Qs4hDlTkK+V>B~w%T09x!aJi#*O{VQZ&3w8$W;k9F=k{wyOSk#H4=J zeWmg6H&1B7wa`Iz2lF0u-f`Ueb-f9r;5rHu$4Ud=Vh-}Xd-vE&{U1J*-2J3(oQr8g zek+^vsf*PEThxv{8w%WNy_}}%T~oWdcc+%{;g%_XHlog zD~gJ?z27>s`V&KrS?TAyE}Zm4+A(T2P0F2Y03c%(LsqH>25_EkyL*?OE%C*R9#mZ^ zW(|JS_PE5X1Ik@D*X*?KeIA&SFC!z9Dw7XTG1>FX_q5$qJ|oL!5<^&;=c@npNQiPml4%I|i!{xukE z_)&2C_U(?24rReJg7hN4-Wez5a*_=V4egq3YC8k9Tz`JNH`VI4lw2+rB6K6FynF5| zSLkt@zO+WOxEC*^<>bQg%VQjw(U!3WAHY13FF}t1kfx^O>%rcW$ogHc3Jn}zJ1EMj;WOK;a0cO04|r= z@yYQCcY09pk1%&BW1@!oobEVNOk6`ADSJM>1W*-`2@ z3b)8IZ9SqRDb$z=Oq=@4qSa+e!?ymK7Zca)KytbF@t4MP+P9BXka-dMD#`kTO_^5Z z;iBj{(0|xuH)~|uhVfoIN90V>v*XUwuP2K$J(LY}#quw==D7$WKQ1jyu^qG2L!+B* zH_YTWJw1)Eb)26b5nt$)&otFm)4RRXfU);C!cEE^$^w=Kw2h64xz8$yi4Ug@Iwi4u z(J%g}Y6vyf$wP!4?!LQC)X^FpIl9ul^5OA5JrFjM z$H>|QHM{ULRaI4Njy+F@n<#n2*s@RbRhR1VuA;ulappe1%8xHWd~K}}$i#~X#q7bf zM#&EJS&JS1@+}VCVfjl7!g;m0ldpY834Q=1>}ZjPCEq6sEUgQ3o(B`BOSKliSwzt%6dz}xF;Lpht(G=W zd4{dp)Gcz8hXwA1pNpMcd#tO>ZKhPqEN7&MmOEn?H+LfLVyeYy7?Eb4zc6`N@U8vG zPvraap+Yx4Jzz)6WShP4P=-4b9X@i1dabQZ-WyE}}cf2xQyz2l)9h z-f2D=4T5r4jp@6kB(%GEd71>oFcDCT4|x{r>A5bXOh3I*7qInMn4IYbj=Kenp+~-N z{TeQ6ED%B`Fy#PJg5Wsn1}71)U8Z{P-Vj`1Y zbaeFL>y4%df1_FaBuK~fM%42?M9phTW%fApUj=ZK@zVzyqJOp?E1W{M5j3fL;OBSb z#?Oy5#snDF+4qek>N0D+mO~;iFc7(K0W-9lz{ioY#!uO|-`%idqaS+Nl=C)tx5T4; zQxe07NDo#s8kIVrhq3sdV>6g-sc68cSJeb5nc!(j@RuOd*lAgL48I``VpVtGg^E}E z*7TS)XO)Es3r@GjM!2dAfnXcjlQjnRaH4)W+&#FBdKBuRpn0N=`jRHO<{DgLIYw6vN*TQ6x~L%Bg>#8gu$ z)Yj_iq0MH@er^l>TE|n@;I9VNxG7ZgSjr)-yquVr)3Kb(!>bg{r+-Kz%lg-k_n;ZK z3fm4~{aPEMc_CF8NgbyJ86>Qaqzqs=*qE+mS+WQDbGSB1tNUx1EazqaPG)ZPt=c|# zyTp3ju6f=}*N;}Q2y?s)dO}3rVY!)aNReKVV#~-*e5;%!OJrPJoQ)xISrwcXji$th z|72ttdKvB`#~pk;3`*nnQEI$&WV0c?wY-#L$~OEWtM*p!UWs0?pt)vBt&ye_PyYPd z5#q3xY;FG6FJE%H!=1?SjQCtP zuSwl&5Nculm04L?Sbjxz-eOCtWiLL}MTyc)m>Plk{ok??E=>PBY! zleBQx<=w(d2Z(H9mf0EL#htb9$dNY)Qt{bJUjg%$?PbkAJ^@=-nDPdJ0^UtVlOk&I zLxT1@4Wc#@@rOb3O9Z~)1;IOVo91r$kK)9LH!Ix%-ZUICk= ziXR8($V*I~#2Cg{|JpTx?S10nZlKOVtEJbQ5X@Dov66o$?YecY$g`fGf{z+w;e+g^ z$9qfm1a@?Fi2;JiCXN;|YZ2dyOy#yT*9uM_$gnlP&#lWFRFkCD8Y|B>n2$odUC=C);yh8UBpVPRY?s(N93g1lf?`Niz46|v zZa~5xw+?J$)B19&=Q#O;g?(-d#*iWn zl&>0j9HGI_uZLQ2%7b71VOSU!Su-j9hIW2yzD>Vka{c_f74-b-Vu&4p|LKKAiCq=b zydOc;qr>9TYeV(}NJ}w2oyVMTCYowiz4avjO^HZ!2W5h-ASHREIvR|Vd|nf$dC`Ya z{IoH7CbWPdZ(&j`y|Fn#E&YLCI;VdxLQc$03ZIOO`~fU<8~_h1z|zV}gIg&%q}d2- zbnp2m4EiNyu2x0Mk%s#A@ZrY6d;n~Y)7~#$ zzB~pb-xs5rNkmzCqj^?u46;IWY;3v&k!cOmP$(rN(RDqlA+Q6R)4&_756B&E=ycGi z?&slYO)8}h#%)6BZA4P^Uv^@Vli0`_jUQfkSI_90nEIU5l+f-?0QTj}GE6%=DJnT9p z%ov2wR5Q=rLbFn`gJ_LV^QH8FOk@*zuf8KOR>ovinE(rcfoh_3u0zAgsDcVx9|J@ z65%>OWS3uBS}G$gZSZy;32^lN8a8j1qp#xQ2M|Im{00^1v?lRKk+Cm)=1^~onI%&e_fH6pQYWX1o-~skfYWJQ! zh5E^b=nP-Ic!3U_y_TF}BNtoMYwZbng7S~dT|EEb#eO9mYHA0`w%MYi+K&E1>;G>@K_wz07xdSgro=ow;#V%b7p zI<3rsNMShTx4Nf0!mXu$qNuQN0iVk5dlh$br|kLjgqC=hjx}bYn+KHzq!VLJoyQdg zg_pL!=A6X_eH$7YiUdncs=$Lb4hqy=>3h%W56*Hhc16K2$6U}rFN)(56Tfy^ZtLw* zZb&S&^|f|OUAe3-6}MN~wZG{co1wnxezBYfgzHSIJep}m<7mcJlyGUSFgDler*B_t;kOcT`A9Cg$efv(nT(3HX-~@Zt4TYYSMUa%FA5Q9v=`nYl2_Dt6x35r*t%ny ztLN??AirsTW{{(rBDShMcXMjGC#5sNHy`;s+Tq?yE!>|S7%M2%!7CV-J15s5+(Py7XZJi2i@qp z@@+P}{pU}ey4B5EP=RFn?eF{g3U+KYxD}>_SrgX0apT5mmKAjT`@aoSv?pI16_WF> z67`poAicsGvaDoB#L|5CjF;i6EW6>I+RJFq1nDicF^s5g-6a+1n`T}q#7XL5O)x4F zaO0z5v~DCpfy~d8yMgE+@XjWAkt2{SJ*tdrYipBKQ~OHxMj)mHLI#mb?<3(#^nV|4 zNVSQOU?D|ueIqsJI!#r_DYZKGCjgbAGW^PM7~{_Bi9%KM`~=~W9`#8@<>ljfbTX|; zTKP0_1gg}LxqFtW*oQS8vr^3FHjlpN@#Du(PI1uD5+uUN&%!1T2E283Wci^^;E+-x z^>>As4>hFrW5mH0G5J9?N zZC;sj`gAtkM!bi}76wVRpa2^H+>_MO6Wd0S-)8O$4=JY_J+`$YuxDgKl{QT=1Yom_ zHV-WHd!Im6u!vo`bm=W9%>4OI9PmeKI4Mjz50YOP>NJQAk%KA{y4u$4FDQIKx!+@P$hJwpq&aII} z`GoeaTpb}-5C;WJUY(%$ zK$$GuWpk~|c!!i>hBArsaPHoXlELw}w_ES*LAthX`)~)k{xORm@6d7+DnH-@t^mXt zntbP_#RV*~JBp*=DF~#&Ji%RH~AIgVsbp{5uoi+9nXAxtiu!LbH>D!p_sbv=;i5Q023(5Ix+-05N%m0T9LJ{Odia_dAaepJT^h0Tadc06ye|W~qN4O%dgBxF$-P{7A>8w8|dZDDY0Hp-gYrH{= zz`sO;gj3xR+FmX)=Dplwjcn~1HtEYuW1?GDL7xSIt+6T>RZ>uR92Dd*+EIcNw%E7( zcro*sDeD8HfWe%BHi0o*B0!NBPoDiqAv0l3K{em4+y%G-F`<{ZE38eM!G`MLsbS#n z54YF8H*p+HtzAU!-{hB(kwKu!VE(gei@mWC8+M8ig$VsyFFG3dBpOnU(TC60sF~m4 zuO75*#U%hyB-fiTt6QA#&)y_=xu8|GV|gM@CtoWKK&!I@U@ zUV_*0{Nyh$_Hv6oer-0JDtDbs-WzUDW@kSkdFk?HR26Y8$KL0l+T1XzDLSYlnUpWV zN8>Q;4G*1Q;6T>QK+Q)#@Ks?BkXarq5O5BPzR-~)7bO9}x?n)C>AMnGI)N7QsdgKh zS|r^e0D1A+nhz#MPt>Yb5vH?u1~GDBEZ#Z6$S?P#&CJl3F#Gw6%}Pt2oHdZ;tm5z$ zA(MftY6A?I+Y&UgYuZOvdgTIv;cviO!T0I5bb1i-JU>oGI`nhA&m8bThvA1 zunL%<7_cTn4KPm3=z$N;Z3+jV4 ze+N)ird4+lEkVHGj3_rn-9#opr|?ea&Fx1ZX1yrRbA#y(ZUm`DfYz6>;jg z`nE$&P#*#V0%o1_9`LG8nm)-thWf(C%!wjvMQPKq^#TP**V#TuL-?(2+zP({-wpK{8IstxB?$NQckGZDeCyK zxEQ#EcuIe&cA}f; zt=h{#gScB-s{+r>3?K->@xYrWa(Wu*bZG4 z2tfzO$p}wj_p1dWMk$0Wq&GvrA*1gv>{?xv47ENO8qqH6+goK-RO*Rt*oPj5HF@!c zarjsy^-#c6Z?2+cg84B4$SHrZKR@N=BPivZa-q{0(aE05cIN!)I}{|emv+M~+=2ZN zw_dz@^-Yn;_()|=jN70P6tEZ@8HLKlPEKLozg1P$#;c6MHwAT{LMiWdYP-W64lIYt zjm7s*msN&rPte=(@$o2}vC+{6>4mPKvJ&hGS0uMQtBt-4+5)M27?*36K2V!ln#neB z5Us<*-(Oat%|Z|aVC?u0@!9l!&&kPwL^=s*hlF>^WBp7gk6TbgMC)r~2b4J!o$$lj zCjq;NejiEY7Tf$)SO8JbZkFlOGO59-h!@w<(jw5JxH5ZVLMDfrg#l{;Gg4l>*vG-q z9t%w*&t;DD{F4gr=C!dexk@(Etkk)5B>2kZ%g^Ze&YeALIGx4s{y&k=gWU%}KKq-$ ztF-!?n?g0dh-vGifeFXd)yYBxCW z{rg{DW8I>GE!Gc1E+=;NC?@F@I`#wD(;$l{S>$unld+LI?FUiMq8~IOM5t z7aX6f7N2PenoC(FS+%^SB~_#yzD>aCzu9<~e|snNCnqMIU3N6;Hi<4W%xKa;pJY(B z6S9o5;QMK0ql%3gvkav5x0VHqe`zw(Z^H=;8vY1Zd1FSc%HjCiDGZO&>h7}U2Jh5( z?!Xeg(W1irNkUyk`d8MFBv?e^ivIkG8$AQ0ymT2^Xv$ONB;pZ}eOiWAwmll9Y zkTd~bA;1yT1A3zv`G~|nKX{@@!k7wZeQ2%Elk=PjUm!+J4K`j+Z|wdOSFzxFASSuv@Wquf9QB$yj;%8hlak?^5AN?bn0td!sVB6$p*`(&`D?aKoO}2l}FAo-Lh89Mv=Tj|d zKZWgbe6Tujcv)~@eF%ie22PSHuZEI9tg$(C5GD=Pgc`5~=`D`^@QbSDI!=HGZ336c zIASkCcp|sHb-Z-xAtghddocgE-)~OuHc1rqodAf?P~YERM)gGCB)oWm`zwYhhXCLp zZ@3FH?AwuAodjKuy3XzTZ!DA(6sva{M3l!S=)6(>W9;tMTjkw+LFZSq+V=tMx#pwz zbtz^Wml;2qJZ`dy=j5H!t9S1*)zANKFwE~bpjev!Frg+!{2qvj$x|nc#qxuTho{z1 zQ{8F~m1%9i_RfEEkK1DznYIJ;8G-C%G!rtF#kr28e>J^fPvfG8x0V zuKBGmZhq;WxJM~`b!r!%VE?L3_do@42EyoTs(0n&$v-ApBen4tP()UP_N<+M;p<{! zXXoYPlZwvCQSXXPNdKhZ^*?(D91ohnNSljO_;K*<{>n-azVV$+gATJ&)R-^d-eSv z%IWNv^phRHeuJNYg^-(vCn+wjzdEiKUH%Lf>D~1zwnE#Vo%XRj9)|NAa~RcARc*j2 z^uLB~<2@?*q%i9JpsjIwqO`R1;kxx_aBoar&t<>#F^KsVKa<_Qla0+S@nwe2SGVzg z{rKmy!gZXQwOjt=7af0~ zxom20Nts!$84@zQa`gOHOWG8XN4>OZE?Ju?xP0BWK3zkYeE(L6|9L+RGb43bM_IGc zsQpioos53d_DR?P!vybJfW&`QYW_>(?|*97C0u``UF6Y6d&FvFK{*~;X^>*~d&W@H zW&TtM|HXG-CEUp&-v{ywDrZ5w*Zana?yMB1e_%2+s ztcN5(Li?9|f5`KJ$)0+}#tPn`61|P5c5q|Wa~|0?AhqxPd3~eV&dPz>>t9+aB0J@G zF;E=%#-C3-q)-ZV?upE?3>U7y#V&E?qNU~Az5_sXs_t^<&-2$g#TB>=Xokqucu-s5q$sNeOs_A z*hQX~G$=dP!kyv9?!N19EIwut8Ukexwe_X|ZVgpsWte#10q5%L>7mQ#QB5&GX^m4% z2nMwkueOHtZiat&?-}syHs))uURl|5;UB%a_iI|AaM#X^brWtNw2~1*H*_E&>olL1 zI59S~t<9^w4CyfD2BY>10PB07z}T?fule-l%l5-pC3Z1GcoE^;2mtatF=T3NIR6rr!QKU`yMaazQnRn+$)@c}6oT$^mNY7Yz-n zjD{kO9U_`0l9Ts2=qUsoE~Ku ze!J`b_jSa!fK;x8JII1F&amk&&hNanlPABt+q|H-RHb!%F74ZzbF>zLk9*&SK_A9J zBZzJW1=`w>o`DX-h|D2LY>5ikyJycmO6it%t)ERwKAxs4KGb>y8=3IwHj^U5jGwnA zP)WLzc0jr&{IH9Y@itrbm8~#MuD{|G=^_?U(|tWvm2PrHKyf>4lcux!{5~@at_d7f zI&Yqod1URb?Vku<-i!HkAx$@xrH@P0KF52i279llZ<31pMb=NQrD;F%y*|!se0&^@ z0Ja_wV+%U*mtghNQ){XlKv^scn#YdSU(MG9Ktzr;-R-Rnls_1v06UknGat`kqp&|+ zTejViSy{(Ty%m4&Kp>1>X#3#6hRROtUg)$`P*U=e{zr(ad20txdSe2en76O5{IY`S z-otx^&6^wa1A$LP^c>)prdSWu9a(Kk$h&bT+&6%w-9rYBq*Doxh~OdD*Vi90Amnvb zI?OJ}+xF>CqjjyOh!RG|Ot zEDh8Gw+4s_4NFc|c88!D1Z&ajueYtmSu56$O9*m_iY`38yVH|c<)n(fiWT74{)5dw z|0xFe=jv`8&+5KZpoc~wMme2)z&p#hL2jFQ?RtkCY&&7m9S$6s{Q7{W@CWfn_oCmf zJe-@c@{%gH;dn{SPIln+g)IjhJ}jOJu#;nU4<0mz zsTG?o4V1eE(_1z3U0wX+lGHQb!j*V@;FQz1f%YwnH-F53yEqp9C3`q8`_-#HkyQ{R zGQs%KbSr)TpEkL69dLGi8n#Q~j1>A(sN6URVg5N>BaxB2;M9S>wBhclz`tD(_`WJw zU8bGI7&CwTL5q|iA9j4XBZYyL@Y>!gBuLn54Fe_eF-`5AG+%jkNDY^ys4lgh+1jo2 z2yUL5+STg?cZ+=t7xGY>)IG|V=GA(MTw!uEeyy=2t453=bJv&NFoW0@mJ;YRs z%Y)~Wkf^Sn#qfclHU$gr&nerGV(9b}Q_X+%4Y)nM6tt#3lQwDGz$Koz7Pz|6vF3A47xY=6|1}-bFpLy4O!(G6M6Q zIr&&YD1V&TE(%r;0|l3~1Hl?Fv+%XrN z60@eg_9x4bGEQ>CI|D{A8bFk7T6b=ZQ9A7JIP4P2w~ik6cR&b3(v=zsg9mf{3gWo{ zN$BTm)vaVL*t-Ms;Il{@a@+4C-9?;IH*!KrUHuTbf#>q?&A*I)A8@PgucnqT1G#aN zp~crM#x3N91_x(BdWKSz5gomogM&j@*a@ctZQ^N9-w-H$U+Kx3KgMLv%!&oU*x?ED z7r)`9f;*vF2`eMC43uapX5$hPw)hokHKCjlJ5fF@-(bZ;$(Qo-){Gm^C{57&apx<< zc!;CiDAg7|q8G$rfGN2gbAFq!t;y}|ibP4voDU+zN~>X$60~6K^~PF*!Z!Qk6x#kpXdMxcA8(nj<~?@I0bD+0BUmR0A0+hq@w&&h z?0-MAro6tUW(%S)DXZ^QQQ&q9*VK(f@V1dpE*RE&)PDbd`%rBF==48BwnJVY*n$tb z=@-88M*#tgKh}ubgYjpabsAGC#VCEd{4@^8c2U(!TKU+PYSsXlB! z=Z*GE&!5abNuRR#@2lhJ??mRzOL&sOMg%^7eC^sb(ea8?%o^4grxmX2>l-P6veJ*E zyUedS&%PWhSt3D@e!rHN%ge|Zi`W!6;7$$`vsbYqAwNF;5MzC|o%yHH`FUr?wVCtJ z9r{mST6I!#RPT7$SEz|mu%zRXVPrPt75)2$7$arM$MJT$NgF!x$u$^1zfi?SjVsG)AM%K2nkuj=I-Qdj?fn`rlFJd};WIGe*(K zPsO3dtKi@*U4h~tgYU!LM)u*|BIPR1UGqZW$M&A8N)b>1ojJSC!q!eb);F+y%^x$J zC%Nl`KucBg6M1FlPSbLgFFaH4XJ|#&Q8i2~n?}KpriptP7#P?u&S$2l6JkuLR!tCl zg$JK7ANGg8eQODR8i}bYV!@CW0@YKVMR)UVKU2Bk}hu z`1*whUU_1Bh=`~t+A5c&FG+59#+V(23Kv^7Erqv#%gV|sD=Xo%I2~y7dfWEO%yxoygQz09C*2rH09zEy9l*=O0mFDvp<0g@ z4m5+{m{)yZ%03hnEG=@{9t;cDy3a<_6-aw*%w-=LSq}_2TpNULn(o$B+nVe+(dXge z@%{UiIc8DI#gp{KzBEgopn*B}?$v@pp|>g)W}_8rHiW`O0N#GQTRlrp<+_IiYgl6t zn&chP*VV$q!;w#(K79&j#{n)bQv-v;A!RtpL8Zij+N20Cfv7dT<81lAV?l1{{6dzc zg~hL7mczg2WxM+F<2Ba*SngWik(Q0yS4qoHMmhX@GxpZsjr0270BiMc%4fy0((6vO z%zXX(k44I$b-4HlK54gHGRb{salcj)iDVre6-8JqN=pxlh~(_`rX^Xp;ru^ppe8-q zf0^l!a>c2lRiq5@|KKWq#K7|$zwey0a}EX1IyvAOweK7_371mXHxHpxgVv2&yL&f` zXfe=Nn#JJJC8TfIY&Wp*ODj~v17qHjGXo>n>EbfSy));>2<)K z0k5ih+5(AWS9n>7WUU<>GuWIxg+?u5506%!Go)1jTPrIoY`WKJ6cQH~hYEq)N{wEI zQSXdW;rhYj25S8n-R7qmckFPP8NJr{0q?*8;Krq%aadHe8Gt6UjGB~jRH`b)Eq4Ry zml~Wv@Ig*ZOeDYt%cZ0+0k`UF)5bW&uARR3&qyrgQSv;mBiy-GwuWKd|1@Iq1 z)g}{L5h)Z3^ylu*&gU^PfL>nM_xuwkl|`W;WabHdgaw3sn)U0y^Cx6vOv4#6YeC2- zkn6RYI7sepaw|xJX>Lodj3W~hrk7hFJS@nVfVcJW@kvv__0+~4IB-CfR##V7>SJkX zKV;K1A9zT)V5WX@J_gR}`5R5>D?C3zdSGQ?F)8iu?_WVpEvbhGoP0ImA-!9;LC^2b z{iUFw9ln+XZPj$h{R;(HSQGS^73amHz~mtI6YZd%LcRzH zU~+R?f=~IyD^F`gDuku)|_u}ClrU<=8a z;N?e9T)Xx>YTpk2x#^K-9JyPVnBb6^g~kRs4x8Dm^cYDJc2E&3?i`zbmjN>IOmJ#S z%KZFHRcYKao+9|y2jKR=z6<*F>-g2eFuY7RT3Aqi-|}t{KwU zKD*_b)Ww0}h&1doc3{NwW6(n40WxNn=f=9_l@bn<-i3{96(%)n+1qDOt|%$B<~UU4 zrKP3W0s`ZqEMP$fGT0WlJdi=tA+V1O<59NT zQl6=TmDL!mPb{pgTcpq>_S!eSdndu@0J#(mqe&@rb{$>av9Yl*Ed`SM92^N2#H+RBn1DlfX{rebT>(i%CU%K=Sc0?>QDLsrd#0`8s zo}zP4`ts$=l9C@EA5_B5ZaC!eG>nrcPs)Xh5Otl=VWLj~v#G25>|okX(vN_}K`#cX zNL^F2Ea`LSzLid-(-##NH}XVjt!46SYEo|;9T+e{bj&54pr`k(t5aT6tbr~qTNKs^ zl*xotJs73kw6Bv$P1H(}R2iwCK7B$?#1feW)P_(rJ8PR2hvkQx5`pl8EkQ*4r*QPp zA(O#|)K#li0ab6f4;xqgZ<`+-n^;qE@!nm#u40t%c?{HjPtS&o8@gbrursH>k%5ZT z>>IVP^h%9rXWc$-A=t=&pP=!_|4v^2-~ZS&{ox*=1al$t+xRZhSt&Wm#FJP5_#bkx B2I~L- literal 0 HcmV?d00001 diff --git a/14-intro-bayesiana_files/figure-html/unnamed-chunk-9-1.png b/14-intro-bayesiana_files/figure-html/unnamed-chunk-9-1.png deleted file mode 100644 index c84b3a86bf245924ac081b742161ccd6c6b3ef80..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 19884 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 X^v@lb$mVv$^&MAGkxxB*_S*jf^>b(R diff --git a/15-bayesiana-calibracion.md b/15-bayesiana-calibracion.md new file mode 100644 index 0000000..689b4cf --- /dev/null +++ b/15-bayesiana-calibracion.md @@ -0,0 +1,1080 @@ +# Calibración bayesiana y Regularización + + + +El enfoque bayesiano se puede formalizar coherentemente en términos +de probabilidades subjetivas, y como vimos, esta es una fortaleza del enfoque bayesiano. + +En la práctica, sin embargo, muchas veces puede ser difícil argumentar en términos +exclusivos de probabilidad subjetiva, aunque hagamos los esfuerzos apropiados para +incorporar la totalidad de información que distintos actores involucrados pueden tener. + +Consideremos, por ejemplo, que INEGI produjera un intervalo creíble del 95% +para el ingreso mediano de los hogares de México. Aún cuando nuestra metodología sea +transparente y correctamente informada, algunos investigadores interesados +puede ser que tengan recelo en usar esta información, y quizá preferirían +hacer estimaciones propias. Esto restaría valor al trabajo cuidadoso que pusimos +en nuestras estimaciones oficiales. + +Por otra parte, el enfoque frecuentista provee de ciertas garantías mínimas +para la utilización de las estimaciones, que no dependen de la interpretación +subjetiva de la probabilidad, sino de las propiedades del muestreo. +Consideremos la cobertura de los intervalos de confianza: + +- Bajo ciertos supuestos de nuestros modelos, la probabilidad de que +un intervalo de confianza del 95% cubra al verdadero valor poblacional es del 95%. Esta +probabilidad es sobre las distintas muestras que se pueden obtener según el +diseño del muestreo. + +Los intervalos creíbles en principio no tienen por qué cumplir esta propiedad, pero +consideramos que en la práctica es una garantía mínima que deberían cumplir. + +El enfoque resultante se llama **bayesiano calibrado**, @little2011 . La idea +es seguir el enfoque bayesiano usual para construir nuestras estimaciones, +pero verificar hasta donde sea posible que los intervalos resultantes satisfacen +alguna garantía frecuentista básica. + +**Observación**. checar que la cobertura real es similar a la nominal es importante +en los dos enfoques: frecuentista y bayesiano. Los intervalos frecuentistas, como +hemos visto, generalmente son aproximados, y por lo tanto no cumplen automáticamente +esta propiedad de calibración. + +## Enfoque bayesiano y frecuentista {-} + +Los métodos estadísticos clásicos toman el punto de vista **frecuentista** y se +basa en los siguientes puntos (@Wasserman): + +1. La probabilidad se interpreta como un límite de frecuencias relativas, donde +las probabilidades son propiedades objetivas en el mundo real. + +2. En un modelo, los parámetros son constantes fijas (desconocidas). Como +consecuencia, no se pueden realizar afirmaciones probabilísticas útiles en +relación a éstos. + +3. Los procedimientos estadísticos deben diseñarse con el objetivo de tener +propiedades frecuentistas bien definidas. Por ejemplo, un intervalo de confianza +del $95\%$ debe contener el verdadero valor del parámetro con frecuencia límite +de al menos el $95\%$. + +En contraste, el acercamiento **Bayesiano** muchas veces se describe por los +siguientes postulados: + +1. La probabilidad describe grados de creencia, no frecuencias limite. Como +tal uno puede hacer afirmaciones probabilísticas acerca de muchas cosas y no +solo datos sujetos a variabilidad aleatoria. Por ejemplo, puedo decir: "La +probabilidad de que Einstein tomara una taza de té el primero de agosto de $1948$" +es $0.35$, esto no hace referencia a ninguna frecuencia relativa sino que refleja +la certeza que yo tengo de que la proposición sea verdadera. + +2. Podemos hacer afirmaciones probabilísticas de parámetros. + +3. Podemos hacer inferencia de un parámetro $\theta$ por medio de +distribuciones de probabilidad. Las inferencias como estimaciones puntuales y +estimaciones de intervalos se pueden extraer de dicha distribución. + +Finalmente, en el enfoque **bayesiano calibrado** (@little2011): + +1. Usamos el enfoque bayesiano para modelar y hacer afirmaciones probabilísticas +de los parámetros. +2. Buscamos cumplir las garantías frecuentistas del inciso 3). + +## Ejemplo: estimación de una proporción {-} + +Recordamos nuestro problema de estimación de una proporcion $\theta$. Usando +la distribución inicial $p(\theta)\sim \mathsf{Beta}(2,2)$, y la verosimilitud estándar +binomial, vimos que la posterior cuando observamos $k$ +éxitos es $$p(\theta|k) \sim \mathsf{Beta}(k + 2, n - k + 2)$$. + +La media posterior es +$$\frac{k + 2}{n + 4} $$ +que podemos interpretar como: agrega 2 éxitos y 2 fracasos a los datos observados +y calcula la proporción de éxitos. Un intervalo posterior de credibilidad del 95% se calcula +encontrando los cuantiles 0.025 y 0.975 de una $\mathsf{Beta}(k + 2, n - k + 2)$ + +$$I_a = \left [q_{0.025}(k+2, n+4), q_{0.975}(k+2, n+4)\right ]$$ +Que compararemos con el intervalo usual de Wald: si $\hat{\theta} = \frac{k}{n}$, entonces + +$$I_w = \left [\hat{\theta} - 2 \sqrt{\frac{\hat{\theta}(1-\hat{\theta})}{n}}, \hat{\theta} + 2 \sqrt{\frac{\hat{\theta}(1-\hat{\theta})}{n}}\right]$$ +¿Cómo podemos comparar la calibración de estos dos intervalos? Nominalmente, deben +tener cobertura de 95%. Hagamos un ejercicio de simulación para distintos +tamaños de muestra $n$ y posibles valores $\theta\in (0,1)$: + + +``` r +set.seed(332) +simular_muestras <- function(M, n, p){ + k = rbinom(M, n, p) + tibble(rep = 1:M, n = n, p = p, k = k) +} +intervalo_wald <- function(n, k){ + p_hat <- k / n + ee_hat <- sqrt(p_hat * (1 - p_hat) / n) + tibble(inf = p_hat - 2 * ee_hat, sup = p_hat + 2 * ee_hat) +} +intervalo_bayes <- function(n, k, a = 2, b = 2){ + a <- k + a + b <- n - k + b + tibble(inf = qbeta(0.025, a, b), sup = qbeta(0.975, a, b)) +} +set.seed(812) +ejemplo <- simular_muestras(5, 20, 0.4) +``` + + +``` r +ejemplo |> mutate(intervalo = intervalo_wald(n, k)) |> pull(intervalo) |> + bind_cols(ejemplo) |> select(-rep) +``` + +``` +## # A tibble: 5 × 5 +## inf sup n p k +## +## 1 0.0211 0.379 20 0.4 4 +## 2 0.228 0.672 20 0.4 9 +## 3 0.276 0.724 20 0.4 10 +## 4 0.228 0.672 20 0.4 9 +## 5 0.137 0.563 20 0.4 7 +``` + + +``` r +ejemplo |> mutate(intervalo = intervalo_bayes(n, k)) |> pull(intervalo) |> + bind_cols(ejemplo) |> select(-rep) +``` + +``` +## # A tibble: 5 × 5 +## inf sup n p k +## +## 1 0.102 0.437 20 0.4 4 +## 2 0.268 0.655 20 0.4 9 +## 3 0.306 0.694 20 0.4 10 +## 4 0.268 0.655 20 0.4 9 +## 5 0.197 0.573 20 0.4 7 +``` + +¿Cuáles de estos intervalos cubren al verdadero valor? Nótese que **no podemos +descalificar a ningún método por no cubrir una vez**. Es fácil producir un intervalo +con 100% de cobertura: (0,1). Pero no nos informa dónde es probable que esté +el parámetro. + +Sin embargo, podemos checar la cobertura frecuentista haciendo una cantidad grande de simulaciones: + + +``` r +parametros <- crossing(n = c(5, 10, 30, 60, 100, 400), + p = c(0.01, 0.015, 0.02, 0.025, 0.03, 0.035, 0.04, 0.05, 0.07, 0.1, 0.15)) +set.seed(2343) +# simulaciones +simulaciones <- parametros |> + mutate(muestra = map2(n, p, ~ simular_muestras(50000, .x, .y) |> select(rep, k))) |> + unnest(muestra) +# calcular_cobertura +calcular_cobertura <- function(simulaciones, construir_intervalo){ + # nombre de función + intervalo_nombre <- substitute(construir_intervalo) |> as.character() + cobertura_tbl <- simulaciones |> + mutate(intervalo = construir_intervalo(n, k)) |> + pull(intervalo) |> + bind_cols(simulaciones) |> + mutate(cubre = p >= inf & p <= sup) |> + group_by(n, p) |> + summarise(cobertura = mean(cubre), long_media = mean(sup - inf)) + cobertura_tbl |> mutate(tipo = intervalo_nombre) +} +``` + + +``` r +cobertura_wald <- calcular_cobertura(simulaciones, intervalo_wald) +cobertura_wald +``` + +``` +## # A tibble: 66 × 5 +## # Groups: n [6] +## n p cobertura long_media tipo +## +## 1 5 0.01 0.0483 0.0347 intervalo_wald +## 2 5 0.015 0.0733 0.0527 intervalo_wald +## 3 5 0.02 0.0954 0.0689 intervalo_wald +## 4 5 0.025 0.119 0.0862 intervalo_wald +## 5 5 0.03 0.140 0.102 intervalo_wald +## 6 5 0.035 0.165 0.120 intervalo_wald +## 7 5 0.04 0.187 0.137 intervalo_wald +## 8 5 0.05 0.227 0.167 intervalo_wald +## 9 5 0.07 0.299 0.223 intervalo_wald +## 10 5 0.1 0.398 0.303 intervalo_wald +## # ℹ 56 more rows +``` + + + +``` r +graficar_cobertura <- function(cobertura_tbl){ + ggplot(cobertura_tbl, aes(x = p, y = cobertura, colour = tipo)) + + geom_hline(yintercept = 0.95, colour = "black") + + geom_line() + geom_point() + + facet_wrap(~n) + + ylim(0, 1) +} +cobertura_wald |> + graficar_cobertura() +``` + + + +La cobertura real es mucho más baja que la nominal en muchos casos, especialmente +cuando la $p$ es baja y $n$ es chica. Pero incluso para muestras relativamente grandes (100), +la cobertura es mala si $p$ es chica. + +Ahora probamos nuestro método alternativo: + + +``` r +cobertura_bayes <- calcular_cobertura(simulaciones, intervalo_bayes) +``` + + + +``` r +bind_rows(cobertura_wald, cobertura_bayes) |> + mutate(tipo = factor(tipo, levels = c('intervalo_wald', 'intervalo_bayes'))) |> + graficar_cobertura() +``` + + + +Y vemos que en general el intervalo de Bayes es superior al de Wald, en sentido +de que su cobertura real es más cercana a la nominal. El caso donde fallan los dos +es para muestras muy chicas $n=5, 10$, con probabilidades de éxito chicas $p\leq 0.02$. + +- Sin embargo, si tenemos información previa acerca del tamaño de la proporción que estamos +estimando, es posible obtener buena calibración con el método bayesiano. + +En este caso particular, **tenemos argumentos frecuentistas** +para utilizar el método bayesiano. Por ejemplo, si el INEGI utilizara estos +intervalos creíbles, un análisis de calibración de este tipo sostendría esa decisión. + +## Intervalos de Agresti-Coull {-} + +Un método intermedio que se usa para obtener mejores intervalos cuando +estimamos proporciones es el siguiente: + +- Agregar dos 1's y dos 0's a los datos. +- Utilizar el método de Wald con estos datos modificados. + + +``` r +intervalo_agresti_coull <- function(n, k){ + p_hat <- (k + 2)/ (n + 4) + ee_hat <- sqrt(p_hat * (1 - p_hat) / n) + tibble(inf = p_hat - 2 * ee_hat, sup = p_hat + 2 * ee_hat) +} +cobertura_ac <- calcular_cobertura(simulaciones, intervalo_agresti_coull) +``` + + +``` r +bind_rows(cobertura_wald, cobertura_bayes, cobertura_ac) |> + mutate(tipo = factor(tipo, levels = c('intervalo_wald', 'intervalo_bayes', 'intervalo_agresti_coull'))) |> + graficar_cobertura() +``` + + + +Que tiende a ser demasiado conservador para proporciones chicas: + + +``` r +graficar_cobertura(cobertura_ac) + + ylim(c(0.9, 1)) +``` + + + +**Conclusión 1**: Los intervalos de Agresti-Coull son una buena alternativa +para estimar proporciones como sustituto de los intervalos clásicos de Wald, aunque +tienden a ser muy conservadores para muestras chicas + +Idealmente podemos utilizar un método bayesiano +pues normalmente tenemos información inicial acerca de las proporciones que +queremos estimar. + +## Incorporando información inicial {-} + +Nótese que generalmente tenemos información acerca de la cantidad que +queremos estimar: por ejemplo, que proporción de visitantes de un sitio web +compra algo (usualmente muy baja, menos de 2%), qué proporción de personas tiene diabetes tipo 1 +(una proporción muy baja, menos de 1 por millar), o qué proporción de hogares tienen ingresos trimestrales +mayores a 150 mil pesos (menos de %5 con alta probabilidad). + +En este caso, tenemos que ajustar nuestra inicial. Por ejemplo, para el problema +de ingresos, podríamos usar una $\mathsf{Beta}(2, 100)$, cuyos cuantiles son: + + +``` r +# uno de cada 100 +a <- 2 +b <- 100 +beta_sims <- rbeta(5000, a, b) +quantile(beta_sims, c(0.01, 0.05, 0.50, 0.90, 0.99)) |> round(3) +``` + +``` +## 1% 5% 50% 90% 99% +## 0.001 0.004 0.016 0.039 0.067 +``` + +``` r +qplot(beta_sims) +``` + + + +Veamos cómo se ven los intervalos bayesianos producidos con esta inicial: + + +``` r +crear_intervalo_bayes <- function(a, b){ + + intervalo_fun <- function(n, k){ + a_post <- k + a + b_post <- n - k + b + tibble(inf = qbeta(0.025, a_post, b_post), sup = qbeta(0.975, a_post, b_post)) + } + intervalo_fun +} +intervalo_bayes_2 <- crear_intervalo_bayes(a, b) +``` + + + +``` r +cobertura_bayes <- calcular_cobertura(simulaciones, + intervalo_bayes_2) +``` + + + +``` r +graficar_cobertura(bind_rows(cobertura_bayes, cobertura_ac) |> + filter(p < 0.05)) + + ylim(c(0.5, 1)) +``` + + + +Y vemos que la calibración es similar. Notemos sin embargo que +la longitud del del intervalo bayesiano es **mucho menor** que el de +Agresti-Coull cuando la muestra es chica: + + +``` r +ggplot(bind_rows(cobertura_bayes, cobertura_ac), + aes(x = p, y = long_media, colour = tipo)) + + geom_point() + facet_wrap(~n) +``` + + + +Cuando la muestra es chica, los intervalos de bayes son similares +a los iniciales, y mucho más cortos que los de Agresti-Coull. +Para muestras intermedias (50-100) los intervalos bayesianos +son más informativos que los de Agresti-Coull, con calibración similar, y +representan aprendizaje por encima de lo que sabíamos en la inicial. +Para muestras grandes, obtenemos resultados simililares. + +Por ejemplo: + + +``` r +set.seed(2131) +k <- rbinom(1, 50, 0.03) +k +``` + +``` +## [1] 4 +``` + +``` r +intervalo_agresti_coull(50, k) |> round(3) +``` + +``` +## # A tibble: 1 × 2 +## inf sup +## +## 1 0.022 0.2 +``` +es un intervalo muy grande que puede incluir valores negativos. En contraste, el intervalo +bayesiano es: + + +``` r +intervalo_bayes_2(50, k) |> round(3) +``` + +``` +## # A tibble: 1 × 2 +## inf sup +## +## 1 0.015 0.076 +``` +Aún quitando valores negativos, los intervalos de Agresti-Coull son mucho más anchos. +La aproximación bayesiana, entonces, utiliza información previa +para dar un resultado considerablemente +más informativo, con calibración similar a Agresti-Coull. + +¿Aprendimos algo? Comparemos la posterior con la inicial: + + +``` r +beta_sims_inicial <- tibble(prop = rbeta(5000, a, b), dist = "inicial") +beta_sims_posterior <- tibble(prop = rbeta(5000, a + k, b + 50), dist = "posterior") +bind_rows(beta_sims_inicial, beta_sims_posterior) |> + ggplot(aes(x = prop, fill = dist)) + + geom_histogram(alpha = 0.5, position = "identity") +``` + + + +Donde vemos que no aprendimos mucho en este caso, pero nuestras creencias +sí cambiaron en comparación con la inicial. + +**Conclusión 2**: con el enfoque bayesiano podemos obtener intervalos +informativos con calibración razonable, incluso con información inicial que +no es muy precisa. Los intervalos de Agresti-Coull son poco informativos +para muestras chicas y/o proporciones chicas. + + +### Ejemplo: porporción de hogares de ingresos grandes {-} + +Usaremos los datos de ENIGH como ejemplo (ignorando el diseño, pero es posible hacer todas +las estimaciones correctamente) para estimar +el porcentaje de hogares que tienen ingreso corriente de más +de 150 mil pesos al trimestre. Suponemos que la muestra del enigh es la población, +y tomaremos una muestra iid de esta población. +Usamos la misma inicial que mostramos arriba, que es +una Beta con parámetros + + +``` r +c(a,b) +``` + +``` +## [1] 2 100 +``` + + +``` r +set.seed(2521) +muestra_enigh <- read_csv("data/conjunto_de_datos_enigh_2018_ns_csv/conjunto_de_datos_concentradohogar_enigh_2018_ns/conjunto_de_datos/conjunto_de_datos_concentradohogar_enigh_2018_ns.csv") |> + select(ing_cor) |> + sample_n(120) |> + mutate(mas_150mil = ing_cor > 150000) +``` + +Un intervalo de 95% es entonces + + +``` r +k <- sum(muestra_enigh$mas_150mil) +k +``` + +``` +## [1] 3 +``` + +``` r +intervalo_bayes_2(120, sum(muestra_enigh$mas_150mil)) |> round(3) +``` + +``` +## # A tibble: 1 × 2 +## inf sup +## +## 1 0.007 0.046 +``` + +La media posterior es + + +``` r +prop_post <- (a + k) / (120 + b) +prop_post +``` + +``` +## [1] 0.02272727 +``` + +¿Cuál es la verdadera proporción? + + +``` r +read_csv("data/conjunto_de_datos_enigh_2018_ns_csv/conjunto_de_datos_concentradohogar_enigh_2018_ns/conjunto_de_datos/conjunto_de_datos_concentradohogar_enigh_2018_ns.csv") |> + select(ing_cor) |> + mutate(mas_150mil = ing_cor > 150000) |> + summarise(prop_pob = mean(mas_150mil)) +``` + +``` +## # A tibble: 1 × 1 +## prop_pob +## +## 1 0.0277 +``` +En este caso, nuestro intervalo cubre a la proporción poblacional. + +## Inferencia bayesiana y regularización {-} + +Como hemos visto en análisis y modelos anteriores, la posterior que usamos +para hacer inferencia combina aspectos de la inicial con la verosimilitud (los datos). +Una manera de ver esta combinación y sus beneficios es pensando en término de +*regularización* de estimaciones. + +- En las muestras hay variación. Algunas muestras particulares nos dan estimaciones +de máxima verosimilitud pobres de los parámetros de interés (estimaciones ruidosas). +- Cuando esas estimaciones pobres están en una zona de baja probabilidad de la +inicial, la estimación posterior tiende a moverse (o *encogerse*) hacia las +zonas de alta probabilidad de la inicial. +- Esto *filtra* ruido en las estimaciones. +- El mecanismo resulta en una reducción del **error cuadrático medio**, mediante +una reducción de la varianza de los estimadores (aunque quizá el sesgo aumente). + +Esta es una técnica poderosa, especialmente para problemas complejos donde tenemos +pocos datos para cada parámetro. En general, excluímos resultados que no concuerdan +con el conocimiento previo, y esto resulta en **mayor precisión** en las estimaciones. + +## Ejemplo: modelo normal y estaturas {-} + +Haremos un experimento donde simularemos muestras de los datos de cantantes. Usaremos el +modelo normal-gamma inverso que discutimos anteriormente, con la información inicial +que elicitamos. ¿Cómo se compara la estimación de máxima verosimilitud con la media +posterior? + + +``` r +# inicial para media, ver sección anterior para discusión (normal) +mu_0 <- 175 +n_0 <- 5 +# inicial para sigma^2 (gamma inversa) +a <- 3 +b <- 140 +``` + +Para este ejemplo chico, usaremos muestras de tamaño 5: + + +``` r +set.seed(3413) +# ver sección anterior para explicación de esta función +calcular_pars_posterior <- function(x, pars_inicial){ + # iniciales + mu_0 <- pars_inicial[1] + n_0 <- pars_inicial[2] + a_0 <- pars_inicial[3] + b_0 <- pars_inicial[4] + # muestra + n <- length(x) + media <- mean(x) + S2 <- sum((x - media)^2) + # sigma post + a_1 <- a_0 + 0.5 * n + b_1 <- b_0 + 0.5 * S2 + 0.5 * (n * n_0) / (n + n_0) * (media - mu_0)^2 + # posterior mu + mu_1 <- (n_0 * mu_0 + n * media) / (n + n_0) + n_1 <- n + n_0 + c(mu_1, n_1, a_1, b_1) +} +``` + +Y también de la sección anterior: + + +``` r +sim_params <- function(m, pars){ + mu_0 <- pars[1] + n_0 <- pars[2] + a <- pars[3] + b <- pars[4] + # simular sigmas + sims <- tibble(tau = rgamma(m, a, b)) |> + mutate(sigma = 1 / sqrt(tau)) + # simular mu + sims <- sims |> mutate(mu = rnorm(m, mu_0, sigma / sqrt(n_0))) + sims +} +``` + + + +``` r +# simular muestras y calcular medias posteriores +simular_muestra <- function(rep, mu_0, n_0, a_0, b_0){ + cantantes <- lattice::singer |> + mutate(estatura_cm = 2.54 * height) |> + filter(str_detect(voice.part, "Tenor")) |> + sample_n(5, replace = FALSE) + pars_posterior <- calcular_pars_posterior(cantantes$estatura_cm, + c(mu_0, n_0, a_0, b_0)) + medias_post <- + sim_params(1000, pars_posterior) |> + summarise(across(everything(), mean)) |> + select(mu, sigma) + media <- mean(cantantes$estatura_cm) + est_mv <- c("mu" = media, + "sigma" = sqrt(mean((cantantes$estatura_cm - media)^2))) + bind_rows(medias_post, est_mv) |> + mutate(rep = rep, tipo = c("media_post", "max_verosim")) |> + pivot_longer(mu:sigma, names_to = "parametro", values_to = "estimador") +} +``` + + + +``` r +poblacion <- lattice::singer |> + mutate(estatura_cm = 2.54 * height) |> + filter(str_detect(voice.part, "Tenor")) |> + summarise(mu = mean(estatura_cm), sigma = sd(estatura_cm)) |> + pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor_pob") +``` + + +``` r +errores <- map(1:2000, ~ simular_muestra(.x, mu_0, n_0, a, b)) |> + bind_rows() |> left_join(poblacion) |> + mutate(error = (estimador - valor_pob)) +ggplot(errores, aes(x = error, fill = tipo)) + + geom_histogram(bins = 20, position = "identity", alpha = 0.5) + facet_wrap(~parametro) +``` + + +Vemos claramente que la estimación de la desviación estándar de +nuestro modelo es claramente superior a la de máxima verosimilitud. En resumen: + +``` r +errores |> + group_by(tipo, parametro) |> + summarise(recm = sqrt(mean(error^2)) |> round(2)) |> + arrange(parametro) +``` + +``` +## # A tibble: 4 × 3 +## # Groups: tipo [2] +## tipo parametro recm +## +## 1 max_verosim mu 2.85 +## 2 media_post mu 1.55 +## 3 max_verosim sigma 2.45 +## 4 media_post sigma 1.04 +``` + +Obtenemos una ganancia considerable en cuanto a la estimación de la desviación +estandar de esta población. Los estimadores de la media posterior +son superiores a los de máxima verosimilitud en términos de error cuadrático medio. + +Podemos graficar las dos estimaciones, muestra a muestra, para entender +cómo sucede esto: + + +``` r +errores |> + select(-error) |> + pivot_wider(names_from = tipo, values_from = estimador) |> + filter(parametro == "sigma") |> +ggplot(aes(x = max_verosim, y = media_post)) + + geom_abline(colour = "red") + + geom_hline(yintercept = sqrt(b/(a - 1)), lty = 2, color = 'black') + + geom_point() + + labs(subtitle = "Estimación de sigma") + + xlab("Estimador MV de sigma") + + ylab("Media posterior de sigma") + + coord_fixed() + + geom_segment(aes(x = 13, y = 11, xend = 13, yend = sqrt(b/(a - 1))), + colour='red', size=1, arrow =arrow(length = unit(0.5, "cm"))) + + geom_segment(aes(x = .5, y = 6, xend = .5, yend = sqrt(b/(a - 1))), + colour='red', size=1, arrow =arrow(length = unit(0.5, "cm"))) +``` + + + +Nótese como estimaciones demasiado bajas o demasiada altas son contraídas +hacia valores más consistentes con la inicial, lo cual resulta en +menor error. El valor esperado de $\sigma$ bajo la distribución inicial +se muestra como una horizontal punteada. + +## Ejemplo: estimación de proporciones {-} + +Ahora repetimos el ejercicio + + +``` r +# inicial +a <- 2 +b <- 100 +qbeta(c(0.01, 0.99), a, b) +``` + +``` +## [1] 0.001477084 0.063921446 +``` + +``` r +# datos +datos <- read_csv("data/conjunto_de_datos_enigh_2018_ns_csv/conjunto_de_datos_concentradohogar_enigh_2018_ns/conjunto_de_datos/conjunto_de_datos_concentradohogar_enigh_2018_ns.csv") |> + select(ing_cor) +# estimaciones +obtener_estimados <- function(datos){ + muestra_enigh <- datos |> + sample_n(120) |> + mutate(mas_150mil = ing_cor > 150000) + k <- sum(muestra_enigh$mas_150mil) + tibble(k = k, est_mv = k/120, media_post = (a + k) / (120 + b), pob = 0.02769) +} +estimadores_sim <- map(1:200, ~obtener_estimados(datos)) |> + bind_rows() +# calculo de errores +error_cm <- estimadores_sim |> + summarise(error_mv = sqrt(mean((est_mv - pob)^2)), + error_post = sqrt(mean((media_post - pob)^2))) +error_cm +``` + +``` +## # A tibble: 1 × 2 +## error_mv error_post +## +## 1 0.0147 0.00928 +``` +Podemos ver claramente que las medias posteriores están encogidas hacia valores +más chicos (donde la inicial tiene densidad alta) comparadas con las +estimaciones de máxima verosimilitud: + + +``` r +estimadores_sim_ag <- estimadores_sim |> + group_by(k, est_mv, media_post) |> + summarise(n = n()) +ggplot(estimadores_sim_ag, aes(x = est_mv, media_post, size = n)) + geom_point() + + geom_abline() +``` + + + +## Teoría de decisión {-} + +En esta parte (que sigue a @Wasserman a grandes rasgos), +discutimos brevemente teoría general que nos sirve para seleccionar +estimadores puntuales, y que esperemos ponga en contexto la parte +anterior que acabamos de discutir. Usaremos algunos conceptos que vimos +en la parte de propiedades de estimadores de máxima verosimilitud. + +Definimos una **función de pérdida** $L(\theta, \hat{\theta}_n)$, que +mide el costo de la discrepancia entre nuestro estimador + +$$\hat{\theta}_n = t(X_1,\ldots, X_n) = t(X)$$ + +y el verdadero valor $\theta$ +poblacional. Es posible considerar distintas funciones de pérdida, pero +como en secciones anteriores, usaremos la **pérdida cuadrática**, definida por: + +$$L(\theta, \hat{\theta}_n) = (\theta - \hat{\theta}_n)^2$$ + +Esta función toma distintos valores dependiendo de la muestra y del parámetro +$\theta$, y necesitamos resumirla para dar una evaluación de qué tan bueno +es el estimador $\hat{\theta}_n$. + +Ahora que hemos considerado tanto estadística bayesiana como frecuentista, +podemos pensar en resumir esta función de distintas maneras. + +Comenzamos pensando de manera frecuentista. En este caso, consideramos a $\theta$ como +un valor fijo, y nos preguntamos qué pasaría con la pérdida con distintas muestras +potenciales que podríamos observar. + +Definimos como antes el **riesgo** (frecuentista) como: + +$$R(\theta, t) = \mathbb{E}_X\left[ (\theta - \hat{\theta}_n)^2 \, \big| \, \theta\right]$$ + +donde promediamos a lo largo de las muestras posibles, con $\theta$ fijo. Esta +cantidad no nos dice necesariamente cómo escoger un buen estimador para +$\theta$, pues dependiendo de dónde está $\theta$ puede tomar valores distintos. + + + +Ahora vamos a pensar de manera bayesiana: en este caso, los datos serán fijos +una vez que los obervemos de manera que $\hat{\theta}_n$ está fijo, y el parámetro +$\theta$ es una cantidad aleatoria con distribución inicial $p(\theta)$. +Entonces consideraríamos el promedio sobre la posterior dado por: + + +$$\rho(t, X) = \mathbb{E}_{p(\theta|X)}\left[(\theta - \hat{\theta})^2 \, \big | \, X \right]$$ +que llamamos **riesgo posterior**. Esta cantidad se calcula con la posterior de +los parámetros dados los datos, y nos dice, una vez que vimos los datos, cómo es +el error de nuestro estimador. Nótese que esta cantidad no es útil para escoger +un estimador bueno $t$ antes de ver los datos, pero nos sirve para evaluar a un +estimador dados los datos. + +En el primer caso, promediamos sobre posibles muestras, y en el segundo por +valores posibles de $\theta$ para una muestra dada. + +### Ejemplo: riesgo frecuentista {-} + +Para observaciones bernoulli, el estimador de máxima verosimilitud es $\hat{p}_1 += k /n$, donde $n$ es el tamaño de muestra y $k$ el número de éxitos observados. +Podemos usar también como estimador la media posterior de un modelo +Beta-Bernoulli con inicial $a=2, b=2$, que nos daría $\hat{p}_2 = \frac{k + 2}{n ++ 4}$. + +Aunque podemos hacer los cálculos analíticos, aproximaremos el riesgo bajo +el error cuadrático usando simulación + + +``` r +perdida_cuad <- function(p, p_hat){ + (p - p_hat)^2 +} +# dos estimadores +t_1 <- function(n, x) x / n +t_2 <- function(n, x) (x + 2) / (n + 4) +estimar_riesgo <- function(n = 20, theta, perdida, reps = 10000){ + x <- rbinom(reps, n, theta) + # calcular estimaciones + theta_1 <- t_1(n, x) + theta_2 <- t_2(n, x) + # calcular pérdida + media_perdida <- tibble( + n = n, theta = theta, + estimador = c("MLE", "Posterior"), + riesgo = c(mean(perdida(theta, theta_1)), mean(perdida(theta, theta_2)))) + media_perdida +} +estimar_riesgo(n = 20, theta = 0.1, perdida = perdida_cuad) +``` + +``` +## # A tibble: 2 × 4 +## n theta estimador riesgo +## +## 1 20 0.1 MLE 0.00449 +## 2 20 0.1 Posterior 0.00755 +``` + +Como dijimos, esta cantidad depende de $\theta$ que no conocemos. Así que +calculamos para cada valor de $\theta:$ + +Las funciones de riesgo $R(\theta, t_1)$ y $R(\theta, t_2)$ (dependen de $\theta$) +se ven aproximadamente como sigue: + + +``` r +p_seq <- seq(0, 1, 0.001) +riesgo_tbl <- map(p_seq, ~ estimar_riesgo(n = 20, theta = .x, perdida = perdida_cuad)) |> + bind_rows() +ggplot(riesgo_tbl, aes(x = theta, y = riesgo, colour = estimador)) + + geom_line() +``` + + + +Y vemos que el riesgo depende del verdadero valor del parametro: +en los extremos, el estimador de máxima verosimilitud tiene menos riesgo, +pero en el centro tiene más (esto es independiente del tipo de intervalos +que construyamos y su cobertura). + +La razón es que las estimaciones de tipo Agresti-Coull ($\theta_2$) +están contraídas hacia 0.5 (agregamos dos éxitos y dos fracasos). Esto produce +sesgo en la estimación para valores extremos de $\theta$. Sin embargo, +para valores centrales de $\theta$ tiene menos variabilidad +(por regularización) que el estimador de máxima verosimilitud, y sufre poco +de sesgo. + +### Ejemplo: riesgo posterior {-} + +Supongamos que la inicial es $\theta \sim \mathsf{Beta}(5,3)$ + + +``` r +estimar_riesgo_post <- function(n = 20, x, perdida, reps = 20000){ + # calcular estimaciones + theta_1 <- t_1(n, x) + theta_2 <- t_2(n, x) + # simular de posterior + theta_post <- rbeta(reps, x + 5, n - x + 3) + # calcular pérdida + media_perdida <- tibble( + n = n, x = x, + estimador = c("MLE", "Posterior"), + riesgo_post= c(mean(perdida(theta_post, theta_1)), mean(perdida(theta_post, theta_2)))) + media_perdida +} +estimar_riesgo_post(n = 20, x = 8, perdida = perdida_cuad) +``` + +``` +## # A tibble: 2 × 4 +## n x estimador riesgo_post +## +## 1 20 8 MLE 0.0127 +## 2 20 8 Posterior 0.0109 +``` +Como dijimos, esta cantidad depende de los datos $x$ que no hemos observado. Así que +calculamos para cada valor de $x$: + +Las funciones de pérdida promedio +$\rho(x, t_1)$ y $\rho(x, t_2)$ (dependen de $x$) +se ven aproximadamente como sigue: + + +``` r +x_seq <- seq(0, 20, 1) +riesgo_post_tbl <- + map(x_seq, ~ estimar_riesgo_post(n = 20, x = .x, perdida = perdida_cuad)) |> + bind_rows() +ggplot(riesgo_post_tbl, aes(x = x, y = riesgo_post, colour = estimador)) + + geom_line() + geom_point() +``` + + + +Donde vemos que la pérdida del estimador bayesiano es mejor para valores extremos +de número de éxitos observado $x$, pero tiene más riesgo posterior +para valores chicos de $x$. En general es mejor el estimador $\theta_2$. El +estimador de máxima verosimilitud tiene más riesgo en los extremos, lo que esperaríamos +porque no tenemos la regularización que aporta la posterior. Igualmente, +vemos más riesgo para valores chicos de $x$ que para valores grandes: esto +es porque la inicial está concentrada en valores reslativamente grandes +de $\theta$. + + + +## Riesgo de Bayes {-} + +Finalmente, podemos crear un resumen unificado considerando: + +- Si no conocemos el valor del parámetro $\theta$, podemos promediar +el riesgo frecuentista con la inicial $p(\theta)$ +- Si no conocemos los datos observados, podemos promediar usando +datos generados por la marginal $p(x)$ de $x$ bajo el modelo de datos +$p(x|\theta)$ y la inicial $p(\theta)$. + +Por la ley de la esperanza iterada, estos dos resultados son iguales. La cantidad +resultante + +$$r(t) = \int R(\theta,t) p(\theta)\, d\theta = \int r(x, t)p(x|\theta)p(\theta)\, d\theta\, dx$$ +Se llama **riesgo de Bayes** para el estimador $t$. + +### Ejemplo {-} + +Podemos calcular + + +``` r +marginal_tbl <- function(n = 20, m = 5000){ + theta <- rbeta(m, 5, 3) + x <- rbinom(m, size = n, p = theta) + tibble(x = x) |> group_by(x) |> + summarise(n_x = n()) +} +riesgo_post_tbl |> left_join(marginal_tbl()) |> + group_by(estimador) |> + summarise(riesgo_bayes = sum(riesgo_post * n_x) / sum(n_x)) +``` + +``` +## # A tibble: 2 × 2 +## estimador riesgo_bayes +## +## 1 MLE 0.0104 +## 2 Posterior 0.00833 +``` + +o también + + +``` r +theta_tbl <- tibble(theta = rbeta(50000, 5, 3) |> round(3)) |> + group_by(theta) |> + summarise(n_x = n()) + +riesgo_tbl |> left_join(theta_tbl) |> + mutate(n_x = ifelse(is.na(n_x), 0, n_x)) |> + group_by(estimador) |> + summarise(riesgo_bayes = sum(riesgo * n_x) / sum(n_x)) +``` + +``` +## # A tibble: 2 × 2 +## estimador riesgo_bayes +## +## 1 MLE 0.0104 +## 2 Posterior 0.00839 +``` + + + + +Ahora consideremos cómo decidiríamos, desde el punto de vista Bayesiano, qué +estimador usar: + +1. (Estimador de Bayes) Si tenemos los datos $X$, escogeríamos una +función $t_X$ que minimice el riesgo posterior $\rho(t, X)$, y nuestro +estimador es $\hat{\theta}_n = t_X (X)$. +2. (Regla de Bayes) Si no tenemos los datos, escogeríamos el estimador una función +$t$ que minimice el riesgo de Bayes $r(t)$, y estimaríamos usando $\hat{\theta}_n = t(X)$ +3. Pero como el riesgo de Bayes es el promedio del riesgo posterior, la +solución de 1 nos da la solución de 2. Es decir, el estimador que escogemos +condicional a los datos $X$ es el mismo que escogeríamos antes de escoger los +datos, dada una distribución inicial $p(\theta).$ + + +Por ejemplo, es posible demostrar que bajo la pérdida cuadrática, la regla de +Bayes es utilizar la media posterior, bajo la pérdida absoluta, la mediana +posterior, etc. + +Este estimador de Bayes tiene sentido desde el punto de vista frecuentista, +también, porque **minimiza el riesgo frecuentista promedio**, suponiendo la +inicial $p(\theta)$. Por ejemplo, para la pérdida cuadrática podemos usar la +descomposición de sesgo y varianza y obtenemos: + +$$r(t) = \mathbb{E}[R(\theta,t)] = \mathbb{E}[ \mathsf{Sesgo}_\theta^2(t)] +\mathbb{E}[\mathsf{Var}_\theta(t)] $$ + +Podemos ver entonces que el estimador de Bayes, en este caso la media posterior, +es resultado de minimizar la suma de estas dos cantidades: por eso puede +incurrir en sesgo, si ese costo se subsana con una reducción considerable de la +varianza. Los estimadores insesgados que vimos en esta sección fueron subóptimos +en muchos casos justamente porque son insesgados, e incurren en varianza grande. + +\BeginKnitrBlock{ejercicio}

Regresa a los ejemplos anteriores donde evaluamos el desempeño de la media +posterior en varios ejemplos. Muestra en las gráficas dónde ves el balance +entre sesgo y varianza que cumplen cuando los comparamos con estimadores +insesgados.
\EndKnitrBlock{ejercicio} + + +Desde el punto de vista frecuentista, la cuestión es más complicada y +hay varias maneras de proceder. En primer lugar, comenzaríamos con el +riesgo frecuentista $R(\theta, t)$. Una idea es,por ejemplo, calcular el +riesgo máximo: +$$R_{\max} (t) = \underset{\theta}{\max} R(\theta, t).$$ +En nuestro ejemplo de arriba el máximo se alcanza en 0.5, y tomaríamos +eso evaluación de los estimadores $\theta_1$ o $\theta_2$. Buscaríamos entonces +estimadores que minimicen este máximo, es decir, **estimadores minimax**. Pero también +es posible enfocar este problema considerando sólo estimadores *insesgados*, lo que +nos lleva por ejemplo a buscar estimadores con mínima varianza. También podemos +enfocarnos en buscar estimador *admisibles*, que son aquellos cuyo riesgo no está +dominado para toda $\theta$ por otro estimador, y así sucesivamente. + +Finalmente, es posible demostrar (ver @Wasserman) que típicamente, para muestras +grandes, el estimador de máxima verosimilitud es cercano +a ser minimax y además es una regla de Bayes. Estas son buenas propiedades, pero +debemos contar con que el régimen asintótico se cumpla aproximadamente. + + + diff --git a/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-10-1.png b/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-10-1.png new file mode 100644 index 0000000000000000000000000000000000000000..c2d68b49b9442b9e4e622c561fc3e3b8818cb158 GIT binary patch literal 97699 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ÓP8KS+#n0392@j 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�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 literal 0 HcmV?d00001 diff --git a/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-13-1.png b/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-13-1.png new file mode 100644 index 0000000000000000000000000000000000000000..fd69de26db3eaa388da20183d235923a150df6f2 GIT binary patch literal 11318 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 Okj8~8>e;F$5C07e_6cDC literal 0 HcmV?d00001 diff --git a/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-16-1.png b/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-16-1.png new file mode 100644 index 0000000000000000000000000000000000000000..8d640a542c58947fa7657c1fa1b13358ada4fb0d GIT binary patch literal 69772 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 literal 0 HcmV?d00001 diff --git a/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-17-1.png b/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-17-1.png new file mode 100644 index 0000000000000000000000000000000000000000..a1069b74a1ffa6da3b462877215e5e343bb540f4 GIT binary patch literal 63483 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 z zv6z2O+Rs{qMM@VfzQ009V|0v&{yn-fY26^?GZ9XW)2+aezsDJC%il8lP^Z9o3xcBJ zj5gUNV@BCAA=Toj6E5W^Gb?eQu%c)iY@&-NSwDs?O03wL=0q&|14^$)drl|na zz)<$h=k1+VpKzM@FL$1~ltr*`h09^`HpH7KW?K#MFD}*>?1YH@>{y#VPsb0${bkjiy|s1?V2fapFUmZz89zgW@OzuBuwA#NmFRskrlIN`N{v0|qE zAmZ}}@9bQ3$mQR{DYK`Et~bX$6cm~#ZbQKhWieT+x{}_hMe>|Vsl0%XI{&l!NE{?z z0zeg)De`_?W7-1lw_`;D^-#QvNXfh@$CamdNFXG?croxHfiESW@Ne$V<&f?G<-Vj_ zt0;>(D2Q*l#A@p?Iz)^NRkQUz*xI@l_`zCyEUtpwH@7;1vg?K2vq&WOx$Uqiv$|4Z zo8&-FO8&RKuP^I3izpl0#m;Decs|D>XoK{ZP;9WzVlSQ+@Y62Jj2$P3tcZcU9}@WW z>&2dfup@doZcN+d9k=sLa{DFDFLKQAt%I=m!PKHPRy4@DGAeW$v4-|!43hbfeoClu zS65W6Tpz&GbG1sQbRUCeMI}qWg?;j1KTYwHt_B_-DS zB%GJ|UPO=gr=VXcGJBquDd|}%roKUL#q95A62ydAk(zdEyNFm13g|MvS%CyDfs7pT z5nYzgMst=0Ms;w0bswjb-^G3<+$NuDY$LF0YN@C84O`)Iq|@sA>~=-*?dUdLH4O^p z7k`ZNAb)bc0+JH4Y0-ZC4t70F5L0?8m*~vhmUx+sj5Dhq#(yROi=i7Zi4>-PaO~m& z`SY^_wNYG(cFisDXkgq_bImEUBo#_@?s@KiMGXB&hP4YAJ}SU%H*LQ* zS>ez;wQ2!qmQBHFk)k_gRcT9A9ukPee2JbUO-&CSE3l*YLg$uZQpo@P_F ztH`u<1MoST`^($?12*Y^V{^>7N?vuQqbFpLX+J_~93V`J1`KeD~az^6kE zy|qoEyv5{#8GP<%>wz~QjI0w9+8U57(tU9I!0!jMGo-8|k}RmH_yz@zO#ZUKyxh8I6H!M0D{;{_59 zN+4E%qNKqzuASp?rL#SddmN^z?62btZHqL8;D+yj8k=X5vZi^m&xLu*N*`iz;I;XD z*KYa2?~xPg8Pe-LIyE-U88ueDBC=qMJS5)#icaa-QGF}BapdxMmmkhu$R9%>#|Qvj z5Xd*2q%ctY2V2z#2|n`FRb11?Mp&2&KPsFovYY%D$$^Pg^l3=Ti` zKM2w@pcDZJ`l#Z;{i!d-#rUzP(yY!&6O=3iW+6-p4I=gmYW#gJzg16ue6hLD-#r!h zZ3H)4Ps7Xi8l{#`Zdd`))X;Fk$@zd)Nn) zZpV(p_&hxo5im!ZuokP@%#C@8C$VtUM)nbiPTsx#2TU zf^x^=_h}M(2i3tg@2gq~;B~TJhSEky?8r(4v3W-xr5C9$hMh^}k8dxE`N`H*M8>I9 z+(bUE85kcr@34y63rS4UN!D9hQ_TY+p@zeN@V`;cf1|G3bPT5Rph`rc&Xekz=It6l zGb>*d1&9+sO;C9d@5$vo1$5oHv@VI?ehKo=<7u6)Mk%_0R3KQ+QwZ`pRZYzzp|YeD zU^AiGSsvmNj<~$^*3X&imq0PYJ2;ylDF_qKJ#+GljX0|aovF_R!nukH0Z`n5aK3F7 zAscq4KI8PQR3n(Xj8MUX=a_d|Qb}d9h!e?WysDawoBqbJKU;v@(M2*^QSTI(l#}+e zbyRtd$WOphD=r9Ozg6!lYVDi2$!V^R`=1{c&=#A)h|2fgXGrx zfkn;S%IUU#-4Sg!6}I||za)Pki+47QQ=Rw2Er^&FSakq019dtR&)!pH<;0t^G7{L8 zMF3*~LK)z>QE`B|c{5kI03RFkD&Y2jn|_ZIC~xXkC2mcDnxwr+@+ce%R{2qH*Iy05 zA(^Uc5j_;x6nsG8Ria9;@$F0JmE=)8n6f*K_xr;dN|Nw@+$rY(B4v77-4G<+Dm z?yGvol9J}!{TUyO+V8vLA_^fT9A{IvlUX>}d!8n;+bFqK=?uC0I1aFmCF>bSkxw2h zS6fGxkeXUZh8be7P;W7I;(bowAQP_2@4wN|6>R9-(>|&IDg9u z44!fF@F0(iMD$_ab)mkyrj%D>$!(k_-$UC9U#qB$O{??E6{rjj4x(_WhZ;~keCR+S z%74Mh-@biwD z%qss29|z~=LZkLf_%lxx@7)i2wL~}4JTW;*_~?zv4aw`;BKEn1q)LynMWIxi$nkoq>FhBdOJ>aAP_mQvan^4y?GBJXw79+1ZVTB$%k zt7gRW>+87*!ps6BT`O8q#bme8U>JapumtTtdGODq1Ck^Mlof zMR#3&eSJ5#6W}4{1ckWdYxf|3-Xg9D(dYfbLT`(`jbN!8y6~Le&)hPViV~%A{_$OT zG6ii23&QI88;~CQ`Y@-}ZiRGiCap@~?FFkfq8AuKytR0UA`pOlveDOH#30sl1l}TN z7$XGRekAvQO zA9n7e_5i{<^FPDicsp&^hy9?^Ela>-e~@Q+SFRcoNUjovV^ZYOh}O>@E~mEY<1$HV zzBZ*zSwob;@-`6oQ27>^Ax5Enz}55*HlGJ!A5@wpGisY?Yk<-+0OZHEj=?>Q+*D@+ zM^j_D05A#k#nbx8`6I8EBYFXx-qK%NPF;!!MuRjJScP9OKThmKk7%>h$j;SCE2xve ziijMmUa-T3uqJ?ecn+0IVr&A1>xQ6u7SxfeX==h3TX+&>!CnZg32u8KLf3yfK@I4^ zuPy`hb>1ORRF{7>&jyO9FWZqfr(JhGci)FIP(LAZ;03BQUWAGP?guO zoyHY-P6XG%3kIx_?Rk<>-k?O)IrR~w!(ob+#hvn6=5%%Nam}rOE52tcBmrlRxlIMW z*L1mV1nv-s;x{UkG2j8d%l2_cS2D;>N4mm73$65hn{vqAc0W5OzSg!HOfionLoVeJ zb}qbo)yx7xl{KS7ut}#bve`?zXIQ={hb((J#2TkOq}3%hwAYA%I|0i3@D@n-fi1Nt zlQhk}#M)Zrg!VgY)X!&2Eo{U92B0hfMt|63<-nf*cIXx)P~wVSyTGrd?Km@l(=tLl|_+w~et$g8LG_0xdJ0)?QKoR@z(@j&`DNvZ;{6*#v~S@y&N zA;$u91@;)!ixqahG=Oqe@!z0w+kZXP!oYj0;66*MvUq}uA@XuM;ChvE8N4R~%--az zG6b;1t~A>tS6>uhcWwq`;IhF)jwMgOtwRe>E92f1a}z5WI?RAtDa1V((2WtxzaFsM z`w2Up?$t3NA|?)bmBZMeWoWpJWcsmE9G;_1@WjMB;P;*n2(JGoaZB5!I>0Oz|6OW` zD4F&P>y;qZKOW#1E;E45*>qrcHeT(wpz3kJYcQ_vgM#id?V8Ib2_%TS$0C400n9Q% znB_tq*zM(?OHe<;vRZijq5wGZc*${ZbLv4io%DGqVj`pgd+9@GBuIgG`0TERZphU!{mFn2QWh7h z@yiz`5^U?gqzkmrYMaRjPB?PtwHbg`G`EGdM8{AIj(mq65vbhkA$KO7{@kj@rCmhvFiIx<`CtLM2wcQ-v>y}$ zdU(YxY-9n@#Z6JQHtPH^Po>xrsi6Mi(dDulDZJK|U*FG9D5NvzKvFetR2hu~JT^q( z$1ao6blQ_6B_BxPsAXW`wi%&Lw6r?6H#%z^^$8kDRH8!Zqzd@tNwcogp$r@~nB7EN z&#^%Amdc3AJ2?HZC#|_)LDQi82}|Det^zod@-1DW>~_z)Q!II*m!H^Fa{U84a0#`F z)y8hnKRkFfXllc{vbkwlOG8b48v@=5fXyQ*A%WHb(jYrQ@>h4Ce)yRAS%$r?{HCp} zT=t9oUNzN+EUkKBqln1Jvd^D;`}#&5@UemfDOl*}WC~QaD6yJbTF^y7Mi&(#2F`wv zt6!y3$B!KKAXInLVX7-g?y&MQ5-m%X+9ASzdi=Yp4ug@ModD8yxy?|lcBvGNEh#Sk zLAIdTc`aO6TUHhe;_2fv@5u|gdiSaKV*HO>_!1JRgp_`09m^`(da{?g+D+UF8o>`< zJ-5Z_03Z`W#lcZy*zON1fpfWqL4pja^t}K!S1ia278d01cqIrG6#A{Z6ZGxX=Se!Z zW)YgPBZ4h+C%dK+zq6@$>$-<=W8&5d?<@A{m=`rwroKs32T4;y@4ll71#k1Hch`RK z3a5q(f_hoNM6oIwm5>kuyc3{+yA3#u<)3o^V>d5vBQODf{rXky{*0~z%zX7H=zX1n zPMn~M1{*uu?B3b@ZhFHzg8iYvUd8fKhdt+~X~nL;)2^k28*aR};UO**iSn|;r!6Pb zjUmO4PY$P;bvXRARWwReQf2-+rd@=X*TikNs<((%tP z`&ASD)Zxx~oylyLw42TzQ&_EX&To##qtVg&(IT3|xxhOyxn?A;)#L7OZKs^1 z=l@bo^^>ym<4F5x++nZArZJwK1}~GSH^v(K4Qq)=-DOziOm_b)5fQ=0+AO>IC*pe# z(hn;(<&+fSB5GU^jl1sN)^;CdrOH`eEWB2Oa*=$QkXxyJ#`xRn>W)ai%l*h)7NJxP zvh=vv+4kg5FsAs#3guh(j83H(4RdVYqiMZgSX=~NA&6+ZD8sAIUviFuJ1uFlV*x%T z=ZovUo~J6-D1G)d=%k&Jj7eslA;CFwD7)Xu$5*6iWa}nrGV#YYw6T?0QE|d_pETA#IaJfn30-d{?E6K+G`hZE{ z#AG&esdRE5glcS*ZD_ctiuO~0oO#F(`u#pLtS4Lj#xbsLev`xV-9Cf!1Y4KyzLj#- z$!6k0GExRMgoLJUdswFO=7{EGWF=il?IG=NDTZ4M5BSu+=x|WAWNqmZd#RIA{zyS) zkacg(Syk_90ud5$yh|~4YQl;mBU`6K{9JC?S?reCM1Q|Jy(Up~Hyfpp!Rh&4@+ zEMd&cV@K!h^-WQTSwG=&vbtH{cFOHhn8877MT4Oj16?d+qeQ&t2g5^iw-bK-JIrU= z9@9KQZEf6)E!0z%L}qJQoRI;L+w$vkD;+dXKAe^dfwApHfP%tkuP)ii-wBb6nG^S~ z=M7E4?A*5D!Vx!oM6j~Bdrd4Tl(KhJGn;}{_q@hn$ecCzNnMn>RARKCnudRME`3wE zfz0+huhy!4dxxv5drgC79kQAGP5El$rHBSK?%kJ%4Vj&^KJ#oNgf^T$asz{J^a@q{ z^mW=^h+4L@&!D5Hg|nqzIWp zW|^nTJccL~QiRMQbLN>usgRHmk|{|Dl_5m#dg^@def|Es_jR9FuXA4Kq^IZkeBPhE z*Is+=wWae6Hs81_#ykJw*Cve&b$cJpRo|!!FBNwY?u8der9K+X&53CldZeZnYo%=< zsAP>SpOO0x4ZVmk9gA|z@wM=|cRWa{r>Ejb&e%$3Wmk(VBw`S8S!S2JIIo7dg@>$4UI zh_?}+$8R2t;%>dymdO0Eh<9hUaDlnmagkRKPp13uvP(QYbDTL`Ctuy@aenjTn4Oe2 zek_{~7+e!e_*}gbxhqP+WxBZ=sxvO4n18a(5OR5)_4Q?srbS%w|qi7w6FdYPKQvMQEf zL~C1?^(Arjxf}V7y*DYDU$vJpPv7qfJ=ZO~!h2A$+y0jG8MWq-rtiDY|FTG^)XZi5 zv2Xe5<2L8tHDVqwxyRn$+27jq-Vx8TQW}4)o8wRUnyNsF(vq@E=Pzi+o>$G%9E>=- zv7)HWn!`^s%|*oBKl%tJkd7SI&Xwx>M%L!vwsqAp%F{@pPq?U3C)?3Xz)M1`?dL+Y zRoT=}nps8jF2ipL{+p6!_MG%Tu)g+c*WnAtnyr0hRH%q;<}UbU6n&py%c*`7*@zLN#aLNrQZbiW=ha&g3gA@t5K<%r|#lLh~rO z-Lkymi{gzWTFO4o#;9_0U&Tkq6s)5-&k60IEL|yM`7-(QoU`^C?>AefzKx14dz6|@ z=z3CXgnNxnXLerD)~2B(Pvca6t?V!zys=rl6IDa~t!Aa^o|1s(JIrD7JPZ^>Ov^56 zyUCZw4zd59l2^I?(@8VNqA{BO-dVW_c=0$pl^ov7j%HbIcXhQ0-NP9!?u!YDmOj6N zu6fCK9D8$0IU;wC&Hf0t+T@>KA_&E2Hx8b!?uD!BySV#y>e5=Sc7i*P2(a$dlnpgI* z+XUx2l-rb5mzOgTP+ml8%$*ri5YnC1^JOyh&SdFJ%PB;T^XKzn7PUb^79z zp>btTj9VFiT?n0p(AV7H!k*P{e>4qKJ1m;UbR%fTemoJgBeK+U+cj^`+_p`(aXDl8 zOz?7kfPwzj80~NThillQtk1r?-n@JAlfXdZl-%jD4QgQ~-7}x+eIIEy)3WV-Fj8;k zJybSV5}quZ?QE9pwe1h1-5wvIv%>;Rb-zLKH)1MT~d9HAj3rKHkQQw>Rf)W|3HnU(RSa-?Ul9!B7q3JdS< z3-wH$3uP;pgP{{7yqO8?F z*}+JBr0elf(^r(brgZo0HW9Y0Ea%UwZxUWSmC9Q?eKB#p=}l{zQtp6`>ilWlRda|<8U_9koN7+@*^(Qau+FD1u{Aq zWk)+0d+C8Ek>4XF2eO}?#7{8aK{O_!?&v2Zx@EeRURcg`{;Zv@taPY0^HG-&k#^2s z&PIBL+;7j8utzqd_Zhs`ggrh*ci#ORtJvY8=5j~>8OJ{V_V9(D^p0Xj<~H+bhh)F< zAb(g_vhQ`ri2G^t+QlC!wl*?{xg1T7W&3Qt@0m9Pcyu}-@O@)bmuJ;jJN;x?b>;o} zQlHw@Di)&GNO!RyL#089T6NNScI@*|Ve!S^<#HCJkB}SoYeN}pLCPLycJGY5k|PyQ zw69%rWr%ttED*v@R+w&jHU9QfyCT==4-jUZUAF|8;!S$3f<0+Vmbo&2V+_hB%-(VD z+M)5Tlk`HrqyjAua3E#+Rogv_br}6x6D49++ChwE6H0Y2Pfkk_{qtE_&%U;>ob#!( zw>^GzzI*h~uQM%2T8DNX?Cu_ldHp!ftUxz!x%S>jkLS2tw~=2hd0~*t!q1G$qdPd% zC0GZ1xOsI>XFh+_QO0y9TKj>#k^O7Nm*$$pqW$Te_ZAJZdD0BoOq8$GKB^XPkeH=f zd#|~r;^x6Cm%Q}VvngWc-agXKyjLHn+ZDfGFF#mW;k=OO$2{GM9yRoC8`}Q5Q<~efj(u zwuV~?K+>Ifv9NgKw^3W?!%Oc=YdnT*R^aY1f2%!NM#lOb2QhqA6ps)aq;Mzb(4P}W zk*b)k`^4P=ep*q)ezUyAUypKJ)>O^cT5}K94b4mGoy*J3yv)BNzIrdY-$sT<$21>m ziY(LB$Yra){gu@pe6Zt6S;pExovy&4+k04@=BN2Yj{7~0xe{sI&-n+ z)qU&skuT}iB9=6Pdb?F7I}Jk}uB5icHX75qrKLz*OxKkXI9BzH|9Ij=FNdwy!QR1; z>o<~5ua`bbkH1JCvNUe><(<%rXZ}=NXS}vfFb(rie-Yk(_WZ(Pu@Tv~LpK_K*PNeU zxhuOS$VwK;G&T0avS4P`*~;?Nhc~D_I277q1;;TTb zWs09WT`Sk1+>VKG_w*dBbTEaP7A{i~TqV&>%r~l=nVH#2pc9w!zIbaj^?vsE8;mc6 zdw6+i=$UC1HykcyiMr$6)hjw6@^)SI{39(2*+{7iJW8fb&voAU7zj)DDR10wxFu}W zdX$-E^QA`xtu+4Kwl2Ton6o*^LG!BFZx{!A^U@R+7vl8v41{M@kBL5YNuEgf-8e0&&|4i?#KRpV{c65ml00!a7?)UYVeFS@~nqQ(T`q^4?qQk;|tl+O`ON zjvxrrfr0l_8$bBaZ&CPDU}~ec@>=-C4PPHt37xkUM+>vxbFlB19Ms?=C!8{61{$Ak zQQavu@ayyqVbR^+#I{w8CMMsw#k52lXt4K1X+9hr<5g5qZ)a9kiW2Y%qY^&ezt?w_ zjL6T=-*Sf~_V^Vx;r5MDwEN9?zxi8jkPa|unLNdtmYYV=ebZV_gVkp@ampZXivIJf zOIy;u9I{#+U-u~Z@+Qx2KU=_$9HX5TnO8Pno7N^IHjT|m+pKPlYBcuVwcSEQw&ZLG zuh1&L)+_I88&ov!%H(8k{`SIbt8>w1dF3;lPKp}29IZujO4lUBZ^liSEfp91YRWiJ zTAm$VKjD+i=3tl-VwhS^}o*cbay<9YNmJWJ(e^h;~cVjEGNW3LiT{} zJi_#|X-&ZxeZEWvhqkshD!-AxSio2Og$`qgNj zQQhDx7Tq4oZ53-4Ut}|{@P%1)2JLlP^%jxgX2=x|+hrYCP_eCXa?o>c5aj^U+k@LCU^epbR8RbRKWPp?2%SYM2*m#|c$6qJ*SCdt-=>8Zdj^drXt)6^5 z7L^n-ov%#}l^6fq`QyXr<|p+-S1i@CHPh^Qf=-k9D2rIee%Q_IZJ@9B_N>vT=E0;z zHv6Hz>%Ir8`_CO_^4NTH#Fcz_OUmqGp=u4=K)%1nM-2mZ4(4f!iw21*Q|%+pPR@_m zf35_T8Dx;@j?jp`pGsaS;gDUrpwK6iNV{jndg*A^DM7^^?cw=r6-`XmvFk5VsV;`P zxJmRKOf_$-WKXUr(cmI9FI*546Z_$Ae>v8@>%s8wFjYlR;Gem%$jHdi@$oYojKdCQ z7*_kPOH&zB3x~Uq^)~MHwHy8M!HX!D$Jk-np;+@!o3==DfW@f^WJ#a>BI*pNGDBGC8$& z;_~(GnzF9Qo5yA@mw5lN9+@A#ddGQ2NbKOL0o4s`6JLtCaSgVPG?*BL&xr8y&MnrB zH<}Vp_~y&Z$@p3pc8R7hOnDTiPCAx}R^+$cYyLLR%1UF5nuILf7VVwa>Rv!(%ej++5WcPSV|Jqg^?sU*jD8-TA|ESG9JrVDM@lL` zARu7GveIe1t)t_8UT>$!&F}6*F1H>eMEodt*13hsG~CF#Fgti(XiPmPQAry(v3lLm zuDqkvj*@O<>*{0ADid|8dKQ^vdz1ZvYrdQwp8B&L_C6MOOuV*-?6X*Mx2K`8b`2_x zxmN47IYF9_>&d>HlxVJnOC?70KXF7CD zhAxVH64+hhU2D1Q2{Q@lJ1<9(~@>kd07f-M;>M*A(evz6xdndGAA7*}hB`i^_g|Vdkx-zNnY?NI(7O zrIL-}G=p?2H-C6+Y5~Hr2R8U|UGEI>kxpcu%#!MTxok3&x4yD;t;SXJFScy`y=*Y5@~ z)LRs^vbt!=y+sqEeSb2KeWe@ws;V(sKXUcM?^QnDz(!;J$w3z_&kUbpyV|xpTVE=s zzc9YVK~?X>HdChCT0nKqR7@atZq=LRL1;kwF7xocHI&~)uPpyw*e*KF%@@YlqbQ`i zHQ?(Zx;G1ROye^?4u^ zgarXxo&DM^RbuF4q;;rgLj0;2MPeeWo#8|jv3qpp{pZgUS$P+C?DLlD{KR)Yx;^A9 zIh}E7#BQRH`YSt~5ZpMeVq2kfxlrW*vpxm567>HUcY{wpu=SU-o44u(HW{-N;MB& zkNte}M#-HeZ~u+Q=2H(>LqkJxRF2T!zDdJ4(_7R~SoQ%%We|v`oe3X=LpHQOMyLn* z(59Ps_wp5c`G!Q+B@jigU8?n~PM(W+CYdA{vWaM~uF0p_^tjt#LAEf0{G;KEM0ZBu|GGzh)0d zPj|CRwJO_{&>Fon(%Xp5^soCdQ0}rYGIKdVKOx&;aq5)6{#9JbH8>{SBw3qD|pOc`zQ8Y8bx@GsO*w|OyhC$vAWv_FW8jr2@!sK`g>gRmEFnO zX&tL-M-HpyEGfxfIh4tFCt$b4;RFhvBb`agk>M8yR_YjPEx?Rd(>+*{pfq z3s-L>ag|dUCtq8PJ(=RZGLebWe^AG01P&;}Pi~h==T1t(g7XAf?kXa zCC@IleNQ=LBa!6lAd=YI5PMpAht|FqMLYHWTWyg*kSwB`sMn+Jo zrA`act?(BK6E(Q&1pMriOk9)vAme~o2JQs8t)e$hrij8S{Nzc0xdRihrHAz3lBsEI zbgPSP%Tx5bJ}@(!c)WF{kV|$qKf`zvO3`5FVRTngzT{loyCaKJfmeaKt@}^LTetFf zk{d=)<9bG=*$%mY^Ka>F&SVAh6zQxsY?HYW6jW1F^Lu$YcIamNxGzYRZETVcgsj!C zUj2^Z^C={PaHuAB!`lX;wRy2CA4(_S4_ff}F$*e6l=ImhlUER;hwI7G)i)8zJ}ZZ( znhlO_*mS01@GC-a;NH5BU zY53Lj!XJ4gS|O4Xa?5GVW@&TL*I@dm)~n*rK{vNwXsNw=@#3v3C-qum?+1;hzCI?l z@ByJwbhe1$nac}1Y9aP(X=$1IP&P$!pFwzmNq8~bl$)EIH*RAqog!U!x|8;O5ZA!k zn~t9T#hByT+S;D@oDXl2vNY7yaVB;%Grt~l92gh~+REzrFGR(uG*-L+`1JYn=jFNa zpr9ZLancLz$0tyrY}+fHAY>hJt!-1vI;9>(;on*no<6zB^oN;2B8WjB4w?txK7Xk7;oCN zY30^&?3y^cpjNK0qOw(T=966(0s=06SMFjjBk7&+cHgcCPS~Q^s&Py1C-g;MovW!b z#qqgO!;7#ywN8OGEpc?ZQ^`JsbGoSUseD$|MSHo{9l0G=%<+%w`aIOvQ_}C!M{roT zYZz%Js+=(`Uu@Zl)Ai`M9{x)^Nr|&_^+{Tw)#G~bw$s|ii7Fe3xW;pm9Ve6Z`U~nm zkEY+SE~wXRo317APl`&K`7!xs-ls?-N;$3L?z-Ww4-BqrROOA^=z25BJ6%>_=k>~s zW&iwMIrJ7U6~Xqo5SH)Y8diTa?(KRKOvuvRNKPKYlciN)2z1mDnt-u9qTcz{$wP+@ z5f7uUmf<^a?AT-=bEE6|%~B1_$=~!Jl+3G^i`K~PhIVlNOLn(S_F;#K^v($@er_~E zG9x2*hWC7D)^`;@@KR-0FI!aD3f03zMbgm7{1@x+c7DRD?1PBj^~A)))&l*ObbmTKIGB|5m5&F|t+c1wlLevW znNK#YVlb$Mni{l_MVA z-1eunWHPVlhZyzE9J^Ap^vn*ctU;}LEs-2@CsCFbi7Me{pItgBs=cFgGz2YGK=kX3 zGX`Y3KT9X`Qqte6MdcZ28s`*u=v|+lHzgxB-+a!NY*cuD11GhAbUT0873Gjyw{AT% zuc5P%u=;&~kBh4pf_Sh6_YxBH4GfgGxOGf8LssN77Nso?*>$KS0>jHoMb_tOZ9-s7 zmbfVV37QCxPp?#^Vpv#Ntye#3anW~O;f`q$wx6;UNmR+yafw0-^bqXU|#PG<7N#_3(C9J6HNqb(P z?^8`&!>Sx1IKek)Zy+bz6$qRBrVj}e6cl8Lvm536!GDtN%Qu4^K>ZfP4k~(4U_Z~p zUF%W)z|}dCOvZLPGmE#`rzdtWpCjF?#&9g5`KXA97F4zv zDS*FLsjJbyC`xC;R9@}}*g__Y1lf9sX4|%net_JzbHC>1NaNCi?UD`Sb0sAuP^Q8? zZyqUMZ^wzgV*Y<2ow}p#{l&{-EGqcz$a5_+p7Ydk{o2n42G-y{ERY}J-Lb~d2b6Y|_tV$f7%}9`Y&N*Em=>6q00o|6qSWUVi>oYHIhT?XbEMo6o znf{kb)pXt9(BV7NU_{;i|5bd?!uHvr){`*qr zdGz#hG5<@pPedg8&hvf${Z)}~-V=}Uz!3XlS|+$?|9cy$X2_xp-A6VMOOVLQh;RPC z-$g*r^2GhK9334U%gf79OX(IGlbxV*28H_X4U>+(!En)sVwsqhuv@oCd?IOyO0rBc z%-ZhVa{z%a5%#sGVDJC#=5#ZjyNz3zA9dTD3Ege7Y{;R&Cg#Y2i^k3U+Q-~B5U!0R z)LmZgiV68VgXs5`DKf}Qv3 z;Wu>y>*nP?y#fLP1lDs%>ma_GnLU!-cU36ljsW}LD?4T7TbnPvxKNkMPuy)0j`3CB zyH4d?&A`=wbu`reI%PJy7RCWEH~Hg9J9F~nNoVKMfB=f126$4D94lX3Iu^yr$9L!D zB{Dx99!~0$`{=$p|J5DV-_T=;c-$cYVlgKR zw5%w}Ppto0Lk%grrQ4c~riEnd2vQ!h)TXAU9z&8C)ol6a80885r`~;U(%;SwevYE_ zgTx*obMb4(seN=y%gb9>#ph9vtu(JPd&h?kUe4v<;J~S1M{BsDVYJUO8O2MkR<5vO z=jZgnLKBJ;bb*$Nv0_e~C+K9>SDgem%hSY@7h+%~R*8zh;*#`i$-f~b*uu;q<;(M` zSBBjO5814*)*fszL^;X}!l$Jp@!ca20d$KM|ic5L<%;-DW;s zEU{4YTEkp8EYEwPcSo@W`-PC(w;{iJmw7%Jqw>sS1?t%(bNg?-$3)_%r>9vN88;Hx zS0xy?X%(D@dbZGk1F7eer3q{m@yD1}f{gFej0{duQQ!n4 zmN#$afBvjS;=t0D?X0ZV5NR#+nP^(R14~QJy%EG;ti>ILQ?_v{%U4L`P&6qC3RTm0 z$)C$NgE^D4^E_e+&K$~9mCWBTCxs!xLXooR75K0&v`aQN}7`S(xojzT~5|g}7zP#S(nb`uch>KBx>)b-ie8 zEb043+7L!6GrnV^hc~JY0{l4!fdAk!Q~2rgB@37{2rg=9SWQA^8l zGECyuqg*_v;qfnMw>EtX<=hc$dsfZ7h5i-w2|C=5Z8S7#e@ONEBZWv}pRjOQkpViR zaLbUy7zGALek^;F+QqqAd2xc4chs|2u@ZoGCnG&Qi-hZAT;{H16f&>ZKUS>^Z_3fk znHz84NqNj34)|x4l$;$Mgp^$!ImypofO(s2%@4-eaA#qUQe1#uJ^x}! zVB;v6UvBOcx`?T1Y0z1t7&88Q!C-<5fevW_p@8{j;q49Zy_8;Gouit=xr;Vx#;KyH z2L?mAlFdt6+x59Q62V_nQ`4;5L)aR+eDOrmoGHS)alvFW&5e=nA9tjd}9&2dVn6>an$@?>~o;IG8;d;{&XX67e4aUjm0I|m_*L5-`y z6ZfKyGpq#MV@V@^z%DQeJ#+f>7AAqufO4s?E+6Rnsgf*RixUfMM7d!@>{A;PmzTO> zx@s`3Lwj`P*X$MXl?_LZl4IDz?>U5{B~B)rDwaP$pAWHSY;GAOa-i1__b0GE=;V~^JZCZz<&AY~ zFf@IFU3_i!Z3$FOK#tqCZEKjOJi()1d3U8Qke7#u zbv%};kq6?gllAUYO6wpYCtPbvLR-5BYsi+CmT+plF|$i@G&ywS@ZnftTZV;nR5T9% zhLO?Tm_-b&k2O)tUBZq{l=aNs&Ce%qmob+eNLOFR&P-v^FJwoKzB64~o?zSc;M}uI z+YP@YrSyl7ya~P-wgC5aBi-F-8G~;0LqjE4n9`Dbb@lvlj0YI z8Q<`aUACc8d@eL4Wi+XgQC5eAY~o3eEshWsC8d7l)%{>~K=mNKawz2M6s2M;FWC<6 zsM*=s6jZdN<{NGX2BLm_|NfnnX;Gu(>A24i$!!tNs4hR=^zT}wVmj+lX6Esw9a_eZ z8o%~c+@dt7p{Q`tt$&QgbCQyh)c&g6QD*G4{a5zbo$qYFNll>oE6C4hlks_i3SeOp z4`;Pm^NuQjgyo-LwqT8pGoCEvrIlQNAHIqK&rqofutuEPAold>Q?0~|gXRy(VIa%h zIdJ;Gy$SiWb0*zUEa*>RQUR91q=x}wHORs1aF1gxld2HiFN~YBxyWx}Fl=8um#4~Q zcO)YZVEB<%YWmx(EfFnaxP~~snJS65@7w`(@XQ#9WE_hGBU{E+q8Mh7#-`r$f)l0K zxD{sc1ofs(aKt_u@>1OCixRSKZW86nHZhN%W=cv*h&vEX_2@9u43=$H(_$F)E6QMI>?rO^(p0V&|vgY$7QlFQnFbArh5bJ^R?&CNz^iw1+1_T%oX zGS!_5ULGE`xLX+omo~_+KQ}8j@<`nNL6%mwvZ`df?a;@MdQVkbMc}ebU@$(nV-W-$ zEf$6a?e(z|*qFnZs*)+;wfJqD%SA;B9!3T0kZO-;bdn7GL_t1k8*=&D5D`0CniL-qj3PhV+EnOm3o z)Jm-S0yK6ji_^J#=M}n_@W3)3Oq1r$Xvt?cJB0JD?D@DT=)`~5;t8$-0t<#l(r3TT*CQ0Gq-A7ue$5w~Lm`eL z(b~VKE3&(-%5bk0&EQyC1(wX|G zdccNj>M5E|4S_t2ZWv)fBtte%2{c#ah(Lc2p0yz8sJQn^c^YUMSx{dW-z}gc)7#VEF@y|DhGRxA1 zUhep2T_QHiGybF^Vr_EIo9hABTdh4CwO*PDAUF##D;F5nX1Q`Bn_%9evbuWaLs?5_ zry%Bq(AdOYD_W{icrY-uwHroDl&v^cZ9jiz}wvrMjclSy(c>oiqMn|1KH*L?4I`xf*=ah~P z$x@-qhE$INiK=qpmRyA(F1xY`GexUvJWnEU2oF+!dYf_z4G6TZkht+rY-t0jr-w2= z>ealxO%l4fQ2Q8WYr2wNCc2`VKN*0X&jnLYwCH2e!#9t)K&*kbTa$cw!oMFC$j zGcweB3U`?hfnU`O47L!Ybb#&(X%{b6L%wWmBo$G3{xy4SHh1s4{9#zu{@Ct`p7@6b?~XjQ6e230)E}!Sbzg(S=WF0g&sEZ1A0hn75pu1GGis zg{3G0-*Gi@!7WSrFmt&<*fUR9SY-TG zt=c);iuWDcr^zWOZo(&+iv(Gqw&smebaHfz<~QP_-;Cm$G>sRDI<(2^7tl7%&F2U; z74FZrAEP(0Qr8L92Doz1Q&UqDe)Y1W!tyA!2m+1|9171zhaA`9W;|Q< z(&*3={r5Ev^Yfq2?Ur``zK@HmX}t(Ai>w~Cf&7|+)Eokcs$Plrvg30BRH{Ws+aYp5 z(-mgQ(0alWqQ0^55I9}V$Z32V)IzROtSx<`FZzYGIu+=OWu2X!6%}72D1?@4u*>0O zXG`A(`+hq-d>!VOIN-FAq?PYj%3#|Q&CP#Ox#ZtRYVPPb22$3_6c&)DPj3isO#5`u z#%A3?@qbzX5&OsW)Mdi>n2YxhYw#!_0GoT1W5qJir_{9-XO!ItG+=G8z~gc$pY2p} z=dB9UJmDqULnH3bCB2tax#*=4pqRs6UHuI|nHwiZ;G~}=gXZx;`psVRU)79^3eL0d zxaAKT`_w5oSL&6%rM}0}x5UBnFL`wfi*DMeWsF`!d?C$&)HA365v!n|8*fiOudD#B zgoHnV^-<1V<2SR}9*7$So1imk9R!IaIDQ3NMQ`7_Rb*DIc|$k!X7?^zVZ0SN`wi88 zxx0C#^z)z?hQL_77Z)!M`u6P`TFKZ(K}WfteltpNVdgE#?L*)gKq#7GYCL?x^ln$A8y>diE_*ybCV}iun#u}@e{xg8&Cv8pOWbErPonMFuvgA?CcF{ zyQ1P3%#QdBp9IUyWucTL1w;Ftf3HnI;fDY5s=Cy8=YJHdD$O(E|M}mL824d zUHTLPAXjMff43H9b%hAQF5pPqikmlX^g25K_trLN0E)pKVdrR)?;nqwCr{A5Xu8J^ zMwpq7uKrRHqHE{7cOV8IcTS+Jl(GL%3NjBrjg2DojEoer?(R#d8H$V!{G*(|%J`d) z{=o}ZYV*xYfEPe%6J6PnYW^QTencz5=&5%Vq!$Rjlti8u&R7TPZ8HlCpSjlK*w!8x zW-j~hi>0_e0}YSDA^HA&`dzygAdJA2071vhyaMDwvJl0c013rQ9F2X0=Z@c?nx4R# zZ(CEcf2_;NtlC1b!zlX5jFDc@cMnT>_P$?~DUIOUIS21RAUAdYRdVOZJ~u(^HbDZu8q!xkg|1vNUaqR_A*E zdA02)vpjGQsJ5}u5&&}ChYwrxknAX-ci2J%P;Gg4MG~|Lfy3CRUq$W8Y z9CeaM&jH*s({k}d6^mvt2oL^9odAuFU06Y~8Arq|#Qr++0 zzl*mFN#Wj8Tfy&Gm5{RwEy+BsBRg(&*$9Vu*>>^>Mri6+pp}hUxP)odZV#!dg6*X1@S?qu4~)fvm6m; zIY{q=rg-T(fws~dT7tDOA)uv7D=fSU6aj`KQqAu~#AnFJ(2c&JswzuIDf~koJRqq^ zgmi~M$`1TL?veG^jkLQ9VbB0hIU_w?8GBMt5rZ~FlZo)d6nJTADUhVvVUl@qm&SRr z`jU3(_=E&n0{Qd-3Yh=n-Oz#>1ja$di{#FE=nx|VgLZWzjzne-gnP`UrP4{#s)AE&sk+#(tulz}rDJQipuR$H%ww0-Y)c z#6~D9c!T8sJKu}`Nq7fp|KJeP%T~Z#Nr~2Ax?F$$B%1ZzK@vIZ5CJs_x0tKfveLCVZiXk{E zn`EjB_oFsLm!a6~mXyF=DNmsjbZF(2ocUt^0#7k!E?A+U8T~oWBo$iGyV zH{_+Giwl}S++19hNUFe&h%Gi3j{SW`Rde4?I724l>f(ZgXk#0*q2mi0O+fz-qr*0B z-i(K#xwUm|A~RVlPj>;rtuoh%Zy|xiH-vD~4_$i1d9misTL5N6q-xjcm6@7ZPfyS2 z`}eV`6l4cUwF-P7QeyhAAB^${Zx4FB&#wGr$`V$xB5IW4vx4b&tkTa_^e26+dCI1H zN7SdLggKa=kGi-yo6+&QeMOHODgRa+!=AMm*nDF3xL%&t`B(vSz#pKvw2p5dtNyxA z*ZHggnxhHU@xi>5U9V=}m$9)h&}z@Ww&+ewOaSGosHi{_^nHGwl1Ndl^jxsvjAYuo z*XZI!Yl|T;>`+Rhmx6X1Bo)N)4|h^jtf+7Uh(bP>BBdwvrz{5OdKRlkJD1h?GHn~gh91laku&-GP5G|yfs18`AJaN3p ziIA6`XkDXms}%7WMWAkt-y(Xy<#_T);xW?7E{tEmFt)R`n0pS#icA)uo7QX3%F>ea z%*R-cW@xmCp2RpgIRykF+Q&C;*bv4lu}ISP|6~E@50?53stl-M0J-_$-vl>;Dn?p@ zRC8cI(E~iJs$8LHih3~C<{6B1a6uid#Z9j-Ps3pS?U7Dz@HorNkWQ*w&hdU|?tBK{_)G9&ASpFM(3rC}er zX8Cz#G_^XOpMG~vL4irwMicWOc-Zmy#YIJx;n0KjSC7mO`~TkqQ&#S~HuF&|t#IW3 zWd{tm>6jBAj?3gw-8wLffS_RQlP5EHf>2q>ojC*B$Py36anxjJhE#dXaVEDHWMzrM zWg0*aO&j$Fp)Vogz80djbq@9f}C93ZN{!Nk@A$AI~||wFeJ2nvZ0D0Rav8Ih@NagkzOA=nWX& z}TM{8%mxD~zsEa&#|`DY>r9TN6ld zoP_H2o&P_YX5FD7B>=nEDK;W@fmQ?JRt*cnwXE`46OVe>oLXH~wPmlgezqpm9vw$5 zxr^hZuT_urIKdSOpB*@wkDtH2sR^DdGI%%$*bnLQ#pt;h;yfSW;bFl;G~r5o1rbrk zm~*YjddD5i8RrPZzB*f)m77aJboOmcOh_OeK7Bg)=BYlP8;A|allw@!&OcVB3`qlS z14-_@v5P{*Tp)H@D#AsaH7e>tkjVLUcUd@u2{Bg}r>khCs0z)-KUYd39%|*Ls~OsmL(%|3^M?$6IZ+`F3O&%Je&%PD4(k}SFR^xcQF;_jXv!QG|2 zB`F2QrP{^>*#AZMuFP&5NDXB*Tt3Y$%U@GrJ{7^iTXv`V`C{chlJX)uf2s5#w;rUu zQa(K2)cWW*ZxFu4#5*s;fVTi>>p5Ns^d8w#%BpZZk??zh{<{@i_l z`V)??iHS*9G6~NJS--;`zxDKt3=t9CP|qjQrmtwPiM|-QO3H&>Wv#qo`yST53U85awAc8@$jy|Fbl@4ex{pUDrn{`_2_qsOikD#4z|d za39HF@KF^))nPW>$5iFHz}@{|5y8Lj!G%4R8pNxSs}ME7{2mm-g75?RE;sSy_TwLB zhKC74`Ookg-oV=0ni$3=*oldYT3Vb@iXc>HU%ZgZRm|1oo?zagIBJlwKTQ6VDIuTo zV`KMS-1{FYH&eT9rXAK5BRHl{Z=jjXJJ@SiJ_d88|74eTt~vFKS$2y{t0(*O>$Q|m z{vLWVL}o?7t_j@r{j?h~aAOwArV;4MEz8J)p1Tcw8<|3%ifSBqTa}c~MxY6>&in>TppoQRNUOGh&0kzSbCug^9fCmIuzL z-t0vBOJlnjP)czq0ApRFk>Ev#xJ=hRk|tR1d5*4}R6+6f3w`?f`c~f<(!uO(-atSf znzi}c=g(#)hmN1K5@MdT4O-l+ucrqgv4`XbHnB*Ki+XxA#G7@?*|yQNtaocaWG-}j zxs|IlZ8lM$t~o%?&Gj(&xBn-9@llbL#Ey_QT0w1opYb-)9*@>-3sY42X*`$R9UhRK zPEd0=LFv!qZ?cJwny&cnqt3(`m4dR>KV0^wqE*~hoYN_ie;KJ7taVMaX&5YYiMc4! zJ>by0APUUtpdxblPcbT0#ch0o8afg@= z#I1qN@^XAJN0@%|Z-+lzxweZGTlhX|rNtqip0#vl`?7EIa(mw9j#mnt+w1JBc0Q&{ z0`8*7`f{aqeZ@0cbf=Fw(l@oXP8a%%Z+2*oIJnpQ`?Fc!buTq~_`Xu4b!4eL%k)G{ zLR57B`FWeuyrsE0#2Bqp3psT~iNZocO~nalq=}tEw>3Bmx}N;->`BMLO2A#TR(gB0 z7>tXATo7DICk+9ypz_mg6js>0o0pYkg)))8{g(%c>3}sCX;U#~7DxtVkPhzb0Lc!u zA4$4p=v|Fy1`72%KAXh$0ml|z(mGcZGhW*>hZN>1$EFJE3`qi`4KyTgPmAJbu}fW*pGQ&ad^_90?D|+F|$)a4nSg{7Q6T^v_fve>Edn;mJ(6I;=+ZfRIX!5 ziUML`8Z~}MqYdOd?}XduBpaNR%d-9V9SvoA=D^Zl$kJG}wlvKyc!hiJL6LFsY2iL> zF2K(g^A{?MxCC$Se{khN|z` z;ijhi&M%CjE^k^}ZyEX-n6$tCc4#R4nQ;?pOKa;*l;lNS>jp`l1KxA3_sG8?kyu$< zBNwTB{`5x!m*8t!ct&O>F!?Yfm{L=ZOS+b~0#bi4AOrW;KIe_q2OJ8lHb)m8mAYwM zJ@YzevCCsRh?Z%Gmj=MrtD)5|$4Pe_n@dx-GC!Fv@9(<8nLkTvJ|O(Li6@f05kcqo zz~BU77+aa`AS(s096FW83a4p^Ao2JCk}mfT{c)9-N|NZ1nvS#0zqP6t@#r5qIre(R zVHe3*7&ZGxOiu;r9R;vcmbtTSCZf;oi-%$KSX)|c_uSc#m(RaT?trW0zNpqC+&a3x z#qW9+G+jhaxEGrRm-8x;He931MTo)3QSV}l0bdVbW=V0eXTmJ0gmA4P3B_=ARtga)Rn?_qO7&Z=ZUK;s5AJ^mK&+- z>Gi`3S0ujsPTB5w@vFo2I2+f{NCeVTqbY1!I(2*cH|@=nP=i3u1EmJ=C&@()7X*Zg z7k;onzv?FzItS+xPBjB4k36tL3hSVLqh%t<(%j9@@nMf?h=%^N?rZ^!rVaY+&h4Mh z&&oQA60yQM2Gaf&>MwY_T-+5B-<7)k#?>HXea*fs`z8y2;n8DE3*Pv3Veg$i!mpn@ z9`!BG-bs+yYS!rWiSxcB3v@hSUZD@~oV;)D0knd4Q+fZiwt>rq&)s-34@@3)X$0|+ zCPSf+DEAr;x(*alz=mJK2|8 z__AP%B+$3cgx6fhfinIhyJ-Ogj$)~Kyhz?!9yL;<9$00R^JdME^C-#z4XuG`>e|00 zl?!h3L6CfX@_4$o+Xz>~uXE5i@<;zB%UWG6M+GhUq!Y<`J<5tDQqqsyhdw*;wV8PY znMJtQ4mPm|vw3{pUNb;aRG>+&Q!98n;t_;T4zSB*2pL09B=q1z@k1m*=itYW-Y_mL z-+L`n#pXMZ#F^;FU<^=6Pwq2u2}zU!UZV;yL3s3Cn=XJ_arS)z_VeX9^V$;ijUy)Chw=oIk!vw z!lobHsq>`OKW{TbCD&V?ueP_d^&d5Noa>r6%IF;Z%S}5u zv(_|YV`H(IK+D47%cqwi=*vNSam={hFNn=Eczl`E-h1V-3=kcQvIC9y%sVn1sUQ#% zg4wRkcWh^u#}aTSJTTC|F+=DnUR7@%W3Y&O;Jj7T`Kzjn(7^gy-THAUsoKYn-(0RJ z&?!2=&p(UPFlivu4u0mupdVTPv3Gs@?;tEGMHMF}1m%i>ws<>-N1Va} z`QwKVhw(U6ek*QyV}Zre7w}zig-L~$4(FRHkhEyPW`l-8Dyr7cM={ujKmxH4>gZZ3 z-oIYFoQ57_Q8*JAPyunGW8erKDB8nQ*rg!x`&$WVi(6!*69R=crURs3D-`rVDia?} z5@VQ91tW?5fq7;k_}zvPObQM`@jT={8ioeueDk5?1W|`e2w-le+evHHp~oC@Xkv|j zYEF`*q8r<9KnH^gM0U$UA6cQOY^pasCau-!lti^zOfK&$e!MH+Ch{>?osDN zFK4{?@QvvbCZW+^zpqIf-LG=;O3BMpu06&sC6zcL`OT)-+`>XY@-kJxi3JAGe$N-h zHiOj_i4Pm;TAU;c4xaav>Tjf~)aU!sZb5u?o2eYVgTWshJa+)uYXi}O%<)6Npu>?| z>@|ga@Jd}_e*R_D=D3Y35REK@YEK#3L<-^$&sPr2K$|t?Tn)qB^n!lJ3{zDD&@k|P|Gfrjx&8Pd zjeu7>Shtew2$I*AljY1R`jb7r#DXvdeE)+b8Q#z;RM_{wfBW`3scD@ijr!&(xCJU@ zl7BPt^$NrPMc!M6RT*|$qo5!LQlfN7E8R$nbW3*$QUcPQD$*d`AfO=K-3`($B?1Bh zQquj+rSCp_f9J>fzpt}?czFS9t!J(0zUMvXm}88|pwZkxGg8&k4zVjCH5Jj^hl>OnL$U0{vPN>HgM>Z=y4|XH(eeS0e3O~J7G28?ck0@T`h)q zQ6H~WAa;Vcx;4Wq415-!1t-9MOTa)2I{1j^tSdW3r56e6dPkcfAHpegZy1);OwDOf zH7rWR^&wU+oToB2f6c3rE}&?EhwtGG5JBNWf}M~>%fbm!cL2??uctb^0}lNz6KV(0Rdo~isQ-Y=m)Wcy85rLHvE!) z_!`32{cl!G$N3FTBsjyKi6X`wzWHmD4c}E04r4Q7P9i-#@X__a!y3wZSl?z>7UWni zP#G3B98Mdse3{%JbNiK!!u>ZOAPsp_^WItfDEu~-N!P9IE;q~@5Q3?Y2p~fMR6Y+y z-eU~|4sZxO6uX)+PDD`#-_!qiww4d}FodB=;LAd`hrk?`?P7ok6Bk#dZ`dAy4S+>5 zP{1ehATZ*3bBF2pWYD{Cv}6kF?{l7B zb>uVQpe!K1d+3Z(X%s4y1^9zNoWL~oA4LYu0(Vg6#v`Ih+K zA0z$BUZihE7~RuW3*Z|3{h3W?D;5l9LOep-C$G~4y@;ItcY|!EgNu;vp*)n@{P$~~ zO~acMfB)+v9xo7Z!m+YCYuY2j86?F|l%V7Dxx&-cC2R2Y;h+=l9;ZOaqo*yDkCUFG^TsxhP+kFoV{)F9H(&D(#655ju;h=ee=haBgB z<&S=y)*=glvnT>=0hYteCNvZYKohqt3weD7QCbMlcA(GzRRx;8K&*0x1YOGN z-{*fCr__M-%G%m%F_0G8@PTxYIwDL4pxXieK#>f>j*KSt$WMsDpn$B4M#sj&y?_es z1RAP{u@X?yjAb1B{R)vbKb>N=gRgWU(0c$6g7h3w6CuU`Knz7Nd>}CvXgu=1I`Xcv zoQh0Jf=p+y5yln(_aA#i#C%bbSyMXB8Cy8M{c`8E9$!1Atj^ zb=)O%`^^r(pj@1sVy>@Q@O3~VLw?iyq*ouNem)6X;@N_31fn&{faEuztV8!nspu9x^h5^k0b^$UE3>sljYTYGrntB=M_zTRQ{=S#EG@b#BG!-3l ztrSV>7l%E?{MCKVnj0Hvdwl8V4qhBTjXlZNT!yJD|LrptXugBbFYiWd|$bye67NM%aX-AF){BC$Um6Y@p z3Z!nZ=VCeUiy1~bmNL)>wVroLTu5kZYws^9>Ocf^;YYv6GcsmOl{B~tOBP-!f-b1< zUi`Q`Xz?9tqXj*$`QXNlG?A}sR!muL70zc8YUFvFMQH(3NVuqL0bZ{w4%65s;A$H`2 zgS|V-RF8b4A}lZHe4|RPlq_g%beg_M8oZB;u#_}F@^SgRPep7ouf8g?v|iEqYYlP}Q9K06W(eXbZY9UY zJ~;dEgEXfn7Li+jNUFWU*?5bJ{e&2!@~p@WiGrd*FD*5701jK2ntc0B^G~Gq9aAjG zwGcZmyJ@{g)P23kem~O=wB7JM@z0A}TQgw;R03!7(rdb?G%e16Q=ZcH%!=@YPsLIe zkEvIOVm`GQ3R&cGX^UP{Zu%PJHKt-!8DGCma4R|F`J?YDNIrTpYYzheJQ6Jjk~l^$ z0yz?eR#51l??5)DfQiJvigi3a>OA z4{<7&mDU*_D`bXM;2nGD>=Y9n9YV;t4ro1;XXS2t;ylD&Ab1f3l}P5W%Zyc(`IYV8 z_45NgZsZ7(IA}SMx&Dj*SPbl;GOMeP;i>7*zx>Yv{#p7EO!oN3^-IcrcGeudVFQNn@s zk7i$>d>~l5!2XAQ3w;QPrO;HFaW%pC`yxnpKe-``ivofMb} zy1#$mQ~h~gz~JBCX5afydWS?PjQsD5`-uI&@ka}|Vrv^*pLmNVla8w(YVr_s;iD6G zv6@4I7fBUFfdJHnu{8Wtae@0uO-X~j%U?9Pq3K7R@tm%GuO9Xjk+LFg*b-p$ZN;$n z6me--t}W?NqGcYl$OXDDB>cbZ-d_8ULVtqoSsguEZ9~NVYw{VOHaCw2|B^uwn zLXm8;3|+^BbbCsZU68ZHpX2%&b`ag7?qzEmU6fRQscAx_+`(c=#j_WmYy9pd4tpWP zi|P(zW5SZl)TqQ}K&GjRO|)gjv#1|2;P6NpRwzJ>9C+??03v&VUGntj-J4DzFJP_z zLU0ph>{T0>a#(Ve-KOuglaUGTcwy*Lp@AzF*DHod$e^M}BxJlPH{P~bRIr7t+3*Aa zD1=B4|0R)@MxAeZ9*i4@5O4K}`QPX!wa5v*25D5kc_! zX~P2vCA`o5=Zd(TzNo^Gb6Qs=;a`w;LJmNa*1COk<{?hCPp=fFqL6IwOllEijg%3%PT#mI2kOIN;Gm9dfM_|%ld!$ zV*c-~sH@NY(bV_pj}+(cK;d?-n}gAH&}VB}%Su8K4&WYu+{F8+Zax&Igay*3N{aLS zE6Fls00FD1If0*n-iamyG*N%^#X4t58Ub>Ug!?WaPlxLUQ=M8DY(}(h{|yI2Z&k?N z9D_s%tnkBup#vZ=f_)8`Ft6FrM`-^tXqHkH@<3~41*+W0G0A`NL<5mM0eTLhxoiqC zxD^OJ6puj}xv`;g zga65p2xdCkzbx=n4dOo#Jw-oZ2wE!WBDw)a?*PX6R9}DomA(i8zp-iE{CgExbqw#P1;onff?btp-yM|oJ8Ymh2(!Z^RpCKw97P1*fXEhtNj6z?Vn@jPl z_{T>l8$(mU@_Ozy-={42#`v%^(gs(L&ImeH0yE-E5hu6_3;v5)x~P1kZ^r|(*4&7^ zuClU{E#$$};^;7n0%KQsE5{(k}reDBb$w6D=gVV=xs5ExFojvz9Sfb^hp#u{)GnPP%Blp$yYe9#Z6317KI^Uo7o(I0OcYIUAJ|0!x9bNqkD&m484$#f%QU5YTKcx zqC<@iB1kQ|y>SXpmd|c6Ch}Hbx0sQHBlY<_^zs;B}r{PqVE+_+I76-)_povUgFrFvq z{EgjZD~t2(U$k>~fN1CDIb>4S!IOa~m?81oaOlGrYB3mE+Qq`2F{aE|Suug|%$A^m zs)G6SFA6H3vTRp_B5dG}bPWWK(M-)_W&Q))NMD?lpbB?B>I5`UGZwmPE&xtBxR}Fk zpVW0G!4`lb4zT4A?SFe?r~#fC6dVjCVhyBX!A!MZF8%<=_TDgXJL}vtr!0YS^Q)Kz z>*kjRYK!Ifd}jYwI)-RRfocc9=m>0SxE~oAtp+Tzpi-^lmWOS;SHG78c@5x*Ael^c zSq!A&`cLjn^yq@P7$Qd)5JuM=n6%0z8|bqGLt`3`A9)KZkURSqJJi z*bb1>v$NX+5IZP%#z4dN?+?9b$K9I)x~;1Qlen2rd0{=RvkrjfMDTn^L_G9gQ5v9~ zd*t&kx+Zfy|Ih!-Q2rkv?SJEs-YMe(di`M?Q9xeBLcvHSl|9O8u5=bJ+P=p>SeE}8 z;tCP_h)UQJtT}*#sH7Ho!cMxfe{!fog7n0oL<9YXNC-Xb$o49_-cp9%H{>?NaW3VD zu<@-lC~(9gtonY!e)bHFOlTHur^*_)7~eQ3$`+gxiVxQVJUn6LH<5mW#Y zEQJsep5yzJoEYO?#IPAhQh$Ey*HWN%$k9X%n;G9%#_f1cCo0ODGGJ0xa$80eQpuu8 z_7fs8l()hZi>|3w%72l#|4O1Dok1VuhaAc+tAlHbO6vBFw&`>8$^Q;dvmMx;)km4EYu8I_7P%`*p4%yd>&ROH;UgtT)zVk;ui68_fk z1jhP~zePoak*DMap#P+~m*<1%gTS3UJ5nm@HM_cljxlGC;U5qse1PiuqG29b z9AH`ooh|I;l@$OyI5;?fJ-Z1$3y3l26=ni|qt{cu96^*_P~PW(LjV9Iz?VjN%YZ|z zmDoRAu&(9ArkrP$;81TfT#KesHBj~$8NCe-@MBs?eS<_MoV}Zw% zC$tmjgZ_Ztz ze}E*3$G6m4#GvD^?pHhhLNK=+jtEf|=()SI$E&<5Wynj1?gGEo8Nl%PvC$UajN7Rw z#1y}&0aj9MW#QhJM7X>}-xV$`qYnkT(Va@`*gVX=BcXQ9f`|_OL3?7nC8sGGo8L2` ztTZL^T%0Q2QU)*P#=4nh*$z2hM9X`|HwXF$1$c~`{$XZ0NXrtxLJgDAxdnSi^Z$kY zH6BZt0&(t)?CKZ|d(NiqZb=hR(Moa?A-*QGuQkKLf8kZhIx{^zww(s14Y=#iji?y# zfhZ!3$QKc<&>nuvIMyeumY&W8ll|P89I5E}TG-WFS=~6$Phd;HnR>Ae9Za?KX&LcS zSANn;WK{^7(7(8e@~xA~>K>0CXfSTPefSsQJAM?o>xUIFx$%;8bkm7FT&m}Z#<54E z9&wmE6vTT?aa2;W7*AnwubUA<@g%i&jR6tVreB_-{pi7$D8`yQBb-W2_ z)Gfx1jogRTBdHv#71<&~HybCKa5P|^Ex+&hYagk;>Pwh8)h>qdz%of1LNgBm>!T;P z`fQ1#Jnt@HB9jXP+%&c61Xu6s;9pBcPoLLy)4J*mnyFLe=J&95T^9VnA;%efnCkl_ z6%@jc7*qV7J*=8Z0Vr+f>3yiJi&`zYoVRFyb85zFYiWUp(Z4f6%yB{;RZZUjN8L)8t>W#1qz&4ZUT- zwD3*5k%@^cJ+gAG0@koEA%2N)RD}LJA%tuGXK5YgDGHp#>sWv3hu+L_z0^0a&0NPq zdb$lIUTi{wl<4|vTle+q9nh-&di~nc(gW%_5)285p`b+(hgl_`oUT!Q9kM@ZDWO+H z?BkC`pZ4t$xn`gl2pUOZp>Y8W2@Dd#n|KY2yHE}-%#te4rK^lyauR2{vAoW$??2O>CNf~4p-C@G_7t)0ch{8|h^ z`{)*Z1nx(T;Nby*4Eo!}G@+=Qbfi_smvw(yE}#}%#jCnkpiS9Vt-`%``-L0#8?JY| z_dXXjecXD@`E!K*IFgMq>2Jfd=fg-gLKFMn_@Uc%+y4tcobmb(ehA&z?nuB5qXQti zGCGT#gmN+4da%B5La=*6ONU=bbRB%k3XOFpBtwkUS|q zL-uI~dj4?!Ki&V_*A#VhJfH>ioDRhLF2M6C*SDG~eVP9JS7F`OV@5`5Ko23+7M>Fd zs{x`5u)Rh>8UG)ziDwUG`RoE10EOqK6la04uyYU)+u^lY_ zH;*;?{{$N|2baK);GJOMs4@@3<~i5tEJ#Pm%;rnh;Ol$Le{L;{*J#UbvWr&_oDGKw;Z z^Cq%bdzvu`Ixz_*CJPWx^)X&UL&g6@p&5Im+U-t{oBft2wYPT_K8?(KTF<)1N>X*j zX?6|K>PKNKJ9WL$(}`&hNS;txO?8J8<~1Fd8k?L%4~8)a2-zf*m3qiC zA+Ia@V$^rY}5vf+R@+KQG){d-X=I z{w)0LpX|cJjr{&}!7LN2re&BE3k^w%Vte|b*KxRV?Z>N%SmsBga~^zKMzCrEB-hM; zJw%mCyU6QZm!T%hi*1}sZtvf?+xkvwSRH#HDYE?r(o^+Mj6`kQ4O6Z#z4zGQIA#?$ zu1rA-5a17Qp8KQ_7;8S!EE=1j+nRW{C>gmwcSx!>)ySDHw=Y_~NXTURw5lkT+mB3; zE$1$h4+gGj@bPe>wI1c?3e|H1)yX0#R+3#=P=||00}?bthvXoUBRD%s z7-YB4!tIqo(+{sNX-?OCO5d^kX}gJ?YwR92@kW3Q5)wI*l&G*uoc_mTNBOS2-bh@% zOYV*(nq~jsq0OE;XKB}y);{{hnOw$#RY&yqpVaiRJ$A7gT>`ogF_-4mU>W7LPZUz? z8xL4MmUrxU++;`(xMr~dd8_zpuQ)Qj>9bibls-e`%Jw9FQ+nPTZKi>i+>8;MgN$l zyuR_NNGJ|dZMvRx@#ML11dCy$&E;74RbmV)<6B$dy5g$ex*odLeFB(+|yXzA#uE8Tw+e*o# zrr11;4>NM&lJ&GEW9z8Fvy(Hd?3CtbS6 zPJgmU&w*9QL$sb1d4TxOrNAOup5$6am!$cZJIwCmJ3HQ;p7tjC_h?dSt)`!r&d%LF z|6n-lqw_bQekcVvn&5NCLo$J9ja+Qn$1NhuM&pa?F}RnuG^|Auwj4(k`QJ7o0R-A(WTb0QJh6a9-vyR<>Eb9EUb5R#PEUT_?nI**jPQK=_!;s98g87j&Ym-@zv#W%u0UTbM?_H0wWZLW#mgp7ITxN>(l4mlC#I!ng1m0W5u9FxwmG9pm zGYLeI3BDn7cWNS1gmmnK3SBe4aw1Votrj)$3LD!=M#hei+SmJaV{tqOOhsRmZ+6mr zWe_CMdZ+vw-R_!E;Qqr+8uyK+AlBpn=` zNA{M|+Rl{7^3JExX05WZ`K__`9rJ&Q(!Zln=EBHQ)F3-~g|9UlGqb#{M0$ zz0ZGMf7)D@77=)Kn;^u)Jb}fNM#xy>jn(y`M11*kR?Wp)%#7dh(#n}Cm!USp9k;AM z^PPWeNgkixGzz{?5q7M&D?kA6igb#HYp{C z;im_v7r`Uzx0yXv&A*(POC_nFS|{ya$j@RLS|7`Cep8H{M;9XAf=1-67UROj1)URx@=We~meV)L{5(oqK&0+sngC zr0O7MWcJh8q^+OrEPChN?xo*T(!rEpdCvnBOVDJoOb26emHJFn5PWx24EeRSu$wkK z#Oqbl_&U3evfl6BxgKZ24NVx>joMAQ~M(V1%WJ3&cHa0`wd2(XNXr z0)#beHs;8kCUI`8d3Xk?_UKxOI3=R{cXWm-9I$K5Bo2HtMcmZYepxgpD0u2rmVZTc(8+tJ2vc7*mvfVL$N8tVNoA(X#8_c!w z0WRw&(;tMh*&R+DEJ_n(Y0`UFL(;g#%&mV`#yRgsk`KvMY2Log*F+(uM2_{5ipmDS zcD*9g_~!LX8PUFb8W%TS6rE@OI#n3G3&aV)>=$+vgjN^;PljHl=p2o9(U%?*t|Zq~ z)BEgFXm=>UlHAC>IDo1cMBA7xY1ynsV4kz~v*S*b= zVx_e`Z~8E@vl~ysm{wnh-+!doOhJEPfmyUethXO?b$7oRIVn5 z`vjq*?4xMZhwQC3+`ve(Y{Jrv9p7#@U}0fMhpJn991zX}gBGZ?>2IRbQv<(GO7e#R zOZPbv3epfCBL2YX?SUFUmEUx*dOj36RAQ0VW(a}kF5&E^?5>T;nMBl5i-mw&p=K@7makgr>@k)hWgf+Ymc(4d)z-Wzgx4w zWB0>%tDpW)SQ6zQW1y`$>gXYx%53P;1su<=ora4@U>u)EQ1cI4xn6$|gHg7zn~8Su zcF`8XB`$`2f~JlzcFBf63Q|C`FstBsd>I4}8NSBN)A4!_!VlRTV~TX`FHLM;X1=?_ zbiUATZI%ts1aE_VX%D3%XLa~l`i+^zLyuJ}zOK%!k?6)b z2G7%yMcb+wECp%j)xks@_=--r_4&W;Y)Eu?dsA&s-FFpa<0e*G%v>oZcNm`_J&$=x?XOC{zea(?aDhz|D4Eyh9vJz*Gz6rD&=-O6j4P;IOCic?{azcHt3SW_ybdq z#5}4*n0Nwi1{c1TiuRFzi>?AqYH8^U{3qt7tgcz*3w!Nv_gf!5Y1wNnPiPfmzjk&Q zK)VsRboXsgXlAFG>y@!1`HrRBTo>bjk?+UUrA{qIIEG2-7>aL7HT5rXt4i>y>tny> z;`p8r=PsotHBaQxlyit5tVx>XVlzLEA^xTO7tr;Ux%Q zy{c&U|k>*Ya3ZjY_=ayplk65k4y*wogp^^wc` z7on5k>S1b=*g>z&AEGS#nlhN#w!MV%hjrI1>-%dv<}O&YzzNh5jS?$jWcsnyrIuiI znpVoEQG37Ze)cqfmO5XtD88#+xnRmIB9qehW(pCC+gLYWc_cTvhnqs2wTpt}1eG9> zwc^NL@=4dyM#h_>k9k6hQ)rNEC(ej-^GcQ^q)L;PR>$X& z9v$A`Xps4nH#XFrF}|m9}3z7A51Vs<$t-t(sho`|K;e zw0ziycKgmB^ag%{$IkB7^Umb?-=DgyzYLI0yMmkICA3CtKQi#5Y0u3)dCa@6E9p}K z?O@7DP0<9W=!w~q)x`IUA5TsHq|PlgHOcs+&-2a*R8n8(@fHBs!5+XEvoySD8!+&R`5BWr)6?_^SagV zsU23FFnzCBO|tI{4YQx%^!pW4`~KHPy^3~P{WaOJg$R|B{3weX1fdEs=&rwpBAE0m zZnqLqO5Y=!>S6u;auJncIonRY2#-ehW8Jw0TSA??zcQ{IKUt0ySGCsF@Q}vx-fnxS zOx0Xs8h7L9ty=A9>pABi^Nd2F7`)i%F?9mW$zQzff9`D9xv>*AEm-7HSop=f>e!T>~}mMf<+P^+DD06TO^*tJ?87oCoZVtgM~jx|N+~X5GVpt4?9qsdxt3I3N|Ns^d{eyEg+1(*b`@yE zImg-aC3eRwrJJeBRE;^;jTx4tnh@E~oWpzs)eLpkTPYrf5gr-u>q(_$R?#ph8his1 zTNmUCwmP5l$kED5%g}QsRn`h9jE{MpE?vL=m0@MW{`bsmYLSkR+?%F>O-+}KOE}Dm zVq?C6Il1J+#Ih>8hO*#^+SbMXv&T*R?z7P$$8M+_BI%*)PIZIBP260xMM%A&hPcW_ zd`G7f!EOF)JX_1trx@c_g~C?@U)XM3H&e!(9AV(#_#prBVO#gm_%f1aY~!)$`5$%* z@5%XWvOP-i4eQ1f8JX=4aX_Yim!5*gM$Ue}e^#Gl((KIDgx`AZ*5y>cr3*W6N$2G2sk-Yb9NN4Y6LMCIZL>RGW zQ^|?{_uQol0^SA7BuC{uiPK#+56^(ZvvZks1t*MexVO7hzk2+(X;k$76X$m#TAqLT z>Dxt&7sd1s3xQvIahkQ8rN8q11CMzqGJF`^sUI;u89l(@PLj~-i)l2YMV>sI>5V?Z z``O>q5!|r$A3iT?_WwO+WdRoT;jo0Fdhm-uVMg{Q>k=+d& zfWkFbs{_=MEvIp!NsNiHqM0q7^b7~jjShC5<+&;bYjMif%*g2~wC#pgy-!`N;)vXi zjFm;`_Iosq#^`V6B@qL%B`QknXS_VADp8q2G~eAR(&+QY=-rm+U?ECMTB^y<6N53| zkE85oQ+Ev>lXNxkcznA+b%nENYsYPd%Jt*0jg-mC+)2%a=jq*L;|3ka=eAXLa1h&I z33+@1?>Ja%qJz%dwNMJzE6;w{I)4tUR}sER#>&3kf=p67?_O_`076JPjt_=h0kff zGf#4ULH(wtfO*t@PqAj^o;q^u{WejL8>wZ~dxnp^33!jQ8e--e5;G^SoD529nK=w5 zH@sBiuku=r=PWf;d^eO2oq$yHF$X?V zg-Ps0%K25;WI5TRBQ=rCr^%uucP4TZaoJzN(mH?01BYnOEAM4~;a zxdorp`9YA|6ov2_??U1EY?Grz9k#CvRgsF`Gp(DMU)NVx&Ut>(TN<>j; z--AY%o7^wT_tzxsmK&8PMv3S=)}JDYMPQPlH|*zMR@NQcE{(tZv+x#fw@`g%j^g=G z%DKB$?USuh0wGAW6wAh*I;=}}83qPSUABrx5r2NqdL6YdGBjAHwXkf|%UBoiIl0f3 zl+7}gQBA}%rro7;vEA8OGNJEqI=+q+fbI2su`;{g*{Y*4(>E>4m-ojW*^Z;9qW;+V z`%l{qR@RErleY$Js+4sl${mDAoZ_VWvWOc5-Gsh<0%_TRh>+>i!zGcRE02Ab)z@6g z*=Gj7zx>9}auBjl=sP`I^_zDS$=QxCd7;;m#$3CvThvrNo)Z^y@4+i!Yd!M(-?Ppv zr31rHcR~wmEdsyTAB^+C#>_?i_PsI{jcwC>uS3=6K9M_VD{pmPk0rhqkL6C5nloOS z{KLgx2_xyYo)o`GPJUsZ%=G`+&BR5I9Pf-nUu7$6Ke)0GD)X!N#`LTWcMD=NWqdb1hBewfz`$)VF^D!!i zf7=@GL%#QQa(0W!>gqqL>-Oxg^yMbUv!n&w<#R!1&p}PO8JNkLG$$1Dv;0G@-4l!{H z#pMh3bH9@UCD(Q%FhRnt-isNQ*~XGQv9~kk7R>0X`vLNb(M(!d8$L8A$IQ4^+a?0f zEkVz#x;saBe}j$FZr5eWP(2fEUD|gTWR!CYRl_4yP%mk591nZyfR`dMG2#$WktE`o zw0q(mlik2Pt?sBPO8Op1zo{uS*c-}i!rb@uYjRA?8cs)pT))~|!w`YssZgctx~_22 ztG!`D!so}cKFVq1QGMyoCHL-kP)a56>ZT7rA04eY_hsETbKIGKi#Dh0`ekDhw{-p8 zJgwD@u$y&yRWBT-^xr@5UU49CsIk1!_A@_Uri?A5$2(wjO&0fa%KX>)Z6(4DDK#E< zF7A5SCk`xZR=g6QI8ve$YqwfoiV5ztxrp^lPVA+PPPQrE<@=Uu&OE-so_YATfb4^} zw~p|V;pB#eTr9zAzsJkLL(Tr|5JyXvL@z$K*7b8?yo0uMH$0P1LQt3~S!E9=5o0T+ z3SW6Nk!ajO%E`I9cz#&W#C@>y<%3fsH=Y3pCBuqrN?5>F|KOQ7r=zguRw1?eOVhi7 zO-*znwE05reJN*{j`8Hal(l?9M;!~)4PNc`%*N{unR4Q9TYT2(#nbq7y#=Q?XX8C( zA1-z`+Y|7TVCyEvlyF+$CCgzk1=v3jrKqJBa`x}4tKLg^5Fz#B%GqJ+X{I>)O?37o zFY^Is`~wgKME03-r@X(sI^5#t&t+5CKi(e8p;pbIJ`=}@MDi^bLBqYT*lAm*-hqra zX4;(9wYzqwQU+769%FjMX^EVIu4)*YiKCK3ppvaXkex}r{B>}PM09Zo-K~dnR0cSu zDzVdfTV&L0AF#TW9CM``(}Y~QbM_h!Wd6vc?D4G%Y!lr^&1=NCoJ=2DqXD4>z4oKW zx9YFR1kfhlPp9B~e%Up6HcV>yD(1N)ZihKXYLgNUcGDEw7fZec%z9;xt-wsQvzc_= zBJXqqhyB~dGL~G}PYf$(IhMZmY!;}eU2+XBuMcfBIecnNi`W=mqoR=M>}ow7?!aiM zT^V$2h|P&Nk@K=T|7I30d&8zA9f=40;}zZydYusyt4$~=gJo;O^+!k)Omg{ z;9YeE%-*GyuRObcaY21SCFE>IPxBgInXT9GY-+d3!_%ZyB&EB;JZCUEB)RWJi!Jlm z#L9dLr-t&yq?`msFPYG9FM;*6hSkmQd2~`i6cp~tY=s;A^LLrza@A&(y;=4Cx1bb!l8Yy$nN#NM7qS=Tsj53 z@OozM)hejLNOV(LnkA#wYRkunMwBY*b8r5j5Ju*@+4uu#<#}*UFUjFc%1hot%e4TV zq+CHA-BFLjcf|17w7WtHS~rVQP56G7p$WagX8n2Vh7d-$^!Sf0%VWlY6Y*8gjn9;J zZCCJ>dFyhm9JcAF+0XrKl5#xX>rO8+sbitHH&k0;jXSHJF&cWb#Q0#vS_<7dZd+gf zCMVZ^lSGIDc(-jXB(8scv$(NtF<7?x%9ZlYvvlG621`->f+<^-YwG+u_CM2&^s`Sc zdBu;S%KN+@Cms3;95hLsJo|RVMB;dYho*I!(7e`@(ON2+DrRCFxi;K-t|5W^<1E}h zOt|<V}VPOVzDQhRVJUDy`L~sUWAX*2xzE|+B0P67750u9UXVSSqSH2 zWTmD4RXT^qc;&yHQgs^CFu#H;kEbYl_;U3s?M0+S0uI90d~87PCPz1p;YoD#Ql<5}w?B1a@Ykcf-0v|duIf%JHcKLJh^BoS%p^zF>eHVWcZs2t z$ye3ev@dyDTj*L;smi9E%f)Taa#uC`HnYx!>HCx779qzbsaaCV!B?1|%*%aWQ9o-feiu65bE6lr|kojtlK*ZPy-SIlNs#b1Sq%?~ zNekED?VivbiSx?z-MX2Z0>OnXD*Cw@FlZ z(LAAIExcu8KRi^6!;@D6q;E4qxM-hShqml^-^ zxHX}I*w54QvDcoB%+q|W+WEO|rfQvoLAM*yhmvR&Jm-dU9)BIf?W+IXx0l=yqt*9T zi@Yb+CgX~CU+>ykqxlU_!oe>FF1QhVWo)TJwqadIXuTQhwbx8_$I>k2^mKKOX-&_% z3I?L|ibPaRzgb;;>%qR~378L%aD?mA zM!7jT3&3bBD@$CI7z1Ik1=Fi^G&Ny@;_Vr~*w1A0GkeEp$@#-3dqIgy-j`(*Oj)LL!1Yy+lfBq z-c>Ci)7Xp4x#N>PW#A07d-Dcyy+8R%~6%F65@s+S;jrJ|(FY;3#)^KwClUqiqhMp)1N zst{=EC9Vw5mgikQAYHRN5lJ65u|G<8unl|Ai*;Qj%8;d=&$YE)L|@epPvw{5tNYZ{ z{c?^TLnEiARiGlwb@S9(4~jS$&F^9Kx-#u&yi1a@#5R&WmG34N!T!pyYh|WcET`8( zz@#MB;jTIE;*|OW!Vswh!EiehdBUQMnNK~t^4+CwD&s|l-Y%xKfT9Y zW|x=_tIxR8*fy)uHLz=RAh0E@sp`0TT!IhXYrjF+3#OUCoeUQ^)HqI6)zkY9q*!oKLkt6*_dJ?QNVpKR;!m!;9&N<2g3qZ{ zc0VBcR!{8LKjujao@ZyBqw@|mqQ)WAYujui-qA@Z`MDH}`)E2X23ajbo|F>6GdDt{dReJh^nx?cg+NmU}=ZNSwNZs&htr}i5OX&-A6^&8Bd5d}?L{c1o9kUGJw1{B%g06z;BQp09>4JgvJW;9lx(1zzo^;5N`& zB%aBLM2=BFM_SYDdNSA~XrphXI#@Hur|Q`MW%rfzS82YPUf$`Dbc2|V!_NYoAL)8> z3y0(Pg*%<2h}J~6z7BYl8?+Z@tu$RcL!_sT?b()K(hLR)l6t*Ydsz@<_4tW@fJ%H~7j< z(5Mt$ls_MO)XPn%{vfQHp54e62Gt4RaRxS}yzpyX5laRjOI!236X^Un8E zR7KA(?|7vx$VN$e7yC!`Zy)&&q$)e}WSrh24!!U=t*cH;k_1hgCB*^YZbD zecBH3Q_E8o1+(3Zu}Zw`QG%T7Ful5dNB-?9!d1iB_>6cg-0TN+Rl6YngWny*q^A*m$AFpjTW-kB?YBI?J>z4veA=3MYa1VE4avNpPwHY2@ zKe>8xWHWsYX>lUdX(rT3yI@j%^I%=HGf}q2G**h(h%JnDm*)Wzd0~emGE_^z=s(lb zx}$H+f2F0@WxX1OA#*ok%+PHnS(ZZ+xzxuUEtk%j46a@I~#J-h2FOP4nA( zCln*9+-ZY&q*nK*jPKAE_ZSl%lULmd(z{lt!_=Th)`EiJeMW(^i-K{5LNT)X(QEGF z#Pr-)JGHyT5aQdJkn@)ux)E}hIx>r9B?!gqXW(_#CO!M|5(JGMAgvJ(gH=+ zd<6aiV@}Shc83d(mHVxE4x+4`ZtCC;oEA*$su>c&EHJ3KnW};Ewq@t!6$+-8SCf#( zVbjH(0kj0H6_^Q?=7ZCF=GYRB`DV-HtoqN{)EBvSNAj-VsGjR|AOH% zX-(o>Q`dZbW;W%erGpGqVK{6nEIDJC)`WfX;ns%hCE?Wbwn1$3jul72Bv`&9n6*Kd^ z?>z5stoQr*=H@+p%G`q{jaVFT++e0#86hjvLmKo95$(N#r~M z3VOW?L~?sTom5I=FesSh2GYr88xxfnS9SsF?H~4 z8Tsn{`OCudX;Ix>3oyhg&Vs@ey^wSaGuNE|f5vJHTtp&ufotOaZi~4`{Qm7pF+mg= zs{gaLjFKr&+^65ztMr{`6BtM&sS+P~#z<7Ls=w7TLsTtpAtln%{=_Q7vE3Nq;~ICuazGF!ZW-+T=%b$;R?oZ@*zVUZd~TF#Q^XSiZQqvP3*&u?fgL~BI;f+$e%;3 zp%GOuBH>|7ms6)8tU!4&vnJx;vw=dd_r9#2Jrb#BN4$aYjg8BxIl5?aNthpJ{u!(7C7unFHM?K$rrFM#gsjh)WV-lsD>}2 zO1vvxigZ(JA|)yd5nB{Aa#0Np6p^o^jFNINPzMhMAr1$em&N!u8Z8LjzT}#kq3J&# zKmLT$VPHvka?)a#nd)oTwgD?eP#d2}aN@6uSWhEkB1C9;?IT2inH>*?;8c9f*WSJb z6KzX`bXvIk!5Go7VG?cnE zR^n0t7*q5ua+f&SQ}79$aqg-Zr}_2k$UWc&>(L;!(a6Y&j?e_hB$alW6fRGN+^L4K zC}*~#+mIi?N=q+%#8Z>L>v+a~B28XI_MWJvJ02D*k&Kl<#}xHG@+BGld~Lq1+Us$= zaBmL}dn_|Iz0_026YVujBm%b?sO%pNDdvky)P0sYQ)w#4Qkm)5oxyJC=v<5~OifKK z^w_HdliB{0SrJh}5?bnhG_~+6qGFU<>#*l`s8(Q({^-2EXlx-GJH0F<~&joe@C+}u)_qs3KjIY-PMrloD5F$4kuN~QEqR5FLY z{ncObQMC(^Y>Aml_^RX>!@l-@bgRz}$6R{XVHaCYU$j}pjj7UkI}D=Rx0A> zzo(lEOJd>TI+xhp01!geiN~h9aFu<0K*U>dk!W+eqhRE-a!8Nro$BTFoaDA<- zQ4CyY2ykmuA1Zg_bwTMd>w?25__(irrl<<4Qp}%#s15A2yF(3vor_0A%|l^cdfbC;FX8#mk*G3gx{AhmhRdS!H>}Mla`hyM-@Vrq@?8CjgEQ< z)-wa+ae81EAg>gA)6JdEI{&>g8tA_-$dJAjUMy| z>H#nS=id#ByCxUv+XXj+cGPIW!^S%u^&oOa9LynTLBJjj(W48-^PpTNQ>u$LJY>2$ zajD@Xd1N>r0M`^Q`bI{HYJ@LaC9zLfBy2oiWW`Bzekj2^U)V~^d8-YS$A?{OXskCR)F|TZ|sG-nrMRmp)ur(vVQj%F+SB5A2F~ADWt6ttLrNZ||ndD~t?~Oacy6w)1YShA7$bVKjxZ%Gf{w{&CIp)S#H~=gt%mO6 zI))f{3DjheTY^BnlZuLne9-se17466MaGHf6ew_d((;MS^j5*apK*9>4jz1p3S9hf zwtlb;9ar=T9LpDaHppl=V~R@5^AlPzI|porR8R8+6;91O9*LJ@5Lm_n+=Ir2Z(XhN zj6^G8u=dyeYAP(tXOk=Ld{ zQ@Jooy$tcDED;l&aVd5N|GIt{-m=uYFN6A;zG0|g8jg&{*fxb<00h?c!y4kxp@+#! zUK%el6muSTlbLm0LGgKq6SlT@uktbaM(ieQqz6@cM;>mSWclx38yTf za5FFx;Y#)w;qU=%l9|WO-#_x1-t~_Z_H{>hJcMfRrXop-!{Zv)5sZXTca418i%|NE z7I^5rUeJGNr;(#4u3y#?8LW)L{K}x3DhvBCuB`aOemjV8K5XD`4qFRR!YZGW73RU{ z#jpK}Fpb^5EqkXLqUKhN`*@q+IJTY0s?!4 zJWG@2d7hr{m9x)%?)QGq{hV{(=egha?ep2~{n@ScU;qC#{C?l*TDMLr$}unDTtcBx znB|WiQl?OTbE8lgDbxk{Kc)4aTKL!E%SSb=D3lEzNho! z>UFUSU4xNjI-b7Ds|U7ern=os;0?G&qf`9#eH*#0EWW!7+|SQ<>l@?F5H`#j3hetV z|9IlFSi9Kk<2);IN0%HH7S-e5Iqf$nizpPfJS`fVqL;&zj&hrcgh zo`c_;Hn}lSD2EQ=u_!lh{=GM>60u`!Il%iUGA4$Zwu&7;HDME*(zS1UdR};~ZZ(!W z_bMVnKD?CnTkY1kvWkj}!v4>nKW{UqpNNc#lBK>@k4{NRNp(Eub7<3YuaB9P@63z1 z`-7h*B_%~h^3uOVp5~j|(e9-$ta1AEX;syh>n^jeVq;??A{Nu$T>83+%S+TwV%n>- zvs0CKt6S@%?%HGfxj1qL3noXp6pkIsAeW=v{3jpjpB{sM@f#lGwwb%tpSB$IOy!Kc z+#iuj*4d!Hq~8DhbG(dCU03zmpwL%xq)cTgJOB7_snS@rVMvzqluNrrV@K8N3z-QR z{f}IZrjx@Rj~+debR6B^9skaK+1eFeAMIku0&5?XbUP6s(lc6Xp%kiokjX&3So*t;>KmKuCq#|#F~zDmcNkm(s^^~6!n>Qx~)~)XaC)X#rP$6XU*5J69GX2 zSc#XG*gI2yJlSjV!HYZOSZJ|CUq*PaL+3LOE{7ktwke9WK0LH(mu+{|p-rdM?AwFv z1U29M{C=I)2JDx*_LcabW7Xckb6&#D8WC z6`Op0ewg~~<;#|YLcvOY18VdzHDieis*_MEnT~Mn`+sW>9#%MmMx#I z?w2wscz8PMOpoeX?5CCaU6dr#>IAl27ku7C?zL;zoX6@#>G9Sb-@3hxO2cljEn-=p zGI5R`Bw^QE8K=wR<1ghrsrU$cZqI`Z7CroL7MfH4A58wo!_3c}IB{ZhORV!~^|o~V zKdvpL(HR&Ql{sFul^<-CFsS}H5~Vw1T=Zn`%+%Q2 z5031|0$N#4_SAEQ_RA9$64JkN>YxyOIW*|N{{F|0A6gcfBcj<8MbfhaUar&4+%|qJcBwFl*d{XgpqpLYD|x-k8%wYXV& z%cJ8wDk>^Iis1q24>HbZYIZJ>ZArv9(CDHKS1q#zc_f^U&9~!qK$QS3s6(BYMNZ;R(nag8Tdb8sxxoBv>yaK+52-t^ixM!PY+zcVsj z2aO@=vwDARD?x$iTVs{d-dwo>qO0?$NIY!W74#Bel4m^_8W4@nq$jl zbsc|~HoRH}gSoPxu#nqjyy+vitJCMlyJ&Ql4dSY*s;2gL4%y0UXlRUHWGv)-ZdRKl zF{A%P8PhJJ?)&iJDh>|0#Bayt%_;@eWLqEA)YLGq6M17+Tk*_%;sU0o+TtGW zRpsRU%58tR#F|#c(}ENYS*hEUqP5dS=qFE}{JyjxBf-2r4fXd^LzkV(jT`ne6YPUy z9M(NGZ$n%rji^n9y0ey<>5G^-hx^~LmV`)4`{chr|9Z5i)`JcA-SsF&Baw$5U#a70 zU_k~rfn#eSw@tfqUh}{w2ZgrYcP8h8GlNsTC68ps$A4j(nLd>)uw?1d4NtwLmn>N# z?0-CKrt%n-#_m}yI1%>rY0i<~>osRx1o;I7id8PxP1j~wOjl+izf81bK_m@pI&5XrlRU#=$@BbppIy2MfTEbO?Wj8n7EEs-BsNZWH!bq*vBhFdRJrvAS1+_54LFMG|26tj_$n5ux2alHTOJ&Z)=G|*^<8g?w^lEku8L6Qh;IM1mRsdfY94Gq2F4XnC?8hg6A}{Iu_IsSAXC+e zJh{7^<#m##CFeXgi0I|GVd-q~$sZgXjMYx(!g7?Jn<(iLT;N-dI@|0e?Sjo6btXph z_4&gZ8r9$bxE`0<_Qb);cyGLEvd?jz#E>1Hw{LHf*d?0T|L)S6H!4dUM$LQKMdU-3 zabuyOp%)K+=C$9%uW^fYx?LPw`|KjHRufRnAf4!v}K!+{L z{~mWFbTj-7{`1(_dpj~R@;Favowlj>vCstREh}#63$HCY*1UJ`*XUQNre~95A8gi7 zRsdY%XD>V~*K(kq`xDTZncws&EvRJS11o?b+k4);X*G zBz<{Ou5G^PsjSMru)$7QPE&bG?P?TIvtIUDf(&uLY%=ol@uPyjE+2&bLQ1Il*6E>Lu5i=+0C(`(v-?7jda=+^}GaYQG&rq^# z^Z8m^Tl4brP^V0LkGN^KThaa-@cI9PONAi%LjqzGd2QwZ7EY3m)ze${haoBhM2*toy#Z^*OamFm13t znfc@&0j;R2wdUzPcSRehv^Pej7n?uaC8#5Nb|fxjrrU5^@YVC$)t%*0a$a1Sm%ct{ zlK~X`1zH1vT<@*f^&HSZLW>}*RlvZK6D>X#83P|09Q$TGb*G;jmITx2@;*G0{W*-; zQ}un5V||UUFMKqu4zg=V#r1%S$Df$Q0%SK2wiW`KRa7S$Dm~uW6d4s8xi02+gMRy+ z#shL<>x}1m2}jT?@vUrk+q&Xb_H?Vzz}0DAE%OdE1b%kUyz`CIZK7UMlRp8D&1&BK z2NZj>;;l*LgUxaung@2Mghgw<{jbHR+(Z*%8_4X|fMttplenDGgu@U9qS7(!1vs3RtW&)7x=U_<*M~iob z8`~|f#&c6B>2Cr26#N94Y1W-(Mgu?c;<6??nYf+Uygst-@6Yj3lCmFiK40i3#7Zj* zVm$*)46IAQXoRYF)Ss)T!YOJ&QTBA0^gqeRQm6AkIE(=CG+;eNxq3 zhuQs~^Z`je9LZPuRf?GH~}u#Bx~k@Q$g*rS=AP(}!!CLzQ>bZf#UmBR`^c9QH9FKmwX?F7*oP z1q_P28OT;{_S$a=HlTa8=?2sK%LnZ3Czc9j^#AY_Y5=bQsA#Zjbe5&QefyS1|Mu;h z1FHpwq<$l_5TQ2&i6*3bIS&84QYetDANQy(Mk~2cFx?ce5iobAWNx~o>79oMTMYo@ zsZ+0872W>?vL-jd3o>dLeUF8D=j&6S#m8Uv;COV8qiy6!3HR$CKTt&#!%a*~fCrY0 z4OeEQe2qJ;Z){?c=;6-3dbQYrt**cs$9bC9b!B+Z=m@iW0xIvd6Eam+QCSIsIIc4% zrUuCB^ZB5Tt04c59TAa{;^3NHGjdi1JHn3#iQCLhPgDnN5VwAXAJlSSY;O>OAYPN3 z-KRV!UZkaoPw_)-NUqCMQ~IW5^lp{NWKG?zL(d^002v)Vyjsj?hegkk%3X2M(b4n5 zfpK}kw#U=20fkk0->#e4SUUSH-I3#}~RdY1V_ zJ0~2?iePEsr*4Iafw&>~@(R?|!sv#jW>`cU{0Fc}b2|0pQ$R>^FMxZn=KzNZ%xzw;*J~K zN4}Mr$2~Rd!wNhWYHVzLOhF+$w*Fn*grn1xZBf09EGl6)OaHfT%0sK#z0lY}FqM_R z)!mJkALSHSxNxCF;90-zW_2mA!BzII(@Xa4bIg&UVx^@_4;HRd9xV---J=H4jw05+ z6xz#wK^*>?uutY5!AiAnkFZ($;O+RaG?Qi06kkoz~=>T>r%L9)(iXQ_c9V5(obq zkF(JjTmN?6dC|JdvZHN=A*Aq>G6)2RJoNu8Degax&)YZq)j3S^T z1`xR7CizF7>)aGd=HNpWMWfy$Ra}la*lzwdKfj!7EqFwu1M`X43GERec;<-)KYLeQ zs+E=9!BxM-Yd<*76OevmZgY@gn<+VwWJZ;U6-t@qN=^&#BO~o%}&Xg zy>YKzUFv1G)if|Luu4AQoZc+-jY}vw&EzQBpRmz9K}*uC99UwFkvrDCDGj-@vmxat7kid<{3snk}}u{S7{lC%w`B=MnJRn`ei za|5J9wxJS zY}X}9#G_+xA$g^)JLhBC3z~gd{FqKebTmKqa&zMu&K*R?T{^ef|M)BLdxr5S;vzwA$^gexfb$_sQ-xqx$=YKbEEw>7VvZw!G z;$B93_~;Q3n7!QkEAJBw3IThvGiE2d+CyAjcpud?QTfzj_fK^vqMVkZB`64{w(#jr z90Px8#63CorW&I0+SOh8xEKYm#wh#-TW@+_7KEfe_jTqet-e~~w%sYl<&iwD4&A)2 zSe5rLK;W>4J}EW279XlbKM6)>0D{o7Rapnt$3Tlr{b%Jj8`l=IZQ3yOMav z%kJD#CFz+!tKtr5hbK-HC6-79Fza<6Au|4_*QZ__F)(a$7;p0E`ld#BiyojzT*hDl zZZY}YK>``rWUz>CZ3|AB7-VGKe|fyW34n`0QLFlWClo2yW75U4t|xZbZeLlr<${3b zd#&y!ri}|IT337CR?1Mf1zCSvF1P+vU#vR6?MS&A!Gu*!8!;|Q)MsH~Z5YUCHED<8 zpLKf`UOEZ?MsYi_ zkoBDUvcUWpd<(a;k?H(jk^~oPqwr%c-Iv*Xliyb4zq{SvFnF!F^`+69?+^^*U z-E*|XZj3!1T$W07y|M_E5XiKIBLJUDw+C7^U>RdB`3z%9hv$paS>7ExI#9T%O+dzV z#s_U3-fhrKfM~l_frxCr!@c!W-xP$L2l6-)S5{*&Ooq%&8wzUjh!dx#rRvJZ4IDC$ z_uCK7O}Wll6gpa@_awP5vmE{^*Oxsv%c1Ku;A>Z|%}&6=aH(wC=81yl6CJUs}R$N_gcH=3Lc?UeiK_usABi|c1MN>4Yj60i!Q zMYL1H=Y3@nrI>?Y`!;_vIy5@kJGb?hgEk|u1Zeczw{Js6i&YAd!pD5#S}d zy{YZNsB@(Hk%2`a?ez6~_;CN=r_E&8Ss1H~!h>wFC>v~R&2AmqM0H0%JS zH;?Nt_~z>;?6$4@OKmF-W)=Ivb_ly9)7#sdL+5G}k-8(ogVRt?I99I)X6$+HDfnd9 zg%3pPUBn`M@$+MVtEp)$It-13_0KP9HeIr;lEcx7#gkA>2S2Q{cw|s^*?E{66`6>{$1lv9YlMm!dwyqK8aYE2OCCvdcTn)=~7M=Q=SN zo*?-!Z-FIRtA@LSe0-%?pEz(%{wYcjZTO4R;2-#G{_IfbGpT3$u5 zEkCVxW6^K%Pzq6uj2oTDR%2G&N@8xZ91Ik-(4n3yk39V~nguh(+B3`*PX-DtHzGM6 zyrS0rD2%~Zuc$Pb9tMVLOcYA|$EpsB?{Oa3DcTlIz6wd59#|;FvABSq*XvRSsGR25 z|IYPATIQ)+>G2cZF>zt>mvh`02!pk=wV_Zbj(5~~e2mJPFT7@x+069p0hH6I$VeF~ za3imPK)uTqC|D2nysb?a)2aKkT)5-7@FUYxRnGwx1K$jTGSBs%5O+b#g}6?AhAxEe z(~)*5<(G^Kty|P?v#Gaa($>EnR-Io3q|N-dDx14O3kTo|70Po{Xn&C_P6W16D7FVL zFjk?m`uRxVE=RB4W!AG{7d*QUw$TPI&+)f$&H`#C&@!tsTQ<%cV%L@ms>AJ)y&WU~ z#N}kZSHumR?F@>e=O_5H zXrmKYMVr5&)X?YMsXsBwqrVk7_JrjA5iZhPQ+@A9PfUTnFx)#T4R4qJbV{1MGy2HF zcwh!YA)^{B()AGTDKxUnH+YF8}gF@wM?1*IBFgH_jT%1+6R zbd&0rINl8TQGFgB$~^t>tUbWsddCUie4E-Nj_f#9?8I{d9rF&DRz z!-87@cNN^`j1TD^;FMU5$E7fDL8G7?dimO8qo78Det0LC?$=LyVa9idai%kw&ILX6 z3}&FX)vW`z;Ac;7a$omk@>F`#^TxT^vDfO|_^^fuxz=?aXmGzSBQ-ZYRGSu+k>S*k zVUL|L{QR&dEDV>KE?w6?$3~NuPGUq@e%?h4hqhNQ?iqK=_0-%RU4}_F47~DTbg6k- zM_5-}_AK$!vgf9sO0)S>#R>z?uba(N-=BL+Luzz~K zzW7*)0*%V}Y)6Rs(9Iv~`kNEw@FXr?+6bZgacy_ zmlEcx>*2$Bt}~UcLAVI&uSGzc(cXZYJWb=d99j2g&H)zPzIYdkYcs(r_33sYq81JC z0a2OiAzdL9@S|K!H%P>+=1f=nXaAvQ?zw&Ro$zSTUk-b+7X^s+!TbqA_Y_F3ODOlq z7^%=g;kPg{>cE1pB%KCcBk45b1I@D33m@(nrG;1UZ(5?~$sxo-gFh3A67@A26L2X* zoqu$^*=yc=8cG2%$NrP05@33U%>1Oaxbr(^(X&nidEf-}FAxWqxUO!b_kZ49Vmd;D zw+$n81cI0nT6aFfyD}`kR_#a-{0gBSPhs%%5v!9NpMH2)H z{3Kownbm0VLIE)gt%}BLP^9I!ori&a7t;c-{;{BHLIJuewUkfB7rpx_H9Ou6 zA`RiBTw-WDyQlV*yw$b3r(j*UH-z3$wJaK)gc#DEppMZ4DnvJ6~x0wP0cLv3l8j_q^qbHr=`&Uqx)@mYa&d9ck6 zhf6ba?Y}zIswG)uYFAlBsX);S97f^k?#1G|C*Jvr2qNHE+#;sx^@BvL4czw{lc^=i zV~#dSqXP(;XI+MW54K>^>Hfm-<0?R_-E#xnbIWB?Kr%v{1|gQMloU=+@JoPc5dLld8NU?^h}jl7b?y9#v7z+(^~<3K^W(ctTE1OOdmPwNtaP8M)vkDdIdi43GgOiOaU?oUHq@ zd>wl|4mg}{+LwVTfn_EEaP~t=av6TX-28bvn!TO9v%7e_wsCfpbXwTN@KYHV zEn6dI*@Be?Bh;0JTgqv)yV~*F>zl8;T{1tUbj7B}q9=8iV14w0e_)bz)zwo#%%Rb5 zbR2oZmJ4IqFZ1H4pyT)7nE)zpu*uBL&UA&g6IKK2EspX?MjrtNLEWtB3N4Enl#cAl z@;Duv^3xJpNwpEkHAO})nJ+PK-dIoN<>w0#jjONi>XprMpI+|HS4}v4&huLENL=v2 z-;VS&Iv3vf8z(qDYv|+u78~|GP`Tfe1!jRjlqL-5y1QRC7EL{iLb9kR#Wv~1>vp%y zx!I|?*}ge08R+xx5b9BjRv&=WO?WP8ewe|xmaPTpy=i=otCJLjGOZ^DThlY1gC!dR zmqVhcHD<*_0yvCdCs(2eu*pE;le@Qmt=Gr!a(_N;~oLHA6Qjts;*P%z4tE zJfQel#O6b@<^w^!!J)IAmv<678oFnqi3wDK^`hoy0e6W*Vs76DA4Z1C$iz}Ny)zd) zWDFYv`f`Yr^ItSkKrmcqh0OTuShg#cuSHZF=y?GOALl%0ij8RvcI?%_&8}8E`?_3G zZypydTeI_N!(g{}cjjLNbF}e!|G}x1Pq*5o8tdt_T1FzNpio;}fdb;}4BW)4H?K>S zTWv0w{<8N@<|1E|f;|s_d#ZB8_9qym?`--A-v%+GFIY81kE)H-$aZl?_{L~i;zwEY zs`zu^1)R?zbPo9VwVV_WDxN*5tsNAkrzf#w<*l&3OG@{7jfZvRKB2xx=zlP2Sdadj z-kJ;7V&)tm8ZtRG_o~8Fc^~ELC#B_I(&@0Sfj!w_od)qJYPXC^I9Nt%8fC?v8y{wE zZNY2MG@P36iY8Q^sr5ywW-~n=aJ{GOdxR>lMBg-ur}o*5q8%LxbIfL9Q@XbIp1z-R z88y?>kVSB>?KCCI=NK%pvQd-s61*Gvg5=xv1JO3#-IYH!=13)B&q@7nZ+x4=xhW)1aVG7hZrY`6S4L{ zgrH2r`O{TQfNn;74egA}dj^evDeOkwT=BZoKRA^354?w+qKK6VS~~!)ECAymJsFRk zOJ6KnZ>_TF0k&oyX83FW16WP{P_84uEWyT$NBO|uPQszdWUFXPQ0NrY`<9d7{wdkB z99FjJ9b{4Jr$-tihwlllI&#MIswd>-;+HBBs^`v~dr+AnW;)`PhGgQDjSC!RZ6|>EjS7-jEFRUMjgq&2 zX1G+A3T!1u#G)&&GBPrBG)9XyJFZUX&yFziFkpUQ5mMVZ`(nrT?N#S2*0yKvIr&02 zT%Ctq=H`vZR(GG|otb0rOgg-ut0Y;vr6f_ExP+z;ru7lTQs=L@KjyG8r1kr{Yr9MK z51|G1LENK0d;a`9@FO4++O*UJnu30*8c=2kr~&qzWw^Tl;A6s#ZnYZResuu2447YE zgCxBlJHBGwIe4QqIwQ-zjgE=G&liI&qAKqJme+#7*SzqO5(h4rfK&;+XC5sN7$P&FN zLA>++msr4y-CSO*M8Np+ER{39iAAjCK0=Je0iqVu;{!;$cz$fYb?7`2Sr9KFZYcvh z*hZqCaK@23S-)W75^L(wTxgB%tlYDNoXm{Y0)6VHTqfB(VrPtH_VvgRCrIT}5&y1y z{lN!vT+o<)qQxdn43;WN^kDV*?>r}?qRSM4;)3-pfss^DP{0#o7^lcs`CMeQ*S zb6$av^FTciMjY%AqqQ>rvpD!DLg-Wp= z5tw}?R+;5GcJZu4?boV()^jsshNYFL>th|^At;`y0gY26CK0Vk>Fgi4zUKIJ1?u0_l)FV|rFF9NuM?G7@(v4gm zVm>+-#@vd6BoNVxv2Zq-GQf>q)ZPW+*RFDbQGH%IfiqewRH(Q+1t!svdEsCT`>FzZ z_`DpLr0Xm26KekEdAVVV(8_`LD`lxGw<%7e<0hX@beb3>;uMVz#2)*A;OQ!7&`JVk zfdgR=5U!kDbi4*K%EyLk8It#70YCv_)%{hR4zCfKybG)rK${&aLw2BH5-_9~aXo+X~q(PaIzD~m0BKe=N($eG5wFnD0fxbzY z1>j_haSqz}hx4ydo@i=}ZGkhYSldHK!%Jb{n>A+5AYEHomr3&BqsL#cyS{17g+qQU zRE8SbRq^rsYj>8nu489y7g6^3U$`d*4Q&_Jr>d1`!U>{cp46QWfX-XoM>r!PRYG69 zj^H6Y&)6d-)BCh6S@1G88R~T=)_Zy92{7JUd6sZjKsb;97XVdz@R=lj;Fj4w;)TOV zgvn3@S$e=HWLh5+IbsYmaW9<8cPtXbVFcL_>rH7U5+nd@<`^)bt!-x(Y6WT@<~ofD zq%#~2NGtYkHP945u@2}P&_az<3mO)vIbdTlq~=T%CB!XZylKN|fmk2igBYHk z_;)Ppq+Ogs_-6 z%UNa2C|9_c$VOE!qoYj+Tk>&XJ?b;4dni_=q-e6`o)E2nD3H<-7698gYi_2m@oMv3 z>~9(!>Yp^K1;$+$f;<8^j|CiuibQ3p?>ty7(C}^Z4|8Z+7mKy8N3It&yuPA_B!Uo- z*S`G6LbRYA0s=S&v3hm=<#)_}XD#J7Js2;ta7nZ$WS0w-dh@+~=e1t!jW1tx&vzx+ z2=Vz_{mv?L_$Q#Ra1n%RDIUZ^n?^Vl*_K+lRi1e+qlqCm*uns!wY`Jh|G;D-?i|DC z*clOy|M@N5uFouH2E>0EO@DJ^TLRPeS!f zBP#hNXdU=kC4{&nltZNO1+>%N#K-poheWE`!i;ifgLL^g)4phLC7HwKk6y0W8bqnU zZf>KmR79GJF)4er`=C3C2|QXUhf66xDrPec9lbZ*h=po_{eQ&;WAa*7%Xnn34dfiXyGl??!bM! z=sRIlK$c$y0vr{EGawT#B@pj})$+7xV(K{5V6$Y`dha?QXB0o?}8E{hDEE3RuB`L z2CtTgPkHBIG9)tFbnqcl9iO=`Q6;AL@}G}5JC!|`-r(I@=;w;hgs(xwT0y~Hq=SV0 zozO^;0YTPj9^J6Xz_!CKLla&hvz?D`svQH?`a?d5bsO2l?2bBvwr+cxQ4RUHpY`MEWuJ@^*vd&$+jn0O?6zjlB*b}u0 zjgOUv9C#9RcNE$fP)!7#wvT@h%~~#Vbjylb%_%i-QMO!gzb=97fe-75W`{j(9v-Y9 zt9kb^1<=5B5EB?=S+Jve=mnBamk}kp!!0dE-wB(~^p97kUZ9Th9Dm#oR?X|UBL*86 zxNHuC*a1n=3*rHr3}hFF(Qf~vTLiPG2l0Y#MqnRT9FXu}BXdwxi5CAB7^}Mk8?Fyr z6adE+>wi9X4$qyKL0CWO*l^f~Ulk?&+~08Sn&0jEsEg>O4r9IbW2k))2*@6!(FsF< zno`WZ9>E);^j*0!Amlnx2!DDMTn^1_ZX#rk)Mz-9FH=(XY1sm&AZvhChjS#aK^sT~ z0mHml^u%U*;Nx7&HtGC|_ss(!Zu-JvSd*xyd+A?*;K&s)ypTZbAlQMl)<&p=6H)K! z)9+0l+zm}zZjbDVFW>&F(5h+Ml)sesDMn+k7O%%EA;Mk&oknJ+CZo+;L695>0r+l& z6opc{p2W0aYC-f!orsNrdsc#0f~UqB8^;8%y!AeNrZ)Qo0)iHS~VZ|}QfF;&~&M;7P8Yj^X< zr>5*I3c{#e6*1&^NSBTGwli@$8)nA>I@)?~ocQ;e1TaKdph;t>XdE65%Y!)Jn)Stk zmc{?k%u-HihIaSe>N}L2eLtUG$7v!2d%E+9*SV3-<}z6tB4W4HQRU`j6}NggIL@evI?EODXsk!lLd0h=jjqq@|BhDbINauWpkB9^WlmW{4X*y4 zo_=X~g#F^}p?^JEqphtC2v~Qwn`N*#@^{<0}t0Tdz7JA=nLz#XLui< zE%B2>h!Xk#`4DAc6f0x=Rt8hGH;{@`wZ^6YwCIqV{$+czuRi=ub?8&n*vsSMKF7Br z`Yp&<#g#d+37PDKwK(1Js;Tb_k%|AhddTP0E1W%fQV$drb|fI9uYi__-R7LwAv37T z|I`Ua!S~D3eTH*ct@f(^@q4D#UdXV_IBf7wUgbX?oFus_%3%GgJnmN0S2OAD#@m7R z{}mS|9rPbOk@>gF=^r}6`G4~bO9Ik=-=LLob%0QGNY-c(B-i3N*4sE)k&JTzYH`tN zX_G*s0aDHmFl9@EC5fL%lXXXh)#d{^`;_X$sz=f==uOaJsOKQ;3JMA7rdqZVWf?8O z1(A;!J}tD$pI={a2xzX7xr8hT>?sn)#xK|bB))A}h%tO3gVZFzG>JMzsCGWSa4)sR zTLG97-G#`ugc$-Jm(e`d59SHE?9%$1LxfpvPfSR92Z)J$G8AG6-YK1tQJssB0X?vC z?c4Defy{*VFfXJW;)yF^2mqdgJdo`&gJ5F?SUH=_elBScfs%dAcaHPyHv0DR|Czbxo_lCf`rjm91%MUb`@uOHs9H{kfeFmhtaC%b$fm=hQ# zI$N=LS9G^GoN5oYq`(jH!0|LX39#YwRnMGhYY#_{B0uvnYlJxY^V4-Z^m(i61WdJ! zy=G60&-K(h-%)L?7wtD0b*|RdVAp(9A+Yh<_OLQ#%@+$VMDv)ba&~YZS-0i!>{mCM z_xU%slw(R{YgFk6oaBv6%O|~Goo)^)`^dhIv0mhx+kwIt8KI)zmwqZ7OiE1OZ8f*6 z$F^_bm1_UYw(jEgA*SC=ic@17FOLQ$Hl`Mf4f&&hM<{GBL$>~yw#)>^S72fO!<5D|B^!ejk-Zqgi3Mem0OX*wgusuS9A~YbPEJlr6?(1N zwP|>AZ&ZlqLH}3Nef4>ryjFjtoVQs>*_pxYPf0?lh5ERD-{q&VvF2DMBt}u9fYs;0 z$}MF-s2_5A&_`2JMQ7%0v^2(R#a_k=tJZUnR8E&0nwH)!(bPK{_3G$1v%9JHiwt~D zfBSxvIfxraeS8}2rLC0Yv!E&~`<>i_Mv{6qHY_Zx>_$KLgqZKI5MZa~xRw!lTR z5HU5iw4e@O24@XPJ8orVMQwsg?OX$$aFxs&z$y)r%h-8zh2&w!AMbC0s?LE!r;gT` zU^BSX;6UdkGc#sFSYInmK|YY7f+k5v<)O?hl7G%vh1^D}U0(xGW+SSI;ngQa2n)zi z!59_$n2g>eCtEaRth;t{ghE;UnS3umYFOAs*inXW(TH+3%3D($A=b-K5p*kdxjlUz z*q=y0s3IWd{@Ll+L_%6g(NR$*sB@BICL>l5%G?fm*E!}uT!D0v8}7P+sJC-KhwXDN z;1&WJ2`vy$8sg8%nwWIKKfw=>sswJNA!>O3{eRrATN@7oJofpDa~P_&E3_}XQ`^~j z26#3gAOOc!W}wxN*{3*3bD%!2S(YEffb+&fI?f~IvqFvEz9s1WaqT=Ax|7!U6M4zS z`EM6E`v30l$Ya`+oh=4-S-R1&ygX-Bqhl$Q6`z)ouD@lzmH!`pXEELR=J+%rsSN3t z1IsSvV464m>dXI~-x0hv43uT>ztzw2YpOMCdX}%IT)y~^Tzp{7W_J=(DOCOXicQ&C)at?b92Mzj-Lr(=qx4M+?2)!ys2Ikv!tX zrCqZC%O45BBlp&8)Cm9V!3JMULt_yU74=JFpKXRC3`byd@wgU);N^`?c!s0h_kyZ& z3sjEvAKNLRV6k|j@#xXD!{=~gypIx2=^Y(n015f`E2@`)al4&@-CW`&?YkxdXVfS= z`TggQRsLcofBXBr>^`@q9qB_eD(m>tcGLWrX)TeFRx`7kN^dXbSp9k@aqinxVS(LMLTOq^!^@0b<0pkCBM92l)Uv?Ldd6u8fqkG=|Pj}$}8;hG|yFC|$ z?e1F4wcF7G^F`4wUNpn>Fvn3S3yW-s!{N}ILDeC0C|53|P?ov2uFhduzmLT8du!hE z&8wi$?$NbvO2bZ!)mbUw>klG`8{wWhxI_=(;YPqz_||Dx2Yx{H>c)w5BftZ-r2@X{ za~`ng#hZau>1;&Gk?NW7osL4yxgLJ!Vh;KQhs-Bkrz)*11LRP)zFJIK;`=%OjsBU1 zCoK(D<=o?z=91YrV&rl6?p+!k;@)s}6p&DhW$LDiQU6GB@#21CrCk6T_4W0qc$d__ z4X$q#s`o#tMR%DPyN42>AV_ChG|)fNAiXH6eSyB#N53?B={~3N%YCjF6RV{JW-70I z*j=fy_A>K3C6R!hpFe+gck|oOZdFuOsqekyw@0?A;AePZR1_pUUERiTXJiyS17*tp=7}x z6*Z?-sU986?rP)kI!&Cf+Ek>NwWLH!>ST1RuTxgvh}`vp<-v5m7Zh^jA1QmEZAzm? zB_+;VryX;|<1*69whq5d!S*`IBQEV~^E%CPurvEp#Nq-Hv zl)XAN(`Srwm=_(bw_(GE3A?XfzFh8H#U1Lc7>;C24URgUI(0-TT|Q-WbaXmY0zy(` zwDnpu<@N9fq3Dp3#x~oW^E)Grj&+$RE-hTe!nI#rP0cU+D$|wX^_@I!6TSeQtpO0Hp``Ybg+*hAy%nTQ zn6SsxH~|9K3%0wRfWrYT-h*X>W~!wD53~ye1VAHDh;b+`@!7LyWecI6ygR#AlD?UK z`9Fs$%6`BW%UliiFtW?+17b#6jNfZ*<7Thb)c7)^sm+FqoEN@_3mi2u75WWdUT57cF0trzfBE95fZiDL;*l~~cU54+0kT(d;FEd*8@WaClCV@-OE8l%kOR+CV>aa08yZ_JoT`{{MM=<64wKSEN$`J=$ zJWu|%kZXuAgm%r*f=>k+mJ57f;SbJLKu5hdr*$v?aQC-G#S=V82EQ+YHG?*!H2p^ zg9#;7{p*7oAS6Nzq6oXBvp9!FBVXFYl5+LtpLc?pzhrLCLR-K8YP`}E7@7WpTB*(mmZJEs#FiYbz%t(hDz42 zg?Ay|&KIpQ18kE-1R{2Hp>9toI&tjI=V*G|M<#iJx-x9_&Gddm^@g)dQZqB1G46;= zVt4TV`s_8`L7`b$vq)TACDsKF>5OPNBd_T@_RO)}*T0^bhMPc_PLx0LrzHG+%@)o3-SYds^3w}WKxuhh-t`idztzfy3 zAcLc{f-%ya*ep0xkU7y7P-0u}BDiR=XqAKlkIw{5)gffbJ=k#h&aN(eb3#aAEB>39 zUU4oXQ4bo0mK~=#9~Q{@*`zW)U=9C zW*iwQVN_NpM}Qn~U5qav5s8yP3>+N>=fr+X!?OY0XW%Z#*^UwgSY_l2tnj#z49I|B zOVY{fHc);RZM{j6RfcSXq+E@Us|*!-F3fDhA$cQY*PVS!E+*oerhW!x$xumV7o#Ra z9cy%T?SoF0f;2pm58Q~cBQzq7*u=tnER+`bkh0&%cicDd>GrLM^KP!-0i>OXH&nfH;nnPbVL-w_4)S+Ap}W|yRm?q+9iV{QF!mqHjq3b&yQ zdIf2{q+1`do#9VjdOQIoGP5%8pL?-T431J5*LV-II!Tw4BOk1k;)R758ZxQb7ZIYHrN z%T;n2^qFos?FD>>uRGZ}{}fokEFZ9U-6N$Oms7mMQO>d6$cb`n!H+mp4!@j)lHjQ@ z)0~i;Acv=>O69TMP`k4bn+BS3g|0}_qArT$J3q)5#FTbeQ=1H>r!@M6&Iqel=-ug*>Rqq!r_?20o07;^FzG1#P%LT}%^!K!Wx3oz%*_{#9K zF6Fo7dPgVQM6*+&)Z>fJ6d&(=hNlS)HNYJZV}+RI$Py)X8Y9RLC^yl>>beh;8Og=8v2GG}OzkeM=T zl6lBHJD*2u{r28x|IgmPbFTeA*V(RX(c*pI=XvhuzQ5nkbU(LMRZdWCVcbF@k*H3c zlv5{>Hh7Up>q!*r@SCQt06qNJY;*Fg9f`#3OZ-O`)cebrMEZktO76Jk^{C-4XMIiM z)zx2h5e&zSTGi+}cj>>#FnM~FFXilLb#w%;)zvWik+WuxOdKyo7Db$jzyCC^JJHyw zOWW+}RWtcf@oqLNFN-aQKTa%u@0^vGBiklKF4>XRpEU2|-f+{{Aj~ z(N0r*8%U}W>vj{@b4Bi&ShUM${7d5dY>#J8j=9d_%!s(-aIzCG$?GBpq0UAux}c!I z!^6X6*E*8b*DISy^!{vq$L5zOV^{C^`=2Xun_rk7>d3Y1cy=~h&#J(l+)@)YJlY@$(7QnZ~+{aC0k0uP4#n4-1?5 zq-Q-n+9fU~wvgLlRkXUYm}k+ZK3>$^TOGcuc++rStY?hC1sNQx$YE%v>R^U`q5Z&^ z=c=owX7kKQN6WU+JvEvgdDg7rjuv@VU5uhuopG|hCs^I>hdw>0&u1q+t`ZzDAgT7c zPqz@)xs`(AN>9mh#9`AC9LusJx8{-XQ1NVcbxn^A=*DCmr)rlz*`rx;1snc=p>&J#aOW1N2~Xgt@;vub>DN+gn3 zKtN#c-b?scjEH-h_H+Lkp4kSAs*nQ*b<*jA$H&KArUwlQ?XMEUmune`&v|(061UN5 z(lPq?3<6~aILV=&(pBry<=m@HPx0qYkHwK~zLy4@Qv#VpyD_HWh92|P{H0SP9XfKK z(hbs_vPh|!rK`(h;rxayM{JBPUi?-YExu#Nj=s8Be)h4FMXU4Y&u2Z@w}1bcM?#fG z0z7A5{22fG)^q7s1#aWy#01Vn`=#CdU6WFbNmb}U^XBB>d-v`=e3*Z!;;yXkHe8I7 z+)mzenrsKxkx~WM?f#PfNZ1_5`26{^j@;7nGOO$GA=*O`%3F8wQBqUutY&x|b)OkN z>#np>HF0^S!w#c4I7eq-}+E79kKbs?9_Sf>zi8__n*zTiK{VjT^L9rr)IGb z*e&-Xy=e5&p-T!`(bY~u;Bszqz&b=+UDw&c8^i z1_B#sZFGFMG2=W8sE3+U_OhRj6tS#-{Ab!BK|yu7VaKAGUb1A7b?ev5U&i5|pUV-9 zSXtcVHqe;Jp&WnSZ@ONVn%-iM#P#v!6pakS((}p0P*6)RjlZRq*1w{SQLU}5-AOw- zy^(Ya%fo5o#*OrD$sQHYJoJX+x%{6BlO^Acahs^zA9J0Zk8c#W=GEe85mr=dfn6U) zxF^~3{P}K7XpAc@J-t?DS4BmVRafDDl_;*}p6G;#rU40$rMb!n`|F~`off7BSUr~- z%yPm8TFA;y-ym($q}aZT6vQN8RQ5iQsjoJ=$h0nIdgwE8s&ZDv)1MA#JSArPmDP|C zx}+usM#ghfDVdp>>U=MSPGkp3uU!B2tz0KvUyXIs#*JOhebJxO4K&W&AR}#I_aY0e z4orVSPNFTCtQG(KTrWH#V!r8&^zuYCe~*;WZ6|*7`1nn^%a~vC`!`ckQc_XXR97Fg57-u2^R%{NuhjgH z9kge2E!xa8iXA^2I2EYmw^@js;l(7}v2OQc>gjL(At50*0&(-jT&9v$=*g0sU%YrB z<}})gsuocG%}i)FWwFcj_FyIho0b%f{RbwPc1Ma@&wQ!b+|<}8_XHDVBNH*`zrM-; z<70!Ko{seYfT1?Heel461Du>b;yz?t+Pb>BH#bo|(;mXf{A6qo4+)w2>dWeXvf?gt zK(rawHx^mIPTuwx#sTdZzEb5_sje$R{=VtjmY<$Q__<+k$hx)`Eq_K z1u0pD!pKX?Wvag+UOpfyDoVSq3+_v+dKBR=US#YT_tg+w6^NXt9{Ba z>?w2@;zRvFIZz7c!@)7*n_9Cj1w=o&@YV;T`m)Vp2d8rWGzx3cNG^&YvAU@&2G4jD z3?zo1-yYnSZR#}A?l3q0m08Sw_o0h&7@_8bHd$)Pm)E{4%!aQcwQM4ztoIEHs>87q z0vYM)=|dkryxw2W_MmcVwsh5?IBGq~fAG`uj?$Is3{*)>98nIA@{3va{q^RswFxZl| z|4fWU_p5o=vEn?(k@gggB-B4n4vt${ek9dZrGFMG>+x7b zJ>nOlutA+27#PUwa%39VN_u$$P5yB^qr~;hc&@ChEMoEF%+xhB(2geFY~}a+u;YwG zoRb5|=I})db`q(j?LLRn&yNur<2nUy?(RvLNiI`YnA6sIMeYP{@G=|4?AFV*IHjm4 z7+J%6?qxszzpKz;nr{oqO8swy@!5+Eeb`HZ!U#V|k7@tv(B7m?#Q!t0{l|YkgvPc~ zZIx$O>>|v?^`W|2DT6Ue#q`{{M}DZ3U%nU>SJ4EcPW1i!>2vGWfbPxmiOTV z7MF;dck?w34b9_ARBdf-I|Jn9Zrr?inzL)=`q4dir>3U7yhyC9ti=0Xz7$Gox+<_+ zMpo8=XD>fL|Ni~^B_#AK7@ujIYio!3%`Ge}EG`b|o-#3c8qf9TpMQ#dy7%D0gYfYE z>F%lhOHq@Xzm_IN^SO@iE!AoOI=ql~sDvfF@nJ=)t6irx-tF%oUPI zz3&+Qx4`Ec%YHIa{mHD^5OPwd=8^UP)V%q>Ix-KsH-=Q91eE{>JbAK@l{FR>C2;p4 z)VrOx7Jl^ha_rkT+?Kun;K8(04>$pdm_;leHeBH`6eX6xczzX2*|6iH_}Ht-$vWwP zlgEx7v$7h^C|z0Tur8Hc9L`4ZvUN~8eL5O=6P1lMUKUD=~_}#f&D-uCc91^`VxWf!t|`>e>^y& zopHVxe*tVmz2xHKOaIcT*hWR19k)#4Hlv*Z#?@iG3JJfS=XIO4zf1ulh$m_|aLfx` z9>6v2B4%KLFRyQ!WILlxeEs^BeLDlgQTGM=gob=vFmPc=3KQ{pn)ei$%W|!IVjeuO zt6+9&PB$nrTKpa)Ed~05%QbLM=F9@<-L*$yH!W?$3u7gmGq8Z51HoUswy3A9Z|yF2 zmH$yIKE~6`!pMkTRGpm6HT`v zUfT85?%1!gJMcYvUk}Rg#=6^yPoDVsiKS-#k<+_0KWRMp_Z!JGpFQKDJqpx<(c{?} z&^|YmQR)GRjSm=ZNbqg99cdS)J>bG5o88944yeMfk=OX)<41e3Xk#~F&*RY-R8;Q9 zbHzm4oi(SSE$WI14vy1dVE<-w1pKT-IRBHv`SUR?W-VFUi@HW_j!YRaITjf#pK)}| zy=$CoU4_zI_42JYO^xFY6ryx*ug#H{`ubV=6=nhD_hVx-E^&lj5LN4;Z5aRV4R{g3J?(qy@%Gf_ z#XAd!E`k%}b=p>c2;R#iY!(s|v(gLny*&LHNY~=iv$Lq^@^X@2P|0>a>a44)6MoR> zbdV~t=I1ZcQ(N~p_2Eqe=*KQPY@u({gD!YEN0Y z?T_rC*U>V*KAUK3LF!F^{axHP>u~d2bm~4P1>+;yN{MHg9*uC)PhF!(?&h8rHW~~U zrD7DiKJ+~AT#i}q&=3N%r%z*$N|1W16`ajGrtp7Yv2y9QeHeHl{S2 zmYD(EKX}jt^eAIUnjL5|1%^mciB@Oz@$oUaeEG+ZA9RoOEjMr8d;qtMV(Zp})k9qL zMO_}#gDsCA|A8_dRQD?6e`+)LR;k8P{HFC?&<~ic`uh5kVmMor6cl_aFRNEn4RRbj zsKo5cuzkDw(;b2_iKCn-_TAmxE-ins4+haN2EG?$7Jd13Z0+k;n~8}DBjqOd(&Vbz zT5VtM4dmoQM}Aa(wLxPi->_kBZZ71KZRwu6J25piH4b9Y{_%9opV-O`M)Z$Q00r3E z3hC)*p_#e7zLAk(EpM@u2vD2Cr8q!NspB0LwZ}m-wS;v)Ddd@YELoaXT9_YQA$f7y zGHB1>ZEIm}9A(#_G+-c{5ceXkx zDJ#%gSB6c=0?qFp9uPcd@vHgoLDImsQ^4+?>SZ z$HTO=wCPs-C3D}NoO<9m+UfkI>`(BP*rRsu&2khJ6z(#M=l-jrXH0DbMqrR{^A(GK zW~?VRB7%XQzUAfBCfdCUbcKgcM2k86tcxu*sd==Xd|Q;51GkV6QC#*a+~KmHEL3+~ zD_8!iZR;QUdHeXNL>H>>qII~vBNI_}Mzk$&)hyR}13###dQ`P9d_nBX8EFzV? zCD7H!2SU#bX+v>2q+2$d{$m|a^ea~oP;FAvSz5c=%1Sl5ME0NhjOn|K^EwU-3Qlp$ z%I(?a+cdyqNagJ8Y#jZhbz{L_?TPmUN6f{%4(4sXC1ZYFRywN>qNAT*Vi=4>_saqB z9@6zu%ae_f|SD^m-p%BCIkhL@3F1zD=MAj&Gr z{&2KOE>mQ2A z-h6E&(C>Jzalk&+Q<_d5Xx$~0ZB>t{H!W_@!OYf;faZ!XM4IbL7Ct>zxJY|wH|2uI zOisth!YC*E#q2h@w^Rwr{GW^jH089m`6f(Qcq=4i30inRVt(x3yAWkCOeyS|)O_>F zD3b!mQSCHqMdP`l1B@O~_18={r1GuPb$(c55>(e@m8bVy8{FdG_K4k-KHvoZLPf$d zHjTYZ`#p{&%G1Ao{hFLSh=IHx9DG4Ag8O3H!D3*GX`#oZrKNXS`J21mL1pUb(92+y zlanlevS_8w1A>9CpgNJmhc#wDM`F;^opD^|(rZpf_JGutl$7-9)%6}ZMh|u*9<3s; z=HInT$TjJAf0*hLAlk#T8GOyoe$Kj&n=h{hhyg{(Y){MV_YGe6uTlNhO8-eF_J0*o z|8peqH`ge8@NZUwKNO#GPu;AJ5rVkATKn>k@UJ_Fb;7mR=MO><|377;{|}DAfA70z z`~VVDqY{6PSqlLA*;_GHVE89bwq~22(bm>}zZ4W<1WDJd!0CN*NNGtc}sY~08!&9e2royQ)peK_y+g` z9ZY9f1AUs1wt4e9A!x=vJ74SqkVH~gg> zhFi04l2bpb`3W`B+t)YXB%tKfKvST?caXny{Q~u;Yv-tXJXL{IT~+l++S9|vW=&z8 zYU?U;3OGrK^V{~`@$f1jOwF!{}m=CH}Wy6_aetF0q5jZS<` z63p99$bTfTY|@alSQs1oHecDQq8NjWH>Wp#R>+!cwxCbh*uQu;|C3jVv8GSglRqr0 zRO!l%xJJT_RgyHi+$GY~Exi}4NP~mCPE;{s$DG}KdR>o>?n#p@&v~tL|MW}2=06xm zIXB%ru0}_-bA#soP)RQks(0n(^78VMGp(0I2krj9Xwrud<8!QPT8@s6@*i`bf&I3m z=}f1~RO!f~gP2xlf}}(~zfu&I_5l@_XJ^e$og1i_#Y*>pZi|&@8f-*=%QcC^Zp#Y} zL1XLqw9|5K{M6?Ry|5Pz=h1>_;xmcG(Ie3+XKL!B0}BL~ifMw^YJo&?S~8EhYRSO(R#-mEP^Na%Poc)%YF}Pjl6yCul@roM%)iGs zGzSkGnSV}~ge?MyO2^D>Ad~0i<#p%Io%o)0srz&ElU^ydJr}~UxG(O$U1M@MLRl=P zN(U5BUQL-(GLLGF?N!YtK1%Y??hpWmXPXLQ`R1jQGYTuHBBpe(q{4L z*WvWHUr(MnGm8#+L0@6Bgo9VrUz{f-<4$~4-l4wU-rgTS`iu7JKGz1Z2?`1#x@PEQ z6BBNKb=p`OMTl-En0-^mDmIfi(q57AK&Jg_6LsX;#s2!ZTQQ2t%6o*a-1BoAe@za8 zL$z(&&R}SGGF{ErS}$CRJW8R$s<^l@v z)8I4|7Z*bbycL1NcjhTy1;; zksUVJV~^zp=q6d`ofQ63h#?`H5@a-wzmU8#iqEO8L+a=8x&h z()?_FKanQIMG>cWu`weHp* z)`*LXs{@-dtc_b+52{*jQw=Aqi>I}(U!My-s56zmac-*?&zh*2NXy9R0@ESop`p#j zsz5^T^)frD7UJheQJhBFlE(R)0QEu;P3UH2s)rztlh%MQ*hHt=! zxpeX3xm=5@B9ZIYt;0VUcI>eG_HOg(^Bk%4YXHMa?6Aql-S`i-REsY<3Cv0+n5?jN zvtPW};?Vu_ss?N}xPta5{aEyvhkNjM)Mrv-;78aU<1;h0b#x_G1=-eB6{N^TR7?GGVbC7hz?EC*jINv+nyu!SA+&Wa;<`tsRV9K6zUwzFM)a4ZvAlYfxsA1St znRaa74&uzoZvE<)&q4Q;(ZZp0e1Jcsq!WZ|d$u=ua838mACOpGnnbm|#R$`Urffa6 z-v=z5Xq671 z-79YDuT$ajSGOoK*Z&58arH&EU$RaxDva|>F-_C8yV+@vc1j%5`SwYB``Qdir{moKAT(nnW9$%IGIyh4BeQ0msT37WdT zsO$VfE%Z+U6db9<{bh0f5xlhIM(aFTBiiyF<1B)8DQ8j}l@hbZj+p<5E6D9bv4`I_ z`Z*}ldmy6-bA%N7&}Bb*)SWu%RS7XMF{l-ob{uEE4Gk4R_$7S&5BJ!RWRS4=Qbrix zvC{nP%L~&*aCr^v?gj=z7w*RbFLWA{@>se)9o0J8RRq`ADoa=HN3>J-fw`Nt$0}R3 zaU|6oNS7*dQ7U~sD>I_BxbAMdI!T?0eXC1-(uCDYU@yQIqeX-_78*{l(pxYHUj6{@ zh?ukJn^4VRCViOJymIA=zJ4cEWyu*un;k}kCq+ulMO~_mku1XGhDCHUtf6=wl)LCYR4QB14MEEKrl# zC&Ei#+8{50S?TNRD?RaHuN5CHK7cD0ePc4)pgz2aY#7;-aPa;_a65&OyG8xRo#aVG{IsHgCP#r@Zls? z%aEg9Z5FxB&CN1_@_PQl7v6Zk;M+$0DK$`#JTo~t84$Q@dK}9C_TU@5<^1n2n|)62 z!rZSeJVLxIS)^)D8H`eK^G`gVWre-yEpYU5+o+>wKb@isjMS3jAd!mmU3b0PAM4h* z*MWG;v7A0D(jtJdq&iW*NSdyrn*_q)>q1AX8n6%R9DzAJ*}R>&jK^lbj*&WwU1u>_ zTrh7M?N_S3*F?XTPz(qr5~kBjT^^Q{wO^(la$4USXPGdLbV1}r~NB~||;zdR9 zxW%1D_W))hd;pR^B8_nt4W}SpuSLwAGB2|9)sB%FAOiTY+1@LEPYI{>4_$Vw-N`aT zTTw4#Q&ZO`YyX=((^&8__s6@0Em|{`mrCSv8YVm6>|bjUpbJF)TDYh|srBDl02v&CBx> z3n=-A)bfc*+jN4yc9h9Bb$uYfpjp|`M7be-xV0=1$nq|rnw`yXsLVD$pCM-f zF!xYRdC$MfhnkQ3gHNW|vV{Q7k}gwdrdw3zrkc(WJ_@vWFjULd%nJ$%??rpu5>$o; zHIPX|awD=v06`8v*4~Krl#l# zuW&5(3B)CGEIWws94b{Z=D4lxM5LAD;(-;7;0V3)wHSjI zmZXN$N8l(WuI%UGQI6yw^q|mAU>aO#*!}x2aQ*0_$ZNokA$)^|hK5t8PN8|&VWQN> z$;$8J{nQoukeZmtSv2;w?5TEEk{vZD7~=>&NAQS7NSz+Z<3Xh!^2~SaHCQ(sN&KqC>Mt zy1Z;L)7l?}ZibKcp=R}f+VQ<2$PfX&-l|Y`LHC8J&QATHj6wg$Y9u8^#qG47o~!Uw zEyIW^qiGB0Jm@yW>@v{*SicI;*6d~kq`?YJaAtnKM`^Niac0Q&SbI5;_>jU2l4 z9-7DrOGM=mnSx`jtfGQ!nd7u3o$>rcFM77dQ)P@Of>o6z?u#tfzx=s4R$8j;@JRV7 zfUn;NM3eLbwbKaS$3I>IAr*E(R5na*>4p9Tln$_R0&q#XJK^{4 z)n{Egp;L`T^jv%BQjp}#dnRiHH)RQc353vr&xZKJYgnQ`vepG6gs!R^89iZQZ~{w72ix{bWRR%VVMSiAuY&+lF0q^Q;UA7%Kn$eV{=g z5XKH#7@}qj(jIP(jx&hOY^fy@m0-r~-xw{E&5-$lbp&+x{tm-ohrwn<*MM?D6Eq#@ zF22@#?1|YL5fMQ|CgEKA5j=ujeM;=m^tmTsm%A)1KBq^EnKktKvU#m|dKnt?GO`}yzv9gdr@?4(Q zp&e*R3y%yS8e(c7LXbD8sW#p8larI9v*bblWr2tW1dn!1nBS;Dkm$1{_rt9N-30OR z|Bw{xF^$2N(`!Xy60y)d;0k%r z4n5Io4V)x*)5*_QOA%EjFc8Uw`wIg5_C0|oh~kWaloxk(b`E3~pCQzo>1l$Y&!?)N zU;}-`tQi0q%5Aei#hCc@OYOT?iy0An^?Rn972jIY*r$rw%jTM#6#c;#eyO5 zz08hJDHxAMQb7a1vzCO?KeDuhWW`j89c;~q%xfrk=)s^5>FKT9U6 z4)&f;A3E>HK7pVn7B%&5fnx^Ad3jE{x+v~D1InG(r%!Rn*9x~_b{h#idHS?{WJYGI zmYo6Y83SHmO#t{YKEsk%D1ZbbMcx*{5+V+~2v;|JG4X0;7s)Y;PVn&I(uKi;4krQE zNF*m7{d`q95sTJw^ubw#fDvl4ENv)P!jeYJGD6DT1;zN=w{Kev?rOOJV{f6N>MC~4 zWAu>w0YvX0*#YVdJoW9}Z5a*Z070JtYgV`})c(foB9SA&1h-;9D(;Ed(L%sTIuk49 zG#W+3vpPLjmvLu-XXkEGOL4KMGdXD5j&92IQ?EA>AWqNbaK3G?KTPf0<(MyZvC@Vw zC$X}n5PLzY?lc%T-iL)^HP)+}F1DrNs|}QxT}Z?@gHe=vEbG?+NNUJ6yN=OMp+IyZ z1xoy}^6(g99e#An4lm{>`vN|6IrZ?eV>UrGvh054jI>4?OsM{z(o(;WG5M=OR|rI; z$pH{S7mSN*ZJEG35cJkt4*ij)lTp|XYmHMS>WUC!IIo_G5F;z78~8{xlqnp)SMR0R zmTRa7xZea&%*)FgNgU_AadQ5|gwfFp<2n27`*#A-?>%uhPX|gt~d8n1h*-k&(T< z{go^IxGr{fc7&RGzkg3~B=`fp{OzD1YHI4ByLVCMuG!m9fh!?QFp2_IxF_SJYs_XN zLWKi)5d)k8eZ~k(qdOq;ioDVsur_1|r)u6jx}{1HTrjCu3|o>EUBFN9*|kP|~u4(Bt#5?omx^F+A|o$l?IIZ)xke;I?BZm4`XvIawH z-kKR#c^US|FoL%F`^gC$GubjdE zf-HV_-^|1W_sr>thRhO?Q0NtiUfz&qP9{uD2Z3WJPo8X8d~2rAbsG8et=q2GpEom0 z^+U#rsmmgDq4MKL2ptGeBl-vzbM!v$`o^(@#6!MsgJWV?XlTAH@Z~B$T~+-lZqLBD zYqBUFY8Jc)H97!q+YmL)`E6HVN~5r+r>#0%$T`1@MCCLm`kx9w%oy<3o{g6RZ9~mhI+23X8mQ^24I0AK&vz^FC4UCLLhlTBAVjBASjd;uB zL9nHiQYTm*L0y0mqJvEUMZdmR1Q00xFZL7kP{R3zx>)+wyI-WhxH$Lk4>*ZjlH%wm z#PK+k!jhv2lGr~A=nEt$chv<=FFQVu!2_4tC<+R(3US!!otA`_1khK(Jh9M|s%+;JDasj&v1?^6{z2jY5AA-L=NOwFp@u z=kxikn>T0a@_;L!dwC^zVQ2>*#vJXB5Sd}e_ixrLN`U7OIpFVy1 z{@pv}NRj7&G{jz*U_dNpNf)8Ldu2!F(R~z7oG2>DSBz)pGqE$^O!^*byK&d^v5l^w zU*lhw>KDH6)w-|5b?_}`sx{TdtJ*&CT#3VH<2bZpT51*gufc5!9nm#l=nkn;y?G`7 zcGyb)hBEnIA65#`$#e|er@=MLr8*#+qV)nl=9fNJWas65et*w}v|=Z|q(Or>RHswv z)15ZwAHb9Z+EI5b`JG6(^=ZA+D^DZOv-`6?o9mL@qI*w9)w_d^4yZQKiJqPPAM%6q#Scrm4g=3`WNY^%@II?pM8C% zLX48)eT{Zv(U`{U7ljyMDiNUzp0(^lo5f7!$4|scvqDbc-4&soMPzmSu9g{}19?tx zfc=Q>rW7`7=BjuZb3ZaNEuG5K)AQ!*uDI&nr=y&hkqa#9FS4`ck-?Z-Tr|(j7j%C; z{QbKI?ZG5?ccEX8oQ3-`;odLAP`xzz(9O+X9S#Rb1SE{PB2?MlTX= zy}hB<=gwrcSqz46Lv~H7{Q1Ee{ZbDDVksIjnFBYrya~r3XcaTT6?Z0G#o*P z0OY@J<`Wu`wDN`ia$W~ClAjpD@1m#DNl&@_OFZ8XJGvs{0q3UVgyVEm%xj}@O@>~* zG%R$51hpO~w5sIQUo$hGex1IC1Yj0*SPWyCea~rsV}vExy`auAAS`E?0UG0U3icB7 zj{LV@X=wTRGbWx>m8<^zb=E}Ml|iTA1*_fu@yTS$v)?bHVUPOWf>#Y<*z+j=Z_$hkvP=2JYl#{6?$Jzd zn&N}3SYX>*h4t-$-4R$WqdldD71gt3r122jZrd8&fpn$~q$?jGOIfrD3cH_%>WIw! zExtQ3=-SwaA%fa1+I{^yV*SY4w>>x`HL#}7c-=tk;Y3}c=(CLPjcUF5u2N>G-0Y1A zJwgWF<*LVxn*(ZxL;8Op3f8}>Q&^pva-%?=_lr_W-#l|9q%*I`2SsGc%WcVzA3r93 z-FW@$n~ndfNIYA!DLmKS!;C)M`CHJ@GypOKs=0mA&25Q5Q3+CLt|&J&!O&le3Vv&Z zg;2u)9g!dgD+1Z+fq!rK@-1G0uILHX6UN#rxEjCFJt>vX$y&At%L?i~2Ba7KdbZQ9 z4u-vLhh-kD;<}28J~UM*Ku`)|+b4ndt~5Oj?ASYPweAXFvvT4bfc zYHZ@RA>vQ0S7--|)oW3Z)avzQ%5qR-mcQJj<^wB5L&r7^34qZWlK_8zB9{Qcj?lbt zOM`gUl($sAx(x!fYW%;{GbUcNS!k!VAQ-E0n5d{;W@VSihF2p~DlZFaeTZ7qFb8dC z`POu@)O$!39`K(4@JOR3M0a^LoXk^et(b52VgS|!s7%FM3)pHki1#IP?%7s>)dlhj z-JGr1`~b_E!;$ao08d>+Bo~F&WtVOCA8US_i>+8Rip4DQKE?xtTwfn|bJJFwok~&@ zQWZCiwM_Ka!t+-~pt@+$8AEjjZGl)1?GjGt`c0Ir*x2K@kAnl4B^@UUdj&cZ_V;m% z`BsPXOXD6mbvq}uSzsGrCGH6|i-hh=f^Kf2+^ve2p_>A=5r9S27YLfz+X$43@TUzF zeaI!y7VGn@d-zM2UhLt|MhW$gC$>6b$IcdPZ<(1%*U9M4yzrKY(Z@%xVvJBvbFI3> zP@q7zuw`qiJYd(>X<|Jg#EEDK6Ag_j`X{E5b!UD9l3{gH<7Mjyi%CGXkwJbw;;w-<}O{_XY&7U#>z$Ac;`Ffai5k7C;p-lmv7 z2-$8F4CQA{B%FwLTpQF&>ymi|-e+$7c1v@=hLX&+*^1RmC`j%AmH?;^ z@7=Qjg~AArg2Gnb=Ky^;6MhQp>ylT>(rB0LqVc zFQ0z?IPx(j#>NQ5a*K;E)`<3etgB=F%T%?Bb)RVi&Vs80N&vX#48>`Aan{$z#{(uM zN5~USR=_;Zv$Gna3bYmI2@jB7$1*-&;^vG?)=twJ5rKz8kPKF-rN%_1iXhff*j=C) z@|R&6629pKGUa@Fxyo`&OG{EKbKePFCgaN%`L!L@f0yPu$5SqMe2+b)jedBV%vBzubXk3)wVEJT7B4nGAMHVde{4A7N=5{SSzf-*jjPTWLJjv1W`T!Oi-SK?OCZaLOn%r1!J z0A%SLVly*3UFlGI5p42mwTFCbK7f}LR^vsHNNh3v^!y+@q#D(1|5OxrB0#Cnizrl% zUoykfKOEk5VadqDwWnaGsh{Wu;?f3R8 zSM|_h253$J`vWsDPWBfLL)s2LU_dwhUX8!mx^a=qe*(Me{Qb;7UbeBx^m}$Lhg({@ zr^ON~2G)}~3h~h`O>#6TEwh7E$~0I2S8!cJ}xymyQqq@fI9BzrN-uMoVtrfdi*j zoZdgvO4A-Z@Z!d3{`YOu+N>Pd^i4DZP(h5|T@W#xK|r~ByN;F|4zM)`_3006z2)WQ z<=~K)%rg;;02)?H?f`$}W(S#7V=X~i4I^g=8xWSnA|@p2CnQ!O2#B4x2C$PA=cdW- zA0IOQ>|b=HZwk!FGr6pmefaPpp1E1$0mo)%gsZJao%#5Y z=k&5XWSycbm+&j>C9(TO~)|4b&Yf}4RKM-4zu(~&G+5|^x9$UueOIH_5$H#4Gp;M|Atbcg0n*NExJ3l|a_8fC2N+0Yj zf?>^dbGdY8RPsprL<#G7QG4iR>?7=8_u4G@K0WYHWxs3vH0i>JD$6!Ry=J~&A2zh_ z!8;mi<&$i@^`rw-vib037!=tyN6>8d5!4u#*?wb4`LHvWFRgfK zrB#mp1+S9KVod0?glAjdE7w|`qA};X`QZYK17#G7jN*a+!0{5|zwOE&jzzXh9$Dmb(moD`J8Ol&37JVSZcnH{1 zH8Tr#7bHiaF3`L=<1z8T+HGK+Tfd$Gy5hMy>nTeCvET?s88h_m=ku;3OOtifY*P}+2@{*w zPV8f}xTv=cK+kjpu_Y%KAo7gFFFA^@nQyldj~{>)vLIo<0tbHnE4629-5c!X+%5yp zO=avhEVv%jpL<(95PedbO`4vobt>5*bEG#!L$Ne+X_x1(U2NXsqxlJSTX6=pG;h$Y zSY(I|-I&&x?QP=f+FDxC7(X^|YTJNwmx)ZmoqYu9LPm#h@(-rx$LHh-d*7?;gQXpV zt*)+6`aCB^J$J~QOjH-`w2@8u1+7$d;lOj?iD>7a5zD5bsA#un2;D#C0J66D~WX~RHk0mrWsEBhn zS(m<`wc&Jq&CSh~YDOX9YH|}B`-MeC>mDBZ{$X!W6qp#uDS?zSJf_nUMF#9$-gs{= z(6@r%Xd3PC$w(>i7#f=w?N1b1kKRxnzM|n5K^{{HP@Em@>?U`WjNbyh=GV=9oOGHy zv=CYvi~CeVcAZpFRu&O)!-U6tFjW#gJyMN3zKHNd6y_vuoGW(50dlmG1Jgv9#>^*q zE+nDPEsZ*rGQG+10|F$H7l?8ha?x!Q>wk<)$ZSed3^zwHOZa)00e|{~xScnk=dP|` z|8;AH)J$lGn=#-*@fk~uy_9OJA2b=EvN4Sl6etzdtQ4&38z);HzI4+bc6j{CLA`hS2-ZpFU|9vKV1ZU8UGX z9yOW>LOSwbS)hB3zWg?}#7HUg&O_`jI;*ACQeS`1hzf@G`Ku2s%*?pE1O)EbD#fxG zRbR|%ZD>%_(-VJ5^;K`6{dLLZjP;r)PMpZnRZdiQU3pbkPibjCI6O>j@UNpm;#8y-w=ipdgWl zyzvp;w9FW8P4?~^{`#Ize#c+C zbzGqlrb1cfHDV9VAKM9r^%YwiGIfnfHbVM^aI^3{ zklix43c}6>oy7AiG|otBnStdMqV8Z9jG^mD4mLfqd4s+iI(0b=*e{^YbfA|%egsY& za!Q^&6Smu7ZyU%dvjr!HcErxf)pgRmndq&SrGP*`;Lh+Bc~%L)#fw?_7{KGg#F;$s zFCpg%uSTu(oO{bUdbqf-P|RDk@DPu8CR|OLHwY3f3K37L0ohWtBk!gpDMT`LFL=sc zZ|Px~h`W%n;ft3}1KIG{%IMgP*mCL0P^kQ7b$z;mJCH) zTH3+zYO2LI7_dB$_olmhGDd6HmRrT1TsJc;DOjzXPMnBS z{m?gA>A^0!KT2F&JS}y5k$u5b+~w@H7?BwXM`v z=b}?j(c~DGlzsR1c6)pK2B$3oGJ#J>pITa`p?EK&YxB}=*`;su`h?U(aN|_tw#R70 zXBM+ARfL@vPBvNJ06p=g!I+1Gqhr{mteaX~bc)WxXAv{LYZnz=XR;U>SvQt*XX=Z2 z^-NKGap~pRQ5u;z)&5n#!;dZp@hU2GnA}%MB4;Uso-r?#u%VP?(6ZFisOF34%h!w( zdchf~4DSW~vS25TI zW@#I?c0yg@E1qgR<36Y%na#+^hzvgAj4UlJkun&AZA&9_ z1hO}OVShZed%wHWGIn-e!}`Ul8k~I77_xZ>CuM5evF6X8sTUbCW#a0)yU*+BeC`Vl zIz*4W&8`S7Ev>{IH&0cXWOsFSAw3WW+K|YF4Py@dd!%zB==GA^DEN)DH)JD z&m=YFZ4HWz{QZwsEk>buOHSP7FM+@X)mbet%P0pG zKiKvU5A#^wUmWwk*;BuXBeG`Oyx!{91^X@YGKc6i*t9}fVn(iIy#3+x(Lx5;#6+oc=Z z)08w%)ch+%w4_SI+hV^mHf@=IGtOs2T%DGVj+27} zhm=_8I$h2OrzDp4N%8!!El?*Z&DgB#HSnfAC|T}LGxQ4ty#;{g{w^iki~wArzcfW1wM)GR;pkWI9WoS1T3;L^zxpyK z2X(#h>C>Mtn^c%I52KF>ru36$fR?;z2nf{btDcQ`iX-qM#tdanXMh{yo{k5NB^DJe z0SYll(qEVj)j97B&_(20i3gJ5IWdSZy=WT- zI3@Nuck?qC5l6O7?mTP+>6l?|Oo;`c9THw20NPm{omn`TBErHoP%VmjmaSratEn@8 zH-k}zOxbNme_(gip6kRTdLZ-I2rY@k{?C7}+-E>aIB7M|wB90O za5TNL*Ve&-%|P$deY9In)3pyn2j)J9S47m-rlzLqpROSp-j8t7KC85jWCSIZXq|Ed z82P{YecuCnvODZOil4V-8nbEcYP_X;wEl=Lm0NX3>!(-3TzerwE8w7kVUh$n{GZ62*1;}&q z+jiKUe*>-GaO>ZHm+)aBDHH*K`Aoc!l@h``_sne&@axmNxytc!Xu_a386Pc|zk&9@ z{PJ$9cwy)THHZVSr8vT#kWPv(+Ls*7r9NcV#$ zQ?HoHFCKcWXj`BU6LV)k0b6n3Oj-Y&? z$*lzhUiQ8~KYfou;$K}cX$LZ2%S(aA-MWh9l$QJg;}>imZ&kL}>mME6#3C* z-!zZa-#PMJmB;(X7Lw$!O%o1)*8Lb!s1yv%g?bB_0*Yz zKepbIVbh4dyvnoFzrc;p`(C=DPU4P^qC3wSJKEa7XtXpAM^#w5GWK+K)^!4ws?$Z` zv4vvMeC8a>T$Y>={rG2#8cLB6^Py=Rm_izMJI|#IkQS7({0oM|c$i*VYATwnk9*~M zqMe3rn~i+*2v4fp9%{=FkM`SvRv~dhqwv=(^z{>T0u`k zLMIRa2pvTn%H^JD&o5wG5sHcLgIHsYsL+ME-Q`1vziz0PHav&=BuA{$(1Tb8jna*6 z7N_}k$#B8#v#Z=e+8gHn?})@GYK+g10#maWZO0`Y1+i`>Le~qhuO;_sZWA2mzxewp z&VhAa{`d42?4|9R3=D*UQ%&JhkiC z1nB7Kywhn{SBkjQRBlldWm|eOQrVxC|C)aN`;U>>7#ugJT_^%VLo)jDPqC(;IO%%O zv1oh5+{?O;5)I_-C7}C>szwd zwM@FtzCFL0bd3E!Zbmo-GQSH~>dKz!qHk~-tRwBcPttDKmie6?s#C9m0cmJ>*zHH~ z3GHXP4WB+CJMa>;%L*ZAY#bZFBeJ~K_w;Wu`p=l#J_BY_z0T^cn{<=&kJ8g=WV9R{ z(hCcP8Zz?Mhg#Tg%!K*o4v1N?$L^z+jzLRjC$YHNNTbS>E}9Iv4m*lC`(GEV6AvI`!9CPIyLfC~ zy1P@*L^++?k$ZI6{qpR?R2muX(5fdV)Os*4&%hCsrErxR$t)?6@&*Q%8kYx* z1_D3+T(T)A_8^zy){iFH0L`jOD_fG63Jldw#L=Yua*@TW+ z`Az0-`3_|#C#SW7ST_a2&`I0 zEzY7<25(QdxQhlZ7e2MqIm+FZAqWy-$ir+@{fIg@e)v=pb?Wltm2UJX#vvbrEZt#) zQ#D&lcMos(8Tvyq_?m4UBll%5JkF!aK-R-Zy#8X=k+QHwL7onk2$8ba?PGbGZxgrA z1POe*6Hoe7Ur&T(@r9e)S5mbsZgf-fhyOt8ldVSHRh$N-&8a^Q@ow8|D&)iXg>=|| zT`S~exENXHIz3~4Vgaln$3 zii%2Dn01_|nfwJjZyK~UD>F02%sa)5*zkF@&>SrXnqFCkH;*r&y76g2OHm%bp9G56 z-hK}G7(MY2)=nlq__X{x1JEpQwmVZ5H6A&NKD@yk5+0!hCVOQSK7Y;|su;Ss*tvp- z6cuG>ANHmhv0;Bb^yh^ijPhj9?2|RO>@Lp9&Ba~JS>>v*(Ku(q9h!PC>)H0Iles=I zIXWMF)i(=!Kk1>0tn>)Yd9r2R)!|Jycif#V3~4(up4ggEgf`3nDH#}FQJ?qnr8mua zY^sxLg5JX*^AKsub;4L%36)%1jP^&_$WVNRtUA2>DiH0Q&|jLHqa53>R)(TL-`SGD z<;CneoP`vpg{5UNyh254MTiE4yr#BhlZ#(145mSO znunsBl9*@=JG#xn5vgs&=dLv-;s{zH3|&ax{)g=@R%_N{4>|G(1!0{Sn-YI29#Z}xn~ z_Dc~8$T#5)V+yxgRMj_!LK^W)k?Ed!XU>)4t*E$BQ;TDj*No#8J^hPQ+9xZL?>VjS zKar}-!)btaRhE2jDclr@Bw_7=9e;N}^tgX?!hibT1ZYS;Lg;eX6Ib~8ECHo1_%iP- zh>^2*bdRM{X*&px~&t0221NQod*vLTx0TRa#hSs6B!?$BW} z;3!e+U{kU$kW#Sp6gc+!KHqacp$ML;oX%{%5Ve6w!NM&G9o#MtG4syY3Oxfs#zumHQKf8 zdTb*-GfoL^_Z+{+uK)y<^Wa<|jELLT4VNjx-r*1)GJ6#2rcpv(V+cY39I6^J_C6~( zn}K_U`quxWw{r_>>WaefQA&-4ns^Vkh#A|l-ax@A8Wfm-Is}DQq_HRlM??jRRW2%+ z1Ph|H6dfQSh=iM06hv$#!2k+sMI=asC|)osNQ{D9666xne`{-}5A9Q@FANXNIpJjO zz1IH!Z>=-nV(gtnbpKAT=3{5q0C4zmB8H@bM}Z9lakql-&ZKKRGqes5>^#~piEi0B zL95le&>-oIzLUZ@nj?~N{n`1}sw2boPIA*(>D0Bsl!&c5osPF|`&B3-w&}IV!{j?O zp!1j5IwCM1KpU25rrazjD|3iNsjJ#N04T?Wh7;dEUUg4*vScyPjI};Kk%eoSI8Fc= zf(SWKz&E@=Gg}w<)g!_CTK|@4S|%r+Zt=KnF>vC2SQ?aTvy(>q<=x>M8u_RPbVGe9 zULO6B(WjEVk?@>-!NyY%19=q#jSy3whz}ov`q6<;i0&c5@wDSeMXdPTq#V0mPu|S& zdCKy367TOX4A-joQChSoU|6Fbh0pi24G16rw3WjGF>FT06=?K>D{vZ1? zjI<>RilV)JM?h`6#@wLvuBmRnU?Y3roRIbBll_wG8{X(0~u+u_pH)GXiF0zZ4<+A_Mw4ze(H#cKSsIQk-X!F(+ zpYwcHv#W%f_j|`(n|BdlbUU^RTTBE^jsAcy1a6Z!kRi#82nl>TOkc$Of}Z$E%&Ow+ zQyn1IH#Ietb;xE*6#E&-)*;f?R7lcr1j0e{yG>@szx~)N*#7mck+-e%?%VcqQ?cOO zRL-V1p7#)V9utela?sUrvY-GSfqU_q;4NE9@c_u`$Tv$+!%8Fr59IJIQ5pSu;R5L~)3F~qmV}89hy9j)Q1_pWgYlq4)iWHsqzXY{Z_muUpX=%sT`TLo zbCs-c>7(9JCKD1|-+5yHevtW3q^^@;{d_a_(VqZf3KI%AN9xzkhpn-@fUnFhIke9!Z82cqi z?xjVWI)XY#Xt-NT{jp${c#*9fo)CDymPqYc{$R5z?i?;%3j4107xb$FQb5TP$Ebt) ziQl1O%7Kr9Dm6l70F>1XYy6^U@SQ>4lW&l!3L&{`h~5(Qo-P>i)3 z6cQptvnZI3>a1^VfI%&Ko>_v|?-1B1DCw&727z5rMaS-0k(xNhyGPn7zdd6MW0)45~{L4RPN1}he}@2f?mmt3UZESkh2xWYg!Ta%xhxTx*0U~WWFsJq$L zz(5&DsJ=ZnCRe<m#{e2Bs+nd1E6>1snw??0dgy!H9JTR zp%miYS~mV^z3%k%#Dz~p!_P%}b3a27xj8Dsl-sZ&9S#LR$V$7Z%d!QVE^O|zyC}&| zyW!8Fp-M5~Pod^r`e0tPZ3c>An!0+t=bR4DnU(?uz&twZ658zt1J40cV{kMaS85u@ zl{;J9!gd%7cr#95Xj|?G)1qe|M;%jCFriX7c)z7%cj9bv?C2WM7VT%?mR*-gzyLe_ zYT0!w5xiOO&H{YNeVKT_M-v<(f7^5vB^|gzZ+kzQQ$V%&E2Ics5fQf33geK%36rv; zbD*x*v?B@kzq#%-l~ejG$sKRS;On!*w*qXW&yvVFM$Gj^gOk-BUy(s2@@1>_bmMEf z(a>Ui7}W%(BIHunHO3VnB-V&6dO4QRmc^!HvlCXGx`S$AcZ1uE?^?IMvAJOx&H0B!WFXv gAsYVwKf8@1l7p8e6@I-j2A_sHgq#fDY3_NVg+F%QmAP?`gyet^@gHg6(2OAo$zc-N3+GfEqbGWtv{mL0Zq7_+ zXZgK)`=HU~0W~hGxM&ikkOclm}EjQoe4s zW5+o~MK3e_S*rc~`K{e}XjGKer+@lT;u&pDZU`5+H8>%_&;Mttr&QY4wDrxG&aBDwRF~zyLtnmpX?}f0tH3nm zX_8oK?W+4O5)u!aqaI=mUeeb}?JX{=Upttjmf1c&-kMf)v)bEw;Nusy5TUfP|8X;9 z8c8prqQM@co9D5|1B0e*XM9Uc0!ku&}u3{`U(<!14iDh=yGAMK#-&AH{Hn9N zcSM~2-k#ka>$Z}ro7GTP7hIuJWEnH_e0^=rlSV$2=XnLcfK_iZE%YyQsHN7v*VN1fKNqp+n&>W4T3Nw)WmgJ2uSk@R z7h6cv_YYC(J52r9xqCOg^wP@8#=xP?C8^Dk&54ejTe!^m@%FHQLbLW00}GV&JT%fR z={K4k6NX6Gx5Y8&I^JBI>fum&sr~kDTxn_P3mTjeZqIQ3o6;^WYmEt)H)jIfW!fi} zS64@dhnWKMT$XJ{m+GTLH~&;q5A^pN+`1LUr`KENbkAfJH=sRn{aUhOOlO|)=F&jm zcv}WDzrIJlfVjAJhMHEU3xc}Io|-yPHkds_uX3Ywx*`hk>Eq**FLC0;w>1unA8&JL zjvP7C|AepN6iyS4ocHbnTm@DwDbG)C9`LR^VAhf%U^mvXi&+F~BrGVXO#W+fl6T&c zr3#B;Os<%4IdB7cpwPVYZ=05tYL>1}*IV<>T;(&o&0<$4gbH0(?M-gU$b80UEJe~y8%}8l?%Ck4S!-lczC#7l7M*aUDi${GylNQ$Vjg89`~UT z^`}K)M?H43BH5Uixi-dM^uFn*nx@7$9eLXBP5yejp8H92^N#E|n)r)P=*7guKKke7 zpUhF|J$v?uTK?d-lyaET9{q{DnSHhRQi4fiyw}{V$fw!|q};Tb z=*>EFlV*PV{o5ZnmJKOGm|w~UQ}!wZY_2c%MXeQH@$@1CQHp~*_I zBArRiqnd^0CVQ)znwky-tjdyCqt`9PD^3C{JgWP zoSffHroI3BzHZT9C{4Yd96%GFl5(e~#EzCjQMlJooaN>doUh0q0fui2Gn8T_*=M&h zSsDv|ef4v6)M<9OK4`aP#lbmjy%!DA*I09M;FlAkqD6d_Ykybf$Gyq?*y_di(9qD( z(%!0YXiAiwu2{9y)$M&u%keSbfLYmiYVu3L568BcytqUTAjoUW<$20&?JZ3_mTh?a z4);Dk(O$>uL8&{_z2!~OM}&;N@=Iyr?@=es?6Ix0kA)RF9Cv^C^of#H`uzDFyIJn! zrrpRhLR5&^{=S++{bKn84(r)s0m^u`wjW!J?ugqA%IN9ov3^LD4SwnJ_Y2N;^eJoU zB<0SWgR_PSRCy=&zkj@(8T5O8MXSgXN6clitKjIRryY65fwGUd)icRiUpn?bHaH~d zJoj7d-f;L<4qEjrT{`LfJB{zVySrVoP;yXQJ!w)?Q`t+YiViYz&vOI~4iC#wvN+(q zI<`wV&+&I2Sx-d9;j`bno7MBh_TZo(9tVp7vBMHNIP^6eiC9an(FcOD|I)PRrK*Y7 zxGNmlSaByCQ&UrE;_D&J`{w4n`-@YJjg5R2O9lm|tz4N7+|`e1j);jl)kmI0B9WJs zJ?gZ2bjw%PmS;6H3eWrOM(S}JiE-#37|?T_R~-nw zc<~~W|0VKYqoXFblIfNGqoSf{;qvc1=wUqv*oSOsaZTFCsq4I{U9lSH6j} zbBR}LaC1|WCry)=??TgC>swyZIH&bH+K%10aYHVt$x%MxlK;1t65R-`U=F1&-Lu6F z4_;r1+E^LSVq|2jnYyB+R8(GQ5Hk9|E;Nc6S?#TL^%7TsQGMhUR1q9#qJq-&Z>+C+ z@BGao9U1(+yLommokiK`yRZ>A)*dB6QN)WsZ$5 zPvyz4UA_7&DCmgX+kvznWo2cFHCf-H#jcw_x;OGI!u&aVWTpM2rfl>5I|Z55{jXSNYoCy5Ul)C#P^;WqRW`e1!9f z`=1qKo^vj@tq#hu>?zsFid#36JdxNu+Loyk_3W9x4X<9#WyiVS&u>29xrOs%r>Gb} z^WG&>nt6Vr^E$cppP%pW-By=rKRRxOLfeUsYvj)(B8u;gD9$b{PWNS9OYn}0>OM1F zcB@#Ax#59g%;}x1mc3=g?wfAGIwmG22=VM6_lra3|BLHAhzy)6X~NIT_N`mVS+Py_Bi{}T`0(7w zy-*@N(`g)A@O|K|^+4jgq{Tk>zGIXzlCGMO5#>m9HSF|SWvf%AP5BeZ^jOWvnM^uv zwQ!|j$=jcwVNaCFXHZf%{?_q*EG2-D>wN2vAKG5hGXUTkQ$;Q#9`6t*Y3f-gJi{gK z7tUCi$R*i~wWQKHym|3IZpNBAob7S|%khOSv0KRXO>zan>{q%9%+wL6zzc~tKAW|^ zu|u`6=q{AyCSM$H&qD3=-XV97OWb*m^TdfvTquB5lh-{u7~+3GUIJsWUr2U*FJB38(@Lb6rVd2=H|O{r;S$fWUz> z_FwDjp5V*hpH3P_L-X4)luzKzLy|6zYHDhL)f@`phy5SNAUC0KG_6f=tEFeJ&h7p6 z>lfB)6U&WC*nvIHx%J6@>W3INw;4`6cJj~MoH@YE44o_BIj#!W+zp# zUf$li#Wq7}SrsL=qd_zVfKXQ=g>!yb-Dn`CB_$=*bD60DK?w>9DzTqrqNQy{HhS^m z1tKFx%Dn<1-*hpgDYDUCrH!__q8#FZxGvY-=Oc3RC2Sw%fVjPPe2WlDPCPz=m#_S8 zJUXDOkZHd<*Q|sBsjK^PZW1}-Df8;`GH?u!hQ9KfxOFg(EB1`9E0z{3H!V6eCLVr1 zapFXtaYJv3UE0mM?3>k8)HlkV?Q&>Y3$6Mjd3o#0_6FC^JFgQ*#QXyV71h%xPlQag zo0Q(Pk0%{I=Gjr{Ub(DGi`-Px8#_ESRDcbxT%WWWE@wGyo6=#Iq@%433ZZKnxOcqa zLD0(_e`ZlR6&20M-2ne1*ajdpv+$k65{d4c8?o*iPAE=Z z+bW*chYK7%e%u7799Vd9p7`2DP3=Be(0)SuEkDp7#fofsSs7}?{6L`8ZkAL0r%rWL zS0}iwuke-6DN9Sg|NQ*u6IU59)4jB`#tkof5VD}4z}XJJzu#P2nqfGhtpWZSvK~6h z!r6w*@7zb(Op+{U z(v(I-kJ_?eFQuguMv0OC|k}Pu8*4TtE{}1aOtl)p_Scd z^&tIrF|Cy-BfwyIuW}?%u(z&4i!&}uf7JC{3yus+ZAE2_CfCOcNDk9lvJ;j2|26H5 zBP1$n_0KO9+e2fvr!TjY8LMb$EFr`$tCMns#K!WilQ!NF4#?d04U6*|zvo=u+vrur zNC)KaeijLoMMs|P#dFpY+dWqzec7*kXjXdiRpBzjZFeUBVf?ygMq8toih*Uo36dH> z_UO)R523B}zvrD5sWqw?$tbCkckC(uDk%6tsKGZ)-HRsP-eP9H9sj@Fe%rl?@%`vc z%1c$mf^>%`W>x!KtP2gu+^OhCLc~yq$DCL0VGm-xhAys1Gw!Lv-#lzsUE?PHt>)Rz z=M`5^{L?01J(bbpk#hW5g}%_gpX+aHVwiaF@8>VP z=eC`}9^zH>&nxt${(Gz2iF_m1Ra6Fl@2w5|@7Fx$h7@q{_1u<+PzLS;jg*!;Omxg3 zSWa+q-nG>+JpWGu^EfPEq^A+xxs+t~blb?%X0&(ME|rE2qtt5`%)ud{qsdsx1xfPnS-%Dhe6 zEz19H!*g!vc2ICIpKjTm;(8^i^-EDr`ys< zKdXp-adOeYn)=^5rQ)Be)!w`0EokZK)n>dpcKrLbK#8U>+VPgu>v!*F4~ab5zAGqs zfA_zo|KoVnRZLV}y&YnU<{cUq7IElgontwB{(GH3le!^4A`w*7zyTDK7YX_B;j_a* zwHbojvT*_fnNE&@_}ZIbb3HyC7)=Yh%DE3^v>R{+?C)lRkIyIQB@HoW7F(_>iDeh& z+T61xHM|R~^8UT_{ga6Is$2eZs+~{&LvHPmGMr{#7Zo``w{UfJJ)ol!p&CH)T7_$K zecGLagQGi%5nFrEAu&sin};WTZ@trZzC8QlzU2 z|3yun#m8^Fln|$u7BhI|c{!(L&tJzWv5Tf}XrvFZXy;qSR#@M9$8EwW%O_A)5e~J+ z!OpHASAcZFeQ;<?8}ri z4?n_tg*+}zmHUi{8Z#4@BO@=LuAaiu^76mEC1Kr&s?gpw%6&r7EI*tt`k7L-x1~p1`^Jl^ z2H+*HURAMX@wvIV2`=7|z+H|rt9$ivpZSZZvE8{DD3=sO7M`5UF&(R~nB1J&YRbpQ zcbS3AII;0gBFXTtU)N6dO1-O4;ZnVMGcGKQfs|_4_H@j?svkW)F(a!=J{P}hed#JkS-of|B|1HYZAsmeKf4L?_6WeU? zFK$&>6ZuYw{tLo46ip1#x`vSl%ut@}&53i(#>Jun5eiV@~Q0o?=?0^D)_K_ zHa09eUP4ERIDI9Ea0-Tc2+b@TQ1a!=mrz8r)H1ptCn&~BPW~>5CjS>&A@s-;KLBjN zA^>p|6%<;==cRpr{P=;FUA%PZgjV6###XWa5(5`UQKpb|Q%Y>vI=e0WagK zpfUdM7Y)y@*jOT`zx$?=Z5AC3=Eir@94)t$DtILkT6X9Wb$t#e*Tcr z3waP2*pR7H3f!SO(K|EnsdDBcvtZcZf64N$fhxDFiE!j0_cdz-DKg~~Kfg#(D_sMF z_=G39Q2?YbrQ9Xi*+1g!X6Jx#B8O;Kx|KhnY&=iSx{nCfldtxp+M5<=lJD8S|MM4$ zdvZy+uU;MIyl_dU^_0GBPqOJd4im=m5E-+WPuk6coyw`%pm@FQ=+-g~+jb zR#sMC*XC6#Xi`^JZbCxaT$@!I@CUSp$PAg>#*d>+*tFpEnKPv=?P2lp@sOdDlo|K# zRR(?#bQl=tej(TFugX^V=RKjBCad6$ppOBn=jG-q6pqiYWL0jgK<(5jG`E(yN%sy& z4PZ4O^S!JIqi~$3ObWVxisX zdX>5_4Ss6;JEfri_Z44_5#PtB_=kPuBIt>KW$UPIPEHO^1cbdi z0CfPAk}JQDUi$KesmRI<$ot-N{DpjAPaDhOoF&uES@}Xl1BTvXX7ta>Y%al+{x?m4}m)oPxr}mi6u>Cnu*S%DdnL z5N;Cc9yDJ|RVgkmMoWXj>wRNE)hH+Ov+{AzKZ}ctb93o`HV#J38S?P*PX2uN2r9^* zKY#A@Rk(tCxVX4HWu6;t9sy>g5BNDY=DfOKQJr`IklWwSk84!N70Ut|xu1qcKdisi z)Xv`C-m9`=X@w%G$@Z3NaZ1x}QiZhEOlXi0fhq{KW7i42iuC4DXg@O`zMUO9UdpK| ziZVT2Ru`?KIz>zt>k6d5azg22M97_{`ab zozMZ-(T|%!W*KgXwF>LX*R;U$;M%utbBfrO{r=%Yiit)MG{Hdm)kF&C7v++hcO4XW z#JaQzACz#;_wP~7FDn!0*r~t$DdYQx_$z8|@@wJEC7LC^4Ua0p>JW3f4?_!+W7Xcr z38|_?vmp1@t%A6?ht105H+#A((F~KXtP!>9&5uTySzB8pkV{Gr36_SnNto^(Xp|8 zka-gl5-cV%45Llz1_Np{_f5rJOg_#XdG^4^JQc_a#}MnX(#K2$*vPV)a{N` znd14nNR?S~VTPeRM~=ip2b1=l9cc)2u0nd0@wec>%W87k1ApEvl(g=1nf0fMhqeI* zn4y*tNps}%>C+-2_H(}*8zfiLX{58-p-ivOHb^PS$m|y|@SLPWad@@&KF{JpSF!)&~8?b8>ppz9TR1E0SCHf7m&y1<9uI@}ZNK zKb8^#B|+_SbIuSo)gY0N`)jyBbx%)^^dr$em*%_gv;el{CG;WEOk8K2c-KY}`usVo z=bg6nh@0{kE_l)$VPmVwuBodVpKsR-8y?I4?~T+F`NlnceB9BoWz#t(4zfx}+*Obd2Sf|x{AC0_+Zy=<8cXnUd{Zs4%51(rf+V_mpjknAcI+; zR*8#?C;EesO8cI1nCkfNoewpscS@{Iy!5V`t>VPH3jSY>S~LL-T17Koul$6 zAY=NXl7IVFf!;Or2r%kRG|k)6)EmD4L{)=4DCxGg1Ra+}gTs86KJ;zZUtSEJGzekM z90RX>YqXaUqgWIOF8H(CD}&fAf=FCxF0=-{>YvkBE84 zv**tnAz++)v|V7`FygkcG1}^^7xeXC&Ft9kaUoR&UAC=|#7k&SB_OGc24{JAkOW8M zlCXOIPk_N?5@aU+4X|E0b)WRo>MC<(7PnB7x{1xbdlC{7yRNsXZbe_sX7Kadx2GsA zfOQtuW*fBJ6$&(CVq$cDW${&1NT&+-XsCt;7mm;x|JCXuR@rr>V`d54lCo7skL{HG zL_cs}AeqsbRdH)nFb0H;+j_}z{}%R3fd?(Z4gw|rw3X4TX&j$N!=g9OSV?vlO8*Y3 z{m;U~e@{+YWGOCAbl$qMvR4{du4jd0dv_&zQ@!~UYZ+3LyaNt@){D!*Ot@Eea8SlnNjh>&zG2^potqNvi2rrkyo%zxd9 z^_=KPor(6Le_K)l`K~2kJzk|Sz{7Rvmya|#149^E<(rdM?vy)s{_gFHxrwws%x5E+e}44*`&RN*!`aff=lazeYf3(z?ge5tc!!p!s$Zo%{UD zgc0SgDLf2Ie|{kjhf5C*4~he5!!+@{l8ZwWJ!TNdIt$ab^yNVJweu@b6=#5mxl)IK z`_juSiN+2-F4pDm_34IlX6O;3K?Lfh^w>Q?Tsb@}?Eo1)KYqa0fYa0n%{7P#z}pp@fTqt!X8Z`> z&oS>5960v|h8yit`+A#p;DO1O)L@IDFzA8bzJ1I5)6Sr$7pD?wna=e{!rrkTO(_6K z9o7%T@?rlpEENdem{Jy$9)3+iKp>}fM>eWOn6C3E_T(co1FxnqE(_h%_>P$*Se9^L z(AM~i_9YqWZ{NO+rK&e>dDg3`MRbp}#(cJPGF7!f6T;P%z95KDGJrtr^J}JQ z&_@_etzSh)MR_sp++4fI>RDR4il&&5!3SU9t$XDxs5f+wM_)Rg;o6w5qB9~mVj zDbyI$o3iq9VqL-8m6J=edl2{a&0+7*sfXjK6k3_hp-P=nd-hvq?4XrA+T-LL#%3g? z5bkLDCyV-Yv-KZHjN#~c%q~xx*138u)f-fU0^5x?UG(MO%iJu{?=T<=e&!Dk?ALxdp2`JA^fpRJdmU{`I5*zsSBW5z2xF zQcKD;Hl2N18X9kjb|NkNQ>K%q$f1b$9P#@E4Nd>sH^=7bm|=89&&rC@!uV_WwTX!X z3n4KvJyTR#+^Biu2^5GLxW9}r{`9!Uf+s8?xSE)tT%cvnFh zO~20}H>_CAb*_*;x77?UGYhHZ!C<(r)G{;)#@FY*Npx>ufq;{sVtF`_dIl`koN;UO_&j0I0D>Xj5rutka`_O5`Is)L3xFf%?u&{(g&-*<`jvk#91k3S0sJ68O4z@7@y~k(I$O!P36q z?y{ru%BXWNK_n(7HYY1#&E6`+AS;Lu?<=x=Jo1uT#Fg>Fzpu}FTB$|)J6Q#Vgz6mr zNFmN^{OJB=`0K9~A_NUHJf7B?)BvnuQ~QN5bn>m@jOtS;wAz0zT>p<6eln_)(ySS zE;hq5Y~tn1m&39g#CKx}0Ho|wtLclZ`sk&@^#Zvqis3ljVv74niT*!yU1J3RGZYT# zxU2i_-+b|4`SPsV3fxNa7I~oHlt<0MAEd1NFJPaRDb9uf!%+WU2@G1Vzn`Of-8?$yypG^z(IJn1PN>+=*eA#oWU_3bk_DXDs(Acp z!b=ZGwgX zk+63s#jd{OBdstM+s>N$r0rQ?I4uua&+p4PAS34Pc(x-qDueH?R)jh?c1F330~J${!Vo?PEG&V4gaiR?Y>~PAgsw-@cd`bp5-2# zEFO7@Qu7xnlNue7moKMaR7F9AL4c6V3?*73gp6O_pAzGqUQM~4{0*Rtw+On$&Ye50 z9US<~*uE)csErH`o*JBI*;I%4&cyuZ}}X${lB|t`46R+PTmVY)<- zd9|ryaihRW@1nNT5{NUZb&w?sY~SJHPPsj23YtKL^j^#6p>>>kohN`%=wo60)sW89 zWcH&?NvH~_Y7F%BT>JchI`ZKP1Kp{w=arCH$I-+gKOK_^YXo5#gMGuuXc)QAs;4C6 z*|YDJ?wgbhCpsicdcg0I;W&;ROHtvfZnUwnfm$FTF7CWAVKOj7Akx>HSM>V-+|4>78KM317xX#&YPvBrCiBDEL#aEgY5XZBJ)n0k53sz+P%2y z+DO!pM*)gqFjyFGpN4!RTIv56C;NJ`qCfPrAH}n8RMR|ZG&2@frz-;=KbDo1g-xM+ z@{l9!sHern*U&u&PKp$}_c|>tO)g2Z!lhUUwJGdQXH&qad_p5I z*y-cPQ(uYxH!*v$k zX^e-^0tWV>riPB$j!D##g_)Ufd=c^!UP0i+w6t;fd-(J!%5bi+blrv@oPb^dza+tM zQBK-WoAA4k5dn3lL)3M1)_-EJRj=fX*0~YX89o_Zf=v2oh!sS+T6E^J;cC+Zn?`N% zc1j8gV4CabLx2>F0W!iii?s_lC=uBis2_m}Tl4WF1*@*h%tgvAS0G_Fd1W_|hacnO zl3QC8;q7kC&~gA-ATAhG3s-=cfaApa~r|@BkL0{9BAkU0ADJ!@AnV z4jY9?>ivMeXnCME5`9@hR=C4{<=XF|A;XR%^-Ow2mO9J?UG^xDlh*@E7g_iN3>qrj z9k&fP4`5r6Gj3pLWTXq@5QKFCU&Bg~@2z_KHYznoox@q^d~o@96v>FIq23|GY~l?7 zj7st2cJ#wKM37-&qOtO#fiKD1zq`M(euCaSkU!JzZm_!F}U8xq$tI z#=o^VJ1Qrm$K-DWISm>jLP(w9UP;Q!2rZ%q?!};sx@I^z0x4>U`wvI{=0`k>@(>wp)$ZO2GhJ;Um;E;dLK4x`Tt{~PR< z(s6ffd7oYUGCB@Q2D>fP6E=yK*4BBT48s!RL>wQ&&38Ehhv}t=g=WM-*d~PZt2}J_ z>Q&WX4kZl01)cC)5siT|g*>Q}fGZol_otm49aU~Wu)%Ht^3ZLp^p9(O4YIXA@YVM4 zYFQq9;=f^qK+PvCZ-^Rv{*LY23EG1Dg|hGkkd(<1(Mf_G}B@PtR8jBI^G&07iUNukASHe)BJ2~LyxE>Id9<* zHUf;JB)=GCg=1?8NvEz+eVOXO>HHRfScK1w@GdvN87!3BfWPR34igt+rUgON{n9n2 z>mo@R2Z&(QDKx*KqM`z~)XL&Cye-qrQww35yO~A4^6&DV2VsD#QLD|&05)sYwt(9D z=H}V*#a`}$PQrUFHM z3j2+Ep1qUjD{p}xO*v{Exhs@8F*!N;_3PZ-&9^emNzJj+O$_k%Dw7DA=jl1fgU3e?SKn)qA`!6^IpJko7W?WNM_%xw`ty1-E#qnsw)?wUY z;zw~_;&yy8p$(#0_>@tINBfK@W@S)ddQsO~#-{ozrJzzCzyA6~SFQ?S!CXJwcGub( z;btsnF$}&mG{kmA+Ke>sdz^VJ%a6^hpFj0YN5uJpUITMq2U(mfx zXc<_;ks;`OLBvUm^cECQbzP?#=`9eay6;1KZv_`JH5`B#^u^{8khr|V%unl&Jid7Q z5WV82un*nc_c2?BNg#O`{*W;7JA67Nb4bF?pFUkS1!BHF2I<}g^Ju(9JE^FM39=B? zQQHzg3x{5(5jZDTF=d8@H3<(C;NTbmtbvNs?nT4aqjVCjUqCmcGWfhSJ8z+-I#YzM zAT7JXDeHbuYvBTOwDDmtLi+kii&05nQ$ zO$-bO(ZJH?))Nfcp=+v`e9zh%I&3vuT6U*<(42sSBcataWAqw%4%%x-=WNH0Vb%dn zl`K>_?9l^4Vl3qqDfJICY zN(j-j?32VrLVg%}eIB=SChzh}ZaU14YK55Bl1C>UQzQxtfVpT5UU@0r894>_N>8%V zp;;D3BrlK&`qgJ^Yik(GL%qa?=_WKH=gdJzZJRUXzc;L4VoP{74V_=XBU^<+bwJ$l zE^3+k#&R+SjZjDNAt~1qCLA}JxlVdbK6zIUQ@y60C7h>_nHZ!&puyzBd8*q11_}Fr zNBh806cQ$5YAUK1_d-=w=>L_Gvn9fZ_@9S`aa^gUqoKK4@g?S3L8{6dNG}6tO0GTb zJmU%gaeSHRu$<_Hoe>)P22>q6XB8AENIHoNa6NVtnnbr1?cTllni-Xq?vO{JIxiz` zw61&La=QyNhUP!WH37uqR(2gY-SWOHU>GzHR)>Uk-TVH1YQWnahUYVmcHdxvhfIK3QfIY9Gx!fk?VGqv5 zEN76V*WdYhV1_)_473lB6-Lp(hrvWtR1_vS5s|i9D0inYaI*|shyglbQ1y;qM>!#K z8n6(D>p79a?fl1Gy*xd&aojK@*7UKXLxc4LpfXY~fpJkuFczRkj%kC_|JrOGG=G!$ zWP#utqQ!1iu&ALs2U^@(e9w5+hjSkVjLy0Cx80TvB4FxIOs5|0EidJjATu-^{~kBD zr^YO+ybYmX@U!8>?GF9;uhP}1d;nAkF;9|Raq z!6g`4P8{qb2UEB`NP@B^Xl& zr%sIHWY>RvLdPGfcUQQ$xK0Dq;O^YUZib#Cq1@p-3mj+sHN2x%(?M+f*J?ReACwjw*ya6adRc zLpn8GbcI@$t^|4_!T!$Wk|H7^$B&PKB_SW>mWLrJA7y1_MYw31)$u=xN<{TUXBF)Gp)K*_&jyVT_?L%25+y1I%DXpj)5Dp^VdOE6kVvH6uWlK z!zk$BkcA#EFg4W0tI7EdQIzviB7-@r0U50nYp>A{{9C}-F@|C0d))bKxUfm3hbI*K0fzx z$ef&xhty(-7_{Qguk)kj&khiKgq{e-DHbFqZh6^NnH!IvSq15u?kbQkVb@skN1D*d zGx8T6M01EBHKVRoklAJQ&}E$wKsgK|Y-4C{qiPh6oz4B~gbi#|?j~}==Vz>kT>hNH zcHoqwfkA^&yL5C$>KHxpyd7<&b3LDsqlw1K+QDe8(L5;t^z zK&XzozWZfvzwoziFb0ffRnIy%Gqm+5%VoasKH zG#Y4m}CY_iW!YI3<(?c)WSyvdg@*45RSVUSw*q^;~eii?P6 z0NoCvkJa_|N5!P5V|HDE*?)TFw;1Sot6|(1AQLBcX2>U9+}}gOc`3W!IsbWJVBmc7 zt}YG_RYsgl#lM~@t)`>v!9G4a!hEZuFD1a6*>qJ%U;4DfR`;`4$zl|f)zX%?C^x!c zycC`58_i&y_W;mp6h9@uwW~A!e)#-~@>FkzS>yW(J0@cCr_whRb3k*Kl8#Y$^@BwA z_VzXv0lq^mO3q*leU8yb1A`-BKxL8c|M=pi;ZpHy2m`74HyJk}wKw6A>R3L(bSH}hmeS1X>DRZ41VwEi|w|I^JYu~D0w{u98~dl(tT z@Z12*!8YmcKnF3ge79kQbR0&%7Jyn%K&~QnV8$5XjoE&gm%R`0vGARLXLD@J6L}4=6a)WQtj`C3tE#WJz?e@!CRsLp*kROW6{4$8%_#Vx z_9MJ^t*xyOa2dbG#!4{R4QPVVcEv(P3%pzc_OTbF|44`Q+u~y2wn@;WJfqMo2tv+1 zmD5#ohTkEf0xGvdj!4{&oSvbY78=cVLj)T0|9*8mUJW~8DI$0j9AYRGcC2ymPNM$- z&WX7D*VDQNnc3Dhe@&H+8{iOLDCFU@jQ_?XxL`Z$gW`uFAURVS?Y!ac9n`1KuW<43 ztYMgLWp0#~kud`5@W8-zEEmcn)Nu)j3q;Qz3>aFJ5cJq?V^#-i>m2Kh7>LW@F);RZ zY3w|l>=)^IKA|yt3G~V%5w{8W!Fa~r+|n}hOJ>QtcctPIX0MZWUi&o)tN3S_Srf~V zPeFAmXH4}8%Zo}$adC!5PCq;w&qTnv3bDN~8-FygJ>7$RN;tTLM~(TOVA-I-4%dtJ z!PwyKZ%87T*G=954vv|zKhT(nrd4aJswRbIaxr}y)pe@->nPsu9tk^3kF~r9=sasl3fs#Qy8Xp@YMzQwpC8m{N+YL6-%&^CJLQQ5( zdgC3a>IHCpjotw-;Ns-WmbXCH#R_Bc^OGU8&7YX>5Ag9a~g2jh72_2YkoP2y)+1XdgG1*;J zL(ZS9oC-4h=;6bO(yJON zWw3>r-tTb7{KU(0hv`2pd5dlfy%N{T&VO@0qR*#Kdhx>6BuZ)W2cByi9eo^qEV4$T z=1hOwBo==pM1A>6Q$1DTVAMOiFsT(;k9>~rBvvUym(+q0wr1` z?&=)_1Dk=5yFiV@LVP@8 zeczezqdQb53l&bMgrIW)OvA_sh2Vy^wu0s_)NKW+#Y?>V_U%j8ERdU@Bzr|=yCoaF zde83&12nPO)2O2A*+o8sWXE^H=YTIefVbF_W}%#Od)2R969A+5qPVE@J@}7?+5pR#~l6|m{W-sxPSrSL2vEhd*z7fa+m$9~s*yhHRE_op2Cy`6A$I^qq$6@gbgk1qg@dD0j~9znKS8H0$8ljZd`uSw)JD^}O9KP7MSXZ2uoNGxkWMX#p#{Eym?B-Jn{QQ;YN=Th#sQ z?kQaO>({U4rgxS9PJ8>-5&aC{+C7K9;{hYY_&oojJ}Q*3bNY?_RNi+sg-OPQOGXHb z$x%;yAY{0cHw-t>4TeN{#1opGQl1#Go7h=703@>?&uKy3*eZ7HNf}>qaf5}W#of&F zJETJRcG9{I#=(`yRl|A0J>E-qZhqhswY&Q!sA%hN)0;PcLB$v7JTBu?IYxs{9Jttj z`%}6{$fw%+-aYhM5yz3x%m4+=&CPvNz0srQ+^37@5@FFGrxg|!qM?+1Q|w~)9-*p7 z{^6wFmn=Sr-~Cxtxw*l7{V*unv11nu*GXkem<3>3WRhz5UR8CNgX7cp?^hrA_p`CH zLy`)juWM*fpPEuOXbj7i4en4)i`OfcQ&KX{(SS;fhdBVX;fX#gp8^j>D7?lan_#~z zC@65;h75;jjY=PjP#DIPbkd2>c*z@bKGlA7wLpW$rnY(bhtqjjl6cb)dLuTg!hKV5 zt@YctDF~6|aadt!ig@145zqZpA5pCD&yQWq%kbVp#_zF%bbr{|@$&R^s^-rS zbD-lKanjzhg`Yk6c$&Pqh*n$l7xb$qJ95rPtdpsnBe@hyHZ_6c2+7#!TQm;)9_b5n zUNmwF3diF4&`m*3@P%ysDh?yIN6MG)Z>$xYp5F3eSKhBI8E5Cy6;)B9R&c!3*Vh9+ z;4w*f2vac5Q_Y7DEt&G*nu(+u2tZX@SJ$HaiPS7UMo>pn@m(V`j;Mu)B%Fn<5r-p7 zi1uS<)P`50^4g&oK^?(+$W{<vv5!OiT;j>b1Ygc6$uX0?C$a=s>a1s!zyT#g#d*ZHQ z8a4rTpG*I~+Tzu5BJha^E6(!1NgAviuTa~uHStTZn3_Xtfl2GF>RP_-L_d}5bOLAd!a99K?dh=S!<5l8u zUq}O|T~~xFzJjgravxPUGJ0KFdcSxuF<}#P`nAw)1}9ZjRa@bvgNyO_d@FQ67Cfh? z_w?~)tGSv=r{>zeN+5^K(}1#gn91M4FSIB!F0z>KfjI|d85$t2J@l>D*}cKcC*MI2 z#j~SYdnm8o=il~R@@*cvy03Up#1k1AWTtt}>A-#F$ER;(4dPkB?uzbcxH1+Td}tPpqxokbeb@G$>$R5z$#ac7SXQrWtGm_70B{ zWA&?e_F?eSm9vI#xJc%sT%L~u$4lpxLlbLGN6|g26PK2@iq;tJ@rD|yg~cRnmMOXN zXPs~!K|wD}tQ{w$99ug(!*b{K6+4%8gzw7Vp(n6KmmO$sZtjNN2)Zlg&R{Dp$j`@W zK#WaE|LW5u_$^G_RkO4fjx3PD;lV*qJxNg*)At;`psL3BQfGI!RcG$D(1$HTAoqcXqBrkyAd>*~oAcE03sDQR)-^h=wbWQ^u4oiRR&*J6wT&(4zxv zR8>*=ieiPFrK~iB6s1>UoBHx)FN9Kwjr)SizL<%`5*_hmSB%C(Biz}8(G1JS?V(z) zE-j^NK@V?KrP+-NFwusRV|ijHbzy{sK3XdaxUVPZOc_vhIoY67C7dg$3JK{affP)!rc-awL8Rrl#nl3gL>sn6m&Dp>Z)kGjq*4Y%AG2bhQzn zaF-x(afFh@|0dJ8f@X~o!w7gJiJWuB5p?|jE-YLk2lSIw%!q~#fhJF}w&jf*_zojg z&6dLfQ`6@a6?aR2?&@OFONVs+yRti)w`ID)>GrgjkrxOW8z}I-~I2A5?#1> z6sN~^4(OeOSfSmMzS81^t;T{zIIf&yW{$#=;As~#n-tf4D~P5EDj-vF?bvA@ogUyx zpZsu$hWMgb*>bi=T9iacMC4mT12Tkw+lx^I8aXQ>6?-Pg&wp6(1fD$7Dsu%Skb6by zqKl;7yY)2Q#x8NmSZcE>k7EY!%ZFWVJ-DjtQ3zzfle>+Kjg`E+)nI-?wDJA>eq0}R;_fcfaNp@Xii*~tYkutR{})~F9hURozX4x` zTuR!Zp*^%Gsc2|x50X?;X^IBzp`xKQq!ij|qGgm8MN>&ds5EFGMG+d$`SJbze#dhh z&++)BgCs!lmJDgeJ@K$uSp_ITwE&7 zz1;c~;^O6OdoMhrqTG!`ERL@7;9%!Q&_Xzn|JSw zuFF8=#IeVWs-y7Rhiu8D$UJTpTk)GYPkMXlt6m1t;);V>gpp`uBFv3YWnlJTnb(A} z50@Q!Or^+POah)hc`_|0G*EZ`8^l{r?4%%H`nx!D(!l`~eM0Mo7|9z6Y!)+4%?c56 z6Fzqs)oF+x5LXM2#voMSVxe+AMmHylir1zgsCdpM?BXU$DMmyerh=Lo#8eFbZrr$m zf)Ni6ZZN`nj~O^Pf|h12GCbP7Fl)tUic?8I={$?_!pFx4$BzzFx{6zsl`^#ZOb%OE zFr-AkalcPx$UxyLgu_5d(K_s_dhqGgkC=8I--V4&rhX6{OBYGxpV z7JHs94$GGV5U_&w1P24Rv7k`Vp~8|t9_s`5uHJV5FA(FeuK?kIVWQ3kN{Im(@;Pv) ziVEqafUUH&sjqb(A*<0-r03-Dlu>L*jt*`@NbMhH$c`amH%Z^twsD&P7ZZ6S!W1|&dTh#92OP^&a&`Hy7r5gpHHB=*~!M{>J)Su@R&QxpV%(gxoQJ3gnd&Fs<}F4sO}@OE@`gvOMpzJ4b+G^_!8UtL|b z7%lyyC%e~Pi;PdV`X6Om;7%AXh>D6(Fgw(qbo_8eK_rB&(?JICb^r<=%vy>okH=y< z2vW+};f>KvT3w5~zeK=JQJ|t(6QT<%tBiz%gp?GfrQ$>%h{q7pL`6&4PU-V5<<35! zMH$3>7eJ*BQAt6gj#dYXx+7X5$FohIUEz}S9XbcD1}?F+^$qJPE7#|ku)ch`fNa)r zS|`7@_7B(z00{@0NC3^W082(q(~w$CS3IwRZH2}LDpObFf?gzZS(I65A!E7pjf_Hn z&D}&;1;Nj?79Sz|+(YX-&f*p3xTqN69XT2rW(92sZHk;IjE8WZOJ>@^urhy@_z>fl zwhqB^Hk^uazTB-;e4v2u-mP0-Pnm5~LU%W8G=>>Z@~09r0Yj{lJk%m1N5nJd8Ji6{07+)IY+bZdTAeqkykTf zj{+{R

5^-3We&k1T^T?7nuxo}#;(}V#k~y%GKQgcz4=MoHYV!OP(`f zQh)yEjlYwCF@|~RS-?&7iETjVUZ1%D@ZRd5!A{0F1(IBYnh}}xe>Wze13&%uS0kpX zHLUDEAgu;PFvcXv?T!5({QFSS^T@*@x-Zy#K|SK zHUJ62kPa$9^~bzIA|K#WlW=Jj_@N=cQ&&-$dUFQlAP_WMQe*{?UgYVNVzv}!JI3%o zjU$DYCwSdWo>|~T!|4e7^7X4Wu9&!Z zg?AYPzr%jeCQ^9t2ql}EjKP*MKOoUUW9pJnG?1i?e|7fI5D4q*n!q`TljnNSUkC*> zV3(A@=q{j0fvuN&^eA6PD!rcz90UL+Hp6-2u%9cv_8qpw?OY-5c^eW^1OF=R8Tm19 zZ|+wm>bYYL#d;Xfr@PHYi-Y(z6nFdlIutSChoWA4f5Fc}NgwAPv7|EbE64>f6X{?V z+P52g3j8GmlO7YmN-hAingL7l?4MuKonECkm54RRKVSJyu z4}laGqFlW9N+hTD)Z(Icso7#Wv%fJs>iG|J_sG_VbZsRcKHOR8od(13g7L2y=!+h- zwzk4~!Hn3-2H9P9KE91!DTWAw;^JZuEMT~DMHs5Z2f=ioR-ujw-kbai=H(8Qzbp#t zKbt}V_2XTM5{4qgK%9HLP9BO4RTju-C%iTl9Qy|I^s8Wlsh^QaQUio$pN9aK1|Vi9 zr;=|}-=8M9GlRE=T(_?g0#~?`y}iA!U++7{gI$q=m!u>_W|acwh!%($pZzE>h9wO= zk{dkV`ELovAv^MgWlJ?|LjE zA|ltW-6NN@*hBhNwL*5^-Tlw|XIXelUOf~eBDAxDAuBMOP6gZt5IOX=wPBNdzW}j0 z#`-0(9vmL7{VblZJzUM!xpw`!DI72Gv{dJf!KM+d62-m%HM|70|D`J?%JlT~3BaKv zBV!U5bKkg50s(tZk`8F!2C_0SJy;dOiZh2`^NMfgQA8o%e=d#*&%kKGJTXdga<%_+ zaX4F~y`VBY3Ylr_5+nq$Px}m6P>5x2gKBA%va&L4HSguzG7v%(wHYf1m!Kn05EUN& z00nV7;LzX=S~E-<>M;A}^ZxXbhlz@Aba1r&f*L)phbEk&vIhY%tnWMqbYVMry6 z7zG9f9XxAM$iCo2Ig5;A4p~kPXD0NhFd}VjZG*coAyEiIfcf^0J1xyGAWMV0i0w6p zgj{{lJ)-O1g#f+F(-%b^03jh)Q%+8f3CYn&j@6lhssT%4=(R5SmR=mTv5AQZ95p_Z zrVHV1TX4Q*2U8gM!0~Y1j`A64;^X%sO+n##$zBe*yyM&z)3~QMa>DStE&bG7T1nBPP7y^q}*W?6t3g)?is+C3Z% z;L_X+B`m$Rf2U7TQIV);6XwMM!`E!UFlDg{C>gBcAAG$3a}@ET%gS8AY#13aw%CIz zrVZRi*W^df?Ij8llCbD#EiJ89-p=Nbt5&hPS3VVS>sNj^+$GdtPTjqE^JX749Jgh_ zj=8dAZqSLkINi%Y-STttl zr{TWK667ubyM;XDhX*?>dFdDFzrEsuOGN8d9wa#7_7V*gjFbR4!7P~F&nk2cE?rPi z08kEG-RExu9wg{AB2MP_?|*&#R{XZ_$q^8wA)14kzb$N{FVa2%`UyZRP-r}0OlJz) zB49j_-PXag`r6;`2)Z*Wr3pZjT^?G28->$02c-Tjk7I}y;GGaQ0XK4K(-!gWd5AZC z0IqO;V1!9=)$g!jX@VG}bmGy80I2}0T*`sPiw{WNZiJrqMRJ=C+Fjo{>OL3RfK z!#O-6h^Z1poZF3fOKiqRCdg?0stPcB(eL3UDJ%iH7mV_;0&I+ozu*w%uW8lC#5v-0 zzL_o$rs6q)s5syV3DT_8F)e*K!J7=HjU_-~sB<~e6B=o1NSIA@4SOS8YOCm$6u-S3t>n14p(unZ9* zfVHU&g$Tte>@T2c0Ko;OiNCMZCon&M4ctH-bj=gdi3nLqeMh|t2;kAL9Eh}pFB^Js z3d=4AP+X4xh5()*>dcj*bKKnMYR$>(@`7{Cd@2GUc_7SEC& zJ^$0~PZo`_n0EkEXe=*ZA<-78>~!xEM93Llmw!NHOzp2-Xd(&9#!=k*U?U*G(bF3P zTW7m@;0&;TBqa)z^)5B;9UR2!RzV)#8N;A@f_I|wt z78ls2!-Iobn7ItmuNigP(#m~c*!J|iHIClea>|^6grDJ#mm7F3adB~Q0Q+E|R!2&+ zhw9cLkOp=1wSmlVSWtK@$5X*P26a9)L%Ez{Fk1CeqZh2(94P>Ze<4Irt(XIS1UU7& zwl!wlnYuq9e1qREkD+x_k^DhB1~6Z2{w8LSe#y7$nwkjG=0T0p)?tCKoQL z`9y$*!DHbw_}Xl>EI9E%1S9JOhx5(1mIk6(Zwm_xJv}{uX#y9%Q5n+mnM#BG12+re z#U(l`aHRbSukL`E*4ozve8>%|Shf?@`!Gcik_DK6y$=TilIIPOQ5fBh#jGC+%5f4g zasYvA>*&ay>S?{0-v{I5cwG6KD`*N_`ymuRRwrtz%FDH2KI2G9CIq<xHUD_G4H7hXpm}N6!>VNu?eNMh?qo=^>^Tn@PwO+y`H4r}a zHNuyan+%zro(33&k>Uhyggqh%?Xy2im5HL!rX(gdvVjm9U~`gQa3;g}e;ou}KHMQ&d1(wiT(qL3@ z{Q5oj?CXGlk8&wB9OML;4COrmxM+5Dvh$z2jcvy(BhYH>g8>Xatgqt}5+<_LITmwc zAmd#z9_{G$tcOE^LP70h6a+{BI2|N_JYPXkv35DHD$lSk;lqbl-vlv>Re#T9HF2!x z&??`hc|^Yybsf{^;f1oiygUemfg;yIH!{s}-b=;6XauV!d--sCIVw7O55_ttK$Z** zD1$Z|06hVg4NkS&E3sN97oyV>aQhVyiNgTqVK0kUXl}z=FQ}p}R#K9%MYK0HH9-Wp zHdfK^^#I}&c^MgF>bXFc1jZzQQXyV`1A`GD-JHvX&#whz2D0HWH@cnaS{Fp?rUEo9 zkE#t`T>38;AmQj>IbZGuU_=mSbaZxNutUhso+UEZz{v;L6|!&m@du4l$ZB{=LTH6I zAe8E>n;kA!y(wPJQNcU{$b{4e*gTE@xpCf zJ;6|-dt%-P0%tPaBY)&buUuiP$(;L~idjp9Gjk;QMV8Zy?ZmyFMf|KArU{uf@m7P6 z@Tbw>#W5P>4lmeR)O2+fjc2vnnr# zD(OUD9voy9u#5YYoXAR_V-Fb_e3HQrkw-A78D&~nOWDW^!4V_UQ))}bQ8KoLn_k2z z1AGFcgvqkW#Hr^y#ZC%{jG+#H14a=;;}9fn*?RPlNPxi`p|GP90t6<#pQKmcb=<5b zc5COOEyr0s-Mk%a(^F+6VM+1S*Vh+O;1MgKl3(KBuC0BAL?7^U2V=m>zRkf9_X|Ws zcR=?XPGd?99M*VriZc315^KU8?*p*YKY#v&2zC^jWg;rJF5y0a@!TqzAGo#DhhTFe z+q=8JoJeT{GX9qZJUlGB1dI*_E<-oymqGazQo%;vHy`{0lOP1X=Wh(1*e4_V?Y7kN$V~v@ z0n>z#D1C zl@NqRGbZWupT7v0kwhbJ9|f;PLLId7;Njvz>3ttO4}1h5sI5IcYk*?SO2DHdQ!ZuN z(pgZ? z6?|t&AQbvS?WJb)0s3H&D*nj{jH8t`U`5am2P4j`?Vnx0OjG6S_IN zDf*hp(UJNiiI(#LLvnh~{BVaz$fsf?_W{kHsPjFA}h;My= zF!vM;zoc*1xRDDeBUOu8IldbM8;iQGP-^%yh=K#10ne=Tq1ipz`uE}CV4cUaHF*|Q z5(M~DKKSkL?QJa$c7zoqCndq%K_|?tJ5wO0dy^eDqq=dEA>PCqYBc zK3pc$JY80o>=@dn(_aDKl_Il-Hixksusl}bZp}CN?OT>4K&4~k;BmSF*czN9jq0P%)+x99tdpxKE2~pv z8rW-oJqh{Wr_r%{QQnk>C{MDwWE{@U>sS6;1~8Q_vk-JlO*hZgNuTa zLTuJa-RmVys_cZ1Z97+`X*w3yXlNqMpu`~@3O4?uQ#?B)3J~cKUbvtInK&#Vgi(N{ zK;tF_!8f>7q{0ouYzWxEUdWb7sMGsOqf`|6Tvx}yY`~8pzuth=fd}q<|2{S*oBL7y z%E=6<{g_+>Dmt+J=I7^ug%22c39QiHzkk6#4>Tr6-WtkMfgXv&-Kaj6MOXM7vz?hg0<*5z+%%p9rckou!<$4*>#5OdB37)-0tZmG(-b^FkKpehATpX=q zqB|T9U|gL*HIo+72#Bd5aD?d?zo1^mtdCRlS~gWyUVf~=_<_8<{OoftlmGya&^ck; z_WlN7ayM?=fN!r`VAKF2TM(s1!83{zan4G+=MD8B2oVoO*Qy;M%>r-@Ix|Y4NPCfz zGh>r{0R}l>@I?ry-Mh?@Q1)E|E0igVtx;BR#eW~rM`-D&f;9t-4oY2E=Wsc-3O<3+ zfFw3o_s4CMPFofMRsdz7A~&%w^DG5Ama0foE1cpcY7O#-7oDJHqzJMeuy40L#7Q8< zQ?E5&#1g3|_d-A;RO5{q0KNrJXlExf*`BH&)0zZTFwz!# zfIV_W-#<)Vhl*SB`q7cs!E%(o@CXkF$FvYPk&W{it?#gy07NHi*_% zt2evB-Kx`BKYI*ZPcq z4KG6=2#WPn(Bs0Ung%&76JJs6x7KGR5M^ZrtLug(CSp=&*tp1z-CYT9$h6>G#0jm# z7g9?Y``T=Ic1fdr^x5kmGzrVz>B1D?kV2tAz+q!!161Qn^jmm55DUdXya$I6Ixyv; zxN}DhoJ7W1z+@+C{mX_=!&hWH1 zc)!BF1%9D2d4FHupRBX0KH`^<6dCW;Vf)CeLF3+eSWoMdV0~9p{c5)`G@vg}l({3M zdqxcY^F{38i@?c8ZGnH&$!AuFYT)aaRmI~FHUvu3sB6Wjy$8)4&414n(IPBzaSBsa z15g;6zoGj6Iqf+bJnlz<&)+`Xdr3PMzXB&OFk?xQ-y)VcUJ-s%7xeW9f0G(2xFt}X z{|sDoZ9v^Fyx2;F!%>CnGJ>9W&$Lg6k>L=~o%Swo0~WBjB4?YVn6AniS1fB_Hm5mZ z%6G=E2mW@Kr~_?B5x|N-saoEi6Ku6#kiKQFE%kl^I|hhf(?W{mlJmE14v8;?x0w#V zsu_wAeNQ`Y=_uu}D$|G!{k0)-r))etQEOdX92|}&AK{alX}fNdo&>byK#d{r=%4`W!17^^NE&=j>i0#dKFbG8(U}lQ>%*-?mZAc z8Z~s83klSzja%F;Q6udsyWMoq@R=|_>**LjTCS7(rG~G?9;jZuVL9(gne1ujo17}y zmC4P#G5>o7pSovL@wCcRT$4=Xy}CoYb)i#0g5f~EUZ0GuAb9);A8n9|fdX*VwC#Cg>aNn=HPAOTyP7o6l%L*m33rb2t zB2Bc1pqn6c$617~#h&k$0S7P?Saw)5nZVAs+0QlrLyN(MCgfq-?g$KcgYNI1O?a1v z2DARPsKu^ZG$D`;1D!7F@!eZ@`)A^8alzCw0PX`sQ598Hh?C)k&Hxh(e?Xmd9+02e zJpz;Xt<+o?ai63oVhDtcQCNU(@#lP(Ao-CWKIlq+9BDQyU7zAuGS&cqz<%@n)`9YU z?u*)!dfJ9pmg5fB{{SP5=G~i6(|E6jj@|YjMXoHXIzyqR^e(K+9j`;xRH4g5D>C9S z)g18K5;qXP7}IAZIXe_%1uOuM@3#DY4_clfG7<$810FehRHBgm3p5O+diFmD^VUdq z+y9WVTt5Ld;D1P2Kh^(x*1Kiug+dPjTLJme51aR@`y_*Ivts zp))fd;_tSJdu)#ikLtMa0?Dcc4RlG*2>B_3k%=zo$ucR>X~f0g*T z8C1t|EVZ{iNJd*L?r{43_F_(c=bX@0^Yy|D;z7M$=E#{Csq=_fX0Vzs8;rVZvCo}L z#b4+GeiJ6Z+uy*fQ3&--q`3Hagz5qcg#zY)3B-{Q(sZ@AgC_&QjA2Y{%S>2YNOO0Z z$uc;j`ptkPv(N|L8VWyAGH9qGYiSzeKt45r-ZNnHoWwZe1G8OQSBNCmB=-b#-OEF8g}SD(eB-y7JIbhbo5hos#J{BjhRuJ zgsSJ2)PSozB7}DO*GK~(g)rk2mjt8f3XHNWk+-~X>g z+*AiGpFJqsVS7Htr)#kA^ zTfQA+gWr9;C;0#C`}t9%4Ln82`?!*yrcM@LrYF9*VH@S76Ocnw(F+Kt9Jv}VQNV654rA8M}Re&a}62IrcGIUS} zs6R0Mdc-5)FuBIO%5c$_|Fdyc3k#nz*NL(^xx&ZyuliZCp9SC(Xeb;CsxF>K(n?s4 z>;y*WXQwHumSoz8^#I%Q(W6IJbeZ>U^$u&JT~lL?ypGj+x=ioiw;EA{PV`jk`OBvp zZ;@f>Ye*HRr6i9Hwx_d3m^hEL6VrOs`NEu+8U~M9?SG(>Jo$xXv*v1=Q)0m1$O>&? zq127PxGy1o3VG1)1A=`?aAY~yW1U;~*$%2$o8M?Vp6hbH5;fBsjlTZy z4Jio)nuO{S@(L3x6Jv1W9nN!|@{iWWOXGIm(!_p#>Jbx@wVDvKHb3Lw`rwa8>PgHOcAhsmAGck5|AG0riN}Exg%~ zx`duuG%KlcnHRP1l4fr*+&Bvg3zyKb#nhrlXlb`6Spd>uVMPi&%s$$m}u>@ z?!N4On(a$e{Cw4@C~p3vox_93(ndU(Esu|VRqvWwXs7-3JXYPtoYhF)L1+uZXOA~d z{kb_N(i*qoY*Z$ES!Vlt(M3Dzi*uuUZ4dKUJ9U$M-it-^238&$-tRJ1QCA`FnrwbV z|H#nb&@!=dQQYB2Ab#g>#^%;l#(PFCqWCX}1K-oKJiM-*p=!%(Ycb?vy;f=P5Y_Z3 z;d|}ajR8d&hL_3%Tp#(!_sqkE=8MM8Kfb;4_nvb{KxV>hx+43U%{xk-E@KqpoU|<@ z%PTutoPf0Fr}i{Jx!DtT+vv)U^l8l}K4{QtL& z6bJuyzouPb*65j-C@dF4)0gb{mB3lQTK!<_>iE&lKvsBA?~Cs&UQK!*fF1Lu|y@Wd5#Lp1vFXZ16YH6U}Kc z;<`_cD!nDYUK_G%_kZ2MF`J5|tSyjNQ=g`C!Sy%Q9^(GttQ0v&WF|C!Pg_|vZti$8 zdv09JMJ?*l;@2R){cm+HM~^2xmUF@1rn=)JOf$>GF$0XnA)kgYqmRW1d>>O1NE;Ze z=Dh>``Ez8vtuZ)cEvX=i)cUMYPas&XmWRtBB2St(O%@?YL$ z?=GQAA2cE9yP>9`Y?n~=SIpVY{QwSA9yQ;>qfyuECs!}w_D8M3sI1?*-(8RGbXM}I z42*?`&9C&nB3)}NPUE8Ew_LZfrQ0Z-6%;#%|K@n{W3Ww(5VwVA>ge{^iw+LXzWk*x z&SMEDC)w9wGD3%KgJE7xQ3qTjj&kw;32AAhr6i?6=@e-gYF~r<+uz>ntn;0H*4pRHa=rS_%#(9J_kHE> z|NirWqW0!f6 zq1~2PDX>HaEDF8W-E1*@DZS9W!%8OmG*%Tg*L?VG1vNQ~(d$vG&;SwtF97%!JKc;B zJN&K$6>-(1Bi%a&(eOm0amg!bf<_bP82eb>`*J}fM# zs)?^&WovyG>r(TvR@+fnFhvn-BVdD#fVGgys#Snq=tkxi{m-o$nY?V-3LfoVKbk(;~R#PCe?Ir8hUy@K+^b()Oz-8J8AmZ1eOcgOXW6`FMo*aL+wkGO~vrgkV49XGJ$FuLF{Js zASBXz^Zi~6p?7w$plQ~8W2Tn*HC}220S>AO7uEP+)ENUIzr7+c(?s<5}7DUX)>tY&moH-t=H$Jk3d9kFuZ-udBC}N+-Sen zXD34t7~KBbuC%cC;~in|Z-1qpl0|b)Fmwv%(%hl_n8|jlh((>RrxJ-=XMM(-c-@Xy zBE{%W^VaOq8|9A!@tD4}OY1FR5Cah10~Jsx5QXF_TEQ41EZ_{PtEr7yl|uz1(&U8Eqw9#q({*iGB?O$%zbAiX^(qplMp-07nCaee%w&1XoR zEAu|4jo@lz zzPWJRu60~W&+V9?Vs^U%jeJJ7nt=&lvWOg5^<^wa(yX~ehNi*>;x{Xp>X5MN*OW{R zM()rwH{XwU?$T(sEEuSp_Bf4e>>t@^nB34_iAr;oR zL#Xxb`XH~H>}8J1(@5s7?lj-@u)Fz8M1Y`npwxV+$vh`L{_MD>oNeAS0fC5S+*zxj z#JI=(K>$sCp@mHQ5720DZEc0HGQ>xOa>Zq3ze51$eC^mjx`5SQ-0L>jzc66M?;yy+ zdBv-Fc5C~rqH{FPU9RN#m?!Rt)=<|Lsa|6C`Vy8?w(M@jW?V^4)_Z}p`McfU)vpi4 zuy@TG7|%0?j7@P4#FtIDg>o6c6u6`GFm8US^6izt`<(*c@80$AzMYNIn6-CqKEpifjL81 ztM(6ta*WJ5XnX%9J#4vlY_&z4L{M1jxnWc6VkDz|uUe;S@8x_xUv4UeY0vlhYvlHS zJe}M23UXSQ4YQ1A8Vl#yDNBM&7PFNansa$R3C&)^r1xmWU#tZdpbeyHq2dzVKzp+C zxe&DEGgvyHl&B4I(GY@8JKf2-9nRzTC%7#(oMuo-v^<4o?ka?bT#!5ANeKcuY;j0! zQTdXe1Tdt-X)?8Ka%2)JcpZIc_K!$|LPZrWE6jCpKofuGmvYqN1u< zofu2>xP;6Kt?;B<7A-(~jii&Fc7$&F*iX>$t<&t?<-mGs#naVJiWhp9L-J})@31-G zl}%FdU5(h*_r*CT!`pfidF)*vhI`=7HB#62^+@IDzOwv4>?BW3zQW0zk+;6sennJw zPx5=tZ@7|y%%WWRMXPxYTw%cjCg?FxbByts(!%SP*x-7ag`PJ+hnZSOK74C@XFl_e zs+I~nkCe08KhS>#hek+1@pp!KfB5u@@yX;Z*|=(-yqe>-9vv`(v*xQ^i!x42_=~s< zq6LlOP@_3IqMeT)w-ioC&PHNj6E=D4uelsS74dGR>ouw1wppEs!vN3V*RwxPZo5lS zC=ApcJQw{kz4h@(qop^wCBu7am-x)nZ$0f3E608|_42o5#XB6vOpB**zh|DRJ(X~I z6r!Gd3pY-?p2Fu(ZZlWH73n3AG|ZpAm3ub9$RT_V!DK)Jt zPkNFcy?ejahofVv_n;@XVpwy-i_1tvm@+cWBk@Qpci_duO1Y97%Ztj{z!y-VC0p8r z^Q^!Zfk=kmutKrwlNT4|qA*#eeq`VUvcKEq{FZVhSMfsnK3xxW5NUZ_rQU2eWoT}b z?a{!fBt??#tY5hTA$fIaWki|U;aI}60mdiJI;#pnOu`s9-e084WG8!P0C2ke! zq*#b3(Bggf@&1NtI2$;!e6OiI#5<|CXgI@)GcKruZ2Rn96Zh~{*4D$kudm@piteAn ze+3oM+CE#p$HVc5MYjfj3kML~u&JEitMd+3HtiR%A-S!nCWaCh>J@iLrZj4j4l3ci zX8Pl97Z1Mme$UP&w^`+>pK&H5NJTHx+Eg!Pb<@vdsXAIGrj4bc9+bucS)Bmx3_8-9 zt#?o6edDj=q|21(QRR{Tpm_X!XVY^IhpL2eNe&9fs)SAj8v)0v@5}GfP}gj?vvS1~ zy>i{=8`<~cQax=*2)`wNBNnC{Bzu#U`dTvi-rb=$XL}cTOsFU$%3UjtJJPDhPguGt z!(!u7>Vr9~Bi>J?f+l7AY`TU#-C*QtD!0K4zBE_kt_@~}Z@=~3sor`Me!gyAxqjr1 z|La27Wm1dRm-(W^#Z^@wtpp4%250PaC$&_@TkfV=DloIsni|i8E<@wU=KX52OI%zx z6{xSeZI2c_dccI2Y~JrObmf`p954n_yMu8ZA7~!x-{CM|GS16<9s900`kvZT>X5eG z@2h#V5oQx}&UuEPcBgRQUUz&8Fx%GDwh!igna5RJRey?m*{JP`Q5z|-6vK;>YbH~% z4M{&t?tF9ae2;%Qf&KG)2U=%sogNadsdonbR~TlPi)oy1hjfjmYNp5)P0Ts*#D`W+ z%sKGHvl(#~eEs{tSfS%^DPe#~_ovTKVqyv}NvIDU68>a0Vz>EpHZG-?cfNc0CD%cW zz}kSzpWe6E%a6PgD>P)PpQkG(yI!JEcK);bT<9QnZ>X*y^f9^lCP|4c>nl;eSOSv5 zI)3J1J z@9RI;-UiWIDCU%XEj8=amqc+ikH&Asv<>AaRlD{4iTrbL^FHdwCkM6XhKJuow$joT zQ$#Nr44N%hyHdGfCAiEzS*&Gjd#2gKc!lVqhB7e?zeJjIWSUL1-b=qAc0`SrB5~Y8 zHGNoK-G}N_?oQW@XuZ>q<+e%=eHjd$*3+i9kn$qQ7cj){$TVQT-nkW8%xOesuy%31 z)9F{PLB*r4_xUp;EE~U8_WM%+y1ZLS>VBnbbtdnO+>t ziYe;F?48!uh~{+{tVeHU1=z14+gRwVgy~XW5L@It);q#xW975pyyQ?>u@!q@kEOaf$0inP3)^k(WU4nL5sdS!LhX+%A%n%|piUnlG= z_8Hz=dn$$w9OSqq$G*dxwR|nNFz?!M6Qcnm@M7NCQ?m5~Zj0@x?l>nO>tP3%@l<4V zqQR-eM;kuB(}xL8QK*Rh0W$rjfYmEyS!^*aHD_IaxI~ZodDnX}*E>_j{&2ck$_ePQ z;5NRax}S<6op5jRf$@X=in1H`tsE<_!!1h*5&6MRz8UR4!?fKsDMwx_Pr+W#)~VAI zcCWrX9FS`{W6kgqhVOIn3qR>{kz1!iD{W^VmMY~=HJ|r( z_pt|Uem(BLLO~cTn_4HA?3^oTZNlO2Cn}NbQ-&(^$$q{V&TZZ&z@yfPO=KXYNK2T- z+Vqjwcye{dUrI-bzuR2^B|Z0bXGqt3PTzAnwMWR<_|@yg?_+P3+_{W}XS(FJ_^wcG zyOsTpov_*XF{<9R+TD0No^u%N2&&yL-Zy|D(L;~9 z>N*FC;F{~bepmQSYR;0lxp4%1-!yH}r44{y4Jdkn8eq4O@saiZJzn$rin zmv-W}3b2Cy|V@l)9{4$+voHGFR)0?KCV$ASRXd=d_VHl*wyTqvh)FjOCe3 ztrOiF)*ViVho&sFt20Wp%1mCf*@Arh<8NWNM?!RUokR3SKG#XpJJwwgL zMu9{+@?I0&xto}MvYNIYA+>ybRZY6zb%UftH(#S_g?c?EKR1rd=oa$e`)nqXEFyQK zHs1@SWdCiLg-nItM$l(3j|F63(SOR7*j-P9dh%V`wY5u6Jjz6>;lDDfoS)RMzD6oH zN)5ao%axsFd=oYF^XN3b*rxlESEJfzx8?bMKD|d9&(0czb?s4Iyd_gS@!BT%&87$hM_4<>klb zuWDjoEZvIq-DMl|D~v9zb8W0)N~C`xh*0~iU$(VS66Oe_KhCFmxaQLwMcS~fjM0=~ z=cHIq--$`@qn6o~pFW?`Y)O+8@86FYy%B7VpV=bUZecY4>UHkG(2en+AfK{`2Ya+m z4NW(#S0Am!3muLQG+#{jylN}@F-LZ0UcE&`ch`wDp7AK?j^#R8u~1M@EK#|q>3f%* zpeloWmjitiR~eRGOWJ{PzqHyM*=;I~tE)7D;)kb1k6a#p~C zM;v?Y{#@Hx5)Rgw-^tipYyZp7^w443dX(u?GEfMRWOqFgoV9Z1iroB3?%q;zEI)9l zu(%Kn_73x(T@Zj~R%TSS)|)LDP(-{m!9A0N^IM$xz)U zNl~zLS0$Y6^uz}VW4C61pS{ThEP^>!_!Hbx%_o&^7osVtk5N3Hl~l)c7Zu<#N56mc zzPm$OrD%&|;V#*2o#u(uw+j2hip@dpwGi7KKsVSA&|~u8{}AkZbLi~Ax=o;Rqp;1f zTJoz+5o%Z!k(uYybk87qil|raL+2rglhVM?o z=%YBlkCm18H*B-rjy3u^*`A4f{&AgoSTR($;%k$d?#@bDi&0=Oi>Q%{)wkiW%WoW4 ze|DGWpY@*Qgi+Dy)VyAFk-Ek88aM(lY|1&V;x<<~K2sx+J8?N`B{0V`V=_($!&$8S zWc$`?oC1QZ+R(srZ{lssbsvvsV>)TssRwy-M(VmTqLizqX=779LS9tPc2Wm#>9RPn zP9)vk17hn)A&1X3GA?^B6YFT*N3V_Jd4sQzPTwjy+mMlm=6&%WZne5sZsT0wy700A zf7YQAU%r7M3fHJ>YO`m}3glc`nC2|kw`5N`VtI|S>2VXYiK7OVUxf9|BrUrtMIp6Z ztx9^{cLw6G8vk`*Z~a+V=DDePbe8jjjDpjdy0p%kojk_)Jt!Lnnl-))PRxGOWDs*l zU6qd{_-a&(VbQ2nz_1b`{fSI8BNiJ))%Lg1^}VTM;Swx8W8Cbr(QEj3)qO4S7}7m^(k(4T~}@u1#_|V=Ex%_5Nhs3Vf$8?%-ke zf^TSWj6mc>m5hlxJo-HWDee# zG^TtzZo!Q`?xy2bg{F$?Pd0gH7ma5$B^oku0~c>8)XB(issXns=&qPO*N$1E}?dfAg z&E}^>4ZB>NMgv&Q$4WRKM%tj_oF)zPkoco3o&$1;_x$O@ZYUu#+bQzAa+W^7Ha2s9 zE*q~&Ogw4@vvrnxYHVCEkBRXobaD7Ei6zX{PC@n6@=tViZKOtoRC38Kc(b?d>eG(K z6NVZC)Ps2zabq|hzrUiH*S{;!!C5Pg=$M`+vB=>vtqAOOO0It!nz38HaphU|{@jMY zUr6k`a!&GiX<5ygbS@kJaz`9ubAqGSo227xn{Gix_|M2R@>J$B&3I1=GT#hu#xR$P zR9E2+Ef-I0+P)sAhSIYSNwAb@Cf=^!%1}ESy+m`LSrO5UY}4rJR*htWa7JVE_pzx- zGQ!UQ&$wG#tIfHnz&w9#UGA=9waCkDYnK;#y$TZDb331Hx#P7dmEG%(52#Q4%6&M! zP6GDwT>_u*Jr;6cnS9%-(2g`xBfIN*{A3apRdsl>9e*Fx^sEC8%53ksmOI9vi^LdV zrTIK~m+rQy-i^O8ZSE{1le+BYo6&Af-cMgRk25!hjW#Y>EspgQ^0)h-B#)kU+7O-f zfO9>buY+|p%I&+bbEjC9E~YG}UAOb#ZyWdpJ36p87kG{bFVp^IzQ?e+A~n`Aoi#yV z)IT)bS`rq_y;*!XW4sNEEXawDTICtC7|^0CbeC8suzm`dC!&5=FXJITf~4bQJ`k+s z)bBDf%shABF3dz~wiF*-K^rh7h2O5ldC<+F7@aXDja@a+j!{*rqkPSaRLJ~ghBtn_ z48ajgf}@bVN-OK$wEOH4N;tNH6#;#BJgFV@i!4xv{)U@0#ND zcv9jv&u7)E&oGmtXcE(ydv+{yx{c?R4Tf<4*2aFxOf>Bpg?QVYM_P3$!m9W*54s$V zQu-C9SA=bzP!4;qQcTxx_^%HcRekat!R^!$Bj-%AeO`mU)03}m26;Ve4aN(4nvWgl z$0!>b-@%r8lVN_c{_?YI9$Wiiru*vrHc!MxKAkCj$}RI;R4h&?9=U?gqSfSmf|MbFi||Bh-{LtmWOVWi>~pc}HSBV=<@w&#btOGmKFRO5g3hBpRv#j!JnNeuk#! z6fV_V86iP#4L_0;m&Z%7^p;5ncq$%MS)@OC#wMQ}wuVN6<6*vRKr!-vYK**>D-#;u zyuXoUhB%sWbnchxvY3zJa;$uVw77GJ;XX$p%E-{hrYT-4z)xOi6K|!U3dm)kmBvGiTanv(#WfE9v(TBhz`63!jK;0EUxX2ul!+J}8{gC}{ z*LoB=`&0g!hlq~PKBD!R(JUd)vbUko3s%;kix0JG5H&knv>Uke!R1Ctr{W1N_HmrV ztxAJD9P6KJVTv#hB(lJv2@0wd0e46~1WiTwUbe8-&#Vx!^F2PRU!Om%Fi$+*N_%ST3Np=Rl}F6& zbqyM*2fq-EVTA^Yru>}0+ag-hPGd!hn2DpZ%Rq;nl8w$vD-(8!A@cfS9?>jLeLvlo z4Dh^)$6hOc1a-QS(>Xu!0Sk=NRdhXKIJEo z@;;y!>yts`Sw*^SUY~V+*S*Y{Er20uzSv5KH&Bvv#zi}8{l4HryZxW-qOFIuSI|{m z4Im?m!d`E`x%{OrG=kIS)`ry{KV0l}&x#VwB zN;PUVi82^+RB+iCs&T3f=7r=w=DdJjJ-8@g_=%q!&~>27D7s|Z`4|}dqAHrhMDU)O z_IlXnBwgxLW|U8O(OO{e>&e+>U9r975#JlfugJfo;Z_LMg<+xVFG`fz;|jv)xg6_m zp|4Qnl}7_!O1V#A@t@rS$D84uoTq*`SOFXFVu?sN>mMj!E~9ALZ3H~)x$Iar>hh1* zyV2DlEF{5azblUCg1c0?;x_O2aurh(T!X!#pAU(gnvzrhtjL(xO)CouCTr?df0AH= z4R%h{RV2%@onY*#8VpNm#Q3HpkV{t+v$brdqIqP&zbm7zmt<2b)Y|-J*jelW`rJqj za19^Mo0v|`e(8lOEt&pMSs4f&9+N;Zey^cvDx1_N}p$Yr8dLn zh;b4_odNFolvDJ?)Xwgg^d=aJ&vbpVLdPg$3XZb5Ts%1?(S%JdH9DDwjJ_o~&RP|9 z^~L?8HmHe)mSZ3vguFLNJ^15Vzq)@kKz0CZC=nq0GrZg#QdiH{8Zv$lZTc<;e}9X- zt=V^zbFBKqSu1bJV?QOO9!vZh86`0!!($QP7e*%(T@(hot_rEqMG1ndB>ZMyQ2Wjx zgdWU!g+`avYn`U?AaM#CbhR+_OC^*VdQwG>Ab|KYVHCIC`rY-Wm{k&ifRIjO{h1Oi{$C!2=KE|k%{48xA!r_F1Mizu zUy;pbQfSjj1cC(g+iK|QdP9z0?|6m+iV3xVt^)erd3xz`;&d*QE zA9wD)ys!uTa*#s3eXV@d3j3I#w&8JSP|;3`{<<*+ig3ZnWNCznA?LG)bJaxG(C1Jz zs2=0~linD+H8^{yS>=dd1r#mR^fIIQGADpGqL8u&<#wpQmfhC!P)8_xf<_f+r31t+ zh9#F-9~Rk^&Js^%{;t_>LAr{_7OuO#{*BV%-!-H^^*l!xQGfWsx^xkZU_tOgz4+UY z1b`E=u&@wZbar;0%(vTJ843>%7d!q<1hj_TyPIw`&~Wxk|rM^!n!Ba=izjs>TX zZHl>jw7yfMrad=9nG`S$8X48J;!4heH4fRJ6$L%*SNmW*M3=8>@0gajLZ9}qu7@@B zEvxG|s~Q?Tdq%qG3C)(Zgg@CKHr-DkSKaju9SPii)V18@rGioW?eXI*TMpU7yzyI; zJNeIB(JY!so=aXtBT#rABtz#p5>+=3C9IRkb!Z`}%{F(Puz%DRjygaKdcpliH%luh zC_qi@(9jSRNkJ#PQ(=a{TfxP9yR{YWTnQtM$&hbahSjMn#vs+kw~-MXoi!KZ^_9%a z_h0uJWog$nJ$}4>jS>#*n~MixG;bsjgYM;$@tsnL-*)9OnZ$iiwF>=n?$9EluCDGn zQNXMZHxXXZjPAmzkgA0jG|q59pZDgBOugDmIW=)vc{xec*9|#sE*XT@ z(5Ddro7)e6DN=AtBc=26MGBrrjDGSJnn`x-(e@zImJa^)>e~l*f#pjVFnR7Ml}2i? z-|j5_y}Mc+)MB^^@&|Z#$wN=WJEgfO*IK7lRquAcH$AbtMQq;0HpD$!w!*#A`x}ud zuqHYgx$~n+NdPQb>d=<1PtSAA6LaYbielrTq*n7Dd8qU1BCE(r$==aPHa~pH;@87l z<`gCZjH;?fPb42BlY>Bv9yCzHPhwrGCxfXnF+T|4p+Ym$Gz71|&0L4#a>QUh779>! z5Mr&UKUvRQe|cfSp%P#Sb-*lo91YZFUHAD|foad}Hx#-Fyynq$Y8w11s(f6Sa)Yvn z@*iSDXEbRqi!zi5;$4Wx|NOKidB&DQSg-3<;J`4GoV0&RIZnt^P#IskYIC9!_iX)S zq|aSFSM_61(1Y6R1gznrgOOEv^-6U9Pq}9|Rt5;Zul>4QZ=6d-Q#0Cj(bwQHhNg#Ui+fI2x>(|=HyKFoT{pIE5{12~A z*i>wNCy#Yxh~}uw%gbnt?C=sz%V0sMsHvH>wg<{Ek`M-ldr6XjLQraqhcGRGrrl0Z zX5@v#ma;+$dOzBWCw~5vMz~aq9NBwKLLakX$!M~BVq(j>i>Z(C>p=faemdf!kekL$ zfvy}^2?K9M$U;gp(#1R^G9(DF22rK8b#P<2?!Ig6?|n#dJH9i5(t<$myh2y{nh|2DrisK2lfe* zNSXP-ZH7c(qDQ$a(78d{ z7o#MayN@JR=B3stvls&I%cPC#q9&I4O%~#)p^iIvu1rpFHW)_Nb{MZCN}=))1eBmXO?0fz%L4?wp)q}S^8hfFfE@T) zGy*-%@V_@)C!%;QYf{z1sd#P=DeP5DILI-QXu>)O8?Lxi-ym#*XIya6rosaX%kS3( zCROlua@ICP(A~s3a>DFe*I8?XXm2TQg1o{ zP6we)z6Rhx02YN|3v8V!mvL)N#oSD0;8iGn0AP;$!3%7BSrYi9QM=mg5{X~evb z^DCx63YFl9rt@)p0d|T_NG@sU&8?Rn8I$2=2r>D^Pv~!(ag=1nzgUt~1 zskC$lKmrPS3n2Qp>TrbC4{N|8dNI)g#5>?648{Bk1En3s_|f>cX%Eu9OJ!?NW6uLF z>Zfi$qc_Axk3vcrRw7)WxY1+CA|9%6ZRK#8CGH)T??|b5iN5spekc_0n~nqA01Rw0 zM*T~EP~E~6ncg)zKo+rhn-;_I`#swSvWTu(vL3;z-ZDrAqA>*3V^^@aOn@UicN z#052$=1@~e3ok{uFPd`JKL3>4Z7+ji^6MMMei;eW5j<9dl@Z)+jP_j7FN7oF-xB7_ zH$K0*^KO62HQ6hLq>DWeQNn0##M4I~Gx8=T8>4@NbZJEU%r(hUR-Uz{N4Vhj zwj@q}#lU}ktpUEIPcL~vO{3JyV+W@ruhMg@MS{QN)`cC`W3wat>r0rh{QF|!?)zRN zx1NqiAi{D#wk-&eW02Yv+z@*VdgVnAuN}Tcn>X~sk-pciPC12C@RAbK=*n{Jcs&$r zR!Yk-dl&SY_*PLKx+@xAToCgP{raRHqOn=_F#KWzU|Z!MiD4Ho6`Dty8SV;d&^NtZu;xxD-&=l8^m9c zo=DiAVsn8EsyAZvuk<4L2{Nj&0(#HHj(8W(MIz=%Nxn2TxO-f3_mFVq|0UFoKYmYPRo zB9TCg4V$AXJ_O@=zcmP8Td%myfaT%^041*XLrvl>mXjZ^|UZ%Jf%z3&Y)Ob$JR*APjECJGL&sC=?}w z5NmOLkYaL7VwSkDf26~qzDH40lEV_>ZDImAHk93ocYTYYz2J3e)scMirz$E=-wI51 zkT#R@ce`2H3UhbEsFGGj&uur9ndDPdzN@%9%KN4aqPaWp08-$BUM3up7r3sm(Y&Z! zZJQYG0J&(0dU=erTd2L>MKf&m=_M}2S+0mpDV;Df8^Yg@V1giG<1lDpIs{rHJbFL4 zE^=204ikFDqRgcc$8+|yc=PNG@CnS7RE+xfTbc|yOr(f?k`9Z`-xM#niP_0&Qf8vs zW5RPEy(qyKu^9C$jf=i)J*4Uo46*x+UN|ts>tA1FA8uYQxkr}p;FY{a3^Dp$j4eWD zRORiS`a}Zifp z*JFPOp1(;S2q*U_koHRy%)RIDIACAa5Vb4dqh*4D2|3Jvb2$cv!^O)Qw0{Q_$RM8t zG0cme|GtiOspoVXL%{d^Jn`ja8n%4tg!0512=veQh6RBX;oi69KN`N>K`YP03!naJ z9acMJFY0#s<-qjzuJ`Fm;08}x8;CM2Ayj$?P{|2|Rb*#Qs@LA=@20?gZwe9Oi0$kc zM01E-LYrj=$N9cL&|iCb!3FHYHd>Fh-gHUC-0n+sJuV>8P$(3Dkw(^Ca(vby%+NI@ zMPwHKNOmA7$l$UGdShSA>|W9@%&BfOupyuX(0n@pLZF+yL-mdgp-~*bWM2VJF;K6j z)IjTVyoqL5~@6;5(edq+dEZ9(yo{aZ9@NVSU9sA5Z!XU^xG03_ud|e~JN^>(WHDX=`bL zc@NWyZ1vK6un?5V0wTEn^VliAHw5i`gFuods#Iq>LoDg>e>n6D>lrw1Nf8xg#KbiB z!r0Y}*wBj-hVKRS-hJN`bZ6&Il;4eIZP52jT`2pny!BGJW=wCJ%O(@&3o`~6#x>;)RvP4itVZY%Tm04N&-Z8Z< z46;Z7N+eazM$4!F)WQ2j$&iHE_uy~!=h3D67J6EZoGqIGscEgCd z?ZdEquHYh^a7HtkWpMNp)hl5xJzq#DHEuTes`f%rTqk1APB6M0&<)Dja|oq|=N!Xc z`;!8W3-Yqj66w7_!r21Z%eudfR{-BeE#zXw>Dq@i^L>wl&wAwV4%7Ll{%{7)O4qu} zk!M{`{QQok`7*^a5K4XnG3~jkYV235Wv2&#i~Iww20&^+oErtvq~&>zXehf+$B`d+ zjUL_WE^7QT!UCj5A;r`n4$LaBY@V1MXwh#tknE^1AdeI#uA#?eU-uX>LLw7YDo=Z^ z5*u~Z5XEzw=>MGziQzW+wK$bS6HO~j{WM-hl_};G^T69Qs`s0Bm#PWA*EF%FSjxN@ zv(>cm4np56FH?EcbxiCJ{)!FILFgr_w^(!?1<=lD-opF>^y^QJ7eKqAk5<&}uRi(* z1mzwtOz#YCj!p#Q+dK}|y9#<=^Yaz1UgS~pzs->LBL@m906m*zFC30w_-*%9dqZ~* z?G|%YKj-*7bPx>fOxD)c&efA9_@$A?nshNHC8IkA1p$`k=8&KUp|!9Mo_l){c!5n( zGMN$lj8e*;qIzjIGA`9RbXW8Rz2xKRac_Hl{igp!`CVAsiJ!zW%z(N5quEVCVzeghteRZ%<_y+3H|yzO;lcac3=BD;|6{(){lNU2J_AS|Vt^r{1C1A;@qhyloFvMK zwmL=+!?Coae1KyaTkM)C2qxRMBr%w?i9#><{xtgwEap z;0pf`GdiRbGtQD$+&X`FF)kJKl5#PCLNl6dJP_}`UN&4cAqx5u;CWINhyHn5;nQ!t zmo@u4a%)dJZeyn^=3lQn>aBkrPM*?0`5Bv}-=y9XUUy8h^Rr%Ri}ZajCFIN?d0BNx zQDB~t{QPYeTo6Y3cHcQ+STsvx@c7C3n;)J)2@j4@*Lu(Mj`eO0wC{s~fg)hkHz95f zQ_}OT6oGC}8~^h&^_B3w*u@UHHe#b%*7Gl7oZypim3%R{l?fI2rBP`f^zzA!J=OOr z&OH?j@zh;E=LQsq{pnENSH$6X67-x-H=^5iIP0Hk{pBNRsgXWk7ceRVE_OX{e7F2_ zEEg)7AkX|%6*?QjXysfU)yAC{t%+NCx9+>(uH1fovfi0qY3|#8C+fCrnC=>s@P?sU>X1 zAduT&t0uvq_)N@FN*QG%+0WaZ*+Kd!z)hF~w^ffo>AD!facqSKyUA-jsNLo15ysA5 zSTL!1-+QL98Nmf6~vIi0#iQBiy8b3dR&h9 z&V~o15YXMRG=dnv$&RlSL`4|^`e)(Rjer&IRunFA<)qDdXc37-d5T7~8MXchWAF5? zPYZ$&;lMI)jW>gZwRPF36@-4Vf4=v+#l5Eu(L_+AJdY-pmX+;-gHkbmgD{XPRzN@i zEnf$GBa=ZoyfeDaS)*IXNF`>-L>qx~0h7T&@OmpPF9{HM;4reWNt2QO z-yopa%AfgKoc?M=Tkt1gN*vzs%ihoNyg2r!kTTPXRd>bD;uWM{&nM#@_3@=6oCC%NeZOLSYisBM@MeK z2LC@hfc}q;#{a#YMQz;>H|aCm$%@xSe*V0DbOP-8_WT_F=^ZJZ@i~t&zjk)=K=aoT-b3&7F1zHRy*brFF_jZ;3 zJ#f8XOz$<5DqRP1El~A<(WUS1eh3*JZ?K5bl-ib%Ye3}jNu($*D-$`Ki$NlFfyf2$ zIahP@TqF`qJ#CPBgj3dnpem>w)@DM=4ror02a}B*vEq+8{b#mQ`r@Hzzo4yj;D63L zpyhNRHH6>=1alfFhGeh+@O2rWk>SbHFc1H-+by7|o-wR8_kvO>)htsZIhI8U2TOyTf#r zoc~#WQRs}(H=fpuH^o-f7IrzbTC3B4&jN24w~$3ZFnyKgCqYsq#5`#;Mje@bWr=^l8vic9Knh#nOLi z-S4489#~2u&MhN>!;-O#-!pGQ$8@4o3Y1BD zy?7)0&9Ud26nB{e#ErgX5~;@-8?kMusb;WHA5^ZUm7xvUmbEqw6CwguuX#i>Wenpp z?^i0S^T{+C?iHelhgb2fN+D0!{7alSlY?q1GWw3dZberZone^RMXtwSD8jNLnpU{2 zLFgq1D79AVWA8IGXc_2Zqf8qO}^8^?;QQ)LCtqwmbfi`%ao+D#T8%v0P zejY+bWb!?ilMC%OafHB|N@~=Uko7w|!Rx_@E*lxN?H`cI67pjaR^{(D6*NbFw}I0W z2W3ZG%S{jf49Q4PahF#6Jk&s*CBPWpX)H|*tIzJH?ZOS-#H6Gn8%ey27tXz+>5buy zdv@SsFn&5ubGZrAzEHrp^a+Oe%#0y}g}J%xSOHNx2OFE**%q36*yeNm$kEXek}Y8U z2?0EK%~eNPIejD1@$D;gy%*#aGCt&_gJHpt0a<27Yf!FY&fxGUAZh&l*XMN6hhIPd zt;z)e7ofa#6tO2?cb zi`tnGw*Hzu^wEK_hvu3?l2%31_c~!4K!4Hzun)f!`*JR5{1EqnM#ak`f%6?=BtPrD ztYK}v4)4LF3u9Ppte_PEf8ek(ohjnWmwBJ!+Cy?9b1TRfESRMPqxIW{sPlN)aYDB>l^$~{8-*BL65 z!au7SBY@?k^Y_17dvf{zt#SIl zXAb;tTDt!Sb|!O3_~9%F!GQfU+njoFV&s94T7ek+e;9YuYP|9LFmFi`GO0eg=2^(E z6BMR7Dk9)Fvc+sSD`bp{(1_dCZER zN8%D>2E3~-*A9=3CCXU6jBvD(ws`jm=q)Q8^2iz`9HoV}!eLwed3e?#L#`=Ei4W%e zM;GgZ>HbQG?Ufu+TA#F2^2okTo>mB3l(1h9mzGSARIbjh^AY4LJQZ~nTrc+Cb}?}4 z+;kHr4{d3{!^CEXBnlE8sd&AnyfYl2$v3rrBP|djgO55wcAuc9HVI!@b7WtN!<%h54t}Iw?XWSaqFzY^^99} z=nSh(FCKvO5*HH1WD>FsGP5mTe4hVNS$z5=F+thJqU>j4d2zRi<$_^seiz-c=#oD# zd#lO!r)NuT&1%H__9VqxehuUr{uk6Q{;Aw|sP{?sqN*O5*X@b$AQGnY`Te_QYLRLG zq$+Uu{)Wd=*%D&wWo=4IN?fW82yXyIQyPD2YKnsaN)7npEY3oy#*bUI$U&fHv4PI-Bl@|nNF5@fKjbwSKP=&wuWM?cb{ zw;Q$)2bQkUzF_nOE)q(2$fD9C7~~&6CW%T-rCoy0Rvp&uiwHI zb-mW}1iuEcgn(M;!&lXlHWlOf!)Anmv*qJ9SL_$3rgU!*<==bB@J4mvckvElWflG6 zF|#9H-q;Y>X&G|;n?9VymH{1ZM5E|hfaTNB43^2s$p^Gr2q!u&-#S}r%mkTllV9zd zzJA*k=>$fx=nfk(hJVlsQ_zYrbIt(O7ZGl5WrTm)U5T*&{GFyTAVR zZV}<>qbl_0K^X7^KA6IMM%H3dLgkbzt4!wnP14h|hPd-GIMllYihMj5fwTIxA;L1izIXOgRhkQ zQG>&Y!A^23Cs&iY$?529n-5^B+SnJmPIwEOE^g9h*uJ0oK@>K*LtASr^}ZI(gRdGc z3Wa&p>wgERT{u@x8#hd;A~WHCoK{eCihVM+0%cJyn-*FS%3 zpiHXwR}-W-1~#SCnV%XOW)O>nWw2OanM@=FycFsDH#N1^UaEY~QHCieFOR?aKs^YG zvf5^;1Z=LSja|riqN3L&BP&ZB1$8JmRvSx8SEE1=$?Si5yny)5-~g;+-*xcX815Oh z;-kmje>^?dR#0lj-~dHG--w#*DxX7Gl`zl<7}R4%W!KOB%0`kQf)T)1Lm}2=Utf{W znYVLp>G=9onPq(2tR`TTe_dJy)kabGtruQiUSEsS>CQLf4S^>!s2%*#3Q+0<)XkldCD6tof+%fh1QYZX0+{XX8=Cs z?EaAgOKIP?epL`~Gg`j$WrxUzR~3`1W8~P|C({vquD;xUOhM>>{C_pelh7<*{2;5R zH(g}Z2Cf!lXuwPc`T0nQuEBE?Vr^mZ5`wm9Q9@uU$}vs@GgeIv=1X)HEx?JppduLp z$ccjXhA(31>>xA%f>^*uR|3V9CD)|HL^Ocj(o#rB2(*49-@mVff}^!HtM%^@_f#-d zF_836RX=c_VUk_o%KmrN4Y*|$6%-(x%+DXv4rXU{RTbg|L^ObrtE8y-Q$$Vq9hBMT zS5~4c$;OnbZZqm>Y94}04wUtcjEsQT)Z4d&;9%0xLHxf5u;z$6hu_eaHB_%cL3X<7 z1lpX3n2uT!zG{TP&wcZF0I_PuuCcr|7y%4#f?s1DdRRI zG?E~$jF*@y85zwc-*<%P3Tpm9#*ydVJmC zkoADs#@u`vO3Ws0(7`0AWXp_J-`&{(L@O+clUvo`8$#Fy>L|fEeBdzG4h(y^%X<)< z3X##&90f&_?DO;bfG2(pfyCooD9pI(%N>N>g@iaz1jILC!Gr*gq|PIl{OgR`2&*S` zm6iK`{>-*r1L+WuHRS{J>}N(jh<*V>8&*2t+k?1iFj{;7N?8SgQ@gjf2djDzBPRoB z6P-X71rn`KbahYljy&P}AsH`B(Gm%KcklkU;?69psVfS@K?yD=2r@+l!C-<#Fjl}K zA|NDy)iMYXML~oWaDb?Bh#*58iHNd-6|tgHseph4L7W&IOSKLRl|dtd8l}>zRAdMc z(*K~#+CKEL&1)d{-gEakXYc**v%haRzi-(l5WGPMrHWTW1$NIEnCfQWL(Lq;;87=Z z8jaGR-&l3EAg{Q15l1K#YO#gsj?qGp0bAZ8)~oxn;e`-n2R4(*mDOvrh)FRR=t;jb zEG#q>oqSmgTwlaVHIim$XG7LQn|H_&_rgn>g{EDi9VounicM-o%rv2Q`Yy|%At}U= zuwg@cYQ;-=2wEhB-Jl__w{918CCy#m>Vg*nx%Bak@Fb`DAeC zFHF!~Dv_;=K{sAJvu(uOR84ooGPL6!ZxfCRM*tmjPMzY;ZH81?W@2K}*;ai8l8AX~ ztOWSWdno8ee?e-bv*=BR!UzsRzrMNRExvk@U z*zOzeLQ~|x`SCd1gmD7g5>!Js)h$`@LQf|rr$MxkCX6UhumIY5xV;%8&|SBHt!fO_ z$vW70GCTVv>Jas%5bLjJx-HS>(Hzq(>7#RZw4SZvZLb<4);4c+52!ri!Bn-CG@Hm3?cl8++|dl!~jG&>a2+a+yZ(avzkvxx8SmM=)R# z+1ac`w^NekuSvEQ0it!vPXsA9rb6E#+?RTzY7sSS5^qLi!921QNWZ6vYq!q{S$rrX z<1zZ-%jFY`f+`e-1Jx5*KnH*VZZ7@89x=_5Od(b#s@=lq@aL)q=0% zjH5&%5j;Y&msd5RSQBYST$ki%`}ijA!zP4b3E(JDOtB+&Yifx3!oN5?oQF7qA%xN}2GL?*}tO-K-E~tiAaFQcD{3XB^1g#jf$Aq7|!wk1UpJ$-C*X|s-4F}vt9J!6Z zcJ%g>-LT$O$-s5_CHlzPW*cjFooEkRpJk&=Pp4n1H;;h`D4D`y9q3KYXDVq}(#oL> zqR4|lnPGPJ&4Wg;;&&gO*Zavu%bN5A$yCh{|7Wl(0CkJX%LmW^9rd)WeznsN=bt~{ z@N~Tu2)|*GUS9WWBF5ri3D|Md=FBO}%ryJ%pvc}BD+Ow>F;zRUpbj4#&6ruduk_JD zomvB<`WF`nRPIkH$RHk*w%{VTBX22!xJ2Guj3DLlsKi7hES z+UZZvT0C}8-cghWOdQCxXY%u>p=G;`O($A;C7s0VO+bmvPE(?1(m>`JN9PcsW_0>J^SgB}!9;D8e}4y;jxhJzaA zZ~KfqllRr{9(jA+dqEf4qf)8vHAP~5Lqiq!UX3r+AI9xT zmX1U&CXoT64t%aoiT&T>*@B$1GI?7k*8znFv{~@gBwI%4Ogi^45|B|nDIkd9d_L2{ z0{%VGZy=#N3l*LT32?#?c1|Yo_njt`X(M1)_x;B1I)Rq?Kzm>y0xM%L-FcA|DWFiy z^k-dZF@1$1+H1y+Ti4^4y>d!qvg)@zZ3;y}a77HL7YKjR=sKWqxh^pmY%v@MKLq|` zhVE$1@a%Zil z>(2M~W?NgA%3m{z;qplMkbGU;kUK~td<_H*)W~wc>F~bL!o2!8-xm_H?*Y6MtLJ2S zdeIGHxeo`xbG5R~bfXR2>!(9coDMjF^@SDy4%>|&{=eko|E_zG-(6YqP;eca%zK6=wooZFlMJtjl`EhAxX%a~XT%G^K|v~5H884@TZj%SH@&L!v_Mi| z&%B|50m>PRbpVP@kfVE237{TY`f@F&!8{z&%!Y~iR)Obo3kwBEg^Hd;M*x5j82Bia ziS?d*;Jce21GI>K{NCFh4~G#Hml-gp$K}x_l1(B}%EYgx*O5_?KG**DgiZ%N29`)F z^v;IvmNcQCa~nqA_URWNU4GmNCeVMK@KHL`gJn0TtUL4rnZEP6UYtVLkR5*lfHm{Q literal 0 HcmV?d00001 diff --git a/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-8-1.png b/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-8-1.png new file mode 100644 index 0000000000000000000000000000000000000000..2af850f4d7acea31b1b57c6c02969e9fdf520ff5 GIT binary patch literal 84934 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

JPKAoP;;^Lki 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%0APS-IhG4&?*RlmNLENKHB?(0TN?v}n#`!xsN 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 v!V0_dI~hGL9zX literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc.md b/16-bayes-mcmc.md new file mode 100644 index 0000000..0a1d31d --- /dev/null +++ b/16-bayes-mcmc.md @@ -0,0 +1,2146 @@ +# Métodos de Cadenas de Markov Monte Carlo + + + + +Hasta ahora, hemos considerado modelos bayesianos *conjugados*, donde la +posterior tiene una forma conocida. Esto nos permitió simular directamente +de la posterior usando las rutinas estándar de `R`, o utilizar cálculos teóricos +o funciones estándar de `R` para calcular resúmenes de interés, como medias o +medianas posteriores o intervalos de credibilidad. + +Sin embargo, en aplicaciones rara vez es factible este tipo de análisis tan +simple, pues: + +1. Los modelos que estamos considerando son más complejos y la distribución posterior +conjunta de los parámetros no tiene una forma simple conocida. +2. Queremos usar distribuciones iniciales que no son conjugadas para utilizar correctamente +nuestra información inicial. + +Recordamos que tenemos expresiones explícitas para la inicial $p(\theta)$ y la verosimilitud +$p(x|\theta)$, así que conocemos explícitamente la posterior, módulo la constante de +normalización, + +$$p(\theta|x) \propto p(x|\theta) \, p(\theta).$$ + + +Supongamos por ejemplo que quisiéramos calcular las medias posteriores de los +parámetros $\theta$. En teoría, tendríamos que calcular + +$$\hat \theta = \mathbb{E}[{\theta}\, |\, x] = \int \theta \, p(\theta|x) \, d\theta$$ +Entonces es necesario calcular también $p(x)$, que resulta de la integral +$$p(x) = \int p(x|\theta) \, p(\theta)\, d\theta$$ + +Si no tenemos expresiones analíticas simples, tendremos que aproximar numéricamente +estas integrales de alguna forma. + +1. Si la posterior tiene una forma conocida, podemos calcular cantidades de interés usando +fórmulas o rutinas de simulación de distribuciones conocidas que producen muestras independientes. + +Cuando la posterior no tiene una forma conocida, sin embargo: + +2. Podemos intentar usar integración numérica usual. Como veremos, este enfoque no es muy escalable. +3. Podemos usar simulaciones bajo cadenas de Markov (**Markov Chain Monte Carlo**, MCMC), +que es un enfoque más escalable. + +Mucho del uso generalizado actual de la estadística bayesiana se debe a que gracias al +poder de cómputo disponible y los métodos MCMC, no estamos restringidos al uso de 1 y 2, +que tienen desventajas grandes. Primero mostraremos cómo el método de integración +por subdivisión no es escalable. + + +## Integrales mediante subdivisiones {-} + +Como tenemos una expresión analítica para el integrando, podemos intentar una +rutina numérica de integración. Una vez calculada, podríamos entonces +usar otra rutina numérica para calcular las medias posteriores $\hat{\theta}$. + +Las rutinas usuales de integración pueden sernos útiles cuando el número de parámetros +es chico. Consideremos primero el caso de 1 dimensión, y supongamos que $a\leq\theta\leq b$. + +Si dividimos el rango de $\theta$ en intervalos determinados +por $a = \theta^1<\theta^2<\cdots \theta^M =b$, tales que $\Delta\theta = \theta^{i+1} -\theta^{i}$, +podríamos aproximar con + +$$p(x) \approx \sum_{i=1}^M p(x|\theta^i)p(\theta^i) \Delta\theta$$ +Lo que requiere $M$ evaluaciones del factor $p(x|\theta)p(\theta)$. Podríamos usar +por ejemplo $M=100$ para tener precisión razonable. + +### Ejemplo: estimación de una proporción {-} + +Teníamos que $p(S_n = k|\theta) \propto \theta^k(1-\theta)^{n-k}$ cuando observamos $k$ éxitos +en $n$ pruebas independientes. Supongamos que nuestra inicial es $p(\theta) = 2\theta$ +(checa que es una densidad), es decir, creemos que es más probable a priori +observar proporciones altas. Podemos integrar numéricamente + + +``` r +crear_log_post <- function(n, k){ + function(theta){ + verosim <- k * log(theta) + (n - k) * log(1 - theta) + inicial <- log(theta) + log_p_factor <- verosim + inicial + log_p_factor + } +} +# observamos 3 éxitos en 4 pruebas: +log_post <- crear_log_post(4, 3) +prob_post <- function(x) { exp(log_post(x))} +# integramos numéricamente +p_x <- integrate(prob_post, lower = 0, upper = 1, subdivisions = 100L) +p_x +``` + +``` +## 0.03333333 with absolute error < 3.7e-16 +``` + +Y ahora podemos calcular la media posterior: + + +``` r +media_funcion <- function(theta){ + theta * prob_post(theta) / p_x$value +} +integral_media <- integrate(media_funcion, lower = 0, upper = 1, subdivisions = 100L) +media_post <- integral_media$value +media_post +``` + +``` +## [1] 0.7142857 +``` +Podemos verificar nuestro trabajo pues sabemos que la posterior es $\mathsf{Beta}(5, 2)$ +cuya media es + +``` r +5/(2+5) +``` + +``` +## [1] 0.7142857 +``` + +Y podríamos intentar una estrategia similar, por ejemplo, para calcular intervalos +de credibilidad. Sin embargo, veremos abajo que este método no escala con el número de +parámetros. + +### Más de un parámetro {-} + +Ahora supongamos que tenemos $2$ parámetros. Dividiríamos cada parámetro +en 100 intervalos, y luego tendríamos que calcular + +$$p(x) \approx \sum_{i=1}^M \sum_{j=1}^M p(x|\theta_1^i, \theta_2^j)p(\theta_1^i, \theta_2^j) \Delta\theta_1\Delta\theta_2$$ +Y esto requeriría $M^2 = 10,000$ evaluaciones de $p(x|\theta)p(\theta)$. + +Si tenemos $p$ parámetros, entonces tendríamos que hacer $M^p$ evaluaciones de la +posterior. Incluso cuando $p=10$, **esta estrategia es infactible**, pues tendríamos +que hacer más de millones de millones de millones de evaluaciones de la posterior. Si sólo +tenemos esta técnica disponible, el análisis bayesiano está considerablemente +restringido. Regresión bayesiana con unas 10 covariables por ejemplo, no podría hacerse. + +De modo que tenemos que replantearnos cómo atacar el problema de calcular o aproximar +estas integrales. + +## Métodos Monte Carlo {-} + +En varias ocasiones anteriormente hemos usado el método Monte Carlo para +aproximar integrales: por ejemplo, para calcular medias posteriores. + +Supongamos que tenemos una densidad $p(\theta)$. + +\BeginKnitrBlock{mathblock}

\EndKnitrBlock{mathblock} + +Esto es simplemente una manera de escribir la ley de los grandes números, y hemos +aplicado este teorema en varias ocasiones. Nos ha sido útil cuando +**sabemos cómo simular de distribución** $p(\theta | x)$ (usando alguna rutina de `R`, por +ejemplo, o usando un método estándar como inversión de la función de distribución acumulada). + +### Ejemplo {-} +En este ejemplo repetimos cosas que ya hemos visto. En el caso de estimación +de una proporción $\theta$, tenemos como inicial +$p(\theta) \propto \theta$, que es $\mathsf{Beta}(2,1)$. Si observamos 3 éxitos en 4 pruebas, +entonces sabemos que la posterior es $p(\theta|x)\propto \theta^4(1-\theta)$, que +es $\mathsf{Beta}(5, 2)$. Si queremos calcular media y segundo momento posterior para $\theta$, +en teoría necesitamos calcular + +$$\mu = \int_0^1 \theta p(\theta|X = 3)\, d\theta,\,\, \mu_2=\int_0^1 \theta^2 p(\theta|X = 3)\, d\theta$$ + +integramos con Monte Carlo + + +``` r +theta <- rbeta(10000, 5, 2) +media_post <- mean(theta) +momento_2_post <- mean(theta^2) +c(media_post, momento_2_post) +``` + +``` +## [1] 0.7155559 0.5372170 +``` + +Y podemos aproximar de esta manera cualquier cantidad de interés que esté basada +en integrales, como probabilidades asociadas a $\theta$ o cuantiles asociados. +Por ejemplo, podemos aproximar fácilmente $P(e^{\theta}> 2|x)$ haciendo + + +``` r +mean(exp(theta) > 2) +``` + +``` +## [1] 0.5958 +``` +y así sucesivamente. + +Este enfoque, sin embargo, es mucho más flexible y poderoso. + +### Ejemplo: varias pruebas independientes {-} + +Supongamos que probamos el nivel de gusto para 4 sabores distintos de una paleta. Usamos +4 muestras de aproximadamente +50 personas diferentes para cada sabor, y cada uno evalúa si le gustó mucho o no. +Obtenemos los siguientes resultados: + + +``` r +datos <- tibble( + sabor = c("fresa", "limón", "mango", "guanábana"), + n = c(50, 45, 51, 50), gusto = c(36, 35, 42, 29)) %>% + mutate(prop_gust = gusto / n) +datos +``` + +``` +## # A tibble: 4 × 4 +## sabor n gusto prop_gust +## +## 1 fresa 50 36 0.72 +## 2 limón 45 35 0.778 +## 3 mango 51 42 0.824 +## 4 guanábana 50 29 0.58 +``` + +Usaremos como inicial $\mathsf{Beta}(2, 1)$ (pues hemos obervado cierto sesgo de +cortesía en la calificación de sabores, y no es tan probable tener valores muy +bajos) para todos los sabores, es decir $p(\theta_i)$ es la funcion de densidad +de una $\mathsf{Beta}(2, 1)$. La inicial conjunta la definimos entonces, usando +idependiencia inicial, como + +$$p(\theta_1,\theta_2, \theta_3,\theta_4) = p(\theta_1)p(\theta_2)p(\theta_3)p(\theta_4).$$ +Pues inicialmente establecemos que ningún parámetro da información sobre otro: +saber que mango es muy gustado no nos dice nada acerca del gusto por fresa. Bajo +este supuesto, y el supuesto adicional de que las muestras de cada sabor son +independientes, podemos mostrar que las posteriores son independientes: + +$$p(\theta_1,\theta_2,\theta_3, \theta_4|k_1,k_2,k_3,k_4) = p(\theta_4|k_1)p(\theta_4|k_2)p(\theta_4|k_3)p(\theta_4|k_4)$$ + +De forma que podemos trabajar individualmente con cada muestra. Calculamos los parámetros de las posteriores individuales: + + +``` r +datos <- datos %>% + mutate(a_post = gusto + 2, b_post = n - gusto + 1) +datos +``` + +``` +## # A tibble: 4 × 6 +## sabor n gusto prop_gust a_post b_post +## +## 1 fresa 50 36 0.72 38 15 +## 2 limón 45 35 0.778 37 11 +## 3 mango 51 42 0.824 44 10 +## 4 guanábana 50 29 0.58 31 22 +``` + +Ahora nos preguntamos, ¿cuál es la probabilidad posterior de que mango sea el sabor +más preferido de la población? Conocemos la posterior para cada parámetro, y sabemos +que los parámetros son independientes para la posterior. Eso quiere decir +que podemos simular de cada parámetro independientemente para obtener simulaciones +de la conjunta posterior. + + +``` r +simular_conjunta <- function(rep, datos){ + datos %>% mutate(valor_sim = map2_dbl(a_post, b_post, ~ rbeta(1, .x, .y))) %>% + select(sabor, valor_sim) +} +simular_conjunta(1, datos) +``` + +``` +## # A tibble: 4 × 2 +## sabor valor_sim +## +## 1 fresa 0.755 +## 2 limón 0.783 +## 3 mango 0.819 +## 4 guanábana 0.569 +``` + + +``` r +# esta no es una manera muy rápida, podríamos calcular todas las +# simulaciones de cada parámetro de manera vectorizada +sims_posterior <- tibble(rep = 1:5000) %>% + mutate(sims = map(rep, ~ simular_conjunta(.x, datos))) %>% + unnest(cols = sims) +sims_posterior +``` + +``` +## # A tibble: 20,000 × 3 +## rep sabor valor_sim +## +## 1 1 fresa 0.732 +## 2 1 limón 0.831 +## 3 1 mango 0.850 +## 4 1 guanábana 0.397 +## 5 2 fresa 0.670 +## 6 2 limón 0.839 +## 7 2 mango 0.664 +## 8 2 guanábana 0.558 +## 9 3 fresa 0.671 +## 10 3 limón 0.758 +## # ℹ 19,990 more rows +``` + + +Y ahora podemos aproximar fácilmente la probabilidad de interés: + + +``` r +sims_posterior %>% + group_by(rep) %>% + mutate(sabor = sabor[which.max(valor_sim)]) %>% + group_by(sabor) %>% + count() %>% + ungroup() %>% + mutate(prop = n / sum(n)) +``` + +``` +## # A tibble: 4 × 3 +## sabor n prop +## +## 1 fresa 1264 0.0632 +## 2 guanábana 8 0.0004 +## 3 limón 5396 0.270 +## 4 mango 13332 0.667 +``` +Y vemos que los mejores sabores son mango y limón. La probabilidad posterior de +que mango sea el sabor preferido por la población es de 66%. La integral correspondiente +no es trivial. + + +\BeginKnitrBlock{ejercicio}
- ¿Cuáles son las probabilidades a priori de que cada sabor sea el preferido +por la población? +- ¿Cuál es la integral correspondiente a las probabilidades que acabamos de calcular? + ¿Qué tan fácil es hacer esta integral de manera analítica? +- Calcula la probabilidad de que mango sea preferido a limón? +- ¿Qué conclusión práctica sacas de estos resultados?
\EndKnitrBlock{ejercicio} + + +## Simulando de la posterior {-} + +Hemos establecido que podemos contestar varias preguntas de inferencia +usando simulación Monte Carlo, y que este enfoque es potencialmente +escalable (en contraste con métodos de integración numérica por cuadrícula). Ahora +el problema que necesitamos resolver es el siguiente: + +- Conocemos $p(\theta |x)$ módulo una constante de integración. +- En general, $p(\theta|x)$ no tiene una forma reconocible que corresponda a un +simulador estándar. +- ¿Cómo simulamos de esta posterior cuando sólo sabemos calcular $p(x|\theta)p(\theta)$? + +Hay varias maneras de hacer esto. Presentaremos los algoritmos en términos +de una distribución cualquiera $p(\theta) = K f(\theta)$, donde sólo conocemos +la función $f(\theta)$. + + +## Ejemplo de islas + +Comenzamos revisando el ejemplo de las islas en @Kruschke (7.2) para tener más intuición de cómo funciona este algoritmo. + +## ¿Por qué funciona Metrópolis? {-} + +Supongamos que un vendedor de *Yakult* trabaja a lo largo de una cadena de +islas: + +* Constantemente viaja entre las islas ofreciendo sus productos; + +* Al final de un día de trabajo decide si permanece en la misma isla o se +transporta a una de las $2$ islas vecinas; + +* El vendedor ignora la distribución de la población en las islas y el número +total de islas; sin embargo, una vez que se encuentra en una isla puede +investigar la población de la misma y también de la isla a la que se propone +viajar después. + +* El objetivo del vendedor es visitar las islas de manera proporcional a la +población de cada una. Con esto en mente el vendedor utiliza el siguiente +proceso: + 1) Lanza un volado, si el resultado es águila se propone ir a la isla +del lado izquierdo de su ubicación actual y si es sol a la del lado derecho. + 2) Si la isla propuesta en el paso anterior tiene población mayor a la +población de la isla actual, el vendedor decide viajar a ella. Si la isla vecina +tiene población menor, entonces visita la isla propuesta con una probabilidad que +depende de la población de las islas. Sea $P^*$ la población de la isla +propuesta y $P_{t}$ la población de la isla actual. Entonces el vendedor +cambia de isla con probabilidad +$$q_{mover}=P^*/P_{t}$$ + +A la larga, si el vendedor sigue la heurística anterior la probabilidad de que +el vendedor este en alguna de las islas coincide con la población relativa de +la isla. + + +``` r +islas <- tibble(islas = 1:10, pob = 1:10) +camina_isla <- function(i){ # i: isla actual + u <- runif(1) # volado + v <- ifelse(u < 0.5, i - 1, i + 1) # isla vecina (índice) + if (v < 1 | v > 10) { # si estás en los extremos y el volado indica salir + return(i) + } + p_move = ifelse(islas$pob[v] > islas$pob[i], 1, islas$pob[v] / islas$pob[i]) + u2 <- runif(1) + if (p_move > u2) { + return(v) # isla destino + } + else { + return(i) # me quedo en la misma isla + } +} +pasos <- 100000 +iteraciones <- numeric(pasos) +iteraciones[1] <- sample(1:10, 1) # isla inicial +for (j in 2:pasos) { + iteraciones[j] <- camina_isla(iteraciones[j - 1]) +} +caminata <- tibble(pasos = 1:pasos, isla = iteraciones) +plot_caminata <- ggplot(caminata[1:1000, ], aes(x = pasos, y = isla)) + + geom_point(size = 0.8) + + geom_path(alpha = 0.5) + + coord_flip() + + labs(title = "Caminata aleatoria") + + scale_y_continuous(expression(theta), breaks = 1:10) + + scale_x_continuous("Tiempo") +plot_dist <- ggplot(caminata, aes(x = isla)) + + geom_histogram() + + scale_x_continuous(expression(theta), breaks = 1:10) + + labs(title = "Distribución objetivo", + y = expression(P(theta))) +plot_caminata / plot_dist +``` + + + +Entonces: + +* Para aproximar la distribución objetivo debemos permitir que el vendedor +recorra las islas durante una sucesión larga de pasos y registramos sus visitas. + +* Nuestra aproximación de la distribución es justamente el registro de sus +visitas. + +* Más aún, debemos tener cuidado y excluir la porción de las visitas que se +encuentran bajo la influencia de la posición inicial. Esto es, debemos excluir +el **periodo de calentamiento**. + +* Una vez que tenemos un registro _largo_ de los viajes del vendedor (excluyendo +el calentamiento) podemos aproximar la distribución objetivo +simplemente contando el número relativo de veces que el vendedor visitó +dicha isla. + + +``` r +t <- c(1:10, 20, 50, 100, 200, 1000, 5000) +plots_list <- map(t, function(i){ + ggplot(caminata[1:i, ], aes(x = isla)) + + geom_histogram() + + labs(y = "", x = "", title = paste("t = ", i, sep = "")) + + scale_x_continuous(expression(theta), breaks = 1:10, limits = c(0, 11)) +}) +wrap_plots(plots_list) +``` + + + + +Escribamos el algoritmo, para esto indexamos las islas por el valor +$\theta$, es así que la isla del extremo oeste corresponde a $\theta=1$ y la +población relativa de cada isla es $P(\theta)$: + +1. El vendedor se ubica en $\theta^{(i)}$ y propone moverse a la izquierda +o derecha con probabilidad $0.5$. +El rango de los posibles valores para moverse, y la probabilidad de proponer +cada uno se conoce como **distribución propuesta**, en nuestro ejemplo sólo +toma dos valores cada uno con probabilidad $0.5$. + +2. Una vez que se propone un movimiento, decidimos si aceptarlo. La decisión de +aceptar se basa en el valor de la distribución **objetivo** en la posición +propuesta, relativo al valor de la distribución objetivo en la posición actual: +$$\alpha=\min\bigg\{\frac{P(\theta^*)}{P(\theta^{(i)})},1\bigg\},$$ +donde $\alpha$ denota la probabilidad de hacer el cambio de isla. + +Notemos que la distribución objetivo $P(\theta)$ no necesita estar normalizada, +esto es porque lo que nos interesa es el cociente $P(\theta^*)/P(\theta^{(i)})$. + +3. Una vez que propusimos un movimiento y calculamos la probabilidad de aceptar +el movimiento aceptamos o rechazamos el movimiento generando un valor de una +distribución uniforme, si dicho valor es menor a la probabilidad de cambio, +$\alpha,$ entonces hacemos el movimiento. + +Entonces, para utilizar el algoritmo necesitamos ser capaces de: + +* Generar un valor de la distribución propuesta, que hemos denotado por $q,$ +(para crear $\theta^*$). + +* Evaluar la distribución objetivo en cualquier valor propuesto (para calcular +$P(\theta^*)/P(\theta^{(i)})$). + +* Generar un valor uniforme (para movernos con probabilidad $\alpha$). + +Las $3$ puntos anteriores nos permiten generar muestras aleatorias de la +distribución objetivo, sin importar si esta está normalizada. Esta técnica es +particularmente útil cuando cuando la distribución objetivo es una posterior +proporcional a $p(x|\theta)p(\theta)$. + + +Para entender porque funciona el algoritmo de Metrópolis hace falta entender $2$ +puntos, primero que la distribución objetivo es **estable**: si la probabilidad +_actual_ de ubicarse en una posición coincide con la probabilidad en la +distribución objetivo, entonces el algoritmo preserva las probabilidades. + + +``` r +library(expm) +transMat <- function(P){ # recibe vector de probabilidades (o población) + T <- matrix(0, 10, 10) + n <- length(P - 1) # número de estados + for (j in 2:n - 1) { # llenamos por fila + T[j, j - 1] <- 0.5 * min(P[j - 1] / P[j], 1) + T[j, j] <- 0.5 * (1 - min(P[j - 1] / P[j], 1)) + + 0.5 * (1 - min(P[j + 1] / P[j], 1)) + T[j, j + 1] <- 0.5 * min(P[j + 1] / P[j], 1) + } + # faltan los casos j = 1 y j = n + T[1, 1] <- 0.5 + 0.5 * (1 - min(P[2] / P[1], 1)) + T[1, 2] <- 0.5 * min(P[2] / P[1], 1) + T[n, n] <- 0.5 + 0.5 * (1 - min(P[n - 1] / P[n], 1)) + T[n, n - 1] <- 0.5 * min(P[n - 1] / P[n], 1) + T +} +T <- transMat(islas$pob) +w <- c(0, 1, rep(0, 8)) +t <- c(1:10, 20, 50, 100, 200, 1000, 5000) +expT <- map_df(t, ~data.frame(t = ., w %*% (T %^% .))) +expT_long <- expT %>% + gather(theta, P, -t) %>% + mutate(theta = parse_number(theta)) +ggplot(expT_long, aes(x = theta, y = P)) + + geom_bar(stat = "identity", fill = "darkgray") + + facet_wrap(~ t) + + scale_x_continuous(expression(theta), breaks = 1:10, limits = c(0, 11)) +``` + + + +El segundo punto es que el proceso converge a la distribución objetivo. +Podemos ver, (en nuestro ejemplo sencillo) que sin importar el punto de inicio +se alcanza la distribución objetivo. + + +``` r +inicio_p <- function(i){ + w <- rep(0, 10) + w[i] <- 1 + t <- c(1, 10, 50, 100) + exp_t <- map_df(t, ~ data.frame(t = .x, inicio = i, w %*% (T %^% .))) %>% + gather(theta, P, -t, -inicio) %>% + mutate(theta = parse_number(theta)) + exp_t +} +exp_t <- map_df(c(1, 3, 5, 9), inicio_p) +ggplot(exp_t, aes(x = as.numeric(theta), y = P)) + + geom_bar(stat = "identity", fill = "darkgray") + + facet_grid(inicio ~ t) + + scale_x_continuous(expression(theta), breaks = 1:10, limits = c(0, 11)) +``` + + + + + +## Método de Metrópolis {-} + +En el método de Metrópolis, uno de los más antiguos, comenzamos +con un valor inicial de los parámetros $\theta^{(0)}$ en el soporte de $p(\theta)$, +es decir $p(\theta^{(0)})>0.$ + +Para $i=1, \ldots, M$, hacemos: + +1. Partiendo de $\theta^{(i)}$, hacemos un salto +corto en una dirección al azar para obtener una propuesta $\theta^* \sim q(\theta \, |\, \theta^{(i)}).$ +2. Aceptamos or rechazamos el salto: + - Si $\alpha = \frac{f(\theta^*)}{f(\theta^{(i)})} \geq 1$, aceptamos el salto + y ponemos $\theta^{(i+1)}=\theta^*$. Regresamos a 1 para la siguiente + iteración $i\leftarrow i + 1.$ + - Si $\alpha = \frac{f(\theta^*)}{f(\theta^{(i)})} < 1$, entonces aceptamos + con probabilidad $\alpha$ el salto, ponemos $\theta^{(i+1)}=\theta^*$ y + regresamos a 1 para la siguiente iteración $i\leftarrow i + 1$. Si rechazamos + el salto, ponemos entonces $\theta^{(i+1)}=\theta^{(i)}$ y regresamos a 1 para + la siguiente iteración $i\leftarrow i + 1.$ + +Requerimos también que la función que propone los saltos sea simétrica: es +decir, $q(\theta^*|\theta^{(i)})$ debe ser igual a $q(\theta^{(i)}|\theta^*)$. +Se puede modificar el algoritmo para tratar con una propuesta que no sea +simétrica. + +Una elección común es escoger $q(\theta^* |\theta^{(i)})$ como +una $\mathsf{N}(\theta^{(i)}, \sigma_{salto})$. + +
+

En este curso, escribiremos varios métodos de cadenas de Markov para +estimación Monte Carlo (Markov Chain Monte Carlo, MCMC) desde +cero para entender los básicos de cómo funciona. Sin embargo, en +la práctica no hacemos esto, sino que usamos software estándar +(Stan, JAGS, BUGS, etc.) para hacer este trabajo.

+

Expertos en MCMC, métodos numéricos, y estadística a +veces escriben partes de sus rutinas de simulación, y pueden lograr +mejoras de desempeño considerables. Excepto para modelos simples, esto +no es trivial de hacer garantizando resultados correctos.

+
+ +En resumen, todo el código de esta sección es de carácter ilustrativo. +Utiliza implementaciones establecidas en las aplicaciones. + +Abajo implementamos el algoritmo con un salto de tipo normal: + + +``` r +crear_metropolis <- function(fun_log, sigma_salto = 0.1){ + # la entrada es la log posterior + iterar_metropolis <- function(theta_inicial, n){ + p <- length(theta_inicial) + nombres <- names(theta_inicial) + iteraciones <- matrix(0, nrow = n, ncol = p) + colnames(iteraciones) <- nombres + iteraciones[1,] <- theta_inicial + for(i in 2:n){ + theta <- iteraciones[i - 1, ] + theta_prop <- theta + rnorm(p, 0, sigma_salto) + # exp(log(p) - log(q)) = p/q + cociente <- exp(fun_log(theta_prop) - fun_log(theta)) + if(cociente >= 1 || runif(1,0,1) < cociente){ + iteraciones[i, ] <- theta_prop + } else { + iteraciones[i, ] <- theta + } + } + iteraciones_tbl <- iteraciones %>% + as_tibble() %>% + mutate(iter_num = row_number()) %>% + select(iter_num, everything()) + iteraciones_tbl + } + iterar_metropolis +} +``` + +E intentamos simular de una exponencial no normalizada: + + +``` r +exp_no_norm <- function(x) { + z <- ifelse(x > 0, exp(-0.5 * x), 0) + log(z) +} + +iterador_metro <- crear_metropolis(exp_no_norm, sigma_salto = 0.25) +sims_tbl <- iterador_metro(c(theta = 0.5), 50000) +ggplot(sims_tbl, aes(x = theta)) + geom_histogram() +``` + + + +Ahora probemos con una $\mathsf{Beta}(3, 2):$ + + +``` r +beta_no_norm <- function(x) { + z <- ifelse(x > 0 && x < 1, (x^2)*(1-x), 0) + log(z) +} + +iterador_metro <- crear_metropolis(beta_no_norm, sigma_salto = 0.04) +sims_metro_tbl <- iterador_metro(c(theta = 0.5), 50000) +sims_indep_tbl <- tibble(iter_num = 1:30000, theta = rbeta(30000, 3, 2)) +g_1 <- ggplot(sims_metro_tbl, aes(x = theta)) + geom_histogram() + + labs(subtitle = "Metrópolis") +g_2 <- ggplot(sims_indep_tbl, aes(x = theta)) + + geom_histogram() + + labs(subtitle = "rbeta") +g_1 + g_2 +``` + + +Y vemos que esto funciona. + +Nótese sin embargo un aspecto de estas simulaciones que no habíamos encontrado +en el curso. Aunque la distribución final de las simulaciones es muy cercana +a la de la distribución que queremos simular, lo cual era nuestro propósito, +las **simulaciones no son extracciones independientes** de esa distribución. + +La construcción del algoritmo muestra eso, pero podemos también graficar las +simulaciones: + + +``` r +g_metropolis <- sims_metro_tbl %>% + filter(iter_num < 500) %>% + ggplot(aes(x = iter_num, y = theta)) + + geom_line() + labs(subtitle = "Metrópolis") +g_indep <- sims_indep_tbl %>% + filter(iter_num < 500) %>% + ggplot(aes(x = iter_num, y = theta)) + + geom_line() + labs(subtitle = "Independientes") +g_metropolis + g_indep +``` + + + +Donde vemos claramente que las simulaciones de metropolis están autocorrelacionadas: +la siguiente simulación depende de la anterior. Esto define una cadena de Markov. + +En cualquiera de los dos casos, como vimos en los histogramas de arriba, +las simulaciones "visitan" cada parte [0,1] de manera proporcional a la densidad, +de manera que podemos usar ambos tipos de simulaciones para aproximar la integral +o cantidad que nos interesa. Por ejemplo, la media posterior es: + + +``` r +media_1 <- sims_metro_tbl %>% summarise(media_post = mean(theta)) %>% pull(media_post) +media_2 <- sims_indep_tbl %>% summarise(media_post = mean(theta)) %>% pull(media_post) +media_exacta <- 3/(3 + 2) +tibble(metodo = c("sim Metrópolis", "sim Independiente", "exacto"), + media_post = c(media_1, media_2, media_exacta)) +``` + +``` +## # A tibble: 3 × 2 +## metodo media_post +## +## 1 sim Metrópolis 0.605 +## 2 sim Independiente 0.602 +## 3 exacto 0.6 +``` + + + +
+

Supongamos que queremos simular de una distribución \(p(\theta)\), pero sólo conocemos \(p(\theta)\) módulo una constante. Bajo +ciertas condiciones de regularidad:

+

El algoritmo Metrópolis para la distribución \(p(\theta)\) define una cadena de +Markov cuya distribución a largo plazo es \(p(\theta)\). Esto implica que si \(\theta^{(1)},\theta^{(2)}, \ldots, +\theta^{(M)}\) es una simulación de esta cadena, y \(M\) es suficientemente grande

+
    +
  1. La distribución de las \(\theta^{(i)}\) es aproximadamente \(p(\theta)\),
  2. +
  3. Tenemos que \[ \frac1M \sum_{m = 1}^M +h(\theta^{(m)}) \to \int h(\theta)p(\theta)\, d\theta\] cuando +\(M\to \infty\)
  4. +
+
+ +**Observaciones**: + +1. Aunque hay distintas *condiciones de regularidad* que pueden funcionar, +generalmente el supuesto es que la cadena de Markov construída es +[ergódica](https://en.wikipedia.org/wiki/Ergodic_theory), y hay varias +condiciones que garantizan esta propiedad. Una condición simple, por ejemplo, es +que el soporte de la distribución $p(\theta)$ es un conjunto conexo del espacio +de parámetros. + +2. Más crucialmente, este resultado no dice qué tan grande debe ser $M$ para que +la aproximación sea buena. Esto depende de cómo es $p(\theta)$, y de la +distribución que se utiliza para obtener los saltos propuestos. Dependiendo de +estos dos factores, la convergencia puede ser rápida (exponencial) o tan lenta +que es infactible usarla. Más adelante veremos diagnósticos para descartar los +peores casos de falta de convergencia. + +## Ajustando el tamaño de salto {-} + +En el algoritmo Metrópolis, generalmente es importante escoger la +dispersión de la distribución que genera propuestas con cuidado. + +- Si la dispersión de la propuesta es demasiado grande, tenderemos a rechazar mucho, +y la convergencia será lenta. +- Si la dispersión de la propuesta es demasiado chica, tardaremos mucho tiempo +en explorar las distintas partes de la distribución objetivo. + +### Ejemplo {-} + +Supongamos que queremos simular usando metróplis de una distribución +$\textsf{Gamma}(20, 100)$. Abajo vemos la forma de esta distribución: + + +``` r +sim_indep <- tibble(theta = rgamma(10000, 20, 100)) +ggplot(sim_indep, aes(x = theta)) + geom_histogram() +``` + + + + +``` r +# logaritmo de densidad no normalizada +log_f_dist <- function(x) 210 + dgamma(x, 20, 100, log = TRUE) +# iterar +iterador_metro_chico <- crear_metropolis(log_f_dist, sigma_salto = 0.001) +sims_chico_tbl <- iterador_metro_chico(c(theta = 0.02), 50000) +g_sim <- ggplot(sims_chico_tbl %>% filter(iter_num < 3000), aes(x = iter_num, y = theta)) + geom_line() + ylim(c(0, 0.5)) +dist_bplot <- ggplot(tibble(x = rgamma(10000, 20, 100)), aes(y = x, x = "a")) + geom_violin() + ylab("") + ylim(0, 0.5) +g_sim + dist_bplot + plot_layout(widths = c(5, 1)) +``` + + + +Nótese que después de 5 mil iteraciones estamos muy lejos de tener una muestra +que se aproxime a la distribución objetivo. Empezamos en un lugar bajo, y la +cadena sólo ha ido lentamente hacia las zonas de alta densidad. *Cualquier +resumen con esta cadena estaría fuertemente sesgado* al valor donde iniciamos la +iteración. Decimos que la cadena todavía no *mezcla* en las primeras 5 mil +iteraciones. + +Ahora vemos qué pasa si ponemos el tamaño de salto demasiado grande: + + +``` r +set.seed(831) +iterador_metro_grande <- crear_metropolis(log_f_dist, sigma_salto = 20) +sims_grande_tbl <- iterador_metro_grande(c(theta = 0.02), 50000) +g_sim <- ggplot(sims_grande_tbl %>% filter(iter_num < 3000), aes(x = iter_num, y = theta)) + geom_line() + ylim(c(0, 0.5)) +g_sim + dist_bplot + plot_layout(widths = c(5, 1)) +``` + + + +En este caso, la cadena se *atora* muchas veces, pues las propuestas tienen +probabilidad muy baja, y tendemos a tener una tasa de rechazos muy alta. Esto +quiere decir que la información que tenemos acerca de la posterior es +relativamente poca, pues muchos datos son repeticiones del mismo valor. +*Cualquier resumen con esta cadena podría estar muy lejos del verdadero valor,* +pues su varianza es alta - otra corrida se "atoraría" en otros valores +distintos. + +Nótese que cualquiera de estas cadenas, si la corremos suficientemente tiempo, +nos daría resultados buenos. Sin embargo, el número de simulaciones puede ser +infactible. + +Un valor intermedio nos dará mucho mejores resultados: + + +``` r +set.seed(831) +iterador_metro_apropiada <- crear_metropolis(log_f_dist, sigma_salto = 0.1) +sims_tbl <-iterador_metro_apropiada(c(theta = 0.02), 50000) +g_sim <- ggplot(sims_tbl %>% filter(iter_num < 3000), + aes(x = iter_num, y = theta)) + geom_line() + ylim(c(0, 0.5)) +g_sim + dist_bplot + plot_layout(widths = c(5, 1)) +``` + + +Donde vemos que esta cadena parece mezclar bien (está explorando la totalidad +de la distribución objetivo), y también parece estar en un estado estable. + +Comparemos cómo saldría por ejemplo la media posterior aproximada según +los tres métodos: + + +``` r +estimaciones_media <- map_dfr( + list(sims_chico_tbl, sims_grande_tbl, sims_tbl), + ~ filter(.x, iter_num < 3000) %>% + summarise(media = mean(theta))) %>% + mutate(tipo = c("salto chico", "salto grande", "salto apropiado")) +estimaciones_media %>% bind_rows(tibble(tipo = "exacta", media = 20/100)) %>% + select(tipo, media) +``` + +``` +## # A tibble: 4 × 2 +## tipo media +## +## 1 salto chico 0.128 +## 2 salto grande 0.190 +## 3 salto apropiado 0.203 +## 4 exacta 0.2 +``` + +Veamos otra corrida: + + +``` r +set.seed(6222131) +sims_chica_tbl <- iterador_metro_chico(c(theta = 0.02), 5000) +sims_grande_tbl <- iterador_metro_grande(c(theta = 0.02), 5000) +estimaciones_media <- map_dfr( + list(sims_chica_tbl, sims_grande_tbl, sims_tbl), + ~ filter(.x, iter_num < 3000) %>% + summarise(media = mean(theta))) %>% + mutate(tipo = c("salto chico", "salto grande", "salto apropiado")) +estimaciones_media %>% bind_rows(tibble(tipo = "exacta", media = 20/100)) %>% + select(tipo, media) +``` + +``` +## # A tibble: 4 × 2 +## tipo media +## +## 1 salto chico 0.124 +## 2 salto grande 0.229 +## 3 salto apropiado 0.203 +## 4 exacta 0.2 +``` + +
+

Repite este proceso varias veces. Verifica que:

+
    +
  • Si el tamaño de paso es muy chico, las estimaciones de la media +tienen sesgo alto.
  • +
  • Si el tamaño de paso es muy grande, las estimaciones tienen varianza +alta.
  • +
  • Si el tamaño de paso es adecuado, obtenemos buena precisión en la +estimación de la media posterior.
  • +
  • Explica estos tres casos en términos de la convergencia de las +realizaciones de la cadena de Markov. Explica cómo afecta a cada caso el +valor inicial de las simulaciones de Metrópolis.
  • +
  • Repite para otra estadística, como la desviación estándar o el +rangon intercuartil.
  • +
+
+ + + +## Metrópolis con varios parámetros {-} + +Ahora aplicaremos el algoritmo Metrópolis cuando tenemos varios parámetros. La idea +es la misma, pero nuestra distribución de salto debe ser multivariada. Una selección +usual es usando saltos normales independientes para cada parámetro, es decir, la + normal multivariada con matriz de varianza y covarianza diagonal. + +### Ejemplo: el modelo normal {-} + +Veremos cómo simular con Metrópolis para el problema de los cantantes. +Sabemos como calcular la posterior: + + +``` r +crear_log_posterior_norm <- function(x = datos, m_0, n_0, a, b){ + # calcula log_posterior + log_posterior <- function(mu, sigma){ + log_verosim <- sum(dnorm(x, mu, sigma, log = TRUE)) + tau <- 1 / sigma^2 + log_inicial <- + dgamma(tau, a, b, log = TRUE) + + dnorm(mu, mu_0, sigma/sqrt(n_0), log = TRUE) + log_p <- log_verosim + log_inicial + log_p + } + log_posterior +} +``` + + + +``` r +# parametros de inicial y datos +a <- 3 +b <- 140 +mu_0 <- 175 +n_0 <- 5 +set.seed(3413) +cantantes <- lattice::singer %>% + mutate(estatura_cm = round(2.54 * height)) %>% + filter(str_detect(voice.part, "Tenor")) %>% + sample_n(20) +``` + +Vemos cómo se ven las primeras iteraciones de nuestra cadena de Markov: + + +``` r +log_p <- crear_log_posterior_norm(cantantes$estatura_cm, mu_0, n_0, a, b) +log_post <- function(pars) { log_p(pars[1], pars[2]) } +set.seed(823) +metro_normal <- crear_metropolis(log_post, sigma_salto = 0.5) +sim_tbl <- metro_normal(c(mu = 172, sigma = 3), 50000) +ggplot(sim_tbl %>% filter(iter_num < 100), + aes(x = mu, y = sigma)) + + geom_path() + + geom_point() +``` + + + +Y ahora vemos todas las simulaciones: + + +``` r +g_normal <- ggplot(sim_tbl, aes(x = mu, y = sigma)) + + geom_point(alpha = 0.05)+ coord_equal() + ylim(c(0, 14)) +g_normal +``` + + + +Y las medias posteriores son: + + +``` r +sim_tbl %>% summarise(across(is_double, mean)) +``` + +``` +## # A tibble: 1 × 2 +## mu sigma +## +## 1 176. 6.80 +``` + +### Ejemplo: observaciones normales, no conjugado {-} + +Arriba repetimos el análisis conjugado usando Metrópolis. Aunque +ya no es necesario usar el modelo conjugado, y podemos poner +iniciales que sean más intuitivas y acorde con nuestro conocimiento +existente. + +Por ejemplo, podemos poner $p(\mu, \sigma) = p(\mu)p(\sigma)$, donde la densidad +de $\mu \sim \mathsf{N}(175, 2)$ y $\sigma \sim \mathsf{U}[2, 20].$ Igual que +antes, la verosimilitud $p(x|\mu, \sigma)$ es normal con media $\mu$ y +desviación estándar $\sigma.$ + +Escribimos la posterior: + + +``` r +crear_log_posterior <- function(x, m_0, sigma_0, inf, sup){ + # calcula log_posterior + log_posterior <- function(mu, sigma){ + log_verosim <- sum(dnorm(x, mu, sigma, log = TRUE)) + log_inicial <- + dunif(sigma, inf, sup, log = TRUE) + + dnorm(mu, mu_0, sigma_0, log = TRUE) + log_p <- log_verosim + log_inicial + log_p + } + log_posterior +} +``` + + +``` r +log_p <- crear_log_posterior(cantantes$estatura_cm, 175, 3, 2, 20) +log_post <- function(pars) { log_p(pars[1], pars[2]) } +``` + + + +``` r +set.seed(8231) +metro_normal <- crear_metropolis(log_post, sigma_salto = 0.5) +sim_tbl <- metro_normal(c(mu = 172, sigma = 5), 50000) +g_normal_2 <- ggplot(sim_tbl, aes(x = mu, y = sigma)) + + geom_point(alpha = 0.05) + coord_equal() + ylim(c(0, 14)) +g_normal + g_normal_2 +``` + + +Los resultados son similares, pero en +nuestras estimaciones bajo el segundo modelo, la $\sigma$ está +concentrada en valores un poco más bajos que el modelo normal-gamma inversa. +Las medias posteriores son: + + +``` r +sim_tbl %>% summarise(across(is.numeric, mean)) +``` + +``` +## # A tibble: 1 × 3 +## iter_num mu sigma +## +## 1 25000. 176. 6.54 +``` + +Nótese que la inicial para el modelo normal-gamma inversa pone muy poca +probabilidad para valores bajos de $\sigma$, mientras que el segundo +modelo hay un 10% de probabilidad de que la $\sigma$ sea menor que 4. + + +``` r +tau <- rgamma(5000, 3, 150) +sigma <- 1/sqrt(tau) +quantile(sigma, c(0.01,0.1, 0.9, 0.99)) +``` + +``` +## 1% 10% 90% 99% +## 4.219278 5.276228 11.579358 19.038529 +``` + +``` r +quantile(runif(5000, 2, 25), c(0.01,0.1, 0.9, 0.99)) +``` + +``` +## 1% 10% 90% 99% +## 2.261297 4.254128 22.691760 24.719630 +``` + + + +### Ejemplo: exámenes {-} + +Recordamos un ejemplo que vimos en la sección de máxima verosimilitud. +Supongamos que en una población de estudiantes tenemos dos tipos: unos llenaron +un examen de opción múltiple al azar (1 de 5), y otros contestaron las +preguntas intentando sacar una buena calificación. Suponemos que una vez que +conocemos el tipo de estudiante, todas las preguntas tienen la misma +probabilidad de ser contestadas correctamente, de manera independiente. El +modelo teórico está representado por la siguiente simulación: + + +``` r +sim_formas <- function(p_azar, p_corr){ + tipo <- rbinom(1, 1, 1 - p_azar) + if(tipo==0){ + # al azar + x <- rbinom(1, 10, 1/5) + } else { + # no al azar + x <- rbinom(1, 10, p_corr) + } + x +} +``` + +Y una muestra se ve como sigue: + + +``` r +set.seed(12) +muestra <- map_dbl(1:200, ~ sim_formas(0.35, 0.5)) +qplot(muestra) +``` + + + +Supongamos que no conocemos la probabildad de contestar correctamente ni la +proporción de estudiantes que contestó al azar. ¿Como estimamos estas dos cantidades? + +La verosimilitud la escribimos en el ejercicio anterior en la sección de máxima verosimilitud, está dada, para las repuestas de un estudiante, por: + +$$p(X = k|\theta_{azar}, \theta_{corr}) \propto \theta_{azar}(1/5)^k(4/5)^{10-k} + +(1-\theta_{azar})\theta_{corr}^k(1-\theta_{corr})^{10-k}$$ + +Suponiendo que todas las preguntas tienen la misma dificultad, y que +los estudiantes que estudiaron son homogéneos (podemos discutir qué haríamos +para introducir heterogeneidad que típicamente observaríamos). + +Creemos que la mayoría de los estudiantes no contesta al azar, así que pondremos +como inicial + +$$\theta_{azar} \sim \mathsf{Beta}(1, 5)$$ + + +``` r +qbeta(c(0.1, 0.9), 1, 5) %>% round(2) +``` + +``` +## [1] 0.02 0.37 +``` +Ahora tenemos que pensar en la probabilidad $\theta_{corr}$ para los estudiantes +que sí estudiaron. Imaginemos que lo probamos con un estudiante que +sabemos que sí estudió, y obtuvo un porcentaje de correctos de 7/10, Podríamos +poner entonces (vimos 10 intentos, con 3 fracasos y 7 éxitos): + +$$\theta_{corr} \sim \mathsf{Beta}(7, 3)$$ +Finalmente, necesitamos la conjunta inicial. Pondremos +$$p(\theta_{azar},\theta_{corr}) = p(\theta_{azar})p(\theta_{corr})$$ +con lo que expresamos que inicialmente no creemos que estos dos parámetros estén +relacionados. Si pensáramos, por ejemplo, que cuando hacemos exámenes difíciles +menos estudiantes estudian, entonces deberíamos intentar otra conjunta. + +Escribimos el producto de la verosimilitud con la inicial: + + +``` r +crear_log_posterior <- function(x){ + + log_posterior <- function(theta_azar, theta_corr){ + log_verosim <- sum(log(theta_azar * dbinom(x, 10, 1/5) + + (1 - theta_azar) * dbinom(x, 10, theta_corr))) + log_inicial <- dbeta(theta_azar, 1, 5, log = TRUE) + + dbeta(theta_corr, 7, 3, log = TRUE) + log_post <- log_verosim + log_inicial + log_post + } + log_posterior + +} +``` + +Creamos la función de verosimilitud con los datos + + +``` r +log_p <- crear_log_posterior(muestra) +log_post <- function(pars) { log_p(pars[1], pars[2]) } +set.seed(8231) +metro_examenes <- crear_metropolis(log_post, sigma_salto = 0.02) +sim_tbl <- metro_examenes(c(theta_azar = 0.5, theta_corr = 0.5), 20000) +g_1 <- ggplot(sim_tbl, aes(x = theta_azar, y = theta_corr)) + + geom_point(alpha = 0.05) + coord_equal() +g_1 +``` + + +Nótese que hay cierta correlación entre las dos proporciones, y esto produce +intervalos posteriores relativamente amplios. Esto es de esperarse, pues +los datos son consistentes con una proporción relativamente chica de +estudiantes que contestan al azar, y tasas de correctos más altas entre los +que sí estudian, y una proporción más grande de respuestas al azar con +tasas de correctos más altas. + + +``` r +f <- c(0.05, 0.5, 0.95) +sim_tbl %>% + pivot_longer(-iter_num, names_to = "parametro", values_to = "valor") %>% + group_by(parametro) %>% + summarise(cuantil = quantile(valor, f), f = f) %>% + mutate(cuantil = round(cuantil, 2)) %>% + pivot_wider(names_from = f, values_from = cuantil) +``` + +``` +## # A tibble: 2 × 4 +## # Groups: parametro [2] +## parametro `0.05` `0.5` `0.95` +## +## 1 theta_azar 0.3 0.38 0.45 +## 2 theta_corr 0.5 0.52 0.56 +``` + + +## Muestreador de Gibbs {-} + +El algoritmo de Metrópolis es muy general y se puede aplicar a una gran variedad +de problemas. Sin embargo, afinar los parámetros de la distribución propuesta +para que el algoritmo funcione correctamente puede ser complicado. El +muestredor de Gibbs no necesita de una distribución propuesta y por lo tanto +no requiere afinar estos parámetros. + +**Para implementar un muestreador de Gibbs se necesita ser capaz de generar +muestras de la distribución posterior condicional a cada uno de los +parámetros individuales.** Esto es, el muestreador de Gibbs permite generar +muestras de la posterior: +$$p(\theta_1,...,\theta_p|x)$$ +siempre y cuando podamos generar valores de todas las distribuciones +condicionales: +$$\theta_k \sim p(\theta_k|\theta_1,...,\theta_{k-1},\theta_{k+1},...,\theta_p,x).$$ + +El proceso del muestreador de Gibbs es una caminata aleatoria a lo largo del +espacio de parámetros. La caminata inicia en un punto arbitrario y en cada +tiempo el siguiente paso depende únicamente de la posición actual. Por tanto +el muestredor de Gibbs es un proceso cadena de Markov vía Monte Carlo. La +diferencia entre Gibbs y Metrópolis radica en como se deciden los pasos. + + +**Muestreador Gibbs** + +En cada punto de la caminata se selecciona uno de los +componentes del vector de parámetros (típicamente se cicla en orden): + +1. Supongamos que se selecciona el parámetro $k$-ésimo después de haber +modificado los $k-1$ anteriores, entonces obtenemos un nuevo valor para este +parámetro generando una simulación de la distribución condicional +$$\theta_k^{(i+1)} \sim p(\theta_k|\theta_1^{(i+1)},\ldots,\theta_{k-1}^{(i+1)},\theta_{k+1}^{(i)},\ldots,\theta_p^{(i)},x)$$ + +2. El nuevo valor $\theta_k^{(i+1)}$ junto con los valores +$\theta_1^{(i+1)},\ldots,\theta_{k-1}^{(i+1)},\theta_{k+1}^{(i)},\ldots,\theta_p^{(i)}$ +constituyen la nueva posición en la caminata aleatoria. + +3. Seleccionamos una nueva componente $\theta_{k+1}^{(i+1)}$ y repetimos el proceso. + + +El muestreador de Gibbs es útil cuando no podemos determinar de manera analítica +la distribución conjunta y no se puede simular directamente de ella, pero sí +podemos determinar todas las distribuciones condicionales y simular de ellas. + +### Ejemplo: dos proporciones {-} + +Supongamos que queremos evaluar el balanceo de *dos dados* de 20 lados que +produce una fábrica. En particular, evaluar la probabilidad de tirar un 20, y +quizá escoger el dado que nos de mayor probabilidad de tirar un 20. + +Tiramos cada dado $n$ veces, y denotamos por $X_1$ y $X_2$ el número +de 20's que tiramos en cada ocasión. El modelo de datos está dado por +$$p(x_1, x_2|\theta_1, \theta_2)\propto \theta_1^{x_1}(1-\theta_1)^{n - x_1}\theta_2^{x_2}(1-\theta_2)^{n - x_2},$$ +que es el producto de dos densidades binomiales, pues suponemos que +las tiradas son independientes cuando conocemos los parámetros +$\theta_1$ y $\theta_2$. + +Ahora ponemos una inicial +$$p(\theta_i)\sim \mathsf{Beta}(100, 1900)$$ + +y aquí están las razones de nuestra elección: + +``` r +media <- 1/20 +k <- 2000 +a <- media * k +b <- (1 - media) * k +c(a,b) +``` + +``` +## [1] 100 1900 +``` + +``` r +qbeta(c(0.05, 0.95), a, b) %>% round(3) +``` + +``` +## [1] 0.042 0.058 +``` +y suponemos que + +$$p(\theta_1,\theta_2) = p (\theta_1)p(\theta_2)$$ + +es decir, apriori saber el desempeño de un dado no nos da información adicional del otro (esto podría no ser cierto, por ejemplo, si el defecto es +provocado por la impresión del número 20). + +Por lo tanto, la posterior es + +$$p(\theta_1,\theta_2|x_1, x_2)\propto \theta_1^{x_1+100-1}(1-\theta_1)^{n - x_1 + 1900-1}\theta_2^{x_2+100 -1}(1-\theta_2)^{n - x_2 + 1900-1}$$ + +Ahora consideramoso qué pasa cuando conocemos $\theta_2$ y los datos. Pensamos en todo lo que no sea $\theta_1$ como constante de modo que nos +queda: + +$$p(\theta_1 | \theta_2, x) \propto \theta_1^{x_1+100 -1}(1-\theta_1)^{n - x_1 + 1900 -1}$$ +que es $\mathsf{Beta}(x_1 + 100, n - x_1 + 1900)$, y por la misma razón, + +$$p(\theta_2 | \theta_1, x) \propto \theta_2^{x_2+100-1}(1-\theta_2)^{n - x_2 + 1900-1}$$ + +que también es es $\mathsf{Beta}(x_1 + 100, n - x_1 + 1900)$ + +De hecho, estas condicionales son fáciles de deducir de otra manera: en +realidad estamos haciendo dos experimentos separados (pues suponemos +que las iniciales son independientes y las pruebas también), así que +podriamos usar el análisis Beta-Binomial para cada uno de ellos. En realidad no es necesario usar MCMC para este ejemplo. + +Usaremos esta función para hacer nuestras iteraciones de Gibbs: + + + +``` r +iterar_gibbs <- function(pasos, n, x_1, x_2){ + iteraciones <- matrix(0, nrow = pasos + 1, ncol = 2) # vector guardará las simulaciones + iteraciones[1, 1] <- 0.5 # valor inicial media + colnames(iteraciones) <- c("theta_1", "theta_2") + # Generamos la caminata aleatoria + for (j in seq(2, pasos, 2)) { + # theta_1 + a <- x_2 + 100 - 1 + b <- n - x_2 + 1900 - 1 + iteraciones[j, "theta_2"] <- rbeta(1, a, b) # Actualizar theta_1 + iteraciones[j, "theta_1"] <- iteraciones[j-1, "theta_1"] + # theta_2 + a <- x_1 + 100 - 1 + b <- n - x_1 + 1900 - 1 + iteraciones[j + 1, "theta_1"] <- rbeta(1, a, b) # Actualizar theta_1 + iteraciones[j + 1, "theta_2"] <- iteraciones[j, "theta_2"] + } + iteraciones +} +``` + + +Y supongamos que estamos comparando los dados de dos compañías: Chessex y GameScience. Tiramos cada dado 10 mil veces, y obtenemos: + + +``` r +# Datos de https://www.awesomedice.com/blogs/news/d20-dice-randomness-test-chessex-vs-gamescience +n <- 10000 +x_1 <- 408 # Chessex, alrededor de 0.85 dólares por dado +x_2 <- 474 # GameScience, alrededor 1.60 dólares por dado +``` + +E iteramos: + + +``` r +iteraciones <- iterar_gibbs(20000, n, x_1, x_2) %>% + as_tibble() %>% + mutate(iter_num = row_number()) +head(iteraciones) +``` + +``` +## # A tibble: 6 × 3 +## theta_1 theta_2 iter_num +## +## 1 0.5 0 1 +## 2 0.5 0.0479 2 +## 3 0.0442 0.0479 3 +## 4 0.0442 0.0452 4 +## 5 0.0411 0.0452 5 +## 6 0.0411 0.0505 6 +``` + + +``` r +ggplot(filter(iteraciones, iter_num > 1000, iter_num< 1050), + aes(x = theta_1, y = theta_2)) + + geom_path(alpha = 0.3) + geom_point() +``` + + + + +``` r +g_1 <- ggplot(iteraciones, + aes(x = theta_1, y = theta_2)) + + geom_path(alpha = 0.3) + geom_point() +g_2 <- ggplot(iteraciones %>% filter(iter_num > 10), + aes(x = theta_1, y = theta_2)) + + geom_path(alpha = 0.3) + geom_point() + + geom_abline(colour = "red") + + geom_point(data= tibble(theta_1=1/20, theta_2=1/20), colour = "red", size = 5) +g_1 + g_2 +``` + + + +Notamos el dado de Cheesex no es consistente con 1/20 de tiros de 20s, +pero el dado de GameScience sí lo es. De este gráfica vemos +que Cheesex está sesgado hacia abajo, así que deberíamos escoger +el dado de GameScience + +Podemos ver directamente cómo se distribuye la diferencia $\theta_1 - \theta_2$. Cualquier estadística es fácil de evaluar, pues simplemente +la calculamos para cada simulación y después resumimos: + + +``` r +iteraciones <- iteraciones %>% + mutate(dif = theta_1 - theta_2) +ggplot(iteraciones %>% filter(iter_num > 10), aes(x = dif)) + + geom_histogram(bins = 100) + + geom_vline(xintercept = 0, colour = "red") +``` + + + +Y vemos que es altamente probable que el dado de Cheesex produce +más 20's que el dado de GameScience. + + +``` r +iteraciones %>% mutate(theta_1_mayor = dif > 0) %>% + summarise(prob_theta_1_mayor = mean(theta_1_mayor)) +``` + +``` +## # A tibble: 1 × 1 +## prob_theta_1_mayor +## +## 1 0.0215 +``` + + +Finalmente, verificamos nuestro modelo y cuánto aprendimos. Podemos +hacerlo simulando de la inicial y comparando con la posterior: + + +``` r +inicial_tbl <- tibble(theta_1 = rbeta(20000, 100, 1900), + theta_2 = rbeta(20000, 100, 1900), + dist = "inicial") +posterior_tbl <- iteraciones %>% filter(iter_num > 10) %>% + mutate(dist = "posterior") +sims_tbl <- bind_rows(inicial_tbl, posterior_tbl) +ggplot(sims_tbl, aes(x = theta_1, y = theta_2, colour = dist)) + + geom_point(alpha = 0.2) +``` + + +donde vemos que el resultado que obtuvimos es razonablemente consistente +con nuestra información inicial, y las 10 mil tiradas de dado +fueron altamente informativas. + +\BeginKnitrBlock{ejercicio}
+- ¿Qué crees que pasaría si sólo hubieramos tirado 40 veces cada +dado? ¿Qué tanto habríamos aprendido? Puedes usar datos +simulados y repetir este ejercicio. + +- Puedes examinar los resultados para cada cara con los datos originales. +Un modelo apropiado es el Dirichlet-Multinomial. +
\EndKnitrBlock{ejercicio} + + + + + +### Ejemplo: Modelo normal no conjugado {-} + +Retomemos el caso de observaciones normales, supongamos que tenemos una muestra +$X_1,...,X_n$ de observaciones independientes e identicamente distribuidas, +con $X_i \sim \mathsf{N}(\mu, \sigma^2)$. + +Usaremos iniciales distintas al modelo anterior: + +$$p(\mu, \sigma^2) = p(\sigma^2)p(\mu)$$ +con $\mu$ $\mathsf{N}(\mu_0, \sigma_0)$ y $\tau = 1/\sigma^2$ con distribución +$\mathsf{Gamma}(a,b)$. Esto no nos da el modelo conjugado que vimos antes (nota +la diferencia de la especificación de la inicial conjunta). + +Comenzamos por escribir + +$$p(\mu, \sigma^2|x) \propto \frac{1}{{\sigma^{n/2}}} \exp(-\sum\frac{(x_i-\mu)²}{2\sigma^2}) \exp(- \frac{(\mu - \mu_0)^2}{2\sigma_0^2}) \frac{1}{(\sigma^2)^{a + 1}}\exp (-\beta/\sigma^2 )$$ + +Comenzamos analizando $p(\mu|\sigma^2, x)$. Por la ecuación de arriba, e ignorando +los términos que **no** dependen de $\mu$: +$$p(\mu|\sigma^2, x) \propto \exp [ - \sum_i (\frac{(\mu - x_i)^2}{2\sigma^2} - \frac{(\mu - \mu_0)^2}{2n\sigma_0^2})]$$ +que es una distribución normal (completa cuadrados): + +$$\mu|\sigma^2,x \sim \mathsf{N}\bigg(\frac{\sigma^2}{\sigma^2 + n\sigma_0^2}\mu_0 + \frac{n\sigma_0^2}{\sigma^2 + n \sigma_0^2}\bar{x}, \frac{\sigma \sigma_0}{\sqrt{\sigma^2 + n\sigma_0^2}}\bigg)$$ + +Ahora consideramos $p(\sigma^2|mu,x)$. Ignoramos en $p(\mu,\sigma^2|x)$ los términos que *no** dependen de $\sigma^2$: + +$$p(\sigma^2|\mu, x) \propto \frac{1}{\sigma^{n/2}} \exp(-\sum\frac{(x_i-\mu)²}{2\sigma^2}) \frac{1}{(\sigma^2)^{a + 1}}\exp (-\beta/\sigma^2)$$ +que simplificando da + +$$ = \frac{1}{\sigma^{n/2 + a + 1}}\exp( -\frac{\beta +\frac{1}{2}\sum(x_i - \mu)^2}{\sigma^2} )$$ +de modo que + +$$\sigma^2|\mu, x \sim \mathsf{GI}(a +n/2, b + \frac{1}{2}\sum(x_i -\mu)^2)$$ + +### Ejemplo {-} + +Usaremos este muestreador para el problema de la estaturas de +los tenores. Comenzamos definiendo las distribuciones iniciales: + +* $\mu \sim \mathsf{N}(175, 3)$ + +* $\tau = 1/\sigma^2 \sim \mathsf{GI}(3, 150)$, esto es $a = 3$ y $b = 150$. + +Escribimos el muestreador de Gibbs. + + +``` r +n <- 20 +x <- cantantes$estatura_cm +m <- 175; sigma_0 <- 3; alpha <- 3; beta <- 150 # parámetros de iniciales +pasos <- 20000 +iteraciones <- matrix(0, nrow = pasos + 1, ncol = 2) # vector guardará las simulaciones +iteraciones[1, 1] <- 0 # valor inicial media +colnames(iteraciones) <- c("mu", "sigma") +# Generamos la caminata aleatoria +for (j in seq(2, pasos, 2)) { + # sigma^2 + mu <- iteraciones[j - 1, "mu"] + a <- n / 2 + alpha + b <- sum((x - mu) ^ 2) / 2 + beta + iteraciones[j, "sigma"] <- sqrt(1/rgamma(1, a, b)) # Actualizar sigma + iteraciones[j, "mu"] <- iteraciones[j-1, "mu"] + # mu + sigma <- iteraciones[j, "sigma"] + media <- (n * sigma_0^2 * mean(x) + sigma^2 * m) / (n * sigma_0^2 + sigma^2) + varianza <- sigma^2 * sigma_0^2 / (n * sigma_0^2 + sigma^2) + iteraciones[j+1, "mu"] <- rnorm(1, media, sd = sqrt(varianza)) # actualizar mu + iteraciones[j+1, "sigma"] <- iteraciones[j, "sigma"] +} +caminata <- data.frame(pasos = 1:pasos, mu = iteraciones[1:pasos, "mu"], + sigma = iteraciones[1:pasos, "sigma"]) +caminata_g <- caminata %>% + gather(parametro, val, mu, sigma) %>% + arrange(pasos) +``` + + +Veamos primero algunos pasos: + + +``` r +ggplot(filter(caminata, pasos > 1000, pasos< 1010), + aes(x = mu, y = sigma)) + + geom_path(alpha = 0.3) + geom_point() +``` + + + +Donde vemos cómo en cada iteración se actualiza un solo parámetro. +Una alternativa es conservar únicamente ciclos completos de la +caminata u esto es lo que hacen varios programas que implementan Gibbs, sin +embargo ambas cadenas (cadenas completas y conservando únicamente ciclos +completos) convergen a la misma distribución posterior. + +Si tomamos iteraciones completas: + + +``` r +ggplot(filter(caminata, pasos > 1000, pasos< 1020, pasos %% 2 == 0), + aes(x = mu, y = sigma)) + + geom_path(alpha = 0.3) + geom_point() +``` + + +Y ahora vemos cómo se ven las simulaciones: + + +``` r +ggplot(filter(caminata, pasos > 1000, pasos< 10000, pasos %% 2 == 0), + aes(x = mu, y = sigma)) + geom_point(alpha = 0.1) +``` + + + +Y el diagnóstico de cada cadena: + + +``` r +ggplot(filter(caminata_g, pasos > 15000), aes(x = pasos, y = val)) + + geom_path(alpha = 0.3) + + facet_wrap(~parametro, ncol = 1, scales = "free") + + scale_y_continuous("") +``` + + +Estas cadenas parecen estar mezclando bien. Podemos resumirlas: + + +``` r +ggplot(filter(caminata_g, pasos > 5000), aes(x = val)) + + geom_histogram(fill = "gray") + + facet_wrap(~parametro, ncol = 1, scales = "free") +``` + + + +``` r +caminata_g %>% + filter(pasos > 1000) %>% # eliminamos la etapa de calentamiento + group_by(parametro) %>% + summarise( + mean(val), + sd(val), + median(val) + ) %>% + mutate(across(is_double, round, 2)) +``` + +``` +## # A tibble: 2 × 4 +## parametro `mean(val)` `sd(val)` `median(val)` +## +## 1 mu 176. 1.32 176. +## 2 sigma 6.54 0.95 6.44 +``` +Y obtenemos un resultado similar a los anteriores. + + + +## Conclusiones y observaciones Metrópolis y Gibbs {-} + +* Una generalización del algoritmo de Metrópolis es Metrópolis-Hastings. + + El algoritmo de Metrópolis es como sigue: + 1. Generamos un punto inicial tal que $p(\theta)>0$. + 2. Para $i = 1,2,...$ + + Se propone un nuevo valor $\theta^*$ con una distribución + propuesta $g(\theta^*|\theta^{(i)})$ es común que $g(\theta^*|\theta^{(i)})$ sea una normal centrada en + $\theta^{(i)}$. + 3. Calculamos la probabilidad de aceptación + + $$\alpha=\min\bigg\{\frac{p(\theta^*)}{p(\theta^{(i)})},1\bigg\},$$ + y aceptamos $\theta^*$ con probabilidad $p_{mover}$. Es así que el + algorito requiere que podamos calcular el cociente en $p_{mover}$ para todo + $\theta^{(i)}$ y $\theta^*$, así como simular de la distribución propuesta + $g(\theta^*|\theta^{(i)})$, adicionalmente debemos poder generar valores + uniformes para decidir si aceptar/rechazar. + + En el caso de **Metrópolis** un requerimiento adicional es que la distribución + propuesta $g(\theta_{a}|\theta_b)$ debe ser simétrica, es decir + $g(\theta_{a}|\theta_b) = g(\theta_{b}|\theta_a)$ para todo $\theta_{a}$, + $\theta_{b}$. + + **Metrópolis-Hastings** generaliza Metrópolis, eliminando la restricción de + simetría en la distribución propuesta $g(\theta_{a}|\theta_b)$, sin embargo para + corregir por esta asimetría debemos calcular $\alpha$ como sigue: + + $$\alpha=\min\bigg\{ \frac{p(\theta^*)}{g(\theta^*|\theta^{(i)})} \cdot \frac{g(\theta^{(i)}|\theta^*)}{p(\theta^{(i)})},1\bigg\}$$ +La generalización de Metrópolis-Hastings puede resultar en algoritmos más +veloces. + +* Se puede ver Gibbs como una generalización de Metrópolis-Hastings, cuando +estamos actualizando un componente de los parámetros, la distribución propuesta +es la distribución posterior para ese parámetro, por tanto siempre es aceptado. + +* Comparado con Metrópolis, Gibbs tiene la ventaja de que no se necesita afinar +los parámetros de una distribución propuesta (o seleccionar siquiera una +distribución propuesta). Además que no hay pérdida de simulaciones debido a +rechazo. Por su parte, la desventaja debemos conocer las distribuciones +condicionales y poder simular de ellas. + +* En el caso de modelos complicados se utilizan combinaciones de Gibbs y +Metrópolis. Cuando se consideran estos dos algoritmos Gibbs es un método más +simple y es la primera opción para modelos condicionalmente conjugados. Sí solo +podemos simular de un subconjunto de las distribuciones condicionales +posteriores, entonces podemos usar Gibbs siempre que se pueda y Metrópolis +unidimensional para el resto, o de manera más general separamos en bloques, un +bloque se actualiza con Gibbs y otro con Metrópolis. + +* El algoritmo de Gibbs puede *atorarse* cuando hay correlación alta entre los +parámetros, reparametrizar puede ayudar, o se pueden usar otros algoritmos. + +* [JAGS](http://mcmc-jags.sourceforge.net) (Just Another Gibbs Sampler), WinBUGS +y OpenBUGS son programas que implementan métodos MCMC para generar simulaciones +de distribuciones posteriores. Los paquetes `rjags` y `R2jags` permiten ajustar +modelos en JAGS desde `R`. Es muy fácil utilizar estos programas pues uno +simplemente debe especificar las distribuciones iniciales, la verosimilitud y +los datos observados. Para aprender a usar JAGS se puede revisar la sección +correspondiente en las [notas de 2018](https://tereom.github.io/est-computacional-2018/jags.html), +ahora nos concentraremos en el uso de Stan. + +## HMC y Stan {-} + +> It appears to be quite a general principle that, whenever there is a +randomized way of doing something, then there is a nonrandomized way that +delivers better performance but requires more thought. -E.T. Jaynes + +`Stan` es un programa para generar muestras de una distribución posterior de los +parámetros de un modelo, el nombre del programa hace referencia a [Stanislaw Ulam (1904-1984)](https://en.wikipedia.org/wiki/Stanislaw_Ulam) que fue pionero en +los métodos de Monte Carlo. A diferencia de JAGS y BUGS, los pasos de la cadena +de Markov se generan con un método llamado *Monte Carlo Hamiltoniano* (HMC). HMC +es computacionalmente más costoso que Metrópolis o Gibbs, sin embargo, sus +propuestas suelen ser más eficientes, y por consiguiente no necesita muestras +tan grandes. En particular cuando se ajustan modelos grandes y complejos (por +ejemplo, con variables con correlación alta) HMC supera a otros. + + + + + +## Diagnósticos generales para MCMC {-} + +Cuando generamos una muestra de la distribución posterior usando MCMC, sin +importar el método (Metrópolis, Gibbs, HMC), buscamos que: + +1. Los valores simulados sean representativos de la distribución posterior. Esto implica que no deben estar influenciados por el valor inicial (arbitrario) y deben explorar todo el rango de la posterior, con suficientes retornos para evaluar cuánta masa hay en cada región. + +2. Debemos tener suficientes simulaciones de tal manera que las +estimaciones sean precisas y estables. + +3. Queremos tener un método eficiente para generar las simulaciones. + + +En la práctica intentamos cumplir lo más posible estos objetivos, pues aunque en principio los métodos MCMC garantizan que una cadena infinitamente larga logrará una representación perfecta, siempre debemos tener un criterio para cortar la cadena y evaluar la calidad de las simulaciones. + +### Representatividad {-} + +**Burn-in e iteraciones iniciales**- En primer lugar, en muchas ocasiones las condiciones iniciales de las +cadenas están en partes del espacio de parámetros que son "atípicos" en +términos de la posterior. Así que es común quitar algunas observaciones +iniciales (iteraciones de *burn-in*) para minimizar su efecto en +resúmenes posteriores. + + +Por ejemplo, para el ejemplo de los cantantes, podemos +ver que las iteraciones iniciales tienen como función principal +llegar a las regiones de probabilidad posterior alta: + + +``` r +log_p <- crear_log_posterior_norm(cantantes$estatura_cm, mu_0, n_0, a, b) +log_post <- function(pars) { log_p(pars[1], pars[2]) } +set.seed(823) +metro_normal <- crear_metropolis(log_post, sigma_salto = 0.5) +sim_tbl <- metro_normal(c(mu = 162, sigma = 1), 5000) +ggplot(sim_tbl %>% filter(iter_num < 500), aes(x = mu, y = sigma)) + geom_path(alpha = 0.5) + geom_point(aes(colour = iter_num)) +``` + + + +De modo que puede ser buena idea eliminar las +primeras iteraciones. En teoría, no es necesario hacer esto si +hacemos suficientes iteraciones, pues la cadena va a terminar +en su estado estable explorando la posterior. En la práctica, y +con pocas iteraciones, puede ayudar un poco a mejorar la precisión +numérica de las cantidades que queramos calcular. + + +``` r +sim_g <- sim_tbl %>% pivot_longer(-iter_num, + names_to = "parametro", + values_to = "valor") +todas <- ggplot(sim_g, aes(x = iter_num, y = valor)) + + geom_line(alpha = 0.5) + + facet_wrap(~ parametro, ncol = 1, scales = "free_y") + + labs(subtitle = "Todas las simulaciones") +sin_burnin <- + sim_g %>% filter(iter_num > 200) %>% + ggplot(aes(x = iter_num, y = valor)) + + geom_line(alpha = 0.5) + + facet_wrap(~ parametro, ncol = 1, scales = "free_y") + + labs(subtitle = "Quitando 200 de burn-in") +todas + sin_burnin +``` + + + + + + +**Convergencia a estado límite**. Para determinar la convergencia es conveniente +realizar **más de una cadena**: buscamos ver si realmente se ha olvidado el +estado inicial, si las distribuciones de cada cadena son consistentes unas con +otras, y revisar que algunas cadenas no hayan quedado *atoradas* en regiones +inusuales del espacio de parámetros. + +Inicializamos las cadenas con valores al azar en rangos +razonables (por ejemplo simulando de la inicial): + + +``` r +set.seed(8513) +valores_iniciales <- tibble(mu_0 = rnorm(4, 160, 20), + sigma_0 = runif(4, 0, 20), + cadena = 1:4) +sims_tbl <- valores_iniciales %>% + mutate(sims = map2(mu_0, sigma_0, + ~ metro_normal(c(mu = .x, sigma = .y), 300) )) %>% + unnest(sims) + +ggplot(sims_tbl, aes(x = iter_num, y = sigma, colour = factor(cadena))) + + geom_line() +``` + + + +Y este es un ejemplo donde claramente las cadenas **no** han alcanzado +un estado estable: tienen muy distintas medias y varianzas. Por ejemplo: + + + +``` r +set.seed(83243) +sims_tbl <- valores_iniciales %>% + mutate(sims = map2(mu_0, sigma_0, + ~ metro_normal(c(mu = .x, sigma = .y), 20000) )) %>% + unnest(sims) + +ggplot(sims_tbl, aes(x = iter_num, y = sigma, colour = factor(cadena))) + + geom_line() +``` + + + +Y este resultado se ve mejor. La parte *transición* hacia las zonas +de alta probabilidad pasa antes de unas 1000 iteraciones. Podemos +hacer más simulaciones, o eliminar como *burn-in* las primiras iteraciones: + + +``` r +media_g <- ggplot(sims_tbl %>% filter(iter_num > 2000), + aes(x = iter_num, y = mu, colour = factor(cadena))) + + geom_line() +sigma_g <- ggplot(sims_tbl %>% filter(iter_num > 2000), + aes(x = iter_num, y = sigma, colour = factor(cadena))) + + geom_line() +media_g / sigma_g +``` + + + +Las gráficas anteriores nos ayudan a determinar si elegimos un periodo de +calentamiento adecuado o si alguna cadena está alejada del resto. + +Una vez que las cadenas están en estado estable, podemos usar +**todas** las simulaciones juntas para resumir: + + +``` r +head(sims_tbl) +``` + +``` +## # A tibble: 6 × 6 +## mu_0 sigma_0 cadena iter_num mu sigma +## +## 1 155. 3.16 1 1 155. 3.16 +## 2 155. 3.16 1 2 155. 3.16 +## 3 155. 3.16 1 3 155. 3.16 +## 4 155. 3.16 1 4 155. 3.16 +## 5 155. 3.16 1 5 155. 3.50 +## 6 155. 3.16 1 6 155. 3.81 +``` + +``` r +# medias posteriores +sims_tbl %>% + summarise(mu = mean(mu), sigma = mean(sigma)) +``` + +``` +## # A tibble: 1 × 2 +## mu sigma +## +## 1 176. 6.77 +``` + + + + + +Además de realizar gráficas podemos usar la medida de convergencia $\hat{R}$. La medida $\hat{R}$ se conoce como el **factor de reducción potencial de +escala** o *diagnóstico de convergencia de Gelman-Rubin*, esta es una estimación +de la posible reducción en la longitud de un intervalo de confianza si las +simulaciones continuaran infinitamente. $\hat{R}$ es aproximadamente la raíz +cuadrada de la varianza de todas las +cadenas juntas dividida entre la varianza dentro de cada cadena. Si $\hat{R}$ es +mucho mayor a 1 esto indica que las cadenas no se han mezclado bien. Una regla +usual es iterar hasta alcanzar un valor $\hat{R} \leq 1.1$ para todos los +parámetros. + +$$\hat{R} \approx \sqrt{\frac{\hat{V}}{W}}$$ + +donde $B$ es la varianza entre las cadenas, $W$ es la varianza dentro de las cadenas + +$$B = \frac{N}{M-1}\sum_m (\hat{\theta}_m - \hat{\theta})^2$$ +$$W = \frac{1}{M}\sum_m \hat{\sigma}_m^2$$ + +Y $\hat{V}$ es una estimación del varianza de posterior de $\theta$: + +$$\hat{V} = \frac{N-1}{N}W + \frac{M+1}{MN}B$$ +#### Ejemplo {-} + +En nuestro ejemplo anterior, tenemos + + +``` r +sims_tbl %>% + pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor") %>% + group_by(parametro, cadena) %>% + summarise(media = mean(valor), num = n(), sigma2 = var(valor)) %>% + summarise(N = first(num), + M = n_distinct(cadena), + B = N * var(media), + W = mean(sigma2), + V_hat = ((N - 1) / N) * W + (M + 1)/(M * N) * B, + R_hat = sqrt(V_hat / W)) +``` + +``` +## # A tibble: 2 × 7 +## parametro N M B W V_hat R_hat +## +## 1 mu 20000 4 1281. 4.29 4.37 1.01 +## 2 sigma 20000 4 121. 1.31 1.32 1.00 +``` +Y verificamos que los valores de $\hat{R}$ son cercanos a uno, lo +cual indica que este diagnóstico es aceptable. Si hubiéramos +trabajado con las primeras 300 iteraciones + + +``` r +sims_tbl %>% + filter(iter_num < 300) %>% + pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor") %>% + group_by(parametro, cadena) %>% + summarise(media = mean(valor), num = n(), sigma2 = var(valor)) %>% + summarise(N = first(num), + M = n_distinct(cadena), + B = N * var(media), + W = mean(sigma2), + V_hat = ((N - 1) / N) * W + (M + 1)/(M * N) * B, + R_hat = sqrt(V_hat / W)) +``` + +``` +## # A tibble: 2 × 7 +## parametro N M B W V_hat R_hat +## +## 1 mu 299 4 32334. 40.4 175. 2.08 +## 2 sigma 299 4 7394. 11.9 42.8 1.89 +``` +Y estos valores indican problemas en la convergencia de las cadenas. Es +necesario diagnosticar el problema, que en este caso resolvemos +incrementando el número de iteraciones. + + +### Precisión {-} + +Una vez que tenemos una muestra representativa de la +distribución posterior, nuestro objetivo es asegurarnos de que la muestra es lo suficientemente grande +para producir estimaciones estables y precisas de la distribución. + +Para ello usaremos el +**tamaño efectivo de muestra**, Si las simulaciones fueran independientes +$N_{eff}$ sería el número total de simulaciones; sin embargo, las simulaciones de MCMC suelen estar correlacionadas, de modo que cada iteración +de MCMC es menos informativa que si fueran independientes. + +**Ejemplo**: Si graficaramos simulaciones independientes, esperaríamos valores de +autocorrelación chicos: + + +``` r +acf(rgamma(1000,1,1)) +``` + + +Sin embargo, los valores que simulamos tienen el siguiente perfil de +autocorrelación: + + +``` r +sigma_metro_sims <- sims_tbl %>% filter(cadena==4) %>% pull(mu) +acf(sigma_metro_sims) +``` + + + +El tamaño efectivo de muestra nos dice qué tamaño de +muestra de observaciones independientes nos daría la misma información que las +simulaciones de la cadena. Una manera de manera relativamente simple de +estimarlo es: + +$$N_{eff} = \frac{N}{1+2\sum_{k=1}^\infty ACF(k)} $$ + +Usualmente nos gustaría obtener un tamaño efectivo de al menos $100$ (para +cálculo de medias y varianzas posteriores). Esta +cantidad usualmente se reporta en el software (con mejores estimaciones que +la de la fórmula de arriba), y es necesario checarlo. + +En nuestro ejemplo hacemos una aproximación como sigue: + + +``` r +calc_acf <- function(x){ + valores_acf <- acf(x, lag.max = 1000, plot = FALSE)$acf %>% as.numeric() + valores_acf[-1] +} +acf_tbl <- sims_tbl %>% + pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor") %>% + group_by(parametro, cadena) %>% + summarise(N = n_distinct(iter_num), k = 1:1000, acf = calc_acf(valor)) %>% + summarise(N = first(N), N_eff = N / (1 + 2 * sum(acf))) +acf_tbl +``` + +``` +## # A tibble: 8 × 4 +## # Groups: parametro [2] +## parametro cadena N N_eff +## +## 1 mu 1 20000 251. +## 2 mu 2 20000 700. +## 3 mu 3 20000 104. +## 4 mu 4 20000 394. +## 5 sigma 1 20000 421. +## 6 sigma 2 20000 411. +## 7 sigma 3 20000 93.9 +## 8 sigma 4 20000 724. +``` + +Nótese que algunas cadenas tienen un tamaño efectivo de muestra relativamente +bajo para el número de iteraciones que hicimos. De cualquier forma, el agregado +sobre todas las cadenas es suficientemente grande para calcular resúmenes básicos: + + +``` r +acf_tbl %>% group_by(parametro) %>% + summarise(N = sum(N), N_eff = sum(N_eff)) +``` + +``` +## # A tibble: 2 × 3 +## parametro N N_eff +## +## 1 mu 80000 1450. +## 2 sigma 80000 1650. +``` +Sin embargo, podemos hacer más simulaciones si es necesario, por ejemplo +para aproximar de manera apropiada percentiles en las colas. + + + + +### Eficiencia {-} + +Hay varias maneras para mejorar la eficiencia de un proceso MCMC: + + +* Paralelizar, no disminuimos el número de pasos en las simulaciones pero +podemos disminuir el tiempo que tarda en correr. + +* Cambiar la parametrización del modelo o transformar los datos. + +* Adelgazar la muestra cuando tenemos problemas de uso de memoria, + +consiste en guardar únicamente los $k$-ésimos pasos de la cadena y resulta +en cadenas con menos autocorrelación . + +### Recomendaciones generales {-} + +@gelman-hill recomienda los siguientes pasos cuando uno esta simulando de la +posterior: + +1. Cuando definimos un modelo por primera vez establecemos un valor bajo para +el número de iteraciones. La razón es que la mayor parte de las veces los +modelos no funcionan a la primera por lo que sería pérdida de tiempo dejarlo +correr mucho tiempo antes de descubrir el problema. + +2. Si las simulaciones no han alcanzado convergencia aumentamos las iteraciones +a $500$ ó $1000$ de tal forma que las corridas tarden segundos o unos cuantos +minutos. + +3. Si tarda más que unos cuantos minutos (para problemas del tamaño que +veremos en la clase) y aún así no alcanza convergencia +entonces _juega_ un poco con el modelo (por ejemplo intenta transformaciones lineales), para JAGS Gelman +sugiere más técnicas para acelerar la convergencia en el +capitulo $19$ del libro +*Data Analysis Using Regression and Multilevel/Hierarchical models*. En el +caso de Stan veremos ejemplos de reparametrización, y se puede leer más en +la [guía](https://mc-stan.org/docs/2_21/stan-users-guide/reparameterization-section.html). + +4. Otra técnica conveniente cuando se trabaja con bases de datos grandes +(sobre todo en la parte exploratoria) es trabajar con un +subconjunto de los datos, quizá la mitad o una quinta parte. + diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-13-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-13-1.png new file mode 100644 index 0000000000000000000000000000000000000000..3a154bace33d0f1de5dc28c680c09f1f63ed75f8 GIT binary patch literal 40661 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�xelfV3^>QKxEr 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 P6|O3%UCzC9^TGcI7x~U9 literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-16-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-16-1.png new file mode 100644 index 0000000000000000000000000000000000000000..06233324781a8db42c61333f46405417ed310765 GIT binary patch literal 51777 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 literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-19-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-19-1.png new file mode 100644 index 0000000000000000000000000000000000000000..6489ec5b414c9d89c6780514cf4e36c9750ba7ad GIT binary patch literal 10040 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 E^j!|Z!&&C+z=qYQ*#Jx|L z9HP>OF>l+fnbOncsDU*uS_Oi`wtDXdp2O!gk{8)s=p!wD+#EG5eo!e&x@t11&_Aab zoe%UJCxD(~0H60q-w|&+RA*$&czLi4H*Mg@{aWB95);byy8V24cwvXOs1nJisEBfQ zySKQaJmnFU0315!wE4GNx7xG53i2)y9T~{6zi7xDpCq~T@MU7Wnq=5^`(DS^b|l`W zi=f!N;{3*PhuO)%f%md358WZ=+k`LMFL>;@|Mf$dr_&KqdXNV2^9HWa1`E8a_;%A_ z5Z{D2x!trZHR@R;VbejyK$e-kT@=K!|03pWh=8)`ZC0M^!vEpW!jEOQk3L$uH^8^K z&QPgjq-pYol}&BLP0fj{3EIsWRjR!D*t-{TH#GUeuZY2R-fzm~DEw6!VLuZmAKPf; zt`yzLO8X7(=y>zyoYvu^?m%y&RN3D-YCt+iA^#!LqYI|$2Qg_I`=roYLWiryFLJnQ zX7n&boHq~)nx!?*etZ8i?EGCY0_efh`KVj3L-Q0qFiNKzldsC|`%WB9pfs#&X4lbf z&Z_>dNt>Uj{gl2lr`u7VQbg|`LbUDQl*BDjLN~_J0SSw$Zc~1l&eyjEFq$+IibZlhHf!2ny0uTJ z^o=B2EtIt`4?~L$Bme=jCbhUyqn27geTTc?;@-KKgn*&5)1@DiiWjwte0*2$7Ew3k zU(f6M5VYf{+OnN4sBDDjYkJ@?_wJZy{JA~V5AKA5bLhIek zm07Y2ym{U)+cyw7?f+vY?_{40^f-lq45Ej+hNCs$o!2=apu@8hd5kHv5Tz3)xiHc!D_p4BWA_k5-e5IQBStxW`K`4Fyv8RI*{!)MctN?jK`>%bWDObh94~*$L+e z-Gxp9(Xt?KR<12+jsJTFFkP-{bdZfjoA^M|l9bXqxS2cZ{5GHu={f0ps!ji6C;M*y zs9SQ-)%vs-Hg3qoCIX#4l}{%>pqbDvr=c);$6Ge6>bguRA(@iF+5QqwpR3z3N&oU4 z!9RUg@Xy2Iq?aPp*k#36+N^_7wyV|M4O4H>S){N|X}pKG4H=90jZF)w`}_b1F2iiA z%2_NXKz^-<8Ttb)1ZF1cWIya{xduXwsnbVh=xgsCMImCirDmwkA|#jAG`Ml0qc&l4 zT`9${73vP%MCJ3Sunr;kyR4UqMLA``I5#`ok6afpN}b@I(zrM(0*@!}_? zG`b}@SZR}7JuHQQBB|4sdIhs4w1vb}z6Wh;I8vq*0!JW~Q8FoP)j~NdBF6<_>WN?t z4T|YzeWw)S!EKu9-B4>J_Qg zszMJFK2bWyH$IMPQrj?eR2-VR?s~N2Jsz^J^3x@K%#f2B9;H$^3Vnc&J+eL~^(RfC zlmrfvahX?KGT2k>0C=T^o%-S3{+K!tM7-R6U4l?YapGO=j=<48A!jkN+brsFkR-0v zq6c#M&ZUsggvY4O(04to){21R4^X8Wu45#fc{Man1XQ(EsBs$8$scv8*%909Wm%~M z)%l;xakYi=!}J^UXRkY4m=#3;SM34O^~e!jsQe($h4I-Ssc( z$DiW6F-h`=vjJLZChA1(b7eh92oH-T`2mc4xU`HMR literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-20-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-20-1.png new file mode 100644 index 0000000000000000000000000000000000000000..cbedbd82976b9acfe8764e497f011ab899e9a95a GIT binary patch literal 13613 zcmc(GcUY9mlP(Mc40!;_Iim;yg5)3>NdgKgQ9*)8&Y2-25>L6VX| zkdd4jBdv@>rgJ-_b-St*=)!Wt8A5k~8RY?fx39+!SNYvGo^sumS z5Lj3sc?b^h#J%_QGjOwYQ}dQGaEpzN4FZ91aB#q2FfJ}G9v&V(K0X8jAs`?iBqSsv zA|fUxCLtjqB_$;zBZESrAFNU|?iq zWMX1sW@ct#VPR!uWn*JwXJ_Z&;Naxsgzh=_=aii(MeiHnO%NJvOZN=ivdNlQ!1$jHdb%F4;f z$;-=MzkXd&QBg@rNm*H0RaI3@O-)^0{l<+O8X6j!nwnZ#TH4y$IyyQxZ{F0^)z#C} z)7RI(b?esc+qVr23=9no@7%d__wL<$_wE@P85tWJo0yoGnwpxKnVFlL-@kwV!Gi}D z78aJ4mJc63w6e0Ywzjshv9Yzaee~#&ot@p|$B*sp?HwE(9335_sY3b?d85tRwnVDHxS+8Eb%FfQt$;rvh&3*m)^_w?u^78WX z^YaS|3JMDgi;9Yhi;GK2N=i#h%gV~i%gZY&Dk>{0-@biYRaI48UH$IeyPBGs_wV1s z;qVV1KGfCK)z{ZIG&D3eHa0aiArOe>=H`zdKYsf3simdm^XJd4t*vcsZSC#t9UUEC zzI^HI?Ck35>hA9D>FMe1?fv@o>$h*;`uh6%`}+q51_lQQhlYlRhlfW-Mn*?R$HvCK zfB!x{K0Yxq@#Dvj$;nA168ZDz @Y>FMd2nVH$y*}1v7`T6;Ug@wh%#igaC<>lp- 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 NU0GYHOu;<(e*s*RL5~0c literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-21-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-21-1.png new file mode 100644 index 0000000000000000000000000000000000000000..754e507ee655067f0de84e73192ffe49a8e2bc3c GIT binary patch literal 104955 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 z z_m8#K#&i6sAVTYE_&NNL#8rY%=M5Up1-*)8-QOmjuU$!LoO9g+{G#keKo(r6$(26X z4x(63Uqon(D&}$(N=|YVO2Sv#_uRsWkprm0_Di$ldNfM(;rqWIjv|Mu#L_7r0|_}i zilS$u8BfH|mvLKwoc@&+5Lpyg?&QPq>Kb;f z<@>TJ&Z7hSfGeU*!6o%XQxylJ{yE}MgWD9L{}kypQ>E}`3HT%gqn`PpGLW37kC@L8 zA=k$98LGpl*vf0D6XNL#EWZ=9 zo6!7|EBwQ>S+S^QpJ`MT;y*z9lfH22B4Ab$$Xq7Cl_k^s& zZ4mihmr%#k+&+Q6u5Fl=k?bXTG(%d1y@3V!xkP59>J<`Y_AuT{Ys<3^5%v^UdFB&5sUM5{R0(oM`|UmwA^A7dYv zRQe}b?wB7tj#oi+fr@c4K2UGImsX1XncF7#iw8JQgP|^OR)@PL(p_pl^v#DZy#LVV zO_st5gWOs-Canoi4}If+f$*khu=Dxnyn3gGL^*sZ%-GABa77mcd_Q0js=u*pxk?}- z$4P6`8o(vw0@K=>sEJw}@L&vb=q`|RFA0eAsiy=-?d;__D7ox$#r-Ba4+2ePuWH8L z^;Ibn^Qf!%S~&@TUgY+L(|8&r&4qk+#<0z66LP$x%SRKCCw2ZqP0$IQGoj<*%DV(c zB#4sLC3$MK%)TGLaQb~e@4P*Po`)YH9}qNY>gCp==Fg|!V{hHV$=@wRp^2{P>CA_sU^C z9TH3g>uagjX8Sq5Qqr3F;Tlh=ZYo~|jRq-BrN1K5p7b@<%nCnAWGo zcWfM}>(iKOZ$b$JkY6rWdyrI4Rf{QrSQe-=nG@4Mk;oH~s4WS}9B#ShRxh~K=8~99 zDOmBZlyw`OHzDv{hxD1o#=PK1Z-d~fM6!2mzsu#+c#0%V=6c6}z}^xmC63yn*ACqe zpH*S+vUFTn<~xm91S^+e7@U7kpkZ%nKMwhVbGI!z+v_7C%0FGTYkrFCylbkZz9HPS zN{ho&t>TW#JqExc|-0LfASbeD)me)=!LzICv`C{&EZ{C)x*a`*l6DDzUMTKN|}MgvfmFPwsD& zACYq!9V1f`stk#jILZ^#Mj9cF0qE-{Ok`rc$;bTn0Tyg$;peORIo$BF$Nb;FOAQ{GL5?d*3-#t3yvkZxPJqKXSqZ>lm{&{zl+IO;IQKPDV$M6!_y$^x+Tm zshxz+h+u!853QB-IFYsE0Fi-&?RppO9z%;DccUWGp5=AIW*Jmp)r=_-zD)c)f3z+_ z70pZ5wpI#?WW5hMwrnQqAiRlaP{LJIqHIY>J?oL4)|FZy^aL!&7w{{!>*q8?%W zKBV6|)@7WI;gLofs1xGxAC}JTx46oZgV2s_p_*m;E?-@LX$(+2bf#dou({h2j#ZF3 z9Wmt{%&FJg#)k?fyhggr>(=xMKIMUENe8+umgDHEu*aD0;IK5YDp4P)uhBb<|Ja*! zcC)!Mo|ha~gbN+H-PQ-RCP{X$Fl++}9o+e0_xBGR+b%t9h@rV=ns0UdQFOYgdN@e5 zQ_D5K&rJMN#4DT0$n9nIVJ9KfC8-R>fL;N@(4K95JRd5YxEgOXUv}HV8!nXZDinpb zYrobEnGFk|eYZXhr5b$QSLYev?FzaXQw;IouuUdYw1$Z#stdfH26dI8I54N%^CK=L zrS#5=8Fb$G-t%ICX1!{bXNFB=!0?I`471Sx6162$y=f`YZUx;*0aebh@f7(|z18k! zT1jD%`WM6`Da4_1LXT|FH&du6e(WwzVn6sL4I0GZWT9uk{!2JE%5OzCm z%mK&{x%(6AG0QHc?pW_G~54Z~rNl_;L?_;9#RB)WzK7swnzr@g^khCM^!mvWvu# zM>^uNY_Fd`kL|CWR#Imd_R!}>C4E+@%KkIFCFGoA?x9CvYL5}))z_#7S-2G^!f#|L ziA9|<48ke0Ab3cP3H3e5`$EY~B(xoVl^$w2!tqCZS5F8b>L@pR>xfx!uWlzdS7 z@Vxj>Itx?6NM zf1`CFJo#&9PYrs7C7ZOF5D8bp_2ZO_9p2q4mKZ6R*GS<6QCWkTA>k6aU+|UJd?12PIVsM$Fxn$LYUj~cOPMQk;Pnh zk?!BpvH9?&ln`GL%mdZ7NZ3gB5iI&w97MU&OXA#$e%#+6=h`R7cdyCSbAICYk`AC)MiB?GI0z z$4fb6Vz)D77w+-NV_ZkyX`J6Y+>o%NlZ`{s)OHqG+1;mGnllNzqYrCJm_E5t4$&~13S&TNn+ zg-3}Lki@JM9vRI+3aHr)qoapSgCqBo+BSb&KLD4SjvH(d+hrPPBgpw-L7q4aGGeRW zVZ4Elp6HtQYf&Jr4WVOu&Jmo^U4#{bW<#PJjvXs){Nb*Bnz( zp;CehX2;fgc_+f#{l>ElN|ap91VY9X_vi(v98rngU(b)d>a^h|asAR6(6IB8ya5oIsN_oawNnQ1fWFwd|~ta$iTxm!#Vv7?rESA zCjm+kakpb~iPMj)($-v04;PoKT>jYynmXPY46aq>ty!9+F6xRAf+B!&yq)R*+D$31MI-jIE{?~V10-u=REu$j z2oM6=iB$V+G9x8hanuyo9Fc$?F2u1yM{exX{kNbSU^v?y04|}ru3uzSyU|fAog>dW zwXs=e>Gc4!Y`Q?+8h?Hiz0sar-XMm(wsD|~M;Y9=!*QvLFW%;j!Dhp4CH?O~5KkNB zZfBCAGuy5+#h%?aRReX3M;v-P%O63DDIAm(VV7Wuj~icX*GJ+B1WkTYa@J&{d~17F zoL~DCyoKM2|A)$$#HKH?WQSmODkz82OOmEg>Zb^PG*xf_Kf>JZOKeiM0GJNBPW4?2 zjlrBs%qn%4Fg&_NJ#DANO%D*r?v=!!hL@H4wN>p9?7B`*y+tiVBj14O z)yh@!N;7igday;5O+40$|M?|BtbwLJ!Lijj?#X{#%2uqCdw^9QL3 z#ttJ#@RpG@G7 zc6zxaNz1~1;>*>tQ=Es3=fo^Q!OnjOk6s(OdwIT(S?>|fxxvM|D)-Q&tkOuL$E!#a$pEcHnI=&lLC4~i85A#ai(CdBv;?eeP2*J z3}Q?Q3VrDM6?fDt$K)(gaZ#MkCl8vAEwY7<%Q$_i&`V$S;eq8PngonmBROD`A`iwk zKVS%;T`#M^25ya=gLI2d%V*m#nyp>ZegA4G$K!zDkTdI%$D09ieAH^(pnu+DL;H>- zDWiRH!}eYk;lINJ_kH0kIofVQ<+oD(rSx+j4Cu1t`0lxX#Lcoiy+tGN*ldPtyrmSX%J|E?E5WqkN`wN=6yEAB=lb2c5$ zdcgi7Ds!IXOjLlf1)-dP&?6xhI!z)trw4>fv)rEuFZ)FYa9}WAZ1$kc{*udq@{kGv zU{if3?TqG<_9XTSl!?u@%}qW%m$SRuBZR=T@nJQ4^>>mC!}&qnEr=| zhb}}G5EG;Miuhe7 z_R_)93S`T!u~ec`=P&Vm{#GI*o=)lVD98m@@@d z+0!VN&;-wXI-tzX7;{g(j4^&}TOeKc_dtOR^q49&XBBe5Jw!Pw{|QB7(~?KqUsd0k zj!xTd3JBm1hGilRdO7;k>yeH%Ckdy?<*0iPA^{a{c6jCOLx!fPcOiWrQ8&oQ?L7@5 zhTDA$G+&Zaz^_P^n=`%U0Pahbnuy#0hFIpn94lq^Bp`&9^WM%%f=vrf)+tKXrF+pzJ;~HuU=T2SN6E znT3so@cGYB93O@_JCZbqY2O}erWjZ}mO3XOCPQSJ(a$%hQuxa-{?y4x=h;?fsg~r* zFXqO~40Weaa(WZ3s?PX{f1iAe{xmfs5L*jHHV$d;Sedxsp8*F@pZ%zr*$S@qK|-D& z5Uanpd_w9@<{NGhPGGrSe2J~2s#IdV*xWo@sNRMDyd)PF2L%Sqgd;lN(RCs*b04Q# z^siH9%@p=wdVSth>^ru6{&-qF-^ASb)ZQ%}*GaSx>YJ|-onN0n~M^E`hN1@5L+R!=O-^RSteYboc+gzVWhU%_|LD61ch&9o>j8taOXg@ZA8wrW|I= zeatFWm0Y|`x>27}wJ;kX(1EYMx^BLV*#iOwXxN|Mg9G@78P=E0j@JasAea!cb97!& zU6b)JGF6YA-2F{77v%z}&vz44rzp8{3 zJJ<^~^tLV$>lQcM8z5Y9EhXTMyKO=riU?Pm*dK7_k9d38Bt*>Z2dXqL5H(d27OIPe z9?IAw8}SvIg)ihDSC?g;)BvEAC^->Q{7{R0<_2!x9&KkQ2>d2<3r=a zP|v64II?Rl1RyZ~_*L8=t@{}{FPXsF_!Z;A&f z90|{tlv(?Yg%Z{R0?%X4es>)18^a9V79_3fP4R6#c<(2u7;A%X`2)MJQ@6eg<|ZMT zSZgxadm>ASX`jFRN|@)vGjlOU2Q85FS{*4=H2tB%Uz9cTeG^`b-n>}3+UCADC3N2d zjqWi`-NrH%3ZYb#7dTVH@X1uWTx*l;PM9tq{F^lY>S7baGfgdAF7Fc+qf$sg65yxN zzHyUWv90YgRHyg$A;NDMYxUdTe%ynFach}u0%{1f)JF1|?hz)lRzpz{@paNrn_o+j z72n~TLhy9KcT;WqnVXx8u;PXtNaYeJ0G2-14yJd1t{qyIg8Fv|IGp$X4Oo-=ZxlGO zV8>v8!UbU@C#}R7u1skmQcbnMo#LL-V^G|XFhoazD$6tkAYu8$q<9RLR+2-wSTUn9K>BdC_f~Uo{ml|vcr+~j!nIdZ6@?}#aOS1->_(3s zV4>|(M;ATumc}?HdOFGF@7faO!h^QejVZ~U>FZpF68HVi*)BC2MuVNA$J^Y4+p8=` z{K!HJMp`D-<>egGLx)Deq}z0Bw%$2-+wEsjf&8pQ>J7E3PO7$Y{NhDv=!mp(s%tuK zXpWg}p0NIYks5*ywTh3h!3x?~V*rw0(>WxYsokeJ^xy|pm-=)ED2VTu?(UaVe78Ig z9ZRTsJiWgkX|LDZr3e7M=yurO5cAfVy=Vhwv}(z{esaHByuI17yrcDQtr+na?Rmej z;Io82c7qG{a|Ekqz2L$Bw)j_Ij5jmFj6gCH!gV2-%RdF>4Ff$PsY4XUO8HiZmTamFhD4L}n$OB!tyQI7sHqjIaU|l*h?!+uk?(3(vB}EDp;6VGh zz8Bmdx9V@bcVPqG{}|cckNo=(4@RyI+9FhG4=$x2XfpudLj0rBTGoP1{J&%dJ-?f~ z)5EVu1(g@R6sjdOf8mZnv5vK>Z4t4weOg}*m-E%ke>A_j9QGm}{Q^f}=M=_kyizOm zDJ*W|o1yj{lGo1*4E}QtSQ(k5V<%QX(3V+}u5Dqyc#QodT)?{;_x0haFJfzp`p*UB zo+mn+q23Nhml^F)(-}rezhk`$9};UQME7x@_u#cSMXTl5LB8!d41Cae62o3@#=V_^ zru_o;6yZ&W*wV#MnqbB8DX@FE8-D!epu<-&tn>YmCu3Z$X>JZP5AV2mlLRA68!>t? zK!h!HvGiw=$<0f2&X2;c)59TxK=4=p$H=+I4|RHU{w1#wn|5*%NgIq7vgPZ)S zSPF9}%0L&`q$Jf34*+1x>EkKHzG-f_7_xSs0J<(Db(mW;34TTxw)lxcZ}kfSm+@G^ zQr4qK@$!G1n10uzL}dr3bp!%>rtl_6^Kr)SLC*!*$iQQYAcGIJYoDX7lFvUxFzH`B z(c81u3K#Y;yWv{{rM=SH-CvS2`|@A>Yrz*N{*Wa8OJ>T;mdwMpnX9i1k&Kipu*cF~ zSgBcssl(2Di*XTZWOM`Xno#Y#=yCn-R$Uc;W{S|U^ZwLeIyGzXH$ z!%7q#$gcdZ9P=&YWFUUEI7a7FXRIBy$YUPwq!sl<{dX^Z;v&E|q+TA`MHU4(>|iMC zNO_VedO=aWt3(kxLG>~X5c4qW{faQ!_0z}3`g1MZ`CD_v5<}Gd54k^a$TO- zP?xuKWT(j*V?TQcx#GcJzQKJG4n@VYjKEvOaNdNLLh5-X-1UW zotR<7J#c6N0Ei*_g86&|PNxQh#1fwhe>tMhg$mkJ)C{aAxZ!nyWS6yKs{wAZB00|1n`5^n=J50rYw*(h4xe8GH6{-%!^n^>bv zNj0<6XAwdBo{_<&Wa4@(8;17L%-#_$fG7S74{7*w8ehtK#URcHCng2m??V)PoUX_Tj$3Y%2 z%%0+Oo-IzaW0Hi!OqmP@rNtDNQq91`hFSGWs#7|9iTC*7xi(%Ye5jhOq&tH&OG6I5 z4?i8a7Uc7PvjDWVW>r}6%(rcFF*HUEv9pIZFa>pU1%;vR(L+5rUD}S^?FPd~AJyDo zd_0_rh*r~E&IR0;<*h`}2 zGi%G&>2!~|TeUO+=k284rqEkR!Y6MT0tZK8cPFfXuBmwYc0BFGZ{ho%Ixc(HrOTjt zvYB=kyhNZHu)CyY z%wUD~!99oX(l#+*gZqxtOv^P-=v;oQpGhW$=;Fh(z!+9z%U6*;o*d%^$~ob!5_v<1 z_ox5JW2zd`|2b2+vwFdn+vSs#TX-5~k}wXY2V!~^1F7V2?d!hqJB{pq5o zv-)BjxC?T|g#F6}APv!Nd|ZltIeN3w5L`dQ)>!b94|#X!_`Gk1-w-zwXm&hNWkHHe z#AIGv8p7Awk{qX6?81a?z7y(*SCm8^mXz@xwDuJvmI6%uO1E{Q9lw~KOmt?8IX=*4 z%nB}akZwr`>WEq0eOFG4{*Xdcb#XlxRdDtD-@E>~esD_`VcBi}A22*GO`M|26LYAu zXYUvIB;qr8Lmv-u3g}czX?O!%K$l%SiEd3Sk@f)RCTL#>-ps(TzB+BBX+UU4%PIGS z7d)Igc_Djo5SKLv_3Kwat(qlp4~$(M-FPuX84Oi{2l`{k8?h6ea# zM!qUO4o3AVuc|ql2Sk4Y2SoIbItzwR8FE_Y7WzgFO>9YlM?M-W{oXx-wAwh)ol=_g zABayQRgohknkT2ul8z_<9QDZ0-(bF;U#KwXs1td-p@#8;tzMEWC4cGRuGN{tHBS7? zRlg^tR`u5J2^jXOr8#)&o<2nw3L?LmZ@4MrM4&-SL!~ZtJvsHHg`Ag zT8=Nzb|v_mHpK9pa(Bjqfgcoxe#so0+@uP{HLcyv5Z7Wee+327aC8t?+|uSyKb$$I zx{AdcIP4R{YS*unFeLd0Q1vXMl|uh3JCHLH*X1Slm~3IQ75q=Ij@6B$!G1*%S<#M` znDhhOL3+c{En)FF_FfT5&2nc~$5z_?_o%~dfT1CG=JIZ9RZ-P9$~C;KG%O;Z8$s+6 z9m5%rk<@8uJ{HgzhvbAkk3fzT7|IArZd9$pmj6%PFlv)lRyCx04;6wMqVN!egwP|C zy#xO!97vS13K1yVJCva(o>~os2DTL{*hTU620I?0mP~d(cCyix8IU1_m`_{BhGXO| zG1-p2e;}vUh=K^=*ni%}jynGN*KxMzi5e`BMhjV>g;Z?x&z~UN`n(KV;CCcm78{_H z4~6{hDY`G)B0*#7F+Y5%J3QZ3=r#Cyg4w7G&ua!2c#Djw?YK==ACFw|DyxL8G7|tB z_t|WrZJZoJNN%2+Z=Yl(y*m9!g?0{ga_b#mw8$ydt%l)b8|k@KRLq2=z`a(^yF=G&0nKxiHRk7RX$Lw^m(&DTEB@%NbS*?FP=Kqt z-K}9@2amMbsIl#=F6}+V!InLoD1p6CU;klQ*S&(iaob_w+;-lvDVJKm^G`Dz(if$c{EUb%AG+{55i8fQl63#BQ=_M^T1symH?oJS_ic7Bp~)N4>(D z6^qcmhSJ>8f(1$tr-|=6C_VPSwZj0JR!<$!0HLun#Y5RA?NGF09KKzrpR6Jc_%v~R zt?8{n`9%U0AOoqnE1;TS2)Mr}MDI0_!<}!~)HJYEMs9R`HNW+ia~%vG{Fw&Us#2INtKyx_l)qw3YEY zVWhD&DKjP;Rde~KCb|YII7s2n8>mnC?FR+m$j>(UUu2$P9Fs^#DkAD-m-a&GCj=>B zmQgMcV_N?KzeG6Lu)WNVdLP)zgblBT@VV;(3~HjaNaJ)_jwJ0A@1caBNXoCXDQf zS3tJ7uP7!!?LTlxySp*U5ky-UdEP=*FtOsEL)GT{t~ve{)jd&A_6qzC&R9_FXV{Jf z{~t|Y7ZSFi2MsHlm+>vX7lh6q>L(juH?@jV*~?%0X5Zn*&B!CYcl_VQQXL903`I*& z??A=vlPUS}TN~=J*vPXN3ndQkn=&ur+dkJu`~f4LSvCq!&r`V+`gSW+9Maq7WB3fwio zZ_XZq5pUZ6*n*S7`!A0lV=bj#5?nj6(9X^Uy_{mT1(<&;VhQSnAy2krI8-yB|C0fw zxzW0==#a6RHnQE8;+nmav-ji0thHZW;BAAf9 zbU;6r1YZ3hkI<~rn~s;vnbuufJd3lqlO;&P|FR3%PqVaIj0aBu3tadwRR9xjV5I27 zPJnd<2vpG)_S;0;lvyKzm3d)(?{|0K)Ox%6v+fqPYRu_<%Lda*0U$j5KuN zaTGz`Yp+2|U%S269^(5vpJGGFtd)53q>XMBXmD)hoZs^v1ggaV@aqS^mByPMA)`bz z2agvVkEBcj6Fw&Ttm+MnlUKSd7HzpJYtVaFK*tpF+!A33QtX#Cu-a~>l^1=zfxrEH zEB-N^nW*p0Z8rw|%i*3qrK1OwUe46~tlbrT@5^-mnV_355_L{Y$va;VVhU%9wyWabYMAKPSWgehVMw(6mZj9?9~ykue? z?bq6I$!O@1W)GBK$KNiS@OHk*>V*G00o22i(b>w(NgV&csK6bB!qh5!YsOuBA@LNZ zYM?fYhcpTGcJJ#9z7r2qrrvX)9!rDeT}76%9y>Vq@&1mRck=JI4LCwIn}n+KDGZGB zz{-N4c<-B+#)+V2q-2eK%olz6+>WAteuhCp9NUf!ZZ#7SnBVaI<|Tu#8+Xyg6>Zkr zxdsxhG4MNo+b=mA0^Y78=yKP_&7rKkwyAAez^P(P5D|#1*VYbhY$$nk?eEewH%Gci zUV0cx@e!xP1$}`TztkBIqS0^D609*wHlBRZxJO_BHLVc|Lm`cR2vTMUV8AL$N$aPJ zzi+RJAZsfi2@CD@f2=Vk5d&p-o{dAG`w7Wkd;ENY{R=!c*00?zn3cwk1@hTHDMX&{}x3 z-x?9k8oW3<*qhK-0P~;T2S*kgcr2S6jOXp;U3o&PNdq#ysNTEglj-=CRlcx|4`iXK z)JMGLIy^o!i@G*-t)a|Go!>VkPm$ z6A0$Tt#LwJQ09HqL${w*0OQ??(hnYOOK2+YPAoC79{%fYXg2WEB`jpL=z>q8ScU}; zoN=cZU1OlYU( zG5~hJ%Dv%V9O&|3dh)f-d(jlBHNg&`R$t-(z?*+_qPqOr6h1G#e@FLW?K7qW0ZT9U z53v6!mc&oZWVTb2$;oP*RK_)(f(*amov@{lTfZN#Jg3%y7KG|U+o4L{Qq>uH{l7M? z6Di3*dkkcCvU+~l??8ssNQ+rgCNl+X*z~FNv=tg~u!qGkjp0gRZ+M`hk8wDIi6^`W zYveUAMWs3+Sq1uW`I%jVVyl;gD3~kWw7{l{7Q}C_U^fHgkCV z&&(@@0fgXp7Jt6i^W~zrf#Hj0lj8iqjaxR#7u!R0xcjqFb}-;ODeKrVMX2mb`sr~f zhydi7BlSk^Y<5-BK74Th=8aWt=Q+Po>-hh?!X7~qh}Y2pJhK@n{H(uiDV6hQR3PU> zH2%v_T}pg&kje!mj*@H9neWs7k6cy5KbqkuY;<2Fn|%Hk%2ncx7*Zm0|NCmij5lV zf^c_J^WZN{VlD6a1?G<7RT2as<%FtF1wwN|y29RVcJZ-(k!BIW$_rjyCDstmwoEis z#65)1?nUiP_ZVY7k3qGDC$Y5sRqc+GDwTAuTtDY1p)J(Bpeci|XwkLn&HH2SIP(ug z$n8MEe?>9?slC27Hc`+Hdv^GB-<6n5f(o^{NXHe6BsifrlQ}QwyTv|V^78`)+Zhbb;2(Txlpjtg#QR<73oh38XK^KDf9H?D$$w&}4$+sr58((jV- zTEA-+^B0@Byfu~b>tixoa(X`NXZ#RiN>2cE{wTnwe&5)5D>oDOkA@CxpivZ8$7uR} z!dU-kqE~wT*aF)MZ|#xbkjx*tU^Y?pKV=hfh_r3!6rNkUxe7V+)djqs2*yO5D{}C( zE2OT1=x{;P&8cC-c|?4a@WQy{Bd+(+uY7^}>tB=~weL-uR#~Oe<@i{F{AL504Y9vF1Su;d=<4_W%85bt)R(hRKwIc~GvVOLov6^&Wz)_oo zZ%NT~ikP65H1$h}cxi`74#^<20O57p{}Oz!^Asa6UMDdL(Jl2=86q%aB@AavjBN$b zx0mxM={)@28A;9Ax?9M+h-q48|MSO@@d8QB)D&W&6QWJe7a4#!_4@16k9;Ebnuqhe z5Xr-U#dJuq++C)@40P9`r-5M)X#$+sCs5PW{{9YCY;Jjnm3*)~t9xsv9xDugYpa_5 zd!+Ss)I*F2d~6N+A#eRxrITd%vUckLyOW6N>TR#)9L zxt}AX>H~t{6R&Dj9QR32D)w21B+>_CMM~rx+8BjQFsI;`_jx6YYb95}QWGq~BF>9c z60R4X?GC_(TSq^jBku2ebLeLTMDz!l@!UGQ#7+EB3qU?MHio7rNAskVJi-a4wduSF zS0?uShCtsi+g$c$uyescv-wY9ccR85XZ6$=1pQ+$PH?yWJ!8&8b#A$SD5> z)Vur|+HOv^=r~_G43~qu8k-)xxZl_Hbye5W#P(PIVKI#OCOM-xuCOuAPEVnIC_ z1y;1Af*bjUwn?x}3o*Z)Mb24Gd1Zw;iBKiHjp(d8(VV?;LHLN@ zjCQo!s`&A7cG2x3{Q|9f&)`y+2j|FmoyOL)&dS|lvHL*#>B6($$@!3L9e2t2>h3E- zNGeg?uHM1waToV2*R|-InSWNY`Ni8su{$KL=GP$~eumrF0?ylA%#LUiyJP-FznLCu zAe#Gu_1?n<4RC#lx6N5~W*55;~+m(8b}cDi%Cu_y^GiSTU)y?#pwq8o4H1b^Gg zRli8IKsw%{ZdD=C%H^gi48EvN(iv)$+Bd?0##KH78W$y28Er?1QEF&L4@gMl12||7 zPF66-`8WK#$epPn!g4#hNGFPl%1&=)871{r0fH7W z5y|D~dz&v$GZep(E;^KI**fkA7*EjW?g}H4hWTCj9Itr>?;3d&XzP18d0QUKwCDXq zf(M08%J9mpe^(vvO6h`b7-Y zGZEKi4pPCD1IP-zXH$<|dadZ;d{oi`Xx%O`xSpfXgA_-612UBfNX>v@%n=vpwA0vG z;l=Yq)Z{728Zyx#Jo=*~yZ~lm;dahRmsZmt%FC7hy?9PZaMCuGHfkNlI!2Z10q(6K zBC)H9KeJZ)g$1@{c+6z5RUz9fvuBPV)R@hdq`-v?V_V#W+yeB&*-M=^8~d$R{md=k zX#+m7rvgzhYv;O|p-)szM}Ck$@6xFp_TEYo{StN5>^Y0~W$!?1R~Znq}Ej zBfM}42{8;jg@Ux(B0O+K#p0i%m0wIiwlygrNqL&co;iBr(%An|(+&nqlXpL^IDUi( zJU*QVNKH3O|FoK;kKoUeI-$Kd>t5H7ytw%&j-C=_C1Z2sAY#%hhdCr!Xp4{O-e<>~ zNHU_Xh{;2PyIgskIU<;AW+~J;NHf#)p%2^i(X zFbfMD`_f=r_@NF)h7V7}jzoCCya?uiPP<-lKy`T!9afn&639qqW6=Z6@t2XbC)e?) zR{X5;xZI{#_`tj4a^JB1ADnbRms5>Z&7yY6Rh?9EljBXa=Sh+`ZY-a6U*%Ezh7w=N zsWz18o3C*kKUhhF1zWv_ohQtjaGd6MSJnE5x2t$Ofec1ems5mdJp$5U$xIN z%YWTB0_iNS{E||W^SkQ~@qkdf+?Z7#e3gsL7HFoQ3)_p3OGytcjY4?~dF9M+;{t4G z45=A744a9lHDGe?co*5sGW%eWkof72zgceNAFF%YoH|IXVL6?s99`H0&&J1lj|b(D zc44lgnp-+DxVY-mN}vNd+*DsFfmJKyqg=6l6dJ23b{9z#P!>7A$o`7O_4Ph@XI#ZL zSsVmkYr1Mr@Rus`8XizE56<^}C}JsP$JXJtUkc(le>C759=uPocW`q>*|-Bjr@G%B zR00nMeXwEYA!^6OOqisg|0i9d4x81cRjd5gIQB0C!M2q6Y=_ z2YxoEbvo0|FOlVB3pT}*^DeM$6R^3%+x+dx5?SE z{FN2l{M;8<^!wD4?}BFEQt12-MCq<0=l7DltT8{DB6l%Wgigl7Td2Gb_k2DH=S298 z!uzS$c4&aL9{0i$9ZcUlt+n-x6!Ue?e^=ZO-wO-LNgWJNl_e(txwNbdyAPeFSo}65 z01L1%yBQ3XY}kxR{-I4~PVkc6BD$9%TH&Wv zeuIJw_{dnt&&dAUPBIqunZkRkZBJa!1n7zIfwKsBEEQhgqCLUfwGaOb%voy%FDzJJ z%>L`pIRys12eLN24H>fn#Fyc?djrk zJvk38hL?TKKMp+7F#WvZ4j9S%y~XR@wR{ACIOo_jE%J1O-c};I(j-YeBlvTrgiPKV z4WVv4f%%R9pWYtSv8bg=2mwdqf#@*Yon_qP%J=3^YhOq)svJkbOTkU}+SWM^R>dt^1=xoB3+ttL1s6+>Mzz!)Z`;_tt!WIUpE4N z23{8qi~s1+^? za_6L-NM2YKG!*3!gy@(pdxy0vfDu{s+@V9k)hR?*mpUVE4HG<>=)m+*V{&Wi0!jbm zQ=ly5%H0@=v<=G7({Za8#V4>$sjul#XSujgG_a~C_<=QD7C=uTmGS&7=NfA*q8JLe zk%?Sg;(jhRJT^w>5bZY%C>g$R*|3}lej!-5AlLdB(8d93Tz~R>>r0RAoDOb} z7r}_Y4+BYG%(8gN^*hLb5bEU6Zwv@vUr3xcv@y#f0UAh9W{<+a7!z2~kqJTscx0{^ z2J{auMRYcQ+-WO1fho#nmCQWZbdp2kZ0Eib@bS8W0p)$2orgHNCf2Ol8XZ$|RT<&z z^~^7!2D)Vxp7``4+ZFx;QYUgUSr;X}-0yl8{yZt$8bti!>4Ptys8y#u3)x1aTbpfq zFvi|nxK{8p4ZW5XIKftpDO5WlEuvYw)_05auxcz$D%F z+ScUq5tccE9%ZrYP-PK-{e9Js(o#FxN}2PS!H2o0!$s$zXOkCoOtA!G`AiVMj{n%= zoG%Y7qwA)+hLu?KtA5f@L@Z(91hD04b4N z#9(diBqQs%G$rNCSp)}1(I{7X=dBac`5*n=eI~~nxHeq?tQ}c-+xS1Vw%GFz^}`I? z**cZcvm`;SK1E44PEp$WFck>I!W>n!J*at{h-bYfHAm7|uPB1~8ixW&E$aS`Rn)vB z#w_!1BB{+{9^zfki0&Z_L3c-(c_e(Aisr8Wb`VSok5;C8Uwye7a!-5~H3i&U8Qf|e zVX6yq>4I8kBOLs#7L01PtHe^c1`WV0H7WHeK2uw6Fy8@OPYi58mm^R>Lde&g_?wbm>o4RmGg z3iNdx=)h2i!P-a78S1nuqaU=;W&;TcRxxJfiM%?W!qbQ`#xoU^JIS(#Xbr zr+*z(2Ay75xJK+W%Fr~ROS4DMH{&W>1>6+09FTICVdOq8=1+w)mT{`rB)uX>^572;dyzDE!kiAI^%WkK zhc2$%>7rhsT;GEJq)LH%$sJ>;cs);^@?^eh z!u{8Dja^Y!J*Qk6WBHAA1xnj zrT5Pi){vC`rE!B2`S!*@LKAycmkNHonc_&RY%H;YExE|2Tf-9fA6+ksn-D0#1ozOS ztP=_-0V4zE|5DW#*WN*hqMCX_u3hh{$N?HN6rfs z?aA~a9bNz>`Z zF>AamOr?6CE1xytAB82JVp_o%Qds5t8t{&<2VL31&-5!J_C(@TsLzkT3kzA3E%=r> zkd6O&gn0_{@G?Liw9pyvNkr&*%o_9)nr^^{IH2+?zPx*c_^W1UXZd^`>f0#oDc?Kf z565S(r%i6Y`!|-s+?6IX7RGtnK3BQ^Q`0vR|ISd)lA|ie2Nstp3LDj>Ge^qT5zESq zPVPTn5zByU2K*O8o(K!Xdi)et)lbkeNN{t`R{$|5JwY9{_G&iKRC|&;B2%;!XWB6-mY#9^>e$lUvII8uPmar^!Qe zQ1v+m0H@MqEdl9Z`RGHAt;XLS2m`oe7HWtxo>)ig%mN^B-FVw)-p|q!M4^rtnlHV`q{ z_wJdj&0s?|bbmImIS7;3TP1%yW0q!IoH+O?@Ne_AvbmDA@BJn=!z?wCMBp5qB&<;9 zjY(QMo8E@ojMd$_Sf-ZeDUe=Us}zCcFr3y zwudl~xg|eCi}KI9#M{L~nE8MCm-iUT67eQjl~qKAkoic!1krmL2Er_G(lE>rkl4?z zwAM2UXpf|$&+KP!xJkHwZQ<|xYase9(Fz223oWrj5;>BgabSr~GWsFe=uv5cLJyiF zQQdm%s?72@24@Q&B7I#D>F?0F>BS<+cw1C_B%Tc`1Mq-PY|vYX| zyKF~IkPlj!X5d;bwMwL_FXLm>Z)MGHcVMgifK!hg75pgJ+EsLLR5MnRYapvs)i10y zsY9+}VGagmEr3|Uy@I)e*#a!E*{N{gFg|`%?>UVhKt<_~d7${?HPerZg@6cLlxA^4 z`5?6PFp1sn9&M079XG`6+jK2%ikqCu+<%|{UoAUibzWYhGYX9@h!N70YfZMj!ElC(aWxiCaA7 z%pSxN%NY3j#AXDnSs$DyjV+<`O=!Q4Fb`%LIz-=da-#VYf_-_?gDet52VNXnVZ9JIe3Ix){%+_>QY2SRqQM;*k9cZt%SK)eD%N4pT6jxnXsD3x5Ln%AWt#I z1Y_R6GQlmq^7Of>R+R7$s1Exh2M7Q8AE3L7mDWnGjiRb2miUJQ&9GClRKTL8l7+*e z1f4+uV*q~X>dfQsZ?JJx%aJ&`3r|9Cr74Pe&PR8dSGSKotUzn2Sy@Zezin6kY$%;Y z49|6`?-+X$x^AJ#&(=X5?qsD)mRZcujs~^+F$L?hsNdq`3tG`50y8wJ++joo1?yQOLEbHlJwH-} zB}iW`SVNeI91kw28D^(OsdWKQ?o#O=AROcvc`0vQ!_A2Ns!5K`5da^A3V0;-Fht_Y zl3UB)eqrIy@WAe`AIs3~#NdRYnugO!n?xVcwRt=?%7^ zSaCK=^9LGjN}U?_C92gQV<7XfIQ>*p6EPtb?6F#b>E-9ewA-mNW6M;n$i& zf%q3}DseWnZld$9)5@l9BECQ(1Bukr%O31sKT59Ki4yKb=$cS}(vh*f$>!L&yC7Eg z1gih4WzspVol*ZGAzCf^fnYEO)zEnl3`M1*?QBpo!Hh+C=3=Yt+FsAxvsI(jEUfxQ z{_)=OGKUn0Jg%b@TOUN}@T2~*e8mJAxU;>yGM4CJYPAl@6UwG#qJL2Xf&?eMi2g^k zT`)vrf7!vJ{L^Jv8=SG7F`!j_!4mGYKS>7lPGkoOcBz?pUsAh?S^gJpn#0ob#3c#+ z2{2M`=~5p9)v34Hf{ZvRiUu4L6n#a^PQq z4C@MR!)nvwTANsc@{Z&sR-Kk(69Qu@!5?53j!1Uc;4iD4Gl5FtezZ3NcH$!o{`zDF%;xD*Gfm4;_EZt!MAm&Z3T}Q6T^ZVn_#KfU;H}iT>efKrm5{k~UKzYwlm$ct1={>K&1ksulm$ng1eE~0MX}R5k z`}2#@(S|Y0`gge^`J85Gs7pVO+NX6N(d5wF(d(?;)1&BFSz85LZvf-JLHVQ}){6au zJ!?bN)-6%-CJ$C2$Dd!ArcDf}Mg*~ZZiBJ9yxM$;Of{g0S8k*OnY;!ZM_Ow+M z4vo~Q+-lqUT~jU6kyGgq%Bp`CYPMBhQ#h~7z;^BZNb0MOgldef6bmk9w*6)A1;o`- zKRv3{Qu*b%{#H3t`Tn6#a3whiMRA6%`95*N1SPJ`t?GjD-+c1+D_=6Ax>cpwQ%|DSyS(j)!Gt)GPa_!Le{H18 zOn|1YXaGW z&xlt4LrI5#DGkL=I~8n3+q*N3u@6p8?jv)|R7Gn;Fv^dPYHd8AD&A*onXjVdQ{$4o z({b#+VL>LUJgywA;mn(849V}0o2|0?k8``b#cybto)+iJwf!A>2;H+l(#y$9`uO1FX`JZc#b3$V)pFqN@~)E2JmeAtT6hBR~L&f4ar<|6trUtw*=fc78#|jFO7F zO2T0uJq&BI(?NZs;g81+i-7|ElO3(s26k}*ybe!)ymlixk~rg1EAL^&#CL%ACnJ<( z{g#2T=ZCGtEv5&GnEfabOKuC6bZmN~n1!j;-7{5CZV0kS=g+?k0V(^VO|2o0bC`9W zz502D4gxPP9na~zBZvm7nI3Qypu`=0p7g@6uzPKIG;2$9Zi3@vA-ua_hl%G?Rrjbf z>h>uqjurzRr|3PSUTp{muf#0u%t9@c2AZQ(AnTdG65H?_Sm61gkeb>MxmS}2brkK zI4z+mSVVA9tAg^+ggK%%_Pt=uB9v~kw#V_X?|cA7&|Xr5N*}BBNO@6adrGn5%K5NR z#jE>aHX*^ol7k`7R1R_v25S76FDiyv8h4c-`qxZEb!G`fpga%ZU{BM#*IB{YZAe6q zyL=bx2KW_=D;6|RvEoPQ^m6Q4gzkuN9Z-`q5aA*#?cyGLg|t5@J|>xXgp2k52Q z^k9J6(L%B^^yv^E>i}y-m9pzkbt|Kar=^v@LwE9u4c)fkXp}+U!@ofUx}UAP4%2A# z+Lbe)R91-KNDL9`$4ST$jRQui=xNAi%TR9Fu)!A-mDuJs(FDd4Z(2T-PJTsa1$0TD z$54OyRXh0x{!L!f*UET8P5C5bt-;gu9xub>6e>f!a#D(zQ}GSzvrWKnmzyB^dg14)x#W#@HeqNN|3&GSkKm9}~f@tdnt&y@Bc zv}YLR|9W=B_tTSy(#uq9nF_GP3CAnG(qIl_rF5O6ADnMWURc6Bv^!O5lk`lVcyjS8 z4XGfWVtncc>bpW}$80oy9ZgpC^~U9A8%e&-NJ&NW3+bC~ zgw#JbP;sshOzIZ%e#3(Nr2uM*rZ_^m%#>b-7IPx4y#ja~V`HaH-2HD9bKsxEYt$Og zp0peVBN~P#rnZOYN%9dApNl4_t?*RhHI0v z?ETrckUJ}+zxto;D>rLR5G#J}?|muw>9{-p$&`kiQ5Mnrp-~uU6HVI?QSrUj&nm}Y z!73Z4czMRg8)8a8Mvcej zgXrEenah}fu=!*LPB+E=)OlqNHu2qU%y)f-I?%RNt z5vToaw_37muJbyGKtESMi;LeE{K+^KbH8gQd zPwCSL{7#RLIW%S8ag&UY7AUy#Ps@=L@0(LtXmFzglXm`d7l|iTP{$1ez?&%Y^!dpc zVC_J`pN87e*B9HBaOv`Yg0V(7D>f&x< zMq?tZ5gS}|WQ7)pCh$;d^5wLG6`Gedq-d?_Edps1Qlv>2i2zo?J5lkRBS6B&qGP2MG^JWdV0YVCW1&yORUwer!ECV6`=QA!kQEwc$SXHfQ`-`^o&F5wwWc8`SVFn`(L)y zv>CO_ymu=uwe?^fVTNzK=iJbM3@4I6=#lY&`vf4+R`j~;7tXF!^7pVB*&J{}k{Pzs z)xZ}(z_b!3|D66kQpo5}PIdi>vy$7XeMN0xdlHQvL+Pgpr#@W?&IpZgG9nZ_EYTsQ zU#bs<;VMlru_Qmn<;iuXjA{8MMjTb-P(}9~dMlGk#ICcQ(rd5S2>Eu; z8$KH$qIOLc@1hN37=X@w6*02U8Jg&>`wnTUACv|J`~x2?Vrt`mlmf#-!=`cj+J;h9 zvB@uPf(7crm?56ne2vUdGtoDF2g*u+a7w;M1dq6e_~hz8_@^tdBLR!k{{E$A)%kW) zV7*Cym}~Cg6(eJ-Gijufldtv;MQNJmICoq+Sk1a5jDJe)Jk8~SFen%>*of=s0ly8m zGQp#ndp)i>_{Ap~{1=1)Ec-^%8c9QG{i80spALNEckQo{0!DvkCm9wSJ6@A=Cc``R zgB%6c-24Ak45RFhP+;s>CC7MT@r#yI}n`Xf$)8zg4q zlf$VWTrEX~D;=(W0|s@Rhh=u225WN%g{Rh^KW2p=C6rW( z?p>X}Xqx?4irGehI_+9jf)<)3;x4)Fh%y z8v@c-PcA{}CV{tRU|8*QpEY~6hNslenk;PY1WKE*jL*6eEFVVauq%ZW_(~?*<>w() z`YHsO7bt&FF;MJl%i$r@0=aYE-yB-vds`LD2E7;Mk6NuZB6j2p#?Z58n+4(9DepQc zJ+l_8dPilVk$#r?rN}`H#Phf3`=vYMc+$;(SfXPVq{UesyaBx%&-|abfB5yn*X`j( zX8Ywl3d6i5q~u<4vWAJiY3kM46TX)2gc`j0R=E46CQ1fiDI`*oi6!dI3_t+}lZKI@ z@h`80l5i&IbUDaHG1Dw0p#F@4V-`lNsb!qx+hw!yNBjaHw9onf4Pq34GQlGa?TGX2RzI@U2>$8V9etLJ+swz-dEnT0xuwlm;^jQGm!=UoPi zG$oWm0}>vvHV%P2mlU$(IWQSHfcLvwcALoPA3p3>Ok53xRwpQuT2=OJiICa2#d-W@ zw?jit>@DK&T(e?c1@wx}I~zp7vytyt$&@eG!9pC1xXVPj?&yU^6#*AF-UO)_-naxW zn^cYJ)8DZb!lh93N=zp1Y*|^4GD@h zh&eU2)EBHO23lH`*FT55lEC{7!a=Gm+og&gcZRG^BE>qve-|?`n)Vc z&=MGU1XY)8g*s0~Dxd$)3vigNiwAhdg)YV_yZ>gkw#43%^bL7axmX257#aIc5t~aw zgIH5~?2HVU@n5Pv&rI6P{JGr`kjj67p!w2jEIJI;})b#J6WhE6Ave5KGaksl79H^al6>f|0=|RQOBawm=W)pNiY6wWz}9 zAvVi#*ezY|u~j2mWATg6*L*If5I%BvEV?DnqSY`dI<7x{wkq1{xa)?JMb4@+&F;*i zNY>=X1P{8oR(&csAEyoyYwm3z798Py^uL*4GEfO-OfIWEzVUd^%fqGT1_#zN^re*Me3bn(ED_|6zP5GAXPKJyA5j&8n8x0PGkc+{6C^XH4QU3CrZN6>^ z+WfG^{~jRa|HQ4(gj|x7{5LsO=hv+Ay}Y?vJ|ABJ!$=x5V1U%jeVuQ6=E*SXr||LC zTD)3M&eu)22tStWl9>~ z8d8mKE1whS`3rqc8%4tK&U3ekYzbCjy-w}(&Z1rG>aRgXP-hVNk?(h8T;jjh&fo7DUCs>3&uR#M8x z)8YzI)0RCgyDNGZJt$mmmaq7)fimhdQd;NNE@}j+noW3dvkuGjDutJdHjF%KZO3Ss zwmYw(+YwzC9u5prTuu^i<+wXI0zL9{sb8B#xEbqqSkf>yt+q2~BMlX<-0CvnB1DDo z&!&fe{k|jsPl_zC{eUq55S{unQq!wjl#7A|yIhnitV9wwkVFVz{qhRV;TyvJN6*m* zn$X2?=k#JBq(Bod&Ich&jb-!R;mKCYQeKwH2!&MwE;X|cQfl6D%0IkpSpX--LZe|t zzCSPdOLu$rxI6?sYIORu6>yqmcu2@_LFYA!uC^2!no(7b{Tt$cOosMJ8dNIJl->B1 z{p`PtnCIP_Wvl{`EBMG%5o}1j@KyPDV-jUNsA?G7IizjIecSejZr|}9CeFIQci*}# z+^^(F!-dT}ACpVBKLqQeHgXup@}rO{mVeb?^!$&`r4-QR?{;ANn?>J|*oI0t;z5hM z=znabLO`labK|0pJei8t7Q{<~Pl(3VR9wm<_b^c7sZc4kDVJ}oIuDuDDt(@bfMX6W;-tW#}TsFnr>Z~>9;Na=lE9G>;n;{i*pvkA~E z?GumxwTi0aLY-Rj2jAAUgB*zmY*utt`n9T2%dxeF6}XDay-Bz}C*nIKB{u1IR1t01 zL4#eZks#SiPeGQU2ivxynZ1rr`z72Xo~7-9I$Rd_E{|jAiw}GxOY^>kJJ?isnAY9z z1lRCpI=SF+ZDM&(1o{s#bB1#6X+?RjCL*Z0N8B~$B>2_Umh$>W*x8iRHPcT|s={WC zpg?MG_{fUC1h6Y-R#MQaQ4&HW*3|{lkt?`2mNIzSS|f(bI-_i*c^tBzY8Eln#ussK z-iYjDY-WFljqXz;#qn{;7j|T*7|wwKbV|sMaKSV|K

zkW~DdO$fP_{Lt&zp5n6DVIuHm$9o+Et{$~ch**w_yq!?5E^K9kGyN(3PkqlX!#fW< zbHZK?DH-m+#qya;1TwfgO>#+;=OF1NI`Z{Io@|{tCE=AG0iw$+Zjp^l=6 zXSJHc_GzZvl~_dV_9g{d;fkTFJOm$IGy=h^9}3ug@x+#pdyUAk|FpQ_Ua_3 zae=~B_Xi^2MVRh7@;tO7)5#TZQT-1=((rk@-V>%+r}?{NloLzyHRw%u7LNl4w9%@uA|5iuqh z0x6*;a_+2n8a5$nuEDHgyqqJedi?v4( zYL8QMPt=rxMZM^@*rYagI5H-}*geHdinh<@^gd6XOv6ZzO#V*EawKw{m?RC=B;p3S zlv=I@?`Q>o5voz^7=pJpTl~JhcK=h@s$RIYU7lPliL=i1>bf`@DgeI%9VSaLh^s^E^uwp? zZCmZZkpL~0Ltl5N-QtJ)j)EGC$YMDeN#$u9oD#9P!3`%+7Vjm4ccCBJiMJtT5%(Or zY)(L{rD^>P!FWW;kcy{E0T_GYe_pbZjG3Jg-MV@n(keZsfNfv4&I_AN{uED|o!q@I zD{bzZBz%%qBqsp`AacC&Up@(1S`HQ%LFMihyfrV_&IaRQMj`7k#NnR8) zS0_!-MAWn%-zZ_JltYt7v93Q5x@bAafaiG;)9}$Fy{4!+Obb0~ypWULR-cgm>VZne zki#RWf9-pZTUJ*t3(xsY0ZehFC4owF1T}Ty9~t}&de^^s;H<(s55En%ays#qSiex- z&~ISW(4a}5?TJ-7hY`nE2D_Bjukr|mD*9m7E_DpuI&0nFQDNs+$vW+r?RDn_!UOlE zO%6210j`UqxAtvIgsEVFEaOVZ7y^D6Lpa65QUSAZg!6ZN0HK)FP+-8X)5g(9g~ncn z9_M~B54ie~{A3ue+Uy@h>-sv?xjzew1dP_RD95%qhT-YfS2sI;9r%T8?*+cW`CYpB zWL!!gBq+M(ovb4<>x!)x=w~@vZImLVpMw2_+h`^1VAV`$e3(HH3{ZE__k1(MKEQrr z9?pH5(S`QwI#NVV<7EG%EXAEcOv45lMDz6vvlou(7zDel2%^CNOOXPvLAq?0S=6Uv z&NNCi=eksW;RD|;oz0&j)iC@9zr=fx} z#q^fEw+-B}&sUWs^r%cY`wQCtWQxja=1Ii?R}>lBn{4miJK|SBJ|P&>64e=e={o=6 zzF17dJFSA9T0vkzAVI6MMM~la=>9(hk)PYK^r^hwl#H^E-KPcw$!S!QYNA3C`^F8q z2<)Q)MVbRgqGH5Z%N~EBv$N~#9{+dzwaR!+`s2(zSe$3V{SV`gprg5M)jrFG$})VJN8HW)xjtcE(~^Sc{x(=HGyC z#SwYTPRy_o!Xg`z1mc?BX)sK0re6&H3a+1NfgUlx+|1rlFzKLug~Xq~qSyzw#OPXs zQI2#=?`wiN7NazA)NY0JOLGA&#~eR2yua{5m`ZRgTE6}t0i`6K{>JU88_w^k)(_D8 zZ9KEIen=7jYJW+KHBG=6l%QLRHcFLAF5yhlY-4tL=~q|J&8U?pis6(c$I^-_s9A2p zvpUAZ3qGZqmdN<}4Zz8Fn7+8JUiwWspYG8;h@yOw)fCIL2V>N`5 z_PWGE)Oof8v}us>fr|4NfWE9V@zpcsKaedz!xs3yh2EoB$My8bjQT zS-r=h*Ky}m1LAR(g8WGxVyD={JSB(>JrDpZ5{3yAdm34t#Inu%D`N@=GPb@rz(>}9 zHJnjtq6^;^G`hV-D#-AS{%83WN=G9HSv>MB&vR*b5x?Mah*&_Jm>1HbZ6xQfWP!J4 zs>ZkPkFLAIq!Ry37c6mWC&qX|01*6e$V6clajgAm9ff<@C2MrFzjpy2u)y__vPv<- zoO!p}2m+vi>obgWCvE99Lx30=1VE3FX8%9rDB8TTye`4Tso!@np)E2m?eqwe(j1;F zW~iS*c?hLrq1uVxXSm^q?hm$lbG6G>SNkHntD#4quTN706-lLKX_@kt0)w&Rf{Ga832pxx{WNv#s14gF|5Q}_fWIOCNLySaiX_3 zqIE0)c?_0Qv18NQrewa$_pD%4d+rKpskXvra2`%a)JRsf4XTE!8o{O;ZFb*1r6FIA zOjuHv>$?yD-zgBgING$8CH_dykT2eC(kpwbm4tA&y&2i>a9coy4(7sd-Jrn~+%@;m=OuYdZDcZ;`!FVzWP z;mlT6WYP~(6+)ZohHc}{%#yixlS^MhLPOrp2Ry`edW<`)5gkMYS%%zXm{f3BF#GYA zh(;hftD{_Mq0m(-DiPBM_;V%b`e0dgQ@>B-A3if<$3-oQaaby?G!<*F9B+_%oZMrS^tFr$Vjd@Cb4I z#ouu?;viUv>W{?DV)y}2^`xS*Iq(ppI`1KvF7sMQnu_D=RV{A;#gxfdWD4!?sDzL} zJVpkr0~E<;Wd+x)qz!TCyL10z{tXo=ydl_YoL}K-pYHSV|153pK%3`lu2|SPH^?l1 z5+O1Fy1KQNvNE;VV;A)t6rSe3t?3d zLsCbKM;38_Ase0Ig>Zed{*>e{8%Zy6{T5^~FCS5Rfb0gVHGtVPL&b12_r{qJEsrT( zS|?Pdgd0cjGVCjksLdV({)IULYY~!(xX7Rog$_3(HfQyKu> z2ZsV0LGDsr8%z)pe8Gl;{+-E!h?K69|LnUfIC2hYH-)=$?jV#>FpK$tQd)aM*Xuhejv2W ze)ZTp5(UvhygBrW99`+C@PRUE%pI0Tzpe!lj;lANf~eT#hl3M+x-B<2mPF*w*!=;! z$Uc9}sEz!9bAEx%=7vXvPR$}+y=+)XUg`>^$Eh^z_QMgM=}>$lVAjcWDYuw*uoR#a};~iu6zYS}5!*rxMF6tak!xly&#s#|c%GcQ~o}AGK#H)hJZzwXo9n zYqK)eTijd!Bq2?Z0WGCQDdayXi*_e4UWjPw{sg}*foCEU9yi?AQ6HkdQqG z??_fzawuEVVQ!Shd%SXg79Q4)M`fKHGQk4=ef37le_LX|WUWvKpAiIL25U!Ri14K*10TwG?H0T~8JChEn( zPB<;Kbtu>qH@+pi=7ct{kul z13T8qlL3~sOi#T%B?moRpaw2k7Z%)G&DO2mG^SrJ7-ST=@80szmDbzItScSU!2%Iw zqo=K(OgRcCx&A;CIuSU)^@Z0S$BVlS={zr+^~uj2+gj&KY16^_ESSJmwgGia+UqY7 zl}*pj*SFM{C%GDkbCSWI7`hIw8+x-&<8`-~4zPghGVYVICX$PZN!vyVGanM#n9}{l zyIlV^(#L-C0-HwQqv3U;8 zlG(9Pb?Xj}nUVhid-Sw%0I@#fu{p=2ArP$Ehm-~J8-i^Ia{PK$a}dVJg;NDCVUjVS zqDE2Jc^a46_|*6zUA{0NayQsC&_hzL#&~zr7_e;kPzaDa<=le$f3VzXg8DL-6?wJtc1)5l1)v!UdLhq`Tc0Bf|954nE3z zc+*YsjZiEbTH$uq=lH!0DhH=7fK{79MM?nM3=~di2A}ofeO*aVWy@AAn+Ku zU*fVNBqlIm6`$nG;8J`e5C0vr+RtJ6^f**%NR=K;uMqKqK2rbfFA?Im7moGz`f!SW z7)`?N1OkLfvqiUP_B0YG-!kS~$zIaSKkh#MjjzBE)%k``bZDw9%LPcLOkqMd|6!~ip%=(CYZPGLc*S? zH06MrC40mgZ);DDlWPJydLJ3OoPPW>M+ndLj9@^a$3EU-XLQIJQ#m}33&Wz4vNqp4 znc`1maUP1&nVb@QL{5+p(6rcz^}UIfN17s;bENTnfw zt^$cW*PP7Vx^-WbUub}`N^tQnj+xZCVcW$M>hmZ;NT6z3zqnIms4m)p;FjfwScYxd zhs$~(40cTcjGrZkFK#TtWvL4bXL_Jh1Ag;Vl}!BK*Kp^lwFHwFW);!oZ7uNb_a-F+ zuOLCFR|yAQ55zQng+e2ncVpnm^S_=nNdkglkb|Ax_D^~kwPe%erN2}!>FV4a7pu{K zH|>dcR27h{N2sm;(l$cYV$jsdaRj|IPP3#aq!+9kl?6VXtBK?Ew~)EVTl*5wPn@zT zX07Uf&M(S_h8S_JsTBK??l8wV-5#MBNXE}$HezMl5QgyR2GmJXM*PYuK~e+f6B@dD zWk;9G@Ldd$Ds$6UNlL#MRfN2|Bfmtf{Wgw-m`0J0GbjhSkdURv{WVyU=CV43EKJ;q z0CP@JLvqeQxWh8(ujw?0>b9kApD4;f&I@cIsdJEGe#X zL2SNFE?Ui76N@1bBuG1DnWQ`68$WpQ9+f?$!Ts8(>+43J#6GC=l$~wgEl+3v5dkea z?RV9JR#DY+bag8S@%3XRe9OuGzEorH!L?!XT*24k_zmdrus! z@fPW8x=^vBrPIb2{B&J3KQulr;DcvXZigXT0In4w%={cWB_>AlJYflxq(jThXO%{YfYw z;JJ*>?c3Q#lp@b8bfQ(nzGt)P}G{nLPK@RyIJ|9gEQiLgZ7injX7P=*{xGZvXi%`T?v zxYAVeHvlOwoWPxBM2waD)KQkyv28z*e-s_DE;idrpgok9jz)f40W{n3>ZqKKm7V_f zoLqb_u@r_^=3Q5-UX)y3oQ-f*WH>GG{c_R2Ye?(E66yG3l0qt4pJe%$*)a}vz9;%e^d#~IenHVGYo>BjZH*Z!K*wKE-nz7MYlS) z3#j|{;g-jG8wDSyVa`rTC zpi&vs7(wuULy7>=O|mG8;LQ8C+w=*kg>Z#lIS8Oy`hnKMYwX?YyY3HA%_*;S_<3*- z&MuErt`Q4k9Ph_pf^Iy3-CZSajxK-_%S0)@C}&MnkE^s z*Ur(425N{9+b2r{Zi_zt`VuW-<1)%DRXP#&Uwol}kHP=S)-Wpvt)gdYderJ()FTAZ zf#;benNN~ctFn29`N7)Q^g+L>`Mv?pXI0<%{LWQ0yuV8%_2klHfA+f$FQtO((GplYo-tv!S<*qCiND{F%+DXZ#zLL^+r^5;dmSgjq8;5BB{X6$nP7rbhi3` zZh0GI6zY#AfecDDNm-*=S@i1$&KeDMVa)Mr3;(XjUVGC*9RwBTNi_?xunMUr7}40* zKsOy=w5`Xz%pqmo2wS_#&O16yHk$wsm6i6L!N!w+Wg=`8%ahd^F z$x=-a73oDRh=9yWz!d^?c7I1vTw&TPh+h;FqgRMVQ+WL;3(3HMr^%FMYgdd0C+yUv za1?Mq!t$h-D+z2#@h7Pl3O(L;`Dh zIcYqpD3z#)XjmfjPh7L)*&x=qJpcI7MB-;^MCzZ9Z2Kw-_8+h6mgn9NI2Ya&YFn?D znqAdX-c!7DynQ~4I;ZMW)Cd62f=ulH^#Ys?iu39nZie}O!{X>nGS|E9PC7vPy>J0n z&2pwzUan`2j_Bz+_Z|M>n=x7|&3LWmU4e28^}+@zWdt(W^flyuiSptOMuf9y>YB+K zn^Dli8f(^2A|BGq_ao;j#j#Y!YVQjIFr=dqne(`}elwx8PzmK{tyadSw$p1?(OC=D z2R#^T`B-(PJIbPScC2(7O9~m=9I0gaC zt+kAiN9S)D&?FDGlS{lZkXt{Ynyad5)CzQuyWLQ_Mu(jl`cy zZuT+ujS1&8_&Ac>Vwu5_+`w!i13AD8#AfwUV!Ip-Bwvh zI^Im9#f2^#*k&){XD`SXQB_^&<_}S2D=qA{fp34$lPKSj_p4kr;D-*Flm--&(z{vJRbGy!T;X7{voH9+fl%j^d zMa$FZs(Oh+?QT|?bbR~<#O#k}Cxk>(*VWKg9nR*_7v{t&1%fPtf<5_JHU1iS=K-5> zFr#tMTcQz~kHjD4_m=Wp1?^=AFu$R`zEbRoqFb5@b6RkqL%9}nGCSW|H1UYLrsg|v zmGaXME6RId%+s6m+mC2$Ror75sr@kr7$CcORYl{bmQAT_2fcR5Ruew~Z&P#OCQqC3 z78bbFEWD_HPlw&Is3Dm7xat4IQ1`c5Is{x|(mYA@BU=>q=qIf@L&Jz3)k@tw-Tn~a zwGLHVu2J5*!yLfNr^@bFXNll98#kXtI~5Q?RNh?;|UmB(yqeMSa5BCsa&DLi2UC7 zXd}-?ztQo8{5=k+HIYLK1jYLF5`)z0yl@#jV&o2Vv*9XzmtO+b;7uu%t%TXGQnk~6j(1pn&L#aW3T30>AvDd{(kGY(*=o5I@4BcTUKKn5KK0gjpRw9Zssc0DBi68VY-R7rVG@imeECFrQf z3a8^7ZhsT&vMUbQcSM!nS-;7`Ap-433dpIg?0F6-N9UWuxGNT%Ep>0+t!urf2&2*D zv98krYi1&lK?xxEuV6J@Xy4336k)9F7KdmXvv86N{26gYd3GxtotlP;rx*=2V zft%Rd;exS$3Kec1tRK_u-2S{P@=dPI=1=4$hx5kEYqqw3mPsczcZSzN^kkb>41iFj zP?VKr^O)3rX3HaB3*4p^`}{HO=1AjQz4+Nq=@oRt`j1b_594^VDvX<}`}Xu0O>)#3 zK_>swqyF@IFWAL${OX(X+l;y$6EzkkvK;eoSMU;HHWRgrETNh=HsYyja{xuZ%sPxm z`L}L4ER||7Ef&x+5M{v~(mxuSvDY~gC<=Txa&3wD!N1I>ZV$){Cv|)ZlnJxvK76?h z8B>=+8qT2g>34wf!%q!~Jbr9AvRyka};(~}TS{>1_KTO$@ z>LVGg2$vovok*~=y}LlNfBjAJjk+heIO>g8if8>0;=JBC`sVKpNvdJsy?4tq=^hH) z%e~$U(vd6)OR_9RGs6c7@@-)0`V(h_7d9BuslD7O+UBq47u#kc8>_M1ZbFlgGpcXW zmW+KH{}A&?*@|zHk>*Lad7I;KX`5RwnUt@$qSqmQR@jaBLQ2HX1ax`H!hLCG`sh(*RuZ1 z#%D{9JRhyBc$TJL(;Ra@2|JA$ope~tWqpv?kFjlDK1;9C&HbVu8Yigs-~7ns%}4)3 zC!7(%pL3LDXe>$i&J3x#Qx`}3ZZ}D}y>jT#wsN4X@==pgc1U|sYzkeU$i>jsQ;W;{ ztYoc1&FxuApmF0Vv$VNXjpREEF>rn(kfp;~zyr5SYFyjM- z)ik7enm&s#W$R=|<)s%A&x6Ngeoje<&+nS6SdDAiF@&j5TFeRX{l{f33$R#cr6(+s zL0pBh;PQCd#4BcIMIaY((EQRii7n3$2JO|;l6p)seUmfWWc8 zn6v0YYJz5X zu&qg|i|b9Y-GorQbFrjG;}fFG_OrfW?`s#j_xMk$nAqkY>FpN^Q~5YRtUpDWhydC@ zJqcfkstU2L^g@-9jK0&m*Aa^|JeskKHx7%8=Ar}v_h z0B9Kzj_IGh`rvVvwZ#0%`kt5Hzj{MVped<^^=^L>uuz0dHQ!1kXKhzAkU6CbgXh2R z_b&Ii6dluSO$l=JjdtOcS^SuUcvhYKis`-jvqEK8{ujPf==3>e2i75D2YKfj797%b7~f{bPM+8BYTA+Kl}>&0e?z5wbvkrtSfzI>B~$iZ z1UC}Gh+z}c88CL;%(-kO`PFmm51lDW>Z~|v2EziT7T9W0=&c+|x=^WYUe6`icaXXb z_dD-?+JBT`S3qv}#Kz>1=PFquA$T5*5P~%A#zL^#k{KSbtW%zAP9=(yDKVI7c1!_* zK&01kY2BwC!FEpIL#Un#4=iV05w)w8Ix>Ss;8|JHGEAfMK?5Q?Cn{(tMBMb5hZye5 z`9hT;w-)YzA4vi75Vv3}+4%}-r-J<-1>AB22dFP_I`AZe~jHnridwEcV`aQ~fB>3Uw^)NV2;88MFfm zHbG4)AH$EsSZx_lC1+_ag(9G+({f8s`(2jmeX>YE5CiwnRN>^T&go5w_7mOtE-!-N= z&ySW=Y}`fRE{4ZV_uXjkst3XwzTQ9~*k5_Czw8r8XexPNjLzrj#N zy)9+Q?>Di-b9%IoyO2j6&Y!x?Aph1q#c&FM*Q5vZJbOdWh{pdgLjer!=b_mKauJ|b z2igZ+huZ4TX^qmK{wf8`HKL<;rXFJufK#Hj9I~R%^f?*MA~{*Pq+(9ZkLlJh`QRH^ zfaiFi;P|RVbDb~-3WF$}K~%S5Y0tF|UPI{crsVV5F1xBP3$bC}>j%+;cLe5aMl1X7 zhZZKfajFz89jGtUV%4&vh7*cLuhVJ$c?;(cyJcf*=*YjF5JdsRZBAxyu8Rrquvm^0 z$0(kRm`oyViE#DH7#pcS=@a8iM`7cTrf@%u(!Zg$` zr=lNkLtsQr*HZVcZ!RG@@9M>2@nl}XWW017cDzz%Z%uIGWabx4tjkg>xM-y48=K6O z9{v6OZ|h7iUFkL!op`g0cljl_N9yDAk#D8**2q(|z_;!Rj#LtFQ~$KvR!|_AJG}>_ z;B)VHPky(4q05H+dI;J8uJ`cGkVfijb`leidIaanXI8kl3-}!rQ**=FMLR%d)PUpm zPx#*Gfnwnz@42E_w2JsJTRho^bM}v4#otP6Zn%U{s`d5BW-oAn|0cGLJMni|fD0Sh zQ)dy!OcIj@szXySl;1kR{eHJdo+&ZY`nxf@77(UM)BzF#3l&TKX3@Mq2Z&GP?2H@N zHXa2E#ctS>{qjA0@JflRrnC{nwXHQW6ga8inVkk<=|vWjy5M*HVZ(SRBKVXO9wX}K zL>{m|YPt*HzpiqQ8F$U{4_MjRl_-J}_}gPIp4)?HNu;-xb?DWvi9M1&jV2SfO6XPZs;pvwA3yVgrmY8r_?cB9-%S%6+}GnHaDeU% z0;i5)Nd$TilplbrCOOkD53DiZK=?&@n=F5=)DA&%-Y>;qO!ixA5F$QT$2>P^+4i7? zD-%f;sJHD@gfPD%Ff{kkfnQqKbDzonLXfqZ$8Zim41PswQEKLbeQy?jU+u3cXzujw zwU*(cy?!P%;#R7N-2^ceYTZsQE+O`0X#lmD){2Fc_PS8R71b)S%Ora=EuSVj0fm^> zNG>X>l*vdqeGB_mvb^ED2Mv8)%D;Y@nY)5PFULQBva%)=;Vp90Xld)r=f~&@C5*tT zYoFDL_MT>LFIZak6Y#IDhOLv;c5Ao*v*MyaIY46_-<`e5;*}h&ehk{%z@wE}h7nY@Q@#YUHx|qpVfZBn= z#fOG`AZhmkZY>Qm{49wHMPeaqQ}WvKUTCXSO{inW5zKFSmxb6|6CSHc*n*rNgzGQt ze6%4qMdVj0OY$X8@v5qC-B>XfMO$fo0U2yZ7MnY2sqxlQ-|mVo+h#l5A9v0{6;p|w zq|>f@etT%^ZN{YR)c9BZut!8yFTMIkh>Ds?mk;Z{O4SmK{TDOGNh?rj*jK}=@gsTCIG%(z`mj&)`YjxUU};cuJ*B z>{Hp9j-t- z1qNtQpiV(2LP7#^%F3|S`88KMwTgwGEtTDrCn*4wiFA5(rKCopn{yat$~XE#_*Oan zOiWzB!F`_ar`^ueRS*MuL&u!^vD)weC^SBfO0Y5Azu%5G;p#5UDouYf?h^Elu4UDm zdYiu~S<bO3qZGVvnWWzc$T=TtdQ7vu!s-E)%NBd`F0fuJZMD1$j`?MDzxYr#WOMV< zStVw4>?C!dCCM=CPL+0h6nJ(O@mp? zngG-c9>}(d%u@nach``%$Y?5tQ$&>I0>*J#P?|Xj6A%FQb8erIlqKNT#uTc3q!ic| zkioj#j}v)-1yFuPT(&KF2m|kqNyJPSr~ci%a$&4b!wT%*l;~!p%6(4S3Gr-^S4njV z(Sx-1T^>GuKD24izGg(6&gNo?5J?!(p3zaG*wMslE^QW^(H~nM`~^IVQ=7{u;lTbx zS+PbeM0P}|j?U$dEOR6HdY@Kvx4Q8Q{aEWgN}P(*ip}~0)HejzsmGFjDdv%4`%k@e z==9$AABQ8Qp`cv`kHJIngMGxnKH_WHM zU={)!hFA8BjdMt6cqK3R^pKtUrclXbgFu3B^%!W2Q)Q(T!aITOz$6w;>8g80$$0f~ z&#$el#`-&q$MEA$YPVsOsh|rnbys~4&@_5fvv$^N{3;ag4UahDPXs<3N{yzjM zaWFkobIQpMk&#AEQe50dAqWBb7>~<->K9j^UQ;(Z$w<$Oo2r!PPv!-zE~MI^6$5l!&+D@l{;B+RZ-CO(C0sb}@&>AI*AHRDE7LUvSC;$0KtlX|s? z@vaNe+~dd{sXM=n(3?BF&fZ-2FTRv8VMnM2nQ5dvKfC1QC9fmy^#zKV7h7)F;(iHy zJ;k7tTyI#wT-b^ERL&HH%oDY!xCBE!a23cMmVJVvkPp;k+88iYM>lZw-)>Shw68Mv z$YG94*@7}U7TJ>qHO3_j@C|n^+q#rt-3N?RW%c|CmN|K@*pjr~yiwp(1s2~)$a zYVQba#0$Bpr_%LZgO4qpWm|I;)?Mx>YeJ!?8}YVhU%Yr(9;;vjtEQ%>OxBoW8ll63 zplRWFLhqHb{|XX@lVukO?4ejoj|1v63!C>EYzYa5r8h2h;+$FSnkE)c)r`KsG2#Jw z4s*DblP71@lYM95D=VvOoL*FXx?W4Ao|NWui^KspOJ32i4<~1ce3&CC@n! zMi!lX#(!5$$OEX9c-0VOhYG{fOb+>{N?=S4G#2Qn_)dQe~Dnw5mou&Ciow$@C8uv z(#udF01Ev!zO*tT!i4nUl5=pTmWG%Y99W+-Rf?BoV`Q>PchI!3Qnc9x_h5>|E0=j4juc&**VX*OVlXEpPV#O=Z^i??b{yQc6%Nk~AB z%-yX#QspZL_jy)kAK_OrO%}v^d~S#qTB^)hgStyp((1rqMXJ-3GUp{0KQ0eUByYmB zziK3x>7;;BiItTzp^m?JkgbiY5Jj={%>$LUgG#)|p3QdP?Q=-uYjmWD$_=!4Tk2I0!Gu{ zGJhX7`)Tt~XS{oZ7lmrZrUbbK*3wQ|pURA%7sgTbjJ&|#1GVMBZ!Ahc&4QYr4p&in z-)1;CF#3`Hb2WsDEy~NSrq|Rfhq9-5)TE%92j~vX^j}E%obPr3{0I_=N6o6Aym+0E zKA9BTQgnguiuh7-)TL!ifE^Ph!8qH(+&LIU<~OYHbux<_bAtQZia`EhU2jgyg!N=> ztS)f%3l<>PUk8iC=QBV(X()Isdbf$l&1zn!mw@Ymmm7!CMe8B_aL;Qs(@4<${q}qZ zpTLXey*S7(Yvi!D@Q14Uzq5u=|G56pzG7#RE~My=dqRaxHRrMN3E7#@DeFAH;au zt_>mp;6pCLL(J`Y5$wph-^7eZ;()&sz*q5js`aTfQ8?Q@AB#qmGTSdQXpt7on{Q9I z#xJu$`qLt0G>FD3RfT8Q1>Q$3o4Lrw1P2Zax6QzAVmdg~5on=>Ph91H#dgGe%2r6r z0y{$jX$%Jb^Ufk#4wPS)x|H^soSVzbUy%fN z9m>QIfOSYT$dMZ%kX#rzv^RG{ZOBE)FWT$sVH z%Squkj`y%d43Qp{drFF^cIy@_dMjDruv17Tgma6Dv1EeZo&7u5WjDaU?a;D(MEfI4 z0i!5K`i}a-6AL-oV{`&!=hS=3pl zzY)@WO4?oSmxlH&K6_H%l2zE`c|sIQvwk*7uYRy4jy$yS9?Hm>`;7tt(7| zyVY^P+^*TZOsxN4`)NNI)YCtwgQ!{}=u)bI*X;QMX0!+iG{G})4y5wNh1nqnBqrPe zjGV^(-xGjsEGfD>LM~80ad&@T348=tL@6tZQLyo6wfxW0ND5JZC;DUAF*_C(>`#b&~2i^7z1(eZdZCx`v%(bSKCb;D&8e>gMf*IXo%~WwWvw^NTEBp5F#>?TYYd7LXZ(OYqsr zJH^Zz6W)F*OU6KZ&^PaYd5>XD{^3yw{(h16(wlWq9V01XtI--lE#0L@c~5FFr5m&3 zdni=3a+#(?BRTSWrbo|ZKcqT~Z%qaK9&K#X6Lqk zN_hlep6uBU*__6y+V;1YDAB9u&Y|X8D0^2j+P=oz|MddE0Lzms$*?;CIzTs>BH7uh zx6jh(j0Y|c<1{!w1eE$-Gq4Kd%$VS)lraJI|EifE;Oxb33LCw10{{cIZb2vP~F>mKYmQ`#s z$q4+#nopzK&UL8$^Fw>bQdc~Rh35!5wDb~#gNQ3kn6*}p6+@2IL0CLDI2YO67 zM;wEbA;kW?E6xuc7`Ow#x!1x&QhGXo_qZclOv;gNO*CMuWUbr5k;;k9{6 zI8FbuQY)%8HtH4g{P>YoVeuHJNbW(TkegK@p-VefU?+hUN*;eg>}i{MvYO93m5ALz zeJ&F=@=)nW|6UiI-$`)6YO|{LL({X8ikcCz?IPLBZ2~WOLkCgR2`I zmoyy-+&^bpxKA%IZe(wm76KLlsR51$CJhhcqiQ$&%^(Y=6G1W&>pvlb4BTZ#$LRhp z=LxY-urxdd)5|Fhis1!m{q8d3P23922r$2g3e3j=*a6Wvb{d_QG!vr5%blMN3EmL zhsE6flIdkQH%ubBHb<@gv*0^a7@v$@qa%jyeYPV~l>LS@GuHCoXI0iuLyp^5BJf?t zg2@!Z_J1^2i+2U?S4$3s%lz1MEY!_d#>TQ%j8vIQ4S4eY2#5%9R^|*OMD8k)>k?yk zg-J205gyV=B(2J6K9$CChwSAg)LDe)#8PO+%&}2T80v;CWYrujIK*;$u4!Hqv$PEr z_M|Umekp=DVeBAWu4QUs&~YrhOuz)>rY60v`(i5o%V)@d@*N|Q58WZU974oYF^u2* zyD&2xfJm9O^GwZc0IHfo{KG)cN-oMnDbZ_0yw*op|BP z_{Ofy`@K)o%iJ%J$}~jg7c%7AmV>@Zwu(547w$s?o z+5hLg-gC~^{cW#%euFh@W~h&y=6;qXzU}MBd)--?Vm6DPTdWj7%mJi|paDX!_SDzQi z*R%nk2a4fIM!lDlq))oULm+C~5bsg3CKVf)5qc}_)GS^=03`~EJCrxwsIl|EpAFo| z@>7g}?YHeT!#K5SQ^1&VK{P$CajpYzv7i1we#~!ydws3lB~SX<0i@yTpj^5?=G*U` zoW;B`Kirg|Ir@-k_vqgVQthy`=T1^&EX6LEliO<6!o!-j*b^m6WF|OVVW~f& zNU1*nrTKo|>0Fi~!y=pMp6gnEEZRNFn+CR`#@~S|N~R#u)tp1~n|=31O7fmGGo`0` zd*Yg?Yc8|Ei~k1mKo@)!<5_q1Z87q&sY9Y14eu%SRFF7qzlTL8xaP|I zNo7wWviHFB?_tYdn?@fj&i9nSnlKFA?($y(XParzgjh>I@ilT8)uT`;(&&=nFAIWd z7T);0hg^OO%Cu6*Hf|n!F_+2wfIhsL6dcvPN*caHRu6i+CZZX2=g^Y}3y&gHHV^E! zs}L&P^409hIDMD^7onXJGGF!ubi%eUN_!)nUDh#0|9E=?Jekbjqs=T40DB7Ig)LA7 z3CAtn0>1o7qvSFlum;ZyCd~SA00rFfOHh8E2ZLN1yP1rx;QLJDL&&#kYc`_4pvrP0 zSm(e&t-=if@QuTMgdEGrQ2SY?=TZRLpe%3-#{MV;T?LbqfB$il`?|qAV$faCK3hP0 zQ8!>^AsEg$tAq-J6umW&g(&sVWm(`xwDv|A^*QX(2Bv z=8ZtLNpWHUdeK3=mWo#l^-18D`b%k=fD}j}AngcqAxyk6uAFveoGNm*r-|@C>dlp&@DcRl zi4w7V!;`QGL_Kr9|Jkxi!^dcH`Y}NF?zpt%^4@+fIz~Yo!!uRH^%K=bSVDKp>BqZ@ zWbnB4ad%!a_~h`?vlN^@cWqG(-uFd8>|WcHc@o7J^FK)7)UVqzhwfKTlflbW4>%Z6nRfpqf+KvOvAP+hRXscL!VDv#(nR}LqLG)aB z{ZAJ(a6{}q5&|J^Lgr`(W$hlVsMvT`=jyv>D1&D>0H zLIf1sQE_^m`)l^!!0P4%w6i^({tQ_DF+G-$IkJ*p?l!FLoiZjaTBquX#_vjb;H{ww zUE5@^4wzHW0yy{C=-;1l6IWf02*Rf%y-f}((oy4V9+7f~W??l7^utnqTqKod)R28O zn~H7-$Mm56i0w0vNNB58yQFgiKj~yF;GmasL()XtjbUktdTEr%afPs=-?AyRGWA#q zNiO_usgQwMZT(9u-0AOEC7K__*kJZjH?EV0Jb7$EvEEngm%>?Sa{LlhL>?AcfYNn) zhWQN0M_o{>%6hUzf2Kb3|H#zF0UdJ*(E3vx`ak@u{Kanbom3G3ovaY<3uSV6LN>YB zViIXkt_23Xlj)O8w}43F60|Q)=Msm^J*DVtuRSwgK!pjGUUodik}4~ZZ#3gRp5E8I z*@d$+^#c^vH*WtY<#g7h7C!8L43RXObF`M5FV6D8okoL=O!xOIdGIkR-z4B!-b327 zhlD)LbwQGR(~Z+Yu74adDR#a4^hH1Qm%A&_x2Y#xN#uNjunX+WXdEc7D{YsvSb5x| z$d8eQqJOybE8m#TzuK``hbdanP+2~^!zPjWDSnJ$bB|x-{QJ+f*j*qGmN?I$oUsBI zpB?!TUvieZBlDw=JcdZ}<0q zL1B0(9_u#9^)OZn-z@pmBv#;z|7>$ufqfIQ^qxc4^E1Q}nC^rCaU{Q%FYTGG3y~6i zaualc^rDApYcIqsWPo4Znn01YL(Q`+Q~PU*YkDH+9+h)xa|z#nc~xA(VlZ0n3CP7) zc>F1Qs>y=Cn!g-*jOx1q2SOyw&E%Xww?uDig+g;9xOPVA&m?!f35fK_yMdmaxRv}? zH_$q+yONF^FqSnC^27BrK&=naeITd^9NnT-!oDpiWV>vZp#tBn#>P2e!O$mFn&pt^ z^izi5!QM?xrkTUJ^4Qq4kx1Cb9Wn-4eJDln-XC-dFNjDl70vdh%6f~bD{62B8ogy> zxL0m(GFv0bhj$80MZ(`lXX|q{>p**6?@qt+kP!)nVxpt{-M&1+ZZhoUH*W2;^(u`J zDXPw2(nnc=tbq_ukxF!hq7zsm{#~UvK4hjf?h}CC(e*qE@h`! zs=-~k%eHD2*Z9pup4g<&;#^~DgUiCLVMaRQ%gx~$)BH+IAsnU&SzQxvt2f(Tsqpr$ zq`zo zQv4XYjrR;4xOqpTEL|`j#R}AlE59i1eQ9NU7?cUuqVpx}`SyR@j`_E|^poyKZTX^J z$Fs2k)sE_TS*F76FAy6alo~}IDX0DZd%0*hEpTy_S@R^p6lrQmb&rSUpPmW%DPUe* z!)V#-M=Ry>gsF_z5rmsCpjEagt)plU!x>CJ7tObn)e$6+gDH8UHJocV;${ zG?kz4kmZ$Mpm#iqJp`pIyFU$H$j*?%MAF?wzDbsX_ts-ZgO~3nA>VVWMqG)zr@C-{ z6rN_e->5JyO_3q4&|BAoF&rWdqL;v3>+mr?W3FW+cgcwNX`LiR#V~4OlzrvZKfg5` z47~lJ-$|VuNyhCL_S}@h0-KC%zYwpE;m;(427UAce6TYEJP?27n{{zC;l`u)bEUCr zr2ZsWAhfEWubHbGvPA6jd-GMjdG}0}^O#nJ4<{K*70j0D1~mw3@@O;SJ8H zMZs^wUz{quK+B9x!iDhk5P)SYxGR$MnVz?6=w~mJ7X?rX`&C*|wA^PH2e^_eZ{yUU zy~C4`C`5S9+zS6o3kjS}{ZGRWYj7a@3*yyD)$qaX&nQ&ao+(qW=0Jy7$FGCjiVrbC zWV7zNWJu_5w?e|jMf@x%!r|fy;-FaEhZ-3xQ@sctuL+%=xR*?6kah0o=A~Y-dXt`B zJNU=8dsKxRQP2+WWGk0jwVmL%=$v)$?RPFbNXqR{scZckmfZC5u^`gzxRhEc`F#d8J0|=eYtqzPB8zca%G0nZ&q;h!Ib`NuABYv-YOm z83vtf<1$!*p|FBRaG!=C(2;;UDevDEFo&VR&!o(tdq zMP(I_T>pOI7ub`|`pp^z<`09kM3I=?VESTW6J*;ZXVNwukdlG zbFPY_UQ^9Be$4Ef^?UXn^Lx#oBHB^9FZI9=uTnPk7m+yem@1xMb`L0q=P=Tze;oqxOgPCdXnjTLTsTWpTK&B|TEwEU4oF>%2n0q+~msOiKad zOC5R;3Bn2k@P%TI`WBhbId49wRYVH|zaRrqCAI|FH~#ZdFS=i!zG7jfK}K?d4(bTY z3q!ZT@k_;9k6CN!jl%=Rd_D@v5aNJ};6fC`ug2AJ;*B&EM9K;DF;G!HGk)&0-8KLQ z*eHF^E~l_raCL*bu@3_RH=h3&oy$+W{>~b9UHG`8`Jv&)j(HeKfwO+8u9b0=Zrb>& zxnWe!dd8i}r1NuEFtMRGUG*(D@2t}~7$Y(kR{WYU9+b=uofK32?!TSsKknQqc;5I^ z*S&a$&dzaoBs-z=+aUaQ8Vt>&kuJx}(9h5CW=_Y#pE^3?N!o^1APq=lsT2kJ~a zmnOBxLQ+-=W)*g~_!QII`6*a>l^3nH5Rsfh9C@e4G>Jz%KU$kFjhR&VJ-eih7Xmg` zz74rNuD*fP;}!zn7Ft?5iJHP(LgTord_4GizAsT-nBW!Y)-CuO1<-t{38 z<2AwY5wESG?^8OH=E#n?WYH8~0*ax({LAM1t5~#slKkT_A}txzdCRt@GNq8gV zM!3YTBin*H_0iSWg-0e?W1SM}n1T+p(i{Goiro_{7^%z9`W$VdA3M&^QaH)X9! z3+7Oh#CCC}Hv*=GXzzyDh&O3J+=_xM+jkuFX$3e1F|(um={`Ur+Udfg1?vwPUhN;DfFgLlmvTI=C7c!rpWbM3RGBImMeJa0gF z%ZB0D_$#s(5|?YN-qbXG`oN2L77U~1^rO?+d%KS_HDRKis6owh=!9lwV^f}?)w+4nEj=QWwo5gBo!`sz5$ls? zH!Y{d3~_My#}d)41eF>hcvXCN6kk|CvcgD#lSbl6^YC~Nc!^?W^7stINqwZ8vBDE)T-6Z`cr>sB-3&Y$iEP2W2z;CISHMTnN~iR*Chk_b#(KWKUp5!ahn=St5 z^5su8jU{yaL4Cy9F|(!aBC1K|K~D0E!r0SHOV&Zz9`QUIl4d?-1ZJB>w6=pg4+0(d%IDT-#h=p@o9B>fC#AJfQh83 z$k(>|({@{VKJS3SDFEz@fuA=Gf&sjtzvqX&_oEHaZA4W(|F6*b=V^6Xm#BH>xRc{- z(ZVj362IzUw2&uf7;-ed<|sKOmD`tCY~=A;RYS7=`TmH)DZ})Xi}UrY%?}=kB^}e7 z%R08IGM&Y{rB>YO{^#&h*AUr#+uXDd$rQM_<{!)O>X!5 z7+>;2j64_b&`tMW+I=&W-{d1Nk%iqM#ESF7OxFDZ@gn9NzYoo_3-0RWPOp(FiX`G_eM^Bxl#~R{JAexS0t;hr;3NSE74q@ zuj+5fIsZf(FW%-g;;_!};@Hi(U|6Y5Ub~2R_VmJvOpE7vN%--&vjGdRJGAE+*z>#C z8BJ(K5$8_T^eD*z)(UL29wq$$$q2VzU{JTKY+J@mZNQ9!)S9N`pmcG-yQe^P*B5vI zyUn0nfbRXfw-(zl|Cu8e0MOJI=VbbWJWSon^syN_9X?*s!hC_7J0oCz_CJL`8<+nT z`EK7?vszC9uKM80NQl2D4<*Xue)Lxre>4s;VJZkWC|csk5gSxdR7RL_zQ>`cpCr0e z8267}RT}a(gufiG7(I!+@k@_>h|qtn=kN7A4=1gi zXk_U-wF^M8G4YiYKRfM=VYa-3$-o?cK6pQVJn`yVk@KTiE%G6fS&|9GC<*?Ikk*!mBrG*BJZ0x{OWd4TC!#fowwqa!_-Z$sPfwW0t z#>#Y94TBeW=Pulv*fJX5!P-YotYUnpyfmLAvI<<+S9L+rhD-DCl~gx$M?v$@?XaCxe%}uukBYNrYh9M(6b?s@ z2Cr{Qk$~_2GV?u;xO9bxYH)!5UfI(~=MB@rF+e!})Q2t; z`rv^H_uPXE#vtml7_L*%m@HLz1Rm{h#7i)h6?pnq%!L@z6&u9?vo86cNvl7pwwd3a z*Yg0&&PwlLyuMzR(p|3q6--Y-6(lC27I`2qK0Mj4xzJ$IFL6D+?D)N*54sD3rX1Hwm*U_B@+rKJlm(?T{LTVaD;~F))d#i6?&5E zXl@T9H{wUKLY!gmDB3+ta_XxBp|ko5cSM=v!0P^wbK#W>tEwu~vUdi`u!t=RcZuX( z{}fATW{$^#gh(rSyYsOG^iUZQ?AYN|?&y2o9xm{Q>}M$+m%ySD8FO zVA?=uc880`ig4s1YO3vW6K~*#+2JNi6Quc*pa$-&Nu&~F)E0Y6WgOk@F)LINY3nhw z_j+c@n7;o7R#+lxn?)b^$h9<}8>%E|xL0<;-LZ6BiH+CMAt_=Q{!-8$8w{>u#U zrlDJrobfI!C+AY@WSA5tk_Gd|M)K{u7%pyo8Qap|ji9KHqKsyLhmanQ1V6z>TcfBq zTQ&L|G_&{|K3*`c!CNco2=TA?CyXu-#fO7~i>|{^SEPxp%k}?g=A2YG09~BlLZvz) z`WIAJxMMUp#Tg}`nOOssf;I6SDPG!#IC;tsR8&ju-`SZ&$nYraJM|LHWC`iI zHhmpWMMlvp?>!lcLw%ekU$H5!^xK?-Wnc2r(%J%^6947 znsFOc1HF0O=J)Kb1AtKfZQWMPwa@v%JSav^hieoLLuWzG&$luCXVyK|Q!z0Rz=SuY zcNRg!$xw{7N9g~X3r;t!R-E`(=>x`J(NCp30mUmoxEOjwXvOg>FkeL4-IoVSj&5;RQd=noTR`DufXgHO>be*apbyMoc<&?!qQ ztlDYRr&XBo2?BeghfMqTOam+!053ZWUY1T%d;|d^5VH-DZQlj73^G3S`P|;)iS5U8 zV;^{6u9AmO-wCDwL!>H)IwJBa6d2$SvyjdMh-5ONJmnCc$7?0S_tFSQi%4T?8nQLa zZbE8!-63EjE*U>ME1v8!yQHk!6%Og=tQ9r{mf95;1!tC?2KksJwUnh}{GDKPPi=T2 z^>~3+?z?rObv72jv!HkSYGgbB5iVhy$?5XG;Fpf365WtOjLLd~NxtYL^uB2L+-i5d z5wLRyTSuII!BkYFUC$>R`jny^`OqXB-dD5Vl~u}eCz2_4GTXt!1fAPiO{wW;TK}Pd zew~Mxo)JBO2APOEgqFyyS7eZ+O+m92sYY{eF^Q(HV2{wE0#hD!@9SeFYLSW4FmfU^ zaU*QuRHuwd!wnZh%V9u!@u~67w(zvy#;ijsHVyYF30#d3oo;WH`R+NlGavz*b43;s z^7M!484v(_D)8b0_LM<}mMb_Mb_RiFIdaa#TY$l>_x5 z`weSfSxF_yL#AW3d)`=;QzxjnoLmul3FkRru$TlMM`VX!#agvxXA+gFn<`t+R}Vfe zYh)X~$}yU}y>}*8$bZ3*)ni{7n9xu_CQGfb47b4sYx&f#UXT|XUx`0mMM~hjud*t4 z@#ML_XQ6r@DdWb!qasrv-4n<-2pALncE=I)J&AN_{`@5f+LPQu{AA&3zZ(|l*cwIe z>`#l0g$Z2ZFjd+aPx3w+rvY&M%2d$!xB-!9_A2LouE{5Z=RbWQCBcEbvPMSAsR-xp z%BKwWnA<~oY_M|1NTUUJ(VWxn;OdxK z2M&3K-W|b#KL9c%5)jzvo72!23jr}aK>+ALFMkahYz6OeYO)eo3y3S}-CqKEP2%~> zE0@G0C|O~`w}QUrU?6ZH(=i?bn7IdMFFFX4h0|4q225o>$lzC){RQgTTC>?(+scC2 zNsDnN+skliY9c&nkze>aIBBCrkqg~H2zE8eXvrR&eL-rz+u>Y&4LK(FB!W(-zE+f= zj9060g&Ii|Gz}%x8_Rue&G;*EZ(O=8`+N00CQWnu%@o5-86Wj^=>Q*&+F|DyM-Z(m zSw-J*p=}~rT4&!TZaQtdcX=7deJqA+?>aO;YmJNS13VpJZLC7Cu~$m(b}3{+fs)q8 z_!L6EHiua-Q)nqE%*uky1=c{Q2WNdgTJERPUwtO`z`t&0`a$+J*8Z3)4svNEVFD?m zI+`p6d5H;J94T6&m8)Lf^CMVK|FwS%7srL zAEBDsnp@zh8nwiCIh^U=alK^|irn`$@!afMM`Vbb(B6?eAg*T>O@u@zM`Kv}NwA{K zhs?kgD-YeWBeWzBG7)it6^B^xrw-*^-~Q-UjeLJf@mE@4@!WY!trMrW zB~%oR3QhXMrk*qu{`KvaMb>;6&naF7mS1>$b*aRU4Dn1#3PpU3hw*Bmu+P=UOEZM& zz>+S0d39_;gJOkFlotsULr%Tz?mPBnWi1*@S}sp+d>WONM?K~3yFfFMeS?8ZEq5o5oyQ}%P&8hMK|ML<3`A_LrwRS*p6)1xxyX7bXqUx z*n`VNjJW5`84X~IM7|@Ur)vwbgO})*ks4=w9e6()=S~EB4=FOMF(#U@fwiteO_K}q z8K4D~mOpv_yc4IMD@FpLN z8SgwNMJRdTk`4{f*;b%o@UK3MQ;sANs3`EiExWTf(`NnHhgMAOX~`VYG~#sTo!+nN zVhfx9jiOmuA5hPoiR9Zc+ZccYBtoD^!Hn6E1?~fuMi6TUB{Yo)9hE&5J_hi?B$?{YZIo}rl+b!%uNiC!0-jt=tPqki^~p1PCaBlL~jb(_Okd5 z@~oz$>kS4RyqU%7*lpksEPZc_cN{K?n-hPV=epUBEbp0qp)GIjnWEHu@<}24hY8Ta z#maC}eVGSaStFP{f&+A%xsyae1j3v<#6Oh=nOPzM_Cbm&tBu>hwxFN0xmF%GD84)K zBa;^^Wi-Z4@ufdf{m*30-#j^x07H0}e6EO0MjuIhfM_o$BGzC4_h*U?-NP4oRD%5& zqy2&3Qb;AyYOnQs=aG?kYwG2Ks8e<*E!@Ld+)zk&ru$Q%udsJZ zT?0qJAwP+^tG`V8?aYv3YLE}MihO}Emh!+iFXH<*p((_pv*Q`koH=;gwDh zY&KbIcRlU(4`+Kryc36WwfmE`+sG>sQBzdd+$^K|o>f;=w@E9F4j&qA0 zsr0X&woO#|cv15wBK4cV{KmvB?xXqoq;t5g5*rpMAFFdWdc^V|N zsVR49nAqPXE83O$F}i75fy<+Dw=N7?#{e2`b$&UCQR;?FWxiYh>7P+hDB>Uhqi|-$ zb%6%JIP)B8coWo{yBu9#ifRId`pWmR)3>DZ(^5LhV%k=vY++Ci;6OB)NQkLd&e-u@-n0Gak)jNt&18Z>%tEdcJMa3wl^n=P4O}++?uyy<` z(IVb6)z->Q^BScK`B5aLAS9#QK21=7l%5=$UCxr{9~B*ExYKRz>z^3`q?4p!PswP) zbK_&%B4%fLbLh_&x$yf432=x5IOe)HW%2d6Z$!%a3Ik^jV+%{y%I+N}nxm4w?4P=T zCr2+>=T20h=h*K~@5xadfML7Ojf)sCWS)<K)JM z;MDHIX?7>g_>Y}%{f8dEYj{<*nnk|t43Cpz3!;-3Qbjad`25gx<9G|Lm^xHNo3L~f$0z+4N-6#UO1HT#zTEE)yb53XE@bqAF{eT> zx}CMP7Y_yIZwa_l&9Gb~@rbgd7%!HjGaQ4hCj70*JFtF;$Pm0X{M2DbX0|RAf5A;B zYNX+_0@Y>>pxx&qEKxCg{yr){xU0hrQ~Wvt!3uH!c^^5bF<`Os3h=SyU8s>_)}Y=uDu4*S}N{F2i4ss6%ESe_TgLtBGakHQ&>@ z!<6t^yB>kCla~nF-CIO7hi>4v{~ms{gSV&E8ISr;!gK%w;?=O!$#QNIs%8N!Od8A2YC?*85O)v*=zCaq+=%i8 z2hUoVyY*4pc2k0_dWYAuzaPy;js%3^0{NkN&UBu17^rtvO~u@K1&(XHNDPq?-u{16 zIlS=v<+p}s@+xhmKk?r+8vwv5w3`S%Pu3@pGntvQqid%Ea(GUg4M1RT^CbpCl}cAU z;c8PukphbChoKrBx5?GAiFI@>j0~`v405XMp`iW9HwI(KT9nmOM2db>Ik>>GYGvl5 zcQ-^eZlL)jM$0nz?1zi^*V2|YxoP0ubb4&7SU6cgmKB?|tENi(%4P~xTvqoPAXDXO zNs);JOUlHG^nuMRiYlY81{Jm^wZn8Enir|y8RmOceK?U^SRnsAV!5{>o+J2O9#D_2 zNXRh$yX$TmTx4m0`|ffs6dguq>psx|q!JQrwNscD=`wD8QpI@<8?Ll>!!tB@$S!L`=BEI2mAy8 zSl8%Uk`BX~QWT)rrVHnE363qTo1h-$q0)S-5tOt%PmTXp?Px+7YLN*81j0SOI=fY0 z;eLvBAI3?W~A)xSuu_aQn3dkA!E(pB_q{0$#BGb~trN^+_`W4DJk6F@N$0YAUZuR$ov#0i{D*+-I$|G5+5UGpi zd@JEvdZdu3n>&Hu21c0E(^H@0VB5F{Wqu79R>ei|^Cw$}atjYikRf>V-|oE2E2QZb zpR8WGBQE zxsr8c;DPAdg_H^vJ)#3dz)K^AIMgqklAykm0lQt98w`Rj;Xu@ZOS zpTeJf9A#6$z$#^4`_N2Z>w@Hs$sZ?dE-?7E;6ugc0BJq$R-ne{^()dV?chmYG7L_$ zWBUCxc#oGm^fo-PvSNNT zb*8iy7#sfr);7v%rtvu?Q#04(2+<8ZmH?SU+8tg68i_I1uUd7??Ft~}&W>Y1f5Myy zTkAquYv%&|BHoXMt&8fbO5!D5zMZkxd6R!|e*#sGUZ{^!0Y|9N7HED)ufq)@(doN~ z6{ZU}i=s;@{a??_yD?BMrcI&a;pE>ZcULXw2fG`QArJn~sw3yUpCX96Q)Q_Q`dxZ(fMP=%h46j zh+zpV_a(|br5t3X`s%=Yh>a!NP4R}nasiWdN`Ae__I$YHQ|#oFWGP z$2nyHXc8GyiX9Lsq#|SY1QYapY&S1hHUkYgi9iT3wUo(#1BouH^qoBLhP$~_^hyt8 zo$I9Zut2_wt6wfyzPQ9iDGdYw4u?4@hJ@BlXn>yxeyOevxJ5I!4f*po!3&C(TT;B9 zB}&C`s#Z{;H84UvhVM!z+(On#6h0Y|h}1VX(5i=h^aCub$5+)N7$xY7`^n;wl6vmA zgJ?piyKZEItz+YVLh4SuqeD-=`(W&!38hR6{1G*GYAfIn+(SN`wdDO

o1t*hwCm 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

ym{)X^OKJ(h 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 literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-24-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-24-1.png new file mode 100644 index 0000000000000000000000000000000000000000..bf67e24fcc92e1dce890d69697dadc38c8aa0478 GIT binary patch literal 9916 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 literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-25-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-25-1.png new file mode 100644 index 0000000000000000000000000000000000000000..3ec970061755caf67401942c1f59c3cd31d1b64c GIT binary patch literal 17969 zcmd741yt4D*FT7tiq3~RBtalZTPv+L}$&u0_-Tu}xKgA@Y^2?ief`WpgqN0+L((~uf zm6erMR8&+|Rn^qg)Ya8BG&D3dHMO*~w6(Q$baZreb@lZ0^!4=(3=9kn4ULS9Uc7i= zY;0^|Vq$7)YG!6;ZfloS z6&010l~q+$)z#HCH8r)hwRLrM_4V})4Gl0D?EClcjg5^>O-(<3{Ag}&ZfR+0ZEbC9 zYindAeCMG5)C#R;Srl+T8W@ct*XXobT=I7@Z78Vv47nhcnmY0`TR#sM5SJ&3o z*4NiJHa0dlH@CL7;BYtsf!N;O-r3pN-QC^W+uPsYKR7rzJUl!)Iyyc+J~=r#Jv}`; zJ3Bu=zqq)#yu6$%()R^?0NvrKwlfkEdEnLWt?&MvU)iz**dQI9?x5t9hDsJaA~q_@){4e{GLOE% zKu0C*p%Z7?mUj;+#F{%_O<}=HA<|qupCq@usNXFf%Qqu|;=P}q?;C+um zruy?Z(0HwUPzw8H z!cys@haEJzoz7tA`_i#=E~?S8v-zq!)P1v4nvr)PyGOUJt3!zC`!Bk@{fZR|k8t2S zz8&R*q)5dPR1Wm-DtJEPtWME=x&t|-_y19#n0a2xrm;Ec>B9Wxj64>!g``|h7&yPWSPdK2m$Ml9nw zQx#zWRx(AQB@Sq-9Fyr5nhi1t^VfsG$G9V+SDJJ~{vWOJ{}Ge^|1puKg9nIm4%BDd z`6HJ4Y|qN@xgosPWAxmSa%C#q5G*pD++aPGuk?1>k(vAjs(YNvlF4u!yajJ}QCY4E z7MwuOa=RetNx|fDC`0um-EvDTA`G5Ui5X%<-&zL8K`k(R9 zgIM4{0%Qoimy&`h|DT{ZFJ4hRey@=F#;93}-d=}3t(y0{fLA@Tjxg{=3559p@p2H< zc@r;Xb|Vw&%^#+YP@PZT2c3dIm};0z>4;1-H4V(#q(d(M`l01TJ9$~dPvfZ9U*E-K z%0Oh&)u5!bGidcI`xFRQl^Ql^QWdcRt`3E%0DgG~G95$2ghFx?7Lx|7+Q@yr%ixX> z1JU*-;ynnSio70ixGa~q>LW4{dqV2}BoKB1u+|KcW308T63InjnaRyt1&OH97BJpZ z8T{e?Ty^f%_NCfFDGQYju-8b(#z;+lrFVd4vJ@v&(n%#ao1%+4$KRb2n5LZ5N%QnO zWOnar_$x+Q6?W-<;oT-zvqow&*4-tV(wQb9m)@(L_LbAyWtEtzZ>NOjMq4T&F4u7H zWlOz=#osl!1Q|;0B~AMdVhV+@mH~0RQnC+6zaZCkN6-O04C8UYVtVd_btRI;XK9*W zQRKt|U?!d$Qk%<1rILN8dWgELzxRXAMM>87-~n9z9!Qo}KlE%-vhTGV^U3y^9IO5! z!LY067bc%Yl0o(0S zd1)z_UTwKR_^jzoei@L^_9uX*ll8u_qWO~$gtAEX|K%T5lKp-5i>QB|bQI}T9+1v&kOj`cg%5ZCj9S)LP+{uVw9 z6AyUlufZq*u*>HJ)m113`3|4u`+4~DF{P`@wH0Pm6o3F+CI48Hpi;8GV?c6B4+!2; zSHU~ida6+ue#lvCi{|rfI(bq_w2RqcpC0u+cYd3t{*zK;Zbx-JQ}?v5Z9ttZ08E zA!LJ5t0DXHk2SGP-aV3``|`(}8o{bF8PEQexvm04RQ2D9^z1Rt!lM3VnnQJlIOboK z_$okB)&3p55D!xNYe`8jF!Ibj#DC8$sOtZk5uxzR_>X?$nI*IE_48?Ye(xg5+A;&t zEBJKKKfL{{kbE%qcx{yY_foojq+OP$S8e_pu`bzP^9%i%7xa&na9+|S2tQGNWAtZM z&iIwh^|70)a{m37IWi}}Lrbz95{P&Y3rZu%oieBGG|1cZrl$LT5 zE~%M=hW%SbGO>7*pEcb-7d(3XXGM{5!CS-odTXDJ9SHx~fULggdUV2GKh7fb#JY8z zAUZ+l?i#pLP`B=zGa5+a_jb47&5p<6;@|n&a57mQ1ta`H z0xO-~BNZ@3myFd(!WW;kr#g{|hZ>;2^O~Eyd6~Yy zU>UmB>Ut(&FLtwoG8KJnT<`EogS42wNg(>p0r0Y{+s|Ka)n)EaSu%@};lU>jG z(*>NJ8r9f!YjU=qQyZl$_r^<^tw5SqI#mg6>N>z7(kwwEgWky#Nbt&9-o2j}K#$7? zw$VwY3%MYcVz-OPm1m;2CcNi>ZB6T4C z!6+pA5G1Y5$<5G*^1X>$vfFuvamaLegf2M9keKKl?M^Bx2HGqQMf6?*jJhH}-JOQW^qG)GWFEF#Ow!y3Bi+^(lhl z!OpQ!u9%F7f6I|BXVfkQat&e&?j3St|5gyQy9UHo0`%T4mmw=HGq=d7vVfQw%H*Iu#kLyHcAbt= z%?UdRk@`pWeYGg&VGa*L@r&7fB#1+Fee9IfoB5()eQ}Q<$lxRSbTq8&vO}1@yH~Kt zt#}t#5IC1UF%m09nHq~!RH_f&7MqJKlB`A3bEhcblyswDx?W{aIgIj?unK*4={OTQ zD@e3;g!;V4Vk3$g`LboKJF@r3H};#UbZ2UUBxP=y`|2D-8?k~?d&1Zz)>;gBO)HZo zBm7WBuTNmOmXP(HbnJ50CC0S&sPGx7nFpgD^Kgj`^LhA?Xt@pzKjw{agGynY!6)NH zngp)VK44Z5yd{PAqP{0jnlO5ls$DziTAX5EQT*7BXssh7!5^s^|gFl-f8G&E`Ks^^jk$*GZiNK z)#KXZ5XHieo_CZ$!xQI$Z$jE9hdyY%v*bNQxtr#hk) z`+Z^GUzi->cF0#**XtFGGsa$&&w2wej}UKLDn6T>jYSGD#kzgs0{KG=Z<(CZTgEkEN4hx( z-q?rQjJ?1w^l9!oD}i1q{M+w>Bc*4Qv`w}?x^CRP(Nrd^tS(6xTVoMVm}dQnCHTTM z~VZ4 zHS)MN^~aUS)uhs==a$;i+Oe`}5Bz zQKbR8bj~&6h1Cok;$N(#*9Vro^$ZKVy690BUfjw1E1!PnTtoXc!2#x#onxxm=Z#dY zdk+z7hf{=L{*(tdyvxkck*|D>iQnRi&ZcVf4`zUfiZEs9b|3{h-@aC78=9Uob#H0N z;kT`!mv?4E5XST2g6wD$;H&5BQy=!6*Dca(kEAH-%wA?2*wlW4+OhgnJq*4~uR^*? z!o<|T20kEHge$iI!KpoX-pIi12`zKlyphO+3E~E+CV4@qASgqIoH-FVh$1 z;YII)EU2%b`4NayKxr=MHB1RFndD&{E1s*tytR@$#6H|{{DnH^xH7mGvP~m{k7kojhv|dToBfLVeGhHIvW1L0**H&d;r+}T zFWw+NB2VK4xvTDS^p5&%aed*A0+bmV``AH&IBofLAc;6vbF1C8E~PsOJ+PHo(aF{P zry+_5+p=|NLY7gsFE(k>C);^%UB~TF7Kg55NtKiM>gHjx7z40km2KHa@=wRgLN~f7 z$F$L_?I2;c*+(C!Vw$hxAUe_>qMv``aqC*wHpEB9{ONZ{L+DTJTLd%kjz0Ke-5ckX zt-0?O)N@vKqmx+7Gi1CtF3J93NnwsD#!y%)&-T3|#nfZx>(lsapxlkodq*2uO<*=r zDjEuF2xB+037Ltl@+(=s+1Eyy9fY$Ea?MZ@SJRbJLJA@3H&S%NtPROdEj4PuHJfk^ z0D|hB?Z|lf8>0tmKBOKmQGjf_zSDu2pJ6zk69ZGaTanr2F@r&$?JwJDkAIT>H+QE_ z^wJC$&6=|%rc-BGRKP<8bG10j=^IK=k+%6-w$$bBoqN{`0E$tlk7_>zpFI89*&|s+ zQZ5@sgLo;T(m#A>kwB_%$w#DKtI$`3_t5%J8piDKxzXDqB8)HLGplldux`tP&e1a%Zb zs5yEvdk$;LkMt|zs2wP#jTGXx8wUv0!(C@fRHMIfBbh?;Ju&TV*LtTPbi@pVi6OXq zMR~v8&-~%)O#(VpxCqiuj=GpdGC=6Ov885<2n0ho8Edh?^;1f_4W)Yzyto(H)=(%~ z;&l3t8RPC`xI6px1O$u^4e}Z3J+}i&yCGIr`v!A@Mkc*e29WqWLXTH`a_bVo!jQ>hCtQUGiRT*rC z%nJp-w>Lg!t%bMy1>7}}lM!Hk^S&x+83x_jYuSmD;t4>slMvqQ^B+Y~4|F}UaO<*Z zWa7*Q(tzTdoQJ5hQFEW&F=2Ztah-_Bvum#d?s3kEr>r^b1r~yHNG8W)|9iS$m*lTc z+^T!$I&7&mU~bkR4j!ne7+=Qq*0D2!3OAd)L)w<#Py8-!ZzQVs!eFrZ4#Y%t?a?^oZ`-P61@39dhE zYjr($Z2D!e{Wd{DI~T{*SEC8S>TV=VwwcrnntsM*==PH=NTk!$8*L*smbu97h4=hk zyH>7NI8hErQ`;glf4S`P`zM>RNOHF2yQ;s+txa;L*_L+0##~e1R@w$mjz8iV?zq73 z!#O)D;WdZCc7wKJ?iXL!2r#D40hOteWOP0LhDJ+u)jNtK?(g^MzM|ExeopSGhFhFl zwg?Q@*X&6+z9%=btuc)=6}R5)aa?!tb;_!7=Uu*}HCQk_6*TemAi}Io$*x(5cpP-w zyc8LH(BnprK-nmj7f=59(IH~g-uOMtgo#-*-eNK=B-uK8aE+g3Rb+f|d{Vpn7SwKF z9}nv6;Pdt^s<)vLi(7{=WFM4fxFDS*#>JUV4pcSESs`$qiQ^9MulqF|u>`|K6?W)C zrwCo+b*pimcJC~M8SJBpY=_HUz3E_Ry0InYIwpOA!rKX#o$uyjfkTbM+jV1Siz}?Y zz5`1}q`h~l@M;KrQ+u%i1&+tSrng>HM6nMvf_j3 z1LLMd)g`kn-s*Y}`=M%`VbO`0ve6Tj?|31b<7{hUEwR$%Ui&6eI4y81l92sF?L-JX zm?h#wv@9Z9#@rhy=-DWN{O$BZiVZq>xT}D`jBlK5zv1?)#8vlwASoxRklESYPs_a! zRE%59d3ZqrWV(81&qQ0oc!`!c-Bg;g4P7iYp6$}_i(PWLkFC4x+NV*7Z8PED5J7>CC%5+N1A zJG3r}$wqj+BqT(PfHiK)%=9%*lcxO?82XrL5)D6$b%jUudHGVAc+;~ObR{a-5-g7? z7iveNcEOm2rB6jkdLXixrtuo!O~w)Y>Xo|s6ZoWE#D)ezpV zGsVW$8;)D)y>keGU5pxl4g4>9Gnt+D2ia|Z%0P$91m+_jur#Ib{QXpT-GvB9`k#{#mV9*B$LTp zk>GI_K_2vQvBWDaF@T2kOjez~v5)sB)F@3C1vSIjQ;mEZ6K0`urab)6eu}*Odq?Xt zm5yh}BYSqO^M=kzo`oS*dc56oCpD^hb_reKkuK|9Io5RV#yq}-^VVG1E-GYQGxoBp zZ}ItVGUNFp=Yuu><&BtuHd4x$YQ~n!Bi5QH9rxWr(3~>M>;mO9V&dbPn3kR6?)x~c zOw}Z^yb_c(E|RG-AywA+%TCh+sZAqc8zIRfevbAfdPe8kX(eB| zEIpD};Om@In4nXJ6VT<+_@`Jw7excF^G22S|XpJgn2*P4wuv)rt!@uT4AgO*bqI-A+QSOV-{|i0HYsWb*LW={!8Z zu_K8+7Q2_m$uuuNRVz5c<)%)DAB+)SKK5$ZfmRmyhpl>L;2urfj?^uJxxNW1K<882 zKI!Km4HrX#oD;Z08XA69emyt)GJcTS>>3)Ltm`blF&jmFk&jhw^BuHqEnsnW+Z5Rf z6<>dAofioZ+Zf1yq~9jS`_t(`S(Z*H(&fjWBh~xnSf|09tS>#XzR_XYlyAWAz5Eoz zC~0wgdUa-sB&xi4zCIv8(}lfntszox(}liJszDTpDpv4;(pzvr4b60IbJaq( zb9b4`h*#tyoO-9F)n*j5p4&r9n({qDn(;J6!6mfEH&K74`Vs0Q?))FXy?43QB2eMH z*T4_pVR|2Bw4Bblv|JqQ9I>C0_Dz}5Yq5&Dd1r}FQFpvwXnyuZtN;EmO6`6k<37vi zS?Pn`LBL3VH^zji@kjC&9AC1q(W38?CnuX}oCXBXn=$CLc#z8x5a3Vr`__G~AvNI+vXv zKIQbDcFK=-_GXH50FyDFk&Y}-H_c>mOk`QHDKDGd!Up6TJqcos9|(r}YBIkhu9*~S zI;)v(WSGCG-#U%WK?e4C2HY}#o^;`Fg;WB~`|1fUK(sI|gN++EQJjt2%v3xUO#kYK z(}K33{&fWJXd0|`OpCQFE~5gpTH z$z;XShx<|=VkS-@FnU*BlG_cDel;U4=|PG<3^RCu-z4BxdbRACc;~%zT9=QYLgWP0 zooc;_KI2bOF^Kd<_VK1t0kwYh>FLkhH{pz!!~+S3R7Fl! z1+*up6{{7eILfEXuPL!Xr&&-~YAcJ7zrVFKWyYh(23FK5(i#ygrlL{SFn;+(DwFE& zSZv5(Nm;~7lIv=@SB`Km0e;wR$a%lkj5k4{tllcO^k$%Hw`H7j5;u)<^HwmKq8JJb zM{$ISNaWcfm0OZ83fS&;2McZW!>-M)LPeUW9X7xvTY)%)@9eU%6_U((Aif)#MKDyo zaWDPkBDsg9UWopTaQYrPB^f7qzPcESfw9_Wlk)=m)5?i@5OC?c-lH(Ayx39_%KTLb z3s^D~Qz(jjYTeEG$-2F3zV%}q=0%wlr`plaGd`;mwO;hS@$rYVQ?$5zoI|4lAC%Da{9|4+ z8@c8o8r!|08gG;uEMg=g*1pRG36BZu3;mkvo}r&)LA=%%tVyn!Cz-;ip`iC z-%+M))fsqCkmCy@E{b|Gv*#1-?QLA1O@6AxAxw=(mnG5F*TBL+b|4}|1^GrIgu17YY^rMz*Sxl+(S@Qw+IsECtr{Z#Tl|lVH zyM9p~d{IiH?)`eY;iNrWph(3*AmAUVywx>yQsXzaCxAAg=Ogdpq&iPYCM4zpDRp z_IQxI%MdLKgA{DXV@Gdw@?x&KTar>%@DAASry0BLfrx0Knm>rCT<OBxIB`f}U zdN9p7Pp{>U0P;In=%;<%aqPE0;6Yt?MUQ^BmCA$0l`uh4*LA}^+g-oG zeabmYLxCSU{%6>E>SXDPNgk4WLHo7s=eHVbwm(C6&&^umJ>(dMtR|-2jq~C0ruThB zck>H7S}1oO@;o)P*>o3?_WH9;=d@LAe`wgB za^f7H++ooi_TO>~%4nIn=vi$g>9-r+`hHOOYq>>jypw;<(~(RtwB*}j;3cJ87{QX{ zrde>H{OxdE*~HW%mHeJT+19RBeNosh z;)sJe9x8_@U8k^o&vvziy%9Ugyee-c3AFX~0-m+Onl7GY7P%mo{#T+u%=M;Z!$S>s z##vI=qX`JN{VaEt6XW=PK+5e+A?Moc)*kL(IUFH=eK-YBY6oYP$>fzUA3r95F5hHx zVSyEmlV}f1q?tVU;`jE0H$p}xUc1#a74Rt`JQzp}{p#yHPl{tz)cG!Wg2@pF3z8U9DDb>BbrU@t*EQE|Y>XI}4?;v) z^|{N#yMTz!fPY$rDD`*?fBR93W9pQjYy4JY8t;$9pGpZz(Y1S%4OW^%)r9K^aVx9U zS@Uiu6VwaeHFX4Fkmu|QFVQAyCsIz>JR}&b;5il8KxNjq?>O~-!|DFv4~oylZmY;C zwrW{QJn9Yb;ShstlC}}N6hFU)`nlD2p@L-j+!^Py3*Ef+cK63M?uayaNsFf2iM0Ft zm?-Hr$aylel(Bb*X1wwXFW%(CV>H~O$JVf8T8gzwCC(x1YUnCA$-y&ER+IBO+xSfW z+1Zfb7OP{Z4`954`3(h6X3Wj8d*8Juc6SOs&%%nrL4r^c?ubAOC+{r3iVm>J=6E!r z%5m4Dt3Aux=XI*|jBLncdf~&PuHzEdI=Ok_M|pl<3^}?l0KJsB>1FvF%e%FYu8P`?18`#J zT^?nz+VxQT;O=aPX&{*@h3)gg%bhpMw{H21L_u>of=_y3#1iWxlM!y0Blg`NsvVEL zUydpnOn1G3bt(9Y?K~Q(1f?(v*WZU!bU$Re$6urT#k+>ecG*X^5!b`-=W9`6$HhnU z9d0U_zDaNC5djOFvn36aq0pQuWQm!Urw?oGekx1^v4{iQ6_0G(VaOp zA>x|!Rr6{j(`hCx5_Aukg&vP-+^)lvn2~M+o>fbgCC}S(rm$ZdT!B5s`v=m@n4@dH zvq9wHxse>=drlOA0M`%s^rVYS!CNUgUXFtxWYp=1Y7XitUKyM;D&$*&!0q^AZPxK_ znFynydF`3(%Wk{Y-&KgA33 zB8iTXJaz(Q0z`fTC*J=csq;SU?$UtdjzODv{p)c|;s_09GLn7z-|`8}Vm8!_9Mv2= zYzcE(Ju70rp(N-jDV;47oGFL#QYHYFe(Yl{kR`?~2~W-kiP|MqWnQL0=aKjG$uAIT z_8UGw+(`gb6IP^($K)|_Z%MVtQ&}vX_po!%4Z@RSACI;7d4znuQx-O#VY8Tdn&u<7 zgur$|0CuCBL6UbRhM`xRWBe9F1hvDhaD8bO0BNDgwM{;tA@KZ*Wn$70ipd9!Au6*M zY1@*SoVrd1&N4%v*v~NM$7A}(CHtMc(Ci({Z#fx$EPfyVm z90SGL>4or-L0~ungrm5N0_^C+I|omBxz7?CLxULoEk^kq0IWi=}A znxfUdJ>-OcjB)F<|E2Y)6D-2Oh^YB%qzsPgjLg?}B@Y($S7v>D@(sA(>z;FVC!YG! z2!8+@9Cq-WKN&L5K1NhLSIM;kP>0{HkfE#hUSOQLooxD0N&Q#!cl6U9d`QE}e$N(a z(bnM>EbLqDA&KWDGwz7ADN3xeM?d@MUB3PoDRtC;<1b>-Yd0Z*)eO1a?^Y{%kbqf= zub{E39%FYsN=hBv%170jGXS=ngI=c(U`ETv9#g}+Q8^DXClFVc25z$q5;GqL-cGTg6c|G5 zyDMLfe%gQ^r-qzwmraH-#<{+_cRlPyIyK@6_m>I+$Yb+K_in-Ji!HIqHJ7>_zVh)G zdCM~M%$_*yFBr~u7=5sz=)<)_Unxcv2{G#SG; zuV{`Fkbe!Ypt677mvX@tdVjmt%&V(EzWV}rlR(|y6y?GPdR$RE+#Rx6wzcxMGVn(W zTC#v|YrmU`_nvm~5+{5f+2YO>gOhyGD-_(34<0$3$K(x$25z3WJ?|VAy?1#~x|EXY zRJ84$s^FDz;q>BcQT4iM#DS&v$DZynbs9(%PjGgtTw-qERPbD9NMQLeabL>T*-pOB z1m(J`#3^{89_14)uz8PEf8V#ub>FKFFQe=t?vo>nrM;#Vp|oeu9huIExO`h*5yxWP zG_uM-n1z7VNg+z z@EclG4j8R$Zn1}Lzgu0#bH?Kre~xm4?DX+St{r?1Qs)`&xYEl#ulbexs41s#Wd> zCdf>Do1bDyZ9l+$^+&G*to`7(K`_f;X+99Kh;xH$@~?_0IV8}2l4(ksw!^Ip-KhzX zrZtK4>o4$Iyf#05WQyuat}nJ8QWpQq5r~7;5c$Rwa}IidHg#GA8x(q zj|1o1ZeM%39nN13q1yHB<9M^VjWtq5I$|-wxE=UxM2BHvT=+-i^FPOzlkMFA)uQ}a z=Vw^r0b%;bI)aD41pxu|5cpPH(rev_=@$rvf*QO*GOKwNw`qC!-1gs zcbXg90OeIeU&(vtQ~=d?BmilQe!u*`cf8lGaLEDgo`?G7 z#cqoaa}l83S)dl1k;i}^JOc6!oT0%2%OUsYf5Cs^{|ETbvviEjN=0!(fvc3^dfrJH z{s?LW8wHuHg9znv!V<>cNKK#>>y&=zH=fh^ze&Sl=Nh;<%H8$Ptt|j>yy}}{ojw2Q z2kWc5rxyGaX?&te29bcE&Dt$NT3&_p^4F9TiOy3CodiW~}em&qWG9`3EXNIH3RH~!1HYCf>l7Dx;HfwBu~vZf?N3zC zB;uvr3GF3uuHrMaWqs7e?XAwPcP~x(eTpS#dVRiT7Ls%@1SI1zl>b~nhp6tX)#9=w z?j9c**Bu;BOcd@1nR-guP3dxbH4C4q>@JW7Gg;gkrM_;f6xIjYD%m&kxY`pRRPVlp z-7v|2=9L@9A3cp1!=yA{($zjh;iIlroP=T;_@~M=ASs*_lVs77qBNJ^F})z7 zB+h5Dzk+X5<}+o@3Z^tXAGS8+SQp=E$A)13?4)>u;`6eN-;ti$;h8})aq%0e$)mZ4 zX2)CKJc1xd2LQ1-h0K^ z*1e^(4k@pX#TzjSla=p9uLY>}12d+5<#CENq zo(0vsRjmsrVC|XiJN!k=h25CcC1z-;NgEGE@wKO5n8tOZJ5qMcw?XHL5;eA{hyGT(aQ>fux;k%bnyqtM}<@4JgKz)@ma}AJ~r|OgL3Jp5%P+f3O`} zGO3e=z+aN-ih3rcN_p6PPpq4QKr>0*MKg{&ZFBbgCw@vGj^b%`umx| zjaNSsSTvqlyFr^$Y_)yBC-%u;ifBG@o6351Tt2zcJ;BUu5Eewe|H%yIr%-Z$HakE& zbh37j#=+*Z9$HeFP?Hve6wv&nLy9)>orP`O9K)xkDFt1O+F`FM7%Hrh3$$Df_5qJ; zw+`%!fc@@)WI|YVOUShf5=O4X2(Ay_O!eR`E+4vI#Y+HL{t;{c3f7x;Qn>NapYHOM z7O>C0Cr0Tfr{Xs6%DvCnque13Iv)lD#b;i!2W*z+#g1Ggs(}MxR(PNaPKJH*ktuir z=U~#}*=GwX2Yp@X@tFe_O!AIwfqyHy?iOTNI(5&M(c zV43Erc?3(5pNL7aq2As=RmFyJ?GqY)?N4h!CJG~Z#?f)?-QRLeN$JRgpi&P3k!=xU1fq{{c zk%@_knVFe|g@u)sm5q&!ot>S7gM*WklZ%Uso12@5hliJ!myeH+pPyeqKtNDXP)JBf zSXfv@L_}0nR7^}vTwMIhl`9ew5?8NYm6VjccI}#!l$5lzw2X|5tgNh@oSeM8yn=#) zqN3vU>(`Z(l$4c~Ra8_|RaMp0)YR40Z``<{p`oFvsi~!4qobp%tE;D{ck|{= zeSQ5~w{G3Oef!RxI|c>@hK7blMn=ZQ#wI2vrlzK5W@hH*<`xzfmX?-QR#w*5);2aa zwzjr*c6N8~-nF;4cW`iUbaZrba&mTdzIX4Qi;Ih^tE-!vo4dQahld9Q0`c_pynp|` zmzS5fx3`avkFT$Fc|Fp`}ZF{eE9hBV|#mhM@Pq}PoFwF zJ3oK^+|||9-QC^O(*uXYdwYBP`uh6&`v(RF1_uX+hK7cRhrfLJGBPqUIyyQwHa0#! z{`KqEiHV8H$;qjysp;wInVFf{*;xbv@$K8Uxw*Od`T6hPzb`B-Ad$$$#l@wirRC-2 zm6es%)z!7Nwe|J&jg5`X%}o>v_2b8nt*tFI8oj-}{qyI~ot>TC-QB&tz5V_DgM)*^ z!^5MaqvPY_larIv)6=;Mix9vD2p~61ys)qsBQbv$;un6{V_~siX{cPkrG`nb zo*+i~?u|5hJaC%6N%fxfk$@sd11agZ(JSYb2%kz9Ulj3szKB*w_U*tMBp1ClOBNGI zux?^;h`?adH$DMU!!Az z5VKT(LEPBjxC`JEMa10)FwqCFi}+c@Or$@JNcWWh8{&bqw24XzwrF0p6PNN#iYg=l?*QaI#u>d85OZq+ zG!~VBc8T4$k!Af zdE=A?Nq(VE&wG=lA~<#PKhtNtiM|yu8QUCf3$8PGsf@V)Zj@1o)?nYcE{gSZ;-2KO zKCyq1^;a4qEDI;{YnlsgI^T70B?$_Z5fuBv@5Ir=GhtFq^XMQ?=l7L+IHakre6(#a zQ9cj7W1Jk8l!lL-bNNE(8C38)oQHPSWY=(0F3IDbGoTYT+;MvY0!^E?pD`5`nd*T2 z%MmEX8b2=EdUn2iN0m{4zalyXR8dvfo#k$2vI@31ecZXy0xbkmmEy*EC0r zeC$AIP}{~HDym1MEgreG=tSii*xN2?v5K=);Nc613Rc8*n1Ktaw&z0 zq*;}$ez`q$TQj0&`*1R!I9Mp!*0xkKv1!Km*=mWj`1_iaH{XA*!oRyiz&qJ>r8tJ6 zl%Ddtg)lK2T2sa~r68D)H@Tc6?F8+a99SU#uf$-y+lj|o!FT3wY-n~vCbh*d9t5!S z>sg&gN$Gd-OGq)69sZAZii4eANhF4jKmnbEkpK2oHuUIWhv)yf`%_0a!a0iP~Wf%u+2soa9^NJ<9!yXjm#svQu%*t~b|A=-%jm$ ztZdB*m|g|U6k~a22zt?BM#GqhnXaGg>hk!|Fx`YukjHpN(MROlkbcX`Ao3@^KFLGN|~%Z-*<^@bb4)%*xu+SQtmT z%ZCg4$X`1x^1&$7NJf{>6IX$NmUM(^k9lSKRHIKySmopL2AN+t-xcz)*@!c#@qr@ z;rrL!Y;cyy{Tn~eylzp1Z=`J}B{Wm={e4wPJ>9<`r;$DA#kgnccg;co7&FH!#ID-G zTU0_!4LZBZeyqai0Sn=R*lBQ6cL0U5h)AF!1@LLNv+S&a z9i19z1M|}c?@1cPxQMaG&~#6e;+NopQ_@;#P1OOHMvZQn_&_+ohFbY%i+V{Y`YGf^ zffBr@{{ieCAP{G$4YhMwT!Kjw0&Jvi~NCs=U7pC=x>9E)IHYL;KI!kiOw^^a{l zVn@~dF{HUVxKXCYV;B%Dk&$1EDoB&5lPM+mZIjn7f{L-vf(ZubsWlfJ=1EQw!4is% zG0(q4iT4!#g?|XR2KqhkcMuZJjxzXbR}tjwU%M)&m;Yt)c;Z&>f3_mEZf*a=gSC&r zd4IN9>I}~L=LviK1Dvu~<+lq^EMQ0Zix2+3Y^A)q_VC3ACruHfT+H+WE-kao{#Q&d!@*-_hS}-gaf=7F zA=&m4X&N&XecJBB(mh+*W3_-CG_3^r!zuO@N0P(CLThVaf~z5~Yf66GnS{w*<%T$t zPx8d#4Si%4VU>BuR0d^- z551~%(B31h-@eh>Mh!v3{?ExFR%!@`KaU~`>=o&apx-CobpT(z-ST@XqAV8XAkXsq z7PeL0zgM2_oH*Q9M9d669?sbZ~(3hqkq<6SH+k=2Nynb{YB{U zeo_EFT0^b!*K#|Hf=G=JlA1Nr^J7*h^ov{hVllh_S%Jx>)e~#e`6ac>KWp%#vnWaA z$ba2D6$)b_3Rlzj-6+5Q(xF4~pwQlR)>jjqx8?e zlxaLw4avF_1fSP=^m|s%eWcfVN~r9B%C%q2X%%p2ovH1q&yDUg*v4<(AAQ@+>qW>v z-9sB!CTq9TSV3_fP0<3u6bTX+*-;yUi#`n80^Co9gk{t>r8_}QY^@eiQ0~+iJEKSN z2f)o)(OwM$f;o}JM!{Q_9nC6Q=B%c`)$uD@ms(!0+zNAjmsv(t^r+;?+45;L#_9_s z4)|5*b&=G4J?SCoJY@v6?G5Cri%!5-$9?Cjjx4w}+WMW?uL$%kh{txG9Se#3hJ%c` z^3q2w5+-3=C{sd1gdXOKS=;E8np=jjo)b@FthGRLmjvzPSTPExeE<6%%b8AC%)P(r zdw7$g@_OK(;1_pG7QHFveE7qLen`4N8KH0c2Dm7=d^4){13d$S{tj<(?~|b!)4$zh zmy2B?uNU)sjmp1dBy#*jbYbqHZth76iToE6!_wL2G~?CY?`4vP-=%?w3sPz?^i_M~ z@n09*GKqOsP;6etK3($9Oi)kxKY0Moa1jaRT9bcX&@+6{t7_rk%6zR{zsAHzGmp{9jX}$OB8NNX;xt@T?RO?Uqtj@F&M(yYF-*$G zf)pRSYsJ_Za(RByM=27f)$!TE@utFSwy+N+A!+_2A)?A(9uZ*zv|o`6dFtZi&>M$P z&QMG4>M0^QeYjIiW^so^`ZHCcS>yiv zl(PtRDZeaH@s`Uhvnm%l-H6I!O?K=hJ^rSAmW3V#Sd%16J{YqvchEUDcDf)ZjLDXX*9r zDE5!e-tIrB@0^)5#|Ws7x#L)t89ogkbDB}Q1P!|(p4BEfjMF#UJ3Afv2FZ5!Oeny> za%-jqy5qEf1f<|2iamv8kG|QW&mphp=%r1(C@Rl4y$AK^p2g3$7eV6%){(0rPJMAK zRkP>C2g%`;qXI=Scv_a^y4A7bf2aQ}QI2k5L_ znLrxKw=h?{6xfgI;5t%m&}xWnanoYkt%dXRSv^4`1E)1-ANhe7JAHPfF1e3 zvCcf&5FhFjdy^EX4{{a#>fkD+31YuGv9%O9DTcOEQ2$yWp>)sNlc`M-w@h9(lva}z z`Fe`unEW=Q+vVN!gKFZ0RxxkxZ*DkFe-3VbtZP$AMX@Kf(rw>ZYk_s9ugg^RKCe#` z!+RItb*mFMDWFC=UMv}04G~xAL^w>wfT)B&Sz;txkdCy(k%RV(8__eR12L3lTbgu^LJ{{R1s!|y#QHQ z@S~i#J|)8Dt>$pw$+)#z^tL?F!i95j5;pH&LheJgs&nDN$ti9TlzWxg)98L*{-1-h zO@Ni}ShoK&U$|TmEz5SeYu|0$P#eGzQSoSgxj+ z#-0=C!Kc}KlHS~?{)Kfbz1Q5BwXfHRIFmFT1Iu` zub7M;^bNPFPi7~5>r^2-C^gD@YS?nnef^5@C@$dH4HMH5(inGd-qxqRQD_Q8jzvuc zd2H2@yqmLWs;{|stgPjihRLD5P+lAGOtL#>^%iI=RiSriwK2sW?)n;OaTHSBglzj_ z>`eMV@+i5g>Cel#MfgqkYrRSs*hKffeG>s~rmrWm@}q7X*w@dgzHG8sDj!On{JZ9d8#3H4qLTn&6)i&r|0lxU#u3y ze04YHBJZg8qB@(UWTCX8*!k+^P09PsmBsTzbx{XlPha;d*t!qmsUxx*38(tA{b&Zm zSGq7YgWj!sRx=78zK?Dj)UbEWRvmVz3J=XNGWKj z_ZUb@T$5^T2AM`YE_Vm3H|snOp^A25kv2?=@q#cS z=Lxf8B44Kc$w}%ntd8~Si%@krEHTQq8vE=m$InPn1tzy-uXN$4n%-L%{eu*s+?^{4 z1eoJ!lvy*;dM1w?-k(jKcNKpLV^-LI#L>4C?1^&{x{EGMnCz%$!yJU9vYL7G`1+UR zdujahM_Nh*M{B!;x+I=f;fYc}k8ArykI&KCQ0bNxmaVK9@v zWH$T}4rWKGGDjh@R*wcV%Z;9(w$j!Sk*hh1SC(3hEPD!CYp@ugb!bX|`a$!bcQNJQ zPyTj#8%5q%g6PoJKV#n8fKMn$?(~s85s+7_2pZ~`oL0rEidSqb6B9l90$dLVwn3- zS+;xXRB$BO!&+YHCqcLfh*{NBH!-4}qCP$s*2dnbC3m(K-6#W9QNYtteYhj<%={%a z1m1E{AblR`2kO1Z>HelP92dAbNlXvH ztw~G$=SuPvB8kp>r@4=XKFQ@Nr4vALnh2dRx%t7CV(#0e^0>XebRA@+w#|Lc60SXe zD`cA9S6y3qgJo`6V}yGk-c^5gynTXToWb?;6?GueUOw=s3FY+UoO+^K&s2APJ{wVU zXxNwIX8!08SH3I*)lEffY}vlx8*2{tXvCSz?iapE%2C^*-rH3PyK^SYl3YRTG`p#{ zv+s?OF4Trv5ileDS{pM7OjUl>Q3!pLgyc@!aQv>me-U7F2lx6vuM|sM;hrVA4(fk- z%?L=2z#tdLo4po-53`U26`Sg z%$r?@k}8(`l`yn((dWwq$_X$d%IOz5#DJz7%Wy9(+Yi|Ad2P!)j=?_~awk=3TKHN+ z7NY(x_&t~)m~pV2-{8{mI}&J%qV;rhkH8h5!EI?Y;xj)r#a@HE5VlpJajP}J`_{wN zLDp*>k71T974BvBtp-M;@8Hjv*M-?oZ=Fe1hB;_IIWdbxu|Ta($qbSBF2#?8Bc&j=v*}h}JBwNm=4H zWlz1x=(32@x_~!30%vO4Y*qi_vtvb9_?_Gs=pb0pHo4#kE2o_@dQ!_Nl>O>sR1AfP ztiHU?ZFS@@j*krzW`A3O28F5aE1L2Te@tQkX~hyT6m8X}ik1%M0iwck%@ z5SSC!_&d3BR*p#1cd0umEm`{sp~D4R>R$Q0gMTDgy3E%Ji;3pLsD|D8fp8kT0gD7VjkrQ^(*vn(J`XfqsaeZlM;^U zkaWInzP!8GQr)^4l-3_p`r<`!SIy3o7$_ZDc0p9=f_| z)SDW5dfnSJZQ(3vf5*4Ufb25W8m?g8WL#fgA@_f4JV&}1=&LLw|AWMDuM9sRrDfzG zX~~gZlilR{9rqycXb6#sH#C=pp3*@IQ!ayKbx&Sp*<$h#6^aSuHI9T8wBPcpSJ7S* z+Z6KDuP4WDgLzPpRA^};ilX0s5HMnaln$w)+?^l5vZHSYFxxZbHC*FA{PF%7Uot6_ zUv*~=8I!NI_@tcVq6d}s_{5U3GLm+WJJc)LKVoSKJ}{B6-$c1yCeiZFGu(be)ok7~ z-^M1TxQ>3Se0E!{uBZzHy(!9uhy)8Fn7E-${?kGqh6JC#r{1-MTXc5;hhUMlL{?--XSO@|HqlU|Fh zNc*jzQtqSY-mh~Zx_Xs zn{JQ07BrXp;3>o8GvBd{vWI9QS)LVX2^9r_;SY6DC+>3=oRPTDf;%(1AU(r?qjDbh zbY{Ns*Z?SZl>G)o<2|eLF}0F;LoK?}%`Did){ycT?ooEpL%M08??uPG?$~w3*^!J^ z`yREPdr`HYdQ>_eo46;AWQB!X9^A}#>xj=&(K8<9lC#NnE|ExVdNnHLy34L+w!)WO z*J3?Sa`;1jkQpZ2t%O{8xDF1}S_Uet{@sj1O9c59SOwb-cs$Z2m(ztOVU2vVyD&2t!DSV`X1m>x^0bY1JmQymu_^J2U< znKk46&X~roq@L@R0icUbeZmzMw?J*G+ll;2kmdc<1uHU^Co`Ktb+H_#AgD~9Wk9)o z>#Rz&?$d3Ra8fAH*GiA0Ud1!GvQRY5ytAc`_X%faru-0MpHFmDHu0wD(o@?YsS6-K z)t0Rs>f^z@o9493Q?)5Ud4Ko1zRC2>4!5tmNqw-tM7}4NKRXcs4UrKx;A(_jPG*Xp z(7nA`RuIJ$3Cq?mYi3Vh)uCFNxv}`E8oxQP{*vq)rC3k0W&Ud`wNWSt}kCj9kR*UmMjJ!CRWu* zO5S#jI_!$?-AT%VwOSPMCf3qO>9QTDJ3$q)X*Zf2^vf<58CoxNn{_nzsRV4;wn`oi zaefgG_k}93NDuW9txdW%i#b!)ceju-=puTp$eO~#%zY!a2}?93&|;JgMxqK7q02b} zD9!xYaYj&`vb8!w{UhO#Cz+_-$xma@8f!%aSqrFc+1-;r1eB}2eZv@f zs>AU?AT{h$@h*X@D6=EW4kI$5=&8Bp4Mco&=qrgKiakh^GQx0LYw$z^3yXdRg9RYt z-*JV`a`6#WO@(<^dkr0eYw_;SA`X+1>m#K!)ve`B5b-RK3q|B|42FoQsxPWvUlo)$ zS@NJd;PK0P+3gGqjW&8T{?vmuzL799pSs;=^3YClIVwYhxeJ%-KHIU!j;b)#9xIZ+ zCbE{f`#6(bU^WrQ7erPg1D?r0lrP^VkWE>7UjbU2pyclk8$7*hwXFnI5cecsV*uqc z*za4iLt-{!?krR8-O2B;!Rf16GD#914s*l|d&&S-mjw%PLbK&&PKzYADD#zF@v|Hm z2Js$DE#{;G~71N?36;X{`*{eKh15AHX@aZAD|K*Rdw` zLh*L;TFeX&iVZpI66dOrwHxOh=~GVOU$w!wog;|4{56L$W=mp1;xJ#5u=%mnmpXIs zi~|#+a|9scA{D%^(TDR(2b+;}(1x+TynU{5%lcgqxXE`}g>MCuc z^bL=f6ah)-G`2Afaii!|b|b0xB=X)TWo0 zDg9*!Lu_zDlb7~HdO~7O#4+QJNYSFEr?-X0BM)Yhw(mm6E;3pxBV;L~PG}4fMp2I+ znYjB+NMT000_paPzUCkBT@|weZlWW)!4p7WIw~a+asU%Fs#!{4!jvQ=RZ~pWw|7)G zsrE#X_eq}K_CwL5St*L|5D*;YxpxqP-8q1e2s1{8y9Ds1YFwG|1_80Gq#GZHAT zBNn5TeAbTGyGLHk@S!HKYkc(mucA$!8S$|~jaK9}OF1VxH^}|52Q5v9hq+NI`3(RA zN#T5bKqz$jI|8od z)b+EE;n=Q|_7PO9A9$ynefPtM<6qsipn3NL4#d?P+(g z|JreUWcu!@icL$70K~nV4z!r2`_TmNKCcrtG-bTh} z0S9lh5s|AEEci}rP9M{H&vA~SS2;hgd|R`W@pJG|;OTdS$CR5OBxWIo z9aVn3$cJJb6h^c2M;*B6=rJ#nk36#QmDf-1s$9B0Ur=x3M8en8910)fe{_}DGcMN% z491%+YUuULn+zGh*P>pXI&03Ek>vq)9B^>Ee-f(c{bF=`XQwx1f>{UG z0nK{k6#No`?>Z@-e%KdZt=6*)KWt@i%mmnPetQ65e`)h7z`XTp8rN3?Lba zbunbJPdfbgl-eZ|a9K@_xwPFs3!hV88`FP2dXz+PB(uw5cn!+TCM|yJ8ravV z?X#%A=Tb+V?%kQgH~yKAV4_=qwJ`(s!=hh3%E|(HT#IH5XC`TaNT4m_JEv^*Xs(U1 z+5lICRe>~c*U_qz`-|#V7v`{3#PBa9=Fzz2GF|tz0*tXizNHFO&L*wx5_kY^eY7-M z0TO1D<_31{d;V2$0?CgL=ujc2D z1I~kbFr!jR5}-1rM5@wQIXRbcLm+QKcK~qZnv09-n8Sp=)Z>6Ist^J|pOjrPcRTLk zC!_caosmRKU7$M3kYi+~N2@c^b+OzF%l{?jK(1~6o4GFcHd-Ya`c-;>Ja5Bp<22`V zjUK67Q1@*{5D-+GkEG1l%rf@^Pw6r*)p+gYk2&p6h`~bE^k~TJ>9@%s&)GCd>jl6! zPd3pKGL$||o5R!$>mPh7IL;MxW&9NUri|pL6ZBMWo-nefzl}q@-qyEZ#v79>(ryW$ z<(d5yR)yi6PQ}-N-6jt%hx&Bow2Pe;J7qjCcBvX?0}mwvqJz_lZy60kI8YW80t1;E`9B`y$VqsP#b;{Al&}eH4(VJHc`wkJg&E_q(%%k~iLU=RZX+ zocD6-F&GJQA{kwkv5nqCA1@DY?P`42r?j^9(vb1$5TkJld0*_!FPjfs5_z^l?rs+4%FJy#_TK=^uMrxk_qVzwNkj^oy+*+c#NQO za%C|qE0^vb`9#W7`DNn^P-*~BaEAPQZ)VN3LM(4xHb80o0LW|Gwf&3*X}Y89NH1S4 zA^wAA3Fme6%|B@mE+|wK{@qQ?_Elc9c?Klh-U*L~ya7lK3&as=EuRP%(6-e|gN_pLl$cGQJXulb6> zdmf9ky}SCrgG%`kI>6v%cdQsxT%L_X1G3 zn9y4nd}#RulPOvnK!t5Wm$Z?NUq-JAqrmUrj6xK&)W^gV86o3I0MwwZ!E@YIA|nbw zQdeRCrI$-}93Dzui(GejzB-oPwF6k*SlPJ|(?QH?Ux@{PF^_iB)$a=9uB!L@Ab`Z#`&~T*7iVL!|j)^jY_<_>wSwAqwQ%4O^ zSKSdXh?a${`xM|Bj@)$-2gi~9gFgHuM+cR3ib3B}61=a7kR>;MzC|Nt&g6BpUj8k^ zND_!>JjfaEv0)065VqzO{NSX&uphG&dw-!wQ0eR_r$0E1f$#XTGuqyO!AlR?Z~@>n z0Bx&O%#OPIXUMzMH!{4e7$hzLOKT5>)BY>$#as#0rsiEAeO9gQf^eWq=Cs~m{eowZ z+r!8Hnm~v&`-9_YzloHAbEGD~$}ck7oKr8B^{KgH?-t)L&%x0Cgttxdj=^sn(1)qT zUw{Y*d5aPduZPKQjMW%d6JZ20%I$Cj+99u>8TzKH*RoR&(P#4}7S z@((~+xu2pwq?oLi4jR9ec{x&WRE_eTS)F?|#;`I=X~f_EOsV;*eIEcqPnFiBEXee0 z$7i4Lv_)Ub4MO?t*V5E?Y;{oViJUfIdE2bkmNu70H+MC{#F7VuQ89f&)hl&($oFtk z5VY55x;^q2k3fe*02alGvJ1fBA}(E{3+xlE5I$=FDk2nr^D5s6{|GcF`b(()IfOb7 z7$^Hoe_Wel#-LysDOI})wJVa^+l6HA=U6^pZ$c9!L7akagNbM|J1>lXI_(|8?}ip{6S;H+?oST){H%+H#SHt?QQ6PVQq?k4iG<) zt#}L&e2dl?`)s`zs&W4q*Z7o4eqWM^n;rZk^XoHjs{I8bb)y{7APZj(MpfOci@*B`H9zh1a(UUfA=gcg)h{A* z7nJT8L{&D4u`ly%tt%1BHkdOsv57yAW8>C~#+NnFez&IgDcVGXwmtr-M7}cOVdX(Q zN6%wI(SlL;V>6SltG=2~j(kn_6>7(IjGo*UQz(1GbD!WQ{aH*kTZDJJ)w{|r; zpO8X{x>ppQi+FY1^<%D5GtWq2>!bi1AB`}XcQo3`kh?K_mSu|>h+&{^91<>$lg4Fiha~f~4 zO>qio8ap5w$D|7@=zM9uZN zr&p-=&yZf)?7qvq_w||HG{0vgrOhOMnfe&EU|T9?M^`tKEYj zTOK*poU7VV;+9pzcfMDYFmq^E+nCaW;y;HK=cGe4j+V*mG4kbv4Rb%~juaOjx_x(Y z=1N=1QLi_31J64DsnqU@em)+NEUVYdhdzce^Q1qMqHl*qkQ+IKl?>hbE+84rKV(f&rxY)VtLR|%xt=d7zE@p> zN93wUC2qQoyyvMig!7|F8S&vv^PJ~?)-qsp&QX7XVY+sTbE>oTmj3sf+T`f$w(_Sm z4a19pya3qb7krEJ=#hryxzcK`Vhz6M%_cI;SFNqnrm#gVU6?c8y(CGkO4{M26f3vM z;W_iw7Jl(~nUk%;B53+G)Ij2~^x?3Q<@wfKMfr+|D^y?iM@{_u61uA#7Nyy>Ri7#U zSoxC2E*x0B{wXUvYv2Nof=4=D(4`2?? z_v4|R&wEBTlIViM0#dDFL-=LF@B+tkc6%7zR~nH*)vrCbX`MQAv$n50c$4UtslGal zGIUsMd#A@d@oICu)R4h1-P||u9n8+DX`C-Y}?}C2T8vmlVWw`bSZ3dI6<{P=TvG1 z?L&Y3`S$$b04;r8R}kpgCH34M?^^k+*6MCWY4BAoM`-^G#*H3gg+12wtU(Cg#J2&G z>9XacW~T2~Lu8|tTHJ98wZsZ&WfWT69ogrjEJgMWAJCJ`7RpVosmHDn8Pn*q_mKvkdQ`?g*SS`YyuNFNB{J5?y(+de;e$9+X*_ z2g7OB%}9l)*a008kiE95{b zcPWNB6M$(uEOVedzqCPGAHwRcBa(h}lU6e(r+1yd*x#;+3t~4j6PMdnqwsh4Ju=77 z5;6_Fet5!qx;ab?u$LQ}Jw1C^DPAJ{U5Gt`);~pNq7o0ROFQh;xlpQYW#+-g0LoM) zY<6)Nn2B#aQbDT5ypZ3Vpa8p1M)G;(o3`xS}jTOC*d) zhRI>CQ}X^;LLX!?l6J449NA|9eD>fxC%b~a<1oJMcF?ACFb^o3G`LoHI;6;BDm~y` z=vIH*UW8SA_p~CNrFGLzmemROVCsf39`yF3Dr`Bf!<7s9T?c4Z$Xnx|6Dcoaurvwr zi4~tfVOTFO;hSHSg&1%T)Z^mgfQ1O+igb^RhB!gXSRm{KTNV*4UfloxKTZ@{#LRNt U-D%c=Phqh%RCQI#l&l~AFJqAX#sB~S literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-27-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-27-1.png new file mode 100644 index 0000000000000000000000000000000000000000..10c5dfaa27aeb9f22376d9162b459ae1f12f53b4 GIT binary patch literal 44698 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 H295Y%*q$~F literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-33-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-33-1.png new file mode 100644 index 0000000000000000000000000000000000000000..0e4b6ec1bab336b9c5a57014a0f574e12f2186f5 GIT binary patch literal 26296 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

3Fx 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 BB7Oh> literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-38-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-38-1.png new file mode 100644 index 0000000000000000000000000000000000000000..8771c3fdbf2fb31bafcdde5843fddb6f45f6a879 GIT binary patch literal 91221 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�A}@VfxPcW9 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 literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-42-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-42-1.png new file mode 100644 index 0000000000000000000000000000000000000000..b412e36887df308aa8bdda5590198c06a0a65243 GIT binary patch literal 9329 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

gYbSy>P+ou!QK8qLQ4-;=I)%iOb^_1m>=< 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

  • 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 Hd-;C=`e!F# literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-53-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-53-1.png new file mode 100644 index 0000000000000000000000000000000000000000..65e0b3daef954e255d25e72d3c4d70da337dcede GIT binary patch literal 9039 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 D252N< literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-55-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-55-1.png new file mode 100644 index 0000000000000000000000000000000000000000..1df183d159e89e4ccc9c381a5e98fd694d2b35a6 GIT binary patch literal 233856 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

    pS=+sz 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

    NNn-RLhle4Jg8#XDN#3sWz097lF=8@;(ec3 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

    |xg-ceRbSwd(W7qAo^@v-lO=LKj2r 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 literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-58-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-58-1.png new file mode 100644 index 0000000000000000000000000000000000000000..f3310a09aa15e8033132d9eb70283cc481ff94e3 GIT binary patch literal 9608 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 WMcp=?8~8~#l8l7ns}eDT5B~>_UU`cE literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-60-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-60-1.png new file mode 100644 index 0000000000000000000000000000000000000000..963a2fb7c9c0045c9d54265798656376d4042086 GIT binary patch literal 112169 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%0DfD zA-H|{>8JluQQ?nIVm%=bG%oZIp0^*&`Oo~^h12^NMyQ@LV}1AN#))@L_itTI##!iZke9iz4NN+-TA%!x@o=sz{T4qHaD(X(ciObMAy5bqq}qe z5##Nf#;fOU821_`c1^anZy0JFIelsV*y@JnyqwHXADO4hD?BSLD=spxzPPHWvZppS zptc5 zj0GV73E|foO=nT53^9Yrl>3KzdwQu{d?ljraJ9mXj|BmkEy@asfZNyrD9B-(Gh3OA zO~l$Fp_h;V3cy)eSXsaj){89RB#s>q#IV@}1QNgiXqrIgt_}%FD@{yGiwRpS6S8R( z66ArcVE~yyLSoTq3`nQqFhqvT&0b*dc&Y##dJU)5M93 z=ik0;G#r@SJa^YDp!1FC;@wMzfw8Xqq7`fVM%EgR%+24KHyoRqI(zPzVgAC-v977v zXe&~V34vu<`j^vG|Wy>2|Ud(TXFZDZ}Kn&y4C@7>tb)>{$(gEJ-cO z*MwxJX6IHd%Z}G}^|mK^`p1VXi4H4F)o2ov!rWvscRQuTSsj+wvLZjPy1O(qAX=Nf zB-%~xx(QbZBRI&n8#$%SR{}FrOh;ZC+8rI zCMqc{HYUhF%*&2Nh1@^%ej6Jci$lUf(K`r|F&0Q7OXjTvV&It1^Prafyr7K3)O`Pi0{2vg&0S=_R#e+qX?NwQri3?pwX4 zsj05Ay=$OhXv5Z_f$h@+dc%10(9p`^mA%^!?>c*S%h4-0&ulqvFc@a%wjbVc=+4_0 z&E!=dKl86wOus$Y@$qw%5WfkUe|`Gs!%x2cWyts!fM0H}QrzsDTk|_7*G%m+YY^Ui zO04tUqel-+hbMO&*l(DB>&j0L`O@xvvzxk`+t#nqZ8&z}fbp8)_}Lu?k3e2}V%wI% z##ICD&H2^ceM75Ouivy~{yuaay#3y-J!8F%!(H`to2K?%xUgrayR|Gt?H}pIXYps`4RfWwi96t-9@7JG$jJpFyxL^c^qCJ{&!o>VAh(}@5M ziLkV^LJ=5j7K2WL!^s3Rfkn1OAPEeH)J>@hbm0lyy&T;=rAm7TH&;8Ut1FX1B*HCi zVb&HF)&z{TB@&CmQ>c70nScd|M1(oz#UX91VDLr%^O}{VB^<*MviTB6v4q3s(^)jO zJXjs%7oD0FpBgNaySwt31R9rtA)syH1UiU8!mR)Xokg^QlPOZUNG#{_>;+7xps=uD zZSGKKL83+z9Gwsvs3|Y$9qaCGUYZ;dT^ykf@K<|^B}(tbnWbUTIjL#&O>FX;>v*w#`)`a%wg8|W&-KE#)HOFyT-@2A2>X!KX05fLXr2eeWwhE zPtNwQ80+s{QChwvGoxZy*Q(z&qK6#%yT^_1y>)SR)28jyYuD{KeQfi@wv7Y2n$Sp} z_$Y5r&*1Qcp7GY)<;$0?9_}qmi7U;{U6LB^@8cKXpIB597atm$6z1v1rBDT4S&dDr zS2g$4wGFPT&yGk53iNc4I?3cxo&bZ!qY*G07@kff)1)eeLguP=mAQtBDI5wOi)Y~p zJc&TeV_+cj<;WZ?nJssV^yj(wct{lzxm$ojY?fOg zgEYK3T?SB=uP=h(P-qqf2lD0iEFuMR_aFu!kV$|I%G$=#;@=D?HDXOnOG{5 zdj!U1WwqC+1AXEXGV)W^vD%uUw#M4RvKVz(dVqgISa`gL$~P*yrZOuEEd^+8}0AS;-_wFp*%x@aM{PF#Ha}UXAoST?7oHouF4xTbx zHXb@@n7@5oKQdHS-aWQ%VqH_^@}%_Ev4O3d*X(~AingW?UcGtMuhVn!L0%KB5Qz2CU6;KD6bWgDLgWsga$x5hyze?3rkB2ORGiJa5Msk zMuN_6Y@Sr*=O}Y@_K=4J`O7@iSusAr91jYjo=-C&s6Sx{Etz$D1oxZX9hXscx%iTi4rK zGdyPAD?DL1a^)w7`NJcVasHz5#Qdp+vG@63cX&TH%O%~vbL%%=GPet#tlyY!{9-!# zF95&XULk-#Fy1xYzkB!H8upw z*j6aOzO;Ayx~`_G){YJO@s(u*{hhjD-MC@rx!ZT<=Vp!fOz#{SJAM@kr{BJIYVD5M zuGpl|ApgZ)p&njAG3ix}%Ny&eYT9~MHneA@C*`FV7biw|tNg?Lojf(+5itsHpXk(Z z&)~3_=$NG9^z@hnwOdfIuOo#iR{1%L=pf1#jmD6eY$^hdVX+xfA(P3JDjdB6Ja`;C z1_4KrI?LGt8k0xm^Z6XCl`X=;8cV@r&={(NGY1Ptm^t0C09(Klu$Tg+B2?|$Okb9H4)TfMfbJ|iwnTh%+X)6hS(eZOI1%fxU`Q&sbZzKWJn{kpomx{BF9lP^Cf#_kaLD*QBbP`20{!P+&-6 zW_EsK#W%*+Ei5WNKfSuUTbrGmnpxf0Sd?4es@pzV(XH#9nAtzK zqpow})Ui2(VdvVxH6v@*tmqum4`eRQ$tkPqs9si;zH-jI7`*xXd%rvhUp||+{jDiy zvs}`n&wsNu@`V1-Y*(Kb4)_beFSl0*;K!y@M#J2}gL8)Y%RiSO7kHtcaao$_;Qs|> zLDvn(j28|bK5p1zc+>RRH(!~~zIEsH_WgUdjI0}OD{1c5t<0-hv3cM8yy5uV{ClUS zww=0l(XfAJ!`LL`k`0FG*0zC-_1e_**f6zcBy^y1mujQKmrb2Cp4qQ&N=uA13z+$N z`}i&nOw3OX)x=hpR!*&7S(vjVGJJ86+S@b5Un#VAboF%=li>t9TOy!gNFawwB9WL> z8c!tPviK~vz(uKW;c*2E1uO`BELS;4sGxxm)&T&8v_{}@s6}XdcL_s4$AcsY!&C|d z^3h_xz)>c*cM0-v7nAWINFaj%+R_S%#(^vj0f3{-+YxXa-%-G4I3>nw6QyiEk4mEu z@K7FXYhg>oV^DZ9PsU)0r3x{N&EolmxOsSb`ufL&xyfa2USb|wDB<8)awi^*NF!3| zR0d1Nr*VZeB16Qc)6itDLhR_Fjt_OpYOYDiRtGJKiY%(j&r6EVOGt@~3dkwV$xilE z$9l^>HAMxHsg*4y;eiQhDaBDE(k9NS~K`T~>eC(mx|-`n(k@d*9I^#4nJp1%P6a(jgy z_|BZc%+zrHsNvAPXZP#EKJdc2uz8qc-mH7}nQ8vo>0NvF8Rl=CJo@HBrSdzI@wj1~ zenZ#F@u9-v-1?5z+_dKD-Is5l-#oYf$WW{P_>mn)FC5m7O^mGBefG?FRdr))bM}(- zlz^~=r0nWEZB<5?b9T%4uIZum9od;>G2w~fYGsTjG$~7)5tC8cUD-A_mlF{is|oh@ zb`!XUII^Tto=PcZf+QB5M`ciPG_Hcr;n3+k7LjjHr-_9eM;DdYUCiNjKp3pk~jtir)Q`Xo*u3OEP#L`khYeKERa|XogzC1(|tqIG|Ni8TZXs=I=k4w+2*G7c~Xw*(#UU50;xy2bVnF*fZ$x9-G zBGOmRoSmO;>DB304~_2Hw5+|dp>Jx}!8f+9YTk2fx}#%YWOZ#paZgY4u&%W;w{DNY zU_5s7!xv_HK7Q8h{ewCy@Bg+!-d_NIxxGRFziE~jG~1lvooC-%VB|0}Pnt8LOHahV zzkJ_xcE54=%szwh%12M0(^uEGHm>YytEpeDt4+_XYhPZ{P|-GV;pW-PNA?|<*>vQ{ z#N<)q*}0ysE!*`+cduQVT~t__8kUd{;29H>o0h9BtuBq$W|TFwHJ4YXFUe8|g~g|6 zG!a4ZY3bSd*{v--HA4gO0V%0*J|dn>tn}ux1QL!wOrucPLIICQ)v~NTnW5e$kl`;o6GyioR@3LUL5Nk2*ZAb!@n#tf0IsH$NA; z-TXbnc1@Q^VS=GAfeP=e*^^dJ;6{YdNTJ^N0b z*t2Qvreo_08dj~;jSe^0RjxmA>*nS25B~WAfPd!NFjp=AfPMVa58g38eD2$S0r=(i z>Hz%xor8uGX8fMsYq7A#+ynxBx9SCE?1uj^cvR6W?+)L5FV zt*r0pp4xV>f93G%x^f7-X+z`vrG>3^Rr!+_j0VHhz`(Y>qq#NJ%T|w%b!ZE^&fdCW zeE*xTUjXpe&z8n7zhs`{CHAdpeqqkz?xkPQy8H#;m)olY@V`tK=MDQ0A30z!p7?pu z@Chf@k6)Q(u^v5F(D>RkZ@z5r-!wij{||hyZ=`+Y`b}$Bq-jdp%Del-!dLLuAf@B-7wWVv}@mnEn9Z4ZPNHAr^ZC4rzOM`>4pY|#)e7~vXY__!m~28 z+LD!Zd6E8_#qJTokrBS}$q8A>c^OG@NotRf7)B^Pbbm&A}Sig5Xm{vD;O$>0ofF+4T?;`(#bdy+TtJoc+G0jYql601RR61 zg*+z-i{38`z%ggR#{cpSh>W@H&o?Y(6~m| zQ_(TlqhHxPFxJ!6vwm$~W7pW4qUwzFvbN^3+>F|qw&pdfW{z!dtuIT|7MEu&U#su$ zZ&@?k*f@Fd-RtuwX9wG+M)R}N>Y6)Sm#^s_KeoW7^CEyBfADnW=*G+USby6-HyN+J z`PTIp)^Gj-@XPI00{F(At7Z>;`JMS+0r;sf<G)+S_> zHa87!*gUaz;BE7je9gT0WZ1iNy{>QF>cQcChVhZz8@daE1B)w*sv8PQD;w7Kb*#9?N{Q`X#M}-Fk`bGr0czOG}t3!fZeM5W$)J{?%fg&a$F;Ff_ zlkn(d0iVYuL;e_z1@Uy5RLsSa8AJvMw?dKFLM|D=(8xF<0gJG)uq8s7E*wBuF8bT+ z7JvV{g|#Id2>@^e7J?m)LPp|6Qn3RYWn&(6h5;C>MOIKci$dTrHa0fUdjK33VQB@D zi3kJ^PZYb$$ZVcM<+3=` z8H%834naX`0b3?_5Q=$33XRPbL9qi%6y`?5U@2G}g2ZOw2~xgF?2%enRo7gmjZIq; z9haoZtLf1Xw72!uF7K#moIS94bgh2<$nviK>de}zw(|6h*!09Dxs{D|J^edpd#ek= z(h4)mhWl2Hjp?>bR*lY?C*1Fz9A7!PWkq>g>#%-uX3rMmqkoz`?27<4i(Xy2`KDP0 z>*aI!KYagNuPq4Q{Y>cc#Qp;C%k340&}IUVd+)t>_vg+1AD;v8Z@l?QVaxpHf1mAM zt6$eQGN$iOj9a~RX6y9kEn_<$J|O_PckkYnv%^r-W|-YQH8tJSIW^Ot6P}#9v}|cf zdUJE%!19{qMTzODp-ZAe+@eyemQ_@wrE1iPn&^zI5a$qY7dID|#W4|!y&asxf&&A* zp<@s7$+lKV6bedRIZ~N}lFecXMIeJh<2!K0Vgi{&B7%6B1(GNd5>OZlgGs>w5G*l7 z0uc^H&sJ7{|DV_Y@%rn~M}SDA4H5&P29LsmbTN-XrI0aL6ku(ILD<;XV%ea%Lkx#9 zW*c*V*XDH_kc7o!(HNpwF5s{wu1+F0Q^ZvGD4;t6O9Mp`3d{=6;M2)8IvPch$cT85 zPUi_(R5wp2vCzd?CbU-t1q&%W9+}NxfMkKxQOF|GX`ompq9O@+lntCL=CH*M-jR8| z?aQL0qT-`N)$vLBg;kZcx`w68nzE|v%a)B#b~X<+>Q*f8*Y%bZ*YvHZi3^F*M5ZrW z-l%OD8XoD=mQ+<#wyYXj+27Z`e*NIY8-{Dl$4D;?x`=cg9H&%chB0Qg_e_>jz7 z!v8kSEo;?{4s_~t-PxtXCl2f#TR*sd>$^Yv`0d>@=GO9!t2^3OO&>pNnAo|pZE)Y7 zv8v>}%;dO;^y1>)p>>V*RR!_MVS(X3ZceWG%gU0L6lF#RhlXpSD7f*k0@^AOaW`hz8J9C>dsw7!sLOA>aumBB{HQ&1Q4)Ae99j#R%gT3Q&TKdcKipy(z``4{st?O;8Z{4IH)bHLuw)vdlig{b~nBkV` z+RT>S{rb(jruV${L<;HG0EQs^)t6tt-2FnK^2MuH=8X^jD>~Z$=K*}EJSws7#;f?G zU)d`J@HeJ;^B&>7Yp37)`gvB$-vjW2A0EE3t$Edkk=1M0Pmb5u?$q~>Y}zzCvH#4Y zAHSKOFqm7*$G30M?L2*M|H$B4-TK+x8=Go6wGjzL4I2kGt(|IbS)RKjN8{xm5ajBe zTwfR$n-HHIk)D(p5|r%Cmhd@pkKiToL75ugP>qvsh$ojPW^*YNj);h&2su0_SCLfZ zED+EH3b9m3r!yHKi-ZLM0D}X4g1spyI7lH-NK^)miibQi%F@CXVYA4_3cw<9R05H~ zBA{_NDxE~6%iP60mQ0L80YsD)5@~H^1G7e=5NH(Sr2#nH217%`&>$91qf$sXI)~0s zY2q|)T#(6i_EB))mR49CjZLFcDNLoky@ZKILIFA!0SCAY7N5fA3dK?m&)r|n7qF;Q zk$GE*0g|W=?hXPL34~Bi!Jr8Q0Es2ARZ721ZDv|>c}2E=SVBTjOnFIkU|M!we1NA< zWYO}rn)ce<{3@*`A}uesrM0BFy1uzQ$val9(RQvKD%3XC^lsfZ-Ph6I*R0cT9y@U1 z^yV#xApqYs?wgyxYr22s{Lc03*Nz{*XqH9!_BjB5_t{5}KKbfD6I_|?E0cNQ#dPn6 z@!{{k`TuzU|GPObFg7AE=)nK^NB!Dft+#&FxHer!NLGc_{0Wqj-Gj;&kIUb|xY{QaZb4jGLXj!%#6*niq!*gLghxN~w` z-?g%5c|%_9nr*wrCwC8QY_ExmkJY$2dWOY%2Iu7js1su&HTfmE+L*i;nM@^-xX1$% zgOZaXVv-hX!eU*;b`m<7WKPID&k2D*NWu^ZVV>uC7F0w)6cLp{P(%#~Dh@yxL_`!MAj;%~a6oaMQB$q9 z+FCn3PlxXW)Y`$PecQfQujl%@eh8kEb5Qoa_qx~KYuyWpLg1+co_~lGV`T~>qLG#` z0+ow{Ll6)nb8`z*WAG0&=&5mJK8-+u!$9V3OPBkJX=Em!07IfJJ}`z@n|)xk=zRmz zw)nsd0$2^<^(VYTS} zMW$9zD^pV&0*QfV^H~H2+tbHIOeC^M7@>m;kI4ba1cgh$V2D(KJ(XZ>2|*gpow*8k z|C}T@dF0akOmCksUq#%?B_YWr<>|gYfhxa@m8;9D)@SD}&xlOP&JRh?ttcqT3JeeA zN?n5T)@$}|PAV;F1b^3!nyvLkg`0H8CnpCd&h~W7+`T!{vCxC#)@+w{__ATc___gt zuK@i0^Mz8P$G^Gr{P=ZI;T8SwIcEAV2XM1G;pX?>_oxH^mpgjD%l=9L|M1PnAI?n= zoVtAN%C!EYh4;P#z&|{Bec}i5?GLB#Pd9BY+gQD+bmyU_qbHl%TQwTp$&0suOD9JM zTMrGNJKI@y{L1awv!~7uHSFHIZFlYZilyta6F4iCsWvt_A)=YoJO=pK+PdAG>U4^BVtepb4v?zGb4~B8=F|7$wD%n zDaK>STn8pUAjpoy7qH1t6xz(tTH%BDj6QhZ*l3X@#0Y}0Ft)I;G5x?Ci3R~oVI#44 zBwFC6l8TvB3|pac;*p_HD>EAu)YhKIW80!&7U1JXV3-ayx53)UxM2LtVtR)7`8&IC zJ)DJN4+W1dkTaP)0h7w0)8sA&x($ZmJQ|tCb4@4+ag;AvzdAB5CfGshACZ}mUb!(k zFgiXbHFITJY2k_u1r1wP<*Zqg5nI`?GASS^(M?2`1>}~O?ySkpT2j;A-qzC7-@aj0 zP5+s(LEy^W6TmrOYWnyqh0%KhL$6XUF6+O14d7?`nVWO>?_U0??A@=;lQ+jqbH8hw z`o9~%Ux)e5Z|at-5C7?R{mR?_N&p*FM$ga75)_W>=O_Z5Ug8?;#=ygocrulWL6A6nG!jkYikU37OQ64-w?e{#VGO|~ z0)Z1NxOj{$8De1rM!66u#M~OkrV}XOJtUgVU`TxfMGP8`%K*8o(f=5~DlS^I$im#% z$Qog3VF@DieM=@Chlbh`sAN2x#u6%|LLQzi4OU477%Mahi6bCI&O#2GK|mTUG6Nqr zvjI6foXr*S*kU%*)i=`LGtw!*)7im6fFnyhrEH-@%B2Zilu{bV?}-#HpN2;9J(IKj z9c4-BNzp-x0SZ^I$f%UmmCFJ=q5_jM3zjV}*-+L{*>$kGN>h`cw5~coHY6e=d_L8q zpm0;o`uv0?rJB~>^T2Q`xR`cN0#|Qe&_DX@*{2VuUNym*(N4aVYqbF2ukdT++7rr^de>k&{jsEKZ z{_Yd~DV?@;Xk-$2{O_;y*B(rF?x`uSs$7;`et5K_vb+D(xk+I3;DPpIASD|;JUnrE z@c2bwaC~B7Z0C-#b4QP8HCyu6Y%g0|wzH!;BY%B$R&-QgYFb8itjgDAagt}ml9a`f z&JuS=?*x^n07Ry(Elm>Wl~}kYIW{XXTq#i4(S?q#auLbVEi}x9fd>gKje*3Y5okQ0 zVT+;JIq}3E0TBT%USc}R1_=cNVrw%v%ZY=9peYy#6oJH&$s{U~t#l^BAeIOiibN8+ zvV>eRjZGm@;l_*JH@7r5G+9{m{{NU-S{T`&5g1!E25tdG(W8jexD3!{hVz?qI7@yOTi%e}SKo)HVx@`+6gv2CKNdoWW*a+7kCz%~j$Y;Tc zGO@it<|Y*iM83XK2AaSoVXzbe#8wcMu~aFPxQ2wfNIXKk!&h#|NeD@eiT6tg3k--# zi&#@#Rk5Y}sJ5nlOJ#1!=A4|A^qi!`U_TeH*qHK~lH#J$y$zbS?!mrur>35lVVgsLYfN|JjSv0g6@Z_;CRO0r|0flv|K9+-Rz38m-|=qy;{g8d`FxkcXFnOM zw=~NZa%p}Qzy`U@o3}5X8PZ*P{+;2h_Zo0ww5LtGue79V=DJR^ThrFBJ9)Of_UL?a z=H$Ti{ZmH<`zHb5-0`92{hbr1dz#9#N;M@lJGWM>icLsc9v|Qr5g(hLnUlLRyr?)b zcXfJ1kR8L`Uh1c?qi`4^9tq8N4$SL2)UY`%G1}YDL&y`jDA*zgm+0t(Kn@CzrO+8< zBm#-Db&!c16{F6) zNDCB}#1~`86r#YMh{i*V7MWXGnHUK4d~UPFA~PhG4lWNkYfCHwiGf>MqOedHh0dli zXcQXD-jRlbBXLBE(810I4+gfNFSao^hZ+(#ZBXVPn3$R)7`AAt*f%{cG04f8M<>u& zEIgl1q0q%rdzGhuVxTLRMBvcyFcOLA;GbI<;^(dkjPqx3+|=sub-T92WfbNmg(Zh5 zU4s2xBiA&n-Pfz@D67=eYc`i8L@i6tPEJUQR7dA$t=w2sqpjasv9Y+KMmMZ~`R`9Z zdi3~{SLzvG=z*EbmuGXY|=%URFce>Z@W z)EDpWU$ti6qo3dS*I!{@JpJa6J^0mwiOJc^vy&6|zkKWJqlw#d3wC|tW5b0npFaKU zC(pfj`snff+rT};XKqi=fgk#2?)*gWnTd1bL)wkqy_2&In`^4-_ck{j+**00@7x4v zCnv5>3?J>*4fgj=Or6uz9qHLqUs1ZIu4q&Bruq#D*_Bx-UWo}I5lafoHg3#qsH`fC zOHhj`G$EfYk+8T_977=BFx^!}J-x%7Yl5TVeU+XnCkL?|-#OURKiq{w#GyGf3KNfo zL-CIO-u{Uyx47JlQ1`?rA08ZoLBU`UC=81i@pv>W(gs1m;?Q^jXfEo&6gL9e3St9+ z8d@ZwnIb-$NJN_%TY! zll+wV8*_K|_8zLrtEkXaRup9vF3HNxi;4_Q%*Fdd~ybS`nL_7L@$2F$Nq#p`}EDX zKXYh*9>5{$1A%JLf=>MG#>Y?pPP;xdesOko_TuTGYj0h>F*H59U=u@kf90u1*Jg)? zhPpaNFV27H!ime^#oNcb4}w>RbPYRoT|)yk;H0Y9)xNJPe|v97ui?hAjuS(tj}C+1 zjh>&K-oI5-rRg}(s@agSG^Z#(IWBuyezccwa%A@E)vHSLmegyCBHVpkg%S}@;3Sdq zS#rKa#*+$F!6{`e2g_rlB9lUuzR_w|C#Ic1YA=zC$vBYMqTv`U41u9JMkR&%#YJYW zDOi`A9-wA3C{!H6(h>qkvcwV^iOfLZXm|#P#1=CJBDp+JOePw#xU8(qOiW=+CY=mL z;UJa}Gz39@N3C>CW4L1P&h8zcsYM3IG5G!#dsfsWi+B6b!aF&HX~ z!vNO?s3d zotS(ci^AqBoH%^XfUK-ozd)(jHNe|f?!9T~dfSAaX?2KKV?PXG zIC1Ims~gvbF1#B1Q?vU2Jb50>o;Yt9{_&x!PyXlx{J*lFk%vDIU|+R5|MHg)>(qV^ zetP3?1@MQnBMTUu9i4snezF% z|5%Tz25P$bM6jv=xop3!M>xdrQY)qvzODa?+?;F6FKbBF~5 z&*Ra_bZ0hEKw@&RI2MO*aG7Khi$j5%y8!lmFqSW`(@vaKx!ZLj3vU{HhLou#pf znW?3@i765SN0X=w3PUvW?J!z^sI{N`etqO(8#{6nxe3rb%l$= zLYJ46mh5XRDp;MDTT-~OcVza#uaEzO*`YJQh3T^=X6IgCy8U|WFPymaTd=%0J9Kh% zWN7xvqdzqJ{x9t>2e6+yb3V+hQdj)+#>>zD0{isoi$C<-`X`@(7e0IX^x6EKPafR5apS`A^WeQ}<42B+U!4Eg`5T72pPujO?(QBR9y~VQ zb8@h$xpmK$>hA8A;)CEi(0#bKx4rSglRM+rUj4wn#?EnrjkQMFClnT@FJF<7v@$on zI5#z`q`s!AV*Tdgf`Vi(RZvoDVvw`Fv%P;>geqxiY*1d#s-n!q_}IkExWI^aTFpai~z%V43I0v?3|gTY})I0}n}u${PQm^J8vt&HCPz~}=LO9%{M zVMC;g?1avN0p0;_LbgyO7Lf^9kc86|3VBFipa&Skv!y&cXPK`mdFhheWlJ-%JOg7= z5+egsN>&wY-%_5jI665xI5Hx{KPG2G#im1twOh8fv}(IgU%NQ6ch`>MO(m8NhmU%X}a?roKuwcW$xkA8LdKha;Gm>L2H;pSuTZ_l3^u06kbYSu75*UsJ0|LQ|O zdBOdgH*Va1^!p~?n@RM4W}p1{{-5QB{doX~sr%-?UQ#Fh>399o{^%ywkIh}@fVV40 zKGo0MdZ>SJeSGE?NVQ(R*~Bs=d0YSn2Ify1rU%aI7Iv#&)onkWn7w-K<~?BOjBawW zyS2A(-;q;iM>Gc?=;y9X15?K@fBD06;MEDngOS!AgKz*a(NU}{-oANhL1|&qy6x>P z6*)DHjs1t3wy!EKD_^RLh>!4zRLPx$jvg`LG0QXkgIAX4EzXRL3<`{ma&bvY@ktBv zO$m$fb)%+2fdnyTO8~vA zxhWJ$p-?Gc*vjWhI2;lRjm8;-@hssGI1U5D(coaL3^#jkk(r5+m8A`lfPj!#EE3EH zVr~IP!Z3I;4ry(P<2p%c2o#NicNF2QAy!bR8J13_Ig3#cQ*$d6%;`SFYW0_NX9lJhz`t;c@YO;c=!M>1;0iFHYi({id3L1#K=0J$ z%U5pPo}PL(e}XYzzw}`C+Ta=8(CFw1U2jqN@@+Lmxg`a8%j!p(*YE7=@9XU!Yp+|M zy(~E-)L-rr;O*rja8)G)`FeRM)G13-7N=*Y2Zx4-x;dvW@sCMTxT}KQxlA74j*G*> z5m=F<&@MDRIVV0eC^{-FHB9Bs#gm9oI1~!8SY%1XV9=Ik7FMQj;9EwE6Sm8mI$jIu_gN}cl2y4m zqr9>xJAeI}6)Q_N)UK~MK0P}-(SP#%`1Skx`!k38*XOJ(sM*=twzGKM;hoicwc6(G znq#NCugx#NFCWeK=y|2S@WWH!!mYWvJF~#!g~{_emGVnN(+<7<`CmOx|GNRa?Ue_< ztWN*a@A{?vQ2>AWCYkyA&$8jZdG^txYoizL>*u>nK3xFtPps=vqr3q1?Q6VlK5k5Yl{yz3n7kh#&*;&FN5OH{0hDfAPgeGMK1O)jdrKqG- z7}^qIZeoo@nnR$LwlGUe%`7Yzy=Q7oX4^5bEEg}ek4#KJqfsalSAc^+p>RBf zL=@l=Fe@Y!W&wd(*+9T(cF`hZkQI{=mZnDU!N@`(4^QQzZMpUm3IR_=!f-H4llLqj z=8G0B0=+$&O{8!M;2Q~+<~A6pm6a8e&tUSnSc*NLtMYavVQ_d7j)b8xIQBfTn_TJ> zAyfE=rNssNhJ=JHDaNOh+3kx>ab@X@Z zItPv(9|Vq{pE`H;&VymihTVsb^>=C3ZrWATP`iJ3owlKOTzh4{!@7R@>g_u>rqA4) z&vX9bwS4=PSK_a4a-qNf`tuiG{O2>^KVtvg0KTQpp2t{?y82JQ>zDRN0sP&E3)%^W zMw0U*_U|vh`1y9cp6%0b^fdlMjq6 zkVu%hk%_St8jY|pH~ybRmT-m>&%v3nba41`ZH3p2a-!rwcHZwAV6VNCU&R!v; zvYmMdYb?Rq%nDpWpg6HTnZdMED%3&*l7g`TV`(G-OJ?%eQg@};L8Wr>R=TN!!m?|M zlh;*jT$7XFrxGc`BK(yBt`P}YD=T;G&W~HNrhMa?^_4r09zV4G@ab^?41mwgT)Z}S z>r8WxR@+jqsaco3v$m?Vs-YkxSAThn?& zl=RIL!+?JH*#d+=1zsQXUz@vc0Pq+3g@zi_0~5M=;lYaomko8>;O9TpPhT-O)`uT{ z{_>mezj^|?>A?xmUEiA>(w)-jjvYJHRCja|{P6R6SN+AjD&D-r);(R_p(EP$MMbMh zGd7%D>@l)-ki&YLZu~^~c9Fi94Cs&3>geR}a2~nl3Eh~tP^i_$| z%2#BE`zaKGu51EYETWPa2qa6y;flTdTpcA&WU`Zjj$_%HEiy7PGBuRxp^*>>!otGB z$jIEn$ixH!r?biSd;wb__YL&rKm<5@Bcr=w>Y~7n#@~EUh32A{64z3%DPe-OZ*-WnS} z2afD-)-(K<1NcF>+B@D?9XR~wU-e7-AFJaGD0Czq7>2xQ0oA*wh*KJ=HDCOEIeFB|hvsR=m zU6z;@k+dWuSh;-H-YsiZXQ&glHZ6+`@>Tdo_y}pXY!;d+CfG2A_7aiIO{r8U2?RO? z#kM1XF4WA*%9chzV$mo(0b*fgVPa}wZf;@@B~ci3k}X**Rd}m7XdIKnrC@A9R}F=j z7{B*{i6s<{MbHo?W+uiBwTGSn03ZNKL_t&#YYYhoHFO}gw6TVuF$jbelFoKjySTb4 zWfC&d))ry~ha*hP(QphJiK3&)9G*l-BC}XbzEHwuvawhjQ%ej_EO%rJ_kf`=>`KGdA>gF;piZYPZ0V_K>)N$toA%%#;O6A5 zr}xg?*FT)mjZOh0z^zNbC;FL%!Mz1^4qmu&0nq6Csk4|9Fh;%#>Vrm3>?M22=1j!adB7o7eB@~6FA|S>l zmJlnLg_)uFA5XQD*aykvDmOJflE^-dUP|oi}!9By5Rt0z^#Wf`iBeRuXDgapJAYHPv6%6a&~<8 z8#`J5)(^IyI6Xe3o4z^y;cv{r|8@ZXU)o<%jr0O|m7IQmp(Dm;uaA6QQ|RwMeAUwG z;aT7&=(Qic8IK>e_%A;E<|kwRVz38f&S!OBx2bN^=JJXi-E-p|N9%(90^$-AlS7vJC1osGmYS84wIVYqDkZxhHF0rL zNa~Wfc<+!1Z-v5%fy1KlC=!i;r#l1%xC@;P8U_rcQ8pk8h8mk0Tj0oOC=F$9W?>C_ zaEOJusim2@r76g)u|gqDu2y>}Jv{^rnIjF10Qf)$znRfUOBBou0w>twkO&-}%#kQm z-f|X~%|zSUlBf&}ndczp+KC*PG`^F_iBF_ZctU}{(oH3cNsdE{ zQCwch>ecJEZCjHNyEIM~>&_O<)(xw2SC#D_J2R-Q+k3dTwP$Rk^W=E|7zLNxYx;-4ZT-Eg z7e?B9d*^-e?bFwPHX;7?>_ff&@n`>OYCSzOGHhUQr*zX-^}hkne*pY$`%3`)^o_^8 zqW}5_!=BZJhpzxV_tE?=^ym5+L)iN88lZpq*^4jV{LCM<_-~E@_kN;V`8m*I=$xfJ ze5`$A=XqdycJl4K_b=u{@SA74dk^Z)UI4D$J$s<3wy>&k%bxm@{s;Gfp+hCH$>Fg{ zQNal*!G*DLDH-vpi!-95(sT1xm1U)-W@Rr+^6&}pbn#U?(z$d5hQsGjWMOfMjtXCQ z_mD6-jbv$tqS)d{WF`p?g_;}WHLO6FYlA>RFlcjYTO1l{gTXN!onN;Z>rVi!$LSyz%fQtr5-<{Ea{3?;-85kvBx%5jBB>nU&ZVen5 zoSp&nKb|Rn19YAp9z0yv)Ld2Bd}4Uu*x*~6c;7!-*a^LH_DCBT`ktSAI9AuPy}Gff zwc}`g+wFfnJkz^+acDdUUcbP=*y1Gr%*>>m)QF6XwQDzNYjTqd3YVtGg{ovy?3=VQyq>ZVpGlkTjAl7K)>C2?!>Y0EJjunwdec zYzHoZ%J2wHD$Gk?;_qiq!E?xX0*!!z+mcCCxk@e#beBg)M5+9}WBn9D8j>TR2<49U z&MbzDjLWuXiN$hdVuT@q!#5;4E-Ap*L*|{HwLB*vrm(nZck`+St)^tRwz($LH$1^d z<>D$8%7ddK(*0FSHddBw-dNSLvt>_BMdP84&d#mnTf0Xlf%CeWgyOP_eN9~l`VQ#& zn%de&r;au?ftyHD6UYHT#pDKGPuU?&|aI}}oc~qi=!)9@%_B@K%!A|bx=^wZxCsyIi#DQ*^iJ{<3j4cru z9101wLXZS(A{>H*AaNWP31dTI3Hf4`lRcT`85O8<^AdyMF~ZsuVr>I4hgf6qNFv>V zL+8`@EF^|VrSfd8tt_lzIJ%I<7ZVj;>X>DfMOmIa8iUJcGAVdC5^2kH^H+OB#zZg9 zUb=2|NpwPlT*#tvm~4@klZ4AAisfooxwl*$=#`of8k3b5AL0|7kQ(46R4!YYRgxN! znHaWVOU1U){hRBw+AUczN#P#uG6|Q&V^irukzLxF4Qn+8t28^C_Sdb`G*)lYtcfk% zt37_YQ@bi04?m@0v270T*?r<^epRoBFN(EB^ra-S(FN_}QDh%8Rd?%Dpt4 zD}jvot$N^Zzxmf&LGG(ex|j1u#`l21le%jQLG&Al-)XCE>h9iEkhNvU(5Oz^P~UU! zjoQ-F@tIo&{n~+viLOy#bVPS$dhh1)4Xd{7t*fZsH*#yXt1K`$K3L@+xqL-LWVWx$ z*FP}8NfD?_$ltJgdu7Xk?bX{>XM{;;cCKtRgH0Cjg+ei#?PxFdP`mg?XDmxhS2B4l zDxFBgSzFm)sB|6+k4M7Ld@-BC5X%&Seo7}AghXNR=wcoV$CtUwrB03v8*>EG(2Bv} zYawU?21nxCOC)R@%*4zB&*f5~mL_KAa5RSP;=tzGsY9|WN>(NMD+B@_m5hZW2{u@o zSmquWo?o@Ix?+3H*8I#sl{rguzITA**rikx7-pzOuzDUoU?XJ2oH zTr5t=P0Y;B%t+0us9w=9Gg47myJvG&PGO=O&)G%d+e5Mvt{$<9X-14=FYaB-JMPKwM{)8 zmlisPzSLj6bpbfpa~=$eZyGi>F1@{b@$H+i=sxh#yQa+NAaP#k#B)w}`Zvml{{irS zu)hSrU+FI_xZs;_DMEk$?YxG=uS@F8%K|?($al}D=z`(zMF?Xp243Mu}1{d-3T_eCK7@S>ctyxx5R8^;G+11=} zQrosAIxr(EDJi>fP3Gz_FEHE$$#kgNGofgGYg0+heofZWurNQFFxZz(ps;CFCWnH? z@I6(IzCm)atA{+m!$rntlY|m35ev6LbER(fSUduPVz8y&39(rv$i3P+OVvYm}F`nnDauCy?)^N}_Q}|SvsWBK$TM~F|HrK&- zX~y#0l!&x&wt&JUl5kion&i85RY~58Er;7`DjOtMItm?pl*7lL{=HimF74do5i^CFAyzCWT z&SD2AmBiUMGAeIpUCoZpll@zpwyxS$yD_h5Lwm#aQcYt+?Sb~K6^Dk~TUw7DIaaqJ ze|dRTdzbcT@4-H8fA`>E>(PVf?#(ym{&ec%G@$F!cAYw7Saz?UzWMgpe)HoE?IKWTp8tq48h?%xzzRJffz%M?)M@fU) z3Or;C5}SgjxO)X;B(EweiFIm^rZY_BV;sw~W1zkg@`+MJB!urPN!mV?4W=17yc z`ly4K78F$M>jH*ObZ=R+G&ebXRb_E($;SBLa1Xg$E_6`{<^HOqt&Jr$eP_Egjq9u1 zd%)jsW<^=th8?>$)$MDl-=x{y)S)}l(t1$4eM!;U%BF!~UDwflhYp_^)@n-I22Onl zLh1R*vjZci#=2?`4(hJnzXsg-$r0z*zX!nIKL&10>juZhPj(DE{4H_le*pY$`)dGf zNUbm=bv*h77y4BIzg&<7zJJ+3vA%op_`~ZXuO*fY0RH!@je6?lQPQw{&*x z+|{EydHyW8+F#Ir^Z5K==fF^F+u-?=ZJhvca&&6!K>yLP>!YO`>$e^_*4uJm>$>_w z&5gC2G8Nwb3Pna%a%y0RztqjwT`qIa%*)GKU6_#jyD3y&5*`jiV%n?x9Wih;fq=)5VdiE?Dv|80 zQYS1gP6-H&cR?WG7FITR0uhbpxFlugEy<3}Ua@I$Xz=2U6*Xqo zEGa5p9$CEiKvT&kO;vSEtZS>y zO-cyyRLOX59w30dR4X(UhYq!A>f0;YyAO8k-MYTKGILY;=8cUcmLsm$y-l9dHJEvkQ)a~^tbJ41_Rkg&wrB0@$Fk( zH{R`Azt#hnX3kF>8UW^gGneuo0KeP*Dpks_pMCWB>5E^!>(>DM{iD~%PM7pAKAGRV z9({9gtbh6PLvV6TO1hdNNMkUKC47?E5dRyx}AxB`WTvzWnl^odDNTedVUI(w-Di9}*jv7m#r zWh%py`~xy0g1mzRJi}bcmQWZ9PLkR?(|D+r3?92g#wwaPz88L!0SU?0413CEKVa14^B@CjGNMHkku zj!H~Q$xZVTu^jDLOs1VAAf>!$!={?*lBmSOs;zq(_wK3+^>R~r`FSf`Jzc~SmzbE0 z)hn`MSC$nt9T@}T*zLQvHP#(&SdpC=6QHu^ssfx<0RbL~g{}R=Q$u~tU?ic@)R&dk zZceQ#EX?28+O2D>@40inp>T7pW>Zn!-jO!#$??{;Yd7uNx=q`DNINjvs+$1x(?@ml z;p^nk&J*`O`s~}ErBXft?%cm~d(N=O_#fJPfAvTYoIgE&`!|k|4E7Iz-)(=ftn4rB z*8u#rp<~&+-JQ4!OkcTnc>)+-2%;ZM>p#~|U%zt&ICHr5%vTDuTFcceP`2P=gtGVQzyH}PaM_RtM>2QQMz+;R$Np_ zTtK))5S9*(551F0>aqM$36DF3-zT z$m84D`T9mggob(gMMnsESh}sDhZ&LPm!u9==Hv#rxJ9W#lf3yP7#5A^%c9gwESX8A zG1(+C6hT6x5inZFkGnUI^@r3pWGcyE(j<&QgHMT+#nF6`WCw@twJUGOM z!@xnzZD1%Y(#pybVdv@W=$W!?V{S=VdPY)2h|Ix3qH>o?c=E8^nwssa^3qb1B9@d? zweLH)E!9KmC-qRa-k$Eh zGp!qzR2=Nwv8}SKdQVf^p}xy^XLVh@!-nv6YPju^VL*Qd;IHnTG!$%4PcL+y{8jt@ zyC1%L`N`8yUi_ZgrGEhYZu>g`{5mrl*#x`CnodX4V% zh)&zMv!Y3RcJlNf06ul~`kAXkn$|--huUlFP7dpOrl$^_0H%($4WH|38wbw!G}rYV ztm*D;+)|OZINC2b#Lr#s9uTPxc9)49WO5ImrD;BKYc{Q{*sw9vJFO(q+ucjTWnk?% zVn>Bk9_^0jllZPOHiJqQIEy4QiJOlqJUBs0=7GEyf+R~~vt#|;b8H{^&5fT@U*nuw?!E2^HL%QaJ>1&fy9lQE;I$eKj^|6VIH%^WA44pczo4IpmYVz#doypE) z<2p@GPtB&htdzt^S7oq^qrauxOl4F?Ack#T9+4@bu52dC5`&|PW0vH^`xUQ^iSY6DQ#m`R z)G`vAE0M~a=x98JN+4s=L@W-8v<1Is*f|RAgf3DM5rL=jqymmD&dL;G4SHuQGYdoG zG%T6M_6m~;-91zeEU1~0i8%yffv|?#QfN4_G$!8LFFt>HQe;p-prh1LA(PpAsr=GX z6fIv-9GAB-A=1~;&Q8RWh&hhY;bQNwD4*Db)DZvZ#o2{bt?m1(ni@3K zn^!MMaAzQvj|=Dyx8 z?ZDZg$?;1!hGy}X|M9DS@4u11@y7lE@Vo8rrO-24;MI3muNx}ettS%|4tu2d5$w^l`gvGjxL=q8+ z#pAK;1$GiXgUqB6iEtE^&7zZ-BD%9v@N$1oIStKmR{HrwE=i6~Np-asyT}}ENircx zz@{*SA_poCBM|Zk2p9rOq7(2GHe2j1Vzc=!_KqYRmcXQukZ?5I+!6tWAt2@;SZ#1v z7MU!N(LlB?5rPc;eG_X46o$64fZ^~6GFPrvNF42ij&3eO5!YEEQ7P?}?w(Og!=gPM zokKGA6^+asA<&d2G0Vc z6K5VjGo-vtH10ceq^DumG2H>}l>XuLp~+hh?%uxpz|ctcg&vqXbNv$VrdsS%166u3 zH}`Pv9jfim^cU|fz~D-p$2bBou(iLLkvN8VN&UvDob3wB$gQlF4#ZD#741F2Fr7*v&`jEMu`b zSR{>3XEUixESyHAGRROgk}Q(5X>1l(;z`BWk~s_pp9!}?z+n(e7z(z?!VCh3Ss9y| zV}wKs9zzo_=~SkJkZ5iBfw`5rjWycT)Dp?WGe{yOpNpl@C4u2G4%;nE9q8)l>LON0 zx;d)kZXt0I!LhNC0ltAzu|6KIPIf#Oxk8ni?BkQ5a$*PM6z2FvB*f;l=?-d-_YBOO z?Al$G94+_q^p0Ovv}{>*=b0(s!%xnQH|@yFS)RKhIbqM0BL}qmckSG(odQ03G%a#%+q8CV!II3COH_%)#o5u}iGC6; zU!rtZ`^WnzT;08#9C&y#mH>K6Jc`D!mpRL1!I8e9o^n2&#-ekAvV2^_Bh%tDgB%z% zI-11ca;QiojzGdOnRE(?L}jqWd^(XS5|iN;BnFd!WmB=1Fe`{90*ywS8ylOOnwfw> zuq_2gCfhT3R3_8b&=AeW#Mr{Z+|tI}98RL)@pu}YO`~vm5~b3eMRJewQMxGId?hk( zxkr$Tmv5kdQbts0SY%XKP=vQsYR|RjdB((ttGrVp?b*TE%Tv{=tgx)c4(;G%ukPCH z$b*UQ&UMRH{L-3rYgcDRl$@SE+TFc-&(8XmE1y3F=57JH zq0zCE9iW5#+z{_v=xpiIb#?CP>uoeFxere1CU4)LyLAD0`u)eiZM^}&`n#`_cz!G} zyY@Q8>buV#gF){n3vhm`R_#sJ&VROl0Q_$ITL3(t$Z_c+puaVFbAIb;SlggEGJVG| z+~4Y_Cg%Y>)X=h}RBH%#TQ%pdKK$(SXLrueT)Q#0qvps^=Z4C%t^0S6-Mn??;@MXK zzM%hR9{&32fywc~{?^77u?3Zl`?p8&?VJ@dm5*HN;+a@cQiCBVToPXP)h{Uk!)*i4ToA-VNh@!i-9vo zBFxRLOwGYyK(Tx(001BWNkl7#3Hefg0e*5nFK2aZ; z`}BZj=kD5yRhvieK6-dbfA`|l>9ONIw+-VlJ*U6i*Q;&a*SW8`wR04tI}fKWKA1oE z|Kz)QxXuGuKciomN{`+Ec%e28oCJ>n;DRCOormGG*NQxMXHMMx^y}X-iT(lbyY24* z@at5{uMKSKKG42ncm2Ws1G*cA1^GE}Qa5F&Z`<6mvs~K`0=T>5)C@?*p3GMr-x=Mn z>1e60-@U)Kr5l(&ePQ^#VITY9mH9@M-#-Sf0YejKP7fSCxivIw@yfMpQk{GP)GD7) zRYJ6P(uUHaoWS(PErrF&K?#c!vZGvlR8pzJD>*zYDkgMAf`dHR$BBTZ(lHn!k?CaT z8mf{=90PoP+}$K{H<4T>lPZ-GPnXcNNH2FjnJtn@Wp-kMSU?~$=y)_1gF@nYd>5Is zqZErkkpwKPjWxsyz1R81sv!>W{_^t{U1&1YKifA+*Ti|HV5lS5$r4G?K5dk@wi?`HmD=!EVJ1ONJ zehJxy8L`13cA~%tfA8u@tgP(q?LDBascJdab^O6~;PTwf$uk{Iz}@HH{qUK7`qoWgptnui)v7(z zJp=x(F9XlMdj9mO0es&XvNjd~eCbsl{2R%v*N_GW*ToFa^)q)a9c*aQ>P`dajtt%hW1{b#Txsna8y)Ow*tNG* z3*uMTap?5vM?ZYM&=Kq5Oz(k#qaBC#x9sgbH9Bx|_Ub6;m#<9&kLTm5Z$6wn)_kZ_ z+tSvzIZ^E$laQV57nYO};2RJW>8p-NPDxu5nwFIr9k!}uWsEAqR~4J&>n{sQOUusB z&R7;8_jHvo2t+J}Pn9#cQjT+=hn=IN(n~3EkvltzL;?X<<>~3la|!bE^q{f@5&@gX z<~j%kSOT9(q0%T=0*Av>D&;H!5spOAut+=_1wr6!i3FC2!>~5DgxR1_7AA|#LGLQD zV>1afAs=N9gO^F&T+585>qDO-c`v$kYnCD$pxDYeU!B;hx%tqlb4K1*UWp zU`*RlR^8S#0E~e#NMHX{LuCBQbtOe*dk$^S+kIr{Q2oBXv%v8AiMcub*kDIj&)J!I ziD!^5O`Xtoo}L0@o92_Vx4_@^M?Wp-UI6gytDb}}^|KFO1vLv5+%I0|R^Fax*&u}m zUokbLJ#ciwP!#doD$@S|_}%um0eHc_f2N;2wxhOXe&2cg(3oLc^81gcbz@V&g@Mg` zTAO=yx*qM3j_WVLabHl%y94wb9O`NUF%Ld7aRAWI%SG#-8U7z%J(;_Crmdo4XT!!d zzXtb?T4mDTDNI?2aiqx zV|%vm)aphj2llt^XzmzpNl40Dziw06o}PW>yAHH#dI!$}z!}{|;K`%Y2M5P5%;_J@ zYb1U1?D50PS0_LceD=Z(gD~i`x8}@a;Qj)DA56c>i2nWwFbj@}Av1m<=za1=@8N<0 z3Cw-}!~AyW{5n3N>#EhX49uT39T}Ya?AtG2zI^`VL;d4hGdf-0 zuGK5HG}o8rt=Y0JzjAX!UF(+ciXQFyq|ng7-~`{`w1~jy*oZY%8`tIfheV~MW=DE~ zab~H538WZj- zws(_=xfHguI}2fjvL%s8)|S=?Gy+8s+Y3ZodkUUPBGY(O8i7Sam?P*SE(rlgpdm08 z9fP1a@~B(}n&}{6lL>exnI?1=%lT}cEzKibEwm-mSUfC&!d7~K9@jzO=_QhTItvM0 zH@P%)Nrarla#V(9l;vbaCoRp(D$|tKmT%18ynd6We`7&*R#txg;@nubl^u;6x3!F% z>1e3l)zPf&8b8^zb9Y_;)L7^4t)NQk@17O7a=v93CV^Dl`oEBda{RhDBw!a;~KfJs(J~p3O3(~yfug3D<&mZaawNx?8o{ zwzET5zka)!%dPS0p_Z}p^Li}(qc=Y@?2_n#>6yXS`oklg6)V?QXdClO^3sbnHQTFd zYwK69sBNf9^b3uTj!0OM85`&u9G6*AU$ZxkY$;E0|JGzsUTg7*DRu!^cgjii~s(REoszaxoc+MH2`p zlnoATOC(e692~@s4m=784MPzKbUX-ca~K+9i-nVk1PWKKD>fyS{@s1@!$?mo@}d3;V$jb=rB zazXLZ>e`l$j)u0;k>TO#W=(b3s{hyCdxy1=rHh-syU+fy&(7}MeQv&Uf48S^&rEku zCwFviXSdt5oWKEtZEV0`qA@w=oHK}wKoTMg2~-jS3`Rs9fkY4)feJ9u*kEIW(N>kn zmWuD-ey5=s#}SDpkdD!fvV4sJ`k zP}<+JHvGoy_{i|+%FOto4FbcZ^-yUJ(iSLYwPDrrW|tr?uyVFu;3qwmm2!a_OUhQ4 z6E7?*3^fRa0zPPKYCu1pUC9L@hR2%o%4+%i+H$Cg-!UzFF#_5oa4#z~iCstaO$+t) zakcfjs~eh=O(v33iqiuuJ@xd@Ynfctw05)AKc-I5xOB%o_?EivEgd5_FK0{rn+ED9 zFRShS?$CiB4j$b1^ABJB&z^68Jodx)N7d8_YFCX64Kyz6nwV)FIez&U9X~U*Z@)RP z@9WQwoWH8C`HME;(4nJ0?f>CRq_X|=lfVAghhKd8@yFl%uzx>NhkyCm2mk!1|M}}z zAOGtIAN=bd|MI{7_`yeCe)Y-sd-mG|MJ1EJ>UIp zx7z6wM=qV*{o`j}eEHQ*#OVcj;7|m&%gct>s<#AA3b+?|Br`HT{w5q($mV) z&dB5iT!@@kR+^I=keC-Ao0UN-%#V+c z^&kdE7jwutzD5Rt#6)6%U0%7M8K6-UDAWWpHTC^^GFJis&5+aQJsmEV| zhL9sr^UJ9z3vn*AIL5 z?cBNR_@$e-&RsgO^V`qA+q3&e^&4sj)z0ZzS^IjK7+89^+uYT54Rnj36hYJ+UVSU* zfD(%fGK22u>UsO6GfDaN_hRXVwCrdn|Cj(`kw^fsi!;p4J;(($6=WvK<@OB|V>{0X zNZJi*3W}+8RuP#=iLMl|<-u;6kpru2KJyBT$gOo`d`9_D)T8BFZ!fmIa1MPdsYe$y zaR4?}z1b)hF0gX8USQccHxFw=*Ozc4>#vqsc}}ed@=s@AL5E~e(jkCn7Ka2~tZ@7!6;Yq^&{in_!`uyutS1%LJXXz zKXOR@wyEBw^QW~9&s^5hIB(<=;$m)Ob^h|LUkK_Kum1egfdhy4?%Ds%e|>gv-_EZ- z{ph>zzxwjquRi?uKm6kdUw`-Kzy9aHeDLijU+nzoha< zj14t(w6(4Le4{+<{DR2wu9lvWIhmnhnT+HV4m=49%BVDEqKUyBV~e{H3>vY#oJgU> zM+bYwr6l;}qXF|vNX~vlHXl@y3zA*k>>M4P9D|xB=7#R&L=_a}kfHlo#Oh{wz`0Ve z6eoBSHp$HJVi;gcR(b?jb^Z*SNh^fv060Ti&A+AP8)r@RyO!d!Sx3IaYZF)sV#~~=}j+wc+k%@tw zwTaqMwd2PQe*NippZ)36T?Y<*|IsIhc7Jn3ZTH9j_OE~Z^QRyE=}-Uh&;Rntmp^>| z@sV>sBi}u->%j4AS1(`D)6+P1;NXeF-+%tu?n4KU9XWYa)6Uw=Gu2w{vf9r-pFg#K z|Bq@v>fSzo@bI}`4(|Nh=SO}zcj>a$wOiLrq65SHf}=uH144rA1Cd^=o2`p8x%-K1 z3g#wL!wfXck?PqqhDeQJm4%atDFLCG1-aqDr5w=H*;+|Xq9J$8>Kwm2xQbD=Yp0s0VAJ1o_@S^gI%1PnO$?Q-7K}rvtb|*wKOdy zQ9k4Vq-@UlOrZ)RwH=a#PKWsmgitcZ*pHt2(!pzt8yIIp|L9+vu! z!5+E>VG$O0G|%1CxuSLE@I^m+i#yIyexBBvT1R(&clOx#XEiSAdL>3USR46AJ308I z$J{l&aaG^K+Wv}$u8yXLmg$XKI=2ngb#B?~UN;`^MjB6^2P4mmkiFRUHnDu*bRNNtAuOD21kED z`nBJG_r(``kh=KW{U>!Ct#1V|tabMvR6B9x+b=)ab>+00$+<&6pFXR0^ouWkIC6+^ z?yR=DrhRm>Q%I<1NStqKLa={|kGf{;w1C|Ni^VX=MTavRV!T3peBHD!oj;;yZmM_s{4Fnc z$ME<(K{qS`*`x%|kN{6JZDU&}e;dn~6eqol`dT-%uIXL7;7W=OaCCO`3edfB=BFP{ zoIQNt@>wJ2SaM33j-I`vWprY8oTriYHOG)hZ_A6O*KV5VUDdvR=4aiT*KIv*FKX*u zJbm@rEu9NT_kRD?=X>@YA{_Z<*Y_X(`J3Zv$G-gVZ{K|V(I5Zo^S}J*fByXOho9}f zY;2;bZ*Ftd*7?@?>#p7&=fB#krg{386DO}6KB}g6?uwzQzF~m(MGdv@cYXP{Pru%K z+1^a;wAyKPjT;xw?n7KZ^2^n0I+w0FhDX{42ZscO#^odv-HZ({YN}h1%4&KMr4}DH zB)j@X2Kj`LND(n4DAV6RA;68ogmQes*?hFk+FhU1EGo}(u+zJ6-P$G4Kf0ir+VTv| z_}njUZS9Z_)S@S{%ro)qe-|6sZbDs+gWs^7u*zU=jRX;Vyk;< z-#Kdw!z-HlmOd$o8Bjm+9jJ<1RV;q*^<>8`h=H_E>e*U!P2`&9g`ex@3Y3gVjUNN@1tfTwO4}?RX zef`7EZ}(j=@pd*d(AGG6+1$!NQ{&h^wad3`t`f}sNul=kHumAE(G+I7neHtcJ4-7& zA`@zPfK+ll2}v=Tl$1y!DLyKL&CI36N5?Q(bP_ol0vtqOX*HSOS?nL;V`gq_=jIik zP*Pu5IxU-7UZvg5%W6gEVF>SuCsq#l2#`lD>i`dC;AU)MM&C-dsyEF}D6h@IApCGm zl8#q^3#=Sf6!-NLf)Hr@YQ%n1z?yXyvW+t9N z&WO#R!+fLNx>d&&g$BR*L5#wI=I-}3X6&Iw>YP1tfS-VbxHl) zcYFT&#aDZNIB;6y(!t~E8tR0-fBx{pKmF&w|I;qC#W1wPBV~gO3C|55l^VkAz13V+^gNifrA$n4rpPPMn z#Xv`Saa>pyh0H39VPZ9~q+U=@4~hs34z>#Pb@NF|&t(^KCuH->tNf%@pibP=BNo6b z{>q-NEa7f}2bL#RbuV|2-#ESK;_Sre*wpK+W5B=#R*nh^JU;>iEo~wIk7ExQ5rN?z z9+}rtkr@*d817@Ef7igq*u~ew?(SVbMpeFlAs7%rjSU>oFCFY`WY<&*J6h_CymV~B zqy6kXtaNW#N73^~IlBMo1$#&Tv~W`!+gpC5j2OK`myK?jTiM<=_4G}QiOAy#dHMJ9 z94x(}q66%l!>yv30O?XbAA}$_IWsdd*zc|ht$%(y&bd zl<4#*hp=c5*9iaUI8xCAbe%mK7Xcn@<@XN3OWB*3dAOWx0q$-PiE8PwF$mo z7hGWFsGh)!4?r7QRY;oQKC~_nVV;)Anvmex{p~@h{h}Xc+{gW+j>Em{=kWSIyhD z@%24)du?fBM&!4qcgrgyA-ORAVLcQmf)Y8qG= znc5m5{b9@7>IBUzR|!9zI;Zx_MZ)>BgkOH%`NQEO$M5*Xu}Jn_9$w+;X`Tj#`i_=9 z;i0x6Q6cy0`JfMJdK85@diq9(IoO3nyLo2t+B(4Gcqy|iH^kjPBGNgz0-l)yyqcVH zK4>iERddkCL-4e0ik-_$D<=8)gt!@ahbPCANF58Z#W5JPw6~zkLKbGHr)Sq*7%NKv z;l8@|m9WptPjGR8w+_`4_zBXA!x#{Bpv#GcK-|$Qg2(!qq#P2JOpOh+x$Wg0?Bi?a zk>e-#?%jR#oI^l*4l&ln~GzoTb#Yp)<|Q+KQNq>n3>l)`E2pgFmi~79xAvZR_C$y z)Qgu}(<^b?ae=oE)f0F%5mURQN6_6|nFm2UP7f^L7t^z#!j#k?+uL3~;qFfMp1~eP z0Psqx%evbtv1(&b{#xTty6)IZ4lqM?yh zfYq zIog@|xjAWHJbYB^lD56AhrOLHe0xKD6&kejESw!U9M1v{(x`EW^OluuZYmv5d34SF%(A>x)p zE&%tJ78XF2>}`+w23ylL(k9Zs%kV3glaC#8{-(qhuciIHJd zEnos&Ua%*VF{;N@lF6q*!nV_@vz5(kwq1>NAGY`!0z zJk4&GqO%X4!ELS8`FSK-iodf*q?cc$PlykV78~YhZDwL=aq@d@$1p2>gS+O|;W_M5 zhHnysOw3Ak_i>E~H&wqDkP_)+>u!D5#Par;n|e2#1L6Y$bj>VvPHSB^wX||D)w*IC z!7R<;u;|p-TL!vTw${38r*|Jab>V`cbAY{>O8}9U91u;4vJdsJx^qMSs;1h(gC-E* z001BWNkl!Ox}?cMVyPyG1v(c@ZI^l#j}V;xR`1Rb3XZQ?RI zJ|M-YlA}NIedXch^k4>PN zOvDm+u%`)|H?c5OOo~rQ3G>juV&M}XpT~jCB#OM5{fG6uG$8s z=00|3)edRdTHU^?tFPyi$|~@V*wiGu+lF_&<3eJBtPFz#+%Dg|rRNwC zk(TUZ?R!i8jD?%6t*e!}nU4>thTq7AO6hLqKKfS;b*@}Ie(wBLJ+IKnAV&|cEQlJN z8j})EPVhFqZRudGv3K|00|)mX`0o2XTDn(tbZu^`pZIb2&a*~tE>?lQfkC8_;=Hno z@=j@EJwyphObYR(cfhc?|H1SlY;hhp!qd+FrnZh}dJ&117)^}NAo-biB+yEVbD~Q{ z;1MS9gQcT3*o3X<8waGq;*?k~hv=AuR625N%ZDJq-?;J!X}2_sJK6;B=nL5_Ix-E! z0v-VM9Dq(w1%+!Wd`U$VB&`@OTHSzzAgf5wV4mXQ;r> z;pJyPJz#9+(c`fy9*drzMO}~4Yi9Fe)gUg4xZXZPWl%wn0w^~x>{V; z(ls&AGAEYstE$RaKnPFuq&c2Bt)_O#-p$S~k(QTDEll?fCl?nI{aj7_e2BC_r&vnR z)suVo?%a21-`=mjJ#)*={I->;j)k6yt3Ro@x{4S^fml!$y@W<#)_1gta$-uWn+9NX z>I%2Hr>g~^mF57evZ5%qfSexf7#dTY<{IqjAMWVmXBQaf?-ebWLj_($^yA}7v7bsAmxJz*@F2!l@_MCH{@AvmS_wtX~yfc|hCdo`DiIssO@apzagtQQM z6~$BC_*(WaWr09Bx>l4dAYA(JNIzl}a96VeKCVG}qWIHc{I2_}1f7YnHyV^3Cu=Q5E!&BF5cMN~C?Fj$p!EMJq`S4|XrAFBOp~N)5(8r9LEL0KE`OHiS@- zwlE1h*@gL8Q*{+o6nZZD1D49%ifDin_PkUtAP;4a)k-&@^dF-_;}O*B?!)u!cFWlm-8l9`D_Uhr>oe z4b5){I=daD(WSdhSMNpFCY^+rh1(&^c0cT5z}5On??c*qG7Afp&FzbNGaC{kbB$ym z-8H8s(s-xYKbf#9oUm&+->c7wPe0u;s5{)3yobA%py8y}X- zgq=K-3=>U@9cVeu7+(to?3~hTR-r0Y5m4Y%A7|!CI?n|PtI$REp%8~0>>gb^ma7{@ zPD@}EH#R3rt8rDpDRO)pHXkDK-)jz&^AkHO3;<|Y&Gc7Ou# z)1uV{`+bgis-3z`#knBcJIz8z7(TROCV zH1mJMlX+-Sb*?-*N-b}rtrJ$OCg~tTqSOkp^4!^$wIaf!5cMTO{&>MGAdO~bXXNq= zR$TkpOZIO6waf9FKlf{vjnS2Qv0ISZS>srsY|Qk;sVuh*sX z2YvXG+6!>M9J}_1q0aNj)Hlb_CG~HUYU(R#TDqd*jlwd-d7`4lMBS5fQ%A@TGg@PH zLNqWupGHwj`7B&EAKCeGRNb`9?4)hp@?C$4P4zX59g{i_BoyT$t!g;wZ zMAYo<+&^nM;QS*ed;sqQaIb|W@lvuiMo>0#BxtMMkKEH5RZxWX^}@yl%&wRBau(s~ z+ek1>C3D~UT1h9Kt0nAdI6xnot@XX)6s{#c3=y@sRY!k*h=G9Tv$LQp|^zVXutfz4nQx=q)`OaqS2X)AHqIucj2dSbG7n*tUXpdL_SAus-Al)p2C^=GbYme3Yorbhmp5PW{4S(L-z5%fi3P{iT zP|vVa&%OPLOWt;SduBt!QQH#{W0`KyT9Vr-2daoz6fZx&(A1A*QSR7hzL_BotCHOr z$PGK@OxDevijsP9lar^D49at3brOpITg;j+1MLj0rH~*bYD>i?1^Vi}RxkI5Z^(E3 z-fqXF%YvU}XTC)OFBSa+*9?;@qIN%hCLkoX4VFIMw#ju8BGq#iVQ0T_HP#g90&iW- zvkj}~bh^tf-i%fjw;BH!KYt^rZ@7AYe_x(~nAI+HyeuE_HEOLPfpd?5en#Q)reCG= znCKjq`%x2bCT8om8vNF!FX$j>VQ#(yEV;;-CJmx*$dbjdX*UiU-aIU*=!)0<%2LWy zo^qvV>{TawCsSNs5g~U#yBitF`%|V!&Xz=Tl(noNG&_w@nvpT;>4_nt-0t1^YqT-L z=>bHv!dFNfVyq&shI+9%U^xLy;wnm|W6Asa&M-ZQp05gB*x1KeIQJUk>;<3Sp5XCh zFv$e9J&3jKnB?vFjz-ySxxL+t+z4Z`nhgGQ%53H8d@^nHf`Eoa#rfyvy`_f!cZAbt zTvrcUAr3C4SpAjdw~GQHGi>IBpBzcEo{&07I|IlJ{U7~TzmT56Tk!T;xcijAKM>CF z(BshMzEh4nT2|5Ic^$JnCB!}THUn3JCYe^sS@qXsUT5{Y`Q28%lKiTSs^YW>!Ph0* zA`+0G+YBdLq2U(t7b)k{wHuBf&!2D+W@fsbMQPX8j5z`aRK~yUQDBtr#rxw3(5wu8 z6|RCn-ehMQ=?~J_@mf}^xSX%(uXe89mmR!q+TlHq$s$D>s(+=5Ialvc-H&dofXO!-UgwX); z46-ShZ)#zLZC95_i&#d9t}*jAY9#VOk85Z94|ssha;j#_pKwO*u%31^fWiSd1`To^J1_#1Pi z$X&Mtt|KTcaYF3!EVnrOrVxd6-0eM0`4c%*c5S72qMkj3xFlOubkf&<%hYx$(vSA{G4d6Zs+H}TY+MP)s$Z=xm!q?$&lZbTv^ zn<{$fh3kqMdO}T27g4ehp9}rG7#GmjXk>)@j6LBqF$=K<7kAHe(6eqUdb`^dnJM)_ z=RMpp<25;k!PA?8n>9PWjNDnd8mwgu1h$1(fn>4EbX7-XgBQdd#+X4Nd?}{iRpJxG zr8p0b6O zRuPA$-d)jhoEeL}lTv*d1uAO^%cISPxHCN&J?{IyJkv>|qgy!yAq_E}<)ura7gkjF zqz{%31Ec-@9|Ghbao(XRrf&1^Zcd7mWTiJtMYd~ynCA@<^G@Ttq2=dPD-IAAVhi8_ zQ6qVMBu$rOoYD8zu`k)T3nVxs))g$pO$ERnKIbwOSD0F9;aPop2~imzE0yTaEN!2n z4H1i}wJOIkU`U_{SM2X6p)1?QzfsOn!VaQ zQ542i)l@;sF_T>5Rb`J%Z`OL;593=OFsxSZ56N7QLS20bquMB5ET41F^~*K2Vv=ut zdKzRERM&OJ*r*@cqZq+{M*ig`a(E+r3*8oc*WTiFm38e!N#hD!DaaHd!q9kU_=laM zbXz#}QQK0f5~ieF`H69MYYq4g6kmAPGgmhUC-%zWqTK>sq1}wle%=Rvs2~JBcX38z z_QD*80PF$jfzJ&@a(qWEL;$GUs&jVqTbG;E%#yU({CnreaPg_~GDe;(Os|%R*kKm~ z1F^P*qJx2hp8-f)&Lgy5o$}Pd!*;tbysxi8QQ{Z+ z4cfaajJw29R>k79SvDodEG5rq! zA6{l;Uu{0$s@?1=@&PrI3Xp40vBr_4rWzj~FRJTP`41K7FEqKO@3%TUqK*>0N4Aa4 zaRT!#w&r`kf(~-)`<6c&&Ihz z@l}Y;8$XOZOn6BrCp_ZA461t^1_xc(Ccq@X1qTr~-zYpLpRIPFD{+D1b;WTN)qV5v z)2TClZqHTK^^~$aBD4T+sLPk6P%O*Jq{5ZuZCw3PDZwG1#Wlyj7u%K%%G#8a>hfQs z!u7H;@{SKLyyjjQp8C2py81&P#}IX})4;d|6-|x$01^oNK(ASaLa%CXzVAK=+P zPx7!}|5EHQB6Ezw*IR=?jiOOOUF0B3iJlT~5+Fc4N>;zgfVJNe7H_46GSxWkdaYT)AS!hrI~+x6`W^I8YJJISH+_tZK%aD1YN z;;O#{tQu?jxkKF2=GwDRX!I~cO_(donwdO@n;fRu>WWN3cEkPiL)@@?Tr&k6%9mXQ zf*=qP_*jD?)C{URv&WOxvit@gCEobAYVONRt|}W3-2%@ad(W$B#{hrhv)GVvwK86s zlGu_|esh-YBv!Mzd8X|&#j^Yfbmggns_?F`&%0q#YOb!N*(TU{gwk7rQ)P^#y56 z9C#|=R}i|hN-E-1cJ;*4lhA7+AG-=&b%q_y# z!}nya_8W{Ibn{;DifRUhgu;nqSZQgXypb$Bx%HbZRuVrq>Z5Fkmd*fMIV!$wZy#`7 zNLzlhJq_YG;~n@02pCIBR~!9?~DGhP zOUre{v!Pq~`;+3CZ-cVzeG+VjW8(wkhX=X+qo_)O<&bvGDK>)oJqOuML)_lts?M5P zX3k6lj>G)Y?X_95ZWJRD(+H+piT1pBjCqu@dO*(HoA8N*MlmZXS*J`2a zm<<)D!|mx;JF`2v#Y*5L322GOvCMW5j>xZOgwb&oOy%#)oVYgyG0E+_C;o*cO;H&B zQH(_R1n8$vz8o>A>H}fxXS#*;JwEr55vveQ3O47It}I!IB6R2(NYEuDTlwwZS%O^! z#Sn`|ZC_uoeGZLudKzA0vY%fE#m+t#y_(r62zWW9v+^n+>a_A&aE~*v4{y%i5TEW8 zfw0kEH!Rk6Nag9H-nGVMohc6T;R>e9Sk+$@k+bY!!#qDN4V8HAKhHg`;z-(?t5d7H zPUgrTyGuzMiW&8w357O1%VoA4Ae~nQx)w9JAFQ$oF9q%+jokqDlXy4(9+VMoy^Gc!5ls0Q3OMfqc91owL64_inNN-A)W=OGKA8T4O9 z9i-{oyxMDTWx9<5eB`WiNDIMvVB(5Oj&;(2))pgcEjz1O6qitSN{gf)T>oSq+n3Zg zVMi)vtAXPwB@H+|I0y-a$AMX+o>c{@1DvDZO0{rvrIls6Qc6!X2ykzw;WS459xHZ+5Aqu%XDly4qTq9M=tuI;a5Tqh3t_?v zrh&guVk^kkVm-HBXSyyO$Ij5x>UT2VPY-=^W`-5q7K$7@NF~6wvVV;+D7*V!mp_hV zi)^U&AnhH)4qF>MC^}`Z1Sn@cdp$DePeX5r>i0v(DD5jf5(N2PE?NtCNZ%;yypiE1 z=2Bl2{s^uFCbYhlV+sWqn9)X-O6k*fw0RvnEo1W?`~t5}Mri~e3l`rnidpnC0lB=y8dquM|dr*x@oX zOxU9DNIOej%-tF0HzX+P0CW4&EfQ0Pi@Zw^+{=#06v^UGG4!}R)P=gJW5?a?X&axI zb9DGSJ*^Irch~|}u!Q^#r(?+|odbT5kduMg3(|FU(TZB5om*tB<9M6Qi*9cQ^EnF|~56sO;*=Fo+%cIAy{RkG()y+RTZ#E1MsP0;# ze5nqDo#Se6JjFJxXRc;F1+iO_V)e;Vu!oE6H0T0%igUE4Ja!2yW$LwOV~+5a?|ERphLoc~Fq+WzLyNZf( zvY@esH7XT!St8-@o@C0E!6NvQEw?lGlCU47vCL^~-F=H8F{^8%@_HPYs8RVG>Z@nK zgj5+6nD2=G)6U5o1tWOjsH&ZdSYWzp2>0bObiX>e~f4vPYh`L|NP({!Ltgg^e7hAp(nLB@|Zj;quBsRnxrOuDh$>cE8jAwZL z*(~d$Xp28traU4Ue*N+E+ZD?)Gj;}=bX`3o3ETQuh4xZoLm6^G@%$_ja%r__()I#% z^vT45uvW~5dfh24wX!CNy^|g~m3;NR~0r2onZg>&YnIvxoD!GJCx&9hM7KBKSP@3Pn8XqM=iznTuBRVSkNH{!GdCu z&e}pq1D3TG@f`ZbXBFmbrMkLUHJZnyD;8&H_*dHdhiy8qM33HzT2=kLH1+Kkg+X(B z$yVn4U_g|u{AX)Vu{cEr;L@YV=5*& zIQS7(EY)xXpYt#3PoS=Q?9Oijx{UVz$14HtvKq4zZY?5rAKyO=?C=~xXVy3vbcknI z&!IC?b5gYW{lOP9tcPwzC2xzQ`t7|Oy%>vuyAli!2EbiZ4dmAr;~RtR%S;MrCUA$T z6(MhIF^K#3eJ54Lh$(YTlg9aIHW;;7Mp$qJU)UPOB7r6fHXJxC!8yX>*M~fgq zmlLLH@x5Qwr2-0jQWuVaEgl9;K;J01IIPActl^H-+CZGY5M%*W`$LQMILon(LXP3J z4fMv;)M*9OYVwVLN%ga^mJsdk?|L9Fs;qpL)FS}FWjU(|#;H@OPO`JpawN2JHVeLh z$%(+c?xAUyVyM;e!??*Zv0}bk+UDxo!u7G3CRkk~Txv#P6<2U@xV(xolG^=U0Vh9E z`AId3k#pI2c-c#rAIhu=2sB4ZmtTvDU>0{pjFx41UKiHx?Oba6Q<)UP-LC~?_9uLz zqf%sboT|i|4?o@w5EG2ot{BzRrTLC&g%LjjEXhplN)$<@bX`0v9nPN$D~4gmi=Q}X(8D+)b*jnl9HXhI zB2RD}yZ2sJl`SBWM6^k0Drn3pcAq?YcjyoFQZqLRy$vr-h?aPS}br z0FJK!LLg)q#19H$Jze~SLq(r8Ify=wRclu)#R&voT)X=T?G>2YKeQ2`#ow$oFm0P0 z-rsE?|2Gp}zn|_n+Ip8spv%GPBzgw1J@YMMobdO69v7ZBwl6eA zR$T{`qp|l5At$k4Ml}sN{_Gues7J%uJFbYlAKHG@1`LGlf%Lc2Tv+kJ-etp^bvZQM zsQ*qWiU`YGQaOM(`p26O-gFIvzRCb~fOBP1bD)FaoDl2c(ux zO@!~B+jkW;713lj%MeAo3>^X8undZPs_nL0D|na&_YSk2@~CKdeJc((*0;23W`ay(0XgSV{@1s%xVBB_oHTw%r|D-i6qG#_~hR}{m zP3(PRt!r*5a9a#y$RTd@9!};5ZIB6OmGPA(ub+~HO@;@}6g`P?qHsY7D1-y=#K~~H zi5pp9L{BJ2uUwf8|9)_^vD%EN%!&i1XpuSVX$cP~#j{LEYf{jj?QJUa!&)F%dSP#T zL*+k4b3ZZRQ!GZ(gudUcz!Q-OZ=p3h{)srH9Jgyn4=YSUTncbZA0@hGvviokK>OYE zs+k{zCd81kPRQMLmAoxkeYtn}lQ41`ejV}Ojm?`5JTt_(XP{tAC&HwjzourlKR-IP zPigBFaCIuBBlGb3d`-ypX0g!GtFMt(u}Vj}|k+vG3M>l(ag&WF61tF9SG0>r5R zmL-kp&CEaNdP)A7#)a)SU{J@5&53`zRtFyfB86uy-WbuJx?F{Z(XUs&J?mco0J3zpN_CLvUxV3rb6np)o(~NT7M|nahF5JqG3dG2N`&$- z_R+&|j|6{LIhcVWP%XT{(zeL?clF|*SWB(xTy5WIiiMxtSnEvsvr5t>u~*xs;oW;G&>BfI)39L>_SzGPMQuc zRu3pn*)NwEl^0*FQer>gXzpwhC}5r;T~OENr_puuSr>gMZvfzYVn~bKJ*ObIdK^gW zgi8Et&0T~47B6};8Gi7(u}w8K6nQqASA*@ zqedxeRFW(&GKfP3%4Lwe=-MIuH{dCv+|RGWpYUdt)rv@#5#v)tP%Kl%9BB#;3u|#h zgN5Bg1^zDXs>Y_b3OvrH)Eq7$#uua$RDDTb0+i!AQl(?4d zKs(i1JgAupj5pb>Uv;$z<3MA6MMIprKpZUGcDOL@J_!UFr zn(&IPM)4%OcwmrM>A<`mpBm!7J#|Cltm-A!W@kAyUTt|4Lnq~Tv5N4c5bs~ZZfHl1 z2$!;_G!oFNBkoMim$&iL)m#)tLYJs7o?%*=jQr3wNbqX74iQGA^;#&qR6IJ22Isv{ z`w3|DY}2S!e;pne@J)|hF)}t!@P!mcq`ewcbTjT8E&7Xr%8ihbh7C)$x|QEcUsqqy zc6QwSo~*1sx!rM9ul|mJe5s)*elVSMYkp~Hd!NFz{#*8@RsHJctpK9l{S(j>63{AL zreMB1+W+taKJJUGa%zj~uL);)e(TuBCmv|bP z2jdx%^a_L$4O>VC=-Hv&cj7U!!=CB=UHo49KPLLSLRXei zuM0PW(f+3?tWItvej^;}h6Y0l_AUN@!ulTw@G-0f-FQ>=?@b%51!kVX_Q^j&?Efq1 z&houmo3kp;HEi)7mc%vvPlCy8hlV#Ap*wB{n=u|hgP36Dyx+PshiMni@1F%wlWXFm zm7Fr~Ow7s2b6~+l@!`e&n}D6o3T_DW%^Oy9PHxOZ)bRgRb5jE1zA5pLY0H8g{W)5< zpXo-E%c(%+*dMMRu`k-O+W_XZ<#JF5(MbiGQB(ftTm3MM1L=tXe^gy1>Q9Q{34AKF z8HB8?LhI-Ic#JW9q$5@;UpMz~8K~=0Wgy zjgil@<=J|@PV$GT!F#8*vO&D5_!3(aLf9um*7Z0vUQRwbASI>xo;S)}8Rh1xAVw~n zZ<99a#UO#H!I{{^J7FQ@RT=Zd79@*@C9cco*8K>Tbk+JkQb9$;^Z7qBG$Mg*oo#|j zXa)9mtDvmIz~J4JqiNrk;OycqMAY@JkLBhjpi$7m;TW2URNVH?OYKA-Kh7ITW#!|W z$10|9ji~2iW#*yv7ChJL=gFp7y^W)ZZp?qW`-IZBR3#evTg~UJMZ*vv>$X0uRbPup z5`l6up9a-@-?cF>xWou3wy){*f1Kr_sY`37d72OPi=JWg!fV}&n*`~w_Rn}~6C73Vi@Lt-$qSpu z74aEF8j+sjVVC{C{S0RI%?rG9utS-fZ<7hL9q)2xOm?^Z)xP@_(hp!>S#F9zUUFiS zyvse?EMpc29;r&>&#M!j}rE(cS7>_hP zIOmoQ`T@Hwx!R^w{VOVd|s@DXVNC9uNr0aG5 z{XP#M{wB~xaBBd8BFv+6+YBu6=FU`=PQy54PkrH}nynBwV4O~-yVxW^H8pK>Z=3zk zaDWeLy7EPmL{hXT6?Fv{tH}EKPjYAV(2^WU|%r!5-V zaFN2<%~we&5178^uQkA^{5{Ft!{z4fh?5i8yIS-CAUy)Ab6;=F)^ezv@+nzn^~E0H zL=k@>&J#^6_Oktir`O0b)=tsBcp%Ij2I#`9PuE#Mc{yncR5?yMXtt=nNdfCzJfSpVYG|+ zldiSjEeI0@x8qNNs0*nQC%#4l^k9kKwx^dtZ3pILp!o3XCj=s5WckQG;85RN3wK!N zDQ#k7m|P`5`hU|5?z}pD8QX}t-iIkY>EHF?G;2>-!oM#}VpaHE?iT-CZ(vyzs>}PF zBq4_<6Pzqf_eMTNUqAi}JOBgbCV%`*|A$613avWj-`1Vrjlz*l!9P^OzqiDF4kgoU z|J3jN35x#@AnE5KTHr64FQ)9lA=8NzzaUUn5a$K|E^O3}ke=4_r3O4@3(a;bWDFvG z2AHagdbWrbyM44D#`Kfi@joBr)Gub15;j*;5$Wsvg{;QW&wIip(zp5h&nDnc z5KJ#dIkURI;;jDyJM3e;<#ca-Mr(yYzW`t(%CtiZmsahlwgFYB5a=p41EBYQAkpn0 z**9(hX6xwyVYbBw+)x`wVIOj4=c1go%igX3Ky3h6&vEZ<1`^?n&2`|3z+^=#=F1U# zdVdxZDgJ!sPeiL`g(y6aR|*9}#5?{lAy)YDO;B4;B908nYD-?;|>5(WTq zixf#{@frU2k#MuEr*&V2a0@{Y0)apxkwip9#KgoX6pDm|gp`z&jEsz&oScG!f|8Pw znwpxHmX?l=j-H;Lfq{XMk&%gsiJ6(1g@uKcmG#1f3v6s`?Ck6u92}gSoLpR7+}zw3 zFJ8QK>C)xPm#Qz2IzH8U6@$>Tw2nYxY3JM7c2@4C0h=_=ailWiz z>({T}xN$>FOiWx{TtY%ZN=iyvT3SX%MpjlC#4fA8Ks0|SHm_wO4T z8X6fH85FeoS}I5;>YB;@hq$4{O-2@MT>`t<3uXV0ELe;yVV79JiR5fSm?#f!+u z$f&5O=;-K|FJH#Q#KgwN#>K_Gdi5$kK0YBKAu%!W_3PJ3NlD4c$tfu*si~=HX=&-{ z=@}UrnVFecSy|cH**Q5mZ{EDg&CPxL_HABXUVeUlK|w)bVPR2GQE_o`Nl8g*X=zzm zS$TPRMMXtrWo1=WRdscBO-;?ackgOzYwPOj>g($p8X6iK8=IP%nwy(jT3T9LTie>& z+S}VZIyyQ#J7E}p|Ni}l4)2+xzL$r_Y~1_x1Jl_xBGB3=9qq z4h;Wps3OY;5f7*RSK_;}a7TlarHEQ&ZE^(=#(Ov$L~vb93|a^9u_L zi;IhRJbr0u>D#w&%gf8(zkgp@Sy^3O{qf_++S=OBpFh{v*EcpcHa9o7wzjsnw|91S zc6WF8_V)Jo_YV#Ze*OA&czAepbaZ@td~$MfdV2c%_wPS{{+ykiou8lo{rmUdzkgDz z^Ctw4C&Q|ndIP{2@t;2wx3c#TfQvxmj?#Vq%+2=G3?2=$#gdy>Xlvoim&m$n%Bgv_ zu7vs;e<&*}YDwLy%r4A$8&>%9AE6whQDukW<@<1?k7xA(#1;O4S#%ju#R!BX#xo`{a2)HO6L zt>`iQB|^zWCYl1#yijsNpRES2Apf1o|6iNGX>!=lAWB{n=88~=3_imbUHSL@AgSkU z=d6|cUx6C_DC^Vl?$kfdl7V8kdr$(n8=8H`D(bAeA}8wXyz|dz?msIz(RXaaiKGR2 z{yWB<1;rcGuhs8-iK+b)AM}6P&jz4V{ujaa$!EXrJbwQQIE3-Q_ulZuH!c-P>__j` zGN1nVKb?b#AJ1IrMBLn<$GgT8nUFs~oXMQT1BaOZJaZAZm<+6~35vb70G_bKohJ~T z{MJMW5$_{TTH|Rj4)_Qjc+!}l@>eV{Z~PN!S5~oql9!>5j{i)*4aEMl{Vvvd*7@Y> zKKK9W82$$Cd(sexW5-)T$(Aow_%^O)g-e}nGySTa5S#YgNu#Y6@sjg__tIMFO;Ze5b zjJiHOek1`z7&Rb*Pa;2nh2NP8-p(BV3ig@vzZxeU``G>DT$z1p{oh9#oo3E>W9t4l zv5`I zCAVX9h1rM^pLUm>U-Q4Z8R>hBTkb3fcG-LITY2S}wAVubxn`0V{PEWsq38buOCg%7 z29ifN@85cYBJ(lM9iOLO;T+3LVRsG^ERpnS7m;d|YVM_-nNq)trcJ0M*rZ%MJillQ zC1rh5JUYho)t*h6JP8;3!-frr{9{^)Sq#t)XpeDSG@2N3Q*ZVN{N<$_-%XV(Yq&+d zqOZA*`lL@4;EQufnw0&ddzdwQ9=;b)TX&xD^Gm-rLdYj+J@9^x6GNq@6Uj-(z39%k zq<^-o*7vcpBu+bz2md?oAHU7w3$?8Yrje?p3U2U>4>U1dL{*N|yU z$HcAc-f>};EenXA+zeye$L*u?C$}ATI8wRV=RT~TBION!{;ONrC-FBLL*2WvUJ5CW z*Cl-I>I=m613cMc7eB(H!l}bl>JQ|uw{2v}>JZjw&2~A+T3=CC>Kpg9#Zcv%YdyJx z!V*~<2E!LHqk)>gx1ZmH#nLBo5(w_OtI34-TaC-2)_aFu-b_0HZ{=$Db0AuLGDmx`C&{~Y9mlJ<;z z?EK*jf`FuI=V=&W{V)eTbUbMF=m`GDFjMsrG&C0!J^*n}GqzLJ_fY=AMs>?Sd%5vH z`@vlPVd10L#x_VX9?aHNIcf7FEe<(=VvxS^_f$$E|BGP($xA?_9&qiKwH2{o?x`mi z5&GXiU`N;EZo-l6cgUGTN1@%y!f|V59D{ZZ8DX7UqA)vxe~|J8P9Zj1N_03fyNCQ) z%N1H+u7c|7-VzPAapF~ib_r5`)f1yOwqAJ&CP_E?gFwpv3<|y&##K224mgg_Ku5QF z+}#DxTSbqL{vIlZ>vdkuRO@^C!_5C0G45`aFzh+3Nl`LA+4ctLKA^_G{|aSOlI?1^ zky*~;&A?`#!6is>vhEv?)it==E^I!eqV*FJAAReN7}!;@`*Pb1%Klnv^Z4^pslt#4 z0?zi%L_J-fq%HuvKZS$}{K7z$qnVVu1qn{B-sbjKp5}rYlU~nbyow2K_yZz%z3t;2 zGTPOb-3QKY;up&)L0g5>V7PvX6W5h%kKP(b0V!uTje;?HHOWiBxbqE&6T{I6YRbPA zI0q>J-ZIP#RhPcJ;1<*?}BP~>>HbPStUJz z&<)ANbyuycG&l_>*|f~-o5h77CGlSg(vKCfej*6)OZD=ra1|tG}avja-t@+sjce3n=Rtn{)0=WK&w(Fo&)c12CNP%rS))@ z!h2i!V3^qa$9Xuhg1gswX{KsNpLvavZh4RErtv9nqFdfFjYslCWz$ec_Q+&%%6gb}zapKGDTByMcm2@Kf#f#pfEavNl&C>iYbl z)Y8(e?~Ue$8*^$Kc>K%K9>ncpz42UZS<)RtA6Z>PmR|_NtS^UwUO$U~2Bh7V?;X2c?QlH=;>j<{}MCS8+ms(im9XXxbDq+S=sw~BO?Blg4awQW@rzPmzvU( zyJxPc{UIh!#}4@`De1n7ZzU#vC>fDgpv;!w-uXTYQR=AYC=Rdvw1wtWJ(ZyA0sD_U z#+Hg2-e3kpR`r$M8+0fb>W$dklr_~Gd7>#G*xjP=M>ye;O8*h(QUwd+{p{@fqc~X# z^1?h~-VZkC7e8m2j9xr};*j6znTm?of2%fOjmXKJ(PmozczU(r9Wx~*iL-4!vdH|~ z0V+z6Zo2b8nTvgFR*+ep@?&*o5xEf`hv)vEuXA1&oPkGJw9>;5%PN;cM)K81A6>4{ z4fYTSU~keH^Nq4O40G0={itMr-1`1*{-Hoa=yA3FM~NOjN4B6W7@p2i=W z6;F`Xo2(Dq@OC?r)!xbCl6uRVe*@L+#@yTTcBkErx!t=YcVF~EUXkfI$=yJeMB$H8 z)dl9U)1jqtgB^>u=X#%KU>@JH=aY0B=qmU0w8E4QoyNPt53SjypAQ}CQ(&S|1|e89 z8SEyB8)oYdVQDW}0mfk@{*$O(M}OR`=Q9v|_7X5eFO{4P0K%~@AM?Hm#7d2$5c0(B zo{ab_MNB_LaDFKwAj%BKS!C(Ee9;%coY^!?0z^~a|2)E^rkI<*2Y$|MmdF544udIf z{NPuxnuYO6wG_eytrh)o2XJb%MGpUWFd3NH|M5#MsG6axjf8@)0oOxGYb|Z1fA4K? z;98#pVw|~z+hp`tI_+cK^kj`WW692hAneX)D5b&#xIG4Ojq(F)hl1PApFG9?~w|#V!gke=0 zW*^_OIw&xA1EL3XCJC~6v7|^`G%GBpgLC+K5=sI~7?ED_#j&3QD=Z=tEq0I}O;pMH z&5H^23gI^9fv!JN-VNzL@$l$@09ck5M+85B4jP$bSMBicTs zOUowLK1}5-&Zfhg$-XRbD)_b9>QuN8;0bZ<5&7qa7OGc~Vk6utpYz|u>DrELG8pDL z&31seFQ4o6e51e)50q;D9nnO!<54H514LSiCHO+Le-C{7=$p4hg}(pG66{0}`7a`x z7@_PA9ym6Akmt26BVO49CnxmOlOr$@vLK3|@X^4vF6Ew50z0cc$iKqrU0nOWWOCS$ z3)ITK9|WxXwVZe_;qWkFk|va|Spc#}Bw?gKBaeg<<4w)j@!{dI2C(u2u7eV+1!Bmj zAX`+VrqAycC&p%vn|k-b{VZbK@x{DM%rkc2z8@7$%?^8ywKeROgPrTR3|hP_AH28C z=7B33N!#H?PPr2ko1{9|AhH}YZcWm)J{jf6+9#3re6{&0K?ggFpexTD2bPXOOn(U90)WKqX+w?nDF!y?GKPm(=7Nf+XU*XaNWO2cKkb5 zU=hhbu|ve#BEf*eZeNB}FLtBBEyZsW`J0m#C^F&po{@22*3@^3jw68ItKX(`d*tlM698p5cs+U9 z6Gnv(tPom)uoXt)5q@{}-7cU>s5&gA;FxCKRVwOmq<;?uUJ2#Z-YD4f~Bj{hiPYN!C2=ZGI}V;CUAvar(K z?1%))B%dC)0*_RPML? zuHj4RibMuDP997LG~MhrAr2^Kab9_Ze| z9k&z(&@%P7Te?^P{|IRAldAPKc=!8gQJj-5_%v>+46TwjLtKpzB~NS`-+dV)8)V={!PN^+;gUuK7;=X;6K9THxv2v(P`e}UAOVu0&s zVNlk=^_q75ec>m8fRl7^lWt&#@ng>ofE~AN5&5O?@$2)D2*EhHFsl#KUz-)blk8s4 zn7fWRt`bW@-KS{U-L;| zlB_HCxzf}-eEPU!6`W{#)M{TQ7;XmcMIgmI@zFKd`;Xws=oQ3f%_!B-tP*aJToz&B z0kz4si2$La#QIvM+gl(7=rp7{)99s@JtE z9_GX!GqJ#8N1T;6pBUjTX<7j8rFkSQ%vk#nuo?}?n%4||ajApaa6xycESL(#-I9$s zy>Z8vavNCTRm=){RqD-Kw~ir*VETE7l`onG{E2{ z4Ruq)PQE0C!u{(M{tI$8~}-@Jj09A8Z^=F{RDpF1CX!^$Ez}sK--**Xyh2 zQU8|0HO}9BMWK&!a~ebI^LwU7+1azBuj4fE5()_T`(M>+<<{97xkALa&!?7zeAFFh zr-NgsoH+}4bE@*n1vKwv#$xqkDF)^U3(*%id$Hh!nNOzNov9+f0p2)eV zVYK#I?>?fbTf(wk;sSg}<{>qX&(uMUJ!s=8u#lrWMzFTfZ-}zO=jSCrYrv%JHg56` zuD1w_*zhL)AIA3%c~)|7tJd3V;~=GlbggX?g%#s0`1v+<=_{&&k)8r%7jdB|XQR4I zBpvnW^1!gm+X0n=KLj_vl;=Tk#2=`WZesLbIa@_-+;HCoSda~wD*x!Nxi|tnNMYtf zqkSK+3Y>KLSDhJAk?%sCbFU5mJs74y?OyT|^aYf<_sOv|L!P&Bxp@c>8x7)y6^U^q zZ!*^yp@mWm&5MJYy=X(T$WS)V2r~2&PokEgy^qukm_f9CO}LlN<-*G6VU9;ZhhjKE zI(+(=0tKcvF9RvBT{aAMB`MW}W@JAJ6Lyh6sYiKVzr6s+rq_r$3L5+r9f^Oz+bKk9 z{>a+WWrW25B;sJdgPBx-nncN9s-A3Obf`}=xl6PpPLPiu793Z&@Vn`Po|R0WGf)%SqJ&=B!c^EYq(*DuVtjzy>L?W&Kf~Yzt#9*CSTli ztJf!y)eU8{yvc!3VH^aZ6a`@;gp)=hDSBYxW~H!)9XP%SXK6q>{(#c`I)t~pZME}> zAEm!a#A=(bOw@EghzHCGf`PmKUcWh_%PDSKx*-m{Q)&!!p^oCX!4|NP%a_^3ah1AS zW~H1)v&;wh=SZidxO6eY9CyxBD^>5xg;d|5;625m4W==mxBK7@P73`zlb&FKi8rd! z@Su1eD<#G&Qk4N8mTO0Wcav;jrra$A=&w)I&2-E_;yb$vpV$XWZ#A@bqckOY|Ck4c zYO=uA?GjtHc6EY_{%70sqQQ)T=f+Au6aaR9_w;(h1C17+OrOSO{|YM1noDYK zxG>IddhfCaj^?hN^dSo9R97;&eWJi5*tggJ^1lc>W>R3*_&*pi@4}Es>19A8hU;Ha zcq8L0#x_AO#|qc|AiYsW1K(mop5R)Y&W7yTf-gy4rXO*0RQMt0 zAml|-^!IQl^<-=w4QVI5d|R{JqwWRe#jt@u@M>if`_f=UWx|Gn@L}UXg)j z_$Tg8?(T+9M83sJBgQu6)yVr6uqEk-e zKL;-aWe(_kW>YWz3*R#v=iGhrz-9COv$?s1iiWwlnF=aPK7HcIY6(?clbpW67{v#d zl6Rk9HRfMnizv=*Of|R2&Y0~97QT1$_v%$`@d46T6W6|Zs(-q{)ZCnB9+3KSF7l3T zuaUTvpRJ2af@)w*tiDMraauuuOPQcl<3kq;<>2c2`aX{)TxPzT8=cGNiX;!WnqR|N zOYA(QW^NZ6vWUc0ycREij{mO8eKcg?!PB_E`TG$?-dhKXguLe#)f8gN@0ATL)pfd) z?Um!C*W9r&u?!fEB3lc|vJW>P5ygJd zNe$y6GY%_rKI%tXC5L=?WP{QBNutgJ>IVG?CHb!|_v;xh=Z9{-@_&BqvF7Gj_u6w4 z)~CevUi(5RdupY!B!3>3&K%)dD&D_+h%~4+ohJWB;@I}_mpy&EQ1V5(3AHsc!SBxz zT#jD`@aaQuc?;uie;pXP!q)uHe$^$p_egfz7o(~-onTF?e||fbKkQ?#*Dk8bprEt? zmUYN`6e+>P((?3LdC#vaf7KV9Mtmr*v!v|4?F+%(bzDi9<(+*0u||&}_*wCIvbDxh zpCPx%hBuE|tn$5@+0cS70&Dh)_FDD9#0k$HOj&r{)KB0lt@ko|HQI1BnG_qnuiX_C z;n)(b!*|B8!k&U^`bgCD=CulkM%|4|tqP+qhWT%)zr`Tt?yl8AbNRAFp>#Mkn_24W z7FiuS1~733>^FK8RFtPQDDgIdpHNu$mlntT6s6jrsc>qB85EY)Lf6IRN13Q_=Qef>#-oqr|P0Pq)>-LAs4e!jR%mq=r^ znPIGdmV#O`gtuV+wrmleMz+h=zZ!R7SRZ-ng`_NYGP)xJxE=wEB?K$8(k9WLTGYu z=IXg;qWH?QdK{E#O!BznzP>Y9E-!JW_+d!L^d*;avs1v1uck+mojJ@Z{=(GSH*PP;F$;2q}TlzDo zO0Fyod?@uANyP^`h%Gp_Az;P;d6b2@^Wj&c($NiaCnfG^Da&Vh>vqBKkzbRO; zrjxXJMjCQ?t*N)RE>EDs_5b;{n0_uSI#RAeUB4`;6d|I1{@JgF?@0kMzTVu!Wcg16 zr@l*HKmYJ|>77Clr-$2+xO?D>>%X{itDV-PZq{ys44bz4igfoEqn`>cZi;&Ag8ck8 zUy6g)6}Vse>fmS#`3@x{V#7BLg^LJpPH%i?$&KVRG(YXT;9l>IONklFdJfRk;rD&g zSUJiY<6qHYf)_BaHWosYrJ?WwPXUy8#SqzU!T}+WT28!km`aM}_qF!92uDZwM>E3) z%4lQjWikjD_mtnd%TWE*lYzwFu!)N#Rr?=32!E-^cfwd`X9`@fmso$gM^MYN!(X&z zs{pjEh9i-NsR)uhB6XvboAduW{Rq*fKrZQi&>=&CQDh!*O$8~B#)9tP%C5n$yl;?V zWA`Ih+-EPzzU;ZysNBb5(D8x{y+y$UW!sIh4hF-4C}Nz0dbx)uO;8Nd9S8k(r{2v^ z<9w69LcAR7DP4^D4h%gFG*)RhYcA@p_Z>_ER6ld}M z-Zu@C1S~}g{fro;Ruwi9)*LDSv4iv?T1+Z-5M*aQBI$h?MN{$o} zrbs(^W;up2@uB|`ca(fOXOt8Nm(L)PKXvI%(v$pEeg^z=Bu0sluoWGkB5zW*Tqsh_ z8>)EPVRwJm1tFhYRevk#Nd_mt3EshJ+!=RYzCg6#wO8^UvcC|6EdTOSPw=GtQp99N zZupaXG{9U9Vjw<*c5+&Ww?9nOVmW8_Jd^VzDb41_2TLLUhJK+$Ph8@TIAWu zixBQu-I?(Ogw{Ao%w?n3%0r(yVD>&YmpQ|^NR`}08RG!X_4J&DK;f^GA6>rzil03a z8z7YeDm2J@qcitm-i3R0s|keX{z-oCG|*+RZ2vV1cyx(hHOri+bzZ(w-%VC+#K;0o z3{0mBI!q~s-{68I4X#td<&2ZbDbFCQaV^{))r)-4RdE%Ced5)#MFMS`Vr7xA$#V&F zcLxM~<>{jAHT(s5P_Jth^kx|bspp!?KbupHOub{z5ZclGmb(&5@y}rGPRD|bw=vc%aAGW_Iy41MtFX|AHye}t@3AOL-E)Gp=X0&e>tYwYNEnm|S#Yub2^d)|0$`vb?vZ_jOI z*2A&h?F2wJ3m{+kyD)K)UWUIzZ0y#wEfaTv(VWTVFTovZ%Xn{;d@1C3F<4}@crHn}Sm`zE7W!;rl?ivF1T zq7LRsqppL>1?pt$fD>ryGi2UjH=Np9YR!kq6L=qCkaJ@}1 zMs9o&u28JUu)r1R#MnKX8#oC$cx=0i6x-h4EXIn-aIUHEoHwspoy|!U!JXnCyU9m> z8CL?)2j7sO&_n7+vE5U18pZWLC)aKp7W4*mak&@s$#6Pwfef2n*SeqU`n1Gufn?R! zICb(z%3`tsxK zh7y`pYC$*)<83IIP+?eJf+TshiuXuZgHE{1Ky`751JqlU$cWdJGqrU!&WWB7;SKJ3 zQ`>a(gNi$93(&TUGXIWQl4)n z!tu?tx8HBPUFhnIl;0#uwJtg`p)d-&2^%)3%_j_VFdN7?7gbMcvzuEgJ$yh5KeGW= zl>S`rURkN*T1CjvIk)+~*XM)Tj}AD@=$9`f*$=r&RDKn=^VA`QCU#{NKw&|^MOYiE zAe4-?fr*^NYC_gUuxYq?5w0hk>IwF$m0nVChz{=5$2kGAuqQDQZ|j>_l4Q|){nqP# zP0t{hkVkcEQ=M{N1T@bPO+AY=6dD9l4bfDe3(Y~e0hBuI`yrpbmh%Pya+aBenEfRX>GQQAZ&Q|jcbbrd4MLuiVqFoQ_U4@Q^lT9?>5Ow#=mu2MGIW7*)~v_Ach zfk;9{u2*Vp8ak57j^KfqpO4jKfe7IdJq}E8gB%pAkJ}m&Y@okA7s>l(thN{H_m-Hz z20KhAt$v*P%ZVF>$K66WPf~}0RAa-^M2Lfe0()-atVM5?V zWB1c2Kjs7?6Iz`oPkYOgCb?D%7!e+7wi>d|a(6(X|E#&HFV3xb3-3%|LEXXCo4ga? zVSAiSgm+%-8YaRP)RM#!UeQ>OQ6R)*-&jpqxNniaQd5JNpr+<4Z=OXhzE(5N70YL# z#}5%WbAqN%RB>*Jyqg7It|TQ5A4QG7qr%Ll9@5@lXsx2en+>9{UJ%Utmx-RJsqYwj z($Y=>r+X_3#?@;Mr`0^=`mLoM>fPmgtWOXox+Kfh6Mr`na9mqRO4wZGfpvV?i(cW4 ztnSj`aoJi7cqpTm6JxFzqaQuzw)+cMloya<6O1k+INmrQrbsWZFO*;$J9jhe>oQfft^@chCp6vcS&PjY^>LAs-vAsSKc zuX&mH<-oO9pK9HCiRfef*2T!Msk}b2S^X`~C&rwAdru#YaLX`(0y}6Mrw!8+YX5A*C z*qMTpzNB1;m+$iSNy31S2hz`?g=+I&lp7u>-1ANt^4Sj@w;duBhXZF|@qES^SmSj$ z6^GTO8928`kL6rY4XJsj;BipT2M{Hgq+vR;^ ziX-8Lhu;b!rB}_)1>1Pw(3S?kmm#vl9~VhVV7j&3z;(qvXeMw#zXtq~AfEcc+d?4k zQdgBBPcHBf8taLt{7wrQ2~DD8)dU`F3N19%j_O)@^bqicobsywm-0xmK7-(BlGY_B zjE1yQQ5X3ys}kw6;HwSkaQo6@BHEJkZ?~U-DjvQMC7Y#N_`J<~2a8A|!lVAJkjxXHI;Mjp zQ-D2T3703#vSO3?B;+IU?n|4qW)k?f2Y=s2)c$*`bruc8uI*L8B~khmI(p(ZUcrvS zrVa&J`C&sy)DWAw{r_X2D%!8#`#S>4dw*8$PK^D(6x0&y)iw!I{FIG7sH8?oC#Cdz zu)?2MRV>{2m9P4395DA{tKUvC zCtf$ndH>({i655PH}yNhI=QcXc`eFFxoZ&)w#iWbIFILRWYj?V=SZ9$1bj4XF~`HW zWA9|X)%wIyQ~Foo4P2*0pYgp8bu>(&2zuqCJ03yu_M4(42v-p$GnYSfs1UR ztLG*kSPs#_Vtp)aJu$k)~XIhT|pQ@3`hzkinhjqlmwctpn;;2Bc5eR|?1urrg3RlV$Sf8Y5`! zwab&=@IFU9Qi${LQ>d9cXk-2m_`2`g9VO@SL#7VP)QzRwc#k_j<5rLEm5d$M+6xz< zigN68HX0ct(D!1`e|<Ja7zt{i;)6Y)^UKF+pYcj`#j(P4Z-y z(my++gq4*b&L^8I*Bs9RDkFIjb8mwa-L?FFp8VnKlNxxIBXt)qT5th>$x`(D>^uUd zSyzykqB5E~(ok6U(j>6%3+>#W%x&aQUU;`&Fp^KUS7AwXl7X)UPh|V|1(ux169?@SW~fg>y@dv4d015wItHU(3 z*Q;u&N1qQa@e|Xd!x_u?`a~GG%O?WL^F$KVmV?}jFRyI5z@Ol%qV2lDv3UqREO=|} zQ`_`)Yd`m!{q3J<)-Hf;Mo5uAuzd9<6UR~3g842PEBiu(M^+s#e&UhXVLQkk@!Pci z=Qe`ieJr2%dN@AlDsC&SpSt=~{uhc>b}B?}{=aYr*}U}sjb&)ZcnW3Tpp=6{3)0V`4%Vn;7Y? zTzP^kkCm~k=Q06nNaG@TE%oiY!*Q)2^}UWy0nNnKiHt;3!GDJgO%(-V6pn>n)U>f5$@YtjCv(4hz4qlI43ilQd zqMB@{GFenDUD>GJ8=#4c{*t$U`N*d&kOX#Zde?77i0>i{(lqZq^)t0)C1g|al^Y!R zzv+L{>QT3+K| zTS5X~i9n<6J(>;87~F4=?1p<~9J~Dxs5)lr*(++an!OrSbL~jwiOT8P+>0k~g82@k zGyRI=PC4azX>C?hY>ae&XuRATu4Aa1r~1T10$0%b6i`I=gSJ&9x;`9XVY@1<#+(Pb z>i#-)H5IGjHsr}ICd(483*`sRKm1GS#FQe2J2gFfi>=pR{`N9NVU`Rn_#k4_THpa_ zT}>u(q*ZR>fq#TURDbdTORwe;2Vj{t7%$911$`{c%y;DM7DHI1-*V|Q$n^5G&w2R` z_@`(u(m|CD3cM83@7!|oMr@{2WN>A#MKj>@inndP|C0CFn7avJ!EWtY%YO6m_O(vW zw8r>fpAEB_5|IP_Jx+}aSdA!)Nq7+@_H65;u>kl} zcdfV~2BM5bYR#fav9ALlTwK-|0`h5wFUPR{4KBvbOY)WLXgf5&kgz z^1l3zwZbv*|4fXo9)=e3vo!zMl6U}k;}TfdwstVo8;H2hV5k26O0kQQ&nv{7`EVx< zcivBmw7$c2OFCpz?{=`44K2=v73K(f%%?ZZDi#dc-=_|O$ozawYis!ZYgzZT`i z4*<*e%kYVG3EG;gY^hnWVqM3bQ(< zox17E!EU5jLY9@0tUogL)2um}8aliXOXHoh9P!G9ANHZdzq{bexPKSGFDsWI(nTQx z(XoNg$`7->;0NX)8-3iVy18=1ggsAeq*9Gct?L$nK|n=~{WT4RYA~Z3nx_&}B2g46nWS93^@)w2pp>0Sy?oN4p?@J&vLiWtHd z0^Hp}Y9{jCVk-O!8l+?ZWex*eKygeD9i_fFjHM`XFlOn>D`!A;6XPPslGA?w1qY<+ z)C8}M7{*0|Wrt8f?Qq%5I91*FHD>eom*E0O_8zPZm{Wzg9srM}L}qVSsSQfj_X&k@ zufJ9>h|0r%j$XXXCEo}UAqJbOj99$q~NNIAf zX$jF3*(r3(o8#>@(583yUM&Jth6^ZKoKFFH2p@~6cpK1pH~Pz+1*H*9ybUpF@{7ZX zw?uPHS_h311abhuj$`SpU-_ls>;8BGZ%umfiyfy=7tS(`0e|8Ba(=7-I*aqOKaBZC z3>g0#dbnm$qknEhxX7Z0ysQ8e`lZe-c^W=sQyTXY(6x=q@S-H!mN4VYcq5STZICuX z_kb2}@JQUn#R^blT{f)y{ltdVR#2K0@0%`1LbaK?#@8!*J?{Q7*9}~6b^bK3?&`!L zJ5;R~kP9+=Y6_f*{D~OG(HD2LGs)?;sQ$zJi`BcWbAy|V6x&#PT|u{Pld$chh?-V} zR5RpW`)>A>h*2sEs1K~aj6uL8kyd=Loo+o-mvq+jTZZ5xsBVXz*7XL z5qmjTQVgeol6^M!VU;2cOoWZ-~KfIwCGHGzOpzqTIT{_zZ8Eib~tXQT<580%W(oCkN?w2N)z`vqNZ#7ob6 z53xORPQp*i@+!uT%nrr1qw|5?`2zJWnfR59)*{_~y>HmNut?Xs_BEhf$lRmK58Jbe z8sH91=0!PInWI5QjKWs)vAwyb8PL|M8{_6LM6X7qB- zA>HMGOctjKBI294g!l!&usM=Ua*?HoeBk&&)D*qR?Hd=H0rILK6!toJ*^V&4$`Rp1 zX18d2W65suZKM1LXcd=MA?yb-bcbXgsJ!(I!Yp`vT<;VHyW)s8(urf|By`L$!hcpP zL~TngWVA2tBFw-}TYDK6TV*vO`xRggs%(skuNuB%{&ZWH`}-}Q9B4pyUEH;Hi5U+q zBUtSPBIipk!wi=qJ$xV7>KFby{ZpmF>i+? zW0%(+(?4T%nP>^%UW=+x>nmAMWPwxf%!;eJ0pk~-c0&k%ait^M;8tP-bhlFy`E!1zj8sgt->~jX(}1<#bpRwrMTzBWltiYMP?Pl2v59J5#iQDCggB;OPm>u@`i> zt;Aeb_zJ+vP*p1m!QoW+OYCsgu6!P0O+N&Uw;gDR{mFpNCVqsrjw#&J-jeX)(HZH4 z-z(BL1LZQqsWc~sy9i*A;`5-s2SUe28nd4XvS&$G-XHX)LOPSe8$V8xe)mOPYe0k?-APQ8Dus8EYVe$rriAqZdYiX7#m8Ne|x0_O&LMd7_6f4Eu zX@C|=TZ+3CcXtn7q|o9{DDJ@>PI^Dj|JnP^S!eCN)_FT~Wis=dNoKB@@AosR)V)P0 zvtJF^Zjb=Ez{-R%oco3A5^Qf@HT#7Y;UWnab{0=sSE3I+OC4tey4jh50k6q;e)bI2 zQII-Xl3t8N$!{nirXguAJoQluCtVs3Du;*2`K{ZM`nayEr!7gwKKZh=;PVG;qy(ln z(eAXwNO_?b7!N<08cPlk>jaqwQ?BBB7ryKjPMElfVlv1Xq(KCrHDU_9D8*VDN$MpK zRf}5WYt|TY#Dd@bl4cNms?1t4|54;S9b%@P1j>rqWT{drt_XnqYNE!foGmUlcG#nl ztbwR!USsh|2)!|((~c*A0a7#a=*(5Bn;dP=s6H%f7TBdfrV)X;unq`#4wFR{0{_hg z5MqlGcxx*Rf}h3Lj_m-AU4#gm!p(M~@xG4|`g4aBSNeY>2S6YH;cf-2J^=9|*o$*_|i}YN&K&EC?g>L}; ziaDU1ZvjB5U=tN!jHW2TuKN3#$Akw7u99%F30eZ@6VO^Te#-5TNMMzaO~n8SjN&mF z7W_nUaF7`uz9tc3y2bvM(S<1DU3ibN&|C&P3jzP>uWy(+Wk%sUZ{5e4J{ay~{o$^f zrieH{SIS`u$B<&FB953!x+mz|kFv*8v@kg(_5Ds+UqUkR+07jc%Wn=`(dWl%ROzD^fLUGU~W7Tm8o4ViL)`Rl#?Dl_|~0VgZ{H3=86|JWcxA5 zDXI-(BCEljqfOHG!$8O|B`I8SesB9ZarOO=XitX))tITZhtD3Z?9|egc`je`iCZp@ z#C>O-z9~-g;Y^KwIw8tc<7#q`1JwUSrZtUJ0~?>ppFa!v!RA8M+i3Vb9R1ILc*HhC zL;^GG4}3j^oJhCq{J|n|<|yeO-+Y6OWt&%{IY_XT^}jwvHcAqPD*zcMr@K*fsC{l) zYZbaD2G$BZj5H~Rxw`?yhFRTX>`mU4G35$l#k-oi9$l;U^`BMvXZQ3buYGkLe!Da! z3j`SG=Hz!M7!!ZAFO3{7k8FrdXFCO+b|35T_ClwU4yAPIEIX%)-U*74jqPq0?!?Fx z7gNug=1rSsZNl|GdbkD{uv@EyeSGb!AkPNhjcQlFuh_+1dyrZXNm3w~`Xj(|O?_pi z>FMH-*WXQfO)A~?g=enoz~|**d3uOLqoL$AB^md`3mFg|ll-vB-{4LU{3~<=6BFQG>BjpPui_w<+lk z?QiR372l22a&79x)Ykur?tKWZ6Ez&Wk3;o?*olCCaD6m8rBU}py3XV~(3=j_;{xG#O^3hH_#l1Q~wz0{39nN6Q8+E8cCE`uw_n4KrUtS zt)J`oL|^Jz;h@rF-|D>d)m6I5)z#e*HT56=z`(q1C(H%U%O#;%j;vH_TK32svMZ&D zii``f_g~QGL5#$@8=Dm|nFUu@El0h#x17$q-|C1p!-T#+!OAr5$PnA_PaJp{@V+&W zg(eyYAvgZqtUb8+)7+Cprngu!eWMr{jqHmYcmP!!;kB^fz8#a04%ovU*u1)Os5D8< zlpQ_%V82PYI)xX?5GhKE*JE>%tb8hz>QebzT;Y8BPdA}!v+v1C82ksj3-3SyNNc9hmr?&PEu=T#VJ89s#m4VH#(rPr9$J6pq4gZx#I{gx5DU zCCAIdjb2kmQbgGurYdD$UCoPB#O8TiU6CER__{cA4391|^EZCbs`P)Z?UifcNBrhk zi{QmFi&%K?t3WPOl$g9rYQc=I=6mSe_!o-#U?U(}>Vl7LnRJMs8P^`3W%WY{eIzwo zg4IP8!j$ZSDJbky-Sh@7|IG=_T8@VD=E+aSTZOFy-hOgMEE}u?Il&w~TDjVuK9I8C zqdEB942EN_144LC)Z75n`?2H~I>h-Db8fI!DQ?Q_{0tNQbaIN-9MXVM2N?~$Nab2jAH znE2jMiNW93B4kS;p*A4DWTtE51koSs{&gL?*NBb1(tz_5*p=X~Z?WErt1U0JgM>xV zAXr4ieevQs{ZY88=v+DrsVHSn>#<%>L=$AE~h}Fj)|v zK|PL!Xe&;UN4c7I1&Y0ZuO$5MsMK<}m0V#(Xt3AB8uAC3UZ91K()OOoK%zHlp9g~i zEM(F3S2~`veSt;nbRFadfAG6NtE~lOwWU?#q+T?>YQO} zX`;QBV7#tZMMgY6AXy|G81ZC|a2LWikQIAIikM6}c6bkCd?`3zVKAVz0YMU}O$Sc- z4dy@Ac}7)~3LK`gMYBD(0)z5fOzr_1R(Q83OhrTyR;Azk&IHX{1DFvL6FeM53D8yk z1QRW60b(ErZXjtM?Zgiq#`qb8P)YKtMJwgjImilLC2rtKPCkniFiGRL9EGKvPxW= zyz0$>qo9pVlh6;}+U=k6A9&VECGE%<I6MR;vRki_;2`Q0p2UhW}bU{${Rk5-U_|^6ca$K$LKnuf) zbA>y>uNXx$n(uEa7=^_F#h+q;3&Ue5~`-v9tM_zVS^@K3c_pPOK+79Y=BL%g^&n3xF3E+pbWs($l>y= zf7>(au~I_T(g`Tx4vz4^sy-MwQSyzRqfrXy9?gcx0Gaauy#+wX55rG!kOoXoL5?404psCB_&aAu$=7q5m9g4#l1(A>wR27>TVq9Jy(_lA{JMurHf+XIqZ z3x2iYxK@1RdEWw`Qo#4^Q*DCWc8_?#{)UXtQM2nubw_u{Za%X&t|0#>p0RVn{yCs> zz8bge;LQjLGgyN^U`mMYERKHZ4SfX|gasZ7+f(BwjZg4wZ_HPO`HzW=S7JMhj{H*( zgyto1YSIFlpMb=aEX3L}6%9Q1%y0v}(rUSy)!G)r`3oBy(_Ul#TN};~L+nm~Cj85h z5MN1h@4*l4HuIi zwmr0u8^%TjXQBrx96q2YY2=tq_4saD0j4FrDNKOWYBBA%*AWtgFr&SUZqPzJ4!rL` ziWvv^s&@^>iyaB0gr{0R3;zRTHcUIDc3Yb6jK7h1MuM&X0$BBBcaWda>hzt z<-2iHXT z=1PDyu)u(Au}~J?YBorS===v}1OY9b?R`*r2`kwvU)75iSOE;YK&_YehMZUcy+66a0Wr4|w;vp1l3i1fyeM=mci#i|~ zAv1UO&5y=i-0D>DJ}O#DcXzE|ZdfEQzVq;}FRGrJ9B>O$z)2E#Iy$b0pQw10haCc@ zZNLm_EA0gI8zaGR-14c#NkGb}&gwaAC;()-4kTiLq+;Z64n%%7&?>OxD|Lg^nZd)Z z>g+HjK?0OR^SZI4ASsytW3to3oXzt6b>)^|B!gza00RkvG1V;(vosK(>9YbfYRRfx zC()7!y9|MxgxVyoJdt64qRmwkb*2qTQ8&Y*AYM4z<-_SP7Fg`}vX1p6$sO>`>n!8Q zpb~;dVjQ|~2v7|Gq3o|SUFr|=h27K#u#qlRBK8-pwA6?IO;}0YOw)xpz^Atk0hyu% zp_cRXz<9I(xxR4uQ|?qsI0SV(XQedJSaNvc1G#Pg1NQFYqjuyPyptT{(M4Wuj$$A` z=+!p9eYnn|fS&~c4WEDpX3UuwbZ0gOmnx9`UQ14ZAR4?6wDyPsjtzolYY*->(n0;- z6D(<_a*5h7FrN-e^*e`|0F@s6V5Bi*V8CeT;7FeYA$@2bMZVdHV>mb2EAIuir!AL! zN=$%oG=rUKbm-fx&}pgDDk;^WBgw;!(#vA1nbe7hJ6QYy*uy(qf;2?eTzBsDar)mjpWOk23V&3g(y#++IAm)bCT?+%taz6E5+ z?AkHfzX&oNw17;v4ZFwRcy2PGe0W1(`=8MS=*V_LxQb9RDdM@4+b7LM6AXlhsW`71 z2?`v;k^B@L*wbe`{e9vHS*`&|`Q6B0UR@ixTi@g!hx)uV^*J1)I07|t*3G=G0y2Wv zCrDCPqlSGAVCmRNqzH$a`LpaF!|w}gg5->Zr}6oAnt;96KF>|W;VTpJfDE6KO&7@D zkSyotsz6mIY&^%Hj*%PAT~1zd9qexiq>gu0+3Ntn=Kk>lXXGh`tFwsTzt z$}B*H=pBFJhQ&z=R}5avfgr5imTolO0c=DN?_b!?ZqA+iSzo~@HyAVh?p^7a)4_8U zx2ttC-MIOW-yV6^$G%gW7L`iFJvrWp&9r~V&0F!t&rcr9mXEi>*H3`ALh5Qj^W->z zPJ^boJ-%xlvQ9VVYq})gGW5=LiNsB5h$+Q6bd5?kL798)wM@2;k6^p0XmUqhYwKHR z($dbzP{}5vw3^P@rnK=w#(}9-%e6Hpo9w`l5s9a0zI%OLRHA8kSyyfUXrnJb5nvpS;>%im!hxaC{(3>f-*+ z{7%_mTx}Xx$3tM7LrvWL&5t|+-LkeGTgMkX%onQ#ug(UVFQW7RR9Uih6C0Kk8JEfF zN?xAJ&j*`q>&;E|5Q7}G+HL9H`l~f@c`p2yQsd3&sW7OK85OT`A#s0qUBKwI1S$Ob z<(<8&=2Mh*%I5cA)P<{S)~PxmJ17HtZ^j?C?$uGm{=Rj?<5`F6^1-7w*e?w9rn;L1 zsLx!_$6bZyVwCqBjGi`%?fVMNrQNRez5QL(9bOxx`Kr-Bs?^HLL1KMqBSqqy;?Qt9 zwLy>j&x4g<9b5=+-B;WxSKVaXG2bmH7hkSr$|prXZ{^BT`;@r$C=vGxvQOxpJ8+w< zV2L?+X3$&r7|HnGXW`nD(dA(h`#67f6c`MY#(vsYKZy=Wrs5K{GX_@1!{aRji?zAL zmaR3nRy#FHd8WJ6P5(I6;Hu7rlbOn-8`zXj{`&LB54|pNzo+{AU2q=#J`}P7I0` zar2DpUpUN|rGW}xNE)TRnoDUq2MLh*IW`+PPTagGPYL_TpH+h9y|V$53O4i0M}>4* z3u9I=T~h?IQd)67_Kv(eLTo_53fsGu%mqCfY2ktdxCyB$NvG*jiZ8=gH{T;e- z(+A71Ok2htQ8=-}d4lMS3d zrG{nDLGMLu>;DU1nTHLHLz_7Yz%a7~#SNd>J%8ry){6Fc9#w672&Nqd+sJoI8nN2y3VhmU ze+QD&$)yUImKz&s#SGGTf@;4s6TD=q!HMNB?Nj3k5dsDFjLIN_TDXKpimCktf2KW0 zMaEYT#`AB?(w;wohp`wUKT`yuNSz7)0zOrk!S-pn)%gk9|HkldYWVqBLdU;l{(loh zZ(C79O%!L;TLqSxNZjAQJ&5SDy?!PkLvZuXUx4MC_UkN}m$qMvYii}ZJk$DU)Gc)K zjxff_#;)?RcTynSEG%Tq*p+cQZRlw4{DcAi`$YmP49 zc2Q_&+K3Nja+VemxGsc-Qj-_L8ufndnEN$pscwdDdk6_uAa_+z^56*-!`dr zL-}vYybf*)I;4NJ>IyF3*NwK{ovp;-Vb|`Y0JrU3+1H~Au(Rb?anoe$A<|6Fn}ZP& z4;7z}=SxV3^t?T~$01ngD5P^cMyLlXX6$46nb zRx4PyU)^Mo!FrB!sIY95L%g8x$c)peSI{92Iyt;QUxjONBEP=d8EV|5i!%8{ibR|Q z8#P>a(Gc5D3ImOQ+Vn|d<3-7K(YJ}#b-i~=QD{~ATDNt@UbD6cnq?gvLAyBV;zErM z+( z@^duqW1F#J*;k*Byq^1T)iSD-He&!G2UUd`1)9#q6`aDCH(2io?^FzAi=j8Z<8 z^~P=!#xJW`F0qdnk8+$`rWUjY;Fmsm6<_gDggIPy8V|v4+t7Mj^4T@DRwSZjkXyo& z{Sa;6xJfHhn_kXOwaF*||7$e_wVL|Skz7A0^zK1^kK&=`QkZYBcBf=;89sVc!I9a4 zp+}{7XcK?`E0novCk1r-zm_Ykc&qi*q2J^O@4lyViSE>Ax5~QLUOsU0@}lY_`L7^V z@W}Uhyw*L}AWg?f%CYbK-?HCbPN_XC@0c$qlCCcaS90EmB*sZG{To?pK-23t2k;(z zrhy0ro=>iScai$}xW85z-&UEpq?`kevaw?S z)ns}d#~)IG{uW3zr1c{6ePwfpJCQGij}Rp>D0Z z^Zesfdqqcszg24kWWM$hH_GPv6Dh(kzrWG?HKI#n<)0W2m;V(JWt-DuoSfs|RgY?{ z;LaM$M~%zW(1UDs8Y{)gKRq({_fIRMR7waQYL4kna-=zM~0#qp*l$B z!AQYp|DI=EnEO+rnZC@$65YD!d9c^tTCWJNPgS6(&P8n)im10P4l@yx3N@X(MV|GM zie)`VSyb|CJ?U3*eia;pnXCeKlUHgRxRwtbt&E*|CW0{hoc~DXvLsWN15Va&GHF@o zQG-h4VQ2c_cB4Tb^}7nzeQzxiB}#Mbi&IIDZu4e@2_)+=Kd zfpt?8znv5Y8K|o62>f5q0RLz6#s42qQ$6q;_a}?U?Zo_T1gz#S&OK+-uk1fbSL`lH zwz#=5YG8lux}!6*YfRajS%YBvK=qPeKb;H|K~!i5(u@5cw6tLagP!x)-=cFP_78Y%v+?a;~zrDd^A=$AXQ-pX>-f?HqMl zNVWzZ9M?4ADO2;5 zRDs-F@_v;R(O~{RRQIWHJ6Ymczw!iCbQQ3_e4fG+*_*rt@dXT6Al+;ZYln)cC?kV_)S-_N{bI%aaY3?OY91p+0Hd7Qn8k06&y zPb4b^Z{&#)cFg}q>#Kjbv)IX(=tDu6&3yqw1eM~v=Dl<76b<4%!B>)UbrkL`@_C|F+Rvek<9f<@|1aygQZBT{odcZtl&kZKfb;zd zLbJuZ++4@P@<%8P8isSXgF@4LrKUX7#X3}KemUw5>n{#$~;wJDX$w0pvkeDlGu zw{rq?`RoG(Mj}jGvb0#}WO7Dl=RBVJL(-LoQ0zy>+@R0QpV0B_7%9iVe~3Q-(dIB* zVzg$z^Rv{8jkcYGro)@|!<^0bV!v+(+fBatyRw^yiOC)wx?Ucdqw1sTflSuTBc*0m z>uix`)>a&W zcOTR$%cXO%H4(bz2@U9eCXMs0)c%`Z{hUm2MOEs@7jzzhl& z*Z4Z2%!M29ERzI~n|Uj4`K{fLfR+ScrVS15*n`5XEB?8*UoyvnnWzDKreLV(8^B2! z47I_AEvfWi}J@iQ0y zD%W);Yu3`q;{D!Y{LzyU^4sbgNpgbM%ZvCUWei5ZDv@Ypf6m*Kc&A9RPastH~-&aXCf{)6*@SD|2TbzNw{N! z7TAEN|NQ;%YnU18_@qJWTK)u7v>>4uCruHS>@L*st|j0-+j5lpPI=)cWEAQ8)-&^M z2`z#zq+>_ksX2Ex;;7lVS zBbm}?VxBE2)RPKB`RQHHs)-^vWAo{y-tw?>TV4D)uZ+U^%1N_N&dc08iEr4-s}CS4 z^7wBZ;@UI3C_jo-`C9pOJKprB8*teZr5h;8HHlUL#MKK)RaHW126{@vc@kB6RzBaq zSAHNFQbc`N@)hpAOiX*G7v%x)jgE5qDIvnD{u6LG;HqW{dIX~p5LuFg>7&8xQN6O9 zcrSh5&h+t^pqmVi>-tMfRU1glM1xcOrUSfneDO0@?%6UVe*^|c7=xs~U;GL#$3iR` zp;f+_)p-uP*{SDFMT4KC%9)gnYY)h$f3I-ucyCS$c8-*}z}NCkCPYktGuI=vU;q6rND z-uxv7+`a%Cp}dqY29lbuL_7s>kb`MOs=CyGkuf$U>PWqBQ%<^(&A}q7`MP z!2FgDhb#g@^$0=snqKID3~13;fuv207Y!J30PScnOq7|de&^S`6~sCAGk`hp@ZH$q z{oH3-YmfxERZ8zu$Wrkbnzt|sg5~vro6q^ur>gGuIM5RAwgr(o;56u3&=PeZ1Xl~y zC2;no>I2qskx{hOna`eZ!ELH(J#jSMvIkt#>EM{$$5(7LTq&Ca0V1Vs@#^&=modPYU*aP2iVZ!Mgc3-HhB6L5@n9AR} zz*@xMUnRYO1_4;4Rnt4}H#5I;yy$6AKvZBzZvNCB*7q#Bzil~99On~=H(1TnHe<0ed$O@@}iO&`F?Ll0K$SGaf`ntBgi@p|d zSjqbOq@}prH&yz+6@)_zvUzaGW^2sa$7jpA56aG7#5^@Pw7WHUY*=n&<*Q>F2whCj zF$`FjPC)DnncOp58?znN+8bA}^Dc+eZA`iP_>|mbfOtj-DO#7D`_6{uP0&Ww1r4%$ zOfnQnIeC{|muPge4??;~>$Ym0GDC%4n=W;WI&_9?d`4Bhu|+j)Ld1kNK|tO;9XNdM zrh4QTuwsmif2R?I9?<^!(&Qv4|CFvy zX8CagPH@W6RYuG@k82$9;)jsLy)L`stI+LNJ)2yS=da{9>tOL)rK1!*z2=!t64Pz3 zt^(TkzecEjnN~VzahD+?9azw|RFKdnFJqSe z1(9r9a-Bkx(@1~i|7FCFj3u-3anK8mdPUlPCIh-au2h4*9IQ z^)Mgjg`wBtxnG|FiIw<7m8H=~Pe}@`7q&WCj0zvupfgW@Zt1>l3Kc%DEbFOTX%2Ef zDgN~o4cKgbZv&&)2OXd<(1s?Zf<%M@P;l*aOlL}b7M>Nx=HIBZX;0IsL<1~1Rm-@l zAUJK@Dh3zv-48|=%Ko)F?UPiz771Jl5pCT11XklMivnh9CxBkg=eK~M$xRGs@MdGs z!s|!y@$(=u45V!!z&i_;vIZ_|Wg26M5?E)+5q(`iImaVJL>kaAc>IY75yI!bypCC! z^}xyiv*U$8X==0s%4XP2V0WdSG+~%O>jL{hPu(z`Q<>laz2HWpLn+jyR~z(*C?0ri z_h&$ANOS0(_zM~0juKdS$?DY%nbEna1ar4QE-Pp8;oYWA5%mH1PWKz21-TS70zhdn zAZgng(m1)Odq4_r>9bJ*P3?%%BHk&%{2tc}_6uYg&X78VH33T_z>G*QUL&UW1W-8z zmvSgxP&f1&;|BVJj|D)D_o|?b*c#B+qLiNXU&4SCX&M@=<}{oFtMWyHg!V!A2TL?> zGoW+;gm^7(->6UAQFaa}@ikSa9FCyKwahf|m*xNDeFED%8_fWChiL$uL;vr*iw`V> z*?KF#h`i_lAqqhV>m`-%lbYBAonM)uATjXj<(R5T^1@2?bd@Lx)PmP01+9G(jG&tR zZ7%W$Kyr3msi9x0CzRBH{U7}#fsXx?+5y0yZU!{g0rQqn>3kt26co$KUjnqCM{Ze^ zHBW$8&9n5iAO!lNDH73~qY75!D6z*z0mm)~7W|lSheTq5udXG{{x`1ZkZE;SV5qfh|yX*fM{TTzYQCBopd&_ksoMfg4tropl=j% zAaHHI?~d)AJM^}RMfScw^U>k2J7)FksPzH6W*EJ-I;)waz4izJ08a>g)DG z*zX3UVMkcWgb7dj#{rn)noS16h!Da6r6QvNNXD)UQO}vG!2vgN@3FfFE(B2IcL2wk ziJtFk%eGx8}CvmwVNKe=rq2 zq%rY@l&1v$p-}z96vTfiS8jUbm#W8v0)HR}T!`V&61#Sg2!SEyJ?zR6bI^$WlgrD-=efQJSlr{`$iiZ(t5p=I@)n2y*m-+hz6XnJ`dIx=2sNev-2HKo#B0{ zvIIGH@Jinl-He?~35ANXt?XAClQ|EM0|t9>5#&^$rD?WSHV%vQo*jDdLVu14rZ)kG0tlYP z7$dgxeIsD%`uo?>_v+Fuuvt}#+*Rhsq;ckyJ;iD;A`v54!;0K!UA3TQ3xL>%z7_2) z69T7IqlDFvuj_?$aD>epIyLQI4EYfCCwV`w2di|YOS`&;^k`sSUOTp~aVu6fq?lr+ zWclF?fTJ+NiV!JZ(V!}6iT(R010sDR@CT~jTIE2FUJ#_KBTQ3U*WZ$1fVx>6F4AWG z8Wg&T!{Z2nLqs1T6t~roZug;a?}_#RKA+0npR@>8d?>Z>R(R5C{OIFbCj6o#d-SB- zYV%s$R5G5=0&`l^BQqd`(+C)i+~Qr`dknqqoM)9EXFEsB8H)(U4MJ4=*epH*+CB2&|zY z)#ouF-kk)9pZ0(t;Y)JZv@lF`5im}~MSMt@Lc~XGJOlcCFRmPb%YwO!pb}Twaf9Lg#yRc=tq-QH9O-ZI-j9!2c-40qEy#kK?sYt58Q8fCeV<+`~ReX z7FMwMPJkw~%TFMC^Hc9_;1CR)e=IB8-|tLO*lQWWsQk%3IpDf1b~|DXeC<7_vK+@3 z>f?{Wux9Kcwgd+*u?^l8gnt>_$ zhqXN*G8uHR2{7yev1_Ftim_hoD+#1piDaX6Xm5a|m%j+_3Xl0g-YAm%KOh;@T?$mB z-H#w*7_!{6$)F4v!X0LmcuFBTRflcYa(Ye% z08!gb7nqUl`ZrG{_zJy1+ov)N_44l9Vyn&Z)-fiZGSi%huA>E9Y!~4ymmW-rddn;Y1m zTHzN>XgKI9tQ#sQ@GMf76c!r1D=hrzd9D|`kGbZ> z@IW#d5d~EdLtV4Xmm!R4wD~HBj7%GIA!$VCU2}G}4LE^>ZE!`xm~P@ri`PKBe34xB z1TIbHpT6hsNCHI)d7$TvCbT7mlphh-uL=g4-YWzsD2z*CryYEi4f6h{P8XS~>9KVb z1Ffoh^U1YRkh~vqAsd^nIeTF@-M#uNuAU9w`liW83w+_OpB`X@ zITpp>aXHSw7*&N8P(C$u$c6J&kVD*jIOSIj0H zUiUwA*r#lI4CKR%F=~XZO9h|DR#K~j>jbJrj(c|L-XVSM;&6DU9~}^MzlqQG z|L$-x!Z|2(t6>{7CSSjGfI7+iEpo+TLm(T>6>X8=GWy9{nd|kgcATLrR;ft$k}DrZ zh)E7enpFwCZ3**ajgZG7s0^aoGCg0@7g3}|>dJLyQrY^9ASD~bp$a+p#@#*O{03rw z>a*?g_Ccu5Dwf-`p}gx!c(Mpqc{Df4I7(~ESTOZ_^%IqVpls=4>#MT2O z8N^kTj@>&O;nH=U!IKeXkaB#nMl>RI>Ji$y6uviL`5{e}hdSibap#MlNra3>Q;4VJ z7%PTe&5Bq#$ZrST4O!N`QOnYN z;IN;48ESidT&-MQP*mHyd*Q>-6{=!k-x!@ojk@D&`qpi`Zu$Ld-$@DLpDb{~l6Q=O zZPK&|bY4i(9|RbYya(vVOrQh$d@#Qs{A%BTRb6#}P<{tJJ^&WveZv8#0aXwni|OD* zy@0dyLEtmuNleN>R`~G!iv^6~r_QREyM_z#7s-j!15BmQVky%X>tC>9IZM(OqOKs5S%VND0o3+P z<8NF|b%-}lS0*;VjXASXx$-Bl@e04udbjZ~q}Oq#qf{zLNg_=10lO`ckr&hZtMux| zhDwSef8;c1X{okNxCFH`$+~T|1e}dfsQFZMkej;=Gm=Q^40$I5@8|k4*F*Z;O6a# zzr(_3kA6Ej@;+{h`N7DXX~`EVS%oD#d@oHuLcX`J5;auEqD*~`-gSCQ?z^D+_+{^K zMGjkk1IbNYbNW2Dh&8@eJ3#|o05O*RZ`^&BA8i`U!F$&sLH~%-i^3sP*_(17I-Nuv z_d*noEtRddvFEwi`uN6_j<#VNM+4=o)W{W=7Ecc&dUKuNjUOr14GehhGx@O`jou8j zVj)EFg;;0_!(nllVE)E0XGg%AhC7qE5J86n$otLsZNeLxAb9LY=@~%_|8hdMS_HDm zp5=P5Roa9(Fm#JkC5|Rs*Z(^H)Rfis`bo;-UPk_Cqm-#;ra%OQnx=-V{rBQ?$JeIn zEnwJkRAIqt*6DidC^{SY1-H7J4dFKxV~0OavoLGG9%3~hV2^Pll8SdW&6gbiX}9!cfSJMLjx((bkLNB?6VF( z2g+Nj`aM0BLSA?B2CzV+C-Jv>y7XxY;Oh;r!0$c|&(W@r)=YLhjsGxx!{>;T>Jo2u z5yH_Z%{^*)uPB#jOx+JFGk@Os;x+A0#@CMGkG-lIur#BG{lbE%_ ze*VI?A$)B4h0S6t$$GntYw8z4cQQraqLxcTOqtIv=%Ew88K-vBU6G$;R!Q5JKM>{o zO{zgrd6dK z5uk?w+nqTpKpmybxn*r?!Nzag#c;sJ6_7LpkXc3`4h&;*&w=qYtk$>S2Q=GB^_B!k zPB0!(PT|f~_B{~Pi0w*YgyP`VXzy4l6+8lHr$91&-lb14x59BJEpaq7GR_ljpynpT}&K3PW0doR{XFzs?urgusn{lEXBwEopu~ml{1gf=rC{Wonb!v_Xp)(3k`}%_A%GEhyF6KlR0y|Iq?? zZVQ0Z=DyR#D8jbw(OF>w+LS693i!aqFUnv}HNzH68kk+yo&$q*e#l!*9Z#6el~n=? z=_38Bgi^~nAy}BsAxYGp-b!;}GhMutU?f)vw!#s5x|KUx9CKbor5i7T!Nz7}iQ|ms zv6UXkx?JFqG=^Vk(XqzGFljpm|y_Hhm(4S_ivFD0=S* z1Eu&M^MUCBk!nbzXWF5|5a69skb-gl2G0IEwVQJ{8^d`W5tGnf{T3t-G~)fECSF@EJSaH@pXw=l28Nr`mXhq8bFNoIuK)p``wPz> zXGs!_pZX9f106kpeeN!lP>I-*97k|oAG{>vx_SKR_+B;lD_9DOmSma3 zbOwzg;B(OIy34C86b8OJVfSaH$Yod14bA4i80LD*eP{rPs5_Bwlo7S!fbG*+Gc2j% z@eo>K_UNF{n);)=ax6)_09vL~VRCRK;X#24gc75{5}>UHC3$_c22r|hsyg^TCY5wo zj1&&|f#9gWV0`mf;t}F*4Bg;v$ZyQ8!^5oEEc&5H5hiys_lk_`O9ZeAUof;w%lU)l z{D79P#RX?3x1)rgIA3q^McN%3?~L7@rQ$)k37#mz%9LjYz|LRH6EXN&J4+HH&CwbY zBQZmA<-RQCk=-q5+#m21MxqQ~75`6dZy6R<_%8genE^&xx3ww(1@SO?fnrexss0-lZ^9!DD=Hoo(sR}1%hVZ3KT0^do7GD8v)1eVMq$|^NTM% zz3{>Dy98y@M?1T+Hxqunb);T|{1-)4j3ClnRShI%^9~VJ9j$xIC=wT?WUFjk?&kcHGt_Wz z9)zf_taT}3S4@;otSl@ZZ?6a+qbt{cf@;Dx{tVk~P34hC-$t+nQ%?5EV(Zg*=)f5G z9Z*l#y}UmxkQgE5F0Ta9O2Q(vPdp7*o|7XbW*%B0XMc{`TWF(o$A4RdYtdT+w8|}U zkqt^n_VN><^dc(>%6HX6N(^I{>n@H>Gzk1`3S(v7(@)f2_na-RTp#ht(}CPLw7k!h z4VTONCh#yEb9OQUsFQwR^4D_t(AX%1Ibk~f%i$9V9y~$bsF`1;H29!i4GY%Nj0$6F z8vY1OzGj5ZyaE_ZZwnT7Za9xUXBeekGq6KFrMy;B^jpQJOMxTvPd`bQV~LIlz$crB z>J1CN-%4<{_Y5?O_rz|IU=QaD;)@yd<#83v=fGY(oID?;ejFQ1Yj7PLv+mn%mg6% z7V-K?P&3vJ_a(dv0-DrNV#2METq_PgdQ#-TO(KN<@BkiWgUBm1a@D|&pilcvxbDZL zR=mi_*mniFBo<6&Fj`Z+%A-tOv9Om7^9bLS&q6W`n-Jtn{3T|@3{HV2JE)p84FY>n z)c43jE#rW_JAvneB$x=%#fk12EKhZ@4o|Q&urkwT@ZJ|N)o=)+WQM1qYJuY&1?96~ zR8*E|{`)@EU{3`u89a>N+0P2P0WK9CSgfhwDzD!R`|t6Kk{kyeM!;zaj>S|>pdPc1 zdz0f%?a}8GgG^p948Bw%V5$$1jL~F%}R0oDH`jJtwMb^_!gCFqr z9Q2WnRkn<)lTm<(M`4)oJ+y(8cQC-hamySu!2=DeZeG6wKE>Tn1+2zDF1R)K;|Sh^ zNP&#Ao=yC>vyYsy1w@J+bL$emSZ)F#QB&3o1~1ANl4!ezz}lBgn5PY|>Nkmy!$pqU zWKyt3tVLkv^sSHx=*y+b?I>F~zQ^LBaS-qYQUe9ep)R3E0X8)C=0J4sG>)6Fl!O`? zruhKRXM_Y3S;VT_Up_{8hghcio_f^_8mPl8cX6^P;IJF$HqlvTo?AQ%xa8Y8uvk-| zA270m5jb_MFz|by@itDFqcoJy{+7ESH#g|u^8LZKFCIm9$4PK&9sKD_2CfQDByYn2 zI!pGoN%#4D6l-;iR^In7qUcxA(LT4-@jwH&^$|N!*@ku6O4hc@n(k5!KHsaN75O>Ey$8pR!Z%;ax! zjj@kB6M1cR=JloUoH@`APqLz|U!U)O)NM@DJ6sGASCRji3S>d=sL}la+~5%ibvdbb z&`({UeFY4z0p4Rcg5SS>klo`q#E)3diZmCDsS-j)JM0_qfI&`X=oYsdX}5iqvY!~M92o_~#jd#QugX`PKB)*2tiFD8%%g+Mrhz2gop}gklyPmW?`LcuUs~eSwn?h+q7B|?+hrSl z0+dA{VT_fWHhA87*-;8KjutZLFK>{=9op!fkqDjhH9o*vUPT0)MeNR%n6?t8_ zZX;$n6UZ>S#l8Itey_gJVSEWe!yLHd{n?oBp*0WfhAtie)n~%5?$2Y*7$R(~1qdE4 zP|j%eGo?@AQ)D>a>$;xi-`DPcV}XG!p&BZ;w7a56bQbMz!20l;O@wSYR`^9eDUAwa zCt$+Yp-M~r(|N@zQ8zgjWPR3IhZ!C^W%Yg{%n$y~hQ$h;l7v5jF}vDOpsFQw+? z$ksWKY1+}^$yZR9ks&2A3J}ei7JFg-e8zDTKi*uWF5AwDGU%N5P}696I9!-SG+Y$_ zCPl{82i46v*A;d%5z}ZIu+qAZAR#2)@I_2xMBXiX(XAh|>4;^dzGvzki;*ZINLN2V zReYpF51EMgn!R2?vE;U#>1S2^S^rcOl8cEU(zB65&3t-ULBWvu-J02~2Q@ScPv)BX zIp93iX;g#p2M#F6=f&rKPNStoS5?kSA*BjxK3^YGoR|KjrzP=)v7e`hUJcdNA$p17^>419= z^bg_rnGhi^gs2j6_d;Jor_u+(dmN=+5oVrqM$bnfEz!+JAgYjQmtF;BR>jD-Zj&8#xKP#}l zfVs3Kn)z?1L-QDFdx3`J-4Vu-eyH~ozyZH|Q*%}Oryk&c?98#gLX+c1ms#cNx-pMC z)gS+NHRcV>K_s)J7{CNCrigdbVf1QB`Rv~i?kQ@G;(|Ww`6CP!>xa7QK6iI@2YGh* zux+s&eb_@>X4E18q&X9Vrjw98!vRu#s#|3y=)3|TakVJEOJKfhce06BuKQw6hG;K7 zbvG~h-*;vUi2#IzSwIiJHF9!p;5@sVAKawV9e$~I2lRAyq@=)(CfqfFzDo=1F;{(oxYTn>^U#&tMP8MDZL7eVsB3tfH2gOfEmf&JGjNz0pjNQf$ zS3Jo#_&|f>BssESzZf&qONSw@5m~gu_9)DvuQe{Tb^k8Go}w-ElFpW6f6~lvt&3rT zDZkFc_!qyQF-OALJkz9f%;tNnv3~!fVMUNeP$a7!9jU=augK$4i8bPh2BM9(H?FhK zG7=~Cj>c}sPF@UM7p#n~%eEci%`w%??N;VTUXI5qKwUB>mBgkU2q`IJ)1eD*-w|>Q zlrmyya=`=gVM5|BOgeXKGQ1tBNT!?x!t9Lh-<^s%(-*H6A+?n#`6MX&VstcF%AE%-<|_fmy-$ z%58l*;TtwK$1I+&yt?9rP_FM#eHl! z7h7uU*4}gWti1<;S#-j3%E*htz>T{zm6ICwnn+yy3ZS57h5z)lZEi zb*!daK9Sl*i)chljl|hsD+YZjq-K%YwkZ@T-nlz82k(qIkA(BN&xDef&(eNn^{JS< zV^<*11u?d4R@7}@`CgwIA02Fk2^lII(}P`7nAzE+&(jq6eTrz$&%;HZYkyDHfG-S4wW}J z7SDH4&3AyXOwP=Ia+8rWKRMSLF`l_oJ6uIYtWf%UGxslLpK-_aKzqZo0D)4if{8U?z$HHUlO`N#7{SO6^&p+%3xmYEC>0ku8@_(R~zw&SYMDVI!;a>tNgV)N^R~6Fx#W z*Hc?h>QPwU+k-Bebchv2b=YygTfddqh#eJ9#YRD8BRr2wBUl|H~T!nX9|jT03{MT-))ok2#X4M z{5k0W)3kSU5zS9JJ`zK*R%l~%`0xOFz;%?LJ|_rELW(?yQKQBrBDQpX)u{(G~2E-OA5QU)*IJxw7kQDOfAmEQ+4v7l;n0j3Qs|pwL86=C4hp< zbj3>mVaNTofScQ&c{1}}-~DgotF?KSZ;J*C(Gdvh4JHb!TmcCOwI zYxtSnCTHG2cR*>3AMJ`B9PrkFOO7Zc7qajN%DCh!%WA zZ+xX;oXV>3lpZeWEN5H(Z41W`E#*_0JK>_T4v|l2`{uVvc()XQ+{2gb-&YO zA`o)`B>OY8*P%t7*IT250oO8g?B9+5Xy|ZSJNUzmq(T0a8cT(Pkp1VIKWiZf`+MbB znTqM#UW228b@+r8GHGg-+kl%kke94qmWk?bS z5p3!1(LA^X_L><_;91$@Q@bRB17v}O}@`8 z*PoA%3wD3iC``o}_ZQT>)=s*LBlNYL#z(vt*I*}9HGc8CT$LI*?pgO1AR(S8UDij^gGV zn(dyZi$ID_EOn5rTS_qSLEY?(83Y%m8A=Bn*w>UtYf>P8HCLVE<_wJq-IEuFl)#WR zpNx=C`p{tvg?G6_Sn6~-BFUNapO2?Fac%f zV(^d@T5U+JCHQz{%wNK=Qt6M!sA?$0zYj7{G)1(>i36nFIsW{-Rx|{#@Gg3eKW^So zMk-$*-7`QNvZMpglN3FSgMc3Fqk6Yof(@8Z9Dw%XGvqY9$cAH*t)9T|7l+DkO_*e0 zu#Va_>V>9!C-LQ61BqY^voLi!4#M644l@j|u^)iH{9pmJr5vGmFpZYLV5s*1bNg$> zXBP&MvajnExRC3qqcN=f`n^>=@$`>P^67T8PDie|@6!Q!MP9-QJ zZJubi=TKpEnr)zx-2|GkZy#7DLW@dT`5zCSn!{|usSva<+K^})V*BCbv;70?+ECJp zuWKUoYJ$9)lpE|Ll=q=5FMjeC8zeQ)sj6Q3eeZuJ${F?+tt>K+={R>byuGs zsCix*lk+IOL>g=(xNbKfYaCQG2b{yRCM#T}@up!UpGSe66&H5U_R-2WcvLo!*=ika zv#jsDq3i;OLp3ZY-uDx@*xBm(9hAZq2;|iaD_6ZD*#5|XMIAVTlFRiGq20ylZpnWs zvoh~3T1b5{)_j>d+4c&GOl1xE6@fD(Jc(6V*AqZ!E4>UH$Z&(!n!#$V%63&O%{+*H zD9_ZhE=@MEJ!kiLe;?)@kybrEhMvPmZvH*%#I#C~AkKA34YZiUQMyFW#g)x_ zi}1AheKN~BLW8SY>wLO^@hmO^=$RZt%x*uau7c+3*=?z+=5jYwy515E1(%S;I0hGHg!j`hHx5dkFkQw5#dpt8&crC zOH%FJu=2dBF-@R`95CGrECXS*`O0lC#rEJ=f*jO|agCdnF(a5qA5kPP1)cHgcd z6dZ`F*UxI7kg;M%L@=+>}dO3bSC~!hdn(-8Q z(oi)P{&n02D1G4b7FfE)aHth(dx}ql)`2JK^I^kv)z%k`+*nwl#sO*&l5!H$2Ga05 zV90!=rn`KN>m9Dv;G%a>AF>4ou4IjyXBAj?&>yZ7VO73h(urssWg#mzo=;J%fVN&# z*lS{p<3jbMdPe2CMWwrEURmVV9)8c+wZu#^LzB}xoQw*0QvoCXQeWngXp)< zyo*VSlS&4~9Pxwrs0lYD=}%U;7ZhW;F=qQ1d4eDCz>!2jUzttljmn4kY|BsZoms}OGL7aCN{OH<`E0&u;-|vp&ZMmg6OFkYvzQp4FBBHO$=bnds2aBXCk1q?`M@N zAB1GQ`_Kxg2KzuX$Pu;S^7=6ouavZ16>ueSI1rg9tei{*v|hd13c#elOol6-`0j~K zA*p?%SS4&32}_H`x_CPCTIWUDd!slN_~Kq0)IDLK4{)J{%6_nZiku}5t)xRN$3D*; zUw(I@Ln=2)hX_CpQa<(WNs&%Kls1>D!)g7UfxTz_@2gXxa~;GGq`hsA1%DV_SxLyrR2_fXkEpri+eh#mXUt%H8>?)6?P>1f(5TVa4` z#m+eJT#?QqQZFU9!>@9gWgJo>)yC-xC$T{QrQt^8r~@7Vpzc(C{NVXBVnHwoCTob- zMnal3L;Tr{J^KN%G>G}ew7%HZ=7$!BgsHXSj159C3w(ffGDNG|E0)c}8S=8=*&utE z?O0epF!;!*^$x+FkLZ&Z=-ZfEk-2ybSoaS7{;ezmo%u<;s*4IL3u|&_BTf6wf(LD9 z1wy=_!M2S#DVG67PMtL=r-?>ns$`f3wvlaW@xG?8fTbE5gdtcmB%B?9!!j0=_2iMK zyEU{==C=njODaN&mA~G4?{2)*xYB1G{mfu0M_D%pUdI)47KnjN(h%7eD+iy3qDP`A zCWQ!y%QtSB$$QbxH{-oAo}TH}I|ZYxRycGol86AJUy*kh?vv%Au@2IvLrj1OnB;F) z_fZmtc*?Hn$FUyD$p-&8>t2Tkk(bf0dXIJ8|KP^ArS&UL(d>Mf3siJ3Z@{Ce4Jf6d zjQvxMiV*R8Vqb~P@G7Dk>NR$&Pv{!^9)Fg0;eKMn_g%SQOESO}R16@Wee_6Bzx@d<y~wLD3hH5+`yi!#&uF0D59Wylz96^ znm+kgsOqy{7+Stc?4B-TcY6GC3UJ}yW_NwAa1w5wc_PHg6svS>LzPwy5Kr-X7TlM8Bp3`V-$|3AUS?lz|eu zZvS5QSv-VZR^ab1D4m9+b&>pA1xha=6ISmYAa#mU+MagQ8Yh|3FEgF|c{~OTXz;pH zfb-Z2JM(T1Kg0Y4i!2Vcl?}6Qhkw6MO#4Po`{UPCcv&i)6s0BC=P5&c9O$USsKK4G zBo%i&=u+5{OK_CtXd&9+TL`Yf+iCtw_1EUbyRLW2I-=Ktf?Ai7(S;FMEL`T~^?@0e93(Pih!I%1c2YwhkE>$V1RozjA z#KznapGEvS^2#oYnA_65b(0mSa%U(zwBXB!<@lgN20?Uw$4cJCKP{otZ5wG>JO^M@#Y#B>KeA#~E# zQFBuwQQqEJe*WpP*yWeAt0n)@WumjijT2IaDEmW-;uNjO)2p{#q?dt`zSg;`uoh>s znir>6o0my{e#W>Q=LOYd_BW1ufJ%u zw0PzB>}FP*BGn_hT@JNs78N8{PZU`7tv}v=H3_WG zRCm{iZDZcuI=r|tdF?o}TgvJgXYp!=to?)F+4PT1WuXzTAJ_V~ZpdVo@6pZ_hPFHm zoanaf9*kdP5lx;}J}%8l_(0wUMtpJH$?w|Tt)6bY)s<)@&T|@H^$wvEBJ~73D4n9? zyy;9{IhwIp)S(RJcRZxe(0~VNF>GJaibPMFAnS#he^V#Xw#69US?y-u%Jvh#x`tmC z__hSaUbc%@9^k3)#nQ4egfWY+xBjinc+_R}-svHgVMm6KoAyT8bS~0DjzmLw>p{AU z;%0zD49n1M-xb5&zBEs1r4tT)=D5qq2hX;1OnX18Sx`yqPGyS{AJv!_=~ppaiCSSn z5;hI=&NkAf`y`ijZ!EaXHULJlH9$+-)sXo#iCR4uQX0n8&)2H+J6@ErX z=w}UvV79*L*@y+a7gOHh1V8Lanvjf86N<+Pfz)w&YB72waUb6F1vGiG45r~(Kgf$} zoi=csE^s%8iCHMp=(Xe$G{L8}X18e4Bqt3oY4Hsq@$ zki&^gq}%q0&~4M*>bFt&%sF_f)cfveL!y*m`ynGH#)B5CHQs6z`U#i~kR62}^pbxlHTW<@oQLM}H?-*)AsGOSIaR5duJvA)6gFqh zccSgj*NP@lm^bZyc=itSgng#4YzMxSO?MsTBm23pvm|A7gLK!OB;&}P)RFi((Jz%< zglJFpx8;Rzn=jx%W~E(sh%EXutFxrheL=NRDTtdldF`$sk@WZX08w=6Dkbmf7sWsT z4YyIP|7BZ2hT&0nPs1U8@A!6*(wEi#5XMG?pwA;IYc)zro0~DV_!<65E=e3<5qO$N zg&+lyT!zCRGdcO{^=kbUg=7_E(2@7NhfZ^(*7k35IDs4l#@0ltmR5{Rz zjC}?SVy~i?30>6l4#v|5j%y-;NdtBVM+1Sk)%QR@iZI$~B>|Z@I)seP4{Xe%nykGH z3~`^pC6iHJswzNs0I=q9Mly7#V@xDoo|nx*i&is2KSO2hTy>&f%zA2DjXT06{W`p4 z0^@nh5Ac#cV$DYo1F3$`hrV=1au=*Vj?`AKHUwYLd@6^|>2rg2hHriN&i2X-c|j#1 zq~^1ISZ%Cc#PKT0_#BY`WxGB`anx{9-3bDcGzIc7+_M~#PnCr{7X-0EPYd=oa&~v=4Cc`wTcGJQ^UY&S%N*#>bHP*`PEW z={pQ=#3P_vMUB8twX^KAX`m>Q#J<@9`7z6g*d@{Ot0F58GiY%ivf4xJa_fcu->VjE zo}^&%w*3a-Bf7<4FQ_-~bH|hUQ#)OT1{dTcquE$bJTRpsfrB}i3MIt+fb4MI%QAs^ zSN_44cm#Hec|_6Q08&a%VUk-_xCWZjp7rBNKom7mS^YMpNOJIJtAW8G0vBVz82TFv zM8Jg+!Io#m@Cbq0L8)I5@EzXyFD0nU;&qY9+qH)@a08axzL=p&6uQ~~SYusrkt6id zM^c1&)&ZyW&&h!h4Ip|A-{qCdge?t}F*DaB2QBWXJIMxUA53}>KIKzDZfXEspE_z( zv5p?}=HhwzgZfe>v~!IC-YY^Z_@D-c;d_Xz(-(Le3QO}zLQWFF-9G=+%4hevy^Oa&fKR|K!K0d;O{f)kh z3Js1y`uea1mij;5@u1=D01A*KO%MgIPE4tQ*>0k}f0G{B!+=mWVFDjbOGofyi7ka! zlct1=-pC`ayI6D%8s`m+Hj_D)M{Ozp(%tZ`Begriw=1%K`54oQ#~jNBfK2Pb#c0@Zuz24^kHM zRLK1ZxOu!^h^=x@`i8(Nw=W=GX1o0ZHF@C{<-LM;7Z zH*&dH#>zxkDnn)CxZ4>pD0cw2J_Z_|c1wQOAlKrXte57}mnYXMk{x4Pf5SMs%kdu; zPFlFH!be|C-<^s~lfHo3mutfX^RIJo@0p+2MhCm!j-)2W*bD?GP3y5i>;m1u#(ggQpJgakz)*{T6w13m+dF zr}RIc-36%0>s!eILi~9IJ~H&3QyC8U@S%hO6v3Ls!1rIb(2oF&Z+_sJa4$JCm;9I+ zCSCOYwJj`87<15L$&ia8HVgb)<;CeX?MkI&tKal0P`%>$H@l-IiOir)KehWZC8DV3 z9)Gci7hBOJC5xz^Uh-EFgZ>t50*}fK_1J(G{_h3Xy6j*N4ad5k>N!EP&Y#9N>q_ZY z4643oxa+1So-!rv-2K?#>d*EyY9CR@7b6v!^#XDVU*@CGkvw8pH{2XU?4iiC2+w93@IMQ8@oOVAiJZyY3 zuS8cQ{c0oe`pCm5m!az5+p>&a^mWK#;nJpf4?=JG`U+D=@27mOYFAWCZ=%ZCf=ExZVYmknZ^Ey$K^!g5MW0-z?+Dro#vj82&q+k zu={&0lZ*Jr@H^eKhGzS+k)S`=?Sqa!+m3!|*6ldziFrP_?v9oFiQCE}l#D zVSl)D)1J&?MtH(xuFl*P_mz2dg1W?p$cV~vY0L3Iw1iqKHz8=&RP&TT-!(g`0?w!>W6} zxe^t{#`QV^Y7iT3RRPg>q>dF5p6k4{i=8yO1aJ7&@1QrvP^<(7=$#XuN}X38c9WN> z>4nR)M%Mm!TlYwF5~X!FTFq1j`%oJJwuBN<>dvo?>fEz;)JJBQ!qGwZZP8ENSzctij$19ZmTz^Cmibu!-U@e$2kMiNE48?(WGcWi3+54RY4SMQXq zp>uSj(&YZDzWBFN6RX&--AC)alg{z1C^m)5o|~(s73y^}(;B^tUA2)Ko6j2~F^u{N z+@R4&h3yejA?^!i)x{STMc4r~!v^De8Px|}DbZ!yZ7$faxv$q3zf#&(eMUZ+n7gLN zi+Z{;!eZw3+_C9?Kt|+G5Bq;JM2J})y>q2Hh1?gpRMzdy_Efpu+Sd8eTnwb%#p)?R9nr^gjmlon!n{+{GN zU2Jg57DWegTmgZrxswAWlPIoEyE65ElVS*<1J}n{_2kain-YI*$_8-gP3 z>HtfICvSGVPR4Z?o7N;s7r9}e&U*8)c`kVbN`F1{+)eCg`C4QNJET_Qmm()dV~1n* zBW+t@#`SuciD84uSe-MEB8Q!BDaRh}Go0ike!pWHr04rreNeT9X|Vatv{E6jfclAi zfSGS|AaLYph z_fT?RQ7B;XKmiqWq~I;9aHD-4+kdZk;^w&P=40j+{H7?lc=u{E`sPQ_C8@%2=b(Yl z<_r1rikAI}O1l=LKZaP)odtG*Sjsv-m3NQ~h$!|AgneA8zKJismY2)=ZQ*|8d{byw zWAw-O-<9XhYwSU72k6Dq?%k^w%!2__dnH{5y*E35v%P|*m(D24>;Go@$)Dri#06at zGDj0NWO~c8oNt+3k6SA&|COzt=6CP^uO??wW;o~k{4sO0`WKYIxiK0n#k|YC2pV*Y zzHHq6JN9GaGFO~Jb5_t_bVf%8Su8cT-d7InQ7K5{qd7I;H^Ro~UOxPKXjV!rtu zq^U5U)vRUMg*tD@ARR89_1`{nj=2e1`RgCO6F9hZrrPP0wfO}&jat8`%p*G298?|& zle?jTUTQ|K!NVdm|6b0qny6hCt+~-Pgq9dVF*2M`7ha>wlCBD^#1V9{g7-iOFz7$F zbT)odvz^3rpe@_dIe6KX5tQ=X=uiEB4`ONAljL&QA#; zhS}jIr^3O@L4p6(1+>HWo~1(lapx=k=(R^Tn;&mb=cAN}quR@(8}d6>4a7XaCAq=@ z?%-no6uCe*Tvt%9FJ;!M4hkCj}iw9m<)Ah_*rca<$!v73cQ2T-X?w5dd8rh7SxFUsP z@9WP&wSOC0md^^-ob@|e#jbuWUTyZY+=-kEO3AwjTIDZ2Ibb>V#$?Y=%s-sugX}R; zKx+5bY)XgGr~Q8<{`4$fX2Y2onXXn^S{L+B#m*Csb}yCPk1V2H$Ls&E0J8xsMOQll z0jCx$H~6#rr;|Z{+k$o@$&M~-f_B)=?rg$JFPEaPwr&m`-e(FOtqKGkW(VEyFPy!e z=XWpuHwO@K(lO-eUk>ckfIYnbPaJW;8ufo71KHb-#mbl};NS4?H0t!oOrhS1;oS$W f|6kQX(G80V*-31P-fA6yeW^atdR+1l5&VAuO1}0$ literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-62-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-62-1.png new file mode 100644 index 0000000000000000000000000000000000000000..1a98eefe90d95ab1a668680b3bb292d21d706337 GIT binary patch literal 11404 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 E0cp=AIsgCw literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-64-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-64-1.png new file mode 100644 index 0000000000000000000000000000000000000000..a6090a2ea5db2178bc37e8b82d62c190e66046aa GIT binary patch literal 73346 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

    (RWb{qF||r*V8crOAr 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 literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-65-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-65-1.png new file mode 100644 index 0000000000000000000000000000000000000000..750fa10a89b69795072723f3f503a8c156519125 GIT binary patch literal 72929 zcmeFYRZv_}+cg-PCTMViySuwJZb5>(YjAgIf@^@_)`Z~hF2NTp z8ag^U1_lNuCMFgZ7B)6E4i3)8j~{Vyaq;l*@bU2p2nYxX35ke^h>3|wNJvOYNy*5_ z$jQkmC@3f?DXFNasHv%GXlQ6@Y3btIk~vFxVgD`d3pKx`1twx1q1{H1qFqKgoK5KMMOkIMMXg%keHa5xVX54goLD| zq?DADw6wI0jEt zp{c2Cc{uWw*rU}$J)WMpJ)Y;0m;Vrpt?W@ct?Zf;>=VQFb; zWo2b;ZEa&?^X1DITU%Q@J3D)Odj|&xM@L5|CnslTXBQV2S65dzH#c{8cMlH_Pft%T zFE4LzZyz5YUteE8KRloS6&010l~q+$)z#HCH8r)hwRLrM_4V})4GoQrjZIBW&CSg%EiJ9Bt!-^>?d|Oy z9UYyWon2jB-QC^4e*Nm{>FMq5?d$97@9!TN7#JKJ92y!L9v&VU85tcN{r&s**x1$`WvP*D(v!^H1iSiE~j_D)VxOx-K%xC7BkU(TI10DcH1gd7GF(^OWRES`E8 zHt}2PZZ2-(pzj;iWG^}%0t)&i4HftuIr%~&Q$tyUPA2tYin({{o&UP0_xhcGg1vW> zyT!@;yz2Vd9DmW_>FS|_xn9iCoxke3UX#P>$!wKUwt%}lCk|9q*wewc<&OWjy=jFL z1^PEM9YUc36=x_{9)db_oLrF(paG?`EY|<`ZVTxFvh%#zC>`dF=3Nq5JU}x8MgGcT zk*5@^wguY7J+dIXnJ)iBEhD0v^r@%qUD>y~LW=QT!+?gu56|_uDwv8Yz{5}|9DQ-h zI;Ia@<3Ou~+?(4xGy0Dr-}%m}p4`_CmLUSKz5W_pf4CeBbkaGkdRjK}|10t4 zx0o0~{C0`k^>|6!S?%);wQ2XIA3osK^VK1@Oek|Uari{;6muXuwc*C<^&0MEcVaf( z(sxg0{o-}PA!r9aqcLk-x56eCvC<;v^)!6_wewA9Zl7uP$?usW`|Xh5 zpdj#hEmicPDmBm~KoPvF#-bkvWq>-AE(!(M(8 z3xTgx&M9mkNEr*#>Pr22v9CfjcA#v1N6aWk@z})zFa7p@dD8z3qwVc4lX9Z2ON;Pu zqd9ixr(rV(zX+bv-}k`7juf41&7~LZ{Ct(OtB!K!2QKP%w|7`d0pC1~@Nk`Mk(80! z9fkUn&vP>x{jC8vNZ`9GpZ-NgR6t9HhoaqU#jW8?R*6lU%^iVik>`4F71U%zCxGxR zquYjpy(Js?QfTS>JDB9^GPx|22}Ef;aOG4z?puq)t!P)V4d3a5a>i}W*#!Qb)smp0 zWF*~ueSAuVuFmsk#j=gIyFe-5{rHa+^p8P>6|UcD<(OMma?JHO)=K^TU%=-RHmuJX zx5|3A&j)ZP2H6*gv#!jpjfEY7*R}Y8z4%;Ta1Z@EQyb81bJP5+dvUo>nvA<5vGx`U zS*8L%&qQsl*YqR}tlKUrYV~M-*kMfrov^fPA++Z%Fpe8Kqc^vEbKXpjfzhl3?K0l- zY{s@Gmm9k7&h*Yx&M;^ZmEuTeUuAx+kaif&ysn^7soc(g-cDJ&5(UGxW%Lc7XBnGg z9CQyh7!7#Xt@}2tZ`$9tG+C3jjd;Qb7U#Xo>?-kZhmC6rl=bcJE5sAtt?Vd%$NhI8mI(mZ5!QQt*bupPd% ztl4`S8*g)F9pgKQq)ZT4`tn0C4{wf0rZTd~T9am<*HMMTI5u<3;(cGo-53 zt4|J4KYI4-=JYwQ&>n$mvgxIYhjRnb?!T;x23e``rswO=?4|E%ah;%_4g|nc|F~Na z<%^69lz9@y0`5rF8t(hiu7A!UYoK!VO|&1rryIGJQheefS^rA;!x>@Lx5DN4(phpn z|K+Pj@!bPxOgR22lgl0%_Zqh$ck+TbBZc@b4kw38q}0DJo9#UKmRAC^_&=Kfwc2z{ zVX2s9<~dkc`iA}l?d1t`?XqKw>KEd5Q)E?DyT(&K2;e`;FMlos{vad6%-8E0oFD~R zpIc+j8Wk{_f1Tr6k2m`k^f$v-`{If&FEoRP86vbkoBF^~MbCl7@H$|3s zq#IcAQu)V7Uuc5ie>5Ga^n~lQ0+F6^h@N@Pyj^VeEIMKomh<1PGsFeOm zHX8JX$s`i8zVOQHlxjXUdTV(+zGh=IuOeR6t~Mj0R$aBAmXkCaHhv=4NKGkonxs3$ zM+FwByumoh9Jh@S7oLE}_5SL?ns@)A{S+khDpj21e5$=EM_G*gmc4^8OAgGLIKr~Z z<>SN1zIQMjq5t!&cjC`+le9$p@&xGo4~oTqvWjg!hyfqbwwh%?q^n|Xf@P76y{_R< z6uTTU`?`Mm{}IZwsq1ryM~`zAy`L4do z+zl8Xd78rO=w`3{oG_;9C@!9Y_qz4|DGe*k5#6S!u!ag@meT3;Kc-dR-Ep0qEY7+G zX!wSIdX2cXdi94fdJu8O+yF8Z!IgiF^Lz)Er@2KqSXa{-&7SK^-fZcWrJSr9tzYos z-EA+N8-B?hbkx1nRP?<->*VnmeWOO?_SN#+e>svDRSY*#hLcz@DI(I!dA>$F8hT^;2{p*-TqBvoiY(qU+wyjj`IpV(=$=- z3JtqXiKnPQqi(HEqb!8ETe??E#bsPc2;4v1z9P*2Gi-=rvTOELvd~}p2^tvT%Bbyn zXx!l)7Z*&*o~wc}VYCY0Vhdkf>J0v)mL!@<9VNhxq3w6yKP!hlZ8;OP0Y(k+@T(a; zGd(v=)?F+`KB61;3)^=#XD3&IerVuF;P{KT|3Ahdi_X_86V=`p4*w#*YAlSsIYYi5 zLHkI13ERL+`bfek0$x%9%H!z(9}P}cO;645SiAAY=|(vu1H9I!*Diu?-w>(mYc4QO zG;NmT+l0iv$nD)yp(#Q}>3qYIKphK@Ofe1=NFrC>`%qy#v~S_g2WX5(65`?gkB=cT zn&;ZQn|z{mWagEbsl40vMVMs-u1y@_KnW)svru0pK!cInaC{uiZJ!@#)T7s_l|@x* z|MIA})b<=-fWYM)!vx5t9v;aGTHim)@JPEArOmKoZzO)=l0Sg2XPtbNT7EXu{h4C! zpnN$A)QxQO@7kqOIcxArjqf=}eJ#Ar_~%X9w+4Mx%52uXaQ~!itw1?8xY%TS_H$80 zxXO0Pr~~4!@@di8ABvk#X!q0qDivI5G%K>dAvp8Qd@@syF}*fNSk1b@yw0eEnFSJ+ z-sNpqd=h*!qX#IGKqZ<_IArmU&ytSOk4N<*-X-*_jD~RJ2X@OS2J&I|0>GpIKKYw zG6?BP+SfNN`Ka!TIUSJrB4OKA>HE`uLln&Q@OgzxZSr^ zVt%weVg5%?Wc~a=W~;gOu9(_F_ zx*a?0Ej4se(1?Vf{`4k~`?9mZ#WCkgqJUw2iDv@*qS+Zc@UW)f`qejtc3?U6RXCuS zH$-9Jpy2tftT6o|7|-;1n@7gm#asxQA?)NKT+csAo~ka;wcqJl-Y9&({7V=o-Z8O{ z)pbIOzWdC!F^`=?(-=5S(EU0ZZ{yfMe3BE-Dte?Vo3VilINQI8s?#C@9wXcKkRA>U zTJQ4~OKdIUo+m@&KKRQC8s%1x(eVc_CMn3U*-wmO@4ru^{`-QWw_gQa0vFd`N1{pZ zZ~4_^`${KX9u-J^wqyA3S)9pXT%3wmUw!zKIksQtbyea!eT0VkuKR|V*R!tkO40lA7KomjS1I1geTQ=ASwGrK zKiWjP{aaVz37G3{ut~&r)3Ng!{7|Tj@SM9qIWFQX(|$~;a^*Zs`rIQJ$V$h~{% z3U5gk&%gc=dWnz+&dGf|?3m-MyFo-1VNvl9RNEVOQ{(F$;!g+B_o z>ovN6`J6wWDX)T)Bm7;z5LF5?@s3eC_R*nf5r=@A!8~n>SGvQ2K}^HzR>dV<02?d< zTaI^A!tz@8W!91FGB+vzbyhvN^!zw)hr^u?;QwBm{jlxa)q2+G*F^8`0s$RSVfOnt{QZz z7|4I7Lcp9Y{j5{%dJFr{e2o8^FBaTtGb_WIwii1Qr}}?9zt%-?Luhm_+Qok8m<(YM zqNHp2L>vXmg$V}EadEuuEXeqKjbr~mCdLSPJ?fZv{D_V1r{aQ7`u|Ed0fiTQ>UGlj zr&aCsrRo_n0?E$#>)4*s;$@u1S_s*YL82(`Q{61;bHcK=l$AYu)sirJ9EASx!wU|? zi|09piR%#e`f>@4w zRQkPfzVUnI(gJ}3wQqgHjkEl&r+eY|j-rMJ(E==8wP^R5sih3nSL-8VhDCTiy*5>b zEx59uVW>1`5${_=>u~UR7u^t*;KdV##6r6dJ;-2%hUc0 z{w~Rupv^;AB8=n6tM#FV=WNz*6i z3rR~?BJ%9M?F+f39ye;y#zHl~xWM4%wwq}zW+M}?1TUxaNQ{H|s<6(N+;s&1E4K9j z?rZd!@$fY#i&NiH)~%nFX91avI>9>Bma7%{Xd%4s00qfL0_YXDMjl$8XeO?;hi zB+w(^VUDx#fw`>Yt%mVxhI-P+!01YywfGxmSSBbO`Jbn%T4~lH`bbA zF+Xf7NA)3_ncgDM4$nE~&L-MezlJOKfNa`rVDf#{`-H@SE8d9Nk4PBK>q!3mmbH^4 zD?0e4N`*1BToG<*HN@v-?-MY$#yBFl>Jex#M`>jtYWTe+@X&l|;7SJKZ-g@S{QW4; z5!{=7J+%Do6TWg7Xd=eSj?s<|pcrD{j=M$#6!^dYiPwu;j=*Ij6bStCN>+~;xG!;c zV0W;5uCerXIw~jkJBfS}F{XyOIuC&h#-X;x-4PW)tP8}7+{L1r9ESQP@IdJIwT`?6 z50s24?y7(bq4lRKmA^rYnK&6~>i?!z-~*e+`uN#|U>%@iK1(9HF%k+sD2hW6C7oWD z$_jbMVxbG*j>!W-GgN{Ja&U%wRY>Qva#fh2!3V*+PW;D=*WJl3DqIg!1b~10QMn*F zKY)1$h-A>9o!lw#Ya!zC#WI%-eCvbYMyZ#~_J$5zIup*o1Xo&_m4%T_zCQYB6%dsG zGeE#DBHdF3*KI^hYaFu!{QQ5bjt71*WO!ZE3Q!4%_8`&l-&b(_{fXnp2s*Ges%E(| zy$ zmB5kWvGwxUAB?3=PZp;yOj?f2+#C(8&ha%?~lO3r23Q z>5nde)eiPrj$b(QY>neBRS4J#RA56G{ywxy1TMK1^G#?FR0|3R#g^iCv{&Lru4-eL z>BVQc`2`!ARTL>L^Ns)UT6x!KJPNt4HavVJn3}oWW$-GTS>q5``Z#Q8>r1js=#(r* zbF3RQ+u5h61i8ybv`WJ(hz;)p`sC&+?Gn>NJ|8p#AA_tqw&XGg5Y2y0{hV#9WR#Y^TN1rkxY_);8j4WW6-Bg3?pBk`W%lCK~Uj4X@ z8fzKf1>&jXAWxDLZ~U|>_w6XKe2f4^%qwlL7K%yi4f4r~7<-Yy0;TqA!!SN;s{?Kt z#DW7;!xEX(g{$%*(x%Oy-hSIA+6#o)I(rc;ID^I_6ZM0>qQu=?5U&A&Dp+qKv*Q>+ znX0<|+}TvT?;3evtOLYX-+=T3MN-6C3ciFikmtpW%^&l`T^6ix5ZHFYdzuCb;J-2E zr@bWpdoc#*>l(|=9u=Y+C*57egfN)ItQHInSX7oZ=c-Z=`fdqG``%bie}R&0k3WUV zlyE5Plx+;IcuQi<_Gzu=5P7;ZUrC(f$|mseuz9?`L56AB>g}jmv7R6kW3$x3*^b2w zd4-?k3Wat@iNlD3C-!7brNMsMjgyz+)qlu1*b>I;o(13`EX5Tv9u3ikqh>@u{B^vR+l()p(-L6`UB}s6wHIH?hJrdBW;EE~M!LK=j3aQtg z{x*xj-V=LmI(OGvoDvD9;aRjcH0IqM4Ci$L7X+^$)h?5=(q}ZpDIyOPma*D!lA*k6p5~)h6=`&M2QT3uM9CVJ|-AK13l{yFfPMS7X*Oj;iFz#M;;atWtGK zdb{%a@{!YoYL`om&+Cnm^g-=$&Ur7pX0rlu?35n zS;VaN?nlT#c7<$fGHD%T0b_#E$!)(lc(lYvUCKIFkFEGVX*k%FC;>V+t*#1W&C!zV zj=H`4Hu@bg0mMS}6TP3H5)AM{J~trQJ8*|CZp2r%4Kw$m53xQa6cpHL`+Vq$+l3!P(_TR z{?PmllCzs3Ups{^9%?T3Q!1Gnu|27|`%C>?0Dht`o&mKB+^do6nh9f9{JExg3zNTZ z(_3C)C}qd(n(D=;0NdBgxZ?O^aTU`@sL@N!qK7@ zu7+4@S%~&{(Kq?$y{a^0(1e`l;@SqbH=evxejN0x0DXF_7?l%2HGkVjc~5r_II+;J zj}OSZdi7O-OMBM2sx*_CM-y#`*HmVNSh*b7;GCROe0JGnkgc}YDfHh9N3YNN=+>$* z$)rxP7|tlSad97gukOeFUwzRr>FHfj-Uk1Eo@jRQwSvv@<4rm<+$DTsmtk2Kct_au zFtGcicdwb9P;k`N*MQnn^JS@W`bHtlxzu<`VjG)^6dRYsAK~@Pd2P#5RtKP`lV*|s zMo;qb=rK~-*0Y@M(}bazR{O6&hI{Z$8o_N&hs)oNKF1RI34d$6CI-^dM>`m zWb?M;sA~4kYtMof++{MK4B}^XQFR6yqE}xd+{==h-wUKO&imD6k?MSngv;UWIXep4 zzPaa~)C`#JwN@|Q+LX`XQah->;F|1|N^?iETi+$rn6g&;lLroa7`t^5c15<>*V{ch z!4*n>(;H5jmmI*U_*$_t#*cHX%#bks{-42k$Pt zmZQ8{TgA@{x72Gq)Mk5#eUJW-)8nN_3vcJGIPxb)tJJYIiQlkJhCPe&vF6pidFjv2 z2`_jiwV4Lm&Jni{uarBN zvZu4Hvx5$@E~S^m*@I8?_#bC0n`!m8S-s*}8!9>)er_oB5Jo#Mikh69v-lZp9Xq&H z*O>Y0)4RtoEBK*m&0~?U8pGv$KW$c!720Cm&)}`e+O5v}n6QCkoXD6b++ab4$xM}? zqA4u`*5!62IA$JDG#^i-SXr~bZGDI^0CXg z34iR6`sh@fUl8`T0&{EVgy-#^C-naJ4$1N03{6hdFG)AD$z=a+{Ox_^iHbGZu<{wV z!-fhtwjuXf|EByhscEkneMPxw)4fjqOgUOYGI?DhEX`~(fYe^Qf(Qr7`@69eeVRY4 zsNg8QsP0=uzpiXF1K^TUEbe1;zxgoW39Jx3)I`o0Z75SdoxFSfPC#X-8V=3e$K!S} zK?!16{ei2|Dz+fj&SWi3M|fbPRyX&lyqg%w+$;(Wjaw#GR>|e9_KU^yByA z9-sYU)SsOm4e|{YSzojWe7Wr(xV~IvpNVN4H*V37(m@t7MM}?~9E=xZVIJG)2FS;VkG< zApcQEhgoU`9}B;iZcNW4X%uwy!YarnPr=J)Jz}&h|Asj%{7QAA&t!}NyRXU5-ioyU z*J%Z)tSQMU#KUjX7&U0rH^1Ha6?DghW9pJtTA<#q5VHJnUYBZ;g_Ly26QR}*wka-; zuv`k#ZmohaX>=U54|n!HK14hK_L-LPYazb=<&F;Ac2SDpjBt8Zg%vIC+<7`h1c;C> z4Pc7Jk0Ur~wh||phvy^S)8U2F4tt*1oSwfhKs#x3p6FjiwBe{=da~ok7X%0jQa?u)w29j@3asBtISXN@o5IQd)f;>a?AddjE!8SoY|a) z6dm5iwVZQG8?9&=Tl|!h`r+swQ8pghWG|J<=99=|D*A~_W~HV7r^39BJbg3*Mh(KX zd>({%lgRZ$_W9y>q%=P%xA)Aj=m(3=2{)%=tAdw#Wa+I}3K#Z@o4}~E!v5p;Ujbi~ z28H6gurk8iZHxN>;M0UVGB(6lw(ElWxRr$PT6f``9G+lwNywlL1EFcl0mkA1JF04R zDA{?=BwuL`h z@N$izO=Aql^IRYhY3!IpJR)JNa z6H1kXfPBCFJ>Vfm)zqqxJAIKX#bmbBrC%5Up=k;es5sLqp`(tYW0x}vm)lEGWBXKu1T7lx-cy3ZND`D7g~?4c@lY35&T4B zJ~&9RcOePv{sOt;`yUhQvCcZp}Y5Sx7BJ;M}xf2A)>~uxlT3iVCMm_?8ER*5G(a@2g&Q za6FwTMZjwoujeTKwIh$rpV4TQu=dE%RZ_L76(Nd(2kpF!;57nPTM`t{dU8&K6VKVX zl09cqusA%H?{jgum{#%k8pAaoR+eu@W;vXJlD}OtSg;}j{-7RvJtA`B09jD(bBpF1Y~?%HF~ag(vC8!7nC70>AjWC4_1 zq#g{C)BETzPc+bK?a(*4TR+cueME2B)#7{Xb8XrrAp(0lEba{#ts~(|bi@yC461OrhWK5W6W=*aqV$-t?2UKSM!W5gYfN_AyVsX~Na3kP9Jm`io&r zu2ZvC4t&Hr+HF3vB*`GQq1y`kTQA>8G`q;LCow182xf|o_F~7VL|@$~wW)k2aEK^b zpEHeW1!9z@f<_(3rPtCY{vaN|BC`gWsv-#kql9@)sQX2p2;`d4Af7$nK$JhS=@>S5 z8(c=(#jm8bBpPbL1V|XxoCVk{14ta1BmnOU*N={ledwAGOn5j1z8}`NT=o^DJqadV zPtzSTkJ$~-@?({kxWtTBPP~oE{voGeGe#fjM|6J(+pmQpvMli_3*;!I^MDU+FCEZ? zuhxBhX($wkyT#+2IweH#O5K?Zjisg2`M}?L>QcmZ{OeQ3>7Wtp@kgNlDPoi|WMld647?}#&uLSlkvGLDw$`Ip+yD*BQ6pi^azuHAr|62sH zhHqTpy(sWFhB!pfFrU7pDx67wcdT+nsq_l^*0?^%p#y##oh?LM0)tm^|C`s9NcJ2j zDUw1lXAI!{-6xj{F0NB56@F}G%~LQ(iq;{M876y3IEWP#k*KLI#LvE)UgPo+JcBe` z_?KMeJBt{fY*-m^vobPaoerIjv4-P2d7c5ydci~E6PhtS0trU(ZdMRxNMm@9$2G-C z`WO?AK<>J6oXD*g363R?J)a-UNOJ?saVEMxlIgm=hv9Z><-VzYnE?e1!>rOBp%b?@ z2;yE?rdS5si@QwB9J&{5{BY<3xZy925rU%XV}c7%Y3jz;ZXGPfL~Wmf+g)>@n|0)9 z7z@7w*|&}$&f?rP43|s=@3ayKNfOF_C7UE*8=2J=8)0H{MRhEYhlKNkx9FO=6S-gj zJXC$?KqQiJNr+YfKeq_j(5h1<0sSzh^w_}YHdd3bCi^#*7?TblbleVRWgLNg^7prR zkmGsPHy-d0c!A@OKd3{)C{ELoh#DGf;>X*01mg6|^o)W?Eq~w>ha0?9=U8DBAMhjR zimVOd?N3{j=p9l|mZ>1?hAa(oH?UOxg~8fSXqlIQ{Bam}rz$6N-E4;8sIF5bQ^^dV z$&+#wS$)yxDq9XpRRDhBr!@}oyCi51RtkH$G;Np-a02vK3ePgCxS6276JHi|>f0rnuwH_-^gT3Q=yOB^0dUNYH6Z*N zPZCC~&Xay4z>!RT;?~LKKSG=JpTRe@7*MV{QRG?gX#I317Xb&C3=x{ts9_ef_EA_b z_b8%WXHjxAkjB9UsfOJBGBMHK^KH59N?j|%( zcU`pO$9A45$KZCy@3SjgSajxpqee)Gh78T82YdATY)i2ZU?$`X_j`%0jWOw*iRNNi zrzh1oW*~o?J+f}9&932}M<4la(I(S|fZY(I6BlA}@LM-B3dpvRL5INGLH(u2_}{9b^ig(qa$JO2_Rq*F%8v)r0KwKnX?~7D#96|AZ!e5Lh%R>#Kuouo zU<9}1b0Cb0*~ZTl5?F%I)`SFpEK2uMC9nDE@O)c-aaLR>B#z-bJOKudD~9kBZ_{vP%bOXeq$WK;UD^# z3(7-wA4!@gN1U}1h~L%8a}~pBw(;22`I<6}dEo6evt4)_2L!AZ22x`qwfvC32|PPG z_vpfsx44X?nuIGqU||S3XOXXwDx^<93mNFwrYs7B7j*OZ0xo`KLZ@Xho(LaDIzkhG zBh?&L@m9z3s=Uy9wz9JLxY~42o+~9_Vp?nx>$tnRhqSGJq-v=Z7Y(}b|Kv%-A}V3YE<{P-C(yjX)1ej4Ur$ zTa*<>JAf$qz$XjtT{t2*o6Iv_mP~ArE&`;*2d$+Uveg`XW8`TB_8qqA-o;RqXLt@Q47z%;HREPaDlm_aYcG=>dy&t_C|Alp1uCc` z+u(n5>FODM9FZlP{9D!a`pD=2$R-68MR#g-Cd>0Df-2aZ(^@!4^vqSWbwB+Lam&Rz zeyI=;Y)ic@fc5R;|M@F4=HosU>&^K=p;8{({8lmY0*!SguxNjzjrw6_qd8zDT>+)(%MJ59&>FXAOwz5F?IbVs_dntP>LxHDL!#umgrt4vOF= zZ;SEznp_pqx^k$&5;28Jo|##G;(`n*f*lcG^$I6-JWW$=*wb=vXs5+f7>2We*eOW@ zC^+sjI+&$tUm1ZHo#AL2>3%@?{ZQ}UH9Tuw64K8^tND-dtO!I$N;_Wa7t3)Ch1K5W z>>bu$KYua)^rb3ZtgiD{Hnrvk(TIE;2sh$a(9NX7Ap|Ba6)TtxQ!2}=769E1b)5`< zAGr)3Xq8c4<0@=pMFoCLVS#s)-pofc_(ABzj4#g{1cFbgcJ7pOvN}-6Aw>itd96x8 zVyigrTX3e;=%J@bxmu;VD?fu(hZ!$M76niEQ|Wn$5#@Z4BusBKq67P1@6#~Kwnh^{7tMU{7n4qj`Vc7TZ0;ki+G9a8+Y9Pt@u z?3RIa^mvU5(EA|$KJ9vlNMu0(tePb400^)G5InW|(nYI&$KmzpJsVP}lupBK)a&*b z-E`YI3vM)H=HEu0Ns|aK28~<@iopm*3P_6qTW51v=={jOfy}lir;6ZlQ_>02aoUcL zC9%3oU0|D37=!qw2l>IR0}2iT18p_lZWaDf)?e9!%E=M1L(*vq3=>KIrGST33$}+L(7c1ztXeK> z%?c-0%_zQC=-uCX0uZDcDjIx8e9W!iLsXOORmNq`RO-#o@Kyd**BQK?PS;pUkbB0( zY9bFWEFGL^XZ$rZU({9Vmpd`qS;_z8L0o#UpmY^K3M5(Tq6SA zsSpjTzli4wd04$$czyQ?XEqj0w}04LXCi!(h_*a}gFP_a|HTi)Mi+z{He6kJc-h?} z_7GT^ed?}D1SCv)m3vJvD1MjE4&PwE4f3YObT_qZ{^PF{VL)W%9|;aIVldjVP7ks< z(OF_s#7wIB?kau;h;%r<<-Nd_fY)h?yyqt_3>s7%Vd(2qD;L#6DSmlq9N9dX^+6>` z1~Tk_8BZGT2SF&b@#+V)+L|Rt`BHssK7ZWpL5Nb7mzxy(eftC zY**5;;ME-xH~qINyoqdmEHeD=m>`GHl>y#LjJ zA)txyy*T%eVXb@ z+i3gBleMwjB7weUV$C32li2MN8^y#>qx1N$BI6zAS2gqQt9Z{@g&Lzz0bevevK$)^ zRo7lEcK*>EzYQU@O0W*TLWw4>7D5Z15wEn z+v>()8xvEP+AzfPXve>m%t3oS#7ek*mTNA_p5hu9LBQP~TjU<1)MIKWHKmuP8?s@M3sG zHNs(=K##T;*f?ygHApUnL7OP%$I*5D~O~e zfxOrKZAdm%pnpG^D*GAWV4#v!g?exd{D?QlVL+ zj)v0A!1jpp^$}Low-mXMnlf0EcBl)h%M6>9LYOPT)FN5!hj-A4{|_UI<*YKHJSX4X zfc=v8H%WUpEK41WZY;44Cpez<8n z{p#%Z7gOG{>-n&qW(PC49yAb83G;a;Z*U+v&HY;^lTuPD_MY+7WU&$v#}}a+%X$8! zQ(aSiYc8!~IRBzgBSz8LJLeSr zGex&e(Wo|qJ>Y! zlKAgNnPi@bhk2_V6v{iY>43d72=(KqgJ+B*{dgL00!fN4FE zjC+*FYRQ%nKh7pHF1!7zBMSTFwdhrhhEm-fgj3%7w02RBfe)Tro-tb())nPBikVgs zNFR0@w5<0MLAV!&ieim9*-bMd?nKI>REM=nQG858+`4HlQDVL8r(`Nj3X_ahJvto3 zOjJI-Ud{!ve?B-@q`1T1TXNZD{}ih1Z=+&zkuI;lw_#!9DBt*{VA39VSB;&NIX|U=5T)Es^0IUG&Mm9+gE3V1JF< zrnXQfnbWXlw!FKT;Ogvfn2vGKtJQg;qjhd_pfDVRjR3$2^O>s1`*m@_v|u1^1jiMY;lF?-tmVmZzh)&MjJh;&8DenT?J?-Q5_Ivv6I134XH=xnj)LZ>5!Pkwzxt-Kh; zQWC2KEQ$0!89!TTy&k6QaefQXHuT?CzkloYj@K$*7WhDzf3q6zH!*b?u?{hV9tGo5 zvpRnrvCH`m%R4*ml9ZV0i`?uwrYuX_4M&kT3*PD(K_NmC`XUpp5u!|F+@y1|^oIvrLg70C{!L33qk+oM!rmn-rj)+uyO zbIxv;Pc?xkch?NqPD_r31ZG^5x>UWN@(VrkxDOiv$_T&z;9XbHudy?h`t>6E{gWQb zW?zHJ&^$L@|sf}W&W{zuY&Z%XB4kU=(?5wtKaHp4cDg{xvKSG?7NOFFO_ zxFq;gH;C^>Ao?3v7clTa2+M#7k~G8INwh9B)HZAe8EbJU52fjR`qs-%nn`4`+WzZ_ zAbzu8e_+W;WyPmK(0RJjmW6igJa&Yl_Syi3XHsO1grs)=<`1X0)n%b-_`~6(pGf08 z8V)@dXLx% ze(RMkr@CMLSa%UOj3M(g)c|Ct#yEYFRzf-U{_*A8IaZuMr(|#J9C=lsJ{b_qGyQdV z5x?iIa46~F9b1TfUlgJ@`B?}8D$fs*h>`bh$AnM(V1V;Vtr8&e_bU8vRXHVM^Eg;} zJGxz~dj$33Fs$Fcj()rWtuViPH%(PMJnMH$~HKE_5Q2bTcBXTds;gw?Zm}&nB(5h(eZrA=;vCe(&hB!Ni zczGAG0}lFELXW2;nzW_=T7EB@?flhp;`14-md7xnm33_J(mPkWftg|yOlw*MQtq$3 zXl%Y05L?t?cpCjsk0dY;(M(M%x8C7K7vl)w2ZWnp=tlX7g4aOtdwylT8)+TC8?Yy( zeKt}Am>Dw$wbqGZv|sftiO%0l{{HtY0H8ybdoJWkNXdH69k9xVi9^ z(Sx+9Z*UNqN{!u5A`9%*JyqrZi>Y^TjPr}SMkkYrZQHgrv2ELG>@+spn3JY)W3w?D zbi&3>n#Q);^v>^nzwh4rAMCxKjdh;0_BsdAgV=8sPVa&>I8wW9+5+gMsRw#t+}q-2 z6s)5tRRHHmo>F|_+hA&t$fAsV>3#a8HX*eBzb`NjTT)YJeJN}~GMM7?xTr3`_g zjZRz4c^*_+s3;>X*=i4?;XUbm#)9KRVEIGqP4HX1A3%a*$dz(nlK*8ADFQ6^#U8ZQ z{Ws0{P)Xb#-Y2OsvuTzmq)TV@XB@t@2(_n-?!dIS%wOzxd2;j93jq&>#gsj`KHl|5 zvuWIjeSXV_i8|{XSo8NKMDu$|P<$mwpO7xpwq7Cm1?`BRKa?^Z%(bzgmZppp!vfpw zs%}NAkE<-MnrXQVmkcL*i#1_XG^(V?p~_+>sRPPG9G4kgy|V@ULe$QY>7W#4rIVwP z#$`~U?LdaRR9mk(Z&~c>yiw+`5Av$I7gIB)8AbEk5wIAqBn4V=i^b(gtxo;4!$6X?V%D!ii>hhZ zcUS@;yZM(H4)dckZZ)i$&hupd`#p<)AiXo=WBNlpSRcfBBp8AjQj(V%uYimpuOtU0 z1G;;Q;T(liLu+#FKg;?Dmqvp#=~ORmqLDql3Byme1^X2G`vzIhOuB~GKPHmdSnVNA zE_6QrXhmp7n*)=7Vw^GxW}=v%OcsfpBUot_bREuClsY~rupE%+=gR;`t`M5=&0gDp zJu~;g#n;GseM6x|&mjL#{WcX|M3J0L+jxB|-eL{2W^Ti2^BdEfo77o(Z#gz%9t;`` zVmri19faw`d_gfdPO+^+QoIjjjeqT2KEUaKB9pSI_h&e*YpylE?+h2UitK~{rV>=% zi+rFe^SU%26jg%s$CH<#xD~GW+EML}Ah>aUR$f#~~wV=;5Qbr2C9Ddq^tT-_Q-|B**Vp`#s~ z1UfkabqB08#(F)0#sLa@U+euYRc}#Itf#s47E5TlX^Cq9z76F3%EGX0kKLEL=iH@6`rS!u>=OR zX|aDsy@9_t#)_;_y9vv_<2)>;@*LY-mT&}91Ksr8XD?wp`OrE#ZIMNCmf|CvyX`;_ ztGa;^)lP?ha^)zk7I*I~(OYLFlMYGU2v<{l)V19Tcr-i>EyxO*efwdaUFQ<{nVtY7 zSQ#vbee@2DU9Hu4B3BD-@5kv1>dk2t+6jp`mz&FSJ;o(nVaR!nKwgSnToDqE(U|?9 z`OtC#XW>eTh%L2V5AE94KJohQhr?{l=yQ%T5S`6`uoIyUQ8eO|Peni(aKNNJ z60FKgW@n;xCgZb-6OkK$e_b@b@^!s+5TRt9=L$SAKdDV3ET7nuBv;#tA=Fg2VsJ#Q z1heuBtnN#x8ju}bP)|D^o4(fZyzEpyi~Yt+yuIAAKv0n@yv^}R1So*7a0hOfP(!=Z#X+b^{M8D+1My%-tJ{`Bc0cTq zM~ENO7q#EgQYpnNxcDo<4n^R)Z8wn0c1F&cVW5AoZK#((^Nz{jqwp@3=dZ5W!a%7= z6AFx_MaEUtMPKy132!1l5H>UMz=1ALOU=i3n$8g~0(-w)LPWhD?+qS%;xU1#0tss_ z(0CVobE%04rh*OL6`irN?4IC*+=TA&$2@_x^9TPA$2ENx-azvclXG-ZyDGX9l*iT2 z)LKrBij+@{e@nSt(r(aZy(T%smWUriA$ z*r!z6JpaVyZEozZ$RBF_lJlm#!n!q#A}vSQs~i2$z_it6Mz1$M8vSW$hY+|A8q9Xa_O}$wN1an zq{a3NC+(uW)T@6ooG$?!84Ge>`DPpp^Z?GbGHFf7w!UxwGO-8U#)Fs5DDO?R$>4#1 z`7m~9S0fgSLHK!VuXWu10auu%D~er)W^S3bhwY~5kqh|_G`$u3C4K1ePv){4b!3Of z-Dq{|N+gonyS_*!4ai6otdkrJW^ykLZGw7c`}R!9I*4ZqjdU{;Aav-pTh6~LF>qik zA>O9dp3UxA z$Fg4j${$nBrS2>A-(A#j1m$t;Z~hb+7yr^nz-GSD$>mPd|MW|F*T*yO8bz~H??N%)(Bl|st$!>?1w zS*NjLSnG(yJoM-0>}9qx+Op6`;mbk>_FX3E>kR`TQVEPa#QmH852P}fmY@fvjam!O zpC$r4yY~g%32|LVF@Q`gl|&az&?2@RA{YOe>8B(0fUvVZ8xxex=TJDyq8h-d`Br`U z5(QSTLEk&U-3AP4_`cMP<6pLcC%b$iw@b}|u|)9}n3F{tu^zIkF57oFPV=yPG$bXR z!Tvrm$wyXiZAm)d7GrcPWkgz4il-w>z8`;(JFT`hqf6!7(dGmJPT3x*@o;F-%WN!Gbl3R@zCQ!n_fU5&4_){9wa+ytg z4YGkqAx0Uwl00pFFZZ*HR%K%x#kVYUMU)YECSoWETB2QBDdY(RQ)?M1|IWNU2HTs* zQR&2umy;o+%=2yAfxdnH)o?MjzpydPJcRk>{rSMs8Eb((Uzpt$8O|85_H!Ghy_!hFKa*XJCd5g3uC>A8|*Eo)# z@0Bf84!hexljb2cH$O(4wu&TqS`NNPDtJ zIdKK#Mc*pC*;b{w3cI7gok|UxNVc-xZX>@ANPfqQMOHKWNZ#6}-%`fj@*B=)s7HXO z>x*oJb+Es)SlkVB*40r@)I@@(h($I`9w5NjIP|t+TK8HznnG}6YUe@sj&A$Mkssa# ztm>#@ZTDbE^RliPo6L~uhk&HN%zdRY-rlP)F%;U>3+o4gJYZ8){as(eR9*nntQ8_K z_SMIjc_*1;9Lu?%zpjR~JU#p)&XGlY1&|wx`u8CF?N20VeJ9<8?Z2X?wvpdKkp`h& z9MN`{*+jD0brymH#+G9^K)BU|E(b>JMJD^`6t%T;rXsr8{(5 zO$Qi@cpdIpQylm)e9lMfi2fyX|&RawO& z0JkPq=`{t~%y=`w^Y0nHQXGCc`wdzT_mq6$FG4IPXIQ@h<5o*Q#$Ytp+~~talFpGs zec4B`jJdd61oUlvw|XTld5MQWCYQ~mFBJO@)#Wx{TP3FpHNfxexd zYwYs1&-m>)=7NW)Q>ox5>`vUVh!HVKCPG0;t#eRacmWaNd*sWPfOq;QzZ@8meLuE2 zc~l+uf?Q!VTkAeLbIuI#Y0+b#IlTo)Z!eJmzIN7mhhd!~&{S6Y& zjeD_!`~#;nqgk{+bPZIF!B6)Q2L~w^S(x2+_Lokh!!a}^HDkH-^sQg zf}wqQi2?;oqKI+`~|rvP-Vt$d`$pSCxEe@&0p$!eQ}(0f6=&s zX@ULcCmwtBzO>NKL=LCIKCn1)XY7{t*bgZ}AO%kjgCf{!5C=v0Py%TFsrj)~FDTeG z#|iz4@66j7Og2l`;3=eVjeW{YQ%I zFFVn70n~?FMNAvcIg*tdnb~bv(tjofd3%gB{;{|pR}C>p#Mcv+RNe~zlaEMCQul2( z13Idvw#yZCAVh9+z{})-l3v{SW`ivBzw4KY4f~>&3xOd}!w z5xCbHdQ|IV0+pUxg9oV5Dz-%7KG!}Z)Z7t5r1Ro`em6<_PC9i6I=N0$M*W@zM(Tl| zcO$;yV-S0ddj+e)L>K#|-pAvZX^{JpDim^gIS5*r?4Z<5U{=3A`u1?h`pKgDjSlZ7T?mzeM;?R8h_PdH!xT{Z8 zG?QveYh#zrIz~Ai_i4hXW!PX{q;A>)d|3C$#qfv@GV09X&x$Z0sgkCRjN%C4YSLf{ z>`(=oa~;C%PA#4bPnpqptC z-o4-w9@F4kFJS#9>rFHP#?0!NoSbkLGfPi`%_k!e>l_YNL>ek02NVMotiUON_<8M? zJMJOF{NhJ42vaEbmelS@Q9KdPiE34_F=3zNdS+}UHIe@ZqY$m-vd0g8eT7B9Aw>Hd zseHR{mGLNTlUASFln5>gEM$R0_| zrHHo<4pJFb-@pCilgfVk0=Y{RH0E}N%fisUa3ajMK7gmqy7vQ$mC>|TF?TpN7}&bJvOl?ak#>do zkE7tMM55f|qAZc1`}eYwzvHGlmQy1vU~4zjfXFY5eE50Lyc&p15w%Vk46j;s97-ah zhFuMH9ZTWkR}!agzY~9dqU)Wb-M{9Twv0AkbcymYz7iqO&El_ZjsvprsHHwSYA^jK zR+@htb{=}cD89KA;17UDNqBQLj^5B>@o^OXVgVcl?nna>#&>8-sJG2zBhrvM@_FYz zVrkGfduAZWMA+8=%>o!}y#()dQvjn@teU)XV|&78e2Rhyn_O5I879|`l)Lp{!%=Nh zYW{qGa3DO|YZI~=WZAHTZQq0`F0r5V(e~xy+ zDy17Fm_Kg*@Qv)Aj_vln9l?27S#rMFodkE#y*jY><@k5VT@9qqZ=X5cv3nfZ4hOl) zhldv`mOrA6JZ}Y3?G=2Q-|qiK{C;KMs3=f>&kRcou+dpwxKmXoNiNwTThw8195_uZ zfm;j^+c0YkprId{HBVKz?4rC)Xdsd+FC5wR!BH^+Js$>ID6ElAXgDYc_fc4;q~>G% zv9#wmVL=6`z))?v{G9?BeACmZDrKyxpALmTUuu(a`X%^=sv<35W5Vw zzgCiV&HSXa<*278LvF6N>~0|HUZ_GkmgTCBZeD*MzW*RXdXRJtOm%AO@E%O%g5{J;()!W)*tPn+HExd923Uv#nC<9I1qq z&m-(!ISYGw8@WJYY`W)V4Qo;2>&(Vx#{OAg_}a7ykvAMXJI0LUK7}j#8VaZM6hmnw zNRJfQLvhb%0QKI%chnbI{Bq?)?~+|1wui}o`d0Vmoq~iL6CZNr%I6e|&X&Np%HpGm1MJ93cu&Xo#sV@zSs>TvX)ZF3dwoh!k}^w7TuM% zRv5>7!!^;~6a}45ChD$+gXqRr`H)08xqJPFR@+C_xQUVDS&vsnTLxDOv8&nxqq1^j zM~`^{wpc|%hyf*e`6=AN5DgCu)e6tes8GQK2==>>Ks`1`p@e-P7Y${ng*&_>g`X*i zL?vv%*e-p1z(q#C2jz(JhN##Dxd;E><|AS9tdVxZRQ1}NZ!Kclc~Vjlr< zCbT~lS`gq?o4KNqITj3?ZpN2uV+|ppTByIV7x5H)N4W#0rFC;?b3ZzXWb6cCMXvCl zyns;mSadQff}Hn?ZQqT}X-fp^x9)>NBjdGB0?Btjz%e4C?MrJwycDHztw4BA)@Fu& zSS4J*)N8KuV(ScSN#ObWyrZyZls1bPgtX|xcrX=CQH}7NX7rlcPAliJL^OSA(tNGYWo6%6B^9L}3X4?>i7c(A>N*OD1p{d(P z`r?@Olce0~usqnmg**f<#jNP7NalVLO6KiuFeZDsVJwVfEN)$KUgi!j!B+^LLO^Jb ziPDf0j$Ei^mhaOPa2%Ixn#5`-0Gjzz4eyuU%gGjPN|-bb8P6|F0hmZ+&`qkioU{Rv zqI3?;4)2(zEw@ZP;)PFJ|4;|EdxMHKNa=FHmx{mS;je!^(`vQCR5!BmZ(fo4dH#Ub zo2|^RT-;({4x0ut^m7@Oiqh^y^K>A5vT*yc#!_|LIS2~5g>%Wt9b&`JsxNAq*LKbY zQ+sM?G(RJmkLjrzBnY=}l2j_QmhL3pLXvDI#fpBJONO-v zazeTjlMK+8K;1={h!XOhcV?Ql^M^4_b%^ZFGmX|!ujhwm$Fu@(jC3VFts%kUV#3iq z{@8WC`Jvb#T99;~A{+4mceyI7(n^ZEH?)5k&6legKl6*0!KG4tG^apQ9(NvLG^>i_ zr4sQ0olxWgx`ku6E=vrO^AS|}+)y%WlR zjcnMz|K5HWcMv6OrG1u)9!=(J`=3wqod8>%Ze(9n{WXb)q&eZ;h_8KXbH_ypf{_ZW z5n$CH$*t-$!Q%9NZu;uTF^yds>58&1{>HO0v4H|ZRr{fD*qdlia3oTyc zg_8Kn?x2qXgu}--N5!-TnI8j$%bY@4pSjDQW~`c&dmU~S*{$#B7;_FClF~3EYzTT} zQPdb^)LIiD__)i(CpgzR$pjDN=;@wrma@dHM)sbu!qGSNbLTVN0wr1ejh@4;f}+!g zu38**OEJ%SnYYNsG)d3kjH@RO=Q-n4^QYN7y~9zuBWq$yN&Uq(T-`rAdjq3<}@^^Y-8L_clrQNFyJAOAmGV=;f2+D@rPPkrjx z11b7e&JgU{nu5;{rc>n*7YYg<;ZLQCmHCMt+aiiv$_@tgNO+O^B9#aM`v;D$pxyr| z+rUS{Rw&x)?9m_hR(=%`Xd6viwa(2Y4&6nRi0^>VE%A3!w77E)ev_Jer;M0@3K&N$ zerRl4a)bkhp6{_lPxB`Go_k?-s0qU=SLme zU3e=uS9r6qg@Hm}e~Z91rRhqd-dS%Wt^R!e%A(M6)!?-qfbiWPmb(@Cag{j){EU2K z+xouol^N!*n3amuTE{7iGs`un1`n96bQ7A828$;<6PiSNaOMYuT~VbgR6-9Ptnp{5bkq@}pH%*j}?rlL-2sE4*a z7V;}+1x+)SOb)NeiM?hhSEv$*)r6lltk&q0o%sNTFC@9u71Y%pQr7TONmdIc+u3<+ zi4rT*ux;(tW5{>T4H>Mt1wJs%Bzmy@35 zdoHaZNC)H92cK0IvN(|BA=}y!&9XG1;3t2v;#GknY)_?Y*h<MFI{8Cd z_#Mr-08V6*S5Qk<1NSS7gH?k%q)+|JwCwv@hMtniAM}(k->YC`{L{uR6yI=UTBlj` zOj#WRW@&0mGC7E;c(VC8OtUT~a2uI_75%G`hZu(WwfZfr0&J(Jy;4HOzcjIpO9*qx z=vy?lCP(SiOExn7_N+HfYDoXQwU19~PTPRwoC?LN(D;F%^|yhKinsM)?c%j9%25)x zS`QaXJu0E-W}LFHm=D&rU)+T-YBLrLQZvQumF8_4Msn~XF*7Pr5e-7Fr}G`+U*ihY zl_4GW_u_{OGLAmb3acUw7mjOgFa%TX-d;TvMU=|6NnHZ4!D{!JR8KaV5It)?x z1rTY`14hxIvP(-S;~wYD=fe+t)~fCnxd1FYNoi zj~}H%;uGE(=QpxTBlpJNS<)a@8^yiB4a8~(sFHMNDQ!$6;_Gn{tuK>P&w7T51iiR1 zkm44VljNxw+ix5u^0xm?e3c4W1M=tJ`nxBcD=#ieval(8`YY1S5|y{Njun`69kD`y z3KM@oW!B$J>(5zVH;&X9LK>|h~<3<6I0rd0oob}azB73T^suEk5Gh?T zZcop{N%`V_lG1|X@c;|T5@msj3fv_$B9VQIjrO3KV>s%B4mvyRiGSy#V^|gWL#lru zDvuia@nKkfhI_+j=n%iUIY)@GKb>fmPixJiH6K|oP{h0@tNDg0QH~ypc~@3yn(}7O zaw-wSqyk}*ZR3A+r7`J!aXNZ!m_dPONx`~q%&SV}AxcERXVB{*Ow zrZWHNgUr(lFk^|%(L#L ztYWE$*94ipOMV{@+N0$IMFknr#%h@(Bo63kwTAv;F+yWFZkQv$GhMh;7&^0ipkPls z+@trQndI;m7!spDZ_9+t^6_wwWXz@B+D;mVkq6&lJDKr?{$%@kW3ORXfJLv>gvvQO z_MJN~Vy6bfh{M*^*Iz%7F0!NzE_DCLnvYnSm`OVUi;S9rGm|FXc>|0M<@?DIUh_EJ#1?>og zfb*CL#&C;s>N;lizh{ETcVQ~37F{1d7I4TxvOlwv;n_c7LvMyKBRU*N+by-C3hrR~ z@GuUu$Wu;51opoE4Z`6E_ zj(@PkRQcAC8iUxSP3LF5a8)0bwT%?v?}cdyF3dP>GgqB5JzTc5i=ot!Q8{C;ZKo^` zalZcl4R{kr44ZyxXwmv$v_rH#hCO$U*8-!?BeVBklsAfsJ&dOxauD%ao~kk;Rww8M zm~Ukj7B>PX1PINF7Z_r&lld%MNpC9saS!g(<&mZK{INLz}U+|E)HcloFy4^ZtXEij8E zaAxS+#^=?PA?a7+iP2oUe1;>eVVTJY1nFCB^yhr0^-XY4lXkr+;=8UVCCDyRd;RGVD)Ofui=iDK0fW|S%|-2^zy+IyrleE)GnnsBrq=EaRo_Fu&LR0~ zU}X>(78Cu9$G7~`eM%FixHR2QlK`~pY$Ihm%Fli2Y4QAHdJ|WC6wFc}T){d6x58w!{Jbl*XA*wU7 ztMCU&W-(^;Y&l|vQ^up?SZdNhgjSxT;3mW@b@e@`NCyWFi4W)*jI3Gd4&x4B+iO9D? z#LGi*0J`m1{8qbLd-+={YWUcX0UTw3{*?XYUwzVW(eUOQYx$S;8n7;Ss(TR~rNnd< z5Z@+TVoMEH^p@CqDGF|6O!z{J>6I`4b<@u_2t0HP%+^I`D)lZd9} z9rOA0(~2R#)e(a^^4@h?Rpmu0f2%oCP=?vdKR9(gTbGjqrO(s?_drB-&DpdfwjFDo zV;M~;oM3Ue=HnblD_n+q*EoG zS)s+gz|rxG4c7;MLi#3^Dixx6?H4?uu`?X46tg3fROGVA^Pnq-VAdN*Q#dP?N-^uk7aHOM9MpNQ?~izC`0y^h^Wmvek9W8AAt9&x=y z?+gpzhH2`?wE;idH@v^lY3HOJh$~N)V7-ztoKYgtHqF#0>>hzVJ zO3$MOdE%MvYs}mG2=eYJ@H@EZxcw9&Lc)F5iCiKwGq|=d8T)r1Z;ADIe~WB*Ics1_ z)s~s8hEig2OrIWIvNBzDe7FC4dzU!axhjJ%#SfQdE}Q%b`>@Q;ggP6mWsLUkffhv^ zN{L;babg{UVe7RgJg^O4Qee&P(quE-BZOz9Op<9SysMSSE=VG7VSp*9Nhc*aw*?mu za=zeJO!tqOAgwmqr{d|)A`N&Wb=RO7|G&~BfdupQRk~I#R2nY!HDTbJAmr}e^-g@* z2xy7xpO~LX(PbrT9&IraaE*^fC8nar@+sr1lEX*ucPhu!*04beWtkdxQnap?=pL{p!HEo$4& zCmw*2sWjGK!H{GI8jOO80WuS^BS}|4SV54PU8OR7!QaSsj5aGVnoT|{1bXo4?$-v) z3yG3g%==ZgX&5B@nW4(E{QjjJNf8p-REUJ_erui3Kr4fv;~sKG^a*yM_9#4J;$F zq)2NbCB2g$xLL)uOU);4vt0n@^|I>j)`A(_W&C{WWe8IiXEsvmLdE0OhwE}}_uNPT zs>f;(mng%ZfFlnzh>xAE2p33U*-WlgmWe{xZ14=_~P?%rKX1i6uN`@ zOzQz~=T@TtzT7XDym7uCYzt_P{6I%*@`o(oI`wd^&bpqu2tTJBd8KjJ*|$Md=<|I~ zp=jPOi{(BMTXz96^YdoI9CN1AjGlzQ+RMOQ4OZD%^0?5rJ)tVb76)~D0&92m`ZVIFotQQ_9&n4kco;#WZgW=sK4r^;iKip3lf`2}#|9{XglvUMaVg~UqjdEwa(RXJ{L zjQ54qfx+yE<5ZiIZkaiFrO@R?n9+ia(D~ejSa(p6LUr|2BqMJsEIN2pco0QWlX7N2 z8m>U`#(C&nDo>_UTJ0L0wLEU>o}yko#Rw`?_VvzL06K>B_;Y5x)<+#+&#Ak5G~@Hc zV~V6`F^4;ch==a-BeM+du5ACN!_^T1p50(2%pmSC&jZjum3sb53!tSrYZg&Zuq&io z%CGHRUwV(z)Hs0o`b(nVU<@FysbtJXf#_du431sEaSuZXlmU7XeHFeTWlJF;MntpG zWCoXAdCi z|K_IScmto*VYbf9e7clpi@NIhs|sL3P$s#VLidyF=J-&HNkBCi#2kR#zQR2gL&Def zEKY1?3+ zShwl!D_%Dia!!xzW0rkiy@&z%u~SG?3XBMLIRGv#p-c6se2{!`%eliLl#|MUepxSf zwm{bsyw)Fa*(}ypB77X(13|*ta_AsBr#1h)t-{Q*poAKh&W0MEaHY(s+wKfUoQbPVb3O6fCIr|{+ zvyx#w^?cFNn0=Qwg)0O_y=!B6cUHeoFhW)_@eN~o0pLQBTCTZ?BC&KvYr!dV83=RO zFD;JI@W1k%L8z`Ec?*3}q;vE?cEemS_$C@(Caemf@WI#4p1fbP@1jDCO8dy+P4hX5`G-rF}X=MV)5IXLHz zjSbd1-pgP>(m8SstBMH*{Lwe+lbfeKd*FN}5<_lo0g#dcXFxG_HvpeR&!d*b+Z~=2 zSt0Q%^6W?f6C(_YMY*D52@i&=P*-?oa{t{)Uh6k{nGpQ|mK9tybNL+8h$&WX9Tr!! z1|cdG$7ry_0u{;_JmW_GP~-RKiu481;)<<<+*2(mau&ea!P>%T%unL75VmW0wdinQ zd);lmE5S#Go(|(fj#nniTFy2l*k1-?YHb4}1YQJfahduw`xvr=&e&;;8}AJXReSnI z!WlyK)JDDqJ{vI&EwhGqYqIBd8j9)PxAScZ{Hq(W+h4tduWqf_)`#^a0)Q{MHyrcB zBs>2yez!{`YLteiWJ(`SPID&amasL4A39vm5>V^tM|U(i!Xu-|>L~Ij`Dt;J^tmHn zNs^1d13H=%>|2fd66^SowwKVXYl~8Lep%HG9BQA${Xkolx)m-TIUz6Lw)ry5r5m^vzHqUhWqy# z+1utm)Y%Ik;)k>Q7vj!+n|N_CWctd-rPq3gqJ87rS)a6y@dws{%ui-2JWv5AH2}z7 z1{%2e#CW(jSgjVGmE1ROLdWPqAr$Zw*P1q80pI~0@lt$%xRCxD=U&n)1De)embXn- z-QTFefkhAuhIv0BsRlPD6Pq!EUppK3oB6S*$&+D}>xeRhoV`?*M&Y!f$FMY<+k#s4 z#O|oljx6B0j;ChtuvofFN{|F3VVeBG)_YK1GKU%KU4#sdcy4z!Err{+&*px8DsvkS zkNLP`u(Au?CJsb5&^9_2%6-O39ZyJT(AdVea^G30y5}F=V%89f;9RK1YX0v80|%a< zA&Rj1?ic5Nm6k-YLi3!#C%%Gf+-^Shyq>=Ei#Ko?2eRy>QiJlPqy_pHSJ>aQ`m+2B z%TakR2(V8fyt=S(s_I5UEa_SiA5*7^~(ZdE{o;jmrW)Bw(Q}UDJj{0K@r-N8Z8d+bok}i`hgK?%_=M_S!J14750q? zkQZih2ODEmB|P6Yqk5}}tRY3k-ZqdAUX?sD=k{8(EQr&=?gL-yYFUTku6@7B$_7G| zb>)n;6q!a>Nuf8zJ^&%QswCuUG=6-^VDw`9AVuxK?(5^7&8OM?iBY&D#`@XuFXe=) zUIjfii@}CWr%f%!Ma6zsA2pBvXaJYwjbgcIx|?Nr5%dE!5%izD{`2RKX=5M^t3qZO zLM>CNt>F@xclfRu7jcjd+?Y}1zp>kVjv3rDeZQa$N5jy@UC0Ee{?@l+t4>k?_ru8F z1kht@i^yjd6*N*75|+t;h)~_J`YC{$L;79wGw-uiX-TFBGfvJB{_y4sWc#QpO1Uym z)@g;PEi*k_bQ}(~LYD4_?W4)Z^#)4{>@{Cgc0fh!4YMc9q`+g7Wk*lo@yVv6Mnk0n zndD>1d|bM^Pz0gZ;ieZept=ecT3JrOe)YT1jYl0;Gi>=uK0p%K+T%A{*@t9+zGXhz zc3|L{M4U$vgWHP_!E3`eCu>1Vkk*P}bhZa`ibvB~8$d50Z?q>h*q<^Oqu6FYhnO)! za%Dp?fTpVYu){}V|!}-De3>e?riOWB$HTmbLYVw2#*p)+G)@^`a0HM77 zbIz9x+So7oZud^ZyNY$MLYyjW7%g%`ZcbfR$mT>c} zc5ed{&`+NPkmubNlQJ;fnyfozgZSjZEz#2Bq|L;XTvP;ODNzU;f1^gAjp%TykTPjx zJTL%fAV7!&T-clGzn>(113{~TkMFpnl2d2-1@cQ2T_IUweP-cCUqJ?;ayu>lsiZPi zE>i3O&d-4QPJE2!=Y^#Yk(R())d@>uay>uAefs6`cP=g-yta_KTjD~gse)&WLS4r4 zHTxd8wn0IeVcGu~HcO4LH<_8i6QEyP3cifeNJw+iyQm9zljjEScuuv0#H=r{&-^ zY+`svx4L3JrDZ60}n10%B-%0^-ypyGp9DC$8HW54@hO~L&JOWw;S>IFn92os?;3gNF*u6@M2mEchne#`KAcd zRqbn64wRb7*S^s4q+jPqENI36AhHj&vGFjJ$_l8qOvS|PV55izx+}@fc6v5ysuqTr z<68%qtkVu1bPNnh7ijjl75=F3su)@S(AK80IQQ&~Myq{TMk({OK-ASo$5Fr1(yFWd zlF}ZA-4?v;J+_KZ(L~_^K3>kH!+P4L*6*0T}+dKJBhj&Z4SMSzwk0_>%1vvqJc0~GlB5FNwr zP9QH_jlmwE0!6HSjUMrMyuW3z;cZIBEPBV@oQ4rFxrFF~ zyiOnARjRF9B|&yxvM@@%=k@P!B*6RmsuW3KnBNbN_bbXcxzSmDlh?}GGtlg$up2hP z-So!F^5gFW4Tb!MR85m@)n|L$Y6c4@($rf8p^65Ya3%jA8tML77W;6X_3<@Eb07Qh zf-?gEF>MnfQ{O`3?A&-r1|;#d-}?O6=+7{PLp8{2?#n`hLru-13%v+{+0;6r){PFB z6>m6%-LyO}%X}GEVijFy>(PJ<9{u&@riB7xo4;b}257qx_W(!#DYy6$2?*2a`Q|U6 zP8d-@Zq0xSP7kf_g_kOLsn>jVUt{-@NIoP6K#^7=8~*<`N?F7sIeeQM8Lsk{BQv_l z0zi6ddZ%OBXd?#b5vv}I(DeNyD3kTwbj<;%vhS(!qyu_u?CWFU+8PRu$`7P(pRcHn zwp;o|!`hHH)!^2_lghSiI_DiCn-}cU)u6X;+l$3jpL{|$X2K2p5-r#3V8*HLp#Y&G z1$^W4;>s^avd)B(O|b)T!9PTaS70sf{{qwiCS#AE8q@w&u;?)dB-6v9*VEcAV~tJ& zHl+!bOZTM6@I+uXvKH+6tnd*V!kvTnr|PU3n3XD^vWBSfS*@~Jep9LBVy>+}epq{6^DS-`(6_4l3M`k3GV!AftHpW%G3Hd?*P zz)_Vmmnz}gB!HuPVs&x{*eOj90R3+|yPYVu=ry^5pY$|VEp$JE0LxYJYy{)jz&iqr z5}sP7?=LGxaKXF=&FX&eM?3mwgf48&X0K?7P|~Zfjs+V&aE}C6!9Hb9I*IZ4kQFp4 zKtRx=_iwTgu?FyDmhnA^rer958{6u#kvb<0n(N zVAlV!tGY6pFk-+Cum#d>FGO^7-`oCez9a+ZQYc^XjSK80cVOJu+68FKzpv-^ysw)L z!3995-DL{YjuV=%6X{?9)UF!ncr6U`zCsZ{WcpllBnUnd5)4$DE;k87*w z?Z_Z$7y11=JAwA|2+Jb>IiIB&ZQ-HQ_N+aMr-gVZqpl*+_CFux z0(ZW1@^gaP;)5^cw+9qNmwvUXi9+;P4RT@f3BFILlog;G0_o#B0&JZ>4j&R5_M#m7U0V1uXTq zgbF`!FM}7ADDbin1XM-wz@|>SX$Orv|-5Hhn z7g=Bic!|JZVD|0cV&-1+B`~JOm=g#?^nYnX*Gv^#y;?hgXBral@ z-QyAEzZ32QHR6uP;`jQeO%K12N2qwoL_*$t$pl}7&6^tlA+`Hst-1NPbvO9yuHHTa zsmy>ZS-&7k<6e(t*Zq%bJEs(#kM-7(X>LEaa%Z=ybDt~J3y1fiXSx#)JI6$f$5&Axj z9&YrXG5A@GQwV`Xenrfq$d^yG38>akUsz)>;5uvlia0fBI7f_rx^k#Jgx#9jy{xlV zYf8wO<>+G6@h9HLB4zAPJiPEb5GLy>$%PI!tZ&U!4(hg_G#YtywAA?lk@8e2IuwB z!V!+T_RHzE0RJ}iX&LJAhx)p(`1)&fV)S*xUv-r;T;qI7q|>INgk^ot!%wFgg@#7oNaIv?%jlevkAD z#4wa?==Euh@gjr`Zf-`7f)H*(xcdPPv1`)n7yL)q$ZvYF%C3fy%?Kef`)HzPNZrsJiALzLJGpM>#UNQ|EQO>B=bZggw(mIk9{U4L6SA$K( z0U*OX4#AXvX~%eMgovip=dac(57ij6L)qHR=FzaKrEE^8owYlDIT=h#^FPNkE<}SaF7=foD9WYV zu36Irrj1Ut|Ey$w_@|~OHq>-#%v?Ri)ZSLAZLHa#u9n+Z#?z=)s|5uG#pR~v|JtJq9eL&3XC3sGlYtbQ zqI9XfG-oj2hi~F|MLkzev8&w`iEl=p;;89)knbYQ>vYZllTKE;LuS(n{{84J2UpIdE%5T#Kv6t4M9 zFafrHS#eG}2ru3+25hUJ*f|vg{!leH^p>+Jw|*Z&xG^38`$fL3U-%z6sMu6TO-o)$ ze6{>JUk1QR?Th#4Ej%zZdMV@yJPL!W>%jnk==`Rj|@o3dz-W6b6z|;F91#5Y$_^|E1m!0CT9cx6;hJ=sB6H!u@JYx`H6tyK za{rqtjETUsUx8tRr3q0Y0K|&pvo|`NaN;g75s#qf$i@H`w9 zXuYPous)aoaDlWRZC^kL1J^PZ6Fln$LPeR?MrshE(67*V#0!5Gc*Lo6V{!~_HvFi8H07BMZvA#ooN86CAY&SM7X4<0y2^Tk#K z^#|we8vi7EUG%PM+9V3vZ*ru4*&M12Jv>2wT#kdgy3qMU{KjEW@j-W_Keu}83suDo z4Gh>|^&X)6faFpD4W3Yp|1%K8yK~=RmKv=4z^Ev^CjMg|&VT78E&$rujtBgyfk|%w z(B_)XCEmy%8DnpRE}wH?G=o9e6#nOEk{%zBLe~`&Oxys3ba#;iK%)_9(gJ%HtnzLc zaH|5twg!p6{Fh2C1mMS24*;6hJ+&DnpqXnBS&oJpsrdk@5|lI%B5GJC&ePis)P;;PUNMd9#JRg zL$E>zkf`A5_M6qJSF78q9vSB&UEVH=U_(irCwkX^_2T)fm*LvFad4peb$76y0!5hD zY+>h@gvlXCz5gbsXp5^oCE_;AcRWI)nrG?Dbx`{tWTW=~2ioFbf>y?f(+e$a17Bw9 z>i_*8X}4H6fxk zivn#I=vN4dTu!Sk4SH@IS3lZ4{25!+oj>$MWLGr0%Ao6(VFe$ukMp!%AHqrQ+M}-1OM6*Gmr)63^cV zZC&l0hgya9yk8G+2<>SWp}p!hstBk$>dDyfn45w`aHuI56Q-NS;lP(tyMLT{({Ul5 zaeax4xUb>q%aU<7bLZ>bNOqq~mkz(t4j!d111$H*-<03&FkT0m6VI1$^5`-(MAlGo zHIS1)(po^I?3q7@Bjw$u|L-S4`Y^EY$)UOU01cNe9I}oE2oeFtqACB0 ziA1&^-W>~a-Z2)KBn+9#>%w0f{FRdY69YMJGv6*7?mN%M$)(FAh-D_E%fc-H%beQ3 zB(Mp;>$^LWpN`H;%PWCISW-M2fZ&w|06}}@X}3mriDQR0=k;l~zSqBraPUPM{*Iv^ zJ%*d7Q}WWK`~??IYImz_9Gw3ZYsbw13uE888XO@>3v-*gPsWwp`oFP-%RNtMXq4M| zz`-vR0S@H-2hlNrD#-CZXfG)!Xzs_v->7Bc#a8DVz(CmG?P^8bfBYY4>&bSUCZMAU z@;RttHBD_e#QJ}Fgq{ed-DY{^;=0-%-({m7`Ey9BMS$D5|ARmE)S;%j`sIV3E2r?& z;JZixzTAB_Ec}hCzi;6h5Ks4>H)%fhw!u>g$IMp$4=&bDEVBi7Yl1gZjA7k8M?daC zo&RA{@+r>>js`mc%{2VKlaMYBc@rI^p+-RdMfWe_MV%n$0%ftc8e$0Ye~Rd#|ItPE zS7oJie@Z%vU4C}A>?)SPTSLw@E5l?8PBVpWx~xc#^CjbCJ@o%0LnH+*u%T!Bj5;b( zj)`@A?zy{cnq*jJo-7m_qn^X!kTdq1-@{LaH0MoM4aww?2M zadRoJb(xixSN6Q(bpP&@*XBy)hRVwFbCtT2+}(lv`OsYF2DZ_1erM5EYwF#NKXJ9r z?HbA5a`@6nkx0lHN%u9QyqtvZbL}VSmnx!PDsChLgx<*W$rh|8(X%ES3HD@OZ{D3) z3=eNsW$KBC3th~IJ-XOqY>L0MJ~45;Q8^Jb4*!#Nw_4B1IsZ7lZFsonk4;Z%uBB|o zj<&@Agc_rrAtfDEdU&g*KV=hghn9*Wuo&Wy)tlB1&$*sou4)&(c!MEREO+xW%dg8= z=O##av|_m6th!6ztFfelwSYZb)810;cC)xjNKt}XeIVCe{I@73WMmC%1f}YzS%o7#d!^-aqW1MDIf0gn|r}dmaiRQb!LLJ7~ zyn87W{;1675Z2wn}TwBub+v!*eHWa zIs1E^%-_0C+grxOOC3eqI7;8@Wa{0KW=?S4abI`-r1sr6wz^ooIUH6{5k>nASrwB_ zcf(H*@-C+B^!a_UU^=bK6SN@n-Ti_vAxX)L9!3*0mC)pC#&4%2eAIs|j`|)sZ+cAQ z_S|;WV^Yu7F!5^FM21|Hp<~vaC|>7E=WScKm{NFlYM6U!nuzSIS;6hq@Gz&D%7OZp z&8588XoW^joA5T5t6jz?s?Muq< zo!C3%yo0rhq78xIoA61sJM|y`)Fk_vRXpJ;GX>+^Cs-FJV-zG15_a~RMHZu*oRU>n z1B;$))KFS}#ZKAjh9FVz;oQbVfXaX16j^Aj7jry;s3{@N4|69WRlM)Y3_M4)r zmGjDyyPazJEcBgA3(vE|F1t2*iZ5z6lTvvDRopJbZOR-fylrkuH|&4LUk(jxAXmwH za&oVq@sQ=e_&c6|GmLg0%Oj7l*SF+9kVz99lFHM1Lp{mY19#UQHcxJCm1vI}F0)d@ z*IkAg!yjGbN)-Rn(Y_UAydBygxhvSX>vZEW$cO$PX#sh!ZT0Ss{BMtbTcy2yyHo8_ zaCe*4b9>A2uzlS=Q77!$#b$#3c74M!Yh`?$G31X+fh(QtjeK`!z=(d{TeO^hZZyhO zXq26&420HaZoR0&tnXC34h=as^ZuH-i9$E38vXO5rWO*dAVtT_TjoHrYdW>tv`X#a zj#BhA*F}cxm>dHl+}t}hHxG|mq*A1AqgUmos%P$uy_OBjH=kSJa>|>9F|A{^sm#)m; zu!xz`qqf;Tceg6Cs;#dN#)`A~8~1TfGO(n@!_Em5>WI>Tzt2VKUYi{$4}{-QBf&Rg zx&J-|4S%Ea>mmtIkkjqq4cV8*JGu3_jWYBX$)hXKSmtC+qg&+t&nA*>SBAWb60Gb% zw9!9!Y@@tNWP=y{Rbf4k_hl{(l!e^HIKEW!{zTQts`?aXs)+c}S4wDSoHv`k{!~xi z(gyXHM<&>kqKGK2x*B9{H;>wA)$bC?xXbHU{hg>1euSoB2yml6qI}3CG8%LnS zfX?^;?mb?UpiRRFsr1u;$Q>HP5UY##Md!2wQ_DNN0rf@a-T{*VMqC3IE`YG!tsFAGF`_>@GyKuU z6=ucYdl@W@THuP)F-_opiC%=(`JBfK{Wy%KAL6a9vbwci^z3ZWB(uZ4{~vAsF5J*d z6h)NK1R5>u>t&t_YINF-PG&iktlOq|%klqHoLtp4H@>Os4=SQ53HOP@Lnqr{^g^c7 ztJFlB;y;Dg?!xAp%R&@xxZo4{W^AgR!*WC9S-Jaw6DEGEc7Yy?UIA&5Nd48D$#S17 znb@M{tN6)U)WsW!N5&y<(s?{$#}CaLaFG$~>ecy-R`%%?F76zh6u(;i*HLirucM&f z1QXpt5VFc(GhEm@wED;IobZ?5)lFvIAU}Wgc;@2KS=qB3%h$rpx=eKyPLA0xU~yih z7TWaLyTSH)k8f8hwH0%NnxV(jmD+v%qaMmHzE3so`lAjnSIsaqg&=2J;+k&Y>s`+a zpRY;TE5Z=vwkiH{4oZmkCZf7h`*DaA)9B$hUdp5uDM&cq@~2g7?r9oZpBKr-YdANR zs>jrYCVK5r(!$e}AC+D!h33DU)3~}GpwbNr$$zXzTwW@A`FgUL@LXECpvdR)jSy7= zdeo&{UA^=x319v*?y*XHMRaQZlU{&E*ZK-iyJ4AiF<I}Sq|w@X6}bowXOhLEE_yt>FTDD2S=pd=O1Bh9vrnP%|q zwTR-A*Ba@V2TD?qSAxGA;bdw|^_Dvs23Xle=#q+}HUTS}C8xeDv(q|>d|}=bf+x|T z)6z??4cYm7ZCDOGquwdPPRUY_HR;$DK<)SgB~VL^z2%V4oz5$v$PYV#-kx*hf7bz=w?yG+po? zX>LUqryn0G_M&^qn2C;K{Q;4nxjo4Muuu95o86v35}xiJ`i64ANP48_>ek69H1Z*O z@y5_y|>=;QqoxFas3{Q6zUSJy6fz#`=Ph;JG`g0=b59)v74{ZsfP zLG#PnKY?PyM*(UwASnO{eZEYIfi_YzCueC2da{K+N~`9jFhzm;b{f$BIJJ7|^S=7ZM>VbnG;L0uu$4cg`Nz zKiT;mnCR!=BoXpSC*IoO%PKcCf9K>|p3dPnq9w7_)+!6nHZPBPG-)JyPz?RX8~?Bp zO;Ndgq=e-s&ceyL%K%xbJ8CLOj>%Et>js*jLI#r!Jl*$tY)(Pr@79L^q=BOG+xb-x zOuP0`%2*>G1cz=!bpQSn##+K1nE#MNP0E2)oC@MdO!=FFm}wGVqs z!0Gv7qhJI^15G-MGP__KOUz_Yk-fNWkf4t#fZcAWbE5ta&XjQ$apH-A4HIV0Z zIr(98yuD2PHNpGi#s2%*ZWc}=Dl7v0?Y3rzg%|o%h$RjVprXu;oTxgA6m87XJJ0!n zWwL4oZv7{qcKO>!4`Ex$ge{Bg4>v_d$>2{`G1%E?jbnI)pW^xu!dmV%l80q^KcGGY zAhX^w-Sr&o3bg22Xu_q?BIGxE{+}*UHWB%N zxEpJ9TE!6Ke>!ZcWog9*pGr#!0n3^Nz3NY+)Uc3#ic|bRZPM&x@^|vYuwDsXzbtrK zRzOJMKdX3VBlPmvz_omL7*pzGNg|Z_A4=i zmKDn@{@RfOOuoBPBglPs6tf z*&2QL&nXM}hX=%mN-&yZC^u^WE5#@Ac#%sv)1e=R34oxCWH)Qlp8(S6pDs*onSam@ zXV0pr2TP21C5X*YA&%}F8hHA3*C56oM_2^%#x!!Qx_9l!?rBtAML}PZ53hRob)k54 z-}A05BI&-h(0n1Olg$?a{?|@OlNc41MdWOQq3C4kk$3ASoWAEo>g8_hgGXN7KIAMO ze6~aF6Yi!avD-Ty(^LdI9(oe=^UqZd$YMjTsE_o9N#xI~jacHfm?8e!%np=mhCe#utne;=-`wdk|`K`Qwq=r6vL{6b+QlLdCaL(uj4< zi8>sykVW4B{wK$?mD~W7jCrq%r5~i*f$`}rFt)Cxp1q{90`;{UA)2@5CM9P7=E(o3xsussaB{M_yDP5K6kJ+5 z@It(fQi1uT(&C5gTJy`q`%p&-nNOKw3L6=LYY)HQ5BhqN@|GQ;LQ@=dJ5CZCYb)!i z4(D%jn(r}|ewBXkT|63C*0x;k(w2hElX`u|M?^>U{}|~9eDWl?3VeO0F5fcsVONx872M?#%znmtKScEj8RHn7=Ns8xCr^>NmI#MBD6UrP1 z0Oil)v3Nuln+BWvpJR-r&wZLe*o-@S@8>AO-18J+b<7(T6!6jpPcE7VAkP%v?HY!p2Z_E7uvBsttglNMh#c$OM6v7-&ahec$#N1P?2Zir!yyM5w??{Q0U{PZ23a^DO|IHX=(bPs`(E7()iuwcc7QpaWdKi{EeOg!{O0N0+9ew@M{f^6 z3M=aK1Er!LgC^Eh8@VA5vc351FT|5kgwVE9inmk1(U49QvYjwk;EeA1~ynepv5c9*_{C~XwLd-%8 z55P0AMz63Dw`57@K~B+QHj!4IK=WV=KL_NI+ZGl&BsJG~|Ej7ECwYVB7m@6@o&7rY zxaLK#-}^iVLDjwzZeFrE<1Xx+8w;|t4S;pcwU-Y9ub-5C2eFzx!ur~~K znO%PWhi&4@d;XtX|D4Oh4umw-c7<&vkib8%BDl-fKaS-SlUO5$vI zmrPF#6DR~e(7oX0FUKz~;BqWpV5M&K{kaqp8!P$d9{h(u_J?lAU4XnYvE)z`qxl9) z4nOs?+_UDl-MH(Iy+6q++9qb^J5J(8q4!n&c!(JeW4Fm|$d<_hF4)U7RO z^5G3dc{p&Pa%&IEI4h6h(5s#KjM(SbRhPOI3(fpA$J&n>6JEC7Ej(^1oIWrPY_&yq zCGPm2?>qD+jHpgnA9Fnm0(@$8&$cY8*F4MlR=r|e9}CEk)AxfBEP^&K>QB6AX^Px| zWu-4-L#;vRHkMK*#nH-+s7dcYMw2LASoZedSMPwgO}HR@{**7PLdKCkyp40IDEpE)@MAZ54=9Qv zP!wiOL9|x%=Q1OD;mqg{lft8Ip$aF3VuPQ6;qsqur9WY%sCT|sGvIVZO=~gb?J`~7 z2G_Sru&vP(w-!vm3V8>#1Mtlp2bJE(ULzM0Kbxl{baoEa%vN^jPw26bG>Y0bOq~-B z^5g~D?k~)9;8YL~C&v}P{dR>nvYp-CR=hUu#r}(d$>m?7u~T^2$RMgT-kl+z6-`vx zqaugCA{-S-|Kw0VsQ zu2^iebBB(lkxi{yh$j&fB6zN0^1i%stPl$8=B`|00h8CoN=0%L3VWqpVZGDdS*W+- zKGXfp!9#jpP>Qhfzh-`e^3dZ#Mb$p02zzG|Wu0X)kfE|}@(Vv&pl>8m7s++=TBUOu z=0=7(v*T(e5l2g=n(A;6c?weBODKm!VzF8>qAZat&#EP4z|9_M73^14lXYzr7C&tx zGSBjG0^i z;|`WbZ;cZYqqrahn!#SVO%jRpi)G>>OpwAWI$1-)hcN4pzaasnOCWd*>6j=qx%Ly4 z>4;7IjV;q`w4-!sI^__suv+65v_)$00PI7-%t?#4O;o#Wt!o(@OvFR4k;%_gRE}F) zG5^gj0S_LX2-{^1S@Vazezq;^lEZ_6WM@JM)ZR=~H7rfcR8tSo9#a{Ob2bocOBO-D z|9G;Yh_9bjC6%GgKegbu*Yvj*keL&UY;*9bz?5qXDGw0||$4c;ds2h=)!z zmjHOoW}lHQQ})WE;x@15ey|$^20jf&`j1~I_x4J_fE8l>xrBVBh}_p02&c1e7VlUj zISaEDVN*%zIeHT%7(SJ_aO-`2Nk|v}p{pG*Hhm?>{N|%M$Mo4%h=wbyu4dcg(%n&+ zmISg*Vo%Ea6tr06VTojfqln~*1)1fj%{8Sx3Ua?9;9j|1Gaa+}_R@S|wF39Ld|K41 zk?tv*blVE%-w1TR{QL~gp=Q8&PlyL?d4PY^zn-!LpmIo-2gp7riB^HZ>z24 z1$;o15Gxxl3(`7#H)$z3Tw#x6ns8e9={Wz<+r}K@SiACvGwQ^;Uf8m)dt;eBfp+!Y z*3$@7rM>ZSB_`Kf$yfB#=+E}^E#5|SpTpBXZ||^X@TRk^3k879D597KbjbJx0Yz#{!kiGGM{Q!j+SU8~Ar zf@qNuDIA2*UtW|@xyi@hsI_Xrv0-)uY>9DJWB1>=wU#^ADFW^w7)^YS;uk+n(q

    *7v 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]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 PAmBmRIv%aGIT!gqa7qxu literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-66-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-66-1.png new file mode 100644 index 0000000000000000000000000000000000000000..7971d565f461626b3240f6daa22a54f599f7e0e9 GIT binary patch literal 80791 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 literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-67-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-67-1.png new file mode 100644 index 0000000000000000000000000000000000000000..9afa8d2b5dbe93edfc9b23ac9b6376d735109f25 GIT binary patch literal 59198 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 z z;(ND4B5^`H^7bSlFzSJ|x3%2GCQNSEu5b4Hb8)K<7QJmdwK<#tdLx`W>ye|rVXE&~ zcR}}&=&q;S9Nj~xEB5x%()GTg5ytW>gZ43J)sI~IjGD+bW-*!S%eyx?QXp)%GyMpX zec3qSB$c{u_|NaFSq`aPj2~oUVqz{gxFrG*FWVZ>nw-I4+?JVyo`u$NqUBLMBAR{;Smoh=`Fo~Z}&pIiWV#-WxeHbVX@xMra-Cmu&{q9aS$^=LYB7((qS-Bxa@%e) z{8U8`TSCbMX$a41VSu|2bnLGs&<$18rZqiwo^RX*BYCp4)^)V0@^VFN= zOIshk-7MU4$k9t4XcXyD;cr_1@=)){ZDl%DWMNObU+Vs@cl@!wQ4W4mDDM`RE{-Ys z{GIubUv|B#bRGUjdRs#EA1ldRYxRT~Uu0-V;a-(}H80fF)f~{}`(&te73>b|a=FL- zHcH{El(^+jN2}09@ZZ;`*FXmc!g-6k2Xv8M{?Bn0EXCfTyR0k!)K<&HITv__r9Ixv zr{Nd0rJX-WI77Chm&%gp`SO^Q+NgBR@tjZka%21ig~=DQHgZC*F1rrJo4AK))H6A~A&FR?#O(g&u@TVt0_TB?aA=`-Txe_$$f1JbH zsI2(E&*9O~&@ui>9toozy7}fw#oi13bLw%M@_B;QZgbd_$PPiHqc53hYupP%{!C}@ zzdk4E7$UqC!O_uWXXEUBaMi|;)XKS!Zrux0`cRLdm@K$TO7=F=u*BaXHU}$Kn^$POM;b#&`GumHH^sIZwP}=l3q^PR*4vacmQ-{WZlv1=kSK<^0m%?DEd2*~ zUXjA%1lBzTnl3oam!XkVg`5uB-?n)4=)IiRz{2Ji%dUsuOwZGslaO?>Ofcrtnx12I z++E@bD+w+L8F6-*+t8n3#p9?D7e=AF)NZo3D;(ujpK(+_>mwV}VQJ7RL@w*Ou^-7F z6)$eoU3M*DoA$z|_NUFxK6i7g`d@5a$@_fsE8{A7bdm5%my zbu~3CxGt=oe-zy-NQ&$72e?N*KO=LxL2opm)@Ga1+wMGETw#Afp|IRFpM144IJgd- z!mm`byo5f#c;M&b=6Q=hH0(=^Ax8?EYTolN@gCG2(K`)iL^aS+`EV8TD*jPZ4aAA>QHt#1p%av005iNf+im6x&a1^d6Doc1Ria4YOeCDgh(3>v{}Nwt z48R>MW%w0o_G`Yf0+CAqxpSDp1E z&A>;OOA8YW5^H@&CTexaH7t74Og4C(Yy#s7O|}LX|s|_akKYqEeo8-PoM`KRlg-d)(a@?Y|S-X>2yOZ8kO=+i7e& zjn&w8nxsKv+qUh7H}CyD_x=Yn^PJh|?6p5@Z8&*S<&QYuyMj;C%g2$V;7ku8(*%$P z=xLr2WTKAFE@cm|{u4bV87v}K`{g;sOy1A@vek8md?9TP7+TXgiYL?V%K85Kt#!0# zkz0}gyCj5l1W^KSZ@b=*VNWS?+j?_emB{~<023XBMDvT$(efckajQH|$bm-;la04y z?bKfX4II>4L$+G+cC-wa4mw&vxX0>MyeZXEmLANVp%gNPL;-VY>lfqbu{0m_{dI;S z;xCB%91GKQo8fhk#eXlK`DIKOnRPMeL}KsnCk9~m=lYYrn7S-wWe^;W(0R(bwCgkZl6qd#}Q z(tUnSpZ`mRmbtc(nb8C>tus;YZLW#zqy)GZ6Ft0xJ*=!EqOaY3oJ0{$eRd$@>DJi4uBF>uVj4c!eY?S$tYURMkG?EHs#~#i0HhDFZee zf3#kl|8tJFrAJ@?Wt)Nw#WnHRvA^OpW8Y0})TPlcfS-6?WnF@MwtG-T+#go$!{Yvm zGK3&fh|Bdz#iBlIjIL9bV>ZL4G`+Vrt-wH zvmrEhA@!Q@rC_CCR4j zw`VM80X}y@ZnXhPh$u8M)*FrhZpYgQo1Q8~jZhF>HjUMSbzvDtFL+ zg%?pwVEv)LCC_&tgn+RpZ&PS@9i7{}Yx^T9b;pb6YUk(W+f~HY!N6s^oBTd+{P@OP($8bdQ%)#XI${rKi#8wGpT3(hC>B_8^dQ zdHwG@&%oY$?7&ce(7jCToq$umvCgoy0lrT(GEJ7uQ1+PS3EF`4_NO527ZtVndcX-d zT=!#H`&DZ>qm|r8m-)j^g+P*&qeF|CKvIV_Ps^=lQe6x=a!D7>(K8<4bG^omA2EcH zrvv^Hatv)xIn_%~6VQ=VrST4C>SVhO!#@@!U(kZn(1`Ha0Cs^1d< z+U(+c$;^CQb%eu~sx*(1>UWLP%bA_6iG@vhEj-FFvt^Mf&78#1=yBHah?jIyXDwH` z7=O55j3R^1{`_R#E0YT0a6q}+bcFE+RMIA|(Ot(64UydyQwmn|yV<6QNBXmLpY1Dz zq3;x*!6}r8tlQK~KT3!I;$ShZZ;5p#6fdva)|?FQ3KQF_Mm$MF2{%2n7Q-wel&Ibb zpVI*2d}0V7hUC(f6xG;AB-vc!TUPVrzovfW(Q~Vpw^`_}Sd_<@QRGQFo#aI=Dku_S zX%yVBsAO(J1&LlB2FN?kM3I67UwXnWPqU`xBFUs`?hPma1c6+WE!ERiJ)SEwbvt76 zX2YZo5YxsO=38A_d6Kg}yzxW0aM{rp%kMLb4(t%Hc4}LAb+NxF{@9(VOT+>i#^Twxl)Xec} zlBB4A=)doOL=8k8DPmTFQG%HUKf}Q0EABpezN+7mitXr25F7U(00AK5N6eo;Nn9r< zH1`5G7OjC?3(7e=hhLlTvXFN11}t%rrwUAL_JOLLbT8(mR~`ztLW0Pbk<&@-e{2)$ zK2w{n%CkK;IyM3=&EbOY z*)Fpm!j!WDH!IWcC7u$GXO~Y=?e#yQEH)q_9)>w&`kgLpekf^abvhf|H~*>`EZI<- z2wku3*9f{;xgdaFK1-^!8-Fbv*6VoNuj%@i9VA)V0Raek90|CNM$IhPu5ipR&w~IM z)zHB)AgRUPdQ{-{@#-TDuR#>W8bkpviY~t=Z17!knEy*=%V@<*aj*{|9w-zQz>JFc zYbeJp=g&ZgU&rSq=gg_nUkcj<_v3!^8|#$gL2$D(#I@mRWd!ly2A|`g;ZAt#@%CR- z*_Ei6avcNp7F*Z3-I;%Kh0H0`!j*pwS*+L21D{%pQ*_$B{H9W5)6f#9{=lwegXN>S zUNWpPg=&dbUrl*%HY+5dMZy8nYPOGe^(B3t)0-E1$7jSDBrop7WW6iO1BDxeUOI3% z?wU1PdlW|AUlphlHpFApO`cuQ=dZIP06reJ8wtMarj!Nv2ZEK9t~oBVEr$kw%i-Ob z=AD6F;!zW}$aY@L$}ViU9~l*B2vr~c(`HBR6Ru9>^;ze`j~?eTl&cUV1v^w>1s;U? zIa{q%MFyMUIyyIkV5OF+mw2Z7<$3bN`VTM%g+fh!`r1v8h)Bc1HiR)0(a7?gozfH_ z|M1o|hVjQp6bmo?P6vm3WZcxpzuJ#w$q^Yiqf5_hw+n)+HekQJU=O5FJBrlC%G3?B zlm#B@;!s8OJ&%i2)=>r^zJs}tkU&ho{i;4Mtl~id`fz0)Uh!A5?`j5zdgSLEA+}k< zN+qARs>Nu8e?1O^8~7YdaemxAn-(ieHpSe)08#@Ul-dvXtI2{|(FR|v2K}-UNwgLw z1a@#e>l*Ev=CQFcite52A#EJSB)3!IXe4LO;ZgzHUyYc(*q7UQodJU{AYOJ=2Tb^IM znYTRNNwAR&q`Cec$7I5UUoMsGhXcfBsV=*Fg(49$IkL z=p`iv8y>csdy;}}M}M(mTwfZt!$BAj`wn(D9Mmf;Mk)kTZ;fQ+HJXfoa2EP^dRNP1 z&WAWJ8hv28H%uYTyx?W+G~PMqFTZzvD+{b!|1WGPR?IH{gtq*Xq+Qp(JbOa+>W|Mn=0 z23q2?iivDbEL&c6V?-N@*kSRy7icEsPWbx#YXt?wf{j#2N%;0u5Ei$g^twtFRReuO zK#bl*b4@;r+$$-99SAU?Res3}-l$OC*&U796kKxMybbH(FS|wM%5I{6F}aDGIwLA@ zIL(_g|3OE6O6y~1#_uj5d5eXK7jOgD4b*ns)~pw_$3E~cbG(*g^7eFbr)Y97@QB9F z2Z`!E+S@$`Jm}!WafOdjU=SH+dJ|(qJqq828&}-64KQujB8(weCcp*nFdzecg038j zXsvG!5I|b@Ku1{Tns-k{-x9R~Uoi5S8e!YwcVlRX*mdOf8lgLwyJvTG$=N{#1lyEn z73@HDY+h06n$pj~oF~sgxd~G-{AclEQ~&7ysVMaupf(NKSjG_!f4{m}wezz~CLSyn z8@@T5pZu(eENU;HoUSf@YBmD!> zVz8Iw)V;2?{YWVOff(i5Qp4-AAcNDW5cyQJatGN0!B;+8j|OPSuGcVsW?4dO+4(jffaK zkh?@CP97Hm5PM<+LjB5ack+M^5a~GNr79ivJM295*6J29D1wZU^G$G8Xt{#pFv0^B zBor}nI-s5MEs0tR5=a`)Km1j!ZRt2wiVW@(Hu!w>WVa3kFZN%eyU9B`=+zS<|5&}7{ zNM!ZXTy!}%WJv9sX>DBidQvYU4leOATi!rP_6!J(;C+u9%g=oOIc{N`v!x{X-FDEA zJ)Y}qQ35lhn}k-;Z-ptIs-(?yycfrp$k(_X!-JaRgSjL9lKBen>{?I{j3D^pQ zWi-|=8FF!AUIg_Sj%ndb#ZcwG&RjylN6rt-WLmQ}QB(`(8z0HWs$rrw>x4HRnMU*u zS4i64YPe#N@A%LZm*K8eF{w3EQONL z#xWQ>bLVnnTOa&~4U?+7eW7OfDcG*7YKWPRt9w7X_J6td9B7rc5 z>sc*P4Rr8Cn;#*Ec-3#C&5vo||8jl&2XnKOjD9+g_wo^msZ<9%O@+a6kPlUZkp zcaY=pR{ysQ_7f$y3|ytO+x)}`uIPIw#bp+mQXw|Dhcv?1>8K!k&%++tt! zW2M?I1x0{X>ExdkG9_LM`$m=oYXtCNYUG$&DuVz8(vN$vvZUbtH0 zzNg*Ap)Lm#8}If6_Ah(&u2hku{_&}qzFT-mt4kX#i1k6lL|nAF>O6P{-zCK33B7bn z_6o)B&6qYaYHKR|QIr4^y!_C}f=RY_Hy=O7xJo*^*zXAF^XV2RSHib$uMk7h7E2t> zqe$l`5-@*s3#}>d^cUr*Vo81=^sq=;=KeZx-sIbm$)rGOBeX(aU>vMRpZ|lYBGQE; z=&tBwF=SJ){@{KyA{xURy=6KRl$kV0=%TwQ1#SqLK;ZDms^J>_$L_>hJnUdBFT1XB zB?}||o}<05z=yyO$;^C4$D|iKL;qEN1RiMvL@+5TFoo7iGJN6gIHf@U5 zzqS_8`w`7_Fv-&wNYG58;HoBm_Vy!=%uDXfxNRQ{G#hz$jZVGLhI7ADGyZ)gJsMu2 z@YD73vtP3MQfzY{5#OZK*k0)j0EXoAJNo*0Q6~}U{(ygQ`ODKIti_ih<9mbz2tYpl z41OB>O+7iH;k|QrP4Ha6%V!i}5H)zqt3}u6x9!t#zdaaNXGYxyG-oj2-=pP5EQ!qp zI?2c`we$gdZeDIK>HjPF;Qd@(h1G^E%&i9w`P{_TR-0#%7+Iv*Y)if0plze{hVQmtn-n~CHUu;m7Tlsa~RjN{VG@L&+inbn_^q&22uY9R6qIghv5pb`%Yw zBPSwI01Rh2@XtyQ_g|%-SpJ&d`9Qz-*d@_uHgraY3MPMRl4_=!s#h@6`;`HaR$zhr z<38>wO+Rho9#aEznhF+2ea$#${t%8V7l!FXrkqa1Hkvn%C(y)ko#18S<$8Nx+xPom zQA}Z+wP2R)VG@c1AMM)8y0vv?yqcRGnPaA9VXMAihRvqq&W~CBp0Y12?~%}fFC+Bn z0End!C-CTsQbhpdWet>7ac=Z&dk4E$zo$zvj9wBn+F zJt6@!K2u%bXjM}!{BC&s@!UmC`K*L9kPB{z>bH^ezQ7TSxdD=>0vHglIzJdDDPaN$ z^kMToyo`OcJ6~mIgC?D0D8PO$M!lbJ&*XgEPbp+CJ&L~s{FgR0buF3q&v*SL23wx2 z`#Xf?h9@`qhGg}<6qeDSNtZ?8@HRhAoFiuq|J?#$>dTX^;78{|w;z`-o*GRj;=vt7 zroIx7+ho8aAFZ=t@>QP4*-YpK>HNvPeWs1nzUNN#I|ACA9&aR(itr=&w7j4W)Nz2X@-L+KoVx0 z;)|l5eCPxb0tHYjxhwU9MBC$!!*)MK|6rXoZkcCKkUGS@@n!aHD=)yqLZ)7Q9rd(G;rD>~s~o1q=NZ#d=GL>mFhQ zd<}f0ANbf6^F;h>dob+*P45QHRi?AXImClegJ>b0^*?qGR_=0QIkO@08b_NDlwlnQ zk6eQn?;G(c2f}s|k?M(WKo zbzEvVjBmD?9=#16uz`00E|=SckO%m`TLqJ30!mzTUeT|;8Qhctp}AY%?9Q-=^EKip zLZ_(W*aWc%))m#;Uj8(+Z~8BH^f%-^J&;ie2$nF!Q7%~#3NG5EPVPvTXa%}?M6;T3MxNGYV59EHgHXOtah%04i6CKOH2)A2iyalF>QzNgzZ#!(Q z;B|+0Oc7|3IqTdvyFQ!tBqWR!flOuM1@7DB~RkZbkAYxMb#Y{7QU3=lfAr4zl z3C4z{se~8oWU<+*dzmk}L;7{DQ0GJ>a6Pfl<)*2zNgXFjRGOe04>XpG97&(M8$!pX zY{i8;mX533vAD^U&?Vf%rrwTAVz11d29` zV;o?GrY+P%uOF>1ORK>0SAEfO7$=|Bvu-bYq^PG5Omx_tUkcNySK>IK8FbMbe)_YU`g7WV@MgYPKJ|9d{mQSSy)nOu^ zI~^d2Y{`!srS2-wl_H$S`{1B0*)0q?&z=QgV6qlIk--Tq7KihdiT07;`Pc+wQSO@b z(3PO@L~bOppM~^Q57%4bj95OHvS=J*`pgi>9UjLKgWnCQ?mD3ay_zml`6EgqKh5K_ zcGM)n-6cE+HrQ3aYfZJva)gCLvDDa6|1he>3#6Q0MI;Jv+q@=PHNIH1BDX9^4v-iLE(?mMi0Ed6JO(@ zGa$Xfh^sd`E`zG_gnjGIQ6MHFk_spyxa_!yeLuAMa*>HRlEZd&xpGSbzq8d~&AP10 zd7Cl8L8IrwM^uE-B^;poD_yL0o$(w75FDyY_X9$znPQnJo~!{jqVf%`kOia;B&M#8 z4F(C%EXDTR$hn!^D^3L{vZiT!=3o?A9+tU?mi<%y+>K=Tj-4D~krUjw)h$Szroir^ z;SLPQDc3o1S2g3J@26D1*uKqn_gze=yf~2hBlgerNnMVWUkZGHXjf2im(VE3eVh+? zbzKme95)zHSTahhPaxbUu!9DScW3C!-V+7=eP8msy;B*T+=t(<)cSj5Jb6i_NIdav!zdJn9R|LG znW&2wh)XIF`Ut(>676li%LqM3D~X6RAhr(Ph}47ER{Bxm3(pU%ah0l`Qv7s7yjZpH zWr6!5*WeqG8=G(B)@!WWVJ+PATxEg^6n-+ih$-c~MpD69%;+3dWHz*X>2#n#f6-@% zv3m=cXp9)ba$B^YTNYjVOQNuH-FDzHKI*j1b93xT%Lw%yxLX~882gK+AtU0`2{8r9 zhF!u5dD?_X$Ft=9M^hUXpUz1t*~i8Y)H7Ly*aoYTz0$BY_AehbyH)ZMzFD1|hKmYY zOPkwLJc&xoKlk6=s${lrYO{?j6Ld8_u=| z-4GT~1rAK0wymXl4{$JI%SIGHM)kc?lU*<2f|NNPLwf=9$^FatfPM-`+@I@9Ain=8 ziyztmo5Ls)RaV6uPgD8ptwR5La(gC%89SgVp=;dIpmPDsP)}3n`fK9J??2wr5@0^a$2_&>D-wUPAoT<^j(*W3}*&vhbpe`qoQtHYX$$D3C-g=*@G7;NURtqI9C5B^Rn|E-z$c9Ztm9Eu5Tl?%IG@3+?( z+q}{wGBWRr>A?_h;r*c#j>P*}*8z@BzeVKd?MI@}Ea;H?Lp*$)3CNSl_F-WokkF zn&$rN`4*d!Y%S=C(ElKG<6l_phR3{8_MnZ(R4_R{tbOW4#P4+XaM4+VKg-V_iVTht z&H<*>VK2%pt2=Y~RIq}(<@%LoA1czXZ}@g;uc`*|n3+ogb)X?-Kf zoq`!Na-Br#%O6bD3{4L@lM!W4bmhpA_EVM%k7WD}r7ru`EPjP~J`P2`v(6+XyV!F& z2>tL_N{o5dAIUn%c+Q2M5-B=qP?SQYhFgts*~dy^Jhl@_-1YB>X3#{-x9M1M-jg(P z(s2h8>KS43{sb0rhQ6KM@lqEuAc0G~yq)>i z(S9(e`EnTo&;5QdG!nCZYFupMEoAH;QiT1{X6z|scpnt+SkGStt$5l={F1@#{SlKH8df{LNxCcu~VM_R$r2Tk|n$8b}{2>U&snL zto9`PWp&+o;nXFM&5po0{W0D8SFF!ZNfe>gObQc_>s>~6b-b`hXV8c_JQFg!vNYBH znz3ENLCLXdiUi1nsF@?`mAw(DbDi{lZa>gv%+D2T0D%Ar_r;OGbt`J<{vDC?Fzg_o zuHcR?e=BTVE=xpbCGNn@4uhmRGY9ud3a0AMg%n&yq9|0uZW{q7ZT#B9A8+ zpSB7o1oSjAv1(o`m`4b4Q%E3`90!1b`YVU9k1ofGIR@5EK_5pauhi@iYuU8NWXXDu zE3s(%jlFDj21i$csDX5cnfp5vwhGwi?H4OwS6=nbJ3wMA2&S6e=^%QV=$xM;-u?9x zOE96no~9%gQI*$aD*CQMr_y4JdF+i}Zv(Zj7|*YgTM@SCygTjjCo4}ZD@?cHLvl2s zNWv%F#m(xco!&7G6F?_}1r9*hGU*l8*qki0Y+;3|+xqPHJU&boGD1JDj{Qad;UNV& zgb9egSJE+#$*dz)B7`qX;Q%+vkKKTKFr^rceT%5$fVES)pXPYfmN;*S!4^?9L8H2aw0x;P9AX~ z*x8r~C|9tus|BZ)8#}EP+0m_}l{x=Lh>gBX7I)y!7Wz&v;}x&ZdH;?#pgI3iYCrOk1r>pYtOKj{$G{o(J4Yx^?>; z*BbN{$q6pumm=ka=b|C|Qv=y++1qx-TIkC_**Gjsq@g(-XTa{e{c=WpxwS(B`4W!i z$LR>wWvMsY@VLue#1CQIubO>A2PUK-8v$J(`&4RJ?23F-vjYp=UnstQ2Da(=Qo*c) zv=U|%8@q0n z!Z6lO02cuqP{NpJ0(Tjzya<^iMoPC&7%4*@NAzVP;p0aWPiqM~YZ`7g<6k+_A%SEh zD2Mxg;p5Zfvj6+I*2$vAvWUr~kA-z-3-`pkU-MM#TY>GfXHc5T@J;=h7N|*Aak50a zm}r+N4OPvXF7y766=2bce6@w57?`v>HkstD@i`7iqIuO&pnDQBAehdN#V%lo3yN(A z0a;v?-<>*^ zfVhr~M2^dp<{>Jy-k=f{T&iFduabVUQ1%_D6k55s$F)6JeebLCa5>=2&}oSt;F0o) z&a61+;kcQZ5=Dfz3n2^mP*cRIgO+9^Dt#f*{@ZtUg99CYS*o2zU5(y*iCs?lgG336 z7;t-Z`FI{OXrv$3Pw%8h9Sg{}c=!1A+C_-ydl@-!T3XQ?=0%9Jb7-w0bK2mT=q5r| zv7a&|%_Jf`rpKb%Z|)9AL37<+c!<>Q_jk8$nuDXlW~zHoB{0(!+;K$rV9NhJHA<&= zOSpe_EG!KZlCeT%{#qwsOf}_cHOB$!*610QbXy-qZ_w&3flc zy<}E{EN*M(kgvSjjA>-9a#QRwN$2oGD1^G zs$oBn^ZYz62?}6>)a5bw)9vHz7{^w$#=n;owK7keMTHS9Zb`n8EdpT_Cz_gMT$4%d zoaP)=OX*XK?A-tR{BMcR60E*ujb{B?mi4__be&FAEEENJl|9UwY@Y1sbhPZZ2#-za z#{q*NXhIz3*d|703KXH1KF45S6n(oSI2YVpcs;$|Gc=zHLh@yo>I*@47MZBiN%zL!`%MXBlM7$X(Jcij zRAM?I@U&T6D=y{`%W=FNlVi!kRo>Pbi#5ITA%$H??r%y#|Q z;81Aye!hR%howzNB4y&l1No~(%v`eTj-$TFmF$o zJF6i2|NZSZdS7mgg#sc6E`(<0G_UHXRh(W)bKl}2-7grbdc;65A3I`ly0c8MX)4FM z?_;)WW1tLsAbuPaU59Ix;!6cTQLEn}xAl%Ggkp4sAnID_c~3_N(tU~@Px|;!IfD?d z=XOEfsFN-uDfK8OsJqggoRn@$s*uBX9`&Lf`d^KGbtP&z36rTiGBPre-DXxs@2O9S1n(E?t_XWn^?zTI=*A=P~LkWgf@sQ45` z%|ds{Rqw2(Q!o51ySy)R&Qe1}WaPycz4pjW_K&Ko4MGY=&HDwEv-!<8hEnz1gsrRJ zdCD}`7M$Qatfw=*ItPz?+PKFZ^^pd|8V~rz!Z@;Jv3fa)hIMAYFFWO)=ii!1vJhU>;9A9y$mD!IWdB;;%bv88=v$ zARX3&Pn((A{za@#(S}H-0W26VA1W3S{*}c@f8)eEg{_1V@m-uXhgvJ#4L}pZu}oX) zf+NSOiAnV-v-M5KKf-RNK*?A%a2l`s{3iXevzWBo{wE#PrPoHp4*zCcQ}x|jb-auo z6wIDP)}IlGC*~nzG(sXK5G3;c@56vC)gN^R5(xtIGc`{2^h*WAQ^z*4xx3HZvve<< z%Ge2F<&|K+8G)WYHms5h{Ee0GyD)E(Tx3ujkdGYe!JK5@FCPk8OOH(iI zp9luB1e-R$+uLGWe=Q+#h|;7;E5AoKBz&f@vs$*tkbLXVe<5bJ2gr{-rs*aoEG1aE z5y_;n#DVQRK$Zmd%oae14`#LY?5^SS)1<#(p5Z%F=0DZhy2~sJKN|~(Kbq-N$s_d% z{7bGmtey2<$MX+ZD+Ha-F++#GZCf3@?QM1B)9sVCUhWIq)^Qu~8Oc#)%Qtv=Q5fss zaR6#EgrYVr;J$!zCiV@i%hZThis9$mtRC5{_~cl8K3#X8XNX+#2leL;=c0oq=SC9V z06^k)W@7N%Ta8{VPuejRs80;rr(pH0zq7B`J8F$ zgMrJo117-7an-vp@~vS1+dZEix8eah+TiT!@#AgCjy=Dc_c|-ZCdeP5MBG-i_chQ) zU5U_3ly-OGtMRWWV#1dr7FY--IIFL@!L z#p7Rur-J-$m7`v0m5nHSDZehhi71#P+JN^ylIN6H``H- z29k9^xFo)X&Reko2ZZ?XX6pT~cK0hCdkxyu!cf0j36(4C8we5LKgmpDS5t{Wp>f5E z%wL_{tP8t*DQ)V-&W*YhKUnn}a-pHFaNTd!_O`AI-H#Y&g`nhkV@qxYHU$p;NCW281xs5c|tIQMh6Y1wcFj#9hyz?f9%dw#F)y z2n9u;Js=SCFFoH`!j_1vM)G0G{tGr?=37z@RFGu zWwH~~*SjfM#f+2hp%@UzrfL(|za;MMw1`+3KpD9N?(-2_kXs37>91q|BWy54ZHinK znlU%ZxX1q~=|SLZGsN#FkG=@xzj2QeKt}=~l;2LCa_EpEkB#>tPoI4?NV7h`nu1-! z7zQqB2=imPxpax*M{4P-I2r4KY1Eh%tOFVisXz112?B3_|M5=$u~7(_q*XJRki`4L zK4Pki+NS&$KCzk!#`CTV{-T$6zDb_C2m7B^yq5{8!;7(uOsPQ{lp{c=NK?uu3iugD zF`r_Biu$<`m}o(6no{M5n2f!qzTccfvuqiSMVxkX^Zl!>R~2?7v@Jtk@f?Ndk{o2ElTdyyAYlk$JRM-@Iy!x7OaF+ImuOM! zLD%s%5SpBdpk|wCO8(=T$cv!$+klJe3`V?*wFT;0{TVRiWGY_H5F>dud7Y&R2~@^$ zJ5O^@$#Kci>e~)blOf@&9~dpH|I_-{++n8|f%cnNo13Z$41fYV<@j|!3!mwyyNzb% z|J-fB@a#!WUXz+lA{43GDZ_#<;bXTXc&~eR-OOI*|6CXKNDfxiv7L_@sI+lduZKJ}nLm>h@+Tk`V6ui>!8br1N5z-HLV?B4k8Q+yMJCg(H|aAe z<5X6LLMH$dj6eaU$pCpd#e+)OW05e;7x$7IB0z_IoZAo0^b`W%1RMmN)c!}M$Rxybn4@&-swEj#K} zm>{5qqvR8p6m$Cj1f#GYOVi5O0Dz`zWSam+H`PCzbltl%ewM3G7y5syc%Ivf2vWW` ztlwMc^XzaG&*h%~O8kp(@OOl zI;LJ(^`F;nQ8#q2HyrS##D)V%(H=E*G(;-E=2}|`c<4Ad!B^r zdYY~-9$+y(?d~8+Qe=q7n_c9Hl0^ZZWE%GAZaB8@8=qC(Ro$M{E1 z3`Ge0baR^N`D(?ugY?0Xl+Cwqx^kRiQ>X9@6VgIyX)s+fPlFXP zN-b8~Z_epsS!SKQ)Vb?I?xb|gu0EpiH_EU zD&|M`q|yqqg*rp%{jj z!4@(=(M?-W%$?aA?aVyJY~=P8(^f9jMbW2`eyx!nYJ-&yDJd|d2D1<5wh;H}&#^KN&kKcpiUr4nr z^cfo<4aNXacHI)o5T%_ipTl+NUpISTNe9!JZ;FrI5?@$J>lodUUJNi4&xb%U6ao~b zWv?7nG@&Mzz20 zRM*hqy)SVF)gV!1X6>31Kc&aE)^s^3MV!lp8PL0S2FTvfVW zJ2`C9&RVPdx^GT76m0rHREccs6%>7WW zs&r+GsuY_A;gCZ7=3dT!yq~wK>c6Y1+x0jcgaAQ^--R@L6bIQLnN-qG3q|19Mlkis z%pR=@7!OYJwnN7_Sn>%MWAd(h(gzC1;#6i7ILm5$Pc~DEyWWlfb+?waVnpqwkvZAZhP9F&j zt{Av#7^xF=9}S4o3Qnu}+1?rrO$yF?VEQi%(tIg40~11le)VQW2~_Sk;4CaPo03Mf zl^@n666$;IYPX|LSDF%Jh&10Qg!yq#$o=+m(&zAVB(+UhJFpA1-VWuo|Lec`0@ADy z7Fq*sQ6>BrMBfI6hdO5DUrYWG=U?n)RVbQO>poYBtaZ6eY^byHRA&gT@Spl+q!xmm z%r-!qMWQPp>yWBYerA;#>g>&Ko@Dh#<-BUPw8$6!K=;5elj|B+2ux3mNVB>zElZem z(exb07l{iFBqz>ZybXc(It1&sJ;f^1MG3N<5`oa0*U2P{U9$DkkYsW@e=dI5i5@b} z&DM+Ef^BHn7Oft2O*)Xi>iLP&USZ@alIE}PdA@bHfb={MM+0{m{(4H~{kR%V?ftV+ z43V(QYqCvd7^Bu@P@WTh)>yXN4n^3Ub4+uU$9OCO6s?@aaK~E+PZ)0(78FhSoQ?Fk z8?-HYZuTDL4}_tP6wW~^7+2~Xw+!Ry6A0*s%P9fQ)2z>-n(U>S{HU8kOfpoieK*q4+xER z-_mXq#KsI=)xw~EyG_(jVqj4I2MaUxJ-I+s{Z=1!69k~Ti091uW>7w!i~U%q_qjzS zmcsy&c4r?d^=7Sjanlpw{Scr3?Ia8PdX5`Z#nvUXAVA(Ksi1s6LO<{2L)SZCbYUhL8)|a-X*GFjKiM zedm%GqKMNFxF_nhW++}28kqVsfl3NEj0UK&7ET4-df6K+m|e_7Q}DeW`GhL8cn_fd z?sPncem;4bJ{{9qZE0DBt^9O|G(N@8MW$aqC@oy&iQ1R$MjdvC0HAuNZXUx+5^|o>qdCLEZgN~9*Fga?kuS6EQ=CLJzk>z$x5XFO481?1( zt}g4{@6G1BO@|ksu%6Xdz+LtN*kb+nDm6)$I$^YyZ>v~FkM|Be}K|0;| z^gT0n^l&f4QDDASveOW*J8E2&KAsj2J5@hAt}tz(_nQ+Rn9E+D>cn-TO6as~4u1ED z$?-oW1Eo$~STGa${_l4Dx*e04A#Y(b?z!apS!Lm;qo=TTKZ=srt0?ah^Og{t+jhf-jg!W<^`7VRUB7q! zJ8Ndm+4sIN8`s_!x}*K>8IAe$q3!22T5E)5J)IU2(nD=r%G0I^xL~)_e!~>byT$eZ zm-Ozl(iSQy%<5%z$V^)+4|kcfcJAaK$y)V%Prk=my!Q3V?yOgSU0&YZH>K2Ey5Rma z?*CHxO+5%dCPIRVwWSKnO(K1xttkajvG)Q=e+zp`S&@>}OEt4ZIDO{{2ib)#Wi-oH zmV^s!Maqdgg2O4lYJEba!>>VwI1^{sIDNXrm(ZMHdmv{3WR}5nQLvfnvu9jrp_8_= z9@&j_E`8=-Gy|<`m9rmYJY=~(TsLabPfp~FOog5?G}JiKzkj4clqCqWDY4jw%p+?C zQywk7SH6<9{~Cv==2va^cCUG4?L`KZeTNW`w+Hze*Vjg0N%h@bjuE-iKKCfMTavO# zPyTsX$c&k8pZ2fICWz1-0I)mC{fO5df`slzzP>EI?k?1TP5IYpweKkShqsO7EY<0J z<>&)(wrhC~JyG1N_b+mp?xOtUg2&w-(C_Ivd8K&4ts0u7&qJu!P-^Dgl+cilIS1S1 z%wM-~qrnIG>w<*wKZEq7RKCL;n33(Whw)&h8LuPO8k!^;{p^(+BNtIS9HOB(KI&Ma z%p(Ls;9BjjBA+cco)0=oiZ8||+md2QCLM>Q`(c4reBRU2O6`woTm5Fe*yX|c7_}W$ zG58rG@FNs*9gA*0Vq#_LZCAmm`l-+@p#s z19cY7WXkebzGJuQ*eUrQY(y7q#jTykCXt*MbbvdOrlU*{R}9~qgDk~6@AGe`?_0?< zo70{Yuz8~Ud>T!tLRzZGT)pcng`a2b@Bb3&HvlJ8b*ne|C|J7t6ESD*2xicZ9)LVb z3^M)o^GLo-OozEgA#;Hinbfr)eUL{{-K@@jX&m~wHDa2>wh)oe24}FN|3j>TwUu={PjdhBb||QR;#q|RhH%A? zUxD54^=u?tjVY}ORbYS4*-n_|@i><2po(sEg?2x$BKmT58gTqp<&=Ap)#z4*9XDc| zk&ATITm3fCQRYn0$8Z&uX`O+6uOg4&Ie>2Betc{8tECq|%!!L}q|5P*D0GnBrYmdt zMRaxREc6jUk~v)kG{h`Mu+^}WNkum52sFB%htWQ!kX*(zskHt0mLu}${HuDs{0G@A z#@dN9f~PH9<8rXhmn{l#yzl9#d0$bgb@@{8cT?jiU}PxGfBg83)Oum?KHnHCpeMkX zzADd8bW~l4Wa-2+9;4B=#mG&Kd&Ih9J&Ju`@Ry{~s;m#`24O;%5IYLGcD!*F_2351 z`e+-%x4F6)*Gq;Z{pXV+% zu{`r7ewkl~pP`p!J-*q|b1mWCVAvm~28CQt)t^GGjT`5$8jlh~kBCntzo=17oecX! zjHzRzh^Nthh#V&Qpu_qYnDstTH868?_e2!8;{_GHqmQgFtNIHF;R24t$Y0u?4z+ z_9(!DxHbNo{g^2qnvsX_`Ik!^V92Pb^m~B_QC#T15gR(t@a>5fx}!J<#z#hke;CSj z(aoG8md4NbhJyOjzbIVcgpzTR=tK=TQe*b{33X8Aq9&pn%3jW>{L4ul{AUpsSN>(x zQH7@r#Iu9`pU3F&T@dj8-iIl7{KYwtYL;r4bIM2|+p&Ww9A4?MIz=qhL8;p(@4%NI zLDVSuRdqD0hjho~mGz@}kcVpXcu5|5S2hUL+G2>Y^gG3VfGV*pdS9Af9aEa4m$G^q z=O`ClD*qgd%o^=;cmhAU$1Artg^(%8TpiMxF1j=k?j-x-;^o?gIFe>jSZmM$54~F* zMyY!dWcMd@k`L2`97QAi}_A2$=>4^CP1l{cdMd>vvm2 zItxzpeDKN#?j`8yJtMrML?{I4k+hsT96H1imv2>1haYB)IEi6!vy@Pfd#p1{Q-+K< z(JZjYd9Hh)qH>V5(V?KRhcNGOCjWN}aYP4^&|&%Lw6p^gaRe6uJx>817Ij__Bs27` zNgyohK!E_L4H`&apaRW~0bXa^X#BiC2`U?q|L;w|iw11+aHFXuxTd}gFyWMfZYHvS z3~V6(|9>wf9P)K(2OQ!^I`n_Sa1n=8`!fGe4ya+-eI&3P@=#;Ok~9lV?nOC6MtOsX z$q@qRLPbWfmv8-!bk^L#Ov7cey(5NCgR-1B(F6UUqfu0;?nIR%u%C0jkFE_VcqdNP z=imQ+|0kssIEh;&XcW*al)})1L|FXE{~5IvwBOXXh6nyK;i#ZECm8>yF6zMlsY1KJ z;Tu+xf-5a(Iwa=U@?a7&Onh5JDW(qJY%T=;rX8hgw=DF)6V z;onJ3CV2e?4xrcm_h%!x)3}u-0FViNTm#BYA$!C+WODL`Cuv{Y(QC~KE4w%=T42*o)4@8Q4^fu z|5Rz>I1=M&&JHhOoX;eFcPt#Hq2P)RA4DOMQ?8L3-13XXR$Me78duS@YYEnlXudUX znOY&}f3x=ALcu>aG9&1VlHbMCdmGwGii6+4K|Sc&oPvYH}d=%@}Inh~=DO|~n=r41wi zDFiDAk^3%7*vjn}_9D-xA^;2gvqXjOX#U1BE`FAc_Bp%e?r*jmC~-yTKFH z7)uYCSM3sQx!HC%nmxR7XpY1com1b7?2RYpJqQ#EaVfA6UR1N)Fyc^RQV6n)$SH_= z6fYgLC+{yVRba!-L9wNO{lQ67)?>~{Dlf%%U2z#z+Fev|z$7S7v|{LE@v`bjO|gG1 zx#o$rp@sRnqBT1D2bKXt)I^jS%=LBh50hzO{uRa$;feunt`9l-?!|C+;RD96=e9>v z2rC06?im$PksE6kiB-K{9Yp9Xv@THZK4^3tG2zOL^{cka zMT0eMi-$4B3>vicK?{QNr{Pa$8E>fvO|72YK&ey9I(&tAl~JE6y7!Y`wMeSGzQX+&;VQqfV}Xc-;PJjBP%NHC0S@fa0}b5+iB){C-sjsuIg)8{!Ow3TGSI%w z+Z$rSr<$vy_@W}pAHtJUwAutZPLlH3#l8aizBZHGpIv3AlAd2m#(Lbm?~e{vch*gL zx2{-grSYfpO&IwX3z=qPl-J)gVrJxre0gX%MsHTdt;(0nu69&Dl46ID5r#-DSYfLo5= zUxZ|v@-XzX_g4V`DOt#r(Yw`xi?sqOKYsnY-s1~GdE zM3E7eIVvT#s_?P}5t?BLkj6iK-F7ciU54IGT@o$Eo=y39TW8P&t4A3tYJN2q*4$hm zJo;>Tkq)G2Up~(T{vJ}8wi^F4wo}iK_8hA>eeL3T zr0?LK8FZc{Ld&foDr)7N6pNU+Dk&UlXvRU7iCixH1{;|iaEPlW%8Fo_J{V35YINE0 zm@ur+u1!9>Xjd6KcX;LP>Qsx2MhrSjpVx$aGx(l4=OLvIXtjgywNh3D&eG9(O~p=K zt>c70auH_~8l*tYuTel%kY5&Ygu1=zIVz2FMErhuS{Wp(*u5USgk@^jdfN_*RgTY; zb|j-4LAR8fO(=c=V>UfnAC%0{Xr0FQv^Be1b#8G@xm;j3^K>;=vl(zK2?_9e{5L)2 zI>@kyWMAGWMd`sSPS7nj0Gf_VyEb$EZET=Uc!jzC0hGP9pq9BTZz#aHEiR5F9imF7 zL>?9pjvo_wWh)VzQsfLyn9@!n-eUV#xKDlMIfR^ey;FBLJ>jPN5_@jI^XL#uDKiTx zCkq>BiYv1;IqKE#O9mVCr*4o?<1_GV__L|(v}QQFw(X3TRcXZ04)I%b7E8RUpr?=g z=N6V*6fc%1A^wC#r_a09+ARd6N?IiY^Ko}F!zVZn`Ca)9Me+Y_7+`DBOWj&^P9W3cDwc_KRddaO zu@!lps>G?E6YG8feu3S~d_^Xxd>6rO3f{Pk2ZqYxOch*p_eOJUY_w2HlU-XxjXW!7cEaHONFX#n1Urkp`PO9SO*Y46_pu{u&a7bMPT>vu z8rte6egZhRi*Z>xyn^syy$IeV_BeeE%~qvn_||w;Dxu=tbv(&rfSNLKNP!{X%R7z@ zE(`=5>wEt@2#VRrRfUGtW3{`jrERqU|Fis4Ytvlc#!Fac?d1bi<=g1#f)t!Xlg_%j z4ZViLOATbVUw0yk^o&AfbGF;YJI{7*JJ{hQ(8r)Qh8S<1vr))InsP}4@48XE)wLEPuIYI^el`I6Y^sm-G=J4 z7JU{@zm>2S|HXyZ75x__`|h-v?|(q>FuJZWWILs7>H;ZshrCqe#IM~@tA+-P>ZS19 z!gl=CuI%rNkk@Y1bGSAsmhkIrSF@5{?w2z!d9k!Kf&fLL<=b2I`&Xq_`tuB;E}vz9 z_?~7!%p?>;+Su-i|$rfE{<$wF{`l>H}WpyTFQd1zD^jn{AX=d1NY@ zfQ+Rl+hv`6gaHxVm%u_W04RCqzB#DtTdnHD0-mZ~H)36%$w*@;dMg@~wk(i5;v;j&=h%74}#7A5e|0exOgsVId;ijt9^JKnmfo|;e&#_;TBvhoXps&k}f=lmfJaH)fh$Djv?H*Q8w*+>{?f zhbnK9g1`a4Ej&6e`9THFM2E1KkM%( z3*Qtv2WY=&SD!wBK!A4!Tx=Q|cAg}kitBdSwiz*>96q$bLf9HZ1xB;%bbPU8I7cTtM=M+pU#Tw42JE=!iV$I0!`}owyEtWm6aS0Cu{HWe{4Tp`KErk z+-$xdr`k`qTRC3{TS_O+9UAS1-zeKO4TDHQz{x}@v=bH;Yfr2c=bA1}o42OCI zLLD5z^95fX)s}s=L*GRVeiG`gD4HUjt{t7u66MvqYvwVV1 zR`#fIQLDU|7;Bdp9fU_oJ@f7I_>}LqR+y3F2iMif-luPM+L9r!_03$MK{?p4vp$8* zErS~ICceMOK7O>LN;}oKTT;~b+q`KluzNR#(AC+Oy8KLXcF%lR%Sc*-zct4n%peKz z3I@BI2|@)7F*iy)$+&Z1VBe{lwN56J_8yaYI_}GF>cL{GjRRo<0P|GvSu%A-j% zMLEJsf2HWAy1C`QdFtFa4OcJbP%nP-jw<(lY>rS2E2bM%tz~HTm=_&xOPsHHu>x<67nl>dTmd@gI1 z!6qCcas=;`)+xJKvTw^8>8>SOr-z2%BlSAfz+goU#Y=IwhS{C3Dm9$uhlNH=p+Lzs zE4ixO_lBZ6nidjQU7{k655o&Xr`vrMO&j!BzK$b{5~2O5lRR~tr|&#%TumUz46z_f zFl`uA&hJ}Wm3hSo+!fmIAJt+W_Ad4PG=(DHl7@I?x64wa#)^VE?5jUNDpsxL_yW`; zCE9)#1G+L0^401Mewc$CrW`DcbrGrkxr;y7&u=TACC6`&4k7Jus z)tRO*?i>0eO2GNWF$%uZRY_bll@?4VcGtdFn_LRqB5$!`)@>yPJI*Oai>trD>mJyJ%Aolpo<>1v-&U#7VtBpY%0kr)S z(spGxA-($t28}hy(uEqksQO!bvDaMO>v(Mt+Rq#aP-*sdp2qZ6A>vQE>*^|NbEE{z zpc6$|C2y!j^nGz(>!h(1jr&)ZTI*Tw(X8vdJIB%dRb8BZXf$Hn zxNMc}A10Hiodm5xl<2=1_U;+ROhTL?dcT!?B%Au6D zPh@ASKV;!@e5MfqI!NTvQ$ll&4|{#_VPg#*@+(v63Buj)YT{wb7?F;?RZoV`?xBI$ zY)$MpH>Jh&xy7~_Jp1A1@D;6JjW^jTTc?s+ipG6X7ORl41r^S_=4sMYq(7;A)hn%h zZSFjfbcqE=U@DU!LK-G20J4QQao9{d z+OBWl1U6LbU4KX)k%;JD!IXa}nH1<4TMTWd*GLr4Y-z6{4jJrt69G9?t6LaMVIpU~ zMjl=+Kd(@IDmm})BNe4#6MfE!o@D&UDK-B-_2WM#diLKZY^|D?{j?1(LV{Pq>@GR0 z2ayoL^AS{R)Z@m>5k7`D+}%dw{Tx=PDu`T89MH|5Rh-8v4%2F`p*KI2sfr+x|ne=S|S zv`_--=DW5A;a^F`*}q9t&=GHw&H15w@<(F7h_fdc<7{SO(Zph=--EsvBRP^}nQn^U zO6~^NDMW{=U2LZuNF|Sz4Yerdh{QKVa%Dc1o>Zsy(5_)wpMS;1KNx);?P*#zHPJRU zvQU-Nm`mx-yUL6G7fWJ~OyNLg0;?$aQCJxIcClkQIF|5X6M5BL$PG ztGO4%AuLiiT`?F*qa``VP*^RdNMJ(INGLn#5hrL~rl zB+$WSZq!ZFAs-8lN&1~pYas5iX^QIB7wh?SnEi=vm-hL7%xbl|BJB%z;WmS`I=O;T zU#&8yQ`i*3yVOs9bJi<-;HcdWQy8!KKGtNE^OEN_8-HI0JX2a91hDxg*rsV?{TX?);O z;fFn7&ponz;uWcoeV~BK`Hb&5ZP)P>szJh!f|R5!v2X#fCN#pK!_4agi2}_yk%7B= zWtT4^nWN7ia+0n3b#fIcW@3+RF|&44fkm?kMqqif3~b?m3aVFm;K4!|6lHar*Xptq z9{ZRZcz}vZ@jp56-Ew)q)loKvnF@%2K|K5Lg2XTJCSsWV5|pzYCn& z%2~g&mm>k%wl!jh-Py+Rr_t0Xe}V;Wc8o6GqMr)e2gl)*6yTUyw74K8UR#Y{F z5wUhJIzMTr7F8WFV<0u&!AG}1=~O%pnG*K>_rgDK)g5lP=b%#AR&c?dQLgz-Vgn%- zpNnFh)SL^y9pv-YboN^L^-65_bY*S$^;jo~PVJQpXDcdG9wJV|zgjdE zYd`$SY7>7G`R3`Uz=vg!SyzAVuIwzi2}{0=DDgrzGOG+L>Ce;)$)>dqELebvk{=zJ z*E1QP51FX*ylbZTWH>cfWvFz=U1rMxmCW6+PpYwF@atl5VjruVy zsZrDeipR6!ZI8q$gg^GF$U%LkLGL&a9QfMP$^cu{`_Ccj3nbPNSE+u@`-WcWzQP!y zdOKG>%{r%ajda{O{*C7N$IATDd7}^7%bMZ09l)#PwSDET2}{pneP;Gpc=K1tm%P3R z9+nF`$xc|!a9)jR8vC7$BtK6b%GaUmsdRs;HTt*~621qn(dT8Z3rc73PO@H|N_*At z(fN2c68$|Vo`##X#$x(y<524nTU6D!FNvq=11C`wcDx>LrQ$|v4SGNB88=?770m%vOHc7TeuANPejyPL32yL6+aRA66J)i*6&t zNr~7w!4g=e`{Ez7zxd~6o-Tve()fs%utt&Oo35Hv`8oolfN8~yu7SPRXd!2n5r2xx z2(&3W0#@8um*xwdgvp5sG^`P|-uqzcc!i=|i&9ypf7)w6)@SBVdn$}TqyAF(;28(B zAHvpym{d+O(lFS*D|wJhI%^L{y5X!j$@{n3u6lz%CjPKb3^;sJ;^B1^G~G;(eO$)S z5J8xj#Rf5A0F!%^$*;<_r#B=vfyzC`3*g=}Q z`?0Zx=+e1VcW437Eb|;>%Gtb{9vb6 z{SwBeC?vofv=$Dvq#YVOzfwIPc?lKZkD;E+{LVwBB^M)JaOQ}i1K$@204l3H?#=$W zJAP^+g*v5Is06YOba3{$X2WNf4;bqtD7;@x)`HD@IS*Rn8$4ofP~sX&r^vm6MY?@| zY(BrT7);>(dG_9LYyPW7^sL;U!hM@bgw6XcK2Of#kc3snZ|+x3vlNkTq=Vwu*79U} zxtvKAx268XsMQ-%^rOx#{uWwrdT9YLJXe2tWBG%%2D=ZM)9MNb0;_fTLDACQyCzd~ zN=`$BFj*R2ViuF$a$GHu})TK5RA=mF*>dz${Z;w2f&a9DX}$uLx8d4)GYo|VD0}N zePk*M{LXb_cmK05E5BSqCU|EYte{8#zLF0sd}r}hRp0bDOmVfqPyCFP4I+TMc?~Pa zww49T2V^+%EB2g%;x3EYGde5HfWwC0GOlgzL0d-)9PsovKvzwvAVW4FYcI!dCDvJ) zSG|2(|L@IvQS8z!%bZ_w1~Z$2yOcIO5Ixxuf*^nuMTa7MOz`Tymp-MW(>D>3D*sk4 zMZmrJ^ZP+|D{THQ*+<(QC06g&*6OMibGmB9W{xQe4Ltus;T6b}D(p}SM^(P~EDDw~ z6{JG)=|`Xpl+L!SnPkm{1VZ-rX!}J%pF`2Z;QapH^%`!&AOlv3yj5SSWR-khraIn> zZC~tL%{Gq?wQ1T}=H&f2Y?pg-wO5IG?fPV%!;-`DYj1U5t$4w@0!>@HmAm@7n&VDLTP`r4gN;v0-zO zW*Vgw+rqZVD#YptRjH2b!=$ujhT`LB`NY^X0{{Wd)$VaW7OK1A&B=Qm2DkO=$Q>x4 zY_Y|LhP$`nLasj_G61~!_dr9m7S&6$Mt|Aj!=C{ZeYd$Jn~AGRy+M@|NFX+ za_=jit}@I~LIg}}7@qU08IV*Q{Dq7l-j(j4EmC-?vq6(XPF9US|W1#6KgF8pf zJ+taQ2jRDGD$@Qve>#!7SdC>;EZLSzNlunjx^M4|u6Qh=9EKLUe;`oi*+xD?Nd=FF1;2;ePBA89Pi@u%MdNO-_Ao2wO z-un|Z%OSCS%CWg{gVJJtUF-^*mY&I+);(a6a4H^XrU*Ub6$mAQh?fs-_3fOHq)H)9eEAT21js2p}#L6eo# z4MyC7=FIhMoB4v-$U!#t#Muu3=Gv2Stai$fU!B1PnD$O+DgB!|uY1ogg1@5lfV!8# zQVm|iG2t{XuR~ks*fVx#W>mlL{-y2Rc-tg2dZo@e6i_jM0bcLV1@`sefnM9sSNt7W zC<20S6tFNx6tR`Fr$xj}TN|^J$PfT{mCwLp_#={WJ@}|J!DbO-EQ-L(BXhwoW-{Hc zkCZbBC9JY8`V$usc;DlVz<|lsu5Ws1mT^Z~6KquzKGs9|D&j6jV0pnPMP7rgDrhhz zTA2d*+Z?Dp#mD^UBQ7my($tCyBd=JO%kvP2m1$DMF5Y|jhRuSVp)KQJkHa-QU_c)v zzz)@0RrPco4E2gH#NdB4+479kg;oUsq32wXZpAcDHD86pa`&`OC`u6XsmD?rgM{|n z_0~L}>AkVqEv+ng5Z(Lvrw8Fds}n2$Fr`%Zp~WV++}*9F;j;NxVFu>iV=moWUaWX<=j) z)-Cp(yj%UE=e5>aGRC87h3d|kE^Mp3-PO3s8`mY&ss`2anTVJqw=H#zoV zK2$<0BXGHDd7ATV)09OE{_njfw!wDoc4IpD+l$TZ+T@*VTxXx}tdI@RXG(eTlUBHw zQG_JG&c>!FsidTYf}8B!a8Ec@fqnu$$x954l=~-$@MA#Ou;LMufC&z)rj9JNY;gk% zjUVBw2Ns|Sl~w{xWNpV;bYG+iVioUtov%01_M@y<_z{i-J@p|C6DK+?6$? zB;J8f_5)Wx^9rf;*gt=#TR6E%k8gJmr3;H)clK^QXGG8I&;|Ej+5g+%dE};R;LCqifxI#b< z0}ZUYF9YXlx)SCMmNylH#5iMetX(Y^#!q*NC0pm2ws^HN`r=t_cve{T%kL7_cWbC{ zm_+pW>I3htKi?|@wtph#MwIKgYP7iCY>lWA{=EV_)fI@gRHUVY)ZX(D`c~J}bkt>H z?cF1}44%Jjer}%hVOOz_XUxiO8&fSqQSTp%_C!Od?5lq|M4e6Jdg5{o#WXm$oV>)J zvC8D{e?k`2YpA-B4W55bQyWAD7NA+x)JPUOVNd)AjCGLpO;NewY4p@@L4OL43@lHw z(l5!kspDJ*G@T}Cqo!%2z8&u$X^H>CAkms{0 z&m)`q@t-LQi6Ytm6t@kT-JaC$n31PY{GBO#%q~`@8-qsgFWKq`V~FLC7_?KqQb(zAymQlPU~YfT9xNgfgsu_>SO@ zsLl~btGpSD3Z3QadS#5;X-!SjDmuv=PY(h#(gqo7wlWrR6I~#IfazZgm9Z#;e*{qO zkaL&9??X1)AS+KOb@4l1D^XxYJ;BcZDd>0c@qSpgfE^d`7}Jzh4V9?=7KGALUJ@HV zzB12ldnJL`C}hm606X3wTZX*F9G%~}aG|03(sWmvik_y3fdq=)qbxU=KBit~%%{D9 zobTM^^f0=-KCB8gp8j^Pe>s^t*;0-26dfuvE6Vpo2CZLlE~=ajhjmhy)N)f3T{S$0 zz7~(I4k^$LK%XzVqlLj3Nq2K?O(q-r=W6uSlX3fD=UByOd zWEA5ipot*?NvFuW^ly|BA2kNFXLIh06}a?KSAOX0c0Sru z?r#;%oTa2u?kzZa2{kT$z6jv@&$6r+cRHw-!wjd^qJy_L_7Y$ zaBf6ZK|nEa1*GIn8ee{nn_@g~Dmx2r0347+k?lCW$werBzYGfH zQn-qTIwq*PP94)%O~Ho)14#Nv_|}<#V1Q50z}c20xRCk2+6h`#BqPXfqcWa`yVAfK%>h5L zlhAo`AFTdNUML1pD;k3V#*DF6)?hgrdup;Rlh6Tp$bBe&;zfc|9+@$8yyk}-06^da z0GcuSC!e_OQpF;IR^9R>j8#HooM&Hw~a^B2M55}a+zytE$ZH?Zw8=uh4 z>2nNcFL}yuIySsDTARQEg1q*A$nhIUh4+5{YRJckKUwEf>E;KDVdtGL#Fh_egAW!7 zFu1HY$K@(cXmrK%NuYnc@?`>e8#@H!aF<%iR7rx4i5BFHUR1RAOC zhNIhR48zn@6i;{l^tm;$*zmT{mxOheAC>{Nt~>k;Rn%hHXdw|am8jfENvTzjnLiBx zBmXgj(lvIFb4T&=`Twv0kdP1-A$}AhlmYs!b{ie8r<}1MTqxWBF6-qQy*7uPF3;PS zo-z;zGH11D92PdBG+OTR>3N+5%B)+f5=>t3v^*ZH8XC1I7{E&yH)F>^<*cLUJ#`{% zK5k*Er!s5dV&Q_S4=W+J>EN3>abCA3l3Tl6Ayf(7I&pD<*HS?D4DWq-VKjcry~YdV zhsD;mtIK(GE@u+VW5$kBl}EmVc6Z1?R1>pORQJ$I9w+Me!By1^%p zUT~YihIRRSZl^)@sSGIv^-#B(czV)-fmAwh8xuZ>Ma#MX*2ie>m~7k1zW!zX*yXR* zKe(m|84$adoM%*b=v4UIDcnvOKA$&e)RbmEE0&F50I4*+7}I`M12te6M=cF(XJuQ# z0>J2E6VLfJB%tWo{SDu+BkOzThFuO^2Yf7tIjl{XwGz#~hjiMsgL;>KZfW&7DLIPY z<%c{B0EvqYL_{y!UGgJK$+QOI0exgtU>(rXcQ>xU?CRV>Y}xq1Z}9;z3M+?3)i@pP zw#de|ceiBrLC?Wz)k+8;j~F&+VPWXpapgR}I;osX?=E2DhkLuOUhO7eVQt;m=>d%4 zr#I?7FUyvYrssaM{a&g9l?MT|j@q_%f)S%0S>5N95T#b~tl70zcI801!hq!s9v7&? z1H-K7WHHqn5+%#j$&Rr3Lmv6Ehp@GPR6&zs9%22q0JmZ~j&L~)LBa&pq zF-h7X?7P@(@%*Mn?85EJtq0br2bG6{B9*W9t+|z(cpZ^XO2^FIR$(r>VeLE~Sqp(v zT`UnZ)#YNXcKZ(0%%g49F;w{U%F9_;CePNnd6Rw#fxU?ntnb)ib&%;!3W!}&Z@+$3 zjeC7~U(Ci|&Pl1y(uh;7>=H+(rZQgDUJo7q=+5uXuwac{yMQ=yLk0_wuPyxhIVHZ& z<#j>>5A9{(UM|7{F|>Ox-AsIO_0zYhaF-#G5c@eHp-vM`R0hNkKtdn8(^6}B} z_5q4y$SOv~G{YuqtwV&Ciaymia}^Ib#Vv$(3Ns;=%T0zrzn z9gnmj?m6q_Jd%?YC`Gz{d^J}JK;=G3We4Ny{JlSA(zx)y>^YkJ%01NRl zH%lkKR$Zbcym(@G>_8om0(A=y1V9D{(Z^U?BBvn20Ag(g#p_NtxFeQpykQd3kLP8s zIpi60l}LbtRnH>piR#PFt1^(y@-TAxJEzM2?5U#|V&Gn%X8KpbS4;PBV`TlB;T`BR z!gBW{BU0LJAfPT!5?&25GUaG9{98jH83|CwvRe}rwzd+47trYaN$<&0Y17}`QHt_a z9}<{*PY`D8RiyeOw6HzB!;quiU?Q=*R@@RL@&}Y9ap3OX`V9`)M+h>T12(96D zNbwv@b(6s^t*N$FF0pLj1(%g<8?d+P7a^OgVXY9(9^@3yE)S5w5NC8(K=kq1bKyKWr?0r?ET?pDvy$25nUiXTx6$}s))?9Gj%L^% zX#RG!<~74V-bh=y+Uh7_qkh<;p0mR#NnB#SITuimFy(=+`>+H|iF?O`Jt-EdGv9N3X?<8X2h{XBf>JY{L&nqv;?7v4J z*way1(|v3(Z~y{=7AH_ny~fcM#zZ>VAp(|*dh?r_1j_+o-owxrg~1+0J#mGNTi4%B zN?k17@6nNWm2_uCn;KfQ!>9l5_-ijEZX`HIb~P{g(oiUR>M6~t#m-J9-0;$n15OIor8L`?DAWPQNu@I`x(V>n`W<-QFw;(3^w?X54nis@Va@WUTFxAZJ_rQNk)qrKity_oq8~0#yjWfp^dmKO|F=k*-qt==sW9P%|t6%WwRz z0=I7r8`4$bS~u0om*=P?WubUHDfE={PxiCeKcQCsKl{IZ!V_?XHI?r#URn}uw=43< z#j1^2a;CrloqjRj!*lrlA;oeHK%2MC>KBcFk@fuE!4PkoQ=+EjB~7vG5xYYL6yZvg z;z~$NnX2V)h?vGUqBzs7RoyX6l@n}PX=kXoBd0FSb2IN~hMS6rp>y#f4~DQKqx-Fq zPK1VCnZhO-Q=R&5kRLbtgjWr?_WSyYSIN5_J_{FO{aObP`}~$(bC1$19-YdUVziIa zjbCcWDkN$+bmyh$o`59}J9;Z5WQZfaiJ>PYx!enC_f8YL%Nf8D-;;+`q}3H_4xBr^3&g+ zXM}LA3IXs)feHY~yy*DljglgjtuhMC)1#(JXsZtJU4>#@t@c{Yut1d48RW$+2xC1E zHw=z^MA&~;PPtt}mL5lvie3!sB#SdFq<$iLa!n^yXW_e(+^i}J;|`c*D0H~pv@G`s zw9k7}t?|0*v{|U?#T98i#cm4qW;iKWEM8@qbJpD>SR=;H{ZZMgH8?h7_7< zXfp1aRfO>hCZ#8MAPVBQX*Fbog>Z37L~0?aMwPD0M-@EW|L+=>&t);629ZZM`}=n> zefKhC71yvPKq%$CNK-CmN%xX2Q3RB14mo&SOTU>1_MTj%=SF&iPNfJ7^K z&Tpmc?ac#P+}YnZAO9gZWT|4?vf};}r?qOD!xS%8er(8~2&hJ@E=a!5uXmk~&i7C? zpG}j^$P=dz)xxVzVM|w~&#$j{(XOWMa-c1Gqoki!czX9MKM#>Ep0kScJflpMN^|FT zb)iz=!o-mFB!y`-d_4s67LR24s%pgrs7>9qD!o6C)}!`Vx$P~;O4GwBwPM$W)OEmP za+Uib%E^+%o*(6?b*i>q>NSp*9O4vRnLRRua-mZ8HXl3EOn4PFmH$5k!7L^vR1{cZcvI?&YB6Kco=9Hj~!P2m1HV>|rXe}z1&Y$~sqz|51Smy5ehO!ITs9m60 z(wmvM4l(k9j9tw{>W)FXG-})zR`roYF(`%QC3@**T$NwjtC?Vik;Kt8g{^J!_ragj@^LkC3VK_|X{d;Z&Rnrs zFHec1FpQ7YW=F89pk!kTxzFQMr2rIZDP|OS$)HsjRHIAG#b!c9d%0;H})mdqX=nhKU4!NwiC=%|(gd#-Ia4%a}QMb~ozI zYmTi)NW-279GGnd`<}dxCXDo<(QDSCVTn6J9@){OcIH?*^Mg{33|fQ%rG<`n86P%{ zD>j=kIGb4{XF8TZLDsBb9?kk_dXKL1IcV=&DwVFCOjw3PM~=JOuVnP+((<;}s^9fD z3kBW}9RA$Qx4&{KBxP7n_zEZV?BW7VNqdl4<)f0@dWW*s6mP}FYiRgxWv%b}M)>?` zOKA6%;$cuo^!RQuvZgD(9yoA@QDgFq5apv2s;CZ3ry=Px=-^)VMdM@drDa>PN!Sw6 zPkgXizST3}lDM47KLM-fZvHRFrHF%Bjw85AN(~F1q&z&{j1n^dq-Z%*^t+8Y6<;=~RC zzQw@H)gN_uQ5>n})3~|4&>7bUkf*0j))SD&jSVNB>3`gGrQm6sh{wX^E?(}Ii={7*F9p05-!)*aR# zuKz7GnkDlsc;gWa)?LeE_>NR?P;omS`rBH{)PhOyI0q9 z%wCf7JNXkXAJ2(|kA|EEU}mkFy`FFO2?z+v%gcX^#>QmbKOg2o2s%2}Hh&k0<6r!Z zn3ASY)BQCbF=4?4MAbq1!JlDO#6oxA&&Fz6nM78ws_k-F;2yU4W+IoJd{}h703GbI zivu2lI%0;ivUQok+D;*N(RUzmfr8a4-rh@d-*LV>3X37ldYyqPN*cfZE^cUcOa%3( z*X?o(EU)sMZIH2$HjZ1sD(ui_HQI-{akwsj*)IFj{BW@bcDGRhDnAA;g2Sr18q2oePeB1z(qlL#JEl4Jy7 zl%RqnQHc^oGIEfdBnOFaH+tVWzwTOZt+(#{nAJ1gRkf>X?{9y5S9Ld6-9nFh;r3oj zuEdtRnm%HRWj}bFNRe>w(IqC#2D>VLi)EjSHE^^X3sMpF=-@=7bpwycg zF%4^Pb6UE{fs>_uvAN7&++6Cq=@E7HW0X`P!>icp8#s$9Ff&4YdY&_>O?L=$bMMndXd&Wx<})1je`Xyhi2Q0!UGdMyW)j6q2KAxom)I6ML!^i2 zo%kOXT5yx$*DWaD+ud6As4&R4x3|xVn_k^Cbf_pH$=+wOS1{P1CE9lA3Lpa_uMGxik^9uNDxN9z)n0RCyohhP_Ih@Ycix~Ryx=f!mu6%}S9m-gzY zTt}~um3jidQ&n$|jz}8F#Y*2M1z!o8so(0lM6=^0AUQQScW3@j%WID&BRGV;+yppw z9|hl!p(#rG;}&Fr41O(=04%{6Tcki_6O!mzOoUNY&aDrItZ*G$HN1 zx<~uQb0oRzxSHoC%>#y)*P>#hQ_rl&aNhF75gFKSLn2IWk@im>j#EqzpGe=W|KrT@ z&cihdHYw*NXDO4;wy0w7tqj)}CfTh~9R9Y5uUu3JmMFig~x)25QKeprOrBt+4%~vJ#j3a{4;>0LMinh8~7OqD;V(|a;}6AvD(*alKg|c{qNFD?YqG3yL`y5#OJ4^#66V zphg^YlSwAK_5@4SK}qUv5>Xm9RynHjI|GF)|H-gxQtwP}TRqnjVIlf`4L%a0&9@_s z?@~2LQov&GNw!~uMP&O)RIsmS;EC!kFwPf} zl9IfuFvzEyqD_UNEiH(ZgTsWRdiLj&QrzU#^XqqAVF#%}ewR%NdUC;|LOolQmzTGl zm6b(MP%utA=z37CSb}z6M@QP{sVjU})0WR7*M#D)lvsY~U(m^sdBW{Y1@x2K{N|D{q4iaWk)lKX8kOjFW4Wkg&5 zFCC%!_yn9AyF>X)$iTO>wD|k`x2Io7@!9<$(8MEUqEuIC(e$T~5!>A^=T_PHm>Aq% zZ(Sivk9n0|%DuJT4d1=irag zSdDFOA8YHW{MTP?Ug{yf7QN0b=O$*0TC?H`3`z(;=K`Dvx!qh}38Ja5|EzmvEL1!p zzqmL~y9^ZKgT<}Mg{__Z{Cu9+i<#Q14}SIAFE=l5W_mh~konH^en9?dbm-4c8czL1 z_VBdl`u9V=Q=hXhl<+0vtslrRFD(3SrCEb`_|Emerbqbr_|md2>132nvWSU`YZFFX zb;3J;s+0o6{HyHOW4ilP|5@QXQxPz6QBhGFsn%r#78X`cami89DoXxVhvenKV#Ac5 z?g?uGpv{3L{HSVlf*Q|fU~82d-@nW^;Qj|-D$$wa;$}qnt z5bmcI^o@Yp!73w{W*|PwD2vs;7%~MJ}EF{xQ3^>J%(%TW=)`?3B z$wBZ^Nz&&jd!U_-jfAL?Yw+@MhpL_3t@)~@Mt%zmi@?CZwh7ekP8Xn4tdAKc6I0#r zss!V#*!uo9?Xc~rtLoDev6*+27_aGP z**upYRXcJZRwaFT1!XqVozK!v3z<}2BXsT0!ao{d@dEzaZQ`>dJzt)#dD^~wu{K<& zOf@<1-(z%{Ev$aZ<-A&a)}!X}gQM2<4NXmXIXNM>5+y8KIFKGNz7Ki8Q zV|wQIh?G~%?zpzQ+Kq1Z=#*ee`Q|V%MQ#jf7 zM9daYil3h!qK})_vlDMn!(l)T=V5$2Gcz*`hU{vmPKU^bT*~}#Foy2n0iA61FQ_a0 zi#nRYY5cL}foh0aa9;uu-|iWsGMA}3jL-A#8D;@JtlBIJ8E22`DmESne=fY>OL&S( zi~t^Ryrk4VE91q$MpT`>A?*?|Ju@?3zT6TOMHhKKHYusXXV1H8C?z?0x93Lm_0};m z997K>sjAXxjDWPwtlE^6m6kr%&h4IYs95cSRCFWn7HVX(@w0_ZLNl|oUc-URW+t}r zsL6$Q>Yy0G;E(;3B5wk3_RP%86x1(N-i$z1iuQlKf-xyY?p|5{9K<07B$7lzbCD%% z$avMCu{hEG@&?PzPmj)kMbHJOmy~=NSsb01&`6YAEO`4p%;s_TPb@K?uiPqVok)1Qs`?GV^QMlZMVH2$DRh4=S?(j`l@>sNjePO4PzYVo#x0!Fn;PVwJ4 z+F^p68%hB7oz1d89447U0EOW2A)WB)>T=?caGmY>$s^e^P+2=I8XlZH!gE=2uJ|)k z5+l$~tA!diSWXWWICe=%i5y{}3Ho_GkU1o>O_&k);bzfEDQ1+~Q13HUZ#sW0UQCR( zKJ9>?Z~t6Y99?~f**Ok6QnzQ~u_&mJ3V3y@$?^E6e~JB8x7ux@LFGP~8jMuizrN(0 z;DSOlCrDuW0;OrOAv2Pl75|)bv_xTHiCw)z&1x)eRh{+*9VTQ8@9?U ze*yr(V_9#PUen3C+*@oNyOKRLKU8^dYi+JSUdU(@QY5IpvBX!oFOP={SN2S~5PYPP zS};D_j>9#9o@=wE<4nna%T)fh2nPLPEYx+xGtK60yvhc$z9=rrR zOmeB3oL(}i<W`N)H7U5KyRw&=*X_~pwN)DvI8+*^TzL9gXzA_MXU znjZ6I2kjB2QlZ*es=q!2oaX2`Sw7!Ccg7{E$dIU!uRucTrzq(-P74W9fQvISG7{7P z`c9B{9{;qqwszxFzIt}7lk~mK6`-2+`V&calkv7NvK>dQT^QjVTuFD$m{*~ei_YB6 z{K9*w!CYaNx3lGUF3Me%1L%t>vVSv7VZ90R`b5}5JUU4X5No4K<<2Q6FfKHwMg)w@ z^>SApj*XAYZOs-Te=WKh!*;P8;jpv~AVX}CwPXzxO@%PU5yqtGM7L(KZdJ_M_d(By zCSg9lGH|5a*@-}XJA#1&Ul9B91}H=(y_Vn$;N&|@U`7m5{`B(Ou>MS5E%Lpi#>O zOWi{JMy=^FLp4AHs?~1Osy-Z%Nu4dnes6atuH(&@YJV((;LJ6}?u7K`i+uMyg4W{A zs;nyw`z7(NvwDb?o!vH2eX|M3(iZi8avT6wyHI4AFA*cG7Pqmp3wnF%geYKA5EB~t zv}dqc^unH>+DLXvB>b4*=2DX|x8;wWUEs}tOp5h2frov%uB~CuozwR?(+FV;V=qsF zw#U%Dbxz6KSVw&&NN^~d9-$*@GCyN<_VnCpe8?Xj76zDTV8DhOZ8(*ZDC6#AYdbUB zTLf-V#PQn)*d8G3xdtF$KGBkd+y(}I>?phobPGXf-h&svwL1NUUEEF*Owzt;XDu-? zkyF~We67!RZ)<3eCFosD0(6>_8LU;fMyPA`8N!p11*RUUMIN2y3#W zs@+ZSoI*Z<*B^oCi=f_wE6Fzicbp;j3U=ubLP9;a^Ll*ND@`{yH-#B)R8w0wu$7%}oC9|2Ue8uJ zP+&d=JwbN(_m$qS)Kh-FdqH^CgF{2+78a6qMAZiWJSUfs1opRal1{^q!|9fm7Jj11 zwY4?)z`5Dk)5Y5TE?W!tfvQ z3VayWW(Tzj?Z?OcOmfXcYzC-^|IXV~G$l2492+K$I)mwWS`3NU7u5{3 z@hAc=-p8FdDZ1vJ6^99#I-1uY@3-qr%<$cF?{{}X?VIF(C(A2>BJ8Ta%An^XwFL6z zFm)xU>9QXWjaJ;-@MNJHOXr7zx%uJK?J*i{IL^NV!S;lbh}G28tjlzCbSzb?93LEP zx*DcNqfn6}ffXb|VXvMmIj-#dRPwY``0uji>RpX8P1xeI*{pFtk`LJ753D+`dpa%22v- z>qZCsdjK2|4?A&k-s`qhFA|^Q zD;b&bR&S{H(PDk+_wp6+_fb>{FI)I(ay|N9a4tjB8BB zQo8+N#0smIPoKVhWlcrwQq%LiJu0oVpj>y^Mx^b=F--&8@P2>R8^t{c>C!1h6hL`< zyYCb$l$Mcsy_t~4xq;oV7OBYtZ+YgG-l3wBeMdXw+*38>}hP&*V_tg-2=f!V$03dI`12Wyun&aen zHP+szrRWc5I)PDMy#Wi(d(j0!tybZ&pYH5+8LnqW6-flExg|#EiQYAtEhH1@b+>40 z|CE=P*X*$W_7}nD?e}}*>8bJYr006=ZuPwFWj;J_58JAxjyDHW*ZULi58KgrxVSsH zHGzoy3JMB0fzFZ}<8%GxjcZir6GKDI*W+ACG#X#M-(ENz_69kVJviK;%JTEc$jQZc zcT+4YT(8I2)XLN^qrG2@CbI;t#sMIzW_FhO$fPiT=!(E$!lc!#bH6`xJf73B>%*{r z3PmG#+P5Blxz2otw0+!75+jr(`j?+>jJ7ECw+EtO7(AbTL=WVypF6dZODBUi*g790 z8YHGes)P;q?S?%YDgdZIpfnM%A-+2!6 z;%*M#&)?tV8cx42)g3Mb(rGo6H8o*(ZAbHYt-0)q3`0XhEG#USQ4I|ZDR0qv<7}lln(wV?Vt={XXuxq^r;v{sAZ3kO6Oqj6 zg@q9I&08)qTT@FTfcHU$72IEfIi`M){-W=EQAB#S128SR?>!}gC6mrsUstDGLCC}R zG!>mQ%dxlsz zK#W3eKg2eS=7Z*s6GmP)k-f36Z>}f!_zD<|`XfSd0wB6Ze=$i(Nx{RxNk7-)XuEwo zAD|nlBnNN+Q0u}vU93u7td@Dg5#nZo_4Ug_xgI9G@4wyv=;^)3RR42g7^6(KS{S_Ugd_G z076_!3XjL_hmer}ch#e>N(Iuz<>ir$Aq+ml!;&DSLfKROpc>zz^765|&RTHi64oy= zDZO_1`OHg-3ccr!I<^g8H^Sl9Q`O1YGlp_S+FO(sxs;5U-S%w6+vbfZ=;Rg=_3eezu zt$j*_4_M#=9@7lhFFt#Fd-ay{qJ_@v_#7M@02fvddUQ067V=?#D|Fl44yW_~GJBf?psI2xEFSp)G6k_m zJp&yXsAODRT=Xc+3Nc zS963<+%C6AvtNj#%Y76iy#W~q<^rt2wvIat)Y*3{fR2(K))W;Lc>&?T_p*r`qL|5Q zy@KsfZV}#Rf4}OSN_rj-J_q$^yt7-*_jHi!GMkF>FXtW%^eS~xNubNV_M>hGD*j25fFC; zjh^P**P~2;HjtB*{RB*2jq%7$a9DWwdE50kpp`fP<;cV13Fy7+y|L2L((v(}Cb$LQ zB2b$1n(O7qAKDvqfBJ_LsQ)TcBtl+pN=oz5WJX}RJp}~7@|g?3MJcUpY`iyoVPtu3 z|CE)LjgF2k)|&q1KE;+D9|3w7g%bhIk7y7z7+8a?a=CY&f#chy?+v{5bsp>8``1Gw zu?V=#;u-OylO$m|6Z<2hqw%@l8E?d6cW&Ll7EYa9O*nc2*3Sz|-aqyT1MeH$1N!>) ztD&rr;f+{IYHFeMudgl_8-TEJy#e zrZ!2}jS}#aKK~CXX6{wAo^kG{Is7#V{6s&^G@igL z=POp*-R}W5{;RWvM?OOQ+e@%Lal`wr0KcN^^|KdAuPbjae3n=yX*C?(t@xKOj zy!*di7eQ2SKVC`JfG&h!2OtEgI@kd}jsL%C7R?mf7>e;Yx+T>_g7%-%NrwM#*AUec zQ-1^-;u=K6jlY>7H!y%WKoI2%YVZ2*Gdu~FSzEu()vg2=T79(N)BN@ z7&1I@{8O+8*YbY{1MzQrym9@ESrrflSk@NAe^~j68?^^(rVBgb?VtZcfaFdnT1Q|^ zHsf%El>sxN3jy9EI56AvKX9BnM-`&*A`}*02$WF!qM4HMcar=0eJS;M;E9D%0)(Yd zu@un30(v%u;is{ttkXy(%EAlV=zui6Q*}nz+VnNK-&x>Jfr9 zI9HQ~C7wz^bFveb21l`vwQV~0a&3*OP!V{65%OvV!TM$KNbv-$TANlf_)h`4YpymV z=it^2jkeG3;Q8a1L|gXJC;rQWZ6O3tu*``hGt?(KFFvjD1NED5dU0?@6{Pb9a0!sG z0PfG*#9|92ugqxm=yh*ES@6)Heq~~ci;Ht_L5DWl=ti%~=(BFz-`OG63~LGy%+_aE zNFtLa;+`03?*V)-(3AlnV_mv%v!>DlpDDi^kv84R?*^Zk%~0@&qeN9{)pvV^V@ab2 zAiAs@O}~93)lBOMSwANa04(Z}vl~xX@uEdNV%Iq?A!ZM;D-$3X!@Yfd`T0LF1JJEo zbZbZ*Skr^fwPb)QGu>n#x2XRDyvU%8sa_(3ui1J6uNN8`d}*4CnRT#gX~L~SP7F^j z4JN$1R}>gf9o=@?KX%P3HHs2SAE(`>^Q(}uvYC$VE$Kpli^Jdb%_4ys!j9mDKgRsO z^m1@-7DEZimvWzD>@Aqjv3UStQ$>XTcgg=(Jx_e1<=?WPa@hiA{)Pxsoqv-V#w;^? z!Zn4b9Qr@;W&%L4lB>q}E6{AB|NYp?%)ux}1dzq#2&^y>-Pr8%l55L$p?oWvhYKF7 zu0VEz4>Z*S9_cUi)dNDHJ1S*Dn?xJ{gI-9re<2GK6Y#RB3Odub$}t8wFhVy_GAQ!} zq_yoc_H4)ijq(@c&`83kKJrR(0RWt#IZY6avnXkp$60~fdjG8p;F*ro5dTS#9y$zC zZf4aI(3j?@2o~UZSB7S`zB2(2gH46#*GIq?^pjfq37e@d@plYKF;BX+1MV^LV74tf z0kGk^1-$gMJQmMAnOt!=GcDK=z7Rm^L{!Y!qeOBsTm@s>Ipv6efkH^jtOJ1L#yig( zc?pTc@^jFb=GcWChLfkJUa4QSFoQox#=TO{jb0X zo(M*vV!97F9q~}V3!DZCk7VaG6HNy=^E}}hf>e$-$^~9A(K}cs!PS|t*WsU%;d5$X zK`XmNIo3AnI0U(|*xPAFF$c%MWRW8QRWJXiY44QQ!QOIBs*dOt`LUKNNd8qNM?@h@ z0WSiH_%enQ?d2yY2N%#TNYgr4&(Nn@4e7F1G|YuKJA-(g@_~t{MNr4;l}Tl72T~|_ zEIND+`)@Z>Pft%6)T;4GNsV=NfD5n(`l0tj4`C1zfrTU{Tp-Y68r<)#qX(FPgop_U zb%4~PL9@Kw9;$sn?eV_xc_ftwsxb03cQ!WO%i@uuZ z3xcS3&&mmzrqt9<_UhfIy!zR#r}~!l&<<9BEqS2JpuYD6A!f^;m@{xWpQQm27SPl1 z@bCch1LRGAa~vRu%B`xB&m7&f<$l=k2RPo!++0FdmX3x-8<0pqoJC(bzf7$*=^h{w z{nFU&$N)4BwWp8{p;=$ml#2?n&K`9G-G(S!|EYC``X1qsxQcmsEe!t_;Z{R%5)}+0 z##6Hh-=635&dguGG!ztK0Q9$agOt0#eY>{$!ey4?gJur3n{2a5CFXVAPs1>%G3j+* zHiHRuofeHZZ6Eru^bmqcqQu}aX^P6q(g1x2{8kd3&Qm|0O#~iWMOM}Z5XYUCOC6Hc zJqr4vi#70yeZd>F;78Xq4AO6|kI17>(PWGE^v z|L9#4Q)FG8bK&Jm$K{Ygnml0h2{I=J3T(aQu;t+v0GUMSvf+zo-DEJ9!g4viv%3og z?hBYwJ@?akr&a=fNy*{U#&uqg2ixEt1y$8A@UNS5JQ$U?vY|YI)xQ_8es&)? zC)4VOI+60O`KXg?;v8N6xK$SA>)O6t@qT|@Zm&YKVx4fRfeF(7+$) zlUCBxL)KquvU^I$3^xW6Q4kPu?C<~(fV7>{Ff}$Yu^9TR28{X*oXUo)xM8+CPM52`htU`^)*A{0MA@W+ELfmei!9Qta%8{<6x=fP}6DL)%LBZADd3nNSK>cL9bckif(y`2&CVF#QskKTn-R9w0s(weau7-&2$KHfm!0B0 zxQ=4Ip^!A|leOvK0p8C3eo}mVUjE-teSJOSd(SyC#4z|As@GLqCSX{rTUy+JZ1DE> zw&sY%`^}?p#`Wp2FcXMf>}!I8pg~i1sJlEhI96R*8eJ~coqbr@7jwdn>F#+%R9;W0 z9B#rdSG6Q>UCl7p6+HIJlPvM8-p-oKBNe^BI~m3U-Ei-L5si9PmWuJjv&`q%HsKLC-3{$Llb1f=QJk*D z=pjdc$XrLtv*dd{%UYc+ukRw2I7Db!J#+aqwQjm|KeByUHOv9+M|5*MU$XymonC1- zz~7wzBgi()ZTlX&tOD|o3O#G_s$hAy;lnUY-`4GykparXhcOuzDhJ-^)LuR{OAilT zJ-JT3!^6X?A5R^A6v_J|w-gc*+M?iAWf5MZ_p)FRRRELav+ z`P1mg2p6DgcbNT%K;kkoEa|CyCn_}Qm-EHKAQ96)^nW{qAj?7U0UvI zzh(X~?svQw5vDRs9Ahvj#LNEKHA^Q(49{gTel`7ZF}XqS1u??!B!oiYSyY{$h^33o zw3VmcUUx8Ta1iQMz637vY>6d{?QvLVphhNHlJSM24wb5aJd)j7QfU`uR&K(uFkl}f zuDHc(!5JAE;Fl=WI#h+al~+7xD=sx@yhy4L%V}#(-=-IE6Um~kEbf_JWhPLGVVdsQ zaGJt*uW1+I+sprUH}GvFk@o%d+}nzE*(jQ);oDFwmY#+9Wb zHK)|r%mWxdt@Nf6tKX#5?T@`~nFgq-D2?3pFxRi9vZd0xYm$dz?@q)YU(lplb4Q>= zf>0>IkJ#RXn=LH6$y+9^8X<*n8a?R)o3WteF|!)j4~qPNzl&;FLN<6Ka#ozZdxK{pf&iiTR?(U8ZNU`-gUVvRN2nLr6{iKoI>tFtggYNeB z_MGb4fbY|DIzkK-EbkDn%}7j~BQP(;*Xm&Bwt4wU`2KV=FBkA*pio!kEBmm7FiKgZ zP*9qsq!1onK>0ejc*C-lcT4g1uizeoM<>8y7c8FEm=9T0U#OO*5%DkyJ&!B-os1IC z48g zs<(kp9jKT*!4`?K*luqjWlA!^Kv0%G10<2s+n(T#U_V2CD!TV-svzmhE4AN_I=D$4 zecCT#lKX4`vV?o@>b`oeuz5Gdcj4D*}GZ~?V!EVL9jn}>^-{dOdrx*LOjDc8-1Gqq=<<()G>37Gnr{*s8o%%f7`eFc_}yDw zAI1)UfTtgu-PP|61tdjBbUWbBW0(sGD5_fgVm6lRE2Yi&jVZVJNX{3ZK1W?1Yr?q2 z4hjgHx>C};#X@}Ga&*)*6e^ehd?==IyDnVZ+L+?!#1!t-Nyke*zq-NPVdGv-Rz~8yI)gJiXK1G{y$Or$sXm97YzcARC}B?QL7Bxv zLP3q{{lqYJCS1I=Atu&vdBUqN64%qv;qB_8y_w}ae*uQ)A^gjXdT592C~|a5Lwu%9 z%*19M_Ngvk(2O<$EEJ`=E}P}3&2|Bcu8aJweN{d`0*L%ZUwxyj&wClchZj8Zg;I#*ifcHl~1RR zD~c19kBiCzCoIit_lWKpSyT|qX<4TqqiC){Ba%dTqY{qCl_8ev<0&hB!NzlGIJ zGW=HC^wrEgA?N;v!L-quaQw&Q7D}GOW?`z?qzZC^JTooo_u=c`$Mlv@y60%B=Ng6u zp%<%GAw?6^UJYURLs*?}TLI#E0~kf%C?8j3GTLNA@_3m9w&tAD^@pnKY3u)Y7T{yp z5L&BJ)S~86L|omBT!iv!AjKFwB~M9Gs8hWH2}=SwKNYlp410$j9FQZ&wn1J4+t1R$ zI|)gJ(h7+#vAK39>z#UpHa**yfM_5mBhvvkZ`(=jk}hV6@5%6AvxKMw?je$93PeGU zYY?+m!=KM|l1G$x7c^IHTnk6$n6Yd@ejcMAAWDMd^`w?HxpV^TYc!dJr#q4hYzke| zM`d@)`>PL}*i`t8w*qy7Rx3T$hJs z*s6Qoo3}!cKV8n~{;Hb%fT+P0?$q3OxSXsRJMNi~v*&Y*TC~UBb&cZ4R^d;}e{(!D zAP5kD#P}6Za3F1mF%}RY$lJ_kzHqojQ-lFsRj1w}q0g`xNOyO?6#_d4b>=f^virXS z;f)BPuCr?D2pv)mXTQeEEaUV|$rDs|5k_S?Ud^!-L4YVQ_z`L%Os`^=7V^gy^=YZ!bLO*sZ}(B(q$=DNTIV-; zwDs1J-VflE+z66G*$}HE;shP$*0Bwuqn&vzirTkel=O$Hb4Pef&D9@oe@z9OoJL`L zMykri*ol!>$SU`k9H#Zl`H1TXd25Bp?MD;ARiin={f(Gj)6VDd89;n*m(e4`!>X0K zufWy@y=EN+Ir+e*t$6IWdQF>_!-8K-BzB|kca6YIbwL19pUZZm3#eCR1%>YGmxHNX zo0j6rRxG92p_iuDSptlSRw0!Zrq(OQpG2p4u1zfUGD$M~9f-7RBv%ZkrSlhuRy&Uh z5(8nD*+Z7Zlpt6`U54`d*EM4ftF$Hym-){A;m~@@+4}MJs&U~z3;BGBck`$}GU8T` zXdoY*bRz;H&94(o3L=hVgFr-K3}%1A0>mH$I!VD62YuadH z*c~?EPNl=3o;00fQ?m>F8xQ!-Qp zbCE+iC5yHKJ3<#hkw%=mmfO_@wP~kOE$IL|Ul7!He)Cm?{`;Tj=}-t=k!))ZFV_n<=>+vx-Odl)GM2|;5=)9-KKUR(&q#AUKEv-fYq$2t^Iox1ISa0&j+%i z>t+Wmb3}$vh8rwB4|d~JzZ2HVb&}IKS>p&>?Zt|J=IL9O8WuZWxi8F#y-(GY1mC*_ zp)0!vyU_>IWwd@`{O+jkMf16I_A2f*yNXYCLC?D>zsL@ezE6Wit9+&=!d?dJ1Kim{ zD3?FqilY2`bsGU@D~sB|k7r>@*?dPjrIHDaWt2Z~Q_;Iloy^e`v}Kmu8!W4Y(gJJHcBH zPP3Aa{yzo9qoUgB;e1bzOJ^)|u1~W-e(2in2Y17B=kYH;rnq<=>L4Dnns5F0=I~R? z-^5G{MQJrkInod=b>*3E5WU&^(dmh^ew0y9L+dCgxml#{cWIa|I4VIx@_jeIS+&Ay za0{2kxqh}B*FY7T9BiX!L?GjIHQ$|&vvuF6U+NmKfx;+HMVE-6Qj)i|rhar*9Zq&2 zpEw>&ZaK96*z7JAai8S#<9Sxq`*D~N#O7$;cAXU@{l~M z@VfD8*cmUCscf#FFg+a=UsazFBv=IKUUCSw*7<>f?A9D5e?yWio4q!?o zQ|ILfZ&Q&zP_ie`o@R3jU`Q1`Ty|J4dyuJ(dD$pCokLx*8sG*W{l;f-=lt$zkmzH# zSurTvuA#C4274rKCT`m|PUUtX7;EN9%XXKiUTmjjJQl{f&nJf9X+N1YJ~F1y;O2jx z3-x_t#sD7suuDC6V<0;zrWJG=xFCvd0u=sPa@B7R+1Z z3!6yrJ%x{noR_q@Ie&G80*bFv+s4Y8g=b1dBwJ8G6TE>952v@*Q0F{BhnSLlbg*4h z#z#%j56au;YzLnJ zx4=KS*e=CfvNn_{?EQpCjy7CRD?z`5d6%x2S@nwFe)6q=6LmFWu#_E|QF40rY(yQi zRhlk9^_HjR$*c#cdD`A(Krr2Z@+jbJ7_d4OMQ;mzVM9j@5uMeg&&HVh^=K2t4XL$J z;UgB#P}phr1V0%lqT)<}S8Y^%bPQF%u5da)BkfcoKcD2ueGPr@32E+6D;StnHsTriKh)&SN zF^Rwkl5e7x5##sdwHm|xg>En!C>BOAV$z6#U%Ik8R*togk>+q=>(#a4Vuanm21l;| zm({1#^le}QP^^Ggu)KmAw5=jieQ*yZqPa0MA=^ben1jl;#{@(7b#t#_7$)@roAstK zlbF7`3|_vG@KZpt7l!oaE)*0(o>gz5me0lfW1psNnEq))3rwerCz~2cD%Mpq{j-(& z@d07&G0}s38+tvS0vH4z@IkZ$1T-7su>3fBe(|ArdUsT7XQgj)l z4ENY=R!>~Jebu+(;C#26mu~E;RVZXSGWCk=VSb^)FU0V!wE# zitAkcQwVlBRw)D{f&^8%qOcTlYi?Veyqoz}s1CTh$kwKH1EPe5B32C5BC;x5xihdV zkJaiM+BMf*UfLqeFq^lJe)5Ewt5-RMrwr1COpbv`rGcB=P|Y?oxH!6@5(aGweaCDZ zO24<7GCF-z6h^f%NPx~r;!6_P3mnwHF-QhyMLB#4$&Qfsc*wBg`r2^n)lR%si+(8E z`;{*_Y#1TKBJL|#Jk}?TxE9e{d6S5nay_jIx+#!jzuq zFboiVim5FW>BmPDOQD}2D+^MwD}!VttH7sIa@XdUeM{8IT~SJ(`Tk6g+nfE>MARoG zX6acpC*pfP_6KgkaGAyJ;l+_#5)vp>ZmZW03tdEFkuZR&J>Lc)S%WzHu7dpQQ z2A;C|9QTHCPAP1pj!j7x&BIIPm#2noLgR!VRJm(uze`Kjn|i4|{!T6wmI>vMl^FJp z5c!xDCbccfr1GyHHK7FLiXvE2$$2jv^h%@VmVKZ6P>jh{Z-^jNPItnL=l0uvIype>5;d->7s?AIhrIOn$Ua zwPvGMi~*=(XDQP+3}PJZx<~LVeRv;{!uuC67?figHV6G1F)I|CMhs1ItJaV4Ivmbt zmCo-ppe?zUl?y3zj-k$^np5@_Z|}pMbM45fI(_txx%!SiOa{4u>e?e4C@Orw$v|I) z@u+Z7U}?-PBzV*(t<^YR6_vk~Hxq&HH>6S7E~cw1QGaz6T}CqvODF2R5D0J6mqcVc z6FzMWIdhQ`2tR7TR>QQq<&Hy3nL|u4VrsYwQ>GW(%8y6&?)6v|BWiRqI&0W{8#%D zH^<1c6*(krJ^9YBy2Ol0)TCA%AeZQ`mGyP5?LB%si1SGeDQbMDIa8<3ANZa0{>YVqd?gayF4DM?d)sO2MF7u}Op(VTCg%P88gz|K0PvWaAefBUKnLGcl9Lbl;;>Vz^X}x`{(_0Et zSO2jmNMc7X4vxA^XvF;zLJT+}4g6nD8~0;DgW;gbGkP{hYYP2r6R0u;^pTmbYXoe+ zSlP_ydlle80$0zafkbSYf;BUYib<$YMA$uow*8Z^1#}*yNDWx!&7i9JL+S@b&KKM( z-9YOn^*l|obd%XO7@?zzjJXTxsCRNrtR4Q_)`?2OcH3=fnKEiiy9^0?QmW`P#FX1@j?-eeU#bjmf=()F$r(qw;LbiXR`4?UI*kPbZ z-e!}a8%vwMnvIDZN-9^1y_(cv?`PGYN>q4Q+V+_GgNSsATqL=P$xQrv)TEd3r#p0D zp|hM0I4t_u)J|Uc>ahC8i6nK)&oPP{8RGXXyku5QKdr;h?eJuJAV@AlUY0?)c8=4B zv1LmQmDGzYbp{9dfkHSN`|10vwd-1n5dt#HN@nGjnHEP&ej9)ix>0Cg4b~$!h^)mdP`s8ovfKWgD~K+DSRj+kqebyitMfO-f6MaMrI}~ zSaFOCg?fgkh44)ewgPBX<iR(k&)d587Q zDd10vW2SF}ZoxWa!u{z>cYHO4a8_9PS z$r`h~%&$(SMklVRYd`h)yBg%ONy$*ORmi9WHHRz}JEBX&Lr|DMFuYHDyfu^mE>~C$ zOvbDllm`PrhL9?{m5@`b)c9$7R;2mZg*37ZmrCA8*v2G7@)Je5f%uo&V&ct~Mj72G z@Ihi-Hq4|r5n%$}qK}1UO4|(q5kZJHzX`O&Bad zIY{uTt|f>6y9yYHR6@OuU%NRCe>||l7)5A6V}}TZ#UPrkfvAQ@ss1~)U+9wnq`=SZ zEF$dq`CKJB8Be$~ z8E{>Pl|VXnjL0H-Z$)_^5yhnxpkTCYEsiNF6~G2*oNtRsjkaT`SrvN8Gb_sZ*?{)L z($!|^JkO1VrSR{g0O^?F>>yCU2g(nS_44>E#fM}Z30Fk%3HH0y{n~ZG0|aF{neUD2 zA6jH3uAd%{p*tH6Z<3!1MfpDqjH7fjz-Ct2bC7=UBRXCE;G5($pphz2icL*pu}niS zf%r|pO30V*LR2X3&NVEw6Res3^F0~15WOS%qc5C&F1Rl~c%`luUwL{8sGmxsQCW z{pH-ehB{`?C_dEavD7eq51*w0kdRKC%p1C~iH$;uG;i zWtG%k$OC5VUNwTZ!{oH(u_&!g)Qx+Z?3Hpivny8|8x6P=yAhNE5{UlEgSbyXK7RU# z7^M$uE3snpAdZ*f=hx?vm>79D(fN7^T|HJpg@w=SO4~AFMYa~E3H~azCWArrpbmMZ zQlg6h@FEqSvK-MB8M=@u>Y#0k6)vhBwL5>#lup7c)V)B0Ok%NqTu1 zv`Shk4i3kEv3&qT@veNzDRzRO9QOxTVVI@>=Amf9W}IWIxo7B(SLl8R8Q(Iwsn6%~2*%T0QuiPDBSf3lPMNOcSv-)rP- z`;VD^I>9J;otfF8FY0462^>kL=-t z8b>F!J3{N|Z`Y5vxt-XZ#F`A@EwR3B*|#NqL{z*zQ@a!%FmF$THNkE!MlXozmGw1K zO$7ObxffQX*G36SG@4r3?M&M0jjCcy^yT&O}z5 zpK@%!3Zu%uIQss6QprKLxIJfAHZrp>646Y5^M9t&Vev2jY2)&*#TP<#rUjN8hp>x5gwrwFxygFMcF zROat@{L@x=Gjrj)A6g1Id1$VhgWVy>>KH2L*;;PxZV3w03LCNJ&~)m~_E;pNv_MKW z;ROeUe12bvtJA&Ii_YjV`s$#Pmtdx3DBZyFDCXnL?}+usD4()?E)-l5bTUJ`eQc3c zY>{>oLoC#VY?}rB9QWCk|J6{6G^c9F{z_G;89KTbeTw(`pw)d?*BP2Bw*pOgAK^p2 zm&fKFtC9<~)mt5I4-lH@(2C%X*6A!IYIC%FrSu7DjhbUpbsx_m9J65KT+)ikP2L?E zMJWgVc&X357p*KjCZiS4<~brjbKj#8FsI!VPIj5@b^i?+%%t>)L!$^9XFziEBjn~HWJr<29KJCK><1b6IB zQO{SHE=BJH!d(?BKiKZ9G@(-}1tfC!8F~wx&+A;zL3N&Txh?VaC zhbNNwFp~Ae??&cq{kp|>487Was87HvJ3OY|a@sD7<*k+`^-O?`h!WTJ^DEZxB3ZvI z8+1NWYH%q;mS)j!+MdElIq4QSq~#K;@WrUP{e;z9s{!MexK6UGR8h%>`0*|OG?Dc< zTJ&jxXZaT*zh92_kUx=FElYHLh_Oa1+#)JJ9$WDvE-g%a9Zabon z`t!aw;{*R26-Zgo-Zo7U*#f>edRXFz(;Gj={c`k|vL#oOL^Jp$mto2g$2>_@LE>Ek z^iB=(iuW}1Pix9Iy-Jy;9y$;F!Wpu6s}ioEbw*M@P;?NRS3yLmye9$M3~vhB?Q>IJ z$5VsKe@?BVg-}QrMy&WE#6PqB5#Fyr5vwz4G>kwBwNB-<|IAD%1~F5I&NxT1+6Hs0 zC0{RF=TJ`Bjo_9$ zS=`;n(dvH&VW)rC-7<7SymjD^p5O#4>>Lg`QqMLMR<7Lp)qj|f9z;XCA=>h$*B3(q z&o<6neppx2SKT_qHiO5QJm^_K#^t5EyI?V>cv>eiN*O?l*d08bvGb4 ztyS~Meu88y!%$eDKEv*&W(s|>PY_*_3LvsM5t0byN)e2m$tuIb7XB5Sin74w+Klnc zLy8du=FLIFc#n`oe`qY>M=}1`iV{MO&+#6bV_8*rAlACpB}hi17?vnjP~`Zc0fJ49 zu4+c2YuxgC=F(GND?!?Nn|5))H&6hQm-GAK#Ex8NwMALF{oQX;(D+`qMLteuG5cz| zQJJr(zM>6?->FeaJGyQ_@v#&~l(erg4A<~9c`HN`KgN;U7mbt-DhGGLf1AJfZU^5o zZ{;ABN)z4ncL5Y|RA5$51iW}aon!7M;*drkw|Vy5+kPXc(*C^|E-^1Z@x7AghnTri z1PkKar_rU-HS$w(@C%Uvf}E~99+0^ z2+d_2q9~x4r|E|FkZyGkJbz=&vT~Y77=Ps0j-1nu;UKDXGMBdvs!LHZdJnKlc`I8J z8!EABaj;M<`^fe+p1UWG*wS)|MLfWwv?pdM1qe};BvV#`Nx)I3Ll0s;HC~K=wmT)? z3c9_VHWU3+>?;3uOraIZM}QC0RqjBCC}!xQ*^sx=Lgaqhy+e&#KI7$eCh}fkgAnq~ z`A$A&dy5h?_9#wM#{S5~m?5NB6TY`K=G}C9sfFfNj*Isb+Zi>WqRhl-{Wj zI!l(HYJ#5nk|Z4SFP=uW_A_HSXHj*~>)|=>ej_75lT8v*;g6F^pK+rb;;iQC+L|ZohYDIXWCsiNQRHwU z3v8#Ql;Cy$p#V+l&xi)vJORNHSd-xU9G4CtZJl2A&`GeyNX4PyR0y!@si+N8{kTQ*|vBj`P0Mu91S1r77)yvBHSw_TIrRV@E%*0@{|< z1;JOG2{4q(@b`%sd;L@sx$d>$`CZ(o$oX91>+nwIW+xF}MAM;Msa#J=kg#MW4aM;7 zV>bL7X?F+pZnT&6MaIs$ja0kc@x~_dENhyI`j1UltO>5>ia2z}&HKRrU#4r|s7} zRx#Umk6V&>8w55s>DNQP$7~opNUM0*GexDRR}aw`MbP{Ufhjf{)ME=NY6J)kF-y3w z3emI)zmKY=)hvY?Vl?px3P127l(Y>C#%4z{gc&B|shYR;33+qXAKHOfW1;v3;n)o0 zZ^if&0&}MeY?e~&)tGtf*|Z+LB&_FyX~WRGlBXH8;3B#YN_)@98J{Rq!^5e>qBB=> zoD9h1qf_x$OgUVGewcMOx&?E${!(=DbF}I}VSoaO(MHah3(y%thOk+SI&PO1roE5I zw6cld1lC1`zW8PI~$M1)TqZb+gT$I_d|2 zSt1vm-Cfsxo0~Spya{x9`eo2>xNs=lRaevy^V>29ONMR^ z9vv0EbVHL@*q#`6e+d?&{QL;rTTR;>j~n7k_C({Nd3=U=F%&N@agmkyu|;Itpz#*d z!H>O|f2U(yZN;nZE#d-X9=IP+yn!*$0MonTNSOr0a_I2NYGzx-FPSK1$P%?^3v-AD6IQZ)PrDZ7A1@s(l^N^$!bp^Hc zsj7uX1-~Xk@zk*-ikSOxF?ViPYzvc;LQQYOEL5EoNARV2`?=VKztkFb>h{+Yr3#z1 z46_FvVm0?mkk8!uZY?(07?sDX$!!sq6e{5hpXAmGqas{qwGnCOw=!yJ5|Ru_$Fx(X zFglN8%LmO7UWtnJ2{~%XI3{H|CLiOqg*M;Gq$gv;31nnd9X{Ta!9lSxFdlA_{@lM(Bs(y$KDvk!%w zENm%M>6{-r2(Uw0w^0S!B4iU2C>^m&&>kA!5;kaE{1d=~1{LRgFT>>0t0XNWYTYB_ z7Q%52HpI_ii~&S=4yKZ{v|l&ad(WzxrWWa_#B3gpoV8H8EsW2h|828`#qU-i*-dg# zfY*GqO>r86h6jgo(^2uNb6oj4EoaoU;10Bf~)qt<$e)l&(YcG)aFdM z!c3%}Hz#!;qKd8`xXB0izh?8*9)Vg`FVZ|;9=*FU$%XdqOE|z zHXhKEcBbT8NCzjmT-8J|@p;C@U_ zAtQV6J0C|Yr(L+8T{$<`(%U~Wz%z&0e0;Wg$hvwUytP;SZv>I7uFU*8rzA0bzi}Mr z`VpT5#UTt1KyuxyhhSOAFfG?Qq<9^2D>ov0fX-D)1OlZLP;F2m zgSMxW-;=oy|MlQy1}h2+bL$eeF&yj3myC);WC*u(@HNvlUqub}-6`JwO?nLv`y8AE z+$7K}w7!^2-$IKBo;TyJlpR06?$yCx`6CX?pH$f{%deJt{3)zQycXUrt2rW7WzvB; zZNwk#JXc%VOiBW<@E-zu`~BzXZQtuS&$BUAVIqH@1!dc9J)K#W6F=<^y=MBM&2DFR zR}a!uxZ~Fr6>)KQA{E&eFi#7sR%Y}piZ8uxZ%`-GK}dV-Fd@(Z&=RnMD`;>q=m}D? zDq^Bv^sMzF%Whotm-_2&uWHBZ=w|AmZHimF$eJhYBRM5tGB@T28BLI-^1tg2_~PW9 zzP;lbvC$Al{*JE7BRz|ULSO0lnM50D6b>UoN(u|95qr%LW$Ij^dU|h$k>KX!_eddK zhGXeN!uLS?r(;KcH&5{4UeD-nfyt%>ZJ&FbRC`5s3X7Y;xYci}>~**L9@9d)W;^5D zdEa!F)&fz1-o7qxgVoZ)-)IVE**VW~Y&vV`Cj>*U+G+Q;BKHFj(w(g70jhWNV^L*o z$f#QF&)J@(P*!VQlxCS{6Tde{k`($cLn)qpXcH@21X5#*W$E~HVgsk~un@mP$J0>B z_59Ky1r-Hwwx*WAL5gH$u{RO7C|JHd#_AJC3h85ph^STcq$H8JOkUX9+6g~vzEc|A zF2;O}Pry6qt!P4vv#fFD*ycVW4bY!WXFwa(Ki!7?6m}xGl=VcPKf7LdZo1#u$mPn0 z?4cOoN32>?Bzf1@W=&COG4(xW_hDu_Fty7ngku2e_p*c5^*AvW8uTfXBxh@9ZVr}U zfCoH98h)DR9-)b|uL$H{5!e5wz0@YhlV&P^sY<6?f1-Umb~dzy5QaJJ%qmeWj)A_?VdUt@)f z4Qi|iX_?EWic?$?4WY=r-@g01w>nVGvWlQ12pqccu`91tLxif8FVV?jN;^^*YMy0h-~{9fPziT>Zv3 zqc;D0gNyp4Qc6J4wpLW1@~`PCS@}M}PueCloXN$rFcrP90p$fw!S;HXE|XF`J4Z^{ z;d^;MC|XAko5sI}X{ydvOu3hQS9Yah%Mpx9pND$*r^T(4s&;APUUEN!=8d?=1Irw! zXxF=~fB!Z8l1~<4%tPo_zEn?*Kzdnkwo!jz_)W5N zxkJX{{dh}OIgQ)mNv1l~M5=GlZFri(leeMmd6Y#_fgokiQLXzGe)^qxHx-J=ZJOfk z&auyKxnF{v_s{KvruwKk7}koPn3^|QB~8Cd?9o=QEBqTtnPQHFMV@w5T?EV&GNA@O z$zn+=QmW#XbQro6fQ(TVuABJv33GO`h|%?`xB9a=k4|^n!T@d?*^?p{+S7O@uV~xT zp)@`(I@Egoutbia*UWH@L{FsK<`w$#Wy7)BV)O- z&*V3l;I$)JS+<@(c*vvR)HR(svsOL7az}c{4fKMjweBxLWZQO3KTniSa5gH{Z~Wox zLYQruww*hQ0*)G778_Q{l3#7fs`oUF^!Nj)0b?F^*-g1*AO@jS2SGaF~30V5{m%79+7@WTSP=evcwBZ2E@6T zthll3b+c<^b&_)v-^t;%$+YE!)6*}U)U7_7lgaBos~)JV1C4YVf=7d#mdmH|$3onA znE*z;0~JsaalDMGzt`BJ6fmF1wr@Y7dl!@5p$f-GDEeHtSvKw|HI}{_`SgwU^}8C$ zFe~Ax38H8UBfl~m(DGuOJ!Me5GyUs(UE;V*xUqCUnYd>T8?I_=AQnn!dnsaBrDSQM z>IS?TG3P%ra0*~^Xm^0~r?QHv)}q#-3NBlw`FNO-C2$&`Ie0^!5~jNZ5iaU5h5P|4 z1fFh;a5FCu@qQ766G@iVSUS6Zvdz7X@Qe-eGZBAq!W)bq$ zH+^m-#YOG`>_JOrbg}yzK7Dnn05tPh2cL%b; z(!?JXo^lhIqxF}0gFn#ts`c=zd}^3x>wC&I69J@@H!+aFUVsuq6J$MCxb$kMDWE~M5k!gbM?iUT4n1~X^Xl^RMy>0pwW*q`%yg6L zO+yifl**ZUUH)&4j+iS+5pHw)cO(thRyO$8>MDPK{8gt!hj27 zxMUi(obJSNBnzHLFO8oACkxTc<;z0TVAUtspS@L*s3)qFrOAJCqKfR38y=zdj_a=X z31xI)<$SkAm*Iff5d}abr4flEXJP}X+v(y-u)F@+7l>$fjkDxs=8BOndg0AWK1~?g z6>O*Z9U%XMW|se%1OQ-%g&7VRDrMu_Q|`A+O*y%9e%}`UW=#y$ zP)gY`aFgthfl$}q{3V(Hao5oW2bzAoekFc465z`9jSVV0cFoQ zk7xz?^@m?>8-(_WP}Jl`Gus6S7eRtFmym$M!gPc>s-mg~W;S_YRUB5y-w2+#W^>An z)i&H!7{3ZZaLXQZt}MM5Pc^)7jw?vH56w~_23Kj%p!sdNEtztnxM~cwP<5y>dS~h0%9GvgXc@RqFa&3A%=B2jMrG1&Ay91M1+zwXc{)hGQo?^ zUznjAGTfS$Usx*su(gv{*zVJ5 z$W{&lEJzv|KmFxqb@JV@3b3#OXRo8Q=#rA8Bq>jEng|>|yCftmlbRM_1<5CyTczWs zPoat!yS@q!`@1a{&azc?D4@dvO1DJ*e_d;SHjY%bM=rku08*DN{XpgMkdDf$Tkf?G zfSz#PC&EltYBi#Rnq<=c$G30^y*~R{binm&@ZZI=J%mX)%hz>m%eT5?ak^3`r}4Lq zI=y~!i)u&kIpWA|0|OS&+L)C2b)|AtYIE7LPU=BNp>8HAaA38>GDRR*_3b7-1h}Jj zqK_p!mH85RXV@)h`VSi6vUr*upo~IQl}0GJ`nKuWnEmnB)QJiZ&~N<{6QrTG_wLOT zq#ZOWOZCyPWAKn=hUhwYljwd9cy^u_4OHc;9cCYgNKa`ia!twYroC4SHd5uS zCk<=1(`<+$$a{9r{8YiL9w9X=CZf1mPOrH{bA$rz?pvi#QOPU-pSvCY{i$WX@mKwz zpAl)If>ALN)aoFS6uEV|r`Am$k-$X|`2#}-#a=VAtSaKh$ywy`bV3ykmB)Y5BDlDY z0t`p?`F+XjD|ozAX6l!YB5=b#Q)z-T$@>-(%ya418AkB}VM5vR*=$8D3KH&MT^wDg zw?2sq{<*U)ojx6M(|8pYaDa{H#t!m%ydmPyjwJ@HQBr2Z2Z#ZXvPU^h9qnh1oS8H8 zwve`Q=PXsq1#hXYZFpGF)7Fi_ybE=4;}of#-?IN!xq4tpF*7X;I!sQ2pb5M>Pj$K8 z$o*TBkS>g3FJyKtfGL9^iN%JBrTCcy=C!b#Mdlx|6&av05_?jY&TvlRWCL5&cv7DB zvqiCsN~2!NhYjloTe3;Rwa#&TCIpQ%Mwv~iFws@n$#?zV@eK9?g_Z0k3{u|&1_4%< zOLlt$>nDx9HpibyBAYr9HuM1#=@#I1dqfG4YOjKzYqT6cFkfP0gA7QbOSeY4oV(7P z_iMcmCN2A?QvKt4soq5$sdKv7%)|mj*nJZig-M`+6!7F;E$IrSLzuX3aIpn;#{4NE zBp@pD$zU3{t7EGkD@Cp?0NBjFjk+*V?Vwol2#m6KOetbq$sRH@FVVyAsRvDA;6S~Zqg83PaUE3;BLR2?)UyPg^? zQN>e9GQgx%t@aT{F7)(qQZO+4rKjSn`I*o=%iK3brn_7d35A8O_o$?G0hQ!3bQl1m zwCn4o%fzLNT!Xy-XAK(YEy-M;VAZ@MhB)U=tUzs_Bq-3|Y6B0>+|wmY*NW>Vp*5BE zZW4eL7dVEf&WZhk;0`T~@Mr5)4{o9Enx+*^@~x;E+Eo)0u) zi4q@WZGPe`@2R0NwjSY-H}t}Iox26oL*y7iDq3%}ZGWs`U1q+OibSM{KzC>awIZ*I zNZ>_`nS(>67leKVP_*W*=#YdFQb6K7Sf9muIUM}h?1;-mAOmC~1_gHl(?jo{TYWp0 zv%k{DlD4`a4MGDl0+0aKPY)>UwX58>;T`up- zNQ`+hVkjN{zM}|Tx0NctWFdGX~6) zY-3=*3JhxBIIHrP%_MkIowy`DW%V}4kudkZiX@l0t|-Ne8BE{OM-=H6rm6jSzChDi z>&wM+tw=}ZxI{OiC{)JLzQ4J!;0m8&mCEAn%$_bn;xpLm$OnNP1LWzp9PvLf7?v20Wf zDtlECR1oKkpnT6$Z~OhIp*u%TxCl$11@4xuN|svKyZXobaHQYL6)IaPFs~7ZD9gbN zz{YlLoE%_Qn1OWRN{IEtXjJ4B7s@w{s`k_&dG$NF+KwEC8=Eq4kBa>!Q7gD8&xbAh zc1|5Gyj9-S#avYNhvz(JUyiQJy&I#-n8hGSqtu^@9^mMQ)lSV?qivyPl0ep?q*RCG zv2`r=Arf<+wUdrqd~=4oTlFD8s3?#kYEdCZ57u;;Vd1D9s5bU4lF8yCOEId{y2i41 z^07B0ep9p2o=CPDV9q5cIqRZcm%Q0wa>N6CP2g7&^p)Z)jo}(0)VQlq!lmc<#^|;p z7_?l!``@!j{UeOHCS0>}t{%6|q%1$y5ZYLeNl? zs&lGYH=e!d75J$tGNBD44ZtceM4k5Zg%-hx7&(au5bLKPVvgYQa6TF+uV?1R0n%c8 z89vz_I-Rb@QfeVm+j#Ka8D%oLsBiW1=TH&fcea#CFTp-c77}QAyn4e3(@t4%P|Uh_ z*?B#Sy$JlgCtASb?bw(L0}1vy`)t;lw2oeMhwjqWM>RO1WOIH2AIkvk94L^fXkDy* zhj4UuE7AinPq3qzx2=aXR)&v(yL)L>IGR)RId^Y&Hvj$g{HSlXrC8aTPxG^_iSIhh zt#kZ102Ixy|7)UIEfD0vll{Kg0kal7D~!*~&GM_y_EZ4)I~tX1`q>V*Z~c?8#OGUp z6k_2Q0WPpTk;T%sR(+~9>W>t>Omrc2c>L}N>mL9#B9H_ zy8ac}zF?0r3M18G>7Znj7ioPmPuU5T5KTGYe>R5I0pyCZo{@DAR=YBgU7~9u2saZ) zk4iqNV>Ns+)&>PA?Zm81V&Id$*=PKfSqT-nw-$-I81k^;$XR^6yI&fnNrUG)*3#(0jyS`K{-LE`3;C*eA)i~+=;FGE1K49v*;JZ z3oR*KSuT^)AZ@;B6zfkfY33)1*_3vbUN~g3X`3?VOeeq4!$B;#kJbIRW40+abA^C; zu?IR;lopusd$9?K?l-N>SLl(|m3Ow|oK&ocp3^+AJK6 zeM`Mg)CSN2(TedbC_MUT>wjgh>DuTQ-l4NMV4M zF#Z6%&erfv<No|MI6o~_p)(4j8!fY~z4iApka!1f;Pu*#=UlQB6>zLrLl^zxdf^u1sRb># z(EfRcy-S3hVk<2*bf|)C1AZ?F)Q>^O_2zuRO2XAtR`Sg}o2AR7U1o zI$GrwG$~5?dpa<;%Tf)VcemhrCsFJpgaq*j(&kNDKcg3P=}B)gX1duej$`XL?ZC1Nv+AQygMQ_RReji$|A zd0Vo)_{#zSdSuBB*KcUqcU3u2qFHDjEV?T@$AP4Um-K7aAgbaGsW=FDlLT8?(oRzB zuA}*w>c{qPO@}pPR;AahrRJ#!M(^Zi4nra#aVaB1GmmosU@du9@cq(GN$zX{1^po6 z{CWVI&7<*Npe*ci6aGuh4J^StS6}tvcr726qgd|Ak_gZ+9I)8_xz@X8s5x7oJIdbJ z-C%c?x%skW+T3+4?FU+)*Yfjj)kyK(Z5#L$b)-l#Co-TwB_sL!khd1b$C6ucmK+(q7F^4N7&8#q%bHO+Va@ z?YVQBw|Rkk?cFmWYqp9t1>Z$HU+;Zro8)?iXZq@T5D;8}59Bd+{%Y(hBghgak|qW$ zI*_>V`zr#mRYzJR7oZ+h2O?5Xxmh?|TXQ$`SFRsyk9iR>ZQf+C$e5JVrOw#p;d;2R zgYfgsTOCx90c6)2d>x4EmJ=21b{JPpv}Tuo`?4J3IB{HIMViA@bIYY}QRv^BLhW(6 zt)phO6X^ms*I9PR?Q6v+FItj%E>oCv|(IFAN{Ma zHb1Eskp&F$g1`))Yl%8MOpLKogv^Ibf-JJwa;>lKrC6@PAI494B#-q+a9o4t>=6Fv z&fzMV|1>(~TlUzND_(7JAW(jxc)_5~)S?(~5f;9A#8+*ttl^6j1EeA?ZD{k~xD1_y zOJoez4PVbTM-c{M9dkcIK3`N;LvX^hW)JllPDJo=PA1`P%v~1c{tD+S-A5$7ITP9R6^LukiChOJNl~#OOdbo0A&8Iwgd9bF3wmfe zRUMf|zK;lu_Ve=z&f0U`ECTHTBw6uS!fPbc4{)BVpG1l1951WV9@DeMn6S_wUhx!+ zIRO>YZvpC|o7TWz!-+kiPwxmo(qT9259^x%3pC!p8vgWS@{Wz{gHI~RK#DJ=tZ*3} zbR&x_k@FUFXpE1P?O)fWK*G;6(Rnqt5T(N_fO=GGY{hI~7 zj0xJ`&U%Y;F#Fv8)j3kx+6PP7YLkdpRf_k;;XUgY%e?=hEfGUkjfq7v2^@Neo^$0u zxxy7R8CW7Di->^y5}F$PKB`m6iO_{TGmj6sI^V;*C@Rd@f{}zeq#^?U8_%$Mt^nJs z{VQbxN031njc(r2mH`_ry$QIS5Ua`qQ`6h)ukc@#^080_Jg5LXI*B>$rf#EXzPxa@ z(rY7{z){I*WgF{KnRRgmZGW|$pa;YB3cI_$ShbG_wR_4aXyRruHB`5yOv3j8S%Y*$ zJ^(#|z_1yRPnT9hcB10tE%|uX9(VTe3h|TBoUR;}^r>m(*su_Hk4tdPXHF;U@oL<# zeMyDTXW)o|14M@R!}vJqWJ%rMdqKNWa{%3vL5u`#>*?d$T{#q?*V|&R|0SV^Gqq|G zB*q<*h%Vvpiowv7h{OO|l=5DkJc~>cAOa>e?R+&^GL3X9auJzpo&k=tJ@8T{l0o(D z>3PtH%)BS7I> z7%$uf0MOq4$X>a!vq--bL)aAeu(Rbl`<43g*weKS#arVR;x%{-KVet1fFJ?^4DFMZ zp(Usw0JGPXeF1Zq@a;Aiu3N7;fNnn|^f-Zjmv@6vGfZ$~;S<`PCIus$P6@W0vooL5 z+jwqNATp8VEfLBF{D|rB?_@^ZD$lq=WZ*Y+{!(Rhy*PfewA}16+J0Atzp2XU8x+WK zA)UM}h;q#WeUt4w5%!C`c`nzxdCFrVw<;VEp+P#JF(#A($&jV_;vj-0v}CBBb=0;T z&=lHcM{?=b|0JABVeC-9cZE_}h7K(P!Hs5s9lK)&k0%K)c-Z;s=+-8H@6O(B5{2qA z#)8>uWLc6Gpfd?6rbnlLm7Ti}zjE9Op3aVdgpn#g_RXB75mBoT^T@QaP4b$XvQZUzgA&Z|R%tJy42xvT!{7kdlPUM1=^eon zD5jV6=YF>Hzk80+=rG|Uj`S%vqA^D|z?{2;W=mofP{^}GqX;#X1StzWn0J{01Z9Ln0HN{;#(Ql{UM6e*I zzC7CDgSr_$yS_=vkFgo~F8bAeE&H67z#jW|%@;}pRlo(|wWdKmAm+rz0{fy%>Blc< zExGWz#;9S7kG!#hKh%o40+i%^t@jOtIF_>Rlkf}>c`w~Mu6drKg}8tLra6sNdH4bW zDF{MHeQtONeH{cu$L2vpW2qKYEfok^u_)3%NwSfe#Syhi!p{`Q>l|?Ga6Pc`1FtYd z&COk!1b)*hUnd6f@~{zD0|;12<$Cu|_Q& zX?*tEMF~8LPR0;(-QXUvHg92FSM}cd0D)m8xfOYxJ{#Vg+r74_kfUh^)TW}l$l0hD z2oPkk5=@#a1fD6M){N;PvU`UuaRGeNcw_pDPOc&dp6#*-r1>KSb@m5<8FC^zF7P@>Kd^|B`1tXieF z^w|PNnb=Ns9Y2zo6YCJJecktr*N)>A-At2tiA|$V?X?&6z?W=;Xn?TnJBlT`y~a@| zrXF)c#<|R}wG?6hPTQ}h!(BBh>=KtTAL#BsM~xzo*@aMcDzUmnSzGSrUjM{zZ_c6X z-RAwi$Hb#SxY67_52VLGFZMAG-Cx}RDik+>dQZ5pk4B4%wuTWR;xBYB1>|P76z3T{ z;p8p}&ERynl}y2v@Z7E=xDW0aODF(C@Vbxm;5WmXVY7WKQnafFd05kNx}&16qT`W~A&FDhaz_SuAy z^PUsfThT+4f*WG~D;^oa`W6xj;3r{r40g(0Hwsi3K|U>i1{X}r!JiX%eiWi@eH%nz zr6g{3IR-m9ckV4$3yUXBbtWy%CVy!u>lC_1H-=>@#QU_F+s`EL28jIp^hWg|*90{@ z9fM;@&*QmX#Ak+6bN@1XQ{mU;w7-`+T!7~d`$(in?c%!y{`YCWyU2G;G$Nqh!&~N( zhp0pt%Wz|3hK1*qER!@1(BA6wb&h_NKv>}MoK(~axux)K^|{lzJF7PDN-;EIga8m+ zi3k6k5$`ZN64yAmRv_n937T~75tzn~^t&0ga}l}x*MdM%;eolVEYF*4u?I6|U;qY; z3;hM-XKbVW&nxxsr-AR~CPXg{<}&lOiL0U@YF?aAa5SY_lQVb(~=0 zn4_B5(}$o7iSxeax3_QK-$AC^HiC7WwxMp`YVVIXD9;wW&- zXOgGp%9&;gb3uBcA16@AGC=sFLHJ0-IxY}So3rKFQ<`g|I)68^%KfEK}d@J`>f%WIprehnk08b0KIl zghYD`7IIoHkCLC%R_vvw`rHyIa#`t1ON+R(>A#7cY}%U@M5abdbu0N{LOjR;h=@%~ z`PZ7t6{hFbyS}p)Ka#@S-x1x#YqDdqeJ_Q$X#nSNkrX*9b?2D!V=O5P?NjY|9FBh) z(L}}kDznZ?Pnfh?20$qw6?W|-h3RET;syhxbF}yW)dPRi=0HAHD*MyFK!AyxVKi{a zy79;J+TP3VQ&n~Ke?H&P*UMp4SrRKNye5x%A@}bANRTCya884j*e5I7{-Z4^Qi&|` zzv9Fj;?C3z9B~-*EQ5tJG_#xTgS^e9t$C?PG8i23Gd7S5up;3N+pQn*dNsohV~urs zp@57?I+HQv^g4pS_yFbl;N#>T)ByQMjqoLSxc}_eU2BMzbxG}hw3L0p8M?@qQWW)W z|I0^Z>N7SQV|aAQ)jvGvCKvl@ll9zzmB(=1)*M)pxMyKMUY6Dt_hxCH8Qi3jtp>pb z>G+k7l)9pu8>4AWPCPd&WEu9PimwNjr`+)fWh7FwCgU5XpF=-S^taxscue~#XNeMM?#lie6f60gnJ*e*z(^7m=}Bv88jMZOV6G002dg9; zQ}$kTaH>vXM*rn2nb1qw5$&JZlGITYb+hDAycEjUyG`9?a<@IoUI1Qo2|< zRyc2EF@cX(u@lk_`0J`$DA-!BRt@Ui2S>lLEGhTF1MvHQz9Ulnm_AL&c<|RGs?$kO zWU?NO;aciUA?HFL`27VT7@i(mm41X!mC+;-GOx6eC}&Moo1~qFjm>6`B{jDtnLs?Y zV**nCU+?8}aVQO=2Hjhl;Om6Aci*aX+qdPl;|RRjBw3af`UvnK#mLuT&Z5Hh4F@oF zIAvR&3kzr)xPB+iV26ro2xjFecw1Wh=YA^^Vk!^Ut)MyJJ;X$^(qL76uTqv))FBYP zpOpDZlp3xKZqj6WHDF|sLR_S2f^W5TS&NRq&lhl|M(B zd}%?4<#&29$cK11pA`}xajd=@dL|c+T}tXMzQZXvkpIrVu7mi*>Jf8*#a67&ZBmnO zEjwh}XCpKa8cAk6D{AyPSH-0XrxbFHkl7irbohup-C;K9vfUuY*2CCrEHiObJA zNZ~Kr?gVA`RZezB_QHCWM$*m$ndxHbQDN=8JLU3`ndtHmqhu;gXG)LF!{B6g&ng%3 z*YW$*((EDt{I_yFUC2U2Mi)B<_XkWlv$lp3%GuMB9%)Uq7Z;~uiEHiamYa92)v&B3 zbIvdoX!m$zt($%@b7GF@VR6EVghm#*-Ff&o9-Ckr8YH^J%kpdf#K|@JouiK@%88vx zgDA0}NRrcK!3p>CbVT*Ddv<<}{)}C*%STyh;6}%5k~l{T-1_&h&R*_m0$o$=`aFU! z!Lc-1*tN@h=O48G1#%^Y%J`HKkf4H4WS(TESV83(q7EJ}o37v_N^6-BdH|kDmbBex z!?N|;51*}0o~ZK!PxYXd|C*;=CYy;aj0PPl@2W;dLW!PW9ip`x3<-GkzZfdUI^n-9 zruShX!*b-p0ASDP<#OW;G4DUM3oLf6udZ4(Z-7CiIWWKW@9xx^xA!;ebVJ%fm99;9 zL2(_uoujPc_fuWj$I?GicT(8ZiYbwD(GkftdshD2eSL>VjE=#XsP^mw7~kvyElb08 zKda)7#zJfx5D83u`(`-Z*Y<=p1KTNI8Q!}^kcUC!zAVQlnO8(whj>7rI#IQeVg&_! zSr7|hihyHm=7-wv__;`Om3Jp5ALagP9%BCP&@3;RY#%-=ySL~ZUrBw)pzi?@#GnX6 z++PDO|}`02HH#~pw4S7;*!V|qBwLr4|f!QXGzpEMwW z9>@NK_-U^EXxb5%%Fcq?UFRlGG8(6u411b>mGUCznuLoqsE!`Df+0pJJTRzH@5BR4yF=NP7f0xiF*-I8s#`}~jVRq598 zR!w0#KM<^M!=dVb(FhFM4OlC+#C&^y5pVtsGqYR+qKmJTY%%40Ph}@GSbY!lF(RkI z5|@ZugM&VjMbjLPD)^cRw6gny0af*s@v}K{Bd3(W$9h zh&r8EW+lJMDlSK;%KMkwSJUM_tQ5)5I!^WT;o3XBK6LU4b_SH6mcr2`q1g%&H}!{j z7X=oTEzZ}p{Hr1 z#}HCFFrS!9b(!hI9?|7ws^alkRZJ$1P{q6(vfQPwjs~It_E-J{^sgtMh@j&q3=7)& ztSV{*;#;`!XuNV08%3jVCk|?54^;bpO-7c-*fB!`DtY@Y`qM(uky!QFS|+qZSQru< z$MIwt2|tE@o1w#qKUdpDsjOK!5$U z#dHQN$T>cmTkON0!^Of@B_q>n=8@kC*KG2WHfka!emq`*3D~#CHDmDZOn-l0UjP_} z{m;h9;pnhouDZvbFb~X30|8QeAyf7*4#|WQhdC%>B3rKPx@=i}K-UBubQ+ znQ@ISw8!x>z)68BUpz1Pkf9o z4p)cxY;_$NsOvxd-u}F6JSWWQ3jT%`A^PGZ6G8AKGn@t^S`I`E1sC|e?Fyf|H#l@? zDyAOF(JUAelA+$xK2#S`JGn8NJ z+hSkNaEXrN z%cgyep1o1tg3&L6PS4~xV-kAh)W>)42pWzrd4?)7;Lfw%#w&W2I`xmKRmW`#gjyX* z;|UEr_LpJ`NdCd*p;;~E5_(g?^Yuu}?v;z`Mlz9}0J$ZX-z9C;nX%+eE8nely826} z@HiM<#J_<9TftM6(sD15;Ilx|;8M+GUC9k9#KEnRvle8orp7>-AaUU99~S>JdG;#< zb#--RG@o%&Kqw!=R*Ese0S>2sRAyXM+;`=!JU%z8C z3$^Xp!{T%RP;P=QfCgsI8^^z-Bu=dHmz@RYUcw7ztF+sU4_UR_RbcGfCwmu$*-Xsv z%iW76!)M}Ty;lEJ4CIu~t<4+9`XP{CwKmXb+va7bBcdkE>F4~2AYt7YHb3f-SpJd*m`GmxFXpK(1c2k8YN*e zuh*gL1p@A(+Unz}G?juskKgFbxZdSXhZvcS$1e&7X#8gFeh8?1SUK>BN!{EY$``p*Cui z6~cRF5jus|GAR-@zcXbKx_?B`GG6z8yz4NwfsOTWVqY0*QWM=rurYRheccDPE^j&x z5VyL(0p ztKd@V)x?ElC%nKV#T7?nzEkTeey!!%^&74G5k}paCH+FTxvXfovN!n@BD;(GC)S3- zQ52VYG7tCLpsGe5YZZj|km$q`qQIa%9JPd84h=fH9_=znL>?_ek9QNOI;_YyBGtvq zj?ips`9j5$FNaP4*M>1uK~CKuI`fbxjMvOHo5T~0CE)>me}Ax4-8-|-3O;RvU$g#8 zWs1@j#*$c&-@%LM)f{21grW}Mxc#v>BCr^0=H46^t^AmGwbg!8ANW?CrP^jWl?DcP zPr#Y|YtNHS;z=bgJOZ8mUyR7pn%qhiLOvOJ9(htHzY>|^I@@~&TZfP8dVf{eM{t^$ zM$RNswGv~qA0GL>FGe@xYzb4 z#8fDkc&U9@jl5z^>ccxl2vzZJ=-FL<)Fj>q$^bRmI(P|#!vm@y^EwA}ScP%|^%yzd z4pSZETF{q>>g`!&v_P=w2k98F`k*}gz$ECvivu`!G(2`XTaA})@+ zs_ZV{RddH?YBZbVnNgP}1g0ERF|w{4;L9&;>^yi@n>n$cV?N5dQt~w|mMUNfK{C(( zfzTKH{jpijCQ7RQPu6GiC%hI(rMiXFj?n3gJSt^ED?{ZNMqsTkyaMO_5;UiHI|PU- zVx|?;Y@QjeOPBI7NP>q>PdzfU!xQ3@hZi`}5%_+WuiM6A-1lvp=`-7#stpVyA?nRW zb2(VJP9Qus76SXp${yBWSJ!)gAP5Z3Wwg?Tq63^T8nuR#zs1BDun@1^p)pYNuz$g#5(_ z$0F6TSo8YB9ACvxJubvLKc9A*ZRv8;7N<2#qC%}D+!K^JB?*&@4z1k!9T*UZx%mD^ z(>bt5)^<_4V%xTD+qP}nX2-T|ci1sHW~XC2>DboPJ2PMXfV!@O=WMOLZjB2O2;wjr zQ-5h@^1?T*1rQDvy}YID4+}nHhs_Ftr7;8zLN?Y1&DSUkvPKPrcODSq63?GBqO66s zf3kmW3PmV+)7=lNzIRo7D&d%(Bye|qTyMQw?m=%R+V$ z_49QCZ%w`OAEuL8U{dh)c76{(K^F}A1bpfukduDhTZD*_bKD2;zYjg$PAmI?nFJIf z{`fsA{BLf2vyA#Na9cSE=?cmx7$#m;9N(|Be>@>noYSzH>QN?3dn=UtBg@MvRSeKJVWQsng1%TlG~Y9GL(lv_XUNHZQojQ8DNYx`&wg^@W%$ux-ZtO3VZis=wLlN^RTh8 zfs6qpSvk2x!8hys?V6ezXKwrBjjEa&(BQ#A5m}m?EE>DNMV3@*;np#5E~L9vfK*&p z&cSKS0>!k+XnB``f~Ya%8)7L2MSS4y+*Ys6guz>if?6bKCMRhW=1WXXtP=jg`RRS% z(5PUc8b~ghE5hw9J(Rphl2s!ai@ls?4mKGj#7I%MO)OHftv+4{PE04C`0>TnnOj#p zEOyC1xy#36Ohmp?77B{SDHI{g7+zkGICNzOaR4d?;Hw**nNN$g_Ur(nTR+`u-kjs{ zFjdJg;BhHGKi{$A9S9cg2PTSCwMV2CRKTg{mhX8zAeaRRz3vbEdOhJ{XGbr%QI6Fz z3P@M&^1RfYa-1#@cn89QERRQlmk+3_t<7az$0~#IMHx8ZJI6Ien~6Ay2Ht{DZV?$> zO=v1`@k;Iysp;mqBDs%B)0eWriDGm;+?$4Lj*RAjTGuj)i@Mw!X71)B*px%eeev$` z@p*+aI@p%A?Ft;G48jhXBG0B#_*8c4v-00OzlwyH@h@PSJZPgh%T|MdVzoC5E2Lk-yB zwtdeT0NlXxhvB)wsQ;@R$oK%F4wd*W+3O>ofLS+S05~>=U6^1QWMHj)!W+4D3C`p< za`;16)cCe<-5UMO(<`hvEoK zB&S4sPR0bFmOvDx@Lj}djyWvBY#rd9TO6#)+|g-fZej2*U(9e*KK<;G4Xt2KblN9u zlEUpKKy_2m+Z&Gu7xx}AKlKX6qLKhP@1O|m+}-6uVxJ+D`&czM;k7040RwBs*TulW z?_4*ltW?vaFA|JvJ8Y1U*J|zPXavUL?ruL|!SM_{>bF2@d6}QOc!)B$3OzD3U;qe3 z(`%x$9K5-4wz8u7&77@XtKKh{0**m<~ z#-%i$_2I*VC@H6B!WTKEU$2^8k4S`~KHKMb2MQo%XDlV4ouC%6rPJP?5*23tRA07e z0q5Q8$eE-O+p6p$;R~9L)5w|<-(89;;~fP*L|!GU!94htRBT5MVwM$B!tcdhT94zI zWDwmEn>YqitQ*d=lXNu1nAv;XrqaX9%gFzB1jv_Xv^DzHpw5G`AC1GQudj!wl1)Yu zeAxxI{(;r+oYi#HFW@Jmq4#P1zb;h1*LHPP6*dk|GWmpMOTf9_PEG;G3?&MFz934* z@@%cARvnG0IoGN4XdbE=XM$qe=EQI13IoeWG0}(0*e4@b@6ocX-#DMW4zvW99aQkR zwVc(}%uiY|!GLs*n3dWHyZ!dk&%O^OqP7l?E_*epwaQRicjm{=I1R^G7S)29)WNhr zXVKFzsZtg0zkW(;M@RjgK$CgDjGhE%BIVUVTtcS8T(uBkp7`Q6g-4-0j{ej# z_!iN6ILZ;ppv*n^1V{#Xfb4d_Jl-PN3A0Y#7&M{l`2K2bZ$B;afz4VcHxTOZ3k!G> zH-XJ$BVOxdk?)Z}C;X3c-xu&c3v34fVXxoP&*f2~rOt#+bAeAS0Ai?4LYHyaRUkU2 z1%KhsALlUwuR5dtJ|LkH8G3PLrBScr3Wy2U?)G#j?#jlphJ>0gwDSD)zU|BVf|5H8 zEmu=)%nYLLIRfqZIqkIlYXJ*agP&hUULD4x=J!?PMS$Pr4!jHI(;ZOFf!mHOzEg)A zSZwL6%4m?kxTQNi*;A9gxS>DKuQyA+Lo{0o0je%QA5qR=25;3CLIj)MmE`Fkuf+r7 zYFfaXO9Fly@#B4m2~XqO-Fz2z=j11)0^WHQ<{$HAx0l=fPpZ6+S;d{QrHx`rr%2`z zLimVd`K{8BXcfwfd&#f$Rkk5GZ1FsvG+$Ycxt}SM@^q^d$HRlH_nv7J;#F(9fFP$@ zzLaU)S>rG1u%2Hwaee15Va0jz0-(G>D6a=V9y(ZXZDXJAWH8y*AZZ0MFfZ)`5*p|7 zcLy$xO0U%4X{j6r4e_TToGHewZwnz(vH_RDr zl7P)F_Z21z_F9T1v^@X&v@i<(0!k`mdQ3%}JmMR)VdQhc*3LdyvD$nzEzG;#7iEPM23Ai*^oxLEA8cPOw{9 zf;|=+324JSfuhKBguV=We=;ZZH-O$0R^=D6c;m|Zx?N+vPRlXy-~-vfP|NjtD?rrw z59r(6oe#^wx2IxA)B1(s)GSd#iW+(YbNZq-+-@_}RBSQI*wVTw6u(Z(o9=p#3_qBX zLV>^qA2B>d+-43$14w`c3>;il8)(Ivw2kidnRCPml-%h2lGWLp7DDD>8Lu#aU%W(9 zsrfes8-0lDT%|N*il1?lj~&Hhpr5Im&F*1H%*CU5g#CnF=2d`yn8c3=fA}+Wm3mBp z<2qXMmzQo3de{dL;kabZObA8g(G$6&zR2A6IiyalUan&;`bgQD8Ctxtzyv`prKT`^%XZ1r+gU3`u<$MMO$UYJTi-Coc5w*MEnG_2)bA5p_6j z<$UgzfM!rZTiv35=G}FkjM5|Q)<;(xsZP{kz*)*XF63dbzHp#$fT`XO@ zOh5(==`bN+aotEbWBIOf`PSt|LJ%s7BJNV-RH`p4kMH3~8{IJ7UmK|C-7(bfNepGj z4>75{*TnZGd2}=OfPU{10Z1{2(T*@bD$AiCZ(j;7uo1(9WV4n7#Wp~&1lRew;&@py zP3THSHYs~1LG$-0KT>C&;W*2aI;yu^3I4%LLxO?(Hnh(B4~7Ot6ZZiCn@ce}t)3!8p*-ZaS0P4tQp^o*6_P@H2A#lXR6sTdizRyA+SO}1 z=Va&1@BJd$h1wWAgyhU8rY{+q&IcS5fJ_Qa9vsIXi7sqRxd`_tCYDB=#zG^LU%tZx zSA@dOmBz>CK9Es0%al0ITu`b%%!t1?qztv03}ZQvL0-R;<7tV8eCaxTr#^t#St|9) zkPyd4o|OHIdPo}hx=d5C(HKM8DaIua#c6X>`o^e$l;*`?(*b)E8o|y@|0(aDUA|6% zjph-iKoxw4)C9tB&ihdkJypZSZhW3Q{9*mO2fm}Pm6`~)wHLojm~(<`l0-mg9R{-x zgoLm-rJizjxoLI%saQzO-}JP}(2At~Y-lU)Enq3%cjvdP?zjl0+G& z@3T6lbZ}?DJ1C&U8nDmk(5j>{JY5&@u?|AWeMTWGUqWBDQ9b$oEw;N>e~ElGPfPzY z;K84hudX4;{_R6m>A(bIE4P7?MrCz^zTdeXLSwt;Y^TE6IKO(9U{8OqCx{7((1~%>QfQHt#L8v8A_r^AN~_ayzhJy0=N^pPb+etF4oZCA%E+r zG$jQ5Giej7YL2B~3&*^i)dx}6WbKV{siRf=1Y0E(jGPP05xN2UhS8+`{4!GfB`wX<)d~S{bxtZuu$5ccx-N z$^SoTZ*K{Sa_0)lcV)@~9c}?eNqrkv1W#;S8}Lun>^MK|MQZ<+4;>L(45?>IKgm@4 zLi$9YA+4fiA5(;~WiTZ+sm?k>g6XJdvLOOZt>b9S%wp+*vH}(bU{Prg)Ib58w>(xp zZz6^Ago66U4qPlG26>Wm+GW@y;e#RdKE-jEEdHjAs zPYNdPP!$J+w?Y@#GW&VTi#HZbpc?w?f62#GmG_T7D9E@>HDb>TGv31j;%xKmo!GY* zbe=liPx=~UpLB)dFo8~bMoqqU^evI~3n);*DvIoJP%*nBXM@%aHePRme0X3)KE$RidACy6!4`#ZJ=|+i9<+06wz7Ijbff+j+0cD zEO6(AOkmA}E|mg1KRURW>^bDE(TOKz0}XrCN*b_b`_o`<}j+_6z~7UZy3}`pqTNJ7M06ykLPf1Bj1$T<1{r{SqrO@$_X688CvQxz$h); zZ46X9PFIL@(>?iL4s0>H)U5SodXsud-#oZP~7bi zxVfI+3phJ0WeSQpQ`GeSxsQsIPulg82%QztfdW8tSwq`>Negvbsy7Isf)TH`KXLwz zP=)@uMUnUD8+4S?Pv@2pXN)sc7WD<}F4Yv%cZ@dc_2a(TcKqHyI!42$?7-h24%7pE zNO>p{=$y(8>(;mazygQ|bm&}5xK}cj*&;S0njxov_5`y!Yh`uibP;G!O&AJR?G(p$ zDvT^xa&z+`b!@p3tN@ zZ|siRt>0=?Jv(OUmplo$0F$u>yo{d5%cE}3tQa(RzI`qx`THEnF~{~PG}lU;Bght} zAZT(P-T>}&9J>%Is|Q=GC>2BHr70D~-WU!@`)F>;^&{25({+(YWwn*-V|>DSsI*a* z37(l_HAHYUtKvx?pfd}KnPdn$vkLl=wt0Whw0xt)VQ4yNMIAzyF#|YE1ooYztF5*A zJrf}AMpU%LKPN1w*%+9=jsB>Q**EXC|HjHp0Tx6M z@JUzOo~cmo-ez8BLY+IhHY5CMYh*eSMk--_dRs*J+JxdcX`^VQ3*;$ z@Q06S|GGu5?zX&)!HNqWsXnfZLKJ4+fr2N^^MVipkf1Av4Sqfpc!=V-YhD>uQa5kG zDlV^%!c+E3rUgwMcad$ap-=|Jw|sOx8Vc~;fPd9NwV#z`Q}^k+hMQ!5>LGtDRawy& z0J}>TkaYJ^<;Sr8^7rS4`7I+HQgPx_?aUdI6bNgM7Awg_nLPITm-{c%9o?VzmoYMW ztng|&kzRJ5NZ2Axo%GC;6yS6}idVAvl4W`|qlvApdKAh*IDlR;!zGVLfkoe{)XMcN z65VpcznJaW&Alh5RDP_9>VT7Dv*FIq^aqje2Z#P&SoCWe@E) z7pG>X%_t!NA~=1IpjxOUK@2{6hvDVDmw_NCZwnCzz3F*Ul1u$%$=6FLH)uB#4so*I zZIpJ(YpXt*Ea_U;uHfc=s5D+cms1_^^7s*EA{knT3B)-O9;aSgQV-2<1}RjPW`St} zNAc(osslZS*Jn$$AiK#@gf!C_-&419U1{EB7+Y6)Tb}FD*My$uhq@wWNAYf$7?ElC zx$Y5hZ@I*_ozT6i0uR0AevY|TX@YtJD0t#&2|7$SH3ub}1*L~MKE3k)_{iRgP~l~6 zUaCf!GCM6%$jNog27vmsa9W%!A=e>152bD0APGqB3ZRpBg|d`0L@a;PVI~@mu;%w#(fxb zm&8j~LH!$;2DMQ4()RX6otni9^cOBbW-II(%qGi6oOPi04)H^#Kq6sBg|(Mq6nYri z!=fDZQU9SmMGmeDDSy&ctqK2IX+E5tT*xHX^K|+9-F_Guj_R2Q3ch&WuQ$+Kwz3$Y zCkMJAJF3?9bd3;j9Piq=m?&V62hS}SJWb;dUbI2@J(&~q=`+G|t&V$w0MCo`5gc$x zG&ARZE|a*36<$4?6^653!##kI8s|I7G4=G}zX!6#sBp4`-s~v#(M0#Q9ycb>l`{l% zU6VA#a?w`sx=_eQn(h!Rpr?o-k7Kr;4q88Mb-V!=ll0kI!1LfOe=FheYBb)yK7jw+_YBGR{S-p;qyA$Qb8;s$e9pKt>QmTTm zM(j4t0M$<<`_eobPpv?mlN;F~#FDeweU~%p=poQ>JT|~Q>VJ?r%jo4!-BcE=dTLoo zewo=63$nfXxN6=)!~_T@*pyL@IE`oc7j-VYp+XN(BP^8a2@39RRtrFqOwy=F@){&e zLRGOCpBgaw8IJtux=6sD%?d9XnuE)1*bF>KL89%PS&Gi${6{e=?WBo_w3Y%BVb5d- z1>iA20NAtF9IZ$FEcUcgPmn_RwLONjd_|th*D=XW?sAp}qIWm4K6sIU7gKe?fVB23 zyE@cN=T{XPV@+}ItO}l4zv?oU$EkqjN@r{*Hp;M}OX{Ejq$#%L_4J&a|4Mn?(g{2+>pJI>vP=7j;folg zzm918QYtowD(oB3b+?kkx9=@WZIFTr1#ZW9HVo@VW);;){pBcT;$0@l8)FgzU;I=yBY=oa;)FlnLf1#Oy|RYk#fWaFF2)zd~!yu#pP zFNtJrE+UsAobsl{0yJlm2qiiSN0NmCvBXn!Nez6|uaCJN$@M4Ku(R-b*C6|!7Qpit zUvzZmOPw!U)ieSQ=r8l+5#l2!rj3@J`|q{)D`CDG-tRe{1xF_!&eG`Ghp88gB!n0o zo#txGhI5~Mp67W}$dHDFXeaUw6Jl4wQcG3r~ zshzR&{&l;(na$=lna6XYCuF1->|f$)E?ENz$E)8OVNkYUN9JJiH z!5~$_`pSSqqyLQP5DnQ5oW_G{)x|RNLJq?en)1991P|40EPfb(9v(M|PWRXXSth~3 zP$M-lGub4-x`b6Q8i-4S`NEhm@k4|nXs|}1S@IZzNNlt{n8rS)gO$Zvt;Bc4WsWIF zuoZU4mdGyW$yMy^zFVNNU6Sg2q0f7eGxKyaOd`}$y0Z6+J`sjQ_SIB`@e~ft9|S;~ zPa6Xj-osGMs!A@uD1aUGCyU!S+}s`_U?RSz1tj=d8N@nBbbREp&6Lyy@wm^Uqt>zS~`l>0y+zy-|S z_pbwkzy?{WK*+@}^*;m_6tnIvbo>FnK@>(`OdMd#_>5SD*(!+4sT-ai0=jvlKeIf+ zPAwTdRCTA}aA}me@4Pa>r}6oGU=!YC&PQPAb1T*KXbsO&^(rAatdH3~MBcxqkd_gq zUQgh=q11+*)rc>Aami+_g;j3`z!f?VO76yD@aCya0VgE@Bdz~WCN;fmlKO|!)20d;=f4fRoPe$F)?q|A3PiZ=G3z=swMj9tUkIGTSIdGY&ahT@P zJ!&-xvUo0^A@GPyLD$&QEl%tH>XVPHk;GYg=!FDOn+eX;&o^ByZJ`*zB}lII&uj(E zCZ7o{J@wlaN->H97C~`HpL)!U9jCtS_X~A$%DHHJ13_1Htnw`gt~Wc?pd|7_EFqfA zD3~ly!Z#ZU<9dGoLabZ_*C3l_J$-m{lQ<*kB5w^7 zPIqBi=_z666zVq&bH00-RFjgtMmjlX6a4&Jl+rjZmxhuHM$;I&wB@9qSvkV)^iVaq zre8sPf8Qex0He!vOh*ZC6Ct)KG(nbitwnCCx#LNTbCADSevP<(zV{T>7<&<@%N3McIHbGJy^0)K`CJelTh^Qak~zYlM(0AM$B#P(BGoTPs?Wt8we2*1@*YT zgmveF@aJOVWx{oE@tR&%Eu2}uTfABzB^O$YGjC^3#k5sF5}b?OU&|CA6j3F;vSKYG zae>3}Wq^aG9Wm(SFbV$7mzX4M@T^3prfLeXyslWPuk zikD9nr&01>BuBGRVL+~kRLReJ%?$<(=E&Zt7*RUonY?Z|&n5F`6?{my`0e(f*FI{m zG;5me^hbKx>S0ht@{fUdBIgq$*6<{KsWHIwM}^(=$55B<;nJS7cZ|cEeFq~&Td&k~ zdti&*9F=G5DeG#K{!8WS)06ms_@Gh!i@s9sgHt^Y-`ra^RwRsz+s9jCtS^%PXZg(M zqNcixI?1p~#bE`i945f@z`?Q__pjs|#5ruGj0QjpuqwiF>>fv@bUI9hcH*KmCi=s`b9d{c?rIvN#j%$!j9Yss2PqU@wf zBa@er?QZoUH1}5QRGX5eSujEq{diMR0W=of6kx`_;8Ao;zEBB{`L{0rGvoplBF-0X zO~~*Rj4|N$b$3&@eu@ z`Z;F-cwWpe|L@HQ1-|*()abrjXTAqXH8rmvwG$}r7wY4Fd>hE44>RR+nYBwt_-^wj zi&eZ*rg>Q9sBYmtsp)^RU69VSTtQ}j+p!EtDu7HksDn+73xKbed>CyDZV6|(Y6V;) z_~8ZQ2xk#il7l`W)bWG63(s&gm$Y#R65;LO=3d0}OZ{=&Lfe~E)0r>_hQr_Uh1a`p z!>bwphCia2=d_taX?{}kkO^Rm2xgWdO3@%2JI+vK%U8%2J!>HdY4Y@VHh~KFc0D$6 zTHmU`QUb{6VwK2HU4!b*yKRF$ug`t$Tp<^#|GLjVu;tubeg@RQTDBYI7u4aO=D7#S zcA07fSA?WRX*@mr>10luI*F>Qfwkm?p zW7g0mf$}TzO9#gRtROb=yXR=vA~IWO=WtC#aPvC_95MkQ+}7o%KSANvyuI*sqqg3P z;66X56E;qvf?(DA-5vY+h?C) zD_9v~FgIqL{ix0h19VO9x4hXeSig!!md%779Y7}C%|BEx4%+D#bryfspAmZFmd`I@L6!j|FZe zHMH<(n391)5M~O@03V!V=FiUdAcOw;Bh3MLn3Pvqdcd{X4=sLf8f?nN#z3GRQ5I6k}aE{cFh?#s0 z2!(P;q*PTs8a{uigJeG3#E&tz`^-d1u92~GHjPmQUkS$|`Y_i}$L= zDb`c=xjg(ktFBb6>00}|f`TtwhnYR#T3r^kCyc|6$#%oIL%f6rg|d@_fVbVb2*7A_ zxw?=EI+ZU}%|nMMScC@ta2FhFLZyCjyQDv#J9qg5)r0=h7?{@F5|Dy@6AJt7$J*E}oV_(~+I#;$P{ZTqr|yr}yP*;ccx%7;Eh_VS4Rd znvsL{UV4-&29qN|(Z$9G-C_nkmX@qNOIDVoqFOfz16A~QI-K2+g?AZ#2RHviM{bT` zZtfuGM5XO$sH^czZ*P7M@~=#by$ z$P@HyC_(GbvSa37MYwLpH$0hZ*SyK$300*YH1m37McEBx%CwmZEwFU0ZptA)(?#q(bWu|Bign*j;Q7?g}{l&5ij5n7_jT1 zlIAQaSax-`81ml{Az0_eC|N^oeXNltUWHoiyPHq?U~UiR=vPhH!`O)U7>u_?EC53# zpu6Q=cwCDgU)>lxf0PiXUgL^7!JAa7|A2QqU*yb(^Gs-hGQI^0Q3N6^VIm%RA)c6n|#i=`b8!g?jS1tPJXf8t-Q{J9#6%JRgX`O zJO+(6si+c5!0o1ibg%bis|fkHb@!vAc>oF7{ElvF>-~dqZd1;@prf6Y=Y>cX)2{0s zUF^G4R6HQ|X8w79w&dCD%a)tzn|lg( z7!PkS#@|6H^ivaMk#A>2(r5>f5dnN*Ydjw^pcU2&Jh1#RP(L*2xeCg|}eNtHK7>9GouvJt}uvM7EA zVsvlwox{=W=9MfMCG6{#VgtA0^F8d;Em1x6!0ES&(@Jb2v?pJze_p-TTx2 z60ZI((wP$v484zS%+z`r2zJy51!u48I*itJ|N=5$-aj86%X{h{414a?f0!mg)lM0e+j7q^I>($uAup&3t2Ec<4_ea)1{6 z!#h#L&=~+m_;jn5cA5qg87^D7n?@ozP3iEQD=xxHxiYnSS`nYGYKSfqn-W30J6To4 zYAHJfhA0G-b9uSjtGSqg6bcjo0Gf`R#GH^eeFWW@F5?RV|> zyOXn$VU2vqxMcm8>E+NFws7KEXw_eSvL|_sR+VUpUH9X~#K@zMB|6TXzCanX^$aLq z&;l=YEqV-_#@^JzoQYX{}xss?xqa z?%Rp+WNfji7~Upis(;m+DqsAhV1)TmWt*Er(?~^I7(U~*EU^mQsI=)UytX_g$A5s0 zeXNxL_=%q8o?JLgzhovz5+FU()uP_cMEa?mg<5x+{Y$IVwY$aH)jf}+Rx?bbmcdQP zuC)3CD>^SLBw*z`%!wk8@-YRmi=GGs3p}%1iMe)3uIZch3!QeP~o&LWpAMB&e@z2Ri%Ke zS^W_C?kj%AGw>7aFpf-Tag&-cuUo+DC|aNj@OyXLAX8hZ+w}juW0+HqyW{S`44U(! zQ?WIZ)*hxB#aKTc2)2|AY3eO*l~g9j0SGc|aQx-;`c>L{OYf~xU`ue1C8^ey!PI9M zJB>X+KV4P+dVwZ~nU^ZBuVV1p$e;iSb*1PD2MK_K$BNC^PD8;oK9IW$vZZ${c;Hdq z^^hd(i$I$Is5D{VfXvJmS0l|{z+BNWG{B+5owSaFr1tMevSNPA z$&~W^Zy2S&tyFYUg6-b#K##H)e|!9a1C*U3sV6;%yHJzYv{m+C5;WT1*FT0*Qz0n^ z*}a$z8;tD~2;J5eGxuQ14;>VdgAi{--Ybq4(+23ejoL1!itPHfx^&o>>CO4@WClG*B8g~XY$}pQg*vzC-AtO4FLZo^rYA{VC-#RGc z%FKkipTb|6-W!faUN@DN5+zhlv|`TI;Se~QLxH{?Z)Vl!^$}CVsYxs^RkwwalVCdn zk!lu81@93o486CUio28$X+G;s`(>caMCIl^QCra2AHCBQjzvTF$WDnaGocN0azy0b z7V-^{Is)~`af?20DVbhaypU1yAox!GL9{gJoq$Ks74&Hqzh*PxT;%*9TG7rR{f(bt zjVGQ_tNN^7+szhQQ!BwuZ#R9=Tl+785`+PG^q07j&Adm0p=8%!vf<{{^2XErOaRm%@Yf6s{ z`~Vw9DQ4g^sm$(-Gg=G@;~9tt@Dq93p~O`X(v>=W1&7xAv-`n}gZq#A&#tyV7;}iTd^LSN{?Z2l3S_TEREiPk%?!j=@clQrSYM6?ZzdZd zN({YD^bcChr7a7S1$}=g=V}h%$PJix7 zx|$=0-p}f_lA2BifS$LNA4VcDN)zT#0q2KgnCEP&-{S=&>q~0~uvWY84pQep8#l>Y zGQ>h>m0$U=a3)V$!UuqJtpPh4^+r4*xk(q+@yf}s6 z6ai%6Bd#di^>xc(inCh;E7Sg7;V7aOXry~#GaLYa({L@VrK)ELx@H#{cich^N!Jg` z+Mr;-nK=$;>I~zhzzxWh$RZ6-pV#TK5`*t)?N)aq5y3<4*)=E5R2n@HRLRs5BeRS4 z#>3*|4G|MPe-PR+pDu_a@}slL7t{~c7B1EB4PLvG4*b`BF~O6?qyHe8tBLM73()0i zktUd+rm$lr&BWZfA8xB5O+o*kbdS$97A`5_YA!n#!Yumrm_qc)PXVr=PJ&RC3dL%tc z&QDR9ec9f}WX(%GIib6PBfY-uHml9>j2XEw##_BKE0cd#HW}MR>~z7Og_TLFmy#RjEEUQnO_^9iy)q7QZ)o$_iC&tx5C5PE=v$`t#8gSLX2Q(*}l zl4R&$z5+kn*Ow>_;nK*nrS6XlXu$2AUDd7tPh)jGsIV~XFv&Xv9IW@2i41b5bb79bSas?&2GvuqTct+V2QXF?89;)a8BFP0&` zMOu(ld$Um%H+o)I@9B-(?X6VJQ#P0GH$tDam37XwbnV+q=qA{T85?x*w9UjJzv`JA z4s{GVdzlo7MEZJCL|TY&YErp4x7qiEW?O zT6LM125g*;NjozoI}5^e`DE&|>2kp6Y z%=U3zpxXAIf5DIyVoc`b4Bc1q%FUH;c>a6W9YilS=OU8G$p3UOV1zv8+(eB7qSQ0& ziFi)jS;O&1V?s?{e66k>RbK8tHs{n(#DZJ0uA8Wl^#FEoZk9N(40YLrWg=T)>I*s! z1$*t(n)QZV_lpaNb%LJ*xX7qBE}VvDfIjZ)BR)Le`nU~<9FIL8X6xl?U%Ne~_-q>k z08YA_W=^=?-`*4Q%kkb|+tK>y*Zg_HL}s?o$+y90h7I>qm^p+AA45#v5?61pB_`4w zf<4-1{R44=;4Dw^>*kS8)=*9gn}C9F79b;2R$Nb|6MRn+kTeWP^g#LJD?C1Ati0>a z0%4*}1|jNj@9nqF4gu$gazGC^_vZ==jF}SaD+7N5Mpqtr;Iv&_v}VYy6QoTyHhJ|o z#Gs*;SPsJ(_)Mo{e&M4NE)o*Ws}U!WX~o|$Hn5P=d5Qxi=wFUJ4Od8IApU`S2~2Z9 z=b&b(?UZ*x7uo2mTW^X^V3=tue&E+Z$KmrEK+c`RzKF-Xca)=df-gf2?s|buK8m(U z45%=DkjlrS{9uAs?|b{xCp}Nrw=OYe6?8u}Jlp9aW-#uZCC&_p&vtLK!ERl@pW*TA z-|BqsooYYp)((Ds%`i0fEq^Tgf| z5mkCvJGsv+*TOE>2sQ(2{CyIwTAfC>#GSO$yR_re{v_1D+^Z)govFRO9&kX(tEOB8 zNDIbetmgI#SYlN%wr9+ATpEKHj1XCfsy;2tyD=lYsYnSm_eO@17iI?E4WBQL^>c{g z7IY35FF9&0QdMS>U)GAV9Vkj!X;I`-TArw}76^rPoMQx_i&jG!s4j?^Icwd^J(oiU z{`I|qyZ4%$PLgNO@nd<7)6k}f;}*h0_|-b;+1&5Dg@Z*i`gm2W*+;ssEP+Povu3IU zH-v3+;dl8i)bua{RU6OvZyGs-vRNiT9oTO4`E}G{Hu&fp!W?k7`H-2*0wEe|8**(T z%w`UmjC@2^m?CuhR3UJDB{sghm@5oQD(==Jg5*c>oFAc#6nApeCOOzI7F2a+_S zOHBb7HQSk=#)rAh`>;N`F-!lAHu=YhR}knRs%G{cq}d2wI4-O2hie`grpd4TJ%2G1 zzhFMu0XAU#5E8uKu6g<(esr_aH&;=eWtR>z!u^07Z_?;DOglmZDC(kdjOE5;O`JD zfN&dj6`Fzo!FXStVj5gZyTogQeWo{Io8Q$pb8Rhv^ErY2xxj9>Yq(kj7URwS6E`@| zkM>*X!ktzsv>8;y6FVl*s<{e~DA8qAJ^ef-zA`m84_Z(Ai~GbhQg&NoQj+(uR56Mt zuF>6b~{N@-6!YO((W?141UeoC^jInv1EfocfLBQhV zT~AT{^So7bS@ep1f7I|8p*rsrw+o&6tOJ=mp7t;09j~V|gbog(P#S)Ib%7V{ zqZ{Sny|Mwfd%sW{18?t&A?89*)0*t zrYc#M6-`=APt2*`EjJj0uR}07fK;Ta>9qpd28NaVKa;#npn&p+MvdQAjXqEN8o3Y9 z)FNgnmSDZf;ZSD=5>=(@4RRQ9Mftx6qnT#59%C~K$iC`^`FBZ*Dl;e%6==zvaaeLN z!VaR*@gcz{MS3*ebiIAz4k$TdF{pFIZa$wryN5m>M|M=uYhXZjwU)38W~C*k#z4S}DF+*Z?zYdFnys70xnA!5`D}9-bDhdPFR-_Z9tK?E zq*^;GSnpr}33|986!uPv)E#q8(_4+wFeg0T2lW}U0}m}txg8#sce(!8QSJ^st|_b{ z^za73X78ZS4MH8|{*JR_*Im@OU8S~9CJ8SUP|?+jmluV5udDh3_II-#4q6QQ`f$O$ z=!J3gbMZ7JCQ^O4S8UPfQ<&5?bE*Gn0Zd>_%m%GQgu%hhZ~$dPnox(}3Z#cmS3H5T z(Vgp1>9Sf{3|aO85vZZ&_6<$G^>c?<_j!?7)Ei^1ybz!y<{NsT_;c&{%o$iQr&g&@ zeH%ZO(BdFMZoMNxA#TFz@wWY(pD%l%Ua*GvBx*~5cJ26-#-$W%wb;S|f^yx%eEE>8 z%53L%ymmWBapjIJ5ut z{%UrrhW5Lq){Lfb?FTa;lyXsV85ueLkm{2ORQbn)dpb$w4{#D{JPfF{tnoYQ+ksZ` zI+*GgV20{w6rg;JrtG$GEX?dSayzF45$L&h(-A@=isB$Oj(&l6Qm^@08s1#p^O!R-U>S7WrbfHPaeD;- zt*$7M32=1RH$YhA32^^s2`WjQF5jEblFmcY>H|W9zv>#R3@PP z=^mZo8`$*}%3k-RAqUMT+?npZ#_gkOV9RL=f|NpR3iT>Nqkb7aHodKze zXK0&^ic^DOYiE7#Mq5q5!#mqXGoj2Rs>pPki=(Gw zVwv?s$N77#F|aiye;x3*WmA+ImBbcu1j(pmpAb_p(y7S(`?W-7#>^FnD4FeFt z=4Z4~yI}TW0qBj{k3dFZp_dCIwI3wuxEFPfXC&f99*=2LU>T+BuQYHfe~Qvs2@hp!z{jll46a{8cr}4zjMTtg^5EPeosFA?emqZAIDR-^xiL_7 zkSO~&tO(WHeq-B*fdPb7!qJpaGwRWmg7{?AwTHr_h7)8~2sQZO$vn0bUNi%^d4>g+IfmgH5yOL0x~)L8=yqE8|kX@JXJx{51i@NNrm;tiTV3 zI;8!(dw+-#pBKzN$#bn{(M*Ue)8t_=){mt$=R-?(x7|)LhAesJGz@T_k3{Kv^1r>f zFRyiKIzH%8HeR?J!O}c?l0T?Zin$Yrf5lC?S6oT-U`%6HK=@XmfFsuP0rhC_Cc1wT+VBDcD>-+;H;lefC-(5MH`E( zh^WI6^|!y9h5Ri%eBa$S>nLZ~l&1*7j!_6_ZN@SSk!*|DjTZc#gY-z(3CyJ{hf9p2 zU@enSL(ZOfAVvFf&J}$(192zt&dIHcmQHHuBf`~oWY6&c>Nbg<2K>D@VaT6PSt^Gw z8RBrVwl%oIW!nF;T4%(UPdqI=mKsky84)7A-4X1*OZX?8a%0l7*R=%2%qCtN6aTh$vIw+S`HGbj zGK}-uo6MO6p7F-22LGUE7%G3(z6UjOmNB;bl8p&vL>@r_TKtw(<0=ySA2B|{AnLp* zj?FP9b+M4R;I{N(Z@r72sg{5!>eThFjl!U}?vaNLx_xS;a2x;6IHT!70JO2_coiKz z%yk`S-9L`zR&sRTAcHf8+kcT~cF{YIv=Fbx24`>T93gvmXQYEr0JtAum~Rw&xPw&= z9poWq(>wn!59XQ~`qPgi?RsTMn-58>%x74xxP@scmP!s294yfqqBIY+Gw*qs`Gl<^ zX^9WC;oit02lp5iJtirxb9OO!Ky49E$FU$Y6;yu!D@tx^AqM2;!ojjcjSknQ{W2Ka zYtx*(&(e~GJGa6n)9>lLcs@>-m_O+fR_K)eKRjJ?d|gklzp>NUw$<24V_S`Fr?KsZ zjnmj>V>WJVCymwE$vgSI&wKa3d$4{G++z)@=W$D zSa(=-9yt|g=;gp74+krrz@|(NGA0#q(&>q?Qv4Z7LzRx2vsgn1?sZ0Du5GpaU>>`Wh^S!232jVy=9B2x>M9n(qzv6`vY(t@^%ghXRzYdKpRJAthJRDL zLrgVok)cz8e|>#42Ysh_B+oV8HJLv3dU=%uiG9wnF?!wGJtC4Rs-F8LP=FlD1tvlQ z>Z#EYa4S8VR0ui8tqUa^)%s}&GaEjxEfU!|ew7$AjXn9M15=Nv>Y13rbuL$PXe8yxVHuGb_U0Q8r77VFt9) z2&b-n;3^M);YfpDfR!Exll)Vt45_sAbWkb-H>~zxSWvjR(OF2t{l+8Xrp=~LlQq@e z=){IO5-P|ul*3cRN!leppYEa0vsT5F#PloZW)niV;8%a-Dt%}%a`z^KA}lOrevV#k zUTaZa>s~-@sy~%9DrZE@&$u+DA~b51C(0H|7Uf}xpTj5KO1c>S0xh%ld5~4rfwo!~ zr9rKPnP9N7Zndb6!ca&>8~%_*$3Gf7K6#l#bxOHK-QFgeroYb68 zDQW^DL3tK9a_RZ43kLBs0`(DsxQ3YM&CzXQWBnO)VX7M-SPU+t%J@l3Ao4R*0YO%2 zQ56ClIOT(1_;#@$1zwZtnu~M6eTz7VM1&1(WRC=#BqSruS2$q$iGnYupLn&gdK%RWzD!D@ZIRT@jtched%LZ4 zq^l^=<@oK_5AC%{I;?8B>>srcxcLz#~W7C|G!kWGr( zD}1nvr^s@&$$PYEEi@>d3_BiFbmw(}nTPx;Op%{E6GJW9NECc{pCpxhdk-f!jPPY4 zEf57Qdhu`S!=4zY&`P4N%}vIrP5awOgE{!r`Q!0tMV*K^g-DRUZf)&d9Un{tY9#8E znsyR{0ad2SzWpdHC(%foM`a_rgqQx<2}=S>IUj2iW&mh)h9-R`+rE@k!2o*9qwh)c8Ai%q$|7Q z|9pj|=ldmqAzn?2!V$|dr&zqzct4Z)iM$8*v1Y?BgX)h%>p6a7GwFla{J-Qt8D`;f zb|`Z~k^xG&w#u#cYs&BV5X2qDGWdX=h5Pf9QP1^Pvn8z+8~>+?*~9CDH?75cT9BG|-f8U-qD5~c;mQ3(rMR{-&m6Vk72zOQJReN8ca-F`DpBW0`R}G^ zVUj!{o@-cJO+?4URFvSX=#_9JEOuViauh)Hr{U&zp*Gm*gz!Qt9egM|uF&@v)&Qv6 zALoa!NxyFpl|@D2&rC=RML6LDBG^EKO}OZ!%*zjdVrs)4E}!a%$Q<y@nKjjJhpE%2Ewg>o)ayMuMYkMJS@c!VVK3KLhSN zjG^F~AW@JpzluWGaD*MPirQ`|;}$iCdf#Qmvhe#eY|vM(Mny|6w7(tPa-AqSCvqSg zzA7b}#Bqus&-QPGKX)psHt%ZE~zZb$M>B4p0sLX^zK z3p|@=*$?2=m@FU*>TrIChla{Fk$=#niK;<3W*J|lT&V4QPuGZ_$d=JpRM)vOJS3pm zeKhyY;%M1_=x;v_?iU#;QG7fUM6gQMY^rf+huY#&s--XvJ(9TSo#qr-R|BOku1HVV z;$Q&vVl z_5z_~oi(1>LFyX2kL}vX(1QP4=0^Wk;aX$c-YNH$mlfPTRln)D%YW077Pgji?ydb& z&)jW%7JQ#ul3xR>3zXfhl+!(RT|Qjg(5g2w7nxnQ8u^QvaL3ZDo5OVh#YeP1;XM@o2|>P2|O{Y~(#!@J=c$fn-hx~?DRx~$pj(@&u zv1^m=+sr_O3gu)cUb>MQW2j*pwbb73TEwP4i(Lm9ZWl#yJcwmR4Kjs}&CCa?{*XSy z?$1a&+ZC997u=q~*hhxiYt3vW=+2zPhO6u=^{Ypz!u%Boh%hT2wH+n=um|7zfiCp* z+mXe$i&MN+lqpxDXz+-1r!(ko@xhoG69Ek@UsV5WCh^FO@QuW9Z*EE~J1OxnWFCaH z3V;0>WH+C$lj;Qy!+p{Ys0v;P0iQral6_54x=CaEX1Jc{`NE<@luLKBi8`Gx&4@yN zzke6)OnwC@s{+kbWBP>-{);fu7V=q87t&{jVWEFPKHuUVKp{{Xlq1g#SxLUqNGY-` zzK}sdmN3I(ceiQQwH$1uBx3v*#-P6HY|YK5R|e?|%=VIkq%Yera0(1|w=nmaks9*h zWJc3yw_QS)P0!Mh0l72uKd1z|i-Z~UWt_~}gyHvK2MrnZcA)aEkfxPD4>`+es3%+vJB*p5s6~YA+bVcF zeE86O)HsiZ774G1Pz&Z5^{U3)(>cv&Xpk9GK1WMf7Z7>9$zw~yS9vN!;%6U9)9*t6aupVtC%d5_kps} zhvWB?2)6AHLNE4&H%z|fq=>=IN93wjACqy|vF8$!l(_=s@7qf6JA<@n_+S6HV}H6g znhVIq?CAP3n}8;w zh~X))L7@w-dV(&B;B17Y>?;~tZ*uXU41WI9*BEdKu2qt5M!^(SApWJiq^Elu;dOUX zRYPqcg2NJ*+UH&9V&y4)0|G==710PzfMV8@z8mPz2#$?p#}Og}JC6^ZCde&Pq+%#O z3oc<~U4}DqJNUN5_D@+p2Set2ED#tqKSC01AR%yoj&dVgi!g+be7t*;iI~zbgHlQo z&)f2i{-Hl@%W%*ZoPU;5hz(Bb9Dok3DFz#0nGk$g3z35xP-}b|l)q&@eClW#i3!oU z;G%bCfQ4LSnjS*l*ql?7;YBinA6u?U5V6fpfTf^~t-(_oz&0M(q>3C)w66MkJ29b& zRph(Raeu%fsr5xzfdDAoBS=e%Ktctd%$-Ks5`>KcVc8AKcn}bU{7sTGR7?L}I-eCJ zxWLu@b~ioS4dlc}{D6|H>)ER;McaOK($K6SX4oRlTJ3}Ml zz!8usRav@fMOQig(^BN1f6mP9AgX8ED?aA%>9Kqw@!Y9ci~&9@AsdES=}zhf8Ywg>XT-uvW!ycALYxB*_vl-u=E!59(JRQhg1&1s0N z?LrTe>IH7mxJu1;Yo6VIrmL-fud^zpgvrk9UK~zq>Ht+Wi<1Q+&WJKs_4>}^Cnc)w zNvR*bfdwu7x`tMb5DP0dy@TlUZAKqd-BM+lnH$PO1fGeot1RU^Zd8y8?lNb~zoK7{ z%+ZcNzq=55kXcy=k_4!%ER1;jt83t0)zk!mXwu$_V70n}AbWU51{Ol65gH6Wp^!)4 zf6gw6gU$uBJ>aTH81RS;31Fvb{>7rNX99;09+lI7lBODxGQ3N~#-f-fF~GakFC5xN z)Wfg*;AL~&uJkg{^#kLX`U`ywZIS z>9%;tD-Rhz(GXFH!N-z>FTxqZDyKMP4zuQ#&9M*T+7umZ1uPB=Ykug>|F=T?GtImI za6v@+jkj-bH+w+kVno7Z#3t>(B_mFfk|0)6wV}LJn_LiQsYXs%p%Ot&({<$EhW%Md z1)}M;9R1cIU7b4MIHVFgV+G$`us^4LIZ zvxUz5EoRB+;qG(3(85EO4Hjo04H;~L`$okD3fC-dRHC$7dh! z(sP}^(*}r@68sKk!N-Hvdow_c)Op+jrL18iXq*-`w~F@l3KV!#9(pZEvA(lMU3-=h$KLdK>RRLeog=!r zom*nIOFB1jNqv`00)i9?ysp4_^|N_n$KpiaNtg{%QbN^1WfAR>F+IUOAjF(@!@Syj zh2op3aDP#abvxep5e1|TC6+^!td%7fn&(QQId%>vGK?5Jz{5eh{f$gI@XL!6`rO-@YJKX1gJ;5O>X; zs3z;l7*@n#Qof7LvN9y{drf5+tn?lXYCHE zAOD7&_5VF5d46R{lIsY08gPZBI>f3JdPI)B?EF%Jrx)V z>HBJ5^!o%qAy9nEeE*ygvLm(lGv+V!FXW(|4w)q**;#omdk00K@8buRDtG-~R|_H5 z3QA$H?NgYjTcyDMQm-$Ub`S@qd$m_S@^sI2FSgN#LQAqzFcWASeqN zje(GFuAOH0c2$YVCDghdc(}Dv)nxGOc7V(DxY9e20aM2#H6EJb-dabvc-M=R_azOe z0?uY?4Bdft1w!R$qJpb}31GN7%2i?8Pt*y;=@5oO!sFfVfAbvY+>)Gb)_My zf!#Oj4z@KUgr6AroJrOdJ^h*qD|->j8Nxx0JV43)uEKs)j8PMW)>G)jQYc5 znST8R3RJ&KHs2Dg@q}W4;_u{YKTy(GpD5; zTj}XVV%_u3p@2h$t#T12X@Qk{f`PCP`Entpu_nMCQ($bGK7mBbkxKg;PShg0inoBd z52?aKaS59~Z6l>4=dDAwkP)Wt!f6*CyM9t&1EXrJ5im}CPZGE}tNO-~8394F>pw~* z8eo%}QrrZEqEdb^*U`C_WcK-;jZ}?^TxR7U8;eCc$;z$ifH9|$o#08%fIghclV>U&3yLI`@9B&Hk>*c{{5YysL3>!4(&OE=W=np<}%A2Gl}#lZ|nEjo~kN_9KW`c82zu)!TH%`O3k zem}UO!swYfx^eJ-UbS0o_SEmZUHB?6>9E=L8g1~h6NO0+0Qi8##K-#|@NFuqyG>+p z04NxCWC=>@w?K{hN1#v~P=MThJXgqnTeM~8AChRY6bOA&Q3+v#%KHHfemaVlx-LrXhl3Zxkx$zT9@)rEG^r{ zU#yEdR{D%hR1rAOSx4E zuDw=WkzTYIZISCAT}?^mN_NQFB$Mg~CzvBF7I0_L)o}j~i}AK>@6@xaf^c?*$ycKv ze|xsINSrekVOt7R=?0QmzAV`aFc z6At$?Qyg<>Xy3*!mfn3vP#&W~408|Bh(woKnM&qKYtglOdx23Sg3mDQ^? zA!1&OP@+WffW6Bejl-o}Gk^UTZgP>WP!xfj>VbaErCWchu&ACXfGL2+1FN?#XvUuz z4gP(ha`1r@L@hzSwd4yNYFVFOX-G=Va(<`5#x!*r=ZFf&{eE9msTrR}jfAOU=DI;^ zUb=uepE4va3a4EDJ;q_d!;c5Y3kDaDn3x)tIC?KwDiJwf)O9_HCek7cN?7wn4TXX~gItGFYW6qlw{&k_Fpbp z1x(qMGoC{T1th`=GavVhn&j=*S7&ezOD}r1FRk>Zp}g(N>hA{_cA+>RoP0Yk{19~K z?rO~z=%xgoK>1aPs`V^Tz{_am&VK=4-q}nUkT+1f6{u^`>-&7S=WLH3Brcc>L!*?Z z)C%zbm%J$$!GB<{<6k}rBu^f+x3_HRi19z2$M)zr0CQ6PD%x3p+~fxI61` z=Z@+)>8MTVbbGo^I7_$17$M+7iZP3}_*6ow{a`HD-L$u!W0#WQyFrxdEUOB$nYa@y zrM}M^dh9zd8%ID?%t&u?>%Tfn+o!O2NN_MTN0SLjxolS-3D@55HRk-YyGgsG2J#Ke z2*MgP z#Hw8~d>e&WjXe~EvrQ%w60Py#^_;MoyX3b!c@NZBo?H7@^eO-&@`glz`3o_IO@BEsX|z7BnZPso%J>xO)^l)Z)u6Fo+vF zaqlRtzVk#S37drhi5hb%G1NDtGkg`#kn{fUaA_H{X8f)Q-9dbgzDdCYM$rquR4%bl z$(_9&Hy}H-Ljh*_K=50j)Sj3e6P$-OSY?(~ALpG1)yWPSNPJ8{WpPsJ*g3M%87sI& z?h9Wz520b3W+~d2pLj=pN~l9SSag-%_(Tt%&oW@T@v*>rW&$n-AN3N3>6`Omqf_gA zy+z7cHVN(j{@6`gCimF0ui%~5P%vWYKORr8Ii(5qxO)`qTeGRVte`Om?H~(tP^QkUFY5in-s+zI*uh&*ZD`BqJk&X!OIdktiVvLB*A{NMb<*uM6!U zuj5}h6tHPd{_kmAMddBGNIo8m`i?*fGDpgJQ^Wq~ot(hb(n4fw-dpl@r`SS!Yx3D)q`no{8X$VnsKn0;t zVjxhURYg*PB?mb!LD!-gG2`xh)2?B1f#1@U<|G-Q7dv_oRqeOB)C%7$>GmBQN7P@) zvynJf$X?Cn#THhnhnj1lMr#A@vmB)jjmQOs&>4v96{(@?K?byR9GzxCt=KK8QCJyu z?(q$KpW%&3(Z1jXl$#y;YcSu#XCx=?(N|bxcz;%^8sEhNhlVHzhxLNqCXAhJri$Dg zaNznW`0Jib=~rR!{-L^BqG5!*qBgCo+fHaT7BdDs=uPIK;yayNR)-`cN zpziN4Gf6aQ^!OZkKNHDM3gQmb{`Bw6OLL~o$ek>j&5wA8Nn*$_mC?}$Fd{<{>+$>V z{+*ljer7J00k17&j_#UYaGre&_GSyKKAUHEmDrIF?VtxEbyb*HW!As^sy@bO-QnzI zozYp25~KZOkOxELvDLo$dLBo}2MrCqva%8ffCOjSx0O}fQ}LH;d!bJOV)6s)4=4r1 z`}$C7h>u0c?YIT}(`j=(qAghplBv^@qe{BHwQuE=PBeT9?=Yf0cHsVaTy1MBv{aY-Qtv~C*YwvlwAPa);C?QSG)mZo22({Vp2hW4E%BD{gT$koNz#3m)J2~?J=^SljKI?dE=RC z=Ldfn)Smu$s>_|ZpHCf#c<`BNx-fgbn?he0zkU9b_8u#p;?ppxOhJJ|=WUdLzq~T~ z7|d2I9vzxZ+H7R*wTB$6;q53o@Y}gGYWxKEkx#!0WS(G}sUncP1MJ91UJ0`*fH+kS zwEJz$8}2&l_}tEWx2ZD|sXdEH5K=?_bu6ewS#6x(BVobk{OE~yNgq*a#|x!}ELWb! zO}U2{pf2^mO+W@3mzK$^{1)#Z`}yb=Ys=+4~bz= z9Elfp$V2i|;!2oWWJb0=H}pl<(7Q?%Qv!E->NL zy|Az_0CvG@ES2#COPa{SgBdA~Obh&Z`App>WV_whQB8^QDRfHhe z+P2*!)$*t=iwAH~RfK2>ZK^Mt)z0hqNbJ=)f@dRJ{ayJgm{$=~^&vBw6LznY1C*I$ zg6OAz{foU?j5}$DbblcIdkF7Rl?3NHXEuB~OvSB4=d;&c^Dq-;D$vbc?!Dk3(Z^ei zXRz!1dp2V6#(aI8+!~4}N^H>4(>2*aN@R;#I)KI4U+{@E$w>&Cq!&eoOz814&Bzg! zag}A+f|+3bDnzubyu9SoEf`5&x~>B@Bm~z`uBX=n-xgxpxtAT+;ETRc5uTt)_;Upo9rQzQ;bgntRj40Q<;V=(0l6sm~wS`$q;!MXFUF)Ai1&As|u zbMl78dHUlkt1Dh2yWI-KXKBHUAI#DRFZ)0>l}*naPonSL#QrZ%M>9oqDb{BzO(sKe z^VUt2l$0OXKU{VzH*>0r*?jH_dzZK{u-4me(>XxlVsi2V|Mxe$mBuo+?IdbN`;CtD zhz}mq!N$_6TDZEpTKSO#J9*tneuL-~8X8K36>Z29>Jgt?TG`k*b?nADc=;_w)Zsvm z?)R3bdtBO~6d7T`Pnqf^6%W}}{sq4VqWaQOt%62W<*YOFiy4`?QF^*l`}_O?iBD6p zYvis85%!*J<*k)57V9?~Mr`SF^FLzzEdJU@29nY>Ygx^>AYOK;h%-5q`;WY4S5x5G zCM*bAF9tDISaS^3*{(;wrg|{&=1Y;WWyFMrwj@JLUNek&dHkJGjxP1aeS%T!h>EW; zpa`OQo^T&PNr`S+^SNcMY*`&V5lOAuTdL;DT-MdnvaIH13F(FK*cn`pl>ZqW9oog4 zVovvM9T^pOLMNYwjO}Z-?2_Ur!@T-H(cqwYSe>R@!^o;_HRbOHv1DN}f=Mi_wu{2m zs?n%Sz4ZuUF)`C*(HBluIqArfs`QEZB4xFjN!Gi&I#=tIf4n@u-&|%>SDG%UGGoO| z+iVPf4cY08bIFcaJE>BM4P4f#yK_GD?d)V63*q-!H$B~f&J!OFLe4vlZ|!7d=_2Xy zTbpRYNOLTB6gSyQGL5FGRE_4-`L~IvjyY4B>pE*|t;;0T%&YAg^P(c_GS$T99&)aB zW-^IkHX|aB@J5!UHuLIhYg1dM6sn#kY)Q!q>Sh#6z%_HZ6v@cwnD0;CWaNu>PV)1O zL%-0YUj9`b`X-EI#Dc?q_^+T#@ad2|=Kz~Qi^cE7!$`)~_7o`j>wdA}`*^hnfCadp z>6Aoi!%A%D1o#37N${b@r&>RlavjX-v}R^znr)Z+oYq>Mb^*}3eNRtGH-8Lyx+aO? zig~fZ{c`Mzp-f{b9)7p=rXAlFu57LQdGzy2wV~P!v39l~H| z!SA{K)Lgf%*mZhQ{Q)xYp{wfPFK}#3{#X2p@KB0<0X2VGLk0>r@h`o6ixe*K%Jb;@ z)mY_TH((2}&_%mQ_t0xDxcS|D%N`e3Gd-O^t=1ZDl1ja5@#(+6Kf4b-Kkb^7Gto35 z_Fs2=K^HS>&SbGh65d=vn^x&xPA^s1?;)^_iwts{ismBIDOI;OHjGe4nM9>sCx+la z|Jp+ris?C&8q!3V6t~{EP-A)%mMRmPy2l_ka6Knh#g^u&d#ILuO*BvO_}kzH0qSna;ybmHwAd9V#kqd05&k#S-D7 zHT&Ovy9pil%<_36h8hg4ly`?ZO@d9NNj`$u7KYvX76RiUJVT2~AVI4)7=}+FCMHHs zTKW-yw@C;HZLU@5i6av50_f)V`t(ciWRFHbz<0gP4GId1H`{(^AQEu6ay7k`+wg@| zsXTHHxT_anJ+pHn=F~Yp!-wYkIh6Yr7@grGU0Y)o<)C@NaS3MMm#X7NNR=tssG*LQ zbFz5LQ&NVP75Zn){Cg`6r zKmSV7S8x(X%!W#6`^H$Q(S=DVt6M^+jN0|Et}_&saMZ0=>Zg>5xL@Z=&HPjs$FF)6D^x2@#zP_|>`zWXOAxK0j$e(L+mP#-qw8Glq%Y4XbVf}O z6q-a(#QTh>dVit0wS10S&Fi+d(b9d;LR_Vmtj@utM4RHqOm7x4B`aV>hN(b5fBBc3 zNHmrMkLMk0F?e@Xxoj@()35p0zq5{kFHVR80O%YmUaW#P*5tLQqJw+~ZZBGpf)=&m zrq4AJDiZF_8<-6l9XSJ6>#-&4E0XDgd#mtIL?J zxYVcC^+SQR985eo+%VOdRgaOcidWiu7g z5a}&N9NL=g^tWYT?JedkzTCqAMdYMLKk*R9M0B~MHWnSNF zLx}}(=voY;Y;kCCkTO*r4erb2rP#m#bwoQoBV*IDtr!M6I(duDp-ebc#HEvySfPd) zg1^L}8*sGoTsdDdk|t<4`a%@S|1+3s1xKH`opm^#dj8>|<)_7nr=3isQeKI}lUJUo zUq$-ZsMy#R>YJ77k#Vsm{Px$MP~)?^E+b<(ZtdUIbPF>n8_NBJZVQO!A8uGov^6Y$ zm1|U-Oe6VjA>znEKrcQ$Oc$C)PQdVQ5<=Yg&b*X-fS1=d{?C%cn#c@Ug=*aMmV$69d_IPNA!V@k&J zD0S7Ic?Xx)orA64^bYKM0x~qaA9o(HCit1ON~+YLR2Kym$(mwIkY7f2Q!CyEW3A&? z_+p&*=f6{|Xj#7s2Y*|as39jS-Zw%F!rt{Ugg~86n7Q)n&VpY$f14}3EGZ+jHmFAa zK$u0RRxmX;Upc!2B0uhcaB^;Uf$75Rf?IlfefG>DW-$y{{jz4s&ZJfQv$odpa4HYL zwM4l0mO?~LC@#0k;(SnqpYPU+NgQTUNTDN=RM6}ZF<9_J$x}j6E>s~kFKI#kwL3`J z)sj}u86kR1>BsAixyN&+{inSB%H498`X9G$)#5;4A7PghGEx!ZAGdOa0daii*^(y_ zHqx*#Bx<*l)C&Erug3|yhZ|u%%@A2Ljnajp(`psJFDT~ zn3`A5#F8^Jz29CuCl!Z;YY{dfPXX*z^8Alzm;J%{Y6~+TU%O_F{%4Cnh_<@U6uQ0q z-(FkR@zKFs&<4kPzn&A0?jA26si+cZ=XG=}H{S|1)R%DB(D`|^=>A-+yT0;L zRuh1tiaDXvUpom|MHjgOP!^w%ozn7ejuwS|pykNFrJqfWF6PV(ULPA@a#Hl7!gSjc zEgtM^3{G&xJW$Z0u}t#v&IQmyJYy=ejjKxE64dDK4>*MDqhENA)aI+Q*qyBXZraAP z^7)3@>98pXSPjhY0BWGV-{anPe>gF}2TB#n7p*iZL%?7Jz*yT=%1)P?P}J6`CI_0SA;eCnpEKGwI6 zp<5dC;ojen9%*{3pyMiWjJthGw z^Sq)!1!6yc>^|W#jG3F6DNppX0>-v05V-e?Rnjl_W4*nSQpRKA%%7jYW<8U33q1Ws zmj2g3Ow5T+-EY2C?rG~+@hAR!d6dD+R+HW2dx67MfhgP`EQU_R!6G9p@cCV$(F1q1 zUF+HJhnP|Dsq<>{>k-UzU3S4z>?CIA0m;91a$`pGpmgjOcY=*g^eyUL;Rmx>o7gpO zdLH4@kD1lJY+5C4%oVyrw4h?;6AHR+YSe{s{0JLB(S=7q_(aHS%7Sy=d9Poh9Srly z@1pabNxy?e+7JcDC_BLId~Nw`?d9bqgRZMD*(3i`ipX-(?!`klUvqk;`1)5tv&BEV zp^$Q%n$XHJMQH&elvLVi2nVTG7*mnk_tPEMl(iwm0b;{z|NJ?S7q) ziD`6C9F6-dxUPO{HvNfG+mMs(I3~{%RMVe3M2?6Z`PI;pp*&D}{Jy2+W7>{y zRx&>do6VaVA$3Xv^`k0q=Rvok2L0vV9*Yc-{R~tQ;H*dz`?9mK)mK)Imno-ATT;49!6jChg&9yVy-ulnSO9?CSBk`2;L;#NIdS5Mnbn$5WuMm7;SG z?O}baU$e;mzloZ5ZJQjnxY zr%aZnpeDf-T3`~Mt(~HlnFM-e2>HJOlH?PyAirTxKw4Vb!@~mrGZ<^O91#%#EVgEw z@HyUOQn26^);cFH1E_DXKY9$&@GH*kmJD;d_LojkK530b^?PWO-u{xaNu5)!k)5$z zd2ENVkT^beHJh)|xAYBSyLVfhQ{h|vZt>Woo^)6(pWiM+2sM|hQ6b>C)l;rs@pfC| zuh-$hDkRkHeSa?CeV4`MpzrKlKQ|rd|Is(CN;{i;H#wQOHCLGl96}s+SSeT%W*wON zpf*SpGcr$JH9rr$jE35M4T?ppWl7KT2;!_01-d%y}<|;4reYdGH$wq zMe>-YFT!Ld)X2qD9ES>lSo&3Z-M!iR@HHy=Pn1OLmwG{B5GV*7jRmyq)WJ!JflqEk zu_aca^u0!s9$8fdleC{kr#aPf69fW@S#Cm-e2Fs{^WKG6WkKZk%6B6B!d}e!gjUK- zmCTz62?CXVnhO9Mjx&Mz#46(>ZT9z~>gyZFFHa1en)%$hY)7CGDI^X6`J+ zh}$obyLpn~c3^|>loSl&d$xpi(?eUN#F>$Fz*ZlHTGNIY6*LI64G)JCaOxU06o792#Ks)bE&FjxVpo)_6NH3@NXX+rVXN{xzn>lBv| zwEEREQR}>EOLjbY689?FGKCeSgoFg=v)f)vcDfXqm!~!}wsfsj%KYJBsWNE7)PnMM zxEN7sF;rAkc-&2c@9;xTee%RbDrJi&HhO}H=@aHT2g=;`+6-8k6B1%xo%%-yxt~(t zeO70js$XSuBnLEBbptnOZprJ3&Hy{W46yWRcd)E7Y1T zJz0h_j=1H&`&Lale{try|B!V|NunfZRHR(vs?afvMZw{88Q3q|a>nf{aoaDSeIo^% zwPd&EXmbMpPOggu8djj!bIS&Hm`DoM)|o9Fj{tP_|D_Ih+-qnJO$bJ;1kXRBVrBH= zcapL%U;rhcGf2RPj&y{|91iQ;{s}TDjg!pe{bk~yb<@X_5*oW z66g~Yf~C6wTv$TLN4quncq0$$gM%VC3}qUH0X7A}GD`J;OeIgDlmit|KHdZ6X1!y*43auV)X`|B{V6s(hhOsVSR}w&z6hOsA zgiac9eR;Sv@Ow1dA5Z@hhKP#I=lpkgrbt#hRlQ6N$idRq*6s$-q5&k-cE{~LCcQSu zLpxzD6%A^`8E9~zagZQZkUUDP#4Zpl0T3-!XTd*I(EX040@{iAn#LGv!!45XO_2mHpc7_u37}V<6E*n<4chqK6etsdNF|hx#SC zavn`tHe2IZ>!YupAEM>ZAMjh=cc&xc<2T<)famqvztN_QibrEbR-sGA;5Y$TXg4=E zT8^*^#woFJ<0^~E; zt!4_P`%b8HeLmE>TRO4dLtw;t>n?K1(dB=?om}7{()?&_<}3b5HG%IYO*)@He~v6I zjuZH31_a`VErYCNs;{q)C{-?ySgh9L^Lh9;7>%7GV+LT}1NM&oP-8g|1O>G2@c6hc z5T;6FHNoSsPR`Em1g3juX9uwQUYl3#lgPDU&oPFc_5CUi4{*yd_FxU=Vwr$p_@>~C*QK4SecP=xdIBtFoFxk|^*EHDn znpj6ue;_WW*XH^N>@Um}%Vz>^Cn4WA0O6hMqU+fn_%@wJOHzi%*Za*}KKHl?VC-n< z=q@fU0Eyy>h5WAmjsU}+b8=@G%aEfI>clok@DG`(U$))3z~zREBG=V%?t&uc!HBaU z7}|c`1A`xG0O^iasL@dvcCi7j>THRkEFl!6)RM1VNPAV4P7}~wf=U@h{{BR!Vm5D6 zef`zPTrYONad_X^l05-<-J8DmdcnOc{%M~Fla5!HB;R2^34$8{`?U9fzqJam!OM#e zU}y-#0%R+hRaa9(Bo@>i?h@+{L;Ao7XEx|!czFbH(NU+9X;lYKqa&b^@YK}Q8Uc2g z6ngg=Nu+dJ&Xy>UmXi9X_wd0JD7^6S@KkbXQ-#t=PzYFZnVj;+jwC3ejwI%jcwF{! z=WVPQ#Rmrm*Zc+mgZ%g*DF%GYHyt@kACJc?vlibqh>uq0)&b|f20#e5UvHC$#gisP z0H%u4@NBh(I)80Vx8z7P+o8dH0w-+x0iMp} zv|IVN-Cq<31x|gML9zkB;sVm(WB9<7?f9=m;3S zi|*@i0=Zhs;D@XYkW(|AepG~LX%DHMGdB%xb_Dho0Q0#H5J?{^B0eZ+3*{S!A<(I; zynLtE?J*z}Lz#~3I9ESJ)$8-UP16eSFnn|@?&q+Gg&G6@tsbzvcGLEC05kcnrt3*2 zPl^BOumG*=Lpy*R`&>-9pw5MwjR+}L&%WhtK7OnaGO|8NGf*$-sdZ1pA%Ml5`Po9j z%j+qDToPc-=%^^IR6yo@HXpZ~DU7Tg*K=QY1A>|W?kST&m(P5;IuI)XVwwzNbSa~7 z=v1!fYuYO<0L9(_KASqnqp!>&4p`v#XRGeOWCNn##?Q|$8jEoS&^${f@s!lmvY0#{U9@7( z2YF4T@J6)p_`N(NQp!Hv99_3`zsetL34l}ji@OS6eS42=mG?F-9#pr5HOE`a9MA6 zubHb0@DJ5vj`+9-0;!0A|MwIKg#^&0|NX!rCj&$*fiXS5Tu-k5(dqPR`sY#6W6SBV z)_Qq3T>wN00h*p{bUp*9=H+U1*$Y=^#w3a`$OI37pRZA^d&Eu?DxCNQN>UBw((z?0 z2GSnTFhDw+9WE{|pl0FV;26I)69{;@T3eUT8goB_LU8r~6zrlnu%7$7i_P5h^rLSJ zfTqJCBxLMhqM`A)o!9gS5`;!aM~8=pKNK%H`R;i7XWyqAr&HhImgqoRU*Ps)jR7&M zv6z}#@+^ZiGA4m??_mFB@MpBvr}Op;ECwyd+hg^DX~195($#$d1j*TEckaO>u$UsF zxBo(*cugS*gcJh{iR|e>=>3S-v3WOssNQUh?eph$*CRHYh01|}fvl`7KsNx=-3tgf zF?ak6%Ef}fWy6d8P}%99Ev$9^cigq5w-3Fza9PQzsQ{y8nJoj(n_?C>tDsmy)_=Nn@v!r|jee=7ah4R@3P#|C_p zCY`FXvNGn*8xYGDfdorVAur>u`oA05{9o*||~2&egTigZ5PHKWZzLj{P^^ zZ9b1|s7M6dQ%7axKr)PKmh1ic!QQP-h3JS=maA))caH{nU4Zx>ElK;mVq!2*E91a`& zEwcb;!H`)mR%idCRuBY{!olH$kZe020E{jfPXw57)6>&{2?zXuJfCzHqdq_ah7JOu z^vL1c;-;zK^l8hRA!C&PVeKuWs@&Rt;YA3jpdccMpmYnUw6ut{bV@3XgfvJ=NC`@J zOC#OgNFycPASK;(uC@2`jPw5AamF}b4qx1`VXbw~d(P|n)tq-A6}O_Lh&OiJx1=CI zOqGs%1{BB#l6%wt^HGu4?$s3!92sWG;o7j|cX=gcWmk|IwB0Ta0Qo%!Kme$W0=lJ0 z+UR<`a=h4Ps0NkY{DO_wVOG>f?3IDG$nY*@2c z#5^{CU?Hjec;g5u&`d=J3je^sI4-Msh{yFC5Z=Ya^hLA9Dr3hp6iphootl|U*qK9*aiH@!UqAT#^ zX}-BkT;zHS=|{(F5`%m03!~z@;^?ER_x7!~K>R&MW@efcFE8}D*E7r*jbi^yt&ZmV z^xXg*d!nCZ6ciNbcSS%=|1*>oy8iT^@f~s($^;MuAnkXlDPiB9Ofhs^-%R+uCQCl3 zHdHB~7IQte+g%i=Fd0n$vYlZ;=&3{XGx-xG0~@kJ-T%@Co%!y)dq@BVnu~ccOVdwG zG7+HivZIL<-fg@5aPz-Q4yT#*Ht#k9@3D5>n+nZWA_m1Ldwl{k#fHI+Iz-Rya#;&a zM}N@M)3>&^0!z6oT3e#ZBpJa}IA&%)<6{5rUE2TuoyLkk`vNv-9Txm|UAI(l_#?3F zn7W`mWWdwDsVO`glSbF~_VyeTIEk>4MWHW&uaz2L1wViQ@L@qifw=`}3i>98>4+IL z^&nEd6T2s0^ZrHI8_l-`q$DIh#8Ce;dKE)9$PzE38bQkER1&3MX)<228pCetHHy43 z5C2=(+wb0JeRR3~`EYY0GBT2ofB+udQuclVzP0a-D>h5T!eViDxcTrNuzE_- zKwRwwm|c4R>3-1HpsxPY*T@8cU;gu7=t$;?{BlS9pW5GbqJRFUpgS4LKRp zCcK5wS9a5pNeFHO#0up>Dk4~@$e(A1g0h8dNd7@V5j^*hKUYRJ=`}CiC>rS)F;XNh zLg!=?LPvb1kI>)S-ThcZAKPQVM(mhy^mF7*cw{7eC-9yG-Y5)tEt#R6oe~*ZxUk0C zSi4hR2KZ(sB?(4V>$Tpi$e%Ey88bGTG;G-+V@=SwYq_;8;)Iy>)V#PI+D%~F8otXAW&1AjVimk0RYtu63A z|Mes&Kfv5*W#VuzOVsng>;{=`Ve@M-i1YirQK_W?zmu1&!WMW+OL3^6na4<>a?NaVD5h(}FB1N3qa z@R9&acTZm*xEuvvT>#fY&0vQ{?{=}S{Z>!UApv;PUqE_q%8?{W;Ocx2{=YMf3)B}j zkPUo9jyoCip<+|8v)ckZg$^_YtrmjMA|m$!^dTOBGghQ?d42-EAi(UYO6wIsx>_y= zN~P-3A{I3}ZSkNO06G&7rP&04=5}>913>A%4|xjws{i!|z)y*UaflG^+BJvcrchQG z!q;;0>+bw|NZ|ySB+=z?3|Ne2h2`9%tK;_Hg>N-VO_nM~fSv-ptAH*G@X4ngkkqgT z8m9S7-INY1mVysRvCzq3fr1|gm7^4Z2+kOPR}rAz(}|f&nsWdt+FwNX;H`Ff-QdQD zGpg_(Ojb8nijOBB(8^~3oJVTAj#+gARAs37 zGhJJ)pwJ9(TG(N3ADtN9M-^EBW}Tr)eHk{PP9fBCXte!1+vxe+=8vEVupXIWXwIYG zB?+~?tybdg?ZELcPElPM*_Oe>#3o8oWFXC8vzUJ4@Z?%79c7mkwO)j5RPVjp~tk52F~8r%X28rb4)H0q#j<4zMCI zET16F_+!KK$Y+lG0!o*A!;62e4w@Hv3QYLjQn{?f={t?3F}L84*QEanoFfp8bkx+| zzCW~TI{}!P&_(F``RWp>u@75MJZ|@fhp#@mjubUQ25t)=1UvqW71QFu+r5Q?`@{O? zjT@i=C^8J6pX{MMjG=8R7zoN$UI&~(bsbm*85O9(h;5W)QAwEGV!F9=h6#?#fV^$v z^h?zf9hakbcR%>(0x`zzr!(yb;+>gEM==f;v+&HAx34djljYeng{pq|tim{;KO)$C zw{ca(#ea_EX+WnZdh}?f#8|;cS2Nfj&yh$kf@a{(?r-n<(&F z#CoOoJwUvnIea|&yZ$I>7#qM~pb{Vj1MSP*NaZ|r2)~&_0YnsMqASCX6j{3T*NJsT0~A?$ zcBMdiq2?^FtUTfeRcWp{s5pX2?J0;CS*UP(u$~xw!b0?uK`~RUaj=4k4S;%Yxd+g0 zs~Sj&KRY_2_?+#^&8JdQQ*kg}1V7|!3x4DV1rOGb1W|F$;^HFYs`_Hs*FlyD4h+0Y z)7H{r_Pby%+A!f82M0_5*`|t3c+@`cNSZsn^~A-PCCQ!v;}4 z$$&JwXbQhJ9psriY+~3QHJ9N4zn$a(a19|?*A_&22B6iU6yjZGkl09^M|L<2fQRr) zpmh8{?6$a*Krs@W*0SI-f%m~iCs0k!^`Q1ZJDRE2UK8~71tG45wHqoJgDu%#KDZY^ z=qoEL6(JI1^I0E2dTS!|hl|3xr@xWyBjO#w&|=z(8i zu4>^YUzivywq%WIP=COuMNWNCfgfePwE}Mid1C~bRU>-3y6~^MJ3Gg#Y)usv!D>&X z3hbOQlN~<}!|M`GPB@R1!KDq|oQRL@8Spm_o)E%cRJcT|G1x**Q zT4+cJHpUB>Dxewf9E@sPldRaqX2`_HJk^%~#dqJy1(a(jlG_0K)$)|BJis1&f?W(t zgMtAxY`Zm^@Wk-&gGuYY@9F7az}(0785$Z|fqiVyZhllN{2yTlybOS)-j9N9US<@k5Ar$A<}==zMMWO~z9OrEm>7UVkl@b%Q!u}&n5{}{ z)X^a_0J#@BDM;%wVq(65fkUe{pngUJVS=Vh{P2o0m=|zJp<&;{z9*9In8yeQEG!Iw`}HoVc%ETf4=5P{55~&g zYkd4zv;NeiblmERhs1Y^l&j05dJvcsDi-0HzGTe(0Ieuaj~9ZcA_O&2e`p*3HYR|n530j)*K#KP|19o!_SPL@WUcG#YCkN8uHb%Tr={P9&Y*em| zaEttmkW@zUHN(H!4w0sswPXa=AQaFFm?a>EnZxgZW(l&y-Sqms-seGGZo5Be zoA%Sv(m-x?jJ#Iib#32hi8X-m0$nne-SiMvgvEFXJuU64D8``zya7NYZ)Pe~P@FZ0 zfd$@4hd>wK*+%gL4l@TpL}v%Ut!;SQw!&` zL$lSHFzN`5E`@}&v}UQvFc5e9&GCc&7q_o>mBXAPPfVYMA)`rwQSP^m@cQo>%ArRw z9nL1eLn25p53HO3sI8CW`57&Ce47Vfn`&q}Ej=B^H$SMWez%jc>5$XxH<^r0tozvJ zp-eo_^}%=s%eu3_&y&@2p}z##vJ0c8%V+su-TUDyoEdF0T58h7^)ot!NFgTC&6dct&;dY4$ADpA(#^i^739KJ%#czVhz4V;AP2> z^X+y}Hst~X9Aa@D0M_K&p~K3xoD$OfOb0n9aZQ-+-E6l4v&7+W%n%2|b0HT3ZOQuM zK+s$Lpsj##Mv(%Hu^jktP}kMMqbuAsyIUk&vyK@cA@I6g^5Q*)loV_;4MM`5BM>3K z`1U67oo%^YO&GrnT7V8qu6)lAN+u@7+IVS>?Cs@_9QWGCUjQK7c&!8lHW^mgyp6YT zpO2r*OVq#_8>+0p^wI;(16p-SErD3Zsm!(*Db$KR34oF+gf&3Qh z?ECYS3G?bNzMWlNfYjG{R2Uet{^eiWPx6${05=S?aS8~`7Ws|IH&r%%zCeKmDl}cX zqn_A~1<1Y~%u=AO)!O3WWMIe!0jvIew+niEoWb>A;mXdQ9%_nmO(!-goxbmKT3XB- zM?ug3T2`Mz=h@_lf~&3G^z!uOvH$xKsvMXn&!q_yXFpJtxaQiQ2VrA)il#!Kvgvuq z^?w^ZZVWK(y++JOBmhRB#L|RjrMGU_oxviO5c&D@C(c;>SNH3|RF%WfAIh(*N}ttQ zEnrkiHmng^l1jcXJ62Ip|1&f%_lElU^NG@|wA7RoiVS+NSWA5#XTLp{xpU{v5AFJ( zfBQ{C{j}419xU-9CP@+EFX_N!kj|F4_$mw)=vOe!TB-AtbEeE`De{yjwlAE-guR$K zyA6s5ZQ^BC>>QJ6dTeF$ozUML{lYC*8+Y3|a6_Pk0Iu*d`R-&2+p2*x zXbqAziG)Q*i;KV~%v`|mzLC<@B%HB2jj^F*T=IS*LYF9EMbmT*{p92%Xp9iA)Oc_i zu-@84`4*6`wL8J(HU2Yr?N%UdFX}7B)+ZB+AXg<8dlQkGQ>`nQt>8u{DM){lby*a1 zfb*cpsT*PVL7BY(z1(R!t6z5(Sqs-Ikmem^O1_ymZ2!!Qxx;FKc9_j(!=nko#jNbx zqAI{-En_Hb*xW$LE}X!oW$G$oV%*PFy$z>8rp(Xl>1O;#!#@}MlTr&T47^XPnAW{> z=u>etH)`9i_6J}8u;n6Y&(o|v1a=1_nqbdh29^FD=-EH41OPFYG4cIWKFfzq8H-1n2QZ3N&K>CYd*F67{52n5a zNOgVmQE*!i|4zmF0$Yg&D{I6GOeB}(XhWz>_kBPE7ABpkz_(Z+yq+iwX4;$Qx4y|% z2%wdL+goniBC-$b^I|XY>Mnm5;6#wRmX?<;d0g>4_bMNdO#1AwwolwQwH91xTF0X9f4^H;g+Fdt+9j`Go~-mxEz|1@T-~DWGV8 ztO@GBAt*3FiU1`DivYd0?tbKzKqVm|QD#1c^rt{Z0#uZ(m<^qu7j7|3WVoGCAnMD$ zwuNpN%zrBO2WLL7eEP$NcT+Jka0;SKP0cw>5#hYBe@i`J8W^X1jq<;fmDXUrI08sG zL*19H0-}cy7ZFn2Uky!6yaKHkKG3V2VdzsMh3cPlqX-z4_t!`BGc*4Hw7dV@4jDfP z4Gm?{tO7}uSl4n5uDi^1l$kX#y<#4kx1SMY0}dwg>$m5!0l~q<1cF5LM6U&ic>Hoi zSXdxzO=$7Ov#31)N<-eaXIJe4eH%~@3HJxkp=iHj-A4{^95Rb(&SE+hHY*TJ-q)H zHfEwwIDw^X;C`-flj-29+(%)XO)A`L5USa@xz%8x&8M7TO9m7N2aw93&|ZLl#m&K? zoIm=ULnan1`P;Crq4_~}L0(lK$Pg60OJqrSNI?w43bhDSp6|mZU>+vG-tb)WcHzaOAlza$l~D`Lq6(Z8PupLkk0C$dqFUd(|l4j zbpTY6^Q?>n9(aYf!FCZ9^gUJjx{2lnJp!n4<>?5gg z0^jo|PX?Ne{>2Uax~1xHY2lEnUj0QqCr6i=3V`Jj?uHv&BFNk{woK(%?ZgEjm%Y!O z|1CE3ZOZ($l$05O>p>fk)Yy3!2?JFl@>cPFpgZbcUtv(3vw!h7sG++t8%86)`LY+fXMMY;lBK58_ysO_!Ll= zBHdlEFuwBO8qP(z54YAh?tue7lc&L%vD)N-b>R9*);w3)^yN!$NVSDcnZxpduZF&l z(t)C>+q_RI07o_Lc#w&k!R0EvZ14nk z05no)*Ze1o_-{gora*Pee^dF?Y2WC+R{3XV7GEuH$a4aq@cRSDF#K3xu&dVW6}Zzh zR#{W?W=(KW?0mIIJ@5Fwb-)5wY>&@E`{SLctjtUuBGGZ3cVc3-;D*U@{b)&>GA~~^ zTZ))6UvYfsy%3>lWx_^GaN}y)aCH5^cB|($aS9AHz>QP5!N{bI%c)IP^YvRmYMv2c z!>;+DA&&}=eCc@5`2pmEo@hw|lZk6IrZC2mg!YO7_2d=Zkj<|08o)F0cygJKK!33F=Qjm zu&D`V4;0jJ(bQ;ICy?w(3&KLyjwWB>WK|Gez=d`I&j{`rD!6LV0BC_grrm0(wcNNi zFcA8hA4G-a@tY}0xw&Q_On_i0Vl%2~|K*WDoz+5{*89X2M{a>dGPcyx-Y?jy+?N4i(#vfS@2{hH&|IiswvS;2Yq5 zQ_s8C_7jB`8UjiC@X#0KDE!1;b|UP{9|`hwca2_R%ihl9`T;0$I*!{Kg4-HpX57$l zfTj$;rNnOTIN24hU=D+1;~kb5{Y!EQ(D?4kNVf#s`7ZB=-W_gfD3PT&f4qa3$&Z;` zT<~z%h4d921;SAnbva?c=uLr+kgo0=oN55p0nI-DZ5Se4hr_Aom5+kxFsD*C1jHa; zmXvI%JyHwftZ!&|v^H!Cfw+!3_)S6KjjLO`;RGA@pVMxkBR(S7b^dPt$Ei{p#D8O? zfDH4YG>!ZD_OCMuiV31FV{{dPp(X-Fgtz=A>}N#=<~?wbfwHFXetmTZ`#22Tr?Oub zM8O4*t7eA3cW0$o*5qZDK?n;~jJm&{tQfG>lb8Pm1{2yNqypkzoQ=-Z{rMIu)_tV6 z0{9FAz>+XBG7De#@%NYmyf02(i9_1)(Z4Vr7n`fM?rp%35JK?9zY5UTC+!iRIdW{Q z5bhTLsw7{Z@t(pFO#f0!^y~Z0D7feUe$zqpf!V$PU%QA*ED6xl@qb?A8I>l29FmO4 z4;4s$h5Ap55x!aMCP#zqgzmE$Aw2H5?R&gkMe?uYD3O^i^Kwa2UlPAZBv5B4${iA3 z%?)|wSBXJN^~N=GTWiWnR6xM)AHQa{#D&O7qg+*ld0Upx5{(0;qC2)p_C z2?ND<`PD5=aL%c8F7=DYfEK0&rQ8GDD*u@b_R>Q}Op?@F3bdLWg49n=6j#sOk&6m` z9GA$4mDr@4J3{waVEwoa3eNf6U?8DJrRr{5*U0wCQ1)0#)kz;bV6?rC3^ZolT8gU-v!K;fSBsq3GPJKN~f(`K4MJCGhz~Zc@A%c^PIQE8 zMCIOUH^bVyb=>qZwK zKtx^nAz#0e*>d4>!E$-`ITV~s#8uP|q7EmlVp!T$c z;(hK=GJ*|TTYa8QD2D4@aDBqtv)w)SO__nLfVJs4lnGL=5X;vMz|*#Yj^;uuqNo39 z`(w;(8cH@GKnQ#SFdhZeiyWpbMGSr!EJi&XBG7oJ~7&yGYyY8 zzgW?F|4wXk;;$prX|%~a9LntpS+r@Bxnj55lb10Sl{V;^0q}l+=}kFer+Ptsbl5B% zg=C&wE~4~iyWI|S?5>|b2TV!z}wsZ zGk|Elq5E^^gU>--)^+D|T8;~i6|G_fmEPMgS9}+duY<7#;%n)@o|P)wYPc_}UpDM0 z84`u%zmD&nZuu}07m|3hvv0Hlx08gd!}~4HZ%9nSi&NFO0^5LT@g@@B;SIclKLgFi zPT+?COnuyqqZ^?&&;3hRc2^vu;T|) zs@`)wdH>?{yW5?Ct(P>I4V%o`GkTH zxDIhYW{?bg=>S?9SFwWpQ5`ff=a{gtI1&5__kpvilHZd^?rLQrUfY<4m(-uP)U?iL z9TE)DG-4MWx__&UX>vwZ+3=e^x>zBqBuJUrEscznEqI)Rxh$eQ;KN#q@g-okPUk`#z-#Puj=fD|H&;}g1yig)oK2E$|C4)`@sH#B^HUgKdhb9LIn7#&4t z{kx)<(Ns4iMB$8?pLhE|(6K8Wb*srME1Tu*=)P2mkx1R{N4QazZ>$lNL6Lf8e>0$U zeojq7+=w}TbeDH*lfY1BjO~|z5a`qlwpjdnPet>z8Vl^KWg_$&`m6HoQ;$=Q$4|@_ z`UWZcsBxc&D9R~|x9;*ttalg`bB9Msz3HBD+G*o#S}!X4rT3jpsI%A-UDD$2#{_LL zk=ii-WS@?ze52y2ZZka2jtJFD_w6wI2E=C|%({J)!pa&H_ z-tr?xF0I>x%9RmZ=h>VDoU!+QH_hYmG(;(7e3u%SB_l|i436)+6cPI*Wwl95(*F)oG z6SB!E$zIEv>{4ds9sYhq6vi!R8LEk+>gad^ehXOqIp7XR68SXh(9zRdDGb+SB%u;k!g{<5{dMmq?m?)*9#OVgB=d0u`mIwl~!~;aYi_ zc0`wwc>@jy^jtpK14dkKuAd;~oh+MqKGs?IFidHOj{4#dI(c$9B$Kayq2UQUU5;*? z_@qRaJySPgGC(rnmM3(F*P>M2PYhmVSgYg^o2cC*kKM#} zw%*9DI)25`@m{aAQifjmc(t~?_q@TJ35m?5Oudjvsk+i0M{8&>AlC9_+JiGI^zz-k zz3;bBP+w`O$cTi2$pzAsuP>G{egP;G5ccr*zX7Z#tfHcV#~ix!PsbsH(4X(hC*mn` zb9r)1OVmBdGnq9$cIp*kZF0hHb=keu$GTA@)^$x2Z^@c;j|p8wyc%(pj%?Mwh<>zu zPC@Z$XJt<1%^TRx<84>Dt2>(M{k#vL2=!EXeo2X91qRsZyGQJ@I@<*L$`lmvs97hA z8)ZB%S5D}@oGy#1M)*RI<-#7NU2#c=C$Cp0v$i(kV*wK*l}^#cHMy*80rq$;!ecUs zy>kbJ8qQ&vDa|V@|pwTeP z{o{k=YqbsiygPq)&DrbLu6P~UQ)slC*Q@dZgQdMvwzEzNGhX1gtPM)eI?)!59wcjK zGPb7=7=8Mq9R1tPr`&X8l_cmXCYHH}WCKJ8f%qf$iBvK18gvu6wJ#vm4`hfRlmwuM z&t(Mu*}7^xD4J4XV!!#IC_-Le<^rG9GDIa|XXogGE5RlAsNUT42?xU2=KP|k*lEnW zY{C0mmTq6-HTptyOTYQI2TZEdn~%K_A9<9j3wSv7-F>W&&n*YrwN02+VI6$E`KCDv z=^%B~fjPhj8E7~IOEBuP`&l25Wn0+T0dZy86rjB<_2(a8si55K&I6W)I{?}R$=L)Q zBV$)bN52spXjxyGOVqLW(2A9{-^|QnzZMZWAu#kNe^ngdmOXQicvr*mN3W*2zjKaj zc&O49DP}QmYm)VvCpn3#AwnJeER7 z_&%CfL<6-BQe#R1nFEqRyI^)rgKPx`p|A+hEH#L?17d;kgU`1QvkQ_P;+Ne{&@#cz z@ec?9@<@-Js#~ZE{=Z)F*k7=XI>cD2!f;A_?9aVVJ&7Gi?hVGDMkFm-&d^d3y6ZpKFgvhaQZ3Z6uQze z-VbKEfw0A^K;Hm8O9Z($27DmhPKfotLS|W-62ULLI7FT->Vgb-CGwLNG??sy+SJ<8 z0;Yfi;%pY*-xEio*rZCGo;eA5_0{%j^1ilv zaMtyte2-Mid(*Kkv;*~Eu{%N}?Xm1w&3#|0{Efiv`G`-pr-#Wv1v{?&zz>28b#y}m?cn?Efg!v`1?+Uo3+Wz{>Ad`lRA?<&42 z8Sjd1JSV3F>8Ux+{xK=InK+-`Kg=}Aw zJME|AV+V>V*9)fx)SHHO2`qZ?Zf_hp^Cx=`&0ig;^$1i1toZ7m6v^|S9aS;0@L%7w z#TU`8G2W_XJ+wkJ{#m|eUs2~$pS3bYdKuBxC+Na(>rB_dr>Q!n?Jz%hQ~RTVM)`Pv zEw3GgZmG%<)2dH{oP&RJh!cvev{Ee z-4iN*&=*^N@Zn%fshM%|ac$eMb>dtAZSr*riQe{>w*y_tcn)=^>)P?n1dGpdBWuTp zV*7Ixh}(!zr${t9Ll)*dtFg}xP-d;IOAev`6eHcKEcJT z=45hH4rP87p@{wZ*!>rN^Bf~Vm~T)%Y0TC&2lE{g;ekC=2n!eXp8R0lfy4hOQXsfO z&B79l^kH_utHzfD-5yopjTaJR?~e8WtSl-i}~mMQuyTzSgIY z9R#Y!rk_d8xR5!hp)Ffxc&28j<&=oXss3q>dUL3LA)kqoQ?iJMr^Zy)H!{Y5>7I|B zG0jdaHWrwu6}+W4-X*9!3nlKyZ@^P46OCry<6IBX^%16gal+?I~(KmVQs*jCwYJ#ev zSj=CjjJ=tOkOP6eN1yxFvvY^I8DfeTO3h-HD^Dv1X)E^(EAa)+V3#5#wqfJmJ?9he z$@m}~EK@b_Nw+T*#6iz?C~c3;az+iG$*4xwwME_y4Om~@-;1?5To_;2?KV%Fu~Qfr z^D)nuBZ(!uR9sdn+sYcK_7kU|P{``tJFTDCz#(ozN1QVymHvh-gKE(`aj@W9bnD=l z#v+K+ARTbvn@?hUMA)q6Tfl3=cv{e}IPtT5WW(M5Ooc9f@BwQ=uKl`W<;TL>Dr03X zfeLwnI6h04n?L=(M+LEbPn@ArNEk{U3ap*AG~O8H>C`CG)Ff=2$gX>H$Vz-KkTcfL z*THq+h?2uqU|w5*S3WZQjTTq8wHZ7m)_T#;*DPGIsM3BW;B#pi4QGZr)A@nfXlp<( z-i~5~xLxtO6w7&C@Q1ooN#l35C%I@Y)@vu%CWbyUGnw?;tv4nsG97G`6tpd4|9E-X zWs&&NcH?U7>@VVZcG1>Mv_|>pzSq96@Sj?7U#yx;cX{+3r9$`Z`GCwvBP!^4cjfMW z)uK$o6}*;3PUV67Yr?$j9p}W^)Wk%Ib)7(ZeDrgB$<9wjeUGZGVTktPo@MY}R7wOS zIqXckv~#ez)uv9U8IiQ!y*}^8 zT!K?~)iFLeomX$0DV*s0t$?iT_J^mg%mpNZ5fuG(E&nH2M zZAGtMFc1Zi`V}XBaHOoAUZJd%-&OD+=;3i4L#i52#BEhqf+q^^TVgX?uIe^prKMxb z^37H)^tM{=Af}~VLjuj(bxAI#W>fJ9Fi}x1SD@cVvS?p^)7eeLKFdK#eet|)OPlT1 z0<~JtG4HiAxn^>YZwLBDk$*PG<{u+)$GtmSF)>+UF*XF7$eyON9)2*gw9=gmNokr) zc`)x+ko!hfsZiT!+4~(~3Qm+I6Y3HsoQOQaK0Wa8GKufJQQZ0m%f8A^aMa6%V7$Wo zy1n$G)5m@H4ITT=CV!Xwxj|DZdOO_2kd4MSkUsw^)YjgSrKUxzm8h`w(16$cw$Fi` z{?(+_mt2EidVgYyFMCp75fKyh+_Dy#T=|+leq)J1iTQ1I?R(JzLZZl;cl)t1Aum%1 z^sULTW6`K-TS7+kz5P?)?;|`&3OLOZT7?m^CKHoX)Z)=jB4@Swe%2b*v)u8SURjB( z*N3K7MyHHT^|l#3HUxcaL9=_);1n*go;w_K{vs zbL6?NuA=;T0<-Pra~q4=szcHT9x|eGl9EO}hljL#l@D+}3;iXHSP@FN5tS`nJbnBl zmt+c}8~hDK2#j(T^AYmFk3s?mkkF0jOS(x%OQpYynPG{j=Xhc z%T(Uw49xPrPm=hf_1SU?E1Q&W+i&(2?G0jv9Y49ysYXf0RTUc4q&w$|4Ya+eIwWm# zGuUnFXc1C0>uYQ38XBvXGy{+~JNcco{|L=lew7ddqpulzlQulM{ngygBIB0pY~v=P zSTk5p#s2QpK;fsSwkqw#gpba=UTuG=N%)4QPxdY?gY>}@Ki+qtqVHd@v2`+>un50; zl=JO#j3Tk1&#w_PyO0@hXq--%s*!pqe| zXHADUD>TtVwR(ZWIg_xl_4xdj`{-Lg3ze{2XW4PWqdbT|>Ys}$F@4&|x3=imbeK|K zGti8Gbn@wUA2?MX8J^=lkh*&p6^r^of`c3PTQXg-hj;5S?%R#9tx6CScMHY@l}P%#1RQY%<~Z4oRh7R|?TsUh3B=r*pCH zOmin&)N4t>JE^OVrZ~&Ln6cSXM66EFeG6BR`8e*az#Po_BcuFoj(XDg!5!6wiB`QVJ zYFjV}Ts5w^wY1td=FRhxJCNA_;)ylq)32+6=5j99CF?UsI3M$BT3-7IH4P;hU<&Dz z5Lco%J=A{s-z=ul&hhg-&F{9myeJ#Q4WBEusEWd zvy#I+qfv%pz!Q4 zFp}0XT-SX)%j@-vPWA&Ub9(S^+hnLz^G-s54JE=d!AS}9D^B#ES5 zp@)2=*KQ6DoP$n!3vr{tGXZfV(jquN5(iN!Im&B02W^e;ZI76?Yz zcCOmLCv{%f`9OIhMe%LhQB?hB2YJjup|rtMKi*o5*>L^$%YLgRF=AdO{wPli0+i!I zcIysUl7IM&45zKI$lu&Y(|B^qC@yba8Xbm7hmJeZuIEYL*oXhVm3Zu%FLiC|bx&%E zh!IIerQ!jLl9GJvSB$j@ZQlbfK802r-Fw+tAa+-pyOPd;z!OvK`>*R~52ADVQRv9! zn;$M!go*|wUs8N8VtU>tVl*SIHjeol|?cKxm~=b&F8ZQ<2AMd%KS5F&(* z`p*2R$XdjR9pY1pk=c1pa%0Po_?f1FcsiR}RW`#IFWN*HL0{$sqi3!1q5vsEFst)H zoI>?&Rfh0i7_Y==N(aT{_B#iSr=q07a+hi{j!s5R@}p&I_OtP)2fCy1r>>0)(HOLf zG^umR%d=uC4`Rt?)7-gE9y&mL=cOF!2d8b_2O(K$iC^@XS0`A$pK+o|yS|pY`#m`b zQBup!&DC+<+?HgCCUHTcjG%k)@QHQO-Iul>%`uOt4T=rkN0;zlCr}fodO8;78uJGV zU+B+%ktW{z)M_$Rce2$pTP4J4LbciuSZbsmQtAW5X<;;XPIG1NdOuk~ja(Rc^*ZBM z(Pv|UQXGK<-`K;|Sozf|sY5g4Y=eMrz3*x;3-;L-Yp&oCQRD}Ekp+IeN;G~cK@82a z%5FxX^=qnGr;EC|4`Q5@U(*jo;MM$0YtVT3blW93gFQM`Mj<+YiPGTq!9!J9+1UeE z;b(48C`hmZr;4)j^D!-(aX2C3&i8iY&#PO3g}Svi*9qlc6hO!pi3Ufkt4rp!-_EZXe27wvT-RrH2DNC zaIQye!=uh4Cx_9cIePBPjgYVe|R%^j=8Tt_?4&%iM0oGvtQ~w z9a-0GxIjfn&?}%f8fqlPPHf?19GRP4Tv!nZJQZ(4n`Cx)jPsq%1nX9JQcS1E@YWL* z%pQ%`d&;}jT0d2m;$dztw3QYd;n@;9FN zRt{6#ZCBz6=g5F0W%sBqw+>BI#M0d;Hp7#OPr|LEM{i=ooT4l_Z|OAT@%cX~rp;#3 zy`t01p^RXVdJ&lAyMcv;qFg8PA!_4}B+Al;cgpz1X$7ic>1Kq1vzN-N_LMOB&W%UC zbP`GzeCv|;=gy;CID0i&B-%{8<#Sw`8W7ppURa1K{iSmsgXqGQ!SH9Z&0iIqyaahB zyvH>WzYlwMxv#D{-xcYk`yM7&!mkjwxrZP+?$>rqaqfJ!w{Br_HYong?GFK}yegf4 z>wEnTtS$+RG9en#>d$eg_wznDAd4Xz(Q^zq>ItP{F+|em@kt^&e_}plP0YrB*$H80 zJ-|ZupTzwgFHs*hREmF#Diwo!72hkQmqWLg_wHSZhr!Bj#>VtFL_0}OK9+4eQP4A^ zAodM8WnzzqCwH~;v)s7Zjx#R%8?tB#oJ8};4sg6m19XHu)(eg-S{pc|q{2-L@jiLD zx6{$!CWCo@=uq06omQdBz$8U=N93CeM$W=f^~WA6`>OD}k?55xG&6E^jMNDF2U+-T zWOtVt@VZ5>HD6ClD=Fz_zBzNxT!{#+pf0K7T|*7uRMX`5aa%bnE4ApyG$KN6ceZc7 zVWj*lMm4{8;veu{4zm~|M0mv6+OY3tVar0mGRqW8&^STWAe@DY`Uig*g^uon>-s~H zlAEY@Vk+8$0a%;vw7!(H!!$Wm=uJ)7v`s9Ltr{KOd#p=}>olI|?j8gL8bZW3Zrr?$ zJ`*SxIAuvzOZssipP%Glt=ZuLPuuTz_fOzhPK`C3L}Qu@Fl?vWEwYYC1S z5A`TV&jz2=>%%`gSPy%Ddz5EWcqY%czH;Dwh{ztzNnYP`DwU(_{&NR6amJKmWoIoQ zJF}u7Hw{}bk=z#x!&6^>M8|;J#YZ&i#wS^2<#Y_sar`U6#H;A`pSj%AS5^I`^-tT? z2nh*IdvI{1FD%&i>#^OHv)#X1G@|z1;P( zL#8_?7jTG2x~GP?aaMhckNZr1ANuA^lTkmBPx5PmOs&R~0RjFOZM|%anyP815?vD4 z=1~f06TaR@(^1d3dyl057n&gE!SEcdNKOFm%~%~WRXCtc^eek(*{``3ABpdRRh-I~klm`}mFP2Br%oTu<;D#+hnq4z&WK1>QpSg&-5LiXHUIe zixu5;i4}bH@J370Zb^PE^*0z#vFH4ESg)-(p;bmb7z`wxrz6orM+`C14P0-T>`V8j zsta}}e`7j@P5r<*WkS=0S5U6#!gg=M`o8(p169qVfa%}86#Mu*hFk4k~gmVppaWKvuytq}fjmh&1(tUR;WlOaC8bi&;X%kD(^v2JBv#cugXyG@gB zJgLc)4c_(7Dcee{&R?>P+z=hVd~sMdLxtHsdgQ#k`Xmy)q@llW#Kw*1gJv!;e6^QV z#iq|yE`*)MIj=PKA@@4s&b$rA?Tqo=@t}uB1|)6Mu}7Z4NQ~Tmtt|-U3?4RtnDr(U z4e5AGa)?QUhJtR|KCJL#F+wWKgk?oPEj&qsLs;%l?|Z3V!8@6>BGm|8NA)jw)4sVd0@}w-$ehIqZU^LqkND zoH&_Kp^$$N6o1>7YUFtBy+zQeW+;|eHf9e-dficY**3Za^QFo@{dFjcj)Kgy`i!LQH?&&;{!nv5hH5D}?oIl$ou(BIlEctvIa*~KsIbbPFet6zwoH z@%$a^wh!jr?Eqhi)12*Nf3gL>YpwM_&AWl^mmV(nIR~u=<>S;pUt{n6g!A%yAg=e< z&8exNqla!5W3^i(J8kBK3*UvtXhM{Hg))}O>5Y2vB5n&;_wRpt_E_qcu>sn>CySFU zo4m9}SX)K%&rDtEPx4j-j82>DIc91WUYj*YhkhF@Q(6&g2w$Dooo>tPvK#7nWBKfe zIU}U9$fC_iVJ3D*D#MmGIK@aXqP{*y2|p)*(wDLF$4>7Ghb#F!DchD2@9)dP!AjYQ zi}_~{_}%)?{Y!5KVcABW~Ey%yRL-iV85vMfUXX~-} z^dRP{0t!Iw&iiJL&OSV0G4-bx*mD&`oA+89Tr2kS>y5W+va*&gRBK*`X!rQ5HKP5Y zU0sgA)KpfuRGxoq5~^y!{CA;F-zIKs(7cvZy1C`)?1J8iJm_yfD=Ms zS6QOnxH0FXWi!~IuCV0{jxDtI74#j2vmK)54!3SeU_8#Bw^3gGP_;CfCI0>O@3KLy z7P$_#xBc@9tO)=_vTciBnX(>&;6`%mY1$u89Q()eRW!sCp%Raj-k_^y zl_OY(!*)-var(?ooodYFUFj#+XP*+q+rMj>Lf?Uit;&mUjI3RLpC5QB^jM5u5(yTN z>9(m1u#v0t%ZiKF7412>yBubop-o>{=?@IujP=wW8nB~&Mf8@&GhP7OrHW8ds8Dh@ z`NHFLw{|IdTCMQ@$3WXAvMpw8S{qx_e5ywW)9EZynd+7A@UGNq{FjoGTQ?s5_R!0C zG)Cuv5=YKRsMLPJ7$Y*h{RU@7(3PxVrf65U{XHN5y~~g15|?**{UwRZ{jp!eVPrcCS$D6)G$Q!V}e#3R6K9CLJw zST(qT3E^4vQDSNube$Z@AZMc^n)D8rovEwI9nylEBo1SB1*F%;xER7q-rtu`Uw%1~ z{iD85brIwcqD4Y+Ux#>B=eh1hFBqgrcA;z zN$vAcdSkI_^wF>S-g>Luib5K4ZB`~R9Fi#{hB_@W_$y!4{}LC({~U_&`jY!inLj5j zRE(OhtFNo|YiE^^id&{tPg#zklH1w?!(0@?O=&wyE~6h;$+fEH(@G)j9Q2H@5Ln&O zBg+0`43@G^dOWgwxKaN1S9Hdse-K!|uU;^+=#_Srbml?XckcbW`$pA==f;>^3TGL< zpgM84*bCLysDdB4RM;MhsFhELp}Y2DHL%Gfl{qg39cG|(=khEZtIc%gC3A$k@{yeU zYPmj$_E*G{V@&bv#}d^byKUE3y_t8ICXcSAs@f2A65dk!K*Xx9_57svUD9EUruH)7 zNa4U!V~s5CdvY&z8zj*@@08;CRJ!iHIMc=P8R882_ADc;8w)#BDY{FE54-ZGAj%y= znsfbT!|Qm=&*v&bW`~lsQOGi6>rtf|n{sdq+9L-JJ$i-NXLAIeOf(;HZrTQ)b9g1k zH&aMfZQG4)yGa^0Y-}`kgEqEp zr?JzIb! zmhln+XdAn8d2UvX>RgC}IFeX|pSjjdDG?F`bwO|%JQlN^0dv522xQf!#cVD-HziNr z_s@uY)Sio-l4j|Od-#+{?S8iVLFY|(Zh|!Ic;yd+fY4Yr7)EFP$c-fzVP4^*92-w?K_a)T(VivYf9Q5&!P70^+)!|(O7zPY2227A@~ zZVfcdO+J}e1U>>(+5Z?mJN;o{5Tl}4Hu=^oUVW~Iy0DtV46o{?)ni_oZ4U_RNWthZ z{pdtIZBJcUYaXN1+TlB&(qOfD<}wJrklMPxt2)~}!J6%5Wd1R%+_3gT!Gr>xojFR* zQO;p%LZQlW^L%RVG?&zrTEuxg%A?4}sgOAjMuXYULHubmW4!cDyv?j*R9+k%u!_O{ zf#l(jDNdQ2WQFEjv~#Fba0ks+fl0{;VPkNylTE#OFP46Q6+4dR$%)3EZ21m662tcu z&s-HbzUwBKnYx$0c(z&jEv`P#J@>aOTJ~A!#I#y>S3r2yC_fw-((eg%Ng;3xrRLP; zh0rLBP#W49!;~1^OYZ)iz6BwU3^x&^`OZ(9v%|&y;CvtAI4Zr46ml8&q!C+X%;R;> zxL|9ndu$X=?6`G!ew?3d%_N%Gr?dD+1&g{8sev=?19#y_-fb^YXH@TGf{dii49QBV zY^21o-=9QV{h{uAjK`Gw$)2Z z`rCv{D0hGSd>Z@YCp8p*e|lC{Db*WPw^y{a6GVZJ7PZ#1VyCh5r;es1(_zfzA9tx5Wm_+yT1;6-U?0Gg^z zXM*KG)eDoCZg$nt*hW^5u<7X8RAt2;&1pYBZxr(BzE_gPw|<^ab)hh<48H=iVY^f4 z@p9cqy-{=%N*U#mD38G&o`obk@5fv`^qee&6g}?_X-Pr2{j``y&at(<0mXq-DV#?S_Q$qL9G%_}`;&0*R^8X>m$SvP_=6_z z*J7MZR;|wi%QBl59KC-Y{4pAFROVDLL$=jiY@XJyP*E2l$=I`|` zUk57;(_dCd5ZyVtA8VEs$>?c0<*_LUq**EV{0W8h@2PXv3=eg_im=ZBot0kBPaJ^Psz73QuS*)sSjq$XYlj?4Ud4jgRWy zOAxxnSG{VEQ>%ef<6OKq=VMz|0S+$eQSBVr10-_WJ&Bw{A=E`hwY2zu2=AJ7-?b~R;tB}$24dm`$LhAsPbrGN)I;2SS zRRsaX)m%m%Hz}J;9Bdu2I2HrHR~O9|LD+@g$<`@(CT7l9M!RRg0>Xx$>E|;ZiY;gk z4k-QmNkj^@ibDcYUS-=R=K!*yFmv02P!}X84FVavCwKqTVzO(-s5^HRVS*jgK!g z7A7Yorr1Zq+?em`J47M_vhu1pGrVqKvjeb21ADd)0D0{F75MhV4e}Hq>7PAxtC)ZxElgY*+ z=)R?(q5B7lzfJ7^H6Y>rlfCt*rZe__fA`(Ji2)}r_9YcaJ;WqrqZ_!+zg4osBefjiIVV0c&-+qdQ8)~^lL zS;&($-$16}jhw0OT%ueoRordZacd>AI(Z6XGHD$#ntt^c1tWYYFOt@6nsEfJ?XL>} z)H;u7Xo`|m{&_kfKa1$s&3uzi1WJ(M@(Dkdi0AR6_u&-bkEvj_rSkR{txg;wBQ+O# z6Q9tB$k)NQVR=9G_iG-1%7}(PbZ9=JE%Q58cg1hh5IK>dD5kZi(8XrtqXSsupPwmI zLv)lCv&HK@sxzgB&m=-Ib@p0V{+(ik(9dscA_gFjpkc9%Psib|3$-SrHF5kkQy0yn zS<8#4U=!Q-FVbMa>^*=j9SZ&8-s~}gLq|*lvvXM+ z{Qmx44g8$eG5P@m&Ew-^D_dJdN^}6r@|kQG;Ku`Mwma!xn>>VKxD+r7s+f6aU9qtR z?Sx^ffwiI&O3u?R`@Q~b`+3GHE|H?i9cgHdO*MaaPn_VPh4PcJHcno*y z;BMj%r(gSKwB*{2CtUJD9DPOZ_p~%NYo7Wh&OsIG0rX^$ zQXohvs7PZ{s9@FJMy2Hrh8mp{bfc?3<0UXHbykXFGE3oK-IcU2#zTwGk8u``Mi&qcdg zsLB2xS4ru6VHY7x)%f5^jdkihby-K!^^cdZ`BNRBkoz&bD=u>A8;MGTVepl>uH0t{ z$HV+fDw)JT@1|)^uqPvgjdsn7d?kmDP87l}^kk%P8vQWhHtJH%`vF!^8k?1Oe%9jyd`V6H_&Q+{-!lv`G!$uo4uoC~KDb2vz!<+$W_5U(vm^rS;WbNC9yvAlC z4b?QhzQ)DE>eRZJjiV+QS-sgSD+lr0sl?T(U&ca6i6C>n)gKNIaq*8O( z3~-ta*<^Det-f~j`*aKKUjlpofFxx`iQg6oW&?|8(3^KZ>|2kD03=H+n;QVW@|}hI z-A5M8_N^O$jVlX1nSv&S(g!-c2$7+pIOw{=^qp3I;JJR9s_Hl|VwoJZcubr9t+i** zpb*JrkWF3v)oisP?XgSn6Y+B0?Kx2-nDa#m9}{_pZCv{PBn|3|*-xaOsstz3jKr6t zwXC15h!b4U8U}b;$qhbUu%vR}#I^J*JPkZq zb`fs!QYCJ!|FICd>+u9yMT3Q=!~~QKq~4svGm&w}v#Q!?6i)lWtv=5E@n%v|S(h(VAfcm)j0A+LALGdwOz$(ZCu_DO%>N{@@>b--FT}9lk>Iqh|Iy?|ufc z-820c3Z1#>#Tep=-b%HQCtCT^y~Jc`NNj7j^(mX&4j77L%}O}fea^?6ydU$|pAKZR zxI27dHd_m6R=;Zb7%LKWK|ODC*#=!ymUjJ8HX1|s9#lo*r;jb;+fY9KI)1kHb97zw z{m7lbLOGJfj_c{_)jBpA#bKE3D+qnDNoeLQEC9<4M~UFo{swIiV!-Ny2`$uGtd|fD z8U}3Yomwz^plbv*1i5EvPzJLU5_kI3D$`#*c8TOn*(f1iqj4(pz3TdeY)>?^r~*pCPFU#n1c5(ShezS? z=HMBV)P;K*zOkFBP$7~BT4Rm$yJ20tE;U!HzEJ1qieWHoL=QfXfB1M#4sQjs@YE^T zNOSnXA^U>zMz^nGcqer;X}}B!;nldFXo3C%M|Rw^xDHVzgBI(|B44a`E=j;9IKex> zRx2YjvoC;*@de1QRkFwcxX^bqRzSQ=pdR2{+g5{5`Hf!_EjWt3PfW1A>B%eS9x-{etFnI}q|FRG{Bc zM}bn3mqGcsxGCKZed{`1>m8PPme3>%!JaOL^zpRWxZ$tu) zb6+8XJ^XaYYP-*mOSqyieN?DXA^w@fv^7zEIkQuCKK-E z{8JlFlXfXZsW$~c?ryJpduJQ7RklFlW>{EDOjS?VAWge=g3BzY?^{g3DI-0b*{C^X z)2jEMvD8y7iUL#0wQIY#%B=#S2W^2OyA2yEcWz0PRcdo90onrsb(;ky?U|U%S9V9N z1WRKZ>@&KTyK~8zx*ompOxAYQQy0;O<-A7hr-jT{CP)xoWAg_)7Krn%!*e4|dF;(- zY!s#GHMgE%P)B~hikxr94;>~Te)TdBk^}i~n`S&ExrG0NiDUisc%T?aR&z`xt^7-D zLc-p-sf}onuTcMGIj@EKBdDPDv`7ysqzo3MiI`;tHwRMwldd0=(M#G-N5LM{&mVEn z(2peDnBLMWx}`y=+k;if^o9g2=ue9@^LZ7DItV;dyW6(v z>u#(n5u{ik+ThB}cViUmEL7nxa@V?OJ^%#Cq=14888?2ICJutE1=1KR=(nG42>0w$ zRPY9~ty~F(kV!|bft6-}$Ko*XCPE6@+z8Pi4too#jsNZ9;_`YZE&TkC#rF!Z$=m{T zRH2(u4jO<+CGi9_Eo?^}oI?OE)+VsSpr$!@a+j2x?C$2)_~*}mXsV>Ib~<&YL(-Ay zkk>YAP@s6pPLZ4LvQQ~3;uYBpRgCd3V31kq&Zk0NWHzr7QiL2fhI{E9i=^ah%pkgA zi;R;5H$9$Sj%)6S$Q`OLjmnUdnlT-I2IZ=dAd#eQTueM6f`De;ELw4RkmeVEm0^wa ziS)1NrVpsGgz3BL9fBbp=`;&|<_FZh0>k&_ft7<>KN(4ROC|9@-nh!$qRNY@wGK?n z8@?=p`GpKBp`L%3%I>>` z^u#mX*~!w{Oq*fK^37&o%Ys5?Maal!Bz1x&K?5`^<4mHdzRt-%$QX-x^ruiD+0n|F zX!c|lO1gTlp;$txOjeb$pJ;?_g$N?U`I9Dkt)$L(@(GeNXO)n)5aUoWhm-izJ&1XS z{t2vY;_Z2-niA0Imtw~3{_X^JD_9p7%t#;)3c{y#7YlRN<=GsIH8X{%y$JiqyFsVw zG2a`$r-Fg_74>s{t8vb<=8}QWNnZ?Cjoa<2dtM1wATDNP*L-$M=(c9`mO&{1&;h3` zBCp25o9<+mJ0JA|iw;^91S-dnXVGMQBlGuFE#iKWU@hv@cMz|3?=icU%l}1&^iL-1 zZ2)wP{c0gD;OP3cKIHo`OcmKVJ=f;@j>b?l_Woj*j+D`D(}OsM%3@B9-c@Gbj-cL= z(d_2+GLtgeH4OSI7!PW$K*%S!-+r!SSScP;!WQ7HUelVVy*w+V>15rjxi}L%t#k9g z*;&SJu8CK;(5UHdvrJPv(O~Cexy#mB3&*5)<|ug)*@Cn#6_U{qI1)ln=AS$f(OdG0a2S0{Xd6OLD@0Z z7d=OyJ^`IV8}1hX-PQ#lN`WWG10;$7DlYS<XlR-v{f2{q9`@(A2N zL@{Qv!$PGEYY3aP_LD!DRZ$l8{BFX3EZ?Dp>Pk+kBzk^V4O^t_F_@`p1QJ^;h07*dtDG5MqjdfhceLvZLdO(``#|+ zQQyKo!y}>YgS$-w_BbeJ9D?)@%mo%O`I$B1hu~Fi?fy2DDK^xud(Atso8cSMe_4yg z9>&PBs(;GQFMO~Q7NfjH8M%A?j(}y0tPf&KYNT?5(ST14%g%|W;V-TBd~{0IyFwz#o`viN+%!N-+vAzz=0p*298`C^oOpDId3=*xcl@qII; zn=Hdl#5GC4vy+LMVLF7*Y>plzEkOE55i~Gs;$oR*paW4nN@iY05gKaYio-*!&A9x> z4Q3>ULAR)b^^b*#faBQg&jUO3*eED>oZ7VS5c_v^?*?e0IW{U8 zB0=uFjbTT}P|S&=ocUMc^fF!o6FGAKbX!POZ|enbXc|2e$`>O_ zIf{$p^9G_Ac6x(Vi|FSCYG+S>L<-D|Wc;maX=&HFRm^2=hVgr?W07ap0bkP zYts-|Vfvx_x&oe9jZ|wIRdFMDgyXg$#5%h2z~$-KKGoPl^0ENSc-q#!Q|eO=x+N#{ zIRRX9{AkD+B;ko4AE`45y0)fnl#3v`VUUIJ6Ah<$g5K{16N8{A`X36OsxtFGQfGrUp0vF*l}lSo|FlFKKUoo;NR& z({dn-d~!&>F!fQ+$aAuT~s$D5u>B!#0fr0Q|T8 z&t2flAd=V3&3OT25(XgmSJB+;@hC<@u-M{k!Ix>!U^#{LLOgt zrBGoB=oX>VBwVce{TDk2(f=DOr|0fqJA2@uMCh713L#ix2>}3xrU4*ft zwxi3cHayjNMxj;eS~Dno3e&&yHSlYA%Y7u1gl2n?`ht#{9gfc$WMN+B5;Z@?wm-j2 z(nWx@{e%_L7AXhtb_+f|6bep{qWL7GKwj&~C;@XFquKnMK#d^?klC|zaYXm8;NNjj zjSbOMOkr}t7~Fqe zQx&~sUR+IfPSyT-`NUsz9J9((Tl!QUG$?~v^AkNvsFZ*?=nVhCY36&tmkJ{Zca>Tv zOgxdV53*|A-f3guPqGzr6Ndf)|JvWpioN;vu3o#Ihi>8}Eqm45#5VZ0p?Y!Ig5nM? zGZ3z_zv5I=H5s11bU|NxQL}3iM5Q36h%25H25wA>tBOfRW2zL9qBIoLn-dB|#$i*9 zHK~|OmLW!ygxio9%a0X-RXmSS(s208cLaxNyZ=cm#v(vcb;w9*eiGnqi|D%?1L=%1 zpT7!HAke!~W}oAE6w}@Q&3oEB^^%n1dSAlV%Moym=x%SPjVOa#LX5e~`u-6&i_JjI zl<@g!AJU_G^W+P)-Lz1WH7Xni)IO{TH2o*Jrlt-F0mSY)@LG4C_SN;!rXrSJ6;V^G z#b>#g%foX`0*EhJS-!d_`#St?e!{#DghAkysm|@ca^uE{XdGXG_d;&YZ`;zp*sEa_ zzD<@JkuyK0)e0C@;I+ktL=oFje<`9Is)b4oWn)qIocC)nVQWw;U6g94ww2t8)_i#T zu-3KuIqb+p!QW|~#UQ=`u!e%{w0-wd{T^cLK zm)Qw8yEs?MzuI@W0_bem>T}1(#h%3_SQ;sKlh70f;GG8sNOCZK>ZrlM9zEpYDWRgv zaWtI9_L9CDH6CXP%wN_F2N8*s^G2PvTB)cKsW@hs5<1ax?i>vc?(c3B`W$ibC&Bsn z)2UcKZ<~w62HS%oI+ToSH|b;iO<&JHJSB?1XEQe{gugMOSNUAo`&~@sW5Uk$ZjYja z-mDy)HzW1l7Gq~A)Ts~|tQKYlvAwfn9Y}35Guu7X+R*ScHaz=&d_G9PqA)%h|C&%a z{uqXUW{}F$0X6#5FVU6HxGR0Ys6wz^i0&Se=ex>-kDRF&iMCHh0VQ6_UPazj z$0&k$1`tHMLjlFyN5I<)C=L@dc;3!-gmikIhvQFD`f#d z5SZbgz^MC7=m+q#MM2XWzm77mC&e`9h8TutrRTHmcb_Lf+@W{R9WTD^)n`Bil=&d; zd(c2^R0e$B`|LOjoW=~x9+Fx&%(LqQWmOuZnZW*!k%XhzrKmU!*9i8M4q`IH{NNKP z=Law(#SzZN?1|$i1u+ra!ZeGt3~r}E-C9nlb$U%_l_}0qlu;gQ%@xcuW4V;_hY*6f z?2FWgmVJW!i44cxXZP`?7n-x867$yluS~{1l#Id-(ez*G2=#h05vdLzVAY6GK=E`| zijg2(vZ8TC<6EqcIToC?Z%%ZOS-kwyWr&8Ae!L)<{y6wn3wOum5qI?gR!)%?R3Tp} z@1mSAH2O)1p~j}0n9Wya%x_Y&1*=UKAlhU^d24IC!{PjVUf)~+O9*^x_OHwB!NN~- z`AT$4M$Icr2J9m%MWQ)3f0y1i(q|sTJ+tkIbc;OrqZ($D5F>SdT771Sx5!v-eoyFk z#n{%;!j;Or!ApzNv0uKDAOX@*aEEAgcr=b9A={^0py~C|`|v+`ITs*{2hDV7sa~cO zGj`U2R9edJZlNfeZxO@JHoQ-z;a2Q!PtoaAQ{O;;sG;qNGocd59^JMWF0yOdyL8$6 zXL|-^d1F&U{pGC*d`W&+S7$ivu@x63=HBIiHg`J_#aDbMR>uNZ$|}ewyml@xzyQTu z52$1S&Q?c7U3hq`u zcG-S^1)U?te&-Rljv-KQ1u}`esmFGyp$1!%y+Ul!mD(P713wV`!dXh&t3q^2a5?Kl6j65rt*? zD>n25oS$sy;}#bcYG+8j6>^yTwK{RUyyOxLsX-~?)OO#0t{q8R2X&i-0k@6kxI%?C~H~jSLL}ThWBi5KyXnBBc0{x%2%q!FDK+o59QyxRJ+TJ ze-wd0m?-|KQ+p6ABJkFc=f0O~_WHDX&cSY`tT6ugyQBdtA;Cy3;La$jns8ei~N_6q> z9*nI;XSuEJ!yGydd3`k$_;|y5H#xmw`~}Zpu4W+xwtS(t00>M!rD9y=5c!SwPZ(r` zgw0?~PJxv=J$HVjN6=pE4+Z3-`QHlDu9d{hQ+3~m6nJ62)}ynGGf$bzXl^qSPwAqV< zf8fcEE7Q0FABLaR8AG6k8fn4JLj`sh5~;7JmR!gLVn~ztqe=OFo`?qf)npG6dqv`x zv^BB)I7bzHVfFaO-*drAt}v`i@BW7PNJ-z#`sZ{pU1*26^F+n}d#xWSDnba*EolWD zMc{6;Wc_gyK>tGGec)UlAGr-Pa9OFDYiC+u=k-<|R$-4ufZct8P%`GoK0Z6 zv<*WohZ_zv^Er!BO_CeRK*Nu6=7dgfSy=D7 zhgFT~FJ9WTu^75)Xp{CZEy@16xA#eO+i?k~lmEwr1La0r=k;9)iP8{#OXRGhE=P(H%b=`+Zme%xL^ zvDM>&f-yy!GXtx=%x-p&VIG%fxrE(UwH$}CW!O@cMOM-}VYz)kfm$A?luLk5@;B{I zM3Ape8);xXvyHqUhih19=Xb_5$WY&KG^_6r#;Xm(|De@Ldp);qu0#-pN9Cr9$NE06 z#0m57^`fk^9XT1GAa=%y&Bfo+lQRev8h0e{eOGz3##)QHH)~W_*2Grh3~ZFUhECMG zq51R!njwOSq-%vfq27F3Dhi3Cl@2mBn>H<#xui1fNoEM6VV1wtey7l3;X7?iJEPIO zA=%Ry@i^h*`0V8#^tKHm{Kgvp$@TBj+D+#ZoC))s;Z}D#=4oQvvtwRY2ViJDWA1!; zLm-DDjIFen82Z^S^B6ov&7~}tRD|W4!IOMQa zddMab>Or8g;Tq*GJ@gNip^gHiwCC!dK-N-_8pmRerbIn(Cz`;81 z7=7&YoWN^gj^TB#4!|rgFDvn%HB?nq{U08^7?2K0|C-{7LIVQt^9u)AeSg8eU0pRb zmlP9!F{U3JHnh~u z^yd?l)O}}xgjEGf=7ca0j^1`X*w`3G{NpON?&COXa5iOj4c-z>BV4Y66~7IC+6KH& z6JdiL3dKGZSWd5?3NHemnl{z-Cpqq`70zR64Xc68vYOeDso`!_J;nO3n{ljv735E( zi{5X_wy!l!r~l?KY=Rie^RNW-s!8e*p&Iz1KuRPf?Um+aAM;eU(qQQ^M1703Z&FQv z451GhsH(#z_gw#6U8&M8Zcl=-t%bJFeU zQm3JZ)35<-hAgIn=rTUY1FOKnpJvJo5o+wIF5!`2+V62x$kuX1--Jk1!4!JI6|_U9 zYMPq`tt;Tc4 zCrt`A{4_~)*x($!I_H17f_hNNY2Cc8A;N~V)n6&ALwamAW#2=j(8~fO1nF)1y=0wN zI6FOZ1+Ho{rJqYKF9|;|>f69Jbk)rbG^57jV@T%mquu<+gzI--lUJ?XMmrJ+378;N zk_0O_ee^0E>J?^mdh!+fz8)~WznoOpl2$>BS}dywWbBh3jLZ)Bj2Xe|EV< z9*Qv@qiDt$D}!Fsqw&VEWty%6F=~57+$Eu#IR5v~chXR({r;v;QJfa+1NQ3%|DMxK z{#<4vlE#mvEk$ORy`H0gzjE@lI{#_A*!T^hGmZnZ*FDXg7{itR`=^3Z5&TeHHMJT4 z&ZYx?LU@V`7(00Ayqhwg?8s#PETwT6`W8;gJm9}uM?)76 zaUTgP|H3q5gN5xHz9njCQb&**O`+#eQpFFYom*JL6pGF1BkmfT`qt6n3hNPA$=;?r z`UE3#jA*|(-K#eZxmOCndJuKy8YY_Y)1)Vd4>$gKTRjN>gaOV#FXJKGCY*y11w0yg zDJ&c-Jpo3nheQ+Hja{hG1Aqo(6*%O8EDX3`yx&MGJ^$|0?gf|~s;OsKn3$uP{13p$ z`fVGh>#=3R$8HyKLNpkOfO~ds4h%5pN~)^P&(46r2EgiH0nl&ZG+8{oa*{Z%;XY z3n=~LVVUNFn9@1sIQYW@jpR@vL-W1EPtCx2=;+t5-q(yZATWJ=vAZPqhWgVz^2TS` zdqmRCKe~n^nt6)Nr{_1tqKpX4>Lq)UQX+MDe~eKW z%1{vvBN3KZYW$5`m&nVTo+MqR-~xY^0IrKB>`Y6*ab z#lcdVXH{aMa$!!Y54+BvCk_R*;`Rg()&=a#FDS9rujvcpLfy?J3GNgMN zeb6uoC0X!md~%|uc6<6v?!ab9r0j5WQ$OTYC#8HK-m839O&ure2lq=Tq$txfzh;po8WUqBhoLRGMqv z#ycVhEpSih%?k_vN3BNKzop9f(pt&$%5|r^XJH9SOI3Ve&3e67HMDQwQT!gm6fzs(U|mLb52hm^v_)FJ-K z)urWSYjKGX(86J)&e22jnTV<;AC^9jD$K%6hZT>t?C@nUP-3d?z092kxwXBk3!fF2 z`%_uowcEV-Va;s7WVZw;g%ZZM>BPYRr&wB)Qlf4o92puIU^v3qbZuP?kl0&VHg5)g zBKA71jmA%Q#I=4*VNO?|R{!6>8$h%|;`e$r0Z1B8m-@7$2=%l986BVk`KqRN?f3EE zH$YMi8|(|{`~I_F@SivD0NNM8`gWwf&B2LC%M4Z2Lgf4#(&(uY-DxRYFCHD-T(Z}0 z;-x(03xg&6^L(qjnUIcEMv%n5W&#ebUMy7|hVOziTd*cc5z9blSDEB*8aD)3z!TT8~4rCV80%- z?>*MLL$168crWL1JNOZDMl{gvvmy8opo=d`+LVi&CbKnU2)NJjVsiyPk-wrwrI4Z& zMxf#isH#d<2kO%QE)tyG>uJZW25n=t_}no_e&!xWelhDm2KlSemOViqP=6ASjTDR< zKY;y;ki2P3|Fb+9XnQ8@C5A!U2GBAdU^qiTRo_WgT0vm*l`uX*3J^W+E6rAdW_tT4(UcZ)=AuJXw||Q`irJ) zI1dyYQgtEM-i)uNT$dn=hG}IEFzpxfJGhwzNooJ|)u9W5?XHcjTR?);o-3(SX`FQl z_H;VKk{u@+@Y!`~7rVZLlI+QurBVauunQU+SGXPGDg~qUkl%tuLX_3xEYn45ZKh7l z-yr%j+mKnb1f~>1375*Dr#R(P_h`ZcsvDJHClB<;|5*O1LQhN`7sW&5xiBmzqkfmaEa_U~bg= z$i^U$D72fEy>0{yKCKa5H^_f`Dsft`P~z6xY{#3>>A={ih@kXF0AU%ZS5i&_&J$4f zaW=t2GiMUHrU*JHw|A;C`U_Q(GQnf0-?jWD;y*Uai2SI{ZMp-{MitR|YCO-2+nW&C z;nf6>r*t2=@@1QJlfnoL82D(KC+#*RtkV9`(D;Uk7zO9aQ~0efMGMhW&gcU9b3Qgz z#2OxJ{-J~Z?8%GlT078>@NII)mUfL^XH((Pj&ZC0g;uonne4<}SL}Delj9?9H=tEP z*epu78%}m!ipRiqC44tAI>oJdetu3$N&-wZfb0WZEQ!Ui({v~f=wy0ztpEP~yS23y zV6DZg{g{@e(f8a-goK3j@$sqdxYzyiWdY!xkMm!&1HtiMg-&ij?hDlUc4nWxisKKc z=R*3n{<~TOa?%#Sq9&~tJ#oOm;*JkP=t3G8c@&8itJ4q*-7*Y?LV?qmAxyU)HNqI5 z)7S8`=3`>r6IMnw3+dIf*tTo!#H*u^s6!4z5)BJ_mbOvCBpUaZ?-fS8w-g3ft&d?8 zmDInuMK4Jt1T7IdgkCT#;lQ1NyZy^(`vyrp2R}dm*WcwCH!qO;<`w`RH1l5IVy1f+ z;vMu2=iKpOC6SCn2Br;1*TsLiXu#tTnQ;9#AjFSKTDYu-_ zw{SJ*z|v8)1W{@*cpQ!ftzz1kOANb4sm?*zy(`F^L{3<(=4H3)UEEj@n^)w*i?6F; z(5(Gk=AA5Z`hYc$AaEFe9!@-lGf0HmIi?5kh#opW$)&(xI%bD*iRF_}yzidq5ehX4 z7*slqzNhK<`wsysm*c=M#<)b4FT`satyw%C(t!^$5Xv(Sr@wwxs>JLqQC${&19C)(J+0gcwpP zTAqPFuPb}460Jn{8R-$x`dGQs$9hk0RujZbzno44D6x1Ek%<_Xit53DR0P;-3nF(l z_!UhcOg|$dbF2hE=&ZsSH_Yt_%BVf@6@~3V%Y#GA9w5=&u(zFPHPFMmj!g|>*%Fv} zn}``(ew;^31XoF3(a!G*fIzHz+ONemi#hTPmnxuR>fYCww;9$YGFZp9L5+L=csM{0;d}!f|NC%emwr=4F5Z%9heU z%;==X!X^DDH~*(KK~(Q}NNkIb-DoCRRDmrR))2RaDRcQtWj+HEm#A^`eEsK1u0qq! zy|Pfz+)s6WJ26Ldl{Vv0{&Pq=(*rTNecq=X1C&+QqB^l!L%-E^tbLv-So^9sxkIx{Zpu zx-)>F`OgX*jG^RlJ0%VF-)Y7%^u7Wz@j@<#lYpPm5Abb9D|~r*eqLT#0UH5=uZV0V zo~_{jOlos;bJwRo*+k%e`MVnYp~+Q78wi7V20KEbfM&en&sPl_2aemlrgJe`ZHhlj zB~+`btD=%>VLwV3%^H1Iy7=T4NX2tB(?c;l7;mm~*f^QpciTJNJx|HJNlA^qXus{k zPDV|cB#$6Q1pgBz6MNEdr{#S%cgx*e{X@4AbGJ zUbmo_ziJ(=F@clfwCX{$_r=Y-6VWQhDDAJMnezcM(3&~->4)Oq206J4FI zqs-O$Ni@~nnj!P%*s4rMHiv?oxl1r=TtZ1MGkGusbV%PN;k`4Ab)b#INGNhD!UTqnx~)(gzvO&hZ7$g5!O)| zCjdFw+vJX72=_hj$ zR`H^__46xTnzP01z;d`PyuikCAyt<+bFun()_6BQQ{xACqSJp{1?Egs+OYjp_4DTk}q7(B{*TiT7S%9 z$+sO;#$y4Y{zpN@NDMawwuiwMj>f$xYa>BZG3));R>W=AO?jyyN#4gvuKq|;LvaL? zj5Itn(8ClRqH8+2KAKyxzPu|-Vlaq0;i(>ae}OE-_KWk*H~fMlaNlQ2w-UDa#Pg*l z`7;=XX2vkliL%}g287EKcWDmUZLlBpE0h3IhHegip2pc!iYG*X*6l8%Kb&S^tuBYb z%%JHkVp)$v-gq>U_dEz#j<2mN9vmZzfc%#h1A`Azd%d+s9v?k#Z3#g9F&CG@=~b*` z(;2-#u-YGOgl3j3k@mO1@}P)SnOBM>>z#o1Anp)+ge7vDr4h8 zNT(MFtNVztpKq!L%NI2RNOx4+DTFn~*HUt}%zEVUZ8-i=-UphlVQ~#9oJQLF554ahRM|0WY zUO+3aq0pH_Ke9$|Ly6TOHiPX}d{)j4>pnnZI<=-%e`SVQkCN9swx}O#u=;;Wv%^UI z^&llo5~&X3exsT@my(_SQ}5;4RZXvWzdK;7XMm)WlmnM|tJvB|ZK&d2n^LVj0Rvl8 zv0-C&2kO2GNc+u_x5i;Cnz*&H2yvT60S($Dk0X+pC7*>C3)#rnj*IalKQ{PAoc754 z)7R7+G9DHU-1}AR7A|q4FSvxBVyR742!arqBYO(B#Z%0|;HQ=^OO*e#vZQ|J)QORa}#nu1fj=p7crAtz&FvuHZ^Lv zlOCIn58Q*?L7M;xo+~wP+!wHbWCLS4Ku+ih)C-ml&J+^w|KREyejm}o^f#4AB#3>x zdwW1>uwAO#19<%j9}WKnqG_3!e$|~E<~)zZUw7T;rQ~N{W^+alUP^FoC8$Myfxpq~ z-INfe5r^O~CNU{Un0VLY1%uezM?ZU(QrpMP268gkquq%_pg@<&MpOyKq!SD(9*t|w ziBpEf>@neiVurJqQQ0d4#*`foLbZ6*79O(qzsnO> zizbqLS>vz2|M-tIMI85w-4rH|pg#Y@H_`zTzYN4#r4wVvC~U=sEPrxKT5gshQ-;H%tU~ z<%Zbq;jDL~82!KvVW9~jKRT+ZMwXiK(j;%MZ|5VFB+WKA0oQ658r=i(3DAo9bwhVn3c3v6>Z;ZK=~v^U#F7q){BpFqKZ?^d zp|KVzi3y^73bK-j&}F}3MMac2){@Tk=T$-GxybOm-7|ft*rXrIMh1gU! z+35>2#jw`8@ai!F^{A1V9g$lAlbJizom^uYauz_OB$`3_{Z$ z6?XgCow77VG!EE5-Gm(4!G)P`wD_w$mhX*X+sFq=MDmT#%rUAoY)L4pi~5V1f~}aN z?e|J(Cjt|1hZ6hb> z7nc!N23@P!Atw62GI@A8PK&E4Fgp76OoWuP?3K4-{bkY?=1gw2oFOcMDi-hS{%a=h zQxO}0TBN&Dg0NKg(#X&unDhY=SDL991u#mOZV6=D;x*)aG|B(C{@#t#(HFK(9Wr%uS?()NEyY#9Nc?~ z`UG`s#(jabP)He9X+k4yUpYQpi#)4ITzZ|kU1+|xdV7{+IG!?>sZHLGK)=>Jll4|} zurWUx3%iwT%2^mCP`fKEB$FcWlON}WtNFyJr;>j|IyL)97XR9TA0J=DT6!E3H0lFO zR_^C(ul0GajDr^K9_KJXr|?be+1VLPKxJjGml9Gqrix%~8`wY!S`j~kI_RJ{1tkp) z*kJEWD3iDYA{##IMEU+%+8~`2QENI@oRK}f0Qo$;$5@LH;mIyQ%gg*MjYxrA{KW07}2=py)nr=R(FNMs?4s;V$76 z{QPb9j+zC5U148Ax%{!t-(WF52b1~J(Kqrr5^5m^hhaM3RPgti-mm(45Iw9YXYq@G zoUmQ;TT8W_v9_}&yc!)*XiVUWvbVfV%pyW6roMjZcJBNcYU7d#?vkfIlU;Lh_pKg{w#SnkRko+ZW$Kqi8 z@U~E*&*5VkHxACs~31?nb(w!<8odr9SwLki#uczC} zuQG(bq}SV}1DBO3%e;)gIn1(%^Cl8AYU?lnAYH9sB;W=5v(nX~+*9jS(hw)n?R($} zk3U;kSw-_xlmsw=R(7CS^wUE3n;S?SEiEhfRU~X}kHJt03q)ZvC4TAxZDv^U4gA6G z^MRlbh-)Br2J=Q>_Go2g1@yQEY3lwi6`HkB-3D#Zul_uVAZ3w+ryNh}Kf&jesehx@ z(HStL8nO8ZoBn+8%1^i6vDihaFMID`z7jQS2=+OK+}|QkbCL5dS5_OthOPKJ2vL9= z(Igvvwo-x-QY!j2Lh)*J#2vfgvX|`hT(;+ZSHyCXx9JJ*kL(3fMAcdtD;QW*%6psk zc4w1-9;RX!gLilA2sN{4JR__*O>`phR5OtTha^GFviV4e;Gu^ip0CgmbO7l(*BobHV+W^3AWgeGty$2Z0b2~a3t4`Utn(aO6)-XpdBc3lr$YB%~S;hF5~OZZU;R^vX?s3ak;-Lrs*a{YyiE zC2yxX8{2Z$tetZ7lR8KPgzS9l_CNr;3~LW+*(zJ)sIxRPV_G-oMoCjqt&Q;4D}t7k z$=fVB?`+A!qtc}`Gz&_%(n<4^N#ybl^+|i4=>@gy@e52w(P&-D+gltSGs9151Zc2Z z(@!-%g7bj6#jsx_L5DG=JaQcG>91wJs;t;gD&oTtM0A|eoHELXTG|$ol0usDb(w@e zX!r_jgyA5f)DXGQ0mvV5&u#Vhxt8ZbDh{$*2OJp&tH^U7meoyt5n~~uEbC$$pG)Uk z{GzFtF-2t>FxBL;D)RH$QgQh{oPf!9Ul4oZUNy6(O?$Of@WirLT!(e=}1)sr_t|7Eg1H|*ZZ$y zdM6I4v|P51Bt89f1VwOQ(APHo-q_e~)L}>;BEOH^rHst{rHiBW>a;oV=cM$o zVmIScJM7rHEB@9$;zix9HTzq`-11<%WRIxgqxh}Cra3=F%+$?V;fSrvHOy6I2nnQE zuqaEFCtLGD;K_Ry@iz*NEv^WFt+LG$BK-2_RBjL$6>*x!Iw;BcFL8f(LK^3Tv-dR+ zkl|c2#v6aKgHzmx1MI?0IO`*;b=4V%jduR%(225MOopdo3Pzo2U}ac^yBe;_|LBLKZXJNXrU7F)_^8y9UUE!k&!Da`hb;<4gc2- zQD5KAnq6>mrRM9VIKaCd%>f!uLl}X!IW9 z(-$=OrufKjrjxjpL_i56b0e;MJagIqH((dg(Lz6XX0Rnqb?eRc}KVuU51v>Eb>`g)^f6 zI$!Om+~=p#<9W&C0P*zCO(j*UZEuUQw)aQaZpD=8i(|%X$t=_Zmuwt_>ff5RZ zA`?e2=KTd@DtvBJMP~k=ap)uLNutc;4bvk?&lcK#Zm%FT-hxXG)X(}ws34Us^{MBu zBfn%*d#6Kk7pB2%s;U)}8B5hqE9UPPMX(3&TEQ>Qc$r2y2}Pubo+rj-!j^$%#SHZzy8EyRGP>(#%r(A=xfYW{t+ zE*HnOxYbE>-RsU>_EXmAJ%YJCSaBWtH{^3rWdFA;(3E1DNGKp0$j$ePEcBknax6uM z!7dT)=#YmKMfmu=zjCV}#Aq@J*0BO()B*qWVD9IcS?? z`#TgF75gKJ+fJZRt6b@i8_YJSr86})u8bSk80~MB#K@Hh_~ZR) zvfMbO_}grxR=IFg&RA+nzHEx5g#OdMvf-7@*zh3{xR3{lq1PHjzU2d%7(<-#pXDT^ zkTT#y5ak9f#p;Sl0e@eHOmY}nHMsLColHjXIb)kJgY)iz6 z-f*E2y9`gvFiitOku!=qJXV>Ny5#UNiHj$W3KeS7(&35VYVKL zcIx`BMyz~Lhdlhf@aO}AgryssRGD&FB#9!xOOtyq#(?LH#vAHKoqOjJPbvxrN8dIg zu{d~%P;CuD6D8?U*|+8EBh(89BmMp%}Hv-L?vcRWk@Vp4Dh=ti4L)2j2Rs@~XHM8Ivm z`?97p=WRyF`Tn)BfOMi-s0~;ppwUKy)S1U;RNzgoz*8C@%*W{Y&c!r(T$i(4mffCv>5Jff_0q;>`GCXN1W=N zDT?bl`a3T}AfOg5`-Ot-fln0~ImXx=OOiPzKV%5%A$8{)lBEo<4D!d#$1^Q?8X^xQ ztpI(yQfMjcY^%Dzrlw{uOdtDe1jtldKA;rvid|Z1A_YVQ08$G4X@9~CBX*n6LTAXy zX9h9p{HQNSAD}{dqBYO5H>ODK5v|n}W96Vm*Eu51Jl!T7^ZfcxQmgf+6TEUh3$<+y z_9t|gPS8cawh`Yvo0htcv|NbJpTP>E^Ilkz;B{zjmJG`QGUoZ~m83 z!bQ5`f_J{1(?<1e9;6Txx#(xD-x-^e`aPQ@*47gvW>UCHB92j8PX=%Z=qGLUIw08| ztA*#^qHhkgC+ne<^+s++SlhV$9)c@}AEV|Qjlk{R#YXiir2M01ES6R^xD(s`MNktF z3aj~5`EL-%gIKg;H54&;N&O+}vZy zFzir^dt!K~;U=r$A}dE`Esiyt5k9_Y)~0&Tuhu<$V`DJ!6$D9LC5NU2p@6owDnhzE zaDm4!JrK-Z*?;SWkAd+x{|o=fZ0Lvx&&fom=Z38@ge~QRlTNL-Te-@o%(y9NMm}ii zS=CX9vSO8n)_vI#Thvq}_CdQNQg+%{U8~$lRF@wXoa#RC$u2z?_0rzO+RdXC-c6-` zjQ&*^(U)0EmJ!=F$0VAK{Qqr(-4>^Bli`ua>E$stl%gRLLKYTQa+Ey3YxifBaV=zL z0BTtzwm*9%QRc!@&gQ0`wu3sUd7-JCA_bZ2iJK8%kGQ?&pS$S(=-~|xpVC=%k+)Xc z_uwfndQ33M$k^lJWoODK_CZ{AGy457qRN*nShmFFfWHXDYyC)Rkn{ik(J>YlLXULZ z-B)ObOyg4Gn%a}=n_fig1b@$7G$zPkN2KhfAd-2IB?f*8C-R&K5pa-JGFP+MtGo`= z=0~v8-`9lp(2hq?Zk3a&$U8Y`?18SugyOD*PS1gfz0Kb*dgM?4JIs{7ivo&@=`l|- z6^DG~L)k`DhVXx|jfbCFmM&g3o?CQkF5b8+M>(uW5e!Omv8+F!986EjW|wVJAs3M8 zM#m6lJY?fFACXP4b6iLBo_GM-rTHA>^rqC5JN+ z9Ja&9rx=v&4i$d6_zh0uHn+4q#0s3D&HG#q;DGJj`B)t8PlqM{&FX$SmMwfIhJXwV z_`QicFVUj^3TKOuKBy8hOUsoUYs(55UGTY$-IpRkPh7&3u)c>2FjKBmm@QAvJ@WUthqExA+DY-~nu%0ZqiZ zKsWh>lf?@$wb`!>Nug`G#`cC15~eN25Kw^;c>(&R`E2xzhpK}`ao(|QB89Hq?1xEV zx3rXe?lT$Sx|vHWLp<+gIYOUC8K;BT&3Jc&r5j{@NI;y(+rxB`!uxHtztBYw)VkmE z>3$o=_>$g(|})|GV$dh-2shkQ;1c21BsM!NnHG)gP^a zX%KX2hd!;zE@u~)it_Ta)_r2*U9fNi1z3VXr`rGZ`0DEF`Mle3vOU*xF9ZE}@lrWp zA(F|)ig4X1fXRBbU=&hrDA}L=@(;y&0inUws8xwG~pXb4f&1 z_eW9hlK(wK*}eIn9RLdE6mfyxTU5Z}>D~0Sy0y8tw*bI8%B$$gt@tefh6%nBe3fWy zpcp)!!DzTj*6n5u-ue0Y=qU*rJ)jRHu(9meoig76+M)tApegF31^7llKu}Q7|6Zdc z#d>a%cf2=n1D~os zQ`u|i>b5$p@&oCh$!xgW$+sbS8!7OV#X54*fw@)FKbw4h4edX`HyQs!X9Tv3)Q?%X zwCaNv!!yUX-A{AXz>mU0$(jH+507g7R%fu_ES!f*=6YP!9IG=F>tR($wK+M-+qH=f z6W}gAVpX2c_Um9WW=~>uy=3>(+$3%RxMCKKpGCmq6CI5NTs*%5M(i26K38)2p=~pV z`rUq=Xk_l7$L$0-h}X~W-cgY9V_}ka4ZT>^r;z(g)n(G4l=Eppc`XuOPJtJHr33?H zaXys@p=9POS;0w_Ars zYJ$aPJHRg8P66)Hq43n;{}Re=Zf_)2u^*W-3RV*?MFU(D4u4IZg-H8w+bv%Fp@`Ge z(rRpOPD@T6%@cVCyJbd)hw)DRtdUqK$^#$*Rvo&J$}7khaImmAxw&J%S`NY{PsRVX zhb;~7E(;AEOb^DfGs?s-zMO%9+PJ*Mx+uWe7$##OZ=K?AlMY$|4;84YK?<-UC4qt( z8$E$S-gg~0(+UJU4*E4ly;k?irnplW2SoRzqS)1`oaz$WycXH;Irs@T?158feV4tw zQC7qQG6WRSL(5-dd72#8-zFtc)v#{CLm)sH3!Z|zyE{adj>%JZaAWQ=j>Njda)l-& zGzAcO{1?4I$IH^Hs<}f~DJdzi$-oKpIk)nVj~LDqTKWPWXhd3t$uaO2H{u^)Eiew1p;?6p4-OpXFF_r-7zn0cqGM$EW<9Gbu;T8~4 z2t!U_5?~#SVIBVOeu&^o1N2rHddT0`^R+)B0 z{NGU)QL@m{gIQePG}rmQHGC9};XPUJCIOU%ZZ#j}lZHV%PD!A&yc|Er!8#f)^8+J2 z*wwVuyzZBkkZ{?){;FI`-s$)H1ja|9$DO2^5)~B%1%gu)n9X)|*KEfI?@J9>imLE4 zosuw=7b_RWLs_EJ*wPI$-bu3?rYEU(UYdrpo8 z^d!V>r(4DcOz(!U?LsyqB?yA;O8wTWpHa;6@(4Z0B7)JXA8+&8L1!6)f_^ zY)aP$lwI$p8Q$IBPvnWLJ2a0h7agWb zVX?Y_E!i-@_5Or*rHb5tKX@_3QXj1A=5aS_2DpZeKfRWPp-{pOYH=x|4&$|Kvz(wo z5!bUBi4SE<mawGVrm`a_WWN776b8`*!^q#k(Sl%w<{9pc) z%jrX8X=p-u=pFn$u`%J%JjV7Q?e~{Z*(UC8X3dGGNoMqtD4sW1Wa0ona2zR|Ef@X7 z5z|Jv-UF#Ffz2}<{*zfM@%1amvrsitu>aM`- z+)|zS2zaK!IKpUj#7l?*@P514IIiwKyZ*2(?FSkxg9@?Ly7ha>8p?7tMBVEwoLoNN zaySFr;$v=5vux+Z6y7CE+N`b84@!7B1g7ush|Y*MDPqa(Ag^R%hF?WAD!Bc-;t4r| zXo!F7qJ4->U-i%?G?>p6PM4N8h$KRDqgDwVVPzlc!xgS=e%}t+~<-^=9?XxXd-ra*9cknc4rGl+Ty zlvp*AB)4)2z|!lg0oPB2#X!pal?1oj%V{MD@*|&%hZ@;GImtieWZUgy@k|^V@aqYn zH%%oA=~#NTsct92GeBkMS_WtZBy|{qXWfq01DswZr$MqDerxV;p2@0ytz`bP3;XuE zE*md3646a29lu)MmNH+gx?#|UD5+85cos=jNuVqWp<>q+-bC^mysZmOWPukU{nX1?H1A$HU*h!wS8T#w31 zgu$;7hC+m&5^EielnGgkA`S;2ARwG|-Ww!RLXgtX?1QG%9)g5*2r%TYw z`G=b^@5Xc=6N)r&aN{8dLlEt2V`Lro8W&$~>YDm7F5_BwdHdG0!f1#y#aM=7(+cc+ z;_L%?#fVv|I&Y0?Yfg%0w-I*uU_vT3$oLRNFj(+NhTDJM$dBV{D+2)%EmG$rSH#=V z?1R4(mF=N7Af9NsGa;LpikcVA74MPl>RP7`Hqn1^wMFR;%LS7#~C_eD4Nj%AY@@`AZnBjmH zcPFg{m_Bp`mWIO!+b!;<{xYDh;cN7kQlO^XfX@1s>!quaPA-RQ0WYb5C^Lh95^B`D^4@{Vd1DT>IV6 zMtFXF^D8N~QE;|ImkE=Q%c6_J%U}A-4L)R-@_Abaw|0DhcL8subh#*4BuQ(E>!<0L zaCWK|ByK74=#M}CW&d5Zhc`&Xf~r2wqAJ0_IHH!RC~eT{lgf+7m)SG2%JL7sSxYlk zH(iPAn$wQp1BcG$EGa8P`RGu9Cya~g*!haZVLn2vc0MLr(GhqwpPh{8ryLw68wK8O zdfTK`Om*unrDNUM3_{aqQ(+>Wf!ComCu`r?a|L~FbJy{cMwAFhce`4DDE1<~mKqk$ zsBiMK_CnC_He&T(-)kg!!*ij_dz zne=`Go=M1_Xgm(-GFyC#KyJ5uWoc;`fYy0Z;aGs5e^B{^E}xoR%H5$_3or7{%&C*| zl8~*PrzEV{Znyn9n0+%v07BzCbkqeY)QS-0Lg77iSEqRN^K)>42<832S`mL>C5GCj zC%}p!BK_)%_9?Ab$1b$#EdINNguHlimf^28IBnzpzj~K&Lqrv9wuI%}?emr)i7iNj zA8dU;wU^svhyT_wYfAT(Q#K|G_!?b^NSxSi`?vR1&PGEFoz@vc_FKUsc~jBdo4vSF z#ac5})w8zCor99r=TsBY6^w`-h&b*oCz3UlI)3tXM_jQTE!;0S{mssLce**{zGzSD z4scN>F>G37FKE2;?XD6Quz-)9W7^p-)scuYcZmaq(J~>2FPF}OOAioceD@*i7vAi` zSCKOPa00ZS9tvbi-h8-lg(k4MUJ4rSvTh{LUna9y-xSnLImzI*+Kzug1=xac3A_ie zKY0n}f0ChUBtYNdP3W56G!qGxlEVSxNr2H1C1o7>!tVdEA4e;^3)CyeX=8AAb&-3Oi5^ z>)ZdSruy4S(j=Ulmw29@?f)~-$z;Cjo62cGzdY(Nazwz4ij(v3Lpqfk&6u!;J}B_0 z;wFdOMDru~0dD=7&pwA=1ROj=$M#C^K@6d9)({z3<9nRca`BHgHouC`e))VY>l<89 zmJ>N->EbmZ+V~U;J)RRYU9pJD5_W+)?0a0Ff~V@)lOPcL>#AG0T_~VNeJn9HMBQy-$h=brf?To zl&)BlwyvV;{3g!+Zhijdyyjqx2jzP7a<44>lF_++CKtw2;vusZVvy)x-11fwR4i@! zvp(L~v9HGn5ylFM!2|4q-x`Pl?Vgpvid)v$Cw+apTAj15XNQ8R7LfiWCMHgu{TO8Z zNoRD#XxK#vfIOz>+PJzO#0HR};PrOks(>sB89NG~li`#vNw97rFq0zL1l`^x8kalZzkW7NM-EfK|kU%xXmU;6|6 z!y$z=T8D$`)jnMH8MTc;cOB9&y#Jhosw9Z90Hfu2Blt!CJuBncM-BSEchc?xA|Px> zcp~~}q5SW_wf}(yWZgd1x4Im~jo-9Mq*t45KZ^V`?$Q`kR>)Rgrauh8ReUamg!8vJ zFXi$iZCmLOZdYprV_$qL>jVc8ZnA5h9u-VqkUz;M1M=E7)7jjD?Oz#I}@ z5KtR%|5=MO1NXehD+#C1aHBkqLt5f+;nhL;cz!mw=5D)LD4-xoGhKi!5u7fxt7%>V zcOeL_>}OE)>o&ryWaNEPSvdpXOl7i%!Et7(k{RE($Nm3|yE;6t;erkh4nT4|=(g}h zTT9Cgq;7HU=bWK9;2l&_SXc-a>5Gf^^23NRuKvJ625KAnx`Ba|Kj$n_ff?@jp5Z&ril+MWPiNbM|rs3nD|35cnIhn*u0 z@^+bWJpvAl6km>38=?`QXZ(h!e6OrmviA|LD+=B=3HE|5>)GzU%)x(gtIcijZKznN zW#NcW+^KrYCOc2i5Pw*b(MZhkC$0GRxSeOZqOqN!7u#h!5`>X3`*nrm^$F|t?hY@N zVAQH?1O5xAPtVp0UEZZHvJLiL2R-{4IR^Bpl6~Ya$_^D22D9;?vIdJyX#;;)|AYpa z5?K9u?#8qQyOI?9T`6Q*Ud7YovP*{GM6_pXyf*I>+Fz`%@}Eb(qgO#+jI_lCC<3P? z1NFZzlsCe%?}%^X`KV?O5n6PO=edk&+6)kC6pc}WPf`n0V05oZh{ zfafpQ7K8z#m5=M7{kqo9e7fFGJIrIYE1mbQXVd1YF-v%i!e}r-~O*ice0=UPz;Cmy)MEXDa{V%EQ5svZ8B$Fqwng1b+0==4yYl z6dt$n=j(>=r(+5vu+;8KE4Y!s6W990JJ#%?7n`|~SckLFPw&=a{7^g8p`|07?dDjZ zCbc=ce6{0$6`sOOF8u&~PSEYThGxTOa{p=SQV;(ETeqW>-dPLzpSp=-CEJlI)@|1M z%O2Q04e}dz&>Xi!$O1(}Tx2x;&_ zTft--2S=1y%?-|)!YbWX?9GAziFKraKse04 z=9|WsJquHnY^4HrK*c@!0;lzSo!xZZ*hO`B8zTZGa&co!&@E6=ENM+|ysLWO6_|7= zuU1F=9)Z1*2nPnhwwAZUEw5J2P+3ljUBS6i)X(~Q8s7S|XgE~$%LBc|FE$^4Z`db{&xnuNIKbeAP%=+vA4xKC^R53#3eA;NjvpxRSM2gYiOYBXj5G0ACWHujC*vzL zRUj)%pg&W5f2NmFFId}v04S=3pRY}idJ}t^$^zekfGCv1Hb45CtLWDwR*75Jbs4#i z>1tFm2aLC!tjK=?@)LK{VyK+LFCX#KSY}dovxFNx{xCU*G5$it_9OAs1^<%Xblb;m z>`@|;OMQOpODP)RS&(#ze4J^<-qey&W;%??oHFR?bycu_ZYsJtYvi}(_~ISOlAq`& zVVq+5)li*P61hNiVwJL4Vk}Vb4!0|JUBAr2Cu)A&pyGP^vHeJjC&p33drP0fsWLnC zFUm+s?=N;4t(>r0HJ0}z@lI#NMZt9fZe}yzl+V0Yhuzknb~TE;&#FsPxv|5!^GVS^ zQTKcKP?{}FKEQ*wlG^atnD0sL5ICupo0>Ymu#lFNDh5?t-`5++ zhpMzOiQV5DPy+y$#XUG9w4E~^Kpp3l_sg_;?(rbF03~uYbz0BVxkB0WT;(W@&>4-k zaR!%TopAG4UDJc?+i+r=J?6eLf=_4w5RlP@3a^UJ2%}Mp1$CowaxI0NH6yt$7@T42 zXRq%QdUPk=93ciR*HY>?e1XyN7Y=|B&*#km%GUhMNYNtInTGej;Hy2$-un90{D+j341E?yceEa=Gme~!yyIVxn`#chmYC4~oAAE*i z6-=MuxITABEU^JV&2tAT(PBz(Xf~@>`z8(K6bfcGA-ew^n^>NXSOfwoV|#@Jq6PD} z7_>cf(s-d&!M7003@43SwU?`UUG|Q%qZ61htAI_ zc;#4x!-ls;V>5lu^}XJ!*+L{t_D6po?3|6h6StF^5X6E&c8EF4 zu*PDXS)6CqxX0`cOaQ9Ok_YuYmzm%O`l>qRs=zOnp8|#X0~7CMVD|m96@m_QGmbqK6HZAQ_?+QX89p1{4>*4fY`jltyR+V;kP5U4g z4HQ|Ps7{lesX;uYJN12z(^Zq6#hFH902f}z!o(Vb60wF39{yC>z05W9%=Wmp!h5IL zaP#?|*0knF09Tg?puASXLQvj(w_XZWmWx3bFtm0PR(o^e*;W$lVdS)B{?#isLF9&< z4x9b^Y{UZ-&8a9@L>IC(zv_i9P>VTD+|A_Vc`tgw71vngBQbJzH(VKgVSh0fF4exd&t)o zjg|2%8&q_i)N1i63Q!qN7FI144)f*}x|`~rs>JvmRSE~)Y_jK@jM5xQ`91sy+=mf} zza-5nb#XqthlxzqLO+UQ{(M-0Y>vz?OS7Q6m}*cYPI2=;jdpZM|3dd6++l)u(zbHN z_PEvV?U#GbdXeF~qFm7puCy`(W%|$u3P-l*C#*Y>s}z_hJ)9!(96jyj^d}al_0oIs z$TN?h7er0S3T=0LU~_HZvcSVJkM);#W;-9IZqLm9vEVkMRu~5E9(vn>+pDxufmSAm zNCtQx8c*ql1K(4AmI(gOF=CyXG;2H~gd|fNw;1&2r7#6UN>1R$h5Opj`VpSTg?GRf zJ(bC4nQ`k+PKak;)Ch=CH%k9u?lmyJ8Aj%5XCtbF^5rC=4RP_{HDAGi^CQO8g0wZum0uD9{TV5N>8{d&}t*t46_lQ2hI72LCeR z*{;pJcImE+2prUCV@$!RC7oM9u2<-NX#FkMsDiVgpiB7Wsgu>BE(ELq(@tX5Tmn+i zIfOdX5P)zSvdn|7u`0HFVt2Y{&#rC-dj}(6)ZeOs0_S(Jr#Seha99JJuK0d2JW{ts zyo9CyMqa?6xP$EfND+PW(&klNdVb7D$6 z_!s7{a@1_7$m}xB3|wHm@HftyLGp}^$qr|>@pXESopd_xH`x7sjMLKAZa@G4h$r?= z+uaBOVpzaQZgsE00lGu~_~&ChpKrqX`qliB+b^bF z4JZx=c4whS;)SETJuLs4SJ!TjIt9*+7BQ*fL9*kK;M+10t3q!&38h{gC7 zo>-;u5>exBA})TRL^x_=!RG#Da1)c$F_4D6k{4(cLx->uaH$ZYgp7_S;E?yJ@n+{7 zL^R|8!dCDtw!oD_wx|gXX?A({yJH5jdFVz!-gev2sK;sDt$kwH5;*`sy68(~cf=)^sa=p453p@Mi z)!Uv3P_?~sjY3H0gB9cl-P$kw%74o=&y@)67G-%&&%NTg)Tck@o7hg(=#+&mq~*tbiDr*HO;j4uYl>CIOMtvW$fS_%zXZ$W0GQ z-_n*pI_%KlDC1P;vWKgw#l*)U0W#sV^AicNym5sgBqqPfgzvbW(Sxa85?Pc|MM^zB zqWz8hDQ*&75_!y=)%=We?eT$pTGk{0|JXRXChkfSn#@ROqRPfrelzHl;NK6UO}W;q z_R2W!lowQLR0R^PR-yvh3n9o8ibn#=^CedEzQBW`q^_(Qv*qAcM8<5C{DD=XJaczq zu2zOBdyNJz`J?+(^W2k`n^pA7X)@`)6l*W(q1+Z^E z7g_4hPYu?%H<&;9H>1dY%vZz0tW$@qIW|eWTo}>GvvL4S^(|;=xM8~E% z^igmxmOGJBV0U+k;+kXV%k+v9$w zT2%Eb&cge!XM9H(TCner6^1Xrsw(crO(&pg>g*WtElD949eR)w#gn;o?G9;3b&-$n zt7Gly=EwcFy}}5805E1|NvdeNAo_t#qEOcAI9t*&|GA};d6=9#y_sR@+7C=d`!@#jfhHr>Xe}8vbeKb1r-D)|#vRYxgf) z_cC&1jE}kx8{xi@LRA;XeE z^4D6SX#QjUM1$q89U&DVh7Kr}Y3-cGn3F3foP+VG9_J9q!g2?W(t<>#yQR7u~2qXIB z_K#0V+c>+Lwao%a&!vhqfKSTQ2LM;B@!#%G$X2^_n@DscX!q@j?o7_h3{U?)vLEA52&NOtD+OH2!@0_tOjbk))Ba{uWq>cStiAFWz%;kn9!|rv3nYExB>X z+grbpwEoigPb;OPdjdB*WO(x~XaC9NVb8=e8V2~`6z6oQ$(kX*B6RIjEoXhuhTEM$ z%AT){rnr356%Ot6Q(Y|BSAK`vCAjvb>+fag*>ZH@Ve{@%%$8ly4{VH7N}ES|=P9|J zzNA7Xx@hgj1@h4}m?m{zL22|J6}KljN3*w&y{e8Iy!mbrOOS;q04b0C<_8x;ZWm)r z>@Q_`pdj~-Ha11bVRA=QYU(OH&{=G6HLy+%^G1D#07Z_b?x)9B3sufmMNr3&LV2se zTnSbo<%zhj=lBQh|K3kX;EdFF!_BYym019Nzy{T0oQ0-l4_W+}-{@7Rf6jK~R!^*h z@Alt;Wo@RlDWe;(y#Fs{ODa#o4uO6kp;nr2>o^2Z{Od68rf~$VG6nP{z7wcv!T^*l zcAR->bwD7N8a)AY1~rvFBQ#lwFq&ia41%Bk8dX-&=o_3w1=-2e*Cc%jX<9Z$^xg8Z z;89~BfYI=)bZFq@?5LkEKB}}u@-f$0Wz)M9>kwbGH^h&j1}PfeO$vQe_plULq-OOt z*D!X*q&oZjX2M`!h2HSroI-ysQpSshURE8l3Z{=<$eI~4ev-Q>AT5g0K=pXm=eGO& zgDuH@YD z9{s2flyvfBLZtl|#!Z>=o?%BUw3(?nwT|K&=Q36AXC;ePOIVPKdswn0Q+9CzbbPyQ zchrFYm+8GipHw;2(?zq3J9gr*U+92W(wY_*45=uIMRTYAB;|yGlF2#wdDM(ANzT!u zWo@&V;N!;oddc0#7y0+4l_U^U#kL%pf@m-!( ztzU~!`Uj3q9krKDM4Lga>ik* zoX}I(!c~^u4G3{nl4s{Kj{O?wFxx5E3%`HpK9?@I*gwB=nUGf!<}1dN|H~tq^<%?K zGq=$u=#|k}X-cg7va{MZ|~jPYR>1+F74x`TY@JFR4)P$<1eplU4^MgrTS5 zMkYU;Rl0?qDgDXLV~H6Yo}TGf%Rx(QV1-}=(!VN2Z(>-nePe@!X+fNx0RoaAca-6L zh+2iD7spzPe6nt>kNXedU-owXrD5mYdRpw8U%QKN9I7e%Sm2$A_3ZQ4S9TdC%1K6i zRy|0-ajxoNzu)#c0f5vV60>GCIP?6qktcsBASe1gRM&fb)Ye$aSSX|V<2{PMxLf{` z44iRmG+#T9YmCMI%TsP&pLY~ukRD_NkW$D(m6k1C)dnEJ$Z5Bhw!ZN+!p`62Iyt?6 zw&s`SH|y>?>gCg3VbfA$rTE4d9Rw+znD8AQ2VJ&krlMyr>#w>KV46-WB2iI#vb$=MA{xv1>VaS#IREfmmb zBDO(5U!PM*HUt0VG~wS;?(N@lFM&7Yc6$O48#AM^*qznm&a-3Cj;8oQj!2MUw^J!t zXq+xA16;TvpAB#`qzpA0St%iF(F`n*qiU;o$=!mdQenM>Z0#U`=$234kH1&Wds7pw zWutd&2^ys$t!nGE&6<#ijQo4@obQ^8;=V5}+SOUXoekfaGQUzVGBR`VF^l_svAuWo zZ&_iYROQw3!Zp}2x+M-vOlC3wo%6U8=)qjsJY2|QyY*KoYf-KX}9`ot2fl014wy&Jv+g8xP!={P^w36gde_=D4Eb;I{^wp3&J zSs+za9nmK9rl;YjuBs|agq|J3!OG3Flaeax{ZdwQ;Tp;rl#HWL4fQWMw-f1DiC@&H zj|BIPNhad0&CQ`&-B9iO)mH{$!moewi3 zR&h=+u$nag_1E#4Le9ICIBC)+?H(jb-_4bURHZId2*}`6x2C-ZemfrpYa>K*Yk>7= z`fkY(o%^idAJAJ+xq*|W?-hD>Q~z5zep8+!b-3WvfZ58+ed!cTED=P{((o=J;nfGQ z)8_~k!CwtiZ_8-Vyc$2XXY8Vbd(JR1oeF#6pQ{>{TvY|5- zJCnb8gGB%&f7qGlb32!LEV|J+4H^ib{4-mZlo;LG=Y{YLW%9;JG6xTo8R$jwq~itA zqk4TLmw$m)O*T4&ahl`})`ir7BNJ^sF)*&^{Im}iKUV~pL{4##eme3 z+W;;r5+M1RzcdgI0kC)s!r`3L4>i+(uPrY{q{DV$&Ng($Ov#lhroJWUh7RCfeh#0~ zyV33Y6ocnKdx&~M`{GC^jAl$Dc6K!Tc%JF}RYAF`qhh+3HF4k{d32pKbc}L3eh=K* zUt4tcA2rZ^KO4^KfBN4M@T9UVvsoiR0lIQYWPKcH5c0R7qrRLEXwrC+Ut^e81#2(r z;p_bctvB-ws%aUKeZ2o{fzT=^PRToXI;fXqT`6N_>D4g?~v{(tesM?!!Sxh zG6Aa@eUzc`Rhabw4&qZe|E*uVkaizh0`C46G4RI%l~s`8JWe$A)LWogOs5Ig1&y@C z&roK%q%TSQI+@N08V>m{Nd9G%a@?;Ja*%Wl9ePj_`UKfVMAEp8Py|#!`Ce3m1qR7?-yBnN?kS(^TG{nM}amkn$o5gyDQ&TI+{NVvKGwztK{}w4fUs#L@E8j)cX#VLarAT zx923UM#%Snh&&JZ>4y`S@_PNPw>?Vsx#&@ny%EfqkeE%O!wXq2h>IPZX5bU!ijH&@ z65t`~s<~g;4n4%96_W;yGY6mn&EPYm9^)obvZo-RKR(qZakMD($AeD4FwflkkeOc? zsRmj&mOu~y!B*SXvO~CuSz2Nrt@9RwsX>82B;2@@Nf5O^HZEAZ(luSIJ!lJ`p3Z8_ zwtVba{Io{!{E6mzO#Jzi#M(zHhJFh+Af97C+@HLYv?h3ZYm=ko&Cqk6zDx`wU+!&U z!fll)xc)lX^6pgCC-)n3uLZQ>OpSopTble$cjU`&$4xv*}M(820vT#!Pq zz3vhZ3UZen=|}pwg&Z9HvOIy>dYi|ejX21&3ynZ%YQ(S#zvKS6Vc@ zkdKYu+}Ge`U;HW|OBLlAfI8DWC|oov)R`?6*JRLeSKE`j4Xv$7SCiwFm&H;L+>Z{U zPPI5oxx9VTklMdaE-@8-a(e~O!8$m=%X7Wk=du1{Zg~4hY}Wm`-(3~^N=OZf(1$hS zb-8(WHDLNAa3jY~F^>;b(+r>#?0(DKE2*oIt}kwq-b`yGUlO`#$;d zy&$ru+zifXB!x4Ql zyzvMt=Or-TzesJhNA=`PpZ1syXb^al_&ZD~p;{&O7b(L`x#;|zc*ge21lf2B`h$#R6irps%4~ehc zLy&>1`+Ae``P~R5f4m=D)%af3wN4dA>npnf0*=k_sD(!#&)JSr;l2a7m zD>}I?Kl9`$78|chj&SW93~3jQ?LrlR7vvzzxS=q3i&}mT4-JWEmd4VzI0wy~X_XDv zPppwe_|KLm_?Zn(rR^yRY4%77*)4lY7P!g)9B%LR)Tuq<`>MP%B(jTb z^?uocx<+yYC8uUyM;IH+Jw1EZ0s#_*`{NjoicC^JnPFrBHj2FVb5yeh_ny0DshnQN zJ+k*y{Jpdivp52|uV&YkZ)%UObgXMrr&aOwzP*NuEcMld2{_-l-4uoxRj|324BN^~ zQlK&%HQULiG_+c%u0$0EptlxH`QkzNYX+W7qu2W_h2n@haady4nu_daK?Pfot`%pP z2`7eykeN)xF`CR@=@gaFbA2iLgcbB8X>%j;J zc~y7%Ij5bXOYEvm!$rnu{oFaKZ1BmD7}pHiBKAEDH*hk+pWieZu|JVhj`4PDs3`7B z;x)vpUS}L;yn=Mlg6K*NF^rmLFYdT<(>pH&^>?W@(tOq&-JiYKDyEvKix+F)FV}Yq zTlkD~_X_u5I9pO;Gx23-+fxw)k+V0^sf3z~Q*f={xKikcuZ?J0+~%sIaV2^%!yAXy zUPO@wIZwb{6kWJyrIs-Ek=SeM-9;VS^XEUqW_wmlA%ZGg{KHH5XU=}&(QKtx^0#?~ z*U!>lKYI}@_E|`%#2y)4#GEcS>GmdWeE61|iX!PuRKzs8&FXgn-)xVBVpRs0gheEW zS6ojZ)MX)=(cmc-CQL7l*&tUuH9vBm`qv7g%;tg zLHoMV#n#c~C--&TFp?IeJy^29zBx~`GqCMI1%1swrk(o`%|q46H<4LCD_Sg>fl8^Z zaxLnXz<;Ylwx@lhclE=EjqPlV_Dwvl>DG}SPJ{w>&4=mbIC>&!;X>>M-%1wNMAEJi z`frE${OXkxTnq5gq&)<)m<;}}C?`Fq%`m3tVyCzqr36Pu$A727QS6kz_y6Prmp|X1E~#zMw6U+o$klzOCtDxz>74!sRuv zCERY}#1n6KbK?)jMg8X5e@Gt-3eGHfx&)msU21N$auU1kW+pnE?YmTBYwE_(KxU1m zZVj)gfFB!95PRvp$51GHK zThJ5MT!wBB^233`cC^Pw7%Vl1H{}5v@I%E6J5Riykhkbjeue)PJI9D9TboToe0>_w zE9MEFo_wR8L-;&X-4M1o)ef&LquY4)JbU;E_p#COMEA;K!JW6@bEtdtvrD%3msGyt zEf<}x6w(lt^eRtbR2J4d)#^oc9nOZDClLMKqp}OZ5y8JV!o|61?{d})KM~Q2?01J% z{|;XaAY{PC3BqLV++PgmRilQYMQ1T_#Yz}2&kChI9o>qDtz@PuW>lqxgMNNu?YP|n zO77=Tzi6;zUs+n(gECz!bT>NZGI^`TW{)|&P8wOx{Px;^!kBg}p(-@a6iXnB__MeG}wn-kXow~|321N*bsrLd;A1_dKl@Bu_D%5f0y5#3) z7=vq$V<7%5MD}HeWZ;z2!nYTRI;9N33n{cyfG^=xB$E&}c(lStnUrRIe*oV(l&H@!9 z5+UoEI+~P=xyCh063>?j+-a8jKS7d(k3~j~>EZZZV=|j-2*y64)EhnYtY+}$Zd%in z-XFLBM4B~HIlp`S2%;Y5@bF${I*@a(Y1X+AB+-b$Tu`Ig`u3MaXQ$cSDX}L-=B>wy zJyXh^>`cj2_H3wp$6i$AkZzKp`}J30d?WI% zzin}l2@5vC5S9#}fzL1?dFy4o&f~YeoS`5X-1vyAl>Cwz4ibBI)4D@orZBpl5g`k2 z94_{qGI~msHCDcKwmiX(nSP&lW{RPTX{#}U_a$W2@|1d)pv&sJE&V>AIN8bNpr;NgTzSg^GoryI+7atRzT&oXW#pG z21Oq?Bj-qy%5azD&2*gZsZisE^YOw(7hXsj#9de%R&FS)Ip%R3m}YG}k=SW*1@_6N5HO4(~!Q}fbE+jU+M;1k9n3SD66*-qP+?c;XFWG1F%~7jv2^ETt^On*U z|8Ye5d69SdEtZ8yNAT*PJFqAu?O?=P*!5f+JVr}DSr#J4zwau&h7FvDbGsdU<>h!gTWVXSy>S+#sed18$S$izF8d zBN6h+4InTatnm^O;zP zmA^-KN+`Ixi^hEZ&ByI1;g^xPu;2C=BE!tzKDrIIDSrE!$lxx1$;w@Zn`80yJhA;7 zPp>^!C}oWqa`#ZJQfsuVHa7q0OqUEnb@3aG>tXhOhB|6z0jD*x4#Gtf-p{PS9WuH1 z^^3?YaN!KR2Y<*Apy(KmOzPu0*eMwu0yeXlGTC#Fy^C$rB=j`+*4UvyDX|waRZ>*q zVHgEiM9I8& zH5TA=8SId-ca7VNkV{Wca8ps(51i^ej@Pr!AK(0zs0^Pt_Qmz*g?J}k`hjJ-J@t5ZK9nVQx(MW5(t84)olb51;TJN0y@zgoyV z)c2+6H0mE@Z`WEG|+ojZLO4Z|Lr#hSz-j# zcfonp^gC~CHvVpU=f?_r|J6tB1b-p(-7JHY%%9sG$*0Dibvz9EEv`%bZsQ9TnXz=g zu#ST=AZGKJmkiCdyH-$7{By-Mf+7zRnTRYR42y1?eR=|qX`WR5ASprQ=f0tbX-hvg z>Z3>=2_`BFKGv;2F^)MkpR+Dz-buW0W^9=M>))N`_0o3hY$P*$i)V+Q*LHQ@d2cL2 z!n1Dln#Wlwzo6K&ncazCO%2L@@@CHJI%DJ~q_OtugMm_*ax{DU%(QIq=4Lx&L5`_d zWrc)75|=&2ARUJNrd_*pvZwQX!j9NSzjUaye{E>WR0#IAx}Bnbc$1 zmfEw38b8p-o!iUTaUk+cv#Lg(g;S290oy&R?OEtlT|hLI&N>W9x9G$hDj67@$A21G zH5)i<3Hfh&$k%OlZ1m&1UMk9ZdEox8Ymi1-gmDwJc4Akp4iI)bpVe4|x8Onk;quFM z+nL2(;kA;^&vNb?T?nAU6sN!W?qm;aU}bw=))+Zelv;5@txvKVpM@YMWmONAYR~@2 zD#`Xqx+46e&Z(4aotO;PQJiAuEBE#xnbBX>2a^`Pjh)$VvyQ~-IZb;>s7r(IzwTDt zbWNb$S8@R{h} zu+^w6`s6#KkzX&T@kyp`v;zf---VE7gzjEeRuZ->++USkMd^AZKi59J4m+IOtjU@3 zWhv;Xq-)bbtIY4c*rtM97f2e+?0KKn7fC?Gbh36ejG!ORLd%TU3G{Hx=zw4nToYTj$y%|o&Ok#e;>v}z=_Ye^2a|&g{;(VNl9QYnH}jTYF|T1DrKVg#IA5j7bt{Un zc!xIqm%}OdQj?(>G#+ZXWUHB730cDaPw`caU5mt;G^va&c%hUmNRE9C)T{U0XK`2S zmVR1PkjoSLbbEQiA6~iEKglPNO{N7MCZ^(x&VNwGF4@ zTdBOCd*0N1{d8uWF4eHN^tYn)wpbd~o=*u^mjIx;5PY&tg(e*-lx32%hCPWC^5f%( zrkijC(;&OK#sPi_Td3{m{m88bsF1eDv?HVl8!W=p@->x<9vCD2}!U@HMy(y^i&N_Jr914oW1%nTo-M)TIhOH znzD+c=-V&3uS@pK_LjQ`uQblvJB4@bs91P^L{K!r`E)jkCnr>Kf4>*r?P&L_cxO&?3V4qmtV^@!njPCc1AUJ6Vt!e5_^KA*V=fD$hW*aO(rCT zD`lmma1P=#-^n$K;qZA6Ag>kGMaMoMava#5#vIMZC)mjWExA65qr z)G+cS%gty>6t^&&YBWZwf=vnyUy-n#Uo1I$sGRnE3Dt2(x+az8#P_s5ehFzaM#=<{ zuW~(W`J!C0>#f6pVh&eoPXJZ&T#2-<{<4U=-cM_=jAiTILeTB~6&&`}^9R$33Z|gg zRZUS&r@v54AfWPptS%7pcks-w?#;Vc_s=a;6s_9(q7nIVJ8E(b$5taJpx;{E%FzuHyn<7=@KW7U+6+@y_wD<*ciuS|H2v#@PkV?>J zu)egTN_7Go?fg6@`N0=`({yu(R-b14S{9~q{GN&ui;`{|vHX{;IYA*^6Iq2hHp@+o%2LlGk(^C;o^GMfsx!EoFY8cMyxo#xXlF&WBM%R+>Eal9^l`Ixel{QEl>O34@KO*Mq=PLh@9MdFD* z%-v2T^}!rLk%_BQ+u1gR2jSnf#;4fmii=})_?@g)_c*gd;wVl{qC^}{bRj1LU?ZBC z7ziR15XzR=tzej8eC8%{3}8KTxfGCpG_h3q;D*wu%-yTF?J>=^{$LJS+ZQ$jA#rcT ze{wy6!V|WXX0&_1McZDTUu!z*4^M@>U{vyU=7eM>XDtu2N8u2l3y;ugN~p`uo*8)_ z>FYQdiEh88R2)rQr^c>gpuaE@zod0R1%g(+BEQ@3$YMzML%H#;gr=p;3;XDr?Rk?p zDQlyN5b5<~I`*1B1C$c29I^V>C1)Qaj||j-|wFkB<4LcIYzWE`H6yO;kj1KnQ=_(XS&#B=;H~D&298~~ynN5Ikikb7{ETH~B?$L-;3pFlj^1V~;}=7xF0glM ztq14V@lLfbjg{~8bykeIN>C(S(Gg{QPz1kLk8hY09WrQBKi!b?TKpd0zF257OlsV$ zi;ShidxX-quhVq=GjuoLD4y$V3;OGWBeg8YeG=KpK%f|5i$KaWb6Zlo|5RsPy+3)j z$eGBzI&J{@DVL1vD#r6Gr16icSNUHD@#j}A8hbl7V2IS-_!`t2;qYmAA&kf^i*>RR z<+JBDZ+DL`5wtc)j}NXAtpg3xw~sG%fBtzaWnOF(i6WyEkCxC@6dR9)(&UjMl6Ny<%c6aF$X~fO!OTTvh9@JcP$I$JD+4S;Dbe~g4;Jp zjZCK*8pLX@JYpn@Zp4j|g9B_*@QyCIGoX29?hU$t{xz4od%l>pk~c{BvamE%rAodV zRA(^@)Re)=k$ya=>LLrpf#eQP07|Oy<`l~pnnFe5L`C7c?CKV$j#X=v33ze&?M6eo zjT4Qbp{SThYCAWDw^R`o7@(NQ`-7nqF*n~e#LN`x& zImA6$6sVywBPKx13a3x&(5LnSS7!PA+I=K`#YT-DPjo4bdYEEmaJ_59k&k%aYJWyM zX^+=Pb$ahkx1YOHl`qUQbVrp?~!EE?Ay>2n^hh}g7Q5g zzI?0@k*bT01cMa{V@{-ZJV(l|r=1#G(ZSJ}=TccVfp5*&Hr{%)r+B(R^ z`(%rYzNAwe8a;8!kPzf^ zUcUCV@#|mRt9v**gy6!SElh1$HO7smH_>W|a> z^MKat*W`?K9j{E&?_%idk8r{=a;Rdg$U1&=elM&~pPb3mWI%`A3wxnMCK^*0%~F97bBTzh-@*CU zR)`?M{%3PXb?4^-xxRF#{7zLYT5?KMz#c(u5XO2`U&58PWK&lxuGJ|mJh?3Qlq#mn z*~@K8xPBoEUQR@kz=uS=pumln#O))oUZ=Yi!r|V2Q}F3$E{aj2!NAVZiI(1j^PRSo zCT;7^2;$hXX$#(5`?thLuF?*1X1qf2&vJVG{v7E_xGsM>YRzCPGPi0jVO}I6asZnb z406g7yQtA;=5?h7mZ{@^pM=wS(Z)^VX_|!b<NO}-h#hO7S@=elAuh5^s!8nr=r@4t=?|q^92y<8_Y?vQz!#1oG!-(%p z9zJ3a+n~{V0&|#H#QlD~PoJjLH%tmM)vmSp)!1`?d6;?~`SM40>h8<(JaAilDs4C} zYTW3^g&W;u$W?HPu<%ob+o~Ta5`{xmF{mKZjh9sY zvyUniS;ZFBnU!W^cag!=qu=4qg3kXmg>c8$w00I_snMX8NT&+hT+NUpxw*|$=GY}u zK(TOq{m5VFTVNn!-e@x0v<9V;g@r>@FGEh=j>>g*)yZ$z&QBlPScT$=Y_dpGovO6- zVvBs%{;b~}Cd&0(B<)mqXoQnxj+-Um)YyOOJg#UT!9-yqjGy+K$saH+ zze;mS6%J}!J96Po525*Sf8nwNZ*ASIZ#JD!P+*p_&XSCYJY&dJ+(|}9j^F@`MYluf zOS}*nLAtMpbKza_j=f%Z7w1?oWp+6?`Nf>WotM;wcP93JWXHT8Cr>bugoEf&1Vrq| z;(nKK>A|11716d7e82sl9a?MX;MQeZQC}e{_w(%nP8#%Iwo{C|LmmRn<94a+3sjjf zI+yQpPRELxE#C)VU!1%4_9HQ4;tClX9x?PE-7$n@|9zrP7A7-Dp*I%fN2uhopIG3{ z#V{?pkW4a3$gW#qaA!4)@3Y%Ibtl))M^Blm3?*EKy*kDxS>;1nc~TducS^Y{?nXD? zP;VgXXU?4B^o!@}Pe???p{r5bKvAG8>0sFbrl_-KI*)@(7~0)XT&_G{*37qpJyPb` zFI@f2VvtZQoWwIKnY4st+4cjIXWe6-J!i@Cq8jzuI&=+llCxaYieA3TEFz_al3xf4 z+>f|9)saun*~XiW)r#t_BkpPCbpzAV3Q-BEUI7#x9I=RPBe$9d%Zh5?Dt<7S(;r@3N! z2iaj7*A7Sc;*EhDM@wr_ANKCGi>UII7beut3x4{wSWP<=l{_1K`z_2FN1^36WYH=W zR*hKhcTLZm-P6xrb>~?}XcCVK;6;yz>PTEGd8CJ@D@ae#Hq8|kY&p&2 z#KtyJO7%CvY~3@ne0LS!f2~b8r*1JJoUH#9mp$Li;q7|52`6zbd=`_yYT6T&HYSnT z8%Mq=SW4z@id!_CXzXXLZl)P)mNW5@&q&&(+Leo&KNrJdNv(d1Grc9|82zT=Rw!`y z{jC3ksb7%piV=0Vri%%#%5AqC#uf>wC>%NJQoP|33H2Z^BUeB{N=c)(H7|K%ch==? z5xKQB^V>0_v{k#zPWVCxIf*hS7BgMrmpFmf(v?YlBu6{*r(}b~ZZNrp)Nijc!i$Sa z4-D3=Y|DbA=8d1UGI5rAn=GFYAvwQcHkYd%Gv7EH;2`zJvPPIPbmf^?;h$L9H?z!( zCxhh|-@fNJnt5jz^D9g&px@2imJVJA?(?=&NixezM|Fx!Wj%;Pw;jF=S4(`=v~pex@$pI+np*sK0R-Lo9iz~i1Eb+LatB;x+=HW|^}!3n znv24NHLN36-YwtCD~$WmanJ}c_#U+fW?#ZwZAHH{d8K&rE~J2X_sH9wl22GRg9YwF-S>dVd&kgq9_{O7m={cO zHG1vGmR0S@sSXUs|T|$Y{~l%`AYJc6xzp!EnX2(t&{PKvf$^+?Ip;ZYBertmM+LU zZsqiZ)?%;`J8ycz{KI!&rqO4pc=?Gsmd>4o>1K2F!d}v`uU5{iqQD0KoWYW5w${M= z(b;a^(h>R4e`MVvxzZ0XHT*En?ydCs4MW?T)j!{PFn!)U*6N9$Es9e0NGfv5$!{UL(dVuKTA*=jHi>`PaxF5vR0uW@rB+8vg6#D`NM|Q50?%36Z}c!@b5syt|6RZZ*oLk_(UF6_;rbQIKO4TzcP3pgG^5nr1q9A49PH2z1T{f)NIEr_p5Bm z@ApnzobQQIzc%(dpAu!Edf`S^rQjM%8U?AU-3HN+q_ePjh4qzxpGp%~7&s*LFbPdp zGMqi35Rj`(vY5L)8LN2hX4^ZTx@J2VT3yNgg*G_g`6wfol?;<%!J?ET0&QfLTu?0p z;nYfsyi@M8LNBZ=#-waWDqx%?3?PdM>petWn)T&&&T_3D)qmY1ci_k2LYM1mMcjP0 zFjTXcNZME*9=s|428>+?56L9{y7kd@X_uUW`!|Eo0(!L~ORYR&frCR%j^V9MD@S}z zT6ppk773wrwHqDJw6HcB>Zd%VrL4A7VylbEUh)vX8x*UQ$J6P)EsixAiWV?@Kta5h-0{S(`8R+eVSB5)MzgZpkedYb%Z3jAy?! zkc=>)2y+w3rMN_w!E}$|^}>Es%&h6w)Ttla9NPTUG&Hv3Wnjo=*PreH#7A#l5EY<& z``RVYINTH*X{C=kNThU_wLp^iN5HrHu_lK`!5^*)3SkT93eTSxE#4}pe@`foGA;@? z=*yQ@u3dB~BxCai_j{jWVx8JQZ8agsOlKP%=lnX|356r_is>x+Ml1Yyx`dZMUt_p0 zns90SVLfBMVfMx=*ICrDSS41L>(Qts7M4N}Gn54WnCwCfzJJ3G;xM6U9y=XaK1b6zHjI^+G+Ao z5NM?h{&%*QjsR!r2~NW~?=YGz8F$6a6mM1p_b?!tUW421(UnTIJe3;_E$0BW+5kw{ zbTTOpD-oP$+L8H-n8aNP4<~zJ2%yW|fJEz?35XNaR7P|8cc0y+V18L;CPKu=SJ`PpFpn;<#J z@c)iOnTe|hiT!JJJmoID82o4)kOKhTR~6PROlQxJiPVbs{&4Bm;2juV`F1ytywzJ0Ga}_t=yZ#aFMhb&^lnRss(so zcqDWK0|Q(_5JU0f?00MQf&UOX#E4Db<_Pl|^nA_&JptJpX0Fn0yYKy5VkPCex zt$aTsbGh_9gxl?)>D;R6bOO+PYpSYTnihbAorK4!@p3)2zT|_dYDe7BsxaH34S^fs z=d-<8q(6Y-Zu#!ryODz5VV!*EbCsY$SX5$K0J5oF>O7dv=R9ZI8Hh$i>be^9x}klPGB_;gW-J2%I9Yoez_WkTY_p|`|dQv5Y|K%%sgxP_P|W`H+*B2On*C8O}QJ_V#4d5$3&>lN4^idx?oA0iqN11kn$Gp-H1U zKbAYh?fPNxLqIr#kT?2V=W{}Wih{zoovQ+s!blMo?imX(^FW6HYu=h&yLCX^f36(g zP4VH%Bb)E8%pqV+k=<5dcibMk&^QGBEcgZlF#v*=nmm>5RFF97=Ujvc06=@hPCul) zW)e)NbwEpYqo+NxqEg7feU_N-^^I;V$e4Qj1u;7CZ{OV9WUmzzJPH<}?8x}n=7&ie zJv`I7a#W;NzPwkvSW-~%*R83&y&V;g9++4|=w>U8F`z6@QA+)8Kpl?~VcCwl%FZtn zK_lR$QV<7gR4K1l;A)c!%E`(3zYhA)5iC~D0LWf#HvURfL5p#+1l9lmtEXU5(5qLh zR*lNC#f0%k>K0jHpPlteQ=|hnk+#euuWlMaxcJha7 z@2Z;zEBC>wE3sj0{54LZ9y1JuV2GsJ_&%-zy`B+)`A1_6>Pnz zbdFQ-9(!08C*1stOk2okX z)&yix-qRI^asszi-3IlmvC;$l*Si<5{+$6)mkoM`j~_+ES)zY^3T8c4D_C0*0ueFZ zp8PtBEc%k*)?kc;*zJFY56%yaos_=*3d|YM-C@q-V`J|#_;1f!?wb@|ExY`sAdH?u zh`IAKFf@eAFDwM}5qaszC0rmb7Vv=KySloV?{?=6#>h?|Ru$o)i`W%Lt@r&M0Ad2* zb4^*iRLb0mFT0gJ_U0r`1ZGdP5c>u9Q2rQI{h-k7@$C@SifoM-1``>ZX1>?qj3Kr__ zLX$i234tk){O0^a-oGv&@EI1Q@_)M)uLR8jp3Ms5zG&U&_8b{uzwvlL{so);`um1?um9({X3R_B9#mdcj0D~P&LYw&h9z(}OHW(9?X$Je(sG&D-N?|+=ln8y*8@}vz+R~pw= zRVjb?a4_G%$-rOeINn|pU8 zpzs{xTDKeqG6V$fQs~Gs;R4xp|7AImm%sS`=coTvJ;5(T34H!#MXdkVwD_Oo9~`Xc z4@dCtZU0kUQA%MU{%;>_jHr@GzwgfHg+yR4GK8$xtW>EzDT5MAV&cc z%tQErM@D!A(!s!z#k5T?L+yn}b9)$m3y@R*`{PfLYl{kA`RIVoRLYZ`2eU^MA9k`0 z(2<}7eF#UGk6OX0F)^mVG`oX;s3SLnFV>j6)pc}AU-W=$xAf+l4AvkoT170CuK`{MW5Y2nDwLq~$+zNV_G^+Wj9}T6$?GAe$3?v(3Hv6&j4!O4WuXxjQQ|$j1U5Y&Ol~$B&ynM}WwzJvT$4S0^eWGWJrNJS5mnM@2Vwigl+VUs5j#rLAjgwwydID!fa3czv? zh%^V0eq>|>SMNm5j@ql`T1BzMn))@MmjN@EeY1u*9YVY5GmN2{N^{UFIjXLl>w7#r=bWm z7me*-Fi;DZ)j~oib^!qijBZMLdU{+Om4Dqq^L4IFDoA^r&iivlm7x-e+EE81KEZbNWefmGJK&)E%{Ji zJhnE7*Yv{G1D2%_%8bmg=i2Q|HGKl|i~N(We$hy)z(fF+b37&%(N)B_UF zJ|lZ=?exi=h|&~L-(8*Vl>S&x>FJS5>Rof-?u;OE24vz=&D#CD>w|+fUT0-_`9rWm zK*S!;5|65x-RlsloxOc9SAovnoNavQJnGERH>Kcqg1|H=ddbn(M0o|4$#4}4Yg^q~~n=It`7yaYe-30*#Khle>?kM>-XZ==`C#ye5e3Cz3hDD_Rh`4f zyPYnpYV>^g!K*qVsl*yXsX^_R`78aN-;t;9bJIB;Z!7K24!fWmDBWr*z|j1Dm+bg^ z21D+9`)+T$6u?qRRymSL7fkuGcILyIC)Hk65scsOPrH;Z8-D+M`q%24tqX&n@`u<| z*@AHw6pF$OwtI+w6vLV4W{@Zv2Gn7ejKKx+=m|zy(qTf$3+RRP55!_u*7=& z*hL#ni67Me{jvY(knqI+_19l3OTQGt1k!X19r-Obeeh|UHuZoFEptSLdkqB-$}m7$T5!(a{l?zVe=0jvkScFs=q zu2nrc`nVufC(o+fo7zZqhhpS-Z>eW*iTmh>l9G~hzFS%I-PP6AOFdSsdP{U`R`xJ3 zY-c=mtulb|^y$+T0#&uO5yB3m4@u{+CGs5vg_BGaD%V}Ve!a(SN_6hq^73-^lM~Nu z%*vvu>b+hFSohqV?mHV1h=kv*DJ(2p{DJ$(v+PtiZlUyi!BeZBBXPPl%jl!s&}TF2 z&@(PSKZWw9sHMcWD=R8acRTggKIb3n$hGL;#8T1YyScvp%d4yJ?(RI={NUihgHzpw zL&L*~-F=w*%{vYi;VsI_js5TLs3N&lS6>**&W*P8 zdMsIbdam_)uDRp?B_$<2f5ySV5fdA$?>?u-J7OiYzAo}K-E@ZMipA>k@6iuo-$HLeT$eiAIoCvE3u&}D>B-~AF)nj8!R%aITpims z?KpH@tb3bDUpw!eb?N%0>D>#%4Y5WVoY8OTwwE2gckf>kzmkDgWB}_NJRo5HWxlu<)M~AW2iT3QFRITjQg>Mgr971`n{xx4?pQfFw zY^|W6u-12bho0L6zlcbozQ=FLVx`7Yj;?gEY0=SFFmBeRD~>~-BP?1|&8)5U^Q^k9 zx(foC#69r4t3%{#0*Ut0$5(~S|9!G!vhPa<%zuB9+#mAFE0uclOc>5alP>`nZi-dAqy;D<4-IF z2f{u-9H@VBF3-Bx%Fs|{TwW@0-`wnoO0dja!v!XK5#BEy9gDYjh_MuS-8Q>#(3hl` zr268;i|5AJ%WU(szFV()EKTHf)P_ey_&y`K!8NbYQgsi@{2bf zE3WPITN8IiQ{L_>bW#{{a*ve?Jay{S*7l*nkI!VYBkd9J9zT9;zsOMQkHyeAIaA9R=Q^a#3RL*ptVZ20wC_1`T5R{IG>JHJ5*%9KnM1TVXhH;zSfzd1t4N+fbeC z6}#`B8mw9|Q3hcfk=+G#-rRU`+Fp?6+~>&ObPppV)3ul{Q~h|mnJGy3t=B#T?x2*E z6nVPo>FI^iwWZRJ&$!1j?JdmB%`*+7Dw5Swo_?;kZYa{UpMEn-*->Vo%GR>FvLxHC zYuS>lrd+34eJp|&1Kep{+TPju?D9+bqE_nqxP0lz*GPR9PHp#IbHC)>SgQH?^XCp; zi%X7l>lGx=pZA_mIiV2AvGS|faiXKcJ?dH6COmid^)fHY3W2en;zGx4>fOvC=YD0W z)MT5eZ_Kgk)@~{>Yl>%P*+qZAE}HV(%F2{yTl>$xx3?9Df6rOknagHNPNu ze2x;&P-WA9lShQ%IyQ9{y4@$_&)5!Jw6~v4*DbWSYTL!cw1!m?{3>sFc(~Z@m&|YT zfXe}&%XJXxRpRB^b1m934L`iT-hRreODG~o*yQtp33}>)^nu+m%1H=SPlJQwiZjhy zl96#3#csYaR^<>EFZDk6DMCbJDXF-41@Y+JyLY9(zlT-$@A);}u9C1)8Mt3x^L1?O zx3P>;F@yJajccFNr)f3CTePJgl?pIze0fhk3|j@Mwk}@W?^XiYZ80}ESgk4klK#T+ ziw;Ad4^AYgC9AT&4*fj8u;6Sryxp>+DVkfiASg1D%kX3(?X~UGWgofu`Ev)TOZL(D z#CWVMA|Qz0T)2_REB5W%H%?B@+(IlGsf57Kwd+#T(yY7Qyl_!7DO0O0FOTtDTSYkQ zMBebDXGb91;qdM8h3IYE%)GoRCIdeSl+gYTgJPd7>NFYteo8_bb00xcAf3On{opBH z-j>I}VJr?>mM?99ge;}zl`t0pZ9T^M<_gl4R4MvDK@omeo)=zE7 zF>CVn-f$`Gxa`wmz7Rp{$a@bA7Lw`@`34EcYu1qDCXS1F)2=NKiThg$m^B`oFa~1b zy)$VvWOU$GYp7z0+b^r#%|He_P0JJ~CnpmWq9!}@rncxLt0rSofrXNR60pGo;u;5p{b#FBP$W_dHgm z>4nXk@8B8Dt$+Xcz$7bFkBGcq(CYH@$M$>mM$GKu=u!cKLqzpEtAnY6k&I=((_e@DRD z+Ipf_KzNF&Y&g;_?leWxb3U`im(owTOP7BFK_Ra$&9&)s>zCkSg9cM+ar4zDqGpF1 z&J_z~%ESqKt`^Ow?BUi67j`gj&;t|@u8qv|)Y0k0ZjfG;2~Z8Vefu1;Z?1+G7YoZ5 z?ET5^LLXWz7xOm61_Y!`!wV)RCZc}L=crE{V`F0z6x48&&E&*lnwXmM1d3}skpAk` zG~o9?ADAj#^BAlN-oq7|8mpeBEh%W8af#$TJu~BWb$|PVBXg=}oTnw0%&Pr^#x9xE z|8mLhbU0-ZClmbXg-DK;rskVBZ?0XtmKZf!j7*M!@Xl#*JV zZBppWvsRFoZ?(cFgj{}Ja~Qt4ypZ|%Zu8sQn`P}{t>ctKpFB|+_e=rAuG`W7+$?=~hG%zG$*~C*tv|DYfI2 zk?oCuk`RmpZ%D~dZy7b)8<|)$$>JJC)3m``Ki5&+`;4}1hs16suH+0GJd)}M&|R5rh`mrD;HKvtoF`&$x>mL;TB#Ly zegp_$btY=HrTX{i6&`Kp}v5C~iDLMco_`d1W<~gpMAK z)yU8*U6~K-xg+5HnaV<5{_{+FD_j5C_oAYro?^GCGcL;66|JrFOlu1tfbtMle_(Gj zc`Us6(mpWw0HJ)SCLiz3Vo_dteo?6_f!18OLH*ATezC&r(qqX_X?T@p^Oc8rJ+88D zB!Lqr60j&9n_RM=>T$=)>d*A0gaf z>DN=7b@|k^s%ggL5%2n&eAbtR_nfV)tYqlq;Np^BO8Tx#vUVD-Uky4pw6cEh!K3wF zXYm}Tau5NB%6+yRcVZRxNYZ-~s~jgIY$)3yc=BXs7JIyQt~oN=-Me?47pD8~?LJX? z|6mF)rN&asIThf`lFv_3BGOqh?BB0b-eN7x9usijwDO5letXhbG_3YIv)QjxWaP9; ze(01?D^OlPP6Wb4NFb&y-PtDPBHvWKHD=rSG z+^1jF+gplA)uHp0LrdBIsyBeeOK*{#mG9r1igOC<@{5Y<7E?**oAf2|T=JUi$W56a zl2nKi(?#T#4HKK@vahgHzG45t8{pJ&|=|*lvD0KcI?>u+S*G?p1-iX;tW6B z&o-&sPEFmQH83_5<+(cjZbx1C>DcVewd0-G&Ym;1g3q75w(ebR)v=zN?A9qiLMXw@amZUTH{U6?Ck6l^5L3itxjFqF{%#$N zy04hS&mOp{HLdg3`ptYgJ?_7BJv}{Z4F(Vy+O$$dj~zRoy&PWD?L#Z#G})a0Y$$+{ zm(TNInAiA5Q)D#VC9?*HTFP%nB-U>Nmk@yz|M_4V082A+HL&ICgth0)ADW@qX{rYW zHW4ohI=_4|?G1@VxJ8O+{B*VI6;4tOZ*cLxAo6 z{{D_B5@wg>z8Yu>&4hNXxlS77ta zSAI`K82{7#D5Nf2_y7=Rw%T#VZT>oA%kL@AH64+1z#s<{LD*l&Q!LJ`&f?Bqeg~?+1J~%0M3W6 zTh~XwMaY!htrHOuv4csBNENce>BlxPd>b7t01wreAvrNHK(}*e|G>aYg*2&CsBr4* z>v!#IPSH>}p=G}Rq`~=Wi{Lkfg<#q)xyfP}P++`2rN7QM%8yI8z_e7`@pk>pP~8*? z+AU$*4xM>3EIgUzbmuv6DrR)6*4^DK+t%@2*#PK2+L=bLTm6DXR`w&}`r3S_HQ*xK z>$51rH`=(T4g%1?iXN~Xm zU_$_nb2q7(Dp^Vokjc%-L9IDe=DiU~%7oxHye{tk) zcR9IvAJ20P4_=9hiJ+JWxQZKOWMq86Bo5-w(Z(hT-wps221+tRUwp2>;kao}k&CKo zGb%fPp{1ERanzK6K&7B-PzY_`y7d6BaX?g5lvxSOJAY~_Dj}2Y~J%cJF@j z{Q2|HP%|T=!SV6&p`kX^7)1S6H~Jc5ij9UEc@gu9I{+DW#ul8^G6N4YrgNSm169D+3;7 zM%r?SiIo5*K6mH>KZwkG#YOg%0;02u{ym$ec}ta52g~gn=@=MLw$EUQMiZurW|>1JcLHsqW3N{ed*K0>eo1O^9O6hkOF9`*Q5}oTak4APqu}bhP3!D4 z`F`1_5~z~B518Wl?DeZxcQP;-e_f||5-dbtD3Y6Qk+afFb7!XrGqcoCOeOZ!HDhD* zNa53`9fs@Q+88do3(1929X(WYW>r_E`S$ftibfo&jZiU+C=Y zES|i(#Jw)$wxsjn=~VJO(VU*+W~$jPN%&d=(S4E4d9t_?q} zBASqhSON;2|3{(H{5o8^{M|eL2hTXP3~FLyj~H&)M-gdbXD8w?sv0I>Dbpmx$2SY= z_@&8ipxoESro8Oz{%1`CfjE=jjUk&{V$w6>K79JL3u5-@2h76CaO?v)7kkwk0TS!W z^f8@QUtaZtgDJYvPj1jaDP8C=CSddRePh@1y2{7F!SuAWH?X)#-az4(FCVyFPreIk zaQ?@)52CKK4_!aj{ZuMzPEz5|Q_)3*IA2S3D@)32lh;?);F^UsRt^p%+PRq-(B6-V zi;KJB)Xs0-en7L>HFxm`Xk3|+tH)}J!7J}PDs|1oWD6--J#7(bq`G9202|#u>J0|; zza^Ug>s2dtD0JUs<>W3S)`76-@_|hEv+nKNtBbQE^Yinzdklm(4BMIl6F@?FSP0os zQK>mi#|hk-t;SX2Z!Fy03RDd!$gwYLbhl7Yu+$M)5^Hzh`}Z2%yV5(OKc)dRDntmY zO|n7$b744ma0P#^()CHQ*-648`nRRPz9ZzB;OEZ?sbPtp)J2ik7OOpj?d_1sA2?vu9{*%p&L@1k$1+s`~F1 z@9*w>`t+%*{Tat`O;^`~Cr_SavPsLzvU6~Js;c@UK+;CnYFs2348EJ(C zHTxL%S|;g@|NXC*GBvAp%RZhE6I;#e^>CXVew2}6ja&kj9-&?pcOP1EgMJJLu=QgfJYqUvLu93Lz~kJDb;~7#HT@|1PmM zg77`rlJd;am4W;+J|095BI#<#DI-5&(WT$N0}q`33F>SF0BEGiztu9q%)Gx zcFS`1-tu7P=gSEK~Px^^3;0T^_>d=q?%e3Z=u#zNE?7#Mid61oiwoiKNYtqfa8Vl#u#^M6F)_ zOrU31X9=!BmZc^I$;25iA!lLTO$-i#9?bx}i}7y<)z7W-I(7KxL41nEbMLLyCxwMe zzj{4O4J!PAs@lJN(bUmtOVO|fXwtv=!-qBoUx78-SmN)e4KN5;-u&w7xzjSZtXI;> zb!ir0T6Z(c(UKEY*&@ykBC})in9rP9ZqxS!@=!u0Sl~1zc5`7mCW-JU4AN6B=KDoF z?jIW~L_TiXLwFQ;A^zdV|8z5`2yG2UD0%)o*<*ZSg46mWakmy5OwSzzVUNmv^aERP z&0V+q_wKb9I%OO>2sPB37Go{NL5zm^2GbdS!^*95G0ltlZokrZ`eX4xG3mJJKHG2s zrD0PnQ4``rAqrT2ida^@=Dj5=?b#+D4eD^iP`@4>I*7@9{`j$hQH3Ck7i9}on!eEQ zEgE8cy3}xyvh$ji#6ACu=c0`6{vJiPU^6o_nK)4DO+d%h)k(I4HS+TEwrv~nP8Zr} z|3{A>XQ2W?gt%Pn%1 zBZ!E^he5RL-?y(L`s{k(|Cm5EHZ?i9Par!85glammoHyH2kI3$H$W;H@F7LXKvAST}p2?@cw!g36VN54g}@(CE* zhc+@Ya_7#S(2e89QF!h?bf_m;jh*zKNRF?>@XnCU>t=aRo;*pui!vjriHDA+0(r`Z zR?xbK<4FzPa7CVo7)D0aq*d+e;);grdWzX(?i zJtg)z05R!3s4ox?#~dJbY8N`D(ZSmDZo{y6AR}+(+qWd>`CwDT z#l<0Eo;vl@r#L)3960*U4koL=Xt3T7i^Shpt^l6|Lh(2BvW=TImAtZ%kSIfi_x0=7 zi*>}~Za!LH0B8yvkBTz&{rmS&Uyv`r^cv%3WCYEsx}l-r-MgcQ4-?@SZ?xS5SVEz4 zR6_h2R1dsd9sX?HK-L5J{eMm_zollj54R*s)sUzZ3-UkMMwIw&Ep|08Lgx3O1x@h> zTSWiGTTZv#f_RM~Jnt`I$NS1Y1)FauxQ1~i-v!ut=R|D2kkdyum{L*>UMH<@|^Cw^}nJuHSrw)}hM+t;rg9GV0B{|*<#E&qEit;1L8?{^nEMTxqpmumRXVjb@q zML44P^w^t%5FxQGM}7h1Q7DS>5W9-vVYKSedMpp4%S4o$wq;TCN{7ius}0jlQA7u} z5BA}D4p#=MpMZsJ4G?aYzZ!SiFjjg7l zqC%5C?DnIh7idVX^W)H7t^eR(3c2K*qxDRl%bCKWo$c)_L*i@q9y}nDQ-d+qI{ZVP z@WX(JO^+nGqcE3#!pxXyVD}1(2E495s_RKI?&pem98JBnv@|sGJ>)k91pq9IQESTy z0D{yLV6SkK9;3~y4!%9$=8#?kl)3P!!x_q#`ZY^#y2#7lr~UdwLCg%>m({5oI|vAE zq4-yiN|GvJ_WHo&nd%v8G=(Z(x$ymm4`Z`1OZfj_!)$t;W>fP5=kT1i95Df$`s4Xk za8uxnc~6`eN{I4kOc35Z3QD?}3*Hg@Cv2V}SjMQxkGSjmGWy%&F}9Hr=noIohO@tnJHBd6F~=(g|Jv4iv;>fEeQ z833?1Euu(6Y{osH8BX9x7``xlvNAHGAg6;^Re**E(}|d3{8E*&024>Pi};A3E#2V; zGlQyX5N!;u=Sp|NA0#+2cwmQ>lT;CqExX>F923RXkch=cK|7Q0BI9BHWIC4MgaMj* z|M7K+4lYM{xB!p7bav{4^e32_n?LU@Zoz{~Y}81m5WP}H0pg7Ger=_9?f9`{LAGtr zxb;`Zv+KNR!MtGz8w$_o%Z2dtV<_(+e+nG7oj*e>M7?_jNUKp1pM5;r7| zwMxDV4u%J`IMvSm`#Zrm{(|iZIkDn(k^P7=(mPScJbrw{+qAo24y(vK)%H>y78sOq z@#X2;2+PVz2SgmNqw4zmO9kSzE9I%Knwc@~+hJ4&h0K9$O0Yx)Aj*JYx%%=*Z56N&sK&I_rL*o=kK+#5=-hqp zba!_{Fol@W1=(F6bq^>}Q0sssm~C8eQZ{EG+XICIUW4gGoc+mT>fw`@_iM|uHUPI? zME>u!VZWw&t*bKeR|-2t_1!_R|2;S;^4ewQJ0dlEaLp-UztdIK)zX(Psfl|?Ym5RmY~2iXNcYWUNi%X6Lr6T+v{^(ow)5l6){ZX z?N8vNS%G*MOjwN`K0NIGCDZWENeez}JOrn9&L4h*BIK?lYi9%&TZB{3kDotBLFA+M z;~QzOsYynD1I2q$TAGp9ST3~XPm1wT4wS&^#^UPi&;i8h$g?KQahOYu^vn6z&51Pl zNj_;^j-#tpLreu>PuaS+Z)8NvSS@rXbo8fB;n?Hl<;8GBgom?fq<^|pggwQ^VP+Ry zXg_ia&RX!ltaN^-*s2a-p^SIs&tL>05?{J_k)@y@J1@^kQBe^UE5elf&70R)i9Dah zGI78(7f2g=>f7F4PY5ZnXBeqI2>|pWq%|g{C}f_A-coUpv|rp}j~zdbnvMk|NL?L~ zFQJa`xhLV99!e%jMH7;P&9_Pv0oZ~xBp{0Kf3I9504$rE;DfMijV>p!zOSfonCMVj z+OZzWJ>V)VjR+x_8)S93b_WIq-oHOTw^BXx^QU_HWfu^=_)>%$jgk%`rXN8h`I87U z^xeVa!+{z?&1`a3=Sxy~z9Fej|XU9iIPGi?Yih#Qd ziG#s1RXGV2`gU;da8AK=^1iYXbMy=0kp6171r`{MJdl`^(=V{5gbfM?y64!8y{q$r zbMpww*ny5v#GzJSu@#UQ z5OH>q0Zdc%iaTD?6WeWj<9CUa-%Cq`9EazD`8kx&OgWfMt+|sw?-=;@4v6cx(S==s z($?JtYE=CrBM5r^U%x8X=>08ffM(c5zTWvdZ7Z>XyT|$Bz~eJy4QW==qtb|Dh|O-6|(sMKuGBm4;;1Q>4WljBzgu z-%A(W0+SY^)C$5FWPaR!0m{4Ql9PwdIKP7ZMZmHHB>|&H^r^T=$C%!Abuf98spgD) zut->X18Af9QO5Pa)(D!rvZBKMXY~mf!=FF<`t4hwb97eU*ciJvnEJmCxwjN+(xR}A zKEh+{)d~&xJJia(DDdd%`HgCVh|O7{6u?fT5>Vdv?%t)6J{TJl1D7JZ_b{Z5P*nm< z+9@+rYR6&?gC3HXk?8=g3O!VH0~c4X^Eh>ySY}TwZX+gC+{?z12GS z{ks6l9YE*fkXrg8rG-kjSZ&R-^a&OFL2As%EoFC$&jDx2o$sb z!k&>^!Cf0eME`mB=oA75iP1mK|w${FJ8UkL1;rvf|as< zHV#iJ!4M#^#>&N&4zz+G{+tuU8>lu=4WQ_ORS*KTw6v z-G~Md{nCJJxl9(wXDY6}tpSjTktP$~`Ds1q zija`Kr1PexiOptvX?zU&%5IVG0tY;mHlnCe*4FL-G9@6<^r@@cXL<4TWU3VgXSfsS z$%)+TeEWlgYs|IV&WRaXuoo5kn?*c4Ohe<>F7MXyY-t|u+^&+9@kr6$%^Np{o)gXC z7M$SL7wav`&vSYt#x1*&li<$UX=1ESU!ED#RwGD{`IL#%I~R)qbDfPi<1_R#C|^0!`^Rh{u=cP7andfPj>4N&sh0u;})^y>36V1Ezb3xy5l-) zH8s4K`#rxxora%$uPf_lLb1zh&&63YWo0?No+)GH9TR5yjuX3gPnj5tvBoR>W_J2Z za1X5Q>TAECv(K$AO|8Mc$vqAwWVPKS>a>s$6$#0Le|=7tMc125+9P~?&6*<3jJMLO zkR_Udy3s0-zvYp>re+AOLG|O~5Rwv!h8-%Kh3TvLTh8X&jx-)8od-KRz_o$J4$zOD z%(G7S?Eg*-{@oj82FHa)f?QApxTJ!@LLJR2mq81F2dompGq7vd5kv4`5>o#`E{Z)1 z*cW@*8pSVm!{b7R7i^Q8rYJtW2Y`TisMxr6--Qo;PFHt->I5YSqrrg#2RNKaJaiww zto(Zf7V|@}hGAiD5blZ50qjHpAimJIK7R}4r)Ic~a*=U~wvS2jfD_ghK)jK$ag8oj zqzfn;*I$#U1UQN7{O^!p{(i&AhhPB=;ZHD$a%Xnp^g6BVDW$5Z$>K!%3GaSCI5qfE zMNR7u=Ud#OB}4p0dDfSR_&y@oh8_UL* z)q=e@k2;Yk6knr(@0uNKWMU@V3S5`p+!$$$gE>GR1jjd7dHMP2X+kq9GD_7gZ0+q` zL$UbtDdoDH7a(aKuU?qc_If65Z=aKwmp8t)|LtAP=*l;fP;{V=j+Th52g zWnUJvDl|X{GCkdBTsq-h_4%{FfPYPOHAHe;xy@|{5nS$KIiIWHnO23<<^mC4O)hT3 zQUyH#s@!#|AIuj~LaP>k6oMAA=+WnUlQinzzAgX2h2lGaR3o}l>guf+{oA*1Z~OgP z%wzcr$n(ZVO6I^}-3<`xQ{poVIA{c-}V zw*qM@f0g&<*#lVNA!&U^p9Z;3Caw{=2K@#s!7mdMkR04xUD@bpR^}fldaHAz-)K8!@2VxH-ip2>MJ3BikXBtpFu<_!=*%eU-M@NBchcAn6 zitSbK>p;~5ldM72FQlRbcyAJ6=IB}9k2Hz(nVXr3)zDzQgM1eleR=sNY7};MQP0eT z_;^&ARqx)No0_@^l|n|wkJO8P9^kM9MHW4mLHd>X!`{x&hm4Km6A}`71i5OfsxHdP zq8X%RDM2ny8TEEuPmkV|zUv=81=dw0zp>)YKoF6UdTHAH#h#5oY-sG88XnfnHCJ1i zk6z_#K{o_UGI$OG0nDO@2%hxfJDE*QO)c-zT^|%NFff4J5D^mEdx~}y3mcuDc=VCt zJD)y%LW&1haA_)P7A-D>FZV8~AC)J)4Xt+Tg5IH*ad8nVO!*cr#!&yrcezUz$dlyN zS%N;H+Ii>@mo?*PB1TDt(E^-dKCJ=J_Nmrr7#)|7JeQI2SC*Ft(#sW5 z24=o`1p+6RB*F+~1P&@YTie;5bIQuf&d$z&*CeC87e!@jK7W?4+=uoZ@H}kZ3vH#V z$E_K^Ux720d>8dE?j7Kd4s&p%{_QAxQb>Dd2GkmCFP-orY(TZ$ur#w_rXQX}n9BB_TITRx zfDddN$GgAlpiPq->QPdif^Njk&7HsHEiY)X`Po^bs_OD7>Y}RW*@$Wo(qNVD#v0PO zc+ZevRQ@%(>lB$G(;zwlad^5;% zaeYe6A9*?Gw!$(cg;xMoeFZp#cF>Th!XP+3fA}z(E$d%b^4r2+Q>iq%6;n~fzgS&T zpD(pF;x4<1Dzl@rQ_!sO{3Lm6oSyKzhmuMZmJsv-DnocpK7&F8|08P}UozE)EF6!j z8Ok82U(KoG)f5!_P;>4RaZDwpsO_tOh+l#YaY)p)O2_xKGoA|)Y?s>Jw@{J@>wB(+ z1~T>OvtIwA&*fTA7^25-Y;0^~1nq~`78Zz`Ves!_i-&|HuKGOwe*@3^&wO16<5c$cH9YiqYrQ!6Ey03U*#_x1G^0FUw| zI`;pwj`!_S*h>$PIE*Gg_z8%dGu?;+3nW3`JH3z{klIi*<-5)$)5ZX^LP%iyEq0E^ z=Liq+ng+oW3b=wXGc+*3l0OKiTe7Qu6_-e%vTMPlx`jpmu%_JDhX;~p&z|fwv!0y? zExTpM4#6l_Qw6t@_J9n&~pPosFAtAK+oZG~Fe*Si{YLRTfK*M$Q8gj&$t!ChtwJ zDkm2}fGgEezO6pwlc+E-$6ZA(+1F*76kbQ@%7e?Ye=U6aUQCpiiz|(S!lNfDpY;CR z9Pu@x6SAgJ&yzpZx@*ft*%Ks1#cn?~Pvs~wA&?f@N zybbWx9>?mcD$Q3{&O*n9{0pdgLM}w{ALqs8^9!(t_M(d&Tnc!9qKyhpKz^u(_<_g` zQ|{>gBqY`(>z8P~^XxD8!S)DWtIhe3NRwH7PB8!=G&_JUZoZ*r!`Aj1r>gfn={((s zy}|+J6O{@WKlXe=o7Ax`CP)kLK4I}^q|qMu1d<%1kp@yE-~losjZZm?NNN>w8VF1* z1fPw&69Z5hO5CupKMItA*T9KxmIY}+uAXqImmYQnc;)9a8r=c0D_G;9$Higz>oQ6^ zR1mnT?4?V!2>c);Rg=J{#@@MeK|(?T1R$dHV0xxAG=>O(Dnju0qB;9Q5uHgg?g|Ao ze^Ka)K_;N1bK{mT-mrNySpO+-&JLM*NOJ&@eR zm&UUJ2#LO9-c~WNwr4~|19S79ty2-IIq~iOeRQ7Eke&-z*7!X3EhM&T`NxkbCuL z+?8AOJ|v9LQU66={I5P+qD*FT-Sn;-Ha1EubRa`*_b4AiO9T~3C{*f&2fV1-HM$p1 z<6p_WF+2~^20?y-C-YyFvlR>cYt1)+{6aZtAf56%7gSZaEYKZAd;?J20r=xF9-w%L zFLj+@Cxj0F#xs9xk2~GyYT)t#L2hzlKFjxZ-pX5XuJPVl-UK|m}alre*vsbV7 zW4pqG^N#75?>}R~v-$tojZL<{V%pmB9=xqHGZ9=o1$v3q(L`Y|e4bT(4a(AeI%LG-PG z$b}g=;?W}|+Y3G6kCVK<0+aysqz~_pM+YKE8e5HDkEyAtUHTQi!lN_D)pXMxa?ogY zP`tM>3e_t^=OaNArNs!jp71(5@MqA3_qdUv z3KT&E7;+e>P1@`u6X)8$eA-mwlP;wTY(jC$?eO{kaogcTIN@Qw=xLF)e&XzjCxVulKhaV+ zJ8T1Y2+5oLVi*c|ws9>YBm7jbnu#ZM+T$bx@I^E}hjoU{2wftlL_WWANlH$(wXxYrmcxM>J$7auV7O*}e&kM>(r`Gy7iSe! zvsm%cl(QYWca|&mInlQ`DRc4S^!&WKD*|$0A&Y$WbsagsrpM@lVP_WrXhx;y;D&|; z#L`52fX1}c)KAXbeoe;cFIyaVq7c;f2?^v<0akgiAU{~*1dq_|lF;z8BAMK09~BQZ zUcU*A5z4~PA3sk1F4MozqLlaa%c~H&wBw^^YaxoYO|GDkFvu_t#GY%hUbno>bE8fJ z<#1zqdV1E6^mKHpT3Tj}I%;bCDDI8Al~q)T`wW8tS8k%aP=g4lIR+IpPtw6~l)`LD zrYhEhrR1!LTsmV-O^xzC^cK%YNb}lG_q_!V)?Mt@wy2w^BYRy_&aX8U2?+u?6)8u1 z0)5uzJE*p8I|%BLHYPgyFem3F+)bnFb=@AY%pe^t1?QIOfq{lU2na7>|GZ!>| zO@AR>vIwqb+h2`y)i3q(qWE(Q8%&#{J^XTKy4b+yA`g)K)$r^ zaxR73oSeF^uZR9{E2b^K!b3EB3kfYiZFPL!ZTDA!r6ygPWeGwsEE!u!aB>wF6$J&- zC0KsKR0yTb;~*5&;io_nV@8ps-Oxhp@Ba}rNZ>ghj6EKFdZ2oD92f&Dvw+2)Dx2T! zy8U(<4bE(qDEDFP0^`f3f2X3da&d8yhBOJW5|51y*Xa;nyWgSHi$%NhCa846Y(raK zQDKB99Ch?-+Vqs+$=9476dKHOA+G=r(GD^^w}{FUu2~;n-+d2W2#wvwQj?L93G%g# zy_DU|r6;f8@M}`nNE&CL5ZEYA_Sxd^-}wavn>KH*!)ZL|KZU0P76CM*pbVIgyv{4t zEpXURUER@f9u*U@QhD}*2gESPwV1c)`Kics`%Bw&!1Lw+nuEDb9AkafOKMw<+ClQ& zni?5dL$rGbNgd=q%>sKC^iaIG^ooXuhD;jA`ulNC2?Go?B!YAF_xGPT`C*9i&m)h4 zk;u@>MhD^ouKR~h2Wwcox;R#8$Rf|Kl^sHtFbCf!J_NP_MoG+2hPs9Zld!!h`i^Q; zsOjlU+|ew04h2z=@8a7Wf!q}Mcmhu*;5d(l2Kd81ew1~OI@JKnJ^c+0bg@`gYnGTbrltH2y=)Ti2Cw!azya* zp~V8$$u%y$lTjxGU+%*uJnZr#CRq9~kS(&u&ya^qywFVqReC@jaFRN67p*$%ET_ zdUm!8K@6*WOmnke_Vz4)v%sfX;lT5oZoh45nXA~N&nHq=TgwT74=hx2@+g#WP(OR< zOjd|Ng=i9731n^LScXGdf_Hyxew26)t{^R~P^nm=*D>zosN|pklg*#m><|tL4!#t6 zN|O2}5mr(6s%Ut9&3W%z@luEr(kB=@AQMkmXKWdqEs<_y&WU~t#Q@6pOKd~0k7CIh z7BSAVN)lK+u3_6%dIoD1g;XlBxkI`QgKdl@Z-Dw~5)b zJP1{F2_yB!Ne@QoN>Iv*> zY7RA?d^amA3(zafUQJyc(F)4-z`$&WMMnEo+uB-qfPyMvbhC0S19=kss}P9I?w*vp zV%|2Nm|Q@DW6(0GcGA+)?%w@v;M#=78#)uq*PP51X4RPbU|;zJUXd&CRn!z`5+2cI z4tl>P$4$}kMMY-@-EnG!0LaME`O(o)sNWi_VJQCEZG3AlDk&)e2nR{(zy@b#meir9 zt6OZ@DKL0sc#oblNl>uu{>=5S&1=scQg=C6#3gVsOIk=@zn+@K0gpgX$D^;QwXcc6 zcY&dDmp}i$OR#h4WeEN`6)Bhoj`?NKu>nN#G~2rA-0e-aX9$C3&&`=jr1Qw^Ll7KL zr^m#^fJud^f|@V~hK7fCy*RhoO(EL_-Hg+yp@LH)AIj(Y2upXKj*4^NDMLn!q^Y zAdqM%11TvMs9F(&h;_GcrDYJxc>h4Du#YV+$vOI$pRg zie%I9(Dh#K=yHud4!{c}&dv?z?ZVR19baEpH#eM1vjFc2YC6|qv6CllD*WhyP6T>V z5))0E6O~{d+C_#vhLAVJ#KaJppwN5-DT~wH+*kKfm|n)ZGrfoY;OLh_XkO7zXgV#l zyvFEGIFFEe{QUgjqq@E;+CeztaU`A}?8^vbl?3}3&Ef>TLK z%9l0<5s*0G!3OOKrn!V7zJ-K}QAJTP+6pJ#t-%lEO$*@$UYGsSs!C zA-#G6p^dd=3<3Ka8>_3Th8(;((ZNshhAxIfirOhrw$|N9r>MV%%^H0?IWduFTt^!B z_wx(L6A>0JnQfFE92|s|gt_ofYbwa3i11HqQ>eZ?q_Q`9G5cV_ao&G>B?LAx+=CC% zptTQ^he9=1I}K-HN=SGCgo5<7*lap@eFT|BT}|z@uyE^YE{@R%RB|p;Df1YJqguDsQUO87B zOo1fQ8{M?Qi`kEO9C<|TAgPIjsADHiJYeJ{tamjJ%$xsA`}FjUKOG^2baFHMKKylH z0z^Bd*GoKkk>pNCNl_m#Y+nF^oCejIB}%I9+dxC(U%%Qygicdmn(jYGdXMdacDt`5 zBcagX&~u5J|MuHxv0cZ{oVkeuI*HS*es;aZd6m#BaG=yVs(zdpgcHtSa>1E<;H0rB z&r3;RRCK5^QK*1!HCc9A@6}CAql?P=9Dc}sF=vdXkz1^ben=rLS5xfR@c?u%D#ULb z9=I3iaB=RKYd|10a_pNL93I|FPu~KAA>77PBm#AUpP$j+Kym3n!VL-uSw8TAD9q5< zw_`6)Gyp7O1QXAdG8ARtjEzy-Lp~t9!Z?+{43HgZ1dzDE5QrEa$P%1clBPcP{d+4e zh(h5X$ET7ttL1#NIfb*;4K#Jv^T5MgjJ7z^`MEUE}xQK`&|+WJ$#5f?|9%JX!h9KaPwr zO30S&#Mf{FLBi4we>-+^GtOlFc4iwzo!~!F`k!3--)WOD9Ul8vAfkMY(k56fP?~S! RR|0QHOUj>5CtvyNe*l0?*;W7m literal 0 HcmV?d00001 diff --git a/16-bayes-mcmc_files/figure-html/unnamed-chunk-73-1.png b/16-bayes-mcmc_files/figure-html/unnamed-chunk-73-1.png new file mode 100644 index 0000000000000000000000000000000000000000..29b5e4f26886f90648cbd906e44d99d5af2a3cb0 GIT binary patch literal 23152 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: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
    • Introducción
    • @@ -463,23 +527,23 @@

      Algunos conceptos básicospropinas <- read_csv("./data/propinas.csv")

  • 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�yt?{@E@eDpH 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 literal 0 HcmV?d00001 diff --git a/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-35-1.png b/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-35-1.png new file mode 100644 index 0000000000000000000000000000000000000000..e22bc9f653eddec1a8d76e779a4cfe08ba8f1709 GIT binary patch literal 23122 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 -Wic_Co$8Si(>@$6ADq7kx>*n6x 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 literal 0 HcmV?d00001 diff --git a/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-39-1.png b/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-39-1.png new file mode 100644 index 0000000000000000000000000000000000000000..af16442e65cf99f6c8f00e3ae026ddb26bc6d6b4 GIT binary patch literal 51627 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�@y1{w96fLc6M^VuKGJzzHOa~;WklV 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 literal 0 HcmV?d00001 diff --git a/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-6-1.png b/15-bayesiana-calibracion_files/figure-html/unnamed-chunk-6-1.png new file mode 100644 index 0000000000000000000000000000000000000000..7bafe7ad6802768926fa22920d3af25f87b4589a GIT binary patch literal 61563 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

    Y vemos una muestra

    slice_sample(propinas, n = 10) |> gt()
    -
    - @@ -924,66 +988,66 @@

    Algunos conceptos básicos - 8.35 -1.50 + 9.78 +1.73 No Jue Comida 2 - 16.45 -2.47 + 13.42 +1.68 No -Sab -Cena +Jue +Comida 2 - 15.69 -3.00 + 11.02 +1.98 Si Sab Cena -3 - 17.78 -3.27 +2 + 22.49 +3.50 No -Sab +Vie Cena 2 - 20.92 -4.08 -No + 11.59 +1.50 +Si Sab Cena 2 - 25.00 -3.75 + 24.71 +5.85 No +Jue +Comida +2 + 9.60 +4.00 +Si Dom Cena -4 - 38.73 +2 + 19.65 3.00 -Si +No Sab Cena -4 - 12.74 -2.01 -Si -Jue -Comida 2 - 15.48 -2.02 -Si -Jue -Comida -2 - 13.42 -3.48 -Si -Vie -Comida + 18.04 +3.00 +No +Dom +Cena 2 + 30.40 +5.60 +No +Dom +Cena +4 @@ -1022,23 +1086,23 @@

    Algunos conceptos básicos arrange(f) bind_rows(head(cuenta), tail(cuenta)) |> gt() |> fmt_number(columns = f, decimals = 3)

    -
    - diff --git "a/ap\303\251ndice-principios-de-visualizacion.html" "b/ap\303\251ndice-principios-de-visualizacion.html" index 94e233d..d6ab5c8 100644 --- "a/ap\303\251ndice-principios-de-visualizacion.html" +++ "b/ap\303\251ndice-principios-de-visualizacion.html" @@ -29,7 +29,7 @@ - + @@ -377,6 +377,70 @@
  • Ejemplo: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
  • - + diff --git "a/ap\303\251ndice-transformaciones.html" "b/ap\303\251ndice-transformaciones.html" index 497dae3..75cc578 100644 --- "a/ap\303\251ndice-transformaciones.html" +++ "b/ap\303\251ndice-transformaciones.html" @@ -377,6 +377,70 @@
  • Ejemplo: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
    • Introducción
    • @@ -430,16 +494,16 @@

      Apéndice: Transformaciones
      mex_dat <- global_economy |> 
      -  filter(Code == "MEX")
      -
      -pib <- ggplot(mex_dat, aes(x = Year, y = GDP / 1e6)) +
      -  geom_line()
      -
      -pib_pc <- ggplot(mex_dat, aes(x = Year, y = GDP / Population)) +
      -  geom_line()
      -
      -pib / pib_pc
      +
      mex_dat <- global_economy |> 
      +  filter(Code == "MEX")
      +
      +pib <- ggplot(mex_dat, aes(x = Year, y = GDP / 1e6)) +
      +  geom_line()
      +
      +pib_pc <- ggplot(mex_dat, aes(x = Year, y = GDP / Population)) +
      +  geom_line()
      +
      +pib / pib_pc

      Adicionalmente podemos recurrir a otras transformaciones matemáticas (e.g. logaritmo, raíz cuadrada) que simplifiquen el patrón en los datos y la interpretación.

      @@ -448,30 +512,30 @@

      Apéndice: Transformaciones
      animals_tbl <- as_tibble(Animals, rownames = "animal")
      -
      -p1 <- ggplot(animals_tbl, aes(x = body, y = brain, label = animal)) +
      -  geom_point() + 
      -  labs(subtitle = "Unidades originales")
      -
      -p2 <- ggplot(animals_tbl, aes(x = body, y = brain, label = animal)) +
      -  geom_point() + xlim(0, 500) + ylim(0, 1500) +
      -  geom_text_repel() + 
      -  labs(subtitle = "Unidades originales, eliminando 'grandes'")
      -
      -(p1 + p2)
      +
      animals_tbl <- as_tibble(Animals, rownames = "animal")
      +
      +p1 <- ggplot(animals_tbl, aes(x = body, y = brain, label = animal)) +
      +  geom_point() + 
      +  labs(subtitle = "Unidades originales")
      +
      +p2 <- ggplot(animals_tbl, aes(x = body, y = brain, label = animal)) +
      +  geom_point() + xlim(0, 500) + ylim(0, 1500) +
      +  geom_text_repel() + 
      +  labs(subtitle = "Unidades originales, eliminando 'grandes'")
      +
      +(p1 + p2)

      Incluso cuando nos limitamos a especies de menos de 500 kg de masa corporal, la relación no es fácil de descrubir.En la suguiente gráfica hacemos la transformación logaritmo y obtenemos una gráfica más fácil de leer, además los datos se modelarán con más facilidad.

      -
      p3 <- ggplot(animals_tbl, aes(x = log(body), y = log(brain), label = animal)) +
      -  geom_smooth(method = "lm", se = FALSE, color = "red") +
      -  geom_point() + 
      -  geom_text_repel()  + 
      -  stat_poly_eq(use_label(c("eq"))) 
      -
      -p3
      +
      p3 <- ggplot(animals_tbl, aes(x = log(body), y = log(brain), label = animal)) +
      +  geom_smooth(method = "lm", se = FALSE, color = "red") +
      +  geom_point() + 
      +  geom_text_repel()  + 
      +  stat_poly_eq(use_label(c("eq"))) 
      +
      +p3
      ## `geom_smooth()` using formula = 'y ~ x'

      La transformación logaritmo tiene también ventajas en interpretación, para diferencias @@ -480,32 +544,32 @@

      Apéndice: Transformaciones
      animals_tbl <- animals_tbl |>  
      -  mutate(log_body = log(body), 
      -         log_brain = log(brain)) 
      -
      -animals_tbl |> 
      -  filter(animal == "Human" | animal == "Sheep") |> 
      -  arrange(body) |> 
      -  gt::gt() |> 
      -  gt::fmt_number()
      -
      - @@ -979,12 +1043,12 @@

      Apéndice: Transformaciones\(\delta\) es chica (digamos menor a 0.15), entonces la aproximación de primer grado es razonable y tenemos:

      \[Ae^{\delta} \approx A(1+\delta)\]

      -
      dat <- tibble(delta = seq(0, 1, 0.01), exp_delta = exp(delta), uno_mas_delta = 1 + delta)
      -
      -ggplot(dat, aes(x = uno_mas_delta, y = exp_delta)) +
      -  geom_line() +
      -  geom_abline(color = "red") +
      -  annotate("text", x = 1.20, y = 1.18, label = "y = x", color = "red", size = 6)
      +
      dat <- tibble(delta = seq(0, 1, 0.01), exp_delta = exp(delta), uno_mas_delta = 1 + delta)
      +
      +ggplot(dat, aes(x = uno_mas_delta, y = exp_delta)) +
      +  geom_line() +
      +  geom_abline(color = "red") +
      +  annotate("text", x = 1.20, y = 1.18, label = "y = x", color = "red", size = 6)

      diff --git "a/bootstrap-param\303\251trico.html" "b/bootstrap-param\303\251trico.html" index cb925bd..d2a5a6a 100644 --- "a/bootstrap-param\303\251trico.html" +++ "b/bootstrap-param\303\251trico.html" @@ -377,6 +377,70 @@
    • Ejemplo: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
    • Introducción
    • @@ -452,7 +516,7 @@

      Sección 7 Bootstrap par
      res <- optim(c(0, 0.5), log_p, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead")
       res$convergence
      ## [1] 0
      -
      est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) %>% 
      +
      est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) |> 
         column_to_rownames(var = "parametro")

      Una vez que tenemos nuestros estimadores puntuales,

      est_mle
      @@ -478,7 +542,7 @@

      Sección 7 Bootstrap par control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") res_boot$convergence

      ## [1] 0
      -
      est_mle_boot <- tibble(parametro = c("media", "sigma"), estimador = res_boot$par) %>% 
      +
      est_mle_boot <- tibble(parametro = c("media", "sigma"), estimador = res_boot$par) |> 
         column_to_rownames(var = "parametro")
       est_mle_boot
      ##       estimador
      @@ -520,7 +584,7 @@ 

      Sección 7 Bootstrap par ## 10 sigma 1.73 ## # ℹ 9,990 more rows

      Ya ahora podemos estimar error estándar:

      -
      error_est <- reps_boot %>% group_by(parametro) %>% 
      +
      error_est <- reps_boot |> group_by(parametro) |> 
         summarise(ee_boot = sd(estimador_boot)) 
       error_est
      ## # A tibble: 2 × 2
      @@ -529,8 +593,8 @@ 

      Sección 7 Bootstrap par ## 1 media 0.150 ## 2 sigma 0.106

      Así que nuestra estimación final sería:

      -
      bind_cols(est_mle, error_est) %>% 
      -  mutate(across(where(is.numeric), round, 3)) %>% 
      +
      bind_cols(est_mle, error_est) |> 
      +  mutate(across(where(is.numeric), round, 3)) |> 
         select(parametro, estimador, ee_boot)
      ##       parametro estimador ee_boot
       ## media     media     1.136   0.150
      @@ -561,7 +625,7 @@ 

      Sección 7 Bootstrap par res <- optim(c(0, 0.5), log_p, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") res$convergence

      ## [1] 0
      -
      est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) %>% 
      +
      est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) |> 
         column_to_rownames(var = "parametro")
       est_mle
      ##       estimador
      @@ -597,7 +661,7 @@ 

      Sección 7 Bootstrap par

      Ejercicio (extra). Con más de un parámetro, podemos preguntarnos cómo dependen las estimaciones individuales - en algunos casos pueden estar correlacionadas. Podemos examinar este comportamiendo visualizando las replicaciones bootstrap

      -
      ggplot(reps_boot %>% pivot_wider(names_from = parametro, values_from = estimador_boot),
      +
      ggplot(reps_boot |> pivot_wider(names_from = parametro, values_from = estimador_boot),
              aes(x = media, y = sigma)) + geom_point(alpha = 0.5) + coord_equal()

      Esta es nuestra aproximación a la distribución de remuestreo de nuestro @@ -707,11 +771,11 @@

      Verificando los supuestos distribucionales
      propinas <- read_csv("data/propinas.csv") %>% 
      +
      propinas <- read_csv("data/propinas.csv") |> 
           mutate(cuenta_persona = cuenta_total / num_personas)
      -propinas_mle <- propinas %>% 
      -  group_by(momento) %>% 
      -  summarise(est_mle = list(tidy(MASS::fitdistr(cuenta_persona, "lognormal"))))  %>% 
      +propinas_mle <- propinas |> 
      +  group_by(momento) |> 
      +  summarise(est_mle = list(tidy(MASS::fitdistr(cuenta_persona, "lognormal"))))  |> 
         unnest(est_mle)
       propinas_mle 
      ## # A tibble: 4 × 4
      @@ -724,11 +788,11 @@ 

      Verificando los supuestos distribucionalesaquí para ver cómo calcular media y desviación estándar de las distribuciones originales. Ahora verificamos el ajuste:

      -
      g_1 <- ggplot(propinas %>% filter(momento == "Cena"), aes(sample = cuenta_persona)) +
      +
      g_1 <- ggplot(propinas |> filter(momento == "Cena"), aes(sample = cuenta_persona)) +
         geom_qq(dparams = list(mean = propinas_mle$estimate[1], sd = propinas_mle$estimate[2]),
                 distribution = stats::qlnorm) + ylim(c(0, 20)) +
         geom_abline() + labs(subtitle = "Cena")
      -g_2 <- ggplot(propinas %>% filter(momento == "Comida"), aes(sample = cuenta_persona)) +
      +g_2 <- ggplot(propinas |> filter(momento == "Comida"), aes(sample = cuenta_persona)) +
         geom_qq(dparams = list(mean = propinas_mle$estimate[3], sd = propinas_mle$estimate[4]),
                 distribution = stats::qlnorm) + ylim(c(0, 20)) +
         geom_abline() + labs(subtitle = "Comida")
      @@ -838,9 +902,9 @@ 

      Modelos mal identificados} set.seed(8934) reps_boot <- map(1:500, ~ rep_boot(.x, simular_modelo, crear_log_p, est_mle, - n = length(muestra))) %>% - bind_rows -reps_boot %>% mutate(across(everything(), round, 2)) %>% head()

      + n = length(muestra))) |> + bind_rows() +reps_boot |> mutate(across(everything(), round, 2)) |> head()
      ## # A tibble: 6 × 4
       ##   p_azar_logit p_corr_logit   rep convergence
       ##          <dbl>        <dbl> <dbl>       <dbl>
      diff --git "a/calibraci\303\263n-bayesiana-y-regularizaci\303\263n.html" "b/calibraci\303\263n-bayesiana-y-regularizaci\303\263n.html"
      new file mode 100644
      index 0000000..b206869
      --- /dev/null
      +++ "b/calibraci\303\263n-bayesiana-y-regularizaci\303\263n.html"
      @@ -0,0 +1,1326 @@
      +
      +
      +
      +
      +  
      +  
      +  Sección 11 Calibración bayesiana y Regularización | Fundamentos de Estadística con Remuestreo
      +  
      +  
      +
      +  
      +  
      +  
      +  
      +  
      +
      +  
      +  
      +  
      +  
      +  
      +
      +
      +
      +
      +
      +  
      +  
      +  
      +  
      +  
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +
      +  
      + +
      + +
      + +
      +
      + + +
      +
      + +
      +
      +

      Sección 11 Calibración bayesiana y Regularización

      +

      El enfoque bayesiano se puede formalizar coherentemente en términos +de probabilidades subjetivas, y como vimos, esta es una fortaleza del enfoque bayesiano.

      +

      En la práctica, sin embargo, muchas veces puede ser difícil argumentar en términos +exclusivos de probabilidad subjetiva, aunque hagamos los esfuerzos apropiados para +incorporar la totalidad de información que distintos actores involucrados pueden tener.

      +

      Consideremos, por ejemplo, que INEGI produjera un intervalo creíble del 95% +para el ingreso mediano de los hogares de México. Aún cuando nuestra metodología sea +transparente y correctamente informada, algunos investigadores interesados +puede ser que tengan recelo en usar esta información, y quizá preferirían +hacer estimaciones propias. Esto restaría valor al trabajo cuidadoso que pusimos +en nuestras estimaciones oficiales.

      +

      Por otra parte, el enfoque frecuentista provee de ciertas garantías mínimas +para la utilización de las estimaciones, que no dependen de la interpretación +subjetiva de la probabilidad, sino de las propiedades del muestreo. +Consideremos la cobertura de los intervalos de confianza:

      +
        +
      • Bajo ciertos supuestos de nuestros modelos, la probabilidad de que +un intervalo de confianza del 95% cubra al verdadero valor poblacional es del 95%. Esta +probabilidad es sobre las distintas muestras que se pueden obtener según el +diseño del muestreo.
      • +
      +

      Los intervalos creíbles en principio no tienen por qué cumplir esta propiedad, pero +consideramos que en la práctica es una garantía mínima que deberían cumplir.

      +

      El enfoque resultante se llama bayesiano calibrado, Little (2011) . La idea +es seguir el enfoque bayesiano usual para construir nuestras estimaciones, +pero verificar hasta donde sea posible que los intervalos resultantes satisfacen +alguna garantía frecuentista básica.

      +

      Observación. checar que la cobertura real es similar a la nominal es importante +en los dos enfoques: frecuentista y bayesiano. Los intervalos frecuentistas, como +hemos visto, generalmente son aproximados, y por lo tanto no cumplen automáticamente +esta propiedad de calibración.

      +
      +

      Enfoque bayesiano y frecuentista

      +

      Los métodos estadísticos clásicos toman el punto de vista frecuentista y se +basa en los siguientes puntos (Wasserman (2013)):

      +
        +
      1. La probabilidad se interpreta como un límite de frecuencias relativas, donde +las probabilidades son propiedades objetivas en el mundo real.

      2. +
      3. En un modelo, los parámetros son constantes fijas (desconocidas). Como +consecuencia, no se pueden realizar afirmaciones probabilísticas útiles en +relación a éstos.

      4. +
      5. Los procedimientos estadísticos deben diseñarse con el objetivo de tener +propiedades frecuentistas bien definidas. Por ejemplo, un intervalo de confianza +del \(95\%\) debe contener el verdadero valor del parámetro con frecuencia límite +de al menos el \(95\%\).

      6. +
      +

      En contraste, el acercamiento Bayesiano muchas veces se describe por los +siguientes postulados:

      +
        +
      1. La probabilidad describe grados de creencia, no frecuencias limite. Como +tal uno puede hacer afirmaciones probabilísticas acerca de muchas cosas y no +solo datos sujetos a variabilidad aleatoria. Por ejemplo, puedo decir: “La +probabilidad de que Einstein tomara una taza de té el primero de agosto de \(1948\)” +es \(0.35\), esto no hace referencia a ninguna frecuencia relativa sino que refleja +la certeza que yo tengo de que la proposición sea verdadera.

      2. +
      3. Podemos hacer afirmaciones probabilísticas de parámetros.

      4. +
      5. Podemos hacer inferencia de un parámetro \(\theta\) por medio de +distribuciones de probabilidad. Las inferencias como estimaciones puntuales y +estimaciones de intervalos se pueden extraer de dicha distribución.

      6. +
      +

      Finalmente, en el enfoque bayesiano calibrado (Little (2011)):

      +
        +
      1. Usamos el enfoque bayesiano para modelar y hacer afirmaciones probabilísticas +de los parámetros.
      2. +
      3. Buscamos cumplir las garantías frecuentistas del inciso 3).
      4. +
      +
      +
      +

      Ejemplo: estimación de una proporción

      +

      Recordamos nuestro problema de estimación de una proporcion \(\theta\). Usando +la distribución inicial \(p(\theta)\sim \mathsf{Beta}(2,2)\), y la verosimilitud estándar +binomial, vimos que la posterior cuando observamos \(k\) +éxitos es \[p(\theta|k) \sim \mathsf{Beta}(k + 2, n - k + 2)\].

      +

      La media posterior es +\[\frac{k + 2}{n + 4} \] +que podemos interpretar como: agrega 2 éxitos y 2 fracasos a los datos observados +y calcula la proporción de éxitos. Un intervalo posterior de credibilidad del 95% se calcula +encontrando los cuantiles 0.025 y 0.975 de una \(\mathsf{Beta}(k + 2, n - k + 2)\)

      +

      \[I_a = \left [q_{0.025}(k+2, n+4), q_{0.975}(k+2, n+4)\right ]\] +Que compararemos con el intervalo usual de Wald: si \(\hat{\theta} = \frac{k}{n}\), entonces

      +

      \[I_w = \left [\hat{\theta} - 2 \sqrt{\frac{\hat{\theta}(1-\hat{\theta})}{n}}, \hat{\theta} + 2 \sqrt{\frac{\hat{\theta}(1-\hat{\theta})}{n}}\right]\] +¿Cómo podemos comparar la calibración de estos dos intervalos? Nominalmente, deben +tener cobertura de 95%. Hagamos un ejercicio de simulación para distintos +tamaños de muestra \(n\) y posibles valores \(\theta\in (0,1)\):

      +
      set.seed(332)
      +simular_muestras <- function(M, n, p){
      +  k = rbinom(M, n, p)
      +  tibble(rep = 1:M, n = n, p = p, k = k)
      +}
      +intervalo_wald <- function(n, k){
      +  p_hat <- k / n
      +  ee_hat <- sqrt(p_hat * (1 - p_hat) / n)
      +  tibble(inf = p_hat - 2 * ee_hat, sup = p_hat + 2 * ee_hat)
      +}
      +intervalo_bayes <- function(n, k, a = 2, b = 2){
      +  a <- k + a
      +  b <- n - k + b
      +  tibble(inf = qbeta(0.025, a, b), sup = qbeta(0.975, a, b))
      +}
      +set.seed(812)
      +ejemplo <- simular_muestras(5, 20, 0.4)
      +
      ejemplo |> mutate(intervalo = intervalo_wald(n, k)) |> pull(intervalo) |> 
      +  bind_cols(ejemplo) |> select(-rep)
      +
      ## # A tibble: 5 × 5
      +##      inf   sup     n     p     k
      +##    <dbl> <dbl> <dbl> <dbl> <int>
      +## 1 0.0211 0.379    20   0.4     4
      +## 2 0.228  0.672    20   0.4     9
      +## 3 0.276  0.724    20   0.4    10
      +## 4 0.228  0.672    20   0.4     9
      +## 5 0.137  0.563    20   0.4     7
      +
      ejemplo |> mutate(intervalo = intervalo_bayes(n, k)) |> pull(intervalo) |> 
      +  bind_cols(ejemplo) |> select(-rep)
      +
      ## # A tibble: 5 × 5
      +##     inf   sup     n     p     k
      +##   <dbl> <dbl> <dbl> <dbl> <int>
      +## 1 0.102 0.437    20   0.4     4
      +## 2 0.268 0.655    20   0.4     9
      +## 3 0.306 0.694    20   0.4    10
      +## 4 0.268 0.655    20   0.4     9
      +## 5 0.197 0.573    20   0.4     7
      +

      ¿Cuáles de estos intervalos cubren al verdadero valor? Nótese que no podemos +descalificar a ningún método por no cubrir una vez. Es fácil producir un intervalo +con 100% de cobertura: (0,1). Pero no nos informa dónde es probable que esté +el parámetro.

      +

      Sin embargo, podemos checar la cobertura frecuentista haciendo una cantidad grande de simulaciones:

      +
      parametros <- crossing(n = c(5, 10, 30, 60, 100, 400), 
      +                       p = c(0.01, 0.015, 0.02, 0.025, 0.03, 0.035, 0.04, 0.05, 0.07, 0.1, 0.15))
      +set.seed(2343)
      +# simulaciones
      +simulaciones <- parametros |> 
      +  mutate(muestra = map2(n, p, ~ simular_muestras(50000, .x, .y) |> select(rep, k))) |> 
      +  unnest(muestra)
      +# calcular_cobertura
      +calcular_cobertura <- function(simulaciones, construir_intervalo){
      +  # nombre de función
      +  intervalo_nombre <- substitute(construir_intervalo) |> as.character()
      +  cobertura_tbl <- simulaciones |> 
      +    mutate(intervalo  = construir_intervalo(n, k)) |>
      +    pull(intervalo) |> 
      +    bind_cols(simulaciones) |> 
      +    mutate(cubre = p >= inf & p <= sup) |> 
      +    group_by(n, p) |> 
      +    summarise(cobertura = mean(cubre), long_media = mean(sup - inf))
      +  cobertura_tbl |> mutate(tipo = intervalo_nombre)
      +}
      +
      cobertura_wald <- calcular_cobertura(simulaciones, intervalo_wald)
      +cobertura_wald
      +
      ## # A tibble: 66 × 5
      +## # Groups:   n [6]
      +##        n     p cobertura long_media tipo          
      +##    <dbl> <dbl>     <dbl>      <dbl> <chr>         
      +##  1     5 0.01     0.0483     0.0347 intervalo_wald
      +##  2     5 0.015    0.0733     0.0527 intervalo_wald
      +##  3     5 0.02     0.0954     0.0689 intervalo_wald
      +##  4     5 0.025    0.119      0.0862 intervalo_wald
      +##  5     5 0.03     0.140      0.102  intervalo_wald
      +##  6     5 0.035    0.165      0.120  intervalo_wald
      +##  7     5 0.04     0.187      0.137  intervalo_wald
      +##  8     5 0.05     0.227      0.167  intervalo_wald
      +##  9     5 0.07     0.299      0.223  intervalo_wald
      +## 10     5 0.1      0.398      0.303  intervalo_wald
      +## # ℹ 56 more rows
      +
      graficar_cobertura <- function(cobertura_tbl){
      +  ggplot(cobertura_tbl, aes(x = p, y = cobertura, colour = tipo)) +
      +  geom_hline(yintercept = 0.95, colour = "black") +
      +  geom_line() + geom_point() +
      +  facet_wrap(~n) +
      +  ylim(0, 1) 
      +}
      +cobertura_wald |> 
      +  graficar_cobertura()
      +

      +

      La cobertura real es mucho más baja que la nominal en muchos casos, especialmente +cuando la \(p\) es baja y \(n\) es chica. Pero incluso para muestras relativamente grandes (100), +la cobertura es mala si \(p\) es chica.

      +

      Ahora probamos nuestro método alternativo:

      +
      cobertura_bayes <- calcular_cobertura(simulaciones, intervalo_bayes)
      +
      bind_rows(cobertura_wald, cobertura_bayes) |> 
      +  mutate(tipo = factor(tipo, levels = c('intervalo_wald', 'intervalo_bayes'))) |> 
      +  graficar_cobertura()
      +

      +

      Y vemos que en general el intervalo de Bayes es superior al de Wald, en sentido +de que su cobertura real es más cercana a la nominal. El caso donde fallan los dos +es para muestras muy chicas \(n=5, 10\), con probabilidades de éxito chicas \(p\leq 0.02\).

      +
        +
      • Sin embargo, si tenemos información previa acerca del tamaño de la proporción que estamos +estimando, es posible obtener buena calibración con el método bayesiano.
      • +
      +

      En este caso particular, tenemos argumentos frecuentistas +para utilizar el método bayesiano. Por ejemplo, si el INEGI utilizara estos +intervalos creíbles, un análisis de calibración de este tipo sostendría esa decisión.

      +
      +
      +

      Intervalos de Agresti-Coull

      +

      Un método intermedio que se usa para obtener mejores intervalos cuando +estimamos proporciones es el siguiente:

      +
        +
      • Agregar dos 1’s y dos 0’s a los datos.
      • +
      • Utilizar el método de Wald con estos datos modificados.
      • +
      +
      intervalo_agresti_coull <- function(n, k){
      +  p_hat <- (k + 2)/ (n + 4)
      +  ee_hat <- sqrt(p_hat * (1 - p_hat) / n)
      +  tibble(inf = p_hat - 2 * ee_hat, sup = p_hat + 2 * ee_hat)
      +}
      +cobertura_ac <- calcular_cobertura(simulaciones, intervalo_agresti_coull)
      +
      bind_rows(cobertura_wald, cobertura_bayes, cobertura_ac) |> 
      +  mutate(tipo = factor(tipo, levels = c('intervalo_wald', 'intervalo_bayes', 'intervalo_agresti_coull'))) |> 
      +  graficar_cobertura()
      +

      +

      Que tiende a ser demasiado conservador para proporciones chicas:

      +
      graficar_cobertura(cobertura_ac) +
      +  ylim(c(0.9, 1))
      +

      +

      Conclusión 1: Los intervalos de Agresti-Coull son una buena alternativa +para estimar proporciones como sustituto de los intervalos clásicos de Wald, aunque +tienden a ser muy conservadores para muestras chicas

      +

      Idealmente podemos utilizar un método bayesiano +pues normalmente tenemos información inicial acerca de las proporciones que +queremos estimar.

      +
      +
      +

      Incorporando información inicial

      +

      Nótese que generalmente tenemos información acerca de la cantidad que +queremos estimar: por ejemplo, que proporción de visitantes de un sitio web +compra algo (usualmente muy baja, menos de 2%), qué proporción de personas tiene diabetes tipo 1 +(una proporción muy baja, menos de 1 por millar), o qué proporción de hogares tienen ingresos trimestrales +mayores a 150 mil pesos (menos de %5 con alta probabilidad).

      +

      En este caso, tenemos que ajustar nuestra inicial. Por ejemplo, para el problema +de ingresos, podríamos usar una \(\mathsf{Beta}(2, 100)\), cuyos cuantiles son:

      +
      # uno de cada 100
      +a <- 2
      +b <- 100
      +beta_sims <- rbeta(5000, a, b)
      +quantile(beta_sims, c(0.01, 0.05, 0.50, 0.90, 0.99)) |> round(3)
      +
      ##    1%    5%   50%   90%   99% 
      +## 0.001 0.004 0.016 0.039 0.067
      +
      qplot(beta_sims)
      +

      +

      Veamos cómo se ven los intervalos bayesianos producidos con esta inicial:

      +
      crear_intervalo_bayes <- function(a, b){
      +
      +  intervalo_fun <- function(n, k){
      +    a_post <- k + a
      +    b_post <- n - k + b
      +    tibble(inf = qbeta(0.025, a_post, b_post), sup = qbeta(0.975, a_post, b_post))
      +  }
      +  intervalo_fun
      +}
      +intervalo_bayes_2 <- crear_intervalo_bayes(a, b)
      +
      cobertura_bayes <- calcular_cobertura(simulaciones,
      +                                      intervalo_bayes_2)
      +
      graficar_cobertura(bind_rows(cobertura_bayes, cobertura_ac) |> 
      +                     filter(p < 0.05)) +
      +  ylim(c(0.5, 1))
      +

      +

      Y vemos que la calibración es similar. Notemos sin embargo que +la longitud del del intervalo bayesiano es mucho menor que el de +Agresti-Coull cuando la muestra es chica:

      +
      ggplot(bind_rows(cobertura_bayes, cobertura_ac), 
      +       aes(x = p, y = long_media, colour = tipo)) +
      +  geom_point() + facet_wrap(~n) 
      +

      +

      Cuando la muestra es chica, los intervalos de bayes son similares +a los iniciales, y mucho más cortos que los de Agresti-Coull. +Para muestras intermedias (50-100) los intervalos bayesianos +son más informativos que los de Agresti-Coull, con calibración similar, y +representan aprendizaje por encima de lo que sabíamos en la inicial. +Para muestras grandes, obtenemos resultados simililares.

      +

      Por ejemplo:

      +
      set.seed(2131)
      +k <- rbinom(1, 50, 0.03)
      +k
      +
      ## [1] 4
      +
      intervalo_agresti_coull(50, k) |> round(3)
      +
      ## # A tibble: 1 × 2
      +##     inf   sup
      +##   <dbl> <dbl>
      +## 1 0.022   0.2
      +

      es un intervalo muy grande que puede incluir valores negativos. En contraste, el intervalo +bayesiano es:

      +
      intervalo_bayes_2(50, k) |> round(3)
      +
      ## # A tibble: 1 × 2
      +##     inf   sup
      +##   <dbl> <dbl>
      +## 1 0.015 0.076
      +

      Aún quitando valores negativos, los intervalos de Agresti-Coull son mucho más anchos. +La aproximación bayesiana, entonces, utiliza información previa +para dar un resultado considerablemente +más informativo, con calibración similar a Agresti-Coull.

      +

      ¿Aprendimos algo? Comparemos la posterior con la inicial:

      +
      beta_sims_inicial <- tibble(prop = rbeta(5000, a, b), dist = "inicial")
      +beta_sims_posterior <- tibble(prop = rbeta(5000, a + k, b + 50), dist = "posterior")
      +bind_rows(beta_sims_inicial, beta_sims_posterior) |> 
      +  ggplot(aes(x = prop, fill = dist)) +
      +    geom_histogram(alpha = 0.5, position = "identity") 
      +

      +

      Donde vemos que no aprendimos mucho en este caso, pero nuestras creencias +sí cambiaron en comparación con la inicial.

      +

      Conclusión 2: con el enfoque bayesiano podemos obtener intervalos +informativos con calibración razonable, incluso con información inicial que +no es muy precisa. Los intervalos de Agresti-Coull son poco informativos +para muestras chicas y/o proporciones chicas.

      +
      +

      Ejemplo: porporción de hogares de ingresos grandes

      +

      Usaremos los datos de ENIGH como ejemplo (ignorando el diseño, pero es posible hacer todas +las estimaciones correctamente) para estimar +el porcentaje de hogares que tienen ingreso corriente de más +de 150 mil pesos al trimestre. Suponemos que la muestra del enigh es la población, +y tomaremos una muestra iid de esta población. +Usamos la misma inicial que mostramos arriba, que es +una Beta con parámetros

      +
      c(a,b)
      +
      ## [1]   2 100
      +
      set.seed(2521)
      +muestra_enigh <- read_csv("data/conjunto_de_datos_enigh_2018_ns_csv/conjunto_de_datos_concentradohogar_enigh_2018_ns/conjunto_de_datos/conjunto_de_datos_concentradohogar_enigh_2018_ns.csv") |> 
      +  select(ing_cor) |> 
      +  sample_n(120) |> 
      +  mutate(mas_150mil = ing_cor > 150000)
      +

      Un intervalo de 95% es entonces

      +
      k <- sum(muestra_enigh$mas_150mil)
      +k
      +
      ## [1] 3
      +
      intervalo_bayes_2(120, sum(muestra_enigh$mas_150mil)) |> round(3)
      +
      ## # A tibble: 1 × 2
      +##     inf   sup
      +##   <dbl> <dbl>
      +## 1 0.007 0.046
      +

      La media posterior es

      +
      prop_post <- (a + k) / (120 + b)
      +prop_post
      +
      ## [1] 0.02272727
      +

      ¿Cuál es la verdadera proporción?

      +
      read_csv("data/conjunto_de_datos_enigh_2018_ns_csv/conjunto_de_datos_concentradohogar_enigh_2018_ns/conjunto_de_datos/conjunto_de_datos_concentradohogar_enigh_2018_ns.csv") |> 
      +  select(ing_cor) |> 
      +  mutate(mas_150mil = ing_cor > 150000) |> 
      +  summarise(prop_pob = mean(mas_150mil))
      +
      ## # A tibble: 1 × 1
      +##   prop_pob
      +##      <dbl>
      +## 1   0.0277
      +

      En este caso, nuestro intervalo cubre a la proporción poblacional.

      +
      +
      +
      +

      Inferencia bayesiana y regularización

      +

      Como hemos visto en análisis y modelos anteriores, la posterior que usamos +para hacer inferencia combina aspectos de la inicial con la verosimilitud (los datos). +Una manera de ver esta combinación y sus beneficios es pensando en término de +regularización de estimaciones.

      +
        +
      • En las muestras hay variación. Algunas muestras particulares nos dan estimaciones +de máxima verosimilitud pobres de los parámetros de interés (estimaciones ruidosas).
      • +
      • Cuando esas estimaciones pobres están en una zona de baja probabilidad de la +inicial, la estimación posterior tiende a moverse (o encogerse) hacia las +zonas de alta probabilidad de la inicial.
      • +
      • Esto filtra ruido en las estimaciones.
      • +
      • El mecanismo resulta en una reducción del error cuadrático medio, mediante +una reducción de la varianza de los estimadores (aunque quizá el sesgo aumente).
      • +
      +

      Esta es una técnica poderosa, especialmente para problemas complejos donde tenemos +pocos datos para cada parámetro. En general, excluímos resultados que no concuerdan +con el conocimiento previo, y esto resulta en mayor precisión en las estimaciones.

      +
      +
      +

      Ejemplo: modelo normal y estaturas

      +

      Haremos un experimento donde simularemos muestras de los datos de cantantes. Usaremos el +modelo normal-gamma inverso que discutimos anteriormente, con la información inicial +que elicitamos. ¿Cómo se compara la estimación de máxima verosimilitud con la media +posterior?

      +
      # inicial para media, ver sección anterior para discusión (normal)
      +mu_0 <- 175
      +n_0 <- 5
      +# inicial para sigma^2 (gamma inversa)
      +a <- 3
      +b <- 140
      +

      Para este ejemplo chico, usaremos muestras de tamaño 5:

      +
      set.seed(3413)
      +# ver sección anterior para explicación de esta función
      +calcular_pars_posterior <- function(x, pars_inicial){
      +  # iniciales
      +  mu_0 <- pars_inicial[1]
      +  n_0 <- pars_inicial[2]
      +  a_0 <- pars_inicial[3]
      +  b_0 <- pars_inicial[4]
      +  # muestra
      +  n <- length(x)
      +  media <- mean(x)
      +  S2 <- sum((x - media)^2)
      +  # sigma post
      +  a_1 <- a_0 + 0.5 * n
      +  b_1 <- b_0 + 0.5 * S2 + 0.5 * (n * n_0) / (n + n_0) * (media - mu_0)^2
      +  # posterior mu
      +  mu_1 <- (n_0 * mu_0 + n * media) / (n + n_0)
      +  n_1 <- n + n_0
      +  c(mu_1, n_1, a_1, b_1)
      +}
      +

      Y también de la sección anterior:

      +
      sim_params <- function(m, pars){
      +  mu_0 <- pars[1]
      +  n_0 <- pars[2]
      +  a <- pars[3]
      +  b <- pars[4]
      +  # simular sigmas
      +  sims <- tibble(tau = rgamma(m, a, b)) |> 
      +    mutate(sigma = 1 / sqrt(tau))
      +  # simular mu
      +  sims <- sims |> mutate(mu = rnorm(m, mu_0, sigma / sqrt(n_0)))
      +  sims
      +}
      +
      # simular muestras y calcular medias posteriores
      +simular_muestra <- function(rep, mu_0, n_0, a_0, b_0){
      +  cantantes <- lattice::singer |> 
      +    mutate(estatura_cm = 2.54 * height) |> 
      +    filter(str_detect(voice.part, "Tenor")) |> 
      +    sample_n(5, replace = FALSE)
      +  pars_posterior <- calcular_pars_posterior(cantantes$estatura_cm,
      +                                            c(mu_0, n_0, a_0, b_0))
      +  medias_post <- 
      +    sim_params(1000, pars_posterior) |> 
      +    summarise(across(everything(), mean)) |> 
      +    select(mu, sigma)
      +  media <- mean(cantantes$estatura_cm)
      +  est_mv <- c("mu" = media,
      +              "sigma" = sqrt(mean((cantantes$estatura_cm - media)^2)))
      +  bind_rows(medias_post, est_mv) |> 
      +    mutate(rep = rep, tipo = c("media_post", "max_verosim")) |> 
      +    pivot_longer(mu:sigma, names_to = "parametro", values_to = "estimador")
      +}
      +
      poblacion <- lattice::singer |> 
      +  mutate(estatura_cm = 2.54 * height) |> 
      +  filter(str_detect(voice.part, "Tenor")) |> 
      +  summarise(mu = mean(estatura_cm), sigma = sd(estatura_cm)) |> 
      +  pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor_pob")
      +
      errores <- map(1:2000, ~ simular_muestra(.x, mu_0, n_0, a, b)) |>
      +  bind_rows() |> left_join(poblacion) |> 
      +  mutate(error = (estimador - valor_pob))
      +ggplot(errores, aes(x = error, fill = tipo)) +
      +  geom_histogram(bins = 20, position = "identity", alpha = 0.5) + facet_wrap(~parametro)
      +

      +Vemos claramente que la estimación de la desviación estándar de +nuestro modelo es claramente superior a la de máxima verosimilitud. En resumen:

      +
      errores |> 
      +  group_by(tipo, parametro) |> 
      +  summarise(recm = sqrt(mean(error^2)) |> round(2)) |> 
      +  arrange(parametro)
      +
      ## # A tibble: 4 × 3
      +## # Groups:   tipo [2]
      +##   tipo        parametro  recm
      +##   <chr>       <chr>     <dbl>
      +## 1 max_verosim mu         2.85
      +## 2 media_post  mu         1.55
      +## 3 max_verosim sigma      2.45
      +## 4 media_post  sigma      1.04
      +

      Obtenemos una ganancia considerable en cuanto a la estimación de la desviación +estandar de esta población. Los estimadores de la media posterior +son superiores a los de máxima verosimilitud en términos de error cuadrático medio.

      +

      Podemos graficar las dos estimaciones, muestra a muestra, para entender +cómo sucede esto:

      +
      errores |> 
      +  select(-error) |> 
      +  pivot_wider(names_from = tipo, values_from = estimador) |> 
      +  filter(parametro == "sigma") |> 
      +ggplot(aes(x = max_verosim, y = media_post)) +
      +  geom_abline(colour = "red") +
      +  geom_hline(yintercept = sqrt(b/(a - 1)), lty = 2, color = 'black') + 
      +  geom_point() +
      +  labs(subtitle = "Estimación de sigma") +
      +  xlab("Estimador MV de sigma") +
      +  ylab("Media posterior de sigma") +
      +  coord_fixed() + 
      +  geom_segment(aes(x = 13, y = 11, xend = 13, yend = sqrt(b/(a - 1))), 
      +               colour='red', size=1, arrow =arrow(length = unit(0.5, "cm"))) + 
      +  geom_segment(aes(x = .5, y = 6, xend = .5, yend = sqrt(b/(a - 1))), 
      +               colour='red', size=1, arrow =arrow(length = unit(0.5, "cm")))
      +

      +

      Nótese como estimaciones demasiado bajas o demasiada altas son contraídas +hacia valores más consistentes con la inicial, lo cual resulta en +menor error. El valor esperado de \(\sigma\) bajo la distribución inicial +se muestra como una horizontal punteada.

      +
      +
      +

      Ejemplo: estimación de proporciones

      +

      Ahora repetimos el ejercicio

      +
      # inicial
      +a <- 2
      +b <- 100
      +qbeta(c(0.01, 0.99), a, b)
      +
      ## [1] 0.001477084 0.063921446
      +
      # datos
      +datos <- read_csv("data/conjunto_de_datos_enigh_2018_ns_csv/conjunto_de_datos_concentradohogar_enigh_2018_ns/conjunto_de_datos/conjunto_de_datos_concentradohogar_enigh_2018_ns.csv") |> 
      +    select(ing_cor)
      +# estimaciones
      +obtener_estimados <- function(datos){
      +  muestra_enigh <-  datos |> 
      +    sample_n(120) |> 
      +    mutate(mas_150mil = ing_cor > 150000)
      +  k <- sum(muestra_enigh$mas_150mil)
      +  tibble(k = k, est_mv = k/120, media_post = (a + k) / (120 + b), pob = 0.02769)
      +}
      +estimadores_sim <- map(1:200, ~obtener_estimados(datos)) |> 
      +  bind_rows() 
      +# calculo de errores
      +error_cm <- estimadores_sim |> 
      +  summarise(error_mv = sqrt(mean((est_mv - pob)^2)),
      +         error_post = sqrt(mean((media_post - pob)^2)))
      +error_cm
      +
      ## # A tibble: 1 × 2
      +##   error_mv error_post
      +##      <dbl>      <dbl>
      +## 1   0.0147    0.00928
      +

      Podemos ver claramente que las medias posteriores están encogidas hacia valores +más chicos (donde la inicial tiene densidad alta) comparadas con las +estimaciones de máxima verosimilitud:

      +
      estimadores_sim_ag <- estimadores_sim |> 
      +  group_by(k, est_mv, media_post) |> 
      +  summarise(n = n())
      +ggplot(estimadores_sim_ag, aes(x = est_mv, media_post, size = n)) + geom_point() +
      +  geom_abline()
      +

      +
      +
      +

      Teoría de decisión

      +

      En esta parte (que sigue a Wasserman (2013) a grandes rasgos), +discutimos brevemente teoría general que nos sirve para seleccionar +estimadores puntuales, y que esperemos ponga en contexto la parte +anterior que acabamos de discutir. Usaremos algunos conceptos que vimos +en la parte de propiedades de estimadores de máxima verosimilitud.

      +

      Definimos una función de pérdida \(L(\theta, \hat{\theta}_n)\), que +mide el costo de la discrepancia entre nuestro estimador

      +

      \[\hat{\theta}_n = t(X_1,\ldots, X_n) = t(X)\]

      +

      y el verdadero valor \(\theta\) +poblacional. Es posible considerar distintas funciones de pérdida, pero +como en secciones anteriores, usaremos la pérdida cuadrática, definida por:

      +

      \[L(\theta, \hat{\theta}_n) = (\theta - \hat{\theta}_n)^2\]

      +

      Esta función toma distintos valores dependiendo de la muestra y del parámetro +\(\theta\), y necesitamos resumirla para dar una evaluación de qué tan bueno +es el estimador \(\hat{\theta}_n\).

      +

      Ahora que hemos considerado tanto estadística bayesiana como frecuentista, +podemos pensar en resumir esta función de distintas maneras.

      +

      Comenzamos pensando de manera frecuentista. En este caso, consideramos a \(\theta\) como +un valor fijo, y nos preguntamos qué pasaría con la pérdida con distintas muestras +potenciales que podríamos observar.

      +

      Definimos como antes el riesgo (frecuentista) como:

      +

      \[R(\theta, t) = \mathbb{E}_X\left[ (\theta - \hat{\theta}_n)^2 \, \big| \, \theta\right]\]

      +

      donde promediamos a lo largo de las muestras posibles, con \(\theta\) fijo. Esta +cantidad no nos dice necesariamente cómo escoger un buen estimador para +\(\theta\), pues dependiendo de dónde está \(\theta\) puede tomar valores distintos.

      +

      Ahora vamos a pensar de manera bayesiana: en este caso, los datos serán fijos +una vez que los obervemos de manera que \(\hat{\theta}_n\) está fijo, y el parámetro +\(\theta\) es una cantidad aleatoria con distribución inicial \(p(\theta)\). +Entonces consideraríamos el promedio sobre la posterior dado por:

      +

      \[\rho(t, X) = \mathbb{E}_{p(\theta|X)}\left[(\theta - \hat{\theta})^2 \, \big | \, X \right]\] +que llamamos riesgo posterior. Esta cantidad se calcula con la posterior de +los parámetros dados los datos, y nos dice, una vez que vimos los datos, cómo es +el error de nuestro estimador. Nótese que esta cantidad no es útil para escoger +un estimador bueno \(t\) antes de ver los datos, pero nos sirve para evaluar a un +estimador dados los datos.

      +

      En el primer caso, promediamos sobre posibles muestras, y en el segundo por +valores posibles de \(\theta\) para una muestra dada.

      +
      +

      Ejemplo: riesgo frecuentista

      +

      Para observaciones bernoulli, el estimador de máxima verosimilitud es \(\hat{p}_1 = k /n\), donde \(n\) es el tamaño de muestra y \(k\) el número de éxitos observados. +Podemos usar también como estimador la media posterior de un modelo +Beta-Bernoulli con inicial \(a=2, b=2\), que nos daría \(\hat{p}_2 = \frac{k + 2}{n + 4}\).

      +

      Aunque podemos hacer los cálculos analíticos, aproximaremos el riesgo bajo +el error cuadrático usando simulación

      +
      perdida_cuad <- function(p, p_hat){
      + (p - p_hat)^2 
      +}
      +# dos estimadores
      +t_1 <- function(n, x)  x / n 
      +t_2 <- function(n, x)  (x + 2) / (n + 4)
      +estimar_riesgo <- function(n = 20, theta, perdida, reps = 10000){
      +  x <- rbinom(reps, n, theta)
      +  # calcular estimaciones
      +  theta_1 <- t_1(n, x)
      +  theta_2 <- t_2(n, x)
      +  # calcular pérdida
      +  media_perdida <- tibble(
      +    n = n, theta = theta,
      +    estimador = c("MLE", "Posterior"), 
      +    riesgo = c(mean(perdida(theta, theta_1)), mean(perdida(theta, theta_2))))
      +  media_perdida
      +}
      +estimar_riesgo(n = 20, theta = 0.1, perdida = perdida_cuad)
      +
      ## # A tibble: 2 × 4
      +##       n theta estimador  riesgo
      +##   <dbl> <dbl> <chr>       <dbl>
      +## 1    20   0.1 MLE       0.00449
      +## 2    20   0.1 Posterior 0.00755
      +

      Como dijimos, esta cantidad depende de \(\theta\) que no conocemos. Así que +calculamos para cada valor de \(\theta:\)

      +

      Las funciones de riesgo \(R(\theta, t_1)\) y \(R(\theta, t_2)\) (dependen de \(\theta\)) +se ven aproximadamente como sigue:

      +
      p_seq <- seq(0, 1, 0.001)
      +riesgo_tbl <- map(p_seq, ~ estimar_riesgo(n = 20, theta = .x, perdida = perdida_cuad)) |> 
      +  bind_rows()
      +ggplot(riesgo_tbl, aes(x = theta, y = riesgo, colour = estimador)) +
      +  geom_line() 
      +

      +

      Y vemos que el riesgo depende del verdadero valor del parametro: +en los extremos, el estimador de máxima verosimilitud tiene menos riesgo, +pero en el centro tiene más (esto es independiente del tipo de intervalos +que construyamos y su cobertura).

      +

      La razón es que las estimaciones de tipo Agresti-Coull (\(\theta_2\)) +están contraídas hacia 0.5 (agregamos dos éxitos y dos fracasos). Esto produce +sesgo en la estimación para valores extremos de \(\theta\). Sin embargo, +para valores centrales de \(\theta\) tiene menos variabilidad +(por regularización) que el estimador de máxima verosimilitud, y sufre poco +de sesgo.

      +
      +
      +

      Ejemplo: riesgo posterior

      +

      Supongamos que la inicial es \(\theta \sim \mathsf{Beta}(5,3)\)

      +
      estimar_riesgo_post <- function(n = 20, x, perdida, reps = 20000){
      +  # calcular estimaciones
      +  theta_1 <- t_1(n, x)
      +  theta_2 <- t_2(n, x)
      +  # simular de posterior
      +  theta_post <- rbeta(reps, x + 5, n - x + 3)
      +  # calcular pérdida
      +  media_perdida <- tibble(
      +    n = n, x = x,
      +    estimador = c("MLE", "Posterior"), 
      +    riesgo_post= c(mean(perdida(theta_post, theta_1)), mean(perdida(theta_post, theta_2))))
      +  media_perdida
      +}
      +estimar_riesgo_post(n = 20, x = 8, perdida = perdida_cuad)
      +
      ## # A tibble: 2 × 4
      +##       n     x estimador riesgo_post
      +##   <dbl> <dbl> <chr>           <dbl>
      +## 1    20     8 MLE            0.0127
      +## 2    20     8 Posterior      0.0109
      +

      Como dijimos, esta cantidad depende de los datos \(x\) que no hemos observado. Así que +calculamos para cada valor de \(x\):

      +

      Las funciones de pérdida promedio +\(\rho(x, t_1)\) y \(\rho(x, t_2)\) (dependen de \(x\)) +se ven aproximadamente como sigue:

      +
      x_seq <- seq(0, 20, 1)
      +riesgo_post_tbl <- 
      +  map(x_seq, ~ estimar_riesgo_post(n = 20, x = .x, perdida = perdida_cuad)) |> 
      +  bind_rows()
      +ggplot(riesgo_post_tbl, aes(x = x, y = riesgo_post, colour = estimador)) +
      +  geom_line() + geom_point() 
      +

      +

      Donde vemos que la pérdida del estimador bayesiano es mejor para valores extremos +de número de éxitos observado \(x\), pero tiene más riesgo posterior +para valores chicos de \(x\). En general es mejor el estimador \(\theta_2\). El +estimador de máxima verosimilitud tiene más riesgo en los extremos, lo que esperaríamos +porque no tenemos la regularización que aporta la posterior. Igualmente, +vemos más riesgo para valores chicos de \(x\) que para valores grandes: esto +es porque la inicial está concentrada en valores reslativamente grandes +de \(\theta\).

      +
      +
      +
      +

      Riesgo de Bayes

      +

      Finalmente, podemos crear un resumen unificado considerando:

      +
        +
      • Si no conocemos el valor del parámetro \(\theta\), podemos promediar +el riesgo frecuentista con la inicial \(p(\theta)\)
      • +
      • Si no conocemos los datos observados, podemos promediar usando +datos generados por la marginal \(p(x)\) de \(x\) bajo el modelo de datos +\(p(x|\theta)\) y la inicial \(p(\theta)\).
      • +
      +

      Por la ley de la esperanza iterada, estos dos resultados son iguales. La cantidad +resultante

      +

      \[r(t) = \int R(\theta,t) p(\theta)\, d\theta = \int r(x, t)p(x|\theta)p(\theta)\, d\theta\, dx\] +Se llama riesgo de Bayes para el estimador \(t\).

      +
      +

      Ejemplo

      +

      Podemos calcular

      +
      marginal_tbl <- function(n = 20, m = 5000){
      +  theta <- rbeta(m, 5, 3)
      +  x <- rbinom(m, size = n, p = theta)
      +  tibble(x = x) |> group_by(x) |> 
      +    summarise(n_x = n())
      +}
      +riesgo_post_tbl |> left_join(marginal_tbl()) |>  
      +  group_by(estimador) |> 
      +  summarise(riesgo_bayes = sum(riesgo_post * n_x) / sum(n_x))
      +
      ## # A tibble: 2 × 2
      +##   estimador riesgo_bayes
      +##   <chr>            <dbl>
      +## 1 MLE            0.0104 
      +## 2 Posterior      0.00833
      +

      o también

      +
      theta_tbl <- tibble(theta = rbeta(50000, 5, 3) |> round(3)) |> 
      +  group_by(theta) |> 
      +    summarise(n_x = n())
      +  
      +riesgo_tbl |> left_join(theta_tbl) |>
      +  mutate(n_x = ifelse(is.na(n_x), 0, n_x)) |> 
      +  group_by(estimador) |> 
      +  summarise(riesgo_bayes = sum(riesgo * n_x) / sum(n_x))
      +
      ## # A tibble: 2 × 2
      +##   estimador riesgo_bayes
      +##   <chr>            <dbl>
      +## 1 MLE            0.0104 
      +## 2 Posterior      0.00839
      +

      Ahora consideremos cómo decidiríamos, desde el punto de vista Bayesiano, qué +estimador usar:

      +
        +
      1. (Estimador de Bayes) Si tenemos los datos \(X\), escogeríamos una +función \(t_X\) que minimice el riesgo posterior \(\rho(t, X)\), y nuestro +estimador es \(\hat{\theta}_n = t_X (X)\).
      2. +
      3. (Regla de Bayes) Si no tenemos los datos, escogeríamos el estimador una función +\(t\) que minimice el riesgo de Bayes \(r(t)\), y estimaríamos usando \(\hat{\theta}_n = t(X)\)
      4. +
      5. Pero como el riesgo de Bayes es el promedio del riesgo posterior, la +solución de 1 nos da la solución de 2. Es decir, el estimador que escogemos +condicional a los datos \(X\) es el mismo que escogeríamos antes de escoger los +datos, dada una distribución inicial \(p(\theta).\)
      6. +
      +

      Por ejemplo, es posible demostrar que bajo la pérdida cuadrática, la regla de +Bayes es utilizar la media posterior, bajo la pérdida absoluta, la mediana +posterior, etc.

      +

      Este estimador de Bayes tiene sentido desde el punto de vista frecuentista, +también, porque minimiza el riesgo frecuentista promedio, suponiendo la +inicial \(p(\theta)\). Por ejemplo, para la pérdida cuadrática podemos usar la +descomposición de sesgo y varianza y obtenemos:

      +

      \[r(t) = \mathbb{E}[R(\theta,t)] = \mathbb{E}[ \mathsf{Sesgo}_\theta^2(t)] +\mathbb{E}[\mathsf{Var}_\theta(t)] \]

      +

      Podemos ver entonces que el estimador de Bayes, en este caso la media posterior, +es resultado de minimizar la suma de estas dos cantidades: por eso puede +incurrir en sesgo, si ese costo se subsana con una reducción considerable de la +varianza. Los estimadores insesgados que vimos en esta sección fueron subóptimos +en muchos casos justamente porque son insesgados, e incurren en varianza grande.

      + +
      +Regresa a los ejemplos anteriores donde evaluamos el desempeño de la media +posterior en varios ejemplos. Muestra en las gráficas dónde ves el balance +entre sesgo y varianza que cumplen cuando los comparamos con estimadores +insesgados. +
      +

      Desde el punto de vista frecuentista, la cuestión es más complicada y +hay varias maneras de proceder. En primer lugar, comenzaríamos con el +riesgo frecuentista \(R(\theta, t)\). Una idea es,por ejemplo, calcular el +riesgo máximo: +\[R_{\max} (t) = \underset{\theta}{\max} R(\theta, t).\] +En nuestro ejemplo de arriba el máximo se alcanza en 0.5, y tomaríamos +eso evaluación de los estimadores \(\theta_1\) o \(\theta_2\). Buscaríamos entonces +estimadores que minimicen este máximo, es decir, estimadores minimax. Pero también +es posible enfocar este problema considerando sólo estimadores insesgados, lo que +nos lleva por ejemplo a buscar estimadores con mínima varianza. También podemos +enfocarnos en buscar estimador admisibles, que son aquellos cuyo riesgo no está +dominado para toda \(\theta\) por otro estimador, y así sucesivamente.

      +

      Finalmente, es posible demostrar (ver Wasserman (2013)) que típicamente, para muestras +grandes, el estimador de máxima verosimilitud es cercano +a ser minimax y además es una regla de Bayes. Estas son buenas propiedades, pero +debemos contar con que el régimen asintótico se cumpla aproximadamente.

      + +
      +
      +
      +

      Referencias

      +
      +
      +Little, Roderick. 2011. “Calibrated Bayes, for Statistics in General, and Missing Data in Particular.” Statist. Sci. 26 (2): 162–74. https://doi.org/10.1214/10-STS318. +
      +
      +Wasserman, Larry. 2013. All of Statistics: A Concise Course in Statistical Inference. Springer Science & Business Media. +
      +
      +
      + +
      +
      +
      + + +
      +
      + + + + + + + + + + + + + + + diff --git "a/estimaci\303\263n-por-m\303\241xima-verosimilitud.html" "b/estimaci\303\263n-por-m\303\241xima-verosimilitud.html" index f8d9584..55af588 100644 --- "a/estimaci\303\263n-por-m\303\241xima-verosimilitud.html" +++ "b/estimaci\303\263n-por-m\303\241xima-verosimilitud.html" @@ -377,6 +377,70 @@
    • Ejemplo: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
    • Introducción
    • diff --git "a/estimaci\303\263n-y-distribuci\303\263n-de-muestreo-1.html" "b/estimaci\303\263n-y-distribuci\303\263n-de-muestreo-1.html" index 12b8f08..b050cba 100644 --- "a/estimaci\303\263n-y-distribuci\303\263n-de-muestreo-1.html" +++ "b/estimaci\303\263n-y-distribuci\303\263n-de-muestreo-1.html" @@ -377,6 +377,70 @@
    • Ejemplo: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
    • Introducción
    • diff --git a/intervalos-de-confianza-y-remuestreo.html b/intervalos-de-confianza-y-remuestreo.html index e0bf916..9a12855 100644 --- a/intervalos-de-confianza-y-remuestreo.html +++ b/intervalos-de-confianza-y-remuestreo.html @@ -377,6 +377,70 @@
    • Ejemplo: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
    • Introducción
    • diff --git "a/introducci\303\263n-a-inferencia-bayesiana-1.html" "b/introducci\303\263n-a-inferencia-bayesiana-1.html" index 1b17e7f..d623e98 100644 --- "a/introducci\303\263n-a-inferencia-bayesiana-1.html" +++ "b/introducci\303\263n-a-inferencia-bayesiana-1.html" @@ -30,7 +30,7 @@ - + @@ -377,6 +377,70 @@
    • Ejemplo: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
    • Introducción
    • @@ -493,13 +557,10 @@

      Un primer ejemplo completo de inferencia bayesiana -

      -¿Cuál sería la estimación de máxima verosimilitud para este problema? -¿Cómo cuantificaríamos la incertidumbre en la estimación de máxima -verosimilitud? -

      - + + + +

      Finalmente, podríamos hacer predicciones usando la posterior predictiva. Si \({X}_{nv}\) es una nueva tirada adicional de la moneda que estamos usando, nos interesaría saber: @@ -571,39 +632,39 @@

      EjercicioCambia distintos parámetros del número de soles observados, las probabilidades de sol de las monedas, y las probabilidades iniciales de selección de las monedas.

      -
      n_volados <- 2
      -# posible valores del parámetro desconocido
      -theta = c(0.4, 0.6)
      -# probabilidades iniciales
      -probs_inicial <- tibble(moneda = c(1, 2),
      -                        theta = theta,
      -                        prob_inicial = c(0.5, 0.5))
      -probs_inicial
      +
      n_volados <- 2
      +# posible valores del parámetro desconocido
      +theta = c(0.4, 0.6)
      +# probabilidades iniciales
      +probs_inicial <- tibble(moneda = c(1, 2),
      +                        theta = theta,
      +                        prob_inicial = c(0.5, 0.5))
      +probs_inicial
      ## # A tibble: 2 × 3
       ##   moneda theta prob_inicial
       ##    <dbl> <dbl>        <dbl>
       ## 1      1   0.4          0.5
       ## 2      2   0.6          0.5
      -
      # verosimilitud
      -crear_verosim <- function(no_soles){
      -    verosim <- function(theta){
      -      # prob de observar no_soles en 2 volados con probabilidad de sol theta
      -      dbinom(no_soles, n_volados, theta)
      -    }
      -    verosim
      -}
      -# evaluar verosimilitud
      -verosim <- crear_verosim(2)
      -# ahora usamos regla de bayes para hacer tabla de probabilidades
      -tabla_inferencia <- probs_inicial %>%
      -  mutate(verosimilitud = map_dbl(theta, verosim)) %>%
      -  mutate(inicial_x_verosim = prob_inicial * verosimilitud) %>%
      -  # normalizar
      -  mutate(prob_posterior = inicial_x_verosim / sum(inicial_x_verosim))
      -
      -tabla_inferencia %>%
      -  mutate(moneda_obs = moneda) %>%
      -  select(moneda_obs, theta, prob_inicial, verosimilitud, prob_posterior)
      +
      # verosimilitud
      +crear_verosim <- function(no_soles){
      +    verosim <- function(theta){
      +      # prob de observar no_soles en 2 volados con probabilidad de sol theta
      +      dbinom(no_soles, n_volados, theta)
      +    }
      +    verosim
      +}
      +# evaluar verosimilitud
      +verosim <- crear_verosim(2)
      +# ahora usamos regla de bayes para hacer tabla de probabilidades
      +tabla_inferencia <- probs_inicial |>
      +  mutate(verosimilitud = map_dbl(theta, verosim)) |>
      +  mutate(inicial_x_verosim = prob_inicial * verosimilitud) |>
      +  # normalizar
      +  mutate(prob_posterior = inicial_x_verosim / sum(inicial_x_verosim))
      +
      +tabla_inferencia |>
      +  mutate(moneda_obs = moneda) |>
      +  select(moneda_obs, theta, prob_inicial, verosimilitud, prob_posterior)
      ## # A tibble: 2 × 5
       ##   moneda_obs theta prob_inicial verosimilitud prob_posterior
       ##        <dbl> <dbl>        <dbl>         <dbl>          <dbl>
      @@ -710,14 +771,14 @@ 

      Ejemplo: estimando una proporción\(\mathsf{Beta}(3, 3)\):

      \[P(\theta) \propto \theta^2(1-\theta)^2.\] La constante de normalización es 1/30, pero no la requerimos. Podemos simular para examinar su forma:

      -
      sim_inicial <- tibble(theta = rbeta(10000, 3, 3))
      -ggplot(sim_inicial) + geom_histogram(aes(x = theta, y = ..density..), bins = 15)
      -

      +

      sim_inicial <- tibble(theta = rbeta(10000, 3, 3))
      +ggplot(sim_inicial) + geom_histogram(aes(x = theta, y = ..density..), bins = 15)
      +

      De modo que nuestra información inicial es que la proporción puede tomar cualquier valor entre 0 y 1, pero es probable que tome un valor no tan lejano de 0.5. Por ejemplo, con probabilidad 0.95 creemos que \(\theta\) está en el intervalo

      -
      quantile(sim_inicial$theta, c(0.025, 0.975)) %>% round(2)
      +
      quantile(sim_inicial$theta, c(0.025, 0.975)) |> round(2)
      ##  2.5% 97.5% 
       ##  0.14  0.85

      Es difícil justificar en abstracto por qué escogeriamos una inicial con esta @@ -737,33 +798,33 @@

      Ejemplo: estimando una proporción\(\mathsf{\mathsf{Beta}}(a,b)\) tiene como fórmula \[\frac{1}{B(a,b)} \theta^{a-1}(1-\theta)^{b-1}\] Concluimos entonces que la posterior tiene una distribución \(\mathsf{Beta}(22, 14)\). Podemos simular de la posterior usando código estándar para ver cómo luce:

      -
      sim_inicial <- sim_inicial %>% mutate(dist = "inicial")
      -sim_posterior <- tibble(theta = rbeta(10000, 22, 14)) %>% mutate(dist = "posterior")
      -sims <- bind_rows(sim_inicial, sim_posterior)
      -ggplot(sims, aes(x = theta, fill = dist)) +
      -  geom_histogram(aes(x = theta), bins = 30, alpha = 0.5, position = "identity")
      -

      +
      sim_inicial <- sim_inicial |> mutate(dist = "inicial")
      +sim_posterior <- tibble(theta = rbeta(10000, 22, 14)) |> mutate(dist = "posterior")
      +sims <- bind_rows(sim_inicial, sim_posterior)
      +ggplot(sims, aes(x = theta, fill = dist)) +
      +  geom_histogram(aes(x = theta), bins = 30, alpha = 0.5, position = "identity")
      +

      La posterior nos dice cuáles son las posibilidades de dónde puede estar el parámetro \(\theta\). Nótese que ahora excluye prácticamente valores más chicos que 0.25 o mayores que 0.9. Esta distribución posterior es el objeto con el que hacemos inferencia: nos dice dónde es creíble que esté el parámetro \(\theta\).

      Podemos resumir de varias maneras. Por ejemplo, si queremos un estimador puntual usamos la media posterior:

      -
      sims %>% group_by(dist) %>%
      -  summarise(theta_hat = mean(theta) %>% round(3))
      +
      sims |> group_by(dist) |>
      +  summarise(theta_hat = mean(theta) |> round(3))
      ## # A tibble: 2 × 2
       ##   dist      theta_hat
       ##   <chr>         <dbl>
      -## 1 inicial       0.5  
      -## 2 posterior     0.611
      +## 1 inicial 0.503 +## 2 posterior 0.61

      Nota que el estimador de máxima verosimilitud es \(\hat{p} = 19/30 = 0.63\), que es ligeramente diferente de la media posterior. ¿Por qué?

      Y podemos construir intervalos de percentiles, que en esta situación suelen llamarse intervalos de credibilidad, por ejemplo:

      -
      f <- c(0.025, 0.975)
      -sims %>% group_by(dist) %>%
      -  summarise(cuantiles = quantile(theta, f) %>% round(2), f = f) %>%
      -  pivot_wider(names_from = f, values_from = cuantiles)
      +
      f <- c(0.025, 0.975)
      +sims |> group_by(dist) |>
      +  summarise(cuantiles = quantile(theta, f) |> round(2), f = f) |>
      +  pivot_wider(names_from = f, values_from = cuantiles)
      ## # A tibble: 2 × 3
       ## # Groups:   dist [2]
       ##   dist      `0.025` `0.975`
      @@ -806,9 +867,9 @@ 

      Ejemplo: estimando una proporción
      qbeta(0.025, shape1 = 22, shape2 = 14) %>% round(2)
      +
      qbeta(0.025, shape1 = 22, shape2 = 14) |> round(2)
      ## [1] 0.45
      -
      qbeta(0.975, shape1 = 22, shape2 = 14) %>% round(2)
      +
      qbeta(0.975, shape1 = 22, shape2 = 14) |> round(2)
      ## [1] 0.76
      @@ -830,24 +891,25 @@

      Ejemplo: observaciones uniformes\([\theta_0,\infty]\). Tenemos que escoger entonces el mínimo \(\theta_0\) y el parámetro \(\alpha\). En primer lugar, como sabemos que es una lotería nacional, creemos que no puede haber menos de unos 300 mil números, así que \(\theta_0 = 300\). -La función acumulada de la pareto es \(1- (300/\theta)^\alpha\), así que el cuantil 99% es

      -
      alpha <- 1.1
      -(300/(0.01)^(1/alpha))
      +La función acumulada de la pareto es \(1- (300/\theta)^\alpha\), así que si \(\alpha = 1.1\) +el cuantil 99% es:

      +
      alpha <- 1.1
      +(300/(0.01)^(1/alpha))
      ## [1] 19738
      -

      es decir, alrededor de 20 millones de números. Creemos que es un poco probable -que el número de boletos sea mayor a esta cota. -Nótese ahora que la posterior cumple (multiplicando verosimilitud por inicial):

      +

      es decir, alrededor de 20 millones de números. Creemos que es poco probable +que el número de boletos sea mayor a esta cota.

      +

      Nótese ahora que la posterior cumple (multiplicando verosimilitud por inicial):

      \[P(\theta|X_1,\ldots, X_n |\theta) \propto \theta^{-(n + 2.1)}\]

      para \(\theta\) mayor que el máximo de las \(X_n\)’s y 300, y cero en otro caso. Esta distribución es pareto con \(\theta_0' = \max\{300, X_1,\ldots, X_n\}\) y \(\alpha' = n + 1.1\)

      Una vez planteado nuestro modelo, veamos los datos. Obtuvimos la siguiente muestra de números:

      -
      loteria_tbl <- read_csv("data/nums_loteria_avion.csv", col_names = c("id", "numero")) %>%
      -  mutate(numero = as.integer(numero))
      -set.seed(334)
      -muestra_loteria <- sample_n(loteria_tbl, 25) %>%
      -  mutate(numero = numero/1000)
      -muestra_loteria %>% as.data.frame %>% head
      +
      loteria_tbl <- read_csv("data/nums_loteria_avion.csv", col_names = c("id", "numero")) |>
      +  mutate(numero = as.integer(numero))
      +set.seed(334)
      +muestra_loteria <- sample_n(loteria_tbl, 25) |>
      +  mutate(numero = numero/1000)
      +muestra_loteria |> as.data.frame() |> head()
      ##   id   numero
       ## 1 87  348.341
       ## 2  5 5851.982
      @@ -856,39 +918,39 @@ 

      Ejemplo: observaciones uniformes
      rpareto <- function(n, theta_0, alpha){
      -  # usar el método de inverso de distribución acumulada
      -  u <- runif(n, 0, 1)
      -  theta_0 / (1 - u)^(1/alpha)
      -}

      +
      rpareto <- function(n, theta_0, alpha){
      +  # usar el método de inverso de distribución acumulada
      +  u <- runif(n, 0, 1)
      +  theta_0 / (1 - u)^(1/alpha)
      +}

      Simulamos de la inicial:

      -
      sims_pareto_inicial <- tibble(
      -  theta = rpareto(20000, 300, 1.1 ),
      -  dist = "inicial")
      +
      sims_pareto_inicial <- tibble(
      +  theta = rpareto(20000, 300, 1.1 ),
      +  dist = "inicial")

      Y con los datos de la muestra, simulamos de la posterior:

      -
      sims_pareto_posterior <- tibble(
      -  theta = rpareto(20000,
      -                  max(c(300, muestra_loteria$numero)),
      -                  nrow(muestra_loteria) + 1.1),
      -  dist = "posterior")
      -sims_theta <- bind_rows(sims_pareto_inicial, sims_pareto_posterior)
      -ggplot(sims_theta) +
      -  geom_histogram(aes(x = theta, fill = dist),
      -                 bins = 70, alpha = 0.5, position = "identity",
      -                 boundary = max(muestra_loteria$numero))  +
      -  xlim(0, 15000) + scale_y_sqrt() +
      -  geom_rug(data = muestra_loteria, aes(x = numero))
      -

      -Nótese que cortamos algunos valores de la inicial en la cola derecha: un defecto +

      sims_pareto_posterior <- tibble(
      +  theta = rpareto(20000,
      +                  max(c(300, muestra_loteria$numero)),
      +                  nrow(muestra_loteria) + 1.1),
      +  dist = "posterior")
      +sims_theta <- bind_rows(sims_pareto_inicial, sims_pareto_posterior)
      +ggplot(sims_theta) +
      +  geom_histogram(aes(x = theta, fill = dist),
      +                 bins = 70, alpha = 0.5, position = "identity",
      +                 boundary = max(muestra_loteria$numero))  +
      +  xlim(0, 15000) + scale_y_sqrt() +
      +  geom_rug(data = muestra_loteria, aes(x = numero))
      +

      +

      Nótese que cortamos algunos valores de la inicial en la cola derecha: un defecto de esta distribución inicial, con una cola tan larga a la derecha, es que pone cierto peso en valores que son poco creíbles y la vuelve poco apropiada para -este problema. Regresamos más adelante a este problema.

      +este problema. Regresaremos más adelante a este problema.

      Si obtenemos percentiles, obtenemos el intervalo

      -
      f <- c(0.025, 0.5, 0.975)
      -sims_theta %>% group_by(dist) %>%
      -  summarise(cuantiles = quantile(theta, f) %>% round(2), f = f) %>%
      -  pivot_wider(names_from = f, values_from = cuantiles)
      +
      f <- c(0.025, 0.5, 0.975)
      +sims_theta |> group_by(dist) |>
      +  summarise(cuantiles = quantile(theta, f) |> round(2), f = f) |>
      +  pivot_wider(names_from = f, values_from = cuantiles)
      ## # A tibble: 2 × 4
       ## # Groups:   dist [2]
       ##   dist      `0.025` `0.5` `0.975`
      @@ -897,16 +959,16 @@ 

      Ejemplo: observaciones uniformes
      max(muestra_loteria$numero)
      +
      max(muestra_loteria$numero)
      ## [1] 5851.982

      Escoger la distribución pareto como inicial es conveniente y nos permitió resolver el problema sin dificultad, pero por su forma vemos que no necesariamente es apropiada para el problema por lo que señalamos arriba. Nos gustaría, por ejemplo, poner una inicial como la siguiente

      -
      qplot(rgamma(2000, 5, 0.001), geom="histogram", bins = 20) +
      -  scale_x_continuous(breaks = seq(1000, 15000, by = 2000))
      -

      +
      qplot(rgamma(2000, 5, 0.001), geom="histogram", bins = 20) +
      +  scale_x_continuous(breaks = seq(1000, 15000, by = 2000))
      +

      Sin embargo, los cálculos no son tan simples en este caso, pues la posterior no tiene un forma reconocible. Tendremos que usar otras estrategias de simulación para ejemplos como este (Monte Carlo por medio de Cadenas de Markov, que veremos más adelante).

      @@ -1025,25 +1087,25 @@

      Ejemplo\(\tau\), pero podemos simular para ver cómo se ve nuestra inicial para la desviación estándar. En la población general la desviación estándar es alrededor de 7 centímetros

      -
      # Comenzamos seleccionando un valor que creemos típico para la desviación estándar
      -sigma_0 <- 7
      -# seleccionamos un valor para a, por ejemplo: si es más chico sigma tendrá más
      -# disperisón
      -a <- 3
      -# ponemos 7 = sqrt(b/a) -> b = a * 64
      -b <- a * sigma_0^2
      -c(a = a, b = b)
      +
      # Comenzamos seleccionando un valor que creemos típico para la desviación estándar
      +sigma_0 <- 7
      +# seleccionamos un valor para a, por ejemplo: si es más chico sigma tendrá más
      +# disperisón
      +a <- 3
      +# ponemos 7 = sqrt(b/a) -> b = a * 64
      +b <- a * sigma_0 ^ 2
      +c(a = a, b = b)
      ##   a   b 
       ##   3 147

      Ahora simulamos para calcular cuantiles

      -
      tau <- rgamma(1000, a, b)
      -quantile(tau, c(0.05, 0.95))
      +
      tau <- rgamma(1000, a, b)
      +quantile(tau, c(0.05, 0.95))
      ##          5%         95% 
       ## 0.005781607 0.042170161
      -
      sigma <- 1 / sqrt(tau)
      -mean(sigma)
      +
      sigma <- 1 / sqrt(tau)
      +mean(sigma)
      ## [1] 8.002706
      -
      quantile(sigma, c(0.05, 0.95))
      +
      quantile(sigma, c(0.05, 0.95))
      ##        5%       95% 
       ##  4.869653 13.151520

      Que es dispersión considerable: con poca probabilidad la desviación estándar @@ -1060,38 +1122,38 @@

      EjemploPodemos establecer parámetros y simular de la marginal a partir de las fórmulas de arriba para entender cómo se ve la inicial de \(\mu\):

      -
      mu_0 <- 175 # valor medio de inicial
      -n_0 <- 5 # cuánta concentración en la inicial
      -tau <- rgamma(1000, a,b)
      -sigma <- 1/sqrt(tau)
      -mu <- map_dbl(sigma, ~ rnorm(1, mu_0, .x / sqrt(n_0)))
      -quantile(mu, c(0.05, 0.5, 0.95))
      +
      mu_0 <- 175 # valor medio de inicial
      +n_0 <- 5 # cuánta concentración en la inicial
      +tau <- rgamma(1000, a,b)
      +sigma <- 1/sqrt(tau)
      +mu <- map_dbl(sigma, ~ rnorm(1, mu_0, .x / sqrt(n_0)))
      +quantile(mu, c(0.05, 0.5, 0.95))
      ##       5%      50%      95% 
       ## 168.7275 174.8412 180.7905

      Que consideramos un rango en el que con alta probabilidad debe estar la media poblacional de los cantantes.

      Podemos checar nuestros supuestos simulando posibles muestras usando sólo nuestra información previa:

      -
      simular_normal_invgamma <- function(n, pars){
      -  mu_0 <- pars[1]
      -  n_0 <- pars[2]
      -  a <- pars[3]
      -  b <- pars[4]
      -  # simular media
      -  tau <- rgamma(1, a, b)
      -  sigma <- 1 / sqrt(tau)
      -  mu <- rnorm(1, mu_0, sigma/sqrt(n_0))
      -  # simular sigma
      -  rnorm(n, mu, sigma)
      -}
      -set.seed(3461)
      -sims_tbl <- tibble(rep = 1:20) %>%
      -  mutate(estatura = map(rep, ~ simular_normal_invgamma(500, c(mu_0, n_0, a, b)))) %>%
      -  unnest(cols = c(estatura))
      -ggplot(sims_tbl, aes(x = estatura)) + geom_histogram() +
      -  facet_wrap(~ rep) +
      -  geom_vline(xintercept = c(150, 180), colour = "red")
      -

      +
      simular_normal_invgamma <- function(n, pars){
      +  mu_0 <- pars[1]
      +  n_0 <- pars[2]
      +  a <- pars[3]
      +  b <- pars[4]
      +  # simular media
      +  tau <- rgamma(1, a, b)
      +  sigma <- 1 / sqrt(tau)
      +  mu <- rnorm(1, mu_0, sigma/sqrt(n_0))
      +  # simular sigma
      +  rnorm(n, mu, sigma)
      +}
      +set.seed(3461)
      +sims_tbl <- tibble(rep = 1:20) |>
      +  mutate(estatura = map(rep, ~ simular_normal_invgamma(500, c(mu_0, n_0, a, b)))) |>
      +  unnest(cols = c(estatura))
      +ggplot(sims_tbl, aes(x = estatura)) + geom_histogram() +
      +  facet_wrap(~ rep) +
      +  geom_vline(xintercept = c(150, 180), colour = "red")
      +

      Pusimos líneas de referencia en 150 y 180. Vemos que nuestras iniciales no producen simulaciones totalmente fuera del contexto, y parecen cubrir apropiadamente el espacio de posiblidades para estaturas de los tenores. Quizá hay algunas realizaciones @@ -1099,12 +1161,12 @@

      Ejemplo\(\sigma\), que parece tomar valores demasiado grandes (produciendo por ejemplo una simulación con estatura de 220 y 140, que deberían ser menos probables).

      Ahora podemos usar los datos para calcular nuestras posteriores.

      -
      set.seed(3413)
      -cantantes <- lattice::singer %>%
      -  mutate(estatura_cm = round(2.54 * height)) %>%
      -  filter(str_detect(voice.part, "Tenor")) %>%
      -  sample_n(20)
      -cantantes
      +
      set.seed(3413)
      +cantantes <- lattice::singer |>
      +  mutate(estatura_cm = round(2.54 * height)) |>
      +  filter(str_detect(voice.part, "Tenor")) |>
      +  sample_n(20)
      +cantantes
      ##     height voice.part estatura_cm
       ## 139     70    Tenor 1         178
       ## 150     68    Tenor 2         173
      @@ -1127,71 +1189,70 @@ 

      Ejemplo

      Los cálculos son un poco tediosos, pero podemos construir una función apropiada:

      -
      calcular_pars_posterior <- function(x, pars_inicial){
      -  # iniciales
      -  mu_0 <- pars_inicial[1]
      -  n_0 <- pars_inicial[2]
      -  a_0 <- pars_inicial[3]
      -  b_0 <- pars_inicial[4]
      -  # muestra
      -  n <- length(x)
      -  media <- mean(x)
      -  S2 <- sum((x - media)^2)
      -  # sigma post
      -  a_1 <- a_0 + 0.5 * n
      -  b_1 <- b_0 + 0.5 * S2 + 0.5 * (n * n_0) / (n + n_0) * (media - mu_0)^2
      -  # posterior mu
      -  mu_1 <- (n_0 * mu_0 + n * media) / (n + n_0)
      -  n_1 <- n + n_0
      -  c(mu_1, n_1, a_1, b_1)
      -}
      -pars_posterior <- calcular_pars_posterior(cantantes$estatura_cm, c(mu_0, n_0, a, b))
      -pars_posterior
      +
      calcular_pars_posterior <- function(x, pars_inicial){
      +  # iniciales
      +  mu_0 <- pars_inicial[1]
      +  n_0 <- pars_inicial[2]
      +  a_0 <- pars_inicial[3]
      +  b_0 <- pars_inicial[4]
      +  # muestra
      +  n <- length(x)
      +  media <- mean(x)
      +  S2 <- sum((x - media)^2)
      +  # sigma post
      +  a_1 <- a_0 + 0.5 * n
      +  b_1 <- b_0 + 0.5 * S2 + 0.5 * (n * n_0) / (n + n_0) * (media - mu_0)^2
      +  # posterior mu
      +  mu_1 <- (n_0 * mu_0 + n * media) / (n + n_0)
      +  n_1 <- n + n_0
      +  c(mu_1, n_1, a_1, b_1)
      +}
      +pars_posterior <- calcular_pars_posterior(cantantes$estatura_cm, c(mu_0, n_0, a, b))
      +pars_posterior
      ## [1] 175.8  25.0  13.0 509.0

      ¿Cómo se ve nuestra posterior comparada con la inicial? Podemos hacer simulaciones:

      -
      sim_params <- function(m, pars){
      -  mu_0 <- pars[1]
      -  n_0 <- pars[2]
      -  a <- pars[3]
      -  b <- pars[4]
      -  # simular sigmas
      -  sims <- tibble(tau = rgamma(m, a, b)) %>%
      -    mutate(sigma = 1 / sqrt(tau))
      -  # simular mu
      -  sims <- sims %>% mutate(mu = rnorm(m, mu_0, sigma / sqrt(n_0)))
      -  sims
      -}
      -sims_inicial <- sim_params(5000, c(mu_0, n_0, a, b)) %>%
      -  mutate(dist = "inicial")
      -sims_posterior <- sim_params(5000, pars_posterior) %>%
      -  mutate(dist = "posterior")
      -sims <- bind_rows(sims_inicial, sims_posterior)
      -ggplot(sims, aes(x = mu, y = sigma, colour = dist)) +
      -  geom_point()
      -

      +
      sim_params <- function(m, pars){
      +  mu_0 <- pars[1]
      +  n_0 <- pars[2]
      +  a <- pars[3]
      +  b <- pars[4]
      +  # simular sigmas
      +  sims <- tibble(tau = rgamma(m, a, b)) |>
      +    mutate(sigma = 1 / sqrt(tau))
      +  # simular mu
      +  sims <- sims |> mutate(mu = rnorm(m, mu_0, sigma / sqrt(n_0)))
      +  sims
      +}
      +sims_inicial <- sim_params(5000, c(mu_0, n_0, a, b)) |>
      +  mutate(dist = "inicial")
      +sims_posterior <- sim_params(5000, pars_posterior) |>
      +  mutate(dist = "posterior")
      +sims <- bind_rows(sims_inicial, sims_posterior)
      +ggplot(sims, aes(x = mu, y = sigma, colour = dist)) +
      +  geom_point(alpha = 0.4)
      +

      Y vemos que nuestra posterior es consistente con la información inicial que usamos, hemos aprendido considerablemente de la muestra. La posterior se ve como sigue. Hemos marcado también las medias posteriores de cada parámetro: media y desviación estándar.

      -
      medias_post <- sims %>% filter(dist == "posterior") %>%
      -  select(-dist) %>%
      -  summarise(across(everything(), mean))
      -ggplot(sims %>% filter(dist == "posterior"),
      -    aes(x = mu, y = sigma)) +
      -  geom_point(colour = "#00BFC4") +
      -  geom_point(data = medias_post, size = 5, colour = "black") +
      -  coord_equal()
      -

      -Podemos construir intervalos creíbles del 90% para estos dos parámetros, por ejemplo +

      medias_post <- sims |> filter(dist == "posterior") |>
      +  select(-dist) |>
      +  summarise(across(everything(), mean))
      +ggplot(sims |> filter(dist == "posterior"), aes(x = mu, y = sigma)) +
      +  geom_point(colour = "#00BFC4") +
      +  geom_point(data = medias_post, size = 5, colour = "black") +
      +  coord_equal()
      +

      +

      Podemos construir intervalos creíbles del 90% para estos dos parámetros, por ejemplo haciendo intervalos de percentiles:

      -
      f <- c(0.05, 0.5, 0.95)
      -sims %>%
      -  pivot_longer(cols = mu:sigma, names_to = "parametro") %>%
      -  group_by(dist, parametro) %>%
      -  summarise(cuantil = quantile(value, f) %>% round(1), f= f) %>%
      -  pivot_wider(names_from = f, values_from = cuantil)
      +
      f <- c(0.05, 0.5, 0.95)
      +sims |>
      +  pivot_longer(cols = mu:sigma, names_to = "parametro") |>
      +  group_by(dist, parametro) |>
      +  reframe(cuantil = quantile(value, f) |> 
      +            round(1), f = f) |>
      +  pivot_wider(names_from = f, values_from = cuantil)
      ## # A tibble: 4 × 5
      -## # Groups:   dist, parametro [4]
       ##   dist      parametro `0.05` `0.5` `0.95`
       ##   <chr>     <chr>      <dbl> <dbl>  <dbl>
       ## 1 inicial   mu         169.  175.   181. 
      @@ -1199,9 +1260,9 @@ 

      Ejemplo

      Como comparación, los estimadores de máxima verosimlitud son

      -
      media_mv <- mean(cantantes$estatura_cm)
      -sigma_mv <- mean((cantantes$estatura_cm - media_mv)^2) %>% sqrt
      -c(media_mv, sigma_mv)
      +
      media_mv <- mean(cantantes$estatura_cm)
      +sigma_mv <- mean((cantantes$estatura_cm - media_mv)^2) |> sqrt()
      +c(media_mv, sigma_mv)
      ## [1] 176   6

      Ahora solo resta checar que el modelo es razonable. Veremos más adelante cómo hacer esto, usando la distribución predictiva posterior.

      @@ -1344,32 +1405,31 @@

      Ejemplo: estaturas de tenores
      muestra_sim <- simular_normal_invgamma(20, pars_posterior)
      -muestra_sim %>% round(0)
      +
      muestra_sim <- simular_normal_invgamma(20, pars_posterior)
      +muestra_sim |> round(0)
      ##  [1] 167 181 184 181 167 167 172 170 177 172 169 174 182 184 176 171 175 176 168
       ## [20] 181

      Podemos simular varias muestras y hacer una prueba de lineup:

      -
      library(nullabor)
      -set.seed(9921)
      -sims_obs <- tibble(.n = 1:19) %>%
      -  mutate(estatura_cm = map(.n, ~ simular_normal_invgamma(20, pars_posterior))) %>%
      -  unnest(estatura_cm)
      -pos <- sample(1:20, 1)
      -lineup_tbl <- lineup(true = cantantes %>% select(estatura_cm),
      -                     samples = sims_obs, pos = pos)
      -ggplot(lineup_tbl, aes(x = estatura_cm)) + geom_histogram(binwidth = 2.5) +
      -  facet_wrap(~.sample)
      -

      -Con este tipo de gráficas podemos checar desajustes potenciales de nuestro modelo.

      +
      library(nullabor)
      +set.seed(9921)
      +sims_obs <- tibble(.n = 1:19) |>
      +  mutate(estatura_cm = map(.n, ~ simular_normal_invgamma(20, pars_posterior))) |>
      +  unnest(estatura_cm)
      +pos <- sample(1:20, 1)
      +
      +lineup_tbl <- lineup(true = cantantes |> select(estatura_cm),
      +                     samples = sims_obs, pos = pos)
      +ggplot(lineup_tbl, aes(x = estatura_cm)) + geom_histogram(binwidth = 2.5) +
      +  facet_wrap(~.sample)
      +

      +

      Con este tipo de gráficas podemos checar desajustes potenciales de nuestro modelo.

      • ¿Puedes encontrar los datos verdaderos? ¿Cuántos seleccionaron los datos correctos? -
      • -
      • -Prueba hacer pruebas con una gráfica de cuantiles. ¿Qué problema ves -y cómo lo resolverías? + +
      @@ -1384,45 +1444,45 @@

      Ejemplo: modelo Poisson\((n\overline{x} + 1, n+0.1)\)

      Ahora supongamos que observamos la siguiente muestra, ajustamos nuestro modelo y hacemos replicaciones posteriores de los datos observados:

      -
      x <- rnbinom(250, mu = 20, size = 3)
      -crear_sim_rep <- function(x){
      -  n <- length(x)
      -  suma <- sum(x)
      -  sim_rep <- function(rep){
      -    lambda <- rgamma(1, sum(x) + 1, n + 0.1)
      -    x_rep <- rpois(n, lambda)
      -    tibble(rep = rep, x_rep = x_rep)
      -  }
      -}
      -sim_rep <- crear_sim_rep(x)
      -lineup_tbl <- map(1:5, ~ sim_rep(.x)) %>%
      -  bind_rows() %>%
      -  bind_rows(tibble(rep = 6, x_rep = x))
      -ggplot(lineup_tbl, aes(x = x_rep)) +
      -  geom_histogram(bins = 15) +
      -  facet_wrap(~rep)
      -

      +

      x <- rnbinom(250, mu = 20, size = 3)
      +crear_sim_rep <- function(x){
      +  n <- length(x)
      +  suma <- sum(x)
      +  sim_rep <- function(rep){
      +    lambda <- rgamma(1, sum(x) + 1, n + 0.1)
      +    x_rep <- rpois(n, lambda)
      +    tibble(rep = rep, x_rep = x_rep)
      +  }
      +}
      +sim_rep <- crear_sim_rep(x)
      +lineup_tbl <- map(1:5, ~ sim_rep(.x)) |>
      +  bind_rows() |>
      +  bind_rows(tibble(rep = 6, x_rep = x))
      +ggplot(lineup_tbl, aes(x = x_rep)) +
      +  geom_histogram(bins = 15) +
      +  facet_wrap(~rep)
      +

      Y vemos claramente que nuestro modelo no explica apropiadamente la variación de los datos observados. Contrasta con:

      -
      set.seed(223)
      -x <- rpois(250, 15)
      -crear_sim_rep <- function(x){
      -  n <- length(x)
      -  suma <- sum(x)
      -  sim_rep <- function(rep){
      -    lambda <- rgamma(1, sum(x) + 1, n + 0.1)
      -    x_rep <- rpois(n, lambda)
      -    tibble(rep = rep, x_rep = x_rep)
      -  }
      -}
      -sim_rep <- crear_sim_rep(x)
      -lineup_tbl <- map(1:5, ~ sim_rep(.x)) %>%
      -  bind_rows() %>%
      -  bind_rows(tibble(rep = 6, x_rep = x))
      -ggplot(lineup_tbl, aes(x = x_rep)) +
      -  geom_histogram(bins = 15) +
      -  facet_wrap(~rep)
      -

      +

      set.seed(223)
      +x <- rpois(250, 15)
      +crear_sim_rep <- function(x){
      +  n <- length(x)
      +  suma <- sum(x)
      +  sim_rep <- function(rep){
      +    lambda <- rgamma(1, sum(x) + 1, n + 0.1)
      +    x_rep <- rpois(n, lambda)
      +    tibble(rep = rep, x_rep = x_rep)
      +  }
      +}
      +sim_rep <- crear_sim_rep(x)
      +lineup_tbl <- map(1:5, ~ sim_rep(.x)) |>
      +  bind_rows() |>
      +  bind_rows(tibble(rep = 6, x_rep = x))
      +ggplot(lineup_tbl, aes(x = x_rep)) +
      +  geom_histogram(bins = 15) +
      +  facet_wrap(~rep)
      +

      Y verificamos que en este caso el ajuste del modelo es apropiado.

      @@ -1442,9 +1502,9 @@

      Ejemplo: cantantes
      sims_posterior <- sim_params(50000, pars_posterior) %>%
      -  mutate(y_pred = rnorm(n(), mu, sigma))
      -sims_posterior %>% head
      +
      sims_posterior <- sim_params(50000, pars_posterior) |>
      +  mutate(y_pred = rnorm(n(), mu, sigma))
      +sims_posterior |> head()
      ## # A tibble: 6 × 4
       ##      tau sigma    mu y_pred
       ##    <dbl> <dbl> <dbl>  <dbl>
      @@ -1454,8 +1514,8 @@ 

      Ejemplo: cantantes
      f <- c(0.025, 0.5, 0.975)
      -sims_posterior %>% summarise(f = f, y_pred = quantile(y_pred, f))
      +
      f <- c(0.025, 0.5, 0.975)
      +sims_posterior |> summarise(f = f, y_pred = quantile(y_pred, f))
      ## # A tibble: 3 × 2
       ##       f y_pred
       ##   <dbl>  <dbl>
      @@ -1470,12 +1530,12 @@ 

      Ejemplo: cantantes\(t\) con \(2\alpha'\) grados de libertad, centrada en \(\mu'\), y con escala \(s^2 = \frac{\beta'}{\alpha'}\frac{n + n_0 + 1}{n +n_0}\)

    -
    mu_post <- pars_posterior[1]
    -n_post <- pars_posterior[2]
    -alpha_post <- pars_posterior[3]
    -beta_post <- pars_posterior[4]
    -s <- sqrt(beta_post/alpha_post) * sqrt((n_post + 1)/n_post)
    -qt(c(0.025, 0.5, 0.975), 2 * alpha_post) * s + mu_post
    +
    mu_post <- pars_posterior[1]
    +n_post <- pars_posterior[2]
    +alpha_post <- pars_posterior[3]
    +beta_post <- pars_posterior[4]
    +s <- sqrt(beta_post/alpha_post) * sqrt((n_post + 1)/n_post)
    +qt(c(0.025, 0.5, 0.975), 2 * alpha_post) * s + mu_post
    ## [1] 162.6832 175.8000 188.9168
    @@ -1489,24 +1549,24 @@

    Ejemplo: cantantes

    La posterior predictiva del modelo Pareto-Uniforme no tiene un nombre estándar, pero podemos aproximarla usando simulación. Usando los mismos datos del ejercicio de la lotería, haríamos:

    -
    rpareto <- function(n, theta_0, alpha){
    -  # usar el método de inverso de distribución acumulada
    -  u <- runif(n, 0, 1)
    -  theta_0 / (1 - u)^(1/alpha)
    -}
    -# Simulamos de la posterior de los parámetros
    -lim_inf_post <- max(c(300, muestra_loteria$numero))
    -k_posterior <- nrow(muestra_loteria) + 1.1
    -sims_pareto_posterior <- tibble(
    -  theta = rpareto(100000, lim_inf_post, k_posterior))
    -# Simulamos una observación para cada una de las anteriores:
    -sims_post_pred <- sims_pareto_posterior %>%
    -  mutate(x_pred = map_dbl(theta, ~ runif(1, 0, .x)))
    -# Graficamos
    -ggplot(sims_post_pred, aes(x = x_pred)) +
    -  geom_histogram(binwidth = 50) +
    -  geom_vline(xintercept = lim_inf_post, colour = "red")
    -

    +
    rpareto <- function(n, theta_0, alpha){
    +  # usar el método de inverso de distribución acumulada
    +  u <- runif(n, 0, 1)
    +  theta_0 / (1 - u)^(1/alpha)
    +}
    +# Simulamos de la posterior de los parámetros
    +lim_inf_post <- max(c(300, muestra_loteria$numero))
    +k_posterior <- nrow(muestra_loteria) + 1.1
    +sims_pareto_posterior <- tibble(
    +  theta = rpareto(100000, lim_inf_post, k_posterior))
    +# Simulamos una observación para cada una de las anteriores:
    +sims_post_pred <- sims_pareto_posterior |>
    +  mutate(x_pred = map_dbl(theta, ~ runif(1, 0, .x)))
    +# Graficamos
    +ggplot(sims_post_pred, aes(x = x_pred)) +
    +  geom_histogram(binwidth = 50) +
    +  geom_vline(xintercept = lim_inf_post, colour = "red")
    +

    Que es una mezcla de una uniforme con una Pareto.

    @@ -1527,7 +1587,7 @@

    Referencias - + diff --git "a/m\303\241s-de-pruebas-de-hip\303\263tesis-e-intervalos.html" "b/m\303\241s-de-pruebas-de-hip\303\263tesis-e-intervalos.html" index d4af966..8885c71 100644 --- "a/m\303\241s-de-pruebas-de-hip\303\263tesis-e-intervalos.html" +++ "b/m\303\241s-de-pruebas-de-hip\303\263tesis-e-intervalos.html" @@ -377,6 +377,70 @@
  • Ejemplo: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
    • Introducción
    • @@ -477,11 +541,11 @@

      Prueba de Wald\[\hat{\textsf{ee}} = s / \sqrt{n}\] Obtenemos:

      set.seed(29)
      -muestra_edomex <- read_csv("data/enlace.csv") %>% 
      -  filter(estado == "ESTADO DE MEXICO") %>% 
      +muestra_edomex <- read_csv("data/enlace.csv") |> 
      +  filter(estado == "ESTADO DE MEXICO") |> 
         sample_n(180)
      -resumen <- muestra_edomex %>% 
      -  summarise(media = mean(mate_6), s = sd(mate_6), n = n()) %>% 
      +resumen <- muestra_edomex |> 
      +  summarise(media = mean(mate_6), s = sd(mate_6), n = n()) |> 
         mutate(ee = s / sqrt(n))
       resumen
      ## # A tibble: 1 × 4
      @@ -490,12 +554,13 @@ 

      Prueba de Wald\(p\) usando la prueba de Wald:

      -
      dif <- (resumen %>% pull(media)) - 454
      -ee <- resumen %>% pull(ee)
      +
      dif <- (resumen |> pull(media)) - 454
      +ee <- resumen |> pull(ee)
       w <- dif / ee
      -p <- 2 * (1 - pnorm(abs(w)))
      -p
      -
      ## [1] 0.8410806
      + +p <- 2 * (1 - pt(abs(w), 179)) +p
      +
      ## [1] 0.8413082

      y vemos que esta muestra es consistente con la media nacional. No tenemos evidencia en contra de que la media del estado de México es muy similar a la nacional.

      @@ -668,7 +733,7 @@

      Datos pareados\(\bar{D}\) depende de cómo están correlacionados los aciertos de los dos algoritmos.

      Supongamos por ejemplo que los datos que obtenemos son:

      -
      datos_clasif %>% head
      +
      datos_clasif |> head()
      ## # A tibble: 6 × 3
       ##   caso      x     y
       ##   <chr> <dbl> <dbl>
      @@ -679,9 +744,9 @@ 

      Datos pareados\(d\):

      -
      datos_clasif <- datos_clasif %>% 
      +
      datos_clasif <- datos_clasif |> 
         mutate(d = x - y)
      -datos_clasif %>% head
      +datos_clasif |> head()
      ## # A tibble: 6 × 4
       ##   caso      x     y     d
       ##   <chr> <dbl> <dbl> <dbl>
      @@ -691,27 +756,35 @@ 

      Datos pareados
      datos_clasif |> 
      +  summarise(sd_x = sd(x), 
      +            sd_y = sd(y), 
      +            sd_d = sd(d))
      +
      ## # A tibble: 1 × 3
      +##    sd_x  sd_y  sd_d
      +##   <dbl> <dbl> <dbl>
      +## 1 0.393 0.309 0.539

      Y ahora calculamos la media de \(d\) (y tasa de correctos de cada clasificador:)

      -
      medias_tbl <- 
      -  datos_clasif %>% summarise(across(where(is.numeric), mean, .names = "{col}_hat"))
      -d_hat <- pull(medias_tbl, d_hat)
      -medias_tbl
      +
      medias_tbl <- 
      +  datos_clasif |> summarise(across(where(is.numeric), mean, .names = "{col}_hat"))
      +d_hat <- pull(medias_tbl, d_hat)
      +medias_tbl
      ## # A tibble: 1 × 3
       ##   x_hat y_hat   d_hat
       ##   <dbl> <dbl>   <dbl>
       ## 1  0.81 0.893 -0.0833

      Ahora necesitamos calcular el error estándar. Como explicamos arriba, hacemos

      -
      ee <- datos_clasif %>% 
      -  mutate(d_hat = mean(d)) %>% 
      -  mutate(dif_2 = (d - d_hat)) %>% 
      -  summarise(ee = sd(dif_2) / sqrt(n())) %>% 
      -  pull(ee)
      -ee  
      +
      ee <- datos_clasif |> 
      +  mutate(d_hat = mean(d)) |> 
      +  mutate(dif_2 = (d - d_hat)) |> 
      +  summarise(ee = sd(dif_2) / sqrt(n())) |> 
      +  pull(ee)
      +ee  
      ## [1] 0.03112829

      Y ahora podemos calcular la estadística \(W\) y el valor p correspondiente:

      -
      w <- d_hat / ee
      -valor_p <- 2 * (1 - pnorm(abs(w)))
      -c(w = w, valor_p = valor_p) %>% round(3)
      +
      w <- d_hat / ee
      +valor_p <- 2 * (1 - pnorm(abs(w)))
      +c(w = w, valor_p = valor_p) |> round(3)
      ##       w valor_p 
       ##  -2.677   0.007

      Y vemos que tenemos evidencia considerable de que el desempeño no es el mismo: @@ -760,21 +833,21 @@

      Pruebas de cociente de verosimilitud
      log_verosim <- function(p){
      -  75 * log(p) + (120 - 75) * log(1 - p)
      -}
      -verosim_tbl <- tibble(p = seq(0.4, 0.7, 0.01)) %>% 
      -  mutate(log_verosim = log_verosim(p))
      -ggplot(verosim_tbl, aes(x = p, y = log_verosim)) +
      -  geom_line() +
      -  geom_segment(x = 75/120, xend = 75/120, y = -130, yend = log_verosim(75/120), colour = "red") +
      -  geom_segment(x = 0.5, xend = 0.5, y = -130, yend = log_verosim(0.5), colour = "gray") +
      -  geom_errorbar(aes(x = 0.5,  ymin = log_verosim(0.5), ymax = log_verosim(75/120)), 
      -               colour = "orange", width = 0.05) +
      -  annotate("text", x = 0.48, y = -81.5, label = "3.79") +
      -  annotate("text", x = 0.515, y = -91, label ="nula", colour = "gray20") +
      -  annotate("text", x = 0.665, y = -91, label ="max verosímil", colour = "red") +
      -  labs(subtitle = expression(paste(lambda, "=2(3.79)=7.58"))) 
      +
      log_verosim <- function(p){
      +  75 * log(p) + (120 - 75) * log(1 - p)
      +}
      +verosim_tbl <- tibble(p = seq(0.4, 0.7, 0.01)) |> 
      +  mutate(log_verosim = log_verosim(p))
      +ggplot(verosim_tbl, aes(x = p, y = log_verosim)) +
      +  geom_line() +
      +  geom_segment(x = 75/120, xend = 75/120, y = -130, yend = log_verosim(75/120), colour = "red") +
      +  geom_segment(x = 0.5, xend = 0.5, y = -130, yend = log_verosim(0.5), colour = "gray") +
      +  geom_errorbar(aes(x = 0.5,  ymin = log_verosim(0.5), ymax = log_verosim(75/120)), 
      +               colour = "orange", width = 0.05) +
      +  annotate("text", x = 0.48, y = -81.5, label = "3.79") +
      +  annotate("text", x = 0.515, y = -91, label ="nula", colour = "gray20") +
      +  annotate("text", x = 0.665, y = -91, label ="max verosímil", colour = "red") +
      +  labs(subtitle = expression(paste(lambda, "=2(3.79)=7.58"))) 

      Este método puede generalizarse para que no solo aplique a hipótesis nulas donde \(\theta = \theta_0\), sino en general, \(\theta \in \Theta_0\). @@ -793,29 +866,29 @@

      Distribución de referencia para pruebas de cocientes\(\lambda\):

      Ejemplo. Simulamos bajo la hipótesis nula como sigue:

      -
      n_volados <- 120 # número de volados
      -simulados_nula <- rbinom(4000, n_volados, p = 0.5)
      -lambda <- function(n, x, p_0 = 0.5){
      -  # estimador de max verosim
      -  p_mv <- x / n 
      -  # log verosimilitud bajo mv
      -  log_p_mv <- x * log(p_mv) + (n - x) * log(1 - p_mv)
      -  # log verosimllitud bajo nula
      -  log_p_nula <- x * log(p_0) + (n - x) * log(1 - p_0)
      -  lambda <- 2*(log_p_mv - log_p_nula)
      -  lambda
      -}
      -lambda_obs <- lambda(n_volados, 75, 0.5)
      -sims_tbl <- tibble(sim_x = simulados_nula) %>% 
      -  mutate(lambda = map_dbl(sim_x, ~ lambda(n_volados, .x, p_0 = 0.5)))
      -ggplot(sims_tbl, aes(x = lambda)) + 
      -  geom_histogram(binwidth = 0.7) +
      -  geom_vline(xintercept = lambda_obs, color = "red")
      +
      n_volados <- 120 # número de volados
      +simulados_nula <- rbinom(4000, n_volados, p = 0.5)
      +lambda <- function(n, x, p_0 = 0.5){
      +  # estimador de max verosim
      +  p_mv <- x / n 
      +  # log verosimilitud bajo mv
      +  log_p_mv <- x * log(p_mv) + (n - x) * log(1 - p_mv)
      +  # log verosimllitud bajo nula
      +  log_p_nula <- x * log(p_0) + (n - x) * log(1 - p_0)
      +  lambda <- 2*(log_p_mv - log_p_nula)
      +  lambda
      +}
      +lambda_obs <- lambda(n_volados, 75, 0.5)
      +sims_tbl <- tibble(sim_x = simulados_nula) |> 
      +  mutate(lambda = map_dbl(sim_x, ~ lambda(n_volados, .x, p_0 = 0.5)))
      +ggplot(sims_tbl, aes(x = lambda)) + 
      +  geom_histogram(binwidth = 0.7) +
      +  geom_vline(xintercept = lambda_obs, color = "red")

      Con esta aproximación a la distribución de referencia podemos calcular el valor p en nuestro ejemplo anterior:

      -
      valor_p <- mean(sims_tbl$lambda >= lambda_obs)
      -valor_p
      +
      valor_p <- mean(sims_tbl$lambda >= lambda_obs)
      +valor_p
      ## [1] 0.00675

      y observamos que tenemos evidencia fuerte en contra de la hipótesis nula: la moneda no está balanceada.

      @@ -824,56 +897,56 @@

      Distribución de referencia para pruebas de cocientes\(\mathsf{N}(\mu, 1)\), y queremos probar si \(\mu = 8\). Asumimos que el supuesto de normalidad y desviación estándar iugal a 1 se cumplen.

      -
      set.seed(3341)
      -n_muestra <- 100
      -muestra_1 <- rnorm(n_muestra, 7.9, 1)
      -
      crear_log_p <- function(x){
      -  # crear log verosim para dos muestras normales independientes.
      -  log_p <- function(params){
      -    mu <- params[1]
      -    log_vero <- dnorm(x, mean = mu, sd = 1, log = TRUE) %>% sum
      -    log_vero
      -  }
      -}
      -lambda_calc <- function(muestra, crear_log_p){
      -  log_p <- crear_log_p(muestra)
      -  res <- optim(c(0), log_p, control = list(fnscale = -1))
      -  lambda_mv <- log_p(res$par)
      -  lambda_nula <- log_p(8.0)
      -  lambda <- 2 * (lambda_mv - lambda_nula)
      -  lambda
      -}
      -lambda <- lambda_calc(muestra_1, crear_log_p)
      -lambda
      +
      set.seed(3341)
      +n_muestra <- 100
      +muestra_1 <- rnorm(n_muestra, 7.9, 1)
      +
      crear_log_p <- function(x){
      +  # crear log verosim para dos muestras normales independientes.
      +  log_p <- function(params){
      +    mu <- params[1]
      +    log_vero <- dnorm(x, mean = mu, sd = 1, log = TRUE) |> sum()
      +    log_vero
      +  }
      +}
      +lambda_calc <- function(muestra, crear_log_p){
      +  log_p <- crear_log_p(muestra)
      +  res <- optim(c(0), log_p, control = list(fnscale = -1))
      +  lambda_mv <- log_p(res$par)
      +  lambda_nula <- log_p(8.0)
      +  lambda <- 2 * (lambda_mv - lambda_nula)
      +  lambda
      +}
      +lambda <- lambda_calc(muestra_1, crear_log_p)
      +lambda
      ## [1] 2.101775

      Ahora construimos con simulación la distribución de referencia usando simulaciones bajo la nula

      -
      sims_nula <- map(1:10000, ~ rnorm(n_muestra, 8, 1))
      -lambda_nula_sim <- map_dbl(sims_nula, ~ lambda_calc(.x, crear_log_p))
      -tibble(lambda = lambda_nula_sim) %>% 
      -  ggplot(aes(x = lambda)) + geom_histogram() +
      -  geom_vline(xintercept = lambda, colour = "red") 
      +
      sims_nula <- map(1:10000, ~ rnorm(n_muestra, 8, 1))
      +lambda_nula_sim <- map_dbl(sims_nula, ~ lambda_calc(.x, crear_log_p))
      +tibble(lambda = lambda_nula_sim) |> 
      +  ggplot(aes(x = lambda)) + geom_histogram() +
      +  geom_vline(xintercept = lambda, colour = "red") 

      -
      valor_p <- mean(lambda_nula_sim >= lambda)
      -valor_p
      +
      valor_p <- mean(lambda_nula_sim >= lambda)
      +valor_p
      ## [1] 0.1537

      Estos datos muestran consistencia con la hipótesis \(\mu = 8\).

      Discusión: Nota en los dos ejemplos anteriores la similitud entre las distribuciones de referencia. En ambos casos, estas distribuciones resultan ser aproximadamente \(\chi\)-cuadrada con 1 grado de libertad (ji-cuadrada). Podemos checar para el último ejemplo:

      -
      teorica <- tibble(x = seq(0.1, 10, 0.01)) %>% 
      -  mutate(f_chi_1 = dchisq(x, df = 1))
      -tibble(lambda = lambda_nula_sim) %>% 
      -  ggplot() + geom_histogram(aes(x = lambda, y = ..density..), binwidth = 0.1) +
      -  geom_line(data = teorica, aes(x = x, y = f_chi_1), colour = "red") 
      +
      teorica <- tibble(x = seq(0.1, 10, 0.01)) |> 
      +  mutate(f_chi_1 = dchisq(x, df = 1))
      +tibble(lambda = lambda_nula_sim) |> 
      +  ggplot() + geom_histogram(aes(x = lambda, y = ..density..), binwidth = 0.1) +
      +  geom_line(data = teorica, aes(x = x, y = f_chi_1), colour = "red") 

      O mejor, con una gráfica de cuantiles de las simulaciones vs la téorica:

      -
      tibble(lambda = lambda_nula_sim) %>% 
      -  ggplot(aes(sample = lambda)) +
      -  geom_qq(distribution = stats::qchisq, dparams = list(df = 1)) +
      -  geom_qq_line(distribution = stats::qchisq, dparams = list(df = 1)) 
      +
      tibble(lambda = lambda_nula_sim) |> 
      +  ggplot(aes(sample = lambda)) +
      +  geom_qq(distribution = stats::qchisq, dparams = list(df = 1)) +
      +  geom_qq_line(distribution = stats::qchisq, dparams = list(df = 1)) 

      Este resultado asintótico no es trivial, y se usa comúnmente para calcular valores \(p\). Discutiremos más este punto más adelante.

      @@ -889,110 +962,110 @@

      Otro tipo de pruebas
      set.seed(223)
      -muestra_1 <- rnorm(80, 0.8, 0.2)
      -muestra_2 <- rnorm(120, 0.8, 0.4)
      +
      set.seed(223)
      +muestra_1 <- rnorm(80, 0.8, 0.2)
      +muestra_2 <- rnorm(120, 0.8, 0.4)

      Necesitamos: 1) calcular el valor de la estadística \(\lambda\) de cociente de verosimilitudes, 2) Calcular la distribución de referencia para \(\lambda\) bajo la hipótesis nula y finalmente 3) Ver qué tan extremo es el valor obtenido de \(\lambda\) en relación a la distribución de referencia.

      -
      crear_log_p <- function(x, y){
      -  # crear log verosim para dos muestras normales independientes.
      -  log_p <- function(params){
      -    mu_1 <- params[1]
      -    mu_2 <- params[2]
      -    sigma_1 <- params[3]
      -    sigma_2 <- params[4]
      -    log_vero_1 <- dnorm(x, mean = mu_1, sd = sigma_1, log = TRUE) %>% sum
      -    log_vero_2 <- dnorm(y, mean = mu_2, sd = sigma_2, log = TRUE) %>% sum
      -    log_vero <- log_vero_1 + log_vero_2 #se suman por independiencia
      -    log_vero
      -  }
      -}
      -log_p <- crear_log_p(muestra_1, muestra_2)
      -
      crear_log_p_nula <- function(x, y){
      -  log_p <- function(params){
      -    # misma media
      -    mu <- params[1]
      -    sigma_1 <- params[2]
      -    sigma_2 <- params[3]
      -    log_vero_1 <- dnorm(x, mean = mu, sd = sigma_1, log = TRUE) %>% sum
      -    log_vero_2 <- dnorm(y, mean = mu, sd = sigma_2, log = TRUE) %>% sum
      -    log_vero <- log_vero_1 + log_vero_2 #se suman por independiencia
      -    log_vero
      -  }
      -}
      -log_p_nula <- crear_log_p_nula(muestra_1, muestra_2)
      +
      crear_log_p <- function(x, y){
      +  # crear log verosim para dos muestras normales independientes.
      +  log_p <- function(params){
      +    mu_1 <- params[1]
      +    mu_2 <- params[2]
      +    sigma_1 <- params[3]
      +    sigma_2 <- params[4]
      +    log_vero_1 <- dnorm(x, mean = mu_1, sd = sigma_1, log = TRUE) |> sum()
      +    log_vero_2 <- dnorm(y, mean = mu_2, sd = sigma_2, log = TRUE) |> sum()
      +    log_vero <- log_vero_1 + log_vero_2 #se suman por independiencia
      +    log_vero
      +  }
      +}
      +log_p <- crear_log_p(muestra_1, muestra_2)
      +
      crear_log_p_nula <- function(x, y){
      +  log_p <- function(params){
      +    # misma media
      +    mu <- params[1]
      +    sigma_1 <- params[2]
      +    sigma_2 <- params[3]
      +    log_vero_1 <- dnorm(x, mean = mu, sd = sigma_1, log = TRUE) |> sum()
      +    log_vero_2 <- dnorm(y, mean = mu, sd = sigma_2, log = TRUE) |> sum()
      +    log_vero <- log_vero_1 + log_vero_2 #se suman por independiencia
      +    log_vero
      +  }
      +}
      +log_p_nula <- crear_log_p_nula(muestra_1, muestra_2)

      Ahora tenemos el problema de que no conocemos las sigma. Estas deben ser estimadas para después calcular el cociente de verosimilitud:

      -
      res <- optim(c(0, 0, 1, 1), log_p, method = "Nelder-Mead", 
      -             control = list(fnscale = -1))
      -res$convergence
      +
      res <- optim(c(0, 0, 1, 1), log_p, method = "Nelder-Mead", 
      +             control = list(fnscale = -1))
      +res$convergence
      ## [1] 0
      -
      est_mv <- res$par
      -names(est_mv) <- c("mu_1", "mu_2", "sigma_1", "sigma_2")
      -est_mv
      +
      est_mv <- res$par
      +names(est_mv) <- c("mu_1", "mu_2", "sigma_1", "sigma_2")
      +est_mv
      ##      mu_1      mu_2   sigma_1   sigma_2 
       ## 0.8153471 0.7819913 0.1987545 0.3940484

      Y tenemos

      -
      lambda_1 <- log_p(est_mv)
      -lambda_1
      +
      lambda_1 <- log_p(est_mv)
      +lambda_1
      ## [1] -42.76723

      Ahora calculamos el máximo bajo el supuesto de la hipótesis nula:

      -
      res <- optim(c(0, 1, 1), log_p_nula, method = "Nelder-Mead", 
      -             control = list(fnscale = -1))
      -res$convergence
      +
      res <- optim(c(0, 1, 1), log_p_nula, method = "Nelder-Mead", 
      +             control = list(fnscale = -1))
      +res$convergence
      ## [1] 0
      -
      est_mv_nula <- res$par
      -names(est_mv) <- c("mu", "sigma_1", "sigma_2")
      -est_mv_nula
      +
      est_mv_nula <- res$par
      +names(est_mv) <- c("mu", "sigma_1", "sigma_2")
      +est_mv_nula
      ## [1] 0.8062091 0.1989438 0.3948603

      y evaluamos

      -
      lambda_2 <- log_p_nula(est_mv_nula)
      -lambda_2
      +
      lambda_2 <- log_p_nula(est_mv_nula)
      +lambda_2
      ## [1] -43.07902

      Finalmente, nuestra estadística \(\lambda\) es

      -
      lambda <- 2 * (lambda_1 - lambda_2)
      -lambda
      +
      lambda <- 2 * (lambda_1 - lambda_2)
      +lambda
      ## [1] 0.6235661

      Y ahora necesitamos calcular un valor-\(p\). El problema que tenemos en este punto es que bajo la hipótesis nula no están determinados todos los parámetros, así que no podemos simular de manera simple muestras para obtener la distribución de referencia. Podemos sin embargo usar bootstrap paramétrico usando los estimadores de máxima verosimilitud bajo la nula

      -
      simular_boot <- function(n_1, n_2, est_mv_nula){
      -  x <- rnorm(n_1, est_mv_nula[1], est_mv_nula[2])
      -  y <- rnorm(n_2, est_mv_nula[1], est_mv_nula[3])
      -  list(x = x, y = y)
      -}
      -lambda_nula_sim <- function(est_mv_nula){
      -  muestras <- simular_boot(80, 120, est_mv_nula)
      -  x <- muestras$x
      -  y <- muestras$y
      -  log_p <- crear_log_p(x, y)
      -  log_p_nula <- crear_log_p_nula(x, y)
      -  est_1 <- optim(c(0,0,1,1), log_p, control = list(fnscale = -1))
      -  est_2 <- optim(c(0,1,1), log_p_nula, control = list(fnscale = -1))
      -  lambda <- 2*(log_p(est_1$par) - log_p_nula(est_2$par))
      -  lambda
      -}
      -lambda_sim <- map_dbl(1:2000, ~ lambda_nula_sim(est_mv_nula = est_mv_nula))
      +
      simular_boot <- function(n_1, n_2, est_mv_nula){
      +  x <- rnorm(n_1, est_mv_nula[1], est_mv_nula[2])
      +  y <- rnorm(n_2, est_mv_nula[1], est_mv_nula[3])
      +  list(x = x, y = y)
      +}
      +lambda_nula_sim <- function(est_mv_nula){
      +  muestras <- simular_boot(80, 120, est_mv_nula)
      +  x <- muestras$x
      +  y <- muestras$y
      +  log_p <- crear_log_p(x, y)
      +  log_p_nula <- crear_log_p_nula(x, y)
      +  est_1 <- optim(c(0,0,1,1), log_p, control = list(fnscale = -1))
      +  est_2 <- optim(c(0,1,1), log_p_nula, control = list(fnscale = -1))
      +  lambda <- 2*(log_p(est_1$par) - log_p_nula(est_2$par))
      +  lambda
      +}
      +lambda_sim <- map_dbl(1:2000, ~ lambda_nula_sim(est_mv_nula = est_mv_nula))

      Y graficamos la distribución de referencia junto con el valor de \(\lambda\) que obtuvimos:

      -
      tibble(lambda = lambda_sim) %>% 
      -  ggplot(aes(x = lambda)) +
      -  geom_histogram() +
      -  geom_vline(xintercept = lambda, colour = "red")
      +
      tibble(lambda = lambda_sim) |> 
      +  ggplot(aes(x = lambda)) +
      +  geom_histogram() +
      +  geom_vline(xintercept = lambda, colour = "red")

      Y claramente los datos son consistentes con medias iguales. El valor-\(p\) es

      -
      mean(lambda_sim > lambda)
      +
      mean(lambda_sim > lambda)
      ## [1] 0.4275

      Verificamos una vez más que la distribución de referencia es cercana a una \(\chi\)-cuadrada con un grado de libertad.

      -
      tibble(lambda = lambda_sim) %>% 
      -  ggplot(aes(sample = lambda)) +
      -  geom_qq(distribution = stats::qchisq, dparams = list(df = 1)) +
      -  geom_qq_line(distribution = stats::qchisq, dparams = list(df = 1))
      +
      tibble(lambda = lambda_sim) |> 
      +  ggplot(aes(sample = lambda)) +
      +  geom_qq(distribution = stats::qchisq, dparams = list(df = 1)) +
      +  geom_qq_line(distribution = stats::qchisq, dparams = list(df = 1))

      Esta es la definición generalizada de las pruebas de cociente de verosimilitudes

      @@ -1043,7 +1116,7 @@

      Otro tipo de pruebas
      pchisq(lambda, df =1, lower.tail = FALSE)
      +
      pchisq(lambda, df =1, lower.tail = FALSE)
      ## [1] 0.4297252

      que es similar al que obtuvimos con la estrategia del bootstrap paramétrico.

      @@ -1160,11 +1233,11 @@

      Errores tipo I y tipo II\[\beta(\mu) = \Phi \left (\frac{505 -\mu}{130/\sqrt{100}}\right ),\] donde \(\Phi\) es la función acumulada de la normal estándar. La gráfica de la función potencia es entonces

      -
      potencia_tbl <- tibble(mu = seq(450, 550, 1)) %>% 
      -  mutate(beta = pnorm((505 - mu)/13)) %>% # probabilidad de rechazar
      -  mutate(nula_verdadera = factor(mu >= 515)) # nula verdadera
      -ggplot(potencia_tbl, aes(x = mu, y = beta, colour = nula_verdadera)) +
      -  geom_line() 
      +
      potencia_tbl <- tibble(mu = seq(450, 550, 0.5)) |> 
      +  mutate(beta = pnorm((505 - mu)/13)) |> # probabilidad de rechazar
      +  mutate(nula_verdadera = factor(mu >= 515)) # nula verdadera
      +ggplot(potencia_tbl, aes(x = mu, y = beta, colour = nula_verdadera)) +
      +  geom_line() 

      Es decir, si la media \(\mu\) de la ciudad es muy baja, con mucha seguridad rechazamos. Si es relativamente alta entonces no rechazamos. El tamaño de la prueba es el mayor @@ -1173,7 +1246,7 @@

      Errores tipo I y tipo II\(\mu \geq 515\), entonces \[\beta(\mu) \leq \beta(515) = \Phi\left (\frac{505 -515}{130/\sqrt{100}}\right ) = \Phi( - 10 / 13) = \Phi(-0.7692)\] que es igual a

      -
      pnorm(-0.7692)
      +
      pnorm(-0.7692)
      ## [1] 0.2208873

      Y este es el tamaño de la prueba. En otras palabras: si la ciudad no está por debajo de la media nacional, hay una probabilidad de 22% de que erróneamente @@ -1188,14 +1261,14 @@

      Errores tipo I y tipo II\[0.05 = \alpha = \Phi \left ( \frac{C -515}{130/\sqrt{100}}\right) = \Phi \left( \frac{C- 515}{13} \right)\] Buscamos el cuantil 0.05 de la normal estándar, que es

      -
      z_alpha <- qnorm(0.05)
      -z_alpha
      +
      z_alpha <- qnorm(0.05)
      +z_alpha
      ## [1] -1.644854

      Y entonces requerimos que

      \[\frac{C- 515}{13} = -1.6448.\] Despejando obtenemos

      -
      C <- 13*z_alpha + 515
      -C
      +
      C <- 13*z_alpha + 515
      +C
      ## [1] 493.6169

      Así que podemos usar la región \(\bar{X} < 493.5\), que es más estricta que la anterior de \(\bar{X} < 505\).

      diff --git "a/m\303\251todos-de-cadenas-de-markov-monte-carlo.html" "b/m\303\251todos-de-cadenas-de-markov-monte-carlo.html" new file mode 100644 index 0000000..ed1a165 --- /dev/null +++ "b/m\303\251todos-de-cadenas-de-markov-monte-carlo.html" @@ -0,0 +1,2138 @@ + + + + + + + Sección 12 Métodos de Cadenas de Markov Monte Carlo | Fundamentos de Estadística con Remuestreo + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      + +
      + +
      + +
      +
      + + +
      +
      + +
      +
      +

      Sección 12 Métodos de Cadenas de Markov Monte Carlo

      +

      Hasta ahora, hemos considerado modelos bayesianos conjugados, donde la +posterior tiene una forma conocida. Esto nos permitió simular directamente +de la posterior usando las rutinas estándar de R, o utilizar cálculos teóricos +o funciones estándar de R para calcular resúmenes de interés, como medias o +medianas posteriores o intervalos de credibilidad.

      +

      Sin embargo, en aplicaciones rara vez es factible este tipo de análisis tan +simple, pues:

      +
        +
      1. Los modelos que estamos considerando son más complejos y la distribución posterior +conjunta de los parámetros no tiene una forma simple conocida.
      2. +
      3. Queremos usar distribuciones iniciales que no son conjugadas para utilizar correctamente +nuestra información inicial.
      4. +
      +

      Recordamos que tenemos expresiones explícitas para la inicial \(p(\theta)\) y la verosimilitud +\(p(x|\theta)\), así que conocemos explícitamente la posterior, módulo la constante de +normalización,

      +

      \[p(\theta|x) \propto p(x|\theta) \, p(\theta).\]

      +

      Supongamos por ejemplo que quisiéramos calcular las medias posteriores de los +parámetros \(\theta\). En teoría, tendríamos que calcular

      +

      \[\hat \theta = \mathbb{E}[{\theta}\, |\, x] = \int \theta \, p(\theta|x) \, d\theta\] +Entonces es necesario calcular también \(p(x)\), que resulta de la integral +\[p(x) = \int p(x|\theta) \, p(\theta)\, d\theta\]

      +

      Si no tenemos expresiones analíticas simples, tendremos que aproximar numéricamente +estas integrales de alguna forma.

      +
        +
      1. Si la posterior tiene una forma conocida, podemos calcular cantidades de interés usando +fórmulas o rutinas de simulación de distribuciones conocidas que producen muestras independientes.
      2. +
      +

      Cuando la posterior no tiene una forma conocida, sin embargo:

      +
        +
      1. Podemos intentar usar integración numérica usual. Como veremos, este enfoque no es muy escalable.
      2. +
      3. Podemos usar simulaciones bajo cadenas de Markov (Markov Chain Monte Carlo, MCMC), +que es un enfoque más escalable.
      4. +
      +

      Mucho del uso generalizado actual de la estadística bayesiana se debe a que gracias al +poder de cómputo disponible y los métodos MCMC, no estamos restringidos al uso de 1 y 2, +que tienen desventajas grandes. Primero mostraremos cómo el método de integración +por subdivisión no es escalable.

      +
      +

      Integrales mediante subdivisiones

      +

      Como tenemos una expresión analítica para el integrando, podemos intentar una +rutina numérica de integración. Una vez calculada, podríamos entonces +usar otra rutina numérica para calcular las medias posteriores \(\hat{\theta}\).

      +

      Las rutinas usuales de integración pueden sernos útiles cuando el número de parámetros +es chico. Consideremos primero el caso de 1 dimensión, y supongamos que \(a\leq\theta\leq b\).

      +

      Si dividimos el rango de \(\theta\) en intervalos determinados +por \(a = \theta^1<\theta^2<\cdots \theta^M =b\), tales que \(\Delta\theta = \theta^{i+1} -\theta^{i}\), +podríamos aproximar con

      +

      \[p(x) \approx \sum_{i=1}^M p(x|\theta^i)p(\theta^i) \Delta\theta\] +Lo que requiere \(M\) evaluaciones del factor \(p(x|\theta)p(\theta)\). Podríamos usar +por ejemplo \(M=100\) para tener precisión razonable.

      +
      +

      Ejemplo: estimación de una proporción

      +

      Teníamos que \(p(S_n = k|\theta) \propto \theta^k(1-\theta)^{n-k}\) cuando observamos \(k\) éxitos +en \(n\) pruebas independientes. Supongamos que nuestra inicial es \(p(\theta) = 2\theta\) +(checa que es una densidad), es decir, creemos que es más probable a priori +observar proporciones altas. Podemos integrar numéricamente

      +
      crear_log_post <- function(n, k){
      +  function(theta){
      +    verosim <- k * log(theta) + (n - k) * log(1 - theta)
      +    inicial <- log(theta)
      +    log_p_factor <- verosim + inicial
      +    log_p_factor
      +  }
      +}
      +# observamos 3 éxitos en 4 pruebas:
      +log_post <- crear_log_post(4, 3)
      +prob_post <- function(x) { exp(log_post(x))}
      +# integramos numéricamente
      +p_x <- integrate(prob_post, lower = 0, upper = 1, subdivisions = 100L)
      +p_x
      +
      ## 0.03333333 with absolute error < 3.7e-16
      +

      Y ahora podemos calcular la media posterior:

      +
      media_funcion <- function(theta){
      +  theta * prob_post(theta) / p_x$value
      +}
      +integral_media <- integrate(media_funcion, lower = 0, upper = 1, subdivisions = 100L)
      +media_post <- integral_media$value 
      +media_post
      +
      ## [1] 0.7142857
      +

      Podemos verificar nuestro trabajo pues sabemos que la posterior es \(\mathsf{Beta}(5, 2)\) +cuya media es

      +
      5/(2+5)
      +
      ## [1] 0.7142857
      +

      Y podríamos intentar una estrategia similar, por ejemplo, para calcular intervalos +de credibilidad. Sin embargo, veremos abajo que este método no escala con el número de +parámetros.

      +
      +
      +

      Más de un parámetro

      +

      Ahora supongamos que tenemos \(2\) parámetros. Dividiríamos cada parámetro +en 100 intervalos, y luego tendríamos que calcular

      +

      \[p(x) \approx \sum_{i=1}^M \sum_{j=1}^M p(x|\theta_1^i, \theta_2^j)p(\theta_1^i, \theta_2^j) \Delta\theta_1\Delta\theta_2\] +Y esto requeriría \(M^2 = 10,000\) evaluaciones de \(p(x|\theta)p(\theta)\).

      +

      Si tenemos \(p\) parámetros, entonces tendríamos que hacer \(M^p\) evaluaciones de la +posterior. Incluso cuando \(p=10\), esta estrategia es infactible, pues tendríamos +que hacer más de millones de millones de millones de evaluaciones de la posterior. Si sólo +tenemos esta técnica disponible, el análisis bayesiano está considerablemente +restringido. Regresión bayesiana con unas 10 covariables por ejemplo, no podría hacerse.

      +

      De modo que tenemos que replantearnos cómo atacar el problema de calcular o aproximar +estas integrales.

      +
      +
      +
      +

      Métodos Monte Carlo

      +

      En varias ocasiones anteriormente hemos usado el método Monte Carlo para +aproximar integrales: por ejemplo, para calcular medias posteriores.

      +

      Supongamos que tenemos una densidad \(p(\theta)\).

      + +
      +

      Integración Monte Carlo. Supongamos que queremos calcular el valor esperado de +\(g(X)\), donde \(X\sim p(X\,|\,\theta).\) Es decir, la variable aleatoria \(X\) se +distribuye de acuerdo al modelo probabilistico \(p(X \, | \, \theta),\) de tal forma que +lo que nos interesa calcular es

      +

      \[\mathbb{E}[g(X)] = \int g(x) p(x|\theta)\, dx.\]

      +

      Si tomamos una muestra +\(x^{(1)},x^{(2)}, \ldots x^{(N)} \overset{iid}{\sim} p(x|\theta)\), entonces

      +

      \[\mathbb{E}[g(X)] \approx \, \frac1N \, \sum_{n = 1}^N g(x^{(n)})\]

      +cuando \(N\) es grande. +
      +

      Esto es simplemente una manera de escribir la ley de los grandes números, y hemos +aplicado este teorema en varias ocasiones. Nos ha sido útil cuando +sabemos cómo simular de distribución \(p(\theta | x)\) (usando alguna rutina de R, por +ejemplo, o usando un método estándar como inversión de la función de distribución acumulada).

      +
      +

      Ejemplo

      +

      En este ejemplo repetimos cosas que ya hemos visto. En el caso de estimación +de una proporción \(\theta\), tenemos como inicial +\(p(\theta) \propto \theta\), que es \(\mathsf{Beta}(2,1)\). Si observamos 3 éxitos en 4 pruebas, +entonces sabemos que la posterior es \(p(\theta|x)\propto \theta^4(1-\theta)\), que +es \(\mathsf{Beta}(5, 2)\). Si queremos calcular media y segundo momento posterior para \(\theta\), +en teoría necesitamos calcular

      +

      \[\mu = \int_0^1 \theta p(\theta|X = 3)\, d\theta,\,\, \mu_2=\int_0^1 \theta^2 p(\theta|X = 3)\, d\theta\]

      +

      integramos con Monte Carlo

      +
      theta <- rbeta(10000, 5, 2)
      +media_post <- mean(theta)
      +momento_2_post <- mean(theta^2)
      +c(media_post, momento_2_post)
      +
      ## [1] 0.7155559 0.5372170
      +

      Y podemos aproximar de esta manera cualquier cantidad de interés que esté basada +en integrales, como probabilidades asociadas a \(\theta\) o cuantiles asociados. +Por ejemplo, podemos aproximar fácilmente \(P(e^{\theta}> 2|x)\) haciendo

      +
      mean(exp(theta) > 2)
      +
      ## [1] 0.5958
      +

      y así sucesivamente.

      +

      Este enfoque, sin embargo, es mucho más flexible y poderoso.

      +
      +
      +

      Ejemplo: varias pruebas independientes

      +

      Supongamos que probamos el nivel de gusto para 4 sabores distintos de una paleta. Usamos +4 muestras de aproximadamente +50 personas diferentes para cada sabor, y cada uno evalúa si le gustó mucho o no. +Obtenemos los siguientes resultados:

      +
      datos <- tibble(
      +  sabor = c("fresa", "limón", "mango", "guanábana"),
      +  n = c(50, 45, 51, 50), gusto = c(36, 35, 42, 29)) %>% 
      +  mutate(prop_gust = gusto / n)
      +datos
      +
      ## # A tibble: 4 × 4
      +##   sabor         n gusto prop_gust
      +##   <chr>     <dbl> <dbl>     <dbl>
      +## 1 fresa        50    36     0.72 
      +## 2 limón        45    35     0.778
      +## 3 mango        51    42     0.824
      +## 4 guanábana    50    29     0.58
      +

      Usaremos como inicial \(\mathsf{Beta}(2, 1)\) (pues hemos obervado cierto sesgo de +cortesía en la calificación de sabores, y no es tan probable tener valores muy +bajos) para todos los sabores, es decir \(p(\theta_i)\) es la funcion de densidad +de una \(\mathsf{Beta}(2, 1)\). La inicial conjunta la definimos entonces, usando +idependiencia inicial, como

      +

      \[p(\theta_1,\theta_2, \theta_3,\theta_4) = p(\theta_1)p(\theta_2)p(\theta_3)p(\theta_4).\] +Pues inicialmente establecemos que ningún parámetro da información sobre otro: +saber que mango es muy gustado no nos dice nada acerca del gusto por fresa. Bajo +este supuesto, y el supuesto adicional de que las muestras de cada sabor son +independientes, podemos mostrar que las posteriores son independientes:

      +

      \[p(\theta_1,\theta_2,\theta_3, \theta_4|k_1,k_2,k_3,k_4) = p(\theta_4|k_1)p(\theta_4|k_2)p(\theta_4|k_3)p(\theta_4|k_4)\]

      +

      De forma que podemos trabajar individualmente con cada muestra. Calculamos los parámetros de las posteriores individuales:

      +
      datos <- datos %>% 
      +  mutate(a_post = gusto + 2, b_post = n - gusto + 1)
      +datos
      +
      ## # A tibble: 4 × 6
      +##   sabor         n gusto prop_gust a_post b_post
      +##   <chr>     <dbl> <dbl>     <dbl>  <dbl>  <dbl>
      +## 1 fresa        50    36     0.72      38     15
      +## 2 limón        45    35     0.778     37     11
      +## 3 mango        51    42     0.824     44     10
      +## 4 guanábana    50    29     0.58      31     22
      +

      Ahora nos preguntamos, ¿cuál es la probabilidad posterior de que mango sea el sabor +más preferido de la población? Conocemos la posterior para cada parámetro, y sabemos +que los parámetros son independientes para la posterior. Eso quiere decir +que podemos simular de cada parámetro independientemente para obtener simulaciones +de la conjunta posterior.

      +
      simular_conjunta <- function(rep, datos){
      +  datos %>% mutate(valor_sim = map2_dbl(a_post, b_post, ~ rbeta(1, .x, .y))) %>% 
      +    select(sabor, valor_sim) 
      +}
      +simular_conjunta(1, datos) 
      +
      ## # A tibble: 4 × 2
      +##   sabor     valor_sim
      +##   <chr>         <dbl>
      +## 1 fresa         0.755
      +## 2 limón         0.783
      +## 3 mango         0.819
      +## 4 guanábana     0.569
      +
      # esta no es una manera muy rápida, podríamos calcular todas las
      +# simulaciones de cada parámetro de manera vectorizada
      +sims_posterior <- tibble(rep = 1:5000) %>% 
      +  mutate(sims = map(rep, ~ simular_conjunta(.x, datos))) %>% 
      +  unnest(cols = sims)
      +sims_posterior
      +
      ## # A tibble: 20,000 × 3
      +##      rep sabor     valor_sim
      +##    <int> <chr>         <dbl>
      +##  1     1 fresa         0.732
      +##  2     1 limón         0.831
      +##  3     1 mango         0.850
      +##  4     1 guanábana     0.397
      +##  5     2 fresa         0.670
      +##  6     2 limón         0.839
      +##  7     2 mango         0.664
      +##  8     2 guanábana     0.558
      +##  9     3 fresa         0.671
      +## 10     3 limón         0.758
      +## # ℹ 19,990 more rows
      +

      Y ahora podemos aproximar fácilmente la probabilidad de interés:

      +
      sims_posterior %>% 
      +  group_by(rep) %>% 
      +  mutate(sabor = sabor[which.max(valor_sim)]) %>% 
      +  group_by(sabor) %>% 
      +  count() %>% 
      +  ungroup() %>% 
      +  mutate(prop = n / sum(n))
      +
      ## # A tibble: 4 × 3
      +##   sabor         n   prop
      +##   <chr>     <int>  <dbl>
      +## 1 fresa      1264 0.0632
      +## 2 guanábana     8 0.0004
      +## 3 limón      5396 0.270 
      +## 4 mango     13332 0.667
      +

      Y vemos que los mejores sabores son mango y limón. La probabilidad posterior de +que mango sea el sabor preferido por la población es de 66%. La integral correspondiente +no es trivial.

      + +
      +
        +
      • ¿Cuáles son las probabilidades a priori de que cada sabor sea el preferido +por la población?
      • +
      • ¿Cuál es la integral correspondiente a las probabilidades que acabamos de calcular? +¿Qué tan fácil es hacer esta integral de manera analítica?
      • +
      • Calcula la probabilidad de que mango sea preferido a limón?
      • +
      • ¿Qué conclusión práctica sacas de estos resultados? +
      +

    + + +
    +

    Simulando de la posterior

    +

    Hemos establecido que podemos contestar varias preguntas de inferencia +usando simulación Monte Carlo, y que este enfoque es potencialmente +escalable (en contraste con métodos de integración numérica por cuadrícula). Ahora +el problema que necesitamos resolver es el siguiente:

    +
      +
    • Conocemos \(p(\theta |x)\) módulo una constante de integración.
    • +
    • En general, \(p(\theta|x)\) no tiene una forma reconocible que corresponda a un +simulador estándar.
    • +
    • ¿Cómo simulamos de esta posterior cuando sólo sabemos calcular \(p(x|\theta)p(\theta)\)?
    • +
    +

    Hay varias maneras de hacer esto. Presentaremos los algoritmos en términos +de una distribución cualquiera \(p(\theta) = K f(\theta)\), donde sólo conocemos +la función \(f(\theta)\).

    +
    +
    +

    12.1 Ejemplo de islas

    +

    Comenzamos revisando el ejemplo de las islas en Kruschke (2015) (7.2) para tener más intuición de cómo funciona este algoritmo.

    +
    +
    +

    ¿Por qué funciona Metrópolis?

    +

    Supongamos que un vendedor de Yakult trabaja a lo largo de una cadena de +islas:

    +
      +
    • Constantemente viaja entre las islas ofreciendo sus productos;

    • +
    • Al final de un día de trabajo decide si permanece en la misma isla o se +transporta a una de las \(2\) islas vecinas;

    • +
    • El vendedor ignora la distribución de la población en las islas y el número +total de islas; sin embargo, una vez que se encuentra en una isla puede +investigar la población de la misma y también de la isla a la que se propone +viajar después.

    • +
    • El objetivo del vendedor es visitar las islas de manera proporcional a la +población de cada una. Con esto en mente el vendedor utiliza el siguiente +proceso:

      +
        +
      1. Lanza un volado, si el resultado es águila se propone ir a la isla +del lado izquierdo de su ubicación actual y si es sol a la del lado derecho.
      2. +
      3. Si la isla propuesta en el paso anterior tiene población mayor a la +población de la isla actual, el vendedor decide viajar a ella. Si la isla vecina +tiene población menor, entonces visita la isla propuesta con una probabilidad que +depende de la población de las islas. Sea \(P^*\) la población de la isla +propuesta y \(P_{t}\) la población de la isla actual. Entonces el vendedor +cambia de isla con probabilidad +\[q_{mover}=P^*/P_{t}\]
      4. +
    • +
    +

    A la larga, si el vendedor sigue la heurística anterior la probabilidad de que +el vendedor este en alguna de las islas coincide con la población relativa de +la isla.

    +
    islas <- tibble(islas = 1:10, pob = 1:10)
    +camina_isla <- function(i){ # i: isla actual
    +    u <- runif(1) # volado
    +    v <- ifelse(u < 0.5, i - 1, i + 1)  # isla vecina (índice)
    +    if (v < 1 | v > 10) { # si estás en los extremos y el volado indica salir
    +      return(i)
    +    }
    +    p_move = ifelse(islas$pob[v] > islas$pob[i], 1, islas$pob[v] / islas$pob[i])
    +    u2 <- runif(1)
    +    if (p_move  > u2) {
    +        return(v) # isla destino
    +    }
    +    else {
    +      return(i) # me quedo en la misma isla
    +    }
    +}
    +pasos <- 100000
    +iteraciones <- numeric(pasos)
    +iteraciones[1] <- sample(1:10, 1) # isla inicial
    +for (j in 2:pasos) {
    +    iteraciones[j] <- camina_isla(iteraciones[j - 1])
    +}
    +caminata <- tibble(pasos = 1:pasos, isla = iteraciones)
    +plot_caminata <- ggplot(caminata[1:1000, ], aes(x = pasos, y = isla)) +
    +    geom_point(size = 0.8) +
    +    geom_path(alpha = 0.5) +
    +    coord_flip() + 
    +    labs(title = "Caminata aleatoria") +
    +    scale_y_continuous(expression(theta), breaks = 1:10) +
    +    scale_x_continuous("Tiempo")
    +plot_dist <- ggplot(caminata, aes(x = isla)) +
    +    geom_histogram() +
    +    scale_x_continuous(expression(theta), breaks = 1:10) +
    +    labs(title = "Distribución objetivo", 
    +       y = expression(P(theta)))
    +plot_caminata / plot_dist
    +

    +

    Entonces:

    +
      +
    • Para aproximar la distribución objetivo debemos permitir que el vendedor +recorra las islas durante una sucesión larga de pasos y registramos sus visitas.

    • +
    • Nuestra aproximación de la distribución es justamente el registro de sus +visitas.

    • +
    • Más aún, debemos tener cuidado y excluir la porción de las visitas que se +encuentran bajo la influencia de la posición inicial. Esto es, debemos excluir +el periodo de calentamiento.

    • +
    • Una vez que tenemos un registro largo de los viajes del vendedor (excluyendo +el calentamiento) podemos aproximar la distribución objetivo +simplemente contando el número relativo de veces que el vendedor visitó +dicha isla.

    • +
    +
    t <- c(1:10, 20, 50, 100, 200, 1000, 5000)
    +plots_list <- map(t, function(i){
    +    ggplot(caminata[1:i, ], aes(x = isla)) +
    +        geom_histogram() +
    +        labs(y = "", x = "", title = paste("t = ", i, sep = "")) +
    +        scale_x_continuous(expression(theta), breaks = 1:10, limits = c(0, 11))
    +})
    +wrap_plots(plots_list)
    +

    +

    Escribamos el algoritmo, para esto indexamos las islas por el valor +\(\theta\), es así que la isla del extremo oeste corresponde a \(\theta=1\) y la +población relativa de cada isla es \(P(\theta)\):

    +
      +
    1. El vendedor se ubica en \(\theta^{(i)}\) y propone moverse a la izquierda +o derecha con probabilidad \(0.5\).
      +El rango de los posibles valores para moverse, y la probabilidad de proponer +cada uno se conoce como distribución propuesta, en nuestro ejemplo sólo +toma dos valores cada uno con probabilidad \(0.5\).

    2. +
    3. Una vez que se propone un movimiento, decidimos si aceptarlo. La decisión de +aceptar se basa en el valor de la distribución objetivo en la posición +propuesta, relativo al valor de la distribución objetivo en la posición actual: +\[\alpha=\min\bigg\{\frac{P(\theta^*)}{P(\theta^{(i)})},1\bigg\},\] +donde \(\alpha\) denota la probabilidad de hacer el cambio de isla.

    4. +
    +

    Notemos que la distribución objetivo \(P(\theta)\) no necesita estar normalizada, +esto es porque lo que nos interesa es el cociente \(P(\theta^*)/P(\theta^{(i)})\).

    +
      +
    1. Una vez que propusimos un movimiento y calculamos la probabilidad de aceptar +el movimiento aceptamos o rechazamos el movimiento generando un valor de una +distribución uniforme, si dicho valor es menor a la probabilidad de cambio, +\(\alpha,\) entonces hacemos el movimiento.
    2. +
    +

    Entonces, para utilizar el algoritmo necesitamos ser capaces de:

    +
      +
    • Generar un valor de la distribución propuesta, que hemos denotado por \(q,\) +(para crear \(\theta^*\)).

    • +
    • Evaluar la distribución objetivo en cualquier valor propuesto (para calcular +\(P(\theta^*)/P(\theta^{(i)})\)).

    • +
    • Generar un valor uniforme (para movernos con probabilidad \(\alpha\)).

    • +
    +

    Las \(3\) puntos anteriores nos permiten generar muestras aleatorias de la +distribución objetivo, sin importar si esta está normalizada. Esta técnica es +particularmente útil cuando cuando la distribución objetivo es una posterior +proporcional a \(p(x|\theta)p(\theta)\).

    +

    Para entender porque funciona el algoritmo de Metrópolis hace falta entender \(2\) +puntos, primero que la distribución objetivo es estable: si la probabilidad +actual de ubicarse en una posición coincide con la probabilidad en la +distribución objetivo, entonces el algoritmo preserva las probabilidades.

    +
    library(expm)
    +transMat <- function(P){ # recibe vector de probabilidades (o población)
    +    T <- matrix(0, 10, 10)
    +    n <- length(P - 1) # número de estados
    +    for (j in 2:n - 1) { # llenamos por fila
    +        T[j, j - 1] <- 0.5 * min(P[j - 1] / P[j], 1)
    +        T[j, j] <- 0.5 * (1 - min(P[j - 1] / P[j], 1)) + 
    +                   0.5 * (1 - min(P[j + 1] / P[j], 1))
    +        T[j, j + 1] <- 0.5 * min(P[j + 1] / P[j], 1)
    +    }
    +    # faltan los casos j = 1 y j = n
    +    T[1, 1] <- 0.5 + 0.5 * (1 - min(P[2] / P[1], 1))
    +    T[1, 2] <- 0.5 * min(P[2] / P[1], 1)
    +    T[n, n] <- 0.5 + 0.5 * (1 - min(P[n - 1] / P[n], 1))
    +    T[n, n - 1] <- 0.5 * min(P[n - 1] / P[n], 1)
    +    T
    +}
    +T <- transMat(islas$pob)
    +w <- c(0, 1, rep(0, 8))
    +t <- c(1:10, 20, 50, 100, 200, 1000, 5000)
    +expT <- map_df(t, ~data.frame(t = ., w %*% (T %^% .)))
    +expT_long <- expT %>%
    +    gather(theta, P, -t) %>% 
    +    mutate(theta = parse_number(theta))
    +ggplot(expT_long, aes(x = theta, y = P)) +
    +    geom_bar(stat = "identity", fill = "darkgray") + 
    +    facet_wrap(~ t) +
    +    scale_x_continuous(expression(theta), breaks = 1:10, limits = c(0, 11))
    +

    +

    El segundo punto es que el proceso converge a la distribución objetivo. +Podemos ver, (en nuestro ejemplo sencillo) que sin importar el punto de inicio +se alcanza la distribución objetivo.

    +
    inicio_p <- function(i){
    +    w <- rep(0, 10)
    +    w[i] <- 1
    +    t <- c(1, 10, 50, 100)
    +    exp_t <- map_df(t, ~ data.frame(t = .x, inicio = i, w %*% (T %^% .))) %>%
    +        gather(theta, P, -t, -inicio) %>% 
    +        mutate(theta = parse_number(theta))
    +    exp_t
    +}
    +exp_t <- map_df(c(1, 3, 5, 9), inicio_p)
    +ggplot(exp_t, aes(x = as.numeric(theta), y = P)) +
    +    geom_bar(stat = "identity", fill = "darkgray") + 
    +    facet_grid(inicio ~ t) +
    +    scale_x_continuous(expression(theta), breaks = 1:10, limits = c(0, 11))
    +

    +
    +
    +

    Método de Metrópolis

    +

    En el método de Metrópolis, uno de los más antiguos, comenzamos +con un valor inicial de los parámetros \(\theta^{(0)}\) en el soporte de \(p(\theta)\), +es decir \(p(\theta^{(0)})>0.\)

    +

    Para \(i=1, \ldots, M\), hacemos:

    +
      +
    1. Partiendo de \(\theta^{(i)}\), hacemos un salto +corto en una dirección al azar para obtener una propuesta \(\theta^* \sim q(\theta \, |\, \theta^{(i)}).\)
    2. +
    3. Aceptamos or rechazamos el salto:
    4. +
    +
      +
    • Si \(\alpha = \frac{f(\theta^*)}{f(\theta^{(i)})} \geq 1\), aceptamos el salto +y ponemos \(\theta^{(i+1)}=\theta^*\). Regresamos a 1 para la siguiente +iteración \(i\leftarrow i + 1.\)
    • +
    • Si \(\alpha = \frac{f(\theta^*)}{f(\theta^{(i)})} < 1\), entonces aceptamos +con probabilidad \(\alpha\) el salto, ponemos \(\theta^{(i+1)}=\theta^*\) y +regresamos a 1 para la siguiente iteración \(i\leftarrow i + 1\). Si rechazamos +el salto, ponemos entonces \(\theta^{(i+1)}=\theta^{(i)}\) y regresamos a 1 para +la siguiente iteración \(i\leftarrow i + 1.\)
    • +
    +

    Requerimos también que la función que propone los saltos sea simétrica: es +decir, \(q(\theta^*|\theta^{(i)})\) debe ser igual a \(q(\theta^{(i)}|\theta^*)\). +Se puede modificar el algoritmo para tratar con una propuesta que no sea +simétrica.

    +

    Una elección común es escoger \(q(\theta^* |\theta^{(i)})\) como +una \(\mathsf{N}(\theta^{(i)}, \sigma_{salto})\).

    +
    +

    +En este curso, escribiremos varios métodos de cadenas de Markov para +estimación Monte Carlo (Markov Chain Monte Carlo, MCMC) desde +cero para entender los básicos de cómo funciona. Sin embargo, en +la práctica no hacemos esto, sino que usamos software estándar +(Stan, JAGS, BUGS, etc.) para hacer este trabajo. +

    +

    +Expertos en MCMC, métodos numéricos, y estadística a +veces escriben partes de sus rutinas de simulación, y pueden lograr +mejoras de desempeño considerables. Excepto para modelos simples, esto +no es trivial de hacer garantizando resultados correctos. +

    +
    +

    En resumen, todo el código de esta sección es de carácter ilustrativo. +Utiliza implementaciones establecidas en las aplicaciones.

    +

    Abajo implementamos el algoritmo con un salto de tipo normal:

    +
    crear_metropolis <- function(fun_log, sigma_salto = 0.1){
    +  # la entrada es la log posterior
    +  iterar_metropolis <- function(theta_inicial, n){
    +    p <- length(theta_inicial)
    +    nombres <- names(theta_inicial)
    +    iteraciones <- matrix(0, nrow = n, ncol = p)
    +    colnames(iteraciones) <- nombres
    +    iteraciones[1,] <- theta_inicial
    +    for(i in 2:n){
    +      theta <- iteraciones[i - 1, ]
    +      theta_prop <- theta + rnorm(p, 0, sigma_salto)
    +      # exp(log(p) - log(q)) = p/q
    +      cociente <- exp(fun_log(theta_prop) - fun_log(theta))
    +      if(cociente >= 1 || runif(1,0,1) < cociente){
    +        iteraciones[i, ] <- theta_prop
    +      } else {
    +        iteraciones[i, ] <- theta  
    +      } 
    +    }
    +    iteraciones_tbl <- iteraciones %>% 
    +      as_tibble() %>%  
    +      mutate(iter_num = row_number()) %>% 
    +      select(iter_num, everything())
    +    iteraciones_tbl
    +  }
    +  iterar_metropolis
    +}
    +

    E intentamos simular de una exponencial no normalizada:

    +
    exp_no_norm <- function(x) {
    +  z <- ifelse(x > 0, exp(-0.5 * x), 0)
    +  log(z)
    +}
    +
    +iterador_metro <- crear_metropolis(exp_no_norm, sigma_salto = 0.25)
    +sims_tbl <- iterador_metro(c(theta = 0.5), 50000)
    +ggplot(sims_tbl, aes(x = theta)) + geom_histogram()
    +

    +

    Ahora probemos con una \(\mathsf{Beta}(3, 2):\)

    +
    beta_no_norm <- function(x) {
    +  z <- ifelse(x > 0 && x < 1, (x^2)*(1-x), 0)
    +  log(z)
    +}
    +
    +iterador_metro <- crear_metropolis(beta_no_norm, sigma_salto = 0.04)
    +sims_metro_tbl <- iterador_metro(c(theta = 0.5), 50000)
    +sims_indep_tbl <- tibble(iter_num = 1:30000, theta = rbeta(30000, 3, 2))
    +g_1 <- ggplot(sims_metro_tbl, aes(x = theta)) + geom_histogram() +
    +  labs(subtitle = "Metrópolis")
    +g_2 <- ggplot(sims_indep_tbl, aes(x = theta)) + 
    +  geom_histogram() +
    +  labs(subtitle = "rbeta")
    +g_1 + g_2
    +

    +Y vemos que esto funciona.

    +

    Nótese sin embargo un aspecto de estas simulaciones que no habíamos encontrado +en el curso. Aunque la distribución final de las simulaciones es muy cercana +a la de la distribución que queremos simular, lo cual era nuestro propósito, +las simulaciones no son extracciones independientes de esa distribución.

    +

    La construcción del algoritmo muestra eso, pero podemos también graficar las +simulaciones:

    +
    g_metropolis <- sims_metro_tbl %>% 
    +  filter(iter_num < 500) %>% 
    +  ggplot(aes(x = iter_num, y = theta)) +
    +  geom_line() + labs(subtitle = "Metrópolis")
    +g_indep <- sims_indep_tbl %>% 
    +  filter(iter_num < 500) %>% 
    +  ggplot(aes(x = iter_num, y = theta)) +
    +  geom_line() + labs(subtitle = "Independientes")
    +g_metropolis + g_indep
    +

    +

    Donde vemos claramente que las simulaciones de metropolis están autocorrelacionadas: +la siguiente simulación depende de la anterior. Esto define una cadena de Markov.

    +

    En cualquiera de los dos casos, como vimos en los histogramas de arriba, +las simulaciones “visitan” cada parte [0,1] de manera proporcional a la densidad, +de manera que podemos usar ambos tipos de simulaciones para aproximar la integral +o cantidad que nos interesa. Por ejemplo, la media posterior es:

    +
    media_1 <- sims_metro_tbl %>% summarise(media_post = mean(theta)) %>% pull(media_post)
    +media_2 <- sims_indep_tbl %>% summarise(media_post = mean(theta)) %>% pull(media_post)
    +media_exacta <- 3/(3 + 2)
    +tibble(metodo = c("sim Metrópolis", "sim Independiente", "exacto"),
    +       media_post = c(media_1, media_2, media_exacta))
    +
    ## # A tibble: 3 × 2
    +##   metodo            media_post
    +##   <chr>                  <dbl>
    +## 1 sim Metrópolis         0.605
    +## 2 sim Independiente      0.602
    +## 3 exacto                 0.6
    +
    +

    +Supongamos que queremos simular de una distribución \(p(\theta)\), pero sólo conocemos \(p(\theta)\) módulo una constante. Bajo +ciertas condiciones de regularidad: +

    +

    +El algoritmo Metrópolis para la distribución \(p(\theta)\) define una cadena de +Markov cuya distribución a largo plazo es \(p(\theta)\). Esto implica que si \(\theta^{(1)},\theta^{(2)}, \ldots, \theta^{(M)}\) es una simulación de esta cadena, y \(M\) es suficientemente grande +

    +
      +
    1. +La distribución de las \(\theta^{(i)}\) es aproximadamente \(p(\theta)\), +
    2. +
    3. +Tenemos que \[ \frac1M \sum_{m = 1}^M +h(\theta^{(m)}) \to \int h(\theta)p(\theta)\, d\theta\] cuando +\(M\to \infty\) +
    4. +
    +
    +

    Observaciones:

    +
      +
    1. Aunque hay distintas condiciones de regularidad que pueden funcionar, +generalmente el supuesto es que la cadena de Markov construída es +ergódica, y hay varias +condiciones que garantizan esta propiedad. Una condición simple, por ejemplo, es +que el soporte de la distribución \(p(\theta)\) es un conjunto conexo del espacio +de parámetros.

    2. +
    3. Más crucialmente, este resultado no dice qué tan grande debe ser \(M\) para que +la aproximación sea buena. Esto depende de cómo es \(p(\theta)\), y de la +distribución que se utiliza para obtener los saltos propuestos. Dependiendo de +estos dos factores, la convergencia puede ser rápida (exponencial) o tan lenta +que es infactible usarla. Más adelante veremos diagnósticos para descartar los +peores casos de falta de convergencia.

    4. +
    +
    +
    +

    Ajustando el tamaño de salto

    +

    En el algoritmo Metrópolis, generalmente es importante escoger la +dispersión de la distribución que genera propuestas con cuidado.

    +
      +
    • Si la dispersión de la propuesta es demasiado grande, tenderemos a rechazar mucho, +y la convergencia será lenta.
    • +
    • Si la dispersión de la propuesta es demasiado chica, tardaremos mucho tiempo +en explorar las distintas partes de la distribución objetivo.
    • +
    +
    +

    Ejemplo

    +

    Supongamos que queremos simular usando metróplis de una distribución +\(\textsf{Gamma}(20, 100)\). Abajo vemos la forma de esta distribución:

    +
    sim_indep <- tibble(theta = rgamma(10000, 20, 100))
    +ggplot(sim_indep, aes(x = theta)) + geom_histogram()
    +

    +
    # logaritmo de densidad no normalizada
    +log_f_dist <- function(x) 210 + dgamma(x, 20, 100, log = TRUE)
    +# iterar
    +iterador_metro_chico <- crear_metropolis(log_f_dist, sigma_salto = 0.001)
    +sims_chico_tbl <- iterador_metro_chico(c(theta = 0.02), 50000)
    +g_sim <- ggplot(sims_chico_tbl %>% filter(iter_num < 3000), aes(x = iter_num, y = theta)) + geom_line() + ylim(c(0, 0.5))
    +dist_bplot <- ggplot(tibble(x = rgamma(10000, 20, 100)), aes(y = x, x = "a")) + geom_violin() + ylab("") + ylim(0, 0.5)
    +g_sim + dist_bplot + plot_layout(widths = c(5, 1))
    +

    +

    Nótese que después de 5 mil iteraciones estamos muy lejos de tener una muestra +que se aproxime a la distribución objetivo. Empezamos en un lugar bajo, y la +cadena sólo ha ido lentamente hacia las zonas de alta densidad. Cualquier +resumen con esta cadena estaría fuertemente sesgado al valor donde iniciamos la +iteración. Decimos que la cadena todavía no mezcla en las primeras 5 mil +iteraciones.

    +

    Ahora vemos qué pasa si ponemos el tamaño de salto demasiado grande:

    +
    set.seed(831)
    +iterador_metro_grande <- crear_metropolis(log_f_dist, sigma_salto = 20)
    +sims_grande_tbl <- iterador_metro_grande(c(theta = 0.02), 50000)
    +g_sim <- ggplot(sims_grande_tbl %>% filter(iter_num < 3000), aes(x = iter_num, y = theta)) + geom_line() + ylim(c(0, 0.5))
    +g_sim + dist_bplot + plot_layout(widths = c(5, 1))
    +

    +

    En este caso, la cadena se atora muchas veces, pues las propuestas tienen +probabilidad muy baja, y tendemos a tener una tasa de rechazos muy alta. Esto +quiere decir que la información que tenemos acerca de la posterior es +relativamente poca, pues muchos datos son repeticiones del mismo valor. +Cualquier resumen con esta cadena podría estar muy lejos del verdadero valor, +pues su varianza es alta - otra corrida se “atoraría” en otros valores +distintos.

    +

    Nótese que cualquiera de estas cadenas, si la corremos suficientemente tiempo, +nos daría resultados buenos. Sin embargo, el número de simulaciones puede ser +infactible.

    +

    Un valor intermedio nos dará mucho mejores resultados:

    +
    set.seed(831)
    +iterador_metro_apropiada <- crear_metropolis(log_f_dist, sigma_salto = 0.1)
    +sims_tbl <-iterador_metro_apropiada(c(theta = 0.02), 50000)
    +g_sim <- ggplot(sims_tbl %>% filter(iter_num < 3000), 
    +  aes(x = iter_num, y = theta)) + geom_line() + ylim(c(0, 0.5))
    +g_sim + dist_bplot + plot_layout(widths = c(5, 1))
    +

    +Donde vemos que esta cadena parece mezclar bien (está explorando la totalidad +de la distribución objetivo), y también parece estar en un estado estable.

    +

    Comparemos cómo saldría por ejemplo la media posterior aproximada según +los tres métodos:

    +
    estimaciones_media <- map_dfr(
    +  list(sims_chico_tbl, sims_grande_tbl, sims_tbl), 
    +  ~ filter(.x, iter_num < 3000) %>% 
    +    summarise(media = mean(theta))) %>% 
    +    mutate(tipo = c("salto chico", "salto grande", "salto apropiado"))
    +estimaciones_media %>% bind_rows(tibble(tipo = "exacta", media = 20/100)) %>% 
    +  select(tipo, media)
    +
    ## # A tibble: 4 × 2
    +##   tipo            media
    +##   <chr>           <dbl>
    +## 1 salto chico     0.128
    +## 2 salto grande    0.190
    +## 3 salto apropiado 0.203
    +## 4 exacta          0.2
    +

    Veamos otra corrida:

    +
    set.seed(6222131)
    +sims_chica_tbl <- iterador_metro_chico(c(theta = 0.02), 5000)
    +sims_grande_tbl <- iterador_metro_grande(c(theta = 0.02), 5000)
    +estimaciones_media <- map_dfr(
    +    list(sims_chica_tbl, sims_grande_tbl, sims_tbl), 
    +    ~ filter(.x, iter_num < 3000) %>% 
    +  summarise(media = mean(theta))) %>% 
    +  mutate(tipo = c("salto chico", "salto grande", "salto apropiado"))
    +estimaciones_media %>% bind_rows(tibble(tipo = "exacta", media = 20/100)) %>% 
    +  select(tipo, media)
    +
    ## # A tibble: 4 × 2
    +##   tipo            media
    +##   <chr>           <dbl>
    +## 1 salto chico     0.124
    +## 2 salto grande    0.229
    +## 3 salto apropiado 0.203
    +## 4 exacta          0.2
    +
    +

    +Repite este proceso varias veces. Verifica que: +

    +
      +
    • +Si el tamaño de paso es muy chico, las estimaciones de la media +tienen sesgo alto. +
    • +
    • +Si el tamaño de paso es muy grande, las estimaciones tienen varianza +alta. +
    • +
    • +Si el tamaño de paso es adecuado, obtenemos buena precisión en la +estimación de la media posterior. +
    • +
    • +Explica estos tres casos en términos de la convergencia de las +realizaciones de la cadena de Markov. Explica cómo afecta a cada caso el +valor inicial de las simulaciones de Metrópolis. +
    • +
    • +Repite para otra estadística, como la desviación estándar o el +rangon intercuartil. +
    • +
    +
    +
    +
    +
    +

    Metrópolis con varios parámetros

    +

    Ahora aplicaremos el algoritmo Metrópolis cuando tenemos varios parámetros. La idea +es la misma, pero nuestra distribución de salto debe ser multivariada. Una selección +usual es usando saltos normales independientes para cada parámetro, es decir, la +normal multivariada con matriz de varianza y covarianza diagonal.

    +
    +

    Ejemplo: el modelo normal

    +

    Veremos cómo simular con Metrópolis para el problema de los cantantes. +Sabemos como calcular la posterior:

    +
    crear_log_posterior_norm <- function(x = datos, m_0, n_0, a, b){
    +  # calcula log_posterior
    +  log_posterior <- function(mu, sigma){
    +      log_verosim <- sum(dnorm(x, mu, sigma, log = TRUE))
    +      tau <- 1 / sigma^2
    +      log_inicial <- 
    +        dgamma(tau, a, b, log = TRUE) + 
    +        dnorm(mu, mu_0, sigma/sqrt(n_0), log = TRUE)
    +      log_p <- log_verosim + log_inicial
    +      log_p
    +  }
    +  log_posterior
    +}
    +
    # parametros de inicial y datos
    +a <- 3
    +b <- 140
    +mu_0 <- 175
    +n_0 <- 5
    +set.seed(3413)
    +cantantes <- lattice::singer %>% 
    +  mutate(estatura_cm = round(2.54 * height)) %>% 
    +  filter(str_detect(voice.part, "Tenor")) %>% 
    +  sample_n(20)
    +

    Vemos cómo se ven las primeras iteraciones de nuestra cadena de Markov:

    +
    log_p <- crear_log_posterior_norm(cantantes$estatura_cm, mu_0, n_0, a, b) 
    +log_post <- function(pars) { log_p(pars[1], pars[2]) }
    +set.seed(823)
    +metro_normal <- crear_metropolis(log_post, sigma_salto = 0.5)
    +sim_tbl <- metro_normal(c(mu = 172, sigma = 3), 50000) 
    +ggplot(sim_tbl %>% filter(iter_num < 100), 
    +       aes(x = mu, y = sigma)) + 
    +  geom_path() +
    +  geom_point()
    +

    +

    Y ahora vemos todas las simulaciones:

    +
    g_normal <- ggplot(sim_tbl, aes(x = mu, y = sigma)) + 
    +  geom_point(alpha = 0.05)+ coord_equal() + ylim(c(0, 14))
    +g_normal
    +

    +

    Y las medias posteriores son:

    +
    sim_tbl %>% summarise(across(is_double, mean))
    +
    ## # A tibble: 1 × 2
    +##      mu sigma
    +##   <dbl> <dbl>
    +## 1  176.  6.80
    +
    +
    +

    Ejemplo: observaciones normales, no conjugado

    +

    Arriba repetimos el análisis conjugado usando Metrópolis. Aunque +ya no es necesario usar el modelo conjugado, y podemos poner +iniciales que sean más intuitivas y acorde con nuestro conocimiento +existente.

    +

    Por ejemplo, podemos poner \(p(\mu, \sigma) = p(\mu)p(\sigma)\), donde la densidad +de \(\mu \sim \mathsf{N}(175, 2)\) y \(\sigma \sim \mathsf{U}[2, 20].\) Igual que +antes, la verosimilitud \(p(x|\mu, \sigma)\) es normal con media \(\mu\) y +desviación estándar \(\sigma.\)

    +

    Escribimos la posterior:

    +
    crear_log_posterior <- function(x, m_0, sigma_0, inf, sup){
    +  # calcula log_posterior
    +  log_posterior <- function(mu, sigma){
    +      log_verosim <- sum(dnorm(x, mu, sigma, log = TRUE))
    +      log_inicial <- 
    +        dunif(sigma, inf, sup, log = TRUE) + 
    +        dnorm(mu, mu_0, sigma_0, log = TRUE)
    +      log_p <- log_verosim + log_inicial
    +      log_p
    +  }
    +  log_posterior
    +}
    +
    log_p <- crear_log_posterior(cantantes$estatura_cm, 175, 3, 2, 20) 
    +log_post <- function(pars) { log_p(pars[1], pars[2]) }
    +
    set.seed(8231)
    +metro_normal <- crear_metropolis(log_post, sigma_salto = 0.5)
    +sim_tbl <- metro_normal(c(mu = 172, sigma = 5), 50000) 
    +g_normal_2 <- ggplot(sim_tbl, aes(x = mu, y = sigma))  +
    +  geom_point(alpha = 0.05) + coord_equal() + ylim(c(0, 14))
    +g_normal + g_normal_2
    +

    +Los resultados son similares, pero en +nuestras estimaciones bajo el segundo modelo, la \(\sigma\) está +concentrada en valores un poco más bajos que el modelo normal-gamma inversa. +Las medias posteriores son:

    +
    sim_tbl %>% summarise(across(is.numeric, mean))
    +
    ## # A tibble: 1 × 3
    +##   iter_num    mu sigma
    +##      <dbl> <dbl> <dbl>
    +## 1   25000.  176.  6.54
    +

    Nótese que la inicial para el modelo normal-gamma inversa pone muy poca +probabilidad para valores bajos de \(\sigma\), mientras que el segundo +modelo hay un 10% de probabilidad de que la \(\sigma\) sea menor que 4.

    +
    tau <- rgamma(5000, 3, 150)
    +sigma <- 1/sqrt(tau)
    +quantile(sigma, c(0.01,0.1, 0.9, 0.99))
    +
    ##        1%       10%       90%       99% 
    +##  4.219278  5.276228 11.579358 19.038529
    +
    quantile(runif(5000, 2, 25), c(0.01,0.1, 0.9, 0.99))
    +
    ##        1%       10%       90%       99% 
    +##  2.261297  4.254128 22.691760 24.719630
    +
    +
    +

    Ejemplo: exámenes

    +

    Recordamos un ejemplo que vimos en la sección de máxima verosimilitud. +Supongamos que en una población de estudiantes tenemos dos tipos: unos llenaron +un examen de opción múltiple al azar (1 de 5), y otros contestaron las +preguntas intentando sacar una buena calificación. Suponemos que una vez que +conocemos el tipo de estudiante, todas las preguntas tienen la misma +probabilidad de ser contestadas correctamente, de manera independiente. El +modelo teórico está representado por la siguiente simulación:

    +
    sim_formas <- function(p_azar, p_corr){
    +  tipo <- rbinom(1, 1, 1 - p_azar)
    +  if(tipo==0){
    +    # al azar
    +    x <- rbinom(1, 10, 1/5)
    +  } else {
    +    # no al azar
    +    x <- rbinom(1, 10, p_corr)
    +  }
    +  x
    +}
    +

    Y una muestra se ve como sigue:

    +
    set.seed(12)
    +muestra <- map_dbl(1:200, ~ sim_formas(0.35, 0.5))
    +qplot(muestra)
    +

    +

    Supongamos que no conocemos la probabildad de contestar correctamente ni la +proporción de estudiantes que contestó al azar. ¿Como estimamos estas dos cantidades?

    +

    La verosimilitud la escribimos en el ejercicio anterior en la sección de máxima verosimilitud, está dada, para las repuestas de un estudiante, por:

    +

    \[p(X = k|\theta_{azar}, \theta_{corr}) \propto \theta_{azar}(1/5)^k(4/5)^{10-k} + +(1-\theta_{azar})\theta_{corr}^k(1-\theta_{corr})^{10-k}\]

    +

    Suponiendo que todas las preguntas tienen la misma dificultad, y que +los estudiantes que estudiaron son homogéneos (podemos discutir qué haríamos +para introducir heterogeneidad que típicamente observaríamos).

    +

    Creemos que la mayoría de los estudiantes no contesta al azar, así que pondremos +como inicial

    +

    \[\theta_{azar} \sim \mathsf{Beta}(1, 5)\]

    +
    qbeta(c(0.1, 0.9), 1, 5) %>% round(2)
    +
    ## [1] 0.02 0.37
    +

    Ahora tenemos que pensar en la probabilidad \(\theta_{corr}\) para los estudiantes +que sí estudiaron. Imaginemos que lo probamos con un estudiante que +sabemos que sí estudió, y obtuvo un porcentaje de correctos de 7/10, Podríamos +poner entonces (vimos 10 intentos, con 3 fracasos y 7 éxitos):

    +

    \[\theta_{corr} \sim \mathsf{Beta}(7, 3)\] +Finalmente, necesitamos la conjunta inicial. Pondremos +\[p(\theta_{azar},\theta_{corr}) = p(\theta_{azar})p(\theta_{corr})\] +con lo que expresamos que inicialmente no creemos que estos dos parámetros estén +relacionados. Si pensáramos, por ejemplo, que cuando hacemos exámenes difíciles +menos estudiantes estudian, entonces deberíamos intentar otra conjunta.

    +

    Escribimos el producto de la verosimilitud con la inicial:

    +
    crear_log_posterior <- function(x){
    + 
    +  log_posterior <- function(theta_azar, theta_corr){
    +    log_verosim <- sum(log(theta_azar * dbinom(x, 10, 1/5) + 
    +                          (1 - theta_azar) * dbinom(x, 10, theta_corr)))
    +    log_inicial <- dbeta(theta_azar, 1, 5, log = TRUE) +
    +      dbeta(theta_corr, 7, 3, log = TRUE)
    +    log_post <- log_verosim + log_inicial
    +    log_post
    +  }  
    +  log_posterior
    +
    +}
    +

    Creamos la función de verosimilitud con los datos

    +
    log_p <- crear_log_posterior(muestra)
    +log_post <- function(pars) { log_p(pars[1], pars[2]) }
    +set.seed(8231)
    +metro_examenes <- crear_metropolis(log_post, sigma_salto = 0.02)
    +sim_tbl <- metro_examenes(c(theta_azar = 0.5, theta_corr = 0.5), 20000)
    +g_1 <- ggplot(sim_tbl, aes(x = theta_azar, y = theta_corr))  +
    +  geom_point(alpha = 0.05) + coord_equal() 
    +g_1
    +

    +Nótese que hay cierta correlación entre las dos proporciones, y esto produce +intervalos posteriores relativamente amplios. Esto es de esperarse, pues +los datos son consistentes con una proporción relativamente chica de +estudiantes que contestan al azar, y tasas de correctos más altas entre los +que sí estudian, y una proporción más grande de respuestas al azar con +tasas de correctos más altas.

    +
    f <- c(0.05, 0.5, 0.95)
    +sim_tbl %>% 
    +  pivot_longer(-iter_num, names_to = "parametro", values_to = "valor") %>% 
    +  group_by(parametro) %>% 
    +  summarise(cuantil = quantile(valor, f), f = f) %>% 
    +  mutate(cuantil = round(cuantil, 2)) %>% 
    +  pivot_wider(names_from = f, values_from = cuantil)
    +
    ## # A tibble: 2 × 4
    +## # Groups:   parametro [2]
    +##   parametro  `0.05` `0.5` `0.95`
    +##   <chr>       <dbl> <dbl>  <dbl>
    +## 1 theta_azar    0.3  0.38   0.45
    +## 2 theta_corr    0.5  0.52   0.56
    +
    +
    +
    +

    Muestreador de Gibbs

    +

    El algoritmo de Metrópolis es muy general y se puede aplicar a una gran variedad +de problemas. Sin embargo, afinar los parámetros de la distribución propuesta +para que el algoritmo funcione correctamente puede ser complicado. El +muestredor de Gibbs no necesita de una distribución propuesta y por lo tanto +no requiere afinar estos parámetros.

    +

    Para implementar un muestreador de Gibbs se necesita ser capaz de generar +muestras de la distribución posterior condicional a cada uno de los +parámetros individuales. Esto es, el muestreador de Gibbs permite generar +muestras de la posterior: +\[p(\theta_1,...,\theta_p|x)\] +siempre y cuando podamos generar valores de todas las distribuciones +condicionales: +\[\theta_k \sim p(\theta_k|\theta_1,...,\theta_{k-1},\theta_{k+1},...,\theta_p,x).\]

    +

    El proceso del muestreador de Gibbs es una caminata aleatoria a lo largo del +espacio de parámetros. La caminata inicia en un punto arbitrario y en cada +tiempo el siguiente paso depende únicamente de la posición actual. Por tanto +el muestredor de Gibbs es un proceso cadena de Markov vía Monte Carlo. La +diferencia entre Gibbs y Metrópolis radica en como se deciden los pasos.

    +

    Muestreador Gibbs

    +

    En cada punto de la caminata se selecciona uno de los +componentes del vector de parámetros (típicamente se cicla en orden):

    +
      +
    1. Supongamos que se selecciona el parámetro \(k\)-ésimo después de haber +modificado los \(k-1\) anteriores, entonces obtenemos un nuevo valor para este +parámetro generando una simulación de la distribución condicional +\[\theta_k^{(i+1)} \sim p(\theta_k|\theta_1^{(i+1)},\ldots,\theta_{k-1}^{(i+1)},\theta_{k+1}^{(i)},\ldots,\theta_p^{(i)},x)\]

    2. +
    3. El nuevo valor \(\theta_k^{(i+1)}\) junto con los valores +\(\theta_1^{(i+1)},\ldots,\theta_{k-1}^{(i+1)},\theta_{k+1}^{(i)},\ldots,\theta_p^{(i)}\) +constituyen la nueva posición en la caminata aleatoria.

    4. +
    5. Seleccionamos una nueva componente \(\theta_{k+1}^{(i+1)}\) y repetimos el proceso.

    6. +
    +

    El muestreador de Gibbs es útil cuando no podemos determinar de manera analítica +la distribución conjunta y no se puede simular directamente de ella, pero sí +podemos determinar todas las distribuciones condicionales y simular de ellas.

    +
    +

    Ejemplo: dos proporciones

    +

    Supongamos que queremos evaluar el balanceo de dos dados de 20 lados que +produce una fábrica. En particular, evaluar la probabilidad de tirar un 20, y +quizá escoger el dado que nos de mayor probabilidad de tirar un 20.

    +

    Tiramos cada dado \(n\) veces, y denotamos por \(X_1\) y \(X_2\) el número +de 20’s que tiramos en cada ocasión. El modelo de datos está dado por +\[p(x_1, x_2|\theta_1, \theta_2)\propto \theta_1^{x_1}(1-\theta_1)^{n - x_1}\theta_2^{x_2}(1-\theta_2)^{n - x_2},\] +que es el producto de dos densidades binomiales, pues suponemos que +las tiradas son independientes cuando conocemos los parámetros +\(\theta_1\) y \(\theta_2\).

    +

    Ahora ponemos una inicial +\[p(\theta_i)\sim \mathsf{Beta}(100, 1900)\]

    +

    y aquí están las razones de nuestra elección:

    +
    media <- 1/20
    +k <- 2000
    +a <- media * k
    +b <- (1 - media) * k
    +c(a,b)
    +
    ## [1]  100 1900
    +
    qbeta(c(0.05, 0.95), a, b) %>% round(3)
    +
    ## [1] 0.042 0.058
    +

    y suponemos que

    +

    \[p(\theta_1,\theta_2) = p (\theta_1)p(\theta_2)\]

    +

    es decir, apriori saber el desempeño de un dado no nos da información adicional del otro (esto podría no ser cierto, por ejemplo, si el defecto es +provocado por la impresión del número 20).

    +

    Por lo tanto, la posterior es

    +

    \[p(\theta_1,\theta_2|x_1, x_2)\propto \theta_1^{x_1+100-1}(1-\theta_1)^{n - x_1 + 1900-1}\theta_2^{x_2+100 -1}(1-\theta_2)^{n - x_2 + 1900-1}\]

    +

    Ahora consideramoso qué pasa cuando conocemos \(\theta_2\) y los datos. Pensamos en todo lo que no sea \(\theta_1\) como constante de modo que nos +queda:

    +

    \[p(\theta_1 | \theta_2, x) \propto \theta_1^{x_1+100 -1}(1-\theta_1)^{n - x_1 + 1900 -1}\] +que es \(\mathsf{Beta}(x_1 + 100, n - x_1 + 1900)\), y por la misma razón,

    +

    \[p(\theta_2 | \theta_1, x) \propto \theta_2^{x_2+100-1}(1-\theta_2)^{n - x_2 + 1900-1}\]

    +

    que también es es \(\mathsf{Beta}(x_1 + 100, n - x_1 + 1900)\)

    +

    De hecho, estas condicionales son fáciles de deducir de otra manera: en +realidad estamos haciendo dos experimentos separados (pues suponemos +que las iniciales son independientes y las pruebas también), así que +podriamos usar el análisis Beta-Binomial para cada uno de ellos. En realidad no es necesario usar MCMC para este ejemplo.

    +

    Usaremos esta función para hacer nuestras iteraciones de Gibbs:

    +
    iterar_gibbs <- function(pasos, n, x_1, x_2){
    +  iteraciones <- matrix(0, nrow = pasos + 1, ncol = 2) # vector guardará las simulaciones
    +  iteraciones[1, 1] <- 0.5 # valor inicial media
    +  colnames(iteraciones) <- c("theta_1", "theta_2")
    +  # Generamos la caminata aleatoria
    +  for (j in seq(2, pasos, 2)) {
    +    # theta_1
    +    a <- x_2 + 100 - 1
    +    b <- n - x_2 + 1900 - 1
    +    iteraciones[j, "theta_2"] <- rbeta(1, a, b) # Actualizar theta_1
    +    iteraciones[j, "theta_1"] <- iteraciones[j-1, "theta_1"]
    +    # theta_2
    +    a <- x_1 + 100 - 1
    +    b <- n - x_1 + 1900 - 1
    +    iteraciones[j + 1, "theta_1"] <- rbeta(1, a, b) # Actualizar theta_1
    +    iteraciones[j + 1, "theta_2"] <- iteraciones[j, "theta_2"]
    +  }
    +  iteraciones
    +}
    +

    Y supongamos que estamos comparando los dados de dos compañías: Chessex y GameScience. Tiramos cada dado 10 mil veces, y obtenemos:

    +
    # Datos de https://www.awesomedice.com/blogs/news/d20-dice-randomness-test-chessex-vs-gamescience
    +n <- 10000
    +x_1 <- 408 # Chessex, alrededor de 0.85 dólares por dado
    +x_2 <- 474 # GameScience, alrededor 1.60 dólares por dado
    +

    E iteramos:

    +
    iteraciones <- iterar_gibbs(20000, n, x_1, x_2) %>% 
    +  as_tibble() %>% 
    +  mutate(iter_num = row_number())
    +head(iteraciones)
    +
    ## # A tibble: 6 × 3
    +##   theta_1 theta_2 iter_num
    +##     <dbl>   <dbl>    <int>
    +## 1  0.5     0             1
    +## 2  0.5     0.0479        2
    +## 3  0.0442  0.0479        3
    +## 4  0.0442  0.0452        4
    +## 5  0.0411  0.0452        5
    +## 6  0.0411  0.0505        6
    +
    ggplot(filter(iteraciones, iter_num > 1000, iter_num< 1050), 
    +       aes(x = theta_1, y = theta_2)) + 
    +  geom_path(alpha = 0.3) + geom_point() 
    +

    +
    g_1 <- ggplot(iteraciones, 
    +       aes(x = theta_1, y = theta_2)) + 
    +  geom_path(alpha = 0.3) + geom_point() 
    +g_2 <- ggplot(iteraciones %>% filter(iter_num > 10), 
    +       aes(x = theta_1, y = theta_2)) + 
    +  geom_path(alpha = 0.3) + geom_point() +
    +  geom_abline(colour = "red") +
    +  geom_point(data= tibble(theta_1=1/20, theta_2=1/20), colour = "red", size = 5)
    +g_1 + g_2
    +

    +

    Notamos el dado de Cheesex no es consistente con 1/20 de tiros de 20s, +pero el dado de GameScience sí lo es. De este gráfica vemos +que Cheesex está sesgado hacia abajo, así que deberíamos escoger +el dado de GameScience

    +

    Podemos ver directamente cómo se distribuye la diferencia \(\theta_1 - \theta_2\). Cualquier estadística es fácil de evaluar, pues simplemente +la calculamos para cada simulación y después resumimos:

    +
    iteraciones <- iteraciones %>% 
    +  mutate(dif = theta_1 - theta_2)
    +ggplot(iteraciones %>% filter(iter_num > 10), aes(x = dif)) +
    +  geom_histogram(bins = 100) +
    +  geom_vline(xintercept = 0, colour = "red")
    +

    +

    Y vemos que es altamente probable que el dado de Cheesex produce +más 20’s que el dado de GameScience.

    +
    iteraciones %>% mutate(theta_1_mayor = dif > 0) %>% 
    +  summarise(prob_theta_1_mayor = mean(theta_1_mayor))
    +
    ## # A tibble: 1 × 1
    +##   prob_theta_1_mayor
    +##                <dbl>
    +## 1             0.0215
    +

    Finalmente, verificamos nuestro modelo y cuánto aprendimos. Podemos +hacerlo simulando de la inicial y comparando con la posterior:

    +
    inicial_tbl <- tibble(theta_1 = rbeta(20000, 100, 1900),
    +                      theta_2 = rbeta(20000, 100, 1900),
    +                      dist = "inicial")
    +posterior_tbl <- iteraciones %>% filter(iter_num > 10) %>% 
    +  mutate(dist = "posterior")
    +sims_tbl <- bind_rows(inicial_tbl, posterior_tbl)
    +ggplot(sims_tbl, aes(x = theta_1, y = theta_2, colour = dist)) +
    +  geom_point(alpha = 0.2)
    +

    +donde vemos que el resultado que obtuvimos es razonablemente consistente +con nuestra información inicial, y las 10 mil tiradas de dado +fueron altamente informativas.

    + +
    +
      +
    • ¿Qué crees que pasaría si sólo hubieramos tirado 40 veces cada +dado? ¿Qué tanto habríamos aprendido? Puedes usar datos +simulados y repetir este ejercicio.

    • +
    • Puedes examinar los resultados para cada cara con los datos originales. +Un modelo apropiado es el Dirichlet-Multinomial.

    • +
    +
    +
    +
    +

    Ejemplo: Modelo normal no conjugado

    +

    Retomemos el caso de observaciones normales, supongamos que tenemos una muestra +\(X_1,...,X_n\) de observaciones independientes e identicamente distribuidas, +con \(X_i \sim \mathsf{N}(\mu, \sigma^2)\).

    +

    Usaremos iniciales distintas al modelo anterior:

    +

    \[p(\mu, \sigma^2) = p(\sigma^2)p(\mu)\] +con \(\mu\) \(\mathsf{N}(\mu_0, \sigma_0)\) y \(\tau = 1/\sigma^2\) con distribución +\(\mathsf{Gamma}(a,b)\). Esto no nos da el modelo conjugado que vimos antes (nota +la diferencia de la especificación de la inicial conjunta).

    +

    Comenzamos por escribir

    +

    \[p(\mu, \sigma^2|x) \propto \frac{1}{{\sigma^{n/2}}} \exp(-\sum\frac{(x_i-\mu)²}{2\sigma^2}) \exp(- \frac{(\mu - \mu_0)^2}{2\sigma_0^2}) \frac{1}{(\sigma^2)^{a + 1}}\exp (-\beta/\sigma^2 )\]

    +

    Comenzamos analizando \(p(\mu|\sigma^2, x)\). Por la ecuación de arriba, e ignorando +los términos que no dependen de \(\mu\): +\[p(\mu|\sigma^2, x) \propto \exp [ - \sum_i (\frac{(\mu - x_i)^2}{2\sigma^2} - \frac{(\mu - \mu_0)^2}{2n\sigma_0^2})]\] +que es una distribución normal (completa cuadrados):

    +

    \[\mu|\sigma^2,x \sim \mathsf{N}\bigg(\frac{\sigma^2}{\sigma^2 + n\sigma_0^2}\mu_0 + \frac{n\sigma_0^2}{\sigma^2 + n \sigma_0^2}\bar{x}, \frac{\sigma \sigma_0}{\sqrt{\sigma^2 + n\sigma_0^2}}\bigg)\]

    +

    Ahora consideramos \(p(\sigma^2|mu,x)\). Ignoramos en \(p(\mu,\sigma^2|x)\) los términos que *no** dependen de \(\sigma^2\):

    +

    \[p(\sigma^2|\mu, x) \propto \frac{1}{\sigma^{n/2}} \exp(-\sum\frac{(x_i-\mu)²}{2\sigma^2}) \frac{1}{(\sigma^2)^{a + 1}}\exp (-\beta/\sigma^2)\] +que simplificando da

    +

    \[ = \frac{1}{\sigma^{n/2 + a + 1}}\exp( -\frac{\beta +\frac{1}{2}\sum(x_i - \mu)^2}{\sigma^2} )\] +de modo que

    +

    \[\sigma^2|\mu, x \sim \mathsf{GI}(a +n/2, b + \frac{1}{2}\sum(x_i -\mu)^2)\]

    +
    +
    +

    Ejemplo

    +

    Usaremos este muestreador para el problema de la estaturas de +los tenores. Comenzamos definiendo las distribuciones iniciales:

    +
      +
    • \(\mu \sim \mathsf{N}(175, 3)\)

    • +
    • \(\tau = 1/\sigma^2 \sim \mathsf{GI}(3, 150)\), esto es \(a = 3\) y \(b = 150\).

    • +
    +

    Escribimos el muestreador de Gibbs.

    +
    n <- 20
    +x <- cantantes$estatura_cm
    +m <- 175; sigma_0 <- 3; alpha <- 3; beta <- 150 # parámetros de iniciales
    +pasos <- 20000
    +iteraciones <- matrix(0, nrow = pasos + 1, ncol = 2) # vector guardará las simulaciones
    +iteraciones[1, 1] <- 0 # valor inicial media
    +colnames(iteraciones) <- c("mu", "sigma")
    +# Generamos la caminata aleatoria
    +for (j in seq(2, pasos, 2)) {
    +  # sigma^2
    +  mu <- iteraciones[j - 1, "mu"]
    +  a <- n / 2 + alpha
    +  b <- sum((x  - mu) ^ 2) / 2 + beta
    +  iteraciones[j, "sigma"] <- sqrt(1/rgamma(1, a, b)) # Actualizar sigma
    +  iteraciones[j, "mu"] <- iteraciones[j-1, "mu"]
    +  # mu
    +  sigma <- iteraciones[j, "sigma"]
    +  media <- (n * sigma_0^2 * mean(x) + sigma^2 * m) / (n * sigma_0^2 + sigma^2)
    +  varianza <- sigma^2 * sigma_0^2 / (n * sigma_0^2 + sigma^2)
    +  iteraciones[j+1, "mu"] <- rnorm(1, media, sd = sqrt(varianza)) # actualizar mu
    +  iteraciones[j+1, "sigma"] <- iteraciones[j, "sigma"]
    +}
    +caminata <- data.frame(pasos = 1:pasos, mu = iteraciones[1:pasos, "mu"], 
    +  sigma = iteraciones[1:pasos, "sigma"])
    +caminata_g <- caminata %>%
    +  gather(parametro, val, mu, sigma) %>%
    +  arrange(pasos)
    +

    Veamos primero algunos pasos:

    +
    ggplot(filter(caminata, pasos > 1000, pasos< 1010), 
    +       aes(x = mu, y = sigma)) + 
    +  geom_path(alpha = 0.3) + geom_point() 
    +

    +

    Donde vemos cómo en cada iteración se actualiza un solo parámetro. +Una alternativa es conservar únicamente ciclos completos de la +caminata u esto es lo que hacen varios programas que implementan Gibbs, sin +embargo ambas cadenas (cadenas completas y conservando únicamente ciclos +completos) convergen a la misma distribución posterior.

    +

    Si tomamos iteraciones completas:

    +
    ggplot(filter(caminata, pasos > 1000, pasos< 1020, pasos %% 2 == 0), 
    +       aes(x = mu, y = sigma)) + 
    +  geom_path(alpha = 0.3) + geom_point() 
    +

    +Y ahora vemos cómo se ven las simulaciones:

    +
    ggplot(filter(caminata, pasos > 1000, pasos< 10000, pasos %% 2 == 0), 
    +       aes(x = mu, y = sigma)) +  geom_point(alpha = 0.1) 
    +

    +

    Y el diagnóstico de cada cadena:

    +
    ggplot(filter(caminata_g, pasos > 15000), aes(x = pasos, y = val)) +
    +  geom_path(alpha = 0.3) +
    +  facet_wrap(~parametro, ncol = 1, scales = "free") +
    +  scale_y_continuous("")
    +

    +Estas cadenas parecen estar mezclando bien. Podemos resumirlas:

    +
    ggplot(filter(caminata_g, pasos > 5000), aes(x = val)) +
    +  geom_histogram(fill = "gray") +
    +  facet_wrap(~parametro, ncol = 1, scales = "free") 
    +

    +
    caminata_g %>%
    +  filter(pasos > 1000) %>% # eliminamos la etapa de calentamiento
    +  group_by(parametro) %>%
    +  summarise(
    +    mean(val), 
    +    sd(val), 
    +    median(val)
    +    ) %>% 
    +  mutate(across(is_double, round, 2))
    +
    ## # A tibble: 2 × 4
    +##   parametro `mean(val)` `sd(val)` `median(val)`
    +##   <chr>           <dbl>     <dbl>         <dbl>
    +## 1 mu             176.        1.32        176.  
    +## 2 sigma            6.54      0.95          6.44
    +

    Y obtenemos un resultado similar a los anteriores.

    +
    +
    +
    +

    Conclusiones y observaciones Metrópolis y Gibbs

    +
      +
    • Una generalización del algoritmo de Metrópolis es Metrópolis-Hastings.

      +

      El algoritmo de Metrópolis es como sigue:

      +
        +
      1. Generamos un punto inicial tal que \(p(\theta)>0\).
      2. +
      3. Para \(i = 1,2,...\) +
          +
        • Se propone un nuevo valor \(\theta^*\) con una distribución +propuesta \(g(\theta^*|\theta^{(i)})\) es común que \(g(\theta^*|\theta^{(i)})\) sea una normal centrada en +\(\theta^{(i)}\).
        • +
      4. +
      5. Calculamos la probabilidad de aceptación
      6. +
      +

      \[\alpha=\min\bigg\{\frac{p(\theta^*)}{p(\theta^{(i)})},1\bigg\},\] +y aceptamos \(\theta^*\) con probabilidad \(p_{mover}\). Es así que el +algorito requiere que podamos calcular el cociente en \(p_{mover}\) para todo +\(\theta^{(i)}\) y \(\theta^*\), así como simular de la distribución propuesta +\(g(\theta^*|\theta^{(i)})\), adicionalmente debemos poder generar valores +uniformes para decidir si aceptar/rechazar.

      +

      En el caso de Metrópolis un requerimiento adicional es que la distribución +propuesta \(g(\theta_{a}|\theta_b)\) debe ser simétrica, es decir +\(g(\theta_{a}|\theta_b) = g(\theta_{b}|\theta_a)\) para todo \(\theta_{a}\), +\(\theta_{b}\).

      +

      Metrópolis-Hastings generaliza Metrópolis, eliminando la restricción de +simetría en la distribución propuesta \(g(\theta_{a}|\theta_b)\), sin embargo para +corregir por esta asimetría debemos calcular \(\alpha\) como sigue:

      +

      \[\alpha=\min\bigg\{ \frac{p(\theta^*)}{g(\theta^*|\theta^{(i)})} \cdot \frac{g(\theta^{(i)}|\theta^*)}{p(\theta^{(i)})},1\bigg\}\] +La generalización de Metrópolis-Hastings puede resultar en algoritmos más +veloces.

    • +
    • Se puede ver Gibbs como una generalización de Metrópolis-Hastings, cuando +estamos actualizando un componente de los parámetros, la distribución propuesta +es la distribución posterior para ese parámetro, por tanto siempre es aceptado.

    • +
    • Comparado con Metrópolis, Gibbs tiene la ventaja de que no se necesita afinar +los parámetros de una distribución propuesta (o seleccionar siquiera una +distribución propuesta). Además que no hay pérdida de simulaciones debido a +rechazo. Por su parte, la desventaja debemos conocer las distribuciones +condicionales y poder simular de ellas.

    • +
    • En el caso de modelos complicados se utilizan combinaciones de Gibbs y +Metrópolis. Cuando se consideran estos dos algoritmos Gibbs es un método más +simple y es la primera opción para modelos condicionalmente conjugados. Sí solo +podemos simular de un subconjunto de las distribuciones condicionales +posteriores, entonces podemos usar Gibbs siempre que se pueda y Metrópolis +unidimensional para el resto, o de manera más general separamos en bloques, un +bloque se actualiza con Gibbs y otro con Metrópolis.

    • +
    • El algoritmo de Gibbs puede atorarse cuando hay correlación alta entre los +parámetros, reparametrizar puede ayudar, o se pueden usar otros algoritmos.

    • +
    • JAGS (Just Another Gibbs Sampler), WinBUGS +y OpenBUGS son programas que implementan métodos MCMC para generar simulaciones +de distribuciones posteriores. Los paquetes rjags y R2jags permiten ajustar +modelos en JAGS desde R. Es muy fácil utilizar estos programas pues uno +simplemente debe especificar las distribuciones iniciales, la verosimilitud y +los datos observados. Para aprender a usar JAGS se puede revisar la sección +correspondiente en las notas de 2018, +ahora nos concentraremos en el uso de Stan.

    • +
    +
    +
    +

    HMC y Stan

    +
    +

    It appears to be quite a general principle that, whenever there is a +randomized way of doing something, then there is a nonrandomized way that +delivers better performance but requires more thought. -E.T. Jaynes

    +
    +

    Stan es un programa para generar muestras de una distribución posterior de los +parámetros de un modelo, el nombre del programa hace referencia a Stanislaw Ulam (1904-1984) que fue pionero en +los métodos de Monte Carlo. A diferencia de JAGS y BUGS, los pasos de la cadena +de Markov se generan con un método llamado Monte Carlo Hamiltoniano (HMC). HMC +es computacionalmente más costoso que Metrópolis o Gibbs, sin embargo, sus +propuestas suelen ser más eficientes, y por consiguiente no necesita muestras +tan grandes. En particular cuando se ajustan modelos grandes y complejos (por +ejemplo, con variables con correlación alta) HMC supera a otros.

    +
    +
    +

    Diagnósticos generales para MCMC

    +

    Cuando generamos una muestra de la distribución posterior usando MCMC, sin +importar el método (Metrópolis, Gibbs, HMC), buscamos que:

    +
      +
    1. Los valores simulados sean representativos de la distribución posterior. Esto implica que no deben estar influenciados por el valor inicial (arbitrario) y deben explorar todo el rango de la posterior, con suficientes retornos para evaluar cuánta masa hay en cada región.

    2. +
    3. Debemos tener suficientes simulaciones de tal manera que las +estimaciones sean precisas y estables.

    4. +
    5. Queremos tener un método eficiente para generar las simulaciones.

    6. +
    +

    En la práctica intentamos cumplir lo más posible estos objetivos, pues aunque en principio los métodos MCMC garantizan que una cadena infinitamente larga logrará una representación perfecta, siempre debemos tener un criterio para cortar la cadena y evaluar la calidad de las simulaciones.

    +
    +

    Representatividad

    +

    Burn-in e iteraciones iniciales- En primer lugar, en muchas ocasiones las condiciones iniciales de las +cadenas están en partes del espacio de parámetros que son “atípicos” en +términos de la posterior. Así que es común quitar algunas observaciones +iniciales (iteraciones de burn-in) para minimizar su efecto en +resúmenes posteriores.

    +

    Por ejemplo, para el ejemplo de los cantantes, podemos +ver que las iteraciones iniciales tienen como función principal +llegar a las regiones de probabilidad posterior alta:

    +
    log_p <- crear_log_posterior_norm(cantantes$estatura_cm, mu_0, n_0, a, b) 
    +log_post <- function(pars) { log_p(pars[1], pars[2]) }
    +set.seed(823)
    +metro_normal <- crear_metropolis(log_post, sigma_salto = 0.5)
    +sim_tbl <- metro_normal(c(mu = 162, sigma = 1), 5000) 
    +ggplot(sim_tbl %>% filter(iter_num < 500), aes(x = mu, y = sigma)) + geom_path(alpha = 0.5) + geom_point(aes(colour = iter_num))
    +

    +

    De modo que puede ser buena idea eliminar las +primeras iteraciones. En teoría, no es necesario hacer esto si +hacemos suficientes iteraciones, pues la cadena va a terminar +en su estado estable explorando la posterior. En la práctica, y +con pocas iteraciones, puede ayudar un poco a mejorar la precisión +numérica de las cantidades que queramos calcular.

    +
    sim_g <- sim_tbl %>% pivot_longer(-iter_num, 
    +                                    names_to = "parametro",
    +                                    values_to = "valor")
    +todas <- ggplot(sim_g, aes(x = iter_num, y = valor)) +
    +  geom_line(alpha = 0.5) +
    +  facet_wrap(~ parametro, ncol = 1, scales = "free_y") +
    +  labs(subtitle = "Todas las simulaciones")
    +sin_burnin <- 
    +  sim_g %>% filter(iter_num > 200) %>% 
    +  ggplot(aes(x = iter_num, y = valor)) +
    +  geom_line(alpha = 0.5) +
    +  facet_wrap(~ parametro, ncol = 1, scales = "free_y") +
    +  labs(subtitle = "Quitando 200 de burn-in")
    +todas + sin_burnin
    +

    +

    Convergencia a estado límite. Para determinar la convergencia es conveniente +realizar más de una cadena: buscamos ver si realmente se ha olvidado el +estado inicial, si las distribuciones de cada cadena son consistentes unas con +otras, y revisar que algunas cadenas no hayan quedado atoradas en regiones +inusuales del espacio de parámetros.

    +

    Inicializamos las cadenas con valores al azar en rangos +razonables (por ejemplo simulando de la inicial):

    +
    set.seed(8513)
    +valores_iniciales  <- tibble(mu_0 = rnorm(4, 160, 20), 
    +                             sigma_0 = runif(4, 0, 20),
    +                             cadena = 1:4)
    +sims_tbl <- valores_iniciales %>% 
    +  mutate(sims = map2(mu_0, sigma_0, 
    +    ~ metro_normal(c(mu = .x, sigma = .y), 300) )) %>% 
    +  unnest(sims)
    +
    +ggplot(sims_tbl, aes(x = iter_num, y = sigma, colour = factor(cadena))) +
    +  geom_line()
    +

    +

    Y este es un ejemplo donde claramente las cadenas no han alcanzado +un estado estable: tienen muy distintas medias y varianzas. Por ejemplo:

    +
    set.seed(83243)
    +sims_tbl <- valores_iniciales %>% 
    +  mutate(sims = map2(mu_0, sigma_0, 
    +    ~ metro_normal(c(mu = .x, sigma = .y), 20000) )) %>% 
    +  unnest(sims)
    +
    +ggplot(sims_tbl, aes(x = iter_num, y = sigma, colour = factor(cadena))) +
    +  geom_line()
    +

    +

    Y este resultado se ve mejor. La parte transición hacia las zonas +de alta probabilidad pasa antes de unas 1000 iteraciones. Podemos +hacer más simulaciones, o eliminar como burn-in las primiras iteraciones:

    +
    media_g <- ggplot(sims_tbl %>% filter(iter_num > 2000),
    +                  aes(x = iter_num, y = mu, colour = factor(cadena))) +
    +  geom_line()
    +sigma_g <- ggplot(sims_tbl %>% filter(iter_num > 2000),
    +                  aes(x = iter_num, y = sigma, colour = factor(cadena))) +
    +  geom_line()
    +media_g / sigma_g
    +

    +

    Las gráficas anteriores nos ayudan a determinar si elegimos un periodo de +calentamiento adecuado o si alguna cadena está alejada del resto.

    +

    Una vez que las cadenas están en estado estable, podemos usar +todas las simulaciones juntas para resumir:

    +
    head(sims_tbl)
    +
    ## # A tibble: 6 × 6
    +##    mu_0 sigma_0 cadena iter_num    mu sigma
    +##   <dbl>   <dbl>  <int>    <int> <dbl> <dbl>
    +## 1  155.    3.16      1        1  155.  3.16
    +## 2  155.    3.16      1        2  155.  3.16
    +## 3  155.    3.16      1        3  155.  3.16
    +## 4  155.    3.16      1        4  155.  3.16
    +## 5  155.    3.16      1        5  155.  3.50
    +## 6  155.    3.16      1        6  155.  3.81
    +
    # medias posteriores
    +sims_tbl %>% 
    +  summarise(mu = mean(mu), sigma = mean(sigma))
    +
    ## # A tibble: 1 × 2
    +##      mu sigma
    +##   <dbl> <dbl>
    +## 1  176.  6.77
    +

    Además de realizar gráficas podemos usar la medida de convergencia \(\hat{R}\). La medida \(\hat{R}\) se conoce como el factor de reducción potencial de +escala o diagnóstico de convergencia de Gelman-Rubin, esta es una estimación +de la posible reducción en la longitud de un intervalo de confianza si las +simulaciones continuaran infinitamente. \(\hat{R}\) es aproximadamente la raíz +cuadrada de la varianza de todas las +cadenas juntas dividida entre la varianza dentro de cada cadena. Si \(\hat{R}\) es +mucho mayor a 1 esto indica que las cadenas no se han mezclado bien. Una regla +usual es iterar hasta alcanzar un valor \(\hat{R} \leq 1.1\) para todos los +parámetros.

    +

    \[\hat{R} \approx \sqrt{\frac{\hat{V}}{W}}\]

    +

    donde \(B\) es la varianza entre las cadenas, \(W\) es la varianza dentro de las cadenas

    +

    \[B = \frac{N}{M-1}\sum_m (\hat{\theta}_m - \hat{\theta})^2\] +\[W = \frac{1}{M}\sum_m \hat{\sigma}_m^2\]

    +

    Y \(\hat{V}\) es una estimación del varianza de posterior de \(\theta\):

    +

    \[\hat{V} = \frac{N-1}{N}W + \frac{M+1}{MN}B\] +#### Ejemplo {-}

    +

    En nuestro ejemplo anterior, tenemos

    +
    sims_tbl %>% 
    +  pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor") %>% 
    +  group_by(parametro, cadena) %>% 
    +  summarise(media = mean(valor), num = n(), sigma2 = var(valor)) %>% 
    +  summarise(N = first(num),
    +            M = n_distinct(cadena), 
    +            B = N * var(media),
    +            W = mean(sigma2),
    +            V_hat = ((N - 1) / N) * W + (M + 1)/(M * N) * B, 
    +            R_hat = sqrt(V_hat / W))  
    +
    ## # A tibble: 2 × 7
    +##   parametro     N     M     B     W V_hat R_hat
    +##   <chr>     <int> <int> <dbl> <dbl> <dbl> <dbl>
    +## 1 mu        20000     4 1281.  4.29  4.37  1.01
    +## 2 sigma     20000     4  121.  1.31  1.32  1.00
    +

    Y verificamos que los valores de \(\hat{R}\) son cercanos a uno, lo +cual indica que este diagnóstico es aceptable. Si hubiéramos +trabajado con las primeras 300 iteraciones

    +
    sims_tbl %>% 
    +  filter(iter_num < 300) %>% 
    +  pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor") %>% 
    +  group_by(parametro, cadena) %>% 
    +  summarise(media = mean(valor), num = n(), sigma2 = var(valor)) %>% 
    +  summarise(N = first(num),
    +            M = n_distinct(cadena), 
    +            B = N * var(media),
    +            W = mean(sigma2),
    +            V_hat = ((N - 1) / N) * W + (M + 1)/(M * N) * B, 
    +            R_hat = sqrt(V_hat / W))  
    +
    ## # A tibble: 2 × 7
    +##   parametro     N     M      B     W V_hat R_hat
    +##   <chr>     <int> <int>  <dbl> <dbl> <dbl> <dbl>
    +## 1 mu          299     4 32334.  40.4 175.   2.08
    +## 2 sigma       299     4  7394.  11.9  42.8  1.89
    +

    Y estos valores indican problemas en la convergencia de las cadenas. Es +necesario diagnosticar el problema, que en este caso resolvemos +incrementando el número de iteraciones.

    +
    +
    +

    Precisión

    +

    Una vez que tenemos una muestra representativa de la +distribución posterior, nuestro objetivo es asegurarnos de que la muestra es lo suficientemente grande +para producir estimaciones estables y precisas de la distribución.

    +

    Para ello usaremos el +tamaño efectivo de muestra, Si las simulaciones fueran independientes +\(N_{eff}\) sería el número total de simulaciones; sin embargo, las simulaciones de MCMC suelen estar correlacionadas, de modo que cada iteración +de MCMC es menos informativa que si fueran independientes.

    +

    Ejemplo: Si graficaramos simulaciones independientes, esperaríamos valores de +autocorrelación chicos:

    +
    acf(rgamma(1000,1,1))
    +

    +Sin embargo, los valores que simulamos tienen el siguiente perfil de +autocorrelación:

    +
    sigma_metro_sims <- sims_tbl %>% filter(cadena==4) %>% pull(mu)
    +acf(sigma_metro_sims)
    +

    +

    El tamaño efectivo de muestra nos dice qué tamaño de +muestra de observaciones independientes nos daría la misma información que las +simulaciones de la cadena. Una manera de manera relativamente simple de +estimarlo es:

    +

    \[N_{eff} = \frac{N}{1+2\sum_{k=1}^\infty ACF(k)} \]

    +

    Usualmente nos gustaría obtener un tamaño efectivo de al menos \(100\) (para +cálculo de medias y varianzas posteriores). Esta +cantidad usualmente se reporta en el software (con mejores estimaciones que +la de la fórmula de arriba), y es necesario checarlo.

    +

    En nuestro ejemplo hacemos una aproximación como sigue:

    +
    calc_acf <- function(x){
    +  valores_acf <- acf(x, lag.max = 1000, plot = FALSE)$acf %>% as.numeric()
    +  valores_acf[-1]
    +}
    +acf_tbl <- sims_tbl %>% 
    +  pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor") %>%
    +  group_by(parametro, cadena) %>%
    +  summarise(N = n_distinct(iter_num), k = 1:1000, acf = calc_acf(valor)) %>% 
    +  summarise(N = first(N), N_eff = N / (1 + 2 * sum(acf)))
    +acf_tbl
    +
    ## # A tibble: 8 × 4
    +## # Groups:   parametro [2]
    +##   parametro cadena     N N_eff
    +##   <chr>      <int> <int> <dbl>
    +## 1 mu             1 20000 251. 
    +## 2 mu             2 20000 700. 
    +## 3 mu             3 20000 104. 
    +## 4 mu             4 20000 394. 
    +## 5 sigma          1 20000 421. 
    +## 6 sigma          2 20000 411. 
    +## 7 sigma          3 20000  93.9
    +## 8 sigma          4 20000 724.
    +

    Nótese que algunas cadenas tienen un tamaño efectivo de muestra relativamente +bajo para el número de iteraciones que hicimos. De cualquier forma, el agregado +sobre todas las cadenas es suficientemente grande para calcular resúmenes básicos:

    +
    acf_tbl %>% group_by(parametro) %>% 
    +  summarise(N = sum(N), N_eff = sum(N_eff))
    +
    ## # A tibble: 2 × 3
    +##   parametro     N N_eff
    +##   <chr>     <int> <dbl>
    +## 1 mu        80000 1450.
    +## 2 sigma     80000 1650.
    +

    Sin embargo, podemos hacer más simulaciones si es necesario, por ejemplo +para aproximar de manera apropiada percentiles en las colas.

    +
    +
    +

    Eficiencia

    +

    Hay varias maneras para mejorar la eficiencia de un proceso MCMC:

    +
      +
    • Paralelizar, no disminuimos el número de pasos en las simulaciones pero +podemos disminuir el tiempo que tarda en correr.

    • +
    • Cambiar la parametrización del modelo o transformar los datos.

    • +
    • Adelgazar la muestra cuando tenemos problemas de uso de memoria,

    • +
    +

    consiste en guardar únicamente los \(k\)-ésimos pasos de la cadena y resulta +en cadenas con menos autocorrelación .

    +
    +
    +

    Recomendaciones generales

    +

    Gelman and Hill (2006) recomienda los siguientes pasos cuando uno esta simulando de la +posterior:

    +
      +
    1. Cuando definimos un modelo por primera vez establecemos un valor bajo para +el número de iteraciones. La razón es que la mayor parte de las veces los +modelos no funcionan a la primera por lo que sería pérdida de tiempo dejarlo +correr mucho tiempo antes de descubrir el problema.

    2. +
    3. Si las simulaciones no han alcanzado convergencia aumentamos las iteraciones +a \(500\) ó \(1000\) de tal forma que las corridas tarden segundos o unos cuantos +minutos.

    4. +
    5. Si tarda más que unos cuantos minutos (para problemas del tamaño que +veremos en la clase) y aún así no alcanza convergencia +entonces juega un poco con el modelo (por ejemplo intenta transformaciones lineales), para JAGS Gelman +sugiere más técnicas para acelerar la convergencia en el +capitulo \(19\) del libro +Data Analysis Using Regression and Multilevel/Hierarchical models. En el +caso de Stan veremos ejemplos de reparametrización, y se puede leer más en +la guía.

    6. +
    7. Otra técnica conveniente cuando se trabaja con bases de datos grandes +(sobre todo en la parte exploratoria) es trabajar con un +subconjunto de los datos, quizá la mitad o una quinta parte.

    8. +
    + +
    +
    + +

    Referencias

    +
    +
    +Gelman, Andrew, and Jennifer Hill. 2006. Data Analysis Using Regression and Multilevel/Hierarchical Models. 1st ed. Cambridge University Press. http://www.amazon.com/Analysis-Regression-Multilevel-Hierarchical-Models/dp/052168689X/ref=sr_1_1?s=books&ie=UTF8&qid=1313405184&sr=1-1. +
    +
    +Kruschke, John. 2015. Doing Bayesian Data Analysis (Second Edition). Academic Press. +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + diff --git "a/propiedades-te\303\263ricas-de-mle.html" "b/propiedades-te\303\263ricas-de-mle.html" index 2410314..f2359d8 100644 --- "a/propiedades-te\303\263ricas-de-mle.html" +++ "b/propiedades-te\303\263ricas-de-mle.html" @@ -377,6 +377,70 @@
  • Ejemplo: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
    • Introducción
    • diff --git a/reference-keys.txt b/reference-keys.txt index 4961bbd..b19eb9d 100644 --- a/reference-keys.txt +++ b/reference-keys.txt @@ -13,3 +13,6 @@ bootstrap-paramétrico propiedades-teóricas-de-mle más-de-pruebas-de-hipótesis-e-intervalos introducción-a-inferencia-bayesiana-1 +calibración-bayesiana-y-regularización +métodos-de-cadenas-de-markov-monte-carlo +ejemplo-de-islas diff --git a/referencias.html b/referencias.html index 0f5ec10..d97290a 100644 --- a/referencias.html +++ b/referencias.html @@ -377,6 +377,70 @@
    • Ejemplo: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
    • Introducción
    • @@ -448,6 +512,9 @@

      ReferenciasAn Introduction to the Bootstrap. Monographs on Statistics and Applied Probability 57. Boca Raton, Florida, USA: Chapman & Hall/CRC.
      +Gelman, Andrew, and Jennifer Hill. 2006. Data Analysis Using Regression and Multilevel/Hierarchical Models. 1st ed. Cambridge University Press. http://www.amazon.com/Analysis-Regression-Multilevel-Hierarchical-Models/dp/052168689X/ref=sr_1_1?s=books&ie=UTF8&qid=1313405184&sr=1-1. +
      +
      Gelman, Andrew, Jennifer Hill, and Masanao Yajima. 2012. “Why We (Usually) Don’t Have to Worry about Multiple Comparisons.” Journal of Research on Educational Effectiveness 5 (2): 189–211. https://doi.org/10.1080/19345747.2011.618213.
      @@ -475,6 +542,9 @@

      Referencias“FactoMineR: An r Package for Multivariate Analysis.” Journal of Statistical Software 25 (1): 1–18.

      +Little, Roderick. 2011. “Calibrated Bayes, for Statistics in General, and Missing Data in Particular.” Statist. Sci. 26 (2): 162–74. https://doi.org/10.1214/10-STS318. +
      +
      Ramsey, Fred, and Daniel Schafer. 2012. The Statistical Sleuth: A Course in Methods of Data Analysis. Cengage Learning.
      diff --git a/search_index.json b/search_index.json index 937d624..d3f2b92 100644 --- a/search_index.json +++ b/search_index.json @@ -1 +1 @@ -[["index.html", "Fundamentos de Estadística con Remuestreo Información del curso", " Fundamentos de Estadística con Remuestreo Teresa Ortiz, Felipe González, Alfredo Garbuno Información del curso Notas del curso Fundamentos de Estadística con Remuestreo, este curso busca explicar los principios básicos de la estadística y su papel en el análisis de datos. Nuestro punto de vista es uno de fundamentos, con menos énfasis en recetas o técnicas particulares. Ligas Notas: https://tereom.github.io/fundamentos-2024/ Repositorio con material: https://github.com/tereom/fundamentos-2024 Correo: teresa.ortiz.mancera@gmail.com Zoom clase (miércoles 4:00-7:00 pm): https://itam.zoom.us/j/92745909276 Zoom sesiones de dudas (lunes de 5:30-6:30 pm): https://itam.zoom.us/j/92518922348 Canvas: https://itam.instructure.com/courses/13328 x Este trabajo está bajo una Licencia Creative Commons Atribución 4.0 Internacional. "],["temario.html", "Temario Plan semanal Evaluación", " Temario Plan semanal Datos y análisis exploratorio Referencias: (W. S. Cleveland 1994), (Chihara and Hesterberg 2018) Visualización1 Análisis exploratorio Tipos de datos o estudios Muestras diseñadas y muestras naturales Experimentos y datos observacionales Introducción a Pruebas de Hipótesis Referencias: (Chihara and Hesterberg 2018) Introducción a pruebas de hipótesis. Pruebas de permutaciones Muestras pareadas y otros ejemplos Estimación y distribución de muestreo Referencias: (Chihara and Hesterberg 2018), (Tim C. Hesterberg 2015b) Estimadores y su distribución de muestreo Repaso de probabilidad y Teorema del límite central Introducción a estimación por intervalos Referencias: (Chihara and Hesterberg 2018), (Efron and Tibshirani 1993), (Tim C. Hesterberg 2015b) El método plugin y el boostrap Bootstrap e Intervalos de confianza. Ejemplos. Estimación Referencias: (Chihara and Hesterberg 2018), (Wasserman 2013) Estimación por máxima verosimilitud Ejemplos de estimación por máxima verosimilitud y Bootstrap paramétrico Propiedades de estimadores de máxima verosimilitud Más de pruebas de hipótesis Referencias: (Chihara and Hesterberg 2018), (Wasserman 2013) Pruebas de hipótesis para medias y proporciones: una y dos poblaciones. Introducción a inferencia bayesiana Referencias: (Kruschke 2015) Introducción a inferencia bayesiana Ejemplos de distribuciones conjugadas Introducción a métodos computacionales básicos: Muestreadores Metrópolis y Gibbs Ejemplos de inferencia bayesiana en Stan Evaluación Se evaluará mediante tareas semanales y dos exámenes: Tareas semanales (20%) Examen parcial en clase y a casa (40%) Examen final a casa (40%) Referencias "],["análisis-exploratorio.html", "Sección 1 Análisis exploratorio El papel de la exploración en el análisis de datos Preguntas y datos Algunos conceptos básicos Ejemplos Suavizamiento loess Caso de estudio: nacimientos en México", " Sección 1 Análisis exploratorio “Exploratory data analysis can never be the whole story, but nothing else can serve as the foundation stone –as the first step.” — John Tukey El papel de la exploración en el análisis de datos El estándar científico para contestar preguntas o tomar decisiones es uno que se basa en el análisis de datos. Es decir, en primer lugar se deben reunir todos los datos que puedan contener o sugerir alguna guía para entender mejor la pregunta o la decisión a la que nos enfrentamos. Esta recopilación de datos —que pueden ser cualitativos, cuantitativos, o una mezcla de los dos— debe entonces ser analizada para extraer información relevante para nuestro problema. En análisis de datos existen dos distintos tipos de trabajo: El trabajo exploratorio o de detective: ¿cuáles son los aspectos importantes de estos datos? ¿qué indicaciones generales muestran los datos? ¿qué tareas de análisis debemos empezar haciendo? ¿cuáles son los caminos generales para formular con precisión y contestar algunas preguntas que nos interesen? El trabajo inferencial, confirmatorio, o de juez: ¿cómo evaluar el peso de la evidencia de los descubrimientos del paso anterior? ¿qué tan bien soportadas están las respuestas y conclusiones por nuestro conjunto de datos? Preguntas y datos Cuando observamos un conjunto de datos, independientemente de su tamaño, el paso inicial más importante es entender bajo qué proceso se generan los datos. A grandes rasgos, cuanto más sepamos de este proceso, mejor podemos contestar preguntas de interés. En muchos casos, tendremos que hacer algunos supuestos de cómo se generan estos datos para dar respuestas (condicionales a esos supuestos). Algunos conceptos básicos Empezamos explicando algunas ideas que no serán útiles más adelante. El primer concepto se refiere a entender cómo se distribuyen los datos a los largo de su escala de medición. Comenzamos con un ejemplo: los siguientes datos fueron registrados en un restaurante durante cuatro días consecutivos. library(tidyverse) library(patchwork) # organizar gráficas library(gt) # formatear tablas source("R/funciones_auxiliares.R") # usamos los datos tips del paquete reshape2 propinas <- read_csv("./data/propinas.csv") Y vemos una muestra slice_sample(propinas, n = 10) |> gt() #pnaqqaycqx table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #pnaqqaycqx thead, #pnaqqaycqx tbody, #pnaqqaycqx tfoot, #pnaqqaycqx tr, #pnaqqaycqx td, #pnaqqaycqx th { border-style: none; } #pnaqqaycqx p { margin: 0; padding: 0; } #pnaqqaycqx .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #pnaqqaycqx .gt_caption { padding-top: 4px; padding-bottom: 4px; } #pnaqqaycqx .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #pnaqqaycqx .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #pnaqqaycqx .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #pnaqqaycqx .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #pnaqqaycqx .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #pnaqqaycqx .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #pnaqqaycqx .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #pnaqqaycqx .gt_column_spanner_outer:first-child { padding-left: 0; } #pnaqqaycqx .gt_column_spanner_outer:last-child { padding-right: 0; } #pnaqqaycqx .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #pnaqqaycqx .gt_spanner_row { border-bottom-style: hidden; } #pnaqqaycqx .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #pnaqqaycqx .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #pnaqqaycqx .gt_from_md > :first-child { margin-top: 0; } #pnaqqaycqx .gt_from_md > :last-child { margin-bottom: 0; } #pnaqqaycqx .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #pnaqqaycqx .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #pnaqqaycqx .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #pnaqqaycqx .gt_row_group_first td { border-top-width: 2px; } #pnaqqaycqx .gt_row_group_first th { border-top-width: 2px; } #pnaqqaycqx .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #pnaqqaycqx .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #pnaqqaycqx .gt_first_summary_row.thick { border-top-width: 2px; } #pnaqqaycqx .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #pnaqqaycqx .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #pnaqqaycqx .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #pnaqqaycqx .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #pnaqqaycqx .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #pnaqqaycqx .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #pnaqqaycqx .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #pnaqqaycqx .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #pnaqqaycqx .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #pnaqqaycqx .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #pnaqqaycqx .gt_left { text-align: left; } #pnaqqaycqx .gt_center { text-align: center; } #pnaqqaycqx .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #pnaqqaycqx .gt_font_normal { font-weight: normal; } #pnaqqaycqx .gt_font_bold { font-weight: bold; } #pnaqqaycqx .gt_font_italic { font-style: italic; } #pnaqqaycqx .gt_super { font-size: 65%; } #pnaqqaycqx .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #pnaqqaycqx .gt_asterisk { font-size: 100%; vertical-align: 0; } #pnaqqaycqx .gt_indent_1 { text-indent: 5px; } #pnaqqaycqx .gt_indent_2 { text-indent: 10px; } #pnaqqaycqx .gt_indent_3 { text-indent: 15px; } #pnaqqaycqx .gt_indent_4 { text-indent: 20px; } #pnaqqaycqx .gt_indent_5 { text-indent: 25px; } #pnaqqaycqx .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #pnaqqaycqx div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } cuenta_total propina fumador dia momento num_personas 8.35 1.50 No Jue Comida 2 16.45 2.47 No Sab Cena 2 15.69 3.00 Si Sab Cena 3 17.78 3.27 No Sab Cena 2 20.92 4.08 No Sab Cena 2 25.00 3.75 No Dom Cena 4 38.73 3.00 Si Sab Cena 4 12.74 2.01 Si Jue Comida 2 15.48 2.02 Si Jue Comida 2 13.42 3.48 Si Vie Comida 2 Aquí la unidad de observación es una cuenta particular. Tenemos tres mediciones numéricas de cada cuenta: cúanto fue la cuenta total, la propina, y el número de personas asociadas a la cuenta. Los datos están separados según se fumó o no en la mesa, y temporalmente en dos partes: el día (Jueves, Viernes, Sábado o Domingo), cada uno separado por Cena y Comida. Denotamos por \\(x\\) el valor de medición de una unidad de observación. Usualmente utilizamos sub-índices para identificar entre diferentes puntos de datos (observaciones), por ejemplo, \\(x_n\\) para la \\(n-\\)ésima observación. De tal forma que una colección de \\(N\\) observaciones la escribimos como \\[\\begin{align} \\{x_1, \\ldots, x_N\\}. \\end{align}\\] El primer tipo de comparaciones que nos interesa hacer es para una medición: ¿Varían mucho o poco los datos de un tipo de medición? ¿Cuáles son valores típicos o centrales? ¿Existen valores atípicos? Supongamos entonces que consideramos simplemente la variable de cuenta_total. Podemos comenzar por ordenar los datos, y ver cuáles datos están en los extremos y cuáles están en los lugares centrales: propinas <- propinas |> mutate(orden_cuenta = rank(cuenta_total, ties.method = "first"), f = (orden_cuenta - 0.5) / n()) cuenta <- propinas |> select(orden_cuenta, f, cuenta_total) |> arrange(f) bind_rows(head(cuenta), tail(cuenta)) |> gt() |> fmt_number(columns = f, decimals = 3) #edjkjnqret table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #edjkjnqret thead, #edjkjnqret tbody, #edjkjnqret tfoot, #edjkjnqret tr, #edjkjnqret td, #edjkjnqret th { border-style: none; } #edjkjnqret p { margin: 0; padding: 0; } #edjkjnqret .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #edjkjnqret .gt_caption { padding-top: 4px; padding-bottom: 4px; } #edjkjnqret .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #edjkjnqret .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #edjkjnqret .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #edjkjnqret .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #edjkjnqret .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #edjkjnqret .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #edjkjnqret .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #edjkjnqret .gt_column_spanner_outer:first-child { padding-left: 0; } #edjkjnqret .gt_column_spanner_outer:last-child { padding-right: 0; } #edjkjnqret .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #edjkjnqret .gt_spanner_row { border-bottom-style: hidden; } #edjkjnqret .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #edjkjnqret .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #edjkjnqret .gt_from_md > :first-child { margin-top: 0; } #edjkjnqret .gt_from_md > :last-child { margin-bottom: 0; } #edjkjnqret .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #edjkjnqret .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #edjkjnqret .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #edjkjnqret .gt_row_group_first td { border-top-width: 2px; } #edjkjnqret .gt_row_group_first th { border-top-width: 2px; } #edjkjnqret .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #edjkjnqret .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #edjkjnqret .gt_first_summary_row.thick { border-top-width: 2px; } #edjkjnqret .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #edjkjnqret .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #edjkjnqret .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #edjkjnqret .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #edjkjnqret .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #edjkjnqret .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #edjkjnqret .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #edjkjnqret .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #edjkjnqret .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #edjkjnqret .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #edjkjnqret .gt_left { text-align: left; } #edjkjnqret .gt_center { text-align: center; } #edjkjnqret .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #edjkjnqret .gt_font_normal { font-weight: normal; } #edjkjnqret .gt_font_bold { font-weight: bold; } #edjkjnqret .gt_font_italic { font-style: italic; } #edjkjnqret .gt_super { font-size: 65%; } #edjkjnqret .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #edjkjnqret .gt_asterisk { font-size: 100%; vertical-align: 0; } #edjkjnqret .gt_indent_1 { text-indent: 5px; } #edjkjnqret .gt_indent_2 { text-indent: 10px; } #edjkjnqret .gt_indent_3 { text-indent: 15px; } #edjkjnqret .gt_indent_4 { text-indent: 20px; } #edjkjnqret .gt_indent_5 { text-indent: 25px; } #edjkjnqret .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #edjkjnqret div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } orden_cuenta f cuenta_total 1 0.002 3.07 2 0.006 5.75 3 0.010 7.25 4 0.014 7.25 5 0.018 7.51 6 0.023 7.56 239 0.977 44.30 240 0.982 45.35 241 0.986 48.17 242 0.990 48.27 243 0.994 48.33 244 0.998 50.81 También podemos graficar los datos en orden, interpolando valores consecutivos. A esta función le llamamos la función de cuantiles para la variable cuenta_total. Nos sirve para comparar directamente los distintos valores que observamos los datos según el orden que ocupan. En particular, podemos estudiar la dispersión y valores centrales de los datos observados: El rango de datos va de unos 3 dólares hasta 50 dólares Los valores centrales, por ejemplo el 50% de los valores más centrales, están entre unos 13 y 25 dólares. El valor que divide en dos mitades iguales a los datos es de alrededor de 18 dólares. El cuantil \\(f\\), que denotamos por \\(q(f)\\) es valor a lo largo de la escala de medición de los datos tal que aproximadamente una fracción \\(f\\) de los datos son menores o iguales a \\(q(f)\\). Al cuantil \\(f=0.5\\) le llamamos la mediana. A los cuantiles \\(f=0.25\\) y \\(f=0.75\\) les llamamos cuartiles inferior y superior. En nuestro ejemplo: Los valores centrales —del cuantil 0.25 al 0.75, por decir un ejemplo— están entre unos 13 y 25 dólares. Estos dos cuantiles se llaman cuartil inferior y cuartil superior respectivamente El cuantil 0.5 (o también conocido como mediana) está alrededor de 18 dólares. Éste último puede ser utilizado para dar un valor central de la distribución de valores para cuenta_total. Asimismo podemos dar resúmenes más refinados si es necesario. Por ejemplo, podemos reportar que: El cuantil 0.95 es de unos 35 dólares — sólo 5% de las cuentas son de más de 35 dólares El cuantil 0.05 es de unos 8 dólares — sólo 5% de las cuentas son de 8 dólares o menos. Finalmente, la forma de la gráfica se interpreta usando su pendiente (tasa de cambio) haciendo comparaciones en diferentes partes de la gráfica: La distribución de valores tiene asimetría: el 10% de las cuentas más altas tiene considerablemente más dispersión que el 10% de las cuentas más bajas. Entre los cuantiles 0.2 y 0.7 es donde existe mayor densidad de datos: la pendiente (tasa de cambio) es baja, lo que significa que al avanzar en los valores observados, los cuantiles (el porcentaje de casos) aumenta rápidamente. Cuando la pendiente alta, quiere decir que los datos tienen más dispersión local o están más separados. Observación: Hay varias maneras de definir los cuantiles (ver (William S. Cleveland 1993)): Supongamos que queremos definir \\(q(f)\\), y denotamos los datos ordenados como \\(x_{(1)}, x_{(2)}, \\ldots, x_{(N)}\\), de forma que \\(x_{(1)}\\) es el dato más chico y \\(x_{(N)}\\) es el dato más grande. Para cada \\(x_{(i)}\\) definimos \\[f_i = i / N\\] entonces definimos el cuantil \\(q(f_i)=x_{(i)}\\). Para cualquier \\(f\\) entre 0 y 1, podemos definir \\(q(f)\\) como sigue: si \\(f\\) está entre \\(f_i\\) y \\(f_{i+1}\\) interpolamos linealmente los valores correspondientes \\(x_{(i)}\\) y \\(x_{(i+1)}\\). En la práctica, es más conveniente usar \\(f_i= \\frac{i - 0.5}{N}\\). La gráfica de cuantiles no cambia mucho comparado con la difinición anterior, y esto nos permitirá comparar de mejor manera con distribuciones teóricas que no tienen definido su cuantil 0 y el 1, pues tienen soporte en los números reales (como la distribución normal, por ejemplo). Asociada a la función de cuantiles \\(q\\) tenemos la distribución acumulada empírica de los datos, que es aproximadamente inversa de la función de cuantiles, y se define como: \\[\\hat{F}(x) = i/N\\] si \\(x_{(i)} \\leq x < x_{(i+1)}\\). Nótese que \\(\\hat{F}(q(f_i)) = i/N = f_i\\) (demuéstralo). acum_cuenta <- ecdf(cuenta$cuenta_total) cuenta <- cuenta |> mutate(dea_cuenta_total = acum_cuenta(cuenta_total)) g_acum <- ggplot(cuenta, aes(x = cuenta_total, y = dea_cuenta_total)) + geom_point() + labs(subtitle = "Distribución acum empírica de cuenta total", x = "") g_cuantiles + g_acum La función de distribución acumulada empírica es otra forma de graficar la dispersión de los datos. En su gráfica vemos que proporción de los datos que son iguales o están por debajo de cada valor en el eje horizontal. Nota: En análisis de datos, es más frecuente utilizar la función de cuantiles pues existen versiones más generales que son útiles, por ejemplo, para evaluar ajuste de modelos probabilísticos En la teoría, generalmente es más común utilizar la fda empírica, que tiene una única definición que veremos coincide con definiciones teóricas. Histogramas En algunos casos, es más natural hacer un histograma, donde dividimos el rango de la variable en cubetas o intervalos (en este caso de igual longitud), y graficamos por medio de barras cuántos datos caen en cada cubeta: Es una gráfica más popular, pero perdemos cierto nivel de detalle, y distintas particiones resaltan distintos aspectos de los datos. ¿Cómo se ve la gráfica de cuantiles de las propinas? ¿Cómo crees que esta gráfica se compara con distintos histogramas? g_1 <- ggplot(propinas, aes(sample = propina)) + geom_qq(distribution = stats::qunif) + labs(x = "f", y = "propina") g_1 Finalmente, una gráfica más compacta que resume la gráfica de cuantiles o el histograma es el diagrama de caja y brazos. Mostramos dos versiones, la clásica de Tukey (T) y otra versión menos común de Spear/Tufte (ST): library(ggthemes) cuartiles <- quantile(cuenta$cuenta_total) cuartiles |> round(2) ## 0% 25% 50% 75% 100% ## 3.07 13.35 17.80 24.13 50.81 g_1 <- ggplot(cuenta, aes(x = f, y = cuenta_total)) + labs(subtitle = "Gráfica de cuantiles: Cuenta total") + geom_hline(yintercept = cuartiles[2:4], colour = "gray") + geom_point(alpha = 0.5) + geom_line() g_2 <- ggplot(cuenta, aes(x = factor("ST", levels = "ST"), y = cuenta_total)) + geom_tufteboxplot() + labs(subtitle = "", x = "", y = "") g_3 <- ggplot(cuenta, aes(x = factor("T"), y = cuenta_total)) + geom_boxplot() + labs(subtitle = "", x = "", y = "") g_4 <- ggplot(cuenta, aes(x = factor("P"), y = cuenta_total)) + geom_jitter(height = 0, width =0.2, alpha = 0.5) + labs(subtitle = "", x = "", y = "") g_5 <- ggplot(cuenta, aes(x = factor("V"), y = cuenta_total)) + geom_violin() + labs(subtitle = "", x = "", y = "") g_1 + g_2 + g_3 + g_4 + plot_layout(widths = c(8, 2, 2, 2)) El diagrama de abajo explica los elementos de la versión típica del diagrama de caja y brazos (boxplot). RIC se refiere al Rango Intercuantílico, definido por la diferencia entre los cuantiles 25% y 75%. Figura: Jumanbar / CC BY-SA Ventajas en el análisis inicial En un principio del análisis, estos resúmenes (cuantiles) pueden ser más útiles que utilizar medias y varianzas, por ejemplo. La razón es que los cuantiles: Son cantidades más fácilmente interpretables Los cuantiles centrales son más resistentes a valores atípicos que medias o varianzas Permiten identificar valores extremos Es fácil comparar cuantiles de distintos bonches de datos en la misma escala Nota: Existen diferentes definiciones para calcular cuantiles de una muestra de datos, puedes leer más en este artículo. Media y desviación estándar Las medidas más comunes de localización y dispersión para un conjunto de datos son la media muestral y la desviación estándar muestral. En general, no son muy apropiadas para iniciar el análisis exploratorio, pues: Son medidas más difíciles de interpretar y explicar que los cuantiles. En este sentido, son medidas especializadas. Por ejemplo, compara una explicación intuitiva de la mediana contra una explicación intuitiva de la media. No son resistentes a valores atípicos. Su falta de resistencia los vuelve poco útiles en las primeras etapas de limpieza y descripción y en resúmenes deficientes para distribuciones irregulares (con colas largas por ejemplo). La media, o promedio, se denota por \\(\\bar x\\) y se define como \\[\\begin{align} \\bar x = \\frac1N \\sum_{n = 1}^N x_n. \\end{align}\\] La desviación estándar muestral se define como \\[\\begin{align} \\text{std}(x) = \\sqrt{\\frac1{N-1} \\sum_{n = 1}^N (x_n - \\bar x)^2}. \\end{align}\\] Observación: Si \\(N\\) no es muy chica, no importa mucho si dividimos por \\(N\\) o por \\(N-1\\) en la fórmula de la desviación estándar. La razón de que típicamente se usa \\(N-1\\) la veremos más adelante, en la parte de estimación. Por otro lado, ventajas de estas medidas de centralidad y dispersión son: La media y desviación estándar son computacionalmente convenientes. Por lo tanto regresaremos a estas medidas una vez que estudiemos modelos de probabilidad básicos. En muchas ocasiones conviene usar estas medidas pues permite hacer comparaciones históricas o tradicionales —pues análisis anteriores pudieran estar basados en éstas. Considera el caso de tener \\(N\\) observaciones y asume que ya tienes calculado el promedio para dichas observaciones. Este promedio lo denotaremos por \\(\\bar x_N\\). Ahora, considera que has obtenido \\(M\\) observaciones más. Escribe una fórmula recursiva para la media del conjunto total de datos \\(\\bar x_{N+M}\\) en función de lo que ya tenías precalculado \\(\\bar x_N.\\) ¿En qué situaciones esta propiedad puede ser conveniente? Ejemplos Precios de casas En este ejemplo consideremos los datos de precios de ventas de la ciudad de Ames, Iowa. En particular nos interesa entender la variación del precio de las casas. Por este motivo calculamos los cuantiles que corresponden al 25%, 50% y 75% (cuartiles), así como el mínimo y máximo de los precios de las casas: quantile(casas |> pull(precio_miles)) ## 0% 25% 50% 75% 100% ## 37.9 132.0 165.0 215.0 755.0 Comprueba que el mínimo y máximo están asociados a los cuantiles 0% y 100%, respectivamente. Una posible comparación es considerar los precios y sus variación en función de zona de la ciudad en que se encuentra una vivienda. Podemos usar diagramas de caja y brazos para hacer una comparación burda de los precios en distintas zonas de la ciudad: ggplot(casas, aes(x = nombre_zona, y = precio_miles)) + geom_boxplot() + coord_flip() La primera pregunta que nos hacemos es cómo pueden variar las características de las casas dentro de cada zona. Para esto, podemos considerar el área de las casas. En lugar de graficar el precio, graficamos el precio por metro cuadrado, por ejemplo: ggplot(casas, aes(x = nombre_zona, y = precio_m2)) + geom_boxplot() + coord_flip() Podemos cuantificar la variación que observamos de zona a zona y la variación que hay dentro de cada una de las zonas. Una primera aproximación es observar las variación del precio al calcular la mediana dentro de cada zona, y después cuantificar por medio de cuantiles cómo varía la mediana entre zonas: casas |> group_by(nombre_zona) |> summarise(mediana_zona = median(precio_m2), .groups = "drop") |> arrange(mediana_zona) |> pull(mediana_zona) |> quantile() |> round() ## 0% 25% 50% 75% 100% ## 963 1219 1298 1420 1725 Por otro lado, las variaciones con respecto a las medianas dentro de cada zona, por grupo, se resume como: quantile(casas |> group_by(nombre_zona) |> mutate(residual = precio_m2 - median(precio_m2)) |> pull(residual)) |> round() ## 0% 25% 50% 75% 100% ## -765 -166 0 172 1314 Nótese que este último paso tiene sentido pues la variación dentro de las zonas, en términos de precio por metro cuadrado, es similar. Esto no lo podríamos haber hecho de manera efectiva si se hubiera utilizado el precio de las casas sin ajustar por su tamaño. Podemos resumir este primer análisis con un par de gráficas de cuantiles (William S. Cleveland (1993)): mediana <- median(casas$precio_m2) resumen <- casas |> select(nombre_zona, precio_m2) |> group_by(nombre_zona) |> mutate(mediana_zona = median(precio_m2)) |> mutate(residual = precio_m2 - mediana_zona) |> ungroup() |> mutate(mediana_zona = mediana_zona - mediana) |> select(nombre_zona, mediana_zona, residual) |> pivot_longer(mediana_zona:residual, names_to = "tipo", values_to = "valor") ggplot(resumen, aes(sample = valor)) + geom_qq(distribution = stats::qunif) + facet_wrap(~ tipo) + ylab("Precio por m2") + xlab("f") + labs(subtitle = "Precio por m2 por zona", caption = paste0("Mediana total de ", round(mediana))) Vemos que la mayor parte de la variación del precio por metro cuadrado ocurre dentro de cada zona, una vez que controlamos por el tamaño de las casas. La variación dentro de cada zona es aproximadamente simétrica, aunque la cola derecha es ligeramente más larga con algunos valores extremos. Podemos seguir con otro indicador importante: la calificación de calidad de los terminados de las casas. Como primer intento podríamos hacer: Lo que indica que las calificaciones de calidad están distribuidas de manera muy distinta a lo largo de las zonas, y que probablemente no va ser simple desentrañar qué variación del precio se debe a la zona y cuál se debe a la calidad. Prueba Enlace Consideremos la prueba Enlace (2011) de matemáticas para primarias. Una primera pregunta que alguien podría hacerse es: ¿cuáles escuelas son mejores en este rubro, las privadas o las públicas? enlace_tbl <- enlace |> group_by(tipo) |> summarise(n_escuelas = n(), cuantiles = list(cuantil(mate_6, c(0.05, 0.25, 0.5, 0.75, 0.95)))) |> unnest(cols = cuantiles) |> mutate(valor = round(valor)) enlace_tbl |> spread(cuantil, valor) |> gt() #sykxxonvyi table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #sykxxonvyi thead, #sykxxonvyi tbody, #sykxxonvyi tfoot, #sykxxonvyi tr, #sykxxonvyi td, #sykxxonvyi th { border-style: none; } #sykxxonvyi p { margin: 0; padding: 0; } #sykxxonvyi .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #sykxxonvyi .gt_caption { padding-top: 4px; padding-bottom: 4px; } #sykxxonvyi .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #sykxxonvyi .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #sykxxonvyi .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #sykxxonvyi .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sykxxonvyi .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #sykxxonvyi .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #sykxxonvyi .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #sykxxonvyi .gt_column_spanner_outer:first-child { padding-left: 0; } #sykxxonvyi .gt_column_spanner_outer:last-child { padding-right: 0; } #sykxxonvyi .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #sykxxonvyi .gt_spanner_row { border-bottom-style: hidden; } #sykxxonvyi .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #sykxxonvyi .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #sykxxonvyi .gt_from_md > :first-child { margin-top: 0; } #sykxxonvyi .gt_from_md > :last-child { margin-bottom: 0; } #sykxxonvyi .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #sykxxonvyi .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #sykxxonvyi .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #sykxxonvyi .gt_row_group_first td { border-top-width: 2px; } #sykxxonvyi .gt_row_group_first th { border-top-width: 2px; } #sykxxonvyi .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #sykxxonvyi .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #sykxxonvyi .gt_first_summary_row.thick { border-top-width: 2px; } #sykxxonvyi .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sykxxonvyi .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #sykxxonvyi .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #sykxxonvyi .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #sykxxonvyi .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #sykxxonvyi .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sykxxonvyi .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #sykxxonvyi .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #sykxxonvyi .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #sykxxonvyi .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #sykxxonvyi .gt_left { text-align: left; } #sykxxonvyi .gt_center { text-align: center; } #sykxxonvyi .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #sykxxonvyi .gt_font_normal { font-weight: normal; } #sykxxonvyi .gt_font_bold { font-weight: bold; } #sykxxonvyi .gt_font_italic { font-style: italic; } #sykxxonvyi .gt_super { font-size: 65%; } #sykxxonvyi .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #sykxxonvyi .gt_asterisk { font-size: 100%; vertical-align: 0; } #sykxxonvyi .gt_indent_1 { text-indent: 5px; } #sykxxonvyi .gt_indent_2 { text-indent: 10px; } #sykxxonvyi .gt_indent_3 { text-indent: 15px; } #sykxxonvyi .gt_indent_4 { text-indent: 20px; } #sykxxonvyi .gt_indent_5 { text-indent: 25px; } #sykxxonvyi .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #sykxxonvyi div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } tipo n_escuelas 0.05 0.25 0.5 0.75 0.95 Indígena/Conafe 13599 304 358 412 478 588 General 60166 380 454 502 548 631 Particular 6816 479 551 593 634 703 Para un análisis exploratorio podemos utilizar distintas gráficas. Por ejemplo, podemos utilizar nuevamente las gráficas de caja y brazos, así como graficar los percentiles. Nótese que en la gráfica 1 se utilizan los cuantiles 0.05, 0.25, 0.5, 0.75 y 0.95: ## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0. ## ℹ Please use `linewidth` instead. ## This warning is displayed once every 8 hours. ## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was ## generated. Se puede discutir qué tan apropiada es cada gráfica con el objetivo de realizar comparaciones. Sin duda, graficar más cuantiles es más útil para hacer comparaciones. Por ejemplo, en la Gráfica 1 podemos ver que la mediana de las escuelas generales está cercana al cuantil 5% de las escuelas particulares. Por otro lado, el diagrama de caja y brazos muestra también valores “atípicos”. Antes de contestar prematuramente la pregunta: ¿cuáles son las mejores escuelas? busquemos mejorar la interpretabilidad de nuestras comparaciones. Podemos comenzar por agregar, por ejemplo, el nivel del marginación del municipio donde se encuentra la escuela. Para este objetivo, podemos usar páneles (pequeños múltiplos útiles para hacer comparaciones) y graficar: Esta gráfica pone en contexto la pregunta inicial, y permite evidenciar la dificultad de contestarla. En particular: Señala que la pregunta no sólo debe concentarse en el tipo de “sistema”: pública, privada, etc. Por ejemplo, las escuelas públicas en zonas de marginación baja no tienen una distribución de calificaciones muy distinta a las privadas en zonas de marginación alta. El contexto de la escuela es importante. Debemos de pensar qué factores –por ejemplo, el entorno familiar de los estudiantes– puede resultar en comparaciones que favorecen a las escuelas privadas. Un ejemplo de esto es considerar si los estudiantes tienen que trabajar o no. A su vez, esto puede o no ser reflejo de la calidad del sistema educativo. Si esto es cierto, entonces la pregunta inicial es demasiado vaga y mal planteada. Quizá deberíamos intentar entender cuánto “aporta” cada escuela a cada estudiante, como medida de qué tan buena es cada escuela. Estados y calificaciones en SAT ¿Cómo se relaciona el gasto por alumno, a nivel estatal, con sus resultados académicos? Hay trabajo considerable en definir estos términos, pero supongamos que tenemos el siguiente conjunto de datos (Guber 1999), que son datos oficiales agregados por estado de Estados Unidos. Consideremos el subconjunto de variables sat, que es la calificación promedio de los alumnos en cada estado (para 1997) y expend, que es el gasto en miles de dólares por estudiante en (1994-1995). sat <- read_csv("data/sat.csv") sat_tbl <- sat |> select(state, expend, sat) |> gather(variable, valor, expend:sat) |> group_by(variable) |> summarise(cuantiles = list(cuantil(valor))) |> unnest(cols = c(cuantiles)) |> mutate(valor = round(valor, 1)) |> spread(cuantil, valor) sat_tbl |> gt() #trvhlcrcph table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #trvhlcrcph thead, #trvhlcrcph tbody, #trvhlcrcph tfoot, #trvhlcrcph tr, #trvhlcrcph td, #trvhlcrcph th { border-style: none; } #trvhlcrcph p { margin: 0; padding: 0; } #trvhlcrcph .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #trvhlcrcph .gt_caption { padding-top: 4px; padding-bottom: 4px; } #trvhlcrcph .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #trvhlcrcph .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #trvhlcrcph .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #trvhlcrcph .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #trvhlcrcph .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #trvhlcrcph .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #trvhlcrcph .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #trvhlcrcph .gt_column_spanner_outer:first-child { padding-left: 0; } #trvhlcrcph .gt_column_spanner_outer:last-child { padding-right: 0; } #trvhlcrcph .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #trvhlcrcph .gt_spanner_row { border-bottom-style: hidden; } #trvhlcrcph .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #trvhlcrcph .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #trvhlcrcph .gt_from_md > :first-child { margin-top: 0; } #trvhlcrcph .gt_from_md > :last-child { margin-bottom: 0; } #trvhlcrcph .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #trvhlcrcph .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #trvhlcrcph .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #trvhlcrcph .gt_row_group_first td { border-top-width: 2px; } #trvhlcrcph .gt_row_group_first th { border-top-width: 2px; } #trvhlcrcph .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #trvhlcrcph .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #trvhlcrcph .gt_first_summary_row.thick { border-top-width: 2px; } #trvhlcrcph .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #trvhlcrcph .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #trvhlcrcph .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #trvhlcrcph .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #trvhlcrcph .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #trvhlcrcph .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #trvhlcrcph .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #trvhlcrcph .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #trvhlcrcph .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #trvhlcrcph .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #trvhlcrcph .gt_left { text-align: left; } #trvhlcrcph .gt_center { text-align: center; } #trvhlcrcph .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #trvhlcrcph .gt_font_normal { font-weight: normal; } #trvhlcrcph .gt_font_bold { font-weight: bold; } #trvhlcrcph .gt_font_italic { font-style: italic; } #trvhlcrcph .gt_super { font-size: 65%; } #trvhlcrcph .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #trvhlcrcph .gt_asterisk { font-size: 100%; vertical-align: 0; } #trvhlcrcph .gt_indent_1 { text-indent: 5px; } #trvhlcrcph .gt_indent_2 { text-indent: 10px; } #trvhlcrcph .gt_indent_3 { text-indent: 15px; } #trvhlcrcph .gt_indent_4 { text-indent: 20px; } #trvhlcrcph .gt_indent_5 { text-indent: 25px; } #trvhlcrcph .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #trvhlcrcph div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } variable 0 0.25 0.5 0.75 1 expend 3.7 4.9 5.8 6.4 9.8 sat 844.0 897.2 945.5 1032.0 1107.0 Esta variación es considerable para promedios del SAT: el percentil 75 es alrededor de 1050 puntos, mientras que el percentil 25 corresponde a alrededor de 800. Igualmente, hay diferencias considerables de gasto por alumno (miles de dólares) a lo largo de los estados. Ahora hacemos nuestro primer ejercico de comparación: ¿Cómo se ven las calificaciones para estados en distintos niveles de gasto? Podemos usar una gráfica de dispersión: library(ggrepel) ggplot(sat, aes(x = expend, y = sat, label = state)) + geom_point(colour = "red", size = 2) + geom_text_repel(colour = "gray50") + xlab("Gasto por alumno (miles de dólares)") + ylab("Calificación promedio en SAT") Estas comparaciones no son de alta calidad, solo estamos usando 2 variables —que son muy pocas— y no hay mucho que podamos decir en cuanto explicación. Sin duda nos hace falta una imagen más completa. Necesitaríamos entender la correlación que existe entre las demás características de nuestras unidades de estudio. Las unidades que estamos comparando pueden diferir fuertemente en otras propiedades importantes (o dimensiones), lo cual no permite interpretar la gráfica de manera sencilla. Una variable que tenemos es el porcentaje de alumnos de cada estado que toma el SAT. Podemos agregar como sigue: ggplot(sat, aes(x = expend, y = math, label=state, colour = frac)) + geom_point() + geom_text_repel() + xlab("Gasto por alumno (miles de dólares)") + ylab("Calificación promedio en SAT") Esto nos permite entender por qué nuestra comparación inicial es relativamente pobre. Los estados con mejores resultados promedio en el SAT son aquellos donde una fracción relativamente baja de los estudiantes toma el examen. La diferencia es considerable. En este punto podemos hacer varias cosas. Una primera idea es intentar comparar estados más similares en cuanto a la población de alumnos que asiste. Podríamos hacer grupos como sigue: set.seed(991) k_medias_sat <- kmeans(sat |> select(frac), centers = 4, nstart = 100, iter.max = 100) sat$clase <- k_medias_sat$cluster sat <- sat |> group_by(clase) |> mutate(clase_media = round(mean(frac))) |> ungroup() |> mutate(clase_media = factor(clase_media)) sat <- sat |> mutate(rank_p = rank(frac, ties= "first") / length(frac)) ggplot(sat, aes(x = rank_p, y = frac, label = state, colour = clase_media)) + geom_point(size = 2) Estos resultados indican que es más probable que buenos alumnos decidan hacer el SAT. Lo interesante es que esto ocurre de manera diferente en cada estado. Por ejemplo, en algunos estados era más común otro examen: el ACT. Si hacemos clusters de estados según el % de alumnos, empezamos a ver otra historia. Para esto, ajustemos rectas de mínimos cuadrados como referencia: Esto da una imagen muy diferente a la que originalmente planteamos. Nota que dependiendo de cómo categorizamos, esta gráfica puede variar (puedes intentar con más o menos grupos, por ejemplo). Tablas de conteos Consideremos los siguientes datos de tomadores de té (del paquete FactoMineR (Lê et al. 2008)): tea <- read_csv("data/tea.csv") # nombres y códigos te <- tea |> select(how, price, sugar) |> rename(presentacion = how, precio = price, azucar = sugar) |> mutate( presentacion = fct_recode(presentacion, suelto = "unpackaged", bolsas = "tea bag", mixto = "tea bag+unpackaged"), precio = fct_recode(precio, marca = "p_branded", variable = "p_variable", barato = "p_cheap", marca_propia = "p_private label", desconocido = "p_unknown", fino = "p_upscale"), azucar = fct_recode(azucar, sin_azúcar = "No.sugar", con_azúcar = "sugar")) sample_n(te, 10) ## # A tibble: 10 × 3 ## presentacion precio azucar ## <fct> <fct> <fct> ## 1 bolsas marca sin_azúcar ## 2 bolsas variable sin_azúcar ## 3 bolsas marca con_azúcar ## 4 bolsas fino con_azúcar ## 5 mixto variable con_azúcar ## 6 mixto fino con_azúcar ## 7 bolsas marca sin_azúcar ## 8 bolsas fino sin_azúcar ## 9 mixto variable con_azúcar ## 10 mixto variable sin_azúcar Nos interesa ver qué personas compran té suelto, y de qué tipo. Empezamos por ver las proporciones que compran té según su empaque (en bolsita o suelto): precio <- te |> count(precio) |> mutate(prop = round(100 * n / sum(n))) |> select(-n) tipo <- te |> count(presentacion) |> mutate(pct = round(100 * n / sum(n))) tipo |> gt() #wiljiluquk table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #wiljiluquk thead, #wiljiluquk tbody, #wiljiluquk tfoot, #wiljiluquk tr, #wiljiluquk td, #wiljiluquk th { border-style: none; } #wiljiluquk p { margin: 0; padding: 0; } #wiljiluquk .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #wiljiluquk .gt_caption { padding-top: 4px; padding-bottom: 4px; } #wiljiluquk .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #wiljiluquk .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #wiljiluquk .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #wiljiluquk .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #wiljiluquk .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #wiljiluquk .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #wiljiluquk .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #wiljiluquk .gt_column_spanner_outer:first-child { padding-left: 0; } #wiljiluquk .gt_column_spanner_outer:last-child { padding-right: 0; } #wiljiluquk .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #wiljiluquk .gt_spanner_row { border-bottom-style: hidden; } #wiljiluquk .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #wiljiluquk .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #wiljiluquk .gt_from_md > :first-child { margin-top: 0; } #wiljiluquk .gt_from_md > :last-child { margin-bottom: 0; } #wiljiluquk .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #wiljiluquk .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #wiljiluquk .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #wiljiluquk .gt_row_group_first td { border-top-width: 2px; } #wiljiluquk .gt_row_group_first th { border-top-width: 2px; } #wiljiluquk .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #wiljiluquk .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #wiljiluquk .gt_first_summary_row.thick { border-top-width: 2px; } #wiljiluquk .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #wiljiluquk .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #wiljiluquk .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #wiljiluquk .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #wiljiluquk .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #wiljiluquk .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #wiljiluquk .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #wiljiluquk .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #wiljiluquk .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #wiljiluquk .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #wiljiluquk .gt_left { text-align: left; } #wiljiluquk .gt_center { text-align: center; } #wiljiluquk .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #wiljiluquk .gt_font_normal { font-weight: normal; } #wiljiluquk .gt_font_bold { font-weight: bold; } #wiljiluquk .gt_font_italic { font-style: italic; } #wiljiluquk .gt_super { font-size: 65%; } #wiljiluquk .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #wiljiluquk .gt_asterisk { font-size: 100%; vertical-align: 0; } #wiljiluquk .gt_indent_1 { text-indent: 5px; } #wiljiluquk .gt_indent_2 { text-indent: 10px; } #wiljiluquk .gt_indent_3 { text-indent: 15px; } #wiljiluquk .gt_indent_4 { text-indent: 20px; } #wiljiluquk .gt_indent_5 { text-indent: 25px; } #wiljiluquk .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #wiljiluquk div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } presentacion n pct bolsas 170 57 mixto 94 31 suelto 36 12 La mayor parte de las personas toma té en bolsas. Sin embargo, el tipo de té (en términos de precio o marca) que compran es muy distinto dependiendo de la presentación: tipo <- tipo |> select(presentacion, prop_presentacion = pct) tabla_cruzada <- te |> count(presentacion, precio) |> # porcentajes por presentación group_by(presentacion) |> mutate(prop = round(100 * n / sum(n))) |> select(-n) tabla_cruzada |> pivot_wider(names_from = presentacion, values_from = prop, values_fill = list(prop = 0)) |> gt() #sxkvcchtyg table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #sxkvcchtyg thead, #sxkvcchtyg tbody, #sxkvcchtyg tfoot, #sxkvcchtyg tr, #sxkvcchtyg td, #sxkvcchtyg th { border-style: none; } #sxkvcchtyg p { margin: 0; padding: 0; } #sxkvcchtyg .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #sxkvcchtyg .gt_caption { padding-top: 4px; padding-bottom: 4px; } #sxkvcchtyg .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #sxkvcchtyg .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #sxkvcchtyg .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #sxkvcchtyg .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sxkvcchtyg .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #sxkvcchtyg .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #sxkvcchtyg .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #sxkvcchtyg .gt_column_spanner_outer:first-child { padding-left: 0; } #sxkvcchtyg .gt_column_spanner_outer:last-child { padding-right: 0; } #sxkvcchtyg .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #sxkvcchtyg .gt_spanner_row { border-bottom-style: hidden; } #sxkvcchtyg .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #sxkvcchtyg .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #sxkvcchtyg .gt_from_md > :first-child { margin-top: 0; } #sxkvcchtyg .gt_from_md > :last-child { margin-bottom: 0; } #sxkvcchtyg .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #sxkvcchtyg .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #sxkvcchtyg .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #sxkvcchtyg .gt_row_group_first td { border-top-width: 2px; } #sxkvcchtyg .gt_row_group_first th { border-top-width: 2px; } #sxkvcchtyg .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #sxkvcchtyg .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #sxkvcchtyg .gt_first_summary_row.thick { border-top-width: 2px; } #sxkvcchtyg .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sxkvcchtyg .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #sxkvcchtyg .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #sxkvcchtyg .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #sxkvcchtyg .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #sxkvcchtyg .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sxkvcchtyg .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #sxkvcchtyg .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #sxkvcchtyg .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #sxkvcchtyg .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #sxkvcchtyg .gt_left { text-align: left; } #sxkvcchtyg .gt_center { text-align: center; } #sxkvcchtyg .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #sxkvcchtyg .gt_font_normal { font-weight: normal; } #sxkvcchtyg .gt_font_bold { font-weight: bold; } #sxkvcchtyg .gt_font_italic { font-style: italic; } #sxkvcchtyg .gt_super { font-size: 65%; } #sxkvcchtyg .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #sxkvcchtyg .gt_asterisk { font-size: 100%; vertical-align: 0; } #sxkvcchtyg .gt_indent_1 { text-indent: 5px; } #sxkvcchtyg .gt_indent_2 { text-indent: 10px; } #sxkvcchtyg .gt_indent_3 { text-indent: 15px; } #sxkvcchtyg .gt_indent_4 { text-indent: 20px; } #sxkvcchtyg .gt_indent_5 { text-indent: 25px; } #sxkvcchtyg .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #sxkvcchtyg div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } precio bolsas mixto suelto marca 41 21 14 barato 3 1 3 marca_propia 9 4 3 desconocido 6 1 0 fino 8 20 56 variable 32 52 25 Estos datos podemos examinarlos un rato y llegar a conclusiones, pero esta tabla no necesariamente es la mejor manera de mostrar patrones en los datos. Tampoco son muy útiles gráficas como la siguiente: ggplot(tabla_cruzada |> ungroup() |> mutate(price = fct_reorder(precio, prop)), aes(x = precio, y = prop, group = presentacion, colour = presentacion)) + geom_point() + coord_flip() + geom_line() En lugar de eso, calcularemos perfiles columna. Esto es, comparamos cada una de las columnas con la columna marginal (en la tabla de tipo de estilo de té): num_grupos <- n_distinct(te |> select(presentacion)) tabla <- te |> count(presentacion, precio) |> group_by(presentacion) |> mutate(prop_precio = (100 * n / sum(n))) |> group_by(precio) |> mutate(prom_prop = sum(prop_precio)/num_grupos) |> mutate(perfil = 100 * (prop_precio / prom_prop - 1)) tabla ## # A tibble: 17 × 6 ## # Groups: precio [6] ## presentacion precio n prop_precio prom_prop perfil ## <fct> <fct> <int> <dbl> <dbl> <dbl> ## 1 bolsas marca 70 41.2 25.4 61.8 ## 2 bolsas barato 5 2.94 2.26 30.1 ## 3 bolsas marca_propia 16 9.41 5.48 71.7 ## 4 bolsas desconocido 11 6.47 2.51 158. ## 5 bolsas fino 14 8.24 28.0 -70.6 ## 6 bolsas variable 54 31.8 36.3 -12.5 ## 7 mixto marca 20 21.3 25.4 -16.4 ## 8 mixto barato 1 1.06 2.26 -52.9 ## 9 mixto marca_propia 4 4.26 5.48 -22.4 ## 10 mixto desconocido 1 1.06 2.51 -57.6 ## 11 mixto fino 19 20.2 28.0 -27.8 ## 12 mixto variable 49 52.1 36.3 43.6 ## 13 suelto marca 5 13.9 25.4 -45.4 ## 14 suelto barato 1 2.78 2.26 22.9 ## 15 suelto marca_propia 1 2.78 5.48 -49.3 ## 16 suelto fino 20 55.6 28.0 98.4 ## 17 suelto variable 9 25 36.3 -31.1 tabla_perfil <- tabla |> select(presentacion, precio, perfil, pct = prom_prop) |> pivot_wider(names_from = presentacion, values_from = perfil, values_fill = list(perfil = -100.0)) if_profile <- function(x){ any(x < 0) & any(x > 0) } marcar <- marcar_tabla_fun(25, "red", "black") tab_out <- tabla_perfil |> arrange(desc(bolsas)) |> select(-pct, everything()) |> mutate(across(where(is.numeric), \\(x) round(x, 0))) |> mutate(across(where(if_profile), \\(x) marcar(x))) |> knitr::kable(format_table_salida(), escape = FALSE, digits = 0, booktabs = T) |> kableExtra::kable_styling(latex_options = c("striped", "scale_down"), bootstrap_options = c( "hover", "condensed"), full_width = FALSE) tab_out precio bolsas mixto suelto pct desconocido 158 -58 -100 3 marca_propia 72 -22 -49 5 marca 62 -16 -45 25 barato 30 -53 23 2 variable -12 44 -31 36 fino -71 -28 98 28 Leemos esta tabla como sigue: por ejemplo, los compradores de té suelto compran té fino a una tasa casi el doble (98%) que el promedio. También podemos graficar como: tabla_graf <- tabla_perfil |> ungroup() |> mutate(precio = fct_reorder(precio, bolsas)) |> select(-pct) |> pivot_longer(cols = -precio, names_to = "presentacion", values_to = "perfil") g_perfil <- ggplot(tabla_graf, aes(x = precio, xend = precio, y = perfil, yend = 0, group = presentacion)) + geom_point() + geom_segment() + facet_wrap(~presentacion) + geom_hline(yintercept = 0 , colour = "gray")+ coord_flip() g_perfil Observación: hay dos maneras de construir la columna promedio: tomando los porcentajes sobre todos los datos, o promediando los porcentajes de las columnas. Si los grupos de las columnas están desbalanceados, estos promedios son diferentes. Cuando usamos porcentajes sobre la población, perfiles columna y renglón dan el mismo resultado Sin embargo, cuando hay un grupo considerablemente más grande que otros, las comparaciones se vuelven vs este grupo particular. No siempre queremos hacer esto. Interpretación En el último ejemplo de tomadores de té utilizamos una muestra de personas, no toda la población de tomadores de té. Eso quiere decir que tenemos cierta incertidumbre de cómo se generalizan o no los resultados que obtuvimos en nuestro análisis a la población general. Nuestra respuesta depende de cómo se extrajo la muestra que estamos considerando. Si el mecanismo de extracción incluye algún proceso probabilístico, entonces es posible en principio entender qué tan bien generalizan los resultados de nuestro análisis a la población general, y entender esto depende de entender qué tanta variación hay de muestra a muestra, de todas las posibles muestras que pudimos haber extraido. En las siguientes secciones discutiremos estos aspectos, en los cuales pasamos del trabajo de “detective” al trabajo de “juez” en nuestro trabajo analítico. Suavizamiento loess Las gráficas de dispersión son la herramienta básica para describir la relación entre dos variables cuantitativas, y como vimos en ejemplo anteriores, muchas veces podemos apreciar mejor la relación entre ellas si agregamos una curva loess. Veamos un ejemplo, los siguientes datos muestran los premios ofrecidos y las ventas totales de una lotería a lo largo de 53 sorteos (las unidades son cantidades de dinero indexadas). Graficamos en escalas logarítmicas y agregamos una curva loess. # cargamos los datos load(here::here("data", "ventas_sorteo.Rdata")) ggplot(ventas.sorteo, aes(x = premio, y = ventas.tot.1)) + geom_point() + geom_smooth(method = "loess", span = 0.6, method.args = list(degree = 1), se = FALSE) + scale_x_log10(breaks = c(20000, 40000, 80000)) + scale_y_log10(breaks = c(10000, 15000, 22000, 33000)) El patrón no era difícil de ver en los datos originales, sin embargo, la curva lo hace más claro, el logaritmo de las ventas tiene una relación no lineal con el logaritmo del premio: para premios no muy grandes no parece haber gran diferencia, pero cuando los premios empiezan a crecer por encima de 20,000, las ventas crecen más rápidamente que para premios menores. Este efecto se conoce como bola de nieve, y es frecuente en este tipo de loterías. Antes de adentrarnos a los modelos loess comenzamos explicando cómo se ajustan familias paramétricas de curvas a conjuntos de datos dados. El modelo de regresion lineal ajusta una recta a un conjunto de datos. Por ejemplo, consideremos la familia \\[f_{a,b}(x) = a x + b,\\] para un conjunto de datos bivariados \\(\\{ (x_1, y_1), \\ldots, (x_N, y_N)\\}\\). Buscamos encontrar \\(a\\) y \\(b\\) tales que \\(f_{a,b}\\) de un ajuste óptimo a los datos. Para esto, se minimiza la suma de errores cuadráticos \\[\\frac1N \\sum_{n = 1}^N ( y_n - a x_n - b)^2.\\] En este caso, las constantes \\(a\\) y \\(b\\) se pueden encontrar diferenciando la función de mínimos cuadrados. Nótese que podemos repetir el argumento con otras familias de funciones (por ejemplo cuadráticas). ggplot(ventas.sorteo, aes(x = premio, y = ventas.tot.1)) + geom_point() + geom_smooth(method = "lm", se = FALSE) + scale_x_log10(breaks = c(20000, 40000, 80000)) + scale_y_log10(breaks = c(10000, 15000, 22000, 33000)) Si observamos la gráfica notamos que este modelo lineal (en los logaritmos) no resumen adecuadamente estos datos. Podríamos experimentar con otras familias (por ejemplo, una cuadrática o cúbica, potencias, exponenciales, etc.); sin embargo, en la etapa exploratoria es mejor tomar una ruta de ajuste más flexible y robusta. Regresión local nos provee de un método con estas características: Curvas loess (regresión local): Una manera de mejorar la flexibilidad de los modelos lineales es considerar rectas de manera local. Es decir, en cada \\(x\\) posible consideramos cuál es la recta que mejor ajusta a los datos, considerando solamente valores de \\(x_n\\) que están cercanos a \\(x\\). La siguiente gráfica muestra qué recta se ajusta alrededor de cada punto, y cómo queda el suavizador completo, con distintos valores de suavizamiento. El tono de los puntos indican en cada paso que ventana de datos es considerada: Escogiendo de los parámetros. El parámetro de suavizamiento se encuentra por ensayo y error. La idea general es que debemos encontrar una curva que explique patrones importantes en los datos (que ajuste los datos) pero que no muestre variaciones a escalas más chicas difíciles de explicar (que pueden ser el resultado de influencias de otras variables, variación muestral, ruido o errores de redondeo, por ejemplo). En el proceso de prueba y error iteramos el ajuste y en cada paso hacemos análisis de residuales, con el fin de seleccionar un suavizamiento adecuado. En lugar de usar ajustes locales lineales, podemos usar ajustes locales cuadráticos que nos permiten capturar formas locales cuadráticas sin tener que suavizar demasiado poco: Opcional: cálculo del suavizador La idea es producir ajustes locales de rectas o funciones lineales o cuadráticas. Consideremos especificar dos parámetros: Parámetro de suavizamiento \\(\\alpha\\): toma valores en \\((0,1)\\), cuando \\(\\alpha\\) es más grande, la curva ajustada es más suave. Grado de los polinomios locales que ajustamos \\(\\lambda\\): generalmente se toma \\(\\lambda=1,2\\). Entonces, supongamos que los datos están dados por \\((x_1,y_1), \\ldots, (x_N, y_N)\\), y sean \\(\\alpha\\) un parámetro de suavizamiento fijo, y \\(\\lambda=1\\). Denotamos como \\(\\hat{g}(x)\\) la curva loess ajustada, y como \\(w_n(x)\\) a una función de peso (que depende de x) para la observación \\((x_n, y_n)\\). Para poder calcular \\(w_n(x)\\) debemos comenzar calculando \\(q=\\lfloor{N\\alpha}\\rfloor\\) que suponemos mayor que uno, esta \\(q\\) es el número de puntos que se utilizan en cada ajuste local. Ahora definimos la función tricubo: \\[\\begin{align} T(u)=\\begin{cases} (1-|u|^3)^3, & \\text{para $|u| < 1$}.\\\\ 0, & \\text{en otro caso}. \\end{cases} \\end{align}\\] entonces, para el punto \\(x\\) definimos el peso correspondiente al dato \\((x_n,y_n)\\), denotado por \\(w_n(x)\\) como: \\[w_n(x)=T\\bigg(\\frac{|x-x_n|}{d_q(x)}\\bigg)\\] donde \\(d_q(x)\\) es el valor de la \\(q\\)-ésima distancia más chica (la más grande entre las \\(q\\) más chicas) entre los valores \\(|x-x_j|\\), \\(j=1,\\ldots,N\\). De esta forma, las observaciones \\(x_n\\) reciben más peso cuanto más cerca estén de \\(x\\). En palabras, de \\(x_1,...,x_N\\) tomamos los \\(q\\) datos más cercanos a \\(x\\), que denotamos \\(x_{i_1}(x) \\leq x_{i_2}(x) \\leq \\cdots \\leq x_{i_q}(x)\\). Los re-escalamos a \\([0,1]\\) haciendo corresponder \\(x\\) a \\(0\\) y el punto más alejado de \\(x\\) (que es \\(x_{i_q}\\)) a 1. Aplicamos el tricubo (gráfica de abajo), para encontrar los pesos de cada punto. Los puntos que están a una distancia mayor a \\(d_q(x)\\) reciben un peso de cero, y los más cercanos un peso que depende de que tan cercanos están a \\(x\\). Nótese que \\(x\\) es el punto ancla en dónde estamos ajustando la regresión local. tricubo <- function(x) { ifelse(abs(x) < 1, (1 - abs(x) ^ 3) ^ 3, 0) } curve(tricubo, from = -1.5, to = 1.5) Finalmente, para cada valor de \\(x_k\\) que está en el conjunto de datos \\(\\{x_1,...,x_n\\}\\), ajustamos una recta de mínimos cuadrados ponderados por los pesos \\(w_n(x)\\), es decir, minimizamos (en el caso lineal): \\[\\sum_{i=1}^nw_n(x_k)(y_i-ax_n-b)^2.\\] Observaciones: Cualquier función (continua y quizás diferenciable) con la forma de flan del tricubo que se desvanece fuera de \\((-1,1),\\) es creciente en \\((-1,0)\\) y decreciente en \\((0, 1)\\) es un buen candidato para usarse en lugar del tricubo. La razón por la que escogemos precisamente esta forma algebráica no tiene que ver con el análisis exploratorio, sino con las ventajas teóricas adicionales que tiene en la inferencia. El caso \\(\\lambda=2\\) es similar. La única diferencia es en el paso de ajuste, donde usamos funciones cuadráticas, y obtendríamos entonces tres familias de parámetros \\(a(x_k), b_1(x_k), b_2(x_k),\\) para cada \\(k \\in \\{1, \\ldots, N\\}\\). Caso de estudio: nacimientos en México Podemos usar el suavizamiento loess para entender y describir el comportamiento de series de tiempo, en las cuáles intentamos entender la dependencia de una serie de mediciones indexadas por el tiempo. Típicamente es necesario utilizar distintas componentes para describir exitosamente una serie de tiempo, y para esto usamos distintos tipos de suavizamientos. Veremos que distintas componentes varían en distintas escalas de tiempo (unas muy lentas, como la tendencia, otras más rapidamente, como variación quincenal, etc.). Este caso de estudio esta basado en un análisis propuesto por A. Vehtari y A. Gelman, junto con un análisis de serie de tiempo de William S. Cleveland (1993). En nuestro caso, usaremos los datos de nacimientos registrados por día en México desde 1999. Los usaremos para contestar las preguntas: ¿cuáles son los cumpleaños más frecuentes? y ¿en qué mes del año hay más nacimientos? Podríamos utilizar una gráfica popular (ver por ejemplo esta visualización) como: Sin embargo, ¿cómo criticarías este análisis desde el punto de vista de los tres primeros principios del diseño analítico? ¿Las comparaciones son útiles? ¿Hay aspectos multivariados? ¿Qué tan bien explica o sugiere estructura, mecanismos o causalidad? Datos de natalidad para México library(lubridate) library(ggthemes) theme_set(theme_minimal(base_size = 14)) natalidad <- read_rds("./data/nacimientos/natalidad.rds") |> mutate(dia_semana = weekdays(fecha)) |> mutate(dia_año = yday(fecha)) |> mutate(año = year(fecha)) |> mutate(mes = month(fecha)) |> ungroup() |> mutate(dia_semana = recode(dia_semana, Monday = "Lunes", Tuesday = "Martes", Wednesday = "Miércoles", Thursday = "Jueves", Friday = "Viernes", Saturday = "Sábado", Sunday = "Domingo")) |> #necesario pues el LOCALE puede cambiar mutate(dia_semana = recode(dia_semana, lunes = "Lunes", martes = "Martes", miércoles = "Miércoles", jueves = "Jueves", viernes = "Viernes", sábado = "Sábado", domingo = "Domingo")) |> mutate(dia_semana = fct_relevel(dia_semana, c("Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado", "Domingo"))) Consideremos los datos agregados del número de nacimientos (registrados) por día desde 1999 hasta 2016. Un primer intento podría ser hacer una gráfica de la serie de tiempo. Sin embargo, vemos que no es muy útil: Hay varias características que notamos. Primero, parece haber una tendencia ligeramente decreciente del número de nacimientos a lo largo de los años. Segundo, la gráfica sugiere un patrón anual. Y por último, encontramos que hay dispersión producida por los días de la semana. Sólo estas características hacen que la comparación entre días sea difícil de realizar. Supongamos que comparamos el número de nacimientos de dos miércoles dados. Esa comparación será diferente dependiendo: del año donde ocurrieron, el mes donde ocurrieron, si semana santa ocurrió en algunos de los miércoles, y así sucesivamente. Como en nuestros ejemplos anteriores, la idea del siguiente análisis es aislar las componentes que observamos en la serie de tiempo: extraemos componentes ajustadas, y luego examinamos los residuales. En este caso particular, asumiremos una descomposición aditiva de la serie de tiempo (William S. Cleveland 1993). En el estudio de series de tiempo una estructura común es considerar el efecto de diversos factores como tendencia, estacionalidad, ciclicidad e irregularidades de manera aditiva. Esto es, consideramos la descomposición \\[\\begin{align} y(t) = f_{t}(t) + f_{e}(t) + f_{c}(t) + \\varepsilon. \\end{align}\\] Una estrategia de ajuste, como veremos más adelante, es proceder de manera modular. Es decir, se ajustan los componentes de manera secuencial considerando los residuales de los anteriores. Tendencia Comenzamos por extraer la tendencia, haciendo promedios loess (William S. Cleveland 1979) con vecindades relativamente grandes. Quizá preferiríamos suavizar menos para capturar más variación lenta, pero si hacemos esto en este punto empezamos a absorber parte de la componente anual: mod_1 <- loess(n ~ as.numeric(fecha), data = natalidad, span = 0.2, degree = 1) datos_dia <- natalidad |> mutate(ajuste_1 = fitted(mod_1)) |> mutate(res_1 = n - ajuste_1) Notemos que a principios de 2000 el suavizador está en niveles de alrededor de 7000 nacimientos diarios, hacia 2015 ese número es más cercano a unos 6000. Componente anual Al obtener la tendencia podemos aislar el efecto a largo plazo y proceder a realizar mejores comparaciones (por ejemplo, comparar un día de 2000 y de 2015 tendria más sentido). Ahora, ajustamos los residuales del suavizado anterior, pero con menos suavizamiento. Así evitamos capturar tendencia: mod_anual <- loess(res_1 ~ as.numeric(fecha), data = datos_dia, degree = 2, span = 0.005) datos_dia <- datos_dia |> mutate(ajuste_2 = fitted(mod_anual)) |> mutate(res_2 = res_1 - ajuste_2) Día de la semana Hasta ahora, hemos aislado los efectos por plazos largos de tiempo (tendencia) y hemos incorporado las variaciones estacionales (componente anual) de nuestra serie de tiempo. Ahora, veremos cómo capturar el efecto por día de la semana. En este caso, podemos hacer suavizamiento loess para cada serie de manera independiente datos_dia <- datos_dia |> group_by(dia_semana) |> nest() |> mutate(ajuste_mod = map(data, ~ loess(res_2 ~ as.numeric(fecha), data = .x, span = 0.1, degree = 1))) |> mutate(ajuste_3 = map(ajuste_mod, fitted)) |> select(-ajuste_mod) |> unnest(cols = c(data, ajuste_3)) |> mutate(res_3 = res_2 - ajuste_3) |> ungroup() Residuales Por último, examinamos los residuales finales quitando los efectos ajustados: ## `geom_smooth()` using formula = 'y ~ x' Observación: nótese que la distribución de estos residuales presenta irregularidades interesantes. La distribución es de colas largas, y no se debe a unos cuantos datos atípicos. Esto generalmente es indicación que hay factores importantes que hay que examinar mas a detalle en los residuales: Reestimación Cuando hacemos este proceso secuencial de llevar el ajuste a los residual, a veces conviene iterarlo. La razón es que en una segunda o tercera pasada podemos hacer mejores estimaciones de cada componente, y es posible suavizar menos sin capturar componentes de más alta frecuencia. Así que podemos regresar a la serie original para hacer mejores estimaciones, más suavizadas: # Quitamos componente anual y efecto de día de la semana datos_dia <- datos_dia |> mutate(n_1 = n - ajuste_2 - ajuste_3) # Reajustamos mod_1 <- loess(n_1 ~ as.numeric(fecha), data = datos_dia, span = 0.02, degree = 2, family = "symmetric") Y ahora repetimos con la componente de día de la semana: Análisis de componentes Ahora comparamos las componentes estimadas y los residuales en una misma gráfica. Por definición, la suma de todas estas componentes da los datos originales. Este último paso nos permite diversas comparaciones que explican la variación que vimos en los datos. Una gran parte de los residuales está entre \\(\\pm 250\\) nacimientos por día. Sin embargo, vemos que las colas tienen una dispersión mucho mayor: quantile(datos_dia$res_6, c(00, .01,0.05, 0.10, 0.90, 0.95, 0.99, 1)) |> round() ## 0% 1% 5% 10% 90% 95% 99% 100% ## -2238 -1134 -315 -202 188 268 516 2521 ¿A qué se deben estas colas tan largas? Viernes 13? Podemos empezar con una curosidad. Los días Viernes o Martes 13, ¿nacen menos niños? Nótese que fue útil agregar el indicador de Semana santa por el Viernes 13 de Semana Santa que se ve como un atípico en el panel de los viernes 13. Residuales: antes y después de 2006 Veamos primero una agregación sobre los años de los residuales. Lo primero es observar un cambio que sucedió repentinamente en 2006: La razón es un cambio en la ley acerca de cuándo pueden entrar los niños a la primaria. Antes era por edad y había poco margen. Ese exceso de nacimientos son reportes falsos para que los niños no tuvieran que esperar un año completo por haber nacido unos cuantos días después de la fecha límite. Otras características que debemos investigar: Efectos de Año Nuevo, Navidad, Septiembre 16 y otros días feriados como Febrero 14. Semana santa: como la fecha cambia, vemos que los residuales negativos tienden a ocurrir dispersos alrededor del día 100 del año. Otros días especiales: más de residuales Ahora promediamos residuales (es posible agregar barras para indicar dispersión a lo largo de los años) para cada día del año. Podemos identificar ahora los residuales más grandes: se deben, por ejemplo, a días feriados, con consecuencias adicionales que tienen en días ajuntos (excesos de nacimientos): Semana santa Para Semana Santa tenemos que hacer unos cálculos. Si alineamos los datos por días antes de Domingo de Pascua, obtenemos un patrón de caída fuerte de nacimientos el Viernes de Semana Santa, y la característica forma de “valle con hombros” en días anteriores y posteriores estos Viernes. ¿Por qué ocurre este patrón? Nótese un defecto de nuestro modelo: el patrón de “hombros” alrededor del Viernes Santo no es suficientemente fuerte para equilibrar los nacimientos faltantes. ¿Cómo podríamos mejorar nuestra descomposición? Referencias "],["tipos-de-estudio-y-experimentos.html", "Sección 2 Tipos de estudio y experimentos Muestreo aleatorio Pero si no podemos hacer muestreo aleatorio? El estimador estándar Experimentos tradicionales Bloqueo Variables desconocidas Aleatorizando el tratamiento Selección de unidades y tratamiento Asignación natural del tratamiento", " Sección 2 Tipos de estudio y experimentos Motivación Pregunta de entrevista de Google (Chihara and Hesterberg 2018) Imagina que eres consultor y te preguntan lo siguiente (ver siguiente figura): Estoy haciendo una comparación de antes y después donde la hipótesis alternativa es pre.media.error > post.media.error. La distribución de ambas muestras es sesgada a la derecha. ¿Qué prueba me recomiendas para ésta situación? Figure 2.1: Error CPR, gráfica de densidad. Far better an approximate answer to the right question, which is often vague, than an exact answer to the wrong question, which can always be made precise. — John Tukey La siguiente imagen Roger Peng representa una situación común a la que se enfrenta el analista de datos, y se desarrolló en el contexto de preguntas vagas. En el esquema hay tres caminos: uno es uno ideal que pocas veces sucede, otro produce respuestas poco útiles pero es fácil, y otro es tortuoso pero que caracteriza el mejor trabajo de análisis de datos: Figure 2.2: Adaptado de R. Peng: Tukey, design thinking and better questions. Ejemplos: Alguien nos pregunta cuáles son las tiendas que mas venden de una cadena. Podríamos consultar bases de datos, hacer extracciones, definir periodos, etc. y reportar el promedio de ventas en el último mes, esta respuesta probablemente es poco útil. Nos damos cuenta, por ejemplo, porque la peor tienda es una que abrió hace relativamente poco, y la mejor es una de las tiendas más grandes que está en una zona de tráfico de alto costo. Una pregunta más interesante es, ¿qué equipos de ventas tienen mejor desempeño? ¿Cuánto aporta tener una cafetería dentro de la tienda en términos de ventas?, etc. Proceso Generador de Datos Entre las preguntas que se debe hacer el analista de datos una fundamental es entender el proceso generador de datos, pues esto determinará que otras preguntas son relevantes, y que análisis son adecuados, tanto en términos prácticos como estadísticos. La inferencia estadística busca hacer afirmaciones, cuantificadas de manera probabilista, acerca de datos que no tenemos, usando regularidades y conocimiento de datos que sí tenemos disponibles y métodos cuantitativos. Para hacer afirmaciones inferenciales eficientes y bien calibradas (con garantías estadísticas de calibración) a preguntas donde queremos generalizar de muestra a población, se requiere conocer con precisión el proceso que genera los datos muestrales. Esto incluye saber con detalle cómo se seleccionaron los datos a partir de los que se quiere hacer inferencia. En este caso, eficiente quiere decir que aprovechamos toda la información que está en los datos observados de manera que nuestros rangos de incertidumbre son lo más chico posibles (además de estar correctamente calibrados). Por su parte, probabilísticamente bien calibrados se refiere a que, lo que decimos que puede ocurrir con 10% de probabilidad ocurre efectivamente 1 de cada 10 veces, si decimos 20% entonces ocurre 2 de 20, etc. Veremos que para muestras dadas naturalmente, a veces es muy difiícil entender a fondo el proceso que generó la muestra y por tanto no tenemos las garantías de eficiencia y calibración. Ejemplo: Prevalencia de anemia Supongamos que nos interesa conocer el porcentaje de menores en edad escolar, (entre 6 y 15 años), con anemia en México. La fuente de datos disponible corresponde a registros del IMSS de hospitalizaciones de menores, ya sea por anemia o por otra causa (infecciones gastrointestinales, apendicitis, tratamiento de leucemia, …), se registró si el menor tenía anemia. En nuestra muestra el 47% de los niños tiene anemia. head(paciente) #> # A tibble: 6 × 4 #> edad padecimiento sexo anemia #> <int> <chr> <chr> <int> #> 1 8 picadura alacrán mujer 0 #> 2 10 infección intestinal hombre 1 #> 3 7 mordedura de perro hombre 1 #> 4 8 asma hombre 1 #> 5 13 infección intestinal mujer 0 #> 6 7 picadura alacrán hombre 0 ¿Qué nos dice esta cantidad acerca de la anemia en la población? ¿Podemos hacer inferencia estadística? ¿Cómo calculamos intervalos de confianza? # Si calculo el error estándar de la p estimada como sigue, es correcto? p <- mean(paciente$anemia) sqrt(p * (1 - p) / 5000) #> [1] 0.007060751 Muestreo aleatorio En la situación ideal diseñaríamos una muestra aleatoria de menores de edad, por ejemplo, utilizando el registro en educación primaria de la SEP, y mediríamos la prevalencia de anemia en la muestra, usaríamos esta muestra para estimar la prevalencia en la población y tendríamos además las herramientas para medir la incertidumbre de nuestra estimación (reportar intervalos, o errores estándar). El elemento clave, es la aleatorización en la selección de la muestra, la idea es distribuir los efecros desconcidos o no controlables que pueden introducir sesgos o variabilidad no conocida en los resultados. Pero si no podemos hacer muestreo aleatorio? En el caso de prevalencia de anemia, discutiendo con médicos e investigadores nos informan que la anemia se presenta en tasas más altas en niños más chicos. paciente |> count(edad) |> mutate(prop = round(100 * n / sum(n))) #> # A tibble: 10 × 3 #> edad n prop #> <int> <int> <dbl> #> 1 6 1001 20 #> 2 7 931 19 #> 3 8 980 20 #> 4 9 445 9 #> 5 10 484 10 #> 6 11 489 10 #> 7 12 246 5 #> 8 13 239 5 #> 9 14 90 2 #> 10 15 95 2 Y consultando con las proyecciones de población notamos que los niños chicos están sobrerepresentados en la muestra. Lo que nos hace considerar que debemos buscar una manera de ponderar nuestras observaciones para que reflejen a la población. Más aún, investigamos que algunas enfermedades están asociadas a mayor prevalencia de anemia: paciente |> count(padecimiento) |> arrange(-n) #> # A tibble: 7 × 2 #> padecimiento n #> <chr> <int> #> 1 infección respiratoria 745 #> 2 mordedura de perro 723 #> 3 úlcera 723 #> 4 asma 713 #> 5 apendcitis 704 #> 6 picadura alacrán 701 #> 7 infección intestinal 691 Utilizamos esta información para modelar y corregir nuestra estimación original. Por ejemplo con modelos de regresión. Sin embargo, debemos preguntarnos: ¿Hay más variables qué nos falta considerar? Ejemplo: Policías y tráfico Supongamos que nos preguntan en cuánto reduce un policía el tráfico en un crucero grande de la ciudad. La cultura popular ha establecido que los policías en cruceros hacen más tráfico porque no saben mover los semáforos. Nosotros decidimos buscar unos datos para entender esto. Escogemos entonces un grupo de cruceros problemáticos, registramos el tráfico cuando visitamos, y si había un policía o no. Después de este esfuerzo, obtenemos los siguientes datos: #> # A tibble: 10 × 2 #> # Groups: policia [2] #> policia tiempo_espera_min #> <int> <dbl> #> 1 0 2.27 #> 2 0 2.65 #> 3 0 3.4 #> 4 0 0.39 #> 5 0 1.1 #> 6 1 10.8 #> 7 1 4.67 #> 8 1 7.77 #> 9 1 6.3 #> 10 1 6.99 Lo que sabemos ahora es que la presencia de un policía es indicador de tráfico alto. El análisis prosiguiría calculando medias y medidas de error (escogimos una muestra aleatoria): Si somos ingenuos, entonces podríamos concluir que los policías efectivamente empeoran la situación cuando manipulan los semáforos, y confirmaríamos la sabiduría popular. Para juzgar este argumento desde el punto de vista causal, nos preguntamos primero: ¿Cuáles son los contrafactuales (los contrafactuales explican que pasaría si hubiéramos hecho otra cosa que la que efectivamente hicimos) de las observaciones? Efectos causales y el esquema de resultados potenciales Consideramos un tratamiento binario: Se manda policía o no se manda policía. Un resultado potencial es aquél que se observaría bajo un tratamiento particular. En cada semáforo, a una hora dada, hay dos resultados potenciales, uno por cada valor del tratamiento: \\(y_1:\\) tiempo de espera si se envía policía. \\(y_0:\\) tiempo de espera si no se envía policía. Para cada semáforo, en el momento de registro, uno observa únicamente uno de los dos resultados potenciales. El resultado no observado se conoce como resultado contrafactual. El estimador estándar A la comparación anterior - la diferencia de medias de tratados y no tratados - le llamamos usualmente el estimador estándar del efecto causal. Muchas veces este es un estimador malo del efecto causal. En nuestro ejemplo, para llegar a la conclusión errónea que confirma la sabiduría popular, hicimos un supuesto importante: En nuestra muestra, los casos con policía actúan como contrafactuales de los casos sin policía. Asi que asumimos que los casos con policía y sin policía son similares, excepto por la existencia o no de policía. En nuestro ejemplo, quizá un analista más astuto nota que tienen categorías históricas de qué tan complicado es cada crucero. Junta a sus datos, y obtiene: #> # A tibble: 10 × 3 #> # Groups: policia [2] #> policia tiempo_espera_min categoria #> <int> <dbl> <fct> #> 1 0 2.27 Fluido #> 2 0 2.65 Fluido #> 3 0 3.4 Típico #> 4 0 0.39 Fluido #> 5 0 1.1 Fluido #> 6 1 10.8 Complicado #> 7 1 4.67 Típico #> 8 1 7.77 Complicado #> 9 1 6.3 Complicado #> 10 1 6.99 Típico El analista argumenta entonces que los policías se enviaron principalmente a cruceros que se consideran Complicados según datos históricos. Esto resta credibilidad a la comparación que hicimos inicialmente: La comparación del estimador estándar no es de peras con peras: estamos comparando qué efecto tienen los policías en cruceros difíciles, con cruceros no difíciles donde no hay policía. La razón de esto es que el proceso generador de los datos incluye el hecho de que no se envían policías a lugares donde no hay tráfico. ¿Cómo producir contrafactuales para hacer la comparación correcta? Experimentos tradicionales Idealmente, quisiéramos observar un mismo crucero en las dos condiciones: con y sin policías. Esto no es posible. En un experimento “tradicional”, como nos lo explicaron en la escuela, nos aproximamos a esto preparando dos condiciones idénticas, y luego alteramos cada una de ellas con nuestra intervención. Si el experimento está bien hecho, esto nos da observaciones en pares, y cada quien tiene su contrafactual. La idea del experimiento tradicional es controlar todos los factores que intervienen en los resultados, y sólo mover el tratamiento para producir los contrafactuales. Más en general, esta estrategia consiste en hacer bloques de condiciones, donde las condiciones son prácticamente idénticas dentro de cada bloque. Comparamos entonces unidades tratadas y no tratadas dentro de cada bloque. Por ejemplo, si queremos saber si el tiempo de caída libre es diferente para un objeto más pesado que otro, prepararíamos dos pesos con el mismo tamaño pero de peso distinto. Soltaríamos los dos al mismo tiempo y compararíamos el tiempo de caída de cada uno. En nuestro caso, como es usual en problemas de negocio o sociales, hacer esto es considerablemente más difícil. No podemos “preparar” cruceros con condiciones idénticas. Sin embargo, podríamos intentar \\(bloquear\\) los cruceros según información que tenemos acerca de ellos, para hacer más comparaciones de peras con peras. Bloqueo Podemos acercanos en lo posible a este ideal de experimentación usando información existente. En lugar de hacer comparaciones directas entre unidades que recibieron el tratamiento y las que no (que pueden ser diferentes en otros aspectos, como vimos arriba), podemos refinar nuestras comparaciones bloquéandolas con variables conocidas. En el ejemplo de los policías, podemos hacer lo siguiente: dentro de cada categoría de cruceros (fluido, típico o complicado), tomaremos una muestra de cruceros, algunos con policía y otros sin. Haremos comparaciones dentro de cada categoría. Obtenemos una muestra con estas características (6 casos en cada categoría de crucero, 3 con policía y 3 sin policía): categoria policia n Fluido 0 3 Fluido 1 3 Típico 0 3 Típico 1 3 Complicado 0 3 Complicado 1 3 Y ahora hacemos comparaciones dentro de cada bloque creado por categoría: #> # A tibble: 3 × 3 #> # Groups: categoria [3] #> categoria `policia =0` `policia =1` #> <fct> <dbl> <dbl> #> 1 Fluido 2.1 0.8 #> 2 Típico 5.6 4.2 #> 3 Complicado 10.4 8.6 Y empezamos a ver otra imagen en estos datos: comparando tipos e cruceros similares, los que tienen policía tienen tiempos de espera ligeramente más cortos. ¿Hemos termniado? ¿Podemos concluir que el efecto de un policía es beneficiosos pero considerablemente chico? ¿Qué problemas puede haber con este análisis? Variables desconocidas El problema con el análisis anterior es que controlamos por una variable que conocemos, pero muchas otras variables pueden estar ligadas con el proceso de selección de cruceros para enviar policías. Por ejemplo, envían o policías a cruceros Típicos solo cuando reportan mucho tráfico. No envían a un polícia a un crucero Complicado si no presenta demasiado tráfico. Existen otras variables desconocidas que los tomadores de decisiones usan para enviar a los policías. En este caso, por ejemplo, los expertos hipotéticos nos señalan que hay algunos cruceros que aunque problemáticos, a veces su tráfico se resuelve rápidamente, mientras que otros tienen tráfico más persistente, y prefieren enviar policías a los de tráfico persistente. La lista de cruceros persistentes están en una hoja de excel que se comparte de manera informal. En resumen, no tenemos conocimiento detallado del proceso generador de datos en cuanto a cómo se asignan los policías a los cruceros. Igual que en la sección anterior, podemos cortar esta complejidad usando aleatorización. Nótese que los expertos no están haciendo nada malo: en su trabajo están haciendo el mejor uso de los recursos que tienen. El problema es que por esa misma razón no podemos saber el resultado de sus esfuerzos, y si hay maneras de optimizar la asignación que hacen actualmente. Aleatorizando el tratamiento Tomamos la decisión entonces de hacer un experimento que incluya aletorización. En un dia particular, escogeremos algunos cruceros. Dicidimos usar solamente cruceros de la categoría Complicada y Típica, pues esos son los más interesantes para hacer intervenciones. Usaremos un poco de código para entener el detalle: en estos datos, tenemos para cada caso los dos posibles resultados hipotéticos \\(y_0\\) y \\(y_1\\) (con policia y sin policia). En el experimento asignamos el tratamiento al azar: muestra_exp <- trafico_tbl |> filter(categoria != "Fluido") |> sample_n(200) |> # asignar tratamiento al azar, esta es nuestra intervención: mutate(tratamiento_policia = rbernoulli(length(y_0), 0.5)) |> # observar resultado mutate(tiempo_espera_exp = ifelse(tratamiento_policia == 1, y_1, y_0)) Nótese la diferencia si tomamos la asignación natural del tratamiento (policía o no): set.seed(134) muestra_natural <- trafico_tbl |> filter(categoria != "Fluido") |> sample_n(200) |> # usamos el tratamiento que se asignó # policia indica si hubo o no policía en ese crucero # observar resultado mutate(tiempo_espera_obs = ifelse(policia == 1, y_1, y_0)) Resumimos nuestros resultados del experimento son: #> # A tibble: 2 × 3 #> # Groups: categoria [2] #> categoria `policia=0` `policia=1` #> <fct> <dbl> <dbl> #> 1 Típico 6.24 4.97 #> 2 Complicado 15.8 8.47 Sin embargo, la muestra natural da: #> # A tibble: 2 × 3 #> # Groups: categoria [2] #> categoria `policia=0` `policia=1` #> <fct> <dbl> <dbl> #> 1 Típico 5.49 4.35 #> 2 Complicado 10.8 8.93 ¿Cuál de los dos análisis da la respuesta correcta a la pregunta: ayudan o no los policías a reducir el tráfico en los cruceros problemáticos? El experimento establece que un policía en promedio reduce a la mitad el tiempo de espera en un crucero complicado Selección de unidades y tratamiento Vimos dos tipos de inferencia que requieren distintos diseños de estudio: a poblaciones (ejemplo anemia) y causal (ejemplo policías). En el escenario ideal de cada uno de estos ejemplos requerimos un mecanismo de aleatorización, sin embargo, la aleatorización requerida en cada caso es distinta y distinguir esto es fundamental para entender las inferencias que podemos hacer en distintos escenarios. Inferencia estadística de acuerdo al tipo del diseño (Ramsey and Schafer (2012)). El cuadro arriba a la izquierda es donde el análisis es más simple y los resultados son más fáciles de interpretar. En este escenario don de la aleatorización es tanto en unidades como en grupos no hacen falta supuestos adicionales para tener las garantías de métodos de inferencia. Es posible hacer análisis fuera de este cuadro, pero el proceso es más complicado, requieren más supuestos, conocimiento del dominio y habilidades de análisis. En general resultan conclusiones menos sólidas. Muchas veces no nos queda otra más que trabajar fuera del cuadro ideal. El punto crucial para entender las medidas de incertidumbre estadística es visualizar de manera hipotética, replicaciones del estudio y las condiciones que llevaron a la selección de la muestra. Esto es, entender el proceso generador de datos e imaginar replicarlo. Ubica los siguientes tipos de análisis: Pruebas clínicas para medicinas Analizar cómo afecta tener seguro médico a los ingresos, usando datos del ENIGH. Estimación de retorno sobre inversión en modelos de marketing mix. Asignación natural del tratamiento Cuando consideramos un sistema donde se “asignan” tratamientos de manera natural, generalmente los tratamientos se asignan bajo un criterio de optimización o conveniencia (por ejemplo los policías a cruceros problemáticos). La cara buena de este hecho es que de alguna forma los resultados están intentando optimizarse, y la gente está haciendo su trabajo. La cara mala de este hecho es que no podemos evaluar de manera simple la efectividad de los tratamientos. Y esto hace difícil optimizar de forma cuantificable los procesos, o entender qué funciona y qué no. Referencias "],["pruebas-de-hipótesis.html", "Sección 3 Pruebas de hipótesis Comparación con poblaciones de referencia Comparando distribuciones Prueba de permutaciones y el lineup Comparaciones usando lineup (continuación) Prueba de permutaciones para proporciones Pruebas de hipótesis tradicionales Tomadores de té (continuación) Pruebas de permutación: implementación. Ejemplo: tiempos de fusión Ejemplo: tiempos de fusión (continuación) Separación de grupos La “crisis de replicabilidad” El jardín de los senderos que se bifurcan Ejemplo: decisiones de análisis y valores p Alternativas o soluciones", " Sección 3 Pruebas de hipótesis Las primeras técnicas inferenciales que veremos intentan contestar la siguiente pregunta: Si observamos cierto patrón en los datos, ¿cómo podemos cuantificar la evidencia de que es un patrón notable y no sólo debido a fluctuaciones en los datos particulares que tenemos? ¿Cómo sabemos que no estamos sobreinterpretando esas fluctuaciones? Por ejemplo: Un sistema tiene cierto comportamiento “usual” para el cual tenemos datos históricos. El sistema presenta fluctuaciones en el tiempo. Observamos la última salida de nuestro sistema. Naturalmente, tiene fluctuaciones. ¿Esas fluctuaciones son consistentes con la operación usual del sistema? ¿Existe evidencia para pensar que algo en el sistema cambió? Comparación con poblaciones de referencia En las prueba de hipótesis, tratamos de construir distribuciones de referencia para comparar resultados que obtengamos con un “estándar” de variación, y juzgar si nuestros resultados son consistentes con la referencia o no (Box et al. 1978). En algunos casos, ese estándar de variación puede construirse con datos históricos. Ejemplo Supongamos que estamos considerando cambios rápidos en una serie de tiempo de alta frecuencia. Hemos observado la serie en su estado “normal” durante un tiempo considerable, y cuando observamos nuevos datos quisiéramos juzgar si hay indicaciones o evidencia en contra de que el sistema sigue funcionando de manera similar. Digamos que monitoreamos ventanas de tiempo de tamaño 20 y necesitamos tomar una decisión. Abajo mostramos cinco ejemplos donde el sistema opera normalmente, que muestra la variabilidad en el tiempo en ventanas cortas del sistema. Ahora suponemos que obtenemos una nueva ventana de datos. ¿Hay evidencia en contra de que el sistema sigue funcionando de manera similar? Nuestra primera inclinación debe ser comparar: en este caso, compararamos ventanas históricas con nuestra nueva serie: # usamos datos simulados para este ejemplo set.seed(8812) historicos <- simular_serie(2000) ¿Vemos algo diferente en los datos nuevos (el panel de color diferente)? Indpendientemente de la respuesta, vemos que hacer este análisis de manera tan simple no es siempre útil: seguramente podemos encontrar maneras en que la nueva muestra (4) es diferente a muestras históricas. Por ejemplo, ninguna de muestras tiene un “forma de montaña” tan clara. Nos preguntamos si no estamos sobreinterpretando variaciones que son parte normal del proceso. Podemos hacer un mejor análisis si extraemos varias muestras del comportamiento usual del sistema, graficamos junto a la nueva muestra, y revolvemos las gráficas para que no sepamos cuál es cuál. Entonces la pregunta es: ¿Podemos detectar donde están los datos nuevos? Esta se llama una prueba de lineup, o una prueba de ronda de sospechosos (Hadley Wickham et al. 2010). En la siguiente gráfica, en uno de los páneles están los datos recientemente observados. ¿Hay algo en los datos que distinga al patrón nuevo? # nuevos datos obs <- simular_serie(500, x_inicial = last(obs$obs)) # muestrear datos históricos prueba_tbl <- muestrear_ventanas(historicos, obs[1:20, ], n_ventana = 20) # gráfica de pequeños múltiplos ggplot(prueba_tbl$lineup, aes(x = t_0, y = obs)) + geom_line() + facet_wrap(~rep, nrow = 4) + scale_y_log10() ¿Cuáles son los datos nuevos (solo hay un panel con los nuevos datos)? ¿Qué implica que la gráfica que escojamos como “más diferente” no sean los datos nuevos? ¿Qué implica que le “atinemos” a la gráfica de los datos nuevos? Ahora observamos al sistema en otro momento y repetimos la comparación. En el siguiente caso obtenemos: Aunque es imposible estar seguros de que ha ocurrido un cambio, la diferencia de una de las series es muy considerable. Si identificamos los datos correctos, la probabilidad de que hayamos señalado la nueva serie “sobreinterpretando” fluctuaciones en un proceso que sigue comportándose normalente es 0.05 - relativamente baja. Detectar los datos diferentes es evidencia en contra de que el sistema sigue funcionando de la misma manera que antes. En el ejemplo anterior se encontraban en la posición: prueba_tbl$pos ## [1] 18 Observaciones y terminología: Llamamos hipótesis nula a la hipótesis de que los nuevos datos son producidos bajo las mismas condiciones que los datos de control o de referencia. Si no escogemos la gráfica de los nuevos datos, nuestra conclusión es que la prueba no aporta evidencia en contra de la hipótesis nula. Si escogemos la gráfica correcta, nuestra conclusión es que la prueba aporta evidencia en contra de la hipótesis nula. ¿Qué tan fuerte es la evidencia, en caso de que descubrimos los datos no nulos? Cuando el número de paneles es más grande y detectamos los datos, la evidencia es más alta en contra de la nula. Decimos que el nivel de significancia de la prueba es la probabilidad de seleccionar a los datos correctos cuando la hipótesis nula es cierta (el sistema no ha cambiado). En el caso de 20 paneles, la significancia es de 1/20 = 0.05. Cuando detectamos los datos nuevos, niveles de significancia más bajos implican más evidencia en contra de la nula. Si acertamos, y la diferencia es más notoria y fue muy fácil detectar la gráfica diferente (pues sus diferencias son más extremas), esto también sugiere más evidencia en contra de la hipótesis nula. Finalmente, esta prueba rara vez (o nunca) nos da seguridad completa acerca de ninguna conclusión, aún cuando hiciéramos muchos páneles. Comparando distribuciones Ahora intentamos un ejemplo más típico. Supongamos que tenemos muestras para tres grupos a, b y c, esto es que dentro de cada grupo, el proceso de selección de los elementos se hace al azar y de manera simétrica (por ejemplo cada elemento tiene a misma probabiidad de ser seleccionado, y las extracciones se hacen de manera independiente.) Queremos comparar las distribuciones de los datos obtenidos para cada grupo. Quizá la pregunta detrás de esta comparación es: el grupo de clientes b recibió una promoción especial. ¿Están gastando más? La medición que comparamos es el gasto de los clientes. En la muestra observamos diferencias entre los grupos. Pero notamos adicionalmente que hay mucha variación dentro de cada grupo. Nos podríamos preguntar entonces si las diferencias que observamos se deben variación muestral, por ejemplo. Podemos construir ahora una hipótesis nula, que establece que las observaciones provienen de una población similar: Las tres poblaciones (a, b, c) son prácticamente indistiguibles. En este caso, la variación que observamos se debería a que tenemos información incompleta. Como en el ejemplo anterior necesitamos construir u obtener una distribución de referencia para comparar qué tan extremos o diferentes son los datos que observamos. Esa distribución de referencia debería estar basada en el supuesto de que los grupos producen datos de distribuciones similares. Si tuvieramos mediciones similares históricas de estos tres grupos, quizá podríamos extraer datos de referencia y comparar, como hicimos en el ejempo anterior. Pero esto es menos común en este tipo de ejemplos. Prueba de permutaciones y el lineup Para abordar este problema podemos pensar en usar permutaciones de los grupos de la siguiente forma ((Box et al. 1978), (Tim C. Hesterberg 2015a)): Si los grupos producen datos bajo procesos idénticos, entonces los grupos a, b, c solo son etiquetas que no contienen información. Podríamos permutar al azar las etiquetas y observar nuevamente la gráfica de caja y brazos por grupos. Si la hipótesis nula es cierta (grupos idénticos), esta es una muestra tan verosímil como la que obtuvimos. Así que podemos construir datos de referencia permutando las etiquetas de los grupos al azar, y observando la variación que ocurre. Si la hipótesis nula es cercana a ser cierta, no deberíamos de poder distinguir fácilmente los datos observados de los producidos con las permutaciones al azar. Vamos a intentar esto, por ejemplo usando una gráfica de cuantiles simplificada. Hacemos un lineup, o una rueda de sospechosos (usamos el paquete (H. Wickham, Chowdhury, and Cook 2012), ver (Hadley Wickham et al. 2010)), donde 19 de los acusados son generados mediante permutaciones al azar de la variable del grupo, y el culpable (los verdaderos datos) están en una posición escogida al azar. ¿Podemos identificar los datos verdaderos? Para evitar sesgarnos, también ocultamos la etiqueta verdadera. Usamos una gráfica que muestra los cuantiles 0.10, 0.50, 0.90: set.seed(88) reps <- lineup(null_permute("grupo"), muestra_tab, n = 20) ## decrypt("M7xA 2S8S Jj dUyJ8JUj ZW") reps_mezcla <- reps |> mutate(grupo_1 = factor(digest::digest2int(grupo) %% 177)) grafica_cuantiles(reps_mezcla, grupo_1, x) + coord_flip() + facet_wrap(~.sample, ncol = 5) + ylab("x") + labs(caption = "Mediana y percentiles 10% y 90%") + geom_point(aes(colour = grupo_1)) Y la pregunta que hacemos es ¿podemos distinguir nuestra muestra entre todas las replicaciones producidas con permutaciones? ¿Dónde están los datos observados? Según tu elección, ¿qué tan diferentes son los datos observados de los datos nulos? En este ejemplo, es difícil indicar cuáles son los datos. Los grupos tienen distribuciones similares y es factible que las diferencias que observamos se deban a variación muestral. Si la persona escoge los verdaderos datos, encontramos evidencia en contra de la hipótesis nula (los tres grupos son equivalentes). En algunos contextos, se dice que los datos son significativamente diferentes al nivel 0.05. Esto es evidencia en contra de que los datos se producen de manera homogénea, independientemente del grupo. Si la persona escoge uno de los datos permutados, no encontramos evidencia en contra de que los tres grupos producen datos con distribuciones similares. Comparaciones usando lineup (continuación) Repetimos el ejemplo para otra muestra (en este ejemplo el proceso generador de datos es diferente para el grupo b): Hacemos primero la prueba del lineup: set.seed(121) reps <- lineup(null_permute("grupo"), muestra_tab, n = 20) grafica_cuantiles(reps |> mutate(grupo_escondido = factor(digest::digest2int(grupo) %% 177)), grupo_escondido, x) + facet_wrap(~.sample) + ylab("x") + coord_flip() + geom_point(aes(colour = grupo_escondido)) Podemos distinguir más o menos claramente que está localizada en valores más altos y tiene mayor dispersión. En este caso, como en general podemos identificar los datos, obtenemos evidencia en contra de que los tres grupos tienen distribuciones iguales. Estos ejemplos siguen la idea de inferencia visual propuestas en (Hadley Wickham et al. 2010), (Hofmann et al. 2012) son pruebas muy flexibles y estadísticamente rigurosas. Prueba de permutaciones para proporciones Veremos otro ejemplo donde podemos hacer más concreta la idea de distribución nula o de referencia usando pruebas de permutaciones. Supongamos que con nuestra muestra de tomadores de té, queremos probar la siguiente hipótesis nula: Los tomadores de té en bolsas exclusivamente, usan azúcar a tasas simillares que los tomadores de té suelto (que pueden o no también tomar té en bolsita). Los datos que obtuvimos en nuestra encuesta, en conteos, son: sugar bolsa_exclusivo suelto o bolsa No.sugar 81 74 sugar 89 56 Y en proporciones tenemos que: how prop_azucar n bolsa_exclusivo 0.52 170 suelto o bolsa 0.43 130 Pero distintas muestras podrían haber dado distintos resultados. Nos preguntamos qué tan fuerte es la evidencia en contra de que en realidad los dos grupos de personas usan azúcar en proporciones similares, y la diferencia que vemos se puede atribuir a variación muestral. En este ejemplo, podemos usar una estadística de prueba numérica, por ejemplo, la diferencia entre las dos proporciones: \\[\\hat p_1 - \\hat p_2,\\] (tomadores de té en bolsa solamente vs. suelto y bolsa). El proceso sería entonces: La hipótesis nula es que los dos grupos tienen distribuciones iguales. Este caso quiere decir que en la población, tomadores de té solo en bolsa usan azúcar a las mismas tasas que tomadores de suelto o bolsas. Bajo nuestra hipótesis nula (proporciones iguales), producimos una cantidad grande (por ejemplo 10 mil o más) de muestras permutando las etiquetas de los grupos. Evaluamos nuestra estadística de prueba en cada una de las muestras permutadas. El conjunto de valores obtenidos nos da nuestra distribución de referencia (ya no estamos limitados a 20 replicaciones como en las pruebas gráficas). Y la pregunta clave es: ¿el valor de la estadística en nuestra muestra es extrema en comparación a la distribución de referencia? dif_obs <- te_azucar |> mutate(usa_azucar = as.numeric(sugar == "sugar")) |> group_by(how) |> summarise(prop_azucar = mean(usa_azucar), .groups = 'drop') |> pivot_wider(names_from = how, values_from = prop_azucar) |> mutate(diferencia_prop = bolsa_exclusivo - `suelto o bolsa`) |> pull(diferencia_prop) La diferencia observada es: dif_obs |> round(3) ## [1] 0.093 Ahora construimos nuestra distribución nula o de referencia: reps <- lineup(null_permute("how"), te_azucar, n = 50000) glimpse(reps) ## Rows: 15,000,000 ## Columns: 3 ## $ how <chr> "bolsa_exclusivo", "bolsa_exclusivo", "suelto o bolsa", "suelt… ## $ sugar <chr> "sugar", "No.sugar", "No.sugar", "sugar", "No.sugar", "No.suga… ## $ .sample <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,… valores_ref <- reps |> mutate(usa_azucar = as.numeric(sugar == "sugar")) |> group_by(.sample, how) |> summarise(prop_azucar = mean(usa_azucar), .groups = 'drop') |> pivot_wider(names_from = how, values_from = prop_azucar) |> mutate(diferencia = bolsa_exclusivo - `suelto o bolsa`) Y graficamos nuestros resultados (con un histograma y una gráfica de cuantiles, por ejemplo). la estadística evaluada un cada una de nuestras muestras permutadas: g_1 <- ggplot(valores_ref, aes(sample = diferencia)) + geom_qq(distribution = stats::qunif) + xlab("f") + ylab("diferencia") + labs(subtitle = "Distribución nula o de referencia") g_2 <- ggplot(valores_ref, aes(x = diferencia)) + geom_histogram(binwidth = 0.04) + coord_flip() + xlab("") + labs(subtitle = " ") g_1 + g_2 Este es el rango de fluctuación usual para nuestra estadística bajo la hipótesis de que los dos grupos de tomadores de té consumen té a la misma tasa. El valor que obtuvimos en nuestros datos es: 0.09. Mismo que no es un valor extremo en la distribución de referencia que vimos arriba. Ésta muestra no aporta mucha evidencia en contra de que los grupos tienen distribuciones similares. Podemos graficar otra vez marcando el valor observado: # Función de distribución acumulada (inverso de función de cuantiles) dist_perm <- ecdf(valores_ref$diferencia) # Calculamos el percentil del valor observado percentil_obs <- dist_perm(dif_obs) g_1 <- ggplot(valores_ref, aes(sample = diferencia)) + geom_qq(distribution = stats::qunif) + xlab("f") + ylab("diferencia") + labs(subtitle = "Distribución nula o de referencia") + geom_hline(yintercept = dif_obs, colour = "red") + annotate("text", x = 0.35, y = dif_obs - 0.03, label = "diferencia observada", colour = "red") g_2 <- ggplot(valores_ref, aes(x = diferencia)) + geom_histogram(binwidth = 0.04) + coord_flip() + xlab("") + labs(subtitle = " ") + geom_vline(xintercept = dif_obs, colour = "red") + annotate("text", x = dif_obs, y = N_rep * .3, label = percentil_obs,vjust = -0.2, colour = "red") g_1 + g_2 Y vemos que es un valor algo (pero no muy) extremo en la distribución de referencia que vimos arriba: esta muestra no aporta una gran cantidad de evidencia en contra de que los grupos tienen distribuciones similares, que en este caso significa que los dos grupos usan azúcar a tasas similares. Es decir, sobre la hipótesis \\[H_0: p_1 = p_2,\\] o bien, \\[H_0: p_1 - p_2 = 0.\\] Pruebas de hipótesis tradicionales Comencemos recordando la definición de parámetro y estadística. Definición. Un parámetro es una característica (numérica) de una población o de una distribución de probabilidad. Usualmente denotado por \\(\\theta \\in \\mathbb{R},\\) o por \\(\\theta \\in \\mathbb{R}^p.\\) Una estadística es una característica (numérica) de los datos. Usualmente denotado por \\(\\hat \\theta.\\) Cualquier función de un parámetro es también un parámetro \\(\\varphi = h(\\theta),\\) y cualquier función de una estadística es también una estadística \\(\\hat \\varphi = h(\\hat \\theta).\\) Cuando la estadística se calcula de una muestra aleatoria (\\(T(X),\\) para \\(X_i \\sim \\pi_x\\) para \\(i = 1, \\ldots, n\\)), es por consiguiente aleatoria y es por tanto una variable aleatoria (\\(T \\sim \\pi_T\\)). Por ejemplo \\(\\mu\\) y \\(\\sigma\\) son parámetros de la distribución normal con función de densidad \\(\\pi(x) = (1/\\sqrt{2\\pi}\\sigma)e^{(x-\\mu)^2/(2\\sigma^2)}\\). La varianza \\(\\sigma^2\\), y el coeficiente de variación (cociente de señal a ruido) \\(\\mu/\\sigma\\) también son parámetros. Si \\(X_1, \\ldots ,X_n\\) son una muestra aleatoria, entonces la media \\(\\bar{X}=\\frac1n\\sum_i X_i\\) es una estadística. Ahora podemos pasar a las definiciones correspondientes a pruebas de hipótesis (o pruebas de significancia). Definición. Denotamos por \\(H_0\\) a la hipótesis nula la cual usualmente tratamos como la afirmación del status quo. La hipótesis alternativa la denotamos por \\(H_1\\) y representa el supuesto que está a prueba y para el cual buscamos evidencia en los datos. Definición. La hipótesis normalmente se plantea en términos de un parámetro (\\(\\theta\\in\\mathbb{R}\\)) o conjunto de parámetros (\\(\\theta\\in\\mathbb{R}^p\\)) de la distribución de interés (por ejemplo media, moda, varianza). Para una hipótesis nula del estilo \\(H_0: \\theta = \\theta_0,\\) la hipótesis a contrastar se puede denominar como: Hipótesis alternativa de una cola \\(H_1: \\theta \\gt \\theta_0\\) Hipótesis alternativa de dos colas \\(H_1: \\theta \\neq \\theta_0\\) En el ejemplo anterior planteamos hipótesis nula (proporciones iguales) e hipótesis alternativa que la proporción de tomadores de te suelto que usan azúcar en menor proporción, esto corresponde a una hipótesis alternativa a dos colas: \\(H_0: p_1 = p_2\\), y \\(H_1:p_1 > p_2\\). Definición. Una estadística de prueba es una función numérica de los datos cuyo valor determina el resultado de la prueba. La función usualmente es denotada por \\(T(\\bf X)\\) donde \\(\\bf X\\) representa los datos como variable aleatoria. Por ejemplo, \\(T = T(X_1, \\ldots, X_n)\\) si sólo tenemos una muestra, o por \\(T = T(X_1, \\ldots, X_n, Y_1, \\ldots, Y_m)\\) en el caso de tener dos muestras. Al evaluar la prueba para un conjunto de datos dado, \\(x\\), ésta se denomina estadística de prueba observada, \\(t = T(x).\\) La estadística de prueba correspondiente al ejemplo es \\(T = \\hat p_1 - \\hat p_2.\\) Definición. El valor p es la probabilidad de que bajo la hipótesis nula los datos generen un valor tan extremo como la estadística de prueba observada. Por ejemplo, si consideramos la hipótesis nula admite valores grandes, el valor p se calcula como \\(P(T \\geq t).\\) En el ejemplo de tomadores de té: el valor p lo calculamos usando el percentil donde nuestra observación cae en la distribución generada por las permutación (valor p de una cola). 1 - dist_perm(dif_obs) ## [1] 0.04344 Por otro lado, podemos calcular: Valor p de dos colas: Si la hipótesis nula es cierta, ¿cuál es la probabilidad de observar una diferencia tan extrema o más extrema de lo que observamos? Considerando este caso interpretamos extrema como qué tan lejos cae del centro de masa de la distribución. De tal forma que podemos calcular el valor p como sigue. A partir del valor observado, consideramos cuál dato es menor: la probabilidad bajo lo hipótesis nula de observar una diferencia mayor de la que observamos, o la probabilidad de observar una diferencia menor a la que observamos. Tomamos el mínimo y multiplicamos por dos (Tim C. Hesterberg 2015a): 2 * min(dist_perm(dif_obs), (1 - dist_perm(dif_obs))) ## [1] 0.08688 Este valor p se considera como evidencia moderada en contra de la hipótesis nula. Valores p chicos (observaciones más extremas en comparación con la referencia) aportan más evidencia en contra de la hipótesis nula, y valores más grandes aportan menos evidencia en contra. Definición. Un resultado es estadisticamente significativo si tiene muy baja probabilidad de suceder al azar. Entre más pequeño requiramos un valor p oara declarar un resultado estadísticamente significativo, somos más conservadores. Las pruebas de hipótesis con frecuencia inician contestando una pregunta más general que los valores p: ¿Cuál es la distribución de la estadística de prueba cuando no hay un efecto real? Definición. La distribución nula es la distribución de la estadística de prueba si la hipótesis nula es cierta. En ocasiones también nos referimos a ella como la distribución de referencia pues estamos comparando la estadística de prueba observada a su referencia para determinar que tan inusual es. En el ejemplo de tomadores de té aproximamos la distribución nula (y los valores p) con simulación; sin embargo, para algunas estadísticas hay métodos exactos. En particular, usamos el método de pruebas de permutación. Para dicha prueba el algoritmo para en el caso de dos grupos sería como sigue: Prueba de permutación para dos muestras Supongamos que tenemos m observaciones de una población y n de otra. Combina los m+n valores. Repite: Obtén un remuestra de tamaño m sin reemplazo del total. Usa las n observaciones restantes para obtener la otra muestra. Calcula la estadística de prueba (que compara las muestras). Calcula el valor p como la fracción de las veces que la estadística sobrepasó la estadística observada, multiplica por 2 para una prueba de dos lados. La distribución de la estadística a lo largo de las remuestras de permutación es la distribución de permutación. Ésta puede ser exacta, si se calcula exhaustivamente (como cuando tenemos pocas observaciones) o aproximada (cuando enlistar todas las posible combinaciones es prohibitivo). Tomadores de té (continuación) Ahora hacemos una prueba de permutaciones para otro par de proporciones utilizando el mismo método. La hipótesis nula ahora es: Los tomadores de té Earl Gray usan azúcar a una tasa similar a los tomadores de té negro. Los datos que obtuvimos en nuestra encuesta se muestran en la siguiente tabla: sugar Earl Grey black No.sugar 84 51 sugar 109 23 Y en porcentajes tenemos que: prop_azucar <- te_azucar |> count(Tea, sugar) |> group_by(Tea) |> mutate(prop = 100 * n / sum(n), n = sum(n)) |> filter(sugar == "sugar") |> select(Tea, prop_azucar = prop, n) |> mutate('% usa azúcar' = round(prop_azucar)) |> select(-prop_azucar) prop_azucar |> formatear_tabla() Tea n % usa azúcar Earl Grey 193 56 black 74 31 Pero distintas muestras podrían haber dado distintos resultados. Nos preguntamos qué tan fuerte es la evidencia en contra de que en realidad los dos grupos de personas usan azúcar en proporciones similares considerando que la diferencia que vemos se puede atribuir a variación muestral. Escribimos la función que calcula diferencias para cada muestra: calc_diferencia_2 <- function(datos){ datos |> mutate(usa_azucar = as.numeric(sugar == "sugar")) |> group_by(Tea) |> summarise(prop_azucar = mean(usa_azucar), .groups = 'drop') |> pivot_wider(names_from = Tea, values_from = prop_azucar) |> mutate(diferencia_prop = `Earl Grey` - black) |> pull(diferencia_prop) } La diferencia observada es: ## [1] 0.254 Ahora construimos nuestra distribución nula o de referencia: set.seed(2) reps <- lineup(null_permute("Tea"), te_azucar, n = N_rep) valores_ref <- reps |> group_by(.sample) |> nest() |> mutate(diferencia = lapply(data, calc_diferencia_2)) |> unnest(diferencia) Y podemos graficar la distribución de referencia otra vez marcando el valor observado En este caso, la evidencia es muy fuerte en contra de la hipótesis nula, pues el resultado que obtuvimos es muy extremo en relación a la distribución de referencia. El valor p es cercano a 0. Haz una prueba de permutaciones para diferencia de medias para comparar la propina en cena vs en comidas. Grafica la distribución de referencia. Calcula el valor p (dos colas). Pruebas de permutación: implementación. Hasta ahora nos hemos centrado en ejemplos de diferencias en medias. Podemos extender las pruebas de permutación a \\(\\bar{X}\\) (la media de la primera muestra), \\(n\\bar{X}\\) (la suma de las observaciones en la primera muestra), y más. Teorema. En pruebas de permutación, si dos estadísticas de prueba \\(T_1\\) y \\(T_2\\) están relacionadas por una función estríctamente monótona, \\(T_1(X^*)=f(T_2(X^*))\\) donde \\(X^*\\) es una remuestra de permutación de los datos originales, entonces los valores p serán los mismos en las pruebas de permutación. Muestras con reemplazo de la Distribución Nula. En la implementación de muestreo, no nos aseguramos que las remuestras sean únicas. Sería más acertado tomar muestras sin reemplazo, sin embargo, el costo computacional es demasiado alto. Por simplicidad consideramos muestras con reemplazo del total de \\[m+n\\choose n\\] posibles remuestras. Por lo tanto, al remuestrar obtenemos una muestra de la distribución nula. Entre más muestras, más exactitud. Hemos usado \\(B = 10^3\\) remuestras (N_rep en el código), en general entre más remuestras tendremos una mejor estimación del valor p. Si el verdadero valor es \\(p\\) el estimado tendrá una varianza aproximadamente de \\(p(1- p)/B\\) donde \\(B\\) es el número de remuestras generadas. Observación. Así como los \\(n\\) datos originales son una muestra de la población, también las \\(B\\) remuestras de la estadística son una muestra de una población, en este caso de la distribución nula. La pruebas de permutaciones son más útiles cuando nuestra hipótesis nula se refiere que la distribución de los grupos son muy similares, o la independencia entre observaciones y grupo. Esto también aplica cuando queremos probar por ejemplo, que una variable numérica \\(Y\\) es independiente de \\(X.\\) Hay algunas hipótesis que no se pueden probar con este método, como por ejemplo, las que se refieren a una sola muestra: ¿los datos son consistentes con que su media es igual a 5? Adicionalmente, en algunas ocasiones queremos probar aspectos más específicos de las diferencias: como ¿son iguales las medias o medianas de dos grupos de datos? ¿Tienen dispersión similar? Es común aplicar pruebas de permutaciones a este segundo problema, sin embargo, no están tan perfectamente adaptadas a el, pues prueban todos los aspectos de las distribuciones que se comparan, aún cuando escojamos una estadística particular que pretende medir. Por ejemplo, cuando trabajamos con la diferencia de medias. Eso quiere decir que podemos rechazar igualdad de medias, por ejemplo, cuando en realidad otra característica de las distribuciones es la que difiere mucho en las poblaciones. En algunas referencias (ver (Chihara and Hesterberg 2018), (Efron and Tibshirani 1993)) se argumenta que de todas formas las pruebas de permutaciones son relativamente robustas a esta desadaptación. Un caso excepcional, por ejemplo, es cuando las poblaciones que comparamos resultan tener dispersión extremadamente distinta, y adicionalmente los tamaños de muestra de los grupos son muy desiguales (otra vez, ver ejemplos en (Chihara and Hesterberg 2018)). Ejemplo: tiempos de fusión Veamos el siguiente ejemplo, que es un experimento donde se midió el tiempo que tardan distintas personas en fusionar un estereograma para ver una imagen 3D. (William S. Cleveland (1993)). Existen dos condiciones: en una se dio indicaciones de qué figura tenían que buscar (VV) y en otra no se dio esa indicación. ¿Las instrucciones verbales ayudan a fusionar más rápido el estereograma? ## ## ── Column specification ──────────────────────────────────────────────────────── ## cols( ## n = col_double(), ## time = col_double(), ## nv.vv = col_character() ## ) La situación es la siguiente: considerando que hay mucha variación en el tiempo de fusión dentro de cada tratamiento, necesitamos calificar la evidencia de nuestra conclusión (el tiempo de fusión se reduce con información verbal). Podemos usar una prueba de permutaciones, esta vez justificándola por el hecho de que los tratamientos se asignan al azar: si los tratamientos son indistinguibles, entonces las etiquetas de los grupos son sólo etiquetas, y permutarlas daría muestras igualmente verosímiles. En este caso, compararemos gráficas de cuantiles de los datos con los producidos por permutaciones (transformamos los datos pues en este caso es más apropiado una comparación multiplicativa): ¿Podemos identificar los datos? En general, muy frecuentemente las personas identifican los datos correctamente, lo que muestra evidencia considerable de que la instrucción verbal altera los tiempos de respuesta de los partipantes, y en este caso ayuda a reducir el tiempo de fusión de los estereogramas. Ejemplo: tiempos de fusión (continuación) Podemos usar las pruebas de permutaciones para distintos tipos de estadísticas: medianas, medias, comparar dispersión usando rangos intercuartiles o varianzas, etc. Regresamos a los tiempos de fusión. Podemos hacer una prueba de permutaciones para la diferencia de las medias o medianas, por ejemplo. En este ejemplo usaremos una medida de centralidad un poco diferente, como ilustración: el promedio de los cuartiles superior e inferior de las dos distribuciones. Usaremos el cociente de estas dos cantidades para medir su diferencia # esta función hace permutaciones y calcula la diferencia para cada una permutaciones_est <- function(datos, variable, calc_diferencia, n = 1000){ # calcular estadística para cada grupo permutar <- function(variable){ sample(variable, length(variable)) } tbl_perms <- tibble(.sample = seq(1, n-1, 1)) |> mutate(diferencia = map_dbl(.sample, ~ datos |> mutate({{variable}}:= permutar({{variable}})) |> calc_diferencia())) bind_rows(tbl_perms, tibble(.sample = n, diferencia = calc_diferencia(datos))) } stat_fusion <- function(x){ (quantile(x, 0.75) + quantile(x, 0.25))/2 } calc_fusion <- function(stat_fusion){ fun <- function(datos){ datos |> group_by(nv.vv) |> summarise(est = stat_fusion(time), .groups = 'drop') |> pivot_wider(names_from = nv.vv, values_from = est) |> mutate(dif = VV / NV ) |> pull(dif) } fun } calc_cociente <- calc_fusion(stat_fusion) dif_obs <- calc_cociente(fusion) # permutar valores_ref <- permutaciones_est(fusion, nv.vv, calc_cociente, n = N_rep) dist_perm_nv <- ecdf(valores_ref$diferencia) cuantil_obs <- dist_perm_nv(dif_obs) Y el valor p de dos colas es dist_perm_nv <- ecdf(valores_ref$diferencia) 2 * min(dist_perm_nv(dif_obs), 1 - dist_perm_nv(dif_obs)) ## [1] 0.028 Lo que muestra evidencia considerable, aunque no muy fuerte, de que la instrucción verbal ayuda a reducir el tiempo de fusión de los estereogramas: la caja del diagrama de caja y brazos para el grupo VV está encogida por un factor menor a 1. Separación de grupos Este ejemplo tomado de (Chowdhury et al. 2015) (tanto la idea como el código). La pregunta que se aborda en ese estudio es: Existen métodos de clasificación (supervisados o no supervisados) para formar grupos en términos de variables que describen a los individuos Estos métodos (análisis discriminante, o k-means, por ejemplo), pretenden formar grupos compactos, bien separados entre ellos. Cuando aplicamos el método, obtenemos clasificadores basados en las variables de entrada. La pregunta es: ¿los grupos resultantes son producto de patrones que se generalizan a la población, o capitalizaron en variación aleatoria para formarse? Especialmente cuando tenemos muchas mediciones de los individuos, y una muestra relativamente chica, Es relativamente fácil encontrar combinaciones de variables que separan los grupos, aunque estas combinaciones y diferencias están basadas en ruido y no generalizan a la población. Como muestran en (Chowdhury et al. 2015), el lineup es útil para juzgar si tenemos evidencia en contra de que los grupos en realidad son iguales, y usamos variación muestral para separarlos. Avispas (opcional) En el siguiente ejemplo, tenemos 4 grupos de avispas (50 individuos en total), y para cada individuo se miden expresiones de 42 genes distintos. La pregunta es: ¿Podemos separar a los grupos de avispas dependiendo de sus mediciones? En este se usó análisis discriminante (LDA) para buscar proyecciones de los datos en dimensión baja de forma que los grupos sean lo más compactos y separados posibles. Para probar qué tan bien funciona este método, podemos hacer una prueba de permutación, aplicamos LDA y observamos los resultados. Y vemos que incluso permutando los grupos, es generalmente posible separarlos en grupos bien definidos: la búsqueda es suficientemente agresiva para encontrar combinaciones lineales que los separan. Que no podamos distinguir los datos verdaderos de las replicaciones nulas indica que este método difícilmente puede servir para separar los grupos claramente. Otro enfoque sería separar los datos en una muestra de entrenamiento y una de prueba (que discutiremos en la última sesión). Aplicamos el procedimiento a la muestra de entrenamiento y luego vemos qué pasa con los datos de prueba: set.seed(8) wasps_1 <- wasps |> mutate(u = runif(nrow(wasps), 0, 1)) wasps_entrena <- wasps_1 |> filter(u <= 0.8) wasps_prueba <- wasps_1 |> filter(u > 0.8) wasp.lda <- MASS::lda(Group ~ ., data=wasps_entrena[,-1]) wasp_ld_entrena <- predict(wasp.lda, dimen=2)$x |> as_tibble(.name_repair = "universal") |> mutate(tipo = "entrenamiento") |> mutate(grupo = wasps_entrena$Group) wasp_ld_prueba <- predict(wasp.lda, newdata = wasps_prueba, dimen=2)$x |> as_tibble(.name_repair = "universal") |> mutate(tipo = "prueba")|> mutate(grupo = wasps_prueba$Group) wasp_lda <- bind_rows(wasp_ld_entrena, wasp_ld_prueba) ggplot(wasp_lda, aes(x = LD1, y = LD2, colour = grupo)) + geom_point(size = 3) + facet_wrap(~tipo) Aunque esta separación de datos es menos efectiva en este ejemplo por la muestra chica, podemos ver que la separación lograda en los datos de entrenamiento probablemente se debe a variación muestral. La “crisis de replicabilidad” Recientemente (Ioannidis 2005) se ha reconocido en campos como la psicología la crisis de replicabilidad. Varios estudios que recibieron mucha publicidad inicialmente no han podido ser replicados posteriormente por otros investigadores. Por ejemplo: Hacer poses poderosas produce cambios fisiológicos que mejoran nuestro desempeño en ciertas tareas. Mostrar palabras relacionadas con “viejo” hacen que las personas caminen más lento (efectos de priming). En todos estos casos, el argumento de la evidencia de estos efectos fue respaldada por una prueba de hipótesis nula con un valor p menor a 0.05. La razón es que ese es el estándar de publicación seguido por varias áreas y revistas arbitradas. La tasa de no replicabilidad parece ser mucho más alta (al menos la mitad o más, según algunas fuentes como la señalada arriba) que la sugerida por la tasa de falsos positivos (menos de 5%). Este problema de replicabilidad parece ser más frecuente cuando: Se trata de estudios de potencia baja: mediciones ruidosas y tamaños de muestra chicos. El plan de análisis no está claramente definido desde un principio (lo cual es difícil cuando se están investigando “fenómenos no estudiados antes”). ¿A qué se atribuye esta crisis de replicabilidad? El jardín de los senderos que se bifurcan Aunque haya algunos ejemplos de manipulaciones conscientes —e incluso, en menos casos, malintencionadas— para obtener resultados publicables o significativos (p-hacking), como vimos en ejemplos anteriores, hay varias decisiones, todas razonables, que podemos tomar cuando estamos buscando las comparaciones correctas. Algunas pueden ser: Transformar los datos (tomar o no logaritmos, u otra transformación). Editar datos atípicos (razonable si los equipos pueden fallar, o hay errores de captura, por ejemplo). Distintas maneras de interpretar los criterios de inclusión de un estudio (por ejemplo, algunos participantes mostraron tener gripa, o revelaron que durmieron muy poco la noche anterior, etc. ¿los dejamos o los quitamos?). Dado un conjunto de datos, las justificaciones de las decisiones que se toman en cada paso son razonables, pero con datos distintos las decisiones podrían ser diferentes. Este es el jardín de los senderos que se bifurcan (ver referencia en Gelman), que invalida en parte el uso valores p como criterio de evidencia contra la hipótesis nula. Esto es exacerbado por: Tamaños de muestra chicos y efectos “inestables” que se quieren medir (por ejemplo en psicología). El hecho de que el criterio de publicación es obtener un valor \\(p < 0.05\\), y la presión fuerte sobre los investigadores para producir resultados publicables (\\(p < 0.05\\)). El que estudios o resultados similares que no obtuvieron valores \\(p\\) por debajo del umbral no son publicados o reportados. Ver por ejemplo el comunicado de la ASA. Ojo: esas presiones de publicación no sólo ocurre para investigadores en psicología. Cuando trabajamos en problemas de análisis de datos que son de importancia, es común que existan intereses de algunas partes o personas involucradas por algunos resultados u otros (por ejemplo, nuestros clientes de consultoría o clientes internos). Eso puede dañar nuestro trabajo como analistas, y el avance de nuestro equipo. Aunque esas presiones son inevitables, se vuelven manejables cuando hay una relación de confianza entre las partes involucradas. Ejemplo: decisiones de análisis y valores p En el ejemplo de datos de fusión, decidimos probar, por ejemplo, el promedio de los cuartiles inferior y superior, lo cual no es una decisión típica pero usamos como ilustración. Ahora intentamos usar distintas mediciones de la diferencia entre los grupos, usando distintas medidas resumen y transformaciones (por ejemplo, con o sin logaritmo). Aquí hay unas 12 combinaciones distintas para hacer el análisis (multiplicadas por criterios de “aceptación de datos en la muestra”, que simulamos tomando una submuestra al azar): calc_fusion <- function(stat_fusion, trans, comparacion){ fun <- function(datos){ datos |> group_by(nv.vv) |> summarise(est = stat_fusion({{ trans }}(time)), .groups = 'drop') |> pivot_wider(names_from = nv.vv, values_from = est) |> mutate(dif = {{ comparacion }}) |> pull(dif) } fun } valor_p <- function(datos, variable, calc_diferencia, n = 1000){ # calcular estadística para cada grupo permutar <- function(variable){ sample(variable, length(variable)) } tbl_perms <- tibble(.sample = seq(1, n-1, 1)) |> mutate(diferencia = map_dbl(.sample, ~ datos |> mutate({{variable}} := permutar({{variable}})) |> calc_diferencia())) perms <- bind_rows(tbl_perms, tibble(.sample = n, diferencia = calc_diferencia(datos))) perms_ecdf <- ecdf(perms$diferencia) dif <- calc_diferencia(datos) 2 * min(perms_ecdf(dif), 1- perms_ecdf(dif)) } set.seed(7272) media_cuartiles <- function(x){ (quantile(x, 0.75) + quantile(x, 0.25))/2 } # nota: usar n=10000 o más, esto solo es para demostración: ejemplo <- list() calc_dif <- calc_fusion(mean, identity, VV - NV) ejemplo$media_dif <- valor_p(fusion |> sample_frac(0.95), nv.vv, calc_dif, n = N_rep) calc_dif <- calc_fusion(mean, log, VV - NV) ejemplo$media_dif_log <- valor_p(fusion |> sample_frac(0.95), nv.vv, calc_dif, n = N_rep) calc_dif <- calc_fusion(median, identity, VV / NV) ejemplo$mediana_razon <- valor_p(fusion |> sample_frac(0.95), nv.vv, calc_dif, n = N_rep) calc_dif <- calc_fusion(media_cuartiles, identity, VV / NV) ejemplo$cuartiles_razon <- valor_p(fusion |> sample_frac(0.95), nv.vv, calc_dif, n = N_rep) ejemplo <- read_rds("cache/ejemplo_p_val.rds") ejemplo$media_dif ## [1] 0.0658 ejemplo$media_dif_log ## [1] 0.018 ejemplo$mediana_razon ## [1] 0.049 ejemplo$cuartiles_razon ## [1] 0.0464 Si existen grados de libertad —muchas veces necesarios para hacer un análisis exitoso—, entonces los valores p pueden tener poco significado. Alternativas o soluciones El primer punto importante es reconocer que la mayor parte de nuestro trabajo es exploratorio (recordemos el proceso complicado del análisis de datos de refinamiento de preguntas). En este tipo de trabajo, reportar valores p puede tener poco sentido, y mucho menos tiene sentido aceptar algo verdadero cuando pasa un umbral de significancia dado. Nuestro interés principal al hacer análisis es: expresar correctamente, y de manera útil, la incertidumbre asociada a las conclusiones o patrones que mostramos (asociada a variación muestral, por ejemplo) con el objetivo que el proceso de toma de decisiones sea informado. Un resumen de un número (valor p, o el que sea) no puede ser tomado como criterio para tomar una decisión que generalmente es compleja. En la siguiente sección veremos cómo podemos mostrar parte de esa incertidumbre de manera más útil. Por otra parte, los estudios confirmatorios (donde se reportan valores p) también tienen un lugar. En áreas como la psicología, existen ahora movimientos fuertes en favor de la repetición de estudios prometedores pero donde hay sospecha de grados de libertad del investigador. Este movimiento sugiere dar valor a los estudios exploratorios que no reportan valor p, y posteriormente, si el estudio es de interés, puede intentarse una replicación confirmatoria, con potencia más alta y con planes de análisis predefinidos. Referencias "],["estimación-y-distribución-de-muestreo-1.html", "Sección 4 Estimación y distribución de muestreo Ejemplo: precios de casas Distribución de muestreo Más ejemplos El error estándar Calculando la distribución de muestreo Teorema central del límite Normalidad y gráficas de cuantiles normales Prueba de hipótesis de normalidad Ejemplo Más del Teorema central del límite", " Sección 4 Estimación y distribución de muestreo En esta sección discutiremos cuál el objetivo general del proceso de estimación, y cómo entender y manejar la variabilidad que se produce cuando aleatorizamos la selección de las muestras que utilizamos para hacer análisis. A diferencia de las pruebas de permutación, donde evaluábamos como cambiaría una estadísitica si un tratamiento o grupo se hubiera asignado de forma distinta, en la siguiente sección nos preguntamos como varía una estadística entre muestras. Por ejemplo, pasaremos de preguntar si una vacuna reduce el riesgo de una enfermedad a evaluar en que magnitud se reduce el riesgo de contraer la enfermedad. Ejemplo: precios de casas Supongamos que queremos conocer el valor total de las casas que se vendieron recientemente en una zona particular. Supondremos que tenemos un listado de las casas que se han vendido recientemente, pero en ese listado no se encuentra el precio de venta. Decidimos entonces tomar una muestra aleatoria de 100 de esas casas. Para esas casas hacemos trabajo de campo para averiguar el precio de venta. marco_casas <- read_csv("data/casas.csv") set.seed(841) muestra_casas <- sample_n(marco_casas, 100) |> select(id, nombre_zona, area_habitable_sup_m2, precio_miles) sprintf("Hay %0.0f casas en total, tomamos muestra de %0.0f", nrow(marco_casas), nrow(muestra_casas)) ## [1] "Hay 1144 casas en total, tomamos muestra de 100" head(muestra_casas) ## # A tibble: 6 × 4 ## id nombre_zona area_habitable_sup_m2 precio_miles ## <dbl> <chr> <dbl> <dbl> ## 1 287 NAmes 161. 159 ## 2 755 NAmes 95.3 156 ## 3 1190 Gilbert 168. 189 ## 4 36 NridgHt 228. 309 ## 5 32 Sawyer 114. 149. ## 6 538 NAmes 80.3 111. Como tomamos una muestra aleatoria, intentamos estimar el valor total de las casas que se vendieron expandiendo el total muestral, es decir nuestro estimador \\(\\hat{t} = t(X_1,\\ldots X_{100})\\) del total poblacional \\(t\\) es \\[\\hat{t} = \\frac{N}{n} \\sum_{i=1}^{100} X_i = N\\bar{x}\\] Esta función implementa el estimador: n <- nrow(muestra_casas) # tamaño muestra N <- nrow(marco_casas) # tamaño población estimar_total <- function(muestra_casas, N){ total_muestral <- sum(muestra_casas$precio_miles) n <- nrow(muestra_casas) # cada unidad de la muestra representa a N/n f_exp <- N / n # estimador total es la expansión del total muestral estimador_total <- f_exp * total_muestral res <- tibble(total_muestra = total_muestral, factor_exp = f_exp, est_total_millones = estimador_total / 1000) res } estimar_total(muestra_casas, N) |> mutate(across(where(is.numeric), \\(x) round(x, 2))) ## # A tibble: 1 × 3 ## total_muestra factor_exp est_total_millones ## <dbl> <dbl> <dbl> ## 1 18444. 11.4 211 Sin embargo, si hubiéramos obtenido otra muestra, hubiéramos obtenido otra estimación diferente. Por ejemplo: estimar_total(sample_n(marco_casas, 100), N) |> mutate(across(where(is.numeric), \\(x) round(x, 2))) ## # A tibble: 1 × 3 ## total_muestra factor_exp est_total_millones ## <dbl> <dbl> <dbl> ## 1 17916. 11.4 205. El valor poblacional que buscamos estimar (nótese que en la práctica este no lo conocemos) es: # multiplicar por 1000 para que sea en millones de dólares total_pob <- sum(marco_casas |> pull(precio_miles)) / 1000 total_pob ## [1] 209.7633 Así que: Para algunas muestras esta estadística puede estar muy cercana al valor poblacional, pero para otras puede estar más lejana. Para entender qué tan buena es una estimación particular, entonces, tenemos que entender cuánta variabilidad hay de muestra a muestra debida a la aleatorización. Esto depende del diseño de la muestra y de la población de precios de casas (que no conocemos). Distribución de muestreo La distribución de muestreo de una estadística enumera los posibles resultados que puede tomar esa estadística sobre todas las muestras posibles. Este es el concepto básico para poder entender qué tan bien o mal estima un parámetro poblacional dado. En nuestro ejemplo anterior de precio de casas, no podemos calcular todas las posibles estimaciones bajo todas las posibles muestras, pero podemos aproximar repitiendo una gran cantidad de veces el proceso de muestreo, como hicimos al aproximar la distribución de permutaciones de estadísticas de prueba de las secciones anteriores. Empezamos repitiendo 10 veces y examinamos cómo varía nuestra estadística: replicar_muestreo <- function(marco_casas, m = 500, n){ # n es el tamaño de muestra que se saca de marco_casas # m es el número de veces que repetimos el muestro de tamaño n resultados <- map_df(1:m, function(id) { sample_n(marco_casas, n) |> estimar_total(N) }, .id = "id_muestra") } replicar_muestreo(marco_casas, m = 10, n = 100) |> mutate(across(where(is.numeric), round, 1)) |> formatear_tabla() id_muestra total_muestra factor_exp est_total_millones 1 17594.8 11.4 201.3 2 17423.9 11.4 199.3 3 18444.3 11.4 211.0 4 17696.6 11.4 202.4 5 17275.8 11.4 197.6 6 17867.6 11.4 204.4 7 18450.8 11.4 211.1 8 18187.2 11.4 208.1 9 18604.2 11.4 212.8 10 19144.4 11.4 219.0 Como vemos, hay variación considerable en nuestro estimador del total, pero la estimación que haríamos con cualquiera de estas muestras no es muy mala. Ahora examinamos un número más grande de simulaciones: replicaciones_1 <- replicar_muestreo(marco_casas, m = 1500, n = 100) Y el siguiente histograma nos dice qué podemos esperar de la variación de nuestras estimaciones, y donde es más probable que una estimación particular caiga: graf_1 <- ggplot(replicaciones_1, aes(x = est_total_millones)) + geom_histogram() + geom_vline(xintercept = total_pob, colour = "red") + xlab("Millones de dólares") + scale_x_continuous(breaks = seq(180, 240, 10), limits = c(180, 240)) graf_1 Con muy alta probabilidad el error no será de más de unos 30 millones de dólares (o no más de 20% del valor poblacional). Definición Sea \\(X_1, X_2, \\ldots X_n\\) una muestra, y \\(T = t(X_1, X_2, \\ldots, X_n)\\) una estadística. La distribución de muestreo de \\(T\\) es la función de distribución de \\(T\\). Esta distribución es sobre todas las posibles muestras que se pueden obtener. Cuando usamos \\(T\\) para estimar algún parámetro poblacional \\(\\theta\\), decimos informalmente que el estimador es preciso si su distribución de muestreo está muy concentrada alrededor del valor \\(\\theta\\) que queremos estimar. Si la distribución de muestreo está concentrada en un conjunto muy grande o muy disperso, quiere decir que con alta probabilidad cuando obtengamos nuestra muestra y calculemos nuestra estimación, el resultado estará lejano del valor poblacional que nos interesa estimar. Veamos qué pasa cuando hacemos la muestra más grande en nuestro ejemplo: replicaciones_2 <- replicar_muestreo(marco_casas, m = 1500, n = 250) Graficamos las dos distribuciones de muestreo juntas, y vemos cómo con mayor muestra obtenemos un estimador más preciso, y sin considerar el costo, preferimos el estimador mejor concentrado alrededor del valor que buscamos estimar. library(patchwork) graf_2 <- ggplot(replicaciones_2, aes(x = est_total_millones)) + geom_histogram() + geom_vline(xintercept = total_pob, colour = "red") + xlab("Millones de dólares") + scale_x_continuous(breaks = seq(180, 240, 10), limits = c(180, 240)) graf_1 + graf_2 Observación: a veces este concepto se confunde la distribución poblacional de las \\(X_i\\). Esto es muy diferente. Por ejemplo, en nuestro caso, el histograma de la distribución de valores poblacionales es ggplot(marco_casas, aes(x = precio_miles)) + geom_histogram() que en general no tiene ver mucho en escala o forma con la distribución de muestreo de nuestro estimador del total. Más ejemplos Podemos también considerar muestrear de poblaciones sintéticas o modelos probabilísticos que usamos para modelar poblaciones reales. Por ejemplo, supongamos que tomamos una muestra de tamaño 15 de la distribución uniforme en \\([0,1]\\). Es decir, cada \\(X_i\\) es un valor uniformemente distribuido en \\([0,1]\\), y las \\(X_i\\) se extraen independientemente unas de otras. Consideramos dos estadísticas de interés: La media muestral \\(T_1(X) = \\frac{1}{15}\\sum_{i = 1}^{15} X_i\\) El cuantil 0.75 de la muestra \\(T_2(X) = q_{0.75}(X)\\) ¿Cómo crees que se vean las distribuciones muestrales de estas estadísticas? ¿Alrededor de qué valores crees que concentren? ¿Crees que tendrán mucha o poca dispersión? ¿Qué forma crees que tengan? Para el primer caso hacemos: # simular replicar_muestreo_unif <- function(est = mean, m, n = 15){ valores_est <- map_dbl(1:m, ~ est(runif(n))) tibble(id_muestra = 1:m, estimacion = valores_est) } sim_estimador_1 <- replicar_muestreo_unif(mean, 4000, 15) # graficar aprox de distribución de muestreo ggplot(sim_estimador_1, aes(x = estimacion)) + geom_histogram(bins = 40) + xlim(c(0, 1)) # simular para el máximo cuantil_75 <- function(x) quantile(x, 0.75) sim_estimador_2 <- replicar_muestreo_unif(cuantil_75, 4000, 15) # graficar distribución de muestreo ggplot(sim_estimador_2, aes(x = estimacion)) + geom_histogram(breaks = seq(0, 1, 0.02)) + xlim(c(0, 1)) Supón que tenemos una muestra de 30 observaciones de una distribución uniforme \\([0,b]\\). ¿Qué tan buen estimador de \\(b/2\\) es la media muestral? ¿Cómo lo cuantificarías? ¿Qué tan buen estimador del cuantil 0.8 de la distribución uniforme es el cuantil 0.8 muestral? ¿Qué desventajas notas en este estimador? El error estándar Una primera medida útil de la dispersión de la distribución de muestreo es su desviación estándar: la razón específica tiene qué ver con un resultado importante, el teorema central del límite, que veremos más adelante. En este caso particular, a esta desviación estándar se le llama error estándar: Definición A la desviación estándar de una estadística \\(T\\) le llamamos su error estándar, y la denotamos por \\(\\text{ee}(T)\\). A cualquier estimador de este error estándar lo denotamos como \\(\\hat{\\text{ee}}(T)\\). Este error estándar mide qué tanto varía el estimador \\(T\\) de muestra a muestra. Observación: es importante no confundir el error estándar con la desviación estándar de una muestra (o de la población). En nuestro ejemplo de las uniformes, la desviación estándar de las muestras varía como: map_dbl(1:10000, ~ sd(runif(15))) |> quantile() |> round(2) ## 0% 25% 50% 75% 100% ## 0.11 0.26 0.29 0.31 0.41 Mientras que el error estándar de la media es aproximadamente map_dbl(1:10000, ~ mean(runif(15))) |> sd() ## [1] 0.07439575 y el error estándar del máximo es aproximadamente map_dbl(1:10000, ~ max(runif(15))) |> sd() ## [1] 0.05928675 Como ejercicio para contrastar estos conceptos, puedes considerar: ¿Qué pasa con la desviación estándar de una muestra muy grande de uniformes? ¿Qué pasa con el error estándar de la media muestral de una muestra muy grande de uniformes? Ejemplo: valor de casas Consideramos el error estándar del estimador del total del inventario vendido, usando una muestra de 250 con el estimador del total que describimos arriba. Como aproximamos con simulación la distribución de muestreo, podemos hacer: ee_2 <- replicaciones_2 |> pull(est_total_millones) |> sd() round(ee_2, 1) ## [1] 5.2 que está en millones de pesos y cuantifica la dispersión de la distribución de muestreo del estimador del total. Para tamaño de muestra 100, obtenemos más dispersión: ee_1 <- replicaciones_1 |> pull(est_total_millones) |> sd() round(ee_1, 1) ## [1] 8.9 Nótese que esto es muy diferente, por ejemplo, a la desviación estándar poblacional o de una muestra. Estas dos cantidades miden la variabilidad del estimador del total. Calculando la distribución de muestreo En los ejemplos anteriores usamos simulación para obtener aproximaciones de la distribución de muestreo de algunos estimadores. También es posible: Hacer cálculos exactos a partir de modelos probabilísticos. Hacer aproximaciones asintóticas para muestras grandes (de las cuales la más importante es la que da el teorema central del límite). En los ejemplos de arriba, cuando muestreamos de la poblaciones, extrajimos las muestras de manera aproximadamente independiente. Cada observación \\(X_i\\) tiene la misma distribución y las \\(X_i\\)’s son independientes. Este tipo de diseños aleatorizados es de los más simples, y se llama muestreo aleatorio simple. En general, en esta parte haremos siempre este supuesto: Una muestra es iid (independiente e idénticamente distribuida) si es es un conjunto de observaciones \\(X_1,X_2, \\ldots X_n\\) independientes, y cada una con la misma distribución. En términos de poblaciones, esto lo logramos obteniendo cada observación de manera aleatoria con el mismo procedimiento. En términos de modelos probabilísticos, cada \\(X_i\\) se extrae de la misma distribución fija \\(F\\) (que pensamos como la “población”) de manera independiente. Esto lo denotamos por \\(X_i \\overset{iid}{\\sim} F.\\) Ejemplo Si \\(X_1, X_2, \\ldots X_n\\) es una muestra de uniformes independientes en \\([0,1]\\), ¿cómo calcularíamos la distribución de muestreo del máximo muestra \\(T_2 = \\max\\)? En este caso, es fácil calcular su función de distribución acumulada de manera exacta: \\[F_{\\max}(x) = P(\\max\\{X_1,X_2,\\ldots X_n\\} \\leq x)\\] El máximo es menor o igual a \\(x\\) si y sólo si todas las \\(X_i\\) son menores o iguales a \\(x\\), así que \\[F_{\\max} (x) = P(X_1\\leq x, X_2\\leq x, \\cdots, X_n\\leq x)\\] como las \\(X_i\\)’s son independientes entonces \\[F_{\\max}(x) = P(X_1\\leq x)P(X_2\\leq x)\\cdots P(X_n\\leq x) = x^n\\] para \\(x\\in [0,1]\\), pues para cada \\(X_i\\) tenemos \\(P(X_i\\leq x) = x\\). Así que no es necesario usar simulación para conocer esta distribución de muestreo. Derivando esta distribución acumulada obtenemos su densidad, que es \\[f(x) = nx^{n-1}\\] para \\(x\\in [0,1]\\), y es cero en otro caso. Si comparamos con nuestra simulación: teorica <- tibble(x = seq(0, 1 ,0.001)) |> mutate(f_dens = 15 * x^14) sim_estimador_3 <- replicar_muestreo_unif(max, 4000, 15) ggplot(sim_estimador_3) + geom_histogram(aes(x = estimacion), breaks = seq(0, 1, 0.02)) + xlim(c(0.5, 1)) + # el histograma es de ancho 0.02 y el número de simulaciones 4000 geom_line(data = teorica, aes(x = x, y = (4000 * 0.02) * f_dens), colour = "red", linewidth = 1.3) Y vemos que con la simulación obtuvimos una buena aproximación Nota: ¿cómo se relaciona un histograma con la función de densidad que genera los datos? Supón que \\(f(x)\\) es una función de densidad, y obtenemos un número \\(n\\) de simulaciones independientes. Si escogemos un histograma de ancho \\(\\Delta\\), ¿cuántas observaciones esperamos que caigan en un intervalo \\(I = [a - \\Delta/2, a + \\Delta/2]\\)?. La probabilidad de que una observación caiga en \\(I\\) es igual a \\[P(X\\in I) = \\int_I f(x)\\,dx = \\int_{a - \\Delta/2}^{a + \\Delta/2} f(x)\\,dx \\approx f(a) \\text{long}(I) = f(a) \\Delta\\] para \\(\\Delta\\) chica. Si nuestra muestra es de tamaño \\(n\\), el número esperado de observaciones que caen en \\(I\\) es entonces \\(nf(a)\\Delta\\). Eso explica el ajuste que hicimos en la gráfica de arriba. Otra manera de hacer es ajustando el histograma: si en un intervalo el histograma alcanza el valor \\(y\\), \\[f(a) = \\frac{y}{n\\Delta}\\] teorica <- tibble(x = seq(0, 1 ,0.001)) |> mutate(f_dens = 15*x^{14}) ggplot(sim_estimador_3) + geom_histogram(aes(x = estimacion, y = after_stat(density)), breaks = seq(0, 1, 0.02)) + xlim(c(0.5, 1)) + # el histograma es de ancho 0.02 y el número de simulaciones 4000 geom_line(data = teorica, aes(x = x, y = f_dens), colour = "red", size = 1.3) Ejemplo Supongamos que las \\(X_i\\)’s son independientes y exponenciales con tasa \\(\\lambda > 0\\). ¿Cuál es la distribución de muestreo de la suma \\(S = X_1 + \\cdots + X_n\\)? Sabemos que la suma de exponenciales independientes es una distribución gamma con parámetros \\((n, \\lambda)\\), y esta es la distribución de muestreo de nuestra estadística \\(S\\) bajo las hipótesis que hicimos. Podemos checar este resultado con simulación, por ejemplo para una muestra de tamaño \\(n=15\\) con \\(\\lambda = 1\\): replicar_muestreo_exp <- function(est = mean, m, n = 150, lambda = 1){ valores_est <- map_dbl(1:m, ~ est(rexp(n, lambda))) tibble(id_muestra = 1:m, estimacion = valores_est) } sim_estimador_1 <- replicar_muestreo_exp(sum, 4000, n = 15) teorica <- tibble(x = seq(0, 35, 0.001)) |> mutate(f_dens = dgamma(x, shape = 15, rate = 1)) # graficar aprox de distribución de muestreo ggplot(sim_estimador_1) + geom_histogram(aes(x = estimacion, y = after_stat(density)), bins = 35) + geom_line(data = teorica, aes(x = x, y = f_dens), colour = "red", linewidth = 1.2) Teorema central del límite Si consideramos los ejemplos de arriba donde tratamos con estimadores basados en una suma, total o una media —y en menor medida cuantiles muestrales—, vimos que las distribución de muestreo de las estadísticas que usamos tienden a tener una forma común. Estas son manifestaciones de una regularidad estadística importante que se conoce como el teorema central del límite: las distribuciones de muestreo de sumas y promedios son aproximadamente normales cuando el tamaño de muestra es suficientemente grande. Teorema central del límite Si \\(X_1,X_2, \\ldots, X_n\\) son independientes e idénticamente distribuidas con media \\(\\mu\\) y desviación estándar \\(\\sigma\\) finitas. Si el tamaño de muestra \\(n\\) es grande, entonces la distribución de muestreo de la media \\[\\bar{X} = \\frac{X_1 + X_2 +\\cdots + X_n}{n}\\] es aproximadamente normal con media \\(\\mu\\) y desviación estándar \\(\\sigma/\\sqrt{n}\\), que escribimos como \\[\\bar{X} \\xrightarrow{} \\mathsf{N}\\left( \\mu, \\frac{\\sigma}{\\sqrt{n}} \\right)\\] Adicionalmente, la distribución de la media estandarizada converge a una distribución normal estándar cuando \\(n\\) es grande: \\[\\sqrt{n} \\, \\left( \\frac{\\bar{X}-\\mu}{\\sigma} \\right) \\xrightarrow{} \\mathsf{N}(0, 1)\\] El error estándar de \\(\\bar{X}\\) es \\(\\text{ee}(\\bar{X}) = \\frac{\\sigma}{\\sqrt{n}}\\). Si tenemos una muestra, podemos estimar \\(\\sigma\\) con de la siguiente forma: \\[\\hat{\\sigma} =\\sqrt{\\frac{1}{n}\\sum_{i=1}^n (X_i - \\bar{X})^2}\\] o el más común (que explicaremos más adelante) \\[\\hat{s} = \\sqrt{\\frac{1}{n-1}\\sum_{i=1}^n (X_i - \\bar{X})^2}\\] Este hecho junto con el teorema del límite central nos dice cuál es la dispersión, y cómo se distribuyen las posibles desviaciones de la media muestral alrededor de la verdadera media poblacional. ¿Qué tan grande debe ser \\(n\\). Depende de cómo es la población. Cuando la población tiene una distribución muy sesgada, por ejemplo, \\(n\\) típicamente necesita ser más grande que cuando la población es simétrica si queremos obtener una aproximación “buena”. En algunos textos se afirma que \\(n\\geq 30\\) es suficiente para que la aproximación del Teorema central del límite (TCL) sea buena siempre y cuando la distribución poblacional no sea muy sesgada. Esta regla es más o menos arbitraria y es mejor no confiarse, pues fácilmente puede fallar. En la práctica es importante checar este supuesto, por ejemplo usando remuestreo (que veremos más adelante) Revisa los ejemplos que hemos visto hasta ahora (precios de casas, simulaciones de uniformes y exponenciales según las distintas estadísticas que consideramos). ¿Qué distribuciones de muestreo parecen tener una distribución normal? ¿Cómo juzgamos si estas distribuciones están cerca o lejos de una distribución normal? Normalidad y gráficas de cuantiles normales Para checar si una distribución de datos dada es similar a la normal, la herramienta mas común en estádística es la gráfica de cuantiles teóricos, que es una generalización de la gráfica de cuantiles que vimos anteriormente. En primer lugar, definimos la función de cuantiles de una distribución teórica, que es análoga a la que definimos para conjuntos de datos: Supongamos que tenemos una distribución acumulada teórica \\(\\Phi\\). Podemos definir el cuantil-\\(f\\) \\(q(f)\\) de \\(\\Phi\\) como el valor \\(q(f)\\) tal que \\[q(f) = \\text{argmin}\\{x \\,| \\, \\Phi(x)\\geq f \\}\\] En el caso de que \\(\\Phi\\) tiene densidad \\(\\phi\\), y su soporte es un intervalo (que puede ser de longitud infinita), entonces podemos también escribir \\(q(f)\\) como el valor único donde acumulamos \\(f\\) de la probabilidad \\[\\int_{-\\infty}^{q(f)} \\phi(x)\\,dx= f\\] Por ejemplo, para una densidad normal, abajo mostramos los cuantiles \\(f=0.5\\) (mediana) y \\(f=0.95\\) densidad_tbl <- tibble(x = seq(0, 10, 0.01)) |> mutate(densidad = dnorm(x, 5, 1)) # qnorm es la función de cuantiles de una normal cuantil_50 <- qnorm(0.50, 5, 1) cuantil_90 <- qnorm(0.95, 5, 1) # graficamos densidad_tbl <- densidad_tbl |> mutate(menor_50 = x >= cuantil_50) |> mutate(menor_90 = x >= cuantil_90) g_normal_50 <- ggplot(densidad_tbl, aes(y = densidad)) + ylab('f(x)') + geom_area(aes(x = x, fill = menor_50)) + geom_line(aes(x = x), alpha = 0.1) + geom_vline(xintercept = cuantil_50) + theme(legend.position = "none") + annotate("text", 4.3, 0.2, label = "50%") + labs(subtitle = paste0("q(0.5)=", round(cuantil_50,1))) g_normal_90 <- ggplot(densidad_tbl, aes(y = densidad)) + ylab('f(x)') + geom_area(aes(x = x, fill = menor_90)) + geom_line(aes(x = x), alpha = 0.1) + geom_vline(xintercept = cuantil_90) + theme(legend.position = "none") + annotate("text", 5.0, 0.2, label = "95%") + labs(subtitle = paste0("q(0.95)=", round(cuantil_90,1))) g_normal_50 + g_normal_90 Como todas las distribuciones normales tienen la misma forma, y para obtener una de otra solo basta reescalar y desplazar, para calcular los cuantiles de una variable con distribución normal \\(\\mathsf{N}(\\mu, \\sigma)\\) sólo tenemos que saber los cuantiles de la distribución normal estándar \\(\\mathsf{N}(0,1)\\) y escalarlos apropiadamente por su media y desviación estándar \\[q(f, \\mu, \\sigma) = \\mu + \\sigma q(f, 0, 1)\\] Puedes demostrar esto sin mucha dificultad empezando con \\(P(X\\leq q) = f\\) y estandarizando: \\[P(X\\leq q(f, \\mu, \\sigma)) = f \\implies P\\left (Z\\leq \\frac{q(f,\\mu,\\sigma) - \\mu}{\\sigma}\\right)=f\\] y esto implica que \\[q(f, 0, 1) = \\frac{q(f,\\mu,\\sigma) - \\mu}{\\sigma} \\implies q(f, \\mu, \\sigma) = \\mu + \\sigma q(f, 0, 1)\\] De modo que si graficáramos los cuantiles de una distribución \\(\\mathsf{N}(\\mu, \\sigma)\\) contra los cuantiles de una distribución \\(\\mathsf{N}(0,1)\\), estos cuantiles aparecen en una línea recta: comparacion_tbl <- tibble(f = seq(0.01, 0.99, 0.01)) |> mutate(cuantiles_normal = qnorm(f, 5, 3), cuantiles_norm_estandar = qnorm(f, 0, 1)) ggplot(comparacion_tbl, aes(cuantiles_norm_estandar, cuantiles_normal)) + geom_point() Ahora supongamos que tenemos una muestra \\(X_1, \\ldots, X_n\\). ¿Cómo podemos checar si estos datos tienen una distribución aproximadamente normal? Si la muestra tiene una distribución aproximadamente \\(\\mathsf{N}(\\mu, \\sigma)\\), entonces sus cuantiles muestrales y los cuantiles respectivos de la normal estándar están aproximadamente en una línea recta. Primero veamos un ejemplo donde los datos son generados según una normal. set.seed(21) muestra <- tibble(x_1 = rnorm(60, 10, 3), x_2 = rgamma(60, 2, 5)) graf_1 <- ggplot(muestra, aes(sample = x_1)) + geom_qq(distribution = stats::qnorm) + geom_qq_line(colour = "red") graf_2 <- ggplot(muestra, aes(sample = x_2)) + geom_qq(distribution = stats::qnorm) + geom_qq_line(colour = "red") graf_1 + graf_2 ¿Cuáles son los datos aproximadamente normales? ¿Cómo interpretas las desviaciones de la segunda gráfica en términos de la forma de la distribución normal? Prueba de hipótesis de normalidad Para interpretar las gráficas de cuantiles normales se requiere práctica, pues claramente los datos, aún cuando provengan de una distribución normal, no van a caer justo sobre una línea recta y observaremos variabilidad. Esto no descarta necesariamente que los datos sean aproximadamente normales. Con la práctica, generalmente esta gráfica nos da una buena indicación si el supuesto de normalidad es apropiado. Sin embargo, podemos hacer una prueba de hipótesis formal de normalidad si quisiéramos. La hipótesis nula es la siguiente: Los datos provienen de una distribución normal, y las desviaciones que observamos de una línea recta se deben a variación muestral. Podemos generar datos nulos tomando la media y desviación estándar muestrales, y generando muestras normales \\(\\mathsf{N}(\\bar{x}, s)\\). Usamos el lineup, produciendo datos bajo la hipótesis nula y viendo si podemos distinguir los datos. Por ejemplo: library(nullabor) lineup_normal <- lineup(null_dist("x_2", dist = "normal"), muestra) ggplot(lineup_normal, aes(sample = x_2)) + geom_qq(distribution = stats::qnorm) + geom_qq_line(colour = "red") + facet_wrap(~ .sample) En esta gráfica claramente rechazaríamos la hipótesis de normalidad. Sin embargo, para la primera muestra, obtenemos: lineup_normal <- lineup(null_dist("x_1", dist = "normal"), muestra) ggplot(lineup_normal, aes(sample = x_1)) + geom_qq(distribution = stats::qnorm) + geom_qq_line(colour = "red") + facet_wrap(~ .sample) Los datos verdaderos están en attr(lineup_normal, "pos") ## [1] 4 Ejemplo Consideremos el problema de estimar el total poblacional de los precios de las casas que se vendieron. El estimador que usamos fue la suma muestral expandida por un factor. Vamos a checar qué tan cerca de la normalidad está la distribución de meustreo de esta estadística (\\(n=250\\)): replicaciones_2 ## # A tibble: 1,500 × 4 ## id_muestra total_muestra factor_exp est_total_millones ## <chr> <dbl> <dbl> <dbl> ## 1 1 47089. 4.58 215. ## 2 2 45654. 4.58 209. ## 3 3 43973. 4.58 201. ## 4 4 45665. 4.58 209. ## 5 5 43551. 4.58 199. ## 6 6 46066. 4.58 211. ## 7 7 46626. 4.58 213. ## 8 8 47944. 4.58 219. ## 9 9 45381. 4.58 208. ## 10 10 46519. 4.58 213. ## # ℹ 1,490 more rows ggplot(replicaciones_2, aes(sample = est_total_millones)) + geom_qq(alpha = 0.3) + geom_qq_line(colour = "red") Y vemos que en efecto el TCL aplica en este ejemplo, y la aproximación es buena. Aunque la población original es sesgada, la descripción de la distribución de muestreo es sorprendemente compacta: La distribución de muestreo de nuestro estimador del total \\(\\hat{t}\\) es aproximadamente normal con media \\(\\bar{x}\\) y desviación estándar \\(s\\), donde: mu <- mean(replicaciones_2$est_total_millones) s <- sd(replicaciones_2$est_total_millones) c(mu = mu, s = s) |> round(2) ## mu s ## 209.90 5.24 Estas cantidades están en millones de dólares. Ejemplo Supongamos que queremos calcular la probabilidad que la suma de 30 variables uniformes en \\([0,1]\\) independientes sea mayor que 18. Podríamos aproximar esta cantidad usando simulación. Otra manera de aproximar esta cantidad es con el TCL, de la siguiente forma: Si \\(S=X_1 + X_2 + X_{30}\\), entonces la media de \\(S\\) es 15 (¿cómo se calcula?) y su desviación estándar es \\(\\sqrt{\\frac{30}{12}}\\). La suma es entonces aproximadamente \\(\\mathsf{N}\\left(15, \\sqrt{\\frac{30}{12}}\\right)\\). Entonces \\[P(S > 18) = P \\left (\\frac{S - 15}{\\sqrt{\\frac{30}{12}}} > \\frac{18 - 15}{\\sqrt{\\frac{30}{12}}}\\right) \\approx P(Z > 1.897)\\] donde \\(Z\\) es normal estándar. Esta última cantidad la calculamos usando la función de distribución de la normal estándar, y nuestra aproximación es 1 - pnorm(1.897) ## [1] 0.02891397 Podemos checar nuestro cálculo usando simulación: tibble(n_sim = 1:100000) |> mutate(suma = map_dbl(n_sim, ~ sum(runif(30)))) |> summarise(prob_may_18 = mean(suma > 18), .groups = "drop") ## # A tibble: 1 × 1 ## prob_may_18 ## <dbl> ## 1 0.0280 Y vemos que la aproximación normal es buena para fines prácticos. Usando simulaciones haz un histograma que aproxime la distribución de muestreo de \\(S\\). Haz una gráfica de cuantiles normales para checar la normalidad de esta distribución. Ejemplo Cuando el sesgo de la distribución poblacional es grande, puede ser necesario que \\(n\\) sea muy grande para que la aproximación normal sea aceptable para el promedio o la suma. Por ejemplo, si tomamos una gamma con parámetro de forma chico, \\(n = 30\\) no es suficientemente bueno, especialmente si quisiéramos aproximar probabilidades en las colas de la distribución: sims_gamma <- map_df(1:2000, ~ tibble(suma = sum(rgamma(30, 0.1, 1))), .id = "n_sim") ggplot(sims_gamma, aes(x = suma)) + geom_histogram() Más del Teorema central del límite El teorema central del límite aplica a situaciones más generales que las del enunciado del teorema básico. Por ejemplo, aplica a poblaciones finitas (como vimos en el ejemplo de las casas), en 1960 Jaroslav Hajek demostró una versión del TCL bajo muestreo sin reemplazo. Mas allá de la media muestral, el TCL se puede utilizar para más estadísticas ya que muchas pueden verse como promedios, como totales o errores estándar. El TLC se ha generalizado incluso para cuantiles muestrales. Es importante notar que la calidad de la aproximación del TCL depende de características de la población y también del tamaño de muestra \\(n\\). Para ver si el TCL aplica, podemos hacer ejercicios de simulación bajo diferentes supuestos acerca de la población. También veremos más adelante, con remuestreo, maneras de checar si es factible el TCL dependiendo del análisis de una muestra dada que tengamos. El TCL era particularmente importante en la práctica antes de que pudiéramos hacer simulación por computadora. Era la única manera de aproximar y entender la distribución muestral fuera de cálculos analíticos (como los que hicimos para el máximo de un conjunto de uniformes, por ejemplo). Hoy en día, veremos que podemos hacer simulación para obtener respuestas más exactas, particularmente en la construcción de intervalos de confianza, por ejemplo. Dependemos menos de resultados asintóticos, como el TCL. Cuando aproximamos una distribución discreta mediante la distribución normal, conviene hacer correcciones de continuidad, como se explica en (Chihara and Hesterberg 2018), 4.3.2. Referencias "],["intervalos-de-confianza-y-remuestreo.html", "Sección 5 Intervalos de confianza y remuestreo Ejemplo introductorio La idea del bootstrap El principio de plug-in Discusión: propiedades de la distribución bootstrap Error estándar bootstrap e intervalos normales Ejemplo: inventario de casas vendidas Calibración de intervalos de confianza Interpretación de intervalos de confianza Sesgo Intervalos bootstrap de percentiles Bootstrap para dos muestras Bootstrap y otras estadísticas Bootstrap y estimadores complejos: tablas de perfiles Bootstrap y muestras complejas Bootstrap en R Conclusiones y observaciones", " Sección 5 Intervalos de confianza y remuestreo En la sección anterior, vimos el concepto de distribución de muestreo de una estadística que queremos utilizar para estimar un valor poblacional, y vimos que con esta distribución podíamos evaluar qué tan preciso es nuestro estimador evaluando qué tan concentrada está esta distribución alrededor del valor poblacion que queremos estimar. Sin embargo, en los ejemplos que vimos la población era conocida: ya sea que tuviéramos toda la población finita disponible (como el ejemplo de las casas), o donde la población estaba definida por un modelo teórico de probabilidad (como los ejemplos de las distribuciones uniforme o exponencial). Ahora vemos qué hacer en el caso que realmente nos interesa: solo tenemos una muestra disponible, y la población es desconocida. Todo lo que tenemos es una muestra y una estimación basada en la muestra, y requerimos estimar la distribución de muestreo de la estadística de interés. El enfoque que presentaremos aquí es uno de los más flexibles y poderosos que están disponibles para este problema: el método bootstrap o de remuestreo. En primer lugar explicamos el concepto de intervalo de confianza, que es una manera resumida de evaluar la precisión de nuestras estimaciones. Ejemplo introductorio Regresamos a nuestro ejemplo anterior donde muestreamos 3 grupos, y nos preguntábamos acerca de la diferencia de sus medianas. En lugar de hacer pruebas de permutaciones (ya sea pruebas gráficas o alguna prueba de permutaciones para media o mediana, por ejemplo), podríamos considerar qué tan precisa es cada una de nuestras estimaciones para las medianas de los grupos. Nuestros resultados podríamos presentarlos como sigue. Este código lo explicaremos más adelante, por el momento consideramos la gŕafica resultante: set.seed(8) pob_tab <- tibble(id = 1:2000, x = rgamma(2000, 4, 1), grupo = sample(c("a","b", "c"), 2000, prob = c(4,2,1), replace = T)) muestra_tab <- pob_tab |> slice_sample(n = 125) g_1 <- ggplot(muestra_tab, aes(x = grupo, y = x)) + geom_boxplot(outlier.alpha = 0) + geom_jitter(alpha = 0.3) + labs(subtitle = "Muestra \\n") + ylim(c(0,14)) ## Hacemos bootstrap fun_boot <- function(datos){ datos |> group_by(grupo) |> slice_sample(prop = 1, replace = TRUE) } reps_boot <- map_df(1:2000, function(i){ muestra_tab |> fun_boot() |> group_by(grupo) |> summarise(mediana = median(x), .groups = "drop")}, .id = 'rep') resumen_boot <- reps_boot |> group_by(grupo) |> summarise(ymin = quantile(mediana, 0.025), ymax = quantile(mediana, 0.975), .groups = "drop") |> left_join(muestra_tab |> group_by(grupo) |> summarise(mediana = median(x))) g_2 <- ggplot(resumen_boot, aes(x = grupo, y = mediana, ymin = ymin, ymax = ymax)) + geom_linerange() + geom_point(colour = "red", size = 2) + ylim(c(0,14)) + labs(subtitle = "Intervalos de 95% \\n para la mediana") g_1 + g_2 Donde: En rojo está nuestro = puntual de la mediana de cada grupo (la mediana muestral), y Las segmentos muestran un intervalo de confianza del 95% para nuestra estimación de la mediana: esto quiere decir que los valores poblacionales tienen probabilidad aproximada de 95% de estar dentro del intervalo. Este análisis comunica correctamente que tenemos incertidumbre alta acerca de nuestras estimaciones (especialmente grupos b y c), y que no tenemos mucha evidencia de que el grupo b tenga una mediana poblacional considerablemente más alta que a o c. En muchos casos es más útil presentar la información de esta manera que usando alguna prueba de hipótesis. La idea del bootstrap Como explicamos, el problema que tenemos ahora es que normalmente sólo tenemos una muestra, así que no es posible calcular las distribuciones de muestreo como hicimos en la sección anterior y así evaluar qué tan preciso es nuestro estimador. Sin embargo, podemos hacer lo siguiente: Supongamos que tenemos una muestra \\(X_1,X_2,\\dots, X_n\\) independientes de alguna población desconocida y un estimador \\(T=t(X_1,\\dots, X_n)\\) Mundo poblacional Si tuviéramos la distribución poblacional, simulamos muestras iid para aproximar la distribución de muestreo de nuestro estimador, y así entender su variabilidad. Pero no tenemos la distribución poblacional. Sin embargo, podemos estimar la distribución poblacional con nuestros valores muestrales. Mundo bootstrap Si usamos la estimación del inciso 3, entonces usando el inciso 1 podríamos tomar muestras de nuestros datos muestrales, como si fueran de la población, y usando el mismo tamaño de muestra. El muestreo lo hacemos con reemplazo de manera que produzcamos muestras independientes de la misma “población estimada”, que es la muestra. Evaluamos nuestra estadística en cada una de estas remuestras, a estas les llamamos replicaciones bootstrap. A la distribución de las replicaciones le llamamos distribución bootstrap o distribución de remuestreo del estimador. Usamos la distribución bootstrap para estimar la variabilidad en nuestra estimación con la muestra original. Veamos que sucede para un ejemplo concreto, donde nos interesa estimar la media de los precios de venta de una población de casas. Tenemos nuestra muestra: set.seed(2112) poblacion_casas <- read_csv("data/casas.csv") muestra <- slice_sample(poblacion_casas, n = 200, replace = TRUE) mean(muestra$precio_miles) ## [1] 179.963 Esta muestra nos da nuestro estimador de la distribución poblacional: bind_rows(muestra |> mutate(tipo = "muestra"), poblacion_casas |> mutate(tipo = "población")) |> ggplot(aes(sample = precio_miles, colour = tipo, group = tipo)) + geom_qq(distribution = stats::qunif, alpha = 0.4, size = 1) + facet_wrap(~ tipo) O con histogramas: bind_rows(muestra |> mutate(tipo = "muestra"), poblacion_casas |> mutate(tipo = "población")) |> ggplot(aes(x = precio_miles, group = tipo)) + geom_histogram(aes(y=..density..), binwidth = 50) + facet_wrap(~ tipo) Y vemos que la aproximación es razonable en las partes centrales de la distribución. Ahora supongamos que nos interesa cuantificar la precisión de nuestra estimación de la media poblacional de precios de casas, y usaremos la media muestral para hacer esto. Para nuestra muestra, nuestra estimación puntual es: media <- mean(muestra$precio_miles) media ## [1] 179.963 Y recordamos que para aproximar la distribución de muestreo podíamos muestrear repetidamente la población y calcular el valor del estimador en cada una de estas muestras. Aquí no tenemos la población, pero tenemos una estimación de la población: la muestra obtenida. Así que para evaluar la variabilidad de nuestro estimador, entramos en el mundo bootstrap, y consideramos que la población es nuestra muestra. Podemos entonces extraer un número grande de muestras con reemplazo de tamaño 200 de la muestra: el muestreo debe ser análogo al que se tomó para nuestra muestra original. Evaluamos nuestra estadística (en este caso la media) en cada una de estas remuestras: media_muestras <- map_dbl(1:5000, ~ muestra |> slice_sample(n = 200, replace = TRUE) |> summarise(media_precio = mean(precio_miles), .groups = "drop") |> pull(media_precio)) Y nuestra estimación de la distribución de muestreo para la media es entonces: bootstrap <- tibble(media = media_muestras) g_cuantiles <- ggplot(bootstrap, aes(sample = media)) + geom_qq(distribution = stats::qunif) g_histograma <- ggplot(bootstrap, aes(x = media)) + geom_histogram(binwidth = 2) g_cuantiles + g_histograma A esta le llamamos la distribución bootstrap (o de remuestreo) de la media, que definimos más abajo. Ahora podemos calcular un intervalo de confianza del 90% simplemente calculando los cuantiles de esta distribución (no son los cuantiles de la muestra original!): limites_ic <- quantile(media_muestras, c(0.05, 0.95)) |> round() limites_ic ## 5% 95% ## 171 189 Presentaríamos nuestro resultado como sigue: nuestra estimación puntual de la mediana es 180, con un intervalo de confianza del 90% de (171, 189) Otra cosa que podríamos hacer para describir la dispersión de nuestro estimador es calcular el error estándar de remuestreo, que estima el error estándar de la distribución de muestreo: ee_boot <- sd(media_muestras) round(ee_boot, 2) ## [1] 5.39 Definición. Sea \\(X_1,X_2,\\ldots,X_n\\) una muestra independiente y idénticamente distribuida, y \\(T=t(X_1, X_2, \\ldots, X_n)\\) una estadística. Supongamos que sus valores que obervamos son \\(x_1, x_2,\\ldots, x_n\\). La distribución bootstrap, o distribución de remuestreo, de \\(T\\) es la distribución de \\(T^*=t(X_1^*, X_2^*, \\dots X_n^*)\\), donde cada \\(X_i^*\\) se obtiene tomando al azar uno de los valores de \\(x_1,x_2,\\ldots, x_n\\). Otra manera de decir esto es que la remuestra \\(X_1^*, X_2^*, \\ldots, X_n^*\\) es una muestra con reemplazo de los valores observados \\(x_1, x_2, \\ldots, x_n\\) Ejemplo. Si observamos la muestra muestra <- sample(1:20, 5) muestra ## [1] 6 10 7 3 14 Una remuestra se obtiene: sample(muestra, size = 5, replace = TRUE) ## [1] 7 3 7 10 6 Nótese que algunos valores de la muestra original pueden aparecer varias veces, y otros no aparecen del todo. La idea del bootstrap (no paramétrico). La muestra original es una aproximación de la población de donde fue extraída. Así que remuestrear la muestra aproxima lo que pasaría si tomáramos muestras de la población. La distribución de remuestreo de una estadística, que se construye tomando muchas remuestras, aproxima la distribución de muestreo de la estadística. Y el proceso que hacemos es: Remuestreo para una población. Dada una muestra de tamaño \\(n\\) de una población, Obtenemos una remuestra de tamaño \\(n\\) con reemplazo de la muestra original y calculamos la estadística de interés. Repetimos este remuestreo muchas veces (por ejemplo, 10,000). Construímos la distribución bootstrap, y examinamos sus características (dónde está centrada, dispersión y forma). El principio de plug-in La idea básica detrás del bootstrap es el principio de plug-in para estimar parámetros poblacionales: si queremos estimar una cantidad poblacional, calculamos esa cantidad poblacional con la muestra obtenida. Es un principio común en estadística. Por ejemplo, si queremos estimar la media o desviación estándar poblacional, usamos la media muestral o la desviación estándar muestral. Si queremos estimar un cuantil de la población usamos el cuantil correspondiente de la muestra, y así sucesivamente. En todos estos casos, lo que estamos haciendo es: Tenemos una fórmula para la cantidad poblacional de interés en términos de la distribución poblacional. Tenemos una muestra, la distribución que da esta muestra se llama distribución empírica (\\(\\hat{F}(x) = \\frac{1}{n}\\{\\#valores \\le x\\}\\)). Contruimos nuestro estimador, de la cantidad poblacional de interés, “enchufando” la distribución empírica de la muestra en la fórmula del estimador. En el bootstrap aplicamos este principio simple a la distribución de muestreo: Si tenemos la población, podemos calcular la distribución de muestreo de nuestro estimador tomando muchas muestras de la población. Estimamos la poblacion con la muestra y enchufamos en la frase anterior: estimamos la distribución de muestreo de nuestro estimador tomando muchas muestras de la muestra. Nótese que el proceso de muestreo en el último paso debe ser el mismo que se usó para tomar la muestra original. Estas dos imágenes simuladas con base en un ejemplo de Chihara and Hesterberg (2018) muestran lo que acabamos de describir: Figure 5.1: Mundo Real Figure 5.2: Mundo Bootstrap Observación 1. Veremos ejemplos más complejos, pero nótese que si la muestra original son observaciones independientes obtenidas de la distribución poblacional, entonces logramos esto en las remuestras tomando observaciones con reemplazo de la muestra. Igualmente, las remuestras deben ser del mismo tamaño que la muestra original. ¿Porqué no funcionaría tomar muestras sin reemplazo? Piensa si hay independencia entre las observaciones de la remuestra, y cómo serían las remuestras sin reemplazo. ¿Por qué no se puede hacer bootstrap si no conocemos cómo se obtuvo la muestra original? Observación 2. Estos argumentos se pueden escribir con fórmulas usando por ejemplo la función de distribución acumulada \\(F\\) de la población y su estimador, que es la función empírica \\(\\hat{F}\\). Si \\(\\theta = t(F)\\) es una cantidad poblacional que queremos estimar, su estimador plug-in es \\(\\hat{\\theta} = t(\\hat{F})\\). Observación 3: La distribución empírica \\(\\hat{F}\\) es un estimador “razonable” de la distribución poblacional \\(F,\\) pues por el teorema de Glivenko-Cantelli (ver Wasserman (2013), o aquí), \\(\\hat{F}\\) converge a \\(F\\) cuando el tamaño de muestra \\(n\\to\\infty\\), lo cual es intuitivamente claro. Ejemplo En el ejemplo de tomadores de té, podemos estimar la proporción de tomadores de té que prefiere el té negro usando nuestra muestra: te <- read_csv("data/tea.csv") |> rowid_to_column() |> select(rowid, Tea, sugar) te |> mutate(negro = ifelse(Tea == "black", 1, 0)) |> summarise(prop_negro = mean(negro), n = length(negro), .groups = "drop") ## # A tibble: 1 × 2 ## prop_negro n ## <dbl> <int> ## 1 0.247 300 ¿Cómo evaluamos la precisión de este estimador? Supondremos que el estudio se hizo tomando una muestra aleatoria simple de tamaño 300 de la población de tomadores de té que nos interesa. Podemos entonces usar el bootstrap: # paso 1: define el estimador calc_estimador <- function(datos){ prop_negro <- datos |> mutate(negro = ifelse(Tea == "black", 1, 0)) |> summarise(prop_negro = mean(negro), n = length(negro), .groups = "drop") |> pull(prop_negro) prop_negro } # paso 2: define el proceso de remuestreo muestra_boot <- function(datos){ #tomar muestra con reemplazo del mismo tamaño slice_sample(datos, prop = 1, replace = TRUE) } # paso 3: remuestrea y calcula el estimador prop_negro_tbl <- tibble(prop_negro = map_dbl(1:10000, ~ calc_estimador(muestra_boot(datos = te)))) # paso 4: examina la distribución bootstrap prop_negro_tbl |> ggplot(aes(x = prop_negro)) + geom_histogram(bins = 15) + geom_vline(xintercept = calc_estimador(te), color = "red") Y podemos evaluar varios aspectos, por ejemplo dónde está centrada y qué tan dispersa es la distribución bootstrap: prop_negro_tbl |> summarise(media = mean(prop_negro), ee = sd(prop_negro), cuantil_75 = quantile(prop_negro, 0.75), cuantil_25 = quantile(prop_negro, 0.25), .groups = "drop") |> mutate(across(where(is.numeric), round, 3)) |> pivot_longer(cols = everything()) ## # A tibble: 4 × 2 ## name value ## <chr> <dbl> ## 1 media 0.247 ## 2 ee 0.025 ## 3 cuantil_75 0.263 ## 4 cuantil_25 0.23 –> –> Discusión: propiedades de la distribución bootstrap Uasremos la distribución bootstrap principalmente para evaluar la variabilidad de nuestros estimadores (y también otros aspectos como sesgo) estimando la dispersión de la distribución de muestreo. Sin embargo, es importante notar que no la usamos, por ejemplo, para saber dónde está centrada la distribución de muestreo, o para “mejorar” la estimación remuestreando. Ejemplo En este ejemplo, vemos 20 muestras de tamaño 200, y evaluamos cómo se ve la aproximación a la distribución de la población (rojo): Podemos calcular las distribuciones de remuestreo (bootstrap) para cada muestra, y compararlas con la distribución de muestreo real. # paso 1: define el estimador calc_estimador <- function(datos){ media_precio <- datos |> summarise(media = mean(precio_miles), .groups = "drop") |> pull(media) media_precio } # paso 2: define el proceso de remuestreo muestra_boot <- function(datos, n = NULL){ #tomar muestra con reemplazo del mismo tamaño if(is.null(n)){ m <- slice_sample(datos, prop = 1, replace = TRUE)} else { m <- slice_sample(datos, n = n, replace = TRUE) } m } dist_boot <- datos_sim |> filter(tipo == "muestras") |> select(precio_miles, rep) |> group_by(rep) |> nest() |> mutate(precio_miles = map(data, function(data){ tibble(precio_miles = map_dbl(1:1000, ~ calc_estimador(muestra_boot(data)))) })) |> select(rep, precio_miles) |> unnest() dist_muestreo <- datos_sim |> filter(tipo == "población") |> group_by(rep) |> nest() |> mutate(precio_miles = map(data, function(data){ tibble(precio_miles = map_dbl(1:1000, ~ calc_estimador(muestra_boot(data, n = 200)))) })) |> select(rep, precio_miles) |> unnest() Obsérvese que: En algunos casos la aproximación es mejor que en otros (a veces la muestra tiene valores ligeramente más altos o más bajos). La dispersión de cada una de estas distribuciones bootstrap es similar a la de la verdadera distribución de muestreo (en rojo), pero puede está desplazada dependiendo de la muestra original que utilizamos. Adicionalmente, los valores centrales de la distribución de bootstrap tiende cubrir el verdadero valor que buscamos estimar, que es: poblacion_casas |> summarise(media = mean(precio_miles), .groups = "drop") ## # A tibble: 1 × 1 ## media ## <dbl> ## 1 183. Variación en distribuciones bootstrap En el proceso de estimación bootstrap hay dos fuentes de variación pues: La muestra original se selecciona con aleatoriedad de una población. Las muestras bootstrap se seleccionan con aleatoriedad de la muestra original. Esto es: La estimación bootstrap ideal es un resultado asintótico \\(B=\\infty\\), en esta caso \\(\\hat{\\textsf{se}}_B\\) iguala la estimación plug-in \\(se_{P_n}\\). En el proceso de bootstrap podemos controlar la variación del segundo aspecto, conocida como implementación de muestreo Monte Carlo, y la variación Monte Carlo decrece conforme incrementamos el número de muestras. Podemos eliminar la variación Monte Carlo si seleccionamos todas las posibles muestras con reemplazo de tamaño \\(n\\), hay \\({2n-1}\\choose{n}\\) posibles muestras y si seleccionamos todas obtenemos \\(\\hat{\\textsf{se}}_\\infty\\) (bootstrap ideal), sin embargo, en la mayor parte de los problemas no es factible proceder así. En la siguiente gráfica mostramos 6 posibles muestras de tamaño 50 simuladas de la población, para cada una de ellas se graficó la distribución empírica y se se realizan histogramas de la distribución bootstrap con \\(B=30\\) y \\(B=1000\\), en cada caso hacemos dos repeticiones, notemos que cuando el número de muestras bootstrap es grande las distribuciones bootstrap son muy similares (para una muestra de la población dada), esto es porque disminuimos el erro Monte Carlo. También vale la pena recalcar que la distribución bootstrap está centrada en el valor observado en la muestra (línea azúl punteada) y no en el valor poblacional sin embargo la forma de la distribución es similar a lo largo de las filas. Entonces, ¿cuántas muestras bootstrap? Incluso un número chico de replicaciones bootstrap, digamos \\(B=25\\) es informativo, y \\(B=50\\) con frecuencia es suficiente para dar una buena estimación de \\(se_P(\\hat{\\theta})\\) (Efron and Tibshirani (1993)). Cuando se busca estimar error estándar Chihara and Hesterberg (2018) recomienda \\(B=1000\\) muestras, o \\(B=10,000\\) muestras dependiendo la presición que se busque. Error estándar bootstrap e intervalos normales Ahora podemos construir nuestra primera versión de intervalos de confianza basados en la distribución bootstrap. Supongamos que queremos estimar una cantidad poblacional \\(\\theta\\) con una estadística \\(\\hat{\\theta} = t(X_1,\\ldots, X_n)\\), donde \\(X_1,\\ldots, X_n\\) es una muestra independiente e idénticamente distribuida de la población. Suponemos además que la distribución muestral de \\(\\hat{\\theta}\\) es aproximadamente normal (el teorema central del límite aplica), y está centrada en el verdadero valor poblacional \\(\\theta\\). Ahora queremos construir un intervalo que tenga probabilidad 95% de cubrir al valor poblacional \\(\\theta\\). Tenemos que \\[P(-2\\mathsf{ee}(\\hat{\\theta}) < \\hat{\\theta} - \\theta < 2\\mathsf{ee}(\\hat{\\theta})) \\approx 0.95\\] por las propiedades de la distribución normal (\\(P(-2\\sigma < X -\\mu < 2\\sigma)\\approx 0.95\\) si \\(X\\) es normal con media \\(\\mu\\) y desviación estándar \\(\\sigma\\)). Entonces \\[P(\\hat{\\theta} - 2\\mathsf{ee}(\\hat{\\theta}) < \\theta < \\hat{\\theta} + 2\\mathsf{ee}(\\hat{\\theta})) \\approx 0.95\\] Es decir, la probabilidad de que el verdadero valor poblacional \\(\\theta\\) esté en el intervalo \\[[\\hat{\\theta} - 2\\mathsf{ee}(\\hat{\\theta}), \\hat{\\theta} + 2\\mathsf{ee}(\\hat{\\theta})]\\] es cercano a 0.95. En este intervalo no conocemos el error estándar (es la desviación estándar de la distribución de muestreo de \\(\\hat{\\theta}\\)), y aquí es donde entre la distribución bootstrap, que aproxima la distribución de muestreo. Lo estimamos con \\[\\hat{\\mathsf{ee}}_{\\textrm{boot}}(\\hat{\\theta})\\] que es la desviación estándar de la distribución bootsrap. Definición. El error estándar bootstrap \\(\\hat{\\mathsf{ee}}_{\\textrm{boot}}(\\hat{\\theta})\\) se define como la desviación estándar de la distribución bootstrap de \\(\\theta\\). El intervalo de confianza normal bootstrap al 95% está dado por \\[[\\hat{\\theta} - 2\\hat{\\mathsf{ee}}_{\\textrm{boot}}(\\hat{\\theta}), \\hat{\\theta} + 2\\hat{\\mathsf{ee}}_{\\textrm{boot}}(\\hat{\\theta})].\\] Nótese que hay varias cosas qué revisar aquí: que el teorema central del límite aplica y que la distribución de muestreo de nuestro estimador está centrado en el valor verdadero. Esto en algunos casos se puede demostrar usando la teoría, pero más abajo veremos comprobaciones empíricas. Ejemplo: tomadores de té negro Consideremos la estimación que hicimos de el procentaje de tomadores de té que toma té negro: # paso 1: define el estimador calc_estimador <- function(datos){ prop_negro <- datos |> mutate(negro = ifelse(Tea == "black", 1, 0)) |> summarise(prop_negro = mean(negro), n = length(negro)) |> pull(prop_negro) prop_negro } prop_hat <- calc_estimador(te) prop_hat |> round(2) ## [1] 0.25 Podemos graficar su distribución bootstrap —la cual simulamos arriba—. g_hist <- ggplot(prop_negro_tbl, aes(x = prop_negro)) + geom_histogram(bins = 15) g_qq_normal <- ggplot(prop_negro_tbl, aes(sample = prop_negro)) + geom_qq() + geom_qq_line(colour = "red") g_hist + g_qq_normal Y notamos que la distribución bootstrap es aproximadamente normal. Adicionalmente, vemos que el sesgo tiene un valor estimado de: media_boot <- prop_negro_tbl |> pull(prop_negro) |> mean() media_boot - prop_hat ## [1] 0.0004393333 De esta forma, hemos verificado que: La distribución bootstrap es aproximadamente normal (ver gráfica de cuantiles normales); La distribución bootstrap es aproximadamente insesgada. Lo cual nos lleva a construir intervalos de confianza basados en la distribución normal. Estimamos el error estándar con la desviación estándar de la distribución bootstrap ee_boot <- prop_negro_tbl |> pull(prop_negro) |> sd() ee_boot ## [1] 0.02485138 y construimos un intervalo de confianza del 95%: intervalo_95 <- c(prop_hat - 2 * ee_boot, prop_hat + 2 * ee_boot) intervalo_95 |> round(2) ## [1] 0.2 0.3 Este intervalo tiene probabilidad del 95% de capturar al verdadero poblacional. Con alta probabilidad, entonces, el porcentaje de tomadores de té en la población está entre 0.2 y 0.3. Ejemplo: inventario de casas vendidas Ahora consideremos el problema de estimar el total del valor de las casas vendidas en un periodo. Tenemos una muestra de tamaño \\(n=150\\): # muestra original set.seed(121) muestra_casas <- slice_sample(poblacion_casas, n = 150) # paso 1: define el estimador calc_estimador_casas <- function(datos){ N <- nrow(poblacion_casas) n <- nrow(datos) total_muestra <- sum(datos$precio_miles) estimador_total <- (N / n) * total_muestra estimador_total } # paso 2: define el proceso de remuestreo muestra_boot <- function(datos){ #tomar muestra con reemplazo del mismo tamaño slice_sample(datos, prop = 1, replace = TRUE) } # paso 3: remuestrea y calcula el estimador totales_boot <- tibble(total_boot = map_dbl(1:5000, ~ calc_estimador_casas(muestra_boot(muestra_casas)))) # paso 4: examina la distribución bootstrap g_hist <- totales_boot |> ggplot(aes(x = total_boot)) + geom_histogram() g_qq <- totales_boot |> ggplot(aes(sample = total_boot)) + geom_qq() + geom_qq_line(colour = "red") + geom_hline(yintercept = quantile(totales_boot$total_boot, 0.975), colour = "gray") + geom_hline(yintercept = quantile(totales_boot$total_boot, 0.025), colour = "gray") g_hist + g_qq En este caso, distribución de muestreo presenta cierta asimetría, pero la desviación no es grande. En la parte central la aproximación normal es razonable. Procedemos a revisar sesgo total_est <- calc_estimador_casas(muestra_casas) sesgo <- mean(totales_boot$total_boot) - total_est sesgo ## [1] 110.0851 Este número puede parecer grande, pero sí calculamos la desviación relativa con respecto al error estándar vemos que es chico en la escala de la distribución bootstrap: ee_boot <- sd(totales_boot$total_boot) sesgo_relativo <- sesgo / ee_boot sesgo_relativo ## [1] 0.01522088 De forma que procedemos a construir intervalos de confianza como sigue : c(total_est - 2*ee_boot, total_est + 2*ee_boot) ## [1] 203366.6 232296.6 Que está en miles de dólares. En millones de dólares, este intervalo es: intervalo_total <- c(total_est - 2*ee_boot, total_est + 2*ee_boot) / 1000 intervalo_total |> round(1) ## [1] 203.4 232.3 Así que con 95% de confianza el verdadero total del valor de las casas vendidas está entre 203 y 232 millones de dólares. Nota: en este ejemplo mostraremos una alternativa de intervalos de confianza que es más apropiado cuando observamos asimetría. Sin embargo, primero tendremos que hablar de dos conceptos clave con respecto a intervalos de confianza: calibración e interpretación. Calibración de intervalos de confianza ¿Cómo sabemos que nuestros intervalos de confianza del 95% nominal tienen cobertura real de 95%? Es decir, tenemos que checar: El procedimiento para construir intervalos debe dar intervalos tales que el valor poblacional está en el intervalo de confianza para 95% de las muestras. Como solo tenemos una muestra, la calibración depende de argumentos teóricos o estudios de simulación previos. Para nuestro ejemplo de casas tenemos la población, así que podemos checar qué cobertura real tienen los intervalos normales: simular_intervalos <- function(rep, size = 150){ muestra_casas <- slice_sample(poblacion_casas, n = size) N <- nrow(poblacion_casas) n <- nrow(muestra_casas) total_est <- (N / n) * sum(muestra_casas$precio_miles) # paso 1: define el estimador calc_estimador_casas <- function(datos){ total_muestra <- sum(datos$precio_miles) estimador_total <- (N / n) * total_muestra estimador_total } # paso 2: define el proceso de remuestreo muestra_boot <- function(datos){ #tomar muestra con reemplazo del mismo tamaño slice_sample(datos, prop = 1, replace = TRUE) } # paso 3: remuestrea y calcula el estimador totales_boot <- map_dbl(1:2000, ~ calc_estimador_casas(muestra_boot(muestra_casas))) |> tibble(total_boot = .) |> summarise(ee_boot = sd(total_boot)) |> mutate(inf = total_est - 2*ee_boot, sup = total_est + 2*ee_boot) |> mutate(rep = rep) totales_boot } # Para recrear, correr: # sims_intervalos <- map(1:100, ~ simular_intervalos(rep = .x)) # write_rds(sims_intervalos, "cache/sims_intervalos.rds") # Para usar resultados en cache: sims_intervalos <- read_rds("cache/sims_intervalos.rds") total <- sum(poblacion_casas$precio_miles) sims_tbl <- sims_intervalos |> bind_rows() |> mutate(cubre = inf < total & total < sup) ggplot(sims_tbl, aes(x = rep)) + geom_hline(yintercept = total, colour = "red") + geom_linerange(aes(ymin = inf, ymax = sup, colour = cubre)) La cobertura para estos 100 intervalos simulados da total <- sum(poblacion_casas$precio_miles) sims_tbl |> summarise(cobertura = mean(cubre)) ## # A tibble: 1 × 1 ## cobertura ## <dbl> ## 1 0.96 que es consistente con una cobertura real del 95% (¿qué significa “consistente”? ¿Cómo puedes checarlo con el bootstrap?) Observación. En este caso teníamos la población real, y pudimos verificar la cobertura de nuestros intervalos. En general no la tenemos. Estos ejercicios de simulación se pueden hacer con poblaciones sintéticas que se generen con las características que creemos va a tener nuestra población (por ejemplo, sesgo, colas largas, etc.). En general, no importa qué tipo de estimadores o intervalos de confianza usemos, requerimos checar la calibración. Esto puede hacerse con ejercicios de simulación con poblaciones sintéticas y tanto los procedimientos de muestreo como los tamaños de muestra que nos interesa usar. Verificar la cobertura de nuestros intervalos de confianza por medio simulación está bien estudiado para algunos casos. Por ejemplo, cuando trabajamos con estimaciones para poblaciones teóricas. En general sabemos que los procedimientos funcionan bien en casos: con distribuciones simétricas que tengan colas no muy largas; estimación de proporciones donde no tratamos con casos raros o casos seguros (probabilidades cercanas a 0 o 1). Interpretación de intervalos de confianza Como hemos visto, “intervalo de confianza” (de 90% de confianza, por ejemplo) es un término frecuentista, que significa: Cada muestra produce un intervalo distinto. Para el 90% de las muestras posibles, el intervalo cubre al valor poblacional. La afirmación es sobre el intervalo y el mecanismo para construirlo. Así que con alta probabilidad, el intervalo contiene el valor poblacional. Intervalos más anchos nos dan más incertidumbre acerca de dónde está el verdadero valor poblacional (y al revés para intervalos más angostos). Existen también “intervalos de credibilidad” (de 90% de probabilidad, por ejemplo), que se interpetan de forma bayesiana: Con 90% de probabilidad (relativamente alta), creemos que el valor poblacional está dentro del intervalo de credibilidad. Esta última interpretación es más natural. Obsérvese que para hablar de intervalos de confianza frecuentista tenemos que decir: Este intervalo particular cubre o no al verdadero valor, pero nuestro procedimiento produce intervalos que contiene el verdadero valor para el 90% de las muestras. Esta es una interpretación relativamente débil, y muchos intervalos poco útiles pueden satisfacerla. La interpretación bayesiana es más natural porque expresa más claramente incertidumbre acerca del valor poblacional. Por otro lado, La interpretación frecuentista nos da maneras empíricas de probar si los intervalos de confianza están bien calibrados o no: es un mínimo que “intervalos del 90%” deberían satisfacer. Así que tomamos el punto de vista bayesiano en la intepretación, pero buscamos que nuestros intervalos cumplan o aproximen bien garantías frecuentistas (discutimos esto más adelante). Los intervalos que producimos en esta sección pueden interpretarse de las dos maneras. Sesgo Notemos que hemos revisado el sesgo en varias ocasiones, esto es porque algunos estimadores comunes (por ejemplo, cociente de dos cantidades aleatorias) pueden sufrir de sesgo grande, especialmente en el caso de muestras chicas. Esto a su vez afecta la cobertura, pues es posible que nuestros intervalos no tengan “cobertura simétrica”, por ejemplo. Para muchos estimadores, y muestras no muy chicas, esté sesgo tiende a ser poco importante y no es necesario hacer correcciones. Si el tamaño del sesgo es grande comparado con la dispersión de la distribución bootstrap generalmente consideramos que bajo el diseño actual el estimador que estamos usando no es apropiado, y podemos proponer otro estimador u otro procedimiento para construir intervalos (ver Efron and Tibshirani (1993) intervalos BC_{a}), Efron and Tibshirani (1993) sugieren más de 20% de la desviación estándar, mientras que en Chihara and Hesterberg (2018) se sugiere 2% de la desviación estándar. Dependiendo que tan crítico es que los intervalos estén bien calibrados podemos evaluar nuestro problema particular. Intervalos bootstrap de percentiles Retomemos nuestro ejemplo del valor total del precio de las casas. A través de remuestras bootstrap hemos verificado gráficamente que la distribución de remuestreo es ligeramente asimétrica (ver la figura de abajo). Anteriormente hemos calculado intervalos de confianza basados en supuestos normales por medio del error éstandar. Este intervalo está dado por ## [1] 203.4 232.3 y por construcción sabemos que es simétrico con respecto al valor estimado, pero como podemos ver la distribución de muestreo no es simétrica, lo cual podemos confirmar por ejemplo calculando el porcentaje de muestras bootstrap que caen por arriba y por debajo del intervalo construido: ## # A tibble: 1 × 2 ## prop_inf prop_sup ## <dbl> <dbl> ## 1 0.0192 0.026 los cuales se han calculado como el porcentaje de medias bootstrap por debajo (arriba) de la cota inferior (superior), y vemos que no coinciden con el nivel de confianza prestablecido (2.5% para cada extremo). Otra opción común que se usa específicamente cuando la distribución bootstrap no es muy cercana a la normal son los intervalos de percentiles bootstrap: Definición. El intervalo de percentiles bootstrap al 95% de confianza está dado por \\[[q_{0.025}, q_{0.975}]\\] donde \\(q_f\\) es el percentil \\(f\\) de la distribución bootstrap. Otros intervalos comunes son el de 80% o 90% de confianza, por ejemplo, que corresponden a \\([q_{0.10}, q_{0.90}]\\) y \\([q_{0.05}, q_{0.95}]\\). Ojo: intervalos de confianza muy alta (por ejemplo 99.5%) pueden tener mala calibración o ser muy variables en su longitud pues dependen del comportamiento en las colas de la distribución. Para el ejemplo de las casas, calcularíamos simplemente intervalo_95 <- totales_boot |> pull(total_boot) |> quantile(probs = c(0.025, 0.975)) / 1000 (intervalo_95) |> round(1) ## 2.5% 97.5% ## 204.3 232.5 que está en millones de dólares. Nótese que es similar al intervalo de error estándar. Otro punto interesante sobre los intervalos bootstrap de percentiles es que lidian naturalmente con la asímetría de la distribución bootstrap. Ilustramos esto con la distancia de las extremos del intervalo con respecto a la media: abs(intervalo_95 - total_est/1000) ## 2.5% 97.5% ## 13.53912 14.64674 Los intervalos de confianza nos permiten presentar un rango de valores posibles para el parámetro de interés. Esto es una notable diferencia con respecto a presentar sólo un candidato como estimador. Nuestra fuente de información son los datos. Es por esto que si vemos valores muy chicos (grandes) en nuestra muestra, el intervalo se tiene que extender a la izquierda (derecha) para compensar dichas observaciones. Explica por qué cuando la aproximación normal es apropiada, el intervalo de percentiles al 95% es muy similar al intervalo normal de 2 errores estándar. Ejemplo Consideramos los datos de propinas. Queremos estimar la media de cuentas totales para la comida y la cena. Podemos hacer bootstrap de cada grupo por separado: # en este ejemplo usamos rsample, pero puedes # escribir tu propio código library(rsample) propinas <- read_csv("data/propinas.csv") estimador <- function(split, ...){ muestra <- analysis(split) |> group_by(momento) muestra |> summarise(estimate = mean(cuenta_total), .groups = 'drop') |> mutate(term = momento) } intervalo_propinas_90 <- bootstraps(propinas, strata = momento, 1000) |> mutate(res_boot = map(splits, estimador)) |> int_pctl(res_boot, alpha = 0.10) |> mutate(across(where(is.numeric), round, 2)) intervalo_propinas_90 ## # A tibble: 2 × 6 ## term .lower .estimate .upper .alpha .method ## <chr> <dbl> <dbl> <dbl> <dbl> <chr> ## 1 Cena 19.8 20.8 22.0 0.1 percentile ## 2 Comida 15.6 17.1 18.8 0.1 percentile Nota: .estimate es la media de los valores de la estadística sobre las remuestras, no es el estimador original. De la tabla anterior inferimos que la media en la cuenta en la cena es más grande que la de la comida. Podemos graficar agregando los estimadores plugin: estimadores <- propinas |> group_by(momento) |> rename(term = momento) |> summarise(media = mean(cuenta_total)) ggplot(intervalo_propinas_90, aes(x = term)) + geom_linerange(aes(ymin = .lower, ymax = .upper)) + geom_point(data = estimadores, aes(y = media), colour = "red", size = 3) + xlab("Momento") + ylab("Media de cuenta total (dólares)") + labs(subtitle = "Intervalos de 90% para la media") Nótese que el bootstrap lo hicimos por separado en cada momento del día (por eso el argumento strata en la llamada a bootstraps): Justifica el procedimiento de hacer el bootstrap separado para cada grupo. ¿Qué supuestos acerca del muestreo se deben satisfacer? ¿Deben ser muestras aleatorias simples de cada momento del día, por ejemplo? ¿Qué harías si no fuera así, por ejemplo, si se escogieron al azar tickets de todos los disponibles en un periodo? Bootstrap para dos muestras En el ejemplo anterior consideramos cómo hacer bootstrap cuando tenemos muestras independientes. También podemos aplicarlo a estimadores que comparen directamente las dos muestras: Bootstrap para comparar poblaciones. Dadas muestras independientes de tamaños \\(m\\) y \\(n\\) de dos poblaciones: Extraer una remuestra de tamaño \\(m\\) con reemplazo de la primera muestra y una remuestra separada de tamaño \\(n\\) de la segunda muestra. Calcula la estadística que compara los dos grupos (por ejemplo, diferencia de medias) Repetir este proceso muchas veces (por ejemplo, 1000 - 10000). Construir la distribución bootstrap de la estadística. Examinar dispersión, sesgo y forma. Ejemplo Supongamos que queremos comparar directamente la media de la cuenta total en comida y cena. Podemos hacer: estimador_dif <- function(split, ...){ muestra <- analysis(split) |> group_by(momento) muestra |> summarise(estimate = mean(cuenta_total), .groups = "drop") |> pivot_wider(names_from = momento, values_from = estimate) |> mutate(estimate = Cena - Comida, term = "diferencia") } dist_boot <- bootstraps(propinas, strata = momento, 2000) |> mutate(res_boot = map(splits, estimador_dif)) g_1 <- ggplot(dist_boot |> unnest(res_boot), aes(x = estimate)) + geom_histogram(bins = 20) + xlab("Diferencia Comida vs Cena") g_2 <- ggplot(dist_boot |> unnest(res_boot), aes(sample = estimate)) + geom_qq() + geom_qq_line(colour = 'red') g_1 + g_2 Y podemos calcular un intervalo de confianza para la diferencia de medias: dist_boot |> int_pctl(res_boot, alpha = 0.01) |> mutate(across(where(is.numeric), round, 2)) |> select(term, .lower, .upper) ## # A tibble: 1 × 3 ## term .lower .upper ## <chr> <dbl> <dbl> ## 1 diferencia 0.73 6.54 Que nos indica que con alta probabilidad las cuentas son más altas que en la cena que en la comida. La diferencia puede ir de un poco menos de un dólar hasta seis dólares con 99% de confianza. Datos pareados En otros casos, las muestras no son independientes y están pareadas. Por ejemplo, este es un estudio dende a 10 personas una noche se les dio una medicina para dormir y otra noche otra medicina. Se registraron cuántas horas de sueño extra comparados con un día donde no tomaron medicina. dormir <- sleep |> pivot_wider(names_from = group, names_prefix = "medicina_", values_from = extra) dormir ## # A tibble: 10 × 3 ## ID medicina_1 medicina_2 ## <fct> <dbl> <dbl> ## 1 1 0.7 1.9 ## 2 2 -1.6 0.8 ## 3 3 -0.2 1.1 ## 4 4 -1.2 0.1 ## 5 5 -0.1 -0.1 ## 6 6 3.4 4.4 ## 7 7 3.7 5.5 ## 8 8 0.8 1.6 ## 9 9 0 4.6 ## 10 10 2 3.4 En este caso, el bootstrap se hace sobre individuos, y quisiéramos comparar la medición de la medicina_1 con la medicina_2. Usaremos la media de al diferencia entre horas de sueño entre las dos medicinas. Nuestro estimador puntual es: estimador_dif <- dormir |> mutate(dif_2_menos_1 = medicina_2 - medicina_1) |> summarise(dif_media = mean(dif_2_menos_1)) estimador_dif ## # A tibble: 1 × 1 ## dif_media ## <dbl> ## 1 1.58 Esto indica que en promedio duermen hora y media más con la medicina 2 que con la medicina 1. Como hay variabilildad considerable en el número de horas extra de cada medicina dependiendo del individuo, es necesario hacer una intervalo de confianza para descartar que esta diferencia haya aparecido por azar debido a la variación muestral. Nótese que aquí no tenemos estratos, pues solo hay una muestra de individuo con dos mediciones. estimador_dif <- function(split, ...){ muestra <- analysis(split) muestra |> mutate(dif_2_menos_1 = medicina_2 - medicina_1) |> summarise(estimate = mean(dif_2_menos_1), .groups = "drop") |> mutate(term = "diferencia 2 vs 1") } dist_boot <- bootstraps(dormir, 2000) |> mutate(res_boot = map(splits, estimador_dif)) g_1 <- ggplot(dist_boot |> unnest(res_boot), aes(x = estimate)) + geom_histogram(bins = 20) g_2 <- ggplot(dist_boot |> unnest(res_boot), aes(sample = estimate)) + geom_qq() + geom_qq_line(colour = 'red') g_1 + g_2 Nuestro intervalo de percentiles al 90% es de dist_boot |> int_pctl(res_boot, 0.10) ## # A tibble: 1 × 6 ## term .lower .estimate .upper .alpha .method ## <chr> <dbl> <dbl> <dbl> <dbl> <chr> ## 1 diferencia 2 vs 1 1.04 1.57 2.22 0.1 percentile Lo que indica con alta probabilidad que la medicina 2 da entre 1 y 2 horas extras de sueño. Nota que en este ejemplo también podríamos hacer una prueba de hipótesis por permutaciones, suponiendo como hipótesis nula que las dos medicinas son equivalentes. Sin embargo, usualmente es más informativo presentar este tipo de intervalos para estimar la diferencia. Bootstrap y otras estadísticas El bootstrap es una técnica versátil. Un ejemplo son estimadores de razón, que tienen la forma \\[ \\hat{r} = \\frac{\\overline y}{\\overline x}\\] Por ejemplo, ¿cómo haríamos estimación para el procentaje de área area habitable de las casas en relación al tamaño del lote? Una manera de estimar esta cantidad es dividiendo la suma del área habitable de nuestra muestra y dividirlo entre la suma del área de los lotes de nuestra muestra, como en la fórmula anterior. Esta fórmula es más difícil pues tanto numerador como denominador tienen variabilidad, y estas dos cantidades no varían independientemente. Con el bootstrap podemos atacar estos problemas Ejemplo: estimadores de razón Nuestra muestra original es: set.seed(250) casas_muestra <- slice_sample(poblacion_casas, n = 200) El estimador de interés es: estimador_razon <- function(split, ...){ muestra <- analysis(split) muestra |> summarise(estimate = sum(area_habitable_sup_m2) / sum(area_lote_m2), .groups = "drop") |> mutate(term = "% area del lote construida") } Y nuestra estimación puntual es estimacion <- muestra_casas |> summarise(estimate = sum(area_habitable_sup_m2) / sum(area_lote_m2)) estimacion ## # A tibble: 1 × 1 ## estimate ## <dbl> ## 1 0.148 Es decir que en promedio, un poco más de 15% del lote total es ocupado por área habitable. Ahora hacemos bootstrap para construir un intervalo: dist_boot <- bootstraps(casas_muestra, 2000) |> mutate(res_boot = map(splits, estimador_razon)) g_1 <- ggplot(dist_boot |> unnest(res_boot), aes(x = estimate)) + geom_histogram(bins = 20) g_2 <- ggplot(dist_boot |> unnest(res_boot), aes(sample = estimate)) + geom_qq() + geom_qq_line(colour = 'red') g_1 + g_2 En este caso la cola derecha parece tener menos dispersión que una distribución normal. Usamos un intervalo de percentiles para obtener: dist_boot |> int_pctl(res_boot) |> mutate(estimador = estimacion$estimate) |> rename(media_boot = .estimate) |> mutate(bias = media_boot - estimador) |> pivot_longer(is_double) |> mutate(value = round(value, 3)) ## # A tibble: 6 × 4 ## term .method name value ## <chr> <chr> <chr> <dbl> ## 1 % area del lote construida percentile .lower 0.121 ## 2 % area del lote construida percentile media_boot 0.142 ## 3 % area del lote construida percentile .upper 0.159 ## 4 % area del lote construida percentile .alpha 0.05 ## 5 % area del lote construida percentile estimador 0.148 ## 6 % area del lote construida percentile bias -0.006 De modo que en esta zona, entre 12% y 16% de toda el área disponible es ocupada por área habitable: estas son casas que tienen jardines o terrenos, garage relativamente grandes. Ejemplo: suavizadores Podemos usar el bootstrap para juzgar la variabilidad de un suavizador, que consideramos como nuestra estadística: graf_casas <- function(data){ ggplot(data |> filter(calidad_gral < 7), aes(x = area_habitable_sup_m2)) + geom_point(aes(y = precio_m2_miles), alpha = 0.75) + geom_smooth(aes(y = precio_m2_miles), method = "loess", span = 0.7, se = FALSE, method.args = list(degree = 1, family = "symmetric")) } graf_casas(casas_muestra) Podemos hacer bootstrap para juzgar la estabilidad del suavizador: suaviza_boot <- function(x, data){ # remuestreo muestra_boot <- slice_sample(data, prop = 1, replace = T) ajuste <- loess(precio_m2_miles ~ area_habitable_sup_m2, data = muestra_boot, degree = 1, span = 0.7, family = "symmetric") datos_grafica <- tibble(area_habitable_sup_m2 = seq(25, 250, 5)) ajustados <- predict(ajuste, newdata = datos_grafica) datos_grafica |> mutate(ajustados = ajustados) |> mutate(rep = x) } reps <- map(1:10, ~ suaviza_boot(.x, casas_muestra |> filter(calidad_gral < 7))) |> bind_rows() # ojo: la rutina loess no tienen soporte para extrapolación graf_casas(casas_muestra) + geom_line(data = reps, aes(y = ajustados, group = rep), alpha = 1, colour = "red") Donde vemos que algunas cambios de pendiente del suavizador original no son muy interpretables (por ejemplo, para áreas chicas) y alta variabilidad en general en los extremos. Podemos hacer más iteraciones para calcular bandas de confianza: reps <- map(1:200, ~ suaviza_boot(.x, casas_muestra |> filter(calidad_gral < 7))) |> bind_rows() # ojo: la rutina loess no tienen soporte para extrapolación graf_casas(casas_muestra) + geom_line(data = reps, aes(y = ajustados, group = rep), alpha = 0.2, colour = "red") Donde observamos cómo tenemos incertidumbre en cuanto al nivel y forma de las curvas en los extremos de los datos (casas grandes y chicas), lo cual es natural. Aunque podemos resumir para hacer bandas de confianza, mostrar remuestras de esta manera es informativo: por ejempo: vemos cómo es probable también que para casas de menos de 70 metros cuadrados el precio por metro cuadrado no cambia tanto (líneas constantes) Bootstrap y estimadores complejos: tablas de perfiles Podemos regresar al ejemplo de la primera sesión donde calculamos perfiles de los tomadores de distintos tés: en bolsa, suelto, o combinados. Caundo hacemos estos tipos de análisis no es raro que los prefiles tengan variabilidad considerable que es necesario cuantificar. price tea bag tea bag+unpackaged unpackaged promedio p_upscale -0.71 -0.28 0.98 28 p_variable -0.12 0.44 -0.31 36 p_cheap 0.3 -0.53 0.23 2 p_branded 0.62 -0.16 -0.45 25 p_private label 0.72 -0.22 -0.49 5 p_unknown 1.58 -0.58 -1 3 Hacemos bootstrap sobre toda la muestra, y repetimos exactamente el mismo proceso de construción de perfiles: boot_perfiles <- map(1:1000, function(x){ te_boot <- te |> slice_sample(prop = 1, replace = TRUE) calcular_perfiles(te_boot) |> mutate(rep = x) }) |> bind_rows() Ahora resumimos y graficamos, esta vez de manera distinta: resumen_perfiles <- boot_perfiles |> group_by(how, price) |> summarise(perfil_media = mean(perfil), ymax = quantile(perfil, 0.9), ymin = quantile(perfil, 0.10)) resumen_bolsa <- resumen_perfiles |> ungroup() |> filter(how == "tea bag") |> select(price, perfil_bolsa = perfil_media) resumen_perfiles <- resumen_perfiles |> left_join(resumen_bolsa) |> ungroup() |> mutate(price = fct_reorder(price, perfil_bolsa)) ggplot(resumen_perfiles, aes(x = price, y = perfil_media, ymax = ymax, ymin = ymin)) + geom_point(colour = "red") + geom_linerange() + facet_wrap(~how) + coord_flip() + geom_hline(yintercept = 0, colour = "gray") + ylab("Perfil") + xlab("Precio") Nótese una deficiencia clara del bootstrap: para los que compran té suelto, en la muestra no existen personas que desconocen de dónde provienen su té (No sabe/No contestó). Esto produce un intervalo colapsado en 0 que no es razonable. Podemos remediar esto de varias maneras: quitando del análisis los que no sabe o no contestaron, agrupando en otra categoría, usando un modelo, o regularizar usando proporciones calculadas con conteos modificados: por ejemplo, agregando un caso de cada combinación (agregaría 18 personas “falsas” a una muestra de 290 personas). Bootstrap y muestras complejas La necesidad de estimaciones confiables junto con el uso eficiente de recursos conllevan a diseños de muestras complejas. Estos diseños típicamente usan las siguientes técnicas: muestreo sin reemplazo de una población finita, muestreo sistemático, estratificación, conglomerados, ajustes a no-respuesta, postestratificación. Como consecuencia, los valores de la muestra suelen no ser independientes y los análisis de los mismos dependerá del diseño de la muestra. Comenzaremos con definiciones para entender el problema. set.seed(3872999) n_escuelas <- 5000 tipo <- sample(c("rural", "urbano", "indigena"), n_escuelas, replace = TRUE, prob = c(0.3, 0.5, 0.2)) escuela <- tibble(ind_escuela = 1:n_escuelas, tipo, media_tipo = case_when(tipo == "urbano" ~ 550, tipo == "rural" ~ 400, TRUE ~ 350), media_escuela = rnorm(n_escuelas, media_tipo, 30), n_estudiantes = round(rnorm(n_escuelas, 30, 4))) estudiantes <- uncount(escuela, n_estudiantes, .id = "id_estudiante") %>% rowwise() %>% mutate(calif = rnorm(1, media_escuela, 70)) %>% ungroup() Imaginemos que tenemos una población de 5000 escuelas, y queremos estimar la media de las calificaciones de los estudiantes en una prueba. head(estudiantes) ## # A tibble: 6 × 6 ## ind_escuela tipo media_tipo media_escuela id_estudiante calif ## <int> <chr> <dbl> <dbl> <int> <dbl> ## 1 1 urbano 550 561. 1 488. ## 2 1 urbano 550 561. 2 574. ## 3 1 urbano 550 561. 3 456. ## 4 1 urbano 550 561. 4 507. ## 5 1 urbano 550 561. 5 598. ## 6 1 urbano 550 561. 6 527. La primera idea sería tomar una muestra aleatoria (MAS, muestreo aleatorio simple), donde todos los estudiantes tienen igual probabilidad de ser seleccionados. Con estas condiciones el presupuesto alcanza para seleccionar a 60 estudiantes, hacemos esto y calculamos la media. muestra <- slice_sample(estudiantes, n = 60) round(mean(muestra$calif), 2) ## [1] 466.73 Este número es muy cercano a la media verdadera de la población: 466.51, pero esta es una de muchas posibles muestras. medias_mas <- rerun(1000, mean(sample(estudiantes$calif, 60))) %>% flatten_dbl() sd(medias_mas) ## [1] 14.75242 hist_mas <- ggplot(tibble(medias_mas), aes(x = medias_mas)) + geom_histogram(binwidth = 10) + geom_vline(xintercept = mean(estudiantes$calif), color = "red") + xlim(410, 520) qq_mas <- ggplot(tibble(medias_mas), aes(sample = medias_mas)) + geom_qq(distribution = stats::qunif) + ylim(410, 520) hist_mas + qq_mas Algunas de las muestras generan valores alejados de la verdadera media, para minimizar la probabilidad de seleccionar muestras que lleven a estimaciones alejadas del verdadero valor poblacional podríamos tomar muestras más grandes. Pero usualmente los costos limitan el tamaño de muestra. Una alternativa es estratificar, supongamos que sabemos el tipo de cada escuela (urbana, rural o indígena) y sabemos también que la calificación de los estudiantes de escuelas urbanas tiende a ser distinta a las calificaciones que los estudiantes de escuelas rurales o indígenas. En esta caso un diseño más eficiente consiste en tomar muestras independientes dentro de cada estrato. muestra_estrat <- estudiantes %>% group_by(tipo) %>% sample_frac(0.0004) dim(muestra_estrat) ## [1] 60 6 muestrea_estrat <- function(){ muestra <- estudiantes %>% group_by(tipo) %>% sample_frac(0.0004) mean(muestra$calif) } medias_estrat <- rerun(1000, muestrea_estrat()) %>% flatten_dbl() Notamos que la distribución muestral está más concentrada que el caso de MAS, el error estándar se reduce de 14.75 a 10.2 hist_estrat <- ggplot(tibble(medias_estrat), aes(x = medias_estrat)) + geom_histogram(binwidth = 6) + geom_vline(xintercept = mean(estudiantes$calif), color = "red") + xlim(410, 520) qq_estrat <- ggplot(tibble(medias_estrat), aes(sample = medias_estrat)) + geom_qq(distribution = stats::qunif) + ylim(410, 520) hist_estrat + qq_estrat Entonces, la estratificación nos sirve para reducir el error estándar de las estimaciones. Otro procedimiento común en muestreo es introducir conglomerados, a diferencia del muestreo estratificado, el propósito principal de los conglomerados es reducir costos. Veamos cuantas escuelas tendría que visitar en una muestra dada (con diseño estratificado). n_distinct(muestra_estrat$ind_escuela) ## [1] 60 Es fácil ver que visitar una escuela para aplicar solo uno o dos exámenes no es muy eficiente en cuestión de costos. Es por ello que se suelen tomar muestras considerando conglomerados naturales, en este caso la escuela. En nuestro ejemplo es razonable suponer que una parte grande del costo del muestreo sea mandar al examinador a la escuela, y que una vez en la escuela el costo de evaluar a todo sexto, en lugar de a un único alumno, es relativamente bajo. Podemos imaginar que considerando estos costos por visita de escuela nos alcance para visitar 40 escuelas y en cada una examinar a todos los estudiantes. muestra_escuelas <- escuela %>% group_by(tipo) %>% sample_frac(size = 0.008) muestra_cgl <- muestra_escuelas %>% left_join(estudiantes) mean(muestra_cgl$calif) ## [1] 462.5677 muestrea_cgl <- function(){ muestra_escuelas <- escuela %>% group_by(tipo) %>% sample_frac(size = 0.008) muestra_cgl <- muestra_escuelas %>% left_join(estudiantes, by = c("ind_escuela", "tipo")) mean(muestra_cgl$calif) } medias_cgl <- rerun(1000, muestrea_cgl()) %>% flatten_dbl() En este caso, el número de estudiantes examinados es mucho mayor que en MAS y muestreo estratificado, notemos que el número de estudiantes evaluados cambiará de muestra a muestra dependiendo del número de alumnos en las escuelas seleccionadas. sd(medias_cgl) ## [1] 5.337327 hist_cgl <- ggplot(tibble(medias_cgl), aes(x = medias_cgl)) + geom_histogram(binwidth = 6) + geom_vline(xintercept = mean(estudiantes$calif), color = "red") + xlim(410, 520) qq_cgl <- ggplot(tibble(medias_cgl), aes(sample = medias_cgl)) + geom_qq(distribution = stats::qunif) + ylim(410, 520) hist_cgl + qq_cgl Ejemplo: ENIGH La complejidad de los diseños de encuestas conlleva a que el cálculo de errores estándar sea muy complicado, para atacar este problema hay dos técnicas básicas: 1) un enfoque analítico usando linearización, 2) métodos de remuestreo como bootstrap. El incremento en el poder de cómputo ha favorecido los métodos de remuestreo pues la linearización requiere del desarrollo de una fórmula para cada estimación y supuestos adicionales para simplificar. En 1988 Rao and Wu (1988) propusieron un método de bootstrap para diseños estratificados multietápicos con reemplazo de UPMs (Unidades Primarias de Muestreo) que describimos a continuación. ENIGH. Usaremos como ejemplo la Encuesta Nacional de Ingresos y Gastos de los Hogares, ENIGH 2018 (INEGI 2018), esta encuesta usa un diseño de conglomerados estratificado. Antes de proceder a bootstrap debemos entender como se seleccionaron los datos, esto es, el diseño de la muestra: Unidad primaria de muestreo (UPM). Las UPMs están constituidas por agrupaciones de viviendas. Se les denomina unidades primarias pues corresponden a la primera etapa de selección, las unidades secundarias (USMs) serían los hogares. Estratificación. Los estratos se construyen en base a estado, ámbito (urbano, complemento urbano, rural), características sociodemográficas de los habitantes de las viviendas, características físicas y equipamiento. El proceso de estratificación resulta en 888 subestratos en todo el ámbito nacional. La selección de la muestra es independiente para cada estrato, y una vez que se obtiene la muestra se calculan los factores de expansión que reflejan las distintas probabilidades de selección. Después se llevan a cabo ajustes por no respuesta y por proyección (calibración), esta última busca que distintos dominios de la muestra coincidan con la proyección de población de INEGI. concentrado_hogar <- read_csv(here::here("data", "conjunto_de_datos_enigh_2018_ns_csv", "conjunto_de_datos_concentradohogar_enigh_2018_ns", "conjunto_de_datos", "conjunto_de_datos_concentradohogar_enigh_2018_ns.csv")) # seleccionar variable de ingreso corriente hogar <- concentrado_hogar %>% mutate( upm = as.integer(upm), edo = str_sub(ubica_geo, 1, 2) ) %>% select(folioviv, foliohog, est_dis, upm, factor, ing_cor, edad_jefe, edo) %>% group_by(est_dis) %>% mutate(n = n_distinct(upm)) %>% # número de upms por estrato ungroup() hogar ## # A tibble: 74,647 × 9 ## folioviv foliohog est_dis upm factor ing_cor edad_jefe edo n ## <dbl> <dbl> <dbl> <int> <dbl> <dbl> <dbl> <chr> <int> ## 1 100013601 1 2 1 175 76404. 74 10 106 ## 2 100013602 1 2 1 175 42988. 48 10 106 ## 3 100013603 1 2 1 175 580698. 39 10 106 ## 4 100013604 1 2 1 175 46253. 70 10 106 ## 5 100013606 1 2 1 175 53837. 51 10 106 ## 6 100026701 1 2 2 189 237743. 41 10 106 ## 7 100026703 1 2 2 189 32607. 57 10 106 ## 8 100026704 1 2 2 189 169918. 53 10 106 ## 9 100026706 1 2 2 189 17311. 30 10 106 ## 10 100027201 1 2 3 186 120488. 69 10 106 ## # ℹ 74,637 more rows Para el cálculo de estadísticos debemos usar los factores de expansión, por ejemplo el ingreso trimestral total sería: sum(hogar$factor * hogar$ing_cor / 1000) ## [1] 1723700566 y ingreso trimestral medio (miles pesos) sum(hogar$factor * hogar$ing_cor / 1000) / sum(hogar$factor) ## [1] 49.61029 La estimación del error estándar, por otro lado, no es sencilla y requiere usar aproximaciones, en la metodología de INEGI proponen una aproximación con series de Taylor. Figure 5.3: Extracto de estimación de errores de muestreo, ENIGH 2018. Veamos ahora como calcular el error estándar siguiendo el bootstrap de Rao y Wu: En cada estrato se seleccionan con reemplazo \\(m_h\\) UPMs de las \\(n_h\\) de la muestra original. Denotamos por \\(m_{hi}^*\\) el número de veces que se seleccionó la UPM \\(i\\) en el estrato \\(h\\) (de tal manera que \\(\\sum m_{hi}^*=m_h\\)). Creamos una replicación del ponderador correspondiente a la \\(k\\)-ésima unidad (USM) como: \\[d_k^*=d_k \\bigg[\\bigg(1-\\sqrt{\\frac{m_h}{n_h - 1}}\\bigg) + \\bigg(\\sqrt{\\frac{m_h}{n_h - 1}}\\frac{n_h}{m_h}m_{h}^*\\bigg)\\bigg]\\] donde \\(d_k\\) es el inverso de la probabilidad de selección. Si \\(m_h <(n_h -1)\\) todos los pesos definidos de esta manera serán no negativos. Calculamos el peso final \\(w_k^*\\) aplicando a \\(d_k^*\\) los mismos ajustes que se hicieron a los ponderadores originales. Calculamos el estadístico de interés \\(\\hat{\\theta}\\) usando los ponderadores \\(w_k^*\\) en lugar de los originales \\(w_k\\). Repetimos los pasos 1 y 2 \\(B\\) veces para obtener \\(\\hat{\\theta}^{*1},\\hat{\\theta}^{*2},...,\\hat{\\theta}^{*B}\\). Calculamos el error estándar como: \\[\\hat{\\textsf{se}}_B = \\bigg\\{\\frac{\\sum_{b=1}^B[\\hat{\\theta}^*(b)-\\hat{\\theta}^*(\\cdot)]^2 }{B}\\bigg\\}^{1/2}\\] En principio podemos elegir cualquier valor de \\(m_h \\geq 1\\), el más común es elegir \\(m_h=n_h-1\\), en este caso: \\[d_k^*=d_k \\frac{n_h}{n_h-1}m_{hi}^*\\] en este escenario las unidades que no se incluyen en la muestra tienen un valor de cero como ponderador. Si elegimos \\(n_h \\ne n_h-1\\) las unidades que no están en la muestra tienen ponderador distinto a cero, si \\(m_h=n_h\\) el ponderador podría tomar valores negativos. Implementemos el bootstrap de Rao y Wu a la ENIGH, usaremos \\(m_h=n_h-1\\) # creamos una tabla con los estratos y upms est_upm <- hogar %>% distinct(est_dis, upm, n) %>% arrange(est_dis, upm) hogar_factor <- est_upm %>% group_by(est_dis) %>% # dentro de cada estrato tomamos muestra (n_h-1) sample_n(size = first(n) - 1, replace = TRUE) %>% add_count(est_dis, upm, name = "m_hi") %>% # calculamos m_hi* left_join(hogar, by = c("est_dis", "upm", "n")) |> mutate(factor_b = factor * m_hi * n / (n - 1)) # unimos los pasos anteriores en una función para replicar en cada muestra bootstrap svy_boot <- function(est_upm, hogar){ m_hi <- est_upm %>% group_split(est_dis) %>% map(~sample(.$upm, size = first(.$n) - 1, replace = TRUE)) %>% flatten_int() %>% plyr::count() %>% select(upm = x, m_h = freq) m_hi %>% left_join(hogar, by = c("upm")) %>% mutate(factor_b = factor * m_h * n / (n - 1)) } set.seed(1038984) boot_rep <- rerun(500, svy_boot(est_upm, hogar)) # Aplicación a ingreso medio wtd_mean <- function(w, x, na.rm = FALSE) { sum(w * x, na.rm = na.rm) / sum(w, na.rm = na.rm) } # La media es: hogar %>% summarise(media = wtd_mean(factor, ing_cor)) ## # A tibble: 1 × 1 ## media ## <dbl> ## 1 49610. Y el error estándar: map_dbl(boot_rep, ~wtd_mean(w = .$factor_b, x = .$ing_cor)) %>% quantile(c(0.025, 0.975)) ## 2.5% 97.5% ## 48742.12 50519.02 El método bootstrap está implementado en el paquete survey y más recientemente en srvyr que es una versión tidy que utiliza las funciones en survey. Podemos comparar nuestros resultados con la implementación en survey. # 1. Definimos el diseño de la encuesta library(survey) library(srvyr) enigh_design <- hogar %>% as_survey_design(ids = upm, weights = factor, strata = est_dis) # 2. Elegimos bootstrap como el método para el cálculo de errores estándar set.seed(7398731) enigh_boot <- enigh_design %>% as_survey_rep(type = "bootstrap", replicates = 500) # 3. Así calculamos la media enigh_boot %>% srvyr::summarise(mean_ingcor = survey_mean(ing_cor)) ## # A tibble: 1 × 2 ## mean_ingcor mean_ingcor_se ## <dbl> <dbl> ## 1 49610. 468. enigh_boot %>% srvyr::summarise(mean_ingcor = survey_mean(ing_cor, vartype = "ci")) ## # A tibble: 1 × 3 ## mean_ingcor mean_ingcor_low mean_ingcor_upp ## <dbl> <dbl> <dbl> ## 1 49610. 48690. 50530. # por estado enigh_boot %>% group_by(edo) %>% srvyr::summarise(mean_ingcor = survey_mean(ing_cor)) ## # A tibble: 30 × 3 ## edo mean_ingcor mean_ingcor_se ## <chr> <dbl> <dbl> ## 1 10 50161. 995. ## 2 11 46142. 1241. ## 3 12 29334. 1063. ## 4 13 38783. 1019. ## 5 14 60541. 1924. ## 6 15 48013. 1359. ## 7 16 42653. 1393. ## 8 17 42973. 1601. ## 9 18 48148. 1967. ## 10 19 68959. 4062. ## # ℹ 20 more rows Resumiendo: El bootstrap de Rao y Wu genera un estimador consistente y aproximadamente insesgado de la varianza de estadísticos no lineales y para la varianza de un cuantil. Este método supone que la seleccion de UPMs es con reemplazo; hay variaciones del estimador bootstrap de Rao y Wu que extienden el método que acabamos de estudiar; sin embargo, es común ignorar este aspecto, por ejemplo Mach et al estudian las propiedades del estimador de varianza bootstrap de Rao y Wu cuando la muestra se seleccionó sin reemplazo. Bootstrap en R Es común crear nuestras propias funciones cuando usamos bootstrap, sin embargo, en R también hay alternativas que pueden resultar convenientes, mencionamos 3: El paquete rsample (forma parte de la colección tidymodels) y tiene una función bootstraps() que regresa un arreglo cuadrangular (tibble, data.frame) que incluye una columna con las muestras bootstrap y un identificador del número y tipo de muestra. Veamos un ejemplo donde seleccionamos muestras del conjunto de datos muestra_computos que contiene 10,000 observaciones. library(rsample) load("data/election_2012.rda") muestra_computos <- slice_sample(election_2012, n = 10000) muestra_computos ## # A tibble: 10,000 × 23 ## state_code state_name state_abbr district_loc_17 district_fed_17 polling_id ## <chr> <chr> <chr> <int> <int> <int> ## 1 18 Nayarit NAY 11 2 86709 ## 2 27 Tabasco TAB 17 5 122035 ## 3 15 México MEX 7 35 75477 ## 4 27 Tabasco TAB 19 5 122262 ## 5 17 Morelos MOR 6 2 84733 ## 6 07 Chiapas CHPS 22 5 15376 ## 7 14 Jalisco JAL 2 2 52634 ## 8 08 Chihuahua CHIH 7 4 19097 ## 9 14 Jalisco JAL 20 20 60549 ## 10 13 Hidalgo HGO 11 4 50221 ## # ℹ 9,990 more rows ## # ℹ 17 more variables: section <int>, region <chr>, polling_type <chr>, ## # section_type <chr>, pri_pvem <int>, pan <int>, panal <int>, ## # prd_pt_mc <int>, otros <int>, total <int>, nominal_list <int>, ## # pri_pvem_pct <dbl>, pan_pct <dbl>, panal_pct <dbl>, prd_pt_mc_pct <dbl>, ## # otros_pct <dbl>, winner <chr> Generamos 100 muestras bootstrap, y la función nos regresa un arreglo con 100 renglones, cada uno corresponde a una muestra bootstrap. set.seed(839287482) computos_boot <- bootstraps(muestra_computos, times = 100) computos_boot ## # Bootstrap sampling ## # A tibble: 100 × 2 ## splits id ## <list> <chr> ## 1 <split [10000/3647]> Bootstrap001 ## 2 <split [10000/3623]> Bootstrap002 ## 3 <split [10000/3724]> Bootstrap003 ## 4 <split [10000/3682]> Bootstrap004 ## 5 <split [10000/3696]> Bootstrap005 ## 6 <split [10000/3716]> Bootstrap006 ## 7 <split [10000/3679]> Bootstrap007 ## 8 <split [10000/3734]> Bootstrap008 ## 9 <split [10000/3632]> Bootstrap009 ## 10 <split [10000/3692]> Bootstrap010 ## # ℹ 90 more rows La columna splits tiene información de las muestras seleccionadas, para la primera vemos que de 10,000 observaciones en la muestra original la primera muestra bootstrap contiene 10000-3647=6353. first_computos_boot <- computos_boot$splits[[1]] first_computos_boot ## <Analysis/Assess/Total> ## <10000/3647/10000> Y podemos obtener los datos de la muestra bootstrap con la función as.data.frame() as.data.frame(first_computos_boot) ## # A tibble: 10,000 × 23 ## state_code state_name state_abbr district_loc_17 district_fed_17 polling_id ## <chr> <chr> <chr> <int> <int> <int> ## 1 07 Chiapas CHPS 13 9 13397 ## 2 14 Jalisco JAL 15 15 58404 ## 3 09 Ciudad de M… CDMX 11 13 26471 ## 4 17 Morelos MOR 7 3 84909 ## 5 25 Sinaloa SIN 11 3 114038 ## 6 11 Guanajuato GTO 16 12 41506 ## 7 29 Tlaxcala TLAX 6 3 128006 ## 8 02 Baja Califo… BC 8 5 3901 ## 9 02 Baja Califo… BC 9 5 3779 ## 10 08 Chihuahua CHIH 19 5 19536 ## # ℹ 9,990 more rows ## # ℹ 17 more variables: section <int>, region <chr>, polling_type <chr>, ## # section_type <chr>, pri_pvem <int>, pan <int>, panal <int>, ## # prd_pt_mc <int>, otros <int>, total <int>, nominal_list <int>, ## # pri_pvem_pct <dbl>, pan_pct <dbl>, panal_pct <dbl>, prd_pt_mc_pct <dbl>, ## # otros_pct <dbl>, winner <chr> Una de las principales ventajas de usar este paquete es que es eficiente en el uso de memoria. library(pryr) object_size(muestra_computos) ## 1.41 MB object_size(computos_boot) ## 5.49 MB # tamaño por muestra object_size(computos_boot)/nrow(computos_boot) ## 54.92 kB # el incremento en tamaño es << 1000 as.numeric(object_size(computos_boot)/object_size(muestra_computos)) ## [1] 3.895024 Adicionalmente incluye funciones para el cálculo de intervalos bootstrap: intervalo_propinas_90 <- bootstraps(propinas, strata = momento, 1000) |> mutate(res_boot = map(splits, estimador)) |> int_pctl(res_boot, alpha = 0.10) El paquete boot está asociado al libro Bootstrap Methods and Their Applications (Davison and Hinkley (1997)) y tiene, entre otras, funciones para calcular replicaciones bootstrap y para construir intervalos de confianza usando bootstrap: calculo de replicaciones bootstrap con la función boot(), intervalos normales, de percentiles y \\(BC_a\\) con la función boot.ci(), intevalos ABC con la función `abc.ci(). El paquete bootstrap contiene datos usados en Efron and Tibshirani (1993), y la implementación de funciones para calcular replicaciones y construir intervalos de confianza: calculo de replicaciones bootstrap con la función bootstrap(), intervalos \\(BC_a\\) con la función bcanon(), intevalos ABC con la función abcnon(). Conclusiones y observaciones El principio fundamental del Bootstrap no paramétrico es que podemos estimar la distribución poblacional con la distribución empírica. Por tanto para hacer inferencia tomamos muestras con reemplazo de la muestra y analizamos la variación de la estadística de interés a lo largo de las remuestras. El bootstrap nos da la posibilidad de crear intervalos de confianza cuando no contamos con fórmulas para hacerlo de manera analítica y sin supuestos distribucionales de la población. Hay muchas opciones para construir intervalos bootstrap, los que tienen mejores propiedades son los intervalos \\(BC_a\\), sin embargo, los más comunes son los intervalos normales con error estándar bootstrap y los intervalos de percentiles de la distribución bootstrap. Antes de hacer intervalos normales vale la pena graficar la distribución bootstrap y evaluar si el supuesto de normalidad es razonable. En cuanto al número de muestras bootstrap se recomienda al menos \\(1,000\\) al hacer pruebas, y \\(10,000\\) o \\(15,000\\) para los resultados finales, sobre todo cuando se hacen intervalos de confianza de percentiles. La función de distribución empírica es una mala estimación en las colas de las distribuciones, por lo que es difícil construir intervalos de confianza (usando bootstrap no paramétrico) para estadísticas que dependen mucho de las colas. O en general para estadísticas que dependen de un número chico de observaciones de una muestra grande. Referencias "],["estimación-por-máxima-verosimilitud.html", "Sección 6 Estimación por máxima verosimilitud Introducción a estimación por máxima verosimilitud Máxima verosimilitud para observaciones continuas Aspectos numéricos Máxima verosimilitud para más de un parámetro", " Sección 6 Estimación por máxima verosimilitud Los ejemplos que hemos visto han sido todos de estimadores plug-in (o por sustitución): si queremos saber una cantidad poblacional, y tenemos una muestra dada, entonces calculamos la estadística de interés como si la muestra fuera la población. Por ejemplo, para estimar la mediana poblacional usamos la mediana muestral, si queremos estimar la media poblacional usamos la media muestral, y así sucesivamente. Estos estimadores usualmente dan resultados razonables (pero hay que checar usando muestra bootstraps, por ejemplo, y pensar lo que estamos haciendo). Cuando sabemos más acerca de la población y usamos un modelo teórico es posible hacer más: dependiendo de qué cantidades se quieren estimar, podemos construir estimadores que sean óptimos en algún sentido siempre y cuando se cumplan los supuestos teóricos, como veremos ahora. Por ejemplo: ¿deberíamos estimar el centro de una distribución simétrica con la media o con la mediana, o quizá con una media recortada? En esta parte construiremos la teoría básica de estimación cuando trabajamos con modelos teóricos conocidos. El objetivo es entender las ideas básicas de estos procedimientos, y cómo evaluar sus resultados. Recordatorio: las ventajas de usar modelos teóricos para describir distribuciones de datos está en que es posible comprimir más eficientemente la información, es posible construir modelos más complejos juntando varios de estos modelos y de sus dependencias, y de que es posible hacer más teoría útil que nos guíe. La desventaja es que es necesario que esos supuestos teóricos sean razonables. Introducción a estimación por máxima verosimilitud Uno de los procedimientos más estándar en esta situación es el método de máxima verosimilitud. Los estimadores de máxima verosimilitud tienen propiedades convenientes, y dan en general resultados razonables siempre y cuando los supuestos sean razonables. Máxima verosimilitud es un proceso intuitivo, y consiste en aprender o estimar valores de parámetros desconocidos suponiendo para los datos su explicación más probable. Para esto, usando supuestos y modelos, requeriremos calcular la probabilidad de un conjunto de observaciones. Ejemplo. Adaptado de (Chihara and Hesterberg 2018). Supongamos que una máquina produce dos tipos de bolsas de 25 galletas: la mitad de las veces produce una bolsa con 5 galletas de avena y 20 de chispas de chocolate, y la otra mitad produce bolsas con 23 galletas de avena y 2 de chispas de chocolate. Tomamos una bolsa, y no sabemos qué tipo de bolsa es (parámetro desconocido). Extraemos al azar una de las galletas, y es de chispas de chocolate (observación). Por máxima verosimilitud, inferimos que la bolsa que estamos considerando tiene 5 galletas de avena. Esto es porque es más probable observar una galleta de chispas en las bolsas que contienen 5 galletas de avena que en las bolsas que contienen 23 galletas de avena. Podemos cuantificar la probabilidad que “acertemos” en nuestra inferencia. Cómo se aprecia en el ejemplo anterior, el esquema general es: Existe un proceso del que podemos obtener observaciones de algún sistema o población real. Tenemos un modelo probabilístico que dice cómo se producen esas observaciones a partir del sistema o población real. Usualmente este modelo tiene algunas cantidades que no conocemos, que rigen el proceso y cómo se relaciona el proceso con las observaciones. Nuestro propósito es: Extraemos observaciones del proceso \\[x_1, x_2, \\ldots, x_n.\\] Queremos aprender de los parámetros desconocidos del proceso para calcular cantidades de interés acerca del sistema o población real En principio, los modelos que consideramos pueden ser complicados y tener varias partes o parámetros. Veamos primero un ejemplo clásico con un solo parámetro, y cómo lo resolveríamos usando máxima verosimilitud. Nota: Cuando decimos muestra en general nos referimos a observaciones independientes obtenidas del mismo proceso (ver la sección de distribución de muestreo) para ver qué significa que sea independientes. Este esquema es un supuesto que simplifica mucho los cálculos, como discutimos antes. Muchas veces este supuesto sale del diseño de la muestra o del estudio, pero en todo caso es importante considerar si es razonable o no para nuestro problema particular. Denotemos por \\(f(x; \\theta)\\) la función de densidad para una variable aleatoria continua con párametro asociado \\(\\theta.\\) Denotamos por \\(X_1, \\ldots, X_n,\\) una muestra aleatoria de \\(n\\) observaciones de esta distribución y por \\(x_1, \\ldots, x_n\\) los valores observados de esta muestra aleatoria. Ejemplo. Supongamos que queremos saber qué proporción de registros de una base de datos tiene algún error menor de captura. No podemos revisar todos los registros, así que tomamos una muestra de 8 registros, escogiendo uno por uno al azar de manera independiente. Revisamos los 8 registros, y obtenemos los siguientes datos: \\[x_1 = 0, x_2 = 1, x_3 = 0, x_4 = 0, x_5 =1, x_6 =0, x_7 =0, x_8 =0\\] donde 1 indica un error menor. Encontramos dos errores menores. ¿Cómo estimamos el número de registros con errores leves en la base de datos? Ya sabemos una respuesta razonable para nuestro estimador puntual, que sería \\(\\hat{p}=2/8=0.25\\). Veamos cómo se obtendría por máxima verosimilitud. Según el proceso con el que se construyó la muestra, debemos dar una probabilidad de observar los 2 errores en 8 registros. Supongamos que en realidad existe una proporción \\(p\\) de que un registro tenga un error. Entonces calculamos Probabilidad de observar la muestra: \\[P(X_1 = 0, X_2 = 1, X_3 = 0, X_4 = 0, X_5 =1, X_6 =0, X_7 =0, X_8 =0)\\] es igual a \\[P(X_1 = 0)P(X_2 = 1)P(X_3 = 0)P( X_4 = 0)P(X_5 =1)P(X_6 =0)P(X_7 =0)P(X_8 =0)\\] pues la probabilidad de que cada observación sea 0 o 1 no depende de las observaciones restantes (la muestra se extrajo de manera independiente). Esta última cantidad tiene un parámetro que no conocemos: la proporcion \\(p\\) de registros con errores. Así que lo denotamos como una cantidad desconocida \\(p\\). Nótese entonces que \\(P(X_2=1) = p\\), \\(P(X_3=0) = 1-p\\) y así sucesivamente, así que la cantidad de arriba es igual a \\[(1-p)p(1-p)(1-p)p(1-p)(1-p)(1-p) \\] que se simplifica a \\[ \\mathcal{L}(p) = p^2(1-p)^6\\] Ahora la idea es encontrar la p que maximiza la probabilidad de lo que observamos. En este caso se puede hacer con cálculo, pero vamos a ver una gráfica de esta función y cómo resolverla de manera numérica. verosimilitud <- function(p){ p^2 * (1-p)^6 } dat_verosim <- tibble(x = seq(0,1, 0.001)) %>% mutate(prob = map_dbl(x, verosimilitud)) ggplot(dat_verosim, aes(x = x, y = prob)) + geom_line() + geom_vline(xintercept = 0.25, color = "red") + xlab("p") Nótese que esta gráfica: Depende de los datos, que pensamos fijos. Cuando cambiamos la \\(p\\), la probabilidad de observar la muestra cambia. Nos interesa ver las regiones donde la probabilidad es relativamente alta. El máximo está en 0.25. Así que el estimador de máxima verosimilitud es \\(\\hat{p} = 0.25\\), que es también el estimador usual de plugin en este caso. Para uniformizar la notación con el caso continuo que veremos más adelante, usaremos la notación \\[P(X=x) = f(x)\\] donde \\(f\\) es la función de densidad (en este caso, función de masa de probabilidad) de \\(X\\). Si esta función depende de un parámetro, escribimos \\[f(x ;\\theta)\\] Definición. Sean \\(X_1, \\ldots, X_n\\) una muestra de una densidad \\(f(x; \\theta)\\) y sean \\(x_1,x_2,\\ldots, x_n\\) los valores observados. La función de verosimilitud del párametro de interés \\(\\theta\\) está definida por \\[\\begin{align} \\mathcal{L}(\\theta; x_1, \\ldots, x_n) = \\prod_{i = 1}^n f(x_i; \\theta). \\end{align}\\] Esta función nos dice qué tan creible es el valor del parámetro \\(\\theta\\) dada la muestra observada. A veces también la denotamos por \\(\\mathcal{L}_n(\\theta)\\). Ahora definimos qué es un estimador de máxima verosimilitud. Definición. Un estimador de máxima verosimilitud lo denotamos por \\(\\hat \\theta_{\\textsf{MLE}}\\) y es un valor que satisface \\[\\begin{align} \\hat \\theta_{\\textsf{MLE}} = \\underset{\\theta \\, \\in \\, \\Theta}{\\arg\\max}\\, \\mathcal{L}(\\theta; x_1, \\ldots, x_n), \\end{align}\\] donde \\(\\Theta\\) denota el espacio parametral. Es decir, el espacio válido de búsqueda congruente con la definición del modelo. Considera el caso de una normal con media y varianza desconocidas. ¿Cuáles son los espacios parametrales para efectuar \\(\\mathsf{MLE}\\)? Considera el caso de una Binomial con parámetro \\(p\\) desconocidos. ¿Cuál es el espacio parametral para la búsqueda del \\(\\mathsf{MLE}\\)? Obsérvese que para construir la verosimilitud y en consecuencia buscar por estimadores de máxima verosimlitud necesitamos: Un modelo teórico de cómo es la población con parámetros e Información de cómo se extrajo la muestra, y entonces podemos resolver nuestro problema de estimación convirtiéndolo en uno de optimización. Probamos esta idea con un proceso más complejo. Ejemplo. Supongamos que una máquina puede estar funcionando correctamente o no en cada corrida. Cada corrida se producen 500 productos, y se muestrean 10 para detectar defectos. Cuando la máquina funciona correctamente, la tasa de defectos es de 3%. Cuando la máquina no está funcionando correctamente la tasa de defectos es de 20% Supongamos que escogemos al azar 11 corridas, y obervamos los siguientes número de defectuosos: \\[1, 0, 0, 3 ,0, 0, 0, 2, 1, 0, 0\\] La pregunta es: ¿qué porcentaje del tiempo la máquina está funcionando correctamente? Primero pensemos en una corrida. La probabilidad de observar una sucesión particular de \\(r\\) defectos es \\[0.03^r(0.97)^{(10-r)}\\] cuando la máquina está funcionando correctamente. Si la máquina está fallando, la misma probabilidad es \\[0.2^r(0.8)^{(10-r)}.\\] Ahora supongamos que la máquina trabaja correctamente en una proporción \\(p\\) de las corridas. Entonces la probabilidad de observar \\(r\\) fallas se calcula promediando (probabilidad total) sobre las probabilidades de que la máquina esté funcionando bien o no: \\[0.03^r(0.97)^{(10-r)}p + 0.2^r(0.8)^{(10-r)}(1-p)\\] Y esta es nuestra función de verosimilitud para una observación. Suponemos que las \\(r_1,r_2, \\ldots, r_{11}\\) observaciones son independientes (por ejemplo, después de cada corrida la máquina se prepara de una manera estándar, y es como si el proceso comenzara otra vez). Entonces tenemos que multiplicar estas probabilidades para cada observación \\(r_1\\): # creamos la función de verosimilitud con los datos observados como dados verosim <- function(p) { r <- c(1, 2, 0, 3, 0, 0, 0, 2, 1, 0, 3) q_func <- 0.03^r*(0.97)^(10-r) q_falla <- 0.2^r*(0.8)^(10-r) prod(p * q_func + (1 - p) * q_falla) } verosim(0.1) # Una alternativa que nos da más flexibilidad para generar la función de # verosimilitud, es crear una función que recibe los datos observados y nos # regresa la función de verosimilitud correspondiente # Entonces, cal_verosim es una función que regresa una función calc_verosim <- function(r){ q_func <- 0.03 ^ r * (0.97) ^ (10 - r) q_falla <- 0.2 ^ r * (0.8) ^ (10 - r) function(p){ #nota: esta no es la mejor manera de calcularlo, hay # que usar logaritmos. prod(p * q_func + (1 - p) * q_falla) } } verosim <- calc_verosim(r = c(1, 0, 0, 3, 0, 0, 0, 2, 1, 0, 0)) verosim(0.1) ## [1] 2.692087e-14 dat_verosim <- tibble(x = seq(0, 1, 0.001)) %>% mutate(prob = map_dbl(x, verosim)) ggplot(dat_verosim, aes(x = x, y = prob)) + geom_line() + geom_vline(xintercept = 0.773, color = "red") + xlab("prop funcionado") Y nuestra estimación puntual sería de alrededor de 80%. Máxima verosimilitud para observaciones continuas Cuando las observaciones \\(x_1,\\ldots, x_n\\) provienen de una distribución continua, no tiene sentido considerar \\(P(X = x_i)\\), pues siempre es igual a cero. Sin embargo, podemos escribir para pequeños valores \\(\\epsilon \\ll 1\\) \\[\\begin{align} P(x - \\epsilon < X < x + \\epsilon | \\theta) = \\int_{x - \\epsilon}^{x + \\epsilon} f(t; \\theta) \\, \\text{d} t \\approx 2 \\epsilon f(x; \\theta), \\end{align}\\] donde \\(f(x; \\theta)\\) es la función de densidad de \\(X.\\) Por lo tanto, \\[\\begin{align} \\begin{split} P&(x_1 - \\epsilon < X_1 < x_1 + \\epsilon, \\ldots, x_n - \\epsilon < X_n < x_n + \\epsilon | \\theta) \\\\ &= \\prod_{i = 1}^n P(x_i - \\epsilon < X_i < x_i + \\epsilon | \\theta) \\\\ &= \\prod_{i = 1}^n 2 \\epsilon f(x_i; \\theta) = (2\\epsilon)^n \\prod_{i = 1}^n f(x_i; \\theta). \\end{split} \\end{align}\\] Notemos que si \\(\\epsilon \\rightarrow 0\\) la ecuación rápidamente converge a cero. Pero para pequeños valores de \\(\\epsilon\\) la ecuación que nos interesa es proporcional a \\(\\prod_{i = 1}^n f(x_i; \\theta).\\) De esta forma, nuestra definición de máxima verosimilitud y estimadores de máxima verosimilitud es la misma para el caso continuo (verifica las definiciones de la sección anterior). Ejemplo. Supongamos que tenemos una muestra \\(x_1\\ldots, x_n\\) extraidas de una distribución exponencial con tasa \\(\\lambda>0\\) donde no conocemos \\(\\lambda\\). ¿Cuál es el estimador de máxima verosimilitud de \\(\\lambda\\)? Para \\(\\lambda>0\\), tenemos que \\[{\\mathcal L}(\\lambda) = \\prod_{i=1}^n \\lambda e^{-\\lambda x_i}\\] de modo que \\[{\\mathcal L}(\\lambda) = \\lambda^n e^{-\\lambda \\sum_{i=1}^nx_i} = \\lambda^n e^{-n\\lambda\\bar{x}} = e^{n(\\log\\lambda - \\lambda\\bar{x})}\\] Que podemos maximizar usando cálculo para obtener \\(\\hat{\\lambda}_{\\mathsf{ML}} = \\frac{1}{\\bar{x}}\\) (demuéstralo). Discute por qué esto es intuitivamente razonable: ¿cuál es el valor esperado de una exponencial con parámetro \\(\\lambda\\)? Aspectos numéricos Encontrar el estimador de máxima verosimilitud (\\(\\textsf{MLE}\\)) es automático en la mayoría de los casos. En teoría, podemos reutilizar la misma rutina numérica para encontrar el estimador sin ninguna ayuda de la analista. Esto contrasta con otras técnicas de estimación en donde se requieren cálculos y manipulación de ecuaciones. Sin embargo, hay situaciones que se pueden evitar de manera general. Por ejemplo, cuando calculamos la verosimilitud arriba, nótese que estamos multiplicando números que pueden ser muy chicos (por ejemplo \\(p^6\\), etc). Esto puede producir desbordes numéricos fácilmente. Por ejemplo para un tamaño de muestra de 1000, podríamos tener que calcular p <- 0.1 proba <- (p ^ 800)*(1-p)^200 proba ## [1] 0 En estos casos, es mejor hacer los cálculos en escala logarítmica. El logaritmo convierte productos en sumas, y baja exponentes multiplicando. Si calculamos en escala logaritmica la cantidad de arriba, no tenemos problema: log_proba <- 800 * log(p) + 200 * log(1-p) log_proba ## [1] -1863.14 Ahora notemos que Maximizar la verosimilitud es lo mismo que maximizar la log-verosimilitud, pues el logaritmo es una función creciente. Si \\(x_{\\max}\\) es el máximo de \\(f\\), tenemos que \\(f(x_{\\max})>f(x)\\) para cualquier \\(x\\), entonces tomando logaritmo, \\[\\log(f(x_{max}))>\\log(f(x)),\\] para cualquier \\(x.\\) Pues el logaritmo respeta la desigualdad por ser creciente. Usualmente usamos la log-verosimilitud para encontrar el estimador de máxima verosimilitud. Hay razónes teóricas y de interpretación por las que también es conveniente hacer esto. Definición. La log-verosimilitud la denotamos usualmente por \\[\\ell_n(\\theta) = \\log \\left(\\mathcal{L}_n(\\theta)\\right),\\] donde hemos suprimido la dependencia en la muestra por conveniencia. Ejemplo. En nuestro primer ejemplo, log_verosimilitud <- function(p){ 2*log(p) + 6*log(1-p) } dat_verosim <- tibble(x = seq(0,1, 0.01)) %>% mutate(log_prob = map_dbl(x, log_verosimilitud)) ggplot(dat_verosim, aes(x = x, y = log_prob)) + geom_line() + geom_vline(xintercept = 0.25, color = "red") + xlab("p") Obtenemos el mismo máximo. Podemos incluso resolver numéricamente: solucion <- optim(p = 0.5, log_verosimilitud, control = list(fnscale = -1), method = "Brent", lower = 0, upper = 1) solucion$par ## [1] 0.25 Y en nuestro segundo ejemplo: calc_log_verosim <- function(r){ q_func <- 0.03^r*(0.97)^(10-r) q_falla <- 0.2^r*(0.8)^(10-r) function(p){ #nota: esta no es la mejor manera de calcularlo, hay # que usar logaritmos. sum(log(p * q_func + (1 - p) * q_falla)) } } log_verosim <- calc_log_verosim(c(1, 0, 0, 3, 0, 0, 0, 2, 1, 0, 0)) log_verosim(0.1) ## [1] -31.24587 solucion <- optim(p = 0.2, log_verosim, control = list(fnscale = -1), method = "Brent", lower = 0, upper = 1) solucion$par ## [1] 0.7733766 solucion$convergence ## [1] 0 dat_verosim <- tibble(x = seq(0,1, 0.001)) %>% mutate(log_verosimilitud = map_dbl(x, log_verosim)) ggplot(dat_verosim, aes(x = x, y = log_verosimilitud)) + geom_line() + geom_vline(xintercept = 0.775, color = "red") + xlab("prop funcionado") Nótese que la verosimilitud la consideramos función de los parámetros, donde los datos están fijos. Podemos construir una función que genera la función de verosimilitud dependiendo de los datos. En nuestro primer ejemplo de muestras de registros erróneos, podríamos construir una función que genera la log verosimilitud dependiendo del tamaño de muestra y del número de errores encontrado: construir_log_verosim <- function(n, n_err){ # n es tamaño de muestra # n_err el número de errores detectados (datos) n_corr <- n - n_err log_verosim <- function(p){ n_err * log(p) + n_corr * log(1-p) } } Cuando fijamos \\(n\\) y \\(n_{\\textsf{err}}\\), esta función genera otra función, la log verosimilitud, que es la que queremos optimizar. Supongamos entonces que sacamos 20 registros al azar y observamos 10 incorrectos. La función de verosimilitud es log_vero <- construir_log_verosim(20, 10) tibble(x = seq(0,1,0.001)) %>% mutate(log_ver = log_vero(x)) %>% ggplot(aes(x = x, y = log_ver)) + geom_line() + geom_vline(xintercept = 0.5, color = 'red') Ejemplo. Supongamos que en una población de transacciones hay un porcentaje \\(p\\) (desconocido) que son fraudulentas. Tenemos un sistema de clasificación humana que que marca transacciones como sospechosas. Con este sistema hemos medido que la proporción de transacciones normales que son marcadas como sospechosas es de 0.1%, y que la proporción de transacciones fraudulentas que son marcadas como sospechosas es de 98%. Supongamos que extraemos una muestra de 2000 transacciones, de manera que todas ellas tiene la misma probabilidad de ser fraudulentas. El sistema de clasificación marca 4 transacciones como sospechosas ¿Cómo estimamos la proporción de transacciones fraudulentas en la población? Solución: sea \\(p\\) la proporción de transacciones fraudulentas. Entonces la probabilidad de que una transacción sea marcada como sospechosa es (proba total): \\[0.98p + 0.001(1-p)\\] Pues tenemos que contar 98% de la proporción \\(p\\) de fraudulentas (correctamente detectadas) más 0.1% de la proporción \\((1-p)\\) de fraudulentas. Escribimos entonces nuestra función de verosimilitud crear_log_verosim <- function(n, n_sosp){ # devolver la función log verosimilitud log_verosimilitud_pct <- function(pct){ # sup que pct es la proporcentaje de fraudes, # que es el parámetro que queremos estimar prob_sosp <- 0.98 * pct / 100 + 0.001 * (1 - pct / 100) log_prob <- n_sosp * log(prob_sosp) + (n - n_sosp) * log(1- prob_sosp) log_prob } log_verosimilitud_pct } La verosimilitud es una función de \\(p\\). log_verosim <- crear_log_verosim(n = 2000, n_sosp = 4) A continuación la mostramos de manera gráfica. No se ve muy claro dónde ocurre el máximo, pero podemos ampliar cerca de cero la misma gráfica: Vemos que alrededor de 0.1% maximiza la probabilidad de haber observado 4 transacciones sospechosas. Notamos sin embargo que varios valores alrededor de este valor tienen probabilidad similar, así que también son consistentes con los datos (por ejemplo, valores como 0.05 o 0.15 tienen probabilidad similar). Tendremos que considerar esto para evaluar la incertidumbre en nuestra estimación. Obsérvese adicionalmente que si no tomáramos en cuenta las probabilidades de falsos negativos y falsos positivos la estimación simple daría \\(4/2000 = 0.002\\) (0.2%), que es dos veces más grande que nuestra estimación puntual por máxima verosimilitud. Ejemplo. Este es un ejemplo donde mostramos que cuando el soporte de las densidades teóricas es acotado hay que tener cuidado en la definición de la verosimilitud. En este caso, el soporte de la variable aleatoria es el párametro de interés. Supongamos que nuestros datos son generados por medio de una distribución uniforme en el intervalo \\([0,b].\\) Contamos con una muestra de \\(n\\) observaciones generadas de manera independiente \\(X_i \\sim U[0,b]\\) para \\(i= 1, \\ldots, n.\\) Sin embargo, no conocemos el valor de \\(b\\). ¿Cómo es la función de log verosimilitud \\({\\mathcal L}_n(b)\\) para este caso? Nótese que cuando el parámetro \\(b\\) es menor que alguna \\(x_i\\), tenemos que \\({\\mathcal L}_n(b) = 0\\): la verosimilitud es cero si tomamos una \\(b\\) más chica que algún dato, pues este valor es incosistente del todo con los datos observados. En otro caso, \\[{\\mathcal L}_n(b) = \\frac{1}{b^n},\\] pues la función de densidad de una uniforme en \\([0,b]\\) es igual a \\(1/b\\) en el intervalo \\([0,b]\\), y 0 en otro caso. Podemos escribir entonces: crear_verosim <- function(x){ n <- length(x) verosim <- function(b){ indicadora <- ifelse(all(x <= b), 1, 0) indicadora / b^n } } Ahora podemos hacer máxima verosimilitud para un ejemplo: set.seed(234) x <- runif(10, 0, 3) verosim <- crear_verosim(x) res_opt <- optimize(verosim, c(-1000, 1000), maximum = TRUE) res_opt$maximum ## [1] 2.788167 Y nótese que, como esperaríamos, este valor es el máximo de la muestra: max(x) ## [1] 2.788158 La gráfica de la función de verosimilitud es: tibble(b = seq(-1, 5, 0.001)) %>% mutate(verosim_1 = map_dbl(b, ~ verosim(.x))) %>% ggplot() + geom_line(aes(x = b, y = verosim_1)) + geom_rug(data = tibble(x = x), aes(x = x), colour = "red") Podemos escribir en una fórmula como: \\[\\begin{align} \\mathcal{L}(b; x_1, \\ldots, x_n) = \\prod_{i = 1}^n 1_{[0,b]}(x_i) \\frac1b. \\end{align}\\] Y podríamos resolver analíticamente como sigue: Si consideramos \\[ \\hat b_{\\textsf{MLE}} = x_{\\max} = \\max\\{x_i\\},\\] notemos que cualquier valor observado necesariamente satisface \\[x_i \\leq \\hat b_{\\textsf{MLE}},\\] y por lo tanto todas las funciones indicadoras están encendidas. El valor de la verosimilitud es igual a \\[\\mathcal{L}(\\hat b_{\\textsf{MLE}}; x_1, \\ldots, x_n) = \\left(\\frac{1}{x_{\\max}}\\right)^n \\geq \\left (\\frac1b\\right )^n\\] para cualquier \\(b\\geq x_{\\max}\\). Como la verosimilitud para \\(b<x_{\\max}\\) es igual a cero, esto demuestra que el máximo de la muestra es el estimador de máxima verosimilitud de \\(b\\). Observación. Este ejemplo también tiene dificultades numéricas, pues la verosimilitud presenta discontinuidades y regiones con derivada igual a cero, y la mayoria de los algoritmos numéricos no tienen garantías buenas de covergencia al máximo en estos casos. Si aplicamos sin cuidado descenso en gradiente, por ejemplo, podríamos comenzar incorrectamente en un valor \\(b_0 < x_{\\max}\\) y el algoritmo no avanzaría al máximo. Máxima verosimilitud para más de un parámetro Si nuestro modelo contiene más de un parámetro desconocido podemos también usar máxima verosimilitud. En este caso, optimizamos sobre todos los parámetros usando cálculo o alguna rutina numérica. Ejemplo. Considera el caso de \\(n\\) muestras iid de un modelo Gaussiano. Es decir, \\(X_1, \\ldots, X_n \\sim \\mathsf{N}(\\mu, \\sigma^2).\\) Consideremos que ambos parámetros son desconocidos y nos gustaria encontrar el \\(\\textsf{MLE}\\). Para este problema denotamos \\(\\theta \\in \\mathbb{R}^2\\), donde \\(\\theta_1 = \\mu\\) y \\(\\theta_2 = \\sigma^2.\\) La función de verosimiltud se puede calcular (ignorando algunas constantes multiplicativas) como \\[\\begin{align} \\mathcal{L}_n(\\theta) &= \\prod_{i = 1}^n \\frac{1}{\\sigma} \\, \\exp\\left( - \\frac{(x_i - \\mu)^2}{2\\sigma^2}\\right) \\\\ &= \\theta_2^{-\\frac{n}{2}}\\exp\\left( - \\frac{1}{2 \\theta_2} \\sum_{i = 1}^n (x_i - \\theta_1)^2 \\right). \\end{align}\\] A continuación mostramos la representación gráfica de la función de verosimilitud de este ejemplo. Notamos lo mismo que para los ejemplos anteriores. Conforme más datos tenemos, más nos acercamos a los valores reales que no conocemos. Ejemplo. Como ejercicio, podemos encontrar los estimadores de máxima verosimilitud cuando tenemos una muestra \\(X_1, \\ldots, X_n \\sim \\mathsf{N}(\\mu, \\sigma^2).\\) (puedes derivar e igualar el cero para encontrar el mínimo). También podemos resolver numéricamente, por ejemplo: Supongamos que tenemos la siguiente muestra: set.seed(41852) muestra <- rnorm(150, mean = 1, sd = 2) La función generadora de la log verosimilitud para una muestra es (ve la expresión del ejercicio anterior y calcula su logaritmo), y generamos la función de verosimilitud para nuestra muestra: crear_log_p <- function(x){ log_p <- function(pars){ media = pars[1] desv_est = pars[2] # ve la ecuación del ejercicio anterior z <- (x - media) / desv_est log_verosim <- -(log(desv_est) + 0.5 * mean(z ^ 2)) log_verosim } log_p } log_p <- crear_log_p(muestra) Ahora optimizamos: res <- optim(c(0, 0.5), log_p, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") res$convergence ## [1] 0 est_mv <- tibble(parametro = c("media", "sigma"), estimador = res$par) %>% column_to_rownames(var = "parametro") est_mv ## estimador ## media 1.136001 ## sigma 1.838421 Verifica que el estimador de la media y de la desviación estándar es el que esperábamos (y que puedes derivar analíticamente): n <- length(muestra) sd_n <- function(x) sqrt(mean((x - mean(x))^2)) c(media = mean(muestra), sigma = sd_n(muestra)) %>% round(4) ## media sigma ## 1.1364 1.8392 Ejemplo. Supongamos que en una población de estudiantes tenemos dos tipos: unos llenaron un examen de opción múltiple al azar (1 de 5), y otros contestaron las preguntas intentando sacar una buena calificación. Suponemos que una vez que conocemos el tipo de estudiante, todas las preguntas tienen la misma probabilidad de ser contestadas correctamente, de manera independiente. El modelo teórico está representado por la siguiente simulación: sim_formas <- function(p_azar, p_corr){ tipo <- rbinom(1, 1, 1 - p_azar) if(tipo==0){ # al azar x <- rbinom(1, 10, 1/5) } else { # no al azar x <- rbinom(1, 10, p_corr) } x } Y una muestra se ve como sigue: set.seed(12) muestra <- map_dbl(1:200, ~ sim_formas(0.3, 0.75)) qplot(muestra) Supongamos que no conocemos la probabildad de contestar correctamente ni la proporción de estudiantes que contestó al azar. ¿Como estimamos estas dos cantidades? Escribimos la verosimilitud: crear_log_p <- function(x){ log_p <- function(pars){ p_azar = pars[1] p_corr = pars[2] sum(log(p_azar * dbinom(x, 10, 1/5) + (1 - p_azar) * dbinom(x, 10, p_corr))) } log_p } Creamos la función de verosimilitud con los datos log_p <- crear_log_p(muestra) y optimizamos res <- optim(c(0.5, 0.5), log_p, control = list(fnscale = -1)) res$par ## [1] 0.2827061 0.7413276 En este caso, obtenemos estimaciones razonables de ambos parámetros. Nota: dependiendo de los datos, este problema puede estar mal condicionado. Por ejemplo, ¿qué pasa si la probabilidad de acertar cuando se contesta bien está cercano al azar? La siguiente pregunta qué nos interesa hacer es: ¿cómo estimamos la variabilidad de estos estimadores? Más adelante veremos una respuesta basada en teoría, pero también podemos resolver este problema usando el bootstrap. Referencias "],["bootstrap-paramétrico.html", "Sección 7 Bootstrap paramétrico Ventajas y desventajas de bootstrap paramétrico Verificando los supuestos distribucionales Modelos mal identificados", " Sección 7 Bootstrap paramétrico Cuando nuestras observaciones provienen de un modelo teórico parametrizado con algunos parámetros que queremos estimar, y utilizamos máxima verosimilitud para hacer nuestra estimación, no es adecuado aplicar directamente el bootstrap no paramétrico que vimos en las secciones anteriores. Sin embargo, suponiendo que el modelo paramétrico que estamos usando es apropiado, podemos remuestrear de tal modelo para estimar la varianza de nuestros estimadores. Este proceso se llama el bootstrap paramétrico. Antes de hacer una definición precisa, veamos cómo calcularíamos error estándar para los estimadores de máxima verosimilitud de la normal que vimos en la sección anterior. Ejemplo (sección máxima verosimilitud). Como ejercicio, podemos encontrar los estimadores de máxima verosimilitud cuando tenemos una muestra \\(X_1, \\ldots, X_n \\sim \\mathsf{N}(\\mu, \\sigma^2)\\) (puedes derivar e igualar a cero para encontrar el mínimo). También podemos resolver numéricamente. Supongamos que tenemos la siguiente muestra: set.seed(41852) muestra <- rnorm(150, mean = 1, sd = 2) La función generadora de la log-verosimilitud para una muestra es (ve la expresión del ejercicio anterior y calcula su logaritmo), y generamos la función de verosimilitud para nuestra muestra: crear_log_p <- function(x){ log_p <- function(pars){ media = pars[1] desv_est = pars[2] # ve la ecuación del ejercicio anterior z <- (x - media) / desv_est log_verosim <- -(log(desv_est) + 0.5 * mean(z^2)) log_verosim } log_p } log_p <- crear_log_p(muestra) Ahora optimizamos (revisa que el método converge): res <- optim(c(0, 0.5), log_p, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") res$convergence ## [1] 0 est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) %>% column_to_rownames(var = "parametro") Una vez que tenemos nuestros estimadores puntuales, est_mle ## estimador ## media 1.136001 ## sigma 1.838421 Sustituimos estos parámetros en la distribución normal y simulamos una muestra del mismo tamaño que la original: simular_modelo <- function(n, media, sigma){ rnorm(n, media, sigma) } muestra_bootstrap <- simular_modelo(length(muestra), est_mle["media", "estimador"], est_mle["sigma", "estimador"]) head(muestra_bootstrap) ## [1] 1.8583885 2.2084326 2.5852895 2.5174462 -0.7428032 0.5995989 Una vez que tenemos esta muestra bootstrap recalculamos los estimadores de máxima verosimlitud. Esto se hace optimizando: # creamos nueva verosimilitud para muestra bootstrap log_p_boot <- crear_log_p(muestra_bootstrap) # optimizamos res_boot <- optim(c(0, 0.5), log_p_boot, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") res_boot$convergence ## [1] 0 est_mle_boot <- tibble(parametro = c("media", "sigma"), estimador = res_boot$par) %>% column_to_rownames(var = "parametro") est_mle_boot ## estimador ## media 1.235914 ## sigma 1.710042 Y esta es nuestra replicación bootstrap de los estimadores de máxima verosimilitud. La idea es la misma que el bootstrap no paramétrico, con la ventaja de que estamos simulando del modelo que suponemos es el correcto, es decir, estamos usando información adicional que no teníamos en el bootstrap no paramétrico. Ahora es necesario repetir un número grande de veces. Nótese que esta función envuelve el proceso de remuestreo, cálculo de la función de verosimilitud y optimización: rep_boot <- function(rep, crear_log_p, est_mle, n){ muestra_bootstrap <- simular_modelo(length(muestra), est_mle["media", "estimador"], est_mle["sigma", "estimador"]) log_p_boot <- crear_log_p(muestra_bootstrap) # optimizamos res_boot <- optim(c(0, 0.5), log_p_boot, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") try(if(res_boot$convergence != 0) stop("No se alcanzó convergencia.")) tibble(parametro = c("media", "sigma"), estimador_boot = res_boot$par) } reps_boot <- map_dfr(1:5000, ~ rep_boot(.x, crear_log_p, est_mle, n = length(muestra)), rep = ".id") reps_boot ## # A tibble: 10,000 × 2 ## parametro estimador_boot ## <chr> <dbl> ## 1 media 0.797 ## 2 sigma 1.90 ## 3 media 1.23 ## 4 sigma 1.96 ## 5 media 1.14 ## 6 sigma 1.89 ## 7 media 1.33 ## 8 sigma 1.73 ## 9 media 1.19 ## 10 sigma 1.73 ## # ℹ 9,990 more rows Ya ahora podemos estimar error estándar: error_est <- reps_boot %>% group_by(parametro) %>% summarise(ee_boot = sd(estimador_boot)) error_est ## # A tibble: 2 × 2 ## parametro ee_boot ## <chr> <dbl> ## 1 media 0.150 ## 2 sigma 0.106 Así que nuestra estimación final sería: bind_cols(est_mle, error_est) %>% mutate(across(where(is.numeric), round, 3)) %>% select(parametro, estimador, ee_boot) ## parametro estimador ee_boot ## media media 1.136 0.150 ## sigma sigma 1.838 0.106 Si usamos la rutina estándar de R (dejaremos para después explicar cómo calcula los errores estándar esta rutina —no es con bootstrap): broom::tidy(MASS::fitdistr(muestra, "normal")) ## # A tibble: 2 × 3 ## term estimate std.error ## <chr> <dbl> <dbl> ## 1 mean 1.14 0.150 ## 2 sd 1.84 0.106 Podemos revisar también la normalidad aproximada de las distribuciones bootstrap para construir nuestros intervalos: ggplot(reps_boot, aes(sample = estimador_boot)) + geom_qq() + geom_qq_line(colour = "red") + facet_wrap(~parametro, scales = "free_y") La distribuciones son aproximadamente normales. Nótese que esto no siempre sucede, especialmente con parámetros de dispersión como \\(\\sigma\\). Ejemplo. Supongamos que tenemos una muestra más chica. Repasa los pasos para asegurarte que entiendes el procedimiento: set.seed(4182) muestra <- rnorm(6, mean = 1, sd = 2) # función de verosimilitud log_p <- crear_log_p(muestra) # máxima verosimilitud res <- optim(c(0, 0.5), log_p, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") res$convergence ## [1] 0 est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) %>% column_to_rownames(var = "parametro") est_mle ## estimador ## media 0.3982829 ## sigma 2.3988969 Hacemos bootstrap paramétrico reps_boot <- map_dfr(1:5000, ~ rep_boot(.x, crear_log_p, est_mle, n = length(muestra)), .id = "rep") reps_boot ## # A tibble: 10,000 × 3 ## rep parametro estimador_boot ## <chr> <chr> <dbl> ## 1 1 media 0.789 ## 2 1 sigma 0.945 ## 3 2 media -0.103 ## 4 2 sigma 1.37 ## 5 3 media 1.96 ## 6 3 sigma 1.70 ## 7 4 media 1.55 ## 8 4 sigma 2.28 ## 9 5 media -0.228 ## 10 5 sigma 1.73 ## # ℹ 9,990 more rows ggplot(reps_boot, aes(sample = estimador_boot)) + geom_qq() + geom_qq_line(colour = "red") + facet_wrap(~parametro, scales = "free_y") ggplot(reps_boot, aes(x = estimador_boot)) + geom_histogram() +facet_wrap(~parametro) Donde vemos que la distribución de \\(\\sigma\\) es asimétrica pues en algunos casos obtenemos estimaciones muy cercanas a cero. Podemos usar intervalos de percentiles. Ejercicio (extra). Con más de un parámetro, podemos preguntarnos cómo dependen las estimaciones individuales - en algunos casos pueden estar correlacionadas. Podemos examinar este comportamiendo visualizando las replicaciones bootstrap ggplot(reps_boot %>% pivot_wider(names_from = parametro, values_from = estimador_boot), aes(x = media, y = sigma)) + geom_point(alpha = 0.5) + coord_equal() Esta es nuestra aproximación a la distribución de remuestreo de nuestro par de estadísticas \\((\\mu_{\\mathsf{MLE}}, \\sigma_{\\mathsf{MLE}})\\). En este caso, parecen ser independientes (lo cual es posible demostrar). Bootstrap paramétrico. Supongamos que tenemos una muestra iid \\(X_1,X_2,\\ldots, X_n \\sim f(x;\\theta)\\) de un modelo paramétrico, y un estimador de máxima verosimilitud \\(\\hat{\\theta}_{\\mathsf{MLE}}\\) para \\(\\theta\\). El error estándar estimado para \\(\\hat{\\theta}_{\\mathsf{MLE}}\\) por medio del bootstrap paramétrico se calcula como sigue: Se calcula \\(\\hat{\\theta}_{\\mathsf{MLE}}\\) para la muestra observada Se simula una muestra iid de tamaño \\(n\\) de \\(f(x; \\hat{\\theta}_{\\mathsf{MLE}})\\) (muestra bootstrap) Se recalcula el estimador de máxima verosimilitud para la muestra bootstrap \\(\\hat{\\theta^*}_{\\mathsf{MLE}}\\) Se repiten 2-3 una cantidad grande de veces (1000 - 10000) Se calcula la desviación estándar de los valores \\(\\hat{\\theta^*}_{\\mathsf{MLE}}\\) obtenidos. Este es el error estándar estimado para el estimador \\(\\hat{\\theta}_{\\mathsf{MLE}}\\) Ventajas y desventajas de bootstrap paramétrico Ventaja: el bootstrap paramétrico puede dar estimadores más precisos e intervalos más angostos y bien calibrados que el no paramétrico, siempre y cuando el modelo teórico sea razonable. Desventaja: Es necesario decidir el modelo teórico, que tendrá cierto grado de desajuste vs. el proceso generador real de los datos. Si el ajuste es muy malo, los resultados tienen poca utilidad. Para el no paramétrico no es necesario hacer supuestos teóricos. Ventaja: el bootstrap paramétrico puede ser más escalable que el no paramétrico, pues no es necesario cargar y remuestrear los datos originales, y tenemos mejoras adicionales cuando tenemos expresiones explícitas para los estimadores de máxima verosimilitud (como en el caso normal, donde es innecesario hacer optimización numérica). Desventaja: el bootstrap paramétrico es conceptualmente más complicado que el no paramétrico, y como vimos arriba, sus supuestos pueden ser más frágiles que los del no-paramétrico. Verificando los supuestos distribucionales Como hemos discutido antes, podemos hacer pruebas de hipótesis para revisar si una muestra dada proviene de una distribución conocida. Sin embargo, la herramienta más común es la de los qq-plots, donde podemos juzgar fácilmente el tamaño de las desviaciones y si estas tienen implicaciones prácticas importantes. El proceso es como sigue: si \\(X_1,X_,\\ldots, X_n\\) es una muestra de \\(f(x;\\theta)\\), calculamos el estimador de máxima verosimilitud \\(\\theta_{\\mathsf{MLE}}\\) con los datos observados. Enchufamos \\(\\hat{f} = f(x;\\theta_{\\mathsf{MLE}})\\), y hacemos una gráfica de los cuantiles teóricos de \\(\\hat{f}\\) contra los cuantiles muestrales. Ejemplo. Consideramos la siguiente muestra: set.seed(32) muestra <- rgamma(150, 0.4, 1) qplot(muestra) Y queremos usar un modelo exponencial. Encontramos los estimadores de maxima verosimilitud est_mle <- MASS::fitdistr(muestra, "exponential") rate_mle <- est_mle$estimate rate_mle ## rate ## 2.76054 g_exp <- ggplot(tibble(muestra = muestra), aes(sample = muestra)) + geom_qq(distribution = stats::qexp, dparams = list(rate = rate_mle)) + geom_abline() + labs(subtitle = "Gráfica de cuantiles exponenciales") g_exp Donde vemos que el desajuste es considerable, y los datos tienen una cola derecha considerablemente más larga que la de exponencial (datos son casi dos veces más grande de lo que esperaríamos), y la cola izquierda está más comprimida en los datos que en una exponencial. Sin embargo, si ajustamos una gamma: est_mle <- MASS::fitdistr(muestra, "gamma")$estimate g_gamma <- ggplot(tibble(muestra = muestra), aes(sample = muestra)) + geom_qq(distribution = stats::qgamma, dparams = list(shape = est_mle[1], rate = est_mle[2])) + geom_abline() + labs(subtitle = "Gráfica de cuantiles gamma") g_exp + g_gamma El ajuste es considerablemente mejor para la distribución gamma (puedes hacer el protocolo rorschach para afinar tu diagnóstico de este tipo de gráficas). Ejempĺo. Examinamos un modelo teórico para las cuentas totales del conjunto de datos de propinas. En primer lugar: Separamos comida y cena, pues sabemos que las cuentas tienden a ser más grandes en las cenas. En lugar de modelar la cuenta total, modelamos el gasto por persona, es decir, la cuenta total dividida por el numero de personas. Grupos grandes pueden producir colas largas que no tenemos necesidad de modelar de manera probabilística, pues conocemos el número de personas. En este caso intentaremos un modelo lognormal, es decir, el logaritmo de los valores observados se comporta aproximadamente normal. Puedes también intentar con una distribución gamma. Separamos por Cena y Comida, dividimos entre número de personas y probamos ajustando un modelo para cada horario: propinas <- read_csv("data/propinas.csv") %>% mutate(cuenta_persona = cuenta_total / num_personas) propinas_mle <- propinas %>% group_by(momento) %>% summarise(est_mle = list(tidy(MASS::fitdistr(cuenta_persona, "lognormal")))) %>% unnest(est_mle) propinas_mle ## # A tibble: 4 × 4 ## momento term estimate std.error ## <chr> <chr> <dbl> <dbl> ## 1 Cena meanlog 2.03 0.0273 ## 2 Cena sdlog 0.362 0.0193 ## 3 Comida meanlog 1.94 0.0366 ## 4 Comida sdlog 0.302 0.0259 Ojo: estos parámetros están en escala logarítmica. Puedes revisar aquí para ver cómo calcular media y desviación estándar de las distribuciones originales. Ahora verificamos el ajuste: g_1 <- ggplot(propinas %>% filter(momento == "Cena"), aes(sample = cuenta_persona)) + geom_qq(dparams = list(mean = propinas_mle$estimate[1], sd = propinas_mle$estimate[2]), distribution = stats::qlnorm) + ylim(c(0, 20)) + geom_abline() + labs(subtitle = "Cena") g_2 <- ggplot(propinas %>% filter(momento == "Comida"), aes(sample = cuenta_persona)) + geom_qq(dparams = list(mean = propinas_mle$estimate[3], sd = propinas_mle$estimate[4]), distribution = stats::qlnorm) + ylim(c(0, 20)) + geom_abline() + labs(subtitle = "Comida") g_1 + g_2 El ajuste es bueno, aunque podríamos revisar la cola de la derecha en la Comida: ¿por qué existen esos valores relativamente grandes (alrededor de 25% más altos de lo que esperaríamos). ¿Tiene sentido ajustar dos distribuciones con parámetros separados? ¿Crees que estas dos distribuciones podrían compartir algún parámetro? Para esto puedes revisar el error estándar de los estimadores de máxima verosimilitud que mostramos arriba. ¿Qué ventajas verías en usar menos parámetros? ¿Cómo implementarías la estimación? ¿Qué pasa si intentas ajustar un modelo normal a estos datos? Modelos mal identificados Para algunos modelos y algunos parámetros, puede suceder que existan varias configuraciones muy diferentes de los parámetros que sean consistentes con los datos (en términos de verosimilitud, tienen verosimilitud alta similar), y en estos casos decimos que el modelo (con los datos observados) está mal identificado. Esto presenta problemas múltiples: optimizar es más difícil, hay incertidumbre grande en la estimación, y los parámetros se acoplan, haciendo difícil su interpretación. Ejemplo. Consideremos el ejemplo donde queríamos estimar dos proporciones: la proporción de examenes contestados al azar y la tasa de correctos. Vamos a suponer que la probabilidad de tener respuesta correcta dado que el examen no fue contestado al azar no es muy lejano a 1/5, que es la probabilidad de acertar a al azar. Aquí está la función para simular y la log verosimilitud correspondiente. Aquí vamos a ver un problema más difícil, así que usaremos la transformación logit para las proporciones, y no obtener resultados fuera del rango 0-1 al optimizar: inv_logit <- function(theta){ exp(theta) / (1 + exp(theta)) } logit <- function(p){ log(p / (1-p)) } # Simular datos sim_formas <- function(probs){ p_azar <- probs[1] p_corr <- probs[2] tipo <- rbinom(1, 1, 1 - p_azar) if(tipo==0){ # al azar x <- rbinom(1, 10, 1/5) } else { # no al azar x <- rbinom(1, 10, p_corr) } x } simular_modelo <- function(n, params){ muestra <- map_dbl(1:n, ~ sim_formas(probs = inv_logit(params))) muestra } # log verosimilitud crear_log_p <- function(x){ log_p <- function(pars){ p_azar = inv_logit(pars[1]) p_corr = inv_logit(pars[2]) sum(log(p_azar * dbinom(x, 10, 1/5) + (1 - p_azar) * dbinom(x, 10, p_corr))) } log_p } # simular datos set.seed(12) muestra <- simular_modelo(2000, params = logit(c(0.3, 0.29))) qplot(muestra) log_p <- crear_log_p(muestra) res <- optim(c(0.0, 0.0), log_p, control = list(fnscale = -1)) res$convergence ## [1] 0 est_mle <- res$par names(est_mle) <- c("p_azar_logit", "p_corr_logit") est_mle ## p_azar_logit p_corr_logit ## -0.9194029 -0.8896454 probs_mle <- inv_logit(est_mle) names(probs_mle) <- c("p_azar", "p_corr") probs_mle ## p_azar p_corr ## 0.2850796 0.2911830 En primer lugar, parece ser que nuestras estimaciones son menos precias. Vamos a hacer bootstrap paramétrico: rep_boot <- function(rep, simular, crear_log_p, pars, n){ muestra_bootstrap <- simular(n, pars) log_p_boot <- crear_log_p(muestra_bootstrap) # optimizamos res_boot <- optim(c(0.0, 0.0), log_p_boot, control = list(fnscale = -1)) try(if(res_boot$convergence != 0) stop("No se alcanzó convergencia.")) est_mle_boot <- res_boot$par names(est_mle_boot) <- names(pars) est_mle_boot["rep"] <- rep est_mle_boot["convergence"] <- res_boot$convergence est_mle_boot } set.seed(8934) reps_boot <- map(1:500, ~ rep_boot(.x, simular_modelo, crear_log_p, est_mle, n = length(muestra))) %>% bind_rows reps_boot %>% mutate(across(everything(), round, 2)) %>% head() ## # A tibble: 6 × 4 ## p_azar_logit p_corr_logit rep convergence ## <dbl> <dbl> <dbl> <dbl> ## 1 -1.14 -0.92 1 0 ## 2 -1.11 -0.85 2 0 ## 3 -1.17 -0.95 3 0 ## 4 -2.74 -1.01 4 0 ## 5 -1.05 -0.93 5 0 ## 6 -0.91 -0.87 6 0 El optimizador encontró resultados que no tienen sentido: ggplot(reps_boot, aes(x = inv_logit(p_azar_logit), y = inv_logit(p_corr_logit), colour = factor(convergence))) + geom_point(show.legend = FALSE) + xlab("p_azar") + ylab("p_corr") Y notamos un problema grave: Tenemos mucha variación en nuestros estimadores, y la correlación entre las estimaciones es alta. Esto deberíamos haberlo esperado, pues como las probabilidades de contestar correctamente son muy similares a las de contestar al azar: Existen muchas combinaciones de parámetros que son consistentes con los datos. Decimos entonces que este modelo está mal identificado con estos datos. La mala identificación, como vemos, es una propiedad tanto de modelo como datos. ¿Qué conclusiones acerca del examen obtienes al ver estas simulaciones bootstrap? ¿Cómo se deberían reportar estos resultados? Qué pasa en este ejemplo si la \\(p_{corr}\\) es más grande, o el tamaño de muestra es más grande? Repite el ejercicio con los parámetros del primer ejemplo (\\(p_{azar} = 0.3, p_{corr}=0.75\\)) y el mismo tamaño de muestra. ¿Qué sucede en este caso? En el caso extremo, decimos que el modelo no está indentificado, y eso generalmente sucede por un problema en el planteamiento del modelo, independientemente de los datos. ¿Puedes imaginar un modelo así? "],["propiedades-teóricas-de-mle.html", "Sección 8 Propiedades teóricas de MLE Consistencia Equivarianza del \\(\\textsf{MLE}\\) Normalidad asintótica Optimalidad del \\(\\textsf{MLE}\\)", " Sección 8 Propiedades teóricas de MLE El método de máxima verosimiltud es uno de los métodos más utilizados en la inferencia estadística paramétrica. En esta sección estudiaremos las propiedades teóricas que cumplen los estimadores de máxima verosimilitud (\\(\\textsf{MLE}\\)) y que han ayudado en su casi adopción universal. Estas propiedades de los \\(\\textsf{MLE}\\) son válidas siempre y cuando el modelo \\(f(x; \\theta)\\) satisfaga ciertas condiciones de regularidad. En particular veremos las condiciones para que los estimadores de máxima verosimilitud sean: consistentes, asintóticamente normales, asintóticamente insesgados, asintóticamente eficientes, y equivariantes. Los estimadores \\(\\textsf{MLE}\\) en ocasiones son malinterpretados como una estimación puntual en la inferencia, y por ende, incapaces de cuantificar incertidumbre. A lo largo de estas notas hemos visto cómo extraer intervalos de confianza por medio de simulación y por lo tanto incorporar incertidumbre en la estimación. Sin embargo, hay otros maneras de reportar incertidumbre para \\(\\textsf{MLE}\\). Y hablaremos de ello en esta sección. A lo largo de esta sección asumiremos muestras de la forma \\[\\begin{align} X_1, \\ldots, X_n \\overset{\\text{iid}}{\\sim} f(x; \\theta^*), \\end{align}\\] donde \\(\\theta^*\\) es el valor verdadero —que suponemos desconocido pero fijo— del parámetro \\(\\theta \\in \\Theta\\), y sea \\(\\hat \\theta_n\\) el estimador de máxima verosimilitud de \\(\\theta.\\) Ejemplo Usaremos este ejemplo para ilustrar los diferentes puntos teóricos a lo largo de esta sección. Consideremos el caso de una muestra de variables binarias que registran el éxito o fracaso de un experimento. Es decir, \\(X_1, \\ldots, X_n \\sim \\textsf{Bernoulli}(p),\\) donde el párametro desconocido es el procentaje de éxitos. Éste último denotado por \\(p.\\) Este ejemplo lo hemos estudiado en secciones pasadas, y sabemos que el \\(\\textsf{MLE}\\) es \\[\\begin{align} \\hat p_n = \\frac{S_n}{n} = \\bar X_n, \\end{align}\\] donde \\(S_n= \\sum_i X_i\\) es el número total de éxitos en la muestra. La figura siguiente ilustra el estimador \\(\\hat p_n\\) como función del número de observaciones en nuestra muestra. Podemos apreciar cómo el promedio parece estabilizarse alrededor del verdadero valor de \\(p^* = 0.25\\) cuando tenemos una cantidad suficientemente grande de observaciones. Como es de esperarse, diferentes muestras tendrán diferentes valores de \\(n\\) dónde las trayectorias parezca que se haya estabilizado (Ver figura siguiente). Sin embargo, se puede notar que este comportamiento parece estar controlado y son raras las trayectorias que se encuentran más lejos. Los conceptos siguientes nos permitirán cuantificar el porcentaje de trayectorias que se mantienen cercanas a \\(p^*,\\) en el caso límite de un número grande de observaciones, cuando trabajemos con estimadores de máxima verosimilitud. Más aún, nos permitirán cracterizar la distribución para dicho límite y aprenderemos de otras propiedades bajo este supuesto asintótico. Consistencia Es prudente pensar que para un estimador, lo que nos interesa es que conforme más información tengamos, más cerca esté del valor desconocido. Esta propiedad la representamos por medio del concepto de consistencia. Para hablar de esta propiedad necesitamos definir un tipo de convergencia para una secuencia de variables aleatorias, convergencia en probabilidad. Definición. Una sucesión de variables aleatorias \\(X_n\\) converge en probabilidad a la variable aleatoria \\(X,\\) lo cual denotamos por \\(X_n \\overset{P}{\\rightarrow} X\\), si para toda \\(\\epsilon \\gt 0\\), \\[\\lim_{n \\rightarrow \\infty} \\mathbb{P}(|X_n - X| > \\epsilon) = 0.\\] Ahora, definimos un estimador consistente como: Definición. Un estimador \\(\\tilde \\theta_n\\) es consistente si converge en probabilidad a \\(\\theta^*.\\) Donde \\(\\theta^*\\) denota el verdadero valor del parámetro, que asumimos fijo. En particular, los estimadores \\(\\textsf{MLE}\\) son consistentes. Teorema. Sea \\(X_n \\sim f(X; \\theta^*),\\) una muestra iid, tal que \\(f(X; \\theta)\\) cumple con ciertas condiciones de regularidad. Entonces, \\(\\hat \\theta_n,\\) el estimador de máxima verosimilitud, converge en probabilidad a \\(\\theta^*.\\) Es decir, \\(\\hat \\theta_n\\) es consistente. La demostración de este teorema la pueden encontrar en Wasserman (2013). Ejemplo El estimador \\(\\hat p_n\\) es consistente. Esto quiere decir que el estimador se vuelve más preciso conforme obtengamos más información. En general esta es una propiedad que los estimadores deben satisfacer para ser útiles en la práctica. La figura siguiente muestra el estimador \\(\\hat p_n\\) como función del número de observaciones utilizado. Distintas curvas corresponden a distintas realizaciones de muestras obtenidas del modelo (\\(B = 500\\)). Nota que la banda definida por \\(\\epsilon\\) se puede hacer tan pequeña como se requiera, lo único que sucederá es que necesitaremos un mayor número de observaciones para garantizar que las trayectorias de los estimadores \\(\\hat p_n\\) se mantengan dentro de las bandas con alta probabilidad. Equivarianza del \\(\\textsf{MLE}\\) Muchas veces nos interesa reparametrizar la función de verosimilitud con el motivo de simplificar el problema de optimización asociado, o simplemente por conveniencia interpretativa. Por ejemplo, si el parámetro de interés es tal que \\(\\theta \\in [a, b],\\) entonces encontrar el \\(\\textsf{MLE}\\) se traduce en optimizar la log-verosimilitud en el espacio restringido al intervalo \\([a,b].\\) En este caso, los métodos tradicionales de búsqueda local por descenso en gradiente podrían tener problemas de estabilidad cuando la búsqueda se realice cerca de las cotas. El concepto de equivarianza nos dice que si el cambio de coordenadas parametrales está definida, y si este cambio de variable se realiza por medio de una función bien comportada (derivable y cuya derivada no es cero), entonces la solución de encontrar el \\(\\textsf{MLE}\\) en las coordenadas originales y transformar, es igual a realizar la inferencia en las coordenadas fáciles. Teorema. Sea \\(\\tau = g(\\theta)\\) una función de \\(\\theta\\) bien comportada. Entonces si \\(\\hat \\theta_n\\) es el \\(\\textsf{MLE}\\) de \\(\\theta,\\) entonces \\(\\hat \\tau_n = g(\\hat \\theta_n)\\) es el \\(\\textsf{MLE}\\) de \\(\\tau.\\) Ejemplo El concepto de equivarianza lo ilustraremos para nuestro ejemplo de esta sección. En particular la parametrización la realizamos por cuestiones de interpretación como un factor de riesgo. Como hemos visto estimador \\(\\hat p_n\\) es equivariante. Es importante mencionar que esta propiedad es general para cualquier tamaño de muestra. Es decir, no descansa en supuestos de muestras grandes. Supongamos que nos interesa estimar el momio de éxitos (bastante común en casas de apuestas). El momio está definido como \\[ \\theta = \\frac{p}{1-p},\\] y podemos rescribir la función de verosimilitud en términos de este parámetro. Sustituyendo \\(p = \\frac{\\theta}{1+\\theta}\\) en \\(\\mathcal{L}_n(p)\\) obtenemos \\[\\begin{align} \\mathcal{L}_n(\\theta) = \\left( \\frac{\\theta}{1 + \\theta} \\right)^{S_n} \\left(\\frac{1}{1 + \\theta} \\right)^{n - S_n}, \\end{align}\\] cuya función encuentra su máximo en \\[\\begin{align} \\hat \\theta_n = \\frac{\\bar X_n}{ 1 - \\bar X_n}. \\end{align}\\] Comprueba que el estimador de arriba para \\(\\theta\\) es el MLE. Normalidad asintótica Está propiedad nos permite caracterizar la distribución asintótica del MLE. Es decir, nos permite caracterizar la incertidumbre asociada una muestra suficientemente grande por medio de una distribución Gaussiana. Esto es, bajo ciertas condiciones de regularidad, \\[\\hat \\theta_n \\overset{.}{\\sim} \\mathsf{N}( \\theta^*, \\mathsf{ee}^2),\\] donde \\(\\mathsf{ee}\\) denota el error estándar del \\(\\textsf{MLE},\\) \\(\\mathsf{ee} = \\mathsf{ee}(\\hat \\theta_n) = \\sqrt{\\mathbb{V}(\\hat \\theta_n)}\\). Esta distribución se puede caracterizar de manera aproximada por métodos analíticos. Para esto necesitamos las siguientes definiciones. Definición. La función de score está definida como \\[\\begin{align} s(X; \\theta) = \\frac{\\partial \\log f(X; \\theta)}{\\partial \\theta}. \\end{align}\\] La información de Fisher está definida como \\[\\begin{align} I_n(\\theta) &= \\mathbb{V}\\left( \\sum_{i = 1}^ns(X_i; \\theta) \\right) \\\\ &= \\sum_{i = 1}^n \\mathbb{V} \\left(s(X_i; \\theta) \\right) \\end{align}\\] Estas cantidades nos permiten evaluar qué tan fácil será identificar el mejor modelo dentro de la familia parámetrica \\(f(X; \\theta)\\). La función de score nos dice qué tanto cambia locamente la distribución cuando cambiamos el valor del parámetro. Calcular la varianza, nos habla de la dispersión de dicho cambio a lo largo del soporte de la variable aleatoria \\(X.\\) Si \\(I_n(\\theta)\\) es grande entonces el cambio de la distribución es muy importante. Esto quiere decir que la distribución es muy diferente de las distribuciones cercanas que se generen al evaluar en \\(\\theta\\)s diferentes. Por lo tanto, si \\(I_n(\\theta)\\) es grande, la distribución será fácil de identificar cuando hagamos observaciones. La información de Fisher también nos permite caracterizar de forma analítica la varianza asíntotica del \\(\\textsf{MLE}\\) pues la aproximación \\(\\mathsf{ee}^2 \\approx \\frac{1}{I_n(\\theta^*)}\\) es válida. El siguiente resultado utiliza la propiedad de la función de score: \\(\\mathbb{E}[s(X; \\theta)] = 0,\\) que implica que \\(\\mathbb{V} \\left(s(X_i; \\theta) \\right) = \\mathbb{E}[s^2(X; \\theta)],\\) y permite a su vez un cómputo más sencillo de la información de Fisher. Teorema. El cálculo de la información de Fisher para una muestra de tamaño \\(n\\) se puede calcular de manera simplificada como \\(I_n(\\theta) = n \\, I(\\theta).\\) Por otro lado, tenemos la siguiente igualdad \\[ I(\\theta) = - \\mathbb{E}\\left( \\frac{\\partial^2 \\log f(X; \\theta)}{\\partial \\theta^2} \\right).\\] Con estas herramientas podemos formular el teorema siguiente. Teorema. Bajo ciertas condiciones de regularidad se satisface que \\(\\mathsf{ee} \\approx \\sqrt{1/I_n(\\theta^*)}\\) y \\[ \\hat \\theta_n \\overset{d}{\\rightarrow} \\mathsf{N}( \\theta^*, \\mathsf{ee}^2).\\] El resultado anterior es teóricamente interesante y nos asegura un comportamiento controlado conforme tengamos más observaciones disponibles. Sin embargo, no es práctico pues no conocemos \\(\\theta^*\\) en la práctica y por consiguiente no conoceríamos la varianza. Sin embargo, también podemos aplicar el principio de plug-in y caracterizar la varianza de la distribución asintótica por medio de \\[\\hat{\\mathsf{ee}} = \\sqrt{1/I_n(\\hat \\theta_n)}.\\] Esto último nos permite constuir intervalos de confianza, por ejemplo al 95%, a través de \\[ \\hat \\theta_n \\pm 2 \\, \\hat{\\mathsf{ee}}.\\] Asimismo, el teorema de Normalidad asintótica nos permite establecer que el \\(\\textsf{MLE}\\) es asíntoticamente insesgado. Es decir, \\[\\lim_{n \\rightarrow \\infty}\\mathbb{E}[\\hat \\theta_n] = \\theta^*.\\] Definición. Sea una muestra \\(X_1, \\ldots, X_n \\overset{iid}{\\sim} f(X; \\theta^*)\\). Un estimador \\(\\tilde \\theta_n\\) es insesgado si satisface que \\[\\mathbb{E}[\\tilde \\theta_n] =\\theta^*.\\] El sesgo del estimador es precisamente la diferencia: \\(\\textsf{Sesgo} = \\mathbb{E}[\\tilde \\theta_n] - \\theta^*.\\) Ejemplo: Información de Fisher En el caso Bernoulli obtenemos \\(I_n(\\theta) = \\frac{n}{\\theta(1-\\theta)}\\), si \\(n = 20\\) podemos comparar con \\(\\theta=0.5, 0.7, 0.8\\), library(patchwork) # Verosimilitud X_1,...,X_n ~ Bernoulli(theta) L_bernoulli <- function(n, S){ function(theta){ theta ^ S * (1 - theta) ^ (n - S) } } xy <- data.frame(x = 0:1) l_b1 <- ggplot(xy, aes(x = x)) + stat_function(fun = L_bernoulli(n = 20, S = 10)) + xlab(expression(theta)) + ylab(expression(L(theta))) + labs(title = "Verosimilitud", subtitle = "n=20, S = 10") + ylim(0, 5e-05) l_b2 <- ggplot(xy, aes(x = x)) + stat_function(fun = L_bernoulli(n = 20, S = 14)) + xlab(expression(theta)) + ylab(expression(L(theta))) + labs(title = "Verosimilitud", subtitle = "n=20, S = 14") + ylim(0, 5e-05) l_b3 <- ggplot(xy, aes(x = x)) + stat_function(fun = L_bernoulli(n = 20, S = 16)) + xlab(expression(theta)) + ylab(expression(L(theta))) + labs(title = "Verosimilitud", subtitle = "n=20, S = 19") + ylim(0, 5e-05) l_b1 + l_b2 + l_b3 Ejemplo: Normalidad Regresando a nuestro ejemplo. Veremos empiricamente que el estimador \\(\\hat \\theta_n\\) es asintóticamente normal. Esta propiedad la hemos visto anteriormente para un caso muy particular. Lo vimos en el TLC para el caso de promedios, \\(\\bar X_n,\\) que en nuestro ejemplo corresponde a \\(\\hat p_n\\). Como hemos visto, esta propiedad la satisface cualquier otro estimador que sea máximo verosímil. Por ejemplo, podemos utilizar el \\(\\mathsf{MLE}\\) de los momios. La figura que sigue muestra la distribución de \\(\\hat \\theta_n\\) para distintas remuestras \\((B = 500)\\) con distintos valores de \\(n.\\) El gráfico anterior valida empíricamente la distribución asintótica para casos de muchas observaciones. A continuación ilustraremos cómo explotar este resultado para obtener intervalos de confianza. Para el caso de \\(\\hat p_n\\) hemos visto que el error estándar se calcula analíticamente como \\[\\textsf{ee}_p^2 = \\mathbb{V}(\\hat p_n) = \\mathbb{V}\\left(\\frac1n \\sum_{i = 1}^n x_i\\right) = \\frac{p^* (1 - p^*)}{n}.\\] Éste empata con el valor del error estándar asintótico \\[\\textsf{ee}_p^2 \\approx \\sqrt{\\frac{1}{I_n(p^*)}},\\] pues la información de Fisher es igual a \\[I_n(p) = n \\, I(p) = \\frac{n}{p ( 1- p)}.\\] En este caso podemos utilizar el estimador plug-in, \\(\\hat{\\textsf{ee}}_p = \\textsf{ee}_p(\\hat p_n).\\) Para estimar el momio, \\(\\theta,\\) el cálculo no es tan fácil pues tendríamos que calcular de manera analítica la varianza de un cociente \\[\\textsf{ee}_\\theta^2 = \\mathbb{V}\\left( \\frac{\\hat p_n}{1-\\hat p_n}\\right).\\] Utilizando la distirbución asintótica, el error estándar se puede calcular mediante \\[\\textsf{ee}_\\theta \\approx \\sqrt{\\frac{1}{I_n(\\theta^*)}} = \\sqrt{\\frac{\\theta (1 + \\theta)^2 }{n}}.\\] A continuación mostramos los errores estándar para nuestro ejemplo utilizando la distribución asintótica y por medio de la distribución de bootstrap. Como es de esperarse, ambos coinciden para muestras relativamente grandes. # Genero muestra muestras <- tibble(tamanos = 2**seq(4,7)) %>% mutate(obs = map(tamanos, ~rbernoulli(., p = p_true))) calcula_momio <- function(x){ x / (1 - x) } calcula_ee_momio <- function(x){ sqrt(((1+x)**2) * x) } # Calculo MLE muestras_est <- muestras %>% group_by(tamanos) %>% mutate(media_hat = map_dbl(obs, mean), media_ee = sqrt(media_hat * (1 - media_hat)/tamanos), momio_hat = calcula_momio(media_hat), momio_ee = calcula_ee_momio(momio_hat)/sqrt(tamanos)) # Calculo por bootstrap muestras_boot <- muestras_est %>% group_by(tamanos) %>% mutate(sims_muestras = map(tamanos, ~rerun(1000, sample(muestras %>% filter(tamanos == ..1) %>% unnest(obs) %>% pull(obs), size = ., replace = TRUE))), sims_medias = map(sims_muestras, ~map_dbl(., mean)), sims_momios = map(sims_medias, ~map_dbl(., calcula_momio)), media_boot = map_dbl(sims_medias, mean), momio_boot = map_dbl(sims_momios, mean), media_ee_boot = map_dbl(sims_medias, sd), momio_ee_boot = map_dbl(sims_momios, sd) ) ## # A tibble: 4 × 5 ## # Groups: tamanos [4] ## tamanos momio_hat momio_boot momio_ee momio_ee_boot ## <dbl> <dbl> <dbl> <dbl> <dbl> ## 1 16 0.333 0.367 0.192 0.236 ## 2 32 0.333 0.342 0.136 0.140 ## 3 64 0.123 0.123 0.0492 0.0498 ## 4 128 0.407 0.417 0.0793 0.0800 Comprueba las fórmulas para los errores estándar tanto para la probabilidad de éxito como para los momios. El método delta El ejercicio anterior nos sugiere una pregunta natural: Cómo establecer la distribución asintótica de un estimador cuando ya se conoce la de una pre-imagen de él? Es decir, si ya conocemos la distribución de \\(\\theta,\\) podemos establecer la distribución de \\(\\tau = g(\\theta)?\\) La respuesta es afirmativa y la enunciamos por medio de un teorema. El resultado se conoce como el método delta. Teorema. Si \\(\\tau = g(\\theta)\\) es una función diferenciable y \\(g'(\\theta) \\neq 0\\), entonces \\[\\hat \\tau_n \\overset{d}{\\rightarrow} \\mathsf{N}( \\tau^*, \\hat{\\mathsf{ee}}^2_\\tau),\\] donde \\(\\hat \\tau_n = g(\\hat \\theta_n)\\) y \\[\\hat{\\mathsf{ee}}_\\tau = \\bigg| g'(\\hat \\theta_n) \\bigg| \\times \\hat{\\mathsf{ee}}_\\theta(\\hat \\theta_n).\\] Por ejemplo, este resultado lo podemos utilizar para nuestro experimento de Bernoullis. Pues \\(g(p) = \\frac{p}{1-p}\\) es una función diferenciable y por lo tanto \\[\\hat{\\mathsf{ee}}_\\theta = \\sqrt{\\frac1n} \\times \\left[ \\hat p_n^{1/2} (1-\\hat p_n)^{-3/2}\\right].\\] Comprueba la fórmula del método delta para el momio en función de la fracción de éxitos, y también comprueba que de el mismo resultado analítico que habías calculado en el ejercicio anterior. Optimalidad del \\(\\textsf{MLE}\\) Consideremos el caso de una muestra iid \\(X_1, \\ldots, X_n \\sim \\mathsf{N}(\\theta, \\sigma^2).\\) Y consideremos dos estimadores para \\(\\theta.\\) El primero será la media muestral \\(\\bar X_n\\) y el segundo la mediana muestral, la cual denotaremos por \\(\\tilde \\theta_n.\\) Sabemos que ambos son insesgados. Por lo tanto, en promedio emiten estimaciones correctas. Pero ¿cómo escogemos cual utilizar? Un criterio para comparar estimadores es el error cuadrático medio (\\(\\textsf{ECM}\\), por sus siglas en inglés). Definición. El error cuadrático medio de un estimador \\(\\tilde \\theta_n\\) se calcula como \\[\\textsf{ECM}[\\tilde \\theta_n] = \\mathbb{E}[(\\tilde \\theta_n - \\theta^*)^2].\\] Por lo tanto, el \\(\\textsf{ECM}\\) mide la distancia promedio entre el estimador y el valor verdadero valor del parámetro. La siguiente igualdad es bastante útil para comparar dos estimadores. \\[\\textsf{ECM}[\\tilde \\theta_n] = \\mathbb{V}\\left(\\tilde \\theta_n\\right) + \\textsf{Sesgo}\\left[\\tilde \\theta_n\\right]^2.\\] Por lo tanto si dos estimadores son insesgados, uno es más eficiente que el otro si su varianza es menor. La media sabemos que es el \\(\\textsf{MLE}\\) y por el TCL tenemos que \\[\\sqrt{n} \\left( \\bar X_n - \\theta \\right) \\overset{d}{\\rightarrow} \\mathsf{N}( 0, \\sigma^2).\\] La mediana, en contraste, tiene una distribución asintótica \\[\\sqrt{n} \\left( \\tilde X_n - \\theta \\right) \\overset{d}{\\rightarrow} \\mathsf{N}\\left( 0, \\sigma^2 \\frac{\\pi}{2}\\right),\\] es decir tiene una varianza ligeramente mayor. Por lo tanto, decimos que la mediana tiene una eficiencia relativa con respecto a la media del \\(.63 \\% (\\approx 2/\\pi)\\). Es decir, la mediana sólo utliza una fracción de los datos comparado con la media. El siguiente teorema, la desigualdad de Cramer-Rao, nos permite establecer esta resultado de manera mas general para cualquier estimador insesgado. Teorema. Sea \\(\\tilde \\theta_n\\) cualquier estimador insesgado de \\(\\theta\\) cuyo valor verdadero es \\(\\theta^*,\\) entonces \\[\\begin{align} \\mathbb{V}(\\tilde \\theta_n) \\geq \\frac{1}{n I(\\theta^*)}. \\end{align}\\] Un estimador insesgado que satisfaga esta desigualdad se dice que es eficiente. Nota que el lado derecho de la desigualdad es precisamente la varianza asintótica del \\(\\textsf{MLE}.\\) Por lo tanto, éste es asintóticamente eficiente. Es importante hacer enfásis en que la optimalidad del \\(\\textsf{MLE}\\) es un resultado asintótico. Es decir, sólo se satisface cuando tenemos un número suficiente de observaciones. Qué tan grande debe ser el tamaño de muestra varia de problema a problema. Es por esto que para muestras de tamaño finito se prefieren estimadores que minimicen el \\(\\textsf{ECM},\\) como cuando hacemos regresión ridge o utilizamos el estimador James–Stein para un vector de medias. Referencias "],["más-de-pruebas-de-hipótesis-e-intervalos.html", "Sección 9 Más de pruebas de hipótesis e intervalos Prueba de Wald Observación: pruebas \\(t\\) y práctica estadística Prueba de Wald para dos medias o proporciones Datos pareados Pruebas de cociente de verosimilitud Otro tipo de pruebas Errores tipo I y tipo II Consideraciones prácticas Pruebas múltiples", " Sección 9 Más de pruebas de hipótesis e intervalos En esta sección veremos enfoques más clásicos para analizar una prueba de hipótesis, en particular veremos situaciones donde podemos hacer algunos supuestos teóricos acerca de la distribución de las poblaciones. Esta es una sección complementaria para entender prácticas estadísticas usuales: recuerda que discutimos antes que hacer estimación por intervalos generalmente es más útil que hacer pruebas de hipótesis, y adicionalmente, tenemos también la técnica de pruebas de permutaciones que podemos aplicar en muchos de los casos que discutiremos a continuación. El enfoque básico es el mismo que cuando vimos pruebas de permutaciones: calculamos una estadística de prueba de los datos y luego, con una distribución de referencia (asociada a la hipótesis nula), calculamos un valor-\\(p\\). Si el valor-\\(p\\) es chico, entonces los resultados observados no pueden explicarse fácilmente por variación muestral, y rechazamos la hipótesis nula. Con esta idea básica, y supuestos distribucionales acerca de las poblaciones, podemos construir pruebas que requieren menos cómputo. La desventaja es que hay que checar con cuidado los supuestos distribucionales que hagamos. Si los supuestos son incorrectos, las valores-\\(p\\) no tienen mucho sentido y son difíciles de interpretar. Para esta sección seguiremos más a Wasserman (2013) (capítulo 10), pero puedes revisar también Chihara and Hesterberg (2018) (capítulo 8). Prueba de Wald Como hemos visto, existe normalidad asintótica en varios estimadores que hemos considerado, como medias y proporciones muestrales. También vimos que estimadores de máxima verosimilitud cumplen muchas veces un teorema central del límite. Así que supongamos que tenemos una estadística \\(\\hat{\\theta}_n\\) que estima \\(\\theta\\) y es asintóticamente insesgada y normal. Denotamos por \\(\\hat{\\textsf{ee}}\\) una estimación de su error estándar —hay distintas maneras de hacerlo: por ejemplo, con simulación (bootstrap), o por medios analíticos (teoría). Recuerda que el error estándar de una estadística es la desviación estándar de su distribución de muestreo. Si nos interesa probar la hipótesis de que \\(\\theta = 125\\), por ejemplo, y \\(\\hat{\\theta}_n\\) es aproximadamente normal, entonces podemos construir una distribución de referencia aproximada como sigue: Si la nula es cierta, entonces la distribución de muestreo de \\(\\hat{\\theta}\\) es aproximadamente \\(\\mathsf{N}(125, \\hat{\\textsf{ee}})\\). Esto implica que la siguiente estadística \\(W\\) es aproximadamente normal estándar bajo la nula: \\[W = \\frac{\\hat{\\theta} - 125}{\\hat{\\textsf{ee}}} \\sim \\mathsf{N}(0,1)\\] Por lo que valores lejanos de \\([-2,2]\\), por ejemplo, dan evidencia en contra de la hipótesis nula. Como \\(W\\) no depende de ningún parámetro desconocido, podemos usarla como distribución de referencia para comparar el valor de \\(W\\) que obtuvimos en la muestra. Si observamos para nuestra muestra un valor \\(W=w\\) entonces, el valor-\\(p\\) (dos colas) de esta prueba es, aproximadamente, \\[\\mathsf{valor-}p \\approx P(|Z| > |w|) = 2(1 - \\Phi(|w|))\\] donde \\(Z\\sim \\mathsf{N}(0,1)\\) y \\(\\Phi\\) es su función de distribución acumulada. Ejemplo: media muestral. La media nacional de las escuelas de enlace está alrededor de 454 (matemáticas en 6o. grado). Tomamos una muestra de 180 escuelas del Estado de México, y queremos saber si la media obtenida es consistente o no con la media nacional. Ya que estamos usando como estimador una media de una muestra iid, podemos estimar el error estándar de la media con \\[\\hat{\\textsf{ee}} = s / \\sqrt{n}\\] Obtenemos: set.seed(29) muestra_edomex <- read_csv("data/enlace.csv") %>% filter(estado == "ESTADO DE MEXICO") %>% sample_n(180) resumen <- muestra_edomex %>% summarise(media = mean(mate_6), s = sd(mate_6), n = n()) %>% mutate(ee = s / sqrt(n)) resumen ## # A tibble: 1 × 4 ## media s n ee ## <dbl> <dbl> <int> <dbl> ## 1 456. 155. 180 11.5 La hipótesis nula es que la media poblacional del Estado de México es igual a 454. Calculamos el valor-\\(p\\) usando la prueba de Wald: dif <- (resumen %>% pull(media)) - 454 ee <- resumen %>% pull(ee) w <- dif / ee p <- 2 * (1 - pnorm(abs(w))) p ## [1] 0.8410806 y vemos que esta muestra es consistente con la media nacional. No tenemos evidencia en contra de que la media del estado de México es muy similar a la nacional. Repite esta prueba con una muestra de Chiapas. ¿Qué resultado obtienes? Tenemos entonces: Prueba de Wald. Consideramos probar la hipótesis nula \\(H_0: \\theta = \\theta_0\\) contra la alternativa \\(H_1: \\theta \\neq \\theta_0\\). Suponemos que \\(\\hat{\\theta}_n\\) es asintóticamente normal e insesgada, de modo que bajo la hipótesis nula \\[\\frac{\\hat{\\theta}_n - \\theta_0}{\\hat{\\textsf{ee}}} \\sim \\mathsf{N}(0,1).\\] Entonces el valor-\\(p\\) de la prueba de Wald para esta hipótesis nula es \\[\\mathsf{valor-}p \\approx P(|Z| > |w|) = 2(1 - \\Phi(|w|)).\\] Ejemplo. Podemos hacer la prueba de Wald para proporciones con el estimador usual \\(\\hat{p}_n\\) que estima una proporción poblacional \\(p\\). En este caso, utilizamos la estimación usual del error estándar de \\(\\hat{p}_n\\), que está dada por \\[\\hat{\\textsf{ee}} = \\sqrt{\\frac{\\hat{p}_n(1-\\hat{p}_n)}{n}}.\\] Supongamos por ejemplo que en nuestros datos observamos que en \\(n=80\\) muestras independientes, tenemos \\(x=47\\) éxitos. ¿Es esto consistente con la hipótesis nula \\(p = 0.5\\)? Calcuamos primero: p_hat <- 47 / 80 ee <- sqrt(p_hat * (1 - p_hat) / 80) y la estadística \\(W\\) de prueba es: w <- (p_hat - 0.5) / ee w ## [1] 1.58978 Calculamos su valor p: valor_p <- 2 * (1 - pnorm(abs(w))) valor_p ## [1] 0.1118843 Y vemos que en este caso tenemos evidencia baja de que la proporción poblacional es distinta de 0.5. Observación: pruebas \\(t\\) y práctica estadística Con más supuestos distribucionales podemos hacer otros tipos de pruebas donde no requerimos hacer supuestos asintóticos. Por ejemplo, si suponemos que la muestra obtenida \\(X_1,\\ldots, X_n\\) proviene de una distribución normal \\(\\mathsf{N}(\\mu, \\sigma)\\) (cosa que es necesario verificar), entonces es posible demostrar que la estadística \\[T = \\frac{\\bar{X} - \\mu}{S / \\sqrt{n}}\\] tiene una distribución exacta que es \\(t\\) de Student con \\(n-1\\) grados de libertad, y no depende de otros parámetros, de manera que podemos usarla como distribución de referencia y podemos calcular valores \\(p\\) exactos (revisa la sección 8.1 de Chihara and Hesterberg (2018)). La diferencia con usar una prueba de Wald está en que aquí consideramos también la variablidad del error estándar estimado, lo que correctamente sugiere que esperamos variaciones proporcionalmente más grandes en \\(T\\) comparado con lo que sucede si no consideramos esta variación (como en la prueba de Wald). Sin embargo: Si la muestra \\(n\\) es grande, la distribución \\(t\\) de Student con \\(n-1\\) grados de libertad es muy similar a la normal estándar, de manera que la aproximación de Wald es apropiada. Cuando la muestra \\(n\\) es chica, es difícil validar el supuesto de normalidad, a menos que tengamos alguna información adicional acerca de la distribución poblacional. La prueba tiene cierta robustez a desviaciones de normalidad de las observaciones, pero si el sesgo es muy grande, por ejemplo, el supuesto es incorrecto y da valores \\(p\\) distorsionados. Puedes ver aquí, o el apéndice B.11 de Chihara and Hesterberg (2018) para ver descripciones de la distribución \\(t\\) y cómo se compara con una normal estándar dependiendo de los grados de libertad. En muchas ocasiones, en la práctica es común no checar supuestos y saltar directamente a hacer pruebas \\(t\\), lo cual no es muy seguro. Si tenemos duda de esos supuestos, podemos hacer pruebas gráficas o de permutaciones, si son apropiadas. Prueba de Wald para dos medias o proporciones Cuando tenemos dos muestras extraidas de manera independiente de dos poblaciones distintas, y queremos ver si la hipótesis de medias poblacionales iguales es consistente con los datos, podemos usar también una prueba de Wald. Sea \\(\\bar{X}_1\\) y \\(\\bar{X}_2\\) las medias muestrales correspondientes. Si la hipótesis de normalidad aplica para ambas distribuciones muestrales (normalidad asintótica), la variable \\[\\hat{\\delta} = \\bar{X}_1 - \\bar{X}_2\\] es aproximadamente normal con media \\(\\mathsf{N}(\\mu_1 - \\mu_2, \\textsf{ee})\\), donde \\(\\mu_1\\) y \\(\\mu_2\\) son las medias poblacionales correspondientes, y donde el error estándar de \\(\\hat{\\delta}\\) es la raíz de la suma de los cuadrados de los errores estándar de \\(\\bar{X}\\) y \\(\\bar{Y}\\): \\[ \\textsf{ee} = \\sqrt{\\textsf{ee}_1^2 + \\textsf{ee}_{2}^2}.\\] Se sigue entonces que: \\[\\textsf{ee} =\\sqrt{\\frac{\\sigma_1^2}{n_1}+\\frac{\\sigma_2^2}{n_2} }\\] (Nota: usa probabilidad para explicar por qué es cierto esto). De esto se deduce que bajo la hipótesis nula de igualdad de medias \\(\\mu_1 = \\mu_2\\), tenemos que la estadística de Wald \\[W = \\frac{\\hat{\\delta} - 0}{\\sqrt{\\frac{s_1^2}{n_1}+\\frac{s_2^2}{n_2}} } \\sim \\mathsf{N}(0,1)\\] es aproximamente normal estándar. Procedemos entonces a calcular el valor \\(p\\) usando la función de distribución acumulada de la normal estándar. En el caso particular de proporciones, podemos simplificar, como hicimos arriba, a \\[W = \\frac{\\hat{p}_1 - \\hat{p}_2}{\\sqrt{\\frac{\\hat{p}_1(1-\\hat{p}_1)}{n_1}+\\frac{\\hat{p}_2(1-\\hat{p}_2)}{n_2}} } \\sim \\mathsf{N}(0,1)\\] Haz una prueba comparando las medias en enlace de la Ciudad de México vs Estado de México. ¿Hay evidencia de que tienen distintas medias? Ejemplo (Wasserman (2013)). Supongamos tenemos dos conjuntos de prueba para evaluar algoritmos de predicción, de tamaños \\(n_1=100\\) y \\(n_2=250\\) respectivamente, tenemos dos algoritmos para generar predicciones de clase (digamos positivo y negativo). Usaremos el primer conjunto para evaluar el algoritmo 1 y el segundo para evaluar el algoritmo 2. El algoritmo 1 corre en 1 hora, y el algoritmo 2 tarda 24 horas. Supón que obtenemos que la tasa de clasificación correcta del primer algoritmo es \\(\\hat{p}_1 = 0.85\\), y la tasa del segundo es de \\(\\hat{p}_2 = 0.91\\). ¿Estos datos son consistentes con la hipótesis de que los algoritmos tienen desempeño muy similar? Es decir, queremos probar la hipótesis \\(p_1 = p_2\\). Calculamos la estadística de Wald: n_1 <- 100 n_2 <- 250 p_hat_1 <- 0.86 p_hat_2 <- 0.90 ee <- sqrt(p_hat_1 * (1 - p_hat_1) / n_1 + p_hat_2 * (1 - p_hat_2) / n_2) delta = p_hat_1 - p_hat_2 w <- delta / ee w ## [1] -1.011443 que da un valor p de: 2 * (1 - pnorm(abs(w))) ## [1] 0.3118042 Y vemos que valor-\\(p\\) es grande, de forma que los datos son consistentes con la hipótesis de que los algoritmos tienen desempeño similar. ¿Cómo tomaríamos nuestra decisión final? Si la diferencia entre 1 hora y 24 horas no es muy importante, entonces preferíamos usar el algoritmo 2. Sin embargo, si el costo de 24 horas es más alto que 1 hora de corrida, los datos no tienen indicios fuertes de que vayamos a perder en desempeño, y podriamos seleccionar el algoritmo 1. Datos pareados Las pruebas que acabamos de ver para comparar medias requieren poblaciones independientes. Si las dos muestras están pareadas (es decir, son dos mediciones en una misma muestra), podemos tomar considerar las diferencias \\(D_i = X_i - Y_i\\) y utilizar la prueba para una sola muestra con la media \\(\\bar{D}\\). Esta es una prueba de Wald pareada. Ejemplo (Wasserman (2013)). Ahora supongamos que utilizamos la misma muestra de tamaño \\(n=300\\) para probar los dos algoritmos. En este caso, no debemos hacer la prueba para medias de muestras independientes. Sin embargo, esto podemos ponerlo en términos de una prueba para una sola muestra. Tenemos las observaciones \\(X_1,\\ldots, X_n\\) y \\(Y_1,\\dots, Y_n\\), donde \\(X_i=1\\) si el algoritmo 1 clasifica correctamente, y 0 en otro caso. Igualmente, \\(Y_i=1\\) si el algoritmo 2 clasifica correctamente, y 0 en otro caso. Definimos \\[D_i= X_i - Y_i\\] Y \\(D_1,\\ldots, D_n\\) es una muestra iid. Ahora observemos que la media \\(\\bar{D}\\) tiene valor esperado \\(p_1 - p_2\\), donde \\(p_1\\) y \\(p_2\\) son las tasas de correctos del algoritmo 1 y del algoritmo 2 respectivamente. Podemos hacer una prueba de Wald como al principio de la sección: \\[W = \\frac{\\bar{D} - 0}{{\\textsf{ee}}}\\] Y notemos que el error estándar no se calcula como en el ejemplo anterior. Podríamos usar bootstrap para estimarlo, pero en este caso podemos usar el estimador usual \\[\\hat{\\textsf{ee}} = S / \\sqrt{n}\\] donde \\[S = \\frac{1}{n}\\sum_{i=1}^n (D_i - \\bar{D})^2\\] y nótese que necesitamos las decisiones indiviudales de cada algoritmo para cada caso, en contraste al ejemplo anterior de muestras independientes donde los errores estándar se calculaban de manera independiente. Esto tiene sentido, pues la variablidad de \\(\\bar{D}\\) depende de cómo están correlacionados los aciertos de los dos algoritmos. Supongamos por ejemplo que los datos que obtenemos son: datos_clasif %>% head ## # A tibble: 6 × 3 ## caso x y ## <chr> <dbl> <dbl> ## 1 1 1 1 ## 2 2 0 1 ## 3 3 0 1 ## 4 4 0 1 ## 5 5 0 1 ## 6 6 1 0 Como explicamos arriba, nos interesa la diferencia. Calculamos \\(d\\): datos_clasif <- datos_clasif %>% mutate(d = x - y) datos_clasif %>% head ## # A tibble: 6 × 4 ## caso x y d ## <chr> <dbl> <dbl> <dbl> ## 1 1 1 1 0 ## 2 2 0 1 -1 ## 3 3 0 1 -1 ## 4 4 0 1 -1 ## 5 5 0 1 -1 ## 6 6 1 0 1 Y ahora calculamos la media de \\(d\\) (y tasa de correctos de cada clasificador:) medias_tbl <- datos_clasif %>% summarise(across(where(is.numeric), mean, .names = "{col}_hat")) d_hat <- pull(medias_tbl, d_hat) medias_tbl ## # A tibble: 1 × 3 ## x_hat y_hat d_hat ## <dbl> <dbl> <dbl> ## 1 0.81 0.893 -0.0833 Ahora necesitamos calcular el error estándar. Como explicamos arriba, hacemos ee <- datos_clasif %>% mutate(d_hat = mean(d)) %>% mutate(dif_2 = (d - d_hat)) %>% summarise(ee = sd(dif_2) / sqrt(n())) %>% pull(ee) ee ## [1] 0.03112829 Y ahora podemos calcular la estadística \\(W\\) y el valor p correspondiente: w <- d_hat / ee valor_p <- 2 * (1 - pnorm(abs(w))) c(w = w, valor_p = valor_p) %>% round(3) ## w valor_p ## -2.677 0.007 Y vemos que tenemos evidencia considerable de que el desempeño no es el mismo: el algoritmo 2 parece ser mejor. ¿Qué pasaría si incorrectamente usaras la prueba de dos muestras para este ejemplo? ¿Qué cosa cambia en la fórmula de la estadística de Wald? Pruebas de cociente de verosimilitud Otra técnica clásica para hacer pruebas de hipótesis es el de cociente de verosimilitudes. Con esta técnica podemos hacer pruebas que involucren varios parámetros, y podemos contrastar hipótesis nulas contra alternativas especificas. Para aplicar este tipo de pruebas es necesario hacer supuestos distribucionales (modelos probabilísticos), pues estas pruebas se basan en la función de verosimilitud \\(\\mathcal{L}(\\theta; x_1,\\ldots, x_n)\\). Ejemplo. Supongamos que tenemos la hipótesis nula de que una moneda es justa (\\(p =0.5\\) de sol). En 120 tiros de la moneda (que suponemos independientes), observamos 75 soles. Recordemos la función de log-verosimilitud para el modelo binomial (ignorando constantes que no dependen de \\(p\\)) es \\[\\ell(p) = 75 \\log(p) + (120 - 75)\\log(1-p) \\] Primero calculamos el estimador de máxima verosimilitud de \\(p\\), que es \\(\\hat{p} = 75/120 = 0.625\\). Evaluamos la verosimilitud \\[\\ell(\\hat{p}) = \\ell(0.625) = 75\\log(0.625) + 45\\log(0.375) = -79.388\\] - Ahora evaluamos la verosimlitud según la hipótesis nula, donde asumimos que \\(p = 0.5\\): \\[\\ell(p_0) = \\ell(0.5) = 75\\log(0.5) + 45\\log(0.5) = -83.177\\] - Finalmente, contrastamos estos dos números con una estadística que denotamos con \\(\\lambda\\): \\[\\lambda = 2\\left[\\ell(\\hat{p}) - \\ell(p_0)\\right] = 2[\\ell(0.625)- \\ell(0.5)] = 2(3.79)=7.58\\] A \\(\\lambda\\) se le llama la estadística de cociente de verosimilitud. Tomamos la diferencia de log verosimilitudes, que es los mismo que tomar el logaritmo del cociente de verosimilitudes, y de ahí el nombre de la prueba. Nótese que cuando este número \\(\\lambda\\) es muy grande, esto implica que la hipótesis nula es menos creíble, o menos consistente con los datos, pues la nula tiene mucho menos verosimilitud de lo que los datos indican. Por otro lado, cuando este valor es cercano a 0, entonces tenemos menos evidencia en contra de la hipótesis nula. Esto se explica en la siguiente gráfica: log_verosim <- function(p){ 75 * log(p) + (120 - 75) * log(1 - p) } verosim_tbl <- tibble(p = seq(0.4, 0.7, 0.01)) %>% mutate(log_verosim = log_verosim(p)) ggplot(verosim_tbl, aes(x = p, y = log_verosim)) + geom_line() + geom_segment(x = 75/120, xend = 75/120, y = -130, yend = log_verosim(75/120), colour = "red") + geom_segment(x = 0.5, xend = 0.5, y = -130, yend = log_verosim(0.5), colour = "gray") + geom_errorbar(aes(x = 0.5, ymin = log_verosim(0.5), ymax = log_verosim(75/120)), colour = "orange", width = 0.05) + annotate("text", x = 0.48, y = -81.5, label = "3.79") + annotate("text", x = 0.515, y = -91, label ="nula", colour = "gray20") + annotate("text", x = 0.665, y = -91, label ="max verosímil", colour = "red") + labs(subtitle = expression(paste(lambda, "=2(3.79)=7.58"))) Este método puede generalizarse para que no solo aplique a hipótesis nulas donde \\(\\theta = \\theta_0\\), sino en general, \\(\\theta \\in \\Theta_0\\). Por ejemplo, podemos construir pruebas para \\(\\theta < 0.4\\). Definición. Consideramos la hipótesis nula \\(\\theta= \\theta_0\\). La estadística del cociente de verosimilitudes está dada por: \\[\\lambda = 2\\log\\left( \\frac{\\max_{\\theta}\\mathcal{L}(\\theta)}{\\max_{\\theta=\\theta_0}\\mathcal{L}(\\theta)} \\right ) = 2\\log\\left( \\frac{\\mathcal{L}(\\hat{\\theta})}{\\mathcal{L}(\\theta_0)} \\right)\\] donde \\(\\hat{\\theta}\\) es el estimador de máxima verosimilitud. Para construir una prueba asociada, como siempre, necesitamos una distribución de referencia. Esto podemos hacerlo con simulación, o usando resultados asintóticos. Distribución de referencia para pruebas de cocientes Para nuestro ejemplo anterior, podemos simular datos bajo la hipótesis nula, y ver cómo se distribuye la estadística \\(\\lambda\\): Ejemplo. Simulamos bajo la hipótesis nula como sigue: n_volados <- 120 # número de volados simulados_nula <- rbinom(4000, n_volados, p = 0.5) lambda <- function(n, x, p_0 = 0.5){ # estimador de max verosim p_mv <- x / n # log verosimilitud bajo mv log_p_mv <- x * log(p_mv) + (n - x) * log(1 - p_mv) # log verosimllitud bajo nula log_p_nula <- x * log(p_0) + (n - x) * log(1 - p_0) lambda <- 2*(log_p_mv - log_p_nula) lambda } lambda_obs <- lambda(n_volados, 75, 0.5) sims_tbl <- tibble(sim_x = simulados_nula) %>% mutate(lambda = map_dbl(sim_x, ~ lambda(n_volados, .x, p_0 = 0.5))) ggplot(sims_tbl, aes(x = lambda)) + geom_histogram(binwidth = 0.7) + geom_vline(xintercept = lambda_obs, color = "red") Con esta aproximación a la distribución de referencia podemos calcular el valor p en nuestro ejemplo anterior: valor_p <- mean(sims_tbl$lambda >= lambda_obs) valor_p ## [1] 0.00675 y observamos que tenemos evidencia fuerte en contra de la hipótesis nula: la moneda no está balanceada. Ejemplo. Este ejemplo es un poco artificial, pero lo usamos para entender mejor las pruebas de cocientes de verosimlitud. Supongamos que tenemos una muestra de \\(\\mathsf{N}(\\mu, 1)\\), y queremos probar si \\(\\mu = 8\\). Asumimos que el supuesto de normalidad y desviación estándar iugal a 1 se cumplen. set.seed(3341) n_muestra <- 100 muestra_1 <- rnorm(n_muestra, 7.9, 1) crear_log_p <- function(x){ # crear log verosim para dos muestras normales independientes. log_p <- function(params){ mu <- params[1] log_vero <- dnorm(x, mean = mu, sd = 1, log = TRUE) %>% sum log_vero } } lambda_calc <- function(muestra, crear_log_p){ log_p <- crear_log_p(muestra) res <- optim(c(0), log_p, control = list(fnscale = -1)) lambda_mv <- log_p(res$par) lambda_nula <- log_p(8.0) lambda <- 2 * (lambda_mv - lambda_nula) lambda } lambda <- lambda_calc(muestra_1, crear_log_p) lambda ## [1] 2.101775 Ahora construimos con simulación la distribución de referencia usando simulaciones bajo la nula sims_nula <- map(1:10000, ~ rnorm(n_muestra, 8, 1)) lambda_nula_sim <- map_dbl(sims_nula, ~ lambda_calc(.x, crear_log_p)) tibble(lambda = lambda_nula_sim) %>% ggplot(aes(x = lambda)) + geom_histogram() + geom_vline(xintercept = lambda, colour = "red") valor_p <- mean(lambda_nula_sim >= lambda) valor_p ## [1] 0.1537 Estos datos muestran consistencia con la hipótesis \\(\\mu = 8\\). Discusión: Nota en los dos ejemplos anteriores la similitud entre las distribuciones de referencia. En ambos casos, estas distribuciones resultan ser aproximadamente \\(\\chi\\)-cuadrada con 1 grado de libertad (ji-cuadrada). Podemos checar para el último ejemplo: teorica <- tibble(x = seq(0.1, 10, 0.01)) %>% mutate(f_chi_1 = dchisq(x, df = 1)) tibble(lambda = lambda_nula_sim) %>% ggplot() + geom_histogram(aes(x = lambda, y = ..density..), binwidth = 0.1) + geom_line(data = teorica, aes(x = x, y = f_chi_1), colour = "red") O mejor, con una gráfica de cuantiles de las simulaciones vs la téorica: tibble(lambda = lambda_nula_sim) %>% ggplot(aes(sample = lambda)) + geom_qq(distribution = stats::qchisq, dparams = list(df = 1)) + geom_qq_line(distribution = stats::qchisq, dparams = list(df = 1)) Este resultado asintótico no es trivial, y se usa comúnmente para calcular valores \\(p\\). Discutiremos más este punto más adelante. Otro tipo de pruebas Con cocientes de verosimlitud podemos diseñar pruebas para contrastar condiciones que sólo un subconjunto de parámetros cumple. Ejemplo. Supongamos que queremos hacer una prueba de igualdad de medias \\(\\mu_1 = \\mu_2\\) para dos poblaciones normales \\(\\mathsf{N}(\\mu_1, \\sigma_1)\\) y \\(\\mathsf{N}(\\mu_2, \\sigma_2)\\), donde extraemos las muestras de manera independiente, y no conocemos las desviaciones estándar. Obtenemos dos muestras (que supondremos provienen de distribuciones normales, pues ese es nuestro supuesto) set.seed(223) muestra_1 <- rnorm(80, 0.8, 0.2) muestra_2 <- rnorm(120, 0.8, 0.4) Necesitamos: 1) calcular el valor de la estadística \\(\\lambda\\) de cociente de verosimilitudes, 2) Calcular la distribución de referencia para \\(\\lambda\\) bajo la hipótesis nula y finalmente 3) Ver qué tan extremo es el valor obtenido de \\(\\lambda\\) en relación a la distribución de referencia. crear_log_p <- function(x, y){ # crear log verosim para dos muestras normales independientes. log_p <- function(params){ mu_1 <- params[1] mu_2 <- params[2] sigma_1 <- params[3] sigma_2 <- params[4] log_vero_1 <- dnorm(x, mean = mu_1, sd = sigma_1, log = TRUE) %>% sum log_vero_2 <- dnorm(y, mean = mu_2, sd = sigma_2, log = TRUE) %>% sum log_vero <- log_vero_1 + log_vero_2 #se suman por independiencia log_vero } } log_p <- crear_log_p(muestra_1, muestra_2) crear_log_p_nula <- function(x, y){ log_p <- function(params){ # misma media mu <- params[1] sigma_1 <- params[2] sigma_2 <- params[3] log_vero_1 <- dnorm(x, mean = mu, sd = sigma_1, log = TRUE) %>% sum log_vero_2 <- dnorm(y, mean = mu, sd = sigma_2, log = TRUE) %>% sum log_vero <- log_vero_1 + log_vero_2 #se suman por independiencia log_vero } } log_p_nula <- crear_log_p_nula(muestra_1, muestra_2) Ahora tenemos el problema de que no conocemos las sigma. Estas deben ser estimadas para después calcular el cociente de verosimilitud: res <- optim(c(0, 0, 1, 1), log_p, method = "Nelder-Mead", control = list(fnscale = -1)) res$convergence ## [1] 0 est_mv <- res$par names(est_mv) <- c("mu_1", "mu_2", "sigma_1", "sigma_2") est_mv ## mu_1 mu_2 sigma_1 sigma_2 ## 0.8153471 0.7819913 0.1987545 0.3940484 Y tenemos lambda_1 <- log_p(est_mv) lambda_1 ## [1] -42.76723 Ahora calculamos el máximo bajo el supuesto de la hipótesis nula: res <- optim(c(0, 1, 1), log_p_nula, method = "Nelder-Mead", control = list(fnscale = -1)) res$convergence ## [1] 0 est_mv_nula <- res$par names(est_mv) <- c("mu", "sigma_1", "sigma_2") est_mv_nula ## [1] 0.8062091 0.1989438 0.3948603 y evaluamos lambda_2 <- log_p_nula(est_mv_nula) lambda_2 ## [1] -43.07902 Finalmente, nuestra estadística \\(\\lambda\\) es lambda <- 2 * (lambda_1 - lambda_2) lambda ## [1] 0.6235661 Y ahora necesitamos calcular un valor-\\(p\\). El problema que tenemos en este punto es que bajo la hipótesis nula no están determinados todos los parámetros, así que no podemos simular de manera simple muestras para obtener la distribución de referencia. Podemos sin embargo usar bootstrap paramétrico usando los estimadores de máxima verosimilitud bajo la nula simular_boot <- function(n_1, n_2, est_mv_nula){ x <- rnorm(n_1, est_mv_nula[1], est_mv_nula[2]) y <- rnorm(n_2, est_mv_nula[1], est_mv_nula[3]) list(x = x, y = y) } lambda_nula_sim <- function(est_mv_nula){ muestras <- simular_boot(80, 120, est_mv_nula) x <- muestras$x y <- muestras$y log_p <- crear_log_p(x, y) log_p_nula <- crear_log_p_nula(x, y) est_1 <- optim(c(0,0,1,1), log_p, control = list(fnscale = -1)) est_2 <- optim(c(0,1,1), log_p_nula, control = list(fnscale = -1)) lambda <- 2*(log_p(est_1$par) - log_p_nula(est_2$par)) lambda } lambda_sim <- map_dbl(1:2000, ~ lambda_nula_sim(est_mv_nula = est_mv_nula)) Y graficamos la distribución de referencia junto con el valor de \\(\\lambda\\) que obtuvimos: tibble(lambda = lambda_sim) %>% ggplot(aes(x = lambda)) + geom_histogram() + geom_vline(xintercept = lambda, colour = "red") Y claramente los datos son consistentes con medias iguales. El valor-\\(p\\) es mean(lambda_sim > lambda) ## [1] 0.4275 Verificamos una vez más que la distribución de referencia es cercana a una \\(\\chi\\)-cuadrada con un grado de libertad. tibble(lambda = lambda_sim) %>% ggplot(aes(sample = lambda)) + geom_qq(distribution = stats::qchisq, dparams = list(df = 1)) + geom_qq_line(distribution = stats::qchisq, dparams = list(df = 1)) Esta es la definición generalizada de las pruebas de cociente de verosimilitudes Definición. Consideramos la hipótesis nula \\(\\theta \\in \\Theta_0\\). La estadística del cociente de verosimilitudes está dada por: \\[\\lambda = 2\\log\\left( \\frac{\\max_{\\theta}\\mathcal{L}(\\theta)}{\\max_{\\theta\\in\\Theta_0}\\mathcal{L}(\\theta)} \\right ) = 2\\log\\left( \\frac{ \\mathcal{L}(\\hat{\\theta})}{\\mathcal{L}(\\hat{\\theta}_0)} \\right)\\] donde \\(\\hat{\\theta}\\) es el estimador de máxima verosimilitud de \\(\\theta\\) y \\(\\hat{\\theta}_0\\) es el estimador de máxima verosimilitud de \\(\\theta\\) cuando restringimos a que \\(\\theta \\in \\Theta_0\\). En nuestro ejemplo anterior, el espacio \\(\\Theta_0\\) era \\(\\{ (\\mu,\\mu,\\sigma_1, \\sigma_2)\\}\\), que es un subconjunto de \\(\\{ (\\mu_1,\\mu_2,\\sigma_1, \\sigma_2)\\}\\). Nótese que el espacio \\(\\Theta_0\\) tiene tres parámetros libres, mientras que el espacio total tiene 4. Aunque podemos usar el bootstrap paramétrico para construir distribuciones de referencia para estas pruebas y calcular un valor-\\(p\\), el siguiente teorema, cuya demostración no es trivial, explica las observaciones que hicimos arriba. Este teorema enuncia la estrategia del enfoque clásico, que utiliza una aproximación asintótica. Valores p para pruebas de cocientes de verosimilitud. Supongamos que \\(\\theta = (\\theta_1,\\theta_2, \\ldots, \\theta_p)\\). Sea \\[\\Theta_0 = \\{\\theta : \\theta_1 = a_1, \\theta_2 = a_2, \\dots, \\theta_q = a_q \\},\\] es decir la hipótesis \\(\\theta \\in \\Theta_0\\) es que los primeros \\(q\\) parámetros de \\(\\theta\\) estan fijos en algún valor. Los otros parámetros no se consideran en esta prueba. Si \\(\\lambda\\) es la estadística de cociente de verosimilitudes de esta prueba, entonces, bajo la nula \\(\\theta \\in \\Theta_0\\) tenemos que la distribución de \\(\\lambda\\) es asintóticamente \\(\\chi\\)-cuadrada con \\(q\\) grados de libertad, denotada por \\(\\chi^2_q\\). El valor-\\(p\\) para esta prueba es \\[P(\\chi^2_{q} > \\lambda)\\] Observaciones: Para hacer cálculos con la distribución \\(\\chi\\)-cuadrada usamos rutinas numéricas (por ejemplo la función pchisq en R). Nótese que \\(p\\) es la dimensión del espacio \\(\\Theta\\) (\\(p\\) parámetros), y que \\(p-q\\) es la dimensión del espacio \\(\\Theta_0\\) (pues \\(q\\) parámetros están fijos), de modo que los grados de libertad son la dimensión de \\(\\Theta\\) menos la dimensión de \\(\\Theta_0\\). En nuestro primer ejemplo (proporción de éxitos) solo teníamos un parámetro. El espacio \\(\\Theta_0\\) es de dimensión 0, así que los grados de libertad son \\(1 = 1 - 0\\) En este último ejemplo donde probamos igualdad de medias, el espacio \\(\\Theta\\) tiene dimensión 4, y el espacio \\(\\Theta_0\\) es de dimensión 3 (tres parámetros libres), por lo tanto los grados de libertad son \\(1 = 4 -3\\). Ejemplo En nuestro ejemplo de prueba de igualdad de medias, usaríamos pchisq(lambda, df =1, lower.tail = FALSE) ## [1] 0.4297252 que es similar al que obtuvimos con la estrategia del bootstrap paramétrico. Errores tipo I y tipo II En algunas ocasiones, en lugar de solamente calcular un valor-\\(p\\) queremos tomar una decisión asociada a distintas hipótesis que consideramos posibles. Por ejemplo, nuestra hipótesis nula podría ser Hipótesis nula \\(H_0\\): Una medicina nueva que estamos probando no es efectiva en reducir el colesterol en pacientes. Y queremos contrastar con una alternativa: Hipótesis alternativa \\(H_A\\): la medicina nueva reduce los niveles de colesterol en los pacientes. La decisión que está detrás de estas pruebas es: si no podemos rechazar la nula, la medicina no sale al mercado. Si rechazamos la nula, entonces la medicina es aprobada para salir al mercado. Para diseñar esta prueba, procedemos como sigue: Definimos cómo recolectar datos \\(X\\) de interés Definimos una estádistica \\(T(X)\\) de los datos. Definimos una región de rechazo \\(R\\) de valores tales que si \\(T(X)\\in R\\), entonces rechazaremos la hipótesis nula (e implícitamente tomaríamos la decisión asociada a la alternativa). Ejecutamos la prueba observando datos \\(X=x\\), calculando \\(T(x)\\), y checando si \\(T(x) \\in R\\). Si esto sucede entonces decimos que rechazamos la hipótesis nula, y tomamos la decisión asociada a la alternativa. Ejemplo. Si tenemos la hipótesis nula \\(p_1=0.5\\) para una proporción, y al alternativa es \\(p_1\\neq 0.5\\), podemos usar la estadística de Wald \\(T(x) = \\frac{\\hat{p_1} - 0.5}{\\hat{\\textsf{ee}}}\\). Podríamos definir la región de rechazo como \\(R = \\{T(x) : |T(x)| > 3 \\}\\) (rechazamos si en valor absoluto la estadística de Wald es mayor que 3). Cuando diseñamos una prueba de este tipo, quisiéramos minimizar dos tipos de errores: Rechazar la hipótesis nula \\(H_0\\) cuando es cierta: Error tipo I No rechazar la hipótesis nula \\(H_0\\) cuando \\(H_0\\) es falsa: Error tipo II La gravedad de cada error depende del problema. En nuestro ejemplo de la medicina, por ejemplo: Un error tipo II resultaría en una medicina efectiva que no sale al mercado, lo que tiene consecuencias financieras (para la farmaceútica) y costos de oportunidad en salud (para la población). Por otra parte, Un error tipo I resultaría en salir al mercado con una medicina que no es efectiva. Esto tiene costos de oportunidad financieros que pueden ser grandes para la sociedad. Todos estos costos dependen, por ejempĺo, de qué tan grave es la enfermedad, qué tan costosa es la medicina, y así sucesivamente. En el enfoque más clásico, los errores tipo I y tipo II generalmente no se balancean según su severidad o probabilidad. En lugar de eso, generalmente se establece un límite para la probabilidad de cometer un error del tipo I (usualmente 5%, por una tradición que no tiene mucho fundamento) En vista de este ejemplo simple, y las observaciones de arriba: Reducir una decisión compleja a una prueba de hipótesis con resultados binarios (rechazar o no) es generalmente erróneo. Las pruebas de hipótesis se usan muchas veces incorrectamente cuando lo más apropiado es usar estimación por intervalos o algo similar que cuantifique la incertidumbre de las estimaciones. Consulta por ejemplo el comunicado de la ASA acerca de p-values y pruebas de hipótesis En el caso de la medicina, por ejemplo, realmente no nos interesa que la medicina sea mejor que un placebo. Nos importa que tenga un efecto considerable en los pacientes. Si estimamos este efecto, incluyendo incertidumbre, tenemos una mejor herramienta para hacer análisis costo-beneficio y tomar la decisión más apropiada. Como dijimos, típicamente se selecciona la región de rechazo de forma que bajo la hipótesis nula la probabilidad de cometer un error tipo I está acotada. Definición. Supongamos que los datos \\(X_1,X_2,\\ldots, X_n\\) provienen de una distribución \\(F_\\theta\\), donde no conocemos \\(\\theta\\). Supongamos que la hipótesis nula es que \\(\\theta = \\theta_0\\) (que llamamos una hipótesis simple). La función de potencia de una prueba con región de rechazo \\(R\\) se define como la probabilidad de rechazar para cada posible valor del parámetro \\(\\theta\\) \\[\\beta(\\theta) = P_\\theta (X\\in R).\\] El tamaño de una prueba se define como el valor \\[\\alpha = \\beta(\\theta_0),\\] es decir, la probabilidad de rechazar la nula (\\(\\theta = \\theta_0\\)) erróneamente. Observación. Esto se generaliza para hipótesis compuestas, donde la nula es que el parámetro \\(\\theta\\) está en un cierto conjunto \\(\\Theta_0\\). Por ejemplo, una hipótesis nula puede ser \\(\\theta < 0.5\\). En este caso, \\(\\alpha\\) se define como el valor más grande que \\(\\beta(\\theta)\\) toma cuando \\(\\theta\\) está en \\(\\Theta_0\\), es decir, la probabilidad de rechazo más grande cuando la hipótesis nula se cumple. Decimos que una prueba tiene nivel de significancia de \\(\\alpha\\) si su tamaño es menor o igual a \\(\\alpha\\). Decimos que la potencia de una prueba es la probabilidad de, correctamente, rechazar la hipótesis nula cuando la alterna es verdadera: \\[\\beta(\\theta_a) = P_{\\theta_a} (X \\in R).\\] Observación: Sería deseable encontrar la prueba con mayor potencia bajo \\(H_a\\), entre todas las pruebas con tamaño \\(\\alpha\\). Esto no es trivial y no siempre existe. Observación: El valor \\(p\\) es el menor tamaño con el que podemos rechazar \\(H_0\\). Ejemplo (Chihara and Hesterberg (2018)) Supongamos que las calificaciones de Enlace de alumnos en México se distribuye aproximadamente como una normal con media 515 y desviación estándar de 120. En una ciudad particular, se quiere decidir si es neceario pedir fondos porque la media de la ciudad es más baja que la nacional. Nuestra hipótesis nula es \\(H_0: \\mu \\geq 515\\) y la alternativa es \\(\\mu < 515\\), así que si rechazamos la nula se pedirían los fondos. Supondremos que la distribución de calificaciones en la ciudad es también aproximadamente normal con desviación estándar de 130. Se plantea tomar una muestra de 100 alumnos, y rechazar si la media muestral \\(\\bar{X}\\) es menor que 505. ¿Cuál es la probabilidad \\(\\alpha\\) de tener un error de tipo I? La función de potencia es \\[\\beta(\\mu) = P_\\mu(\\bar{X} < 505)\\] Restando la media \\(\\mu\\) y estandarizando obtenemos \\[\\beta(\\mu) = P \\left (\\frac{\\bar{X} - \\mu}{130/\\sqrt{100}} < \\frac{505 -\\mu}{130/\\sqrt{100}} \\right )\\] así que \\[\\beta(\\mu) = \\Phi \\left (\\frac{505 -\\mu}{130/\\sqrt{100}}\\right ),\\] donde \\(\\Phi\\) es la función acumulada de la normal estándar. La gráfica de la función potencia es entonces potencia_tbl <- tibble(mu = seq(450, 550, 1)) %>% mutate(beta = pnorm((505 - mu)/13)) %>% # probabilidad de rechazar mutate(nula_verdadera = factor(mu >= 515)) # nula verdadera ggplot(potencia_tbl, aes(x = mu, y = beta, colour = nula_verdadera)) + geom_line() Es decir, si la media \\(\\mu\\) de la ciudad es muy baja, con mucha seguridad rechazamos. Si es relativamente alta entonces no rechazamos. El tamaño de la prueba es el mayor valor de probabilidad de rechazo que se obtiene sobre los valores \\(\\mu\\geq 515\\) (la nula). Podemos calcularlo analíticamente como sigue: Si \\(\\mu \\geq 515\\), entonces \\[\\beta(\\mu) \\leq \\beta(515) = \\Phi\\left (\\frac{505 -515}{130/\\sqrt{100}}\\right ) = \\Phi( - 10 / 13) = \\Phi(-0.7692)\\] que es igual a pnorm(-0.7692) ## [1] 0.2208873 Y este es el tamaño de la prueba. En otras palabras: si la ciudad no está por debajo de la media nacional, hay una probabilidad de 22% de que erróneamente se pidan fondos (al rechazar \\(H_0\\)). Ejemplo Supongamos que los que programan el presupuesto deciden que se requiere tener una probabilidad de a lo más 5% de rechazar erróneamente la hipótesis nula (es decir, pedir fondos cuando en realidad su media no está debajo de la nacional) para poder recibir fondos. ¿Cuál es la región de rechazo que podríamos escoger? En el caso anterior usamos la región \\(\\bar{X}<505\\). Si el tamaño de muestra está fijo en \\(n=100\\) (por presupuesto), entonces tenemos que escoger un punto de corte más extremo. Si la región de rechazo es \\(\\bar{X} < C)\\) entonces tenemos, siguiendo los cálculos anteriores, que \\[0.05 = \\alpha = \\Phi \\left ( \\frac{C -515}{130/\\sqrt{100}}\\right) = \\Phi \\left( \\frac{C- 515}{13} \\right)\\] Buscamos el cuantil 0.05 de la normal estándar, que es z_alpha <- qnorm(0.05) z_alpha ## [1] -1.644854 Y entonces requerimos que \\[\\frac{C- 515}{13} = -1.6448.\\] Despejando obtenemos C <- 13*z_alpha + 515 C ## [1] 493.6169 Así que podemos usar la región \\(\\bar{X} < 493.5\\), que es más estricta que la anterior de \\(\\bar{X} < 505\\). Considera la potencia de la prueba \\(\\beta(\\mu)\\) que vimos arriba. Discute y corre algunos ejemplos para contestar las siguientes preguntas: Recuerda la definición: ¿qué significa \\(\\beta(\\mu)\\)? ¿Qué pasa con la potencia cuando \\(\\mu\\) está más lejos de los valores de la hipótesis nula? ¿Qué pasa con la potencia cuando hay menos variabilidad en la población? ¿Y cuando la muestra es más grande? ¿Qué pasa si hacemos más chico el nivel de significancia? Consideraciones prácticas Algunos recordatorios de lo que hemos visto: Rechazar la nula no quiere decir que la nula es falsa, ni que encotramos un “efecto”. Un valor-\\(p\\) chico tampoco quiere decir que la nula es falsa. Lo que quiere decir es que la nula es poco consistente con los datos que observamos, o que es muy poco probable que la nula produzca los datos que observamos. Rechazar la nula (encontrar un efecto “significativo”) no quiere decir que el efecto tiene importancia práctica. Si la potencia es alta (por ejemplo cuando el tamaño de muestra es grande), puede ser que la discrepancia de los datos con la nula es despreciable, entonces para fines prácticos podríamos trabajar bajo el supuesto de la nula. Por eso en general preferimos hacer estimación que pruebas de hipótesis para entender o resumir los datos y tamaños de las discrepancias. Adicionalmente, muchas de las hipótesis nulas que generalmente se utilizan se pueden rechazar sin datos (por ejemplo, igualdad de proporciones en dos poblaciones reales). Lo que importa es qué tan diferentes son, y qué tan bien podemos estimar sus diferencias. En la literatura, muchas veces parece que “encontrar una cosa interesante” es rechazar una hipótesis nulas con nivel 5% de significancia. Es más importante entender cómo se diseñó el estudio, cómo se recogieron los datos, cuáles fueron las decisiones de análisis que pasar el mítico nivel de 5% Cuando la potencia es baja (por ejemplo porque el tamaño de muestra es muy chico), tenemos que observar diferencias muy grandes para rechazar. Si probamos algo poco factible (por ejemplo, que la vitamina \\(C\\) aumenta la estatura a los adultos), entonces los rechazos generalmente se deben a variabilidad en la muestra (error tipo II). Cuando diseñamos y presentamos resultados de un estudio o análisis, es mejor pensar en describir los datos y su variabilidad, y mostrar estimaciones incluyendo fuentes de incertidumbre, en lugar de intentar resumir con un valor-\\(p\\) o con el resultado de una prueba de hipótesis. Pruebas múltiples En algunas ocasiones se hacen muchas pruebas para “filtrar” las cosas que son interesantes y las que no. Por ejemplo, cuando comparamos miles de genes entre dos muestras (la nula es que son similares). Si cada prueba se conduce a un nivel \\(\\alpha\\), la probablilidad de tener al menos un rechazo falso (un error tipo I) es considerablemente más alta que \\(\\alpha\\). Por ejemplo, si repetimos una prueba de hipótesis con nivel \\(\\alpha\\) con muestras independientes, la probabilidad de tener al menos un rechazo falso es \\(1-(1-\\alpha)^n\\), que es muy cercano a uno si \\(n\\) es grande (¿cómo derivas esta fórmula?). Por ejemplo, si \\(\\alpha = 0.05\\) y \\(n = 100\\), con más de 99% probabilidad tendremos al menos un rechazo falso, o un “hallazgo” falso. Sin \\(n\\) es muy grande, varios de los hallazgos que encontremos serán debidos a variabilidad muestral. Puedes ver en (Wasserman 2013), sección 10.7 métodos conservadores como corrección de Bonferroni (sólo rechazar cuando el valor-\\(p\\) es menor a \\(0.05/n\\)), o la técnica más moderna de control de tasa de descubrimientos falsos (FDR). Cuando estamos en una situación como esta (que es más retadora en cuanto a análisis), sin embargo, sugerimos usar estimaciones que tomen cuenta todos los datos con regularización apropiada: por ejemplo, en lugar de trabajar con cada muestra por separado, intentamos construir un modelo para el proceso completo de muestreo. Una posibilidad son modelos jerárquicos bayesianos. Ver por ejemplo (Gelman, Hill, and Yajima 2012). Referencias "],["introducción-a-inferencia-bayesiana-1.html", "Sección 10 Introducción a inferencia bayesiana Un primer ejemplo completo de inferencia bayesiana Ejemplo: estimando una proporción Ejemplo: observaciones uniformes Probabilidad a priori Análisis conjugado Pasos de un análisis de datos bayesiano Verificación predictiva posterior Predicción", " Sección 10 Introducción a inferencia bayesiana Para esta sección seguiremos principalmente Kruschke (2015). Adicionalmente puedes ver la sección correspondiente de Chihara and Hesterberg (2018). En las secciones anteriores estudiamos el método de máxima verosimilitud y métodos de remuestreo. Esto lo hemos hecho para estimar parámetros, y cuantificar la incertidumbre qué tenemos acerca de valores poblacionales. La inferencia bayesiana tiene objetivos similares. Igual que en máxima verosimilitud, la inferencia bayesiana comienza con modelos probabilísticos y observaciones. En contraste con máxima verosimilitud, la inferencia bayesiana está diseñada para incorporar información previa o de expertos que tengamos acerca de los parámetros de interés. La inferencia bayesiana cubre como caso particular métodos basados en máxima verosimilitud. El concepto probabilístico básico que utilizamos para construir estos modelos y la inferencia es el de probabilidad condicional: la probabilidad de que ocurran ciertos eventos dada la información disponible del fenómeno que nos interesa. Un primer ejemplo completo de inferencia bayesiana Consideremos el siguiente problema: Nos dan una moneda, y solo sabemos que la moneda puede tener probabilidad \\(3/5\\) de tirar sol (está cargada a sol) o puede ser una moneda cargada a águila, con probabilidad \\(2/5\\) de tirar sol. Vamos a lanzar la moneda dos veces y observamos su resultado (águila o sol). Queremos decir algo acerca de qué tan probable es que hayamos tirado la moneda cargada a sol o la moneda cargada a águila. En este caso, tenemos dos variables: \\(X\\), que cuenta el número de soles obtenidos en el experimento aleatorio, y \\(\\theta\\), que da la probabilidad de que un volado resulte en sol (por ejemplo, si la moneda es justa entonces \\(\\theta = 0.5\\)). ¿Qué cantidades podríamos usar para evaluar qué moneda es la que estamos usando? Si hacemos el experimento, y tiramos la moneda 2 veces, podríamos considerar la probabilidad \\[P(\\theta = 0.4 | X = x)\\] donde \\(x\\) es el número de soles que obtuvimos en el experimento. Esta es la probabilidad condicional de que estemos tirando la moneda con probabilidad de sol 2/5 dado que observamos \\(x\\) soles. Por ejemplo, si tiramos 2 soles, deberíamos calcular \\[P(\\theta=0.4|X=2).\\] ¿Cómo calculamos esta probabilidad? ¿Qué sentido tiene? Usando reglas de probabildad (regla de Bayes en particular), podríamos calcular \\[P(\\theta=0.4|X=2) = \\frac{P(X=2 | \\theta = 0.4) P(\\theta =0.4)}{P(X=2)}\\] Nota que en el numerador uno de los factores, \\(P(X=2 | \\theta = 0.4),\\) es la verosimilitud. Así que primero necesitamos la verosimilitud: \\[P(X=2|\\theta = 0.4) = (0.4)^2 = 0.16.\\] La novedad es que ahora tenemos que considerar la probabilidad \\(P(\\theta = 0.4)\\). Esta cantidad no la habíamos encontrado antes. Tenemos que pensar entonces que este parámetro es una cantidad aleatoria, y puede tomar dos valores \\(\\theta=0.4\\) ó \\(\\theta = 0.6\\). Considerar esta cantidad como aleatoria requiere pensar, en este caso, en cómo se escogió la moneda, o qué sabemos acerca de las monedas que se usan para este experimento. Supongamos que en este caso, nos dicen que la moneda se escoge al azar de una bolsa donde hay una proporción similar de los dos tipos de moneda (0.4 ó 0.6). Es decir el espacio parametral es \\(\\Theta = \\{0.4, 0.6\\},\\) y las probabilidades asociadas a cada posibilidad son las mismas. Es decir, tenemos \\[P(\\theta = 0.4) = P(\\theta = 0.6) =0.5,\\] que representa la probabilidad de escoger de manera aleatoria la moneda con una carga en particular. Ahora queremos calcular \\(P(X=2)\\), pero con el trabajo que hicimos esto es fácil. Pues requiere usar reglas de probabilidad usuales para hacerlo. Podemos utilizar probabilidad total \\[\\begin{align} P(X) &= \\sum_{\\theta \\in \\Theta} P(X, \\theta)\\\\ &= \\sum_{\\theta \\in \\Theta} P(X\\, |\\, \\theta) P(\\theta), \\end{align}\\] lo cual en nuestro ejemplo se traduce en escribir \\[ P(X=2) = P(X=2|\\theta = 0.4)P(\\theta = 0.4) + P(X=2|\\theta=0.6)P(\\theta =0.6),\\] por lo que obtenemos \\[P(X=2) = 0.16(0.5) + 0.36(0.5) = 0.26.\\] Finalmente la probabilidad de haber escogido la moneda con carga \\(2/5\\) dado que observamos dos soles en el lanzamiento es \\[P(\\theta=0.4|X=2) = \\frac{0.16(0.5)}{0.26} \\approx 0.31.\\] Es decir, la probabilidad posterior de que estemos tirando la moneda \\(2/5\\) baja de 0.5 (nuestra información inicial) a 0.31. Este es un ejemplo completo, aunque muy simple, de inferencia bayesiana. La estrategia de inferencia bayesiana implica tomar decisiones basadas en las probabilidades posteriores. ¿Cuál sería la estimación de máxima verosimilitud para este problema? ¿Cómo cuantificaríamos la incertidumbre en la estimación de máxima verosimilitud? Finalmente, podríamos hacer predicciones usando la posterior predictiva. Si \\({X}_{nv}\\) es una nueva tirada adicional de la moneda que estamos usando, nos interesaría saber: \\[P({X}_{nv}=\\mathsf{sol}\\, | \\, X=2)\\] Notemos que un volado adicional es un resultado binario. Por lo que podemos calcular observando que \\(P({X}_{nv}|X=2, \\theta)\\) es una variable Bernoulli con probabilidad \\(\\theta\\), que puede valer 0.4 ó 0.6. Como tenemos las probabilidades posteriores \\(P(\\theta|X=2)\\) podemos usar probabilidad total, condicionado en \\(X=2\\): \\[\\begin{align*} P({X}_{nv}=\\mathsf{sol}\\, | \\, X=2) & = \\sum_{\\theta \\in \\Theta} P({X}_{nv}=\\mathsf{sol}, \\theta \\, | \\, X=2) & \\text{(probabilidad total)}\\\\ &= \\sum_{\\theta \\in \\Theta} P({X}_{nv}=\\mathsf{sol}\\, | \\theta , X=2) P(\\theta \\, | \\, X=2) & \\text{(probabilidad condicional)}\\\\ &= \\sum_{\\theta \\in \\Theta} P({X}_{nv}=\\mathsf{sol}\\, | \\theta ) P(\\theta \\, | \\, X=2), & \\text{(independencia condicional)} \\end{align*}\\] lo que nos da el siguiente cálculo \\[P(X_{nv}=\\mathsf{sol}\\, |\\, \\theta=0.4) \\, P(\\theta=0.4|X=2) \\, +\\, P(X_{nv}=\\mathsf{sol}|\\theta = 0.6) \\, P(\\theta =0.6|X=2)\\] Es decir, promediamos ponderando con las probabilidades posteriores. Por lo tanto obtenemos \\[P(X_{nv} = \\mathsf{sol}|X=2) = 0.4 ( 0.31) + 0.6 (0.69) = 0.538.\\] Observación 0 Nótese que en contraste con máxima verosimilitud, en este ejemplo cuantificamos con probabilidad condicional la incertidumbre de los parámetros que no conocemos. En máxima verosimilitud esta probabilidad no tiene mucho sentido, pues nunca consideramos el parámetro desconocido como una cantidad aleatoria. Observación 1 Nótese el factor \\(P(X=2)\\) en la probabilidad posterior puede entenderse como un factor de normalización. Notemos que los denominadores en la distribución posterior son \\[P(X=2 | \\theta = 0.4) P(\\theta =0.4) = 0.16(0.5) = 0.08,\\] y \\[P(X=2 | \\theta = 0.6) P(\\theta =0.6) = 0.36(0.5) = 0.18.\\] Las probabilidades posteriores son proporcionales a estas dos cantidades, y como deben sumar uno, entonces normalizando estos dos números (dividiendo entre su suma) obtenemos las probabilidades. Observación 2 La nomenclatura que usamos es la siguiente: Como \\(X\\) son los datos observados, llamamos a \\(P(X|\\theta)\\) la verosimilitud, o modelo de los datos. A \\(P(\\theta)\\) le llamamos la distribución inicial o previa. La distribución que usamos para hacer inferencia \\(P(\\theta|X)\\) es la distribución final o posterior. Para utilizar inferencia bayesiana, hay que hacer supuestos para definir las primeras dos partes del modelo. La parte de iniciales o previas está ausente de enfoques como máxima verosimlitud usual. Observación 3 ¿Cómo decidimos las probabilidades iniciales, por ejemplo \\(P(\\theta=0.4)\\) ? Quizá es un supuesto y no tenemos razón para pensar que se hace de otra manera. O quizá conocemos el mecanismo concreto con el que se selecciona la moneda. Discutiremos esto más adelante. Observación 4 ¿Cómo decidimos el modelo de los datos? Aquí típicamente también tenemos que hacer algunos supuestos, aunque algunos de estos pueden estar basados en el diseño del estudio, por ejemplo. Igual que cuando usamos máxima verosimilitud, es necesario checar que nuestro modelo ajusta razonablemente a los datos. Ejercicio Cambia distintos parámetros del número de soles observados, las probabilidades de sol de las monedas, y las probabilidades iniciales de selección de las monedas. n_volados <- 2 # posible valores del parámetro desconocido theta = c(0.4, 0.6) # probabilidades iniciales probs_inicial <- tibble(moneda = c(1, 2), theta = theta, prob_inicial = c(0.5, 0.5)) probs_inicial ## # A tibble: 2 × 3 ## moneda theta prob_inicial ## <dbl> <dbl> <dbl> ## 1 1 0.4 0.5 ## 2 2 0.6 0.5 # verosimilitud crear_verosim <- function(no_soles){ verosim <- function(theta){ # prob de observar no_soles en 2 volados con probabilidad de sol theta dbinom(no_soles, n_volados, theta) } verosim } # evaluar verosimilitud verosim <- crear_verosim(2) # ahora usamos regla de bayes para hacer tabla de probabilidades tabla_inferencia <- probs_inicial %>% mutate(verosimilitud = map_dbl(theta, verosim)) %>% mutate(inicial_x_verosim = prob_inicial * verosimilitud) %>% # normalizar mutate(prob_posterior = inicial_x_verosim / sum(inicial_x_verosim)) tabla_inferencia %>% mutate(moneda_obs = moneda) %>% select(moneda_obs, theta, prob_inicial, verosimilitud, prob_posterior) ## # A tibble: 2 × 5 ## moneda_obs theta prob_inicial verosimilitud prob_posterior ## <dbl> <dbl> <dbl> <dbl> <dbl> ## 1 1 0.4 0.5 0.16 0.308 ## 2 2 0.6 0.5 0.36 0.692 ¿Qué pasa cuando el número de soles es 0? ¿Cómo cambian las probabilidades posteriores de cada moneda? Incrementa el número de volados, por ejemplo a 10. ¿Qué pasa si observaste 8 soles, por ejemplo? ¿Y si observaste 0? ¿Qué pasa si cambias las probabilidades iniciales (por ejemplo incrementas la probabilidad inicial de la moneda 1 a 0.9)? Justifica las siguientes aseveraciones (para este ejemplo): Las probabilidades posteriores o finales son una especie de punto intermedio entre verosimilitud y probablidades iniciales. Si tenemos pocas observaciones, las probabilidades posteriores son similares a las iniciales. Cuando tenemos muchos datos, las probabilidades posteriores están más concentradas, y no es tan importante la inicial. Si la inicial está muy concentrada en algún valor, la posterior requiere de muchas observaciones para que se pueda concentrar en otros valores diferentes a los de la inicial. Ahora resumimos los elementos básicos de la inferencia bayesiana, que son relativamente simples: Inferencia bayesiana. Con la notación de arriba: Como \\(X\\) son los datos observados, llamamos a \\(P(X|\\theta)\\) la verosimilitud, proceso generador de datos o modelo de los datos. El factor \\(P(\\theta)\\) le llamamos la distribución inicial o previa. La distribución que usamos para hacer inferencia \\(P(\\theta|X)\\) es la distribución final o posterior Hacemos inferencia usando la ecuación \\[P(\\theta | X) = \\frac{P(X | \\theta) P(\\theta)}{P(X)}\\] que también escribimos: \\[P(\\theta | X) \\propto P(X | \\theta) P(\\theta)\\] donde \\(\\propto\\) significa “proporcional a”. No ponemos \\(P(X)\\) pues como vimos arriba, es una constante de normalización. En estadística Bayesiana, las probablidades posteriores \\(P(\\theta|X)\\) dan toda la información que necesitamos para hacer inferencia. ¿Cuándo damos probablidad alta a un parámetro particular \\(\\theta\\)? Cuando su verosimilitud es alta y/o cuando su probabilidad inicial es alta. De este modo, la posterior combina la información inicial que tenemos acerca de los parámetros con la información en la muestra acerca de los parámetros (verosimilitud). Podemos ilustrar como sigue: Ejemplo: estimando una proporción Consideremos ahora el problema de estimar una proporción \\(\\theta\\) de una población dada usando una muestra iid \\(X_1,X_2,\\ldots, X_n\\) de variables Bernoulli. Ya sabemos calcular la verosimilitud (el modelo de los datos): \\[P(X_1=x_1,X_2 =x_2,\\ldots, X_n=x_n|\\theta) = \\theta^k(1-\\theta)^{n-k},\\] donde \\(k = x_1 + x_2 +\\cdots + x_k\\) es el número de éxitos que observamos. Ahora necesitamos una distribución inicial o previa \\(P(\\theta)\\). Aunque esta distribución puede tener cualquier forma, supongamos que nuestro conocimiento actual podemos resumirlo con una distribución \\(\\mathsf{Beta}(3, 3)\\): \\[P(\\theta) \\propto \\theta^2(1-\\theta)^2.\\] La constante de normalización es 1/30, pero no la requerimos. Podemos simular para examinar su forma: sim_inicial <- tibble(theta = rbeta(10000, 3, 3)) ggplot(sim_inicial) + geom_histogram(aes(x = theta, y = ..density..), bins = 15) De modo que nuestra información inicial es que la proporción puede tomar cualquier valor entre 0 y 1, pero es probable que tome un valor no tan lejano de 0.5. Por ejemplo, con probabilidad 0.95 creemos que \\(\\theta\\) está en el intervalo quantile(sim_inicial$theta, c(0.025, 0.975)) %>% round(2) ## 2.5% 97.5% ## 0.14 0.85 Es difícil justificar en abstracto por qué escogeriamos una inicial con esta forma. Aunque esto los detallaremos más adelante, puedes pensar, por el momento, que alguien observó algunos casos de esta población, y quizá vio tres éxitos y tres fracasos. Esto sugeriría que es poco probable que la probablidad \\(\\theta\\) sea muy cercana a 0 o muy cercana a 1. Ahora podemos construir nuestra posterior. Tenemos que \\[P(\\theta| X_1=x_1, \\ldots, X_n=x_n) \\propto P(X_1 = x_1,\\ldots X_n=x_n | \\theta)P(\\theta) = \\theta^{k+2}(1-\\theta)^{n-k + 2}\\] donde la constante de normalización no depende de \\(\\theta\\). Como \\(\\theta\\) es un parámetro continuo, la expresión de la derecha nos debe dar una densidad posterior. Supongamos entonces que hicimos la prueba con \\(n = 30\\) (número de prueba) y observamos 19 éxitos. Tendríamos entonces \\[P(\\theta | S_n = 19) \\propto \\theta^{19 + 2} (1-\\theta)^{30-19 +2} = \\theta^{21}(1-\\theta)^{13}\\] La cantidad de la derecha, una vez que normalizemos por el número \\(P(X=19)\\), nos dará una densidad posterior (tal cual, esta expresion no integra a 1). Podemos obtenerla usando cálculo, pero recordamos que una distribución \\(\\mathsf{\\mathsf{Beta}}(a,b)\\) tiene como fórmula \\[\\frac{1}{B(a,b)} \\theta^{a-1}(1-\\theta)^{b-1}\\] Concluimos entonces que la posterior tiene una distribución \\(\\mathsf{Beta}(22, 14)\\). Podemos simular de la posterior usando código estándar para ver cómo luce: sim_inicial <- sim_inicial %>% mutate(dist = "inicial") sim_posterior <- tibble(theta = rbeta(10000, 22, 14)) %>% mutate(dist = "posterior") sims <- bind_rows(sim_inicial, sim_posterior) ggplot(sims, aes(x = theta, fill = dist)) + geom_histogram(aes(x = theta), bins = 30, alpha = 0.5, position = "identity") La posterior nos dice cuáles son las posibilidades de dónde puede estar el parámetro \\(\\theta\\). Nótese que ahora excluye prácticamente valores más chicos que 0.25 o mayores que 0.9. Esta distribución posterior es el objeto con el que hacemos inferencia: nos dice dónde es creíble que esté el parámetro \\(\\theta\\). Podemos resumir de varias maneras. Por ejemplo, si queremos un estimador puntual usamos la media posterior: sims %>% group_by(dist) %>% summarise(theta_hat = mean(theta) %>% round(3)) ## # A tibble: 2 × 2 ## dist theta_hat ## <chr> <dbl> ## 1 inicial 0.5 ## 2 posterior 0.611 Nota que el estimador de máxima verosimilitud es \\(\\hat{p} = 19/30 = 0.63\\), que es ligeramente diferente de la media posterior. ¿Por qué? Y podemos construir intervalos de percentiles, que en esta situación suelen llamarse intervalos de credibilidad, por ejemplo: f <- c(0.025, 0.975) sims %>% group_by(dist) %>% summarise(cuantiles = quantile(theta, f) %>% round(2), f = f) %>% pivot_wider(names_from = f, values_from = cuantiles) ## # A tibble: 2 × 3 ## # Groups: dist [2] ## dist `0.025` `0.975` ## <chr> <dbl> <dbl> ## 1 inicial 0.14 0.85 ## 2 posterior 0.45 0.76 El segundo renglón nos da un intervalo posterior para \\(\\theta\\) de credibilidad 95%. En inferencia bayesiana esto sustituye a los intervalos de confianza. El intervalo de la inicial expresa nuestras creencias a priori acerca de \\(\\theta\\). Este intervalo es muy amplio (va de 0.15 a 0.85) El intervalo de la posterior actualiza nuestras creencias acerca de \\(\\theta\\) una vez que observamos los datos, y es considerablemente más angosto y por lo tanto informativo. Puedes experimentar en esta shiny app con diferentes iniciales, número de volados y observación de éxitos. Observaciones: Nótese que escogimos una forma analítica fácil para la inicial, pues resultó así que la posterior es una distribución beta. No siempre es así, y veremos qué hacer cuando nuestra inicial no es de un tipo “conveniente”. Como tenemos la forma analítica de la posterior, es posible hacer los cálculos de la media posterior, por ejemplo, integrando la densidad posterior a mano. Esto generalmente no es factible, y en este ejemplo preferimos hacer una aproximación numérica. En este caso particular es posible usando cálculo, y sabemos que la media de una \\(\\mathsf{\\mathsf{Beta}}(a,b)\\) es \\(a/(a+b)\\), de modo que nuestra media posterior es \\[\\hat{\\mu} = (19 + 2)/(30 + 4) = 21/34 = 0.617 \\] que podemos interpretar como sigue: para calcular la media posterior, a nuestras \\(n\\) pruebas iniciales agregamos 4 pruebas adicionales fijas, con 2 éxitos y 2 fracasos, y calculamos la proporción usual de éxitos. Repite el análisis considerando en general \\(n\\) pruebas, con \\(k\\) éxitos. Utiliza la misma distribución inicial. Lo mismo aplica para el intervalo de 95% (¿cómo se calcularía integrando?). También puedes usar la aproximación de R, por ejemplo: qbeta(0.025, shape1 = 22, shape2 = 14) %>% round(2) ## [1] 0.45 qbeta(0.975, shape1 = 22, shape2 = 14) %>% round(2) ## [1] 0.76 Ejemplo: observaciones uniformes Ahora regresamos al problema de estimación del máximo de una distribución uniforme. En este caso, consideraremos un problema más concreto. Supongamos que hay una lotería (tipo tradicional) en México y no sabemos cuántos números hay. Obtendremos una muestra iid de \\(n\\) números, y haremos una aproximación continua, suponiendo que \\[X_i \\sim U[0,\\theta]\\] La verosimilitud es entonces \\[P(X_1,\\ldots, X_n|\\theta) = \\theta^{-n},\\] cuando \\(\\theta\\) es mayor que todas las \\(X_i\\), y cero en otro caso. Necesitaremos una inicial \\(P(\\theta)\\). Por la forma que tiene la verosimilitud, podemos intentar una distribución Pareto, que tiene la forma \\[P(\\theta) = \\frac{\\alpha \\theta_0^\\alpha}{\\theta^{\\alpha + 1}}\\] con soporte en \\([\\theta_0,\\infty]\\). Tenemos que escoger entonces el mínimo \\(\\theta_0\\) y el parámetro \\(\\alpha\\). En primer lugar, como sabemos que es una lotería nacional, creemos que no puede haber menos de unos 300 mil números, así que \\(\\theta_0 = 300\\). La función acumulada de la pareto es \\(1- (300/\\theta)^\\alpha\\), así que el cuantil 99% es alpha <- 1.1 (300/(0.01)^(1/alpha)) ## [1] 19738 es decir, alrededor de 20 millones de números. Creemos que es un poco probable que el número de boletos sea mayor a esta cota. Nótese ahora que la posterior cumple (multiplicando verosimilitud por inicial): \\[P(\\theta|X_1,\\ldots, X_n |\\theta) \\propto \\theta^{-(n + 2.1)}\\] para \\(\\theta\\) mayor que el máximo de las \\(X_n\\)’s y 300, y cero en otro caso. Esta distribución es pareto con \\(\\theta_0' = \\max\\{300, X_1,\\ldots, X_n\\}\\) y \\(\\alpha' = n + 1.1\\) Una vez planteado nuestro modelo, veamos los datos. Obtuvimos la siguiente muestra de números: loteria_tbl <- read_csv("data/nums_loteria_avion.csv", col_names = c("id", "numero")) %>% mutate(numero = as.integer(numero)) set.seed(334) muestra_loteria <- sample_n(loteria_tbl, 25) %>% mutate(numero = numero/1000) muestra_loteria %>% as.data.frame %>% head ## id numero ## 1 87 348.341 ## 2 5 5851.982 ## 3 40 1891.786 ## 4 51 1815.455 ## 5 14 5732.907 ## 6 48 3158.414 Podemos simular de una Pareto como sigue: rpareto <- function(n, theta_0, alpha){ # usar el método de inverso de distribución acumulada u <- runif(n, 0, 1) theta_0 / (1 - u)^(1/alpha) } Simulamos de la inicial: sims_pareto_inicial <- tibble( theta = rpareto(20000, 300, 1.1 ), dist = "inicial") Y con los datos de la muestra, simulamos de la posterior: sims_pareto_posterior <- tibble( theta = rpareto(20000, max(c(300, muestra_loteria$numero)), nrow(muestra_loteria) + 1.1), dist = "posterior") sims_theta <- bind_rows(sims_pareto_inicial, sims_pareto_posterior) ggplot(sims_theta) + geom_histogram(aes(x = theta, fill = dist), bins = 70, alpha = 0.5, position = "identity", boundary = max(muestra_loteria$numero)) + xlim(0, 15000) + scale_y_sqrt() + geom_rug(data = muestra_loteria, aes(x = numero)) Nótese que cortamos algunos valores de la inicial en la cola derecha: un defecto de esta distribución inicial, con una cola tan larga a la derecha, es que pone cierto peso en valores que son poco creíbles y la vuelve poco apropiada para este problema. Regresamos más adelante a este problema. Si obtenemos percentiles, obtenemos el intervalo f <- c(0.025, 0.5, 0.975) sims_theta %>% group_by(dist) %>% summarise(cuantiles = quantile(theta, f) %>% round(2), f = f) %>% pivot_wider(names_from = f, values_from = cuantiles) ## # A tibble: 2 × 4 ## # Groups: dist [2] ## dist `0.025` `0.5` `0.975` ## <chr> <dbl> <dbl> <dbl> ## 1 inicial 307. 569. 8449. ## 2 posterior 5858. 6010. 6732. Estimamos entre 5.8 millones y 6.7 millones de boletos. El máximo en la muestra es de max(muestra_loteria$numero) ## [1] 5851.982 Escoger la distribución pareto como inicial es conveniente y nos permitió resolver el problema sin dificultad, pero por su forma vemos que no necesariamente es apropiada para el problema por lo que señalamos arriba. Nos gustaría, por ejemplo, poner una inicial como la siguiente qplot(rgamma(2000, 5, 0.001), geom="histogram", bins = 20) + scale_x_continuous(breaks = seq(1000, 15000, by = 2000)) Sin embargo, los cálculos no son tan simples en este caso, pues la posterior no tiene un forma reconocible. Tendremos que usar otras estrategias de simulación para ejemplos como este (Monte Carlo por medio de Cadenas de Markov, que veremos más adelante). Probabilidad a priori La inferencia bayesiana es conceptualmente simple: siempre hay que calcular la posterior a partir de verosimilitud (modelo de datos) y distribución inicial o a priori. Sin embargo, una crítica usual que se hace de la inferencia bayesiana es precisamente que hay que tener esa información inicial, y que distintos analistas llegan a distintos resultados si tienen información inicial distinta. Eso realmente no es un defecto, es una ventaja de la inferencia bayesiana. Los datos y los problemas que queremos resolver no viven en un vacío donde podemos creer que la estatura de las personas, por ejemplo, puede variar de 0 a mil kilómetros, el número de boletos de una lotería puede ir de 2 o 3 boletos o también quizá 500 millones de boletos, o la proporción de personas infectadas de una enfermedad puede ser de unos cuantos hasta miles de millones. En todos estos casos tenemos cierta información inicial que podemos usar para informar nuestras estimaciones. Esta información debe usarse. Antes de tener datos, las probabilidades iniciales deben ser examinadas en términos del conocimiento de expertos. Las probabilidades iniciales son supuestos que hacemos acerca del problema de interés, y también están sujetas a críticas y confrontación con datos. Análisis conjugado Los dos ejemplos que hemos visto arriba son ejemplos de análisis conjugado: (Beta-bernoulli) Si las observaciones \\(X_i\\) son \\(\\mathsf{Bernoulli}(p)\\) (\\(n\\) fija) queremos estimar \\(p\\), y tomamos como distribución inicial para \\(p\\) una \\(\\mathsf{Beta}(a,b)\\), entonces la posterior para \\(p\\) cuando \\(S_n=k\\) es \\(\\mathsf{Beta}(k + a, n - k + b)\\), donde \\(S_n = X_1 + X_2 +\\cdots +X_n\\). Y más en general: (Beta-binomial) Si las observaciones \\(X_i, i=1,2,\\ldots, m\\) son \\(\\mathsf{Binomial}(n_i, p)\\) (\\(n_i\\)’s fijas) independientes, queremos estimar \\(p\\), y tomamos como distribución inicial para \\(p\\) una \\(\\mathsf{Beta}(a,b)\\), entonces la posterior para \\(p\\) cuando \\(S_m=k\\) es \\(\\mathsf{Beta}(k + a, n - k + b)\\), donde \\(S_m = X_1 + X_2 +\\cdots +X_m\\) y \\(n= n_1+n_2+\\cdots+n_m\\) También aplicamos: (Uniforme-Pareto) Si el modelo de datos \\(X_i\\) es uniforme \\(\\mathsf{U}[0,\\theta]\\) (\\(n\\) fija), queremos estimar \\(\\theta\\), y tomamos como distribución inicial para \\(\\theta\\) una Pareto \\((\\theta_0, \\alpha)\\), entonces la posterior para \\(p\\) si el máximo de las \\(X_i\\)’s es igual a \\(M\\) es Pareto con parámetros \\((\\max\\{\\theta_0, M\\}, \\alpha + n)\\). Nótese que en estos casos, dada una forma de la verosimilitud, tenemos una familia conocida de iniciales tales que las posteriores están en la misma familia. Estos modelos son convenientes porque podemos hacer simulaciones de la posterior de manera fácil, o usar sus propiedades teóricas. Otro ejemplo típico es el modelo normal-normal: (Normal-normal) Si \\(X_i\\sim \\mathsf{N}(\\mu,\\sigma)\\), con \\(\\sigma\\) conocida, y tomamos como distribución inicial para \\(\\mu \\sim \\mathsf{N}(\\mu_0,\\sigma_0)\\), y definimos la precisión \\(\\tau\\) como el inverso de la varianza \\(\\sigma^2\\), entonces la posterior de \\(\\mu\\) es Normal con media \\((1-\\lambda) \\mu_0 + \\lambda\\overline{x}\\), y precisión \\(\\tau_0 + n\\tau\\), donde \\(\\lambda = \\frac{n\\tau}{\\tau_0 + n\\tau}\\) Completa cuadrados para mostrar las fórmulas del modelo normal-normal con varianza conocida. Más útil es el siguiente modelo: (Normal-Gamma inverso) Sean \\(X_i\\sim \\mathsf{N}(\\mu, \\sigma)\\). Queremos estimar \\(\\mu\\) y \\(\\sigma\\). Tomamos como distribuciones iniciales (dadas por 4 parámetros: \\(\\mu_0, n_0, \\alpha,\\beta\\)): \\(\\tau = \\frac{1}{\\sigma^2} \\sim \\mathsf{Gamma}(\\alpha,\\beta)\\) \\(\\mu|\\sigma\\) es normal con media \\(\\mu_0\\) y varianza \\(\\sigma^2 / {n_0}\\) , y \\(p(\\mu, \\sigma) = p(\\mu|\\sigma)p(\\sigma)\\) Entonces la posterior es: \\(\\tau|x\\) es \\(\\mathsf{Gamma}(\\alpha', \\beta')\\), con \\(\\alpha' = \\alpha + n/2\\), \\(\\beta' = \\beta + \\frac{1}{2}\\sum_{i=1}^{n}(x_{i} - \\bar{x})^2 + \\frac{nn_0}{n+n_0}\\frac{({\\bar{x}}-\\mu_{0})^2}{2}\\) \\(\\mu|\\sigma,x\\) es normal con media \\(\\mu' = \\frac{n_0\\mu_{0}+n{\\bar{x}}}{n_0 +n}\\) y varianza \\(\\sigma^2/({n_0 +n})\\). \\(p(\\mu,\\sigma|x) = p(\\mu|x,\\sigma)p(\\sigma|x)\\) Observaciones Nótese que este último ejemplo tiene más de un parámetro. En estos casos, el objeto de interés es la posterior conjunta de los parámetros \\(p(\\theta_1,\\theta_2,\\cdots, \\theta_p|x)\\). Este último ejemplo es relativamente simple pues por la selección de iniciales, para simular de la conjunta de \\(\\mu\\) y \\(\\tau\\) podemos simular primero \\(\\tau\\) (o \\(\\sigma\\)), y después usar este valor para simular de \\(\\mu\\): el par de valores resultantes son una simulación de la conjunta. Los parámetros \\(\\alpha,\\beta\\) para la inicial de \\(\\tau\\) pueden interpretarse como sigue: \\(\\sqrt{\\beta/\\alpha}\\) es un valor “típico” a priori para la varianza poblacional, y \\(a\\) indica qué tan seguros estamos de este valor típico. Nótese que para que funcionen las fórmulas de la manera más simple, escogimos una dependencia a priori entre la media y la precisión: \\(\\tau = \\sigma^{-2}\\) indica la escala de variabilidad que hay en la población, la incial de la media tiene varianza \\(\\sigma^2/n_0\\). Si la escala de variabilidad de la población es más grande, tenemos más incertidumbre acerca de la localización de la media. Aunque esto tiene sentido en algunas aplicaciones, y por convenviencia usamos esta familia conjugada, muchas veces es preferible otro tipo de especificaciones para las iniciales: por ejemplo, la media normal y la desviación estándar uniforme, o media normal, con iniciales independientes. Sin embargo, estos casos no son tratables con análisis conjugado (veremos más adelante cómo tratarlos con MCMC). Ejemplo Supongamos que queremos estimar la estatura de los cantantes de tesitura tenor con una muestra iid de tenores de Estados Unidos. Usaremos el modelo normal de forma que \\(X_i\\sim \\mathsf{N}(\\mu, \\sigma^2)\\). Una vez decidido el modelo, tenemos que poner distribución inicial para los parámetros \\((\\mu, \\sigma^2)\\). Comenzamos con \\(\\sigma^2\\). Como está el modelo, esta inicial debe estar dada para la precisión \\(\\tau\\), pero podemos simular para ver cómo se ve nuestra inicial para la desviación estándar. En la población general la desviación estándar es alrededor de 7 centímetros # Comenzamos seleccionando un valor que creemos típico para la desviación estándar sigma_0 <- 7 # seleccionamos un valor para a, por ejemplo: si es más chico sigma tendrá más # disperisón a <- 3 # ponemos 7 = sqrt(b/a) -> b = a * 64 b <- a * sigma_0^2 c(a = a, b = b) ## a b ## 3 147 Ahora simulamos para calcular cuantiles tau <- rgamma(1000, a, b) quantile(tau, c(0.05, 0.95)) ## 5% 95% ## 0.005781607 0.042170161 sigma <- 1 / sqrt(tau) mean(sigma) ## [1] 8.002706 quantile(sigma, c(0.05, 0.95)) ## 5% 95% ## 4.869653 13.151520 Que es dispersión considerable: con poca probabilidad la desviación estándar es menor a 4 centímetros, y también creemos que es poco creíble la desviación estándar sea de más de 13 centímetros. Comenzamos con \\(\\mu\\). Sabemos, por ejemplo, que con alta probabilidad la media debe ser algún número entre 1.60 y 1.80. Podemos investigar: la media nacional en estados unidos está alrededor de 1.75, y el percentil 90% es 1.82. Esto es variabilidad en la población: debe ser muy poco probable, por ejemplo, que la media de tenores sea 1.82 Quizá los cantantes tienden a ser un poco más altos o bajos que la población general, así que podríamos agregar algo de dispersión. Podemos establecer parámetros y simular de la marginal a partir de las fórmulas de arriba para entender cómo se ve la inicial de \\(\\mu\\): mu_0 <- 175 # valor medio de inicial n_0 <- 5 # cuánta concentración en la inicial tau <- rgamma(1000, a,b) sigma <- 1/sqrt(tau) mu <- map_dbl(sigma, ~ rnorm(1, mu_0, .x / sqrt(n_0))) quantile(mu, c(0.05, 0.5, 0.95)) ## 5% 50% 95% ## 168.7275 174.8412 180.7905 Que consideramos un rango en el que con alta probabilidad debe estar la media poblacional de los cantantes. Podemos checar nuestros supuestos simulando posibles muestras usando sólo nuestra información previa: simular_normal_invgamma <- function(n, pars){ mu_0 <- pars[1] n_0 <- pars[2] a <- pars[3] b <- pars[4] # simular media tau <- rgamma(1, a, b) sigma <- 1 / sqrt(tau) mu <- rnorm(1, mu_0, sigma/sqrt(n_0)) # simular sigma rnorm(n, mu, sigma) } set.seed(3461) sims_tbl <- tibble(rep = 1:20) %>% mutate(estatura = map(rep, ~ simular_normal_invgamma(500, c(mu_0, n_0, a, b)))) %>% unnest(cols = c(estatura)) ggplot(sims_tbl, aes(x = estatura)) + geom_histogram() + facet_wrap(~ rep) + geom_vline(xintercept = c(150, 180), colour = "red") Pusimos líneas de referencia en 150 y 180. Vemos que nuestras iniciales no producen simulaciones totalmente fuera del contexto, y parecen cubrir apropiadamente el espacio de posiblidades para estaturas de los tenores. Quizá hay algunas realizaciones poco creíbles, pero no extremadamente. En este punto, podemos regresar y ajustar la inicial para \\(\\sigma\\), que parece tomar valores demasiado grandes (produciendo por ejemplo una simulación con estatura de 220 y 140, que deberían ser menos probables). Ahora podemos usar los datos para calcular nuestras posteriores. set.seed(3413) cantantes <- lattice::singer %>% mutate(estatura_cm = round(2.54 * height)) %>% filter(str_detect(voice.part, "Tenor")) %>% sample_n(20) cantantes ## height voice.part estatura_cm ## 139 70 Tenor 1 178 ## 150 68 Tenor 2 173 ## 140 65 Tenor 1 165 ## 132 66 Tenor 1 168 ## 152 69 Tenor 2 175 ## 141 72 Tenor 1 183 ## 161 71 Tenor 2 180 ## 156 71 Tenor 2 180 ## 158 71 Tenor 2 180 ## 164 69 Tenor 2 175 ## 147 68 Tenor 1 173 ## 130 72 Tenor 1 183 ## 162 71 Tenor 2 180 ## 134 74 Tenor 1 188 ## 170 69 Tenor 2 175 ## 167 68 Tenor 2 173 ## 149 64 Tenor 1 163 ## 143 68 Tenor 1 173 ## 157 69 Tenor 2 175 ## 153 71 Tenor 2 180 Los cálculos son un poco tediosos, pero podemos construir una función apropiada: calcular_pars_posterior <- function(x, pars_inicial){ # iniciales mu_0 <- pars_inicial[1] n_0 <- pars_inicial[2] a_0 <- pars_inicial[3] b_0 <- pars_inicial[4] # muestra n <- length(x) media <- mean(x) S2 <- sum((x - media)^2) # sigma post a_1 <- a_0 + 0.5 * n b_1 <- b_0 + 0.5 * S2 + 0.5 * (n * n_0) / (n + n_0) * (media - mu_0)^2 # posterior mu mu_1 <- (n_0 * mu_0 + n * media) / (n + n_0) n_1 <- n + n_0 c(mu_1, n_1, a_1, b_1) } pars_posterior <- calcular_pars_posterior(cantantes$estatura_cm, c(mu_0, n_0, a, b)) pars_posterior ## [1] 175.8 25.0 13.0 509.0 ¿Cómo se ve nuestra posterior comparada con la inicial? Podemos hacer simulaciones: sim_params <- function(m, pars){ mu_0 <- pars[1] n_0 <- pars[2] a <- pars[3] b <- pars[4] # simular sigmas sims <- tibble(tau = rgamma(m, a, b)) %>% mutate(sigma = 1 / sqrt(tau)) # simular mu sims <- sims %>% mutate(mu = rnorm(m, mu_0, sigma / sqrt(n_0))) sims } sims_inicial <- sim_params(5000, c(mu_0, n_0, a, b)) %>% mutate(dist = "inicial") sims_posterior <- sim_params(5000, pars_posterior) %>% mutate(dist = "posterior") sims <- bind_rows(sims_inicial, sims_posterior) ggplot(sims, aes(x = mu, y = sigma, colour = dist)) + geom_point() Y vemos que nuestra posterior es consistente con la información inicial que usamos, hemos aprendido considerablemente de la muestra. La posterior se ve como sigue. Hemos marcado también las medias posteriores de cada parámetro: media y desviación estándar. medias_post <- sims %>% filter(dist == "posterior") %>% select(-dist) %>% summarise(across(everything(), mean)) ggplot(sims %>% filter(dist == "posterior"), aes(x = mu, y = sigma)) + geom_point(colour = "#00BFC4") + geom_point(data = medias_post, size = 5, colour = "black") + coord_equal() Podemos construir intervalos creíbles del 90% para estos dos parámetros, por ejemplo haciendo intervalos de percentiles: f <- c(0.05, 0.5, 0.95) sims %>% pivot_longer(cols = mu:sigma, names_to = "parametro") %>% group_by(dist, parametro) %>% summarise(cuantil = quantile(value, f) %>% round(1), f= f) %>% pivot_wider(names_from = f, values_from = cuantil) ## # A tibble: 4 × 5 ## # Groups: dist, parametro [4] ## dist parametro `0.05` `0.5` `0.95` ## <chr> <chr> <dbl> <dbl> <dbl> ## 1 inicial mu 169. 175. 181. ## 2 inicial sigma 4.8 7.4 13.3 ## 3 posterior mu 174. 176. 178. ## 4 posterior sigma 5.1 6.3 8.2 Como comparación, los estimadores de máxima verosimlitud son media_mv <- mean(cantantes$estatura_cm) sigma_mv <- mean((cantantes$estatura_cm - media_mv)^2) %>% sqrt c(media_mv, sigma_mv) ## [1] 176 6 Ahora solo resta checar que el modelo es razonable. Veremos más adelante cómo hacer esto, usando la distribución predictiva posterior. Pasos de un análisis de datos bayesiano Como vimos en los ejemplos, en general un análisis de datos bayesiano sigue los siguientes pasos: Identificar los datos releventes a nuestra pregunta de investigación, el tipo de datos que vamos a describir, que variables queremos estimar. Definir el modelo descriptivo para los datos. La forma matemática y los parámetros deben ser apropiados para los objetivos del análisis. Especificar la distribución inicial de los parámetros. Utilizar inferencia bayesiana para reubicar la credibilidad a lo largo de los posibles valores de los parámetros. Verificar que la distribución posterior replique los datos de manera razonable, de no ser el caso considerar otros modelos descriptivos para los datos. Elicitando probablidades subjetivas (opcional) No siempre es fácil elicitar probabilidades subjetivas de manera que capturemos el verdadero conocimiento de dominio que tenemos. Una manera clásica de hacerlo es con apuestas Considera una pregunta sencilla que puede afectar a un viajero: ¿Qué tanto crees que habrá una tormenta que ocasionará el cierre de la autopista México-Acapulco en el puente del \\(20\\) de noviembre? Como respuesta debes dar un número entre \\(0\\) y \\(1\\) que refleje tus creencias. Una manera de seleccionar dicho número es calibrar las creencias en relación a otros eventos cuyas probabilidades son claras. Como evento de comparación considera una experimento donde hay canicas en una urna: \\(5\\) rojas y \\(5\\) blancas. Seleccionamos una canica al azar. Usaremos esta urna como comparación para considerar la tormenta en la autopista. Ahora, considera el siguiente par de apuestas de las cuales puedes elegir una: A. Obtienes \\(\\$1000\\) si hay una tormenta que ocasiona el cierre de la autopista el próximo \\(20\\) de noviembre. B. Obtienes \\(\\$1000\\) si seleccionas una canica roja de la urna que contiene \\(5\\) canicas rojas y \\(5\\) blancas. Si prefieres la apuesta B, quiere decir que consideras que la probabilidad de tormenta es menor a \\(0.5\\), por lo que al menos sabes que tu creencia subjetiva de una la probabilidad de tormenta es menor a \\(0.5\\). Podemos continuar con el proceso para tener una mejor estimación de la creencia subjetiva. A. Obtienes \\(\\$1000\\) si hay una tormenta que ocasiona el cierre de la autopista el próximo \\(20\\) de noviembre. C. Obtienes \\(\\$1000\\) si seleccionas una canica roja de la urna que contiene \\(1\\) canica roja y \\(9\\) blancas. Si ahora seleccionas la apuesta \\(A\\), esto querría decir que consideras que la probabilidad de que ocurra una tormenta es mayor a \\(0.10\\). Si consideramos ambas comparaciones tenemos que tu probabilidad subjetiva se ubica entre \\(0.1\\) y \\(0.5\\). Verificación predictiva posterior Una vez que ajustamos un modelo bayesiano, podemos simular nuevas observaciones a partir del modelo. Esto tiene dos utilidades: Hacer predicciones acerca de datos no observados. Confirmar que nuevas observaciones, producidas simulando con el modelo son similares a las que de hecho observamos. Esto nos permite confirmar la calidad del ajuste del modelo, y se llama verificación predictiva posterior. Supongamos que tenemos la posterior \\(p(\\theta | x)\\). Podemos generar una nueva replicación de los datos como sigue: La distribución predictiva posterior genera nuevas observaciones a partir de la información observada. La denotamos como \\(p(\\tilde{x}|x)\\). Para simular de ella: Muestreamos un valor \\(\\tilde{\\theta}\\) de la posterior \\(p(\\theta|x)\\). Simulamos del modelo de las observaciones \\(\\tilde{x} \\sim p(\\tilde{x}|\\tilde{\\theta})\\). Repetimos el proceso hasta obtener una muestra grande. Usamos este método para producir, por ejemplo, intervalos de predicción para nuevos datos. Si queremos una replicación de las observaciones de la predictiva posterior, Muestreamos un valor \\(\\tilde{\\theta}\\) de la posterior \\(p(\\theta|x)\\). Simulamos del modelo de las observaciones \\(\\tilde{x}_1, \\tilde{x}_2,\\ldots, \\tilde{x}_n \\sim p(\\tilde{x}|\\tilde{\\theta})\\), done \\(n\\) es el tamaño de muestra de la muestra original \\(x\\). Usamos este método para producir conjuntos de datos simulados que comparamos con los observados para verificar nuestro modelo. Ejemplo: estaturas de tenores En este ejemplo, usaremos la posterior predictiva para checar nuestro modelo. Vamos a crear varias muestras, del mismo tamaño que la original, según nuestra predictiva posterior, y compararemos estas muestras con la observada. Y ahora simulamos otra muestra muestra_sim <- simular_normal_invgamma(20, pars_posterior) muestra_sim %>% round(0) ## [1] 167 181 184 181 167 167 172 170 177 172 169 174 182 184 176 171 175 176 168 ## [20] 181 Podemos simular varias muestras y hacer una prueba de lineup: library(nullabor) set.seed(9921) sims_obs <- tibble(.n = 1:19) %>% mutate(estatura_cm = map(.n, ~ simular_normal_invgamma(20, pars_posterior))) %>% unnest(estatura_cm) pos <- sample(1:20, 1) lineup_tbl <- lineup(true = cantantes %>% select(estatura_cm), samples = sims_obs, pos = pos) ggplot(lineup_tbl, aes(x = estatura_cm)) + geom_histogram(binwidth = 2.5) + facet_wrap(~.sample) Con este tipo de gráficas podemos checar desajustes potenciales de nuestro modelo. ¿Puedes encontrar los datos verdaderos? ¿Cuántos seleccionaron los datos correctos? Prueba hacer pruebas con una gráfica de cuantiles. ¿Qué problema ves y cómo lo resolverías? Ejemplo: modelo Poisson Supongamos que pensamos el modelo para las observaciones es Poisson con parámetro \\(\\lambda\\). Pondremos como inicial para \\(\\lambda\\) una exponencial con media 10. Nótese que la posterior está dada por \\[p(\\lambda|x_1,\\ldots, x_n) \\propto e^{-n\\lambda}\\lambda^{\\sum_i x_i} e^{-0.1\\lambda} = \\lambda^{n\\overline{x}}e^{-\\lambda(n + 0.1)}\\] que es una distribución gamma con parámetros \\((n\\overline{x} + 1, n+0.1)\\) Ahora supongamos que observamos la siguiente muestra, ajustamos nuestro modelo y hacemos replicaciones posteriores de los datos observados: x <- rnbinom(250, mu = 20, size = 3) crear_sim_rep <- function(x){ n <- length(x) suma <- sum(x) sim_rep <- function(rep){ lambda <- rgamma(1, sum(x) + 1, n + 0.1) x_rep <- rpois(n, lambda) tibble(rep = rep, x_rep = x_rep) } } sim_rep <- crear_sim_rep(x) lineup_tbl <- map(1:5, ~ sim_rep(.x)) %>% bind_rows() %>% bind_rows(tibble(rep = 6, x_rep = x)) ggplot(lineup_tbl, aes(x = x_rep)) + geom_histogram(bins = 15) + facet_wrap(~rep) Y vemos claramente que nuestro modelo no explica apropiadamente la variación de los datos observados. Contrasta con: set.seed(223) x <- rpois(250, 15) crear_sim_rep <- function(x){ n <- length(x) suma <- sum(x) sim_rep <- function(rep){ lambda <- rgamma(1, sum(x) + 1, n + 0.1) x_rep <- rpois(n, lambda) tibble(rep = rep, x_rep = x_rep) } } sim_rep <- crear_sim_rep(x) lineup_tbl <- map(1:5, ~ sim_rep(.x)) %>% bind_rows() %>% bind_rows(tibble(rep = 6, x_rep = x)) ggplot(lineup_tbl, aes(x = x_rep)) + geom_histogram(bins = 15) + facet_wrap(~rep) Y verificamos que en este caso el ajuste del modelo es apropiado. Predicción Cuando queremos hacer predicciones particulares acerca de datos que observemos en el futuro, también podemos usar la posterior predictiva. En este caso, tenemos que considerar La variabilidad que produce la incertidumbre en la estimación de los parámetros La variabilidad de las observaciones dados los parámetros. Es decir, tenemos que simular sobre todos las combinaciones factibles de los parámetros. Ejemplo: cantantes Si un nuevo tenor llega a un coro, ¿cómo hacemos una predicción de su estatura? Como siempre, quisiéramos obtener un intervalo que exprese nuestra incertidumbre acerca del valor que vamos a observar. Entonces haríamos: sims_posterior <- sim_params(50000, pars_posterior) %>% mutate(y_pred = rnorm(n(), mu, sigma)) sims_posterior %>% head ## # A tibble: 6 × 4 ## tau sigma mu y_pred ## <dbl> <dbl> <dbl> <dbl> ## 1 0.0286 5.91 175. 181. ## 2 0.0200 7.07 177. 178. ## 3 0.0257 6.23 176. 170. ## 4 0.0344 5.39 176. 174. ## 5 0.0297 5.80 175. 169. ## 6 0.0282 5.96 177. 170. f <- c(0.025, 0.5, 0.975) sims_posterior %>% summarise(f = f, y_pred = quantile(y_pred, f)) ## # A tibble: 3 × 2 ## f y_pred ## <dbl> <dbl> ## 1 0.025 163. ## 2 0.5 176. ## 3 0.975 189. Y con esto obtenemos el intervalo (163, 189), al 95%, para una nueva observación. Nótese que este intervalo no puede construirse con una simulación particular de la posterior de los parámetros, pues sería demasiado corto. Es posible demostrar que en este caso, la posterior predictiva tiene una forma conocida: La posterior predictiva para el modelo normal-gamma inverso es una distribución \\(t\\) con \\(2\\alpha'\\) grados de libertad, centrada en \\(\\mu'\\), y con escala \\(s^2 = \\frac{\\beta'}{\\alpha'}\\frac{n + n_0 + 1}{n +n_0}\\) mu_post <- pars_posterior[1] n_post <- pars_posterior[2] alpha_post <- pars_posterior[3] beta_post <- pars_posterior[4] s <- sqrt(beta_post/alpha_post) * sqrt((n_post + 1)/n_post) qt(c(0.025, 0.5, 0.975), 2 * alpha_post) * s + mu_post ## [1] 162.6832 175.8000 188.9168 Calcula la posterior predictiva del modelo Beta-Bernoulli y Beta-Binomial. (Más difícil) Calcula la posterior predictiva del modelo Poisson-Gamma. Ejemplo: posterior predictiva de Pareto-Uniforme. La posterior predictiva del modelo Pareto-Uniforme no tiene un nombre estándar, pero podemos aproximarla usando simulación. Usando los mismos datos del ejercicio de la lotería, haríamos: rpareto <- function(n, theta_0, alpha){ # usar el método de inverso de distribución acumulada u <- runif(n, 0, 1) theta_0 / (1 - u)^(1/alpha) } # Simulamos de la posterior de los parámetros lim_inf_post <- max(c(300, muestra_loteria$numero)) k_posterior <- nrow(muestra_loteria) + 1.1 sims_pareto_posterior <- tibble( theta = rpareto(100000, lim_inf_post, k_posterior)) # Simulamos una observación para cada una de las anteriores: sims_post_pred <- sims_pareto_posterior %>% mutate(x_pred = map_dbl(theta, ~ runif(1, 0, .x))) # Graficamos ggplot(sims_post_pred, aes(x = x_pred)) + geom_histogram(binwidth = 50) + geom_vline(xintercept = lim_inf_post, colour = "red") Que es una mezcla de una uniforme con una Pareto. Referencias "],["apéndice-principios-de-visualizacion.html", "Apéndice: Principios de visualizacion Introducción Visualización popular de datos Teoría de visualización de datos Ejemplo: gráfica de Minard", " Apéndice: Principios de visualizacion “The simple graph has brought more information to the data analyst’s mind than any other device.” — John Tukey El cuarteto de Anscombe En 1971 un estadístico llamado Frank Anscombe (fundador del departamento de Estadística de la Universidad de Yale) publicó cuatro conjuntos de dato. Cada uno consiste de 11 observaciones. La peculariedad de estos conjuntos es que tienen las mismas propiedades estadísticas. Sin embargo, cuando analizamos los datos de manera gráfica en un histograma encontramos rápidamente que los conjuntos de datos son muy distintos. Media de \\(x\\): 9 Varianza muestral de \\(x\\): 11 Media de \\(y\\): 7.50 Varianza muestral de \\(y\\): 4.12 Correlación entre \\(x\\) y \\(y\\): 0.816 Línea de regresión lineal: \\(y = 3.00 + 0.500x\\) En la gráfica del primer conjunto de datos, se ve clara una relación lineal simple con un modelo que cumple los supuestos de normalidad. La segunda gráfica (arriba a la derecha) muestra unos datos que tienen una asociación pero definitivamente no es lineal. En la tercera gráfica (abajo a la izquierda) están puntos alineados perfectamente en una línea recta, excepto por uno de ellos. En la última gráfica podemos ver un ejemplo en el cual basta tener una observación atípica para que se produzca un coeficiente de correlación alto aún cuando en realidad no existe una asociación lineal entre las dos variables. El cuarteto de Ascombe inspiró una técnica reciente para crear datos que comparten las mismas propiedades estadísticas al igual que en el cuarteto, pero que producen gráficas muy distintas (Matejka, Fitzmaurice). Introducción La visualización de datos no trata de hacer gráficas “bonitas” o “divertidas”, ni de simplificar lo complejo o ayudar a una persona “que no entiende mucho” a entender ideas complejas. Más bien, trata de aprovechar nuestra gran capacidad de procesamiento visual para exhibir de manera clara aspectos importantes de los datos. El siguiente ejemplo de (Tufte 2006), ilustra claramente la diferencia entre estos dos enfoques. A la izquierda están gráficas (más o menos típicas de Powerpoint) basadas en la filosofía de simplificar, de intentar no “ahogar” al lector con datos. El resultado es una colección incoherente, de bajo contenido, que no tiene mucho qué decir y que es, “indeferente al contenido y la evidencia”. A la derecha está una variación del rediseño de Tufte en forma de tabla, que en este caso particular es una manera eficiente de mostrar claramente los patrones que hay en este conjunto simple de datos. ¿Qué principios son los que soportan la efectividad de esta tabla sobre la gráfica de la derecha? Veremos que hay dos conjuntos de principios importantes: unos relacionados con el diseño y otros con la naturaleza del análisis de datos, independientemente del método de visualización. Visualización popular de datos Publicaciones populares (periódicos, revistas, sitios internet) muchas veces incluyen visualización de datos como parte de sus artículos o reportajes. En general siguen el mismo patrón que en la visión tradicionalista de la estadística: sirven más para divertir que para explicar, tienden a explicar ideas simples y conjuntos chicos de datos, y se consideran como una “ayuda” para los “lectores menos sofisticados”. Casi siempre se trata de gráficas triviales (muchas veces con errores graves) que no aportan mucho a artículos que tienen un nivel de complejidad mucho mayor (es la filosofía: lo escrito para el adulto, lo graficado para el niño). Teoría de visualización de datos Existe teoría fundamentada acerca de la visualización. Después del trabajo pionero de Tukey, los principios e indicadores de Tufte se basan en un estudio de la historia de la graficación y ejercicios de muestreo de la práctica gráfica a lo largo de varias disciplinas (¿cuáles son las mejores gráficas? ¿por qué?) El trabajo de Cleveland es orientado a la práctica del análisis de datos (¿cuáles gráficas nos han ayudado a mostrar claramente los resultados del análisis?), por una parte, y a algunos estudios de percepción visual. En resumen, hablaremos de las siguientes guías: Principios generales del diseño analítico Aplicables a una presentación o análisis completos, y como guía para construir nuevas visualizaciones (Tufte 2006). Principio 1. Muestra comparaciones, contrastes, diferencias. Principio 2. Muestra causalidad, mecanismo, explicación, estructura sistemática. Principio 3. Muestra datos multivariados, es decir, más de una o dos variables. Principio 4. Integra palabras, números, imágenes y diagramas. Principio 5. Describe la totalidad de la evidencia. Muestra fuentes usadas y problemas relevantes. Principio 6. Las presentaciones analíticas, a fin de cuentas, se sostienen o caen dependiendo de la calidad, relevancia e integridad de su contenido. Técnicas de visualización Esta categoría incluye técnicas específicas que dependen de la forma de nuestros datos y el tipo de pregunta que queremos investigar (Tukey (1977), William S. Cleveland (1993), W. S. Cleveland (1994), Tufte (2006)). Tipos de gráficas: cuantiles, histogramas, caja y brazos, gráficas de dispersión, puntos/barras/ líneas, series de tiempo. Técnicas para mejorar gráficas: Transformación de datos, transparencia, vibración, banking 45, suavizamiento y bandas de confianza. Pequeños múltiplos Indicadores de calidad gráfica Aplicables a cualquier gráfica en particular. Estas son guías concretas y relativamente objetivas para evaluar la calidad de una gráfica (Tufte 1986). Integridad Gráfica. El factor de engaño, es decir, la distorsión gráfica de las cantidades representadas, debe ser mínimo. Chartjunk. Minimizar el uso de decoración gráfica que interfiera con la interpretación de los datos: 3D, rejillas, rellenos con patrones. Tinta de datos. Maximizar la proporción de tinta de datos vs. tinta total de la gráfica. For non-data- ink, less is more. For data-ink, less is a bore. Densidad de datos. Las mejores gráficas tienen mayor densidad de datos, que es la razón entre el tamaño del conjunto de datos y el área de la gráfica. Las gráficas se pueden encoger mucho. Percepción visual. Algunas tareas son más fáciles para el ojo humano que otras (W. S. Cleveland 1994). Factor de engaño y Chartjunk El factor de engaño es el cociente entre el efecto mostrado en una gráfica y el efecto correspondiente en los datos. Idealmente, el factor de engaño debe ser 1 (ninguna distorsión). El chartjunk son aquellos elementos gráficos que no corresponden a variación de datos, o que entorpecen la interpretación de una gráfica. Estos son los indicadores de calidad más fáciles de entender y aplicar, y afortunadamente cada vez son menos comunes. Un diseño popular que califica como chartjunk y además introduce factores de engaño es el pie de 3D. En la gráfica de la derecha, podemos ver como la rebanada C se ve más grande que la rebanada A, aunque claramente ese no es el caso (factor de engaño). La razón es la variación en la perspectiva que no corresponde a variación en los datos (chartjunk). Crítica gráfica: Gráfica de pie Todavía elementos que pueden mejorar la comprensión de nuestra gráfica de pie: se trata de la decodificiación que hay que hacer categoría - color - cuantificación. Podemos agregar las etiquetas como se muestra en la serie de la derecha, pero entonces: ¿por qué no mostrar simplemente la tabla de datos? ¿qué agrega el pie a la interpretación? La deficiencias en el pie se pueden ver claramente al intentar graficar más categorías (13) . En el primer pie no podemos distinguir realmente cuáles son las categorías grandes y cuáles las chicas, y es muy difícil tener una imagen mental clara de estos datos. Agregar los porcentajes ayuda, pero entonces, otra vez, preguntamos cuál es el propósito del pie. La tabla de la izquierda hace todo el trabajo (una vez que ordenamos las categrías de la más grande a la más chica). Es posible hacer una gráfica de barras como la de abajo a la izquierda. Hay otros tipos de chartjunk comunes: uno es la textura de barras, por ejemplo. El efecto es la producción de un efecto moiré que es desagradable y quita la atención de los datos, como en la gráfica de barras de abajo. Otro común son las rejillas, como mostramos en las gráficas de la izquierda. Nótese como en estos casos hay efectos ópticos no planeados que degradan la percepción de los patrones en los datos. Pequeños múltiplos y densidad gráfica La densidad de una gráfica es el tamaño del conjunto de datos que se grafica comparado con el área total de la gráfica. En el siguiente ejemplo, graficamos en logaritmo-10 de millones de cabezas de ganado en Francia (cerdos, res, ovejas y caballos). La gráfica de la izquierda es pobre en densidad pues sólo representa 4 datos. La manera más fácil de mejorar la densidad es hacer más chica la gráfica: La razón de este encogimiento es una que tiene qué ver con las oportunidades perdidas de una gráfica grande. Si repetimos este mismo patrón (misma escala, mismos tipos de ganado) para distintos países obtenemos la siguiente gráfica: Esta es una gráfica de puntos. Es útil como sustituto de una gráfica de barras, y es superior en el sentido de que una mayor proporción de la tinta que se usa es tinta de datos. Otra vez, mayor proporción de tinta de datos representa más oportunidades que se pueden capitalizar. Más pequeños múltiplos Los pequeños múltiplos presentan oportunidades para mostrar más acerca de nuestro problema de interés. Consideramos por ejemplo la relación de radiación solar y niveles de ozono: En el ejemplo anterior incluyendo una variable adicional (velocidad del viento) podemos entender más acerca de la relación de radiación solar y niveles de ozono: Tinta de datos Maximizar la proporción de tinta de datos en nuestras gráficas tiene beneficios inmediatos. La regla es: si hay tinta que no representa variación en los datos, o la eliminación de esa tinta no representa pérdidas de significado, esa tinta debe ser eliminada. El ejemplo más claro es el de las rejillas en gráficas y tablas: ¿Por qué usar grises en lugar de negros? La respuesta tiene qué ver con el principio de tinta de datos: si marcamos las diferencias sutil pero claramente, tenemos más oportunidades abiertas para hacer énfasis en lo que nos interesa: a una gráfica o tabla saturada no se le puede hacer más - es difícil agregar elementos adicionales que ayuden a la comprensión. Si comenzamos marcando con sutileza, entonces se puede hacer más. Los mapas geográficos son un buen ejemplo de este principio. El espacio en blanco es suficientemente bueno para indicar las fronteras en una tabla, y facilita la lectura: Para un ejemplo del proceso de rediseño de una tabla, ver aquí. Finalmente, podemos ver un ejemplo que intenta incorporar los elementos del diseño analítico, incluyendo pequeños múltiplos: Decoración Percepción de escala Entre la percepción visual y la interpretación de una gráfica están implícitas tareas visuales específicas que las personas debemos realizar para ver correctamente la gráfica. En la década de los ochenta, William S. Cleveland y Robert McGill realizaron algunos experimentos identificando y clasificando estas tareas para diferentes tipos de gráficos (William S. Cleveland and McGill 1984). En estos, se le pregunta a la persona que compare dos valores dentro de una gráfica, por ejemplo, en dos barras en una gráfica de barras, o dos rebanadas de una gráfica de pie. Los resultados de Cleveland y McGill fueron replicados por Heer y Bostock en 2010 y los resultados se muestran en las gráficas de la derecha: Ejemplo: gráfica de Minard Concluimos esta sección con una gráfica que, aunque poco común, ejemplifica los principios de una buena gráfica, y es reconocida como una de las mejores visualizaciones de la historia. Una gráfica excelente, presenta datos interesantes de forma bien diseñada: es una cuestión de fondo, de diseño, y estadística… [Se] compone de ideas complejas comunicadas con claridad, precisión y eficiencia. … [Es] lo que da al espectador la mayor cantidad de ideas, en el menor tiempo, con la menor cantidad de tinta, y en el espacio más pequeño. … Es casi siempre multivariado. … Una excelente gráfica debe decir la verdad acerca de los datos. (Tufte, 1983) La famosa visualización de Charles Joseph Minard de la marcha de Napoleón sobre Moscú, ilustra los principios de una buena gráfica. Tufte señala que esta imagen “bien podría ser el mejor gráfico estadístico jamás dibujado”, y sostiene que “cuenta una historia rica y coherente con sus datos multivariados, mucho más esclarecedora que un solo número que rebota en el tiempo”. Se representan seis variables: el tamaño del ejército, su ubicación en una superficie bidimensional, la dirección del movimiento del ejército y la temperatura en varias fechas durante la retirada de Moscú”. Hoy en día Minard es reconocido como uno de los principales contribuyentes a la teoría de análisis de datos y creación de infografías con un fundamento estadístico. Se grafican 6 variables: el número de tropas de Napoleón, la distancia, la temperatura, la latitud y la longitud, la dirección en que viajaban las tropas y la localización relativa a fechas específicas. La gráfica de Minard, como la describe E.J. Marey, parece “desafiar la pluma del historiador con su brutal elocuencia”, la combinación de datos del mapa, y la serie de tiempo, dibujados en 1869, “retratan una secuencia de pérdidas devastadoras que sufrieron las tropas de Napoleón en 1812”. Comienza en la izquierda, en la frontera de Polonia y Rusia, cerca del río Niemen. La línea gruesa dorada muestra el tamaño de la Gran Armada (422,000) en el momento en que invadía Rusia en junio de 1812. El ancho de esta banda indica el tamaño de la armada en cada punto del mapa. En septiembre, la armada llegó a Moscú, que ya había sido saqueada y dejada desértica, con sólo 100,000 hombres. El camino del retiro de Napoleón desde Moscú está representado por la línea oscura (gris) que está en la parte inferior, que está relacionada a su vez con la temperatura y las fechas en el diagrama de abajo. Fue un invierno muy frío, y muchos se congelaron en su salida de Rusia. Como se muestra en el mapa, cruzar el río Berezina fue un desastre, y el ejército de Napoleón logró regresar a Polonia con tan sólo 10,000 hombres. También se muestran los movimientos de las tropas auxiliaries, que buscaban proteger por atrás y por la delantera mientras la armada avanzaba hacia Moscú. La gráfica de Minard cuenta una historia rica y cohesiva, coherente con datos multivariados y con los hechos históricos, y que puede ser más ilustrativa que tan sólo representar un número rebotando a lo largo del tiempo. Referencias "],["apéndice-transformaciones.html", "Apéndice: Transformaciones", " Apéndice: Transformaciones En ocasiones es conveniente transformar los datos para el análisis, el objetivo de los ajustes es simplificar la interpretación y el análisis al eliminar fuentes de variación conocidas, también es común realizan transformaciones para simplificar los patrones. Algunos ejemplos donde eliminamos efectos conocidos: Cuando analizamos el precio de venta de las casas podemos eliminar la variación debida al tamaño de las casas al pasar de precio de venta a precio de venta por metro cuadrado. De manera similar al analizar las propinas puede convenir considerar la propina como porcentaje de la cuenta. En series de tiempo cuando los datos están relacionados con el tamaño de la población podemos ajustar a mediciones per capita (en series de tiempo PIB). También es común ajustar por inflación, o poner cantidades monetarias en valor presente. mex_dat <- global_economy |> filter(Code == "MEX") pib <- ggplot(mex_dat, aes(x = Year, y = GDP / 1e6)) + geom_line() pib_pc <- ggplot(mex_dat, aes(x = Year, y = GDP / Population)) + geom_line() pib / pib_pc Adicionalmente podemos recurrir a otras transformaciones matemáticas (e.g. logaritmo, raíz cuadrada) que simplifiquen el patrón en los datos y la interpretación. Veamos un ejemplo donde es apropiado la transformación logaritmo. Usamos los datos Animals con información de peso corporal promedio y peso cerebral promedio para 28 especies. Buscamos entender la relación entre estas dos variables, e inspeccionar que especies se desvían (residuales) del esperado. Comenzamos con un diagrama de dispersión usando las unidades originales animals_tbl <- as_tibble(Animals, rownames = "animal") p1 <- ggplot(animals_tbl, aes(x = body, y = brain, label = animal)) + geom_point() + labs(subtitle = "Unidades originales") p2 <- ggplot(animals_tbl, aes(x = body, y = brain, label = animal)) + geom_point() + xlim(0, 500) + ylim(0, 1500) + geom_text_repel() + labs(subtitle = "Unidades originales, eliminando 'grandes'") (p1 + p2) Incluso cuando nos limitamos a especies de menos de 500 kg de masa corporal, la relación no es fácil de descrubir.En la suguiente gráfica hacemos la transformación logaritmo y obtenemos una gráfica más fácil de leer, además los datos se modelarán con más facilidad. p3 <- ggplot(animals_tbl, aes(x = log(body), y = log(brain), label = animal)) + geom_smooth(method = "lm", se = FALSE, color = "red") + geom_point() + geom_text_repel() + stat_poly_eq(use_label(c("eq"))) p3 ## `geom_smooth()` using formula = 'y ~ x' La transformación logaritmo tiene también ventajas en interpretación, para diferencias chicas en escala log, las diferencias corresponden a diferencias porcentuales en la escala original, por ejempo consideremos la diferencia entre el peso en escala log de humano y borrego: 4.13 - 4.02 = 0.11. Confirmamos que el humano es aproximadamente 11% más pesado que el borrego en la escala original: 62/55.5 - 1 = 0.12 animals_tbl <- animals_tbl |> mutate(log_body = log(body), log_brain = log(brain)) animals_tbl |> filter(animal == "Human" | animal == "Sheep") |> arrange(body) |> gt::gt() |> gt::fmt_number() #ghrtnbapho table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #ghrtnbapho thead, #ghrtnbapho tbody, #ghrtnbapho tfoot, #ghrtnbapho tr, #ghrtnbapho td, #ghrtnbapho th { border-style: none; } #ghrtnbapho p { margin: 0; padding: 0; } #ghrtnbapho .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #ghrtnbapho .gt_caption { padding-top: 4px; padding-bottom: 4px; } #ghrtnbapho .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #ghrtnbapho .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #ghrtnbapho .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #ghrtnbapho .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #ghrtnbapho .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #ghrtnbapho .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #ghrtnbapho .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #ghrtnbapho .gt_column_spanner_outer:first-child { padding-left: 0; } #ghrtnbapho .gt_column_spanner_outer:last-child { padding-right: 0; } #ghrtnbapho .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #ghrtnbapho .gt_spanner_row { border-bottom-style: hidden; } #ghrtnbapho .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #ghrtnbapho .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #ghrtnbapho .gt_from_md > :first-child { margin-top: 0; } #ghrtnbapho .gt_from_md > :last-child { margin-bottom: 0; } #ghrtnbapho .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #ghrtnbapho .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #ghrtnbapho .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #ghrtnbapho .gt_row_group_first td { border-top-width: 2px; } #ghrtnbapho .gt_row_group_first th { border-top-width: 2px; } #ghrtnbapho .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #ghrtnbapho .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #ghrtnbapho .gt_first_summary_row.thick { border-top-width: 2px; } #ghrtnbapho .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #ghrtnbapho .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #ghrtnbapho .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #ghrtnbapho .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #ghrtnbapho .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #ghrtnbapho .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #ghrtnbapho .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #ghrtnbapho .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #ghrtnbapho .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #ghrtnbapho .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #ghrtnbapho .gt_left { text-align: left; } #ghrtnbapho .gt_center { text-align: center; } #ghrtnbapho .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #ghrtnbapho .gt_font_normal { font-weight: normal; } #ghrtnbapho .gt_font_bold { font-weight: bold; } #ghrtnbapho .gt_font_italic { font-style: italic; } #ghrtnbapho .gt_super { font-size: 65%; } #ghrtnbapho .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #ghrtnbapho .gt_asterisk { font-size: 100%; vertical-align: 0; } #ghrtnbapho .gt_indent_1 { text-indent: 5px; } #ghrtnbapho .gt_indent_2 { text-indent: 10px; } #ghrtnbapho .gt_indent_3 { text-indent: 15px; } #ghrtnbapho .gt_indent_4 { text-indent: 20px; } #ghrtnbapho .gt_indent_5 { text-indent: 25px; } #ghrtnbapho .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #ghrtnbapho div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } animal body brain log_body log_brain Sheep 55.50 175.00 4.02 5.16 Human 62.00 1,320.00 4.13 7.19 Y podemos usarlo también para interpretar la recta de referencia \\(y = 2.55 + 0.5 x\\) , para cambios chicos: Un incremento de 10% en masa total corresponde en un incremento de 5% en masa cerebral. El coeficiente de la regresión log-log, en nuestro ejemplo 0.5, es la elasticidad y es un concepto común en economía. Justificación Para entender la interpretación como cambio porcentual recordemos primero que la representación con series de Taylor de la función exponencial es: \\[e^x = \\sum_{n=0}^\\infty \\frac{x^n}{n!}\\] Más aún podemos tener una aproximación usando polinomios de Taylor, en el caso de la exponencial el \\(k\\)-ésimo polinomio de Taylor está dado por: \\[e^\\delta \\approx 1 + \\delta + \\frac{1}{2!}\\delta^2 + \\dots + \\frac{1}{k!}\\delta^k\\] y si \\(\\delta\\) es chica (digamos menor a 0.15), entonces la aproximación de primer grado es razonable y tenemos: \\[Ae^{\\delta} \\approx A(1+\\delta)\\] dat <- tibble(delta = seq(0, 1, 0.01), exp_delta = exp(delta), uno_mas_delta = 1 + delta) ggplot(dat, aes(x = uno_mas_delta, y = exp_delta)) + geom_line() + geom_abline(color = "red") + annotate("text", x = 1.20, y = 1.18, label = "y = x", color = "red", size = 6) "],["referencias.html", "Referencias", " Referencias "],["404.html", "Page not found", " Page not found The page you requested cannot be found (perhaps it was moved or renamed). You may want to try searching to find the page's new location, or use the table of contents to find the page you are looking for. "]] +[["index.html", "Fundamentos de Estadística con Remuestreo Información del curso", " Fundamentos de Estadística con Remuestreo Teresa Ortiz, Felipe González, Alfredo Garbuno Información del curso Notas del curso Fundamentos de Estadística con Remuestreo, este curso busca explicar los principios básicos de la estadística y su papel en el análisis de datos. Nuestro punto de vista es uno de fundamentos, con menos énfasis en recetas o técnicas particulares. Ligas Notas: https://tereom.github.io/fundamentos-2024/ Repositorio con material: https://github.com/tereom/fundamentos-2024 Correo: teresa.ortiz.mancera@gmail.com Zoom clase (miércoles 4:00-7:00 pm): https://itam.zoom.us/j/92745909276 Zoom sesiones de dudas (lunes de 5:30-6:30 pm): https://itam.zoom.us/j/92518922348 Canvas: https://itam.instructure.com/courses/13328 x Este trabajo está bajo una Licencia Creative Commons Atribución 4.0 Internacional. "],["temario.html", "Temario Plan semanal Evaluación", " Temario Plan semanal Datos y análisis exploratorio Referencias: (W. S. Cleveland 1994), (Chihara and Hesterberg 2018) Visualización1 Análisis exploratorio Tipos de datos o estudios Muestras diseñadas y muestras naturales Experimentos y datos observacionales Introducción a Pruebas de Hipótesis Referencias: (Chihara and Hesterberg 2018) Introducción a pruebas de hipótesis. Pruebas de permutaciones Muestras pareadas y otros ejemplos Estimación y distribución de muestreo Referencias: (Chihara and Hesterberg 2018), (Tim C. Hesterberg 2015b) Estimadores y su distribución de muestreo Repaso de probabilidad y Teorema del límite central Introducción a estimación por intervalos Referencias: (Chihara and Hesterberg 2018), (Efron and Tibshirani 1993), (Tim C. Hesterberg 2015b) El método plugin y el boostrap Bootstrap e Intervalos de confianza. Ejemplos. Estimación Referencias: (Chihara and Hesterberg 2018), (Wasserman 2013) Estimación por máxima verosimilitud Ejemplos de estimación por máxima verosimilitud y Bootstrap paramétrico Propiedades de estimadores de máxima verosimilitud Más de pruebas de hipótesis Referencias: (Chihara and Hesterberg 2018), (Wasserman 2013) Pruebas de hipótesis para medias y proporciones: una y dos poblaciones. Introducción a inferencia bayesiana Referencias: (Kruschke 2015) Introducción a inferencia bayesiana Ejemplos de distribuciones conjugadas Introducción a métodos computacionales básicos: Muestreadores Metrópolis y Gibbs Ejemplos de inferencia bayesiana en Stan Evaluación Se evaluará mediante tareas semanales y dos exámenes: Tareas semanales (20%) Examen parcial en clase y a casa (40%) Examen final a casa (40%) Referencias "],["análisis-exploratorio.html", "Sección 1 Análisis exploratorio El papel de la exploración en el análisis de datos Preguntas y datos Algunos conceptos básicos Ejemplos Suavizamiento loess Caso de estudio: nacimientos en México", " Sección 1 Análisis exploratorio “Exploratory data analysis can never be the whole story, but nothing else can serve as the foundation stone –as the first step.” — John Tukey El papel de la exploración en el análisis de datos El estándar científico para contestar preguntas o tomar decisiones es uno que se basa en el análisis de datos. Es decir, en primer lugar se deben reunir todos los datos que puedan contener o sugerir alguna guía para entender mejor la pregunta o la decisión a la que nos enfrentamos. Esta recopilación de datos —que pueden ser cualitativos, cuantitativos, o una mezcla de los dos— debe entonces ser analizada para extraer información relevante para nuestro problema. En análisis de datos existen dos distintos tipos de trabajo: El trabajo exploratorio o de detective: ¿cuáles son los aspectos importantes de estos datos? ¿qué indicaciones generales muestran los datos? ¿qué tareas de análisis debemos empezar haciendo? ¿cuáles son los caminos generales para formular con precisión y contestar algunas preguntas que nos interesen? El trabajo inferencial, confirmatorio, o de juez: ¿cómo evaluar el peso de la evidencia de los descubrimientos del paso anterior? ¿qué tan bien soportadas están las respuestas y conclusiones por nuestro conjunto de datos? Preguntas y datos Cuando observamos un conjunto de datos, independientemente de su tamaño, el paso inicial más importante es entender bajo qué proceso se generan los datos. A grandes rasgos, cuanto más sepamos de este proceso, mejor podemos contestar preguntas de interés. En muchos casos, tendremos que hacer algunos supuestos de cómo se generan estos datos para dar respuestas (condicionales a esos supuestos). Algunos conceptos básicos Empezamos explicando algunas ideas que no serán útiles más adelante. El primer concepto se refiere a entender cómo se distribuyen los datos a los largo de su escala de medición. Comenzamos con un ejemplo: los siguientes datos fueron registrados en un restaurante durante cuatro días consecutivos. library(tidyverse) library(patchwork) # organizar gráficas library(gt) # formatear tablas source("R/funciones_auxiliares.R") # usamos los datos tips del paquete reshape2 propinas <- read_csv("./data/propinas.csv") Y vemos una muestra slice_sample(propinas, n = 10) |> gt() #xddpgkkgug table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #xddpgkkgug thead, #xddpgkkgug tbody, #xddpgkkgug tfoot, #xddpgkkgug tr, #xddpgkkgug td, #xddpgkkgug th { border-style: none; } #xddpgkkgug p { margin: 0; padding: 0; } #xddpgkkgug .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #xddpgkkgug .gt_caption { padding-top: 4px; padding-bottom: 4px; } #xddpgkkgug .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #xddpgkkgug .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #xddpgkkgug .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #xddpgkkgug .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #xddpgkkgug .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #xddpgkkgug .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #xddpgkkgug .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #xddpgkkgug .gt_column_spanner_outer:first-child { padding-left: 0; } #xddpgkkgug .gt_column_spanner_outer:last-child { padding-right: 0; } #xddpgkkgug .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #xddpgkkgug .gt_spanner_row { border-bottom-style: hidden; } #xddpgkkgug .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #xddpgkkgug .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #xddpgkkgug .gt_from_md > :first-child { margin-top: 0; } #xddpgkkgug .gt_from_md > :last-child { margin-bottom: 0; } #xddpgkkgug .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #xddpgkkgug .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #xddpgkkgug .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #xddpgkkgug .gt_row_group_first td { border-top-width: 2px; } #xddpgkkgug .gt_row_group_first th { border-top-width: 2px; } #xddpgkkgug .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #xddpgkkgug .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #xddpgkkgug .gt_first_summary_row.thick { border-top-width: 2px; } #xddpgkkgug .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #xddpgkkgug .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #xddpgkkgug .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #xddpgkkgug .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #xddpgkkgug .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #xddpgkkgug .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #xddpgkkgug .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #xddpgkkgug .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #xddpgkkgug .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #xddpgkkgug .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #xddpgkkgug .gt_left { text-align: left; } #xddpgkkgug .gt_center { text-align: center; } #xddpgkkgug .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #xddpgkkgug .gt_font_normal { font-weight: normal; } #xddpgkkgug .gt_font_bold { font-weight: bold; } #xddpgkkgug .gt_font_italic { font-style: italic; } #xddpgkkgug .gt_super { font-size: 65%; } #xddpgkkgug .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #xddpgkkgug .gt_asterisk { font-size: 100%; vertical-align: 0; } #xddpgkkgug .gt_indent_1 { text-indent: 5px; } #xddpgkkgug .gt_indent_2 { text-indent: 10px; } #xddpgkkgug .gt_indent_3 { text-indent: 15px; } #xddpgkkgug .gt_indent_4 { text-indent: 20px; } #xddpgkkgug .gt_indent_5 { text-indent: 25px; } #xddpgkkgug .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #xddpgkkgug div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } cuenta_total propina fumador dia momento num_personas 9.78 1.73 No Jue Comida 2 13.42 1.68 No Jue Comida 2 11.02 1.98 Si Sab Cena 2 22.49 3.50 No Vie Cena 2 11.59 1.50 Si Sab Cena 2 24.71 5.85 No Jue Comida 2 9.60 4.00 Si Dom Cena 2 19.65 3.00 No Sab Cena 2 18.04 3.00 No Dom Cena 2 30.40 5.60 No Dom Cena 4 Aquí la unidad de observación es una cuenta particular. Tenemos tres mediciones numéricas de cada cuenta: cúanto fue la cuenta total, la propina, y el número de personas asociadas a la cuenta. Los datos están separados según se fumó o no en la mesa, y temporalmente en dos partes: el día (Jueves, Viernes, Sábado o Domingo), cada uno separado por Cena y Comida. Denotamos por \\(x\\) el valor de medición de una unidad de observación. Usualmente utilizamos sub-índices para identificar entre diferentes puntos de datos (observaciones), por ejemplo, \\(x_n\\) para la \\(n-\\)ésima observación. De tal forma que una colección de \\(N\\) observaciones la escribimos como \\[\\begin{align} \\{x_1, \\ldots, x_N\\}. \\end{align}\\] El primer tipo de comparaciones que nos interesa hacer es para una medición: ¿Varían mucho o poco los datos de un tipo de medición? ¿Cuáles son valores típicos o centrales? ¿Existen valores atípicos? Supongamos entonces que consideramos simplemente la variable de cuenta_total. Podemos comenzar por ordenar los datos, y ver cuáles datos están en los extremos y cuáles están en los lugares centrales: propinas <- propinas |> mutate(orden_cuenta = rank(cuenta_total, ties.method = "first"), f = (orden_cuenta - 0.5) / n()) cuenta <- propinas |> select(orden_cuenta, f, cuenta_total) |> arrange(f) bind_rows(head(cuenta), tail(cuenta)) |> gt() |> fmt_number(columns = f, decimals = 3) #zwocxfeiud table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #zwocxfeiud thead, #zwocxfeiud tbody, #zwocxfeiud tfoot, #zwocxfeiud tr, #zwocxfeiud td, #zwocxfeiud th { border-style: none; } #zwocxfeiud p { margin: 0; padding: 0; } #zwocxfeiud .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #zwocxfeiud .gt_caption { padding-top: 4px; padding-bottom: 4px; } #zwocxfeiud .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #zwocxfeiud .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #zwocxfeiud .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #zwocxfeiud .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #zwocxfeiud .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #zwocxfeiud .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #zwocxfeiud .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #zwocxfeiud .gt_column_spanner_outer:first-child { padding-left: 0; } #zwocxfeiud .gt_column_spanner_outer:last-child { padding-right: 0; } #zwocxfeiud .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #zwocxfeiud .gt_spanner_row { border-bottom-style: hidden; } #zwocxfeiud .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #zwocxfeiud .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #zwocxfeiud .gt_from_md > :first-child { margin-top: 0; } #zwocxfeiud .gt_from_md > :last-child { margin-bottom: 0; } #zwocxfeiud .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #zwocxfeiud .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #zwocxfeiud .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #zwocxfeiud .gt_row_group_first td { border-top-width: 2px; } #zwocxfeiud .gt_row_group_first th { border-top-width: 2px; } #zwocxfeiud .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #zwocxfeiud .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #zwocxfeiud .gt_first_summary_row.thick { border-top-width: 2px; } #zwocxfeiud .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #zwocxfeiud .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #zwocxfeiud .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #zwocxfeiud .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #zwocxfeiud .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #zwocxfeiud .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #zwocxfeiud .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #zwocxfeiud .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #zwocxfeiud .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #zwocxfeiud .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #zwocxfeiud .gt_left { text-align: left; } #zwocxfeiud .gt_center { text-align: center; } #zwocxfeiud .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #zwocxfeiud .gt_font_normal { font-weight: normal; } #zwocxfeiud .gt_font_bold { font-weight: bold; } #zwocxfeiud .gt_font_italic { font-style: italic; } #zwocxfeiud .gt_super { font-size: 65%; } #zwocxfeiud .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #zwocxfeiud .gt_asterisk { font-size: 100%; vertical-align: 0; } #zwocxfeiud .gt_indent_1 { text-indent: 5px; } #zwocxfeiud .gt_indent_2 { text-indent: 10px; } #zwocxfeiud .gt_indent_3 { text-indent: 15px; } #zwocxfeiud .gt_indent_4 { text-indent: 20px; } #zwocxfeiud .gt_indent_5 { text-indent: 25px; } #zwocxfeiud .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #zwocxfeiud div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } orden_cuenta f cuenta_total 1 0.002 3.07 2 0.006 5.75 3 0.010 7.25 4 0.014 7.25 5 0.018 7.51 6 0.023 7.56 239 0.977 44.30 240 0.982 45.35 241 0.986 48.17 242 0.990 48.27 243 0.994 48.33 244 0.998 50.81 También podemos graficar los datos en orden, interpolando valores consecutivos. A esta función le llamamos la función de cuantiles para la variable cuenta_total. Nos sirve para comparar directamente los distintos valores que observamos los datos según el orden que ocupan. En particular, podemos estudiar la dispersión y valores centrales de los datos observados: El rango de datos va de unos 3 dólares hasta 50 dólares Los valores centrales, por ejemplo el 50% de los valores más centrales, están entre unos 13 y 25 dólares. El valor que divide en dos mitades iguales a los datos es de alrededor de 18 dólares. El cuantil \\(f\\), que denotamos por \\(q(f)\\) es valor a lo largo de la escala de medición de los datos tal que aproximadamente una fracción \\(f\\) de los datos son menores o iguales a \\(q(f)\\). Al cuantil \\(f=0.5\\) le llamamos la mediana. A los cuantiles \\(f=0.25\\) y \\(f=0.75\\) les llamamos cuartiles inferior y superior. En nuestro ejemplo: Los valores centrales —del cuantil 0.25 al 0.75, por decir un ejemplo— están entre unos 13 y 25 dólares. Estos dos cuantiles se llaman cuartil inferior y cuartil superior respectivamente El cuantil 0.5 (o también conocido como mediana) está alrededor de 18 dólares. Éste último puede ser utilizado para dar un valor central de la distribución de valores para cuenta_total. Asimismo podemos dar resúmenes más refinados si es necesario. Por ejemplo, podemos reportar que: El cuantil 0.95 es de unos 35 dólares — sólo 5% de las cuentas son de más de 35 dólares El cuantil 0.05 es de unos 8 dólares — sólo 5% de las cuentas son de 8 dólares o menos. Finalmente, la forma de la gráfica se interpreta usando su pendiente (tasa de cambio) haciendo comparaciones en diferentes partes de la gráfica: La distribución de valores tiene asimetría: el 10% de las cuentas más altas tiene considerablemente más dispersión que el 10% de las cuentas más bajas. Entre los cuantiles 0.2 y 0.7 es donde existe mayor densidad de datos: la pendiente (tasa de cambio) es baja, lo que significa que al avanzar en los valores observados, los cuantiles (el porcentaje de casos) aumenta rápidamente. Cuando la pendiente alta, quiere decir que los datos tienen más dispersión local o están más separados. Observación: Hay varias maneras de definir los cuantiles (ver (William S. Cleveland 1993)): Supongamos que queremos definir \\(q(f)\\), y denotamos los datos ordenados como \\(x_{(1)}, x_{(2)}, \\ldots, x_{(N)}\\), de forma que \\(x_{(1)}\\) es el dato más chico y \\(x_{(N)}\\) es el dato más grande. Para cada \\(x_{(i)}\\) definimos \\[f_i = i / N\\] entonces definimos el cuantil \\(q(f_i)=x_{(i)}\\). Para cualquier \\(f\\) entre 0 y 1, podemos definir \\(q(f)\\) como sigue: si \\(f\\) está entre \\(f_i\\) y \\(f_{i+1}\\) interpolamos linealmente los valores correspondientes \\(x_{(i)}\\) y \\(x_{(i+1)}\\). En la práctica, es más conveniente usar \\(f_i= \\frac{i - 0.5}{N}\\). La gráfica de cuantiles no cambia mucho comparado con la difinición anterior, y esto nos permitirá comparar de mejor manera con distribuciones teóricas que no tienen definido su cuantil 0 y el 1, pues tienen soporte en los números reales (como la distribución normal, por ejemplo). Asociada a la función de cuantiles \\(q\\) tenemos la distribución acumulada empírica de los datos, que es aproximadamente inversa de la función de cuantiles, y se define como: \\[\\hat{F}(x) = i/N\\] si \\(x_{(i)} \\leq x < x_{(i+1)}\\). Nótese que \\(\\hat{F}(q(f_i)) = i/N = f_i\\) (demuéstralo). acum_cuenta <- ecdf(cuenta$cuenta_total) cuenta <- cuenta |> mutate(dea_cuenta_total = acum_cuenta(cuenta_total)) g_acum <- ggplot(cuenta, aes(x = cuenta_total, y = dea_cuenta_total)) + geom_point() + labs(subtitle = "Distribución acum empírica de cuenta total", x = "") g_cuantiles + g_acum La función de distribución acumulada empírica es otra forma de graficar la dispersión de los datos. En su gráfica vemos que proporción de los datos que son iguales o están por debajo de cada valor en el eje horizontal. Nota: En análisis de datos, es más frecuente utilizar la función de cuantiles pues existen versiones más generales que son útiles, por ejemplo, para evaluar ajuste de modelos probabilísticos En la teoría, generalmente es más común utilizar la fda empírica, que tiene una única definición que veremos coincide con definiciones teóricas. Histogramas En algunos casos, es más natural hacer un histograma, donde dividimos el rango de la variable en cubetas o intervalos (en este caso de igual longitud), y graficamos por medio de barras cuántos datos caen en cada cubeta: Es una gráfica más popular, pero perdemos cierto nivel de detalle, y distintas particiones resaltan distintos aspectos de los datos. ¿Cómo se ve la gráfica de cuantiles de las propinas? ¿Cómo crees que esta gráfica se compara con distintos histogramas? g_1 <- ggplot(propinas, aes(sample = propina)) + geom_qq(distribution = stats::qunif) + labs(x = "f", y = "propina") g_1 Finalmente, una gráfica más compacta que resume la gráfica de cuantiles o el histograma es el diagrama de caja y brazos. Mostramos dos versiones, la clásica de Tukey (T) y otra versión menos común de Spear/Tufte (ST): library(ggthemes) cuartiles <- quantile(cuenta$cuenta_total) cuartiles |> round(2) ## 0% 25% 50% 75% 100% ## 3.07 13.35 17.80 24.13 50.81 g_1 <- ggplot(cuenta, aes(x = f, y = cuenta_total)) + labs(subtitle = "Gráfica de cuantiles: Cuenta total") + geom_hline(yintercept = cuartiles[2:4], colour = "gray") + geom_point(alpha = 0.5) + geom_line() g_2 <- ggplot(cuenta, aes(x = factor("ST", levels = "ST"), y = cuenta_total)) + geom_tufteboxplot() + labs(subtitle = "", x = "", y = "") g_3 <- ggplot(cuenta, aes(x = factor("T"), y = cuenta_total)) + geom_boxplot() + labs(subtitle = "", x = "", y = "") g_4 <- ggplot(cuenta, aes(x = factor("P"), y = cuenta_total)) + geom_jitter(height = 0, width =0.2, alpha = 0.5) + labs(subtitle = "", x = "", y = "") g_5 <- ggplot(cuenta, aes(x = factor("V"), y = cuenta_total)) + geom_violin() + labs(subtitle = "", x = "", y = "") g_1 + g_2 + g_3 + g_4 + plot_layout(widths = c(8, 2, 2, 2)) El diagrama de abajo explica los elementos de la versión típica del diagrama de caja y brazos (boxplot). RIC se refiere al Rango Intercuantílico, definido por la diferencia entre los cuantiles 25% y 75%. Figura: Jumanbar / CC BY-SA Ventajas en el análisis inicial En un principio del análisis, estos resúmenes (cuantiles) pueden ser más útiles que utilizar medias y varianzas, por ejemplo. La razón es que los cuantiles: Son cantidades más fácilmente interpretables Los cuantiles centrales son más resistentes a valores atípicos que medias o varianzas Permiten identificar valores extremos Es fácil comparar cuantiles de distintos bonches de datos en la misma escala Nota: Existen diferentes definiciones para calcular cuantiles de una muestra de datos, puedes leer más en este artículo. Media y desviación estándar Las medidas más comunes de localización y dispersión para un conjunto de datos son la media muestral y la desviación estándar muestral. En general, no son muy apropiadas para iniciar el análisis exploratorio, pues: Son medidas más difíciles de interpretar y explicar que los cuantiles. En este sentido, son medidas especializadas. Por ejemplo, compara una explicación intuitiva de la mediana contra una explicación intuitiva de la media. No son resistentes a valores atípicos. Su falta de resistencia los vuelve poco útiles en las primeras etapas de limpieza y descripción y en resúmenes deficientes para distribuciones irregulares (con colas largas por ejemplo). La media, o promedio, se denota por \\(\\bar x\\) y se define como \\[\\begin{align} \\bar x = \\frac1N \\sum_{n = 1}^N x_n. \\end{align}\\] La desviación estándar muestral se define como \\[\\begin{align} \\text{std}(x) = \\sqrt{\\frac1{N-1} \\sum_{n = 1}^N (x_n - \\bar x)^2}. \\end{align}\\] Observación: Si \\(N\\) no es muy chica, no importa mucho si dividimos por \\(N\\) o por \\(N-1\\) en la fórmula de la desviación estándar. La razón de que típicamente se usa \\(N-1\\) la veremos más adelante, en la parte de estimación. Por otro lado, ventajas de estas medidas de centralidad y dispersión son: La media y desviación estándar son computacionalmente convenientes. Por lo tanto regresaremos a estas medidas una vez que estudiemos modelos de probabilidad básicos. En muchas ocasiones conviene usar estas medidas pues permite hacer comparaciones históricas o tradicionales —pues análisis anteriores pudieran estar basados en éstas. Considera el caso de tener \\(N\\) observaciones y asume que ya tienes calculado el promedio para dichas observaciones. Este promedio lo denotaremos por \\(\\bar x_N\\). Ahora, considera que has obtenido \\(M\\) observaciones más. Escribe una fórmula recursiva para la media del conjunto total de datos \\(\\bar x_{N+M}\\) en función de lo que ya tenías precalculado \\(\\bar x_N.\\) ¿En qué situaciones esta propiedad puede ser conveniente? Ejemplos Precios de casas En este ejemplo consideremos los datos de precios de ventas de la ciudad de Ames, Iowa. En particular nos interesa entender la variación del precio de las casas. Por este motivo calculamos los cuantiles que corresponden al 25%, 50% y 75% (cuartiles), así como el mínimo y máximo de los precios de las casas: quantile(casas |> pull(precio_miles)) ## 0% 25% 50% 75% 100% ## 37.9 132.0 165.0 215.0 755.0 Comprueba que el mínimo y máximo están asociados a los cuantiles 0% y 100%, respectivamente. Una posible comparación es considerar los precios y sus variación en función de zona de la ciudad en que se encuentra una vivienda. Podemos usar diagramas de caja y brazos para hacer una comparación burda de los precios en distintas zonas de la ciudad: ggplot(casas, aes(x = nombre_zona, y = precio_miles)) + geom_boxplot() + coord_flip() La primera pregunta que nos hacemos es cómo pueden variar las características de las casas dentro de cada zona. Para esto, podemos considerar el área de las casas. En lugar de graficar el precio, graficamos el precio por metro cuadrado, por ejemplo: ggplot(casas, aes(x = nombre_zona, y = precio_m2)) + geom_boxplot() + coord_flip() Podemos cuantificar la variación que observamos de zona a zona y la variación que hay dentro de cada una de las zonas. Una primera aproximación es observar las variación del precio al calcular la mediana dentro de cada zona, y después cuantificar por medio de cuantiles cómo varía la mediana entre zonas: casas |> group_by(nombre_zona) |> summarise(mediana_zona = median(precio_m2), .groups = "drop") |> arrange(mediana_zona) |> pull(mediana_zona) |> quantile() |> round() ## 0% 25% 50% 75% 100% ## 963 1219 1298 1420 1725 Por otro lado, las variaciones con respecto a las medianas dentro de cada zona, por grupo, se resume como: quantile(casas |> group_by(nombre_zona) |> mutate(residual = precio_m2 - median(precio_m2)) |> pull(residual)) |> round() ## 0% 25% 50% 75% 100% ## -765 -166 0 172 1314 Nótese que este último paso tiene sentido pues la variación dentro de las zonas, en términos de precio por metro cuadrado, es similar. Esto no lo podríamos haber hecho de manera efectiva si se hubiera utilizado el precio de las casas sin ajustar por su tamaño. Podemos resumir este primer análisis con un par de gráficas de cuantiles (William S. Cleveland (1993)): mediana <- median(casas$precio_m2) resumen <- casas |> select(nombre_zona, precio_m2) |> group_by(nombre_zona) |> mutate(mediana_zona = median(precio_m2)) |> mutate(residual = precio_m2 - mediana_zona) |> ungroup() |> mutate(mediana_zona = mediana_zona - mediana) |> select(nombre_zona, mediana_zona, residual) |> pivot_longer(mediana_zona:residual, names_to = "tipo", values_to = "valor") ggplot(resumen, aes(sample = valor)) + geom_qq(distribution = stats::qunif) + facet_wrap(~ tipo) + ylab("Precio por m2") + xlab("f") + labs(subtitle = "Precio por m2 por zona", caption = paste0("Mediana total de ", round(mediana))) Vemos que la mayor parte de la variación del precio por metro cuadrado ocurre dentro de cada zona, una vez que controlamos por el tamaño de las casas. La variación dentro de cada zona es aproximadamente simétrica, aunque la cola derecha es ligeramente más larga con algunos valores extremos. Podemos seguir con otro indicador importante: la calificación de calidad de los terminados de las casas. Como primer intento podríamos hacer: Lo que indica que las calificaciones de calidad están distribuidas de manera muy distinta a lo largo de las zonas, y que probablemente no va ser simple desentrañar qué variación del precio se debe a la zona y cuál se debe a la calidad. Prueba Enlace Consideremos la prueba Enlace (2011) de matemáticas para primarias. Una primera pregunta que alguien podría hacerse es: ¿cuáles escuelas son mejores en este rubro, las privadas o las públicas? enlace_tbl <- enlace |> group_by(tipo) |> summarise(n_escuelas = n(), cuantiles = list(cuantil(mate_6, c(0.05, 0.25, 0.5, 0.75, 0.95)))) |> unnest(cols = cuantiles) |> mutate(valor = round(valor)) enlace_tbl |> spread(cuantil, valor) |> gt() #sykxxonvyi table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #sykxxonvyi thead, #sykxxonvyi tbody, #sykxxonvyi tfoot, #sykxxonvyi tr, #sykxxonvyi td, #sykxxonvyi th { border-style: none; } #sykxxonvyi p { margin: 0; padding: 0; } #sykxxonvyi .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #sykxxonvyi .gt_caption { padding-top: 4px; padding-bottom: 4px; } #sykxxonvyi .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #sykxxonvyi .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #sykxxonvyi .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #sykxxonvyi .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sykxxonvyi .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #sykxxonvyi .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #sykxxonvyi .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #sykxxonvyi .gt_column_spanner_outer:first-child { padding-left: 0; } #sykxxonvyi .gt_column_spanner_outer:last-child { padding-right: 0; } #sykxxonvyi .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #sykxxonvyi .gt_spanner_row { border-bottom-style: hidden; } #sykxxonvyi .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #sykxxonvyi .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #sykxxonvyi .gt_from_md > :first-child { margin-top: 0; } #sykxxonvyi .gt_from_md > :last-child { margin-bottom: 0; } #sykxxonvyi .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #sykxxonvyi .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #sykxxonvyi .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #sykxxonvyi .gt_row_group_first td { border-top-width: 2px; } #sykxxonvyi .gt_row_group_first th { border-top-width: 2px; } #sykxxonvyi .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #sykxxonvyi .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #sykxxonvyi .gt_first_summary_row.thick { border-top-width: 2px; } #sykxxonvyi .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sykxxonvyi .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #sykxxonvyi .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #sykxxonvyi .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #sykxxonvyi .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #sykxxonvyi .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sykxxonvyi .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #sykxxonvyi .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #sykxxonvyi .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #sykxxonvyi .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #sykxxonvyi .gt_left { text-align: left; } #sykxxonvyi .gt_center { text-align: center; } #sykxxonvyi .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #sykxxonvyi .gt_font_normal { font-weight: normal; } #sykxxonvyi .gt_font_bold { font-weight: bold; } #sykxxonvyi .gt_font_italic { font-style: italic; } #sykxxonvyi .gt_super { font-size: 65%; } #sykxxonvyi .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #sykxxonvyi .gt_asterisk { font-size: 100%; vertical-align: 0; } #sykxxonvyi .gt_indent_1 { text-indent: 5px; } #sykxxonvyi .gt_indent_2 { text-indent: 10px; } #sykxxonvyi .gt_indent_3 { text-indent: 15px; } #sykxxonvyi .gt_indent_4 { text-indent: 20px; } #sykxxonvyi .gt_indent_5 { text-indent: 25px; } #sykxxonvyi .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #sykxxonvyi div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } tipo n_escuelas 0.05 0.25 0.5 0.75 0.95 Indígena/Conafe 13599 304 358 412 478 588 General 60166 380 454 502 548 631 Particular 6816 479 551 593 634 703 Para un análisis exploratorio podemos utilizar distintas gráficas. Por ejemplo, podemos utilizar nuevamente las gráficas de caja y brazos, así como graficar los percentiles. Nótese que en la gráfica 1 se utilizan los cuantiles 0.05, 0.25, 0.5, 0.75 y 0.95: ## Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0. ## ℹ Please use `linewidth` instead. ## This warning is displayed once every 8 hours. ## Call `lifecycle::last_lifecycle_warnings()` to see where this warning was ## generated. Se puede discutir qué tan apropiada es cada gráfica con el objetivo de realizar comparaciones. Sin duda, graficar más cuantiles es más útil para hacer comparaciones. Por ejemplo, en la Gráfica 1 podemos ver que la mediana de las escuelas generales está cercana al cuantil 5% de las escuelas particulares. Por otro lado, el diagrama de caja y brazos muestra también valores “atípicos”. Antes de contestar prematuramente la pregunta: ¿cuáles son las mejores escuelas? busquemos mejorar la interpretabilidad de nuestras comparaciones. Podemos comenzar por agregar, por ejemplo, el nivel del marginación del municipio donde se encuentra la escuela. Para este objetivo, podemos usar páneles (pequeños múltiplos útiles para hacer comparaciones) y graficar: Esta gráfica pone en contexto la pregunta inicial, y permite evidenciar la dificultad de contestarla. En particular: Señala que la pregunta no sólo debe concentarse en el tipo de “sistema”: pública, privada, etc. Por ejemplo, las escuelas públicas en zonas de marginación baja no tienen una distribución de calificaciones muy distinta a las privadas en zonas de marginación alta. El contexto de la escuela es importante. Debemos de pensar qué factores –por ejemplo, el entorno familiar de los estudiantes– puede resultar en comparaciones que favorecen a las escuelas privadas. Un ejemplo de esto es considerar si los estudiantes tienen que trabajar o no. A su vez, esto puede o no ser reflejo de la calidad del sistema educativo. Si esto es cierto, entonces la pregunta inicial es demasiado vaga y mal planteada. Quizá deberíamos intentar entender cuánto “aporta” cada escuela a cada estudiante, como medida de qué tan buena es cada escuela. Estados y calificaciones en SAT ¿Cómo se relaciona el gasto por alumno, a nivel estatal, con sus resultados académicos? Hay trabajo considerable en definir estos términos, pero supongamos que tenemos el siguiente conjunto de datos (Guber 1999), que son datos oficiales agregados por estado de Estados Unidos. Consideremos el subconjunto de variables sat, que es la calificación promedio de los alumnos en cada estado (para 1997) y expend, que es el gasto en miles de dólares por estudiante en (1994-1995). sat <- read_csv("data/sat.csv") sat_tbl <- sat |> select(state, expend, sat) |> gather(variable, valor, expend:sat) |> group_by(variable) |> summarise(cuantiles = list(cuantil(valor))) |> unnest(cols = c(cuantiles)) |> mutate(valor = round(valor, 1)) |> spread(cuantil, valor) sat_tbl |> gt() #trvhlcrcph table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #trvhlcrcph thead, #trvhlcrcph tbody, #trvhlcrcph tfoot, #trvhlcrcph tr, #trvhlcrcph td, #trvhlcrcph th { border-style: none; } #trvhlcrcph p { margin: 0; padding: 0; } #trvhlcrcph .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #trvhlcrcph .gt_caption { padding-top: 4px; padding-bottom: 4px; } #trvhlcrcph .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #trvhlcrcph .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #trvhlcrcph .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #trvhlcrcph .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #trvhlcrcph .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #trvhlcrcph .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #trvhlcrcph .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #trvhlcrcph .gt_column_spanner_outer:first-child { padding-left: 0; } #trvhlcrcph .gt_column_spanner_outer:last-child { padding-right: 0; } #trvhlcrcph .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #trvhlcrcph .gt_spanner_row { border-bottom-style: hidden; } #trvhlcrcph .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #trvhlcrcph .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #trvhlcrcph .gt_from_md > :first-child { margin-top: 0; } #trvhlcrcph .gt_from_md > :last-child { margin-bottom: 0; } #trvhlcrcph .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #trvhlcrcph .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #trvhlcrcph .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #trvhlcrcph .gt_row_group_first td { border-top-width: 2px; } #trvhlcrcph .gt_row_group_first th { border-top-width: 2px; } #trvhlcrcph .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #trvhlcrcph .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #trvhlcrcph .gt_first_summary_row.thick { border-top-width: 2px; } #trvhlcrcph .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #trvhlcrcph .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #trvhlcrcph .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #trvhlcrcph .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #trvhlcrcph .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #trvhlcrcph .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #trvhlcrcph .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #trvhlcrcph .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #trvhlcrcph .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #trvhlcrcph .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #trvhlcrcph .gt_left { text-align: left; } #trvhlcrcph .gt_center { text-align: center; } #trvhlcrcph .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #trvhlcrcph .gt_font_normal { font-weight: normal; } #trvhlcrcph .gt_font_bold { font-weight: bold; } #trvhlcrcph .gt_font_italic { font-style: italic; } #trvhlcrcph .gt_super { font-size: 65%; } #trvhlcrcph .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #trvhlcrcph .gt_asterisk { font-size: 100%; vertical-align: 0; } #trvhlcrcph .gt_indent_1 { text-indent: 5px; } #trvhlcrcph .gt_indent_2 { text-indent: 10px; } #trvhlcrcph .gt_indent_3 { text-indent: 15px; } #trvhlcrcph .gt_indent_4 { text-indent: 20px; } #trvhlcrcph .gt_indent_5 { text-indent: 25px; } #trvhlcrcph .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #trvhlcrcph div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } variable 0 0.25 0.5 0.75 1 expend 3.7 4.9 5.8 6.4 9.8 sat 844.0 897.2 945.5 1032.0 1107.0 Esta variación es considerable para promedios del SAT: el percentil 75 es alrededor de 1050 puntos, mientras que el percentil 25 corresponde a alrededor de 800. Igualmente, hay diferencias considerables de gasto por alumno (miles de dólares) a lo largo de los estados. Ahora hacemos nuestro primer ejercico de comparación: ¿Cómo se ven las calificaciones para estados en distintos niveles de gasto? Podemos usar una gráfica de dispersión: library(ggrepel) ggplot(sat, aes(x = expend, y = sat, label = state)) + geom_point(colour = "red", size = 2) + geom_text_repel(colour = "gray50") + xlab("Gasto por alumno (miles de dólares)") + ylab("Calificación promedio en SAT") Estas comparaciones no son de alta calidad, solo estamos usando 2 variables —que son muy pocas— y no hay mucho que podamos decir en cuanto explicación. Sin duda nos hace falta una imagen más completa. Necesitaríamos entender la correlación que existe entre las demás características de nuestras unidades de estudio. Las unidades que estamos comparando pueden diferir fuertemente en otras propiedades importantes (o dimensiones), lo cual no permite interpretar la gráfica de manera sencilla. Una variable que tenemos es el porcentaje de alumnos de cada estado que toma el SAT. Podemos agregar como sigue: ggplot(sat, aes(x = expend, y = math, label=state, colour = frac)) + geom_point() + geom_text_repel() + xlab("Gasto por alumno (miles de dólares)") + ylab("Calificación promedio en SAT") Esto nos permite entender por qué nuestra comparación inicial es relativamente pobre. Los estados con mejores resultados promedio en el SAT son aquellos donde una fracción relativamente baja de los estudiantes toma el examen. La diferencia es considerable. En este punto podemos hacer varias cosas. Una primera idea es intentar comparar estados más similares en cuanto a la población de alumnos que asiste. Podríamos hacer grupos como sigue: set.seed(991) k_medias_sat <- kmeans(sat |> select(frac), centers = 4, nstart = 100, iter.max = 100) sat$clase <- k_medias_sat$cluster sat <- sat |> group_by(clase) |> mutate(clase_media = round(mean(frac))) |> ungroup() |> mutate(clase_media = factor(clase_media)) sat <- sat |> mutate(rank_p = rank(frac, ties= "first") / length(frac)) ggplot(sat, aes(x = rank_p, y = frac, label = state, colour = clase_media)) + geom_point(size = 2) Estos resultados indican que es más probable que buenos alumnos decidan hacer el SAT. Lo interesante es que esto ocurre de manera diferente en cada estado. Por ejemplo, en algunos estados era más común otro examen: el ACT. Si hacemos clusters de estados según el % de alumnos, empezamos a ver otra historia. Para esto, ajustemos rectas de mínimos cuadrados como referencia: Esto da una imagen muy diferente a la que originalmente planteamos. Nota que dependiendo de cómo categorizamos, esta gráfica puede variar (puedes intentar con más o menos grupos, por ejemplo). Tablas de conteos Consideremos los siguientes datos de tomadores de té (del paquete FactoMineR (Lê et al. 2008)): tea <- read_csv("data/tea.csv") # nombres y códigos te <- tea |> select(how, price, sugar) |> rename(presentacion = how, precio = price, azucar = sugar) |> mutate( presentacion = fct_recode(presentacion, suelto = "unpackaged", bolsas = "tea bag", mixto = "tea bag+unpackaged"), precio = fct_recode(precio, marca = "p_branded", variable = "p_variable", barato = "p_cheap", marca_propia = "p_private label", desconocido = "p_unknown", fino = "p_upscale"), azucar = fct_recode(azucar, sin_azúcar = "No.sugar", con_azúcar = "sugar")) sample_n(te, 10) ## # A tibble: 10 × 3 ## presentacion precio azucar ## <fct> <fct> <fct> ## 1 bolsas marca sin_azúcar ## 2 bolsas variable sin_azúcar ## 3 bolsas marca con_azúcar ## 4 bolsas fino con_azúcar ## 5 mixto variable con_azúcar ## 6 mixto fino con_azúcar ## 7 bolsas marca sin_azúcar ## 8 bolsas fino sin_azúcar ## 9 mixto variable con_azúcar ## 10 mixto variable sin_azúcar Nos interesa ver qué personas compran té suelto, y de qué tipo. Empezamos por ver las proporciones que compran té según su empaque (en bolsita o suelto): precio <- te |> count(precio) |> mutate(prop = round(100 * n / sum(n))) |> select(-n) tipo <- te |> count(presentacion) |> mutate(pct = round(100 * n / sum(n))) tipo |> gt() #wiljiluquk table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #wiljiluquk thead, #wiljiluquk tbody, #wiljiluquk tfoot, #wiljiluquk tr, #wiljiluquk td, #wiljiluquk th { border-style: none; } #wiljiluquk p { margin: 0; padding: 0; } #wiljiluquk .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #wiljiluquk .gt_caption { padding-top: 4px; padding-bottom: 4px; } #wiljiluquk .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #wiljiluquk .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #wiljiluquk .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #wiljiluquk .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #wiljiluquk .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #wiljiluquk .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #wiljiluquk .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #wiljiluquk .gt_column_spanner_outer:first-child { padding-left: 0; } #wiljiluquk .gt_column_spanner_outer:last-child { padding-right: 0; } #wiljiluquk .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #wiljiluquk .gt_spanner_row { border-bottom-style: hidden; } #wiljiluquk .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #wiljiluquk .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #wiljiluquk .gt_from_md > :first-child { margin-top: 0; } #wiljiluquk .gt_from_md > :last-child { margin-bottom: 0; } #wiljiluquk .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #wiljiluquk .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #wiljiluquk .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #wiljiluquk .gt_row_group_first td { border-top-width: 2px; } #wiljiluquk .gt_row_group_first th { border-top-width: 2px; } #wiljiluquk .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #wiljiluquk .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #wiljiluquk .gt_first_summary_row.thick { border-top-width: 2px; } #wiljiluquk .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #wiljiluquk .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #wiljiluquk .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #wiljiluquk .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #wiljiluquk .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #wiljiluquk .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #wiljiluquk .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #wiljiluquk .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #wiljiluquk .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #wiljiluquk .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #wiljiluquk .gt_left { text-align: left; } #wiljiluquk .gt_center { text-align: center; } #wiljiluquk .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #wiljiluquk .gt_font_normal { font-weight: normal; } #wiljiluquk .gt_font_bold { font-weight: bold; } #wiljiluquk .gt_font_italic { font-style: italic; } #wiljiluquk .gt_super { font-size: 65%; } #wiljiluquk .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #wiljiluquk .gt_asterisk { font-size: 100%; vertical-align: 0; } #wiljiluquk .gt_indent_1 { text-indent: 5px; } #wiljiluquk .gt_indent_2 { text-indent: 10px; } #wiljiluquk .gt_indent_3 { text-indent: 15px; } #wiljiluquk .gt_indent_4 { text-indent: 20px; } #wiljiluquk .gt_indent_5 { text-indent: 25px; } #wiljiluquk .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #wiljiluquk div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } presentacion n pct bolsas 170 57 mixto 94 31 suelto 36 12 La mayor parte de las personas toma té en bolsas. Sin embargo, el tipo de té (en términos de precio o marca) que compran es muy distinto dependiendo de la presentación: tipo <- tipo |> select(presentacion, prop_presentacion = pct) tabla_cruzada <- te |> count(presentacion, precio) |> # porcentajes por presentación group_by(presentacion) |> mutate(prop = round(100 * n / sum(n))) |> select(-n) tabla_cruzada |> pivot_wider(names_from = presentacion, values_from = prop, values_fill = list(prop = 0)) |> gt() #sxkvcchtyg table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #sxkvcchtyg thead, #sxkvcchtyg tbody, #sxkvcchtyg tfoot, #sxkvcchtyg tr, #sxkvcchtyg td, #sxkvcchtyg th { border-style: none; } #sxkvcchtyg p { margin: 0; padding: 0; } #sxkvcchtyg .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #sxkvcchtyg .gt_caption { padding-top: 4px; padding-bottom: 4px; } #sxkvcchtyg .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #sxkvcchtyg .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #sxkvcchtyg .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #sxkvcchtyg .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sxkvcchtyg .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #sxkvcchtyg .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #sxkvcchtyg .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #sxkvcchtyg .gt_column_spanner_outer:first-child { padding-left: 0; } #sxkvcchtyg .gt_column_spanner_outer:last-child { padding-right: 0; } #sxkvcchtyg .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #sxkvcchtyg .gt_spanner_row { border-bottom-style: hidden; } #sxkvcchtyg .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #sxkvcchtyg .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #sxkvcchtyg .gt_from_md > :first-child { margin-top: 0; } #sxkvcchtyg .gt_from_md > :last-child { margin-bottom: 0; } #sxkvcchtyg .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #sxkvcchtyg .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #sxkvcchtyg .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #sxkvcchtyg .gt_row_group_first td { border-top-width: 2px; } #sxkvcchtyg .gt_row_group_first th { border-top-width: 2px; } #sxkvcchtyg .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #sxkvcchtyg .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #sxkvcchtyg .gt_first_summary_row.thick { border-top-width: 2px; } #sxkvcchtyg .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sxkvcchtyg .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #sxkvcchtyg .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #sxkvcchtyg .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #sxkvcchtyg .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #sxkvcchtyg .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #sxkvcchtyg .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #sxkvcchtyg .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #sxkvcchtyg .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #sxkvcchtyg .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #sxkvcchtyg .gt_left { text-align: left; } #sxkvcchtyg .gt_center { text-align: center; } #sxkvcchtyg .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #sxkvcchtyg .gt_font_normal { font-weight: normal; } #sxkvcchtyg .gt_font_bold { font-weight: bold; } #sxkvcchtyg .gt_font_italic { font-style: italic; } #sxkvcchtyg .gt_super { font-size: 65%; } #sxkvcchtyg .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #sxkvcchtyg .gt_asterisk { font-size: 100%; vertical-align: 0; } #sxkvcchtyg .gt_indent_1 { text-indent: 5px; } #sxkvcchtyg .gt_indent_2 { text-indent: 10px; } #sxkvcchtyg .gt_indent_3 { text-indent: 15px; } #sxkvcchtyg .gt_indent_4 { text-indent: 20px; } #sxkvcchtyg .gt_indent_5 { text-indent: 25px; } #sxkvcchtyg .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #sxkvcchtyg div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } precio bolsas mixto suelto marca 41 21 14 barato 3 1 3 marca_propia 9 4 3 desconocido 6 1 0 fino 8 20 56 variable 32 52 25 Estos datos podemos examinarlos un rato y llegar a conclusiones, pero esta tabla no necesariamente es la mejor manera de mostrar patrones en los datos. Tampoco son muy útiles gráficas como la siguiente: ggplot(tabla_cruzada |> ungroup() |> mutate(price = fct_reorder(precio, prop)), aes(x = precio, y = prop, group = presentacion, colour = presentacion)) + geom_point() + coord_flip() + geom_line() En lugar de eso, calcularemos perfiles columna. Esto es, comparamos cada una de las columnas con la columna marginal (en la tabla de tipo de estilo de té): num_grupos <- n_distinct(te |> select(presentacion)) tabla <- te |> count(presentacion, precio) |> group_by(presentacion) |> mutate(prop_precio = (100 * n / sum(n))) |> group_by(precio) |> mutate(prom_prop = sum(prop_precio)/num_grupos) |> mutate(perfil = 100 * (prop_precio / prom_prop - 1)) tabla ## # A tibble: 17 × 6 ## # Groups: precio [6] ## presentacion precio n prop_precio prom_prop perfil ## <fct> <fct> <int> <dbl> <dbl> <dbl> ## 1 bolsas marca 70 41.2 25.4 61.8 ## 2 bolsas barato 5 2.94 2.26 30.1 ## 3 bolsas marca_propia 16 9.41 5.48 71.7 ## 4 bolsas desconocido 11 6.47 2.51 158. ## 5 bolsas fino 14 8.24 28.0 -70.6 ## 6 bolsas variable 54 31.8 36.3 -12.5 ## 7 mixto marca 20 21.3 25.4 -16.4 ## 8 mixto barato 1 1.06 2.26 -52.9 ## 9 mixto marca_propia 4 4.26 5.48 -22.4 ## 10 mixto desconocido 1 1.06 2.51 -57.6 ## 11 mixto fino 19 20.2 28.0 -27.8 ## 12 mixto variable 49 52.1 36.3 43.6 ## 13 suelto marca 5 13.9 25.4 -45.4 ## 14 suelto barato 1 2.78 2.26 22.9 ## 15 suelto marca_propia 1 2.78 5.48 -49.3 ## 16 suelto fino 20 55.6 28.0 98.4 ## 17 suelto variable 9 25 36.3 -31.1 tabla_perfil <- tabla |> select(presentacion, precio, perfil, pct = prom_prop) |> pivot_wider(names_from = presentacion, values_from = perfil, values_fill = list(perfil = -100.0)) if_profile <- function(x){ any(x < 0) & any(x > 0) } marcar <- marcar_tabla_fun(25, "red", "black") tab_out <- tabla_perfil |> arrange(desc(bolsas)) |> select(-pct, everything()) |> mutate(across(where(is.numeric), \\(x) round(x, 0))) |> mutate(across(where(if_profile), \\(x) marcar(x))) |> knitr::kable(format_table_salida(), escape = FALSE, digits = 0, booktabs = T) |> kableExtra::kable_styling(latex_options = c("striped", "scale_down"), bootstrap_options = c( "hover", "condensed"), full_width = FALSE) tab_out precio bolsas mixto suelto pct desconocido 158 -58 -100 3 marca_propia 72 -22 -49 5 marca 62 -16 -45 25 barato 30 -53 23 2 variable -12 44 -31 36 fino -71 -28 98 28 Leemos esta tabla como sigue: por ejemplo, los compradores de té suelto compran té fino a una tasa casi el doble (98%) que el promedio. También podemos graficar como: tabla_graf <- tabla_perfil |> ungroup() |> mutate(precio = fct_reorder(precio, bolsas)) |> select(-pct) |> pivot_longer(cols = -precio, names_to = "presentacion", values_to = "perfil") g_perfil <- ggplot(tabla_graf, aes(x = precio, xend = precio, y = perfil, yend = 0, group = presentacion)) + geom_point() + geom_segment() + facet_wrap(~presentacion) + geom_hline(yintercept = 0 , colour = "gray")+ coord_flip() g_perfil Observación: hay dos maneras de construir la columna promedio: tomando los porcentajes sobre todos los datos, o promediando los porcentajes de las columnas. Si los grupos de las columnas están desbalanceados, estos promedios son diferentes. Cuando usamos porcentajes sobre la población, perfiles columna y renglón dan el mismo resultado Sin embargo, cuando hay un grupo considerablemente más grande que otros, las comparaciones se vuelven vs este grupo particular. No siempre queremos hacer esto. Interpretación En el último ejemplo de tomadores de té utilizamos una muestra de personas, no toda la población de tomadores de té. Eso quiere decir que tenemos cierta incertidumbre de cómo se generalizan o no los resultados que obtuvimos en nuestro análisis a la población general. Nuestra respuesta depende de cómo se extrajo la muestra que estamos considerando. Si el mecanismo de extracción incluye algún proceso probabilístico, entonces es posible en principio entender qué tan bien generalizan los resultados de nuestro análisis a la población general, y entender esto depende de entender qué tanta variación hay de muestra a muestra, de todas las posibles muestras que pudimos haber extraido. En las siguientes secciones discutiremos estos aspectos, en los cuales pasamos del trabajo de “detective” al trabajo de “juez” en nuestro trabajo analítico. Suavizamiento loess Las gráficas de dispersión son la herramienta básica para describir la relación entre dos variables cuantitativas, y como vimos en ejemplo anteriores, muchas veces podemos apreciar mejor la relación entre ellas si agregamos una curva loess. Veamos un ejemplo, los siguientes datos muestran los premios ofrecidos y las ventas totales de una lotería a lo largo de 53 sorteos (las unidades son cantidades de dinero indexadas). Graficamos en escalas logarítmicas y agregamos una curva loess. # cargamos los datos load(here::here("data", "ventas_sorteo.Rdata")) ggplot(ventas.sorteo, aes(x = premio, y = ventas.tot.1)) + geom_point() + geom_smooth(method = "loess", span = 0.6, method.args = list(degree = 1), se = FALSE) + scale_x_log10(breaks = c(20000, 40000, 80000)) + scale_y_log10(breaks = c(10000, 15000, 22000, 33000)) El patrón no era difícil de ver en los datos originales, sin embargo, la curva lo hace más claro, el logaritmo de las ventas tiene una relación no lineal con el logaritmo del premio: para premios no muy grandes no parece haber gran diferencia, pero cuando los premios empiezan a crecer por encima de 20,000, las ventas crecen más rápidamente que para premios menores. Este efecto se conoce como bola de nieve, y es frecuente en este tipo de loterías. Antes de adentrarnos a los modelos loess comenzamos explicando cómo se ajustan familias paramétricas de curvas a conjuntos de datos dados. El modelo de regresion lineal ajusta una recta a un conjunto de datos. Por ejemplo, consideremos la familia \\[f_{a,b}(x) = a x + b,\\] para un conjunto de datos bivariados \\(\\{ (x_1, y_1), \\ldots, (x_N, y_N)\\}\\). Buscamos encontrar \\(a\\) y \\(b\\) tales que \\(f_{a,b}\\) de un ajuste óptimo a los datos. Para esto, se minimiza la suma de errores cuadráticos \\[\\frac1N \\sum_{n = 1}^N ( y_n - a x_n - b)^2.\\] En este caso, las constantes \\(a\\) y \\(b\\) se pueden encontrar diferenciando la función de mínimos cuadrados. Nótese que podemos repetir el argumento con otras familias de funciones (por ejemplo cuadráticas). ggplot(ventas.sorteo, aes(x = premio, y = ventas.tot.1)) + geom_point() + geom_smooth(method = "lm", se = FALSE) + scale_x_log10(breaks = c(20000, 40000, 80000)) + scale_y_log10(breaks = c(10000, 15000, 22000, 33000)) Si observamos la gráfica notamos que este modelo lineal (en los logaritmos) no resumen adecuadamente estos datos. Podríamos experimentar con otras familias (por ejemplo, una cuadrática o cúbica, potencias, exponenciales, etc.); sin embargo, en la etapa exploratoria es mejor tomar una ruta de ajuste más flexible y robusta. Regresión local nos provee de un método con estas características: Curvas loess (regresión local): Una manera de mejorar la flexibilidad de los modelos lineales es considerar rectas de manera local. Es decir, en cada \\(x\\) posible consideramos cuál es la recta que mejor ajusta a los datos, considerando solamente valores de \\(x_n\\) que están cercanos a \\(x\\). La siguiente gráfica muestra qué recta se ajusta alrededor de cada punto, y cómo queda el suavizador completo, con distintos valores de suavizamiento. El tono de los puntos indican en cada paso que ventana de datos es considerada: Escogiendo de los parámetros. El parámetro de suavizamiento se encuentra por ensayo y error. La idea general es que debemos encontrar una curva que explique patrones importantes en los datos (que ajuste los datos) pero que no muestre variaciones a escalas más chicas difíciles de explicar (que pueden ser el resultado de influencias de otras variables, variación muestral, ruido o errores de redondeo, por ejemplo). En el proceso de prueba y error iteramos el ajuste y en cada paso hacemos análisis de residuales, con el fin de seleccionar un suavizamiento adecuado. En lugar de usar ajustes locales lineales, podemos usar ajustes locales cuadráticos que nos permiten capturar formas locales cuadráticas sin tener que suavizar demasiado poco: Opcional: cálculo del suavizador La idea es producir ajustes locales de rectas o funciones lineales o cuadráticas. Consideremos especificar dos parámetros: Parámetro de suavizamiento \\(\\alpha\\): toma valores en \\((0,1)\\), cuando \\(\\alpha\\) es más grande, la curva ajustada es más suave. Grado de los polinomios locales que ajustamos \\(\\lambda\\): generalmente se toma \\(\\lambda=1,2\\). Entonces, supongamos que los datos están dados por \\((x_1,y_1), \\ldots, (x_N, y_N)\\), y sean \\(\\alpha\\) un parámetro de suavizamiento fijo, y \\(\\lambda=1\\). Denotamos como \\(\\hat{g}(x)\\) la curva loess ajustada, y como \\(w_n(x)\\) a una función de peso (que depende de x) para la observación \\((x_n, y_n)\\). Para poder calcular \\(w_n(x)\\) debemos comenzar calculando \\(q=\\lfloor{N\\alpha}\\rfloor\\) que suponemos mayor que uno, esta \\(q\\) es el número de puntos que se utilizan en cada ajuste local. Ahora definimos la función tricubo: \\[\\begin{align} T(u)=\\begin{cases} (1-|u|^3)^3, & \\text{para $|u| < 1$}.\\\\ 0, & \\text{en otro caso}. \\end{cases} \\end{align}\\] entonces, para el punto \\(x\\) definimos el peso correspondiente al dato \\((x_n,y_n)\\), denotado por \\(w_n(x)\\) como: \\[w_n(x)=T\\bigg(\\frac{|x-x_n|}{d_q(x)}\\bigg)\\] donde \\(d_q(x)\\) es el valor de la \\(q\\)-ésima distancia más chica (la más grande entre las \\(q\\) más chicas) entre los valores \\(|x-x_j|\\), \\(j=1,\\ldots,N\\). De esta forma, las observaciones \\(x_n\\) reciben más peso cuanto más cerca estén de \\(x\\). En palabras, de \\(x_1,...,x_N\\) tomamos los \\(q\\) datos más cercanos a \\(x\\), que denotamos \\(x_{i_1}(x) \\leq x_{i_2}(x) \\leq \\cdots \\leq x_{i_q}(x)\\). Los re-escalamos a \\([0,1]\\) haciendo corresponder \\(x\\) a \\(0\\) y el punto más alejado de \\(x\\) (que es \\(x_{i_q}\\)) a 1. Aplicamos el tricubo (gráfica de abajo), para encontrar los pesos de cada punto. Los puntos que están a una distancia mayor a \\(d_q(x)\\) reciben un peso de cero, y los más cercanos un peso que depende de que tan cercanos están a \\(x\\). Nótese que \\(x\\) es el punto ancla en dónde estamos ajustando la regresión local. tricubo <- function(x) { ifelse(abs(x) < 1, (1 - abs(x) ^ 3) ^ 3, 0) } curve(tricubo, from = -1.5, to = 1.5) Finalmente, para cada valor de \\(x_k\\) que está en el conjunto de datos \\(\\{x_1,...,x_n\\}\\), ajustamos una recta de mínimos cuadrados ponderados por los pesos \\(w_n(x)\\), es decir, minimizamos (en el caso lineal): \\[\\sum_{i=1}^nw_n(x_k)(y_i-ax_n-b)^2.\\] Observaciones: Cualquier función (continua y quizás diferenciable) con la forma de flan del tricubo que se desvanece fuera de \\((-1,1),\\) es creciente en \\((-1,0)\\) y decreciente en \\((0, 1)\\) es un buen candidato para usarse en lugar del tricubo. La razón por la que escogemos precisamente esta forma algebráica no tiene que ver con el análisis exploratorio, sino con las ventajas teóricas adicionales que tiene en la inferencia. El caso \\(\\lambda=2\\) es similar. La única diferencia es en el paso de ajuste, donde usamos funciones cuadráticas, y obtendríamos entonces tres familias de parámetros \\(a(x_k), b_1(x_k), b_2(x_k),\\) para cada \\(k \\in \\{1, \\ldots, N\\}\\). Caso de estudio: nacimientos en México Podemos usar el suavizamiento loess para entender y describir el comportamiento de series de tiempo, en las cuáles intentamos entender la dependencia de una serie de mediciones indexadas por el tiempo. Típicamente es necesario utilizar distintas componentes para describir exitosamente una serie de tiempo, y para esto usamos distintos tipos de suavizamientos. Veremos que distintas componentes varían en distintas escalas de tiempo (unas muy lentas, como la tendencia, otras más rapidamente, como variación quincenal, etc.). Este caso de estudio esta basado en un análisis propuesto por A. Vehtari y A. Gelman, junto con un análisis de serie de tiempo de William S. Cleveland (1993). En nuestro caso, usaremos los datos de nacimientos registrados por día en México desde 1999. Los usaremos para contestar las preguntas: ¿cuáles son los cumpleaños más frecuentes? y ¿en qué mes del año hay más nacimientos? Podríamos utilizar una gráfica popular (ver por ejemplo esta visualización) como: Sin embargo, ¿cómo criticarías este análisis desde el punto de vista de los tres primeros principios del diseño analítico? ¿Las comparaciones son útiles? ¿Hay aspectos multivariados? ¿Qué tan bien explica o sugiere estructura, mecanismos o causalidad? Datos de natalidad para México library(lubridate) library(ggthemes) theme_set(theme_minimal(base_size = 14)) natalidad <- read_rds("./data/nacimientos/natalidad.rds") |> mutate(dia_semana = weekdays(fecha)) |> mutate(dia_año = yday(fecha)) |> mutate(año = year(fecha)) |> mutate(mes = month(fecha)) |> ungroup() |> mutate(dia_semana = recode(dia_semana, Monday = "Lunes", Tuesday = "Martes", Wednesday = "Miércoles", Thursday = "Jueves", Friday = "Viernes", Saturday = "Sábado", Sunday = "Domingo")) |> #necesario pues el LOCALE puede cambiar mutate(dia_semana = recode(dia_semana, lunes = "Lunes", martes = "Martes", miércoles = "Miércoles", jueves = "Jueves", viernes = "Viernes", sábado = "Sábado", domingo = "Domingo")) |> mutate(dia_semana = fct_relevel(dia_semana, c("Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sábado", "Domingo"))) Consideremos los datos agregados del número de nacimientos (registrados) por día desde 1999 hasta 2016. Un primer intento podría ser hacer una gráfica de la serie de tiempo. Sin embargo, vemos que no es muy útil: Hay varias características que notamos. Primero, parece haber una tendencia ligeramente decreciente del número de nacimientos a lo largo de los años. Segundo, la gráfica sugiere un patrón anual. Y por último, encontramos que hay dispersión producida por los días de la semana. Sólo estas características hacen que la comparación entre días sea difícil de realizar. Supongamos que comparamos el número de nacimientos de dos miércoles dados. Esa comparación será diferente dependiendo: del año donde ocurrieron, el mes donde ocurrieron, si semana santa ocurrió en algunos de los miércoles, y así sucesivamente. Como en nuestros ejemplos anteriores, la idea del siguiente análisis es aislar las componentes que observamos en la serie de tiempo: extraemos componentes ajustadas, y luego examinamos los residuales. En este caso particular, asumiremos una descomposición aditiva de la serie de tiempo (William S. Cleveland 1993). En el estudio de series de tiempo una estructura común es considerar el efecto de diversos factores como tendencia, estacionalidad, ciclicidad e irregularidades de manera aditiva. Esto es, consideramos la descomposición \\[\\begin{align} y(t) = f_{t}(t) + f_{e}(t) + f_{c}(t) + \\varepsilon. \\end{align}\\] Una estrategia de ajuste, como veremos más adelante, es proceder de manera modular. Es decir, se ajustan los componentes de manera secuencial considerando los residuales de los anteriores. Tendencia Comenzamos por extraer la tendencia, haciendo promedios loess (William S. Cleveland 1979) con vecindades relativamente grandes. Quizá preferiríamos suavizar menos para capturar más variación lenta, pero si hacemos esto en este punto empezamos a absorber parte de la componente anual: mod_1 <- loess(n ~ as.numeric(fecha), data = natalidad, span = 0.2, degree = 1) datos_dia <- natalidad |> mutate(ajuste_1 = fitted(mod_1)) |> mutate(res_1 = n - ajuste_1) Notemos que a principios de 2000 el suavizador está en niveles de alrededor de 7000 nacimientos diarios, hacia 2015 ese número es más cercano a unos 6000. Componente anual Al obtener la tendencia podemos aislar el efecto a largo plazo y proceder a realizar mejores comparaciones (por ejemplo, comparar un día de 2000 y de 2015 tendria más sentido). Ahora, ajustamos los residuales del suavizado anterior, pero con menos suavizamiento. Así evitamos capturar tendencia: mod_anual <- loess(res_1 ~ as.numeric(fecha), data = datos_dia, degree = 2, span = 0.005) datos_dia <- datos_dia |> mutate(ajuste_2 = fitted(mod_anual)) |> mutate(res_2 = res_1 - ajuste_2) Día de la semana Hasta ahora, hemos aislado los efectos por plazos largos de tiempo (tendencia) y hemos incorporado las variaciones estacionales (componente anual) de nuestra serie de tiempo. Ahora, veremos cómo capturar el efecto por día de la semana. En este caso, podemos hacer suavizamiento loess para cada serie de manera independiente datos_dia <- datos_dia |> group_by(dia_semana) |> nest() |> mutate(ajuste_mod = map(data, ~ loess(res_2 ~ as.numeric(fecha), data = .x, span = 0.1, degree = 1))) |> mutate(ajuste_3 = map(ajuste_mod, fitted)) |> select(-ajuste_mod) |> unnest(cols = c(data, ajuste_3)) |> mutate(res_3 = res_2 - ajuste_3) |> ungroup() Residuales Por último, examinamos los residuales finales quitando los efectos ajustados: ## `geom_smooth()` using formula = 'y ~ x' Observación: nótese que la distribución de estos residuales presenta irregularidades interesantes. La distribución es de colas largas, y no se debe a unos cuantos datos atípicos. Esto generalmente es indicación que hay factores importantes que hay que examinar mas a detalle en los residuales: Reestimación Cuando hacemos este proceso secuencial de llevar el ajuste a los residual, a veces conviene iterarlo. La razón es que en una segunda o tercera pasada podemos hacer mejores estimaciones de cada componente, y es posible suavizar menos sin capturar componentes de más alta frecuencia. Así que podemos regresar a la serie original para hacer mejores estimaciones, más suavizadas: # Quitamos componente anual y efecto de día de la semana datos_dia <- datos_dia |> mutate(n_1 = n - ajuste_2 - ajuste_3) # Reajustamos mod_1 <- loess(n_1 ~ as.numeric(fecha), data = datos_dia, span = 0.02, degree = 2, family = "symmetric") Y ahora repetimos con la componente de día de la semana: Análisis de componentes Ahora comparamos las componentes estimadas y los residuales en una misma gráfica. Por definición, la suma de todas estas componentes da los datos originales. Este último paso nos permite diversas comparaciones que explican la variación que vimos en los datos. Una gran parte de los residuales está entre \\(\\pm 250\\) nacimientos por día. Sin embargo, vemos que las colas tienen una dispersión mucho mayor: quantile(datos_dia$res_6, c(00, .01,0.05, 0.10, 0.90, 0.95, 0.99, 1)) |> round() ## 0% 1% 5% 10% 90% 95% 99% 100% ## -2238 -1134 -315 -202 188 268 516 2521 ¿A qué se deben estas colas tan largas? Viernes 13? Podemos empezar con una curosidad. Los días Viernes o Martes 13, ¿nacen menos niños? Nótese que fue útil agregar el indicador de Semana santa por el Viernes 13 de Semana Santa que se ve como un atípico en el panel de los viernes 13. Residuales: antes y después de 2006 Veamos primero una agregación sobre los años de los residuales. Lo primero es observar un cambio que sucedió repentinamente en 2006: La razón es un cambio en la ley acerca de cuándo pueden entrar los niños a la primaria. Antes era por edad y había poco margen. Ese exceso de nacimientos son reportes falsos para que los niños no tuvieran que esperar un año completo por haber nacido unos cuantos días después de la fecha límite. Otras características que debemos investigar: Efectos de Año Nuevo, Navidad, Septiembre 16 y otros días feriados como Febrero 14. Semana santa: como la fecha cambia, vemos que los residuales negativos tienden a ocurrir dispersos alrededor del día 100 del año. Otros días especiales: más de residuales Ahora promediamos residuales (es posible agregar barras para indicar dispersión a lo largo de los años) para cada día del año. Podemos identificar ahora los residuales más grandes: se deben, por ejemplo, a días feriados, con consecuencias adicionales que tienen en días ajuntos (excesos de nacimientos): Semana santa Para Semana Santa tenemos que hacer unos cálculos. Si alineamos los datos por días antes de Domingo de Pascua, obtenemos un patrón de caída fuerte de nacimientos el Viernes de Semana Santa, y la característica forma de “valle con hombros” en días anteriores y posteriores estos Viernes. ¿Por qué ocurre este patrón? Nótese un defecto de nuestro modelo: el patrón de “hombros” alrededor del Viernes Santo no es suficientemente fuerte para equilibrar los nacimientos faltantes. ¿Cómo podríamos mejorar nuestra descomposición? Referencias "],["tipos-de-estudio-y-experimentos.html", "Sección 2 Tipos de estudio y experimentos Muestreo aleatorio Pero si no podemos hacer muestreo aleatorio? El estimador estándar Experimentos tradicionales Bloqueo Variables desconocidas Aleatorizando el tratamiento Selección de unidades y tratamiento Asignación natural del tratamiento", " Sección 2 Tipos de estudio y experimentos Motivación Pregunta de entrevista de Google (Chihara and Hesterberg 2018) Imagina que eres consultor y te preguntan lo siguiente (ver siguiente figura): Estoy haciendo una comparación de antes y después donde la hipótesis alternativa es pre.media.error > post.media.error. La distribución de ambas muestras es sesgada a la derecha. ¿Qué prueba me recomiendas para ésta situación? Figure 2.1: Error CPR, gráfica de densidad. Far better an approximate answer to the right question, which is often vague, than an exact answer to the wrong question, which can always be made precise. — John Tukey La siguiente imagen Roger Peng representa una situación común a la que se enfrenta el analista de datos, y se desarrolló en el contexto de preguntas vagas. En el esquema hay tres caminos: uno es uno ideal que pocas veces sucede, otro produce respuestas poco útiles pero es fácil, y otro es tortuoso pero que caracteriza el mejor trabajo de análisis de datos: Figure 2.2: Adaptado de R. Peng: Tukey, design thinking and better questions. Ejemplos: Alguien nos pregunta cuáles son las tiendas que mas venden de una cadena. Podríamos consultar bases de datos, hacer extracciones, definir periodos, etc. y reportar el promedio de ventas en el último mes, esta respuesta probablemente es poco útil. Nos damos cuenta, por ejemplo, porque la peor tienda es una que abrió hace relativamente poco, y la mejor es una de las tiendas más grandes que está en una zona de tráfico de alto costo. Una pregunta más interesante es, ¿qué equipos de ventas tienen mejor desempeño? ¿Cuánto aporta tener una cafetería dentro de la tienda en términos de ventas?, etc. Proceso Generador de Datos Entre las preguntas que se debe hacer el analista de datos una fundamental es entender el proceso generador de datos, pues esto determinará que otras preguntas son relevantes, y que análisis son adecuados, tanto en términos prácticos como estadísticos. La inferencia estadística busca hacer afirmaciones, cuantificadas de manera probabilista, acerca de datos que no tenemos, usando regularidades y conocimiento de datos que sí tenemos disponibles y métodos cuantitativos. Para hacer afirmaciones inferenciales eficientes y bien calibradas (con garantías estadísticas de calibración) a preguntas donde queremos generalizar de muestra a población, se requiere conocer con precisión el proceso que genera los datos muestrales. Esto incluye saber con detalle cómo se seleccionaron los datos a partir de los que se quiere hacer inferencia. En este caso, eficiente quiere decir que aprovechamos toda la información que está en los datos observados de manera que nuestros rangos de incertidumbre son lo más chico posibles (además de estar correctamente calibrados). Por su parte, probabilísticamente bien calibrados se refiere a que, lo que decimos que puede ocurrir con 10% de probabilidad ocurre efectivamente 1 de cada 10 veces, si decimos 20% entonces ocurre 2 de 20, etc. Veremos que para muestras dadas naturalmente, a veces es muy difiícil entender a fondo el proceso que generó la muestra y por tanto no tenemos las garantías de eficiencia y calibración. Ejemplo: Prevalencia de anemia Supongamos que nos interesa conocer el porcentaje de menores en edad escolar, (entre 6 y 15 años), con anemia en México. La fuente de datos disponible corresponde a registros del IMSS de hospitalizaciones de menores, ya sea por anemia o por otra causa (infecciones gastrointestinales, apendicitis, tratamiento de leucemia, …), se registró si el menor tenía anemia. En nuestra muestra el 47% de los niños tiene anemia. head(paciente) #> # A tibble: 6 × 4 #> edad padecimiento sexo anemia #> <int> <chr> <chr> <int> #> 1 8 picadura alacrán mujer 0 #> 2 10 infección intestinal hombre 1 #> 3 7 mordedura de perro hombre 1 #> 4 8 asma hombre 1 #> 5 13 infección intestinal mujer 0 #> 6 7 picadura alacrán hombre 0 ¿Qué nos dice esta cantidad acerca de la anemia en la población? ¿Podemos hacer inferencia estadística? ¿Cómo calculamos intervalos de confianza? # Si calculo el error estándar de la p estimada como sigue, es correcto? p <- mean(paciente$anemia) sqrt(p * (1 - p) / 5000) #> [1] 0.007060751 Muestreo aleatorio En la situación ideal diseñaríamos una muestra aleatoria de menores de edad, por ejemplo, utilizando el registro en educación primaria de la SEP, y mediríamos la prevalencia de anemia en la muestra, usaríamos esta muestra para estimar la prevalencia en la población y tendríamos además las herramientas para medir la incertidumbre de nuestra estimación (reportar intervalos, o errores estándar). El elemento clave, es la aleatorización en la selección de la muestra, la idea es distribuir los efecros desconcidos o no controlables que pueden introducir sesgos o variabilidad no conocida en los resultados. Pero si no podemos hacer muestreo aleatorio? En el caso de prevalencia de anemia, discutiendo con médicos e investigadores nos informan que la anemia se presenta en tasas más altas en niños más chicos. paciente |> count(edad) |> mutate(prop = round(100 * n / sum(n))) #> # A tibble: 10 × 3 #> edad n prop #> <int> <int> <dbl> #> 1 6 1001 20 #> 2 7 931 19 #> 3 8 980 20 #> 4 9 445 9 #> 5 10 484 10 #> 6 11 489 10 #> 7 12 246 5 #> 8 13 239 5 #> 9 14 90 2 #> 10 15 95 2 Y consultando con las proyecciones de población notamos que los niños chicos están sobrerepresentados en la muestra. Lo que nos hace considerar que debemos buscar una manera de ponderar nuestras observaciones para que reflejen a la población. Más aún, investigamos que algunas enfermedades están asociadas a mayor prevalencia de anemia: paciente |> count(padecimiento) |> arrange(-n) #> # A tibble: 7 × 2 #> padecimiento n #> <chr> <int> #> 1 infección respiratoria 745 #> 2 mordedura de perro 723 #> 3 úlcera 723 #> 4 asma 713 #> 5 apendcitis 704 #> 6 picadura alacrán 701 #> 7 infección intestinal 691 Utilizamos esta información para modelar y corregir nuestra estimación original. Por ejemplo con modelos de regresión. Sin embargo, debemos preguntarnos: ¿Hay más variables qué nos falta considerar? Ejemplo: Policías y tráfico Supongamos que nos preguntan en cuánto reduce un policía el tráfico en un crucero grande de la ciudad. La cultura popular ha establecido que los policías en cruceros hacen más tráfico porque no saben mover los semáforos. Nosotros decidimos buscar unos datos para entender esto. Escogemos entonces un grupo de cruceros problemáticos, registramos el tráfico cuando visitamos, y si había un policía o no. Después de este esfuerzo, obtenemos los siguientes datos: #> # A tibble: 10 × 2 #> # Groups: policia [2] #> policia tiempo_espera_min #> <int> <dbl> #> 1 0 2.27 #> 2 0 2.65 #> 3 0 3.4 #> 4 0 0.39 #> 5 0 1.1 #> 6 1 10.8 #> 7 1 4.67 #> 8 1 7.77 #> 9 1 6.3 #> 10 1 6.99 Lo que sabemos ahora es que la presencia de un policía es indicador de tráfico alto. El análisis prosiguiría calculando medias y medidas de error (escogimos una muestra aleatoria): Si somos ingenuos, entonces podríamos concluir que los policías efectivamente empeoran la situación cuando manipulan los semáforos, y confirmaríamos la sabiduría popular. Para juzgar este argumento desde el punto de vista causal, nos preguntamos primero: ¿Cuáles son los contrafactuales (los contrafactuales explican que pasaría si hubiéramos hecho otra cosa que la que efectivamente hicimos) de las observaciones? Efectos causales y el esquema de resultados potenciales Consideramos un tratamiento binario: Se manda policía o no se manda policía. Un resultado potencial es aquél que se observaría bajo un tratamiento particular. En cada semáforo, a una hora dada, hay dos resultados potenciales, uno por cada valor del tratamiento: \\(y_1:\\) tiempo de espera si se envía policía. \\(y_0:\\) tiempo de espera si no se envía policía. Para cada semáforo, en el momento de registro, uno observa únicamente uno de los dos resultados potenciales. El resultado no observado se conoce como resultado contrafactual. El estimador estándar A la comparación anterior - la diferencia de medias de tratados y no tratados - le llamamos usualmente el estimador estándar del efecto causal. Muchas veces este es un estimador malo del efecto causal. En nuestro ejemplo, para llegar a la conclusión errónea que confirma la sabiduría popular, hicimos un supuesto importante: En nuestra muestra, los casos con policía actúan como contrafactuales de los casos sin policía. Asi que asumimos que los casos con policía y sin policía son similares, excepto por la existencia o no de policía. En nuestro ejemplo, quizá un analista más astuto nota que tienen categorías históricas de qué tan complicado es cada crucero. Junta a sus datos, y obtiene: #> # A tibble: 10 × 3 #> # Groups: policia [2] #> policia tiempo_espera_min categoria #> <int> <dbl> <fct> #> 1 0 2.27 Fluido #> 2 0 2.65 Fluido #> 3 0 3.4 Típico #> 4 0 0.39 Fluido #> 5 0 1.1 Fluido #> 6 1 10.8 Complicado #> 7 1 4.67 Típico #> 8 1 7.77 Complicado #> 9 1 6.3 Complicado #> 10 1 6.99 Típico El analista argumenta entonces que los policías se enviaron principalmente a cruceros que se consideran Complicados según datos históricos. Esto resta credibilidad a la comparación que hicimos inicialmente: La comparación del estimador estándar no es de peras con peras: estamos comparando qué efecto tienen los policías en cruceros difíciles, con cruceros no difíciles donde no hay policía. La razón de esto es que el proceso generador de los datos incluye el hecho de que no se envían policías a lugares donde no hay tráfico. ¿Cómo producir contrafactuales para hacer la comparación correcta? Experimentos tradicionales Idealmente, quisiéramos observar un mismo crucero en las dos condiciones: con y sin policías. Esto no es posible. En un experimento “tradicional”, como nos lo explicaron en la escuela, nos aproximamos a esto preparando dos condiciones idénticas, y luego alteramos cada una de ellas con nuestra intervención. Si el experimento está bien hecho, esto nos da observaciones en pares, y cada quien tiene su contrafactual. La idea del experimiento tradicional es controlar todos los factores que intervienen en los resultados, y sólo mover el tratamiento para producir los contrafactuales. Más en general, esta estrategia consiste en hacer bloques de condiciones, donde las condiciones son prácticamente idénticas dentro de cada bloque. Comparamos entonces unidades tratadas y no tratadas dentro de cada bloque. Por ejemplo, si queremos saber si el tiempo de caída libre es diferente para un objeto más pesado que otro, prepararíamos dos pesos con el mismo tamaño pero de peso distinto. Soltaríamos los dos al mismo tiempo y compararíamos el tiempo de caída de cada uno. En nuestro caso, como es usual en problemas de negocio o sociales, hacer esto es considerablemente más difícil. No podemos “preparar” cruceros con condiciones idénticas. Sin embargo, podríamos intentar \\(bloquear\\) los cruceros según información que tenemos acerca de ellos, para hacer más comparaciones de peras con peras. Bloqueo Podemos acercanos en lo posible a este ideal de experimentación usando información existente. En lugar de hacer comparaciones directas entre unidades que recibieron el tratamiento y las que no (que pueden ser diferentes en otros aspectos, como vimos arriba), podemos refinar nuestras comparaciones bloquéandolas con variables conocidas. En el ejemplo de los policías, podemos hacer lo siguiente: dentro de cada categoría de cruceros (fluido, típico o complicado), tomaremos una muestra de cruceros, algunos con policía y otros sin. Haremos comparaciones dentro de cada categoría. Obtenemos una muestra con estas características (6 casos en cada categoría de crucero, 3 con policía y 3 sin policía): categoria policia n Fluido 0 3 Fluido 1 3 Típico 0 3 Típico 1 3 Complicado 0 3 Complicado 1 3 Y ahora hacemos comparaciones dentro de cada bloque creado por categoría: #> # A tibble: 3 × 3 #> # Groups: categoria [3] #> categoria `policia =0` `policia =1` #> <fct> <dbl> <dbl> #> 1 Fluido 2.1 0.8 #> 2 Típico 5.6 4.2 #> 3 Complicado 10.4 8.6 Y empezamos a ver otra imagen en estos datos: comparando tipos e cruceros similares, los que tienen policía tienen tiempos de espera ligeramente más cortos. ¿Hemos termniado? ¿Podemos concluir que el efecto de un policía es beneficiosos pero considerablemente chico? ¿Qué problemas puede haber con este análisis? Variables desconocidas El problema con el análisis anterior es que controlamos por una variable que conocemos, pero muchas otras variables pueden estar ligadas con el proceso de selección de cruceros para enviar policías. Por ejemplo, envían o policías a cruceros Típicos solo cuando reportan mucho tráfico. No envían a un polícia a un crucero Complicado si no presenta demasiado tráfico. Existen otras variables desconocidas que los tomadores de decisiones usan para enviar a los policías. En este caso, por ejemplo, los expertos hipotéticos nos señalan que hay algunos cruceros que aunque problemáticos, a veces su tráfico se resuelve rápidamente, mientras que otros tienen tráfico más persistente, y prefieren enviar policías a los de tráfico persistente. La lista de cruceros persistentes están en una hoja de excel que se comparte de manera informal. En resumen, no tenemos conocimiento detallado del proceso generador de datos en cuanto a cómo se asignan los policías a los cruceros. Igual que en la sección anterior, podemos cortar esta complejidad usando aleatorización. Nótese que los expertos no están haciendo nada malo: en su trabajo están haciendo el mejor uso de los recursos que tienen. El problema es que por esa misma razón no podemos saber el resultado de sus esfuerzos, y si hay maneras de optimizar la asignación que hacen actualmente. Aleatorizando el tratamiento Tomamos la decisión entonces de hacer un experimento que incluya aletorización. En un dia particular, escogeremos algunos cruceros. Dicidimos usar solamente cruceros de la categoría Complicada y Típica, pues esos son los más interesantes para hacer intervenciones. Usaremos un poco de código para entener el detalle: en estos datos, tenemos para cada caso los dos posibles resultados hipotéticos \\(y_0\\) y \\(y_1\\) (con policia y sin policia). En el experimento asignamos el tratamiento al azar: muestra_exp <- trafico_tbl |> filter(categoria != "Fluido") |> sample_n(200) |> # asignar tratamiento al azar, esta es nuestra intervención: mutate(tratamiento_policia = rbernoulli(length(y_0), 0.5)) |> # observar resultado mutate(tiempo_espera_exp = ifelse(tratamiento_policia == 1, y_1, y_0)) Nótese la diferencia si tomamos la asignación natural del tratamiento (policía o no): set.seed(134) muestra_natural <- trafico_tbl |> filter(categoria != "Fluido") |> sample_n(200) |> # usamos el tratamiento que se asignó # policia indica si hubo o no policía en ese crucero # observar resultado mutate(tiempo_espera_obs = ifelse(policia == 1, y_1, y_0)) Resumimos nuestros resultados del experimento son: #> # A tibble: 2 × 3 #> # Groups: categoria [2] #> categoria `policia=0` `policia=1` #> <fct> <dbl> <dbl> #> 1 Típico 6.24 4.97 #> 2 Complicado 15.8 8.47 Sin embargo, la muestra natural da: #> # A tibble: 2 × 3 #> # Groups: categoria [2] #> categoria `policia=0` `policia=1` #> <fct> <dbl> <dbl> #> 1 Típico 5.49 4.35 #> 2 Complicado 10.8 8.93 ¿Cuál de los dos análisis da la respuesta correcta a la pregunta: ayudan o no los policías a reducir el tráfico en los cruceros problemáticos? El experimento establece que un policía en promedio reduce a la mitad el tiempo de espera en un crucero complicado Selección de unidades y tratamiento Vimos dos tipos de inferencia que requieren distintos diseños de estudio: a poblaciones (ejemplo anemia) y causal (ejemplo policías). En el escenario ideal de cada uno de estos ejemplos requerimos un mecanismo de aleatorización, sin embargo, la aleatorización requerida en cada caso es distinta y distinguir esto es fundamental para entender las inferencias que podemos hacer en distintos escenarios. Inferencia estadística de acuerdo al tipo del diseño (Ramsey and Schafer (2012)). El cuadro arriba a la izquierda es donde el análisis es más simple y los resultados son más fáciles de interpretar. En este escenario don de la aleatorización es tanto en unidades como en grupos no hacen falta supuestos adicionales para tener las garantías de métodos de inferencia. Es posible hacer análisis fuera de este cuadro, pero el proceso es más complicado, requieren más supuestos, conocimiento del dominio y habilidades de análisis. En general resultan conclusiones menos sólidas. Muchas veces no nos queda otra más que trabajar fuera del cuadro ideal. El punto crucial para entender las medidas de incertidumbre estadística es visualizar de manera hipotética, replicaciones del estudio y las condiciones que llevaron a la selección de la muestra. Esto es, entender el proceso generador de datos e imaginar replicarlo. Ubica los siguientes tipos de análisis: Pruebas clínicas para medicinas Analizar cómo afecta tener seguro médico a los ingresos, usando datos del ENIGH. Estimación de retorno sobre inversión en modelos de marketing mix. Asignación natural del tratamiento Cuando consideramos un sistema donde se “asignan” tratamientos de manera natural, generalmente los tratamientos se asignan bajo un criterio de optimización o conveniencia (por ejemplo los policías a cruceros problemáticos). La cara buena de este hecho es que de alguna forma los resultados están intentando optimizarse, y la gente está haciendo su trabajo. La cara mala de este hecho es que no podemos evaluar de manera simple la efectividad de los tratamientos. Y esto hace difícil optimizar de forma cuantificable los procesos, o entender qué funciona y qué no. Referencias "],["pruebas-de-hipótesis.html", "Sección 3 Pruebas de hipótesis Comparación con poblaciones de referencia Comparando distribuciones Prueba de permutaciones y el lineup Comparaciones usando lineup (continuación) Prueba de permutaciones para proporciones Pruebas de hipótesis tradicionales Tomadores de té (continuación) Pruebas de permutación: implementación. Ejemplo: tiempos de fusión Ejemplo: tiempos de fusión (continuación) Separación de grupos La “crisis de replicabilidad” El jardín de los senderos que se bifurcan Ejemplo: decisiones de análisis y valores p Alternativas o soluciones", " Sección 3 Pruebas de hipótesis Las primeras técnicas inferenciales que veremos intentan contestar la siguiente pregunta: Si observamos cierto patrón en los datos, ¿cómo podemos cuantificar la evidencia de que es un patrón notable y no sólo debido a fluctuaciones en los datos particulares que tenemos? ¿Cómo sabemos que no estamos sobreinterpretando esas fluctuaciones? Por ejemplo: Un sistema tiene cierto comportamiento “usual” para el cual tenemos datos históricos. El sistema presenta fluctuaciones en el tiempo. Observamos la última salida de nuestro sistema. Naturalmente, tiene fluctuaciones. ¿Esas fluctuaciones son consistentes con la operación usual del sistema? ¿Existe evidencia para pensar que algo en el sistema cambió? Comparación con poblaciones de referencia En las prueba de hipótesis, tratamos de construir distribuciones de referencia para comparar resultados que obtengamos con un “estándar” de variación, y juzgar si nuestros resultados son consistentes con la referencia o no (Box et al. 1978). En algunos casos, ese estándar de variación puede construirse con datos históricos. Ejemplo Supongamos que estamos considerando cambios rápidos en una serie de tiempo de alta frecuencia. Hemos observado la serie en su estado “normal” durante un tiempo considerable, y cuando observamos nuevos datos quisiéramos juzgar si hay indicaciones o evidencia en contra de que el sistema sigue funcionando de manera similar. Digamos que monitoreamos ventanas de tiempo de tamaño 20 y necesitamos tomar una decisión. Abajo mostramos cinco ejemplos donde el sistema opera normalmente, que muestra la variabilidad en el tiempo en ventanas cortas del sistema. Ahora suponemos que obtenemos una nueva ventana de datos. ¿Hay evidencia en contra de que el sistema sigue funcionando de manera similar? Nuestra primera inclinación debe ser comparar: en este caso, compararamos ventanas históricas con nuestra nueva serie: # usamos datos simulados para este ejemplo set.seed(8812) historicos <- simular_serie(2000) ¿Vemos algo diferente en los datos nuevos (el panel de color diferente)? Indpendientemente de la respuesta, vemos que hacer este análisis de manera tan simple no es siempre útil: seguramente podemos encontrar maneras en que la nueva muestra (4) es diferente a muestras históricas. Por ejemplo, ninguna de muestras tiene un “forma de montaña” tan clara. Nos preguntamos si no estamos sobreinterpretando variaciones que son parte normal del proceso. Podemos hacer un mejor análisis si extraemos varias muestras del comportamiento usual del sistema, graficamos junto a la nueva muestra, y revolvemos las gráficas para que no sepamos cuál es cuál. Entonces la pregunta es: ¿Podemos detectar donde están los datos nuevos? Esta se llama una prueba de lineup, o una prueba de ronda de sospechosos (Hadley Wickham et al. 2010). En la siguiente gráfica, en uno de los páneles están los datos recientemente observados. ¿Hay algo en los datos que distinga al patrón nuevo? # nuevos datos obs <- simular_serie(500, x_inicial = last(obs$obs)) # muestrear datos históricos prueba_tbl <- muestrear_ventanas(historicos, obs[1:20, ], n_ventana = 20) # gráfica de pequeños múltiplos ggplot(prueba_tbl$lineup, aes(x = t_0, y = obs)) + geom_line() + facet_wrap(~rep, nrow = 4) + scale_y_log10() ¿Cuáles son los datos nuevos (solo hay un panel con los nuevos datos)? ¿Qué implica que la gráfica que escojamos como “más diferente” no sean los datos nuevos? ¿Qué implica que le “atinemos” a la gráfica de los datos nuevos? Ahora observamos al sistema en otro momento y repetimos la comparación. En el siguiente caso obtenemos: Aunque es imposible estar seguros de que ha ocurrido un cambio, la diferencia de una de las series es muy considerable. Si identificamos los datos correctos, la probabilidad de que hayamos señalado la nueva serie “sobreinterpretando” fluctuaciones en un proceso que sigue comportándose normalente es 0.05 - relativamente baja. Detectar los datos diferentes es evidencia en contra de que el sistema sigue funcionando de la misma manera que antes. En el ejemplo anterior se encontraban en la posición: prueba_tbl$pos ## [1] 18 Observaciones y terminología: Llamamos hipótesis nula a la hipótesis de que los nuevos datos son producidos bajo las mismas condiciones que los datos de control o de referencia. Si no escogemos la gráfica de los nuevos datos, nuestra conclusión es que la prueba no aporta evidencia en contra de la hipótesis nula. Si escogemos la gráfica correcta, nuestra conclusión es que la prueba aporta evidencia en contra de la hipótesis nula. ¿Qué tan fuerte es la evidencia, en caso de que descubrimos los datos no nulos? Cuando el número de paneles es más grande y detectamos los datos, la evidencia es más alta en contra de la nula. Decimos que el nivel de significancia de la prueba es la probabilidad de seleccionar a los datos correctos cuando la hipótesis nula es cierta (el sistema no ha cambiado). En el caso de 20 paneles, la significancia es de 1/20 = 0.05. Cuando detectamos los datos nuevos, niveles de significancia más bajos implican más evidencia en contra de la nula. Si acertamos, y la diferencia es más notoria y fue muy fácil detectar la gráfica diferente (pues sus diferencias son más extremas), esto también sugiere más evidencia en contra de la hipótesis nula. Finalmente, esta prueba rara vez (o nunca) nos da seguridad completa acerca de ninguna conclusión, aún cuando hiciéramos muchos páneles. Comparando distribuciones Ahora intentamos un ejemplo más típico. Supongamos que tenemos muestras para tres grupos a, b y c, esto es que dentro de cada grupo, el proceso de selección de los elementos se hace al azar y de manera simétrica (por ejemplo cada elemento tiene a misma probabiidad de ser seleccionado, y las extracciones se hacen de manera independiente.) Queremos comparar las distribuciones de los datos obtenidos para cada grupo. Quizá la pregunta detrás de esta comparación es: el grupo de clientes b recibió una promoción especial. ¿Están gastando más? La medición que comparamos es el gasto de los clientes. En la muestra observamos diferencias entre los grupos. Pero notamos adicionalmente que hay mucha variación dentro de cada grupo. Nos podríamos preguntar entonces si las diferencias que observamos se deben variación muestral, por ejemplo. Podemos construir ahora una hipótesis nula, que establece que las observaciones provienen de una población similar: Las tres poblaciones (a, b, c) son prácticamente indistiguibles. En este caso, la variación que observamos se debería a que tenemos información incompleta. Como en el ejemplo anterior necesitamos construir u obtener una distribución de referencia para comparar qué tan extremos o diferentes son los datos que observamos. Esa distribución de referencia debería estar basada en el supuesto de que los grupos producen datos de distribuciones similares. Si tuvieramos mediciones similares históricas de estos tres grupos, quizá podríamos extraer datos de referencia y comparar, como hicimos en el ejempo anterior. Pero esto es menos común en este tipo de ejemplos. Prueba de permutaciones y el lineup Para abordar este problema podemos pensar en usar permutaciones de los grupos de la siguiente forma ((Box et al. 1978), (Tim C. Hesterberg 2015a)): Si los grupos producen datos bajo procesos idénticos, entonces los grupos a, b, c solo son etiquetas que no contienen información. Podríamos permutar al azar las etiquetas y observar nuevamente la gráfica de caja y brazos por grupos. Si la hipótesis nula es cierta (grupos idénticos), esta es una muestra tan verosímil como la que obtuvimos. Así que podemos construir datos de referencia permutando las etiquetas de los grupos al azar, y observando la variación que ocurre. Si la hipótesis nula es cercana a ser cierta, no deberíamos de poder distinguir fácilmente los datos observados de los producidos con las permutaciones al azar. Vamos a intentar esto, por ejemplo usando una gráfica de cuantiles simplificada. Hacemos un lineup, o una rueda de sospechosos (usamos el paquete (H. Wickham, Chowdhury, and Cook 2012), ver (Hadley Wickham et al. 2010)), donde 19 de los acusados son generados mediante permutaciones al azar de la variable del grupo, y el culpable (los verdaderos datos) están en una posición escogida al azar. ¿Podemos identificar los datos verdaderos? Para evitar sesgarnos, también ocultamos la etiqueta verdadera. Usamos una gráfica que muestra los cuantiles 0.10, 0.50, 0.90: set.seed(88) reps <- lineup(null_permute("grupo"), muestra_tab, n = 20) ## decrypt("M7xA 2S8S Jj dUyJ8JUj ZW") reps_mezcla <- reps |> mutate(grupo_1 = factor(digest::digest2int(grupo) %% 177)) grafica_cuantiles(reps_mezcla, grupo_1, x) + coord_flip() + facet_wrap(~.sample, ncol = 5) + ylab("x") + labs(caption = "Mediana y percentiles 10% y 90%") + geom_point(aes(colour = grupo_1)) Y la pregunta que hacemos es ¿podemos distinguir nuestra muestra entre todas las replicaciones producidas con permutaciones? ¿Dónde están los datos observados? Según tu elección, ¿qué tan diferentes son los datos observados de los datos nulos? En este ejemplo, es difícil indicar cuáles son los datos. Los grupos tienen distribuciones similares y es factible que las diferencias que observamos se deban a variación muestral. Si la persona escoge los verdaderos datos, encontramos evidencia en contra de la hipótesis nula (los tres grupos son equivalentes). En algunos contextos, se dice que los datos son significativamente diferentes al nivel 0.05. Esto es evidencia en contra de que los datos se producen de manera homogénea, independientemente del grupo. Si la persona escoge uno de los datos permutados, no encontramos evidencia en contra de que los tres grupos producen datos con distribuciones similares. Comparaciones usando lineup (continuación) Repetimos el ejemplo para otra muestra (en este ejemplo el proceso generador de datos es diferente para el grupo b): Hacemos primero la prueba del lineup: set.seed(121) reps <- lineup(null_permute("grupo"), muestra_tab, n = 20) grafica_cuantiles(reps |> mutate(grupo_escondido = factor(digest::digest2int(grupo) %% 177)), grupo_escondido, x) + facet_wrap(~.sample) + ylab("x") + coord_flip() + geom_point(aes(colour = grupo_escondido)) Podemos distinguir más o menos claramente que está localizada en valores más altos y tiene mayor dispersión. En este caso, como en general podemos identificar los datos, obtenemos evidencia en contra de que los tres grupos tienen distribuciones iguales. Estos ejemplos siguen la idea de inferencia visual propuestas en (Hadley Wickham et al. 2010), (Hofmann et al. 2012) son pruebas muy flexibles y estadísticamente rigurosas. Prueba de permutaciones para proporciones Veremos otro ejemplo donde podemos hacer más concreta la idea de distribución nula o de referencia usando pruebas de permutaciones. Supongamos que con nuestra muestra de tomadores de té, queremos probar la siguiente hipótesis nula: Los tomadores de té en bolsas exclusivamente, usan azúcar a tasas simillares que los tomadores de té suelto (que pueden o no también tomar té en bolsita). Los datos que obtuvimos en nuestra encuesta, en conteos, son: sugar bolsa_exclusivo suelto o bolsa No.sugar 81 74 sugar 89 56 Y en proporciones tenemos que: how prop_azucar n bolsa_exclusivo 0.52 170 suelto o bolsa 0.43 130 Pero distintas muestras podrían haber dado distintos resultados. Nos preguntamos qué tan fuerte es la evidencia en contra de que en realidad los dos grupos de personas usan azúcar en proporciones similares, y la diferencia que vemos se puede atribuir a variación muestral. En este ejemplo, podemos usar una estadística de prueba numérica, por ejemplo, la diferencia entre las dos proporciones: \\[\\hat p_1 - \\hat p_2,\\] (tomadores de té en bolsa solamente vs. suelto y bolsa). El proceso sería entonces: La hipótesis nula es que los dos grupos tienen distribuciones iguales. Este caso quiere decir que en la población, tomadores de té solo en bolsa usan azúcar a las mismas tasas que tomadores de suelto o bolsas. Bajo nuestra hipótesis nula (proporciones iguales), producimos una cantidad grande (por ejemplo 10 mil o más) de muestras permutando las etiquetas de los grupos. Evaluamos nuestra estadística de prueba en cada una de las muestras permutadas. El conjunto de valores obtenidos nos da nuestra distribución de referencia (ya no estamos limitados a 20 replicaciones como en las pruebas gráficas). Y la pregunta clave es: ¿el valor de la estadística en nuestra muestra es extrema en comparación a la distribución de referencia? dif_obs <- te_azucar |> mutate(usa_azucar = as.numeric(sugar == "sugar")) |> group_by(how) |> summarise(prop_azucar = mean(usa_azucar), .groups = 'drop') |> pivot_wider(names_from = how, values_from = prop_azucar) |> mutate(diferencia_prop = bolsa_exclusivo - `suelto o bolsa`) |> pull(diferencia_prop) La diferencia observada es: dif_obs |> round(3) ## [1] 0.093 Ahora construimos nuestra distribución nula o de referencia: reps <- lineup(null_permute("how"), te_azucar, n = 50000) glimpse(reps) ## Rows: 15,000,000 ## Columns: 3 ## $ how <chr> "bolsa_exclusivo", "bolsa_exclusivo", "suelto o bolsa", "suelt… ## $ sugar <chr> "sugar", "No.sugar", "No.sugar", "sugar", "No.sugar", "No.suga… ## $ .sample <dbl> 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,… valores_ref <- reps |> mutate(usa_azucar = as.numeric(sugar == "sugar")) |> group_by(.sample, how) |> summarise(prop_azucar = mean(usa_azucar), .groups = 'drop') |> pivot_wider(names_from = how, values_from = prop_azucar) |> mutate(diferencia = bolsa_exclusivo - `suelto o bolsa`) Y graficamos nuestros resultados (con un histograma y una gráfica de cuantiles, por ejemplo). la estadística evaluada un cada una de nuestras muestras permutadas: g_1 <- ggplot(valores_ref, aes(sample = diferencia)) + geom_qq(distribution = stats::qunif) + xlab("f") + ylab("diferencia") + labs(subtitle = "Distribución nula o de referencia") g_2 <- ggplot(valores_ref, aes(x = diferencia)) + geom_histogram(binwidth = 0.04) + coord_flip() + xlab("") + labs(subtitle = " ") g_1 + g_2 Este es el rango de fluctuación usual para nuestra estadística bajo la hipótesis de que los dos grupos de tomadores de té consumen té a la misma tasa. El valor que obtuvimos en nuestros datos es: 0.09. Mismo que no es un valor extremo en la distribución de referencia que vimos arriba. Ésta muestra no aporta mucha evidencia en contra de que los grupos tienen distribuciones similares. Podemos graficar otra vez marcando el valor observado: # Función de distribución acumulada (inverso de función de cuantiles) dist_perm <- ecdf(valores_ref$diferencia) # Calculamos el percentil del valor observado percentil_obs <- dist_perm(dif_obs) g_1 <- ggplot(valores_ref, aes(sample = diferencia)) + geom_qq(distribution = stats::qunif) + xlab("f") + ylab("diferencia") + labs(subtitle = "Distribución nula o de referencia") + geom_hline(yintercept = dif_obs, colour = "red") + annotate("text", x = 0.35, y = dif_obs - 0.03, label = "diferencia observada", colour = "red") g_2 <- ggplot(valores_ref, aes(x = diferencia)) + geom_histogram(binwidth = 0.04) + coord_flip() + xlab("") + labs(subtitle = " ") + geom_vline(xintercept = dif_obs, colour = "red") + annotate("text", x = dif_obs, y = N_rep * .3, label = percentil_obs,vjust = -0.2, colour = "red") g_1 + g_2 Y vemos que es un valor algo (pero no muy) extremo en la distribución de referencia que vimos arriba: esta muestra no aporta una gran cantidad de evidencia en contra de que los grupos tienen distribuciones similares, que en este caso significa que los dos grupos usan azúcar a tasas similares. Es decir, sobre la hipótesis \\[H_0: p_1 = p_2,\\] o bien, \\[H_0: p_1 - p_2 = 0.\\] Pruebas de hipótesis tradicionales Comencemos recordando la definición de parámetro y estadística. Definición. Un parámetro es una característica (numérica) de una población o de una distribución de probabilidad. Usualmente denotado por \\(\\theta \\in \\mathbb{R},\\) o por \\(\\theta \\in \\mathbb{R}^p.\\) Una estadística es una característica (numérica) de los datos. Usualmente denotado por \\(\\hat \\theta.\\) Cualquier función de un parámetro es también un parámetro \\(\\varphi = h(\\theta),\\) y cualquier función de una estadística es también una estadística \\(\\hat \\varphi = h(\\hat \\theta).\\) Cuando la estadística se calcula de una muestra aleatoria (\\(T(X),\\) para \\(X_i \\sim \\pi_x\\) para \\(i = 1, \\ldots, n\\)), es por consiguiente aleatoria y es por tanto una variable aleatoria (\\(T \\sim \\pi_T\\)). Por ejemplo \\(\\mu\\) y \\(\\sigma\\) son parámetros de la distribución normal con función de densidad \\(\\pi(x) = (1/\\sqrt{2\\pi}\\sigma)e^{(x-\\mu)^2/(2\\sigma^2)}\\). La varianza \\(\\sigma^2\\), y el coeficiente de variación (cociente de señal a ruido) \\(\\mu/\\sigma\\) también son parámetros. Si \\(X_1, \\ldots ,X_n\\) son una muestra aleatoria, entonces la media \\(\\bar{X}=\\frac1n\\sum_i X_i\\) es una estadística. Ahora podemos pasar a las definiciones correspondientes a pruebas de hipótesis (o pruebas de significancia). Definición. Denotamos por \\(H_0\\) a la hipótesis nula la cual usualmente tratamos como la afirmación del status quo. La hipótesis alternativa la denotamos por \\(H_1\\) y representa el supuesto que está a prueba y para el cual buscamos evidencia en los datos. Definición. La hipótesis normalmente se plantea en términos de un parámetro (\\(\\theta\\in\\mathbb{R}\\)) o conjunto de parámetros (\\(\\theta\\in\\mathbb{R}^p\\)) de la distribución de interés (por ejemplo media, moda, varianza). Para una hipótesis nula del estilo \\(H_0: \\theta = \\theta_0,\\) la hipótesis a contrastar se puede denominar como: Hipótesis alternativa de una cola \\(H_1: \\theta \\gt \\theta_0\\) Hipótesis alternativa de dos colas \\(H_1: \\theta \\neq \\theta_0\\) En el ejemplo anterior planteamos hipótesis nula (proporciones iguales) e hipótesis alternativa que la proporción de tomadores de te suelto que usan azúcar en menor proporción, esto corresponde a una hipótesis alternativa a dos colas: \\(H_0: p_1 = p_2\\), y \\(H_1:p_1 > p_2\\). Definición. Una estadística de prueba es una función numérica de los datos cuyo valor determina el resultado de la prueba. La función usualmente es denotada por \\(T(\\bf X)\\) donde \\(\\bf X\\) representa los datos como variable aleatoria. Por ejemplo, \\(T = T(X_1, \\ldots, X_n)\\) si sólo tenemos una muestra, o por \\(T = T(X_1, \\ldots, X_n, Y_1, \\ldots, Y_m)\\) en el caso de tener dos muestras. Al evaluar la prueba para un conjunto de datos dado, \\(x\\), ésta se denomina estadística de prueba observada, \\(t = T(x).\\) La estadística de prueba correspondiente al ejemplo es \\(T = \\hat p_1 - \\hat p_2.\\) Definición. El valor p es la probabilidad de que bajo la hipótesis nula los datos generen un valor tan extremo como la estadística de prueba observada. Por ejemplo, si consideramos la hipótesis nula admite valores grandes, el valor p se calcula como \\(P(T \\geq t).\\) En el ejemplo de tomadores de té: el valor p lo calculamos usando el percentil donde nuestra observación cae en la distribución generada por las permutación (valor p de una cola). 1 - dist_perm(dif_obs) ## [1] 0.04344 Por otro lado, podemos calcular: Valor p de dos colas: Si la hipótesis nula es cierta, ¿cuál es la probabilidad de observar una diferencia tan extrema o más extrema de lo que observamos? Considerando este caso interpretamos extrema como qué tan lejos cae del centro de masa de la distribución. De tal forma que podemos calcular el valor p como sigue. A partir del valor observado, consideramos cuál dato es menor: la probabilidad bajo lo hipótesis nula de observar una diferencia mayor de la que observamos, o la probabilidad de observar una diferencia menor a la que observamos. Tomamos el mínimo y multiplicamos por dos (Tim C. Hesterberg 2015a): 2 * min(dist_perm(dif_obs), (1 - dist_perm(dif_obs))) ## [1] 0.08688 Este valor p se considera como evidencia moderada en contra de la hipótesis nula. Valores p chicos (observaciones más extremas en comparación con la referencia) aportan más evidencia en contra de la hipótesis nula, y valores más grandes aportan menos evidencia en contra. Definición. Un resultado es estadisticamente significativo si tiene muy baja probabilidad de suceder al azar. Entre más pequeño requiramos un valor p oara declarar un resultado estadísticamente significativo, somos más conservadores. Las pruebas de hipótesis con frecuencia inician contestando una pregunta más general que los valores p: ¿Cuál es la distribución de la estadística de prueba cuando no hay un efecto real? Definición. La distribución nula es la distribución de la estadística de prueba si la hipótesis nula es cierta. En ocasiones también nos referimos a ella como la distribución de referencia pues estamos comparando la estadística de prueba observada a su referencia para determinar que tan inusual es. En el ejemplo de tomadores de té aproximamos la distribución nula (y los valores p) con simulación; sin embargo, para algunas estadísticas hay métodos exactos. En particular, usamos el método de pruebas de permutación. Para dicha prueba el algoritmo para en el caso de dos grupos sería como sigue: Prueba de permutación para dos muestras Supongamos que tenemos m observaciones de una población y n de otra. Combina los m+n valores. Repite: Obtén un remuestra de tamaño m sin reemplazo del total. Usa las n observaciones restantes para obtener la otra muestra. Calcula la estadística de prueba (que compara las muestras). Calcula el valor p como la fracción de las veces que la estadística sobrepasó la estadística observada, multiplica por 2 para una prueba de dos lados. La distribución de la estadística a lo largo de las remuestras de permutación es la distribución de permutación. Ésta puede ser exacta, si se calcula exhaustivamente (como cuando tenemos pocas observaciones) o aproximada (cuando enlistar todas las posible combinaciones es prohibitivo). Tomadores de té (continuación) Ahora hacemos una prueba de permutaciones para otro par de proporciones utilizando el mismo método. La hipótesis nula ahora es: Los tomadores de té Earl Gray usan azúcar a una tasa similar a los tomadores de té negro. Los datos que obtuvimos en nuestra encuesta se muestran en la siguiente tabla: sugar Earl Grey black No.sugar 84 51 sugar 109 23 Y en porcentajes tenemos que: prop_azucar <- te_azucar |> count(Tea, sugar) |> group_by(Tea) |> mutate(prop = 100 * n / sum(n), n = sum(n)) |> filter(sugar == "sugar") |> select(Tea, prop_azucar = prop, n) |> mutate('% usa azúcar' = round(prop_azucar)) |> select(-prop_azucar) prop_azucar |> formatear_tabla() Tea n % usa azúcar Earl Grey 193 56 black 74 31 Pero distintas muestras podrían haber dado distintos resultados. Nos preguntamos qué tan fuerte es la evidencia en contra de que en realidad los dos grupos de personas usan azúcar en proporciones similares considerando que la diferencia que vemos se puede atribuir a variación muestral. Escribimos la función que calcula diferencias para cada muestra: calc_diferencia_2 <- function(datos){ datos |> mutate(usa_azucar = as.numeric(sugar == "sugar")) |> group_by(Tea) |> summarise(prop_azucar = mean(usa_azucar), .groups = 'drop') |> pivot_wider(names_from = Tea, values_from = prop_azucar) |> mutate(diferencia_prop = `Earl Grey` - black) |> pull(diferencia_prop) } La diferencia observada es: ## [1] 0.254 Ahora construimos nuestra distribución nula o de referencia: set.seed(2) reps <- lineup(null_permute("Tea"), te_azucar, n = N_rep) valores_ref <- reps |> group_by(.sample) |> nest() |> mutate(diferencia = lapply(data, calc_diferencia_2)) |> unnest(diferencia) Y podemos graficar la distribución de referencia otra vez marcando el valor observado En este caso, la evidencia es muy fuerte en contra de la hipótesis nula, pues el resultado que obtuvimos es muy extremo en relación a la distribución de referencia. El valor p es cercano a 0. Haz una prueba de permutaciones para diferencia de medias para comparar la propina en cena vs en comidas. Grafica la distribución de referencia. Calcula el valor p (dos colas). Pruebas de permutación: implementación. Hasta ahora nos hemos centrado en ejemplos de diferencias en medias. Podemos extender las pruebas de permutación a \\(\\bar{X}\\) (la media de la primera muestra), \\(n\\bar{X}\\) (la suma de las observaciones en la primera muestra), y más. Teorema. En pruebas de permutación, si dos estadísticas de prueba \\(T_1\\) y \\(T_2\\) están relacionadas por una función estríctamente monótona, \\(T_1(X^*)=f(T_2(X^*))\\) donde \\(X^*\\) es una remuestra de permutación de los datos originales, entonces los valores p serán los mismos en las pruebas de permutación. Muestras con reemplazo de la Distribución Nula. En la implementación de muestreo, no nos aseguramos que las remuestras sean únicas. Sería más acertado tomar muestras sin reemplazo, sin embargo, el costo computacional es demasiado alto. Por simplicidad consideramos muestras con reemplazo del total de \\[m+n\\choose n\\] posibles remuestras. Por lo tanto, al remuestrar obtenemos una muestra de la distribución nula. Entre más muestras, más exactitud. Hemos usado \\(B = 10^3\\) remuestras (N_rep en el código), en general entre más remuestras tendremos una mejor estimación del valor p. Si el verdadero valor es \\(p\\) el estimado tendrá una varianza aproximadamente de \\(p(1- p)/B\\) donde \\(B\\) es el número de remuestras generadas. Observación. Así como los \\(n\\) datos originales son una muestra de la población, también las \\(B\\) remuestras de la estadística son una muestra de una población, en este caso de la distribución nula. La pruebas de permutaciones son más útiles cuando nuestra hipótesis nula se refiere que la distribución de los grupos son muy similares, o la independencia entre observaciones y grupo. Esto también aplica cuando queremos probar por ejemplo, que una variable numérica \\(Y\\) es independiente de \\(X.\\) Hay algunas hipótesis que no se pueden probar con este método, como por ejemplo, las que se refieren a una sola muestra: ¿los datos son consistentes con que su media es igual a 5? Adicionalmente, en algunas ocasiones queremos probar aspectos más específicos de las diferencias: como ¿son iguales las medias o medianas de dos grupos de datos? ¿Tienen dispersión similar? Es común aplicar pruebas de permutaciones a este segundo problema, sin embargo, no están tan perfectamente adaptadas a el, pues prueban todos los aspectos de las distribuciones que se comparan, aún cuando escojamos una estadística particular que pretende medir. Por ejemplo, cuando trabajamos con la diferencia de medias. Eso quiere decir que podemos rechazar igualdad de medias, por ejemplo, cuando en realidad otra característica de las distribuciones es la que difiere mucho en las poblaciones. En algunas referencias (ver (Chihara and Hesterberg 2018), (Efron and Tibshirani 1993)) se argumenta que de todas formas las pruebas de permutaciones son relativamente robustas a esta desadaptación. Un caso excepcional, por ejemplo, es cuando las poblaciones que comparamos resultan tener dispersión extremadamente distinta, y adicionalmente los tamaños de muestra de los grupos son muy desiguales (otra vez, ver ejemplos en (Chihara and Hesterberg 2018)). Ejemplo: tiempos de fusión Veamos el siguiente ejemplo, que es un experimento donde se midió el tiempo que tardan distintas personas en fusionar un estereograma para ver una imagen 3D. (William S. Cleveland (1993)). Existen dos condiciones: en una se dio indicaciones de qué figura tenían que buscar (VV) y en otra no se dio esa indicación. ¿Las instrucciones verbales ayudan a fusionar más rápido el estereograma? ## ## ── Column specification ──────────────────────────────────────────────────────── ## cols( ## n = col_double(), ## time = col_double(), ## nv.vv = col_character() ## ) La situación es la siguiente: considerando que hay mucha variación en el tiempo de fusión dentro de cada tratamiento, necesitamos calificar la evidencia de nuestra conclusión (el tiempo de fusión se reduce con información verbal). Podemos usar una prueba de permutaciones, esta vez justificándola por el hecho de que los tratamientos se asignan al azar: si los tratamientos son indistinguibles, entonces las etiquetas de los grupos son sólo etiquetas, y permutarlas daría muestras igualmente verosímiles. En este caso, compararemos gráficas de cuantiles de los datos con los producidos por permutaciones (transformamos los datos pues en este caso es más apropiado una comparación multiplicativa): ¿Podemos identificar los datos? En general, muy frecuentemente las personas identifican los datos correctamente, lo que muestra evidencia considerable de que la instrucción verbal altera los tiempos de respuesta de los partipantes, y en este caso ayuda a reducir el tiempo de fusión de los estereogramas. Ejemplo: tiempos de fusión (continuación) Podemos usar las pruebas de permutaciones para distintos tipos de estadísticas: medianas, medias, comparar dispersión usando rangos intercuartiles o varianzas, etc. Regresamos a los tiempos de fusión. Podemos hacer una prueba de permutaciones para la diferencia de las medias o medianas, por ejemplo. En este ejemplo usaremos una medida de centralidad un poco diferente, como ilustración: el promedio de los cuartiles superior e inferior de las dos distribuciones. Usaremos el cociente de estas dos cantidades para medir su diferencia # esta función hace permutaciones y calcula la diferencia para cada una permutaciones_est <- function(datos, variable, calc_diferencia, n = 1000){ # calcular estadística para cada grupo permutar <- function(variable){ sample(variable, length(variable)) } tbl_perms <- tibble(.sample = seq(1, n-1, 1)) |> mutate(diferencia = map_dbl(.sample, ~ datos |> mutate({{variable}}:= permutar({{variable}})) |> calc_diferencia())) bind_rows(tbl_perms, tibble(.sample = n, diferencia = calc_diferencia(datos))) } stat_fusion <- function(x){ (quantile(x, 0.75) + quantile(x, 0.25))/2 } calc_fusion <- function(stat_fusion){ fun <- function(datos){ datos |> group_by(nv.vv) |> summarise(est = stat_fusion(time), .groups = 'drop') |> pivot_wider(names_from = nv.vv, values_from = est) |> mutate(dif = VV / NV ) |> pull(dif) } fun } calc_cociente <- calc_fusion(stat_fusion) dif_obs <- calc_cociente(fusion) # permutar valores_ref <- permutaciones_est(fusion, nv.vv, calc_cociente, n = N_rep) dist_perm_nv <- ecdf(valores_ref$diferencia) cuantil_obs <- dist_perm_nv(dif_obs) Y el valor p de dos colas es dist_perm_nv <- ecdf(valores_ref$diferencia) 2 * min(dist_perm_nv(dif_obs), 1 - dist_perm_nv(dif_obs)) ## [1] 0.028 Lo que muestra evidencia considerable, aunque no muy fuerte, de que la instrucción verbal ayuda a reducir el tiempo de fusión de los estereogramas: la caja del diagrama de caja y brazos para el grupo VV está encogida por un factor menor a 1. Separación de grupos Este ejemplo tomado de (Chowdhury et al. 2015) (tanto la idea como el código). La pregunta que se aborda en ese estudio es: Existen métodos de clasificación (supervisados o no supervisados) para formar grupos en términos de variables que describen a los individuos Estos métodos (análisis discriminante, o k-means, por ejemplo), pretenden formar grupos compactos, bien separados entre ellos. Cuando aplicamos el método, obtenemos clasificadores basados en las variables de entrada. La pregunta es: ¿los grupos resultantes son producto de patrones que se generalizan a la población, o capitalizaron en variación aleatoria para formarse? Especialmente cuando tenemos muchas mediciones de los individuos, y una muestra relativamente chica, Es relativamente fácil encontrar combinaciones de variables que separan los grupos, aunque estas combinaciones y diferencias están basadas en ruido y no generalizan a la población. Como muestran en (Chowdhury et al. 2015), el lineup es útil para juzgar si tenemos evidencia en contra de que los grupos en realidad son iguales, y usamos variación muestral para separarlos. Avispas (opcional) En el siguiente ejemplo, tenemos 4 grupos de avispas (50 individuos en total), y para cada individuo se miden expresiones de 42 genes distintos. La pregunta es: ¿Podemos separar a los grupos de avispas dependiendo de sus mediciones? En este se usó análisis discriminante (LDA) para buscar proyecciones de los datos en dimensión baja de forma que los grupos sean lo más compactos y separados posibles. Para probar qué tan bien funciona este método, podemos hacer una prueba de permutación, aplicamos LDA y observamos los resultados. Y vemos que incluso permutando los grupos, es generalmente posible separarlos en grupos bien definidos: la búsqueda es suficientemente agresiva para encontrar combinaciones lineales que los separan. Que no podamos distinguir los datos verdaderos de las replicaciones nulas indica que este método difícilmente puede servir para separar los grupos claramente. Otro enfoque sería separar los datos en una muestra de entrenamiento y una de prueba (que discutiremos en la última sesión). Aplicamos el procedimiento a la muestra de entrenamiento y luego vemos qué pasa con los datos de prueba: set.seed(8) wasps_1 <- wasps |> mutate(u = runif(nrow(wasps), 0, 1)) wasps_entrena <- wasps_1 |> filter(u <= 0.8) wasps_prueba <- wasps_1 |> filter(u > 0.8) wasp.lda <- MASS::lda(Group ~ ., data=wasps_entrena[,-1]) wasp_ld_entrena <- predict(wasp.lda, dimen=2)$x |> as_tibble(.name_repair = "universal") |> mutate(tipo = "entrenamiento") |> mutate(grupo = wasps_entrena$Group) wasp_ld_prueba <- predict(wasp.lda, newdata = wasps_prueba, dimen=2)$x |> as_tibble(.name_repair = "universal") |> mutate(tipo = "prueba")|> mutate(grupo = wasps_prueba$Group) wasp_lda <- bind_rows(wasp_ld_entrena, wasp_ld_prueba) ggplot(wasp_lda, aes(x = LD1, y = LD2, colour = grupo)) + geom_point(size = 3) + facet_wrap(~tipo) Aunque esta separación de datos es menos efectiva en este ejemplo por la muestra chica, podemos ver que la separación lograda en los datos de entrenamiento probablemente se debe a variación muestral. La “crisis de replicabilidad” Recientemente (Ioannidis 2005) se ha reconocido en campos como la psicología la crisis de replicabilidad. Varios estudios que recibieron mucha publicidad inicialmente no han podido ser replicados posteriormente por otros investigadores. Por ejemplo: Hacer poses poderosas produce cambios fisiológicos que mejoran nuestro desempeño en ciertas tareas. Mostrar palabras relacionadas con “viejo” hacen que las personas caminen más lento (efectos de priming). En todos estos casos, el argumento de la evidencia de estos efectos fue respaldada por una prueba de hipótesis nula con un valor p menor a 0.05. La razón es que ese es el estándar de publicación seguido por varias áreas y revistas arbitradas. La tasa de no replicabilidad parece ser mucho más alta (al menos la mitad o más, según algunas fuentes como la señalada arriba) que la sugerida por la tasa de falsos positivos (menos de 5%). Este problema de replicabilidad parece ser más frecuente cuando: Se trata de estudios de potencia baja: mediciones ruidosas y tamaños de muestra chicos. El plan de análisis no está claramente definido desde un principio (lo cual es difícil cuando se están investigando “fenómenos no estudiados antes”). ¿A qué se atribuye esta crisis de replicabilidad? El jardín de los senderos que se bifurcan Aunque haya algunos ejemplos de manipulaciones conscientes —e incluso, en menos casos, malintencionadas— para obtener resultados publicables o significativos (p-hacking), como vimos en ejemplos anteriores, hay varias decisiones, todas razonables, que podemos tomar cuando estamos buscando las comparaciones correctas. Algunas pueden ser: Transformar los datos (tomar o no logaritmos, u otra transformación). Editar datos atípicos (razonable si los equipos pueden fallar, o hay errores de captura, por ejemplo). Distintas maneras de interpretar los criterios de inclusión de un estudio (por ejemplo, algunos participantes mostraron tener gripa, o revelaron que durmieron muy poco la noche anterior, etc. ¿los dejamos o los quitamos?). Dado un conjunto de datos, las justificaciones de las decisiones que se toman en cada paso son razonables, pero con datos distintos las decisiones podrían ser diferentes. Este es el jardín de los senderos que se bifurcan (ver referencia en Gelman), que invalida en parte el uso valores p como criterio de evidencia contra la hipótesis nula. Esto es exacerbado por: Tamaños de muestra chicos y efectos “inestables” que se quieren medir (por ejemplo en psicología). El hecho de que el criterio de publicación es obtener un valor \\(p < 0.05\\), y la presión fuerte sobre los investigadores para producir resultados publicables (\\(p < 0.05\\)). El que estudios o resultados similares que no obtuvieron valores \\(p\\) por debajo del umbral no son publicados o reportados. Ver por ejemplo el comunicado de la ASA. Ojo: esas presiones de publicación no sólo ocurre para investigadores en psicología. Cuando trabajamos en problemas de análisis de datos que son de importancia, es común que existan intereses de algunas partes o personas involucradas por algunos resultados u otros (por ejemplo, nuestros clientes de consultoría o clientes internos). Eso puede dañar nuestro trabajo como analistas, y el avance de nuestro equipo. Aunque esas presiones son inevitables, se vuelven manejables cuando hay una relación de confianza entre las partes involucradas. Ejemplo: decisiones de análisis y valores p En el ejemplo de datos de fusión, decidimos probar, por ejemplo, el promedio de los cuartiles inferior y superior, lo cual no es una decisión típica pero usamos como ilustración. Ahora intentamos usar distintas mediciones de la diferencia entre los grupos, usando distintas medidas resumen y transformaciones (por ejemplo, con o sin logaritmo). Aquí hay unas 12 combinaciones distintas para hacer el análisis (multiplicadas por criterios de “aceptación de datos en la muestra”, que simulamos tomando una submuestra al azar): calc_fusion <- function(stat_fusion, trans, comparacion){ fun <- function(datos){ datos |> group_by(nv.vv) |> summarise(est = stat_fusion({{ trans }}(time)), .groups = 'drop') |> pivot_wider(names_from = nv.vv, values_from = est) |> mutate(dif = {{ comparacion }}) |> pull(dif) } fun } valor_p <- function(datos, variable, calc_diferencia, n = 1000){ # calcular estadística para cada grupo permutar <- function(variable){ sample(variable, length(variable)) } tbl_perms <- tibble(.sample = seq(1, n-1, 1)) |> mutate(diferencia = map_dbl(.sample, ~ datos |> mutate({{variable}} := permutar({{variable}})) |> calc_diferencia())) perms <- bind_rows(tbl_perms, tibble(.sample = n, diferencia = calc_diferencia(datos))) perms_ecdf <- ecdf(perms$diferencia) dif <- calc_diferencia(datos) 2 * min(perms_ecdf(dif), 1- perms_ecdf(dif)) } set.seed(7272) media_cuartiles <- function(x){ (quantile(x, 0.75) + quantile(x, 0.25))/2 } # nota: usar n=10000 o más, esto solo es para demostración: ejemplo <- list() calc_dif <- calc_fusion(mean, identity, VV - NV) ejemplo$media_dif <- valor_p(fusion |> sample_frac(0.95), nv.vv, calc_dif, n = N_rep) calc_dif <- calc_fusion(mean, log, VV - NV) ejemplo$media_dif_log <- valor_p(fusion |> sample_frac(0.95), nv.vv, calc_dif, n = N_rep) calc_dif <- calc_fusion(median, identity, VV / NV) ejemplo$mediana_razon <- valor_p(fusion |> sample_frac(0.95), nv.vv, calc_dif, n = N_rep) calc_dif <- calc_fusion(media_cuartiles, identity, VV / NV) ejemplo$cuartiles_razon <- valor_p(fusion |> sample_frac(0.95), nv.vv, calc_dif, n = N_rep) ejemplo <- read_rds("cache/ejemplo_p_val.rds") ejemplo$media_dif ## [1] 0.0658 ejemplo$media_dif_log ## [1] 0.018 ejemplo$mediana_razon ## [1] 0.049 ejemplo$cuartiles_razon ## [1] 0.0464 Si existen grados de libertad —muchas veces necesarios para hacer un análisis exitoso—, entonces los valores p pueden tener poco significado. Alternativas o soluciones El primer punto importante es reconocer que la mayor parte de nuestro trabajo es exploratorio (recordemos el proceso complicado del análisis de datos de refinamiento de preguntas). En este tipo de trabajo, reportar valores p puede tener poco sentido, y mucho menos tiene sentido aceptar algo verdadero cuando pasa un umbral de significancia dado. Nuestro interés principal al hacer análisis es: expresar correctamente, y de manera útil, la incertidumbre asociada a las conclusiones o patrones que mostramos (asociada a variación muestral, por ejemplo) con el objetivo que el proceso de toma de decisiones sea informado. Un resumen de un número (valor p, o el que sea) no puede ser tomado como criterio para tomar una decisión que generalmente es compleja. En la siguiente sección veremos cómo podemos mostrar parte de esa incertidumbre de manera más útil. Por otra parte, los estudios confirmatorios (donde se reportan valores p) también tienen un lugar. En áreas como la psicología, existen ahora movimientos fuertes en favor de la repetición de estudios prometedores pero donde hay sospecha de grados de libertad del investigador. Este movimiento sugiere dar valor a los estudios exploratorios que no reportan valor p, y posteriormente, si el estudio es de interés, puede intentarse una replicación confirmatoria, con potencia más alta y con planes de análisis predefinidos. Referencias "],["estimación-y-distribución-de-muestreo-1.html", "Sección 4 Estimación y distribución de muestreo Ejemplo: precios de casas Distribución de muestreo Más ejemplos El error estándar Calculando la distribución de muestreo Teorema central del límite Normalidad y gráficas de cuantiles normales Prueba de hipótesis de normalidad Ejemplo Más del Teorema central del límite", " Sección 4 Estimación y distribución de muestreo En esta sección discutiremos cuál el objetivo general del proceso de estimación, y cómo entender y manejar la variabilidad que se produce cuando aleatorizamos la selección de las muestras que utilizamos para hacer análisis. A diferencia de las pruebas de permutación, donde evaluábamos como cambiaría una estadísitica si un tratamiento o grupo se hubiera asignado de forma distinta, en la siguiente sección nos preguntamos como varía una estadística entre muestras. Por ejemplo, pasaremos de preguntar si una vacuna reduce el riesgo de una enfermedad a evaluar en que magnitud se reduce el riesgo de contraer la enfermedad. Ejemplo: precios de casas Supongamos que queremos conocer el valor total de las casas que se vendieron recientemente en una zona particular. Supondremos que tenemos un listado de las casas que se han vendido recientemente, pero en ese listado no se encuentra el precio de venta. Decidimos entonces tomar una muestra aleatoria de 100 de esas casas. Para esas casas hacemos trabajo de campo para averiguar el precio de venta. marco_casas <- read_csv("data/casas.csv") set.seed(841) muestra_casas <- sample_n(marco_casas, 100) |> select(id, nombre_zona, area_habitable_sup_m2, precio_miles) sprintf("Hay %0.0f casas en total, tomamos muestra de %0.0f", nrow(marco_casas), nrow(muestra_casas)) ## [1] "Hay 1144 casas en total, tomamos muestra de 100" head(muestra_casas) ## # A tibble: 6 × 4 ## id nombre_zona area_habitable_sup_m2 precio_miles ## <dbl> <chr> <dbl> <dbl> ## 1 287 NAmes 161. 159 ## 2 755 NAmes 95.3 156 ## 3 1190 Gilbert 168. 189 ## 4 36 NridgHt 228. 309 ## 5 32 Sawyer 114. 149. ## 6 538 NAmes 80.3 111. Como tomamos una muestra aleatoria, intentamos estimar el valor total de las casas que se vendieron expandiendo el total muestral, es decir nuestro estimador \\(\\hat{t} = t(X_1,\\ldots X_{100})\\) del total poblacional \\(t\\) es \\[\\hat{t} = \\frac{N}{n} \\sum_{i=1}^{100} X_i = N\\bar{x}\\] Esta función implementa el estimador: n <- nrow(muestra_casas) # tamaño muestra N <- nrow(marco_casas) # tamaño población estimar_total <- function(muestra_casas, N){ total_muestral <- sum(muestra_casas$precio_miles) n <- nrow(muestra_casas) # cada unidad de la muestra representa a N/n f_exp <- N / n # estimador total es la expansión del total muestral estimador_total <- f_exp * total_muestral res <- tibble(total_muestra = total_muestral, factor_exp = f_exp, est_total_millones = estimador_total / 1000) res } estimar_total(muestra_casas, N) |> mutate(across(where(is.numeric), \\(x) round(x, 2))) ## # A tibble: 1 × 3 ## total_muestra factor_exp est_total_millones ## <dbl> <dbl> <dbl> ## 1 18444. 11.4 211 Sin embargo, si hubiéramos obtenido otra muestra, hubiéramos obtenido otra estimación diferente. Por ejemplo: estimar_total(sample_n(marco_casas, 100), N) |> mutate(across(where(is.numeric), \\(x) round(x, 2))) ## # A tibble: 1 × 3 ## total_muestra factor_exp est_total_millones ## <dbl> <dbl> <dbl> ## 1 17916. 11.4 205. El valor poblacional que buscamos estimar (nótese que en la práctica este no lo conocemos) es: # multiplicar por 1000 para que sea en millones de dólares total_pob <- sum(marco_casas |> pull(precio_miles)) / 1000 total_pob ## [1] 209.7633 Así que: Para algunas muestras esta estadística puede estar muy cercana al valor poblacional, pero para otras puede estar más lejana. Para entender qué tan buena es una estimación particular, entonces, tenemos que entender cuánta variabilidad hay de muestra a muestra debida a la aleatorización. Esto depende del diseño de la muestra y de la población de precios de casas (que no conocemos). Distribución de muestreo La distribución de muestreo de una estadística enumera los posibles resultados que puede tomar esa estadística sobre todas las muestras posibles. Este es el concepto básico para poder entender qué tan bien o mal estima un parámetro poblacional dado. En nuestro ejemplo anterior de precio de casas, no podemos calcular todas las posibles estimaciones bajo todas las posibles muestras, pero podemos aproximar repitiendo una gran cantidad de veces el proceso de muestreo, como hicimos al aproximar la distribución de permutaciones de estadísticas de prueba de las secciones anteriores. Empezamos repitiendo 10 veces y examinamos cómo varía nuestra estadística: replicar_muestreo <- function(marco_casas, m = 500, n){ # n es el tamaño de muestra que se saca de marco_casas # m es el número de veces que repetimos el muestro de tamaño n resultados <- map_df(1:m, function(id) { sample_n(marco_casas, n) |> estimar_total(N) }, .id = "id_muestra") } replicar_muestreo(marco_casas, m = 10, n = 100) |> mutate(across(where(is.numeric), round, 1)) |> formatear_tabla() id_muestra total_muestra factor_exp est_total_millones 1 17594.8 11.4 201.3 2 17423.9 11.4 199.3 3 18444.3 11.4 211.0 4 17696.6 11.4 202.4 5 17275.8 11.4 197.6 6 17867.6 11.4 204.4 7 18450.8 11.4 211.1 8 18187.2 11.4 208.1 9 18604.2 11.4 212.8 10 19144.4 11.4 219.0 Como vemos, hay variación considerable en nuestro estimador del total, pero la estimación que haríamos con cualquiera de estas muestras no es muy mala. Ahora examinamos un número más grande de simulaciones: replicaciones_1 <- replicar_muestreo(marco_casas, m = 1500, n = 100) Y el siguiente histograma nos dice qué podemos esperar de la variación de nuestras estimaciones, y donde es más probable que una estimación particular caiga: graf_1 <- ggplot(replicaciones_1, aes(x = est_total_millones)) + geom_histogram() + geom_vline(xintercept = total_pob, colour = "red") + xlab("Millones de dólares") + scale_x_continuous(breaks = seq(180, 240, 10), limits = c(180, 240)) graf_1 Con muy alta probabilidad el error no será de más de unos 30 millones de dólares (o no más de 20% del valor poblacional). Definición Sea \\(X_1, X_2, \\ldots X_n\\) una muestra, y \\(T = t(X_1, X_2, \\ldots, X_n)\\) una estadística. La distribución de muestreo de \\(T\\) es la función de distribución de \\(T\\). Esta distribución es sobre todas las posibles muestras que se pueden obtener. Cuando usamos \\(T\\) para estimar algún parámetro poblacional \\(\\theta\\), decimos informalmente que el estimador es preciso si su distribución de muestreo está muy concentrada alrededor del valor \\(\\theta\\) que queremos estimar. Si la distribución de muestreo está concentrada en un conjunto muy grande o muy disperso, quiere decir que con alta probabilidad cuando obtengamos nuestra muestra y calculemos nuestra estimación, el resultado estará lejano del valor poblacional que nos interesa estimar. Veamos qué pasa cuando hacemos la muestra más grande en nuestro ejemplo: replicaciones_2 <- replicar_muestreo(marco_casas, m = 1500, n = 250) Graficamos las dos distribuciones de muestreo juntas, y vemos cómo con mayor muestra obtenemos un estimador más preciso, y sin considerar el costo, preferimos el estimador mejor concentrado alrededor del valor que buscamos estimar. library(patchwork) graf_2 <- ggplot(replicaciones_2, aes(x = est_total_millones)) + geom_histogram() + geom_vline(xintercept = total_pob, colour = "red") + xlab("Millones de dólares") + scale_x_continuous(breaks = seq(180, 240, 10), limits = c(180, 240)) graf_1 + graf_2 Observación: a veces este concepto se confunde la distribución poblacional de las \\(X_i\\). Esto es muy diferente. Por ejemplo, en nuestro caso, el histograma de la distribución de valores poblacionales es ggplot(marco_casas, aes(x = precio_miles)) + geom_histogram() que en general no tiene ver mucho en escala o forma con la distribución de muestreo de nuestro estimador del total. Más ejemplos Podemos también considerar muestrear de poblaciones sintéticas o modelos probabilísticos que usamos para modelar poblaciones reales. Por ejemplo, supongamos que tomamos una muestra de tamaño 15 de la distribución uniforme en \\([0,1]\\). Es decir, cada \\(X_i\\) es un valor uniformemente distribuido en \\([0,1]\\), y las \\(X_i\\) se extraen independientemente unas de otras. Consideramos dos estadísticas de interés: La media muestral \\(T_1(X) = \\frac{1}{15}\\sum_{i = 1}^{15} X_i\\) El cuantil 0.75 de la muestra \\(T_2(X) = q_{0.75}(X)\\) ¿Cómo crees que se vean las distribuciones muestrales de estas estadísticas? ¿Alrededor de qué valores crees que concentren? ¿Crees que tendrán mucha o poca dispersión? ¿Qué forma crees que tengan? Para el primer caso hacemos: # simular replicar_muestreo_unif <- function(est = mean, m, n = 15){ valores_est <- map_dbl(1:m, ~ est(runif(n))) tibble(id_muestra = 1:m, estimacion = valores_est) } sim_estimador_1 <- replicar_muestreo_unif(mean, 4000, 15) # graficar aprox de distribución de muestreo ggplot(sim_estimador_1, aes(x = estimacion)) + geom_histogram(bins = 40) + xlim(c(0, 1)) # simular para el máximo cuantil_75 <- function(x) quantile(x, 0.75) sim_estimador_2 <- replicar_muestreo_unif(cuantil_75, 4000, 15) # graficar distribución de muestreo ggplot(sim_estimador_2, aes(x = estimacion)) + geom_histogram(breaks = seq(0, 1, 0.02)) + xlim(c(0, 1)) Supón que tenemos una muestra de 30 observaciones de una distribución uniforme \\([0,b]\\). ¿Qué tan buen estimador de \\(b/2\\) es la media muestral? ¿Cómo lo cuantificarías? ¿Qué tan buen estimador del cuantil 0.8 de la distribución uniforme es el cuantil 0.8 muestral? ¿Qué desventajas notas en este estimador? El error estándar Una primera medida útil de la dispersión de la distribución de muestreo es su desviación estándar: la razón específica tiene qué ver con un resultado importante, el teorema central del límite, que veremos más adelante. En este caso particular, a esta desviación estándar se le llama error estándar: Definición A la desviación estándar de una estadística \\(T\\) le llamamos su error estándar, y la denotamos por \\(\\text{ee}(T)\\). A cualquier estimador de este error estándar lo denotamos como \\(\\hat{\\text{ee}}(T)\\). Este error estándar mide qué tanto varía el estimador \\(T\\) de muestra a muestra. Observación: es importante no confundir el error estándar con la desviación estándar de una muestra (o de la población). En nuestro ejemplo de las uniformes, la desviación estándar de las muestras varía como: map_dbl(1:10000, ~ sd(runif(15))) |> quantile() |> round(2) ## 0% 25% 50% 75% 100% ## 0.11 0.26 0.29 0.31 0.41 Mientras que el error estándar de la media es aproximadamente map_dbl(1:10000, ~ mean(runif(15))) |> sd() ## [1] 0.07439575 y el error estándar del máximo es aproximadamente map_dbl(1:10000, ~ max(runif(15))) |> sd() ## [1] 0.05928675 Como ejercicio para contrastar estos conceptos, puedes considerar: ¿Qué pasa con la desviación estándar de una muestra muy grande de uniformes? ¿Qué pasa con el error estándar de la media muestral de una muestra muy grande de uniformes? Ejemplo: valor de casas Consideramos el error estándar del estimador del total del inventario vendido, usando una muestra de 250 con el estimador del total que describimos arriba. Como aproximamos con simulación la distribución de muestreo, podemos hacer: ee_2 <- replicaciones_2 |> pull(est_total_millones) |> sd() round(ee_2, 1) ## [1] 5.2 que está en millones de pesos y cuantifica la dispersión de la distribución de muestreo del estimador del total. Para tamaño de muestra 100, obtenemos más dispersión: ee_1 <- replicaciones_1 |> pull(est_total_millones) |> sd() round(ee_1, 1) ## [1] 8.9 Nótese que esto es muy diferente, por ejemplo, a la desviación estándar poblacional o de una muestra. Estas dos cantidades miden la variabilidad del estimador del total. Calculando la distribución de muestreo En los ejemplos anteriores usamos simulación para obtener aproximaciones de la distribución de muestreo de algunos estimadores. También es posible: Hacer cálculos exactos a partir de modelos probabilísticos. Hacer aproximaciones asintóticas para muestras grandes (de las cuales la más importante es la que da el teorema central del límite). En los ejemplos de arriba, cuando muestreamos de la poblaciones, extrajimos las muestras de manera aproximadamente independiente. Cada observación \\(X_i\\) tiene la misma distribución y las \\(X_i\\)’s son independientes. Este tipo de diseños aleatorizados es de los más simples, y se llama muestreo aleatorio simple. En general, en esta parte haremos siempre este supuesto: Una muestra es iid (independiente e idénticamente distribuida) si es es un conjunto de observaciones \\(X_1,X_2, \\ldots X_n\\) independientes, y cada una con la misma distribución. En términos de poblaciones, esto lo logramos obteniendo cada observación de manera aleatoria con el mismo procedimiento. En términos de modelos probabilísticos, cada \\(X_i\\) se extrae de la misma distribución fija \\(F\\) (que pensamos como la “población”) de manera independiente. Esto lo denotamos por \\(X_i \\overset{iid}{\\sim} F.\\) Ejemplo Si \\(X_1, X_2, \\ldots X_n\\) es una muestra de uniformes independientes en \\([0,1]\\), ¿cómo calcularíamos la distribución de muestreo del máximo muestra \\(T_2 = \\max\\)? En este caso, es fácil calcular su función de distribución acumulada de manera exacta: \\[F_{\\max}(x) = P(\\max\\{X_1,X_2,\\ldots X_n\\} \\leq x)\\] El máximo es menor o igual a \\(x\\) si y sólo si todas las \\(X_i\\) son menores o iguales a \\(x\\), así que \\[F_{\\max} (x) = P(X_1\\leq x, X_2\\leq x, \\cdots, X_n\\leq x)\\] como las \\(X_i\\)’s son independientes entonces \\[F_{\\max}(x) = P(X_1\\leq x)P(X_2\\leq x)\\cdots P(X_n\\leq x) = x^n\\] para \\(x\\in [0,1]\\), pues para cada \\(X_i\\) tenemos \\(P(X_i\\leq x) = x\\). Así que no es necesario usar simulación para conocer esta distribución de muestreo. Derivando esta distribución acumulada obtenemos su densidad, que es \\[f(x) = nx^{n-1}\\] para \\(x\\in [0,1]\\), y es cero en otro caso. Si comparamos con nuestra simulación: teorica <- tibble(x = seq(0, 1 ,0.001)) |> mutate(f_dens = 15 * x^14) sim_estimador_3 <- replicar_muestreo_unif(max, 4000, 15) ggplot(sim_estimador_3) + geom_histogram(aes(x = estimacion), breaks = seq(0, 1, 0.02)) + xlim(c(0.5, 1)) + # el histograma es de ancho 0.02 y el número de simulaciones 4000 geom_line(data = teorica, aes(x = x, y = (4000 * 0.02) * f_dens), colour = "red", linewidth = 1.3) Y vemos que con la simulación obtuvimos una buena aproximación Nota: ¿cómo se relaciona un histograma con la función de densidad que genera los datos? Supón que \\(f(x)\\) es una función de densidad, y obtenemos un número \\(n\\) de simulaciones independientes. Si escogemos un histograma de ancho \\(\\Delta\\), ¿cuántas observaciones esperamos que caigan en un intervalo \\(I = [a - \\Delta/2, a + \\Delta/2]\\)?. La probabilidad de que una observación caiga en \\(I\\) es igual a \\[P(X\\in I) = \\int_I f(x)\\,dx = \\int_{a - \\Delta/2}^{a + \\Delta/2} f(x)\\,dx \\approx f(a) \\text{long}(I) = f(a) \\Delta\\] para \\(\\Delta\\) chica. Si nuestra muestra es de tamaño \\(n\\), el número esperado de observaciones que caen en \\(I\\) es entonces \\(nf(a)\\Delta\\). Eso explica el ajuste que hicimos en la gráfica de arriba. Otra manera de hacer es ajustando el histograma: si en un intervalo el histograma alcanza el valor \\(y\\), \\[f(a) = \\frac{y}{n\\Delta}\\] teorica <- tibble(x = seq(0, 1 ,0.001)) |> mutate(f_dens = 15*x^{14}) ggplot(sim_estimador_3) + geom_histogram(aes(x = estimacion, y = after_stat(density)), breaks = seq(0, 1, 0.02)) + xlim(c(0.5, 1)) + # el histograma es de ancho 0.02 y el número de simulaciones 4000 geom_line(data = teorica, aes(x = x, y = f_dens), colour = "red", size = 1.3) Ejemplo Supongamos que las \\(X_i\\)’s son independientes y exponenciales con tasa \\(\\lambda > 0\\). ¿Cuál es la distribución de muestreo de la suma \\(S = X_1 + \\cdots + X_n\\)? Sabemos que la suma de exponenciales independientes es una distribución gamma con parámetros \\((n, \\lambda)\\), y esta es la distribución de muestreo de nuestra estadística \\(S\\) bajo las hipótesis que hicimos. Podemos checar este resultado con simulación, por ejemplo para una muestra de tamaño \\(n=15\\) con \\(\\lambda = 1\\): replicar_muestreo_exp <- function(est = mean, m, n = 150, lambda = 1){ valores_est <- map_dbl(1:m, ~ est(rexp(n, lambda))) tibble(id_muestra = 1:m, estimacion = valores_est) } sim_estimador_1 <- replicar_muestreo_exp(sum, 4000, n = 15) teorica <- tibble(x = seq(0, 35, 0.001)) |> mutate(f_dens = dgamma(x, shape = 15, rate = 1)) # graficar aprox de distribución de muestreo ggplot(sim_estimador_1) + geom_histogram(aes(x = estimacion, y = after_stat(density)), bins = 35) + geom_line(data = teorica, aes(x = x, y = f_dens), colour = "red", linewidth = 1.2) Teorema central del límite Si consideramos los ejemplos de arriba donde tratamos con estimadores basados en una suma, total o una media —y en menor medida cuantiles muestrales—, vimos que las distribución de muestreo de las estadísticas que usamos tienden a tener una forma común. Estas son manifestaciones de una regularidad estadística importante que se conoce como el teorema central del límite: las distribuciones de muestreo de sumas y promedios son aproximadamente normales cuando el tamaño de muestra es suficientemente grande. Teorema central del límite Si \\(X_1,X_2, \\ldots, X_n\\) son independientes e idénticamente distribuidas con media \\(\\mu\\) y desviación estándar \\(\\sigma\\) finitas. Si el tamaño de muestra \\(n\\) es grande, entonces la distribución de muestreo de la media \\[\\bar{X} = \\frac{X_1 + X_2 +\\cdots + X_n}{n}\\] es aproximadamente normal con media \\(\\mu\\) y desviación estándar \\(\\sigma/\\sqrt{n}\\), que escribimos como \\[\\bar{X} \\xrightarrow{} \\mathsf{N}\\left( \\mu, \\frac{\\sigma}{\\sqrt{n}} \\right)\\] Adicionalmente, la distribución de la media estandarizada converge a una distribución normal estándar cuando \\(n\\) es grande: \\[\\sqrt{n} \\, \\left( \\frac{\\bar{X}-\\mu}{\\sigma} \\right) \\xrightarrow{} \\mathsf{N}(0, 1)\\] El error estándar de \\(\\bar{X}\\) es \\(\\text{ee}(\\bar{X}) = \\frac{\\sigma}{\\sqrt{n}}\\). Si tenemos una muestra, podemos estimar \\(\\sigma\\) con de la siguiente forma: \\[\\hat{\\sigma} =\\sqrt{\\frac{1}{n}\\sum_{i=1}^n (X_i - \\bar{X})^2}\\] o el más común (que explicaremos más adelante) \\[\\hat{s} = \\sqrt{\\frac{1}{n-1}\\sum_{i=1}^n (X_i - \\bar{X})^2}\\] Este hecho junto con el teorema del límite central nos dice cuál es la dispersión, y cómo se distribuyen las posibles desviaciones de la media muestral alrededor de la verdadera media poblacional. ¿Qué tan grande debe ser \\(n\\). Depende de cómo es la población. Cuando la población tiene una distribución muy sesgada, por ejemplo, \\(n\\) típicamente necesita ser más grande que cuando la población es simétrica si queremos obtener una aproximación “buena”. En algunos textos se afirma que \\(n\\geq 30\\) es suficiente para que la aproximación del Teorema central del límite (TCL) sea buena siempre y cuando la distribución poblacional no sea muy sesgada. Esta regla es más o menos arbitraria y es mejor no confiarse, pues fácilmente puede fallar. En la práctica es importante checar este supuesto, por ejemplo usando remuestreo (que veremos más adelante) Revisa los ejemplos que hemos visto hasta ahora (precios de casas, simulaciones de uniformes y exponenciales según las distintas estadísticas que consideramos). ¿Qué distribuciones de muestreo parecen tener una distribución normal? ¿Cómo juzgamos si estas distribuciones están cerca o lejos de una distribución normal? Normalidad y gráficas de cuantiles normales Para checar si una distribución de datos dada es similar a la normal, la herramienta mas común en estádística es la gráfica de cuantiles teóricos, que es una generalización de la gráfica de cuantiles que vimos anteriormente. En primer lugar, definimos la función de cuantiles de una distribución teórica, que es análoga a la que definimos para conjuntos de datos: Supongamos que tenemos una distribución acumulada teórica \\(\\Phi\\). Podemos definir el cuantil-\\(f\\) \\(q(f)\\) de \\(\\Phi\\) como el valor \\(q(f)\\) tal que \\[q(f) = \\text{argmin}\\{x \\,| \\, \\Phi(x)\\geq f \\}\\] En el caso de que \\(\\Phi\\) tiene densidad \\(\\phi\\), y su soporte es un intervalo (que puede ser de longitud infinita), entonces podemos también escribir \\(q(f)\\) como el valor único donde acumulamos \\(f\\) de la probabilidad \\[\\int_{-\\infty}^{q(f)} \\phi(x)\\,dx= f\\] Por ejemplo, para una densidad normal, abajo mostramos los cuantiles \\(f=0.5\\) (mediana) y \\(f=0.95\\) densidad_tbl <- tibble(x = seq(0, 10, 0.01)) |> mutate(densidad = dnorm(x, 5, 1)) # qnorm es la función de cuantiles de una normal cuantil_50 <- qnorm(0.50, 5, 1) cuantil_90 <- qnorm(0.95, 5, 1) # graficamos densidad_tbl <- densidad_tbl |> mutate(menor_50 = x >= cuantil_50) |> mutate(menor_90 = x >= cuantil_90) g_normal_50 <- ggplot(densidad_tbl, aes(y = densidad)) + ylab('f(x)') + geom_area(aes(x = x, fill = menor_50)) + geom_line(aes(x = x), alpha = 0.1) + geom_vline(xintercept = cuantil_50) + theme(legend.position = "none") + annotate("text", 4.3, 0.2, label = "50%") + labs(subtitle = paste0("q(0.5)=", round(cuantil_50,1))) g_normal_90 <- ggplot(densidad_tbl, aes(y = densidad)) + ylab('f(x)') + geom_area(aes(x = x, fill = menor_90)) + geom_line(aes(x = x), alpha = 0.1) + geom_vline(xintercept = cuantil_90) + theme(legend.position = "none") + annotate("text", 5.0, 0.2, label = "95%") + labs(subtitle = paste0("q(0.95)=", round(cuantil_90,1))) g_normal_50 + g_normal_90 Como todas las distribuciones normales tienen la misma forma, y para obtener una de otra solo basta reescalar y desplazar, para calcular los cuantiles de una variable con distribución normal \\(\\mathsf{N}(\\mu, \\sigma)\\) sólo tenemos que saber los cuantiles de la distribución normal estándar \\(\\mathsf{N}(0,1)\\) y escalarlos apropiadamente por su media y desviación estándar \\[q(f, \\mu, \\sigma) = \\mu + \\sigma q(f, 0, 1)\\] Puedes demostrar esto sin mucha dificultad empezando con \\(P(X\\leq q) = f\\) y estandarizando: \\[P(X\\leq q(f, \\mu, \\sigma)) = f \\implies P\\left (Z\\leq \\frac{q(f,\\mu,\\sigma) - \\mu}{\\sigma}\\right)=f\\] y esto implica que \\[q(f, 0, 1) = \\frac{q(f,\\mu,\\sigma) - \\mu}{\\sigma} \\implies q(f, \\mu, \\sigma) = \\mu + \\sigma q(f, 0, 1)\\] De modo que si graficáramos los cuantiles de una distribución \\(\\mathsf{N}(\\mu, \\sigma)\\) contra los cuantiles de una distribución \\(\\mathsf{N}(0,1)\\), estos cuantiles aparecen en una línea recta: comparacion_tbl <- tibble(f = seq(0.01, 0.99, 0.01)) |> mutate(cuantiles_normal = qnorm(f, 5, 3), cuantiles_norm_estandar = qnorm(f, 0, 1)) ggplot(comparacion_tbl, aes(cuantiles_norm_estandar, cuantiles_normal)) + geom_point() Ahora supongamos que tenemos una muestra \\(X_1, \\ldots, X_n\\). ¿Cómo podemos checar si estos datos tienen una distribución aproximadamente normal? Si la muestra tiene una distribución aproximadamente \\(\\mathsf{N}(\\mu, \\sigma)\\), entonces sus cuantiles muestrales y los cuantiles respectivos de la normal estándar están aproximadamente en una línea recta. Primero veamos un ejemplo donde los datos son generados según una normal. set.seed(21) muestra <- tibble(x_1 = rnorm(60, 10, 3), x_2 = rgamma(60, 2, 5)) graf_1 <- ggplot(muestra, aes(sample = x_1)) + geom_qq(distribution = stats::qnorm) + geom_qq_line(colour = "red") graf_2 <- ggplot(muestra, aes(sample = x_2)) + geom_qq(distribution = stats::qnorm) + geom_qq_line(colour = "red") graf_1 + graf_2 ¿Cuáles son los datos aproximadamente normales? ¿Cómo interpretas las desviaciones de la segunda gráfica en términos de la forma de la distribución normal? Prueba de hipótesis de normalidad Para interpretar las gráficas de cuantiles normales se requiere práctica, pues claramente los datos, aún cuando provengan de una distribución normal, no van a caer justo sobre una línea recta y observaremos variabilidad. Esto no descarta necesariamente que los datos sean aproximadamente normales. Con la práctica, generalmente esta gráfica nos da una buena indicación si el supuesto de normalidad es apropiado. Sin embargo, podemos hacer una prueba de hipótesis formal de normalidad si quisiéramos. La hipótesis nula es la siguiente: Los datos provienen de una distribución normal, y las desviaciones que observamos de una línea recta se deben a variación muestral. Podemos generar datos nulos tomando la media y desviación estándar muestrales, y generando muestras normales \\(\\mathsf{N}(\\bar{x}, s)\\). Usamos el lineup, produciendo datos bajo la hipótesis nula y viendo si podemos distinguir los datos. Por ejemplo: library(nullabor) lineup_normal <- lineup(null_dist("x_2", dist = "normal"), muestra) ggplot(lineup_normal, aes(sample = x_2)) + geom_qq(distribution = stats::qnorm) + geom_qq_line(colour = "red") + facet_wrap(~ .sample) En esta gráfica claramente rechazaríamos la hipótesis de normalidad. Sin embargo, para la primera muestra, obtenemos: lineup_normal <- lineup(null_dist("x_1", dist = "normal"), muestra) ggplot(lineup_normal, aes(sample = x_1)) + geom_qq(distribution = stats::qnorm) + geom_qq_line(colour = "red") + facet_wrap(~ .sample) Los datos verdaderos están en attr(lineup_normal, "pos") ## [1] 4 Ejemplo Consideremos el problema de estimar el total poblacional de los precios de las casas que se vendieron. El estimador que usamos fue la suma muestral expandida por un factor. Vamos a checar qué tan cerca de la normalidad está la distribución de meustreo de esta estadística (\\(n=250\\)): replicaciones_2 ## # A tibble: 1,500 × 4 ## id_muestra total_muestra factor_exp est_total_millones ## <chr> <dbl> <dbl> <dbl> ## 1 1 47089. 4.58 215. ## 2 2 45654. 4.58 209. ## 3 3 43973. 4.58 201. ## 4 4 45665. 4.58 209. ## 5 5 43551. 4.58 199. ## 6 6 46066. 4.58 211. ## 7 7 46626. 4.58 213. ## 8 8 47944. 4.58 219. ## 9 9 45381. 4.58 208. ## 10 10 46519. 4.58 213. ## # ℹ 1,490 more rows ggplot(replicaciones_2, aes(sample = est_total_millones)) + geom_qq(alpha = 0.3) + geom_qq_line(colour = "red") Y vemos que en efecto el TCL aplica en este ejemplo, y la aproximación es buena. Aunque la población original es sesgada, la descripción de la distribución de muestreo es sorprendemente compacta: La distribución de muestreo de nuestro estimador del total \\(\\hat{t}\\) es aproximadamente normal con media \\(\\bar{x}\\) y desviación estándar \\(s\\), donde: mu <- mean(replicaciones_2$est_total_millones) s <- sd(replicaciones_2$est_total_millones) c(mu = mu, s = s) |> round(2) ## mu s ## 209.90 5.24 Estas cantidades están en millones de dólares. Ejemplo Supongamos que queremos calcular la probabilidad que la suma de 30 variables uniformes en \\([0,1]\\) independientes sea mayor que 18. Podríamos aproximar esta cantidad usando simulación. Otra manera de aproximar esta cantidad es con el TCL, de la siguiente forma: Si \\(S=X_1 + X_2 + X_{30}\\), entonces la media de \\(S\\) es 15 (¿cómo se calcula?) y su desviación estándar es \\(\\sqrt{\\frac{30}{12}}\\). La suma es entonces aproximadamente \\(\\mathsf{N}\\left(15, \\sqrt{\\frac{30}{12}}\\right)\\). Entonces \\[P(S > 18) = P \\left (\\frac{S - 15}{\\sqrt{\\frac{30}{12}}} > \\frac{18 - 15}{\\sqrt{\\frac{30}{12}}}\\right) \\approx P(Z > 1.897)\\] donde \\(Z\\) es normal estándar. Esta última cantidad la calculamos usando la función de distribución de la normal estándar, y nuestra aproximación es 1 - pnorm(1.897) ## [1] 0.02891397 Podemos checar nuestro cálculo usando simulación: tibble(n_sim = 1:100000) |> mutate(suma = map_dbl(n_sim, ~ sum(runif(30)))) |> summarise(prob_may_18 = mean(suma > 18), .groups = "drop") ## # A tibble: 1 × 1 ## prob_may_18 ## <dbl> ## 1 0.0280 Y vemos que la aproximación normal es buena para fines prácticos. Usando simulaciones haz un histograma que aproxime la distribución de muestreo de \\(S\\). Haz una gráfica de cuantiles normales para checar la normalidad de esta distribución. Ejemplo Cuando el sesgo de la distribución poblacional es grande, puede ser necesario que \\(n\\) sea muy grande para que la aproximación normal sea aceptable para el promedio o la suma. Por ejemplo, si tomamos una gamma con parámetro de forma chico, \\(n = 30\\) no es suficientemente bueno, especialmente si quisiéramos aproximar probabilidades en las colas de la distribución: sims_gamma <- map_df(1:2000, ~ tibble(suma = sum(rgamma(30, 0.1, 1))), .id = "n_sim") ggplot(sims_gamma, aes(x = suma)) + geom_histogram() Más del Teorema central del límite El teorema central del límite aplica a situaciones más generales que las del enunciado del teorema básico. Por ejemplo, aplica a poblaciones finitas (como vimos en el ejemplo de las casas), en 1960 Jaroslav Hajek demostró una versión del TCL bajo muestreo sin reemplazo. Mas allá de la media muestral, el TCL se puede utilizar para más estadísticas ya que muchas pueden verse como promedios, como totales o errores estándar. El TLC se ha generalizado incluso para cuantiles muestrales. Es importante notar que la calidad de la aproximación del TCL depende de características de la población y también del tamaño de muestra \\(n\\). Para ver si el TCL aplica, podemos hacer ejercicios de simulación bajo diferentes supuestos acerca de la población. También veremos más adelante, con remuestreo, maneras de checar si es factible el TCL dependiendo del análisis de una muestra dada que tengamos. El TCL era particularmente importante en la práctica antes de que pudiéramos hacer simulación por computadora. Era la única manera de aproximar y entender la distribución muestral fuera de cálculos analíticos (como los que hicimos para el máximo de un conjunto de uniformes, por ejemplo). Hoy en día, veremos que podemos hacer simulación para obtener respuestas más exactas, particularmente en la construcción de intervalos de confianza, por ejemplo. Dependemos menos de resultados asintóticos, como el TCL. Cuando aproximamos una distribución discreta mediante la distribución normal, conviene hacer correcciones de continuidad, como se explica en (Chihara and Hesterberg 2018), 4.3.2. Referencias "],["intervalos-de-confianza-y-remuestreo.html", "Sección 5 Intervalos de confianza y remuestreo Ejemplo introductorio La idea del bootstrap El principio de plug-in Discusión: propiedades de la distribución bootstrap Error estándar bootstrap e intervalos normales Ejemplo: inventario de casas vendidas Calibración de intervalos de confianza Interpretación de intervalos de confianza Sesgo Intervalos bootstrap de percentiles Bootstrap para dos muestras Bootstrap y otras estadísticas Bootstrap y estimadores complejos: tablas de perfiles Bootstrap y muestras complejas Bootstrap en R Conclusiones y observaciones", " Sección 5 Intervalos de confianza y remuestreo En la sección anterior, vimos el concepto de distribución de muestreo de una estadística que queremos utilizar para estimar un valor poblacional, y vimos que con esta distribución podíamos evaluar qué tan preciso es nuestro estimador evaluando qué tan concentrada está esta distribución alrededor del valor poblacion que queremos estimar. Sin embargo, en los ejemplos que vimos la población era conocida: ya sea que tuviéramos toda la población finita disponible (como el ejemplo de las casas), o donde la población estaba definida por un modelo teórico de probabilidad (como los ejemplos de las distribuciones uniforme o exponencial). Ahora vemos qué hacer en el caso que realmente nos interesa: solo tenemos una muestra disponible, y la población es desconocida. Todo lo que tenemos es una muestra y una estimación basada en la muestra, y requerimos estimar la distribución de muestreo de la estadística de interés. El enfoque que presentaremos aquí es uno de los más flexibles y poderosos que están disponibles para este problema: el método bootstrap o de remuestreo. En primer lugar explicamos el concepto de intervalo de confianza, que es una manera resumida de evaluar la precisión de nuestras estimaciones. Ejemplo introductorio Regresamos a nuestro ejemplo anterior donde muestreamos 3 grupos, y nos preguntábamos acerca de la diferencia de sus medianas. En lugar de hacer pruebas de permutaciones (ya sea pruebas gráficas o alguna prueba de permutaciones para media o mediana, por ejemplo), podríamos considerar qué tan precisa es cada una de nuestras estimaciones para las medianas de los grupos. Nuestros resultados podríamos presentarlos como sigue. Este código lo explicaremos más adelante, por el momento consideramos la gŕafica resultante: set.seed(8) pob_tab <- tibble(id = 1:2000, x = rgamma(2000, 4, 1), grupo = sample(c("a","b", "c"), 2000, prob = c(4,2,1), replace = T)) muestra_tab <- pob_tab |> slice_sample(n = 125) g_1 <- ggplot(muestra_tab, aes(x = grupo, y = x)) + geom_boxplot(outlier.alpha = 0) + geom_jitter(alpha = 0.3) + labs(subtitle = "Muestra \\n") + ylim(c(0,14)) ## Hacemos bootstrap fun_boot <- function(datos){ datos |> group_by(grupo) |> slice_sample(prop = 1, replace = TRUE) } reps_boot <- map_df(1:2000, function(i){ muestra_tab |> fun_boot() |> group_by(grupo) |> summarise(mediana = median(x), .groups = "drop")}, .id = 'rep') resumen_boot <- reps_boot |> group_by(grupo) |> summarise(ymin = quantile(mediana, 0.025), ymax = quantile(mediana, 0.975), .groups = "drop") |> left_join(muestra_tab |> group_by(grupo) |> summarise(mediana = median(x))) g_2 <- ggplot(resumen_boot, aes(x = grupo, y = mediana, ymin = ymin, ymax = ymax)) + geom_linerange() + geom_point(colour = "red", size = 2) + ylim(c(0,14)) + labs(subtitle = "Intervalos de 95% \\n para la mediana") g_1 + g_2 Donde: En rojo está nuestro = puntual de la mediana de cada grupo (la mediana muestral), y Las segmentos muestran un intervalo de confianza del 95% para nuestra estimación de la mediana: esto quiere decir que los valores poblacionales tienen probabilidad aproximada de 95% de estar dentro del intervalo. Este análisis comunica correctamente que tenemos incertidumbre alta acerca de nuestras estimaciones (especialmente grupos b y c), y que no tenemos mucha evidencia de que el grupo b tenga una mediana poblacional considerablemente más alta que a o c. En muchos casos es más útil presentar la información de esta manera que usando alguna prueba de hipótesis. La idea del bootstrap Como explicamos, el problema que tenemos ahora es que normalmente sólo tenemos una muestra, así que no es posible calcular las distribuciones de muestreo como hicimos en la sección anterior y así evaluar qué tan preciso es nuestro estimador. Sin embargo, podemos hacer lo siguiente: Supongamos que tenemos una muestra \\(X_1,X_2,\\dots, X_n\\) independientes de alguna población desconocida y un estimador \\(T=t(X_1,\\dots, X_n)\\) Mundo poblacional Si tuviéramos la distribución poblacional, simulamos muestras iid para aproximar la distribución de muestreo de nuestro estimador, y así entender su variabilidad. Pero no tenemos la distribución poblacional. Sin embargo, podemos estimar la distribución poblacional con nuestros valores muestrales. Mundo bootstrap Si usamos la estimación del inciso 3, entonces usando el inciso 1 podríamos tomar muestras de nuestros datos muestrales, como si fueran de la población, y usando el mismo tamaño de muestra. El muestreo lo hacemos con reemplazo de manera que produzcamos muestras independientes de la misma “población estimada”, que es la muestra. Evaluamos nuestra estadística en cada una de estas remuestras, a estas les llamamos replicaciones bootstrap. A la distribución de las replicaciones le llamamos distribución bootstrap o distribución de remuestreo del estimador. Usamos la distribución bootstrap para estimar la variabilidad en nuestra estimación con la muestra original. Veamos que sucede para un ejemplo concreto, donde nos interesa estimar la media de los precios de venta de una población de casas. Tenemos nuestra muestra: set.seed(2112) poblacion_casas <- read_csv("data/casas.csv") muestra <- slice_sample(poblacion_casas, n = 200, replace = TRUE) mean(muestra$precio_miles) ## [1] 179.963 Esta muestra nos da nuestro estimador de la distribución poblacional: bind_rows(muestra |> mutate(tipo = "muestra"), poblacion_casas |> mutate(tipo = "población")) |> ggplot(aes(sample = precio_miles, colour = tipo, group = tipo)) + geom_qq(distribution = stats::qunif, alpha = 0.4, size = 1) + facet_wrap(~ tipo) O con histogramas: bind_rows(muestra |> mutate(tipo = "muestra"), poblacion_casas |> mutate(tipo = "población")) |> ggplot(aes(x = precio_miles, group = tipo)) + geom_histogram(aes(y=..density..), binwidth = 50) + facet_wrap(~ tipo) Y vemos que la aproximación es razonable en las partes centrales de la distribución. Ahora supongamos que nos interesa cuantificar la precisión de nuestra estimación de la media poblacional de precios de casas, y usaremos la media muestral para hacer esto. Para nuestra muestra, nuestra estimación puntual es: media <- mean(muestra$precio_miles) media ## [1] 179.963 Y recordamos que para aproximar la distribución de muestreo podíamos muestrear repetidamente la población y calcular el valor del estimador en cada una de estas muestras. Aquí no tenemos la población, pero tenemos una estimación de la población: la muestra obtenida. Así que para evaluar la variabilidad de nuestro estimador, entramos en el mundo bootstrap, y consideramos que la población es nuestra muestra. Podemos entonces extraer un número grande de muestras con reemplazo de tamaño 200 de la muestra: el muestreo debe ser análogo al que se tomó para nuestra muestra original. Evaluamos nuestra estadística (en este caso la media) en cada una de estas remuestras: media_muestras <- map_dbl(1:5000, ~ muestra |> slice_sample(n = 200, replace = TRUE) |> summarise(media_precio = mean(precio_miles), .groups = "drop") |> pull(media_precio)) Y nuestra estimación de la distribución de muestreo para la media es entonces: bootstrap <- tibble(media = media_muestras) g_cuantiles <- ggplot(bootstrap, aes(sample = media)) + geom_qq(distribution = stats::qunif) g_histograma <- ggplot(bootstrap, aes(x = media)) + geom_histogram(binwidth = 2) g_cuantiles + g_histograma A esta le llamamos la distribución bootstrap (o de remuestreo) de la media, que definimos más abajo. Ahora podemos calcular un intervalo de confianza del 90% simplemente calculando los cuantiles de esta distribución (no son los cuantiles de la muestra original!): limites_ic <- quantile(media_muestras, c(0.05, 0.95)) |> round() limites_ic ## 5% 95% ## 171 189 Presentaríamos nuestro resultado como sigue: nuestra estimación puntual de la mediana es 180, con un intervalo de confianza del 90% de (171, 189) Otra cosa que podríamos hacer para describir la dispersión de nuestro estimador es calcular el error estándar de remuestreo, que estima el error estándar de la distribución de muestreo: ee_boot <- sd(media_muestras) round(ee_boot, 2) ## [1] 5.39 Definición. Sea \\(X_1,X_2,\\ldots,X_n\\) una muestra independiente y idénticamente distribuida, y \\(T=t(X_1, X_2, \\ldots, X_n)\\) una estadística. Supongamos que sus valores que obervamos son \\(x_1, x_2,\\ldots, x_n\\). La distribución bootstrap, o distribución de remuestreo, de \\(T\\) es la distribución de \\(T^*=t(X_1^*, X_2^*, \\dots X_n^*)\\), donde cada \\(X_i^*\\) se obtiene tomando al azar uno de los valores de \\(x_1,x_2,\\ldots, x_n\\). Otra manera de decir esto es que la remuestra \\(X_1^*, X_2^*, \\ldots, X_n^*\\) es una muestra con reemplazo de los valores observados \\(x_1, x_2, \\ldots, x_n\\) Ejemplo. Si observamos la muestra muestra <- sample(1:20, 5) muestra ## [1] 6 10 7 3 14 Una remuestra se obtiene: sample(muestra, size = 5, replace = TRUE) ## [1] 7 3 7 10 6 Nótese que algunos valores de la muestra original pueden aparecer varias veces, y otros no aparecen del todo. La idea del bootstrap (no paramétrico). La muestra original es una aproximación de la población de donde fue extraída. Así que remuestrear la muestra aproxima lo que pasaría si tomáramos muestras de la población. La distribución de remuestreo de una estadística, que se construye tomando muchas remuestras, aproxima la distribución de muestreo de la estadística. Y el proceso que hacemos es: Remuestreo para una población. Dada una muestra de tamaño \\(n\\) de una población, Obtenemos una remuestra de tamaño \\(n\\) con reemplazo de la muestra original y calculamos la estadística de interés. Repetimos este remuestreo muchas veces (por ejemplo, 10,000). Construímos la distribución bootstrap, y examinamos sus características (dónde está centrada, dispersión y forma). El principio de plug-in La idea básica detrás del bootstrap es el principio de plug-in para estimar parámetros poblacionales: si queremos estimar una cantidad poblacional, calculamos esa cantidad poblacional con la muestra obtenida. Es un principio común en estadística. Por ejemplo, si queremos estimar la media o desviación estándar poblacional, usamos la media muestral o la desviación estándar muestral. Si queremos estimar un cuantil de la población usamos el cuantil correspondiente de la muestra, y así sucesivamente. En todos estos casos, lo que estamos haciendo es: Tenemos una fórmula para la cantidad poblacional de interés en términos de la distribución poblacional. Tenemos una muestra, la distribución que da esta muestra se llama distribución empírica (\\(\\hat{F}(x) = \\frac{1}{n}\\{\\#valores \\le x\\}\\)). Contruimos nuestro estimador, de la cantidad poblacional de interés, “enchufando” la distribución empírica de la muestra en la fórmula del estimador. En el bootstrap aplicamos este principio simple a la distribución de muestreo: Si tenemos la población, podemos calcular la distribución de muestreo de nuestro estimador tomando muchas muestras de la población. Estimamos la poblacion con la muestra y enchufamos en la frase anterior: estimamos la distribución de muestreo de nuestro estimador tomando muchas muestras de la muestra. Nótese que el proceso de muestreo en el último paso debe ser el mismo que se usó para tomar la muestra original. Estas dos imágenes simuladas con base en un ejemplo de Chihara and Hesterberg (2018) muestran lo que acabamos de describir: Figure 5.1: Mundo Real Figure 5.2: Mundo Bootstrap Observación 1. Veremos ejemplos más complejos, pero nótese que si la muestra original son observaciones independientes obtenidas de la distribución poblacional, entonces logramos esto en las remuestras tomando observaciones con reemplazo de la muestra. Igualmente, las remuestras deben ser del mismo tamaño que la muestra original. ¿Porqué no funcionaría tomar muestras sin reemplazo? Piensa si hay independencia entre las observaciones de la remuestra, y cómo serían las remuestras sin reemplazo. ¿Por qué no se puede hacer bootstrap si no conocemos cómo se obtuvo la muestra original? Observación 2. Estos argumentos se pueden escribir con fórmulas usando por ejemplo la función de distribución acumulada \\(F\\) de la población y su estimador, que es la función empírica \\(\\hat{F}\\). Si \\(\\theta = t(F)\\) es una cantidad poblacional que queremos estimar, su estimador plug-in es \\(\\hat{\\theta} = t(\\hat{F})\\). Observación 3: La distribución empírica \\(\\hat{F}\\) es un estimador “razonable” de la distribución poblacional \\(F,\\) pues por el teorema de Glivenko-Cantelli (ver Wasserman (2013), o aquí), \\(\\hat{F}\\) converge a \\(F\\) cuando el tamaño de muestra \\(n\\to\\infty\\), lo cual es intuitivamente claro. Ejemplo En el ejemplo de tomadores de té, podemos estimar la proporción de tomadores de té que prefiere el té negro usando nuestra muestra: te <- read_csv("data/tea.csv") |> rowid_to_column() |> select(rowid, Tea, sugar) te |> mutate(negro = ifelse(Tea == "black", 1, 0)) |> summarise(prop_negro = mean(negro), n = length(negro), .groups = "drop") ## # A tibble: 1 × 2 ## prop_negro n ## <dbl> <int> ## 1 0.247 300 ¿Cómo evaluamos la precisión de este estimador? Supondremos que el estudio se hizo tomando una muestra aleatoria simple de tamaño 300 de la población de tomadores de té que nos interesa. Podemos entonces usar el bootstrap: # paso 1: define el estimador calc_estimador <- function(datos){ prop_negro <- datos |> mutate(negro = ifelse(Tea == "black", 1, 0)) |> summarise(prop_negro = mean(negro), n = length(negro), .groups = "drop") |> pull(prop_negro) prop_negro } # paso 2: define el proceso de remuestreo muestra_boot <- function(datos){ #tomar muestra con reemplazo del mismo tamaño slice_sample(datos, prop = 1, replace = TRUE) } # paso 3: remuestrea y calcula el estimador prop_negro_tbl <- tibble(prop_negro = map_dbl(1:10000, ~ calc_estimador(muestra_boot(datos = te)))) # paso 4: examina la distribución bootstrap prop_negro_tbl |> ggplot(aes(x = prop_negro)) + geom_histogram(bins = 15) + geom_vline(xintercept = calc_estimador(te), color = "red") Y podemos evaluar varios aspectos, por ejemplo dónde está centrada y qué tan dispersa es la distribución bootstrap: prop_negro_tbl |> summarise(media = mean(prop_negro), ee = sd(prop_negro), cuantil_75 = quantile(prop_negro, 0.75), cuantil_25 = quantile(prop_negro, 0.25), .groups = "drop") |> mutate(across(where(is.numeric), round, 3)) |> pivot_longer(cols = everything()) ## # A tibble: 4 × 2 ## name value ## <chr> <dbl> ## 1 media 0.247 ## 2 ee 0.025 ## 3 cuantil_75 0.263 ## 4 cuantil_25 0.23 –> –> Discusión: propiedades de la distribución bootstrap Uasremos la distribución bootstrap principalmente para evaluar la variabilidad de nuestros estimadores (y también otros aspectos como sesgo) estimando la dispersión de la distribución de muestreo. Sin embargo, es importante notar que no la usamos, por ejemplo, para saber dónde está centrada la distribución de muestreo, o para “mejorar” la estimación remuestreando. Ejemplo En este ejemplo, vemos 20 muestras de tamaño 200, y evaluamos cómo se ve la aproximación a la distribución de la población (rojo): Podemos calcular las distribuciones de remuestreo (bootstrap) para cada muestra, y compararlas con la distribución de muestreo real. # paso 1: define el estimador calc_estimador <- function(datos){ media_precio <- datos |> summarise(media = mean(precio_miles), .groups = "drop") |> pull(media) media_precio } # paso 2: define el proceso de remuestreo muestra_boot <- function(datos, n = NULL){ #tomar muestra con reemplazo del mismo tamaño if(is.null(n)){ m <- slice_sample(datos, prop = 1, replace = TRUE)} else { m <- slice_sample(datos, n = n, replace = TRUE) } m } dist_boot <- datos_sim |> filter(tipo == "muestras") |> select(precio_miles, rep) |> group_by(rep) |> nest() |> mutate(precio_miles = map(data, function(data){ tibble(precio_miles = map_dbl(1:1000, ~ calc_estimador(muestra_boot(data)))) })) |> select(rep, precio_miles) |> unnest() dist_muestreo <- datos_sim |> filter(tipo == "población") |> group_by(rep) |> nest() |> mutate(precio_miles = map(data, function(data){ tibble(precio_miles = map_dbl(1:1000, ~ calc_estimador(muestra_boot(data, n = 200)))) })) |> select(rep, precio_miles) |> unnest() Obsérvese que: En algunos casos la aproximación es mejor que en otros (a veces la muestra tiene valores ligeramente más altos o más bajos). La dispersión de cada una de estas distribuciones bootstrap es similar a la de la verdadera distribución de muestreo (en rojo), pero puede está desplazada dependiendo de la muestra original que utilizamos. Adicionalmente, los valores centrales de la distribución de bootstrap tiende cubrir el verdadero valor que buscamos estimar, que es: poblacion_casas |> summarise(media = mean(precio_miles), .groups = "drop") ## # A tibble: 1 × 1 ## media ## <dbl> ## 1 183. Variación en distribuciones bootstrap En el proceso de estimación bootstrap hay dos fuentes de variación pues: La muestra original se selecciona con aleatoriedad de una población. Las muestras bootstrap se seleccionan con aleatoriedad de la muestra original. Esto es: La estimación bootstrap ideal es un resultado asintótico \\(B=\\infty\\), en esta caso \\(\\hat{\\textsf{se}}_B\\) iguala la estimación plug-in \\(se_{P_n}\\). En el proceso de bootstrap podemos controlar la variación del segundo aspecto, conocida como implementación de muestreo Monte Carlo, y la variación Monte Carlo decrece conforme incrementamos el número de muestras. Podemos eliminar la variación Monte Carlo si seleccionamos todas las posibles muestras con reemplazo de tamaño \\(n\\), hay \\({2n-1}\\choose{n}\\) posibles muestras y si seleccionamos todas obtenemos \\(\\hat{\\textsf{se}}_\\infty\\) (bootstrap ideal), sin embargo, en la mayor parte de los problemas no es factible proceder así. En la siguiente gráfica mostramos 6 posibles muestras de tamaño 50 simuladas de la población, para cada una de ellas se graficó la distribución empírica y se se realizan histogramas de la distribución bootstrap con \\(B=30\\) y \\(B=1000\\), en cada caso hacemos dos repeticiones, notemos que cuando el número de muestras bootstrap es grande las distribuciones bootstrap son muy similares (para una muestra de la población dada), esto es porque disminuimos el erro Monte Carlo. También vale la pena recalcar que la distribución bootstrap está centrada en el valor observado en la muestra (línea azúl punteada) y no en el valor poblacional sin embargo la forma de la distribución es similar a lo largo de las filas. Entonces, ¿cuántas muestras bootstrap? Incluso un número chico de replicaciones bootstrap, digamos \\(B=25\\) es informativo, y \\(B=50\\) con frecuencia es suficiente para dar una buena estimación de \\(se_P(\\hat{\\theta})\\) (Efron and Tibshirani (1993)). Cuando se busca estimar error estándar Chihara and Hesterberg (2018) recomienda \\(B=1000\\) muestras, o \\(B=10,000\\) muestras dependiendo la presición que se busque. Error estándar bootstrap e intervalos normales Ahora podemos construir nuestra primera versión de intervalos de confianza basados en la distribución bootstrap. Supongamos que queremos estimar una cantidad poblacional \\(\\theta\\) con una estadística \\(\\hat{\\theta} = t(X_1,\\ldots, X_n)\\), donde \\(X_1,\\ldots, X_n\\) es una muestra independiente e idénticamente distribuida de la población. Suponemos además que la distribución muestral de \\(\\hat{\\theta}\\) es aproximadamente normal (el teorema central del límite aplica), y está centrada en el verdadero valor poblacional \\(\\theta\\). Ahora queremos construir un intervalo que tenga probabilidad 95% de cubrir al valor poblacional \\(\\theta\\). Tenemos que \\[P(-2\\mathsf{ee}(\\hat{\\theta}) < \\hat{\\theta} - \\theta < 2\\mathsf{ee}(\\hat{\\theta})) \\approx 0.95\\] por las propiedades de la distribución normal (\\(P(-2\\sigma < X -\\mu < 2\\sigma)\\approx 0.95\\) si \\(X\\) es normal con media \\(\\mu\\) y desviación estándar \\(\\sigma\\)). Entonces \\[P(\\hat{\\theta} - 2\\mathsf{ee}(\\hat{\\theta}) < \\theta < \\hat{\\theta} + 2\\mathsf{ee}(\\hat{\\theta})) \\approx 0.95\\] Es decir, la probabilidad de que el verdadero valor poblacional \\(\\theta\\) esté en el intervalo \\[[\\hat{\\theta} - 2\\mathsf{ee}(\\hat{\\theta}), \\hat{\\theta} + 2\\mathsf{ee}(\\hat{\\theta})]\\] es cercano a 0.95. En este intervalo no conocemos el error estándar (es la desviación estándar de la distribución de muestreo de \\(\\hat{\\theta}\\)), y aquí es donde entre la distribución bootstrap, que aproxima la distribución de muestreo. Lo estimamos con \\[\\hat{\\mathsf{ee}}_{\\textrm{boot}}(\\hat{\\theta})\\] que es la desviación estándar de la distribución bootsrap. Definición. El error estándar bootstrap \\(\\hat{\\mathsf{ee}}_{\\textrm{boot}}(\\hat{\\theta})\\) se define como la desviación estándar de la distribución bootstrap de \\(\\theta\\). El intervalo de confianza normal bootstrap al 95% está dado por \\[[\\hat{\\theta} - 2\\hat{\\mathsf{ee}}_{\\textrm{boot}}(\\hat{\\theta}), \\hat{\\theta} + 2\\hat{\\mathsf{ee}}_{\\textrm{boot}}(\\hat{\\theta})].\\] Nótese que hay varias cosas qué revisar aquí: que el teorema central del límite aplica y que la distribución de muestreo de nuestro estimador está centrado en el valor verdadero. Esto en algunos casos se puede demostrar usando la teoría, pero más abajo veremos comprobaciones empíricas. Ejemplo: tomadores de té negro Consideremos la estimación que hicimos de el procentaje de tomadores de té que toma té negro: # paso 1: define el estimador calc_estimador <- function(datos){ prop_negro <- datos |> mutate(negro = ifelse(Tea == "black", 1, 0)) |> summarise(prop_negro = mean(negro), n = length(negro)) |> pull(prop_negro) prop_negro } prop_hat <- calc_estimador(te) prop_hat |> round(2) ## [1] 0.25 Podemos graficar su distribución bootstrap —la cual simulamos arriba—. g_hist <- ggplot(prop_negro_tbl, aes(x = prop_negro)) + geom_histogram(bins = 15) g_qq_normal <- ggplot(prop_negro_tbl, aes(sample = prop_negro)) + geom_qq() + geom_qq_line(colour = "red") g_hist + g_qq_normal Y notamos que la distribución bootstrap es aproximadamente normal. Adicionalmente, vemos que el sesgo tiene un valor estimado de: media_boot <- prop_negro_tbl |> pull(prop_negro) |> mean() media_boot - prop_hat ## [1] 0.0004393333 De esta forma, hemos verificado que: La distribución bootstrap es aproximadamente normal (ver gráfica de cuantiles normales); La distribución bootstrap es aproximadamente insesgada. Lo cual nos lleva a construir intervalos de confianza basados en la distribución normal. Estimamos el error estándar con la desviación estándar de la distribución bootstrap ee_boot <- prop_negro_tbl |> pull(prop_negro) |> sd() ee_boot ## [1] 0.02485138 y construimos un intervalo de confianza del 95%: intervalo_95 <- c(prop_hat - 2 * ee_boot, prop_hat + 2 * ee_boot) intervalo_95 |> round(2) ## [1] 0.2 0.3 Este intervalo tiene probabilidad del 95% de capturar al verdadero poblacional. Con alta probabilidad, entonces, el porcentaje de tomadores de té en la población está entre 0.2 y 0.3. Ejemplo: inventario de casas vendidas Ahora consideremos el problema de estimar el total del valor de las casas vendidas en un periodo. Tenemos una muestra de tamaño \\(n=150\\): # muestra original set.seed(121) muestra_casas <- slice_sample(poblacion_casas, n = 150) # paso 1: define el estimador calc_estimador_casas <- function(datos){ N <- nrow(poblacion_casas) n <- nrow(datos) total_muestra <- sum(datos$precio_miles) estimador_total <- (N / n) * total_muestra estimador_total } # paso 2: define el proceso de remuestreo muestra_boot <- function(datos){ #tomar muestra con reemplazo del mismo tamaño slice_sample(datos, prop = 1, replace = TRUE) } # paso 3: remuestrea y calcula el estimador totales_boot <- tibble(total_boot = map_dbl(1:5000, ~ calc_estimador_casas(muestra_boot(muestra_casas)))) # paso 4: examina la distribución bootstrap g_hist <- totales_boot |> ggplot(aes(x = total_boot)) + geom_histogram() g_qq <- totales_boot |> ggplot(aes(sample = total_boot)) + geom_qq() + geom_qq_line(colour = "red") + geom_hline(yintercept = quantile(totales_boot$total_boot, 0.975), colour = "gray") + geom_hline(yintercept = quantile(totales_boot$total_boot, 0.025), colour = "gray") g_hist + g_qq En este caso, distribución de muestreo presenta cierta asimetría, pero la desviación no es grande. En la parte central la aproximación normal es razonable. Procedemos a revisar sesgo total_est <- calc_estimador_casas(muestra_casas) sesgo <- mean(totales_boot$total_boot) - total_est sesgo ## [1] 110.0851 Este número puede parecer grande, pero sí calculamos la desviación relativa con respecto al error estándar vemos que es chico en la escala de la distribución bootstrap: ee_boot <- sd(totales_boot$total_boot) sesgo_relativo <- sesgo / ee_boot sesgo_relativo ## [1] 0.01522088 De forma que procedemos a construir intervalos de confianza como sigue : c(total_est - 2*ee_boot, total_est + 2*ee_boot) ## [1] 203366.6 232296.6 Que está en miles de dólares. En millones de dólares, este intervalo es: intervalo_total <- c(total_est - 2*ee_boot, total_est + 2*ee_boot) / 1000 intervalo_total |> round(1) ## [1] 203.4 232.3 Así que con 95% de confianza el verdadero total del valor de las casas vendidas está entre 203 y 232 millones de dólares. Nota: en este ejemplo mostraremos una alternativa de intervalos de confianza que es más apropiado cuando observamos asimetría. Sin embargo, primero tendremos que hablar de dos conceptos clave con respecto a intervalos de confianza: calibración e interpretación. Calibración de intervalos de confianza ¿Cómo sabemos que nuestros intervalos de confianza del 95% nominal tienen cobertura real de 95%? Es decir, tenemos que checar: El procedimiento para construir intervalos debe dar intervalos tales que el valor poblacional está en el intervalo de confianza para 95% de las muestras. Como solo tenemos una muestra, la calibración depende de argumentos teóricos o estudios de simulación previos. Para nuestro ejemplo de casas tenemos la población, así que podemos checar qué cobertura real tienen los intervalos normales: simular_intervalos <- function(rep, size = 150){ muestra_casas <- slice_sample(poblacion_casas, n = size) N <- nrow(poblacion_casas) n <- nrow(muestra_casas) total_est <- (N / n) * sum(muestra_casas$precio_miles) # paso 1: define el estimador calc_estimador_casas <- function(datos){ total_muestra <- sum(datos$precio_miles) estimador_total <- (N / n) * total_muestra estimador_total } # paso 2: define el proceso de remuestreo muestra_boot <- function(datos){ #tomar muestra con reemplazo del mismo tamaño slice_sample(datos, prop = 1, replace = TRUE) } # paso 3: remuestrea y calcula el estimador totales_boot <- map_dbl(1:2000, ~ calc_estimador_casas(muestra_boot(muestra_casas))) |> tibble(total_boot = .) |> summarise(ee_boot = sd(total_boot)) |> mutate(inf = total_est - 2*ee_boot, sup = total_est + 2*ee_boot) |> mutate(rep = rep) totales_boot } # Para recrear, correr: # sims_intervalos <- map(1:100, ~ simular_intervalos(rep = .x)) # write_rds(sims_intervalos, "cache/sims_intervalos.rds") # Para usar resultados en cache: sims_intervalos <- read_rds("cache/sims_intervalos.rds") total <- sum(poblacion_casas$precio_miles) sims_tbl <- sims_intervalos |> bind_rows() |> mutate(cubre = inf < total & total < sup) ggplot(sims_tbl, aes(x = rep)) + geom_hline(yintercept = total, colour = "red") + geom_linerange(aes(ymin = inf, ymax = sup, colour = cubre)) La cobertura para estos 100 intervalos simulados da total <- sum(poblacion_casas$precio_miles) sims_tbl |> summarise(cobertura = mean(cubre)) ## # A tibble: 1 × 1 ## cobertura ## <dbl> ## 1 0.96 que es consistente con una cobertura real del 95% (¿qué significa “consistente”? ¿Cómo puedes checarlo con el bootstrap?) Observación. En este caso teníamos la población real, y pudimos verificar la cobertura de nuestros intervalos. En general no la tenemos. Estos ejercicios de simulación se pueden hacer con poblaciones sintéticas que se generen con las características que creemos va a tener nuestra población (por ejemplo, sesgo, colas largas, etc.). En general, no importa qué tipo de estimadores o intervalos de confianza usemos, requerimos checar la calibración. Esto puede hacerse con ejercicios de simulación con poblaciones sintéticas y tanto los procedimientos de muestreo como los tamaños de muestra que nos interesa usar. Verificar la cobertura de nuestros intervalos de confianza por medio simulación está bien estudiado para algunos casos. Por ejemplo, cuando trabajamos con estimaciones para poblaciones teóricas. En general sabemos que los procedimientos funcionan bien en casos: con distribuciones simétricas que tengan colas no muy largas; estimación de proporciones donde no tratamos con casos raros o casos seguros (probabilidades cercanas a 0 o 1). Interpretación de intervalos de confianza Como hemos visto, “intervalo de confianza” (de 90% de confianza, por ejemplo) es un término frecuentista, que significa: Cada muestra produce un intervalo distinto. Para el 90% de las muestras posibles, el intervalo cubre al valor poblacional. La afirmación es sobre el intervalo y el mecanismo para construirlo. Así que con alta probabilidad, el intervalo contiene el valor poblacional. Intervalos más anchos nos dan más incertidumbre acerca de dónde está el verdadero valor poblacional (y al revés para intervalos más angostos). Existen también “intervalos de credibilidad” (de 90% de probabilidad, por ejemplo), que se interpetan de forma bayesiana: Con 90% de probabilidad (relativamente alta), creemos que el valor poblacional está dentro del intervalo de credibilidad. Esta última interpretación es más natural. Obsérvese que para hablar de intervalos de confianza frecuentista tenemos que decir: Este intervalo particular cubre o no al verdadero valor, pero nuestro procedimiento produce intervalos que contiene el verdadero valor para el 90% de las muestras. Esta es una interpretación relativamente débil, y muchos intervalos poco útiles pueden satisfacerla. La interpretación bayesiana es más natural porque expresa más claramente incertidumbre acerca del valor poblacional. Por otro lado, La interpretación frecuentista nos da maneras empíricas de probar si los intervalos de confianza están bien calibrados o no: es un mínimo que “intervalos del 90%” deberían satisfacer. Así que tomamos el punto de vista bayesiano en la intepretación, pero buscamos que nuestros intervalos cumplan o aproximen bien garantías frecuentistas (discutimos esto más adelante). Los intervalos que producimos en esta sección pueden interpretarse de las dos maneras. Sesgo Notemos que hemos revisado el sesgo en varias ocasiones, esto es porque algunos estimadores comunes (por ejemplo, cociente de dos cantidades aleatorias) pueden sufrir de sesgo grande, especialmente en el caso de muestras chicas. Esto a su vez afecta la cobertura, pues es posible que nuestros intervalos no tengan “cobertura simétrica”, por ejemplo. Para muchos estimadores, y muestras no muy chicas, esté sesgo tiende a ser poco importante y no es necesario hacer correcciones. Si el tamaño del sesgo es grande comparado con la dispersión de la distribución bootstrap generalmente consideramos que bajo el diseño actual el estimador que estamos usando no es apropiado, y podemos proponer otro estimador u otro procedimiento para construir intervalos (ver Efron and Tibshirani (1993) intervalos BC_{a}), Efron and Tibshirani (1993) sugieren más de 20% de la desviación estándar, mientras que en Chihara and Hesterberg (2018) se sugiere 2% de la desviación estándar. Dependiendo que tan crítico es que los intervalos estén bien calibrados podemos evaluar nuestro problema particular. Intervalos bootstrap de percentiles Retomemos nuestro ejemplo del valor total del precio de las casas. A través de remuestras bootstrap hemos verificado gráficamente que la distribución de remuestreo es ligeramente asimétrica (ver la figura de abajo). Anteriormente hemos calculado intervalos de confianza basados en supuestos normales por medio del error éstandar. Este intervalo está dado por ## [1] 203.4 232.3 y por construcción sabemos que es simétrico con respecto al valor estimado, pero como podemos ver la distribución de muestreo no es simétrica, lo cual podemos confirmar por ejemplo calculando el porcentaje de muestras bootstrap que caen por arriba y por debajo del intervalo construido: ## # A tibble: 1 × 2 ## prop_inf prop_sup ## <dbl> <dbl> ## 1 0.0192 0.026 los cuales se han calculado como el porcentaje de medias bootstrap por debajo (arriba) de la cota inferior (superior), y vemos que no coinciden con el nivel de confianza prestablecido (2.5% para cada extremo). Otra opción común que se usa específicamente cuando la distribución bootstrap no es muy cercana a la normal son los intervalos de percentiles bootstrap: Definición. El intervalo de percentiles bootstrap al 95% de confianza está dado por \\[[q_{0.025}, q_{0.975}]\\] donde \\(q_f\\) es el percentil \\(f\\) de la distribución bootstrap. Otros intervalos comunes son el de 80% o 90% de confianza, por ejemplo, que corresponden a \\([q_{0.10}, q_{0.90}]\\) y \\([q_{0.05}, q_{0.95}]\\). Ojo: intervalos de confianza muy alta (por ejemplo 99.5%) pueden tener mala calibración o ser muy variables en su longitud pues dependen del comportamiento en las colas de la distribución. Para el ejemplo de las casas, calcularíamos simplemente intervalo_95 <- totales_boot |> pull(total_boot) |> quantile(probs = c(0.025, 0.975)) / 1000 (intervalo_95) |> round(1) ## 2.5% 97.5% ## 204.3 232.5 que está en millones de dólares. Nótese que es similar al intervalo de error estándar. Otro punto interesante sobre los intervalos bootstrap de percentiles es que lidian naturalmente con la asímetría de la distribución bootstrap. Ilustramos esto con la distancia de las extremos del intervalo con respecto a la media: abs(intervalo_95 - total_est/1000) ## 2.5% 97.5% ## 13.53912 14.64674 Los intervalos de confianza nos permiten presentar un rango de valores posibles para el parámetro de interés. Esto es una notable diferencia con respecto a presentar sólo un candidato como estimador. Nuestra fuente de información son los datos. Es por esto que si vemos valores muy chicos (grandes) en nuestra muestra, el intervalo se tiene que extender a la izquierda (derecha) para compensar dichas observaciones. Explica por qué cuando la aproximación normal es apropiada, el intervalo de percentiles al 95% es muy similar al intervalo normal de 2 errores estándar. Ejemplo Consideramos los datos de propinas. Queremos estimar la media de cuentas totales para la comida y la cena. Podemos hacer bootstrap de cada grupo por separado: # en este ejemplo usamos rsample, pero puedes # escribir tu propio código library(rsample) propinas <- read_csv("data/propinas.csv") estimador <- function(split, ...){ muestra <- analysis(split) |> group_by(momento) muestra |> summarise(estimate = mean(cuenta_total), .groups = 'drop') |> mutate(term = momento) } intervalo_propinas_90 <- bootstraps(propinas, strata = momento, 1000) |> mutate(res_boot = map(splits, estimador)) |> int_pctl(res_boot, alpha = 0.10) |> mutate(across(where(is.numeric), round, 2)) intervalo_propinas_90 ## # A tibble: 2 × 6 ## term .lower .estimate .upper .alpha .method ## <chr> <dbl> <dbl> <dbl> <dbl> <chr> ## 1 Cena 19.8 20.8 22.0 0.1 percentile ## 2 Comida 15.6 17.1 18.8 0.1 percentile Nota: .estimate es la media de los valores de la estadística sobre las remuestras, no es el estimador original. De la tabla anterior inferimos que la media en la cuenta en la cena es más grande que la de la comida. Podemos graficar agregando los estimadores plugin: estimadores <- propinas |> group_by(momento) |> rename(term = momento) |> summarise(media = mean(cuenta_total)) ggplot(intervalo_propinas_90, aes(x = term)) + geom_linerange(aes(ymin = .lower, ymax = .upper)) + geom_point(data = estimadores, aes(y = media), colour = "red", size = 3) + xlab("Momento") + ylab("Media de cuenta total (dólares)") + labs(subtitle = "Intervalos de 90% para la media") Nótese que el bootstrap lo hicimos por separado en cada momento del día (por eso el argumento strata en la llamada a bootstraps): Justifica el procedimiento de hacer el bootstrap separado para cada grupo. ¿Qué supuestos acerca del muestreo se deben satisfacer? ¿Deben ser muestras aleatorias simples de cada momento del día, por ejemplo? ¿Qué harías si no fuera así, por ejemplo, si se escogieron al azar tickets de todos los disponibles en un periodo? Bootstrap para dos muestras En el ejemplo anterior consideramos cómo hacer bootstrap cuando tenemos muestras independientes. También podemos aplicarlo a estimadores que comparen directamente las dos muestras: Bootstrap para comparar poblaciones. Dadas muestras independientes de tamaños \\(m\\) y \\(n\\) de dos poblaciones: Extraer una remuestra de tamaño \\(m\\) con reemplazo de la primera muestra y una remuestra separada de tamaño \\(n\\) de la segunda muestra. Calcula la estadística que compara los dos grupos (por ejemplo, diferencia de medias) Repetir este proceso muchas veces (por ejemplo, 1000 - 10000). Construir la distribución bootstrap de la estadística. Examinar dispersión, sesgo y forma. Ejemplo Supongamos que queremos comparar directamente la media de la cuenta total en comida y cena. Podemos hacer: estimador_dif <- function(split, ...){ muestra <- analysis(split) |> group_by(momento) muestra |> summarise(estimate = mean(cuenta_total), .groups = "drop") |> pivot_wider(names_from = momento, values_from = estimate) |> mutate(estimate = Cena - Comida, term = "diferencia") } dist_boot <- bootstraps(propinas, strata = momento, 2000) |> mutate(res_boot = map(splits, estimador_dif)) g_1 <- ggplot(dist_boot |> unnest(res_boot), aes(x = estimate)) + geom_histogram(bins = 20) + xlab("Diferencia Comida vs Cena") g_2 <- ggplot(dist_boot |> unnest(res_boot), aes(sample = estimate)) + geom_qq() + geom_qq_line(colour = 'red') g_1 + g_2 Y podemos calcular un intervalo de confianza para la diferencia de medias: dist_boot |> int_pctl(res_boot, alpha = 0.01) |> mutate(across(where(is.numeric), round, 2)) |> select(term, .lower, .upper) ## # A tibble: 1 × 3 ## term .lower .upper ## <chr> <dbl> <dbl> ## 1 diferencia 0.73 6.54 Que nos indica que con alta probabilidad las cuentas son más altas que en la cena que en la comida. La diferencia puede ir de un poco menos de un dólar hasta seis dólares con 99% de confianza. Datos pareados En otros casos, las muestras no son independientes y están pareadas. Por ejemplo, este es un estudio dende a 10 personas una noche se les dio una medicina para dormir y otra noche otra medicina. Se registraron cuántas horas de sueño extra comparados con un día donde no tomaron medicina. dormir <- sleep |> pivot_wider(names_from = group, names_prefix = "medicina_", values_from = extra) dormir ## # A tibble: 10 × 3 ## ID medicina_1 medicina_2 ## <fct> <dbl> <dbl> ## 1 1 0.7 1.9 ## 2 2 -1.6 0.8 ## 3 3 -0.2 1.1 ## 4 4 -1.2 0.1 ## 5 5 -0.1 -0.1 ## 6 6 3.4 4.4 ## 7 7 3.7 5.5 ## 8 8 0.8 1.6 ## 9 9 0 4.6 ## 10 10 2 3.4 En este caso, el bootstrap se hace sobre individuos, y quisiéramos comparar la medición de la medicina_1 con la medicina_2. Usaremos la media de al diferencia entre horas de sueño entre las dos medicinas. Nuestro estimador puntual es: estimador_dif <- dormir |> mutate(dif_2_menos_1 = medicina_2 - medicina_1) |> summarise(dif_media = mean(dif_2_menos_1)) estimador_dif ## # A tibble: 1 × 1 ## dif_media ## <dbl> ## 1 1.58 Esto indica que en promedio duermen hora y media más con la medicina 2 que con la medicina 1. Como hay variabilildad considerable en el número de horas extra de cada medicina dependiendo del individuo, es necesario hacer una intervalo de confianza para descartar que esta diferencia haya aparecido por azar debido a la variación muestral. Nótese que aquí no tenemos estratos, pues solo hay una muestra de individuo con dos mediciones. estimador_dif <- function(split, ...){ muestra <- analysis(split) muestra |> mutate(dif_2_menos_1 = medicina_2 - medicina_1) |> summarise(estimate = mean(dif_2_menos_1), .groups = "drop") |> mutate(term = "diferencia 2 vs 1") } dist_boot <- bootstraps(dormir, 2000) |> mutate(res_boot = map(splits, estimador_dif)) g_1 <- ggplot(dist_boot |> unnest(res_boot), aes(x = estimate)) + geom_histogram(bins = 20) g_2 <- ggplot(dist_boot |> unnest(res_boot), aes(sample = estimate)) + geom_qq() + geom_qq_line(colour = 'red') g_1 + g_2 Nuestro intervalo de percentiles al 90% es de dist_boot |> int_pctl(res_boot, 0.10) ## # A tibble: 1 × 6 ## term .lower .estimate .upper .alpha .method ## <chr> <dbl> <dbl> <dbl> <dbl> <chr> ## 1 diferencia 2 vs 1 1.04 1.57 2.22 0.1 percentile Lo que indica con alta probabilidad que la medicina 2 da entre 1 y 2 horas extras de sueño. Nota que en este ejemplo también podríamos hacer una prueba de hipótesis por permutaciones, suponiendo como hipótesis nula que las dos medicinas son equivalentes. Sin embargo, usualmente es más informativo presentar este tipo de intervalos para estimar la diferencia. Bootstrap y otras estadísticas El bootstrap es una técnica versátil. Un ejemplo son estimadores de razón, que tienen la forma \\[ \\hat{r} = \\frac{\\overline y}{\\overline x}\\] Por ejemplo, ¿cómo haríamos estimación para el procentaje de área area habitable de las casas en relación al tamaño del lote? Una manera de estimar esta cantidad es dividiendo la suma del área habitable de nuestra muestra y dividirlo entre la suma del área de los lotes de nuestra muestra, como en la fórmula anterior. Esta fórmula es más difícil pues tanto numerador como denominador tienen variabilidad, y estas dos cantidades no varían independientemente. Con el bootstrap podemos atacar estos problemas Ejemplo: estimadores de razón Nuestra muestra original es: set.seed(250) casas_muestra <- slice_sample(poblacion_casas, n = 200) El estimador de interés es: estimador_razon <- function(split, ...){ muestra <- analysis(split) muestra |> summarise(estimate = sum(area_habitable_sup_m2) / sum(area_lote_m2), .groups = "drop") |> mutate(term = "% area del lote construida") } Y nuestra estimación puntual es estimacion <- muestra_casas |> summarise(estimate = sum(area_habitable_sup_m2) / sum(area_lote_m2)) estimacion ## # A tibble: 1 × 1 ## estimate ## <dbl> ## 1 0.148 Es decir que en promedio, un poco más de 15% del lote total es ocupado por área habitable. Ahora hacemos bootstrap para construir un intervalo: dist_boot <- bootstraps(casas_muestra, 2000) |> mutate(res_boot = map(splits, estimador_razon)) g_1 <- ggplot(dist_boot |> unnest(res_boot), aes(x = estimate)) + geom_histogram(bins = 20) g_2 <- ggplot(dist_boot |> unnest(res_boot), aes(sample = estimate)) + geom_qq() + geom_qq_line(colour = 'red') g_1 + g_2 En este caso la cola derecha parece tener menos dispersión que una distribución normal. Usamos un intervalo de percentiles para obtener: dist_boot |> int_pctl(res_boot) |> mutate(estimador = estimacion$estimate) |> rename(media_boot = .estimate) |> mutate(bias = media_boot - estimador) |> pivot_longer(is_double) |> mutate(value = round(value, 3)) ## # A tibble: 6 × 4 ## term .method name value ## <chr> <chr> <chr> <dbl> ## 1 % area del lote construida percentile .lower 0.121 ## 2 % area del lote construida percentile media_boot 0.142 ## 3 % area del lote construida percentile .upper 0.159 ## 4 % area del lote construida percentile .alpha 0.05 ## 5 % area del lote construida percentile estimador 0.148 ## 6 % area del lote construida percentile bias -0.006 De modo que en esta zona, entre 12% y 16% de toda el área disponible es ocupada por área habitable: estas son casas que tienen jardines o terrenos, garage relativamente grandes. Ejemplo: suavizadores Podemos usar el bootstrap para juzgar la variabilidad de un suavizador, que consideramos como nuestra estadística: graf_casas <- function(data){ ggplot(data |> filter(calidad_gral < 7), aes(x = area_habitable_sup_m2)) + geom_point(aes(y = precio_m2_miles), alpha = 0.75) + geom_smooth(aes(y = precio_m2_miles), method = "loess", span = 0.7, se = FALSE, method.args = list(degree = 1, family = "symmetric")) } graf_casas(casas_muestra) Podemos hacer bootstrap para juzgar la estabilidad del suavizador: suaviza_boot <- function(x, data){ # remuestreo muestra_boot <- slice_sample(data, prop = 1, replace = T) ajuste <- loess(precio_m2_miles ~ area_habitable_sup_m2, data = muestra_boot, degree = 1, span = 0.7, family = "symmetric") datos_grafica <- tibble(area_habitable_sup_m2 = seq(25, 250, 5)) ajustados <- predict(ajuste, newdata = datos_grafica) datos_grafica |> mutate(ajustados = ajustados) |> mutate(rep = x) } reps <- map(1:10, ~ suaviza_boot(.x, casas_muestra |> filter(calidad_gral < 7))) |> bind_rows() # ojo: la rutina loess no tienen soporte para extrapolación graf_casas(casas_muestra) + geom_line(data = reps, aes(y = ajustados, group = rep), alpha = 1, colour = "red") Donde vemos que algunas cambios de pendiente del suavizador original no son muy interpretables (por ejemplo, para áreas chicas) y alta variabilidad en general en los extremos. Podemos hacer más iteraciones para calcular bandas de confianza: reps <- map(1:200, ~ suaviza_boot(.x, casas_muestra |> filter(calidad_gral < 7))) |> bind_rows() # ojo: la rutina loess no tienen soporte para extrapolación graf_casas(casas_muestra) + geom_line(data = reps, aes(y = ajustados, group = rep), alpha = 0.2, colour = "red") Donde observamos cómo tenemos incertidumbre en cuanto al nivel y forma de las curvas en los extremos de los datos (casas grandes y chicas), lo cual es natural. Aunque podemos resumir para hacer bandas de confianza, mostrar remuestras de esta manera es informativo: por ejempo: vemos cómo es probable también que para casas de menos de 70 metros cuadrados el precio por metro cuadrado no cambia tanto (líneas constantes) Bootstrap y estimadores complejos: tablas de perfiles Podemos regresar al ejemplo de la primera sesión donde calculamos perfiles de los tomadores de distintos tés: en bolsa, suelto, o combinados. Caundo hacemos estos tipos de análisis no es raro que los prefiles tengan variabilidad considerable que es necesario cuantificar. price tea bag tea bag+unpackaged unpackaged promedio p_upscale -0.71 -0.28 0.98 28 p_variable -0.12 0.44 -0.31 36 p_cheap 0.3 -0.53 0.23 2 p_branded 0.62 -0.16 -0.45 25 p_private label 0.72 -0.22 -0.49 5 p_unknown 1.58 -0.58 -1 3 Hacemos bootstrap sobre toda la muestra, y repetimos exactamente el mismo proceso de construción de perfiles: boot_perfiles <- map(1:1000, function(x){ te_boot <- te |> slice_sample(prop = 1, replace = TRUE) calcular_perfiles(te_boot) |> mutate(rep = x) }) |> bind_rows() Ahora resumimos y graficamos, esta vez de manera distinta: resumen_perfiles <- boot_perfiles |> group_by(how, price) |> summarise(perfil_media = mean(perfil), ymax = quantile(perfil, 0.9), ymin = quantile(perfil, 0.10)) resumen_bolsa <- resumen_perfiles |> ungroup() |> filter(how == "tea bag") |> select(price, perfil_bolsa = perfil_media) resumen_perfiles <- resumen_perfiles |> left_join(resumen_bolsa) |> ungroup() |> mutate(price = fct_reorder(price, perfil_bolsa)) ggplot(resumen_perfiles, aes(x = price, y = perfil_media, ymax = ymax, ymin = ymin)) + geom_point(colour = "red") + geom_linerange() + facet_wrap(~how) + coord_flip() + geom_hline(yintercept = 0, colour = "gray") + ylab("Perfil") + xlab("Precio") Nótese una deficiencia clara del bootstrap: para los que compran té suelto, en la muestra no existen personas que desconocen de dónde provienen su té (No sabe/No contestó). Esto produce un intervalo colapsado en 0 que no es razonable. Podemos remediar esto de varias maneras: quitando del análisis los que no sabe o no contestaron, agrupando en otra categoría, usando un modelo, o regularizar usando proporciones calculadas con conteos modificados: por ejemplo, agregando un caso de cada combinación (agregaría 18 personas “falsas” a una muestra de 290 personas). Bootstrap y muestras complejas La necesidad de estimaciones confiables junto con el uso eficiente de recursos conllevan a diseños de muestras complejas. Estos diseños típicamente usan las siguientes técnicas: muestreo sin reemplazo de una población finita, muestreo sistemático, estratificación, conglomerados, ajustes a no-respuesta, postestratificación. Como consecuencia, los valores de la muestra suelen no ser independientes y los análisis de los mismos dependerá del diseño de la muestra. Comenzaremos con definiciones para entender el problema. set.seed(3872999) n_escuelas <- 5000 tipo <- sample(c("rural", "urbano", "indigena"), n_escuelas, replace = TRUE, prob = c(0.3, 0.5, 0.2)) escuela <- tibble(ind_escuela = 1:n_escuelas, tipo, media_tipo = case_when(tipo == "urbano" ~ 550, tipo == "rural" ~ 400, TRUE ~ 350), media_escuela = rnorm(n_escuelas, media_tipo, 30), n_estudiantes = round(rnorm(n_escuelas, 30, 4))) estudiantes <- uncount(escuela, n_estudiantes, .id = "id_estudiante") %>% rowwise() %>% mutate(calif = rnorm(1, media_escuela, 70)) %>% ungroup() Imaginemos que tenemos una población de 5000 escuelas, y queremos estimar la media de las calificaciones de los estudiantes en una prueba. head(estudiantes) ## # A tibble: 6 × 6 ## ind_escuela tipo media_tipo media_escuela id_estudiante calif ## <int> <chr> <dbl> <dbl> <int> <dbl> ## 1 1 urbano 550 561. 1 488. ## 2 1 urbano 550 561. 2 574. ## 3 1 urbano 550 561. 3 456. ## 4 1 urbano 550 561. 4 507. ## 5 1 urbano 550 561. 5 598. ## 6 1 urbano 550 561. 6 527. La primera idea sería tomar una muestra aleatoria (MAS, muestreo aleatorio simple), donde todos los estudiantes tienen igual probabilidad de ser seleccionados. Con estas condiciones el presupuesto alcanza para seleccionar a 60 estudiantes, hacemos esto y calculamos la media. muestra <- slice_sample(estudiantes, n = 60) round(mean(muestra$calif), 2) ## [1] 466.73 Este número es muy cercano a la media verdadera de la población: 466.51, pero esta es una de muchas posibles muestras. medias_mas <- rerun(1000, mean(sample(estudiantes$calif, 60))) %>% flatten_dbl() sd(medias_mas) ## [1] 14.75242 hist_mas <- ggplot(tibble(medias_mas), aes(x = medias_mas)) + geom_histogram(binwidth = 10) + geom_vline(xintercept = mean(estudiantes$calif), color = "red") + xlim(410, 520) qq_mas <- ggplot(tibble(medias_mas), aes(sample = medias_mas)) + geom_qq(distribution = stats::qunif) + ylim(410, 520) hist_mas + qq_mas Algunas de las muestras generan valores alejados de la verdadera media, para minimizar la probabilidad de seleccionar muestras que lleven a estimaciones alejadas del verdadero valor poblacional podríamos tomar muestras más grandes. Pero usualmente los costos limitan el tamaño de muestra. Una alternativa es estratificar, supongamos que sabemos el tipo de cada escuela (urbana, rural o indígena) y sabemos también que la calificación de los estudiantes de escuelas urbanas tiende a ser distinta a las calificaciones que los estudiantes de escuelas rurales o indígenas. En esta caso un diseño más eficiente consiste en tomar muestras independientes dentro de cada estrato. muestra_estrat <- estudiantes %>% group_by(tipo) %>% sample_frac(0.0004) dim(muestra_estrat) ## [1] 60 6 muestrea_estrat <- function(){ muestra <- estudiantes %>% group_by(tipo) %>% sample_frac(0.0004) mean(muestra$calif) } medias_estrat <- rerun(1000, muestrea_estrat()) %>% flatten_dbl() Notamos que la distribución muestral está más concentrada que el caso de MAS, el error estándar se reduce de 14.75 a 10.2 hist_estrat <- ggplot(tibble(medias_estrat), aes(x = medias_estrat)) + geom_histogram(binwidth = 6) + geom_vline(xintercept = mean(estudiantes$calif), color = "red") + xlim(410, 520) qq_estrat <- ggplot(tibble(medias_estrat), aes(sample = medias_estrat)) + geom_qq(distribution = stats::qunif) + ylim(410, 520) hist_estrat + qq_estrat Entonces, la estratificación nos sirve para reducir el error estándar de las estimaciones. Otro procedimiento común en muestreo es introducir conglomerados, a diferencia del muestreo estratificado, el propósito principal de los conglomerados es reducir costos. Veamos cuantas escuelas tendría que visitar en una muestra dada (con diseño estratificado). n_distinct(muestra_estrat$ind_escuela) ## [1] 60 Es fácil ver que visitar una escuela para aplicar solo uno o dos exámenes no es muy eficiente en cuestión de costos. Es por ello que se suelen tomar muestras considerando conglomerados naturales, en este caso la escuela. En nuestro ejemplo es razonable suponer que una parte grande del costo del muestreo sea mandar al examinador a la escuela, y que una vez en la escuela el costo de evaluar a todo sexto, en lugar de a un único alumno, es relativamente bajo. Podemos imaginar que considerando estos costos por visita de escuela nos alcance para visitar 40 escuelas y en cada una examinar a todos los estudiantes. muestra_escuelas <- escuela %>% group_by(tipo) %>% sample_frac(size = 0.008) muestra_cgl <- muestra_escuelas %>% left_join(estudiantes) mean(muestra_cgl$calif) ## [1] 462.5677 muestrea_cgl <- function(){ muestra_escuelas <- escuela %>% group_by(tipo) %>% sample_frac(size = 0.008) muestra_cgl <- muestra_escuelas %>% left_join(estudiantes, by = c("ind_escuela", "tipo")) mean(muestra_cgl$calif) } medias_cgl <- rerun(1000, muestrea_cgl()) %>% flatten_dbl() En este caso, el número de estudiantes examinados es mucho mayor que en MAS y muestreo estratificado, notemos que el número de estudiantes evaluados cambiará de muestra a muestra dependiendo del número de alumnos en las escuelas seleccionadas. sd(medias_cgl) ## [1] 5.337327 hist_cgl <- ggplot(tibble(medias_cgl), aes(x = medias_cgl)) + geom_histogram(binwidth = 6) + geom_vline(xintercept = mean(estudiantes$calif), color = "red") + xlim(410, 520) qq_cgl <- ggplot(tibble(medias_cgl), aes(sample = medias_cgl)) + geom_qq(distribution = stats::qunif) + ylim(410, 520) hist_cgl + qq_cgl Ejemplo: ENIGH La complejidad de los diseños de encuestas conlleva a que el cálculo de errores estándar sea muy complicado, para atacar este problema hay dos técnicas básicas: 1) un enfoque analítico usando linearización, 2) métodos de remuestreo como bootstrap. El incremento en el poder de cómputo ha favorecido los métodos de remuestreo pues la linearización requiere del desarrollo de una fórmula para cada estimación y supuestos adicionales para simplificar. En 1988 Rao and Wu (1988) propusieron un método de bootstrap para diseños estratificados multietápicos con reemplazo de UPMs (Unidades Primarias de Muestreo) que describimos a continuación. ENIGH. Usaremos como ejemplo la Encuesta Nacional de Ingresos y Gastos de los Hogares, ENIGH 2018 (INEGI 2018), esta encuesta usa un diseño de conglomerados estratificado. Antes de proceder a bootstrap debemos entender como se seleccionaron los datos, esto es, el diseño de la muestra: Unidad primaria de muestreo (UPM). Las UPMs están constituidas por agrupaciones de viviendas. Se les denomina unidades primarias pues corresponden a la primera etapa de selección, las unidades secundarias (USMs) serían los hogares. Estratificación. Los estratos se construyen en base a estado, ámbito (urbano, complemento urbano, rural), características sociodemográficas de los habitantes de las viviendas, características físicas y equipamiento. El proceso de estratificación resulta en 888 subestratos en todo el ámbito nacional. La selección de la muestra es independiente para cada estrato, y una vez que se obtiene la muestra se calculan los factores de expansión que reflejan las distintas probabilidades de selección. Después se llevan a cabo ajustes por no respuesta y por proyección (calibración), esta última busca que distintos dominios de la muestra coincidan con la proyección de población de INEGI. concentrado_hogar <- read_csv(here::here("data", "conjunto_de_datos_enigh_2018_ns_csv", "conjunto_de_datos_concentradohogar_enigh_2018_ns", "conjunto_de_datos", "conjunto_de_datos_concentradohogar_enigh_2018_ns.csv")) # seleccionar variable de ingreso corriente hogar <- concentrado_hogar %>% mutate( upm = as.integer(upm), edo = str_sub(ubica_geo, 1, 2) ) %>% select(folioviv, foliohog, est_dis, upm, factor, ing_cor, edad_jefe, edo) %>% group_by(est_dis) %>% mutate(n = n_distinct(upm)) %>% # número de upms por estrato ungroup() hogar ## # A tibble: 74,647 × 9 ## folioviv foliohog est_dis upm factor ing_cor edad_jefe edo n ## <dbl> <dbl> <dbl> <int> <dbl> <dbl> <dbl> <chr> <int> ## 1 100013601 1 2 1 175 76404. 74 10 106 ## 2 100013602 1 2 1 175 42988. 48 10 106 ## 3 100013603 1 2 1 175 580698. 39 10 106 ## 4 100013604 1 2 1 175 46253. 70 10 106 ## 5 100013606 1 2 1 175 53837. 51 10 106 ## 6 100026701 1 2 2 189 237743. 41 10 106 ## 7 100026703 1 2 2 189 32607. 57 10 106 ## 8 100026704 1 2 2 189 169918. 53 10 106 ## 9 100026706 1 2 2 189 17311. 30 10 106 ## 10 100027201 1 2 3 186 120488. 69 10 106 ## # ℹ 74,637 more rows Para el cálculo de estadísticos debemos usar los factores de expansión, por ejemplo el ingreso trimestral total sería: sum(hogar$factor * hogar$ing_cor / 1000) ## [1] 1723700566 y ingreso trimestral medio (miles pesos) sum(hogar$factor * hogar$ing_cor / 1000) / sum(hogar$factor) ## [1] 49.61029 La estimación del error estándar, por otro lado, no es sencilla y requiere usar aproximaciones, en la metodología de INEGI proponen una aproximación con series de Taylor. Figure 5.3: Extracto de estimación de errores de muestreo, ENIGH 2018. Veamos ahora como calcular el error estándar siguiendo el bootstrap de Rao y Wu: En cada estrato se seleccionan con reemplazo \\(m_h\\) UPMs de las \\(n_h\\) de la muestra original. Denotamos por \\(m_{hi}^*\\) el número de veces que se seleccionó la UPM \\(i\\) en el estrato \\(h\\) (de tal manera que \\(\\sum m_{hi}^*=m_h\\)). Creamos una replicación del ponderador correspondiente a la \\(k\\)-ésima unidad (USM) como: \\[d_k^*=d_k \\bigg[\\bigg(1-\\sqrt{\\frac{m_h}{n_h - 1}}\\bigg) + \\bigg(\\sqrt{\\frac{m_h}{n_h - 1}}\\frac{n_h}{m_h}m_{h}^*\\bigg)\\bigg]\\] donde \\(d_k\\) es el inverso de la probabilidad de selección. Si \\(m_h <(n_h -1)\\) todos los pesos definidos de esta manera serán no negativos. Calculamos el peso final \\(w_k^*\\) aplicando a \\(d_k^*\\) los mismos ajustes que se hicieron a los ponderadores originales. Calculamos el estadístico de interés \\(\\hat{\\theta}\\) usando los ponderadores \\(w_k^*\\) en lugar de los originales \\(w_k\\). Repetimos los pasos 1 y 2 \\(B\\) veces para obtener \\(\\hat{\\theta}^{*1},\\hat{\\theta}^{*2},...,\\hat{\\theta}^{*B}\\). Calculamos el error estándar como: \\[\\hat{\\textsf{se}}_B = \\bigg\\{\\frac{\\sum_{b=1}^B[\\hat{\\theta}^*(b)-\\hat{\\theta}^*(\\cdot)]^2 }{B}\\bigg\\}^{1/2}\\] En principio podemos elegir cualquier valor de \\(m_h \\geq 1\\), el más común es elegir \\(m_h=n_h-1\\), en este caso: \\[d_k^*=d_k \\frac{n_h}{n_h-1}m_{hi}^*\\] en este escenario las unidades que no se incluyen en la muestra tienen un valor de cero como ponderador. Si elegimos \\(n_h \\ne n_h-1\\) las unidades que no están en la muestra tienen ponderador distinto a cero, si \\(m_h=n_h\\) el ponderador podría tomar valores negativos. Implementemos el bootstrap de Rao y Wu a la ENIGH, usaremos \\(m_h=n_h-1\\) # creamos una tabla con los estratos y upms est_upm <- hogar %>% distinct(est_dis, upm, n) %>% arrange(est_dis, upm) hogar_factor <- est_upm %>% group_by(est_dis) %>% # dentro de cada estrato tomamos muestra (n_h-1) sample_n(size = first(n) - 1, replace = TRUE) %>% add_count(est_dis, upm, name = "m_hi") %>% # calculamos m_hi* left_join(hogar, by = c("est_dis", "upm", "n")) |> mutate(factor_b = factor * m_hi * n / (n - 1)) # unimos los pasos anteriores en una función para replicar en cada muestra bootstrap svy_boot <- function(est_upm, hogar){ m_hi <- est_upm %>% group_split(est_dis) %>% map(~sample(.$upm, size = first(.$n) - 1, replace = TRUE)) %>% flatten_int() %>% plyr::count() %>% select(upm = x, m_h = freq) m_hi %>% left_join(hogar, by = c("upm")) %>% mutate(factor_b = factor * m_h * n / (n - 1)) } set.seed(1038984) boot_rep <- rerun(500, svy_boot(est_upm, hogar)) # Aplicación a ingreso medio wtd_mean <- function(w, x, na.rm = FALSE) { sum(w * x, na.rm = na.rm) / sum(w, na.rm = na.rm) } # La media es: hogar %>% summarise(media = wtd_mean(factor, ing_cor)) ## # A tibble: 1 × 1 ## media ## <dbl> ## 1 49610. Y el error estándar: map_dbl(boot_rep, ~wtd_mean(w = .$factor_b, x = .$ing_cor)) %>% quantile(c(0.025, 0.975)) ## 2.5% 97.5% ## 48742.12 50519.02 El método bootstrap está implementado en el paquete survey y más recientemente en srvyr que es una versión tidy que utiliza las funciones en survey. Podemos comparar nuestros resultados con la implementación en survey. # 1. Definimos el diseño de la encuesta library(survey) library(srvyr) enigh_design <- hogar %>% as_survey_design(ids = upm, weights = factor, strata = est_dis) # 2. Elegimos bootstrap como el método para el cálculo de errores estándar set.seed(7398731) enigh_boot <- enigh_design %>% as_survey_rep(type = "bootstrap", replicates = 500) # 3. Así calculamos la media enigh_boot %>% srvyr::summarise(mean_ingcor = survey_mean(ing_cor)) ## # A tibble: 1 × 2 ## mean_ingcor mean_ingcor_se ## <dbl> <dbl> ## 1 49610. 468. enigh_boot %>% srvyr::summarise(mean_ingcor = survey_mean(ing_cor, vartype = "ci")) ## # A tibble: 1 × 3 ## mean_ingcor mean_ingcor_low mean_ingcor_upp ## <dbl> <dbl> <dbl> ## 1 49610. 48690. 50530. # por estado enigh_boot %>% group_by(edo) %>% srvyr::summarise(mean_ingcor = survey_mean(ing_cor)) ## # A tibble: 30 × 3 ## edo mean_ingcor mean_ingcor_se ## <chr> <dbl> <dbl> ## 1 10 50161. 995. ## 2 11 46142. 1241. ## 3 12 29334. 1063. ## 4 13 38783. 1019. ## 5 14 60541. 1924. ## 6 15 48013. 1359. ## 7 16 42653. 1393. ## 8 17 42973. 1601. ## 9 18 48148. 1967. ## 10 19 68959. 4062. ## # ℹ 20 more rows Resumiendo: El bootstrap de Rao y Wu genera un estimador consistente y aproximadamente insesgado de la varianza de estadísticos no lineales y para la varianza de un cuantil. Este método supone que la seleccion de UPMs es con reemplazo; hay variaciones del estimador bootstrap de Rao y Wu que extienden el método que acabamos de estudiar; sin embargo, es común ignorar este aspecto, por ejemplo Mach et al estudian las propiedades del estimador de varianza bootstrap de Rao y Wu cuando la muestra se seleccionó sin reemplazo. Bootstrap en R Es común crear nuestras propias funciones cuando usamos bootstrap, sin embargo, en R también hay alternativas que pueden resultar convenientes, mencionamos 3: El paquete rsample (forma parte de la colección tidymodels) y tiene una función bootstraps() que regresa un arreglo cuadrangular (tibble, data.frame) que incluye una columna con las muestras bootstrap y un identificador del número y tipo de muestra. Veamos un ejemplo donde seleccionamos muestras del conjunto de datos muestra_computos que contiene 10,000 observaciones. library(rsample) load("data/election_2012.rda") muestra_computos <- slice_sample(election_2012, n = 10000) muestra_computos ## # A tibble: 10,000 × 23 ## state_code state_name state_abbr district_loc_17 district_fed_17 polling_id ## <chr> <chr> <chr> <int> <int> <int> ## 1 18 Nayarit NAY 11 2 86709 ## 2 27 Tabasco TAB 17 5 122035 ## 3 15 México MEX 7 35 75477 ## 4 27 Tabasco TAB 19 5 122262 ## 5 17 Morelos MOR 6 2 84733 ## 6 07 Chiapas CHPS 22 5 15376 ## 7 14 Jalisco JAL 2 2 52634 ## 8 08 Chihuahua CHIH 7 4 19097 ## 9 14 Jalisco JAL 20 20 60549 ## 10 13 Hidalgo HGO 11 4 50221 ## # ℹ 9,990 more rows ## # ℹ 17 more variables: section <int>, region <chr>, polling_type <chr>, ## # section_type <chr>, pri_pvem <int>, pan <int>, panal <int>, ## # prd_pt_mc <int>, otros <int>, total <int>, nominal_list <int>, ## # pri_pvem_pct <dbl>, pan_pct <dbl>, panal_pct <dbl>, prd_pt_mc_pct <dbl>, ## # otros_pct <dbl>, winner <chr> Generamos 100 muestras bootstrap, y la función nos regresa un arreglo con 100 renglones, cada uno corresponde a una muestra bootstrap. set.seed(839287482) computos_boot <- bootstraps(muestra_computos, times = 100) computos_boot ## # Bootstrap sampling ## # A tibble: 100 × 2 ## splits id ## <list> <chr> ## 1 <split [10000/3647]> Bootstrap001 ## 2 <split [10000/3623]> Bootstrap002 ## 3 <split [10000/3724]> Bootstrap003 ## 4 <split [10000/3682]> Bootstrap004 ## 5 <split [10000/3696]> Bootstrap005 ## 6 <split [10000/3716]> Bootstrap006 ## 7 <split [10000/3679]> Bootstrap007 ## 8 <split [10000/3734]> Bootstrap008 ## 9 <split [10000/3632]> Bootstrap009 ## 10 <split [10000/3692]> Bootstrap010 ## # ℹ 90 more rows La columna splits tiene información de las muestras seleccionadas, para la primera vemos que de 10,000 observaciones en la muestra original la primera muestra bootstrap contiene 10000-3647=6353. first_computos_boot <- computos_boot$splits[[1]] first_computos_boot ## <Analysis/Assess/Total> ## <10000/3647/10000> Y podemos obtener los datos de la muestra bootstrap con la función as.data.frame() as.data.frame(first_computos_boot) ## # A tibble: 10,000 × 23 ## state_code state_name state_abbr district_loc_17 district_fed_17 polling_id ## <chr> <chr> <chr> <int> <int> <int> ## 1 07 Chiapas CHPS 13 9 13397 ## 2 14 Jalisco JAL 15 15 58404 ## 3 09 Ciudad de M… CDMX 11 13 26471 ## 4 17 Morelos MOR 7 3 84909 ## 5 25 Sinaloa SIN 11 3 114038 ## 6 11 Guanajuato GTO 16 12 41506 ## 7 29 Tlaxcala TLAX 6 3 128006 ## 8 02 Baja Califo… BC 8 5 3901 ## 9 02 Baja Califo… BC 9 5 3779 ## 10 08 Chihuahua CHIH 19 5 19536 ## # ℹ 9,990 more rows ## # ℹ 17 more variables: section <int>, region <chr>, polling_type <chr>, ## # section_type <chr>, pri_pvem <int>, pan <int>, panal <int>, ## # prd_pt_mc <int>, otros <int>, total <int>, nominal_list <int>, ## # pri_pvem_pct <dbl>, pan_pct <dbl>, panal_pct <dbl>, prd_pt_mc_pct <dbl>, ## # otros_pct <dbl>, winner <chr> Una de las principales ventajas de usar este paquete es que es eficiente en el uso de memoria. library(pryr) object_size(muestra_computos) ## 1.41 MB object_size(computos_boot) ## 5.49 MB # tamaño por muestra object_size(computos_boot)/nrow(computos_boot) ## 54.92 kB # el incremento en tamaño es << 1000 as.numeric(object_size(computos_boot)/object_size(muestra_computos)) ## [1] 3.895024 Adicionalmente incluye funciones para el cálculo de intervalos bootstrap: intervalo_propinas_90 <- bootstraps(propinas, strata = momento, 1000) |> mutate(res_boot = map(splits, estimador)) |> int_pctl(res_boot, alpha = 0.10) El paquete boot está asociado al libro Bootstrap Methods and Their Applications (Davison and Hinkley (1997)) y tiene, entre otras, funciones para calcular replicaciones bootstrap y para construir intervalos de confianza usando bootstrap: calculo de replicaciones bootstrap con la función boot(), intervalos normales, de percentiles y \\(BC_a\\) con la función boot.ci(), intevalos ABC con la función `abc.ci(). El paquete bootstrap contiene datos usados en Efron and Tibshirani (1993), y la implementación de funciones para calcular replicaciones y construir intervalos de confianza: calculo de replicaciones bootstrap con la función bootstrap(), intervalos \\(BC_a\\) con la función bcanon(), intevalos ABC con la función abcnon(). Conclusiones y observaciones El principio fundamental del Bootstrap no paramétrico es que podemos estimar la distribución poblacional con la distribución empírica. Por tanto para hacer inferencia tomamos muestras con reemplazo de la muestra y analizamos la variación de la estadística de interés a lo largo de las remuestras. El bootstrap nos da la posibilidad de crear intervalos de confianza cuando no contamos con fórmulas para hacerlo de manera analítica y sin supuestos distribucionales de la población. Hay muchas opciones para construir intervalos bootstrap, los que tienen mejores propiedades son los intervalos \\(BC_a\\), sin embargo, los más comunes son los intervalos normales con error estándar bootstrap y los intervalos de percentiles de la distribución bootstrap. Antes de hacer intervalos normales vale la pena graficar la distribución bootstrap y evaluar si el supuesto de normalidad es razonable. En cuanto al número de muestras bootstrap se recomienda al menos \\(1,000\\) al hacer pruebas, y \\(10,000\\) o \\(15,000\\) para los resultados finales, sobre todo cuando se hacen intervalos de confianza de percentiles. La función de distribución empírica es una mala estimación en las colas de las distribuciones, por lo que es difícil construir intervalos de confianza (usando bootstrap no paramétrico) para estadísticas que dependen mucho de las colas. O en general para estadísticas que dependen de un número chico de observaciones de una muestra grande. Referencias "],["estimación-por-máxima-verosimilitud.html", "Sección 6 Estimación por máxima verosimilitud Introducción a estimación por máxima verosimilitud Máxima verosimilitud para observaciones continuas Aspectos numéricos Máxima verosimilitud para más de un parámetro", " Sección 6 Estimación por máxima verosimilitud Los ejemplos que hemos visto han sido todos de estimadores plug-in (o por sustitución): si queremos saber una cantidad poblacional, y tenemos una muestra dada, entonces calculamos la estadística de interés como si la muestra fuera la población. Por ejemplo, para estimar la mediana poblacional usamos la mediana muestral, si queremos estimar la media poblacional usamos la media muestral, y así sucesivamente. Estos estimadores usualmente dan resultados razonables (pero hay que checar usando muestra bootstraps, por ejemplo, y pensar lo que estamos haciendo). Cuando sabemos más acerca de la población y usamos un modelo teórico es posible hacer más: dependiendo de qué cantidades se quieren estimar, podemos construir estimadores que sean óptimos en algún sentido siempre y cuando se cumplan los supuestos teóricos, como veremos ahora. Por ejemplo: ¿deberíamos estimar el centro de una distribución simétrica con la media o con la mediana, o quizá con una media recortada? En esta parte construiremos la teoría básica de estimación cuando trabajamos con modelos teóricos conocidos. El objetivo es entender las ideas básicas de estos procedimientos, y cómo evaluar sus resultados. Recordatorio: las ventajas de usar modelos teóricos para describir distribuciones de datos está en que es posible comprimir más eficientemente la información, es posible construir modelos más complejos juntando varios de estos modelos y de sus dependencias, y de que es posible hacer más teoría útil que nos guíe. La desventaja es que es necesario que esos supuestos teóricos sean razonables. Introducción a estimación por máxima verosimilitud Uno de los procedimientos más estándar en esta situación es el método de máxima verosimilitud. Los estimadores de máxima verosimilitud tienen propiedades convenientes, y dan en general resultados razonables siempre y cuando los supuestos sean razonables. Máxima verosimilitud es un proceso intuitivo, y consiste en aprender o estimar valores de parámetros desconocidos suponiendo para los datos su explicación más probable. Para esto, usando supuestos y modelos, requeriremos calcular la probabilidad de un conjunto de observaciones. Ejemplo. Adaptado de (Chihara and Hesterberg 2018). Supongamos que una máquina produce dos tipos de bolsas de 25 galletas: la mitad de las veces produce una bolsa con 5 galletas de avena y 20 de chispas de chocolate, y la otra mitad produce bolsas con 23 galletas de avena y 2 de chispas de chocolate. Tomamos una bolsa, y no sabemos qué tipo de bolsa es (parámetro desconocido). Extraemos al azar una de las galletas, y es de chispas de chocolate (observación). Por máxima verosimilitud, inferimos que la bolsa que estamos considerando tiene 5 galletas de avena. Esto es porque es más probable observar una galleta de chispas en las bolsas que contienen 5 galletas de avena que en las bolsas que contienen 23 galletas de avena. Podemos cuantificar la probabilidad que “acertemos” en nuestra inferencia. Cómo se aprecia en el ejemplo anterior, el esquema general es: Existe un proceso del que podemos obtener observaciones de algún sistema o población real. Tenemos un modelo probabilístico que dice cómo se producen esas observaciones a partir del sistema o población real. Usualmente este modelo tiene algunas cantidades que no conocemos, que rigen el proceso y cómo se relaciona el proceso con las observaciones. Nuestro propósito es: Extraemos observaciones del proceso \\[x_1, x_2, \\ldots, x_n.\\] Queremos aprender de los parámetros desconocidos del proceso para calcular cantidades de interés acerca del sistema o población real En principio, los modelos que consideramos pueden ser complicados y tener varias partes o parámetros. Veamos primero un ejemplo clásico con un solo parámetro, y cómo lo resolveríamos usando máxima verosimilitud. Nota: Cuando decimos muestra en general nos referimos a observaciones independientes obtenidas del mismo proceso (ver la sección de distribución de muestreo) para ver qué significa que sea independientes. Este esquema es un supuesto que simplifica mucho los cálculos, como discutimos antes. Muchas veces este supuesto sale del diseño de la muestra o del estudio, pero en todo caso es importante considerar si es razonable o no para nuestro problema particular. Denotemos por \\(f(x; \\theta)\\) la función de densidad para una variable aleatoria continua con párametro asociado \\(\\theta.\\) Denotamos por \\(X_1, \\ldots, X_n,\\) una muestra aleatoria de \\(n\\) observaciones de esta distribución y por \\(x_1, \\ldots, x_n\\) los valores observados de esta muestra aleatoria. Ejemplo. Supongamos que queremos saber qué proporción de registros de una base de datos tiene algún error menor de captura. No podemos revisar todos los registros, así que tomamos una muestra de 8 registros, escogiendo uno por uno al azar de manera independiente. Revisamos los 8 registros, y obtenemos los siguientes datos: \\[x_1 = 0, x_2 = 1, x_3 = 0, x_4 = 0, x_5 =1, x_6 =0, x_7 =0, x_8 =0\\] donde 1 indica un error menor. Encontramos dos errores menores. ¿Cómo estimamos el número de registros con errores leves en la base de datos? Ya sabemos una respuesta razonable para nuestro estimador puntual, que sería \\(\\hat{p}=2/8=0.25\\). Veamos cómo se obtendría por máxima verosimilitud. Según el proceso con el que se construyó la muestra, debemos dar una probabilidad de observar los 2 errores en 8 registros. Supongamos que en realidad existe una proporción \\(p\\) de que un registro tenga un error. Entonces calculamos Probabilidad de observar la muestra: \\[P(X_1 = 0, X_2 = 1, X_3 = 0, X_4 = 0, X_5 =1, X_6 =0, X_7 =0, X_8 =0)\\] es igual a \\[P(X_1 = 0)P(X_2 = 1)P(X_3 = 0)P( X_4 = 0)P(X_5 =1)P(X_6 =0)P(X_7 =0)P(X_8 =0)\\] pues la probabilidad de que cada observación sea 0 o 1 no depende de las observaciones restantes (la muestra se extrajo de manera independiente). Esta última cantidad tiene un parámetro que no conocemos: la proporcion \\(p\\) de registros con errores. Así que lo denotamos como una cantidad desconocida \\(p\\). Nótese entonces que \\(P(X_2=1) = p\\), \\(P(X_3=0) = 1-p\\) y así sucesivamente, así que la cantidad de arriba es igual a \\[(1-p)p(1-p)(1-p)p(1-p)(1-p)(1-p) \\] que se simplifica a \\[ \\mathcal{L}(p) = p^2(1-p)^6\\] Ahora la idea es encontrar la p que maximiza la probabilidad de lo que observamos. En este caso se puede hacer con cálculo, pero vamos a ver una gráfica de esta función y cómo resolverla de manera numérica. verosimilitud <- function(p){ p^2 * (1-p)^6 } dat_verosim <- tibble(x = seq(0,1, 0.001)) %>% mutate(prob = map_dbl(x, verosimilitud)) ggplot(dat_verosim, aes(x = x, y = prob)) + geom_line() + geom_vline(xintercept = 0.25, color = "red") + xlab("p") Nótese que esta gráfica: Depende de los datos, que pensamos fijos. Cuando cambiamos la \\(p\\), la probabilidad de observar la muestra cambia. Nos interesa ver las regiones donde la probabilidad es relativamente alta. El máximo está en 0.25. Así que el estimador de máxima verosimilitud es \\(\\hat{p} = 0.25\\), que es también el estimador usual de plugin en este caso. Para uniformizar la notación con el caso continuo que veremos más adelante, usaremos la notación \\[P(X=x) = f(x)\\] donde \\(f\\) es la función de densidad (en este caso, función de masa de probabilidad) de \\(X\\). Si esta función depende de un parámetro, escribimos \\[f(x ;\\theta)\\] Definición. Sean \\(X_1, \\ldots, X_n\\) una muestra de una densidad \\(f(x; \\theta)\\) y sean \\(x_1,x_2,\\ldots, x_n\\) los valores observados. La función de verosimilitud del párametro de interés \\(\\theta\\) está definida por \\[\\begin{align} \\mathcal{L}(\\theta; x_1, \\ldots, x_n) = \\prod_{i = 1}^n f(x_i; \\theta). \\end{align}\\] Esta función nos dice qué tan creible es el valor del parámetro \\(\\theta\\) dada la muestra observada. A veces también la denotamos por \\(\\mathcal{L}_n(\\theta)\\). Ahora definimos qué es un estimador de máxima verosimilitud. Definición. Un estimador de máxima verosimilitud lo denotamos por \\(\\hat \\theta_{\\textsf{MLE}}\\) y es un valor que satisface \\[\\begin{align} \\hat \\theta_{\\textsf{MLE}} = \\underset{\\theta \\, \\in \\, \\Theta}{\\arg\\max}\\, \\mathcal{L}(\\theta; x_1, \\ldots, x_n), \\end{align}\\] donde \\(\\Theta\\) denota el espacio parametral. Es decir, el espacio válido de búsqueda congruente con la definición del modelo. Considera el caso de una normal con media y varianza desconocidas. ¿Cuáles son los espacios parametrales para efectuar \\(\\mathsf{MLE}\\)? Considera el caso de una Binomial con parámetro \\(p\\) desconocidos. ¿Cuál es el espacio parametral para la búsqueda del \\(\\mathsf{MLE}\\)? Obsérvese que para construir la verosimilitud y en consecuencia buscar por estimadores de máxima verosimlitud necesitamos: Un modelo teórico de cómo es la población con parámetros e Información de cómo se extrajo la muestra, y entonces podemos resolver nuestro problema de estimación convirtiéndolo en uno de optimización. Probamos esta idea con un proceso más complejo. Ejemplo. Supongamos que una máquina puede estar funcionando correctamente o no en cada corrida. Cada corrida se producen 500 productos, y se muestrean 10 para detectar defectos. Cuando la máquina funciona correctamente, la tasa de defectos es de 3%. Cuando la máquina no está funcionando correctamente la tasa de defectos es de 20% Supongamos que escogemos al azar 11 corridas, y obervamos los siguientes número de defectuosos: \\[1, 0, 0, 3 ,0, 0, 0, 2, 1, 0, 0\\] La pregunta es: ¿qué porcentaje del tiempo la máquina está funcionando correctamente? Primero pensemos en una corrida. La probabilidad de observar una sucesión particular de \\(r\\) defectos es \\[0.03^r(0.97)^{(10-r)}\\] cuando la máquina está funcionando correctamente. Si la máquina está fallando, la misma probabilidad es \\[0.2^r(0.8)^{(10-r)}.\\] Ahora supongamos que la máquina trabaja correctamente en una proporción \\(p\\) de las corridas. Entonces la probabilidad de observar \\(r\\) fallas se calcula promediando (probabilidad total) sobre las probabilidades de que la máquina esté funcionando bien o no: \\[0.03^r(0.97)^{(10-r)}p + 0.2^r(0.8)^{(10-r)}(1-p)\\] Y esta es nuestra función de verosimilitud para una observación. Suponemos que las \\(r_1,r_2, \\ldots, r_{11}\\) observaciones son independientes (por ejemplo, después de cada corrida la máquina se prepara de una manera estándar, y es como si el proceso comenzara otra vez). Entonces tenemos que multiplicar estas probabilidades para cada observación \\(r_1\\): # creamos la función de verosimilitud con los datos observados como dados verosim <- function(p) { r <- c(1, 2, 0, 3, 0, 0, 0, 2, 1, 0, 3) q_func <- 0.03^r*(0.97)^(10-r) q_falla <- 0.2^r*(0.8)^(10-r) prod(p * q_func + (1 - p) * q_falla) } verosim(0.1) # Una alternativa que nos da más flexibilidad para generar la función de # verosimilitud, es crear una función que recibe los datos observados y nos # regresa la función de verosimilitud correspondiente # Entonces, cal_verosim es una función que regresa una función calc_verosim <- function(r){ q_func <- 0.03 ^ r * (0.97) ^ (10 - r) q_falla <- 0.2 ^ r * (0.8) ^ (10 - r) function(p){ #nota: esta no es la mejor manera de calcularlo, hay # que usar logaritmos. prod(p * q_func + (1 - p) * q_falla) } } verosim <- calc_verosim(r = c(1, 0, 0, 3, 0, 0, 0, 2, 1, 0, 0)) verosim(0.1) ## [1] 2.692087e-14 dat_verosim <- tibble(x = seq(0, 1, 0.001)) %>% mutate(prob = map_dbl(x, verosim)) ggplot(dat_verosim, aes(x = x, y = prob)) + geom_line() + geom_vline(xintercept = 0.773, color = "red") + xlab("prop funcionado") Y nuestra estimación puntual sería de alrededor de 80%. Máxima verosimilitud para observaciones continuas Cuando las observaciones \\(x_1,\\ldots, x_n\\) provienen de una distribución continua, no tiene sentido considerar \\(P(X = x_i)\\), pues siempre es igual a cero. Sin embargo, podemos escribir para pequeños valores \\(\\epsilon \\ll 1\\) \\[\\begin{align} P(x - \\epsilon < X < x + \\epsilon | \\theta) = \\int_{x - \\epsilon}^{x + \\epsilon} f(t; \\theta) \\, \\text{d} t \\approx 2 \\epsilon f(x; \\theta), \\end{align}\\] donde \\(f(x; \\theta)\\) es la función de densidad de \\(X.\\) Por lo tanto, \\[\\begin{align} \\begin{split} P&(x_1 - \\epsilon < X_1 < x_1 + \\epsilon, \\ldots, x_n - \\epsilon < X_n < x_n + \\epsilon | \\theta) \\\\ &= \\prod_{i = 1}^n P(x_i - \\epsilon < X_i < x_i + \\epsilon | \\theta) \\\\ &= \\prod_{i = 1}^n 2 \\epsilon f(x_i; \\theta) = (2\\epsilon)^n \\prod_{i = 1}^n f(x_i; \\theta). \\end{split} \\end{align}\\] Notemos que si \\(\\epsilon \\rightarrow 0\\) la ecuación rápidamente converge a cero. Pero para pequeños valores de \\(\\epsilon\\) la ecuación que nos interesa es proporcional a \\(\\prod_{i = 1}^n f(x_i; \\theta).\\) De esta forma, nuestra definición de máxima verosimilitud y estimadores de máxima verosimilitud es la misma para el caso continuo (verifica las definiciones de la sección anterior). Ejemplo. Supongamos que tenemos una muestra \\(x_1\\ldots, x_n\\) extraidas de una distribución exponencial con tasa \\(\\lambda>0\\) donde no conocemos \\(\\lambda\\). ¿Cuál es el estimador de máxima verosimilitud de \\(\\lambda\\)? Para \\(\\lambda>0\\), tenemos que \\[{\\mathcal L}(\\lambda) = \\prod_{i=1}^n \\lambda e^{-\\lambda x_i}\\] de modo que \\[{\\mathcal L}(\\lambda) = \\lambda^n e^{-\\lambda \\sum_{i=1}^nx_i} = \\lambda^n e^{-n\\lambda\\bar{x}} = e^{n(\\log\\lambda - \\lambda\\bar{x})}\\] Que podemos maximizar usando cálculo para obtener \\(\\hat{\\lambda}_{\\mathsf{ML}} = \\frac{1}{\\bar{x}}\\) (demuéstralo). Discute por qué esto es intuitivamente razonable: ¿cuál es el valor esperado de una exponencial con parámetro \\(\\lambda\\)? Aspectos numéricos Encontrar el estimador de máxima verosimilitud (\\(\\textsf{MLE}\\)) es automático en la mayoría de los casos. En teoría, podemos reutilizar la misma rutina numérica para encontrar el estimador sin ninguna ayuda de la analista. Esto contrasta con otras técnicas de estimación en donde se requieren cálculos y manipulación de ecuaciones. Sin embargo, hay situaciones que se pueden evitar de manera general. Por ejemplo, cuando calculamos la verosimilitud arriba, nótese que estamos multiplicando números que pueden ser muy chicos (por ejemplo \\(p^6\\), etc). Esto puede producir desbordes numéricos fácilmente. Por ejemplo para un tamaño de muestra de 1000, podríamos tener que calcular p <- 0.1 proba <- (p ^ 800)*(1-p)^200 proba ## [1] 0 En estos casos, es mejor hacer los cálculos en escala logarítmica. El logaritmo convierte productos en sumas, y baja exponentes multiplicando. Si calculamos en escala logaritmica la cantidad de arriba, no tenemos problema: log_proba <- 800 * log(p) + 200 * log(1-p) log_proba ## [1] -1863.14 Ahora notemos que Maximizar la verosimilitud es lo mismo que maximizar la log-verosimilitud, pues el logaritmo es una función creciente. Si \\(x_{\\max}\\) es el máximo de \\(f\\), tenemos que \\(f(x_{\\max})>f(x)\\) para cualquier \\(x\\), entonces tomando logaritmo, \\[\\log(f(x_{max}))>\\log(f(x)),\\] para cualquier \\(x.\\) Pues el logaritmo respeta la desigualdad por ser creciente. Usualmente usamos la log-verosimilitud para encontrar el estimador de máxima verosimilitud. Hay razónes teóricas y de interpretación por las que también es conveniente hacer esto. Definición. La log-verosimilitud la denotamos usualmente por \\[\\ell_n(\\theta) = \\log \\left(\\mathcal{L}_n(\\theta)\\right),\\] donde hemos suprimido la dependencia en la muestra por conveniencia. Ejemplo. En nuestro primer ejemplo, log_verosimilitud <- function(p){ 2*log(p) + 6*log(1-p) } dat_verosim <- tibble(x = seq(0,1, 0.01)) %>% mutate(log_prob = map_dbl(x, log_verosimilitud)) ggplot(dat_verosim, aes(x = x, y = log_prob)) + geom_line() + geom_vline(xintercept = 0.25, color = "red") + xlab("p") Obtenemos el mismo máximo. Podemos incluso resolver numéricamente: solucion <- optim(p = 0.5, log_verosimilitud, control = list(fnscale = -1), method = "Brent", lower = 0, upper = 1) solucion$par ## [1] 0.25 Y en nuestro segundo ejemplo: calc_log_verosim <- function(r){ q_func <- 0.03^r*(0.97)^(10-r) q_falla <- 0.2^r*(0.8)^(10-r) function(p){ #nota: esta no es la mejor manera de calcularlo, hay # que usar logaritmos. sum(log(p * q_func + (1 - p) * q_falla)) } } log_verosim <- calc_log_verosim(c(1, 0, 0, 3, 0, 0, 0, 2, 1, 0, 0)) log_verosim(0.1) ## [1] -31.24587 solucion <- optim(p = 0.2, log_verosim, control = list(fnscale = -1), method = "Brent", lower = 0, upper = 1) solucion$par ## [1] 0.7733766 solucion$convergence ## [1] 0 dat_verosim <- tibble(x = seq(0,1, 0.001)) %>% mutate(log_verosimilitud = map_dbl(x, log_verosim)) ggplot(dat_verosim, aes(x = x, y = log_verosimilitud)) + geom_line() + geom_vline(xintercept = 0.775, color = "red") + xlab("prop funcionado") Nótese que la verosimilitud la consideramos función de los parámetros, donde los datos están fijos. Podemos construir una función que genera la función de verosimilitud dependiendo de los datos. En nuestro primer ejemplo de muestras de registros erróneos, podríamos construir una función que genera la log verosimilitud dependiendo del tamaño de muestra y del número de errores encontrado: construir_log_verosim <- function(n, n_err){ # n es tamaño de muestra # n_err el número de errores detectados (datos) n_corr <- n - n_err log_verosim <- function(p){ n_err * log(p) + n_corr * log(1-p) } } Cuando fijamos \\(n\\) y \\(n_{\\textsf{err}}\\), esta función genera otra función, la log verosimilitud, que es la que queremos optimizar. Supongamos entonces que sacamos 20 registros al azar y observamos 10 incorrectos. La función de verosimilitud es log_vero <- construir_log_verosim(20, 10) tibble(x = seq(0,1,0.001)) %>% mutate(log_ver = log_vero(x)) %>% ggplot(aes(x = x, y = log_ver)) + geom_line() + geom_vline(xintercept = 0.5, color = 'red') Ejemplo. Supongamos que en una población de transacciones hay un porcentaje \\(p\\) (desconocido) que son fraudulentas. Tenemos un sistema de clasificación humana que que marca transacciones como sospechosas. Con este sistema hemos medido que la proporción de transacciones normales que son marcadas como sospechosas es de 0.1%, y que la proporción de transacciones fraudulentas que son marcadas como sospechosas es de 98%. Supongamos que extraemos una muestra de 2000 transacciones, de manera que todas ellas tiene la misma probabilidad de ser fraudulentas. El sistema de clasificación marca 4 transacciones como sospechosas ¿Cómo estimamos la proporción de transacciones fraudulentas en la población? Solución: sea \\(p\\) la proporción de transacciones fraudulentas. Entonces la probabilidad de que una transacción sea marcada como sospechosa es (proba total): \\[0.98p + 0.001(1-p)\\] Pues tenemos que contar 98% de la proporción \\(p\\) de fraudulentas (correctamente detectadas) más 0.1% de la proporción \\((1-p)\\) de fraudulentas. Escribimos entonces nuestra función de verosimilitud crear_log_verosim <- function(n, n_sosp){ # devolver la función log verosimilitud log_verosimilitud_pct <- function(pct){ # sup que pct es la proporcentaje de fraudes, # que es el parámetro que queremos estimar prob_sosp <- 0.98 * pct / 100 + 0.001 * (1 - pct / 100) log_prob <- n_sosp * log(prob_sosp) + (n - n_sosp) * log(1- prob_sosp) log_prob } log_verosimilitud_pct } La verosimilitud es una función de \\(p\\). log_verosim <- crear_log_verosim(n = 2000, n_sosp = 4) A continuación la mostramos de manera gráfica. No se ve muy claro dónde ocurre el máximo, pero podemos ampliar cerca de cero la misma gráfica: Vemos que alrededor de 0.1% maximiza la probabilidad de haber observado 4 transacciones sospechosas. Notamos sin embargo que varios valores alrededor de este valor tienen probabilidad similar, así que también son consistentes con los datos (por ejemplo, valores como 0.05 o 0.15 tienen probabilidad similar). Tendremos que considerar esto para evaluar la incertidumbre en nuestra estimación. Obsérvese adicionalmente que si no tomáramos en cuenta las probabilidades de falsos negativos y falsos positivos la estimación simple daría \\(4/2000 = 0.002\\) (0.2%), que es dos veces más grande que nuestra estimación puntual por máxima verosimilitud. Ejemplo. Este es un ejemplo donde mostramos que cuando el soporte de las densidades teóricas es acotado hay que tener cuidado en la definición de la verosimilitud. En este caso, el soporte de la variable aleatoria es el párametro de interés. Supongamos que nuestros datos son generados por medio de una distribución uniforme en el intervalo \\([0,b].\\) Contamos con una muestra de \\(n\\) observaciones generadas de manera independiente \\(X_i \\sim U[0,b]\\) para \\(i= 1, \\ldots, n.\\) Sin embargo, no conocemos el valor de \\(b\\). ¿Cómo es la función de log verosimilitud \\({\\mathcal L}_n(b)\\) para este caso? Nótese que cuando el parámetro \\(b\\) es menor que alguna \\(x_i\\), tenemos que \\({\\mathcal L}_n(b) = 0\\): la verosimilitud es cero si tomamos una \\(b\\) más chica que algún dato, pues este valor es incosistente del todo con los datos observados. En otro caso, \\[{\\mathcal L}_n(b) = \\frac{1}{b^n},\\] pues la función de densidad de una uniforme en \\([0,b]\\) es igual a \\(1/b\\) en el intervalo \\([0,b]\\), y 0 en otro caso. Podemos escribir entonces: crear_verosim <- function(x){ n <- length(x) verosim <- function(b){ indicadora <- ifelse(all(x <= b), 1, 0) indicadora / b^n } } Ahora podemos hacer máxima verosimilitud para un ejemplo: set.seed(234) x <- runif(10, 0, 3) verosim <- crear_verosim(x) res_opt <- optimize(verosim, c(-1000, 1000), maximum = TRUE) res_opt$maximum ## [1] 2.788167 Y nótese que, como esperaríamos, este valor es el máximo de la muestra: max(x) ## [1] 2.788158 La gráfica de la función de verosimilitud es: tibble(b = seq(-1, 5, 0.001)) %>% mutate(verosim_1 = map_dbl(b, ~ verosim(.x))) %>% ggplot() + geom_line(aes(x = b, y = verosim_1)) + geom_rug(data = tibble(x = x), aes(x = x), colour = "red") Podemos escribir en una fórmula como: \\[\\begin{align} \\mathcal{L}(b; x_1, \\ldots, x_n) = \\prod_{i = 1}^n 1_{[0,b]}(x_i) \\frac1b. \\end{align}\\] Y podríamos resolver analíticamente como sigue: Si consideramos \\[ \\hat b_{\\textsf{MLE}} = x_{\\max} = \\max\\{x_i\\},\\] notemos que cualquier valor observado necesariamente satisface \\[x_i \\leq \\hat b_{\\textsf{MLE}},\\] y por lo tanto todas las funciones indicadoras están encendidas. El valor de la verosimilitud es igual a \\[\\mathcal{L}(\\hat b_{\\textsf{MLE}}; x_1, \\ldots, x_n) = \\left(\\frac{1}{x_{\\max}}\\right)^n \\geq \\left (\\frac1b\\right )^n\\] para cualquier \\(b\\geq x_{\\max}\\). Como la verosimilitud para \\(b<x_{\\max}\\) es igual a cero, esto demuestra que el máximo de la muestra es el estimador de máxima verosimilitud de \\(b\\). Observación. Este ejemplo también tiene dificultades numéricas, pues la verosimilitud presenta discontinuidades y regiones con derivada igual a cero, y la mayoria de los algoritmos numéricos no tienen garantías buenas de covergencia al máximo en estos casos. Si aplicamos sin cuidado descenso en gradiente, por ejemplo, podríamos comenzar incorrectamente en un valor \\(b_0 < x_{\\max}\\) y el algoritmo no avanzaría al máximo. Máxima verosimilitud para más de un parámetro Si nuestro modelo contiene más de un parámetro desconocido podemos también usar máxima verosimilitud. En este caso, optimizamos sobre todos los parámetros usando cálculo o alguna rutina numérica. Ejemplo. Considera el caso de \\(n\\) muestras iid de un modelo Gaussiano. Es decir, \\(X_1, \\ldots, X_n \\sim \\mathsf{N}(\\mu, \\sigma^2).\\) Consideremos que ambos parámetros son desconocidos y nos gustaria encontrar el \\(\\textsf{MLE}\\). Para este problema denotamos \\(\\theta \\in \\mathbb{R}^2\\), donde \\(\\theta_1 = \\mu\\) y \\(\\theta_2 = \\sigma^2.\\) La función de verosimiltud se puede calcular (ignorando algunas constantes multiplicativas) como \\[\\begin{align} \\mathcal{L}_n(\\theta) &= \\prod_{i = 1}^n \\frac{1}{\\sigma} \\, \\exp\\left( - \\frac{(x_i - \\mu)^2}{2\\sigma^2}\\right) \\\\ &= \\theta_2^{-\\frac{n}{2}}\\exp\\left( - \\frac{1}{2 \\theta_2} \\sum_{i = 1}^n (x_i - \\theta_1)^2 \\right). \\end{align}\\] A continuación mostramos la representación gráfica de la función de verosimilitud de este ejemplo. Notamos lo mismo que para los ejemplos anteriores. Conforme más datos tenemos, más nos acercamos a los valores reales que no conocemos. Ejemplo. Como ejercicio, podemos encontrar los estimadores de máxima verosimilitud cuando tenemos una muestra \\(X_1, \\ldots, X_n \\sim \\mathsf{N}(\\mu, \\sigma^2).\\) (puedes derivar e igualar el cero para encontrar el mínimo). También podemos resolver numéricamente, por ejemplo: Supongamos que tenemos la siguiente muestra: set.seed(41852) muestra <- rnorm(150, mean = 1, sd = 2) La función generadora de la log verosimilitud para una muestra es (ve la expresión del ejercicio anterior y calcula su logaritmo), y generamos la función de verosimilitud para nuestra muestra: crear_log_p <- function(x){ log_p <- function(pars){ media = pars[1] desv_est = pars[2] # ve la ecuación del ejercicio anterior z <- (x - media) / desv_est log_verosim <- -(log(desv_est) + 0.5 * mean(z ^ 2)) log_verosim } log_p } log_p <- crear_log_p(muestra) Ahora optimizamos: res <- optim(c(0, 0.5), log_p, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") res$convergence ## [1] 0 est_mv <- tibble(parametro = c("media", "sigma"), estimador = res$par) %>% column_to_rownames(var = "parametro") est_mv ## estimador ## media 1.136001 ## sigma 1.838421 Verifica que el estimador de la media y de la desviación estándar es el que esperábamos (y que puedes derivar analíticamente): n <- length(muestra) sd_n <- function(x) sqrt(mean((x - mean(x))^2)) c(media = mean(muestra), sigma = sd_n(muestra)) %>% round(4) ## media sigma ## 1.1364 1.8392 Ejemplo. Supongamos que en una población de estudiantes tenemos dos tipos: unos llenaron un examen de opción múltiple al azar (1 de 5), y otros contestaron las preguntas intentando sacar una buena calificación. Suponemos que una vez que conocemos el tipo de estudiante, todas las preguntas tienen la misma probabilidad de ser contestadas correctamente, de manera independiente. El modelo teórico está representado por la siguiente simulación: sim_formas <- function(p_azar, p_corr){ tipo <- rbinom(1, 1, 1 - p_azar) if(tipo==0){ # al azar x <- rbinom(1, 10, 1/5) } else { # no al azar x <- rbinom(1, 10, p_corr) } x } Y una muestra se ve como sigue: set.seed(12) muestra <- map_dbl(1:200, ~ sim_formas(0.3, 0.75)) qplot(muestra) Supongamos que no conocemos la probabildad de contestar correctamente ni la proporción de estudiantes que contestó al azar. ¿Como estimamos estas dos cantidades? Escribimos la verosimilitud: crear_log_p <- function(x){ log_p <- function(pars){ p_azar = pars[1] p_corr = pars[2] sum(log(p_azar * dbinom(x, 10, 1/5) + (1 - p_azar) * dbinom(x, 10, p_corr))) } log_p } Creamos la función de verosimilitud con los datos log_p <- crear_log_p(muestra) y optimizamos res <- optim(c(0.5, 0.5), log_p, control = list(fnscale = -1)) res$par ## [1] 0.2827061 0.7413276 En este caso, obtenemos estimaciones razonables de ambos parámetros. Nota: dependiendo de los datos, este problema puede estar mal condicionado. Por ejemplo, ¿qué pasa si la probabilidad de acertar cuando se contesta bien está cercano al azar? La siguiente pregunta qué nos interesa hacer es: ¿cómo estimamos la variabilidad de estos estimadores? Más adelante veremos una respuesta basada en teoría, pero también podemos resolver este problema usando el bootstrap. Referencias "],["bootstrap-paramétrico.html", "Sección 7 Bootstrap paramétrico Ventajas y desventajas de bootstrap paramétrico Verificando los supuestos distribucionales Modelos mal identificados", " Sección 7 Bootstrap paramétrico Cuando nuestras observaciones provienen de un modelo teórico parametrizado con algunos parámetros que queremos estimar, y utilizamos máxima verosimilitud para hacer nuestra estimación, no es adecuado aplicar directamente el bootstrap no paramétrico que vimos en las secciones anteriores. Sin embargo, suponiendo que el modelo paramétrico que estamos usando es apropiado, podemos remuestrear de tal modelo para estimar la varianza de nuestros estimadores. Este proceso se llama el bootstrap paramétrico. Antes de hacer una definición precisa, veamos cómo calcularíamos error estándar para los estimadores de máxima verosimilitud de la normal que vimos en la sección anterior. Ejemplo (sección máxima verosimilitud). Como ejercicio, podemos encontrar los estimadores de máxima verosimilitud cuando tenemos una muestra \\(X_1, \\ldots, X_n \\sim \\mathsf{N}(\\mu, \\sigma^2)\\) (puedes derivar e igualar a cero para encontrar el mínimo). También podemos resolver numéricamente. Supongamos que tenemos la siguiente muestra: set.seed(41852) muestra <- rnorm(150, mean = 1, sd = 2) La función generadora de la log-verosimilitud para una muestra es (ve la expresión del ejercicio anterior y calcula su logaritmo), y generamos la función de verosimilitud para nuestra muestra: crear_log_p <- function(x){ log_p <- function(pars){ media = pars[1] desv_est = pars[2] # ve la ecuación del ejercicio anterior z <- (x - media) / desv_est log_verosim <- -(log(desv_est) + 0.5 * mean(z^2)) log_verosim } log_p } log_p <- crear_log_p(muestra) Ahora optimizamos (revisa que el método converge): res <- optim(c(0, 0.5), log_p, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") res$convergence ## [1] 0 est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) |> column_to_rownames(var = "parametro") Una vez que tenemos nuestros estimadores puntuales, est_mle ## estimador ## media 1.136001 ## sigma 1.838421 Sustituimos estos parámetros en la distribución normal y simulamos una muestra del mismo tamaño que la original: simular_modelo <- function(n, media, sigma){ rnorm(n, media, sigma) } muestra_bootstrap <- simular_modelo(length(muestra), est_mle["media", "estimador"], est_mle["sigma", "estimador"]) head(muestra_bootstrap) ## [1] 1.8583885 2.2084326 2.5852895 2.5174462 -0.7428032 0.5995989 Una vez que tenemos esta muestra bootstrap recalculamos los estimadores de máxima verosimlitud. Esto se hace optimizando: # creamos nueva verosimilitud para muestra bootstrap log_p_boot <- crear_log_p(muestra_bootstrap) # optimizamos res_boot <- optim(c(0, 0.5), log_p_boot, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") res_boot$convergence ## [1] 0 est_mle_boot <- tibble(parametro = c("media", "sigma"), estimador = res_boot$par) |> column_to_rownames(var = "parametro") est_mle_boot ## estimador ## media 1.235914 ## sigma 1.710042 Y esta es nuestra replicación bootstrap de los estimadores de máxima verosimilitud. La idea es la misma que el bootstrap no paramétrico, con la ventaja de que estamos simulando del modelo que suponemos es el correcto, es decir, estamos usando información adicional que no teníamos en el bootstrap no paramétrico. Ahora es necesario repetir un número grande de veces. Nótese que esta función envuelve el proceso de remuestreo, cálculo de la función de verosimilitud y optimización: rep_boot <- function(rep, crear_log_p, est_mle, n){ muestra_bootstrap <- simular_modelo(length(muestra), est_mle["media", "estimador"], est_mle["sigma", "estimador"]) log_p_boot <- crear_log_p(muestra_bootstrap) # optimizamos res_boot <- optim(c(0, 0.5), log_p_boot, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") try(if(res_boot$convergence != 0) stop("No se alcanzó convergencia.")) tibble(parametro = c("media", "sigma"), estimador_boot = res_boot$par) } reps_boot <- map_dfr(1:5000, ~ rep_boot(.x, crear_log_p, est_mle, n = length(muestra)), rep = ".id") reps_boot ## # A tibble: 10,000 × 2 ## parametro estimador_boot ## <chr> <dbl> ## 1 media 0.797 ## 2 sigma 1.90 ## 3 media 1.23 ## 4 sigma 1.96 ## 5 media 1.14 ## 6 sigma 1.89 ## 7 media 1.33 ## 8 sigma 1.73 ## 9 media 1.19 ## 10 sigma 1.73 ## # ℹ 9,990 more rows Ya ahora podemos estimar error estándar: error_est <- reps_boot |> group_by(parametro) |> summarise(ee_boot = sd(estimador_boot)) error_est ## # A tibble: 2 × 2 ## parametro ee_boot ## <chr> <dbl> ## 1 media 0.150 ## 2 sigma 0.106 Así que nuestra estimación final sería: bind_cols(est_mle, error_est) |> mutate(across(where(is.numeric), round, 3)) |> select(parametro, estimador, ee_boot) ## parametro estimador ee_boot ## media media 1.136 0.150 ## sigma sigma 1.838 0.106 Si usamos la rutina estándar de R (dejaremos para después explicar cómo calcula los errores estándar esta rutina —no es con bootstrap): broom::tidy(MASS::fitdistr(muestra, "normal")) ## # A tibble: 2 × 3 ## term estimate std.error ## <chr> <dbl> <dbl> ## 1 mean 1.14 0.150 ## 2 sd 1.84 0.106 Podemos revisar también la normalidad aproximada de las distribuciones bootstrap para construir nuestros intervalos: ggplot(reps_boot, aes(sample = estimador_boot)) + geom_qq() + geom_qq_line(colour = "red") + facet_wrap(~parametro, scales = "free_y") La distribuciones son aproximadamente normales. Nótese que esto no siempre sucede, especialmente con parámetros de dispersión como \\(\\sigma\\). Ejemplo. Supongamos que tenemos una muestra más chica. Repasa los pasos para asegurarte que entiendes el procedimiento: set.seed(4182) muestra <- rnorm(6, mean = 1, sd = 2) # función de verosimilitud log_p <- crear_log_p(muestra) # máxima verosimilitud res <- optim(c(0, 0.5), log_p, control = list(fnscale = -1, maxit = 1000), method = "Nelder-Mead") res$convergence ## [1] 0 est_mle <- tibble(parametro = c("media", "sigma"), estimador = res$par) |> column_to_rownames(var = "parametro") est_mle ## estimador ## media 0.3982829 ## sigma 2.3988969 Hacemos bootstrap paramétrico reps_boot <- map_dfr(1:5000, ~ rep_boot(.x, crear_log_p, est_mle, n = length(muestra)), .id = "rep") reps_boot ## # A tibble: 10,000 × 3 ## rep parametro estimador_boot ## <chr> <chr> <dbl> ## 1 1 media 0.789 ## 2 1 sigma 0.945 ## 3 2 media -0.103 ## 4 2 sigma 1.37 ## 5 3 media 1.96 ## 6 3 sigma 1.70 ## 7 4 media 1.55 ## 8 4 sigma 2.28 ## 9 5 media -0.228 ## 10 5 sigma 1.73 ## # ℹ 9,990 more rows ggplot(reps_boot, aes(sample = estimador_boot)) + geom_qq() + geom_qq_line(colour = "red") + facet_wrap(~parametro, scales = "free_y") ggplot(reps_boot, aes(x = estimador_boot)) + geom_histogram() +facet_wrap(~parametro) Donde vemos que la distribución de \\(\\sigma\\) es asimétrica pues en algunos casos obtenemos estimaciones muy cercanas a cero. Podemos usar intervalos de percentiles. Ejercicio (extra). Con más de un parámetro, podemos preguntarnos cómo dependen las estimaciones individuales - en algunos casos pueden estar correlacionadas. Podemos examinar este comportamiendo visualizando las replicaciones bootstrap ggplot(reps_boot |> pivot_wider(names_from = parametro, values_from = estimador_boot), aes(x = media, y = sigma)) + geom_point(alpha = 0.5) + coord_equal() Esta es nuestra aproximación a la distribución de remuestreo de nuestro par de estadísticas \\((\\mu_{\\mathsf{MLE}}, \\sigma_{\\mathsf{MLE}})\\). En este caso, parecen ser independientes (lo cual es posible demostrar). Bootstrap paramétrico. Supongamos que tenemos una muestra iid \\(X_1,X_2,\\ldots, X_n \\sim f(x;\\theta)\\) de un modelo paramétrico, y un estimador de máxima verosimilitud \\(\\hat{\\theta}_{\\mathsf{MLE}}\\) para \\(\\theta\\). El error estándar estimado para \\(\\hat{\\theta}_{\\mathsf{MLE}}\\) por medio del bootstrap paramétrico se calcula como sigue: Se calcula \\(\\hat{\\theta}_{\\mathsf{MLE}}\\) para la muestra observada Se simula una muestra iid de tamaño \\(n\\) de \\(f(x; \\hat{\\theta}_{\\mathsf{MLE}})\\) (muestra bootstrap) Se recalcula el estimador de máxima verosimilitud para la muestra bootstrap \\(\\hat{\\theta^*}_{\\mathsf{MLE}}\\) Se repiten 2-3 una cantidad grande de veces (1000 - 10000) Se calcula la desviación estándar de los valores \\(\\hat{\\theta^*}_{\\mathsf{MLE}}\\) obtenidos. Este es el error estándar estimado para el estimador \\(\\hat{\\theta}_{\\mathsf{MLE}}\\) Ventajas y desventajas de bootstrap paramétrico Ventaja: el bootstrap paramétrico puede dar estimadores más precisos e intervalos más angostos y bien calibrados que el no paramétrico, siempre y cuando el modelo teórico sea razonable. Desventaja: Es necesario decidir el modelo teórico, que tendrá cierto grado de desajuste vs. el proceso generador real de los datos. Si el ajuste es muy malo, los resultados tienen poca utilidad. Para el no paramétrico no es necesario hacer supuestos teóricos. Ventaja: el bootstrap paramétrico puede ser más escalable que el no paramétrico, pues no es necesario cargar y remuestrear los datos originales, y tenemos mejoras adicionales cuando tenemos expresiones explícitas para los estimadores de máxima verosimilitud (como en el caso normal, donde es innecesario hacer optimización numérica). Desventaja: el bootstrap paramétrico es conceptualmente más complicado que el no paramétrico, y como vimos arriba, sus supuestos pueden ser más frágiles que los del no-paramétrico. Verificando los supuestos distribucionales Como hemos discutido antes, podemos hacer pruebas de hipótesis para revisar si una muestra dada proviene de una distribución conocida. Sin embargo, la herramienta más común es la de los qq-plots, donde podemos juzgar fácilmente el tamaño de las desviaciones y si estas tienen implicaciones prácticas importantes. El proceso es como sigue: si \\(X_1,X_,\\ldots, X_n\\) es una muestra de \\(f(x;\\theta)\\), calculamos el estimador de máxima verosimilitud \\(\\theta_{\\mathsf{MLE}}\\) con los datos observados. Enchufamos \\(\\hat{f} = f(x;\\theta_{\\mathsf{MLE}})\\), y hacemos una gráfica de los cuantiles teóricos de \\(\\hat{f}\\) contra los cuantiles muestrales. Ejemplo. Consideramos la siguiente muestra: set.seed(32) muestra <- rgamma(150, 0.4, 1) qplot(muestra) Y queremos usar un modelo exponencial. Encontramos los estimadores de maxima verosimilitud est_mle <- MASS::fitdistr(muestra, "exponential") rate_mle <- est_mle$estimate rate_mle ## rate ## 2.76054 g_exp <- ggplot(tibble(muestra = muestra), aes(sample = muestra)) + geom_qq(distribution = stats::qexp, dparams = list(rate = rate_mle)) + geom_abline() + labs(subtitle = "Gráfica de cuantiles exponenciales") g_exp Donde vemos que el desajuste es considerable, y los datos tienen una cola derecha considerablemente más larga que la de exponencial (datos son casi dos veces más grande de lo que esperaríamos), y la cola izquierda está más comprimida en los datos que en una exponencial. Sin embargo, si ajustamos una gamma: est_mle <- MASS::fitdistr(muestra, "gamma")$estimate g_gamma <- ggplot(tibble(muestra = muestra), aes(sample = muestra)) + geom_qq(distribution = stats::qgamma, dparams = list(shape = est_mle[1], rate = est_mle[2])) + geom_abline() + labs(subtitle = "Gráfica de cuantiles gamma") g_exp + g_gamma El ajuste es considerablemente mejor para la distribución gamma (puedes hacer el protocolo rorschach para afinar tu diagnóstico de este tipo de gráficas). Ejempĺo. Examinamos un modelo teórico para las cuentas totales del conjunto de datos de propinas. En primer lugar: Separamos comida y cena, pues sabemos que las cuentas tienden a ser más grandes en las cenas. En lugar de modelar la cuenta total, modelamos el gasto por persona, es decir, la cuenta total dividida por el numero de personas. Grupos grandes pueden producir colas largas que no tenemos necesidad de modelar de manera probabilística, pues conocemos el número de personas. En este caso intentaremos un modelo lognormal, es decir, el logaritmo de los valores observados se comporta aproximadamente normal. Puedes también intentar con una distribución gamma. Separamos por Cena y Comida, dividimos entre número de personas y probamos ajustando un modelo para cada horario: propinas <- read_csv("data/propinas.csv") |> mutate(cuenta_persona = cuenta_total / num_personas) propinas_mle <- propinas |> group_by(momento) |> summarise(est_mle = list(tidy(MASS::fitdistr(cuenta_persona, "lognormal")))) |> unnest(est_mle) propinas_mle ## # A tibble: 4 × 4 ## momento term estimate std.error ## <chr> <chr> <dbl> <dbl> ## 1 Cena meanlog 2.03 0.0273 ## 2 Cena sdlog 0.362 0.0193 ## 3 Comida meanlog 1.94 0.0366 ## 4 Comida sdlog 0.302 0.0259 Ojo: estos parámetros están en escala logarítmica. Puedes revisar aquí para ver cómo calcular media y desviación estándar de las distribuciones originales. Ahora verificamos el ajuste: g_1 <- ggplot(propinas |> filter(momento == "Cena"), aes(sample = cuenta_persona)) + geom_qq(dparams = list(mean = propinas_mle$estimate[1], sd = propinas_mle$estimate[2]), distribution = stats::qlnorm) + ylim(c(0, 20)) + geom_abline() + labs(subtitle = "Cena") g_2 <- ggplot(propinas |> filter(momento == "Comida"), aes(sample = cuenta_persona)) + geom_qq(dparams = list(mean = propinas_mle$estimate[3], sd = propinas_mle$estimate[4]), distribution = stats::qlnorm) + ylim(c(0, 20)) + geom_abline() + labs(subtitle = "Comida") g_1 + g_2 El ajuste es bueno, aunque podríamos revisar la cola de la derecha en la Comida: ¿por qué existen esos valores relativamente grandes (alrededor de 25% más altos de lo que esperaríamos). ¿Tiene sentido ajustar dos distribuciones con parámetros separados? ¿Crees que estas dos distribuciones podrían compartir algún parámetro? Para esto puedes revisar el error estándar de los estimadores de máxima verosimilitud que mostramos arriba. ¿Qué ventajas verías en usar menos parámetros? ¿Cómo implementarías la estimación? ¿Qué pasa si intentas ajustar un modelo normal a estos datos? Modelos mal identificados Para algunos modelos y algunos parámetros, puede suceder que existan varias configuraciones muy diferentes de los parámetros que sean consistentes con los datos (en términos de verosimilitud, tienen verosimilitud alta similar), y en estos casos decimos que el modelo (con los datos observados) está mal identificado. Esto presenta problemas múltiples: optimizar es más difícil, hay incertidumbre grande en la estimación, y los parámetros se acoplan, haciendo difícil su interpretación. Ejemplo. Consideremos el ejemplo donde queríamos estimar dos proporciones: la proporción de examenes contestados al azar y la tasa de correctos. Vamos a suponer que la probabilidad de tener respuesta correcta dado que el examen no fue contestado al azar no es muy lejano a 1/5, que es la probabilidad de acertar a al azar. Aquí está la función para simular y la log verosimilitud correspondiente. Aquí vamos a ver un problema más difícil, así que usaremos la transformación logit para las proporciones, y no obtener resultados fuera del rango 0-1 al optimizar: inv_logit <- function(theta){ exp(theta) / (1 + exp(theta)) } logit <- function(p){ log(p / (1-p)) } # Simular datos sim_formas <- function(probs){ p_azar <- probs[1] p_corr <- probs[2] tipo <- rbinom(1, 1, 1 - p_azar) if(tipo==0){ # al azar x <- rbinom(1, 10, 1/5) } else { # no al azar x <- rbinom(1, 10, p_corr) } x } simular_modelo <- function(n, params){ muestra <- map_dbl(1:n, ~ sim_formas(probs = inv_logit(params))) muestra } # log verosimilitud crear_log_p <- function(x){ log_p <- function(pars){ p_azar = inv_logit(pars[1]) p_corr = inv_logit(pars[2]) sum(log(p_azar * dbinom(x, 10, 1/5) + (1 - p_azar) * dbinom(x, 10, p_corr))) } log_p } # simular datos set.seed(12) muestra <- simular_modelo(2000, params = logit(c(0.3, 0.29))) qplot(muestra) log_p <- crear_log_p(muestra) res <- optim(c(0.0, 0.0), log_p, control = list(fnscale = -1)) res$convergence ## [1] 0 est_mle <- res$par names(est_mle) <- c("p_azar_logit", "p_corr_logit") est_mle ## p_azar_logit p_corr_logit ## -0.9194029 -0.8896454 probs_mle <- inv_logit(est_mle) names(probs_mle) <- c("p_azar", "p_corr") probs_mle ## p_azar p_corr ## 0.2850796 0.2911830 En primer lugar, parece ser que nuestras estimaciones son menos precias. Vamos a hacer bootstrap paramétrico: rep_boot <- function(rep, simular, crear_log_p, pars, n){ muestra_bootstrap <- simular(n, pars) log_p_boot <- crear_log_p(muestra_bootstrap) # optimizamos res_boot <- optim(c(0.0, 0.0), log_p_boot, control = list(fnscale = -1)) try(if(res_boot$convergence != 0) stop("No se alcanzó convergencia.")) est_mle_boot <- res_boot$par names(est_mle_boot) <- names(pars) est_mle_boot["rep"] <- rep est_mle_boot["convergence"] <- res_boot$convergence est_mle_boot } set.seed(8934) reps_boot <- map(1:500, ~ rep_boot(.x, simular_modelo, crear_log_p, est_mle, n = length(muestra))) |> bind_rows() reps_boot |> mutate(across(everything(), round, 2)) |> head() ## # A tibble: 6 × 4 ## p_azar_logit p_corr_logit rep convergence ## <dbl> <dbl> <dbl> <dbl> ## 1 -1.14 -0.92 1 0 ## 2 -1.11 -0.85 2 0 ## 3 -1.17 -0.95 3 0 ## 4 -2.74 -1.01 4 0 ## 5 -1.05 -0.93 5 0 ## 6 -0.91 -0.87 6 0 El optimizador encontró resultados que no tienen sentido: ggplot(reps_boot, aes(x = inv_logit(p_azar_logit), y = inv_logit(p_corr_logit), colour = factor(convergence))) + geom_point(show.legend = FALSE) + xlab("p_azar") + ylab("p_corr") Y notamos un problema grave: Tenemos mucha variación en nuestros estimadores, y la correlación entre las estimaciones es alta. Esto deberíamos haberlo esperado, pues como las probabilidades de contestar correctamente son muy similares a las de contestar al azar: Existen muchas combinaciones de parámetros que son consistentes con los datos. Decimos entonces que este modelo está mal identificado con estos datos. La mala identificación, como vemos, es una propiedad tanto de modelo como datos. ¿Qué conclusiones acerca del examen obtienes al ver estas simulaciones bootstrap? ¿Cómo se deberían reportar estos resultados? Qué pasa en este ejemplo si la \\(p_{corr}\\) es más grande, o el tamaño de muestra es más grande? Repite el ejercicio con los parámetros del primer ejemplo (\\(p_{azar} = 0.3, p_{corr}=0.75\\)) y el mismo tamaño de muestra. ¿Qué sucede en este caso? En el caso extremo, decimos que el modelo no está indentificado, y eso generalmente sucede por un problema en el planteamiento del modelo, independientemente de los datos. ¿Puedes imaginar un modelo así? "],["propiedades-teóricas-de-mle.html", "Sección 8 Propiedades teóricas de MLE Consistencia Equivarianza del \\(\\textsf{MLE}\\) Normalidad asintótica Optimalidad del \\(\\textsf{MLE}\\)", " Sección 8 Propiedades teóricas de MLE El método de máxima verosimiltud es uno de los métodos más utilizados en la inferencia estadística paramétrica. En esta sección estudiaremos las propiedades teóricas que cumplen los estimadores de máxima verosimilitud (\\(\\textsf{MLE}\\)) y que han ayudado en su casi adopción universal. Estas propiedades de los \\(\\textsf{MLE}\\) son válidas siempre y cuando el modelo \\(f(x; \\theta)\\) satisfaga ciertas condiciones de regularidad. En particular veremos las condiciones para que los estimadores de máxima verosimilitud sean: consistentes, asintóticamente normales, asintóticamente insesgados, asintóticamente eficientes, y equivariantes. Los estimadores \\(\\textsf{MLE}\\) en ocasiones son malinterpretados como una estimación puntual en la inferencia, y por ende, incapaces de cuantificar incertidumbre. A lo largo de estas notas hemos visto cómo extraer intervalos de confianza por medio de simulación y por lo tanto incorporar incertidumbre en la estimación. Sin embargo, hay otros maneras de reportar incertidumbre para \\(\\textsf{MLE}\\). Y hablaremos de ello en esta sección. A lo largo de esta sección asumiremos muestras de la forma \\[\\begin{align} X_1, \\ldots, X_n \\overset{\\text{iid}}{\\sim} f(x; \\theta^*), \\end{align}\\] donde \\(\\theta^*\\) es el valor verdadero —que suponemos desconocido pero fijo— del parámetro \\(\\theta \\in \\Theta\\), y sea \\(\\hat \\theta_n\\) el estimador de máxima verosimilitud de \\(\\theta.\\) Ejemplo Usaremos este ejemplo para ilustrar los diferentes puntos teóricos a lo largo de esta sección. Consideremos el caso de una muestra de variables binarias que registran el éxito o fracaso de un experimento. Es decir, \\(X_1, \\ldots, X_n \\sim \\textsf{Bernoulli}(p),\\) donde el párametro desconocido es el procentaje de éxitos. Éste último denotado por \\(p.\\) Este ejemplo lo hemos estudiado en secciones pasadas, y sabemos que el \\(\\textsf{MLE}\\) es \\[\\begin{align} \\hat p_n = \\frac{S_n}{n} = \\bar X_n, \\end{align}\\] donde \\(S_n= \\sum_i X_i\\) es el número total de éxitos en la muestra. La figura siguiente ilustra el estimador \\(\\hat p_n\\) como función del número de observaciones en nuestra muestra. Podemos apreciar cómo el promedio parece estabilizarse alrededor del verdadero valor de \\(p^* = 0.25\\) cuando tenemos una cantidad suficientemente grande de observaciones. Como es de esperarse, diferentes muestras tendrán diferentes valores de \\(n\\) dónde las trayectorias parezca que se haya estabilizado (Ver figura siguiente). Sin embargo, se puede notar que este comportamiento parece estar controlado y son raras las trayectorias que se encuentran más lejos. Los conceptos siguientes nos permitirán cuantificar el porcentaje de trayectorias que se mantienen cercanas a \\(p^*,\\) en el caso límite de un número grande de observaciones, cuando trabajemos con estimadores de máxima verosimilitud. Más aún, nos permitirán cracterizar la distribución para dicho límite y aprenderemos de otras propiedades bajo este supuesto asintótico. Consistencia Es prudente pensar que para un estimador, lo que nos interesa es que conforme más información tengamos, más cerca esté del valor desconocido. Esta propiedad la representamos por medio del concepto de consistencia. Para hablar de esta propiedad necesitamos definir un tipo de convergencia para una secuencia de variables aleatorias, convergencia en probabilidad. Definición. Una sucesión de variables aleatorias \\(X_n\\) converge en probabilidad a la variable aleatoria \\(X,\\) lo cual denotamos por \\(X_n \\overset{P}{\\rightarrow} X\\), si para toda \\(\\epsilon \\gt 0\\), \\[\\lim_{n \\rightarrow \\infty} \\mathbb{P}(|X_n - X| > \\epsilon) = 0.\\] Ahora, definimos un estimador consistente como: Definición. Un estimador \\(\\tilde \\theta_n\\) es consistente si converge en probabilidad a \\(\\theta^*.\\) Donde \\(\\theta^*\\) denota el verdadero valor del parámetro, que asumimos fijo. En particular, los estimadores \\(\\textsf{MLE}\\) son consistentes. Teorema. Sea \\(X_n \\sim f(X; \\theta^*),\\) una muestra iid, tal que \\(f(X; \\theta)\\) cumple con ciertas condiciones de regularidad. Entonces, \\(\\hat \\theta_n,\\) el estimador de máxima verosimilitud, converge en probabilidad a \\(\\theta^*.\\) Es decir, \\(\\hat \\theta_n\\) es consistente. La demostración de este teorema la pueden encontrar en Wasserman (2013). Ejemplo El estimador \\(\\hat p_n\\) es consistente. Esto quiere decir que el estimador se vuelve más preciso conforme obtengamos más información. En general esta es una propiedad que los estimadores deben satisfacer para ser útiles en la práctica. La figura siguiente muestra el estimador \\(\\hat p_n\\) como función del número de observaciones utilizado. Distintas curvas corresponden a distintas realizaciones de muestras obtenidas del modelo (\\(B = 500\\)). Nota que la banda definida por \\(\\epsilon\\) se puede hacer tan pequeña como se requiera, lo único que sucederá es que necesitaremos un mayor número de observaciones para garantizar que las trayectorias de los estimadores \\(\\hat p_n\\) se mantengan dentro de las bandas con alta probabilidad. Equivarianza del \\(\\textsf{MLE}\\) Muchas veces nos interesa reparametrizar la función de verosimilitud con el motivo de simplificar el problema de optimización asociado, o simplemente por conveniencia interpretativa. Por ejemplo, si el parámetro de interés es tal que \\(\\theta \\in [a, b],\\) entonces encontrar el \\(\\textsf{MLE}\\) se traduce en optimizar la log-verosimilitud en el espacio restringido al intervalo \\([a,b].\\) En este caso, los métodos tradicionales de búsqueda local por descenso en gradiente podrían tener problemas de estabilidad cuando la búsqueda se realice cerca de las cotas. El concepto de equivarianza nos dice que si el cambio de coordenadas parametrales está definida, y si este cambio de variable se realiza por medio de una función bien comportada (derivable y cuya derivada no es cero), entonces la solución de encontrar el \\(\\textsf{MLE}\\) en las coordenadas originales y transformar, es igual a realizar la inferencia en las coordenadas fáciles. Teorema. Sea \\(\\tau = g(\\theta)\\) una función de \\(\\theta\\) bien comportada. Entonces si \\(\\hat \\theta_n\\) es el \\(\\textsf{MLE}\\) de \\(\\theta,\\) entonces \\(\\hat \\tau_n = g(\\hat \\theta_n)\\) es el \\(\\textsf{MLE}\\) de \\(\\tau.\\) Ejemplo El concepto de equivarianza lo ilustraremos para nuestro ejemplo de esta sección. En particular la parametrización la realizamos por cuestiones de interpretación como un factor de riesgo. Como hemos visto estimador \\(\\hat p_n\\) es equivariante. Es importante mencionar que esta propiedad es general para cualquier tamaño de muestra. Es decir, no descansa en supuestos de muestras grandes. Supongamos que nos interesa estimar el momio de éxitos (bastante común en casas de apuestas). El momio está definido como \\[ \\theta = \\frac{p}{1-p},\\] y podemos rescribir la función de verosimilitud en términos de este parámetro. Sustituyendo \\(p = \\frac{\\theta}{1+\\theta}\\) en \\(\\mathcal{L}_n(p)\\) obtenemos \\[\\begin{align} \\mathcal{L}_n(\\theta) = \\left( \\frac{\\theta}{1 + \\theta} \\right)^{S_n} \\left(\\frac{1}{1 + \\theta} \\right)^{n - S_n}, \\end{align}\\] cuya función encuentra su máximo en \\[\\begin{align} \\hat \\theta_n = \\frac{\\bar X_n}{ 1 - \\bar X_n}. \\end{align}\\] Comprueba que el estimador de arriba para \\(\\theta\\) es el MLE. Normalidad asintótica Está propiedad nos permite caracterizar la distribución asintótica del MLE. Es decir, nos permite caracterizar la incertidumbre asociada una muestra suficientemente grande por medio de una distribución Gaussiana. Esto es, bajo ciertas condiciones de regularidad, \\[\\hat \\theta_n \\overset{.}{\\sim} \\mathsf{N}( \\theta^*, \\mathsf{ee}^2),\\] donde \\(\\mathsf{ee}\\) denota el error estándar del \\(\\textsf{MLE},\\) \\(\\mathsf{ee} = \\mathsf{ee}(\\hat \\theta_n) = \\sqrt{\\mathbb{V}(\\hat \\theta_n)}\\). Esta distribución se puede caracterizar de manera aproximada por métodos analíticos. Para esto necesitamos las siguientes definiciones. Definición. La función de score está definida como \\[\\begin{align} s(X; \\theta) = \\frac{\\partial \\log f(X; \\theta)}{\\partial \\theta}. \\end{align}\\] La información de Fisher está definida como \\[\\begin{align} I_n(\\theta) &= \\mathbb{V}\\left( \\sum_{i = 1}^ns(X_i; \\theta) \\right) \\\\ &= \\sum_{i = 1}^n \\mathbb{V} \\left(s(X_i; \\theta) \\right) \\end{align}\\] Estas cantidades nos permiten evaluar qué tan fácil será identificar el mejor modelo dentro de la familia parámetrica \\(f(X; \\theta)\\). La función de score nos dice qué tanto cambia locamente la distribución cuando cambiamos el valor del parámetro. Calcular la varianza, nos habla de la dispersión de dicho cambio a lo largo del soporte de la variable aleatoria \\(X.\\) Si \\(I_n(\\theta)\\) es grande entonces el cambio de la distribución es muy importante. Esto quiere decir que la distribución es muy diferente de las distribuciones cercanas que se generen al evaluar en \\(\\theta\\)s diferentes. Por lo tanto, si \\(I_n(\\theta)\\) es grande, la distribución será fácil de identificar cuando hagamos observaciones. La información de Fisher también nos permite caracterizar de forma analítica la varianza asíntotica del \\(\\textsf{MLE}\\) pues la aproximación \\(\\mathsf{ee}^2 \\approx \\frac{1}{I_n(\\theta^*)}\\) es válida. El siguiente resultado utiliza la propiedad de la función de score: \\(\\mathbb{E}[s(X; \\theta)] = 0,\\) que implica que \\(\\mathbb{V} \\left(s(X_i; \\theta) \\right) = \\mathbb{E}[s^2(X; \\theta)],\\) y permite a su vez un cómputo más sencillo de la información de Fisher. Teorema. El cálculo de la información de Fisher para una muestra de tamaño \\(n\\) se puede calcular de manera simplificada como \\(I_n(\\theta) = n \\, I(\\theta).\\) Por otro lado, tenemos la siguiente igualdad \\[ I(\\theta) = - \\mathbb{E}\\left( \\frac{\\partial^2 \\log f(X; \\theta)}{\\partial \\theta^2} \\right).\\] Con estas herramientas podemos formular el teorema siguiente. Teorema. Bajo ciertas condiciones de regularidad se satisface que \\(\\mathsf{ee} \\approx \\sqrt{1/I_n(\\theta^*)}\\) y \\[ \\hat \\theta_n \\overset{d}{\\rightarrow} \\mathsf{N}( \\theta^*, \\mathsf{ee}^2).\\] El resultado anterior es teóricamente interesante y nos asegura un comportamiento controlado conforme tengamos más observaciones disponibles. Sin embargo, no es práctico pues no conocemos \\(\\theta^*\\) en la práctica y por consiguiente no conoceríamos la varianza. Sin embargo, también podemos aplicar el principio de plug-in y caracterizar la varianza de la distribución asintótica por medio de \\[\\hat{\\mathsf{ee}} = \\sqrt{1/I_n(\\hat \\theta_n)}.\\] Esto último nos permite constuir intervalos de confianza, por ejemplo al 95%, a través de \\[ \\hat \\theta_n \\pm 2 \\, \\hat{\\mathsf{ee}}.\\] Asimismo, el teorema de Normalidad asintótica nos permite establecer que el \\(\\textsf{MLE}\\) es asíntoticamente insesgado. Es decir, \\[\\lim_{n \\rightarrow \\infty}\\mathbb{E}[\\hat \\theta_n] = \\theta^*.\\] Definición. Sea una muestra \\(X_1, \\ldots, X_n \\overset{iid}{\\sim} f(X; \\theta^*)\\). Un estimador \\(\\tilde \\theta_n\\) es insesgado si satisface que \\[\\mathbb{E}[\\tilde \\theta_n] =\\theta^*.\\] El sesgo del estimador es precisamente la diferencia: \\(\\textsf{Sesgo} = \\mathbb{E}[\\tilde \\theta_n] - \\theta^*.\\) Ejemplo: Información de Fisher En el caso Bernoulli obtenemos \\(I_n(\\theta) = \\frac{n}{\\theta(1-\\theta)}\\), si \\(n = 20\\) podemos comparar con \\(\\theta=0.5, 0.7, 0.8\\), library(patchwork) # Verosimilitud X_1,...,X_n ~ Bernoulli(theta) L_bernoulli <- function(n, S){ function(theta){ theta ^ S * (1 - theta) ^ (n - S) } } xy <- data.frame(x = 0:1) l_b1 <- ggplot(xy, aes(x = x)) + stat_function(fun = L_bernoulli(n = 20, S = 10)) + xlab(expression(theta)) + ylab(expression(L(theta))) + labs(title = "Verosimilitud", subtitle = "n=20, S = 10") + ylim(0, 5e-05) l_b2 <- ggplot(xy, aes(x = x)) + stat_function(fun = L_bernoulli(n = 20, S = 14)) + xlab(expression(theta)) + ylab(expression(L(theta))) + labs(title = "Verosimilitud", subtitle = "n=20, S = 14") + ylim(0, 5e-05) l_b3 <- ggplot(xy, aes(x = x)) + stat_function(fun = L_bernoulli(n = 20, S = 16)) + xlab(expression(theta)) + ylab(expression(L(theta))) + labs(title = "Verosimilitud", subtitle = "n=20, S = 19") + ylim(0, 5e-05) l_b1 + l_b2 + l_b3 Ejemplo: Normalidad Regresando a nuestro ejemplo. Veremos empiricamente que el estimador \\(\\hat \\theta_n\\) es asintóticamente normal. Esta propiedad la hemos visto anteriormente para un caso muy particular. Lo vimos en el TLC para el caso de promedios, \\(\\bar X_n,\\) que en nuestro ejemplo corresponde a \\(\\hat p_n\\). Como hemos visto, esta propiedad la satisface cualquier otro estimador que sea máximo verosímil. Por ejemplo, podemos utilizar el \\(\\mathsf{MLE}\\) de los momios. La figura que sigue muestra la distribución de \\(\\hat \\theta_n\\) para distintas remuestras \\((B = 500)\\) con distintos valores de \\(n.\\) El gráfico anterior valida empíricamente la distribución asintótica para casos de muchas observaciones. A continuación ilustraremos cómo explotar este resultado para obtener intervalos de confianza. Para el caso de \\(\\hat p_n\\) hemos visto que el error estándar se calcula analíticamente como \\[\\textsf{ee}_p^2 = \\mathbb{V}(\\hat p_n) = \\mathbb{V}\\left(\\frac1n \\sum_{i = 1}^n x_i\\right) = \\frac{p^* (1 - p^*)}{n}.\\] Éste empata con el valor del error estándar asintótico \\[\\textsf{ee}_p^2 \\approx \\sqrt{\\frac{1}{I_n(p^*)}},\\] pues la información de Fisher es igual a \\[I_n(p) = n \\, I(p) = \\frac{n}{p ( 1- p)}.\\] En este caso podemos utilizar el estimador plug-in, \\(\\hat{\\textsf{ee}}_p = \\textsf{ee}_p(\\hat p_n).\\) Para estimar el momio, \\(\\theta,\\) el cálculo no es tan fácil pues tendríamos que calcular de manera analítica la varianza de un cociente \\[\\textsf{ee}_\\theta^2 = \\mathbb{V}\\left( \\frac{\\hat p_n}{1-\\hat p_n}\\right).\\] Utilizando la distirbución asintótica, el error estándar se puede calcular mediante \\[\\textsf{ee}_\\theta \\approx \\sqrt{\\frac{1}{I_n(\\theta^*)}} = \\sqrt{\\frac{\\theta (1 + \\theta)^2 }{n}}.\\] A continuación mostramos los errores estándar para nuestro ejemplo utilizando la distribución asintótica y por medio de la distribución de bootstrap. Como es de esperarse, ambos coinciden para muestras relativamente grandes. # Genero muestra muestras <- tibble(tamanos = 2**seq(4,7)) %>% mutate(obs = map(tamanos, ~rbernoulli(., p = p_true))) calcula_momio <- function(x){ x / (1 - x) } calcula_ee_momio <- function(x){ sqrt(((1+x)**2) * x) } # Calculo MLE muestras_est <- muestras %>% group_by(tamanos) %>% mutate(media_hat = map_dbl(obs, mean), media_ee = sqrt(media_hat * (1 - media_hat)/tamanos), momio_hat = calcula_momio(media_hat), momio_ee = calcula_ee_momio(momio_hat)/sqrt(tamanos)) # Calculo por bootstrap muestras_boot <- muestras_est %>% group_by(tamanos) %>% mutate(sims_muestras = map(tamanos, ~rerun(1000, sample(muestras %>% filter(tamanos == ..1) %>% unnest(obs) %>% pull(obs), size = ., replace = TRUE))), sims_medias = map(sims_muestras, ~map_dbl(., mean)), sims_momios = map(sims_medias, ~map_dbl(., calcula_momio)), media_boot = map_dbl(sims_medias, mean), momio_boot = map_dbl(sims_momios, mean), media_ee_boot = map_dbl(sims_medias, sd), momio_ee_boot = map_dbl(sims_momios, sd) ) ## # A tibble: 4 × 5 ## # Groups: tamanos [4] ## tamanos momio_hat momio_boot momio_ee momio_ee_boot ## <dbl> <dbl> <dbl> <dbl> <dbl> ## 1 16 0.333 0.367 0.192 0.236 ## 2 32 0.333 0.342 0.136 0.140 ## 3 64 0.123 0.123 0.0492 0.0498 ## 4 128 0.407 0.417 0.0793 0.0800 Comprueba las fórmulas para los errores estándar tanto para la probabilidad de éxito como para los momios. El método delta El ejercicio anterior nos sugiere una pregunta natural: Cómo establecer la distribución asintótica de un estimador cuando ya se conoce la de una pre-imagen de él? Es decir, si ya conocemos la distribución de \\(\\theta,\\) podemos establecer la distribución de \\(\\tau = g(\\theta)?\\) La respuesta es afirmativa y la enunciamos por medio de un teorema. El resultado se conoce como el método delta. Teorema. Si \\(\\tau = g(\\theta)\\) es una función diferenciable y \\(g'(\\theta) \\neq 0\\), entonces \\[\\hat \\tau_n \\overset{d}{\\rightarrow} \\mathsf{N}( \\tau^*, \\hat{\\mathsf{ee}}^2_\\tau),\\] donde \\(\\hat \\tau_n = g(\\hat \\theta_n)\\) y \\[\\hat{\\mathsf{ee}}_\\tau = \\bigg| g'(\\hat \\theta_n) \\bigg| \\times \\hat{\\mathsf{ee}}_\\theta(\\hat \\theta_n).\\] Por ejemplo, este resultado lo podemos utilizar para nuestro experimento de Bernoullis. Pues \\(g(p) = \\frac{p}{1-p}\\) es una función diferenciable y por lo tanto \\[\\hat{\\mathsf{ee}}_\\theta = \\sqrt{\\frac1n} \\times \\left[ \\hat p_n^{1/2} (1-\\hat p_n)^{-3/2}\\right].\\] Comprueba la fórmula del método delta para el momio en función de la fracción de éxitos, y también comprueba que de el mismo resultado analítico que habías calculado en el ejercicio anterior. Optimalidad del \\(\\textsf{MLE}\\) Consideremos el caso de una muestra iid \\(X_1, \\ldots, X_n \\sim \\mathsf{N}(\\theta, \\sigma^2).\\) Y consideremos dos estimadores para \\(\\theta.\\) El primero será la media muestral \\(\\bar X_n\\) y el segundo la mediana muestral, la cual denotaremos por \\(\\tilde \\theta_n.\\) Sabemos que ambos son insesgados. Por lo tanto, en promedio emiten estimaciones correctas. Pero ¿cómo escogemos cual utilizar? Un criterio para comparar estimadores es el error cuadrático medio (\\(\\textsf{ECM}\\), por sus siglas en inglés). Definición. El error cuadrático medio de un estimador \\(\\tilde \\theta_n\\) se calcula como \\[\\textsf{ECM}[\\tilde \\theta_n] = \\mathbb{E}[(\\tilde \\theta_n - \\theta^*)^2].\\] Por lo tanto, el \\(\\textsf{ECM}\\) mide la distancia promedio entre el estimador y el valor verdadero valor del parámetro. La siguiente igualdad es bastante útil para comparar dos estimadores. \\[\\textsf{ECM}[\\tilde \\theta_n] = \\mathbb{V}\\left(\\tilde \\theta_n\\right) + \\textsf{Sesgo}\\left[\\tilde \\theta_n\\right]^2.\\] Por lo tanto si dos estimadores son insesgados, uno es más eficiente que el otro si su varianza es menor. La media sabemos que es el \\(\\textsf{MLE}\\) y por el TCL tenemos que \\[\\sqrt{n} \\left( \\bar X_n - \\theta \\right) \\overset{d}{\\rightarrow} \\mathsf{N}( 0, \\sigma^2).\\] La mediana, en contraste, tiene una distribución asintótica \\[\\sqrt{n} \\left( \\tilde X_n - \\theta \\right) \\overset{d}{\\rightarrow} \\mathsf{N}\\left( 0, \\sigma^2 \\frac{\\pi}{2}\\right),\\] es decir tiene una varianza ligeramente mayor. Por lo tanto, decimos que la mediana tiene una eficiencia relativa con respecto a la media del \\(.63 \\% (\\approx 2/\\pi)\\). Es decir, la mediana sólo utliza una fracción de los datos comparado con la media. El siguiente teorema, la desigualdad de Cramer-Rao, nos permite establecer esta resultado de manera mas general para cualquier estimador insesgado. Teorema. Sea \\(\\tilde \\theta_n\\) cualquier estimador insesgado de \\(\\theta\\) cuyo valor verdadero es \\(\\theta^*,\\) entonces \\[\\begin{align} \\mathbb{V}(\\tilde \\theta_n) \\geq \\frac{1}{n I(\\theta^*)}. \\end{align}\\] Un estimador insesgado que satisfaga esta desigualdad se dice que es eficiente. Nota que el lado derecho de la desigualdad es precisamente la varianza asintótica del \\(\\textsf{MLE}.\\) Por lo tanto, éste es asintóticamente eficiente. Es importante hacer enfásis en que la optimalidad del \\(\\textsf{MLE}\\) es un resultado asintótico. Es decir, sólo se satisface cuando tenemos un número suficiente de observaciones. Qué tan grande debe ser el tamaño de muestra varia de problema a problema. Es por esto que para muestras de tamaño finito se prefieren estimadores que minimicen el \\(\\textsf{ECM},\\) como cuando hacemos regresión ridge o utilizamos el estimador James–Stein para un vector de medias. Referencias "],["más-de-pruebas-de-hipótesis-e-intervalos.html", "Sección 9 Más de pruebas de hipótesis e intervalos Prueba de Wald Observación: pruebas \\(t\\) y práctica estadística Prueba de Wald para dos medias o proporciones Datos pareados Pruebas de cociente de verosimilitud Otro tipo de pruebas Errores tipo I y tipo II Consideraciones prácticas Pruebas múltiples", " Sección 9 Más de pruebas de hipótesis e intervalos En esta sección veremos enfoques más clásicos para analizar una prueba de hipótesis, en particular veremos situaciones donde podemos hacer algunos supuestos teóricos acerca de la distribución de las poblaciones. Esta es una sección complementaria para entender prácticas estadísticas usuales: recuerda que discutimos antes que hacer estimación por intervalos generalmente es más útil que hacer pruebas de hipótesis, y adicionalmente, tenemos también la técnica de pruebas de permutaciones que podemos aplicar en muchos de los casos que discutiremos a continuación. El enfoque básico es el mismo que cuando vimos pruebas de permutaciones: calculamos una estadística de prueba de los datos y luego, con una distribución de referencia (asociada a la hipótesis nula), calculamos un valor-\\(p\\). Si el valor-\\(p\\) es chico, entonces los resultados observados no pueden explicarse fácilmente por variación muestral, y rechazamos la hipótesis nula. Con esta idea básica, y supuestos distribucionales acerca de las poblaciones, podemos construir pruebas que requieren menos cómputo. La desventaja es que hay que checar con cuidado los supuestos distribucionales que hagamos. Si los supuestos son incorrectos, las valores-\\(p\\) no tienen mucho sentido y son difíciles de interpretar. Para esta sección seguiremos más a Wasserman (2013) (capítulo 10), pero puedes revisar también Chihara and Hesterberg (2018) (capítulo 8). Prueba de Wald Como hemos visto, existe normalidad asintótica en varios estimadores que hemos considerado, como medias y proporciones muestrales. También vimos que estimadores de máxima verosimilitud cumplen muchas veces un teorema central del límite. Así que supongamos que tenemos una estadística \\(\\hat{\\theta}_n\\) que estima \\(\\theta\\) y es asintóticamente insesgada y normal. Denotamos por \\(\\hat{\\textsf{ee}}\\) una estimación de su error estándar —hay distintas maneras de hacerlo: por ejemplo, con simulación (bootstrap), o por medios analíticos (teoría). Recuerda que el error estándar de una estadística es la desviación estándar de su distribución de muestreo. Si nos interesa probar la hipótesis de que \\(\\theta = 125\\), por ejemplo, y \\(\\hat{\\theta}_n\\) es aproximadamente normal, entonces podemos construir una distribución de referencia aproximada como sigue: Si la nula es cierta, entonces la distribución de muestreo de \\(\\hat{\\theta}\\) es aproximadamente \\(\\mathsf{N}(125, \\hat{\\textsf{ee}})\\). Esto implica que la siguiente estadística \\(W\\) es aproximadamente normal estándar bajo la nula: \\[W = \\frac{\\hat{\\theta} - 125}{\\hat{\\textsf{ee}}} \\sim \\mathsf{N}(0,1)\\] Por lo que valores lejanos de \\([-2,2]\\), por ejemplo, dan evidencia en contra de la hipótesis nula. Como \\(W\\) no depende de ningún parámetro desconocido, podemos usarla como distribución de referencia para comparar el valor de \\(W\\) que obtuvimos en la muestra. Si observamos para nuestra muestra un valor \\(W=w\\) entonces, el valor-\\(p\\) (dos colas) de esta prueba es, aproximadamente, \\[\\mathsf{valor-}p \\approx P(|Z| > |w|) = 2(1 - \\Phi(|w|))\\] donde \\(Z\\sim \\mathsf{N}(0,1)\\) y \\(\\Phi\\) es su función de distribución acumulada. Ejemplo: media muestral. La media nacional de las escuelas de enlace está alrededor de 454 (matemáticas en 6o. grado). Tomamos una muestra de 180 escuelas del Estado de México, y queremos saber si la media obtenida es consistente o no con la media nacional. Ya que estamos usando como estimador una media de una muestra iid, podemos estimar el error estándar de la media con \\[\\hat{\\textsf{ee}} = s / \\sqrt{n}\\] Obtenemos: set.seed(29) muestra_edomex <- read_csv("data/enlace.csv") |> filter(estado == "ESTADO DE MEXICO") |> sample_n(180) resumen <- muestra_edomex |> summarise(media = mean(mate_6), s = sd(mate_6), n = n()) |> mutate(ee = s / sqrt(n)) resumen ## # A tibble: 1 × 4 ## media s n ee ## <dbl> <dbl> <int> <dbl> ## 1 456. 155. 180 11.5 La hipótesis nula es que la media poblacional del Estado de México es igual a 454. Calculamos el valor-\\(p\\) usando la prueba de Wald: dif <- (resumen |> pull(media)) - 454 ee <- resumen |> pull(ee) w <- dif / ee p <- 2 * (1 - pt(abs(w), 179)) p ## [1] 0.8413082 y vemos que esta muestra es consistente con la media nacional. No tenemos evidencia en contra de que la media del estado de México es muy similar a la nacional. Repite esta prueba con una muestra de Chiapas. ¿Qué resultado obtienes? Tenemos entonces: Prueba de Wald. Consideramos probar la hipótesis nula \\(H_0: \\theta = \\theta_0\\) contra la alternativa \\(H_1: \\theta \\neq \\theta_0\\). Suponemos que \\(\\hat{\\theta}_n\\) es asintóticamente normal e insesgada, de modo que bajo la hipótesis nula \\[\\frac{\\hat{\\theta}_n - \\theta_0}{\\hat{\\textsf{ee}}} \\sim \\mathsf{N}(0,1).\\] Entonces el valor-\\(p\\) de la prueba de Wald para esta hipótesis nula es \\[\\mathsf{valor-}p \\approx P(|Z| > |w|) = 2(1 - \\Phi(|w|)).\\] Ejemplo. Podemos hacer la prueba de Wald para proporciones con el estimador usual \\(\\hat{p}_n\\) que estima una proporción poblacional \\(p\\). En este caso, utilizamos la estimación usual del error estándar de \\(\\hat{p}_n\\), que está dada por \\[\\hat{\\textsf{ee}} = \\sqrt{\\frac{\\hat{p}_n(1-\\hat{p}_n)}{n}}.\\] Supongamos por ejemplo que en nuestros datos observamos que en \\(n=80\\) muestras independientes, tenemos \\(x=47\\) éxitos. ¿Es esto consistente con la hipótesis nula \\(p = 0.5\\)? Calcuamos primero: p_hat <- 47 / 80 ee <- sqrt(p_hat * (1 - p_hat) / 80) y la estadística \\(W\\) de prueba es: w <- (p_hat - 0.5) / ee w ## [1] 1.58978 Calculamos su valor p: valor_p <- 2 * (1 - pnorm(abs(w))) valor_p ## [1] 0.1118843 Y vemos que en este caso tenemos evidencia baja de que la proporción poblacional es distinta de 0.5. Observación: pruebas \\(t\\) y práctica estadística Con más supuestos distribucionales podemos hacer otros tipos de pruebas donde no requerimos hacer supuestos asintóticos. Por ejemplo, si suponemos que la muestra obtenida \\(X_1,\\ldots, X_n\\) proviene de una distribución normal \\(\\mathsf{N}(\\mu, \\sigma)\\) (cosa que es necesario verificar), entonces es posible demostrar que la estadística \\[T = \\frac{\\bar{X} - \\mu}{S / \\sqrt{n}}\\] tiene una distribución exacta que es \\(t\\) de Student con \\(n-1\\) grados de libertad, y no depende de otros parámetros, de manera que podemos usarla como distribución de referencia y podemos calcular valores \\(p\\) exactos (revisa la sección 8.1 de Chihara and Hesterberg (2018)). La diferencia con usar una prueba de Wald está en que aquí consideramos también la variablidad del error estándar estimado, lo que correctamente sugiere que esperamos variaciones proporcionalmente más grandes en \\(T\\) comparado con lo que sucede si no consideramos esta variación (como en la prueba de Wald). Sin embargo: Si la muestra \\(n\\) es grande, la distribución \\(t\\) de Student con \\(n-1\\) grados de libertad es muy similar a la normal estándar, de manera que la aproximación de Wald es apropiada. Cuando la muestra \\(n\\) es chica, es difícil validar el supuesto de normalidad, a menos que tengamos alguna información adicional acerca de la distribución poblacional. La prueba tiene cierta robustez a desviaciones de normalidad de las observaciones, pero si el sesgo es muy grande, por ejemplo, el supuesto es incorrecto y da valores \\(p\\) distorsionados. Puedes ver aquí, o el apéndice B.11 de Chihara and Hesterberg (2018) para ver descripciones de la distribución \\(t\\) y cómo se compara con una normal estándar dependiendo de los grados de libertad. En muchas ocasiones, en la práctica es común no checar supuestos y saltar directamente a hacer pruebas \\(t\\), lo cual no es muy seguro. Si tenemos duda de esos supuestos, podemos hacer pruebas gráficas o de permutaciones, si son apropiadas. Prueba de Wald para dos medias o proporciones Cuando tenemos dos muestras extraidas de manera independiente de dos poblaciones distintas, y queremos ver si la hipótesis de medias poblacionales iguales es consistente con los datos, podemos usar también una prueba de Wald. Sea \\(\\bar{X}_1\\) y \\(\\bar{X}_2\\) las medias muestrales correspondientes. Si la hipótesis de normalidad aplica para ambas distribuciones muestrales (normalidad asintótica), la variable \\[\\hat{\\delta} = \\bar{X}_1 - \\bar{X}_2\\] es aproximadamente normal con media \\(\\mathsf{N}(\\mu_1 - \\mu_2, \\textsf{ee})\\), donde \\(\\mu_1\\) y \\(\\mu_2\\) son las medias poblacionales correspondientes, y donde el error estándar de \\(\\hat{\\delta}\\) es la raíz de la suma de los cuadrados de los errores estándar de \\(\\bar{X}\\) y \\(\\bar{Y}\\): \\[ \\textsf{ee} = \\sqrt{\\textsf{ee}_1^2 + \\textsf{ee}_{2}^2}.\\] Se sigue entonces que: \\[\\textsf{ee} =\\sqrt{\\frac{\\sigma_1^2}{n_1}+\\frac{\\sigma_2^2}{n_2} }\\] (Nota: usa probabilidad para explicar por qué es cierto esto). De esto se deduce que bajo la hipótesis nula de igualdad de medias \\(\\mu_1 = \\mu_2\\), tenemos que la estadística de Wald \\[W = \\frac{\\hat{\\delta} - 0}{\\sqrt{\\frac{s_1^2}{n_1}+\\frac{s_2^2}{n_2}} } \\sim \\mathsf{N}(0,1)\\] es aproximamente normal estándar. Procedemos entonces a calcular el valor \\(p\\) usando la función de distribución acumulada de la normal estándar. En el caso particular de proporciones, podemos simplificar, como hicimos arriba, a \\[W = \\frac{\\hat{p}_1 - \\hat{p}_2}{\\sqrt{\\frac{\\hat{p}_1(1-\\hat{p}_1)}{n_1}+\\frac{\\hat{p}_2(1-\\hat{p}_2)}{n_2}} } \\sim \\mathsf{N}(0,1)\\] Haz una prueba comparando las medias en enlace de la Ciudad de México vs Estado de México. ¿Hay evidencia de que tienen distintas medias? Ejemplo (Wasserman (2013)). Supongamos tenemos dos conjuntos de prueba para evaluar algoritmos de predicción, de tamaños \\(n_1=100\\) y \\(n_2=250\\) respectivamente, tenemos dos algoritmos para generar predicciones de clase (digamos positivo y negativo). Usaremos el primer conjunto para evaluar el algoritmo 1 y el segundo para evaluar el algoritmo 2. El algoritmo 1 corre en 1 hora, y el algoritmo 2 tarda 24 horas. Supón que obtenemos que la tasa de clasificación correcta del primer algoritmo es \\(\\hat{p}_1 = 0.85\\), y la tasa del segundo es de \\(\\hat{p}_2 = 0.91\\). ¿Estos datos son consistentes con la hipótesis de que los algoritmos tienen desempeño muy similar? Es decir, queremos probar la hipótesis \\(p_1 = p_2\\). Calculamos la estadística de Wald: n_1 <- 100 n_2 <- 250 p_hat_1 <- 0.86 p_hat_2 <- 0.90 ee <- sqrt(p_hat_1 * (1 - p_hat_1) / n_1 + p_hat_2 * (1 - p_hat_2) / n_2) delta = p_hat_1 - p_hat_2 w <- delta / ee w ## [1] -1.011443 que da un valor p de: 2 * (1 - pnorm(abs(w))) ## [1] 0.3118042 Y vemos que valor-\\(p\\) es grande, de forma que los datos son consistentes con la hipótesis de que los algoritmos tienen desempeño similar. ¿Cómo tomaríamos nuestra decisión final? Si la diferencia entre 1 hora y 24 horas no es muy importante, entonces preferíamos usar el algoritmo 2. Sin embargo, si el costo de 24 horas es más alto que 1 hora de corrida, los datos no tienen indicios fuertes de que vayamos a perder en desempeño, y podriamos seleccionar el algoritmo 1. Datos pareados Las pruebas que acabamos de ver para comparar medias requieren poblaciones independientes. Si las dos muestras están pareadas (es decir, son dos mediciones en una misma muestra), podemos tomar considerar las diferencias \\(D_i = X_i - Y_i\\) y utilizar la prueba para una sola muestra con la media \\(\\bar{D}\\). Esta es una prueba de Wald pareada. Ejemplo (Wasserman (2013)). Ahora supongamos que utilizamos la misma muestra de tamaño \\(n=300\\) para probar los dos algoritmos. En este caso, no debemos hacer la prueba para medias de muestras independientes. Sin embargo, esto podemos ponerlo en términos de una prueba para una sola muestra. Tenemos las observaciones \\(X_1,\\ldots, X_n\\) y \\(Y_1,\\dots, Y_n\\), donde \\(X_i=1\\) si el algoritmo 1 clasifica correctamente, y 0 en otro caso. Igualmente, \\(Y_i=1\\) si el algoritmo 2 clasifica correctamente, y 0 en otro caso. Definimos \\[D_i= X_i - Y_i\\] Y \\(D_1,\\ldots, D_n\\) es una muestra iid. Ahora observemos que la media \\(\\bar{D}\\) tiene valor esperado \\(p_1 - p_2\\), donde \\(p_1\\) y \\(p_2\\) son las tasas de correctos del algoritmo 1 y del algoritmo 2 respectivamente. Podemos hacer una prueba de Wald como al principio de la sección: \\[W = \\frac{\\bar{D} - 0}{{\\textsf{ee}}}\\] Y notemos que el error estándar no se calcula como en el ejemplo anterior. Podríamos usar bootstrap para estimarlo, pero en este caso podemos usar el estimador usual \\[\\hat{\\textsf{ee}} = S / \\sqrt{n}\\] donde \\[S = \\frac{1}{n}\\sum_{i=1}^n (D_i - \\bar{D})^2\\] y nótese que necesitamos las decisiones indiviudales de cada algoritmo para cada caso, en contraste al ejemplo anterior de muestras independientes donde los errores estándar se calculaban de manera independiente. Esto tiene sentido, pues la variablidad de \\(\\bar{D}\\) depende de cómo están correlacionados los aciertos de los dos algoritmos. Supongamos por ejemplo que los datos que obtenemos son: datos_clasif |> head() ## # A tibble: 6 × 3 ## caso x y ## <chr> <dbl> <dbl> ## 1 1 1 1 ## 2 2 0 1 ## 3 3 0 1 ## 4 4 0 1 ## 5 5 0 1 ## 6 6 1 0 Como explicamos arriba, nos interesa la diferencia. Calculamos \\(d\\): datos_clasif <- datos_clasif |> mutate(d = x - y) datos_clasif |> head() ## # A tibble: 6 × 4 ## caso x y d ## <chr> <dbl> <dbl> <dbl> ## 1 1 1 1 0 ## 2 2 0 1 -1 ## 3 3 0 1 -1 ## 4 4 0 1 -1 ## 5 5 0 1 -1 ## 6 6 1 0 1 datos_clasif |> summarise(sd_x = sd(x), sd_y = sd(y), sd_d = sd(d)) ## # A tibble: 1 × 3 ## sd_x sd_y sd_d ## <dbl> <dbl> <dbl> ## 1 0.393 0.309 0.539 Y ahora calculamos la media de \\(d\\) (y tasa de correctos de cada clasificador:) medias_tbl <- datos_clasif |> summarise(across(where(is.numeric), mean, .names = "{col}_hat")) d_hat <- pull(medias_tbl, d_hat) medias_tbl ## # A tibble: 1 × 3 ## x_hat y_hat d_hat ## <dbl> <dbl> <dbl> ## 1 0.81 0.893 -0.0833 Ahora necesitamos calcular el error estándar. Como explicamos arriba, hacemos ee <- datos_clasif |> mutate(d_hat = mean(d)) |> mutate(dif_2 = (d - d_hat)) |> summarise(ee = sd(dif_2) / sqrt(n())) |> pull(ee) ee ## [1] 0.03112829 Y ahora podemos calcular la estadística \\(W\\) y el valor p correspondiente: w <- d_hat / ee valor_p <- 2 * (1 - pnorm(abs(w))) c(w = w, valor_p = valor_p) |> round(3) ## w valor_p ## -2.677 0.007 Y vemos que tenemos evidencia considerable de que el desempeño no es el mismo: el algoritmo 2 parece ser mejor. ¿Qué pasaría si incorrectamente usaras la prueba de dos muestras para este ejemplo? ¿Qué cosa cambia en la fórmula de la estadística de Wald? Pruebas de cociente de verosimilitud Otra técnica clásica para hacer pruebas de hipótesis es el de cociente de verosimilitudes. Con esta técnica podemos hacer pruebas que involucren varios parámetros, y podemos contrastar hipótesis nulas contra alternativas especificas. Para aplicar este tipo de pruebas es necesario hacer supuestos distribucionales (modelos probabilísticos), pues estas pruebas se basan en la función de verosimilitud \\(\\mathcal{L}(\\theta; x_1,\\ldots, x_n)\\). Ejemplo. Supongamos que tenemos la hipótesis nula de que una moneda es justa (\\(p =0.5\\) de sol). En 120 tiros de la moneda (que suponemos independientes), observamos 75 soles. Recordemos la función de log-verosimilitud para el modelo binomial (ignorando constantes que no dependen de \\(p\\)) es \\[\\ell(p) = 75 \\log(p) + (120 - 75)\\log(1-p) \\] Primero calculamos el estimador de máxima verosimilitud de \\(p\\), que es \\(\\hat{p} = 75/120 = 0.625\\). Evaluamos la verosimilitud \\[\\ell(\\hat{p}) = \\ell(0.625) = 75\\log(0.625) + 45\\log(0.375) = -79.388\\] - Ahora evaluamos la verosimlitud según la hipótesis nula, donde asumimos que \\(p = 0.5\\): \\[\\ell(p_0) = \\ell(0.5) = 75\\log(0.5) + 45\\log(0.5) = -83.177\\] - Finalmente, contrastamos estos dos números con una estadística que denotamos con \\(\\lambda\\): \\[\\lambda = 2\\left[\\ell(\\hat{p}) - \\ell(p_0)\\right] = 2[\\ell(0.625)- \\ell(0.5)] = 2(3.79)=7.58\\] A \\(\\lambda\\) se le llama la estadística de cociente de verosimilitud. Tomamos la diferencia de log verosimilitudes, que es los mismo que tomar el logaritmo del cociente de verosimilitudes, y de ahí el nombre de la prueba. Nótese que cuando este número \\(\\lambda\\) es muy grande, esto implica que la hipótesis nula es menos creíble, o menos consistente con los datos, pues la nula tiene mucho menos verosimilitud de lo que los datos indican. Por otro lado, cuando este valor es cercano a 0, entonces tenemos menos evidencia en contra de la hipótesis nula. Esto se explica en la siguiente gráfica: log_verosim <- function(p){ 75 * log(p) + (120 - 75) * log(1 - p) } verosim_tbl <- tibble(p = seq(0.4, 0.7, 0.01)) |> mutate(log_verosim = log_verosim(p)) ggplot(verosim_tbl, aes(x = p, y = log_verosim)) + geom_line() + geom_segment(x = 75/120, xend = 75/120, y = -130, yend = log_verosim(75/120), colour = "red") + geom_segment(x = 0.5, xend = 0.5, y = -130, yend = log_verosim(0.5), colour = "gray") + geom_errorbar(aes(x = 0.5, ymin = log_verosim(0.5), ymax = log_verosim(75/120)), colour = "orange", width = 0.05) + annotate("text", x = 0.48, y = -81.5, label = "3.79") + annotate("text", x = 0.515, y = -91, label ="nula", colour = "gray20") + annotate("text", x = 0.665, y = -91, label ="max verosímil", colour = "red") + labs(subtitle = expression(paste(lambda, "=2(3.79)=7.58"))) Este método puede generalizarse para que no solo aplique a hipótesis nulas donde \\(\\theta = \\theta_0\\), sino en general, \\(\\theta \\in \\Theta_0\\). Por ejemplo, podemos construir pruebas para \\(\\theta < 0.4\\). Definición. Consideramos la hipótesis nula \\(\\theta= \\theta_0\\). La estadística del cociente de verosimilitudes está dada por: \\[\\lambda = 2\\log\\left( \\frac{\\max_{\\theta}\\mathcal{L}(\\theta)}{\\max_{\\theta=\\theta_0}\\mathcal{L}(\\theta)} \\right ) = 2\\log\\left( \\frac{\\mathcal{L}(\\hat{\\theta})}{\\mathcal{L}(\\theta_0)} \\right)\\] donde \\(\\hat{\\theta}\\) es el estimador de máxima verosimilitud. Para construir una prueba asociada, como siempre, necesitamos una distribución de referencia. Esto podemos hacerlo con simulación, o usando resultados asintóticos. Distribución de referencia para pruebas de cocientes Para nuestro ejemplo anterior, podemos simular datos bajo la hipótesis nula, y ver cómo se distribuye la estadística \\(\\lambda\\): Ejemplo. Simulamos bajo la hipótesis nula como sigue: n_volados <- 120 # número de volados simulados_nula <- rbinom(4000, n_volados, p = 0.5) lambda <- function(n, x, p_0 = 0.5){ # estimador de max verosim p_mv <- x / n # log verosimilitud bajo mv log_p_mv <- x * log(p_mv) + (n - x) * log(1 - p_mv) # log verosimllitud bajo nula log_p_nula <- x * log(p_0) + (n - x) * log(1 - p_0) lambda <- 2*(log_p_mv - log_p_nula) lambda } lambda_obs <- lambda(n_volados, 75, 0.5) sims_tbl <- tibble(sim_x = simulados_nula) |> mutate(lambda = map_dbl(sim_x, ~ lambda(n_volados, .x, p_0 = 0.5))) ggplot(sims_tbl, aes(x = lambda)) + geom_histogram(binwidth = 0.7) + geom_vline(xintercept = lambda_obs, color = "red") Con esta aproximación a la distribución de referencia podemos calcular el valor p en nuestro ejemplo anterior: valor_p <- mean(sims_tbl$lambda >= lambda_obs) valor_p ## [1] 0.00675 y observamos que tenemos evidencia fuerte en contra de la hipótesis nula: la moneda no está balanceada. Ejemplo. Este ejemplo es un poco artificial, pero lo usamos para entender mejor las pruebas de cocientes de verosimlitud. Supongamos que tenemos una muestra de \\(\\mathsf{N}(\\mu, 1)\\), y queremos probar si \\(\\mu = 8\\). Asumimos que el supuesto de normalidad y desviación estándar iugal a 1 se cumplen. set.seed(3341) n_muestra <- 100 muestra_1 <- rnorm(n_muestra, 7.9, 1) crear_log_p <- function(x){ # crear log verosim para dos muestras normales independientes. log_p <- function(params){ mu <- params[1] log_vero <- dnorm(x, mean = mu, sd = 1, log = TRUE) |> sum() log_vero } } lambda_calc <- function(muestra, crear_log_p){ log_p <- crear_log_p(muestra) res <- optim(c(0), log_p, control = list(fnscale = -1)) lambda_mv <- log_p(res$par) lambda_nula <- log_p(8.0) lambda <- 2 * (lambda_mv - lambda_nula) lambda } lambda <- lambda_calc(muestra_1, crear_log_p) lambda ## [1] 2.101775 Ahora construimos con simulación la distribución de referencia usando simulaciones bajo la nula sims_nula <- map(1:10000, ~ rnorm(n_muestra, 8, 1)) lambda_nula_sim <- map_dbl(sims_nula, ~ lambda_calc(.x, crear_log_p)) tibble(lambda = lambda_nula_sim) |> ggplot(aes(x = lambda)) + geom_histogram() + geom_vline(xintercept = lambda, colour = "red") valor_p <- mean(lambda_nula_sim >= lambda) valor_p ## [1] 0.1537 Estos datos muestran consistencia con la hipótesis \\(\\mu = 8\\). Discusión: Nota en los dos ejemplos anteriores la similitud entre las distribuciones de referencia. En ambos casos, estas distribuciones resultan ser aproximadamente \\(\\chi\\)-cuadrada con 1 grado de libertad (ji-cuadrada). Podemos checar para el último ejemplo: teorica <- tibble(x = seq(0.1, 10, 0.01)) |> mutate(f_chi_1 = dchisq(x, df = 1)) tibble(lambda = lambda_nula_sim) |> ggplot() + geom_histogram(aes(x = lambda, y = ..density..), binwidth = 0.1) + geom_line(data = teorica, aes(x = x, y = f_chi_1), colour = "red") O mejor, con una gráfica de cuantiles de las simulaciones vs la téorica: tibble(lambda = lambda_nula_sim) |> ggplot(aes(sample = lambda)) + geom_qq(distribution = stats::qchisq, dparams = list(df = 1)) + geom_qq_line(distribution = stats::qchisq, dparams = list(df = 1)) Este resultado asintótico no es trivial, y se usa comúnmente para calcular valores \\(p\\). Discutiremos más este punto más adelante. Otro tipo de pruebas Con cocientes de verosimlitud podemos diseñar pruebas para contrastar condiciones que sólo un subconjunto de parámetros cumple. Ejemplo. Supongamos que queremos hacer una prueba de igualdad de medias \\(\\mu_1 = \\mu_2\\) para dos poblaciones normales \\(\\mathsf{N}(\\mu_1, \\sigma_1)\\) y \\(\\mathsf{N}(\\mu_2, \\sigma_2)\\), donde extraemos las muestras de manera independiente, y no conocemos las desviaciones estándar. Obtenemos dos muestras (que supondremos provienen de distribuciones normales, pues ese es nuestro supuesto) set.seed(223) muestra_1 <- rnorm(80, 0.8, 0.2) muestra_2 <- rnorm(120, 0.8, 0.4) Necesitamos: 1) calcular el valor de la estadística \\(\\lambda\\) de cociente de verosimilitudes, 2) Calcular la distribución de referencia para \\(\\lambda\\) bajo la hipótesis nula y finalmente 3) Ver qué tan extremo es el valor obtenido de \\(\\lambda\\) en relación a la distribución de referencia. crear_log_p <- function(x, y){ # crear log verosim para dos muestras normales independientes. log_p <- function(params){ mu_1 <- params[1] mu_2 <- params[2] sigma_1 <- params[3] sigma_2 <- params[4] log_vero_1 <- dnorm(x, mean = mu_1, sd = sigma_1, log = TRUE) |> sum() log_vero_2 <- dnorm(y, mean = mu_2, sd = sigma_2, log = TRUE) |> sum() log_vero <- log_vero_1 + log_vero_2 #se suman por independiencia log_vero } } log_p <- crear_log_p(muestra_1, muestra_2) crear_log_p_nula <- function(x, y){ log_p <- function(params){ # misma media mu <- params[1] sigma_1 <- params[2] sigma_2 <- params[3] log_vero_1 <- dnorm(x, mean = mu, sd = sigma_1, log = TRUE) |> sum() log_vero_2 <- dnorm(y, mean = mu, sd = sigma_2, log = TRUE) |> sum() log_vero <- log_vero_1 + log_vero_2 #se suman por independiencia log_vero } } log_p_nula <- crear_log_p_nula(muestra_1, muestra_2) Ahora tenemos el problema de que no conocemos las sigma. Estas deben ser estimadas para después calcular el cociente de verosimilitud: res <- optim(c(0, 0, 1, 1), log_p, method = "Nelder-Mead", control = list(fnscale = -1)) res$convergence ## [1] 0 est_mv <- res$par names(est_mv) <- c("mu_1", "mu_2", "sigma_1", "sigma_2") est_mv ## mu_1 mu_2 sigma_1 sigma_2 ## 0.8153471 0.7819913 0.1987545 0.3940484 Y tenemos lambda_1 <- log_p(est_mv) lambda_1 ## [1] -42.76723 Ahora calculamos el máximo bajo el supuesto de la hipótesis nula: res <- optim(c(0, 1, 1), log_p_nula, method = "Nelder-Mead", control = list(fnscale = -1)) res$convergence ## [1] 0 est_mv_nula <- res$par names(est_mv) <- c("mu", "sigma_1", "sigma_2") est_mv_nula ## [1] 0.8062091 0.1989438 0.3948603 y evaluamos lambda_2 <- log_p_nula(est_mv_nula) lambda_2 ## [1] -43.07902 Finalmente, nuestra estadística \\(\\lambda\\) es lambda <- 2 * (lambda_1 - lambda_2) lambda ## [1] 0.6235661 Y ahora necesitamos calcular un valor-\\(p\\). El problema que tenemos en este punto es que bajo la hipótesis nula no están determinados todos los parámetros, así que no podemos simular de manera simple muestras para obtener la distribución de referencia. Podemos sin embargo usar bootstrap paramétrico usando los estimadores de máxima verosimilitud bajo la nula simular_boot <- function(n_1, n_2, est_mv_nula){ x <- rnorm(n_1, est_mv_nula[1], est_mv_nula[2]) y <- rnorm(n_2, est_mv_nula[1], est_mv_nula[3]) list(x = x, y = y) } lambda_nula_sim <- function(est_mv_nula){ muestras <- simular_boot(80, 120, est_mv_nula) x <- muestras$x y <- muestras$y log_p <- crear_log_p(x, y) log_p_nula <- crear_log_p_nula(x, y) est_1 <- optim(c(0,0,1,1), log_p, control = list(fnscale = -1)) est_2 <- optim(c(0,1,1), log_p_nula, control = list(fnscale = -1)) lambda <- 2*(log_p(est_1$par) - log_p_nula(est_2$par)) lambda } lambda_sim <- map_dbl(1:2000, ~ lambda_nula_sim(est_mv_nula = est_mv_nula)) Y graficamos la distribución de referencia junto con el valor de \\(\\lambda\\) que obtuvimos: tibble(lambda = lambda_sim) |> ggplot(aes(x = lambda)) + geom_histogram() + geom_vline(xintercept = lambda, colour = "red") Y claramente los datos son consistentes con medias iguales. El valor-\\(p\\) es mean(lambda_sim > lambda) ## [1] 0.4275 Verificamos una vez más que la distribución de referencia es cercana a una \\(\\chi\\)-cuadrada con un grado de libertad. tibble(lambda = lambda_sim) |> ggplot(aes(sample = lambda)) + geom_qq(distribution = stats::qchisq, dparams = list(df = 1)) + geom_qq_line(distribution = stats::qchisq, dparams = list(df = 1)) Esta es la definición generalizada de las pruebas de cociente de verosimilitudes Definición. Consideramos la hipótesis nula \\(\\theta \\in \\Theta_0\\). La estadística del cociente de verosimilitudes está dada por: \\[\\lambda = 2\\log\\left( \\frac{\\max_{\\theta}\\mathcal{L}(\\theta)}{\\max_{\\theta\\in\\Theta_0}\\mathcal{L}(\\theta)} \\right ) = 2\\log\\left( \\frac{ \\mathcal{L}(\\hat{\\theta})}{\\mathcal{L}(\\hat{\\theta}_0)} \\right)\\] donde \\(\\hat{\\theta}\\) es el estimador de máxima verosimilitud de \\(\\theta\\) y \\(\\hat{\\theta}_0\\) es el estimador de máxima verosimilitud de \\(\\theta\\) cuando restringimos a que \\(\\theta \\in \\Theta_0\\). En nuestro ejemplo anterior, el espacio \\(\\Theta_0\\) era \\(\\{ (\\mu,\\mu,\\sigma_1, \\sigma_2)\\}\\), que es un subconjunto de \\(\\{ (\\mu_1,\\mu_2,\\sigma_1, \\sigma_2)\\}\\). Nótese que el espacio \\(\\Theta_0\\) tiene tres parámetros libres, mientras que el espacio total tiene 4. Aunque podemos usar el bootstrap paramétrico para construir distribuciones de referencia para estas pruebas y calcular un valor-\\(p\\), el siguiente teorema, cuya demostración no es trivial, explica las observaciones que hicimos arriba. Este teorema enuncia la estrategia del enfoque clásico, que utiliza una aproximación asintótica. Valores p para pruebas de cocientes de verosimilitud. Supongamos que \\(\\theta = (\\theta_1,\\theta_2, \\ldots, \\theta_p)\\). Sea \\[\\Theta_0 = \\{\\theta : \\theta_1 = a_1, \\theta_2 = a_2, \\dots, \\theta_q = a_q \\},\\] es decir la hipótesis \\(\\theta \\in \\Theta_0\\) es que los primeros \\(q\\) parámetros de \\(\\theta\\) estan fijos en algún valor. Los otros parámetros no se consideran en esta prueba. Si \\(\\lambda\\) es la estadística de cociente de verosimilitudes de esta prueba, entonces, bajo la nula \\(\\theta \\in \\Theta_0\\) tenemos que la distribución de \\(\\lambda\\) es asintóticamente \\(\\chi\\)-cuadrada con \\(q\\) grados de libertad, denotada por \\(\\chi^2_q\\). El valor-\\(p\\) para esta prueba es \\[P(\\chi^2_{q} > \\lambda)\\] Observaciones: Para hacer cálculos con la distribución \\(\\chi\\)-cuadrada usamos rutinas numéricas (por ejemplo la función pchisq en R). Nótese que \\(p\\) es la dimensión del espacio \\(\\Theta\\) (\\(p\\) parámetros), y que \\(p-q\\) es la dimensión del espacio \\(\\Theta_0\\) (pues \\(q\\) parámetros están fijos), de modo que los grados de libertad son la dimensión de \\(\\Theta\\) menos la dimensión de \\(\\Theta_0\\). En nuestro primer ejemplo (proporción de éxitos) solo teníamos un parámetro. El espacio \\(\\Theta_0\\) es de dimensión 0, así que los grados de libertad son \\(1 = 1 - 0\\) En este último ejemplo donde probamos igualdad de medias, el espacio \\(\\Theta\\) tiene dimensión 4, y el espacio \\(\\Theta_0\\) es de dimensión 3 (tres parámetros libres), por lo tanto los grados de libertad son \\(1 = 4 -3\\). Ejemplo En nuestro ejemplo de prueba de igualdad de medias, usaríamos pchisq(lambda, df =1, lower.tail = FALSE) ## [1] 0.4297252 que es similar al que obtuvimos con la estrategia del bootstrap paramétrico. Errores tipo I y tipo II En algunas ocasiones, en lugar de solamente calcular un valor-\\(p\\) queremos tomar una decisión asociada a distintas hipótesis que consideramos posibles. Por ejemplo, nuestra hipótesis nula podría ser Hipótesis nula \\(H_0\\): Una medicina nueva que estamos probando no es efectiva en reducir el colesterol en pacientes. Y queremos contrastar con una alternativa: Hipótesis alternativa \\(H_A\\): la medicina nueva reduce los niveles de colesterol en los pacientes. La decisión que está detrás de estas pruebas es: si no podemos rechazar la nula, la medicina no sale al mercado. Si rechazamos la nula, entonces la medicina es aprobada para salir al mercado. Para diseñar esta prueba, procedemos como sigue: Definimos cómo recolectar datos \\(X\\) de interés Definimos una estádistica \\(T(X)\\) de los datos. Definimos una región de rechazo \\(R\\) de valores tales que si \\(T(X)\\in R\\), entonces rechazaremos la hipótesis nula (e implícitamente tomaríamos la decisión asociada a la alternativa). Ejecutamos la prueba observando datos \\(X=x\\), calculando \\(T(x)\\), y checando si \\(T(x) \\in R\\). Si esto sucede entonces decimos que rechazamos la hipótesis nula, y tomamos la decisión asociada a la alternativa. Ejemplo. Si tenemos la hipótesis nula \\(p_1=0.5\\) para una proporción, y al alternativa es \\(p_1\\neq 0.5\\), podemos usar la estadística de Wald \\(T(x) = \\frac{\\hat{p_1} - 0.5}{\\hat{\\textsf{ee}}}\\). Podríamos definir la región de rechazo como \\(R = \\{T(x) : |T(x)| > 3 \\}\\) (rechazamos si en valor absoluto la estadística de Wald es mayor que 3). Cuando diseñamos una prueba de este tipo, quisiéramos minimizar dos tipos de errores: Rechazar la hipótesis nula \\(H_0\\) cuando es cierta: Error tipo I No rechazar la hipótesis nula \\(H_0\\) cuando \\(H_0\\) es falsa: Error tipo II La gravedad de cada error depende del problema. En nuestro ejemplo de la medicina, por ejemplo: Un error tipo II resultaría en una medicina efectiva que no sale al mercado, lo que tiene consecuencias financieras (para la farmaceútica) y costos de oportunidad en salud (para la población). Por otra parte, Un error tipo I resultaría en salir al mercado con una medicina que no es efectiva. Esto tiene costos de oportunidad financieros que pueden ser grandes para la sociedad. Todos estos costos dependen, por ejempĺo, de qué tan grave es la enfermedad, qué tan costosa es la medicina, y así sucesivamente. En el enfoque más clásico, los errores tipo I y tipo II generalmente no se balancean según su severidad o probabilidad. En lugar de eso, generalmente se establece un límite para la probabilidad de cometer un error del tipo I (usualmente 5%, por una tradición que no tiene mucho fundamento) En vista de este ejemplo simple, y las observaciones de arriba: Reducir una decisión compleja a una prueba de hipótesis con resultados binarios (rechazar o no) es generalmente erróneo. Las pruebas de hipótesis se usan muchas veces incorrectamente cuando lo más apropiado es usar estimación por intervalos o algo similar que cuantifique la incertidumbre de las estimaciones. Consulta por ejemplo el comunicado de la ASA acerca de p-values y pruebas de hipótesis En el caso de la medicina, por ejemplo, realmente no nos interesa que la medicina sea mejor que un placebo. Nos importa que tenga un efecto considerable en los pacientes. Si estimamos este efecto, incluyendo incertidumbre, tenemos una mejor herramienta para hacer análisis costo-beneficio y tomar la decisión más apropiada. Como dijimos, típicamente se selecciona la región de rechazo de forma que bajo la hipótesis nula la probabilidad de cometer un error tipo I está acotada. Definición. Supongamos que los datos \\(X_1,X_2,\\ldots, X_n\\) provienen de una distribución \\(F_\\theta\\), donde no conocemos \\(\\theta\\). Supongamos que la hipótesis nula es que \\(\\theta = \\theta_0\\) (que llamamos una hipótesis simple). La función de potencia de una prueba con región de rechazo \\(R\\) se define como la probabilidad de rechazar para cada posible valor del parámetro \\(\\theta\\) \\[\\beta(\\theta) = P_\\theta (X\\in R).\\] El tamaño de una prueba se define como el valor \\[\\alpha = \\beta(\\theta_0),\\] es decir, la probabilidad de rechazar la nula (\\(\\theta = \\theta_0\\)) erróneamente. Observación. Esto se generaliza para hipótesis compuestas, donde la nula es que el parámetro \\(\\theta\\) está en un cierto conjunto \\(\\Theta_0\\). Por ejemplo, una hipótesis nula puede ser \\(\\theta < 0.5\\). En este caso, \\(\\alpha\\) se define como el valor más grande que \\(\\beta(\\theta)\\) toma cuando \\(\\theta\\) está en \\(\\Theta_0\\), es decir, la probabilidad de rechazo más grande cuando la hipótesis nula se cumple. Decimos que una prueba tiene nivel de significancia de \\(\\alpha\\) si su tamaño es menor o igual a \\(\\alpha\\). Decimos que la potencia de una prueba es la probabilidad de, correctamente, rechazar la hipótesis nula cuando la alterna es verdadera: \\[\\beta(\\theta_a) = P_{\\theta_a} (X \\in R).\\] Observación: Sería deseable encontrar la prueba con mayor potencia bajo \\(H_a\\), entre todas las pruebas con tamaño \\(\\alpha\\). Esto no es trivial y no siempre existe. Observación: El valor \\(p\\) es el menor tamaño con el que podemos rechazar \\(H_0\\). Ejemplo (Chihara and Hesterberg (2018)) Supongamos que las calificaciones de Enlace de alumnos en México se distribuye aproximadamente como una normal con media 515 y desviación estándar de 120. En una ciudad particular, se quiere decidir si es neceario pedir fondos porque la media de la ciudad es más baja que la nacional. Nuestra hipótesis nula es \\(H_0: \\mu \\geq 515\\) y la alternativa es \\(\\mu < 515\\), así que si rechazamos la nula se pedirían los fondos. Supondremos que la distribución de calificaciones en la ciudad es también aproximadamente normal con desviación estándar de 130. Se plantea tomar una muestra de 100 alumnos, y rechazar si la media muestral \\(\\bar{X}\\) es menor que 505. ¿Cuál es la probabilidad \\(\\alpha\\) de tener un error de tipo I? La función de potencia es \\[\\beta(\\mu) = P_\\mu(\\bar{X} < 505)\\] Restando la media \\(\\mu\\) y estandarizando obtenemos \\[\\beta(\\mu) = P \\left (\\frac{\\bar{X} - \\mu}{130/\\sqrt{100}} < \\frac{505 -\\mu}{130/\\sqrt{100}} \\right )\\] así que \\[\\beta(\\mu) = \\Phi \\left (\\frac{505 -\\mu}{130/\\sqrt{100}}\\right ),\\] donde \\(\\Phi\\) es la función acumulada de la normal estándar. La gráfica de la función potencia es entonces potencia_tbl <- tibble(mu = seq(450, 550, 0.5)) |> mutate(beta = pnorm((505 - mu)/13)) |> # probabilidad de rechazar mutate(nula_verdadera = factor(mu >= 515)) # nula verdadera ggplot(potencia_tbl, aes(x = mu, y = beta, colour = nula_verdadera)) + geom_line() Es decir, si la media \\(\\mu\\) de la ciudad es muy baja, con mucha seguridad rechazamos. Si es relativamente alta entonces no rechazamos. El tamaño de la prueba es el mayor valor de probabilidad de rechazo que se obtiene sobre los valores \\(\\mu\\geq 515\\) (la nula). Podemos calcularlo analíticamente como sigue: Si \\(\\mu \\geq 515\\), entonces \\[\\beta(\\mu) \\leq \\beta(515) = \\Phi\\left (\\frac{505 -515}{130/\\sqrt{100}}\\right ) = \\Phi( - 10 / 13) = \\Phi(-0.7692)\\] que es igual a pnorm(-0.7692) ## [1] 0.2208873 Y este es el tamaño de la prueba. En otras palabras: si la ciudad no está por debajo de la media nacional, hay una probabilidad de 22% de que erróneamente se pidan fondos (al rechazar \\(H_0\\)). Ejemplo Supongamos que los que programan el presupuesto deciden que se requiere tener una probabilidad de a lo más 5% de rechazar erróneamente la hipótesis nula (es decir, pedir fondos cuando en realidad su media no está debajo de la nacional) para poder recibir fondos. ¿Cuál es la región de rechazo que podríamos escoger? En el caso anterior usamos la región \\(\\bar{X}<505\\). Si el tamaño de muestra está fijo en \\(n=100\\) (por presupuesto), entonces tenemos que escoger un punto de corte más extremo. Si la región de rechazo es \\(\\bar{X} < C)\\) entonces tenemos, siguiendo los cálculos anteriores, que \\[0.05 = \\alpha = \\Phi \\left ( \\frac{C -515}{130/\\sqrt{100}}\\right) = \\Phi \\left( \\frac{C- 515}{13} \\right)\\] Buscamos el cuantil 0.05 de la normal estándar, que es z_alpha <- qnorm(0.05) z_alpha ## [1] -1.644854 Y entonces requerimos que \\[\\frac{C- 515}{13} = -1.6448.\\] Despejando obtenemos C <- 13*z_alpha + 515 C ## [1] 493.6169 Así que podemos usar la región \\(\\bar{X} < 493.5\\), que es más estricta que la anterior de \\(\\bar{X} < 505\\). Considera la potencia de la prueba \\(\\beta(\\mu)\\) que vimos arriba. Discute y corre algunos ejemplos para contestar las siguientes preguntas: Recuerda la definición: ¿qué significa \\(\\beta(\\mu)\\)? ¿Qué pasa con la potencia cuando \\(\\mu\\) está más lejos de los valores de la hipótesis nula? ¿Qué pasa con la potencia cuando hay menos variabilidad en la población? ¿Y cuando la muestra es más grande? ¿Qué pasa si hacemos más chico el nivel de significancia? Consideraciones prácticas Algunos recordatorios de lo que hemos visto: Rechazar la nula no quiere decir que la nula es falsa, ni que encotramos un “efecto”. Un valor-\\(p\\) chico tampoco quiere decir que la nula es falsa. Lo que quiere decir es que la nula es poco consistente con los datos que observamos, o que es muy poco probable que la nula produzca los datos que observamos. Rechazar la nula (encontrar un efecto “significativo”) no quiere decir que el efecto tiene importancia práctica. Si la potencia es alta (por ejemplo cuando el tamaño de muestra es grande), puede ser que la discrepancia de los datos con la nula es despreciable, entonces para fines prácticos podríamos trabajar bajo el supuesto de la nula. Por eso en general preferimos hacer estimación que pruebas de hipótesis para entender o resumir los datos y tamaños de las discrepancias. Adicionalmente, muchas de las hipótesis nulas que generalmente se utilizan se pueden rechazar sin datos (por ejemplo, igualdad de proporciones en dos poblaciones reales). Lo que importa es qué tan diferentes son, y qué tan bien podemos estimar sus diferencias. En la literatura, muchas veces parece que “encontrar una cosa interesante” es rechazar una hipótesis nulas con nivel 5% de significancia. Es más importante entender cómo se diseñó el estudio, cómo se recogieron los datos, cuáles fueron las decisiones de análisis que pasar el mítico nivel de 5% Cuando la potencia es baja (por ejemplo porque el tamaño de muestra es muy chico), tenemos que observar diferencias muy grandes para rechazar. Si probamos algo poco factible (por ejemplo, que la vitamina \\(C\\) aumenta la estatura a los adultos), entonces los rechazos generalmente se deben a variabilidad en la muestra (error tipo II). Cuando diseñamos y presentamos resultados de un estudio o análisis, es mejor pensar en describir los datos y su variabilidad, y mostrar estimaciones incluyendo fuentes de incertidumbre, en lugar de intentar resumir con un valor-\\(p\\) o con el resultado de una prueba de hipótesis. Pruebas múltiples En algunas ocasiones se hacen muchas pruebas para “filtrar” las cosas que son interesantes y las que no. Por ejemplo, cuando comparamos miles de genes entre dos muestras (la nula es que son similares). Si cada prueba se conduce a un nivel \\(\\alpha\\), la probablilidad de tener al menos un rechazo falso (un error tipo I) es considerablemente más alta que \\(\\alpha\\). Por ejemplo, si repetimos una prueba de hipótesis con nivel \\(\\alpha\\) con muestras independientes, la probabilidad de tener al menos un rechazo falso es \\(1-(1-\\alpha)^n\\), que es muy cercano a uno si \\(n\\) es grande (¿cómo derivas esta fórmula?). Por ejemplo, si \\(\\alpha = 0.05\\) y \\(n = 100\\), con más de 99% probabilidad tendremos al menos un rechazo falso, o un “hallazgo” falso. Sin \\(n\\) es muy grande, varios de los hallazgos que encontremos serán debidos a variabilidad muestral. Puedes ver en (Wasserman 2013), sección 10.7 métodos conservadores como corrección de Bonferroni (sólo rechazar cuando el valor-\\(p\\) es menor a \\(0.05/n\\)), o la técnica más moderna de control de tasa de descubrimientos falsos (FDR). Cuando estamos en una situación como esta (que es más retadora en cuanto a análisis), sin embargo, sugerimos usar estimaciones que tomen cuenta todos los datos con regularización apropiada: por ejemplo, en lugar de trabajar con cada muestra por separado, intentamos construir un modelo para el proceso completo de muestreo. Una posibilidad son modelos jerárquicos bayesianos. Ver por ejemplo (Gelman, Hill, and Yajima 2012). Referencias "],["introducción-a-inferencia-bayesiana-1.html", "Sección 10 Introducción a inferencia bayesiana Un primer ejemplo completo de inferencia bayesiana Ejemplo: estimando una proporción Ejemplo: observaciones uniformes Probabilidad a priori Análisis conjugado Pasos de un análisis de datos bayesiano Verificación predictiva posterior Predicción", " Sección 10 Introducción a inferencia bayesiana Para esta sección seguiremos principalmente Kruschke (2015). Adicionalmente puedes ver la sección correspondiente de Chihara and Hesterberg (2018). En las secciones anteriores estudiamos el método de máxima verosimilitud y métodos de remuestreo. Esto lo hemos hecho para estimar parámetros, y cuantificar la incertidumbre qué tenemos acerca de valores poblacionales. La inferencia bayesiana tiene objetivos similares. Igual que en máxima verosimilitud, la inferencia bayesiana comienza con modelos probabilísticos y observaciones. En contraste con máxima verosimilitud, la inferencia bayesiana está diseñada para incorporar información previa o de expertos que tengamos acerca de los parámetros de interés. La inferencia bayesiana cubre como caso particular métodos basados en máxima verosimilitud. El concepto probabilístico básico que utilizamos para construir estos modelos y la inferencia es el de probabilidad condicional: la probabilidad de que ocurran ciertos eventos dada la información disponible del fenómeno que nos interesa. Un primer ejemplo completo de inferencia bayesiana Consideremos el siguiente problema: Nos dan una moneda, y solo sabemos que la moneda puede tener probabilidad \\(3/5\\) de tirar sol (está cargada a sol) o puede ser una moneda cargada a águila, con probabilidad \\(2/5\\) de tirar sol. Vamos a lanzar la moneda dos veces y observamos su resultado (águila o sol). Queremos decir algo acerca de qué tan probable es que hayamos tirado la moneda cargada a sol o la moneda cargada a águila. En este caso, tenemos dos variables: \\(X\\), que cuenta el número de soles obtenidos en el experimento aleatorio, y \\(\\theta\\), que da la probabilidad de que un volado resulte en sol (por ejemplo, si la moneda es justa entonces \\(\\theta = 0.5\\)). ¿Qué cantidades podríamos usar para evaluar qué moneda es la que estamos usando? Si hacemos el experimento, y tiramos la moneda 2 veces, podríamos considerar la probabilidad \\[P(\\theta = 0.4 | X = x)\\] donde \\(x\\) es el número de soles que obtuvimos en el experimento. Esta es la probabilidad condicional de que estemos tirando la moneda con probabilidad de sol 2/5 dado que observamos \\(x\\) soles. Por ejemplo, si tiramos 2 soles, deberíamos calcular \\[P(\\theta=0.4|X=2).\\] ¿Cómo calculamos esta probabilidad? ¿Qué sentido tiene? Usando reglas de probabildad (regla de Bayes en particular), podríamos calcular \\[P(\\theta=0.4|X=2) = \\frac{P(X=2 | \\theta = 0.4) P(\\theta =0.4)}{P(X=2)}\\] Nota que en el numerador uno de los factores, \\(P(X=2 | \\theta = 0.4),\\) es la verosimilitud. Así que primero necesitamos la verosimilitud: \\[P(X=2|\\theta = 0.4) = (0.4)^2 = 0.16.\\] La novedad es que ahora tenemos que considerar la probabilidad \\(P(\\theta = 0.4)\\). Esta cantidad no la habíamos encontrado antes. Tenemos que pensar entonces que este parámetro es una cantidad aleatoria, y puede tomar dos valores \\(\\theta=0.4\\) ó \\(\\theta = 0.6\\). Considerar esta cantidad como aleatoria requiere pensar, en este caso, en cómo se escogió la moneda, o qué sabemos acerca de las monedas que se usan para este experimento. Supongamos que en este caso, nos dicen que la moneda se escoge al azar de una bolsa donde hay una proporción similar de los dos tipos de moneda (0.4 ó 0.6). Es decir el espacio parametral es \\(\\Theta = \\{0.4, 0.6\\},\\) y las probabilidades asociadas a cada posibilidad son las mismas. Es decir, tenemos \\[P(\\theta = 0.4) = P(\\theta = 0.6) =0.5,\\] que representa la probabilidad de escoger de manera aleatoria la moneda con una carga en particular. Ahora queremos calcular \\(P(X=2)\\), pero con el trabajo que hicimos esto es fácil. Pues requiere usar reglas de probabilidad usuales para hacerlo. Podemos utilizar probabilidad total \\[\\begin{align} P(X) &= \\sum_{\\theta \\in \\Theta} P(X, \\theta)\\\\ &= \\sum_{\\theta \\in \\Theta} P(X\\, |\\, \\theta) P(\\theta), \\end{align}\\] lo cual en nuestro ejemplo se traduce en escribir \\[ P(X=2) = P(X=2|\\theta = 0.4)P(\\theta = 0.4) + P(X=2|\\theta=0.6)P(\\theta =0.6),\\] por lo que obtenemos \\[P(X=2) = 0.16(0.5) + 0.36(0.5) = 0.26.\\] Finalmente la probabilidad de haber escogido la moneda con carga \\(2/5\\) dado que observamos dos soles en el lanzamiento es \\[P(\\theta=0.4|X=2) = \\frac{0.16(0.5)}{0.26} \\approx 0.31.\\] Es decir, la probabilidad posterior de que estemos tirando la moneda \\(2/5\\) baja de 0.5 (nuestra información inicial) a 0.31. Este es un ejemplo completo, aunque muy simple, de inferencia bayesiana. La estrategia de inferencia bayesiana implica tomar decisiones basadas en las probabilidades posteriores. Finalmente, podríamos hacer predicciones usando la posterior predictiva. Si \\({X}_{nv}\\) es una nueva tirada adicional de la moneda que estamos usando, nos interesaría saber: \\[P({X}_{nv}=\\mathsf{sol}\\, | \\, X=2)\\] Notemos que un volado adicional es un resultado binario. Por lo que podemos calcular observando que \\(P({X}_{nv}|X=2, \\theta)\\) es una variable Bernoulli con probabilidad \\(\\theta\\), que puede valer 0.4 ó 0.6. Como tenemos las probabilidades posteriores \\(P(\\theta|X=2)\\) podemos usar probabilidad total, condicionado en \\(X=2\\): \\[\\begin{align*} P({X}_{nv}=\\mathsf{sol}\\, | \\, X=2) & = \\sum_{\\theta \\in \\Theta} P({X}_{nv}=\\mathsf{sol}, \\theta \\, | \\, X=2) & \\text{(probabilidad total)}\\\\ &= \\sum_{\\theta \\in \\Theta} P({X}_{nv}=\\mathsf{sol}\\, | \\theta , X=2) P(\\theta \\, | \\, X=2) & \\text{(probabilidad condicional)}\\\\ &= \\sum_{\\theta \\in \\Theta} P({X}_{nv}=\\mathsf{sol}\\, | \\theta ) P(\\theta \\, | \\, X=2), & \\text{(independencia condicional)} \\end{align*}\\] lo que nos da el siguiente cálculo \\[P(X_{nv}=\\mathsf{sol}\\, |\\, \\theta=0.4) \\, P(\\theta=0.4|X=2) \\, +\\, P(X_{nv}=\\mathsf{sol}|\\theta = 0.6) \\, P(\\theta =0.6|X=2)\\] Es decir, promediamos ponderando con las probabilidades posteriores. Por lo tanto obtenemos \\[P(X_{nv} = \\mathsf{sol}|X=2) = 0.4 ( 0.31) + 0.6 (0.69) = 0.538.\\] Observación 0 Nótese que en contraste con máxima verosimilitud, en este ejemplo cuantificamos con probabilidad condicional la incertidumbre de los parámetros que no conocemos. En máxima verosimilitud esta probabilidad no tiene mucho sentido, pues nunca consideramos el parámetro desconocido como una cantidad aleatoria. Observación 1 Nótese el factor \\(P(X=2)\\) en la probabilidad posterior puede entenderse como un factor de normalización. Notemos que los denominadores en la distribución posterior son \\[P(X=2 | \\theta = 0.4) P(\\theta =0.4) = 0.16(0.5) = 0.08,\\] y \\[P(X=2 | \\theta = 0.6) P(\\theta =0.6) = 0.36(0.5) = 0.18.\\] Las probabilidades posteriores son proporcionales a estas dos cantidades, y como deben sumar uno, entonces normalizando estos dos números (dividiendo entre su suma) obtenemos las probabilidades. Observación 2 La nomenclatura que usamos es la siguiente: Como \\(X\\) son los datos observados, llamamos a \\(P(X|\\theta)\\) la verosimilitud, o modelo de los datos. A \\(P(\\theta)\\) le llamamos la distribución inicial o previa. La distribución que usamos para hacer inferencia \\(P(\\theta|X)\\) es la distribución final o posterior. Para utilizar inferencia bayesiana, hay que hacer supuestos para definir las primeras dos partes del modelo. La parte de iniciales o previas está ausente de enfoques como máxima verosimlitud usual. Observación 3 ¿Cómo decidimos las probabilidades iniciales, por ejemplo \\(P(\\theta=0.4)\\) ? Quizá es un supuesto y no tenemos razón para pensar que se hace de otra manera. O quizá conocemos el mecanismo concreto con el que se selecciona la moneda. Discutiremos esto más adelante. Observación 4 ¿Cómo decidimos el modelo de los datos? Aquí típicamente también tenemos que hacer algunos supuestos, aunque algunos de estos pueden estar basados en el diseño del estudio, por ejemplo. Igual que cuando usamos máxima verosimilitud, es necesario checar que nuestro modelo ajusta razonablemente a los datos. Ejercicio Cambia distintos parámetros del número de soles observados, las probabilidades de sol de las monedas, y las probabilidades iniciales de selección de las monedas. n_volados <- 2 # posible valores del parámetro desconocido theta = c(0.4, 0.6) # probabilidades iniciales probs_inicial <- tibble(moneda = c(1, 2), theta = theta, prob_inicial = c(0.5, 0.5)) probs_inicial ## # A tibble: 2 × 3 ## moneda theta prob_inicial ## <dbl> <dbl> <dbl> ## 1 1 0.4 0.5 ## 2 2 0.6 0.5 # verosimilitud crear_verosim <- function(no_soles){ verosim <- function(theta){ # prob de observar no_soles en 2 volados con probabilidad de sol theta dbinom(no_soles, n_volados, theta) } verosim } # evaluar verosimilitud verosim <- crear_verosim(2) # ahora usamos regla de bayes para hacer tabla de probabilidades tabla_inferencia <- probs_inicial |> mutate(verosimilitud = map_dbl(theta, verosim)) |> mutate(inicial_x_verosim = prob_inicial * verosimilitud) |> # normalizar mutate(prob_posterior = inicial_x_verosim / sum(inicial_x_verosim)) tabla_inferencia |> mutate(moneda_obs = moneda) |> select(moneda_obs, theta, prob_inicial, verosimilitud, prob_posterior) ## # A tibble: 2 × 5 ## moneda_obs theta prob_inicial verosimilitud prob_posterior ## <dbl> <dbl> <dbl> <dbl> <dbl> ## 1 1 0.4 0.5 0.16 0.308 ## 2 2 0.6 0.5 0.36 0.692 ¿Qué pasa cuando el número de soles es 0? ¿Cómo cambian las probabilidades posteriores de cada moneda? Incrementa el número de volados, por ejemplo a 10. ¿Qué pasa si observaste 8 soles, por ejemplo? ¿Y si observaste 0? ¿Qué pasa si cambias las probabilidades iniciales (por ejemplo incrementas la probabilidad inicial de la moneda 1 a 0.9)? Justifica las siguientes aseveraciones (para este ejemplo): Las probabilidades posteriores o finales son una especie de punto intermedio entre verosimilitud y probablidades iniciales. Si tenemos pocas observaciones, las probabilidades posteriores son similares a las iniciales. Cuando tenemos muchos datos, las probabilidades posteriores están más concentradas, y no es tan importante la inicial. Si la inicial está muy concentrada en algún valor, la posterior requiere de muchas observaciones para que se pueda concentrar en otros valores diferentes a los de la inicial. Ahora resumimos los elementos básicos de la inferencia bayesiana, que son relativamente simples: Inferencia bayesiana. Con la notación de arriba: Como \\(X\\) son los datos observados, llamamos a \\(P(X|\\theta)\\) la verosimilitud, proceso generador de datos o modelo de los datos. El factor \\(P(\\theta)\\) le llamamos la distribución inicial o previa. La distribución que usamos para hacer inferencia \\(P(\\theta|X)\\) es la distribución final o posterior Hacemos inferencia usando la ecuación \\[P(\\theta | X) = \\frac{P(X | \\theta) P(\\theta)}{P(X)}\\] que también escribimos: \\[P(\\theta | X) \\propto P(X | \\theta) P(\\theta)\\] donde \\(\\propto\\) significa “proporcional a”. No ponemos \\(P(X)\\) pues como vimos arriba, es una constante de normalización. En estadística Bayesiana, las probablidades posteriores \\(P(\\theta|X)\\) dan toda la información que necesitamos para hacer inferencia. ¿Cuándo damos probablidad alta a un parámetro particular \\(\\theta\\)? Cuando su verosimilitud es alta y/o cuando su probabilidad inicial es alta. De este modo, la posterior combina la información inicial que tenemos acerca de los parámetros con la información en la muestra acerca de los parámetros (verosimilitud). Podemos ilustrar como sigue: Ejemplo: estimando una proporción Consideremos ahora el problema de estimar una proporción \\(\\theta\\) de una población dada usando una muestra iid \\(X_1,X_2,\\ldots, X_n\\) de variables Bernoulli. Ya sabemos calcular la verosimilitud (el modelo de los datos): \\[P(X_1=x_1,X_2 =x_2,\\ldots, X_n=x_n|\\theta) = \\theta^k(1-\\theta)^{n-k},\\] donde \\(k = x_1 + x_2 +\\cdots + x_k\\) es el número de éxitos que observamos. Ahora necesitamos una distribución inicial o previa \\(P(\\theta)\\). Aunque esta distribución puede tener cualquier forma, supongamos que nuestro conocimiento actual podemos resumirlo con una distribución \\(\\mathsf{Beta}(3, 3)\\): \\[P(\\theta) \\propto \\theta^2(1-\\theta)^2.\\] La constante de normalización es 1/30, pero no la requerimos. Podemos simular para examinar su forma: sim_inicial <- tibble(theta = rbeta(10000, 3, 3)) ggplot(sim_inicial) + geom_histogram(aes(x = theta, y = ..density..), bins = 15) De modo que nuestra información inicial es que la proporción puede tomar cualquier valor entre 0 y 1, pero es probable que tome un valor no tan lejano de 0.5. Por ejemplo, con probabilidad 0.95 creemos que \\(\\theta\\) está en el intervalo quantile(sim_inicial$theta, c(0.025, 0.975)) |> round(2) ## 2.5% 97.5% ## 0.14 0.85 Es difícil justificar en abstracto por qué escogeriamos una inicial con esta forma. Aunque esto los detallaremos más adelante, puedes pensar, por el momento, que alguien observó algunos casos de esta población, y quizá vio tres éxitos y tres fracasos. Esto sugeriría que es poco probable que la probablidad \\(\\theta\\) sea muy cercana a 0 o muy cercana a 1. Ahora podemos construir nuestra posterior. Tenemos que \\[P(\\theta| X_1=x_1, \\ldots, X_n=x_n) \\propto P(X_1 = x_1,\\ldots X_n=x_n | \\theta)P(\\theta) = \\theta^{k+2}(1-\\theta)^{n-k + 2}\\] donde la constante de normalización no depende de \\(\\theta\\). Como \\(\\theta\\) es un parámetro continuo, la expresión de la derecha nos debe dar una densidad posterior. Supongamos entonces que hicimos la prueba con \\(n = 30\\) (número de prueba) y observamos 19 éxitos. Tendríamos entonces \\[P(\\theta | S_n = 19) \\propto \\theta^{19 + 2} (1-\\theta)^{30-19 +2} = \\theta^{21}(1-\\theta)^{13}\\] La cantidad de la derecha, una vez que normalizemos por el número \\(P(X=19)\\), nos dará una densidad posterior (tal cual, esta expresion no integra a 1). Podemos obtenerla usando cálculo, pero recordamos que una distribución \\(\\mathsf{\\mathsf{Beta}}(a,b)\\) tiene como fórmula \\[\\frac{1}{B(a,b)} \\theta^{a-1}(1-\\theta)^{b-1}\\] Concluimos entonces que la posterior tiene una distribución \\(\\mathsf{Beta}(22, 14)\\). Podemos simular de la posterior usando código estándar para ver cómo luce: sim_inicial <- sim_inicial |> mutate(dist = "inicial") sim_posterior <- tibble(theta = rbeta(10000, 22, 14)) |> mutate(dist = "posterior") sims <- bind_rows(sim_inicial, sim_posterior) ggplot(sims, aes(x = theta, fill = dist)) + geom_histogram(aes(x = theta), bins = 30, alpha = 0.5, position = "identity") La posterior nos dice cuáles son las posibilidades de dónde puede estar el parámetro \\(\\theta\\). Nótese que ahora excluye prácticamente valores más chicos que 0.25 o mayores que 0.9. Esta distribución posterior es el objeto con el que hacemos inferencia: nos dice dónde es creíble que esté el parámetro \\(\\theta\\). Podemos resumir de varias maneras. Por ejemplo, si queremos un estimador puntual usamos la media posterior: sims |> group_by(dist) |> summarise(theta_hat = mean(theta) |> round(3)) ## # A tibble: 2 × 2 ## dist theta_hat ## <chr> <dbl> ## 1 inicial 0.503 ## 2 posterior 0.61 Nota que el estimador de máxima verosimilitud es \\(\\hat{p} = 19/30 = 0.63\\), que es ligeramente diferente de la media posterior. ¿Por qué? Y podemos construir intervalos de percentiles, que en esta situación suelen llamarse intervalos de credibilidad, por ejemplo: f <- c(0.025, 0.975) sims |> group_by(dist) |> summarise(cuantiles = quantile(theta, f) |> round(2), f = f) |> pivot_wider(names_from = f, values_from = cuantiles) ## # A tibble: 2 × 3 ## # Groups: dist [2] ## dist `0.025` `0.975` ## <chr> <dbl> <dbl> ## 1 inicial 0.14 0.85 ## 2 posterior 0.45 0.76 El segundo renglón nos da un intervalo posterior para \\(\\theta\\) de credibilidad 95%. En inferencia bayesiana esto sustituye a los intervalos de confianza. El intervalo de la inicial expresa nuestras creencias a priori acerca de \\(\\theta\\). Este intervalo es muy amplio (va de 0.15 a 0.85) El intervalo de la posterior actualiza nuestras creencias acerca de \\(\\theta\\) una vez que observamos los datos, y es considerablemente más angosto y por lo tanto informativo. Puedes experimentar en esta shiny app con diferentes iniciales, número de volados y observación de éxitos. Observaciones: Nótese que escogimos una forma analítica fácil para la inicial, pues resultó así que la posterior es una distribución beta. No siempre es así, y veremos qué hacer cuando nuestra inicial no es de un tipo “conveniente”. Como tenemos la forma analítica de la posterior, es posible hacer los cálculos de la media posterior, por ejemplo, integrando la densidad posterior a mano. Esto generalmente no es factible, y en este ejemplo preferimos hacer una aproximación numérica. En este caso particular es posible usando cálculo, y sabemos que la media de una \\(\\mathsf{\\mathsf{Beta}}(a,b)\\) es \\(a/(a+b)\\), de modo que nuestra media posterior es \\[\\hat{\\mu} = (19 + 2)/(30 + 4) = 21/34 = 0.617 \\] que podemos interpretar como sigue: para calcular la media posterior, a nuestras \\(n\\) pruebas iniciales agregamos 4 pruebas adicionales fijas, con 2 éxitos y 2 fracasos, y calculamos la proporción usual de éxitos. Repite el análisis considerando en general \\(n\\) pruebas, con \\(k\\) éxitos. Utiliza la misma distribución inicial. Lo mismo aplica para el intervalo de 95% (¿cómo se calcularía integrando?). También puedes usar la aproximación de R, por ejemplo: qbeta(0.025, shape1 = 22, shape2 = 14) |> round(2) ## [1] 0.45 qbeta(0.975, shape1 = 22, shape2 = 14) |> round(2) ## [1] 0.76 Ejemplo: observaciones uniformes Ahora regresamos al problema de estimación del máximo de una distribución uniforme. En este caso, consideraremos un problema más concreto. Supongamos que hay una lotería (tipo tradicional) en México y no sabemos cuántos números hay. Obtendremos una muestra iid de \\(n\\) números, y haremos una aproximación continua, suponiendo que \\[X_i \\sim U[0,\\theta]\\] La verosimilitud es entonces \\[P(X_1,\\ldots, X_n|\\theta) = \\theta^{-n},\\] cuando \\(\\theta\\) es mayor que todas las \\(X_i\\), y cero en otro caso. Necesitaremos una inicial \\(P(\\theta)\\). Por la forma que tiene la verosimilitud, podemos intentar una distribución Pareto, que tiene la forma \\[P(\\theta) = \\frac{\\alpha \\theta_0^\\alpha}{\\theta^{\\alpha + 1}}\\] con soporte en \\([\\theta_0,\\infty]\\). Tenemos que escoger entonces el mínimo \\(\\theta_0\\) y el parámetro \\(\\alpha\\). En primer lugar, como sabemos que es una lotería nacional, creemos que no puede haber menos de unos 300 mil números, así que \\(\\theta_0 = 300\\). La función acumulada de la pareto es \\(1- (300/\\theta)^\\alpha\\), así que si \\(\\alpha = 1.1\\) el cuantil 99% es: alpha <- 1.1 (300/(0.01)^(1/alpha)) ## [1] 19738 es decir, alrededor de 20 millones de números. Creemos que es poco probable que el número de boletos sea mayor a esta cota. Nótese ahora que la posterior cumple (multiplicando verosimilitud por inicial): \\[P(\\theta|X_1,\\ldots, X_n |\\theta) \\propto \\theta^{-(n + 2.1)}\\] para \\(\\theta\\) mayor que el máximo de las \\(X_n\\)’s y 300, y cero en otro caso. Esta distribución es pareto con \\(\\theta_0' = \\max\\{300, X_1,\\ldots, X_n\\}\\) y \\(\\alpha' = n + 1.1\\) Una vez planteado nuestro modelo, veamos los datos. Obtuvimos la siguiente muestra de números: loteria_tbl <- read_csv("data/nums_loteria_avion.csv", col_names = c("id", "numero")) |> mutate(numero = as.integer(numero)) set.seed(334) muestra_loteria <- sample_n(loteria_tbl, 25) |> mutate(numero = numero/1000) muestra_loteria |> as.data.frame() |> head() ## id numero ## 1 87 348.341 ## 2 5 5851.982 ## 3 40 1891.786 ## 4 51 1815.455 ## 5 14 5732.907 ## 6 48 3158.414 Podemos simular de una Pareto como sigue: rpareto <- function(n, theta_0, alpha){ # usar el método de inverso de distribución acumulada u <- runif(n, 0, 1) theta_0 / (1 - u)^(1/alpha) } Simulamos de la inicial: sims_pareto_inicial <- tibble( theta = rpareto(20000, 300, 1.1 ), dist = "inicial") Y con los datos de la muestra, simulamos de la posterior: sims_pareto_posterior <- tibble( theta = rpareto(20000, max(c(300, muestra_loteria$numero)), nrow(muestra_loteria) + 1.1), dist = "posterior") sims_theta <- bind_rows(sims_pareto_inicial, sims_pareto_posterior) ggplot(sims_theta) + geom_histogram(aes(x = theta, fill = dist), bins = 70, alpha = 0.5, position = "identity", boundary = max(muestra_loteria$numero)) + xlim(0, 15000) + scale_y_sqrt() + geom_rug(data = muestra_loteria, aes(x = numero)) Nótese que cortamos algunos valores de la inicial en la cola derecha: un defecto de esta distribución inicial, con una cola tan larga a la derecha, es que pone cierto peso en valores que son poco creíbles y la vuelve poco apropiada para este problema. Regresaremos más adelante a este problema. Si obtenemos percentiles, obtenemos el intervalo f <- c(0.025, 0.5, 0.975) sims_theta |> group_by(dist) |> summarise(cuantiles = quantile(theta, f) |> round(2), f = f) |> pivot_wider(names_from = f, values_from = cuantiles) ## # A tibble: 2 × 4 ## # Groups: dist [2] ## dist `0.025` `0.5` `0.975` ## <chr> <dbl> <dbl> <dbl> ## 1 inicial 307. 569. 8449. ## 2 posterior 5858. 6010. 6732. Estimamos entre 5.8 millones y 6.7 millones de boletos. El máximo en la muestra es de max(muestra_loteria$numero) ## [1] 5851.982 Escoger la distribución pareto como inicial es conveniente y nos permitió resolver el problema sin dificultad, pero por su forma vemos que no necesariamente es apropiada para el problema por lo que señalamos arriba. Nos gustaría, por ejemplo, poner una inicial como la siguiente qplot(rgamma(2000, 5, 0.001), geom="histogram", bins = 20) + scale_x_continuous(breaks = seq(1000, 15000, by = 2000)) Sin embargo, los cálculos no son tan simples en este caso, pues la posterior no tiene un forma reconocible. Tendremos que usar otras estrategias de simulación para ejemplos como este (Monte Carlo por medio de Cadenas de Markov, que veremos más adelante). Probabilidad a priori La inferencia bayesiana es conceptualmente simple: siempre hay que calcular la posterior a partir de verosimilitud (modelo de datos) y distribución inicial o a priori. Sin embargo, una crítica usual que se hace de la inferencia bayesiana es precisamente que hay que tener esa información inicial, y que distintos analistas llegan a distintos resultados si tienen información inicial distinta. Eso realmente no es un defecto, es una ventaja de la inferencia bayesiana. Los datos y los problemas que queremos resolver no viven en un vacío donde podemos creer que la estatura de las personas, por ejemplo, puede variar de 0 a mil kilómetros, el número de boletos de una lotería puede ir de 2 o 3 boletos o también quizá 500 millones de boletos, o la proporción de personas infectadas de una enfermedad puede ser de unos cuantos hasta miles de millones. En todos estos casos tenemos cierta información inicial que podemos usar para informar nuestras estimaciones. Esta información debe usarse. Antes de tener datos, las probabilidades iniciales deben ser examinadas en términos del conocimiento de expertos. Las probabilidades iniciales son supuestos que hacemos acerca del problema de interés, y también están sujetas a críticas y confrontación con datos. Análisis conjugado Los dos ejemplos que hemos visto arriba son ejemplos de análisis conjugado: (Beta-bernoulli) Si las observaciones \\(X_i\\) son \\(\\mathsf{Bernoulli}(p)\\) (\\(n\\) fija) queremos estimar \\(p\\), y tomamos como distribución inicial para \\(p\\) una \\(\\mathsf{Beta}(a,b)\\), entonces la posterior para \\(p\\) cuando \\(S_n=k\\) es \\(\\mathsf{Beta}(k + a, n - k + b)\\), donde \\(S_n = X_1 + X_2 +\\cdots +X_n\\). Y más en general: (Beta-binomial) Si las observaciones \\(X_i, i=1,2,\\ldots, m\\) son \\(\\mathsf{Binomial}(n_i, p)\\) (\\(n_i\\)’s fijas) independientes, queremos estimar \\(p\\), y tomamos como distribución inicial para \\(p\\) una \\(\\mathsf{Beta}(a,b)\\), entonces la posterior para \\(p\\) cuando \\(S_m=k\\) es \\(\\mathsf{Beta}(k + a, n - k + b)\\), donde \\(S_m = X_1 + X_2 +\\cdots +X_m\\) y \\(n= n_1+n_2+\\cdots+n_m\\) También aplicamos: (Uniforme-Pareto) Si el modelo de datos \\(X_i\\) es uniforme \\(\\mathsf{U}[0,\\theta]\\) (\\(n\\) fija), queremos estimar \\(\\theta\\), y tomamos como distribución inicial para \\(\\theta\\) una Pareto \\((\\theta_0, \\alpha)\\), entonces la posterior para \\(p\\) si el máximo de las \\(X_i\\)’s es igual a \\(M\\) es Pareto con parámetros \\((\\max\\{\\theta_0, M\\}, \\alpha + n)\\). Nótese que en estos casos, dada una forma de la verosimilitud, tenemos una familia conocida de iniciales tales que las posteriores están en la misma familia. Estos modelos son convenientes porque podemos hacer simulaciones de la posterior de manera fácil, o usar sus propiedades teóricas. Otro ejemplo típico es el modelo normal-normal: (Normal-normal) Si \\(X_i\\sim \\mathsf{N}(\\mu,\\sigma)\\), con \\(\\sigma\\) conocida, y tomamos como distribución inicial para \\(\\mu \\sim \\mathsf{N}(\\mu_0,\\sigma_0)\\), y definimos la precisión \\(\\tau\\) como el inverso de la varianza \\(\\sigma^2\\), entonces la posterior de \\(\\mu\\) es Normal con media \\((1-\\lambda) \\mu_0 + \\lambda\\overline{x}\\), y precisión \\(\\tau_0 + n\\tau\\), donde \\(\\lambda = \\frac{n\\tau}{\\tau_0 + n\\tau}\\) Completa cuadrados para mostrar las fórmulas del modelo normal-normal con varianza conocida. Más útil es el siguiente modelo: (Normal-Gamma inverso) Sean \\(X_i\\sim \\mathsf{N}(\\mu, \\sigma)\\). Queremos estimar \\(\\mu\\) y \\(\\sigma\\). Tomamos como distribuciones iniciales (dadas por 4 parámetros: \\(\\mu_0, n_0, \\alpha,\\beta\\)): \\(\\tau = \\frac{1}{\\sigma^2} \\sim \\mathsf{Gamma}(\\alpha,\\beta)\\) \\(\\mu|\\sigma\\) es normal con media \\(\\mu_0\\) y varianza \\(\\sigma^2 / {n_0}\\) , y \\(p(\\mu, \\sigma) = p(\\mu|\\sigma)p(\\sigma)\\) Entonces la posterior es: \\(\\tau|x\\) es \\(\\mathsf{Gamma}(\\alpha', \\beta')\\), con \\(\\alpha' = \\alpha + n/2\\), \\(\\beta' = \\beta + \\frac{1}{2}\\sum_{i=1}^{n}(x_{i} - \\bar{x})^2 + \\frac{nn_0}{n+n_0}\\frac{({\\bar{x}}-\\mu_{0})^2}{2}\\) \\(\\mu|\\sigma,x\\) es normal con media \\(\\mu' = \\frac{n_0\\mu_{0}+n{\\bar{x}}}{n_0 +n}\\) y varianza \\(\\sigma^2/({n_0 +n})\\). \\(p(\\mu,\\sigma|x) = p(\\mu|x,\\sigma)p(\\sigma|x)\\) Observaciones Nótese que este último ejemplo tiene más de un parámetro. En estos casos, el objeto de interés es la posterior conjunta de los parámetros \\(p(\\theta_1,\\theta_2,\\cdots, \\theta_p|x)\\). Este último ejemplo es relativamente simple pues por la selección de iniciales, para simular de la conjunta de \\(\\mu\\) y \\(\\tau\\) podemos simular primero \\(\\tau\\) (o \\(\\sigma\\)), y después usar este valor para simular de \\(\\mu\\): el par de valores resultantes son una simulación de la conjunta. Los parámetros \\(\\alpha,\\beta\\) para la inicial de \\(\\tau\\) pueden interpretarse como sigue: \\(\\sqrt{\\beta/\\alpha}\\) es un valor “típico” a priori para la varianza poblacional, y \\(a\\) indica qué tan seguros estamos de este valor típico. Nótese que para que funcionen las fórmulas de la manera más simple, escogimos una dependencia a priori entre la media y la precisión: \\(\\tau = \\sigma^{-2}\\) indica la escala de variabilidad que hay en la población, la incial de la media tiene varianza \\(\\sigma^2/n_0\\). Si la escala de variabilidad de la población es más grande, tenemos más incertidumbre acerca de la localización de la media. Aunque esto tiene sentido en algunas aplicaciones, y por convenviencia usamos esta familia conjugada, muchas veces es preferible otro tipo de especificaciones para las iniciales: por ejemplo, la media normal y la desviación estándar uniforme, o media normal, con iniciales independientes. Sin embargo, estos casos no son tratables con análisis conjugado (veremos más adelante cómo tratarlos con MCMC). Ejemplo Supongamos que queremos estimar la estatura de los cantantes de tesitura tenor con una muestra iid de tenores de Estados Unidos. Usaremos el modelo normal de forma que \\(X_i\\sim \\mathsf{N}(\\mu, \\sigma^2)\\). Una vez decidido el modelo, tenemos que poner distribución inicial para los parámetros \\((\\mu, \\sigma^2)\\). Comenzamos con \\(\\sigma^2\\). Como está el modelo, esta inicial debe estar dada para la precisión \\(\\tau\\), pero podemos simular para ver cómo se ve nuestra inicial para la desviación estándar. En la población general la desviación estándar es alrededor de 7 centímetros # Comenzamos seleccionando un valor que creemos típico para la desviación estándar sigma_0 <- 7 # seleccionamos un valor para a, por ejemplo: si es más chico sigma tendrá más # disperisón a <- 3 # ponemos 7 = sqrt(b/a) -> b = a * 64 b <- a * sigma_0 ^ 2 c(a = a, b = b) ## a b ## 3 147 Ahora simulamos para calcular cuantiles tau <- rgamma(1000, a, b) quantile(tau, c(0.05, 0.95)) ## 5% 95% ## 0.005781607 0.042170161 sigma <- 1 / sqrt(tau) mean(sigma) ## [1] 8.002706 quantile(sigma, c(0.05, 0.95)) ## 5% 95% ## 4.869653 13.151520 Que es dispersión considerable: con poca probabilidad la desviación estándar es menor a 4 centímetros, y también creemos que es poco creíble la desviación estándar sea de más de 13 centímetros. Comenzamos con \\(\\mu\\). Sabemos, por ejemplo, que con alta probabilidad la media debe ser algún número entre 1.60 y 1.80. Podemos investigar: la media nacional en estados unidos está alrededor de 1.75, y el percentil 90% es 1.82. Esto es variabilidad en la población: debe ser muy poco probable, por ejemplo, que la media de tenores sea 1.82 Quizá los cantantes tienden a ser un poco más altos o bajos que la población general, así que podríamos agregar algo de dispersión. Podemos establecer parámetros y simular de la marginal a partir de las fórmulas de arriba para entender cómo se ve la inicial de \\(\\mu\\): mu_0 <- 175 # valor medio de inicial n_0 <- 5 # cuánta concentración en la inicial tau <- rgamma(1000, a,b) sigma <- 1/sqrt(tau) mu <- map_dbl(sigma, ~ rnorm(1, mu_0, .x / sqrt(n_0))) quantile(mu, c(0.05, 0.5, 0.95)) ## 5% 50% 95% ## 168.7275 174.8412 180.7905 Que consideramos un rango en el que con alta probabilidad debe estar la media poblacional de los cantantes. Podemos checar nuestros supuestos simulando posibles muestras usando sólo nuestra información previa: simular_normal_invgamma <- function(n, pars){ mu_0 <- pars[1] n_0 <- pars[2] a <- pars[3] b <- pars[4] # simular media tau <- rgamma(1, a, b) sigma <- 1 / sqrt(tau) mu <- rnorm(1, mu_0, sigma/sqrt(n_0)) # simular sigma rnorm(n, mu, sigma) } set.seed(3461) sims_tbl <- tibble(rep = 1:20) |> mutate(estatura = map(rep, ~ simular_normal_invgamma(500, c(mu_0, n_0, a, b)))) |> unnest(cols = c(estatura)) ggplot(sims_tbl, aes(x = estatura)) + geom_histogram() + facet_wrap(~ rep) + geom_vline(xintercept = c(150, 180), colour = "red") Pusimos líneas de referencia en 150 y 180. Vemos que nuestras iniciales no producen simulaciones totalmente fuera del contexto, y parecen cubrir apropiadamente el espacio de posiblidades para estaturas de los tenores. Quizá hay algunas realizaciones poco creíbles, pero no extremadamente. En este punto, podemos regresar y ajustar la inicial para \\(\\sigma\\), que parece tomar valores demasiado grandes (produciendo por ejemplo una simulación con estatura de 220 y 140, que deberían ser menos probables). Ahora podemos usar los datos para calcular nuestras posteriores. set.seed(3413) cantantes <- lattice::singer |> mutate(estatura_cm = round(2.54 * height)) |> filter(str_detect(voice.part, "Tenor")) |> sample_n(20) cantantes ## height voice.part estatura_cm ## 139 70 Tenor 1 178 ## 150 68 Tenor 2 173 ## 140 65 Tenor 1 165 ## 132 66 Tenor 1 168 ## 152 69 Tenor 2 175 ## 141 72 Tenor 1 183 ## 161 71 Tenor 2 180 ## 156 71 Tenor 2 180 ## 158 71 Tenor 2 180 ## 164 69 Tenor 2 175 ## 147 68 Tenor 1 173 ## 130 72 Tenor 1 183 ## 162 71 Tenor 2 180 ## 134 74 Tenor 1 188 ## 170 69 Tenor 2 175 ## 167 68 Tenor 2 173 ## 149 64 Tenor 1 163 ## 143 68 Tenor 1 173 ## 157 69 Tenor 2 175 ## 153 71 Tenor 2 180 Los cálculos son un poco tediosos, pero podemos construir una función apropiada: calcular_pars_posterior <- function(x, pars_inicial){ # iniciales mu_0 <- pars_inicial[1] n_0 <- pars_inicial[2] a_0 <- pars_inicial[3] b_0 <- pars_inicial[4] # muestra n <- length(x) media <- mean(x) S2 <- sum((x - media)^2) # sigma post a_1 <- a_0 + 0.5 * n b_1 <- b_0 + 0.5 * S2 + 0.5 * (n * n_0) / (n + n_0) * (media - mu_0)^2 # posterior mu mu_1 <- (n_0 * mu_0 + n * media) / (n + n_0) n_1 <- n + n_0 c(mu_1, n_1, a_1, b_1) } pars_posterior <- calcular_pars_posterior(cantantes$estatura_cm, c(mu_0, n_0, a, b)) pars_posterior ## [1] 175.8 25.0 13.0 509.0 ¿Cómo se ve nuestra posterior comparada con la inicial? Podemos hacer simulaciones: sim_params <- function(m, pars){ mu_0 <- pars[1] n_0 <- pars[2] a <- pars[3] b <- pars[4] # simular sigmas sims <- tibble(tau = rgamma(m, a, b)) |> mutate(sigma = 1 / sqrt(tau)) # simular mu sims <- sims |> mutate(mu = rnorm(m, mu_0, sigma / sqrt(n_0))) sims } sims_inicial <- sim_params(5000, c(mu_0, n_0, a, b)) |> mutate(dist = "inicial") sims_posterior <- sim_params(5000, pars_posterior) |> mutate(dist = "posterior") sims <- bind_rows(sims_inicial, sims_posterior) ggplot(sims, aes(x = mu, y = sigma, colour = dist)) + geom_point(alpha = 0.4) Y vemos que nuestra posterior es consistente con la información inicial que usamos, hemos aprendido considerablemente de la muestra. La posterior se ve como sigue. Hemos marcado también las medias posteriores de cada parámetro: media y desviación estándar. medias_post <- sims |> filter(dist == "posterior") |> select(-dist) |> summarise(across(everything(), mean)) ggplot(sims |> filter(dist == "posterior"), aes(x = mu, y = sigma)) + geom_point(colour = "#00BFC4") + geom_point(data = medias_post, size = 5, colour = "black") + coord_equal() Podemos construir intervalos creíbles del 90% para estos dos parámetros, por ejemplo haciendo intervalos de percentiles: f <- c(0.05, 0.5, 0.95) sims |> pivot_longer(cols = mu:sigma, names_to = "parametro") |> group_by(dist, parametro) |> reframe(cuantil = quantile(value, f) |> round(1), f = f) |> pivot_wider(names_from = f, values_from = cuantil) ## # A tibble: 4 × 5 ## dist parametro `0.05` `0.5` `0.95` ## <chr> <chr> <dbl> <dbl> <dbl> ## 1 inicial mu 169. 175. 181. ## 2 inicial sigma 4.8 7.4 13.3 ## 3 posterior mu 174. 176. 178. ## 4 posterior sigma 5.1 6.3 8.2 Como comparación, los estimadores de máxima verosimlitud son media_mv <- mean(cantantes$estatura_cm) sigma_mv <- mean((cantantes$estatura_cm - media_mv)^2) |> sqrt() c(media_mv, sigma_mv) ## [1] 176 6 Ahora solo resta checar que el modelo es razonable. Veremos más adelante cómo hacer esto, usando la distribución predictiva posterior. Pasos de un análisis de datos bayesiano Como vimos en los ejemplos, en general un análisis de datos bayesiano sigue los siguientes pasos: Identificar los datos releventes a nuestra pregunta de investigación, el tipo de datos que vamos a describir, que variables queremos estimar. Definir el modelo descriptivo para los datos. La forma matemática y los parámetros deben ser apropiados para los objetivos del análisis. Especificar la distribución inicial de los parámetros. Utilizar inferencia bayesiana para reubicar la credibilidad a lo largo de los posibles valores de los parámetros. Verificar que la distribución posterior replique los datos de manera razonable, de no ser el caso considerar otros modelos descriptivos para los datos. Elicitando probablidades subjetivas (opcional) No siempre es fácil elicitar probabilidades subjetivas de manera que capturemos el verdadero conocimiento de dominio que tenemos. Una manera clásica de hacerlo es con apuestas Considera una pregunta sencilla que puede afectar a un viajero: ¿Qué tanto crees que habrá una tormenta que ocasionará el cierre de la autopista México-Acapulco en el puente del \\(20\\) de noviembre? Como respuesta debes dar un número entre \\(0\\) y \\(1\\) que refleje tus creencias. Una manera de seleccionar dicho número es calibrar las creencias en relación a otros eventos cuyas probabilidades son claras. Como evento de comparación considera una experimento donde hay canicas en una urna: \\(5\\) rojas y \\(5\\) blancas. Seleccionamos una canica al azar. Usaremos esta urna como comparación para considerar la tormenta en la autopista. Ahora, considera el siguiente par de apuestas de las cuales puedes elegir una: A. Obtienes \\(\\$1000\\) si hay una tormenta que ocasiona el cierre de la autopista el próximo \\(20\\) de noviembre. B. Obtienes \\(\\$1000\\) si seleccionas una canica roja de la urna que contiene \\(5\\) canicas rojas y \\(5\\) blancas. Si prefieres la apuesta B, quiere decir que consideras que la probabilidad de tormenta es menor a \\(0.5\\), por lo que al menos sabes que tu creencia subjetiva de una la probabilidad de tormenta es menor a \\(0.5\\). Podemos continuar con el proceso para tener una mejor estimación de la creencia subjetiva. A. Obtienes \\(\\$1000\\) si hay una tormenta que ocasiona el cierre de la autopista el próximo \\(20\\) de noviembre. C. Obtienes \\(\\$1000\\) si seleccionas una canica roja de la urna que contiene \\(1\\) canica roja y \\(9\\) blancas. Si ahora seleccionas la apuesta \\(A\\), esto querría decir que consideras que la probabilidad de que ocurra una tormenta es mayor a \\(0.10\\). Si consideramos ambas comparaciones tenemos que tu probabilidad subjetiva se ubica entre \\(0.1\\) y \\(0.5\\). Verificación predictiva posterior Una vez que ajustamos un modelo bayesiano, podemos simular nuevas observaciones a partir del modelo. Esto tiene dos utilidades: Hacer predicciones acerca de datos no observados. Confirmar que nuevas observaciones, producidas simulando con el modelo son similares a las que de hecho observamos. Esto nos permite confirmar la calidad del ajuste del modelo, y se llama verificación predictiva posterior. Supongamos que tenemos la posterior \\(p(\\theta | x)\\). Podemos generar una nueva replicación de los datos como sigue: La distribución predictiva posterior genera nuevas observaciones a partir de la información observada. La denotamos como \\(p(\\tilde{x}|x)\\). Para simular de ella: Muestreamos un valor \\(\\tilde{\\theta}\\) de la posterior \\(p(\\theta|x)\\). Simulamos del modelo de las observaciones \\(\\tilde{x} \\sim p(\\tilde{x}|\\tilde{\\theta})\\). Repetimos el proceso hasta obtener una muestra grande. Usamos este método para producir, por ejemplo, intervalos de predicción para nuevos datos. Si queremos una replicación de las observaciones de la predictiva posterior, Muestreamos un valor \\(\\tilde{\\theta}\\) de la posterior \\(p(\\theta|x)\\). Simulamos del modelo de las observaciones \\(\\tilde{x}_1, \\tilde{x}_2,\\ldots, \\tilde{x}_n \\sim p(\\tilde{x}|\\tilde{\\theta})\\), done \\(n\\) es el tamaño de muestra de la muestra original \\(x\\). Usamos este método para producir conjuntos de datos simulados que comparamos con los observados para verificar nuestro modelo. Ejemplo: estaturas de tenores En este ejemplo, usaremos la posterior predictiva para checar nuestro modelo. Vamos a crear varias muestras, del mismo tamaño que la original, según nuestra predictiva posterior, y compararemos estas muestras con la observada. Y ahora simulamos otra muestra muestra_sim <- simular_normal_invgamma(20, pars_posterior) muestra_sim |> round(0) ## [1] 167 181 184 181 167 167 172 170 177 172 169 174 182 184 176 171 175 176 168 ## [20] 181 Podemos simular varias muestras y hacer una prueba de lineup: library(nullabor) set.seed(9921) sims_obs <- tibble(.n = 1:19) |> mutate(estatura_cm = map(.n, ~ simular_normal_invgamma(20, pars_posterior))) |> unnest(estatura_cm) pos <- sample(1:20, 1) lineup_tbl <- lineup(true = cantantes |> select(estatura_cm), samples = sims_obs, pos = pos) ggplot(lineup_tbl, aes(x = estatura_cm)) + geom_histogram(binwidth = 2.5) + facet_wrap(~.sample) Con este tipo de gráficas podemos checar desajustes potenciales de nuestro modelo. ¿Puedes encontrar los datos verdaderos? ¿Cuántos seleccionaron los datos correctos? Ejemplo: modelo Poisson Supongamos que pensamos el modelo para las observaciones es Poisson con parámetro \\(\\lambda\\). Pondremos como inicial para \\(\\lambda\\) una exponencial con media 10. Nótese que la posterior está dada por \\[p(\\lambda|x_1,\\ldots, x_n) \\propto e^{-n\\lambda}\\lambda^{\\sum_i x_i} e^{-0.1\\lambda} = \\lambda^{n\\overline{x}}e^{-\\lambda(n + 0.1)}\\] que es una distribución gamma con parámetros \\((n\\overline{x} + 1, n+0.1)\\) Ahora supongamos que observamos la siguiente muestra, ajustamos nuestro modelo y hacemos replicaciones posteriores de los datos observados: x <- rnbinom(250, mu = 20, size = 3) crear_sim_rep <- function(x){ n <- length(x) suma <- sum(x) sim_rep <- function(rep){ lambda <- rgamma(1, sum(x) + 1, n + 0.1) x_rep <- rpois(n, lambda) tibble(rep = rep, x_rep = x_rep) } } sim_rep <- crear_sim_rep(x) lineup_tbl <- map(1:5, ~ sim_rep(.x)) |> bind_rows() |> bind_rows(tibble(rep = 6, x_rep = x)) ggplot(lineup_tbl, aes(x = x_rep)) + geom_histogram(bins = 15) + facet_wrap(~rep) Y vemos claramente que nuestro modelo no explica apropiadamente la variación de los datos observados. Contrasta con: set.seed(223) x <- rpois(250, 15) crear_sim_rep <- function(x){ n <- length(x) suma <- sum(x) sim_rep <- function(rep){ lambda <- rgamma(1, sum(x) + 1, n + 0.1) x_rep <- rpois(n, lambda) tibble(rep = rep, x_rep = x_rep) } } sim_rep <- crear_sim_rep(x) lineup_tbl <- map(1:5, ~ sim_rep(.x)) |> bind_rows() |> bind_rows(tibble(rep = 6, x_rep = x)) ggplot(lineup_tbl, aes(x = x_rep)) + geom_histogram(bins = 15) + facet_wrap(~rep) Y verificamos que en este caso el ajuste del modelo es apropiado. Predicción Cuando queremos hacer predicciones particulares acerca de datos que observemos en el futuro, también podemos usar la posterior predictiva. En este caso, tenemos que considerar La variabilidad que produce la incertidumbre en la estimación de los parámetros La variabilidad de las observaciones dados los parámetros. Es decir, tenemos que simular sobre todos las combinaciones factibles de los parámetros. Ejemplo: cantantes Si un nuevo tenor llega a un coro, ¿cómo hacemos una predicción de su estatura? Como siempre, quisiéramos obtener un intervalo que exprese nuestra incertidumbre acerca del valor que vamos a observar. Entonces haríamos: sims_posterior <- sim_params(50000, pars_posterior) |> mutate(y_pred = rnorm(n(), mu, sigma)) sims_posterior |> head() ## # A tibble: 6 × 4 ## tau sigma mu y_pred ## <dbl> <dbl> <dbl> <dbl> ## 1 0.0286 5.91 175. 181. ## 2 0.0200 7.07 177. 178. ## 3 0.0257 6.23 176. 170. ## 4 0.0344 5.39 176. 174. ## 5 0.0297 5.80 175. 169. ## 6 0.0282 5.96 177. 170. f <- c(0.025, 0.5, 0.975) sims_posterior |> summarise(f = f, y_pred = quantile(y_pred, f)) ## # A tibble: 3 × 2 ## f y_pred ## <dbl> <dbl> ## 1 0.025 163. ## 2 0.5 176. ## 3 0.975 189. Y con esto obtenemos el intervalo (163, 189), al 95%, para una nueva observación. Nótese que este intervalo no puede construirse con una simulación particular de la posterior de los parámetros, pues sería demasiado corto. Es posible demostrar que en este caso, la posterior predictiva tiene una forma conocida: La posterior predictiva para el modelo normal-gamma inverso es una distribución \\(t\\) con \\(2\\alpha'\\) grados de libertad, centrada en \\(\\mu'\\), y con escala \\(s^2 = \\frac{\\beta'}{\\alpha'}\\frac{n + n_0 + 1}{n +n_0}\\) mu_post <- pars_posterior[1] n_post <- pars_posterior[2] alpha_post <- pars_posterior[3] beta_post <- pars_posterior[4] s <- sqrt(beta_post/alpha_post) * sqrt((n_post + 1)/n_post) qt(c(0.025, 0.5, 0.975), 2 * alpha_post) * s + mu_post ## [1] 162.6832 175.8000 188.9168 Calcula la posterior predictiva del modelo Beta-Bernoulli y Beta-Binomial. (Más difícil) Calcula la posterior predictiva del modelo Poisson-Gamma. Ejemplo: posterior predictiva de Pareto-Uniforme. La posterior predictiva del modelo Pareto-Uniforme no tiene un nombre estándar, pero podemos aproximarla usando simulación. Usando los mismos datos del ejercicio de la lotería, haríamos: rpareto <- function(n, theta_0, alpha){ # usar el método de inverso de distribución acumulada u <- runif(n, 0, 1) theta_0 / (1 - u)^(1/alpha) } # Simulamos de la posterior de los parámetros lim_inf_post <- max(c(300, muestra_loteria$numero)) k_posterior <- nrow(muestra_loteria) + 1.1 sims_pareto_posterior <- tibble( theta = rpareto(100000, lim_inf_post, k_posterior)) # Simulamos una observación para cada una de las anteriores: sims_post_pred <- sims_pareto_posterior |> mutate(x_pred = map_dbl(theta, ~ runif(1, 0, .x))) # Graficamos ggplot(sims_post_pred, aes(x = x_pred)) + geom_histogram(binwidth = 50) + geom_vline(xintercept = lim_inf_post, colour = "red") Que es una mezcla de una uniforme con una Pareto. Referencias "],["calibración-bayesiana-y-regularización.html", "Sección 11 Calibración bayesiana y Regularización Enfoque bayesiano y frecuentista Ejemplo: estimación de una proporción Intervalos de Agresti-Coull Incorporando información inicial Inferencia bayesiana y regularización Ejemplo: modelo normal y estaturas Ejemplo: estimación de proporciones Teoría de decisión Riesgo de Bayes", " Sección 11 Calibración bayesiana y Regularización El enfoque bayesiano se puede formalizar coherentemente en términos de probabilidades subjetivas, y como vimos, esta es una fortaleza del enfoque bayesiano. En la práctica, sin embargo, muchas veces puede ser difícil argumentar en términos exclusivos de probabilidad subjetiva, aunque hagamos los esfuerzos apropiados para incorporar la totalidad de información que distintos actores involucrados pueden tener. Consideremos, por ejemplo, que INEGI produjera un intervalo creíble del 95% para el ingreso mediano de los hogares de México. Aún cuando nuestra metodología sea transparente y correctamente informada, algunos investigadores interesados puede ser que tengan recelo en usar esta información, y quizá preferirían hacer estimaciones propias. Esto restaría valor al trabajo cuidadoso que pusimos en nuestras estimaciones oficiales. Por otra parte, el enfoque frecuentista provee de ciertas garantías mínimas para la utilización de las estimaciones, que no dependen de la interpretación subjetiva de la probabilidad, sino de las propiedades del muestreo. Consideremos la cobertura de los intervalos de confianza: Bajo ciertos supuestos de nuestros modelos, la probabilidad de que un intervalo de confianza del 95% cubra al verdadero valor poblacional es del 95%. Esta probabilidad es sobre las distintas muestras que se pueden obtener según el diseño del muestreo. Los intervalos creíbles en principio no tienen por qué cumplir esta propiedad, pero consideramos que en la práctica es una garantía mínima que deberían cumplir. El enfoque resultante se llama bayesiano calibrado, Little (2011) . La idea es seguir el enfoque bayesiano usual para construir nuestras estimaciones, pero verificar hasta donde sea posible que los intervalos resultantes satisfacen alguna garantía frecuentista básica. Observación. checar que la cobertura real es similar a la nominal es importante en los dos enfoques: frecuentista y bayesiano. Los intervalos frecuentistas, como hemos visto, generalmente son aproximados, y por lo tanto no cumplen automáticamente esta propiedad de calibración. Enfoque bayesiano y frecuentista Los métodos estadísticos clásicos toman el punto de vista frecuentista y se basa en los siguientes puntos (Wasserman (2013)): La probabilidad se interpreta como un límite de frecuencias relativas, donde las probabilidades son propiedades objetivas en el mundo real. En un modelo, los parámetros son constantes fijas (desconocidas). Como consecuencia, no se pueden realizar afirmaciones probabilísticas útiles en relación a éstos. Los procedimientos estadísticos deben diseñarse con el objetivo de tener propiedades frecuentistas bien definidas. Por ejemplo, un intervalo de confianza del \\(95\\%\\) debe contener el verdadero valor del parámetro con frecuencia límite de al menos el \\(95\\%\\). En contraste, el acercamiento Bayesiano muchas veces se describe por los siguientes postulados: La probabilidad describe grados de creencia, no frecuencias limite. Como tal uno puede hacer afirmaciones probabilísticas acerca de muchas cosas y no solo datos sujetos a variabilidad aleatoria. Por ejemplo, puedo decir: “La probabilidad de que Einstein tomara una taza de té el primero de agosto de \\(1948\\)” es \\(0.35\\), esto no hace referencia a ninguna frecuencia relativa sino que refleja la certeza que yo tengo de que la proposición sea verdadera. Podemos hacer afirmaciones probabilísticas de parámetros. Podemos hacer inferencia de un parámetro \\(\\theta\\) por medio de distribuciones de probabilidad. Las inferencias como estimaciones puntuales y estimaciones de intervalos se pueden extraer de dicha distribución. Finalmente, en el enfoque bayesiano calibrado (Little (2011)): Usamos el enfoque bayesiano para modelar y hacer afirmaciones probabilísticas de los parámetros. Buscamos cumplir las garantías frecuentistas del inciso 3). Ejemplo: estimación de una proporción Recordamos nuestro problema de estimación de una proporcion \\(\\theta\\). Usando la distribución inicial \\(p(\\theta)\\sim \\mathsf{Beta}(2,2)\\), y la verosimilitud estándar binomial, vimos que la posterior cuando observamos \\(k\\) éxitos es \\[p(\\theta|k) \\sim \\mathsf{Beta}(k + 2, n - k + 2)\\]. La media posterior es \\[\\frac{k + 2}{n + 4} \\] que podemos interpretar como: agrega 2 éxitos y 2 fracasos a los datos observados y calcula la proporción de éxitos. Un intervalo posterior de credibilidad del 95% se calcula encontrando los cuantiles 0.025 y 0.975 de una \\(\\mathsf{Beta}(k + 2, n - k + 2)\\) \\[I_a = \\left [q_{0.025}(k+2, n+4), q_{0.975}(k+2, n+4)\\right ]\\] Que compararemos con el intervalo usual de Wald: si \\(\\hat{\\theta} = \\frac{k}{n}\\), entonces \\[I_w = \\left [\\hat{\\theta} - 2 \\sqrt{\\frac{\\hat{\\theta}(1-\\hat{\\theta})}{n}}, \\hat{\\theta} + 2 \\sqrt{\\frac{\\hat{\\theta}(1-\\hat{\\theta})}{n}}\\right]\\] ¿Cómo podemos comparar la calibración de estos dos intervalos? Nominalmente, deben tener cobertura de 95%. Hagamos un ejercicio de simulación para distintos tamaños de muestra \\(n\\) y posibles valores \\(\\theta\\in (0,1)\\): set.seed(332) simular_muestras <- function(M, n, p){ k = rbinom(M, n, p) tibble(rep = 1:M, n = n, p = p, k = k) } intervalo_wald <- function(n, k){ p_hat <- k / n ee_hat <- sqrt(p_hat * (1 - p_hat) / n) tibble(inf = p_hat - 2 * ee_hat, sup = p_hat + 2 * ee_hat) } intervalo_bayes <- function(n, k, a = 2, b = 2){ a <- k + a b <- n - k + b tibble(inf = qbeta(0.025, a, b), sup = qbeta(0.975, a, b)) } set.seed(812) ejemplo <- simular_muestras(5, 20, 0.4) ejemplo |> mutate(intervalo = intervalo_wald(n, k)) |> pull(intervalo) |> bind_cols(ejemplo) |> select(-rep) ## # A tibble: 5 × 5 ## inf sup n p k ## <dbl> <dbl> <dbl> <dbl> <int> ## 1 0.0211 0.379 20 0.4 4 ## 2 0.228 0.672 20 0.4 9 ## 3 0.276 0.724 20 0.4 10 ## 4 0.228 0.672 20 0.4 9 ## 5 0.137 0.563 20 0.4 7 ejemplo |> mutate(intervalo = intervalo_bayes(n, k)) |> pull(intervalo) |> bind_cols(ejemplo) |> select(-rep) ## # A tibble: 5 × 5 ## inf sup n p k ## <dbl> <dbl> <dbl> <dbl> <int> ## 1 0.102 0.437 20 0.4 4 ## 2 0.268 0.655 20 0.4 9 ## 3 0.306 0.694 20 0.4 10 ## 4 0.268 0.655 20 0.4 9 ## 5 0.197 0.573 20 0.4 7 ¿Cuáles de estos intervalos cubren al verdadero valor? Nótese que no podemos descalificar a ningún método por no cubrir una vez. Es fácil producir un intervalo con 100% de cobertura: (0,1). Pero no nos informa dónde es probable que esté el parámetro. Sin embargo, podemos checar la cobertura frecuentista haciendo una cantidad grande de simulaciones: parametros <- crossing(n = c(5, 10, 30, 60, 100, 400), p = c(0.01, 0.015, 0.02, 0.025, 0.03, 0.035, 0.04, 0.05, 0.07, 0.1, 0.15)) set.seed(2343) # simulaciones simulaciones <- parametros |> mutate(muestra = map2(n, p, ~ simular_muestras(50000, .x, .y) |> select(rep, k))) |> unnest(muestra) # calcular_cobertura calcular_cobertura <- function(simulaciones, construir_intervalo){ # nombre de función intervalo_nombre <- substitute(construir_intervalo) |> as.character() cobertura_tbl <- simulaciones |> mutate(intervalo = construir_intervalo(n, k)) |> pull(intervalo) |> bind_cols(simulaciones) |> mutate(cubre = p >= inf & p <= sup) |> group_by(n, p) |> summarise(cobertura = mean(cubre), long_media = mean(sup - inf)) cobertura_tbl |> mutate(tipo = intervalo_nombre) } cobertura_wald <- calcular_cobertura(simulaciones, intervalo_wald) cobertura_wald ## # A tibble: 66 × 5 ## # Groups: n [6] ## n p cobertura long_media tipo ## <dbl> <dbl> <dbl> <dbl> <chr> ## 1 5 0.01 0.0483 0.0347 intervalo_wald ## 2 5 0.015 0.0733 0.0527 intervalo_wald ## 3 5 0.02 0.0954 0.0689 intervalo_wald ## 4 5 0.025 0.119 0.0862 intervalo_wald ## 5 5 0.03 0.140 0.102 intervalo_wald ## 6 5 0.035 0.165 0.120 intervalo_wald ## 7 5 0.04 0.187 0.137 intervalo_wald ## 8 5 0.05 0.227 0.167 intervalo_wald ## 9 5 0.07 0.299 0.223 intervalo_wald ## 10 5 0.1 0.398 0.303 intervalo_wald ## # ℹ 56 more rows graficar_cobertura <- function(cobertura_tbl){ ggplot(cobertura_tbl, aes(x = p, y = cobertura, colour = tipo)) + geom_hline(yintercept = 0.95, colour = "black") + geom_line() + geom_point() + facet_wrap(~n) + ylim(0, 1) } cobertura_wald |> graficar_cobertura() La cobertura real es mucho más baja que la nominal en muchos casos, especialmente cuando la \\(p\\) es baja y \\(n\\) es chica. Pero incluso para muestras relativamente grandes (100), la cobertura es mala si \\(p\\) es chica. Ahora probamos nuestro método alternativo: cobertura_bayes <- calcular_cobertura(simulaciones, intervalo_bayes) bind_rows(cobertura_wald, cobertura_bayes) |> mutate(tipo = factor(tipo, levels = c('intervalo_wald', 'intervalo_bayes'))) |> graficar_cobertura() Y vemos que en general el intervalo de Bayes es superior al de Wald, en sentido de que su cobertura real es más cercana a la nominal. El caso donde fallan los dos es para muestras muy chicas \\(n=5, 10\\), con probabilidades de éxito chicas \\(p\\leq 0.02\\). Sin embargo, si tenemos información previa acerca del tamaño de la proporción que estamos estimando, es posible obtener buena calibración con el método bayesiano. En este caso particular, tenemos argumentos frecuentistas para utilizar el método bayesiano. Por ejemplo, si el INEGI utilizara estos intervalos creíbles, un análisis de calibración de este tipo sostendría esa decisión. Intervalos de Agresti-Coull Un método intermedio que se usa para obtener mejores intervalos cuando estimamos proporciones es el siguiente: Agregar dos 1’s y dos 0’s a los datos. Utilizar el método de Wald con estos datos modificados. intervalo_agresti_coull <- function(n, k){ p_hat <- (k + 2)/ (n + 4) ee_hat <- sqrt(p_hat * (1 - p_hat) / n) tibble(inf = p_hat - 2 * ee_hat, sup = p_hat + 2 * ee_hat) } cobertura_ac <- calcular_cobertura(simulaciones, intervalo_agresti_coull) bind_rows(cobertura_wald, cobertura_bayes, cobertura_ac) |> mutate(tipo = factor(tipo, levels = c('intervalo_wald', 'intervalo_bayes', 'intervalo_agresti_coull'))) |> graficar_cobertura() Que tiende a ser demasiado conservador para proporciones chicas: graficar_cobertura(cobertura_ac) + ylim(c(0.9, 1)) Conclusión 1: Los intervalos de Agresti-Coull son una buena alternativa para estimar proporciones como sustituto de los intervalos clásicos de Wald, aunque tienden a ser muy conservadores para muestras chicas Idealmente podemos utilizar un método bayesiano pues normalmente tenemos información inicial acerca de las proporciones que queremos estimar. Incorporando información inicial Nótese que generalmente tenemos información acerca de la cantidad que queremos estimar: por ejemplo, que proporción de visitantes de un sitio web compra algo (usualmente muy baja, menos de 2%), qué proporción de personas tiene diabetes tipo 1 (una proporción muy baja, menos de 1 por millar), o qué proporción de hogares tienen ingresos trimestrales mayores a 150 mil pesos (menos de %5 con alta probabilidad). En este caso, tenemos que ajustar nuestra inicial. Por ejemplo, para el problema de ingresos, podríamos usar una \\(\\mathsf{Beta}(2, 100)\\), cuyos cuantiles son: # uno de cada 100 a <- 2 b <- 100 beta_sims <- rbeta(5000, a, b) quantile(beta_sims, c(0.01, 0.05, 0.50, 0.90, 0.99)) |> round(3) ## 1% 5% 50% 90% 99% ## 0.001 0.004 0.016 0.039 0.067 qplot(beta_sims) Veamos cómo se ven los intervalos bayesianos producidos con esta inicial: crear_intervalo_bayes <- function(a, b){ intervalo_fun <- function(n, k){ a_post <- k + a b_post <- n - k + b tibble(inf = qbeta(0.025, a_post, b_post), sup = qbeta(0.975, a_post, b_post)) } intervalo_fun } intervalo_bayes_2 <- crear_intervalo_bayes(a, b) cobertura_bayes <- calcular_cobertura(simulaciones, intervalo_bayes_2) graficar_cobertura(bind_rows(cobertura_bayes, cobertura_ac) |> filter(p < 0.05)) + ylim(c(0.5, 1)) Y vemos que la calibración es similar. Notemos sin embargo que la longitud del del intervalo bayesiano es mucho menor que el de Agresti-Coull cuando la muestra es chica: ggplot(bind_rows(cobertura_bayes, cobertura_ac), aes(x = p, y = long_media, colour = tipo)) + geom_point() + facet_wrap(~n) Cuando la muestra es chica, los intervalos de bayes son similares a los iniciales, y mucho más cortos que los de Agresti-Coull. Para muestras intermedias (50-100) los intervalos bayesianos son más informativos que los de Agresti-Coull, con calibración similar, y representan aprendizaje por encima de lo que sabíamos en la inicial. Para muestras grandes, obtenemos resultados simililares. Por ejemplo: set.seed(2131) k <- rbinom(1, 50, 0.03) k ## [1] 4 intervalo_agresti_coull(50, k) |> round(3) ## # A tibble: 1 × 2 ## inf sup ## <dbl> <dbl> ## 1 0.022 0.2 es un intervalo muy grande que puede incluir valores negativos. En contraste, el intervalo bayesiano es: intervalo_bayes_2(50, k) |> round(3) ## # A tibble: 1 × 2 ## inf sup ## <dbl> <dbl> ## 1 0.015 0.076 Aún quitando valores negativos, los intervalos de Agresti-Coull son mucho más anchos. La aproximación bayesiana, entonces, utiliza información previa para dar un resultado considerablemente más informativo, con calibración similar a Agresti-Coull. ¿Aprendimos algo? Comparemos la posterior con la inicial: beta_sims_inicial <- tibble(prop = rbeta(5000, a, b), dist = "inicial") beta_sims_posterior <- tibble(prop = rbeta(5000, a + k, b + 50), dist = "posterior") bind_rows(beta_sims_inicial, beta_sims_posterior) |> ggplot(aes(x = prop, fill = dist)) + geom_histogram(alpha = 0.5, position = "identity") Donde vemos que no aprendimos mucho en este caso, pero nuestras creencias sí cambiaron en comparación con la inicial. Conclusión 2: con el enfoque bayesiano podemos obtener intervalos informativos con calibración razonable, incluso con información inicial que no es muy precisa. Los intervalos de Agresti-Coull son poco informativos para muestras chicas y/o proporciones chicas. Ejemplo: porporción de hogares de ingresos grandes Usaremos los datos de ENIGH como ejemplo (ignorando el diseño, pero es posible hacer todas las estimaciones correctamente) para estimar el porcentaje de hogares que tienen ingreso corriente de más de 150 mil pesos al trimestre. Suponemos que la muestra del enigh es la población, y tomaremos una muestra iid de esta población. Usamos la misma inicial que mostramos arriba, que es una Beta con parámetros c(a,b) ## [1] 2 100 set.seed(2521) muestra_enigh <- read_csv("data/conjunto_de_datos_enigh_2018_ns_csv/conjunto_de_datos_concentradohogar_enigh_2018_ns/conjunto_de_datos/conjunto_de_datos_concentradohogar_enigh_2018_ns.csv") |> select(ing_cor) |> sample_n(120) |> mutate(mas_150mil = ing_cor > 150000) Un intervalo de 95% es entonces k <- sum(muestra_enigh$mas_150mil) k ## [1] 3 intervalo_bayes_2(120, sum(muestra_enigh$mas_150mil)) |> round(3) ## # A tibble: 1 × 2 ## inf sup ## <dbl> <dbl> ## 1 0.007 0.046 La media posterior es prop_post <- (a + k) / (120 + b) prop_post ## [1] 0.02272727 ¿Cuál es la verdadera proporción? read_csv("data/conjunto_de_datos_enigh_2018_ns_csv/conjunto_de_datos_concentradohogar_enigh_2018_ns/conjunto_de_datos/conjunto_de_datos_concentradohogar_enigh_2018_ns.csv") |> select(ing_cor) |> mutate(mas_150mil = ing_cor > 150000) |> summarise(prop_pob = mean(mas_150mil)) ## # A tibble: 1 × 1 ## prop_pob ## <dbl> ## 1 0.0277 En este caso, nuestro intervalo cubre a la proporción poblacional. Inferencia bayesiana y regularización Como hemos visto en análisis y modelos anteriores, la posterior que usamos para hacer inferencia combina aspectos de la inicial con la verosimilitud (los datos). Una manera de ver esta combinación y sus beneficios es pensando en término de regularización de estimaciones. En las muestras hay variación. Algunas muestras particulares nos dan estimaciones de máxima verosimilitud pobres de los parámetros de interés (estimaciones ruidosas). Cuando esas estimaciones pobres están en una zona de baja probabilidad de la inicial, la estimación posterior tiende a moverse (o encogerse) hacia las zonas de alta probabilidad de la inicial. Esto filtra ruido en las estimaciones. El mecanismo resulta en una reducción del error cuadrático medio, mediante una reducción de la varianza de los estimadores (aunque quizá el sesgo aumente). Esta es una técnica poderosa, especialmente para problemas complejos donde tenemos pocos datos para cada parámetro. En general, excluímos resultados que no concuerdan con el conocimiento previo, y esto resulta en mayor precisión en las estimaciones. Ejemplo: modelo normal y estaturas Haremos un experimento donde simularemos muestras de los datos de cantantes. Usaremos el modelo normal-gamma inverso que discutimos anteriormente, con la información inicial que elicitamos. ¿Cómo se compara la estimación de máxima verosimilitud con la media posterior? # inicial para media, ver sección anterior para discusión (normal) mu_0 <- 175 n_0 <- 5 # inicial para sigma^2 (gamma inversa) a <- 3 b <- 140 Para este ejemplo chico, usaremos muestras de tamaño 5: set.seed(3413) # ver sección anterior para explicación de esta función calcular_pars_posterior <- function(x, pars_inicial){ # iniciales mu_0 <- pars_inicial[1] n_0 <- pars_inicial[2] a_0 <- pars_inicial[3] b_0 <- pars_inicial[4] # muestra n <- length(x) media <- mean(x) S2 <- sum((x - media)^2) # sigma post a_1 <- a_0 + 0.5 * n b_1 <- b_0 + 0.5 * S2 + 0.5 * (n * n_0) / (n + n_0) * (media - mu_0)^2 # posterior mu mu_1 <- (n_0 * mu_0 + n * media) / (n + n_0) n_1 <- n + n_0 c(mu_1, n_1, a_1, b_1) } Y también de la sección anterior: sim_params <- function(m, pars){ mu_0 <- pars[1] n_0 <- pars[2] a <- pars[3] b <- pars[4] # simular sigmas sims <- tibble(tau = rgamma(m, a, b)) |> mutate(sigma = 1 / sqrt(tau)) # simular mu sims <- sims |> mutate(mu = rnorm(m, mu_0, sigma / sqrt(n_0))) sims } # simular muestras y calcular medias posteriores simular_muestra <- function(rep, mu_0, n_0, a_0, b_0){ cantantes <- lattice::singer |> mutate(estatura_cm = 2.54 * height) |> filter(str_detect(voice.part, "Tenor")) |> sample_n(5, replace = FALSE) pars_posterior <- calcular_pars_posterior(cantantes$estatura_cm, c(mu_0, n_0, a_0, b_0)) medias_post <- sim_params(1000, pars_posterior) |> summarise(across(everything(), mean)) |> select(mu, sigma) media <- mean(cantantes$estatura_cm) est_mv <- c("mu" = media, "sigma" = sqrt(mean((cantantes$estatura_cm - media)^2))) bind_rows(medias_post, est_mv) |> mutate(rep = rep, tipo = c("media_post", "max_verosim")) |> pivot_longer(mu:sigma, names_to = "parametro", values_to = "estimador") } poblacion <- lattice::singer |> mutate(estatura_cm = 2.54 * height) |> filter(str_detect(voice.part, "Tenor")) |> summarise(mu = mean(estatura_cm), sigma = sd(estatura_cm)) |> pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor_pob") errores <- map(1:2000, ~ simular_muestra(.x, mu_0, n_0, a, b)) |> bind_rows() |> left_join(poblacion) |> mutate(error = (estimador - valor_pob)) ggplot(errores, aes(x = error, fill = tipo)) + geom_histogram(bins = 20, position = "identity", alpha = 0.5) + facet_wrap(~parametro) Vemos claramente que la estimación de la desviación estándar de nuestro modelo es claramente superior a la de máxima verosimilitud. En resumen: errores |> group_by(tipo, parametro) |> summarise(recm = sqrt(mean(error^2)) |> round(2)) |> arrange(parametro) ## # A tibble: 4 × 3 ## # Groups: tipo [2] ## tipo parametro recm ## <chr> <chr> <dbl> ## 1 max_verosim mu 2.85 ## 2 media_post mu 1.55 ## 3 max_verosim sigma 2.45 ## 4 media_post sigma 1.04 Obtenemos una ganancia considerable en cuanto a la estimación de la desviación estandar de esta población. Los estimadores de la media posterior son superiores a los de máxima verosimilitud en términos de error cuadrático medio. Podemos graficar las dos estimaciones, muestra a muestra, para entender cómo sucede esto: errores |> select(-error) |> pivot_wider(names_from = tipo, values_from = estimador) |> filter(parametro == "sigma") |> ggplot(aes(x = max_verosim, y = media_post)) + geom_abline(colour = "red") + geom_hline(yintercept = sqrt(b/(a - 1)), lty = 2, color = 'black') + geom_point() + labs(subtitle = "Estimación de sigma") + xlab("Estimador MV de sigma") + ylab("Media posterior de sigma") + coord_fixed() + geom_segment(aes(x = 13, y = 11, xend = 13, yend = sqrt(b/(a - 1))), colour='red', size=1, arrow =arrow(length = unit(0.5, "cm"))) + geom_segment(aes(x = .5, y = 6, xend = .5, yend = sqrt(b/(a - 1))), colour='red', size=1, arrow =arrow(length = unit(0.5, "cm"))) Nótese como estimaciones demasiado bajas o demasiada altas son contraídas hacia valores más consistentes con la inicial, lo cual resulta en menor error. El valor esperado de \\(\\sigma\\) bajo la distribución inicial se muestra como una horizontal punteada. Ejemplo: estimación de proporciones Ahora repetimos el ejercicio # inicial a <- 2 b <- 100 qbeta(c(0.01, 0.99), a, b) ## [1] 0.001477084 0.063921446 # datos datos <- read_csv("data/conjunto_de_datos_enigh_2018_ns_csv/conjunto_de_datos_concentradohogar_enigh_2018_ns/conjunto_de_datos/conjunto_de_datos_concentradohogar_enigh_2018_ns.csv") |> select(ing_cor) # estimaciones obtener_estimados <- function(datos){ muestra_enigh <- datos |> sample_n(120) |> mutate(mas_150mil = ing_cor > 150000) k <- sum(muestra_enigh$mas_150mil) tibble(k = k, est_mv = k/120, media_post = (a + k) / (120 + b), pob = 0.02769) } estimadores_sim <- map(1:200, ~obtener_estimados(datos)) |> bind_rows() # calculo de errores error_cm <- estimadores_sim |> summarise(error_mv = sqrt(mean((est_mv - pob)^2)), error_post = sqrt(mean((media_post - pob)^2))) error_cm ## # A tibble: 1 × 2 ## error_mv error_post ## <dbl> <dbl> ## 1 0.0147 0.00928 Podemos ver claramente que las medias posteriores están encogidas hacia valores más chicos (donde la inicial tiene densidad alta) comparadas con las estimaciones de máxima verosimilitud: estimadores_sim_ag <- estimadores_sim |> group_by(k, est_mv, media_post) |> summarise(n = n()) ggplot(estimadores_sim_ag, aes(x = est_mv, media_post, size = n)) + geom_point() + geom_abline() Teoría de decisión En esta parte (que sigue a Wasserman (2013) a grandes rasgos), discutimos brevemente teoría general que nos sirve para seleccionar estimadores puntuales, y que esperemos ponga en contexto la parte anterior que acabamos de discutir. Usaremos algunos conceptos que vimos en la parte de propiedades de estimadores de máxima verosimilitud. Definimos una función de pérdida \\(L(\\theta, \\hat{\\theta}_n)\\), que mide el costo de la discrepancia entre nuestro estimador \\[\\hat{\\theta}_n = t(X_1,\\ldots, X_n) = t(X)\\] y el verdadero valor \\(\\theta\\) poblacional. Es posible considerar distintas funciones de pérdida, pero como en secciones anteriores, usaremos la pérdida cuadrática, definida por: \\[L(\\theta, \\hat{\\theta}_n) = (\\theta - \\hat{\\theta}_n)^2\\] Esta función toma distintos valores dependiendo de la muestra y del parámetro \\(\\theta\\), y necesitamos resumirla para dar una evaluación de qué tan bueno es el estimador \\(\\hat{\\theta}_n\\). Ahora que hemos considerado tanto estadística bayesiana como frecuentista, podemos pensar en resumir esta función de distintas maneras. Comenzamos pensando de manera frecuentista. En este caso, consideramos a \\(\\theta\\) como un valor fijo, y nos preguntamos qué pasaría con la pérdida con distintas muestras potenciales que podríamos observar. Definimos como antes el riesgo (frecuentista) como: \\[R(\\theta, t) = \\mathbb{E}_X\\left[ (\\theta - \\hat{\\theta}_n)^2 \\, \\big| \\, \\theta\\right]\\] donde promediamos a lo largo de las muestras posibles, con \\(\\theta\\) fijo. Esta cantidad no nos dice necesariamente cómo escoger un buen estimador para \\(\\theta\\), pues dependiendo de dónde está \\(\\theta\\) puede tomar valores distintos. Ahora vamos a pensar de manera bayesiana: en este caso, los datos serán fijos una vez que los obervemos de manera que \\(\\hat{\\theta}_n\\) está fijo, y el parámetro \\(\\theta\\) es una cantidad aleatoria con distribución inicial \\(p(\\theta)\\). Entonces consideraríamos el promedio sobre la posterior dado por: \\[\\rho(t, X) = \\mathbb{E}_{p(\\theta|X)}\\left[(\\theta - \\hat{\\theta})^2 \\, \\big | \\, X \\right]\\] que llamamos riesgo posterior. Esta cantidad se calcula con la posterior de los parámetros dados los datos, y nos dice, una vez que vimos los datos, cómo es el error de nuestro estimador. Nótese que esta cantidad no es útil para escoger un estimador bueno \\(t\\) antes de ver los datos, pero nos sirve para evaluar a un estimador dados los datos. En el primer caso, promediamos sobre posibles muestras, y en el segundo por valores posibles de \\(\\theta\\) para una muestra dada. Ejemplo: riesgo frecuentista Para observaciones bernoulli, el estimador de máxima verosimilitud es \\(\\hat{p}_1 = k /n\\), donde \\(n\\) es el tamaño de muestra y \\(k\\) el número de éxitos observados. Podemos usar también como estimador la media posterior de un modelo Beta-Bernoulli con inicial \\(a=2, b=2\\), que nos daría \\(\\hat{p}_2 = \\frac{k + 2}{n + 4}\\). Aunque podemos hacer los cálculos analíticos, aproximaremos el riesgo bajo el error cuadrático usando simulación perdida_cuad <- function(p, p_hat){ (p - p_hat)^2 } # dos estimadores t_1 <- function(n, x) x / n t_2 <- function(n, x) (x + 2) / (n + 4) estimar_riesgo <- function(n = 20, theta, perdida, reps = 10000){ x <- rbinom(reps, n, theta) # calcular estimaciones theta_1 <- t_1(n, x) theta_2 <- t_2(n, x) # calcular pérdida media_perdida <- tibble( n = n, theta = theta, estimador = c("MLE", "Posterior"), riesgo = c(mean(perdida(theta, theta_1)), mean(perdida(theta, theta_2)))) media_perdida } estimar_riesgo(n = 20, theta = 0.1, perdida = perdida_cuad) ## # A tibble: 2 × 4 ## n theta estimador riesgo ## <dbl> <dbl> <chr> <dbl> ## 1 20 0.1 MLE 0.00449 ## 2 20 0.1 Posterior 0.00755 Como dijimos, esta cantidad depende de \\(\\theta\\) que no conocemos. Así que calculamos para cada valor de \\(\\theta:\\) Las funciones de riesgo \\(R(\\theta, t_1)\\) y \\(R(\\theta, t_2)\\) (dependen de \\(\\theta\\)) se ven aproximadamente como sigue: p_seq <- seq(0, 1, 0.001) riesgo_tbl <- map(p_seq, ~ estimar_riesgo(n = 20, theta = .x, perdida = perdida_cuad)) |> bind_rows() ggplot(riesgo_tbl, aes(x = theta, y = riesgo, colour = estimador)) + geom_line() Y vemos que el riesgo depende del verdadero valor del parametro: en los extremos, el estimador de máxima verosimilitud tiene menos riesgo, pero en el centro tiene más (esto es independiente del tipo de intervalos que construyamos y su cobertura). La razón es que las estimaciones de tipo Agresti-Coull (\\(\\theta_2\\)) están contraídas hacia 0.5 (agregamos dos éxitos y dos fracasos). Esto produce sesgo en la estimación para valores extremos de \\(\\theta\\). Sin embargo, para valores centrales de \\(\\theta\\) tiene menos variabilidad (por regularización) que el estimador de máxima verosimilitud, y sufre poco de sesgo. Ejemplo: riesgo posterior Supongamos que la inicial es \\(\\theta \\sim \\mathsf{Beta}(5,3)\\) estimar_riesgo_post <- function(n = 20, x, perdida, reps = 20000){ # calcular estimaciones theta_1 <- t_1(n, x) theta_2 <- t_2(n, x) # simular de posterior theta_post <- rbeta(reps, x + 5, n - x + 3) # calcular pérdida media_perdida <- tibble( n = n, x = x, estimador = c("MLE", "Posterior"), riesgo_post= c(mean(perdida(theta_post, theta_1)), mean(perdida(theta_post, theta_2)))) media_perdida } estimar_riesgo_post(n = 20, x = 8, perdida = perdida_cuad) ## # A tibble: 2 × 4 ## n x estimador riesgo_post ## <dbl> <dbl> <chr> <dbl> ## 1 20 8 MLE 0.0127 ## 2 20 8 Posterior 0.0109 Como dijimos, esta cantidad depende de los datos \\(x\\) que no hemos observado. Así que calculamos para cada valor de \\(x\\): Las funciones de pérdida promedio \\(\\rho(x, t_1)\\) y \\(\\rho(x, t_2)\\) (dependen de \\(x\\)) se ven aproximadamente como sigue: x_seq <- seq(0, 20, 1) riesgo_post_tbl <- map(x_seq, ~ estimar_riesgo_post(n = 20, x = .x, perdida = perdida_cuad)) |> bind_rows() ggplot(riesgo_post_tbl, aes(x = x, y = riesgo_post, colour = estimador)) + geom_line() + geom_point() Donde vemos que la pérdida del estimador bayesiano es mejor para valores extremos de número de éxitos observado \\(x\\), pero tiene más riesgo posterior para valores chicos de \\(x\\). En general es mejor el estimador \\(\\theta_2\\). El estimador de máxima verosimilitud tiene más riesgo en los extremos, lo que esperaríamos porque no tenemos la regularización que aporta la posterior. Igualmente, vemos más riesgo para valores chicos de \\(x\\) que para valores grandes: esto es porque la inicial está concentrada en valores reslativamente grandes de \\(\\theta\\). Riesgo de Bayes Finalmente, podemos crear un resumen unificado considerando: Si no conocemos el valor del parámetro \\(\\theta\\), podemos promediar el riesgo frecuentista con la inicial \\(p(\\theta)\\) Si no conocemos los datos observados, podemos promediar usando datos generados por la marginal \\(p(x)\\) de \\(x\\) bajo el modelo de datos \\(p(x|\\theta)\\) y la inicial \\(p(\\theta)\\). Por la ley de la esperanza iterada, estos dos resultados son iguales. La cantidad resultante \\[r(t) = \\int R(\\theta,t) p(\\theta)\\, d\\theta = \\int r(x, t)p(x|\\theta)p(\\theta)\\, d\\theta\\, dx\\] Se llama riesgo de Bayes para el estimador \\(t\\). Ejemplo Podemos calcular marginal_tbl <- function(n = 20, m = 5000){ theta <- rbeta(m, 5, 3) x <- rbinom(m, size = n, p = theta) tibble(x = x) |> group_by(x) |> summarise(n_x = n()) } riesgo_post_tbl |> left_join(marginal_tbl()) |> group_by(estimador) |> summarise(riesgo_bayes = sum(riesgo_post * n_x) / sum(n_x)) ## # A tibble: 2 × 2 ## estimador riesgo_bayes ## <chr> <dbl> ## 1 MLE 0.0104 ## 2 Posterior 0.00833 o también theta_tbl <- tibble(theta = rbeta(50000, 5, 3) |> round(3)) |> group_by(theta) |> summarise(n_x = n()) riesgo_tbl |> left_join(theta_tbl) |> mutate(n_x = ifelse(is.na(n_x), 0, n_x)) |> group_by(estimador) |> summarise(riesgo_bayes = sum(riesgo * n_x) / sum(n_x)) ## # A tibble: 2 × 2 ## estimador riesgo_bayes ## <chr> <dbl> ## 1 MLE 0.0104 ## 2 Posterior 0.00839 Ahora consideremos cómo decidiríamos, desde el punto de vista Bayesiano, qué estimador usar: (Estimador de Bayes) Si tenemos los datos \\(X\\), escogeríamos una función \\(t_X\\) que minimice el riesgo posterior \\(\\rho(t, X)\\), y nuestro estimador es \\(\\hat{\\theta}_n = t_X (X)\\). (Regla de Bayes) Si no tenemos los datos, escogeríamos el estimador una función \\(t\\) que minimice el riesgo de Bayes \\(r(t)\\), y estimaríamos usando \\(\\hat{\\theta}_n = t(X)\\) Pero como el riesgo de Bayes es el promedio del riesgo posterior, la solución de 1 nos da la solución de 2. Es decir, el estimador que escogemos condicional a los datos \\(X\\) es el mismo que escogeríamos antes de escoger los datos, dada una distribución inicial \\(p(\\theta).\\) Por ejemplo, es posible demostrar que bajo la pérdida cuadrática, la regla de Bayes es utilizar la media posterior, bajo la pérdida absoluta, la mediana posterior, etc. Este estimador de Bayes tiene sentido desde el punto de vista frecuentista, también, porque minimiza el riesgo frecuentista promedio, suponiendo la inicial \\(p(\\theta)\\). Por ejemplo, para la pérdida cuadrática podemos usar la descomposición de sesgo y varianza y obtenemos: \\[r(t) = \\mathbb{E}[R(\\theta,t)] = \\mathbb{E}[ \\mathsf{Sesgo}_\\theta^2(t)] +\\mathbb{E}[\\mathsf{Var}_\\theta(t)] \\] Podemos ver entonces que el estimador de Bayes, en este caso la media posterior, es resultado de minimizar la suma de estas dos cantidades: por eso puede incurrir en sesgo, si ese costo se subsana con una reducción considerable de la varianza. Los estimadores insesgados que vimos en esta sección fueron subóptimos en muchos casos justamente porque son insesgados, e incurren en varianza grande. Regresa a los ejemplos anteriores donde evaluamos el desempeño de la media posterior en varios ejemplos. Muestra en las gráficas dónde ves el balance entre sesgo y varianza que cumplen cuando los comparamos con estimadores insesgados. Desde el punto de vista frecuentista, la cuestión es más complicada y hay varias maneras de proceder. En primer lugar, comenzaríamos con el riesgo frecuentista \\(R(\\theta, t)\\). Una idea es,por ejemplo, calcular el riesgo máximo: \\[R_{\\max} (t) = \\underset{\\theta}{\\max} R(\\theta, t).\\] En nuestro ejemplo de arriba el máximo se alcanza en 0.5, y tomaríamos eso evaluación de los estimadores \\(\\theta_1\\) o \\(\\theta_2\\). Buscaríamos entonces estimadores que minimicen este máximo, es decir, estimadores minimax. Pero también es posible enfocar este problema considerando sólo estimadores insesgados, lo que nos lleva por ejemplo a buscar estimadores con mínima varianza. También podemos enfocarnos en buscar estimador admisibles, que son aquellos cuyo riesgo no está dominado para toda \\(\\theta\\) por otro estimador, y así sucesivamente. Finalmente, es posible demostrar (ver Wasserman (2013)) que típicamente, para muestras grandes, el estimador de máxima verosimilitud es cercano a ser minimax y además es una regla de Bayes. Estas son buenas propiedades, pero debemos contar con que el régimen asintótico se cumpla aproximadamente. Referencias "],["métodos-de-cadenas-de-markov-monte-carlo.html", "Sección 12 Métodos de Cadenas de Markov Monte Carlo Integrales mediante subdivisiones Métodos Monte Carlo Simulando de la posterior 12.1 Ejemplo de islas ¿Por qué funciona Metrópolis? Método de Metrópolis Ajustando el tamaño de salto Metrópolis con varios parámetros Muestreador de Gibbs Conclusiones y observaciones Metrópolis y Gibbs HMC y Stan Diagnósticos generales para MCMC", " Sección 12 Métodos de Cadenas de Markov Monte Carlo Hasta ahora, hemos considerado modelos bayesianos conjugados, donde la posterior tiene una forma conocida. Esto nos permitió simular directamente de la posterior usando las rutinas estándar de R, o utilizar cálculos teóricos o funciones estándar de R para calcular resúmenes de interés, como medias o medianas posteriores o intervalos de credibilidad. Sin embargo, en aplicaciones rara vez es factible este tipo de análisis tan simple, pues: Los modelos que estamos considerando son más complejos y la distribución posterior conjunta de los parámetros no tiene una forma simple conocida. Queremos usar distribuciones iniciales que no son conjugadas para utilizar correctamente nuestra información inicial. Recordamos que tenemos expresiones explícitas para la inicial \\(p(\\theta)\\) y la verosimilitud \\(p(x|\\theta)\\), así que conocemos explícitamente la posterior, módulo la constante de normalización, \\[p(\\theta|x) \\propto p(x|\\theta) \\, p(\\theta).\\] Supongamos por ejemplo que quisiéramos calcular las medias posteriores de los parámetros \\(\\theta\\). En teoría, tendríamos que calcular \\[\\hat \\theta = \\mathbb{E}[{\\theta}\\, |\\, x] = \\int \\theta \\, p(\\theta|x) \\, d\\theta\\] Entonces es necesario calcular también \\(p(x)\\), que resulta de la integral \\[p(x) = \\int p(x|\\theta) \\, p(\\theta)\\, d\\theta\\] Si no tenemos expresiones analíticas simples, tendremos que aproximar numéricamente estas integrales de alguna forma. Si la posterior tiene una forma conocida, podemos calcular cantidades de interés usando fórmulas o rutinas de simulación de distribuciones conocidas que producen muestras independientes. Cuando la posterior no tiene una forma conocida, sin embargo: Podemos intentar usar integración numérica usual. Como veremos, este enfoque no es muy escalable. Podemos usar simulaciones bajo cadenas de Markov (Markov Chain Monte Carlo, MCMC), que es un enfoque más escalable. Mucho del uso generalizado actual de la estadística bayesiana se debe a que gracias al poder de cómputo disponible y los métodos MCMC, no estamos restringidos al uso de 1 y 2, que tienen desventajas grandes. Primero mostraremos cómo el método de integración por subdivisión no es escalable. Integrales mediante subdivisiones Como tenemos una expresión analítica para el integrando, podemos intentar una rutina numérica de integración. Una vez calculada, podríamos entonces usar otra rutina numérica para calcular las medias posteriores \\(\\hat{\\theta}\\). Las rutinas usuales de integración pueden sernos útiles cuando el número de parámetros es chico. Consideremos primero el caso de 1 dimensión, y supongamos que \\(a\\leq\\theta\\leq b\\). Si dividimos el rango de \\(\\theta\\) en intervalos determinados por \\(a = \\theta^1<\\theta^2<\\cdots \\theta^M =b\\), tales que \\(\\Delta\\theta = \\theta^{i+1} -\\theta^{i}\\), podríamos aproximar con \\[p(x) \\approx \\sum_{i=1}^M p(x|\\theta^i)p(\\theta^i) \\Delta\\theta\\] Lo que requiere \\(M\\) evaluaciones del factor \\(p(x|\\theta)p(\\theta)\\). Podríamos usar por ejemplo \\(M=100\\) para tener precisión razonable. Ejemplo: estimación de una proporción Teníamos que \\(p(S_n = k|\\theta) \\propto \\theta^k(1-\\theta)^{n-k}\\) cuando observamos \\(k\\) éxitos en \\(n\\) pruebas independientes. Supongamos que nuestra inicial es \\(p(\\theta) = 2\\theta\\) (checa que es una densidad), es decir, creemos que es más probable a priori observar proporciones altas. Podemos integrar numéricamente crear_log_post <- function(n, k){ function(theta){ verosim <- k * log(theta) + (n - k) * log(1 - theta) inicial <- log(theta) log_p_factor <- verosim + inicial log_p_factor } } # observamos 3 éxitos en 4 pruebas: log_post <- crear_log_post(4, 3) prob_post <- function(x) { exp(log_post(x))} # integramos numéricamente p_x <- integrate(prob_post, lower = 0, upper = 1, subdivisions = 100L) p_x ## 0.03333333 with absolute error < 3.7e-16 Y ahora podemos calcular la media posterior: media_funcion <- function(theta){ theta * prob_post(theta) / p_x$value } integral_media <- integrate(media_funcion, lower = 0, upper = 1, subdivisions = 100L) media_post <- integral_media$value media_post ## [1] 0.7142857 Podemos verificar nuestro trabajo pues sabemos que la posterior es \\(\\mathsf{Beta}(5, 2)\\) cuya media es 5/(2+5) ## [1] 0.7142857 Y podríamos intentar una estrategia similar, por ejemplo, para calcular intervalos de credibilidad. Sin embargo, veremos abajo que este método no escala con el número de parámetros. Más de un parámetro Ahora supongamos que tenemos \\(2\\) parámetros. Dividiríamos cada parámetro en 100 intervalos, y luego tendríamos que calcular \\[p(x) \\approx \\sum_{i=1}^M \\sum_{j=1}^M p(x|\\theta_1^i, \\theta_2^j)p(\\theta_1^i, \\theta_2^j) \\Delta\\theta_1\\Delta\\theta_2\\] Y esto requeriría \\(M^2 = 10,000\\) evaluaciones de \\(p(x|\\theta)p(\\theta)\\). Si tenemos \\(p\\) parámetros, entonces tendríamos que hacer \\(M^p\\) evaluaciones de la posterior. Incluso cuando \\(p=10\\), esta estrategia es infactible, pues tendríamos que hacer más de millones de millones de millones de evaluaciones de la posterior. Si sólo tenemos esta técnica disponible, el análisis bayesiano está considerablemente restringido. Regresión bayesiana con unas 10 covariables por ejemplo, no podría hacerse. De modo que tenemos que replantearnos cómo atacar el problema de calcular o aproximar estas integrales. Métodos Monte Carlo En varias ocasiones anteriormente hemos usado el método Monte Carlo para aproximar integrales: por ejemplo, para calcular medias posteriores. Supongamos que tenemos una densidad \\(p(\\theta)\\). Integración Monte Carlo. Supongamos que queremos calcular el valor esperado de \\(g(X)\\), donde \\(X\\sim p(X\\,|\\,\\theta).\\) Es decir, la variable aleatoria \\(X\\) se distribuye de acuerdo al modelo probabilistico \\(p(X \\, | \\, \\theta),\\) de tal forma que lo que nos interesa calcular es \\[\\mathbb{E}[g(X)] = \\int g(x) p(x|\\theta)\\, dx.\\] Si tomamos una muestra \\(x^{(1)},x^{(2)}, \\ldots x^{(N)} \\overset{iid}{\\sim} p(x|\\theta)\\), entonces \\[\\mathbb{E}[g(X)] \\approx \\, \\frac1N \\, \\sum_{n = 1}^N g(x^{(n)})\\] cuando \\(N\\) es grande. Esto es simplemente una manera de escribir la ley de los grandes números, y hemos aplicado este teorema en varias ocasiones. Nos ha sido útil cuando sabemos cómo simular de distribución \\(p(\\theta | x)\\) (usando alguna rutina de R, por ejemplo, o usando un método estándar como inversión de la función de distribución acumulada). Ejemplo En este ejemplo repetimos cosas que ya hemos visto. En el caso de estimación de una proporción \\(\\theta\\), tenemos como inicial \\(p(\\theta) \\propto \\theta\\), que es \\(\\mathsf{Beta}(2,1)\\). Si observamos 3 éxitos en 4 pruebas, entonces sabemos que la posterior es \\(p(\\theta|x)\\propto \\theta^4(1-\\theta)\\), que es \\(\\mathsf{Beta}(5, 2)\\). Si queremos calcular media y segundo momento posterior para \\(\\theta\\), en teoría necesitamos calcular \\[\\mu = \\int_0^1 \\theta p(\\theta|X = 3)\\, d\\theta,\\,\\, \\mu_2=\\int_0^1 \\theta^2 p(\\theta|X = 3)\\, d\\theta\\] integramos con Monte Carlo theta <- rbeta(10000, 5, 2) media_post <- mean(theta) momento_2_post <- mean(theta^2) c(media_post, momento_2_post) ## [1] 0.7155559 0.5372170 Y podemos aproximar de esta manera cualquier cantidad de interés que esté basada en integrales, como probabilidades asociadas a \\(\\theta\\) o cuantiles asociados. Por ejemplo, podemos aproximar fácilmente \\(P(e^{\\theta}> 2|x)\\) haciendo mean(exp(theta) > 2) ## [1] 0.5958 y así sucesivamente. Este enfoque, sin embargo, es mucho más flexible y poderoso. Ejemplo: varias pruebas independientes Supongamos que probamos el nivel de gusto para 4 sabores distintos de una paleta. Usamos 4 muestras de aproximadamente 50 personas diferentes para cada sabor, y cada uno evalúa si le gustó mucho o no. Obtenemos los siguientes resultados: datos <- tibble( sabor = c("fresa", "limón", "mango", "guanábana"), n = c(50, 45, 51, 50), gusto = c(36, 35, 42, 29)) %>% mutate(prop_gust = gusto / n) datos ## # A tibble: 4 × 4 ## sabor n gusto prop_gust ## <chr> <dbl> <dbl> <dbl> ## 1 fresa 50 36 0.72 ## 2 limón 45 35 0.778 ## 3 mango 51 42 0.824 ## 4 guanábana 50 29 0.58 Usaremos como inicial \\(\\mathsf{Beta}(2, 1)\\) (pues hemos obervado cierto sesgo de cortesía en la calificación de sabores, y no es tan probable tener valores muy bajos) para todos los sabores, es decir \\(p(\\theta_i)\\) es la funcion de densidad de una \\(\\mathsf{Beta}(2, 1)\\). La inicial conjunta la definimos entonces, usando idependiencia inicial, como \\[p(\\theta_1,\\theta_2, \\theta_3,\\theta_4) = p(\\theta_1)p(\\theta_2)p(\\theta_3)p(\\theta_4).\\] Pues inicialmente establecemos que ningún parámetro da información sobre otro: saber que mango es muy gustado no nos dice nada acerca del gusto por fresa. Bajo este supuesto, y el supuesto adicional de que las muestras de cada sabor son independientes, podemos mostrar que las posteriores son independientes: \\[p(\\theta_1,\\theta_2,\\theta_3, \\theta_4|k_1,k_2,k_3,k_4) = p(\\theta_4|k_1)p(\\theta_4|k_2)p(\\theta_4|k_3)p(\\theta_4|k_4)\\] De forma que podemos trabajar individualmente con cada muestra. Calculamos los parámetros de las posteriores individuales: datos <- datos %>% mutate(a_post = gusto + 2, b_post = n - gusto + 1) datos ## # A tibble: 4 × 6 ## sabor n gusto prop_gust a_post b_post ## <chr> <dbl> <dbl> <dbl> <dbl> <dbl> ## 1 fresa 50 36 0.72 38 15 ## 2 limón 45 35 0.778 37 11 ## 3 mango 51 42 0.824 44 10 ## 4 guanábana 50 29 0.58 31 22 Ahora nos preguntamos, ¿cuál es la probabilidad posterior de que mango sea el sabor más preferido de la población? Conocemos la posterior para cada parámetro, y sabemos que los parámetros son independientes para la posterior. Eso quiere decir que podemos simular de cada parámetro independientemente para obtener simulaciones de la conjunta posterior. simular_conjunta <- function(rep, datos){ datos %>% mutate(valor_sim = map2_dbl(a_post, b_post, ~ rbeta(1, .x, .y))) %>% select(sabor, valor_sim) } simular_conjunta(1, datos) ## # A tibble: 4 × 2 ## sabor valor_sim ## <chr> <dbl> ## 1 fresa 0.755 ## 2 limón 0.783 ## 3 mango 0.819 ## 4 guanábana 0.569 # esta no es una manera muy rápida, podríamos calcular todas las # simulaciones de cada parámetro de manera vectorizada sims_posterior <- tibble(rep = 1:5000) %>% mutate(sims = map(rep, ~ simular_conjunta(.x, datos))) %>% unnest(cols = sims) sims_posterior ## # A tibble: 20,000 × 3 ## rep sabor valor_sim ## <int> <chr> <dbl> ## 1 1 fresa 0.732 ## 2 1 limón 0.831 ## 3 1 mango 0.850 ## 4 1 guanábana 0.397 ## 5 2 fresa 0.670 ## 6 2 limón 0.839 ## 7 2 mango 0.664 ## 8 2 guanábana 0.558 ## 9 3 fresa 0.671 ## 10 3 limón 0.758 ## # ℹ 19,990 more rows Y ahora podemos aproximar fácilmente la probabilidad de interés: sims_posterior %>% group_by(rep) %>% mutate(sabor = sabor[which.max(valor_sim)]) %>% group_by(sabor) %>% count() %>% ungroup() %>% mutate(prop = n / sum(n)) ## # A tibble: 4 × 3 ## sabor n prop ## <chr> <int> <dbl> ## 1 fresa 1264 0.0632 ## 2 guanábana 8 0.0004 ## 3 limón 5396 0.270 ## 4 mango 13332 0.667 Y vemos que los mejores sabores son mango y limón. La probabilidad posterior de que mango sea el sabor preferido por la población es de 66%. La integral correspondiente no es trivial. ¿Cuáles son las probabilidades a priori de que cada sabor sea el preferido por la población? ¿Cuál es la integral correspondiente a las probabilidades que acabamos de calcular? ¿Qué tan fácil es hacer esta integral de manera analítica? Calcula la probabilidad de que mango sea preferido a limón? ¿Qué conclusión práctica sacas de estos resultados? Simulando de la posterior Hemos establecido que podemos contestar varias preguntas de inferencia usando simulación Monte Carlo, y que este enfoque es potencialmente escalable (en contraste con métodos de integración numérica por cuadrícula). Ahora el problema que necesitamos resolver es el siguiente: Conocemos \\(p(\\theta |x)\\) módulo una constante de integración. En general, \\(p(\\theta|x)\\) no tiene una forma reconocible que corresponda a un simulador estándar. ¿Cómo simulamos de esta posterior cuando sólo sabemos calcular \\(p(x|\\theta)p(\\theta)\\)? Hay varias maneras de hacer esto. Presentaremos los algoritmos en términos de una distribución cualquiera \\(p(\\theta) = K f(\\theta)\\), donde sólo conocemos la función \\(f(\\theta)\\). 12.1 Ejemplo de islas Comenzamos revisando el ejemplo de las islas en Kruschke (2015) (7.2) para tener más intuición de cómo funciona este algoritmo. ¿Por qué funciona Metrópolis? Supongamos que un vendedor de Yakult trabaja a lo largo de una cadena de islas: Constantemente viaja entre las islas ofreciendo sus productos; Al final de un día de trabajo decide si permanece en la misma isla o se transporta a una de las \\(2\\) islas vecinas; El vendedor ignora la distribución de la población en las islas y el número total de islas; sin embargo, una vez que se encuentra en una isla puede investigar la población de la misma y también de la isla a la que se propone viajar después. El objetivo del vendedor es visitar las islas de manera proporcional a la población de cada una. Con esto en mente el vendedor utiliza el siguiente proceso: Lanza un volado, si el resultado es águila se propone ir a la isla del lado izquierdo de su ubicación actual y si es sol a la del lado derecho. Si la isla propuesta en el paso anterior tiene población mayor a la población de la isla actual, el vendedor decide viajar a ella. Si la isla vecina tiene población menor, entonces visita la isla propuesta con una probabilidad que depende de la población de las islas. Sea \\(P^*\\) la población de la isla propuesta y \\(P_{t}\\) la población de la isla actual. Entonces el vendedor cambia de isla con probabilidad \\[q_{mover}=P^*/P_{t}\\] A la larga, si el vendedor sigue la heurística anterior la probabilidad de que el vendedor este en alguna de las islas coincide con la población relativa de la isla. islas <- tibble(islas = 1:10, pob = 1:10) camina_isla <- function(i){ # i: isla actual u <- runif(1) # volado v <- ifelse(u < 0.5, i - 1, i + 1) # isla vecina (índice) if (v < 1 | v > 10) { # si estás en los extremos y el volado indica salir return(i) } p_move = ifelse(islas$pob[v] > islas$pob[i], 1, islas$pob[v] / islas$pob[i]) u2 <- runif(1) if (p_move > u2) { return(v) # isla destino } else { return(i) # me quedo en la misma isla } } pasos <- 100000 iteraciones <- numeric(pasos) iteraciones[1] <- sample(1:10, 1) # isla inicial for (j in 2:pasos) { iteraciones[j] <- camina_isla(iteraciones[j - 1]) } caminata <- tibble(pasos = 1:pasos, isla = iteraciones) plot_caminata <- ggplot(caminata[1:1000, ], aes(x = pasos, y = isla)) + geom_point(size = 0.8) + geom_path(alpha = 0.5) + coord_flip() + labs(title = "Caminata aleatoria") + scale_y_continuous(expression(theta), breaks = 1:10) + scale_x_continuous("Tiempo") plot_dist <- ggplot(caminata, aes(x = isla)) + geom_histogram() + scale_x_continuous(expression(theta), breaks = 1:10) + labs(title = "Distribución objetivo", y = expression(P(theta))) plot_caminata / plot_dist Entonces: Para aproximar la distribución objetivo debemos permitir que el vendedor recorra las islas durante una sucesión larga de pasos y registramos sus visitas. Nuestra aproximación de la distribución es justamente el registro de sus visitas. Más aún, debemos tener cuidado y excluir la porción de las visitas que se encuentran bajo la influencia de la posición inicial. Esto es, debemos excluir el periodo de calentamiento. Una vez que tenemos un registro largo de los viajes del vendedor (excluyendo el calentamiento) podemos aproximar la distribución objetivo simplemente contando el número relativo de veces que el vendedor visitó dicha isla. t <- c(1:10, 20, 50, 100, 200, 1000, 5000) plots_list <- map(t, function(i){ ggplot(caminata[1:i, ], aes(x = isla)) + geom_histogram() + labs(y = "", x = "", title = paste("t = ", i, sep = "")) + scale_x_continuous(expression(theta), breaks = 1:10, limits = c(0, 11)) }) wrap_plots(plots_list) Escribamos el algoritmo, para esto indexamos las islas por el valor \\(\\theta\\), es así que la isla del extremo oeste corresponde a \\(\\theta=1\\) y la población relativa de cada isla es \\(P(\\theta)\\): El vendedor se ubica en \\(\\theta^{(i)}\\) y propone moverse a la izquierda o derecha con probabilidad \\(0.5\\). El rango de los posibles valores para moverse, y la probabilidad de proponer cada uno se conoce como distribución propuesta, en nuestro ejemplo sólo toma dos valores cada uno con probabilidad \\(0.5\\). Una vez que se propone un movimiento, decidimos si aceptarlo. La decisión de aceptar se basa en el valor de la distribución objetivo en la posición propuesta, relativo al valor de la distribución objetivo en la posición actual: \\[\\alpha=\\min\\bigg\\{\\frac{P(\\theta^*)}{P(\\theta^{(i)})},1\\bigg\\},\\] donde \\(\\alpha\\) denota la probabilidad de hacer el cambio de isla. Notemos que la distribución objetivo \\(P(\\theta)\\) no necesita estar normalizada, esto es porque lo que nos interesa es el cociente \\(P(\\theta^*)/P(\\theta^{(i)})\\). Una vez que propusimos un movimiento y calculamos la probabilidad de aceptar el movimiento aceptamos o rechazamos el movimiento generando un valor de una distribución uniforme, si dicho valor es menor a la probabilidad de cambio, \\(\\alpha,\\) entonces hacemos el movimiento. Entonces, para utilizar el algoritmo necesitamos ser capaces de: Generar un valor de la distribución propuesta, que hemos denotado por \\(q,\\) (para crear \\(\\theta^*\\)). Evaluar la distribución objetivo en cualquier valor propuesto (para calcular \\(P(\\theta^*)/P(\\theta^{(i)})\\)). Generar un valor uniforme (para movernos con probabilidad \\(\\alpha\\)). Las \\(3\\) puntos anteriores nos permiten generar muestras aleatorias de la distribución objetivo, sin importar si esta está normalizada. Esta técnica es particularmente útil cuando cuando la distribución objetivo es una posterior proporcional a \\(p(x|\\theta)p(\\theta)\\). Para entender porque funciona el algoritmo de Metrópolis hace falta entender \\(2\\) puntos, primero que la distribución objetivo es estable: si la probabilidad actual de ubicarse en una posición coincide con la probabilidad en la distribución objetivo, entonces el algoritmo preserva las probabilidades. library(expm) transMat <- function(P){ # recibe vector de probabilidades (o población) T <- matrix(0, 10, 10) n <- length(P - 1) # número de estados for (j in 2:n - 1) { # llenamos por fila T[j, j - 1] <- 0.5 * min(P[j - 1] / P[j], 1) T[j, j] <- 0.5 * (1 - min(P[j - 1] / P[j], 1)) + 0.5 * (1 - min(P[j + 1] / P[j], 1)) T[j, j + 1] <- 0.5 * min(P[j + 1] / P[j], 1) } # faltan los casos j = 1 y j = n T[1, 1] <- 0.5 + 0.5 * (1 - min(P[2] / P[1], 1)) T[1, 2] <- 0.5 * min(P[2] / P[1], 1) T[n, n] <- 0.5 + 0.5 * (1 - min(P[n - 1] / P[n], 1)) T[n, n - 1] <- 0.5 * min(P[n - 1] / P[n], 1) T } T <- transMat(islas$pob) w <- c(0, 1, rep(0, 8)) t <- c(1:10, 20, 50, 100, 200, 1000, 5000) expT <- map_df(t, ~data.frame(t = ., w %*% (T %^% .))) expT_long <- expT %>% gather(theta, P, -t) %>% mutate(theta = parse_number(theta)) ggplot(expT_long, aes(x = theta, y = P)) + geom_bar(stat = "identity", fill = "darkgray") + facet_wrap(~ t) + scale_x_continuous(expression(theta), breaks = 1:10, limits = c(0, 11)) El segundo punto es que el proceso converge a la distribución objetivo. Podemos ver, (en nuestro ejemplo sencillo) que sin importar el punto de inicio se alcanza la distribución objetivo. inicio_p <- function(i){ w <- rep(0, 10) w[i] <- 1 t <- c(1, 10, 50, 100) exp_t <- map_df(t, ~ data.frame(t = .x, inicio = i, w %*% (T %^% .))) %>% gather(theta, P, -t, -inicio) %>% mutate(theta = parse_number(theta)) exp_t } exp_t <- map_df(c(1, 3, 5, 9), inicio_p) ggplot(exp_t, aes(x = as.numeric(theta), y = P)) + geom_bar(stat = "identity", fill = "darkgray") + facet_grid(inicio ~ t) + scale_x_continuous(expression(theta), breaks = 1:10, limits = c(0, 11)) Método de Metrópolis En el método de Metrópolis, uno de los más antiguos, comenzamos con un valor inicial de los parámetros \\(\\theta^{(0)}\\) en el soporte de \\(p(\\theta)\\), es decir \\(p(\\theta^{(0)})>0.\\) Para \\(i=1, \\ldots, M\\), hacemos: Partiendo de \\(\\theta^{(i)}\\), hacemos un salto corto en una dirección al azar para obtener una propuesta \\(\\theta^* \\sim q(\\theta \\, |\\, \\theta^{(i)}).\\) Aceptamos or rechazamos el salto: Si \\(\\alpha = \\frac{f(\\theta^*)}{f(\\theta^{(i)})} \\geq 1\\), aceptamos el salto y ponemos \\(\\theta^{(i+1)}=\\theta^*\\). Regresamos a 1 para la siguiente iteración \\(i\\leftarrow i + 1.\\) Si \\(\\alpha = \\frac{f(\\theta^*)}{f(\\theta^{(i)})} < 1\\), entonces aceptamos con probabilidad \\(\\alpha\\) el salto, ponemos \\(\\theta^{(i+1)}=\\theta^*\\) y regresamos a 1 para la siguiente iteración \\(i\\leftarrow i + 1\\). Si rechazamos el salto, ponemos entonces \\(\\theta^{(i+1)}=\\theta^{(i)}\\) y regresamos a 1 para la siguiente iteración \\(i\\leftarrow i + 1.\\) Requerimos también que la función que propone los saltos sea simétrica: es decir, \\(q(\\theta^*|\\theta^{(i)})\\) debe ser igual a \\(q(\\theta^{(i)}|\\theta^*)\\). Se puede modificar el algoritmo para tratar con una propuesta que no sea simétrica. Una elección común es escoger \\(q(\\theta^* |\\theta^{(i)})\\) como una \\(\\mathsf{N}(\\theta^{(i)}, \\sigma_{salto})\\). En este curso, escribiremos varios métodos de cadenas de Markov para estimación Monte Carlo (Markov Chain Monte Carlo, MCMC) desde cero para entender los básicos de cómo funciona. Sin embargo, en la práctica no hacemos esto, sino que usamos software estándar (Stan, JAGS, BUGS, etc.) para hacer este trabajo. Expertos en MCMC, métodos numéricos, y estadística a veces escriben partes de sus rutinas de simulación, y pueden lograr mejoras de desempeño considerables. Excepto para modelos simples, esto no es trivial de hacer garantizando resultados correctos. En resumen, todo el código de esta sección es de carácter ilustrativo. Utiliza implementaciones establecidas en las aplicaciones. Abajo implementamos el algoritmo con un salto de tipo normal: crear_metropolis <- function(fun_log, sigma_salto = 0.1){ # la entrada es la log posterior iterar_metropolis <- function(theta_inicial, n){ p <- length(theta_inicial) nombres <- names(theta_inicial) iteraciones <- matrix(0, nrow = n, ncol = p) colnames(iteraciones) <- nombres iteraciones[1,] <- theta_inicial for(i in 2:n){ theta <- iteraciones[i - 1, ] theta_prop <- theta + rnorm(p, 0, sigma_salto) # exp(log(p) - log(q)) = p/q cociente <- exp(fun_log(theta_prop) - fun_log(theta)) if(cociente >= 1 || runif(1,0,1) < cociente){ iteraciones[i, ] <- theta_prop } else { iteraciones[i, ] <- theta } } iteraciones_tbl <- iteraciones %>% as_tibble() %>% mutate(iter_num = row_number()) %>% select(iter_num, everything()) iteraciones_tbl } iterar_metropolis } E intentamos simular de una exponencial no normalizada: exp_no_norm <- function(x) { z <- ifelse(x > 0, exp(-0.5 * x), 0) log(z) } iterador_metro <- crear_metropolis(exp_no_norm, sigma_salto = 0.25) sims_tbl <- iterador_metro(c(theta = 0.5), 50000) ggplot(sims_tbl, aes(x = theta)) + geom_histogram() Ahora probemos con una \\(\\mathsf{Beta}(3, 2):\\) beta_no_norm <- function(x) { z <- ifelse(x > 0 && x < 1, (x^2)*(1-x), 0) log(z) } iterador_metro <- crear_metropolis(beta_no_norm, sigma_salto = 0.04) sims_metro_tbl <- iterador_metro(c(theta = 0.5), 50000) sims_indep_tbl <- tibble(iter_num = 1:30000, theta = rbeta(30000, 3, 2)) g_1 <- ggplot(sims_metro_tbl, aes(x = theta)) + geom_histogram() + labs(subtitle = "Metrópolis") g_2 <- ggplot(sims_indep_tbl, aes(x = theta)) + geom_histogram() + labs(subtitle = "rbeta") g_1 + g_2 Y vemos que esto funciona. Nótese sin embargo un aspecto de estas simulaciones que no habíamos encontrado en el curso. Aunque la distribución final de las simulaciones es muy cercana a la de la distribución que queremos simular, lo cual era nuestro propósito, las simulaciones no son extracciones independientes de esa distribución. La construcción del algoritmo muestra eso, pero podemos también graficar las simulaciones: g_metropolis <- sims_metro_tbl %>% filter(iter_num < 500) %>% ggplot(aes(x = iter_num, y = theta)) + geom_line() + labs(subtitle = "Metrópolis") g_indep <- sims_indep_tbl %>% filter(iter_num < 500) %>% ggplot(aes(x = iter_num, y = theta)) + geom_line() + labs(subtitle = "Independientes") g_metropolis + g_indep Donde vemos claramente que las simulaciones de metropolis están autocorrelacionadas: la siguiente simulación depende de la anterior. Esto define una cadena de Markov. En cualquiera de los dos casos, como vimos en los histogramas de arriba, las simulaciones “visitan” cada parte [0,1] de manera proporcional a la densidad, de manera que podemos usar ambos tipos de simulaciones para aproximar la integral o cantidad que nos interesa. Por ejemplo, la media posterior es: media_1 <- sims_metro_tbl %>% summarise(media_post = mean(theta)) %>% pull(media_post) media_2 <- sims_indep_tbl %>% summarise(media_post = mean(theta)) %>% pull(media_post) media_exacta <- 3/(3 + 2) tibble(metodo = c("sim Metrópolis", "sim Independiente", "exacto"), media_post = c(media_1, media_2, media_exacta)) ## # A tibble: 3 × 2 ## metodo media_post ## <chr> <dbl> ## 1 sim Metrópolis 0.605 ## 2 sim Independiente 0.602 ## 3 exacto 0.6 Supongamos que queremos simular de una distribución \\(p(\\theta)\\), pero sólo conocemos \\(p(\\theta)\\) módulo una constante. Bajo ciertas condiciones de regularidad: El algoritmo Metrópolis para la distribución \\(p(\\theta)\\) define una cadena de Markov cuya distribución a largo plazo es \\(p(\\theta)\\). Esto implica que si \\(\\theta^{(1)},\\theta^{(2)}, \\ldots, \\theta^{(M)}\\) es una simulación de esta cadena, y \\(M\\) es suficientemente grande La distribución de las \\(\\theta^{(i)}\\) es aproximadamente \\(p(\\theta)\\), Tenemos que \\[ \\frac1M \\sum_{m = 1}^M h(\\theta^{(m)}) \\to \\int h(\\theta)p(\\theta)\\, d\\theta\\] cuando \\(M\\to \\infty\\) Observaciones: Aunque hay distintas condiciones de regularidad que pueden funcionar, generalmente el supuesto es que la cadena de Markov construída es ergódica, y hay varias condiciones que garantizan esta propiedad. Una condición simple, por ejemplo, es que el soporte de la distribución \\(p(\\theta)\\) es un conjunto conexo del espacio de parámetros. Más crucialmente, este resultado no dice qué tan grande debe ser \\(M\\) para que la aproximación sea buena. Esto depende de cómo es \\(p(\\theta)\\), y de la distribución que se utiliza para obtener los saltos propuestos. Dependiendo de estos dos factores, la convergencia puede ser rápida (exponencial) o tan lenta que es infactible usarla. Más adelante veremos diagnósticos para descartar los peores casos de falta de convergencia. Ajustando el tamaño de salto En el algoritmo Metrópolis, generalmente es importante escoger la dispersión de la distribución que genera propuestas con cuidado. Si la dispersión de la propuesta es demasiado grande, tenderemos a rechazar mucho, y la convergencia será lenta. Si la dispersión de la propuesta es demasiado chica, tardaremos mucho tiempo en explorar las distintas partes de la distribución objetivo. Ejemplo Supongamos que queremos simular usando metróplis de una distribución \\(\\textsf{Gamma}(20, 100)\\). Abajo vemos la forma de esta distribución: sim_indep <- tibble(theta = rgamma(10000, 20, 100)) ggplot(sim_indep, aes(x = theta)) + geom_histogram() # logaritmo de densidad no normalizada log_f_dist <- function(x) 210 + dgamma(x, 20, 100, log = TRUE) # iterar iterador_metro_chico <- crear_metropolis(log_f_dist, sigma_salto = 0.001) sims_chico_tbl <- iterador_metro_chico(c(theta = 0.02), 50000) g_sim <- ggplot(sims_chico_tbl %>% filter(iter_num < 3000), aes(x = iter_num, y = theta)) + geom_line() + ylim(c(0, 0.5)) dist_bplot <- ggplot(tibble(x = rgamma(10000, 20, 100)), aes(y = x, x = "a")) + geom_violin() + ylab("") + ylim(0, 0.5) g_sim + dist_bplot + plot_layout(widths = c(5, 1)) Nótese que después de 5 mil iteraciones estamos muy lejos de tener una muestra que se aproxime a la distribución objetivo. Empezamos en un lugar bajo, y la cadena sólo ha ido lentamente hacia las zonas de alta densidad. Cualquier resumen con esta cadena estaría fuertemente sesgado al valor donde iniciamos la iteración. Decimos que la cadena todavía no mezcla en las primeras 5 mil iteraciones. Ahora vemos qué pasa si ponemos el tamaño de salto demasiado grande: set.seed(831) iterador_metro_grande <- crear_metropolis(log_f_dist, sigma_salto = 20) sims_grande_tbl <- iterador_metro_grande(c(theta = 0.02), 50000) g_sim <- ggplot(sims_grande_tbl %>% filter(iter_num < 3000), aes(x = iter_num, y = theta)) + geom_line() + ylim(c(0, 0.5)) g_sim + dist_bplot + plot_layout(widths = c(5, 1)) En este caso, la cadena se atora muchas veces, pues las propuestas tienen probabilidad muy baja, y tendemos a tener una tasa de rechazos muy alta. Esto quiere decir que la información que tenemos acerca de la posterior es relativamente poca, pues muchos datos son repeticiones del mismo valor. Cualquier resumen con esta cadena podría estar muy lejos del verdadero valor, pues su varianza es alta - otra corrida se “atoraría” en otros valores distintos. Nótese que cualquiera de estas cadenas, si la corremos suficientemente tiempo, nos daría resultados buenos. Sin embargo, el número de simulaciones puede ser infactible. Un valor intermedio nos dará mucho mejores resultados: set.seed(831) iterador_metro_apropiada <- crear_metropolis(log_f_dist, sigma_salto = 0.1) sims_tbl <-iterador_metro_apropiada(c(theta = 0.02), 50000) g_sim <- ggplot(sims_tbl %>% filter(iter_num < 3000), aes(x = iter_num, y = theta)) + geom_line() + ylim(c(0, 0.5)) g_sim + dist_bplot + plot_layout(widths = c(5, 1)) Donde vemos que esta cadena parece mezclar bien (está explorando la totalidad de la distribución objetivo), y también parece estar en un estado estable. Comparemos cómo saldría por ejemplo la media posterior aproximada según los tres métodos: estimaciones_media <- map_dfr( list(sims_chico_tbl, sims_grande_tbl, sims_tbl), ~ filter(.x, iter_num < 3000) %>% summarise(media = mean(theta))) %>% mutate(tipo = c("salto chico", "salto grande", "salto apropiado")) estimaciones_media %>% bind_rows(tibble(tipo = "exacta", media = 20/100)) %>% select(tipo, media) ## # A tibble: 4 × 2 ## tipo media ## <chr> <dbl> ## 1 salto chico 0.128 ## 2 salto grande 0.190 ## 3 salto apropiado 0.203 ## 4 exacta 0.2 Veamos otra corrida: set.seed(6222131) sims_chica_tbl <- iterador_metro_chico(c(theta = 0.02), 5000) sims_grande_tbl <- iterador_metro_grande(c(theta = 0.02), 5000) estimaciones_media <- map_dfr( list(sims_chica_tbl, sims_grande_tbl, sims_tbl), ~ filter(.x, iter_num < 3000) %>% summarise(media = mean(theta))) %>% mutate(tipo = c("salto chico", "salto grande", "salto apropiado")) estimaciones_media %>% bind_rows(tibble(tipo = "exacta", media = 20/100)) %>% select(tipo, media) ## # A tibble: 4 × 2 ## tipo media ## <chr> <dbl> ## 1 salto chico 0.124 ## 2 salto grande 0.229 ## 3 salto apropiado 0.203 ## 4 exacta 0.2 Repite este proceso varias veces. Verifica que: Si el tamaño de paso es muy chico, las estimaciones de la media tienen sesgo alto. Si el tamaño de paso es muy grande, las estimaciones tienen varianza alta. Si el tamaño de paso es adecuado, obtenemos buena precisión en la estimación de la media posterior. Explica estos tres casos en términos de la convergencia de las realizaciones de la cadena de Markov. Explica cómo afecta a cada caso el valor inicial de las simulaciones de Metrópolis. Repite para otra estadística, como la desviación estándar o el rangon intercuartil. Metrópolis con varios parámetros Ahora aplicaremos el algoritmo Metrópolis cuando tenemos varios parámetros. La idea es la misma, pero nuestra distribución de salto debe ser multivariada. Una selección usual es usando saltos normales independientes para cada parámetro, es decir, la normal multivariada con matriz de varianza y covarianza diagonal. Ejemplo: el modelo normal Veremos cómo simular con Metrópolis para el problema de los cantantes. Sabemos como calcular la posterior: crear_log_posterior_norm <- function(x = datos, m_0, n_0, a, b){ # calcula log_posterior log_posterior <- function(mu, sigma){ log_verosim <- sum(dnorm(x, mu, sigma, log = TRUE)) tau <- 1 / sigma^2 log_inicial <- dgamma(tau, a, b, log = TRUE) + dnorm(mu, mu_0, sigma/sqrt(n_0), log = TRUE) log_p <- log_verosim + log_inicial log_p } log_posterior } # parametros de inicial y datos a <- 3 b <- 140 mu_0 <- 175 n_0 <- 5 set.seed(3413) cantantes <- lattice::singer %>% mutate(estatura_cm = round(2.54 * height)) %>% filter(str_detect(voice.part, "Tenor")) %>% sample_n(20) Vemos cómo se ven las primeras iteraciones de nuestra cadena de Markov: log_p <- crear_log_posterior_norm(cantantes$estatura_cm, mu_0, n_0, a, b) log_post <- function(pars) { log_p(pars[1], pars[2]) } set.seed(823) metro_normal <- crear_metropolis(log_post, sigma_salto = 0.5) sim_tbl <- metro_normal(c(mu = 172, sigma = 3), 50000) ggplot(sim_tbl %>% filter(iter_num < 100), aes(x = mu, y = sigma)) + geom_path() + geom_point() Y ahora vemos todas las simulaciones: g_normal <- ggplot(sim_tbl, aes(x = mu, y = sigma)) + geom_point(alpha = 0.05)+ coord_equal() + ylim(c(0, 14)) g_normal Y las medias posteriores son: sim_tbl %>% summarise(across(is_double, mean)) ## # A tibble: 1 × 2 ## mu sigma ## <dbl> <dbl> ## 1 176. 6.80 Ejemplo: observaciones normales, no conjugado Arriba repetimos el análisis conjugado usando Metrópolis. Aunque ya no es necesario usar el modelo conjugado, y podemos poner iniciales que sean más intuitivas y acorde con nuestro conocimiento existente. Por ejemplo, podemos poner \\(p(\\mu, \\sigma) = p(\\mu)p(\\sigma)\\), donde la densidad de \\(\\mu \\sim \\mathsf{N}(175, 2)\\) y \\(\\sigma \\sim \\mathsf{U}[2, 20].\\) Igual que antes, la verosimilitud \\(p(x|\\mu, \\sigma)\\) es normal con media \\(\\mu\\) y desviación estándar \\(\\sigma.\\) Escribimos la posterior: crear_log_posterior <- function(x, m_0, sigma_0, inf, sup){ # calcula log_posterior log_posterior <- function(mu, sigma){ log_verosim <- sum(dnorm(x, mu, sigma, log = TRUE)) log_inicial <- dunif(sigma, inf, sup, log = TRUE) + dnorm(mu, mu_0, sigma_0, log = TRUE) log_p <- log_verosim + log_inicial log_p } log_posterior } log_p <- crear_log_posterior(cantantes$estatura_cm, 175, 3, 2, 20) log_post <- function(pars) { log_p(pars[1], pars[2]) } set.seed(8231) metro_normal <- crear_metropolis(log_post, sigma_salto = 0.5) sim_tbl <- metro_normal(c(mu = 172, sigma = 5), 50000) g_normal_2 <- ggplot(sim_tbl, aes(x = mu, y = sigma)) + geom_point(alpha = 0.05) + coord_equal() + ylim(c(0, 14)) g_normal + g_normal_2 Los resultados son similares, pero en nuestras estimaciones bajo el segundo modelo, la \\(\\sigma\\) está concentrada en valores un poco más bajos que el modelo normal-gamma inversa. Las medias posteriores son: sim_tbl %>% summarise(across(is.numeric, mean)) ## # A tibble: 1 × 3 ## iter_num mu sigma ## <dbl> <dbl> <dbl> ## 1 25000. 176. 6.54 Nótese que la inicial para el modelo normal-gamma inversa pone muy poca probabilidad para valores bajos de \\(\\sigma\\), mientras que el segundo modelo hay un 10% de probabilidad de que la \\(\\sigma\\) sea menor que 4. tau <- rgamma(5000, 3, 150) sigma <- 1/sqrt(tau) quantile(sigma, c(0.01,0.1, 0.9, 0.99)) ## 1% 10% 90% 99% ## 4.219278 5.276228 11.579358 19.038529 quantile(runif(5000, 2, 25), c(0.01,0.1, 0.9, 0.99)) ## 1% 10% 90% 99% ## 2.261297 4.254128 22.691760 24.719630 Ejemplo: exámenes Recordamos un ejemplo que vimos en la sección de máxima verosimilitud. Supongamos que en una población de estudiantes tenemos dos tipos: unos llenaron un examen de opción múltiple al azar (1 de 5), y otros contestaron las preguntas intentando sacar una buena calificación. Suponemos que una vez que conocemos el tipo de estudiante, todas las preguntas tienen la misma probabilidad de ser contestadas correctamente, de manera independiente. El modelo teórico está representado por la siguiente simulación: sim_formas <- function(p_azar, p_corr){ tipo <- rbinom(1, 1, 1 - p_azar) if(tipo==0){ # al azar x <- rbinom(1, 10, 1/5) } else { # no al azar x <- rbinom(1, 10, p_corr) } x } Y una muestra se ve como sigue: set.seed(12) muestra <- map_dbl(1:200, ~ sim_formas(0.35, 0.5)) qplot(muestra) Supongamos que no conocemos la probabildad de contestar correctamente ni la proporción de estudiantes que contestó al azar. ¿Como estimamos estas dos cantidades? La verosimilitud la escribimos en el ejercicio anterior en la sección de máxima verosimilitud, está dada, para las repuestas de un estudiante, por: \\[p(X = k|\\theta_{azar}, \\theta_{corr}) \\propto \\theta_{azar}(1/5)^k(4/5)^{10-k} + (1-\\theta_{azar})\\theta_{corr}^k(1-\\theta_{corr})^{10-k}\\] Suponiendo que todas las preguntas tienen la misma dificultad, y que los estudiantes que estudiaron son homogéneos (podemos discutir qué haríamos para introducir heterogeneidad que típicamente observaríamos). Creemos que la mayoría de los estudiantes no contesta al azar, así que pondremos como inicial \\[\\theta_{azar} \\sim \\mathsf{Beta}(1, 5)\\] qbeta(c(0.1, 0.9), 1, 5) %>% round(2) ## [1] 0.02 0.37 Ahora tenemos que pensar en la probabilidad \\(\\theta_{corr}\\) para los estudiantes que sí estudiaron. Imaginemos que lo probamos con un estudiante que sabemos que sí estudió, y obtuvo un porcentaje de correctos de 7/10, Podríamos poner entonces (vimos 10 intentos, con 3 fracasos y 7 éxitos): \\[\\theta_{corr} \\sim \\mathsf{Beta}(7, 3)\\] Finalmente, necesitamos la conjunta inicial. Pondremos \\[p(\\theta_{azar},\\theta_{corr}) = p(\\theta_{azar})p(\\theta_{corr})\\] con lo que expresamos que inicialmente no creemos que estos dos parámetros estén relacionados. Si pensáramos, por ejemplo, que cuando hacemos exámenes difíciles menos estudiantes estudian, entonces deberíamos intentar otra conjunta. Escribimos el producto de la verosimilitud con la inicial: crear_log_posterior <- function(x){ log_posterior <- function(theta_azar, theta_corr){ log_verosim <- sum(log(theta_azar * dbinom(x, 10, 1/5) + (1 - theta_azar) * dbinom(x, 10, theta_corr))) log_inicial <- dbeta(theta_azar, 1, 5, log = TRUE) + dbeta(theta_corr, 7, 3, log = TRUE) log_post <- log_verosim + log_inicial log_post } log_posterior } Creamos la función de verosimilitud con los datos log_p <- crear_log_posterior(muestra) log_post <- function(pars) { log_p(pars[1], pars[2]) } set.seed(8231) metro_examenes <- crear_metropolis(log_post, sigma_salto = 0.02) sim_tbl <- metro_examenes(c(theta_azar = 0.5, theta_corr = 0.5), 20000) g_1 <- ggplot(sim_tbl, aes(x = theta_azar, y = theta_corr)) + geom_point(alpha = 0.05) + coord_equal() g_1 Nótese que hay cierta correlación entre las dos proporciones, y esto produce intervalos posteriores relativamente amplios. Esto es de esperarse, pues los datos son consistentes con una proporción relativamente chica de estudiantes que contestan al azar, y tasas de correctos más altas entre los que sí estudian, y una proporción más grande de respuestas al azar con tasas de correctos más altas. f <- c(0.05, 0.5, 0.95) sim_tbl %>% pivot_longer(-iter_num, names_to = "parametro", values_to = "valor") %>% group_by(parametro) %>% summarise(cuantil = quantile(valor, f), f = f) %>% mutate(cuantil = round(cuantil, 2)) %>% pivot_wider(names_from = f, values_from = cuantil) ## # A tibble: 2 × 4 ## # Groups: parametro [2] ## parametro `0.05` `0.5` `0.95` ## <chr> <dbl> <dbl> <dbl> ## 1 theta_azar 0.3 0.38 0.45 ## 2 theta_corr 0.5 0.52 0.56 Muestreador de Gibbs El algoritmo de Metrópolis es muy general y se puede aplicar a una gran variedad de problemas. Sin embargo, afinar los parámetros de la distribución propuesta para que el algoritmo funcione correctamente puede ser complicado. El muestredor de Gibbs no necesita de una distribución propuesta y por lo tanto no requiere afinar estos parámetros. Para implementar un muestreador de Gibbs se necesita ser capaz de generar muestras de la distribución posterior condicional a cada uno de los parámetros individuales. Esto es, el muestreador de Gibbs permite generar muestras de la posterior: \\[p(\\theta_1,...,\\theta_p|x)\\] siempre y cuando podamos generar valores de todas las distribuciones condicionales: \\[\\theta_k \\sim p(\\theta_k|\\theta_1,...,\\theta_{k-1},\\theta_{k+1},...,\\theta_p,x).\\] El proceso del muestreador de Gibbs es una caminata aleatoria a lo largo del espacio de parámetros. La caminata inicia en un punto arbitrario y en cada tiempo el siguiente paso depende únicamente de la posición actual. Por tanto el muestredor de Gibbs es un proceso cadena de Markov vía Monte Carlo. La diferencia entre Gibbs y Metrópolis radica en como se deciden los pasos. Muestreador Gibbs En cada punto de la caminata se selecciona uno de los componentes del vector de parámetros (típicamente se cicla en orden): Supongamos que se selecciona el parámetro \\(k\\)-ésimo después de haber modificado los \\(k-1\\) anteriores, entonces obtenemos un nuevo valor para este parámetro generando una simulación de la distribución condicional \\[\\theta_k^{(i+1)} \\sim p(\\theta_k|\\theta_1^{(i+1)},\\ldots,\\theta_{k-1}^{(i+1)},\\theta_{k+1}^{(i)},\\ldots,\\theta_p^{(i)},x)\\] El nuevo valor \\(\\theta_k^{(i+1)}\\) junto con los valores \\(\\theta_1^{(i+1)},\\ldots,\\theta_{k-1}^{(i+1)},\\theta_{k+1}^{(i)},\\ldots,\\theta_p^{(i)}\\) constituyen la nueva posición en la caminata aleatoria. Seleccionamos una nueva componente \\(\\theta_{k+1}^{(i+1)}\\) y repetimos el proceso. El muestreador de Gibbs es útil cuando no podemos determinar de manera analítica la distribución conjunta y no se puede simular directamente de ella, pero sí podemos determinar todas las distribuciones condicionales y simular de ellas. Ejemplo: dos proporciones Supongamos que queremos evaluar el balanceo de dos dados de 20 lados que produce una fábrica. En particular, evaluar la probabilidad de tirar un 20, y quizá escoger el dado que nos de mayor probabilidad de tirar un 20. Tiramos cada dado \\(n\\) veces, y denotamos por \\(X_1\\) y \\(X_2\\) el número de 20’s que tiramos en cada ocasión. El modelo de datos está dado por \\[p(x_1, x_2|\\theta_1, \\theta_2)\\propto \\theta_1^{x_1}(1-\\theta_1)^{n - x_1}\\theta_2^{x_2}(1-\\theta_2)^{n - x_2},\\] que es el producto de dos densidades binomiales, pues suponemos que las tiradas son independientes cuando conocemos los parámetros \\(\\theta_1\\) y \\(\\theta_2\\). Ahora ponemos una inicial \\[p(\\theta_i)\\sim \\mathsf{Beta}(100, 1900)\\] y aquí están las razones de nuestra elección: media <- 1/20 k <- 2000 a <- media * k b <- (1 - media) * k c(a,b) ## [1] 100 1900 qbeta(c(0.05, 0.95), a, b) %>% round(3) ## [1] 0.042 0.058 y suponemos que \\[p(\\theta_1,\\theta_2) = p (\\theta_1)p(\\theta_2)\\] es decir, apriori saber el desempeño de un dado no nos da información adicional del otro (esto podría no ser cierto, por ejemplo, si el defecto es provocado por la impresión del número 20). Por lo tanto, la posterior es \\[p(\\theta_1,\\theta_2|x_1, x_2)\\propto \\theta_1^{x_1+100-1}(1-\\theta_1)^{n - x_1 + 1900-1}\\theta_2^{x_2+100 -1}(1-\\theta_2)^{n - x_2 + 1900-1}\\] Ahora consideramoso qué pasa cuando conocemos \\(\\theta_2\\) y los datos. Pensamos en todo lo que no sea \\(\\theta_1\\) como constante de modo que nos queda: \\[p(\\theta_1 | \\theta_2, x) \\propto \\theta_1^{x_1+100 -1}(1-\\theta_1)^{n - x_1 + 1900 -1}\\] que es \\(\\mathsf{Beta}(x_1 + 100, n - x_1 + 1900)\\), y por la misma razón, \\[p(\\theta_2 | \\theta_1, x) \\propto \\theta_2^{x_2+100-1}(1-\\theta_2)^{n - x_2 + 1900-1}\\] que también es es \\(\\mathsf{Beta}(x_1 + 100, n - x_1 + 1900)\\) De hecho, estas condicionales son fáciles de deducir de otra manera: en realidad estamos haciendo dos experimentos separados (pues suponemos que las iniciales son independientes y las pruebas también), así que podriamos usar el análisis Beta-Binomial para cada uno de ellos. En realidad no es necesario usar MCMC para este ejemplo. Usaremos esta función para hacer nuestras iteraciones de Gibbs: iterar_gibbs <- function(pasos, n, x_1, x_2){ iteraciones <- matrix(0, nrow = pasos + 1, ncol = 2) # vector guardará las simulaciones iteraciones[1, 1] <- 0.5 # valor inicial media colnames(iteraciones) <- c("theta_1", "theta_2") # Generamos la caminata aleatoria for (j in seq(2, pasos, 2)) { # theta_1 a <- x_2 + 100 - 1 b <- n - x_2 + 1900 - 1 iteraciones[j, "theta_2"] <- rbeta(1, a, b) # Actualizar theta_1 iteraciones[j, "theta_1"] <- iteraciones[j-1, "theta_1"] # theta_2 a <- x_1 + 100 - 1 b <- n - x_1 + 1900 - 1 iteraciones[j + 1, "theta_1"] <- rbeta(1, a, b) # Actualizar theta_1 iteraciones[j + 1, "theta_2"] <- iteraciones[j, "theta_2"] } iteraciones } Y supongamos que estamos comparando los dados de dos compañías: Chessex y GameScience. Tiramos cada dado 10 mil veces, y obtenemos: # Datos de https://www.awesomedice.com/blogs/news/d20-dice-randomness-test-chessex-vs-gamescience n <- 10000 x_1 <- 408 # Chessex, alrededor de 0.85 dólares por dado x_2 <- 474 # GameScience, alrededor 1.60 dólares por dado E iteramos: iteraciones <- iterar_gibbs(20000, n, x_1, x_2) %>% as_tibble() %>% mutate(iter_num = row_number()) head(iteraciones) ## # A tibble: 6 × 3 ## theta_1 theta_2 iter_num ## <dbl> <dbl> <int> ## 1 0.5 0 1 ## 2 0.5 0.0479 2 ## 3 0.0442 0.0479 3 ## 4 0.0442 0.0452 4 ## 5 0.0411 0.0452 5 ## 6 0.0411 0.0505 6 ggplot(filter(iteraciones, iter_num > 1000, iter_num< 1050), aes(x = theta_1, y = theta_2)) + geom_path(alpha = 0.3) + geom_point() g_1 <- ggplot(iteraciones, aes(x = theta_1, y = theta_2)) + geom_path(alpha = 0.3) + geom_point() g_2 <- ggplot(iteraciones %>% filter(iter_num > 10), aes(x = theta_1, y = theta_2)) + geom_path(alpha = 0.3) + geom_point() + geom_abline(colour = "red") + geom_point(data= tibble(theta_1=1/20, theta_2=1/20), colour = "red", size = 5) g_1 + g_2 Notamos el dado de Cheesex no es consistente con 1/20 de tiros de 20s, pero el dado de GameScience sí lo es. De este gráfica vemos que Cheesex está sesgado hacia abajo, así que deberíamos escoger el dado de GameScience Podemos ver directamente cómo se distribuye la diferencia \\(\\theta_1 - \\theta_2\\). Cualquier estadística es fácil de evaluar, pues simplemente la calculamos para cada simulación y después resumimos: iteraciones <- iteraciones %>% mutate(dif = theta_1 - theta_2) ggplot(iteraciones %>% filter(iter_num > 10), aes(x = dif)) + geom_histogram(bins = 100) + geom_vline(xintercept = 0, colour = "red") Y vemos que es altamente probable que el dado de Cheesex produce más 20’s que el dado de GameScience. iteraciones %>% mutate(theta_1_mayor = dif > 0) %>% summarise(prob_theta_1_mayor = mean(theta_1_mayor)) ## # A tibble: 1 × 1 ## prob_theta_1_mayor ## <dbl> ## 1 0.0215 Finalmente, verificamos nuestro modelo y cuánto aprendimos. Podemos hacerlo simulando de la inicial y comparando con la posterior: inicial_tbl <- tibble(theta_1 = rbeta(20000, 100, 1900), theta_2 = rbeta(20000, 100, 1900), dist = "inicial") posterior_tbl <- iteraciones %>% filter(iter_num > 10) %>% mutate(dist = "posterior") sims_tbl <- bind_rows(inicial_tbl, posterior_tbl) ggplot(sims_tbl, aes(x = theta_1, y = theta_2, colour = dist)) + geom_point(alpha = 0.2) donde vemos que el resultado que obtuvimos es razonablemente consistente con nuestra información inicial, y las 10 mil tiradas de dado fueron altamente informativas. ¿Qué crees que pasaría si sólo hubieramos tirado 40 veces cada dado? ¿Qué tanto habríamos aprendido? Puedes usar datos simulados y repetir este ejercicio. Puedes examinar los resultados para cada cara con los datos originales. Un modelo apropiado es el Dirichlet-Multinomial. Ejemplo: Modelo normal no conjugado Retomemos el caso de observaciones normales, supongamos que tenemos una muestra \\(X_1,...,X_n\\) de observaciones independientes e identicamente distribuidas, con \\(X_i \\sim \\mathsf{N}(\\mu, \\sigma^2)\\). Usaremos iniciales distintas al modelo anterior: \\[p(\\mu, \\sigma^2) = p(\\sigma^2)p(\\mu)\\] con \\(\\mu\\) \\(\\mathsf{N}(\\mu_0, \\sigma_0)\\) y \\(\\tau = 1/\\sigma^2\\) con distribución \\(\\mathsf{Gamma}(a,b)\\). Esto no nos da el modelo conjugado que vimos antes (nota la diferencia de la especificación de la inicial conjunta). Comenzamos por escribir \\[p(\\mu, \\sigma^2|x) \\propto \\frac{1}{{\\sigma^{n/2}}} \\exp(-\\sum\\frac{(x_i-\\mu)²}{2\\sigma^2}) \\exp(- \\frac{(\\mu - \\mu_0)^2}{2\\sigma_0^2}) \\frac{1}{(\\sigma^2)^{a + 1}}\\exp (-\\beta/\\sigma^2 )\\] Comenzamos analizando \\(p(\\mu|\\sigma^2, x)\\). Por la ecuación de arriba, e ignorando los términos que no dependen de \\(\\mu\\): \\[p(\\mu|\\sigma^2, x) \\propto \\exp [ - \\sum_i (\\frac{(\\mu - x_i)^2}{2\\sigma^2} - \\frac{(\\mu - \\mu_0)^2}{2n\\sigma_0^2})]\\] que es una distribución normal (completa cuadrados): \\[\\mu|\\sigma^2,x \\sim \\mathsf{N}\\bigg(\\frac{\\sigma^2}{\\sigma^2 + n\\sigma_0^2}\\mu_0 + \\frac{n\\sigma_0^2}{\\sigma^2 + n \\sigma_0^2}\\bar{x}, \\frac{\\sigma \\sigma_0}{\\sqrt{\\sigma^2 + n\\sigma_0^2}}\\bigg)\\] Ahora consideramos \\(p(\\sigma^2|mu,x)\\). Ignoramos en \\(p(\\mu,\\sigma^2|x)\\) los términos que *no** dependen de \\(\\sigma^2\\): \\[p(\\sigma^2|\\mu, x) \\propto \\frac{1}{\\sigma^{n/2}} \\exp(-\\sum\\frac{(x_i-\\mu)²}{2\\sigma^2}) \\frac{1}{(\\sigma^2)^{a + 1}}\\exp (-\\beta/\\sigma^2)\\] que simplificando da \\[ = \\frac{1}{\\sigma^{n/2 + a + 1}}\\exp( -\\frac{\\beta +\\frac{1}{2}\\sum(x_i - \\mu)^2}{\\sigma^2} )\\] de modo que \\[\\sigma^2|\\mu, x \\sim \\mathsf{GI}(a +n/2, b + \\frac{1}{2}\\sum(x_i -\\mu)^2)\\] Ejemplo Usaremos este muestreador para el problema de la estaturas de los tenores. Comenzamos definiendo las distribuciones iniciales: \\(\\mu \\sim \\mathsf{N}(175, 3)\\) \\(\\tau = 1/\\sigma^2 \\sim \\mathsf{GI}(3, 150)\\), esto es \\(a = 3\\) y \\(b = 150\\). Escribimos el muestreador de Gibbs. n <- 20 x <- cantantes$estatura_cm m <- 175; sigma_0 <- 3; alpha <- 3; beta <- 150 # parámetros de iniciales pasos <- 20000 iteraciones <- matrix(0, nrow = pasos + 1, ncol = 2) # vector guardará las simulaciones iteraciones[1, 1] <- 0 # valor inicial media colnames(iteraciones) <- c("mu", "sigma") # Generamos la caminata aleatoria for (j in seq(2, pasos, 2)) { # sigma^2 mu <- iteraciones[j - 1, "mu"] a <- n / 2 + alpha b <- sum((x - mu) ^ 2) / 2 + beta iteraciones[j, "sigma"] <- sqrt(1/rgamma(1, a, b)) # Actualizar sigma iteraciones[j, "mu"] <- iteraciones[j-1, "mu"] # mu sigma <- iteraciones[j, "sigma"] media <- (n * sigma_0^2 * mean(x) + sigma^2 * m) / (n * sigma_0^2 + sigma^2) varianza <- sigma^2 * sigma_0^2 / (n * sigma_0^2 + sigma^2) iteraciones[j+1, "mu"] <- rnorm(1, media, sd = sqrt(varianza)) # actualizar mu iteraciones[j+1, "sigma"] <- iteraciones[j, "sigma"] } caminata <- data.frame(pasos = 1:pasos, mu = iteraciones[1:pasos, "mu"], sigma = iteraciones[1:pasos, "sigma"]) caminata_g <- caminata %>% gather(parametro, val, mu, sigma) %>% arrange(pasos) Veamos primero algunos pasos: ggplot(filter(caminata, pasos > 1000, pasos< 1010), aes(x = mu, y = sigma)) + geom_path(alpha = 0.3) + geom_point() Donde vemos cómo en cada iteración se actualiza un solo parámetro. Una alternativa es conservar únicamente ciclos completos de la caminata u esto es lo que hacen varios programas que implementan Gibbs, sin embargo ambas cadenas (cadenas completas y conservando únicamente ciclos completos) convergen a la misma distribución posterior. Si tomamos iteraciones completas: ggplot(filter(caminata, pasos > 1000, pasos< 1020, pasos %% 2 == 0), aes(x = mu, y = sigma)) + geom_path(alpha = 0.3) + geom_point() Y ahora vemos cómo se ven las simulaciones: ggplot(filter(caminata, pasos > 1000, pasos< 10000, pasos %% 2 == 0), aes(x = mu, y = sigma)) + geom_point(alpha = 0.1) Y el diagnóstico de cada cadena: ggplot(filter(caminata_g, pasos > 15000), aes(x = pasos, y = val)) + geom_path(alpha = 0.3) + facet_wrap(~parametro, ncol = 1, scales = "free") + scale_y_continuous("") Estas cadenas parecen estar mezclando bien. Podemos resumirlas: ggplot(filter(caminata_g, pasos > 5000), aes(x = val)) + geom_histogram(fill = "gray") + facet_wrap(~parametro, ncol = 1, scales = "free") caminata_g %>% filter(pasos > 1000) %>% # eliminamos la etapa de calentamiento group_by(parametro) %>% summarise( mean(val), sd(val), median(val) ) %>% mutate(across(is_double, round, 2)) ## # A tibble: 2 × 4 ## parametro `mean(val)` `sd(val)` `median(val)` ## <chr> <dbl> <dbl> <dbl> ## 1 mu 176. 1.32 176. ## 2 sigma 6.54 0.95 6.44 Y obtenemos un resultado similar a los anteriores. Conclusiones y observaciones Metrópolis y Gibbs Una generalización del algoritmo de Metrópolis es Metrópolis-Hastings. El algoritmo de Metrópolis es como sigue: Generamos un punto inicial tal que \\(p(\\theta)>0\\). Para \\(i = 1,2,...\\) Se propone un nuevo valor \\(\\theta^*\\) con una distribución propuesta \\(g(\\theta^*|\\theta^{(i)})\\) es común que \\(g(\\theta^*|\\theta^{(i)})\\) sea una normal centrada en \\(\\theta^{(i)}\\). Calculamos la probabilidad de aceptación \\[\\alpha=\\min\\bigg\\{\\frac{p(\\theta^*)}{p(\\theta^{(i)})},1\\bigg\\},\\] y aceptamos \\(\\theta^*\\) con probabilidad \\(p_{mover}\\). Es así que el algorito requiere que podamos calcular el cociente en \\(p_{mover}\\) para todo \\(\\theta^{(i)}\\) y \\(\\theta^*\\), así como simular de la distribución propuesta \\(g(\\theta^*|\\theta^{(i)})\\), adicionalmente debemos poder generar valores uniformes para decidir si aceptar/rechazar. En el caso de Metrópolis un requerimiento adicional es que la distribución propuesta \\(g(\\theta_{a}|\\theta_b)\\) debe ser simétrica, es decir \\(g(\\theta_{a}|\\theta_b) = g(\\theta_{b}|\\theta_a)\\) para todo \\(\\theta_{a}\\), \\(\\theta_{b}\\). Metrópolis-Hastings generaliza Metrópolis, eliminando la restricción de simetría en la distribución propuesta \\(g(\\theta_{a}|\\theta_b)\\), sin embargo para corregir por esta asimetría debemos calcular \\(\\alpha\\) como sigue: \\[\\alpha=\\min\\bigg\\{ \\frac{p(\\theta^*)}{g(\\theta^*|\\theta^{(i)})} \\cdot \\frac{g(\\theta^{(i)}|\\theta^*)}{p(\\theta^{(i)})},1\\bigg\\}\\] La generalización de Metrópolis-Hastings puede resultar en algoritmos más veloces. Se puede ver Gibbs como una generalización de Metrópolis-Hastings, cuando estamos actualizando un componente de los parámetros, la distribución propuesta es la distribución posterior para ese parámetro, por tanto siempre es aceptado. Comparado con Metrópolis, Gibbs tiene la ventaja de que no se necesita afinar los parámetros de una distribución propuesta (o seleccionar siquiera una distribución propuesta). Además que no hay pérdida de simulaciones debido a rechazo. Por su parte, la desventaja debemos conocer las distribuciones condicionales y poder simular de ellas. En el caso de modelos complicados se utilizan combinaciones de Gibbs y Metrópolis. Cuando se consideran estos dos algoritmos Gibbs es un método más simple y es la primera opción para modelos condicionalmente conjugados. Sí solo podemos simular de un subconjunto de las distribuciones condicionales posteriores, entonces podemos usar Gibbs siempre que se pueda y Metrópolis unidimensional para el resto, o de manera más general separamos en bloques, un bloque se actualiza con Gibbs y otro con Metrópolis. El algoritmo de Gibbs puede atorarse cuando hay correlación alta entre los parámetros, reparametrizar puede ayudar, o se pueden usar otros algoritmos. JAGS (Just Another Gibbs Sampler), WinBUGS y OpenBUGS son programas que implementan métodos MCMC para generar simulaciones de distribuciones posteriores. Los paquetes rjags y R2jags permiten ajustar modelos en JAGS desde R. Es muy fácil utilizar estos programas pues uno simplemente debe especificar las distribuciones iniciales, la verosimilitud y los datos observados. Para aprender a usar JAGS se puede revisar la sección correspondiente en las notas de 2018, ahora nos concentraremos en el uso de Stan. HMC y Stan It appears to be quite a general principle that, whenever there is a randomized way of doing something, then there is a nonrandomized way that delivers better performance but requires more thought. -E.T. Jaynes Stan es un programa para generar muestras de una distribución posterior de los parámetros de un modelo, el nombre del programa hace referencia a Stanislaw Ulam (1904-1984) que fue pionero en los métodos de Monte Carlo. A diferencia de JAGS y BUGS, los pasos de la cadena de Markov se generan con un método llamado Monte Carlo Hamiltoniano (HMC). HMC es computacionalmente más costoso que Metrópolis o Gibbs, sin embargo, sus propuestas suelen ser más eficientes, y por consiguiente no necesita muestras tan grandes. En particular cuando se ajustan modelos grandes y complejos (por ejemplo, con variables con correlación alta) HMC supera a otros. Diagnósticos generales para MCMC Cuando generamos una muestra de la distribución posterior usando MCMC, sin importar el método (Metrópolis, Gibbs, HMC), buscamos que: Los valores simulados sean representativos de la distribución posterior. Esto implica que no deben estar influenciados por el valor inicial (arbitrario) y deben explorar todo el rango de la posterior, con suficientes retornos para evaluar cuánta masa hay en cada región. Debemos tener suficientes simulaciones de tal manera que las estimaciones sean precisas y estables. Queremos tener un método eficiente para generar las simulaciones. En la práctica intentamos cumplir lo más posible estos objetivos, pues aunque en principio los métodos MCMC garantizan que una cadena infinitamente larga logrará una representación perfecta, siempre debemos tener un criterio para cortar la cadena y evaluar la calidad de las simulaciones. Representatividad Burn-in e iteraciones iniciales- En primer lugar, en muchas ocasiones las condiciones iniciales de las cadenas están en partes del espacio de parámetros que son “atípicos” en términos de la posterior. Así que es común quitar algunas observaciones iniciales (iteraciones de burn-in) para minimizar su efecto en resúmenes posteriores. Por ejemplo, para el ejemplo de los cantantes, podemos ver que las iteraciones iniciales tienen como función principal llegar a las regiones de probabilidad posterior alta: log_p <- crear_log_posterior_norm(cantantes$estatura_cm, mu_0, n_0, a, b) log_post <- function(pars) { log_p(pars[1], pars[2]) } set.seed(823) metro_normal <- crear_metropolis(log_post, sigma_salto = 0.5) sim_tbl <- metro_normal(c(mu = 162, sigma = 1), 5000) ggplot(sim_tbl %>% filter(iter_num < 500), aes(x = mu, y = sigma)) + geom_path(alpha = 0.5) + geom_point(aes(colour = iter_num)) De modo que puede ser buena idea eliminar las primeras iteraciones. En teoría, no es necesario hacer esto si hacemos suficientes iteraciones, pues la cadena va a terminar en su estado estable explorando la posterior. En la práctica, y con pocas iteraciones, puede ayudar un poco a mejorar la precisión numérica de las cantidades que queramos calcular. sim_g <- sim_tbl %>% pivot_longer(-iter_num, names_to = "parametro", values_to = "valor") todas <- ggplot(sim_g, aes(x = iter_num, y = valor)) + geom_line(alpha = 0.5) + facet_wrap(~ parametro, ncol = 1, scales = "free_y") + labs(subtitle = "Todas las simulaciones") sin_burnin <- sim_g %>% filter(iter_num > 200) %>% ggplot(aes(x = iter_num, y = valor)) + geom_line(alpha = 0.5) + facet_wrap(~ parametro, ncol = 1, scales = "free_y") + labs(subtitle = "Quitando 200 de burn-in") todas + sin_burnin Convergencia a estado límite. Para determinar la convergencia es conveniente realizar más de una cadena: buscamos ver si realmente se ha olvidado el estado inicial, si las distribuciones de cada cadena son consistentes unas con otras, y revisar que algunas cadenas no hayan quedado atoradas en regiones inusuales del espacio de parámetros. Inicializamos las cadenas con valores al azar en rangos razonables (por ejemplo simulando de la inicial): set.seed(8513) valores_iniciales <- tibble(mu_0 = rnorm(4, 160, 20), sigma_0 = runif(4, 0, 20), cadena = 1:4) sims_tbl <- valores_iniciales %>% mutate(sims = map2(mu_0, sigma_0, ~ metro_normal(c(mu = .x, sigma = .y), 300) )) %>% unnest(sims) ggplot(sims_tbl, aes(x = iter_num, y = sigma, colour = factor(cadena))) + geom_line() Y este es un ejemplo donde claramente las cadenas no han alcanzado un estado estable: tienen muy distintas medias y varianzas. Por ejemplo: set.seed(83243) sims_tbl <- valores_iniciales %>% mutate(sims = map2(mu_0, sigma_0, ~ metro_normal(c(mu = .x, sigma = .y), 20000) )) %>% unnest(sims) ggplot(sims_tbl, aes(x = iter_num, y = sigma, colour = factor(cadena))) + geom_line() Y este resultado se ve mejor. La parte transición hacia las zonas de alta probabilidad pasa antes de unas 1000 iteraciones. Podemos hacer más simulaciones, o eliminar como burn-in las primiras iteraciones: media_g <- ggplot(sims_tbl %>% filter(iter_num > 2000), aes(x = iter_num, y = mu, colour = factor(cadena))) + geom_line() sigma_g <- ggplot(sims_tbl %>% filter(iter_num > 2000), aes(x = iter_num, y = sigma, colour = factor(cadena))) + geom_line() media_g / sigma_g Las gráficas anteriores nos ayudan a determinar si elegimos un periodo de calentamiento adecuado o si alguna cadena está alejada del resto. Una vez que las cadenas están en estado estable, podemos usar todas las simulaciones juntas para resumir: head(sims_tbl) ## # A tibble: 6 × 6 ## mu_0 sigma_0 cadena iter_num mu sigma ## <dbl> <dbl> <int> <int> <dbl> <dbl> ## 1 155. 3.16 1 1 155. 3.16 ## 2 155. 3.16 1 2 155. 3.16 ## 3 155. 3.16 1 3 155. 3.16 ## 4 155. 3.16 1 4 155. 3.16 ## 5 155. 3.16 1 5 155. 3.50 ## 6 155. 3.16 1 6 155. 3.81 # medias posteriores sims_tbl %>% summarise(mu = mean(mu), sigma = mean(sigma)) ## # A tibble: 1 × 2 ## mu sigma ## <dbl> <dbl> ## 1 176. 6.77 Además de realizar gráficas podemos usar la medida de convergencia \\(\\hat{R}\\). La medida \\(\\hat{R}\\) se conoce como el factor de reducción potencial de escala o diagnóstico de convergencia de Gelman-Rubin, esta es una estimación de la posible reducción en la longitud de un intervalo de confianza si las simulaciones continuaran infinitamente. \\(\\hat{R}\\) es aproximadamente la raíz cuadrada de la varianza de todas las cadenas juntas dividida entre la varianza dentro de cada cadena. Si \\(\\hat{R}\\) es mucho mayor a 1 esto indica que las cadenas no se han mezclado bien. Una regla usual es iterar hasta alcanzar un valor \\(\\hat{R} \\leq 1.1\\) para todos los parámetros. \\[\\hat{R} \\approx \\sqrt{\\frac{\\hat{V}}{W}}\\] donde \\(B\\) es la varianza entre las cadenas, \\(W\\) es la varianza dentro de las cadenas \\[B = \\frac{N}{M-1}\\sum_m (\\hat{\\theta}_m - \\hat{\\theta})^2\\] \\[W = \\frac{1}{M}\\sum_m \\hat{\\sigma}_m^2\\] Y \\(\\hat{V}\\) es una estimación del varianza de posterior de \\(\\theta\\): \\[\\hat{V} = \\frac{N-1}{N}W + \\frac{M+1}{MN}B\\] #### Ejemplo {-} En nuestro ejemplo anterior, tenemos sims_tbl %>% pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor") %>% group_by(parametro, cadena) %>% summarise(media = mean(valor), num = n(), sigma2 = var(valor)) %>% summarise(N = first(num), M = n_distinct(cadena), B = N * var(media), W = mean(sigma2), V_hat = ((N - 1) / N) * W + (M + 1)/(M * N) * B, R_hat = sqrt(V_hat / W)) ## # A tibble: 2 × 7 ## parametro N M B W V_hat R_hat ## <chr> <int> <int> <dbl> <dbl> <dbl> <dbl> ## 1 mu 20000 4 1281. 4.29 4.37 1.01 ## 2 sigma 20000 4 121. 1.31 1.32 1.00 Y verificamos que los valores de \\(\\hat{R}\\) son cercanos a uno, lo cual indica que este diagnóstico es aceptable. Si hubiéramos trabajado con las primeras 300 iteraciones sims_tbl %>% filter(iter_num < 300) %>% pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor") %>% group_by(parametro, cadena) %>% summarise(media = mean(valor), num = n(), sigma2 = var(valor)) %>% summarise(N = first(num), M = n_distinct(cadena), B = N * var(media), W = mean(sigma2), V_hat = ((N - 1) / N) * W + (M + 1)/(M * N) * B, R_hat = sqrt(V_hat / W)) ## # A tibble: 2 × 7 ## parametro N M B W V_hat R_hat ## <chr> <int> <int> <dbl> <dbl> <dbl> <dbl> ## 1 mu 299 4 32334. 40.4 175. 2.08 ## 2 sigma 299 4 7394. 11.9 42.8 1.89 Y estos valores indican problemas en la convergencia de las cadenas. Es necesario diagnosticar el problema, que en este caso resolvemos incrementando el número de iteraciones. Precisión Una vez que tenemos una muestra representativa de la distribución posterior, nuestro objetivo es asegurarnos de que la muestra es lo suficientemente grande para producir estimaciones estables y precisas de la distribución. Para ello usaremos el tamaño efectivo de muestra, Si las simulaciones fueran independientes \\(N_{eff}\\) sería el número total de simulaciones; sin embargo, las simulaciones de MCMC suelen estar correlacionadas, de modo que cada iteración de MCMC es menos informativa que si fueran independientes. Ejemplo: Si graficaramos simulaciones independientes, esperaríamos valores de autocorrelación chicos: acf(rgamma(1000,1,1)) Sin embargo, los valores que simulamos tienen el siguiente perfil de autocorrelación: sigma_metro_sims <- sims_tbl %>% filter(cadena==4) %>% pull(mu) acf(sigma_metro_sims) El tamaño efectivo de muestra nos dice qué tamaño de muestra de observaciones independientes nos daría la misma información que las simulaciones de la cadena. Una manera de manera relativamente simple de estimarlo es: \\[N_{eff} = \\frac{N}{1+2\\sum_{k=1}^\\infty ACF(k)} \\] Usualmente nos gustaría obtener un tamaño efectivo de al menos \\(100\\) (para cálculo de medias y varianzas posteriores). Esta cantidad usualmente se reporta en el software (con mejores estimaciones que la de la fórmula de arriba), y es necesario checarlo. En nuestro ejemplo hacemos una aproximación como sigue: calc_acf <- function(x){ valores_acf <- acf(x, lag.max = 1000, plot = FALSE)$acf %>% as.numeric() valores_acf[-1] } acf_tbl <- sims_tbl %>% pivot_longer(mu:sigma, names_to = "parametro", values_to = "valor") %>% group_by(parametro, cadena) %>% summarise(N = n_distinct(iter_num), k = 1:1000, acf = calc_acf(valor)) %>% summarise(N = first(N), N_eff = N / (1 + 2 * sum(acf))) acf_tbl ## # A tibble: 8 × 4 ## # Groups: parametro [2] ## parametro cadena N N_eff ## <chr> <int> <int> <dbl> ## 1 mu 1 20000 251. ## 2 mu 2 20000 700. ## 3 mu 3 20000 104. ## 4 mu 4 20000 394. ## 5 sigma 1 20000 421. ## 6 sigma 2 20000 411. ## 7 sigma 3 20000 93.9 ## 8 sigma 4 20000 724. Nótese que algunas cadenas tienen un tamaño efectivo de muestra relativamente bajo para el número de iteraciones que hicimos. De cualquier forma, el agregado sobre todas las cadenas es suficientemente grande para calcular resúmenes básicos: acf_tbl %>% group_by(parametro) %>% summarise(N = sum(N), N_eff = sum(N_eff)) ## # A tibble: 2 × 3 ## parametro N N_eff ## <chr> <int> <dbl> ## 1 mu 80000 1450. ## 2 sigma 80000 1650. Sin embargo, podemos hacer más simulaciones si es necesario, por ejemplo para aproximar de manera apropiada percentiles en las colas. Eficiencia Hay varias maneras para mejorar la eficiencia de un proceso MCMC: Paralelizar, no disminuimos el número de pasos en las simulaciones pero podemos disminuir el tiempo que tarda en correr. Cambiar la parametrización del modelo o transformar los datos. Adelgazar la muestra cuando tenemos problemas de uso de memoria, consiste en guardar únicamente los \\(k\\)-ésimos pasos de la cadena y resulta en cadenas con menos autocorrelación . Recomendaciones generales Gelman and Hill (2006) recomienda los siguientes pasos cuando uno esta simulando de la posterior: Cuando definimos un modelo por primera vez establecemos un valor bajo para el número de iteraciones. La razón es que la mayor parte de las veces los modelos no funcionan a la primera por lo que sería pérdida de tiempo dejarlo correr mucho tiempo antes de descubrir el problema. Si las simulaciones no han alcanzado convergencia aumentamos las iteraciones a \\(500\\) ó \\(1000\\) de tal forma que las corridas tarden segundos o unos cuantos minutos. Si tarda más que unos cuantos minutos (para problemas del tamaño que veremos en la clase) y aún así no alcanza convergencia entonces juega un poco con el modelo (por ejemplo intenta transformaciones lineales), para JAGS Gelman sugiere más técnicas para acelerar la convergencia en el capitulo \\(19\\) del libro Data Analysis Using Regression and Multilevel/Hierarchical models. En el caso de Stan veremos ejemplos de reparametrización, y se puede leer más en la guía. Otra técnica conveniente cuando se trabaja con bases de datos grandes (sobre todo en la parte exploratoria) es trabajar con un subconjunto de los datos, quizá la mitad o una quinta parte. Referencias "],["apéndice-principios-de-visualizacion.html", "Apéndice: Principios de visualizacion Introducción Visualización popular de datos Teoría de visualización de datos Ejemplo: gráfica de Minard", " Apéndice: Principios de visualizacion “The simple graph has brought more information to the data analyst’s mind than any other device.” — John Tukey El cuarteto de Anscombe En 1971 un estadístico llamado Frank Anscombe (fundador del departamento de Estadística de la Universidad de Yale) publicó cuatro conjuntos de dato. Cada uno consiste de 11 observaciones. La peculariedad de estos conjuntos es que tienen las mismas propiedades estadísticas. Sin embargo, cuando analizamos los datos de manera gráfica en un histograma encontramos rápidamente que los conjuntos de datos son muy distintos. Media de \\(x\\): 9 Varianza muestral de \\(x\\): 11 Media de \\(y\\): 7.50 Varianza muestral de \\(y\\): 4.12 Correlación entre \\(x\\) y \\(y\\): 0.816 Línea de regresión lineal: \\(y = 3.00 + 0.500x\\) En la gráfica del primer conjunto de datos, se ve clara una relación lineal simple con un modelo que cumple los supuestos de normalidad. La segunda gráfica (arriba a la derecha) muestra unos datos que tienen una asociación pero definitivamente no es lineal. En la tercera gráfica (abajo a la izquierda) están puntos alineados perfectamente en una línea recta, excepto por uno de ellos. En la última gráfica podemos ver un ejemplo en el cual basta tener una observación atípica para que se produzca un coeficiente de correlación alto aún cuando en realidad no existe una asociación lineal entre las dos variables. El cuarteto de Ascombe inspiró una técnica reciente para crear datos que comparten las mismas propiedades estadísticas al igual que en el cuarteto, pero que producen gráficas muy distintas (Matejka, Fitzmaurice). Introducción La visualización de datos no trata de hacer gráficas “bonitas” o “divertidas”, ni de simplificar lo complejo o ayudar a una persona “que no entiende mucho” a entender ideas complejas. Más bien, trata de aprovechar nuestra gran capacidad de procesamiento visual para exhibir de manera clara aspectos importantes de los datos. El siguiente ejemplo de (Tufte 2006), ilustra claramente la diferencia entre estos dos enfoques. A la izquierda están gráficas (más o menos típicas de Powerpoint) basadas en la filosofía de simplificar, de intentar no “ahogar” al lector con datos. El resultado es una colección incoherente, de bajo contenido, que no tiene mucho qué decir y que es, “indeferente al contenido y la evidencia”. A la derecha está una variación del rediseño de Tufte en forma de tabla, que en este caso particular es una manera eficiente de mostrar claramente los patrones que hay en este conjunto simple de datos. ¿Qué principios son los que soportan la efectividad de esta tabla sobre la gráfica de la derecha? Veremos que hay dos conjuntos de principios importantes: unos relacionados con el diseño y otros con la naturaleza del análisis de datos, independientemente del método de visualización. Visualización popular de datos Publicaciones populares (periódicos, revistas, sitios internet) muchas veces incluyen visualización de datos como parte de sus artículos o reportajes. En general siguen el mismo patrón que en la visión tradicionalista de la estadística: sirven más para divertir que para explicar, tienden a explicar ideas simples y conjuntos chicos de datos, y se consideran como una “ayuda” para los “lectores menos sofisticados”. Casi siempre se trata de gráficas triviales (muchas veces con errores graves) que no aportan mucho a artículos que tienen un nivel de complejidad mucho mayor (es la filosofía: lo escrito para el adulto, lo graficado para el niño). Teoría de visualización de datos Existe teoría fundamentada acerca de la visualización. Después del trabajo pionero de Tukey, los principios e indicadores de Tufte se basan en un estudio de la historia de la graficación y ejercicios de muestreo de la práctica gráfica a lo largo de varias disciplinas (¿cuáles son las mejores gráficas? ¿por qué?) El trabajo de Cleveland es orientado a la práctica del análisis de datos (¿cuáles gráficas nos han ayudado a mostrar claramente los resultados del análisis?), por una parte, y a algunos estudios de percepción visual. En resumen, hablaremos de las siguientes guías: Principios generales del diseño analítico Aplicables a una presentación o análisis completos, y como guía para construir nuevas visualizaciones (Tufte 2006). Principio 1. Muestra comparaciones, contrastes, diferencias. Principio 2. Muestra causalidad, mecanismo, explicación, estructura sistemática. Principio 3. Muestra datos multivariados, es decir, más de una o dos variables. Principio 4. Integra palabras, números, imágenes y diagramas. Principio 5. Describe la totalidad de la evidencia. Muestra fuentes usadas y problemas relevantes. Principio 6. Las presentaciones analíticas, a fin de cuentas, se sostienen o caen dependiendo de la calidad, relevancia e integridad de su contenido. Técnicas de visualización Esta categoría incluye técnicas específicas que dependen de la forma de nuestros datos y el tipo de pregunta que queremos investigar (Tukey (1977), William S. Cleveland (1993), W. S. Cleveland (1994), Tufte (2006)). Tipos de gráficas: cuantiles, histogramas, caja y brazos, gráficas de dispersión, puntos/barras/ líneas, series de tiempo. Técnicas para mejorar gráficas: Transformación de datos, transparencia, vibración, banking 45, suavizamiento y bandas de confianza. Pequeños múltiplos Indicadores de calidad gráfica Aplicables a cualquier gráfica en particular. Estas son guías concretas y relativamente objetivas para evaluar la calidad de una gráfica (Tufte 1986). Integridad Gráfica. El factor de engaño, es decir, la distorsión gráfica de las cantidades representadas, debe ser mínimo. Chartjunk. Minimizar el uso de decoración gráfica que interfiera con la interpretación de los datos: 3D, rejillas, rellenos con patrones. Tinta de datos. Maximizar la proporción de tinta de datos vs. tinta total de la gráfica. For non-data- ink, less is more. For data-ink, less is a bore. Densidad de datos. Las mejores gráficas tienen mayor densidad de datos, que es la razón entre el tamaño del conjunto de datos y el área de la gráfica. Las gráficas se pueden encoger mucho. Percepción visual. Algunas tareas son más fáciles para el ojo humano que otras (W. S. Cleveland 1994). Factor de engaño y Chartjunk El factor de engaño es el cociente entre el efecto mostrado en una gráfica y el efecto correspondiente en los datos. Idealmente, el factor de engaño debe ser 1 (ninguna distorsión). El chartjunk son aquellos elementos gráficos que no corresponden a variación de datos, o que entorpecen la interpretación de una gráfica. Estos son los indicadores de calidad más fáciles de entender y aplicar, y afortunadamente cada vez son menos comunes. Un diseño popular que califica como chartjunk y además introduce factores de engaño es el pie de 3D. En la gráfica de la derecha, podemos ver como la rebanada C se ve más grande que la rebanada A, aunque claramente ese no es el caso (factor de engaño). La razón es la variación en la perspectiva que no corresponde a variación en los datos (chartjunk). Crítica gráfica: Gráfica de pie Todavía elementos que pueden mejorar la comprensión de nuestra gráfica de pie: se trata de la decodificiación que hay que hacer categoría - color - cuantificación. Podemos agregar las etiquetas como se muestra en la serie de la derecha, pero entonces: ¿por qué no mostrar simplemente la tabla de datos? ¿qué agrega el pie a la interpretación? La deficiencias en el pie se pueden ver claramente al intentar graficar más categorías (13) . En el primer pie no podemos distinguir realmente cuáles son las categorías grandes y cuáles las chicas, y es muy difícil tener una imagen mental clara de estos datos. Agregar los porcentajes ayuda, pero entonces, otra vez, preguntamos cuál es el propósito del pie. La tabla de la izquierda hace todo el trabajo (una vez que ordenamos las categrías de la más grande a la más chica). Es posible hacer una gráfica de barras como la de abajo a la izquierda. Hay otros tipos de chartjunk comunes: uno es la textura de barras, por ejemplo. El efecto es la producción de un efecto moiré que es desagradable y quita la atención de los datos, como en la gráfica de barras de abajo. Otro común son las rejillas, como mostramos en las gráficas de la izquierda. Nótese como en estos casos hay efectos ópticos no planeados que degradan la percepción de los patrones en los datos. Pequeños múltiplos y densidad gráfica La densidad de una gráfica es el tamaño del conjunto de datos que se grafica comparado con el área total de la gráfica. En el siguiente ejemplo, graficamos en logaritmo-10 de millones de cabezas de ganado en Francia (cerdos, res, ovejas y caballos). La gráfica de la izquierda es pobre en densidad pues sólo representa 4 datos. La manera más fácil de mejorar la densidad es hacer más chica la gráfica: La razón de este encogimiento es una que tiene qué ver con las oportunidades perdidas de una gráfica grande. Si repetimos este mismo patrón (misma escala, mismos tipos de ganado) para distintos países obtenemos la siguiente gráfica: Esta es una gráfica de puntos. Es útil como sustituto de una gráfica de barras, y es superior en el sentido de que una mayor proporción de la tinta que se usa es tinta de datos. Otra vez, mayor proporción de tinta de datos representa más oportunidades que se pueden capitalizar. Más pequeños múltiplos Los pequeños múltiplos presentan oportunidades para mostrar más acerca de nuestro problema de interés. Consideramos por ejemplo la relación de radiación solar y niveles de ozono: En el ejemplo anterior incluyendo una variable adicional (velocidad del viento) podemos entender más acerca de la relación de radiación solar y niveles de ozono: Tinta de datos Maximizar la proporción de tinta de datos en nuestras gráficas tiene beneficios inmediatos. La regla es: si hay tinta que no representa variación en los datos, o la eliminación de esa tinta no representa pérdidas de significado, esa tinta debe ser eliminada. El ejemplo más claro es el de las rejillas en gráficas y tablas: ¿Por qué usar grises en lugar de negros? La respuesta tiene qué ver con el principio de tinta de datos: si marcamos las diferencias sutil pero claramente, tenemos más oportunidades abiertas para hacer énfasis en lo que nos interesa: a una gráfica o tabla saturada no se le puede hacer más - es difícil agregar elementos adicionales que ayuden a la comprensión. Si comenzamos marcando con sutileza, entonces se puede hacer más. Los mapas geográficos son un buen ejemplo de este principio. El espacio en blanco es suficientemente bueno para indicar las fronteras en una tabla, y facilita la lectura: Para un ejemplo del proceso de rediseño de una tabla, ver aquí. Finalmente, podemos ver un ejemplo que intenta incorporar los elementos del diseño analítico, incluyendo pequeños múltiplos: Decoración Percepción de escala Entre la percepción visual y la interpretación de una gráfica están implícitas tareas visuales específicas que las personas debemos realizar para ver correctamente la gráfica. En la década de los ochenta, William S. Cleveland y Robert McGill realizaron algunos experimentos identificando y clasificando estas tareas para diferentes tipos de gráficos (William S. Cleveland and McGill 1984). En estos, se le pregunta a la persona que compare dos valores dentro de una gráfica, por ejemplo, en dos barras en una gráfica de barras, o dos rebanadas de una gráfica de pie. Los resultados de Cleveland y McGill fueron replicados por Heer y Bostock en 2010 y los resultados se muestran en las gráficas de la derecha: Ejemplo: gráfica de Minard Concluimos esta sección con una gráfica que, aunque poco común, ejemplifica los principios de una buena gráfica, y es reconocida como una de las mejores visualizaciones de la historia. Una gráfica excelente, presenta datos interesantes de forma bien diseñada: es una cuestión de fondo, de diseño, y estadística… [Se] compone de ideas complejas comunicadas con claridad, precisión y eficiencia. … [Es] lo que da al espectador la mayor cantidad de ideas, en el menor tiempo, con la menor cantidad de tinta, y en el espacio más pequeño. … Es casi siempre multivariado. … Una excelente gráfica debe decir la verdad acerca de los datos. (Tufte, 1983) La famosa visualización de Charles Joseph Minard de la marcha de Napoleón sobre Moscú, ilustra los principios de una buena gráfica. Tufte señala que esta imagen “bien podría ser el mejor gráfico estadístico jamás dibujado”, y sostiene que “cuenta una historia rica y coherente con sus datos multivariados, mucho más esclarecedora que un solo número que rebota en el tiempo”. Se representan seis variables: el tamaño del ejército, su ubicación en una superficie bidimensional, la dirección del movimiento del ejército y la temperatura en varias fechas durante la retirada de Moscú”. Hoy en día Minard es reconocido como uno de los principales contribuyentes a la teoría de análisis de datos y creación de infografías con un fundamento estadístico. Se grafican 6 variables: el número de tropas de Napoleón, la distancia, la temperatura, la latitud y la longitud, la dirección en que viajaban las tropas y la localización relativa a fechas específicas. La gráfica de Minard, como la describe E.J. Marey, parece “desafiar la pluma del historiador con su brutal elocuencia”, la combinación de datos del mapa, y la serie de tiempo, dibujados en 1869, “retratan una secuencia de pérdidas devastadoras que sufrieron las tropas de Napoleón en 1812”. Comienza en la izquierda, en la frontera de Polonia y Rusia, cerca del río Niemen. La línea gruesa dorada muestra el tamaño de la Gran Armada (422,000) en el momento en que invadía Rusia en junio de 1812. El ancho de esta banda indica el tamaño de la armada en cada punto del mapa. En septiembre, la armada llegó a Moscú, que ya había sido saqueada y dejada desértica, con sólo 100,000 hombres. El camino del retiro de Napoleón desde Moscú está representado por la línea oscura (gris) que está en la parte inferior, que está relacionada a su vez con la temperatura y las fechas en el diagrama de abajo. Fue un invierno muy frío, y muchos se congelaron en su salida de Rusia. Como se muestra en el mapa, cruzar el río Berezina fue un desastre, y el ejército de Napoleón logró regresar a Polonia con tan sólo 10,000 hombres. También se muestran los movimientos de las tropas auxiliaries, que buscaban proteger por atrás y por la delantera mientras la armada avanzaba hacia Moscú. La gráfica de Minard cuenta una historia rica y cohesiva, coherente con datos multivariados y con los hechos históricos, y que puede ser más ilustrativa que tan sólo representar un número rebotando a lo largo del tiempo. Referencias "],["apéndice-transformaciones.html", "Apéndice: Transformaciones", " Apéndice: Transformaciones En ocasiones es conveniente transformar los datos para el análisis, el objetivo de los ajustes es simplificar la interpretación y el análisis al eliminar fuentes de variación conocidas, también es común realizan transformaciones para simplificar los patrones. Algunos ejemplos donde eliminamos efectos conocidos: Cuando analizamos el precio de venta de las casas podemos eliminar la variación debida al tamaño de las casas al pasar de precio de venta a precio de venta por metro cuadrado. De manera similar al analizar las propinas puede convenir considerar la propina como porcentaje de la cuenta. En series de tiempo cuando los datos están relacionados con el tamaño de la población podemos ajustar a mediciones per capita (en series de tiempo PIB). También es común ajustar por inflación, o poner cantidades monetarias en valor presente. mex_dat <- global_economy |> filter(Code == "MEX") pib <- ggplot(mex_dat, aes(x = Year, y = GDP / 1e6)) + geom_line() pib_pc <- ggplot(mex_dat, aes(x = Year, y = GDP / Population)) + geom_line() pib / pib_pc Adicionalmente podemos recurrir a otras transformaciones matemáticas (e.g. logaritmo, raíz cuadrada) que simplifiquen el patrón en los datos y la interpretación. Veamos un ejemplo donde es apropiado la transformación logaritmo. Usamos los datos Animals con información de peso corporal promedio y peso cerebral promedio para 28 especies. Buscamos entender la relación entre estas dos variables, e inspeccionar que especies se desvían (residuales) del esperado. Comenzamos con un diagrama de dispersión usando las unidades originales animals_tbl <- as_tibble(Animals, rownames = "animal") p1 <- ggplot(animals_tbl, aes(x = body, y = brain, label = animal)) + geom_point() + labs(subtitle = "Unidades originales") p2 <- ggplot(animals_tbl, aes(x = body, y = brain, label = animal)) + geom_point() + xlim(0, 500) + ylim(0, 1500) + geom_text_repel() + labs(subtitle = "Unidades originales, eliminando 'grandes'") (p1 + p2) Incluso cuando nos limitamos a especies de menos de 500 kg de masa corporal, la relación no es fácil de descrubir.En la suguiente gráfica hacemos la transformación logaritmo y obtenemos una gráfica más fácil de leer, además los datos se modelarán con más facilidad. p3 <- ggplot(animals_tbl, aes(x = log(body), y = log(brain), label = animal)) + geom_smooth(method = "lm", se = FALSE, color = "red") + geom_point() + geom_text_repel() + stat_poly_eq(use_label(c("eq"))) p3 ## `geom_smooth()` using formula = 'y ~ x' La transformación logaritmo tiene también ventajas en interpretación, para diferencias chicas en escala log, las diferencias corresponden a diferencias porcentuales en la escala original, por ejempo consideremos la diferencia entre el peso en escala log de humano y borrego: 4.13 - 4.02 = 0.11. Confirmamos que el humano es aproximadamente 11% más pesado que el borrego en la escala original: 62/55.5 - 1 = 0.12 animals_tbl <- animals_tbl |> mutate(log_body = log(body), log_brain = log(brain)) animals_tbl |> filter(animal == "Human" | animal == "Sheep") |> arrange(body) |> gt::gt() |> gt::fmt_number() #ufmafyhycy table { font-family: system-ui, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji'; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; } #ufmafyhycy thead, #ufmafyhycy tbody, #ufmafyhycy tfoot, #ufmafyhycy tr, #ufmafyhycy td, #ufmafyhycy th { border-style: none; } #ufmafyhycy p { margin: 0; padding: 0; } #ufmafyhycy .gt_table { display: table; border-collapse: collapse; line-height: normal; margin-left: auto; margin-right: auto; color: #333333; font-size: 16px; font-weight: normal; font-style: normal; background-color: #FFFFFF; width: auto; border-top-style: solid; border-top-width: 2px; border-top-color: #A8A8A8; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #A8A8A8; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; } #ufmafyhycy .gt_caption { padding-top: 4px; padding-bottom: 4px; } #ufmafyhycy .gt_title { color: #333333; font-size: 125%; font-weight: initial; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; border-bottom-color: #FFFFFF; border-bottom-width: 0; } #ufmafyhycy .gt_subtitle { color: #333333; font-size: 85%; font-weight: initial; padding-top: 3px; padding-bottom: 5px; padding-left: 5px; padding-right: 5px; border-top-color: #FFFFFF; border-top-width: 0; } #ufmafyhycy .gt_heading { background-color: #FFFFFF; text-align: center; border-bottom-color: #FFFFFF; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #ufmafyhycy .gt_bottom_border { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #ufmafyhycy .gt_col_headings { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; } #ufmafyhycy .gt_col_heading { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 6px; padding-left: 5px; padding-right: 5px; overflow-x: hidden; } #ufmafyhycy .gt_column_spanner_outer { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: normal; text-transform: inherit; padding-top: 0; padding-bottom: 0; padding-left: 4px; padding-right: 4px; } #ufmafyhycy .gt_column_spanner_outer:first-child { padding-left: 0; } #ufmafyhycy .gt_column_spanner_outer:last-child { padding-right: 0; } #ufmafyhycy .gt_column_spanner { border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: bottom; padding-top: 5px; padding-bottom: 5px; overflow-x: hidden; display: inline-block; width: 100%; } #ufmafyhycy .gt_spanner_row { border-bottom-style: hidden; } #ufmafyhycy .gt_group_heading { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; text-align: left; } #ufmafyhycy .gt_empty_group_heading { padding: 0.5px; color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; vertical-align: middle; } #ufmafyhycy .gt_from_md > :first-child { margin-top: 0; } #ufmafyhycy .gt_from_md > :last-child { margin-bottom: 0; } #ufmafyhycy .gt_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; margin: 10px; border-top-style: solid; border-top-width: 1px; border-top-color: #D3D3D3; border-left-style: none; border-left-width: 1px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 1px; border-right-color: #D3D3D3; vertical-align: middle; overflow-x: hidden; } #ufmafyhycy .gt_stub { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; } #ufmafyhycy .gt_stub_row_group { color: #333333; background-color: #FFFFFF; font-size: 100%; font-weight: initial; text-transform: inherit; border-right-style: solid; border-right-width: 2px; border-right-color: #D3D3D3; padding-left: 5px; padding-right: 5px; vertical-align: top; } #ufmafyhycy .gt_row_group_first td { border-top-width: 2px; } #ufmafyhycy .gt_row_group_first th { border-top-width: 2px; } #ufmafyhycy .gt_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #ufmafyhycy .gt_first_summary_row { border-top-style: solid; border-top-color: #D3D3D3; } #ufmafyhycy .gt_first_summary_row.thick { border-top-width: 2px; } #ufmafyhycy .gt_last_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #ufmafyhycy .gt_grand_summary_row { color: #333333; background-color: #FFFFFF; text-transform: inherit; padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; } #ufmafyhycy .gt_first_grand_summary_row { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-top-style: double; border-top-width: 6px; border-top-color: #D3D3D3; } #ufmafyhycy .gt_last_grand_summary_row_top { padding-top: 8px; padding-bottom: 8px; padding-left: 5px; padding-right: 5px; border-bottom-style: double; border-bottom-width: 6px; border-bottom-color: #D3D3D3; } #ufmafyhycy .gt_striped { background-color: rgba(128, 128, 128, 0.05); } #ufmafyhycy .gt_table_body { border-top-style: solid; border-top-width: 2px; border-top-color: #D3D3D3; border-bottom-style: solid; border-bottom-width: 2px; border-bottom-color: #D3D3D3; } #ufmafyhycy .gt_footnotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #ufmafyhycy .gt_footnote { margin: 0px; font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #ufmafyhycy .gt_sourcenotes { color: #333333; background-color: #FFFFFF; border-bottom-style: none; border-bottom-width: 2px; border-bottom-color: #D3D3D3; border-left-style: none; border-left-width: 2px; border-left-color: #D3D3D3; border-right-style: none; border-right-width: 2px; border-right-color: #D3D3D3; } #ufmafyhycy .gt_sourcenote { font-size: 90%; padding-top: 4px; padding-bottom: 4px; padding-left: 5px; padding-right: 5px; } #ufmafyhycy .gt_left { text-align: left; } #ufmafyhycy .gt_center { text-align: center; } #ufmafyhycy .gt_right { text-align: right; font-variant-numeric: tabular-nums; } #ufmafyhycy .gt_font_normal { font-weight: normal; } #ufmafyhycy .gt_font_bold { font-weight: bold; } #ufmafyhycy .gt_font_italic { font-style: italic; } #ufmafyhycy .gt_super { font-size: 65%; } #ufmafyhycy .gt_footnote_marks { font-size: 75%; vertical-align: 0.4em; position: initial; } #ufmafyhycy .gt_asterisk { font-size: 100%; vertical-align: 0; } #ufmafyhycy .gt_indent_1 { text-indent: 5px; } #ufmafyhycy .gt_indent_2 { text-indent: 10px; } #ufmafyhycy .gt_indent_3 { text-indent: 15px; } #ufmafyhycy .gt_indent_4 { text-indent: 20px; } #ufmafyhycy .gt_indent_5 { text-indent: 25px; } #ufmafyhycy .katex-display { display: inline-flex !important; margin-bottom: 0.75em !important; } #ufmafyhycy div.Reactable > div.rt-table > div.rt-thead > div.rt-tr.rt-tr-group-header > div.rt-th-group:after { height: 0px !important; } animal body brain log_body log_brain Sheep 55.50 175.00 4.02 5.16 Human 62.00 1,320.00 4.13 7.19 Y podemos usarlo también para interpretar la recta de referencia \\(y = 2.55 + 0.5 x\\) , para cambios chicos: Un incremento de 10% en masa total corresponde en un incremento de 5% en masa cerebral. El coeficiente de la regresión log-log, en nuestro ejemplo 0.5, es la elasticidad y es un concepto común en economía. Justificación Para entender la interpretación como cambio porcentual recordemos primero que la representación con series de Taylor de la función exponencial es: \\[e^x = \\sum_{n=0}^\\infty \\frac{x^n}{n!}\\] Más aún podemos tener una aproximación usando polinomios de Taylor, en el caso de la exponencial el \\(k\\)-ésimo polinomio de Taylor está dado por: \\[e^\\delta \\approx 1 + \\delta + \\frac{1}{2!}\\delta^2 + \\dots + \\frac{1}{k!}\\delta^k\\] y si \\(\\delta\\) es chica (digamos menor a 0.15), entonces la aproximación de primer grado es razonable y tenemos: \\[Ae^{\\delta} \\approx A(1+\\delta)\\] dat <- tibble(delta = seq(0, 1, 0.01), exp_delta = exp(delta), uno_mas_delta = 1 + delta) ggplot(dat, aes(x = uno_mas_delta, y = exp_delta)) + geom_line() + geom_abline(color = "red") + annotate("text", x = 1.20, y = 1.18, label = "y = x", color = "red", size = 6) "],["referencias.html", "Referencias", " Referencias "],["404.html", "Page not found", " Page not found The page you requested cannot be found (perhaps it was moved or renamed). You may want to try searching to find the page's new location, or use the table of contents to find the page you are looking for. "]] diff --git a/temario.html b/temario.html index 0c528b0..37a7353 100644 --- a/temario.html +++ b/temario.html @@ -377,6 +377,70 @@
    • Ejemplo: posterior predictiva de Pareto-Uniforme.
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion
  • +
  • 11 Calibración bayesiana y Regularización +
  • +
  • 12 Métodos de Cadenas de Markov Monte Carlo +
  • Apéndice: Principios de visualizacion