Step 1 - Check for collinearity
brood.col <- lm(brood_cells~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = brood)
drop1(brood.col, test = "Chisq")
## Single term deletions
##
## Model:
## brood_cells ~ treatment + whole.mean + alive + duration + replicate +
## mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 2214.2 209.32
## treatment 4 222.5 2436.7 205.63 0.3657
## whole.mean 1 4144.5 6358.6 254.79 5.579e-12 ***
## alive 1 4.9 2219.0 207.42 0.7532
## duration 1 3.7 2217.9 207.39 0.7836
## replicate 5 69.9 2284.1 200.72 0.9244
## mean.dose 1 22.5 2236.7 207.77 0.4995
## qro 0 0.0 2214.2 209.32
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
b1 <- update(brood.col, .~. -qro)
vif(b1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 8.553798 4 1.307735
## whole.mean 3.449268 1 1.857220
## alive 2.500432 1 1.581275
## duration 1.688360 1 1.299369
## replicate 4.411960 8 1.097209
## mean.dose 6.951638 1 2.636596
b2 <- update(b1, .~. -mean.dose)
vif(b2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.416097 4 1.044448
## whole.mean 3.269164 1 1.808083
## alive 2.457681 1 1.567699
## duration 1.650178 1 1.284593
## replicate 4.033123 8 1.091070
b3 <- update(b2, .~. -replicate)
vif(b3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.240985 4 1.027356
## whole.mean 1.283871 1 1.133080
## alive 1.356444 1 1.164665
## duration 1.182338 1 1.087354
anova(b2, b3)
## Analysis of Variance Table
##
## Model 1: brood_cells ~ treatment + whole.mean + alive + duration + replicate
## Model 2: brood_cells ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 29 2236.7
## 2 37 2530.7 -8 -293.98 0.4765 0.8627
AIC(b2, b3)
## df AIC
## b2 17 337.4788
## b3 9 327.0358
brood.col <- lm(honey_pot~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = brood)
drop1(brood.col, test = "Chisq")
## Single term deletions
##
## Model:
## honey_pot ~ treatment + whole.mean + alive + duration + replicate +
## mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 278.31 115.99
## treatment 4 54.878 333.19 116.09 0.088029 .
## whole.mean 1 72.743 351.06 124.44 0.001227 **
## alive 1 3.503 281.82 114.56 0.453092
## duration 1 0.295 278.61 114.04 0.827199
## replicate 5 53.449 331.76 113.90 0.161535
## mean.dose 1 7.429 285.74 115.18 0.276262
## qro 0 0.000 278.31 115.99
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
b1 <- update(brood.col, .~. -qro)
vif(b1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 8.553798 4 1.307735
## whole.mean 3.449268 1 1.857220
## alive 2.500432 1 1.581275
## duration 1.688360 1 1.299369
## replicate 4.411960 8 1.097209
## mean.dose 6.951638 1 2.636596
b2 <- update(b1, .~. -mean.dose)
vif(b2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.416097 4 1.044448
## whole.mean 3.269164 1 1.808083
## alive 2.457681 1 1.567699
## duration 1.650178 1 1.284593
## replicate 4.033123 8 1.091070
b3 <- update(b2, .~. -replicate)
vif(b3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.240985 4 1.027356
## whole.mean 1.283871 1 1.133080
## alive 1.356444 1 1.164665
## duration 1.182338 1 1.087354
anova(b2, b3)
## Analysis of Variance Table
##
## Model 1: honey_pot ~ treatment + whole.mean + alive + duration + replicate
## Model 2: honey_pot ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 29 285.74
## 2 37 345.58 -8 -59.844 0.7592 0.6404
AIC(b2, b3)
## df AIC
## b2 17 244.8835
## b3 9 237.4403
brood.col <- lm(eggs~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = brood)
drop1(brood.col, test = "Chisq")
## Single term deletions
##
## Model:
## eggs ~ treatment + whole.mean + alive + duration + replicate +
## mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 5029.6 246.24
## treatment 4 605.19 5634.8 243.35 0.27591
## whole.mean 1 352.03 5381.6 247.28 0.08102 .
## alive 1 0.52 5030.1 244.24 0.94563
## duration 1 117.12 5146.7 245.28 0.30879
## replicate 5 248.55 5278.1 238.41 0.82507
## mean.dose 1 149.62 5179.2 245.56 0.25074
## qro 0 0.00 5029.6 246.24
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
b1 <- update(brood.col, .~. -qro)
vif(b1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 8.553798 4 1.307735
## whole.mean 3.449268 1 1.857220
## alive 2.500432 1 1.581275
## duration 1.688360 1 1.299369
## replicate 4.411960 8 1.097209
## mean.dose 6.951638 1 2.636596
b2 <- update(b1, .~. -mean.dose)
vif(b2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.416097 4 1.044448
## whole.mean 3.269164 1 1.808083
## alive 2.457681 1 1.567699
## duration 1.650178 1 1.284593
## replicate 4.033123 8 1.091070
b3 <- update(b2, .~. -replicate)
vif(b3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.240985 4 1.027356
## whole.mean 1.283871 1 1.133080
## alive 1.356444 1 1.164665
## duration 1.182338 1 1.087354
anova(b2, b3)
## Analysis of Variance Table
##
## Model 1: eggs ~ treatment + whole.mean + alive + duration + replicate
## Model 2: eggs ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 29 5179.2
## 2 37 6388.3 -8 -1209.1 0.8462 0.5708
AIC(b2, b3)
## df AIC
## b2 17 375.2628
## b3 9 368.7044
brood.col <- lm(dead_larvae~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = brood)
drop1(brood.col, test = "Chisq")
## Single term deletions
##
## Model:
## dead_larvae ~ treatment + whole.mean + alive + duration + replicate +
## mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 1284.6 184.82
## treatment 4 101.94 1386.5 180.25 0.487620
## whole.mean 1 280.55 1565.1 191.71 0.002869 **
## alive 1 23.38 1308.0 183.63 0.367610
## duration 1 1.85 1286.4 182.88 0.799325
## replicate 5 392.72 1677.3 186.82 0.034734 *
## mean.dose 1 39.79 1324.4 184.19 0.241352
## qro 0 0.00 1284.6 184.82
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
b1 <- update(brood.col, .~. -qro)
vif(b1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 8.553798 4 1.307735
## whole.mean 3.449268 1 1.857220
## alive 2.500432 1 1.581275
## duration 1.688360 1 1.299369
## replicate 4.411960 8 1.097209
## mean.dose 6.951638 1 2.636596
b2 <- update(b1, .~. -mean.dose)
vif(b2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.416097 4 1.044448
## whole.mean 3.269164 1 1.808083
## alive 2.457681 1 1.567699
## duration 1.650178 1 1.284593
## replicate 4.033123 8 1.091070
b3 <- update(b2, .~. -replicate)
vif(b3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.240985 4 1.027356
## whole.mean 1.283871 1 1.133080
## alive 1.356444 1 1.164665
## duration 1.182338 1 1.087354
anova(b2, b3)
## Analysis of Variance Table
##
## Model 1: dead_larvae ~ treatment + whole.mean + alive + duration + replicate
## Model 2: dead_larvae ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 29 1324.4
## 2 37 1845.8 -8 -521.41 1.4272 0.2273
AIC(b2, b3)
## df AIC
## b2 17 313.8957
## b3 9 312.8342
brood.col <- lm(live_larvae~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = brood)
drop1(brood.col, test = "Chisq")
## Single term deletions
##
## Model:
## live_larvae ~ treatment + whole.mean + alive + duration + replicate +
## mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 4066.3 236.67
## treatment 4 2114.58 6180.9 247.51 0.0008438 ***
## whole.mean 1 2890.43 6956.7 258.84 8.847e-07 ***
## alive 1 39.07 4105.4 235.10 0.5118234
## duration 1 2.10 4068.4 234.69 0.8787392
## replicate 5 490.08 4556.4 231.79 0.4013195
## mean.dose 1 316.30 4382.6 238.04 0.0663589 .
## qro 0 0.00 4066.3 236.67
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
b1 <- update(brood.col, .~. -qro)
vif(b1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 8.553798 4 1.307735
## whole.mean 3.449268 1 1.857220
## alive 2.500432 1 1.581275
## duration 1.688360 1 1.299369
## replicate 4.411960 8 1.097209
## mean.dose 6.951638 1 2.636596
b2 <- update(b1, .~. -mean.dose)
vif(b2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.416097 4 1.044448
## whole.mean 3.269164 1 1.808083
## alive 2.457681 1 1.567699
## duration 1.650178 1 1.284593
## replicate 4.033123 8 1.091070
b3 <- update(b2, .~. -replicate)
vif(b3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.240985 4 1.027356
## whole.mean 1.283871 1 1.133080
## alive 1.356444 1 1.164665
## duration 1.182338 1 1.087354
anova(b2, b3)
## Analysis of Variance Table
##
## Model 1: live_larvae ~ treatment + whole.mean + alive + duration + replicate
## Model 2: live_larvae ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 29 4382.6
## 2 37 5541.8 -8 -1159.2 0.9588 0.4861
AIC(b2, b3)
## df AIC
## b2 17 367.7473
## b3 9 362.3079
brood.col <- lm(dead_pupae~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = brood)
drop1(brood.col, test = "Chisq")
## Single term deletions
##
## Model:
## dead_pupae ~ treatment + whole.mean + alive + duration + replicate +
## mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 1067.2 176.47
## treatment 4 212.32 1279.5 176.64 0.08571 .
## whole.mean 1 21.94 1089.1 175.39 0.33860
## alive 1 2.54 1069.7 174.58 0.74366
## duration 1 53.77 1120.9 176.69 0.13693
## replicate 5 320.42 1387.6 178.29 0.03741 *
## mean.dose 1 13.40 1080.6 175.04 0.45372
## qro 0 0.00 1067.2 176.47
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
b1 <- update(brood.col, .~. -qro)
vif(b1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 8.553798 4 1.307735
## whole.mean 3.449268 1 1.857220
## alive 2.500432 1 1.581275
## duration 1.688360 1 1.299369
## replicate 4.411960 8 1.097209
## mean.dose 6.951638 1 2.636596
b2 <- update(b1, .~. -mean.dose)
vif(b2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.416097 4 1.044448
## whole.mean 3.269164 1 1.808083
## alive 2.457681 1 1.567699
## duration 1.650178 1 1.284593
## replicate 4.033123 8 1.091070
b3 <- update(b2, .~. -replicate)
vif(b3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.240985 4 1.027356
## whole.mean 1.283871 1 1.133080
## alive 1.356444 1 1.164665
## duration 1.182338 1 1.087354
anova(b2, b3)
## Analysis of Variance Table
##
## Model 1: dead_pupae ~ treatment + whole.mean + alive + duration + replicate
## Model 2: dead_pupae ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 29 1080.6
## 2 37 1488.4 -8 -407.84 1.3682 0.2515
AIC(b2, b3)
## df AIC
## b2 17 304.7401
## b3 9 303.1500
brood.col <- lm(live_pupae~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = brood)
drop1(brood.col, test = "Chisq")
## Single term deletions
##
## Model:
## live_pupae ~ treatment + whole.mean + alive + duration + replicate +
## mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 442.66 136.88
## treatment 4 39.161 481.82 132.69 0.431664
## whole.mean 1 70.826 513.49 141.56 0.009756 **
## alive 1 10.785 453.45 135.96 0.297978
## duration 1 1.704 444.36 135.05 0.677528
## replicate 5 41.770 484.43 130.93 0.541147
## mean.dose 1 18.130 460.79 136.68 0.178946
## qro 0 0.000 442.66 136.88
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
b1 <- update(brood.col, .~. -qro)
vif(b1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 8.553798 4 1.307735
## whole.mean 3.449268 1 1.857220
## alive 2.500432 1 1.581275
## duration 1.688360 1 1.299369
## replicate 4.411960 8 1.097209
## mean.dose 6.951638 1 2.636596
b2 <- update(b1, .~. -mean.dose)
vif(b2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.416097 4 1.044448
## whole.mean 3.269164 1 1.808083
## alive 2.457681 1 1.567699
## duration 1.650178 1 1.284593
## replicate 4.033123 8 1.091070
b3 <- update(b2, .~. -replicate)
vif(b3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.240985 4 1.027356
## whole.mean 1.283871 1 1.133080
## alive 1.356444 1 1.164665
## duration 1.182338 1 1.087354
anova(b2, b3)
## Analysis of Variance Table
##
## Model 1: live_pupae ~ treatment + whole.mean + alive + duration + replicate
## Model 2: live_pupae ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 29 460.79
## 2 37 526.97 -8 -66.179 0.5206 0.8311
AIC(b2, b3)
## df AIC
## b2 17 266.3872
## b3 9 256.4261
# Variables to keep for brood production models = treatment + whole.mean + alive + duration
drone.ce.col <- lm(emerge~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = drone.ce)
d1 <- update(drone.ce.col, .~. -qro)
vif(d1)
## Warning in summary.lm(object, ...): essentially perfect fit: summary may be
## unreliable
## GVIF Df GVIF^(1/(2*Df))
## treatment 13.877487 4 1.389277
## whole.mean 3.007475 1 1.734207
## alive 2.054764 1 1.433445
## duration 2.757985 1 1.660718
## replicate 8.793850 8 1.145542
## mean.dose 9.312274 1 3.051602
d2 <- update(d1, .~. -mean.dose)
vif(d2)
## Warning in summary.lm(object, ...): essentially perfect fit: summary may be
## unreliable
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.837900 4 1.079047
## whole.mean 2.996504 1 1.731041
## alive 2.015683 1 1.419747
## duration 2.564950 1 1.601546
## replicate 7.780615 8 1.136811
d3 <- update(d2, .~. -replicate)
vif(d3)
## Warning in summary.lm(object, ...): essentially perfect fit: summary may be
## unreliable
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.257949 4 1.029101
## whole.mean 1.578568 1 1.256411
## alive 1.107157 1 1.052215
## duration 1.678405 1 1.295533
anova(d2, d3)
## Analysis of Variance Table
##
## Model 1: emerge ~ treatment + whole.mean + alive + duration + replicate
## Model 2: emerge ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 24 1.4389e-27
## 2 32 1.6659e-27 -8 -2.2706e-28 0.4734 0.8627
drone.ce.col <- lm(count~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = drone.ce)
d1 <- update(drone.ce.col, .~. -qro)
vif(d1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 9.467065 4 1.324424
## whole.mean 2.965415 1 1.722038
## alive 3.437075 1 1.853935
## duration 2.986680 1 1.728201
## replicate 5.721855 8 1.115183
## mean.dose 6.797842 1 2.607267
d2 <- update(d1, .~. -mean.dose)
vif(d2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.645456 4 1.064231
## whole.mean 2.868172 1 1.693568
## alive 3.367939 1 1.835194
## duration 2.985180 1 1.727767
## replicate 5.066066 8 1.106731
d3 <- update(d2, .~. -replicate)
vif(d3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.347318 4 1.037968
## whole.mean 1.526755 1 1.235619
## alive 1.824988 1 1.350921
## duration 1.702754 1 1.304896
anova(d2, d3)
## Analysis of Variance Table
##
## Model 1: count ~ treatment + whole.mean + alive + duration + replicate
## Model 2: count ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq F Pr(>F)
## 1 29 505.70
## 2 37 807.08 -8 -301.38 2.1603 0.06176 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
AIC(d2, d3) #keep d2
## df AIC
## d2 17 270.5724
## d3 9 275.6087
# Variables to keep for drone emergence models = treatment + whole.mean + alive + duration
#but drone count model = treatment + whole.mean + alive + duration + replicate
drone.h.col <- lm(relative_fat~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = drone.h)
drop1(drone.h.col, test = "Chisq")
## Single term deletions
##
## Model:
## relative_fat ~ treatment + whole.mean + alive + duration + replicate +
## mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 0.00024331 -5415.8
## treatment 4 1.0639e-05 0.00025395 -5407.5 0.002585 **
## whole.mean 1 1.0550e-06 0.00024437 -5416.2 0.198582
## alive 1 1.3411e-06 0.00024465 -5415.7 0.147315
## duration 1 2.5591e-06 0.00024587 -5413.8 0.045587 *
## replicate 5 3.0993e-06 0.00024641 -5421.0 0.436325
## mean.dose 1 4.7612e-06 0.00024807 -5410.4 0.006512 **
## qro 0 0.0000e+00 0.00024331 -5415.8
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
d1 <- update(drone.h.col, .~. -qro)
vif(d1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 27.849721 4 1.515663
## whole.mean 3.600649 1 1.897538
## alive 1.098859 1 1.048265
## duration 1.882540 1 1.372057
## replicate 6.455871 8 1.123627
## mean.dose 14.370191 1 3.790804
d2 <- update(d1, .~. -mean.dose)
vif(d2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 2.216516 4 1.104610
## whole.mean 3.449427 1 1.857263
## alive 1.094689 1 1.046274
## duration 1.877555 1 1.370239
## replicate 5.632877 8 1.114091
d3 <- update(d2, .~. -replicate)
vif(d3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.284692 4 1.031810
## whole.mean 1.191791 1 1.091692
## alive 1.025505 1 1.012672
## duration 1.214062 1 1.101845
anova(d2, d3, test = "Chisq")
## Analysis of Variance Table
##
## Model 1: relative_fat ~ treatment + whole.mean + alive + duration + replicate
## Model 2: relative_fat ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq Pr(>Chi)
## 1 366 0.00024807
## 2 374 0.00025780 -8 -9.7265e-06 0.07308 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
AIC(d2, d3)
## df AIC
## d2 17 -4324.366
## d3 9 -4325.675
drone.h.col <- lm(dry_weight~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = drone.h)
drop1(drone.h.col, test = "Chisq")
## Single term deletions
##
## Model:
## dry_weight ~ treatment + whole.mean + alive + duration + replicate +
## mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 0.026784 -3980.7
## treatment 4 0.00223730 0.029022 -3955.3 1.002e-06 ***
## whole.mean 1 0.00019567 0.026980 -3979.6 0.08184 .
## alive 1 0.00034304 0.027128 -3977.4 0.02140 *
## duration 1 0.00002224 0.026807 -3982.3 0.55676
## replicate 5 0.00061654 0.027401 -3981.2 0.09182 .
## mean.dose 1 0.00005569 0.026840 -3981.8 0.35259
## qro 0 0.00000000 0.026784 -3980.7
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
d1 <- update(drone.h.col, .~. -qro)
vif(d1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 28.361446 4 1.519116
## whole.mean 3.635553 1 1.906713
## alive 1.087236 1 1.042706
## duration 1.937229 1 1.391844
## replicate 6.566066 8 1.124816
## mean.dose 14.430725 1 3.798779
d2 <- update(d1, .~. -mean.dose)
vif(d2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 2.250439 4 1.106709
## whole.mean 3.496936 1 1.870010
## alive 1.083447 1 1.040888
## duration 1.934177 1 1.390747
## replicate 5.736855 8 1.115365
d3 <- update(d2, .~. -replicate)
vif(d3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.281142 4 1.031454
## whole.mean 1.209902 1 1.099956
## alive 1.023663 1 1.011762
## duration 1.209712 1 1.099869
anova(d2, d3, test = "Chisq")
## Analysis of Variance Table
##
## Model 1: dry_weight ~ treatment + whole.mean + alive + duration + replicate
## Model 2: dry_weight ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq Pr(>Chi)
## 1 400 0.026840
## 2 408 0.028045 -8 -0.001205 0.02154 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
AIC(d2, d3)
## df AIC
## d2 17 -2799.235
## d3 9 -2796.965
drone.h.col <- lm(radial~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = drone.h)
drop1(drone.h.col, test = "Chisq")
## Single term deletions
##
## Model:
## radial ~ treatment + whole.mean + alive + duration + replicate +
## mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 15.088 -1307.0
## treatment 4 0.63081 15.718 -1298.4 0.00224 **
## whole.mean 1 0.00326 15.091 -1309.0 0.76672
## alive 1 0.21488 15.302 -1303.3 0.01644 *
## duration 1 0.03616 15.124 -1308.1 0.32362
## replicate 5 0.28737 15.375 -1309.4 0.17482
## mean.dose 1 0.01108 15.099 -1308.7 0.58469
## qro 0 0.00000 15.088 -1307.0
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
d1 <- update(drone.h.col, .~. -qro)
vif(d1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 28.709844 4 1.521437
## whole.mean 3.619228 1 1.902427
## alive 1.087820 1 1.042986
## duration 1.927802 1 1.388453
## replicate 6.392157 8 1.122931
## mean.dose 14.496093 1 3.807373
d2 <- update(d1, .~. -mean.dose)
vif(d2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 2.274335 4 1.108171
## whole.mean 3.471038 1 1.863072
## alive 1.083927 1 1.041118
## duration 1.923363 1 1.386854
## replicate 5.562241 8 1.113213
d3 <- update(d2, .~. -replicate)
vif(d3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.295445 4 1.032886
## whole.mean 1.218756 1 1.103973
## alive 1.024674 1 1.012262
## duration 1.224079 1 1.106381
anova(d2, d3, test = "Chisq")
## Analysis of Variance Table
##
## Model 1: radial ~ treatment + whole.mean + alive + duration + replicate
## Model 2: radial ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq Pr(>Chi)
## 1 391 15.099
## 2 399 15.712 -8 -0.6133 0.0441 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
AIC(d2, d3)
## df AIC
## d2 17 -151.7277
## d3 9 -151.5224
# Variables to include in drone dry weight and radial cell model = treatment + whole.mean + alive + duration + replicate, but in relative fat it is = treatment + whole.mean + alive + duration
weights.col <- lm(difference~ treatment + whole.mean + alive + duration + replicate + mean.dose + qro, data = weights)
drop1(weights.col, test = "Chisq")
## Single term deletions
##
## Model:
## difference ~ treatment + whole.mean + alive + duration + replicate +
## mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 216.78 104.75
## treatment 4 77.782 294.56 110.55 0.007972 **
## whole.mean 1 172.613 389.40 129.11 2.839e-07 ***
## alive 1 11.928 228.71 105.16 0.120533
## duration 1 0.001 216.78 102.75 0.991206
## replicate 5 31.503 248.29 100.86 0.296057
## mean.dose 1 33.315 250.10 109.18 0.011201 *
## qro 0 0.000 216.78 104.75
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
wtcol1 <- update(weights.col, .~. -qro)
vif(wtcol1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 8.553798 4 1.307735
## whole.mean 3.449268 1 1.857220
## alive 2.500432 1 1.581275
## duration 1.688360 1 1.299369
## replicate 4.411960 8 1.097209
## mean.dose 6.951638 1 2.636596
wtcol2 <- update(wtcol1, .~. -mean.dose)
vif(wtcol2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.416097 4 1.044448
## whole.mean 3.269164 1 1.808083
## alive 2.457681 1 1.567699
## duration 1.650178 1 1.284593
## replicate 4.033123 8 1.091070
wtcol3 <- update(wtcol2, .~. -replicate)
vif(wtcol3)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.240985 4 1.027356
## whole.mean 1.283871 1 1.133080
## alive 1.356444 1 1.164665
## duration 1.182338 1 1.087354
anova(wtcol2, wtcol3, test = "Chisq")
## Analysis of Variance Table
##
## Model 1: difference ~ treatment + whole.mean + alive + duration + replicate
## Model 2: difference ~ treatment + whole.mean + alive + duration
## Res.Df RSS Df Sum of Sq Pr(>Chi)
## 1 29 250.10
## 2 37 313.55 -8 -63.45 0.4986
#variables to include in weight change model = treatment + whole.mean + alive + duration
workers.col <- lm(dry_weight~ treatment + whole.mean + alive + survived + colony_duration + replicate + days_alive + mean.dose + qro, data = workers)
drop1(workers.col, test = "Chisq")
## Single term deletions
##
## Model:
## dry_weight ~ treatment + whole.mean + alive + survived + colony_duration +
## replicate + days_alive + mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 0.052735 -1833.3
## treatment 4 0.0008213 0.053556 -1837.9 0.4837
## whole.mean 1 0.0078499 0.060584 -1804.2 2.471e-08 ***
## alive 1 0.0003462 0.053081 -1833.9 0.2260
## survived 1 0.0005413 0.053276 -1833.0 0.1304
## colony_duration 1 0.0000222 0.052757 -1835.2 0.7589
## replicate 5 0.0009386 0.053673 -1839.4 0.5564
## days_alive 1 0.0000058 0.052740 -1835.3 0.8750
## mean.dose 1 0.0001936 0.052928 -1834.5 0.3650
## qro 0 0.0000000 0.052735 -1833.3
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
wcol1 <- update(workers.col, .~. -qro)
vif(wcol1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 9.982606 4 1.333231
## whole.mean 2.971430 1 1.723784
## alive 5.194817 1 2.279214
## survived 3.519625 1 1.876066
## colony_duration 4.802699 1 2.191506
## replicate 6.129251 8 1.119987
## days_alive 4.145068 1 2.035944
## mean.dose 6.918257 1 2.630258
drop1(wcol1, test = "Chisq")
## Single term deletions
##
## Model:
## dry_weight ~ treatment + whole.mean + alive + survived + colony_duration +
## replicate + days_alive + mean.dose
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 0.052735 -1833.3
## treatment 4 0.0008213 0.053556 -1837.9 0.4837
## whole.mean 1 0.0078499 0.060584 -1804.2 2.471e-08 ***
## alive 1 0.0003462 0.053081 -1833.9 0.2260
## survived 1 0.0005413 0.053276 -1833.0 0.1304
## colony_duration 1 0.0000222 0.052757 -1835.2 0.7589
## replicate 8 0.0082267 0.060961 -1816.8 7.662e-05 ***
## days_alive 1 0.0000058 0.052740 -1835.3 0.8750
## mean.dose 1 0.0001936 0.052928 -1834.5 0.3650
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
wcol2 <- update(wcol1, .~. -mean.dose)
vif(wcol2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.693901 4 1.068098
## whole.mean 2.852279 1 1.688869
## alive 5.150490 1 2.269469
## survived 3.508476 1 1.873093
## colony_duration 4.731913 1 2.175296
## replicate 5.443363 8 1.111710
## days_alive 4.083868 1 2.020858
drop1(wcol2, test = "Chisq")
## Single term deletions
##
## Model:
## dry_weight ~ treatment + whole.mean + alive + survived + colony_duration +
## replicate + days_alive
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 0.052928 -1834.5
## treatment 4 0.0008136 0.053742 -1839.1 0.4906
## whole.mean 1 0.0076716 0.060600 -1806.2 3.664e-08 ***
## alive 1 0.0003991 0.053327 -1834.8 0.1946
## survived 1 0.0005071 0.053435 -1834.4 0.1439
## colony_duration 1 0.0000093 0.052937 -1836.5 0.8430
## replicate 8 0.0082224 0.061151 -1818.2 8.073e-05 ***
## days_alive 1 0.0000005 0.052929 -1836.5 0.9622
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
wcol3 <- update(wcol1, .~. -treatment)
vif(wcol3)
## GVIF Df GVIF^(1/(2*Df))
## whole.mean 2.665711 1 1.632700
## alive 4.754698 1 2.180527
## survived 3.442411 1 1.855374
## colony_duration 4.137701 1 2.034134
## replicate 4.919528 8 1.104702
## days_alive 3.937984 1 1.984435
## mean.dose 1.173926 1 1.083479
drop1(wcol3, test = "Chisq")
## Single term deletions
##
## Model:
## dry_weight ~ whole.mean + alive + survived + colony_duration +
## replicate + days_alive + mean.dose
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 0.053556 -1837.9
## whole.mean 1 0.0077487 0.061305 -1809.6 3.761e-08 ***
## alive 1 0.0005122 0.054068 -1837.7 0.1443
## survived 1 0.0005022 0.054058 -1837.8 0.1482
## colony_duration 1 0.0000302 0.053586 -1839.7 0.7225
## replicate 8 0.0083069 0.061863 -1821.6 8.231e-05 ***
## days_alive 1 0.0000000 0.053556 -1839.9 0.9985
## mean.dose 1 0.0001859 0.053742 -1839.1 0.3783
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
wcol4 <- update(wcol1, .~. -replicate)
vif(wcol4)
## GVIF Df GVIF^(1/(2*Df))
## treatment 8.012351 4 1.297090
## whole.mean 1.830373 1 1.352913
## alive 3.601591 1 1.897786
## survived 3.450263 1 1.857488
## colony_duration 3.377098 1 1.837688
## days_alive 3.907215 1 1.976668
## mean.dose 6.144076 1 2.478725
wcol5 <- update(wcol4, .~. -mean.dose)
vif(wcol5)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.391880 4 1.042198
## whole.mean 1.530083 1 1.236965
## alive 3.600378 1 1.897466
## survived 3.432116 1 1.852597
## colony_duration 3.287856 1 1.813245
## days_alive 3.835977 1 1.958565
wcol6 <- update(wcol4, .~. -treatment)
vif(wcol6)
## whole.mean alive survived colony_duration days_alive
## 1.419487 3.442770 3.371879 3.082824 3.709960
## mean.dose
## 1.067329
#variables to begin for workers dry weight model --> treatment + whole.mean + alive + survived + colony_duration + days_alive
workers.col <- lm(days_alive~ treatment + whole.mean + alive + survived + colony_duration + replicate + dry_weight + mean.dose + qro, data = workers)
drop1(workers.col, test = "Chisq")
## Single term deletions
##
## Model:
## days_alive ~ treatment + whole.mean + alive + survived + colony_duration +
## replicate + dry_weight + mean.dose + qro
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 4356.0 702.75
## treatment 4 229.57 4585.5 706.26 0.02144 *
## whole.mean 1 42.20 4398.2 702.91 0.14166
## alive 1 15.46 4371.4 701.55 0.37294
## survived 1 1158.94 5514.9 753.60 3.612e-13 ***
## colony_duration 1 2847.11 7203.1 813.42 < 2.2e-16 ***
## replicate 5 124.98 4480.9 699.09 0.27483
## dry_weight 1 0.48 4356.4 700.78 0.87497
## mean.dose 1 65.72 4421.7 704.11 0.06702 .
## qro 0 0.00 4356.0 702.75
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
wcol1 <- update(workers.col, .~. -qro)
vif(wcol1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 9.630516 4 1.327261
## whole.mean 3.380991 1 1.838747
## alive 5.210423 1 2.282635
## survived 2.808520 1 1.675864
## colony_duration 2.905589 1 1.704579
## replicate 6.678162 8 1.126007
## dry_weight 1.598323 1 1.264248
## mean.dose 6.840443 1 2.615424
wcol2 <- update(wcol1, .~. -mean.dose)
vif(wcol2)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.657735 4 1.065220
## whole.mean 3.247452 1 1.802069
## alive 5.163252 1 2.272279
## survived 2.808386 1 1.675824
## colony_duration 2.895382 1 1.701582
## replicate 5.907328 8 1.117408
## dry_weight 1.592638 1 1.261998
wcol3 <- update(wcol1, .~. -treatment)
vif(wcol3)
## GVIF Df GVIF^(1/(2*Df))
## whole.mean 3.043375 1 1.744527
## alive 4.781338 1 2.186627
## survived 2.799086 1 1.673047
## colony_duration 2.228600 1 1.492850
## replicate 5.354024 8 1.110561
## dry_weight 1.573988 1 1.254587
## mean.dose 1.177470 1 1.085113
wcol4 <- update(wcol1, .~. -replicate)
vif(wcol4)
## GVIF Df GVIF^(1/(2*Df))
## treatment 7.720988 4 1.291098
## whole.mean 2.312330 1 1.520635
## alive 3.714956 1 1.927422
## survived 2.783481 1 1.668377
## colony_duration 1.664957 1 1.290332
## dry_weight 1.382773 1 1.175913
## mean.dose 6.050878 1 2.459853
wcol5 <- update(wcol4, .~. -mean.dose)
vif(wcol5)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.368219 4 1.039967
## whole.mean 1.977686 1 1.406302
## alive 3.714483 1 1.927300
## survived 2.782506 1 1.668084
## colony_duration 1.649497 1 1.284327
## dry_weight 1.378471 1 1.174083
wcol6 <- update(wcol4, .~. -treatment)
vif(wcol6)
## whole.mean alive survived colony_duration dry_weight
## 1.835627 3.554008 2.772289 1.416195 1.362510
## mean.dose
## 1.072262
#variables to keep for worker days alive model --> treatment + whole.mean + alive + survived + colony_duration + dry_weight
pollen.col <- lm(difference~ treatment + bees_alive + replicate + qro + count, data = pollen)
pcol1 <- update(pollen.col, .~. -qro)
vif(pcol1)
## GVIF Df GVIF^(1/(2*Df))
## treatment 1.098006 4 1.011756
## bees_alive 1.393435 1 1.180439
## replicate 1.280304 8 1.015563
## count 1.089723 1 1.043898
drop1(pcol1, test = "Chisq")
## Single term deletions
##
## Model:
## difference ~ treatment + bees_alive + replicate + count
## Df Sum of Sq RSS AIC Pr(>Chi)
## <none> 76.499 -2258.1
## treatment 4 1.3050 77.804 -2250.6 0.003666 **
## bees_alive 1 7.0938 83.593 -2178.5 < 2.2e-16 ***
## replicate 8 16.0220 92.521 -2099.2 < 2.2e-16 ***
## count 1 13.1705 89.669 -2114.0 < 2.2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
#variables to keep for pollen model = treatment + bees_alive + replicate + count
LS0tDQp0aXRsZTogIldpZGVseS11c2VkIGZ1bmdpY2lkZSBQcmlzdGluZcKuIGNhdXNlcyBzdWItbGV0aGFsIGVmZmVjdHMgaW4gY29tbW9uIGVhc3Rlcm4gYnVtYmxlIGJlZSAoKkJvbWJ1cyBpbXBhdGllbnMqKSBtaWNyb2NvbG9uaWVzICINCmF1dGhvcjogIkVtaWx5IFJ1bm5pb24iDQpkYXRlOiAiRGF0YSBDb2xsZWN0ZWQgMjAyMiwgRGF0YSBBbmFseXplZCAyMDIzIg0Kb3V0cHV0Og0KICBodG1sX2RvY3VtZW50Og0KICAgIHRvYzogdHJ1ZQ0KICAgIHRvY19kZXB0aDogNA0KICAgIG51bWJlcl9zZWN0aW9uczogZmFsc2UNCiAgICB0b2NfZmxvYXQ6IHRydWUNCiAgICB0aGVtZTogam91cm5hbA0KICAgIGNvZGVfZG93bmxvYWQ6IHRydWUNCi0tLQ0KDQpgYGB7ciBzZXR1cCwgaW5jbHVkZT1GQUxTRX0NCmtuaXRyOjpvcHRzX2NodW5rJHNldChtZXNzYWdlID0gRkFMU0UpDQpgYGANCg0KYGBge3IgbG9hZCBsaWJyYXJpZXMsIGluY2x1ZGU9RkFMU0V9DQpsaWJyYXJ5KHJlYWRyKQ0KbGlicmFyeShrYWJsZUV4dHJhKQ0KbGlicmFyeShzdGF0cykNCmxpYnJhcnkoZ2dwbG90MikNCmxpYnJhcnkoY2FyKQ0KbGlicmFyeShlbW1lYW5zKQ0KbGlicmFyeShNQVNTKQ0KbGlicmFyeShsbWU0KQ0KbGlicmFyeShibG1lY28pDQpsaWJyYXJ5KHRpZHl2ZXJzZSkNCmxpYnJhcnkoZHBseXIpDQpsaWJyYXJ5KGNvd3Bsb3QpDQpsaWJyYXJ5KGJlc3ROb3JtYWxpemUpDQpsaWJyYXJ5KHBsb3RseSkNCmxpYnJhcnkoYWdyaWNvbGFlKSANCmxpYnJhcnkoZ2dwdWJyKQ0KbGlicmFyeShnbHVlKQ0KbGlicmFyeShtdWx0Y29tcCkNCmxpYnJhcnkobXVsdGNvbXBWaWV3KQ0KbGlicmFyeShnbG1tVE1CKQ0KbGlicmFyeShyc3RhdGl4KQ0KbGlicmFyeShmaXRkaXN0cnBsdXMpDQpsaWJyYXJ5KGxvZ3NwbGluZSkNCmxpYnJhcnkob2xzcnIpDQpsaWJyYXJ5KEdHYWxseSkNCmxpYnJhcnkoZGF0YS50YWJsZSkNCmBgYA0KDQpgYGB7ciBpbnB1dCByZWxldmFudCBkYXRhIGZpbGVzLCBpbmNsdWRlPUZBTFNFfQ0KDQpicm9vZCA8LSByZWFkX2NzdigiYnJvb2QuY3N2IikNCmJyb29kJGNvbG9ueSA8LSBhcy5mYWN0b3IoYnJvb2QkY29sb255KQ0KYnJvb2QkdHJlYXRtZW50IDwtIGFzLmZhY3Rvcihicm9vZCR0cmVhdG1lbnQpDQpicm9vZCRyZXBsaWNhdGU8LSBhcy5mYWN0b3IoYnJvb2QkcmVwbGljYXRlKQ0KYnJvb2QkcXJvIDwtIGFzLmZhY3Rvcihicm9vZCRxcm8pDQoNCmRyb25lLmNlIDwtIHJlYWRfY3N2KCJkcm9uZS5jb3VudC5lbWVyZ2UuY3N2IikNCmRyb25lLmNlJGNvbG9ueSA8LSBhcy5mYWN0b3IoZHJvbmUuY2UkY29sb255KQ0KZHJvbmUuY2UkdHJlYXRtZW50IDwtIGFzLmZhY3Rvcihkcm9uZS5jZSR0cmVhdG1lbnQpDQpkcm9uZS5jZSRyZXBsaWNhdGU8LSBhcy5mYWN0b3IoZHJvbmUuY2UkcmVwbGljYXRlKQ0KZHJvbmUuY2UkcXJvIDwtIGFzLmZhY3Rvcihkcm9uZS5jZSRxcm8pDQoNCmRyb25lLmggPC0gcmVhZF9jc3YoImRyb25lLmhlYWx0aC5jc3YiKQ0KZHJvbmUuaCRjb2xvbnkgPC0gYXMuZmFjdG9yKGRyb25lLmgkY29sb255KQ0KZHJvbmUuaCR0cmVhdG1lbnQgPC0gYXMuZmFjdG9yKGRyb25lLmgkdHJlYXRtZW50KQ0KZHJvbmUuaCRyZXBsaWNhdGU8LSBhcy5mYWN0b3IoZHJvbmUuaCRyZXBsaWNhdGUpDQpkcm9uZS5oJHFybyA8LSBhcy5mYWN0b3IoZHJvbmUuaCRxcm8pDQoNCnBvbGxlbiA8LSByZWFkX2NzdigicG9sbGVuLmNzdiIpDQpwb2xsZW4kY29sb255IDwtIGFzLmZhY3Rvcihwb2xsZW4kY29sb255KQ0KcG9sbGVuJHRyZWF0bWVudCA8LSBhcy5mYWN0b3IocG9sbGVuJHRyZWF0bWVudCkNCnBvbGxlbiRyZXBsaWNhdGU8LSBhcy5mYWN0b3IocG9sbGVuJHJlcGxpY2F0ZSkNCnBvbGxlbiRxcm8gPC0gYXMuZmFjdG9yKHBvbGxlbiRxcm8pDQoNCndlaWdodHMgPC0gcmVhZF9jc3YoIndlaWdodHMuY3N2IikNCndlaWdodHMkY29sb255IDwtIGFzLmZhY3Rvcih3ZWlnaHRzJGNvbG9ueSkNCndlaWdodHMkdHJlYXRtZW50IDwtIGFzLmZhY3Rvcih3ZWlnaHRzJHRyZWF0bWVudCkNCndlaWdodHMkcmVwbGljYXRlPC0gYXMuZmFjdG9yKHdlaWdodHMkcmVwbGljYXRlKQ0Kd2VpZ2h0cyRxcm8gPC0gYXMuZmFjdG9yKHdlaWdodHMkcXJvKQ0KDQp3b3JrZXJzIDwtIHJlYWRfY3N2KCJ3b3JrZXJzLmNzdiIpDQp3b3JrZXJzJGNvbG9ueSA8LSBhcy5mYWN0b3Iod29ya2VycyRjb2xvbnkpDQp3b3JrZXJzJHRyZWF0bWVudCA8LSBhcy5mYWN0b3Iod29ya2VycyR0cmVhdG1lbnQpDQp3b3JrZXJzJHJlcGxpY2F0ZTwtIGFzLmZhY3Rvcih3b3JrZXJzJHJlcGxpY2F0ZSkNCndvcmtlcnMkcXJvIDwtIGFzLmZhY3Rvcih3b3JrZXJzJHFybykNCg0KYGBgDQoNCiMjIyMgU3RlcCAxIC0gQ2hlY2sgZm9yIGNvbGxpbmVhcml0eSANCg0KYGBge3J9DQpicm9vZC5jb2wgPC0gbG0oYnJvb2RfY2VsbHN+IHRyZWF0bWVudCArIHdob2xlLm1lYW4gKyBhbGl2ZSArIGR1cmF0aW9uICArIHJlcGxpY2F0ZSArIG1lYW4uZG9zZSArIHFybywgZGF0YSA9IGJyb29kKQ0KZHJvcDEoYnJvb2QuY29sLCB0ZXN0ID0gIkNoaXNxIikNCmIxIDwtIHVwZGF0ZShicm9vZC5jb2wsIC5+LiAtcXJvKQ0KdmlmKGIxKQ0KYjIgPC0gdXBkYXRlKGIxLCAufi4gLW1lYW4uZG9zZSkNCnZpZihiMikNCmIzIDwtIHVwZGF0ZShiMiwgLn4uIC1yZXBsaWNhdGUpDQp2aWYoYjMpDQphbm92YShiMiwgYjMpDQpBSUMoYjIsIGIzKQ0KDQpicm9vZC5jb2wgPC0gbG0oaG9uZXlfcG90fiB0cmVhdG1lbnQgKyB3aG9sZS5tZWFuICsgYWxpdmUgKyBkdXJhdGlvbiAgKyByZXBsaWNhdGUgKyBtZWFuLmRvc2UgKyBxcm8sIGRhdGEgPSBicm9vZCkNCmRyb3AxKGJyb29kLmNvbCwgdGVzdCA9ICJDaGlzcSIpDQpiMSA8LSB1cGRhdGUoYnJvb2QuY29sLCAufi4gLXFybykNCnZpZihiMSkNCmIyIDwtIHVwZGF0ZShiMSwgLn4uIC1tZWFuLmRvc2UpDQp2aWYoYjIpDQpiMyA8LSB1cGRhdGUoYjIsIC5+LiAtcmVwbGljYXRlKQ0KdmlmKGIzKQ0KYW5vdmEoYjIsIGIzKQ0KQUlDKGIyLCBiMykNCg0KYnJvb2QuY29sIDwtIGxtKGVnZ3N+IHRyZWF0bWVudCArIHdob2xlLm1lYW4gKyBhbGl2ZSArIGR1cmF0aW9uICArIHJlcGxpY2F0ZSArIG1lYW4uZG9zZSArIHFybywgZGF0YSA9IGJyb29kKQ0KZHJvcDEoYnJvb2QuY29sLCB0ZXN0ID0gIkNoaXNxIikNCmIxIDwtIHVwZGF0ZShicm9vZC5jb2wsIC5+LiAtcXJvKQ0KdmlmKGIxKQ0KYjIgPC0gdXBkYXRlKGIxLCAufi4gLW1lYW4uZG9zZSkNCnZpZihiMikNCmIzIDwtIHVwZGF0ZShiMiwgLn4uIC1yZXBsaWNhdGUpDQp2aWYoYjMpDQphbm92YShiMiwgYjMpDQpBSUMoYjIsIGIzKQ0KDQpicm9vZC5jb2wgPC0gbG0oZGVhZF9sYXJ2YWV+IHRyZWF0bWVudCArIHdob2xlLm1lYW4gKyBhbGl2ZSArIGR1cmF0aW9uICArIHJlcGxpY2F0ZSArIG1lYW4uZG9zZSArIHFybywgZGF0YSA9IGJyb29kKQ0KZHJvcDEoYnJvb2QuY29sLCB0ZXN0ID0gIkNoaXNxIikNCmIxIDwtIHVwZGF0ZShicm9vZC5jb2wsIC5+LiAtcXJvKQ0KdmlmKGIxKQ0KYjIgPC0gdXBkYXRlKGIxLCAufi4gLW1lYW4uZG9zZSkNCnZpZihiMikNCmIzIDwtIHVwZGF0ZShiMiwgLn4uIC1yZXBsaWNhdGUpDQp2aWYoYjMpDQphbm92YShiMiwgYjMpDQpBSUMoYjIsIGIzKQ0KDQpicm9vZC5jb2wgPC0gbG0obGl2ZV9sYXJ2YWV+IHRyZWF0bWVudCArIHdob2xlLm1lYW4gKyBhbGl2ZSArIGR1cmF0aW9uICArIHJlcGxpY2F0ZSArIG1lYW4uZG9zZSArIHFybywgZGF0YSA9IGJyb29kKQ0KZHJvcDEoYnJvb2QuY29sLCB0ZXN0ID0gIkNoaXNxIikNCmIxIDwtIHVwZGF0ZShicm9vZC5jb2wsIC5+LiAtcXJvKQ0KdmlmKGIxKQ0KYjIgPC0gdXBkYXRlKGIxLCAufi4gLW1lYW4uZG9zZSkNCnZpZihiMikNCmIzIDwtIHVwZGF0ZShiMiwgLn4uIC1yZXBsaWNhdGUpDQp2aWYoYjMpDQphbm92YShiMiwgYjMpDQpBSUMoYjIsIGIzKQ0KDQpicm9vZC5jb2wgPC0gbG0oZGVhZF9wdXBhZX4gdHJlYXRtZW50ICsgd2hvbGUubWVhbiArIGFsaXZlICsgZHVyYXRpb24gICsgcmVwbGljYXRlICsgbWVhbi5kb3NlICsgcXJvLCBkYXRhID0gYnJvb2QpDQpkcm9wMShicm9vZC5jb2wsIHRlc3QgPSAiQ2hpc3EiKQ0KYjEgPC0gdXBkYXRlKGJyb29kLmNvbCwgLn4uIC1xcm8pDQp2aWYoYjEpDQpiMiA8LSB1cGRhdGUoYjEsIC5+LiAtbWVhbi5kb3NlKQ0KdmlmKGIyKQ0KYjMgPC0gdXBkYXRlKGIyLCAufi4gLXJlcGxpY2F0ZSkNCnZpZihiMykNCmFub3ZhKGIyLCBiMykNCkFJQyhiMiwgYjMpDQoNCmJyb29kLmNvbCA8LSBsbShsaXZlX3B1cGFlfiB0cmVhdG1lbnQgKyB3aG9sZS5tZWFuICsgYWxpdmUgKyBkdXJhdGlvbiAgKyByZXBsaWNhdGUgKyBtZWFuLmRvc2UgKyBxcm8sIGRhdGEgPSBicm9vZCkNCmRyb3AxKGJyb29kLmNvbCwgdGVzdCA9ICJDaGlzcSIpDQpiMSA8LSB1cGRhdGUoYnJvb2QuY29sLCAufi4gLXFybykNCnZpZihiMSkNCmIyIDwtIHVwZGF0ZShiMSwgLn4uIC1tZWFuLmRvc2UpDQp2aWYoYjIpDQpiMyA8LSB1cGRhdGUoYjIsIC5+LiAtcmVwbGljYXRlKQ0KdmlmKGIzKQ0KYW5vdmEoYjIsIGIzKQ0KQUlDKGIyLCBiMykNCiMgVmFyaWFibGVzIHRvIGtlZXAgZm9yIGJyb29kIHByb2R1Y3Rpb24gbW9kZWxzID0gdHJlYXRtZW50ICsgd2hvbGUubWVhbiArIGFsaXZlICsgZHVyYXRpb24NCg0KZHJvbmUuY2UuY29sIDwtIGxtKGVtZXJnZX4gdHJlYXRtZW50ICsgd2hvbGUubWVhbiArIGFsaXZlICsgZHVyYXRpb24gICsgcmVwbGljYXRlICsgbWVhbi5kb3NlICsgcXJvLCBkYXRhID0gZHJvbmUuY2UpDQpkMSA8LSB1cGRhdGUoZHJvbmUuY2UuY29sLCAufi4gLXFybykNCnZpZihkMSkNCmQyIDwtIHVwZGF0ZShkMSwgLn4uIC1tZWFuLmRvc2UpDQp2aWYoZDIpDQpkMyA8LSB1cGRhdGUoZDIsIC5+LiAtcmVwbGljYXRlKQ0KdmlmKGQzKQ0KYW5vdmEoZDIsIGQzKQ0KDQpkcm9uZS5jZS5jb2wgPC0gbG0oY291bnR+IHRyZWF0bWVudCArIHdob2xlLm1lYW4gKyBhbGl2ZSArIGR1cmF0aW9uICArIHJlcGxpY2F0ZSArIG1lYW4uZG9zZSArIHFybywgZGF0YSA9IGRyb25lLmNlKQ0KZDEgPC0gdXBkYXRlKGRyb25lLmNlLmNvbCwgLn4uIC1xcm8pDQp2aWYoZDEpDQpkMiA8LSB1cGRhdGUoZDEsIC5+LiAtbWVhbi5kb3NlKQ0KdmlmKGQyKQ0KZDMgPC0gdXBkYXRlKGQyLCAufi4gLXJlcGxpY2F0ZSkNCnZpZihkMykNCmFub3ZhKGQyLCBkMykNCkFJQyhkMiwgZDMpICAja2VlcCBkMg0KIyBWYXJpYWJsZXMgdG8ga2VlcCBmb3IgZHJvbmUgZW1lcmdlbmNlIG1vZGVscyA9IHRyZWF0bWVudCArIHdob2xlLm1lYW4gKyBhbGl2ZSArIGR1cmF0aW9uDQojYnV0IGRyb25lIGNvdW50IG1vZGVsID0gdHJlYXRtZW50ICsgd2hvbGUubWVhbiArIGFsaXZlICsgZHVyYXRpb24gKyByZXBsaWNhdGUNCg0KZHJvbmUuaC5jb2wgPC0gIGxtKHJlbGF0aXZlX2ZhdH4gdHJlYXRtZW50ICsgd2hvbGUubWVhbiArIGFsaXZlICsgZHVyYXRpb24gICsgcmVwbGljYXRlICsgbWVhbi5kb3NlICsgcXJvLCBkYXRhID0gZHJvbmUuaCkNCmRyb3AxKGRyb25lLmguY29sLCB0ZXN0ID0gIkNoaXNxIikNCmQxIDwtIHVwZGF0ZShkcm9uZS5oLmNvbCwgLn4uIC1xcm8pDQp2aWYoZDEpDQpkMiA8LSB1cGRhdGUoZDEsIC5+LiAtbWVhbi5kb3NlKQ0KdmlmKGQyKQ0KZDMgPC0gdXBkYXRlKGQyLCAufi4gLXJlcGxpY2F0ZSkNCnZpZihkMykNCmFub3ZhKGQyLCBkMywgdGVzdCA9ICJDaGlzcSIpDQpBSUMoZDIsIGQzKQ0KDQpkcm9uZS5oLmNvbCA8LSAgbG0oZHJ5X3dlaWdodH4gdHJlYXRtZW50ICsgd2hvbGUubWVhbiArIGFsaXZlICsgZHVyYXRpb24gICsgcmVwbGljYXRlICsgbWVhbi5kb3NlICsgcXJvLCBkYXRhID0gZHJvbmUuaCkNCmRyb3AxKGRyb25lLmguY29sLCB0ZXN0ID0gIkNoaXNxIikNCmQxIDwtIHVwZGF0ZShkcm9uZS5oLmNvbCwgLn4uIC1xcm8pDQp2aWYoZDEpDQpkMiA8LSB1cGRhdGUoZDEsIC5+LiAtbWVhbi5kb3NlKQ0KdmlmKGQyKQ0KZDMgPC0gdXBkYXRlKGQyLCAufi4gLXJlcGxpY2F0ZSkNCnZpZihkMykNCmFub3ZhKGQyLCBkMywgdGVzdCA9ICJDaGlzcSIpDQpBSUMoZDIsIGQzKQ0KDQpkcm9uZS5oLmNvbCA8LSAgbG0ocmFkaWFsfiB0cmVhdG1lbnQgKyB3aG9sZS5tZWFuICsgYWxpdmUgKyBkdXJhdGlvbiAgKyByZXBsaWNhdGUgKyBtZWFuLmRvc2UgKyBxcm8sIGRhdGEgPSBkcm9uZS5oKQ0KZHJvcDEoZHJvbmUuaC5jb2wsIHRlc3QgPSAiQ2hpc3EiKQ0KZDEgPC0gdXBkYXRlKGRyb25lLmguY29sLCAufi4gLXFybykNCnZpZihkMSkNCmQyIDwtIHVwZGF0ZShkMSwgLn4uIC1tZWFuLmRvc2UpDQp2aWYoZDIpDQpkMyA8LSB1cGRhdGUoZDIsIC5+LiAtcmVwbGljYXRlKQ0KdmlmKGQzKQ0KYW5vdmEoZDIsIGQzLCB0ZXN0ID0gIkNoaXNxIikNCkFJQyhkMiwgZDMpDQoNCiMgVmFyaWFibGVzIHRvIGluY2x1ZGUgaW4gZHJvbmUgZHJ5IHdlaWdodCBhbmQgcmFkaWFsIGNlbGwgbW9kZWwgPSB0cmVhdG1lbnQgKyB3aG9sZS5tZWFuICsgYWxpdmUgKyBkdXJhdGlvbiArIHJlcGxpY2F0ZSwgYnV0IGluIHJlbGF0aXZlIGZhdCBpdCBpcyA9IHRyZWF0bWVudCArIHdob2xlLm1lYW4gKyBhbGl2ZSArIGR1cmF0aW9uDQoNCndlaWdodHMuY29sIDwtICBsbShkaWZmZXJlbmNlfiB0cmVhdG1lbnQgKyB3aG9sZS5tZWFuICsgYWxpdmUgKyBkdXJhdGlvbiAgKyByZXBsaWNhdGUgKyBtZWFuLmRvc2UgKyBxcm8sIGRhdGEgPSB3ZWlnaHRzKQ0KZHJvcDEod2VpZ2h0cy5jb2wsIHRlc3QgPSAiQ2hpc3EiKQ0Kd3Rjb2wxIDwtIHVwZGF0ZSh3ZWlnaHRzLmNvbCwgLn4uIC1xcm8pDQp2aWYod3Rjb2wxKQ0Kd3Rjb2wyIDwtIHVwZGF0ZSh3dGNvbDEsIC5+LiAtbWVhbi5kb3NlKQ0KdmlmKHd0Y29sMikNCnd0Y29sMyA8LSB1cGRhdGUod3Rjb2wyLCAufi4gLXJlcGxpY2F0ZSkNCnZpZih3dGNvbDMpDQphbm92YSh3dGNvbDIsIHd0Y29sMywgdGVzdCA9ICJDaGlzcSIpDQojdmFyaWFibGVzIHRvIGluY2x1ZGUgaW4gd2VpZ2h0IGNoYW5nZSBtb2RlbCA9IHRyZWF0bWVudCArIHdob2xlLm1lYW4gKyBhbGl2ZSArIGR1cmF0aW9uDQoNCg0Kd29ya2Vycy5jb2wgPC0gIGxtKGRyeV93ZWlnaHR+IHRyZWF0bWVudCArIHdob2xlLm1lYW4gKyBhbGl2ZSArIHN1cnZpdmVkICsgY29sb255X2R1cmF0aW9uICsgcmVwbGljYXRlICsgZGF5c19hbGl2ZSArIG1lYW4uZG9zZSArIHFybywgZGF0YSA9IHdvcmtlcnMpDQpkcm9wMSh3b3JrZXJzLmNvbCwgdGVzdCA9ICJDaGlzcSIpDQp3Y29sMSA8LSB1cGRhdGUod29ya2Vycy5jb2wsIC5+LiAtcXJvKQ0KdmlmKHdjb2wxKQ0KZHJvcDEod2NvbDEsIHRlc3QgPSAiQ2hpc3EiKQ0Kd2NvbDIgPC0gdXBkYXRlKHdjb2wxLCAufi4gLW1lYW4uZG9zZSkNCnZpZih3Y29sMikNCmRyb3AxKHdjb2wyLCB0ZXN0ID0gIkNoaXNxIikNCndjb2wzIDwtIHVwZGF0ZSh3Y29sMSwgLn4uIC10cmVhdG1lbnQpDQp2aWYod2NvbDMpDQpkcm9wMSh3Y29sMywgdGVzdCA9ICJDaGlzcSIpDQp3Y29sNCA8LSB1cGRhdGUod2NvbDEsIC5+LiAtcmVwbGljYXRlKQ0KdmlmKHdjb2w0KQ0Kd2NvbDUgPC0gdXBkYXRlKHdjb2w0LCAufi4gLW1lYW4uZG9zZSkNCnZpZih3Y29sNSkNCndjb2w2IDwtIHVwZGF0ZSh3Y29sNCwgLn4uIC10cmVhdG1lbnQpDQp2aWYod2NvbDYpDQojdmFyaWFibGVzIHRvIGJlZ2luIGZvciB3b3JrZXJzIGRyeSB3ZWlnaHQgbW9kZWwgLS0+IHRyZWF0bWVudCArIHdob2xlLm1lYW4gKyBhbGl2ZSArIHN1cnZpdmVkICsgY29sb255X2R1cmF0aW9uICsgZGF5c19hbGl2ZSANCg0Kd29ya2Vycy5jb2wgPC0gIGxtKGRheXNfYWxpdmV+IHRyZWF0bWVudCArIHdob2xlLm1lYW4gKyBhbGl2ZSArIHN1cnZpdmVkICsgY29sb255X2R1cmF0aW9uICsgcmVwbGljYXRlICsgZHJ5X3dlaWdodCArIG1lYW4uZG9zZSArIHFybywgZGF0YSA9IHdvcmtlcnMpDQpkcm9wMSh3b3JrZXJzLmNvbCwgdGVzdCA9ICJDaGlzcSIpDQp3Y29sMSA8LSB1cGRhdGUod29ya2Vycy5jb2wsIC5+LiAtcXJvKQ0KdmlmKHdjb2wxKQ0Kd2NvbDIgPC0gdXBkYXRlKHdjb2wxLCAufi4gLW1lYW4uZG9zZSkNCnZpZih3Y29sMikNCndjb2wzIDwtIHVwZGF0ZSh3Y29sMSwgLn4uIC10cmVhdG1lbnQpDQp2aWYod2NvbDMpDQp3Y29sNCA8LSB1cGRhdGUod2NvbDEsIC5+LiAtcmVwbGljYXRlKQ0KdmlmKHdjb2w0KQ0Kd2NvbDUgPC0gdXBkYXRlKHdjb2w0LCAufi4gLW1lYW4uZG9zZSkNCnZpZih3Y29sNSkNCndjb2w2IDwtIHVwZGF0ZSh3Y29sNCwgLn4uIC10cmVhdG1lbnQpDQp2aWYod2NvbDYpDQojdmFyaWFibGVzIHRvIGtlZXAgZm9yIHdvcmtlciBkYXlzIGFsaXZlIG1vZGVsIC0tPiB0cmVhdG1lbnQgKyB3aG9sZS5tZWFuICsgYWxpdmUgKyBzdXJ2aXZlZCArIGNvbG9ueV9kdXJhdGlvbiArIGRyeV93ZWlnaHQgDQoNCg0KcG9sbGVuLmNvbCA8LSBsbShkaWZmZXJlbmNlfiB0cmVhdG1lbnQgKyBiZWVzX2FsaXZlICsgcmVwbGljYXRlICsgcXJvICsgY291bnQsIGRhdGEgPSBwb2xsZW4pDQpwY29sMSA8LSB1cGRhdGUocG9sbGVuLmNvbCwgLn4uIC1xcm8pDQp2aWYocGNvbDEpDQpkcm9wMShwY29sMSwgdGVzdCA9ICJDaGlzcSIpDQojdmFyaWFibGVzIHRvIGtlZXAgZm9yIHBvbGxlbiBtb2RlbCA9IHRyZWF0bWVudCArIGJlZXNfYWxpdmUgKyByZXBsaWNhdGUgKyBjb3VudA0KDQpgYGANCg0K