Data Cleaning
RPL_THEMES erroneous values
mh_deidv2 %>%
select(age_yrs, PATIENT_GENDER_CD, PATIENT_RACE_DESC, PATIENT_ETHNIC_GROUP_DESC, PATIENT_LANGUAGE_DESC, PATIENT_RELIGION_DESC, PATIENT_MARITAL_STATUS_DESC, PATIENT_STATE_CD, EDU_YEARS, TOBACCO_DESC, depression, anxiety, ptsd, bipolar, body_image, ocd, stress, seasonalAD, panic, any_psych_dx,ST_ABBR, E_TOTPOP, RPL_THEMES, RPL_THEME1, RPL_THEME2, RPL_THEME3, RPL_THEME4) -> exampledf1
exampledf1 %>%
mutate(RPL_THEMES = na_if(RPL_THEMES, "-999")) %>%
mutate(RPL_THEMES = na_if(RPL_THEMES, "0")) %>%
mutate(RPL_THEME1 = na_if(RPL_THEME1, "-999")) %>%
mutate(RPL_THEME1 = na_if(RPL_THEME1, "0")) %>%
mutate(RPL_THEME2 = na_if(RPL_THEME2, "-999")) %>%
mutate(RPL_THEME2 = na_if(RPL_THEME2, "0")) %>%
mutate(RPL_THEME3 = na_if(RPL_THEME3, "-999")) %>%
mutate(RPL_THEME3 = na_if(RPL_THEME3, "0")) %>%
mutate(RPL_THEME4 = na_if(RPL_THEME4, "-999")) %>%
mutate(RPL_THEME4 = na_if(RPL_THEME4, "0")) -> exampledf1NA
Mental Health Dich
exampledf1NA %>% mutate(across(depression:any_psych_dx, ~if_else(.x>0.5, 1, 0),
.names = "{col}_2")) -> exampledf1NADi2
Marital Status
exampledf1NADi2 %>%
mutate(mstat_5 = as_factor(PATIENT_MARITAL_STATUS_DESC),
mstat_5 = fct_recode(mstat_5, div_sep = "DIVORCED",
div_sep = "LEGALLY SEPARATED", widow = "WIDOWED",
married = "MARRIED", unmarried = "SINGLE",
unknown = "UNKNOWN", unknown = "OTHER",
unmarried = "SIGNIFICANT OTHER"),
mstat_5 = fct_relevel(mstat_5, ref = 'married')) -> exampledf1NADi2MA
Religion
exampledf1NADi2MA %>%
mutate(relig_affil = as_factor(PATIENT_RELIGION_DESC),
relig_affil = fct_recode(relig_affil, yes = "CATHOLIC",
no = "NONE", unknown = "UNKNOWN", unknown = "PATIENT REFUSED",
yes = "CHRISTIAN", yes = "LUTHERAN",
yes = "PROTESTANT", yes = "BAPTIST",
yes = "METHODIST", yes = "PRESBYTERIAN",
yes = "NON-DENOMINATIONAL", yes = "JEWISH",
yes = "MUSLIM", yes = "OTHER",
yes = "EPISCOPALIAN", yes = "PENTECOSTAL",
no = "AGNOSTIC", no = "ATHEIST",
yes = "JEHOVAH'S WITNESS", yes = "HINDU",
yes = "GREEK ORTHODOX", yes = "CHURCH OF JESUS CHRIST OF LATTER-DAY SAINTS", yes = "BAHAI", no = "SPIRITUAL", yes = "CHURCH OF CHRIST",
yes = "SEVENTH DAY ADVENTIST", yes = "APOSTOLIC", yes = "BUDDHIST", yes = "NAZARENE", yes = "CONGREGATIONAL", yes = "UNITED CHURCH OF CHR", yes = "REFORMED", yes = "PAGAN", yes = "JAIN", yes = "ASSEMBLY OF GOD", yes = "REORG CHR OF LAT DAY", yes = "QUAKER", yes = "UNITARIAN UNIVERSALIST", yes = "MENNONITE", yes = "FREE METHODIST", yes = "NATIVE AMER SPIRITL", yes = "WICCAN", yes = "ORTHODOX", yes = "SALVATION ARMY", yes = "DISCIPLES OF CHRIST", yes = "AFRICAN METHODIST EP", yes = "SIKH", yes = "CHURCH OF GOD", yes = "TAOIST", yes = "ANGLICAN"),
relig_affil = fct_relevel(relig_affil, ref = 'yes')) -> exampledf1NADi2MARel
Race
exampledf1NADi2MARel %>%
mutate(race_5 = as_factor(PATIENT_RACE_DESC),
race_5 = fct_recode(race_5, Other = "OTHER",
Other = "UNKNOWN", Other = "CHOOSE NOT TO DISCLOSE",
Other = "NATIVE HAWAIIAN AND OTHER PACIFIC ISLANDER",
Other = "MIDDLE EASTERN/NORTH AFRICAN",
ASIAN = "ASIAN INDIAN", ASIAN = "OTHER ASIAN",
ASIAN = "JAPANESE", ASIAN = "KOREAN", ASIAN = "FILIPINO",
ASIAN = "CHINESE"),
race_5 = fct_relevel(race_5, ref = 'WHITE OR CAUCASIAN')) -> exampledf1NADi2MARelRa
Gender
exampledf1NADi2MARelRa %>%
mutate(gender = as_factor(PATIENT_GENDER_CD),
gender = fct_recode(gender, male = "M", female = "F"),
gender = fct_relevel(gender, ref = "male")) -> exampledf1NADi2MARelRaG
Language
exampledf1NADi2MARelRaG %>%
mutate(lang_3 = as_factor(PATIENT_LANGUAGE_DESC),
lang_3 = fct_recode(lang_3, English = "ENGLISH",
Other = "ARABIC", Other = "JAPANESE",
Other = "CHINESE, MANDARIN",
Other = "KOREAN", Other = "SIGN LANGUAGE",
Other = "RUSSIAN", Other = "SPANISH", Other = "ARMENIAN",
Other = "TURKISH", Other = "HINDI", Other = "BENGALI", Other = "FARSI; PERSIAN", Other = "ALBANIAN", Other = "HMONG", Other = "ROMANIAN",
Other = "PUNJABI", Other = "CROATIAN", Other = "CHALDEAN",
Other = "BURMESE", Other = "PORTUGUESE", unknown = "UNKNOWN"),
lang_3 = fct_relevel(lang_3, ref = 'English')) -> exampledf1NADi2MARelRaGL
Ethnicity
exampledf1NADi2MARelRaGL %>%
mutate(ethnic_3 = as_factor(PATIENT_ETHNIC_GROUP_DESC),
ethnic_3 = fct_recode(ethnic_3, Unknown = "CHOOSE NOT TO DISCLOSE", Unknown = "UNKNOWN")) -> exampledf1NADi2MARelRaGLEth
Codebook
exampledf1NADi2MARelRaGLEth %>%
select(age_yrs, gender, race_5, ethnic_3, lang_3, relig_affil, mstat_5, PATIENT_STATE_CD, EDU_YEARS, TOBACCO_DESC, depression_2, anxiety_2, ptsd_2, bipolar_2, body_image_2, ocd_2, seasonalAD_2, panic_2, any_psych_dx_2, E_TOTPOP, RPL_THEMES, RPL_THEME1, RPL_THEME2, RPL_THEME3, RPL_THEME4) -> mh_clean1
print(dfSummary(mh_clean1), method = 'render')
Patient Characteristics
Baseline Characteristics
mh_clean1 %>%
select(age_yrs, gender, race_5, ethnic_3, lang_3, relig_affil, mstat_5, depression_2, anxiety_2, ptsd_2, any_psych_dx_2, RPL_THEMES, RPL_THEME1, RPL_THEME2, RPL_THEME3, RPL_THEME4) -> baseline
baseline %>% tbl_summary(label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", mstat_5 ~ "Marital Status", depression_2 ~ "Depression", anxiety_2 ~ "Anxiety", ptsd_2 ~ "PTSD", any_psych_dx_2 ~ "Any Psychiatric Diagnosis", RPL_THEMES ~ "Total SVI", RPL_THEME1 ~ "Soceioeconomic Status", RPL_THEME2 ~ "Household Composition", RPL_THEME3 ~ "Minority Status and Language", RPL_THEME4 ~ "Housing and Transportation"),
statistic = list(all_continuous() ~ "{mean} ({sd})"),
missing_text = "(Missing)")
| Characteristic |
N = 11,306 |
| Age |
50 (18) |
| Gender |
|
| male |
5,282 (47%) |
| female |
6,024 (53%) |
| Race |
|
| WHITE OR CAUCASIAN |
9,823 (87%) |
| BLACK OR AFRICAN AMERICAN |
726 (6.4%) |
| ASIAN |
280 (2.5%) |
| Other |
438 (3.9%) |
| AMERICAN INDIAN AND ALASKA NATIVE |
39 (0.3%) |
| Ethnicity |
|
| NON-HISPANIC |
10,719 (95%) |
| Unknown |
384 (3.4%) |
| HISPANIC |
203 (1.8%) |
| English Speaking |
|
| English |
11,202 (99%) |
| Other |
99 (0.9%) |
| unknown |
5 (<0.1%) |
| Any Religious Affiliation |
|
| yes |
6,093 (54%) |
| no |
4,543 (40%) |
| unknown |
670 (5.9%) |
| Marital Status |
|
| married |
4,824 (43%) |
| div_sep |
348 (3.1%) |
| unmarried |
3,672 (32%) |
| unknown |
2,236 (20%) |
| widow |
226 (2.0%) |
| Depression |
2,079 (18%) |
| Anxiety |
2,220 (20%) |
| PTSD |
117 (1.0%) |
| Any Psychiatric Diagnosis |
3,406 (30%) |
| Total SVI |
0.37 (0.26) |
| (Missing) |
6 |
| Soceioeconomic Status |
0.35 (0.26) |
| (Missing) |
48 |
| Household Composition |
0.39 (0.27) |
| (Missing) |
6 |
| Minority Status and Language |
0.48 (0.29) |
| Housing and Transportation |
0.44 (0.29) |
| (Missing) |
24 |
Baseline Characteristics by Depression
baseline %>% tbl_summary(by = depression_2,
statistic = list(all_continuous() ~ "{mean} ({sd})"),
label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", mstat_5 ~ "Marital Status", anxiety_2 ~ "Anxiety", ptsd_2 ~ "PTSD", any_psych_dx_2 ~ "Any Psychiatric Diagnosis", RPL_THEMES ~ "Total SVI", RPL_THEME1 ~ "Soceioeconomic Status", RPL_THEME2 ~ "Household Composition", RPL_THEME3 ~ "Minority Status and Language", RPL_THEME4 ~ "Housing and Transportation"),
missing_text = "(Missing)"
) %>% add_p()
| Characteristic |
0, N = 9,227 |
1, N = 2,079 |
p-value |
| Age |
50 (19) |
51 (18) |
<0.001 |
| Gender |
|
|
<0.001 |
| male |
4,560 (49%) |
722 (35%) |
|
| female |
4,667 (51%) |
1,357 (65%) |
|
| Race |
|
|
0.005 |
| WHITE OR CAUCASIAN |
7,986 (87%) |
1,837 (88%) |
|
| BLACK OR AFRICAN AMERICAN |
597 (6.5%) |
129 (6.2%) |
|
| ASIAN |
249 (2.7%) |
31 (1.5%) |
|
| Other |
367 (4.0%) |
71 (3.4%) |
|
| AMERICAN INDIAN AND ALASKA NATIVE |
28 (0.3%) |
11 (0.5%) |
|
| Ethnicity |
|
|
0.041 |
| NON-HISPANIC |
8,732 (95%) |
1,987 (96%) |
|
| Unknown |
332 (3.6%) |
52 (2.5%) |
|
| HISPANIC |
163 (1.8%) |
40 (1.9%) |
|
| English Speaking |
|
|
0.004 |
| English |
9,130 (99%) |
2,072 (100%) |
|
| Other |
92 (1.0%) |
7 (0.3%) |
|
| unknown |
5 (<0.1%) |
0 (0%) |
|
| Any Religious Affiliation |
|
|
<0.001 |
| yes |
4,922 (53%) |
1,171 (56%) |
|
| no |
3,714 (40%) |
829 (40%) |
|
| unknown |
591 (6.4%) |
79 (3.8%) |
|
| Marital Status |
|
|
<0.001 |
| married |
4,028 (44%) |
796 (38%) |
|
| div_sep |
243 (2.6%) |
105 (5.1%) |
|
| unmarried |
2,966 (32%) |
706 (34%) |
|
| unknown |
1,827 (20%) |
409 (20%) |
|
| widow |
163 (1.8%) |
63 (3.0%) |
|
| Anxiety |
1,035 (11%) |
1,185 (57%) |
<0.001 |
| PTSD |
41 (0.4%) |
76 (3.7%) |
<0.001 |
| Any Psychiatric Diagnosis |
1,327 (14%) |
2,079 (100%) |
<0.001 |
| Total SVI |
0.36 (0.26) |
0.39 (0.26) |
<0.001 |
| (Missing) |
6 |
0 |
|
| Soceioeconomic Status |
0.34 (0.25) |
0.37 (0.26) |
<0.001 |
| (Missing) |
39 |
9 |
|
| Household Composition |
0.39 (0.27) |
0.40 (0.27) |
0.3 |
| (Missing) |
6 |
0 |
|
| Minority Status and Language |
0.48 (0.28) |
0.49 (0.29) |
0.031 |
| Housing and Transportation |
0.43 (0.29) |
0.45 (0.29) |
0.001 |
| (Missing) |
19 |
5 |
|
NA
NA
Baseline Characteristics By Anxiety
baseline %>% tbl_summary(by = anxiety_2,
statistic = list(all_continuous() ~ "{mean} ({sd})"),
label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", mstat_5 ~ "Marital Status", depression_2 ~ "Depression", ptsd_2 ~ "PTSD", any_psych_dx_2 ~ "Any Psychiatric Diagnosis", RPL_THEMES ~ "Total SVI", RPL_THEME1 ~ "Soceioeconomic Status", RPL_THEME2 ~ "Household Composition", RPL_THEME3 ~ "Minority Status and Language", RPL_THEME4 ~ "Housing and Transportation"),
missing_text = "(Missing)"
) %>% add_p()
| Characteristic |
0, N = 9,086 |
1, N = 2,220 |
p-value |
| Age |
50 (19) |
48 (17) |
<0.001 |
| Gender |
|
|
<0.001 |
| male |
4,550 (50%) |
732 (33%) |
|
| female |
4,536 (50%) |
1,488 (67%) |
|
| Race |
|
|
<0.001 |
| WHITE OR CAUCASIAN |
7,851 (86%) |
1,972 (89%) |
|
| BLACK OR AFRICAN AMERICAN |
601 (6.6%) |
125 (5.6%) |
|
| ASIAN |
249 (2.7%) |
31 (1.4%) |
|
| Other |
357 (3.9%) |
81 (3.6%) |
|
| AMERICAN INDIAN AND ALASKA NATIVE |
28 (0.3%) |
11 (0.5%) |
|
| Ethnicity |
|
|
0.012 |
| NON-HISPANIC |
8,599 (95%) |
2,120 (95%) |
|
| Unknown |
330 (3.6%) |
54 (2.4%) |
|
| HISPANIC |
157 (1.7%) |
46 (2.1%) |
|
| English Speaking |
|
|
<0.001 |
| English |
8,987 (99%) |
2,215 (100%) |
|
| Other |
94 (1.0%) |
5 (0.2%) |
|
| unknown |
5 (<0.1%) |
0 (0%) |
|
| Any Religious Affiliation |
|
|
<0.001 |
| yes |
4,860 (53%) |
1,233 (56%) |
|
| no |
3,638 (40%) |
905 (41%) |
|
| unknown |
588 (6.5%) |
82 (3.7%) |
|
| Marital Status |
|
|
<0.001 |
| married |
3,977 (44%) |
847 (38%) |
|
| div_sep |
250 (2.8%) |
98 (4.4%) |
|
| unmarried |
2,894 (32%) |
778 (35%) |
|
| unknown |
1,787 (20%) |
449 (20%) |
|
| widow |
178 (2.0%) |
48 (2.2%) |
|
| Depression |
894 (9.8%) |
1,185 (53%) |
<0.001 |
| PTSD |
43 (0.5%) |
74 (3.3%) |
<0.001 |
| Any Psychiatric Diagnosis |
1,186 (13%) |
2,220 (100%) |
<0.001 |
| Total SVI |
0.37 (0.26) |
0.36 (0.25) |
0.6 |
| (Missing) |
6 |
0 |
|
| Soceioeconomic Status |
0.35 (0.26) |
0.34 (0.25) |
0.14 |
| (Missing) |
41 |
7 |
|
| Household Composition |
0.39 (0.27) |
0.38 (0.26) |
0.025 |
| (Missing) |
6 |
0 |
|
| Minority Status and Language |
0.48 (0.28) |
0.50 (0.29) |
0.007 |
| Housing and Transportation |
0.44 (0.29) |
0.44 (0.28) |
0.7 |
| (Missing) |
19 |
5 |
|
Baseline Characteristics by Any Psych Dx
baseline %>% tbl_summary(by = any_psych_dx_2,
statistic = list(all_continuous() ~ "{mean} ({sd})"),
label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", mstat_5 ~ "Marital Status", depression_2 ~ "Depression", ptsd_2 ~ "PTSD", anxiety_2 ~ "Anxiety", RPL_THEMES ~ "Total SVI", RPL_THEME1 ~ "Soceioeconomic Status", RPL_THEME2 ~ "Household Composition", RPL_THEME3 ~ "Minority Status and Language", RPL_THEME4 ~ "Housing and Transportation"),
missing_text = "(Missing)"
) %>% add_p()
| Characteristic |
0, N = 7,900 |
1, N = 3,406 |
p-value |
| Age |
50 (19) |
50 (18) |
0.8 |
| Gender |
|
|
<0.001 |
| male |
4,055 (51%) |
1,227 (36%) |
|
| female |
3,845 (49%) |
2,179 (64%) |
|
| Race |
|
|
0.011 |
| WHITE OR CAUCASIAN |
6,831 (86%) |
2,992 (88%) |
|
| BLACK OR AFRICAN AMERICAN |
511 (6.5%) |
215 (6.3%) |
|
| ASIAN |
219 (2.8%) |
61 (1.8%) |
|
| Other |
316 (4.0%) |
122 (3.6%) |
|
| AMERICAN INDIAN AND ALASKA NATIVE |
23 (0.3%) |
16 (0.5%) |
|
| Ethnicity |
|
|
0.009 |
| NON-HISPANIC |
7,471 (95%) |
3,248 (95%) |
|
| Unknown |
294 (3.7%) |
90 (2.6%) |
|
| HISPANIC |
135 (1.7%) |
68 (2.0%) |
|
| English Speaking |
|
|
<0.001 |
| English |
7,809 (99%) |
3,393 (100%) |
|
| Other |
87 (1.1%) |
12 (0.4%) |
|
| unknown |
4 (<0.1%) |
1 (<0.1%) |
|
| Any Religious Affiliation |
|
|
<0.001 |
| yes |
4,188 (53%) |
1,905 (56%) |
|
| no |
3,186 (40%) |
1,357 (40%) |
|
| unknown |
526 (6.7%) |
144 (4.2%) |
|
| Marital Status |
|
|
<0.001 |
| married |
3,482 (44%) |
1,342 (39%) |
|
| div_sep |
200 (2.5%) |
148 (4.3%) |
|
| unmarried |
2,516 (32%) |
1,156 (34%) |
|
| unknown |
1,560 (20%) |
676 (20%) |
|
| widow |
142 (1.8%) |
84 (2.5%) |
|
| Depression |
0 (0%) |
2,079 (61%) |
<0.001 |
| Anxiety |
0 (0%) |
2,220 (65%) |
<0.001 |
| PTSD |
0 (0%) |
117 (3.4%) |
<0.001 |
| Total SVI |
0.37 (0.26) |
0.37 (0.26) |
0.074 |
| (Missing) |
6 |
0 |
|
| Soceioeconomic Status |
0.34 (0.25) |
0.35 (0.26) |
0.2 |
| (Missing) |
37 |
11 |
|
| Household Composition |
0.39 (0.27) |
0.39 (0.27) |
0.5 |
| (Missing) |
6 |
0 |
|
| Minority Status and Language |
0.48 (0.28) |
0.49 (0.29) |
0.006 |
| Housing and Transportation |
0.43 (0.29) |
0.44 (0.28) |
0.071 |
| (Missing) |
17 |
7 |
|
Prelim Models
Depression + RPL_THEMES
model1a <- glm(depression_2 ~ mstat_5 + relig_affil + race_5 + lang_3 + age_yrs
+ gender + ethnic_3 + RPL_THEMES,
family = "binomial",
data = mh_clean1)
summary(model1a)
Call:
glm(formula = depression_2 ~ mstat_5 + relig_affil + race_5 +
lang_3 + age_yrs + gender + ethnic_3 + RPL_THEMES, family = "binomial",
data = mh_clean1)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.1083 -0.6910 -0.5682 -0.4884 2.4580
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -2.391136 0.114571 -20.870 < 2e-16
mstat_5div_sep 0.697244 0.124876 5.584 2.36e-08
mstat_5unmarried 0.308344 0.064845 4.755 1.98e-06
mstat_5unknown 0.191959 0.069916 2.746 0.00604
mstat_5widow 0.382229 0.157952 2.420 0.01552
relig_affilno -0.002777 0.052557 -0.053 0.95786
relig_affilunknown -0.505952 0.126398 -4.003 6.26e-05
race_5BLACK OR AFRICAN AMERICAN -0.222939 0.105035 -2.123 0.03379
race_5ASIAN -0.402514 0.195649 -2.057 0.03965
race_5Other -0.013541 0.144461 -0.094 0.92532
race_5AMERICAN INDIAN AND ALASKA NATIVE 0.355694 0.361562 0.984 0.32523
lang_3Other -1.013604 0.400714 -2.529 0.01142
lang_3unknown -10.106624 143.906745 -0.070 0.94401
age_yrs 0.006435 0.001561 4.122 3.76e-05
genderfemale 0.590703 0.051169 11.544 < 2e-16
ethnic_3Unknown -0.242978 0.157859 -1.539 0.12375
ethnic_3HISPANIC 0.098964 0.189854 0.521 0.60218
RPL_THEMES 0.319466 0.097941 3.262 0.00111
(Intercept) ***
mstat_5div_sep ***
mstat_5unmarried ***
mstat_5unknown **
mstat_5widow *
relig_affilno
relig_affilunknown ***
race_5BLACK OR AFRICAN AMERICAN *
race_5ASIAN *
race_5Other
race_5AMERICAN INDIAN AND ALASKA NATIVE
lang_3Other *
lang_3unknown
age_yrs ***
genderfemale ***
ethnic_3Unknown
ethnic_3HISPANIC
RPL_THEMES **
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 10789 on 11299 degrees of freedom
Residual deviance: 10523 on 11282 degrees of freedom
(6 observations deleted due to missingness)
AIC: 10559
Number of Fisher Scoring iterations: 11
broom::glance(model1a)
broom::tidy(model1a, exponentiate = TRUE)
model_performance(model1a)
# Indices of model performance
AIC | BIC | Tjur's R2 | RMSE | Sigma | Log_loss | Score_log | Score_spherical | PCP
--------------------------------------------------------------------------------------------------
10559.176 | 10691.162 | 0.023 | 0.383 | 0.966 | 0.466 | -Inf | 1.979e-04 | 0.707
tbl_regression(model1a, label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", mstat_5 ~ "Marital Status", RPL_THEMES ~ "Total SVI"), exponentiate = TRUE)
| Characteristic |
OR |
95% CI |
p-value |
| Marital Status |
|
|
|
| married |
— |
— |
|
| div_sep |
2.01 |
1.57, 2.56 |
<0.001 |
| unmarried |
1.36 |
1.20, 1.55 |
<0.001 |
| unknown |
1.21 |
1.06, 1.39 |
0.006 |
| widow |
1.47 |
1.07, 1.99 |
0.016 |
| Any Religious Affiliation |
|
|
|
| yes |
— |
— |
|
| no |
1.00 |
0.90, 1.11 |
>0.9 |
| unknown |
0.60 |
0.47, 0.77 |
<0.001 |
| Race |
|
|
|
| WHITE OR CAUCASIAN |
— |
— |
|
| BLACK OR AFRICAN AMERICAN |
0.80 |
0.65, 0.98 |
0.034 |
| ASIAN |
0.67 |
0.45, 0.97 |
0.040 |
| Other |
0.99 |
0.74, 1.30 |
>0.9 |
| AMERICAN INDIAN AND ALASKA NATIVE |
1.43 |
0.67, 2.82 |
0.3 |
| English Speaking |
|
|
|
| English |
— |
— |
|
| Other |
0.36 |
0.15, 0.74 |
0.011 |
| unknown |
0.00 |
|
>0.9 |
| Age |
1.01 |
1.00, 1.01 |
<0.001 |
| Gender |
|
|
|
| male |
— |
— |
|
| female |
1.81 |
1.63, 2.00 |
<0.001 |
| Ethnicity |
|
|
|
| NON-HISPANIC |
— |
— |
|
| Unknown |
0.78 |
0.57, 1.06 |
0.12 |
| HISPANIC |
1.10 |
0.75, 1.59 |
0.6 |
| Total SVI |
1.38 |
1.14, 1.67 |
0.001 |
NA
Depression + RPL_THEMESx4
model1b <- glm(depression_2 ~ mstat_5 + relig_affil + race_5 + lang_3 + age_yrs
+ gender + ethnic_3 + RPL_THEME1 + RPL_THEME2 + RPL_THEME3 + RPL_THEME4,
family = "binomial",
data = mh_clean1)
summary(model1b)
Call:
glm(formula = depression_2 ~ mstat_5 + relig_affil + race_5 +
lang_3 + age_yrs + gender + ethnic_3 + RPL_THEME1 + RPL_THEME2 +
RPL_THEME3 + RPL_THEME4, family = "binomial", data = mh_clean1)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.0991 -0.6863 -0.5686 -0.4819 2.4788
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -2.509937 0.126050 -19.912 < 2e-16
mstat_5div_sep 0.700653 0.125131 5.599 2.15e-08
mstat_5unmarried 0.298353 0.065122 4.581 4.62e-06
mstat_5unknown 0.189687 0.070154 2.704 0.00685
mstat_5widow 0.356478 0.159135 2.240 0.02508
relig_affilno 0.001572 0.052850 0.030 0.97628
relig_affilunknown -0.501297 0.126595 -3.960 7.50e-05
race_5BLACK OR AFRICAN AMERICAN -0.273232 0.106927 -2.555 0.01061
race_5ASIAN -0.469145 0.197899 -2.371 0.01776
race_5Other -0.042459 0.145395 -0.292 0.77027
race_5AMERICAN INDIAN AND ALASKA NATIVE 0.387898 0.364156 1.065 0.28679
lang_3Other -1.086542 0.401741 -2.705 0.00684
lang_3unknown -10.134088 143.608197 -0.071 0.94374
age_yrs 0.006900 0.001568 4.401 1.08e-05
genderfemale 0.593142 0.051385 11.543 < 2e-16
ethnic_3Unknown -0.238405 0.159147 -1.498 0.13413
ethnic_3HISPANIC 0.100326 0.190017 0.528 0.59751
RPL_THEME1 0.410419 0.140795 2.915 0.00356
RPL_THEME2 -0.194572 0.122036 -1.594 0.11085
RPL_THEME3 0.225248 0.091203 2.470 0.01352
RPL_THEME4 0.091691 0.103862 0.883 0.37734
(Intercept) ***
mstat_5div_sep ***
mstat_5unmarried ***
mstat_5unknown **
mstat_5widow *
relig_affilno
relig_affilunknown ***
race_5BLACK OR AFRICAN AMERICAN *
race_5ASIAN *
race_5Other
race_5AMERICAN INDIAN AND ALASKA NATIVE
lang_3Other **
lang_3unknown
age_yrs ***
genderfemale ***
ethnic_3Unknown
ethnic_3HISPANIC
RPL_THEME1 **
RPL_THEME2
RPL_THEME3 *
RPL_THEME4
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 10723 on 11239 degrees of freedom
Residual deviance: 10444 on 11219 degrees of freedom
(66 observations deleted due to missingness)
AIC: 10486
Number of Fisher Scoring iterations: 11
broom::glance(model1b)
broom::tidy(model1b, exponentiate = TRUE)
model_performance(model1b)
# Indices of model performance
AIC | BIC | Tjur's R2 | RMSE | Sigma | Log_loss | Score_log | Score_spherical | PCP
--------------------------------------------------------------------------------------------------
10486.462 | 10640.333 | 0.025 | 0.382 | 0.965 | 0.465 | -Inf | 1.989e-04 | 0.707
tbl_regression(model1b, label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", RPL_THEME1 ~ "Soceioeconomic Status", RPL_THEME2 ~ "Household Composition", RPL_THEME3 ~ "Minority Status and Language", RPL_THEME4 ~ "Housing and Transportation", mstat_5 ~ "Marital Status"), exponentiate = TRUE)
| Characteristic |
OR |
95% CI |
p-value |
| Marital Status |
|
|
|
| married |
— |
— |
|
| div_sep |
2.02 |
1.57, 2.57 |
<0.001 |
| unmarried |
1.35 |
1.19, 1.53 |
<0.001 |
| unknown |
1.21 |
1.05, 1.39 |
0.007 |
| widow |
1.43 |
1.04, 1.94 |
0.025 |
| Any Religious Affiliation |
|
|
|
| yes |
— |
— |
|
| no |
1.00 |
0.90, 1.11 |
>0.9 |
| unknown |
0.61 |
0.47, 0.77 |
<0.001 |
| Race |
|
|
|
| WHITE OR CAUCASIAN |
— |
— |
|
| BLACK OR AFRICAN AMERICAN |
0.76 |
0.61, 0.94 |
0.011 |
| ASIAN |
0.63 |
0.42, 0.91 |
0.018 |
| Other |
0.96 |
0.72, 1.27 |
0.8 |
| AMERICAN INDIAN AND ALASKA NATIVE |
1.47 |
0.69, 2.93 |
0.3 |
| English Speaking |
|
|
|
| English |
— |
— |
|
| Other |
0.34 |
0.14, 0.69 |
0.007 |
| unknown |
0.00 |
|
>0.9 |
| Age |
1.01 |
1.00, 1.01 |
<0.001 |
| Gender |
|
|
|
| male |
— |
— |
|
| female |
1.81 |
1.64, 2.00 |
<0.001 |
| Ethnicity |
|
|
|
| NON-HISPANIC |
— |
— |
|
| Unknown |
0.79 |
0.57, 1.07 |
0.13 |
| HISPANIC |
1.11 |
0.75, 1.59 |
0.6 |
| Soceioeconomic Status |
1.51 |
1.14, 1.99 |
0.004 |
| Household Composition |
0.82 |
0.65, 1.05 |
0.11 |
| Minority Status and Language |
1.25 |
1.05, 1.50 |
0.014 |
| Housing and Transportation |
1.10 |
0.89, 1.34 |
0.4 |
Anxiety + RPL_THEMES
model2a <- glm(anxiety_2 ~ mstat_5 + relig_affil + lang_3 + age_yrs + race_5
+ gender + ethnic_3 + RPL_THEMES,
family = "binomial",
data = mh_clean1)
summary(model2a)
Call:
glm(formula = anxiety_2 ~ mstat_5 + relig_affil + lang_3 + age_yrs +
race_5 + gender + ethnic_3 + RPL_THEMES, family = "binomial",
data = mh_clean1)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.0106 -0.7279 -0.5850 -0.4743 2.5193
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.447495 0.110644 -13.082 < 2e-16
mstat_5div_sep 0.545058 0.127299 4.282 1.85e-05
mstat_5unmarried 0.140432 0.063508 2.211 0.02702
mstat_5unknown 0.126650 0.068362 1.853 0.06393
mstat_5widow 0.196117 0.171701 1.142 0.25337
relig_affilno -0.051649 0.051166 -1.009 0.31276
relig_affilunknown -0.553278 0.124657 -4.438 9.06e-06
lang_3Other -1.347366 0.466192 -2.890 0.00385
lang_3unknown -10.299879 143.225055 -0.072 0.94267
age_yrs -0.007212 0.001560 -4.625 3.75e-06
race_5BLACK OR AFRICAN AMERICAN -0.294426 0.105861 -2.781 0.00542
race_5ASIAN -0.596272 0.195727 -3.046 0.00232
race_5Other 0.032891 0.138157 0.238 0.81183
race_5AMERICAN INDIAN AND ALASKA NATIVE 0.248353 0.362442 0.685 0.49320
genderfemale 0.707644 0.050370 14.049 < 2e-16
ethnic_3Unknown -0.243212 0.155893 -1.560 0.11873
ethnic_3HISPANIC 0.133510 0.181560 0.735 0.46213
RPL_THEMES -0.082192 0.096949 -0.848 0.39656
(Intercept) ***
mstat_5div_sep ***
mstat_5unmarried *
mstat_5unknown .
mstat_5widow
relig_affilno
relig_affilunknown ***
lang_3Other **
lang_3unknown
age_yrs ***
race_5BLACK OR AFRICAN AMERICAN **
race_5ASIAN **
race_5Other
race_5AMERICAN INDIAN AND ALASKA NATIVE
genderfemale ***
ethnic_3Unknown
ethnic_3HISPANIC
RPL_THEMES
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 11197 on 11299 degrees of freedom
Residual deviance: 10864 on 11282 degrees of freedom
(6 observations deleted due to missingness)
AIC: 10900
Number of Fisher Scoring iterations: 11
broom::glance(model2a)
broom::tidy(model2a, exponentiate = TRUE)
model_performance(model2a)
# Indices of model performance
AIC | BIC | Tjur's R2 | RMSE | Sigma | Log_loss | Score_log | Score_spherical | PCP
--------------------------------------------------------------------------------------------------
10899.868 | 11031.854 | 0.029 | 0.392 | 0.981 | 0.481 | -Inf | 1.979e-04 | 0.693
tbl_regression(model2a, label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", mstat_5 ~ "Marital Status", RPL_THEMES ~ "Total SVI"), exponentiate = TRUE)
| Characteristic |
OR |
95% CI |
p-value |
| Marital Status |
|
|
|
| married |
— |
— |
|
| div_sep |
1.72 |
1.34, 2.21 |
<0.001 |
| unmarried |
1.15 |
1.02, 1.30 |
0.027 |
| unknown |
1.14 |
0.99, 1.30 |
0.064 |
| widow |
1.22 |
0.86, 1.69 |
0.3 |
| Any Religious Affiliation |
|
|
|
| yes |
— |
— |
|
| no |
0.95 |
0.86, 1.05 |
0.3 |
| unknown |
0.58 |
0.45, 0.73 |
<0.001 |
| English Speaking |
|
|
|
| English |
— |
— |
|
| Other |
0.26 |
0.09, 0.59 |
0.004 |
| unknown |
0.00 |
|
>0.9 |
| Age |
0.99 |
0.99, 1.00 |
<0.001 |
| Race |
|
|
|
| WHITE OR CAUCASIAN |
— |
— |
|
| BLACK OR AFRICAN AMERICAN |
0.74 |
0.60, 0.91 |
0.005 |
| ASIAN |
0.55 |
0.37, 0.80 |
0.002 |
| Other |
1.03 |
0.78, 1.35 |
0.8 |
| AMERICAN INDIAN AND ALASKA NATIVE |
1.28 |
0.60, 2.54 |
0.5 |
| Gender |
|
|
|
| male |
— |
— |
|
| female |
2.03 |
1.84, 2.24 |
<0.001 |
| Ethnicity |
|
|
|
| NON-HISPANIC |
— |
— |
|
| Unknown |
0.78 |
0.57, 1.06 |
0.12 |
| HISPANIC |
1.14 |
0.79, 1.62 |
0.5 |
| Total SVI |
0.92 |
0.76, 1.11 |
0.4 |
Anxiety + RPL_THEMESx4
model2b <- glm(anxiety_2 ~ mstat_5 + relig_affil + race_5 + lang_3 + age_yrs
+ gender + ethnic_3 + RPL_THEME1 + RPL_THEME2 + RPL_THEME3 + RPL_THEME4,
family = "binomial",
data = mh_clean1)
summary(model2b)
Call:
glm(formula = anxiety_2 ~ mstat_5 + relig_affil + race_5 + lang_3 +
age_yrs + gender + ethnic_3 + RPL_THEME1 + RPL_THEME2 + RPL_THEME3 +
RPL_THEME4, family = "binomial", data = mh_clean1)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.0373 -0.7230 -0.5820 -0.4648 2.5023
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.574e+00 1.220e-01 -12.900 < 2e-16
mstat_5div_sep 5.569e-01 1.276e-01 4.364 1.28e-05
mstat_5unmarried 1.373e-01 6.373e-02 2.155 0.031189
mstat_5unknown 1.292e-01 6.861e-02 1.883 0.059687
mstat_5widow 1.929e-01 1.722e-01 1.120 0.262565
relig_affilno -4.277e-02 5.143e-02 -0.831 0.405706
relig_affilunknown -5.364e-01 1.248e-01 -4.297 1.73e-05
race_5BLACK OR AFRICAN AMERICAN -3.393e-01 1.076e-01 -3.153 0.001615
race_5ASIAN -7.059e-01 1.978e-01 -3.569 0.000358
race_5Other 3.621e-04 1.389e-01 0.003 0.997920
race_5AMERICAN INDIAN AND ALASKA NATIVE 2.755e-01 3.658e-01 0.753 0.451349
lang_3Other -1.416e+00 4.668e-01 -3.033 0.002420
lang_3unknown -1.036e+01 1.430e+02 -0.072 0.942256
age_yrs -6.739e-03 1.564e-03 -4.309 1.64e-05
genderfemale 7.113e-01 5.058e-02 14.062 < 2e-16
ethnic_3Unknown -2.460e-01 1.572e-01 -1.565 0.117639
ethnic_3HISPANIC 1.386e-01 1.816e-01 0.763 0.445514
RPL_THEME1 -1.078e-01 1.392e-01 -0.775 0.438623
RPL_THEME2 -1.798e-01 1.204e-01 -1.493 0.135353
RPL_THEME3 2.824e-01 8.902e-02 3.172 0.001512
RPL_THEME4 9.487e-02 1.019e-01 0.931 0.351965
(Intercept) ***
mstat_5div_sep ***
mstat_5unmarried *
mstat_5unknown .
mstat_5widow
relig_affilno
relig_affilunknown ***
race_5BLACK OR AFRICAN AMERICAN **
race_5ASIAN ***
race_5Other
race_5AMERICAN INDIAN AND ALASKA NATIVE
lang_3Other **
lang_3unknown
age_yrs ***
genderfemale ***
ethnic_3Unknown
ethnic_3HISPANIC
RPL_THEME1
RPL_THEME2
RPL_THEME3 **
RPL_THEME4
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 11137 on 11239 degrees of freedom
Residual deviance: 10787 on 11219 degrees of freedom
(66 observations deleted due to missingness)
AIC: 10829
Number of Fisher Scoring iterations: 11
broom::glance(model2b)
broom::tidy(model2b, exponentiate = TRUE)
model_performance(model2b)
# Indices of model performance
AIC | BIC | Tjur's R2 | RMSE | Sigma | Log_loss | Score_log | Score_spherical | PCP
--------------------------------------------------------------------------------------------------
10828.663 | 10982.535 | 0.030 | 0.391 | 0.981 | 0.480 | -Inf | 1.989e-04 | 0.694
tbl_regression(model2b, label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", RPL_THEME1 ~ "Soceioeconomic Status", RPL_THEME2 ~ "Household Composition", RPL_THEME3 ~ "Minority Status and Language", RPL_THEME4 ~ "Housing and Transportation", mstat_5 ~ "Marital Status"), exponentiate = TRUE)
| Characteristic |
OR |
95% CI |
p-value |
| Marital Status |
|
|
|
| married |
— |
— |
|
| div_sep |
1.75 |
1.35, 2.23 |
<0.001 |
| unmarried |
1.15 |
1.01, 1.30 |
0.031 |
| unknown |
1.14 |
0.99, 1.30 |
0.060 |
| widow |
1.21 |
0.86, 1.69 |
0.3 |
| Any Religious Affiliation |
|
|
|
| yes |
— |
— |
|
| no |
0.96 |
0.87, 1.06 |
0.4 |
| unknown |
0.58 |
0.46, 0.74 |
<0.001 |
| Race |
|
|
|
| WHITE OR CAUCASIAN |
— |
— |
|
| BLACK OR AFRICAN AMERICAN |
0.71 |
0.57, 0.88 |
0.002 |
| ASIAN |
0.49 |
0.33, 0.72 |
<0.001 |
| Other |
1.00 |
0.76, 1.31 |
>0.9 |
| AMERICAN INDIAN AND ALASKA NATIVE |
1.32 |
0.62, 2.63 |
0.5 |
| English Speaking |
|
|
|
| English |
— |
— |
|
| Other |
0.24 |
0.08, 0.55 |
0.002 |
| unknown |
0.00 |
|
>0.9 |
| Age |
0.99 |
0.99, 1.00 |
<0.001 |
| Gender |
|
|
|
| male |
— |
— |
|
| female |
2.04 |
1.85, 2.25 |
<0.001 |
| Ethnicity |
|
|
|
| NON-HISPANIC |
— |
— |
|
| Unknown |
0.78 |
0.57, 1.05 |
0.12 |
| HISPANIC |
1.15 |
0.80, 1.63 |
0.4 |
| Soceioeconomic Status |
0.90 |
0.68, 1.18 |
0.4 |
| Household Composition |
0.84 |
0.66, 1.06 |
0.14 |
| Minority Status and Language |
1.33 |
1.11, 1.58 |
0.002 |
| Housing and Transportation |
1.10 |
0.90, 1.34 |
0.4 |
PTSD + RPL_THEMES
model3a <- glm(ptsd_2 ~ mstat_5 + relig_affil + race_5 + lang_3 + age_yrs
+ gender + ethnic_3 + RPL_THEMES,
family = "binomial",
data = mh_clean1)
Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
summary(model3a)
Call:
glm(formula = ptsd_2 ~ mstat_5 + relig_affil + race_5 + lang_3 +
age_yrs + gender + ethnic_3 + RPL_THEMES, family = "binomial",
data = mh_clean1)
Deviance Residuals:
Min 1Q Median 3Q Max
-0.9062 -0.1643 -0.1353 -0.1102 3.4797
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -4.831906 0.436657 -11.066 < 2e-16
mstat_5div_sep 0.227699 0.477160 0.477 0.633223
mstat_5unmarried 0.120949 0.239832 0.504 0.614046
mstat_5unknown -0.203905 0.280534 -0.727 0.467319
mstat_5widow -14.033161 429.294756 -0.033 0.973923
relig_affilno -0.269765 0.204464 -1.319 0.187044
relig_affilunknown -0.030234 0.403362 -0.075 0.940251
race_5BLACK OR AFRICAN AMERICAN -0.691715 0.470877 -1.469 0.141834
race_5ASIAN 0.522321 0.517598 1.009 0.312915
race_5Other -0.168527 0.595370 -0.283 0.777129
race_5AMERICAN INDIAN AND ALASKA NATIVE 1.837626 0.619050 2.968 0.002993
lang_3Other -14.121453 642.083639 -0.022 0.982453
lang_3unknown 4.167621 1.425091 2.924 0.003451
age_yrs -0.005803 0.006112 -0.949 0.342375
genderfemale 0.735791 0.204894 3.591 0.000329
ethnic_3Unknown -0.595795 0.732287 -0.814 0.415870
ethnic_3HISPANIC -0.137868 0.752193 -0.183 0.854572
RPL_THEMES 0.610222 0.366240 1.666 0.095678
(Intercept) ***
mstat_5div_sep
mstat_5unmarried
mstat_5unknown
mstat_5widow
relig_affilno
relig_affilunknown
race_5BLACK OR AFRICAN AMERICAN
race_5ASIAN
race_5Other
race_5AMERICAN INDIAN AND ALASKA NATIVE **
lang_3Other
lang_3unknown **
age_yrs
genderfemale ***
ethnic_3Unknown
ethnic_3HISPANIC
RPL_THEMES .
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 1302.3 on 11299 degrees of freedom
Residual deviance: 1259.5 on 11282 degrees of freedom
(6 observations deleted due to missingness)
AIC: 1295.5
Number of Fisher Scoring iterations: 17
broom::glance(model3a)
broom::tidy(model3a, exponentiate = TRUE)
model_performance(model3a)
# Indices of model performance
AIC | BIC | Tjur's R2 | RMSE | Sigma | Log_loss | Score_log | Score_spherical | PCP
------------------------------------------------------------------------------------------------
1295.528 | 1427.514 | 0.006 | 0.101 | 0.334 | 0.056 | -1.218 | 0.008 | 0.980
tbl_regression(model3a, label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", mstat_5 ~ "Marital Status", RPL_THEMES ~ "Total SVI"), exponentiate = TRUE)
| Characteristic |
OR |
95% CI |
p-value |
| Marital Status |
|
|
|
| married |
— |
— |
|
| div_sep |
1.26 |
0.43, 2.91 |
0.6 |
| unmarried |
1.13 |
0.70, 1.80 |
0.6 |
| unknown |
0.82 |
0.46, 1.39 |
0.5 |
| widow |
0.00 |
0.00, 1.13 |
>0.9 |
| Any Religious Affiliation |
|
|
|
| yes |
— |
— |
|
| no |
0.76 |
0.51, 1.13 |
0.2 |
| unknown |
0.97 |
0.40, 2.00 |
>0.9 |
| Race |
|
|
|
| WHITE OR CAUCASIAN |
— |
— |
|
| BLACK OR AFRICAN AMERICAN |
0.50 |
0.17, 1.14 |
0.14 |
| ASIAN |
1.69 |
0.51, 4.10 |
0.3 |
| Other |
0.84 |
0.22, 2.36 |
0.8 |
| AMERICAN INDIAN AND ALASKA NATIVE |
6.28 |
1.48, 18.2 |
0.003 |
| English Speaking |
|
|
|
| English |
— |
— |
|
| Other |
0.00 |
0.00, 178,273 |
>0.9 |
| unknown |
64.6 |
2.37, 1,024 |
0.003 |
| Age |
0.99 |
0.98, 1.01 |
0.3 |
| Gender |
|
|
|
| male |
— |
— |
|
| female |
2.09 |
1.41, 3.16 |
<0.001 |
| Ethnicity |
|
|
|
| NON-HISPANIC |
— |
— |
|
| Unknown |
0.55 |
0.09, 1.82 |
0.4 |
| HISPANIC |
0.87 |
0.14, 3.02 |
0.9 |
| Total SVI |
1.84 |
0.89, 3.75 |
0.10 |
PTSD + RPL_THEMESx4
model3b <- glm(ptsd_2 ~ mstat_5 + relig_affil + race_5 + lang_3 + age_yrs
+ gender + ethnic_3 + RPL_THEME1 + RPL_THEME2 + RPL_THEME3 + RPL_THEME4,
family = "binomial",
data = mh_clean1)
Warning: glm.fit: fitted probabilities numerically 0 or 1 occurred
summary(model3b)
Call:
glm(formula = ptsd_2 ~ mstat_5 + relig_affil + race_5 + lang_3 +
age_yrs + gender + ethnic_3 + RPL_THEME1 + RPL_THEME2 + RPL_THEME3 +
RPL_THEME4, family = "binomial", data = mh_clean1)
Deviance Residuals:
Min 1Q Median 3Q Max
-0.9109 -0.1625 -0.1338 -0.1069 3.4453
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -5.036376 0.482197 -10.445 < 2e-16
mstat_5div_sep 0.226008 0.478278 0.473 0.636538
mstat_5unmarried 0.107611 0.240803 0.447 0.654959
mstat_5unknown -0.202881 0.281881 -0.720 0.471686
mstat_5widow -14.057312 429.995688 -0.033 0.973920
relig_affilno -0.257281 0.205616 -1.251 0.210837
relig_affilunknown -0.027123 0.404557 -0.067 0.946547
race_5BLACK OR AFRICAN AMERICAN -0.767403 0.475533 -1.614 0.106577
race_5ASIAN 0.359802 0.529493 0.680 0.496807
race_5Other -0.220810 0.595740 -0.371 0.710899
race_5AMERICAN INDIAN AND ALASKA NATIVE 1.853177 0.622503 2.977 0.002911
lang_3Other -14.219274 644.749949 -0.022 0.982405
lang_3unknown 4.029383 1.437171 2.804 0.005052
age_yrs -0.005243 0.006139 -0.854 0.393075
genderfemale 0.766358 0.207124 3.700 0.000216
ethnic_3Unknown -0.545663 0.731839 -0.746 0.455905
ethnic_3HISPANIC -0.168886 0.753752 -0.224 0.822710
RPL_THEME1 0.821149 0.523639 1.568 0.116844
RPL_THEME2 -0.590445 0.446115 -1.324 0.185661
RPL_THEME3 0.317841 0.345681 0.919 0.357853
RPL_THEME4 0.364396 0.389660 0.935 0.349703
(Intercept) ***
mstat_5div_sep
mstat_5unmarried
mstat_5unknown
mstat_5widow
relig_affilno
relig_affilunknown
race_5BLACK OR AFRICAN AMERICAN
race_5ASIAN
race_5Other
race_5AMERICAN INDIAN AND ALASKA NATIVE **
lang_3Other
lang_3unknown **
age_yrs
genderfemale ***
ethnic_3Unknown
ethnic_3HISPANIC
RPL_THEME1
RPL_THEME2
RPL_THEME3
RPL_THEME4
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 1291.9 on 11239 degrees of freedom
Residual deviance: 1243.7 on 11219 degrees of freedom
(66 observations deleted due to missingness)
AIC: 1285.7
Number of Fisher Scoring iterations: 17
broom::glance(model3b)
broom::tidy(model3b, exponentiate = TRUE)
model_performance(model3b)
# Indices of model performance
AIC | BIC | Tjur's R2 | RMSE | Sigma | Log_loss | Score_log | Score_spherical | PCP
------------------------------------------------------------------------------------------------
1285.684 | 1439.556 | 0.006 | 0.101 | 0.333 | 0.055 | -1.204 | 0.008 | 0.980
tbl_regression(model3b, label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", RPL_THEME1 ~ "Soceioeconomic Status", RPL_THEME2 ~ "Household Composition", RPL_THEME3 ~ "Minority Status and Language", RPL_THEME4 ~ "Housing and Transportation", mstat_5 ~ "Marital Status"), exponentiate = TRUE)
| Characteristic |
OR |
95% CI |
p-value |
| Marital Status |
|
|
|
| married |
— |
— |
|
| div_sep |
1.25 |
0.43, 2.91 |
0.6 |
| unmarried |
1.11 |
0.69, 1.78 |
0.7 |
| unknown |
0.82 |
0.46, 1.40 |
0.5 |
| widow |
0.00 |
0.00, 0.98 |
>0.9 |
| Any Religious Affiliation |
|
|
|
| yes |
— |
— |
|
| no |
0.77 |
0.51, 1.15 |
0.2 |
| unknown |
0.97 |
0.40, 2.01 |
>0.9 |
| Race |
|
|
|
| WHITE OR CAUCASIAN |
— |
— |
|
| BLACK OR AFRICAN AMERICAN |
0.46 |
0.16, 1.07 |
0.11 |
| ASIAN |
1.43 |
0.43, 3.59 |
0.5 |
| Other |
0.80 |
0.21, 2.24 |
0.7 |
| AMERICAN INDIAN AND ALASKA NATIVE |
6.38 |
1.49, 18.6 |
0.003 |
| English Speaking |
|
|
|
| English |
— |
— |
|
| Other |
0.00 |
0.00, 1,281 |
>0.9 |
| unknown |
56.2 |
2.04, 912 |
0.005 |
| Age |
1.0 |
0.98, 1.01 |
0.4 |
| Gender |
|
|
|
| male |
— |
— |
|
| female |
2.15 |
1.45, 3.27 |
<0.001 |
| Ethnicity |
|
|
|
| NON-HISPANIC |
— |
— |
|
| Unknown |
0.58 |
0.09, 1.91 |
0.5 |
| HISPANIC |
0.84 |
0.13, 2.94 |
0.8 |
| Soceioeconomic Status |
2.27 |
0.81, 6.30 |
0.12 |
| Household Composition |
0.55 |
0.23, 1.34 |
0.2 |
| Minority Status and Language |
1.37 |
0.70, 2.71 |
0.4 |
| Housing and Transportation |
1.44 |
0.67, 3.09 |
0.3 |
Any Psych + RPL THEMES
model4a <- glm(any_psych_dx_2 ~ mstat_5 + relig_affil + race_5 + lang_3 +
age_yrs + gender + ethnic_3 + RPL_THEMES,
family = "binomial",
data = mh_clean1)
summary(model4a)
Call:
glm(formula = any_psych_dx_2 ~ mstat_5 + relig_affil + race_5 +
lang_3 + age_yrs + gender + ethnic_3 + RPL_THEMES, family = "binomial",
data = mh_clean1)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.2918 -0.9162 -0.7340 1.3762 2.1881
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.3070778 0.0957130 -13.656 < 2e-16
mstat_5div_sep 0.5800994 0.1149104 5.048 4.46e-07
mstat_5unmarried 0.2052974 0.0548949 3.740 0.000184
mstat_5unknown 0.1409957 0.0589234 2.393 0.016717
mstat_5widow 0.2502883 0.1454133 1.721 0.085211
relig_affilno -0.0449351 0.0445018 -1.010 0.312622
relig_affilunknown -0.4529476 0.1005874 -4.503 6.70e-06
race_5BLACK OR AFRICAN AMERICAN -0.1597796 0.0882736 -1.810 0.070288
race_5ASIAN -0.2856308 0.1504510 -1.898 0.057631
race_5Other 0.0027715 0.1199491 0.023 0.981566
race_5AMERICAN INDIAN AND ALASKA NATIVE 0.2751616 0.3308584 0.832 0.405601
lang_3Other -1.0672151 0.3158365 -3.379 0.000727
lang_3unknown 0.2752294 1.1385568 0.242 0.808985
age_yrs 0.0005733 0.0013322 0.430 0.666931
genderfemale 0.6149674 0.0426661 14.413 < 2e-16
ethnic_3Unknown -0.2291014 0.1290134 -1.776 0.075767
ethnic_3HISPANIC 0.1604120 0.1605009 0.999 0.317579
RPL_THEMES 0.1061593 0.0835235 1.271 0.203725
(Intercept) ***
mstat_5div_sep ***
mstat_5unmarried ***
mstat_5unknown *
mstat_5widow .
relig_affilno
relig_affilunknown ***
race_5BLACK OR AFRICAN AMERICAN .
race_5ASIAN .
race_5Other
race_5AMERICAN INDIAN AND ALASKA NATIVE
lang_3Other ***
lang_3unknown
age_yrs
genderfemale ***
ethnic_3Unknown .
ethnic_3HISPANIC
RPL_THEMES
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 13833 on 11299 degrees of freedom
Residual deviance: 13514 on 11282 degrees of freedom
(6 observations deleted due to missingness)
AIC: 13550
Number of Fisher Scoring iterations: 4
broom::glance(model4a)
broom::tidy(model4a, exponentiate = TRUE)
model_performance(model4a)
# Indices of model performance
AIC | BIC | Tjur's R2 | RMSE | Sigma | Log_loss | Score_log | Score_spherical | PCP
--------------------------------------------------------------------------------------------------
13550.396 | 13682.382 | 0.028 | 0.452 | 1.094 | 0.598 | -Inf | 1.353e-04 | 0.591
tbl_regression(model4a, label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", mstat_5 ~ "Marital Status", RPL_THEMES ~ "Total SVI"), exponentiate = TRUE)
| Characteristic |
OR |
95% CI |
p-value |
| Marital Status |
|
|
|
| married |
— |
— |
|
| div_sep |
1.79 |
1.42, 2.24 |
<0.001 |
| unmarried |
1.23 |
1.10, 1.37 |
<0.001 |
| unknown |
1.15 |
1.03, 1.29 |
0.017 |
| widow |
1.28 |
0.96, 1.70 |
0.085 |
| Any Religious Affiliation |
|
|
|
| yes |
— |
— |
|
| no |
0.96 |
0.88, 1.04 |
0.3 |
| unknown |
0.64 |
0.52, 0.77 |
<0.001 |
| Race |
|
|
|
| WHITE OR CAUCASIAN |
— |
— |
|
| BLACK OR AFRICAN AMERICAN |
0.85 |
0.72, 1.01 |
0.070 |
| ASIAN |
0.75 |
0.56, 1.00 |
0.058 |
| Other |
1.00 |
0.79, 1.27 |
>0.9 |
| AMERICAN INDIAN AND ALASKA NATIVE |
1.32 |
0.68, 2.50 |
0.4 |
| English Speaking |
|
|
|
| English |
— |
— |
|
| Other |
0.34 |
0.18, 0.61 |
<0.001 |
| unknown |
1.32 |
0.07, 9.33 |
0.8 |
| Age |
1.00 |
1.00, 1.00 |
0.7 |
| Gender |
|
|
|
| male |
— |
— |
|
| female |
1.85 |
1.70, 2.01 |
<0.001 |
| Ethnicity |
|
|
|
| NON-HISPANIC |
— |
— |
|
| Unknown |
0.80 |
0.61, 1.02 |
0.076 |
| HISPANIC |
1.17 |
0.85, 1.60 |
0.3 |
| Total SVI |
1.11 |
0.94, 1.31 |
0.2 |
Any Psych + RPL_THEMESx4
model4b <- glm(any_psych_dx_2 ~ mstat_5 + relig_affil + race_5 + lang_3 +
age_yrs + gender + ethnic_3 + RPL_THEME1 + RPL_THEME2 + RPL_THEME3 + RPL_THEME4,
family = "binomial",
data = mh_clean1)
summary(model4b)
Call:
glm(formula = any_psych_dx_2 ~ mstat_5 + relig_affil + race_5 +
lang_3 + age_yrs + gender + ethnic_3 + RPL_THEME1 + RPL_THEME2 +
RPL_THEME3 + RPL_THEME4, family = "binomial", data = mh_clean1)
Deviance Residuals:
Min 1Q Median 3Q Max
-1.3109 -0.9078 -0.7324 1.3737 2.1566
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -1.4122003 0.1055055 -13.385 < 2e-16
mstat_5div_sep 0.5857490 0.1151871 5.085 3.67e-07
mstat_5unmarried 0.1958290 0.0550988 3.554 0.000379
mstat_5unknown 0.1368241 0.0591056 2.315 0.020618
mstat_5widow 0.2299181 0.1463057 1.571 0.116069
relig_affilno -0.0367103 0.0447176 -0.821 0.411682
relig_affilunknown -0.4437477 0.1007450 -4.405 1.06e-05
race_5BLACK OR AFRICAN AMERICAN -0.2022384 0.0898995 -2.250 0.024474
race_5ASIAN -0.3630103 0.1525326 -2.380 0.017318
race_5Other -0.0188399 0.1205518 -0.156 0.875812
race_5AMERICAN INDIAN AND ALASKA NATIVE 0.3169054 0.3348116 0.947 0.343884
lang_3Other -1.1303926 0.3166350 -3.570 0.000357
lang_3unknown 0.2333023 1.1401234 0.205 0.837862
age_yrs 0.0009994 0.0013373 0.747 0.454873
genderfemale 0.6182865 0.0428196 14.439 < 2e-16
ethnic_3Unknown -0.2236926 0.1296669 -1.725 0.084504
ethnic_3HISPANIC 0.1647553 0.1608399 1.024 0.305673
RPL_THEME1 0.1438166 0.1200558 1.198 0.230951
RPL_THEME2 -0.1622048 0.1039931 -1.560 0.118815
RPL_THEME3 0.2323483 0.0772785 3.007 0.002642
RPL_THEME4 0.0613382 0.0881746 0.696 0.486651
(Intercept) ***
mstat_5div_sep ***
mstat_5unmarried ***
mstat_5unknown *
mstat_5widow
relig_affilno
relig_affilunknown ***
race_5BLACK OR AFRICAN AMERICAN *
race_5ASIAN *
race_5Other
race_5AMERICAN INDIAN AND ALASKA NATIVE
lang_3Other ***
lang_3unknown
age_yrs
genderfemale ***
ethnic_3Unknown .
ethnic_3HISPANIC
RPL_THEME1
RPL_THEME2
RPL_THEME3 **
RPL_THEME4
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 13759 on 11239 degrees of freedom
Residual deviance: 13428 on 11219 degrees of freedom
(66 observations deleted due to missingness)
AIC: 13470
Number of Fisher Scoring iterations: 4
broom::glance(model4b)
broom::tidy(model4b, exponentiate = TRUE)
model_performance(model4b)
# Indices of model performance
AIC | BIC | Tjur's R2 | RMSE | Sigma | Log_loss | Score_log | Score_spherical | PCP
--------------------------------------------------------------------------------------------------
13470.010 | 13623.882 | 0.029 | 0.452 | 1.094 | 0.597 | -Inf | 8.939e-05 | 0.591
tbl_regression(model4b, label = list(age_yrs ~ "Age", gender~ "Gender", race_5 ~ "Race", ethnic_3 ~ "Ethnicity", lang_3 ~ "English Speaking", relig_affil ~ "Any Religious Affiliation", RPL_THEME1 ~ "Soceioeconomic Status", RPL_THEME2 ~ "Household Composition", RPL_THEME3 ~ "Minority Status and Language", RPL_THEME4 ~ "Housing and Transportation", mstat_5 ~ "Marital Status"), exponentiate = TRUE)
| Characteristic |
OR |
95% CI |
p-value |
| Marital Status |
|
|
|
| married |
— |
— |
|
| div_sep |
1.80 |
1.43, 2.25 |
<0.001 |
| unmarried |
1.22 |
1.09, 1.36 |
<0.001 |
| unknown |
1.15 |
1.02, 1.29 |
0.021 |
| widow |
1.26 |
0.94, 1.67 |
0.12 |
| Any Religious Affiliation |
|
|
|
| yes |
— |
— |
|
| no |
0.96 |
0.88, 1.05 |
0.4 |
| unknown |
0.64 |
0.53, 0.78 |
<0.001 |
| Race |
|
|
|
| WHITE OR CAUCASIAN |
— |
— |
|
| BLACK OR AFRICAN AMERICAN |
0.82 |
0.68, 0.97 |
0.024 |
| ASIAN |
0.70 |
0.51, 0.93 |
0.017 |
| Other |
0.98 |
0.77, 1.24 |
0.9 |
| AMERICAN INDIAN AND ALASKA NATIVE |
1.37 |
0.70, 2.63 |
0.3 |
| English Speaking |
|
|
|
| English |
— |
— |
|
| Other |
0.32 |
0.17, 0.58 |
<0.001 |
| unknown |
1.26 |
0.06, 8.98 |
0.8 |
| Age |
1.00 |
1.00, 1.00 |
0.5 |
| Gender |
|
|
|
| male |
— |
— |
|
| female |
1.86 |
1.71, 2.02 |
<0.001 |
| Ethnicity |
|
|
|
| NON-HISPANIC |
— |
— |
|
| Unknown |
0.80 |
0.62, 1.03 |
0.085 |
| HISPANIC |
1.18 |
0.86, 1.61 |
0.3 |
| Soceioeconomic Status |
1.15 |
0.91, 1.46 |
0.2 |
| Household Composition |
0.85 |
0.69, 1.04 |
0.12 |
| Minority Status and Language |
1.26 |
1.08, 1.47 |
0.003 |
| Housing and Transportation |
1.06 |
0.89, 1.26 |
0.5 |
LS0tCnRpdGxlOiAiUHJlbGltIE1lbnRhbCBIZWFsdGggTW9kZWxzIgpvdXRwdXQ6IAogIGh0bWxfbm90ZWJvb2s6CiAgIHRoZW1lczogcGFwZXIKICAgdG9jOiB5ZXMKICAgdG9jX2Zsb2F0OiB5ZXMKZWRpdG9yX29wdGlvbnM6IAogIGNodW5rX291dHB1dF90eXBlOiBpbmxpbmUKLS0tCgojIExvYWQgUGFja2FnZXMgey50YWJzZXR9CgojIyB0aWR5dmVyc2UKCmBgYHtyfQppZiAoIXJlcXVpcmUodGlkeXZlcnNlKSl7CiAgaW5zdGFsbC5wYWNrYWdlcygidGlkeXZlcnNlIiwgZGVwZW5kZW5jaWVzID0gVFJVRSkKICBsaWJyYXJ5KHRpZHl2ZXJzZSkKfQpgYGAKCiMjIGNvZGVib29rcgpgYGB7cn0KaWYgKCFyZXF1aXJlKGNvZGVib29rcikpewogIGluc3RhbGwucGFja2FnZXMoImNvZGVib29rciIsIGRlcGVuZGVuY2llcyA9IFRSVUUpCiAgbGlicmFyeShjb2RlYm9va3IpCn0KYGBgCgojIyBzdW1tYXJ5dG9vbHMKYGBge3J9CmlmICghcmVxdWlyZShzdW1tYXJ5dG9vbHMpKXsKICBpbnN0YWxsLnBhY2thZ2VzKCJzdW1tYXJ5dG9vbHMiLCBkZXBlbmRlbmNpZXMgPSBUUlVFKQogIGxpYnJhcnkoc3VtbWFyeXRvb2xzKQp9CmBgYAoKIyMgYnJvb20gCmBgYHtyfQppZiAoIXJlcXVpcmUoYnJvb20pKXsKICBpbnN0YWxsLnBhY2thZ2VzKCJicm9vbSIsIGRlcGVuZGVuY2llcyA9IFRSVUUpCiAgbGlicmFyeShicm9vbSkKfQpgYGAKCiMjIHBlcmZvcm1hbmNlCmBgYHtyfQppZiAoIXJlcXVpcmUocGVyZm9ybWFuY2UpKXsKICBpbnN0YWxsLnBhY2thZ2VzKCJwZXJmb3JtYW5jZSIsIGRlcGVuZGVuY2llcyA9IFRSVUUpCiAgbGlicmFyeShwZXJmb3JtYW5jZSkKfQpgYGAKCiMjIGd0c3VtbWFyeQpgYGB7cn0KaWYgKCFyZXF1aXJlKGd0c3VtbWFyeSkpewogIGluc3RhbGwucGFja2FnZXMoImd0c3VtbWFyeSIsIGRlcGVuZGVuY2llcyA9IFRSVUUpCiAgbGlicmFyeShndHN1bW1hcnkpCn0KYGBgCgojIyBqYW5pdG9yCmBgYHtyfQppZiAoIXJlcXVpcmUoamFuaXRvcikpewogIGluc3RhbGwucGFja2FnZXMoImphbml0b3IiLCBkZXBlbmRlbmNpZXMgPSBUUlVFKQogIGxpYnJhcnkoamFuaXRvcikKfQpgYGAKCiMjIGZvcmNhdHMKYGBge3J9CmlmICghcmVxdWlyZShmb3JjYXRzKSl7CiAgaW5zdGFsbC5wYWNrYWdlcygiZm9yY2F0cyIsIGRlcGVuZGVuY2llcyA9IFRSVUUpCiAgbGlicmFyeShmb3JjYXRzKQp9CmBgYAoKIyBJbXBvcnQgRGF0YQpgYGB7cn0KbWhfZGVpZHYyIDwtIHJlYWQuY3N2KCJ+L0Rlc2t0b3AvUi1Db2RlL21oX2RlaWR2Mi5jc3YiKQpgYGAKCiMgRGF0YSBDbGVhbmluZyB7LnRhYnNldH0KCiMjIFJQTF9USEVNRVMgZXJyb25lb3VzIHZhbHVlcyAKYGBge3J9Cm1oX2RlaWR2MiAlPiUKICBzZWxlY3QoYWdlX3lycywgUEFUSUVOVF9HRU5ERVJfQ0QsIFBBVElFTlRfUkFDRV9ERVNDLCBQQVRJRU5UX0VUSE5JQ19HUk9VUF9ERVNDLCBQQVRJRU5UX0xBTkdVQUdFX0RFU0MsIFBBVElFTlRfUkVMSUdJT05fREVTQywgUEFUSUVOVF9NQVJJVEFMX1NUQVRVU19ERVNDLCBQQVRJRU5UX1NUQVRFX0NELCBFRFVfWUVBUlMsIFRPQkFDQ09fREVTQywgZGVwcmVzc2lvbiwgYW54aWV0eSwgcHRzZCwgYmlwb2xhciwgYm9keV9pbWFnZSwgb2NkLCBzdHJlc3MsIHNlYXNvbmFsQUQsIHBhbmljLCBhbnlfcHN5Y2hfZHgsU1RfQUJCUiwgRV9UT1RQT1AsIFJQTF9USEVNRVMsIFJQTF9USEVNRTEsIFJQTF9USEVNRTIsIFJQTF9USEVNRTMsIFJQTF9USEVNRTQpIC0+IGV4YW1wbGVkZjEKZXhhbXBsZWRmMSAlPiUKbXV0YXRlKFJQTF9USEVNRVMgPSBuYV9pZihSUExfVEhFTUVTLCAiLTk5OSIpKSAlPiUKbXV0YXRlKFJQTF9USEVNRVMgPSBuYV9pZihSUExfVEhFTUVTLCAiMCIpKSAlPiUKbXV0YXRlKFJQTF9USEVNRTEgPSBuYV9pZihSUExfVEhFTUUxLCAiLTk5OSIpKSAlPiUKbXV0YXRlKFJQTF9USEVNRTEgPSBuYV9pZihSUExfVEhFTUUxLCAiMCIpKSAlPiUKbXV0YXRlKFJQTF9USEVNRTIgPSBuYV9pZihSUExfVEhFTUUyLCAiLTk5OSIpKSAlPiUKbXV0YXRlKFJQTF9USEVNRTIgPSBuYV9pZihSUExfVEhFTUUyLCAiMCIpKSAlPiUKbXV0YXRlKFJQTF9USEVNRTMgPSBuYV9pZihSUExfVEhFTUUzLCAiLTk5OSIpKSAlPiUKbXV0YXRlKFJQTF9USEVNRTMgPSBuYV9pZihSUExfVEhFTUUzLCAiMCIpKSAlPiUKbXV0YXRlKFJQTF9USEVNRTQgPSBuYV9pZihSUExfVEhFTUU0LCAiLTk5OSIpKSAlPiUKbXV0YXRlKFJQTF9USEVNRTQgPSBuYV9pZihSUExfVEhFTUU0LCAiMCIpKSAtPiBleGFtcGxlZGYxTkEKCmBgYAoKIyMgTWVudGFsIEhlYWx0aCBEaWNoCmBgYHtyfQpleGFtcGxlZGYxTkEgJT4lIG11dGF0ZShhY3Jvc3MoZGVwcmVzc2lvbjphbnlfcHN5Y2hfZHgsIH5pZl9lbHNlKC54PjAuNSwgMSwgMCksCiAgICAgICAgICAgICAgICAubmFtZXMgPSAie2NvbH1fMiIpKSAtPiBleGFtcGxlZGYxTkFEaTIKYGBgCgojIyBNYXJpdGFsIFN0YXR1cyAKYGBge3J9CmV4YW1wbGVkZjFOQURpMiAlPiUgCm11dGF0ZShtc3RhdF81ID0gYXNfZmFjdG9yKFBBVElFTlRfTUFSSVRBTF9TVEFUVVNfREVTQyksCiAgICAgICAgIG1zdGF0XzUgPSBmY3RfcmVjb2RlKG1zdGF0XzUsIGRpdl9zZXAgPSAiRElWT1JDRUQiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaXZfc2VwID0gIkxFR0FMTFkgU0VQQVJBVEVEIiwgd2lkb3cgPSAiV0lET1dFRCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG1hcnJpZWQgPSAiTUFSUklFRCIsIHVubWFycmllZCA9ICJTSU5HTEUiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1bmtub3duID0gIlVOS05PV04iLCB1bmtub3duID0gIk9USEVSIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdW5tYXJyaWVkID0gIlNJR05JRklDQU5UIE9USEVSIiksCiAgICAgICAgIG1zdGF0XzUgPSBmY3RfcmVsZXZlbChtc3RhdF81LCByZWYgPSAnbWFycmllZCcpKSAtPiBleGFtcGxlZGYxTkFEaTJNQQpgYGAKCiMjIFJlbGlnaW9uIApgYGB7cn0KZXhhbXBsZWRmMU5BRGkyTUEgJT4lIAogIG11dGF0ZShyZWxpZ19hZmZpbCA9IGFzX2ZhY3RvcihQQVRJRU5UX1JFTElHSU9OX0RFU0MpLAogICAgICAgICAgcmVsaWdfYWZmaWwgPSBmY3RfcmVjb2RlKHJlbGlnX2FmZmlsLCB5ZXMgPSAiQ0FUSE9MSUMiLAogICAgICAgICAgICAgICAgICAgICAgbm8gPSAiTk9ORSIsIHVua25vd24gPSAiVU5LTk9XTiIsIHVua25vd24gPSAiUEFUSUVOVCBSRUZVU0VEIiwgCiAgICAgICAgICAgICAgICAgICAgICB5ZXMgPSAiQ0hSSVNUSUFOIiwgeWVzID0gIkxVVEhFUkFOIiwKICAgICAgICAgICAgICAgICAgICAgIHllcyA9ICJQUk9URVNUQU5UIiwgeWVzID0gIkJBUFRJU1QiLAogICAgICAgICAgICAgICAgICAgICAgeWVzID0gIk1FVEhPRElTVCIsIHllcyA9ICJQUkVTQllURVJJQU4iLAogICAgICAgICAgICAgICAgICAgICAgeWVzID0gIk5PTi1ERU5PTUlOQVRJT05BTCIsIHllcyA9ICJKRVdJU0giLAogICAgICAgICAgICAgICAgICAgICAgeWVzID0gIk1VU0xJTSIsIHllcyA9ICJPVEhFUiIsCiAgICAgICAgICAgICAgICAgICAgICB5ZXMgPSAiRVBJU0NPUEFMSUFOIiwgeWVzID0gIlBFTlRFQ09TVEFMIiwKICAgICAgICAgICAgICAgICAgICAgIG5vID0gIkFHTk9TVElDIiwgbm8gPSAiQVRIRUlTVCIsCiAgICAgICAgICAgICAgICAgICAgICB5ZXMgPSAiSkVIT1ZBSCdTIFdJVE5FU1MiLCB5ZXMgPSAiSElORFUiLAogICAgICAgICAgICAgICAgICAgICAgeWVzID0gIkdSRUVLIE9SVEhPRE9YIiwgeWVzID0gIkNIVVJDSCBPRiBKRVNVUyBDSFJJU1QgT0YgTEFUVEVSLURBWSBTQUlOVFMiLCB5ZXMgPSAiQkFIQUkiLCBubyA9ICJTUElSSVRVQUwiLCB5ZXMgPSAiQ0hVUkNIIE9GIENIUklTVCIsCiAgICAgICAgIHllcyA9ICJTRVZFTlRIIERBWSBBRFZFTlRJU1QiLCB5ZXMgPSAiQVBPU1RPTElDIiwgeWVzID0gIkJVRERISVNUIiwgeWVzID0gIk5BWkFSRU5FIiwgeWVzID0gIkNPTkdSRUdBVElPTkFMIiwgeWVzID0gIlVOSVRFRCBDSFVSQ0ggT0YgQ0hSIiwgeWVzID0gIlJFRk9STUVEIiwgeWVzID0gIlBBR0FOIiwgeWVzID0gIkpBSU4iLCB5ZXMgPSAiQVNTRU1CTFkgT0YgR09EIiwgeWVzID0gIlJFT1JHIENIUiBPRiBMQVQgREFZIiwgeWVzID0gIlFVQUtFUiIsIHllcyA9ICJVTklUQVJJQU4gVU5JVkVSU0FMSVNUIiwgeWVzID0gIk1FTk5PTklURSIsIHllcyA9ICJGUkVFIE1FVEhPRElTVCIsIHllcyA9ICJOQVRJVkUgQU1FUiBTUElSSVRMIiwgeWVzID0gIldJQ0NBTiIsIHllcyA9ICJPUlRIT0RPWCIsIHllcyA9ICJTQUxWQVRJT04gQVJNWSIsIHllcyA9ICJESVNDSVBMRVMgT0YgQ0hSSVNUIiwgeWVzID0gIkFGUklDQU4gTUVUSE9ESVNUIEVQIiwgeWVzID0gIlNJS0giLCB5ZXMgPSAiQ0hVUkNIIE9GIEdPRCIsIHllcyA9ICJUQU9JU1QiLCB5ZXMgPSAiQU5HTElDQU4iKSwKICAgICAgICAgcmVsaWdfYWZmaWwgPSBmY3RfcmVsZXZlbChyZWxpZ19hZmZpbCwgcmVmID0gJ3llcycpKSAtPiBleGFtcGxlZGYxTkFEaTJNQVJlbApgYGAKCiMjIFJhY2UKYGBge3J9CmV4YW1wbGVkZjFOQURpMk1BUmVsICU+JSAKbXV0YXRlKHJhY2VfNSA9IGFzX2ZhY3RvcihQQVRJRU5UX1JBQ0VfREVTQyksCiAgICAgICAgIHJhY2VfNSA9IGZjdF9yZWNvZGUocmFjZV81LCBPdGhlciA9ICJPVEhFUiIsCiAgICAgICAgICAgICAgICAgIE90aGVyID0gIlVOS05PV04iLCBPdGhlciA9ICJDSE9PU0UgTk9UIFRPIERJU0NMT1NFIiwKICAgICAgICAgICAgICAgICAgT3RoZXIgPSAiTkFUSVZFIEhBV0FJSUFOIEFORCBPVEhFUiBQQUNJRklDIElTTEFOREVSIiwgCiAgICAgICAgICAgICAgICAgIE90aGVyID0gIk1JRERMRSBFQVNURVJOL05PUlRIIEFGUklDQU4iLAogICAgICAgICAgICAgICAgQVNJQU4gPSAiQVNJQU4gSU5ESUFOIiwgQVNJQU4gPSAiT1RIRVIgQVNJQU4iLAogICAgICAgICAgICAgICAgQVNJQU4gPSAiSkFQQU5FU0UiLCBBU0lBTiA9ICJLT1JFQU4iLCBBU0lBTiA9ICJGSUxJUElOTyIsCiAgICAgICAgICAgICAgICBBU0lBTiA9ICJDSElORVNFIiksCiAgICAgICAgIHJhY2VfNSA9IGZjdF9yZWxldmVsKHJhY2VfNSwgcmVmID0gJ1dISVRFIE9SIENBVUNBU0lBTicpKSAtPiBleGFtcGxlZGYxTkFEaTJNQVJlbFJhCmBgYAoKIyMgR2VuZGVyCmBgYHtyfQpleGFtcGxlZGYxTkFEaTJNQVJlbFJhICU+JSAKbXV0YXRlKGdlbmRlciA9IGFzX2ZhY3RvcihQQVRJRU5UX0dFTkRFUl9DRCksCiAgICAgICAgIGdlbmRlciA9IGZjdF9yZWNvZGUoZ2VuZGVyLCBtYWxlID0gIk0iLCBmZW1hbGUgPSAiRiIpLAogICAgICAgICBnZW5kZXIgPSBmY3RfcmVsZXZlbChnZW5kZXIsIHJlZiA9ICJtYWxlIikpIC0+IGV4YW1wbGVkZjFOQURpMk1BUmVsUmFHCmBgYAoKIyMgTGFuZ3VhZ2UgCmBgYHtyfQpleGFtcGxlZGYxTkFEaTJNQVJlbFJhRyAlPiUgCiAgbXV0YXRlKGxhbmdfMyA9IGFzX2ZhY3RvcihQQVRJRU5UX0xBTkdVQUdFX0RFU0MpLApsYW5nXzMgPSBmY3RfcmVjb2RlKGxhbmdfMywgRW5nbGlzaCA9ICJFTkdMSVNIIiwKT3RoZXIgPSAiQVJBQklDIiwgT3RoZXIgPSAiSkFQQU5FU0UiLApPdGhlciA9ICJDSElORVNFLCBNQU5EQVJJTiIsCk90aGVyID0gIktPUkVBTiIsIE90aGVyID0gIlNJR04gTEFOR1VBR0UiLApPdGhlciA9ICJSVVNTSUFOIiwgT3RoZXIgPSAiU1BBTklTSCIsIE90aGVyID0gIkFSTUVOSUFOIiwKT3RoZXIgPSAiVFVSS0lTSCIsIE90aGVyID0gIkhJTkRJIiwgT3RoZXIgPSAiQkVOR0FMSSIsIE90aGVyID0gIkZBUlNJOyBQRVJTSUFOIiwgT3RoZXIgPSAiQUxCQU5JQU4iLCBPdGhlciA9ICJITU9ORyIsIE90aGVyID0gIlJPTUFOSUFOIiwgCk90aGVyID0gIlBVTkpBQkkiLCBPdGhlciA9ICJDUk9BVElBTiIsIE90aGVyID0gIkNIQUxERUFOIiwgCk90aGVyID0gIkJVUk1FU0UiLCBPdGhlciA9ICJQT1JUVUdVRVNFIiwgdW5rbm93biA9ICJVTktOT1dOIiksCmxhbmdfMyA9IGZjdF9yZWxldmVsKGxhbmdfMywgcmVmID0gJ0VuZ2xpc2gnKSkgLT4gZXhhbXBsZWRmMU5BRGkyTUFSZWxSYUdMCgpgYGAKCiMjIEV0aG5pY2l0eSAKYGBge3J9CmV4YW1wbGVkZjFOQURpMk1BUmVsUmFHTCAlPiUgCiAgbXV0YXRlKGV0aG5pY18zID0gYXNfZmFjdG9yKFBBVElFTlRfRVRITklDX0dST1VQX0RFU0MpLAogICAgICAgICBldGhuaWNfMyA9IGZjdF9yZWNvZGUoZXRobmljXzMsIFVua25vd24gPSAiQ0hPT1NFIE5PVCBUTyBESVNDTE9TRSIsIFVua25vd24gPSAiVU5LTk9XTiIpKSAtPiBleGFtcGxlZGYxTkFEaTJNQVJlbFJhR0xFdGgKYGBgCgoKIyBDb2RlYm9vayAKYGBge3J9CmV4YW1wbGVkZjFOQURpMk1BUmVsUmFHTEV0aCAlPiUgCnNlbGVjdChhZ2VfeXJzLCBnZW5kZXIsIHJhY2VfNSwgZXRobmljXzMsIGxhbmdfMywgcmVsaWdfYWZmaWwsIG1zdGF0XzUsIFBBVElFTlRfU1RBVEVfQ0QsIEVEVV9ZRUFSUywgVE9CQUNDT19ERVNDLCBkZXByZXNzaW9uXzIsIGFueGlldHlfMiwgcHRzZF8yLCBiaXBvbGFyXzIsIGJvZHlfaW1hZ2VfMiwgb2NkXzIsIHNlYXNvbmFsQURfMiwgcGFuaWNfMiwgYW55X3BzeWNoX2R4XzIsIEVfVE9UUE9QLCBSUExfVEhFTUVTLCBSUExfVEhFTUUxLCBSUExfVEhFTUUyLCBSUExfVEhFTUUzLCBSUExfVEhFTUU0KSAtPiBtaF9jbGVhbjEKcHJpbnQoZGZTdW1tYXJ5KG1oX2NsZWFuMSksIG1ldGhvZCA9ICdyZW5kZXInKSAKYGBgCgojIFBhdGllbnQgQ2hhcmFjdGVyaXN0aWNzIHsudGFic2V0fQoKIyMgQmFzZWxpbmUgQ2hhcmFjdGVyaXN0aWNzIApgYGB7cn0KbWhfY2xlYW4xICU+JSAKICBzZWxlY3QoYWdlX3lycywgZ2VuZGVyLCByYWNlXzUsIGV0aG5pY18zLCBsYW5nXzMsIHJlbGlnX2FmZmlsLCBtc3RhdF81LCBkZXByZXNzaW9uXzIsIGFueGlldHlfMiwgcHRzZF8yLCBhbnlfcHN5Y2hfZHhfMiwgUlBMX1RIRU1FUywgUlBMX1RIRU1FMSwgUlBMX1RIRU1FMiwgUlBMX1RIRU1FMywgUlBMX1RIRU1FNCkgLT4gYmFzZWxpbmUKYmFzZWxpbmUgJT4lIHRibF9zdW1tYXJ5KGxhYmVsID0gbGlzdChhZ2VfeXJzIH4gIkFnZSIsIGdlbmRlcn4gIkdlbmRlciIsIHJhY2VfNSB+ICJSYWNlIiwgZXRobmljXzMgfiAiRXRobmljaXR5IiwgbGFuZ18zIH4gIkVuZ2xpc2ggU3BlYWtpbmciLCByZWxpZ19hZmZpbCB+ICJBbnkgUmVsaWdpb3VzIEFmZmlsaWF0aW9uIiwgbXN0YXRfNSB+ICJNYXJpdGFsIFN0YXR1cyIsIGRlcHJlc3Npb25fMiB+ICJEZXByZXNzaW9uIiwgYW54aWV0eV8yIH4gIkFueGlldHkiLCBwdHNkXzIgfiAiUFRTRCIsIGFueV9wc3ljaF9keF8yIH4gIkFueSBQc3ljaGlhdHJpYyBEaWFnbm9zaXMiLCBSUExfVEhFTUVTIH4gIlRvdGFsIFNWSSIsIFJQTF9USEVNRTEgfiAiU29jZWlvZWNvbm9taWMgU3RhdHVzIiwgUlBMX1RIRU1FMiB+ICJIb3VzZWhvbGQgQ29tcG9zaXRpb24iLCBSUExfVEhFTUUzIH4gIk1pbm9yaXR5IFN0YXR1cyBhbmQgTGFuZ3VhZ2UiLCBSUExfVEhFTUU0IH4gIkhvdXNpbmcgYW5kIFRyYW5zcG9ydGF0aW9uIiksCiAgICAgICAgc3RhdGlzdGljID0gbGlzdChhbGxfY29udGludW91cygpIH4gInttZWFufSAoe3NkfSkiKSwKICAgICAgICBtaXNzaW5nX3RleHQgPSAiKE1pc3NpbmcpIikKYGBgCgoKIyMgQmFzZWxpbmUgQ2hhcmFjdGVyaXN0aWNzIGJ5IERlcHJlc3Npb24gCmBgYHtyfQpiYXNlbGluZSAlPiUgdGJsX3N1bW1hcnkoYnkgPSBkZXByZXNzaW9uXzIsCiAgICAgICAgIHN0YXRpc3RpYyA9IGxpc3QoYWxsX2NvbnRpbnVvdXMoKSB+ICJ7bWVhbn0gKHtzZH0pIiksCiAgICAgICAgbGFiZWwgPSBsaXN0KGFnZV95cnMgfiAiQWdlIiwgZ2VuZGVyfiAiR2VuZGVyIiwgcmFjZV81IH4gIlJhY2UiLCBldGhuaWNfMyB+ICJFdGhuaWNpdHkiLCBsYW5nXzMgfiAiRW5nbGlzaCBTcGVha2luZyIsIHJlbGlnX2FmZmlsIH4gIkFueSBSZWxpZ2lvdXMgQWZmaWxpYXRpb24iLCBtc3RhdF81IH4gIk1hcml0YWwgU3RhdHVzIiwgYW54aWV0eV8yIH4gIkFueGlldHkiLCBwdHNkXzIgfiAiUFRTRCIsIGFueV9wc3ljaF9keF8yIH4gIkFueSBQc3ljaGlhdHJpYyBEaWFnbm9zaXMiLCBSUExfVEhFTUVTIH4gIlRvdGFsIFNWSSIsIFJQTF9USEVNRTEgfiAiU29jZWlvZWNvbm9taWMgU3RhdHVzIiwgUlBMX1RIRU1FMiB+ICJIb3VzZWhvbGQgQ29tcG9zaXRpb24iLCBSUExfVEhFTUUzIH4gIk1pbm9yaXR5IFN0YXR1cyBhbmQgTGFuZ3VhZ2UiLCBSUExfVEhFTUU0IH4gIkhvdXNpbmcgYW5kIFRyYW5zcG9ydGF0aW9uIiksCiAgICAgICAgbWlzc2luZ190ZXh0ID0gIihNaXNzaW5nKSIKICAgICAgICApICU+JSBhZGRfcCgpCgoKYGBgCgojIyBCYXNlbGluZSBDaGFyYWN0ZXJpc3RpY3MgQnkgQW54aWV0eQpgYGB7cn0KYmFzZWxpbmUgJT4lIHRibF9zdW1tYXJ5KGJ5ID0gYW54aWV0eV8yLAogICAgICAgc3RhdGlzdGljID0gbGlzdChhbGxfY29udGludW91cygpIH4gInttZWFufSAoe3NkfSkiKSwKICAgICAgICBsYWJlbCA9IGxpc3QoYWdlX3lycyB+ICJBZ2UiLCBnZW5kZXJ+ICJHZW5kZXIiLCByYWNlXzUgfiAiUmFjZSIsIGV0aG5pY18zIH4gIkV0aG5pY2l0eSIsIGxhbmdfMyB+ICJFbmdsaXNoIFNwZWFraW5nIiwgcmVsaWdfYWZmaWwgfiAiQW55IFJlbGlnaW91cyBBZmZpbGlhdGlvbiIsIG1zdGF0XzUgfiAiTWFyaXRhbCBTdGF0dXMiLCBkZXByZXNzaW9uXzIgfiAiRGVwcmVzc2lvbiIsIHB0c2RfMiB+ICJQVFNEIiwgYW55X3BzeWNoX2R4XzIgfiAiQW55IFBzeWNoaWF0cmljIERpYWdub3NpcyIsIFJQTF9USEVNRVMgfiAiVG90YWwgU1ZJIiwgUlBMX1RIRU1FMSB+ICJTb2NlaW9lY29ub21pYyBTdGF0dXMiLCBSUExfVEhFTUUyIH4gIkhvdXNlaG9sZCBDb21wb3NpdGlvbiIsIFJQTF9USEVNRTMgfiAiTWlub3JpdHkgU3RhdHVzIGFuZCBMYW5ndWFnZSIsIFJQTF9USEVNRTQgfiAiSG91c2luZyBhbmQgVHJhbnNwb3J0YXRpb24iKSwKICAgICAgICBtaXNzaW5nX3RleHQgPSAiKE1pc3NpbmcpIgogICAgICAgICkgJT4lIGFkZF9wKCkKYGBgCgojIyBCYXNlbGluZSBDaGFyYWN0ZXJpc3RpY3MgYnkgQW55IFBzeWNoIER4IApgYGB7cn0KYmFzZWxpbmUgJT4lIHRibF9zdW1tYXJ5KGJ5ID0gYW55X3BzeWNoX2R4XzIsCiAgICAgICBzdGF0aXN0aWMgPSBsaXN0KGFsbF9jb250aW51b3VzKCkgfiAie21lYW59ICh7c2R9KSIpLAogICAgICAgIGxhYmVsID0gbGlzdChhZ2VfeXJzIH4gIkFnZSIsIGdlbmRlcn4gIkdlbmRlciIsIHJhY2VfNSB+ICJSYWNlIiwgZXRobmljXzMgfiAiRXRobmljaXR5IiwgbGFuZ18zIH4gIkVuZ2xpc2ggU3BlYWtpbmciLCByZWxpZ19hZmZpbCB+ICJBbnkgUmVsaWdpb3VzIEFmZmlsaWF0aW9uIiwgbXN0YXRfNSB+ICJNYXJpdGFsIFN0YXR1cyIsIGRlcHJlc3Npb25fMiB+ICJEZXByZXNzaW9uIiwgcHRzZF8yIH4gIlBUU0QiLCBhbnhpZXR5XzIgfiAiQW54aWV0eSIsIFJQTF9USEVNRVMgfiAiVG90YWwgU1ZJIiwgUlBMX1RIRU1FMSB+ICJTb2NlaW9lY29ub21pYyBTdGF0dXMiLCBSUExfVEhFTUUyIH4gIkhvdXNlaG9sZCBDb21wb3NpdGlvbiIsIFJQTF9USEVNRTMgfiAiTWlub3JpdHkgU3RhdHVzIGFuZCBMYW5ndWFnZSIsIFJQTF9USEVNRTQgfiAiSG91c2luZyBhbmQgVHJhbnNwb3J0YXRpb24iKSwKICAgICAgICBtaXNzaW5nX3RleHQgPSAiKE1pc3NpbmcpIgogICAgICAgICkgJT4lIGFkZF9wKCkKYGBgCgoKIyBQcmVsaW0gTW9kZWxzIHsudGFic2V0fQoKIyMgRGVwcmVzc2lvbiArIFJQTF9USEVNRVMKYGBge3J9IAoKbW9kZWwxYSA8LSBnbG0oZGVwcmVzc2lvbl8yIH4gbXN0YXRfNSArIHJlbGlnX2FmZmlsICsgcmFjZV81ICsgbGFuZ18zICsgYWdlX3lycwogICAgICAgICAgICAgICArIGdlbmRlciArIGV0aG5pY18zICsgUlBMX1RIRU1FUywKICAgICAgICAgICAgICBmYW1pbHkgPSAiYmlub21pYWwiLAogICAgICAgICAgICAgIGRhdGEgPSBtaF9jbGVhbjEpCnN1bW1hcnkobW9kZWwxYSkKYnJvb206OmdsYW5jZShtb2RlbDFhKQpicm9vbTo6dGlkeShtb2RlbDFhLCBleHBvbmVudGlhdGUgPSBUUlVFKQptb2RlbF9wZXJmb3JtYW5jZShtb2RlbDFhKQp0YmxfcmVncmVzc2lvbihtb2RlbDFhLCBsYWJlbCA9IGxpc3QoYWdlX3lycyB+ICJBZ2UiLCBnZW5kZXJ+ICJHZW5kZXIiLCByYWNlXzUgfiAiUmFjZSIsIGV0aG5pY18zIH4gIkV0aG5pY2l0eSIsIGxhbmdfMyB+ICJFbmdsaXNoIFNwZWFraW5nIiwgcmVsaWdfYWZmaWwgfiAiQW55IFJlbGlnaW91cyBBZmZpbGlhdGlvbiIsIG1zdGF0XzUgfiAiTWFyaXRhbCBTdGF0dXMiLCBSUExfVEhFTUVTIH4gIlRvdGFsIFNWSSIpLCBleHBvbmVudGlhdGUgPSBUUlVFKQoKYGBgCgojIyBEZXByZXNzaW9uICsgUlBMX1RIRU1FU3g0IApgYGB7cn0KCm1vZGVsMWIgPC0gZ2xtKGRlcHJlc3Npb25fMiB+IG1zdGF0XzUgKyByZWxpZ19hZmZpbCArIHJhY2VfNSArIGxhbmdfMyArIGFnZV95cnMKICAgICAgICAgICAgICAgICsgZ2VuZGVyICsgZXRobmljXzMgKyBSUExfVEhFTUUxICsgUlBMX1RIRU1FMiArIFJQTF9USEVNRTMgKyBSUExfVEhFTUU0LAogICAgICAgICAgICAgIGZhbWlseSA9ICJiaW5vbWlhbCIsCiAgICAgICAgICAgICAgZGF0YSA9IG1oX2NsZWFuMSkKc3VtbWFyeShtb2RlbDFiKQpicm9vbTo6Z2xhbmNlKG1vZGVsMWIpCmJyb29tOjp0aWR5KG1vZGVsMWIsIGV4cG9uZW50aWF0ZSA9IFRSVUUpCm1vZGVsX3BlcmZvcm1hbmNlKG1vZGVsMWIpCnRibF9yZWdyZXNzaW9uKG1vZGVsMWIsIGxhYmVsID0gbGlzdChhZ2VfeXJzIH4gIkFnZSIsIGdlbmRlcn4gIkdlbmRlciIsIHJhY2VfNSB+ICJSYWNlIiwgZXRobmljXzMgfiAiRXRobmljaXR5IiwgbGFuZ18zIH4gIkVuZ2xpc2ggU3BlYWtpbmciLCByZWxpZ19hZmZpbCB+ICJBbnkgUmVsaWdpb3VzIEFmZmlsaWF0aW9uIiwgUlBMX1RIRU1FMSB+ICJTb2NlaW9lY29ub21pYyBTdGF0dXMiLCBSUExfVEhFTUUyIH4gIkhvdXNlaG9sZCBDb21wb3NpdGlvbiIsIFJQTF9USEVNRTMgfiAiTWlub3JpdHkgU3RhdHVzIGFuZCBMYW5ndWFnZSIsIFJQTF9USEVNRTQgfiAiSG91c2luZyBhbmQgVHJhbnNwb3J0YXRpb24iLCBtc3RhdF81IH4gIk1hcml0YWwgU3RhdHVzIiksIGV4cG9uZW50aWF0ZSA9IFRSVUUpCmBgYAoKIyMgQW54aWV0eSArIFJQTF9USEVNRVMKYGBge3J9Cm1vZGVsMmEgPC0gZ2xtKGFueGlldHlfMiB+IG1zdGF0XzUgKyByZWxpZ19hZmZpbCArIGxhbmdfMyArIGFnZV95cnMgKyByYWNlXzUKICAgICAgICAgICAgICAgKyBnZW5kZXIgKyBldGhuaWNfMyArIFJQTF9USEVNRVMsCiAgICAgICAgICAgICAgZmFtaWx5ID0gImJpbm9taWFsIiwKICAgICAgICAgICAgICBkYXRhID0gbWhfY2xlYW4xKQpzdW1tYXJ5KG1vZGVsMmEpCmJyb29tOjpnbGFuY2UobW9kZWwyYSkKYnJvb206OnRpZHkobW9kZWwyYSwgZXhwb25lbnRpYXRlID0gVFJVRSkKbW9kZWxfcGVyZm9ybWFuY2UobW9kZWwyYSkKdGJsX3JlZ3Jlc3Npb24obW9kZWwyYSwgbGFiZWwgPSBsaXN0KGFnZV95cnMgfiAiQWdlIiwgZ2VuZGVyfiAiR2VuZGVyIiwgcmFjZV81IH4gIlJhY2UiLCBldGhuaWNfMyB+ICJFdGhuaWNpdHkiLCBsYW5nXzMgfiAiRW5nbGlzaCBTcGVha2luZyIsIHJlbGlnX2FmZmlsIH4gIkFueSBSZWxpZ2lvdXMgQWZmaWxpYXRpb24iLCBtc3RhdF81IH4gIk1hcml0YWwgU3RhdHVzIiwgUlBMX1RIRU1FUyB+ICJUb3RhbCBTVkkiKSwgZXhwb25lbnRpYXRlID0gVFJVRSkKYGBgCiMjIEFueGlldHkgKyBSUExfVEhFTUVTeDQKYGBge3J9Cm1vZGVsMmIgPC0gZ2xtKGFueGlldHlfMiB+IG1zdGF0XzUgKyByZWxpZ19hZmZpbCArIHJhY2VfNSArIGxhbmdfMyArIGFnZV95cnMKICAgICAgICAgICAgICAgICsgZ2VuZGVyICsgZXRobmljXzMgKyBSUExfVEhFTUUxICsgUlBMX1RIRU1FMiArIFJQTF9USEVNRTMgKyBSUExfVEhFTUU0LAogICAgICAgICAgICAgIGZhbWlseSA9ICJiaW5vbWlhbCIsCiAgICAgICAgICAgICAgZGF0YSA9IG1oX2NsZWFuMSkKc3VtbWFyeShtb2RlbDJiKQpicm9vbTo6Z2xhbmNlKG1vZGVsMmIpCmJyb29tOjp0aWR5KG1vZGVsMmIsIGV4cG9uZW50aWF0ZSA9IFRSVUUpCm1vZGVsX3BlcmZvcm1hbmNlKG1vZGVsMmIpCnRibF9yZWdyZXNzaW9uKG1vZGVsMmIsIGxhYmVsID0gbGlzdChhZ2VfeXJzIH4gIkFnZSIsIGdlbmRlcn4gIkdlbmRlciIsIHJhY2VfNSB+ICJSYWNlIiwgZXRobmljXzMgfiAiRXRobmljaXR5IiwgbGFuZ18zIH4gIkVuZ2xpc2ggU3BlYWtpbmciLCByZWxpZ19hZmZpbCB+ICJBbnkgUmVsaWdpb3VzIEFmZmlsaWF0aW9uIiwgUlBMX1RIRU1FMSB+ICJTb2NlaW9lY29ub21pYyBTdGF0dXMiLCBSUExfVEhFTUUyIH4gIkhvdXNlaG9sZCBDb21wb3NpdGlvbiIsIFJQTF9USEVNRTMgfiAiTWlub3JpdHkgU3RhdHVzIGFuZCBMYW5ndWFnZSIsIFJQTF9USEVNRTQgfiAiSG91c2luZyBhbmQgVHJhbnNwb3J0YXRpb24iLCBtc3RhdF81IH4gIk1hcml0YWwgU3RhdHVzIiksIGV4cG9uZW50aWF0ZSA9IFRSVUUpCmBgYAojIyBQVFNEICsgUlBMX1RIRU1FUwpgYGB7cn0KbW9kZWwzYSA8LSBnbG0ocHRzZF8yIH4gbXN0YXRfNSArIHJlbGlnX2FmZmlsICsgcmFjZV81ICsgbGFuZ18zICsgYWdlX3lycwogICAgICAgICAgICAgICAgKyBnZW5kZXIgKyBldGhuaWNfMyArIFJQTF9USEVNRVMsCiAgICAgICAgICAgICAgZmFtaWx5ID0gImJpbm9taWFsIiwKICAgICAgICAgICAgICBkYXRhID0gbWhfY2xlYW4xKQpzdW1tYXJ5KG1vZGVsM2EpCmJyb29tOjpnbGFuY2UobW9kZWwzYSkKYnJvb206OnRpZHkobW9kZWwzYSwgZXhwb25lbnRpYXRlID0gVFJVRSkKbW9kZWxfcGVyZm9ybWFuY2UobW9kZWwzYSkKdGJsX3JlZ3Jlc3Npb24obW9kZWwzYSwgbGFiZWwgPSBsaXN0KGFnZV95cnMgfiAiQWdlIiwgZ2VuZGVyfiAiR2VuZGVyIiwgcmFjZV81IH4gIlJhY2UiLCBldGhuaWNfMyB+ICJFdGhuaWNpdHkiLCBsYW5nXzMgfiAiRW5nbGlzaCBTcGVha2luZyIsIHJlbGlnX2FmZmlsIH4gIkFueSBSZWxpZ2lvdXMgQWZmaWxpYXRpb24iLCBtc3RhdF81IH4gIk1hcml0YWwgU3RhdHVzIiwgUlBMX1RIRU1FUyB+ICJUb3RhbCBTVkkiKSwgZXhwb25lbnRpYXRlID0gVFJVRSkKYGBgCgoKIyMgUFRTRCArIFJQTF9USEVNRVN4NApgYGB7cn0KbW9kZWwzYiA8LSBnbG0ocHRzZF8yIH4gbXN0YXRfNSArIHJlbGlnX2FmZmlsICsgcmFjZV81ICsgbGFuZ18zICsgYWdlX3lycwogICAgICAgICAgICAgICAgKyBnZW5kZXIgKyBldGhuaWNfMyArIFJQTF9USEVNRTEgKyBSUExfVEhFTUUyICsgUlBMX1RIRU1FMyArIFJQTF9USEVNRTQsCiAgICAgICAgICAgICAgZmFtaWx5ID0gImJpbm9taWFsIiwKICAgICAgICAgICAgICBkYXRhID0gbWhfY2xlYW4xKQpzdW1tYXJ5KG1vZGVsM2IpCmJyb29tOjpnbGFuY2UobW9kZWwzYikKYnJvb206OnRpZHkobW9kZWwzYiwgZXhwb25lbnRpYXRlID0gVFJVRSkKbW9kZWxfcGVyZm9ybWFuY2UobW9kZWwzYikKdGJsX3JlZ3Jlc3Npb24obW9kZWwzYiwgbGFiZWwgPSBsaXN0KGFnZV95cnMgfiAiQWdlIiwgZ2VuZGVyfiAiR2VuZGVyIiwgcmFjZV81IH4gIlJhY2UiLCBldGhuaWNfMyB+ICJFdGhuaWNpdHkiLCBsYW5nXzMgfiAiRW5nbGlzaCBTcGVha2luZyIsIHJlbGlnX2FmZmlsIH4gIkFueSBSZWxpZ2lvdXMgQWZmaWxpYXRpb24iLCBSUExfVEhFTUUxIH4gIlNvY2Vpb2Vjb25vbWljIFN0YXR1cyIsIFJQTF9USEVNRTIgfiAiSG91c2Vob2xkIENvbXBvc2l0aW9uIiwgUlBMX1RIRU1FMyB+ICJNaW5vcml0eSBTdGF0dXMgYW5kIExhbmd1YWdlIiwgUlBMX1RIRU1FNCB+ICJIb3VzaW5nIGFuZCBUcmFuc3BvcnRhdGlvbiIsIG1zdGF0XzUgfiAiTWFyaXRhbCBTdGF0dXMiKSwgZXhwb25lbnRpYXRlID0gVFJVRSkKYGBgCgoKIyMgQW55IFBzeWNoICsgUlBMIFRIRU1FUyAKYGBge3J9Cm1vZGVsNGEgPC0gZ2xtKGFueV9wc3ljaF9keF8yIH4gbXN0YXRfNSArIHJlbGlnX2FmZmlsICsgcmFjZV81ICsgbGFuZ18zICsKICAgICAgICAgICAgICBhZ2VfeXJzICsgZ2VuZGVyICsgZXRobmljXzMgKyBSUExfVEhFTUVTLAogICAgICAgICAgICAgIGZhbWlseSA9ICJiaW5vbWlhbCIsCiAgICAgICAgICAgICAgZGF0YSA9IG1oX2NsZWFuMSkKc3VtbWFyeShtb2RlbDRhKQpicm9vbTo6Z2xhbmNlKG1vZGVsNGEpCmJyb29tOjp0aWR5KG1vZGVsNGEsIGV4cG9uZW50aWF0ZSA9IFRSVUUpCm1vZGVsX3BlcmZvcm1hbmNlKG1vZGVsNGEpCnRibF9yZWdyZXNzaW9uKG1vZGVsNGEsIGxhYmVsID0gbGlzdChhZ2VfeXJzIH4gIkFnZSIsIGdlbmRlcn4gIkdlbmRlciIsIHJhY2VfNSB+ICJSYWNlIiwgZXRobmljXzMgfiAiRXRobmljaXR5IiwgbGFuZ18zIH4gIkVuZ2xpc2ggU3BlYWtpbmciLCByZWxpZ19hZmZpbCB+ICJBbnkgUmVsaWdpb3VzIEFmZmlsaWF0aW9uIiwgbXN0YXRfNSB+ICJNYXJpdGFsIFN0YXR1cyIsIFJQTF9USEVNRVMgfiAiVG90YWwgU1ZJIiksIGV4cG9uZW50aWF0ZSA9IFRSVUUpCmBgYAoKIyMgQW55IFBzeWNoICsgUlBMX1RIRU1FU3g0CmBgYHtyfQptb2RlbDRiIDwtIGdsbShhbnlfcHN5Y2hfZHhfMiB+IG1zdGF0XzUgKyByZWxpZ19hZmZpbCArIHJhY2VfNSArIGxhbmdfMyArCiAgICAgICAgICAgICAgYWdlX3lycyArIGdlbmRlciArIGV0aG5pY18zICsgUlBMX1RIRU1FMSArIFJQTF9USEVNRTIgKyBSUExfVEhFTUUzICsgUlBMX1RIRU1FNCwKICAgICAgICAgICAgICBmYW1pbHkgPSAiYmlub21pYWwiLAogICAgICAgICAgICAgIGRhdGEgPSBtaF9jbGVhbjEpCnN1bW1hcnkobW9kZWw0YikKYnJvb206OmdsYW5jZShtb2RlbDRiKQpicm9vbTo6dGlkeShtb2RlbDRiLCBleHBvbmVudGlhdGUgPSBUUlVFKQptb2RlbF9wZXJmb3JtYW5jZShtb2RlbDRiKQp0YmxfcmVncmVzc2lvbihtb2RlbDRiLCBsYWJlbCA9IGxpc3QoYWdlX3lycyB+ICJBZ2UiLCBnZW5kZXJ+ICJHZW5kZXIiLCByYWNlXzUgfiAiUmFjZSIsIGV0aG5pY18zIH4gIkV0aG5pY2l0eSIsIGxhbmdfMyB+ICJFbmdsaXNoIFNwZWFraW5nIiwgcmVsaWdfYWZmaWwgfiAiQW55IFJlbGlnaW91cyBBZmZpbGlhdGlvbiIsIFJQTF9USEVNRTEgfiAiU29jZWlvZWNvbm9taWMgU3RhdHVzIiwgUlBMX1RIRU1FMiB+ICJIb3VzZWhvbGQgQ29tcG9zaXRpb24iLCBSUExfVEhFTUUzIH4gIk1pbm9yaXR5IFN0YXR1cyBhbmQgTGFuZ3VhZ2UiLCBSUExfVEhFTUU0IH4gIkhvdXNpbmcgYW5kIFRyYW5zcG9ydGF0aW9uIiwgbXN0YXRfNSB+ICJNYXJpdGFsIFN0YXR1cyIpLCBleHBvbmVudGlhdGUgPSBUUlVFKQpgYGAKCg==