Packages

library(lme4)#modelo misto
library(lmerTest)#complementar ao lme4
library(dplyr)#organização de dados
library(tidyr)#organização de dados
library(emmeans)#medias e teste de media para modelo misto
library(ggplot2)#graficos
library(cowplot)#salvar graficos
library(corrplot) #correlação

DATABASE

#Weather

clima1=read.csv("D:\\Armazenamento\\DATA R\\Ensaio 1\\Datas\\clima1.csv")
clima1$data = as.Date(as.character(clima1$data, format = "%Y%m$d"))
clima1 = arrange(clima1, data)
str(clima1)
'data.frame':   730 obs. of  4 variables:
 $ Ciclo: chr  "rest" "rest" "rest" "rest" ...
 $ data : Date, format: "2022-01-01" "2022-01-01" "2022-01-02" "2022-01-02" ...
 $ group: chr  "Rainfall" "Radiation" "Rainfall" "Radiation" ...
 $ value: num  37.3 17 0.3 22.2 2.5 ...
print(clima1)

clima2=read.csv("D:\\Armazenamento\\DATA R\\Ensaio 1\\Datas\\clima2.csv")
clima2$data = as.Date(as.character(clima2$data, format = "%Y%m$d"))
clima2 = arrange(clima2, data)
str(clima2)
'data.frame':   172 obs. of  3 variables:
 $ data : Date, format: "2021-02-04" "2021-02-04" "2021-02-05" "2021-02-05" ...
 $ group: chr  "RH" "Temperature" "RH" "Temperature" ...
 $ value: num  78.4 26.7 86.4 25.3 74.1 24.4 67.2 23.4 65.3 22.8 ...
print(clima2)

#Biomass production
biomass=read.csv("D:\\Armazenamento\\DATA R\\Ensaio 1\\Datas\\biomass.csv")
biomass$Cortes=as.factor(biomass$Cortes)
biomass$Residuo=as.factor(biomass$Residuo)
biomass$Descanso=as.factor(biomass$Descanso)
biomass$Linhas=as.factor(biomass$Linhas)
biomass$PB=biomass$PB*10
str(biomass)
'data.frame':   64 obs. of  29 variables:
 $ ID          : chr  "V1" "V2" "V3" "V4" ...
 $ Cortes      : Factor w/ 2 levels "1","2": 1 1 1 1 1 1 1 1 1 1 ...
 $ Residuo     : Factor w/ 2 levels "30","40": 1 1 1 1 2 2 2 2 1 1 ...
 $ Descanso    : Factor w/ 4 levels "21","28","35",..: 1 1 1 1 1 1 1 1 2 2 ...
 $ Linhas      : Factor w/ 4 levels "1","2","3","4": 1 2 3 4 1 2 3 4 1 2 ...
 $ Altura      : num  50.7 45.5 43.7 43.3 55.3 ...
 $ Perfilhos   : num  43.3 22.5 33.7 18.3 44.3 ...
 $ BiomassaMV  : num  540 135 198 140 277 ...
 $ BiomassaMS  : num  46.9 16.6 23.6 17.8 28.5 ...
 $ folhaMV     : num  719 805 774 745 744 ...
 $ cauleMV     : num  281 195 226 255 256 ...
 $ senescenteMV: num  0 0 0 0 0 0 0 0 0 0 ...
 $ folhaMS     : num  825 895 865 845 820 ...
 $ cauleMS     : num  175 105 135 155 180 ...
 $ senescenteMS: num  0 0 0 0 0 0 0 0 0 0 ...
 $ DM          : num  894 897 901 895 897 ...
 $ MM          : num  111.2 103.3 99.4 100.5 102.4 ...
 $ MO          : num  889 897 901 899 898 ...
 $ PB          : num  288 224 306 284 267 ...
 $ EE          : num  31.1 37.1 42.5 34.7 37.4 ...
 $ FDN         : num  569 546 521 594 585 ...
 $ aFDNom      : num  555 524 499 571 565 ...
 $ FDA         : num  328 353 365 372 364 ...
 $ aFDAom      : num  314 331 343 349 344 ...
 $ LDA         : num  141 177 173 194 176 ...
 $ aLDAom      : num  127 154 151 171 156 ...
 $ Temperature : num  24.2 24.2 24.2 24.2 24.2 ...
 $ RH          : num  76.4 76.4 76.4 76.4 76.4 ...
 $ Rainfall    : num  54.7 54.7 54.7 54.7 54.7 54.7 54.7 54.7 93.4 93.4 ...
print(biomass)

#Gas production
gp=read.csv("D:\\Armazenamento\\DATA R\\Ensaio 1\\Datas\\gp.csv")
gp$intensidade=as.factor(gp$intensidade)
gp$frequencia=as.factor(gp$frequencia)
gp$linhas=as.factor(gp$linhas)
gp$inoculo=as.factor(gp$inoculo)
gp$cortes=as.factor(gp$cortes)
gp$tempo=as.factor(gp$tempo)
gp$GP=as.factor(gp$GP)
str(gp)
'data.frame':   320 obs. of  44 variables:
 $ ID             : chr  "Tithônia - 30cm - 21 dias - linha 1 - 24h" "Tithônia - 30cm - 21 dias - linha 2 - 24h" "Tithônia - 30cm - 28 dias - linha 1 - 24h" "Tithônia - 30cm - 28 dias - linha 2 - 24h" ...
 $ intensidade    : Factor w/ 2 levels "30","40": 1 1 1 1 1 1 1 1 2 2 ...
 $ frequencia     : Factor w/ 4 levels "21","28","35",..: 1 1 2 2 3 3 4 4 1 1 ...
 $ linhas         : Factor w/ 4 levels "1","2","3","4": 1 2 1 2 1 2 1 2 1 2 ...
 $ tempo          : Factor w/ 2 levels "24h","48h": 1 1 1 1 1 1 1 1 1 1 ...
 $ cortes         : Factor w/ 2 levels "1","2": 1 1 1 1 1 1 1 1 1 1 ...
 $ inoculo        : Factor w/ 3 levels "1","2","3": 1 1 1 1 1 1 1 1 1 1 ...
 $ GP             : Factor w/ 3 levels "1","2","3": 1 1 1 1 1 1 1 1 1 1 ...
 $ DM.gkg         : num  894 897 897 897 893 ...
 $ OM.gkg         : num  778 793 785 751 789 ...
 $ FDN.gkg        : num  555 524 557 481 560 ...
 $ DM.g           : num  0.895 0.897 0.897 0.898 0.894 0.893 0.893 0.906 0.906 0.908 ...
 $ OM.g           : num  0.696 0.712 0.704 0.674 0.705 0.71 0.722 0.746 0.72 0.716 ...
 $ FDN.g          : num  0.497 0.47 0.5 0.431 0.501 0.543 0.594 0.599 0.512 0.497 ...
 $ h2             : num  16.9 17.8 19.7 15.9 13.2 ...
 $ h4             : num  12.2 12.1 13.2 10.3 11.6 ...
 $ h8             : num  20.3 23.9 24.5 13 20.4 ...
 $ h14            : num  36.1 42.8 46.6 31.4 38.4 ...
 $ h24            : num  21.2 23.5 22.3 21.3 19 ...
 $ NetGP24h.mLgOM : num  71 84.1 90.6 56.1 66.9 ...
 $ NetGP48h.mLgOM : num  71 84.1 90.6 56.1 66.9 ...
 $ NetCH424h.mLgOM: num  1.1 3.543 4.369 0.218 3.062 ...
 $ NetCH448h.mLgOM: num  0 0 0 0 0 0 0 0 0 0 ...
 $ MOVD.g         : num  0.49 0.449 0.407 0.482 0.362 0.348 0.316 0.33 0.504 0.485 ...
 $ DMO.gkg        : num  705 631 578 714 513 ...
 $ FDND.g         : num  0.292 0.208 0.203 0.239 0.158 0.181 0.188 0.183 0.295 0.266 ...
 $ DFDN.gkg       : num  586 441 405 553 315 ...
 $ pH             : num  6.88 6.76 6.64 6.84 6.76 6.6 6.66 6.76 6.86 6.78 ...
 $ Namoniacal     : num  0.052 0.058 0.035 0.057 0.032 0.034 0.028 0.036 0.053 0.045 ...
 $ PF             : num  4.59 3.74 3.22 5.25 3.53 ...
 $ AGVtotal       : num  1.45 1.45 1.43 1.45 1.38 ...
 $ Acetico        : num  1.06 1.05 1.04 1.06 1.01 ...
 $ Propionico     : num  0.246 0.252 0.252 0.235 0.232 0.265 0.235 0.235 0.273 0.249 ...
 $ Butirico       : num  0.084 0.098 0.098 0.087 0.092 0.107 0.098 0.097 0.102 0.093 ...
 $ Valerico       : num  0.012 0.014 0.01 0.013 0.01 0.01 0.009 0.009 0.013 0.012 ...
 $ Isobutirico    : num  0.019 0.018 0.016 0.019 0.014 0.012 0.012 0.01 0.019 0.021 ...
 $ Isovalerico    : num  0.024 0.02 0.019 0.027 0.019 0.019 0.016 0.016 0.023 0.024 ...
 $ A.P            : num  4.31 4.17 4.11 4.54 4.35 ...
 $ MOincubada     : num  696 712 704 674 705 ...
 $ MOVD           : num  490 449 407 482 362 ...
 $ MOndegrad      : num  0.206 0.263 0.297 0.193 0.343 0.362 0.405 0.416 0.216 0.231 ...
 $ MO.AGV         : num  89.4 90.5 89.6 89 85.9 ...
 $ MO.CO2.CH4.H2O : num  58.2 59.1 58.3 58.7 56.5 ...
 $ MO.Bio.Micro   : num  343 299 259 334 220 ...
print(gp)

#Calibration curve
curve=read.csv("D:\\Armazenamento\\DATA R\\Ensaio 1\\Datas\\curve.csv")
curve
str(curve)
'data.frame':   322 obs. of  3 variables:
 $ psi   : num  0.16 0.22 0.26 0.21 0.15 0.24 0.27 0.26 0.27 0.18 ...
 $ Volume: num  1.2 1.5 1.6 1.5 1 1.8 1.8 1.8 1.8 1.2 ...
 $ X     : logi  NA NA NA NA NA NA ...
print(curve)

WEATHER CONDITIONS



#CUT 1
datebreaks = seq(as.Date("2021-02-04"), as.Date("2021-03-18"), by = "2 day")

p1=ggplot() +
  geom_bar(data = clima1[-c(87:172),], aes(data,value*1.3,fill=group),stat="identity",position = "dodge", width = 1)+
  geom_point(data = clima2[-c(87:172),], aes(data, value, shape=group), size=2)+
  geom_line(data = clima2[-c(87:172),], aes(data, value, group = group), color = "black")+
  scale_shape_manual(values = c(16, 15), name= NULL,labels = c("Relative humidity (%)","Temperature (ºC)"))+
  scale_fill_manual(values=c("darkblue", "gray28"), name= NULL,labels=c("Radiation (MJ/m2 day)","Rainfall (mm)"))+
  scale_y_continuous(name= "Relative humidity (%); Temperature (ºC)",breaks = seq(0, 125, 5),   sec.axis=sec_axis(~./1.3,name="Radiation (MJ/m2 day); Rainfall (mm)",breaks=seq(0,98,4)))+coord_cartesian(ylim = c(0,120))+scale_x_date(name=NULL,breaks = datebreaks)
p1

cut1=p1+theme(panel.background = element_rect(fill = "transparent"),
            legend.position = c(0.25, 0.88), 
            legend.direction="horizontal",
            legend.background = element_rect(fill = "transparent", size=0.5, linetype="solid",colour ="black"),
            legend.key.height = unit(0.4,"cm"),  
            legend.key.width = unit(0.4,"cm"),
            legend.text = element_text(size=10),
            axis.line = element_line(colour = "black", size = 0.7, linetype = "solid"),
            axis.text.x = element_text(angle = 30, hjust = 1,size = 9),
            axis.title.y = element_text(size = 12),
            axis.text.y = element_text(size = 9)
            )
cut1

#CUT 2
datebreaks1 = seq(as.Date("2022-10-27"), as.Date("2022-12-08"), by = "2 day")

p2=ggplot() +
  geom_bar(data = clima1[-c(1:86),], aes(data,value*1.3,fill=group),stat="identity",position = "dodge", width = 1)+
  geom_point(data = clima2[-c(1:86),], aes(data, value, shape=group), size=2)+
  geom_line(data = clima2[-c(1:86),], aes(data, value, group = group), color = "black")+
  scale_shape_manual(values = c(16, 15), name= NULL,labels = c("Relative humidity (%)","Temperature (ºC)"))+
  scale_fill_manual(values=c("darkblue", "gray28"), name= NULL,labels=c("Radiation (MJ/m2 day)","Rainfall (mm)"))+
  scale_y_continuous(name= "Relative humidity (%); Temperature (ºC)",breaks = seq(0, 125, 5),   sec.axis=sec_axis(~./1.3,name="Radiation (MJ/m2 day); Rainfall (mm)",breaks=seq(0,98,4)))+coord_cartesian(ylim = c(0,120))+scale_x_date(name=NULL,breaks = datebreaks1)
p2

cut2=p2+theme(panel.background = element_rect(fill = "transparent"),
            legend.position = c(0.25, 0.88), 
            legend.direction="horizontal",
            legend.background = element_rect(fill = "transparent", size=0.5, linetype="solid",colour ="black"),
            legend.key.height = unit(0.4,"cm"),  
            legend.key.width = unit(0.4,"cm"),
            legend.text = element_text(size=10),
            axis.line = element_line(colour = "black", size = 0.7, linetype = "solid"),
            axis.text.x = element_text(angle = 30, hjust = 1,size = 9),
            axis.title.y = element_text(size = 12),
            axis.text.y = element_text(size = 9))
cut2

BIOMASS PRODUCTION

1- Canopy height (cm)

#outliers
boxplot(biomass$Altura)

#model

mod1 = lmer(Altura~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
summary(mod1)
Linear mixed model fit by REML. t-tests use Satterthwaite's method ['lmerModLmerTest']
Formula: Altura ~ Residuo * Descanso + (1 | Linhas) + (1 | Cortes)
   Data: biomass

REML criterion at convergence: 481.4

Scaled residuals: 
     Min       1Q   Median       3Q      Max 
-2.09801 -0.60398  0.01479  0.70538  1.84287 

Random effects:
 Groups   Name        Variance Std.Dev.
 Linhas   (Intercept)  14.91    3.862  
 Cortes   (Intercept) 497.82   22.312  
 Residual             209.08   14.460  
Number of obs: 64, groups:  Linhas, 4; Cortes, 2

Fixed effects:
                     Estimate Std. Error     df t value Pr(>|t|)    
(Intercept)            45.834     16.696  1.222   2.745   0.1844    
Residuo40              10.999      7.230 52.000   1.521   0.1342    
Descanso28             17.979      7.230 52.000   2.487   0.0161 *  
Descanso35             37.625      7.230 52.000   5.204 3.36e-06 ***
Descanso42             55.583      7.230 52.000   7.688 3.97e-10 ***
Residuo40:Descanso28   -1.333     10.224 52.000  -0.130   0.8968    
Residuo40:Descanso35    2.437     10.224 52.000   0.238   0.8125    
Residuo40:Descanso42   -1.728     10.224 52.000  -0.169   0.8665    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Correlation of Fixed Effects:
            (Intr) Resd40 Dscn28 Dscn35 Dscn42 R40:D2 R40:D3
Residuo40   -0.217                                          
Descanso28  -0.217  0.500                                   
Descanso35  -0.217  0.500  0.500                            
Descanso42  -0.217  0.500  0.500  0.500                     
Rsd40:Dsc28  0.153 -0.707 -0.707 -0.354 -0.354              
Rsd40:Dsc35  0.153 -0.707 -0.354 -0.707 -0.354  0.500       
Rsd40:Dsc42  0.153 -0.707 -0.354 -0.354 -0.707  0.500  0.500
hist(resid(mod1))

shapiro.test(resid(mod1))

    Shapiro-Wilk normality test

data:  resid(mod1)
W = 0.98519, p-value = 0.6393
bartlett.test(resid(mod1)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod1) by interaction(Residuo, Descanso)
Bartlett's K-squared = 12.202, df = 7, p-value = 0.09412
#Anova e regressão
anova(mod1)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo           1881.2  1881.2     1    52  8.9975  0.004143 ** 
Descanso         27670.2  9223.4     3    52 44.1145 2.553e-14 ***
Residuo:Descanso    42.4    14.1     3    52  0.0676  0.976874    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias1=emmeans(mod1,~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias1.1=emmeans(mod1,~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias1)
 Residuo emmean   SE   df lower.CL upper.CL
 30        73.6 16.1 1.06   -107.0      254
 40        84.5 16.1 1.06    -96.2      265

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias1.1)
 Descanso emmean   SE   df lower.CL upper.CL
 21         51.3 16.3 1.11   -113.1      216
 28         68.6 16.3 1.11    -95.8      233
 35         90.2 16.3 1.11    -74.2      255
 42        106.1 16.3 1.11    -58.4      270

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg1=lm(Altura~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg1)

Call:
lm(formula = Altura ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-52.046 -13.502  -1.942  13.117  50.974 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               79.052      2.788  28.349  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1  166.084     22.308   7.445 3.97e-10 ***
poly(as.numeric(Descanso), degree = 2)2   -2.875     22.308  -0.129    0.898    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 22.31 on 61 degrees of freedom
Multiple R-squared:  0.4762,    Adjusted R-squared:  0.459 
F-statistic: 27.72 on 2 and 61 DF,  p-value: 2.727e-09

2- Branches (n)

#outliers
boxplot(biomass$Perfilhos)

#model
mod2 = lmer(Perfilhos~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
mod2.1 = lmer(Perfilhos^0.8~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
summary(mod2.1)
Linear mixed model fit by REML. t-tests use Satterthwaite's method ['lmerModLmerTest']
Formula: Perfilhos^0.8 ~ Residuo * Descanso + (1 | Linhas) + (1 | Cortes)
   Data: biomass

REML criterion at convergence: 367.3

Scaled residuals: 
     Min       1Q   Median       3Q      Max 
-1.49651 -0.75457 -0.01644  0.64074  2.06486 

Random effects:
 Groups   Name        Variance Std.Dev.
 Linhas   (Intercept)  1.446   1.202   
 Cortes   (Intercept) 49.339   7.024   
 Residual             27.635   5.257   
Number of obs: 64, groups:  Linhas, 4; Cortes, 2

Fixed effects:
                     Estimate Std. Error     df t value Pr(>|t|)  
(Intercept)            22.584      5.337  1.287   4.232   0.1045  
Residuo40               5.106      2.628 52.000   1.943   0.0575 .
Descanso28              5.912      2.628 52.000   2.249   0.0288 *
Descanso35              6.982      2.628 52.000   2.656   0.0105 *
Descanso42              4.163      2.628 52.000   1.584   0.1193  
Residuo40:Descanso28   -4.413      3.717 52.000  -1.187   0.2405  
Residuo40:Descanso35   -3.043      3.717 52.000  -0.819   0.4168  
Residuo40:Descanso42   -5.759      3.717 52.000  -1.549   0.1274  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Correlation of Fixed Effects:
            (Intr) Resd40 Dscn28 Dscn35 Dscn42 R40:D2 R40:D3
Residuo40   -0.246                                          
Descanso28  -0.246  0.500                                   
Descanso35  -0.246  0.500  0.500                            
Descanso42  -0.246  0.500  0.500  0.500                     
Rsd40:Dsc28  0.174 -0.707 -0.707 -0.354 -0.354              
Rsd40:Dsc35  0.174 -0.707 -0.354 -0.707 -0.354  0.500       
Rsd40:Dsc42  0.174 -0.707 -0.354 -0.354 -0.707  0.500  0.500
hist(resid(mod2.1))

shapiro.test(resid(mod2.1))

    Shapiro-Wilk normality test

data:  resid(mod2.1)
W = 0.96642, p-value = 0.07872
bartlett.test(resid(mod2.1)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod2.1) by interaction(Residuo, Descanso)
Bartlett's K-squared = 3.0714, df = 7, p-value = 0.8783
#Anova e regressão
anova(mod2.1)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value  Pr(>F)  
Residuo           51.985  51.985     1    52  1.8812 0.17609  
Descanso         286.391  95.464     3    52  3.4545 0.02292 *
Residuo:Descanso  72.965  24.322     3    52  0.8801 0.45749  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias2=emmeans(mod2,~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias2.1=emmeans(mod2,~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias2)
 Residuo emmean   SE   df lower.CL upper.CL
 30        61.9 14.6 1.07    -98.3      222
 40        66.9 14.6 1.07    -93.3      227

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias2.1)
 Descanso emmean   SE   df lower.CL upper.CL
 21         57.3 14.8 1.14    -84.5      199
 28         67.5 14.8 1.14    -74.3      209
 35         72.7 14.8 1.14    -69.1      215
 42         60.2 14.8 1.14    -81.6      202

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg2=lm(Perfilhos~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg2)

Call:
lm(formula = Perfilhos ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-38.348 -13.135  -2.332  14.013  56.322 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               64.430      2.651  24.300   <2e-16 ***
poly(as.numeric(Descanso), degree = 2)1   12.382     21.212   0.584   0.5615    
poly(as.numeric(Descanso), degree = 2)2  -45.398     21.212  -2.140   0.0363 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 21.21 on 61 degrees of freedom
Multiple R-squared:  0.07465,   Adjusted R-squared:  0.04432 
F-statistic: 2.461 on 2 and 61 DF,  p-value: 0.09382

3- Fresh biomass (g/plant)

#outliers
boxplot(biomass$BiomassaMV)

#model
mod3 = lmer(BiomassaMV~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
mod3.1 = lmer(BiomassaMV^0.3~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
hist(resid(mod3.1))

shapiro.test(resid(mod3.1))

    Shapiro-Wilk normality test

data:  resid(mod3.1)
W = 0.9829, p-value = 0.5183
bartlett.test(resid(mod3.1)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod3.1) by interaction(Residuo, Descanso)
Bartlett's K-squared = 13.523, df = 7, p-value = 0.06035
#Anova e regressão
anova(mod3.1)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            0.852   0.852     1    55  0.7063    0.4043    
Descanso         147.530  49.177     3    55 40.7705 5.253e-14 ***
Residuo:Descanso   0.836   0.279     3    55  0.2310    0.8744    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias3=emmeans(mod3, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias3.1=emmeans(mod3, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias3)
 Residuo emmean  SE   df lower.CL upper.CL
 30        1089 538 1.04    -5110     7288
 40        1237 538 1.04    -4962     7436

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias3.1)
 Descanso emmean  SE   df lower.CL upper.CL
 21          302 549 1.13    -5006     5610
 28          779 549 1.13    -4528     6087
 35         1479 549 1.13    -3829     6787
 42         2092 549 1.13    -3216     7399

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg3 <- lm(BiomassaMV~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg3)

Call:
lm(formula = BiomassaMV ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
     Min       1Q   Median       3Q      Max 
-1726.96  -412.61   -73.09   283.01  2698.04 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               1162.9      101.7  11.436  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1   5427.5      813.5   6.671 8.48e-09 ***
poly(as.numeric(Descanso), degree = 2)2    270.4      813.5   0.332    0.741    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 813.5 on 61 degrees of freedom
Multiple R-squared:  0.4225,    Adjusted R-squared:  0.4035 
F-statistic: 22.31 on 2 and 61 DF,  p-value: 5.351e-08

4- Dry biomass (g/plant)

#outliers
boxplot(biomass$BiomassaMS)

outliers=boxplot(biomass$BiomassaMS)$out

biomass[which(biomass$BiomassaMS %in% outliers),]

#model
mod4 = lmer(BiomassaMS~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
mod4.1 = lmer(BiomassaMS^0.5~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
hist(resid(mod4.1))

shapiro.test(resid(mod4.1))

    Shapiro-Wilk normality test

data:  resid(mod4.1)
W = 0.99101, p-value = 0.9245
bartlett.test(resid(mod4.1)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod4.1) by interaction(Residuo, Descanso)
Bartlett's K-squared = 13.664, df = 7, p-value = 0.05749
#Anova e regressão
anova(mod4.1)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            3.99   3.991     1    55  0.6531    0.4225    
Descanso         709.37 236.458     3    55 38.6967 1.392e-13 ***
Residuo:Descanso   3.35   1.116     3    55  0.1826    0.9077    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias4=emmeans(mod4, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias4.1=emmeans(mod4, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias4)
 Residuo emmean   SE   df lower.CL upper.CL
 30         122 50.4 1.06     -439      682
 40         136 50.4 1.06     -425      696

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias4.1)
 Descanso emmean   SE   df lower.CL upper.CL
 21         33.4 51.9 1.19     -424      491
 28         88.3 51.9 1.19     -369      546
 35        156.9 51.9 1.19     -301      615
 42        236.3 51.9 1.19     -221      694

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg4 <- lm(BiomassaMS~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg4)

Call:
lm(formula = BiomassaMS ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
     Min       1Q   Median       3Q      Max 
-184.936  -33.936   -3.048   29.267  257.894 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               128.72      10.43  12.346  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1   605.68      83.41   7.262 8.22e-10 ***
poly(as.numeric(Descanso), degree = 2)2    49.02      83.41   0.588    0.559    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 83.41 on 61 degrees of freedom
Multiple R-squared:  0.4653,    Adjusted R-squared:  0.4478 
F-statistic: 26.54 on 2 and 61 DF,  p-value: 5.102e-09

5- Leaves (g kg-1 DM)

#outliers
boxplot(biomass$folhaMS)

outliers=boxplot(biomass$folhaMS)$out

biomass[which(biomass$folhaMS %in% outliers),]

#model
mod5 = lmer(folhaMS~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
mod5.1 = lmer(folhaMS^0.8~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
hist(resid(mod5.1))

shapiro.test(resid(mod5.1))

    Shapiro-Wilk normality test

data:  resid(mod5.1)
W = 0.96306, p-value = 0.05258
bartlett.test(resid(mod5.1)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod5.1) by interaction(Residuo, Descanso)
Bartlett's K-squared = 6.8632, df = 7, p-value = 0.4433
#Anova e regressão
anova(mod5.1)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo             17.8    17.8     1    55  0.0823    0.7752    
Descanso         21908.2  7302.7     3    55 33.6988 1.696e-12 ***
Residuo:Descanso    87.8    29.3     3    55  0.1350    0.9387    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias5=emmeans(mod5, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias5.1=emmeans(mod5, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias5)
 Residuo emmean   SE   df lower.CL upper.CL
 30         742 61.7 1.04     22.7     1461
 40         737 61.7 1.04     17.9     1456

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias5.1)
 Descanso emmean   SE   df lower.CL upper.CL
 21          854 62.9 1.12   228.51     1480
 28          780 62.9 1.12   153.88     1406
 35          696 62.9 1.12    70.05     1322
 42          628 62.9 1.12     1.64     1253

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg5 <- lm(folhaMS~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg5)

Call:
lm(formula = folhaMS ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
     Min       1Q   Median       3Q      Max 
-188.617  -75.117    4.656   46.965  216.783 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               739.43      11.22  65.880  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1  -683.71      89.79  -7.614 2.03e-10 ***
poly(as.numeric(Descanso), degree = 2)2    12.45      89.79   0.139     0.89    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 89.79 on 61 degrees of freedom
Multiple R-squared:  0.4874,    Adjusted R-squared:  0.4706 
F-statistic:    29 on 2 and 61 DF,  p-value: 1.408e-09

6- Stems (g kg-1 DM)

#outliers
boxplot(biomass$cauleMS)


#model
mod6 = lmer(cauleMS~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
mod6.1 = lmer(cauleMS^1.1~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
hist(resid(mod6.1))

shapiro.test(resid(mod6.1))

    Shapiro-Wilk normality test

data:  resid(mod6.1)
W = 0.96385, p-value = 0.05778
bartlett.test(resid(mod6.1)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod6.1) by interaction(Residuo, Descanso)
Bartlett's K-squared = 5.2866, df = 7, p-value = 0.625
#Anova e regressão
anova(mod6.1)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo             1576    1576     1    55  0.0911    0.7639    
Descanso         1456464  485488     3    55 28.0642 3.839e-11 ***
Residuo:Descanso    5675    1892     3    55  0.1094    0.9543    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias6=emmeans(mod6, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias6.1=emmeans(mod6, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias6)
 Residuo emmean SE   df lower.CL upper.CL
 30         247 66 1.03     -530     1024
 40         252 66 1.03     -525     1029

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias6.1)
 Descanso emmean   SE  df lower.CL upper.CL
 21          146 67.1 1.1     -541      832
 28          212 67.1 1.1     -474      898
 35          287 67.1 1.1     -399      973
 42          353 67.1 1.1     -333     1040

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg6 <- lm(cauleMS~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg6)

Call:
lm(formula = cauleMS ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-218.15  -51.04   -0.67   67.75  182.91 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                              249.391     11.643  21.420  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1  624.902     93.145   6.709 7.31e-09 ***
poly(as.numeric(Descanso), degree = 2)2    1.139     93.145   0.012     0.99    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 93.14 on 61 degrees of freedom
Multiple R-squared:  0.4246,    Adjusted R-squared:  0.4057 
F-statistic:  22.5 on 2 and 61 DF,  p-value: 4.781e-08

7- Dead material (g kg-1 DM)

#outliers
boxplot(biomass$senescenteMS)


#model
mod7 = lmer(senescenteMS~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
mod7.1 = lmer(senescenteMS^0.45~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
hist(resid(mod7.1))

shapiro.test(resid(mod7.1))

    Shapiro-Wilk normality test

data:  resid(mod7.1)
W = 0.93248, p-value = 0.00172
bartlett.test(resid(mod7.1)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod7.1) by interaction(Residuo, Descanso)
Bartlett's K-squared = 10.655, df = 7, p-value = 0.1544
#Anova e regressão
anova(mod7.1)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            0.000   0.000     1    55  0.0002    0.9890    
Descanso         105.768  35.256     3    55 15.2654 2.403e-07 ***
Residuo:Descanso   1.008   0.336     3    55  0.1455    0.9322    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias7=emmeans(mod7, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias7.1=emmeans(mod7, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias7)
 Residuo emmean   SE   df lower.CL upper.CL
 30        11.3 4.64 1.33    -22.2     44.8
 40        11.0 4.64 1.33    -22.5     44.6

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias7.1)
 Descanso emmean   SE   df lower.CL upper.CL
 21         0.00 5.23 2.15   -21.09     21.1
 28         8.43 5.23 2.15   -12.66     29.5
 35        17.32 5.23 2.15    -3.77     38.4
 42        18.95 5.23 2.15    -2.14     40.0

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg7 <- lm(senescenteMS~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg7)

Call:
lm(formula = senescenteMS ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-16.161  -9.586   0.386   2.008  49.619 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               11.175      1.726   6.476 1.83e-08 ***
poly(as.numeric(Descanso), degree = 2)1   58.810     13.805   4.260 7.19e-05 ***
poly(as.numeric(Descanso), degree = 2)2  -13.585     13.805  -0.984    0.329    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 13.81 on 61 degrees of freedom
Multiple R-squared:  0.2386,    Adjusted R-squared:  0.2136 
F-statistic: 9.558 on 2 and 61 DF,  p-value: 0.000245

8- Leaf (g plant-1 DM)

biomass$leaf.accumulation=biomass$BiomassaMS*biomass$folhaMS/1000

#outliers
boxplot(biomass$leaf.accumulation)


#model
mod8 = lmer(leaf.accumulation~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
mod8.1 = lmer(leaf.accumulation^0.9~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
hist(resid(mod8.1))

shapiro.test(resid(mod8.1))

    Shapiro-Wilk normality test

data:  resid(mod8.1)
W = 0.9922, p-value = 0.9594
bartlett.test(resid(mod8.1)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod8.1) by interaction(Residuo, Descanso)
Bartlett's K-squared = 13.225, df = 7, p-value = 0.06681
#Anova e regressão
anova(mod8.1)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value   Pr(>F)    
Residuo             237   237.2     1    55  0.7155   0.4013    
Descanso          31761 10586.9     3    55 31.9429 4.32e-12 ***
Residuo:Descanso    162    53.9     3    55  0.1625   0.9211    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias8=emmeans(mod8, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias8.1=emmeans(mod8, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias8)
 Residuo emmean   SE   df lower.CL upper.CL
 30        79.2 22.1 1.07     -162      320
 40        86.1 22.1 1.07     -155      327

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias8.1)
 Descanso emmean   SE   df lower.CL upper.CL
 21         28.5 22.8 1.22   -163.4      220
 28         67.8 22.8 1.22   -124.1      260
 35        103.9 22.8 1.22    -87.9      296
 42        130.4 22.8 1.22    -61.4      322

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg8 <- lm(leaf.accumulation~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg8)

Call:
lm(formula = leaf.accumulation ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
   Min     1Q Median     3Q    Max 
-87.36 -20.35  -1.38  17.24 116.07 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                82.65       4.78  17.293  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1   306.05      38.24   8.004 4.33e-11 ***
poly(as.numeric(Descanso), degree = 2)2   -25.62      38.24  -0.670    0.505    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 38.24 on 61 degrees of freedom
Multiple R-squared:  0.514, Adjusted R-squared:  0.4981 
F-statistic: 32.26 on 2 and 61 DF,  p-value: 2.77e-10

9- Stem (g plant-1 DM)

biomass$stem.accumulation=biomass$BiomassaMS*biomass$cauleMS/1000

#outliers
boxplot(biomass$stem.accumulation)


#model
mod9 = lmer(stem.accumulation~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
mod9.1 = lmer(stem.accumulation^0.5~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
hist(resid(mod9.1))

shapiro.test(resid(mod9.1))

    Shapiro-Wilk normality test

data:  resid(mod9.1)
W = 0.97823, p-value = 0.3168
bartlett.test(resid(mod9.1)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod9.1) by interaction(Residuo, Descanso)
Bartlett's K-squared = 13.56, df = 7, p-value = 0.05959
#Anova e regressão
anova(mod9.1)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            2.07   2.073     1    55  0.4797    0.4915    
Descanso         421.93 140.645     3    55 32.5498 3.116e-12 ***
Residuo:Descanso   2.45   0.817     3    55  0.1891    0.9034    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias9=emmeans(mod9, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias9.1=emmeans(mod9, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias9)
 Residuo emmean   SE   df lower.CL upper.CL
 30        40.5 27.8 1.06     -269      350
 40        47.9 27.8 1.06     -262      358

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias9.1)
 Descanso emmean   SE   df lower.CL upper.CL
 21         4.97 28.6 1.19     -248      258
 28        19.98 28.6 1.19     -233      273
 35        51.37 28.6 1.19     -202      304
 42       100.50 28.6 1.19     -152      353

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg9 <- lm(stem.accumulation~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg9)

Call:
lm(formula = stem.accumulation ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-93.419 -11.791  -1.894  10.189 144.445 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               44.206      5.751   7.687 1.52e-10 ***
poly(as.numeric(Descanso), degree = 2)1  284.401     46.007   6.182 5.77e-08 ***
poly(as.numeric(Descanso), degree = 2)2   68.237     46.007   1.483    0.143    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 46.01 on 61 degrees of freedom
Multiple R-squared:  0.3985,    Adjusted R-squared:  0.3788 
F-statistic: 20.21 on 2 and 61 DF,  p-value: 1.848e-07

10- Dead material (g plant-1 DM)

biomass$dead.accumulation=biomass$BiomassaMS*biomass$senescenteMS/1000

#outliers
boxplot(biomass$dead.accumulation)


#model
mod10 = lmer(dead.accumulation~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
mod10.1 = lmer(dead.accumulation^0.5~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
hist(resid(mod10.1))

shapiro.test(resid(mod10.1))

    Shapiro-Wilk normality test

data:  resid(mod10.1)
W = 0.93601, p-value = 0.002484
bartlett.test(resid(mod10.1)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod10.1) by interaction(Residuo, Descanso)
Bartlett's K-squared = Inf, df = 7, p-value < 2.2e-16
#Anova e regressão
anova(mod10.1)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo           0.016  0.0159     1    56  0.0227    0.8808    
Descanso         34.620 11.5399     3    56 16.5140 8.301e-08 ***
Residuo:Descanso  0.242  0.0806     3    56  0.1153    0.9508    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias10=emmeans(mod10, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias10.1=emmeans(mod10, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias10)
 Residuo emmean    SE   df lower.CL upper.CL
 30        1.99 0.668 2.25   -0.603     4.58
 40        1.74 0.668 2.25   -0.850     4.33

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias10.1)
 Descanso emmean    SE   df lower.CL upper.CL
 21         0.00 0.881 6.62   -2.107     2.11
 28         0.54 0.881 6.62   -1.567     2.65
 35         1.59 0.881 6.62   -0.517     3.70
 42         5.33 0.881 6.62    3.222     7.44

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg10 <- lm(dead.accumulation~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg10)

Call:
lm(formula = dead.accumulation ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-4.5911 -1.9166 -0.1088  0.4001 16.9889 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                1.865      0.394   4.733 1.36e-05 ***
poly(as.numeric(Descanso), degree = 2)1   15.237      3.152   4.835 9.40e-06 ***
poly(as.numeric(Descanso), degree = 2)2    6.398      3.152   2.030   0.0467 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 3.152 on 61 degrees of freedom
Multiple R-squared:  0.3107,    Adjusted R-squared:  0.2881 
F-statistic: 13.75 on 2 and 61 DF,  p-value: 1.179e-05

Correlation

library(corrplot)
biomass$Residuo=as.numeric(biomass$Residuo)
biomass$Descanso=as.numeric(biomass$Descanso)
mcor = cor(biomass[c(3,4,6,7,9,13,14,27:31)])
mcor
                      Residuo    Descanso     Altura    Perfilhos  BiomassaMS     folhaMS     cauleMS
Residuo            1.00000000  0.00000000  0.1801751  0.116478179  0.06296935 -0.01964001  0.02125979
Descanso           0.00000000  1.00000000  0.6899347  0.071897267  0.67989476 -0.69801780  0.65159892
Altura             0.18017510  0.68993469  1.0000000 -0.212662483  0.91648327 -0.92083374  0.92504714
Perfilhos          0.11647818  0.07189727 -0.2126625  1.000000000 -0.04338641  0.14848715 -0.20225611
BiomassaMS         0.06296935  0.67989476  0.9164833 -0.043386406  1.00000000 -0.91900330  0.90670859
folhaMS           -0.01964001 -0.69801780 -0.9208337  0.148487147 -0.91900330  1.00000000 -0.99209607
cauleMS            0.02125979  0.65159892  0.9250471 -0.202256110  0.90670859 -0.99209607  1.00000000
Temperature        0.00000000  0.02389876  0.4564209 -0.694730034  0.37555736 -0.43080864  0.47269739
RH                 0.00000000  0.23880282  0.6684592 -0.649031182  0.56859062 -0.63070644  0.67168607
Rainfall           0.00000000  0.85249269  0.8656469 -0.085573851  0.81703937 -0.86451651  0.84945893
leaf.accumulation  0.06404888  0.71443769  0.9198861  0.001667017  0.97358257 -0.87860426  0.86899981
stem.accumulation  0.06399228  0.61384365  0.8802720 -0.090311488  0.98066642 -0.91620131  0.90638632
                  Temperature         RH    Rainfall leaf.accumulation stem.accumulation
Residuo            0.00000000  0.0000000  0.00000000       0.064048881        0.06399228
Descanso           0.02389876  0.2388028  0.85249269       0.714437688        0.61384365
Altura             0.45642090  0.6684592  0.86564690       0.919886149        0.88027196
Perfilhos         -0.69473003 -0.6490312 -0.08557385       0.001667017       -0.09031149
BiomassaMS         0.37555736  0.5685906  0.81703937       0.973582574        0.98066642
folhaMS           -0.43080864 -0.6307064 -0.86451651      -0.878604257       -0.91620131
cauleMS            0.47269739  0.6716861  0.84945893       0.868999805        0.90638632
Temperature        1.00000000  0.9430531  0.24522579       0.342491345        0.39772800
RH                 0.94305309  1.0000000  0.50931770       0.547869688        0.57371616
Rainfall           0.24522579  0.5093177  1.00000000       0.825694595        0.77742828
leaf.accumulation  0.34249135  0.5478697  0.82569460       1.000000000        0.91121155
stem.accumulation  0.39772800  0.5737162  0.77742828       0.911211552        1.00000000
colnames(mcor) <- c("Intensity","Frequency", "Canopy height", "Branches (n)", "Biomass production", "Leaf proportion", "Stem proportion", "Temperature", "Relative Humidity", "Rainfall", "Global radiation", "Leaf production")

rownames(mcor) <- c("Intensity","Frequency", "Canopy height", "Branches (n)", "Biomass production", "Leaf proportion", "Stem proportion", "Temperature", "Relative Humidity", "Rainfall", "Global radiation","Leaf production")
testRes = cor.mtest(mcor, conf.level = 0.95)

par(family="sans")

corrplot(mcor, 
                           p.mat = testRes$p, 
                           method = "color", 
                           tl.col = "black", 
                           tl.cex = 0.8,
                           type = "upper",
                           order = "AOE",
                           #hclust.method = "centroid",
                           insig = "blank", 
                           number.cex = 0.7, 
                           addgrid.col = "black", 
                           col = colorRampPalette(c("#8C510A","#f5f5f5","#1B7E76"))(100),
                           cl.length = 11,
                           addCoef.col = "black")

biomass$Residuo=as.factor(biomass$Residuo)
biomass$Descanso=as.factor(biomass$Descanso)

BROMATOLOGIA

11- DM

#outliers
boxplot(biomass$DM)

#model
mod11 = lmer(DM~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
mod11.1 = lmer(sqrt(max(DM+1) - DM)~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
hist(resid(mod11.1))

shapiro.test(resid(mod11.1))

    Shapiro-Wilk normality test

data:  resid(mod11.1)
W = 0.98534, p-value = 0.6475
bartlett.test(resid(mod11.1)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod11.1) by interaction(Residuo, Descanso)
Bartlett's K-squared = 7.2958, df = 7, p-value = 0.3987
#Anova e regressão
anova(mod11.1)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF  DenDF F value    Pr(>F)    
Residuo           0.3751  0.3751     1 51.996  0.5506    0.4614    
Descanso         24.0639  8.0213     3 51.996 11.7745 5.343e-06 ***
Residuo:Descanso  1.8757  0.6252     3 51.996  0.9178    0.4388    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias11=emmeans(mod11, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias11.1=emmeans(mod11, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias11)
 Residuo emmean   SE   df lower.CL upper.CL
 1          910 11.8 1.02      767     1052
 2          912 11.8 1.02      769     1054

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias11.1)
 Descanso emmean   SE   df lower.CL upper.CL
 1           906 11.9 1.05      772     1039
 2           906 11.9 1.05      772     1039
 3           916 11.9 1.05      783     1050
 4           915 11.9 1.05      782     1049

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg11 <- lm(DM~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg11)

Call:
lm(formula = DM ~ poly(as.numeric(Descanso), degree = 2), data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-47.478  -8.382   0.476  12.293  20.945 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                              910.763      1.853 491.526   <2e-16 ***
poly(as.numeric(Descanso), degree = 2)1   35.484     14.823   2.394   0.0198 *  
poly(as.numeric(Descanso), degree = 2)2   -2.554     14.823  -0.172   0.8638    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 14.82 on 61 degrees of freedom
Multiple R-squared:  0.08628,   Adjusted R-squared:  0.05632 
F-statistic:  2.88 on 2 and 61 DF,  p-value: 0.06381

12- MM

#outliers
boxplot(biomass$MM)


#model
mod12 = lmer(MM~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
boundary (singular) fit: see help('isSingular')
hist(resid(mod12))

shapiro.test(resid(mod12))

    Shapiro-Wilk normality test

data:  resid(mod12)
W = 0.98057, p-value = 0.4087
bartlett.test(resid(mod12)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod12) by interaction(Residuo, Descanso)
Bartlett's K-squared = 6.9457, df = 7, p-value = 0.4346
#Anova e regressão
anova(mod12)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value  Pr(>F)   
Residuo           15.64  15.642     1    55  0.4794 0.49160   
Descanso         591.65 197.215     3    55  6.0444 0.00124 **
Residuo:Descanso  69.68  23.225     3    55  0.7118 0.54910   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias12=emmeans(mod12, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias12.1=emmeans(mod12, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias12)
 Residuo emmean   SE   df lower.CL upper.CL
 1          101 1.24 2.06     96.2      107
 2          100 1.24 2.06     95.2      106

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias12.1)
 Descanso emmean  SE  df lower.CL upper.CL
 1         100.8 1.6 5.6     96.8      105
 2         105.8 1.6 5.6    101.8      110
 3          98.8 1.6 5.6     94.8      103
 4          98.0 1.6 5.6     94.0      102

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg12 <- lm(MM~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg12)

Call:
lm(formula = MM ~ poly(as.numeric(Descanso), degree = 2), data = biomass)

Residuals:
     Min       1Q   Median       3Q      Max 
-10.6777  -4.1532   0.1229   3.1414  21.2264 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                             100.8500     0.7523 134.055   <2e-16 ***
poly(as.numeric(Descanso), degree = 2)1 -13.7373     6.0184  -2.283   0.0260 *  
poly(as.numeric(Descanso), degree = 2)2 -11.8050     6.0184  -1.961   0.0544 .  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 6.018 on 61 degrees of freedom
Multiple R-squared:  0.1293,    Adjusted R-squared:  0.1007 
F-statistic: 4.529 on 2 and 61 DF,  p-value: 0.01466

13- PB

#outliers
boxplot(biomass$PB)


#model
mod13 = lmer(PB~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
hist(resid(mod13))

shapiro.test(resid(mod13))

    Shapiro-Wilk normality test

data:  resid(mod13)
W = 0.97546, p-value = 0.2309
bartlett.test(resid(mod13)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod13) by interaction(Residuo, Descanso)
Bartlett's K-squared = 9.1671, df = 7, p-value = 0.2409
#Anova e regressão
anova(mod13)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo             864     864     1    52  1.0524    0.3097    
Descanso         117214   39071     3    52 47.5691 6.219e-15 ***
Residuo:Descanso    294      98     3    52  0.1191    0.9485    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias13=emmeans(mod13, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias13.1=emmeans(mod13, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias13)
 Residuo emmean SE  df lower.CL upper.CL
 1          231 17 1.1     56.6      405
 2          223 17 1.1     49.2      398

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias13.1)
 Descanso emmean   SE   df lower.CL upper.CL
 1           291 17.7 1.31    159.2      423
 2           239 17.7 1.31    107.4      371
 3           198 17.7 1.31     66.5      330
 4           180 17.7 1.31     47.6      312

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg13 <- lm(PB~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg13)

Call:
lm(formula = PB ~ poly(as.numeric(Descanso), degree = 2), data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-68.012 -19.703  -2.212  15.622  92.031 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                              227.166      4.053  56.043  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1 -335.835     32.427 -10.357 4.59e-15 ***
poly(as.numeric(Descanso), degree = 2)2   65.800     32.427   2.029   0.0468 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 32.43 on 61 degrees of freedom
Multiple R-squared:  0.6461,    Adjusted R-squared:  0.6345 
F-statistic: 55.69 on 2 and 61 DF,  p-value: 1.738e-14

14- EE

#outliers
boxplot(biomass$EE)


#model
mod14 = lmer(EE~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
hist(resid(mod14))

shapiro.test(resid(mod14))

    Shapiro-Wilk normality test

data:  resid(mod14)
W = 0.98985, p-value = 0.8801
bartlett.test(resid(mod14)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod14) by interaction(Residuo, Descanso)
Bartlett's K-squared = 5.1391, df = 7, p-value = 0.643
#Anova e regressão
anova(mod14)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value  Pr(>F)  
Residuo            1.541   1.541     1    52  0.0424 0.83770  
Descanso         270.791  90.264     3    52  2.4828 0.07105 .
Residuo:Descanso 116.044  38.681     3    52  1.0640 0.37242  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias14=emmeans(mod14, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias14.1=emmeans(mod14, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias14)
 Residuo emmean   SE   df lower.CL upper.CL
 1         40.9 10.9 1.01    -93.5      175
 2         41.3 10.9 1.01    -93.2      176

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias14.1)
 Descanso emmean SE   df lower.CL upper.CL
 1          41.6 11 1.03    -87.7      171
 2          41.7 11 1.03    -87.6      171
 3          43.3 11 1.03    -86.0      173
 4          37.7 11 1.03    -91.6      167

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg14 <- lm(EE~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg14)

Call:
lm(formula = EE ~ poly(as.numeric(Descanso), degree = 2), data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-17.906 -11.201  -1.221  11.236  25.169 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               41.102      1.582  25.980   <2e-16 ***
poly(as.numeric(Descanso), degree = 2)1   -9.072     12.657  -0.717    0.476    
poly(as.numeric(Descanso), degree = 2)2  -11.329     12.657  -0.895    0.374    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 12.66 on 61 degrees of freedom
Multiple R-squared:  0.0211,    Adjusted R-squared:  -0.01099 
F-statistic: 0.6575 on 2 and 61 DF,  p-value: 0.5218

15- aFDNom

#outliers
boxplot(biomass$aFDNom)


#model
mod15 = lmer(aFDNom~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
hist(resid(mod15))

shapiro.test(resid(mod15))

    Shapiro-Wilk normality test

data:  resid(mod15)
W = 0.98286, p-value = 0.5165
bartlett.test(resid(mod15)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod15) by interaction(Residuo, Descanso)
Bartlett's K-squared = 2.3569, df = 7, p-value = 0.9375
#Anova e regressão
anova(mod15)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            4090  4090.2     1    52  4.2108  0.045218 *  
Descanso          42479 14159.8     3    52 14.5771 5.175e-07 ***
Residuo:Descanso  12415  4138.3     3    52  4.2603  0.009159 ** 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias15=emmeans(mod15, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias15.1=emmeans(mod15, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias15)
 Residuo emmean   SE  df lower.CL upper.CL
 1          567 9.45 3.1      538      597
 2          551 9.45 3.1      522      581

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias15.1)
 Descanso emmean   SE   df lower.CL upper.CL
 1           532 10.9 5.54      505      559
 2           542 10.9 5.54      515      569
 3           563 10.9 5.54      536      590
 4           599 10.9 5.54      572      627

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg15 <- lm(aFDNom~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg15)

Call:
lm(formula = aFDNom ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-111.94  -20.19    6.01   18.00   66.11 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                              559.129      4.488 124.572  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1  199.383     35.907   5.553  6.5e-07 ***
poly(as.numeric(Descanso), degree = 2)2   52.047     35.907   1.449    0.152    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 35.91 on 61 degrees of freedom
Multiple R-squared:  0.3506,    Adjusted R-squared:  0.3293 
F-statistic: 16.47 on 2 and 61 DF,  p-value: 1.912e-06

16- aFDAom

#outliers
boxplot(biomass$aFDAom)


#model
mod16 = lmer(aFDAom~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
hist(resid(mod16))

shapiro.test(resid(mod16))

    Shapiro-Wilk normality test

data:  resid(mod16)
W = 0.99301, p-value = 0.9762
bartlett.test(resid(mod16)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod16) by interaction(Residuo, Descanso)
Bartlett's K-squared = 12.812, df = 7, p-value = 0.07682
#Anova e regressão
anova(mod16)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            1098    1098     1    52  0.8842    0.3514    
Descanso          62995   20998     3    52 16.9086 8.577e-08 ***
Residuo:Descanso   6477    2159     3    52  1.7385    0.1705    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias16=emmeans(mod16, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias16.1=emmeans(mod16, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias16)
 Residuo emmean   SE   df lower.CL upper.CL
 1          398 15.8 1.17      255      541
 2          389 15.8 1.17      247      532

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias16.1)
 Descanso emmean SE   df lower.CL upper.CL
 1           350 17 1.56      253      447
 2           384 17 1.56      288      481
 3           403 17 1.56      306      500
 4           437 17 1.56      340      534

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg16 <- lm(aFDAom~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg16)

Call:
lm(formula = aFDAom ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-88.529 -25.556   3.592  22.870 111.751 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                             393.6417     4.8408  81.318  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1 249.4407    38.7261   6.441  2.1e-08 ***
poly(as.numeric(Descanso), degree = 2)2  -0.3612    38.7261  -0.009    0.993    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 38.73 on 61 degrees of freedom
Multiple R-squared:  0.4048,    Adjusted R-squared:  0.3853 
F-statistic: 20.74 on 2 and 61 DF,  p-value: 1.34e-07

17- aLDAom

#outliers
boxplot(biomass$aLDAom)


#model
mod17 = lmer(aLDAom~Residuo*Descanso+(1|Linhas)+(1|Cortes), data = biomass)
hist(resid(mod17))

shapiro.test(resid(mod17))

    Shapiro-Wilk normality test

data:  resid(mod17)
W = 0.98307, p-value = 0.5267
bartlett.test(resid(mod17)~interaction(Residuo, Descanso), data=biomass)

    Bartlett test of homogeneity of variances

data:  resid(mod17) by interaction(Residuo, Descanso)
Bartlett's K-squared = 14.824, df = 7, p-value = 0.03832
library(pbkrtest)

#Anova e regressão
anova(mod17)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value Pr(>F)  
Residuo          1965.15 1965.15     1    52  4.9537 0.0304 *
Descanso          726.62  242.21     3    52  0.6105 0.6112  
Residuo:Descanso 1575.87  525.29     3    52  1.3241 0.2765  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias17=emmeans(mod17, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
medias17.1=emmeans(mod17, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(medias17)
 Residuo emmean   SE   df lower.CL upper.CL
 1          175 14.2 1.17     47.0      303
 2          164 14.2 1.17     35.9      292

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias17.1)
 Descanso emmean   SE   df lower.CL upper.CL
 1           167 14.6 1.32     60.6      274
 2           168 14.6 1.32     61.6      275
 3           175 14.6 1.32     68.7      282
 4           167 14.6 1.32     60.8      274

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg17 <- lm(aLDAom~poly(as.numeric(Descanso), degree = 2), data = biomass)
summary(reg17)

Call:
lm(formula = aLDAom ~ poly(as.numeric(Descanso), degree = 2), 
    data = biomass)

Residuals:
    Min      1Q  Median      3Q     Max 
-49.771 -17.065  -1.544  18.493  61.415 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                              169.566      3.178  53.349   <2e-16 ***
poly(as.numeric(Descanso), degree = 2)1    6.940     25.427   0.273    0.786    
poly(as.numeric(Descanso), degree = 2)2  -17.737     25.427  -0.698    0.488    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 25.43 on 61 degrees of freedom
Multiple R-squared:  0.009115,  Adjusted R-squared:  -0.02337 
F-statistic: 0.2806 on 2 and 61 DF,  p-value: 0.7563

GAS PRODUCTION

18- NetGP24h.mLgOM

#outliers
boxplot(gp$NetGP24h.mLgOM)

outliers = boxplot(gp$NetGP24h.mLgOM)$out

gp[which(gp$NetGP24h.mLgOM %in% outliers),]

#model
mod18 = lmer(NetGP24h.mLgOM~intensidade*frequencia+(1|linhas)+(1|GP), data = gp[-c(291,305,319,320),])
hist(resid(mod18))

shapiro.test(resid(mod18))

    Shapiro-Wilk normality test

data:  resid(mod18)
W = 0.99672, p-value = 0.7689
#Anova e regressão
anova(mod18)
Type III Analysis of Variance Table with Satterthwaite's method
                       Sum Sq Mean Sq NumDF  DenDF F value  Pr(>F)  
intensidade            925.13  925.13     1 303.12  6.3818 0.01204 *
frequencia             825.50  275.17     3 303.15  1.8982 0.12988  
intensidade:frequencia  67.19   22.40     3 303.19  0.1545 0.92675  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias18=emmeans(mod18, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias18.1=emmeans(mod18, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias18)
 intensidade emmean   SE   df lower.CL upper.CL
 30            83.7 8.43 2.08     48.8      119
 40            87.1 8.43 2.08     52.2      122

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias18.1)
 frequencia emmean   SE   df lower.CL upper.CL
 21           87.6 8.48 2.14     53.3      122
 28           84.7 8.48 2.14     50.3      119
 35           86.1 8.48 2.14     51.8      120
 42           83.2 8.48 2.14     48.9      118

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg18 <- lm(NetGP24h.mLgOM~poly(as.numeric(frequencia), degree = 2), data = gp[-c(291,305,319,320),])
summary(reg18)

Call:
lm(formula = NetGP24h.mLgOM ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp[-c(291, 305, 319, 320), ])

Residuals:
    Min      1Q  Median      3Q     Max 
-42.824 -12.719  -0.278  11.773  45.548 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                 86.770      0.961  90.289   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1  -23.031     17.084  -1.348    0.179    
poly(as.numeric(frequencia), degree = 2)2   -3.349     17.084  -0.196    0.845    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 17.08 on 313 degrees of freedom
Multiple R-squared:  0.005895,  Adjusted R-squared:  -0.0004574 
F-statistic: 0.928 on 2 and 313 DF,  p-value: 0.3964

19- NetGP24h.mLgDOM


gp$NetGP24h.mLgDOM=gp$NetGP24h.mLgOM/gp$DMO.gkg*1000
print(gp)
#outliers
boxplot(gp$NetGP24h.mLgDOM)


#model
mod19 = lmer(NetGP24h.mLgDOM~intensidade*frequencia+(1|linhas)+(1|GP), data = gp)
hist(resid(mod19))

shapiro.test(resid(mod19))

    Shapiro-Wilk normality test

data:  resid(mod19)
W = 0.99589, p-value = 0.5722
#Anova e regressão
anova(mod19)
Type III Analysis of Variance Table with Satterthwaite's method
                       Sum Sq Mean Sq NumDF  DenDF F value    Pr(>F)    
intensidade              2985  2985.0     1 306.13  3.6982    0.0554 .  
frequencia              68480 22826.7     3 306.13 28.2813 3.608e-16 ***
intensidade:frequencia    230    76.8     3 306.13  0.0952    0.9627    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias19=emmeans(mod19, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias19.1=emmeans(mod19, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias19)
 intensidade emmean   SE   df lower.CL upper.CL
 30             149 26.8 2.05     36.3      262
 40             155 26.8 2.05     42.5      268

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias19.1)
 frequencia emmean   SE   df lower.CL upper.CL
 21            135 26.9 2.08     23.4      247
 28            142 26.9 2.08     30.4      253
 35            159 26.9 2.08     47.2      270
 42            173 26.9 2.08     60.9      284

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg19 <- lm(NetGP24h.mLgDOM~poly(as.numeric(frequencia), degree = 2), data = gp)
summary(reg19)

Call:
lm(formula = NetGP24h.mLgDOM ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp)

Residuals:
   Min     1Q Median     3Q    Max 
-97.22 -38.56 -10.14  39.59 114.60 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                157.382      2.725  57.762  < 2e-16 ***
poly(as.numeric(frequencia), degree = 2)1  259.644     48.679   5.334 1.84e-07 ***
poly(as.numeric(frequencia), degree = 2)2   28.527     48.740   0.585    0.559    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 48.66 on 316 degrees of freedom
  (1 observation deleted due to missingness)
Multiple R-squared:  0.08353,   Adjusted R-squared:  0.07773 
F-statistic:  14.4 on 2 and 316 DF,  p-value: 1.035e-06

20- NetCH424h.mLgOM

#outliers
boxplot(gp$NetCH424h.mLgOM)

outliers = boxplot(gp$NetCH424h.mLgOM)$out

gp[which(gp$NetCH424h.mLgOM %in% outliers),]

#model
mod20 = lmer(NetCH424h.mLgOM~intensidade*frequencia+(1|linhas)+(1|GP), data = gp[-c(18),])
hist(resid(mod20))

shapiro.test(resid(mod20))

    Shapiro-Wilk normality test

data:  resid(mod20)
W = 0.99477, p-value = 0.3512
#Anova e regressão
anova(mod20)
Type III Analysis of Variance Table with Satterthwaite's method
                        Sum Sq Mean Sq NumDF  DenDF F value   Pr(>F)   
intensidade            24.5789  24.579     1 306.34  9.2977 0.002495 **
frequencia             11.1030   3.701     3 306.34  1.4000 0.242844   
intensidade:frequencia  1.4671   0.489     3 306.34  0.1850 0.906566   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias20=emmeans(mod20, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias20.1=emmeans(mod20, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias20)
 intensidade emmean    SE   df lower.CL upper.CL
 30            4.30 0.709 2.14     1.44     7.17
 40            4.86 0.708 2.14     1.99     7.73

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias20.1)
 frequencia emmean   SE   df lower.CL upper.CL
 21           4.61 0.72 2.29     1.85     7.36
 28           4.27 0.72 2.28     1.52     7.03
 35           4.69 0.72 2.28     1.93     7.45
 42           4.76 0.72 2.28     2.00     7.52

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg20 <- lm(NetCH424h.mLgOM~poly(as.numeric(frequencia), degree = 2), data = gp[-c(18),])
summary(reg20)

Call:
lm(formula = NetCH424h.mLgOM ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp[-c(18), ])

Residuals:
    Min      1Q  Median      3Q     Max 
-4.4674 -1.4381  0.0171  1.3936  5.5067 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                 4.6931     0.1073  43.743   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1   1.7271     1.9162   0.901    0.368    
poly(as.numeric(frequencia), degree = 2)2   1.8322     1.9162   0.956    0.340    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 1.916 on 316 degrees of freedom
Multiple R-squared:  0.005434,  Adjusted R-squared:  -0.0008607 
F-statistic: 0.8633 on 2 and 316 DF,  p-value: 0.4228

21- NetCH424h.mLgDOM

gp$NetCH424h.mLgDOM=gp$NetCH424h.mLgOM/gp$DMO.gkg*1000


#outliers
boxplot(gp$NetCH424h.mLgDOM)

outliers = boxplot(gp$NetCH424h.mLgDOM)$out

gp[which(gp$NetCH424h.mLgDOM %in% outliers),]

#model
mod21 = lmer(NetCH424h.mLgDOM~intensidade*frequencia+(1|linhas)+(1|GP), data = gp[-c(18),])
hist(resid(mod21))

shapiro.test(resid(mod21))

    Shapiro-Wilk normality test

data:  resid(mod21)
W = 0.99395, p-value = 0.2357
#Anova e regressão
anova(mod21)
Type III Analysis of Variance Table with Satterthwaite's method
                       Sum Sq Mean Sq NumDF  DenDF F value    Pr(>F)    
intensidade             71.13  71.132     1 305.51  8.4048  0.004013 ** 
frequencia             355.72 118.573     3 305.51 14.0103 1.398e-08 ***
intensidade:frequencia   1.70   0.566     3 305.51  0.0669  0.977419    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias21=emmeans(mod21, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias21.1=emmeans(mod21, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias21)
 intensidade emmean   SE   df lower.CL upper.CL
 30            7.71 1.75 2.08    0.469     14.9
 40            8.65 1.75 2.08    1.413     15.9

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias21.1)
 frequencia emmean   SE   df lower.CL upper.CL
 21           7.08 1.76 2.15  0.00042     14.2
 28           7.35 1.76 2.15  0.27175     14.4
 35           8.54 1.76 2.15  1.46687     15.6
 42           9.74 1.76 2.15  2.65824     16.8

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg21 <- lm(NetCH424h.mLgDOM~poly(as.numeric(frequencia), degree = 2), data = gp[-c(18),])
summary(reg21)

Call:
lm(formula = NetCH424h.mLgDOM ~ poly(as.numeric(frequencia), 
    degree = 2), data = gp[-c(18), ])

Residuals:
    Min      1Q  Median      3Q     Max 
-7.7256 -3.1622  0.0961  2.9528 13.0558 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                 8.5101     0.2175  39.122  < 2e-16 ***
poly(as.numeric(frequencia), degree = 2)1  18.2974     3.8802   4.716 3.63e-06 ***
poly(as.numeric(frequencia), degree = 2)2   4.0104     3.8851   1.032    0.303    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 3.879 on 315 degrees of freedom
  (1 observation deleted due to missingness)
Multiple R-squared:  0.06892,   Adjusted R-squared:  0.063 
F-statistic: 11.66 on 2 and 315 DF,  p-value: 1.305e-05

22- DMO.gkg

gp1  <- subset(gp[-256,], tempo==c("24h"))
gp1$MOndegrad=gp1$MOndegrad*1000

#outliers
boxplot(gp1$DMO.gkg)


#model
mod21 = lmer(DMO.gkg~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
mod21.1 = lmer(DMO.gkg^0.8~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
hist(resid(mod21.1))

shapiro.test(resid(mod21.1))

    Shapiro-Wilk normality test

data:  resid(mod21.1)
W = 0.98472, p-value = 0.07934
#Anova e regressão
anova(mod21.1)
Type III Analysis of Variance Table with Satterthwaite's method
                       Sum Sq Mean Sq NumDF  DenDF F value Pr(>F)    
intensidade               203   202.9     1 139.14  1.3630  0.245    
frequencia              35900 11966.8     3 139.08 80.3981 <2e-16 ***
intensidade:frequencia    553   184.4     3 139.03  1.2391  0.298    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias21=emmeans(mod21, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias21.1=emmeans(mod21, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias21)
 intensidade emmean   SE   df lower.CL upper.CL
 30             543 41.9 2.06      367      718
 40             553 41.9 2.06      377      728

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias21.1)
 frequencia emmean   SE   df lower.CL upper.CL
 21            631 42.3 2.15      460      802
 28            587 42.3 2.15      416      757
 35            518 42.4 2.15      347      688
 42            456 42.4 2.15      285      626

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg21 <- lm(DMO.gkg~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(reg21)

Call:
lm(formula = DMO.gkg ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
     Min       1Q   Median       3Q      Max 
-162.964  -60.235    4.807   53.080  174.421 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                540.440      6.556  82.432   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1 -829.204     82.463 -10.055   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)2  -46.615     82.666  -0.564    0.574    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 82.41 on 155 degrees of freedom
  (1 observation deleted due to missingness)
Multiple R-squared:  0.3956,    Adjusted R-squared:  0.3878 
F-statistic: 50.73 on 2 and 155 DF,  p-value: < 2.2e-16

23- DFDN.gkg

#outliers
boxplot(gp1$DFDN.gkg)


#model
mod23 = lmer(DFDN.gkg~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
boundary (singular) fit: see help('isSingular')
mod23.1 = lmer(DFDN.gkg^0.6~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
boundary (singular) fit: see help('isSingular')
hist(resid(mod23.1))

shapiro.test(resid(mod23.1))

    Shapiro-Wilk normality test

data:  resid(mod23.1)
W = 0.98683, p-value = 0.1419
#Anova e regressão
anova(mod23.1)
Type III Analysis of Variance Table with Satterthwaite's method
                        Sum Sq Mean Sq NumDF DenDF F value  Pr(>F)    
intensidade              11.48   11.48     1   148   0.551 0.45909    
frequencia             2659.89  886.63     3   148  42.537 < 2e-16 ***
intensidade:frequencia  206.54   68.85     3   148   3.303 0.02205 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias23=emmeans(mod23, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias23.1=emmeans(mod23, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias23)
 intensidade emmean   SE   df lower.CL upper.CL
 30             367 61.5 2.04      108      627
 40             360 61.5 2.04      101      620

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias23.1)
 frequencia emmean   SE   df lower.CL upper.CL
 21            456 62.2 2.13    203.6      709
 28            408 62.2 2.13    154.8      660
 35            317 62.2 2.13     65.1      570
 42            273 62.2 2.13     20.8      526

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg23 <- lm(DFDN.gkg~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(reg23)

Call:
lm(formula = DFDN.gkg ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
    Min      1Q  Median      3Q     Max 
-275.84  -89.21   13.96   82.66  254.17 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                352.743      9.646  36.570  < 2e-16 ***
poly(as.numeric(frequencia), degree = 2)1 -886.161    121.323  -7.304 1.38e-11 ***
poly(as.numeric(frequencia), degree = 2)2   27.891    121.621   0.229    0.819    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 121.2 on 155 degrees of freedom
  (1 observation deleted due to missingness)
Multiple R-squared:  0.2562,    Adjusted R-squared:  0.2466 
F-statistic:  26.7 on 2 and 155 DF,  p-value: 1.089e-10

24- Namoniacal

#outliers
boxplot(gp1$Namoniacal)


#model
mod24 = lmer(Namoniacal~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
mod24.1 = lmer(Namoniacal^0.8~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
hist(resid(mod24.1))

shapiro.test(resid(mod24.1))

    Shapiro-Wilk normality test

data:  resid(mod24.1)
W = 0.98574, p-value = 0.103
#Anova e regressão
anova(mod24.1)
Type III Analysis of Variance Table with Satterthwaite's method
                          Sum Sq    Mean Sq NumDF  DenDF F value Pr(>F)    
intensidade            0.0000028 0.00000278     1 146.21  0.0347 0.8524    
frequencia             0.0090183 0.00300609     3 146.21 37.6236 <2e-16 ***
intensidade:frequencia 0.0004928 0.00016428     3 146.21  2.0561 0.1086    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias24=emmeans(mod24, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias24.1=emmeans(mod24, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias24)
 intensidade emmean      SE   df lower.CL upper.CL
 30          0.0373 0.00136 4.00   0.0335   0.0411
 40          0.0371 0.00136 4.02   0.0333   0.0409

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias24.1)
 frequencia emmean      SE   df lower.CL upper.CL
 21         0.0438 0.00150 6.04   0.0402   0.0475
 28         0.0399 0.00150 6.04   0.0362   0.0436
 35         0.0329 0.00150 6.04   0.0292   0.0365
 42         0.0322 0.00151 6.15   0.0285   0.0359

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg24 <- lm(Namoniacal~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(reg24)

Call:
lm(formula = Namoniacal ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
       Min         1Q     Median         3Q        Max 
-0.0154409 -0.0037529 -0.0006272  0.0033100  0.0183728 

Coefficients:
                                            Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                0.0373396  0.0004907  76.093   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1 -0.0595576  0.0061877  -9.625   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)2  0.0099888  0.0061877   1.614    0.108    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.006188 on 156 degrees of freedom
Multiple R-squared:  0.3791,    Adjusted R-squared:  0.3711 
F-statistic: 47.63 on 2 and 156 DF,  p-value: < 2.2e-16

25- pH

#outliers
boxplot(gp1$pH)

outliers = boxplot(gp1$pH)$out

gp[which(gp1$pH %in% outliers),]

#model
mod25 = lmer(pH~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1[-c(138),])
mod25.1 = lmer(pH^1.2~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1[-c(138),])
hist(resid(mod25.1))

shapiro.test(resid(mod25.1))

    Shapiro-Wilk normality test

data:  resid(mod25.1)
W = 0.98307, p-value = 0.05028
#Anova e regressão
anova(mod25.1)
Type III Analysis of Variance Table with Satterthwaite's method
                         Sum Sq  Mean Sq NumDF  DenDF F value Pr(>F)  
intensidade            0.000636 0.000636     1 145.61  0.0242 0.8765  
frequencia             0.191639 0.063880     3 145.59  2.4351 0.0672 .
intensidade:frequencia 0.023624 0.007875     3 145.57  0.3002 0.8252  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias25=emmeans(mod25, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias25.1=emmeans(mod25, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias25)
 intensidade emmean    SE   df lower.CL upper.CL
 30            6.86 0.189 2.01     6.05     7.67
 40            6.86 0.189 2.01     6.05     7.67

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias25.1)
 frequencia emmean    SE   df lower.CL upper.CL
 21           6.89 0.189 2.02     6.08     7.69
 28           6.87 0.189 2.02     6.06     7.67
 35           6.84 0.189 2.02     6.03     7.64
 42           6.85 0.189 2.02     6.05     7.66

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg25 <- lm(pH~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(reg25)

Call:
lm(formula = pH ~ poly(as.numeric(frequencia), degree = 2), data = gp1)

Residuals:
    Min      1Q  Median      3Q     Max 
-6.7251 -0.2065  0.0249  0.2885  0.6149 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                6.79088    0.04866 139.568   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1 -0.41024    0.61353  -0.669    0.505    
poly(as.numeric(frequencia), degree = 2)2  0.64850    0.61353   1.057    0.292    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.6135 on 156 degrees of freedom
Multiple R-squared:  0.009928,  Adjusted R-squared:  -0.002765 
F-statistic: 0.7822 on 2 and 156 DF,  p-value: 0.4592

26- AGVtotal

#outliers
boxplot(gp1[-c(139),]$AGVtotal)

#model
mod26= lmer(AGVtotal~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
boundary (singular) fit: see help('isSingular')
mod26.1= lmer(AGVtotal^1.5~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
boundary (singular) fit: see help('isSingular')
hist(resid(mod26.1))

shapiro.test(resid(mod26.1))

    Shapiro-Wilk normality test

data:  resid(mod26.1)
W = 0.98592, p-value = 0.1082
#Anova e regressão
anova(mod26.1)
Type III Analysis of Variance Table with Satterthwaite's method
                        Sum Sq  Mean Sq NumDF DenDF F value  Pr(>F)  
intensidade            0.11352 0.113517     1   149  1.6095 0.20654  
frequencia             0.50097 0.166988     3   149  2.3677 0.07312 .
intensidade:frequencia 0.04688 0.015626     3   149  0.2216 0.88131  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias26=emmeans(mod26, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias26.1=emmeans(mod26, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias26)
 intensidade emmean    SE   df lower.CL upper.CL
 30            1.65 0.282 2.01    0.441     2.86
 40            1.68 0.282 2.01    0.465     2.89

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias26.1)
 frequencia emmean    SE   df lower.CL upper.CL
 21           1.70 0.282 2.02    0.492     2.90
 28           1.68 0.282 2.02    0.472     2.88
 35           1.66 0.282 2.02    0.450     2.86
 42           1.62 0.282 2.02    0.418     2.83

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg26 <- lm(AGVtotal~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(reg26)

Call:
lm(formula = AGVtotal ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
    Min      1Q  Median      3Q     Max 
-0.7480 -0.3161 -0.2405  0.4197  0.7749 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                1.71664    0.03463  49.564   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1 -0.40077    0.43673  -0.918    0.360    
poly(as.numeric(frequencia), degree = 2)2 -0.08085    0.43673  -0.185    0.853    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.4367 on 156 degrees of freedom
Multiple R-squared:  0.005586,  Adjusted R-squared:  -0.007162 
F-statistic: 0.4382 on 2 and 156 DF,  p-value: 0.646

27- Acetico100

gp1$Acetico100=gp1$Acetico*100/gp1$AGVtotal
print(gp1)

#outliers
boxplot(gp1$Acetico100)


#model
mod27= lmer(Acetico100~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
mod27.1= lmer(Acetico100^2.5~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
hist(resid(mod27.1))

shapiro.test(resid(mod27.1))#Não transforma

    Shapiro-Wilk normality test

data:  resid(mod27.1)
W = 0.93371, p-value = 9.722e-07
#Anova e regressão
anova(mod27)
Type III Analysis of Variance Table with Satterthwaite's method
                        Sum Sq Mean Sq NumDF  DenDF F value  Pr(>F)  
intensidade            14.6175 14.6175     1 146.57  3.5755 0.06061 .
frequencia             20.7978  6.9326     3 146.57  1.6957 0.17049  
intensidade:frequencia  2.4383  0.8128     3 146.57  0.1988 0.89707  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias27=emmeans(mod27, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias27.1=emmeans(mod27, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias27)
 intensidade emmean  SE   df lower.CL upper.CL
 30            71.8 2.9 2.02     59.4     84.2
 40            71.2 2.9 2.02     58.8     83.6

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias27.1)
 frequencia emmean   SE   df lower.CL upper.CL
 21           71.0 2.91 2.04     58.8     83.3
 28           71.8 2.91 2.04     59.6     84.1
 35           71.3 2.91 2.04     59.0     83.5
 42           71.9 2.91 2.04     59.6     84.1

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg27 <- lm(Acetico100~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(reg27)

Call:
lm(formula = Acetico100 ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
    Min      1Q  Median      3Q     Max 
-7.5191 -4.1433  0.4444  2.5469 11.1195 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                71.0027     0.3724 190.671   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1   3.1702     4.6956   0.675    0.501    
poly(as.numeric(frequencia), degree = 2)2  -0.3313     4.6956  -0.071    0.944    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 4.696 on 156 degrees of freedom
Multiple R-squared:  0.002945,  Adjusted R-squared:  -0.009838 
F-statistic: 0.2304 on 2 and 156 DF,  p-value: 0.7945

28- Propionico100

gp1$Propionico100=gp1$Propionico*100/gp1$AGVtotal
print(gp1)

#outliers
boxplot(gp1$Propionico100)


#model
mod28= lmer(Propionico100~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
hist(resid(mod28))

shapiro.test(resid(mod28))

    Shapiro-Wilk normality test

data:  resid(mod28)
W = 0.98625, p-value = 0.1184
#Anova e regressão
anova(mod28)
Type III Analysis of Variance Table with Satterthwaite's method
                        Sum Sq Mean Sq NumDF  DenDF F value  Pr(>F)  
intensidade             9.9968  9.9968     1 146.83  4.3562 0.03860 *
frequencia             16.0441  5.3480     3 146.83  2.3304 0.07673 .
intensidade:frequencia  1.2745  0.4248     3 146.83  0.1851 0.90638  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias28=emmeans(mod28, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias28.1=emmeans(mod28, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias28)
 intensidade emmean   SE   df lower.CL upper.CL
 30            16.9 1.52 2.03     10.4     23.3
 40            17.4 1.52 2.03     10.9     23.8

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias28.1)
 frequencia emmean   SE   df lower.CL upper.CL
 21           17.4 1.53 2.08     11.0     23.8
 28           16.9 1.53 2.08     10.5     23.3
 35           17.5 1.53 2.08     11.1     23.8
 42           16.7 1.53 2.08     10.4     23.1

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg28 <- lm(Propionico100~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(reg28)

Call:
lm(formula = Propionico100 ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
    Min      1Q  Median      3Q     Max 
-6.5318 -1.5500 -0.1898  2.1086  5.8820 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                17.3822     0.2139  81.266   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1  -2.2364     2.6971  -0.829    0.408    
poly(as.numeric(frequencia), degree = 2)2  -0.9254     2.6971  -0.343    0.732    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.697 on 156 degrees of freedom
Multiple R-squared:  0.005136,  Adjusted R-squared:  -0.007619 
F-statistic: 0.4027 on 2 and 156 DF,  p-value: 0.6692

29- Butirico100

gp1$Butirico100=gp1$Butirico*100/gp1$AGVtotal
print(gp1)

#outliers
boxplot(gp1$Butirico100)


#model
mod29= lmer(Butirico100~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
hist(resid(mod29))

shapiro.test(resid(mod29))

    Shapiro-Wilk normality test

data:  resid(mod29)
W = 0.99275, p-value = 0.607
#Anova e regressão
anova(mod29)
Type III Analysis of Variance Table with Satterthwaite's method
                       Sum Sq Mean Sq NumDF  DenDF F value   Pr(>F)   
intensidade            0.0553 0.05529     1 145.66  0.0835 0.773038   
frequencia             9.3320 3.11065     3 145.66  4.6970 0.003678 **
intensidade:frequencia 0.6955 0.23182     3 145.66  0.3500 0.789167   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias29=emmeans(mod29, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias29.1=emmeans(mod29, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias29)
 intensidade emmean   SE   df lower.CL upper.CL
 30            8.16 1.14 2.06     3.40     12.9
 40            8.20 1.14 2.07     3.43     13.0

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias29.1)
 frequencia emmean   SE   df lower.CL upper.CL
 21           7.98 1.14 2.09     3.26     12.7
 28           7.90 1.14 2.09     3.18     12.6
 35           8.34 1.14 2.09     3.62     13.1
 42           8.49 1.14 2.09     3.77     13.2

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg29 <- lm(Butirico100~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(reg29)

Call:
lm(formula = Butirico100 ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.9532 -1.4756 -0.4676  1.8709  3.5036 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                 8.3906     0.1489  56.341   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1   2.5765     1.8779   1.372    0.172    
poly(as.numeric(frequencia), degree = 2)2   0.5758     1.8779   0.307    0.760    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 1.878 on 156 degrees of freedom
Multiple R-squared:  0.01251,   Adjusted R-squared:  -0.0001483 
F-statistic: 0.9883 on 2 and 156 DF,  p-value: 0.3745

30- Valerico100

gp1$Valerico100=gp1$Valerico*100/gp1$AGVtotal

#outliers
boxplot(gp1$Valerico100)


#model
mod30= lmer(Valerico100~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
mod30.1= lmer(Valerico100^1.3~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
hist(resid(mod30.1))

shapiro.test(resid(mod30.1))

    Shapiro-Wilk normality test

data:  resid(mod30.1)
W = 0.98396, p-value = 0.06269
#Anova e regressão
anova(mod30.1)
Type III Analysis of Variance Table with Satterthwaite's method
                        Sum Sq Mean Sq NumDF  DenDF F value Pr(>F)    
intensidade            0.00001 0.00001     1 145.09  0.0011 0.9739    
frequencia             1.86799 0.62266     3 145.09 44.8371 <2e-16 ***
intensidade:frequencia 0.04917 0.01639     3 145.09  1.1802 0.3195    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias30=emmeans(mod30, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias30.1=emmeans(mod30, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias30)
 intensidade emmean     SE   df lower.CL upper.CL
 30            0.81 0.0363 2.71    0.687    0.933
 40            0.81 0.0363 2.71    0.688    0.933

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias30.1)
 frequencia emmean     SE   df lower.CL upper.CL
 21          0.936 0.0379 3.21    0.820    1.052
 28          0.849 0.0379 3.21    0.733    0.965
 35          0.738 0.0379 3.21    0.622    0.854
 42          0.718 0.0380 3.24    0.602    0.833

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg30 <- lm(Valerico100~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(reg30)

Call:
lm(formula = Valerico100 ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
      Min        1Q    Median        3Q       Max 
-0.298347 -0.055428  0.009147  0.069004  0.286687 

Coefficients:
                                           Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                0.815724   0.008587  94.998   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1 -1.088625   0.108274 -10.054   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)2  0.200008   0.108274   1.847   0.0666 .  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.1083 on 156 degrees of freedom
Multiple R-squared:  0.4012,    Adjusted R-squared:  0.3935 
F-statistic: 52.25 on 2 and 156 DF,  p-value: < 2.2e-16

31- Isobutirico100

gp1$Isobutirico100=gp1$Isobutirico*100/gp1$AGVtotal

#outliers
boxplot(gp1$Isobutirico100)


#model
mod31= lmer(Isobutirico100~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
boundary (singular) fit: see help('isSingular')
hist(resid(mod31))

shapiro.test(resid(mod31))

    Shapiro-Wilk normality test

data:  resid(mod31)
W = 0.99209, p-value = 0.5298
#Anova e regressão
anova(mod31)
Type III Analysis of Variance Table with Satterthwaite's method
                        Sum Sq Mean Sq NumDF DenDF F value   Pr(>F)    
intensidade            0.22698 0.22698     1   149  2.3471 0.127637    
frequencia             1.94011 0.64670     3   149  6.6872 0.000289 ***
intensidade:frequencia 0.07933 0.02644     3   149  0.2734 0.844482    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias31=emmeans(mod31, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias31.1=emmeans(mod31, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias31)
 intensidade emmean    SE   df lower.CL upper.CL
 30           0.795 0.342 2.02   -0.663     2.25
 40           0.871 0.342 2.02   -0.587     2.33

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias31.1)
 frequencia emmean    SE   df lower.CL upper.CL
 21          0.964 0.344 2.06   -0.475     2.40
 28          0.909 0.344 2.06   -0.529     2.35
 35          0.683 0.344 2.06   -0.755     2.12
 42          0.777 0.344 2.06   -0.660     2.21

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg31 <- lm(Isobutirico100~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(reg31)

Call:
lm(formula = Isobutirico100 ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.79052 -0.52116 -0.06973  0.47401  1.30793 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                0.83223    0.04435  18.764   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1 -1.11996    0.55927  -2.003    0.047 *  
poly(as.numeric(frequencia), degree = 2)2  0.45987    0.55927   0.822    0.412    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.5593 on 156 degrees of freedom
Multiple R-squared:  0.02916,   Adjusted R-squared:  0.01672 
F-statistic: 2.343 on 2 and 156 DF,  p-value: 0.0994

32- Isovalerico100

gp1$Isovalerico100=gp1$Isovalerico*100/gp1$AGVtotal

#outliers
boxplot(gp1$Isovalerico100)


#model
mod32 = lmer(Isovalerico100~intensidade*frequencia+(1|linhas)+(1|GP), data = gp1)
boundary (singular) fit: see help('isSingular')
hist(resid(mod32))

shapiro.test(resid(mod32))

    Shapiro-Wilk normality test

data:  resid(mod32)
W = 0.9924, p-value = 0.5658
#Anova e regressão
anova(mod32)
Type III Analysis of Variance Table with Satterthwaite's method
                        Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
intensidade            0.01293 0.01293     1   149  0.1982    0.6569    
frequencia             1.67481 0.55827     3   149  8.5531 2.813e-05 ***
intensidade:frequencia 0.05609 0.01870     3   149  0.2864    0.8351    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
medias32=emmeans(mod32, ~ intensidade)
NOTE: Results may be misleading due to involvement in interactions
medias32.1=emmeans(mod32, ~ frequencia)
NOTE: Results may be misleading due to involvement in interactions
summary(medias32)
 intensidade emmean    SE   df lower.CL upper.CL
 30            1.57 0.173 2.06    0.851     2.30
 40            1.56 0.173 2.06    0.833     2.28

Results are averaged over the levels of: frequencia 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(medias32.1)
 frequencia emmean    SE   df lower.CL upper.CL
 21           1.71 0.175 2.17    1.007     2.40
 28           1.61 0.175 2.17    0.916     2.31
 35           1.50 0.175 2.17    0.804     2.20
 42           1.44 0.175 2.18    0.740     2.14

Results are averaged over the levels of: intensidade 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
reg32 <- lm(Isovalerico100~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(reg32)

Call:
lm(formula = Isovalerico100 ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
     Min       1Q   Median       3Q      Max 
-0.78134 -0.25015 -0.03919  0.24564  0.92062 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                1.57764    0.02730  57.787  < 2e-16 ***
poly(as.numeric(frequencia), degree = 2)1 -1.30223    0.34425  -3.783 0.000221 ***
poly(as.numeric(frequencia), degree = 2)2  0.07106    0.34425   0.206 0.836743    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.3443 on 156 degrees of freedom
Multiple R-squared:  0.08425,   Adjusted R-squared:  0.07251 
F-statistic: 7.176 on 2 and 156 DF,  p-value: 0.001044

ACCUMULATION

Data


str(biomass)
'data.frame':   64 obs. of  32 variables:
 $ ID               : chr  "V1" "V2" "V3" "V4" ...
 $ Cortes           : Factor w/ 2 levels "1","2": 1 1 1 1 1 1 1 1 1 1 ...
 $ Residuo          : Factor w/ 2 levels "1","2": 1 1 1 1 2 2 2 2 1 1 ...
 $ Descanso         : Factor w/ 4 levels "1","2","3","4": 1 1 1 1 1 1 1 1 2 2 ...
 $ Linhas           : Factor w/ 4 levels "1","2","3","4": 1 2 3 4 1 2 3 4 1 2 ...
 $ Altura           : num  50.7 45.5 43.7 43.3 55.3 ...
 $ Perfilhos        : num  43.3 22.5 33.7 18.3 44.3 ...
 $ BiomassaMV       : num  540 135 198 140 277 ...
 $ BiomassaMS       : num  46.9 16.6 23.6 17.8 28.5 ...
 $ folhaMV          : num  719 805 774 745 744 ...
 $ cauleMV          : num  281 195 226 255 256 ...
 $ senescenteMV     : num  0 0 0 0 0 0 0 0 0 0 ...
 $ folhaMS          : num  825 895 865 845 820 ...
 $ cauleMS          : num  175 105 135 155 180 ...
 $ senescenteMS     : num  0 0 0 0 0 0 0 0 0 0 ...
 $ DM               : num  894 897 901 895 897 ...
 $ MM               : num  111.2 103.3 99.4 100.5 102.4 ...
 $ MO               : num  889 897 901 899 898 ...
 $ PB               : num  288 224 306 284 267 ...
 $ EE               : num  31.1 37.1 42.5 34.7 37.4 ...
 $ FDN              : num  569 546 521 594 585 ...
 $ aFDNom           : num  555 524 499 571 565 ...
 $ FDA              : num  328 353 365 372 364 ...
 $ aFDAom           : num  314 331 343 349 344 ...
 $ LDA              : num  141 177 173 194 176 ...
 $ aLDAom           : num  127 154 151 171 156 ...
 $ Temperature      : num  24.2 24.2 24.2 24.2 24.2 ...
 $ RH               : num  76.4 76.4 76.4 76.4 76.4 ...
 $ Rainfall         : num  54.7 54.7 54.7 54.7 54.7 54.7 54.7 54.7 93.4 93.4 ...
 $ leaf.accumulation: num  38.7 14.8 20.4 15.1 23.4 ...
 $ stem.accumulation: num  8.19 1.74 3.19 2.77 5.15 ...
 $ dead.accumulation: num  0 0 0 0 0 0 0 0 0 0 ...
#Summary - Biomass
biomass_summary = group_by(biomass, Residuo, Descanso, Linhas) %>% 
  summarise(
    BiomassaMS = mean(BiomassaMS, na.rm = TRUE),
    folhaMS = mean(folhaMS, na.rm = TRUE),
    cauleMS = mean(cauleMS, na.rm = TRUE),
    senescenteMS= mean(senescenteMS, na.rm = TRUE),
    PB = mean(PB, na.rm = TRUE),
    aFDNom = mean(aFDNom, na.rm = TRUE),
    aFDAom = mean(aFDAom, na.rm = TRUE),
    MM = mean(MM, na.rm = TRUE), 
    EE = mean(EE, na.rm = TRUE), 
    LDAom= mean(aLDAom, na.rm = TRUE)
    )%>%
  print(biomass_summary)
`summarise()` has grouped output by 'Residuo', 'Descanso'. You can override using the `.groups` argument.
#Summary - Gas production
gp_summary = group_by(gp1, intensidade, frequencia, linhas) %>% 
  summarise(
    MOVD = mean(MOVD, na.rm = TRUE),
    FDND.g = mean(FDND.g, na.rm = TRUE),
    MO.AGV = mean(MO.AGV, na.rm = TRUE),
    MO.Bio.Micro = mean(MO.Bio.Micro, na.rm = TRUE),
    MO.CO2.CH4.H2O = mean(MO.CO2.CH4.H2O, na.rm = TRUE)
    )%>%
  print(gp_summary)
`summarise()` has grouped output by 'intensidade', 'frequencia'. You can override using the `.groups` argument.
#Summary - Accumulation
acc = group_by(biomass, Residuo, Descanso, Linhas) %>%
  summarise(BiomassaMS = mean(BiomassaMS, na.rm = TRUE))%>%
  print(acc)
`summarise()` has grouped output by 'Residuo', 'Descanso'. You can override using the `.groups` argument.
acc$Leaves=biomass_summary$BiomassaMS*biomass_summary$folhaMS/1000
acc$Stems=biomass_summary$BiomassaMS*biomass_summary$cauleMS/1000
acc$Deadmaterial=biomass_summary$BiomassaMS*biomass_summary$senescenteMS/1000
acc$CP=biomass_summary$BiomassaMS*biomass_summary$PB/1000
acc$aFDNom=biomass_summary$BiomassaMS*biomass_summary$aFDNom/1000
acc$FDAom=biomass_summary$BiomassaMS*biomass_summary$aFDAom/1000
acc$Ash=biomass_summary$BiomassaMS*biomass_summary$MM/1000
acc$EE=biomass_summary$BiomassaMS*biomass_summary$EE/1000
acc$LDAom=biomass_summary$BiomassaMS*biomass_summary$LDAom/1000

acc$IVDOM=biomass_summary$BiomassaMS*gp_summary$MOVD/1000
acc$IVDNDF=biomass_summary$BiomassaMS*gp_summary$FDND.g
acc$AGCC=biomass_summary$BiomassaMS*gp_summary$MO.AGV/1000
acc$MB=biomass_summary$BiomassaMS*gp_summary$MO.Bio.Micro/1000
acc$Gas=biomass_summary$BiomassaMS*gp_summary$MO.CO2.CH4.H2O/1000

print(acc)

acumulativo1=gather(acc, variables, value, BiomassaMS,Leaves,Stems,Deadmaterial,CP,aFDNom,FDAom)
acumulativo2=gather(acc, variables, value, IVDOM,AGCC,MB,Gas)

print(acumulativo1)
print(acumulativo2)

Exploratory analyse

P3=ggplot() +
  geom_bar(data = acumulativo2, aes(Descanso,value, fill=variables),stat="identity",position = "dodge", width = 1)+
  geom_line(data = acumulativo1, aes(as.numeric(Descanso), value, color = variables), stat="summary",fun="mean")
P3

CP accumulation

#outliers
boxplot(acc$CP)


#model
A1 = lmer(CP~Residuo*Descanso+(1|Linhas), data = acc)
boundary (singular) fit: see help('isSingular')
hist(resid(A1))

shapiro.test(resid(A1))

    Shapiro-Wilk normality test

data:  resid(A1)
W = 0.93399, p-value = 0.05065
#Anova e regressão
anova(A1)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            36.1   36.06     1    24  0.5149     0.480    
Descanso         4803.9 1601.32     3    24 22.8617 3.235e-07 ***
Residuo:Descanso   49.4   16.47     3    24  0.2351     0.871    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mediasA1=emmeans(A1, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
mediasA1.1=emmeans(A1, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(mediasA1)
 Residuo emmean   SE   df lower.CL upper.CL
 1         25.1 2.09 10.5     20.5     29.8
 2         27.3 2.09 10.5     22.6     31.9

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(mediasA1.1)
 Descanso emmean   SE df lower.CL upper.CL
 1          9.78 2.96 21     3.62     15.9
 2         21.00 2.96 21    14.84     27.1
 3         31.15 2.96 21    25.00     37.3
 4         42.91 2.96 21    36.75     49.1

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
regA1 <- lm(CP~poly(as.numeric(Descanso), degree = 2), data = acc)
summary(regA1)

Call:
lm(formula = CP ~ poly(as.numeric(Descanso), degree = 2), data = acc)

Residuals:
     Min       1Q   Median       3Q      Max 
-18.7895  -3.0054  -0.6011   2.6386  18.7765 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                              26.2070     1.3808  18.979  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1  69.2857     7.8111   8.870 9.31e-10 ***
poly(as.numeric(Descanso), degree = 2)2   0.7604     7.8111   0.097    0.923    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 7.811 on 29 degrees of freedom
Multiple R-squared:  0.7307,    Adjusted R-squared:  0.7121 
F-statistic: 39.34 on 2 and 29 DF,  p-value: 5.473e-09

aFDNom accumulation

#outliers
boxplot(acc$aFDNom)


#model
A2 = lmer(aFDNom~Residuo*Descanso+(1|Linhas), data = acc)
boundary (singular) fit: see help('isSingular')
hist(resid(A2))

shapiro.test(resid(A2))

    Shapiro-Wilk normality test

data:  resid(A2)
W = 0.93849, p-value = 0.06783
#Anova e regressão
anova(A2)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo             114   114.0     1    24  0.2015    0.6575    
Descanso          70024 23341.4     3    24 41.2414 1.256e-09 ***
Residuo:Descanso    412   137.4     3    24  0.2427    0.8657    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mediasA2=emmeans(A2, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
mediasA2.1=emmeans(A2, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(mediasA2)
 Residuo emmean   SE   df lower.CL upper.CL
 1         72.3 5.95 10.5     59.1     85.4
 2         76.1 5.95 10.5     62.9     89.2

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(mediasA2.1)
 Descanso emmean   SE df lower.CL upper.CL
 1          17.9 8.41 21    0.377     35.4
 2          47.8 8.41 21   30.313     65.3
 3          88.4 8.41 21   70.881    105.9
 4         142.6 8.41 21  125.135    160.1

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
regA2 <- lm(aFDNom~poly(as.numeric(Descanso), degree = 2), data = acc)
summary(regA2)

Call:
lm(formula = aFDNom ~ poly(as.numeric(Descanso), degree = 2), 
    data = acc)

Residuals:
    Min      1Q  Median      3Q     Max 
-57.407  -9.046  -0.975   9.342  50.847 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                74.17       3.90  19.019  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1   262.37      22.06  11.893 1.13e-12 ***
poly(as.numeric(Descanso), degree = 2)2    34.39      22.06   1.559     0.13    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 22.06 on 29 degrees of freedom
Multiple R-squared:  0.8323,    Adjusted R-squared:  0.8207 
F-statistic: 71.94 on 2 and 29 DF,  p-value: 5.721e-12

FDAom accumulation

#outliers
boxplot(acc$FDAom)


#model
A3 = lmer(FDAom~Residuo*Descanso+(1|Linhas), data = acc)
hist(resid(A3))

shapiro.test(resid(A3))

    Shapiro-Wilk normality test

data:  resid(A3)
W = 0.93495, p-value = 0.05388
#Anova e regressão
anova(A3)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo              73    72.7     1    21  0.2640    0.6128    
Descanso          37980 12659.9     3    21 45.9764 2.094e-09 ***
Residuo:Descanso    221    73.7     3    21  0.2676    0.8480    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mediasA3=emmeans(A3, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
mediasA3.1=emmeans(A3, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(mediasA3)
 Residuo emmean   SE   df lower.CL upper.CL
 1         51.7 4.17 10.4     42.4     60.9
 2         54.7 4.17 10.4     45.4     63.9

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(mediasA3.1)
 Descanso emmean   SE   df lower.CL upper.CL
 1          11.8 5.88 20.9   -0.459     24.0
 2          34.0 5.88 20.9   21.757     46.2
 3          63.1 5.88 20.9   50.823     75.3
 4         103.8 5.88 20.9   91.615    116.1

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
regA3 <- lm(FDAom~poly(as.numeric(Descanso), degree = 2), data = acc)
summary(regA3)

Call:
lm(formula = FDAom ~ poly(as.numeric(Descanso), degree = 2), 
    data = acc)

Residuals:
    Min      1Q  Median      3Q     Max 
-42.760  -5.812  -0.854   7.328  31.355 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               53.166      2.732   19.46  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1  193.080     15.454   12.49 3.38e-13 ***
poly(as.numeric(Descanso), degree = 2)2   26.270     15.454    1.70   0.0999 .  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 15.45 on 29 degrees of freedom
Multiple R-squared:  0.8457,    Adjusted R-squared:  0.8351 
F-statistic: 79.49 on 2 and 29 DF,  p-value: 1.699e-12

LDAom accumulation

#outliers
boxplot(acc$LDAom)


#model
A4 = lmer(LDAom~Residuo*Descanso+(1|Linhas), data = acc)
hist(resid(A4))

shapiro.test(resid(A4))

    Shapiro-Wilk normality test

data:  resid(A4)
W = 0.93403, p-value = 0.05076
#Anova e regressão
anova(A4)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value   Pr(>F)    
Residuo             1.9    1.95     1    21  0.0430   0.8378    
Descanso         5321.5 1773.84     3    21 39.1494 8.82e-09 ***
Residuo:Descanso   33.7   11.25     3    21  0.2483   0.8616    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mediasA4=emmeans(A4, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
mediasA4.1=emmeans(A4, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(mediasA4)
 Residuo emmean   SE   df lower.CL upper.CL
 1         21.6 1.72 9.89     17.8     25.4
 2         22.1 1.72 9.89     18.3     25.9

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(mediasA4.1)
 Descanso emmean  SE   df lower.CL upper.CL
 1          5.63 2.4 20.3     0.62     10.6
 2         14.74 2.4 20.3     9.73     19.7
 3         27.24 2.4 20.3    22.23     32.3
 4         39.81 2.4 20.3    34.80     44.8

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
regA4 <- lm(LDAom~poly(as.numeric(Descanso), degree = 2), data = acc)
summary(regA4)

Call:
lm(formula = LDAom ~ poly(as.numeric(Descanso), degree = 2), 
    data = acc)

Residuals:
     Min       1Q   Median       3Q      Max 
-15.1249  -2.2367  -0.4348   2.2444  17.9563 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               21.853      1.108  19.727  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1   72.754      6.267  11.610 2.01e-12 ***
poly(as.numeric(Descanso), degree = 2)2    4.892      6.267   0.781    0.441    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 6.267 on 29 degrees of freedom
Multiple R-squared:  0.8236,    Adjusted R-squared:  0.8114 
F-statistic:  67.7 on 2 and 29 DF,  p-value: 1.187e-11

EE accumulation

#outliers
boxplot(acc$EE)


#model
A5 = lmer(EE~Residuo*Descanso+(1|Linhas), data = acc)
boundary (singular) fit: see help('isSingular')
hist(resid(A5))

shapiro.test(resid(A5))

    Shapiro-Wilk normality test

data:  resid(A5)
W = 0.96988, p-value = 0.4962
#Anova e regressão
anova(A5)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            4.866   4.866     1    24  2.4989    0.1270    
Descanso         264.996  88.332     3    24 45.3618 4.822e-10 ***
Residuo:Descanso   5.801   1.934     3    24  0.9929    0.4129    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mediasA5=emmeans(A5, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
mediasA5.1=emmeans(A5, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(mediasA5)
 Residuo emmean    SE   df lower.CL upper.CL
 1         4.80 0.349 10.5     4.03     5.57
 2         5.58 0.349 10.5     4.81     6.35

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(mediasA5.1)
 Descanso emmean    SE df lower.CL upper.CL
 1          1.39 0.493 21    0.362     2.41
 2          3.69 0.493 21    2.667     4.72
 3          6.76 0.493 21    5.730     7.78
 4          8.93 0.493 21    7.902     9.95

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
regA5 <- lm(EE~poly(as.numeric(Descanso), degree = 2), data = acc)
summary(regA5)

Call:
lm(formula = EE ~ poly(as.numeric(Descanso), degree = 2), data = acc)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.6813 -0.4893  0.0283  0.3679  2.7401 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               5.1912     0.2511  20.678  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1  16.2441     1.4202  11.438 2.88e-12 ***
poly(as.numeric(Descanso), degree = 2)2  -0.1892     1.4202  -0.133    0.895    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 1.42 on 29 degrees of freedom
Multiple R-squared:  0.8186,    Adjusted R-squared:  0.8061 
F-statistic: 65.42 on 2 and 29 DF,  p-value: 1.782e-11

Ash accumulation

#outliers
boxplot(acc$Ash)


#model
A6 = lmer(Ash~Residuo*Descanso+(1|Linhas), data = acc)
boundary (singular) fit: see help('isSingular')
hist(resid(A6))

shapiro.test(resid(A6))

    Shapiro-Wilk normality test

data:  resid(A6)
W = 0.96253, p-value = 0.3217
#Anova e regressão
anova(A6)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            15.18   15.18     1    24  1.2909    0.2671    
Descanso         1719.72  573.24     3    24 48.7538 2.313e-10 ***
Residuo:Descanso   17.94    5.98     3    24  0.5087    0.6800    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mediasA6=emmeans(A6, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
mediasA6.1=emmeans(A6, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(mediasA6)
 Residuo emmean    SE   df lower.CL upper.CL
 1         12.1 0.857 10.5     10.2     14.0
 2         13.5 0.857 10.5     11.6     15.4

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(mediasA6.1)
 Descanso emmean   SE df lower.CL upper.CL
 1          3.37 1.21 21    0.851     5.89
 2          9.34 1.21 21    6.816    11.86
 3         15.50 1.21 21   12.982    18.02
 4         23.13 1.21 21   20.612    25.65

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
regA6 <- lm(Ash~poly(as.numeric(Descanso), degree = 2), data = acc)
summary(regA6)

Call:
lm(formula = Ash ~ poly(as.numeric(Descanso), degree = 2), data = acc)

Residuals:
    Min      1Q  Median      3Q     Max 
-9.0365 -1.1985  0.1332  1.5395  7.4290 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                              12.8365     0.5835  21.999  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1  41.3949     3.3007  12.541 3.08e-13 ***
poly(as.numeric(Descanso), degree = 2)2   2.3546     3.3007   0.713    0.481    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 3.301 on 29 degrees of freedom
Multiple R-squared:  0.8447,    Adjusted R-squared:  0.834 
F-statistic: 78.89 on 2 and 29 DF,  p-value: 1.863e-12

TDOM accumulation

#outliers
boxplot(acc$IVDOM)


#model
A7 = lmer(IVDOM~Residuo*Descanso+(1|Linhas), data = acc)
boundary (singular) fit: see help('isSingular')
hist(resid(A7))

shapiro.test(resid(A7))

    Shapiro-Wilk normality test

data:  resid(A7)
W = 0.96606, p-value = 0.3983
#Anova e regressão
anova(A7)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            385.1   385.1     1    24  2.5622    0.1225    
Descanso         17805.9  5935.3     3    24 39.4913 1.933e-09 ***
Residuo:Descanso   339.1   113.0     3    24  0.7522    0.5318    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mediasA7=emmeans(A7, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
mediasA7.1=emmeans(A7, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(mediasA7)
 Residuo emmean   SE   df lower.CL upper.CL
 1         43.5 3.06 10.5     36.7     50.3
 2         50.4 3.06 10.5     43.7     57.2

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(mediasA7.1)
 Descanso emmean   SE df lower.CL upper.CL
 1          15.0 4.33 21     6.01     24.0
 2          36.5 4.33 21    27.49     45.5
 3          58.3 4.33 21    49.27     67.3
 4          78.1 4.33 21    69.07     87.1

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
regA7 <- lm(IVDOM~poly(as.numeric(Descanso), degree = 2), data = acc)
summary(regA7)

Call:
lm(formula = IVDOM ~ poly(as.numeric(Descanso), degree = 2), 
    data = acc)

Residuals:
    Min      1Q  Median      3Q     Max 
-31.637  -4.578  -0.123   5.860  24.525 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               46.973      2.161  21.738  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1  133.410     12.224  10.914 8.75e-12 ***
poly(as.numeric(Descanso), degree = 2)2   -2.385     12.224  -0.195    0.847    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 12.22 on 29 degrees of freedom
Multiple R-squared:  0.8043,    Adjusted R-squared:  0.7908 
F-statistic: 59.57 on 2 and 29 DF,  p-value: 5.366e-11

TDNDF accumulation

#outliers
boxplot(acc$IVDNDF)


#model
A8 = lmer(IVDNDF~Residuo*Descanso+(1|Linhas), data = acc)
boundary (singular) fit: see help('isSingular')
A8.1 = lmer(IVDNDF^0.8~Residuo*Descanso+(1|Linhas), data = acc)
boundary (singular) fit: see help('isSingular')
hist(resid(A8.1))

shapiro.test(resid(A8.1))

    Shapiro-Wilk normality test

data:  resid(A8.1)
W = 0.93916, p-value = 0.07085
#Anova e regressão
anova(A8.1)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            0.05   0.052     1    24  0.0047    0.9460    
Descanso         652.28 217.425     3    24 19.6145 1.205e-06 ***
Residuo:Descanso  36.30  12.101     3    24  1.0917    0.3717    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mediasA8=emmeans(A8, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
mediasA8.1=emmeans(A8, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(mediasA8)
 Residuo emmean   SE   df lower.CL upper.CL
 1         21.4 2.05 10.5     16.8     25.9
 2         21.2 2.05 10.5     16.7     25.8

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(mediasA8.1)
 Descanso emmean  SE df lower.CL upper.CL
 1          7.41 2.9 21     1.38     13.4
 2         17.05 2.9 21    11.02     23.1
 3         25.25 2.9 21    19.22     31.3
 4         35.44 2.9 21    29.42     41.5

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
regA8 <- lm(IVDNDF~poly(as.numeric(Descanso), degree = 2), data = acc)
summary(regA8)

Call:
lm(formula = IVDNDF ~ poly(as.numeric(Descanso), degree = 2), 
    data = acc)

Residuals:
     Min       1Q   Median       3Q      Max 
-16.3173  -3.7352  -0.2466   3.2574  21.4986 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                              21.2866     1.4037  15.165 2.53e-15 ***
poly(as.numeric(Descanso), degree = 2)1  58.3832     7.9406   7.353 4.23e-08 ***
poly(as.numeric(Descanso), degree = 2)2   0.7813     7.9406   0.098    0.922    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 7.941 on 29 degrees of freedom
Multiple R-squared:  0.6509,    Adjusted R-squared:  0.6268 
F-statistic: 27.03 on 2 and 29 DF,  p-value: 2.36e-07

SCFA accumulation

#outliers
boxplot(acc$AGCC)


#model
A9 = lmer(AGCC~Residuo*Descanso+(1|Linhas), data = acc)
boundary (singular) fit: see help('isSingular')
hist(resid(A9))

shapiro.test(resid(A9))

    Shapiro-Wilk normality test

data:  resid(A9)
W = 0.97222, p-value = 0.5627
#Anova e regressão
anova(A9)
Type III Analysis of Variance Table with Satterthwaite's method
                  Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            20.89   20.89     1    24  1.3609    0.2548    
Descanso         2021.72  673.91     3    24 43.8955 6.721e-10 ***
Residuo:Descanso   21.83    7.28     3    24  0.4739    0.7033    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mediasA9=emmeans(A9, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
mediasA9.1=emmeans(A9, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(mediasA9)
 Residuo emmean   SE   df lower.CL upper.CL
 1         13.0 0.98 10.5     10.8     15.2
 2         14.6 0.98 10.5     12.4     16.8

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(mediasA9.1)
 Descanso emmean   SE df lower.CL upper.CL
 1          3.68 1.39 21    0.804     6.57
 2          9.61 1.39 21    6.734    12.50
 3         17.04 1.39 21   14.160    19.92
 4         24.86 1.39 21   21.981    27.74

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
regA9 <- lm(AGCC~poly(as.numeric(Descanso), degree = 2), data = acc)
summary(regA9)

Call:
lm(formula = AGCC ~ poly(as.numeric(Descanso), degree = 2), data = acc)

Residuals:
    Min      1Q  Median      3Q     Max 
-9.9219 -1.4263 -0.2693  1.4628  8.1142 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               13.801      0.666   20.72  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1   44.879      3.768   11.91 1.08e-12 ***
poly(as.numeric(Descanso), degree = 2)2    2.674      3.768    0.71    0.484    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 3.768 on 29 degrees of freedom
Multiple R-squared:  0.8308,    Adjusted R-squared:  0.8191 
F-statistic: 71.19 on 2 and 29 DF,  p-value: 6.488e-12

Gas accumulation

#outliers
boxplot(acc$Gas)


#model
A10 = lmer(Gas~Residuo*Descanso+(1|Linhas), data = acc)
boundary (singular) fit: see help('isSingular')
hist(resid(A10))

shapiro.test(resid(A10))

    Shapiro-Wilk normality test

data:  resid(A10)
W = 0.97058, p-value = 0.5157
#Anova e regressão
anova(A10)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo            8.14   8.145     1    24  1.2627    0.2722    
Descanso         888.62 296.205     3    24 45.9239 4.256e-10 ***
Residuo:Descanso   9.25   3.084     3    24  0.4781    0.7005    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mediasA10=emmeans(A10, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
mediasA10.1=emmeans(A10, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(mediasA10)
 Residuo emmean    SE   df lower.CL upper.CL
 1         8.57 0.635 10.5     7.17     9.98
 2         9.58 0.635 10.5     8.17    10.99

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(mediasA10.1)
 Descanso emmean    SE df lower.CL upper.CL
 1          2.40 0.898 21    0.529     4.26
 2          6.31 0.898 21    4.448     8.18
 3         11.12 0.898 21    9.254    12.99
 4         16.47 0.898 21   14.602    18.34

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
regA10 <- lm(Gas~poly(as.numeric(Descanso), degree = 2), data = acc)
summary(regA10)

Call:
lm(formula = Gas ~ poly(as.numeric(Descanso), degree = 2), data = acc)

Residuals:
    Min      1Q  Median      3Q     Max 
-6.4967 -0.8528 -0.1540  0.9643  5.1741 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               9.0754     0.4308   21.07  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1  29.7402     2.4371   12.20 6.02e-13 ***
poly(as.numeric(Descanso), degree = 2)2   2.0216     2.4371    0.83    0.414    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.437 on 29 degrees of freedom
Multiple R-squared:  0.8376,    Adjusted R-squared:  0.8264 
F-statistic:  74.8 on 2 and 29 DF,  p-value: 3.567e-12

MB accumulation

#outliers
boxplot(acc$MB)


#model
A11 = lmer(MB~Residuo*Descanso+(1|Linhas), data = acc)
boundary (singular) fit: see help('isSingular')
hist(resid(A11))

shapiro.test(resid(A11))

    Shapiro-Wilk normality test

data:  resid(A11)
W = 0.97902, p-value = 0.7705
#Anova e regressão
anova(A11)
Type III Analysis of Variance Table with Satterthwaite's method
                 Sum Sq Mean Sq NumDF DenDF F value    Pr(>F)    
Residuo           153.5  153.49     1    24  3.5732   0.07085 .  
Descanso         3493.9 1164.65     3    24 27.1132 7.005e-08 ***
Residuo:Descanso  121.5   40.50     3    24  0.9428   0.43547    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mediasA11=emmeans(A11, ~ Residuo)
NOTE: Results may be misleading due to involvement in interactions
mediasA11.1=emmeans(A11, ~ Descanso)
NOTE: Results may be misleading due to involvement in interactions
summary(mediasA11)
 Residuo emmean   SE   df lower.CL upper.CL
 1         21.9 1.64 10.5     18.2     25.5
 2         26.3 1.64 10.5     22.6     29.9

Results are averaged over the levels of: Descanso 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
summary(mediasA11.1)
 Descanso emmean   SE df lower.CL upper.CL
 1          8.94 2.32 21     4.12     13.8
 2         20.58 2.32 21    15.76     25.4
 3         29.98 2.32 21    25.17     34.8
 4         36.75 2.32 21    31.93     41.6

Results are averaged over the levels of: Residuo 
Degrees-of-freedom method: kenward-roger 
Confidence level used: 0.95 
regA11 <- lm(MB~poly(as.numeric(Descanso), degree = 2), data = acc)
summary(regA11)

Call:
lm(formula = MB ~ poly(as.numeric(Descanso), degree = 2), data = acc)

Residuals:
     Min       1Q   Median       3Q      Max 
-15.1985  -3.2645  -0.2401   4.2315  13.1748 

Coefficients:
                                        Estimate Std. Error t value Pr(>|t|)    
(Intercept)                               24.063      1.186  20.284  < 2e-16 ***
poly(as.numeric(Descanso), degree = 2)1   58.706      6.711   8.748 1.25e-09 ***
poly(as.numeric(Descanso), degree = 2)2   -6.891      6.711  -1.027    0.313    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 6.711 on 29 degrees of freedom
Multiple R-squared:  0.7279,    Adjusted R-squared:  0.7091 
F-statistic: 38.79 on 2 and 29 DF,  p-value: 6.357e-09

PLOTS

1 - Curva de calibracao

mod = lm(Volume~psi,data=curve)
summary(mod)

Call:
lm(formula = Volume ~ psi, data = curve)

Residuals:
    Min      1Q  Median      3Q     Max 
-3.4400 -0.2887 -0.0344  0.1958  4.3202 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)  0.04514    0.06625   0.681    0.496    
psi          6.14316    0.03288 186.852   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 0.5832 on 319 degrees of freedom
  (1 observation deleted due to missingness)
Multiple R-squared:  0.9909,    Adjusted R-squared:  0.9909 
F-statistic: 3.491e+04 on 1 and 319 DF,  p-value: < 2.2e-16
Line.equation <- function(A){
  mod;
  eq <- substitute(italic(y) ==    b*italic(x)~"+"~a~" "~~italic(R)^2~"="~r2, 
                   list(a = format(unname(coef(mod)[1]), digits = 3),
                        b = format(unname(coef(mod)[2]), digits = 3),
                        r2 = format(summary(mod)$r.squared, digits = 2)))
  as.character(as.expression(eq));
}

plot=ggplot(curve, aes(x=psi, y=Volume)) + 
  geom_point(shape=19, color='darkblue', size=1.3) + 
  geom_smooth(color='black', method=lm, se=F)+
  scale_x_continuous(name ="Pressure (psi)", breaks=seq(0,4.5,0.5))+
  scale_y_continuous(name = "Actual volume (mL)",breaks=seq(0,28,2))+
  geom_text(x = 1.5, y = 24, color='black', size=4,label = Line.equation(A), parse = TRUE)+
  theme(panel.background = element_rect(fill = "transparent", colour = "black",size = 0.3),
  axis.line = element_line(colour = "black", size = 0.3, linetype = "solid"),
  axis.title.y = element_text(size = 12),
  axis.title.x = element_text(size = 12),
  axis.text.x = element_text(size = 10),
  axis.text.y = element_text(size = 10))
plot

#Save plots
save_plot("curve.pdf", plot, ncol = 1, nrow = 1)

2 - In vitro partitioning of organic matter

# Plot 1
gp2 =gather(gp1, variables, value, MOincubada,MOVD,MOndegrad)
print(gp2)

regp1 <- lm(MOincubada~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(regp1)

Call:
lm(formula = MOincubada ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
    Min      1Q  Median      3Q     Max 
-46.496 -13.053  -0.195  12.304  39.507 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                 725.27       1.43 507.190  < 2e-16 ***
poly(as.numeric(frequencia), degree = 2)1    68.30      18.03   3.788 0.000217 ***
poly(as.numeric(frequencia), degree = 2)2    31.59      18.03   1.752 0.081770 .  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 18.03 on 156 degrees of freedom
Multiple R-squared:  0.1004,    Adjusted R-squared:  0.08889 
F-statistic: 8.708 on 2 and 156 DF,  p-value: 0.00026
regp2 <- lm(MOndegrad~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(regp2)

Call:
lm(formula = MOndegrad ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
     Min       1Q   Median       3Q      Max 
-130.152  -43.176   -6.749   53.273  128.751 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                334.705      5.167  64.773   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1  631.007     64.995   9.709   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)2   43.484     65.154   0.667    0.506    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 64.95 on 155 degrees of freedom
  (1 observation deleted due to missingness)
Multiple R-squared:  0.3794,    Adjusted R-squared:  0.3713 
F-statistic: 47.37 on 2 and 155 DF,  p-value: < 2.2e-16
regp3 <- lm(MOVD~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(regp3)

Call:
lm(formula = MOVD ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
     Min       1Q   Median       3Q      Max 
-107.883  -36.175    0.159   35.771  123.157 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                390.811      4.282  91.273   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1 -561.252     53.856 -10.421   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)2  -15.297     53.988  -0.283    0.777    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 53.82 on 155 degrees of freedom
  (1 observation deleted due to missingness)
Multiple R-squared:  0.4122,    Adjusted R-squared:  0.4046 
F-statistic: 54.35 on 2 and 155 DF,  p-value: < 2.2e-16
P1=ggplot(gp2, aes(x=as.numeric(frequencia),y=value,fill=variables, colour=variables))+
  geom_density(stat="summary",fun="mean", alpha=0.2)+
  scale_color_manual(values=c("blue","red","green"),name = "Partitioning (mg)",
                     labels = c("OM incubated (OMi)", "OM undegraded (OMu)", "OM degraded (OMd)"))+
  scale_fill_manual(values=c("blue","red","green"),name = "Partitioning (mg)",
                     labels = c("OM incubated (OMi)", "OM undegraded (OMu)", "OM degraded (OMd)"))+
  scale_x_discrete(name="Frequency (days)", limits=c("21", "28", "35","42"))+
  coord_cartesian(ylim = c(0,1100))
P1


P1.1=P1+theme(axis.line = element_line(colour = "black", size = 0.3, linetype = "solid"),
 panel.background = element_rect(fill = "white", colour = "black"),
 legend.background = element_rect(fill = "transparent", size=0.5, linetype="solid",colour ="transparent"),
 legend.position = c(0.17, 0.82))+scale_y_continuous(name="OM partitioning (mg/g)", breaks=seq(0,950,50))+
  annotate(geom="text", y=1050, x=3.5, 
  label=expression(paste(" OMi = 68.30x  + 725.27   ", R^2, "= 0.10")), size=4, color="black")+
  annotate(geom="text", y=980, x=3.5, 
  label=expression(paste("OMu = 631.0x + 334.71   ", R^2, "= 0.38")), size=4, color="black")+
  annotate(geom="text", y=910, x=3.5, 
  label=expression(paste("OMd = -561.3x + 390.81   ", R^2, "= 0.41")), size=4, color="black")
P1.1


# Plot 2
gp3 =gather(gp1, variables, value, MO.AGV,MO.CO2.CH4.H2O, MO.Bio.Micro)
print(gp3)

regp1.1 <- lm(MO.AGV~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(regp1.1)

Call:
lm(formula = MO.AGV ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
   Min     1Q Median     3Q    Max 
-48.06 -21.07 -15.91  27.21  50.27 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                108.282      2.287  47.338   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1  -21.699     28.843  -0.752    0.453    
poly(as.numeric(frequencia), degree = 2)2   -6.205     28.843  -0.215    0.830    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 28.84 on 156 degrees of freedom
Multiple R-squared:  0.003909,  Adjusted R-squared:  -0.008861 
F-statistic: 0.3061 on 2 and 156 DF,  p-value: 0.7367
regp2.1 <- lm(MO.CO2.CH4.H2O~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(regp2.1)

Call:
lm(formula = MO.CO2.CH4.H2O ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
    Min      1Q  Median      3Q     Max 
-28.511 -13.365  -9.804  16.228  31.856 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                 70.989      1.373  51.706   <2e-16 ***
poly(as.numeric(frequencia), degree = 2)1   -9.179     17.312  -0.530    0.597    
poly(as.numeric(frequencia), degree = 2)2   -2.861     17.312  -0.165    0.869    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 17.31 on 156 degrees of freedom
Multiple R-squared:  0.001973,  Adjusted R-squared:  -0.01082 
F-statistic: 0.1542 on 2 and 156 DF,  p-value: 0.8572
regp3.1 <- lm(MO.Bio.Micro~poly(as.numeric(frequencia), degree = 2), data = gp1)
summary(regp3.1)

Call:
lm(formula = MO.Bio.Micro ~ poly(as.numeric(frequencia), degree = 2), 
    data = gp1)

Residuals:
    Min      1Q  Median      3Q     Max 
-177.33  -85.11   29.02   70.45  151.47 

Coefficients:
                                          Estimate Std. Error t value Pr(>|t|)    
(Intercept)                                211.368      7.255  29.136  < 2e-16 ***
poly(as.numeric(frequencia), degree = 2)1 -531.358     91.247  -5.823 3.22e-08 ***
poly(as.numeric(frequencia), degree = 2)2   -4.095     91.471  -0.045    0.964    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 91.19 on 155 degrees of freedom
  (1 observation deleted due to missingness)
Multiple R-squared:  0.1795,    Adjusted R-squared:  0.1689 
F-statistic: 16.96 on 2 and 155 DF,  p-value: 2.188e-07
P2=ggplot(gp3, aes(x=as.numeric(frequencia),y=value,fill=variables, colour=variables))+
  geom_density(stat="summary",fun="mean", alpha=0.2)+
  scale_color_manual(values=c("brown2","darkorchid","cyan2"),name = "Partitioning (mg)",
                     labels = c("OM for SCFA", "OM for MB", "OM for Gas"))+
  scale_fill_manual(values=c("brown2","darkorchid","cyan2"),name = "Partitioning (mg)",
                     labels = c("OM for SCFA", "OM for MB", "OM for Gas"))+
  scale_x_discrete(name="Frequency (days)", limits=c("21", "28", "35","42"))+
  coord_cartesian(ylim = c(0,420))
P2

P2.1=P2+theme(axis.line = element_line(colour = "black", size = 0.3, linetype = "solid"),
 panel.background = element_rect(fill = "white", colour = "black"),
 legend.background = element_rect(fill = "transparent", size=0.5, linetype="solid",colour ="transparent"),
 legend.position = c(0.13, 0.82))+scale_y_continuous(name="OM partitioning (mg/g)", breaks=seq(0,360,20))+
  annotate(geom="text", y=395, x=3.3, 
  label=expression(paste("SCFA = -21.70x + 108.28   ", R^2, "= 0.004")), size=4, color="black")+
  annotate(geom="text", y=365, x=3.3, 
  label=expression(paste("    MB = -531.4x + 211.37   ", R^2, "= 0.18")), size=4, color="black")+
  annotate(geom="text", y=335, x=3.3, 
  label=expression(paste("       Gas = -9.179x + 70.99   ", R^2, "= 0.002")), size=4, color="black")
P2.1


#Save plots
side.by.side <- plot_grid(P1.1,P2.1, 
                          labels = c("A", "B"),
                          ncol = 1, nrow =2, align = "V")
Warning: Removed 2 rows containing non-finite values (`stat_summary()`).Warning: is.na() aplicado a um objeto diferente de lista ou vetor de tipo 'expression'Warning: is.na() aplicado a um objeto diferente de lista ou vetor de tipo 'expression'Warning: is.na() aplicado a um objeto diferente de lista ou vetor de tipo 'expression'Warning: Removed 1 rows containing non-finite values (`stat_summary()`).Warning: is.na() aplicado a um objeto diferente de lista ou vetor de tipo 'expression'Warning: is.na() aplicado a um objeto diferente de lista ou vetor de tipo 'expression'Warning: is.na() aplicado a um objeto diferente de lista ou vetor de tipo 'expression'
side.by.side
save_plot("partitioning.pdf", side.by.side, ncol = 1, nrow = 2)

PACKAGE CITATIONS

citation()
To cite R in publications use:

  R Core Team (2023). _R: A Language and Environment for Statistical Computing_. R Foundation for
  Statistical Computing, Vienna, Austria. <https://www.R-project.org/>.

A BibTeX entry for LaTeX users is

  @Manual{,
    title = {R: A Language and Environment for Statistical Computing},
    author = {{R Core Team}},
    organization = {R Foundation for Statistical Computing},
    address = {Vienna, Austria},
    year = {2023},
    url = {https://www.R-project.org/},
  }

We have invested a lot of time and effort in creating R, please cite it when using it for data
analysis. See also ‘citation("pkgname")’ for citing R packages.
citation("lme4")
To cite lme4 in publications use:

  Douglas Bates, Martin Maechler, Ben Bolker, Steve Walker (2015). Fitting Linear Mixed-Effects
  Models Using lme4. Journal of Statistical Software, 67(1), 1-48. doi:10.18637/jss.v067.i01.

A BibTeX entry for LaTeX users is

  @Article{,
    title = {Fitting Linear Mixed-Effects Models Using {lme4}},
    author = {Douglas Bates and Martin M{\"a}chler and Ben Bolker and Steve Walker},
    journal = {Journal of Statistical Software},
    year = {2015},
    volume = {67},
    number = {1},
    pages = {1--48},
    doi = {10.18637/jss.v067.i01},
  }
citation("lmerTest")
To cite lmerTest in publications use:

  Kuznetsova A, Brockhoff PB, Christensen RHB (2017). “lmerTest Package: Tests in Linear Mixed
  Effects Models.” _Journal of Statistical Software_, *82*(13), 1-26. doi:10.18637/jss.v082.i13
  <https://doi.org/10.18637/jss.v082.i13>.

A BibTeX entry for LaTeX users is

  @Article{,
    title = {{lmerTest} Package: Tests in Linear Mixed Effects Models},
    author = {Alexandra Kuznetsova and Per B. Brockhoff and Rune H. B. Christensen},
    journal = {Journal of Statistical Software},
    year = {2017},
    volume = {82},
    number = {13},
    pages = {1--26},
    doi = {10.18637/jss.v082.i13},
  }
citation("dplyr")
To cite package ‘dplyr’ in publications use:

  Wickham H, François R, Henry L, Müller K, Vaughan D (2023). _dplyr: A Grammar of Data
  Manipulation_. R package version 1.1.4, <https://CRAN.R-project.org/package=dplyr>.

A BibTeX entry for LaTeX users is

  @Manual{,
    title = {dplyr: A Grammar of Data Manipulation},
    author = {Hadley Wickham and Romain François and Lionel Henry and Kirill Müller and Davis Vaughan},
    year = {2023},
    note = {R package version 1.1.4},
    url = {https://CRAN.R-project.org/package=dplyr},
  }
citation("tidyr")
To cite package ‘tidyr’ in publications use:

  Wickham H, Vaughan D, Girlich M (2024). _tidyr: Tidy Messy Data_. R package version 1.3.1,
  <https://CRAN.R-project.org/package=tidyr>.

A BibTeX entry for LaTeX users is

  @Manual{,
    title = {tidyr: Tidy Messy Data},
    author = {Hadley Wickham and Davis Vaughan and Maximilian Girlich},
    year = {2024},
    note = {R package version 1.3.1},
    url = {https://CRAN.R-project.org/package=tidyr},
  }
citation("emmeans")
To cite package ‘emmeans’ in publications use:

  Lenth R (2024). _emmeans: Estimated Marginal Means, aka Least-Squares Means_. R package version
  1.10.0, <https://CRAN.R-project.org/package=emmeans>.

A BibTeX entry for LaTeX users is

  @Manual{,
    title = {emmeans: Estimated Marginal Means, aka Least-Squares Means},
    author = {Russell V. Lenth},
    year = {2024},
    note = {R package version 1.10.0},
    url = {https://CRAN.R-project.org/package=emmeans},
  }
citation("ggplot2")
To cite ggplot2 in publications, please use

  H. Wickham. ggplot2: Elegant Graphics for Data Analysis. Springer-Verlag New York, 2016.

A BibTeX entry for LaTeX users is

  @Book{,
    author = {Hadley Wickham},
    title = {ggplot2: Elegant Graphics for Data Analysis},
    publisher = {Springer-Verlag New York},
    year = {2016},
    isbn = {978-3-319-24277-4},
    url = {https://ggplot2.tidyverse.org},
  }
citation("cowplot")
To cite package ‘cowplot’ in publications use:

  Wilke C (2024). _cowplot: Streamlined Plot Theme and Plot Annotations for 'ggplot2'_. R package
  version 1.1.3, <https://CRAN.R-project.org/package=cowplot>.

A BibTeX entry for LaTeX users is

  @Manual{,
    title = {cowplot: Streamlined Plot Theme and Plot Annotations for 'ggplot2'},
    author = {Claus O. Wilke},
    year = {2024},
    note = {R package version 1.1.3},
    url = {https://CRAN.R-project.org/package=cowplot},
  }
citation("corrplot")
To cite corrplot in publications use:

  Taiyun Wei and Viliam Simko (2021). R package 'corrplot': Visualization of a Correlation Matrix
  (Version 0.92). Available from https://github.com/taiyun/corrplot

A BibTeX entry for LaTeX users is

  @Manual{corrplot2021,
    title = {R package 'corrplot': Visualization of a Correlation Matrix},
    author = {Taiyun Wei and Viliam Simko},
    year = {2021},
    note = {(Version 0.92)},
    url = {https://github.com/taiyun/corrplot},
  }
LS0tDQp0aXRsZTogIkVuc2FpbyAxIC0gVW5kZXJzdGFuZGluZyB0aGUgaW1wYWN0cyBvZiBpbnRlbnNpdHkgYW5kIGhhcnZlc3QgZnJlcXVlbmN5IG9uIFRpdGhvbmlhIGRpdmVyc2lmb2xpYSBmb3IgdXNlIGluIHRyb3BpY2FsIHNpbHZvcGFzdG9yYWwgc3lzdGVtcyINCmF1dGhvcjogIlZhZ25lciBPdmFuaSINCm91dHB1dDoNCiAgaHRtbF9ub3RlYm9vazoNCiAgICB0b2M6IFRSVUUNCiAgICB0b2NfZGVwdGg6IDINCiAgICB0aGVtZTogdW5pdGVkDQotLS0NCg0KKioqDQoqKioNCg0KIyAqKlBhY2thZ2VzKioNCg0KYGBge3J9DQpsaWJyYXJ5KGxtZTQpI21vZGVsbyBtaXN0bw0KbGlicmFyeShsbWVyVGVzdCkjY29tcGxlbWVudGFyIGFvIGxtZTQNCmxpYnJhcnkoZHBseXIpI29yZ2FuaXphw6fDo28gZGUgZGFkb3MNCmxpYnJhcnkodGlkeXIpI29yZ2FuaXphw6fDo28gZGUgZGFkb3MNCmxpYnJhcnkoZW1tZWFucykjbWVkaWFzIGUgdGVzdGUgZGUgbWVkaWEgcGFyYSBtb2RlbG8gbWlzdG8NCmxpYnJhcnkoZ2dwbG90MikjZ3JhZmljb3MNCmxpYnJhcnkoY293cGxvdCkjc2FsdmFyIGdyYWZpY29zDQpsaWJyYXJ5KGNvcnJwbG90KSAjY29ycmVsYcOnw6NvDQpgYGANCg0KDQojICoqREFUQUJBU0UqKg0KDQpgYGB7cn0NCiNXZWF0aGVyDQoNCmNsaW1hMT1yZWFkLmNzdigiRDpcXEFybWF6ZW5hbWVudG9cXERBVEEgUlxcRW5zYWlvIDFcXERhdGFzXFxjbGltYTEuY3N2IikNCmNsaW1hMSRkYXRhID0gYXMuRGF0ZShhcy5jaGFyYWN0ZXIoY2xpbWExJGRhdGEsIGZvcm1hdCA9ICIlWSVtJGQiKSkNCmNsaW1hMSA9IGFycmFuZ2UoY2xpbWExLCBkYXRhKQ0Kc3RyKGNsaW1hMSkNCnByaW50KGNsaW1hMSkNCg0KY2xpbWEyPXJlYWQuY3N2KCJEOlxcQXJtYXplbmFtZW50b1xcREFUQSBSXFxFbnNhaW8gMVxcRGF0YXNcXGNsaW1hMi5jc3YiKQ0KY2xpbWEyJGRhdGEgPSBhcy5EYXRlKGFzLmNoYXJhY3RlcihjbGltYTIkZGF0YSwgZm9ybWF0ID0gIiVZJW0kZCIpKQ0KY2xpbWEyID0gYXJyYW5nZShjbGltYTIsIGRhdGEpDQpzdHIoY2xpbWEyKQ0KcHJpbnQoY2xpbWEyKQ0KDQojQmlvbWFzcyBwcm9kdWN0aW9uDQpiaW9tYXNzPXJlYWQuY3N2KCJEOlxcQXJtYXplbmFtZW50b1xcREFUQSBSXFxFbnNhaW8gMVxcRGF0YXNcXGJpb21hc3MuY3N2IikNCmJpb21hc3MkQ29ydGVzPWFzLmZhY3RvcihiaW9tYXNzJENvcnRlcykNCmJpb21hc3MkUmVzaWR1bz1hcy5mYWN0b3IoYmlvbWFzcyRSZXNpZHVvKQ0KYmlvbWFzcyREZXNjYW5zbz1hcy5mYWN0b3IoYmlvbWFzcyREZXNjYW5zbykNCmJpb21hc3MkTGluaGFzPWFzLmZhY3RvcihiaW9tYXNzJExpbmhhcykNCmJpb21hc3MkUEI9YmlvbWFzcyRQQioxMA0Kc3RyKGJpb21hc3MpDQpwcmludChiaW9tYXNzKQ0KDQojR2FzIHByb2R1Y3Rpb24NCmdwPXJlYWQuY3N2KCJEOlxcQXJtYXplbmFtZW50b1xcREFUQSBSXFxFbnNhaW8gMVxcRGF0YXNcXGdwLmNzdiIpDQpncCRpbnRlbnNpZGFkZT1hcy5mYWN0b3IoZ3AkaW50ZW5zaWRhZGUpDQpncCRmcmVxdWVuY2lhPWFzLmZhY3RvcihncCRmcmVxdWVuY2lhKQ0KZ3AkbGluaGFzPWFzLmZhY3RvcihncCRsaW5oYXMpDQpncCRpbm9jdWxvPWFzLmZhY3RvcihncCRpbm9jdWxvKQ0KZ3AkY29ydGVzPWFzLmZhY3RvcihncCRjb3J0ZXMpDQpncCR0ZW1wbz1hcy5mYWN0b3IoZ3AkdGVtcG8pDQpncCRHUD1hcy5mYWN0b3IoZ3AkR1ApDQpzdHIoZ3ApDQpwcmludChncCkNCg0KI0NhbGlicmF0aW9uIGN1cnZlDQpjdXJ2ZT1yZWFkLmNzdigiRDpcXEFybWF6ZW5hbWVudG9cXERBVEEgUlxcRW5zYWlvIDFcXERhdGFzXFxjdXJ2ZS5jc3YiKQ0KY3VydmUNCnN0cihjdXJ2ZSkNCnByaW50KGN1cnZlKQ0KYGBgDQoNCiMgKipXRUFUSEVSIENPTkRJVElPTlMqKg0KDQpgYGB7cn0NCg0KDQojQ1VUIDENCmRhdGVicmVha3MgPSBzZXEoYXMuRGF0ZSgiMjAyMS0wMi0wNCIpLCBhcy5EYXRlKCIyMDIxLTAzLTE4IiksIGJ5ID0gIjIgZGF5IikNCg0KcDE9Z2dwbG90KCkgKw0KICBnZW9tX2JhcihkYXRhID0gY2xpbWExWy1jKDg3OjE3MiksXSwgYWVzKGRhdGEsdmFsdWUqMS4zLGZpbGw9Z3JvdXApLHN0YXQ9ImlkZW50aXR5Iixwb3NpdGlvbiA9ICJkb2RnZSIsIHdpZHRoID0gMSkrDQogIGdlb21fcG9pbnQoZGF0YSA9IGNsaW1hMlstYyg4NzoxNzIpLF0sIGFlcyhkYXRhLCB2YWx1ZSwgc2hhcGU9Z3JvdXApLCBzaXplPTIpKw0KICBnZW9tX2xpbmUoZGF0YSA9IGNsaW1hMlstYyg4NzoxNzIpLF0sIGFlcyhkYXRhLCB2YWx1ZSwgZ3JvdXAgPSBncm91cCksIGNvbG9yID0gImJsYWNrIikrDQogIHNjYWxlX3NoYXBlX21hbnVhbCh2YWx1ZXMgPSBjKDE2LCAxNSksIG5hbWU9IE5VTEwsbGFiZWxzID0gYygiUmVsYXRpdmUgaHVtaWRpdHkgKCUpIiwiVGVtcGVyYXR1cmUgKMK6QykiKSkrDQogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcz1jKCJkYXJrYmx1ZSIsICJncmF5MjgiKSwgbmFtZT0gTlVMTCxsYWJlbHM9YygiUmFkaWF0aW9uIChNSi9tMiBkYXkpIiwiUmFpbmZhbGwgKG1tKSIpKSsNCiAgc2NhbGVfeV9jb250aW51b3VzKG5hbWU9ICJSZWxhdGl2ZSBodW1pZGl0eSAoJSk7IFRlbXBlcmF0dXJlICjCukMpIixicmVha3MgPSBzZXEoMCwgMTI1LCA1KSwgICBzZWMuYXhpcz1zZWNfYXhpcyh+Li8xLjMsbmFtZT0iUmFkaWF0aW9uIChNSi9tMiBkYXkpOyBSYWluZmFsbCAobW0pIixicmVha3M9c2VxKDAsOTgsNCkpKStjb29yZF9jYXJ0ZXNpYW4oeWxpbSA9IGMoMCwxMjApKStzY2FsZV94X2RhdGUobmFtZT1OVUxMLGJyZWFrcyA9IGRhdGVicmVha3MpDQpwMQ0KY3V0MT1wMSt0aGVtZShwYW5lbC5iYWNrZ3JvdW5kID0gZWxlbWVudF9yZWN0KGZpbGwgPSAidHJhbnNwYXJlbnQiKSwNCiAgICAgICAgICAgIGxlZ2VuZC5wb3NpdGlvbiA9IGMoMC4yNSwgMC44OCksIA0KICAgICAgICAgICAgbGVnZW5kLmRpcmVjdGlvbj0iaG9yaXpvbnRhbCIsDQogICAgICAgICAgICBsZWdlbmQuYmFja2dyb3VuZCA9IGVsZW1lbnRfcmVjdChmaWxsID0gInRyYW5zcGFyZW50Iiwgc2l6ZT0wLjUsIGxpbmV0eXBlPSJzb2xpZCIsY29sb3VyID0iYmxhY2siKSwNCiAgICAgICAgICAgIGxlZ2VuZC5rZXkuaGVpZ2h0ID0gdW5pdCgwLjQsImNtIiksICANCiAgICAgICAgICAgIGxlZ2VuZC5rZXkud2lkdGggPSB1bml0KDAuNCwiY20iKSwNCiAgICAgICAgICAgIGxlZ2VuZC50ZXh0ID0gZWxlbWVudF90ZXh0KHNpemU9MTApLA0KICAgICAgICAgICAgYXhpcy5saW5lID0gZWxlbWVudF9saW5lKGNvbG91ciA9ICJibGFjayIsIHNpemUgPSAwLjcsIGxpbmV0eXBlID0gInNvbGlkIiksDQogICAgICAgICAgICBheGlzLnRleHQueCA9IGVsZW1lbnRfdGV4dChhbmdsZSA9IDMwLCBoanVzdCA9IDEsc2l6ZSA9IDkpLA0KICAgICAgICAgICAgYXhpcy50aXRsZS55ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMiksDQogICAgICAgICAgICBheGlzLnRleHQueSA9IGVsZW1lbnRfdGV4dChzaXplID0gOSkNCiAgICAgICAgICAgICkNCmN1dDENCiNDVVQgMg0KZGF0ZWJyZWFrczEgPSBzZXEoYXMuRGF0ZSgiMjAyMi0xMC0yNyIpLCBhcy5EYXRlKCIyMDIyLTEyLTA4IiksIGJ5ID0gIjIgZGF5IikNCg0KcDI9Z2dwbG90KCkgKw0KICBnZW9tX2JhcihkYXRhID0gY2xpbWExWy1jKDE6ODYpLF0sIGFlcyhkYXRhLHZhbHVlKjEuMyxmaWxsPWdyb3VwKSxzdGF0PSJpZGVudGl0eSIscG9zaXRpb24gPSAiZG9kZ2UiLCB3aWR0aCA9IDEpKw0KICBnZW9tX3BvaW50KGRhdGEgPSBjbGltYTJbLWMoMTo4NiksXSwgYWVzKGRhdGEsIHZhbHVlLCBzaGFwZT1ncm91cCksIHNpemU9MikrDQogIGdlb21fbGluZShkYXRhID0gY2xpbWEyWy1jKDE6ODYpLF0sIGFlcyhkYXRhLCB2YWx1ZSwgZ3JvdXAgPSBncm91cCksIGNvbG9yID0gImJsYWNrIikrDQogIHNjYWxlX3NoYXBlX21hbnVhbCh2YWx1ZXMgPSBjKDE2LCAxNSksIG5hbWU9IE5VTEwsbGFiZWxzID0gYygiUmVsYXRpdmUgaHVtaWRpdHkgKCUpIiwiVGVtcGVyYXR1cmUgKMK6QykiKSkrDQogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcz1jKCJkYXJrYmx1ZSIsICJncmF5MjgiKSwgbmFtZT0gTlVMTCxsYWJlbHM9YygiUmFkaWF0aW9uIChNSi9tMiBkYXkpIiwiUmFpbmZhbGwgKG1tKSIpKSsNCiAgc2NhbGVfeV9jb250aW51b3VzKG5hbWU9ICJSZWxhdGl2ZSBodW1pZGl0eSAoJSk7IFRlbXBlcmF0dXJlICjCukMpIixicmVha3MgPSBzZXEoMCwgMTI1LCA1KSwgICBzZWMuYXhpcz1zZWNfYXhpcyh+Li8xLjMsbmFtZT0iUmFkaWF0aW9uIChNSi9tMiBkYXkpOyBSYWluZmFsbCAobW0pIixicmVha3M9c2VxKDAsOTgsNCkpKStjb29yZF9jYXJ0ZXNpYW4oeWxpbSA9IGMoMCwxMjApKStzY2FsZV94X2RhdGUobmFtZT1OVUxMLGJyZWFrcyA9IGRhdGVicmVha3MxKQ0KcDINCmN1dDI9cDIrdGhlbWUocGFuZWwuYmFja2dyb3VuZCA9IGVsZW1lbnRfcmVjdChmaWxsID0gInRyYW5zcGFyZW50IiksDQogICAgICAgICAgICBsZWdlbmQucG9zaXRpb24gPSBjKDAuMjUsIDAuODgpLCANCiAgICAgICAgICAgIGxlZ2VuZC5kaXJlY3Rpb249Imhvcml6b250YWwiLA0KICAgICAgICAgICAgbGVnZW5kLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbCA9ICJ0cmFuc3BhcmVudCIsIHNpemU9MC41LCBsaW5ldHlwZT0ic29saWQiLGNvbG91ciA9ImJsYWNrIiksDQogICAgICAgICAgICBsZWdlbmQua2V5LmhlaWdodCA9IHVuaXQoMC40LCJjbSIpLCAgDQogICAgICAgICAgICBsZWdlbmQua2V5LndpZHRoID0gdW5pdCgwLjQsImNtIiksDQogICAgICAgICAgICBsZWdlbmQudGV4dCA9IGVsZW1lbnRfdGV4dChzaXplPTEwKSwNCiAgICAgICAgICAgIGF4aXMubGluZSA9IGVsZW1lbnRfbGluZShjb2xvdXIgPSAiYmxhY2siLCBzaXplID0gMC43LCBsaW5ldHlwZSA9ICJzb2xpZCIpLA0KICAgICAgICAgICAgYXhpcy50ZXh0LnggPSBlbGVtZW50X3RleHQoYW5nbGUgPSAzMCwgaGp1c3QgPSAxLHNpemUgPSA5KSwNCiAgICAgICAgICAgIGF4aXMudGl0bGUueSA9IGVsZW1lbnRfdGV4dChzaXplID0gMTIpLA0KICAgICAgICAgICAgYXhpcy50ZXh0LnkgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDkpKQ0KY3V0Mg0KYGBgDQoNCg0KIyAqKkJJT01BU1MgUFJPRFVDVElPTioqDQoNCiMjIF8qKjEtIENhbm9weSBoZWlnaHQgKGNtKSoqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChiaW9tYXNzJEFsdHVyYSkNCiNtb2RlbA0KDQptb2QxID0gbG1lcihBbHR1cmF+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpKygxfENvcnRlcyksIGRhdGEgPSBiaW9tYXNzKQ0Kc3VtbWFyeShtb2QxKQ0KaGlzdChyZXNpZChtb2QxKSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2QxKSkNCmJhcnRsZXR0LnRlc3QocmVzaWQobW9kMSl+aW50ZXJhY3Rpb24oUmVzaWR1bywgRGVzY2Fuc28pLCBkYXRhPWJpb21hc3MpDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKG1vZDEpDQptZWRpYXMxPWVtbWVhbnMobW9kMSx+IFJlc2lkdW8pDQptZWRpYXMxLjE9ZW1tZWFucyhtb2QxLH4gRGVzY2Fuc28pDQpzdW1tYXJ5KG1lZGlhczEpDQpzdW1tYXJ5KG1lZGlhczEuMSkNCnJlZzE9bG0oQWx0dXJhfnBvbHkoYXMubnVtZXJpYyhEZXNjYW5zbyksIGRlZ3JlZSA9IDIpLCBkYXRhID0gYmlvbWFzcykNCnN1bW1hcnkocmVnMSkNCmBgYA0KDQojIyBfKioyLSBCcmFuY2hlcyAobikqKl8NCg0KYGBge3J9DQojb3V0bGllcnMNCmJveHBsb3QoYmlvbWFzcyRQZXJmaWxob3MpDQojbW9kZWwNCm1vZDIgPSBsbWVyKFBlcmZpbGhvc35SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQptb2QyLjEgPSBsbWVyKFBlcmZpbGhvc14wLjh+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpKygxfENvcnRlcyksIGRhdGEgPSBiaW9tYXNzKQ0Kc3VtbWFyeShtb2QyLjEpDQpoaXN0KHJlc2lkKG1vZDIuMSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMi4xKSkNCmJhcnRsZXR0LnRlc3QocmVzaWQobW9kMi4xKX5pbnRlcmFjdGlvbihSZXNpZHVvLCBEZXNjYW5zbyksIGRhdGE9YmlvbWFzcykNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kMi4xKQ0KDQptZWRpYXMyPWVtbWVhbnMobW9kMix+IFJlc2lkdW8pDQptZWRpYXMyLjE9ZW1tZWFucyhtb2QyLH4gRGVzY2Fuc28pDQpzdW1tYXJ5KG1lZGlhczIpDQpzdW1tYXJ5KG1lZGlhczIuMSkNCnJlZzI9bG0oUGVyZmlsaG9zfnBvbHkoYXMubnVtZXJpYyhEZXNjYW5zbyksIGRlZ3JlZSA9IDIpLCBkYXRhID0gYmlvbWFzcykNCnN1bW1hcnkocmVnMikNCmBgYA0KDQojIyBfKiozLSBGcmVzaCBiaW9tYXNzIChnL3BsYW50KSoqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChiaW9tYXNzJEJpb21hc3NhTVYpDQojbW9kZWwNCm1vZDMgPSBsbWVyKEJpb21hc3NhTVZ+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpKygxfENvcnRlcyksIGRhdGEgPSBiaW9tYXNzKQ0KbW9kMy4xID0gbG1lcihCaW9tYXNzYU1WXjAuM35SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQpoaXN0KHJlc2lkKG1vZDMuMSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMy4xKSkNCmJhcnRsZXR0LnRlc3QocmVzaWQobW9kMy4xKX5pbnRlcmFjdGlvbihSZXNpZHVvLCBEZXNjYW5zbyksIGRhdGE9YmlvbWFzcykNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kMy4xKQ0KbWVkaWFzMz1lbW1lYW5zKG1vZDMsIH4gUmVzaWR1bykNCm1lZGlhczMuMT1lbW1lYW5zKG1vZDMsIH4gRGVzY2Fuc28pDQpzdW1tYXJ5KG1lZGlhczMpDQpzdW1tYXJ5KG1lZGlhczMuMSkNCnJlZzMgPC0gbG0oQmlvbWFzc2FNVn5wb2x5KGFzLm51bWVyaWMoRGVzY2Fuc28pLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGJpb21hc3MpDQpzdW1tYXJ5KHJlZzMpDQpgYGANCg0KIyMgXyoqNC0gRHJ5IGJpb21hc3MgKGcvcGxhbnQpKipfDQoNCmBgYHtyfQ0KI291dGxpZXJzDQpib3hwbG90KGJpb21hc3MkQmlvbWFzc2FNUykNCm91dGxpZXJzPWJveHBsb3QoYmlvbWFzcyRCaW9tYXNzYU1TKSRvdXQNCmJpb21hc3Nbd2hpY2goYmlvbWFzcyRCaW9tYXNzYU1TICVpbiUgb3V0bGllcnMpLF0NCg0KI21vZGVsDQptb2Q0ID0gbG1lcihCaW9tYXNzYU1TflJlc2lkdW8qRGVzY2Fuc28rKDF8TGluaGFzKSsoMXxDb3J0ZXMpLCBkYXRhID0gYmlvbWFzcykNCm1vZDQuMSA9IGxtZXIoQmlvbWFzc2FNU14wLjV+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpKygxfENvcnRlcyksIGRhdGEgPSBiaW9tYXNzKQ0KaGlzdChyZXNpZChtb2Q0LjEpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDQuMSkpDQpiYXJ0bGV0dC50ZXN0KHJlc2lkKG1vZDQuMSl+aW50ZXJhY3Rpb24oUmVzaWR1bywgRGVzY2Fuc28pLCBkYXRhPWJpb21hc3MpDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKG1vZDQuMSkNCm1lZGlhczQ9ZW1tZWFucyhtb2Q0LCB+IFJlc2lkdW8pDQptZWRpYXM0LjE9ZW1tZWFucyhtb2Q0LCB+IERlc2NhbnNvKQ0Kc3VtbWFyeShtZWRpYXM0KQ0Kc3VtbWFyeShtZWRpYXM0LjEpDQpyZWc0IDwtIGxtKEJpb21hc3NhTVN+cG9seShhcy5udW1lcmljKERlc2NhbnNvKSwgZGVncmVlID0gMiksIGRhdGEgPSBiaW9tYXNzKQ0Kc3VtbWFyeShyZWc0KQ0KYGBgDQoNCiMjIF8qKjUtIExlYXZlcyAoZyBrZy0xIERNKSoqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChiaW9tYXNzJGZvbGhhTVMpDQpvdXRsaWVycz1ib3hwbG90KGJpb21hc3MkZm9saGFNUykkb3V0DQpiaW9tYXNzW3doaWNoKGJpb21hc3MkZm9saGFNUyAlaW4lIG91dGxpZXJzKSxdDQoNCiNtb2RlbA0KbW9kNSA9IGxtZXIoZm9saGFNU35SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQptb2Q1LjEgPSBsbWVyKGZvbGhhTVNeMC44flJlc2lkdW8qRGVzY2Fuc28rKDF8TGluaGFzKSsoMXxDb3J0ZXMpLCBkYXRhID0gYmlvbWFzcykNCmhpc3QocmVzaWQobW9kNS4xKSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2Q1LjEpKQ0KYmFydGxldHQudGVzdChyZXNpZChtb2Q1LjEpfmludGVyYWN0aW9uKFJlc2lkdW8sIERlc2NhbnNvKSwgZGF0YT1iaW9tYXNzKQ0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShtb2Q1LjEpDQptZWRpYXM1PWVtbWVhbnMobW9kNSwgfiBSZXNpZHVvKQ0KbWVkaWFzNS4xPWVtbWVhbnMobW9kNSwgfiBEZXNjYW5zbykNCnN1bW1hcnkobWVkaWFzNSkNCnN1bW1hcnkobWVkaWFzNS4xKQ0KcmVnNSA8LSBsbShmb2xoYU1TfnBvbHkoYXMubnVtZXJpYyhEZXNjYW5zbyksIGRlZ3JlZSA9IDIpLCBkYXRhID0gYmlvbWFzcykNCnN1bW1hcnkocmVnNSkNCmBgYA0KDQojIyBfKio2LSBTdGVtcyAoZyBrZy0xIERNKSoqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChiaW9tYXNzJGNhdWxlTVMpDQoNCiNtb2RlbA0KbW9kNiA9IGxtZXIoY2F1bGVNU35SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQptb2Q2LjEgPSBsbWVyKGNhdWxlTVNeMS4xflJlc2lkdW8qRGVzY2Fuc28rKDF8TGluaGFzKSsoMXxDb3J0ZXMpLCBkYXRhID0gYmlvbWFzcykNCmhpc3QocmVzaWQobW9kNi4xKSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2Q2LjEpKQ0KYmFydGxldHQudGVzdChyZXNpZChtb2Q2LjEpfmludGVyYWN0aW9uKFJlc2lkdW8sIERlc2NhbnNvKSwgZGF0YT1iaW9tYXNzKQ0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShtb2Q2LjEpDQptZWRpYXM2PWVtbWVhbnMobW9kNiwgfiBSZXNpZHVvKQ0KbWVkaWFzNi4xPWVtbWVhbnMobW9kNiwgfiBEZXNjYW5zbykNCnN1bW1hcnkobWVkaWFzNikNCnN1bW1hcnkobWVkaWFzNi4xKQ0KcmVnNiA8LSBsbShjYXVsZU1TfnBvbHkoYXMubnVtZXJpYyhEZXNjYW5zbyksIGRlZ3JlZSA9IDIpLCBkYXRhID0gYmlvbWFzcykNCnN1bW1hcnkocmVnNikNCmBgYA0KDQojIyBfKio3LSBEZWFkIG1hdGVyaWFsIChnIGtnLTEgRE0pKipfDQoNCmBgYHtyfQ0KI291dGxpZXJzDQpib3hwbG90KGJpb21hc3Mkc2VuZXNjZW50ZU1TKQ0KDQojbW9kZWwNCm1vZDcgPSBsbWVyKHNlbmVzY2VudGVNU35SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQptb2Q3LjEgPSBsbWVyKHNlbmVzY2VudGVNU14wLjQ1flJlc2lkdW8qRGVzY2Fuc28rKDF8TGluaGFzKSsoMXxDb3J0ZXMpLCBkYXRhID0gYmlvbWFzcykNCmhpc3QocmVzaWQobW9kNy4xKSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2Q3LjEpKQ0KYmFydGxldHQudGVzdChyZXNpZChtb2Q3LjEpfmludGVyYWN0aW9uKFJlc2lkdW8sIERlc2NhbnNvKSwgZGF0YT1iaW9tYXNzKQ0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShtb2Q3LjEpDQptZWRpYXM3PWVtbWVhbnMobW9kNywgfiBSZXNpZHVvKQ0KbWVkaWFzNy4xPWVtbWVhbnMobW9kNywgfiBEZXNjYW5zbykNCnN1bW1hcnkobWVkaWFzNykNCnN1bW1hcnkobWVkaWFzNy4xKQ0KcmVnNyA8LSBsbShzZW5lc2NlbnRlTVN+cG9seShhcy5udW1lcmljKERlc2NhbnNvKSwgZGVncmVlID0gMiksIGRhdGEgPSBiaW9tYXNzKQ0Kc3VtbWFyeShyZWc3KQ0KYGBgDQoNCiMjIF8qKjgtIExlYWYgKGcgcGxhbnQtMSBETSkqKl8NCg0KYGBge3J9DQpiaW9tYXNzJGxlYWYuYWNjdW11bGF0aW9uPWJpb21hc3MkQmlvbWFzc2FNUypiaW9tYXNzJGZvbGhhTVMvMTAwMA0KDQojb3V0bGllcnMNCmJveHBsb3QoYmlvbWFzcyRsZWFmLmFjY3VtdWxhdGlvbikNCg0KI21vZGVsDQptb2Q4ID0gbG1lcihsZWFmLmFjY3VtdWxhdGlvbn5SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQptb2Q4LjEgPSBsbWVyKGxlYWYuYWNjdW11bGF0aW9uXjAuOX5SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQpoaXN0KHJlc2lkKG1vZDguMSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kOC4xKSkNCmJhcnRsZXR0LnRlc3QocmVzaWQobW9kOC4xKX5pbnRlcmFjdGlvbihSZXNpZHVvLCBEZXNjYW5zbyksIGRhdGE9YmlvbWFzcykNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kOC4xKQ0KbWVkaWFzOD1lbW1lYW5zKG1vZDgsIH4gUmVzaWR1bykNCm1lZGlhczguMT1lbW1lYW5zKG1vZDgsIH4gRGVzY2Fuc28pDQpzdW1tYXJ5KG1lZGlhczgpDQpzdW1tYXJ5KG1lZGlhczguMSkNCnJlZzggPC0gbG0obGVhZi5hY2N1bXVsYXRpb25+cG9seShhcy5udW1lcmljKERlc2NhbnNvKSwgZGVncmVlID0gMiksIGRhdGEgPSBiaW9tYXNzKQ0Kc3VtbWFyeShyZWc4KQ0KYGBgDQojIyBfKio5LSBTdGVtIChnIHBsYW50LTEgRE0pKipfDQoNCmBgYHtyfQ0KYmlvbWFzcyRzdGVtLmFjY3VtdWxhdGlvbj1iaW9tYXNzJEJpb21hc3NhTVMqYmlvbWFzcyRjYXVsZU1TLzEwMDANCg0KI291dGxpZXJzDQpib3hwbG90KGJpb21hc3Mkc3RlbS5hY2N1bXVsYXRpb24pDQoNCiNtb2RlbA0KbW9kOSA9IGxtZXIoc3RlbS5hY2N1bXVsYXRpb25+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpKygxfENvcnRlcyksIGRhdGEgPSBiaW9tYXNzKQ0KbW9kOS4xID0gbG1lcihzdGVtLmFjY3VtdWxhdGlvbl4wLjV+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpKygxfENvcnRlcyksIGRhdGEgPSBiaW9tYXNzKQ0KaGlzdChyZXNpZChtb2Q5LjEpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDkuMSkpDQpiYXJ0bGV0dC50ZXN0KHJlc2lkKG1vZDkuMSl+aW50ZXJhY3Rpb24oUmVzaWR1bywgRGVzY2Fuc28pLCBkYXRhPWJpb21hc3MpDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKG1vZDkuMSkNCm1lZGlhczk9ZW1tZWFucyhtb2Q5LCB+IFJlc2lkdW8pDQptZWRpYXM5LjE9ZW1tZWFucyhtb2Q5LCB+IERlc2NhbnNvKQ0Kc3VtbWFyeShtZWRpYXM5KQ0Kc3VtbWFyeShtZWRpYXM5LjEpDQpyZWc5IDwtIGxtKHN0ZW0uYWNjdW11bGF0aW9ufnBvbHkoYXMubnVtZXJpYyhEZXNjYW5zbyksIGRlZ3JlZSA9IDIpLCBkYXRhID0gYmlvbWFzcykNCnN1bW1hcnkocmVnOSkNCmBgYA0KDQojIyBfKioxMC0gRGVhZCBtYXRlcmlhbCAoZyBwbGFudC0xIERNKSoqXw0KDQpgYGB7cn0NCmJpb21hc3MkZGVhZC5hY2N1bXVsYXRpb249YmlvbWFzcyRCaW9tYXNzYU1TKmJpb21hc3Mkc2VuZXNjZW50ZU1TLzEwMDANCg0KI291dGxpZXJzDQpib3hwbG90KGJpb21hc3MkZGVhZC5hY2N1bXVsYXRpb24pDQoNCiNtb2RlbA0KbW9kMTAgPSBsbWVyKGRlYWQuYWNjdW11bGF0aW9uflJlc2lkdW8qRGVzY2Fuc28rKDF8TGluaGFzKSsoMXxDb3J0ZXMpLCBkYXRhID0gYmlvbWFzcykNCm1vZDEwLjEgPSBsbWVyKGRlYWQuYWNjdW11bGF0aW9uXjAuNX5SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQpoaXN0KHJlc2lkKG1vZDEwLjEpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDEwLjEpKQ0KYmFydGxldHQudGVzdChyZXNpZChtb2QxMC4xKX5pbnRlcmFjdGlvbihSZXNpZHVvLCBEZXNjYW5zbyksIGRhdGE9YmlvbWFzcykNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kMTAuMSkNCm1lZGlhczEwPWVtbWVhbnMobW9kMTAsIH4gUmVzaWR1bykNCm1lZGlhczEwLjE9ZW1tZWFucyhtb2QxMCwgfiBEZXNjYW5zbykNCnN1bW1hcnkobWVkaWFzMTApDQpzdW1tYXJ5KG1lZGlhczEwLjEpDQpyZWcxMCA8LSBsbShkZWFkLmFjY3VtdWxhdGlvbn5wb2x5KGFzLm51bWVyaWMoRGVzY2Fuc28pLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGJpb21hc3MpDQpzdW1tYXJ5KHJlZzEwKQ0KYGBgDQojIyBfKipDb3JyZWxhdGlvbioqXw0KDQpgYGB7cn0NCmxpYnJhcnkoY29ycnBsb3QpDQpiaW9tYXNzJFJlc2lkdW89YXMubnVtZXJpYyhiaW9tYXNzJFJlc2lkdW8pDQpiaW9tYXNzJERlc2NhbnNvPWFzLm51bWVyaWMoYmlvbWFzcyREZXNjYW5zbykNCm1jb3IgPSBjb3IoYmlvbWFzc1tjKDMsNCw2LDcsOSwxMywxNCwyNzozMSldKQ0KbWNvcg0KY29sbmFtZXMobWNvcikgPC0gYygiSW50ZW5zaXR5IiwiRnJlcXVlbmN5IiwgIkNhbm9weSBoZWlnaHQiLCAiQnJhbmNoZXMgKG4pIiwgIkJpb21hc3MgcHJvZHVjdGlvbiIsICJMZWFmIHByb3BvcnRpb24iLCAiU3RlbSBwcm9wb3J0aW9uIiwgIlRlbXBlcmF0dXJlIiwgIlJlbGF0aXZlIEh1bWlkaXR5IiwgIlJhaW5mYWxsIiwgIkdsb2JhbCByYWRpYXRpb24iLCAiTGVhZiBwcm9kdWN0aW9uIikNCg0Kcm93bmFtZXMobWNvcikgPC0gYygiSW50ZW5zaXR5IiwiRnJlcXVlbmN5IiwgIkNhbm9weSBoZWlnaHQiLCAiQnJhbmNoZXMgKG4pIiwgIkJpb21hc3MgcHJvZHVjdGlvbiIsICJMZWFmIHByb3BvcnRpb24iLCAiU3RlbSBwcm9wb3J0aW9uIiwgIlRlbXBlcmF0dXJlIiwgIlJlbGF0aXZlIEh1bWlkaXR5IiwgIlJhaW5mYWxsIiwgIkdsb2JhbCByYWRpYXRpb24iLCJMZWFmIHByb2R1Y3Rpb24iKQ0KdGVzdFJlcyA9IGNvci5tdGVzdChtY29yLCBjb25mLmxldmVsID0gMC45NSkNCg0KcGFyKGZhbWlseT0ic2FucyIpDQoNCmNvcnJwbG90KG1jb3IsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgcC5tYXQgPSB0ZXN0UmVzJHAsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgbWV0aG9kID0gImNvbG9yIiwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICB0bC5jb2wgPSAiYmxhY2siLCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgIHRsLmNleCA9IDAuOCwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGUgPSAidXBwZXIiLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgb3JkZXIgPSAiQU9FIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICNoY2x1c3QubWV0aG9kID0gImNlbnRyb2lkIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGluc2lnID0gImJsYW5rIiwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICBudW1iZXIuY2V4ID0gMC43LCANCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZGdyaWQuY29sID0gImJsYWNrIiwgDQogICAgICAgICAgICAgICAgICAgICAgICAgICBjb2wgPSBjb2xvclJhbXBQYWxldHRlKGMoIiM4QzUxMEEiLCIjZjVmNWY1IiwiIzFCN0U3NiIpKSgxMDApLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgY2wubGVuZ3RoID0gMTEsDQogICAgICAgICAgICAgICAgICAgICAgICAgICBhZGRDb2VmLmNvbCA9ICJibGFjayIpDQpiaW9tYXNzJFJlc2lkdW89YXMuZmFjdG9yKGJpb21hc3MkUmVzaWR1bykNCmJpb21hc3MkRGVzY2Fuc289YXMuZmFjdG9yKGJpb21hc3MkRGVzY2Fuc28pDQpgYGANCg0KDQojICoqQlJPTUFUT0xPR0lBKioNCg0KIyMgXyoqMTEtIERNKipfDQoNCmBgYHtyfQ0KI291dGxpZXJzDQpib3hwbG90KGJpb21hc3MkRE0pDQojbW9kZWwNCm1vZDExID0gbG1lcihETX5SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQptb2QxMS4xID0gbG1lcihzcXJ0KG1heChETSsxKSAtIERNKX5SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQpoaXN0KHJlc2lkKG1vZDExLjEpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDExLjEpKQ0KYmFydGxldHQudGVzdChyZXNpZChtb2QxMS4xKX5pbnRlcmFjdGlvbihSZXNpZHVvLCBEZXNjYW5zbyksIGRhdGE9YmlvbWFzcykNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kMTEuMSkNCm1lZGlhczExPWVtbWVhbnMobW9kMTEsIH4gUmVzaWR1bykNCm1lZGlhczExLjE9ZW1tZWFucyhtb2QxMSwgfiBEZXNjYW5zbykNCnN1bW1hcnkobWVkaWFzMTEpDQpzdW1tYXJ5KG1lZGlhczExLjEpDQpyZWcxMSA8LSBsbShETX5wb2x5KGFzLm51bWVyaWMoRGVzY2Fuc28pLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGJpb21hc3MpDQpzdW1tYXJ5KHJlZzExKQ0KYGBgDQoNCiMjIF8qKjEyLSBNTSoqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChiaW9tYXNzJE1NKQ0KDQojbW9kZWwNCm1vZDEyID0gbG1lcihNTX5SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQpoaXN0KHJlc2lkKG1vZDEyKSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2QxMikpDQpiYXJ0bGV0dC50ZXN0KHJlc2lkKG1vZDEyKX5pbnRlcmFjdGlvbihSZXNpZHVvLCBEZXNjYW5zbyksIGRhdGE9YmlvbWFzcykNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kMTIpDQptZWRpYXMxMj1lbW1lYW5zKG1vZDEyLCB+IFJlc2lkdW8pDQptZWRpYXMxMi4xPWVtbWVhbnMobW9kMTIsIH4gRGVzY2Fuc28pDQpzdW1tYXJ5KG1lZGlhczEyKQ0Kc3VtbWFyeShtZWRpYXMxMi4xKQ0KcmVnMTIgPC0gbG0oTU1+cG9seShhcy5udW1lcmljKERlc2NhbnNvKSwgZGVncmVlID0gMiksIGRhdGEgPSBiaW9tYXNzKQ0Kc3VtbWFyeShyZWcxMikNCmBgYA0KDQojIyBfKioxMy0gUEIqKl8NCg0KYGBge3J9DQojb3V0bGllcnMNCmJveHBsb3QoYmlvbWFzcyRQQikNCg0KI21vZGVsDQptb2QxMyA9IGxtZXIoUEJ+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpKygxfENvcnRlcyksIGRhdGEgPSBiaW9tYXNzKQ0KaGlzdChyZXNpZChtb2QxMykpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMTMpKQ0KYmFydGxldHQudGVzdChyZXNpZChtb2QxMyl+aW50ZXJhY3Rpb24oUmVzaWR1bywgRGVzY2Fuc28pLCBkYXRhPWJpb21hc3MpDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKG1vZDEzKQ0KbWVkaWFzMTM9ZW1tZWFucyhtb2QxMywgfiBSZXNpZHVvKQ0KbWVkaWFzMTMuMT1lbW1lYW5zKG1vZDEzLCB+IERlc2NhbnNvKQ0Kc3VtbWFyeShtZWRpYXMxMykNCnN1bW1hcnkobWVkaWFzMTMuMSkNCnJlZzEzIDwtIGxtKFBCfnBvbHkoYXMubnVtZXJpYyhEZXNjYW5zbyksIGRlZ3JlZSA9IDIpLCBkYXRhID0gYmlvbWFzcykNCnN1bW1hcnkocmVnMTMpDQpgYGANCg0KIyMgXyoqMTQtIEVFKipfDQoNCmBgYHtyfQ0KI291dGxpZXJzDQpib3hwbG90KGJpb21hc3MkRUUpDQoNCiNtb2RlbA0KbW9kMTQgPSBsbWVyKEVFflJlc2lkdW8qRGVzY2Fuc28rKDF8TGluaGFzKSsoMXxDb3J0ZXMpLCBkYXRhID0gYmlvbWFzcykNCmhpc3QocmVzaWQobW9kMTQpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDE0KSkNCmJhcnRsZXR0LnRlc3QocmVzaWQobW9kMTQpfmludGVyYWN0aW9uKFJlc2lkdW8sIERlc2NhbnNvKSwgZGF0YT1iaW9tYXNzKQ0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShtb2QxNCkNCm1lZGlhczE0PWVtbWVhbnMobW9kMTQsIH4gUmVzaWR1bykNCm1lZGlhczE0LjE9ZW1tZWFucyhtb2QxNCwgfiBEZXNjYW5zbykNCnN1bW1hcnkobWVkaWFzMTQpDQpzdW1tYXJ5KG1lZGlhczE0LjEpDQpyZWcxNCA8LSBsbShFRX5wb2x5KGFzLm51bWVyaWMoRGVzY2Fuc28pLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGJpb21hc3MpDQpzdW1tYXJ5KHJlZzE0KQ0KYGBgDQojIyBfKioxNS0gYUZETm9tKipfDQoNCmBgYHtyfQ0KI291dGxpZXJzDQpib3hwbG90KGJpb21hc3MkYUZETm9tKQ0KDQojbW9kZWwNCm1vZDE1ID0gbG1lcihhRkROb21+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpKygxfENvcnRlcyksIGRhdGEgPSBiaW9tYXNzKQ0KaGlzdChyZXNpZChtb2QxNSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMTUpKQ0KYmFydGxldHQudGVzdChyZXNpZChtb2QxNSl+aW50ZXJhY3Rpb24oUmVzaWR1bywgRGVzY2Fuc28pLCBkYXRhPWJpb21hc3MpDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKG1vZDE1KQ0KbWVkaWFzMTU9ZW1tZWFucyhtb2QxNSwgfiBSZXNpZHVvKQ0KbWVkaWFzMTUuMT1lbW1lYW5zKG1vZDE1LCB+IERlc2NhbnNvKQ0Kc3VtbWFyeShtZWRpYXMxNSkNCnN1bW1hcnkobWVkaWFzMTUuMSkNCnJlZzE1IDwtIGxtKGFGRE5vbX5wb2x5KGFzLm51bWVyaWMoRGVzY2Fuc28pLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGJpb21hc3MpDQpzdW1tYXJ5KHJlZzE1KQ0KYGBgDQoNCiMjIF8qKjE2LSBhRkRBb20qKl8NCg0KYGBge3J9DQojb3V0bGllcnMNCmJveHBsb3QoYmlvbWFzcyRhRkRBb20pDQoNCiNtb2RlbA0KbW9kMTYgPSBsbWVyKGFGREFvbX5SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcykrKDF8Q29ydGVzKSwgZGF0YSA9IGJpb21hc3MpDQpoaXN0KHJlc2lkKG1vZDE2KSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2QxNikpDQpiYXJ0bGV0dC50ZXN0KHJlc2lkKG1vZDE2KX5pbnRlcmFjdGlvbihSZXNpZHVvLCBEZXNjYW5zbyksIGRhdGE9YmlvbWFzcykNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kMTYpDQptZWRpYXMxNj1lbW1lYW5zKG1vZDE2LCB+IFJlc2lkdW8pDQptZWRpYXMxNi4xPWVtbWVhbnMobW9kMTYsIH4gRGVzY2Fuc28pDQpzdW1tYXJ5KG1lZGlhczE2KQ0Kc3VtbWFyeShtZWRpYXMxNi4xKQ0KcmVnMTYgPC0gbG0oYUZEQW9tfnBvbHkoYXMubnVtZXJpYyhEZXNjYW5zbyksIGRlZ3JlZSA9IDIpLCBkYXRhID0gYmlvbWFzcykNCnN1bW1hcnkocmVnMTYpDQpgYGANCg0KIyMgXyoqMTctIGFMREFvbSoqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChiaW9tYXNzJGFMREFvbSkNCg0KI21vZGVsDQptb2QxNyA9IGxtZXIoYUxEQW9tflJlc2lkdW8qRGVzY2Fuc28rKDF8TGluaGFzKSsoMXxDb3J0ZXMpLCBkYXRhID0gYmlvbWFzcykNCmhpc3QocmVzaWQobW9kMTcpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDE3KSkNCmJhcnRsZXR0LnRlc3QocmVzaWQobW9kMTcpfmludGVyYWN0aW9uKFJlc2lkdW8sIERlc2NhbnNvKSwgZGF0YT1iaW9tYXNzKQ0KbGlicmFyeShwYmtydGVzdCkNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kMTcpDQptZWRpYXMxNz1lbW1lYW5zKG1vZDE3LCB+IFJlc2lkdW8pDQptZWRpYXMxNy4xPWVtbWVhbnMobW9kMTcsIH4gRGVzY2Fuc28pDQpzdW1tYXJ5KG1lZGlhczE3KQ0Kc3VtbWFyeShtZWRpYXMxNy4xKQ0KcmVnMTcgPC0gbG0oYUxEQW9tfnBvbHkoYXMubnVtZXJpYyhEZXNjYW5zbyksIGRlZ3JlZSA9IDIpLCBkYXRhID0gYmlvbWFzcykNCnN1bW1hcnkocmVnMTcpDQpgYGANCg0KIyAqKkdBUyBQUk9EVUNUSU9OKioNCg0KIyMgXyoqMTgtIE5ldEdQMjRoLm1MZ09NKipfDQoNCmBgYHtyfQ0KI291dGxpZXJzDQpib3hwbG90KGdwJE5ldEdQMjRoLm1MZ09NKQ0Kb3V0bGllcnMgPSBib3hwbG90KGdwJE5ldEdQMjRoLm1MZ09NKSRvdXQNCmdwW3doaWNoKGdwJE5ldEdQMjRoLm1MZ09NICVpbiUgb3V0bGllcnMpLF0NCg0KI21vZGVsDQptb2QxOCA9IGxtZXIoTmV0R1AyNGgubUxnT01+aW50ZW5zaWRhZGUqZnJlcXVlbmNpYSsoMXxsaW5oYXMpKygxfEdQKSwgZGF0YSA9IGdwWy1jKDI5MSwzMDUsMzE5LDMyMCksXSkNCmhpc3QocmVzaWQobW9kMTgpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDE4KSkNCg0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShtb2QxOCkNCm1lZGlhczE4PWVtbWVhbnMobW9kMTgsIH4gaW50ZW5zaWRhZGUpDQptZWRpYXMxOC4xPWVtbWVhbnMobW9kMTgsIH4gZnJlcXVlbmNpYSkNCnN1bW1hcnkobWVkaWFzMTgpDQpzdW1tYXJ5KG1lZGlhczE4LjEpDQpyZWcxOCA8LSBsbShOZXRHUDI0aC5tTGdPTX5wb2x5KGFzLm51bWVyaWMoZnJlcXVlbmNpYSksIGRlZ3JlZSA9IDIpLCBkYXRhID0gZ3BbLWMoMjkxLDMwNSwzMTksMzIwKSxdKQ0Kc3VtbWFyeShyZWcxOCkNCmBgYA0KIyMgXyoqMTktIE5ldEdQMjRoLm1MZ0RPTSoqXw0KDQpgYGB7cn0NCg0KZ3AkTmV0R1AyNGgubUxnRE9NPWdwJE5ldEdQMjRoLm1MZ09NL2dwJERNTy5na2cqMTAwMA0KcHJpbnQoZ3ApDQojb3V0bGllcnMNCmJveHBsb3QoZ3AkTmV0R1AyNGgubUxnRE9NKQ0KDQojbW9kZWwNCm1vZDE5ID0gbG1lcihOZXRHUDI0aC5tTGdET01+aW50ZW5zaWRhZGUqZnJlcXVlbmNpYSsoMXxsaW5oYXMpKygxfEdQKSwgZGF0YSA9IGdwKQ0KaGlzdChyZXNpZChtb2QxOSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMTkpKQ0KDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKG1vZDE5KQ0KbWVkaWFzMTk9ZW1tZWFucyhtb2QxOSwgfiBpbnRlbnNpZGFkZSkNCm1lZGlhczE5LjE9ZW1tZWFucyhtb2QxOSwgfiBmcmVxdWVuY2lhKQ0Kc3VtbWFyeShtZWRpYXMxOSkNCnN1bW1hcnkobWVkaWFzMTkuMSkNCnJlZzE5IDwtIGxtKE5ldEdQMjRoLm1MZ0RPTX5wb2x5KGFzLm51bWVyaWMoZnJlcXVlbmNpYSksIGRlZ3JlZSA9IDIpLCBkYXRhID0gZ3ApDQpzdW1tYXJ5KHJlZzE5KQ0KYGBgDQoNCiMjIF8qKjIwLSBOZXRDSDQyNGgubUxnT00qKl8NCg0KYGBge3J9DQojb3V0bGllcnMNCmJveHBsb3QoZ3AkTmV0Q0g0MjRoLm1MZ09NKQ0Kb3V0bGllcnMgPSBib3hwbG90KGdwJE5ldENINDI0aC5tTGdPTSkkb3V0DQpncFt3aGljaChncCROZXRDSDQyNGgubUxnT00gJWluJSBvdXRsaWVycyksXQ0KDQojbW9kZWwNCm1vZDIwID0gbG1lcihOZXRDSDQyNGgubUxnT01+aW50ZW5zaWRhZGUqZnJlcXVlbmNpYSsoMXxsaW5oYXMpKygxfEdQKSwgZGF0YSA9IGdwWy1jKDE4KSxdKQ0KaGlzdChyZXNpZChtb2QyMCkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMjApKQ0KDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKG1vZDIwKQ0KbWVkaWFzMjA9ZW1tZWFucyhtb2QyMCwgfiBpbnRlbnNpZGFkZSkNCm1lZGlhczIwLjE9ZW1tZWFucyhtb2QyMCwgfiBmcmVxdWVuY2lhKQ0Kc3VtbWFyeShtZWRpYXMyMCkNCnN1bW1hcnkobWVkaWFzMjAuMSkNCnJlZzIwIDwtIGxtKE5ldENINDI0aC5tTGdPTX5wb2x5KGFzLm51bWVyaWMoZnJlcXVlbmNpYSksIGRlZ3JlZSA9IDIpLCBkYXRhID0gZ3BbLWMoMTgpLF0pDQpzdW1tYXJ5KHJlZzIwKQ0KYGBgDQojIyBfKioyMS0gTmV0Q0g0MjRoLm1MZ0RPTSoqXw0KDQpgYGB7cn0NCmdwJE5ldENINDI0aC5tTGdET009Z3AkTmV0Q0g0MjRoLm1MZ09NL2dwJERNTy5na2cqMTAwMA0KDQoNCiNvdXRsaWVycw0KYm94cGxvdChncCROZXRDSDQyNGgubUxnRE9NKQ0Kb3V0bGllcnMgPSBib3hwbG90KGdwJE5ldENINDI0aC5tTGdET00pJG91dA0KZ3Bbd2hpY2goZ3AkTmV0Q0g0MjRoLm1MZ0RPTSAlaW4lIG91dGxpZXJzKSxdDQoNCiNtb2RlbA0KbW9kMjEgPSBsbWVyKE5ldENINDI0aC5tTGdET01+aW50ZW5zaWRhZGUqZnJlcXVlbmNpYSsoMXxsaW5oYXMpKygxfEdQKSwgZGF0YSA9IGdwWy1jKDE4KSxdKQ0KaGlzdChyZXNpZChtb2QyMSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMjEpKQ0KDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKG1vZDIxKQ0KbWVkaWFzMjE9ZW1tZWFucyhtb2QyMSwgfiBpbnRlbnNpZGFkZSkNCm1lZGlhczIxLjE9ZW1tZWFucyhtb2QyMSwgfiBmcmVxdWVuY2lhKQ0Kc3VtbWFyeShtZWRpYXMyMSkNCnN1bW1hcnkobWVkaWFzMjEuMSkNCnJlZzIxIDwtIGxtKE5ldENINDI0aC5tTGdET01+cG9seShhcy5udW1lcmljKGZyZXF1ZW5jaWEpLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGdwWy1jKDE4KSxdKQ0Kc3VtbWFyeShyZWcyMSkNCmBgYA0KDQoNCiMjIF8qKjIyLSBETU8uZ2tnKipfDQoNCmBgYHtyfQ0KZ3AxICA8LSBzdWJzZXQoZ3BbLTI1NixdLCB0ZW1wbz09YygiMjRoIikpDQpncDEkTU9uZGVncmFkPWdwMSRNT25kZWdyYWQqMTAwMA0KDQojb3V0bGllcnMNCmJveHBsb3QoZ3AxJERNTy5na2cpDQoNCiNtb2RlbA0KbW9kMjEgPSBsbWVyKERNTy5na2d+aW50ZW5zaWRhZGUqZnJlcXVlbmNpYSsoMXxsaW5oYXMpKygxfEdQKSwgZGF0YSA9IGdwMSkNCm1vZDIxLjEgPSBsbWVyKERNTy5na2deMC44fmludGVuc2lkYWRlKmZyZXF1ZW5jaWErKDF8bGluaGFzKSsoMXxHUCksIGRhdGEgPSBncDEpDQpoaXN0KHJlc2lkKG1vZDIxLjEpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDIxLjEpKQ0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShtb2QyMS4xKQ0KbWVkaWFzMjE9ZW1tZWFucyhtb2QyMSwgfiBpbnRlbnNpZGFkZSkNCm1lZGlhczIxLjE9ZW1tZWFucyhtb2QyMSwgfiBmcmVxdWVuY2lhKQ0Kc3VtbWFyeShtZWRpYXMyMSkNCnN1bW1hcnkobWVkaWFzMjEuMSkNCnJlZzIxIDwtIGxtKERNTy5na2d+cG9seShhcy5udW1lcmljKGZyZXF1ZW5jaWEpLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGdwMSkNCnN1bW1hcnkocmVnMjEpDQpgYGANCg0KIyMgXyoqMjMtIERGRE4uZ2tnKipfDQoNCmBgYHtyfQ0KI291dGxpZXJzDQpib3hwbG90KGdwMSRERkROLmdrZykNCg0KI21vZGVsDQptb2QyMyA9IGxtZXIoREZETi5na2d+aW50ZW5zaWRhZGUqZnJlcXVlbmNpYSsoMXxsaW5oYXMpKygxfEdQKSwgZGF0YSA9IGdwMSkNCm1vZDIzLjEgPSBsbWVyKERGRE4uZ2tnXjAuNn5pbnRlbnNpZGFkZSpmcmVxdWVuY2lhKygxfGxpbmhhcykrKDF8R1ApLCBkYXRhID0gZ3AxKQ0KaGlzdChyZXNpZChtb2QyMy4xKSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2QyMy4xKSkNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kMjMuMSkNCm1lZGlhczIzPWVtbWVhbnMobW9kMjMsIH4gaW50ZW5zaWRhZGUpDQptZWRpYXMyMy4xPWVtbWVhbnMobW9kMjMsIH4gZnJlcXVlbmNpYSkNCnN1bW1hcnkobWVkaWFzMjMpDQpzdW1tYXJ5KG1lZGlhczIzLjEpDQpyZWcyMyA8LSBsbShERkROLmdrZ35wb2x5KGFzLm51bWVyaWMoZnJlcXVlbmNpYSksIGRlZ3JlZSA9IDIpLCBkYXRhID0gZ3AxKQ0Kc3VtbWFyeShyZWcyMykNCmBgYA0KDQojIyBfKioyNC0gTmFtb25pYWNhbCoqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChncDEkTmFtb25pYWNhbCkNCg0KI21vZGVsDQptb2QyNCA9IGxtZXIoTmFtb25pYWNhbH5pbnRlbnNpZGFkZSpmcmVxdWVuY2lhKygxfGxpbmhhcykrKDF8R1ApLCBkYXRhID0gZ3AxKQ0KbW9kMjQuMSA9IGxtZXIoTmFtb25pYWNhbF4wLjh+aW50ZW5zaWRhZGUqZnJlcXVlbmNpYSsoMXxsaW5oYXMpKygxfEdQKSwgZGF0YSA9IGdwMSkNCmhpc3QocmVzaWQobW9kMjQuMSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMjQuMSkpDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKG1vZDI0LjEpDQptZWRpYXMyND1lbW1lYW5zKG1vZDI0LCB+IGludGVuc2lkYWRlKQ0KbWVkaWFzMjQuMT1lbW1lYW5zKG1vZDI0LCB+IGZyZXF1ZW5jaWEpDQpzdW1tYXJ5KG1lZGlhczI0KQ0Kc3VtbWFyeShtZWRpYXMyNC4xKQ0KcmVnMjQgPC0gbG0oTmFtb25pYWNhbH5wb2x5KGFzLm51bWVyaWMoZnJlcXVlbmNpYSksIGRlZ3JlZSA9IDIpLCBkYXRhID0gZ3AxKQ0Kc3VtbWFyeShyZWcyNCkNCmBgYA0KDQojIyBfKioyNS0gcEgqKl8NCg0KYGBge3J9DQojb3V0bGllcnMNCmJveHBsb3QoZ3AxJHBIKQ0Kb3V0bGllcnMgPSBib3hwbG90KGdwMSRwSCkkb3V0DQpncFt3aGljaChncDEkcEggJWluJSBvdXRsaWVycyksXQ0KDQojbW9kZWwNCm1vZDI1ID0gbG1lcihwSH5pbnRlbnNpZGFkZSpmcmVxdWVuY2lhKygxfGxpbmhhcykrKDF8R1ApLCBkYXRhID0gZ3AxWy1jKDEzOCksXSkNCm1vZDI1LjEgPSBsbWVyKHBIXjEuMn5pbnRlbnNpZGFkZSpmcmVxdWVuY2lhKygxfGxpbmhhcykrKDF8R1ApLCBkYXRhID0gZ3AxWy1jKDEzOCksXSkNCmhpc3QocmVzaWQobW9kMjUuMSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMjUuMSkpDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKG1vZDI1LjEpDQptZWRpYXMyNT1lbW1lYW5zKG1vZDI1LCB+IGludGVuc2lkYWRlKQ0KbWVkaWFzMjUuMT1lbW1lYW5zKG1vZDI1LCB+IGZyZXF1ZW5jaWEpDQpzdW1tYXJ5KG1lZGlhczI1KQ0Kc3VtbWFyeShtZWRpYXMyNS4xKQ0KcmVnMjUgPC0gbG0ocEh+cG9seShhcy5udW1lcmljKGZyZXF1ZW5jaWEpLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGdwMSkNCnN1bW1hcnkocmVnMjUpDQpgYGANCg0KIyMgXyoqMjYtIEFHVnRvdGFsKipfDQoNCmBgYHtyfQ0KI291dGxpZXJzDQpib3hwbG90KGdwMVstYygxMzkpLF0kQUdWdG90YWwpDQojbW9kZWwNCm1vZDI2PSBsbWVyKEFHVnRvdGFsfmludGVuc2lkYWRlKmZyZXF1ZW5jaWErKDF8bGluaGFzKSsoMXxHUCksIGRhdGEgPSBncDEpDQptb2QyNi4xPSBsbWVyKEFHVnRvdGFsXjEuNX5pbnRlbnNpZGFkZSpmcmVxdWVuY2lhKygxfGxpbmhhcykrKDF8R1ApLCBkYXRhID0gZ3AxKQ0KaGlzdChyZXNpZChtb2QyNi4xKSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2QyNi4xKSkNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kMjYuMSkNCm1lZGlhczI2PWVtbWVhbnMobW9kMjYsIH4gaW50ZW5zaWRhZGUpDQptZWRpYXMyNi4xPWVtbWVhbnMobW9kMjYsIH4gZnJlcXVlbmNpYSkNCnN1bW1hcnkobWVkaWFzMjYpDQpzdW1tYXJ5KG1lZGlhczI2LjEpDQpyZWcyNiA8LSBsbShBR1Z0b3RhbH5wb2x5KGFzLm51bWVyaWMoZnJlcXVlbmNpYSksIGRlZ3JlZSA9IDIpLCBkYXRhID0gZ3AxKQ0Kc3VtbWFyeShyZWcyNikNCmBgYA0KDQojIyBfKioyNy0gQWNldGljbzEwMCoqXw0KDQpgYGB7cn0NCmdwMSRBY2V0aWNvMTAwPWdwMSRBY2V0aWNvKjEwMC9ncDEkQUdWdG90YWwNCnByaW50KGdwMSkNCg0KI291dGxpZXJzDQpib3hwbG90KGdwMSRBY2V0aWNvMTAwKQ0KDQojbW9kZWwNCm1vZDI3PSBsbWVyKEFjZXRpY28xMDB+aW50ZW5zaWRhZGUqZnJlcXVlbmNpYSsoMXxsaW5oYXMpKygxfEdQKSwgZGF0YSA9IGdwMSkNCm1vZDI3LjE9IGxtZXIoQWNldGljbzEwMF4yLjV+aW50ZW5zaWRhZGUqZnJlcXVlbmNpYSsoMXxsaW5oYXMpKygxfEdQKSwgZGF0YSA9IGdwMSkNCmhpc3QocmVzaWQobW9kMjcuMSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMjcuMSkpI07Do28gdHJhbnNmb3JtYQ0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShtb2QyNykNCm1lZGlhczI3PWVtbWVhbnMobW9kMjcsIH4gaW50ZW5zaWRhZGUpDQptZWRpYXMyNy4xPWVtbWVhbnMobW9kMjcsIH4gZnJlcXVlbmNpYSkNCnN1bW1hcnkobWVkaWFzMjcpDQpzdW1tYXJ5KG1lZGlhczI3LjEpDQpyZWcyNyA8LSBsbShBY2V0aWNvMTAwfnBvbHkoYXMubnVtZXJpYyhmcmVxdWVuY2lhKSwgZGVncmVlID0gMiksIGRhdGEgPSBncDEpDQpzdW1tYXJ5KHJlZzI3KQ0KYGBgDQoNCiMjIF8qKjI4LSBQcm9waW9uaWNvMTAwKipfDQoNCmBgYHtyfQ0KZ3AxJFByb3Bpb25pY28xMDA9Z3AxJFByb3Bpb25pY28qMTAwL2dwMSRBR1Z0b3RhbA0KcHJpbnQoZ3AxKQ0KDQojb3V0bGllcnMNCmJveHBsb3QoZ3AxJFByb3Bpb25pY28xMDApDQoNCiNtb2RlbA0KbW9kMjg9IGxtZXIoUHJvcGlvbmljbzEwMH5pbnRlbnNpZGFkZSpmcmVxdWVuY2lhKygxfGxpbmhhcykrKDF8R1ApLCBkYXRhID0gZ3AxKQ0KaGlzdChyZXNpZChtb2QyOCkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMjgpKQ0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShtb2QyOCkNCm1lZGlhczI4PWVtbWVhbnMobW9kMjgsIH4gaW50ZW5zaWRhZGUpDQptZWRpYXMyOC4xPWVtbWVhbnMobW9kMjgsIH4gZnJlcXVlbmNpYSkNCnN1bW1hcnkobWVkaWFzMjgpDQpzdW1tYXJ5KG1lZGlhczI4LjEpDQpyZWcyOCA8LSBsbShQcm9waW9uaWNvMTAwfnBvbHkoYXMubnVtZXJpYyhmcmVxdWVuY2lhKSwgZGVncmVlID0gMiksIGRhdGEgPSBncDEpDQpzdW1tYXJ5KHJlZzI4KQ0KYGBgDQoNCiMjIF8qKjI5LSBCdXRpcmljbzEwMCoqXw0KDQpgYGB7cn0NCmdwMSRCdXRpcmljbzEwMD1ncDEkQnV0aXJpY28qMTAwL2dwMSRBR1Z0b3RhbA0KcHJpbnQoZ3AxKQ0KDQojb3V0bGllcnMNCmJveHBsb3QoZ3AxJEJ1dGlyaWNvMTAwKQ0KDQojbW9kZWwNCm1vZDI5PSBsbWVyKEJ1dGlyaWNvMTAwfmludGVuc2lkYWRlKmZyZXF1ZW5jaWErKDF8bGluaGFzKSsoMXxHUCksIGRhdGEgPSBncDEpDQpoaXN0KHJlc2lkKG1vZDI5KSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2QyOSkpDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKG1vZDI5KQ0KbWVkaWFzMjk9ZW1tZWFucyhtb2QyOSwgfiBpbnRlbnNpZGFkZSkNCm1lZGlhczI5LjE9ZW1tZWFucyhtb2QyOSwgfiBmcmVxdWVuY2lhKQ0Kc3VtbWFyeShtZWRpYXMyOSkNCnN1bW1hcnkobWVkaWFzMjkuMSkNCnJlZzI5IDwtIGxtKEJ1dGlyaWNvMTAwfnBvbHkoYXMubnVtZXJpYyhmcmVxdWVuY2lhKSwgZGVncmVlID0gMiksIGRhdGEgPSBncDEpDQpzdW1tYXJ5KHJlZzI5KQ0KYGBgDQoNCiMjIF8qKjMwLSBWYWxlcmljbzEwMCoqXw0KDQpgYGB7cn0NCmdwMSRWYWxlcmljbzEwMD1ncDEkVmFsZXJpY28qMTAwL2dwMSRBR1Z0b3RhbA0KDQojb3V0bGllcnMNCmJveHBsb3QoZ3AxJFZhbGVyaWNvMTAwKQ0KDQojbW9kZWwNCm1vZDMwPSBsbWVyKFZhbGVyaWNvMTAwfmludGVuc2lkYWRlKmZyZXF1ZW5jaWErKDF8bGluaGFzKSsoMXxHUCksIGRhdGEgPSBncDEpDQptb2QzMC4xPSBsbWVyKFZhbGVyaWNvMTAwXjEuM35pbnRlbnNpZGFkZSpmcmVxdWVuY2lhKygxfGxpbmhhcykrKDF8R1ApLCBkYXRhID0gZ3AxKQ0KaGlzdChyZXNpZChtb2QzMC4xKSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2QzMC4xKSkNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kMzAuMSkNCm1lZGlhczMwPWVtbWVhbnMobW9kMzAsIH4gaW50ZW5zaWRhZGUpDQptZWRpYXMzMC4xPWVtbWVhbnMobW9kMzAsIH4gZnJlcXVlbmNpYSkNCnN1bW1hcnkobWVkaWFzMzApDQpzdW1tYXJ5KG1lZGlhczMwLjEpDQpyZWczMCA8LSBsbShWYWxlcmljbzEwMH5wb2x5KGFzLm51bWVyaWMoZnJlcXVlbmNpYSksIGRlZ3JlZSA9IDIpLCBkYXRhID0gZ3AxKQ0Kc3VtbWFyeShyZWczMCkNCmBgYA0KDQojIyBfKiozMS0gSXNvYnV0aXJpY28xMDAqKl8NCg0KYGBge3J9DQpncDEkSXNvYnV0aXJpY28xMDA9Z3AxJElzb2J1dGlyaWNvKjEwMC9ncDEkQUdWdG90YWwNCg0KI291dGxpZXJzDQpib3hwbG90KGdwMSRJc29idXRpcmljbzEwMCkNCg0KI21vZGVsDQptb2QzMT0gbG1lcihJc29idXRpcmljbzEwMH5pbnRlbnNpZGFkZSpmcmVxdWVuY2lhKygxfGxpbmhhcykrKDF8R1ApLCBkYXRhID0gZ3AxKQ0KaGlzdChyZXNpZChtb2QzMSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMzEpKQ0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShtb2QzMSkNCm1lZGlhczMxPWVtbWVhbnMobW9kMzEsIH4gaW50ZW5zaWRhZGUpDQptZWRpYXMzMS4xPWVtbWVhbnMobW9kMzEsIH4gZnJlcXVlbmNpYSkNCnN1bW1hcnkobWVkaWFzMzEpDQpzdW1tYXJ5KG1lZGlhczMxLjEpDQpyZWczMSA8LSBsbShJc29idXRpcmljbzEwMH5wb2x5KGFzLm51bWVyaWMoZnJlcXVlbmNpYSksIGRlZ3JlZSA9IDIpLCBkYXRhID0gZ3AxKQ0Kc3VtbWFyeShyZWczMSkNCmBgYA0KDQojIyBfKiozMi0gSXNvdmFsZXJpY28xMDAqKl8NCg0KYGBge3J9DQpncDEkSXNvdmFsZXJpY28xMDA9Z3AxJElzb3ZhbGVyaWNvKjEwMC9ncDEkQUdWdG90YWwNCg0KI291dGxpZXJzDQpib3hwbG90KGdwMSRJc292YWxlcmljbzEwMCkNCg0KI21vZGVsDQptb2QzMiA9IGxtZXIoSXNvdmFsZXJpY28xMDB+aW50ZW5zaWRhZGUqZnJlcXVlbmNpYSsoMXxsaW5oYXMpKygxfEdQKSwgZGF0YSA9IGdwMSkNCmhpc3QocmVzaWQobW9kMzIpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDMyKSkNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEobW9kMzIpDQptZWRpYXMzMj1lbW1lYW5zKG1vZDMyLCB+IGludGVuc2lkYWRlKQ0KbWVkaWFzMzIuMT1lbW1lYW5zKG1vZDMyLCB+IGZyZXF1ZW5jaWEpDQpzdW1tYXJ5KG1lZGlhczMyKQ0Kc3VtbWFyeShtZWRpYXMzMi4xKQ0KcmVnMzIgPC0gbG0oSXNvdmFsZXJpY28xMDB+cG9seShhcy5udW1lcmljKGZyZXF1ZW5jaWEpLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGdwMSkNCnN1bW1hcnkocmVnMzIpDQpgYGANCg0KIyAqKkFDQ1VNVUxBVElPTioqDQoNCiMjIyBfKipEYXRhKipfDQoNCmBgYHtyfQ0KDQpzdHIoYmlvbWFzcykNCiNTdW1tYXJ5IC0gQmlvbWFzcw0KYmlvbWFzc19zdW1tYXJ5ID0gZ3JvdXBfYnkoYmlvbWFzcywgUmVzaWR1bywgRGVzY2Fuc28sIExpbmhhcykgJT4lIA0KICBzdW1tYXJpc2UoDQogICAgQmlvbWFzc2FNUyA9IG1lYW4oQmlvbWFzc2FNUywgbmEucm0gPSBUUlVFKSwNCiAgICBmb2xoYU1TID0gbWVhbihmb2xoYU1TLCBuYS5ybSA9IFRSVUUpLA0KICAgIGNhdWxlTVMgPSBtZWFuKGNhdWxlTVMsIG5hLnJtID0gVFJVRSksDQogICAgc2VuZXNjZW50ZU1TPSBtZWFuKHNlbmVzY2VudGVNUywgbmEucm0gPSBUUlVFKSwNCiAgICBQQiA9IG1lYW4oUEIsIG5hLnJtID0gVFJVRSksDQogICAgYUZETm9tID0gbWVhbihhRkROb20sIG5hLnJtID0gVFJVRSksDQogICAgYUZEQW9tID0gbWVhbihhRkRBb20sIG5hLnJtID0gVFJVRSksDQogICAgTU0gPSBtZWFuKE1NLCBuYS5ybSA9IFRSVUUpLCANCiAgICBFRSA9IG1lYW4oRUUsIG5hLnJtID0gVFJVRSksIA0KICAgIExEQW9tPSBtZWFuKGFMREFvbSwgbmEucm0gPSBUUlVFKQ0KICAgICklPiUNCiAgcHJpbnQoYmlvbWFzc19zdW1tYXJ5KQ0KDQojU3VtbWFyeSAtIEdhcyBwcm9kdWN0aW9uDQpncF9zdW1tYXJ5ID0gZ3JvdXBfYnkoZ3AxLCBpbnRlbnNpZGFkZSwgZnJlcXVlbmNpYSwgbGluaGFzKSAlPiUgDQogIHN1bW1hcmlzZSgNCiAgICBNT1ZEID0gbWVhbihNT1ZELCBuYS5ybSA9IFRSVUUpLA0KICAgIEZETkQuZyA9IG1lYW4oRkRORC5nLCBuYS5ybSA9IFRSVUUpLA0KICAgIE1PLkFHViA9IG1lYW4oTU8uQUdWLCBuYS5ybSA9IFRSVUUpLA0KICAgIE1PLkJpby5NaWNybyA9IG1lYW4oTU8uQmlvLk1pY3JvLCBuYS5ybSA9IFRSVUUpLA0KICAgIE1PLkNPMi5DSDQuSDJPID0gbWVhbihNTy5DTzIuQ0g0LkgyTywgbmEucm0gPSBUUlVFKQ0KICAgICklPiUNCiAgcHJpbnQoZ3Bfc3VtbWFyeSkNCg0KI1N1bW1hcnkgLSBBY2N1bXVsYXRpb24NCmFjYyA9IGdyb3VwX2J5KGJpb21hc3MsIFJlc2lkdW8sIERlc2NhbnNvLCBMaW5oYXMpICU+JQ0KICBzdW1tYXJpc2UoQmlvbWFzc2FNUyA9IG1lYW4oQmlvbWFzc2FNUywgbmEucm0gPSBUUlVFKSklPiUNCiAgcHJpbnQoYWNjKQ0KDQphY2MkTGVhdmVzPWJpb21hc3Nfc3VtbWFyeSRCaW9tYXNzYU1TKmJpb21hc3Nfc3VtbWFyeSRmb2xoYU1TLzEwMDANCmFjYyRTdGVtcz1iaW9tYXNzX3N1bW1hcnkkQmlvbWFzc2FNUypiaW9tYXNzX3N1bW1hcnkkY2F1bGVNUy8xMDAwDQphY2MkRGVhZG1hdGVyaWFsPWJpb21hc3Nfc3VtbWFyeSRCaW9tYXNzYU1TKmJpb21hc3Nfc3VtbWFyeSRzZW5lc2NlbnRlTVMvMTAwMA0KYWNjJENQPWJpb21hc3Nfc3VtbWFyeSRCaW9tYXNzYU1TKmJpb21hc3Nfc3VtbWFyeSRQQi8xMDAwDQphY2MkYUZETm9tPWJpb21hc3Nfc3VtbWFyeSRCaW9tYXNzYU1TKmJpb21hc3Nfc3VtbWFyeSRhRkROb20vMTAwMA0KYWNjJEZEQW9tPWJpb21hc3Nfc3VtbWFyeSRCaW9tYXNzYU1TKmJpb21hc3Nfc3VtbWFyeSRhRkRBb20vMTAwMA0KYWNjJEFzaD1iaW9tYXNzX3N1bW1hcnkkQmlvbWFzc2FNUypiaW9tYXNzX3N1bW1hcnkkTU0vMTAwMA0KYWNjJEVFPWJpb21hc3Nfc3VtbWFyeSRCaW9tYXNzYU1TKmJpb21hc3Nfc3VtbWFyeSRFRS8xMDAwDQphY2MkTERBb209YmlvbWFzc19zdW1tYXJ5JEJpb21hc3NhTVMqYmlvbWFzc19zdW1tYXJ5JExEQW9tLzEwMDANCg0KYWNjJElWRE9NPWJpb21hc3Nfc3VtbWFyeSRCaW9tYXNzYU1TKmdwX3N1bW1hcnkkTU9WRC8xMDAwDQphY2MkSVZETkRGPWJpb21hc3Nfc3VtbWFyeSRCaW9tYXNzYU1TKmdwX3N1bW1hcnkkRkRORC5nDQphY2MkQUdDQz1iaW9tYXNzX3N1bW1hcnkkQmlvbWFzc2FNUypncF9zdW1tYXJ5JE1PLkFHVi8xMDAwDQphY2MkTUI9YmlvbWFzc19zdW1tYXJ5JEJpb21hc3NhTVMqZ3Bfc3VtbWFyeSRNTy5CaW8uTWljcm8vMTAwMA0KYWNjJEdhcz1iaW9tYXNzX3N1bW1hcnkkQmlvbWFzc2FNUypncF9zdW1tYXJ5JE1PLkNPMi5DSDQuSDJPLzEwMDANCg0KcHJpbnQoYWNjKQ0KDQphY3VtdWxhdGl2bzE9Z2F0aGVyKGFjYywgdmFyaWFibGVzLCB2YWx1ZSwgQmlvbWFzc2FNUyxMZWF2ZXMsU3RlbXMsRGVhZG1hdGVyaWFsLENQLGFGRE5vbSxGREFvbSkNCmFjdW11bGF0aXZvMj1nYXRoZXIoYWNjLCB2YXJpYWJsZXMsIHZhbHVlLCBJVkRPTSxBR0NDLE1CLEdhcykNCg0KcHJpbnQoYWN1bXVsYXRpdm8xKQ0KcHJpbnQoYWN1bXVsYXRpdm8yKQ0KYGBgDQoNCiMjIyBfKipFeHBsb3JhdG9yeSBhbmFseXNlKipfDQoNCmBgYHtyfQ0KUDM9Z2dwbG90KCkgKw0KICBnZW9tX2JhcihkYXRhID0gYWN1bXVsYXRpdm8yLCBhZXMoRGVzY2Fuc28sdmFsdWUsIGZpbGw9dmFyaWFibGVzKSxzdGF0PSJpZGVudGl0eSIscG9zaXRpb24gPSAiZG9kZ2UiLCB3aWR0aCA9IDEpKw0KICBnZW9tX2xpbmUoZGF0YSA9IGFjdW11bGF0aXZvMSwgYWVzKGFzLm51bWVyaWMoRGVzY2Fuc28pLCB2YWx1ZSwgY29sb3IgPSB2YXJpYWJsZXMpLCBzdGF0PSJzdW1tYXJ5IixmdW49Im1lYW4iKQ0KUDMNCmBgYA0KDQojIyMgXyoqQ1AgYWNjdW11bGF0aW9uKipfDQoNCmBgYHtyfQ0KI291dGxpZXJzDQpib3hwbG90KGFjYyRDUCkNCg0KI21vZGVsDQpBMSA9IGxtZXIoQ1B+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpLCBkYXRhID0gYWNjKQ0KaGlzdChyZXNpZChBMSkpDQpzaGFwaXJvLnRlc3QocmVzaWQoQTEpKQ0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShBMSkNCm1lZGlhc0ExPWVtbWVhbnMoQTEsIH4gUmVzaWR1bykNCm1lZGlhc0ExLjE9ZW1tZWFucyhBMSwgfiBEZXNjYW5zbykNCnN1bW1hcnkobWVkaWFzQTEpDQpzdW1tYXJ5KG1lZGlhc0ExLjEpDQpyZWdBMSA8LSBsbShDUH5wb2x5KGFzLm51bWVyaWMoRGVzY2Fuc28pLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGFjYykNCnN1bW1hcnkocmVnQTEpDQpgYGANCg0KIyMjIF8qKmFGRE5vbSBhY2N1bXVsYXRpb24qKl8NCg0KYGBge3J9DQojb3V0bGllcnMNCmJveHBsb3QoYWNjJGFGRE5vbSkNCg0KI21vZGVsDQpBMiA9IGxtZXIoYUZETm9tflJlc2lkdW8qRGVzY2Fuc28rKDF8TGluaGFzKSwgZGF0YSA9IGFjYykNCmhpc3QocmVzaWQoQTIpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKEEyKSkNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEoQTIpDQptZWRpYXNBMj1lbW1lYW5zKEEyLCB+IFJlc2lkdW8pDQptZWRpYXNBMi4xPWVtbWVhbnMoQTIsIH4gRGVzY2Fuc28pDQpzdW1tYXJ5KG1lZGlhc0EyKQ0Kc3VtbWFyeShtZWRpYXNBMi4xKQ0KcmVnQTIgPC0gbG0oYUZETm9tfnBvbHkoYXMubnVtZXJpYyhEZXNjYW5zbyksIGRlZ3JlZSA9IDIpLCBkYXRhID0gYWNjKQ0Kc3VtbWFyeShyZWdBMikNCmBgYA0KDQojIyMgXyoqRkRBb20gYWNjdW11bGF0aW9uKipfDQoNCmBgYHtyfQ0KI291dGxpZXJzDQpib3hwbG90KGFjYyRGREFvbSkNCg0KI21vZGVsDQpBMyA9IGxtZXIoRkRBb21+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpLCBkYXRhID0gYWNjKQ0KaGlzdChyZXNpZChBMykpDQpzaGFwaXJvLnRlc3QocmVzaWQoQTMpKQ0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShBMykNCm1lZGlhc0EzPWVtbWVhbnMoQTMsIH4gUmVzaWR1bykNCm1lZGlhc0EzLjE9ZW1tZWFucyhBMywgfiBEZXNjYW5zbykNCnN1bW1hcnkobWVkaWFzQTMpDQpzdW1tYXJ5KG1lZGlhc0EzLjEpDQpyZWdBMyA8LSBsbShGREFvbX5wb2x5KGFzLm51bWVyaWMoRGVzY2Fuc28pLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGFjYykNCnN1bW1hcnkocmVnQTMpDQpgYGANCg0KIyMjIF8qKkxEQW9tIGFjY3VtdWxhdGlvbioqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChhY2MkTERBb20pDQoNCiNtb2RlbA0KQTQgPSBsbWVyKExEQW9tflJlc2lkdW8qRGVzY2Fuc28rKDF8TGluaGFzKSwgZGF0YSA9IGFjYykNCmhpc3QocmVzaWQoQTQpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKEE0KSkNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEoQTQpDQptZWRpYXNBND1lbW1lYW5zKEE0LCB+IFJlc2lkdW8pDQptZWRpYXNBNC4xPWVtbWVhbnMoQTQsIH4gRGVzY2Fuc28pDQpzdW1tYXJ5KG1lZGlhc0E0KQ0Kc3VtbWFyeShtZWRpYXNBNC4xKQ0KcmVnQTQgPC0gbG0oTERBb21+cG9seShhcy5udW1lcmljKERlc2NhbnNvKSwgZGVncmVlID0gMiksIGRhdGEgPSBhY2MpDQpzdW1tYXJ5KHJlZ0E0KQ0KYGBgDQoNCiMjIyBfKipFRSBhY2N1bXVsYXRpb24qKl8NCg0KYGBge3J9DQojb3V0bGllcnMNCmJveHBsb3QoYWNjJEVFKQ0KDQojbW9kZWwNCkE1ID0gbG1lcihFRX5SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcyksIGRhdGEgPSBhY2MpDQpoaXN0KHJlc2lkKEE1KSkNCnNoYXBpcm8udGVzdChyZXNpZChBNSkpDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKEE1KQ0KbWVkaWFzQTU9ZW1tZWFucyhBNSwgfiBSZXNpZHVvKQ0KbWVkaWFzQTUuMT1lbW1lYW5zKEE1LCB+IERlc2NhbnNvKQ0Kc3VtbWFyeShtZWRpYXNBNSkNCnN1bW1hcnkobWVkaWFzQTUuMSkNCnJlZ0E1IDwtIGxtKEVFfnBvbHkoYXMubnVtZXJpYyhEZXNjYW5zbyksIGRlZ3JlZSA9IDIpLCBkYXRhID0gYWNjKQ0Kc3VtbWFyeShyZWdBNSkNCmBgYA0KDQojIyMgXyoqQXNoIGFjY3VtdWxhdGlvbioqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChhY2MkQXNoKQ0KDQojbW9kZWwNCkE2ID0gbG1lcihBc2h+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpLCBkYXRhID0gYWNjKQ0KaGlzdChyZXNpZChBNikpDQpzaGFwaXJvLnRlc3QocmVzaWQoQTYpKQ0KDQojQW5vdmEgZSByZWdyZXNzw6NvDQphbm92YShBNikNCm1lZGlhc0E2PWVtbWVhbnMoQTYsIH4gUmVzaWR1bykNCm1lZGlhc0E2LjE9ZW1tZWFucyhBNiwgfiBEZXNjYW5zbykNCnN1bW1hcnkobWVkaWFzQTYpDQpzdW1tYXJ5KG1lZGlhc0E2LjEpDQpyZWdBNiA8LSBsbShBc2h+cG9seShhcy5udW1lcmljKERlc2NhbnNvKSwgZGVncmVlID0gMiksIGRhdGEgPSBhY2MpDQpzdW1tYXJ5KHJlZ0E2KQ0KYGBgDQoNCiMjIyBfKipURE9NIGFjY3VtdWxhdGlvbioqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChhY2MkSVZET00pDQoNCiNtb2RlbA0KQTcgPSBsbWVyKElWRE9NflJlc2lkdW8qRGVzY2Fuc28rKDF8TGluaGFzKSwgZGF0YSA9IGFjYykNCmhpc3QocmVzaWQoQTcpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKEE3KSkNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEoQTcpDQptZWRpYXNBNz1lbW1lYW5zKEE3LCB+IFJlc2lkdW8pDQptZWRpYXNBNy4xPWVtbWVhbnMoQTcsIH4gRGVzY2Fuc28pDQpzdW1tYXJ5KG1lZGlhc0E3KQ0Kc3VtbWFyeShtZWRpYXNBNy4xKQ0KcmVnQTcgPC0gbG0oSVZET01+cG9seShhcy5udW1lcmljKERlc2NhbnNvKSwgZGVncmVlID0gMiksIGRhdGEgPSBhY2MpDQpzdW1tYXJ5KHJlZ0E3KQ0KYGBgDQoNCiMjIyBfKipURE5ERiBhY2N1bXVsYXRpb24qKl8NCg0KYGBge3J9DQojb3V0bGllcnMNCmJveHBsb3QoYWNjJElWRE5ERikNCg0KI21vZGVsDQpBOCA9IGxtZXIoSVZETkRGflJlc2lkdW8qRGVzY2Fuc28rKDF8TGluaGFzKSwgZGF0YSA9IGFjYykNCkE4LjEgPSBsbWVyKElWRE5ERl4wLjh+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpLCBkYXRhID0gYWNjKQ0KaGlzdChyZXNpZChBOC4xKSkNCnNoYXBpcm8udGVzdChyZXNpZChBOC4xKSkNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEoQTguMSkNCm1lZGlhc0E4PWVtbWVhbnMoQTgsIH4gUmVzaWR1bykNCm1lZGlhc0E4LjE9ZW1tZWFucyhBOCwgfiBEZXNjYW5zbykNCnN1bW1hcnkobWVkaWFzQTgpDQpzdW1tYXJ5KG1lZGlhc0E4LjEpDQpyZWdBOCA8LSBsbShJVkROREZ+cG9seShhcy5udW1lcmljKERlc2NhbnNvKSwgZGVncmVlID0gMiksIGRhdGEgPSBhY2MpDQpzdW1tYXJ5KHJlZ0E4KQ0KYGBgDQoNCiMjIyBfKipTQ0ZBIGFjY3VtdWxhdGlvbioqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChhY2MkQUdDQykNCg0KI21vZGVsDQpBOSA9IGxtZXIoQUdDQ35SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcyksIGRhdGEgPSBhY2MpDQpoaXN0KHJlc2lkKEE5KSkNCnNoYXBpcm8udGVzdChyZXNpZChBOSkpDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKEE5KQ0KbWVkaWFzQTk9ZW1tZWFucyhBOSwgfiBSZXNpZHVvKQ0KbWVkaWFzQTkuMT1lbW1lYW5zKEE5LCB+IERlc2NhbnNvKQ0Kc3VtbWFyeShtZWRpYXNBOSkNCnN1bW1hcnkobWVkaWFzQTkuMSkNCnJlZ0E5IDwtIGxtKEFHQ0N+cG9seShhcy5udW1lcmljKERlc2NhbnNvKSwgZGVncmVlID0gMiksIGRhdGEgPSBhY2MpDQpzdW1tYXJ5KHJlZ0E5KQ0KYGBgDQoNCiMjIyBfKipHYXMgYWNjdW11bGF0aW9uKipfDQoNCmBgYHtyfQ0KI291dGxpZXJzDQpib3hwbG90KGFjYyRHYXMpDQoNCiNtb2RlbA0KQTEwID0gbG1lcihHYXN+UmVzaWR1bypEZXNjYW5zbysoMXxMaW5oYXMpLCBkYXRhID0gYWNjKQ0KaGlzdChyZXNpZChBMTApKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKEExMCkpDQoNCiNBbm92YSBlIHJlZ3Jlc3PDo28NCmFub3ZhKEExMCkNCm1lZGlhc0ExMD1lbW1lYW5zKEExMCwgfiBSZXNpZHVvKQ0KbWVkaWFzQTEwLjE9ZW1tZWFucyhBMTAsIH4gRGVzY2Fuc28pDQpzdW1tYXJ5KG1lZGlhc0ExMCkNCnN1bW1hcnkobWVkaWFzQTEwLjEpDQpyZWdBMTAgPC0gbG0oR2FzfnBvbHkoYXMubnVtZXJpYyhEZXNjYW5zbyksIGRlZ3JlZSA9IDIpLCBkYXRhID0gYWNjKQ0Kc3VtbWFyeShyZWdBMTApDQpgYGANCg0KIyMjIF8qKk1CIGFjY3VtdWxhdGlvbioqXw0KDQpgYGB7cn0NCiNvdXRsaWVycw0KYm94cGxvdChhY2MkTUIpDQoNCiNtb2RlbA0KQTExID0gbG1lcihNQn5SZXNpZHVvKkRlc2NhbnNvKygxfExpbmhhcyksIGRhdGEgPSBhY2MpDQpoaXN0KHJlc2lkKEExMSkpDQpzaGFwaXJvLnRlc3QocmVzaWQoQTExKSkNCg0KI0Fub3ZhIGUgcmVncmVzc8Ojbw0KYW5vdmEoQTExKQ0KbWVkaWFzQTExPWVtbWVhbnMoQTExLCB+IFJlc2lkdW8pDQptZWRpYXNBMTEuMT1lbW1lYW5zKEExMSwgfiBEZXNjYW5zbykNCnN1bW1hcnkobWVkaWFzQTExKQ0Kc3VtbWFyeShtZWRpYXNBMTEuMSkNCnJlZ0ExMSA8LSBsbShNQn5wb2x5KGFzLm51bWVyaWMoRGVzY2Fuc28pLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGFjYykNCnN1bW1hcnkocmVnQTExKQ0KYGBgDQoNCiMgKipQTE9UUyoqDQoNCiMjIF8qKjEgLSBDdXJ2YSBkZSBjYWxpYnJhY2FvKipfDQoNCmBgYHtyfQ0KbW9kID0gbG0oVm9sdW1lfnBzaSxkYXRhPWN1cnZlKQ0Kc3VtbWFyeShtb2QpDQoNCkxpbmUuZXF1YXRpb24gPC0gZnVuY3Rpb24oQSl7DQogIG1vZDsNCiAgZXEgPC0gc3Vic3RpdHV0ZShpdGFsaWMoeSkgPT0gICAgYippdGFsaWMoeCl+IisifmF+IiAifn5pdGFsaWMoUileMn4iPSJ+cjIsIA0KICAgICAgICAgICAgICAgICAgIGxpc3QoYSA9IGZvcm1hdCh1bm5hbWUoY29lZihtb2QpWzFdKSwgZGlnaXRzID0gMyksDQogICAgICAgICAgICAgICAgICAgICAgICBiID0gZm9ybWF0KHVubmFtZShjb2VmKG1vZClbMl0pLCBkaWdpdHMgPSAzKSwNCiAgICAgICAgICAgICAgICAgICAgICAgIHIyID0gZm9ybWF0KHN1bW1hcnkobW9kKSRyLnNxdWFyZWQsIGRpZ2l0cyA9IDIpKSkNCiAgYXMuY2hhcmFjdGVyKGFzLmV4cHJlc3Npb24oZXEpKTsNCn0NCg0KcGxvdD1nZ3Bsb3QoY3VydmUsIGFlcyh4PXBzaSwgeT1Wb2x1bWUpKSArIA0KICBnZW9tX3BvaW50KHNoYXBlPTE5LCBjb2xvcj0nZGFya2JsdWUnLCBzaXplPTEuMykgKyANCiAgZ2VvbV9zbW9vdGgoY29sb3I9J2JsYWNrJywgbWV0aG9kPWxtLCBzZT1GKSsNCiAgc2NhbGVfeF9jb250aW51b3VzKG5hbWUgPSJQcmVzc3VyZSAocHNpKSIsIGJyZWFrcz1zZXEoMCw0LjUsMC41KSkrDQogIHNjYWxlX3lfY29udGludW91cyhuYW1lID0gIkFjdHVhbCB2b2x1bWUgKG1MKSIsYnJlYWtzPXNlcSgwLDI4LDIpKSsNCiAgZ2VvbV90ZXh0KHggPSAxLjUsIHkgPSAyNCwgY29sb3I9J2JsYWNrJywgc2l6ZT00LGxhYmVsID0gTGluZS5lcXVhdGlvbihBKSwgcGFyc2UgPSBUUlVFKSsNCiAgdGhlbWUocGFuZWwuYmFja2dyb3VuZCA9IGVsZW1lbnRfcmVjdChmaWxsID0gInRyYW5zcGFyZW50IiwgY29sb3VyID0gImJsYWNrIixzaXplID0gMC4zKSwNCiAgYXhpcy5saW5lID0gZWxlbWVudF9saW5lKGNvbG91ciA9ICJibGFjayIsIHNpemUgPSAwLjMsIGxpbmV0eXBlID0gInNvbGlkIiksDQogIGF4aXMudGl0bGUueSA9IGVsZW1lbnRfdGV4dChzaXplID0gMTIpLA0KICBheGlzLnRpdGxlLnggPSBlbGVtZW50X3RleHQoc2l6ZSA9IDEyKSwNCiAgYXhpcy50ZXh0LnggPSBlbGVtZW50X3RleHQoc2l6ZSA9IDEwKSwNCiAgYXhpcy50ZXh0LnkgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDEwKSkNCnBsb3QNCg0KI1NhdmUgcGxvdHMNCnNhdmVfcGxvdCgiY3VydmUucGRmIiwgcGxvdCwgbmNvbCA9IDEsIG5yb3cgPSAxKQ0KYGBgDQoNCiMjIF8qKjIgLSBJbiB2aXRybyBwYXJ0aXRpb25pbmcgb2Ygb3JnYW5pYyBtYXR0ZXIqKl8NCg0KYGBge3J9DQojIFBsb3QgMQ0KZ3AyID1nYXRoZXIoZ3AxLCB2YXJpYWJsZXMsIHZhbHVlLCBNT2luY3ViYWRhLE1PVkQsTU9uZGVncmFkKQ0KcHJpbnQoZ3AyKQ0KDQpyZWdwMSA8LSBsbShNT2luY3ViYWRhfnBvbHkoYXMubnVtZXJpYyhmcmVxdWVuY2lhKSwgZGVncmVlID0gMiksIGRhdGEgPSBncDEpDQpzdW1tYXJ5KHJlZ3AxKQ0KcmVncDIgPC0gbG0oTU9uZGVncmFkfnBvbHkoYXMubnVtZXJpYyhmcmVxdWVuY2lhKSwgZGVncmVlID0gMiksIGRhdGEgPSBncDEpDQpzdW1tYXJ5KHJlZ3AyKQ0KcmVncDMgPC0gbG0oTU9WRH5wb2x5KGFzLm51bWVyaWMoZnJlcXVlbmNpYSksIGRlZ3JlZSA9IDIpLCBkYXRhID0gZ3AxKQ0Kc3VtbWFyeShyZWdwMykNCg0KUDE9Z2dwbG90KGdwMiwgYWVzKHg9YXMubnVtZXJpYyhmcmVxdWVuY2lhKSx5PXZhbHVlLGZpbGw9dmFyaWFibGVzLCBjb2xvdXI9dmFyaWFibGVzKSkrDQogIGdlb21fZGVuc2l0eShzdGF0PSJzdW1tYXJ5IixmdW49Im1lYW4iLCBhbHBoYT0wLjIpKw0KICBzY2FsZV9jb2xvcl9tYW51YWwodmFsdWVzPWMoImJsdWUiLCJyZWQiLCJncmVlbiIpLG5hbWUgPSAiUGFydGl0aW9uaW5nIChtZykiLA0KICAgICAgICAgICAgICAgICAgICAgbGFiZWxzID0gYygiT00gaW5jdWJhdGVkIChPTWkpIiwgIk9NIHVuZGVncmFkZWQgKE9NdSkiLCAiT00gZGVncmFkZWQgKE9NZCkiKSkrDQogIHNjYWxlX2ZpbGxfbWFudWFsKHZhbHVlcz1jKCJibHVlIiwicmVkIiwiZ3JlZW4iKSxuYW1lID0gIlBhcnRpdGlvbmluZyAobWcpIiwNCiAgICAgICAgICAgICAgICAgICAgIGxhYmVscyA9IGMoIk9NIGluY3ViYXRlZCAoT01pKSIsICJPTSB1bmRlZ3JhZGVkIChPTXUpIiwgIk9NIGRlZ3JhZGVkIChPTWQpIikpKw0KICBzY2FsZV94X2Rpc2NyZXRlKG5hbWU9IkZyZXF1ZW5jeSAoZGF5cykiLCBsaW1pdHM9YygiMjEiLCAiMjgiLCAiMzUiLCI0MiIpKSsNCiAgY29vcmRfY2FydGVzaWFuKHlsaW0gPSBjKDAsMTEwMCkpDQpQMQ0KDQpQMS4xPVAxK3RoZW1lKGF4aXMubGluZSA9IGVsZW1lbnRfbGluZShjb2xvdXIgPSAiYmxhY2siLCBzaXplID0gMC4zLCBsaW5ldHlwZSA9ICJzb2xpZCIpLA0KIHBhbmVsLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbCA9ICJ3aGl0ZSIsIGNvbG91ciA9ICJibGFjayIpLA0KIGxlZ2VuZC5iYWNrZ3JvdW5kID0gZWxlbWVudF9yZWN0KGZpbGwgPSAidHJhbnNwYXJlbnQiLCBzaXplPTAuNSwgbGluZXR5cGU9InNvbGlkIixjb2xvdXIgPSJ0cmFuc3BhcmVudCIpLA0KIGxlZ2VuZC5wb3NpdGlvbiA9IGMoMC4xNywgMC44MikpK3NjYWxlX3lfY29udGludW91cyhuYW1lPSJPTSBwYXJ0aXRpb25pbmcgKG1nL2cpIiwgYnJlYWtzPXNlcSgwLDk1MCw1MCkpKw0KICBhbm5vdGF0ZShnZW9tPSJ0ZXh0IiwgeT0xMDUwLCB4PTMuNSwgDQogIGxhYmVsPWV4cHJlc3Npb24ocGFzdGUoIiBPTWkgPSA2OC4zMHggICsgNzI1LjI3ICAgIiwgUl4yLCAiPSAwLjEwIikpLCBzaXplPTQsIGNvbG9yPSJibGFjayIpKw0KICBhbm5vdGF0ZShnZW9tPSJ0ZXh0IiwgeT05ODAsIHg9My41LCANCiAgbGFiZWw9ZXhwcmVzc2lvbihwYXN0ZSgiT011ID0gNjMxLjB4ICsgMzM0LjcxICAgIiwgUl4yLCAiPSAwLjM4IikpLCBzaXplPTQsIGNvbG9yPSJibGFjayIpKw0KICBhbm5vdGF0ZShnZW9tPSJ0ZXh0IiwgeT05MTAsIHg9My41LCANCiAgbGFiZWw9ZXhwcmVzc2lvbihwYXN0ZSgiT01kID0gLTU2MS4zeCArIDM5MC44MSAgICIsIFJeMiwgIj0gMC40MSIpKSwgc2l6ZT00LCBjb2xvcj0iYmxhY2siKQ0KUDEuMQ0KDQojIFBsb3QgMg0KZ3AzID1nYXRoZXIoZ3AxLCB2YXJpYWJsZXMsIHZhbHVlLCBNTy5BR1YsTU8uQ08yLkNINC5IMk8sIE1PLkJpby5NaWNybykNCnByaW50KGdwMykNCg0KcmVncDEuMSA8LSBsbShNTy5BR1Z+cG9seShhcy5udW1lcmljKGZyZXF1ZW5jaWEpLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGdwMSkNCnN1bW1hcnkocmVncDEuMSkNCnJlZ3AyLjEgPC0gbG0oTU8uQ08yLkNINC5IMk9+cG9seShhcy5udW1lcmljKGZyZXF1ZW5jaWEpLCBkZWdyZWUgPSAyKSwgZGF0YSA9IGdwMSkNCnN1bW1hcnkocmVncDIuMSkNCnJlZ3AzLjEgPC0gbG0oTU8uQmlvLk1pY3JvfnBvbHkoYXMubnVtZXJpYyhmcmVxdWVuY2lhKSwgZGVncmVlID0gMiksIGRhdGEgPSBncDEpDQpzdW1tYXJ5KHJlZ3AzLjEpDQoNClAyPWdncGxvdChncDMsIGFlcyh4PWFzLm51bWVyaWMoZnJlcXVlbmNpYSkseT12YWx1ZSxmaWxsPXZhcmlhYmxlcywgY29sb3VyPXZhcmlhYmxlcykpKw0KICBnZW9tX2RlbnNpdHkoc3RhdD0ic3VtbWFyeSIsZnVuPSJtZWFuIiwgYWxwaGE9MC4yKSsNCiAgc2NhbGVfY29sb3JfbWFudWFsKHZhbHVlcz1jKCJicm93bjIiLCJkYXJrb3JjaGlkIiwiY3lhbjIiKSxuYW1lID0gIlBhcnRpdGlvbmluZyAobWcpIiwNCiAgICAgICAgICAgICAgICAgICAgIGxhYmVscyA9IGMoIk9NIGZvciBTQ0ZBIiwgIk9NIGZvciBNQiIsICJPTSBmb3IgR2FzIikpKw0KICBzY2FsZV9maWxsX21hbnVhbCh2YWx1ZXM9YygiYnJvd24yIiwiZGFya29yY2hpZCIsImN5YW4yIiksbmFtZSA9ICJQYXJ0aXRpb25pbmcgKG1nKSIsDQogICAgICAgICAgICAgICAgICAgICBsYWJlbHMgPSBjKCJPTSBmb3IgU0NGQSIsICJPTSBmb3IgTUIiLCAiT00gZm9yIEdhcyIpKSsNCiAgc2NhbGVfeF9kaXNjcmV0ZShuYW1lPSJGcmVxdWVuY3kgKGRheXMpIiwgbGltaXRzPWMoIjIxIiwgIjI4IiwgIjM1IiwiNDIiKSkrDQogIGNvb3JkX2NhcnRlc2lhbih5bGltID0gYygwLDQyMCkpDQpQMg0KUDIuMT1QMit0aGVtZShheGlzLmxpbmUgPSBlbGVtZW50X2xpbmUoY29sb3VyID0gImJsYWNrIiwgc2l6ZSA9IDAuMywgbGluZXR5cGUgPSAic29saWQiKSwNCiBwYW5lbC5iYWNrZ3JvdW5kID0gZWxlbWVudF9yZWN0KGZpbGwgPSAid2hpdGUiLCBjb2xvdXIgPSAiYmxhY2siKSwNCiBsZWdlbmQuYmFja2dyb3VuZCA9IGVsZW1lbnRfcmVjdChmaWxsID0gInRyYW5zcGFyZW50Iiwgc2l6ZT0wLjUsIGxpbmV0eXBlPSJzb2xpZCIsY29sb3VyID0idHJhbnNwYXJlbnQiKSwNCiBsZWdlbmQucG9zaXRpb24gPSBjKDAuMTMsIDAuODIpKStzY2FsZV95X2NvbnRpbnVvdXMobmFtZT0iT00gcGFydGl0aW9uaW5nIChtZy9nKSIsIGJyZWFrcz1zZXEoMCwzNjAsMjApKSsNCiAgYW5ub3RhdGUoZ2VvbT0idGV4dCIsIHk9Mzk1LCB4PTMuMywgDQogIGxhYmVsPWV4cHJlc3Npb24ocGFzdGUoIlNDRkEgPSAtMjEuNzB4ICsgMTA4LjI4ICAgIiwgUl4yLCAiPSAwLjAwNCIpKSwgc2l6ZT00LCBjb2xvcj0iYmxhY2siKSsNCiAgYW5ub3RhdGUoZ2VvbT0idGV4dCIsIHk9MzY1LCB4PTMuMywgDQogIGxhYmVsPWV4cHJlc3Npb24ocGFzdGUoIiAgICBNQiA9IC01MzEuNHggKyAyMTEuMzcgICAiLCBSXjIsICI9IDAuMTgiKSksIHNpemU9NCwgY29sb3I9ImJsYWNrIikrDQogIGFubm90YXRlKGdlb209InRleHQiLCB5PTMzNSwgeD0zLjMsIA0KICBsYWJlbD1leHByZXNzaW9uKHBhc3RlKCIgICAgICAgR2FzID0gLTkuMTc5eCArIDcwLjk5ICAgIiwgUl4yLCAiPSAwLjAwMiIpKSwgc2l6ZT00LCBjb2xvcj0iYmxhY2siKQ0KUDIuMQ0KDQojU2F2ZSBwbG90cw0Kc2lkZS5ieS5zaWRlIDwtIHBsb3RfZ3JpZChQMS4xLFAyLjEsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbHMgPSBjKCJBIiwgIkIiKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbmNvbCA9IDEsIG5yb3cgPTIsIGFsaWduID0gIlYiKQ0Kc2lkZS5ieS5zaWRlDQpzYXZlX3Bsb3QoInBhcnRpdGlvbmluZy5wZGYiLCBzaWRlLmJ5LnNpZGUsIG5jb2wgPSAxLCBucm93ID0gMikNCmBgYA0KDQoNCiMgKipQQUNLQUdFIENJVEFUSU9OUyoqDQoNCmBgYHtyfQ0KY2l0YXRpb24oKQ0KY2l0YXRpb24oImxtZTQiKQ0KY2l0YXRpb24oImxtZXJUZXN0IikNCmNpdGF0aW9uKCJkcGx5ciIpDQpjaXRhdGlvbigidGlkeXIiKQ0KY2l0YXRpb24oImVtbWVhbnMiKQ0KY2l0YXRpb24oImdncGxvdDIiKQ0KY2l0YXRpb24oImNvd3Bsb3QiKQ0KY2l0YXRpb24oImNvcnJwbG90IikNCmBgYA0KDQoNCg0KDQoNCg==