From 3bd34a600e34c49816420207fc47458b61f3949d Mon Sep 17 00:00:00 2001 From: Trang Le Date: Thu, 10 Jun 2021 11:50:41 -0400 Subject: [PATCH] Raw probabilities (#16) * use raw probabilities --- 10.visualize-gender.Rmd | 36 ++- 11.visualize-name-origins.Rmd | 34 +-- 12.analyze-affiliation.Rmd | 2 +- 14.us-name-origin.Rmd | 23 +- _output.yaml | 1 + docs/091.draw-roc.html | 293 +++++++++++----------- docs/092.save-raws-to-Rdata.html | 19 +- docs/093.summary-stats.html | 14 +- docs/10.visualize-gender.html | 183 +++++++------- docs/11.visualize-name-origins.html | 312 ++++++++++++------------ docs/12.analyze-affiliation.html | 110 +++++---- docs/13.us-race-analysis.html | 44 ++-- docs/14.us-name-origin.html | 229 +++++++++--------- docs/15.analyze-2020.html | 94 +++++--- figs/enrichment-plot.png | Bin 150904 -> 317799 bytes figs/gender_breakdown.png | Bin 55286 -> 117911 bytes figs/gender_breakdown.svg | 72 +++--- figs/region_breakdown.png | Bin 173042 -> 362608 bytes figs/region_breakdown.svg | 360 ++++++++++++++-------------- figs/us_name_origin.png | Bin 169206 -> 356831 bytes figs/us_name_origin.svg | 358 +++++++++++++-------------- figs/versions.pdf | Bin 51294 -> 51615 bytes figs/versions.png | Bin 786394 -> 779401 bytes figs/versions.pptx | Bin 45768 -> 45805 bytes 24 files changed, 1113 insertions(+), 1071 deletions(-) diff --git a/10.visualize-gender.Rmd b/10.visualize-gender.Rmd index a005ea7..bef07f7 100644 --- a/10.visualize-gender.Rmd +++ b/10.visualize-gender.Rmd @@ -65,21 +65,13 @@ iscb_pubmed <- iscb_gender_df %>% values_to = "probabilities" ) %>% filter(!is.na(probabilities)) %>% - group_by(type, year, gender) %>% - mutate( - pmc_citations_year = mean(adjusted_citations), - weight = adjusted_citations / pmc_citations_year, - weighted_probs = probabilities * weight - # weight = 1 - ) + group_by(type, year, gender) iscb_pubmed_sum <- iscb_pubmed %>% summarise( # n = n(), - mean_prob = mean(weighted_probs), - # mean_prob = mean(probabilities, na.rm = T), - # sd_prob = sd(probabilities, na.rm = T), - se_prob = sqrt(var(probabilities) * sum(weight^2) / (sum(weight)^2)), + mean_prob = mean(probabilities, na.rm = T), + se_prob = sd(probabilities, na.rm = T), # n = mean(n), me_prob = alpha_threshold * se_prob, .groups = "drop" @@ -102,7 +94,7 @@ fig_1 <- iscb_pubmed_sum %>% # group_by(year, type, gender) %>% gender_breakdown("main", fct_rev(type)) fig_1 -ggsave("figs/gender_breakdown.png", fig_1, width = 5, height = 2.5) +ggsave("figs/gender_breakdown.png", fig_1, width = 5, height = 2.5, dpi = 600) ggsave("figs/gender_breakdown.svg", fig_1, width = 5, height = 2.5) ``` @@ -131,8 +123,8 @@ fig_1d <- iscb_pubmed %>% ) %>% group_by(type2, year, gender) %>% summarise( - mean_prob = mean(weighted_probs), - se_prob = sqrt(var(probabilities) * sum(weight^2) / (sum(weight)^2)), + mean_prob = mean(probabilities), + se_prob = sd(probabilities)/sqrt(n()), me_prob = alpha_threshold * se_prob, .groups = "drop" ) %>% @@ -173,7 +165,7 @@ iscb_pubmed_sum %>% ```{r echo = F} get_p <- function(inte, colu) { broom::tidy(inte) %>% - filter(term == "weighted_probs") %>% + filter(term == "probabilities") %>% pull(colu) %>% sprintf("%0.5g", .) } @@ -181,7 +173,7 @@ get_p <- function(inte, colu) { ```{r} iscb_lm <- iscb_pubmed %>% - filter(gender == "probability_female", !is.na(weighted_probs)) %>% + filter(gender == "probability_female", !is.na(probabilities)) %>% mutate(type = as.factor(type)) %>% mutate(type = type %>% relevel(ref = "Pubmed authors")) ``` @@ -189,33 +181,33 @@ iscb_lm <- iscb_pubmed %>% ```{r} scaled_iscb <- iscb_lm %>% filter(year(year) >= 2002) -# scaled_iscb$s_prob <- scale(scaled_iscb$weighted_probs, scale = F) +# scaled_iscb$s_prob <- scale(scaled_iscb$probabilities, scale = F) # scaled_iscb$s_year <- scale(scaled_iscb$year, scale = F) -main_lm <- glm(type ~ year + weighted_probs, +main_lm <- glm(type ~ year + probabilities, data = scaled_iscb, # %>% mutate(year = as.factor(year)) family = "binomial" ) broom::tidy(main_lm) inte_lm <- glm( - # type ~ scale(year, scale = F) * scale(weighted_probs, scale = F), + # type ~ scale(year, scale = F) * scale(probabilities, scale = F), # type ~ s_year * s_prob, - type ~ year * weighted_probs, + type ~ year * probabilities, data = scaled_iscb, # %>% mutate(year = as.factor(year)) family = "binomial" ) broom::tidy(inte_lm) anova(main_lm, inte_lm, test = "Chisq") # mean(scaled_iscb$year) -# mean(scaled_iscb$weighted_probs) +# mean(scaled_iscb$probabilities) ``` The two groups of scientists did not have a significant association with the gender predicted from fore names (_P_ = `r get_p(main_lm, 'p.value')`). Interaction terms do not predict `type` over and above the main effect of gender probability and year. ```{r include=FALSE, eval=FALSE} -# inte_lm <- glm(type ~ (year * weighted_probs), +# inte_lm <- glm(type ~ (year * probabilities), # data = iscb_lm, # family = 'binomial') ``` diff --git a/11.visualize-name-origins.Rmd b/11.visualize-name-origins.Rmd index 2b9de29..b2de730 100644 --- a/11.visualize-name-origins.Rmd +++ b/11.visualize-name-origins.Rmd @@ -96,17 +96,12 @@ iscb_pubmed_oth <- iscb_nat_df %>% values_to = "probabilities" ) %>% filter(!is.na(probabilities)) %>% - group_by(type, year, region) %>% - mutate( - pmc_citations_year = mean(adjusted_citations), - weight = adjusted_citations / pmc_citations_year, - weighted_probs = probabilities * weight - ) + group_by(type, year, region) iscb_pubmed_sum_oth <- iscb_pubmed_oth %>% summarise( - mean_prob = mean(weighted_probs), - se_prob = sqrt(var(probabilities) * sum(weight^2) / (sum(weight)^2)), + mean_prob = mean(probabilities), + se_prob = sd(probabilities)/sqrt(n()), me_prob = alpha_threshold * se_prob, .groups = "drop" ) @@ -127,7 +122,7 @@ for (conf in my_confs) { iscb_nat[[i]] <- iscb_pubmed_oth %>% filter(region != "OtherCategories", type != "Pubmed authors" & journal == conf) %>% group_by(type, year, region, journal) %>% - summarise(mean_prob = mean(weighted_probs), .groups = "drop") + summarise(mean_prob = mean(probabilities), .groups = "drop") } ``` @@ -169,7 +164,7 @@ fig_4b <- iscb_pubmed_sum_oth %>% fig_4 <- cowplot::plot_grid(fig_4a, fig_4b, labels = "AUTO", ncol = 1, rel_heights = c(1.3, 1)) fig_4 -ggsave("figs/region_breakdown.png", fig_4, width = 6.7, height = 5.5) +ggsave("figs/region_breakdown.png", fig_4, width = 6.7, height = 5.5, dpi = 600) ggsave("figs/region_breakdown.svg", fig_4, width = 6.7, height = 5.5) ``` @@ -185,7 +180,7 @@ iscb_lm <- iscb_pubmed_oth %>% type = as.factor(type) %>% relevel(ref = "Pubmed authors") ) main_lm <- function(regioni) { - glm(type ~ year + weighted_probs, + glm(type ~ year + probabilities, data = iscb_lm %>% filter(region == regioni, !is.na(probabilities), year(year) >= 2002), family = "binomial" @@ -193,9 +188,9 @@ main_lm <- function(regioni) { } inte_lm <- function(regioni) { - glm(type ~ year * weighted_probs, + glm(type ~ year * probabilities, data = iscb_lm %>% - filter(region == regioni, !is.na(weighted_probs), year(year) >= 2002), + filter(region == regioni, !is.na(probabilities), year(year) >= 2002), family = "binomial" ) } @@ -215,7 +210,7 @@ Interaction terms do not predict `type` over and above the main effect of name o ```{r echo = F} get_p <- function(i, colu) { broom::tidy(main_list[[i]]) %>% - filter(term == "weighted_probs") %>% + filter(term == "probabilities") %>% pull(colu) } @@ -326,21 +321,16 @@ iscb_pubmed_oth_lag <- iscb_nat_df %>% values_to = "probabilities" ) %>% filter(!is.na(probabilities), year(year) >= 2002) %>% - group_by(type, year, region) %>% - mutate( - pmc_citations_year = mean(adjusted_citations), - weight = adjusted_citations / pmc_citations_year, - weighted_probs = probabilities * weight - ) + group_by(type, year, region) iscb_lm_lag <- iscb_pubmed_oth_lag %>% ungroup() %>% mutate(type = as.factor(type) %>% relevel(ref = "Pubmed authors")) main_lm <- function(regioni) { - glm(type ~ year + weighted_probs, + glm(type ~ year + probabilities, data = iscb_lm_lag %>% - filter(region == regioni, !is.na(weighted_probs)), + filter(region == regioni, !is.na(probabilities)), family = "binomial" ) } diff --git a/12.analyze-affiliation.Rmd b/12.analyze-affiliation.Rmd index e700614..e85fc4f 100644 --- a/12.analyze-affiliation.Rmd +++ b/12.analyze-affiliation.Rmd @@ -293,7 +293,7 @@ enrichment_plot_right <- plot_obs_exp_right %>% enrichment_plot <- cowplot::plot_grid(enrichment_plot_left, enrichment_plot_right, rel_widths = c(1, 1.3)) enrichment_plot -ggsave('figs/enrichment-plot.png', enrichment_plot, width = 5.5, height = 3.5) +ggsave('figs/enrichment-plot.png', enrichment_plot, width = 5.5, height = 3.5, dpi = 600) ``` diff --git a/14.us-name-origin.Rmd b/14.us-name-origin.Rmd index 06ca206..ef737ed 100644 --- a/14.us-name-origin.Rmd +++ b/14.us-name-origin.Rmd @@ -70,17 +70,12 @@ iscb_pubmed_oth <- iscb_nat_df %>% values_to = "probabilities" ) %>% filter(!is.na(probabilities)) %>% - group_by(type, year, region) %>% - mutate( - pmc_citations_year = mean(adjusted_citations), - weight = adjusted_citations / pmc_citations_year, - weighted_probs = probabilities * weight - ) + group_by(type, year, region) iscb_pubmed_sum_oth <- iscb_pubmed_oth %>% summarise( - mean_prob = mean(weighted_probs), - se_prob = sqrt(var(probabilities) * sum(weight^2) / (sum(weight)^2)), + mean_prob = mean(probabilities), + se_prob = sd(probabilities)/sqrt(n()), me_prob = alpha_threshold * se_prob, .groups = "drop" ) @@ -119,7 +114,7 @@ fig_us_name_originb <- iscb_pubmed_sum_oth %>% fig_us_name_origin <- cowplot::plot_grid(fig_us_name_origina, fig_us_name_originb, labels = "AUTO", ncol = 1, rel_heights = c(1.3, 1)) fig_us_name_origin -ggsave("figs/us_name_origin.png", fig_us_name_origin, width = 6.5, height = 5.5) +ggsave("figs/us_name_origin.png", fig_us_name_origin, width = 6.5, height = 5.5, dpi = 600) ggsave("figs/us_name_origin.svg", fig_us_name_origin, width = 6.5, height = 5.5) ``` @@ -134,17 +129,17 @@ iscb_lm <- iscb_pubmed_oth %>% type = relevel(as.factor(type), ref = "Pubmed authors") ) main_lm <- function(regioni) { - glm(type ~ year + weighted_probs, + glm(type ~ year + probabilities, data = iscb_lm %>% - filter(region == regioni, !is.na(weighted_probs), year(year) >= 2002), + filter(region == regioni, !is.na(probabilities), year(year) >= 2002), family = "binomial" ) } inte_lm <- function(regioni) { - glm(type ~ weighted_probs * year, + glm(type ~ probabilities * year, data = iscb_lm %>% - filter(region == regioni, !is.na(weighted_probs), year(year) >= 2002), + filter(region == regioni, !is.na(probabilities), year(year) >= 2002), family = "binomial" ) } @@ -165,7 +160,7 @@ Interaction terms do not predict `type` over and above the main effect of name o ```{r echo = F} get_exp <- function(i, colu) { broom::tidy(main_list[[i]]) %>% - filter(term == "weighted_probs") %>% + filter(term == "probabilities") %>% pull(colu) } diff --git a/_output.yaml b/_output.yaml index ea2b6fe..0681b68 100644 --- a/_output.yaml +++ b/_output.yaml @@ -3,3 +3,4 @@ html_document: toc: true toc_float: true code_download: true + dpi: 600 diff --git a/docs/091.draw-roc.html b/docs/091.draw-roc.html index 524ce17..387df08 100644 --- a/docs/091.draw-roc.html +++ b/docs/091.draw-roc.html @@ -1741,35 +1741,22 @@

Plotting ROC curves

Name origin prediction method performance

-
library(tidyverse)
-
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.0 ──
-
## ✓ ggplot2 3.3.2     ✓ purrr   0.3.4
-## ✓ tibble  3.0.4     ✓ dplyr   1.0.2
-## ✓ tidyr   1.1.2     ✓ stringr 1.4.0
-## ✓ readr   1.4.0     ✓ forcats 0.5.0
-
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
-## x dplyr::filter() masks stats::filter()
-## x dplyr::lag()    masks stats::lag()
-
# still need to install caret for the calibration function because tidymodels's 
-# probably hasn't published this yet
-library(caret)
-
## Loading required package: lattice
+
library(tidyverse)
+# still need to install caret for the calibration function because tidymodels's 
+# probably hasn't published this yet
+library(caret)
+
+source('utils/r-utils.R')
+theme_set(theme_bw())
+
roc_df <- read_tsv('https://raw.githubusercontent.com/greenelab/wiki-nationality-estimate/7c22d0a5f661ce5aeb785215095deda40973ff17/models/NamePrism_roc_curves.tsv') %>%
+  rename('region' = category) %>%
+  # recode_region_letter() %>%
+  recode_region() %>% 
+  group_by(region) %>%
+  mutate(Sensitivity = tpr, Specificity = 1-fpr, dSens = c(abs(diff(1-tpr)), 0)) %>%
+  ungroup()
## 
-## Attaching package: 'caret'
-
## The following object is masked from 'package:purrr':
-## 
-##     lift
-
source('utils/r-utils.R')
-theme_set(theme_bw())
-
roc_df <- read_tsv('https://raw.githubusercontent.com/greenelab/wiki-nationality-estimate/7c22d0a5f661ce5aeb785215095deda40973ff17/models/NamePrism_roc_curves.tsv') %>%
-  rename('region' = category) %>%
-  # recode_region_letter() %>%
-  recode_region() %>% 
-  group_by(region) %>%
-  mutate(Sensitivity = tpr, Specificity = 1-fpr, dSens = c(abs(diff(1-tpr)), 0)) %>%
-  ungroup()
-
## 
-## ── Column specification ────────────────────────────────────────────────────────
+## ── Column specification ─────────────────────────────────────────
 ## cols(
 ##   fpr = col_double(),
 ##   tpr = col_double(),
@@ -1780,38 +1767,38 @@ 

Name origin prediction method performance

## ℹ Unknown levels in `f`: OtherCategories ## ℹ Input `region` is `fct_recode(...)`.
## Warning: Unknown levels in `f`: OtherCategories
-
auc_df <- roc_df %>%
-  group_by(region) %>%
-  # add_count() %>%
-  summarise(auc = sum((1 - fpr) * dSens),
-            n = n()) %>%
-  arrange(desc(auc)) %>%
-  mutate(auc_pct = 100 * auc,
-         reg_auc = paste0(region, ', AUC = ', round(auc_pct, 1), '%'))
+
auc_df <- roc_df %>%
+  group_by(region) %>%
+  # add_count() %>%
+  summarise(auc = sum((1 - fpr) * dSens),
+            n = n()) %>%
+  arrange(desc(auc)) %>%
+  mutate(auc_pct = 100 * auc,
+         reg_auc = paste0(region, ', AUC = ', round(auc_pct, 1), '%'))
## `summarise()` ungrouping output (override with `.groups` argument)
-
# region_levels <- c('Celtic English', 'European', 'East Asian', 'Hispanic', 'South Asian', 'Muslim', 'Israeli', 'African')
-region_levels <- paste(c('Celtic/English', 'European', 'East Asian', 'Hispanic', 'South Asian', 'Arabic', 'Hebrew', 'African', 'Nordic', 'Greek'), 'names')
-region_levels_let <- toupper(letters[1:8])
-region_cols <- c('#b3de69', '#fdb462',  '#bc80bd', '#8dd3c7', '#fccde5', '#ffffb3', '#ccebc5', '#bebada', '#80b1d3', '#fb8072')
-
-fig_3a <- roc_df %>%
-  left_join(auc_df, by = 'region') %>%
-  ggplot(aes(x = Sensitivity, y = Specificity, color = fct_relevel(reg_auc, as.character(auc_df$reg_auc)))) +
-  scale_color_manual(values = region_cols) +
-  geom_step(size = 1, alpha = 0.8) +
-  coord_fixed() +
-  scale_x_reverse(breaks = seq(1, 0, -0.2), labels = scales::percent) +
-  scale_y_continuous(breaks = seq(0, 1, 0.2), labels = scales::percent, limits = c(NA, 1.05)) +
-  theme(legend.position = c(0.62, 0.42),
-        legend.title = element_blank(),
-        legend.text.align = 1,
-        legend.text = element_text(size = 7),
-        legend.margin = margin(-0.2, 0.2, 0.2, 0, unit='cm'))
-
predictions_df <- read_tsv('https://raw.githubusercontent.com/greenelab/wiki-nationality-estimate/7c22d0a5f661ce5aeb785215095deda40973ff17/data/NamePrism_results_test.tsv') %>%
-  mutate(y_true = as.factor(truth)) %>%
-  select(-truth)
+
# region_levels <- c('Celtic English', 'European', 'East Asian', 'Hispanic', 'South Asian', 'Muslim', 'Israeli', 'African')
+region_levels <- paste(c('Celtic/English', 'European', 'East Asian', 'Hispanic', 'South Asian', 'Arabic', 'Hebrew', 'African', 'Nordic', 'Greek'), 'names')
+region_levels_let <- toupper(letters[1:8])
+region_cols <- c('#b3de69', '#fdb462',  '#bc80bd', '#8dd3c7', '#fccde5', '#ffffb3', '#ccebc5', '#bebada', '#80b1d3', '#fb8072')
+
+fig_3a <- roc_df %>%
+  left_join(auc_df, by = 'region') %>%
+  ggplot(aes(x = Sensitivity, y = Specificity, color = fct_relevel(reg_auc, as.character(auc_df$reg_auc)))) +
+  scale_color_manual(values = region_cols) +
+  geom_step(size = 1, alpha = 0.8) +
+  coord_fixed() +
+  scale_x_reverse(breaks = seq(1, 0, -0.2), labels = scales::percent) +
+  scale_y_continuous(breaks = seq(0, 1, 0.2), labels = scales::percent, limits = c(NA, 1.05)) +
+  theme(legend.position = c(0.62, 0.42),
+        legend.title = element_blank(),
+        legend.text.align = 1,
+        legend.text = element_text(size = 7),
+        legend.margin = margin(-0.2, 0.2, 0.2, 0, unit='cm'))
+
predictions_df <- read_tsv('https://raw.githubusercontent.com/greenelab/wiki-nationality-estimate/7c22d0a5f661ce5aeb785215095deda40973ff17/data/NamePrism_results_test.tsv') %>%
+  mutate(y_true = as.factor(truth)) %>%
+  select(-truth)
## 
-## ── Column specification ────────────────────────────────────────────────────────
+## ── Column specification ─────────────────────────────────────────
 ## cols(
 ##   African = col_double(),
 ##   CelticEnglish = col_double(),
@@ -1825,83 +1812,79 @@ 

Name origin prediction method performance

## SouthAsian = col_double(), ## truth = col_character() ## )
-
regs <- predictions_df %>% select(African:SouthAsian) %>% colnames()
-cal_dfs <- list()
-for (reg in regs) {
-  pred_reg <- predictions_df %>%
-    mutate(y_true_bin = as.factor((y_true == reg))) %>%
-    rename(prob = reg) %>%
-    select(y_true_bin, prob)
-
-  cal_dfs[[reg]] <- calibration(y_true_bin ~ prob,
-                                data = pred_reg,
-                                cuts = 11,
-                                class = 'TRUE')$data %>%
-    mutate(region = reg)
-}
-
## Note: Using an external vector in selections is ambiguous.
-## ℹ Use `all_of(reg)` instead of `reg` to silence this message.
-## ℹ See <https://tidyselect.r-lib.org/reference/faq-external-vector.html>.
-## This message is displayed once per session.
-
cal_dfs$EastAsian
-
##    calibModelVar            bin   Percent      Lower     Upper Count  midpoint
-## 1           prob     [0,0.0909]  0.973038  0.9061138  1.043559   777  4.545455
-## 2           prob (0.0909,0.182] 12.715105 10.7555376 14.887108   133 13.636364
-## 3           prob  (0.182,0.273] 20.620843 16.9791523 24.652952    93 22.727273
-## 4           prob  (0.273,0.364] 29.924242 24.4643714 35.841394    79 31.818182
-## 5           prob  (0.364,0.455] 35.897436 29.7515540 42.405681    84 40.909091
-## 6           prob  (0.455,0.545] 38.536585 31.8402892 45.569554    79 50.000000
-## 7           prob  (0.545,0.636] 45.637584 37.4635833 53.988516    68 59.090909
-## 8           prob  (0.636,0.727] 56.953642 48.6544756 64.974492    86 68.181818
-## 9           prob  (0.727,0.818] 61.421320 54.2394760 68.253900   121 77.272727
-## 10          prob  (0.818,0.909] 71.764706 66.6571343 76.488532   244 86.363636
-## 11          prob      (0.909,1] 97.209555 96.8524649 97.536348  8953 95.454545
-##       region
-## 1  EastAsian
-## 2  EastAsian
-## 3  EastAsian
-## 4  EastAsian
-## 5  EastAsian
-## 6  EastAsian
-## 7  EastAsian
-## 8  EastAsian
-## 9  EastAsian
-## 10 EastAsian
-## 11 EastAsian
-
fig_3b <- bind_rows(cal_dfs) %>%
-  recode_region() %>%
-  ggplot(aes(x = midpoint/100, y = Percent/100, color = fct_relevel(region, as.character(auc_df$region)))) +
-  geom_abline(slope = 1, linetype = 2, alpha = 0.5) +
-  scale_y_continuous(labels = scales::percent_format(accuracy = 20L), breaks = seq(0, 1, 0.2), limits = c(-0.005, 1.045)) +
-  scale_x_continuous(labels = scales::percent_format(accuracy = 20L), breaks = seq(0, 1, 0.2), limits = c(0, 1)) +
-  coord_fixed() +
-  geom_point() +
-  geom_line() +
-  scale_color_manual(values = region_cols) +
-  theme(legend.position = 'None') +
-  labs(x = 'Predicted probability', y = 'Fraction of names')
+
regs <- predictions_df %>% select(African:SouthAsian) %>% colnames()
+cal_dfs <- list()
+for (reg in regs) {
+  pred_reg <- predictions_df %>%
+    mutate(y_true_bin = as.factor((y_true == reg))) %>%
+    rename(prob = reg) %>%
+    select(y_true_bin, prob)
+
+  cal_dfs[[reg]] <- calibration(y_true_bin ~ prob,
+                                data = pred_reg,
+                                cuts = 11,
+                                class = 'TRUE')$data %>%
+    mutate(region = reg)
+}
+cal_dfs$EastAsian
+
##    calibModelVar            bin   Percent      Lower     Upper
+## 1           prob     [0,0.0909]  0.973038  0.9061138  1.043559
+## 2           prob (0.0909,0.182] 12.715105 10.7555376 14.887108
+## 3           prob  (0.182,0.273] 20.620843 16.9791523 24.652952
+## 4           prob  (0.273,0.364] 29.924242 24.4643714 35.841394
+## 5           prob  (0.364,0.455] 35.897436 29.7515540 42.405681
+## 6           prob  (0.455,0.545] 38.536585 31.8402892 45.569554
+## 7           prob  (0.545,0.636] 45.637584 37.4635833 53.988516
+## 8           prob  (0.636,0.727] 56.953642 48.6544756 64.974492
+## 9           prob  (0.727,0.818] 61.421320 54.2394760 68.253900
+## 10          prob  (0.818,0.909] 71.764706 66.6571343 76.488532
+## 11          prob      (0.909,1] 97.209555 96.8524649 97.536348
+##    Count  midpoint    region
+## 1    777  4.545455 EastAsian
+## 2    133 13.636364 EastAsian
+## 3     93 22.727273 EastAsian
+## 4     79 31.818182 EastAsian
+## 5     84 40.909091 EastAsian
+## 6     79 50.000000 EastAsian
+## 7     68 59.090909 EastAsian
+## 8     86 68.181818 EastAsian
+## 9    121 77.272727 EastAsian
+## 10   244 86.363636 EastAsian
+## 11  8953 95.454545 EastAsian
+
fig_3b <- bind_rows(cal_dfs) %>%
+  recode_region() %>%
+  ggplot(aes(x = midpoint/100, y = Percent/100, color = fct_relevel(region, as.character(auc_df$region)))) +
+  geom_abline(slope = 1, linetype = 2, alpha = 0.5) +
+  scale_y_continuous(labels = scales::percent_format(accuracy = 20L), breaks = seq(0, 1, 0.2), limits = c(-0.005, 1.045)) +
+  scale_x_continuous(labels = scales::percent_format(accuracy = 20L), breaks = seq(0, 1, 0.2), limits = c(0, 1)) +
+  coord_fixed() +
+  geom_point() +
+  geom_line() +
+  scale_color_manual(values = region_cols) +
+  theme(legend.position = 'None') +
+  labs(x = 'Predicted probability', y = 'Fraction of names')
## Warning: Problem with `mutate()` input `region`.
 ## ℹ Unknown levels in `f`: OtherCategories
 ## ℹ Input `region` is `fct_recode(...)`.
## Warning: Unknown levels in `f`: OtherCategories
-
n_obs <- sum(auc_df$n)
-short_regs <- auc_df$region %>% 
-  as.character() %>% 
-  gsub(' names', '', .)
-
-heat_dat <- predictions_df %>%
-  group_by(y_true) %>%
-  summarise_if(is.numeric, mean, na.rm = T) %>%
-  ungroup() %>%
-  pivot_longer(- y_true, names_to = 'region', values_to = 'pred_prob') %>%
-  recode_region() %>%
-  rename('reg_hat' = region, 'region' = y_true) %>% 
-  recode_region() %>%
-  rename('y_true' = region, 'region' = reg_hat) %>% 
-  left_join(auc_df, by = 'region') %>%
-  mutate(scale_pred_prob = log2((pred_prob)/(n/n_obs)),
-         region = region %>% gsub(' names', '', .) %>% fct_relevel(short_regs),
-         y_true = y_true %>% gsub(' names', '', .) %>% fct_relevel(short_regs))
+
n_obs <- sum(auc_df$n)
+short_regs <- auc_df$region %>% 
+  as.character() %>% 
+  gsub(' names', '', .)
+
+heat_dat <- predictions_df %>%
+  group_by(y_true) %>%
+  summarise_if(is.numeric, mean, na.rm = T) %>%
+  ungroup() %>%
+  pivot_longer(- y_true, names_to = 'region', values_to = 'pred_prob') %>%
+  recode_region() %>%
+  rename('reg_hat' = region, 'region' = y_true) %>% 
+  recode_region() %>%
+  rename('y_true' = region, 'region' = reg_hat) %>% 
+  left_join(auc_df, by = 'region') %>%
+  mutate(scale_pred_prob = log2((pred_prob)/(n/n_obs)),
+         region = region %>% gsub(' names', '', .) %>% fct_relevel(short_regs),
+         y_true = y_true %>% gsub(' names', '', .) %>% fct_relevel(short_regs))
## Warning: Problem with `mutate()` input `region`.
 ## ℹ Unknown levels in `f`: OtherCategories
 ## ℹ Input `region` is `fct_recode(...)`.
@@ -1910,31 +1893,31 @@

Name origin prediction method performance

## ℹ Unknown levels in `f`: OtherCategories ## ℹ Input `region` is `fct_recode(...)`.
## Warning: Unknown levels in `f`: OtherCategories
-
fig_3c <- ggplot(heat_dat, aes(y_true, region,
-                               fill = scale_pred_prob)) +
-  geom_tile() +
-  scale_fill_gradientn(
-    colours = c("#3CBC75FF","white","#440154FF"),
-    values = scales::rescale(
-      c(min(heat_dat$scale_pred_prob),
-        0,
-        max(heat_dat$scale_pred_prob)))
-  ) +
-  coord_fixed() +
-  labs(x = 'True region', y = 'Predicted region', fill = bquote(log[2]~'FC')) +
-  theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.5),
-        legend.position = 'top',
-        legend.key.height = unit(0.2, 'cm'),
-        legend.title = element_text(vjust = 1),
-        legend.margin = margin(0, 0,0, -1, unit='cm'),
-        axis.title.x = element_text(margin = margin(t = 27, r = 0, b = 0, l = 0)),
-        axis.title.y = element_text(margin = margin(t = 0, r = 15, b = 0, l = 0)))
-
-fig_3 <- cowplot::plot_grid(fig_3a, fig_3b, fig_3c, labels = 'AUTO', nrow = 1,
-                            rel_widths = c(2,2,1.6))
-fig_3
+
fig_3c <- ggplot(heat_dat, aes(y_true, region,
+                               fill = scale_pred_prob)) +
+  geom_tile() +
+  scale_fill_gradientn(
+    colours = c("#3CBC75FF","white","#440154FF"),
+    values = scales::rescale(
+      c(min(heat_dat$scale_pred_prob),
+        0,
+        max(heat_dat$scale_pred_prob)))
+  ) +
+  coord_fixed() +
+  labs(x = 'True region', y = 'Predicted region', fill = bquote(log[2]~'FC')) +
+  theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.5),
+        legend.position = 'top',
+        legend.key.height = unit(0.2, 'cm'),
+        legend.title = element_text(vjust = 1),
+        legend.margin = margin(0, 0,0, -1, unit='cm'),
+        axis.title.x = element_text(margin = margin(t = 27, r = 0, b = 0, l = 0)),
+        axis.title.y = element_text(margin = margin(t = 0, r = 15, b = 0, l = 0)))
+
+fig_3 <- cowplot::plot_grid(fig_3a, fig_3b, fig_3c, labels = 'AUTO', nrow = 1,
+                            rel_widths = c(2,2,1.6))
+fig_3

-
# ggsave('figs/fig_3.png', fig_3, height = 4, width = 10)
+
# ggsave('figs/fig_3.png', fig_3, height = 4, width = 10)
LS0tCnRpdGxlOiAiUGxvdHRpbmcgUk9DIGN1cnZlcyIKb3V0cHV0OgogIGh0bWxfZG9jdW1lbnQ6CiAgICB0aGVtZTogZmxhdGx5CiAgICB0b2M6IHRydWUKICAgIHRvY19mbG9hdDogdHJ1ZQogICAgY29kZV9kb3dubG9hZDogdHJ1ZQogICAgaGlnaGxpZ2h0OiB0YW5nbwprbml0OiAoZnVuY3Rpb24oaW5wdXRGaWxlLCBlbmNvZGluZykgewogIHJtYXJrZG93bjo6cmVuZGVyKGlucHV0RmlsZSwgZW5jb2RpbmcgPSBlbmNvZGluZywgb3V0cHV0X2RpciA9ICJkb2NzIikgfSkKLS0tCgojIyBOYW1lIG9yaWdpbiBwcmVkaWN0aW9uIG1ldGhvZCBwZXJmb3JtYW5jZSB7I2F1cm9jfQoKYGBge3J9CmxpYnJhcnkodGlkeXZlcnNlKQojIHN0aWxsIG5lZWQgdG8gaW5zdGFsbCBjYXJldCBmb3IgdGhlIGNhbGlicmF0aW9uIGZ1bmN0aW9uIGJlY2F1c2UgdGlkeW1vZGVscydzIAojIHByb2JhYmx5IGhhc24ndCBwdWJsaXNoZWQgdGhpcyB5ZXQKbGlicmFyeShjYXJldCkKCnNvdXJjZSgndXRpbHMvci11dGlscy5SJykKdGhlbWVfc2V0KHRoZW1lX2J3KCkpCgpgYGAKCmBgYHtyfQpyb2NfZGYgPC0gcmVhZF90c3YoJ2h0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9ncmVlbmVsYWIvd2lraS1uYXRpb25hbGl0eS1lc3RpbWF0ZS83YzIyZDBhNWY2NjFjZTVhZWI3ODUyMTUwOTVkZWRhNDA5NzNmZjE3L21vZGVscy9OYW1lUHJpc21fcm9jX2N1cnZlcy50c3YnKSAlPiUKICByZW5hbWUoJ3JlZ2lvbicgPSBjYXRlZ29yeSkgJT4lCiAgIyByZWNvZGVfcmVnaW9uX2xldHRlcigpICU+JQogIHJlY29kZV9yZWdpb24oKSAlPiUgCiAgZ3JvdXBfYnkocmVnaW9uKSAlPiUKICBtdXRhdGUoU2Vuc2l0aXZpdHkgPSB0cHIsIFNwZWNpZmljaXR5ID0gMS1mcHIsIGRTZW5zID0gYyhhYnMoZGlmZigxLXRwcikpLCAwKSkgJT4lCiAgdW5ncm91cCgpCgphdWNfZGYgPC0gcm9jX2RmICU+JQogIGdyb3VwX2J5KHJlZ2lvbikgJT4lCiAgIyBhZGRfY291bnQoKSAlPiUKICBzdW1tYXJpc2UoYXVjID0gc3VtKCgxIC0gZnByKSAqIGRTZW5zKSwKICAgICAgICAgICAgbiA9IG4oKSkgJT4lCiAgYXJyYW5nZShkZXNjKGF1YykpICU+JQogIG11dGF0ZShhdWNfcGN0ID0gMTAwICogYXVjLAogICAgICAgICByZWdfYXVjID0gcGFzdGUwKHJlZ2lvbiwgJywgQVVDID0gJywgcm91bmQoYXVjX3BjdCwgMSksICclJykpCgojIHJlZ2lvbl9sZXZlbHMgPC0gYygnQ2VsdGljIEVuZ2xpc2gnLCAnRXVyb3BlYW4nLCAnRWFzdCBBc2lhbicsICdIaXNwYW5pYycsICdTb3V0aCBBc2lhbicsICdNdXNsaW0nLCAnSXNyYWVsaScsICdBZnJpY2FuJykKcmVnaW9uX2xldmVscyA8LSBwYXN0ZShjKCdDZWx0aWMvRW5nbGlzaCcsICdFdXJvcGVhbicsICdFYXN0IEFzaWFuJywgJ0hpc3BhbmljJywgJ1NvdXRoIEFzaWFuJywgJ0FyYWJpYycsICdIZWJyZXcnLCAnQWZyaWNhbicsICdOb3JkaWMnLCAnR3JlZWsnKSwgJ25hbWVzJykKcmVnaW9uX2xldmVsc19sZXQgPC0gdG91cHBlcihsZXR0ZXJzWzE6OF0pCnJlZ2lvbl9jb2xzIDwtIGMoJyNiM2RlNjknLCAnI2ZkYjQ2MicsICAnI2JjODBiZCcsICcjOGRkM2M3JywgJyNmY2NkZTUnLCAnI2ZmZmZiMycsICcjY2NlYmM1JywgJyNiZWJhZGEnLCAnIzgwYjFkMycsICcjZmI4MDcyJykKCmZpZ18zYSA8LSByb2NfZGYgJT4lCiAgbGVmdF9qb2luKGF1Y19kZiwgYnkgPSAncmVnaW9uJykgJT4lCiAgZ2dwbG90KGFlcyh4ID0gU2Vuc2l0aXZpdHksIHkgPSBTcGVjaWZpY2l0eSwgY29sb3IgPSBmY3RfcmVsZXZlbChyZWdfYXVjLCBhcy5jaGFyYWN0ZXIoYXVjX2RmJHJlZ19hdWMpKSkpICsKICBzY2FsZV9jb2xvcl9tYW51YWwodmFsdWVzID0gcmVnaW9uX2NvbHMpICsKICBnZW9tX3N0ZXAoc2l6ZSA9IDEsIGFscGhhID0gMC44KSArCiAgY29vcmRfZml4ZWQoKSArCiAgc2NhbGVfeF9yZXZlcnNlKGJyZWFrcyA9IHNlcSgxLCAwLCAtMC4yKSwgbGFiZWxzID0gc2NhbGVzOjpwZXJjZW50KSArCiAgc2NhbGVfeV9jb250aW51b3VzKGJyZWFrcyA9IHNlcSgwLCAxLCAwLjIpLCBsYWJlbHMgPSBzY2FsZXM6OnBlcmNlbnQsIGxpbWl0cyA9IGMoTkEsIDEuMDUpKSArCiAgdGhlbWUobGVnZW5kLnBvc2l0aW9uID0gYygwLjYyLCAwLjQyKSwKICAgICAgICBsZWdlbmQudGl0bGUgPSBlbGVtZW50X2JsYW5rKCksCiAgICAgICAgbGVnZW5kLnRleHQuYWxpZ24gPSAxLAogICAgICAgIGxlZ2VuZC50ZXh0ID0gZWxlbWVudF90ZXh0KHNpemUgPSA3KSwKICAgICAgICBsZWdlbmQubWFyZ2luID0gbWFyZ2luKC0wLjIsIDAuMiwgMC4yLCAwLCB1bml0PSdjbScpKQpgYGAKCgpgYGB7cn0KcHJlZGljdGlvbnNfZGYgPC0gcmVhZF90c3YoJ2h0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9ncmVlbmVsYWIvd2lraS1uYXRpb25hbGl0eS1lc3RpbWF0ZS83YzIyZDBhNWY2NjFjZTVhZWI3ODUyMTUwOTVkZWRhNDA5NzNmZjE3L2RhdGEvTmFtZVByaXNtX3Jlc3VsdHNfdGVzdC50c3YnKSAlPiUKICBtdXRhdGUoeV90cnVlID0gYXMuZmFjdG9yKHRydXRoKSkgJT4lCiAgc2VsZWN0KC10cnV0aCkKCnJlZ3MgPC0gcHJlZGljdGlvbnNfZGYgJT4lIHNlbGVjdChBZnJpY2FuOlNvdXRoQXNpYW4pICU+JSBjb2xuYW1lcygpCmNhbF9kZnMgPC0gbGlzdCgpCmZvciAocmVnIGluIHJlZ3MpIHsKICBwcmVkX3JlZyA8LSBwcmVkaWN0aW9uc19kZiAlPiUKICAgIG11dGF0ZSh5X3RydWVfYmluID0gYXMuZmFjdG9yKCh5X3RydWUgPT0gcmVnKSkpICU+JQogICAgcmVuYW1lKHByb2IgPSByZWcpICU+JQogICAgc2VsZWN0KHlfdHJ1ZV9iaW4sIHByb2IpCgogIGNhbF9kZnNbW3JlZ11dIDwtIGNhbGlicmF0aW9uKHlfdHJ1ZV9iaW4gfiBwcm9iLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBwcmVkX3JlZywKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjdXRzID0gMTEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3MgPSAnVFJVRScpJGRhdGEgJT4lCiAgICBtdXRhdGUocmVnaW9uID0gcmVnKQp9CmNhbF9kZnMkRWFzdEFzaWFuCgpgYGAKCmBgYHtyfQpmaWdfM2IgPC0gYmluZF9yb3dzKGNhbF9kZnMpICU+JQogIHJlY29kZV9yZWdpb24oKSAlPiUKICBnZ3Bsb3QoYWVzKHggPSBtaWRwb2ludC8xMDAsIHkgPSBQZXJjZW50LzEwMCwgY29sb3IgPSBmY3RfcmVsZXZlbChyZWdpb24sIGFzLmNoYXJhY3RlcihhdWNfZGYkcmVnaW9uKSkpKSArCiAgZ2VvbV9hYmxpbmUoc2xvcGUgPSAxLCBsaW5ldHlwZSA9IDIsIGFscGhhID0gMC41KSArCiAgc2NhbGVfeV9jb250aW51b3VzKGxhYmVscyA9IHNjYWxlczo6cGVyY2VudF9mb3JtYXQoYWNjdXJhY3kgPSAyMEwpLCBicmVha3MgPSBzZXEoMCwgMSwgMC4yKSwgbGltaXRzID0gYygtMC4wMDUsIDEuMDQ1KSkgKwogIHNjYWxlX3hfY29udGludW91cyhsYWJlbHMgPSBzY2FsZXM6OnBlcmNlbnRfZm9ybWF0KGFjY3VyYWN5ID0gMjBMKSwgYnJlYWtzID0gc2VxKDAsIDEsIDAuMiksIGxpbWl0cyA9IGMoMCwgMSkpICsKICBjb29yZF9maXhlZCgpICsKICBnZW9tX3BvaW50KCkgKwogIGdlb21fbGluZSgpICsKICBzY2FsZV9jb2xvcl9tYW51YWwodmFsdWVzID0gcmVnaW9uX2NvbHMpICsKICB0aGVtZShsZWdlbmQucG9zaXRpb24gPSAnTm9uZScpICsKICBsYWJzKHggPSAnUHJlZGljdGVkIHByb2JhYmlsaXR5JywgeSA9ICdGcmFjdGlvbiBvZiBuYW1lcycpCgpgYGAKCgoKYGBge3IgZmlnLmhlaWdodD0zLjUsIGZpZy53aWR0aD0xMH0Kbl9vYnMgPC0gc3VtKGF1Y19kZiRuKQpzaG9ydF9yZWdzIDwtIGF1Y19kZiRyZWdpb24gJT4lIAogIGFzLmNoYXJhY3RlcigpICU+JSAKICBnc3ViKCcgbmFtZXMnLCAnJywgLikKCmhlYXRfZGF0IDwtIHByZWRpY3Rpb25zX2RmICU+JQogIGdyb3VwX2J5KHlfdHJ1ZSkgJT4lCiAgc3VtbWFyaXNlX2lmKGlzLm51bWVyaWMsIG1lYW4sIG5hLnJtID0gVCkgJT4lCiAgdW5ncm91cCgpICU+JQogIHBpdm90X2xvbmdlcigtIHlfdHJ1ZSwgbmFtZXNfdG8gPSAncmVnaW9uJywgdmFsdWVzX3RvID0gJ3ByZWRfcHJvYicpICU+JQogIHJlY29kZV9yZWdpb24oKSAlPiUKICByZW5hbWUoJ3JlZ19oYXQnID0gcmVnaW9uLCAncmVnaW9uJyA9IHlfdHJ1ZSkgJT4lIAogIHJlY29kZV9yZWdpb24oKSAlPiUKICByZW5hbWUoJ3lfdHJ1ZScgPSByZWdpb24sICdyZWdpb24nID0gcmVnX2hhdCkgJT4lIAogIGxlZnRfam9pbihhdWNfZGYsIGJ5ID0gJ3JlZ2lvbicpICU+JQogIG11dGF0ZShzY2FsZV9wcmVkX3Byb2IgPSBsb2cyKChwcmVkX3Byb2IpLyhuL25fb2JzKSksCiAgICAgICAgIHJlZ2lvbiA9IHJlZ2lvbiAlPiUgZ3N1YignIG5hbWVzJywgJycsIC4pICU+JSBmY3RfcmVsZXZlbChzaG9ydF9yZWdzKSwKICAgICAgICAgeV90cnVlID0geV90cnVlICU+JSBnc3ViKCcgbmFtZXMnLCAnJywgLikgJT4lIGZjdF9yZWxldmVsKHNob3J0X3JlZ3MpKQoKCmZpZ18zYyA8LSBnZ3Bsb3QoaGVhdF9kYXQsIGFlcyh5X3RydWUsIHJlZ2lvbiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGZpbGwgPSBzY2FsZV9wcmVkX3Byb2IpKSArCiAgZ2VvbV90aWxlKCkgKwogIHNjYWxlX2ZpbGxfZ3JhZGllbnRuKAogICAgY29sb3VycyA9IGMoIiMzQ0JDNzVGRiIsIndoaXRlIiwiIzQ0MDE1NEZGIiksCiAgICB2YWx1ZXMgPSBzY2FsZXM6OnJlc2NhbGUoCiAgICAgIGMobWluKGhlYXRfZGF0JHNjYWxlX3ByZWRfcHJvYiksCiAgICAgICAgMCwKICAgICAgICBtYXgoaGVhdF9kYXQkc2NhbGVfcHJlZF9wcm9iKSkpCiAgKSArCiAgY29vcmRfZml4ZWQoKSArCiAgbGFicyh4ID0gJ1RydWUgcmVnaW9uJywgeSA9ICdQcmVkaWN0ZWQgcmVnaW9uJywgZmlsbCA9IGJxdW90ZShsb2dbMl1+J0ZDJykpICsKICB0aGVtZShheGlzLnRleHQueCA9IGVsZW1lbnRfdGV4dChhbmdsZSA9IDkwLCBoanVzdCA9IDEsIHZqdXN0ID0gMC41KSwKICAgICAgICBsZWdlbmQucG9zaXRpb24gPSAndG9wJywKICAgICAgICBsZWdlbmQua2V5LmhlaWdodCA9IHVuaXQoMC4yLCAnY20nKSwKICAgICAgICBsZWdlbmQudGl0bGUgPSBlbGVtZW50X3RleHQodmp1c3QgPSAxKSwKICAgICAgICBsZWdlbmQubWFyZ2luID0gbWFyZ2luKDAsIDAsMCwgLTEsIHVuaXQ9J2NtJyksCiAgICAgICAgYXhpcy50aXRsZS54ID0gZWxlbWVudF90ZXh0KG1hcmdpbiA9IG1hcmdpbih0ID0gMjcsIHIgPSAwLCBiID0gMCwgbCA9IDApKSwKICAgICAgICBheGlzLnRpdGxlLnkgPSBlbGVtZW50X3RleHQobWFyZ2luID0gbWFyZ2luKHQgPSAwLCByID0gMTUsIGIgPSAwLCBsID0gMCkpKQoKZmlnXzMgPC0gY293cGxvdDo6cGxvdF9ncmlkKGZpZ18zYSwgZmlnXzNiLCBmaWdfM2MsIGxhYmVscyA9ICdBVVRPJywgbnJvdyA9IDEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZWxfd2lkdGhzID0gYygyLDIsMS42KSkKZmlnXzMKIyBnZ3NhdmUoJ2ZpZ3MvZmlnXzMucG5nJywgZmlnXzMsIGhlaWdodCA9IDQsIHdpZHRoID0gMTApCmBgYAo=
diff --git a/docs/092.save-raws-to-Rdata.html b/docs/092.save-raws-to-Rdata.html index 6a6034e..c479ccb 100644 --- a/docs/092.save-raws-to-Rdata.html +++ b/docs/092.save-raws-to-Rdata.html @@ -4300,7 +4300,7 @@

Save raw data into .Rdata to be loaded in by analys

General data read-in

all_full_names <- readr::read_tsv('data/names/full-names.tsv.xz') %>% distinct()
## 
-## ── Column specification ────────────────────────────────────────────────────────
+## ── Column specification ─────────────────────────────────────────
 ## cols(
 ##   fore_name = col_character(),
 ##   last_name = col_character(),
@@ -4334,7 +4334,7 @@ 

General data read-in

publication_date = ymd(publication_date, truncated = 2)) %>% filter(year(publication_date) < 2020)
## 
-## ── Column specification ────────────────────────────────────────────────────────
+## ── Column specification ─────────────────────────────────────────
 ## cols(
 ##   pmid = col_double(),
 ##   pmcid = col_character(),
@@ -4358,7 +4358,7 @@ 

General data read-in

left_join(select(all_full_names, - full_name), by = c('fore_name', 'last_name')) %>% filter(year(year) < 2020, conference != 'PSB') # remove PSB, exclude ISCB Fellows and ISMB speakers in 2020 for now
## 
-## ── Column specification ────────────────────────────────────────────────────────
+## ── Column specification ─────────────────────────────────────────
 ## cols(
 ##   year = col_double(),
 ##   full_name = col_character(),
@@ -4371,9 +4371,10 @@ 

General data read-in

## )
keynotes %>% filter(is.na(fore_name_simple))
## # A tibble: 0 x 11
-## # … with 11 variables: year <date>, full_name <chr>, fore_name <chr>,
-## #   last_name <chr>, conference <chr>, source <chr>, affiliations <chr>,
-## #   afflcountries <chr>, publication_date <date>, fore_name_simple <chr>,
+## # … with 11 variables: year <date>, full_name <chr>,
+## #   fore_name <chr>, last_name <chr>, conference <chr>,
+## #   source <chr>, affiliations <chr>, afflcountries <chr>,
+## #   publication_date <date>, fore_name_simple <chr>,
 ## #   last_name_simple <chr>
large_jours <- articles %>%
   count(journal, sort = T) %>% 
@@ -4385,7 +4386,7 @@ 

General data read-in

left_join(all_full_names, by = 'full_name')
## Warning: Missing column names filled in: 'X1' [1]
## 
-## ── Column specification ────────────────────────────────────────────────────────
+## ── Column specification ─────────────────────────────────────────
 ## cols(
 ##   X1 = col_character(),
 ##   African = col_double(),
@@ -4406,8 +4407,8 @@ 

General data read-in

corr_authors %>% 
   count(year, name = 'Number of articles with last authors') %>% 
   DT::datatable(rownames = F)
-
- +
+

If we set a threshold at least 200 articles a year, we should only consider articles from 1998 on.

corr_authors <- corr_authors %>% 
   add_count(year, name = 'n_aut_yr') %>% 
diff --git a/docs/093.summary-stats.html b/docs/093.summary-stats.html
index 54e91c6..4db9784 100644
--- a/docs/093.summary-stats.html
+++ b/docs/093.summary-stats.html
@@ -4317,8 +4317,8 @@ 

Honorees

count(fore_name, last_name) %>% arrange(desc(n)) %>% DT::datatable()
-
- +
+

Number of keynote speakers/fellows across years:

keynotes %>%
   select(year, conference) %>% 
@@ -4364,7 +4364,7 @@ 

Authors

Gender analysis

gender_df <- read_tsv('data/gender/genderize.tsv')
## 
-## ── Column specification ────────────────────────────────────────────────────────
+## ── Column specification ─────────────────────────────────────────
 ## cols(
 ##   fore_name_simple = col_character(),
 ##   n_authors = col_double(),
@@ -4412,8 +4412,8 @@ 

Gender analysis

pull(pred.asi) %>% mean(na.rm = T)
## [1] "Proceeding with surname-only predictions..."
-
## Warning in merge_surnames(voter.file, impute.missing = impute.missing): 1305
-## surnames were not matched.
+
## Warning in merge_surnames(voter.file, impute.missing =
+## impute.missing): 1305 surnames were not matched.
## [1] 0.8174599

Honorees that didn’t receive a gender prediction: Chung-I Wu.

In summary, the NA predictions mostly include initials only, hyphenated names and perhaps names with accent marks.

@@ -4492,8 +4492,8 @@

Name origin analysis

## ℹ Unknown levels in `f`: OtherCategories ## ℹ Input `region` is `fct_recode(...)`.
## Warning: Unknown levels in `f`: OtherCategories
-
- +
+
 pubmed_nat_pmids %>% count(!is.na(African), is.na(fore_name_simple.x))
## # A tibble: 2 x 3
 ##   `!is.na(African)` `is.na(fore_name_simple.x)`      n
diff --git a/docs/10.visualize-gender.html b/docs/10.visualize-gender.html
index 1f524c3..19daa4c 100644
--- a/docs/10.visualize-gender.html
+++ b/docs/10.visualize-gender.html
@@ -1682,7 +1682,7 @@ 

Load data

alpha_threshold <- qnorm(0.975) gender_df <- read_tsv("data/gender/genderize.tsv")
## 
-## ── Column specification ────────────────────────────────────────────────────────
+## ── Column specification ─────────────────────────────────────────
 ## cols(
 ##   fore_name_simple = col_character(),
 ##   n_authors = col_double(),
@@ -1730,21 +1730,13 @@ 

Prepare data frames for later analyses

values_to = "probabilities" ) %>% filter(!is.na(probabilities)) %>% - group_by(type, year, gender) %>% - mutate( - pmc_citations_year = mean(adjusted_citations), - weight = adjusted_citations / pmc_citations_year, - weighted_probs = probabilities * weight - # weight = 1 - ) + group_by(type, year, gender) iscb_pubmed_sum <- iscb_pubmed %>% summarise( # n = n(), - mean_prob = mean(weighted_probs), - # mean_prob = mean(probabilities, na.rm = T), - # sd_prob = sd(probabilities, na.rm = T), - se_prob = sqrt(var(probabilities) * sum(weight^2) / (sum(weight)^2)), + mean_prob = mean(probabilities, na.rm = T), + se_prob = sd(probabilities, na.rm = T), # n = mean(n), me_prob = alpha_threshold * se_prob, .groups = "drop" @@ -1760,15 +1752,15 @@

Figure 2: ISCB Fellows and keynote speakers appear more evenly split between # group_by(year, type, gender) %>% gender_breakdown("main", fct_rev(type)) fig_1

-

-
ggsave("figs/gender_breakdown.png", fig_1, width = 5, height = 2.5)
+

+
ggsave("figs/gender_breakdown.png", fig_1, width = 5, height = 2.5, dpi = 600)
 ggsave("figs/gender_breakdown.svg", fig_1, width = 5, height = 2.5)
## `summarise()` ungrouping output (override with `.groups` argument)
## # A tibble: 2 x 2
 ##   type                     prob_female_avg
 ##   <chr>                              <dbl>
 ## 1 Keynote speakers/Fellows           0.303
-## 2 Pubmed authors                     0.268
+## 2 Pubmed authors 0.277

Supplementary Figure S2

@@ -1784,8 +1776,8 @@

Supplementary Figure S2

) %>% group_by(type2, year, gender) %>% summarise( - mean_prob = mean(weighted_probs), - se_prob = sqrt(var(probabilities) * sum(weight^2) / (sum(weight)^2)), + mean_prob = mean(probabilities), + se_prob = sd(probabilities)/sqrt(n()), me_prob = alpha_threshold * se_prob, .groups = "drop" ) %>% @@ -1794,8 +1786,8 @@

Supplementary Figure S2

labels = scales::date_format("'%y"), expand = c(0, 0) )
-
## Scale for 'x' is already present. Adding another scale for 'x', which will
-## replace the existing scale.
+
## Scale for 'x' is already present. Adding another scale for
+## 'x', which will replace the existing scale.
@@ -1809,58 +1801,59 @@

Mean and standard deviation of predicted probabilities

) + theme(legend.position = c(0.88, 0.2))
## `geom_smooth()` using formula 'y ~ s(x, bs = "cs")'
-
## Warning: Removed 13171 rows containing non-finite values (stat_smooth).
-

+
## Warning: Removed 13171 rows containing non-finite values
+## (stat_smooth).
+

Hypothesis testing

iscb_lm <- iscb_pubmed %>%
-  filter(gender == "probability_female", !is.na(weighted_probs)) %>%
+  filter(gender == "probability_female", !is.na(probabilities)) %>%
   mutate(type = as.factor(type)) %>% 
   mutate(type = type %>% relevel(ref = "Pubmed authors"))
scaled_iscb <- iscb_lm %>%
   filter(year(year) >= 2002)
-# scaled_iscb$s_prob <- scale(scaled_iscb$weighted_probs, scale = F)
+# scaled_iscb$s_prob <- scale(scaled_iscb$probabilities, scale = F)
 # scaled_iscb$s_year <- scale(scaled_iscb$year, scale = F)
 
-main_lm <- glm(type ~ year + weighted_probs,
+main_lm <- glm(type ~ year + probabilities,
   data = scaled_iscb, # %>% mutate(year = as.factor(year))
   family = "binomial"
 )
 
 broom::tidy(main_lm)
## # A tibble: 3 x 5
-##   term            estimate std.error statistic  p.value
-##   <chr>              <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)    -2.06     0.478         -4.30 1.67e- 5
-## 2 year           -0.000271 0.0000320     -8.47 2.42e-17
-## 3 weighted_probs  0.155    0.0921         1.69 9.19e- 2
+## term estimate std.error statistic p.value +## <chr> <dbl> <dbl> <dbl> <dbl> +## 1 (Intercept) -2.06 0.478 -4.30 1.67e- 5 +## 2 year -0.000271 0.0000320 -8.47 2.46e-17 +## 3 probabilities 0.193 0.146 1.33 1.85e- 1
inte_lm <- glm(
-  # type ~ scale(year, scale = F) * scale(weighted_probs, scale = F),
+  # type ~ scale(year, scale = F) * scale(probabilities, scale = F),
   # type ~ s_year * s_prob,
-  type ~ year * weighted_probs,
+  type ~ year * probabilities,
   data = scaled_iscb, # %>% mutate(year = as.factor(year))
   family = "binomial"
 )
 broom::tidy(inte_lm)
## # A tibble: 4 x 5
-##   term                  estimate std.error statistic  p.value
-##   <chr>                    <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)         -1.91      0.523        -3.65  2.59e- 4
-## 2 year                -0.000281  0.0000351    -7.99  1.30e-15
-## 3 weighted_probs      -0.445     0.901        -0.494 6.21e- 1
-## 4 year:weighted_probs  0.0000402 0.0000593     0.679 4.97e- 1
+## term estimate std.error statistic p.value +## <chr> <dbl> <dbl> <dbl> <dbl> +## 1 (Intercept) -1.77 0.568 -3.11 1.85e- 3 +## 2 year -0.000291 0.0000383 -7.59 3.22e-14 +## 3 probabilities -0.992 1.29 -0.771 4.41e- 1 +## 4 year:probabilities 0.0000787 0.0000846 0.930 3.52e- 1
anova(main_lm, inte_lm, test = "Chisq")
## Analysis of Deviance Table
 ## 
-## Model 1: type ~ year + weighted_probs
-## Model 2: type ~ year * weighted_probs
+## Model 1: type ~ year + probabilities
+## Model 2: type ~ year * probabilities
 ##   Resid. Df Resid. Dev Df Deviance Pr(>Chi)
-## 1    153942     4582.3                     
-## 2    153941     4581.8  1  0.47034   0.4928
+## 1 153942 4582.8 +## 2 153941 4582.0 1 0.86975 0.351
# mean(scaled_iscb$year)
-# mean(scaled_iscb$weighted_probs)
-

The two groups of scientists did not have a significant association with the gender predicted from fore names (P = 0.091898). Interaction terms do not predict type over and above the main effect of gender probability and year.

+# mean(scaled_iscb$probabilities) +

The two groups of scientists did not have a significant association with the gender predicted from fore names (P = 0.18469). Interaction terms do not predict type over and above the main effect of gender probability and year.

sessionInfo()
## R version 4.0.3 (2020-10-10)
 ## Platform: x86_64-pc-linux-gnu (64-bit)
@@ -1878,55 +1871,73 @@ 

Hypothesis testing

## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C ## ## attached base packages: -## [1] stats graphics grDevices utils datasets methods base +## [1] stats graphics grDevices utils datasets methods +## [7] base ## ## other attached packages: -## [1] gdtools_0.2.2 wru_0.1-10 rnaturalearth_0.1.0 -## [4] lubridate_1.7.9.2 caret_6.0-86 lattice_0.20-41 -## [7] forcats_0.5.0 stringr_1.4.0 dplyr_1.0.2 -## [10] purrr_0.3.4 readr_1.4.0 tidyr_1.1.2 -## [13] tibble_3.0.4 ggplot2_3.3.2 tidyverse_1.3.0 +## [1] broom_0.7.2 DT_0.16 epitools_0.5-10.1 +## [4] gdtools_0.2.2 wru_0.1-10 rnaturalearth_0.1.0 +## [7] lubridate_1.7.9.2 caret_6.0-86 lattice_0.20-41 +## [10] forcats_0.5.0 stringr_1.4.0 dplyr_1.0.2 +## [13] purrr_0.3.4 readr_1.4.0 tidyr_1.1.2 +## [16] tibble_3.0.4 ggplot2_3.3.2 tidyverse_1.3.0 ## ## loaded via a namespace (and not attached): -## [1] colorspace_2.0-0 ellipsis_0.3.1 class_7.3-17 -## [4] rprojroot_1.3-2 fs_1.5.0 rstudioapi_0.12 -## [7] farver_2.0.3 remotes_2.2.0 DT_0.16 -## [10] prodlim_2019.11.13 fansi_0.4.1 xml2_1.3.2 -## [13] codetools_0.2-16 splines_4.0.3 knitr_1.30 -## [16] pkgload_1.1.0 jsonlite_1.7.1 pROC_1.16.2 -## [19] broom_0.7.2 dbplyr_2.0.0 rgeos_0.5-5 -## [22] compiler_4.0.3 httr_1.4.2 backports_1.2.0 -## [25] assertthat_0.2.1 Matrix_1.2-18 cli_2.1.0 -## [28] htmltools_0.5.0 prettyunits_1.1.1 tools_4.0.3 -## [31] gtable_0.3.0 glue_1.4.2 rnaturalearthdata_0.1.0 -## [34] reshape2_1.4.4 Rcpp_1.0.5 cellranger_1.1.0 -## [37] vctrs_0.3.4 svglite_1.2.3.2 nlme_3.1-149 -## [40] iterators_1.0.13 crosstalk_1.1.0.1 timeDate_3043.102 -## [43] gower_0.2.2 xfun_0.19 ps_1.4.0 -## [46] testthat_3.0.0 rvest_0.3.6 lifecycle_0.2.0 -## [49] devtools_2.3.2 MASS_7.3-53 scales_1.1.1 -## [52] ipred_0.9-9 hms_0.5.3 RColorBrewer_1.1-2 -## [55] yaml_2.2.1 curl_4.3 memoise_1.1.0 -## [58] rpart_4.1-15 stringi_1.5.3 desc_1.2.0 -## [61] foreach_1.5.1 e1071_1.7-4 pkgbuild_1.1.0 -## [64] lava_1.6.8.1 systemfonts_0.3.2 rlang_0.4.8 -## [67] pkgconfig_2.0.3 evaluate_0.14 sf_0.9-6 -## [70] recipes_0.1.15 htmlwidgets_1.5.2 labeling_0.4.2 -## [73] cowplot_1.1.0 tidyselect_1.1.0 processx_3.4.4 -## [76] plyr_1.8.6 magrittr_1.5 R6_2.5.0 -## [79] generics_0.1.0 DBI_1.1.0 mgcv_1.8-33 -## [82] pillar_1.4.6 haven_2.3.1 withr_2.3.0 -## [85] units_0.6-7 survival_3.2-7 sp_1.4-4 -## [88] nnet_7.3-14 modelr_0.1.8 crayon_1.3.4 -## [91] KernSmooth_2.23-17 utf8_1.1.4 rmarkdown_2.5 -## [94] usethis_1.6.3 grid_4.0.3 readxl_1.3.1 -## [97] data.table_1.13.2 callr_3.5.1 ModelMetrics_1.2.2.2 -## [100] reprex_0.3.0 digest_0.6.27 classInt_0.4-3 -## [103] stats4_4.0.3 munsell_0.5.0 viridisLite_0.3.0 -## [106] sessioninfo_1.1.1
+## [1] colorspace_2.0-0 ellipsis_0.3.1 +## [3] class_7.3-17 rprojroot_1.3-2 +## [5] fs_1.5.0 rstudioapi_0.12 +## [7] farver_2.0.3 remotes_2.2.0 +## [9] prodlim_2019.11.13 fansi_0.4.1 +## [11] xml2_1.3.2 codetools_0.2-16 +## [13] splines_4.0.3 knitr_1.30 +## [15] pkgload_1.1.0 jsonlite_1.7.1 +## [17] pROC_1.16.2 dbplyr_2.0.0 +## [19] rgeos_0.5-5 compiler_4.0.3 +## [21] httr_1.4.2 backports_1.2.0 +## [23] assertthat_0.2.1 Matrix_1.2-18 +## [25] cli_2.1.0 htmltools_0.5.0 +## [27] prettyunits_1.1.1 tools_4.0.3 +## [29] gtable_0.3.0 glue_1.4.2 +## [31] rnaturalearthdata_0.1.0 reshape2_1.4.4 +## [33] Rcpp_1.0.5 cellranger_1.1.0 +## [35] vctrs_0.3.4 svglite_1.2.3.2 +## [37] nlme_3.1-149 iterators_1.0.13 +## [39] crosstalk_1.1.0.1 timeDate_3043.102 +## [41] gower_0.2.2 xfun_0.19 +## [43] ps_1.4.0 testthat_3.0.0 +## [45] rvest_0.3.6 lifecycle_0.2.0 +## [47] devtools_2.3.2 MASS_7.3-53 +## [49] scales_1.1.1 ipred_0.9-9 +## [51] hms_0.5.3 RColorBrewer_1.1-2 +## [53] yaml_2.2.1 curl_4.3 +## [55] memoise_1.1.0 rpart_4.1-15 +## [57] stringi_1.5.3 desc_1.2.0 +## [59] foreach_1.5.1 e1071_1.7-4 +## [61] pkgbuild_1.1.0 lava_1.6.8.1 +## [63] systemfonts_0.3.2 rlang_0.4.8 +## [65] pkgconfig_2.0.3 evaluate_0.14 +## [67] sf_0.9-6 recipes_0.1.15 +## [69] htmlwidgets_1.5.2 labeling_0.4.2 +## [71] cowplot_1.1.0 tidyselect_1.1.0 +## [73] processx_3.4.4 plyr_1.8.6 +## [75] magrittr_1.5 R6_2.5.0 +## [77] generics_0.1.0 DBI_1.1.0 +## [79] mgcv_1.8-33 pillar_1.4.6 +## [81] haven_2.3.1 withr_2.3.0 +## [83] units_0.6-7 survival_3.2-7 +## [85] sp_1.4-4 nnet_7.3-14 +## [87] modelr_0.1.8 crayon_1.3.4 +## [89] KernSmooth_2.23-17 utf8_1.1.4 +## [91] rmarkdown_2.5 usethis_1.6.3 +## [93] grid_4.0.3 readxl_1.3.1 +## [95] data.table_1.13.2 callr_3.5.1 +## [97] ModelMetrics_1.2.2.2 reprex_0.3.0 +## [99] digest_0.6.27 classInt_0.4-3 +## [101] stats4_4.0.3 munsell_0.5.0 +## [103] viridisLite_0.3.0 sessioninfo_1.1.1
-
LS0tCnRpdGxlOiAiUmVwcmVzZW50YXRpb24gYW5hbHlzaXMgb2YgZ2VuZGVyIgotLS0KCiMjIFNldHVwcwoKYGBge3IgbWVzc2FnZSA9IEYsIHdhcm5pbmc9Rn0KbGlicmFyeSh0aWR5dmVyc2UpCmxpYnJhcnkobHVicmlkYXRlKQpsaWJyYXJ5KHJuYXR1cmFsZWFydGgpCmxpYnJhcnkod3J1KQpzb3VyY2UoInV0aWxzL3ItdXRpbHMuUiIpCnRoZW1lX3NldCh0aGVtZV9idygpICsgdGhlbWUobGVnZW5kLnRpdGxlID0gZWxlbWVudF9ibGFuaygpKSkKYGBgCgojIyBMb2FkIGRhdGEKCk9ubHkga2VlcCBhcnRpY2xlcyBmcm9tIDIwMDIgYmVjYXVzZSBmZXcgYXV0aG9ycyBoYWQgZ2VuZGVyIHByZWRpY3Rpb25zIGJlZm9yZSAyMDAyLgpTZWUgWzA5My5zdW1tYXJ5LXN0YXRzXShkb2NzLzA5My5zdW1tYXJ5LXN0YXRzLmh0bWwpIGZvciBtb3JlIGRldGFpbHMuCgpgYGB7cn0KbG9hZCgiUmRhdGEvcmF3cy5SZGF0YSIpCgphbHBoYV90aHJlc2hvbGQgPC0gcW5vcm0oMC45NzUpCmdlbmRlcl9kZiA8LSByZWFkX3RzdigiZGF0YS9nZW5kZXIvZ2VuZGVyaXplLnRzdiIpCgpwdWJtZWRfZ2VuZGVyX2RmIDwtIGNvcnJfYXV0aG9ycyAlPiUKICBmaWx0ZXIoeWVhcih5ZWFyKSA+PSAyMDAyKSAlPiUKICBsZWZ0X2pvaW4oZ2VuZGVyX2RmLCBieSA9ICJmb3JlX25hbWVfc2ltcGxlIikKCmlzY2JfZ2VuZGVyX2RmIDwtIGtleW5vdGVzICU+JQogIGxlZnRfam9pbihnZW5kZXJfZGYsIGJ5ID0gImZvcmVfbmFtZV9zaW1wbGUiKQoKc3RhcnRfeWVhciA8LSAxOTkzCmVuZF95ZWFyIDwtIDIwMTkKbl95ZWFycyA8LSBlbmRfeWVhciAtIHN0YXJ0X3llYXIKbXlfam91cnMgPC0gdW5pcXVlKHB1Ym1lZF9nZW5kZXJfZGYkam91cm5hbCkKbXlfY29uZnMgPC0gdW5pcXVlKGlzY2JfZ2VuZGVyX2RmJGNvbmZlcmVuY2UpCm5fam91cnMgPC0gbGVuZ3RoKG15X2pvdXJzKQpuX2NvbmZzIDwtIGxlbmd0aChteV9jb25mcykKYGBgCgojIyBQcmVwYXJlIGRhdGEgZnJhbWVzIGZvciBsYXRlciBhbmFseXNlcwoKLSByYmluZCByZXN1bHRzIG9mIHJhY2UgcHJlZGljdGlvbnMgaW4gaXNjYiBhbmQgUHVibWVkCi0gcGl2b3QgbG9uZwotIGNvbXB1dGUgbWVhbiwgc2QsIG1hcmdpbmFsIGVycm9yCgpgYGB7cn0KaXNjYl9wdWJtZWQgPC0gaXNjYl9nZW5kZXJfZGYgJT4lCiAgcmVuYW1lKCJqb3VybmFsIiA9IGNvbmZlcmVuY2UpICU+JQogIHNlbGVjdCh5ZWFyLCBqb3VybmFsLCBwcm9iYWJpbGl0eV9tYWxlLCBwdWJsaWNhdGlvbl9kYXRlKSAlPiUKICBtdXRhdGUoCiAgICB0eXBlID0gIktleW5vdGUgc3BlYWtlcnMvRmVsbG93cyIsCiAgICBhZGp1c3RlZF9jaXRhdGlvbnMgPSAxCiAgKSAlPiUKICBiaW5kX3Jvd3MoCiAgICBwdWJtZWRfZ2VuZGVyX2RmICU+JQogICAgICBzZWxlY3QoeWVhciwgam91cm5hbCwgcHJvYmFiaWxpdHlfbWFsZSwgcHVibGljYXRpb25fZGF0ZSwgYWRqdXN0ZWRfY2l0YXRpb25zKSAlPiUKICAgICAgbXV0YXRlKHR5cGUgPSAiUHVibWVkIGF1dGhvcnMiKQogICkgJT4lCiAgbXV0YXRlKHByb2JhYmlsaXR5X2ZlbWFsZSA9IDEgLSBwcm9iYWJpbGl0eV9tYWxlKSAlPiUKICBwaXZvdF9sb25nZXIoY29udGFpbnMoInByb2JhYmlsaXR5IiksCiAgICBuYW1lc190byA9ICJnZW5kZXIiLAogICAgdmFsdWVzX3RvID0gInByb2JhYmlsaXRpZXMiCiAgKSAlPiUKICBmaWx0ZXIoIWlzLm5hKHByb2JhYmlsaXRpZXMpKSAlPiUKICBncm91cF9ieSh0eXBlLCB5ZWFyLCBnZW5kZXIpICU+JQogIG11dGF0ZSgKICAgIHBtY19jaXRhdGlvbnNfeWVhciA9IG1lYW4oYWRqdXN0ZWRfY2l0YXRpb25zKSwKICAgIHdlaWdodCA9IGFkanVzdGVkX2NpdGF0aW9ucyAvIHBtY19jaXRhdGlvbnNfeWVhciwKICAgIHdlaWdodGVkX3Byb2JzID0gcHJvYmFiaWxpdGllcyAqIHdlaWdodAogICAgIyB3ZWlnaHQgPSAxCiAgKQoKaXNjYl9wdWJtZWRfc3VtIDwtIGlzY2JfcHVibWVkICU+JQogIHN1bW1hcmlzZSgKICAgICMgbiA9IG4oKSwKICAgIG1lYW5fcHJvYiA9IG1lYW4od2VpZ2h0ZWRfcHJvYnMpLAogICAgIyBtZWFuX3Byb2IgPSBtZWFuKHByb2JhYmlsaXRpZXMsIG5hLnJtID0gVCksCiAgICAjIHNkX3Byb2IgPSBzZChwcm9iYWJpbGl0aWVzLCBuYS5ybSA9IFQpLAogICAgc2VfcHJvYiA9IHNxcnQodmFyKHByb2JhYmlsaXRpZXMpICogc3VtKHdlaWdodF4yKSAvIChzdW0od2VpZ2h0KV4yKSksCiAgICAjIG4gPSBtZWFuKG4pLAogICAgbWVfcHJvYiA9IGFscGhhX3RocmVzaG9sZCAqIHNlX3Byb2IsCiAgICAuZ3JvdXBzID0gImRyb3AiCiAgKQojIGh0dHBzOi8vc3RhdHMuc3RhY2tleGNoYW5nZS5jb20vcXVlc3Rpb25zLzI1ODk1L2NvbXB1dGluZy1zdGFuZGFyZC1lcnJvci1pbi13ZWlnaHRlZC1tZWFuLWVzdGltYXRpb24KYGBgCgoKYGBge3J9CiMgc2F2ZShpc2NiX3B1Ym1lZCwgZmlsZSA9ICdSZGF0YS9pc2NiLXB1Ym1lZF9nZW5kZXIuUmRhdGEnKQpgYGAKCgojIyBGaWd1cmVzIGZvciBwYXBlcgoKIyMjIEZpZ3VyZSAyOiBJU0NCIEZlbGxvd3MgYW5kIGtleW5vdGUgc3BlYWtlcnMgYXBwZWFyIG1vcmUgZXZlbmx5IHNwbGl0IGJldHdlZW4gbWVuIGFuZCB3b21lbiB0aGFuIFB1Yk1lZCBhdXRob3JzLCBidXQgdGhlIHByb3BvcnRpb24gaGFzIG5vdCByZWFjaGVkIHBhcml0eS4KCmBgYHtyIGZpZy5oZWlnaHQ9M30KZmlnXzEgPC0gaXNjYl9wdWJtZWRfc3VtICU+JQogICMgZ3JvdXBfYnkoeWVhciwgdHlwZSwgZ2VuZGVyKSAlPiUKICBnZW5kZXJfYnJlYWtkb3duKCJtYWluIiwgZmN0X3Jldih0eXBlKSkKZmlnXzEKZ2dzYXZlKCJmaWdzL2dlbmRlcl9icmVha2Rvd24ucG5nIiwgZmlnXzEsIHdpZHRoID0gNSwgaGVpZ2h0ID0gMi41KQpnZ3NhdmUoImZpZ3MvZ2VuZGVyX2JyZWFrZG93bi5zdmciLCBmaWdfMSwgd2lkdGggPSA1LCBoZWlnaHQgPSAyLjUpCmBgYAoKYGBge3IgZWNobz1GQUxTRX0KaXNjYl9wdWJtZWRfc3VtICU+JQogICMgZ3JvdXBfYnkoeWVhciwgdHlwZSwgZ2VuZGVyKSAlPiUKICAjIHN1bW1hcmlzZShtZWFuX3Byb2IgPSBtZWFuKHByb2JhYmlsaXRpZXMsIG5hLnJtID0gVCksIC5ncm91cHMgPSAnZHJvcCcpICU+JQogIGZpbHRlcih5ZWFyKHllYXIpID4gMjAxNiwgZ3JlcGwoImZlbWFsZSIsIGdlbmRlcikpICU+JQogIGdyb3VwX2J5KHR5cGUpICU+JQogIHN1bW1hcmlzZShwcm9iX2ZlbWFsZV9hdmcgPSBtZWFuKG1lYW5fcHJvYikpCmBgYAoKIyMjIFN1cHBsZW1lbnRhcnkgRmlndXJlIFMyIHsjc3VwX2ZpZ19zMX0KCkFkZGl0aW9uYWwgZmlnLiAxIHdpdGggc2VwYXJhdGVkIGtleW5vdGUgc3BlYWtlcnMgYW5kIGZlbGxvd3MKCmBgYHtyfQpmaWdfMWQgPC0gaXNjYl9wdWJtZWQgJT4lCiAgdW5ncm91cCgpICU+JQogIG11dGF0ZSgKICAgIHR5cGUyID0gY2FzZV93aGVuKAogICAgICB0eXBlID09ICJQdWJtZWQgYXV0aG9ycyIgfiAiUHVibWVkIGF1dGhvcnMiLAogICAgICBqb3VybmFsID09ICJJU0NCIEZlbGxvdyIgfiAiSVNDQiBGZWxsb3dzIiwKICAgICAgdHlwZSA9PSAiS2V5bm90ZSBzcGVha2Vycy9GZWxsb3dzIiB+ICJLZXlub3RlIHNwZWFrZXJzIgogICAgKQogICkgJT4lCiAgZ3JvdXBfYnkodHlwZTIsIHllYXIsIGdlbmRlcikgJT4lCiAgc3VtbWFyaXNlKAogICAgbWVhbl9wcm9iID0gbWVhbih3ZWlnaHRlZF9wcm9icyksCiAgICBzZV9wcm9iID0gc3FydCh2YXIocHJvYmFiaWxpdGllcykgKiBzdW0od2VpZ2h0XjIpIC8gKHN1bSh3ZWlnaHQpXjIpKSwKICAgIG1lX3Byb2IgPSBhbHBoYV90aHJlc2hvbGQgKiBzZV9wcm9iLAogICAgLmdyb3VwcyA9ICJkcm9wIgogICkgJT4lCiAgZ2VuZGVyX2JyZWFrZG93bigibWFpbiIsIGZjdF9yZXYodHlwZTIpKSArCiAgc2NhbGVfeF9kYXRlKAogICAgbGFiZWxzID0gc2NhbGVzOjpkYXRlX2Zvcm1hdCgiJyV5IiksCiAgICBleHBhbmQgPSBjKDAsIDApCiAgKQpgYGAKCjwhLS0gSW5jcmVhc2luZyB0cmVuZCBvZiBob25vcmVlcyB3aG8gd2VyZSB3b21lbiBpbiBlYWNoIGhvbm9yIGNhdGVnb3J5LCBlc3BlY2lhbGx5IGluIHRoZSBncm91cCBvZiBJU0NCIEZlbGxvd3MsIHdoaWNoIG1hcmtlZGx5IGluY3JlYXNlZCBhZnRlciAyMDE1LiAgLS0+CgpgYGB7ciBldmFsPUZBTFNFLCBpbmNsdWRlPUZBTFNFfQojIEJ5IGNvbmZlcmVuY2U6CiMgZmlnXzFkIDwtIGJpbmRfcm93cyhpc2NiX2dlbmRlcikgJT4lCiMgICBnZW5kZXJfYnJlYWtkb3duKGNhdGVnb3J5ID0gJ3N1YicsIGpvdXJuYWwpICsKIyAgIHRoZW1lKGxlZ2VuZC5wb3NpdGlvbiA9ICdib3R0b20nKQoKIyBmaWdfMWQKZ2dzYXZlKCJmaWdzL2ZpZ19zMS5wbmciLCBmaWdfMWQsIHdpZHRoID0gNywgaGVpZ2h0ID0gMykKZ2dzYXZlKCJmaWdzL2ZpZ19zMS5zdmciLCBmaWdfMWQsIHdpZHRoID0gNywgaGVpZ2h0ID0gMykKYGBgCgojIyBNZWFuIGFuZCBzdGFuZGFyZCBkZXZpYXRpb24gb2YgcHJlZGljdGVkIHByb2JhYmlsaXRpZXMKCmBgYHtyfQppc2NiX3B1Ym1lZF9zdW0gJT4lCiAgZmlsdGVyKGdlbmRlciA9PSAicHJvYmFiaWxpdHlfbWFsZSIpICU+JQogIGdhbV9hbmRfY2koCiAgICBkZjIgPSBpc2NiX3B1Ym1lZCAlPiUgZmlsdGVyKGdlbmRlciA9PSAicHJvYmFiaWxpdHlfbWFsZSIpLAogICAgc3RhcnRfeSA9IHN0YXJ0X3llYXIsIGVuZF95ID0gZW5kX3llYXIKICApICsKICB0aGVtZShsZWdlbmQucG9zaXRpb24gPSBjKDAuODgsIDAuMikpCmBgYAoKIyMgSHlwb3RoZXNpcyB0ZXN0aW5nCgpgYGB7ciBlY2hvID0gRn0KZ2V0X3AgPC0gZnVuY3Rpb24oaW50ZSwgY29sdSkgewogIGJyb29tOjp0aWR5KGludGUpICU+JQogICAgZmlsdGVyKHRlcm0gPT0gIndlaWdodGVkX3Byb2JzIikgJT4lCiAgICBwdWxsKGNvbHUpICU+JQogICAgc3ByaW50ZigiJTAuNWciLCAuKQp9CmBgYAoKYGBge3J9CmlzY2JfbG0gPC0gaXNjYl9wdWJtZWQgJT4lCiAgZmlsdGVyKGdlbmRlciA9PSAicHJvYmFiaWxpdHlfZmVtYWxlIiwgIWlzLm5hKHdlaWdodGVkX3Byb2JzKSkgJT4lCiAgbXV0YXRlKHR5cGUgPSBhcy5mYWN0b3IodHlwZSkpICU+JSAKICBtdXRhdGUodHlwZSA9IHR5cGUgJT4lIHJlbGV2ZWwocmVmID0gIlB1Ym1lZCBhdXRob3JzIikpCmBgYAoKYGBge3J9CnNjYWxlZF9pc2NiIDwtIGlzY2JfbG0gJT4lCiAgZmlsdGVyKHllYXIoeWVhcikgPj0gMjAwMikKIyBzY2FsZWRfaXNjYiRzX3Byb2IgPC0gc2NhbGUoc2NhbGVkX2lzY2Ikd2VpZ2h0ZWRfcHJvYnMsIHNjYWxlID0gRikKIyBzY2FsZWRfaXNjYiRzX3llYXIgPC0gc2NhbGUoc2NhbGVkX2lzY2IkeWVhciwgc2NhbGUgPSBGKQoKbWFpbl9sbSA8LSBnbG0odHlwZSB+IHllYXIgKyB3ZWlnaHRlZF9wcm9icywKICBkYXRhID0gc2NhbGVkX2lzY2IsICMgJT4lIG11dGF0ZSh5ZWFyID0gYXMuZmFjdG9yKHllYXIpKQogIGZhbWlseSA9ICJiaW5vbWlhbCIKKQoKYnJvb206OnRpZHkobWFpbl9sbSkKaW50ZV9sbSA8LSBnbG0oCiAgIyB0eXBlIH4gc2NhbGUoeWVhciwgc2NhbGUgPSBGKSAqIHNjYWxlKHdlaWdodGVkX3Byb2JzLCBzY2FsZSA9IEYpLAogICMgdHlwZSB+IHNfeWVhciAqIHNfcHJvYiwKICB0eXBlIH4geWVhciAqIHdlaWdodGVkX3Byb2JzLAogIGRhdGEgPSBzY2FsZWRfaXNjYiwgIyAlPiUgbXV0YXRlKHllYXIgPSBhcy5mYWN0b3IoeWVhcikpCiAgZmFtaWx5ID0gImJpbm9taWFsIgopCmJyb29tOjp0aWR5KGludGVfbG0pCmFub3ZhKG1haW5fbG0sIGludGVfbG0sIHRlc3QgPSAiQ2hpc3EiKQojIG1lYW4oc2NhbGVkX2lzY2IkeWVhcikKIyBtZWFuKHNjYWxlZF9pc2NiJHdlaWdodGVkX3Byb2JzKQpgYGAKClRoZSB0d28gZ3JvdXBzIG9mIHNjaWVudGlzdHMgZGlkIG5vdCBoYXZlIGEgc2lnbmlmaWNhbnQgYXNzb2NpYXRpb24gd2l0aCB0aGUgZ2VuZGVyIHByZWRpY3RlZCBmcm9tIGZvcmUgbmFtZXMgKF9QXyA9IGByIGdldF9wKG1haW5fbG0sICdwLnZhbHVlJylgKS4KSW50ZXJhY3Rpb24gdGVybXMgZG8gbm90IHByZWRpY3QgYHR5cGVgIG92ZXIgYW5kIGFib3ZlIHRoZSBtYWluIGVmZmVjdCBvZiBnZW5kZXIgcHJvYmFiaWxpdHkgYW5kIHllYXIuCgpgYGB7ciBpbmNsdWRlPUZBTFNFLCBldmFsPUZBTFNFfQojIGludGVfbG0gPC0gZ2xtKHR5cGUgfiAoeWVhciAqIHdlaWdodGVkX3Byb2JzKSwKIyAgICBkYXRhID0gaXNjYl9sbSwKIyAgICBmYW1pbHkgPSAnYmlub21pYWwnKQpgYGAKCmBgYHtyfQpzZXNzaW9uSW5mbygpCmBgYAo=
+
LS0tCnRpdGxlOiAiUmVwcmVzZW50YXRpb24gYW5hbHlzaXMgb2YgZ2VuZGVyIgotLS0KCiMjIFNldHVwcwoKYGBge3IgbWVzc2FnZSA9IEYsIHdhcm5pbmc9Rn0KbGlicmFyeSh0aWR5dmVyc2UpCmxpYnJhcnkobHVicmlkYXRlKQpsaWJyYXJ5KHJuYXR1cmFsZWFydGgpCmxpYnJhcnkod3J1KQpzb3VyY2UoInV0aWxzL3ItdXRpbHMuUiIpCnRoZW1lX3NldCh0aGVtZV9idygpICsgdGhlbWUobGVnZW5kLnRpdGxlID0gZWxlbWVudF9ibGFuaygpKSkKYGBgCgojIyBMb2FkIGRhdGEKCk9ubHkga2VlcCBhcnRpY2xlcyBmcm9tIDIwMDIgYmVjYXVzZSBmZXcgYXV0aG9ycyBoYWQgZ2VuZGVyIHByZWRpY3Rpb25zIGJlZm9yZSAyMDAyLgpTZWUgWzA5My5zdW1tYXJ5LXN0YXRzXShkb2NzLzA5My5zdW1tYXJ5LXN0YXRzLmh0bWwpIGZvciBtb3JlIGRldGFpbHMuCgpgYGB7cn0KbG9hZCgiUmRhdGEvcmF3cy5SZGF0YSIpCgphbHBoYV90aHJlc2hvbGQgPC0gcW5vcm0oMC45NzUpCmdlbmRlcl9kZiA8LSByZWFkX3RzdigiZGF0YS9nZW5kZXIvZ2VuZGVyaXplLnRzdiIpCgpwdWJtZWRfZ2VuZGVyX2RmIDwtIGNvcnJfYXV0aG9ycyAlPiUKICBmaWx0ZXIoeWVhcih5ZWFyKSA+PSAyMDAyKSAlPiUKICBsZWZ0X2pvaW4oZ2VuZGVyX2RmLCBieSA9ICJmb3JlX25hbWVfc2ltcGxlIikKCmlzY2JfZ2VuZGVyX2RmIDwtIGtleW5vdGVzICU+JQogIGxlZnRfam9pbihnZW5kZXJfZGYsIGJ5ID0gImZvcmVfbmFtZV9zaW1wbGUiKQoKc3RhcnRfeWVhciA8LSAxOTkzCmVuZF95ZWFyIDwtIDIwMTkKbl95ZWFycyA8LSBlbmRfeWVhciAtIHN0YXJ0X3llYXIKbXlfam91cnMgPC0gdW5pcXVlKHB1Ym1lZF9nZW5kZXJfZGYkam91cm5hbCkKbXlfY29uZnMgPC0gdW5pcXVlKGlzY2JfZ2VuZGVyX2RmJGNvbmZlcmVuY2UpCm5fam91cnMgPC0gbGVuZ3RoKG15X2pvdXJzKQpuX2NvbmZzIDwtIGxlbmd0aChteV9jb25mcykKYGBgCgojIyBQcmVwYXJlIGRhdGEgZnJhbWVzIGZvciBsYXRlciBhbmFseXNlcwoKLSByYmluZCByZXN1bHRzIG9mIHJhY2UgcHJlZGljdGlvbnMgaW4gaXNjYiBhbmQgUHVibWVkCi0gcGl2b3QgbG9uZwotIGNvbXB1dGUgbWVhbiwgc2QsIG1hcmdpbmFsIGVycm9yCgpgYGB7cn0KaXNjYl9wdWJtZWQgPC0gaXNjYl9nZW5kZXJfZGYgJT4lCiAgcmVuYW1lKCJqb3VybmFsIiA9IGNvbmZlcmVuY2UpICU+JQogIHNlbGVjdCh5ZWFyLCBqb3VybmFsLCBwcm9iYWJpbGl0eV9tYWxlLCBwdWJsaWNhdGlvbl9kYXRlKSAlPiUKICBtdXRhdGUoCiAgICB0eXBlID0gIktleW5vdGUgc3BlYWtlcnMvRmVsbG93cyIsCiAgICBhZGp1c3RlZF9jaXRhdGlvbnMgPSAxCiAgKSAlPiUKICBiaW5kX3Jvd3MoCiAgICBwdWJtZWRfZ2VuZGVyX2RmICU+JQogICAgICBzZWxlY3QoeWVhciwgam91cm5hbCwgcHJvYmFiaWxpdHlfbWFsZSwgcHVibGljYXRpb25fZGF0ZSwgYWRqdXN0ZWRfY2l0YXRpb25zKSAlPiUKICAgICAgbXV0YXRlKHR5cGUgPSAiUHVibWVkIGF1dGhvcnMiKQogICkgJT4lCiAgbXV0YXRlKHByb2JhYmlsaXR5X2ZlbWFsZSA9IDEgLSBwcm9iYWJpbGl0eV9tYWxlKSAlPiUKICBwaXZvdF9sb25nZXIoY29udGFpbnMoInByb2JhYmlsaXR5IiksCiAgICBuYW1lc190byA9ICJnZW5kZXIiLAogICAgdmFsdWVzX3RvID0gInByb2JhYmlsaXRpZXMiCiAgKSAlPiUKICBmaWx0ZXIoIWlzLm5hKHByb2JhYmlsaXRpZXMpKSAlPiUKICBncm91cF9ieSh0eXBlLCB5ZWFyLCBnZW5kZXIpIAoKaXNjYl9wdWJtZWRfc3VtIDwtIGlzY2JfcHVibWVkICU+JQogIHN1bW1hcmlzZSgKICAgICMgbiA9IG4oKSwKICAgIG1lYW5fcHJvYiA9IG1lYW4ocHJvYmFiaWxpdGllcywgbmEucm0gPSBUKSwKICAgIHNlX3Byb2IgPSBzZChwcm9iYWJpbGl0aWVzLCBuYS5ybSA9IFQpLAogICAgIyBuID0gbWVhbihuKSwKICAgIG1lX3Byb2IgPSBhbHBoYV90aHJlc2hvbGQgKiBzZV9wcm9iLAogICAgLmdyb3VwcyA9ICJkcm9wIgogICkKIyBodHRwczovL3N0YXRzLnN0YWNrZXhjaGFuZ2UuY29tL3F1ZXN0aW9ucy8yNTg5NS9jb21wdXRpbmctc3RhbmRhcmQtZXJyb3ItaW4td2VpZ2h0ZWQtbWVhbi1lc3RpbWF0aW9uCmBgYAoKCmBgYHtyfQojIHNhdmUoaXNjYl9wdWJtZWQsIGZpbGUgPSAnUmRhdGEvaXNjYi1wdWJtZWRfZ2VuZGVyLlJkYXRhJykKYGBgCgoKIyMgRmlndXJlcyBmb3IgcGFwZXIKCiMjIyBGaWd1cmUgMjogSVNDQiBGZWxsb3dzIGFuZCBrZXlub3RlIHNwZWFrZXJzIGFwcGVhciBtb3JlIGV2ZW5seSBzcGxpdCBiZXR3ZWVuIG1lbiBhbmQgd29tZW4gdGhhbiBQdWJNZWQgYXV0aG9ycywgYnV0IHRoZSBwcm9wb3J0aW9uIGhhcyBub3QgcmVhY2hlZCBwYXJpdHkuCgpgYGB7ciBmaWcuaGVpZ2h0PTN9CmZpZ18xIDwtIGlzY2JfcHVibWVkX3N1bSAlPiUKICAjIGdyb3VwX2J5KHllYXIsIHR5cGUsIGdlbmRlcikgJT4lCiAgZ2VuZGVyX2JyZWFrZG93bigibWFpbiIsIGZjdF9yZXYodHlwZSkpCmZpZ18xCmdnc2F2ZSgiZmlncy9nZW5kZXJfYnJlYWtkb3duLnBuZyIsIGZpZ18xLCB3aWR0aCA9IDUsIGhlaWdodCA9IDIuNSwgZHBpID0gNjAwKQpnZ3NhdmUoImZpZ3MvZ2VuZGVyX2JyZWFrZG93bi5zdmciLCBmaWdfMSwgd2lkdGggPSA1LCBoZWlnaHQgPSAyLjUpCmBgYAoKYGBge3IgZWNobz1GQUxTRX0KaXNjYl9wdWJtZWRfc3VtICU+JQogICMgZ3JvdXBfYnkoeWVhciwgdHlwZSwgZ2VuZGVyKSAlPiUKICAjIHN1bW1hcmlzZShtZWFuX3Byb2IgPSBtZWFuKHByb2JhYmlsaXRpZXMsIG5hLnJtID0gVCksIC5ncm91cHMgPSAnZHJvcCcpICU+JQogIGZpbHRlcih5ZWFyKHllYXIpID4gMjAxNiwgZ3JlcGwoImZlbWFsZSIsIGdlbmRlcikpICU+JQogIGdyb3VwX2J5KHR5cGUpICU+JQogIHN1bW1hcmlzZShwcm9iX2ZlbWFsZV9hdmcgPSBtZWFuKG1lYW5fcHJvYikpCmBgYAoKIyMjIFN1cHBsZW1lbnRhcnkgRmlndXJlIFMyIHsjc3VwX2ZpZ19zMX0KCkFkZGl0aW9uYWwgZmlnLiAxIHdpdGggc2VwYXJhdGVkIGtleW5vdGUgc3BlYWtlcnMgYW5kIGZlbGxvd3MKCmBgYHtyfQpmaWdfMWQgPC0gaXNjYl9wdWJtZWQgJT4lCiAgdW5ncm91cCgpICU+JQogIG11dGF0ZSgKICAgIHR5cGUyID0gY2FzZV93aGVuKAogICAgICB0eXBlID09ICJQdWJtZWQgYXV0aG9ycyIgfiAiUHVibWVkIGF1dGhvcnMiLAogICAgICBqb3VybmFsID09ICJJU0NCIEZlbGxvdyIgfiAiSVNDQiBGZWxsb3dzIiwKICAgICAgdHlwZSA9PSAiS2V5bm90ZSBzcGVha2Vycy9GZWxsb3dzIiB+ICJLZXlub3RlIHNwZWFrZXJzIgogICAgKQogICkgJT4lCiAgZ3JvdXBfYnkodHlwZTIsIHllYXIsIGdlbmRlcikgJT4lCiAgc3VtbWFyaXNlKAogICAgbWVhbl9wcm9iID0gbWVhbihwcm9iYWJpbGl0aWVzKSwKICAgIHNlX3Byb2IgPSBzZChwcm9iYWJpbGl0aWVzKS9zcXJ0KG4oKSksCiAgICBtZV9wcm9iID0gYWxwaGFfdGhyZXNob2xkICogc2VfcHJvYiwKICAgIC5ncm91cHMgPSAiZHJvcCIKICApICU+JQogIGdlbmRlcl9icmVha2Rvd24oIm1haW4iLCBmY3RfcmV2KHR5cGUyKSkgKwogIHNjYWxlX3hfZGF0ZSgKICAgIGxhYmVscyA9IHNjYWxlczo6ZGF0ZV9mb3JtYXQoIicleSIpLAogICAgZXhwYW5kID0gYygwLCAwKQogICkKYGBgCgo8IS0tIEluY3JlYXNpbmcgdHJlbmQgb2YgaG9ub3JlZXMgd2hvIHdlcmUgd29tZW4gaW4gZWFjaCBob25vciBjYXRlZ29yeSwgZXNwZWNpYWxseSBpbiB0aGUgZ3JvdXAgb2YgSVNDQiBGZWxsb3dzLCB3aGljaCBtYXJrZWRseSBpbmNyZWFzZWQgYWZ0ZXIgMjAxNS4gIC0tPgoKYGBge3IgZXZhbD1GQUxTRSwgaW5jbHVkZT1GQUxTRX0KIyBCeSBjb25mZXJlbmNlOgojIGZpZ18xZCA8LSBiaW5kX3Jvd3MoaXNjYl9nZW5kZXIpICU+JQojICAgZ2VuZGVyX2JyZWFrZG93bihjYXRlZ29yeSA9ICdzdWInLCBqb3VybmFsKSArCiMgICB0aGVtZShsZWdlbmQucG9zaXRpb24gPSAnYm90dG9tJykKCiMgZmlnXzFkCmdnc2F2ZSgiZmlncy9maWdfczEucG5nIiwgZmlnXzFkLCB3aWR0aCA9IDcsIGhlaWdodCA9IDMpCmdnc2F2ZSgiZmlncy9maWdfczEuc3ZnIiwgZmlnXzFkLCB3aWR0aCA9IDcsIGhlaWdodCA9IDMpCmBgYAoKIyMgTWVhbiBhbmQgc3RhbmRhcmQgZGV2aWF0aW9uIG9mIHByZWRpY3RlZCBwcm9iYWJpbGl0aWVzCgpgYGB7cn0KaXNjYl9wdWJtZWRfc3VtICU+JQogIGZpbHRlcihnZW5kZXIgPT0gInByb2JhYmlsaXR5X21hbGUiKSAlPiUKICBnYW1fYW5kX2NpKAogICAgZGYyID0gaXNjYl9wdWJtZWQgJT4lIGZpbHRlcihnZW5kZXIgPT0gInByb2JhYmlsaXR5X21hbGUiKSwKICAgIHN0YXJ0X3kgPSBzdGFydF95ZWFyLCBlbmRfeSA9IGVuZF95ZWFyCiAgKSArCiAgdGhlbWUobGVnZW5kLnBvc2l0aW9uID0gYygwLjg4LCAwLjIpKQpgYGAKCiMjIEh5cG90aGVzaXMgdGVzdGluZwoKYGBge3IgZWNobyA9IEZ9CmdldF9wIDwtIGZ1bmN0aW9uKGludGUsIGNvbHUpIHsKICBicm9vbTo6dGlkeShpbnRlKSAlPiUKICAgIGZpbHRlcih0ZXJtID09ICJwcm9iYWJpbGl0aWVzIikgJT4lCiAgICBwdWxsKGNvbHUpICU+JQogICAgc3ByaW50ZigiJTAuNWciLCAuKQp9CmBgYAoKYGBge3J9CmlzY2JfbG0gPC0gaXNjYl9wdWJtZWQgJT4lCiAgZmlsdGVyKGdlbmRlciA9PSAicHJvYmFiaWxpdHlfZmVtYWxlIiwgIWlzLm5hKHByb2JhYmlsaXRpZXMpKSAlPiUKICBtdXRhdGUodHlwZSA9IGFzLmZhY3Rvcih0eXBlKSkgJT4lIAogIG11dGF0ZSh0eXBlID0gdHlwZSAlPiUgcmVsZXZlbChyZWYgPSAiUHVibWVkIGF1dGhvcnMiKSkKYGBgCgpgYGB7cn0Kc2NhbGVkX2lzY2IgPC0gaXNjYl9sbSAlPiUKICBmaWx0ZXIoeWVhcih5ZWFyKSA+PSAyMDAyKQojIHNjYWxlZF9pc2NiJHNfcHJvYiA8LSBzY2FsZShzY2FsZWRfaXNjYiRwcm9iYWJpbGl0aWVzLCBzY2FsZSA9IEYpCiMgc2NhbGVkX2lzY2Ikc195ZWFyIDwtIHNjYWxlKHNjYWxlZF9pc2NiJHllYXIsIHNjYWxlID0gRikKCm1haW5fbG0gPC0gZ2xtKHR5cGUgfiB5ZWFyICsgcHJvYmFiaWxpdGllcywKICBkYXRhID0gc2NhbGVkX2lzY2IsICMgJT4lIG11dGF0ZSh5ZWFyID0gYXMuZmFjdG9yKHllYXIpKQogIGZhbWlseSA9ICJiaW5vbWlhbCIKKQoKYnJvb206OnRpZHkobWFpbl9sbSkKaW50ZV9sbSA8LSBnbG0oCiAgIyB0eXBlIH4gc2NhbGUoeWVhciwgc2NhbGUgPSBGKSAqIHNjYWxlKHByb2JhYmlsaXRpZXMsIHNjYWxlID0gRiksCiAgIyB0eXBlIH4gc195ZWFyICogc19wcm9iLAogIHR5cGUgfiB5ZWFyICogcHJvYmFiaWxpdGllcywKICBkYXRhID0gc2NhbGVkX2lzY2IsICMgJT4lIG11dGF0ZSh5ZWFyID0gYXMuZmFjdG9yKHllYXIpKQogIGZhbWlseSA9ICJiaW5vbWlhbCIKKQpicm9vbTo6dGlkeShpbnRlX2xtKQphbm92YShtYWluX2xtLCBpbnRlX2xtLCB0ZXN0ID0gIkNoaXNxIikKIyBtZWFuKHNjYWxlZF9pc2NiJHllYXIpCiMgbWVhbihzY2FsZWRfaXNjYiRwcm9iYWJpbGl0aWVzKQpgYGAKClRoZSB0d28gZ3JvdXBzIG9mIHNjaWVudGlzdHMgZGlkIG5vdCBoYXZlIGEgc2lnbmlmaWNhbnQgYXNzb2NpYXRpb24gd2l0aCB0aGUgZ2VuZGVyIHByZWRpY3RlZCBmcm9tIGZvcmUgbmFtZXMgKF9QXyA9IGByIGdldF9wKG1haW5fbG0sICdwLnZhbHVlJylgKS4KSW50ZXJhY3Rpb24gdGVybXMgZG8gbm90IHByZWRpY3QgYHR5cGVgIG92ZXIgYW5kIGFib3ZlIHRoZSBtYWluIGVmZmVjdCBvZiBnZW5kZXIgcHJvYmFiaWxpdHkgYW5kIHllYXIuCgpgYGB7ciBpbmNsdWRlPUZBTFNFLCBldmFsPUZBTFNFfQojIGludGVfbG0gPC0gZ2xtKHR5cGUgfiAoeWVhciAqIHByb2JhYmlsaXRpZXMpLAojICAgIGRhdGEgPSBpc2NiX2xtLAojICAgIGZhbWlseSA9ICdiaW5vbWlhbCcpCmBgYAoKYGBge3J9CnNlc3Npb25JbmZvKCkKYGBgCg==
diff --git a/docs/11.visualize-name-origins.html b/docs/11.visualize-name-origins.html index 34d453b..f8c841c 100644 --- a/docs/11.visualize-name-origins.html +++ b/docs/11.visualize-name-origins.html @@ -1694,7 +1694,7 @@

Representation analysis of name origins

rename("region" = Region) %>% recode_region()
## 
-## ── Column specification ────────────────────────────────────────────────────────
+## ── Column specification ─────────────────────────────────────────
 ## cols(
 ##   Country = col_character(),
 ##   Region = col_character()
@@ -1747,17 +1747,12 @@ 

Descriptive statistics

values_to = "probabilities" ) %>% filter(!is.na(probabilities)) %>% - group_by(type, year, region) %>% - mutate( - pmc_citations_year = mean(adjusted_citations), - weight = adjusted_citations / pmc_citations_year, - weighted_probs = probabilities * weight - ) + group_by(type, year, region) iscb_pubmed_sum_oth <- iscb_pubmed_oth %>% summarise( - mean_prob = mean(weighted_probs), - se_prob = sqrt(var(probabilities) * sum(weight^2) / (sum(weight)^2)), + mean_prob = mean(probabilities), + se_prob = sd(probabilities)/sqrt(n()), me_prob = alpha_threshold * se_prob, .groups = "drop" ) @@ -1777,7 +1772,7 @@

By conference keynotes/fellows

iscb_nat[[i]] <- iscb_pubmed_oth %>% filter(region != "OtherCategories", type != "Pubmed authors" & journal == conf) %>% group_by(type, year, region, journal) %>% - summarise(mean_prob = mean(weighted_probs), .groups = "drop") + summarise(mean_prob = mean(probabilities), .groups = "drop") }
save(my_world, iscb_pubmed_oth, iscb_nat, file = "Rdata/iscb-pubmed_nat.Rdata")
@@ -1815,8 +1810,8 @@

Figure 4

fig_4 <- cowplot::plot_grid(fig_4a, fig_4b, labels = "AUTO", ncol = 1, rel_heights = c(1.3, 1))
## `geom_smooth()` using formula 'y ~ s(x, bs = "cs")'
fig_4
-

-
ggsave("figs/region_breakdown.png", fig_4, width = 6.7, height = 5.5)
+

+
ggsave("figs/region_breakdown.png", fig_4, width = 6.7, height = 5.5, dpi = 600)
 ggsave("figs/region_breakdown.svg", fig_4, width = 6.7, height = 5.5)
@@ -1830,7 +1825,7 @@

Hypothesis testing

type = as.factor(type) %>% relevel(ref = "Pubmed authors") ) main_lm <- function(regioni) { - glm(type ~ year + weighted_probs, + glm(type ~ year + probabilities, data = iscb_lm %>% filter(region == regioni, !is.na(probabilities), year(year) >= 2002), family = "binomial" @@ -1838,122 +1833,120 @@

Hypothesis testing

} inte_lm <- function(regioni) { - glm(type ~ year * weighted_probs, + glm(type ~ year * probabilities, data = iscb_lm %>% - filter(region == regioni, !is.na(weighted_probs), year(year) >= 2002), + filter(region == regioni, !is.na(probabilities), year(year) >= 2002), family = "binomial" ) } -main_list <- lapply(large_regions, main_lm)
-
## Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
-
names(main_list) <- large_regions
+main_list <- lapply(large_regions, main_lm)
+names(main_list) <- large_regions
 lapply(main_list, broom::tidy)
## $CelticEnglish
 ## # A tibble: 3 x 5
-##   term            estimate std.error statistic  p.value
-##   <chr>              <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)    -2.17     0.481         -4.52 6.06e- 6
-## 2 year           -0.000268 0.0000320     -8.37 5.64e-17
-## 3 weighted_probs  0.194    0.0561         3.46 5.46e- 4
+##   term           estimate std.error statistic  p.value
+##   <chr>             <dbl>     <dbl>     <dbl>    <dbl>
+## 1 (Intercept)   -2.62     0.489         -5.36 8.47e- 8
+## 2 year          -0.000250 0.0000321     -7.78 7.40e-15
+## 3 probabilities  0.869    0.139          6.26 3.97e-10
 ## 
 ## $EastAsian
 ## # A tibble: 3 x 5
-##   term            estimate std.error statistic  p.value
-##   <chr>              <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)    -2.30     0.480         -4.80 1.58e- 6
-## 2 year           -0.000242 0.0000321     -7.54 4.82e-14
-## 3 weighted_probs -1.67     0.286         -5.82 6.02e- 9
+##   term           estimate std.error statistic  p.value
+##   <chr>             <dbl>     <dbl>     <dbl>    <dbl>
+## 1 (Intercept)   -2.29     0.479         -4.77 1.81e- 6
+## 2 year          -0.000241 0.0000320     -7.51 6.02e-14
+## 3 probabilities -1.75     0.250         -7.00 2.51e-12
 ## 
 ## $European
 ## # A tibble: 3 x 5
-##   term            estimate std.error statistic  p.value
-##   <chr>              <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)    -2.08     0.480        -4.32  1.53e- 5
-## 2 year           -0.000272 0.0000319    -8.53  1.46e-17
-## 3 weighted_probs  0.0713   0.0822        0.867 3.86e- 1
+##   term           estimate std.error statistic  p.value
+##   <chr>             <dbl>     <dbl>     <dbl>    <dbl>
+## 1 (Intercept)   -2.15     0.484         -4.45 8.72e- 6
+## 2 year          -0.000271 0.0000320     -8.46 2.62e-17
+## 3 probabilities  0.222    0.137          1.62 1.05e- 1
 ## 
 ## $OtherCategories
 ## # A tibble: 3 x 5
-##   term            estimate std.error statistic  p.value
-##   <chr>              <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)    -2.06     0.479        -4.30  1.73e- 5
-## 2 year           -0.000273 0.0000319    -8.57  1.03e-17
-## 3 weighted_probs  0.0724   0.0948        0.763 4.45e- 1
-
inte_list <- lapply(large_regions, inte_lm)
-
## Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
-
lapply(inte_list, broom::tidy)
+## term estimate std.error statistic p.value +## <chr> <dbl> <dbl> <dbl> <dbl> +## 1 (Intercept) -2.07 0.479 -4.33 1.52e- 5 +## 2 year -0.000274 0.0000319 -8.58 9.22e-18 +## 3 probabilities 0.159 0.151 1.05 2.95e- 1 +
inte_list <- lapply(large_regions, inte_lm)
+lapply(inte_list, broom::tidy)
## [[1]]
 ## # A tibble: 4 x 5
-##   term                  estimate std.error statistic  p.value
-##   <chr>                    <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)         -2.11      0.507      -4.17    3.06e- 5
-## 2 year                -0.000272  0.0000338  -8.05    8.48e-16
-## 3 weighted_probs       0.00264   0.525       0.00502 9.96e- 1
-## 4 year:weighted_probs  0.0000131 0.0000353   0.370   7.11e- 1
+##   term                 estimate std.error statistic  p.value
+##   <chr>                   <dbl>     <dbl>     <dbl>    <dbl>
+## 1 (Intercept)        -2.48      0.627        -3.96  7.57e- 5
+## 2 year               -0.000259  0.0000414    -6.26  3.96e-10
+## 3 probabilities       0.451     1.19          0.380 7.04e- 1
+## 4 year:probabilities  0.0000283 0.0000796     0.355 7.23e- 1
 ## 
 ## [[2]]
 ## # A tibble: 4 x 5
-##   term                 estimate std.error statistic  p.value
-##   <chr>                   <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)         -2.53     0.506        -5.01  5.54e- 7
-## 2 year                -0.000227 0.0000338    -6.71  1.94e-11
-## 3 weighted_probs       1.96     2.45          0.800 4.24e- 1
-## 4 year:weighted_probs -0.000239 0.000164     -1.46  1.44e- 1
+##   term                estimate std.error statistic  p.value
+##   <chr>                  <dbl>     <dbl>     <dbl>    <dbl>
+## 1 (Intercept)        -2.45     0.500        -4.90  9.36e- 7
+## 2 year               -0.000229 0.0000334    -6.87  6.37e-12
+## 3 probabilities       0.853    2.19          0.389 6.97e- 1
+## 4 year:probabilities -0.000172 0.000146     -1.18  2.38e- 1
 ## 
 ## [[3]]
 ## # A tibble: 4 x 5
-##   term                  estimate std.error statistic  p.value
-##   <chr>                    <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)         -1.87      0.538        -3.47  5.20e- 4
-## 2 year                -0.000286  0.0000358    -8.01  1.19e-15
-## 3 weighted_probs      -0.587     0.779        -0.753 4.51e- 1
-## 4 year:weighted_probs  0.0000441 0.0000511     0.862 3.89e- 1
+##   term                estimate std.error statistic  p.value
+##   <chr>                  <dbl>     <dbl>     <dbl>    <dbl>
+## 1 (Intercept)        -1.66     0.614         -2.71 6.75e- 3
+## 2 year               -0.000303 0.0000410     -7.39 1.44e-13
+## 3 probabilities      -1.28     1.20          -1.07 2.85e- 1
+## 4 year:probabilities  0.000101 0.0000796      1.27 2.05e- 1
 ## 
 ## [[4]]
 ## # A tibble: 4 x 5
-##   term                  estimate std.error statistic  p.value
-##   <chr>                    <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)         -1.80      0.527         -3.42 6.25e- 4
-## 2 year                -0.000290  0.0000351     -8.29 1.17e-16
-## 3 weighted_probs      -0.880     0.849         -1.04 3.00e- 1
-## 4 year:weighted_probs  0.0000628 0.0000544      1.15 2.48e- 1
+## term estimate std.error statistic p.value +## <chr> <dbl> <dbl> <dbl> <dbl> +## 1 (Intercept) -1.55 0.598 -2.60 9.42e- 3 +## 2 year -0.000309 0.0000401 -7.70 1.31e-14 +## 3 probabilities -1.76 1.35 -1.30 1.92e- 1 +## 4 year:probabilities 0.000127 0.0000882 1.44 1.50e- 1
for (i in 1:4) {
   print(anova(main_list[[i]], inte_list[[i]], test = "Chisq"))
 }
## Analysis of Deviance Table
 ## 
-## Model 1: type ~ year + weighted_probs
-## Model 2: type ~ year * weighted_probs
+## Model 1: type ~ year + probabilities
+## Model 2: type ~ year * probabilities
 ##   Resid. Df Resid. Dev Df Deviance Pr(>Chi)
-## 1    163886     4627.2                     
-## 2    163885     4627.1  1  0.14187   0.7064
+## 1    163886     4599.0                     
+## 2    163885     4598.9  1  0.12594   0.7227
 ## Analysis of Deviance Table
 ## 
-## Model 1: type ~ year + weighted_probs
-## Model 2: type ~ year * weighted_probs
+## Model 1: type ~ year + probabilities
+## Model 2: type ~ year * probabilities
 ##   Resid. Df Resid. Dev Df Deviance Pr(>Chi)
-## 1    163886     4576.6                     
-## 2    163885     4574.6  1   2.0829    0.149
+## 1    163886     4554.1                     
+## 2    163885     4552.7  1   1.3867    0.239
 ## Analysis of Deviance Table
 ## 
-## Model 1: type ~ year + weighted_probs
-## Model 2: type ~ year * weighted_probs
+## Model 1: type ~ year + probabilities
+## Model 2: type ~ year * probabilities
 ##   Resid. Df Resid. Dev Df Deviance Pr(>Chi)
-## 1    163886     4634.1                     
-## 2    163885     4633.4  1  0.74565   0.3879
+## 1    163886     4632.2                     
+## 2    163885     4630.6  1    1.607   0.2049
 ## Analysis of Deviance Table
 ## 
-## Model 1: type ~ year + weighted_probs
-## Model 2: type ~ year * weighted_probs
+## Model 1: type ~ year + probabilities
+## Model 2: type ~ year * probabilities
 ##   Resid. Df Resid. Dev Df Deviance Pr(>Chi)
-## 1    163886     4634.3                     
-## 2    163885     4633.1  1   1.2103   0.2713
+## 1 163886 4633.7 +## 2 163885 4631.6 1 2.0781 0.1494

Interaction terms do not predict type over and above the main effect of name origin probability and year (p > 0.01).

Conclusion

-

A Celtic/English name has 1.2141832 the odds of being selected as an honoree, significantly higher compared to other names (\(\beta_\textrm{Celtic/English} =\) 0.19407, P = 0.00054646). An East Asian name has 0.1889996 the odds of being selected as an honoree, significantly lower than to other names (\(\beta_\textrm{East Asian} =\) -1.666, P = 6.0164e-09). The two groups of scientists did not have a significant association with names predicted to be European (P = 0.38583) or in Other categories (P = 0.44544).

+

A Celtic/English name has 2.3850497 the odds of being selected as an honoree, significantly higher compared to other names (\(\beta_\textrm{Celtic/English} =\) 0.86922, P = 3.9713e-10). An East Asian name has 0.1731846 the odds of being selected as an honoree, significantly lower than to other names (\(\beta_\textrm{East Asian} =\) -1.7534, P = 2.5132e-12). The two groups of scientists did not have a significant association with names predicted to be European (P = 0.10527) or in Other categories (P = 0.29469).

Alternative approach

@@ -2059,21 +2052,16 @@

Time lag

values_to = "probabilities" ) %>% filter(!is.na(probabilities), year(year) >= 2002) %>% - group_by(type, year, region) %>% - mutate( - pmc_citations_year = mean(adjusted_citations), - weight = adjusted_citations / pmc_citations_year, - weighted_probs = probabilities * weight - ) + group_by(type, year, region) iscb_lm_lag <- iscb_pubmed_oth_lag %>% ungroup() %>% mutate(type = as.factor(type) %>% relevel(ref = "Pubmed authors")) main_lm <- function(regioni) { - glm(type ~ year + weighted_probs, + glm(type ~ year + probabilities, data = iscb_lm_lag %>% - filter(region == regioni, !is.na(weighted_probs)), + filter(region == regioni, !is.na(probabilities)), family = "binomial" ) } @@ -2083,35 +2071,35 @@

Time lag

lapply(main_list, broom::tidy)
## $CelticEnglish
 ## # A tibble: 3 x 5
-##   term           estimate std.error statistic   p.value
-##   <chr>             <dbl>     <dbl>     <dbl>     <dbl>
-## 1 (Intercept)    29.1     1.18         24.7   2.46e-134
-## 2 year           -0.00210 0.0000749   -28.0   2.09e-172
-## 3 weighted_probs  0.0199  0.102         0.196 8.45e-  1
+##   term          estimate std.error statistic   p.value
+##   <chr>            <dbl>     <dbl>     <dbl>     <dbl>
+## 1 (Intercept)   29.0     1.19         24.5   4.51e-132
+## 2 year          -0.00209 0.0000750   -27.9   5.63e-171
+## 3 probabilities  0.130   0.170         0.767 4.43e-  1
 ## 
 ## $EastAsian
 ## # A tibble: 3 x 5
-##   term           estimate std.error statistic   p.value
-##   <chr>             <dbl>     <dbl>     <dbl>     <dbl>
-## 1 (Intercept)    29.0     1.18          24.6  5.89e-134
-## 2 year           -0.00209 0.0000749    -27.8  1.41e-170
-## 3 weighted_probs -0.708   0.292         -2.43 1.52e-  2
+##   term          estimate std.error statistic   p.value
+##   <chr>            <dbl>     <dbl>     <dbl>     <dbl>
+## 1 (Intercept)   28.9     1.18          24.6  3.99e-133
+## 2 year          -0.00208 0.0000749    -27.7  2.99e-169
+## 3 probabilities -1.01    0.280         -3.60 3.20e-  4
 ## 
 ## $European
 ## # A tibble: 3 x 5
-##   term           estimate std.error statistic   p.value
-##   <chr>             <dbl>     <dbl>     <dbl>     <dbl>
-## 1 (Intercept)    29.1     1.18        24.7    4.84e-135
-## 2 year           -0.00210 0.0000748  -28.0    7.61e-173
-## 3 weighted_probs  0.00832 0.106        0.0788 9.37e-  1
+##   term          estimate std.error statistic   p.value
+##   <chr>            <dbl>     <dbl>     <dbl>     <dbl>
+## 1 (Intercept)   29.1     1.18         24.7   1.06e-134
+## 2 year          -0.00210 0.0000748   -28.0   8.91e-173
+## 3 probabilities  0.0595  0.166         0.358 7.20e-  1
 ## 
 ## $OtherCategories
 ## # A tibble: 3 x 5
-##   term           estimate std.error statistic   p.value
-##   <chr>             <dbl>     <dbl>     <dbl>     <dbl>
-## 1 (Intercept)    29.1     1.18          24.7  3.41e-135
-## 2 year           -0.00210 0.0000748    -28.1  3.25e-173
-## 3 weighted_probs  0.170   0.106          1.60 1.09e-  1
+## term estimate std.error statistic p.value +## <chr> <dbl> <dbl> <dbl> <dbl> +## 1 (Intercept) 29.1 1.18 24.8 2.82e-135 +## 2 year -0.00210 0.0000748 -28.1 7.58e-174 +## 3 probabilities 0.432 0.183 2.36 1.80e- 2

Supplementary Figure S5

@@ -2148,55 +2136,73 @@

Supplementary Figure S5

## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C ## ## attached base packages: -## [1] stats graphics grDevices utils datasets methods base +## [1] stats graphics grDevices utils datasets methods +## [7] base ## ## other attached packages: -## [1] gdtools_0.2.2 wru_0.1-10 rnaturalearth_0.1.0 -## [4] lubridate_1.7.9.2 caret_6.0-86 lattice_0.20-41 -## [7] forcats_0.5.0 stringr_1.4.0 dplyr_1.0.2 -## [10] purrr_0.3.4 readr_1.4.0 tidyr_1.1.2 -## [13] tibble_3.0.4 ggplot2_3.3.2 tidyverse_1.3.0 +## [1] broom_0.7.2 DT_0.16 epitools_0.5-10.1 +## [4] gdtools_0.2.2 wru_0.1-10 rnaturalearth_0.1.0 +## [7] lubridate_1.7.9.2 caret_6.0-86 lattice_0.20-41 +## [10] forcats_0.5.0 stringr_1.4.0 dplyr_1.0.2 +## [13] purrr_0.3.4 readr_1.4.0 tidyr_1.1.2 +## [16] tibble_3.0.4 ggplot2_3.3.2 tidyverse_1.3.0 ## ## loaded via a namespace (and not attached): -## [1] colorspace_2.0-0 ellipsis_0.3.1 class_7.3-17 -## [4] rprojroot_1.3-2 fs_1.5.0 rstudioapi_0.12 -## [7] farver_2.0.3 remotes_2.2.0 DT_0.16 -## [10] prodlim_2019.11.13 fansi_0.4.1 xml2_1.3.2 -## [13] codetools_0.2-16 splines_4.0.3 knitr_1.30 -## [16] pkgload_1.1.0 jsonlite_1.7.1 pROC_1.16.2 -## [19] broom_0.7.2 dbplyr_2.0.0 rgeos_0.5-5 -## [22] compiler_4.0.3 httr_1.4.2 backports_1.2.0 -## [25] assertthat_0.2.1 Matrix_1.2-18 cli_2.1.0 -## [28] htmltools_0.5.0 prettyunits_1.1.1 tools_4.0.3 -## [31] gtable_0.3.0 glue_1.4.2 rnaturalearthdata_0.1.0 -## [34] reshape2_1.4.4 Rcpp_1.0.5 cellranger_1.1.0 -## [37] vctrs_0.3.4 svglite_1.2.3.2 nlme_3.1-149 -## [40] iterators_1.0.13 crosstalk_1.1.0.1 timeDate_3043.102 -## [43] gower_0.2.2 xfun_0.19 ps_1.4.0 -## [46] testthat_3.0.0 rvest_0.3.6 lifecycle_0.2.0 -## [49] devtools_2.3.2 MASS_7.3-53 scales_1.1.1 -## [52] ipred_0.9-9 hms_0.5.3 RColorBrewer_1.1-2 -## [55] yaml_2.2.1 curl_4.3 memoise_1.1.0 -## [58] rpart_4.1-15 stringi_1.5.3 desc_1.2.0 -## [61] foreach_1.5.1 e1071_1.7-4 pkgbuild_1.1.0 -## [64] lava_1.6.8.1 systemfonts_0.3.2 rlang_0.4.8 -## [67] pkgconfig_2.0.3 evaluate_0.14 sf_0.9-6 -## [70] recipes_0.1.15 htmlwidgets_1.5.2 labeling_0.4.2 -## [73] cowplot_1.1.0 tidyselect_1.1.0 processx_3.4.4 -## [76] plyr_1.8.6 magrittr_1.5 R6_2.5.0 -## [79] generics_0.1.0 DBI_1.1.0 mgcv_1.8-33 -## [82] pillar_1.4.6 haven_2.3.1 withr_2.3.0 -## [85] units_0.6-7 survival_3.2-7 sp_1.4-4 -## [88] nnet_7.3-14 modelr_0.1.8 crayon_1.3.4 -## [91] KernSmooth_2.23-17 utf8_1.1.4 rmarkdown_2.5 -## [94] usethis_1.6.3 grid_4.0.3 readxl_1.3.1 -## [97] data.table_1.13.2 callr_3.5.1 ModelMetrics_1.2.2.2 -## [100] reprex_0.3.0 digest_0.6.27 classInt_0.4-3 -## [103] stats4_4.0.3 munsell_0.5.0 viridisLite_0.3.0 -## [106] sessioninfo_1.1.1 +## [1] colorspace_2.0-0 ellipsis_0.3.1 +## [3] class_7.3-17 rprojroot_1.3-2 +## [5] fs_1.5.0 rstudioapi_0.12 +## [7] farver_2.0.3 remotes_2.2.0 +## [9] prodlim_2019.11.13 fansi_0.4.1 +## [11] xml2_1.3.2 codetools_0.2-16 +## [13] splines_4.0.3 knitr_1.30 +## [15] pkgload_1.1.0 jsonlite_1.7.1 +## [17] pROC_1.16.2 dbplyr_2.0.0 +## [19] rgeos_0.5-5 compiler_4.0.3 +## [21] httr_1.4.2 backports_1.2.0 +## [23] assertthat_0.2.1 Matrix_1.2-18 +## [25] cli_2.1.0 htmltools_0.5.0 +## [27] prettyunits_1.1.1 tools_4.0.3 +## [29] gtable_0.3.0 glue_1.4.2 +## [31] rnaturalearthdata_0.1.0 reshape2_1.4.4 +## [33] Rcpp_1.0.5 cellranger_1.1.0 +## [35] vctrs_0.3.4 svglite_1.2.3.2 +## [37] nlme_3.1-149 iterators_1.0.13 +## [39] crosstalk_1.1.0.1 timeDate_3043.102 +## [41] gower_0.2.2 xfun_0.19 +## [43] ps_1.4.0 testthat_3.0.0 +## [45] rvest_0.3.6 lifecycle_0.2.0 +## [47] devtools_2.3.2 MASS_7.3-53 +## [49] scales_1.1.1 ipred_0.9-9 +## [51] hms_0.5.3 RColorBrewer_1.1-2 +## [53] yaml_2.2.1 curl_4.3 +## [55] memoise_1.1.0 rpart_4.1-15 +## [57] stringi_1.5.3 desc_1.2.0 +## [59] foreach_1.5.1 e1071_1.7-4 +## [61] pkgbuild_1.1.0 lava_1.6.8.1 +## [63] systemfonts_0.3.2 rlang_0.4.8 +## [65] pkgconfig_2.0.3 evaluate_0.14 +## [67] sf_0.9-6 recipes_0.1.15 +## [69] htmlwidgets_1.5.2 labeling_0.4.2 +## [71] cowplot_1.1.0 tidyselect_1.1.0 +## [73] processx_3.4.4 plyr_1.8.6 +## [75] magrittr_1.5 R6_2.5.0 +## [77] generics_0.1.0 DBI_1.1.0 +## [79] mgcv_1.8-33 pillar_1.4.6 +## [81] haven_2.3.1 withr_2.3.0 +## [83] units_0.6-7 survival_3.2-7 +## [85] sp_1.4-4 nnet_7.3-14 +## [87] modelr_0.1.8 crayon_1.3.4 +## [89] KernSmooth_2.23-17 utf8_1.1.4 +## [91] rmarkdown_2.5 usethis_1.6.3 +## [93] grid_4.0.3 readxl_1.3.1 +## [95] data.table_1.13.2 callr_3.5.1 +## [97] ModelMetrics_1.2.2.2 reprex_0.3.0 +## [99] digest_0.6.27 classInt_0.4-3 +## [101] stats4_4.0.3 munsell_0.5.0 +## [103] viridisLite_0.3.0 sessioninfo_1.1.1
-
LS0tCnRpdGxlOiAiUmVwcmVzZW50YXRpb24gYW5hbHlzaXMgb2YgbmFtZSBvcmlnaW5zIgotLS0KCmBgYHtyIHNldHVwLCBpbmNsdWRlPUZBTFNFfQpsaWJyYXJ5KHRpZHl2ZXJzZSkKbGlicmFyeShsdWJyaWRhdGUpCmxpYnJhcnkocm5hdHVyYWxlYXJ0aCkKc291cmNlKCJ1dGlscy9yLXV0aWxzLlIiKQp0aGVtZV9zZXQodGhlbWVfYncoKSArIHRoZW1lKGxlZ2VuZC50aXRsZSA9IGVsZW1lbnRfYmxhbmsoKSkpCmBgYAoKT25seSBrZWVwIGFydGljbGVzIGZyb20gMjAwMiBiZWNhdXNlIGZldyBhdXRob3JzIGhhZCBuYXRpb25hbGl0eSBwcmVkaWN0aW9ucyBiZWZvcmUgMjAwMiAobW9zdGx5IGR1ZSB0byBtaXNzaW5nIG1ldGFkYXRhKS4KU2VlIFswOTMuc3VtbWFyeS1zdGF0c10oZG9jcy8wOTMuc3VtbWFyeS1zdGF0cy5odG1sKSBmb3IgbW9yZSBkZXRhaWxzLgoKYGBge3J9CmFscGhhX3RocmVzaG9sZCA8LSBxbm9ybSgwLjk3NSkKbG9hZCgiUmRhdGEvcmF3cy5SZGF0YSIpCgpwdWJtZWRfbmF0X2RmIDwtIGNvcnJfYXV0aG9ycyAlPiUKICBmaWx0ZXIoeWVhcih5ZWFyKSA+PSAyMDAyKSAlPiUKICBsZWZ0X2pvaW4obmF0aW9uYWxpemVfZGYsIGJ5ID0gYygiZm9yZV9uYW1lIiwgImxhc3RfbmFtZSIpKSAlPiUKICBncm91cF9ieShwbWlkLCBqb3VybmFsLCBwdWJsaWNhdGlvbl9kYXRlLCB5ZWFyLCBhZGp1c3RlZF9jaXRhdGlvbnMpICU+JQogIHN1bW1hcmlzZV9hdCh2YXJzKEFmcmljYW46U291dGhBc2lhbiksIG1lYW4sIG5hLnJtID0gVCkgJT4lCiAgdW5ncm91cCgpCgppc2NiX25hdF9kZiA8LSBrZXlub3RlcyAlPiUKICBsZWZ0X2pvaW4obmF0aW9uYWxpemVfZGYsIGJ5ID0gYygiZm9yZV9uYW1lIiwgImxhc3RfbmFtZSIpKQoKc3RhcnRfeWVhciA8LSAxOTkyCmVuZF95ZWFyIDwtIDIwMTkKbl95ZWFycyA8LSBlbmRfeWVhciAtIHN0YXJ0X3llYXIKbXlfam91cnMgPC0gdW5pcXVlKHB1Ym1lZF9uYXRfZGYkam91cm5hbCkKbXlfY29uZnMgPC0gdW5pcXVlKGlzY2JfbmF0X2RmJGNvbmZlcmVuY2UpCm5fam91cnMgPC0gbGVuZ3RoKG15X2pvdXJzKQpuX2NvbmZzIDwtIGxlbmd0aChteV9jb25mcykKcmVnaW9uX2xldmVscyA8LSBwYXN0ZShjKCJDZWx0aWMvRW5nbGlzaCIsICJFdXJvcGVhbiIsICJFYXN0IEFzaWFuIiwgIkhpc3BhbmljIiwgIlNvdXRoIEFzaWFuIiwgIkFyYWJpYyIsICJIZWJyZXciLCAiQWZyaWNhbiIsICJOb3JkaWMiLCAiR3JlZWsiKSwgIm5hbWVzIikKcmVnaW9uX2xldmVsc19sZXQgPC0gdG91cHBlcihsZXR0ZXJzWzE6OF0pCnJlZ2lvbl9jb2xzIDwtIGMoIiNmZmZmYjMiLCAiI2ZjY2RlNSIsICIjYjNkZTY5IiwgIiNmZGI0NjIiLCAiIzgwYjFkMyIsICIjOGRkM2M3IiwgIiNiZWJhZGEiLCAiI2ZiODA3MiIsICIjYmM4MGJkIiwgIiNjY2ViYzUiKQpgYGAKCk5hbWVzIGdyb3VwaW5nOgpgYGB7ciB3YXJuaW5nPUZBTFNFLCBmaWcuaGVpZ2h0ID0gM30Kb3VyX2NvdW50cnlfbWFwIDwtIHJlYWRfdHN2KCJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vZ3JlZW5lbGFiL3dpa2ktbmF0aW9uYWxpdHktZXN0aW1hdGUvN2MyMmQwYTVmNjYxY2U1YWViNzg1MjE1MDk1ZGVkYTQwOTczZmYxNy9kYXRhL2NvdW50cnlfdG9fcmVnaW9uX05hbWVQcmlzbS50c3YiKSAlPiUKICByZW5hbWUoInJlZ2lvbiIgPSBSZWdpb24pICU+JQogIHJlY29kZV9yZWdpb24oKQoKbXlfd29ybGQgPC0gd29ybGQgJT4lCiAgc2VsZWN0KC1nZW9tZXRyeSkgJT4lCiAgcmVuYW1lKENvdW50cnkgPSAibmFtZSIpICU+JQogIGxlZnRfam9pbihvdXJfY291bnRyeV9tYXAsIGJ5ID0gIkNvdW50cnkiKQoKKGd3b3JsZCA8LSBnZ3Bsb3QoZGF0YSA9IG15X3dvcmxkKSArCiAgZ2VvbV9zZihhZXMoZmlsbCA9IGZjdF9yZWxldmVsKHJlZ2lvbiwgcmVnaW9uX2xldmVscykpKSArCiAgY29vcmRfc2YoY3JzID0gIitwcm9qPWVxZWFydGggK3drdGV4dCIpICsKICBzY2FsZV9maWxsX21hbnVhbCgKICAgIHZhbHVlcyA9IHJlZ2lvbl9jb2xzLAogICAgbmEudHJhbnNsYXRlID0gRkFMU0UKICApICsKICB0aGVtZSgKICAgIHBhbmVsLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbCA9ICJhenVyZSIpLAogICAgbGVnZW5kLnRpdGxlID0gZWxlbWVudF9ibGFuaygpLAogICAgbGVnZW5kLnBvc2l0aW9uID0gImJvdHRvbSIsCiAgICBwYW5lbC5ib3JkZXIgPSBlbGVtZW50X3JlY3QoZmlsbCA9IE5BKQogICkpCgpnZ3NhdmUoImZpZ3MvMjAyMC0wMS0zMV9ncm91cGluZ3MucG5nIiwgZ3dvcmxkLCB3aWR0aCA9IDcuMiwgaGVpZ2h0ID0gNC4zKQpnZ3NhdmUoImZpZ3MvMjAyMC0wMS0zMV9ncm91cGluZ3Muc3ZnIiwgZ3dvcmxkLCB3aWR0aCA9IDcuMiwgaGVpZ2h0ID0gNC4zKQpgYGAKCgojIyBEZXNjcmlwdGl2ZSBzdGF0aXN0aWNzClByZXBhcmUgZGF0YSBmcmFtZXMgZm9yIGxhdGVyIGFuYWx5c2VzOgoKLSByYmluZCByZXN1bHRzIG9mIHJhY2UgcHJlZGljdGlvbnMgaW4gaXNjYiBhbmQgUHVibWVkCi0gcGl2b3QgbG9uZwotIGNvbXB1dGUgbWVhbiwgc2QsIG1hcmdpbmFsIGVycm9yCgpgYGB7cn0KaXNjYl9wdWJtZWRfb3RoIDwtIGlzY2JfbmF0X2RmICU+JQogIHJlbmFtZSgiam91cm5hbCIgPSBjb25mZXJlbmNlKSAlPiUKICBzZWxlY3QoeWVhciwgam91cm5hbCwgQWZyaWNhbjpTb3V0aEFzaWFuLCBwdWJsaWNhdGlvbl9kYXRlKSAlPiUKICBtdXRhdGUoCiAgICB0eXBlID0gIktleW5vdGUgc3BlYWtlcnMvRmVsbG93cyIsCiAgICBhZGp1c3RlZF9jaXRhdGlvbnMgPSAxLAogICAgcG1pZCA9IC05OTk5CiAgKSAlPiUKICBiaW5kX3Jvd3MoCiAgICBwdWJtZWRfbmF0X2RmICU+JQogICAgICBzZWxlY3QocG1pZCwgeWVhciwgam91cm5hbCwgQWZyaWNhbjpTb3V0aEFzaWFuLCBwdWJsaWNhdGlvbl9kYXRlLCBhZGp1c3RlZF9jaXRhdGlvbnMpICU+JQogICAgICBtdXRhdGUodHlwZSA9ICJQdWJtZWQgYXV0aG9ycyIpCiAgKSAlPiUKICBtdXRhdGUoT3RoZXJDYXRlZ29yaWVzID0gU291dGhBc2lhbiArIEhpc3BhbmljICsgSmV3aXNoICsgTXVzbGltICsgTm9yZGljICsgR3JlZWsgKyBBZnJpY2FuKSAlPiUKICBwaXZvdF9sb25nZXIoYyhBZnJpY2FuOlNvdXRoQXNpYW4sIE90aGVyQ2F0ZWdvcmllcyksCiAgICBuYW1lc190byA9ICJyZWdpb24iLAogICAgdmFsdWVzX3RvID0gInByb2JhYmlsaXRpZXMiCiAgKSAlPiUKICBmaWx0ZXIoIWlzLm5hKHByb2JhYmlsaXRpZXMpKSAlPiUKICBncm91cF9ieSh0eXBlLCB5ZWFyLCByZWdpb24pICU+JQogIG11dGF0ZSgKICAgIHBtY19jaXRhdGlvbnNfeWVhciA9IG1lYW4oYWRqdXN0ZWRfY2l0YXRpb25zKSwKICAgIHdlaWdodCA9IGFkanVzdGVkX2NpdGF0aW9ucyAvIHBtY19jaXRhdGlvbnNfeWVhciwKICAgIHdlaWdodGVkX3Byb2JzID0gcHJvYmFiaWxpdGllcyAqIHdlaWdodAogICkKCmlzY2JfcHVibWVkX3N1bV9vdGggPC0gaXNjYl9wdWJtZWRfb3RoICU+JQogIHN1bW1hcmlzZSgKICAgIG1lYW5fcHJvYiA9IG1lYW4od2VpZ2h0ZWRfcHJvYnMpLAogICAgc2VfcHJvYiA9IHNxcnQodmFyKHByb2JhYmlsaXRpZXMpICogc3VtKHdlaWdodF4yKSAvIChzdW0od2VpZ2h0KV4yKSksCiAgICBtZV9wcm9iID0gYWxwaGFfdGhyZXNob2xkICogc2VfcHJvYiwKICAgIC5ncm91cHMgPSAiZHJvcCIKICApCgppc2NiX3B1Ym1lZF9zdW0gPC0gaXNjYl9wdWJtZWRfc3VtX290aCAlPiUKICBmaWx0ZXIocmVnaW9uICE9ICJPdGhlckNhdGVnb3JpZXMiKQpgYGAKCiMjIFByZXBhcmUgZGF0YSBmcmFtZXMgZm9yIGFuYWx5c2lzCgojIyMgQnkgY29uZmVyZW5jZSBrZXlub3Rlcy9mZWxsb3dzCmBgYHtyIGZpZy5oZWlnaHQ9Nn0KaSA8LSAwCmlzY2JfbmF0IDwtIHZlY3RvcigibGlzdCIsIGxlbmd0aCA9IG5fY29uZnMpCgpmb3IgKGNvbmYgaW4gbXlfY29uZnMpIHsKICBpIDwtIGkgKyAxCiAgaXNjYl9uYXRbW2ldXSA8LSBpc2NiX3B1Ym1lZF9vdGggJT4lCiAgICBmaWx0ZXIocmVnaW9uICE9ICJPdGhlckNhdGVnb3JpZXMiLCB0eXBlICE9ICJQdWJtZWQgYXV0aG9ycyIgJiBqb3VybmFsID09IGNvbmYpICU+JQogICAgZ3JvdXBfYnkodHlwZSwgeWVhciwgcmVnaW9uLCBqb3VybmFsKSAlPiUKICAgIHN1bW1hcmlzZShtZWFuX3Byb2IgPSBtZWFuKHdlaWdodGVkX3Byb2JzKSwgLmdyb3VwcyA9ICJkcm9wIikKfQpgYGAKCmBgYHtyfQpzYXZlKG15X3dvcmxkLCBpc2NiX3B1Ym1lZF9vdGgsIGlzY2JfbmF0LCBmaWxlID0gIlJkYXRhL2lzY2ItcHVibWVkX25hdC5SZGF0YSIpCmBgYAoKIyMgRmlndXJlcyBmb3IgcGFwZXIKCiMjIyBGaWd1cmUgNAoKQ29tcGFyZWQgdG8gdGhlIG5hbWUgY29sbGVjdGlvbiBvZiBQdWJtZWQgYXV0aG9ycywgaG9ub3JlZXMgd2l0aCBDZWx0aWMvRW5nbGlzaCBuYW1lcyBhcmUgb3ZlcnJlcHJlc2VudGVkIHdoaWxlIGhvbm9yZWVzIHdpdGggRWFzdCBBc2lhbiBuYW1lcyBhcmUgdW5kZXJyZXByZXNlbnRlZC4KCmBgYHtyIGZpZy5oZWlnaHQ9NywgZmlnLndpZHRoPTksIHdhcm5pbmc9RkFMU0V9CmZpZ180YSA8LSBpc2NiX3B1Ym1lZF9zdW0gJT4lCiAgZmlsdGVyKHllYXIgPCAiMjAyMC0wMS0wMSIpICU+JQogIHJlZ2lvbl9icmVha2Rvd24oIm1haW4iLCByZWdpb25fbGV2ZWxzLCBmY3RfcmV2KHR5cGUpKSArCiAgZ3VpZGVzKGZpbGwgPSBndWlkZV9sZWdlbmQobnJvdyA9IDIpKSArCiAgdGhlbWUobGVnZW5kLnBvc2l0aW9uID0gImJvdHRvbSIpCgpsYXJnZV9yZWdpb25zIDwtIGMoIkNlbHRpY0VuZ2xpc2giLCAiRWFzdEFzaWFuIiwgIkV1cm9wZWFuIiwgIk90aGVyQ2F0ZWdvcmllcyIpCiMjIE1lYW4gYW5kIHN0YW5kYXJkIGRldmlhdGlvbiBvZiBwcmVkaWN0ZWQgcHJvYmFiaWxpdGllczoKZmlnXzRiIDwtIGlzY2JfcHVibWVkX3N1bV9vdGggJT4lCiAgZmlsdGVyKHJlZ2lvbiAlaW4lIGxhcmdlX3JlZ2lvbnMpICU+JQogIHJlY29kZV9yZWdpb24oKSAlPiUKICBnYW1fYW5kX2NpKAogICAgZGYyID0gaXNjYl9wdWJtZWRfb3RoICU+JQogICAgICBmaWx0ZXIocmVnaW9uICVpbiUgbGFyZ2VfcmVnaW9ucykgJT4lCiAgICAgIHJlY29kZV9yZWdpb24oKSwKICAgIHN0YXJ0X3kgPSBzdGFydF95ZWFyLCBlbmRfeSA9IGVuZF95ZWFyCiAgKSArCiAgdGhlbWUoCiAgICBsZWdlbmQucG9zaXRpb24gPSBjKDAuODgsIDAuODMpLAogICAgcGFuZWwuZ3JpZC5taW5vciA9IGVsZW1lbnRfYmxhbmsoKSwKICAgIGxlZ2VuZC5tYXJnaW4gPSBtYXJnaW4oLTAuNSwgMCwgMCwgMCwgdW5pdCA9ICJjbSIpLAogICAgbGVnZW5kLnRleHQgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDcpCiAgKSArCiAgZmFjZXRfd3JhcCh2YXJzKGZjdF9yZWxldmVsKHJlZ2lvbiwgbGFyZ2VfcmVnaW9ucykpLCBucm93ID0gMSkKCmZpZ180IDwtIGNvd3Bsb3Q6OnBsb3RfZ3JpZChmaWdfNGEsIGZpZ180YiwgbGFiZWxzID0gIkFVVE8iLCBuY29sID0gMSwgcmVsX2hlaWdodHMgPSBjKDEuMywgMSkpCmZpZ180Cmdnc2F2ZSgiZmlncy9yZWdpb25fYnJlYWtkb3duLnBuZyIsIGZpZ180LCB3aWR0aCA9IDYuNywgaGVpZ2h0ID0gNS41KQpnZ3NhdmUoImZpZ3MvcmVnaW9uX2JyZWFrZG93bi5zdmciLCBmaWdfNCwgd2lkdGggPSA2LjcsIGhlaWdodCA9IDUuNSkKYGBgCgoKIyMgSHlwb3RoZXNpcyB0ZXN0aW5nCgpgYGB7cn0KaXNjYl9sbSA8LSBpc2NiX3B1Ym1lZF9vdGggJT4lCiAgdW5ncm91cCgpICU+JQogIG11dGF0ZSgKICAgICMgeWVhciA9IGMoc2NhbGUoeWVhcih5ZWFyKSkpLAogICAgIyB5ZWFyID0gYXMuZmFjdG9yKHllYXIpLAogICAgdHlwZSA9IGFzLmZhY3Rvcih0eXBlKSAlPiUgcmVsZXZlbChyZWYgPSAiUHVibWVkIGF1dGhvcnMiKQogICkKbWFpbl9sbSA8LSBmdW5jdGlvbihyZWdpb25pKSB7CiAgZ2xtKHR5cGUgfiB5ZWFyICsgd2VpZ2h0ZWRfcHJvYnMsCiAgICBkYXRhID0gaXNjYl9sbSAlPiUKICAgICAgZmlsdGVyKHJlZ2lvbiA9PSByZWdpb25pLCAhaXMubmEocHJvYmFiaWxpdGllcyksIHllYXIoeWVhcikgPj0gMjAwMiksCiAgICBmYW1pbHkgPSAiYmlub21pYWwiCiAgKQp9CgppbnRlX2xtIDwtIGZ1bmN0aW9uKHJlZ2lvbmkpIHsKICBnbG0odHlwZSB+IHllYXIgKiB3ZWlnaHRlZF9wcm9icywKICAgIGRhdGEgPSBpc2NiX2xtICU+JQogICAgICBmaWx0ZXIocmVnaW9uID09IHJlZ2lvbmksICFpcy5uYSh3ZWlnaHRlZF9wcm9icyksIHllYXIoeWVhcikgPj0gMjAwMiksCiAgICBmYW1pbHkgPSAiYmlub21pYWwiCiAgKQp9CgptYWluX2xpc3QgPC0gbGFwcGx5KGxhcmdlX3JlZ2lvbnMsIG1haW5fbG0pCm5hbWVzKG1haW5fbGlzdCkgPC0gbGFyZ2VfcmVnaW9ucwpsYXBwbHkobWFpbl9saXN0LCBicm9vbTo6dGlkeSkKCmludGVfbGlzdCA8LSBsYXBwbHkobGFyZ2VfcmVnaW9ucywgaW50ZV9sbSkKbGFwcGx5KGludGVfbGlzdCwgYnJvb206OnRpZHkpCmZvciAoaSBpbiAxOjQpIHsKICBwcmludChhbm92YShtYWluX2xpc3RbW2ldXSwgaW50ZV9saXN0W1tpXV0sIHRlc3QgPSAiQ2hpc3EiKSkKfQpgYGAKSW50ZXJhY3Rpb24gdGVybXMgZG8gbm90IHByZWRpY3QgYHR5cGVgIG92ZXIgYW5kIGFib3ZlIHRoZSBtYWluIGVmZmVjdCBvZiBuYW1lIG9yaWdpbiBwcm9iYWJpbGl0eSBhbmQgeWVhciAoX3BfID4gMC4wMSkuCgpgYGB7ciBlY2hvID0gRn0KZ2V0X3AgPC0gZnVuY3Rpb24oaSwgY29sdSkgewogIGJyb29tOjp0aWR5KG1haW5fbGlzdFtbaV1dKSAlPiUKICAgIGZpbHRlcih0ZXJtID09ICJ3ZWlnaHRlZF9wcm9icyIpICU+JQogICAgcHVsbChjb2x1KQp9CgpwcmludF9wIDwtIGZ1bmN0aW9uKHgpIHNwcmludGYoIiUwLjVnIiwgeCkKYGBgCgojIyBDb25jbHVzaW9uCkEgQ2VsdGljL0VuZ2xpc2ggbmFtZSBoYXMgYHIgZXhwKGdldF9wKDEsICdlc3RpbWF0ZScpKWAgdGhlIG9kZHMgb2YgYmVpbmcgc2VsZWN0ZWQgYXMgYW4gaG9ub3JlZSwgc2lnbmlmaWNhbnRseSBoaWdoZXIgY29tcGFyZWQgdG8gb3RoZXIgbmFtZXMgKCRcYmV0YV9cdGV4dHJte0NlbHRpYy9FbmdsaXNofSA9JCBgciBwcmludF9wKGdldF9wKDEsICdlc3RpbWF0ZScpKWAsIF9QXyA9IGByIHByaW50X3AoZ2V0X3AoMSwgJ3AudmFsdWUnKSlgKS4KQW4gRWFzdCBBc2lhbiBuYW1lIGhhcyBgciBleHAoZ2V0X3AoMiwgJ2VzdGltYXRlJykpYCB0aGUgb2RkcyBvZiBiZWluZyBzZWxlY3RlZCBhcyBhbiBob25vcmVlLCBzaWduaWZpY2FudGx5IGxvd2VyIHRoYW4gdG8gb3RoZXIgbmFtZXMgKCRcYmV0YV9cdGV4dHJte0Vhc3QgQXNpYW59ID0kIGByIHByaW50X3AoZ2V0X3AoMiwgJ2VzdGltYXRlJykpYCwgX1BfID0gYHIgcHJpbnRfcChnZXRfcCgyLCAncC52YWx1ZScpKWApLgpUaGUgdHdvIGdyb3VwcyBvZiBzY2llbnRpc3RzIGRpZCBub3QgaGF2ZSBhIHNpZ25pZmljYW50IGFzc29jaWF0aW9uIHdpdGggbmFtZXMgcHJlZGljdGVkIHRvIGJlIEV1cm9wZWFuIChfUF8gPSBgciBwcmludF9wKGdldF9wKDMsICdwLnZhbHVlJykpYCkgb3IgaW4gT3RoZXIgY2F0ZWdvcmllcyAoX1BfID0gYHIgcHJpbnRfcChnZXRfcCg0LCAncC52YWx1ZScpKWApLgoKCiMjIEFsdGVybmF0aXZlIGFwcHJvYWNoCl9TaW5jZXJlIHRoYW5rcyB0byB0aGUgcmV2aWV3ZXJzLCBCeXJvbiBTbWl0aCBhbmQgS2F0aWUgUG9sbGFyZCwgZm9yIHRoZWlyIGRldGFpbGVkIHN1Z2dlc3Rpb24gd2l0aCBjb2RlLl8KClRoZSBxdWVzdGlvbiBvZiB3aGF0IHVuaXQgb25lIHNob3VsZCB1c2UgdG8gcGVyZm9ybSB0aGlzIHR5cGUgb2YgYW5hbHlzZXMgaXMgYSBkaWZmaWN1bHQgb25lLgpXZSBwcmVzZW50IGhlcmUgYW4gYWx0ZXJuYXRpdmUgYW5hbHlzaXMgdGhhdCB0cmVhdHMgX25hbWVzXyBhcyB1bml0cyBpbnN0ZWFkIG9mIF9ob25vcnNfIGFuZCBfYXV0aG9yc2hpcHNfLgpXZSBjYXV0aW9uIHRoYXQgdGhpcyBhcHByb2FjaCBkb2VzIG5vdCBkaXN0aW5ndWlzaCBzY2llbnRpc3RzIHdobyB3ZXJlIGhvbm9yZWQgNCB0aW1lcyB2cy4gb25lIHRpbWUKYW5kIGhlbmNlIG1heSB5aWVsZCBhIGNvbnNlcnZhdGl2ZSBlc3RpbWF0ZSBvZiBkaXNwYXJpdHkuCkZ1cnRoZXIsIGRpZmZlcmVudCBhdXRob3JzIG1heSBoYXZlIHRoZSBzYW1lIG5hbWVzLCAKYW5kIHRvIHN1bSBgYWRqdXN0ZWRfY2l0YXRpb25zYCBhY3Jvc3MgdGhlbSBtYXkgbm90IGJlIG9wdGltYWwuCgpOb25ldGhlbGVzcywgdGhlIGZpbmRpbmcgaGVyZSBpcyBjb25zaXN0ZW50IHdpdGggd2hhdCB3ZSBoYXZlIHNlZW4gYWJvdmUKd2hlcmUgRWFzdCBBc2lhbiBuYW1lcyBhcmUgdW5kZXJyZXByZXNlbnRlZCBpbiB0aGUgaG9ub3JlZSBncm91cC4KCmBgYHtyfQoKa2V5bm90ZXNfcG9zdF8yMDAyIDwtIGtleW5vdGVzICU+JQogIGZpbHRlcih5ZWFyKHllYXIpID49IDIwMDIpICU+JQogIHNlcGFyYXRlX3Jvd3MoYWZmbGNvdW50cmllcywgc2VwID0gIiwiKSAlPiUKICBmaWx0ZXIoYWZmbGNvdW50cmllcyA9PSAiVW5pdGVkIFN0YXRlcyIpICU+JQogIGdyb3VwX2J5KGZvcmVfbmFtZV9zaW1wbGUsIGxhc3RfbmFtZV9zaW1wbGUpICU+JQogIHN1bW1hcmlzZV9hdCgieWVhciIsIG5fZGlzdGluY3QsIG5hLnJtID0gVCkKCiMgbmF0aW9uYWxpemVfZGYgd2FzIG5vdCB1bmlxdWUsIHNvIHRoZSBsZWZ0IGpvaW4gdG8gY29ycl9hdXRob3JzIHJlc3VsdGVkCiMgaW4gKG1vc3RseSkgZHVwbGljYXRlIHJvd3MuCiMgRklYTUU6IEkgd2FzIGdldHRpbmcgb2NjYXNpb25hbCBjcmFzaGVzIG9uIHRoaXMgbGluZSwgYW5kIGl0J3Mgc2xvdy4KIyBUUkFORzogZml4ZWQgb24gSnVuZSAzLCAyMDIxIHVzaW5nIGRpc3RpbmN0KCkuCiMgQWxzbywgdGhlIGR1cGxpY2F0aW9uIHdhcyBpbnRlbnRpb25hbC4KIyBQbGVhc2Ugc2VlIG91ciBleHRlbnNpdmUgZGlzY3Vzc2lvbiBvbiB0aGUgbWVyZ2Uvam9pbiBvbiBmdWxsIG5hbWVzIHZzCiMgZm9yZV9uYW1lIGFuZCBsYXN0X25hbWUgaGVyZToKIyA8aHR0cHM6Ly9naXRodWIuY29tL2dyZWVuZWxhYi9pc2NiLWRpdmVyc2l0eS9pc3N1ZXMvNj4KCmRpc3RpbmN0X25hdGlvbmFsaXplX2RmIDwtIG5hdGlvbmFsaXplX2RmICU+JQogIGRpc3RpbmN0KGZvcmVfbmFtZV9zaW1wbGUsIGxhc3RfbmFtZV9zaW1wbGUsIC5rZWVwX2FsbCA9IFRSVUUpCgojIENhbGN1bGF0ZSBzdW0gb2YgYWRqdXN0ZWQgY2l0YXRpb25zIGZvciBhbGwgcHVibGljYXRpb25zIGZvciBhIGZpcnN0LW5hbWUvCiMgbGFzdC1uYW1lIHBhaXIgaW4gZGIgc2luY2UgMjAwMgojIHdoZXJlIHRoZSBhdXRob3IgY291bnRyaWVzIGluY2x1ZGUgVVMuCmF1dGhvcnMgPC0gY29ycl9hdXRob3JzICU+JQogIGZpbHRlcih5ZWFyKHllYXIpID49IDIwMDIpICU+JQogIHNlcGFyYXRlX3Jvd3MoY291bnRyaWVzLCBzZXAgPSAiLCIpICU+JQogIGZpbHRlcihjb3VudHJpZXMgPT0gIlVTIikgJT4lCiAgZ3JvdXBfYnkoZm9yZV9uYW1lX3NpbXBsZSwgbGFzdF9uYW1lX3NpbXBsZSkgJT4lCiAgc3VtbWFyaXNlX2F0KHZhcnMoYWRqdXN0ZWRfY2l0YXRpb25zKSwgc3VtLCBuYS5ybSA9IFQpICU+JQogIGxlZnRfam9pbigKICAgIGtleW5vdGVzX3Bvc3RfMjAwMltjKCJmb3JlX25hbWVfc2ltcGxlIiwgImxhc3RfbmFtZV9zaW1wbGUiLCAieWVhciIpXSwKICAgIGJ5ID0gYygiZm9yZV9uYW1lX3NpbXBsZSIsICJsYXN0X25hbWVfc2ltcGxlIikKICApICU+JQogIGxlZnRfam9pbihkaXN0aW5jdF9uYXRpb25hbGl6ZV9kZiwgYnkgPSBjKCJmb3JlX25hbWVfc2ltcGxlIiwgImxhc3RfbmFtZV9zaW1wbGUiKSkgJT4lCiAgbXV0YXRlKE90aGVyQ2F0ZWdvcmllcyA9IFNvdXRoQXNpYW4gKyBIaXNwYW5pYyArIEpld2lzaCArIE11c2xpbSArIE5vcmRpYyArIEdyZWVrICsgQWZyaWNhbikKCmZvciAobGFyZ2VfcmVnaW9uIGluIGxhcmdlX3JlZ2lvbnMpIHsKICBnbG0oCiAgICBhcy5mb3JtdWxhKHBhc3RlKCJob25vcmVlIH4gYWRqdXN0ZWRfY2l0YXRpb25zICsiLCBsYXJnZV9yZWdpb24pKSwKICAgIGRhdGEgPSBhdXRob3JzICU+JSBtdXRhdGUoaG9ub3JlZSA9ICFpcy5uYSh5ZWFyKSksCiAgICBmYW1pbHkgPSAiYmlub21pYWwiLAogICAgY29udHJvbCA9IGxpc3QoZXBzaWxvbiA9IDFlLTEyLCBtYXhpdCA9IDU1LCB0cmFjZSA9IEZBTFNFKQogICkgJT4lCiAgICBicm9vbTo6dGlkeSgpICU+JQogICAgcHJpbnQoKQp9CmBgYAoKPCEtLSBXZSBhcmd1ZSB0aGF0IGhvbm9ycyBhbmQgYXV0aG9yc2hpcHMgYXJlIHRoZSBhcHByb3ByaWF0ZSB1bml0cy4gLS0+CjwhLS0gQWx0aG91Z2ggdGhpcyBhcHByb2FjaCBtYXkgbm90IHNhdGlzZnkgdGhlIGluZGVwZW5kZW50IGFuZCBpZGVudGljYWxseSBkaXN0cmlidXRlZCBhc3N1bXB0aW9uIC0tPgoKPCEtLSBob25vciB2cyBub3QgaG9ub3JlZC4gLS0+CjwhLS0gQnV0IHRoZW4gdGhpcyBpcyBjb25zaWRlcmluZyBzY2llbnRpc3RzIHdobyBoYXZlIDQgcm93cyBvZiBob25vcmVlcyBhcyBvbmUgIC0tPgo8IS0tIElzIHRoaXMgZmFpcj8gLS0+CjwhLS0gMTk1IHJvd3MvaG9ub3JzIG9mIGtleW5vdGVzIHBvc3QgMjAwMiB0byAxNDUgbmFtZXMvc2NpZW50aXN0cy4gLS0+CgojIyBUaW1lIGxhZwoKSW4gdGhpcyBzZWN0aW9uLCB3ZSBzaG93IHRoYXQgYSAxMC15ZWFyIGxhZyBtb2RlbCByZXN1bHRzIGluIGEgc2ltaWxhciByZXN1bHQgZm9yIEVhc3QgQXNpYW4gc2NpZW50aXN0cycgbmFtZXMsCmV2ZW4gdGhvdWdoIHRoZSBlZmZlY3Qgc2l6ZSBpcyBsZXNzIHN0cmlraW5nLgpGb3IgZXhhbXBsZSwgaWYgd2UgYXNzdW1lIHRoYXQgaG9ub3JzIGFjY3J1ZSAxMCB5ZWFycyBhZnRlciB0aGVpciBtb3N0IHByb2xpZmljIHllYXIgd2l0aCByZXNwZWN0IHRvIGF1dGhvcnNoaXBzLCAKdGhlIHByb3BvcnRpb24gb2YgaG9ub3IgYXNzb2NpYXRlZCB3aXRoIEVhc3QgQXNpYW4gbmFtZSBvcmlnaW5zIGluIDIwMTkgaXMgc3RpbGwgc3Vic3RhbnRpYWxseSBsZXNzIHRoYW4gdGhlIHByb3BvcnRpb24gb2Ygc2VuaW9yIGF1dGhvcnNoaXBzIGFzc29jaWF0ZWQgd2l0aCBFYXN0IEFzaWFuIG5hbWVzIGluIDIwMDkuCgpgYGB7cn0KeWVhcl9sYWcgPC0gcGVyaW9kKDEwLCAieWVhcnMiKQppc2NiX3B1Ym1lZF9vdGhfbGFnIDwtIGlzY2JfbmF0X2RmICU+JQogIHJlbmFtZSgiam91cm5hbCIgPSBjb25mZXJlbmNlKSAlPiUKICBzZWxlY3QoeWVhciwgam91cm5hbCwgQWZyaWNhbjpTb3V0aEFzaWFuLCBwdWJsaWNhdGlvbl9kYXRlKSAlPiUKICBtdXRhdGUoCiAgICB0eXBlID0gIktleW5vdGUgc3BlYWtlcnMvRmVsbG93cyIsCiAgICBhZGp1c3RlZF9jaXRhdGlvbnMgPSAxLAogICAgcG1pZCA9IC05OTk5CiAgKSAlPiUKICBiaW5kX3Jvd3MoCiAgICBwdWJtZWRfbmF0X2RmICU+JQogICAgICBzZWxlY3QocG1pZCwgeWVhciwgam91cm5hbCwgQWZyaWNhbjpTb3V0aEFzaWFuLCBwdWJsaWNhdGlvbl9kYXRlLCBhZGp1c3RlZF9jaXRhdGlvbnMpICU+JQogICAgICBtdXRhdGUodHlwZSA9ICJQdWJtZWQgYXV0aG9ycyIsIHllYXIgPSB5ZWFyICsgeWVhcl9sYWcpCiAgKSAlPiUKICBtdXRhdGUoT3RoZXJDYXRlZ29yaWVzID0gU291dGhBc2lhbiArIEhpc3BhbmljICsgSmV3aXNoICsgTXVzbGltICsgTm9yZGljICsgR3JlZWsgKyBBZnJpY2FuKSAlPiUKICBwaXZvdF9sb25nZXIoYyhBZnJpY2FuOlNvdXRoQXNpYW4sIE90aGVyQ2F0ZWdvcmllcyksCiAgICBuYW1lc190byA9ICJyZWdpb24iLAogICAgdmFsdWVzX3RvID0gInByb2JhYmlsaXRpZXMiCiAgKSAlPiUKICBmaWx0ZXIoIWlzLm5hKHByb2JhYmlsaXRpZXMpLCB5ZWFyKHllYXIpID49IDIwMDIpICU+JQogIGdyb3VwX2J5KHR5cGUsIHllYXIsIHJlZ2lvbikgJT4lCiAgbXV0YXRlKAogICAgcG1jX2NpdGF0aW9uc195ZWFyID0gbWVhbihhZGp1c3RlZF9jaXRhdGlvbnMpLAogICAgd2VpZ2h0ID0gYWRqdXN0ZWRfY2l0YXRpb25zIC8gcG1jX2NpdGF0aW9uc195ZWFyLAogICAgd2VpZ2h0ZWRfcHJvYnMgPSBwcm9iYWJpbGl0aWVzICogd2VpZ2h0CiAgKQoKaXNjYl9sbV9sYWcgPC0gaXNjYl9wdWJtZWRfb3RoX2xhZyAlPiUKICB1bmdyb3VwKCkgJT4lCiAgbXV0YXRlKHR5cGUgPSBhcy5mYWN0b3IodHlwZSkgJT4lIHJlbGV2ZWwocmVmID0gIlB1Ym1lZCBhdXRob3JzIikpCgptYWluX2xtIDwtIGZ1bmN0aW9uKHJlZ2lvbmkpIHsKICBnbG0odHlwZSB+IHllYXIgKyB3ZWlnaHRlZF9wcm9icywKICAgIGRhdGEgPSBpc2NiX2xtX2xhZyAlPiUKICAgICAgZmlsdGVyKHJlZ2lvbiA9PSByZWdpb25pLCAhaXMubmEod2VpZ2h0ZWRfcHJvYnMpKSwKICAgIGZhbWlseSA9ICJiaW5vbWlhbCIKICApCn0KCm1haW5fbGlzdCA8LSBsYXBwbHkobGFyZ2VfcmVnaW9ucywgbWFpbl9sbSkKbmFtZXMobWFpbl9saXN0KSA8LSBsYXJnZV9yZWdpb25zCmxhcHBseShtYWluX2xpc3QsIGJyb29tOjp0aWR5KQpgYGAKCmBgYHtyIGluY2x1ZGU9RkFMU0UsIGV2YWwgPSBGQUxTRX0KY2hlY2tkZiA8LSBpc2NiX2xtICU+JQogIGZpbHRlcigKICAgIHllYXIoeWVhcikgPT0gMjAxMCwKICAgIGFkanVzdGVkX2NpdGF0aW9ucyA+IDMuMSwgCiAgICBhZGp1c3RlZF9jaXRhdGlvbnMgPCAzLjMyLCAKICAgIHJlZ2lvbiA9PSAiRWFzdEFzaWFuIiwgCiAgICBwcm9iYWJpbGl0aWVzID4gMC41CiAgKQpgYGAKCgojIyBTdXBwbGVtZW50YXJ5IEZpZ3VyZSBTNSB7I3N1cF9maWdfczV9Ckl0J3MgZGlmZmljdWx0IHRvIGNvbWUgdG8gYSBjb25jbHVzaW9uIGZvciBvdGhlciByZWdpb25zIHdpdGggc28gZmV3IGRhdGEgcG9pbnRzIGFuZCB0aGUgaW1wZXJmZWN0IGFjY3VyYWN5IG9mIG91ciBwcmVkaWN0aW9uLgpUaGVyZSBzZWVtcyB0byBiZSBsaXR0bGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSBwcm9wb3J0aW9uIG9mIGtleW5vdGUgc3BlYWtlcnMgb2YgQWZyaWNhbiwgQXJhYmljLCBTb3V0aCBBc2lhbiBhbmQgSGlzcGFuaWMgb3JpZ2luIHRoYW4gdGhvc2UgaW4gdGhlIGZpZWxkLgpIb3dldmVyLCBqdXN0IGJlY2F1c2UgYSBuYXRpb25hbGl0eSBpc24ndCB1bmRlcnJlcHJlc2VudGVkIGFnYWluc3QgdGhlIGZpZWxkIGRvZXNuJ3QgbWVhbiBzY2llbnRpc3RzIGZyb20gdGhhdCBuYXRpb25hbGl0eSBhcmUgYXBwcm9wcmlhdGVseSByZXByZXNlbnRlZC4KCmBgYHtyIGZpZy5oZWlnaHQ9Niwgd2FybmluZz1GQUxTRX0KIyBkZjIgPC0gaXNjYl9wdWJtZWRfb3RoICU+JQojICAgZmlsdGVyKHJlZ2lvbiAhPSAiT3RoZXJDYXRlZ29yaWVzIikgJT4lCiMgICByZWNvZGVfcmVnaW9uKCkKIyAKIyBmaWdfczUgPC0gaXNjYl9wdWJtZWRfc3VtICU+JQojICAgcmVjb2RlX3JlZ2lvbigpICU+JQojICAgZ2FtX2FuZF9jaSgKIyAgICAgZGYyID0gZGYyLAojICAgICBzdGFydF95ID0gc3RhcnRfeWVhciwgZW5kX3kgPSBlbmRfeWVhcgojICAgKSArCiMgICB0aGVtZShsZWdlbmQucG9zaXRpb24gPSBjKDAuOCwgMC4xKSkgKwojICAgZmFjZXRfd3JhcCh2YXJzKGZjdF9yZWxldmVsKHJlZ2lvbiwgcmVnaW9uX2xldmVscykpLCBuY29sID0gMykKIyBmaWdfczUKIyBnZ3NhdmUoImZpZ3MvZmlnX3M1LnBuZyIsIGZpZ19zNSwgd2lkdGggPSA2LCBoZWlnaHQgPSA2KQojIGdnc2F2ZSgiZmlncy9maWdfczUuc3ZnIiwgZmlnX3M1LCB3aWR0aCA9IDYsIGhlaWdodCA9IDYpCmBgYAoKCmBgYHtyfQpzZXNzaW9uSW5mbygpCmBgYAo=
+
LS0tCnRpdGxlOiAiUmVwcmVzZW50YXRpb24gYW5hbHlzaXMgb2YgbmFtZSBvcmlnaW5zIgotLS0KCmBgYHtyIHNldHVwLCBpbmNsdWRlPUZBTFNFfQpsaWJyYXJ5KHRpZHl2ZXJzZSkKbGlicmFyeShsdWJyaWRhdGUpCmxpYnJhcnkocm5hdHVyYWxlYXJ0aCkKc291cmNlKCJ1dGlscy9yLXV0aWxzLlIiKQp0aGVtZV9zZXQodGhlbWVfYncoKSArIHRoZW1lKGxlZ2VuZC50aXRsZSA9IGVsZW1lbnRfYmxhbmsoKSkpCmBgYAoKT25seSBrZWVwIGFydGljbGVzIGZyb20gMjAwMiBiZWNhdXNlIGZldyBhdXRob3JzIGhhZCBuYXRpb25hbGl0eSBwcmVkaWN0aW9ucyBiZWZvcmUgMjAwMiAobW9zdGx5IGR1ZSB0byBtaXNzaW5nIG1ldGFkYXRhKS4KU2VlIFswOTMuc3VtbWFyeS1zdGF0c10oZG9jcy8wOTMuc3VtbWFyeS1zdGF0cy5odG1sKSBmb3IgbW9yZSBkZXRhaWxzLgoKYGBge3J9CmFscGhhX3RocmVzaG9sZCA8LSBxbm9ybSgwLjk3NSkKbG9hZCgiUmRhdGEvcmF3cy5SZGF0YSIpCgpwdWJtZWRfbmF0X2RmIDwtIGNvcnJfYXV0aG9ycyAlPiUKICBmaWx0ZXIoeWVhcih5ZWFyKSA+PSAyMDAyKSAlPiUKICBsZWZ0X2pvaW4obmF0aW9uYWxpemVfZGYsIGJ5ID0gYygiZm9yZV9uYW1lIiwgImxhc3RfbmFtZSIpKSAlPiUKICBncm91cF9ieShwbWlkLCBqb3VybmFsLCBwdWJsaWNhdGlvbl9kYXRlLCB5ZWFyLCBhZGp1c3RlZF9jaXRhdGlvbnMpICU+JQogIHN1bW1hcmlzZV9hdCh2YXJzKEFmcmljYW46U291dGhBc2lhbiksIG1lYW4sIG5hLnJtID0gVCkgJT4lCiAgdW5ncm91cCgpCgppc2NiX25hdF9kZiA8LSBrZXlub3RlcyAlPiUKICBsZWZ0X2pvaW4obmF0aW9uYWxpemVfZGYsIGJ5ID0gYygiZm9yZV9uYW1lIiwgImxhc3RfbmFtZSIpKQoKc3RhcnRfeWVhciA8LSAxOTkyCmVuZF95ZWFyIDwtIDIwMTkKbl95ZWFycyA8LSBlbmRfeWVhciAtIHN0YXJ0X3llYXIKbXlfam91cnMgPC0gdW5pcXVlKHB1Ym1lZF9uYXRfZGYkam91cm5hbCkKbXlfY29uZnMgPC0gdW5pcXVlKGlzY2JfbmF0X2RmJGNvbmZlcmVuY2UpCm5fam91cnMgPC0gbGVuZ3RoKG15X2pvdXJzKQpuX2NvbmZzIDwtIGxlbmd0aChteV9jb25mcykKcmVnaW9uX2xldmVscyA8LSBwYXN0ZShjKCJDZWx0aWMvRW5nbGlzaCIsICJFdXJvcGVhbiIsICJFYXN0IEFzaWFuIiwgIkhpc3BhbmljIiwgIlNvdXRoIEFzaWFuIiwgIkFyYWJpYyIsICJIZWJyZXciLCAiQWZyaWNhbiIsICJOb3JkaWMiLCAiR3JlZWsiKSwgIm5hbWVzIikKcmVnaW9uX2xldmVsc19sZXQgPC0gdG91cHBlcihsZXR0ZXJzWzE6OF0pCnJlZ2lvbl9jb2xzIDwtIGMoIiNmZmZmYjMiLCAiI2ZjY2RlNSIsICIjYjNkZTY5IiwgIiNmZGI0NjIiLCAiIzgwYjFkMyIsICIjOGRkM2M3IiwgIiNiZWJhZGEiLCAiI2ZiODA3MiIsICIjYmM4MGJkIiwgIiNjY2ViYzUiKQpgYGAKCk5hbWVzIGdyb3VwaW5nOgpgYGB7ciB3YXJuaW5nPUZBTFNFLCBmaWcuaGVpZ2h0ID0gM30Kb3VyX2NvdW50cnlfbWFwIDwtIHJlYWRfdHN2KCJodHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vZ3JlZW5lbGFiL3dpa2ktbmF0aW9uYWxpdHktZXN0aW1hdGUvN2MyMmQwYTVmNjYxY2U1YWViNzg1MjE1MDk1ZGVkYTQwOTczZmYxNy9kYXRhL2NvdW50cnlfdG9fcmVnaW9uX05hbWVQcmlzbS50c3YiKSAlPiUKICByZW5hbWUoInJlZ2lvbiIgPSBSZWdpb24pICU+JQogIHJlY29kZV9yZWdpb24oKQoKbXlfd29ybGQgPC0gd29ybGQgJT4lCiAgc2VsZWN0KC1nZW9tZXRyeSkgJT4lCiAgcmVuYW1lKENvdW50cnkgPSAibmFtZSIpICU+JQogIGxlZnRfam9pbihvdXJfY291bnRyeV9tYXAsIGJ5ID0gIkNvdW50cnkiKQoKKGd3b3JsZCA8LSBnZ3Bsb3QoZGF0YSA9IG15X3dvcmxkKSArCiAgZ2VvbV9zZihhZXMoZmlsbCA9IGZjdF9yZWxldmVsKHJlZ2lvbiwgcmVnaW9uX2xldmVscykpKSArCiAgY29vcmRfc2YoY3JzID0gIitwcm9qPWVxZWFydGggK3drdGV4dCIpICsKICBzY2FsZV9maWxsX21hbnVhbCgKICAgIHZhbHVlcyA9IHJlZ2lvbl9jb2xzLAogICAgbmEudHJhbnNsYXRlID0gRkFMU0UKICApICsKICB0aGVtZSgKICAgIHBhbmVsLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbCA9ICJhenVyZSIpLAogICAgbGVnZW5kLnRpdGxlID0gZWxlbWVudF9ibGFuaygpLAogICAgbGVnZW5kLnBvc2l0aW9uID0gImJvdHRvbSIsCiAgICBwYW5lbC5ib3JkZXIgPSBlbGVtZW50X3JlY3QoZmlsbCA9IE5BKQogICkpCgpnZ3NhdmUoImZpZ3MvMjAyMC0wMS0zMV9ncm91cGluZ3MucG5nIiwgZ3dvcmxkLCB3aWR0aCA9IDcuMiwgaGVpZ2h0ID0gNC4zKQpnZ3NhdmUoImZpZ3MvMjAyMC0wMS0zMV9ncm91cGluZ3Muc3ZnIiwgZ3dvcmxkLCB3aWR0aCA9IDcuMiwgaGVpZ2h0ID0gNC4zKQpgYGAKCgojIyBEZXNjcmlwdGl2ZSBzdGF0aXN0aWNzClByZXBhcmUgZGF0YSBmcmFtZXMgZm9yIGxhdGVyIGFuYWx5c2VzOgoKLSByYmluZCByZXN1bHRzIG9mIHJhY2UgcHJlZGljdGlvbnMgaW4gaXNjYiBhbmQgUHVibWVkCi0gcGl2b3QgbG9uZwotIGNvbXB1dGUgbWVhbiwgc2QsIG1hcmdpbmFsIGVycm9yCgpgYGB7cn0KaXNjYl9wdWJtZWRfb3RoIDwtIGlzY2JfbmF0X2RmICU+JQogIHJlbmFtZSgiam91cm5hbCIgPSBjb25mZXJlbmNlKSAlPiUKICBzZWxlY3QoeWVhciwgam91cm5hbCwgQWZyaWNhbjpTb3V0aEFzaWFuLCBwdWJsaWNhdGlvbl9kYXRlKSAlPiUKICBtdXRhdGUoCiAgICB0eXBlID0gIktleW5vdGUgc3BlYWtlcnMvRmVsbG93cyIsCiAgICBhZGp1c3RlZF9jaXRhdGlvbnMgPSAxLAogICAgcG1pZCA9IC05OTk5CiAgKSAlPiUKICBiaW5kX3Jvd3MoCiAgICBwdWJtZWRfbmF0X2RmICU+JQogICAgICBzZWxlY3QocG1pZCwgeWVhciwgam91cm5hbCwgQWZyaWNhbjpTb3V0aEFzaWFuLCBwdWJsaWNhdGlvbl9kYXRlLCBhZGp1c3RlZF9jaXRhdGlvbnMpICU+JQogICAgICBtdXRhdGUodHlwZSA9ICJQdWJtZWQgYXV0aG9ycyIpCiAgKSAlPiUKICBtdXRhdGUoT3RoZXJDYXRlZ29yaWVzID0gU291dGhBc2lhbiArIEhpc3BhbmljICsgSmV3aXNoICsgTXVzbGltICsgTm9yZGljICsgR3JlZWsgKyBBZnJpY2FuKSAlPiUKICBwaXZvdF9sb25nZXIoYyhBZnJpY2FuOlNvdXRoQXNpYW4sIE90aGVyQ2F0ZWdvcmllcyksCiAgICBuYW1lc190byA9ICJyZWdpb24iLAogICAgdmFsdWVzX3RvID0gInByb2JhYmlsaXRpZXMiCiAgKSAlPiUKICBmaWx0ZXIoIWlzLm5hKHByb2JhYmlsaXRpZXMpKSAlPiUKICBncm91cF9ieSh0eXBlLCB5ZWFyLCByZWdpb24pCgppc2NiX3B1Ym1lZF9zdW1fb3RoIDwtIGlzY2JfcHVibWVkX290aCAlPiUKICBzdW1tYXJpc2UoCiAgICBtZWFuX3Byb2IgPSBtZWFuKHByb2JhYmlsaXRpZXMpLAogICAgc2VfcHJvYiA9IHNkKHByb2JhYmlsaXRpZXMpL3NxcnQobigpKSwKICAgIG1lX3Byb2IgPSBhbHBoYV90aHJlc2hvbGQgKiBzZV9wcm9iLAogICAgLmdyb3VwcyA9ICJkcm9wIgogICkKCmlzY2JfcHVibWVkX3N1bSA8LSBpc2NiX3B1Ym1lZF9zdW1fb3RoICU+JQogIGZpbHRlcihyZWdpb24gIT0gIk90aGVyQ2F0ZWdvcmllcyIpCmBgYAoKIyMgUHJlcGFyZSBkYXRhIGZyYW1lcyBmb3IgYW5hbHlzaXMKCiMjIyBCeSBjb25mZXJlbmNlIGtleW5vdGVzL2ZlbGxvd3MKYGBge3IgZmlnLmhlaWdodD02fQppIDwtIDAKaXNjYl9uYXQgPC0gdmVjdG9yKCJsaXN0IiwgbGVuZ3RoID0gbl9jb25mcykKCmZvciAoY29uZiBpbiBteV9jb25mcykgewogIGkgPC0gaSArIDEKICBpc2NiX25hdFtbaV1dIDwtIGlzY2JfcHVibWVkX290aCAlPiUKICAgIGZpbHRlcihyZWdpb24gIT0gIk90aGVyQ2F0ZWdvcmllcyIsIHR5cGUgIT0gIlB1Ym1lZCBhdXRob3JzIiAmIGpvdXJuYWwgPT0gY29uZikgJT4lCiAgICBncm91cF9ieSh0eXBlLCB5ZWFyLCByZWdpb24sIGpvdXJuYWwpICU+JQogICAgc3VtbWFyaXNlKG1lYW5fcHJvYiA9IG1lYW4ocHJvYmFiaWxpdGllcyksIC5ncm91cHMgPSAiZHJvcCIpCn0KYGBgCgpgYGB7cn0Kc2F2ZShteV93b3JsZCwgaXNjYl9wdWJtZWRfb3RoLCBpc2NiX25hdCwgZmlsZSA9ICJSZGF0YS9pc2NiLXB1Ym1lZF9uYXQuUmRhdGEiKQpgYGAKCiMjIEZpZ3VyZXMgZm9yIHBhcGVyCgojIyMgRmlndXJlIDQKCkNvbXBhcmVkIHRvIHRoZSBuYW1lIGNvbGxlY3Rpb24gb2YgUHVibWVkIGF1dGhvcnMsIGhvbm9yZWVzIHdpdGggQ2VsdGljL0VuZ2xpc2ggbmFtZXMgYXJlIG92ZXJyZXByZXNlbnRlZCB3aGlsZSBob25vcmVlcyB3aXRoIEVhc3QgQXNpYW4gbmFtZXMgYXJlIHVuZGVycmVwcmVzZW50ZWQuCgpgYGB7ciBmaWcuaGVpZ2h0PTcsIGZpZy53aWR0aD05LCB3YXJuaW5nPUZBTFNFfQpmaWdfNGEgPC0gaXNjYl9wdWJtZWRfc3VtICU+JQogIGZpbHRlcih5ZWFyIDwgIjIwMjAtMDEtMDEiKSAlPiUKICByZWdpb25fYnJlYWtkb3duKCJtYWluIiwgcmVnaW9uX2xldmVscywgZmN0X3Jldih0eXBlKSkgKwogIGd1aWRlcyhmaWxsID0gZ3VpZGVfbGVnZW5kKG5yb3cgPSAyKSkgKwogIHRoZW1lKGxlZ2VuZC5wb3NpdGlvbiA9ICJib3R0b20iKQoKbGFyZ2VfcmVnaW9ucyA8LSBjKCJDZWx0aWNFbmdsaXNoIiwgIkVhc3RBc2lhbiIsICJFdXJvcGVhbiIsICJPdGhlckNhdGVnb3JpZXMiKQojIyBNZWFuIGFuZCBzdGFuZGFyZCBkZXZpYXRpb24gb2YgcHJlZGljdGVkIHByb2JhYmlsaXRpZXM6CmZpZ180YiA8LSBpc2NiX3B1Ym1lZF9zdW1fb3RoICU+JQogIGZpbHRlcihyZWdpb24gJWluJSBsYXJnZV9yZWdpb25zKSAlPiUKICByZWNvZGVfcmVnaW9uKCkgJT4lCiAgZ2FtX2FuZF9jaSgKICAgIGRmMiA9IGlzY2JfcHVibWVkX290aCAlPiUKICAgICAgZmlsdGVyKHJlZ2lvbiAlaW4lIGxhcmdlX3JlZ2lvbnMpICU+JQogICAgICByZWNvZGVfcmVnaW9uKCksCiAgICBzdGFydF95ID0gc3RhcnRfeWVhciwgZW5kX3kgPSBlbmRfeWVhcgogICkgKwogIHRoZW1lKAogICAgbGVnZW5kLnBvc2l0aW9uID0gYygwLjg4LCAwLjgzKSwKICAgIHBhbmVsLmdyaWQubWlub3IgPSBlbGVtZW50X2JsYW5rKCksCiAgICBsZWdlbmQubWFyZ2luID0gbWFyZ2luKC0wLjUsIDAsIDAsIDAsIHVuaXQgPSAiY20iKSwKICAgIGxlZ2VuZC50ZXh0ID0gZWxlbWVudF90ZXh0KHNpemUgPSA3KQogICkgKwogIGZhY2V0X3dyYXAodmFycyhmY3RfcmVsZXZlbChyZWdpb24sIGxhcmdlX3JlZ2lvbnMpKSwgbnJvdyA9IDEpCgpmaWdfNCA8LSBjb3dwbG90OjpwbG90X2dyaWQoZmlnXzRhLCBmaWdfNGIsIGxhYmVscyA9ICJBVVRPIiwgbmNvbCA9IDEsIHJlbF9oZWlnaHRzID0gYygxLjMsIDEpKQpmaWdfNApnZ3NhdmUoImZpZ3MvcmVnaW9uX2JyZWFrZG93bi5wbmciLCBmaWdfNCwgd2lkdGggPSA2LjcsIGhlaWdodCA9IDUuNSwgZHBpID0gNjAwKQpnZ3NhdmUoImZpZ3MvcmVnaW9uX2JyZWFrZG93bi5zdmciLCBmaWdfNCwgd2lkdGggPSA2LjcsIGhlaWdodCA9IDUuNSkKYGBgCgoKIyMgSHlwb3RoZXNpcyB0ZXN0aW5nCgpgYGB7cn0KaXNjYl9sbSA8LSBpc2NiX3B1Ym1lZF9vdGggJT4lCiAgdW5ncm91cCgpICU+JQogIG11dGF0ZSgKICAgICMgeWVhciA9IGMoc2NhbGUoeWVhcih5ZWFyKSkpLAogICAgIyB5ZWFyID0gYXMuZmFjdG9yKHllYXIpLAogICAgdHlwZSA9IGFzLmZhY3Rvcih0eXBlKSAlPiUgcmVsZXZlbChyZWYgPSAiUHVibWVkIGF1dGhvcnMiKQogICkKbWFpbl9sbSA8LSBmdW5jdGlvbihyZWdpb25pKSB7CiAgZ2xtKHR5cGUgfiB5ZWFyICsgcHJvYmFiaWxpdGllcywKICAgIGRhdGEgPSBpc2NiX2xtICU+JQogICAgICBmaWx0ZXIocmVnaW9uID09IHJlZ2lvbmksICFpcy5uYShwcm9iYWJpbGl0aWVzKSwgeWVhcih5ZWFyKSA+PSAyMDAyKSwKICAgIGZhbWlseSA9ICJiaW5vbWlhbCIKICApCn0KCmludGVfbG0gPC0gZnVuY3Rpb24ocmVnaW9uaSkgewogIGdsbSh0eXBlIH4geWVhciAqIHByb2JhYmlsaXRpZXMsCiAgICBkYXRhID0gaXNjYl9sbSAlPiUKICAgICAgZmlsdGVyKHJlZ2lvbiA9PSByZWdpb25pLCAhaXMubmEocHJvYmFiaWxpdGllcyksIHllYXIoeWVhcikgPj0gMjAwMiksCiAgICBmYW1pbHkgPSAiYmlub21pYWwiCiAgKQp9CgptYWluX2xpc3QgPC0gbGFwcGx5KGxhcmdlX3JlZ2lvbnMsIG1haW5fbG0pCm5hbWVzKG1haW5fbGlzdCkgPC0gbGFyZ2VfcmVnaW9ucwpsYXBwbHkobWFpbl9saXN0LCBicm9vbTo6dGlkeSkKCmludGVfbGlzdCA8LSBsYXBwbHkobGFyZ2VfcmVnaW9ucywgaW50ZV9sbSkKbGFwcGx5KGludGVfbGlzdCwgYnJvb206OnRpZHkpCmZvciAoaSBpbiAxOjQpIHsKICBwcmludChhbm92YShtYWluX2xpc3RbW2ldXSwgaW50ZV9saXN0W1tpXV0sIHRlc3QgPSAiQ2hpc3EiKSkKfQpgYGAKSW50ZXJhY3Rpb24gdGVybXMgZG8gbm90IHByZWRpY3QgYHR5cGVgIG92ZXIgYW5kIGFib3ZlIHRoZSBtYWluIGVmZmVjdCBvZiBuYW1lIG9yaWdpbiBwcm9iYWJpbGl0eSBhbmQgeWVhciAoX3BfID4gMC4wMSkuCgpgYGB7ciBlY2hvID0gRn0KZ2V0X3AgPC0gZnVuY3Rpb24oaSwgY29sdSkgewogIGJyb29tOjp0aWR5KG1haW5fbGlzdFtbaV1dKSAlPiUKICAgIGZpbHRlcih0ZXJtID09ICJwcm9iYWJpbGl0aWVzIikgJT4lCiAgICBwdWxsKGNvbHUpCn0KCnByaW50X3AgPC0gZnVuY3Rpb24oeCkgc3ByaW50ZigiJTAuNWciLCB4KQpgYGAKCiMjIENvbmNsdXNpb24KQSBDZWx0aWMvRW5nbGlzaCBuYW1lIGhhcyBgciBleHAoZ2V0X3AoMSwgJ2VzdGltYXRlJykpYCB0aGUgb2RkcyBvZiBiZWluZyBzZWxlY3RlZCBhcyBhbiBob25vcmVlLCBzaWduaWZpY2FudGx5IGhpZ2hlciBjb21wYXJlZCB0byBvdGhlciBuYW1lcyAoJFxiZXRhX1x0ZXh0cm17Q2VsdGljL0VuZ2xpc2h9ID0kIGByIHByaW50X3AoZ2V0X3AoMSwgJ2VzdGltYXRlJykpYCwgX1BfID0gYHIgcHJpbnRfcChnZXRfcCgxLCAncC52YWx1ZScpKWApLgpBbiBFYXN0IEFzaWFuIG5hbWUgaGFzIGByIGV4cChnZXRfcCgyLCAnZXN0aW1hdGUnKSlgIHRoZSBvZGRzIG9mIGJlaW5nIHNlbGVjdGVkIGFzIGFuIGhvbm9yZWUsIHNpZ25pZmljYW50bHkgbG93ZXIgdGhhbiB0byBvdGhlciBuYW1lcyAoJFxiZXRhX1x0ZXh0cm17RWFzdCBBc2lhbn0gPSQgYHIgcHJpbnRfcChnZXRfcCgyLCAnZXN0aW1hdGUnKSlgLCBfUF8gPSBgciBwcmludF9wKGdldF9wKDIsICdwLnZhbHVlJykpYCkuClRoZSB0d28gZ3JvdXBzIG9mIHNjaWVudGlzdHMgZGlkIG5vdCBoYXZlIGEgc2lnbmlmaWNhbnQgYXNzb2NpYXRpb24gd2l0aCBuYW1lcyBwcmVkaWN0ZWQgdG8gYmUgRXVyb3BlYW4gKF9QXyA9IGByIHByaW50X3AoZ2V0X3AoMywgJ3AudmFsdWUnKSlgKSBvciBpbiBPdGhlciBjYXRlZ29yaWVzIChfUF8gPSBgciBwcmludF9wKGdldF9wKDQsICdwLnZhbHVlJykpYCkuCgoKIyMgQWx0ZXJuYXRpdmUgYXBwcm9hY2gKX1NpbmNlcmUgdGhhbmtzIHRvIHRoZSByZXZpZXdlcnMsIEJ5cm9uIFNtaXRoIGFuZCBLYXRpZSBQb2xsYXJkLCBmb3IgdGhlaXIgZGV0YWlsZWQgc3VnZ2VzdGlvbiB3aXRoIGNvZGUuXwoKVGhlIHF1ZXN0aW9uIG9mIHdoYXQgdW5pdCBvbmUgc2hvdWxkIHVzZSB0byBwZXJmb3JtIHRoaXMgdHlwZSBvZiBhbmFseXNlcyBpcyBhIGRpZmZpY3VsdCBvbmUuCldlIHByZXNlbnQgaGVyZSBhbiBhbHRlcm5hdGl2ZSBhbmFseXNpcyB0aGF0IHRyZWF0cyBfbmFtZXNfIGFzIHVuaXRzIGluc3RlYWQgb2YgX2hvbm9yc18gYW5kIF9hdXRob3JzaGlwc18uCldlIGNhdXRpb24gdGhhdCB0aGlzIGFwcHJvYWNoIGRvZXMgbm90IGRpc3Rpbmd1aXNoIHNjaWVudGlzdHMgd2hvIHdlcmUgaG9ub3JlZCA0IHRpbWVzIHZzLiBvbmUgdGltZQphbmQgaGVuY2UgbWF5IHlpZWxkIGEgY29uc2VydmF0aXZlIGVzdGltYXRlIG9mIGRpc3Bhcml0eS4KRnVydGhlciwgZGlmZmVyZW50IGF1dGhvcnMgbWF5IGhhdmUgdGhlIHNhbWUgbmFtZXMsIAphbmQgdG8gc3VtIGBhZGp1c3RlZF9jaXRhdGlvbnNgIGFjcm9zcyB0aGVtIG1heSBub3QgYmUgb3B0aW1hbC4KCk5vbmV0aGVsZXNzLCB0aGUgZmluZGluZyBoZXJlIGlzIGNvbnNpc3RlbnQgd2l0aCB3aGF0IHdlIGhhdmUgc2VlbiBhYm92ZQp3aGVyZSBFYXN0IEFzaWFuIG5hbWVzIGFyZSB1bmRlcnJlcHJlc2VudGVkIGluIHRoZSBob25vcmVlIGdyb3VwLgoKYGBge3J9CgprZXlub3Rlc19wb3N0XzIwMDIgPC0ga2V5bm90ZXMgJT4lCiAgZmlsdGVyKHllYXIoeWVhcikgPj0gMjAwMikgJT4lCiAgc2VwYXJhdGVfcm93cyhhZmZsY291bnRyaWVzLCBzZXAgPSAiLCIpICU+JQogIGZpbHRlcihhZmZsY291bnRyaWVzID09ICJVbml0ZWQgU3RhdGVzIikgJT4lCiAgZ3JvdXBfYnkoZm9yZV9uYW1lX3NpbXBsZSwgbGFzdF9uYW1lX3NpbXBsZSkgJT4lCiAgc3VtbWFyaXNlX2F0KCJ5ZWFyIiwgbl9kaXN0aW5jdCwgbmEucm0gPSBUKQoKIyBuYXRpb25hbGl6ZV9kZiB3YXMgbm90IHVuaXF1ZSwgc28gdGhlIGxlZnQgam9pbiB0byBjb3JyX2F1dGhvcnMgcmVzdWx0ZWQKIyBpbiAobW9zdGx5KSBkdXBsaWNhdGUgcm93cy4KIyBGSVhNRTogSSB3YXMgZ2V0dGluZyBvY2Nhc2lvbmFsIGNyYXNoZXMgb24gdGhpcyBsaW5lLCBhbmQgaXQncyBzbG93LgojIFRSQU5HOiBmaXhlZCBvbiBKdW5lIDMsIDIwMjEgdXNpbmcgZGlzdGluY3QoKS4KIyBBbHNvLCB0aGUgZHVwbGljYXRpb24gd2FzIGludGVudGlvbmFsLgojIFBsZWFzZSBzZWUgb3VyIGV4dGVuc2l2ZSBkaXNjdXNzaW9uIG9uIHRoZSBtZXJnZS9qb2luIG9uIGZ1bGwgbmFtZXMgdnMKIyBmb3JlX25hbWUgYW5kIGxhc3RfbmFtZSBoZXJlOgojIDxodHRwczovL2dpdGh1Yi5jb20vZ3JlZW5lbGFiL2lzY2ItZGl2ZXJzaXR5L2lzc3Vlcy82PgoKZGlzdGluY3RfbmF0aW9uYWxpemVfZGYgPC0gbmF0aW9uYWxpemVfZGYgJT4lCiAgZGlzdGluY3QoZm9yZV9uYW1lX3NpbXBsZSwgbGFzdF9uYW1lX3NpbXBsZSwgLmtlZXBfYWxsID0gVFJVRSkKCiMgQ2FsY3VsYXRlIHN1bSBvZiBhZGp1c3RlZCBjaXRhdGlvbnMgZm9yIGFsbCBwdWJsaWNhdGlvbnMgZm9yIGEgZmlyc3QtbmFtZS8KIyBsYXN0LW5hbWUgcGFpciBpbiBkYiBzaW5jZSAyMDAyCiMgd2hlcmUgdGhlIGF1dGhvciBjb3VudHJpZXMgaW5jbHVkZSBVUy4KYXV0aG9ycyA8LSBjb3JyX2F1dGhvcnMgJT4lCiAgZmlsdGVyKHllYXIoeWVhcikgPj0gMjAwMikgJT4lCiAgc2VwYXJhdGVfcm93cyhjb3VudHJpZXMsIHNlcCA9ICIsIikgJT4lCiAgZmlsdGVyKGNvdW50cmllcyA9PSAiVVMiKSAlPiUKICBncm91cF9ieShmb3JlX25hbWVfc2ltcGxlLCBsYXN0X25hbWVfc2ltcGxlKSAlPiUKICBzdW1tYXJpc2VfYXQodmFycyhhZGp1c3RlZF9jaXRhdGlvbnMpLCBzdW0sIG5hLnJtID0gVCkgJT4lCiAgbGVmdF9qb2luKAogICAga2V5bm90ZXNfcG9zdF8yMDAyW2MoImZvcmVfbmFtZV9zaW1wbGUiLCAibGFzdF9uYW1lX3NpbXBsZSIsICJ5ZWFyIildLAogICAgYnkgPSBjKCJmb3JlX25hbWVfc2ltcGxlIiwgImxhc3RfbmFtZV9zaW1wbGUiKQogICkgJT4lCiAgbGVmdF9qb2luKGRpc3RpbmN0X25hdGlvbmFsaXplX2RmLCBieSA9IGMoImZvcmVfbmFtZV9zaW1wbGUiLCAibGFzdF9uYW1lX3NpbXBsZSIpKSAlPiUKICBtdXRhdGUoT3RoZXJDYXRlZ29yaWVzID0gU291dGhBc2lhbiArIEhpc3BhbmljICsgSmV3aXNoICsgTXVzbGltICsgTm9yZGljICsgR3JlZWsgKyBBZnJpY2FuKQoKZm9yIChsYXJnZV9yZWdpb24gaW4gbGFyZ2VfcmVnaW9ucykgewogIGdsbSgKICAgIGFzLmZvcm11bGEocGFzdGUoImhvbm9yZWUgfiBhZGp1c3RlZF9jaXRhdGlvbnMgKyIsIGxhcmdlX3JlZ2lvbikpLAogICAgZGF0YSA9IGF1dGhvcnMgJT4lIG11dGF0ZShob25vcmVlID0gIWlzLm5hKHllYXIpKSwKICAgIGZhbWlseSA9ICJiaW5vbWlhbCIsCiAgICBjb250cm9sID0gbGlzdChlcHNpbG9uID0gMWUtMTIsIG1heGl0ID0gNTUsIHRyYWNlID0gRkFMU0UpCiAgKSAlPiUKICAgIGJyb29tOjp0aWR5KCkgJT4lCiAgICBwcmludCgpCn0KYGBgCgo8IS0tIFdlIGFyZ3VlIHRoYXQgaG9ub3JzIGFuZCBhdXRob3JzaGlwcyBhcmUgdGhlIGFwcHJvcHJpYXRlIHVuaXRzLiAtLT4KPCEtLSBBbHRob3VnaCB0aGlzIGFwcHJvYWNoIG1heSBub3Qgc2F0aXNmeSB0aGUgaW5kZXBlbmRlbnQgYW5kIGlkZW50aWNhbGx5IGRpc3RyaWJ1dGVkIGFzc3VtcHRpb24gLS0+Cgo8IS0tIGhvbm9yIHZzIG5vdCBob25vcmVkLiAtLT4KPCEtLSBCdXQgdGhlbiB0aGlzIGlzIGNvbnNpZGVyaW5nIHNjaWVudGlzdHMgd2hvIGhhdmUgNCByb3dzIG9mIGhvbm9yZWVzIGFzIG9uZSAgLS0+CjwhLS0gSXMgdGhpcyBmYWlyPyAtLT4KPCEtLSAxOTUgcm93cy9ob25vcnMgb2Yga2V5bm90ZXMgcG9zdCAyMDAyIHRvIDE0NSBuYW1lcy9zY2llbnRpc3RzLiAtLT4KCiMjIFRpbWUgbGFnCgpJbiB0aGlzIHNlY3Rpb24sIHdlIHNob3cgdGhhdCBhIDEwLXllYXIgbGFnIG1vZGVsIHJlc3VsdHMgaW4gYSBzaW1pbGFyIHJlc3VsdCBmb3IgRWFzdCBBc2lhbiBzY2llbnRpc3RzJyBuYW1lcywKZXZlbiB0aG91Z2ggdGhlIGVmZmVjdCBzaXplIGlzIGxlc3Mgc3RyaWtpbmcuCkZvciBleGFtcGxlLCBpZiB3ZSBhc3N1bWUgdGhhdCBob25vcnMgYWNjcnVlIDEwIHllYXJzIGFmdGVyIHRoZWlyIG1vc3QgcHJvbGlmaWMgeWVhciB3aXRoIHJlc3BlY3QgdG8gYXV0aG9yc2hpcHMsIAp0aGUgcHJvcG9ydGlvbiBvZiBob25vciBhc3NvY2lhdGVkIHdpdGggRWFzdCBBc2lhbiBuYW1lIG9yaWdpbnMgaW4gMjAxOSBpcyBzdGlsbCBzdWJzdGFudGlhbGx5IGxlc3MgdGhhbiB0aGUgcHJvcG9ydGlvbiBvZiBzZW5pb3IgYXV0aG9yc2hpcHMgYXNzb2NpYXRlZCB3aXRoIEVhc3QgQXNpYW4gbmFtZXMgaW4gMjAwOS4KCmBgYHtyfQp5ZWFyX2xhZyA8LSBwZXJpb2QoMTAsICJ5ZWFycyIpCmlzY2JfcHVibWVkX290aF9sYWcgPC0gaXNjYl9uYXRfZGYgJT4lCiAgcmVuYW1lKCJqb3VybmFsIiA9IGNvbmZlcmVuY2UpICU+JQogIHNlbGVjdCh5ZWFyLCBqb3VybmFsLCBBZnJpY2FuOlNvdXRoQXNpYW4sIHB1YmxpY2F0aW9uX2RhdGUpICU+JQogIG11dGF0ZSgKICAgIHR5cGUgPSAiS2V5bm90ZSBzcGVha2Vycy9GZWxsb3dzIiwKICAgIGFkanVzdGVkX2NpdGF0aW9ucyA9IDEsCiAgICBwbWlkID0gLTk5OTkKICApICU+JQogIGJpbmRfcm93cygKICAgIHB1Ym1lZF9uYXRfZGYgJT4lCiAgICAgIHNlbGVjdChwbWlkLCB5ZWFyLCBqb3VybmFsLCBBZnJpY2FuOlNvdXRoQXNpYW4sIHB1YmxpY2F0aW9uX2RhdGUsIGFkanVzdGVkX2NpdGF0aW9ucykgJT4lCiAgICAgIG11dGF0ZSh0eXBlID0gIlB1Ym1lZCBhdXRob3JzIiwgeWVhciA9IHllYXIgKyB5ZWFyX2xhZykKICApICU+JQogIG11dGF0ZShPdGhlckNhdGVnb3JpZXMgPSBTb3V0aEFzaWFuICsgSGlzcGFuaWMgKyBKZXdpc2ggKyBNdXNsaW0gKyBOb3JkaWMgKyBHcmVlayArIEFmcmljYW4pICU+JQogIHBpdm90X2xvbmdlcihjKEFmcmljYW46U291dGhBc2lhbiwgT3RoZXJDYXRlZ29yaWVzKSwKICAgIG5hbWVzX3RvID0gInJlZ2lvbiIsCiAgICB2YWx1ZXNfdG8gPSAicHJvYmFiaWxpdGllcyIKICApICU+JQogIGZpbHRlcighaXMubmEocHJvYmFiaWxpdGllcyksIHllYXIoeWVhcikgPj0gMjAwMikgJT4lCiAgZ3JvdXBfYnkodHlwZSwgeWVhciwgcmVnaW9uKSAKCmlzY2JfbG1fbGFnIDwtIGlzY2JfcHVibWVkX290aF9sYWcgJT4lCiAgdW5ncm91cCgpICU+JQogIG11dGF0ZSh0eXBlID0gYXMuZmFjdG9yKHR5cGUpICU+JSByZWxldmVsKHJlZiA9ICJQdWJtZWQgYXV0aG9ycyIpKQoKbWFpbl9sbSA8LSBmdW5jdGlvbihyZWdpb25pKSB7CiAgZ2xtKHR5cGUgfiB5ZWFyICsgcHJvYmFiaWxpdGllcywKICAgIGRhdGEgPSBpc2NiX2xtX2xhZyAlPiUKICAgICAgZmlsdGVyKHJlZ2lvbiA9PSByZWdpb25pLCAhaXMubmEocHJvYmFiaWxpdGllcykpLAogICAgZmFtaWx5ID0gImJpbm9taWFsIgogICkKfQoKbWFpbl9saXN0IDwtIGxhcHBseShsYXJnZV9yZWdpb25zLCBtYWluX2xtKQpuYW1lcyhtYWluX2xpc3QpIDwtIGxhcmdlX3JlZ2lvbnMKbGFwcGx5KG1haW5fbGlzdCwgYnJvb206OnRpZHkpCmBgYAoKYGBge3IgaW5jbHVkZT1GQUxTRSwgZXZhbCA9IEZBTFNFfQpjaGVja2RmIDwtIGlzY2JfbG0gJT4lCiAgZmlsdGVyKAogICAgeWVhcih5ZWFyKSA9PSAyMDEwLAogICAgYWRqdXN0ZWRfY2l0YXRpb25zID4gMy4xLCAKICAgIGFkanVzdGVkX2NpdGF0aW9ucyA8IDMuMzIsIAogICAgcmVnaW9uID09ICJFYXN0QXNpYW4iLCAKICAgIHByb2JhYmlsaXRpZXMgPiAwLjUKICApCmBgYAoKCiMjIFN1cHBsZW1lbnRhcnkgRmlndXJlIFM1IHsjc3VwX2ZpZ19zNX0KSXQncyBkaWZmaWN1bHQgdG8gY29tZSB0byBhIGNvbmNsdXNpb24gZm9yIG90aGVyIHJlZ2lvbnMgd2l0aCBzbyBmZXcgZGF0YSBwb2ludHMgYW5kIHRoZSBpbXBlcmZlY3QgYWNjdXJhY3kgb2Ygb3VyIHByZWRpY3Rpb24uClRoZXJlIHNlZW1zIHRvIGJlIGxpdHRsZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIHByb3BvcnRpb24gb2Yga2V5bm90ZSBzcGVha2VycyBvZiBBZnJpY2FuLCBBcmFiaWMsIFNvdXRoIEFzaWFuIGFuZCBIaXNwYW5pYyBvcmlnaW4gdGhhbiB0aG9zZSBpbiB0aGUgZmllbGQuCkhvd2V2ZXIsIGp1c3QgYmVjYXVzZSBhIG5hdGlvbmFsaXR5IGlzbid0IHVuZGVycmVwcmVzZW50ZWQgYWdhaW5zdCB0aGUgZmllbGQgZG9lc24ndCBtZWFuIHNjaWVudGlzdHMgZnJvbSB0aGF0IG5hdGlvbmFsaXR5IGFyZSBhcHByb3ByaWF0ZWx5IHJlcHJlc2VudGVkLgoKYGBge3IgZmlnLmhlaWdodD02LCB3YXJuaW5nPUZBTFNFfQojIGRmMiA8LSBpc2NiX3B1Ym1lZF9vdGggJT4lCiMgICBmaWx0ZXIocmVnaW9uICE9ICJPdGhlckNhdGVnb3JpZXMiKSAlPiUKIyAgIHJlY29kZV9yZWdpb24oKQojIAojIGZpZ19zNSA8LSBpc2NiX3B1Ym1lZF9zdW0gJT4lCiMgICByZWNvZGVfcmVnaW9uKCkgJT4lCiMgICBnYW1fYW5kX2NpKAojICAgICBkZjIgPSBkZjIsCiMgICAgIHN0YXJ0X3kgPSBzdGFydF95ZWFyLCBlbmRfeSA9IGVuZF95ZWFyCiMgICApICsKIyAgIHRoZW1lKGxlZ2VuZC5wb3NpdGlvbiA9IGMoMC44LCAwLjEpKSArCiMgICBmYWNldF93cmFwKHZhcnMoZmN0X3JlbGV2ZWwocmVnaW9uLCByZWdpb25fbGV2ZWxzKSksIG5jb2wgPSAzKQojIGZpZ19zNQojIGdnc2F2ZSgiZmlncy9maWdfczUucG5nIiwgZmlnX3M1LCB3aWR0aCA9IDYsIGhlaWdodCA9IDYpCiMgZ2dzYXZlKCJmaWdzL2ZpZ19zNS5zdmciLCBmaWdfczUsIHdpZHRoID0gNiwgaGVpZ2h0ID0gNikKYGBgCgoKYGBge3J9CnNlc3Npb25JbmZvKCkKYGBgCg==
diff --git a/docs/12.analyze-affiliation.html b/docs/12.analyze-affiliation.html index 9f5c206..1a725a0 100644 --- a/docs/12.analyze-affiliation.html +++ b/docs/12.analyze-affiliation.html @@ -4338,8 +4338,8 @@

Country enrichment table

formatPercentage('Author proportion', 2) %>% formatRound(c('Observed', 'Expected', 'Observed - Expected', 'Enrichment', 'Log2(enrichment)'), 1) -
- +
+

Compute enrichment from proportion comparisons

Adapted from epitools::riskratio().

@@ -4434,7 +4434,7 @@

Log enrichment figure

rel_widths = c(1, 1.3)) enrichment_plot

-
ggsave('figs/enrichment-plot.png', enrichment_plot, width = 5.5, height = 3.5)
+
ggsave('figs/enrichment-plot.png', enrichment_plot, width = 5.5, height = 3.5, dpi = 600)
sessionInfo()
## R version 4.0.3 (2020-10-10)
 ## Platform: x86_64-pc-linux-gnu (64-bit)
@@ -4452,56 +4452,74 @@ 

Log enrichment figure

## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C ## ## attached base packages: -## [1] stats graphics grDevices utils datasets methods base +## [1] stats graphics grDevices utils datasets methods +## [7] base ## ## other attached packages: -## [1] DT_0.16 epitools_0.5-10.1 gdtools_0.2.2 -## [4] wru_0.1-10 rnaturalearth_0.1.0 lubridate_1.7.9.2 -## [7] caret_6.0-86 lattice_0.20-41 forcats_0.5.0 -## [10] stringr_1.4.0 dplyr_1.0.2 purrr_0.3.4 -## [13] readr_1.4.0 tidyr_1.1.2 tibble_3.0.4 -## [16] ggplot2_3.3.2 tidyverse_1.3.0 +## [1] broom_0.7.2 DT_0.16 epitools_0.5-10.1 +## [4] gdtools_0.2.2 wru_0.1-10 rnaturalearth_0.1.0 +## [7] lubridate_1.7.9.2 caret_6.0-86 lattice_0.20-41 +## [10] forcats_0.5.0 stringr_1.4.0 dplyr_1.0.2 +## [13] purrr_0.3.4 readr_1.4.0 tidyr_1.1.2 +## [16] tibble_3.0.4 ggplot2_3.3.2 tidyverse_1.3.0 ## ## loaded via a namespace (and not attached): -## [1] colorspace_2.0-0 ellipsis_0.3.1 class_7.3-17 -## [4] rprojroot_1.3-2 fs_1.5.0 rstudioapi_0.12 -## [7] farver_2.0.3 remotes_2.2.0 prodlim_2019.11.13 -## [10] fansi_0.4.1 xml2_1.3.2 codetools_0.2-16 -## [13] splines_4.0.3 knitr_1.30 pkgload_1.1.0 -## [16] jsonlite_1.7.1 pROC_1.16.2 broom_0.7.2 -## [19] dbplyr_2.0.0 rgeos_0.5-5 compiler_4.0.3 -## [22] httr_1.4.2 backports_1.2.0 assertthat_0.2.1 -## [25] Matrix_1.2-18 cli_2.1.0 htmltools_0.5.0 -## [28] prettyunits_1.1.1 tools_4.0.3 gtable_0.3.0 -## [31] glue_1.4.2 rnaturalearthdata_0.1.0 reshape2_1.4.4 -## [34] Rcpp_1.0.5 cellranger_1.1.0 vctrs_0.3.4 -## [37] svglite_1.2.3.2 nlme_3.1-149 iterators_1.0.13 -## [40] crosstalk_1.1.0.1 timeDate_3043.102 gower_0.2.2 -## [43] xfun_0.19 ps_1.4.0 testthat_3.0.0 -## [46] rvest_0.3.6 lifecycle_0.2.0 devtools_2.3.2 -## [49] MASS_7.3-53 scales_1.1.1 ipred_0.9-9 -## [52] hms_0.5.3 RColorBrewer_1.1-2 yaml_2.2.1 -## [55] curl_4.3 memoise_1.1.0 rpart_4.1-15 -## [58] stringi_1.5.3 desc_1.2.0 foreach_1.5.1 -## [61] e1071_1.7-4 pkgbuild_1.1.0 lava_1.6.8.1 -## [64] systemfonts_0.3.2 rlang_0.4.8 pkgconfig_2.0.3 -## [67] evaluate_0.14 sf_0.9-6 recipes_0.1.15 -## [70] htmlwidgets_1.5.2 labeling_0.4.2 cowplot_1.1.0 -## [73] tidyselect_1.1.0 processx_3.4.4 plyr_1.8.6 -## [76] magrittr_1.5 R6_2.5.0 generics_0.1.0 -## [79] DBI_1.1.0 mgcv_1.8-33 pillar_1.4.6 -## [82] haven_2.3.1 withr_2.3.0 units_0.6-7 -## [85] survival_3.2-7 sp_1.4-4 nnet_7.3-14 -## [88] modelr_0.1.8 crayon_1.3.4 KernSmooth_2.23-17 -## [91] utf8_1.1.4 rmarkdown_2.5 usethis_1.6.3 -## [94] grid_4.0.3 readxl_1.3.1 data.table_1.13.2 -## [97] callr_3.5.1 ModelMetrics_1.2.2.2 reprex_0.3.0 -## [100] digest_0.6.27 classInt_0.4-3 stats4_4.0.3 -## [103] munsell_0.5.0 viridisLite_0.3.0 sessioninfo_1.1.1
+## [1] colorspace_2.0-0 ellipsis_0.3.1 +## [3] class_7.3-17 rprojroot_1.3-2 +## [5] fs_1.5.0 rstudioapi_0.12 +## [7] farver_2.0.3 remotes_2.2.0 +## [9] prodlim_2019.11.13 fansi_0.4.1 +## [11] xml2_1.3.2 codetools_0.2-16 +## [13] splines_4.0.3 knitr_1.30 +## [15] pkgload_1.1.0 jsonlite_1.7.1 +## [17] pROC_1.16.2 dbplyr_2.0.0 +## [19] rgeos_0.5-5 compiler_4.0.3 +## [21] httr_1.4.2 backports_1.2.0 +## [23] assertthat_0.2.1 Matrix_1.2-18 +## [25] cli_2.1.0 htmltools_0.5.0 +## [27] prettyunits_1.1.1 tools_4.0.3 +## [29] gtable_0.3.0 glue_1.4.2 +## [31] rnaturalearthdata_0.1.0 reshape2_1.4.4 +## [33] Rcpp_1.0.5 cellranger_1.1.0 +## [35] vctrs_0.3.4 svglite_1.2.3.2 +## [37] nlme_3.1-149 iterators_1.0.13 +## [39] crosstalk_1.1.0.1 timeDate_3043.102 +## [41] gower_0.2.2 xfun_0.19 +## [43] ps_1.4.0 testthat_3.0.0 +## [45] rvest_0.3.6 lifecycle_0.2.0 +## [47] devtools_2.3.2 MASS_7.3-53 +## [49] scales_1.1.1 ipred_0.9-9 +## [51] hms_0.5.3 RColorBrewer_1.1-2 +## [53] yaml_2.2.1 curl_4.3 +## [55] memoise_1.1.0 rpart_4.1-15 +## [57] stringi_1.5.3 desc_1.2.0 +## [59] foreach_1.5.1 e1071_1.7-4 +## [61] pkgbuild_1.1.0 lava_1.6.8.1 +## [63] systemfonts_0.3.2 rlang_0.4.8 +## [65] pkgconfig_2.0.3 evaluate_0.14 +## [67] sf_0.9-6 recipes_0.1.15 +## [69] htmlwidgets_1.5.2 labeling_0.4.2 +## [71] cowplot_1.1.0 tidyselect_1.1.0 +## [73] processx_3.4.4 plyr_1.8.6 +## [75] magrittr_1.5 R6_2.5.0 +## [77] generics_0.1.0 DBI_1.1.0 +## [79] mgcv_1.8-33 pillar_1.4.6 +## [81] haven_2.3.1 withr_2.3.0 +## [83] units_0.6-7 survival_3.2-7 +## [85] sp_1.4-4 nnet_7.3-14 +## [87] modelr_0.1.8 crayon_1.3.4 +## [89] KernSmooth_2.23-17 utf8_1.1.4 +## [91] rmarkdown_2.5 usethis_1.6.3 +## [93] grid_4.0.3 readxl_1.3.1 +## [95] data.table_1.13.2 callr_3.5.1 +## [97] ModelMetrics_1.2.2.2 reprex_0.3.0 +## [99] digest_0.6.27 classInt_0.4-3 +## [101] stats4_4.0.3 munsell_0.5.0 +## [103] viridisLite_0.3.0 sessioninfo_1.1.1
-
LS0tCnRpdGxlOiAnQWZmaWxpYXRpb24gYW5hbHlzaXMnCi0tLQoKYGBge3Igc2V0dXAsIGluY2x1ZGU9RkFMU0V9CmxpYnJhcnkodGlkeXZlcnNlKQpsaWJyYXJ5KGx1YnJpZGF0ZSkKbGlicmFyeShybmF0dXJhbGVhcnRoKQpsaWJyYXJ5KGVwaXRvb2xzKQpzb3VyY2UoJ3V0aWxzL3ItdXRpbHMuUicpCmxpYnJhcnkoRFQpCnRoZW1lX3NldCgKICB0aGVtZV9idygpICsgCiAgICB0aGVtZSgKICAgICAgcGFuZWwuZ3JpZC5taW5vciA9IGVsZW1lbnRfYmxhbmsoKSwKICAgICAgcGFuZWwuZ3JpZC5tYWpvci55ID0gZWxlbWVudF9ibGFuaygpLAogICAgICBsZWdlbmQudGl0bGUgPSBlbGVtZW50X2JsYW5rKCkKICAgICkpCmBgYAoKIyMgQ291bnRyeSBsZXZlbCBhbmFseXNpcwoKT2JzZXJ2ZWQgdnMuIGV4cGVjdGVkCgpgYGB7cn0KbG9hZCgnUmRhdGEvcmF3cy5SZGF0YScpCgppc2NiX2FmZl9jb3VudHJ5IDwtIAogIGtleW5vdGVzICU+JSAKICBzZXBhcmF0ZV9yb3dzKGFmZmxjb3VudHJpZXMsIHNlcCA9ICdcXHwnKSAlPiUgCiAgZmlsdGVyKCFpcy5uYShhZmZsY291bnRyaWVzKSkgJT4lIAogIGFkZF9jb3VudCh5ZWFyLCBjb25mZXJlbmNlLCBmdWxsX25hbWUsIG5hbWUgPSAnbnVtX2FmZmxzJykgJT4lCiAgbXV0YXRlKHByb2JhYmlsaXRpZXMgPSAxIC8gbnVtX2FmZmxzLAogICAgICAgICBwdWJsaWNhdGlvbl9kYXRlID0geW1kKHllYXIsIHRydW5jYXRlZCA9IDIpLAogICAgICAgICB5ZWFyID0geW1kKHllYXIsIHRydW5jYXRlZCA9IDIpKSAlPiUKICBsZWZ0X2pvaW4obmF0X3RvX3JlZywgYnkgPSBjKCdhZmZsY291bnRyaWVzJyA9ICdjb3VudHJ5X25hbWUnKSkKCnB1Ym1lZF9hZmZfY291bnRyeSA8LSBjb3JyX2F1dGhvcnMgJT4lCiAgZmlsdGVyKCFpcy5uYShjb3VudHJpZXMpKSAlPiUgCiAgYWRkX2NvdW50KHBtaWQsIG5hbWUgPSAnbnVtX2NvcnJfYXV0aG9ycycpICU+JSAjIG51bWJlciBvZiBjb3JyZXNwb25kaW5nIGF1dGhvcnMgcGVyIHBtaWQKICBzZWxlY3QocG1pZCwgam91cm5hbCwgcHVibGljYXRpb25fZGF0ZSwgeWVhciwgY291bnRyaWVzLCBmb3JlX25hbWVfc2ltcGxlLCBsYXN0X25hbWVfc2ltcGxlLCBudW1fY29ycl9hdXRob3JzKSAlPiUKICBzZXBhcmF0ZV9yb3dzKGNvdW50cmllcykgJT4lCiAgYWRkX2NvdW50KHBtaWQsIGZvcmVfbmFtZV9zaW1wbGUsIGxhc3RfbmFtZV9zaW1wbGUsIG5hbWUgPSAnbnVtX2FmZmxzJykgJT4lIAogIG11dGF0ZShwcm9iYWJpbGl0aWVzID0gMSAvIG51bV9jb3JyX2F1dGhvcnMgLyBudW1fYWZmbHMpCiAgCmNvdW50cnlfcmVwIDwtIGlzY2JfYWZmX2NvdW50cnkgJT4lIAogIGdyb3VwX2J5KGNvdW50cmllcykgJT4lIAogIHN1bW1hcmlzZShPYnNlcnZlZCA9IHN1bShwcm9iYWJpbGl0aWVzKSkgJT4lIAogIGFycmFuZ2UoZGVzYyhPYnNlcnZlZCkpIAoKbnVtX3BhcGVycyA8LSBjb3JyX2F1dGhvcnMgJT4lIAogIGZpbHRlcighaXMubmEoY291bnRyaWVzKSkgJT4lIAogIHB1bGwocG1pZCkgJT4lIAogIHVuaXF1ZSgpICU+JSAKICBsZW5ndGgoKQoKbnVtX3BhcGVycwoKbnVtX2hvbm9yZWVzIDwtIHN1bShpc2NiX2FmZl9jb3VudHJ5JHByb2JhYmlsaXRpZXMpCgpvYnNfdnNfZXhwX2FsbCA8LSBwdWJtZWRfYWZmX2NvdW50cnkgJT4lCiAgZ3JvdXBfYnkoY291bnRyaWVzKSAlPiUKICBzdW1tYXJpc2UobnVtX2F1dGhvcnMgPSBzdW0ocHJvYmFiaWxpdGllcykpICU+JQogIHVuZ3JvdXAoKSAlPiUgCiAgbXV0YXRlKGZyZXFfYWZmaSA9IG51bV9hdXRob3JzIC8gc3VtKG51bV9hdXRob3JzKSkgJT4lCiAgYXJyYW5nZShkZXNjKG51bV9hdXRob3JzKSkgJT4lCiAgbXV0YXRlKEV4cGVjdGVkID0gZnJlcV9hZmZpICogbnVtX2hvbm9yZWVzKSAlPiUKICBsZWZ0X2pvaW4oY291bnRyeV9yZXAsIGJ5ID0gJ2NvdW50cmllcycpICU+JQogIGxlZnRfam9pbihuYXRfdG9fcmVnLCBieSA9ICdjb3VudHJpZXMnKSAlPiUKICBzZWxlY3QoY291bnRyeV9uYW1lLCBldmVyeXRoaW5nKCkpICU+JQogIHNlbGVjdCgtYyhyZWdpb24sIGNvdW50cmllcykpICU+JQogIG11dGF0ZSgKICAgIE9ic2VydmVkID0gcmVwbGFjZV9uYShPYnNlcnZlZCwgMCksCiAgICBvdmVyX3JlcCA9IE9ic2VydmVkIC0gRXhwZWN0ZWQsCiAgICBvdGhlcl9ob25vcmVlcyA9IG51bV9ob25vcmVlcyAtIE9ic2VydmVkLAogICAgb3RoZXJfYXV0aG9ycyA9IG51bV9wYXBlcnMgLSBudW1fYXV0aG9ycwogICkKYGBgCgoKIyMjIEZpc2hlcidzIGV4YWN0IHRlc3QgYW5kIAojIyMjIFRhYmxlIG9mIHJlcHJlc2VudGF0aW9ucwpOdWxsIGh5cG90aGVzaXM6IEZvciBlYWNoIGNvdW50cnksIHRoZSBwcm9wb3J0aW9uIG9mIGhvbm9yZWVzIGFmZmlsaWF0ZWQgd2l0aCBhbiBpbnN0aXR1dGlvbi9jb21wYW55IGZyb20gdGhhdCBjb3VudHJ5IGlzIHNpbWlsYXIgdG8gdGhlIHByb3BvcnRpb24gb2YgYXV0aG9ycyBhZmZpbGlhdGVkIHdpdGggYW4gaW5zdGl0dXRpb24vY29tcGFueSBmcm9tIHRoYXQgY291bnRyeS4KCmBgYHtyIHdhcm5pbmc9RkFMU0UsIGZpZy53aWR0aCA9IDcqMS41LCBmaWcuaGVpZ2h0ID0gMi41KjEuNX0KbXlfZmlzaCA8LSBmdW5jdGlvbihkZikgewogIHJlcyA8LSBkZiAlPiUKICAgIHVubGlzdCgpICU+JQogICAgbWF0cml4KG5jb2wgPSAyLCBieXJvdyA9IFRSVUUpICU+JQogICAgbXlfcmlza3JhdGlvKGNvcnJlY3Rpb24gPSBUUlVFKQogIAogIHJlc19maXNoIDwtIGRmICU+JQogICAgdW5saXN0KCkgJT4lCiAgICBtYXRyaXgobmNvbCA9IDIpICU+JQogICAgZmlzaGVyLnRlc3QoKQogIAogIG9yIDwtIHJlc19maXNoJGVzdGltYXRlCiAgbF9vciA8LSByZXNfZmlzaCRjb25mLmludFsxXQogIHVfb3IgPC0gcmVzX2Zpc2gkY29uZi5pbnRbMl0KICBwMCA8LSBkZlsyXS8oZGZbMl0gKyBkZlsxXSkKICBmaXNoX3JyIDwtIG9yLygxIC0gcDAgKyBwMCpvcikKICBmaXNoX3JyX2xvd2VyIDwtIGxfb3IvKDEgLSBwMCArIHAwKmxfb3IpCiAgZmlzaF9ycl91cHBlciA8LSB1X29yLygxIC0gcDAgKyBwMCp1X29yKQogIAogIHJlcyRtZWFzdXJlWzIsIDE6M10gJT4lIAogICAgYyhwX3ZhbHVlID0gcmVzJHAudmFsdWVbMiwyXSkgJT4lIAogICAgYXMubWF0cml4KCkgJT4lIHQoKSAlPiUgZGF0YS5mcmFtZSgpCn0KCm5lc3RlZF9vYnNfZXhwIDwtIG9ic192c19leHBfYWxsICU+JQogIGZpbHRlcighaXMubmEoY291bnRyeV9uYW1lKSkgJT4lIAogIHNlbGVjdChjb3VudHJ5X25hbWUsIG90aGVyX2F1dGhvcnMsIG51bV9hdXRob3JzLCBvdGhlcl9ob25vcmVlcywgT2JzZXJ2ZWQpICU+JSAKICBncm91cF9ieShjb3VudHJ5X25hbWUpICU+JSAKICBuZXN0KCkgCgpmaXNoX29ic19leHAgPC0gbmVzdGVkX29ic19leHAgJT4lIAogIG11dGF0ZShmaXNoID0gbWFwKGRhdGEsIG15X2Zpc2gpKSAlPiUgCiAgZHBseXI6OnNlbGVjdCgtZGF0YSkgJT4lIAogIHVubmVzdCgpCgpgYGAKCmBgYHtyIGV2YWw9RkFMU0UsIGluY2x1ZGU9RkFMU0V9CiMgbWFudWFsIGNoZWNrCnggPSBuZXN0ZWRfb2JzX2V4cCAlPiUgCiAgZmlsdGVyKGNvdW50cnlfbmFtZSA9PSAnRmlubGFuZCcpICU+JSAKICB1bmdyb3VwKCkgJT4lIAogIHNlbGVjdChkYXRhKSAlPiUgCiAgdW5saXN0KCkgJT4lCiAgbWF0cml4KG5jb2wgPSAyLCBieXJvdyA9IFRSVUUpIAoKYTAgPC0geFsxLCAyXQpiMCA8LSB4WzEsIDFdCmExIDwtIHhbMiwgMl0KYjEgPC0geFsyLCAxXQpuMSA8LSBhMSArIGIxCm4wIDwtIGEwICsgYjAKbTAgPC0gYjAgKyBiMQptMSA8LSBhMCArIGExCgpsb2cyKG4wL24xKihhMSsxKS8oYTApKnFmKDEtMC4wMjUsIDIqKGExKzEpLCAyKmEwKSkKbG9nMihuMC9uMSooYTEpLyhhMCArIDEpL3FmKDEtMC4wMjUsIDIqKGEwICsgMSksIDIqYTEpKQpgYGAKCgojIyMgQ291bnRyeSBlbnJpY2htZW50IHRhYmxlIHsjZW5yaWNobWVudF90YWJ9CmBgYHtyfQpmaXNoX29ic19leHAgJT4lIAogIG11dGF0ZShjaSA9IHBhc3RlMCgnKCcsIHJvdW5kKGxvZzIobG93ZXIpLCAxKSwgJywgJywgCiAgICAgICAgICAgICAgICAgICAgIHJvdW5kKGxvZzIodXBwZXIpLCAxKSwgJyknKSwKICAgICAgICAgbGVzdGltYXRlID0gbG9nMihlc3RpbWF0ZSkpICU+JSAKICBsZWZ0X2pvaW4ob2JzX3ZzX2V4cF9hbGwsIGJ5ID0gJ2NvdW50cnlfbmFtZScpICU+JSAKICBzZWxlY3QoY291bnRyeV9uYW1lLCBmcmVxX2FmZmksIE9ic2VydmVkLCBFeHBlY3RlZCwgb3Zlcl9yZXAsCiAgICAgICAgICMgbG9nMmZjLCAKICAgICAgICAgZXN0aW1hdGUsIGxlc3RpbWF0ZSwgY2kpICU+JSAKICByZW5hbWUoJ0NvdW50cnknID0gJ2NvdW50cnlfbmFtZScsCiAgICAgICAgICdBdXRob3IgcHJvcG9ydGlvbicgPSAnZnJlcV9hZmZpJywKICAgICAgICAgJ09ic2VydmVkIC0gRXhwZWN0ZWQnID0gJ292ZXJfcmVwJywKICAgICAgICAgJ0VucmljaG1lbnQnID0gJ2VzdGltYXRlJywKICAgICAgICAgJ0xvZzIoZW5yaWNobWVudCknID0gJ2xlc3RpbWF0ZScsCiAgICAgICAgICc5NSUgQ29uZmlkZW5jZSBpbnRlcnZhbCcgPSAnY2knKSAlPiUgCiAgZGF0YXRhYmxlKHJvd25hbWVzID0gRkFMU0UpICU+JSAKICBmb3JtYXRQZXJjZW50YWdlKCdBdXRob3IgcHJvcG9ydGlvbicsIDIpICU+JSAKICBmb3JtYXRSb3VuZChjKCdPYnNlcnZlZCcsICdFeHBlY3RlZCcsICdPYnNlcnZlZCAtIEV4cGVjdGVkJywgCiAgICAgICAgICAgICAgICAnRW5yaWNobWVudCcsICdMb2cyKGVucmljaG1lbnQpJyksIDEpCmBgYAoKCmBgYHtyIGluY2x1ZGUgPSBGLCBldmFsID0gRiwgZmlnLndpZHRoID0gNyoxLjUsIGZpZy5oZWlnaHQgPSAyLjUqMS41fQojIHdvcmxkIG1hcCBvZiBlbnJpY2htZW50CmVucmljaF9kZiA8LSB3b3JsZCAlPiUgCiAgbGVmdF9qb2luKAogICAgZmlzaF9vYnNfZXhwICAlPiUgCiAgICAgIG11dGF0ZShsb2dfbG93ZXIgPSBjYXNlX3doZW4oCiAgICAgICAgbG93ZXIgPiAxIH4gbG9nMihsb3dlciksCiAgICAgICAgdXBwZXIgPCAxIH4gbG9nMih1cHBlciksCiAgICAgICAgVFJVRSB+IDApCiAgICAgICksIGJ5ID0gYygnbmFtZScgPSAnY291bnRyeV9uYW1lJykpCgplbnJpY2htZW50X21hcCA8LSBlbnJpY2hfZGYgJT4lIAogIGdncGxvdCgpICsKICBnZW9tX3NmKGFlcyhmaWxsID0gbG9nX2xvd2VyKSkgKwogIHNjYWxlX2ZpbGxfZ3JhZGllbnRuKAogICAgY29sb3VycyA9IGMoJyMzQ0JDNzVGRicsJ3doaXRlJywnIzQ0MDE1NEZGJyksCiAgICBuYS52YWx1ZSA9IE5BLAogICAgdmFsdWVzID0gc2NhbGVzOjpyZXNjYWxlKAogICAgICBjKG1pbihlbnJpY2hfZGYkbG9nX2xvd2VyLCBuYS5ybSA9IFQpLAogICAgICAgIDAsCiAgICAgICAgbWF4KGVucmljaF9kZiRsb2dfbG93ZXIsIG5hLnJtID0gVCkpKQogICkgKwogIGNvb3JkX3NmKGNycyA9ICcrcHJvaj1lcWVhcnRoICt3a3RleHQnKQplbnJpY2htZW50X21hcAojIGdnc2F2ZSgnZmlncy9lbnJpY2htZW50LW1hcC5wbmcnLCBlbnJpY2htZW50X21hcCwgd2lkdGggPSA3LCBoZWlnaHQgPSAyLjUpCiMgZXF1YWwgZWFydGggbWFwIHByb2plY3Rpb246CiMgaHR0cDovL2VxdWFsLWVhcnRoLmNvbS9lcXVhbC1lYXJ0aC1wcm9qZWN0aW9uLmh0bWwKYGBgCgojIyMjIENvbXB1dGUgZW5yaWNobWVudCBmcm9tIHByb3BvcnRpb24gY29tcGFyaXNvbnMKQWRhcHRlZCBmcm9tIGBlcGl0b29sczo6cmlza3JhdGlvKClgLgoKUHJlc2VudGF0aW9uIGVucmljaG1lbnQvZGVwbGV0aW9uIG9mIDIwIGNvdW50cmllcyB0aGF0IGhhdmUgdGhlIG1vc3QgcHVibGljYXRpb25zLgoKYGBge3IgZmlnLndpZHRoID0gNywgZmlnLmhlaWdodCA9IDMuNX0KZmlsdGVyZWRfb2JzX2V4cCA8LSBvYnNfdnNfZXhwX2FsbCAlPiUgCiAgbGVmdF9qb2luKGZpc2hfb2JzX2V4cCwgYnkgPSAnY291bnRyeV9uYW1lJykgJT4lIAogIHRvcF9uKDI1LCBudW1fYXV0aG9ycykgJT4lIAogIG11dGF0ZSgKICAgIGRpc3RhbmNlX3RvX251bGwgPSBjYXNlX3doZW4oCiAgICAgIGxvd2VyID4gMSB+IGxvd2VyIC0gMSwKICAgICAgVFJVRSB+IHVwcGVyIC0gMgogICAgKSwKICAgIHByZXNlbnRhdGlvbiA9IGNhc2Vfd2hlbigKICAgICAgbG93ZXIgPiAxIH4gJyMzNzdFQjgnLCAKICAgICAgdXBwZXIgPCAxIH4gJyNFNDFBMUMnLAogICAgICBUUlVFIH4gJ2dyZXkyMCcKICAgICksCiAgICBjb3VudHJ5X25hbWUgPSAgYXMuZmFjdG9yKGNvdW50cnlfbmFtZSkgJT4lIGZjdF9yZW9yZGVyKG51bV9hdXRob3JzKSkgJT4lIAogIGFycmFuZ2UoZGVzYyhudW1fYXV0aG9ycykpCgpwbG90X29ic19leHAgPC0gZmlsdGVyZWRfb2JzX2V4cCAlPiUKICBtdXRhdGUobGVzdGltYXRlID0gbG9nMihlc3RpbWF0ZSksCiAgICAgICAgIGxsb3dlciA9IGxvZzIobG93ZXIpLCAKICAgICAgICAgbHVwcGVyID0gbG9nMih1cHBlcikpICU+JSAKICBzZWxlY3QoY291bnRyeV9uYW1lLCBFeHBlY3RlZCwgT2JzZXJ2ZWQsIGxlc3RpbWF0ZSwgbGxvd2VyLCBsdXBwZXIsIHByZXNlbnRhdGlvbiwgb3Zlcl9yZXApICU+JSAKICBwaXZvdF9sb25nZXIoLSBjKGNvdW50cnlfbmFtZSwgcHJlc2VudGF0aW9uLCBvdmVyX3JlcCksIG5hbWVzX3RvID0gJ3R5cGUnKSAlPiUgCiAgbXV0YXRlKHN1YnR5cGUgPSBpZmVsc2UodHlwZSA9PSAnRXhwZWN0ZWQnIHwgdHlwZSA9PSAnT2JzZXJ2ZWQnLCAnU3FydChudW1iZXIgb2YgaG9ub3JlZXMpJywgJ0xvZzIgZW5yaWNobWVudCwgOTUlIENJJykpIAoKYGBgCgpgYGB7cn0Kc2F2ZShwbG90X29ic19leHAsIGZpbGUgPSAnUmRhdGEvYWZmaWxpYXRpb25zLlJkYXRhJykKYGBgCgojIyMgTG9nIGVucmljaG1lbnQgZmlndXJlIHsjZW5yaWNobWVudF9wbG90fQpgYGB7cn0KcGxvdF9vYnNfZXhwX3JpZ2h0IDwtIHBsb3Rfb2JzX2V4cCAlPiUgZmlsdGVyKHN1YnR5cGUgPT0gJ1NxcnQobnVtYmVyIG9mIGhvbm9yZWVzKScpCnBsb3Rfb2JzX2V4cF9sZWZ0IDwtIHBsb3Rfb2JzX2V4cCAlPiUgZmlsdGVyKHN1YnR5cGUgIT0gJ1NxcnQobnVtYmVyIG9mIGhvbm9yZWVzKScpCgplbnJpY2htZW50X3Bsb3RfbGVmdCA8LSBwbG90X29ic19leHBfbGVmdCAlPiUKICBnZ3Bsb3QoYWVzKHggPSBjb3VudHJ5X25hbWUpKSArCiAgY29vcmRfZmxpcCgpICsKICBsYWJzKHggPSBOVUxMLCB5ID0gYnF1b3RlKExvZ1syXSB+ICdlbnJpY2htZW50LCA5NSUgQ0knKSkgKwogIHRoZW1lKAogICAgbGVnZW5kLnBvc2l0aW9uID0gYygwLjksIDAuMyksCiAgICBheGlzLnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemUgPSA5KSwKICAgIHBsb3QubWFyZ2luID0gbWFyZ2luKDUuNSwgMiwgNS41LCA1LjUsIHVuaXQgPSAncHQnKQogICkgKwogIHNjYWxlX2NvbG9yX2JyZXdlcih0eXBlID0gJ3F1YWwnLCBwYWxldHRlID0gJ1NldDEnKSArCiAgZ2VvbV9wb2ludHJhbmdlKAogICAgZGF0YSA9IHBsb3Rfb2JzX2V4cF9sZWZ0ICU+JQogICAgICBwaXZvdF93aWRlcihuYW1lc19mcm9tID0gdHlwZSksCiAgICBhZXMoeSA9IGxlc3RpbWF0ZSwKICAgICAgICB5bWluID0gbGxvd2VyLAogICAgICAgIHltYXggPSBsdXBwZXIsCiAgICAgICAgZ3JvdXAgPSBjb3VudHJ5X25hbWUpLAogICAgY29sb3IgPSBmaWx0ZXJlZF9vYnNfZXhwJHByZXNlbnRhdGlvbiwKICAgIHN0cm9rZSA9IDAuMywgZmF0dGVuID0gMgogICkgKwogIHNjYWxlX3hfZGlzY3JldGUocG9zaXRpb24gPSAndG9wJywgbGFiZWxzID0gTlVMTCkgKwogIHNjYWxlX3lfcmV2ZXJzZSgpICsKICBnZW9tX2hsaW5lKGRhdGEgPSBwbG90X29ic19leHBfbGVmdCwgYWVzKHlpbnRlcmNlcHQgPSAwKSwgbGluZXR5cGUgPSAyKQoKb3ZlcnJlcF9jb3VudHJpZXMgPC0gcGxvdF9vYnNfZXhwX3JpZ2h0ICU+JSAKICBmaWx0ZXIob3Zlcl9yZXAgPiAwKSAlPiUgCiAgcHVsbChjb3VudHJ5X25hbWUpCgplbnJpY2htZW50X3Bsb3RfcmlnaHQgPC0gcGxvdF9vYnNfZXhwX3JpZ2h0ICU+JQogIGdncGxvdChhZXMoeCA9IGNvdW50cnlfbmFtZSwgeSA9IHZhbHVlKSkgKwogIGdlb21fbGluZShhZXMoZ3JvdXAgPSBjb3VudHJ5X25hbWUpLAogICAgICAgICAgICBjb2xvciA9IHJldihwbG90X29ic19leHBfcmlnaHQkcHJlc2VudGF0aW9uKSkgKwogIGdlb21fcG9pbnQoYWVzKHNoYXBlID0gdHlwZSksIGNvbG9yID0gJ2dyZXkyMCcpICsKICBsYWJzKHggPSBOVUxMLCB5ID0gJ051bWJlciBvZiBob25vcmVlcycpICsKICB0aGVtZSgKICAgIGF4aXMudGl0bGUgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDkpLAogICAgbGVnZW5kLnBvc2l0aW9uID0gYygwLjc1ICwgMC4zKSwKICAgIGF4aXMudGV4dC55ID0gZWxlbWVudF90ZXh0KAogICAgICBjb2xvciA9IHJldihmaWx0ZXJlZF9vYnNfZXhwJHByZXNlbnRhdGlvbiksCiAgICAgIGhqdXN0ID0gMC41KSwKICAgIHBsb3QubWFyZ2luID0gbWFyZ2luKDUuNSwgNS41LCA4LjUsIDIsIHVuaXQgPSAncHQnKQogICkgKwogIHNjYWxlX3lfc3FydChicmVha3MgPSBjKDAsIDEsIDQsIDE2LCA1MCwgMTIwLCAyMjUpKSArCiAgIyBzY2FsZV9jb2xvcl9icmV3ZXIodHlwZSA9ICdxdWFsJywgcGFsZXR0ZSA9ICdTZXQxJykgKwogIGNvb3JkX2ZsaXAoKSArCiAgZ2VvbV90ZXh0KAogICAgZGF0YSA9IC4gJT4lIAogICAgICBmaWx0ZXIodHlwZSA9PSAnRXhwZWN0ZWQnLCAhKGNvdW50cnlfbmFtZSAlaW4lIG92ZXJyZXBfY291bnRyaWVzKSksCiAgICBudWRnZV95ID0gMS4yLCBhZXMobGFiZWwgPSByb3VuZChvdmVyX3JlcCwgMSkpLCBzaXplID0gMi41KSArCiAgZ2VvbV90ZXh0KAogICAgZGF0YSA9IC4gJT4lIAogICAgICBmaWx0ZXIodHlwZSA9PSAnRXhwZWN0ZWQnLCBjb3VudHJ5X25hbWUgJWluJSBvdmVycmVwX2NvdW50cmllcyksIAogICAgbnVkZ2VfeSA9IC0xLjIsIGFlcyhsYWJlbCA9IHJvdW5kKG92ZXJfcmVwLCAxKSksIHNpemUgPSAyLjUpCgplbnJpY2htZW50X3Bsb3QgPC0gY293cGxvdDo6cGxvdF9ncmlkKGVucmljaG1lbnRfcGxvdF9sZWZ0LCBlbnJpY2htZW50X3Bsb3RfcmlnaHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsX3dpZHRocyA9IGMoMSwgMS4zKSkKZW5yaWNobWVudF9wbG90Cmdnc2F2ZSgnZmlncy9lbnJpY2htZW50LXBsb3QucG5nJywgZW5yaWNobWVudF9wbG90LCB3aWR0aCA9IDUuNSwgaGVpZ2h0ID0gMy41KQoKYGBgCgoKYGBge3J9CnNlc3Npb25JbmZvKCkKYGBgCgo=
+
LS0tCnRpdGxlOiAnQWZmaWxpYXRpb24gYW5hbHlzaXMnCi0tLQoKYGBge3Igc2V0dXAsIGluY2x1ZGU9RkFMU0V9CmxpYnJhcnkodGlkeXZlcnNlKQpsaWJyYXJ5KGx1YnJpZGF0ZSkKbGlicmFyeShybmF0dXJhbGVhcnRoKQpsaWJyYXJ5KGVwaXRvb2xzKQpzb3VyY2UoJ3V0aWxzL3ItdXRpbHMuUicpCmxpYnJhcnkoRFQpCnRoZW1lX3NldCgKICB0aGVtZV9idygpICsgCiAgICB0aGVtZSgKICAgICAgcGFuZWwuZ3JpZC5taW5vciA9IGVsZW1lbnRfYmxhbmsoKSwKICAgICAgcGFuZWwuZ3JpZC5tYWpvci55ID0gZWxlbWVudF9ibGFuaygpLAogICAgICBsZWdlbmQudGl0bGUgPSBlbGVtZW50X2JsYW5rKCkKICAgICkpCmBgYAoKIyMgQ291bnRyeSBsZXZlbCBhbmFseXNpcwoKT2JzZXJ2ZWQgdnMuIGV4cGVjdGVkCgpgYGB7cn0KbG9hZCgnUmRhdGEvcmF3cy5SZGF0YScpCgppc2NiX2FmZl9jb3VudHJ5IDwtIAogIGtleW5vdGVzICU+JSAKICBzZXBhcmF0ZV9yb3dzKGFmZmxjb3VudHJpZXMsIHNlcCA9ICdcXHwnKSAlPiUgCiAgZmlsdGVyKCFpcy5uYShhZmZsY291bnRyaWVzKSkgJT4lIAogIGFkZF9jb3VudCh5ZWFyLCBjb25mZXJlbmNlLCBmdWxsX25hbWUsIG5hbWUgPSAnbnVtX2FmZmxzJykgJT4lCiAgbXV0YXRlKHByb2JhYmlsaXRpZXMgPSAxIC8gbnVtX2FmZmxzLAogICAgICAgICBwdWJsaWNhdGlvbl9kYXRlID0geW1kKHllYXIsIHRydW5jYXRlZCA9IDIpLAogICAgICAgICB5ZWFyID0geW1kKHllYXIsIHRydW5jYXRlZCA9IDIpKSAlPiUKICBsZWZ0X2pvaW4obmF0X3RvX3JlZywgYnkgPSBjKCdhZmZsY291bnRyaWVzJyA9ICdjb3VudHJ5X25hbWUnKSkKCnB1Ym1lZF9hZmZfY291bnRyeSA8LSBjb3JyX2F1dGhvcnMgJT4lCiAgZmlsdGVyKCFpcy5uYShjb3VudHJpZXMpKSAlPiUgCiAgYWRkX2NvdW50KHBtaWQsIG5hbWUgPSAnbnVtX2NvcnJfYXV0aG9ycycpICU+JSAjIG51bWJlciBvZiBjb3JyZXNwb25kaW5nIGF1dGhvcnMgcGVyIHBtaWQKICBzZWxlY3QocG1pZCwgam91cm5hbCwgcHVibGljYXRpb25fZGF0ZSwgeWVhciwgY291bnRyaWVzLCBmb3JlX25hbWVfc2ltcGxlLCBsYXN0X25hbWVfc2ltcGxlLCBudW1fY29ycl9hdXRob3JzKSAlPiUKICBzZXBhcmF0ZV9yb3dzKGNvdW50cmllcykgJT4lCiAgYWRkX2NvdW50KHBtaWQsIGZvcmVfbmFtZV9zaW1wbGUsIGxhc3RfbmFtZV9zaW1wbGUsIG5hbWUgPSAnbnVtX2FmZmxzJykgJT4lIAogIG11dGF0ZShwcm9iYWJpbGl0aWVzID0gMSAvIG51bV9jb3JyX2F1dGhvcnMgLyBudW1fYWZmbHMpCiAgCmNvdW50cnlfcmVwIDwtIGlzY2JfYWZmX2NvdW50cnkgJT4lIAogIGdyb3VwX2J5KGNvdW50cmllcykgJT4lIAogIHN1bW1hcmlzZShPYnNlcnZlZCA9IHN1bShwcm9iYWJpbGl0aWVzKSkgJT4lIAogIGFycmFuZ2UoZGVzYyhPYnNlcnZlZCkpIAoKbnVtX3BhcGVycyA8LSBjb3JyX2F1dGhvcnMgJT4lIAogIGZpbHRlcighaXMubmEoY291bnRyaWVzKSkgJT4lIAogIHB1bGwocG1pZCkgJT4lIAogIHVuaXF1ZSgpICU+JSAKICBsZW5ndGgoKQoKbnVtX3BhcGVycwoKbnVtX2hvbm9yZWVzIDwtIHN1bShpc2NiX2FmZl9jb3VudHJ5JHByb2JhYmlsaXRpZXMpCgpvYnNfdnNfZXhwX2FsbCA8LSBwdWJtZWRfYWZmX2NvdW50cnkgJT4lCiAgZ3JvdXBfYnkoY291bnRyaWVzKSAlPiUKICBzdW1tYXJpc2UobnVtX2F1dGhvcnMgPSBzdW0ocHJvYmFiaWxpdGllcykpICU+JQogIHVuZ3JvdXAoKSAlPiUgCiAgbXV0YXRlKGZyZXFfYWZmaSA9IG51bV9hdXRob3JzIC8gc3VtKG51bV9hdXRob3JzKSkgJT4lCiAgYXJyYW5nZShkZXNjKG51bV9hdXRob3JzKSkgJT4lCiAgbXV0YXRlKEV4cGVjdGVkID0gZnJlcV9hZmZpICogbnVtX2hvbm9yZWVzKSAlPiUKICBsZWZ0X2pvaW4oY291bnRyeV9yZXAsIGJ5ID0gJ2NvdW50cmllcycpICU+JQogIGxlZnRfam9pbihuYXRfdG9fcmVnLCBieSA9ICdjb3VudHJpZXMnKSAlPiUKICBzZWxlY3QoY291bnRyeV9uYW1lLCBldmVyeXRoaW5nKCkpICU+JQogIHNlbGVjdCgtYyhyZWdpb24sIGNvdW50cmllcykpICU+JQogIG11dGF0ZSgKICAgIE9ic2VydmVkID0gcmVwbGFjZV9uYShPYnNlcnZlZCwgMCksCiAgICBvdmVyX3JlcCA9IE9ic2VydmVkIC0gRXhwZWN0ZWQsCiAgICBvdGhlcl9ob25vcmVlcyA9IG51bV9ob25vcmVlcyAtIE9ic2VydmVkLAogICAgb3RoZXJfYXV0aG9ycyA9IG51bV9wYXBlcnMgLSBudW1fYXV0aG9ycwogICkKYGBgCgoKIyMjIEZpc2hlcidzIGV4YWN0IHRlc3QgYW5kIAojIyMjIFRhYmxlIG9mIHJlcHJlc2VudGF0aW9ucwpOdWxsIGh5cG90aGVzaXM6IEZvciBlYWNoIGNvdW50cnksIHRoZSBwcm9wb3J0aW9uIG9mIGhvbm9yZWVzIGFmZmlsaWF0ZWQgd2l0aCBhbiBpbnN0aXR1dGlvbi9jb21wYW55IGZyb20gdGhhdCBjb3VudHJ5IGlzIHNpbWlsYXIgdG8gdGhlIHByb3BvcnRpb24gb2YgYXV0aG9ycyBhZmZpbGlhdGVkIHdpdGggYW4gaW5zdGl0dXRpb24vY29tcGFueSBmcm9tIHRoYXQgY291bnRyeS4KCmBgYHtyIHdhcm5pbmc9RkFMU0UsIGZpZy53aWR0aCA9IDcqMS41LCBmaWcuaGVpZ2h0ID0gMi41KjEuNX0KbXlfZmlzaCA8LSBmdW5jdGlvbihkZikgewogIHJlcyA8LSBkZiAlPiUKICAgIHVubGlzdCgpICU+JQogICAgbWF0cml4KG5jb2wgPSAyLCBieXJvdyA9IFRSVUUpICU+JQogICAgbXlfcmlza3JhdGlvKGNvcnJlY3Rpb24gPSBUUlVFKQogIAogIHJlc19maXNoIDwtIGRmICU+JQogICAgdW5saXN0KCkgJT4lCiAgICBtYXRyaXgobmNvbCA9IDIpICU+JQogICAgZmlzaGVyLnRlc3QoKQogIAogIG9yIDwtIHJlc19maXNoJGVzdGltYXRlCiAgbF9vciA8LSByZXNfZmlzaCRjb25mLmludFsxXQogIHVfb3IgPC0gcmVzX2Zpc2gkY29uZi5pbnRbMl0KICBwMCA8LSBkZlsyXS8oZGZbMl0gKyBkZlsxXSkKICBmaXNoX3JyIDwtIG9yLygxIC0gcDAgKyBwMCpvcikKICBmaXNoX3JyX2xvd2VyIDwtIGxfb3IvKDEgLSBwMCArIHAwKmxfb3IpCiAgZmlzaF9ycl91cHBlciA8LSB1X29yLygxIC0gcDAgKyBwMCp1X29yKQogIAogIHJlcyRtZWFzdXJlWzIsIDE6M10gJT4lIAogICAgYyhwX3ZhbHVlID0gcmVzJHAudmFsdWVbMiwyXSkgJT4lIAogICAgYXMubWF0cml4KCkgJT4lIHQoKSAlPiUgZGF0YS5mcmFtZSgpCn0KCm5lc3RlZF9vYnNfZXhwIDwtIG9ic192c19leHBfYWxsICU+JQogIGZpbHRlcighaXMubmEoY291bnRyeV9uYW1lKSkgJT4lIAogIHNlbGVjdChjb3VudHJ5X25hbWUsIG90aGVyX2F1dGhvcnMsIG51bV9hdXRob3JzLCBvdGhlcl9ob25vcmVlcywgT2JzZXJ2ZWQpICU+JSAKICBncm91cF9ieShjb3VudHJ5X25hbWUpICU+JSAKICBuZXN0KCkgCgpmaXNoX29ic19leHAgPC0gbmVzdGVkX29ic19leHAgJT4lIAogIG11dGF0ZShmaXNoID0gbWFwKGRhdGEsIG15X2Zpc2gpKSAlPiUgCiAgZHBseXI6OnNlbGVjdCgtZGF0YSkgJT4lIAogIHVubmVzdCgpCgpgYGAKCmBgYHtyIGV2YWw9RkFMU0UsIGluY2x1ZGU9RkFMU0V9CiMgbWFudWFsIGNoZWNrCnggPSBuZXN0ZWRfb2JzX2V4cCAlPiUgCiAgZmlsdGVyKGNvdW50cnlfbmFtZSA9PSAnRmlubGFuZCcpICU+JSAKICB1bmdyb3VwKCkgJT4lIAogIHNlbGVjdChkYXRhKSAlPiUgCiAgdW5saXN0KCkgJT4lCiAgbWF0cml4KG5jb2wgPSAyLCBieXJvdyA9IFRSVUUpIAoKYTAgPC0geFsxLCAyXQpiMCA8LSB4WzEsIDFdCmExIDwtIHhbMiwgMl0KYjEgPC0geFsyLCAxXQpuMSA8LSBhMSArIGIxCm4wIDwtIGEwICsgYjAKbTAgPC0gYjAgKyBiMQptMSA8LSBhMCArIGExCgpsb2cyKG4wL24xKihhMSsxKS8oYTApKnFmKDEtMC4wMjUsIDIqKGExKzEpLCAyKmEwKSkKbG9nMihuMC9uMSooYTEpLyhhMCArIDEpL3FmKDEtMC4wMjUsIDIqKGEwICsgMSksIDIqYTEpKQpgYGAKCgojIyMgQ291bnRyeSBlbnJpY2htZW50IHRhYmxlIHsjZW5yaWNobWVudF90YWJ9CmBgYHtyfQpmaXNoX29ic19leHAgJT4lIAogIG11dGF0ZShjaSA9IHBhc3RlMCgnKCcsIHJvdW5kKGxvZzIobG93ZXIpLCAxKSwgJywgJywgCiAgICAgICAgICAgICAgICAgICAgIHJvdW5kKGxvZzIodXBwZXIpLCAxKSwgJyknKSwKICAgICAgICAgbGVzdGltYXRlID0gbG9nMihlc3RpbWF0ZSkpICU+JSAKICBsZWZ0X2pvaW4ob2JzX3ZzX2V4cF9hbGwsIGJ5ID0gJ2NvdW50cnlfbmFtZScpICU+JSAKICBzZWxlY3QoY291bnRyeV9uYW1lLCBmcmVxX2FmZmksIE9ic2VydmVkLCBFeHBlY3RlZCwgb3Zlcl9yZXAsCiAgICAgICAgICMgbG9nMmZjLCAKICAgICAgICAgZXN0aW1hdGUsIGxlc3RpbWF0ZSwgY2kpICU+JSAKICByZW5hbWUoJ0NvdW50cnknID0gJ2NvdW50cnlfbmFtZScsCiAgICAgICAgICdBdXRob3IgcHJvcG9ydGlvbicgPSAnZnJlcV9hZmZpJywKICAgICAgICAgJ09ic2VydmVkIC0gRXhwZWN0ZWQnID0gJ292ZXJfcmVwJywKICAgICAgICAgJ0VucmljaG1lbnQnID0gJ2VzdGltYXRlJywKICAgICAgICAgJ0xvZzIoZW5yaWNobWVudCknID0gJ2xlc3RpbWF0ZScsCiAgICAgICAgICc5NSUgQ29uZmlkZW5jZSBpbnRlcnZhbCcgPSAnY2knKSAlPiUgCiAgZGF0YXRhYmxlKHJvd25hbWVzID0gRkFMU0UpICU+JSAKICBmb3JtYXRQZXJjZW50YWdlKCdBdXRob3IgcHJvcG9ydGlvbicsIDIpICU+JSAKICBmb3JtYXRSb3VuZChjKCdPYnNlcnZlZCcsICdFeHBlY3RlZCcsICdPYnNlcnZlZCAtIEV4cGVjdGVkJywgCiAgICAgICAgICAgICAgICAnRW5yaWNobWVudCcsICdMb2cyKGVucmljaG1lbnQpJyksIDEpCmBgYAoKCmBgYHtyIGluY2x1ZGUgPSBGLCBldmFsID0gRiwgZmlnLndpZHRoID0gNyoxLjUsIGZpZy5oZWlnaHQgPSAyLjUqMS41fQojIHdvcmxkIG1hcCBvZiBlbnJpY2htZW50CmVucmljaF9kZiA8LSB3b3JsZCAlPiUgCiAgbGVmdF9qb2luKAogICAgZmlzaF9vYnNfZXhwICAlPiUgCiAgICAgIG11dGF0ZShsb2dfbG93ZXIgPSBjYXNlX3doZW4oCiAgICAgICAgbG93ZXIgPiAxIH4gbG9nMihsb3dlciksCiAgICAgICAgdXBwZXIgPCAxIH4gbG9nMih1cHBlciksCiAgICAgICAgVFJVRSB+IDApCiAgICAgICksIGJ5ID0gYygnbmFtZScgPSAnY291bnRyeV9uYW1lJykpCgplbnJpY2htZW50X21hcCA8LSBlbnJpY2hfZGYgJT4lIAogIGdncGxvdCgpICsKICBnZW9tX3NmKGFlcyhmaWxsID0gbG9nX2xvd2VyKSkgKwogIHNjYWxlX2ZpbGxfZ3JhZGllbnRuKAogICAgY29sb3VycyA9IGMoJyMzQ0JDNzVGRicsJ3doaXRlJywnIzQ0MDE1NEZGJyksCiAgICBuYS52YWx1ZSA9IE5BLAogICAgdmFsdWVzID0gc2NhbGVzOjpyZXNjYWxlKAogICAgICBjKG1pbihlbnJpY2hfZGYkbG9nX2xvd2VyLCBuYS5ybSA9IFQpLAogICAgICAgIDAsCiAgICAgICAgbWF4KGVucmljaF9kZiRsb2dfbG93ZXIsIG5hLnJtID0gVCkpKQogICkgKwogIGNvb3JkX3NmKGNycyA9ICcrcHJvaj1lcWVhcnRoICt3a3RleHQnKQplbnJpY2htZW50X21hcAojIGdnc2F2ZSgnZmlncy9lbnJpY2htZW50LW1hcC5wbmcnLCBlbnJpY2htZW50X21hcCwgd2lkdGggPSA3LCBoZWlnaHQgPSAyLjUpCiMgZXF1YWwgZWFydGggbWFwIHByb2plY3Rpb246CiMgaHR0cDovL2VxdWFsLWVhcnRoLmNvbS9lcXVhbC1lYXJ0aC1wcm9qZWN0aW9uLmh0bWwKYGBgCgojIyMjIENvbXB1dGUgZW5yaWNobWVudCBmcm9tIHByb3BvcnRpb24gY29tcGFyaXNvbnMKQWRhcHRlZCBmcm9tIGBlcGl0b29sczo6cmlza3JhdGlvKClgLgoKUHJlc2VudGF0aW9uIGVucmljaG1lbnQvZGVwbGV0aW9uIG9mIDIwIGNvdW50cmllcyB0aGF0IGhhdmUgdGhlIG1vc3QgcHVibGljYXRpb25zLgoKYGBge3IgZmlnLndpZHRoID0gNywgZmlnLmhlaWdodCA9IDMuNX0KZmlsdGVyZWRfb2JzX2V4cCA8LSBvYnNfdnNfZXhwX2FsbCAlPiUgCiAgbGVmdF9qb2luKGZpc2hfb2JzX2V4cCwgYnkgPSAnY291bnRyeV9uYW1lJykgJT4lIAogIHRvcF9uKDI1LCBudW1fYXV0aG9ycykgJT4lIAogIG11dGF0ZSgKICAgIGRpc3RhbmNlX3RvX251bGwgPSBjYXNlX3doZW4oCiAgICAgIGxvd2VyID4gMSB+IGxvd2VyIC0gMSwKICAgICAgVFJVRSB+IHVwcGVyIC0gMgogICAgKSwKICAgIHByZXNlbnRhdGlvbiA9IGNhc2Vfd2hlbigKICAgICAgbG93ZXIgPiAxIH4gJyMzNzdFQjgnLCAKICAgICAgdXBwZXIgPCAxIH4gJyNFNDFBMUMnLAogICAgICBUUlVFIH4gJ2dyZXkyMCcKICAgICksCiAgICBjb3VudHJ5X25hbWUgPSAgYXMuZmFjdG9yKGNvdW50cnlfbmFtZSkgJT4lIGZjdF9yZW9yZGVyKG51bV9hdXRob3JzKSkgJT4lIAogIGFycmFuZ2UoZGVzYyhudW1fYXV0aG9ycykpCgpwbG90X29ic19leHAgPC0gZmlsdGVyZWRfb2JzX2V4cCAlPiUKICBtdXRhdGUobGVzdGltYXRlID0gbG9nMihlc3RpbWF0ZSksCiAgICAgICAgIGxsb3dlciA9IGxvZzIobG93ZXIpLCAKICAgICAgICAgbHVwcGVyID0gbG9nMih1cHBlcikpICU+JSAKICBzZWxlY3QoY291bnRyeV9uYW1lLCBFeHBlY3RlZCwgT2JzZXJ2ZWQsIGxlc3RpbWF0ZSwgbGxvd2VyLCBsdXBwZXIsIHByZXNlbnRhdGlvbiwgb3Zlcl9yZXApICU+JSAKICBwaXZvdF9sb25nZXIoLSBjKGNvdW50cnlfbmFtZSwgcHJlc2VudGF0aW9uLCBvdmVyX3JlcCksIG5hbWVzX3RvID0gJ3R5cGUnKSAlPiUgCiAgbXV0YXRlKHN1YnR5cGUgPSBpZmVsc2UodHlwZSA9PSAnRXhwZWN0ZWQnIHwgdHlwZSA9PSAnT2JzZXJ2ZWQnLCAnU3FydChudW1iZXIgb2YgaG9ub3JlZXMpJywgJ0xvZzIgZW5yaWNobWVudCwgOTUlIENJJykpIAoKYGBgCgpgYGB7cn0Kc2F2ZShwbG90X29ic19leHAsIGZpbGUgPSAnUmRhdGEvYWZmaWxpYXRpb25zLlJkYXRhJykKYGBgCgojIyMgTG9nIGVucmljaG1lbnQgZmlndXJlIHsjZW5yaWNobWVudF9wbG90fQpgYGB7cn0KcGxvdF9vYnNfZXhwX3JpZ2h0IDwtIHBsb3Rfb2JzX2V4cCAlPiUgZmlsdGVyKHN1YnR5cGUgPT0gJ1NxcnQobnVtYmVyIG9mIGhvbm9yZWVzKScpCnBsb3Rfb2JzX2V4cF9sZWZ0IDwtIHBsb3Rfb2JzX2V4cCAlPiUgZmlsdGVyKHN1YnR5cGUgIT0gJ1NxcnQobnVtYmVyIG9mIGhvbm9yZWVzKScpCgplbnJpY2htZW50X3Bsb3RfbGVmdCA8LSBwbG90X29ic19leHBfbGVmdCAlPiUKICBnZ3Bsb3QoYWVzKHggPSBjb3VudHJ5X25hbWUpKSArCiAgY29vcmRfZmxpcCgpICsKICBsYWJzKHggPSBOVUxMLCB5ID0gYnF1b3RlKExvZ1syXSB+ICdlbnJpY2htZW50LCA5NSUgQ0knKSkgKwogIHRoZW1lKAogICAgbGVnZW5kLnBvc2l0aW9uID0gYygwLjksIDAuMyksCiAgICBheGlzLnRpdGxlID0gZWxlbWVudF90ZXh0KHNpemUgPSA5KSwKICAgIHBsb3QubWFyZ2luID0gbWFyZ2luKDUuNSwgMiwgNS41LCA1LjUsIHVuaXQgPSAncHQnKQogICkgKwogIHNjYWxlX2NvbG9yX2JyZXdlcih0eXBlID0gJ3F1YWwnLCBwYWxldHRlID0gJ1NldDEnKSArCiAgZ2VvbV9wb2ludHJhbmdlKAogICAgZGF0YSA9IHBsb3Rfb2JzX2V4cF9sZWZ0ICU+JQogICAgICBwaXZvdF93aWRlcihuYW1lc19mcm9tID0gdHlwZSksCiAgICBhZXMoeSA9IGxlc3RpbWF0ZSwKICAgICAgICB5bWluID0gbGxvd2VyLAogICAgICAgIHltYXggPSBsdXBwZXIsCiAgICAgICAgZ3JvdXAgPSBjb3VudHJ5X25hbWUpLAogICAgY29sb3IgPSBmaWx0ZXJlZF9vYnNfZXhwJHByZXNlbnRhdGlvbiwKICAgIHN0cm9rZSA9IDAuMywgZmF0dGVuID0gMgogICkgKwogIHNjYWxlX3hfZGlzY3JldGUocG9zaXRpb24gPSAndG9wJywgbGFiZWxzID0gTlVMTCkgKwogIHNjYWxlX3lfcmV2ZXJzZSgpICsKICBnZW9tX2hsaW5lKGRhdGEgPSBwbG90X29ic19leHBfbGVmdCwgYWVzKHlpbnRlcmNlcHQgPSAwKSwgbGluZXR5cGUgPSAyKQoKb3ZlcnJlcF9jb3VudHJpZXMgPC0gcGxvdF9vYnNfZXhwX3JpZ2h0ICU+JSAKICBmaWx0ZXIob3Zlcl9yZXAgPiAwKSAlPiUgCiAgcHVsbChjb3VudHJ5X25hbWUpCgplbnJpY2htZW50X3Bsb3RfcmlnaHQgPC0gcGxvdF9vYnNfZXhwX3JpZ2h0ICU+JQogIGdncGxvdChhZXMoeCA9IGNvdW50cnlfbmFtZSwgeSA9IHZhbHVlKSkgKwogIGdlb21fbGluZShhZXMoZ3JvdXAgPSBjb3VudHJ5X25hbWUpLAogICAgICAgICAgICBjb2xvciA9IHJldihwbG90X29ic19leHBfcmlnaHQkcHJlc2VudGF0aW9uKSkgKwogIGdlb21fcG9pbnQoYWVzKHNoYXBlID0gdHlwZSksIGNvbG9yID0gJ2dyZXkyMCcpICsKICBsYWJzKHggPSBOVUxMLCB5ID0gJ051bWJlciBvZiBob25vcmVlcycpICsKICB0aGVtZSgKICAgIGF4aXMudGl0bGUgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDkpLAogICAgbGVnZW5kLnBvc2l0aW9uID0gYygwLjc1ICwgMC4zKSwKICAgIGF4aXMudGV4dC55ID0gZWxlbWVudF90ZXh0KAogICAgICBjb2xvciA9IHJldihmaWx0ZXJlZF9vYnNfZXhwJHByZXNlbnRhdGlvbiksCiAgICAgIGhqdXN0ID0gMC41KSwKICAgIHBsb3QubWFyZ2luID0gbWFyZ2luKDUuNSwgNS41LCA4LjUsIDIsIHVuaXQgPSAncHQnKQogICkgKwogIHNjYWxlX3lfc3FydChicmVha3MgPSBjKDAsIDEsIDQsIDE2LCA1MCwgMTIwLCAyMjUpKSArCiAgIyBzY2FsZV9jb2xvcl9icmV3ZXIodHlwZSA9ICdxdWFsJywgcGFsZXR0ZSA9ICdTZXQxJykgKwogIGNvb3JkX2ZsaXAoKSArCiAgZ2VvbV90ZXh0KAogICAgZGF0YSA9IC4gJT4lIAogICAgICBmaWx0ZXIodHlwZSA9PSAnRXhwZWN0ZWQnLCAhKGNvdW50cnlfbmFtZSAlaW4lIG92ZXJyZXBfY291bnRyaWVzKSksCiAgICBudWRnZV95ID0gMS4yLCBhZXMobGFiZWwgPSByb3VuZChvdmVyX3JlcCwgMSkpLCBzaXplID0gMi41KSArCiAgZ2VvbV90ZXh0KAogICAgZGF0YSA9IC4gJT4lIAogICAgICBmaWx0ZXIodHlwZSA9PSAnRXhwZWN0ZWQnLCBjb3VudHJ5X25hbWUgJWluJSBvdmVycmVwX2NvdW50cmllcyksIAogICAgbnVkZ2VfeSA9IC0xLjIsIGFlcyhsYWJlbCA9IHJvdW5kKG92ZXJfcmVwLCAxKSksIHNpemUgPSAyLjUpCgplbnJpY2htZW50X3Bsb3QgPC0gY293cGxvdDo6cGxvdF9ncmlkKGVucmljaG1lbnRfcGxvdF9sZWZ0LCBlbnJpY2htZW50X3Bsb3RfcmlnaHQsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmVsX3dpZHRocyA9IGMoMSwgMS4zKSkKZW5yaWNobWVudF9wbG90Cmdnc2F2ZSgnZmlncy9lbnJpY2htZW50LXBsb3QucG5nJywgZW5yaWNobWVudF9wbG90LCB3aWR0aCA9IDUuNSwgaGVpZ2h0ID0gMy41LCBkcGkgPSA2MDApCgpgYGAKCgpgYGB7cn0Kc2Vzc2lvbkluZm8oKQpgYGAKCg==
diff --git a/docs/13.us-race-analysis.html b/docs/13.us-race-analysis.html index 50c5b40..111e87d 100644 --- a/docs/13.us-race-analysis.html +++ b/docs/13.us-race-analysis.html @@ -1674,8 +1674,8 @@

Race/ethnicity predictions

rename('surname' = last_name_simple) %>% predict_race(surname.only = T, impute.missing = F)
## [1] "Proceeding with surname-only predictions..."
-
## Warning in merge_surnames(voter.file, impute.missing = impute.missing): 5166
-## surnames were not matched.
+
## Warning in merge_surnames(voter.file, impute.missing =
+## impute.missing): 5166 surnames were not matched.
pubmed_us_race <- pubmed_race_pmids %>% 
   group_by(pmid, journal, publication_date, year, adjusted_citations) %>% 
   summarise_at(vars(contains('pred.')), mean, na.rm = T, .groups = 'drop') %>% 
@@ -1685,8 +1685,8 @@ 

Race/ethnicity predictions

rename('surname' = last_name_simple) %>% predict_race(surname.only = T, impute.missing = F)
## [1] "Proceeding with surname-only predictions..."
-
## Warning in merge_surnames(voter.file, impute.missing = impute.missing): 100
-## surnames were not matched.
+
## Warning in merge_surnames(voter.file, impute.missing =
+## impute.missing): 100 surnames were not matched.
my_jours <- unique(pubmed_us_race$journal)
 my_confs <- unique(iscb_us_race$conference)
 n_jours <- length(my_jours)
@@ -1795,10 +1795,14 @@ 

Hypothesis testing

## -0.8113 -0.5414 -0.0942 0.2651 16.6148 ## ## Coefficients: -## Estimate Std. Error t value Pr(>|t|) -## (Intercept) 0.612841 0.004475 136.937 <2e-16 *** -## year -0.041522 0.004554 -9.118 <2e-16 *** -## typeKeynote speakers/Fellows 0.083082 0.038991 2.131 0.0331 * +## Estimate Std. Error t value +## (Intercept) 0.612841 0.004475 136.937 +## year -0.041522 0.004554 -9.118 +## typeKeynote speakers/Fellows 0.083082 0.038991 2.131 +## Pr(>|t|) +## (Intercept) <2e-16 *** +## year <2e-16 *** +## typeKeynote speakers/Fellows 0.0331 * ## --- ## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 ## @@ -1820,10 +1824,14 @@

Hypothesis testing

## -0.2870 -0.2596 -0.2303 0.1112 6.2454 ## ## Coefficients: -## Estimate Std. Error t value Pr(>|t|) -## (Intercept) 0.247463 0.003178 77.861 < 2e-16 *** -## year 0.043328 0.003234 13.397 < 2e-16 *** -## typeKeynote speakers/Fellows -0.099391 0.027691 -3.589 0.000332 *** +## Estimate Std. Error t value +## (Intercept) 0.247463 0.003178 77.861 +## year 0.043328 0.003234 13.397 +## typeKeynote speakers/Fellows -0.099391 0.027691 -3.589 +## Pr(>|t|) +## (Intercept) < 2e-16 *** +## year < 2e-16 *** +## typeKeynote speakers/Fellows 0.000332 *** ## --- ## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 ## @@ -1845,10 +1853,14 @@

Hypothesis testing

## -0.1573 -0.1143 -0.0837 0.0159 9.6671 ## ## Coefficients: -## Estimate Std. Error t value Pr(>|t|) -## (Intercept) 0.139696 0.001617 86.395 <2e-16 *** -## year -0.001807 0.001645 -1.098 0.272 -## typeKeynote speakers/Fellows 0.016309 0.014088 1.158 0.247 +## Estimate Std. Error t value +## (Intercept) 0.139696 0.001617 86.395 +## year -0.001807 0.001645 -1.098 +## typeKeynote speakers/Fellows 0.016309 0.014088 1.158 +## Pr(>|t|) +## (Intercept) <2e-16 *** +## year 0.272 +## typeKeynote speakers/Fellows 0.247 ## --- ## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 ## diff --git a/docs/14.us-name-origin.html b/docs/14.us-name-origin.html index c71358d..c5d0a57 100644 --- a/docs/14.us-name-origin.html +++ b/docs/14.us-name-origin.html @@ -1720,17 +1720,12 @@

Organize data

values_to = "probabilities" ) %>% filter(!is.na(probabilities)) %>% - group_by(type, year, region) %>% - mutate( - pmc_citations_year = mean(adjusted_citations), - weight = adjusted_citations / pmc_citations_year, - weighted_probs = probabilities * weight - ) + group_by(type, year, region) iscb_pubmed_sum_oth <- iscb_pubmed_oth %>% summarise( - mean_prob = mean(weighted_probs), - se_prob = sqrt(var(probabilities) * sum(weight^2) / (sum(weight)^2)), + mean_prob = mean(probabilities), + se_prob = sd(probabilities)/sqrt(n()), me_prob = alpha_threshold * se_prob, .groups = "drop" ) @@ -1768,8 +1763,8 @@

Figures for paper

fig_us_name_origin <- cowplot::plot_grid(fig_us_name_origina, fig_us_name_originb, labels = "AUTO", ncol = 1, rel_heights = c(1.3, 1))
## `geom_smooth()` using formula 'y ~ s(x, bs = "cs")'
fig_us_name_origin
-

-
ggsave("figs/us_name_origin.png", fig_us_name_origin, width = 6.5, height = 5.5)
+

+
ggsave("figs/us_name_origin.png", fig_us_name_origin, width = 6.5, height = 5.5, dpi = 600)
 ggsave("figs/us_name_origin.svg", fig_us_name_origin, width = 6.5, height = 5.5)
@@ -1782,17 +1777,17 @@

Hypothesis testing

type = relevel(as.factor(type), ref = "Pubmed authors") ) main_lm <- function(regioni) { - glm(type ~ year + weighted_probs, + glm(type ~ year + probabilities, data = iscb_lm %>% - filter(region == regioni, !is.na(weighted_probs), year(year) >= 2002), + filter(region == regioni, !is.na(probabilities), year(year) >= 2002), family = "binomial" ) } inte_lm <- function(regioni) { - glm(type ~ weighted_probs * year, + glm(type ~ probabilities * year, data = iscb_lm %>% - filter(region == regioni, !is.na(weighted_probs), year(year) >= 2002), + filter(region == regioni, !is.na(probabilities), year(year) >= 2002), family = "binomial" ) } @@ -1803,108 +1798,108 @@

Hypothesis testing

lapply(main_list, broom::tidy)
## $CelticEnglish
 ## # A tibble: 3 x 5
-##   term            estimate std.error statistic  p.value
-##   <chr>              <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)     4.91     0.523         9.39  6.14e-21
-## 2 year           -0.000616 0.0000346   -17.8   6.39e-71
-## 3 weighted_probs  0.0434   0.0837        0.519 6.04e- 1
+##   term           estimate std.error statistic  p.value
+##   <chr>             <dbl>     <dbl>     <dbl>    <dbl>
+## 1 (Intercept)    4.76     0.535          8.89 5.86e-19
+## 2 year          -0.000611 0.0000348    -17.6  3.87e-69
+## 3 probabilities  0.269    0.185          1.46 1.46e- 1
 ## 
 ## $EastAsian
 ## # A tibble: 3 x 5
-##   term            estimate std.error statistic  p.value
-##   <chr>              <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)     4.75     0.520          9.13 6.68e-20
-## 2 year           -0.000595 0.0000347    -17.2  5.24e-66
-## 3 weighted_probs -1.77     0.501         -3.52 4.28e- 4
+##   term           estimate std.error statistic  p.value
+##   <chr>             <dbl>     <dbl>     <dbl>    <dbl>
+## 1 (Intercept)    4.73     0.519          9.12 7.71e-20
+## 2 year          -0.000592 0.0000346    -17.1  9.97e-66
+## 3 probabilities -1.89     0.455         -4.14 3.43e- 5
 ## 
 ## $European
 ## # A tibble: 3 x 5
-##   term            estimate std.error statistic  p.value
-##   <chr>              <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)     4.88     0.521          9.36 7.82e-21
-## 2 year           -0.000616 0.0000345    -17.8  3.48e-71
-## 3 weighted_probs  0.173    0.109          1.58 1.14e- 1
+##   term           estimate std.error statistic  p.value
+##   <chr>             <dbl>     <dbl>     <dbl>    <dbl>
+## 1 (Intercept)    4.78     0.524          9.12 7.75e-20
+## 2 year          -0.000614 0.0000345    -17.8  6.78e-71
+## 3 probabilities  0.446    0.194          2.30 2.16e- 2
 ## 
 ## $OtherCategories
 ## # A tibble: 3 x 5
-##   term            estimate std.error statistic  p.value
-##   <chr>              <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)     4.94     0.519         9.52  1.79e-21
-## 2 year           -0.000618 0.0000345   -17.9   1.17e-71
-## 3 weighted_probs  0.0518   0.136         0.381 7.03e- 1
+## term estimate std.error statistic p.value +## <chr> <dbl> <dbl> <dbl> <dbl> +## 1 (Intercept) 4.93 0.520 9.48 2.58e-21 +## 2 year -0.000618 0.0000345 -17.9 1.18e-71 +## 3 probabilities 0.0957 0.212 0.451 6.52e- 1
inte_list <- lapply(large_regions, inte_lm)
 lapply(inte_list, broom::tidy)
## [[1]]
 ## # A tibble: 4 x 5
 ##   term                  estimate std.error statistic  p.value
 ##   <chr>                    <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)          5.01      0.563         8.89  5.91e-19
-## 2 weighted_probs      -0.228     0.591        -0.386 7.00e- 1
-## 3 year                -0.000623  0.0000377   -16.5   2.45e-61
-## 4 weighted_probs:year  0.0000201 0.0000425     0.473 6.36e- 1
+## 1 (Intercept)         4.81       0.730        6.60   4.16e-11
+## 2 probabilities       0.128      1.32         0.0969 9.23e- 1
+## 3 year               -0.000615   0.0000479  -12.8    9.81e-38
+## 4 probabilities:year  0.00000953 0.0000883    0.108  9.14e- 1
 ## 
 ## [[2]]
 ## # A tibble: 4 x 5
-##   term                  estimate std.error statistic  p.value
-##   <chr>                    <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)          4.70      0.540         8.72  2.89e-18
-## 2 weighted_probs      -0.524     4.08         -0.128 8.98e- 1
-## 3 year                -0.000592  0.0000359   -16.5   6.46e-61
-## 4 weighted_probs:year -0.0000794 0.000261     -0.304 7.61e- 1
+##   term                 estimate std.error statistic  p.value
+##   <chr>                   <dbl>     <dbl>     <dbl>    <dbl>
+## 1 (Intercept)         4.71      0.536         8.78  1.57e-18
+## 2 probabilities      -1.29      3.81         -0.339 7.34e- 1
+## 3 year               -0.000591  0.0000357   -16.5   1.68e-61
+## 4 probabilities:year -0.0000380 0.000243     -0.157 8.76e- 1
 ## 
 ## [[3]]
 ## # A tibble: 4 x 5
-##   term                  estimate std.error statistic  p.value
-##   <chr>                    <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)          5.07      0.573         8.85  9.11e-19
-## 2 weighted_probs      -0.462     0.821        -0.563 5.73e- 1
-## 3 year                -0.000629  0.0000382   -16.5   7.11e-61
-## 4 weighted_probs:year  0.0000437 0.0000549     0.796 4.26e- 1
+##   term                 estimate std.error statistic  p.value
+##   <chr>                   <dbl>     <dbl>     <dbl>    <dbl>
+## 1 (Intercept)         5.17      0.674         7.67  1.77e-14
+## 2 probabilities      -0.809     1.40         -0.577 5.64e- 1
+## 3 year               -0.000640  0.0000449   -14.3   3.42e-46
+## 4 probabilities:year  0.0000840 0.0000926     0.906 3.65e- 1
 ## 
 ## [[4]]
 ## # A tibble: 4 x 5
-##   term                  estimate std.error statistic  p.value
-##   <chr>                    <dbl>     <dbl>     <dbl>    <dbl>
-## 1 (Intercept)          5.04      0.587         8.58  9.33e-18
-## 2 weighted_probs      -0.320     1.04         -0.308 7.58e- 1
-## 3 year                -0.000625  0.0000393   -15.9   6.63e-57
-## 4 weighted_probs:year  0.0000251 0.0000690     0.364 7.16e- 1
+## term estimate std.error statistic p.value +## <chr> <dbl> <dbl> <dbl> <dbl> +## 1 (Intercept) 5.22 0.670 7.79 6.76e-15 +## 2 probabilities -0.964 1.59 -0.605 5.45e- 1 +## 3 year -0.000637 0.0000447 -14.2 4.57e-46 +## 4 probabilities:year 0.0000701 0.000104 0.673 5.01e- 1
for (i in 1:4) {
   print(anova(main_list[[i]], inte_list[[i]], test = "Chisq"))
 }
## Analysis of Deviance Table
 ## 
-## Model 1: type ~ year + weighted_probs
-## Model 2: type ~ weighted_probs * year
+## Model 1: type ~ year + probabilities
+## Model 2: type ~ probabilities * year
 ##   Resid. Df Resid. Dev Df Deviance Pr(>Chi)
-## 1     26398     2066.7                     
-## 2     26397     2066.5  1   0.2267    0.634
+## 1     26398     2064.9                     
+## 2     26397     2064.9  1 0.011635   0.9141
 ## Analysis of Deviance Table
 ## 
-## Model 1: type ~ year + weighted_probs
-## Model 2: type ~ weighted_probs * year
+## Model 1: type ~ year + probabilities
+## Model 2: type ~ probabilities * year
 ##   Resid. Df Resid. Dev Df Deviance Pr(>Chi)
-## 1     26398     2043.8                     
-## 2     26397     2043.7  1 0.089951   0.7642
+## 1     26398     2036.7                     
+## 2     26397     2036.7  1 0.024177   0.8764
 ## Analysis of Deviance Table
 ## 
-## Model 1: type ~ year + weighted_probs
-## Model 2: type ~ weighted_probs * year
+## Model 1: type ~ year + probabilities
+## Model 2: type ~ probabilities * year
 ##   Resid. Df Resid. Dev Df Deviance Pr(>Chi)
-## 1     26398     2064.9                     
-## 2     26397     2064.2  1  0.63868   0.4242
+## 1     26398     2061.9                     
+## 2     26397     2061.1  1  0.82361   0.3641
 ## Analysis of Deviance Table
 ## 
-## Model 1: type ~ year + weighted_probs
-## Model 2: type ~ weighted_probs * year
+## Model 1: type ~ year + probabilities
+## Model 2: type ~ probabilities * year
 ##   Resid. Df Resid. Dev Df Deviance Pr(>Chi)
 ## 1     26398     2066.8                     
-## 2     26397     2066.7  1  0.13195   0.7164
+## 2 26397 2066.3 1 0.45537 0.4998

Interaction terms do not predict type over and above the main effect of name origin probability and year (p > 0.01).

Conclusion

-

An East Asian name has 0.1709525 the odds of being selected as an honoree, significantly lower compared to other names (\(\beta_\textrm{East Asian} =\) -1.7664, P = 0.00042758). The two groups of scientists did not have a significant association with names predicted to be Celtic/English (P = 0.60355), European (P = 0.11373), or in Other categories (P = 0.70348).

+

An East Asian name has 0.1516018 the odds of being selected as an honoree, significantly lower compared to other names (\(\beta_\textrm{East Asian} =\) -1.8865, P = 3.4282e-05). The two groups of scientists did not have a significant association with names predicted to be Celtic/English (P = 0.14566), European (P = 0.021596), or in Other categories (P = 0.65199).

Supplement

@@ -1948,7 +1943,8 @@

Supplementary Figure S7

## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C ## ## attached base packages: -## [1] stats graphics grDevices utils datasets methods base +## [1] stats graphics grDevices utils datasets methods +## [7] base ## ## other attached packages: ## [1] broom_0.7.2 DT_0.16 epitools_0.5-10.1 @@ -1959,45 +1955,62 @@

Supplementary Figure S7

## [16] tibble_3.0.4 ggplot2_3.3.2 tidyverse_1.3.0 ## ## loaded via a namespace (and not attached): -## [1] colorspace_2.0-0 ellipsis_0.3.1 class_7.3-17 -## [4] rprojroot_1.3-2 fs_1.5.0 rstudioapi_0.12 -## [7] farver_2.0.3 remotes_2.2.0 prodlim_2019.11.13 -## [10] fansi_0.4.1 xml2_1.3.2 codetools_0.2-16 -## [13] splines_4.0.3 knitr_1.30 pkgload_1.1.0 -## [16] jsonlite_1.7.1 pROC_1.16.2 dbplyr_2.0.0 -## [19] rgeos_0.5-5 compiler_4.0.3 httr_1.4.2 -## [22] backports_1.2.0 assertthat_0.2.1 Matrix_1.2-18 -## [25] cli_2.1.0 htmltools_0.5.0 prettyunits_1.1.1 -## [28] tools_4.0.3 gtable_0.3.0 glue_1.4.2 -## [31] rnaturalearthdata_0.1.0 reshape2_1.4.4 Rcpp_1.0.5 -## [34] cellranger_1.1.0 vctrs_0.3.4 svglite_1.2.3.2 -## [37] nlme_3.1-149 iterators_1.0.13 crosstalk_1.1.0.1 -## [40] timeDate_3043.102 gower_0.2.2 xfun_0.19 -## [43] ps_1.4.0 testthat_3.0.0 rvest_0.3.6 -## [46] lifecycle_0.2.0 devtools_2.3.2 MASS_7.3-53 -## [49] scales_1.1.1 ipred_0.9-9 hms_0.5.3 -## [52] RColorBrewer_1.1-2 yaml_2.2.1 curl_4.3 -## [55] memoise_1.1.0 rpart_4.1-15 stringi_1.5.3 -## [58] desc_1.2.0 foreach_1.5.1 e1071_1.7-4 -## [61] pkgbuild_1.1.0 lava_1.6.8.1 systemfonts_0.3.2 -## [64] rlang_0.4.8 pkgconfig_2.0.3 evaluate_0.14 -## [67] sf_0.9-6 recipes_0.1.15 htmlwidgets_1.5.2 -## [70] labeling_0.4.2 cowplot_1.1.0 tidyselect_1.1.0 -## [73] processx_3.4.4 plyr_1.8.6 magrittr_1.5 -## [76] R6_2.5.0 generics_0.1.0 DBI_1.1.0 -## [79] mgcv_1.8-33 pillar_1.4.6 haven_2.3.1 -## [82] withr_2.3.0 units_0.6-7 survival_3.2-7 -## [85] sp_1.4-4 nnet_7.3-14 modelr_0.1.8 -## [88] crayon_1.3.4 KernSmooth_2.23-17 utf8_1.1.4 -## [91] rmarkdown_2.5 usethis_1.6.3 grid_4.0.3 -## [94] readxl_1.3.1 data.table_1.13.2 callr_3.5.1 -## [97] ModelMetrics_1.2.2.2 reprex_0.3.0 digest_0.6.27 -## [100] classInt_0.4-3 stats4_4.0.3 munsell_0.5.0 +## [1] colorspace_2.0-0 ellipsis_0.3.1 +## [3] class_7.3-17 rprojroot_1.3-2 +## [5] fs_1.5.0 rstudioapi_0.12 +## [7] farver_2.0.3 remotes_2.2.0 +## [9] prodlim_2019.11.13 fansi_0.4.1 +## [11] xml2_1.3.2 codetools_0.2-16 +## [13] splines_4.0.3 knitr_1.30 +## [15] pkgload_1.1.0 jsonlite_1.7.1 +## [17] pROC_1.16.2 dbplyr_2.0.0 +## [19] rgeos_0.5-5 compiler_4.0.3 +## [21] httr_1.4.2 backports_1.2.0 +## [23] assertthat_0.2.1 Matrix_1.2-18 +## [25] cli_2.1.0 htmltools_0.5.0 +## [27] prettyunits_1.1.1 tools_4.0.3 +## [29] gtable_0.3.0 glue_1.4.2 +## [31] rnaturalearthdata_0.1.0 reshape2_1.4.4 +## [33] Rcpp_1.0.5 cellranger_1.1.0 +## [35] vctrs_0.3.4 svglite_1.2.3.2 +## [37] nlme_3.1-149 iterators_1.0.13 +## [39] crosstalk_1.1.0.1 timeDate_3043.102 +## [41] gower_0.2.2 xfun_0.19 +## [43] ps_1.4.0 testthat_3.0.0 +## [45] rvest_0.3.6 lifecycle_0.2.0 +## [47] devtools_2.3.2 MASS_7.3-53 +## [49] scales_1.1.1 ipred_0.9-9 +## [51] hms_0.5.3 RColorBrewer_1.1-2 +## [53] yaml_2.2.1 curl_4.3 +## [55] memoise_1.1.0 rpart_4.1-15 +## [57] stringi_1.5.3 desc_1.2.0 +## [59] foreach_1.5.1 e1071_1.7-4 +## [61] pkgbuild_1.1.0 lava_1.6.8.1 +## [63] systemfonts_0.3.2 rlang_0.4.8 +## [65] pkgconfig_2.0.3 evaluate_0.14 +## [67] sf_0.9-6 recipes_0.1.15 +## [69] htmlwidgets_1.5.2 labeling_0.4.2 +## [71] cowplot_1.1.0 tidyselect_1.1.0 +## [73] processx_3.4.4 plyr_1.8.6 +## [75] magrittr_1.5 R6_2.5.0 +## [77] generics_0.1.0 DBI_1.1.0 +## [79] mgcv_1.8-33 pillar_1.4.6 +## [81] haven_2.3.1 withr_2.3.0 +## [83] units_0.6-7 survival_3.2-7 +## [85] sp_1.4-4 nnet_7.3-14 +## [87] modelr_0.1.8 crayon_1.3.4 +## [89] KernSmooth_2.23-17 utf8_1.1.4 +## [91] rmarkdown_2.5 usethis_1.6.3 +## [93] grid_4.0.3 readxl_1.3.1 +## [95] data.table_1.13.2 callr_3.5.1 +## [97] ModelMetrics_1.2.2.2 reprex_0.3.0 +## [99] digest_0.6.27 classInt_0.4-3 +## [101] stats4_4.0.3 munsell_0.5.0 ## [103] viridisLite_0.3.0 sessioninfo_1.1.1
-
LS0tCnRpdGxlOiAiUmVwcmVzZW50YXRpb24gYW5hbHlzaXMgb2YgbmFtZSBvcmlnaW4gaW4gdGhlIFVTIgotLS0KCmBgYHtyIHNldHVwLCBpbmNsdWRlPUZBTFNFfQpsaWJyYXJ5KHRpZHl2ZXJzZSkKbGlicmFyeShsdWJyaWRhdGUpCnNvdXJjZSgidXRpbHMvci11dGlscy5SIikKdGhlbWVfc2V0KHRoZW1lX2J3KCkgKyB0aGVtZShsZWdlbmQudGl0bGUgPSBlbGVtZW50X2JsYW5rKCkpKQpgYGAKCk9ubHkga2VlcCBhcnRpY2xlcyBmcm9tIDIwMDIgYmVjYXVzZSBmZXcgYXV0aG9ycyBoYWQgbmF0aW9uYWxpdHkgcHJlZGljdGlvbnMgYmVmb3JlIDIwMDIgKG1vc3RseSBkdWUgdG8gbWlzc2luZyBtZXRhZGF0YSkuClNlZSBbMDkzLnN1bW1hcnktc3RhdHNdKGRvY3MvMDkzLnN1bW1hcnktc3RhdHMuaHRtbCkgZm9yIG1vcmUgZGV0YWlscy4KCmBgYHtyfQpsb2FkKCJSZGF0YS9yYXdzLlJkYXRhIikKCmFscGhhX3RocmVzaG9sZCA8LSBxbm9ybSgwLjk3NSkKCnB1Ym1lZF9uYXRfZGYgPC0gY29ycl9hdXRob3JzICU+JQogIGZpbHRlcih5ZWFyKHllYXIpID49IDIwMDIpICU+JQogIHNlcGFyYXRlX3Jvd3MoY291bnRyaWVzLCBzZXAgPSAiLCIpICU+JQogIGZpbHRlcihjb3VudHJpZXMgPT0gIlVTIikgJT4lCiAgbGVmdF9qb2luKG5hdGlvbmFsaXplX2RmLCBieSA9IGMoImZvcmVfbmFtZSIsICJsYXN0X25hbWUiKSkgJT4lCiAgZ3JvdXBfYnkocG1pZCwgam91cm5hbCwgcHVibGljYXRpb25fZGF0ZSwgeWVhciwgYWRqdXN0ZWRfY2l0YXRpb25zKSAlPiUKICBzdW1tYXJpc2VfYXQodmFycyhBZnJpY2FuOlNvdXRoQXNpYW4pLCBtZWFuLCBuYS5ybSA9IFQpICU+JQogIHVuZ3JvdXAoKQoKaXNjYl9uYXRfZGYgPC0ga2V5bm90ZXMgJT4lCiAgc2VwYXJhdGVfcm93cyhhZmZsY291bnRyaWVzLCBzZXAgPSAiXFx8IikgJT4lCiAgZmlsdGVyKGFmZmxjb3VudHJpZXMgPT0gIlVuaXRlZCBTdGF0ZXMiKSAlPiUKICBsZWZ0X2pvaW4obmF0aW9uYWxpemVfZGYsIGJ5ID0gYygiZm9yZV9uYW1lIiwgImxhc3RfbmFtZSIpKQoKc3RhcnRfeWVhciA8LSAxOTkyCmVuZF95ZWFyIDwtIDIwMTkKbl95ZWFycyA8LSBlbmRfeWVhciAtIHN0YXJ0X3llYXIKbXlfam91cnMgPC0gdW5pcXVlKHB1Ym1lZF9uYXRfZGYkam91cm5hbCkKbXlfY29uZnMgPC0gdW5pcXVlKGlzY2JfbmF0X2RmJGNvbmZlcmVuY2UpCm5fam91cnMgPC0gbGVuZ3RoKG15X2pvdXJzKQpuX2NvbmZzIDwtIGxlbmd0aChteV9jb25mcykKcmVnaW9uX2xldmVscyA8LSBwYXN0ZShjKCJDZWx0aWMvRW5nbGlzaCIsICJFdXJvcGVhbiIsICJFYXN0IEFzaWFuIiwgIkhpc3BhbmljIiwgIlNvdXRoIEFzaWFuIiwgIkFyYWJpYyIsICJIZWJyZXciLCAiQWZyaWNhbiIsICJOb3JkaWMiLCAiR3JlZWsiKSwgIm5hbWVzIikKCnJlZ2lvbl9jb2xzIDwtIGMoIiNmZmZmYjMiLCAiI2ZjY2RlNSIsICIjYjNkZTY5IiwgIiNmZGI0NjIiLCAiIzgwYjFkMyIsICIjOGRkM2M3IiwgIiNiZWJhZGEiLCAiI2ZiODA3MiIsICIjYmM4MGJkIiwgIiNjY2ViYzUiKQpgYGAKCiMjIE9yZ2FuaXplIGRhdGEKClByZXBhcmUgZGF0YSBmcmFtZXMgZm9yIGxhdGVyIGFuYWx5c2VzOgoKLSByYmluZCByZXN1bHRzIG9mIHJhY2UgcHJlZGljdGlvbnMgaW4gaXNjYiBhbmQgUHVibWVkCi0gcGl2b3QgbG9uZwotIGNvbXB1dGUgbWVhbiwgc2QsIG1hcmdpbmFsIGVycm9yCgpgYGB7cn0KaXNjYl9wdWJtZWRfb3RoIDwtIGlzY2JfbmF0X2RmICU+JQogIHJlbmFtZSgiam91cm5hbCIgPSBjb25mZXJlbmNlKSAlPiUKICBzZWxlY3QoeWVhciwgam91cm5hbCwgQWZyaWNhbjpTb3V0aEFzaWFuLCBwdWJsaWNhdGlvbl9kYXRlKSAlPiUKICBtdXRhdGUoCiAgICB0eXBlID0gIktleW5vdGUgc3BlYWtlcnMvRmVsbG93cyIsCiAgICBhZGp1c3RlZF9jaXRhdGlvbnMgPSAxCiAgKSAlPiUKICBiaW5kX3Jvd3MoCiAgICBwdWJtZWRfbmF0X2RmICU+JQogICAgICBzZWxlY3QoeWVhciwgam91cm5hbCwgQWZyaWNhbjpTb3V0aEFzaWFuLCBwdWJsaWNhdGlvbl9kYXRlLCBhZGp1c3RlZF9jaXRhdGlvbnMpICU+JQogICAgICBtdXRhdGUodHlwZSA9ICJQdWJtZWQgYXV0aG9ycyIpCiAgKSAlPiUKICBtdXRhdGUoT3RoZXJDYXRlZ29yaWVzID0gU291dGhBc2lhbiArIEhpc3BhbmljICsgSmV3aXNoICsgTXVzbGltICsgTm9yZGljICsgR3JlZWsgKyBBZnJpY2FuKSAlPiUKICBwaXZvdF9sb25nZXIoYyhBZnJpY2FuOlNvdXRoQXNpYW4sIE90aGVyQ2F0ZWdvcmllcyksCiAgICBuYW1lc190byA9ICJyZWdpb24iLAogICAgdmFsdWVzX3RvID0gInByb2JhYmlsaXRpZXMiCiAgKSAlPiUKICBmaWx0ZXIoIWlzLm5hKHByb2JhYmlsaXRpZXMpKSAlPiUKICBncm91cF9ieSh0eXBlLCB5ZWFyLCByZWdpb24pICU+JQogIG11dGF0ZSgKICAgIHBtY19jaXRhdGlvbnNfeWVhciA9IG1lYW4oYWRqdXN0ZWRfY2l0YXRpb25zKSwKICAgIHdlaWdodCA9IGFkanVzdGVkX2NpdGF0aW9ucyAvIHBtY19jaXRhdGlvbnNfeWVhciwKICAgIHdlaWdodGVkX3Byb2JzID0gcHJvYmFiaWxpdGllcyAqIHdlaWdodAogICkKCmlzY2JfcHVibWVkX3N1bV9vdGggPC0gaXNjYl9wdWJtZWRfb3RoICU+JQogIHN1bW1hcmlzZSgKICAgIG1lYW5fcHJvYiA9IG1lYW4od2VpZ2h0ZWRfcHJvYnMpLAogICAgc2VfcHJvYiA9IHNxcnQodmFyKHByb2JhYmlsaXRpZXMpICogc3VtKHdlaWdodF4yKSAvIChzdW0od2VpZ2h0KV4yKSksCiAgICBtZV9wcm9iID0gYWxwaGFfdGhyZXNob2xkICogc2VfcHJvYiwKICAgIC5ncm91cHMgPSAiZHJvcCIKICApCgppc2NiX3B1Ym1lZF9zdW0gPC0gaXNjYl9wdWJtZWRfc3VtX290aCAlPiUKICBmaWx0ZXIocmVnaW9uICE9ICJPdGhlckNhdGVnb3JpZXMiKQpgYGAKCiMjIEZpZ3VyZXMgZm9yIHBhcGVyCgpgYGB7ciBmaWcuaGVpZ2h0PTcsIGZpZy53aWR0aD05LCB3YXJuaW5nPUZBTFNFfQpmaWdfdXNfbmFtZV9vcmlnaW5hIDwtIGlzY2JfcHVibWVkX3N1bSAlPiUKICBmaWx0ZXIoeWVhciA8ICIyMDIwLTAxLTAxIikgJT4lCiAgcmVnaW9uX2JyZWFrZG93bigibWFpbiIsIHJlZ2lvbl9sZXZlbHMsIGZjdF9yZXYodHlwZSkpICsKICBndWlkZXMoZmlsbCA9IGd1aWRlX2xlZ2VuZChucm93ID0gMikpCgpsYXJnZV9yZWdpb25zIDwtIGMoIkNlbHRpY0VuZ2xpc2giLCAiRWFzdEFzaWFuIiwgIkV1cm9wZWFuIiwgIk90aGVyQ2F0ZWdvcmllcyIpCgojIyBNZWFuIGFuZCBzdGFuZGFyZCBkZXZpYXRpb24gb2YgcHJlZGljdGVkIHByb2JhYmlsaXRpZXM6CmZpZ191c19uYW1lX29yaWdpbmIgPC0gaXNjYl9wdWJtZWRfc3VtX290aCAlPiUKICBmaWx0ZXIocmVnaW9uICVpbiUgbGFyZ2VfcmVnaW9ucykgJT4lCiAgcmVjb2RlX3JlZ2lvbigpICU+JQogIGdhbV9hbmRfY2koCiAgICBkZjIgPSBpc2NiX3B1Ym1lZF9vdGggJT4lCiAgICAgIGZpbHRlcihyZWdpb24gJWluJSBsYXJnZV9yZWdpb25zKSAlPiUKICAgICAgcmVjb2RlX3JlZ2lvbigpLAogICAgc3RhcnRfeSA9IHN0YXJ0X3llYXIsIGVuZF95ID0gZW5kX3llYXIKICApICsKICB0aGVtZSgKICAgIGxlZ2VuZC5wb3NpdGlvbiA9IGMoMC44OCwgMC44MyksCiAgICBwYW5lbC5ncmlkLm1pbm9yID0gZWxlbWVudF9ibGFuaygpLAogICAgbGVnZW5kLm1hcmdpbiA9IG1hcmdpbigtMC41LCAwLCAwLCAwLCB1bml0ID0gImNtIiksCiAgICBsZWdlbmQudGV4dCA9IGVsZW1lbnRfdGV4dChzaXplID0gNikKICApICsKICBmYWNldF93cmFwKHZhcnMoZmN0X3JlbGV2ZWwocmVnaW9uLCBsYXJnZV9yZWdpb25zKSksIG5yb3cgPSAxKQoKZmlnX3VzX25hbWVfb3JpZ2luIDwtIGNvd3Bsb3Q6OnBsb3RfZ3JpZChmaWdfdXNfbmFtZV9vcmlnaW5hLCBmaWdfdXNfbmFtZV9vcmlnaW5iLCBsYWJlbHMgPSAiQVVUTyIsIG5jb2wgPSAxLCByZWxfaGVpZ2h0cyA9IGMoMS4zLCAxKSkKZmlnX3VzX25hbWVfb3JpZ2luCmdnc2F2ZSgiZmlncy91c19uYW1lX29yaWdpbi5wbmciLCBmaWdfdXNfbmFtZV9vcmlnaW4sIHdpZHRoID0gNi41LCBoZWlnaHQgPSA1LjUpCmdnc2F2ZSgiZmlncy91c19uYW1lX29yaWdpbi5zdmciLCBmaWdfdXNfbmFtZV9vcmlnaW4sIHdpZHRoID0gNi41LCBoZWlnaHQgPSA1LjUpCmBgYAoKIyMgSHlwb3RoZXNpcyB0ZXN0aW5nCgpgYGB7cn0KaXNjYl9sbSA8LSBpc2NiX3B1Ym1lZF9vdGggJT4lCiAgdW5ncm91cCgpICU+JQogIG11dGF0ZSgKICAgICMgeWVhciA9IGMoc2NhbGUoeWVhcikpLAogICAgIyB5ZWFyID0gYXMuZmFjdG9yKHllYXIpLAogICAgdHlwZSA9IHJlbGV2ZWwoYXMuZmFjdG9yKHR5cGUpLCByZWYgPSAiUHVibWVkIGF1dGhvcnMiKQogICkKbWFpbl9sbSA8LSBmdW5jdGlvbihyZWdpb25pKSB7CiAgZ2xtKHR5cGUgfiB5ZWFyICsgd2VpZ2h0ZWRfcHJvYnMsCiAgICBkYXRhID0gaXNjYl9sbSAlPiUKICAgICAgZmlsdGVyKHJlZ2lvbiA9PSByZWdpb25pLCAhaXMubmEod2VpZ2h0ZWRfcHJvYnMpLCB5ZWFyKHllYXIpID49IDIwMDIpLAogICAgZmFtaWx5ID0gImJpbm9taWFsIgogICkKfQoKaW50ZV9sbSA8LSBmdW5jdGlvbihyZWdpb25pKSB7CiAgZ2xtKHR5cGUgfiB3ZWlnaHRlZF9wcm9icyAqIHllYXIsCiAgICBkYXRhID0gaXNjYl9sbSAlPiUKICAgICAgZmlsdGVyKHJlZ2lvbiA9PSByZWdpb25pLCAhaXMubmEod2VpZ2h0ZWRfcHJvYnMpLCB5ZWFyKHllYXIpID49IDIwMDIpLAogICAgZmFtaWx5ID0gImJpbm9taWFsIgogICkKfQoKbWFpbl9saXN0IDwtIGxhcHBseShsYXJnZV9yZWdpb25zLCBtYWluX2xtKQoKbmFtZXMobWFpbl9saXN0KSA8LSBsYXJnZV9yZWdpb25zCmxhcHBseShtYWluX2xpc3QsIGJyb29tOjp0aWR5KQoKaW50ZV9saXN0IDwtIGxhcHBseShsYXJnZV9yZWdpb25zLCBpbnRlX2xtKQpsYXBwbHkoaW50ZV9saXN0LCBicm9vbTo6dGlkeSkKZm9yIChpIGluIDE6NCkgewogIHByaW50KGFub3ZhKG1haW5fbGlzdFtbaV1dLCBpbnRlX2xpc3RbW2ldXSwgdGVzdCA9ICJDaGlzcSIpKQp9CmBgYApJbnRlcmFjdGlvbiB0ZXJtcyBkbyBub3QgcHJlZGljdCBgdHlwZWAgb3ZlciBhbmQgYWJvdmUgdGhlIG1haW4gZWZmZWN0IG9mIG5hbWUgb3JpZ2luIHByb2JhYmlsaXR5IGFuZCB5ZWFyIChfcF8gPiAwLjAxKS4KCmBgYHtyIGVjaG8gPSBGfQpnZXRfZXhwIDwtIGZ1bmN0aW9uKGksIGNvbHUpIHsKICBicm9vbTo6dGlkeShtYWluX2xpc3RbW2ldXSkgJT4lCiAgICBmaWx0ZXIodGVybSA9PSAid2VpZ2h0ZWRfcHJvYnMiKSAlPiUKICAgIHB1bGwoY29sdSkKfQoKcHJpbnRfcCA8LSBmdW5jdGlvbih4KSBzcHJpbnRmKCIlMC41ZyIsIHgpCmBgYAoKIyMgQ29uY2x1c2lvbgoKQW4gRWFzdCBBc2lhbiBuYW1lIGhhcyBgciBleHAoZ2V0X2V4cCgyLCAnZXN0aW1hdGUnKSlgIHRoZSBvZGRzIG9mIGJlaW5nIHNlbGVjdGVkIGFzIGFuIGhvbm9yZWUsIHNpZ25pZmljYW50bHkgbG93ZXIgY29tcGFyZWQgdG8gb3RoZXIgbmFtZXMgKCRcYmV0YV9cdGV4dHJte0Vhc3QgQXNpYW59ID0kIGByIHByaW50X3AoZ2V0X2V4cCgyLCAnZXN0aW1hdGUnKSlgLCBfUF8gPSBgciBwcmludF9wKGdldF9leHAoMiwgJ3AudmFsdWUnKSlgKS4KVGhlIHR3byBncm91cHMgb2Ygc2NpZW50aXN0cyBkaWQgbm90IGhhdmUgYSBzaWduaWZpY2FudCBhc3NvY2lhdGlvbiB3aXRoIG5hbWVzIHByZWRpY3RlZCB0byBiZSBDZWx0aWMvRW5nbGlzaCAoX1BfID0gYHIgcHJpbnRfcChnZXRfZXhwKDEsICdwLnZhbHVlJykpYCksIEV1cm9wZWFuIChfUF8gPSBgciBwcmludF9wKGdldF9leHAoMywgJ3AudmFsdWUnKSlgKSwgb3IgaW4gT3RoZXIgY2F0ZWdvcmllcyAoX1BfID0gYHIgcHJpbnRfcChnZXRfZXhwKDQsICdwLnZhbHVlJykpYCkuCgojIyBTdXBwbGVtZW50CgojIyMgU3VwcGxlbWVudGFyeSBGaWd1cmUgUzcgeyNzdXBfZmlnX3M3fQpJdCdzIGRpZmZpY3VsdCB0byBjb21lIHRvIGEgY29uY2x1c2lvbiBmb3Igb3RoZXIgcmVnaW9ucyB3aXRoIHNvIGZldyBkYXRhIHBvaW50cyBhbmQgdGhlIGltcGVyZmVjdCBhY2N1cmFjeSBvZiBvdXIgcHJlZGljdGlvbi4KVGhlcmUgc2VlbXMgdG8gYmUgbGl0dGxlIGRpZmZlcmVuY2UgYmV0d2VlbiB0aGUgcHJvcG9ydGlvbiBvZiBrZXlub3RlIHNwZWFrZXJzIG9mIEFmcmljYW4sIEFyYWJpYywgU291dGggQXNpYW4gYW5kIEhpc3BhbmljIG9yaWdpbiB0aGFuIHRob3NlIGluIHRoZSBmaWVsZC4KSG93ZXZlciwganVzdCBiZWNhdXNlIGEgbmF0aW9uYWxpdHkgaXNuJ3QgdW5kZXJyZXByZXNlbnRlZCBhZ2FpbnN0IHRoZSBmaWVsZCBkb2Vzbid0IG1lYW4gc2NpZW50aXN0cyBmcm9tIHRoYXQgbmF0aW9uYWxpdHkgYXJlIGFwcHJvcHJpYXRlbHkgcmVwcmVzZW50ZWQuCgpgYGB7ciBmaWcuaGVpZ2h0PTYsIHdhcm5pbmc9RkFMU0V9CmRmMiA8LSBpc2NiX3B1Ym1lZF9vdGggJT4lCiAgZmlsdGVyKHJlZ2lvbiAhPSAiT3RoZXJDYXRlZ29yaWVzIikgJT4lCiAgcmVjb2RlX3JlZ2lvbigpCgpmaWdfczcgPC0gaXNjYl9wdWJtZWRfc3VtICU+JQogIHJlY29kZV9yZWdpb24oKSAlPiUKICBnYW1fYW5kX2NpKAogICAgZGYyID0gZGYyLAogICAgc3RhcnRfeSA9IHN0YXJ0X3llYXIsIGVuZF95ID0gZW5kX3llYXIKICApICsKICB0aGVtZShsZWdlbmQucG9zaXRpb24gPSBjKDAuOCwgMC4xKSkgKwogIGZhY2V0X3dyYXAodmFycyhmY3RfcmVsZXZlbChyZWdpb24sIHJlZ2lvbl9sZXZlbHMpKSwgbmNvbCA9IDMpCgpmaWdfczcKZ2dzYXZlKCJmaWdzL2ZpZ19zNy5wbmciLCBmaWdfczcsIHdpZHRoID0gNiwgaGVpZ2h0ID0gNikKZ2dzYXZlKCJmaWdzL2ZpZ19zNy5zdmciLCBmaWdfczcsIHdpZHRoID0gNiwgaGVpZ2h0ID0gNikKYGBgCgoKYGBge3J9CnNlc3Npb25JbmZvKCkKYGBgCg==
+
LS0tCnRpdGxlOiAiUmVwcmVzZW50YXRpb24gYW5hbHlzaXMgb2YgbmFtZSBvcmlnaW4gaW4gdGhlIFVTIgotLS0KCmBgYHtyIHNldHVwLCBpbmNsdWRlPUZBTFNFfQpsaWJyYXJ5KHRpZHl2ZXJzZSkKbGlicmFyeShsdWJyaWRhdGUpCnNvdXJjZSgidXRpbHMvci11dGlscy5SIikKdGhlbWVfc2V0KHRoZW1lX2J3KCkgKyB0aGVtZShsZWdlbmQudGl0bGUgPSBlbGVtZW50X2JsYW5rKCkpKQpgYGAKCk9ubHkga2VlcCBhcnRpY2xlcyBmcm9tIDIwMDIgYmVjYXVzZSBmZXcgYXV0aG9ycyBoYWQgbmF0aW9uYWxpdHkgcHJlZGljdGlvbnMgYmVmb3JlIDIwMDIgKG1vc3RseSBkdWUgdG8gbWlzc2luZyBtZXRhZGF0YSkuClNlZSBbMDkzLnN1bW1hcnktc3RhdHNdKGRvY3MvMDkzLnN1bW1hcnktc3RhdHMuaHRtbCkgZm9yIG1vcmUgZGV0YWlscy4KCmBgYHtyfQpsb2FkKCJSZGF0YS9yYXdzLlJkYXRhIikKCmFscGhhX3RocmVzaG9sZCA8LSBxbm9ybSgwLjk3NSkKCnB1Ym1lZF9uYXRfZGYgPC0gY29ycl9hdXRob3JzICU+JQogIGZpbHRlcih5ZWFyKHllYXIpID49IDIwMDIpICU+JQogIHNlcGFyYXRlX3Jvd3MoY291bnRyaWVzLCBzZXAgPSAiLCIpICU+JQogIGZpbHRlcihjb3VudHJpZXMgPT0gIlVTIikgJT4lCiAgbGVmdF9qb2luKG5hdGlvbmFsaXplX2RmLCBieSA9IGMoImZvcmVfbmFtZSIsICJsYXN0X25hbWUiKSkgJT4lCiAgZ3JvdXBfYnkocG1pZCwgam91cm5hbCwgcHVibGljYXRpb25fZGF0ZSwgeWVhciwgYWRqdXN0ZWRfY2l0YXRpb25zKSAlPiUKICBzdW1tYXJpc2VfYXQodmFycyhBZnJpY2FuOlNvdXRoQXNpYW4pLCBtZWFuLCBuYS5ybSA9IFQpICU+JQogIHVuZ3JvdXAoKQoKaXNjYl9uYXRfZGYgPC0ga2V5bm90ZXMgJT4lCiAgc2VwYXJhdGVfcm93cyhhZmZsY291bnRyaWVzLCBzZXAgPSAiXFx8IikgJT4lCiAgZmlsdGVyKGFmZmxjb3VudHJpZXMgPT0gIlVuaXRlZCBTdGF0ZXMiKSAlPiUKICBsZWZ0X2pvaW4obmF0aW9uYWxpemVfZGYsIGJ5ID0gYygiZm9yZV9uYW1lIiwgImxhc3RfbmFtZSIpKQoKc3RhcnRfeWVhciA8LSAxOTkyCmVuZF95ZWFyIDwtIDIwMTkKbl95ZWFycyA8LSBlbmRfeWVhciAtIHN0YXJ0X3llYXIKbXlfam91cnMgPC0gdW5pcXVlKHB1Ym1lZF9uYXRfZGYkam91cm5hbCkKbXlfY29uZnMgPC0gdW5pcXVlKGlzY2JfbmF0X2RmJGNvbmZlcmVuY2UpCm5fam91cnMgPC0gbGVuZ3RoKG15X2pvdXJzKQpuX2NvbmZzIDwtIGxlbmd0aChteV9jb25mcykKcmVnaW9uX2xldmVscyA8LSBwYXN0ZShjKCJDZWx0aWMvRW5nbGlzaCIsICJFdXJvcGVhbiIsICJFYXN0IEFzaWFuIiwgIkhpc3BhbmljIiwgIlNvdXRoIEFzaWFuIiwgIkFyYWJpYyIsICJIZWJyZXciLCAiQWZyaWNhbiIsICJOb3JkaWMiLCAiR3JlZWsiKSwgIm5hbWVzIikKCnJlZ2lvbl9jb2xzIDwtIGMoIiNmZmZmYjMiLCAiI2ZjY2RlNSIsICIjYjNkZTY5IiwgIiNmZGI0NjIiLCAiIzgwYjFkMyIsICIjOGRkM2M3IiwgIiNiZWJhZGEiLCAiI2ZiODA3MiIsICIjYmM4MGJkIiwgIiNjY2ViYzUiKQpgYGAKCiMjIE9yZ2FuaXplIGRhdGEKClByZXBhcmUgZGF0YSBmcmFtZXMgZm9yIGxhdGVyIGFuYWx5c2VzOgoKLSByYmluZCByZXN1bHRzIG9mIHJhY2UgcHJlZGljdGlvbnMgaW4gaXNjYiBhbmQgUHVibWVkCi0gcGl2b3QgbG9uZwotIGNvbXB1dGUgbWVhbiwgc2QsIG1hcmdpbmFsIGVycm9yCgpgYGB7cn0KaXNjYl9wdWJtZWRfb3RoIDwtIGlzY2JfbmF0X2RmICU+JQogIHJlbmFtZSgiam91cm5hbCIgPSBjb25mZXJlbmNlKSAlPiUKICBzZWxlY3QoeWVhciwgam91cm5hbCwgQWZyaWNhbjpTb3V0aEFzaWFuLCBwdWJsaWNhdGlvbl9kYXRlKSAlPiUKICBtdXRhdGUoCiAgICB0eXBlID0gIktleW5vdGUgc3BlYWtlcnMvRmVsbG93cyIsCiAgICBhZGp1c3RlZF9jaXRhdGlvbnMgPSAxCiAgKSAlPiUKICBiaW5kX3Jvd3MoCiAgICBwdWJtZWRfbmF0X2RmICU+JQogICAgICBzZWxlY3QoeWVhciwgam91cm5hbCwgQWZyaWNhbjpTb3V0aEFzaWFuLCBwdWJsaWNhdGlvbl9kYXRlLCBhZGp1c3RlZF9jaXRhdGlvbnMpICU+JQogICAgICBtdXRhdGUodHlwZSA9ICJQdWJtZWQgYXV0aG9ycyIpCiAgKSAlPiUKICBtdXRhdGUoT3RoZXJDYXRlZ29yaWVzID0gU291dGhBc2lhbiArIEhpc3BhbmljICsgSmV3aXNoICsgTXVzbGltICsgTm9yZGljICsgR3JlZWsgKyBBZnJpY2FuKSAlPiUKICBwaXZvdF9sb25nZXIoYyhBZnJpY2FuOlNvdXRoQXNpYW4sIE90aGVyQ2F0ZWdvcmllcyksCiAgICBuYW1lc190byA9ICJyZWdpb24iLAogICAgdmFsdWVzX3RvID0gInByb2JhYmlsaXRpZXMiCiAgKSAlPiUKICBmaWx0ZXIoIWlzLm5hKHByb2JhYmlsaXRpZXMpKSAlPiUKICBncm91cF9ieSh0eXBlLCB5ZWFyLCByZWdpb24pCgppc2NiX3B1Ym1lZF9zdW1fb3RoIDwtIGlzY2JfcHVibWVkX290aCAlPiUKICBzdW1tYXJpc2UoCiAgICBtZWFuX3Byb2IgPSBtZWFuKHByb2JhYmlsaXRpZXMpLAogICAgc2VfcHJvYiA9IHNkKHByb2JhYmlsaXRpZXMpL3NxcnQobigpKSwKICAgIG1lX3Byb2IgPSBhbHBoYV90aHJlc2hvbGQgKiBzZV9wcm9iLAogICAgLmdyb3VwcyA9ICJkcm9wIgogICkKCmlzY2JfcHVibWVkX3N1bSA8LSBpc2NiX3B1Ym1lZF9zdW1fb3RoICU+JQogIGZpbHRlcihyZWdpb24gIT0gIk90aGVyQ2F0ZWdvcmllcyIpCmBgYAoKIyMgRmlndXJlcyBmb3IgcGFwZXIKCmBgYHtyIGZpZy5oZWlnaHQ9NywgZmlnLndpZHRoPTksIHdhcm5pbmc9RkFMU0V9CmZpZ191c19uYW1lX29yaWdpbmEgPC0gaXNjYl9wdWJtZWRfc3VtICU+JQogIGZpbHRlcih5ZWFyIDwgIjIwMjAtMDEtMDEiKSAlPiUKICByZWdpb25fYnJlYWtkb3duKCJtYWluIiwgcmVnaW9uX2xldmVscywgZmN0X3Jldih0eXBlKSkgKwogIGd1aWRlcyhmaWxsID0gZ3VpZGVfbGVnZW5kKG5yb3cgPSAyKSkKCmxhcmdlX3JlZ2lvbnMgPC0gYygiQ2VsdGljRW5nbGlzaCIsICJFYXN0QXNpYW4iLCAiRXVyb3BlYW4iLCAiT3RoZXJDYXRlZ29yaWVzIikKCiMjIE1lYW4gYW5kIHN0YW5kYXJkIGRldmlhdGlvbiBvZiBwcmVkaWN0ZWQgcHJvYmFiaWxpdGllczoKZmlnX3VzX25hbWVfb3JpZ2luYiA8LSBpc2NiX3B1Ym1lZF9zdW1fb3RoICU+JQogIGZpbHRlcihyZWdpb24gJWluJSBsYXJnZV9yZWdpb25zKSAlPiUKICByZWNvZGVfcmVnaW9uKCkgJT4lCiAgZ2FtX2FuZF9jaSgKICAgIGRmMiA9IGlzY2JfcHVibWVkX290aCAlPiUKICAgICAgZmlsdGVyKHJlZ2lvbiAlaW4lIGxhcmdlX3JlZ2lvbnMpICU+JQogICAgICByZWNvZGVfcmVnaW9uKCksCiAgICBzdGFydF95ID0gc3RhcnRfeWVhciwgZW5kX3kgPSBlbmRfeWVhcgogICkgKwogIHRoZW1lKAogICAgbGVnZW5kLnBvc2l0aW9uID0gYygwLjg4LCAwLjgzKSwKICAgIHBhbmVsLmdyaWQubWlub3IgPSBlbGVtZW50X2JsYW5rKCksCiAgICBsZWdlbmQubWFyZ2luID0gbWFyZ2luKC0wLjUsIDAsIDAsIDAsIHVuaXQgPSAiY20iKSwKICAgIGxlZ2VuZC50ZXh0ID0gZWxlbWVudF90ZXh0KHNpemUgPSA2KQogICkgKwogIGZhY2V0X3dyYXAodmFycyhmY3RfcmVsZXZlbChyZWdpb24sIGxhcmdlX3JlZ2lvbnMpKSwgbnJvdyA9IDEpCgpmaWdfdXNfbmFtZV9vcmlnaW4gPC0gY293cGxvdDo6cGxvdF9ncmlkKGZpZ191c19uYW1lX29yaWdpbmEsIGZpZ191c19uYW1lX29yaWdpbmIsIGxhYmVscyA9ICJBVVRPIiwgbmNvbCA9IDEsIHJlbF9oZWlnaHRzID0gYygxLjMsIDEpKQpmaWdfdXNfbmFtZV9vcmlnaW4KZ2dzYXZlKCJmaWdzL3VzX25hbWVfb3JpZ2luLnBuZyIsIGZpZ191c19uYW1lX29yaWdpbiwgd2lkdGggPSA2LjUsIGhlaWdodCA9IDUuNSwgZHBpID0gNjAwKQpnZ3NhdmUoImZpZ3MvdXNfbmFtZV9vcmlnaW4uc3ZnIiwgZmlnX3VzX25hbWVfb3JpZ2luLCB3aWR0aCA9IDYuNSwgaGVpZ2h0ID0gNS41KQpgYGAKCiMjIEh5cG90aGVzaXMgdGVzdGluZwoKYGBge3J9CmlzY2JfbG0gPC0gaXNjYl9wdWJtZWRfb3RoICU+JQogIHVuZ3JvdXAoKSAlPiUKICBtdXRhdGUoCiAgICAjIHllYXIgPSBjKHNjYWxlKHllYXIpKSwKICAgICMgeWVhciA9IGFzLmZhY3Rvcih5ZWFyKSwKICAgIHR5cGUgPSByZWxldmVsKGFzLmZhY3Rvcih0eXBlKSwgcmVmID0gIlB1Ym1lZCBhdXRob3JzIikKICApCm1haW5fbG0gPC0gZnVuY3Rpb24ocmVnaW9uaSkgewogIGdsbSh0eXBlIH4geWVhciArIHByb2JhYmlsaXRpZXMsCiAgICBkYXRhID0gaXNjYl9sbSAlPiUKICAgICAgZmlsdGVyKHJlZ2lvbiA9PSByZWdpb25pLCAhaXMubmEocHJvYmFiaWxpdGllcyksIHllYXIoeWVhcikgPj0gMjAwMiksCiAgICBmYW1pbHkgPSAiYmlub21pYWwiCiAgKQp9CgppbnRlX2xtIDwtIGZ1bmN0aW9uKHJlZ2lvbmkpIHsKICBnbG0odHlwZSB+IHByb2JhYmlsaXRpZXMgKiB5ZWFyLAogICAgZGF0YSA9IGlzY2JfbG0gJT4lCiAgICAgIGZpbHRlcihyZWdpb24gPT0gcmVnaW9uaSwgIWlzLm5hKHByb2JhYmlsaXRpZXMpLCB5ZWFyKHllYXIpID49IDIwMDIpLAogICAgZmFtaWx5ID0gImJpbm9taWFsIgogICkKfQoKbWFpbl9saXN0IDwtIGxhcHBseShsYXJnZV9yZWdpb25zLCBtYWluX2xtKQoKbmFtZXMobWFpbl9saXN0KSA8LSBsYXJnZV9yZWdpb25zCmxhcHBseShtYWluX2xpc3QsIGJyb29tOjp0aWR5KQoKaW50ZV9saXN0IDwtIGxhcHBseShsYXJnZV9yZWdpb25zLCBpbnRlX2xtKQpsYXBwbHkoaW50ZV9saXN0LCBicm9vbTo6dGlkeSkKZm9yIChpIGluIDE6NCkgewogIHByaW50KGFub3ZhKG1haW5fbGlzdFtbaV1dLCBpbnRlX2xpc3RbW2ldXSwgdGVzdCA9ICJDaGlzcSIpKQp9CmBgYApJbnRlcmFjdGlvbiB0ZXJtcyBkbyBub3QgcHJlZGljdCBgdHlwZWAgb3ZlciBhbmQgYWJvdmUgdGhlIG1haW4gZWZmZWN0IG9mIG5hbWUgb3JpZ2luIHByb2JhYmlsaXR5IGFuZCB5ZWFyIChfcF8gPiAwLjAxKS4KCmBgYHtyIGVjaG8gPSBGfQpnZXRfZXhwIDwtIGZ1bmN0aW9uKGksIGNvbHUpIHsKICBicm9vbTo6dGlkeShtYWluX2xpc3RbW2ldXSkgJT4lCiAgICBmaWx0ZXIodGVybSA9PSAicHJvYmFiaWxpdGllcyIpICU+JQogICAgcHVsbChjb2x1KQp9CgpwcmludF9wIDwtIGZ1bmN0aW9uKHgpIHNwcmludGYoIiUwLjVnIiwgeCkKYGBgCgojIyBDb25jbHVzaW9uCgpBbiBFYXN0IEFzaWFuIG5hbWUgaGFzIGByIGV4cChnZXRfZXhwKDIsICdlc3RpbWF0ZScpKWAgdGhlIG9kZHMgb2YgYmVpbmcgc2VsZWN0ZWQgYXMgYW4gaG9ub3JlZSwgc2lnbmlmaWNhbnRseSBsb3dlciBjb21wYXJlZCB0byBvdGhlciBuYW1lcyAoJFxiZXRhX1x0ZXh0cm17RWFzdCBBc2lhbn0gPSQgYHIgcHJpbnRfcChnZXRfZXhwKDIsICdlc3RpbWF0ZScpKWAsIF9QXyA9IGByIHByaW50X3AoZ2V0X2V4cCgyLCAncC52YWx1ZScpKWApLgpUaGUgdHdvIGdyb3VwcyBvZiBzY2llbnRpc3RzIGRpZCBub3QgaGF2ZSBhIHNpZ25pZmljYW50IGFzc29jaWF0aW9uIHdpdGggbmFtZXMgcHJlZGljdGVkIHRvIGJlIENlbHRpYy9FbmdsaXNoIChfUF8gPSBgciBwcmludF9wKGdldF9leHAoMSwgJ3AudmFsdWUnKSlgKSwgRXVyb3BlYW4gKF9QXyA9IGByIHByaW50X3AoZ2V0X2V4cCgzLCAncC52YWx1ZScpKWApLCBvciBpbiBPdGhlciBjYXRlZ29yaWVzIChfUF8gPSBgciBwcmludF9wKGdldF9leHAoNCwgJ3AudmFsdWUnKSlgKS4KCiMjIFN1cHBsZW1lbnQKCiMjIyBTdXBwbGVtZW50YXJ5IEZpZ3VyZSBTNyB7I3N1cF9maWdfczd9Ckl0J3MgZGlmZmljdWx0IHRvIGNvbWUgdG8gYSBjb25jbHVzaW9uIGZvciBvdGhlciByZWdpb25zIHdpdGggc28gZmV3IGRhdGEgcG9pbnRzIGFuZCB0aGUgaW1wZXJmZWN0IGFjY3VyYWN5IG9mIG91ciBwcmVkaWN0aW9uLgpUaGVyZSBzZWVtcyB0byBiZSBsaXR0bGUgZGlmZmVyZW5jZSBiZXR3ZWVuIHRoZSBwcm9wb3J0aW9uIG9mIGtleW5vdGUgc3BlYWtlcnMgb2YgQWZyaWNhbiwgQXJhYmljLCBTb3V0aCBBc2lhbiBhbmQgSGlzcGFuaWMgb3JpZ2luIHRoYW4gdGhvc2UgaW4gdGhlIGZpZWxkLgpIb3dldmVyLCBqdXN0IGJlY2F1c2UgYSBuYXRpb25hbGl0eSBpc24ndCB1bmRlcnJlcHJlc2VudGVkIGFnYWluc3QgdGhlIGZpZWxkIGRvZXNuJ3QgbWVhbiBzY2llbnRpc3RzIGZyb20gdGhhdCBuYXRpb25hbGl0eSBhcmUgYXBwcm9wcmlhdGVseSByZXByZXNlbnRlZC4KCmBgYHtyIGZpZy5oZWlnaHQ9Niwgd2FybmluZz1GQUxTRX0KZGYyIDwtIGlzY2JfcHVibWVkX290aCAlPiUKICBmaWx0ZXIocmVnaW9uICE9ICJPdGhlckNhdGVnb3JpZXMiKSAlPiUKICByZWNvZGVfcmVnaW9uKCkKCmZpZ19zNyA8LSBpc2NiX3B1Ym1lZF9zdW0gJT4lCiAgcmVjb2RlX3JlZ2lvbigpICU+JQogIGdhbV9hbmRfY2koCiAgICBkZjIgPSBkZjIsCiAgICBzdGFydF95ID0gc3RhcnRfeWVhciwgZW5kX3kgPSBlbmRfeWVhcgogICkgKwogIHRoZW1lKGxlZ2VuZC5wb3NpdGlvbiA9IGMoMC44LCAwLjEpKSArCiAgZmFjZXRfd3JhcCh2YXJzKGZjdF9yZWxldmVsKHJlZ2lvbiwgcmVnaW9uX2xldmVscykpLCBuY29sID0gMykKCmZpZ19zNwpnZ3NhdmUoImZpZ3MvZmlnX3M3LnBuZyIsIGZpZ19zNywgd2lkdGggPSA2LCBoZWlnaHQgPSA2KQpnZ3NhdmUoImZpZ3MvZmlnX3M3LnN2ZyIsIGZpZ19zNywgd2lkdGggPSA2LCBoZWlnaHQgPSA2KQpgYGAKCgpgYGB7cn0Kc2Vzc2lvbkluZm8oKQpgYGAK
diff --git a/docs/15.analyze-2020.html b/docs/15.analyze-2020.html index 237c854..2211437 100644 --- a/docs/15.analyze-2020.html +++ b/docs/15.analyze-2020.html @@ -1693,8 +1693,10 @@

Gender

n_confs <- length(my_confs)
table(iscb_gender_df$afflcountries)
## 
-##          China          Italy          Japan United Kingdom  United States 
-##              1              1              1              1             13
+## China Italy Japan United Kingdom +## 1 1 1 1 +## United States +## 13
mean(iscb_gender_df$probability_male, na.rm = T)
## [1] 0.584375

Proportion of US affiliation: 76.47%. Mean probability of being male: 58.44%.

@@ -1803,7 +1805,8 @@

Name origins

## [11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C ## ## attached base packages: -## [1] stats graphics grDevices utils datasets methods base +## [1] stats graphics grDevices utils datasets methods +## [7] base ## ## other attached packages: ## [1] broom_0.7.2 DT_0.16 epitools_0.5-10.1 @@ -1814,40 +1817,57 @@

Name origins

## [16] tibble_3.0.4 ggplot2_3.3.2 tidyverse_1.3.0 ## ## loaded via a namespace (and not attached): -## [1] colorspace_2.0-0 ellipsis_0.3.1 class_7.3-17 -## [4] rprojroot_1.3-2 fs_1.5.0 rstudioapi_0.12 -## [7] farver_2.0.3 remotes_2.2.0 prodlim_2019.11.13 -## [10] fansi_0.4.1 xml2_1.3.2 codetools_0.2-16 -## [13] splines_4.0.3 knitr_1.30 pkgload_1.1.0 -## [16] jsonlite_1.7.1 pROC_1.16.2 dbplyr_2.0.0 -## [19] rgeos_0.5-5 compiler_4.0.3 httr_1.4.2 -## [22] backports_1.2.0 assertthat_0.2.1 Matrix_1.2-18 -## [25] cli_2.1.0 htmltools_0.5.0 prettyunits_1.1.1 -## [28] tools_4.0.3 gtable_0.3.0 glue_1.4.2 -## [31] rnaturalearthdata_0.1.0 reshape2_1.4.4 Rcpp_1.0.5 -## [34] cellranger_1.1.0 vctrs_0.3.4 svglite_1.2.3.2 -## [37] nlme_3.1-149 iterators_1.0.13 crosstalk_1.1.0.1 -## [40] timeDate_3043.102 gower_0.2.2 xfun_0.19 -## [43] ps_1.4.0 testthat_3.0.0 rvest_0.3.6 -## [46] lifecycle_0.2.0 devtools_2.3.2 MASS_7.3-53 -## [49] scales_1.1.1 ipred_0.9-9 hms_0.5.3 -## [52] RColorBrewer_1.1-2 yaml_2.2.1 curl_4.3 -## [55] memoise_1.1.0 rpart_4.1-15 stringi_1.5.3 -## [58] desc_1.2.0 foreach_1.5.1 e1071_1.7-4 -## [61] pkgbuild_1.1.0 lava_1.6.8.1 systemfonts_0.3.2 -## [64] rlang_0.4.8 pkgconfig_2.0.3 evaluate_0.14 -## [67] sf_0.9-6 recipes_0.1.15 htmlwidgets_1.5.2 -## [70] labeling_0.4.2 cowplot_1.1.0 tidyselect_1.1.0 -## [73] processx_3.4.4 plyr_1.8.6 magrittr_1.5 -## [76] R6_2.5.0 generics_0.1.0 DBI_1.1.0 -## [79] mgcv_1.8-33 pillar_1.4.6 haven_2.3.1 -## [82] withr_2.3.0 units_0.6-7 survival_3.2-7 -## [85] sp_1.4-4 nnet_7.3-14 modelr_0.1.8 -## [88] crayon_1.3.4 KernSmooth_2.23-17 utf8_1.1.4 -## [91] rmarkdown_2.5 usethis_1.6.3 grid_4.0.3 -## [94] readxl_1.3.1 data.table_1.13.2 callr_3.5.1 -## [97] ModelMetrics_1.2.2.2 reprex_0.3.0 digest_0.6.27 -## [100] classInt_0.4-3 stats4_4.0.3 munsell_0.5.0 +## [1] colorspace_2.0-0 ellipsis_0.3.1 +## [3] class_7.3-17 rprojroot_1.3-2 +## [5] fs_1.5.0 rstudioapi_0.12 +## [7] farver_2.0.3 remotes_2.2.0 +## [9] prodlim_2019.11.13 fansi_0.4.1 +## [11] xml2_1.3.2 codetools_0.2-16 +## [13] splines_4.0.3 knitr_1.30 +## [15] pkgload_1.1.0 jsonlite_1.7.1 +## [17] pROC_1.16.2 dbplyr_2.0.0 +## [19] rgeos_0.5-5 compiler_4.0.3 +## [21] httr_1.4.2 backports_1.2.0 +## [23] assertthat_0.2.1 Matrix_1.2-18 +## [25] cli_2.1.0 htmltools_0.5.0 +## [27] prettyunits_1.1.1 tools_4.0.3 +## [29] gtable_0.3.0 glue_1.4.2 +## [31] rnaturalearthdata_0.1.0 reshape2_1.4.4 +## [33] Rcpp_1.0.5 cellranger_1.1.0 +## [35] vctrs_0.3.4 svglite_1.2.3.2 +## [37] nlme_3.1-149 iterators_1.0.13 +## [39] crosstalk_1.1.0.1 timeDate_3043.102 +## [41] gower_0.2.2 xfun_0.19 +## [43] ps_1.4.0 testthat_3.0.0 +## [45] rvest_0.3.6 lifecycle_0.2.0 +## [47] devtools_2.3.2 MASS_7.3-53 +## [49] scales_1.1.1 ipred_0.9-9 +## [51] hms_0.5.3 RColorBrewer_1.1-2 +## [53] yaml_2.2.1 curl_4.3 +## [55] memoise_1.1.0 rpart_4.1-15 +## [57] stringi_1.5.3 desc_1.2.0 +## [59] foreach_1.5.1 e1071_1.7-4 +## [61] pkgbuild_1.1.0 lava_1.6.8.1 +## [63] systemfonts_0.3.2 rlang_0.4.8 +## [65] pkgconfig_2.0.3 evaluate_0.14 +## [67] sf_0.9-6 recipes_0.1.15 +## [69] htmlwidgets_1.5.2 labeling_0.4.2 +## [71] cowplot_1.1.0 tidyselect_1.1.0 +## [73] processx_3.4.4 plyr_1.8.6 +## [75] magrittr_1.5 R6_2.5.0 +## [77] generics_0.1.0 DBI_1.1.0 +## [79] mgcv_1.8-33 pillar_1.4.6 +## [81] haven_2.3.1 withr_2.3.0 +## [83] units_0.6-7 survival_3.2-7 +## [85] sp_1.4-4 nnet_7.3-14 +## [87] modelr_0.1.8 crayon_1.3.4 +## [89] KernSmooth_2.23-17 utf8_1.1.4 +## [91] rmarkdown_2.5 usethis_1.6.3 +## [93] grid_4.0.3 readxl_1.3.1 +## [95] data.table_1.13.2 callr_3.5.1 +## [97] ModelMetrics_1.2.2.2 reprex_0.3.0 +## [99] digest_0.6.27 classInt_0.4-3 +## [101] stats4_4.0.3 munsell_0.5.0 ## [103] viridisLite_0.3.0 sessioninfo_1.1.1 diff --git a/figs/enrichment-plot.png b/figs/enrichment-plot.png index ea7f96d460b2702bfc69f3a0cf5001ffe8e4790e..c9d3ccba0287f734dcf196e71e41e433a6aff8ac 100644 GIT binary patch literal 317799 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