DATA

data2=read.csv("D:\\Armazenamento\\DATA R\\Ensaio 2\\data2.csv")
data2$propagacao=as.factor(data2$propagacao)
data2$saturacao=as.factor(data2$saturacao)
str(data2)
'data.frame':   32 obs. of  57 variables:
 $ ID             : chr  "V1" "V18" "V4" "V19" ...
 $ propagacao     : Factor w/ 2 levels "Estaquia","Semente": 1 1 1 1 2 2 2 2 1 1 ...
 $ saturacao      : Factor w/ 4 levels "19","39","52",..: 1 1 1 1 1 1 1 1 2 2 ...
 $ rep            : int  1 2 3 4 1 2 3 4 1 2 ...
 $ V.             : num  18 23 15 20 18 22 14 22 39 42 ...
 $ m.             : num  46 32 54 38 50 35 56 37 11 12 ...
 $ pH             : num  4.3 4.28 4.13 4.21 4.17 4.26 4.12 4.24 4.72 4.77 ...
 $ Al             : num  5.8 4 5.8 4.8 6.3 4.3 6 4.5 1.8 2 ...
 $ H.Al           : num  30.4 28 29.5 31.1 28.3 ...
 $ sb             : num  6.8 8.3 5 7.8 6.4 8 4.7 7.6 14.3 14.8 ...
 $ Ca             : num  4 3.8 2.7 3.7 3.7 3.8 2.4 4 9 9.6 ...
 $ Mg             : num  2.5 3.9 2 3.5 2.4 3.6 1.9 3.2 4.9 4.9 ...
 $ V.final        : num  17 16 NA 15 32 17 25 25 19 18 ...
 $ m.final        : num  51 50 NA 53 23 49 31 33 41 51 ...
 $ pH.final       : num  4 3.89 NA 3.87 4.28 3.98 4.43 4.13 3.96 3.89 ...
 $ Al.final       : num  7.8 8 NA 7.5 4.5 7.5 4.3 5.8 6 7.8 ...
 $ H.Al.final     : num  36 40 NA 36.4 31.8 37.6 28.9 34.2 36.4 35.7 ...
 $ sb.final       : num  7.5 7.9 NA 6.6 14.9 7.7 9.7 11.5 8.8 7.6 ...
 $ Ca.final       : num  5.3 5.2 NA 4.5 6.7 4.7 5.6 5.1 7.2 6.5 ...
 $ Mg.final       : num  1.3 2 NA 1.5 2.2 2.1 1.5 2.5 0.9 0.8 ...
 $ K.final        : num  0.87 0.69 NA 0.59 5.97 0.87 2.61 3.93 0.65 0.32 ...
 $ P.final        : num  207 122 NA 110 265 ...
 $ Folha          : num  30.6 28.8 28 28 NA ...
 $ Caule          : num  47.5 52.3 48.4 57.5 NA ...
 $ Senescente     : num  22 18.9 23.6 14.6 NA ...
 $ Raizes         : num  10.2 20.7 20.9 13.3 NA ...
 $ Altura         : num  37.7 43.3 42 53.3 11 ...
 $ Perfilhos      : num  19.33 24.67 17.67 19.33 0.67 ...
 $ MF.corte1      : num  27.5 28.8 25.1 33 12.7 ...
 $ MF.corte2      : num  20.9 21.8 21.4 24.4 NA ...
 $ MF.corte3      : num  27.69 32.87 27.57 31.58 1.68 ...
 $ MF.accumulation: num  76.1 83.5 74.1 89 NA ...
 $ MF.mean        : num  25.4 27.9 24.7 29.7 7.2 ...
 $ DM105          : num  911 901 913 902 NA ...
 $ MM             : num  125 126 120 127 NA ...
 $ MO             : num  875 874 880 873 NA ...
 $ EE             : num  59.4 51.3 56.7 49.7 NA ...
 $ FDN            : num  599 579 627 543 NA ...
 $ aFDNom         : num  588 566 618 534 NA ...
 $ FDA            : num  327 346 360 366 NA ...
 $ aFDAom         : num  316 333 352 357 NA ...
 $ LDA            : num  121 134 128 124 NA ...
 $ aLDAom         : num  110 121 120 114 NA ...
 $ PB             : num  188 162 188 194 NA ...
 $ Nitrogênio     : num  30 26 30 31 NA 37 44 26 21 23 ...
 $ Fósforo        : num  3.8 3.4 4.4 3.4 NA 3.9 4.4 3.2 3.3 3.6 ...
 $ Potássio       : num  14 19 27 11 NA 17 18 15 20 18 ...
 $ Cálcio         : num  8 8 9 10 NA 8 7 9 11 13 ...
 $ Magnésio       : num  2.2 2.8 2.3 3.2 NA 2.9 1.9 2.7 3.7 3.8 ...
 $ Enxofre        : num  1.2 1.2 1.5 1.2 NA 1.2 1.6 1.2 1.4 1 ...
 $ Boro           : num  137 157 138 170 NA 154 164 141 134 132 ...
 $ Cobre          : num  9 7 8 7 NA 9 12 5 9 10 ...
 $ Ferro          : num  314 330 239 298 NA 282 306 284 324 275 ...
 $ Manganês       : num  236 372 244 328 NA 481 361 315 205 163 ...
 $ Zinco          : num  170 155 169 173 NA 268 296 152 112 102 ...
 $ SPAD           : num  30.6 30.7 30.3 28.7 NA ...
 $ Al.1           : num  291 NA 232 NA NA ...
data2
biomass=read.csv("D:\\Armazenamento\\DATA R\\Ensaio 2\\Assay2_biomass.csv")
biomass$propagacao=as.factor(biomass$propagacao)
biomass$Cycle=as.factor(biomass$Cycle)
biomass$Perfilhos=as.numeric(biomass$Perfilhos)
str(biomass)
'data.frame':   96 obs. of  9 variables:
 $ ID        : chr  "V1" "V18" "V4" "V19" ...
 $ propagacao: Factor w/ 2 levels "Estaquia","Semente": 1 1 1 1 2 2 2 2 1 1 ...
 $ saturacao : int  19 19 19 19 19 19 19 19 39 39 ...
 $ rep       : int  1 2 3 4 1 2 3 4 1 2 ...
 $ Cycle     : Factor w/ 3 levels "1","2","3": 1 1 1 1 1 1 1 1 1 1 ...
 $ Altura    : int  39 50 43 56 33 40 15 33 77 60 ...
 $ Perfilhos : num  11 12 10 10 2 2 2 2 10 8 ...
 $ MF.MV     : num  154.6 155.8 144.5 185.5 46.2 ...
 $ MF.MS     : num  27.5 28.8 25.1 33 12.7 ...
biomass

SOIL PROPERTIES

1 - V.final

#model
mod1 = aov(V.final~propagacao*saturacao, data = data2)
hist(rstandard(mod1))

shapiro.test(resid(mod1))

    Shapiro-Wilk normality test

data:  resid(mod1)
W = 0.98004, p-value = 0.8138
#Tukey
library(emmeans)
medias1=emmeans(mod1,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias1.1=emmeans(mod1,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias1)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     24.8 1.021 23     22.6     26.9
 Semente      29.1 0.981 23     27.1     31.2

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias1.1)
 saturacao emmean   SE df lower.CL upper.CL
 19          20.4 1.50 23     17.3     23.5
 39          24.1 1.39 23     21.3     27.0
 52          26.4 1.39 23     23.5     29.2
 63          36.9 1.39 23     34.0     39.7

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod1)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1  111.3   111.3   7.232   0.0131 *  
saturacao             3 1124.4   374.8  24.351 2.53e-07 ***
propagacao:saturacao  3   62.7    20.9   1.358   0.2804    
Residuals            23  354.0    15.4                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
library(multcompView)
citation("multcompView")
To cite package ‘multcompView’ in publications use:

  Graves S, Piepho H, Dorai-Raj LSwhfS (2023). _multcompView: Visualizations of Paired
  Comparisons_. R package version 0.1-9,
  <https://CRAN.R-project.org/package=multcompView>.

A BibTeX entry for LaTeX users is

  @Manual{,
    title = {multcompView: Visualizations of Paired Comparisons},
    author = {Spencer Graves and Hans-Peter Piepho and Luciano Selzer with help from Sundar Dorai-Raj},
    year = {2023},
    note = {R package version 0.1-9},
    url = {https://CRAN.R-project.org/package=multcompView},
  }

ATTENTION: This citation information has been auto-generated from the package
DESCRIPTION file and may need manual editing, see ‘help("citation")’.
tukey1 = TukeyHSD(mod1)
print(tukey1)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = V.final ~ propagacao * saturacao, data = data2)

$propagacao
                     diff       lwr      upr     p adj
Semente-Estaquia 3.791667 0.8749011 6.708432 0.0130969

$saturacao
           diff        lwr       upr     p adj
39-19  3.395833 -2.2230018  9.014668 0.3603510
52-19  5.645833  0.0269982 11.264668 0.0486130
63-19 16.145833 10.5269982 21.764668 0.0000003
52-39  2.250000 -3.1783105  7.678310 0.6650139
63-39 12.750000  7.3216895 18.178310 0.0000070
63-52 10.500000  5.0716895 15.928310 0.0001083

$`propagacao:saturacao`
                         diff         lwr       upr     p adj
Semente:19-Estaquia:19   8.75  -1.2120724 18.712072 0.1141999
Estaquia:39-Estaquia:19  5.50  -4.4620724 15.462072 0.6042243
Semente:39-Estaquia:19  10.75   0.7879276 20.712072 0.0282059
Estaquia:52-Estaquia:19  9.25  -0.7120724 19.212072 0.0819912
Semente:52-Estaquia:19  11.50   1.5379276 21.462072 0.0160484
Estaquia:63-Estaquia:19 20.25  10.2879276 30.212072 0.0000166
Semente:63-Estaquia:19  21.50  11.5379276 31.462072 0.0000065
Estaquia:39-Semente:19  -3.25 -12.4730868  5.973087 0.9321091
Semente:39-Semente:19    2.00  -7.2230868 11.223087 0.9953989
Estaquia:52-Semente:19   0.50  -8.7230868  9.723087 0.9999996
Semente:52-Semente:19    2.75  -6.4730868 11.973087 0.9711717
Estaquia:63-Semente:19  11.50   2.2769132 20.723087 0.0078803
Semente:63-Semente:19   12.75   3.5269132 21.973087 0.0027161
Semente:39-Estaquia:39   5.25  -3.9730868 14.473087 0.5689015
Estaquia:52-Estaquia:39  3.75  -5.4730868 12.973087 0.8690912
Semente:52-Estaquia:39   6.00  -3.2230868 15.223087 0.4077928
Estaquia:63-Estaquia:39 14.75   5.5269132 23.973087 0.0004843
Semente:63-Estaquia:39  16.00   6.7769132 25.223087 0.0001658
Estaquia:52-Semente:39  -1.50 -10.7230868  7.723087 0.9992473
Semente:52-Semente:39    0.75  -8.4730868  9.973087 0.9999928
Estaquia:63-Semente:39   9.50   0.2769132 18.723087 0.0403455
Semente:63-Semente:39   10.75   1.5269132 19.973087 0.0147409
Semente:52-Estaquia:52   2.25  -6.9730868 11.473087 0.9906954
Estaquia:63-Estaquia:52 11.00   1.7769132 20.223087 0.0119810
Semente:63-Estaquia:52  12.25   3.0269132 21.473087 0.0041686
Estaquia:63-Semente:52   8.75  -0.4730868 17.973087 0.0714830
Semente:63-Semente:52   10.00   0.7769132 19.223087 0.0271543
Semente:63-Estaquia:63   1.25  -7.9730868 10.473087 0.9997720
tukey.cld1 = multcompLetters4(mod1, tukey1)
print(tukey.cld1)
$propagacao
 Semente Estaquia 
     "a"      "b" 

$saturacao
  63   52   39   19 
 "a"  "b" "bc"  "c" 

$`propagacao:saturacao`
 Semente:63 Estaquia:63  Semente:52  Semente:39 Estaquia:52  Semente:19 Estaquia:39 Estaquia:19 
        "a"        "ab"        "bc"         "c"        "cd"        "cd"        "cd"         "d" 

2 - m.final

#model
mod2 = aov(m.final~propagacao*saturacao, data = data2)
hist(rstandard(mod2))

shapiro.test(resid(mod2))

    Shapiro-Wilk normality test

data:  resid(mod2)
W = 0.94695, p-value = 0.1285
#Tukey
medias2=emmeans(mod2,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias2.1=emmeans(mod2,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias2)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia     35.7 1.66 23     32.3     39.1
 Semente      28.1 1.59 23     24.8     31.4

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias2.1)
 saturacao emmean   SE df lower.CL upper.CL
 19          42.7 2.43 23     37.6     47.7
 39          35.5 2.25 23     30.8     40.2
 52          31.4 2.25 23     26.7     36.0
 63          18.0 2.25 23     13.3     22.7

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod2)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1  337.7   337.7   8.343  0.00829 ** 
saturacao             3 2346.3   782.1  19.323 1.76e-06 ***
propagacao:saturacao  3  265.0    88.3   2.183  0.11746    
Residuals            23  930.9    40.5                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey2 = TukeyHSD(mod2)
print(tukey2)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = m.final ~ propagacao * saturacao, data = data2)

$propagacao
                      diff      lwr      upr     p adj
Semente-Estaquia -6.604167 -11.3341 -1.87423 0.0082929

$saturacao
            diff       lwr        upr     p adj
39-19  -6.400298 -15.51201   2.711416 0.2381970
52-19 -10.525298 -19.63701  -1.413584 0.0194955
63-19 -23.900298 -33.01201 -14.788584 0.0000012
52-39  -4.125000 -12.92775   4.677752 0.5741358
63-39 -17.500000 -26.30275  -8.697248 0.0000755
63-52 -13.375000 -22.17775  -4.572248 0.0017915

$`propagacao:saturacao`
                             diff        lwr         upr     p adj
Semente:19-Estaquia:19  -17.33333 -33.488203  -1.1784635 0.0295125
Estaquia:39-Estaquia:19 -12.08333 -28.238203   4.0715365 0.2496591
Semente:39-Estaquia:19  -19.58333 -35.738203  -3.4284635 0.0103062
Estaquia:52-Estaquia:19 -17.58333 -33.738203  -1.4284635 0.0263255
Semente:52-Estaquia:19  -22.33333 -38.488203  -6.1784635 0.0027150
Estaquia:63-Estaquia:19 -32.83333 -48.988203 -16.6784635 0.0000166
Semente:63-Estaquia:19  -33.83333 -49.988203 -17.6784635 0.0000104
Estaquia:39-Semente:19    5.25000  -9.706503  20.2065032 0.9333722
Semente:39-Semente:19    -2.25000 -17.206503  12.7065032 0.9995468
Estaquia:52-Semente:19   -0.25000 -15.206503  14.7065032 1.0000000
Semente:52-Semente:19    -5.00000 -19.956503   9.9565032 0.9476713
Estaquia:63-Semente:19  -15.50000 -30.456503  -0.5434968 0.0385480
Semente:63-Semente:19   -16.50000 -31.456503  -1.5434968 0.0235878
Semente:39-Estaquia:39   -7.50000 -22.456503   7.4565032 0.7067841
Estaquia:52-Estaquia:39  -5.50000 -20.456503   9.4565032 0.9167603
Semente:52-Estaquia:39  -10.25000 -25.206503   4.7065032 0.3459336
Estaquia:63-Estaquia:39 -20.75000 -35.706503  -5.7934968 0.0026115
Semente:63-Estaquia:39  -21.75000 -36.706503  -6.7934968 0.0015356
Estaquia:52-Semente:39    2.00000 -12.956503  16.9565032 0.9997914
Semente:52-Semente:39    -2.75000 -17.706503  12.2065032 0.9983491
Estaquia:63-Semente:39  -13.25000 -28.206503   1.7065032 0.1087348
Semente:63-Semente:39   -14.25000 -29.206503   0.7065032 0.0695222
Semente:52-Estaquia:52   -4.75000 -19.706503  10.2065032 0.9597479
Estaquia:63-Estaquia:52 -15.25000 -30.206503  -0.2934968 0.0434761
Semente:63-Estaquia:52  -16.25000 -31.206503  -1.2934968 0.0267063
Estaquia:63-Semente:52  -10.50000 -25.456503   4.4565032 0.3182512
Semente:63-Semente:52   -11.50000 -26.456503   3.4565032 0.2221409
Semente:63-Estaquia:63   -1.00000 -15.956503  13.9565032 0.9999981
tukey.cld2 = multcompLetters4(mod2, tukey2)
print(tukey.cld2)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
  19   39   52   63 
 "a" "ab"  "b"  "c" 

$`propagacao:saturacao`
Estaquia:19 Estaquia:39  Semente:19 Estaquia:52  Semente:39  Semente:52 Estaquia:63  Semente:63 
        "a"        "ab"         "b"         "b"        "bc"        "bc"         "c"         "c" 

3 - pH.final

#model
mod3 = aov(pH.final~propagacao*saturacao, data = data2)
hist(rstandard(mod3))

shapiro.test(resid(mod3))

    Shapiro-Wilk normality test

data:  resid(mod3)
W = 0.96168, p-value = 0.323
#Tukey
medias3=emmeans(mod3,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias3.1=emmeans(mod3,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias3)
 propagacao emmean     SE df lower.CL upper.CL
 Estaquia     4.07 0.0367 23     3.99     4.14
 Semente      4.18 0.0353 23     4.11     4.25

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias3.1)
 saturacao emmean     SE df lower.CL upper.CL
 19          4.06 0.0539 23     3.95     4.17
 39          4.10 0.0499 23     3.99     4.20
 52          4.04 0.0499 23     3.94     4.14
 63          4.29 0.0499 23     4.19     4.40

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod3)
                     Df Sum Sq Mean Sq F value  Pr(>F)   
propagacao            1 0.0879 0.08795   4.419 0.04670 * 
saturacao             3 0.3105 0.10351   5.200 0.00688 **
propagacao:saturacao  3 0.0780 0.02601   1.307 0.29623   
Residuals            23 0.4578 0.01990                   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey3 = TukeyHSD(mod3)
print(tukey3)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = pH.final ~ propagacao * saturacao, data = data2)

$propagacao
                      diff        lwr       upr     p adj
Semente-Estaquia 0.1065833 0.00169244 0.2114742 0.0467021

$saturacao
             diff          lwr       upr     p adj
39-19  0.02225595 -0.179805073 0.2243170 0.9899044
52-19 -0.03649405 -0.238555073 0.1655670 0.9582928
63-19  0.21850595  0.016444927 0.4205670 0.0307545
52-39 -0.05875000 -0.253959496 0.1364595 0.8383251
63-39  0.19625000  0.001040504 0.3914595 0.0484635
63-52  0.25500000  0.059790504 0.4502095 0.0073953

$`propagacao:saturacao`
                           diff         lwr       upr     p adj
Semente:19-Estaquia:19   0.2850 -0.07324980 0.6432498 0.1904642
Estaquia:39-Estaquia:19  0.1225 -0.23574980 0.4807498 0.9414202
Semente:39-Estaquia:19   0.2325 -0.12574980 0.5907498 0.4106783
Estaquia:52-Estaquia:19  0.0875 -0.27074980 0.4457498 0.9906304
Semente:52-Estaquia:19   0.1500 -0.20824980 0.5082498 0.8517105
Estaquia:63-Estaquia:19  0.3700  0.01175020 0.7282498 0.0395462
Semente:63-Estaquia:19   0.3775  0.01925020 0.7357498 0.0339736
Estaquia:39-Semente:19  -0.1625 -0.49417486 0.1691749 0.7291373
Semente:39-Semente:19   -0.0525 -0.38417486 0.2791749 0.9993685
Estaquia:52-Semente:19  -0.1975 -0.52917486 0.1341749 0.5152171
Semente:52-Semente:19   -0.1350 -0.46667486 0.1966749 0.8684848
Estaquia:63-Semente:19   0.0850 -0.24667486 0.4166749 0.9876091
Semente:63-Semente:19    0.0925 -0.23917486 0.4241749 0.9800010
Semente:39-Estaquia:39   0.1100 -0.22167486 0.4416749 0.9497332
Estaquia:52-Estaquia:39 -0.0350 -0.36667486 0.2966749 0.9999574
Semente:52-Estaquia:39   0.0275 -0.30417486 0.3591749 0.9999918
Estaquia:63-Estaquia:39  0.2475 -0.08417486 0.5791749 0.2520744
Semente:63-Estaquia:39   0.2550 -0.07667486 0.5866749 0.2222304
Estaquia:52-Semente:39  -0.1450 -0.47667486 0.1866749 0.8230605
Semente:52-Semente:39   -0.0825 -0.41417486 0.2491749 0.9895768
Estaquia:63-Semente:39   0.1375 -0.19417486 0.4691749 0.8577793
Semente:63-Semente:39    0.1450 -0.18667486 0.4766749 0.8230605
Semente:52-Estaquia:52   0.0625 -0.26917486 0.3941749 0.9980723
Estaquia:63-Estaquia:52  0.2825 -0.04917486 0.6141749 0.1352802
Semente:63-Estaquia:52   0.2900 -0.04167486 0.6216749 0.1171664
Estaquia:63-Semente:52   0.2200 -0.11167486 0.5516749 0.3844683
Semente:63-Semente:52    0.2275 -0.10417486 0.5591749 0.3449293
Semente:63-Estaquia:63   0.0075 -0.32417486 0.3391749 1.0000000
tukey.cld3 = multcompLetters4(mod3, tukey3)
print(tukey.cld3)
$propagacao
 Semente Estaquia 
     "a"      "b" 

$saturacao
 63  39  19  52 
"a" "b" "b" "b" 

$`propagacao:saturacao`
 Semente:63 Estaquia:63  Semente:19  Semente:39  Semente:52 Estaquia:39 Estaquia:52 Estaquia:19 
        "a"         "a"        "ab"        "ab"        "ab"        "ab"        "ab"         "b" 

4 - Al.final

#model
mod4 = aov(Al.final~propagacao*saturacao, data = data2)
hist(rstandard(mod4))

shapiro.test(resid(mod4))

    Shapiro-Wilk normality test

data:  resid(mod4)
W = 0.925, p-value = 0.0321
mod4.1 = aov(Al.final^0.8~propagacao*saturacao, data = data2)
hist(rstandard(mod4.1))

shapiro.test(resid(mod4.1))

    Shapiro-Wilk normality test

data:  resid(mod4.1)
W = 0.93375, p-value = 0.05549
#Tukey
medias4=emmeans(mod4,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias4.1=emmeans(mod4,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias4)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     5.67 0.235 23     5.18     6.15
 Semente      4.92 0.225 23     4.46     5.39

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias4.1)
 saturacao emmean    SE df lower.CL upper.CL
 19          6.65 0.344 23     5.93     7.36
 39          5.80 0.319 23     5.14     6.46
 52          5.15 0.319 23     4.49     5.81
 63          3.59 0.319 23     2.93     4.25

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod4.1)
                     Df Sum Sq Mean Sq F value  Pr(>F)    
propagacao            1  0.887   0.887   3.329  0.0811 .  
saturacao             3 12.066   4.022  15.098 1.2e-05 ***
propagacao:saturacao  3  1.708   0.569   2.137  0.1232    
Residuals            23  6.127   0.266                    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey4 = TukeyHSD(mod4.1)
print(tukey4)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Al.final^0.8 ~ propagacao * saturacao, data = data2)

$propagacao
                       diff        lwr        upr     p adj
Semente-Estaquia -0.3384637 -0.7221834 0.04525596 0.0810671

$saturacao
            diff       lwr         upr     p adj
39-19 -0.3942806 -1.133475  0.34491409 0.4674264
52-19 -0.7622127 -1.501407 -0.02301802 0.0416129
63-19 -1.6923371 -2.431532 -0.95314244 0.0000103
52-39 -0.3679321 -1.082062  0.34619776 0.4967529
63-39 -1.2980565 -2.012186 -0.58392665 0.0002378
63-52 -0.9301244 -1.644254 -0.21599454 0.0075827

$`propagacao:saturacao`
                               diff        lwr         upr     p adj
Semente:19-Estaquia:19  -1.24518233 -2.5557583  0.06539369 0.0708023
Estaquia:39-Estaquia:19 -1.03098525 -2.3415613  0.27959077 0.2005996
Semente:39-Estaquia:19  -1.13228943 -2.4428654  0.17828660 0.1252156
Estaquia:52-Estaquia:19 -1.30030116 -2.6108772  0.01027486 0.0528485
Semente:52-Estaquia:19  -1.59883775 -2.9094138 -0.28826172 0.0097093
Estaquia:63-Estaquia:19 -2.36861464 -3.6791907 -1.05803862 0.0000939
Semente:63-Estaquia:19  -2.39077310 -3.7013491 -1.08019707 0.0000823
Estaquia:39-Semente:19   0.21419707 -0.9991605  1.42755470 0.9987253
Semente:39-Semente:19    0.11289290 -1.1004647  1.32625053 0.9999819
Estaquia:52-Semente:19  -0.05511883 -1.2684765  1.15823879 0.9999999
Semente:52-Semente:19   -0.35365542 -1.5670130  0.85970221 0.9745065
Estaquia:63-Semente:19  -1.12343231 -2.3367899  0.08992531 0.0834590
Semente:63-Semente:19   -1.14559077 -2.3589484  0.06776685 0.0737445
Semente:39-Estaquia:39  -0.10130417 -1.3146618  1.11205345 0.9999914
Estaquia:52-Estaquia:39 -0.26931591 -1.4826735  0.94404172 0.9947005
Semente:52-Estaquia:39  -0.56785249 -1.7812101  0.64550513 0.7700911
Estaquia:63-Estaquia:39 -1.33762939 -2.5509870 -0.12427176 0.0237252
Semente:63-Estaquia:39  -1.35978784 -2.5731455 -0.14643022 0.0206966
Estaquia:52-Semente:39  -0.16801173 -1.3813694  1.04534589 0.9997372
Semente:52-Semente:39   -0.46654832 -1.6799059  0.74680930 0.8977221
Estaquia:63-Semente:39  -1.23632522 -2.4496828 -0.02296759 0.0436929
Semente:63-Semente:39   -1.25848367 -2.4718413 -0.04512605 0.0383111
Semente:52-Estaquia:52  -0.29853659 -1.5118942  0.91482104 0.9902191
Estaquia:63-Estaquia:52 -1.06831348 -2.2816711  0.14504414 0.1126397
Semente:63-Estaquia:52  -1.09047194 -2.3038296  0.12288569 0.0999917
Estaquia:63-Semente:52  -0.76977690 -1.9831345  0.44358073 0.4382096
Semente:63-Semente:52   -0.79193535 -2.0052930  0.42142227 0.4038336
Semente:63-Estaquia:63  -0.02215846 -1.2355161  1.19119917 1.0000000
tukey.cld4 = multcompLetters4(mod4.1, tukey4)
print(tukey.cld4)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
  19   39   52   63 
 "a" "ab"  "b"  "c" 

$`propagacao:saturacao`
Estaquia:19 Estaquia:39  Semente:39  Semente:19 Estaquia:52  Semente:52 Estaquia:63  Semente:63 
        "a"        "ab"        "ab"       "abc"       "abc"        "bc"         "c"         "c" 

5 - H.Al.final

#model
mod5 = aov(H.Al.final~propagacao*saturacao, data = data2)
hist(rstandard(mod5))

shapiro.test(resid(mod5))

    Shapiro-Wilk normality test

data:  resid(mod5)
W = 0.988, p-value = 0.9742
#Tukey
medias5=emmeans(mod5,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias5.1=emmeans(mod5,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias5)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     32.9 0.621 23     31.6     34.1
 Semente      31.8 0.597 23     30.5     33.0

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias5.1)
 saturacao emmean    SE df lower.CL upper.CL
 19          35.3 0.911 23     33.4     37.2
 39          33.9 0.844 23     32.1     35.6
 52          31.7 0.844 23     30.0     33.4
 63          28.3 0.844 23     26.6     30.1

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod5)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1   4.91    4.91   0.863    0.363    
saturacao             3 200.55   66.85  11.740 7.24e-05 ***
propagacao:saturacao  3  26.23    8.74   1.535    0.232    
Residuals            23 130.96    5.69                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey5 = TukeyHSD(mod5)
print(tukey5)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = H.Al.final ~ propagacao * saturacao, data = data2)

$propagacao
                       diff       lwr       upr     p adj
Semente-Estaquia -0.7966667 -2.570742 0.9774084 0.3625615

$saturacao
           diff        lwr         upr     p adj
39-19 -1.167619  -4.585184  2.24994573 0.7809214
52-19 -3.342619  -6.760184  0.07494573 0.0567953
63-19 -6.705119 -10.122684 -3.28755427 0.0000899
52-39 -2.175000  -5.476681  1.12668125 0.2885387
63-39 -5.537500  -8.839181 -2.23581875 0.0006162
63-52 -3.362500  -6.664181 -0.06081875 0.0448702

$`propagacao:saturacao`
                             diff        lwr         upr     p adj
Semente:19-Estaquia:19  -4.341667 -10.400935  1.71760128 0.2953974
Estaquia:39-Estaquia:19 -3.291667  -9.350935  2.76760128 0.6224438
Semente:39-Estaquia:19  -3.891667  -9.950935  2.16760128 0.4232790
Estaquia:52-Estaquia:19 -5.741667 -11.800935  0.31760128 0.0720340
Semente:52-Estaquia:19  -5.791667 -11.850935  0.26760128 0.0680688
Estaquia:63-Estaquia:19 -9.416667 -15.475935 -3.35739872 0.0006935
Semente:63-Estaquia:19  -8.841667 -14.900935 -2.78239872 0.0014760
Estaquia:39-Semente:19   1.050000  -4.559792  6.65979205 0.9981524
Semente:39-Semente:19    0.450000  -5.159792  6.05979205 0.9999934
Estaquia:52-Semente:19  -1.400000  -7.009792  4.20979205 0.9893737
Semente:52-Semente:19   -1.450000  -7.059792  4.15979205 0.9869844
Estaquia:63-Semente:19  -5.075000 -10.684792  0.53479205 0.0961477
Semente:63-Semente:19   -4.500000 -10.109792  1.10979205 0.1831455
Semente:39-Estaquia:39  -0.600000  -6.209792  5.00979205 0.9999533
Estaquia:52-Estaquia:39 -2.450000  -8.059792  3.15979205 0.8237697
Semente:52-Estaquia:39  -2.500000  -8.109792  3.10979205 0.8091046
Estaquia:63-Estaquia:39 -6.125000 -11.734792 -0.51520795 0.0256668
Semente:63-Estaquia:39  -5.550000 -11.159792  0.05979205 0.0539082
Estaquia:52-Semente:39  -1.850000  -7.459792  3.75979205 0.9511530
Semente:52-Semente:39   -1.900000  -7.509792  3.70979205 0.9441350
Estaquia:63-Semente:39  -5.525000 -11.134792  0.08479205 0.0556233
Semente:63-Semente:39   -4.950000 -10.559792  0.65979205 0.1112448
Semente:52-Estaquia:52  -0.050000  -5.659792  5.55979205 1.0000000
Estaquia:63-Estaquia:52 -3.675000  -9.284792  1.93479205 0.3993715
Semente:63-Estaquia:52  -3.100000  -8.709792  2.50979205 0.6031704
Estaquia:63-Semente:52  -3.625000  -9.234792  1.98479205 0.4159000
Semente:63-Semente:52   -3.050000  -8.659792  2.55979205 0.6215244
Semente:63-Estaquia:63   0.575000  -5.034792  6.18479205 0.9999650
tukey.cld5 = multcompLetters4(mod5, tukey5)
print(tukey.cld5)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
 19  39  52  63 
"a" "a" "a" "b" 

$`propagacao:saturacao`
Estaquia:19 Estaquia:39  Semente:39  Semente:19 Estaquia:52  Semente:52  Semente:63 Estaquia:63 
        "a"        "ab"       "abc"       "abc"       "abc"       "abc"        "bc"         "c" 

6 - sb.final

#model
mod6 = aov(sb.final~propagacao*saturacao, data = data2)
hist(rstandard(mod6))

shapiro.test(resid(mod6))

    Shapiro-Wilk normality test

data:  resid(mod6)
W = 0.98781, p-value = 0.9722
#Tukey
medias6=emmeans(mod6,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias6.1=emmeans(mod6,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias6)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     10.8 0.477 23     9.85     11.8
 Semente      13.1 0.458 23    12.11     14.0

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias6.1)
 saturacao emmean    SE df lower.CL upper.CL
 19          9.14 0.700 23     7.69     10.6
 39         10.71 0.648 23     9.37     12.1
 52         11.46 0.648 23    10.12     12.8
 63         16.48 0.648 23    15.13     17.8

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod6)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1  30.84   30.84   9.174  0.00597 ** 
saturacao             3 228.56   76.19  22.663 4.68e-07 ***
propagacao:saturacao  3   8.30    2.77   0.823  0.49461    
Residuals            23  77.32    3.36                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey6 = TukeyHSD(mod6)
print(tukey6)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = sb.final ~ propagacao * saturacao, data = data2)

$propagacao
                     diff       lwr      upr     p adj
Semente-Estaquia 1.995833 0.6327059 3.358961 0.0059714

$saturacao
         diff        lwr      upr     p adj
39-19 1.45506 -1.1708588 4.080978 0.4348209
52-19 2.20506 -0.4208588 4.830978 0.1217687
63-19 7.21756  4.5916412 9.843478 0.0000006
52-39 0.75000 -1.7868781 3.286878 0.8452953
63-39 5.76250  3.2256219 8.299378 0.0000116
63-52 5.01250  2.4756219 7.549378 0.0000819

$`propagacao:saturacao`
                             diff        lwr       upr     p adj
Semente:19-Estaquia:19   3.616667 -1.0390294  8.272363 0.2123227
Estaquia:39-Estaquia:19  1.941667 -2.7140294  6.597363 0.8541459
Semente:39-Estaquia:19   4.816667  0.1609706  9.472363 0.0390424
Estaquia:52-Estaquia:19  3.466667 -1.1890294  8.122363 0.2542969
Semente:52-Estaquia:19   4.791667  0.1359706  9.447363 0.0405842
Estaquia:63-Estaquia:19  8.591667  3.9359706 13.247363 0.0000698
Semente:63-Estaquia:19   9.691667  5.0359706 14.347363 0.0000115
Estaquia:39-Semente:19  -1.675000 -5.9853370  2.635337 0.8927216
Semente:39-Semente:19    1.200000 -3.1103370  5.510337 0.9801945
Estaquia:52-Semente:19  -0.150000 -4.4603370  4.160337 1.0000000
Semente:52-Semente:19    1.175000 -3.1353370  5.485337 0.9823933
Estaquia:63-Semente:19   4.975000  0.6646630  9.285337 0.0160699
Semente:63-Semente:19    6.075000  1.7646630 10.385337 0.0021925
Semente:39-Estaquia:39   2.875000 -1.4353370  7.185337 0.3778350
Estaquia:52-Estaquia:39  1.525000 -2.7853370  5.835337 0.9307688
Semente:52-Estaquia:39   2.850000 -1.4603370  7.160337 0.3882574
Estaquia:63-Estaquia:39  6.650000  2.3396630 10.960337 0.0007587
Semente:63-Estaquia:39   7.750000  3.4396630 12.060337 0.0001009
Estaquia:52-Semente:39  -1.350000 -5.6603370  2.960337 0.9625653
Semente:52-Semente:39   -0.025000 -4.3353370  4.285337 1.0000000
Estaquia:63-Semente:39   3.775000 -0.5353370  8.085337 0.1160774
Semente:63-Semente:39    4.875000  0.5646630  9.185337 0.0191515
Semente:52-Estaquia:52   1.325000 -2.9853370  5.635337 0.9660744
Estaquia:63-Estaquia:52  5.125000  0.8146630  9.435337 0.0123220
Semente:63-Estaquia:52   6.225000  1.9146630 10.535337 0.0016629
Estaquia:63-Semente:52   3.800000 -0.5103370  8.110337 0.1118111
Semente:63-Semente:52    4.900000  0.5896630  9.210337 0.0183321
Semente:63-Estaquia:63   1.100000 -3.2103370  5.410337 0.9879057
tukey.cld6 = multcompLetters4(mod6, tukey6)
print(tukey.cld6)
$propagacao
 Semente Estaquia 
     "a"      "b" 

$saturacao
 63  52  39  19 
"a" "b" "b" "b" 

$`propagacao:saturacao`
 Semente:63 Estaquia:63  Semente:39  Semente:52  Semente:19 Estaquia:52 Estaquia:39 Estaquia:19 
        "a"        "ab"        "bc"        "bc"        "cd"        "cd"        "cd"         "d" 

7 - Ca.final

#model
mod7 = aov(Ca.final~propagacao*saturacao, data = data2)
hist(rstandard(mod7))

shapiro.test(resid(mod7))

    Shapiro-Wilk normality test

data:  resid(mod7)
W = 0.97628, p-value = 0.7033
#Tukey
medias7=emmeans(mod7,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias7.1=emmeans(mod7,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias7)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     8.56 0.252 23     8.03     9.08
 Semente      9.29 0.242 23     8.79     9.80

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias7.1)
 saturacao emmean    SE df lower.CL upper.CL
 19          5.26 0.370 23     4.50     6.03
 39          8.05 0.343 23     7.34     8.76
 52          9.39 0.343 23     8.68    10.10
 63         13.00 0.343 23    12.29    13.71

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod7)
                     Df Sum Sq Mean Sq F value  Pr(>F)    
propagacao            1   1.94    1.94   2.063   0.164    
saturacao             3 234.52   78.17  83.200 1.7e-12 ***
propagacao:saturacao  3   0.31    0.10   0.111   0.953    
Residuals            23  21.61    0.94                    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey7 = TukeyHSD(mod7)
print(tukey7)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Ca.final ~ propagacao * saturacao, data = data2)

$propagacao
                      diff        lwr      upr     p adj
Semente-Estaquia 0.5004167 -0.2202381 1.221071 0.1643357

$saturacao
          diff          lwr      upr     p adj
39-19 2.785744  1.397480112 4.174008 0.0000667
52-19 4.123244  2.734980112 5.511508 0.0000002
63-19 7.735744  6.347480112 9.124008 0.0000000
52-39 1.337500 -0.003690381 2.678690 0.0508103
63-39 4.950000  3.608809619 6.291190 0.0000000
63-52 3.612500  2.271309619 4.953690 0.0000008

$`propagacao:saturacao`
                         diff         lwr       upr     p adj
Semente:19-Estaquia:19  0.525 -1.93636173  2.986362 0.9958397
Estaquia:39-Estaquia:19 2.525  0.06363827  4.986362 0.0415745
Semente:39-Estaquia:19  3.575  1.11363827  6.036362 0.0015574
Estaquia:52-Estaquia:19 4.000  1.53863827  6.461362 0.0003944
Semente:52-Estaquia:19  4.775  2.31363827  7.236362 0.0000336
Estaquia:63-Estaquia:19 7.700  5.23863827 10.161362 0.0000000
Semente:63-Estaquia:19  8.300  5.83863827 10.761362 0.0000000
Estaquia:39-Semente:19  2.000 -0.27877817  4.278778 0.1146931
Semente:39-Semente:19   3.050  0.77122183  5.328778 0.0038451
Estaquia:52-Semente:19  3.475  1.19622183  5.753778 0.0008746
Semente:52-Semente:19   4.250  1.97122183  6.528778 0.0000599
Estaquia:63-Semente:19  7.175  4.89622183  9.453778 0.0000000
Semente:63-Semente:19   7.775  5.49622183 10.053778 0.0000000
Semente:39-Estaquia:39  1.050 -1.22877817  3.328778 0.7830351
Estaquia:52-Estaquia:39 1.475 -0.80377817  3.753778 0.4138703
Semente:52-Estaquia:39  2.250 -0.02877817  4.528778 0.0546604
Estaquia:63-Estaquia:39 5.175  2.89622183  7.453778 0.0000028
Semente:63-Estaquia:39  5.775  3.49622183  8.053778 0.0000004
Estaquia:52-Semente:39  0.425 -1.85377817  2.703778 0.9981937
Semente:52-Semente:39   1.200 -1.07877817  3.478778 0.6564868
Estaquia:63-Semente:39  4.125  1.84622183  6.403778 0.0000918
Semente:63-Semente:39   4.725  2.44622183  7.003778 0.0000122
Semente:52-Estaquia:52  0.775 -1.50377817  3.053778 0.9429740
Estaquia:63-Estaquia:52 3.700  1.42122183  5.978778 0.0003989
Semente:63-Estaquia:52  4.300  2.02122183  6.578778 0.0000505
Estaquia:63-Semente:52  2.925  0.64622183  5.203778 0.0059176
Semente:63-Semente:52   3.525  1.24622183  5.803778 0.0007345
Semente:63-Estaquia:63  0.600 -1.67877817  2.878778 0.9855330
tukey.cld7 = multcompLetters4(mod7, tukey7)
print(tukey.cld7)
$propagacao
$propagacao$Letters
 Semente Estaquia 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Semente  TRUE
Estaquia TRUE


$saturacao
 63  52  39  19 
"a" "b" "b" "c" 

$`propagacao:saturacao`
 Semente:63 Estaquia:63  Semente:52 Estaquia:52  Semente:39 Estaquia:39  Semente:19 Estaquia:19 
        "a"         "a"         "b"         "b"         "b"        "bc"        "cd"         "d" 

8 - Mg.final

#model
mod8 = aov(Mg.final~propagacao*saturacao, data = data2)
hist(rstandard(mod8))

shapiro.test(resid(mod8))

    Shapiro-Wilk normality test

data:  resid(mod8)
W = 0.98935, p-value = 0.9859
#Tukey
medias8=emmeans(mod8,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias8.1=emmeans(mod8,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias8)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     1.72 0.172 23     1.36     2.07
 Semente      2.51 0.165 23     2.16     2.85

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias8.1)
 saturacao emmean    SE df lower.CL upper.CL
 19          1.84 0.252 23     1.32     2.36
 39          1.95 0.233 23     1.47     2.43
 52          1.61 0.233 23     1.13     2.10
 63          3.05 0.233 23     2.57     3.53

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod8)
                     Df Sum Sq Mean Sq F value  Pr(>F)   
propagacao            1  4.705   4.705  10.790 0.00325 **
saturacao             3  9.861   3.287   7.538 0.00110 **
propagacao:saturacao  3  0.867   0.289   0.663 0.58328   
Residuals            23 10.030   0.436                   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey8 = TukeyHSD(mod8)
print(tukey8)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Mg.final ~ propagacao * saturacao, data = data2)

$propagacao
                      diff       lwr      upr     p adj
Semente-Estaquia 0.7795833 0.2886185 1.270548 0.0032473

$saturacao
           diff        lwr       upr     p adj
39-19  0.134256 -0.8115349 1.0800468 0.9789365
52-19 -0.203244 -1.1490349 0.7425468 0.9326591
63-19  1.234256  0.2884651 2.1800468 0.0074579
52-39 -0.337500 -1.2512208 0.5762208 0.7383586
63-39  1.100000  0.1862792 2.0137208 0.0143284
63-52  1.437500  0.5237792 2.3512208 0.0012458

$`propagacao:saturacao`
                          diff         lwr       upr     p adj
Semente:19-Estaquia:19   0.475 -1.20186665 2.1518666 0.9781987
Estaquia:39-Estaquia:19 -0.325 -2.00186665 1.3518666 0.9977000
Semente:39-Estaquia:19   1.025 -0.65186665 2.7018666 0.4834853
Estaquia:52-Estaquia:19 -0.300 -1.97686665 1.3768666 0.9986122
Semente:52-Estaquia:19   0.325 -1.35186665 2.0018666 0.9977000
Estaquia:63-Estaquia:19  1.100 -0.57686665 2.7768666 0.3977559
Semente:63-Estaquia:19   1.800  0.12313335 3.4768666 0.0294078
Estaquia:39-Semente:19  -0.800 -2.35247685 0.7524768 0.6792883
Semente:39-Semente:19    0.550 -1.00247685 2.1024768 0.9303209
Estaquia:52-Semente:19  -0.775 -2.32747685 0.7774768 0.7111945
Semente:52-Semente:19   -0.150 -1.70247685 1.4024768 0.9999766
Estaquia:63-Semente:19   0.625 -0.92747685 2.1774768 0.8745824
Semente:63-Semente:19    1.325 -0.22747685 2.8774768 0.1338102
Semente:39-Estaquia:39   1.350 -0.20247685 2.9024768 0.1208083
Estaquia:52-Estaquia:39  0.025 -1.52747685 1.5774768 1.0000000
Semente:52-Estaquia:39   0.650 -0.90247685 2.2024768 0.8517349
Estaquia:63-Estaquia:39  1.425 -0.12747685 2.9774768 0.0880585
Semente:63-Estaquia:39   2.125  0.57252315 3.6774768 0.0030254
Estaquia:52-Semente:39  -1.325 -2.87747685 0.2274768 0.1338102
Semente:52-Semente:39   -0.700 -2.25247685 0.8524768 0.8002300
Estaquia:63-Semente:39   0.075 -1.47747685 1.6274768 0.9999998
Semente:63-Semente:39    0.775 -0.77747685 2.3274768 0.7111945
Semente:52-Estaquia:52   0.625 -0.92747685 2.1774768 0.8745824
Estaquia:63-Estaquia:52  1.400 -0.15247685 2.9524768 0.0979956
Semente:63-Estaquia:52   2.100  0.54752315 3.6524768 0.0034362
Estaquia:63-Semente:52   0.775 -0.77747685 2.3274768 0.7111945
Semente:63-Semente:52    1.475 -0.07747685 3.0274768 0.0708064
Semente:63-Estaquia:63   0.700 -0.85247685 2.2524768 0.8002300
tukey.cld8 = multcompLetters4(mod8, tukey8)
print(tukey.cld8)
$propagacao
 Semente Estaquia 
     "a"      "b" 

$saturacao
 63  39  19  52 
"a" "b" "b" "b" 

$`propagacao:saturacao`
 Semente:63 Estaquia:63  Semente:39  Semente:19  Semente:52 Estaquia:19 Estaquia:52 Estaquia:39 
        "a"        "ab"        "ab"        "ab"        "ab"         "b"         "b"         "b" 

BIOMASSA PRODUCTION

9 - MF.mean

#model
mod9 = aov(MF.mean~propagacao*saturacao, data = data2)
hist(rstandard(mod9))

shapiro.test(resid(mod9))

    Shapiro-Wilk normality test

data:  resid(mod9)
W = 0.9314, p-value = 0.04286
summary(mod9)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1  509.2   509.2  38.853 1.93e-06 ***
saturacao             3  450.9   150.3  11.468 7.36e-05 ***
propagacao:saturacao  3  105.3    35.1   2.678   0.0698 .  
Residuals            24  314.5    13.1                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
#means and sd
library(dplyr)

Attaching package: ‘dplyr’

The following objects are masked from ‘package:stats’:

    filter, lag

The following objects are masked from ‘package:base’:

    intersect, setdiff, setequal, union
data_summary9 = group_by(data2, saturacao) %>%
  summarise(sd = sd(MF.mean, na.rm = TRUE),
    biomass.mean = mean(MF.mean, na.rm = TRUE))%>%
 arrange(desc(biomass.mean))
print(data_summary9)

data_summary9.1 = group_by(data2, propagacao) %>%
  summarise(sd = sd(MF.mean, na.rm = TRUE),
    biomass.mean = mean(MF.mean, na.rm = TRUE))%>%
 arrange(desc(biomass.mean))
print(data_summary9.1)

library(multcompView)
#tukey
tukey9 = TukeyHSD(mod9)
print(tukey9)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = MF.mean ~ propagacao * saturacao, data = data2)

$propagacao
                      diff       lwr       upr   p adj
Semente-Estaquia -7.978125 -10.61977 -5.336478 1.9e-06

$saturacao
          diff       lwr       upr     p adj
39-19  7.92000  2.926654 12.913346 0.0010927
52-19  9.07875  4.085404 14.072096 0.0002204
63-19  8.83500  3.841654 13.828346 0.0003087
52-39  1.15875 -3.834596  6.152096 0.9179214
63-39  0.91500 -4.078346  5.908346 0.9569858
63-52 -0.24375 -5.237096  4.749596 0.9991027

$`propagacao:saturacao`
                            diff         lwr        upr     p adj
Semente:19-Estaquia:19  -13.4150 -21.8930389 -4.9369611 0.0005173
Estaquia:39-Estaquia:19   5.7450  -2.7330389 14.2230389 0.3622628
Semente:39-Estaquia:19   -3.3200 -11.7980389  5.1580389 0.8912196
Estaquia:52-Estaquia:19   4.4500  -4.0280389 12.9280389 0.6639560
Semente:52-Estaquia:19    0.2925  -8.1855389  8.7705389 1.0000000
Estaquia:63-Estaquia:19   4.7650  -3.7130389 13.2430389 0.5877694
Semente:63-Estaquia:19   -0.5100  -8.9880389  7.9680389 0.9999991
Estaquia:39-Semente:19   19.1600  10.6819611 27.6380389 0.0000025
Semente:39-Semente:19    10.0950   1.6169611 18.5730389 0.0119702
Estaquia:52-Semente:19   17.8650   9.3869611 26.3430389 0.0000080
Semente:52-Semente:19    13.7075   5.2294611 22.1855389 0.0003910
Estaquia:63-Semente:19   18.1800   9.7019611 26.6580389 0.0000060
Semente:63-Semente:19    12.9050   4.4269611 21.3830389 0.0008428
Semente:39-Estaquia:39   -9.0650 -17.5430389 -0.5869611 0.0301833
Estaquia:52-Estaquia:39  -1.2950  -9.7730389  7.1830389 0.9995172
Semente:52-Estaquia:39   -5.4525 -13.9305389  3.0255389 0.4251916
Estaquia:63-Estaquia:39  -0.9800  -9.4580389  7.4980389 0.9999242
Semente:63-Estaquia:39   -6.2550 -14.7330389  2.2230389 0.2662086
Estaquia:52-Semente:39    7.7700  -0.7080389 16.2480389 0.0892826
Semente:52-Semente:39     3.6125  -4.8655389 12.0905389 0.8433944
Estaquia:63-Semente:39    8.0850  -0.3930389 16.5630389 0.0692879
Semente:63-Semente:39     2.8100  -5.6680389 11.2880389 0.9511217
Semente:52-Estaquia:52   -4.1575 -12.6355389  4.3205389 0.7320200
Estaquia:63-Estaquia:52   0.3150  -8.1630389  8.7930389 1.0000000
Semente:63-Estaquia:52   -4.9600 -13.4380389  3.5180389 0.5404267
Estaquia:63-Semente:52    4.4725  -4.0055389 12.9505389 0.6585784
Semente:63-Semente:52    -0.8025  -9.2805389  7.6755389 0.9999804
Semente:63-Estaquia:63   -5.2750 -13.7530389  3.2030389 0.4656448
tukey.cld9 = multcompLetters4(mod9, tukey9)
print(tukey.cld9)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
 52  63  39  19 
"a" "a" "a" "b" 

$`propagacao:saturacao`
Estaquia:39 Estaquia:63 Estaquia:52  Semente:52 Estaquia:19  Semente:63  Semente:39  Semente:19 
        "a"        "ab"        "ab"        "ab"        "ab"        "ab"         "b"         "c" 
cld9 = as.data.frame.list(tukey.cld9$`saturacao`)
data_summary9$Tukey = cld9$Letters
print(data_summary9)
library(ggplot2)
#plot
plt1=ggplot(data_summary9, aes(x=as.factor(saturacao), y=biomass.mean, fill=saturacao))+
  geom_col(position = "dodge")+
  geom_errorbar(aes(ymin=biomass.mean-sd, ymax=biomass.mean+sd), width=.2, position=position_dodge(.9))+ 
  geom_text(aes(label=Tukey), position = position_dodge(0.9), size = 4, 
            vjust=-0.9, hjust=-0.9, colour = "Black")+
  scale_x_discrete(name="BCS levels (%)")+
  scale_y_continuous(breaks = seq(0, 45, 5), name= "Shoot biomass production (g/pot)")+
  coord_cartesian(ylim = c(0,45))+scale_fill_manual(values = c("grey80", "grey60", "grey40","grey20"))
plt1

plt1=plt1+theme(legend.key=element_blank(), 
            axis.line = element_line(colour = "black",size = 0.5, linetype = "solid"),
            panel.background = element_rect(fill = 'transparent',size = 0.5, colour = "black",linetype = "solid"),
            legend.position = "none",
            axis.title.x = element_text(size = 13),
            axis.title.y = element_text(size = 13),
            axis.text.x = element_text(size = 12),
            axis.text.y = element_text(size = 12))+
            annotate("text", size=5, x=3, y=4, color= "white",label="-0.82%")+
            annotate("text", size=5, x=2, y=4, color= "white",label="-3.93%")+
            annotate("text", size=5, x=1, y=4, color= "white",label="-31.0%*")+
            annotate("text", size=4, x=4, y=45,label="P-value")+
            annotate("text",size=3, x=4, y=43,label= "PM = <.001")+
            annotate("text",size=3, x=4, y=41,  label= "BCS = <.001")+
            annotate("text",size=3, x=4, y=39,label= "P*B = 0.070")
Warning: The `size` argument of `element_line()` is deprecated as of ggplot2 3.4.0.
Please use the `linewidth` argument instead.Warning: The `size` argument of `element_rect()` is deprecated as of ggplot2 3.4.0.
Please use the `linewidth` argument instead.
plt1

10- Roots biomass

#model
mod10 = aov(Raizes~propagacao*saturacao, data = data2)
hist(rstandard(mod10))

shapiro.test(resid(mod10))

    Shapiro-Wilk normality test

data:  resid(mod10)
W = 0.9658, p-value = 0.4315
summary(mod10)
                     Df Sum Sq Mean Sq F value Pr(>F)  
propagacao            1  378.6   378.6   7.079 0.0143 *
saturacao             3  599.6   199.9   3.738 0.0261 *
propagacao:saturacao  3  197.0    65.7   1.228 0.3233  
Residuals            22 1176.5    53.5                 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
#means and sd
data_summary10 = group_by(data2, saturacao) %>%
  summarise(sd = sd(Raizes, na.rm = TRUE),
    Root = mean(Raizes, na.rm = TRUE))%>%
 arrange(desc(Root))
print(data_summary10)

data_summary10.1 = group_by(data2, propagacao) %>%
  summarise(sd = sd(Raizes, na.rm = TRUE),
    Root = mean(Raizes, na.rm = TRUE))%>%
 arrange(desc(Root))
print(data_summary10.1)

#tukey
tukey10 = TukeyHSD(mod10)
print(tukey10)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Raizes ~ propagacao * saturacao, data = data2)

$propagacao
                      diff       lwr       upr     p adj
Semente-Estaquia -7.120625 -12.67083 -1.570423 0.0142822

$saturacao
           diff         lwr       upr     p adj
39-19  6.544687  -4.4222064 17.511581 0.3691285
52-19 11.532187   0.5652936 22.499081 0.0369178
63-19 11.374687   0.4077936 22.341581 0.0402045
52-39  4.987500  -5.1658708 15.140871 0.5339830
63-39  4.830000  -5.3233708 14.983371 0.5599003
63-52 -0.157500 -10.3108708  9.995871 0.9999704

$`propagacao:saturacao`
                            diff         lwr       upr     p adj
Semente:19-Estaquia:19  -10.7150 -31.8596898 10.429690 0.6921137
Estaquia:39-Estaquia:19   9.1875  -8.0770669 26.452067 0.6407814
Semente:39-Estaquia:19   -5.6150 -22.8795669 11.649567 0.9532277
Estaquia:52-Estaquia:19  10.2175  -7.0470669 27.482067 0.5183178
Semente:52-Estaquia:19    3.3300 -13.9345669 20.594567 0.9976836
Estaquia:63-Estaquia:19   7.2175 -10.0470669 24.482067 0.8496787
Semente:63-Estaquia:19    6.0150 -11.2495669 23.279567 0.9340982
Estaquia:39-Semente:19   19.9025  -1.2421898 41.047190 0.0749498
Semente:39-Semente:19     5.1000 -16.0446898 26.244690 0.9909963
Estaquia:52-Semente:19   20.9325  -0.2121898 42.077190 0.0536367
Semente:52-Semente:19    14.0450  -7.0996898 35.189690 0.3792297
Estaquia:63-Semente:19   17.9325  -3.2121898 39.077190 0.1373865
Semente:63-Semente:19    16.7300  -4.4146898 37.874690 0.1936295
Semente:39-Estaquia:39  -14.8025 -32.0670669  2.462067 0.1296135
Estaquia:52-Estaquia:39   1.0300 -16.2345669 18.294567 0.9999991
Semente:52-Estaquia:39   -5.8575 -23.1220669 11.407067 0.9421509
Estaquia:63-Estaquia:39  -1.9700 -19.2345669 15.294567 0.9999247
Semente:63-Estaquia:39   -3.1725 -20.4370669 14.092067 0.9982918
Estaquia:52-Semente:39   15.8325  -1.4320669 33.097067 0.0881326
Semente:52-Semente:39     8.9450  -8.3195669 26.209567 0.6693344
Estaquia:63-Semente:39   12.8325  -4.4320669 30.097067 0.2537318
Semente:63-Semente:39    11.6300  -5.6345669 28.894567 0.3626692
Semente:52-Estaquia:52   -6.8875 -24.1520669 10.377067 0.8768359
Estaquia:63-Estaquia:52  -3.0000 -20.2645669 14.264567 0.9988024
Semente:63-Estaquia:52   -4.2025 -21.4670669 13.062067 0.9904990
Estaquia:63-Semente:52    3.8875 -13.3770669 21.152067 0.9940140
Semente:63-Semente:52     2.6850 -14.5795669 19.949567 0.9994142
Semente:63-Estaquia:63   -1.2025 -18.4670669 16.062067 0.9999974
tukey.cld10 = multcompLetters4(mod10, tukey10)
print(tukey.cld10)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
  52   63   39   19 
 "a"  "a" "ab"  "b" 

$`propagacao:saturacao`
$`propagacao:saturacao`$Letters
Estaquia:52 Estaquia:39 Estaquia:63  Semente:63  Semente:52 Estaquia:19  Semente:39  Semente:19 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "a" 

$`propagacao:saturacao`$LetterMatrix
               a
Estaquia:52 TRUE
Estaquia:39 TRUE
Estaquia:63 TRUE
Semente:63  TRUE
Semente:52  TRUE
Estaquia:19 TRUE
Semente:39  TRUE
Semente:19  TRUE
cld10 = as.data.frame.list(tukey.cld10$`saturacao`)
data_summary10$Tukey = cld10$Letters
print(data_summary10)

#plot
plt2=ggplot(data_summary10, aes(x=as.factor(saturacao), y=Root, fill=saturacao))+
  geom_col(position = "dodge")+
  geom_errorbar(aes(ymin=Root-sd, ymax=Root+sd), width=.2, position=position_dodge(.9))+ 
  geom_text(aes(label=Tukey), position = position_dodge(0.9), size = 4, 
            vjust=-0.9, hjust=-0.9, colour = "Black")+
  scale_x_discrete(name="BCS levels (%)")+
  scale_y_continuous(breaks = seq(0, 45, 5), name= "Root biomass production (g/pot)")+
  coord_cartesian(ylim = c(0,45))+scale_fill_manual(values = c("grey80", "grey60", "grey40","grey20"))
plt2

plt2=plt2+theme(legend.key=element_blank(), 
            axis.line = element_line(colour = "black",size = 0.5, linetype = "solid"),
            panel.background = element_rect(fill = 'transparent',size = 0.5, colour = "black",linetype = "solid"),
            legend.position = "none", 
            axis.title.x = element_text(size = 13),
            axis.title.y = element_text(size = 13),
            axis.text.x = element_text(size = 12),
            axis.text.y = element_text(size = 12))+
            annotate("text", size=5, x=3, y=4, color= "white",label="-0.65%")+
            annotate("text", size=5, x=2, y=4, color= "white",label="-21.7%")+
            annotate("text", size=5, x=1, y=4, color= "white",label="-44.9%*")+
            annotate("text", size=4, x=4, y=45,label="P-value")+
            annotate("text",size=3, x=4, y=43,label= "PM = 0.014")+
            annotate("text",size=3, x=4, y=41,  label= "BCS = 0.026")+
            annotate("text",size=3, x=4, y=39,label= "P*B = 0.323")
plt2

library(cowplot)
side.by.side = plot_grid(plt1,plt2,labels = c("A", "B"), ncol = 1, nrow = 2, align = "v")
save_plot("shoot and root.pdf",side.by.side, ncol = 1, nrow = 2) 

11- Branches

#Outlier
boxplot(data2$Perfilhos)

#model
mod11 = aov(Perfilhos~propagacao*saturacao, data = data2)
hist(rstandard(mod11))

shapiro.test(rstandard(mod11))

    Shapiro-Wilk normality test

data:  rstandard(mod11)
W = 0.95792, p-value = 0.2407
#Tukey
medias11=emmeans(mod11,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias11.1=emmeans(mod11,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias11)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia    20.29 0.82 24    18.60     22.0
 Semente      9.73 0.82 24     8.04     11.4

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias11.1)
 saturacao emmean   SE df lower.CL upper.CL
 19          12.1 1.16 24     9.69     14.5
 39          16.7 1.16 24    14.27     19.1
 52          16.4 1.16 24    13.98     18.8
 63          14.9 1.16 24    12.52     17.3

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod11)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1  892.6   892.6  82.936 2.96e-09 ***
saturacao             3  105.4    35.1   3.264   0.0388 *  
propagacao:saturacao  3  104.3    34.8   3.229   0.0402 *  
Residuals            24  258.3    10.8                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
tukey11 = TukeyHSD(mod11)
print(tukey11)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Perfilhos ~ propagacao * saturacao, data = data2)

$propagacao
                      diff       lwr       upr p adj
Semente-Estaquia -10.56312 -12.95705 -8.169204     0

$saturacao
          diff         lwr      upr     p adj
39-19  4.58250  0.05741559 9.107584 0.0463909
52-19  4.29000 -0.23508441 8.815084 0.0675547
63-19  2.83125 -1.69383441 7.356334 0.3327589
52-39 -0.29250 -4.81758441 4.232584 0.9979286
63-39 -1.75125 -6.27633441 2.773834 0.7120139
63-52 -1.45875 -5.98383441 3.066334 0.8104046

$`propagacao:saturacao`
                            diff          lwr        upr     p adj
Semente:19-Estaquia:19  -16.3325 -24.01549344 -8.6495066 0.0000069
Estaquia:39-Estaquia:19   1.5000  -6.18299344  9.1829934 0.9976733
Semente:39-Estaquia:19   -8.6675 -16.35049344 -0.9845066 0.0193785
Estaquia:52-Estaquia:19  -0.6675  -8.35049344  7.0154934 0.9999891
Semente:52-Estaquia:19   -7.0850 -14.76799344  0.5979934 0.0859300
Estaquia:63-Estaquia:19  -0.6675  -8.35049344  7.0154934 0.9999891
Semente:63-Estaquia:19  -10.0025 -17.68549344 -2.3195066 0.0049832
Estaquia:39-Semente:19   17.8325  10.14950656 25.5154934 0.0000016
Semente:39-Semente:19     7.6650  -0.01799344 15.3479934 0.0508432
Estaquia:52-Semente:19   15.6650   7.98200656 23.3479934 0.0000136
Semente:52-Semente:19     9.2475   1.56450656 16.9304934 0.0108252
Estaquia:63-Semente:19   15.6650   7.98200656 23.3479934 0.0000136
Semente:63-Semente:19     6.3300  -1.35299344 14.0129934 0.1619319
Semente:39-Estaquia:39  -10.1675 -17.85049344 -2.4845066 0.0041977
Estaquia:52-Estaquia:39  -2.1675  -9.85049344  5.5154934 0.9792810
Semente:52-Estaquia:39   -8.5850 -16.26799344 -0.9020066 0.0210259
Estaquia:63-Estaquia:39  -2.1675  -9.85049344  5.5154934 0.9792810
Semente:63-Estaquia:39  -11.5025 -19.18549344 -3.8195066 0.0010327
Estaquia:52-Semente:39    8.0000   0.31700656 15.6829934 0.0370962
Semente:52-Semente:39     1.5825  -6.10049344  9.2654934 0.9967537
Estaquia:63-Semente:39    8.0000   0.31700656 15.6829934 0.0370962
Semente:63-Semente:39    -1.3350  -9.01799344  6.3479934 0.9988880
Semente:52-Estaquia:52   -6.4175 -14.10049344  1.2654934 0.1509672
Estaquia:63-Estaquia:52   0.0000  -7.68299344  7.6829934 1.0000000
Semente:63-Estaquia:52   -9.3350 -17.01799344 -1.6520066 0.0099033
Estaquia:63-Semente:52    6.4175  -1.26549344 14.1004934 0.1509672
Semente:63-Semente:52    -2.9175 -10.60049344  4.7654934 0.9054237
Semente:63-Estaquia:63   -9.3350 -17.01799344 -1.6520066 0.0099033
tukey.cld11 = multcompLetters4(mod11, tukey11)
print(tukey.cld11)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
  39   52   63   19 
 "a" "ab" "ab"  "b" 

$`propagacao:saturacao`
Estaquia:39 Estaquia:19 Estaquia:52 Estaquia:63  Semente:52  Semente:39  Semente:63  Semente:19 
        "a"        "ab"        "ab"        "ab"        "bc"        "cd"        "cd"         "d" 

12- Leaves

#Outlier
boxplot(data2$Folha)

#model
mod12 = aov(Folha~propagacao*saturacao, data = data2)
hist(rstandard(mod12))

shapiro.test(rstandard(mod12))

    Shapiro-Wilk normality test

data:  rstandard(mod12)
W = 0.98135, p-value = 0.8601
#Tukey
medias12=emmeans(mod12,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias12.1=emmeans(mod12,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias12)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     26.3 0.873 22     24.5     28.1
 Semente      25.9 0.976 22     23.9     27.9

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias12.1)
 saturacao emmean   SE df lower.CL upper.CL
 19          27.1 1.51 22     24.0     30.3
 39          23.7 1.23 22     21.1     26.3
 52          25.9 1.23 22     23.3     28.4
 63          27.7 1.23 22     25.1     30.3

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod12)
                     Df Sum Sq Mean Sq F value Pr(>F)
propagacao            1   0.64   0.640   0.052  0.821
saturacao             3  81.76  27.254   2.234  0.113
propagacao:saturacao  3  22.76   7.587   0.622  0.608
Residuals            22 268.35  12.198               
2 observations deleted due to missingness

13- Stems

#Outlier
boxplot(data2$Caule)

#model
mod13 = aov(Caule~propagacao*saturacao, data = data2)
hist(rstandard(mod13))

shapiro.test(rstandard(mod13))

    Shapiro-Wilk normality test

data:  rstandard(mod13)
W = 0.95364, p-value = 0.2114
#Tukey
medias13=emmeans(mod13,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias13.1=emmeans(mod13,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias13)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia     56.3 1.28 22     53.6     58.9
 Semente      49.4 1.43 22     46.5     52.4

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias13.1)
 saturacao emmean   SE df lower.CL upper.CL
 19          43.5 2.21 22     38.9     48.1
 39          56.2 1.80 22     52.5     60.0
 52          54.9 1.80 22     51.1     58.6
 63          56.8 1.80 22     53.0     60.5

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod13)
                     Df Sum Sq Mean Sq F value  Pr(>F)   
propagacao            1  178.1  178.06   6.833 0.01584 * 
saturacao             3  567.1  189.02   7.254 0.00147 **
propagacao:saturacao  3  200.4   66.81   2.564 0.08066 . 
Residuals            22  573.3   26.06                   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey13 = TukeyHSD(mod13)
print(tukey13)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Caule ~ propagacao * saturacao, data = data2)

$propagacao
                      diff       lwr       upr     p adj
Semente-Estaquia -4.883304 -8.757532 -1.009075 0.0158449

$saturacao
           diff       lwr       upr     p adj
39-19 10.890551  3.235289 18.545812 0.0035302
52-19  9.515551  1.860289 17.170812 0.0113062
63-19 11.453051  3.797789 19.108312 0.0021744
52-39 -1.375000 -8.462395  5.712395 0.9485857
63-39  0.562500 -6.524895  7.649895 0.9961071
63-52  1.937500 -5.149895  9.024895 0.8717948

$`propagacao:saturacao`
                            diff        lwr        upr     p adj
Semente:19-Estaquia:19  -15.7475 -30.507206 -0.9877936 0.0310025
Estaquia:39-Estaquia:19   7.3725  -4.678750 19.4237499 0.4783360
Semente:39-Estaquia:19    2.2825  -9.768750 14.3337499 0.9979334
Estaquia:52-Estaquia:19   6.7250  -5.326250 18.7762499 0.5875629
Semente:52-Estaquia:19    0.1800 -11.871250 12.2312499 1.0000000
Estaquia:63-Estaquia:19   5.4000  -6.651250 17.4512499 0.8014839
Semente:63-Estaquia:19    5.3800  -6.671250 17.4312499 0.8043089
Estaquia:39-Semente:19   23.1200   8.360294 37.8797064 0.0006742
Semente:39-Semente:19    18.0300   3.270294 32.7897064 0.0097849
Estaquia:52-Semente:19   22.4725   7.712794 37.2322064 0.0009490
Semente:52-Semente:19    15.9275   1.167794 30.6872064 0.0283702
Estaquia:63-Semente:19   21.1475   6.387794 35.9072064 0.0019114
Semente:63-Semente:19    21.1275   6.367794 35.8872064 0.0019317
Semente:39-Estaquia:39   -5.0900 -17.141250  6.9612499 0.8431620
Estaquia:52-Estaquia:39  -0.6475 -12.698750 11.4037499 0.9999996
Semente:52-Estaquia:39   -7.1925 -19.243750  4.8587499 0.5081938
Estaquia:63-Estaquia:39  -1.9725 -14.023750 10.0787499 0.9991843
Semente:63-Estaquia:39   -1.9925 -14.043750 10.0587499 0.9991295
Estaquia:52-Semente:39    4.4425  -7.608750 16.4937499 0.9137572
Semente:52-Semente:39    -2.1025 -14.153750  9.9487499 0.9987714
Estaquia:63-Semente:39    3.1175  -8.933750 15.1687499 0.9864897
Semente:63-Semente:39     3.0975  -8.953750 15.1487499 0.9869786
Semente:52-Estaquia:52   -6.5450 -18.596250  5.5062499 0.6183409
Estaquia:63-Estaquia:52  -1.3250 -13.376250 10.7262499 0.9999414
Semente:63-Estaquia:52   -1.3450 -13.396250 10.7062499 0.9999351
Estaquia:63-Semente:52    5.2200  -6.831250 17.2712499 0.8262488
Semente:63-Semente:52     5.2000  -6.851250 17.2512499 0.8289057
Semente:63-Estaquia:63   -0.0200 -12.071250 12.0312499 1.0000000
tukey.cld13 = multcompLetters4(mod13, tukey13)
print(tukey.cld13)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
 63  39  52  19 
"a" "a" "a" "b" 

$`propagacao:saturacao`
Estaquia:39 Estaquia:52 Estaquia:63  Semente:63  Semente:39  Semente:52 Estaquia:19  Semente:19 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "b" 

14- Dead material

#Outlier
boxplot(data2$Senescente)

#model
mod14 = aov(Senescente^0.8~propagacao*saturacao, data = data2)
mod14.1 = aov(Senescente~propagacao*saturacao, data = data2)
hist(rstandard(mod14))

shapiro.test(rstandard(mod14))

    Shapiro-Wilk normality test

data:  rstandard(mod14)
W = 0.93734, p-value = 0.07714
#Tukey
medias14=emmeans(mod14.1,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias14.1=emmeans(mod14.1,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias14)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia     17.4 1.77 22     13.8     21.1
 Semente      24.7 1.98 22     20.6     28.8

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias14.1)
 saturacao emmean   SE df lower.CL upper.CL
 19          29.3 3.06 22     23.0     35.7
 39          20.1 2.50 22     14.9     25.3
 52          19.3 2.50 22     14.1     24.5
 63          15.5 2.50 22     10.3     20.7

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod14)
                     Df Sum Sq Mean Sq F value Pr(>F)  
propagacao            1  35.39   35.39   4.053 0.0565 .
saturacao             3  81.89   27.30   3.126 0.0464 *
propagacao:saturacao  3  48.32   16.11   1.845 0.1686  
Residuals            22 192.12    8.73                 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey14 = TukeyHSD(mod14)
print(tukey14)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Senescente^0.8 ~ propagacao * saturacao, data = data2)

$propagacao
                     diff         lwr      upr     p adj
Semente-Estaquia 2.177185 -0.06563339 4.420004 0.0564903

$saturacao
            diff       lwr        upr     p adj
39-19 -2.8280545 -7.259741  1.6036317 0.3128077
52-19 -3.1665560 -7.598242  1.2651302 0.2241320
63-19 -4.8266146 -9.258301 -0.3949283 0.0294582
52-39 -0.3385015 -4.441446  3.7644427 0.9956344
63-39 -1.9985600 -6.101504  2.1043842 0.5408309
63-52 -1.6600585 -5.763003  2.4428857 0.6792843

$`propagacao:saturacao`
                               diff         lwr        upr     p adj
Semente:19-Estaquia:19   7.63566139  -0.9088392 16.1801620 0.1027888
Estaquia:39-Estaquia:19 -1.10170603  -8.0782615  5.8748495 0.9993531
Semente:39-Estaquia:19   1.26176637  -5.7147891  8.2383219 0.9984553
Estaquia:52-Estaquia:19 -1.25066519  -8.2272207  5.7258903 0.9985395
Semente:52-Estaquia:19   0.73372252  -6.2428330  7.7102780 0.9999566
Estaquia:63-Estaquia:19 -1.91230090  -8.8888564  5.0642546 0.9812614
Semente:63-Estaquia:19  -1.92475884  -8.9013144  5.0517967 0.9805709
Estaquia:39-Semente:19  -8.73736742 -17.2818680 -0.1928668 0.0426334
Semente:39-Semente:19   -6.37389502 -14.9183956  2.1706056 0.2500507
Estaquia:52-Semente:19  -8.88632659 -17.4308272 -0.3418260 0.0376462
Semente:52-Semente:19   -6.90193888 -15.4464395  1.6425617 0.1756439
Estaquia:63-Semente:19  -9.54796229 -18.0924629 -1.0034617 0.0214070
Semente:63-Semente:19   -9.56042023 -18.1049208 -1.0159196 0.0211771
Semente:39-Estaquia:39   2.36347240  -4.6130831  9.3400279 0.9425768
Estaquia:52-Estaquia:39 -0.14895917  -7.1255147  6.8275963 1.0000000
Semente:52-Estaquia:39   1.83542854  -5.1411270  8.8119841 0.9851270
Estaquia:63-Estaquia:39 -0.81059487  -7.7871504  6.1659606 0.9999150
Semente:63-Estaquia:39  -0.82305281  -7.7996083  6.1535027 0.9999058
Estaquia:52-Semente:39  -2.51243157  -9.4889871  4.4641240 0.9227323
Semente:52-Semente:39   -0.52804386  -7.5045994  6.4485117 0.9999954
Estaquia:63-Semente:39  -3.17406727 -10.1506228  3.8024882 0.7895946
Semente:63-Semente:39   -3.18652521 -10.1630807  3.7900303 0.7864593
Semente:52-Estaquia:52   1.98438771  -4.9921678  8.9609432 0.9770033
Estaquia:63-Estaquia:52 -0.66163570  -7.6381912  6.3149198 0.9999785
Semente:63-Estaquia:52  -0.67409365  -7.6506492  6.3024619 0.9999756
Estaquia:63-Semente:52  -2.64602341  -9.6225789  4.3305321 0.9016725
Semente:63-Semente:52   -2.65848136  -9.6350369  4.3180742 0.8995506
Semente:63-Estaquia:63  -0.01245794  -6.9890135  6.9640976 1.0000000
tukey.cld14 = multcompLetters4(mod14, tukey14)
print(tukey.cld14)
$propagacao
$propagacao$Letters
 Semente Estaquia 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Semente  TRUE
Estaquia TRUE


$saturacao
  19   39   52   63 
 "a" "ab" "ab"  "b" 

$`propagacao:saturacao`
 Semente:19  Semente:39  Semente:52 Estaquia:19 Estaquia:39 Estaquia:52 Estaquia:63  Semente:63 
        "a"        "ab"        "ab"        "ab"         "b"         "b"         "b"         "b" 

BROMATOLOGICAL ANALYSIS

15- Dried matter

#Outlier
boxplot(data2$DM105)

#model
mod15 = aov(DM105~propagacao*saturacao, data = data2)
hist(rstandard(mod15))

shapiro.test(rstandard(mod15))

    Shapiro-Wilk normality test

data:  rstandard(mod15)
W = 0.97205, p-value = 0.577
#Tukey
medias15=emmeans(mod15,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias15.1=emmeans(mod15,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias15)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia    906.7 1.118 23    904.4    909.0
 Semente     902.7 1.164 23    900.3    905.1

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias15.1)
 saturacao emmean    SE df lower.CL upper.CL
 19         903.5 1.708 23    900.0    907.0
 39         905.3 1.582 23    902.0    908.6
 52         905.9 1.582 23    902.6    909.1
 63         904.1 1.582 23    900.9    907.4

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod15)
                     Df Sum Sq Mean Sq F value Pr(>F)  
propagacao            1  111.9  111.93   5.593 0.0268 *
saturacao             3   23.6    7.86   0.393 0.7594  
propagacao:saturacao  3   23.6    7.88   0.394 0.7588  
Residuals            23  460.3   20.01                 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey15 = TukeyHSD(mod15)
print(tukey15)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = DM105 ~ propagacao * saturacao, data = data2)

$propagacao
                     diff       lwr        upr     p adj
Semente-Estaquia -3.80225 -7.128136 -0.4763643 0.0268459

$saturacao
            diff       lwr      upr     p adj
39-19  1.6214107 -4.785550 8.028372 0.8958907
52-19  2.1839107 -4.223050 8.590872 0.7820936
63-19  0.4389107 -5.968050 6.845872 0.9975122
52-39  0.5625000 -5.627213 6.752213 0.9942588
63-39 -1.1825000 -7.372213 5.007213 0.9512357
63-52 -1.7450000 -7.934713 4.444713 0.8626344

$`propagacao:saturacao`
                           diff        lwr       upr     p adj
Semente:19-Estaquia:19  -6.2850 -17.644403  5.074403 0.6017664
Estaquia:39-Estaquia:19  0.9625  -9.554263 11.479263 0.9999838
Semente:39-Estaquia:19  -3.6500 -14.166763  6.866763 0.9369600
Estaquia:52-Estaquia:19  0.9950  -9.521763 11.511763 0.9999797
Semente:52-Estaquia:19  -2.5575 -13.074263  7.959263 0.9908664
Estaquia:63-Estaquia:19 -1.8325 -12.349263  8.684263 0.9988272
Semente:63-Estaquia:19  -3.2200 -13.736763  7.296763 0.9667834
Estaquia:39-Semente:19   7.2475  -4.111903 18.606903 0.4313345
Semente:39-Semente:19    2.6350  -8.724403 13.994403 0.9930936
Estaquia:52-Semente:19   7.2800  -4.079403 18.639403 0.4259029
Semente:52-Semente:19    3.7275  -7.631903 15.086903 0.9523746
Estaquia:63-Semente:19   4.4525  -6.906903 15.811903 0.8885030
Semente:63-Semente:19    3.0650  -8.294403 14.424403 0.9833803
Semente:39-Estaquia:39  -4.6125 -15.129263  5.904263 0.8207719
Estaquia:52-Estaquia:39  0.0325 -10.484263 10.549263 1.0000000
Semente:52-Estaquia:39  -3.5200 -14.036763  6.996763 0.9473548
Estaquia:63-Estaquia:39 -2.7950 -13.311763  7.721763 0.9847448
Semente:63-Estaquia:39  -4.1825 -14.699263  6.334263 0.8811014
Estaquia:52-Semente:39   4.6450  -5.871763 15.161763 0.8157093
Semente:52-Semente:39    1.0925  -9.424263 11.609263 0.9999617
Estaquia:63-Semente:39   1.8175  -8.699263 12.334263 0.9988872
Semente:63-Semente:39    0.4300 -10.086763 10.946763 0.9999999
Semente:52-Estaquia:52  -3.5525 -14.069263  6.964263 0.9448720
Estaquia:63-Estaquia:52 -2.8275 -13.344263  7.689263 0.9837127
Semente:63-Estaquia:52  -4.2150 -14.731763  6.301763 0.8769992
Estaquia:63-Semente:52   0.7250  -9.791763 11.241763 0.9999977
Semente:63-Semente:52   -0.6625 -11.179263  9.854263 0.9999988
Semente:63-Estaquia:63  -1.3875 -11.904263  9.129263 0.9998093
tukey.cld15 = multcompLetters4(mod15, tukey15)
print(tukey.cld15)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
$saturacao$Letters
 52  39  63  19 
"a" "a" "a" "a" 

$saturacao$LetterMatrix
      a
52 TRUE
39 TRUE
63 TRUE
19 TRUE


$`propagacao:saturacao`
$`propagacao:saturacao`$Letters
Estaquia:52 Estaquia:39 Estaquia:19 Estaquia:63  Semente:52  Semente:63  Semente:39  Semente:19 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "a" 

$`propagacao:saturacao`$LetterMatrix
               a
Estaquia:52 TRUE
Estaquia:39 TRUE
Estaquia:19 TRUE
Estaquia:63 TRUE
Semente:52  TRUE
Semente:63  TRUE
Semente:39  TRUE
Semente:19  TRUE

16- Ash

#Outlier
boxplot(data2$MM)

#model
mod16 = aov(MM~propagacao*saturacao, data = data2)
mod16.1 = aov(MM^0.9~propagacao*saturacao, data = data2)
hist(rstandard(mod16.1))

shapiro.test(rstandard(mod16.1))

    Shapiro-Wilk normality test

data:  rstandard(mod16.1)
W = 0.93235, p-value = 0.05082
#Tukey
medias16=emmeans(mod16,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias16.1=emmeans(mod16,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias16)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia      125 2.86 23      119      131
 Semente       137 2.98 23      131      143

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias16.1)
 saturacao emmean   SE df lower.CL upper.CL
 19           136 4.38 23      126      145
 39           121 4.05 23      113      130
 52           130 4.05 23      121      138
 63           138 4.05 23      130      146

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod16.1)
                     Df Sum Sq Mean Sq F value  Pr(>F)   
propagacao            1  315.1  315.06   7.945 0.00974 **
saturacao             3  375.4  125.15   3.156 0.04411 * 
propagacao:saturacao  3   88.5   29.50   0.744 0.53688   
Residuals            23  912.0   39.65                   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey16 = TukeyHSD(mod16.1)
print(tukey16)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = MM^0.9 ~ propagacao * saturacao, data = data2)

$propagacao
                     diff      lwr      upr     p adj
Semente-Estaquia 6.379255 1.697526 11.06098 0.0097414

$saturacao
           diff         lwr       upr     p adj
39-19 -7.394551 -16.4133988  1.624297 0.1349422
52-19 -2.694503 -11.7133510  6.324345 0.8412175
63-19  1.731335  -7.2875125 10.750183 0.9505782
52-39  4.700048  -4.0129869 13.413083 0.4578320
63-39  9.125886   0.4128516 17.838921 0.0377675
63-52  4.425839  -4.2871963 13.138873 0.5086310

$`propagacao:saturacao`
                               diff        lwr       upr     p adj
Semente:19-Estaquia:19   12.3871316  -3.603089 28.377352 0.2149605
Estaquia:39-Estaquia:19  -4.7095884 -19.513656 10.094479 0.9593909
Semente:39-Estaquia:19    1.4493499 -13.354718 16.253418 0.9999744
Estaquia:52-Estaquia:19   0.2978294 -14.506238 15.101897 1.0000000
Semente:52-Estaquia:19    5.8420277  -8.962040 20.646096 0.8851059
Estaquia:63-Estaquia:19   6.0836527  -8.720415 20.887721 0.8629739
Semente:63-Estaquia:19    8.9078814  -5.896186 23.711949 0.5025819
Estaquia:39-Semente:19  -17.0967200 -33.086941 -1.106499 0.0303374
Semente:39-Semente:19   -10.9377817 -26.928003  5.052439 0.3481297
Estaquia:52-Semente:19  -12.0893021 -28.079523  3.900919 0.2387638
Semente:52-Semente:19    -6.5451039 -22.535325  9.445117 0.8652741
Estaquia:63-Semente:19   -6.3034788 -22.293700  9.686742 0.8856400
Semente:63-Semente:19    -3.4792501 -19.469471 12.510971 0.9953027
Semente:39-Estaquia:39    6.1589383  -8.645130 20.963006 0.8556431
Estaquia:52-Estaquia:39   5.0074179  -9.796650 19.811486 0.9445025
Semente:52-Estaquia:39   10.5516161  -4.252452 25.355684 0.3012539
Estaquia:63-Estaquia:39  10.7932411  -4.010827 25.597309 0.2765205
Semente:63-Estaquia:39   13.6174699  -1.186598 28.421538 0.0869123
Estaquia:52-Semente:39   -1.1515205 -15.955588 13.652547 0.9999947
Semente:52-Semente:39     4.3926778 -10.411390 19.196746 0.9719158
Estaquia:63-Semente:39    4.6343028 -10.169765 19.438371 0.9626642
Semente:63-Semente:39     7.4585315  -7.345536 22.262599 0.7021382
Semente:52-Estaquia:52    5.5441983  -9.259870 20.348266 0.9093611
Estaquia:63-Estaquia:52   5.7858233  -9.018245 20.589891 0.8899419
Semente:63-Estaquia:52    8.6100520  -6.194016 23.414120 0.5434697
Estaquia:63-Semente:52    0.2416250 -14.562443 15.045693 1.0000000
Semente:63-Semente:52     3.0658537 -11.738214 17.869922 0.9965287
Semente:63-Estaquia:63    2.8242287 -11.979839 17.628297 0.9979170
tukey.cld16 = multcompLetters4(mod16.1, tukey16)
print(tukey.cld16)
$propagacao
 Semente Estaquia 
     "a"      "b" 

$saturacao
  63   19   52   39 
 "a" "ab" "ab"  "b" 

$`propagacao:saturacao`
 Semente:19  Semente:63 Estaquia:63  Semente:52  Semente:39 Estaquia:52 Estaquia:19 Estaquia:39 
        "a"        "ab"        "ab"        "ab"        "ab"        "ab"        "ab"         "b" 

17- Crude protein

#Outlier
boxplot(data2$PB)

#model
mod17 = aov(PB~propagacao*saturacao, data = data2)
hist(rstandard(mod17))

shapiro.test(rstandard(mod17))

    Shapiro-Wilk normality test

data:  rstandard(mod17)
W = 0.97048, p-value = 0.5524
#Tukey
medias17=emmeans(mod17,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias17.1=emmeans(mod17,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias17)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia      157 6.36 22      144      171
 Semente       167 6.87 22      153      181

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias17.1)
 saturacao emmean   SE df lower.CL upper.CL
 19           203 9.72 22      183      223
 39           155 9.00 22      136      173
 52           152 9.00 22      133      170
 63           140 9.72 22      120      160

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod17)
                     Df Sum Sq Mean Sq F value  Pr(>F)   
propagacao            1    449     449   0.694 0.41382   
saturacao             3  14867    4956   7.654 0.00111 **
propagacao:saturacao  3   2211     737   1.138 0.35553   
Residuals            22  14245     647                   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey17 = TukeyHSD(mod17)
print(tukey17)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = PB ~ propagacao * saturacao, data = data2)

$propagacao
                     diff       lwr      upr     p adj
Semente-Estaquia 7.756696 -11.55567 27.06906 0.4138198

$saturacao
           diff       lwr        upr     p adj
39-19 -45.86655 -82.43601  -9.297093 0.0105256
52-19 -48.99155 -85.56101 -12.422093 0.0060700
63-19 -59.82143 -97.59020 -22.052656 0.0012147
52-39  -3.12500 -38.45445  32.204452 0.9946378
63-39 -13.95488 -50.52434  22.614578 0.7168939
63-52 -10.82988 -47.39934  25.739578 0.8432845

$`propagacao:saturacao`
                             diff        lwr        upr     p adj
Semente:19-Estaquia:19   40.10417  -24.78254 104.990874 0.4659177
Estaquia:39-Estaquia:19 -28.12500  -88.19842  31.948418 0.7659539
Semente:39-Estaquia:19  -28.12500  -88.19842  31.948418 0.7659539
Estaquia:52-Estaquia:19 -32.81250  -92.88592  27.260918 0.6119411
Semente:52-Estaquia:19  -29.68750  -89.76092  30.385918 0.7168250
Estaquia:63-Estaquia:19 -40.62500 -100.69842  19.448418 0.3581243
Semente:63-Estaquia:19  -45.31250 -110.19921  19.574207 0.3211836
Estaquia:39-Semente:19  -68.22917 -133.11587  -3.342459 0.0346581
Semente:39-Semente:19   -68.22917 -133.11587  -3.342459 0.0346581
Estaquia:52-Semente:19  -72.91667 -137.80337  -8.029959 0.0204285
Semente:52-Semente:19   -69.79167 -134.67837  -4.904959 0.0291092
Estaquia:63-Semente:19  -80.72917 -145.61587 -15.842459 0.0082349
Semente:63-Semente:19   -85.41667 -154.78347 -16.049859 0.0090798
Semente:39-Estaquia:39    0.00000  -60.07342  60.073418 1.0000000
Estaquia:52-Estaquia:39  -4.68750  -64.76092  55.385918 0.9999943
Semente:52-Estaquia:39   -1.56250  -61.63592  58.510918 1.0000000
Estaquia:63-Estaquia:39 -12.50000  -72.57342  47.573418 0.9962939
Semente:63-Estaquia:39  -17.18750  -82.07421  47.699207 0.9845407
Estaquia:52-Semente:39   -4.68750  -64.76092  55.385918 0.9999943
Semente:52-Semente:39    -1.56250  -61.63592  58.510918 1.0000000
Estaquia:63-Semente:39  -12.50000  -72.57342  47.573418 0.9962939
Semente:63-Semente:39   -17.18750  -82.07421  47.699207 0.9845407
Semente:52-Estaquia:52    3.12500  -56.94842  63.198418 0.9999997
Estaquia:63-Estaquia:52  -7.81250  -67.88592  52.260918 0.9998194
Semente:63-Estaquia:52  -12.50000  -77.38671  52.386707 0.9977014
Estaquia:63-Semente:52  -10.93750  -71.01092  49.135918 0.9983887
Semente:63-Semente:52   -15.62500  -80.51171  49.261707 0.9910817
Semente:63-Estaquia:63   -4.68750  -69.57421  60.199207 0.9999967
tukey.cld17 = multcompLetters4(mod17, tukey17)
print(tukey.cld17)
$propagacao
$propagacao$Letters
 Semente Estaquia 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Semente  TRUE
Estaquia TRUE


$saturacao
 19  39  52  63 
"a" "b" "b" "b" 

$`propagacao:saturacao`
 Semente:19 Estaquia:19 Estaquia:39  Semente:39  Semente:52 Estaquia:52 Estaquia:63  Semente:63 
        "a"        "ab"         "b"         "b"         "b"         "b"         "b"         "b" 

18- Ether extract

#Outlier
boxplot(data2$EE)


#model
mod18 = aov(EE~propagacao*saturacao, data = data2)
hist(rstandard(mod18))

shapiro.test(rstandard(mod18))

    Shapiro-Wilk normality test

data:  rstandard(mod18)
W = 0.96887, p-value = 0.4886
#Tukey
medias18=emmeans(mod18,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias18.1=emmeans(mod18,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias18)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     46.7 0.981 23     44.7     48.7
 Semente      44.3 1.021 23     42.2     46.4

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias18.1)
 saturacao emmean   SE df lower.CL upper.CL
 19          53.2 1.50 23     50.1     56.3
 39          47.7 1.39 23     44.8     50.5
 52          43.9 1.39 23     41.0     46.7
 63          37.2 1.39 23     34.3     40.1

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod18)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1   65.0    65.0   4.221   0.0515 .  
saturacao             3 1023.9   341.3  22.166 5.65e-07 ***
propagacao:saturacao  3   32.9    11.0   0.713   0.5541    
Residuals            23  354.1    15.4                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey18 = TukeyHSD(mod18)
print(tukey18)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = EE ~ propagacao * saturacao, data = data2)

$propagacao
                      diff       lwr        upr     p adj
Semente-Estaquia -2.897375 -5.814743 0.01999338 0.0514627

$saturacao
           diff        lwr         upr     p adj
39-19  -5.50108 -11.121077   0.1189161 0.0565432
52-19  -9.30483 -14.924827  -3.6848339 0.0007130
63-19 -15.98733 -21.607327 -10.3673339 0.0000003
52-39  -3.80375  -9.233182   1.6256824 0.2401897
63-39 -10.48625 -15.915682  -5.0568176 0.0001104
63-52  -6.68250 -12.111932  -1.2530676 0.0120625

$`propagacao:saturacao`
                              diff        lwr          upr     p adj
Semente:19-Estaquia:19   -2.078333 -12.042465   7.88579795 0.9963725
Estaquia:39-Estaquia:19  -6.932500 -16.157493   2.29249302 0.2448632
Semente:39-Estaquia:19   -6.265000 -15.489993   2.95999302 0.3565306
Estaquia:52-Estaquia:19  -8.832500 -18.057493   0.39249302 0.0673150
Semente:52-Estaquia:19  -11.972500 -21.197493  -2.74750698 0.0052923
Estaquia:63-Estaquia:19 -14.617500 -23.842493  -5.39250698 0.0005443
Semente:63-Estaquia:19  -19.552500 -28.777493 -10.32750698 0.0000086
Estaquia:39-Semente:19   -4.854167 -14.818298   5.10996461 0.7344406
Semente:39-Semente:19    -4.186667 -14.150798   5.77746461 0.8495214
Estaquia:52-Semente:19   -6.754167 -16.718298   3.20996461 0.3587549
Semente:52-Semente:19    -9.894167 -19.858298   0.06996461 0.0525444
Estaquia:63-Semente:19  -12.539167 -22.503298  -2.57503539 0.0072022
Semente:63-Semente:19   -17.474167 -27.438298  -7.51003539 0.0001428
Semente:39-Estaquia:39    0.667500  -8.557493   9.89249302 0.9999968
Estaquia:52-Estaquia:39  -1.900000 -11.124993   7.32499302 0.9966441
Semente:52-Estaquia:39   -5.040000 -14.264993   4.18499302 0.6160736
Estaquia:63-Estaquia:39  -7.685000 -16.909993   1.53999302 0.1519445
Semente:63-Estaquia:39  -12.620000 -21.844993  -3.39500698 0.0030436
Estaquia:52-Semente:39   -2.567500 -11.792493   6.65749302 0.9802263
Semente:52-Semente:39    -5.707500 -14.932493   3.51749302 0.4687589
Estaquia:63-Semente:39   -8.352500 -17.577493   0.87249302 0.0956704
Semente:63-Semente:39   -13.287500 -22.512493  -4.06250698 0.0017142
Semente:52-Estaquia:52   -3.140000 -12.364993   6.08499302 0.9427357
Estaquia:63-Estaquia:52  -5.785000 -15.009993   3.43999302 0.4523306
Semente:63-Estaquia:52  -10.720000 -19.944993  -1.49500698 0.0151382
Estaquia:63-Semente:52   -2.645000 -11.869993   6.57999302 0.9766948
Semente:63-Semente:52    -7.580000 -16.804993   1.64499302 0.1628989
Semente:63-Estaquia:63   -4.935000 -14.159993   4.28999302 0.6394369
tukey.cld18 = multcompLetters4(mod18, tukey18)
print(tukey.cld18)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
  19   39   52   63 
 "a" "ab"  "b"  "c" 

$`propagacao:saturacao`
Estaquia:19  Semente:19  Semente:39 Estaquia:39 Estaquia:52  Semente:52 Estaquia:63  Semente:63 
        "a"        "ab"       "abc"       "abc"       "abc"       "bcd"        "cd"         "d" 

12- aNDFom

#Outlier
boxplot(data2$aFDNom)


#model
mod18 = aov(aFDNom~propagacao*saturacao, data = data2)
hist(rstandard(mod18))

shapiro.test(rstandard(mod18))

    Shapiro-Wilk normality test

data:  rstandard(mod18)
W = 0.99042, p-value = 0.9921
#Tukey 
medias18=emmeans(mod18,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias18.1=emmeans(mod18,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias18)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia      598 10.2 23      577      619
 Semente       562 10.6 23      540      583

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias18.1)
 saturacao emmean   SE df lower.CL upper.CL
 19           569 15.5 23      537      602
 39           585 14.4 23      555      615
 52           594 14.4 23      564      624
 63           571 14.4 23      541      601

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod18)
                     Df Sum Sq Mean Sq F value Pr(>F)  
propagacao            1  10399   10399   6.286 0.0197 *
saturacao             3   3473    1158   0.700 0.5618  
propagacao:saturacao  3   4453    1484   0.897 0.4576  
Residuals            23  38052    1654                 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey18 = TukeyHSD(mod18)
print(tukey18)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = aFDNom ~ propagacao * saturacao, data = data2)

$propagacao
                      diff       lwr      upr     p adj
Semente-Estaquia -36.65025 -66.89068 -6.40982 0.0196818

$saturacao
            diff       lwr      upr     p adj
39-19  17.154839 -41.10010 75.40978 0.8467975
52-19  26.212339 -32.04260 84.46728 0.6055289
63-19   3.112339 -55.14260 61.36728 0.9988129
52-39   9.057500 -47.22212 65.33712 0.9698586
63-39 -14.042500 -70.32212 42.23712 0.8996740
63-52 -23.100000 -79.37962 33.17962 0.6717277

$`propagacao:saturacao`
                            diff        lwr       upr     p adj
Semente:19-Estaquia:19  -14.2875 -117.57223  88.99723 0.9997390
Estaquia:39-Estaquia:19  35.9825  -59.64058 131.60558 0.9073406
Semente:39-Estaquia:19  -19.1550 -114.77808  76.46808 0.9971744
Estaquia:52-Estaquia:19  23.2450  -72.37808 118.86808 0.9908870
Semente:52-Estaquia:19   11.6975  -83.92558 107.32058 0.9998848
Estaquia:63-Estaquia:19  27.0875  -68.53558 122.71058 0.9781956
Semente:63-Estaquia:19  -38.3450 -133.96808  57.27808 0.8767139
Estaquia:39-Semente:19   50.2700  -53.01473 153.55473 0.7353003
Semente:39-Semente:19    -4.8675 -108.15223  98.41723 0.9999998
Estaquia:52-Semente:19   37.5325  -65.75223 140.81723 0.9213034
Semente:52-Semente:19    25.9850  -77.29973 129.26973 0.9888636
Estaquia:63-Semente:19   41.3750  -61.90973 144.65973 0.8772632
Semente:63-Semente:19   -24.0575 -127.34223  79.22723 0.9929219
Semente:39-Estaquia:39  -55.1375 -150.76058  40.48558 0.5537008
Estaquia:52-Estaquia:39 -12.7375 -108.36058  82.88558 0.9997967
Semente:52-Estaquia:39  -24.2850 -119.90808  71.33808 0.9882397
Estaquia:63-Estaquia:39  -8.8950 -104.51808  86.72808 0.9999819
Semente:63-Estaquia:39  -74.3275 -169.95058  21.29558 0.2117507
Estaquia:52-Semente:39   42.4000  -53.22308 138.02308 0.8128438
Semente:52-Semente:39    30.8525  -64.77058 126.47558 0.9563198
Estaquia:63-Semente:39   46.2425  -49.38058 141.86558 0.7412217
Semente:63-Semente:39   -19.1900 -114.81308  76.43308 0.9971422
Semente:52-Estaquia:52  -11.5475 -107.17058  84.07558 0.9998943
Estaquia:63-Estaquia:52   3.8425  -91.78058  99.46558 0.9999999
Semente:63-Estaquia:52  -61.5900 -157.21308  34.03308 0.4198411
Estaquia:63-Semente:52   15.3900  -80.23308 111.01308 0.9992965
Semente:63-Semente:52   -50.0425 -145.66558  45.58058 0.6631136
Semente:63-Estaquia:63  -65.4325 -161.05558  30.19058 0.3477112
tukey.cld18 = multcompLetters4(mod18, tukey18)
print(tukey.cld18)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
$saturacao$Letters
 52  39  63  19 
"a" "a" "a" "a" 

$saturacao$LetterMatrix
      a
52 TRUE
39 TRUE
63 TRUE
19 TRUE


$`propagacao:saturacao`
$`propagacao:saturacao`$Letters
Estaquia:39 Estaquia:63 Estaquia:52  Semente:52 Estaquia:19  Semente:19  Semente:39  Semente:63 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "a" 

$`propagacao:saturacao`$LetterMatrix
               a
Estaquia:39 TRUE
Estaquia:63 TRUE
Estaquia:52 TRUE
Semente:52  TRUE
Estaquia:19 TRUE
Semente:19  TRUE
Semente:39  TRUE
Semente:63  TRUE

19- ADFom

#Outlier
boxplot(data2$aFDAom)


#model
mod19 = aov(aFDAom~propagacao*saturacao, data = data2)
hist(rstandard(mod19))

shapiro.test(rstandard(mod19))

    Shapiro-Wilk normality test

data:  rstandard(mod19)
W = 0.92687, p-value = 0.03607
#Tukey
medias19=emmeans(mod19,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias19.1=emmeans(mod19,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias19)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia      377 6.19 23      365      390
 Semente       363 6.44 23      350      377

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias19.1)
 saturacao emmean   SE df lower.CL upper.CL
 19           362 9.45 23      342      381
 39           361 8.75 23      343      379
 52           379 8.75 23      361      397
 63           380 8.75 23      362      399

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod19)
                     Df Sum Sq Mean Sq F value Pr(>F)  
propagacao            1   1835  1834.5   2.994 0.0970 .
saturacao             3   3216  1072.1   1.750 0.1848  
propagacao:saturacao  3   8339  2779.8   4.537 0.0122 *
Residuals            23  14091   612.7                 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey19 = TukeyHSD(mod19)
print(tukey19)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = aFDAom ~ propagacao * saturacao, data = data2)

$propagacao
                     diff       lwr      upr     p adj
Semente-Estaquia -15.3935 -33.79588 3.008877 0.0969524

$saturacao
           diff       lwr      upr     p adj
39-19  3.684893 -31.76531 39.13509 0.9914787
52-19 21.243643 -14.20656 56.69384 0.3675944
63-19 23.017393 -12.43281 58.46759 0.3003260
52-39 17.558750 -16.68940 51.80690 0.5008744
63-39 19.332500 -14.91565 53.58065 0.4188889
63-52  1.773750 -32.47440 36.02190 0.9989180

$`propagacao:saturacao`
                              diff         lwr       upr     p adj
Semente:19-Estaquia:19   44.221667  -18.630766 107.07410 0.3157663
Estaquia:39-Estaquia:19  42.757500  -15.432545 100.94755 0.2681904
Semente:39-Estaquia:19    0.317500  -57.872545  58.50755 1.0000000
Estaquia:52-Estaquia:19  51.780000   -6.410045 109.97005 0.1059800
Semente:52-Estaquia:19   26.412500  -31.777545  84.60255 0.7950586
Estaquia:63-Estaquia:19  57.152500   -1.037545 115.34255 0.0566924
Semente:63-Estaquia:19   24.587500  -33.602545  82.77755 0.8459700
Estaquia:39-Semente:19   -1.464167  -64.316599  61.38827 1.0000000
Semente:39-Semente:19   -43.904167 -106.756599  18.94827 0.3239443
Estaquia:52-Semente:19    7.558333  -55.294099  70.41077 0.9998973
Semente:52-Semente:19   -17.809167  -80.661599  45.04327 0.9781636
Estaquia:63-Semente:19   12.930833  -49.921599  75.78327 0.9966671
Semente:63-Semente:19   -19.634167  -82.486599  43.21827 0.9630734
Semente:39-Estaquia:39  -42.440000 -100.630045  15.75005 0.2761354
Estaquia:52-Estaquia:39   9.022500  -49.167545  67.21255 0.9994479
Semente:52-Estaquia:39  -16.345000  -74.535045  41.84505 0.9791910
Estaquia:63-Estaquia:39  14.395000  -43.795045  72.58505 0.9899044
Semente:63-Estaquia:39  -18.170000  -76.360045  40.02005 0.9631555
Estaquia:52-Semente:39   51.462500   -6.727545 109.65255 0.1098106
Semente:52-Semente:39    26.095000  -32.095045  84.28505 0.8043958
Estaquia:63-Semente:39   56.835000   -1.355045 115.02505 0.0588975
Semente:63-Semente:39    24.270000  -33.920045  82.46005 0.8541021
Semente:52-Estaquia:52  -25.367500  -83.557545  32.82255 0.8250497
Estaquia:63-Estaquia:52   5.372500  -52.817545  63.56255 0.9999828
Semente:63-Estaquia:52  -27.192500  -85.382545  30.99755 0.7713502
Estaquia:63-Semente:52   30.740000  -27.450045  88.93005 0.6530892
Semente:63-Semente:52    -1.825000  -60.015045  56.36505 1.0000000
Semente:63-Estaquia:63  -32.565000  -90.755045  25.62505 0.5886779
tukey.cld19 = multcompLetters4(mod19, tukey19)
print(tukey.cld19)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
$saturacao$Letters
 63  52  39  19 
"a" "a" "a" "a" 

$saturacao$LetterMatrix
      a
63 TRUE
52 TRUE
39 TRUE
19 TRUE


$`propagacao:saturacao`
$`propagacao:saturacao`$Letters
Estaquia:63 Estaquia:52  Semente:19 Estaquia:39  Semente:52  Semente:63  Semente:39 Estaquia:19 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "a" 

$`propagacao:saturacao`$LetterMatrix
               a
Estaquia:63 TRUE
Estaquia:52 TRUE
Semente:19  TRUE
Estaquia:39 TRUE
Semente:52  TRUE
Semente:63  TRUE
Semente:39  TRUE
Estaquia:19 TRUE

20- aLDAom

#Outlier
boxplot(data2$aLDAom)


#model
mod20 = aov(aLDAom~propagacao*saturacao, data = data2)
hist(rstandard(mod20))

shapiro.test(rstandard(mod20))

    Shapiro-Wilk normality test

data:  rstandard(mod20)
W = 0.97223, p-value = 0.5825
#Tukey 
medias20=emmeans(mod20,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias20.1=emmeans(mod20,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias20)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia      111 3.56 23      104      119
 Semente       118 3.71 23      110      125

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias20.1)
 saturacao emmean   SE df lower.CL upper.CL
 19           139 5.44 23    127.8      150
 39           112 5.04 23    101.2      122
 52           102 5.04 23     91.1      112
 63           106 5.04 23     95.7      117

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod20)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1     97    96.7   0.476 0.496942    
saturacao             3   5185  1728.5   8.515 0.000551 ***
propagacao:saturacao  3   3921  1307.2   6.440 0.002514 ** 
Residuals            23   4669   203.0                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
1 observation deleted due to missingness
tukey20 = TukeyHSD(mod20)
print(tukey20)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = aLDAom ~ propagacao * saturacao, data = data2)

$propagacao
                     diff       lwr      upr     p adj
Semente-Estaquia 3.534417 -7.058081 14.12691 0.4969423

$saturacao
           diff       lwr        upr     p adj
39-19 -24.42407 -44.82937  -4.018759 0.0149735
52-19 -34.52782 -54.93312 -14.122509 0.0005569
63-19 -29.94782 -50.35312  -9.542509 0.0025370
52-39 -10.10375 -29.81715   9.609649 0.5011357
63-39  -5.52375 -25.23715  14.189649 0.8647372
63-52   4.58000 -15.13340  24.293399 0.9169263

$`propagacao:saturacao`
                             diff         lwr       upr     p adj
Semente:19-Estaquia:19   45.36083    9.182669  81.53900 0.0074657
Estaquia:39-Estaquia:19  -3.99250  -37.486972  29.50197 0.9999032
Semente:39-Estaquia:19   -5.47000  -38.964472  28.02447 0.9992268
Estaquia:52-Estaquia:19 -14.35000  -47.844472  19.14447 0.8369378
Semente:52-Estaquia:19  -15.32000  -48.814472  18.17447 0.7889917
Estaquia:63-Estaquia:19  -1.72250  -35.216972  31.77197 0.9999997
Semente:63-Estaquia:19  -18.78750  -52.281972  14.70697 0.5860341
Estaquia:39-Semente:19  -49.35333  -85.531498 -13.17517 0.0031377
Semente:39-Semente:19   -50.83083  -87.008998 -14.65267 0.0022703
Estaquia:52-Semente:19  -59.71083  -95.888998 -23.53267 0.0003226
Semente:52-Semente:19   -60.68083  -96.858998 -24.50267 0.0002609
Estaquia:63-Semente:19  -47.08333  -83.261498 -10.90517 0.0051450
Semente:63-Semente:19   -64.14833 -100.326498 -27.97017 0.0001226
Semente:39-Estaquia:39   -1.47750  -34.971972  32.01697 0.9999999
Estaquia:52-Estaquia:39 -10.35750  -43.851972  23.13697 0.9649937
Semente:52-Estaquia:39  -11.32750  -44.821972  22.16697 0.9445483
Estaquia:63-Estaquia:39   2.27000  -31.224472  35.76447 0.9999979
Semente:63-Estaquia:39  -14.79500  -48.289472  18.69947 0.8156452
Estaquia:52-Semente:39   -8.88000  -42.374472  24.61447 0.9849548
Semente:52-Semente:39    -9.85000  -43.344472  23.64447 0.9732418
Estaquia:63-Semente:39    3.74750  -29.746972  37.24197 0.9999367
Semente:63-Semente:39   -13.31750  -46.811972  20.17697 0.8812269
Semente:52-Estaquia:52   -0.97000  -34.464472  32.52447 1.0000000
Estaquia:63-Estaquia:52  12.62750  -20.866972  46.12197 0.9065348
Semente:63-Estaquia:52   -4.43750  -37.931972  29.05697 0.9998039
Estaquia:63-Semente:52   13.59750  -19.896972  47.09197 0.8699577
Semente:63-Semente:52    -3.46750  -36.961972  30.02697 0.9999626
Semente:63-Estaquia:63  -17.06500  -50.559472  16.42947 0.6909101
tukey.cld20 = multcompLetters4(mod20, tukey20)
print(tukey.cld20)
$propagacao
$propagacao$Letters
 Semente Estaquia 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Semente  TRUE
Estaquia TRUE


$saturacao
 19  39  63  52 
"a" "b" "b" "b" 

$`propagacao:saturacao`
 Semente:19 Estaquia:19 Estaquia:63 Estaquia:39  Semente:39 Estaquia:52  Semente:52  Semente:63 
        "a"         "b"         "b"         "b"         "b"         "b"         "b"         "b" 

CHEMICAL ANALYSIS

21- Fosforo

#Outlier
boxplot(data2$Fósforo)

#model
mod21 = aov(Fósforo~propagacao*saturacao, data = data2)
hist(rstandard(mod21))

shapiro.test(rstandard(mod21))

    Shapiro-Wilk normality test

data:  rstandard(mod21)
W = 0.96256, p-value = 0.3596
#Tukey
medias21=emmeans(mod21,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias21.1=emmeans(mod21,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias21)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     3.58 0.103 22     3.37      3.8
 Semente      3.37 0.111 22     3.14      3.6

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias21.1)
 saturacao emmean    SE df lower.CL upper.CL
 19          3.79 0.158 22     3.46     4.12
 39          3.54 0.146 22     3.24     3.84
 52          3.30 0.146 22     3.00     3.60
 63          3.28 0.158 22     2.95     3.61

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod21)
                     Df Sum Sq Mean Sq F value Pr(>F)
propagacao            1  0.399  0.3993   2.347  0.140
saturacao             3  1.176  0.3921   2.305  0.105
propagacao:saturacao  3  0.440  0.1466   0.861  0.476
Residuals            22  3.743  0.1702               
2 observations deleted due to missingness
tukey21 = TukeyHSD(mod21)
print(tukey21)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Fósforo ~ propagacao * saturacao, data = data2)

$propagacao
                     diff        lwr        upr     p adj
Semente-Estaquia -0.23125 -0.5443166 0.08181655 0.1398046

$saturacao
             diff        lwr       upr     p adj
39-19 -0.23169643 -0.8245121 0.3611193 0.7019020
52-19 -0.46919643 -1.0620121 0.1236193 0.1550368
63-19 -0.50000000 -1.1122574 0.1122574 0.1365410
52-39 -0.23750000 -0.8102144 0.3352144 0.6625213
63-39 -0.26830357 -0.8611193 0.3245121 0.5988110
63-52 -0.03080357 -0.6236193 0.5620121 0.9988946

$`propagacao:saturacao`
                                diff        lwr       upr     p adj
Semente:19-Estaquia:19   0.083333333 -0.9685242 1.1351909 0.9999937
Estaquia:39-Estaquia:19  0.075000000 -0.8988309 1.0488309 0.9999948
Semente:39-Estaquia:19  -0.500000000 -1.4738309 0.4738309 0.6787489
Estaquia:52-Estaquia:19 -0.325000000 -1.2988309 0.6488309 0.9467128
Semente:52-Estaquia:19  -0.575000000 -1.5488309 0.3988309 0.5210914
Estaquia:63-Estaquia:19 -0.425000000 -1.3988309 0.5488309 0.8209558
Semente:63-Estaquia:19  -0.516666667 -1.5685242 0.5351909 0.7226286
Estaquia:39-Semente:19  -0.008333333 -1.0601909 1.0435242 1.0000000
Semente:39-Semente:19   -0.583333333 -1.6351909 0.4685242 0.5946955
Estaquia:52-Semente:19  -0.408333333 -1.4601909 0.6435242 0.8907949
Semente:52-Semente:19   -0.658333333 -1.7101909 0.3935242 0.4506937
Estaquia:63-Semente:19  -0.508333333 -1.5601909 0.5435242 0.7378167
Semente:63-Semente:19   -0.600000000 -1.7244830 0.5244830 0.6378777
Semente:39-Estaquia:39  -0.575000000 -1.5488309 0.3988309 0.5210914
Estaquia:52-Estaquia:39 -0.400000000 -1.3738309 0.5738309 0.8603965
Semente:52-Estaquia:39  -0.650000000 -1.6238309 0.3238309 0.3734868
Estaquia:63-Estaquia:39 -0.500000000 -1.4738309 0.4738309 0.6787489
Semente:63-Estaquia:39  -0.591666667 -1.6435242 0.4601909 0.5783612
Estaquia:52-Semente:39   0.175000000 -0.7988309 1.1488309 0.9985168
Semente:52-Semente:39   -0.075000000 -1.0488309 0.8988309 0.9999948
Estaquia:63-Semente:39   0.075000000 -0.8988309 1.0488309 0.9999948
Semente:63-Semente:39   -0.016666667 -1.0685242 1.0351909 1.0000000
Semente:52-Estaquia:52  -0.250000000 -1.2238309 0.7238309 0.9870682
Estaquia:63-Estaquia:52 -0.100000000 -1.0738309 0.8738309 0.9999631
Semente:63-Estaquia:52  -0.191666667 -1.2435242 0.8601909 0.9983803
Estaquia:63-Semente:52   0.150000000 -0.8238309 1.1238309 0.9994498
Semente:63-Semente:52    0.058333333 -0.9935242 1.1101909 0.9999995
Semente:63-Estaquia:63  -0.091666667 -1.1435242 0.9601909 0.9999879
tukey.cld21 = multcompLetters4(mod21, tukey21)
print(tukey.cld21)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
$saturacao$Letters
 19  39  52  63 
"a" "a" "a" "a" 

$saturacao$LetterMatrix
      a
19 TRUE
39 TRUE
52 TRUE
63 TRUE


$`propagacao:saturacao`
$`propagacao:saturacao`$Letters
 Semente:19 Estaquia:39 Estaquia:19 Estaquia:52 Estaquia:63  Semente:39  Semente:63  Semente:52 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "a" 

$`propagacao:saturacao`$LetterMatrix
               a
Semente:19  TRUE
Estaquia:39 TRUE
Estaquia:19 TRUE
Estaquia:52 TRUE
Estaquia:63 TRUE
Semente:39  TRUE
Semente:63  TRUE
Semente:52  TRUE

22- Potassio

#Outlier
boxplot(data2$Potássio)

#model
mod22 = aov(Potássio~propagacao*saturacao, data = data2)
hist(rstandard(mod22))

shapiro.test(rstandard(mod22))

    Shapiro-Wilk normality test

data:  rstandard(mod22)
W = 0.94884, p-value = 0.1574
#Tukey
medias22=emmeans(mod22,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias22.1=emmeans(mod22,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias22)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia     17.1 1.03 22     15.0     19.3
 Semente      15.0 1.11 22     12.6     17.3

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias22.1)
 saturacao emmean   SE df lower.CL upper.CL
 19          17.2 1.58 22     13.9     20.5
 39          17.2 1.46 22     14.2     20.3
 52          15.8 1.46 22     12.7     18.8
 63          14.0 1.58 22     10.7     17.2

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod22)
                     Df Sum Sq Mean Sq F value Pr(>F)
propagacao            1   31.5  31.488   1.848  0.188
saturacao             3   46.1  15.354   0.901  0.456
propagacao:saturacao  3   13.8   4.594   0.270  0.847
Residuals            22  374.8  17.038               
2 observations deleted due to missingness
tukey22 = TukeyHSD(mod22)
print(tukey22)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Potássio ~ propagacao * saturacao, data = data2)

$propagacao
                      diff       lwr      upr     p adj
Semente-Estaquia -2.053571 -5.186327 1.079184 0.1877742

$saturacao
            diff       lwr      upr     p adj
39-19  0.1109694 -5.821146 6.043084 0.9999480
52-19 -1.3890306 -7.321146 4.543084 0.9143473
63-19 -3.0000000 -9.126662 3.126662 0.5365671
52-39 -1.5000000 -7.230968 4.230968 0.8853186
63-39 -3.1109694 -9.043084 2.821146 0.4795339
63-52 -1.6109694 -7.543084 4.321146 0.8739405

$`propagacao:saturacao`
                              diff        lwr       upr     p adj
Semente:19-Estaquia:19  -1.0833333 -11.608932  9.442265 0.9999625
Estaquia:39-Estaquia:19  0.2500000  -9.494810  9.994810 1.0000000
Semente:39-Estaquia:19  -1.2500000 -10.994810  8.494810 0.9998352
Estaquia:52-Estaquia:19 -1.2500000 -10.994810  8.494810 0.9998352
Semente:52-Estaquia:19  -2.7500000 -12.494810  6.994810 0.9779791
Estaquia:63-Estaquia:19 -1.5000000 -11.244810  8.244810 0.9994522
Semente:63-Estaquia:19  -6.0833333 -16.608932  4.442265 0.5465791
Estaquia:39-Semente:19   1.3333333  -9.192265 11.858932 0.9998484
Semente:39-Semente:19   -0.1666667 -10.692265 10.358932 1.0000000
Estaquia:52-Semente:19  -0.1666667 -10.692265 10.358932 1.0000000
Semente:52-Semente:19   -1.6666667 -12.192265  8.858932 0.9993416
Estaquia:63-Semente:19  -0.4166667 -10.942265 10.108932 0.9999999
Semente:63-Semente:19   -5.0000000 -16.252338  6.252338 0.8078153
Semente:39-Estaquia:39  -1.5000000 -11.244810  8.244810 0.9994522
Estaquia:52-Estaquia:39 -1.5000000 -11.244810  8.244810 0.9994522
Semente:52-Estaquia:39  -3.0000000 -12.744810  6.744810 0.9648084
Estaquia:63-Estaquia:39 -1.7500000 -11.494810  7.994810 0.9985231
Semente:63-Estaquia:39  -6.3333333 -16.858932  4.192265 0.4983752
Estaquia:52-Semente:39   0.0000000  -9.744810  9.744810 1.0000000
Semente:52-Semente:39   -1.5000000 -11.244810  8.244810 0.9994522
Estaquia:63-Semente:39  -0.2500000  -9.994810  9.494810 1.0000000
Semente:63-Semente:39   -4.8333333 -15.358932  5.692265 0.7821261
Semente:52-Estaquia:52  -1.5000000 -11.244810  8.244810 0.9994522
Estaquia:63-Estaquia:52 -0.2500000  -9.994810  9.494810 1.0000000
Semente:63-Estaquia:52  -4.8333333 -15.358932  5.692265 0.7821261
Estaquia:63-Semente:52   1.2500000  -8.494810 10.994810 0.9998352
Semente:63-Semente:52   -3.3333333 -13.858932  7.192265 0.9592069
Semente:63-Estaquia:63  -4.5833333 -15.108932  5.942265 0.8225405
tukey.cld22 = multcompLetters4(mod22, tukey22)
print(tukey.cld22)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
$saturacao$Letters
 19  39  52  63 
"a" "a" "a" "a" 

$saturacao$LetterMatrix
      a
19 TRUE
39 TRUE
52 TRUE
63 TRUE


$`propagacao:saturacao`
$`propagacao:saturacao`$Letters
Estaquia:39 Estaquia:19  Semente:19  Semente:39 Estaquia:52 Estaquia:63  Semente:52  Semente:63 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "a" 

$`propagacao:saturacao`$LetterMatrix
               a
Estaquia:39 TRUE
Estaquia:19 TRUE
Semente:19  TRUE
Semente:39  TRUE
Estaquia:52 TRUE
Estaquia:63 TRUE
Semente:52  TRUE
Semente:63  TRUE

23- Calcio

#Outlier
boxplot(data2$Cálcio)


#model
mod23 = aov(Cálcio~propagacao*saturacao, data = data2)
hist(rstandard(mod23))

shapiro.test(rstandard(mod23))

    Shapiro-Wilk normality test

data:  rstandard(mod23)
W = 0.95688, p-value = 0.2572
#Tukey 
medias23=emmeans(mod23,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias23.1=emmeans(mod23,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias23)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     13.0 0.457 22     12.1     13.9
 Semente      12.1 0.493 22     11.1     13.2

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias23.1)
 saturacao emmean    SE df lower.CL upper.CL
 19          8.38 0.698 22     6.93     9.82
 39         11.88 0.646 22    10.54    13.21
 52         13.75 0.646 22    12.41    15.09
 63         16.29 0.698 22    14.84    17.74

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod23)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1   5.49    5.49   1.644    0.213    
saturacao             3 232.14   77.38  23.187 5.26e-07 ***
propagacao:saturacao  3   4.16    1.39   0.416    0.743    
Residuals            22  73.42    3.34                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey23 = TukeyHSD(mod23)
print(tukey23)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Cálcio ~ propagacao * saturacao, data = data2)

$propagacao
                       diff       lwr       upr     p adj
Semente-Estaquia -0.8571429 -2.243595 0.5293089 0.2131452

$saturacao
          diff        lwr       upr     p adj
39-19 3.507653  0.8822995  6.133007 0.0062142
52-19 5.382653  2.7572995  8.008007 0.0000557
63-19 7.857143  5.1456894 10.568596 0.0000003
52-39 1.875000 -0.6613325  4.411332 0.1997680
63-39 4.349490  1.7241363  6.974843 0.0007483
63-52 2.474490 -0.1508637  5.099843 0.0694354

$`propagacao:saturacao`
                               diff         lwr       upr     p adj
Semente:19-Estaquia:19  -0.75000000 -5.40827387  3.908274 0.9992666
Estaquia:39-Estaquia:19  3.50000000 -0.81272357  7.812724 0.1717191
Semente:39-Estaquia:19   2.75000000 -1.56272357  7.062724 0.4281485
Estaquia:52-Estaquia:19  6.00000000  1.68727643 10.312724 0.0026420
Semente:52-Estaquia:19   4.00000000 -0.31272357  8.312724 0.0822149
Estaquia:63-Estaquia:19  7.50000000  3.18727643 11.812724 0.0001773
Semente:63-Estaquia:19   7.58333333  2.92505947 12.241607 0.0004181
Estaquia:39-Semente:19   4.25000000 -0.40827387  8.908274 0.0909158
Semente:39-Semente:19    3.50000000 -1.15827387  8.158274 0.2427658
Estaquia:52-Semente:19   6.75000000  2.09172613 11.408274 0.0016839
Semente:52-Semente:19    4.75000000  0.09172613  9.408274 0.0435143
Estaquia:63-Semente:19   8.25000000  3.59172613 12.908274 0.0001387
Semente:63-Semente:19    8.33333333  3.35342910 13.313238 0.0002940
Semente:39-Estaquia:39  -0.75000000 -5.06272357  3.562724 0.9987963
Estaquia:52-Estaquia:39  2.50000000 -1.81272357  6.812724 0.5430490
Semente:52-Estaquia:39   0.50000000 -3.81272357  4.812724 0.9999162
Estaquia:63-Estaquia:39  4.00000000 -0.31272357  8.312724 0.0822149
Semente:63-Estaquia:39   4.08333333 -0.57494053  8.741607 0.1147541
Estaquia:52-Semente:39   3.25000000 -1.06272357  7.562724 0.2397916
Semente:52-Semente:39    1.25000000 -3.06272357  5.562724 0.9745144
Estaquia:63-Semente:39   4.75000000  0.43727643  9.062724 0.0240986
Semente:63-Semente:39    4.83333333  0.17505947  9.491607 0.0383059
Semente:52-Estaquia:52  -2.00000000 -6.31272357  2.312724 0.7739945
Estaquia:63-Estaquia:52  1.50000000 -2.81272357  5.812724 0.9346429
Semente:63-Estaquia:52   1.58333333 -3.07494053  6.241607 0.9416267
Estaquia:63-Semente:52   3.50000000 -0.81272357  7.812724 0.1717191
Semente:63-Semente:52    3.58333333 -1.07494053  8.241607 0.2196816
Semente:63-Estaquia:63   0.08333333 -4.57494053  4.741607 1.0000000
tukey.cld23 = multcompLetters4(mod23, tukey23)
print(tukey.cld23)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
  63   52   39   19 
 "a" "ab"  "b"  "c" 

$`propagacao:saturacao`
 Semente:63 Estaquia:63 Estaquia:52  Semente:52 Estaquia:39  Semente:39 Estaquia:19  Semente:19 
        "a"         "a"        "ab"       "abc"      "abcd"       "bcd"        "cd"         "d" 

24- Magnesio

#Outlier
boxplot(data2$Magnésio)

#model
mod24 = aov(Magnésio~propagacao*saturacao, data = data2)
hist(rstandard(mod24))

shapiro.test(rstandard(mod24))

    Shapiro-Wilk normality test

data:  rstandard(mod24)
W = 0.97967, p-value = 0.8166
#Tukey
medias24=emmeans(mod24,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias24.1=emmeans(mod24,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias24)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     3.54 0.121 22     3.29     3.79
 Semente      3.51 0.131 22     3.24     3.78

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias24.1)
 saturacao emmean    SE df lower.CL upper.CL
 19          2.56 0.185 22     2.18     2.95
 39          3.46 0.171 22     3.11     3.82
 52          3.73 0.171 22     3.37     4.08
 63          4.34 0.185 22     3.95     4.72

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod24)
                     Df Sum Sq Mean Sq F value  Pr(>F)    
propagacao            1  0.015   0.015   0.064   0.803    
saturacao             3 10.774   3.591  15.364 1.3e-05 ***
propagacao:saturacao  3  1.610   0.537   2.296   0.106    
Residuals            22  5.142   0.234                    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey24 = TukeyHSD(mod24)
print(tukey24)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Magnésio ~ propagacao * saturacao, data = data2)

$propagacao
                        diff        lwr       upr     p adj
Semente-Estaquia -0.04464286 -0.4115824 0.3222967 0.8031415

$saturacao
           diff        lwr       upr     p adj
39-19 0.8942602  0.1994317 1.5890887 0.0085311
52-19 1.1567602  0.4619317 1.8515887 0.0007091
63-19 1.7142857  0.9966699 2.4319015 0.0000064
52-39 0.2625000 -0.4087681 0.9337681 0.7015587
63-39 0.8200255  0.1251970 1.5148540 0.0168094
63-52 0.5575255 -0.1373030 1.2523540 0.1467785

$`propagacao:saturacao`
                          diff         lwr       upr     p adj
Semente:19-Estaquia:19  -0.125 -1.35786305 1.1078631 0.9999661
Estaquia:39-Estaquia:19  1.125 -0.01640939 2.2664094 0.0552837
Semente:39-Estaquia:19   0.550 -0.59140939 1.6914094 0.7404943
Estaquia:52-Estaquia:19  1.175  0.03359061 2.3164094 0.0406028
Semente:52-Estaquia:19   1.025 -0.11640939 2.1664094 0.0998976
Estaquia:63-Estaquia:19  1.350  0.20859061 2.4914094 0.0131349
Semente:63-Estaquia:19   2.075  0.84213695 3.3078631 0.0002728
Estaquia:39-Semente:19   1.250  0.01713695 2.4828631 0.0453361
Semente:39-Semente:19    0.675 -0.55786305 1.9078631 0.6092648
Estaquia:52-Semente:19   1.300  0.06713695 2.5328631 0.0339301
Semente:52-Semente:19    1.150 -0.08286305 2.3828631 0.0793466
Estaquia:63-Semente:19   1.475  0.24213695 2.7078631 0.0118464
Semente:63-Semente:19    2.200  0.88201396 3.5179860 0.0003037
Semente:39-Estaquia:39  -0.575 -1.71640939 0.5664094 0.6980316
Estaquia:52-Estaquia:39  0.050 -1.09140939 1.1914094 0.9999999
Semente:52-Estaquia:39  -0.100 -1.24140939 1.0414094 0.9999875
Estaquia:63-Estaquia:39  0.225 -0.91640939 1.3664094 0.9973468
Semente:63-Estaquia:39   0.950 -0.28286305 2.1828631 0.2180411
Estaquia:52-Semente:39   0.625 -0.51640939 1.7664094 0.6091359
Semente:52-Semente:39    0.475 -0.66640939 1.6164094 0.8525074
Estaquia:63-Semente:39   0.800 -0.34140939 1.9414094 0.3170657
Semente:63-Semente:39    1.525  0.29213695 2.7578631 0.0087009
Semente:52-Estaquia:52  -0.150 -1.29140939 0.9914094 0.9998064
Estaquia:63-Estaquia:52  0.175 -0.96640939 1.3164094 0.9994661
Semente:63-Estaquia:52   0.900 -0.33286305 2.1328631 0.2725406
Estaquia:63-Semente:52   0.325 -0.81640939 1.4664094 0.9768704
Semente:63-Semente:52    1.050 -0.18286305 2.2828631 0.1343425
Semente:63-Estaquia:63   0.725 -0.50786305 1.9578631 0.5259461
tukey.cld24 = multcompLetters4(mod24, tukey24)
print(tukey.cld24)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
  63   52   39   19 
 "a" "ab"  "b"  "c" 

$`propagacao:saturacao`
 Semente:63 Estaquia:63 Estaquia:52 Estaquia:39  Semente:52  Semente:39 Estaquia:19  Semente:19 
        "a"        "ab"        "ab"       "abc"      "abcd"       "bcd"        "cd"         "d" 

25- Enxofre

#Outlier
boxplot(data2$Enxofre)

#model
mod25 = aov(Enxofre~propagacao*saturacao, data = data2)
hist(rstandard(mod25))

shapiro.test(rstandard(mod25))

    Shapiro-Wilk normality test

data:  rstandard(mod25)
W = 0.97964, p-value = 0.816
#Tukey
medias25=emmeans(mod25,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias25.1=emmeans(mod25,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias25)
 propagacao emmean     SE df lower.CL upper.CL
 Estaquia     1.24 0.0391 22     1.16     1.32
 Semente      1.17 0.0422 22     1.08     1.25

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias25.1)
 saturacao emmean     SE df lower.CL upper.CL
 19          1.30 0.0597 22     1.18     1.43
 39          1.25 0.0553 22     1.14     1.36
 52          1.12 0.0553 22     1.01     1.24
 63          1.13 0.0597 22     1.01     1.25

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod25)
                     Df Sum Sq Mean Sq F value Pr(>F)
propagacao            1 0.0400 0.04002   1.636  0.214
saturacao             3 0.1551 0.05170   2.113  0.128
propagacao:saturacao  3 0.0562 0.01873   0.766  0.526
Residuals            22 0.5383 0.02447               
2 observations deleted due to missingness
tukey25 = TukeyHSD(mod25)
print(tukey25)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Enxofre ~ propagacao * saturacao, data = data2)

$propagacao
                        diff        lwr        upr   p adj
Semente-Estaquia -0.07321429 -0.1919368 0.04550822 0.21425

$saturacao
             diff        lwr        upr     p adj
39-19 -0.04477041 -0.2695807 0.18003984 0.9447429
52-19 -0.16977041 -0.3945807 0.05503984 0.1851868
63-19 -0.15714286 -0.3893259 0.07504016 0.2653819
52-39 -0.12500000 -0.3421873 0.09218733 0.4000927
63-39 -0.11237245 -0.3371827 0.11243779 0.5196632
63-52  0.01262755 -0.2121827 0.23743779 0.9986057

$`propagacao:saturacao`
                               diff        lwr       upr     p adj
Semente:19-Estaquia:19   0.05833333 -0.3405568 0.4572235 0.9996081
Estaquia:39-Estaquia:19  0.00000000 -0.3693005 0.3693005 1.0000000
Semente:39-Estaquia:19  -0.05000000 -0.4193005 0.3193005 0.9997642
Estaquia:52-Estaquia:19 -0.10000000 -0.4693005 0.2693005 0.9824973
Semente:52-Estaquia:19  -0.20000000 -0.5693005 0.1693005 0.6214931
Estaquia:63-Estaquia:19 -0.05000000 -0.4193005 0.3193005 0.9997642
Semente:63-Estaquia:19  -0.24166667 -0.6405568 0.1572235 0.4900925
Estaquia:39-Semente:19  -0.05833333 -0.4572235 0.3405568 0.9996081
Semente:39-Semente:19   -0.10833333 -0.5072235 0.2905568 0.9822036
Estaquia:52-Semente:19  -0.15833333 -0.5572235 0.2405568 0.8795132
Semente:52-Semente:19   -0.25833333 -0.6572235 0.1405568 0.4094373
Estaquia:63-Semente:19  -0.10833333 -0.5072235 0.2905568 0.9822036
Semente:63-Semente:19   -0.30000000 -0.7264315 0.1264315 0.3128705
Semente:39-Estaquia:39  -0.05000000 -0.4193005 0.3193005 0.9997642
Estaquia:52-Estaquia:39 -0.10000000 -0.4693005 0.2693005 0.9824973
Semente:52-Estaquia:39  -0.20000000 -0.5693005 0.1693005 0.6214931
Estaquia:63-Estaquia:39 -0.05000000 -0.4193005 0.3193005 0.9997642
Semente:63-Estaquia:39  -0.24166667 -0.6405568 0.1572235 0.4900925
Estaquia:52-Semente:39  -0.05000000 -0.4193005 0.3193005 0.9997642
Semente:52-Semente:39   -0.15000000 -0.5193005 0.2193005 0.8668981
Estaquia:63-Semente:39   0.00000000 -0.3693005 0.3693005 1.0000000
Semente:63-Semente:39   -0.19166667 -0.5905568 0.2072235 0.7430664
Semente:52-Estaquia:52  -0.10000000 -0.4693005 0.2693005 0.9824973
Estaquia:63-Estaquia:52  0.05000000 -0.3193005 0.4193005 0.9997642
Semente:63-Estaquia:52  -0.14166667 -0.5405568 0.2572235 0.9276944
Estaquia:63-Semente:52   0.15000000 -0.2193005 0.5193005 0.8668981
Semente:63-Semente:52   -0.04166667 -0.4405568 0.3572235 0.9999585
Semente:63-Estaquia:63  -0.19166667 -0.5905568 0.2072235 0.7430664
tukey.cld25 = multcompLetters4(mod25, tukey25)
print(tukey.cld25)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
$saturacao$Letters
 19  39  63  52 
"a" "a" "a" "a" 

$saturacao$LetterMatrix
      a
19 TRUE
39 TRUE
63 TRUE
52 TRUE


$`propagacao:saturacao`
$`propagacao:saturacao`$Letters
 Semente:19 Estaquia:19 Estaquia:39  Semente:39 Estaquia:63 Estaquia:52  Semente:52  Semente:63 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "a" 

$`propagacao:saturacao`$LetterMatrix
               a
Semente:19  TRUE
Estaquia:19 TRUE
Estaquia:39 TRUE
Semente:39  TRUE
Estaquia:63 TRUE
Estaquia:52 TRUE
Semente:52  TRUE
Semente:63  TRUE

26- Boro

#Outlier
boxplot(data2$Boro)

#model
mod26 = aov(Boro~propagacao*saturacao, data = data2)
hist(rstandard(mod26))

shapiro.test(rstandard(mod26))

    Shapiro-Wilk normality test

data:  rstandard(mod26)
W = 0.96432, p-value = 0.3973
#Tukey 
medias26=emmeans(mod26,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias26.1=emmeans(mod26,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias26)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia      142 3.23 22      136      149
 Semente       143 3.49 22      136      150

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias26.1)
 saturacao emmean   SE df lower.CL upper.CL
 19           152 4.94 22      142      162
 39           139 4.57 22      130      149
 52           141 4.57 22      131      150
 63           139 4.94 22      129      150

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod26)
                     Df Sum Sq Mean Sq F value Pr(>F)
propagacao            1      1     0.5   0.003  0.957
saturacao             3    780   259.9   1.556  0.228
propagacao:saturacao  3    145    48.2   0.289  0.833
Residuals            22   3674   167.0               
2 observations deleted due to missingness
tukey26 = TukeyHSD(mod26)
print(tukey26)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Boro ~ propagacao * saturacao, data = data2)

$propagacao
                      diff       lwr      upr     p adj
Semente-Estaquia 0.2589286 -9.549549 10.06741 0.9568341

$saturacao
             diff       lwr       upr     p adj
39-19 -12.4649235 -31.03803  6.108188 0.2720229
52-19 -10.8399235 -29.41303  7.733188 0.3881288
63-19 -12.5714286 -31.75366  6.610798 0.2910409
52-39   1.6250000 -16.31833 19.568330 0.9942519
63-39  -0.1065051 -18.67962 18.466606 0.9999985
63-52  -1.7315051 -20.30462 16.841606 0.9937397

$`propagacao:saturacao`
                              diff       lwr      upr     p adj
Semente:19-Estaquia:19    2.500000 -30.45504 35.45504 0.9999953
Estaquia:39-Estaquia:19 -12.750000 -43.26044 17.76044 0.8499224
Semente:39-Estaquia:19  -10.000000 -40.51044 20.51044 0.9513530
Estaquia:52-Estaquia:19  -6.500000 -37.01044 24.01044 0.9957188
Semente:52-Estaquia:19  -13.000000 -43.51044 17.51044 0.8374243
Estaquia:63-Estaquia:19 -13.500000 -44.01044 17.01044 0.8109694
Semente:63-Estaquia:19   -8.833333 -41.78838 24.12171 0.9834703
Estaquia:39-Semente:19  -15.250000 -48.20504 17.70504 0.7757797
Semente:39-Semente:19   -12.500000 -45.45504 20.45504 0.9016359
Estaquia:52-Semente:19   -9.000000 -41.95504 23.95504 0.9816418
Semente:52-Semente:19   -15.500000 -48.45504 17.45504 0.7619966
Estaquia:63-Semente:19  -16.000000 -48.95504 16.95504 0.7335537
Semente:63-Semente:19   -11.333333 -46.56376 23.89709 0.9557738
Semente:39-Estaquia:39    2.750000 -27.76044 33.26044 0.9999848
Estaquia:52-Estaquia:39   6.250000 -24.26044 36.76044 0.9966340
Semente:52-Estaquia:39   -0.250000 -30.76044 30.26044 1.0000000
Estaquia:63-Estaquia:39  -0.750000 -31.26044 29.76044 1.0000000
Semente:63-Estaquia:39    3.916667 -29.03838 36.87171 0.9999010
Estaquia:52-Semente:39    3.500000 -27.01044 34.01044 0.9999220
Semente:52-Semente:39    -3.000000 -33.51044 27.51044 0.9999725
Estaquia:63-Semente:39   -3.500000 -34.01044 27.01044 0.9999220
Semente:63-Semente:39     1.166667 -31.78838 34.12171 1.0000000
Semente:52-Estaquia:52   -6.500000 -37.01044 24.01044 0.9957188
Estaquia:63-Estaquia:52  -7.000000 -37.51044 23.51044 0.9933037
Semente:63-Estaquia:52   -2.333333 -35.28838 30.62171 0.9999971
Estaquia:63-Semente:52   -0.500000 -31.01044 30.01044 1.0000000
Semente:63-Semente:52     4.166667 -28.78838 37.12171 0.9998503
Semente:63-Estaquia:63    4.666667 -28.28838 37.62171 0.9996828
tukey.cld26 = multcompLetters4(mod26, tukey26)
print(tukey.cld26)
$propagacao
$propagacao$Letters
 Semente Estaquia 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Semente  TRUE
Estaquia TRUE


$saturacao
$saturacao$Letters
 19  52  39  63 
"a" "a" "a" "a" 

$saturacao$LetterMatrix
      a
19 TRUE
52 TRUE
39 TRUE
63 TRUE


$`propagacao:saturacao`
$`propagacao:saturacao`$Letters
 Semente:19 Estaquia:19 Estaquia:52  Semente:63  Semente:39 Estaquia:39  Semente:52 Estaquia:63 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "a" 

$`propagacao:saturacao`$LetterMatrix
               a
Semente:19  TRUE
Estaquia:19 TRUE
Estaquia:52 TRUE
Semente:63  TRUE
Semente:39  TRUE
Estaquia:39 TRUE
Semente:52  TRUE
Estaquia:63 TRUE

27- Cobre

#Outlier
boxplot(data2$Cobre)


#model
mod27 = aov(Cobre~propagacao*saturacao, data = data2)
mod27.1 = aov(Cobre^0.5~propagacao*saturacao, data = data2)
hist(rstandard(mod27))

shapiro.test(rstandard(mod27.1))

    Shapiro-Wilk normality test

data:  rstandard(mod27.1)
W = 0.93165, p-value = 0.05432
#Tukey
medias27=emmeans(mod27,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias27.1=emmeans(mod27,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias27)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia     7.50 0.359 22     6.76     8.24
 Semente      7.12 0.388 22     6.32     7.93

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias27.1)
 saturacao emmean    SE df lower.CL upper.CL
 19          8.21 0.548 22     7.07     9.35
 39          7.88 0.508 22     6.82     8.93
 52          7.12 0.508 22     6.07     8.18
 63          6.04 0.548 22     4.90     7.18

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod27.1)
                     Df Sum Sq Mean Sq F value Pr(>F)  
propagacao            1 0.0585 0.05845   0.872 0.3605  
saturacao             3 0.6719 0.22395   3.342 0.0378 *
propagacao:saturacao  3 0.2880 0.09601   1.433 0.2602  
Residuals            22 1.4745 0.06702                 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey27 = TukeyHSD(mod27.1)
print(tukey27)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Cobre^0.5 ~ propagacao * saturacao, data = data2)

$propagacao
                        diff       lwr      upr     p adj
Semente-Estaquia -0.08848001 -0.284964 0.108004 0.3604934

$saturacao
             diff        lwr          upr     p adj
39-19 -0.02963992 -0.4016975  0.342417656 0.9960636
52-19 -0.16132128 -0.5333789  0.210736300 0.6308416
63-19 -0.38879676 -0.7730562 -0.004537339 0.0466760
52-39 -0.13168136 -0.4911231  0.227760414 0.7412084
63-39 -0.35915683 -0.7312144  0.012900748 0.0610373
63-52 -0.22747548 -0.5995331  0.144582104 0.3485818

$`propagacao:saturacao`
                               diff        lwr        upr     p adj
Semente:19-Estaquia:19   0.12007409 -0.5400831 0.78023132 0.9983988
Estaquia:39-Estaquia:19  0.17480054 -0.4363863 0.78598737 0.9763014
Semente:39-Estaquia:19  -0.14379974 -0.7549866 0.46738709 0.9922225
Estaquia:52-Estaquia:19  0.00000000 -0.6111868 0.61118683 1.0000000
Semente:52-Estaquia:19  -0.23236191 -0.8435487 0.37882492 0.9005971
Estaquia:63-Estaquia:19 -0.38384814 -0.9950350 0.22733870 0.4465192
Semente:63-Estaquia:19  -0.27532082 -0.9354781 0.38483641 0.8511695
Estaquia:39-Semente:19   0.05472645 -0.6054308 0.71488367 0.9999914
Semente:39-Semente:19   -0.26387383 -0.9240311 0.39628340 0.8757914
Estaquia:52-Semente:19  -0.12007409 -0.7802313 0.54008313 0.9983988
Semente:52-Semente:19   -0.35243600 -1.0125932 0.30772122 0.6372877
Estaquia:63-Semente:19  -0.50392223 -1.1640795 0.15623500 0.2271121
Semente:63-Semente:19   -0.39539492 -1.1011327 0.31034285 0.5829772
Semente:39-Estaquia:39  -0.31860028 -0.9297871 0.29258655 0.6629280
Estaquia:52-Estaquia:39 -0.17480054 -0.7859874 0.43638629 0.9763014
Semente:52-Estaquia:39  -0.40716245 -1.0183493 0.20402438 0.3757607
Estaquia:63-Estaquia:39 -0.55864868 -1.1698355 0.05253816 0.0899091
Semente:63-Estaquia:39  -0.45012136 -1.1102786 0.21003587 0.3485544
Estaquia:52-Semente:39   0.14379974 -0.4673871 0.75498657 0.9922225
Semente:52-Semente:39   -0.08856217 -0.6997490 0.52262466 0.9996310
Estaquia:63-Semente:39  -0.24004840 -0.8512352 0.37113843 0.8849881
Semente:63-Semente:39   -0.13152108 -0.7916783 0.52863614 0.9971661
Semente:52-Estaquia:52  -0.23236191 -0.8435487 0.37882492 0.9005971
Estaquia:63-Estaquia:52 -0.38384814 -0.9950350 0.22733870 0.4465192
Semente:63-Estaquia:52  -0.27532082 -0.9354781 0.38483641 0.8511695
Estaquia:63-Semente:52  -0.15148623 -0.7626731 0.45970061 0.9894430
Semente:63-Semente:52   -0.04295891 -0.7031161 0.61719832 0.9999984
Semente:63-Estaquia:63   0.10852731 -0.5516299 0.76868454 0.9991609
tukey.cld27 = multcompLetters4(mod27.1, tukey27)
print(tukey.cld27)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
  19   39   52   63 
 "a" "ab" "ab"  "b" 

$`propagacao:saturacao`
$`propagacao:saturacao`$Letters
Estaquia:39  Semente:19 Estaquia:19 Estaquia:52  Semente:39  Semente:52  Semente:63 Estaquia:63 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "a" 

$`propagacao:saturacao`$LetterMatrix
               a
Estaquia:39 TRUE
Semente:19  TRUE
Estaquia:19 TRUE
Estaquia:52 TRUE
Semente:39  TRUE
Semente:52  TRUE
Semente:63  TRUE
Estaquia:63 TRUE

28- Ferro

#Outlier
boxplot(data2$Ferro)


#model
mod28 = aov(Ferro~propagacao*saturacao, data = data2)
hist(rstandard(mod28))

shapiro.test(rstandard(mod28))

    Shapiro-Wilk normality test

data:  rstandard(mod28)
W = 0.97832, p-value = 0.7794
#Tukey 
medias28=emmeans(mod28,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias28.1=emmeans(mod28,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias28)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia      281 11.7 22      257      306
 Semente       265 12.6 22      238      291

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias28.1)
 saturacao emmean   SE df lower.CL upper.CL
 19           293 17.8 22      256      330
 39           287 16.5 22      253      321
 52           262 16.5 22      228      296
 63           250 17.8 22      213      287

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod28)
                     Df Sum Sq Mean Sq F value Pr(>F)
propagacao            1   2501    2501   1.148  0.296
saturacao             3   9698    3233   1.484  0.246
propagacao:saturacao  3   9478    3159   1.450  0.255
Residuals            22  47933    2179               
2 observations deleted due to missingness
tukey28 = TukeyHSD(mod28)
print(tukey28)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Ferro ~ propagacao * saturacao, data = data2)

$propagacao
                      diff       lwr     upr   p adj
Semente-Estaquia -18.30357 -53.72994 17.1228 0.29556

$saturacao
            diff        lwr      upr     p adj
39-19  -4.853316  -71.93588 62.22925 0.9970409
52-19 -30.228316  -97.31088 36.85425 0.6021484
63-19 -44.571429 -113.85400 24.71115 0.3061500
52-39 -25.375000  -90.18291 39.43291 0.7007576
63-39 -39.718112 -106.80068 27.36445 0.3758544
63-52 -14.343112  -81.42568 52.73945 0.9329050

$`propagacao:saturacao`
                                diff        lwr       upr     p adj
Semente:19-Estaquia:19   -4.58333333 -123.61071 114.44405 1.0000000
Estaquia:39-Estaquia:19  -4.50000000 -114.69794 105.69794 0.9999999
Semente:39-Estaquia:19  -11.75000000 -121.94794  98.44794 0.9999523
Estaquia:52-Estaquia:19   4.00000000 -106.19794 114.19794 1.0000000
Semente:52-Estaquia:19  -71.00000000 -181.19794  39.19794 0.4156451
Estaquia:63-Estaquia:19 -55.00000000 -165.19794  55.19794 0.7072196
Semente:63-Estaquia:19  -35.25000000 -154.27738  83.77738 0.9713674
Estaquia:39-Semente:19    0.08333333 -118.94405 119.11071 1.0000000
Semente:39-Semente:19    -7.16666667 -126.19405 111.86071 0.9999991
Estaquia:52-Semente:19    8.58333333 -110.44405 127.61071 0.9999967
Semente:52-Semente:19   -66.41666667 -185.44405  52.61071 0.5876424
Estaquia:63-Semente:19  -50.41666667 -169.44405  68.61071 0.8413087
Semente:63-Semente:19   -30.66666667 -157.91229  96.57896 0.9910382
Semente:39-Estaquia:39   -7.25000000 -117.44794 102.94794 0.9999983
Estaquia:52-Estaquia:39   8.50000000 -101.69794 118.69794 0.9999948
Semente:52-Estaquia:39  -66.50000000 -176.69794  43.69794 0.4948651
Estaquia:63-Estaquia:39 -50.50000000 -160.69794  59.69794 0.7837779
Semente:63-Estaquia:39  -30.75000000 -149.77738  88.27738 0.9865919
Estaquia:52-Semente:39   15.75000000  -94.44794 125.94794 0.9996629
Semente:52-Semente:39   -59.25000000 -169.44794  50.94794 0.6294944
Estaquia:63-Semente:39  -43.25000000 -153.44794  66.94794 0.8853528
Semente:63-Semente:39   -23.50000000 -142.52738  95.52738 0.9973209
Semente:52-Estaquia:52  -75.00000000 -185.19794  35.19794 0.3506771
Estaquia:63-Estaquia:52 -59.00000000 -169.19794  51.19794 0.6341467
Semente:63-Estaquia:52  -39.25000000 -158.27738  79.77738 0.9498324
Estaquia:63-Semente:52   16.00000000  -94.19794 126.19794 0.9996261
Semente:63-Semente:52    35.75000000  -83.27738 154.77738 0.9691237
Semente:63-Estaquia:63   19.75000000  -99.27738 138.77738 0.9991092
tukey.cld28 = multcompLetters4(mod28, tukey28)
print(tukey.cld28)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
$saturacao$Letters
 19  39  52  63 
"a" "a" "a" "a" 

$saturacao$LetterMatrix
      a
19 TRUE
39 TRUE
52 TRUE
63 TRUE


$`propagacao:saturacao`
$`propagacao:saturacao`$Letters
Estaquia:52 Estaquia:19 Estaquia:39  Semente:19  Semente:39  Semente:63 Estaquia:63  Semente:52 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "a" 

$`propagacao:saturacao`$LetterMatrix
               a
Estaquia:52 TRUE
Estaquia:19 TRUE
Estaquia:39 TRUE
Semente:19  TRUE
Semente:39  TRUE
Semente:63  TRUE
Estaquia:63 TRUE
Semente:52  TRUE

29- Manganês

#Outlier
boxplot(data2$Manganês)


#model
mod29 = aov(Manganês~propagacao*saturacao, data = data2)
hist(rstandard(mod29))

shapiro.test(rstandard(mod29))

    Shapiro-Wilk normality test

data:  rstandard(mod29)
W = 0.96516, p-value = 0.4166
#Tukey 
medias29=emmeans(mod29,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias29.1=emmeans(mod29,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias29)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia      234 14.7 22      204      264
 Semente       282 15.9 22      249      314

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias29.1)
 saturacao emmean   SE df lower.CL upper.CL
 19           340 22.4 22      294      387
 39           241 20.8 22      198      284
 52           234 20.8 22      191      277
 63           216 22.4 22      169      262

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod29)
                     Df Sum Sq Mean Sq F value  Pr(>F)   
propagacao            1  13898   13898   4.032 0.05708 . 
saturacao             3  63068   21023   6.099 0.00351 **
propagacao:saturacao  3   8514    2838   0.823 0.49503   
Residuals            22  75834    3447                   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey29 = TukeyHSD(mod29)
print(tukey29)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Manganês ~ propagacao * saturacao, data = data2)

$propagacao
                     diff       lwr      upr     p adj
Semente-Estaquia 43.14286 -1.416648 87.70236 0.0570849

$saturacao
            diff       lwr       upr     p adj
39-19  -96.18878 -180.5656 -11.81191 0.0215804
52-19 -102.56378 -186.9406 -18.18691 0.0134579
63-19 -121.57143 -208.7155 -34.42737 0.0042298
52-39   -6.37500  -87.8908  75.14080 0.9962731
63-39  -25.38265 -109.7595  58.99421 0.8371096
63-52  -19.00765 -103.3845  65.36921 0.9227552

$`propagacao:saturacao`
                               diff        lwr          upr     p adj
Semente:19-Estaquia:19    90.666667  -59.04672 240.38004933 0.4905835
Estaquia:39-Estaquia:19  -82.750000 -221.35766  55.85765887 0.5078252
Semente:39-Estaquia:19   -25.750000 -164.35766 112.85765887 0.9981699
Estaquia:52-Estaquia:19  -59.000000 -197.60766  79.60765887 0.8380798
Semente:52-Estaquia:19   -62.250000 -200.85766  76.35765887 0.7997336
Estaquia:63-Estaquia:19 -102.250000 -240.85766  36.35765887 0.2615382
Semente:63-Estaquia:19   -56.666667 -206.38005  93.04671599 0.9025823
Estaquia:39-Semente:19  -173.416667 -323.13005 -23.70328401 0.0157849
Semente:39-Semente:19   -116.416667 -266.13005  33.29671599 0.2094784
Estaquia:52-Semente:19  -149.666667 -299.38005   0.04671599 0.0501096
Semente:52-Semente:19   -152.916667 -302.63005  -3.20328401 0.0429909
Estaquia:63-Semente:19  -192.916667 -342.63005 -43.20328401 0.0058546
Semente:63-Semente:19   -147.333333 -307.38367  12.71700499 0.0861120
Semente:39-Estaquia:39    57.000000  -81.60766 195.60765887 0.8596995
Estaquia:52-Estaquia:39   23.750000 -114.85766 162.35765887 0.9989051
Semente:52-Estaquia:39    20.500000 -118.10766 159.10765887 0.9995780
Estaquia:63-Estaquia:39  -19.500000 -158.10766 119.10765887 0.9996962
Semente:63-Estaquia:39    26.083333 -123.63005 175.79671599 0.9987822
Estaquia:52-Semente:39   -33.250000 -171.85766 105.35765887 0.9912798
Semente:52-Semente:39    -36.500000 -175.10766 102.10765887 0.9850472
Estaquia:63-Semente:39   -76.500000 -215.10766  62.10765887 0.6001735
Semente:63-Semente:39    -30.916667 -180.63005 118.79671599 0.9964627
Semente:52-Estaquia:52    -3.250000 -141.85766 135.35765887 1.0000000
Estaquia:63-Estaquia:52  -43.250000 -181.85766  95.35765887 0.9622320
Semente:63-Estaquia:52     2.333333 -147.38005 152.04671599 1.0000000
Estaquia:63-Semente:52   -40.000000 -178.60766  98.60765887 0.9751094
Semente:63-Semente:52      5.583333 -144.13005 155.29671599 1.0000000
Semente:63-Estaquia:63    45.583333 -104.13005 195.29671599 0.9668045
tukey.cld29 = multcompLetters4(mod29, tukey29)
print(tukey.cld29)
$propagacao
$propagacao$Letters
 Semente Estaquia 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Semente  TRUE
Estaquia TRUE


$saturacao
 19  39  52  63 
"a" "b" "b" "b" 

$`propagacao:saturacao`
 Semente:19 Estaquia:19  Semente:39  Semente:63 Estaquia:52  Semente:52 Estaquia:39 Estaquia:63 
        "a"        "ab"        "ab"        "ab"        "ab"         "b"         "b"         "b" 

30- Zinco

#Outlier
boxplot(data2$Zinco)


#model
mod30 = aov(Zinco~propagacao*saturacao, data = data2)
hist(rstandard(mod30))

shapiro.test(rstandard(mod30))

    Shapiro-Wilk normality test

data:  rstandard(mod30)
W = 0.96448, p-value = 0.401
#Tukey
medias30=emmeans(mod30,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias30.1=emmeans(mod30,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias30)
 propagacao emmean    SE df lower.CL upper.CL
 Estaquia      126  9.26 22      107      145
 Semente       159 10.00 22      139      180

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias30.1)
 saturacao emmean   SE df lower.CL upper.CL
 19         202.7 14.1 22    173.4      232
 39         154.8 13.1 22    127.6      182
 52         116.4 13.1 22     89.2      144
 63          97.6 14.1 22     68.3      127

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod30)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1   7225    7225   5.264 0.031689 *  
saturacao             3  43443   14481  10.550 0.000168 ***
propagacao:saturacao  3   5419    1806   1.316 0.294409    
Residuals            22  30198    1373                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey30 = TukeyHSD(mod30)
print(tukey30)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Zinco ~ propagacao * saturacao, data = data2)

$propagacao
                     diff      lwr      upr     p adj
Semente-Estaquia 31.10714 2.988399 59.22589 0.0316895

$saturacao
            diff        lwr        upr     p adj
39-19  -45.04337  -98.28838   8.201647 0.1173369
52-19  -83.41837 -136.66338 -30.173353 0.0013617
63-19 -101.71429 -156.70550 -46.723071 0.0002079
52-39  -38.37500  -89.81457  13.064571 0.1934667
63-39  -56.67092 -109.91593  -3.425904 0.0342000
63-52  -18.29592  -71.54093  34.949096 0.7762481

$`propagacao:saturacao`
                              diff        lwr        upr     p adj
Semente:19-Estaquia:19    71.91667  -22.55818 166.391509 0.2298139
Estaquia:39-Estaquia:19  -31.75000 -119.21671  55.716708 0.9197732
Semente:39-Estaquia:19     7.75000  -79.71671  95.216708 0.9999865
Estaquia:52-Estaquia:19  -48.75000 -136.21671  38.716708 0.5889620
Semente:52-Estaquia:19   -52.00000 -139.46671  35.466708 0.5128666
Estaquia:63-Estaquia:19  -81.50000 -168.96671   5.966708 0.0798836
Semente:63-Estaquia:19   -56.75000 -151.22484  37.724843 0.5004196
Estaquia:39-Semente:19  -103.66667 -198.14151  -9.191824 0.0248358
Semente:39-Semente:19    -64.16667 -158.64151  30.308176 0.3530714
Estaquia:52-Semente:19  -120.66667 -215.14151 -26.191824 0.0063887
Semente:52-Semente:19   -123.91667 -218.39151 -29.441824 0.0048999
Estaquia:63-Semente:19  -153.41667 -247.89151 -58.941824 0.0004314
Semente:63-Semente:19   -128.66667 -229.66452 -27.668811 0.0065521
Semente:39-Estaquia:39    39.50000  -47.96671 126.966708 0.7954442
Estaquia:52-Estaquia:39  -17.00000 -104.46671  70.466708 0.9975704
Semente:52-Estaquia:39   -20.25000 -107.71671  67.216708 0.9929324
Estaquia:63-Estaquia:39  -49.75000 -137.21671  37.716708 0.5654057
Semente:63-Estaquia:39   -25.00000 -119.47484  69.474843 0.9846278
Estaquia:52-Semente:39   -56.50000 -143.96671  30.966708 0.4125405
Semente:52-Semente:39    -59.75000 -147.21671  27.716708 0.3463863
Estaquia:63-Semente:39   -89.25000 -176.71671  -1.783292 0.0432996
Semente:63-Semente:39    -64.50000 -158.97484  29.974843 0.3470569
Semente:52-Estaquia:52    -3.25000  -90.71671  84.216708 1.0000000
Estaquia:63-Estaquia:52  -32.75000 -120.21671  54.716708 0.9072948
Semente:63-Estaquia:52    -8.00000 -102.47484  86.474843 0.9999901
Estaquia:63-Semente:52   -29.50000 -116.96671  57.966708 0.9438312
Semente:63-Semente:52     -4.75000  -99.22484  89.724843 0.9999997
Semente:63-Estaquia:63    24.75000  -69.72484 119.224843 0.9854805
tukey.cld30 = multcompLetters4(mod30, tukey30)
print(tukey.cld30)
$propagacao
 Semente Estaquia 
     "a"      "b" 

$saturacao
  19   39   52   63 
 "a" "ab" "bc"  "c" 

$`propagacao:saturacao`
 Semente:19  Semente:39 Estaquia:19 Estaquia:39 Estaquia:52  Semente:52  Semente:63 Estaquia:63 
        "a"        "ab"       "abc"        "bc"        "bc"        "bc"        "bc"         "c" 

31- Nitrogênio

#Outlier
boxplot(data2$Nitrogênio)


#model
mod31 = aov(Nitrogênio~propagacao*saturacao, data = data2)
hist(rstandard(mod31))

shapiro.test(rstandard(mod31))

    Shapiro-Wilk normality test

data:  rstandard(mod31)
W = 0.97048, p-value = 0.5524
#Tukey
medias31=emmeans(mod31,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias31.1=emmeans(mod31,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias31)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia     25.2 1.02 22     23.1     27.3
 Semente      26.7 1.10 22     24.4     29.0

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias31.1)
 saturacao emmean   SE df lower.CL upper.CL
 19          32.5 1.55 22     29.2     35.7
 39          24.8 1.44 22     21.8     27.7
 52          24.2 1.44 22     21.3     27.2
 63          22.4 1.55 22     19.2     25.6

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod31)
                     Df Sum Sq Mean Sq F value  Pr(>F)   
propagacao            1   11.5   11.50   0.694 0.41382   
saturacao             3  380.6  126.87   7.654 0.00111 **
propagacao:saturacao  3   56.6   18.86   1.138 0.35553   
Residuals            22  364.7   16.58                   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey31 = TukeyHSD(mod31)
print(tukey31)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Nitrogênio ~ propagacao * saturacao, data = data2)

$propagacao
                     diff       lwr     upr     p adj
Semente-Estaquia 1.241071 -1.848907 4.33105 0.4138198

$saturacao
           diff        lwr       upr     p adj
39-19 -7.338648 -13.189761 -1.487535 0.0105256
52-19 -7.838648 -13.689761 -1.987535 0.0060700
63-19 -9.571429 -15.614432 -3.528425 0.0012147
52-39 -0.500000  -6.152712  5.152712 0.9946378
63-39 -2.232781  -8.083894  3.618332 0.7168939
63-52 -1.732781  -7.583894  4.118332 0.8432845

$`propagacao:saturacao`
                                 diff        lwr        upr     p adj
Semente:19-Estaquia:19   6.416667e+00  -3.965207 16.7985399 0.4659177
Estaquia:39-Estaquia:19 -4.500000e+00 -14.111747  5.1117469 0.7659539
Semente:39-Estaquia:19  -4.500000e+00 -14.111747  5.1117469 0.7659539
Estaquia:52-Estaquia:19 -5.250000e+00 -14.861747  4.3617469 0.6119411
Semente:52-Estaquia:19  -4.750000e+00 -14.361747  4.8617469 0.7168250
Estaquia:63-Estaquia:19 -6.500000e+00 -16.111747  3.1117469 0.3581243
Semente:63-Estaquia:19  -7.250000e+00 -17.631873  3.1318732 0.3211836
Estaquia:39-Semente:19  -1.091667e+01 -21.298540 -0.5347935 0.0346581
Semente:39-Semente:19   -1.091667e+01 -21.298540 -0.5347935 0.0346581
Estaquia:52-Semente:19  -1.166667e+01 -22.048540 -1.2847935 0.0204285
Semente:52-Semente:19   -1.116667e+01 -21.548540 -0.7847935 0.0291092
Estaquia:63-Semente:19  -1.291667e+01 -23.298540 -2.5347935 0.0082349
Semente:63-Semente:19   -1.366667e+01 -24.765356 -2.5679774 0.0090798
Semente:39-Estaquia:39  -3.552714e-15  -9.611747  9.6117469 1.0000000
Estaquia:52-Estaquia:39 -7.500000e-01 -10.361747  8.8617469 0.9999943
Semente:52-Estaquia:39  -2.500000e-01  -9.861747  9.3617469 1.0000000
Estaquia:63-Estaquia:39 -2.000000e+00 -11.611747  7.6117469 0.9962939
Semente:63-Estaquia:39  -2.750000e+00 -13.131873  7.6318732 0.9845407
Estaquia:52-Semente:39  -7.500000e-01 -10.361747  8.8617469 0.9999943
Semente:52-Semente:39   -2.500000e-01  -9.861747  9.3617469 1.0000000
Estaquia:63-Semente:39  -2.000000e+00 -11.611747  7.6117469 0.9962939
Semente:63-Semente:39   -2.750000e+00 -13.131873  7.6318732 0.9845407
Semente:52-Estaquia:52   5.000000e-01  -9.111747 10.1117469 0.9999997
Estaquia:63-Estaquia:52 -1.250000e+00 -10.861747  8.3617469 0.9998194
Semente:63-Estaquia:52  -2.000000e+00 -12.381873  8.3818732 0.9977014
Estaquia:63-Semente:52  -1.750000e+00 -11.361747  7.8617469 0.9983887
Semente:63-Semente:52   -2.500000e+00 -12.881873  7.8818732 0.9910817
Semente:63-Estaquia:63  -7.500000e-01 -11.131873  9.6318732 0.9999967
tukey.cld31 = multcompLetters4(mod31, tukey31)
print(tukey.cld31)
$propagacao
$propagacao$Letters
 Semente Estaquia 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Semente  TRUE
Estaquia TRUE


$saturacao
 19  39  52  63 
"a" "b" "b" "b" 

$`propagacao:saturacao`
 Semente:19 Estaquia:19 Estaquia:39  Semente:39  Semente:52 Estaquia:52 Estaquia:63  Semente:63 
        "a"        "ab"         "b"         "b"         "b"         "b"         "b"         "b" 

31.1- Aluminio

#Outlier
boxplot(data2$Al.1)


#model
mod31.1 = aov(Al.1~propagacao*saturacao, data = data2)
hist(rstandard(mod31.1))

shapiro.test(rstandard(mod31.1))

    Shapiro-Wilk normality test

data:  rstandard(mod31.1)
W = 0.96264, p-value = 0.7098
#Tukey
medias31.1=emmeans(mod31.1,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias31.1.1=emmeans(mod31.1,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias31.1)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia      278 29.3  8      210      346
 Semente       104 29.3  8       36      171

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias31.1.1)
 saturacao emmean   SE df lower.CL upper.CL
 19           134 41.5  8     38.1      229
 39           275 41.5  8    179.1      370
 52           235 41.5  8    139.7      331
 63           120 41.5  8     24.0      215

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod31.1)
                     Df Sum Sq Mean Sq F value  Pr(>F)   
propagacao            1 121841  121841  17.711 0.00296 **
saturacao             3  69398   23133   3.363 0.07559 . 
propagacao:saturacao  3  32699   10900   1.584 0.26763   
Residuals             8  55035    6879                   
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
16 observations deleted due to missingness
tukey31.1 = TukeyHSD(mod31.1)
print(tukey31.1)
  Tukey multiple comparisons of means
    95% family-wise confidence level

Fit: aov(formula = Al.1 ~ propagacao * saturacao, data = data2)

$propagacao
                      diff       lwr       upr     p adj
Semente-Estaquia -174.5287 -270.1608 -78.89674 0.0029621

$saturacao
           diff        lwr       upr     p adj
39-19  141.0175  -46.79619 328.83119 0.1534512
52-19  101.6800  -86.13369 289.49369 0.3680189
63-19  -14.0300 -201.84369 173.78369 0.9947930
52-39  -39.3375 -227.15119 148.47619 0.9052396
63-39 -155.0475 -342.86119  32.76619 0.1099538
63-52 -115.7100 -303.52369  72.10369 0.2734255

$`propagacao:saturacao`
                            diff        lwr       upr     p adj
Semente:19-Estaquia:19  -255.580 -583.78854  72.62854 0.1529104
Estaquia:39-Estaquia:19   34.975 -293.23354 363.18354 0.9997653
Semente:39-Estaquia:19    -8.520 -336.72854 319.68854 1.0000000
Estaquia:52-Estaquia:19  104.695 -223.51354 432.90354 0.8901983
Semente:52-Estaquia:19  -156.915 -485.12354 171.29354 0.5881948
Estaquia:63-Estaquia:19  -73.105 -401.31354 255.10354 0.9799365
Semente:63-Estaquia:19  -210.535 -538.74354 117.67354 0.2979961
Estaquia:39-Semente:19   290.555  -37.65354 618.76354 0.0892512
Semente:39-Semente:19    247.060  -81.14854 575.26854 0.1740608
Estaquia:52-Semente:19   360.275   32.06646 688.48354 0.0307899
Semente:52-Semente:19     98.665 -229.54354 426.87354 0.9144844
Estaquia:63-Semente:19   182.475 -145.73354 510.68354 0.4351998
Semente:63-Semente:19     45.045 -283.16354 373.25354 0.9988113
Semente:39-Estaquia:39   -43.495 -371.70354 284.71354 0.9990462
Estaquia:52-Estaquia:39   69.720 -258.48854 397.92854 0.9844386
Semente:52-Estaquia:39  -191.890 -520.09854 136.31854 0.3850384
Estaquia:63-Estaquia:39 -108.080 -436.28854 220.12854 0.8751409
Semente:63-Estaquia:39  -245.510 -573.71854  82.69854 0.1781909
Estaquia:52-Semente:39   113.215 -214.99354 441.42354 0.8504769
Semente:52-Semente:39   -148.395 -476.60354 179.81354 0.6423506
Estaquia:63-Semente:39   -64.585 -392.79354 263.62354 0.9897973
Semente:63-Semente:39   -202.015 -530.22354 126.19354 0.3356936
Semente:52-Estaquia:52  -261.610 -589.81854  66.59854 0.1394368
Estaquia:63-Estaquia:52 -177.800 -506.00854 150.40854 0.4615304
Semente:63-Estaquia:52  -315.230 -643.43854  12.97854 0.0610025
Estaquia:63-Semente:52    83.810 -244.39854 412.01854 0.9597289
Semente:63-Semente:52    -53.620 -381.82854 274.58854 0.9965384
Semente:63-Estaquia:63  -137.430 -465.63854 190.77854 0.7117419
tukey.cld31.1 = multcompLetters4(mod31.1, tukey31.1)
print(tukey.cld31.1)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
$saturacao$Letters
 39  52  19  63 
"a" "a" "a" "a" 

$saturacao$LetterMatrix
      a
39 TRUE
52 TRUE
19 TRUE
63 TRUE


$`propagacao:saturacao`
Estaquia:52 Estaquia:39 Estaquia:19  Semente:39 Estaquia:63  Semente:52  Semente:63  Semente:19 
        "a"        "ab"        "ab"        "ab"        "ab"        "ab"        "ab"         "b" 

32- Nutrient accumulation

DATA

library(tidyr)

Attaching package: ‘tidyr’

The following objects are masked from ‘package:Matrix’:

    expand, pack, unpack
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},
  }
data2$ac.N=data2$MF.accumulation*data2$Nitrogênio/1000
data2$ac.P=data2$MF.accumulation*data2$Fósforo/1000
data2$ac.K=data2$MF.accumulation*data2$Potássio/1000
data2$ac.Ca=data2$MF.accumulation*data2$Cálcio/1000
data2$ac.Mg=data2$MF.accumulation*data2$Magnésio/1000
data2$ac.S=data2$MF.accumulation*data2$Enxofre/1000
data2$ac.B=data2$MF.accumulation*data2$Boro/1000
data2$ac.Cu=data2$MF.accumulation*data2$Cobre/1000
data2$ac.Fe=data2$MF.accumulation*data2$Ferro/1000
data2$ac.Mn=data2$MF.accumulation*data2$Manganês/1000
data2$ac.Zn=data2$MF.accumulation*data2$Zinco/1000
data2$ac.Al=data2$MF.accumulation*data2$Al.1/1000

ac.Macro=gather(data2[,-c(5:56)],variables,value,
                   ac.N,ac.P,ac.K,ac.Ca,ac.Mg,ac.S)
View(ac.Macro)
ac.Micro=gather(data2[,-c(5:56)],variables,value,
                   ac.B,ac.Cu,ac.Fe,ac.Mn,ac.Zn)
View(ac.Micro)

MACRO - Anova

#MACRO
mod32.1 = aov(ac.N~propagacao*saturacao, data = data2)
summary(mod32.1)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 1.8594  1.8594  16.012 0.000601 ***
saturacao             3 0.2346  0.0782   0.673 0.577503    
propagacao:saturacao  3 0.2143  0.0714   0.615 0.612537    
Residuals            22 2.5547  0.1161                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
medias32.1=emmeans(mod32.1,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias32.2=emmeans(mod32.1,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias32.1)
 propagacao emmean     SE df lower.CL upper.CL
 Estaquia     2.29 0.0852 22     2.11     2.47
 Semente      1.78 0.0920 22     1.59     1.97

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias32.2)
 saturacao emmean   SE df lower.CL upper.CL
 19          2.02 0.13 22     1.75     2.29
 39          2.08 0.12 22     1.83     2.33
 52          2.14 0.12 22     1.89     2.38
 63          1.90 0.13 22     1.63     2.17

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
mod33.1 = aov(ac.P~propagacao*saturacao, data = data2)
summary(mod33.1)
                     Df  Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 0.06755 0.06755  41.517 1.75e-06 ***
saturacao             3 0.01456 0.00485   2.983   0.0533 .  
propagacao:saturacao  3 0.00943 0.00314   1.933   0.1538    
Residuals            22 0.03580 0.00163                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
medias33.1=emmeans(mod33.1,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias33.2=emmeans(mod33.1,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias33.1)
 propagacao emmean     SE df lower.CL upper.CL
 Estaquia    0.327 0.0101 22    0.306    0.348
 Semente     0.230 0.0109 22    0.207    0.252

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias33.2)
 saturacao emmean     SE df lower.CL upper.CL
 19         0.240 0.0154 22    0.208    0.272
 39         0.301 0.0143 22    0.271    0.331
 52         0.290 0.0143 22    0.260    0.319
 63         0.282 0.0154 22    0.250    0.314

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
mod34.1 = aov(ac.K~propagacao*saturacao, data = data2)
summary(mod34.1)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 1.9596  1.9596  19.407 0.000224 ***
saturacao             3 0.6184  0.2061   2.042 0.137375    
propagacao:saturacao  3 0.1233  0.0411   0.407 0.749403    
Residuals            22 2.2214  0.1010                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
medias34.1=emmeans(mod34.1,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias34.2=emmeans(mod34.1,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias34.1)
 propagacao emmean     SE df lower.CL upper.CL
 Estaquia     1.55 0.0794 22    1.390     1.72
 Semente      1.02 0.0858 22    0.839     1.19

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias34.2)
 saturacao emmean    SE df lower.CL upper.CL
 19          1.09 0.121 22    0.843     1.35
 39          1.47 0.112 22    1.237     1.70
 52          1.38 0.112 22    1.146     1.61
 63          1.20 0.121 22    0.948     1.45

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
mod35.1 = aov(ac.Ca~propagacao*saturacao, data = data2)
summary(mod35.1)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 0.7943  0.7943  25.086 5.16e-05 ***
saturacao             3 2.7992  0.9331  29.470 6.88e-08 ***
propagacao:saturacao  3 0.0132  0.0044   0.139    0.936    
Residuals            22 0.6966  0.0317                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
medias35.1=emmeans(mod35.1,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias35.2=emmeans(mod35.1,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias35.1)
 propagacao emmean     SE df lower.CL upper.CL
 Estaquia    1.204 0.0445 22     1.11    1.296
 Semente     0.869 0.0480 22     0.77    0.969

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias35.2)
 saturacao emmean     SE df lower.CL upper.CL
 19         0.541 0.0680 22    0.400    0.682
 39         1.008 0.0629 22    0.877    1.138
 52         1.213 0.0629 22    1.082    1.343
 63         1.385 0.0680 22    1.244    1.526

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
tukey35.1 = TukeyHSD(mod35.1)
tukey.cld35.1 = multcompLetters4(mod35.1, tukey35.1)
print(tukey.cld35.1)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
  63   52   39   19 
 "a" "ab"  "b"  "c" 

$`propagacao:saturacao`
Estaquia:63 Estaquia:52  Semente:63 Estaquia:39  Semente:52  Semente:39 Estaquia:19  Semente:19 
        "a"        "ab"       "abc"       "abc"       "bcd"       "cde"        "de"         "e" 
mod36.1 = aov(ac.Mg~propagacao*saturacao, data = data2)
summary(mod36.1)
                     Df  Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 0.04373 0.04373  15.385 0.000729 ***
saturacao             3 0.15225 0.05075  17.854 4.22e-06 ***
propagacao:saturacao  3 0.01689 0.00563   1.981 0.146307    
Residuals            22 0.06253 0.00284                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
medias36.1=emmeans(mod36.1,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias36.2=emmeans(mod36.1,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias36.1)
 propagacao emmean     SE df lower.CL upper.CL
 Estaquia    0.329 0.0133 22    0.301    0.356
 Semente     0.251 0.0144 22    0.221    0.280

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias36.2)
 saturacao emmean     SE df lower.CL upper.CL
 19         0.167 0.0204 22    0.125    0.209
 39         0.296 0.0188 22    0.257    0.335
 52         0.329 0.0188 22    0.290    0.368
 63         0.366 0.0204 22    0.324    0.409

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
tukey36.1 = TukeyHSD(mod36.1)
tukey.cld36.1 = multcompLetters4(mod36.1, tukey36.1)
print(tukey.cld36.1)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
 63  52  39  19 
"a" "a" "a" "b" 

$`propagacao:saturacao`
Estaquia:63 Estaquia:39  Semente:63 Estaquia:52  Semente:52  Semente:39 Estaquia:19  Semente:19 
        "a"         "a"         "a"         "a"        "ab"        "bc"        "bc"         "c" 
mod37.1 = aov(ac.S~propagacao*saturacao, data = data2)
summary(mod37.1)
                     Df   Sum Sq  Mean Sq F value   Pr(>F)    
propagacao            1 0.008405 0.008405  32.746 9.35e-06 ***
saturacao             3 0.002148 0.000716   2.790   0.0645 .  
propagacao:saturacao  3 0.000346 0.000115   0.449   0.7207    
Residuals            22 0.005647 0.000257                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
medias37.1=emmeans(mod37.1,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias37.2=emmeans(mod37.1,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias37.1)
 propagacao emmean      SE df lower.CL upper.CL
 Estaquia   0.1135 0.00401 22   0.1052   0.1218
 Semente    0.0788 0.00433 22   0.0698   0.0877

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias37.2)
 saturacao emmean      SE df lower.CL upper.CL
 19        0.0818 0.00612 22   0.0691   0.0945
 39        0.1057 0.00566 22   0.0939   0.1174
 52        0.0990 0.00566 22   0.0872   0.1107
 63        0.0981 0.00612 22   0.0854   0.1108

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 

MICRO - Anova

print(tukey.cld43.1)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
$saturacao$Letters
 39  52  63  19 
"a" "a" "a" "a" 

$saturacao$LetterMatrix
      a
39 TRUE
52 TRUE
63 TRUE
19 TRUE


$`propagacao:saturacao`
Estaquia:52 Estaquia:39 Estaquia:19  Semente:39 Estaquia:63  Semente:52  Semente:63  Semente:19 
        "a"        "ab"       "abc"       "abc"       "abc"       "abc"        "bc"         "c" 

PLOTS

33- V%, m% and pH

library(ggplot2)
p1=ggplot(data2, aes(x=as.numeric(saturacao)))+
  geom_line(aes(y=V.,color="V (%)"), stat="summary",fun="mean", size=1, linetype = 1)+
  geom_line(aes(y=m.,color="m (%)"), stat="summary",fun="mean", size=1, linetype = 7)+
  geom_line(aes(y=pH*8,color="pH"), stat="summary",fun="mean", size=1, linetype = 1)+
  geom_line(aes(y=Al*8,color="Al+3"), stat="summary",fun="mean", size=1, linetype = 1)
Warning: Using `size` aesthetic for lines was deprecated in ggplot2 3.4.0.
Please use `linewidth` instead.
p1 

p1=p1+scale_x_discrete(name ="Base saturation levels (%)",limits=c("19", "39", "52","63"))+
  scale_y_continuous(breaks = seq(0, 70, 5), name= "V (%); m (%)", sec.axis = sec_axis(~./8, name="pH; Al+3 (mmolc dm3)",    breaks = seq(0, 9, 0.5)))+
  scale_colour_manual(" ", values=c("gold4", "firebrick3","steelblue","blue4"))+
  coord_cartesian(ylim = c(0,70))
p1

p1=p1+theme(legend.key=element_blank(),legend.title=element_blank(),legend.box="h", axis.line = element_line(colour = "black", size = 1, linetype = "solid"),panel.background = element_rect(fill = "transparent"),legend.background = element_rect(fill = "transparent", size=0.5, linetype="solid",colour ="black"), legend.position = c(0.1, 0.80))
Warning: A numeric `legend.position` argument in `theme()` was deprecated in ggplot2 3.5.0.
Please use the `legend.position.inside` argument of `theme()` instead.
p1
library(cowplot)
save_plot("V.pdf",p1, ncol = 1, nrow = 1) 

35- Branches evolution

cut1=biomass[-c(33:96),]

cut2=biomass[-c(1:32,65:96),]
cut3=biomass[-c(1:64,69,71,72),]

mod35.1 = aov(Perfilhos^0.8~propagacao*saturacao, data = cut1)
hist(rstandard(mod35.1))

shapiro.test(rstandard(mod35.1))

    Shapiro-Wilk normality test

data:  rstandard(mod35.1)
W = 0.94252, p-value = 0.08827
summary(mod35.1)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 119.90  119.90 126.039 7.05e-12 ***
saturacao             1   1.52    1.52   1.593    0.217    
propagacao:saturacao  1   0.97    0.97   1.024    0.320    
Residuals            28  26.64    0.95                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mod35.2 = aov(Perfilhos~propagacao*saturacao, data = cut2)
hist(rstandard(mod35.2))

shapiro.test(rstandard(mod35.2))

    Shapiro-Wilk normality test

data:  rstandard(mod35.2)
W = 0.98437, p-value = 0.9118
summary(mod35.2)
                     Df Sum Sq Mean Sq F value  Pr(>F)    
propagacao            1  586.5   586.5  66.462 7.1e-09 ***
saturacao             1    4.7     4.7   0.529  0.4729    
propagacao:saturacao  1   47.9    47.9   5.429  0.0272 *  
Residuals            28  247.1     8.8                    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
mod35.3 = aov(Perfilhos~propagacao*saturacao, data = cut3)
hist(rstandard(mod35.3))

shapiro.test(rstandard(mod35.3))

    Shapiro-Wilk normality test

data:  rstandard(mod35.3)
W = 0.95042, p-value = 0.1877
summary(mod35.3)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 1100.9  1100.9  21.767 8.87e-05 ***
saturacao             1    0.6     0.6   0.012    0.915    
propagacao:saturacao  1    3.3     3.3   0.065    0.801    
Residuals            25 1264.5    50.6                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
library(dplyr)
data_summary = group_by(biomass[-c(69,71,72),], propagacao, Cycle) %>%
  summarise(mean=mean(Perfilhos), 
            sd=sd(Perfilhos))
`summarise()` has grouped output by 'propagacao'. You can override using the `.groups` argument.
print(data_summary)



#Plot
library(ggplot2)

p3=ggplot(data_summary, aes(x=as.numeric(Cycle),y=mean, group=propagacao))+ 
  geom_line(aes(linetype=propagacao))+
  geom_point(aes(shape=propagacao), size= 3)+
  geom_errorbar(aes(ymin=mean-sd, ymax=mean+sd), position = position_dodge(0.15), width = 0.2)
p3

p3.1=p3+scale_shape_manual(values = c(1, 15), name= "Propagation",
                           labels = c("Stem cutting", "Seeds"))+
  scale_linetype_manual(values = c("dashed","solid"), name= "Propagation",
                           labels = c("Stem cutting", "Seeds"))+
  scale_x_discrete(name="", limits=c("Cut 1", "Cut 2", "Cut 3"))+
  scale_y_continuous(name="Number of branches (n)",breaks=seq(0,46,3))+
  coord_cartesian(ylim = c(0,46))
p3.1

p3.2=p3.1+theme(axis.line = element_line(colour = "black", size = 0.7, linetype = "solid"),
  panel.background = element_rect(fill = "white", colour = "black"),
  legend.background = element_rect(fill = "transparent",
  size=0.5, linetype="solid",colour ="black"),axis.title.x=element_blank(),
  legend.position = c(0.2, 0.8),
            axis.title.y = element_text(size = 14),
            axis.text.x = element_text(size = 12),
            axis.text.y = element_text(size = 12))+
  annotate("text",size=5,color="black", x=1, y=15, label="***")+
  annotate("text",size=5,color="black", x=2, y=22.5,label="***")+
  annotate("text",size=5,color="black", x=3, y=42.5, label= "***")
p3.2 
library(cowplot)
save_plot("Branches.pdf",p3.2, ncol = 1, nrow = 1)

36- SPAD

#model
mod26 = lm(SPAD~poly(saturacao,degree = 1), data = data2[-10,])
hist(rstandard(mod26))

shapiro.test(resid(mod26))

    Shapiro-Wilk normality test

data:  resid(mod26)
W = 0.97029, p-value = 0.5677
summary(mod26)

Call:
lm(formula = SPAD ~ poly(saturacao, degree = 1), data = data2[-10, 
    ])

Residuals:
    Min      1Q  Median      3Q     Max 
-5.0216 -1.3264 -0.1161  0.5884  5.0539 

Coefficients:
                            Estimate Std. Error t value Pr(>|t|)    
(Intercept)                  29.5872     0.4524  65.398   <2e-16 ***
poly(saturacao, degree = 1)  -4.5696     2.5908  -1.764   0.0891 .  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 2.425 on 27 degrees of freedom
  (2 observations deleted due to missingness)
Multiple R-squared:  0.1033,    Adjusted R-squared:  0.0701 
F-statistic: 3.111 on 1 and 27 DF,  p-value: 0.08909
#Tukey

library(ggplot2)
p1=ggplot(data2[-10,], aes(x=as.numeric(saturacao), y=SPAD))+
  geom_point(shape=19, color='black',stat="summary",fun="mean")+ 
  geom_smooth(color='black', method = "gam", formula = y ~ poly(x, 1), se=F)
p1 

p1=p1+scale_x_discrete(name ="Base saturation levels (%)",limits=c("19", "39", "52","63"))+
  scale_y_continuous(breaks = seq(27, 33, 1), name= "SPAD index")+
  coord_cartesian(ylim = c(27,33))
p1

p1=p1+theme(legend.key=element_blank(),
            legend.title=element_blank(),
            axis.line = element_line(colour = "black",size = 0.5, linetype = "solid"),
            panel.background = element_rect(fill = "white", colour = "black"),
            axis.title.x = element_text(size = 14),
            axis.title.y = element_text(size = 14),
            axis.text.x = element_text(size = 12),
            axis.text.y = element_text(size = 12))+
  annotate(geom="text", x=2.5, y=32,label=expression(paste("P-value = 0.089;   y = - 4.7115x + 29.6062  ", R^2, "= 0.1139")), size=5, color="black")
p1
library(cowplot)
save_plot("SPAD.pdf",p1, ncol = 1, nrow = 1) 

37- Macro e micro accumulation

#MACRO
View(data2)
mod32.1 = aov(ac.N~propagacao*saturacao, data = data2)
summary(mod32.1)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 1.8594  1.8594  16.012 0.000601 ***
saturacao             3 0.2346  0.0782   0.673 0.577503    
propagacao:saturacao  3 0.2143  0.0714   0.615 0.612537    
Residuals            22 2.5547  0.1161                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
medias28=emmeans(mod28,~ propagacao)
NOTE: Results may be misleading due to involvement in interactions
medias28.1=emmeans(mod28,~ saturacao)
NOTE: Results may be misleading due to involvement in interactions
summary(medias28)
 propagacao emmean   SE df lower.CL upper.CL
 Estaquia      281 11.7 22      257      306
 Semente       265 12.6 22      238      291

Results are averaged over the levels of: saturacao 
Confidence level used: 0.95 
summary(medias28.1)
 saturacao emmean   SE df lower.CL upper.CL
 19           293 17.8 22      256      330
 39           287 16.5 22      253      321
 52           262 16.5 22      228      296
 63           250 17.8 22      213      287

Results are averaged over the levels of: propagacao 
Confidence level used: 0.95 
summary(mod28)
                     Df Sum Sq Mean Sq F value Pr(>F)
propagacao            1   2501    2501   1.148  0.296
saturacao             3   9698    3233   1.484  0.246
propagacao:saturacao  3   9478    3159   1.450  0.255
Residuals            22  47933    2179               
2 observations deleted due to missingness
mod32.2 = aov(ac.P~propagacao*saturacao, data = data2)
summary(mod32.2)
                     Df  Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 0.06755 0.06755  41.517 1.75e-06 ***
saturacao             3 0.01456 0.00485   2.983   0.0533 .  
propagacao:saturacao  3 0.00943 0.00314   1.933   0.1538    
Residuals            22 0.03580 0.00163                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
mod32.3 = aov(ac.K~propagacao*saturacao, data = data2)
summary(mod32.3)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 1.9596  1.9596  19.407 0.000224 ***
saturacao             3 0.6184  0.2061   2.042 0.137375    
propagacao:saturacao  3 0.1233  0.0411   0.407 0.749403    
Residuals            22 2.2214  0.1010                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
mod32.4 = aov(ac.Ca~propagacao*saturacao, data = data2)
summary(mod32.4)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 0.7943  0.7943  25.086 5.16e-05 ***
saturacao             3 2.7992  0.9331  29.470 6.88e-08 ***
propagacao:saturacao  3 0.0132  0.0044   0.139    0.936    
Residuals            22 0.6966  0.0317                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey32.4 = TukeyHSD(mod32.4)
tukey.cld32.4 = multcompLetters4(mod32.4, tukey32.4)
print(tukey.cld32.4)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
  63   52   39   19 
 "a" "ab"  "b"  "c" 

$`propagacao:saturacao`
Estaquia:63 Estaquia:52  Semente:63 Estaquia:39  Semente:52  Semente:39 Estaquia:19  Semente:19 
        "a"        "ab"       "abc"       "abc"       "bcd"       "cde"        "de"         "e" 
mod32.5 = aov(ac.Mg~propagacao*saturacao, data = data2)
summary(mod32.5)
                     Df  Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 0.04373 0.04373  15.385 0.000729 ***
saturacao             3 0.15225 0.05075  17.854 4.22e-06 ***
propagacao:saturacao  3 0.01689 0.00563   1.981 0.146307    
Residuals            22 0.06253 0.00284                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey32.5 = TukeyHSD(mod32.5)
tukey.cld32.5 = multcompLetters4(mod32.5, tukey32.5)
print(tukey.cld32.5)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
 63  52  39  19 
"a" "a" "a" "b" 

$`propagacao:saturacao`
Estaquia:63 Estaquia:39  Semente:63 Estaquia:52  Semente:52  Semente:39 Estaquia:19  Semente:19 
        "a"         "a"         "a"         "a"        "ab"        "bc"        "bc"         "c" 
mod32.6 = aov(ac.S~propagacao*saturacao, data = data2)
summary(mod32.6)
                     Df   Sum Sq  Mean Sq F value   Pr(>F)    
propagacao            1 0.008405 0.008405  32.746 9.35e-06 ***
saturacao             3 0.002148 0.000716   2.790   0.0645 .  
propagacao:saturacao  3 0.000346 0.000115   0.449   0.7207    
Residuals            22 0.005647 0.000257                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
library(ggplot2)

p37=ggplot(ac.Macro, aes(x=as.numeric(saturacao),y=value, color=variables))+ 
  geom_line(stat="summary",fun="mean")+
  geom_point(stat="summary",fun="mean")
p37

p37.1=p37+scale_colour_manual("Composition:",values=c("ac.N" ="green4","ac.P"="gray40","ac.K"="red4",
  "ac.Ca"="darkblue","ac.Mg"="cyan2","ac.S"="gold"), 
  labels = c("ac.N" ="N -  P value = 0.578","ac.P" ="P -  P value = 0.053","ac.K" ="K -   P value = 0.137","ac.Ca" ="Ca - P value = <0.001","ac.Mg" ="Mg - P value = <0.001","ac.S" ="S -  P value = 0.065"))+scale_x_discrete(name="Base saturation levels (%)",limits=c("19", "39", "52","63"))+
  scale_y_continuous(name="Macronutrients accumulation (g/plant)",breaks=seq(0,2.25,0.25))+
  coord_cartesian(ylim = c(0,2.25))
p37.1

p37.2=p37.1+theme(axis.line = element_line(colour = "black", size = 0.7, linetype = "solid"),
                  panel.background = element_rect(fill = "white", colour = "black"),
                  legend.background = element_rect(fill = "transparent",size=0.5,linetype="solid",colour ="black"),
                  legend.key = element_rect(fill = "white", colour = "black"),
                  legend.justification = "top",
                  axis.title.x = element_text(size = 11),
                  axis.title.y = element_text(size = 11),
                  axis.text.x = element_text(size = 12),
                  axis.text.y = element_text(size = 12))+
   annotate("text", size=3, x=1, y=0.65,label="c")+
   annotate("text",size=3, x=2, y=1.1,label= "b")+
   annotate("text",size=3, x=3, y=1.3,label= "ab")+
   annotate("text",size=3, x=4, y=1.5,label= "a")+
   annotate("text", size=3, x=1, y=0.30,label="b")+
   annotate("text",size=3, x=2, y=0.37,label= "a")+
   annotate("text",size=3, x=3, y=0.41, label= "a")+
   annotate("text",size=3, x=4, y=0.44,label= "a")
p37.2

#MICRO
mod32.7 = aov(ac.B~propagacao*saturacao, data = data2)
summary(mod32.7)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1  73.27   73.27  23.870 6.95e-05 ***
saturacao             3  26.69    8.90   2.898   0.0579 .  
propagacao:saturacao  3  10.18    3.39   1.106   0.3679    
Residuals            22  67.53    3.07                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
mod32.8 = aov(ac.Cu~propagacao*saturacao, data = data2)
summary(mod32.8)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1 0.3036 0.30361  24.447 6.03e-05 ***
saturacao             3 0.1613 0.05377   4.330   0.0153 *  
propagacao:saturacao  3 0.0895 0.02983   2.402   0.0949 .  
Residuals            22 0.2732 0.01242                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey32.8 = TukeyHSD(mod32.8)
tukey.cld32.8 = multcompLetters4(mod32.8, tukey32.8)
print(tukey.cld32.8)
$propagacao
Estaquia  Semente 
     "a"      "b" 

$saturacao
  39   52   19   63 
 "a" "ab"  "b"  "b" 

$`propagacao:saturacao`
Estaquia:39 Estaquia:52 Estaquia:19 Estaquia:63  Semente:52  Semente:39  Semente:63  Semente:19 
        "a"        "ab"       "abc"        "bc"        "bc"        "bc"        "bc"         "c" 
mod32.9 = aov(ac.Fe~propagacao*saturacao, data = data2)
summary(mod32.9)
                     Df Sum Sq Mean Sq F value   Pr(>F)    
propagacao            1  450.0   450.0  19.047 0.000248 ***
saturacao             3  124.5    41.5   1.757 0.184818    
propagacao:saturacao  3   56.0    18.7   0.791 0.512123    
Residuals            22  519.8    23.6                     
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
mod32.10 = aov(ac.Mn~propagacao*saturacao, data = data2)
summary(mod32.10)
                     Df Sum Sq Mean Sq F value Pr(>F)
propagacao            1   46.1   46.08   1.546  0.227
saturacao             3   51.9   17.28   0.580  0.634
propagacao:saturacao  3   29.9    9.98   0.335  0.800
Residuals            22  655.5   29.80               
2 observations deleted due to missingness
mod32.11 = aov(ac.Zn~propagacao*saturacao, data = data2)
summary(mod32.11)
                     Df Sum Sq Mean Sq F value Pr(>F)  
propagacao            1   8.12    8.12   0.968 0.3358  
saturacao             3 100.52   33.51   3.998 0.0205 *
propagacao:saturacao  3   6.30    2.10   0.250 0.8602  
Residuals            22 184.38    8.38                 
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
2 observations deleted due to missingness
tukey32.11 = TukeyHSD(mod32.11)
tukey.cld32.11 = multcompLetters4(mod32.11, tukey32.11)
print(tukey.cld32.11)
$propagacao
$propagacao$Letters
Estaquia  Semente 
     "a"      "a" 

$propagacao$LetterMatrix
            a
Estaquia TRUE
Semente  TRUE


$saturacao
  39   19   52   63 
 "a"  "a" "ab"  "b" 

$`propagacao:saturacao`
$`propagacao:saturacao`$Letters
Estaquia:19 Estaquia:39  Semente:39  Semente:19 Estaquia:52  Semente:52  Semente:63 Estaquia:63 
        "a"         "a"         "a"         "a"         "a"         "a"         "a"         "a" 

$`propagacao:saturacao`$LetterMatrix
               a
Estaquia:19 TRUE
Estaquia:39 TRUE
Semente:39  TRUE
Semente:19  TRUE
Estaquia:52 TRUE
Semente:52  TRUE
Semente:63  TRUE
Estaquia:63 TRUE
p38=ggplot(ac.Micro, aes(x=as.numeric(saturacao),y=value, color=variables))+ 
  geom_line(stat="summary",fun="mean")+
  geom_point(stat="summary",fun="mean")
p38

p38.1=p38+scale_colour_manual("Composition:",values=c("ac.B" ="darkblue","ac.Cu"="tan4","ac.Fe"="grey0",  "ac.Mn"="maroon4","ac.Zn"="cyan4"),labels = c("ac.B"="B - P value = 0.058","ac.Cu"="Cu - P value = 0.015","ac.Fe" ="Fe - P value = 0.185","ac.Mn"="Mn - P value = 0.634","ac.Zn" ="Zn - P value = 0.021"))+
  scale_x_discrete(name="Base saturation levels (%)",limits=c("19", "39", "52","63"))+
  scale_y_continuous(name="Micronutrients accumulation (mg/plant)",breaks=seq(0,25,5))+
  coord_cartesian(ylim = c(0,25))
p38.1

p38.2=p38.1+theme(axis.line = element_line(colour = "black", size = 0.7, linetype = "solid"),
                  panel.background = element_rect(fill = "white", colour = "black"),
                  legend.background = element_rect(fill = "transparent",size=0.5,linetype="solid",colour ="black"),
                  legend.key = element_rect(fill = "white", colour = "black"),
                  legend.justification = "top",
                  axis.title.x = element_text(size = 11),
                  axis.title.y = element_text(size = 11),
                  axis.text.x = element_text(size = 12),
                  axis.text.y = element_text(size = 12))+
  annotate("text", size=3, x=1, y=13.5,label="a")+
  annotate("text",size=3, x=2, y=13.5,label= "a")+
  annotate("text",size=3, x=3, y=11,  label= "ab")+
  annotate("text",size=3, x=4, y=9,label= "b")+
  annotate("text", size=3, x=1, y=1.3,label="b")+
  annotate("text",size=3, x=2, y=1.35,label= "a")+
  annotate("text",size=3, x=3, y=1.4,  label= "ab")+
  annotate("text",size=3, x=4, y=1.3,label= "b")
p38.2


#Save plots
library(cowplot)
side.by.side <- plot_grid(p37.2,p38.2, 
                          labels = c("A", "B"),
                          ncol = 1, nrow =2, align = "V")
Warning: Removed 12 rows containing non-finite outside the scale range (`stat_summary()`).Warning: Removed 12 rows containing non-finite outside the scale range (`stat_summary()`).Warning: Removed 10 rows containing non-finite outside the scale range (`stat_summary()`).Warning: Removed 10 rows containing non-finite outside the scale range (`stat_summary()`).
side.by.side
save_plot("acumulativo.pdf", side.by.side, ncol = 1, nrow = 2)

https://stackoverflow.com/questions/63301270/how-to-draw-both-positive-mirror-bar-graph-in-r

LS0tDQp0aXRsZTogIlVudmVpbGluZyB0aGUgYWx1bWludW0gdG9sZXJhbmNlIGJ5IFRpdGhvbmlhIGRpdmVyc2lmb2xpYSBncm93biBpbiBhY2lkIHNvaWw6IGluc2lnaHRzIGZyb20gbW9ycGhvbG9naWNhbCwgYW5hdG9taWNhbCwgYW5kIG51dHJpdGlvbmFsIGFuYWx5c2lzIg0KYXV0aG9yOiAiVmFnbmVyIFMuIE92YW5pIg0KZGF0ZTogIjA1LzA0LzIwMjIiDQpvdXRwdXQ6DQogIGh0bWxfbm90ZWJvb2s6DQogICAgdG9jOiBUUlVFDQogICAgdG9jX2RlcHRoOiAyDQogICAgdGhlbWU6IHVuaXRlZA0KLS0tDQoNCioqKg0KDQoNCg0KIyAqKkRBVEEqKg0KDQpgYGB7cn0NCmRhdGEyPXJlYWQuY3N2KCJEOlxcQXJtYXplbmFtZW50b1xcREFUQSBSXFxFbnNhaW8gMlxcZGF0YTIuY3N2IikNCmRhdGEyJHByb3BhZ2FjYW89YXMuZmFjdG9yKGRhdGEyJHByb3BhZ2FjYW8pDQpkYXRhMiRzYXR1cmFjYW89YXMuZmFjdG9yKGRhdGEyJHNhdHVyYWNhbykNCnN0cihkYXRhMikNCmRhdGEyDQpiaW9tYXNzPXJlYWQuY3N2KCJEOlxcQXJtYXplbmFtZW50b1xcREFUQSBSXFxFbnNhaW8gMlxcQXNzYXkyX2Jpb21hc3MuY3N2IikNCmJpb21hc3MkcHJvcGFnYWNhbz1hcy5mYWN0b3IoYmlvbWFzcyRwcm9wYWdhY2FvKQ0KYmlvbWFzcyRDeWNsZT1hcy5mYWN0b3IoYmlvbWFzcyRDeWNsZSkNCmJpb21hc3MkUGVyZmlsaG9zPWFzLm51bWVyaWMoYmlvbWFzcyRQZXJmaWxob3MpDQpzdHIoYmlvbWFzcykNCmJpb21hc3MNCmBgYA0KDQojICoqU09JTCBQUk9QRVJUSUVTKioNCg0KIyMjIF8qKjEgLSBWLmZpbmFsKipfDQoNCmBgYHtyfQ0KI21vZGVsDQptb2QxID0gYW92KFYuZmluYWx+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDEpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDEpKQ0KDQojVHVrZXkNCmxpYnJhcnkoZW1tZWFucykNCm1lZGlhczE9ZW1tZWFucyhtb2QxLH4gcHJvcGFnYWNhbykNCm1lZGlhczEuMT1lbW1lYW5zKG1vZDEsfiBzYXR1cmFjYW8pDQpzdW1tYXJ5KG1lZGlhczEpDQpzdW1tYXJ5KG1lZGlhczEuMSkNCnN1bW1hcnkobW9kMSkNCg0KbGlicmFyeShtdWx0Y29tcFZpZXcpDQpjaXRhdGlvbigibXVsdGNvbXBWaWV3IikNCg0KdHVrZXkxID0gVHVrZXlIU0QobW9kMSkNCnByaW50KHR1a2V5MSkNCnR1a2V5LmNsZDEgPSBtdWx0Y29tcExldHRlcnM0KG1vZDEsIHR1a2V5MSkNCnByaW50KHR1a2V5LmNsZDEpDQpgYGANCg0KIyMjIF8qKjIgLSBtLmZpbmFsKipfDQoNCmBgYHtyfQ0KI21vZGVsDQptb2QyID0gYW92KG0uZmluYWx+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDIpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDIpKQ0KDQojVHVrZXkNCm1lZGlhczI9ZW1tZWFucyhtb2QyLH4gcHJvcGFnYWNhbykNCm1lZGlhczIuMT1lbW1lYW5zKG1vZDIsfiBzYXR1cmFjYW8pDQpzdW1tYXJ5KG1lZGlhczIpDQpzdW1tYXJ5KG1lZGlhczIuMSkNCnN1bW1hcnkobW9kMikNCg0KdHVrZXkyID0gVHVrZXlIU0QobW9kMikNCnByaW50KHR1a2V5MikNCnR1a2V5LmNsZDIgPSBtdWx0Y29tcExldHRlcnM0KG1vZDIsIHR1a2V5MikNCnByaW50KHR1a2V5LmNsZDIpDQpgYGANCg0KIyMjIF8qKjMgLSBwSC5maW5hbCoqXw0KDQpgYGB7cn0NCiNtb2RlbA0KbW9kMyA9IGFvdihwSC5maW5hbH5wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KaGlzdChyc3RhbmRhcmQobW9kMykpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kMykpDQoNCiNUdWtleQ0KbWVkaWFzMz1lbW1lYW5zKG1vZDMsfiBwcm9wYWdhY2FvKQ0KbWVkaWFzMy4xPWVtbWVhbnMobW9kMyx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMykNCnN1bW1hcnkobWVkaWFzMy4xKQ0Kc3VtbWFyeShtb2QzKQ0KDQp0dWtleTMgPSBUdWtleUhTRChtb2QzKQ0KcHJpbnQodHVrZXkzKQ0KdHVrZXkuY2xkMyA9IG11bHRjb21wTGV0dGVyczQobW9kMywgdHVrZXkzKQ0KcHJpbnQodHVrZXkuY2xkMykNCmBgYA0KDQojIyMgXyoqNCAtIEFsLmZpbmFsKipfDQoNCmBgYHtyfQ0KI21vZGVsDQptb2Q0ID0gYW92KEFsLmZpbmFsfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpoaXN0KHJzdGFuZGFyZChtb2Q0KSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2Q0KSkNCm1vZDQuMSA9IGFvdihBbC5maW5hbF4wLjh+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDQuMSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kNC4xKSkNCg0KI1R1a2V5DQptZWRpYXM0PWVtbWVhbnMobW9kNCx+IHByb3BhZ2FjYW8pDQptZWRpYXM0LjE9ZW1tZWFucyhtb2Q0LH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXM0KQ0Kc3VtbWFyeShtZWRpYXM0LjEpDQpzdW1tYXJ5KG1vZDQuMSkNCg0KdHVrZXk0ID0gVHVrZXlIU0QobW9kNC4xKQ0KcHJpbnQodHVrZXk0KQ0KdHVrZXkuY2xkNCA9IG11bHRjb21wTGV0dGVyczQobW9kNC4xLCB0dWtleTQpDQpwcmludCh0dWtleS5jbGQ0KQ0KYGBgDQojIyMgXyoqNSAtIEguQWwuZmluYWwqKl8NCg0KYGBge3J9DQojbW9kZWwNCm1vZDUgPSBhb3YoSC5BbC5maW5hbH5wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KaGlzdChyc3RhbmRhcmQobW9kNSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kNSkpDQoNCiNUdWtleQ0KbWVkaWFzNT1lbW1lYW5zKG1vZDUsfiBwcm9wYWdhY2FvKQ0KbWVkaWFzNS4xPWVtbWVhbnMobW9kNSx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzNSkNCnN1bW1hcnkobWVkaWFzNS4xKQ0Kc3VtbWFyeShtb2Q1KQ0KDQp0dWtleTUgPSBUdWtleUhTRChtb2Q1KQ0KcHJpbnQodHVrZXk1KQ0KdHVrZXkuY2xkNSA9IG11bHRjb21wTGV0dGVyczQobW9kNSwgdHVrZXk1KQ0KcHJpbnQodHVrZXkuY2xkNSkNCmBgYA0KIyMjIF8qKjYgLSBzYi5maW5hbCoqXw0KDQpgYGB7cn0NCiNtb2RlbA0KbW9kNiA9IGFvdihzYi5maW5hbH5wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KaGlzdChyc3RhbmRhcmQobW9kNikpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kNikpDQoNCiNUdWtleQ0KbWVkaWFzNj1lbW1lYW5zKG1vZDYsfiBwcm9wYWdhY2FvKQ0KbWVkaWFzNi4xPWVtbWVhbnMobW9kNix+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzNikNCnN1bW1hcnkobWVkaWFzNi4xKQ0Kc3VtbWFyeShtb2Q2KQ0KDQp0dWtleTYgPSBUdWtleUhTRChtb2Q2KQ0KcHJpbnQodHVrZXk2KQ0KdHVrZXkuY2xkNiA9IG11bHRjb21wTGV0dGVyczQobW9kNiwgdHVrZXk2KQ0KcHJpbnQodHVrZXkuY2xkNikNCmBgYA0KDQojIyMgXyoqNyAtIENhLmZpbmFsKipfDQoNCmBgYHtyfQ0KI21vZGVsDQptb2Q3ID0gYW92KENhLmZpbmFsfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpoaXN0KHJzdGFuZGFyZChtb2Q3KSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2Q3KSkNCg0KI1R1a2V5DQptZWRpYXM3PWVtbWVhbnMobW9kNyx+IHByb3BhZ2FjYW8pDQptZWRpYXM3LjE9ZW1tZWFucyhtb2Q3LH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXM3KQ0Kc3VtbWFyeShtZWRpYXM3LjEpDQpzdW1tYXJ5KG1vZDcpDQoNCnR1a2V5NyA9IFR1a2V5SFNEKG1vZDcpDQpwcmludCh0dWtleTcpDQp0dWtleS5jbGQ3ID0gbXVsdGNvbXBMZXR0ZXJzNChtb2Q3LCB0dWtleTcpDQpwcmludCh0dWtleS5jbGQ3KQ0KYGBgDQoNCiMjIyBfKio4IC0gTWcuZmluYWwqKl8NCg0KYGBge3J9DQojbW9kZWwNCm1vZDggPSBhb3YoTWcuZmluYWx+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDgpKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDgpKQ0KDQojVHVrZXkNCm1lZGlhczg9ZW1tZWFucyhtb2Q4LH4gcHJvcGFnYWNhbykNCm1lZGlhczguMT1lbW1lYW5zKG1vZDgsfiBzYXR1cmFjYW8pDQpzdW1tYXJ5KG1lZGlhczgpDQpzdW1tYXJ5KG1lZGlhczguMSkNCnN1bW1hcnkobW9kOCkNCg0KdHVrZXk4ID0gVHVrZXlIU0QobW9kOCkNCnByaW50KHR1a2V5OCkNCnR1a2V5LmNsZDggPSBtdWx0Y29tcExldHRlcnM0KG1vZDgsIHR1a2V5OCkNCnByaW50KHR1a2V5LmNsZDgpDQpgYGANCg0KIyAqKkJJT01BU1NBIFBST0RVQ1RJT04qKg0KDQojIyMgXyoqOSAtIE1GLm1lYW4qKl8NCg0KYGBge3J9DQojbW9kZWwNCm1vZDkgPSBhb3YoTUYubWVhbn5wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KaGlzdChyc3RhbmRhcmQobW9kOSkpDQpzaGFwaXJvLnRlc3QocmVzaWQobW9kOSkpDQpzdW1tYXJ5KG1vZDkpDQoNCiNtZWFucyBhbmQgc2QNCmxpYnJhcnkoZHBseXIpDQpkYXRhX3N1bW1hcnk5ID0gZ3JvdXBfYnkoZGF0YTIsIHNhdHVyYWNhbykgJT4lDQogIHN1bW1hcmlzZShzZCA9IHNkKE1GLm1lYW4sIG5hLnJtID0gVFJVRSksDQogICAgYmlvbWFzcy5tZWFuID0gbWVhbihNRi5tZWFuLCBuYS5ybSA9IFRSVUUpKSU+JQ0KIGFycmFuZ2UoZGVzYyhiaW9tYXNzLm1lYW4pKQ0KcHJpbnQoZGF0YV9zdW1tYXJ5OSkNCg0KZGF0YV9zdW1tYXJ5OS4xID0gZ3JvdXBfYnkoZGF0YTIsIHByb3BhZ2FjYW8pICU+JQ0KICBzdW1tYXJpc2Uoc2QgPSBzZChNRi5tZWFuLCBuYS5ybSA9IFRSVUUpLA0KICAgIGJpb21hc3MubWVhbiA9IG1lYW4oTUYubWVhbiwgbmEucm0gPSBUUlVFKSklPiUNCiBhcnJhbmdlKGRlc2MoYmlvbWFzcy5tZWFuKSkNCnByaW50KGRhdGFfc3VtbWFyeTkuMSkNCg0KbGlicmFyeShtdWx0Y29tcFZpZXcpDQojdHVrZXkNCnR1a2V5OSA9IFR1a2V5SFNEKG1vZDkpDQpwcmludCh0dWtleTkpDQp0dWtleS5jbGQ5ID0gbXVsdGNvbXBMZXR0ZXJzNChtb2Q5LCB0dWtleTkpDQpwcmludCh0dWtleS5jbGQ5KQ0KDQpjbGQ5ID0gYXMuZGF0YS5mcmFtZS5saXN0KHR1a2V5LmNsZDkkYHNhdHVyYWNhb2ApDQpkYXRhX3N1bW1hcnk5JFR1a2V5ID0gY2xkOSRMZXR0ZXJzDQpwcmludChkYXRhX3N1bW1hcnk5KQ0KbGlicmFyeShnZ3Bsb3QyKQ0KI3Bsb3QNCnBsdDE9Z2dwbG90KGRhdGFfc3VtbWFyeTksIGFlcyh4PWFzLmZhY3RvcihzYXR1cmFjYW8pLCB5PWJpb21hc3MubWVhbiwgZmlsbD1zYXR1cmFjYW8pKSsNCiAgZ2VvbV9jb2wocG9zaXRpb24gPSAiZG9kZ2UiKSsNCiAgZ2VvbV9lcnJvcmJhcihhZXMoeW1pbj1iaW9tYXNzLm1lYW4tc2QsIHltYXg9YmlvbWFzcy5tZWFuK3NkKSwgd2lkdGg9LjIsIHBvc2l0aW9uPXBvc2l0aW9uX2RvZGdlKC45KSkrIA0KICBnZW9tX3RleHQoYWVzKGxhYmVsPVR1a2V5KSwgcG9zaXRpb24gPSBwb3NpdGlvbl9kb2RnZSgwLjkpLCBzaXplID0gNCwgDQogICAgICAgICAgICB2anVzdD0tMC45LCBoanVzdD0tMC45LCBjb2xvdXIgPSAiQmxhY2siKSsNCiAgc2NhbGVfeF9kaXNjcmV0ZShuYW1lPSJCQ1MgbGV2ZWxzICglKSIpKw0KICBzY2FsZV95X2NvbnRpbnVvdXMoYnJlYWtzID0gc2VxKDAsIDQ1LCA1KSwgbmFtZT0gIlNob290IGJpb21hc3MgcHJvZHVjdGlvbiAoZy9wb3QpIikrDQogIGNvb3JkX2NhcnRlc2lhbih5bGltID0gYygwLDQ1KSkrc2NhbGVfZmlsbF9tYW51YWwodmFsdWVzID0gYygiZ3JleTgwIiwgImdyZXk2MCIsICJncmV5NDAiLCJncmV5MjAiKSkNCnBsdDENCnBsdDE9cGx0MSt0aGVtZShsZWdlbmQua2V5PWVsZW1lbnRfYmxhbmsoKSwgDQogICAgICAgICAgICBheGlzLmxpbmUgPSBlbGVtZW50X2xpbmUoY29sb3VyID0gImJsYWNrIixzaXplID0gMC41LCBsaW5ldHlwZSA9ICJzb2xpZCIpLA0KICAgICAgICAgICAgcGFuZWwuYmFja2dyb3VuZCA9IGVsZW1lbnRfcmVjdChmaWxsID0gJ3RyYW5zcGFyZW50JyxzaXplID0gMC41LCBjb2xvdXIgPSAiYmxhY2siLGxpbmV0eXBlID0gInNvbGlkIiksDQogICAgICAgICAgICBsZWdlbmQucG9zaXRpb24gPSAibm9uZSIsDQogICAgICAgICAgICBheGlzLnRpdGxlLnggPSBlbGVtZW50X3RleHQoc2l6ZSA9IDEzKSwNCiAgICAgICAgICAgIGF4aXMudGl0bGUueSA9IGVsZW1lbnRfdGV4dChzaXplID0gMTMpLA0KICAgICAgICAgICAgYXhpcy50ZXh0LnggPSBlbGVtZW50X3RleHQoc2l6ZSA9IDEyKSwNCiAgICAgICAgICAgIGF4aXMudGV4dC55ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMikpKw0KICAgICAgICAgICAgYW5ub3RhdGUoInRleHQiLCBzaXplPTUsIHg9MywgeT00LCBjb2xvcj0gIndoaXRlIixsYWJlbD0iLTAuODIlIikrDQogICAgICAgICAgICBhbm5vdGF0ZSgidGV4dCIsIHNpemU9NSwgeD0yLCB5PTQsIGNvbG9yPSAid2hpdGUiLGxhYmVsPSItMy45MyUiKSsNCiAgICAgICAgICAgIGFubm90YXRlKCJ0ZXh0Iiwgc2l6ZT01LCB4PTEsIHk9NCwgY29sb3I9ICJ3aGl0ZSIsbGFiZWw9Ii0zMS4wJSoiKSsNCiAgICAgICAgICAgIGFubm90YXRlKCJ0ZXh0Iiwgc2l6ZT00LCB4PTQsIHk9NDUsbGFiZWw9IlAtdmFsdWUiKSsNCiAgICAgICAgICAgIGFubm90YXRlKCJ0ZXh0IixzaXplPTMsIHg9NCwgeT00MyxsYWJlbD0gIlBNID0gPC4wMDEiKSsNCiAgICAgICAgICAgIGFubm90YXRlKCJ0ZXh0IixzaXplPTMsIHg9NCwgeT00MSwgIGxhYmVsPSAiQkNTID0gPC4wMDEiKSsNCiAgICAgICAgICAgIGFubm90YXRlKCJ0ZXh0IixzaXplPTMsIHg9NCwgeT0zOSxsYWJlbD0gIlAqQiA9IDAuMDcwIikNCnBsdDENCmBgYA0KDQojIyMgXyoqMTAtIFJvb3RzIGJpb21hc3MqKl8NCg0KYGBge3J9DQojbW9kZWwNCm1vZDEwID0gYW92KFJhaXplc35wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KaGlzdChyc3RhbmRhcmQobW9kMTApKQ0Kc2hhcGlyby50ZXN0KHJlc2lkKG1vZDEwKSkNCnN1bW1hcnkobW9kMTApDQoNCiNtZWFucyBhbmQgc2QNCmRhdGFfc3VtbWFyeTEwID0gZ3JvdXBfYnkoZGF0YTIsIHNhdHVyYWNhbykgJT4lDQogIHN1bW1hcmlzZShzZCA9IHNkKFJhaXplcywgbmEucm0gPSBUUlVFKSwNCiAgICBSb290ID0gbWVhbihSYWl6ZXMsIG5hLnJtID0gVFJVRSkpJT4lDQogYXJyYW5nZShkZXNjKFJvb3QpKQ0KcHJpbnQoZGF0YV9zdW1tYXJ5MTApDQoNCmRhdGFfc3VtbWFyeTEwLjEgPSBncm91cF9ieShkYXRhMiwgcHJvcGFnYWNhbykgJT4lDQogIHN1bW1hcmlzZShzZCA9IHNkKFJhaXplcywgbmEucm0gPSBUUlVFKSwNCiAgICBSb290ID0gbWVhbihSYWl6ZXMsIG5hLnJtID0gVFJVRSkpJT4lDQogYXJyYW5nZShkZXNjKFJvb3QpKQ0KcHJpbnQoZGF0YV9zdW1tYXJ5MTAuMSkNCg0KI3R1a2V5DQp0dWtleTEwID0gVHVrZXlIU0QobW9kMTApDQpwcmludCh0dWtleTEwKQ0KdHVrZXkuY2xkMTAgPSBtdWx0Y29tcExldHRlcnM0KG1vZDEwLCB0dWtleTEwKQ0KcHJpbnQodHVrZXkuY2xkMTApDQoNCmNsZDEwID0gYXMuZGF0YS5mcmFtZS5saXN0KHR1a2V5LmNsZDEwJGBzYXR1cmFjYW9gKQ0KZGF0YV9zdW1tYXJ5MTAkVHVrZXkgPSBjbGQxMCRMZXR0ZXJzDQpwcmludChkYXRhX3N1bW1hcnkxMCkNCg0KI3Bsb3QNCnBsdDI9Z2dwbG90KGRhdGFfc3VtbWFyeTEwLCBhZXMoeD1hcy5mYWN0b3Ioc2F0dXJhY2FvKSwgeT1Sb290LCBmaWxsPXNhdHVyYWNhbykpKw0KICBnZW9tX2NvbChwb3NpdGlvbiA9ICJkb2RnZSIpKw0KICBnZW9tX2Vycm9yYmFyKGFlcyh5bWluPVJvb3Qtc2QsIHltYXg9Um9vdCtzZCksIHdpZHRoPS4yLCBwb3NpdGlvbj1wb3NpdGlvbl9kb2RnZSguOSkpKyANCiAgZ2VvbV90ZXh0KGFlcyhsYWJlbD1UdWtleSksIHBvc2l0aW9uID0gcG9zaXRpb25fZG9kZ2UoMC45KSwgc2l6ZSA9IDQsIA0KICAgICAgICAgICAgdmp1c3Q9LTAuOSwgaGp1c3Q9LTAuOSwgY29sb3VyID0gIkJsYWNrIikrDQogIHNjYWxlX3hfZGlzY3JldGUobmFtZT0iQkNTIGxldmVscyAoJSkiKSsNCiAgc2NhbGVfeV9jb250aW51b3VzKGJyZWFrcyA9IHNlcSgwLCA0NSwgNSksIG5hbWU9ICJSb290IGJpb21hc3MgcHJvZHVjdGlvbiAoZy9wb3QpIikrDQogIGNvb3JkX2NhcnRlc2lhbih5bGltID0gYygwLDQ1KSkrc2NhbGVfZmlsbF9tYW51YWwodmFsdWVzID0gYygiZ3JleTgwIiwgImdyZXk2MCIsICJncmV5NDAiLCJncmV5MjAiKSkNCnBsdDINCnBsdDI9cGx0Mit0aGVtZShsZWdlbmQua2V5PWVsZW1lbnRfYmxhbmsoKSwgDQogICAgICAgICAgICBheGlzLmxpbmUgPSBlbGVtZW50X2xpbmUoY29sb3VyID0gImJsYWNrIixzaXplID0gMC41LCBsaW5ldHlwZSA9ICJzb2xpZCIpLA0KICAgICAgICAgICAgcGFuZWwuYmFja2dyb3VuZCA9IGVsZW1lbnRfcmVjdChmaWxsID0gJ3RyYW5zcGFyZW50JyxzaXplID0gMC41LCBjb2xvdXIgPSAiYmxhY2siLGxpbmV0eXBlID0gInNvbGlkIiksDQogICAgICAgICAgICBsZWdlbmQucG9zaXRpb24gPSAibm9uZSIsIA0KICAgICAgICAgICAgYXhpcy50aXRsZS54ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMyksDQogICAgICAgICAgICBheGlzLnRpdGxlLnkgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDEzKSwNCiAgICAgICAgICAgIGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMiksDQogICAgICAgICAgICBheGlzLnRleHQueSA9IGVsZW1lbnRfdGV4dChzaXplID0gMTIpKSsNCiAgICAgICAgICAgIGFubm90YXRlKCJ0ZXh0Iiwgc2l6ZT01LCB4PTMsIHk9NCwgY29sb3I9ICJ3aGl0ZSIsbGFiZWw9Ii0wLjY1JSIpKw0KICAgICAgICAgICAgYW5ub3RhdGUoInRleHQiLCBzaXplPTUsIHg9MiwgeT00LCBjb2xvcj0gIndoaXRlIixsYWJlbD0iLTIxLjclIikrDQogICAgICAgICAgICBhbm5vdGF0ZSgidGV4dCIsIHNpemU9NSwgeD0xLCB5PTQsIGNvbG9yPSAid2hpdGUiLGxhYmVsPSItNDQuOSUqIikrDQogICAgICAgICAgICBhbm5vdGF0ZSgidGV4dCIsIHNpemU9NCwgeD00LCB5PTQ1LGxhYmVsPSJQLXZhbHVlIikrDQogICAgICAgICAgICBhbm5vdGF0ZSgidGV4dCIsc2l6ZT0zLCB4PTQsIHk9NDMsbGFiZWw9ICJQTSA9IDAuMDE0IikrDQogICAgICAgICAgICBhbm5vdGF0ZSgidGV4dCIsc2l6ZT0zLCB4PTQsIHk9NDEsICBsYWJlbD0gIkJDUyA9IDAuMDI2IikrDQogICAgICAgICAgICBhbm5vdGF0ZSgidGV4dCIsc2l6ZT0zLCB4PTQsIHk9MzksbGFiZWw9ICJQKkIgPSAwLjMyMyIpDQpwbHQyDQoNCmxpYnJhcnkoY293cGxvdCkNCnNpZGUuYnkuc2lkZSA9IHBsb3RfZ3JpZChwbHQxLHBsdDIsbGFiZWxzID0gYygiQSIsICJCIiksIG5jb2wgPSAxLCBucm93ID0gMiwgYWxpZ24gPSAidiIpDQpzYXZlX3Bsb3QoInNob290IGFuZCByb290LnBkZiIsc2lkZS5ieS5zaWRlLCBuY29sID0gMSwgbnJvdyA9IDIpIA0KYGBgDQoNCiMjIyBfKioxMS0gQnJhbmNoZXMqKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRQZXJmaWxob3MpDQojbW9kZWwNCm1vZDExID0gYW92KFBlcmZpbGhvc35wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KaGlzdChyc3RhbmRhcmQobW9kMTEpKQ0Kc2hhcGlyby50ZXN0KHJzdGFuZGFyZChtb2QxMSkpDQojVHVrZXkNCm1lZGlhczExPWVtbWVhbnMobW9kMTEsfiBwcm9wYWdhY2FvKQ0KbWVkaWFzMTEuMT1lbW1lYW5zKG1vZDExLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXMxMSkNCnN1bW1hcnkobWVkaWFzMTEuMSkNCnN1bW1hcnkobW9kMTEpDQoNCnR1a2V5MTEgPSBUdWtleUhTRChtb2QxMSkNCnByaW50KHR1a2V5MTEpDQp0dWtleS5jbGQxMSA9IG11bHRjb21wTGV0dGVyczQobW9kMTEsIHR1a2V5MTEpDQpwcmludCh0dWtleS5jbGQxMSkNCmBgYA0KDQojIyMgXyoqMTItIExlYXZlcyoqXw0KDQpgYGB7cn0NCiNPdXRsaWVyDQpib3hwbG90KGRhdGEyJEZvbGhhKQ0KI21vZGVsDQptb2QxMiA9IGFvdihGb2xoYX5wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KaGlzdChyc3RhbmRhcmQobW9kMTIpKQ0Kc2hhcGlyby50ZXN0KHJzdGFuZGFyZChtb2QxMikpDQojVHVrZXkNCm1lZGlhczEyPWVtbWVhbnMobW9kMTIsfiBwcm9wYWdhY2FvKQ0KbWVkaWFzMTIuMT1lbW1lYW5zKG1vZDEyLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXMxMikNCnN1bW1hcnkobWVkaWFzMTIuMSkNCnN1bW1hcnkobW9kMTIpDQpgYGANCiMjIyBfKioxMy0gU3RlbXMqKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRDYXVsZSkNCiNtb2RlbA0KbW9kMTMgPSBhb3YoQ2F1bGV+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDEzKSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMTMpKQ0KI1R1a2V5DQptZWRpYXMxMz1lbW1lYW5zKG1vZDEzLH4gcHJvcGFnYWNhbykNCm1lZGlhczEzLjE9ZW1tZWFucyhtb2QxMyx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMTMpDQpzdW1tYXJ5KG1lZGlhczEzLjEpDQpzdW1tYXJ5KG1vZDEzKQ0KDQp0dWtleTEzID0gVHVrZXlIU0QobW9kMTMpDQpwcmludCh0dWtleTEzKQ0KdHVrZXkuY2xkMTMgPSBtdWx0Y29tcExldHRlcnM0KG1vZDEzLCB0dWtleTEzKQ0KcHJpbnQodHVrZXkuY2xkMTMpDQpgYGANCg0KIyMjIF8qKjE0LSBEZWFkIG1hdGVyaWFsKipfDQoNCmBgYHtyfQ0KI091dGxpZXINCmJveHBsb3QoZGF0YTIkU2VuZXNjZW50ZSkNCiNtb2RlbA0KbW9kMTQgPSBhb3YoU2VuZXNjZW50ZV4wLjh+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCm1vZDE0LjEgPSBhb3YoU2VuZXNjZW50ZX5wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KaGlzdChyc3RhbmRhcmQobW9kMTQpKQ0Kc2hhcGlyby50ZXN0KHJzdGFuZGFyZChtb2QxNCkpDQojVHVrZXkNCm1lZGlhczE0PWVtbWVhbnMobW9kMTQuMSx+IHByb3BhZ2FjYW8pDQptZWRpYXMxNC4xPWVtbWVhbnMobW9kMTQuMSx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMTQpDQpzdW1tYXJ5KG1lZGlhczE0LjEpDQpzdW1tYXJ5KG1vZDE0KQ0KDQp0dWtleTE0ID0gVHVrZXlIU0QobW9kMTQpDQpwcmludCh0dWtleTE0KQ0KdHVrZXkuY2xkMTQgPSBtdWx0Y29tcExldHRlcnM0KG1vZDE0LCB0dWtleTE0KQ0KcHJpbnQodHVrZXkuY2xkMTQpDQpgYGANCg0KIyAqKkJST01BVE9MT0dJQ0FMIEFOQUxZU0lTKioNCg0KIyMjIF8qKjE1LSBEcmllZCBtYXR0ZXIqKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRETTEwNSkNCiNtb2RlbA0KbW9kMTUgPSBhb3YoRE0xMDV+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDE1KSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMTUpKQ0KI1R1a2V5DQptZWRpYXMxNT1lbW1lYW5zKG1vZDE1LH4gcHJvcGFnYWNhbykNCm1lZGlhczE1LjE9ZW1tZWFucyhtb2QxNSx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMTUpDQpzdW1tYXJ5KG1lZGlhczE1LjEpDQpzdW1tYXJ5KG1vZDE1KQ0KDQp0dWtleTE1ID0gVHVrZXlIU0QobW9kMTUpDQpwcmludCh0dWtleTE1KQ0KdHVrZXkuY2xkMTUgPSBtdWx0Y29tcExldHRlcnM0KG1vZDE1LCB0dWtleTE1KQ0KcHJpbnQodHVrZXkuY2xkMTUpDQpgYGANCg0KIyMjIF8qKjE2LSBBc2gqKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRNTSkNCiNtb2RlbA0KbW9kMTYgPSBhb3YoTU1+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCm1vZDE2LjEgPSBhb3YoTU1eMC45fnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpoaXN0KHJzdGFuZGFyZChtb2QxNi4xKSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMTYuMSkpDQojVHVrZXkNCm1lZGlhczE2PWVtbWVhbnMobW9kMTYsfiBwcm9wYWdhY2FvKQ0KbWVkaWFzMTYuMT1lbW1lYW5zKG1vZDE2LH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXMxNikNCnN1bW1hcnkobWVkaWFzMTYuMSkNCnN1bW1hcnkobW9kMTYuMSkNCg0KdHVrZXkxNiA9IFR1a2V5SFNEKG1vZDE2LjEpDQpwcmludCh0dWtleTE2KQ0KdHVrZXkuY2xkMTYgPSBtdWx0Y29tcExldHRlcnM0KG1vZDE2LjEsIHR1a2V5MTYpDQpwcmludCh0dWtleS5jbGQxNikNCmBgYA0KDQojIyMgXyoqMTctIENydWRlIHByb3RlaW4qKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRQQikNCiNtb2RlbA0KbW9kMTcgPSBhb3YoUEJ+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDE3KSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMTcpKQ0KI1R1a2V5DQptZWRpYXMxNz1lbW1lYW5zKG1vZDE3LH4gcHJvcGFnYWNhbykNCm1lZGlhczE3LjE9ZW1tZWFucyhtb2QxNyx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMTcpDQpzdW1tYXJ5KG1lZGlhczE3LjEpDQpzdW1tYXJ5KG1vZDE3KQ0KDQp0dWtleTE3ID0gVHVrZXlIU0QobW9kMTcpDQpwcmludCh0dWtleTE3KQ0KdHVrZXkuY2xkMTcgPSBtdWx0Y29tcExldHRlcnM0KG1vZDE3LCB0dWtleTE3KQ0KcHJpbnQodHVrZXkuY2xkMTcpDQpgYGANCiMjIyBfKioxOC0gRXRoZXIgZXh0cmFjdCoqXw0KDQpgYGB7cn0NCiNPdXRsaWVyDQpib3hwbG90KGRhdGEyJEVFKQ0KDQojbW9kZWwNCm1vZDE4ID0gYW92KEVFfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpoaXN0KHJzdGFuZGFyZChtb2QxOCkpDQpzaGFwaXJvLnRlc3QocnN0YW5kYXJkKG1vZDE4KSkNCg0KI1R1a2V5DQptZWRpYXMxOD1lbW1lYW5zKG1vZDE4LH4gcHJvcGFnYWNhbykNCm1lZGlhczE4LjE9ZW1tZWFucyhtb2QxOCx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMTgpDQpzdW1tYXJ5KG1lZGlhczE4LjEpDQpzdW1tYXJ5KG1vZDE4KQ0KDQp0dWtleTE4ID0gVHVrZXlIU0QobW9kMTgpDQpwcmludCh0dWtleTE4KQ0KdHVrZXkuY2xkMTggPSBtdWx0Y29tcExldHRlcnM0KG1vZDE4LCB0dWtleTE4KQ0KcHJpbnQodHVrZXkuY2xkMTgpDQpgYGANCg0KIyMjIF8qKjEyLSBhTkRGb20qKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRhRkROb20pDQoNCiNtb2RlbA0KbW9kMTggPSBhb3YoYUZETm9tfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpoaXN0KHJzdGFuZGFyZChtb2QxOCkpDQpzaGFwaXJvLnRlc3QocnN0YW5kYXJkKG1vZDE4KSkNCg0KI1R1a2V5IA0KbWVkaWFzMTg9ZW1tZWFucyhtb2QxOCx+IHByb3BhZ2FjYW8pDQptZWRpYXMxOC4xPWVtbWVhbnMobW9kMTgsfiBzYXR1cmFjYW8pDQpzdW1tYXJ5KG1lZGlhczE4KQ0Kc3VtbWFyeShtZWRpYXMxOC4xKQ0Kc3VtbWFyeShtb2QxOCkNCg0KdHVrZXkxOCA9IFR1a2V5SFNEKG1vZDE4KQ0KcHJpbnQodHVrZXkxOCkNCnR1a2V5LmNsZDE4ID0gbXVsdGNvbXBMZXR0ZXJzNChtb2QxOCwgdHVrZXkxOCkNCnByaW50KHR1a2V5LmNsZDE4KQ0KYGBgDQoNCiMjIyBfKioxOS0gQURGb20qKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRhRkRBb20pDQoNCiNtb2RlbA0KbW9kMTkgPSBhb3YoYUZEQW9tfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpoaXN0KHJzdGFuZGFyZChtb2QxOSkpDQpzaGFwaXJvLnRlc3QocnN0YW5kYXJkKG1vZDE5KSkNCg0KI1R1a2V5DQptZWRpYXMxOT1lbW1lYW5zKG1vZDE5LH4gcHJvcGFnYWNhbykNCm1lZGlhczE5LjE9ZW1tZWFucyhtb2QxOSx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMTkpDQpzdW1tYXJ5KG1lZGlhczE5LjEpDQpzdW1tYXJ5KG1vZDE5KQ0KDQp0dWtleTE5ID0gVHVrZXlIU0QobW9kMTkpDQpwcmludCh0dWtleTE5KQ0KdHVrZXkuY2xkMTkgPSBtdWx0Y29tcExldHRlcnM0KG1vZDE5LCB0dWtleTE5KQ0KcHJpbnQodHVrZXkuY2xkMTkpDQpgYGANCg0KIyMjIF8qKjIwLSBhTERBb20qKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRhTERBb20pDQoNCiNtb2RlbA0KbW9kMjAgPSBhb3YoYUxEQW9tfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpoaXN0KHJzdGFuZGFyZChtb2QyMCkpDQpzaGFwaXJvLnRlc3QocnN0YW5kYXJkKG1vZDIwKSkNCg0KI1R1a2V5IA0KbWVkaWFzMjA9ZW1tZWFucyhtb2QyMCx+IHByb3BhZ2FjYW8pDQptZWRpYXMyMC4xPWVtbWVhbnMobW9kMjAsfiBzYXR1cmFjYW8pDQpzdW1tYXJ5KG1lZGlhczIwKQ0Kc3VtbWFyeShtZWRpYXMyMC4xKQ0Kc3VtbWFyeShtb2QyMCkNCg0KdHVrZXkyMCA9IFR1a2V5SFNEKG1vZDIwKQ0KcHJpbnQodHVrZXkyMCkNCnR1a2V5LmNsZDIwID0gbXVsdGNvbXBMZXR0ZXJzNChtb2QyMCwgdHVrZXkyMCkNCnByaW50KHR1a2V5LmNsZDIwKQ0KYGBgDQojICoqQ0hFTUlDQUwgQU5BTFlTSVMqKg0KDQojIyMgXyoqMjEtIEZvc2Zvcm8qKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRGw7NzZm9ybykNCiNtb2RlbA0KbW9kMjEgPSBhb3YoRsOzc2Zvcm9+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDIxKSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMjEpKQ0KDQojVHVrZXkNCm1lZGlhczIxPWVtbWVhbnMobW9kMjEsfiBwcm9wYWdhY2FvKQ0KbWVkaWFzMjEuMT1lbW1lYW5zKG1vZDIxLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXMyMSkNCnN1bW1hcnkobWVkaWFzMjEuMSkNCnN1bW1hcnkobW9kMjEpDQoNCnR1a2V5MjEgPSBUdWtleUhTRChtb2QyMSkNCnByaW50KHR1a2V5MjEpDQp0dWtleS5jbGQyMSA9IG11bHRjb21wTGV0dGVyczQobW9kMjEsIHR1a2V5MjEpDQpwcmludCh0dWtleS5jbGQyMSkNCmBgYA0KDQojIyMgXyoqMjItIFBvdGFzc2lvKipfDQoNCmBgYHtyfQ0KI091dGxpZXINCmJveHBsb3QoZGF0YTIkUG90w6Fzc2lvKQ0KI21vZGVsDQptb2QyMiA9IGFvdihQb3TDoXNzaW9+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDIyKSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMjIpKQ0KDQojVHVrZXkNCm1lZGlhczIyPWVtbWVhbnMobW9kMjIsfiBwcm9wYWdhY2FvKQ0KbWVkaWFzMjIuMT1lbW1lYW5zKG1vZDIyLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXMyMikNCnN1bW1hcnkobWVkaWFzMjIuMSkNCnN1bW1hcnkobW9kMjIpDQoNCnR1a2V5MjIgPSBUdWtleUhTRChtb2QyMikNCnByaW50KHR1a2V5MjIpDQp0dWtleS5jbGQyMiA9IG11bHRjb21wTGV0dGVyczQobW9kMjIsIHR1a2V5MjIpDQpwcmludCh0dWtleS5jbGQyMikNCmBgYA0KIyMjIF8qKjIzLSBDYWxjaW8qKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRDw6FsY2lvKQ0KDQojbW9kZWwNCm1vZDIzID0gYW92KEPDoWxjaW9+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDIzKSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMjMpKQ0KDQojVHVrZXkgDQptZWRpYXMyMz1lbW1lYW5zKG1vZDIzLH4gcHJvcGFnYWNhbykNCm1lZGlhczIzLjE9ZW1tZWFucyhtb2QyMyx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMjMpDQpzdW1tYXJ5KG1lZGlhczIzLjEpDQpzdW1tYXJ5KG1vZDIzKQ0KDQp0dWtleTIzID0gVHVrZXlIU0QobW9kMjMpDQpwcmludCh0dWtleTIzKQ0KdHVrZXkuY2xkMjMgPSBtdWx0Y29tcExldHRlcnM0KG1vZDIzLCB0dWtleTIzKQ0KcHJpbnQodHVrZXkuY2xkMjMpDQpgYGANCg0KIyMjIF8qKjI0LSBNYWduZXNpbyoqXw0KDQpgYGB7cn0NCiNPdXRsaWVyDQpib3hwbG90KGRhdGEyJE1hZ27DqXNpbykNCiNtb2RlbA0KbW9kMjQgPSBhb3YoTWFnbsOpc2lvfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpoaXN0KHJzdGFuZGFyZChtb2QyNCkpDQpzaGFwaXJvLnRlc3QocnN0YW5kYXJkKG1vZDI0KSkNCg0KI1R1a2V5DQptZWRpYXMyND1lbW1lYW5zKG1vZDI0LH4gcHJvcGFnYWNhbykNCm1lZGlhczI0LjE9ZW1tZWFucyhtb2QyNCx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMjQpDQpzdW1tYXJ5KG1lZGlhczI0LjEpDQpzdW1tYXJ5KG1vZDI0KQ0KDQp0dWtleTI0ID0gVHVrZXlIU0QobW9kMjQpDQpwcmludCh0dWtleTI0KQ0KdHVrZXkuY2xkMjQgPSBtdWx0Y29tcExldHRlcnM0KG1vZDI0LCB0dWtleTI0KQ0KcHJpbnQodHVrZXkuY2xkMjQpDQpgYGANCg0KIyMjIF8qKjI1LSBFbnhvZnJlKipfDQoNCmBgYHtyfQ0KI091dGxpZXINCmJveHBsb3QoZGF0YTIkRW54b2ZyZSkNCiNtb2RlbA0KbW9kMjUgPSBhb3YoRW54b2ZyZX5wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KaGlzdChyc3RhbmRhcmQobW9kMjUpKQ0Kc2hhcGlyby50ZXN0KHJzdGFuZGFyZChtb2QyNSkpDQoNCiNUdWtleQ0KbWVkaWFzMjU9ZW1tZWFucyhtb2QyNSx+IHByb3BhZ2FjYW8pDQptZWRpYXMyNS4xPWVtbWVhbnMobW9kMjUsfiBzYXR1cmFjYW8pDQpzdW1tYXJ5KG1lZGlhczI1KQ0Kc3VtbWFyeShtZWRpYXMyNS4xKQ0Kc3VtbWFyeShtb2QyNSkNCg0KdHVrZXkyNSA9IFR1a2V5SFNEKG1vZDI1KQ0KcHJpbnQodHVrZXkyNSkNCnR1a2V5LmNsZDI1ID0gbXVsdGNvbXBMZXR0ZXJzNChtb2QyNSwgdHVrZXkyNSkNCnByaW50KHR1a2V5LmNsZDI1KQ0KYGBgDQoNCiMjIyBfKioyNi0gQm9ybyoqXw0KDQpgYGB7cn0NCiNPdXRsaWVyDQpib3hwbG90KGRhdGEyJEJvcm8pDQojbW9kZWwNCm1vZDI2ID0gYW92KEJvcm9+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDI2KSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMjYpKQ0KDQojVHVrZXkgDQptZWRpYXMyNj1lbW1lYW5zKG1vZDI2LH4gcHJvcGFnYWNhbykNCm1lZGlhczI2LjE9ZW1tZWFucyhtb2QyNix+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMjYpDQpzdW1tYXJ5KG1lZGlhczI2LjEpDQpzdW1tYXJ5KG1vZDI2KQ0KDQp0dWtleTI2ID0gVHVrZXlIU0QobW9kMjYpDQpwcmludCh0dWtleTI2KQ0KdHVrZXkuY2xkMjYgPSBtdWx0Y29tcExldHRlcnM0KG1vZDI2LCB0dWtleTI2KQ0KcHJpbnQodHVrZXkuY2xkMjYpDQpgYGANCiMjIyBfKioyNy0gQ29icmUqKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRDb2JyZSkNCg0KI21vZGVsDQptb2QyNyA9IGFvdihDb2JyZX5wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KbW9kMjcuMSA9IGFvdihDb2JyZV4wLjV+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDI3KSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMjcuMSkpDQoNCiNUdWtleQ0KbWVkaWFzMjc9ZW1tZWFucyhtb2QyNyx+IHByb3BhZ2FjYW8pDQptZWRpYXMyNy4xPWVtbWVhbnMobW9kMjcsfiBzYXR1cmFjYW8pDQpzdW1tYXJ5KG1lZGlhczI3KQ0Kc3VtbWFyeShtZWRpYXMyNy4xKQ0Kc3VtbWFyeShtb2QyNy4xKQ0KDQp0dWtleTI3ID0gVHVrZXlIU0QobW9kMjcuMSkNCnByaW50KHR1a2V5MjcpDQp0dWtleS5jbGQyNyA9IG11bHRjb21wTGV0dGVyczQobW9kMjcuMSwgdHVrZXkyNykNCnByaW50KHR1a2V5LmNsZDI3KQ0KYGBgDQojIyMgXyoqMjgtIEZlcnJvKipfDQoNCmBgYHtyfQ0KI091dGxpZXINCmJveHBsb3QoZGF0YTIkRmVycm8pDQoNCiNtb2RlbA0KbW9kMjggPSBhb3YoRmVycm9+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCmhpc3QocnN0YW5kYXJkKG1vZDI4KSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMjgpKQ0KDQojVHVrZXkgDQptZWRpYXMyOD1lbW1lYW5zKG1vZDI4LH4gcHJvcGFnYWNhbykNCm1lZGlhczI4LjE9ZW1tZWFucyhtb2QyOCx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMjgpDQpzdW1tYXJ5KG1lZGlhczI4LjEpDQpzdW1tYXJ5KG1vZDI4KQ0KDQp0dWtleTI4ID0gVHVrZXlIU0QobW9kMjgpDQpwcmludCh0dWtleTI4KQ0KdHVrZXkuY2xkMjggPSBtdWx0Y29tcExldHRlcnM0KG1vZDI4LCB0dWtleTI4KQ0KcHJpbnQodHVrZXkuY2xkMjgpDQpgYGANCg0KIyMjIF8qKjI5LSBNYW5nYW7DqnMqKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRNYW5nYW7DqnMpDQoNCiNtb2RlbA0KbW9kMjkgPSBhb3YoTWFuZ2Fuw6pzfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpoaXN0KHJzdGFuZGFyZChtb2QyOSkpDQpzaGFwaXJvLnRlc3QocnN0YW5kYXJkKG1vZDI5KSkNCg0KI1R1a2V5IA0KbWVkaWFzMjk9ZW1tZWFucyhtb2QyOSx+IHByb3BhZ2FjYW8pDQptZWRpYXMyOS4xPWVtbWVhbnMobW9kMjksfiBzYXR1cmFjYW8pDQpzdW1tYXJ5KG1lZGlhczI5KQ0Kc3VtbWFyeShtZWRpYXMyOS4xKQ0Kc3VtbWFyeShtb2QyOSkNCg0KdHVrZXkyOSA9IFR1a2V5SFNEKG1vZDI5KQ0KcHJpbnQodHVrZXkyOSkNCnR1a2V5LmNsZDI5ID0gbXVsdGNvbXBMZXR0ZXJzNChtb2QyOSwgdHVrZXkyOSkNCnByaW50KHR1a2V5LmNsZDI5KQ0KYGBgDQoNCiMjIyBfKiozMC0gWmluY28qKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiRaaW5jbykNCg0KI21vZGVsDQptb2QzMCA9IGFvdihaaW5jb35wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KaGlzdChyc3RhbmRhcmQobW9kMzApKQ0Kc2hhcGlyby50ZXN0KHJzdGFuZGFyZChtb2QzMCkpDQoNCiNUdWtleQ0KbWVkaWFzMzA9ZW1tZWFucyhtb2QzMCx+IHByb3BhZ2FjYW8pDQptZWRpYXMzMC4xPWVtbWVhbnMobW9kMzAsfiBzYXR1cmFjYW8pDQpzdW1tYXJ5KG1lZGlhczMwKQ0Kc3VtbWFyeShtZWRpYXMzMC4xKQ0Kc3VtbWFyeShtb2QzMCkNCg0KdHVrZXkzMCA9IFR1a2V5SFNEKG1vZDMwKQ0KcHJpbnQodHVrZXkzMCkNCnR1a2V5LmNsZDMwID0gbXVsdGNvbXBMZXR0ZXJzNChtb2QzMCwgdHVrZXkzMCkNCnByaW50KHR1a2V5LmNsZDMwKQ0KYGBgDQoNCiMjIyBfKiozMS0gTml0cm9nw6puaW8qKl8NCg0KYGBge3J9DQojT3V0bGllcg0KYm94cGxvdChkYXRhMiROaXRyb2fDqm5pbykNCg0KI21vZGVsDQptb2QzMSA9IGFvdihOaXRyb2fDqm5pb35wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0KaGlzdChyc3RhbmRhcmQobW9kMzEpKQ0Kc2hhcGlyby50ZXN0KHJzdGFuZGFyZChtb2QzMSkpDQoNCiNUdWtleQ0KbWVkaWFzMzE9ZW1tZWFucyhtb2QzMSx+IHByb3BhZ2FjYW8pDQptZWRpYXMzMS4xPWVtbWVhbnMobW9kMzEsfiBzYXR1cmFjYW8pDQpzdW1tYXJ5KG1lZGlhczMxKQ0Kc3VtbWFyeShtZWRpYXMzMS4xKQ0Kc3VtbWFyeShtb2QzMSkNCg0KdHVrZXkzMSA9IFR1a2V5SFNEKG1vZDMxKQ0KcHJpbnQodHVrZXkzMSkNCnR1a2V5LmNsZDMxID0gbXVsdGNvbXBMZXR0ZXJzNChtb2QzMSwgdHVrZXkzMSkNCnByaW50KHR1a2V5LmNsZDMxKQ0KYGBgDQoNCiMjIyBfKiozMS4xLSBBbHVtaW5pbyoqXw0KDQpgYGB7cn0NCiNPdXRsaWVyDQpib3hwbG90KGRhdGEyJEFsLjEpDQoNCiNtb2RlbA0KbW9kMzEuMSA9IGFvdihBbC4xfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpoaXN0KHJzdGFuZGFyZChtb2QzMS4xKSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMzEuMSkpDQoNCiNUdWtleQ0KbWVkaWFzMzEuMT1lbW1lYW5zKG1vZDMxLjEsfiBwcm9wYWdhY2FvKQ0KbWVkaWFzMzEuMS4xPWVtbWVhbnMobW9kMzEuMSx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMzEuMSkNCnN1bW1hcnkobWVkaWFzMzEuMS4xKQ0Kc3VtbWFyeShtb2QzMS4xKQ0KDQp0dWtleTMxLjEgPSBUdWtleUhTRChtb2QzMS4xKQ0KcHJpbnQodHVrZXkzMS4xKQ0KdHVrZXkuY2xkMzEuMSA9IG11bHRjb21wTGV0dGVyczQobW9kMzEuMSwgdHVrZXkzMS4xKQ0KcHJpbnQodHVrZXkuY2xkMzEuMSkNCmBgYA0KDQojIyMgXyoqMzItIE51dHJpZW50IGFjY3VtdWxhdGlvbioqXw0KDQojIyMgXyoqREFUQSoqXw0KDQpgYGB7cn0NCmxpYnJhcnkodGlkeXIpDQoNCmNpdGF0aW9uKCJ0aWR5ciIpDQoNCmRhdGEyJGFjLk49ZGF0YTIkTUYuYWNjdW11bGF0aW9uKmRhdGEyJE5pdHJvZ8OqbmlvLzEwMDANCmRhdGEyJGFjLlA9ZGF0YTIkTUYuYWNjdW11bGF0aW9uKmRhdGEyJEbDs3Nmb3JvLzEwMDANCmRhdGEyJGFjLks9ZGF0YTIkTUYuYWNjdW11bGF0aW9uKmRhdGEyJFBvdMOhc3Npby8xMDAwDQpkYXRhMiRhYy5DYT1kYXRhMiRNRi5hY2N1bXVsYXRpb24qZGF0YTIkQ8OhbGNpby8xMDAwDQpkYXRhMiRhYy5NZz1kYXRhMiRNRi5hY2N1bXVsYXRpb24qZGF0YTIkTWFnbsOpc2lvLzEwMDANCmRhdGEyJGFjLlM9ZGF0YTIkTUYuYWNjdW11bGF0aW9uKmRhdGEyJEVueG9mcmUvMTAwMA0KZGF0YTIkYWMuQj1kYXRhMiRNRi5hY2N1bXVsYXRpb24qZGF0YTIkQm9yby8xMDAwDQpkYXRhMiRhYy5DdT1kYXRhMiRNRi5hY2N1bXVsYXRpb24qZGF0YTIkQ29icmUvMTAwMA0KZGF0YTIkYWMuRmU9ZGF0YTIkTUYuYWNjdW11bGF0aW9uKmRhdGEyJEZlcnJvLzEwMDANCmRhdGEyJGFjLk1uPWRhdGEyJE1GLmFjY3VtdWxhdGlvbipkYXRhMiRNYW5nYW7DqnMvMTAwMA0KZGF0YTIkYWMuWm49ZGF0YTIkTUYuYWNjdW11bGF0aW9uKmRhdGEyJFppbmNvLzEwMDANCmRhdGEyJGFjLkFsPWRhdGEyJE1GLmFjY3VtdWxhdGlvbipkYXRhMiRBbC4xLzEwMDANCg0KYWMuTWFjcm89Z2F0aGVyKGRhdGEyWywtYyg1OjU2KV0sdmFyaWFibGVzLHZhbHVlLA0KICAgICAgICAgICAgICAgICAgIGFjLk4sYWMuUCxhYy5LLGFjLkNhLGFjLk1nLGFjLlMpDQpWaWV3KGFjLk1hY3JvKQ0KYWMuTWljcm89Z2F0aGVyKGRhdGEyWywtYyg1OjU2KV0sdmFyaWFibGVzLHZhbHVlLA0KICAgICAgICAgICAgICAgICAgIGFjLkIsYWMuQ3UsYWMuRmUsYWMuTW4sYWMuWm4pDQpWaWV3KGFjLk1pY3JvKQ0KYGBgDQoNCiMjIyBfKipNQUNSTyAtIEFub3ZhKipfDQoNCmBgYHtyfQ0KI01BQ1JPDQptb2QzMi4xID0gYW92KGFjLk5+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kMzIuMSkNCm1lZGlhczMyLjE9ZW1tZWFucyhtb2QzMi4xLH4gcHJvcGFnYWNhbykNCm1lZGlhczMyLjI9ZW1tZWFucyhtb2QzMi4xLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXMzMi4xKQ0Kc3VtbWFyeShtZWRpYXMzMi4yKQ0KDQptb2QzMy4xID0gYW92KGFjLlB+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kMzMuMSkNCm1lZGlhczMzLjE9ZW1tZWFucyhtb2QzMy4xLH4gcHJvcGFnYWNhbykNCm1lZGlhczMzLjI9ZW1tZWFucyhtb2QzMy4xLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXMzMy4xKQ0Kc3VtbWFyeShtZWRpYXMzMy4yKQ0KDQptb2QzNC4xID0gYW92KGFjLkt+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kMzQuMSkNCm1lZGlhczM0LjE9ZW1tZWFucyhtb2QzNC4xLH4gcHJvcGFnYWNhbykNCm1lZGlhczM0LjI9ZW1tZWFucyhtb2QzNC4xLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXMzNC4xKQ0Kc3VtbWFyeShtZWRpYXMzNC4yKQ0KDQptb2QzNS4xID0gYW92KGFjLkNhfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpzdW1tYXJ5KG1vZDM1LjEpDQptZWRpYXMzNS4xPWVtbWVhbnMobW9kMzUuMSx+IHByb3BhZ2FjYW8pDQptZWRpYXMzNS4yPWVtbWVhbnMobW9kMzUuMSx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMzUuMSkNCnN1bW1hcnkobWVkaWFzMzUuMikNCnR1a2V5MzUuMSA9IFR1a2V5SFNEKG1vZDM1LjEpDQp0dWtleS5jbGQzNS4xID0gbXVsdGNvbXBMZXR0ZXJzNChtb2QzNS4xLCB0dWtleTM1LjEpDQpwcmludCh0dWtleS5jbGQzNS4xKQ0KDQptb2QzNi4xID0gYW92KGFjLk1nfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpzdW1tYXJ5KG1vZDM2LjEpDQptZWRpYXMzNi4xPWVtbWVhbnMobW9kMzYuMSx+IHByb3BhZ2FjYW8pDQptZWRpYXMzNi4yPWVtbWVhbnMobW9kMzYuMSx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMzYuMSkNCnN1bW1hcnkobWVkaWFzMzYuMikNCnR1a2V5MzYuMSA9IFR1a2V5SFNEKG1vZDM2LjEpDQp0dWtleS5jbGQzNi4xID0gbXVsdGNvbXBMZXR0ZXJzNChtb2QzNi4xLCB0dWtleTM2LjEpDQpwcmludCh0dWtleS5jbGQzNi4xKQ0KDQptb2QzNy4xID0gYW92KGFjLlN+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kMzcuMSkNCm1lZGlhczM3LjE9ZW1tZWFucyhtb2QzNy4xLH4gcHJvcGFnYWNhbykNCm1lZGlhczM3LjI9ZW1tZWFucyhtb2QzNy4xLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXMzNy4xKQ0Kc3VtbWFyeShtZWRpYXMzNy4yKQ0KYGBgDQoNCg0KIyMjIF8qKk1JQ1JPIC0gQW5vdmEqKl8NCg0KYGBge3J9DQptb2QzOC4xID0gYW92KGFjLkJ+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kMzguMSkNCm1lZGlhczM4LjE9ZW1tZWFucyhtb2QzOC4xLH4gcHJvcGFnYWNhbykNCm1lZGlhczM4LjI9ZW1tZWFucyhtb2QzOC4xLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXMzOC4xKQ0Kc3VtbWFyeShtZWRpYXMzOC4yKQ0KDQoNCm1vZDM5LjEgPSBhb3YoYWMuQ3V+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kMzkuMSkNCm1lZGlhczM5LjE9ZW1tZWFucyhtb2QzOS4xLH4gcHJvcGFnYWNhbykNCm1lZGlhczM5LjI9ZW1tZWFucyhtb2QzOS4xLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXMzOS4xKQ0Kc3VtbWFyeShtZWRpYXMzOS4yKQ0KdHVrZXkzOS4xID0gVHVrZXlIU0QobW9kMzkuMSkNCnR1a2V5LmNsZDM5LjEgPSBtdWx0Y29tcExldHRlcnM0KG1vZDM5LjEsIHR1a2V5MzkuMSkNCnByaW50KHR1a2V5LmNsZDM5LjEpDQoNCm1vZDQwLjEgPSBhb3YoYWMuRmV+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kNDAuMSkNCm1lZGlhczQwLjE9ZW1tZWFucyhtb2Q0MC4xLH4gcHJvcGFnYWNhbykNCm1lZGlhczQwLjI9ZW1tZWFucyhtb2Q0MC4xLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXM0MC4xKQ0Kc3VtbWFyeShtZWRpYXM0MC4yKQ0KDQoNCm1vZDQxLjEgPSBhb3YoYWMuTW5+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kNDEuMSkNCm1lZGlhczQxLjE9ZW1tZWFucyhtb2Q0MS4xLH4gcHJvcGFnYWNhbykNCm1lZGlhczQxLjI9ZW1tZWFucyhtb2Q0MS4xLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXM0MS4xKQ0Kc3VtbWFyeShtZWRpYXM0MS4yKQ0KDQptb2Q0Mi4xID0gYW92KGFjLlpufnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpzdW1tYXJ5KG1vZDQyLjEpDQptZWRpYXM0Mi4xPWVtbWVhbnMobW9kNDIuMSx+IHByb3BhZ2FjYW8pDQptZWRpYXM0Mi4yPWVtbWVhbnMobW9kNDIuMSx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzNDIuMSkNCnN1bW1hcnkobWVkaWFzNDIuMikNCg0KdHVrZXk0Mi4xID0gVHVrZXlIU0QobW9kNDIuMSkNCnR1a2V5LmNsZDQyLjEgPSBtdWx0Y29tcExldHRlcnM0KG1vZDQyLjEsIHR1a2V5NDIuMSkNCnByaW50KHR1a2V5LmNsZDQyLjEpDQoNCm1vZDQzLjEgPSBhb3YoYWMuQWx+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kNDMuMSkNCm1lZGlhczQzLjE9ZW1tZWFucyhtb2Q0My4xLH4gcHJvcGFnYWNhbykNCm1lZGlhczQzLjI9ZW1tZWFucyhtb2Q0My4xLH4gc2F0dXJhY2FvKQ0Kc3VtbWFyeShtZWRpYXM0My4xKQ0Kc3VtbWFyeShtZWRpYXM0My4yKQ0KDQp0dWtleTQzLjEgPSBUdWtleUhTRChtb2Q0My4xKQ0KdHVrZXkuY2xkNDMuMSA9IG11bHRjb21wTGV0dGVyczQobW9kNDMuMSwgdHVrZXk0My4xKQ0KcHJpbnQodHVrZXkuY2xkNDMuMSkNCmBgYA0KDQoNCiMjICoqUExPVFMqKg0KDQojIyMgXyoqMzMtIFYlLCBtJSBhbmQgcEgqKl8NCg0KYGBge3J9DQpsaWJyYXJ5KGdncGxvdDIpDQpwMT1nZ3Bsb3QoZGF0YTIsIGFlcyh4PWFzLm51bWVyaWMoc2F0dXJhY2FvKSkpKw0KICBnZW9tX2xpbmUoYWVzKHk9Vi4sY29sb3I9IlYgKCUpIiksIHN0YXQ9InN1bW1hcnkiLGZ1bj0ibWVhbiIsIHNpemU9MSwgbGluZXR5cGUgPSAxKSsNCiAgZ2VvbV9saW5lKGFlcyh5PW0uLGNvbG9yPSJtICglKSIpLCBzdGF0PSJzdW1tYXJ5IixmdW49Im1lYW4iLCBzaXplPTEsIGxpbmV0eXBlID0gNykrDQogIGdlb21fbGluZShhZXMoeT1wSCo4LGNvbG9yPSJwSCIpLCBzdGF0PSJzdW1tYXJ5IixmdW49Im1lYW4iLCBzaXplPTEsIGxpbmV0eXBlID0gMSkrDQogIGdlb21fbGluZShhZXMoeT1BbCo4LGNvbG9yPSJBbCszIiksIHN0YXQ9InN1bW1hcnkiLGZ1bj0ibWVhbiIsIHNpemU9MSwgbGluZXR5cGUgPSAxKQ0KcDEgDQpwMT1wMStzY2FsZV94X2Rpc2NyZXRlKG5hbWUgPSJCYXNlIHNhdHVyYXRpb24gbGV2ZWxzICglKSIsbGltaXRzPWMoIjE5IiwgIjM5IiwgIjUyIiwiNjMiKSkrDQogIHNjYWxlX3lfY29udGludW91cyhicmVha3MgPSBzZXEoMCwgNzAsIDUpLCBuYW1lPSAiViAoJSk7IG0gKCUpIiwgc2VjLmF4aXMgPSBzZWNfYXhpcyh+Li84LCBuYW1lPSJwSDsgQWwrMyAobW1vbGMgZG0zKSIsICAgIGJyZWFrcyA9IHNlcSgwLCA5LCAwLjUpKSkrDQogIHNjYWxlX2NvbG91cl9tYW51YWwoIiAiLCB2YWx1ZXM9YygiZ29sZDQiLCAiZmlyZWJyaWNrMyIsInN0ZWVsYmx1ZSIsImJsdWU0IikpKw0KICBjb29yZF9jYXJ0ZXNpYW4oeWxpbSA9IGMoMCw3MCkpDQpwMQ0KcDE9cDErdGhlbWUobGVnZW5kLmtleT1lbGVtZW50X2JsYW5rKCksbGVnZW5kLnRpdGxlPWVsZW1lbnRfYmxhbmsoKSxsZWdlbmQuYm94PSJoIiwgYXhpcy5saW5lID0gZWxlbWVudF9saW5lKGNvbG91ciA9ICJibGFjayIsIHNpemUgPSAxLCBsaW5ldHlwZSA9ICJzb2xpZCIpLHBhbmVsLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbCA9ICJ0cmFuc3BhcmVudCIpLGxlZ2VuZC5iYWNrZ3JvdW5kID0gZWxlbWVudF9yZWN0KGZpbGwgPSAidHJhbnNwYXJlbnQiLCBzaXplPTAuNSwgbGluZXR5cGU9InNvbGlkIixjb2xvdXIgPSJibGFjayIpLCBsZWdlbmQucG9zaXRpb24gPSBjKDAuMSwgMC44MCkpDQpwMQ0KbGlicmFyeShjb3dwbG90KQ0Kc2F2ZV9wbG90KCJWLnBkZiIscDEsIG5jb2wgPSAxLCBucm93ID0gMSkgDQpgYGANCg0KIyMjIF8qKjM1LSBCcmFuY2hlcyBldm9sdXRpb24qKl8NCg0KYGBge3J9DQpjdXQxPWJpb21hc3NbLWMoMzM6OTYpLF0NCg0KY3V0Mj1iaW9tYXNzWy1jKDE6MzIsNjU6OTYpLF0NCmN1dDM9YmlvbWFzc1stYygxOjY0LDY5LDcxLDcyKSxdDQoNCm1vZDM1LjEgPSBhb3YoUGVyZmlsaG9zXjAuOH5wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGN1dDEpDQpoaXN0KHJzdGFuZGFyZChtb2QzNS4xKSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMzUuMSkpDQpzdW1tYXJ5KG1vZDM1LjEpDQptb2QzNS4yID0gYW92KFBlcmZpbGhvc35wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGN1dDIpDQpoaXN0KHJzdGFuZGFyZChtb2QzNS4yKSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMzUuMikpDQpzdW1tYXJ5KG1vZDM1LjIpDQptb2QzNS4zID0gYW92KFBlcmZpbGhvc35wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGN1dDMpDQpoaXN0KHJzdGFuZGFyZChtb2QzNS4zKSkNCnNoYXBpcm8udGVzdChyc3RhbmRhcmQobW9kMzUuMykpDQpzdW1tYXJ5KG1vZDM1LjMpDQoNCmxpYnJhcnkoZHBseXIpDQpkYXRhX3N1bW1hcnkgPSBncm91cF9ieShiaW9tYXNzWy1jKDY5LDcxLDcyKSxdLCBwcm9wYWdhY2FvLCBDeWNsZSkgJT4lDQogIHN1bW1hcmlzZShtZWFuPW1lYW4oUGVyZmlsaG9zKSwgDQogICAgICAgICAgICBzZD1zZChQZXJmaWxob3MpKQ0KcHJpbnQoZGF0YV9zdW1tYXJ5KQ0KDQoNCg0KI1Bsb3QNCmxpYnJhcnkoZ2dwbG90MikNCg0KcDM9Z2dwbG90KGRhdGFfc3VtbWFyeSwgYWVzKHg9YXMubnVtZXJpYyhDeWNsZSkseT1tZWFuLCBncm91cD1wcm9wYWdhY2FvKSkrIA0KICBnZW9tX2xpbmUoYWVzKGxpbmV0eXBlPXByb3BhZ2FjYW8pKSsNCiAgZ2VvbV9wb2ludChhZXMoc2hhcGU9cHJvcGFnYWNhbyksIHNpemU9IDMpKw0KICBnZW9tX2Vycm9yYmFyKGFlcyh5bWluPW1lYW4tc2QsIHltYXg9bWVhbitzZCksIHBvc2l0aW9uID0gcG9zaXRpb25fZG9kZ2UoMC4xNSksIHdpZHRoID0gMC4yKQ0KcDMNCnAzLjE9cDMrc2NhbGVfc2hhcGVfbWFudWFsKHZhbHVlcyA9IGMoMSwgMTUpLCBuYW1lPSAiUHJvcGFnYXRpb24iLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFiZWxzID0gYygiU3RlbSBjdXR0aW5nIiwgIlNlZWRzIikpKw0KICBzY2FsZV9saW5ldHlwZV9tYW51YWwodmFsdWVzID0gYygiZGFzaGVkIiwic29saWQiKSwgbmFtZT0gIlByb3BhZ2F0aW9uIiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgIGxhYmVscyA9IGMoIlN0ZW0gY3V0dGluZyIsICJTZWVkcyIpKSsNCiAgc2NhbGVfeF9kaXNjcmV0ZShuYW1lPSIiLCBsaW1pdHM9YygiQ3V0IDEiLCAiQ3V0IDIiLCAiQ3V0IDMiKSkrDQogIHNjYWxlX3lfY29udGludW91cyhuYW1lPSJOdW1iZXIgb2YgYnJhbmNoZXMgKG4pIixicmVha3M9c2VxKDAsNDYsMykpKw0KICBjb29yZF9jYXJ0ZXNpYW4oeWxpbSA9IGMoMCw0NikpDQpwMy4xDQpwMy4yPXAzLjErdGhlbWUoYXhpcy5saW5lID0gZWxlbWVudF9saW5lKGNvbG91ciA9ICJibGFjayIsIHNpemUgPSAwLjcsIGxpbmV0eXBlID0gInNvbGlkIiksDQogIHBhbmVsLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbCA9ICJ3aGl0ZSIsIGNvbG91ciA9ICJibGFjayIpLA0KICBsZWdlbmQuYmFja2dyb3VuZCA9IGVsZW1lbnRfcmVjdChmaWxsID0gInRyYW5zcGFyZW50IiwNCiAgc2l6ZT0wLjUsIGxpbmV0eXBlPSJzb2xpZCIsY29sb3VyID0iYmxhY2siKSxheGlzLnRpdGxlLng9ZWxlbWVudF9ibGFuaygpLA0KICBsZWdlbmQucG9zaXRpb24gPSBjKDAuMiwgMC44KSwNCiAgICAgICAgICAgIGF4aXMudGl0bGUueSA9IGVsZW1lbnRfdGV4dChzaXplID0gMTQpLA0KICAgICAgICAgICAgYXhpcy50ZXh0LnggPSBlbGVtZW50X3RleHQoc2l6ZSA9IDEyKSwNCiAgICAgICAgICAgIGF4aXMudGV4dC55ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMikpKw0KICBhbm5vdGF0ZSgidGV4dCIsc2l6ZT01LGNvbG9yPSJibGFjayIsIHg9MSwgeT0xNSwgbGFiZWw9IioqKiIpKw0KICBhbm5vdGF0ZSgidGV4dCIsc2l6ZT01LGNvbG9yPSJibGFjayIsIHg9MiwgeT0yMi41LGxhYmVsPSIqKioiKSsNCiAgYW5ub3RhdGUoInRleHQiLHNpemU9NSxjb2xvcj0iYmxhY2siLCB4PTMsIHk9NDIuNSwgbGFiZWw9ICIqKioiKQ0KcDMuMiANCmxpYnJhcnkoY293cGxvdCkNCnNhdmVfcGxvdCgiQnJhbmNoZXMucGRmIixwMy4yLCBuY29sID0gMSwgbnJvdyA9IDEpDQpgYGANCg0KIyMjIF8qKjM2LSBTUEFEKipfDQoNCmBgYHtyfQ0KI21vZGVsDQptb2QyNiA9IGxtKFNQQUR+cG9seShzYXR1cmFjYW8sZGVncmVlID0gMSksIGRhdGEgPSBkYXRhMlstMTAsXSkNCmhpc3QocnN0YW5kYXJkKG1vZDI2KSkNCnNoYXBpcm8udGVzdChyZXNpZChtb2QyNikpDQpzdW1tYXJ5KG1vZDI2KQ0KDQojVHVrZXkNCg0KbGlicmFyeShnZ3Bsb3QyKQ0KcDE9Z2dwbG90KGRhdGEyWy0xMCxdLCBhZXMoeD1hcy5udW1lcmljKHNhdHVyYWNhbyksIHk9U1BBRCkpKw0KICBnZW9tX3BvaW50KHNoYXBlPTE5LCBjb2xvcj0nYmxhY2snLHN0YXQ9InN1bW1hcnkiLGZ1bj0ibWVhbiIpKyANCiAgZ2VvbV9zbW9vdGgoY29sb3I9J2JsYWNrJywgbWV0aG9kID0gImdhbSIsIGZvcm11bGEgPSB5IH4gcG9seSh4LCAxKSwgc2U9RikNCnAxIA0KcDE9cDErc2NhbGVfeF9kaXNjcmV0ZShuYW1lID0iQmFzZSBzYXR1cmF0aW9uIGxldmVscyAoJSkiLGxpbWl0cz1jKCIxOSIsICIzOSIsICI1MiIsIjYzIikpKw0KICBzY2FsZV95X2NvbnRpbnVvdXMoYnJlYWtzID0gc2VxKDI3LCAzMywgMSksIG5hbWU9ICJTUEFEIGluZGV4IikrDQogIGNvb3JkX2NhcnRlc2lhbih5bGltID0gYygyNywzMykpDQpwMQ0KcDE9cDErdGhlbWUobGVnZW5kLmtleT1lbGVtZW50X2JsYW5rKCksDQogICAgICAgICAgICBsZWdlbmQudGl0bGU9ZWxlbWVudF9ibGFuaygpLA0KICAgICAgICAgICAgYXhpcy5saW5lID0gZWxlbWVudF9saW5lKGNvbG91ciA9ICJibGFjayIsc2l6ZSA9IDAuNSwgbGluZXR5cGUgPSAic29saWQiKSwNCiAgICAgICAgICAgIHBhbmVsLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbCA9ICJ3aGl0ZSIsIGNvbG91ciA9ICJibGFjayIpLA0KICAgICAgICAgICAgYXhpcy50aXRsZS54ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxNCksDQogICAgICAgICAgICBheGlzLnRpdGxlLnkgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDE0KSwNCiAgICAgICAgICAgIGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMiksDQogICAgICAgICAgICBheGlzLnRleHQueSA9IGVsZW1lbnRfdGV4dChzaXplID0gMTIpKSsNCiAgYW5ub3RhdGUoZ2VvbT0idGV4dCIsIHg9Mi41LCB5PTMyLGxhYmVsPWV4cHJlc3Npb24ocGFzdGUoIlAtdmFsdWUgPSAwLjA4OTsgICB5ID0gLSA0LjcxMTV4ICsgMjkuNjA2MiAgIiwgUl4yLCAiPSAwLjExMzkiKSksIHNpemU9NSwgY29sb3I9ImJsYWNrIikNCnAxDQpsaWJyYXJ5KGNvd3Bsb3QpDQpzYXZlX3Bsb3QoIlNQQUQucGRmIixwMSwgbmNvbCA9IDEsIG5yb3cgPSAxKSANCmBgYA0KDQojIyMgXyoqMzctIE1hY3JvIGUgbWljcm8gYWNjdW11bGF0aW9uKipfDQoNCmBgYHtyfQ0KI01BQ1JPDQpWaWV3KGRhdGEyKQ0KbW9kMzIuMSA9IGFvdihhYy5OfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpzdW1tYXJ5KG1vZDMyLjEpDQptZWRpYXMyOD1lbW1lYW5zKG1vZDI4LH4gcHJvcGFnYWNhbykNCm1lZGlhczI4LjE9ZW1tZWFucyhtb2QyOCx+IHNhdHVyYWNhbykNCnN1bW1hcnkobWVkaWFzMjgpDQpzdW1tYXJ5KG1lZGlhczI4LjEpDQpzdW1tYXJ5KG1vZDI4KQ0KDQoNCm1vZDMyLjIgPSBhb3YoYWMuUH5wcm9wYWdhY2FvKnNhdHVyYWNhbywgZGF0YSA9IGRhdGEyKQ0Kc3VtbWFyeShtb2QzMi4yKQ0KbW9kMzIuMyA9IGFvdihhYy5LfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpzdW1tYXJ5KG1vZDMyLjMpDQptb2QzMi40ID0gYW92KGFjLkNhfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpzdW1tYXJ5KG1vZDMyLjQpDQp0dWtleTMyLjQgPSBUdWtleUhTRChtb2QzMi40KQ0KdHVrZXkuY2xkMzIuNCA9IG11bHRjb21wTGV0dGVyczQobW9kMzIuNCwgdHVrZXkzMi40KQ0KcHJpbnQodHVrZXkuY2xkMzIuNCkNCm1vZDMyLjUgPSBhb3YoYWMuTWd+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kMzIuNSkNCnR1a2V5MzIuNSA9IFR1a2V5SFNEKG1vZDMyLjUpDQp0dWtleS5jbGQzMi41ID0gbXVsdGNvbXBMZXR0ZXJzNChtb2QzMi41LCB0dWtleTMyLjUpDQpwcmludCh0dWtleS5jbGQzMi41KQ0KDQptb2QzMi42ID0gYW92KGFjLlN+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kMzIuNikNCg0KbGlicmFyeShnZ3Bsb3QyKQ0KDQpwMzc9Z2dwbG90KGFjLk1hY3JvLCBhZXMoeD1hcy5udW1lcmljKHNhdHVyYWNhbykseT12YWx1ZSwgY29sb3I9dmFyaWFibGVzKSkrIA0KICBnZW9tX2xpbmUoc3RhdD0ic3VtbWFyeSIsZnVuPSJtZWFuIikrDQogIGdlb21fcG9pbnQoc3RhdD0ic3VtbWFyeSIsZnVuPSJtZWFuIikNCnAzNw0KcDM3LjE9cDM3K3NjYWxlX2NvbG91cl9tYW51YWwoIkNvbXBvc2l0aW9uOiIsdmFsdWVzPWMoImFjLk4iID0iZ3JlZW40IiwiYWMuUCI9ImdyYXk0MCIsImFjLksiPSJyZWQ0IiwNCiAgImFjLkNhIj0iZGFya2JsdWUiLCJhYy5NZyI9ImN5YW4yIiwiYWMuUyI9ImdvbGQiKSwgDQogIGxhYmVscyA9IGMoImFjLk4iID0iTiAtICBQIHZhbHVlID0gMC41NzgiLCJhYy5QIiA9IlAgLSAgUCB2YWx1ZSA9IDAuMDUzIiwiYWMuSyIgPSJLIC0gICBQIHZhbHVlID0gMC4xMzciLCJhYy5DYSIgPSJDYSAtIFAgdmFsdWUgPSA8MC4wMDEiLCJhYy5NZyIgPSJNZyAtIFAgdmFsdWUgPSA8MC4wMDEiLCJhYy5TIiA9IlMgLSAgUCB2YWx1ZSA9IDAuMDY1IikpK3NjYWxlX3hfZGlzY3JldGUobmFtZT0iQmFzZSBzYXR1cmF0aW9uIGxldmVscyAoJSkiLGxpbWl0cz1jKCIxOSIsICIzOSIsICI1MiIsIjYzIikpKw0KICBzY2FsZV95X2NvbnRpbnVvdXMobmFtZT0iTWFjcm9udXRyaWVudHMgYWNjdW11bGF0aW9uIChnL3BsYW50KSIsYnJlYWtzPXNlcSgwLDIuMjUsMC4yNSkpKw0KICBjb29yZF9jYXJ0ZXNpYW4oeWxpbSA9IGMoMCwyLjI1KSkNCnAzNy4xDQpwMzcuMj1wMzcuMSt0aGVtZShheGlzLmxpbmUgPSBlbGVtZW50X2xpbmUoY29sb3VyID0gImJsYWNrIiwgc2l6ZSA9IDAuNywgbGluZXR5cGUgPSAic29saWQiKSwNCiAgICAgICAgICAgICAgICAgIHBhbmVsLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbCA9ICJ3aGl0ZSIsIGNvbG91ciA9ICJibGFjayIpLA0KICAgICAgICAgICAgICAgICAgbGVnZW5kLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbCA9ICJ0cmFuc3BhcmVudCIsc2l6ZT0wLjUsbGluZXR5cGU9InNvbGlkIixjb2xvdXIgPSJibGFjayIpLA0KICAgICAgICAgICAgICAgICAgbGVnZW5kLmtleSA9IGVsZW1lbnRfcmVjdChmaWxsID0gIndoaXRlIiwgY29sb3VyID0gImJsYWNrIiksDQogICAgICAgICAgICAgICAgICBsZWdlbmQuanVzdGlmaWNhdGlvbiA9ICJ0b3AiLA0KICAgICAgICAgICAgICAgICAgYXhpcy50aXRsZS54ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMSksDQogICAgICAgICAgICAgICAgICBheGlzLnRpdGxlLnkgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDExKSwNCiAgICAgICAgICAgICAgICAgIGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMiksDQogICAgICAgICAgICAgICAgICBheGlzLnRleHQueSA9IGVsZW1lbnRfdGV4dChzaXplID0gMTIpKSsNCiAgIGFubm90YXRlKCJ0ZXh0Iiwgc2l6ZT0zLCB4PTEsIHk9MC42NSxsYWJlbD0iYyIpKw0KICAgYW5ub3RhdGUoInRleHQiLHNpemU9MywgeD0yLCB5PTEuMSxsYWJlbD0gImIiKSsNCiAgIGFubm90YXRlKCJ0ZXh0IixzaXplPTMsIHg9MywgeT0xLjMsbGFiZWw9ICJhYiIpKw0KICAgYW5ub3RhdGUoInRleHQiLHNpemU9MywgeD00LCB5PTEuNSxsYWJlbD0gImEiKSsNCiAgIGFubm90YXRlKCJ0ZXh0Iiwgc2l6ZT0zLCB4PTEsIHk9MC4zMCxsYWJlbD0iYiIpKw0KICAgYW5ub3RhdGUoInRleHQiLHNpemU9MywgeD0yLCB5PTAuMzcsbGFiZWw9ICJhIikrDQogICBhbm5vdGF0ZSgidGV4dCIsc2l6ZT0zLCB4PTMsIHk9MC40MSwgbGFiZWw9ICJhIikrDQogICBhbm5vdGF0ZSgidGV4dCIsc2l6ZT0zLCB4PTQsIHk9MC40NCxsYWJlbD0gImEiKQ0KcDM3LjINCiNNSUNSTw0KbW9kMzIuNyA9IGFvdihhYy5CfnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpzdW1tYXJ5KG1vZDMyLjcpDQptb2QzMi44ID0gYW92KGFjLkN1fnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpzdW1tYXJ5KG1vZDMyLjgpDQp0dWtleTMyLjggPSBUdWtleUhTRChtb2QzMi44KQ0KdHVrZXkuY2xkMzIuOCA9IG11bHRjb21wTGV0dGVyczQobW9kMzIuOCwgdHVrZXkzMi44KQ0KcHJpbnQodHVrZXkuY2xkMzIuOCkNCm1vZDMyLjkgPSBhb3YoYWMuRmV+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kMzIuOSkNCm1vZDMyLjEwID0gYW92KGFjLk1ufnByb3BhZ2FjYW8qc2F0dXJhY2FvLCBkYXRhID0gZGF0YTIpDQpzdW1tYXJ5KG1vZDMyLjEwKQ0KbW9kMzIuMTEgPSBhb3YoYWMuWm5+cHJvcGFnYWNhbypzYXR1cmFjYW8sIGRhdGEgPSBkYXRhMikNCnN1bW1hcnkobW9kMzIuMTEpDQp0dWtleTMyLjExID0gVHVrZXlIU0QobW9kMzIuMTEpDQp0dWtleS5jbGQzMi4xMSA9IG11bHRjb21wTGV0dGVyczQobW9kMzIuMTEsIHR1a2V5MzIuMTEpDQpwcmludCh0dWtleS5jbGQzMi4xMSkNCg0KDQpwMzg9Z2dwbG90KGFjLk1pY3JvLCBhZXMoeD1hcy5udW1lcmljKHNhdHVyYWNhbykseT12YWx1ZSwgY29sb3I9dmFyaWFibGVzKSkrIA0KICBnZW9tX2xpbmUoc3RhdD0ic3VtbWFyeSIsZnVuPSJtZWFuIikrDQogIGdlb21fcG9pbnQoc3RhdD0ic3VtbWFyeSIsZnVuPSJtZWFuIikNCnAzOA0KcDM4LjE9cDM4K3NjYWxlX2NvbG91cl9tYW51YWwoIkNvbXBvc2l0aW9uOiIsdmFsdWVzPWMoImFjLkIiID0iZGFya2JsdWUiLCJhYy5DdSI9InRhbjQiLCJhYy5GZSI9ImdyZXkwIiwgICJhYy5NbiI9Im1hcm9vbjQiLCJhYy5abiI9ImN5YW40IiksbGFiZWxzID0gYygiYWMuQiI9IkIgLSBQIHZhbHVlID0gMC4wNTgiLCJhYy5DdSI9IkN1IC0gUCB2YWx1ZSA9IDAuMDE1IiwiYWMuRmUiID0iRmUgLSBQIHZhbHVlID0gMC4xODUiLCJhYy5NbiI9Ik1uIC0gUCB2YWx1ZSA9IDAuNjM0IiwiYWMuWm4iID0iWm4gLSBQIHZhbHVlID0gMC4wMjEiKSkrDQogIHNjYWxlX3hfZGlzY3JldGUobmFtZT0iQmFzZSBzYXR1cmF0aW9uIGxldmVscyAoJSkiLGxpbWl0cz1jKCIxOSIsICIzOSIsICI1MiIsIjYzIikpKw0KICBzY2FsZV95X2NvbnRpbnVvdXMobmFtZT0iTWljcm9udXRyaWVudHMgYWNjdW11bGF0aW9uIChtZy9wbGFudCkiLGJyZWFrcz1zZXEoMCwyNSw1KSkrDQogIGNvb3JkX2NhcnRlc2lhbih5bGltID0gYygwLDI1KSkNCnAzOC4xDQpwMzguMj1wMzguMSt0aGVtZShheGlzLmxpbmUgPSBlbGVtZW50X2xpbmUoY29sb3VyID0gImJsYWNrIiwgc2l6ZSA9IDAuNywgbGluZXR5cGUgPSAic29saWQiKSwNCiAgICAgICAgICAgICAgICAgIHBhbmVsLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbCA9ICJ3aGl0ZSIsIGNvbG91ciA9ICJibGFjayIpLA0KICAgICAgICAgICAgICAgICAgbGVnZW5kLmJhY2tncm91bmQgPSBlbGVtZW50X3JlY3QoZmlsbCA9ICJ0cmFuc3BhcmVudCIsc2l6ZT0wLjUsbGluZXR5cGU9InNvbGlkIixjb2xvdXIgPSJibGFjayIpLA0KICAgICAgICAgICAgICAgICAgbGVnZW5kLmtleSA9IGVsZW1lbnRfcmVjdChmaWxsID0gIndoaXRlIiwgY29sb3VyID0gImJsYWNrIiksDQogICAgICAgICAgICAgICAgICBsZWdlbmQuanVzdGlmaWNhdGlvbiA9ICJ0b3AiLA0KICAgICAgICAgICAgICAgICAgYXhpcy50aXRsZS54ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMSksDQogICAgICAgICAgICAgICAgICBheGlzLnRpdGxlLnkgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDExKSwNCiAgICAgICAgICAgICAgICAgIGF4aXMudGV4dC54ID0gZWxlbWVudF90ZXh0KHNpemUgPSAxMiksDQogICAgICAgICAgICAgICAgICBheGlzLnRleHQueSA9IGVsZW1lbnRfdGV4dChzaXplID0gMTIpKSsNCiAgYW5ub3RhdGUoInRleHQiLCBzaXplPTMsIHg9MSwgeT0xMy41LGxhYmVsPSJhIikrDQogIGFubm90YXRlKCJ0ZXh0IixzaXplPTMsIHg9MiwgeT0xMy41LGxhYmVsPSAiYSIpKw0KICBhbm5vdGF0ZSgidGV4dCIsc2l6ZT0zLCB4PTMsIHk9MTEsICBsYWJlbD0gImFiIikrDQogIGFubm90YXRlKCJ0ZXh0IixzaXplPTMsIHg9NCwgeT05LGxhYmVsPSAiYiIpKw0KICBhbm5vdGF0ZSgidGV4dCIsIHNpemU9MywgeD0xLCB5PTEuMyxsYWJlbD0iYiIpKw0KICBhbm5vdGF0ZSgidGV4dCIsc2l6ZT0zLCB4PTIsIHk9MS4zNSxsYWJlbD0gImEiKSsNCiAgYW5ub3RhdGUoInRleHQiLHNpemU9MywgeD0zLCB5PTEuNCwgIGxhYmVsPSAiYWIiKSsNCiAgYW5ub3RhdGUoInRleHQiLHNpemU9MywgeD00LCB5PTEuMyxsYWJlbD0gImIiKQ0KcDM4LjINCg0KI1NhdmUgcGxvdHMNCmxpYnJhcnkoY293cGxvdCkNCnNpZGUuYnkuc2lkZSA8LSBwbG90X2dyaWQocDM3LjIscDM4LjIsIA0KICAgICAgICAgICAgICAgICAgICAgICAgICBsYWJlbHMgPSBjKCJBIiwgIkIiKSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgbmNvbCA9IDEsIG5yb3cgPTIsIGFsaWduID0gIlYiKQ0Kc2lkZS5ieS5zaWRlDQpzYXZlX3Bsb3QoImFjdW11bGF0aXZvLnBkZiIsIHNpZGUuYnkuc2lkZSwgbmNvbCA9IDEsIG5yb3cgPSAyKQ0KYGBgDQpgYGB7cn0NCmNpdGF0aW9uKCkNCmBgYA0KDQoNCg0KaHR0cHM6Ly9zdGFja292ZXJmbG93LmNvbS9xdWVzdGlvbnMvNjMzMDEyNzAvaG93LXRvLWRyYXctYm90aC1wb3NpdGl2ZS1taXJyb3ItYmFyLWdyYXBoLWluLXINCg0KDQoNCg0KDQoNCg0K