library(coin)
## Warning: package 'coin' was built under R version 4.0.5
## Loading required package: survival
library(readr)
## Warning: package 'readr' was built under R version 4.0.3
library(knitr)
library(kableExtra)
## Warning: package 'kableExtra' was built under R version 4.0.4

Data prep

setwd("C:/Users/fsanc/OneDrive - Colorado College/Research/Open/Roxaneh")

# Upload data: use "phenology2019.csv" for 2019 and "phenology2020.csv" for 2020
phenology1 <- read.csv("phenology2020.csv") 

# Order data by Day
phenology1 <- phenology1[order(phenology1$Day),]

# Merge SPC and SPH into SP
phenology1$Species[phenology1$Species == "SPC"] <- "SP"
phenology1$Species[phenology1$Species == "SPH"] <- "SP"

# For 2019, exclude the following species (tiny sample sizes):
#exclude <- c("AL", "BT", "DL", "LC", "PA", "PF", "PK", "PV", "SR")

# For 2020, exclude the following species (tiny sample sizes):
exclude <- c("DL", "EV",  "PB", "ON")

# First 10 rows of the phenology dataset
head(phenology1, 10)
##    Camera.number  Date Day Location  Site Treatment Plot Anthesis Species Group
## 1             14 5-Jun 157   Toolik   Dry         E    7        1      AA     F
## 2             15 5-Jun 157   Toolik   Dry         E    8        1      AA     F
## 3             17 5-Jun 157   Toolik   Dry         C    4        1      AA     F
## 4             18 5-Jun 157   Toolik   Dry         C    6        1      AA     F
## 5             19 5-Jun 157   Toolik Moist         E    2        1      BN    DS
## 6             20 5-Jun 157   Toolik Moist         E    5        1      BN    DS
## 7             21 5-Jun 157   Toolik Moist         E    8        1      BN    DS
## 8             23 5-Jun 157   Toolik Moist         C    4        1      EV    GS
## 9             13 5-Jun 157   Toolik   Dry         E    3        0    <NA>  <NA>
## 10            16 5-Jun 157   Toolik   Dry         C    1        0    <NA>  <NA>

Flowering calculations

print_kable = function(x) {
  print(kable_print_output <<- x)
  cat('\n')
}
set.seed(673)
for(growth in c("F", "ES", "DS", "GS", "All")){
  if(growth == "All"){
    phenology0 <- phenology1
    all_sp <- levels(factor(phenology0$Species))
    sp <- setdiff(all_sp, exclude)
  } else {
    phenology0 <- subset(phenology1, phenology1$Group == growth)
    all_sp <- levels(factor(phenology0$Species))
    sp <- setdiff(all_sp, exclude)
  }
  firstC_median <- NA
  firstC_mean <- NA
  firstE_median <- NA
  firstE_mean <- NA
  first_pval <- numeric(length(sp))
  first_Z <- numeric(length(sp))
  firstC <- list(length(sp))
  firstE <- list(length(sp))
  nC <- integer(length(sp))
  nE <- integer(length(sp))
  
  lastC_median <- NA
  lastC_mean <- NA
  lastE_median <- NA
  lastE_mean <- NA
  last_pval <- numeric(length(sp))
  last_Z <- numeric(length(sp))
  lastC <- list(length(sp))
  lastE <- list(length(sp))
  
  durC_median <- NA
  durC_mean <- NA
  durE_median <- NA
  durE_mean <- NA
  dur_pval <- numeric(length(sp))
  dur_Z <- numeric(length(sp))
  durC <- list(length(sp))
  durE <- list(length(sp))
  
  for(j in 1:length(sp)){
    
    data <- subset(phenology0, phenology0$Species == sp[j])
    
    ########### Control plots ##########
    
    firstC[[j]] <- NA
    lastC[[j]] <- NA
    durC[[j]] <- NA
    aux <- subset(data, 
                  data$Location == "Imnavait"
                  & data$Site == "Dry"
                  & data$Treatment == "C")
    if(nrow(aux) > 0){
      u <- unique(aux$Plot)
      for(i in 1:length(u)){
        w <- which(aux$Plot == u[i])
        firstC[[j]] <- c(firstC[[j]], aux$Day[w[1]])
        lastC[[j]] <- c(lastC[[j]], aux$Day[w[length(w)]])
      }
    }
    
    aux <- subset(data, 
                  data$Location == "Imnavait"
                  & data$Site == "Moist"
                  & data$Treatment == "C")
    if(nrow(aux) > 0){
      u <- unique(aux$Plot)
      for(i in 1:length(u)){
        w <- which(aux$Plot == u[i])
        firstC[[j]] <- c(firstC[[j]], aux$Day[w[1]])
        lastC[[j]] <- c(lastC[[j]], aux$Day[w[length(w)]])
      }
    }
    
    aux <- subset(data, 
                  data$Location == "Toolik"
                  & data$Site == "Dry"
                  & data$Treatment == "C")
    if(nrow(aux) > 0){
      u <- unique(aux$Plot)
      for(i in 1:length(u)){
        w <- which(aux$Plot == u[i])
        firstC[[j]] <- c(firstC[[j]], aux$Day[w[1]])
        lastC[[j]] <- c(lastC[[j]], aux$Day[w[length(w)]])
      }
    }
    
    aux <- subset(data, 
                  data$Location == "Toolik"
                  & data$Site == "Moist"
                  & data$Treatment == "C")
    if(nrow(aux) > 0){
      u <- unique(aux$Plot)
      for(i in 1:length(u)){
        w <- which(aux$Plot == u[i])
        firstC[[j]] <- c(firstC[[j]], aux$Day[w[1]])
        lastC[[j]] <- c(lastC[[j]], aux$Day[w[length(w)]])
      }
    }
    
    firstC[[j]] <- firstC[[j]][-1]
    lastC[[j]] <- lastC[[j]][-1]
    durC[[j]] <- lastC[[j]] - firstC[[j]]
    
    ########### Experimental plots ##########
    
    firstE[[j]] <- NA
    lastE[[j]] <- NA
    durE[[j]] <- NA
    aux <- subset(data, 
                  data$Location == "Imnavait"
                  & data$Site == "Dry"
                  & data$Treatment == "E")
    if(nrow(aux) > 0){
      u <- unique(aux$Plot)
      for(i in 1:length(u)){
        w <- which(aux$Plot == u[i])
        firstE[[j]] <- c(firstE[[j]], aux$Day[w[1]])
        lastE[[j]] <- c(lastE[[j]], aux$Day[w[length(w)]])
      }
    }
    
    aux <- subset(data, 
                  data$Location == "Imnavait"
                  & data$Site == "Moist"
                  & data$Treatment == "E")
    if(nrow(aux) > 0){
      u <- unique(aux$Plot)
      for(i in 1:length(u)){
        w <- which(aux$Plot == u[i])
        firstE[[j]] <- c(firstE[[j]], aux$Day[w[1]])
        lastE[[j]] <- c(lastE[[j]], aux$Day[w[length(w)]])
      }
    }
    
    aux <- subset(data, 
                  data$Location == "Toolik"
                  & data$Site == "Dry"
                  & data$Treatment == "E")
    if(nrow(aux) > 0){
      u <- unique(aux$Plot)
      for(i in 1:length(u)){
        w <- which(aux$Plot == u[i])
        firstE[[j]] <- c(firstE[[j]], aux$Day[w[1]])
        lastE[[j]] <- c(lastE[[j]], aux$Day[w[length(w)]])
      }
    }
    
    aux <- subset(data, 
                  data$Location == "Toolik"
                  & data$Site == "Moist"
                  & data$Treatment == "E")
    if(nrow(aux) > 0){
      u <- unique(aux$Plot)
      for(i in 1:length(u)){
        w <- which(aux$Plot == u[i])
        firstE[[j]] <- c(firstE[[j]], aux$Day[w[1]])
        lastE[[j]] <- c(lastE[[j]], aux$Day[w[length(w)]])
      }
    }
    
    firstE[[j]] <- firstE[[j]][-1]
    lastE[[j]] <- lastE[[j]][-1]
    durE[[j]] <- lastE[[j]] - firstE[[j]]
    
    firstC_median <- c(firstC_median, median(firstC[[j]], na.rm = T))
    firstC_mean <- c(firstC_mean, mean(firstC[[j]], na.rm = T))
    firstE_median <- c(firstE_median, median(firstE[[j]], na.rm = T))
    firstE_mean <- c(firstE_mean, mean(firstE[[j]], na.rm = T))
    lastC_median <- c(lastC_median, median(lastC[[j]], na.rm = T))
    lastC_mean <- c(lastC_mean, mean(lastC[[j]], na.rm = T))
    lastE_median <- c(lastE_median, median(lastE[[j]], na.rm = T))
    lastE_mean <- c(lastE_mean, mean(lastE[[j]], na.rm = T))
    durC_median <- c(durC_median, median(durC[[j]], na.rm = T))
    durC_mean <- c(durC_mean, mean(durC[[j]], na.rm = T))
    durE_median <- c(durE_median, median(durE[[j]], na.rm = T))
    durE_mean <- c(durE_mean, mean(durE[[j]], na.rm = T))
    
    nC[j] <- length(firstC[[j]])
    nE[j] <- length(firstE[[j]])
    
    if(nC[j] >= 1 & nE[j] >= 1){
      
      wtF <- wilcox_test(c(firstC[[j]], firstE[[j]]) ~ factor(rep(c("C","E"), c(length(firstC[[j]]), length(firstE[[j]])))), distribution = "exact")
      first_pval[j] <- pvalue(wtF)
      first_Z[j] <- statistic(wtF)
      
      wtL <- wilcox_test(c(lastC[[j]], lastE[[j]]) ~ factor(rep(c("C","E"), c(length(lastC[[j]]), length(lastE[[j]])))), distribution = "exact")
      last_pval[j] <- pvalue(wtL)
      last_Z[j] <- statistic(wtL)
      
      wtD <- wilcox_test(c(durC[[j]], durE[[j]]) ~ factor(rep(c("C","E"), c(length(durC[[j]]), length(durE[[j]])))), distribution = "exact")
      dur_pval[j] <- pvalue(wtD)
      dur_Z[j] <- statistic(wtD)
      
    } else {
      first_pval[j] <- NA
      first_Z[j] <- NA
      last_pval[j] <- NA
      last_Z[j] <- NA
      dur_pval[j] <- NA
      dur_Z[j] <- NA
    }
  }
  names(firstC) <- sp; names(firstE) <- sp;
  names(lastC) <- sp; names(lastE) <- sp;
  names(durC) <- sp; names(durE) <- sp;
  
  firstC_median <- firstC_median[-1]
  firstE_median <- firstE_median[-1]
  lastC_median <- lastC_median[-1]
  lastE_median <- lastE_median[-1]
  durC_median <- durC_median[-1]
  durE_median <- durE_median[-1]
  
  firstC_mean <- firstC_mean[-1]
  firstE_mean <- firstE_mean[-1]
  lastC_mean <- lastC_mean[-1]
  lastE_mean <- lastE_mean[-1]
  durC_mean <- durC_mean[-1]
  durE_mean <- durE_mean[-1]
  
  # Save lists as text files
  capture.output(firstC, file = paste0(growth, "_",   "firstC.txt"))
  capture.output(firstE, file = paste0(growth, "_", "firstE.txt"))
  capture.output(lastC, file = paste0(growth, "_",   "lastC.txt"))
  capture.output(lastE, file = paste0(growth, "_", "lastE.txt"))
  capture.output(durC, file = paste0(growth, "_",   "durC.txt"))
  capture.output(durE, file = paste0(growth, "_", "durE.txt"))
  
  firstC_all <- unlist(firstC)
  firstE_all <- unlist(firstE)
  lastC_all <- unlist(lastC)
  lastE_all <- unlist(lastE)
  durC_all <- unlist(durC)
  durE_all <- unlist(durE)
  
  if((length(firstC_all) > 60) & (length(firstE_all)) > 60){
    dist <- "approximate"
  } else {dist <- "exact"}
  
  wtF <- wilcox_test(c(firstC_all, firstE_all) ~ factor(rep(c("C","E"), c(length(firstC_all), length(firstE_all)))), distribution = dist)
  
  wtL <- wilcox_test(c(lastC_all, lastE_all) ~ factor(rep(c("C","E"), c(length(lastC_all), length(lastE_all)))), distribution = dist)
  
  wtD <- wilcox_test(c(durC_all, durE_all) ~ factor(rep(c("C","E"), c(length(durC_all), length(durE_all)))), distribution = dist)
  
  summaries <- data.frame(Species = sp, firstC_median = firstC_median, firstC_mean = firstC_mean, firstE_median = firstE_median, firstE_mean = firstE_mean, diff_first_median = firstC_median - firstE_median, diff_first_mean = firstC_mean - firstE_mean, first_Z = first_Z, first_pval = first_pval, lastC_median = lastC_median, lastC_mean = lastC_mean, lastE_median = lastE_median, lastE_mean = lastE_mean, diff_last_median = lastC_median - lastE_median, diff_last_mean = lastC_mean - lastE_mean, last_Z = last_Z, last_pval = last_pval, durC_median = durC_median, durC_mean = durC_mean, durE_median = durE_median, durE_mean = durE_mean, diff_dur_median = durC_median - durE_median, diff_dur_mean = durC_mean - durE_mean, dur_Z = dur_Z, dur_pval = dur_pval, nC = nC, nE = nE)
  aux <- c(median(firstC_all, na.rm = T),
           mean(firstC_all, na.rm = T),
           median(firstE_all, na.rm = T),
           mean(firstE_all, na.rm = T),
           median(firstC_all, na.rm = T) - median(firstE_all, na.rm = T),
           mean(firstC_all, na.rm = T) - mean(firstE_all, na.rm = T),
           statistic(wtF),
           pvalue(wtF),
           median(lastC_all, na.rm = T),
           mean(lastC_all, na.rm = T),
           median(lastE_all, na.rm = T),
           mean(lastE_all, na.rm = T),
           median(lastC_all, na.rm = T) - median(lastE_all, na.rm = T),
           mean(lastC_all, na.rm = T) - mean(lastE_all, na.rm = T),
           statistic(wtL),
           pvalue(wtL),
           median(durC_all, na.rm = T),
           mean(durC_all, na.rm = T),
           median(durE_all, na.rm = T),
           mean(durE_all, na.rm = T),
           median(durC_all, na.rm = T) - median(durE_all, na.rm = T),
           mean(durC_all, na.rm = T) - mean(durE_all, na.rm = T),
           statistic(wtD),
           pvalue(wtD),
           length(firstC_all),
           length(firstE_all)
  )
  summaries <- rbind(summaries, c(NA, aux))
  summaries$Species[length(summaries$Species)] <- "All"
  write_csv(summaries, paste0(getwd(),"/summaries_", growth, ".csv"))
  
  table <- knitr::kable(summaries, format = "html", 
                        booktabs = TRUE,
                        caption = paste("Summaries for", growth),
                        digits = 4
)
  print(kableExtra::kable_styling(kableExtra::scroll_box(table, width = "100%", height = "100%")))
  cat("\n")
  
  # considering each species as an observation
  
  #wilcoxsign_test(firstC_median ~ firstE_median, distribution = dist)
  #wilcoxsign_test(firstC_mean ~ firstE_mean, distribution = dist)
  
  #wilcoxsign_test(lastC_median ~ lastE_median, distribution = dist)
  #wilcoxsign_test(lastC_mean ~ lastE_mean, distribution = dist)
  
  #wilcoxsign_test(durC_median ~ durE_median, distribution = dist)
  #wilcoxsign_test(durC_mean ~ durE_mean, distribution = dist)
}
Summaries for F
Species firstC_median firstC_mean firstE_median firstE_mean diff_first_median diff_first_mean first_Z first_pval lastC_median lastC_mean lastE_median lastE_mean diff_last_median diff_last_mean last_Z last_pval durC_median durC_mean durE_median durE_mean diff_dur_median diff_dur_mean dur_Z dur_pval nC nE
AA 158 157.6000 157.5 157.5000 0.5 0.1000 0.2828 1.0000 164.0 165.0000 169.5 171.7500 -5.5 -6.750 -1.9846 0.0556 7.0 7.4000 12 14.2500 -5.0 -6.8500 -2.3368 0.0238 5 4
DO 161 161.3333 165.0 164.3333 -4.0 -3.0000 -1.7979 0.2000 173.0 171.6667 173.0 174.6667 0.0 -3.000 -0.6956 0.7000 11.0 10.3333 10 10.3333 1.0 0.0000 0.0000 1.0000 3 3
PL 179 179.2500 174.0 173.0000 5.0 6.2500 2.0837 0.0857 185.5 187.2500 185.5 185.0000 0.0 2.250 0.5808 0.6286 7.0 8.0000 12 12.0000 -5.0 -4.0000 -1.7425 0.0857 4 4
RC 168 168.0000 167.5 171.0000 0.5 -3.0000 0.0000 1.0000 182.0 182.0000 185.0 185.5000 -3.0 -3.500 -0.9258 0.5333 14.0 14.0000 14 14.5000 0.0 -0.5000 0.0000 1.0000 2 4
All 162 166.0714 165.0 166.6000 -3.0 -0.5286 -0.2852 0.7871 173.5 175.2143 180.0 179.5333 -6.5 -4.319 -1.2024 0.2375 8.5 9.1429 11 12.9333 -2.5 -3.7905 -2.3456 0.0178 14 15
Summaries for ES
Species firstC_median firstC_mean firstE_median firstE_mean diff_first_median diff_first_mean first_Z first_pval lastC_median lastC_mean lastE_median lastE_mean diff_last_median diff_last_mean last_Z last_pval durC_median durC_mean durE_median durE_mean diff_dur_median diff_dur_mean dur_Z dur_pval nC nE
AP 168.0 168.6667 192 189.6667 -24.0 -21.0000 -1.3284 0.3000 187.0 183.3333 218.0 208.0000 -31.0 -24.6667 -1.0911 0.4000 13.0 14.6667 15 18.3333 -2.0 -3.6667 -1.0911 0.4000 3 3
CT 162.5 162.5000 164 164.5000 -1.5 -2.0000 -1.6686 0.2667 176.0 176.0000 180.5 179.0000 -4.5 -3.0000 -0.9393 0.4667 13.5 13.5000 15 14.5000 -1.5 -1.0000 -0.9393 0.4667 2 4
KP 161.0 161.0000 165 165.0000 -4.0 -4.0000 -1.6330 0.3333 174.5 174.5000 182.0 182.0000 -7.5 -7.5000 -1.5492 0.3333 13.5 13.5000 17 17.0000 -3.5 -3.5000 -1.6330 0.3333 2 2
LP 166.0 167.3333 169 169.5000 -3.0 -2.1667 -0.9001 0.4286 179.0 175.6667 179.5 179.5000 -0.5 -3.8333 0.0000 1.0000 12.0 8.3333 9 10.0000 3.0 -1.6667 0.0000 1.0000 3 4
VU 166.0 166.6667 164 162.6667 2.0 4.0000 1.3284 0.3000 176.0 177.0000 178.0 176.0000 -2.0 1.0000 -0.2214 1.0000 12.0 10.3333 13 13.3333 -1.0 -3.0000 -0.6547 0.7000 3 3
VVI 169.0 170.5556 168 170.2727 1.0 0.2828 0.2669 0.8117 196.0 193.1111 196.0 194.1818 0.0 -1.0707 -0.2297 0.8376 19.0 22.5556 24 23.9091 -5.0 -1.3535 -0.4951 0.6414 9 11
All 166.0 167.7273 167 170.2222 -1.0 -2.4949 -0.5444 0.5928 184.5 183.9545 184.0 188.3704 0.5 -4.4158 -0.9259 0.3604 13.5 16.2273 17 18.1481 -3.5 -1.9209 -0.8556 0.3984 22 27
Summaries for DS
Species firstC_median firstC_mean firstE_median firstE_mean diff_first_median diff_first_mean first_Z first_pval lastC_median lastC_mean lastE_median lastE_mean diff_last_median diff_last_mean last_Z last_pval durC_median durC_mean durE_median durE_mean diff_dur_median diff_dur_mean dur_Z dur_pval nC nE
BN 170 170.0000 157.5 163.8333 12.5 6.1667 1.0377 0.7143 207.0 207.0000 196.0 196.000 11.0 11.0000 1.0000 0.5714 37.0 37.0000 34 32.1667 3.0 4.8333 0.0000 1.0000 1 6
SP 158 165.3333 171.5 171.5000 -13.5 -6.1667 -0.5774 0.8000 168.0 180.6667 184.5 184.500 -16.5 -3.8333 -0.5774 0.8000 11.0 15.3333 13 13.0000 -2.0 2.3333 0.0000 1.0000 3 2
All 164 166.5000 160.5 165.7500 3.5 0.7500 0.3464 0.7899 187.5 187.2500 190.5 193.125 -3.0 -5.8750 -0.3397 0.8081 21.5 20.7500 25 27.3750 -3.5 -6.6250 -0.8492 0.4606 4 8
Summaries for GS
Species firstC_median firstC_mean firstE_median firstE_mean diff_first_median diff_first_mean first_Z first_pval lastC_median lastC_mean lastE_median lastE_mean diff_last_median diff_last_mean last_Z last_pval durC_median durC_mean durE_median durE_mean diff_dur_median diff_dur_mean dur_Z dur_pval nC nE
CB 163 163 161.5 161.5 1.5 1.5 1.6330 0.3333 174.5 174.50 201.0 201.00 -26.5 -26.5 -0.7746 0.6667 11.5 11.50 39.5 39.50 -28.0 -28.0 -0.7746 0.6667 2 2
HA 163 163 168.5 168.5 -5.5 -5.5 -1.5492 0.3333 192.0 192.00 200.5 200.50 -8.5 -8.5 -0.7746 0.6667 29.0 29.00 32.0 32.00 -3.0 -3.0 0.0000 1.0000 2 2
All 163 163 163.5 165.0 -0.5 -2.0 -0.1461 0.9714 181.5 183.25 200.5 200.75 -19.0 -17.5 -1.0164 0.4000 18.0 20.25 33.5 35.75 -15.5 -15.5 -0.5774 0.6857 4 4
Summaries for All
Species firstC_median firstC_mean firstE_median firstE_mean diff_first_median diff_first_mean first_Z first_pval lastC_median lastC_mean lastE_median lastE_mean diff_last_median diff_last_mean last_Z last_pval durC_median durC_mean durE_median durE_mean diff_dur_median diff_dur_mean dur_Z dur_pval nC nE
AA 158.0 157.6000 157.5 157.5000 0.5 0.1000 0.2828 1.0000 164.0 165.0000 169.5 171.7500 -5.5 -6.7500 -1.9846 0.0556 7.0 7.4000 12.0 14.2500 -5.0 -6.8500 -2.3368 0.0238 5 4
AP 168.0 168.6667 192.0 189.6667 -24.0 -21.0000 -1.3284 0.3000 187.0 183.3333 218.0 208.0000 -31.0 -24.6667 -1.0911 0.4000 13.0 14.6667 15.0 18.3333 -2.0 -3.6667 -1.0911 0.4000 3 3
BN 170.0 170.0000 157.5 163.8333 12.5 6.1667 1.0377 0.7143 207.0 207.0000 196.0 196.0000 11.0 11.0000 1.0000 0.5714 37.0 37.0000 34.0 32.1667 3.0 4.8333 0.0000 1.0000 1 6
CB 163.0 163.0000 161.5 161.5000 1.5 1.5000 1.6330 0.3333 174.5 174.5000 201.0 201.0000 -26.5 -26.5000 -0.7746 0.6667 11.5 11.5000 39.5 39.5000 -28.0 -28.0000 -0.7746 0.6667 2 2
CT 162.5 162.5000 164.0 164.5000 -1.5 -2.0000 -1.6686 0.2667 176.0 176.0000 180.5 179.0000 -4.5 -3.0000 -0.9393 0.4667 13.5 13.5000 15.0 14.5000 -1.5 -1.0000 -0.9393 0.4667 2 4
DO 161.0 161.3333 165.0 164.3333 -4.0 -3.0000 -1.7979 0.2000 173.0 171.6667 173.0 174.6667 0.0 -3.0000 -0.6956 0.7000 11.0 10.3333 10.0 10.3333 1.0 0.0000 0.0000 1.0000 3 3
HA 163.0 163.0000 168.5 168.5000 -5.5 -5.5000 -1.5492 0.3333 192.0 192.0000 200.5 200.5000 -8.5 -8.5000 -0.7746 0.6667 29.0 29.0000 32.0 32.0000 -3.0 -3.0000 0.0000 1.0000 2 2
KP 161.0 161.0000 165.0 165.0000 -4.0 -4.0000 -1.6330 0.3333 174.5 174.5000 182.0 182.0000 -7.5 -7.5000 -1.5492 0.3333 13.5 13.5000 17.0 17.0000 -3.5 -3.5000 -1.6330 0.3333 2 2
LP 166.0 167.3333 169.0 169.5000 -3.0 -2.1667 -0.9001 0.4286 179.0 175.6667 179.5 179.5000 -0.5 -3.8333 0.0000 1.0000 12.0 8.3333 9.0 10.0000 3.0 -1.6667 0.0000 1.0000 3 4
PL 179.0 179.2500 174.0 173.0000 5.0 6.2500 2.0837 0.0857 185.5 187.2500 185.5 185.0000 0.0 2.2500 0.5808 0.6286 7.0 8.0000 12.0 12.0000 -5.0 -4.0000 -1.7425 0.0857 4 4
RC 168.0 168.0000 167.5 171.0000 0.5 -3.0000 0.0000 1.0000 182.0 182.0000 185.0 185.5000 -3.0 -3.5000 -0.9258 0.5333 14.0 14.0000 14.0 14.5000 0.0 -0.5000 0.0000 1.0000 2 4
SP 158.0 165.3333 171.5 171.5000 -13.5 -6.1667 -0.5774 0.8000 168.0 180.6667 184.5 184.5000 -16.5 -3.8333 -0.5774 0.8000 11.0 15.3333 13.0 13.0000 -2.0 2.3333 0.0000 1.0000 3 2
VU 166.0 166.6667 164.0 162.6667 2.0 4.0000 1.3284 0.3000 176.0 177.0000 178.0 176.0000 -2.0 1.0000 -0.2214 1.0000 12.0 10.3333 13.0 13.3333 -1.0 -3.0000 -0.6547 0.7000 3 3
VVI 169.0 170.5556 168.0 170.2727 1.0 0.2828 0.2669 0.8117 196.0 193.1111 196.0 194.1818 0.0 -1.0707 -0.2297 0.8376 19.0 22.5556 24.0 23.9091 -5.0 -1.3535 -0.4951 0.6414 9 11
All 165.5 166.6591 166.0 168.1667 -0.5 -1.5076 -0.5690 0.5722 181.0 181.4091 183.5 187.5370 -2.5 -6.1279 -1.7581 0.0790 12.5 14.7500 15.0 19.3704 -2.5 -4.6204 -2.0096 0.0443 44 54