From c8e71d867b4f97c6c1f8cae30e1277294e784278 Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Wed, 13 May 2026 16:39:06 -0400 Subject: [PATCH 01/26] added ped_cleaner module and added .css --- .DS_Store | Bin 6148 -> 14340 bytes R/app_server.R | 6 +- R/app_ui.R | 50 +++- R/mod_diversity.R | 640 ---------------------------------------- R/mod_ped_cleaner.R | 427 +++++++++++++++++++++++++++ app/www/.DS_Store | Bin 0 -> 6148 bytes inst/app/.DS_Store | Bin 6148 -> 10244 bytes inst/app/www/custom.css | 451 ++++++++++++++++++++++++++++ inst/app/www/custom.js | 45 +++ 9 files changed, 965 insertions(+), 654 deletions(-) delete mode 100644 R/mod_diversity.R create mode 100644 R/mod_ped_cleaner.R create mode 100644 app/www/.DS_Store create mode 100644 inst/app/www/custom.css create mode 100644 inst/app/www/custom.js diff --git a/.DS_Store b/.DS_Store index 4adddbe29332682b2dacc21050b33b12dd58f336..a3682aa74badf41e294fc33040b3af1b2b7fe28d 100644 GIT binary patch literal 14340 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"), tabName = "polybreedtools", icon = icon("chart-column")), + menuItem("SNMF", tabName = "snmf", icon = icon("list-ol")), tags$li(class = "header", style = "color: grey; margin-top: 18px; margin-bottom: 10px; padding-left: 15px;", "Information"), - menuItem("Source Code", icon = icon("circle-info"), href = "https://www.github.com/Breeding-Insight/Genomics_Shiny_App"), + menuItem("Source Code", icon = icon("circle-info"), href = "https://github.com/Breeding-Insight/familia"), #menuItem( # span("Job Queue", bs4Badge("demo", position = "right", color = "warning")), # tabName = "slurm", @@ -113,13 +122,13 @@ app_ui <- function(request) { tabName = "welcome", mod_Home_ui("Home_1") ), tabItem( - tabName = "polybreedtools", mod_polybreedtools_ui("PolyBreedTools_1") + tabName = "ped_cleaner", mod_ped_cleaner_ui("ped_cleaner_1") # ADD THIS ), tabItem( - tabName = "snmf", mod_SNMF_ui("SNMF_1") + tabName = "polybreedtools", mod_polybreedtools_ui("PolyBreedTools_1") ), tabItem( - tabName = "diversity", mod_diversity_ui("diversity_1") + tabName = "snmf", mod_SNMF_ui("SNMF_1") ), tabItem( tabName = "help", mod_help_ui("help_1") @@ -143,14 +152,33 @@ golem_add_external_resources <- function() { "www", app_sys("app/www") ) - + tags$head( favicon(), bundle_resources( path = app_sys("app/www"), app_title = "familia" - ) + ), # Add here other external resources # for example, you can add shinyalert::useShinyalert() + tags$style(HTML(" + /* Ensure box collapse/expand buttons are always on top */ + .card-tools { position: relative; z-index: 10; } + /* Make collapse/expand icons visible on white box headers */ + .card-tools .btn-tool { color: #495057 !important; } + .card-tools .btn-tool:hover { color: #212529 !important; } + ")), + tags$script(HTML(" + $(document).ready(function() { + // On page load: mirror active class from
  • onto for CSS targeting + $('#cnv_1-sample_select_tabs li.active > a').addClass('active'); + + // After each tab switch (content already swapped): sync active on only + $(document).on('shown.bs.tab', '#cnv_1-sample_select_tabs a[data-toggle=\"tab\"]', function(e) { + $('#cnv_1-sample_select_tabs a[data-toggle=\"tab\"]').removeClass('active'); + $(e.target).addClass('active'); + }); + }); + ")) ) } diff --git a/R/mod_diversity.R b/R/mod_diversity.R deleted file mode 100644 index 1e78944..0000000 --- a/R/mod_diversity.R +++ /dev/null @@ -1,640 +0,0 @@ -#' diversity UI Function -#' -#' @description A shiny Module. -#' -#' @param id,input,output,session Internal parameters for {shiny}. -#' -#' @noRd -#' -#' @importFrom shiny NS tagList -#' @import shinydisconnect -mod_diversity_ui <- function(id){ - ns <- NS(id) - tagList( - # Add GWAS content here - fluidRow( - disconnectMessage( - text = "An unexpected error occurred, please reload the application and check the input file(s).", - refresh = "Reload now", - background = "white", - colour = "grey", - overlayColour = "grey", - overlayOpacity = 0.3, - refreshColour = "purple" - ), - column(width = 3, - box(title="Inputs", width = 12, collapsible = TRUE, collapsed = FALSE, status = "info", solidHeader = TRUE, - fileInput(ns("diversity_file"), "Choose VCF File", accept = c(".csv",".vcf",".gz")), - numericInput(ns("diversity_ploidy"), "Species Ploidy", min = 1, value = NULL), - actionButton(ns("diversity_start"), "Run Analysis"), - div(style="display:inline-block; float:right",dropdownButton( - HTML("Input files"), - p(downloadButton(ns('download_vcf'),""), "VCF Example File"), - p(HTML("Parameters description:"), actionButton(ns("goPar"), icon("arrow-up-right-from-square", verify_fa = FALSE) )), hr(), - p(HTML("Results description:"), actionButton(ns("goRes"), icon("arrow-up-right-from-square", verify_fa = FALSE) )), hr(), - p(HTML("How to cite:"), actionButton(ns("goCite"), icon("arrow-up-right-from-square", verify_fa = FALSE) )), hr(), - actionButton(ns("diversity_summary"), "Summary"), - circle = FALSE, - status = "warning", - icon = icon("info"), width = "300px", - tooltip = tooltipOptions(title = "Click to see info!") - )) - ), - box(title = "Plot Controls", width=12, status = "warning", solidHeader = TRUE, collapsible = TRUE, - sliderInput(ns("hist_bins"),"Histogram Bins", min = 1, max = 200, value = c(20), step = 1), - div(style="display:inline-block; float:left",dropdownButton( - tags$h3("Save Image"), - selectInput(inputId = ns('div_figure'), label = 'Figure', choices = c("Dosage Plot", - "MAF Histogram", - "OHet Histogram", - "Marker Plot")), - selectInput(inputId = ns('div_image_type'), label = 'File Type', choices = c("jpeg","tiff","png","svg"), selected = "jpeg"), - sliderInput(inputId = ns('div_image_res'), label = 'Resolution', value = 300, min = 50, max = 1000, step=50), - sliderInput(inputId = ns('div_image_width'), label = 'Width', value = 8, min = 1, max = 20, step=0.5), - sliderInput(inputId = ns('div_image_height'), label = 'Height', value = 5, min = 1, max = 20, step = 0.5), - fluidRow( - downloadButton(ns("download_div_figure"), "Save Image"), - downloadButton(ns("download_div_file"), "Save Files")), - circle = FALSE, - status = "danger", - icon = icon("floppy-disk"), width = "300px", label = "Save", - tooltip = tooltipOptions(title = "Click to see inputs!") - )) - ) - ), - column(width = 6, - box( - title = "Plots", status = "info", solidHeader = FALSE, width = 12, height = 550, maximizable = T, - bs4Dash::tabsetPanel( - id = ns('diversity_plot_tabs'), - type = "tabs", - tabPanel( - "Dosage Plot", - div( - plotOutput(ns('dosage_plot'), height = "420px"), # Adjusted height - uiOutput(ns('dosage_text')) # Text placeholder directly below plot - ), - style = "overflow-y: auto; height: 500px" - ), - tabPanel("MAF Plot", plotOutput(ns('maf_plot')),style = "overflow-y: auto; height: 500px"), - tabPanel("OHet Plot", plotOutput(ns('het_plot')),style = "overflow-y: auto; height: 500px"), - tabPanel("Marker Plot", plotOutput(ns('marker_plot')),style = "overflow-y: auto; height: 500px"), #Can this be an interactive plotly? - tabPanel("Sample Table", DT::DTOutput(ns('sample_table')),style = "overflow-y: auto; height: 470px"), - tabPanel("SNP Table", DT::DTOutput(ns('snp_table')),style = "overflow-y: auto; height: 470px") - ) - ) - ), - column(width = 3, - bs4Dash::valueBoxOutput(ns("mean_het_box"), width = NULL), - bs4Dash::valueBoxOutput(ns("mean_maf_box"), width = NULL), - box(title = "Status", width = 12, collapsible = TRUE, status = "info", - progressBar(id = ns("pb_diversity"), value = 0, status = "info", display_pct = TRUE, striped = TRUE, title = " ") - ) - ) - ) - ) -} - -#' diversity Server Functions -#' -#' @importFrom graphics axis hist points -#' @import ggplot2 -#' @importFrom scales comma_format -#' -#' @noRd -mod_diversity_server <- function(input, output, session, parent_session){ - - ns <- session$ns - - - # Help links - observeEvent(input$goPar, { - # change to help tab - updatebs4TabItems(session = parent_session, inputId = "MainMenu", - selected = "help") - - # select specific tab - updateTabsetPanel(session = parent_session, inputId = "Genomic_Diversity_tabset", - selected = "Genomic_Diversity_par") - # expand specific box - updateBox(id = "Genomic_Diversity_box", action = "toggle", session = parent_session) - }) - - observeEvent(input$goRes, { - # change to help tab - updatebs4TabItems(session = parent_session, inputId = "MainMenu", - selected = "help") - - # select specific tab - updateTabsetPanel(session = parent_session, inputId = "Genomic_Diversity_tabset", - selected = "Genomic_Diversity_results") - # expand specific box - updateBox(id = "Genomic_Diversity_box", action = "toggle", session = parent_session) - }) - - observeEvent(input$goCite, { - # change to help tab - updatebs4TabItems(session = parent_session, inputId = "MainMenu", - selected = "help") - - # select specific tab - updateTabsetPanel(session = parent_session, inputId = "Genomic_Diversity_tabset", - selected = "Genomic_Diversity_cite") - # expand specific box - updateBox(id = "Genomic_Diversity_box", action = "toggle", session = parent_session) - }) - - ##UI text - output$dosage_text <- renderUI({ - # Check if input$plot_tabs is NULL before evaluating it - if (is.null(input$diversity_plot_tabs)) { - return(NULL) - } - - # Render the text only for the "Dosage Plot" tab - if (input$diversity_plot_tabs == "Dosage Plot" && !is.null(diversity_items$dosage_df)) { - div( - style = "color: grey; text-align: left; margin-top: 3px;", - "Note: 0 = homozygous reference" - ) - } else { - NULL # Do not render anything for other tabs - } - }) - - #######Genomic Diversity analysis - - #Genomic Diversity output files - diversity_items <- reactiveValues( - diversity_df = NULL, - dosage_df = NULL, - het_df = NULL, - maf_df = NULL, - pos_df = NULL, - markerPlot = NULL, - snp_stats = NULL - ) - - #Reactive boxes - output$mean_het_box <- renderValueBox({ - valueBox( - value = 0, - subtitle = "Mean Heterozygosity", - icon = icon("dna"), - color = "info" - ) - }) - - output$mean_maf_box <- renderValueBox({ - valueBox( - value = 0, - subtitle = "Mean MAF", - icon = icon("dna"), - color = "info" - ) - }) - - observeEvent(input$diversity_start, { - toggleClass(id = "diversity_ploidy", class = "borderred", condition = (is.na(input$diversity_ploidy) | is.null(input$diversity_ploidy))) - #toggleClass(id = "zero_value", class = "borderred", condition = (is.na(input$zero_value) | is.null(input$zero_value))) - - if (is.null(input$diversity_file$datapath)) { - shinyalert( - title = "Missing input!", - text = "Upload VCF File", - size = "s", - closeOnEsc = TRUE, - closeOnClickOutside = FALSE, - html = TRUE, - type = "error", - showConfirmButton = TRUE, - confirmButtonText = "OK", - confirmButtonCol = "#004192", - showCancelButton = FALSE, - animation = TRUE - ) - } - req(input$diversity_file, input$diversity_ploidy) - - #Input variables (need to add support for VCF file) - ploidy <- as.numeric(input$diversity_ploidy) - geno <- input$diversity_file$datapath - - #Status - updateProgressBar(session = session, id = "pb_diversity", value = 20, title = "Importing VCF") - - #Import genotype information if in VCF format - #### VCF sanity check - checks <- vcf_sanity_check(geno) - - error_if_false <- c( - "VCF_header", "VCF_columns", "unique_FORMAT", "GT", - "samples", "chrom_info", "pos_info", "VCF_compressed" - ) - - error_if_true <- c( - "multiallelics", "phased_GT", "mixed_ploidies", - "duplicated_samples", "duplicated_markers" - ) - - warning_if_false <- c("ref_alt","max_markers") - - checks_result <- vcf_sanity_messages(checks, - error_if_false, - error_if_true, - warning_if_false = NULL, - warning_if_true = NULL, - input_ploidy = ploidy) - - if(checks_result) return() # Stop the analysis if checks fail - ######### - - vcf <- read.vcfR(geno, verbose = FALSE) - - #Save position information - diversity_items$pos_df <- data.frame(vcf@fix[, 1:2]) - - #Get items in FORMAT column - info <- vcf@gt[1,"FORMAT"] #Getting the first row FORMAT - - # Apply the function to the first INFO string - info_ids <- extract_info_ids(info[1]) - - #Status - updateProgressBar(session = session, id = "pb_diversity", value = 40, title = "Converting to Numeric") - - #Get the genotype values and convert to numeric format - #Extract GT and convert to numeric calls - geno_mat <- extract.gt(vcf, element = "GT") - geno_mat <- apply(geno_mat, 2, convert_to_dosage) - rm(vcf) #Remove VCF - - #print(class(geno_mat)) - #Convert genotypes to alternate counts if they are the reference allele counts - #Importantly, the dosage plot is based on the input format NOT the converted genotypes - is_reference <- FALSE #(input$zero_value == "Reference Allele Counts") - - #print("Genotype file successfully imported") - ######Get MAF plot (Need to remember that the VCF genotypes are likely set as 0 = homozygous reference, where the dosage report is 0 = homozygous alternate) - - #print("Starting percentage calc") - #Status - updateProgressBar(session = session, id = "pb_diversity", value = 70, title = "Calculating...") - # Calculate percentages for both genotype matrices - percentages1 <- calculate_percentages(geno_mat, ploidy) - # Combine the data matrices into a single data frame - percentages1_df <- as.data.frame(t(percentages1)) - percentages1_df$Data <- "Dosages" - # Assuming my_data is your dataframe - #print("Percentage Complete: melting dataframe") - melted_data <- percentages1_df %>% - pivot_longer(cols = -(Data),names_to = "Dosage", values_to = "Percentage") - - diversity_items$dosage_df <- melted_data - - print("Dosage calculations worked") - - #Convert the genotype calls prior to het,af, and maf calculation - geno_mat <- data.frame(convert_genotype_counts(df = geno_mat, ploidy = ploidy, is_reference), - check.names = FALSE) - - # Calculating heterozygosity - diversity_items$het_df <- calculate_heterozygosity(geno_mat, ploidy = ploidy) - - #print("Heterozygosity success") - diversity_items$maf_df <- calculateMAF(geno_mat, ploidy = ploidy) - diversity_items$maf_df <- diversity_items$maf_df[, c(1,3)] - - #Calculate PIC - calc_allele_frequencies <- function(d_diplo_t, ploidy) { - allele_frequencies <- apply(d_diplo_t, 1, function(x) { - count_sum <- sum(!is.na(x)) - allele_sum <- sum(x, na.rm = TRUE) - if (count_sum != 0) {allele_sum / (ploidy * count_sum)} else {NA} - }) - - all_allele_frequencies <- data.frame(SNP = rownames(d_diplo_t), p1= allele_frequencies, p2= 1-allele_frequencies) - return(all_allele_frequencies) - } - Fre <-calc_allele_frequencies(geno_mat,as.numeric(ploidy)) - calc_pic <- function(x) { - freq_squared <- x^2 - outer_matrix <- outer(freq_squared, freq_squared) - upper_tri_sum <- sum(outer_matrix[upper.tri(outer_matrix)]) - pic <- 1 - sum(freq_squared) - 2*upper_tri_sum - return(pic) - } - - print(Fre[1:5,]) - - PIC_results <- apply(Fre[, c("p1", "p2")], 1, calc_pic) - PIC_df <- data.frame(SNP_ID = Fre$SNP, PIC = PIC_results) - rownames(PIC_df) <- NULL - - print(PIC_df[1:5,]) - print(diversity_items$maf_df[1:5,]) - - diversity_items$snp_stats <- (merge(diversity_items$maf_df, PIC_df, by = "SNP_ID", all = TRUE))[,c("SNP_ID","MAF","PIC")] - colnames(diversity_items$snp_stats)[1] <- "SNP" - - #Updating value boxes - output$mean_het_box <- renderValueBox({ - valueBox( - value = round(mean(diversity_items$het_df$Ho),3), - subtitle = "Mean Heterozygosity", - icon = icon("dna"), - color = "info" - ) - }) - output$mean_maf_box <- renderValueBox({ - valueBox( - value = round(mean(diversity_items$maf_df$MAF),3), - subtitle = "Mean MAF", - icon = icon("dna"), - color = "info" - ) - }) - - #Status - updateProgressBar(session = session, id = "pb_diversity", value = 100, title = "Complete!") - }) - - box_plot <- reactive({ - validate( - need(!is.null(diversity_items$dosage_df), "Input VCF, define parameters and click `run analysis` to access results in this session.") - ) - - #Plotting - box <- ggplot(diversity_items$dosage_df, aes(x=Dosage, y=Percentage, fill=Data)) + - #geom_point(aes(color = Data), position = position_dodge(width = 0.8), width = 0.2, alpha = 0.5) + # Add jittered points - geom_boxplot(position = position_dodge(width = 0.8), alpha = 0.9) + - labs(x = "\nDosage", y = "Percentage\n", title = "Genotype Distribution by Sample") + - theme_bw() + - theme( - axis.text = element_text(size = 14), - axis.title = element_text(size = 14) - ) - - box - }) - - output$dosage_plot <- renderPlot({ - box_plot() - }) - - output$het_plot <- renderPlot({ - validate( - need(!is.null(diversity_items$het_df) & !is.null(input$hist_bins), "Input VCF, define parameters and click `run analysis` to access results in this session.") - ) - hist(diversity_items$het_df$Ho, breaks = as.numeric(input$hist_bins), col = "tan3", border = "black", xlim= c(0,1), - xlab = "Observed Heterozygosity", - ylab = "Number of Samples", - main = "Sample Observed Heterozygosity") - axis(1, at = seq(0, 1, by = 0.1), labels = TRUE) - }) - - #Marker plot - marker_plot <- reactive({ - validate( - need(!is.null(diversity_items$pos_df), "Input VCF, define parameters and click `run analysis` to access results in this session.") - ) - #Order the Chr column - diversity_items$pos_df$POS <- as.numeric(diversity_items$pos_df$POS) - # Sort the dataframe and pad with a 0 if only a single digit is provided - diversity_items$pos_df$CHROM <- ifelse( - nchar(diversity_items$pos_df$CHROM) == 1, - paste0("0", diversity_items$pos_df$CHROM), - diversity_items$pos_df$CHROM - ) - diversity_items$pos_df <- diversity_items$pos_df[order(diversity_items$pos_df$CHROM), ] - - #Plot - - # Create custom breaks for the x-axis labels (every 13Mb) - x_breaks <- seq(0, max(diversity_items$pos_df$POS), by = (max(diversity_items$pos_df$POS)/5)) - x_breaks <- c(x_breaks, max(diversity_items$pos_df$POS)) # Add 114Mb as a custom break - - # Create custom labels for the x-axis using the 'Mb' suffix - x_labels <- comma_format()(x_breaks / 1000000) - x_labels <- paste0(x_labels, "Mb") - - suppressWarnings({ - markerPlot <- ggplot(diversity_items$pos_df, aes(x = as.numeric(POS), y = CHROM, group = as.factor(CHROM))) + - geom_point(aes(color = as.factor(CHROM)), shape = 108, size = 5, show.legend = FALSE) + - xlab("Position") + - #ylab("Markers\n") + - theme(axis.text = element_text(size = 11, color = "black"), - axis.text.x.top = element_text(size = 11, color = "black"), - axis.title = element_blank(), - panel.grid = element_blank(), - axis.ticks.length.x = unit(-0.15, "cm"), - axis.ticks.margin = unit(0.1, "cm"), - axis.ticks.y = element_blank(), - axis.line.x.top = element_line(color="black"), - panel.background = element_rect(fill="white"), - plot.margin = margin(10, 25, 10, 10) - ) + - scale_x_continuous( - breaks = x_breaks, # Set custom breaks for x-axis labels - labels = x_labels, # Set custom labels with "Mb" suffixes - position = "top", # Move x-axis labels and ticks to the top - expand = c(0,0), - limits = c(0,max(diversity_items$pos_df$POS)) - ) - }) - #Display plot - markerPlot - }) - - output$marker_plot <- renderPlot({ - marker_plot() - }) - - output$maf_plot <- renderPlot({ - validate( - need(!is.null(diversity_items$maf_df) & !is.null(input$hist_bins), "Input VCF, define parameters and click `run analysis` to access results in this session.") - ) - - hist(diversity_items$maf_df$MAF, breaks = as.numeric(input$hist_bins), col = "grey", border = "black", xlab = "Minor Allele Frequency (MAF)", - ylab = "Frequency", main = "Minor Allele Frequency Distribution") - }) - - sample_table <- reactive({ - validate( - need(!is.null(diversity_items$het_df), "Input VCF, define parameters and click `run analysis` to access results in this session.") - ) - tb <- diversity_items$het_df - tb$Ho <- round(tb$Ho,4) - tb - }) - - output$sample_table <- DT::renderDT({sample_table()}, options = list(scrollX = TRUE,autoWidth = FALSE, pageLength = 5)) - - snp_table <- reactive({ - validate( - need(!is.null(diversity_items$snp_stats), "Input VCF, define parameters and click `run analysis` to access results in this session.") - ) - tb <- diversity_items$snp_stats - tb$PIC <- round(tb$PIC,4) - tb$MAF <- round(tb$MAF,4) - tb - }) - - output$snp_table <- DT::renderDT({snp_table()}, options = list(scrollX = TRUE,autoWidth = FALSE, pageLength = 5)) - - #Download Figures for Diversity Tab (Need to convert figures to ggplot) - output$download_div_figure <- downloadHandler( - - filename = function() { - if (input$div_image_type == "jpeg") { - paste("genomic-diversity-", Sys.Date(), ".jpg", sep="") - } else if (input$div_image_type == "png") { - paste("genomic-diversity-", Sys.Date(), ".png", sep="") - } else if (input$div_image_type == "svg") { - paste("genomic-diversity-", Sys.Date(), ".svg", sep="") - } else { - paste("genomic-diversity-", Sys.Date(), ".tiff", sep="") - } - }, - content = function(file) { - req(input$div_figure) - - if (input$div_image_type == "jpeg") { - jpeg(file, width = as.numeric(input$div_image_width), height = as.numeric(input$div_image_height), res= as.numeric(input$div_image_res), units = "in") - } else if (input$div_image_type == "png") { - png(file, width = as.numeric(input$div_image_width), height = as.numeric(input$div_image_height), res= as.numeric(input$div_image_res), units = "in") - } else if (input$div_image_type == "svg") { - svg(file, width = as.numeric(input$div_image_width), height = as.numeric(input$div_image_height)) - } else { - tiff(file, width = as.numeric(input$div_image_width), height = as.numeric(input$div_image_height), res= as.numeric(input$div_image_res), units = "in") - } - - # Conditional plotting based on input selection - if (input$div_figure == "Dosage Plot") { - print(box_plot()) - } else if (input$div_figure == "MAF Histogram") { - hist(diversity_items$maf_df$MAF, breaks = as.numeric(input$hist_bins), col = "grey", border = "black", xlab = "Minor Allele Frequency (MAF)", - ylab = "Frequency", main = "Minor Allele Frequency Distribution") - } else if (input$div_figure == "OHet Histogram") { - hist(diversity_items$het_df$Ho, breaks = as.numeric(input$hist_bins), col = "tan3", border = "black", xlim= c(0,1), - xlab = "Observed Heterozygosity", - ylab = "Number of Samples", - main = "Sample Observed Heterozygosity") - axis(1, at = seq(0, 1, by = 0.1), labels = TRUE) - } else if (input$div_figure == "Marker Plot") { - print(marker_plot()) - } - - dev.off() - } - - ) - - #Download files for Genotype Diversity - output$download_div_file <- downloadHandler( - filename = function() { - paste0("genomic-diversity-results-", Sys.Date(), ".zip") - }, - content = function(file) { - # Temporary files list - temp_dir <- tempdir() - temp_files <- c() - - if (!is.null(diversity_items$het_df)) { - # Create a temporary file for assignments - het_file <- file.path(temp_dir, paste0("Sample-statistics-", Sys.Date(), ".csv")) - write.csv(diversity_items$het_df, het_file, row.names = FALSE) - temp_files <- c(temp_files, het_file) - } - - if (!is.null(diversity_items$snp_stats)) { - # Create a temporary file for BIC data frame - maf_file <- file.path(temp_dir, paste0("SNP-statistics-", Sys.Date(), ".csv")) - write.csv(diversity_items$snp_stats, maf_file, row.names = FALSE) - temp_files <- c(temp_files, maf_file) - } - - # Zip files only if there's something to zip - if (length(temp_files) > 0) { - zip(file, files = temp_files, extras = "-j") # Using -j to junk paths - } - - # Optionally clean up - file.remove(temp_files) - } - ) - - output$download_vcf <- downloadHandler( - filename = function() { - paste0("BIGapp_VCF_Example_file.vcf.gz") - }, - content = function(file) { - ex <- system.file("iris_DArT_VCF.vcf.gz", package = "BIGapp") - file.copy(ex, file) - }) - - ##Summary Info - diversity_summary_info <- function() { - # Handle possible NULL values for inputs - dosage_file_name <- if (!is.null(input$diversity_file$name)) input$diversity_file$name else "No file selected" - selected_ploidy <- if (!is.null(input$diversity_ploidy)) as.character(input$diversity_ploidy) else "Not selected" - - # Print the summary information - cat( - "BIGapp Summary Metrics Summary\n", - "\n", - paste0("Date: ", Sys.Date()), "\n", - paste(R.Version()$version.string), "\n", - "\n", - "### Input Files ###\n", - "\n", - paste("Input Genotype File:", dosage_file_name), "\n", - "\n", - "### User Selected Parameters ###\n", - "\n", - paste("Selected Ploidy:", selected_ploidy), "\n", - "\n", - "### R Packages Used ###\n", - "\n", - paste("BIGapp:", packageVersion("BIGapp")), "\n", - paste("BIGr:", packageVersion("BIGr")), "\n", - paste("ggplot2:", packageVersion("ggplot2")), "\n", - paste("vcfR:", packageVersion("vcfR")), "\n", - sep = "" - ) - } - - # Popup for analysis summary - observeEvent(input$diversity_summary, { - showModal(modalDialog( - title = "Summary Information", - size = "l", - easyClose = TRUE, - footer = tagList( - modalButton("Close"), - downloadButton("download_diversity_info", "Download") - ), - pre( - paste(capture.output(diversity_summary_info()), collapse = "\n") - ) - )) - }) - - - # Download Summary Info - output$download_diversity_info <- downloadHandler( - filename = function() { - paste("diversity_summary_", Sys.Date(), ".txt", sep = "") - }, - content = function(file) { - # Write the summary info to a file - writeLines(paste(capture.output(diversity_summary_info()), collapse = "\n"), file) - } - ) -} - -## To be copied in the UI -# mod_diversity_ui("diversity_1") - -## To be copied in the server -# mod_diversity_server("diversity_1") diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R new file mode 100644 index 0000000..1008c8c --- /dev/null +++ b/R/mod_ped_cleaner.R @@ -0,0 +1,427 @@ +#' Pedigree Cleaner module UI +#' +#' @param id Module id +#' +#' @noRd +mod_ped_cleaner_ui <- function(id) { + ns <- shiny::NS(id) + shiny::tagList( + shinyjs::useShinyjs(), + shiny::sidebarLayout( + shiny::sidebarPanel( + shiny::div( + style = "background-color: #ffffff; border: 2px solid #444444; padding: 15px; margin-bottom: 20px; border-radius: 8px;", + shiny::h4( + shiny::tagList(shiny::icon("gear"), "Getting Started"), + style = "color: #000000; margin-bottom: 15px; border-bottom: 1px solid black; padding-bottom: 8px;" + ), + shiny::htmlOutput(ns("dynamic_guide")), + shiny::div( + style = "text-align: center; margin-top: 15px; padding-top: 10px; border-top: 1px solid #dee2e6;", + shiny::actionButton( + ns("help_btn"), + shiny::tagList(shiny::icon("circle-question"), "Help"), + style = "background-color: #FFD700; color: #000000; border:none; padding: 8px 16px; border-radius: 5px;" + ) + ) + ), + shiny::wellPanel( + style = "background-color: #ffffff; border: 2px solid #444444; padding: 15px; margin-bottom: 20px; border-radius: 8px;", + shiny::h4( + shiny::tagList(shiny::icon("sitemap"), "Pedigree Input"), + style = "color: #000000; margin-bottom: 15px; border-bottom: 1px solid #000000; padding-bottom: 8px;" + ), + shiny::p( + "Upload a pedigree file (.txt, .tsv, or .csv) with columns: id, male_parent, female_parent.", + style = "color: #6c757d; font-size: 12px; margin-bottom: 15px;" + ), + shiny::fileInput( + ns("ped_file"), + "Upload pedigree file", + accept = c(".txt", ".tsv", ".csv") + ), + shiny::actionButton( + ns("run_check"), + "Run Pedigree Check", + style = "margin-top: 10px; width: 100%; background-color: #28a745; color: white; border: none; padding: 10px; border-radius: 5px;" + ) + ), + shiny::wellPanel( + style = "background-color: #ffffff; border: 2px solid #444444; padding: 15px; margin-bottom: 20px; border-radius: 8px;", + shiny::h4( + shiny::tagList(shiny::icon("download"), "Export"), + style = "color: #000000; margin-bottom: 15px; border-bottom: 1px solid #000000; padding-bottom: 8px;" + ), + shiny::p( + "Download the corrected pedigree and issue report as a zip file:", + style = "color: #6c757d; font-size: 12px; margin-bottom: 15px;" + ), + shinyjs::disabled( + shiny::downloadButton( + ns("download_results"), + "Export Corrected Pedigree + Report", + style = "width: 100%; background-color: #28a745; color: white; border: none; padding: 10px; border-radius: 5px;" + ) + ) + ) + ), + shiny::mainPanel( + shiny::fluidRow( + shiny::column( + width = 12, + bs4Dash::box( + title = "Status", + width = 12, + collapsible = TRUE, + status = "info", + shinyWidgets::progressBar( + id = ns("pb_ped"), + value = 0, + status = "info", + display_pct = TRUE, + striped = TRUE, + title = " " + ) + ) + ) + ), + shiny::br(), + shiny::uiOutput(ns("summary_banner")), + shiny::br(), + shiny::uiOutput(ns("results_ui")) + ) + ) + ) +} + +#' Pedigree Cleaner module server +#' +#' @param id Module id +#' @param parent_session Parent (app) session, used for sidebar navigation +#' +#' @noRd +mod_ped_cleaner_server <- function(id, parent_session) { + shiny::moduleServer(id, function(input, output, session) { + check_results <- shiny::reactiveVal(NULL) + error_message <- shiny::reactiveVal("") + + # Helpers + make_collapse_panel <- function(panel_id, icon_name, label, body_content) { + shiny::tags$div( + class = "card mb-1", + style = "border: 1px solid #dee2e6; border-radius: 4px;", + shiny::tags$div( + class = "card-header p-0", + style = "background-color: #f8f9fa;", + shiny::tags$button( + class = "btn btn-link btn-sm w-100 text-left d-flex align-items-center", + style = "color: #343a40; text-decoration: none; font-size: 13px; padding: 8px 12px; gap: 6px;", + `data-toggle` = "collapse", + `data-target` = paste0("#", panel_id), + `aria-expanded` = "false", + shiny::icon(icon_name), + shiny::tags$span(label) + ) + ), + shiny::tags$div( + id = panel_id, + class = "collapse", + shiny::tags$div( + class = "card-body", + style = "padding: 12px 14px; font-size: 13px;", + body_content + ) + ) + ) + } + + sanitize_id <- function(x) gsub("[^A-Za-z0-9]", "_", tolower(x)) + + # Startup + output$dynamic_guide <- shiny::renderUI({ + current_error <- error_message() + has_file <- !is.null(input$ped_file) + has_results <- !is.null(check_results()) + + if (current_error != "") { + return(shiny::HTML(paste0( + "
    ", + "

    Error occurred:

    ", + "

    ", current_error, "

    ", + "
    " + ))) + } + + get_icon <- function(done) { + if (done) { + "[Done]" + } else { + "[Pending]" + } + } + + steps <- c( + sprintf("

    %s Step 1: Upload your pedigree file (.txt, .tsv, or .csv)

    ", + get_icon(has_file)), + sprintf("

    %s Step 2: Click 'Run Pedigree Check' to detect and fix issues

    ", + get_icon(has_results)), + sprintf("

    %s Step 3: Review results and export the corrected pedigree

    ", + get_icon(has_results)) + ) + + if (has_results) { + steps <- c(steps, + "

    Check Complete!

    ", + "

    Your corrected pedigree is ready to download.

    " + ) + } + shiny::HTML(paste(steps, collapse = "")) + }) + + # Help button + shiny::observeEvent(input$help_btn, { + shiny::showModal( + shiny::modalDialog( + title = shiny::tagList(shiny::icon("circle-question"), " Pedigree Cleaner — Help"), + size = "l", + easyClose = TRUE, + footer = shiny::modalButton("Close"), + help_content_ped_cleaner(collapse_fn = make_collapse_panel, id_prefix = "modal") + ) + ) + }) + + # Run check + shiny::observeEvent(input$run_check, { + shiny::req(input$ped_file) + error_message("") + check_results(NULL) + shinyjs::disable(session$ns("download_results")) + + tryCatch({ + shinyWidgets::updateProgressBar( + session = session, id = "pb_ped", + value = 10, status = "info", + title = "Reading pedigree file..." + ) + + tmp_path <- input$ped_file$datapath + file_ext <- tolower(tools::file_ext(input$ped_file$name)) + + ped_raw <- if (file_ext == "csv") { + utils::read.csv(tmp_path, header = TRUE, + stringsAsFactors = FALSE, check.names = FALSE) + } else { + utils::read.table(tmp_path, header = TRUE, sep = "\t", + stringsAsFactors = FALSE, check.names = FALSE) + } + + required_cols <- c("id", "male_parent", "female_parent") + missing_cols <- setdiff(required_cols, colnames(ped_raw)) + if (length(missing_cols) > 0) { + stop(paste0( + "Missing required column(s): ", + paste(missing_cols, collapse = ", "), + ". File must contain: id, male_parent, female_parent." + )) + } + + shinyWidgets::updateProgressBar( + session = session, id = "pb_ped", + value = 30, status = "info", + title = "Checking for duplicate records..." + ) + shinyWidgets::updateProgressBar( + session = session, id = "pb_ped", + value = 50, status = "info", + title = "Checking for conflicting IDs and inconsistent parent sex roles..." + ) + shinyWidgets::updateProgressBar( + session = session, id = "pb_ped", + value = 70, status = "info", + title = "Checking for missing parents..." + ) + shinyWidgets::updateProgressBar( + session = session, id = "pb_ped", + value = 85, status = "info", + title = "Detecting cycles and dependencies..." + ) + + report <- BIGr::check_ped( + ped.file = tmp_path, + verbose = FALSE, + save_zip = FALSE + ) + + file_base_actual <- tools::file_path_sans_ext(basename(tmp_path)) + corrected_name <- paste0(file_base_actual, "_corrected") + corrected_ped <- tryCatch( + get(corrected_name, envir = .GlobalEnv, inherits = FALSE), + error = function(e) NULL + ) + + check_results(list( + report = report, + corrected_ped = corrected_ped + )) + + shinyWidgets::updateProgressBar( + session = session, id = "pb_ped", + value = 100, status = "success", + title = "Finished" + ) + shinyjs::enable(session$ns("download_results")) + + }, error = function(e) { + error_message(paste0("Error running pedigree check: ", e$message)) + check_results(NULL) + shinyWidgets::updateProgressBar( + session = session, id = "pb_ped", + value = 100, status = "danger", + title = "Failed" + ) + }) + }) + + # Summary banner + output$summary_banner <- shiny::renderUI({ + shiny::req(check_results()) + report <- check_results()$report + + get_count <- function(df) if (is.null(df) || !is.data.frame(df)) 0L else nrow(df) + n_dupes <- get_count(report$exact_duplicates) + n_conflict <- get_count(report$repeated_ids_diff) + n_messy <- get_count(report$inconsistent_sex_roles) + n_missing <- get_count(report$missing_parents) + n_cycles <- get_count(report$dependencies) + total <- n_dupes + n_conflict + n_messy + n_missing + n_cycles + + banner_color <- if (total == 0) "#d4edda" else "#fff3cd" + border_color <- if (total == 0) "#c3e6cb" else "#ffeeba" + text_color <- if (total == 0) "#155724" else "#856404" + headline <- if (total == 0) "No issues found. Pedigree looks clean!" else + paste0(total, " issue(s) detected and corrected. Review the summary below.") + + shiny::HTML(paste0( + "
    ", + "

    ", + headline, "

    ", + "

    ", + "- Exact duplicates removed: ", n_dupes, "  ", + "- Conflicting IDs resolved: ", n_conflict, "  ", + "- Inconsistent parent sex roles flagged: ", n_messy, "  ", + "- Missing parents added: ", n_missing, "  ", + "- Cycles detected: ", n_cycles, "", + "

    " + )) + }) + + # Results UI + output$results_ui <- shiny::renderUI({ + shiny::req(check_results()) + report <- check_results()$report + + get_count <- function(df) if (is.null(df) || !is.data.frame(df)) 0L else nrow(df) + + make_section <- function(title, icon_name, df, color_hex) { + n <- get_count(df) + tbl_id <- paste0("tbl_", sanitize_id(title)) + bs4Dash::box( + title = shiny::tagList( + shiny::icon(icon_name), + shiny::strong(paste0(" ", title, ": ")), + shiny::span( + if (n == 0) "None found" else paste0(n, " record(s) found"), + style = paste0("color: ", if (n == 0) "#28a745" else color_hex, ";") + ) + ), + width = 12, + collapsible = TRUE, + collapsed = (n == 0), + status = if (n == 0) "success" else "warning", + style = paste0("border-left: 4px solid ", color_hex, ";"), + if (n > 0) { + DT::DTOutput(session$ns(tbl_id)) + } else { + shiny::p("No records found.", style = "color: #28a745; margin: 0;") + } + ) + } + + sections <- shiny::tagList( + shiny::h5( + shiny::tagList(shiny::icon("list-check"), " Check Results"), + style = "font-weight: bold; margin-bottom: 10px;" + ), + make_section("Exact Duplicates Removed", "copy", report$exact_duplicates, "#6c757d"), + make_section("Conflicting IDs Resolved", "exclamation", report$repeated_ids_diff, "#856404"), + make_section("Inconsistent Parent Sex Roles", "shuffle", report$inconsistent_sex_roles, "#856404"), + make_section("Missing Parents Added", "user-plus", report$missing_parents, "#0c5460"), + make_section("Cycles / Dependencies Detected", "rotate", report$dependencies, "#721c24") + ) + + render_if <- function(title, df) { + output_id <- paste0("tbl_", sanitize_id(title)) + if (!is.null(df) && is.data.frame(df) && nrow(df) > 0) { + output[[output_id]] <- DT::renderDT({ + DT::datatable(df, + rownames = FALSE, + options = list(pageLength = 10, scrollX = TRUE), + class = "table-bordered table-sm") + }) + } + } + + render_if("Exact Duplicates Removed", report$exact_duplicates) + render_if("Conflicting IDs Resolved", report$repeated_ids_diff) + render_if("Inconsistent Parent Sex Roles", report$inconsistent_sex_roles) + render_if("Missing Parents Added", report$missing_parents) + render_if("Cycles / Dependencies Detected", report$dependencies) + + sections + }) + + # Download + output$download_results <- shiny::downloadHandler( + filename = function() { + paste0("pedigree_check_", Sys.Date(), ".zip") + }, + content = function(file) { + shiny::req(check_results()) + results <- check_results() + report <- results$report + tmp_dir <- tempfile("ped_export") + dir.create(tmp_dir) + + if (!is.null(results$corrected_ped)) { + write.table(results$corrected_ped, + file.path(tmp_dir, "corrected_pedigree.txt"), + sep = "\t", row.names = FALSE, quote = FALSE) + } + + sections <- list( + exact_duplicates = report$exact_duplicates, + conflicting_ids = report$repeated_ids_diff, + inconsistent_sex_roles = report$inconsistent_sex_roles, + missing_parents = report$missing_parents, + dependencies = report$dependencies + ) + + for (nm in names(sections)) { + df <- sections[[nm]] + if (!is.null(df) && is.data.frame(df) && nrow(df) > 0) { + write.table(df, + file.path(tmp_dir, paste0(nm, ".txt")), + sep = "\t", row.names = FALSE, quote = FALSE) + } + } + + tsv_files <- list.files(tmp_dir) + zip::zip(zipfile = file, files = tsv_files, root = tmp_dir) + unlink(tmp_dir, recursive = TRUE) + }, + contentType = "application/zip" + ) + }) +} \ No newline at end of file diff --git a/app/www/.DS_Store b/app/www/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..8c64a2160f2515b585c0792433f5b444fda2c68e GIT binary patch literal 6148 zcmeHK%TB{E5FD2tTDbJcF<(H$AA~9h4uFs?>}4y`#duKy+X zDXJaIygh@Dyj!fy+Qk`g2L3w(JhMf52NAt>2AlzBV9kJh9}-r<%&>{5pAI&91t7|A zqze0TmynpmFf(i-(n1L_lo&&UT`@uor#>;i%&>_V!x8NA5p3mPHC?7HA|TeRA@_Eserv+TcAK`)9at>AGq$_ZrincyJdIp z3RJY}Cxb-MXp9jPKPgf9VAO~hH8Cif=m*6=82=~by^e1LAp_>WRq*-Hq zgO7lZfRBKWfRBKWz<&b){LQ9?&u7xFeFS_2d;}&Dp!-7*FDk>HoM6)3I=tahFaIcm)POSV$q6RWf(4i>O6CgQ5d*xl12A{&4}0S$m}Kq*+&g0&@6O}0%F90i zE+==++&n&y&*%3>ht095BRgq3B3pe_>o83{k!{O~E=?VaON9-l;mDeyTCRhps5qp* zTQd}MEMle&#ddw8tb-SLAubh=z)o|mr4i4I?6T76{6PFg+Nz2srHq+J|%`|%YZG^emQB%#vpow?P zAjGYsw9D>NEgR)5pIDD}C+kQ(X(3%?gd8Hr$Z>Ll zoF-?L}|f~`;oJD?eQAqm5v!R^eS%Pw(=7ta%5W5Ziw-Oe;H#^zLK zm-ut=80#)@prf;^J0@Ncx9MnfCrv$_GVHiikd*agT9+NQUe_r;Xq&k*m+)XlSFG1I zEeBT{gH0kFm!!0LfYh>HbJ?AJt#X@mOcSf_d zgsyguX^J!4Bil*UP>_qgm_vr64Qi?-6hN8au7c|oC=M*=r4S!WC$#-(%{jr=M%=_pyM*ox<0vy0id%RgmNZi-d}y25>H_t=be7*oZ@gQ!oz_v+$UahC zpo!;u?P1wcTgPxa$$B*Nyh~-YQwuea{@;pCD?NE3vW7u>?hr;E|EZ}QQ38^HFWH%Wg78xf;$z$Xx@*+7y-XbxN5G3yM+sL&0IUz%?+?epG>7*re|wT#@19SdAlWd^75%vx_w9U&RzeXR65T# z_d?v*gEXTyZLOcA9%E{joR^Z`<@vPiaCz?L)l81!@5S;JC1PnOCW3lkW@=_rR?4G^ z$)BU6SFILHr8$@?OubC-95^2CNG^hSCcAqETkRQlJ@+Y!;0W3yNuYq!?fi1}8J5|-Zh}eI1uOS+JWBU- rJSy~ay!&McZQj|~^$Vk&`cE*4EiC`~KLh;pzkmLBi6>mM=l{O}T+AX- delta 256 zcmZn(XfcprU|?W$DortDU=RQ@Ie-{Mvv5r;6q~50$jGuWU^g=(%VZt_YsT%9Jp>BX z#H*_AvvYFu@;fI#6p&}^n#?F@&m=81 z*-7w@bVO!yeqL~9RcgEde{n{BxhIetP?TDhnOZ*CQpid?186M}gybdWrgADf1VFf) zle>fzB?TCj7_}Kq7;PEt89f+18KW4J88a9&8H*+#5z^ZHS3;U`F*^r`ATvad05_0! e1$km);dkcA{3@OxFEKDdya)0z!{&INIm`f0c{bYs diff --git a/inst/app/www/custom.css b/inst/app/www/custom.css new file mode 100644 index 0000000..5cb9856 --- /dev/null +++ b/inst/app/www/custom.css @@ -0,0 +1,451 @@ +/* ── Custom Box Colors ── */ + +:root { + --azure-core: #48A9C5; + --azure-lite: #B5DDE8; + --azure-deep: #2A6576; + --green-core: #319B42; + --green-lite: #A3D9AC; + --green-deep: #1E5D28; + --yellow-core: #EFB526; + --yellow-lite: #F9E1A8; + --yellow-deep: #8F6D17; + --grey-core: #707372; + --grey-lite: #C8CACA; + --grey-deep: #434544; + --purple-core: #512C85; + --purple-lite: #A896C2; + --purple-deep: #311A50; + --red-core: #E43F4F; + --red-lite: #F2A7AE; + --red-deep: #8E1E2A; + --saddleBrown: #8B4513; + --rosybrown: #BC8F8F; + --coral: #FF7F50; + --lightcoral: #F08080; + --darkorange: #FF8C00; +} + +/* Override all bs4Dash status colors with custom colors */ + +/* Info -> Azure Core */ +.card-info:not(.card-outline) .card-header { + background-color: var(--azure-core) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-info:not(.card-outline) { + border-top: 3px solid var(--azure-core) !important; +} + +/* Secondary -> Grey Core */ +.card-secondary:not(.card-outline) .card-header { + background-color: var(--grey-core) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-secondary:not(.card-outline) { + border-top: 3px solid var(--grey-core) !important; +} + +/* Primary -> Azure Lite */ +.card-primary .card-header { + background-color: var(--azure-lite) !important; + color: #333 !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-primary:not(.card-outline) { + border-top: 3px solid var(--azure-lite) !important; +} + +/* Success -> Green Core */ +.card-success:not(.card-outline) .card-header { + background-color: var(--green-core) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-success:not(.card-outline) { + border-top: 3px solid var(--green-core) !important; +} + +/* Warning -> Yellow Core */ +.card-warning:not(.card-outline) .card-header { + background-color: var(--yellow-core) !important; + color: #333 !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-warning:not(.card-outline) { + border-top: 3px solid var(--yellow-core) !important; +} + +/* Danger -> Red Core */ +.card-danger:not(.card-outline) .card-header { + background-color: var(--red-core) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-danger:not(.card-outline) { + border-top: 3px solid var(--red-core) !important; +} + +/* Gray-dark -> Grey Deep */ +.card-gray-dark:not(.card-outline) .card-header { + background-color: var(--grey-deep) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-gray-dark:not(.card-outline) { + border-top: 3px solid var(--grey-deep) !important; +} + +/* Gray -> Grey Lite */ +.card-gray:not(.card-outline) .card-header { + background-color: var(--grey-lite) !important; + color: #333 !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-gray:not(.card-outline) { + border-top: 3px solid var(--grey-lite) !important; +} + +/* Indigo -> Purple Core */ +.card-indigo:not(.card-outline) .card-header { + background-color: var(--purple-core) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-indigo:not(.card-outline) { + border-top: 3px solid var(--purple-core) !important; +} + +/* Lightblue -> Azure Deep */ +.card-lightblue:not(.card-outline) .card-header { + background-color: var(--azure-deep) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-lightblue:not(.card-outline) { + border-top: 3px solid var(--azure-deep) !important; +} + +/* Navy -> Saddle Brown */ +.card-navy:not(.card-outline) .card-header { + background-color: var(--saddleBrown) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-navy:not(.card-outline) { + border-top: 3px solid var(--saddleBrown) !important; +} + +/* Purple -> Purple Lite */ +.card-purple:not(.card-outline) .card-header { + background-color: var(--purple-lite) !important; + color: #333 !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-purple:not(.card-outline) { + border-top: 3px solid var(--purple-lite) !important; +} + +/* Fuchsia -> Purple Deep */ +.card-fuchsia:not(.card-outline) .card-header { + background-color: var(--purple-deep) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-fuchsia:not(.card-outline) { + border-top: 3px solid var(--purple-deep) !important; +} + +/* Pink -> Red Lite */ +.card-pink:not(.card-outline) .card-header { + background-color: var(--red-lite) !important; + color: #333 !important; + border-top-left-radius: 0.25rem !important; + border-top-right-radius: 0.25rem !important; +} +.card-pink:not(.card-outline) { + border-top: 3px solid var(--red-lite) !important; +} + +/* Maroon -> Red Deep */ +.card-maroon:not(.card-outline) .card-header { + background-color: var(--red-deep) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-maroon:not(.card-outline) { + border-top: 3px solid var(--red-deep) !important; +} + +/* Orange -> Yellow Deep */ +.card-orange:not(.card-outline) .card-header { + background-color: var(--yellow-deep) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-orange:not(.card-outline) { + border-top: 3px solid var(--yellow-deep) !important; +} + +/* Lime -> Green Lite */ +.card-lime:not(.card-outline) .card-header { + background-color: var(--green-lite) !important; + color: #333 !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-lime:not(.card-outline) { + border-top: 3px solid var(--green-lite) !important; +} + +/* Teal -> Yellow Lite */ +.card-teal:not(.card-outline) .card-header { + background-color: var(--yellow-lite) !important; + color: #333 !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-teal:not(.card-outline) { + border-top: 3px solid var(--yellow-lite) !important; +} + +/* Olive -> Green Deep */ +.card-olive:not(.card-outline) .card-header { + background-color: var(--green-deep) !important; + color: white !important; + border: none !important; + margin: -1px -1px 0 -1px !important; +} +.card-olive:not(.card-outline) { + border-top: 3px solid var(--green-deep) !important; +} + + +/* ── ValueBox Gradient Color Overrides ── */ + +/* Info -> Azure Core */ +.small-box.bg-gradient-info { + background: linear-gradient(135deg, var(--azure-core), var(--azure-deep)) !important; + color: white !important; +} +.small-box.bg-gradient-info .icon { + color: rgba(255,255,255,0.3) !important; +} + +/* Secondary -> Grey Core */ +.small-box.bg-gradient-secondary { + background: linear-gradient(135deg, var(--grey-core), var(--grey-deep)) !important; + color: white !important; +} +.small-box.bg-gradient-secondary .icon { + color: rgba(255,255,255,0.3) !important; +} + +/* Info -> Azure Lite */ +.small-box.bg-gradient-primary { + background: linear-gradient(135deg, var(--azure-lite), var(--azure-core)) !important; + color: #333 !important; +} +.small-box.bg-gradient-primary .icon { + color: rgba(51,51,51,0.3) !important; +} + +/* Success -> Green Core */ +.small-box.bg-gradient-success { + background: linear-gradient(135deg, var(--green-core), var(--green-deep)) !important; + color: white !important; +} +.small-box.bg-gradient-success .icon { + color: rgba(255,255,255,0.3) !important; +} + +/* Warning -> Yellow Core */ +.small-box.bg-gradient-warning { + background: linear-gradient(135deg, var(--yellow-core), var(--yellow-deep)) !important; + color: #333 !important; +} +.small-box.bg-gradient-warning .icon { + color: rgba(51,51,51,0.3) !important; +} + +/* Danger -> Red Core */ +.small-box.bg-gradient-danger { + background: linear-gradient(135deg, var(--red-core), var(--red-deep)) !important; + color: white !important; +} +.small-box.bg-gradient-danger .icon { + color: rgba(255,255,255,0.3) !important; +} + +/* Navy -> Saddle Brown */ +.small-box.bg-gradient-navy { + background: linear-gradient(135deg, var(--saddleBrown), #5d2f0a) !important; + color: white !important; +} +.small-box.bg-gradient-navy .icon { + color: rgba(255,255,255,0.3) !important; +} + +/* Continue for all other colors... */ +.small-box.bg-gradient-indigo { + background: linear-gradient(135deg, var(--purple-core), var(--purple-deep)) !important; + color: white !important; +} +.small-box.bg-gradient-indigo .icon { + color: rgba(255,255,255,0.3) !important; +} + +/* ── Sidebar Active Menu Item ── */ +/* Colors are driven by --sidebar-* variables set in app_ui.R */ +:root { + --sidebar-core: var(--azure-core); + --sidebar-lite: var(--azure-lite); + --sidebar-deep: var(--azure-deep); +} + +.main-sidebar .nav-sidebar .nav-item.active .nav-link, +.main-sidebar .nav-sidebar .nav-item .nav-link.active { + background-color: var(--sidebar-core) !important; + color: white !important; +} + +/* Hover effect for menu items */ +.main-sidebar .nav-sidebar .nav-item .nav-link:hover { + background-color: var(--sidebar-lite) !important; + color: #333 !important; +} + +/* Active menu item icon */ +.main-sidebar .nav-sidebar .nav-item.active .nav-link .nav-icon, +.main-sidebar .nav-sidebar .nav-item .nav-link.active .nav-icon { + color: white !important; +} + +/* For expanded menu items */ +.main-sidebar .nav-sidebar .nav-treeview .nav-item.active .nav-link, +.main-sidebar .nav-sidebar .nav-treeview .nav-item .nav-link.active { + background-color: var(--sidebar-deep) !important; + color: white !important; +} + +/* ── Select Samples tabsetPanel (By Sample / By Family) */ + +/* inactive tab - grey background */ +#cnv_1-sample_select_tabs > li > a:not(.active) { + padding: 7px 22px !important; + margin-right: 6px !important; + background-color: #e9ecef !important; + border: 1px solid #dee2e6 !important; + border-bottom: none !important; + border-radius: 4px 4px 0 0 !important; + font-weight: 500 !important; + color: #495057 !important; +} + +/* active tab */ +#cnv_1-sample_select_tabs > li > a.active { + padding: 7px 22px !important; + margin-right: 6px !important; + background-color: #ffffff !important; + border: 1px solid #dee2e6 !important; + border-bottom: 1px solid #ffffff !important; + border-radius: 4px 4px 0 0 !important; + font-weight: 600 !important; + color: #007bff !important; +} + +/* hover on inactive tab */ +#cnv_1-sample_select_tabs > li > a:not(.active):hover { + background-color: #d6d8db !important; + color: #343a40 !important; +} + +/* ── Ensure box collapse/expand buttons are always visible ── */ +.card-tools { + position: relative; + z-index: 10; + color: black; +} + +/* ── Dashboard footer ── */ +.main-footer { + background-color: white; + color: grey; + height: 65px; + padding-top: 5px; + padding-bottom: 5px; +} + +.main-footer a { + color: grey; +} + +#MainMenu .header { + color: grey; + margin-top: 10px; + margin-bottom: 10px; + padding-left: 15px; +} + +/* ── Most specific selector for AdminLTE override ── */ +.nav.nav-pills.nav-sidebar.flex-column.sidebar-menu .header { + color: grey; + margin-top: 10px; + margin-bottom: 10px; + padding-left: 15px; +} + +/* ── Footer styling ── */ +.dashboard-footer-right { + display: flex; + align-items: center; +} + +.dashboard-footer-text { + display: flex; + flex-direction: column; + margin-right: 15px; + text-align: right; +} + +.dashboard-footer-logo { + margin-right: 15px; +} + +.dashboard-footer-left { + display: flex; + align-items: center; + height: 100%; +} + +/* ── Ensure box collapse/expand buttons are always on top ── */ +.card-tools { + position: relative; + z-index: 10; +} + +/* Make collapse/expand icons visible on white box headers */ +.card-tools .btn-tool { + color: #495057 !important; +} + +.card-tools .btn-tool:hover { + color: #212529 !important; +} \ No newline at end of file diff --git a/inst/app/www/custom.js b/inst/app/www/custom.js new file mode 100644 index 0000000..f638789 --- /dev/null +++ b/inst/app/www/custom.js @@ -0,0 +1,45 @@ +$(document).ready(function() { + // Use event delegation for dynamically created elements + $(document).on('click', '.card-header', function(e) { + // Don't trigger if clicking on the actual collapse button + if (!$(e.target).closest('.card-tools').length) { + // Find the collapse button in this header and trigger click + var collapseBtn = $(this).find('[data-card-widget="collapse"]'); + if (collapseBtn.length > 0) { + collapseBtn.trigger('click'); + } + } + }); + + // Function to apply styles to card headers (both existing and new ones) + function styleCardHeaders() { + $('.card-header').css('cursor', 'pointer'); + $('.card-tools').css('cursor', 'default'); + } + + // Apply styles initially + styleCardHeaders(); + + // Watch for new elements and apply styles + var observer = new MutationObserver(function(mutations) { + mutations.forEach(function(mutation) { + if (mutation.addedNodes.length > 0) { + styleCardHeaders(); + } + }); + }); + + // Start observing + observer.observe(document.body, { + childList: true, + subtree: true + }); + + // Your existing tab script + $('#cnv_1-sample_select_tabs li.active > a').addClass('active'); + + $(document).on('shown.bs.tab', '#cnv_1-sample_select_tabs a[data-toggle="tab"]', function(e) { + $('#cnv_1-sample_select_tabs a[data-toggle="tab"]').removeClass('active'); + $(e.target).addClass('active'); + }); +}); \ No newline at end of file From 86f1ef92f9159a917dc87663826f69d717eeba36 Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Thu, 14 May 2026 09:56:15 -0400 Subject: [PATCH 02/26] Added mod_ped_cleaner and updated mod_help structure to work with individual help content for each module --- .DS_Store | Bin 14340 -> 14340 bytes R/app_server.R | 4 +- R/help_SNMF.R | 293 ++++++++++++++++++ R/help_ped_cleaner.R | 219 ++++++++++++++ R/help_polybreedtools.R | 271 +++++++++++++++++ R/mod_SNMF.R | 656 ++++++++++++++++++++++------------------ R/mod_help.R | 184 +++++++---- R/mod_ped_cleaner.R | 253 ++++++++-------- R/mod_polybreedtools.R | 392 ++++++++++++------------ 9 files changed, 1610 insertions(+), 662 deletions(-) create mode 100644 R/help_SNMF.R create mode 100644 R/help_ped_cleaner.R create mode 100644 R/help_polybreedtools.R diff --git a/.DS_Store b/.DS_Store index a3682aa74badf41e294fc33040b3af1b2b7fe28d..f6f3331370721ae7e68e83b2b1a61e867f1fbf50 100644 GIT binary patch delta 303 zcmZoEXepTBOB;ELE}cZE_8BTF+K1!D`7$ww6IH$N2D;$UJB-OQtKlHFE}A( zF(fkNGGsF30C6HvZ4gj@5zy2uRP~HXKz(}u!2rl&U=RlC1nJ5l%~qh!c?eS`&)4AE X+^E6CxH&*-2kT~bgLCZqBzg(}r)Ev3 delta 55 zcmZoEXepTBgH;ELGf2F<;jABbylFbZwvQ8>vySy5y0jMBi1`_N5 diff --git a/R/app_server.R b/R/app_server.R index d1d7805..f06ed5e 100644 --- a/R/app_server.R +++ b/R/app_server.R @@ -22,7 +22,9 @@ app_server <- function(input, output, session) { mod_ped_cleaner_server( "ped_cleaner_1", parent_session = session) - + mod_help_server( + "help_1", + parent_session = session) # mod_DosageCall_server("DosageCall_1") # mod_Filtering_server("Filtering_1") # mod_dosage2vcf_server("dosage2vcf_1") diff --git a/R/help_SNMF.R b/R/help_SNMF.R new file mode 100644 index 0000000..3874697 --- /dev/null +++ b/R/help_SNMF.R @@ -0,0 +1,293 @@ +# help_content_SNMF.R +#' SNMF help content +#' +#' Returns the UI content for the SNMF help section. +#' Used by both mod_help and the SNMF module's own help button. +#' +#' @param collapse_fn A function with signature (panel_id, icon_name, label, body_content). +#' Defaults to the internal make_collapse_panel. +#' @param id_prefix A string prefix to namespace panel IDs and avoid duplicate DOM ids. +#' +#' @noRd +help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { + pid <- function(x) if (nchar(id_prefix) > 0) paste0(id_prefix, "_", x) else x + + if (is.null(collapse_fn)) { + collapse_fn <- function(panel_id, icon_name, label, body_content) { + shiny::tags$div( + class = "card mb-1", + style = "border: 1px solid #dee2e6; border-radius: 4px;", + shiny::tags$div( + class = "card-header p-0", + style = "background-color: #f8f9fa;", + shiny::tags$button( + class = "btn btn-link btn-sm w-100 text-left d-flex align-items-center", + style = "color: #343a40; text-decoration: none; font-size: 13px; padding: 8px 12px; gap: 6px;", + `data-toggle` = "collapse", + `data-target` = paste0("#", panel_id), + `aria-expanded` = "false", + shiny::icon(icon_name), + shiny::tags$span(label) + ) + ), + shiny::tags$div( + id = panel_id, + class = "collapse", + shiny::tags$div( + class = "card-body", + style = "padding: 12px 14px; font-size: 13px;", + body_content + ) + ) + ) + } + } + + # ── Shared cross-entropy table helper ───────────────────────────── + ce_table <- function(rows) { + shiny::tags$table( + class = "table table-bordered table-sm", + style = "width: auto; font-size: 12px; margin-bottom: 6px;", + shiny::tags$thead( + shiny::tags$tr( + shiny::tags$th("K"), + shiny::tags$th("best_run"), + shiny::tags$th("min_cross_entropy") + ) + ), + shiny::tags$tbody(rows) + ) + } + + ce_row <- function(k, run, ce, bg = NULL) { + style <- if (!is.null(bg)) paste0("background-color:", bg, ";") else "" + shiny::tags$tr( + style = style, + shiny::tags$td(k), + shiny::tags$td(run), + shiny::tags$td(ce) + ) + } + + shiny::tagList( + + shiny::h6(shiny::tagList(shiny::icon("circle-info"), " Overview"), + style = "font-weight: bold;"), + shiny::p( + "The SNMF module runs unsupervised ancestry estimation using ", + shiny::tags$code("LEA::snmf()"), + ". It estimates Q-matrices (ancestry proportions per individual per cluster) across + a range of K values, optionally using cross-entropy to identify the best K.", + style = "font-size: 13px;" + ), + shiny::hr(style = "margin: 8px 0;"), + + # ── Steps ──────────────────────────────────────────────────────── + shiny::h6(shiny::tagList(shiny::icon("list-ol"), " Steps"), + style = "font-weight: bold;"), + shiny::tags$ol( + style = "font-size: 13px;", + shiny::tags$li(shiny::HTML( + "Upload a genotype file in .vcf, .vcf.gz, + or LEA .geno format. VCF files are automatically converted to + .geno format." + )), + shiny::tags$li(shiny::HTML( + "Set Ploidy — enter the ploidy of the species (e.g., 2 for diploid)." + )), + shiny::tags$li(shiny::HTML( + "Set K range — define the minimum and maximum number of ancestry clusters to test." + )), + shiny::tags$li(shiny::HTML( + "Set Repetitions — number of independent runs per K value. More repetitions + improve reliability but increase runtime." + )), + shiny::tags$li(shiny::HTML( + "Choose Selection Mode — controls how the best K and run are determined + (see Selection Modes below)." + )), + shiny::tags$li(shiny::HTML("Run SNMF — executes the analysis.")), + shiny::tags$li(shiny::HTML( + "Review the Cross-Entropy, Ancestry Plot, Q Matrix, and Logs tabs." + )), + shiny::tags$li(shiny::HTML( + "Export the Q matrix as .csv, cross-entropy as .csv, + or the full LEA project as a .zip." + )) + ), + shiny::hr(style = "margin: 8px 0;"), + + # ── Selection Modes ────────────────────────────────────────────── + shiny::h6( + shiny::tagList(shiny::icon("sliders"), " Selection Modes"), + style = "font-weight: bold;" + ), + shiny::p("Click each mode to see how K and run are selected.", + style = "color: #6c757d; font-size: 12px; margin-bottom: 8px;"), + + collapse_fn( + panel_id = pid("snmf_help_auto_entropy"), + icon_name = "wand-magic-sparkles", + label = "Auto-pick best K (cross-entropy)", + body_content = shiny::tagList( + shiny::p( + "Cross-entropy is computed for every K and repetition. The K with the lowest + minimum cross-entropy is automatically selected as the best K, and the run + with the lowest cross-entropy for that K is pre-selected.", + style = "margin-bottom: 6px;" + ), + shiny::tags$strong("Example cross-entropy summary:"), + ce_table(shiny::tagList( + ce_row("1", "3", "0.4812"), + ce_row("2", "1", "0.3204", bg = "#d4edda"), + ce_row("3", "2", "0.3391") + )), + shiny::p( + "K = 2 has the lowest minimum cross-entropy and is auto-selected (highlighted).", + style = "color: #155724; font-size: 11px;" + ) + ) + ), + + collapse_fn( + panel_id = pid("snmf_help_manual_entropy"), + icon_name = "hand-pointer", + label = "Manual K/run (cross-entropy)", + body_content = shiny::tagList( + shiny::p( + "Cross-entropy is still computed and displayed for all K values and runs, but you + manually choose the K and run to visualise using the Plot Controls selectors. + The best run per K is pre-selected as a convenience.", + style = "margin-bottom: 6px;" + ), + shiny::p( + "Use this mode when you want to inspect the cross-entropy curve yourself before + committing to a specific K.", + style = "color: #856404; font-size: 11px;" + ) + ) + ), + + collapse_fn( + panel_id = pid("snmf_help_no_entropy"), + icon_name = "ban", + label = "No cross-entropy (manual)", + body_content = shiny::tagList( + shiny::p( + "Cross-entropy is disabled entirely, which can reduce runtime. No cross-entropy + plot or table will be produced. You select the K and run to display manually + via the Plot Controls selectors.", + style = "margin-bottom: 6px;" + ), + shiny::p( + "Useful when you already know the target K or when running many repetitions at large K.", + style = "color: #6c757d; font-size: 11px;" + ) + ) + ), + + shiny::hr(style = "margin: 8px 0;"), + + # ── Parameter Reference ────────────────────────────────────────── + shiny::h6( + shiny::tagList(shiny::icon("gear"), " Parameter Reference"), + style = "font-weight: bold;" + ), + shiny::p("Click each parameter to see what it controls.", + style = "color: #6c757d; font-size: 12px; margin-bottom: 8px;"), + + collapse_fn( + panel_id = pid("snmf_help_alpha"), + icon_name = "a", + label = "Alpha", + body_content = shiny::p( + "Regularisation parameter. Higher values enforce sparser (more uniform) ancestry + estimates. Default is 100. Increase if results appear too noisy; decrease if + estimates are overly smoothed.", + style = "margin: 0;" + ) + ), + + collapse_fn( + panel_id = pid("snmf_help_iterations"), + icon_name = "rotate", + label = "Iterations", + body_content = shiny::p( + "Maximum number of iterations for the optimisation algorithm per run. Default is 200. + Increase if the algorithm has not converged (check Logs tab for convergence messages).", + style = "margin: 0;" + ) + ), + + collapse_fn( + panel_id = pid("snmf_help_tolerance"), + icon_name = "arrows-left-right-to-line", + label = "Tolerance", + body_content = shiny::p( + "Convergence threshold. The algorithm stops when the change in the objective function + falls below this value. Default is 1e-4. Lower values require tighter convergence + but may increase runtime.", + style = "margin: 0;" + ) + ), + + collapse_fn( + panel_id = pid("snmf_help_percentage"), + icon_name = "percent", + label = "Percentage", + body_content = shiny::p( + "Proportion of masked genotypes used to compute cross-entropy (i.e., the test set + fraction). Default is 0.05 (5%). Only relevant when cross-entropy is enabled.", + style = "margin: 0;" + ) + ), + + collapse_fn( + panel_id = pid("snmf_help_cpu"), + icon_name = "microchip", + label = "CPU", + body_content = shiny::p( + "Number of CPU threads to use. Increasing this can speed up runs with many K values + or repetitions, subject to available hardware.", + style = "margin: 0;" + ) + ), + + collapse_fn( + panel_id = pid("snmf_help_seed"), + icon_name = "seedling", + label = "Seed", + body_content = shiny::p( + "Random seed for reproducibility. Using the same seed with the same inputs will + produce identical results across runs.", + style = "margin: 0;" + ) + ), + + shiny::hr(style = "margin: 8px 0;"), + + # ── Export Contents ────────────────────────────────────────────── + shiny::h6(shiny::tagList(shiny::icon("download"), " Export Contents"), + style = "font-weight: bold;"), + shiny::tags$ul( + style = "font-size: 13px;", + shiny::tags$li(shiny::HTML( + "Download Q (CSV) — Q-matrix for the currently selected K and run, + with sample IDs and one column per cluster." + )), + shiny::tags$li(shiny::HTML( + "Download cross-entropy (CSV) — full cross-entropy table across all + K values and repetitions (only available when cross-entropy is enabled)." + )), + shiny::tags$li(shiny::HTML( + "Save Project (.zip) — complete LEA project directory, allowing you + to reload results in R using LEA::load.snmfProject()." + )), + shiny::tags$li(shiny::HTML( + "Save Image — exports the Cross-Entropy Plot or Ancestry Plot as + jpeg, tiff, png, or svg + at configurable resolution, width, and height." + )) + ) + ) +} \ No newline at end of file diff --git a/R/help_ped_cleaner.R b/R/help_ped_cleaner.R new file mode 100644 index 0000000..e2ac166 --- /dev/null +++ b/R/help_ped_cleaner.R @@ -0,0 +1,219 @@ +# help_content_ped_cleaner.R +#' Pedigree Cleaner help content +#' +#' Returns the UI content for the Pedigree Cleaner help section. +#' Used by both mod_help and the Pedigree Cleaner module's own help button. +#' +#' @param collapse_fn A function with signature (panel_id, icon_name, label, body_content). +#' Defaults to the internal make_collapse_panel. +#' @param id_prefix A string prefix to namespace panel IDs and avoid duplicate DOM ids. +#' +#' @noRd +help_content_ped_cleaner <- function(collapse_fn = NULL, id_prefix = "") { + + pid <- function(x) if (nchar(id_prefix) > 0) paste0(id_prefix, "_", x) else x + + if (is.null(collapse_fn)) { + collapse_fn <- function(panel_id, icon_name, label, body_content) { + shiny::tags$div( + class = "card mb-1", + style = "border: 1px solid #dee2e6; border-radius: 4px;", + shiny::tags$div( + class = "card-header p-0", + style = "background-color: #f8f9fa;", + shiny::tags$button( + class = "btn btn-link btn-sm w-100 text-left d-flex align-items-center", + style = "color: #343a40; text-decoration: none; font-size: 13px; padding: 8px 12px; gap: 6px;", + `data-toggle` = "collapse", + `data-target` = paste0("#", panel_id), + `aria-expanded` = "false", + shiny::icon(icon_name), + shiny::tags$span(label) + ) + ), + shiny::tags$div( + id = panel_id, + class = "collapse", + shiny::tags$div( + class = "card-body", + style = "padding: 12px 14px; font-size: 13px;", + body_content + ) + ) + ) + } + } + + # ── Shared pedigree table helpers ────────────────────────────────── + ped_table <- function(rows) { + shiny::tags$table( + class = "table table-bordered table-sm", + style = "width: auto; font-size: 12px; margin-bottom: 6px;", + shiny::tags$thead( + shiny::tags$tr( + shiny::tags$th("id"), + shiny::tags$th("male_parent"), + shiny::tags$th("female_parent") + ) + ), + shiny::tags$tbody(rows) + ) + } + + ped_row <- function(id, sire, dam, bg = NULL) { + style <- if (!is.null(bg)) paste0("background-color:", bg, ";") else "" + shiny::tags$tr( + style = style, + shiny::tags$td(id), + shiny::tags$td(sire), + shiny::tags$td(dam) + ) + } + + shiny::tagList( + + shiny::h6(shiny::tagList(shiny::icon("circle-info"), " Overview"), + style = "font-weight: bold;"), + shiny::p( + "The Pedigree Cleaner automatically detects and corrects common pedigree issues. + Problems are fixed in place — the corrected pedigree and per-issue reports + are bundled into a single zip file for download.", + style = "font-size: 13px;" + ), + shiny::hr(style = "margin: 8px 0;"), + + # ── Steps ──────────────────────────────────────────────────────── + shiny::h6(shiny::tagList(shiny::icon("list-ol"), " Steps"), + style = "font-weight: bold;"), + shiny::tags$ol( + style = "font-size: 13px;", + shiny::tags$li(shiny::HTML( + "Upload a tab-separated .txt, .tsv, or .csv + file with three columns: id, male_parent, female_parent." + )), + shiny::tags$li(shiny::HTML("Run Pedigree Check — scans for all five issue types below.")), + shiny::tags$li(shiny::HTML("Review the summary banner and expandable result tables.")), + shiny::tags$li(shiny::HTML("Export the corrected pedigree and reports as a .zip file.")) + ), + shiny::hr(style = "margin: 8px 0;"), + + # ── Issue Types ────────────────────────────────────────────────── + shiny::h6( + shiny::tagList(shiny::icon("triangle-exclamation"), " Issue Types — What Is Detected & How It Is Corrected"), + style = "font-weight: bold;" + ), + shiny::p("Click each issue type to expand a before/after example.", + style = "color: #6c757d; font-size: 12px; margin-bottom: 8px;"), + + collapse_fn( + panel_id = pid("pc_help_exact_dup"), # <-- prefixed + icon_name = "copy", + label = "Exact Duplicates Removed", + body_content = shiny::tagList( + shiny::p("Fully identical rows are removed, keeping only one copy.", + style = "margin-bottom: 6px;"), + shiny::tags$strong("Before:"), + ped_table(shiny::tagList( + ped_row("A1", "B1", "C1"), + ped_row("A1", "B1", "C1", bg = "#f8d7da") + )), + shiny::p("The highlighted row is an exact copy — only one row will be kept.", + style = "color: #721c24; font-size: 11px; margin-bottom: 6px;"), + shiny::tags$strong("After:"), + ped_table(ped_row("A1", "B1", "C1")) + ) + ), + + collapse_fn( + panel_id = pid("pc_help_conflict"), # <-- prefixed + icon_name = "exclamation", + label = "Conflicting IDs Resolved", + body_content = shiny::tagList( + shiny::p("The same individual ID appears with different parents. + When a conflict is detected the ambiguous parent is set to 0 (unknown).", + style = "margin-bottom: 6px;"), + shiny::tags$strong("Before:"), + ped_table(shiny::tagList( + ped_row("A1", "B1", "C1"), + ped_row("A1", "B2", "C1", bg = "#f8d7da") + )), + shiny::p(shiny::HTML("A1 has two different male parents (B1 and B2) — male_parent cannot be determined."), + style = "color: #856404; font-size: 11px; margin-bottom: 6px;"), + shiny::tags$strong("After:"), + ped_table(ped_row("A1", "0", "C1", bg = "#fff3cd")), + shiny::p("The conflicting male_parent is set to 0 (unknown). female_parent is unchanged since it was consistent.", + style = "color: #856404; font-size: 11px;") + ) + ), + + collapse_fn( + panel_id = pid("pc_help_messy"), # <-- prefixed + icon_name = "shuffle", + label = "Inconsistent Parent Sex Roles", + body_content = shiny::tagList( + shiny::p("An individual appears in the male_parent column in one record and the female_parent + column in another, indicating an inconsistent sex/role assignment across the pedigree.", + style = "margin-bottom: 6px;"), + shiny::tags$strong("Before:"), + ped_table(shiny::tagList( + ped_row("A1", "B1", "C1"), + ped_row("A2", "C1", "B1", bg = "#f8d7da") + )), + shiny::p(shiny::HTML("B1 and C1 swap male_parent/female_parent roles across records — flagged for review."), + style = "color: #856404; font-size: 11px;") + ) + ), + + collapse_fn( + panel_id = pid("pc_help_missing"), # <-- prefixed + icon_name = "user-plus", + label = "Missing Parents Added", + body_content = shiny::tagList( + shiny::p("A parent is referenced in the male_parent or female_parent column but never appears as an individual.", + style = "margin-bottom: 6px;"), + shiny::tags$strong("Before:"), + ped_table(ped_row("A1", "B1", "C1")), + shiny::p(shiny::HTML("B1 and C1 are referenced but have no row of their own — missing parents are added automatically with unknown parents (0)."), + style = "color: #0c5460; font-size: 11px; margin-bottom: 6px;"), + shiny::tags$strong("After:"), + ped_table(shiny::tagList( + ped_row("A1", "B1", "C1"), + ped_row("B1", "0", "0", bg = "#d4edda"), + ped_row("C1", "0", "0", bg = "#d4edda") + )) + ) + ), + + collapse_fn( + panel_id = pid("pc_help_cycles"), # <-- prefixed + icon_name = "rotate", + label = "Cycles / Dependencies Detected", + body_content = shiny::tagList( + shiny::p("An animal appears as its own ancestor, creating a circular relationship. These are detected and flagged.", + style = "margin-bottom: 6px;"), + shiny::tags$strong("Example:"), + ped_table(shiny::tagList( + ped_row("A1", "B1", "C1"), + ped_row("B1", "A1", "C2", bg = "#f8d7da") + )), + shiny::p(shiny::HTML("A1 is listed as the male_parent of B1, but B1 + is also listed as the male_parent of A1 — flagged for review."), + style = "color: #721c24; font-size: 11px;") + ) + ), + + shiny::hr(style = "margin: 8px 0;"), + + # ── Export Contents ────────────────────────────────────────────── + shiny::h6(shiny::tagList(shiny::icon("download"), " Export Contents"), + style = "font-weight: bold;"), + shiny::tags$ul( + style = "font-size: 13px;", + shiny::tags$li(shiny::HTML("corrected_pedigree.txt — the cleaned pedigree, tab-separated.")), + shiny::tags$li(shiny::HTML("One .txt report per issue type (only included if issues were found): + exact_duplicates.txt, conflicting_ids.txt, + inconsistent_sex_roles.txt, missing_parents.txt, + dependencies.txt.")) + ) + ) +} \ No newline at end of file diff --git a/R/help_polybreedtools.R b/R/help_polybreedtools.R new file mode 100644 index 0000000..6713329 --- /dev/null +++ b/R/help_polybreedtools.R @@ -0,0 +1,271 @@ +# help_content_polybreedtools.R +#' PolyBreedTools help content +#' +#' Returns the UI content for the PolyBreedTools help section. +#' Used by both mod_help and the PolyBreedTools module's own help button. +#' +#' @param collapse_fn A function with signature (panel_id, icon_name, label, body_content). +#' Defaults to the internal make_collapse_panel. +#' @param id_prefix A string prefix to namespace panel IDs and avoid duplicate DOM ids. +#' +#' @noRd +help_content_polybreedtools <- function(collapse_fn = NULL, id_prefix = "") { + pid <- function(x) if (nchar(id_prefix) > 0) paste0(id_prefix, "_", x) else x + + if (is.null(collapse_fn)) { + collapse_fn <- function(panel_id, icon_name, label, body_content) { + shiny::tags$div( + class = "card mb-1", + style = "border: 1px solid #dee2e6; border-radius: 4px;", + shiny::tags$div( + class = "card-header p-0", + style = "background-color: #f8f9fa;", + shiny::tags$button( + class = "btn btn-link btn-sm w-100 text-left d-flex align-items-center", + style = "color: #343a40; text-decoration: none; font-size: 13px; padding: 8px 12px; gap: 6px;", + `data-toggle` = "collapse", + `data-target` = paste0("#", panel_id), + `aria-expanded` = "false", + shiny::icon(icon_name), + shiny::tags$span(label) + ) + ), + shiny::tags$div( + id = panel_id, + class = "collapse", + shiny::tags$div( + class = "card-body", + style = "padding: 12px 14px; font-size: 13px;", + body_content + ) + ) + ) + } + } + + # ── Shared input format table helper ────────────────────────────────── + geno_table <- function(rows) { + shiny::tags$table( + class = "table table-bordered table-sm", + style = "width: auto; font-size: 12px; margin-bottom: 6px;", + shiny::tags$thead( + shiny::tags$tr( + shiny::tags$th("ID"), + shiny::tags$th("Marker1"), + shiny::tags$th("Marker2"), + shiny::tags$th("Marker3") + ) + ), + shiny::tags$tbody(rows) + ) + } + + geno_row <- function(id, m1, m2, m3, bg = NULL) { + style <- if (!is.null(bg)) paste0("background-color:", bg, ";") else "" + shiny::tags$tr( + style = style, + shiny::tags$td(id), + shiny::tags$td(m1), + shiny::tags$td(m2), + shiny::tags$td(m3) + ) + } + + ref_ids_table <- function(rows) { + shiny::tags$table( + class = "table table-bordered table-sm", + style = "width: auto; font-size: 12px; margin-bottom: 6px;", + shiny::tags$thead( + shiny::tags$tr( + shiny::tags$th("Group1"), + shiny::tags$th("Group2") + ) + ), + shiny::tags$tbody(rows) + ) + } + + ref_ids_row <- function(g1, g2, bg = NULL) { + style <- if (!is.null(bg)) paste0("background-color:", bg, ";") else "" + shiny::tags$tr( + style = style, + shiny::tags$td(g1), + shiny::tags$td(g2) + ) + } + + shiny::tagList( + + shiny::h6(shiny::tagList(shiny::icon("circle-info"), " Overview"), + style = "font-weight: bold;"), + shiny::p( + "PolyBreedTools estimates the proportion of each line or breed in a validation population + using a reference panel of known genotypes. It supports any ploidy level and produces + both a results table and a stacked ancestry bar plot.", + style = "font-size: 13px;" + ), + shiny::hr(style = "margin: 8px 0;"), + + # ── Steps ──────────────────────────────────────────────────────── + shiny::h6(shiny::tagList(shiny::icon("list-ol"), " Steps"), + style = "font-weight: bold;"), + shiny::tags$ol( + style = "font-size: 13px;", + shiny::tags$li(shiny::HTML( + "Upload Reference Genotypes — a tab-separated .txt file with + SNPs in rows and samples in columns. The first column must be ID. + Missing values should be coded as NA." + )), + shiny::tags$li(shiny::HTML( + "Upload Reference IDs — a tab-separated .txt file assigning + each reference sample to a group/line. Each column is one group; values are sample IDs." + )), + shiny::tags$li(shiny::HTML( + "Upload Validation Genotypes — same format as the reference genotype file." + )), + shiny::tags$li(shiny::HTML( + "Set Ploidy — enter the ploidy level of the species (e.g., 2 for diploid, 4 for tetraploid)." + )), + shiny::tags$li(shiny::HTML("Run Estimation — computes ancestry proportions for each validation sample.")), + shiny::tags$li(shiny::HTML("Review the Results Table and Ancestry Plot tabs.")), + shiny::tags$li(shiny::HTML("Export results as an .xlsx file or save the plot image.")) + ), + shiny::hr(style = "margin: 8px 0;"), + + # ── Input Format Details ───────────────────────────────────────── + shiny::h6( + shiny::tagList(shiny::icon("file-lines"), " Input Format Details"), + style = "font-weight: bold;" + ), + shiny::p("Click each input type to see a format example.", + style = "color: #6c757d; font-size: 12px; margin-bottom: 8px;"), + + collapse_fn( + panel_id = pid("pbt_help_ref_genos"), + icon_name = "dna", + label = "Reference & Validation Genotypes (.txt)", + body_content = shiny::tagList( + shiny::p( + "Tab-separated file with an ID column followed by one column per SNP marker. + Genotypes are encoded as dosage counts (e.g., 0, 1, 2 for diploid). + Missing genotypes should be coded as NA.", + style = "margin-bottom: 6px;" + ), + shiny::tags$strong("Example:"), + geno_table(shiny::tagList( + geno_row("Sample1", "0", "NA", "1"), + geno_row("Sample2", "1", "1", "0"), + geno_row("Sample3", "2", "0", "NA") + )), + shiny::p( + "The first column must be named ID. All other columns are treated as SNP markers.", + style = "color: #6c757d; font-size: 11px;" + ) + ) + ), + + collapse_fn( + panel_id = pid("pbt_help_ref_ids"), + icon_name = "users", + label = "Reference IDs (.txt)", + body_content = shiny::tagList( + shiny::p( + "Tab-separated file where each column represents one reference group or line. + Column headers are the group names. Each column lists the sample IDs belonging to that group. + Columns may have different lengths — empty cells are ignored.", + style = "margin-bottom: 6px;" + ), + shiny::tags$strong("Example:"), + ref_ids_table(shiny::tagList( + ref_ids_row("SampleAlpha", "SampleOne"), + ref_ids_row("S3", "SampleTwo"), + ref_ids_row("ExampleFour", "SampleThree") + )), + shiny::p( + "Sample IDs in this file must match IDs present in the Reference Genotypes file.", + style = "color: #6c757d; font-size: 11px;" + ) + ) + ), + + shiny::hr(style = "margin: 8px 0;"), + + # ── Warnings & Automatic Filtering ────────────────────────────── + shiny::h6( + shiny::tagList(shiny::icon("triangle-exclamation"), " Automatic Filtering & Warnings"), + style = "font-weight: bold;" + ), + shiny::p("Click each item to learn what is filtered automatically.", + style = "color: #6c757d; font-size: 12px; margin-bottom: 8px;"), + + collapse_fn( + panel_id = pid("pbt_help_low_callrate"), + icon_name = "filter", + label = "Low Call Rate Samples Removed", + body_content = shiny::tagList( + shiny::p( + "Validation samples with a genotyping call rate below 50% are automatically removed + before estimation. A warning listing the removed sample IDs will appear in the Status panel.", + style = "margin-bottom: 6px;" + ), + shiny::p( + "If too many samples are removed, check your validation file for excessive missing data.", + style = "color: #856404; font-size: 11px;" + ) + ) + ), + + collapse_fn( + panel_id = pid("pbt_help_empty_markers"), + icon_name = "filter", + label = "Empty Markers Removed", + body_content = shiny::tagList( + shiny::p( + "After sample filtering, any marker (column) with no successful genotype calls across + all remaining validation samples is removed. A warning listing the removed markers + will appear in the Status panel.", + style = "margin-bottom: 6px;" + ), + shiny::p( + "If many markers are removed, verify that reference and validation files share the same marker set.", + style = "color: #856404; font-size: 11px;" + ) + ) + ), + + collapse_fn( + panel_id = pid("pbt_help_dup_ids"), + icon_name = "exclamation", + label = "Duplicate Sample IDs", + body_content = shiny::tagList( + shiny::p( + "If duplicate sample IDs are detected in the validation file, estimation is halted + and an error message listing the duplicated IDs is shown in the Status panel.", + style = "margin-bottom: 6px;" + ), + shiny::p( + "Remove or rename duplicate IDs in your validation file before re-running.", + style = "color: #721c24; font-size: 11px;" + ) + ) + ), + + shiny::hr(style = "margin: 8px 0;"), + + # ── Export Contents ────────────────────────────────────────────── + shiny::h6(shiny::tagList(shiny::icon("download"), " Export Contents"), + style = "font-weight: bold;"), + shiny::tags$ul( + style = "font-size: 13px;", + shiny::tags$li(shiny::HTML( + "Results Table — downloadable as .xlsx via Save Files. + Contains each validation sample's estimated ancestry proportion per group and its predicted line." + )), + shiny::tags$li(shiny::HTML( + "Ancestry Plot — stacked bar chart of ancestry proportions. + Exportable as png, jpeg, svg, or pdf + via Save Image. Resolution, width, and height are configurable." + )) + ) + ) +} diff --git a/R/mod_SNMF.R b/R/mod_SNMF.R index f209d84..9de52d8 100644 --- a/R/mod_SNMF.R +++ b/R/mod_SNMF.R @@ -12,84 +12,95 @@ #' @importFrom bs4Dash valueBoxOutput mod_SNMF_ui <- function(id) { ns <- shiny::NS(id) - + shiny::tagList( shiny::fluidRow( shinydisconnect::disconnectMessage( - text = "An unexpected error occurred, please reload the application and check the input file(s).", - refresh = "Reload now", - background = "white", - colour = "grey", - overlayColour = "grey", + text = "An unexpected error occurred, please reload the application and check the input file(s).", + refresh = "Reload now", + background = "white", + colour = "grey", + overlayColour = "grey", overlayOpacity = 0.3, - refreshColour = "purple" + refreshColour = "purple" ), + + # Column 1: Inputs shiny::column( width = 3, bs4Dash::box( - title = "Inputs", - width = 12, + title = "Inputs", + width = 12, collapsible = TRUE, - collapsed = FALSE, - status = "info", + collapsed = FALSE, + status = "info", solidHeader = TRUE, shiny::fileInput( ns("snmf_file"), "Genotypes (.vcf, .vcf.gz, .geno)", accept = c(".vcf", ".gz", ".geno") ), - shiny::numericInput(ns("snmf_ploidy"), "Ploidy", value = 2, min = 1, step = 1), + shiny::numericInput(ns("snmf_ploidy"), "Ploidy", value = 2, min = 1, step = 1), shiny::fluidRow( - shiny::column(6, shiny::numericInput(ns("snmf_k_min"), "K min", value = 1, min = 1, step = 1)), + shiny::column(6, shiny::numericInput(ns("snmf_k_min"), "K min", value = 1, min = 1, step = 1)), shiny::column(6, shiny::numericInput(ns("snmf_k_max"), "K max", value = 10, min = 1, step = 1)) ), - shiny::numericInput(ns("snmf_repetitions"), "Repetitions", value = 5, min = 1, step = 1), - shiny::numericInput(ns("snmf_alpha"), "Alpha", value = 100, min = 0), - shiny::numericInput(ns("snmf_iterations"), "Iterations", value = 200, min = 1, step = 1), - shiny::numericInput(ns("snmf_tolerance"), "Tolerance", value = 1e-4, min = 0), - shiny::numericInput(ns("snmf_percentage"), "Percentage", value = 0.05, min = 0, max = 1, step = 0.01), - shiny::numericInput(ns("snmf_cpu"), "CPU", value = 1, min = 1, step = 1), - shiny::numericInput(ns("snmf_seed"), "Seed", value = 123, min = 1, step = 1), + shiny::numericInput(ns("snmf_repetitions"), "Repetitions", value = 5, min = 1, step = 1), + shiny::numericInput(ns("snmf_alpha"), "Alpha", value = 100, min = 0), + shiny::numericInput(ns("snmf_iterations"), "Iterations", value = 200, min = 1, step = 1), + shiny::numericInput(ns("snmf_tolerance"), "Tolerance", value = 1e-4, min = 0), + shiny::numericInput(ns("snmf_percentage"), "Percentage", value = 0.05, min = 0, max = 1, step = 0.01), + shiny::numericInput(ns("snmf_cpu"), "CPU", value = 1, min = 1, step = 1), + shiny::numericInput(ns("snmf_seed"), "Seed", value = 123, min = 1, step = 1), shiny::radioButtons( ns("snmf_select_mode"), "Selection mode", choices = c( "Auto-pick best K (cross-entropy)" = "auto_entropy", - "Manual K/run (cross-entropy)" = "manual_entropy", - "No cross-entropy (manual)" = "no_entropy" + "Manual K/run (cross-entropy)" = "manual_entropy", + "No cross-entropy (manual)" = "no_entropy" ), selected = "auto_entropy" ), shiny::actionButton(ns("snmf_run"), "Run SNMF"), shiny::hr(), - shiny::downloadButton(ns("download_q_csv"), "Download Q (CSV)"), - shiny::downloadButton(ns("download_ce_csv"), "Download cross-entropy (CSV)") - ) - ), + shiny::downloadButton(ns("download_q_csv"), "Download Q (CSV)"), + shiny::downloadButton(ns("download_ce_csv"), "Download cross-entropy (CSV)"), + shiny::hr(), + shiny::div( + style = "text-align: center; margin-top: 5px;", + shiny::actionButton( + ns("help_btn"), + shiny::tagList(shiny::icon("circle-question"), "Help"), + style = "background-color: #FFD700; color: #000000; border:none; padding: 8px 16px; border-radius: 5px;" + ) + ) + ) # closes box + ), # closes column(width = 3) + + # Column 2: Results shiny::column( width = 6, bs4Dash::box( - title = "Results", - status = "info", + title = "Results", + status = "info", solidHeader = FALSE, - width = 12, - height = 600, + width = 12, + height = 600, maximizable = TRUE, bs4Dash::tabsetPanel( - id = ns("snmf_results_tabs"), + id = ns("snmf_results_tabs"), type = "tabs", shiny::tabPanel( "Instructions", - shiny::HTML( - paste0( - "

    This tab runs LEA::snmf() to estimate ancestry proportions (Q-matrix) across K.

    ", - "
      ", - "
    • Upload a .vcf / .vcf.gz (will be converted to LEA .geno) or an existing .geno.
    • ", - "
    • Choose a K range and repetitions.
    • ", - "
    • In cross-entropy modes, the app summarizes cross-entropy per K and can auto-pick the best K/run.
    • ", - "
    " - ) - ), + shiny::HTML(paste0( + "

    This tab runs LEA::snmf() to estimate ancestry proportions (Q-matrix) across K.

    ", + "
      ", + "
    • Upload a .vcf / .vcf.gz (will be converted to LEA .geno) or an existing .geno.
    • ", + "
    • Choose a K range and repetitions.
    • ", + "
    • In cross-entropy modes, the app summarizes cross-entropy per K and can auto-pick the best K/run.
    • ", + "
    " + )), style = "overflow-y: auto; height: 500px" ), shiny::tabPanel( @@ -114,179 +125,223 @@ mod_SNMF_ui <- function(id) { style = "overflow-y: auto; height: 500px" ) ) - ) - ), - column( + ) # closes box + ), # closes column(width = 6) + + # Column 3: Status + Plot Controls + shiny::column( width = 3, - bs4Dash::valueBoxOutput(ns("snmf_best_k_box"), width = NULL), + bs4Dash::valueBoxOutput(ns("snmf_best_k_box"), width = NULL), bs4Dash::valueBoxOutput(ns("snmf_best_ce_box"), width = NULL), bs4Dash::box( - title = "Status", - width = 12, + title = "Status", + width = 12, collapsible = TRUE, - status = "info", + status = "info", shinyWidgets::progressBar( - id = ns("pb_snmf"), - value = 0, - status = "info", + id = ns("pb_snmf"), + value = 0, + status = "info", display_pct = TRUE, - striped = TRUE, - title = " " + striped = TRUE, + title = " " ) ), - box(title = "Plot Controls", width=12, status = "warning", solidHeader = TRUE, collapsible = TRUE, - shiny::uiOutput(ns("snmf_selectors_ui")), - div(style="display:inline-block; float:left",dropdownButton( + box( + title = "Plot Controls", + width = 12, + status = "warning", + solidHeader = TRUE, + collapsible = TRUE, + shiny::uiOutput(ns("snmf_selectors_ui")), + div( + style = "display:inline-block; float:left", + dropdownButton( tags$h3("Save Image"), - selectInput(inputId = ns('snmf_figure'), label = 'Figure', choices = c("Cross-Entropy Plot","Ancestry Plot")), - selectInput(inputId = ns('snmf_image_type'), label = 'File Type', choices = c("jpeg","tiff","png","svg"), selected = "jpeg"), - sliderInput(inputId = ns('snmf_image_res'), label = 'Resolution', value = 300, min = 50, max = 1000, step=50), - sliderInput(inputId = ns('snmf_image_width'), label = 'Width', value = 8, min = 1, max = 20, step=0.5), - sliderInput(inputId = ns('snmf_image_height'), label = 'Height', value = 5, min = 1, max = 20, step = 0.5), + selectInput(ns("snmf_figure"), "Figure", choices = c("Cross-Entropy Plot", "Ancestry Plot")), + selectInput(ns("snmf_image_type"), "File Type", choices = c("jpeg", "tiff", "png", "svg"), selected = "jpeg"), + sliderInput(ns("snmf_image_res"), "Resolution", value = 300, min = 50, max = 1000, step = 50), + sliderInput(ns("snmf_image_width"), "Width", value = 8, min = 1, max = 20, step = 0.5), + sliderInput(ns("snmf_image_height"), "Height", value = 5, min = 1, max = 20, step = 0.5), fluidRow( downloadButton(ns("download_snmf_figure"), "Save Image"), - downloadButton(ns("download_snmf_file"), "Save Files"), - downloadButton(ns("download_project_zip"), "Save Project")), - circle = FALSE, - status = "danger", - icon = icon("floppy-disk"), width = "300px", label = "Save", + downloadButton(ns("download_snmf_file"), "Save Files"), + downloadButton(ns("download_project_zip"), "Save Project") + ), + circle = FALSE, + status = "danger", + icon = icon("floppy-disk"), + width = "300px", + label = "Save", tooltip = tooltipOptions(title = "Click to see inputs!") - )) - ) - ) - ) - ) + ) + ) + ) # closes Plot Controls box + ) # closes column(width = 3) + + ) # closes fluidRow + ) # closes tagList } #' SNMF Server Functions #' #' @noRd mod_SNMF_server <- function(input, output, session, parent_session) { + ns <- session$ns - + + `%||%` <- function(x, y) if (is.null(x)) y else x + + make_collapse_panel <- function(panel_id, icon_name, label, body_content) { + shiny::tags$div( + class = "card mb-1", + style = "border: 1px solid #dee2e6; border-radius: 4px;", + shiny::tags$div( + class = "card-header p-0", + style = "background-color: #f8f9fa;", + shiny::tags$button( + class = "btn btn-link btn-sm w-100 text-left d-flex align-items-center", + style = "color: #343a40; text-decoration: none; font-size: 13px; padding: 8px 12px; gap: 6px;", + `data-toggle` = "collapse", + `data-target` = paste0("#", panel_id), + `aria-expanded` = "false", + shiny::icon(icon_name), + shiny::tags$span(label) + ) + ), + shiny::tags$div( + id = panel_id, + class = "collapse", + shiny::tags$div( + class = "card-body", + style = "padding: 12px 14px; font-size: 13px;", + body_content + ) + ) + ) + } + + # Help button + shiny::observeEvent(input$help_btn, { + shiny::showModal( + shiny::modalDialog( + title = shiny::tagList(shiny::icon("circle-question"), " SNMF — Help"), + size = "l", + easyClose = TRUE, + footer = shiny::modalButton("Close"), + help_content_SNMF(collapse_fn = make_collapse_panel, id_prefix = "modal") + ) + ) + }) + set_status <- function(...) { msg <- paste0(...) output$snmf_status <- shiny::renderText(msg) } - + show_error <- function(title, message) { shiny::showModal(shiny::modalDialog( - title = title, + title = title, easyClose = TRUE, - footer = shiny::modalButton("Close"), + footer = shiny::modalButton("Close"), message )) } - + call_with_allowed_named_args <- function(fun, args) { allowed <- names(formals(fun)) - if (is.null(allowed)) { - return(do.call(fun, args)) - } + if (is.null(allowed)) return(do.call(fun, args)) keep <- names(args) == "" | names(args) %in% allowed do.call(fun, args[keep]) } - + same_path <- function(path_a, path_b) { identical( normalizePath(path_a, winslash = "/", mustWork = FALSE), normalizePath(path_b, winslash = "/", mustWork = FALSE) ) } - + copy_file_if_needed <- function(from, to, overwrite = TRUE) { - if (same_path(from, to)) { - return(to) - } - + if (same_path(from, to)) return(to) ok <- file.copy(from, to, overwrite = overwrite) - if (!isTRUE(ok)) { - stop("Failed to copy file from ", from, " to ", to, call. = FALSE) - } - + if (!isTRUE(ok)) stop("Failed to copy file from ", from, " to ", to, call. = FALSE) to } - + write_vcf_upload_as_geno <- function(vcf_path, geno_path) { vcf <- vcfR::read.vcfR(vcf_path, verbose = FALSE) - gt <- as.matrix(vcfR::extract.gt(vcf, element = "GT")) - + gt <- as.matrix(vcfR::extract.gt(vcf, element = "GT")) + if (nrow(gt) == 0 || ncol(gt) == 0) { stop("No genotype calls were found in the uploaded VCF.", call. = FALSE) } - - dosage_cols <- lapply(seq_len(ncol(gt)), function(i) { - BIGr:::convert_to_dosage(gt[, i]) - }) - - dosage_mat <- do.call(cbind, dosage_cols) + + dosage_cols <- lapply(seq_len(ncol(gt)), function(i) BIGr:::convert_to_dosage(gt[, i])) + dosage_mat <- do.call(cbind, dosage_cols) colnames(dosage_mat) <- colnames(gt) rownames(dosage_mat) <- rownames(gt) - + lea_mat <- t(dosage_mat) lea_mat[is.na(lea_mat)] <- 9 storage.mode(lea_mat) <- "integer" - + LEA::write.geno(lea_mat, geno_path) - - list( - geno_path = geno_path, - sample_ids = colnames(gt) - ) + + list(geno_path = geno_path, sample_ids = colnames(gt)) } - + run_ctx <- new.env(parent = emptyenv()) run_ctx$run_dir <- NULL - + cleanup_run_dir <- function(path = run_ctx$run_dir) { if (!is.null(path) && dir.exists(path)) { unlink(path, recursive = TRUE, force = TRUE) } - - if (identical(run_ctx$run_dir, path)) { - run_ctx$run_dir <- NULL - } + if (identical(run_ctx$run_dir, path)) run_ctx$run_dir <- NULL } - + state <- shiny::reactiveValues( - run_dir = NULL, - project = NULL, - geno_path = NULL, - vcf_path = NULL, - k_values = NULL, - repetitions = NULL, + run_dir = NULL, + project = NULL, + geno_path = NULL, + vcf_path = NULL, + k_values = NULL, + repetitions = NULL, entropy_enabled = FALSE, - ce_df = NULL, - ce_summary = NULL, - best_k = NULL, - best_run_by_k = NULL, - sample_ids = NULL + ce_df = NULL, + ce_summary = NULL, + best_k = NULL, + best_run_by_k = NULL, + sample_ids = NULL ) - + + # Value boxes output$snmf_best_k_box <- bs4Dash::renderValueBox({ bs4Dash::valueBox( - value = if (!is.null(state$best_k)) state$best_k else "—", + value = if (!is.null(state$best_k)) state$best_k else "\u2014", subtitle = "Best K", - icon = shiny::icon("layer-group"), - color = "info" + icon = shiny::icon("layer-group"), + color = "info" ) }) - + output$snmf_best_ce_box <- bs4Dash::renderValueBox({ bs4Dash::valueBox( value = if (isTRUE(state$entropy_enabled) && !is.null(state$ce_summary)) { - best_k <- state$best_k + best_k <- state$best_k best_row <- state$ce_summary[state$ce_summary$K == best_k, , drop = FALSE] - if (nrow(best_row) == 1) round(best_row$min_cross_entropy, 6) else "—" + if (nrow(best_row) == 1) round(best_row$min_cross_entropy, 6) else "\u2014" } else { - "—" + "\u2014" }, subtitle = "Min cross-entropy", - icon = shiny::icon("chart-line"), - color = "olive" + icon = shiny::icon("chart-line"), + color = "olive" ) }) - + + # Selectors UI ─ output$snmf_selectors_ui <- shiny::renderUI({ if (is.null(state$project) || is.null(state$k_values) || is.null(state$repetitions)) { return(shiny::HTML("Run SNMF to enable K/run selectors and downloads.")) @@ -295,62 +350,55 @@ mod_SNMF_server <- function(input, output, session, parent_session) { shiny::selectInput( ns("snmf_selected_k"), "Selected K", - choices = as.character(state$k_values), + choices = as.character(state$k_values), selected = as.character(state$best_k %||% state$k_values[[1]]) ), shiny::selectInput( ns("snmf_selected_run"), "Selected run", - choices = as.character(seq_len(state$repetitions)), + choices = as.character(seq_len(state$repetitions)), selected = "1" ) ) }) - + observeEvent(input$snmf_selected_k, { req(state$project, state$k_values, state$repetitions) - k <- as.integer(input$snmf_selected_k) - + k <- as.integer(input$snmf_selected_k) selected_run <- 1L if (!is.null(state$best_run_by_k) && !is.na(state$best_run_by_k[as.character(k)])) { selected_run <- as.integer(state$best_run_by_k[as.character(k)]) } - shiny::updateSelectInput( - session, - "snmf_selected_run", - choices = as.character(seq_len(state$repetitions)), + session, "snmf_selected_run", + choices = as.character(seq_len(state$repetitions)), selected = as.character(selected_run) ) }, ignoreInit = TRUE) - + selected_k <- shiny::reactive({ req(state$project, state$k_values) k <- input$snmf_selected_k - if (is.null(k) || !nzchar(k)) { - return(as.integer(state$best_k %||% state$k_values[[1]])) - } + if (is.null(k) || !nzchar(k)) return(as.integer(state$best_k %||% state$k_values[[1]])) as.integer(k) }) - + selected_run <- shiny::reactive({ req(state$project, state$repetitions) r <- input$snmf_selected_run if (is.null(r) || !nzchar(r)) return(1L) as.integer(r) }) - + + # Q matrix reactive q_matrix <- shiny::reactive({ req(state$project) k <- selected_k() r <- selected_run() - - q <- call_with_allowed_named_args( - LEA::Q, - list(state$project, K = k, run = r) - ) - + + q <- call_with_allowed_named_args(LEA::Q, list(state$project, K = k, run = r)) q <- as.matrix(q) + if (!is.null(state$sample_ids) && length(state$sample_ids) == nrow(q)) { rownames(q) <- state$sample_ids } else if (is.null(rownames(q))) { @@ -359,135 +407,128 @@ mod_SNMF_server <- function(input, output, session, parent_session) { colnames(q) <- paste0("Cluster", seq_len(ncol(q))) q }) - + + # Outputs output$snmf_q_table <- DT::renderDT({ - q <- q_matrix() + q <- q_matrix() df <- data.frame(ID = rownames(q), q, check.names = FALSE) DT::datatable(df, options = list(scrollX = TRUE, pageLength = 10)) }) - + output$snmf_q_plot <- shiny::renderPlot({ - q <- q_matrix() - df <- data.frame(ID = rownames(q), q, check.names = FALSE) - + q <- q_matrix() + df <- data.frame(ID = rownames(q), q, check.names = FALSE) q_cols <- colnames(q) + long <- stats::reshape( df, - varying = q_cols, - v.names = "Q", - timevar = "Cluster", - times = q_cols, + varying = q_cols, + v.names = "Q", + timevar = "Cluster", + times = q_cols, direction = "long" ) - long$ID <- factor(long$ID, levels = unique(df$ID)) + long$ID <- factor(long$ID, levels = unique(df$ID)) long$Cluster <- factor(long$Cluster, levels = q_cols) - + ggplot(long, ggplot2::aes(x = ID, y = Q, fill = Cluster)) + geom_col(width = 0.9) + scale_y_continuous(labels = scales::percent_format(accuracy = 1)) + labs(x = "Individual", y = "Ancestry proportion", fill = "Cluster") + theme_minimal() + theme( - axis.text.x = element_text(angle = 45, hjust = 1, vjust = 1, size = 8), + axis.text.x = element_text(angle = 45, hjust = 1, vjust = 1, size = 8), panel.grid.major.x = element_blank() ) }) - + output$snmf_ce_plot <- shiny::renderPlot({ validate(shiny::need(isTRUE(state$entropy_enabled), "Cross-entropy disabled (see Selection mode).")) - validate(shiny::need(!is.null(state$ce_summary), "Run SNMF to compute cross-entropy.")) - + validate(shiny::need(!is.null(state$ce_summary), "Run SNMF to compute cross-entropy.")) + ggplot(state$ce_summary, aes(x = K, y = min_cross_entropy)) + geom_line() + geom_point() + labs(x = "K", y = "Minimum cross-entropy", title = "SNMF cross-entropy by K") + theme_minimal() }) - + output$snmf_ce_table <- DT::renderDT({ validate(shiny::need(isTRUE(state$entropy_enabled), "Cross-entropy disabled (see Selection mode).")) - validate(shiny::need(!is.null(state$ce_summary), "Run SNMF to compute cross-entropy.")) - - DT::datatable( - state$ce_summary, - options = list(pageLength = 10, scrollX = TRUE) - ) + validate(shiny::need(!is.null(state$ce_summary), "Run SNMF to compute cross-entropy.")) + DT::datatable(state$ce_summary, options = list(pageLength = 10, scrollX = TRUE)) }) - + + # Run SNMF observeEvent(input$snmf_run, { if (!requireNamespace("LEA", quietly = TRUE)) { show_error("Missing dependency", "Install the LEA package to use SNMF.") return() } - if (is.null(input$snmf_file$datapath)) { show_error("Missing input", "Upload a .vcf/.vcf.gz or .geno file.") return() } - + k_min <- as.integer(input$snmf_k_min) k_max <- as.integer(input$snmf_k_max) if (is.na(k_min) || is.na(k_max) || k_min < 1 || k_max < 1 || k_min > k_max) { - show_error("Invalid K range", "K min and K max must be integers with K min ≤ K max and both ≥ 1.") + show_error("Invalid K range", "K min and K max must be integers with K min \u2264 K max and both \u2265 1.") return() } - + reps <- as.integer(input$snmf_repetitions) if (is.na(reps) || reps < 1) { - show_error("Invalid repetitions", "Repetitions must be an integer ≥ 1.") + show_error("Invalid repetitions", "Repetitions must be an integer \u2265 1.") return() } - + ploidy <- as.integer(input$snmf_ploidy) if (is.na(ploidy) || ploidy < 1) { - show_error("Invalid ploidy", "Ploidy must be an integer ≥ 1.") + show_error("Invalid ploidy", "Ploidy must be an integer \u2265 1.") return() } - + entropy_enabled <- input$snmf_select_mode %in% c("auto_entropy", "manual_entropy") - + cleanup_run_dir() - - state$run_dir <- tempfile("snmf_", tmpdir = tempdir()) - run_ctx$run_dir <- state$run_dir + + state$run_dir <- tempfile("snmf_", tmpdir = tempdir()) + run_ctx$run_dir <- state$run_dir dir.create(state$run_dir, recursive = TRUE, showWarnings = FALSE) - state$project <- NULL - state$geno_path <- NULL - state$vcf_path <- NULL - state$k_values <- seq(k_min, k_max) - state$repetitions <- reps + state$project <- NULL + state$geno_path <- NULL + state$vcf_path <- NULL + state$k_values <- seq(k_min, k_max) + state$repetitions <- reps state$entropy_enabled <- entropy_enabled - state$ce_df <- NULL - state$ce_summary <- NULL - state$best_k <- NULL - state$best_run_by_k <- NULL - state$sample_ids <- NULL - - shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 5, title = "Preparing input") + state$ce_df <- NULL + state$ce_summary <- NULL + state$best_k <- NULL + state$best_run_by_k <- NULL + state$sample_ids <- NULL + + shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 5, title = "Preparing input") set_status("Preparing input...\n") - + uploaded_name <- input$snmf_file$name %||% "genotypes" - ext_lower <- tolower(uploaded_name) - - file_base <- sub("\\.(vcf\\.gz|vcf|geno|gz)$", "", basename(uploaded_name), ignore.case = TRUE) - - geno_path <- file.path(state$run_dir, paste0(file_base, ".geno")) + ext_lower <- tolower(uploaded_name) + file_base <- sub("\\.(vcf\\.gz|vcf|geno|gz)$", "", basename(uploaded_name), ignore.case = TRUE) + geno_path <- file.path(state$run_dir, paste0(file_base, ".geno")) uploaded_path <- input$snmf_file$datapath - + # Convert input to .geno if needed if (grepl("\\.geno$", ext_lower)) { copy_file_if_needed(uploaded_path, geno_path, overwrite = TRUE) } else if (grepl("\\.vcf\\.gz$|\\.vcf$|\\.gz$", ext_lower)) { - shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 15, title = "Converting VCF → GENO") + shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 15, title = "Converting VCF \u2192 GENO") set_status("Converting VCF to GENO...\n") - + vcf_to_geno_res <- tryCatch( - { - write_vcf_upload_as_geno(uploaded_path, geno_path) - }, + write_vcf_upload_as_geno(uploaded_path, geno_path), error = function(e) e ) - + if (!file.exists(geno_path)) { geno_candidates <- list.files(state$run_dir, pattern = "\\.geno$", full.names = TRUE) if (length(geno_candidates) >= 1) { @@ -495,7 +536,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { copy_file_if_needed(newest, geno_path, overwrite = TRUE) } } - + if (!file.exists(geno_path)) { msg <- if (inherits(vcf_to_geno_res, "error")) vcf_to_geno_res$message else "VCF conversion did not produce a .geno file." show_error("VCF conversion failed", msg) @@ -503,7 +544,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { set_status(paste0("ERROR: ", msg, "\n")) return() } - + if (is.list(vcf_to_geno_res) && !is.null(vcf_to_geno_res$sample_ids)) { state$sample_ids <- vcf_to_geno_res$sample_ids } @@ -513,54 +554,54 @@ mod_SNMF_server <- function(input, output, session, parent_session) { set_status("ERROR: Unsupported file type.\n") return() } - + state$geno_path <- geno_path - state$vcf_path <- NULL - + state$vcf_path <- NULL + shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 35, title = "Running SNMF") set_status( "Running SNMF...\n", "Input GENO: ", basename(state$geno_path), "\n", - "K: ", k_min, "–", k_max, "\n", + "K: ", k_min, "\u2013", k_max, "\n", "Repetitions: ", reps, "\n", "Entropy: ", if (entropy_enabled) "enabled" else "disabled", "\n" ) - + old_wd <- getwd() on.exit(setwd(old_wd), add = TRUE) setwd(state$run_dir) - + snmf_args <- list( state$geno_path, - K = state$k_values, + K = state$k_values, repetitions = reps, - ploidy = ploidy, - entropy = entropy_enabled, - alpha = input$snmf_alpha, - iterations = as.integer(input$snmf_iterations), - tolerance = as.numeric(input$snmf_tolerance), - percentage = as.numeric(input$snmf_percentage), - CPU = as.integer(input$snmf_cpu), - seed = as.integer(input$snmf_seed) + ploidy = ploidy, + entropy = entropy_enabled, + alpha = input$snmf_alpha, + iterations = as.integer(input$snmf_iterations), + tolerance = as.numeric(input$snmf_tolerance), + percentage = as.numeric(input$snmf_percentage), + CPU = as.integer(input$snmf_cpu), + seed = as.integer(input$snmf_seed) ) - + project <- tryCatch( call_with_allowed_named_args(LEA::snmf, snmf_args), error = function(e) e ) - + if (inherits(project, "error")) { show_error("SNMF failed", project$message) shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 0, title = " ") set_status(paste0("ERROR: ", project$message, "\n")) return() } - + state$project <- project - + shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 75, title = "Summarizing results") set_status(paste0(capture.output(str(project, max.level = 1)), collapse = "\n"), "\n") - + if (entropy_enabled) { ce_records <- list() for (k in state$k_values) { @@ -570,103 +611,93 @@ mod_SNMF_server <- function(input, output, session, parent_session) { error = function(e) NA_real_ ) ce_records[[length(ce_records) + 1]] <- data.frame( - K = as.integer(k), - run = as.integer(r), + K = as.integer(k), + run = as.integer(r), cross_entropy = as.numeric(ce_val), stringsAsFactors = FALSE ) } } state$ce_df <- do.call(rbind, ce_records) - - min_ce_by_k <- tapply(state$ce_df$cross_entropy, state$ce_df$K, min, na.rm = TRUE) + + min_ce_by_k <- tapply(state$ce_df$cross_entropy, state$ce_df$K, min, na.rm = TRUE) best_run_by_k <- sapply(names(min_ce_by_k), function(k_chr) { k_int <- as.integer(k_chr) - sub <- state$ce_df[state$ce_df$K == k_int, , drop = FALSE] + sub <- state$ce_df[state$ce_df$K == k_int, , drop = FALSE] if (nrow(sub) == 0) return(NA_integer_) sub$run[which.min(sub$cross_entropy)] }) - + state$best_run_by_k <- best_run_by_k ce_summary <- data.frame( - K = as.integer(names(min_ce_by_k)), - best_run = as.integer(best_run_by_k[names(min_ce_by_k)]), + K = as.integer(names(min_ce_by_k)), + best_run = as.integer(best_run_by_k[names(min_ce_by_k)]), min_cross_entropy = as.numeric(min_ce_by_k), - stringsAsFactors = FALSE + stringsAsFactors = FALSE ) - ce_summary <- ce_summary[order(ce_summary$K), , drop = FALSE] + ce_summary <- ce_summary[order(ce_summary$K), , drop = FALSE] state$ce_summary <- ce_summary - state$best_k <- ce_summary$K[which.min(ce_summary$min_cross_entropy)] + state$best_k <- ce_summary$K[which.min(ce_summary$min_cross_entropy)] } else { state$best_k <- state$k_values[[1]] } - - # Initialize selectors (K + run) + + # Initialize selectors shiny::updateSelectInput( - session, - "snmf_selected_k", - choices = as.character(state$k_values), + session, "snmf_selected_k", + choices = as.character(state$k_values), selected = as.character(state$best_k %||% state$k_values[[1]]) ) - + initial_run <- 1L if (!is.null(state$best_run_by_k)) { br <- state$best_run_by_k[as.character(state$best_k)] if (!is.na(br)) initial_run <- as.integer(br) } shiny::updateSelectInput( - session, - "snmf_selected_run", - choices = as.character(seq_len(reps)), + session, "snmf_selected_run", + choices = as.character(seq_len(reps)), selected = as.character(initial_run) ) - + shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 100, title = "Complete!") set_status("SNMF complete.\n") }) - + + # Downloads ─ output$download_q_csv <- shiny::downloadHandler( - filename = function() { - paste0("snmf_Q_K", selected_k(), "_run", selected_run(), "_", Sys.Date(), ".csv") - }, - content = function(file) { + filename = function() paste0("snmf_Q_K", selected_k(), "_run", selected_run(), "_", Sys.Date(), ".csv"), + content = function(file) { req(state$project) - q <- q_matrix() + q <- q_matrix() df <- data.frame(ID = rownames(q), q, check.names = FALSE) utils::write.csv(df, file, row.names = FALSE) } ) - + output$download_ce_csv <- shiny::downloadHandler( - filename = function() { - paste0("snmf_cross_entropy_", Sys.Date(), ".csv") - }, - content = function(file) { + filename = function() paste0("snmf_cross_entropy_", Sys.Date(), ".csv"), + content = function(file) { req(state$project) validate(shiny::need(isTRUE(state$entropy_enabled), "Cross-entropy disabled (see Selection mode).")) utils::write.csv(state$ce_df %||% data.frame(), file, row.names = FALSE) } ) - + output$download_project_zip <- shiny::downloadHandler( - filename = function() { - paste0("snmf_project_", Sys.Date(), ".zip") - }, - content = function(file) { + filename = function() paste0("snmf_project_", Sys.Date(), ".zip"), + content = function(file) { req(state$project) export_try <- function(args) { tryCatch(call_with_allowed_named_args(LEA::export.snmfProject, args), error = function(e) e) } - + res <- export_try(list(state$project, file = file)) if (file.exists(file)) return() - + res2 <- export_try(list(state$project)) if (is.character(res2) && length(res2) >= 1) { - if (file.exists(res2[[1]])) { - file.copy(res2[[1]], file, overwrite = TRUE) - return() - } + if (file.exists(res2[[1]])) { file.copy(res2[[1]], file, overwrite = TRUE); return() } if (dir.exists(res2[[1]])) { all_paths <- list.files(res2[[1]], full.names = TRUE, recursive = TRUE) all_paths <- all_paths[file.info(all_paths)$isdir %in% FALSE] @@ -674,25 +705,74 @@ mod_SNMF_server <- function(input, output, session, parent_session) { return() } } - + zips <- list.files(state$run_dir, pattern = "\\.zip$", full.names = TRUE) if (length(zips) >= 1) { newest <- zips[which.max(file.info(zips)$mtime)] file.copy(newest, file, overwrite = TRUE) return() } - - if (inherits(res, "error")) stop(res$message) + + if (inherits(res, "error")) stop(res$message) if (inherits(res2, "error")) stop(res2$message) stop("export.snmfProject() did not produce a zip file.") } ) - + + output$download_snmf_figure <- shiny::downloadHandler( + filename = function() { + ext <- input$snmf_image_type %||% "jpeg" + fig <- input$snmf_figure %||% "Ancestry Plot" + lbl <- if (fig == "Cross-Entropy Plot") "cross_entropy" else "ancestry_plot" + paste0("snmf_", lbl, "_", Sys.Date(), ".", ext) + }, + content = function(file) { + req(state$project) + ext <- input$snmf_image_type %||% "jpeg" + width <- as.numeric(input$snmf_image_width %||% 8) + height <- as.numeric(input$snmf_image_height %||% 5) + dpi <- as.numeric(input$snmf_image_res %||% 300) + fig <- input$snmf_figure %||% "Ancestry Plot" + + p <- if (fig == "Cross-Entropy Plot") { + validate(shiny::need(isTRUE(state$entropy_enabled), "Cross-entropy disabled.")) + validate(shiny::need(!is.null(state$ce_summary), "Run SNMF first.")) + ggplot(state$ce_summary, aes(x = K, y = min_cross_entropy)) + + geom_line() + geom_point() + + labs(x = "K", y = "Minimum cross-entropy", title = "SNMF cross-entropy by K") + + theme_minimal() + } else { + q <- q_matrix() + df <- data.frame(ID = rownames(q), q, check.names = FALSE) + q_cols <- colnames(q) + long <- stats::reshape(df, varying = q_cols, v.names = "Q", timevar = "Cluster", + times = q_cols, direction = "long") + long$ID <- factor(long$ID, levels = unique(df$ID)) + long$Cluster <- factor(long$Cluster, levels = q_cols) + ggplot(long, ggplot2::aes(x = ID, y = Q, fill = Cluster)) + + geom_col(width = 0.9) + + scale_y_continuous(labels = scales::percent_format(accuracy = 1)) + + labs(x = "Individual", y = "Ancestry proportion", fill = "Cluster") + + theme_minimal() + + theme(axis.text.x = element_text(angle = 45, hjust = 1, vjust = 1, size = 8), + panel.grid.major.x = element_blank()) + } + + if (ext %in% c("png", "jpeg", "tiff")) { + ggplot2::ggsave(filename = file, plot = p, width = width, height = height, units = "in", dpi = dpi) + } else { + ggplot2::ggsave(filename = file, plot = p, width = width, height = height, units = "in") + } + } + ) + session$onSessionEnded(function() { cleanup_run_dir() }) } -`%||%` <- function(x, y) { - if (is.null(x)) y else x -} +## To be copied in the UI +# mod_SNMF_ui("SNMF_1") + +## To be copied in the server +# mod_SNMF_server("SNMF_1") \ No newline at end of file diff --git a/R/mod_help.R b/R/mod_help.R index 3fb784a..02c946f 100644 --- a/R/mod_help.R +++ b/R/mod_help.R @@ -1,64 +1,138 @@ -#' help UI Function -#' -#' @description A shiny Module. +# mod_help.R + +#' Help module UI #' -#' @param id,input,output,session Internal parameters for {shiny}. +#' @param id Module id #' #' @noRd -#' -#' @importFrom shiny NS tagList includeMarkdown -mod_help_ui <- function(id){ - ns <- NS(id) - tagList( - fluidPage( - column(width=12), - column(width=12, - box(title="Predictive Ability", id = "Predictive_Ability_box",width = 12, collapsible = TRUE, collapsed = TRUE, status = "info", solidHeader = TRUE, - "This tab provides the predictive ability of a GBLUP model for each trait across all samples within a genomic dataset", - br(), br(), - bs4Dash::tabsetPanel(id = "Predictive_Ability_tabset", - tabPanel("Parameters description", value = "Predictive_Ability_par", br(), - includeMarkdown(system.file("help_files/Predictive_Ability_par.Rmd", package = "BIGapp")) - ), - tabPanel("Results description", value = "Predictive_Ability_results", br(), - includeMarkdown(system.file("help_files/Predictive_Ability_res.Rmd", package = "BIGapp")) - ), - tabPanel("How to cite", value = "Predictive_Ability_cite", br(), - includeMarkdown(system.file("help_files/Predictive_Ability_cite.Rmd", package = "BIGapp")) - )) - ), - box(title="Genomic Prediction", id = "Genomic_Prediction_box",width = 12, collapsible = TRUE, collapsed = TRUE, status = "info", solidHeader = TRUE, - "his tab estimates the trait and estimated-breeding-values (EBVs) for either all individuals in a genomic dataset, or by training the model with one genomic dataset to predict the values in another.", - br(), br(), - bs4Dash::tabsetPanel(id = "Genomic_Prediction_tabset", - tabPanel("Parameters description", value = "Genomic_Prediction_par", br(), - includeMarkdown(system.file("help_files/Genomic_Prediction_par.Rmd", package = "BIGapp")) - ), - tabPanel("Results description", value = "Genomic_Prediction_results", br(), - includeMarkdown(system.file("help_files/Genomic_Prediction_res.Rmd", package = "BIGapp")) - ), - tabPanel("How to cite", value = "Genomic_Prediction_cite", br(), - includeMarkdown(system.file("help_files/Genomic_Prediction_cite.Rmd", package = "BIGapp")) - )) - ), - ), - column(width=2) - # Add Help content here +mod_help_ui <- function(id) { + ns <- shiny::NS(id) + shiny::tagList( + shiny::fluidRow( + shiny::column( + width = 12, + shiny::div( + style = "padding: 20px;", + shiny::div( + style = "text-align: center; margin-bottom: 25px; padding-bottom: 15px; border-bottom: 2px solid #17a2b8;", + shiny::tags$h2("Help Documentation", style = "color: #17a2b8; margin-bottom: 10px;"), + shiny::tags$p("Click a module to expand its help section.", + style = "color: #666; font-size: 16px;") + ), + shiny::uiOutput(ns("help_accordion")) + ) + ) ) ) } -#' help Server Functions +#' Help module server +#' +#' @param id Module id +#' @param parent_session Parent (app) session #' #' @noRd -mod_help_server <- function(input, output, session, parent_session){ - - ns <- session$ns - -} - -## To be copied in the UI -# mod_help_ui("help_1") - -## To be copied in the server -# mod_help_server("help_1") +mod_help_server <- function(id, parent_session = NULL) { + shiny::moduleServer(id, function(input, output, session) { + + # ── Top-level accordion panel builder ───────────────────────────────── + make_top_panel <- function(panel_id, icon_name, label, body_content) { + shiny::tags$div( + style = "margin-bottom: 8px;", + shiny::tags$div( + style = "background-color: #17a2b8; border-radius: 6px; overflow: hidden;", + shiny::tags$button( + class = "btn w-100 text-left d-flex align-items-center justify-content-between", + style = "color: white; font-size: 15px; font-weight: 600; padding: 14px 18px; background: none; border: none;", + `data-toggle` = "collapse", + `data-target` = paste0("#top_", panel_id), + `aria-expanded` = "false", + shiny::tags$span( + shiny::tagList( + shiny::icon(icon_name), + shiny::tags$span(label, style = "margin-left: 8px;") + ) + ), + shiny::tags$span("+", style = "font-size: 20px; font-weight: bold;") + ) + ), + shiny::tags$div( + id = paste0("top_", panel_id), + class = "collapse", + shiny::tags$div( + style = "border: 1px solid #17a2b8; border-top: none; border-radius: 0 0 6px 6px; padding: 16px;", + body_content + ) + ) + ) + } + + # ── Inner collapse panel builder (passed down to help_content_* fns) ── + make_collapse_panel <- function(panel_id, icon_name, label, body_content) { + shiny::tags$div( + class = "card mb-1", + style = "border: 1px solid #dee2e6; border-radius: 4px;", + shiny::tags$div( + class = "card-header p-0", + style = "background-color: #f8f9fa;", + shiny::tags$button( + class = "btn btn-link btn-sm w-100 text-left d-flex align-items-center", + style = "color: #343a40; text-decoration: none; font-size: 13px; padding: 8px 12px; gap: 6px;", + `data-toggle` = "collapse", + `data-target` = paste0("#", panel_id), + `aria-expanded` = "false", + shiny::icon(icon_name), + shiny::tags$span(label) + ) + ), + shiny::tags$div( + id = panel_id, + class = "collapse", + shiny::tags$div( + class = "card-body", + style = "padding: 12px 14px; font-size: 13px;", + body_content + ) + ) + ) + } + + # ── Render accordion ─────────────────────────────────────────────────── + output$help_accordion <- shiny::renderUI({ + shiny::tagList( + + make_top_panel( + panel_id = "ped_cleaner", + icon_name = "sitemap", + label = "Pedigree Cleaner", + body_content = help_content_ped_cleaner( + collapse_fn = make_collapse_panel, + id_prefix = "page" + ) + ), + + make_top_panel( + panel_id = "polybreedtools", + icon_name = "chart-column", + label = HTML("BreedToolspoly"), + body_content = help_content_polybreedtools( + collapse_fn = make_collapse_panel, + id_prefix = "page" + ) + ), + + make_top_panel( + panel_id = "snmf", + icon_name = "list-ol", + label = "SNMF", + body_content = help_content_SNMF( + collapse_fn = make_collapse_panel, + id_prefix = "page" + ) + ) + + ) + }) + + }) +} \ No newline at end of file diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R index 1008c8c..7e1632e 100644 --- a/R/mod_ped_cleaner.R +++ b/R/mod_ped_cleaner.R @@ -7,105 +7,137 @@ mod_ped_cleaner_ui <- function(id) { ns <- shiny::NS(id) shiny::tagList( shinyjs::useShinyjs(), - shiny::sidebarLayout( - shiny::sidebarPanel( - shiny::div( - style = "background-color: #ffffff; border: 2px solid #444444; padding: 15px; margin-bottom: 20px; border-radius: 8px;", - shiny::h4( - shiny::tagList(shiny::icon("gear"), "Getting Started"), - style = "color: #000000; margin-bottom: 15px; border-bottom: 1px solid black; padding-bottom: 8px;" - ), - shiny::htmlOutput(ns("dynamic_guide")), - shiny::div( - style = "text-align: center; margin-top: 15px; padding-top: 10px; border-top: 1px solid #dee2e6;", - shiny::actionButton( - ns("help_btn"), - shiny::tagList(shiny::icon("circle-question"), "Help"), - style = "background-color: #FFD700; color: #000000; border:none; padding: 8px 16px; border-radius: 5px;" - ) - ) - ), - shiny::wellPanel( - style = "background-color: #ffffff; border: 2px solid #444444; padding: 15px; margin-bottom: 20px; border-radius: 8px;", - shiny::h4( - shiny::tagList(shiny::icon("sitemap"), "Pedigree Input"), - style = "color: #000000; margin-bottom: 15px; border-bottom: 1px solid #000000; padding-bottom: 8px;" - ), + shiny::fluidRow( + + # ── Column 1: Inputs ────────────────────────────────────────────────── + shiny::column( + width = 3, + bs4Dash::box( + title = "Inputs", + width = 12, + collapsible = TRUE, + collapsed = FALSE, + status = "info", + solidHeader = TRUE, shiny::p( "Upload a pedigree file (.txt, .tsv, or .csv) with columns: id, male_parent, female_parent.", style = "color: #6c757d; font-size: 12px; margin-bottom: 15px;" ), shiny::fileInput( ns("ped_file"), - "Upload pedigree file", + "Upload Pedigree File", accept = c(".txt", ".tsv", ".csv") ), shiny::actionButton( ns("run_check"), "Run Pedigree Check", - style = "margin-top: 10px; width: 100%; background-color: #28a745; color: white; border: none; padding: 10px; border-radius: 5px;" - ) - ), - shiny::wellPanel( - style = "background-color: #ffffff; border: 2px solid #444444; padding: 15px; margin-bottom: 20px; border-radius: 8px;", - shiny::h4( - shiny::tagList(shiny::icon("download"), "Export"), - style = "color: #000000; margin-bottom: 15px; border-bottom: 1px solid #000000; padding-bottom: 8px;" - ), - shiny::p( - "Download the corrected pedigree and issue report as a zip file:", - style = "color: #6c757d; font-size: 12px; margin-bottom: 15px;" + style = "width: 100%; background-color: #28a745; color: white; border: none; padding: 10px; border-radius: 5px;" ), + shiny::hr(), shinyjs::disabled( shiny::downloadButton( ns("download_results"), "Export Corrected Pedigree + Report", style = "width: 100%; background-color: #28a745; color: white; border: none; padding: 10px; border-radius: 5px;" ) + ), + shiny::hr(), + shiny::div( + style = "text-align: center; margin-top: 5px;", + shiny::actionButton( + ns("help_btn"), + shiny::tagList(shiny::icon("circle-question"), "Help"), + style = "background-color: #FFD700; color: #000000; border: none; padding: 8px 16px; border-radius: 5px;" + ) ) - ) - ), - shiny::mainPanel( - shiny::fluidRow( - shiny::column( - width = 12, - bs4Dash::box( - title = "Status", - width = 12, - collapsible = TRUE, - status = "info", - shinyWidgets::progressBar( - id = ns("pb_ped"), - value = 0, - status = "info", - display_pct = TRUE, - striped = TRUE, - title = " " - ) + ) # closes box + ), # closes column(width = 3) + + # ── Column 2: Results ───────────────────────────────────────────────── + shiny::column( + width = 6, + bs4Dash::box( + title = "Pedigree Check Results", + status = "info", + solidHeader = FALSE, + width = 12, + height = 650, + maximizable = TRUE, + bs4Dash::tabsetPanel( + id = ns("ped_results_tabs"), + type = "tabs", + shiny::tabPanel( + "Instructions", + shiny::fluidRow( + shiny::column(12, shiny::wellPanel(shiny::HTML(' +
      +
    • Upload a tab-separated .txt, .tsv, or .csv pedigree file.
    • +
    • Required columns: id, male_parent, female_parent.
    • +
    • Click Run Pedigree Check to detect and fix issues.
    • +
    • Issues detected and corrected:
    • +
        +
      • Exact Duplicates — fully identical rows are removed.
      • +
      • Conflicting IDs — same ID with different parents; ambiguous parent set to 0.
      • +
      • Inconsistent Sex Roles — individual appears as both male and female parent.
      • +
      • Missing Parents — referenced parents added with unknown parents (0).
      • +
      • Cycles / Dependencies — circular relationships are flagged.
      • +
      +
    • Review results in the Summary and Issue Tables tabs, then export.
    • +
    + '))) + ), + style = "overflow-y: auto; height: 550px" + ), + shiny::tabPanel( + "Summary", + shiny::uiOutput(ns("summary_banner")), + style = "overflow-y: auto; height: 550px; padding: 10px;" + ), + shiny::tabPanel( + "Issue Tables", + shiny::uiOutput(ns("results_ui")), + style = "overflow-y: auto; height: 550px; padding: 10px;" ) ) - ), - shiny::br(), - shiny::uiOutput(ns("summary_banner")), - shiny::br(), - shiny::uiOutput(ns("results_ui")) - ) - ) - ) + ) # closes box + ), # closes column(width = 6) + + # ── Column 3: Status ────────────────────────────────────────────────── + shiny::column( + width = 3, + bs4Dash::box( + title = "Status", + width = 12, + collapsible = TRUE, + status = "info", + solidHeader = TRUE, + shinyWidgets::progressBar( + id = ns("pb_ped"), + value = 0, + status = "info", + display_pct = TRUE, + striped = TRUE, + title = " " + ) + ) + ) # closes column(width = 3) + + ) # closes fluidRow + ) # closes tagList } #' Pedigree Cleaner module server #' #' @param id Module id -#' @param parent_session Parent (app) session, used for sidebar navigation +#' @param parent_session Parent (app) session #' #' @noRd mod_ped_cleaner_server <- function(id, parent_session) { shiny::moduleServer(id, function(input, output, session) { + check_results <- shiny::reactiveVal(NULL) - error_message <- shiny::reactiveVal("") - # Helpers + # ── Helpers ─────────────────────────────────────────────────────────────── make_collapse_panel <- function(panel_id, icon_name, label, body_content) { shiny::tags$div( class = "card mb-1", @@ -137,48 +169,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { sanitize_id <- function(x) gsub("[^A-Za-z0-9]", "_", tolower(x)) - # Startup - output$dynamic_guide <- shiny::renderUI({ - current_error <- error_message() - has_file <- !is.null(input$ped_file) - has_results <- !is.null(check_results()) - - if (current_error != "") { - return(shiny::HTML(paste0( - "
    ", - "

    Error occurred:

    ", - "

    ", current_error, "

    ", - "
    " - ))) - } - - get_icon <- function(done) { - if (done) { - "[Done]" - } else { - "[Pending]" - } - } - - steps <- c( - sprintf("

    %s Step 1: Upload your pedigree file (.txt, .tsv, or .csv)

    ", - get_icon(has_file)), - sprintf("

    %s Step 2: Click 'Run Pedigree Check' to detect and fix issues

    ", - get_icon(has_results)), - sprintf("

    %s Step 3: Review results and export the corrected pedigree

    ", - get_icon(has_results)) - ) - - if (has_results) { - steps <- c(steps, - "

    Check Complete!

    ", - "

    Your corrected pedigree is ready to download.

    " - ) - } - shiny::HTML(paste(steps, collapse = "")) - }) - - # Help button + # ── Help button ─────────────────────────────────────────────────────────── shiny::observeEvent(input$help_btn, { shiny::showModal( shiny::modalDialog( @@ -191,10 +182,9 @@ mod_ped_cleaner_server <- function(id, parent_session) { ) }) - # Run check + # ── Run check ───────────────────────────────────────────────────────────── shiny::observeEvent(input$run_check, { shiny::req(input$ped_file) - error_message("") check_results(NULL) shinyjs::disable(session$ns("download_results")) @@ -272,18 +262,18 @@ mod_ped_cleaner_server <- function(id, parent_session) { ) shinyjs::enable(session$ns("download_results")) + bs4Dash::updateTabsetPanel(session, "ped_results_tabs", selected = "Summary") + }, error = function(e) { - error_message(paste0("Error running pedigree check: ", e$message)) - check_results(NULL) shinyWidgets::updateProgressBar( session = session, id = "pb_ped", value = 100, status = "danger", - title = "Failed" + title = paste0("Failed: ", e$message) ) }) }) - # Summary banner + # ── Summary banner ──────────────────────────────────────────────────────── output$summary_banner <- shiny::renderUI({ shiny::req(check_results()) report <- check_results()$report @@ -300,11 +290,11 @@ mod_ped_cleaner_server <- function(id, parent_session) { border_color <- if (total == 0) "#c3e6cb" else "#ffeeba" text_color <- if (total == 0) "#155724" else "#856404" headline <- if (total == 0) "No issues found. Pedigree looks clean!" else - paste0(total, " issue(s) detected and corrected. Review the summary below.") + paste0(total, " issue(s) detected and corrected. Review the Issue Tables tab.") shiny::HTML(paste0( "
    ", + "; padding: 12px; border-radius: 6px; margin-bottom: 12px;'>", "

    ", headline, "

    ", "

    ", @@ -317,7 +307,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { )) }) - # Results UI + # ── Results UI ──────────────────────────────────────────────────────────── output$results_ui <- shiny::renderUI({ shiny::req(check_results()) report <- check_results()$report @@ -349,18 +339,6 @@ mod_ped_cleaner_server <- function(id, parent_session) { ) } - sections <- shiny::tagList( - shiny::h5( - shiny::tagList(shiny::icon("list-check"), " Check Results"), - style = "font-weight: bold; margin-bottom: 10px;" - ), - make_section("Exact Duplicates Removed", "copy", report$exact_duplicates, "#6c757d"), - make_section("Conflicting IDs Resolved", "exclamation", report$repeated_ids_diff, "#856404"), - make_section("Inconsistent Parent Sex Roles", "shuffle", report$inconsistent_sex_roles, "#856404"), - make_section("Missing Parents Added", "user-plus", report$missing_parents, "#0c5460"), - make_section("Cycles / Dependencies Detected", "rotate", report$dependencies, "#721c24") - ) - render_if <- function(title, df) { output_id <- paste0("tbl_", sanitize_id(title)) if (!is.null(df) && is.data.frame(df) && nrow(df) > 0) { @@ -379,10 +357,20 @@ mod_ped_cleaner_server <- function(id, parent_session) { render_if("Missing Parents Added", report$missing_parents) render_if("Cycles / Dependencies Detected", report$dependencies) - sections + shiny::tagList( + shiny::h5( + shiny::tagList(shiny::icon("list-check"), " Check Results"), + style = "font-weight: bold; margin-bottom: 10px;" + ), + make_section("Exact Duplicates Removed", "copy", report$exact_duplicates, "#6c757d"), + make_section("Conflicting IDs Resolved", "exclamation", report$repeated_ids_diff, "#856404"), + make_section("Inconsistent Parent Sex Roles", "shuffle", report$inconsistent_sex_roles, "#856404"), + make_section("Missing Parents Added", "user-plus", report$missing_parents, "#0c5460"), + make_section("Cycles / Dependencies Detected", "rotate", report$dependencies, "#721c24") + ) }) - # Download + # ── Download ────────────────────────────────────────────────────────────── output$download_results <- shiny::downloadHandler( filename = function() { paste0("pedigree_check_", Sys.Date(), ".zip") @@ -423,5 +411,6 @@ mod_ped_cleaner_server <- function(id, parent_session) { }, contentType = "application/zip" ) + }) } \ No newline at end of file diff --git a/R/mod_polybreedtools.R b/R/mod_polybreedtools.R index 5965523..49ccf80 100644 --- a/R/mod_polybreedtools.R +++ b/R/mod_polybreedtools.R @@ -9,18 +9,20 @@ #' @importFrom shiny NS tagList #' @import shinydisconnect #' @importFrom bs4Dash valueBoxOutput -mod_polybreedtools_ui <- function(id){ +mod_polybreedtools_ui <- function(id) { ns <- NS(id) tagList( fluidRow( + + # Column 1: Inputs column( width = 3, bs4Dash::box( - title = "Inputs", - width = 12, + title = "Inputs", + width = 12, collapsible = TRUE, - collapsed = FALSE, - status = "info", + collapsed = FALSE, + status = "info", solidHeader = TRUE, fileInput(ns("reference_file"), "Reference Genotypes (.txt)", accept = ".txt"), fileInput(ns("ref_ids_file"), "Reference IDs (.txt)", accept = ".txt"), @@ -28,48 +30,64 @@ mod_polybreedtools_ui <- function(id){ numericInput(ns("ploidy"), "Ploidy", value = 2, min = 1, max = 20, step = 1), actionButton(ns("run"), "Run Estimation"), br(), - br() - ) - ), + br(), + shiny::hr(), + shiny::div( + style = "text-align: center; margin-top: 5px;", + shiny::actionButton( + ns("help_btn"), + shiny::tagList(shiny::icon("circle-question"), "Help"), + style = "background-color: #FFD700; color: #000000; border:none; padding: 8px 16px; border-radius: 5px;" + ) + ) + ) # closes box + ), # closes column(width = 3) + + # Column 2: Results column( width = 6, bs4Dash::box( - title = "Line/breed content estimation", - status = "info", + title = "Line/breed content estimation", + status = "info", solidHeader = FALSE, - width = 12, - height = 600, + width = 12, + height = 600, maximizable = TRUE, bs4Dash::tabsetPanel( - id = ns("polybreedtools_results_tabs"), + id = ns("polybreedtools_results_tabs"), type = "tabs", tabPanel( "Instructions", fluidRow( column(12, shiny::wellPanel(shiny::HTML(' -

    - '))) +
      +
    • This tool was developed by Breeding Insight.
    • +
    • It estimates the proportion of each of the lines/groups included in the reference population from genotype samples using methods from + Funkhouser et al. (2017).
    • +
    • Input format:
    • +
        +
      • Reference Genotypes: A genotype matrix (.txt) with SNPs in rows and samples in columns. The first column must be ID. Missing should be coded as NA.
      • +
      • Reference IDs: A two-column .txt file with population labels. Header example: Group1, Group2.
      • +
      • Validation Genotypes: Same format as the reference genotype file.
      • +
      +
    + '))) ), style = "overflow-y: auto; height: 500px" ), - shiny::tabPanel("Results Table", DT::DTOutput(ns("preview")), style = "overflow-y: auto; height: 500px"), - shiny::tabPanel("Ancestry Plot", shiny::plotOutput(ns("bar_plot"), height = "450px"), style = "overflow-y: auto; height: 500px") + shiny::tabPanel("Results Table", DT::DTOutput(ns("preview")), style = "overflow-y: auto; height: 500px"), + shiny::tabPanel("Ancestry Plot", shiny::plotOutput(ns("bar_plot"), height = "450px"), style = "overflow-y: auto; height: 500px") ) ), box( - title = "Example Inputs", status = "info", solidHeader = FALSE, width = 12, height = 400, maximizable = T, + title = "Example Inputs", + status = "info", + solidHeader = FALSE, + width = 12, + height = 400, + maximizable = TRUE, bs4Dash::tabsetPanel( - id = ns('example_tabs'), + id = ns("example_tabs"), type = "tabs", tabPanel( "Reference IDs", @@ -87,57 +105,64 @@ mod_polybreedtools_ui <- function(id){ ) ) ) - ), + ), # closes column(width = 6) + + # Column 3: Status + Plot Controls shiny::column( width = 3, bs4Dash::box( - title = "Status", - width = 12, + title = "Status", + width = 12, collapsible = TRUE, - status = "info", + status = "info", solidHeader = TRUE, shiny::verbatimTextOutput(ns("status")) ), - box(title = "Plot Controls", width=12, status = "warning", solidHeader = TRUE, collapsible = TRUE, - selectInput(ns("color_choice"), "Color Palette", choices = list("Standard Palettes" = c("Set1","Set3","Pastel2", - "Pastel1","Accent","Spectral", - "RdYlGn","RdGy"), - "Colorblind Friendly" = c("Set2","Paired","Dark2","YlOrRd","YlOrBr","YlGnBu","YlGn", - "Reds","RdPu","Purples","PuRd","PuBuGn","PuBu", - "OrRd","Oranges","Greys","Greens","GnBu","BuPu", - "BuGn","Blues","RdYlBu", - "RdBu", "PuOr","PRGn","PiYG","BrBG" - )), - selected = "Set1"), - checkboxInput(ns("poly_show_sample_labels"), "Show sample labels", value = FALSE), - checkboxInput(ns("poly_sort_by_predicted"), "Sort by predicted line", value = TRUE), - sliderInput(ns("poly_label_size"), "Label size", min = 6, max = 14, value = 8, step = 1), - div(style="display:inline-block; float:left", dropdownButton( + box( + title = "Plot Controls", + width = 12, + status = "warning", + solidHeader = TRUE, + collapsible = TRUE, + selectInput(ns("color_choice"), "Color Palette", + choices = list( + "Standard Palettes" = c("Set1","Set3","Pastel2","Pastel1","Accent","Spectral","RdYlGn","RdGy"), + "Colorblind Friendly" = c("Set2","Paired","Dark2","YlOrRd","YlOrBr","YlGnBu","YlGn", + "Reds","RdPu","Purples","PuRd","PuBuGn","PuBu","OrRd", + "Oranges","Greys","Greens","GnBu","BuPu","BuGn","Blues", + "RdYlBu","RdBu","PuOr","PRGn","PiYG","BrBG") + ), + selected = "Set1"), + checkboxInput(ns("poly_show_sample_labels"), "Show sample labels", value = FALSE), + checkboxInput(ns("poly_sort_by_predicted"), "Sort by predicted line", value = TRUE), + sliderInput(ns("poly_label_size"), "Label size", min = 6, max = 14, value = 8, step = 1), + div( + style = "display:inline-block; float:left", + dropdownButton( tags$h3("Save"), - selectInput( - inputId = ns("poly_image_type"), - label = "File Type", - choices = c("png", "jpeg", "svg", "pdf"), - selected = "png" - ), - sliderInput(inputId = ns("poly_image_res"), label = "Resolution (DPI)", value = 300, min = 50, max = 1000, step = 50), - sliderInput(inputId = ns("poly_image_width"), label = "Width (in)", value = 10, min = 3, max = 30, step = 0.5), - sliderInput(inputId = ns("poly_image_height"), label = "Height (in)", value = 5, min = 3, max = 20, step = 0.5), + selectInput(ns("poly_image_type"), "File Type", + choices = c("png", "jpeg", "svg", "pdf"), + selected = "png"), + sliderInput(ns("poly_image_res"), "Resolution (DPI)", value = 300, min = 50, max = 1000, step = 50), + sliderInput(ns("poly_image_width"), "Width (in)", value = 10, min = 3, max = 30, step = 0.5), + sliderInput(ns("poly_image_height"), "Height (in)", value = 5, min = 3, max = 20, step = 0.5), fluidRow( downloadButton(ns("download_poly_figure"), "Save Image"), - downloadButton(ns("download_poly_file"), "Save Files") + downloadButton(ns("download_poly_file"), "Save Files") ), - circle = FALSE, - status = "danger", - icon = icon("floppy-disk"), - width = "300px", - label = "Save", + circle = FALSE, + status = "danger", + icon = icon("floppy-disk"), + width = "300px", + label = "Save", tooltip = tooltipOptions(title = "Click to see options!") - )) - ) - ) - ) - ) + ) + ) + ) # closes Plot Controls box + ) # closes column(width = 3) + + ) # closes fluidRow + ) # closes tagList } #' PolyBreedTools Server Functions @@ -150,23 +175,68 @@ mod_polybreedtools_ui <- function(id){ #' @import BIGr #' #' @noRd -mod_polybreedtools_server <- function(input, output, session, parent_session){ +mod_polybreedtools_server <- function(input, output, session, parent_session) { ns <- session$ns - #Helper function + `%||%` <- function(x, y) if (is.null(x)) y else x + + # Helpers + make_collapse_panel <- function(panel_id, icon_name, label, body_content) { + shiny::tags$div( + class = "card mb-1", + style = "border: 1px solid #dee2e6; border-radius: 4px;", + shiny::tags$div( + class = "card-header p-0", + style = "background-color: #f8f9fa;", + shiny::tags$button( + class = "btn btn-link btn-sm w-100 text-left d-flex align-items-center", + style = "color: #343a40; text-decoration: none; font-size: 13px; padding: 8px 12px; gap: 6px;", + `data-toggle` = "collapse", + `data-target` = paste0("#", panel_id), + `aria-expanded` = "false", + shiny::icon(icon_name), + shiny::tags$span(label) + ) + ), + shiny::tags$div( + id = panel_id, + class = "collapse", + shiny::tags$div( + class = "card-body", + style = "padding: 12px 14px; font-size: 13px;", + body_content + ) + ) + ) + } + + # Help button + shiny::observeEvent(input$help_btn, { + shiny::showModal( + shiny::modalDialog( + title = shiny::tagList(shiny::icon("circle-question"), " PolyBreedTools — Help"), + size = "l", + easyClose = TRUE, + footer = shiny::modalButton("Close"), + help_content_polybreedtools(collapse_fn = make_collapse_panel, id_prefix = "modal") + ) + ) + }) + + # Helper function format_percent <- function(x) { scales::percent_format(accuracy = 0.1)(x) } - result_data <- reactiveVal(NULL) - poly_items <- reactiveValues( - pred_results = NULL, + poly_items <- reactiveValues( + pred_results = NULL, pred_results_long = NULL, - id_order = NULL + id_order = NULL ) + # Run estimation observeEvent(input$run, { req(input$reference_file, input$ref_ids_file, input$validation_file) output$status <- renderText("Running estimation...") @@ -177,115 +247,89 @@ mod_polybreedtools_server <- function(input, output, session, parent_session){ reference <- tibble::column_to_rownames(reference, "ID") reference_ids <- utils::read.table(input$ref_ids_file$datapath, header = TRUE, sep = "\t") - ref_ids <- lapply(as.list(reference_ids), as.character) + ref_ids <- lapply(as.list(reference_ids), as.character) -validation_raw <- utils::read.table(input$validation_file$datapath, header = TRUE, sep = "\t") - -# NA filtering: validation samples (rows) with < 50% call rate -sample_call_rate <- rowSums(!is.na(validation_raw)) / ncol(validation_raw) -removed_samples <- validation_raw$ID[sample_call_rate < 0.5] -validation_filtered <- validation_raw[sample_call_rate >= 0.5, , drop = FALSE] - -# NA filtering: validation markers (columns) with all NA -col_call_counts <- colSums(!is.na(validation_filtered)) -removed_markers <- colnames(validation_filtered)[col_call_counts == 0] -validation <- validation_filtered[, col_call_counts > 0, drop = FALSE] - - -# Build warning messages -warning_messages <- c() -if (length(removed_samples) > 0) { - warning_messages <- c(warning_messages, paste( - "WARNING: The following validation samples were removed due to genotyping rate < 50%:\n", - paste0(" • ", removed_samples, collapse = "\n") - )) -} -if (length(removed_markers) > 0) { - warning_messages <- c(warning_messages, paste( - "WARNING: The following markers were removed from validation because they had no successful genotype calls:\n", - paste0(" • ", removed_markers, collapse = "\n") - )) -} + validation_raw <- utils::read.table(input$validation_file$datapath, header = TRUE, sep = "\t") + # NA filtering: validation samples (rows) with < 50% call rate + sample_call_rate <- rowSums(!is.na(validation_raw)) / ncol(validation_raw) + removed_samples <- validation_raw$ID[sample_call_rate < 0.5] + validation_filtered <- validation_raw[sample_call_rate >= 0.5, , drop = FALSE] + # NA filtering: validation markers (columns) with all NA + col_call_counts <- colSums(!is.na(validation_filtered)) + removed_markers <- colnames(validation_filtered)[col_call_counts == 0] + validation <- validation_filtered[, col_call_counts > 0, drop = FALSE] - #duplicated ids in validation file - val_ids <- validation[, 1] + # Build warning messages + warning_messages <- c() + if (length(removed_samples) > 0) { + warning_messages <- c(warning_messages, paste( + "WARNING: The following validation samples were removed due to genotyping rate < 50%:\n", + paste0(" \u2022 ", removed_samples, collapse = "\n") + )) + } + if (length(removed_markers) > 0) { + warning_messages <- c(warning_messages, paste( + "WARNING: The following markers were removed from validation because they had no successful genotype calls:\n", + paste0(" \u2022 ", removed_markers, collapse = "\n") + )) + } + + # Duplicated IDs in validation file + val_ids <- validation[, 1] dup_val <- val_ids[duplicated(val_ids)] if (length(dup_val) > 0) { - - # Build message dup_val_msg <- paste( "Error: The following sample IDs have duplicates in your validation file.", "Please check your input file and remove or rename the following IDs:\n", - paste0(" • ", dup_val, collapse = "\n") + paste0(" \u2022 ", dup_val, collapse = "\n") ) - - # Show it in the ‘Status’ box output$status <- renderText(dup_val_msg) return() } - validation <- dplyr::distinct(validation, ID, .keep_all = TRUE) validation <- tibble::column_to_rownames(validation, "ID") freq <- BIGr:::allele_freq_poly(reference, ref_ids, ploidy = input$ploidy) # Error on NaN in freq - - na_pos <- which(is.na(freq), arr.ind = TRUE) # rows = row #, cols = col # - + na_pos <- which(is.na(freq), arr.ind = TRUE) if (nrow(na_pos) > 0) { - - # For each marker (column) collect the rows that contain NaN na_report <- lapply(unique(na_pos[, 2]), function(col_idx) { - rows_with_na <- na_pos[na_pos[, 2] == col_idx, 1] # row numbers - + rows_with_na <- na_pos[na_pos[, 2] == col_idx, 1] paste0( - " • ", colnames(freq)[col_idx], ": ", # marker name + " \u2022 ", colnames(freq)[col_idx], ": ", paste(rownames(freq)[rows_with_na], collapse = ", ") ) }) - - # Build message NaN_freq_msg <- paste( - "Error: The following markers where not succesfully genotyped for at least one reference population, please remove or correct them:", + "Error: The following markers were not successfully genotyped for at least one reference population, please remove or correct them:", paste(na_report, collapse = "\n"), "\nPlease remove or correct these markers", sep = "\n" ) - - # Show it in the ‘Status’ box output$status <- renderText(NaN_freq_msg) return() } - prediction <- BIGr:::solve_composition_poly(validation, freq, ploidy = input$ploidy) - prediction <- as.data.frame(prediction, check.names = FALSE) prediction <- prediction[, !colnames(prediction) %in% c("R2"), drop = FALSE] prediction[] <- lapply(prediction, as.numeric) columns_to_select <- colnames(prediction) - - predicted_line <- columns_to_select[max.col(prediction[, columns_to_select, drop = FALSE], ties.method = "first")] + predicted_line <- columns_to_select[max.col(prediction[, columns_to_select, drop = FALSE], ties.method = "first")] pred_results <- tibble::rownames_to_column(prediction, var = "ID") - pred_results <- dplyr::mutate( - pred_results, - `Predicted line` = predicted_line - ) - pred_results <- dplyr::mutate( - pred_results, - dplyr::across(dplyr::all_of(columns_to_select), ~format_percent(.x)) - ) + pred_results <- dplyr::mutate(pred_results, `Predicted line` = predicted_line) + pred_results <- dplyr::mutate(pred_results, dplyr::across(dplyr::all_of(columns_to_select), ~format_percent(.x))) result_data(pred_results) id_order <- data.frame( - ID = rownames(prediction), - predicted_line = predicted_line, + ID = rownames(prediction), + predicted_line = predicted_line, predicted_value = apply(prediction[, columns_to_select, drop = FALSE], 1, max, na.rm = TRUE), stringsAsFactors = FALSE ) @@ -297,40 +341,35 @@ if (length(removed_markers) > 0) { pred_results_long <- tibble::rownames_to_column(prediction, var = "ID") pred_results_long <- tidyr::pivot_longer( pred_results_long, - cols = dplyr::all_of(columns_to_select), - names_to = "category", + cols = dplyr::all_of(columns_to_select), + names_to = "category", values_to = "percent" ) - pred_results_long$predicted_line <- id_order$predicted_line[match(pred_results_long$ID, id_order$ID)] - poly_items$pred_results <- pred_results + poly_items$pred_results <- pred_results poly_items$pred_results_long <- pred_results_long - poly_items$id_order <- id_order + poly_items$id_order <- id_order final_status <- "Estimation complete. File ready for download." - if (length(warning_messages) > 0) { - final_status <- paste( - final_status, - "\n\n", - paste(warning_messages, collapse = "\n\n") - ) + final_status <- paste(final_status, "\n\n", paste(warning_messages, collapse = "\n\n")) } + output$status <- renderText(final_status) - output$status <- renderText(final_status) }, error = function(e) { output$status <- renderText(paste("Error during estimation:", e$message)) }) }) + # Ancestry plot ancestry_plot <- reactive({ req(poly_items$pred_results_long, poly_items$id_order) dat <- poly_items$pred_results_long if (isTRUE(input$poly_sort_by_predicted)) { - ord <- poly_items$id_order[order(poly_items$id_order$predicted_line, -poly_items$id_order$predicted_value), , drop = FALSE] + ord <- poly_items$id_order[order(poly_items$id_order$predicted_line, -poly_items$id_order$predicted_value), , drop = FALSE] dat$ID <- factor(dat$ID, levels = ord$ID) } else { dat$ID <- factor(dat$ID, levels = unique(dat$ID)) @@ -349,11 +388,10 @@ if (length(removed_markers) > 0) { ) } else { p <- p + theme( - axis.text.x = element_blank(), + axis.text.x = element_blank(), axis.ticks.x = element_blank() ) } - p }) @@ -362,11 +400,10 @@ if (length(removed_markers) > 0) { ancestry_plot() }) + # Downloads output$download_poly_file <- downloadHandler( - filename = function() { - paste0("lineage_estimation_", format(Sys.Date(), "%Y-%m-%d"), ".xlsx") - }, - content = function(file) { + filename = function() paste0("lineage_estimation_", format(Sys.Date(), "%Y-%m-%d"), ".xlsx"), + content = function(file) { req(poly_items$pred_results) openxlsx::write.xlsx(poly_items$pred_results, file = file, rowNames = FALSE) } @@ -379,13 +416,11 @@ if (length(removed_markers) > 0) { }, content = function(file) { req(poly_items$pred_results_long) - p <- ancestry_plot() - - ext <- input$poly_image_type %||% "png" - width <- as.numeric(input$poly_image_width %||% 10) + p <- ancestry_plot() + ext <- input$poly_image_type %||% "png" + width <- as.numeric(input$poly_image_width %||% 10) height <- as.numeric(input$poly_image_height %||% 5) - dpi <- as.numeric(input$poly_image_res %||% 300) - + dpi <- as.numeric(input$poly_image_res %||% 300) if (ext %in% c("png", "jpeg")) { ggplot2::ggsave(filename = file, plot = p, width = width, height = height, units = "in", dpi = dpi) } else { @@ -394,52 +429,37 @@ if (length(removed_markers) > 0) { } ) - # Sample reference IDs with >2 rows and variable length names + # Example tables example_ids_df <- data.frame( - Group1 = c("SampleAlpha", "S3", "ExampleFour", "",""), + Group1 = c("SampleAlpha", "S3", "ExampleFour", "", ""), Group2 = c("SampleOne", "SampleTwo", "SampleThree", "SampleFour", "SampleFive"), Group3 = c("SampleX", "SampleYy", "SampleZzzz", "ExampleEight", "") ) - output$example_ids <- renderTable({ - example_ids_df - }, bordered = TRUE) - - # Sample genotype matrix matching your example example_genos_df <- data.frame( - ID = paste0("Sample", c("1", "2", "3", "4", "5")), + ID = paste0("Sample", c("1", "2", "3", "4", "5")), Marker1 = as.integer(c(0, 0, 1, 2, 1)), Marker2 = as.integer(c(NA, 1, 0, 1, 2)), Marker3 = as.integer(c(0, 0, NA, 1, 1)), Marker4 = as.integer(c(0, 0, 0, 0, 0)) ) - output$example_genos <- renderTable({ - example_genos_df - }, bordered = TRUE) + output$example_ids <- renderTable({ example_ids_df }, bordered = TRUE) + output$example_genos <- renderTable({ example_genos_df }, bordered = TRUE) - # Download handlers for sample files output$download_ids <- downloadHandler( filename = function() "sample_reference_ids.txt", - content = function(file) { - write.table(example_ids_df, file, sep = "\t", row.names = FALSE, quote = FALSE) - } + content = function(file) write.table(example_ids_df, file, sep = "\t", row.names = FALSE, quote = FALSE) ) output$download_genos <- downloadHandler( filename = function() "sample_genotypes.txt", - content = function(file) { - write.table(example_genos_df, file, sep = "\t", row.names = FALSE, quote = FALSE) - } + content = function(file) write.table(example_genos_df, file, sep = "\t", row.names = FALSE, quote = FALSE) ) } ## To be copied in the UI -# mod_diversity_ui("SNMF_1") +# mod_polybreedtools_ui("polybreedtools_1") ## To be copied in the server -# mod_diversity_server("SNMF_1") - -`%||%` <- function(x, y) { - if (is.null(x)) y else x -} +# mod_polybreedtools_server("polybreedtools_1") \ No newline at end of file From 009b18db4a944cdf37e7d2dd3fca272b4097f62f Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Thu, 14 May 2026 09:57:55 -0400 Subject: [PATCH 03/26] hid "BIGapp Tutorial button in mod_Home --- R/mod_Home.R | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/R/mod_Home.R b/R/mod_Home.R index 785c1e0..3d11eea 100644 --- a/R/mod_Home.R +++ b/R/mod_Home.R @@ -83,20 +83,20 @@ mod_Home_ui <- function(id){ width = 11 ), style = "text-decoration: none; color: inherit;" # Optional: removes underline and retains original color - ), - a( - href = "https://scribehow.com/page/BIGapp_Tutorials__FdLsY9ZxQsi6kgT9p-U2Zg", # Replace with your desired URL - target = "_blank", # Optional: opens the link in a new tab - valueBox( - value = NULL, - subtitle = "BIGapp Tutorials", - icon = icon("compass"), - color = "warning", - gradient = TRUE, - width = 11 - ), - style = "text-decoration: none; color: inherit;" # Optional: removes underline and retains original color - ) + )#, + #a( + # href = "https://scribehow.com/page/BIGapp_Tutorials__FdLsY9ZxQsi6kgT9p-U2Zg", # Replace with your desired URL + # target = "_blank", # Optional: opens the link in a new tab + # valueBox( + # value = NULL, + # subtitle = "BIGapp Tutorials", + # icon = icon("compass"), + # color = "warning", + # gradient = TRUE, + # width = 11 + # ), + # style = "text-decoration: none; color: inherit;" # Optional: removes underline and retains original color + #) ) ) ) From fab7a55bc0291f05d2656beaed81f46a3324e7ca Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Thu, 14 May 2026 10:22:28 -0400 Subject: [PATCH 04/26] updted documentation and added snmf test data --- .DS_Store | Bin 14340 -> 14340 bytes .Rbuildignore | 2 + .Rhistory | 604 ++++++++++++++++++++++----------------------- .gitignore | 1 + NAMESPACE | 1 - inst/.gitignore | 1 + inst/SNMF_test.vcf | Bin 0 -> 493448 bytes 7 files changed, 306 insertions(+), 303 deletions(-) create mode 100644 inst/.gitignore create mode 100644 inst/SNMF_test.vcf diff --git a/.DS_Store b/.DS_Store index f6f3331370721ae7e68e83b2b1a61e867f1fbf50..3cd33c3864814afb0abf3df4dec58b7b0985d897 100644 GIT binary patch delta 43 zcmZoEXerq6TAYz#^BeIgf|K19_6V~uWHRJ26f=~h6es5-<>%)xh-~)P+R6(6T-grR delta 71 zcmZoEXerq6TAYz_^BeIgf{Z&SH) -
  • This tool was developed by Breeding Insight.
  • -
  • It estimates the breed/line composition from genotype samples using methods from -Funkhouser et al. (2017). -
  • -
  • Input files: -
      -
    • Reference panel (.txt): SNPs in columns, samples in rows, first three columns: ID, ref, alt
    • -
    • Reference IDs (.txt): A two-column table (Line, ID) with header
    • -
    • Genotype file (.txt): SNPs in rows, same format as reference
    • -
    -
  • -
  • Ploidy: Enter the ploidy level of the organism.
  • - -') -) -) -), -sidebarLayout( -sidebarPanel( -fileInput("reference_file", "Upload Reference Genotypes (.txt)", accept = ".txt"), -fileInput("ref_ids_file", "Upload Reference IDs (.txt)", accept = ".txt"), -fileInput("validation_file", "Upload Genotypes to Test (.txt)", accept = ".txt"), -numericInput("ploidy", "Ploidy", value = 2, min = 1, max = 10, step = 1), -actionButton("run", "Run Estimation"), -br(), br(), -downloadButton("download_results", "Download Excel Results") -), -mainPanel( -tabsetPanel( -tabPanel("Results Table", DT::dataTableOutput("preview")), -tabPanel("Ancestry Plot", plotOutput("bar_plot")) -), -verbatimTextOutput("status") -) -) -) -#### SERVER #### -server <- function(input, output, session) { -result_data <- reactiveVal(NULL) -result_filename <- reactiveVal(NULL) -observeEvent(input$run, { -req(input$reference_file, input$ref_ids_file, input$validation_file, input$ploidy) -output$status <- renderText("Running estimation...") -# Load and process reference genotype matrix -reference_raw <- read.table( -input$reference_file$datapath, -, header = T, row.names = 1, sep = "\t") -# Read reference genotypes -reference <- read.table( -input$reference_file$datapath, -header = TRUE, -row.names = 1, -sep = "\t" -) -# Read reference IDs -reference_ids <- read.table( -input$ref_ids_file$datapath, -header = TRUE, -row.names = 1, -sep = "\t" -) -ref_ids <- lapply(as.list(reference_ids), as.character) -# Load and process validation genotype matrix -validation_raw <- read.table( -input$validation_file$datapath, -header = TRUE, -sep = "\t" -) -validation <- validation_raw %>% -column_to_rownames(var = "ID") %>% -as.data.frame() -# Estimate allele frequencies -freq <- BIGr:::allele_freq_poly(reference, ref_ids, ploidy = input$ploidy) -# Predict ancestry composition -prediction <- as.data.frame(BIGr:::solve_composition_poly(validation, freq, ploidy = input$ploidy)) %>% -select(-R2) %>% -rename( -`RHB content` = RHB, -`non-RHB content` = non.RHB -) -columns_to_select <- c("RHB content", "non-RHB content") -pred_results <- prediction %>% -rownames_to_column(var = "ID") %>% -mutate( -across(-ID, ~format_percent(.)), -`Predicted line` = columns_to_select[max.col(select(., all_of(columns_to_select)), ties.method = "first")] -) -result_data(pred_results) -# Save Excel file -date_str <- format(Sys.Date(), "%Y-%m-%d") -filename <- paste0("RHB_estimation_", date_str, ".xlsx") -temp_path <- file.path(tempdir(), filename) -result_filename(temp_path) -write.xlsx(pred_results, file = temp_path, rowNames = FALSE) -# Render results table -output$preview <- DT::renderDataTable({ -DT::datatable(pred_results, options = list(pageLength = 10)) -}) -# Prepare and render plot -pred_results_long <- prediction %>% -rownames_to_column(var = "ID") %>% -pivot_longer( -cols = where(is.numeric), -names_to = "category", -values_to = "percent" -) -output$bar_plot <- renderPlot({ -ggplot(pred_results_long, aes(x = ID, y = percent, fill = category)) + -geom_bar(stat = "identity") + -scale_fill_viridis_d(option = "D") + -scale_y_continuous(labels = percent_format(accuracy = 1)) + -labs( -x = "Individual ID", -y = "Ancestry Proportion", -fill = "Line" -) + -theme_minimal() + -theme(axis.text.x = element_text(angle = 45, hjust = 1, size = 8)) -}) -output$status <- renderText("Estimation complete. File ready for download.") -}) -output$download_results <- downloadHandler( -filename = function() { -basename(result_filename()) -}, -content = function(file) { -file.copy(result_filename(), file) -} -) -} -shinyApp(ui, server) -# Predict ancestry composition -prediction <- as.data.frame(BIGr:::solve_composition_poly(validation, freq, ploidy = input$ploidy)) %>% -select(-R2) %>% -rename( -`RHB content` = RHB, -`non-RHB content` = non.RHB -) -clear -# Estimate allele frequencies -freq <- BIGr:::allele_freq_poly(reference, ref_ids, ploidy = input$ploidy) -# Load and process reference genotype matrix -reference_raw <- read.table( -input$reference_file$datapath, -, header = T, sep = "\t") -shinyApp(ui, server) -runApp('test.R') -runApp('test.R') -runApp('test.R') -runApp(Desktop/test.R) -runApp(~Desktop/test.R) -setwd("~/Desktop") -runApp('test.R') -setwd("~/Desktop/BreedTools_App") -runApp() -shiny::runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -shiny::runApp('app') -setwd("~/Desktop/Max") -setwd("~/Desktop/Max") -library(readxl) -library(ggplot2) -library(dplyr) -# 1. Read the data -df <- read_excel("PCA_data.xlsx") -# 2. Separate species from numeric variables -species <- df$Species -df_numeric <- df %>% select(-Species) -# 3. Run PCA -pca_res <- prcomp(df_numeric, scale. = TRUE) -# 4. Extract PCA coordinates -pca_df <- as.data.frame(pca_res$x) -pca_df$Species <- species -# 5. Function to plot any two PCs -plot_pc <- function(pc_x, pc_y) { -ggplot(pca_df, aes_string(x = pc_x, y = pc_y, color = "Species")) + -geom_point(size = 3) + -stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs(title = paste(pc_x, "vs", pc_y), -x = pc_x, -y = pc_y) + -theme(legend.position = "right") -} -# 6. Plots -plot_pc("PC1", "PC2") -plot_pc("PC1", "PC3") -plot_pc("PC2", "PC3") -View(pca_df) -View(pca_res) -summary(pca_res) -library(readxl) -library(ggplot2) -library(dplyr) -# 1. Read the data -df <- read_excel("PCA_data.xlsx") -# 2. Separate species from numeric variables -species <- df$Species -df_numeric <- df %>% select(-Species) -# 3. Run PCA -pca_res <- prcomp(df_numeric, scale. = TRUE) -# 4. Variance explained (%) -variance_explained <- (pca_res$sdev^2) / sum(pca_res$sdev^2) * 100 -# 5. PCA coordinates -pca_df <- as.data.frame(pca_res$x) -pca_df$Species <- species -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 3) + -stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs( -title = title_pc1_pc2, -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 3) + -stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs( -title = "PCA for Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 2: PC1 vs PC3 ---- -ggplot(pca_df, aes(x = PC1, y = PC3, color = Species)) + -geom_point(size = 2) + -stat_ellipse(aes(group = Species), level = 0.99) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), y = paste0("PC3 (", round(variance_explained[3], 1), "%)") ) + @@ -510,3 +208,305 @@ runApp('app') install.packages("golem") golem::create_golem("/example") golem::create_golem("/stuff") +shiny::runApp() +runApp() +devtools::document() +runApp() +devtools::document() +devtools::document() +devtools::document() +devtools::document() +runApp() +shiny::runApp() +devtools::document() +shiny::runApp() +shiny::runApp() +runApp() +runApp() +devtools::document() +runApp() +devtools::document() +runApp() +runApp() +devtools::document() +runApp() +devtools::document() +runApp() +devtools::document() +runApp() +devtools::document() +runApp() +devtools::document() +runApp() +devtools::document() +runApp() +devtools::document() +runApp() +devtools::document() +runApp() +shiny::runApp() +runApp() +runApp() +runApp() +runApp() +runApp() +runApp() +runApp() +#### test function #### +find_parentage(genotypes_file = "genotypes.txt", +parents_file = "parents.txt", +progeny_file = "progeny.txt", +method = "best_pair", +write_txt = T, +show_ties = T) +results <- validate_pedigree( +pedigree_file = test_data$files$pedigree, +genotypes_file = test_data$files$genotypes, +trio_error_threshold = 5.0, +min_markers = 100, +single_parent_error_threshold = 2.0, +fill_pedigree = T, +verbose = F, +write_txt = F,output_filename = corrected_pedigree_filled) +runApp() +runApp() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +tagList( +# Leave this function for adding external resources +golem_add_external_resources(), +# Dynamic sidebar color theme — only sets the :root CSS variables +# ── Sidebar color theme ────────────────────────────────────────────────────── +# Change this value to switch the active sidebar menu item color. +# Available options: "azure", "green", "yellow", "grey", "purple", "red" +# ───────────────────────────────────────────────────────────────────────────── +tags$head(tags$style(HTML(sprintf( +":root { --sidebar-core: var(--%s-core); --sidebar-lite: var(--%s-lite); --sidebar-deep: var(--%s-deep); }", +"red", "red", "red" +)))), +bs4DashPage( +skin = "black", +bs4DashNavbar( +title = tagList( +tags$img(src = 'www/familia_logo.png', height = '40', width = '50'), +), +rightUi = tags$li( +class = "dropdown", +tags$a( +href = "#", +class = "nav-link", +`data-toggle` = "dropdown", +icon("info-circle") +), +tags$div( +class = "dropdown-menu dropdown-menu-right", +tags$a( +class = "dropdown-item", +href = "#", +"Session Info", +onclick = "Shiny.setInputValue('session_info_button', Math.random())" +), +tags$a( +class = "dropdown-item", +href = "#", +"Check for Updates", +onclick = "Shiny.setInputValue('updates_info_button', Math.random())" +) +) +) +), +help = NULL, #This is the default bs4Dash button to control the presence of tooltips and popovers, which can be added as a user help/info feature. +bs4DashSidebar( +skin="light", +status = "warning", +fixed=TRUE, +#minified = F, +expandOnHover = TRUE, +sidebarMenu(id = "MainMenu", +flat = T, +tags$li(class = "header", style = "color: grey; margin-top: 10px; margin-bottom: 10px; padding-left: 15px;", "Menu"), +menuItem("Home", tabName = "welcome", icon = icon("house"),startExpanded = FALSE), +menuItem("Genetic Composition", icon = icon("chart-pie"), startExpanded = TRUE, +menuSubItem("SNMF", tabName = "snmf", icon = icon("list-ol")), +menuSubItem(HTML("BreedToolspoly"), tabName = "polybreedtools", icon = icon("chart-bar")) +), +menuItem("Parentage Testing", icon = icon("diagram-project"), startExpanded = TRUE, +menuSubItem("Find Parents", tabName = "parentage", icon = icon("circle-nodes")), +menuSubItem("Clean Pedigree", tabName = "validate_pedigree", icon = icon("broom")), +menuSubItem("Validate Pedigree", tabName = "validate_pedigree", icon = icon("sitemap")) +), +tags$li(class = "header", style = "color: grey; margin-top: 18px; margin-bottom: 10px; padding-left: 15px;", "Information"), +menuItem("Source Code", icon = icon("circle-info"), href = "https://www.github.com/Breeding-Insight/Genomics_Shiny_App"), +#menuItem( +# span("Job Queue", bs4Badge("demo", position = "right", color = "warning")), +# tabName = "slurm", +# icon = icon("clock")), +menuItem("Help", tabName = "help", icon = icon("circle-question")) +) +), +footer = dashboardFooter( +right = div( +style = "display: flex; align-items: center;", # Align text and images horizontally +div( +style = "display: flex; flex-direction: column; margin-right: 15px; text-align: right;", +div("2026 Breeding Insight"), +div("Funded by USDA through (UF|IFAS)") +), +div( +a( +img(src = "www/usda-logo-color.png", height = "45px"), +style = "margin-right: 15px;" +), +a( +img(src = "www/cornell_seal_simple_web_b31b1b.png", height = "45px") +) +) +), +left = div( +style = "display: flex; align-items: center; height: 100%;", +sprintf("v%s", as.character(utils::packageVersion("familia"))) +) +), +dashboardBody( +disconnectMessage(), #Adds generic error message for any error if not already accounted for +tags$style( +HTML( +".main-footer { +background-color: white; +color: grey; +height: 65px; +padding-top: 5px; +padding-bottom: 5px; +} +.main-footer a { +color: grey; +}" +) +), +tabItems( +tabItem( +tabName = "welcome", mod_Home_ui("Home_1") +), +tabItem( +tabName = "polybreedtools", mod_polybreedtools_ui("PolyBreedTools_1") +), +tabItem( +tabName = "snmf", mod_SNMF_ui("SNMF_1") +), +tabItem( +tabName = "parentage", mod_parentage_ui("parentage_1") +), +tabItem( +tabName = "validate_pedigree", mod_validate_pedigree_ui("validate_pedigree_1") +), +tabItem( +tabName = "help", mod_help_ui("help_1") +) +) +) +) +) +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +familia::run_app() +devtools::load_all() +familia::run_app() +run_app() +roxygen2::roxygenize() +devtools::load_all() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +devtools::load_all() +devtools::load_all() +run_app() +roxygen2::roxygenize() +devtools::load_all() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +devtools::load_all() +run_app() +devtools::load_all() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +devtools::load_all() +run_app() +run_app() +run_app() +devtools::load_all() +run_app() +devtools::load_all() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() +run_app() +run_app() +devtools::load_all() +run_app() +devtools::load_all() +run_app() +devtools::load_all() +run_app() +devtools::load_all() +run_app() +run_app() +devtools::load_all() +run_app() diff --git a/.gitignore b/.gitignore index 5b6a065..7ef3ead 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ .Rhistory .RData .Ruserdata +.positai diff --git a/NAMESPACE b/NAMESPACE index 9713799..d549096 100644 --- a/NAMESPACE +++ b/NAMESPACE @@ -40,7 +40,6 @@ importFrom(httr,content) importFrom(httr,status_code) importFrom(scales,comma_format) importFrom(shiny,NS) -importFrom(shiny,includeMarkdown) importFrom(shiny,shinyApp) importFrom(shiny,tagList) importFrom(shinydisconnect,disconnectMessage) diff --git a/inst/.gitignore b/inst/.gitignore new file mode 100644 index 0000000..8f45b0b --- /dev/null +++ b/inst/.gitignore @@ -0,0 +1 @@ +SNMF_test.vcf diff --git a/inst/SNMF_test.vcf b/inst/SNMF_test.vcf new file mode 100644 index 0000000000000000000000000000000000000000..1bd2cc2d4c9b5a50ee767e84d295e47c35dc8e48 GIT binary patch literal 493448 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�y~ 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

    kQTl*_ag{TOc)Ho(*hM%!KYUkk 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

    +qHwf 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
    u*U@Lhs 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%0A-*1U(M+H9F!2Wz1*=YZnWLR`EmNEp5TXDR^ z@ha!-oMkiRJ)YcerTl_8k8^q)bqX7>Gi_=ES<-@vLL6gYPitxe#u*$oAb$;eFy#(9 z;xPbXEIYuNSE7e@l zWFTT03mTo;uz_P)e;r@N_5}Jb(B-%`;K-c;37<5tr1FV)#>lrJ~ac>#Hb20mB+ z7ayqdms~OPQWP0M@M{_*u8Y_A;s{_~x5bKAf`HZo((ZkWa9SJ8hvT;)R0T8X2-xi_ zNdi5tLXt?rg)B;0>Sl>Rv#6VU;OD=_qep=3n|7KSA|bd|%1De%9NMWqj3x~SL_7cb27CR3o!@+% z({_F{>Ep2w7!}QSexL`L&G@hH{KWP|FiEV*)Q0l5 zFGb8}?uH$8W&nA}KE}p>t=syw3+H3Y(Jx5D<#|+QmUnTq&nF1SgiKYy0SX2feg6py z#^{E85C)zgL*VTE{O-(x3q$$rOOEEb zB5adj{%a8USs<9mnwez4aBi1}A?3M|q`Hl49PjRq{Z?7c!}m?%s}I~I^VI_x^ss>A z__dv1hvp1D*J6}u7Lv9^J>6dMX1h`kWcNO~<$5du-EOZuTbtnV?fA@oMb;d2Ily)n z=OxW2WK-nu(dU7UrzrD&%zq>k?>G9<3QtB9gKR55hVLNWPi3bLOToWyA*|DE?u()J zsUYqT#EyFZi_RjDoQ>#xA$edQ3SQHoNsCjpt#kPbUf^fZY^nLQFWp-fT4^>X_jFp5 z=hW4Vl-W>)JOa@!S4wMF&{J>OyN9bXp0t9WtPQ1I(nDAd`9 zdi`@d|8cVev<+f%5R6BCwmH!p}(AA|#c_ zSoFV~eQX$pc=CM*nxQG7jF>2fM+X&aC3+vP&-`xQ%IJ}`d6(v4M&}_o5a(Bf zBX{{1j14S#u^FumS5lD=m+Kzp)S90Jva{sv=gpHYYXgy)olW6}CP+-W z*EbU;aql)*evUGfzV9a;M{bw_gmv56$ZHK;dbufE!1=YB#E?tlk_8KpUkdIKT6ON( z6j`{(5wy)MAa}I5M+KpbT0o-wp>OY!rZ-$|DJeon%${=2%0Uv3K4N&c50@wC+JV=gBXs!`l5Baf1v)eTA9L|*;HWeOtKy5M!o?={# zVf|qCwG*RDRN^fqGJ1u|PeLq`Vz{?AGSWacBB>1!*Aho0PZ>ku=1mh$-aV!pkvA&0 z;5oczbr@DA(Qz&03gg|!`Y|kJhU_VAmQew_tR6&?6115frFO^u<7>G6<#D4;1@yf7G7i z;lxw3t^jqR0x<+zQLNBY~HoujkiT#+7|SVFJ_Ja|nec z5_v|DFhxiQqccq0e)yoG4Hh#%KMEyXY{V=#m{u>9bdjQzoSi0ghfOhg*fg?m`9fN1 z&vWr?JWc2HP(78*k2|%4H!WspX{M-+(sP^Zx!j7Wz2iHN$heOg<_}P+U>;3Iu0N`U z71$cV9WbS7V_(0#)4F0qCJximV`Bo+H+8p&79nf+#uAU!S!l`%je$TTm5b_J zY~}RDt1nS}p)rsG!r`Jl6?^l8Ps^LO|Gs`x40iH`Htsa3Jrac z&_#=@P~b39ZZ*fLWrHep`{%nD11U2=@z3G|)6HE)19#7_X=GSVM;NNZft)z~*1_zL z+?vz7rWMb3!c=53|25uCD{4%OW%TD~!C~|QX{37{&mrzyS28yJ zxxBK%BrOD8;iO2abir$_#q96ooz%HQpZ}yCXn}!slBtsbfF`+!WhFK(wRobE4+p;Tp*$K_o-Pe19U@)vIC8%bbW^wxG z^1fOsRD>ASEE_)8?brHzVvfmC@Q2V z2_X-W&ntlw7cxnhb}(kIHa>$7qUnR$9*?$UA!t&P89sm)i9dV zjt#?*PweY3jQ)>}{BqoSJ1*)DSd_jt5l|MG<{B%joH5l86B*)RDUmQiBv}w!?4lFt zg-|?r|0tk_VHj6|b|CLbkZAe3DnEm1$R%!Astz;{-;$MyS7+%g((;V?Dk=o0f8w-X zBybeh)GlA->nt(KG9m{<$-17y1f^ci;Mn_ak%r*WAHugK;sXZ8hcaJ;$G zfJ!$y4Sg)T0F%alVbwIGma*Je>J)*qV1A%1`8oF*8FR+E$}DWyBw?Yt8hH)&D|4>_ zL0*TFZf{CWcHdqm1mn1W9bW+%JkwN$Wa)NAn=h5^`k1Z{IM;4*h0ZcnV=uF%vLlV* zazKnB`K-*(6paj-<+3B+F&9(9(q%4@=){pt;`x>w`u}_7EJzoZo#x%W>t6hy$@jYPhV|ku!1$ z-Wg>>GoLpt4?-ctb6wgAiDp-l5u0#a!_$-NXHE(DJqg?yEz4b0s&W)*HEQ<35tuAt z{|Z*(NieR5@WfRM>aJ$oUChPKRaW^1+3Wj!=xfUIsLMH7>O!Kw`lo|jTd&_pkjjWm zq878lh1o)hjVC=euhp+h`D=+27Y)^aJVnxuH%YC{)rHe;G*KOo@bCI8!u=N4;E&9D8Rzy|&QW^mWi$Txq?@zY{ zd;dnL`K^$)htifA)$?c4wSw!cqJwB~<*INSWhE2Mr9n!+2eV5=WqL4V)) z&L&bQwsWrO@?>7bVA;F<=ut~(Z`+p>uaH?*2n6^CUg51Jgjax~B*=*;OE}vnkuLb+Ez#W91u^2=rPHyO?G%l}eB=aW2iJiuZV*qf;&=adeCU)eH=hYaq(C*V0g< zNjWaVUKs??ghR0FMbxt{b`UbqGv1PV_1sfN4t8GUSw>cOwRt3Mw1nLyaixdKOOAd zoT(AiVi7RA{g|g#f3z5IcgX>$ za4(w?Pz412_*tEa(W1Ll{o+nQ;bo#3X3h~A^}z*AUW0(*AG^nY8&wANeH+7IzUMqW zANU1m)7F6$|G-^#fvrH+Q1A%rv3^+^@)8e4BnrF7)Ltf0m-)K|V!a4{>nc702`7j) ztEM4g8b38zgUfy3I&9*6UH?b;>L-Bc|9kaseAPTc7L(?D=6~d?v|oiA^0N*JNu)F1 zH!?x0r`E8c#bDH}4BB^$OC(P(co>PfV`RIK-4Ynj2oDE21|!Qs2FqM@tQy85xUhOn77o20|Arnf zm>%p8t~(wsYED>mC%-y)??LZz*vBhF{!WZXa$uq^2}{Q9A8xmlc>_k6?;TkH6@N0G zj8+rS?UiV{2r^s-M_AzG%ODJQcuVq1^APvX1y|1rM^1+dNp-K3;diGwbxGcz-=h%4 z0`n66?Vw%OFYQ?I>*dm8Z|01H8p8}7FJlip7(!zcj4{EwQB)=xl+{@7iYJ2T!Sp{L zf6cl!ytL)&N2WOT|FisB*RTE|QB=xglR{zqWPBa}cb=#}Lv~{EM$la@4iX+FLqmZC z2yugOX;U(`Ee-%`ndT|de6|n3mcgXlg-JQv$&Y$f=o!a(Wkli3gGU7A>95F-Y`=)l z4<<5C^`YT)kqgPP0QvoJdAi19$w-gENpP0{!TRvB`y>8DUUc;h@)K@7pet+{b7pV{ zCp=E&7Bgj1=ax@|sEenI!F23QF@u1$&?`EZ%vyq=*)s9?H9MQm&0xt~GK=$zw1SvL z!{%mgo3|vC>LZ+iRWGDRAZ=knP{NgSp5EZ;u58pDihYZRkXmX)oMHgxC;G9w~A}{ zq{8XW&_{|@)GBuT2#=OF8(ITsHc4A%#=tjLagOK8!!0NiU{+!855bXZ*|k~rIa(qs z;1QyNFJo{BX+$y)#p$ol=Eax=1&ry@EJ@_P_mTYi(~#&Egieraxk=iiuT7$&5^5YAugR~Yu% z6s#KpO4tOBh~vg^vaglK(l!+G_}wJOGEg0Ojc6a>#{3ind-mZnj5B>Ynr6<|qR#E)6)=T(uXP zfv6|6ngV^lVR&q0FjfGU?G@B`&PBUsf1%$g_h3!c zD0Uj-kVGQQBM~oyYmy4T%D`^}IqWHN>ZY-O)iktIs|6b&qvi@3(c{e_?5Y30R??!xrbQiQk^P)5iqvqEc##?7UtVt%<7k79#}6O^Fph~2yH!vX}s34eRLbL zCN%26{-{!5HS11=p)%Ru}eVI2;ee<1Y;(4)C3ky99 z_82-S@?5Iw6wPZ^d?rfH>g{u9m8kUqdnZd1BNxc(t%wo zPal#AX8cE1s)%OWs7|BWctyS~g;uK2NRh2@-I=u+2-ii-VMV!`d*!fhjBAr$mq{uO z2h}P6MB(@i78^XslrIcOUsxHAQS@c)>HE1}r9<=M@3G4)yN2xWv(g+tX%1E2&>P0N z&ZwLs+ogLr`W)<=_*s2zKyjA?{(jz@6AL)L&F1)1aC`zc6S(5tLt+#gCW$|M^EZOyIxEnvEXJV*b0>7#pP_Ai&H!+ z#}l1gwfQVKS_pamA|aUSPC#FYpkypVj|ar;xGF3POhK^wbZW3JL}2jV1fH*x{<+4% zRO3@(LJ6fG`0Ll->ot26Z{eXuhuLTYEL4Umme>9F+jdXr4$;$J&&+^oa`;x zbXDV;E7UsCDB+)qH&i$8kC)YT^Z@fqVy^v2P!hAi`n_>qkZ@2jM${&w!xN7FC z@phMMQ0Mvj{w&ANw5!%n06}m*`dEXO8*H2(^7|!nBI;gN#nRH$d)69m0OCM@Eo@c< zGW+)u-E{vBevK(!nDw=+N5c5mzCuw2mr$`mx0ffmt{yL8@r|NAMKN#A^TRK#H#=G4gZtZwAZH@A29glF>Pvu|lD!L^NOpY~4C z$R@UnLtR=Fw^2Dc>g*ODe`8H%eQsQ_KS#jLo+BgKtS~dl-zF_H`0Tgm1gjIf{9YdA z_xilcscy&TDz~p5trI?==_-HkA#cX0Sjl^X@(z!Zhtrms^2x zXgsD_!iS4JI=?&&lVZ-o)64?jayL7Y+NO>IHfwq7&ED7Hr1f_oU%D~hM9YPeM>BR& zbEAP%fo=eoVt9x_soX}lAs4f(nAb_S9ZnS!N;&Znt8SsCtiCn4*TndHS1nvWQ@*gJn> z3EZoCYY7k_O)UYj8zjeCdUZ2PKmw|%B>)}VKVb<#$jPKqe0`sIb}M454!U#WIFlNh zCA`A9Ey|v&F4*9B|L-sbK+jA~;XG1*?B1SV`$wnnFM^T(U-3$wJR?}&73cI_ebe_@ ze~S0Jp>`Y^`8>?@Z(5VTK1k5_?emeW)XtbKDUd=j(JD--H;z~tv9N_Cxqg=4aANhw z5VDjr;WdxQ0TOwJPRPKs!8&fia}^k0-#usMr@w#h>0Q{VlG&(!5*IqLlk?zlMpJXS zv>?l=_{#uh9MiIPNiG({3Qz8u>V-TU`lH0?&5!S_-%U4G^81;|0#Kt&htjf^rGUeE zlA{e^%GmP9`fK~D9*&x;a-RgG!^!H&@xkDSVVjKPdsEiB-?O&{tSFl;KI=U(mi$w&?YxC&Fqk+^rwKP0M!6JwTu|v)c90Wuy0gD(1PG($E4k8`HEzF&g?~7;Ik{TZ}kBy zmz(pbQmUq?KxnXqppKF>SK&qm&RL>AwVcBi`>z;88b#PEVl{H*<#+I$ug78!ZM9|R zhsNXhOvBKc|A*Fmv&I(R$IQU}+B*BkNg9pCdA{LnIsp-Nz{S;T+G5KuvhBzN+eZ7= zC2w|(PohclT1#tg_$fk4qI~YwH&S4+`3kpioxS4(nq$w_^m}a*c1+Bv>K+FlT1}791R}|Cg+zZ=Clj zhFeFb*yd40W`WjOGugOzoC+O|k;hA^!PxAi5esqaNTW|>w3~>@&^l}{pXLZ>8Ms(S z8pdk!FZ|8KI!^or7M;MAX!Tni}X|?=PC`4Aqrnb4|PV@hv!3C znvmKeJo3Z3IXr`3@Cw|2B_=&A|1P=&N%73N0>=Z-1wA$&4k&Wkn+S}DA#_*&O*gj4 zfASz6ky_?KzzUMe%+NXGa(@9_4nyTgxP~RAdo9KDPq%haUd~T0%4b<&5WX96BIbFC8mK6OY3nE6-?!iZ-5Umvgas zTHxi3hiF?^-UketxL+b@zdf0~A#gsZP`AHxpNDI8T3L!ws)alPS%CESh&!0)ql?}q zO+jFNHe9Iu1kM|`fl{OD1;dx&aVI0VzD|y1jg6Yv6+KK5*%?N{$3vL}pis03yD;q$ zz|E&dQ0Ky@M&OBvL)k6R$y_%)gil9HQMU(*rAb!?jDSNtp9tH3Ll`tU$J0rQ(!CNQ zP>zc;z_JOCPH7C#7syg3i$iP?S#Bf`-bA)2Mi3)^K%qQ~p*yl4`F+p`BB(;}F>yQ; z8Bw@@gz9XA1mNHv#B*(5kP{Z|i}B6|y5cx8*swKx5;1$>)gYKMA1LL(A-PiXv4J^4 zd>eR@@p<}t?n^LK@{=zCPc#~21bfEU(+DHo4Ub+j+>$E_e0R*^wChF;w44#cN6mu! z)jY0O(0^JB8$)9Ra^?I735`CFpotY&t#)pOI0Xu^;RKXYb4ifC>6vZv=~v>#`AG|07oC zn-S2q{Ual25|jOb5n#uAVg#_M|EdwxXvmD9WnA@h9m>l7RooqJt*_fn37ZnX~#~WBPpRsh7jB@0x1(vrc+Jv>Y;E~tq z)6584xYOW-W=K`OF}ZEH%_S94?WUCtb$T-J3CEAR3|7+#$XkJNetdolt;cwmxSCqP zF#MeOaB+qeJI2lAiE%s>Yjt_|E7_;coPU{m`Pdtx*JH=u`>%cZHbDIJ%YtE;R}k5L zUobE{;tE4-txGfr7F#xtY&-wiIM4xb>as_&1J%);KO1(_ggWLK4-VTWkmW2+N61`e zw?CWPXW@?@L$XBJA;#P~Y;_$a#s1H=`ZcuQ&-l*Xf)NEt4CrC7h=;FBv52xz=B6)1 zy@Fg@srr1!nibwZi|N{+Zm|@t?elR}gssLELrs`PxeA}C<{bOL46UvEGyjcApBRQ~ z)u3_QSyq9e%oY>1>s=zEaH;1R4Fv0tv@M2;fPhd9Bo2aen8<5OsGj9Vq;|<#AwIQI zcLKwo8d?Xf6L$(Z1}t1clsOr3Xz*ygZ~eCav_e&aStr*^AztqA$5Kv^$3tQVpONN; zONhCv8Mn<)5_;4nC*|ym^1{N|MOV+9WSf$pZS&2`dVpM>(}|!2x!)p{UtXom7Ju#UrJ_XVk4uCRAymen@@(5nr?a@eAaKf#@LP?euMf9 zCU52QJX210%ZG6pvH?`X#6)>gjwrx*YOer%$VeDkCeZMcJl1~t~T(#DOv;-o}WZ_%9VU@49Ni6*ReI0kV6zM^a#2Y3=8Q0+|4Z@ zHG{vl2ndZ-5Iqn~y|DoKbSvLx7LZ!k1&={I(|orjAgH(=c{Ohkly(NyMR>M{OP{4c zPwf&8^-eDdpQ~Fy)*k{+h_?e5`#mfm1pv&*!Gel08DS$S9QGD5LV6#wr|-=cCadL% z;>qA<>q8vtmvlgS)&h@+Wz_*8B~zbmVFU@mLPSi;BU#<_`=$!@FLEl3oWWVaH+`7! zrn2Q_OAjR#qEbXI_z1aiz?OGmnx>W>zlH~%A7L?I^59Y=R(byYnD(9>GCSJp>?r%d zK<-l9742EQf;Pz^1oI&kt2g6d?1q?LBSk+|88-vN8%0OLMkUWSr-R53!Zghg-VERn zjB*ilwusW}1s=%~UZ?eU#%aq=Ru3<%XXj;hW*Bm&G*^@>!4Na0GQyVlnv1L0HA;?w zR6Q?(j$gkWaNNsv6wEWmFkED|SW&g+@8kvHT>RZ+51IXAr(GYQ55>M&hJuK7e>lgifEe_w1jE>YLAqq!ZS>Oi2RW*LNxNe=^Qhk~p>Hr2R0 zoE0Msgl+0>W>GOCYVGK2^(lHF^_1(`F*fYcA;u`9yW*pVhxKM?db2dvspH9c!DEM= zKjJd*9DPIE>zoF0udj^p6X2gQ6Wl?^p7$(GVwwTGA=pKWn~pRJ9w^%j)~mNB+Nqtr z+pqXeVTs9I)lS~!OLW;1MFp)b(`VQMLEQ{Oy*X&xZu(kmSDXgTiN<+z&-$chd>JcG1Nb!@y!|Kdb(qC^{@UBuS`tx|XJ(3pc-CZsaNh?b$E3>0O!r)OOY*R_ z>WC4?B$cKx6hR3VcgwQP!qzDR=}N_%CDC4V`bLzheLDL^Bt(y-9ZP)DJ z5kEH4hT?SyyTryMbKKW^E=br>$r#S#Gw^i6fX`9;4xhPy=U(&n3e3zee1ze>T;{d>9@E`VV5=O39T-a^ z-&lJaay^YSLceA2|Kb*f+M;Hp$XajLoawFl>*pRVv-{`7XP$?I8BnCP##F_K(`{{r z%B>s`Jy_gzq9|ee4r&) zrgwmFCrdeOT^87NXa!71r#lD$b&o<3u4u~&mq8YGi|zjUf5UcOImLB;D@S2n?=x+L zS%f~sZT0H<;;-fYsA^d>_^7r}M0KEwHNh%DG{h}gs31oc%dClcwxW!v(GepwHp zQULLMbU}I%@~SlG2;w?xQExA6?lfK>h8g}v9LWEwSF#CyoKN`QbY-7Qps%g@GlwSq zYhTfJ-9G6T{EII8U-e3&S$FFHsw?|uWSW)y|9>ricf0PN^3;FPW&f*Q>FGMhXZ?F$ z>FL`4e}y{yYhR7+dY-@5^BZ0b84o24NuUFf850!K;g8W3*jvOlMY)FisM?&0pWv|$ zMsah;4(k@pOL&2EXf>`~ul_G=J?!*aT%8G*Qm3^-AHPJ#`ZAiPh2G!`fdR+DW!8A{ zAMjs59cj(ga&NiyZqn8>sQ3~d2xq8#eh310kXA{QpNbA|?Pn9|1V85@r%gFQ?a(v$ zkwu{LME_Fo{P+HIm&*Ioe(hgToD__gkrvvb*QsQXzC}yxo(B_HlSgkPPewudgd4J+ zQN3AoqdEuyjTkCY42E%%kh~BUaGG3UYVyqsl#U~lEKnj>5=Ry?AP^L*Clv-EKw;La zD+4X8Ys^yHbTw?se09uv%KKs}z6qcq2JN6x&QP3C!%ha!z7KU(3s?{MW~PUnSiqjk zR$nb3!Iui--&YGrBMorGzOjGq3k zU`Ny3UWd#yxO(=-%s5l_4Lc#ihVk9JiN9cHq2lBMfd#n+NF>^o&u=LSAG$f1(LU4GnZZ}`JMgKqczAedi z97pmy_7Y|#>aEzo?0-jd2m+wPK}m75vbuA|%BJpEpN#X6D1vx7+yjDOz^X!YF-QQ@ zwpHx^N?)e#n^DV3_J!S`;#L_3isyc_$i&DgU@d59ldu?1tfgEioKSMY$yw`u_OPDZ zvG)ytyt^;}SYI>lv#Rq7XNu<_Ne+h#4BU*0P1vk#vQNfZQGzw>*Rv)-Nf?}{iZBIh zkligIO!eDF#Y7+$rsX_s1n-=&!|8oH9x(i^Ih5{(9n%{rQKaK0hu8vnEg)>BU=Fgo z2v`_-!g0$`5)}eZVlpU!1<7Far`yBvv4{6M z5ofWBh3IX)5h^O%8)#SR23^;70^f~zB?3=QNvM>FuZK~0h&i~*#HS}tGUgZ|5uY&m zC-bM@P9m!<$zQL*yFDWSpha34ny%%2%CA}Jhhyq{g<HYJ4r-Z` zl3wc^(H=sdhE#9Iq7Hx_x*loMF^(Q8G3<-|eu2e>Ls{-1@cbK^pjSw)nUx!m z<9gO4=Z zjZG5#Ip_zl^md8mq-5X?h}`VH*Ji&>zow;?2X0<$gvP+a2Rjoi@Ic>e6BA({Gf`<+ZgW2w#ozw!JDkbh zn3aH8$RFp;Fu#~0i) z4pfWE_K7Xm7r~ayGsi4?u>q0uj?J!o8}*oY1Sx4Vu!+#$S(XLEAxP4_MvhnGLN>Z? z0|&)B9-hLmC#!#5Fr+P1Fwkr9cGkyWO;d)(;}h7;&KHF}@M3U>f*TIp{dh9iJk`hv zApiPl-*zggi(PFbB<%GiY6iuP<<+|iO}tW$B|pG*c&139oeDb{Y~cJ_&$lwAKu?dJ zZ8D`G>phpbr8gY|lCF(NdE->Sz3#)djk_NBPKmTIjr!5y|JmmypmoCVs60LrU{03E z3D}#e2(j}gcoNa8u$Wj{Aws=0lnh{Yh!DG}2Xqw8RoQILJ}8=MK2T8@oYzE3!h0`c za&TPNjT^Z!NVJD}A^HAT!GS5aA-!zR6UaQExGlZ!RzZ*l)}C0mhjV(RoT`od$`y7s z0;W~B{Py{`zfL*&?~&&F^t&L$XSb}dZ@cGBOk z;uA%trDvU75bCsb79lphjd~dqF3#toD-juDYZ{Lc5*x{_p1|=j$>y8xQnS*O0HHjy znd@>Q7O&^1eerfEOLv!xFZsL~!GnB;&@Gq!%4Gsw9AVh7%xVVmN_+#3ixIX|#5J&YV`YbfKte6i~LZy?B}PpJzA$K-dhYzT@1w;m8`= z?)hWGu~B0%n(eEWCZEGE)Ef6l60|H>T$f=j&)S$|CLZ~ov;~**DaAnhzffU&BN06j%b&|PF zFKN$GYK~JsKR$l@%t}N(36!4XITp-p9{49Dg^3)HAbbq0Uu%*KqbaQIb5_L>+)H%& zaum^$@)O$Td;Nzyf>2P2mz)L}lH?D0XYT68R7Lu_^%qY-R5N5XMSlF;i!4(R*&}tX zRxm;yF8Kt=2p~F4uBz^xGbZEvR=&3V6)F+bMfI7;397w)hT&rf?}fM>ZjUNC%t^^+ z!Ckp7d) zK3w!-@kQ1u!J?G|DM4HUBj3T6uDhWQARFLgT?A8NTpA}^H zpD_6aF89p>&L5<=UsDI*-7w77Do+|a`c=CYW&(xPpf5ssQ ze?PV&2UbkXsHro^^ceFK9zO6Sxvvmg{P?UVgLin9@0n)&jWBJh;oAz<^hLg56vL#qr8=c%D9q} z7=I=``+S%()w(GDNMrp+3l{x>5;!2$vM76LxyJfU2cY+B6e4~3&<{aYu2$P~dGAZZ zr}1`?V(8UlIi5e*t$4i8!4UT2)exu>%Xt0MDj26#RC?6h;@I7)lr|f|reKW$6MVVs z-U^sP$GYB_f=?%u4kXP;AV95U7;4GTbKp_ZV3KZj?{ zz!r)%uSZzx-F|=H+!l^c3a3%fQ$vkvDAL&fWN4D`8_$BAd?-<@=m!uHspMf(D1)*5 zi#DtK@xh1#$+Llc`&fUDP^jeDa84%qp{Fq#DNP8Wx)*E+2G5cnu>e$P06{>$zo4$9 z1T9`;Tg(}8_{^8XCx^hlcE|up-~mTi+f6p0#MJq^+u?Kchr<=k1jnJ>cV0gyhOW$| zE`h-T*Ra=&At(jNqlEF2Pcj)E#L?zM`ogZ2s2r6)n!Zxmp%_4IN~yz~H^SM&hyw%( zx|!_f*L*y|u;sS^-NSor5&^wf%PWd2K5(jluL76g z;abB>Vep0JbNM~s2^!sFD+j62!ElxOJ@|dnoE1K&c09;~EF)fRG35@>?-p@wUq^Xj zF&_nYd8V%!K&QK(`ZODs*E+nL5pWC_r(tG3dokc2wAFY765g#LU69U@GVlzP^_0(Z z=`FR@Xu|Ec!wwLDxpk#!I>rL#X|oBX)woHlEIDVp_d)6d_cpjXcrK$mPa+G1L{BFn z*T1O+&Q<3$7|#2K!%Y?!pu86v7;XdSa(=DzTU(i7M0rk-T_-20D#>zqyB+H99VLL7jRr~O%~vcBu>h|^6-94*8S|d92?Ck z7g6D26Id1%D1_acln$cdrubinmgp}n(=BplV)NVbX|IS==Zhb?pSPda-68X9PoW#l(mWtWH zuJz{%f>KmjP8&Eb`a`ot0c4h{QEdur{c$$F-ku`19|CdqgnUC~~a4W#3b06Hj$?5Vlna zM~h}|MaL{kFptJ2Yl31$W2Tb$228WMI2{bTVFv#3F@U?R?S@IQ@)H=x^$8;Ox6T`e zEQ4MRC9>d%>;#!ZF9)VV2f-@gUzmF7SzDmqV+B{ZD z4Nbvh@IS)MWS=EmTH<_xu-VZHpi0NoaV^>0`!;7&fpVO@e{F%KvwS0=k9Gv*vAClG ztjh4wNIu+ic+U9|Eae1JP%&ZwOm5h)LMgKTa}7t&zZD+`pN}IjUfuuK@@4?n@pIiv zStpDR=P$%=hQt~Jhs<295a)5EIrud5n$R=Da;63c5t%>+^SPG|&%RC(ChukjV9H&( z#K<}>itlzcyOMwrw2Pr@tq9-8{}?cFukyiHGkWek ziJe5)sRhWCYACqc>{_#$%6HY)hpvF3{ajJT)7rfUDuYuZP-+40yOjHTOsx`tx{mh8 zWou&Nlq^cgZAhrNdre^Nuc4_JETN9Z|2`lp?M`H;c!_Oj3aY$wV+x^I$))FQvO~X^ zDXe$L_@A2sw=yt-`@Jc^1QEwpNPlL5tSIO zpE6&32{_aPwora+3ls2%LYK1rqI3$N0-R(&-fbalkeZDe`Ip*4@FN^si7jlG2a8xA zb6aTE5N%<5r8I@1fns-})?l^}=2=cFHyxMR0#n0pQdaEsjkcVw0a>8dCfqS>08*%LkyM{z+4c#x4t0yp{VIHW>^AvsKt?NLR zh!p@^n5`a-U0k(=kRoBv7Hq-&AkY1WJTyJ9(LL26j0yKTZIIMg=FV!JBZpok@VTQc zI8(sZ`WZEX@3v6?_Db)|Bz`PF&CK#hx5Zm|5Zg0*Hp%XBzm4;w)_0kEKF7j(flxLA z^hT#5*KG$KHd*8qp9{Q3RuTDoYp34aeJV`Sr@8k!Tpb*Qq$v-67F;Ig9$n%d4|K)4 zIoq!ZQyGN=(Yq8+-;n|lwibmTyqq!`%&s4@M@4zPRt zTp&|B@NrYV`afJ9rbRniLG@VrYGpe>{QAfa;P-~i^Gn~>+#O;Klc5>RT^^Nb#&fMT zuJ)Z7_~%<^&p!|Cq;3V*_O)zpBb->jk{a(-TMW>c1w4uSp#@?ziU~Q!<0ODXn>uKV zOepuH5)%0QU{jZiw#?RpL&A(H;4o`YGM?i6&4B*;LBB|<Tt7!hU}UZpT`9NF(HDL!en%UT#M+}0eMM@@vF zcpJh?;B9EwLY-M^FKj1uX(dRjW~y*$&hPMXk1xR4Kl$_<_95ImCD ztmCbP4rX3vC}Ii>nJ%92-#iB%2WWFyGgdnkOsKLpb~42=PXdrf#DV3@a>rW#+N^wK z5OfwNl3q*bRp>KRG8d?a4XSZeAQ3K@GqqNv5-C;i-UJWEAT`w6$mrP`qzQetPGiR^ ze5|212|L<5=~5;Fk&!jv*b0rkY!$v!Kt3GK-e+rQ2cI?wdfN%CLC@;2*;s98q$2q3 z{=EFo803!5arDOuas2m@F^F+3!*~R%kdVVgWAON^DW27@>-x0B@RGzf11DT@W2nW{ z3yr~fE{Dc|n2WJ7l&UdxV+;W2QQfce=*HlUXf+1oK!~28Mp_Nn2@Y z?I`YsLKgf0+CqokjBUXuW7EN>oVYFo0(HON*@Dhntyi}N0mofWwlJCS38!?dfVSGf zue5%@v<2^|y|T};E!fV}`{54IHR*b(dgD>_`i{|7o)X9Ka7+q%5Q!e~&M$ORAl;DD z2ESCp@x~P9I{0;K3KK}+>9_4^ecUfJW9X*vxzhI$HzpQIT|3g-;P@OdDs82Hra+TL zKnBM2aP7?hJcU^ z2KVO^p&49{Jefxl^Qf5^RiPCG5^%1Vc<{Fm6P<^BQ3fXx?*opdxv|Ah9tQim1uWCo zwLa6jC}!$_mKaa85S0iIyQ2KJBFjP$jP*WU$w(#=&?-?pZE!O1ECZ9zlg9LE-*%Sa z)iW&+CxEE~C9bB^x5m-j2s~<}D&0%s*s*uF>Ox&y{%(Z%e$D81i?D>Fboyb{4F1Klvg)0XQ4tgh#;JlCe17S5 zPKPa$8Q;fa>Yg39o%rn-lg@1b=#OG>-gX|;|5Ey+k$0Ru0@0ItSjX|xD*l$9oO)%; z-AU_rR$6rO*%Sa6h?m}J801C>N1P2ntSuF%#CWRh;P&6)qns?K^(DsrbS^O?znRn0 z%!$^Bdmx)|9^anN9MLjPgujpH`k2)ucJK1v5v%VtN%{RTP6e=Ved8bNSM7G*S4-vb zhWSV#2>X~caW2%jbYIWW14K58F1~za6 zMCM>b^nJOHZgI?CEt!j&u=azR4PczJF z5#okV6&w}HJhh4bfB;k?e(r*xf<}t@0Old$)QD$4OCp4cYnLSqD$_6oHBoXwhhNnu z2GM11d8Wxj=#Y5qjg&7$;1*T+O8UHZ3hTI>?Z+^+oTjF!4wdw2SH)#I#Ko1hLAjQETw`LNuW(q&nXsjv~l)PXio(6BI zlWs$aw75?_2bCEQ-xFpJPxqm zCJ{OTeUTn|wRRnv7=!{uJ>Yf?C<5Xr8o(g}u}-vy?T!28KVT0NVlHp&p_urD+C#Bg z&(I#4MRa?Bh6_$6{L&t#?%jve+Y4pgP)Qot!<5(=qCEth9oOs!_7H-~R16Za6xHl` zw1<8Vtv`ELmEdkOuMm4MQ!nc*Qv-XLh!pD89_k`rUY{G-gTRWN^Pqvoz>g|uRme(_4?HhDL@h2cxTTbj#bPMV=TAeNnYahQ7vsJ`L-!2NTykf{uw-?Kf)-7&k! z$Une-{gpjH1!m|UZkUlq?Odi`|Gho<`XmLbt#-8lbNzY4`5+fW>pAofxPopE6Z!|R zkD)#6ea*OJ-26j36u};#7Lrt|f<4GJP{n-gAC@+;@HoB0Shgf=PBZIK-H^Xwpq&Ri zRZw?Xm%c;fbs6l4;dphN5G3DRh2W=K2T(!9zLi)^k!BXL-sx_NKWdb-V z8uNezkL9N$Jt)G(rQ#c8ke@6yks~JZJicB6L8PrftUXL<_eupoW&BFH67bJ$t2#Bh z22Cw&YG*vb26=3O?t7~ti1eErN<{Jzk5FipO*4{WxB%3Pt<@+L^BESiJ&({XaitpScv9i`u|?`RFSmMD6o z&qBU^z1b~1HkYU>0}*`*0hL^D>*O8IEDsuY4)dEjgqGQ(nb0gX3=G=nR zd#^%F4osNJ@EzM_-7zd`=5VriSetkFKTp(PSG)FWiI2k56_Krf_9@3gV&66%;DS5udXY~$*KnyOAmM`|% zhq?j5cf~Q)NV_IMAdvO6pz*B#@GPbt5PHACU=+=tM@WVgW;6h{`4k->EZ)~dgO%q= z+;U|zjYB8x3rAoBfj4n?voPcwDD4@_19DuwlI}}iuPro9#=$}di%>4%2do}PZmpZr z`-h3%q6N|rNn=-t4;V*-$o*t@&IcM-%x^3L2V&^8)m(aCR#sCU>r%Q!Ai$4q5rf|w zi+9$ip)*!{w+N)?hUV4KBJ}sSZV^jI zR7q(@N@RvgZ59F94+}c5q(`%evW@F@eMU&o3CG$k0;m?`8SXH4l_WK}R|$2kXc6-> zR%0?BQLVxrX~8OA+b+c|F!^& zh<13PMR-KV&?k+BJ4bS}h^td#D=yM0V1^dayu`gl?0&S~SVWh7t}Hjr1ef3=s#Tyx zz+Bd0pV&YOS~{Ocw1~q>XV`TBA5pC$_z1BI^byYD1PdK4VtMX5Oyj5t9_e575&v$~ zG>_c;ZPfH;5mk5vz?B437+b`2K22jX>Tf6ZV^E9fhBhL5f=-v7<6*DynfOlY6&RLFV|5 zd$ZhAOub>Aq9f!;DpOM9$rwF)Cl}}Dj4Q2vgQbpV<1h9L0L-~ID6}MRhbA?rY0xea zo>HrSz_uLPN(_$Xb`95=BlIFZz<~u5aG+h?=CnTzs#veKVI!H;j$5HgqKQW{sL`3= z<^+7>?Z=d%X%w&nCBP7tuf06Aq@O8(hxJuD=AVU-SegR$J9N+7lH#_0YqNjv*D?rt z>J;%(ZDmq3Xs>&<7P(L;ZR044U%y0Aw8L91cy^0Pork@}C8e)@9RFd+Ie`V3DF)Rh z`0j>R+xEMyEs>n@m?48n_-@nCB-1^U#c+!)wFpV80(If!dWql;x-7v0YN7GhWB_K0 z?VQt0Md|QerUDAqT%vytBz&3V{o@(C#OVFg2gZ;CyVsewuBgBoU@%c9=FzM}{~Et5 zYCmgF56xn_V+GSWKF7FmOQR3O$zQ2K!J-@KHPzm6CXQ?E{QbArT91@3Z|A^FGBSG6 zrt0s9tJ9#!p0#l#*n}gI?JygA{B-Q$r{RDfd2$|Yxv}-lUT59T*M2ikdXYjGM%wbb zb{&V-c8s+^D*?<)UipZ>0a3~gs?_NRyyJkFgXLw(=oxRzdO-Hrv2(qTZJ{f-?=$sqKM)B7 z%;1(pO9X?k@Sqk?oe74GEk52h@_l5YPb;g}+oU*d4)ipnL8%Bc+Rd%Y=8*-{MDmye zj%sQq@L3y3y(V4I$s8YdrE477qHTcrg45w+A`$3AEF^B%R{UDgElfTd&A{6hGMt;` z+YFp6#RV?Qa7}gOXSH!aLn7|Rm};|ID1gvbHCV&Gydf@l5>xc74`^jjHSc2$XOJW! z$SM=pu)|4X-YRBLqBV44BH}~f-7>TW82VaG`(25CSPO^c_)svRmL7Gi z9=LV~(jxH~uC;d5ho{Vs2P9RMTkOHDAt06#;SRYa#Ds7&3#`G382jNtUl(#Ysv#~yN2Yo3+UE>gepA{c59eF7Et!L0iGnhOO}pp40$?4JC$Wt z;%<-4MqT?l-~*~;@^ia-VM)L%{(Tt+w0v^$?qJ`*RZ#3^xixL$-70kvhQV^H0@4?G z?Oh&iPO{iYAeYJ`qZo6@YoKqG)5-SouGZVeo?Ek|pGQ!*;{lsUdsGtsF^P>x;WJ3j zD}Y6(Rsn~sh;-W;48Co-M~GSNY9M_Y|eQNTXXkx2X}BUCh+G98=AQNZiL)iIu%*ES28 zgl$&@7&*sZldIX2+vHv7cLNyjba!+&sg}TQk8&S=_PnbTu@cQLCFN$GB%$(Ba+`|6 zwPYo^*}k4&1>098WqqD;MxHUf^H{{B*UcGqL{bfp7bvtPW=AfZ6CNp1M!`xA_St|c zCLrm#kj={S6z)8i(Yd6VPKYY{iL)rQ3sWcn;P2sDa2JH9DCqrL^#(v2lAdK~LNvN2 zD?$$2ej(9erZoOLgQFsWMyB>+Xgro&N1-s5r#&&uqd}2M<}! zD#{}chFiE+T<--JiU$$t@ZiG{InM{9I&@Sp(INj@qKM=!0E@o-gb{kW7dC-d)=TDD zd1_EJ=O^?_C=OrXw8@BfzUUUMFI4O3Bi7uIm0jUMq)ZZrS?@88-jub=!~q8aX(EA#s+plt z8t& zP^Mz1+zOW3O1WOe)?k!hewp@F9k-m|tWl!+YaZ;wQMk^4i6Jv*+gUw;me)&f(@mY) zLJ=&U8RKhdY*;dK%*k0oTW>OoI}XEm&Mb|Q@asSb#toh+u`{LS0%gve91SH(WzGh6 z+D2igeE)$pP~XX^azUAQeEu1}$u*lHvno8#A-NO!K8_){H&2!sCBq_Xrz07}R;FMH z^Cta+chVz2uj9@wUjLu8R*RM(f9G*p>U<}V6QzP_C5hG{RlAw?A>a&3QUkM@FOx;$ z=!+Xk$r2bEMJIZkY2&uFo>3c6qA;$4?|&qt1Yvc%|E|oASh>k8p~g|RRfeX3*e)tJ z#>w)Mig278vx|IFjlu95j)vLV3(3VwPzfqEtQr;;R83)RKM-s|lHW?jfd`z+gP}Cg6`fql?wNZ*}7$KAFfYQ4}r#G|%m@5eF zW-Bbz|8QEYF=5H6vmpP*Uni|pV({bw&DaQ**b``G(BnvXy`T|zt3Rz4H|K+YQ!1>v zJ1|HD=u4AQ2nVqaZQq?6Ards}3^QkWdw6 zY8lAodXe=9j|20_h-TCYbBlU;!aWJ|k#A2{PdgWZ52I6n7r=4`n|N;&Kk~5Q0l`QV z4Oqkh4}PSudpfZxT(L%<5uXXs$RNug%j6MeX4mD?b&N19$LfV3rqNQQMkN8WtR@iR z0q;#Wg>`BKM-TFw0_&fT;5(sIBR_Qsy3X-N$j+y>BI)UPQbyZXJ1HnFAyk?`4LdY* zqAn~a%adN6bSk^&m#cRaJSbRcvK+}Qwl*2wMYJM=Qqd6)zkWz=v#O7#Ed6d8dM&ay z70{ESVSQEu<hugzakNdJ`*wYhe{m~VYnO0(6QQkq8G*=~aLwEN zvjxNvDS3Z<)eZRl!Sonp{!lP}YV+?pjO?5N)z)wRJ3})Qm zV3sM%xIdc&eu@2rw@5-!x8HY$jw)||NA;s7E^Fx(8}@}n{FKmM6pUB8-_Jih0{IT0 zLf3qcCU~9YZ0T7IS5LY&co!QmcvP=>MHH@W$KvP1$`4HM^iv4UnP z(D)5&EKcoX4FoZF7($}U?ow*$sokNAsx8z}!RJ02#>s9AP)R|-N4EuKGeU6CHW=zs zThKVpWBMv7D#wYe=g`ep6=GaIp?Dx~pmQ8Bm$ldR)cEGQ zKl_0cN}NrM!~V{deGWBwZ4=lZxUk@dHQR(VkJ4-eqpxY5P%Bq5TE{ z?J@L~T}o*Q)8#Vj1rs}zqjk=U2iH}wuY^>H(*ypF!7&}fcjAz($;%AuSi#UM1iEKw z-*10s{>>PU%P$hEaG8#u#*y6*hqeC0|8i9z6Rus;c7hOnT7Hxd2!i;?nfiIc3&J;8 zfs+sC@=55+j_=^rNiL(J)5EaFIvLrdwfE2Z4_BD!C_fhxKq<9s5r&A7y;b*#?9>VD zWcwW3+ba->cWCbHLf~0*t6F)ld_RBo5bMB5 zjStr#92B3YP_7wPfvaC!70(9;)=FgEJFjXmjD3GH3|WnK()!^)G7NcQlb1GaFvfXj zulAP9t9ew6!?wlfVC3n0ozmDHNl(Svt+Ax6<2q7i0eUu!QMAf2IyX+zBpOxiBO%EY zCILC7SLY&6!B=EylZO6$x1Tf6WVg=pcj*JCrt7`Au>)V&n_b9n%s*#f1>ow@ukAv9 zZEfz+F?>qjS{7J?NOXR+3E8lO5J@^YAZ%F`1 zM%^jTm0naPg%VBy$`9@T6rt2cW zU;ke1El$Ynj-~5iF@+}V6InL3y72o4;73AA#QR8tZ!|o``b7p*F&d`?LEwm_V5ASW`S?r8^d(6#Oi2~5*M0N3gy zEPmvoAV16IGGY%BhmExrE#D7aLZ3&Wpu^6*K+Kd_3noDbd_#MSRxn8t&=n?fBO1Vu zGmwGeGT6bq{5y6auc>IrIW))msh>y%TV~VXo&3BLBl}1$-=Q67uiWjxJ;se4z>mMe{b-H2zs-$c*w4`t9$OD&L$-R4<#W{aVoUg?N0_M; z{Y#IamH^~)gA?QUX&P9T`~kvBEuml?1cw;j{ZV?*1TANcmNZp%;}Px#VQO6mgKVy_ zphp<3HP;8~c`L`#z$0*)qn04g(si-8*vMR5>8OzM<$Sw@%@PD^;%C(_d;-=(e`^Wr zYeRZB0SZ-699TkIEUleaOW1*a3*6@96(&1zn>BQ= z028M%<=2>8t--uP`vGN8;FNIe71SCAYp9(pwTA8$a3Yx22o%=L7W5G+se>bP`%ure z7t7hRb^9-XHz=(O?Ay~Z+a*En*d7=UuQ#~);X*y!2uRD1 z)`*)MLT@4o^Jd=~g{(GTBG=Gxc3at0v0JE6{AG2R?L|sw}QiLpR9}L^zkv_ zD<;Y2RQE+=tKuB|h>+vZ6V8-#zu5(habrd?E_3kv`TJBxv{Vo~8dfmnX1gWBar1PA?fy6*N^v>EL22YQ6(Q0UC8* zRt9BgD_efN#(_nIiv8#sxsYH86+^uvDqh-!?R9P2yG86}|HYKgX^!B$aP=nRJ4fcf z?xcGmEGY=cr1!Va3ZiNZ?4~|T$i#?5cESf57xs8oRT!+Uem%_ZmSm|xbtZd-DU-3- z{j9;dd{!lKq>-u(gBg(JXcWU87SbMTce^sdVFG5(-mL?V1#w!VQs01X@U+OAON24s8+9H?@I4NEtvM)rV}Cg~O^jv{P1nX`a_ zmFrT8m+R<9>In!Px<08zed4}R>~Q)V|NhdHM#!QY(LfZwRPKShw1BZehc|b^jC7I&;7= z0|ysc2^ouJzJX^ahK)oztbQ8RoAt*B2|C*y_foj!%}sckhChMKEEMXdnHZw~gKJ{v8S$y|&laGgv?cq`#QJT&E^)Sc``3Kq9jm z&D%n=ky^(JuDEd@+Q<0C-e(f2L~94Tvwpf(%6*eOvFEhsiME9^*Gy~2LVaP4`>N$@#F$Sua=d27$`kchpF{U}wUBGUO&zW( zfotO(k8~4&0xeF!!yfC~d)dDBSG@KoJi7wT9mMGJ?CbwSk>J@3LweVT&>)P9m=(njfE%65sV#eqYRt8O`LZ#L?E}2K< zIW0g{Jvh62jLvBd(@w)9kVgi>YHh(hsK2yYN<;UUNDR|>M>6_ZiTrmwzT~r6W%f#C z*aEl$WBHiSH(6`1KlI|MYmfkSkhp5Rvm#gtz*5~DK1t>LSUHtzBm6mzBgg?Dv0NRo zYb%}jJ_(7GXtc=h4e1PE{Nb7VKam;nA;I$ilrSguQWnl($~_+Nr_VQc=(M z#@EKIv8o>GJ^%Xtb?;;bw2Qf<>oacc(~w7bUc@Z2@@dx!k1;;;y3!e9G+T}y8PPC- z4AyL^KGI~}&@6F~Q7rCWqLN6pfNOhWy@;x~d5`eAG8IhXHRbRKEM)W=EksXiZ%W=Y zvXHukt`04rv|UtjUwzx8El#)d3l9&=-mnT`(;(E38$dq~Q+n{(e(-?sVz@EIY9A0U zFwYj&h;QyZh4WtN`c_$Lb8pJNLDl`^^(`gbx)Q7eQ860mSvnh|RHpNPv*R*f` z>umCYx3T_HMEx3VJ8{TcUi!cLN>)c+<+Stvl~)qbw3o;K{?+^kUWGlo%x}6k=hWtN zy@W{9#ks&*wCY>JB!|Ao_&*tTJb92g=@=cgY3pcPJI{&*ZE_u6O0;jB18B~H&o%6w zzB}Tf_$X)5Sx&^+YiVxjxrt0i)E6JOXJm_|QLfsy;o?&wsi5k38qMYECAZh0g(yp4 zA|?BcXiA#hE82-JUU^A09n|9EQQt(WL>&OE3<;`8gUH>dI#UgrYRsjR#v5yVnsL*V z$5)nV!Loczae;?|6{N`qe@lf|8NSL*d`tjaHKJOxg}i+`>RA zM#;g9mOB*$9av$mv7hB=CgMtTy)laOrn`)$N&s3u=DOt=-rY&);+2$Ds&I4ggLm6j3#Gcl;8R!e^tWCSWxkq+4 zRc6_Y)UaS70w~P}GkBgRd0=t~C6+8gw{=f=G@5dQ)HUfPV0r|=^-5heGQN1f1a7QZH z09{S0O3;J;*uaJ=)U)xcL0dDZ#&TxFOnG%k5O?Cx29{Xw6dQOg@WeftIS+Z^BY$xm zdR7~d2VL$SH1Sn%agbd@ZNsmu?0GcJ!! zF^OI(C~gDo4aymx5WIAR@EmSp4(|}xZUbfg+8%|G6mvA5$vI=PT^*io~AMRif0G`YQaRJn2z*tUR{c~d{ z^F?Ui1p_OiHDRNPjxq~M&lb?wwUIU<5zE8;)eTj)Jde5Wj``bhj%o6*pSpe1@16ud zft~^JD!&}2BBGS)TNyf0rT7+Cv?Y*sXdrcBa?zN_!WJv_=&-paGaiEDvQ5FY19)knfE3Pk*b@1OSi4}YDeG9Xl8zA>r7mmM;EvJQ@^80lJ37G*Y`uyze;mmqy^Wu5JxLX0L%)uvzx~e86iL|T!I5~q?lwjsBD3v zC4(mpLXsY>p8%O8p-D!IGNh7OH`CQ};jw?d@B2?Wc>V_dRxQw<3*M((3DH(JBBw@R zHCuXCaEg;7fZbl(Trw3|h1>ps-7ZskeQlaG^a%jTt4KU zCAOdhG+_J&tCJEwkJ&eQ5Eli_)mK{iEgXB(0;E2l(_Y0;f zkSEoC^3Z6c1+M_|Wmz2QZ|w*a;ZLj;R*VY0`>CTEWd~_ED2hs<|)(W}cl0$#LY+i)$sa+%_6ihdHgGj%_i9xq8V z@T~qwh)v$1!_4;kmwHO-hGq_5Pu?`)PLzaDfE?geY44n^dwXtHZaka5ikBBVVPm&~ zx%`5cv@&vbDoCwBAN@)iXHsYf$jo8EA;jzF!YX&mY-B{QT|F_faK!!j!V7tw5@QQ^ zc8wzgI=M3C284kuUx7AWg@B`I1ozQUYL#<@Q8$}=6wDx$Vx3mt(ES!?-qczH`nP6X z*m5aK?l6NC08>iJ>AK^mSP%r*Yloc^j_|pM#vQtH9zr4r7*N8D$|&&(b6lSrErB2r zV}(|DYFPzDR#W7p;pw!>ii@Bel#Xt@=g@qs1nbzo=KZO1DrY>%VEDNLJb5fliq<24 zXFWug*p?6*){hG7dy_og!#T5d-tGjU1Y~LUA!n_$oU^V}2~Uf&7Wp-*11Ani*gv_B z8}qA@Bnu^PE}Mxw<)kW&HBw^DVH7*q#?Dy*H|DZ2@Z@85lp^Ef@h*@AHK5wQ$?11)02*CH%-|^L0CNn6AVZS3W5W>aILwP_saRVmUP+W6 zb3-WoK-B?fXWZpyErtMUn~4R15hv~Um+`Z}V5!)#h3Y0FLjZ*h43+?fF)Zv3AbCvZ zcG$xzaFwJw=8G~6JW+4CWd|E$TiHv$HO&=dv4PkLzucqa5IF- z&2%u7s)h8@M`lTIbSM)DQ4EuQ0L4W#gyTsdO${OXNR~bghf+yb@;7*d@FdJ5__Jo% z$*o85DD>=Cn9zb1d4!>9WseXELh11^v&nzLBh201i#~Dz zSkj+(1UH1_5lRS+uIczXuBY_bi!QC~(n24i_$*R2Dvb(n5R6>S$epW*%dwlK(_04; zw|OHhiNG+~FF>c-slQi$vqLKGt_gB*o zm=fZ4HaQR;0z@8|mQb~tT3=aynk|LuYZap*If~nA_yGOf>V9*l*gI_f59>Sk%eLmE zLudA@7t&O5lFC5cLQ45MUdPNztJy65d^#%vJhXzi#9bsuE8#uDZvqOxEF{yW9|}xL zaf!Dk*obm%=`O^vjFP2Y#HiR=cE}7ngr6RNA{L=@;g5&fl7cu3OV`X3&f%&CgZk$Q z&yd=PYnAiG#8cO~Yeko1uK(c7nwPp(XyH;;z4|UqI_zP%R>zbN@=$x&A+Z43gl!L? zw6DAV>ImmVOYw;?N`&^qJGvE=71~v-P*Q*6gu&9Zld=5VtWyrgR*>j+GEZN%7ybm% zD5*ipUi`BJGqw*h9ZjS3>CZB<8JDEW!0otHOrK1VWyJWG#&jk4y*x{6?TKz(+%o6v z0t?UX3FXHX*ufAK9{b%a@n+-&w0flp9;?a(+Gz;SFuWT__7J?vL%Pl+cJ8d68YHUQ6ock-x7m_)~uKF*2Lzu5%h%pD6 zyrZDc5Uk-B>_k{RmrD`LY_%Of&E@9iUaQ(6%`_0#vM3Lbe4U-94B4mG3Cs$A|Fa2d z_QOm-#VuRhcF>}moY>G-98J6CfTY(1bmMwj;xwZYRRTeQMya;kOCSYd z(!dsU$L-ol2pN1!tY!({PS6e>lUi+%VGUy&y`4uap8Wf*D-G0SJU~aFQXnPio4>-- z9_y}trBI*1LYM4yknq#2{0e)HwciL3$%^eQ6R;LRHe-ZN44Tx_P{744ld17phLho! zOih!X0}I>$6ma-{vakeUBBqQqKtoVNW@%tY!cwSAz4I)v$W2CeYZiAJZ03_&9Qc0L z4X$%o*6LNK9swLQt;2wi1Vp3y6^ndwoC$+j(F$GzB6i?-XKDrY)owXE)~4i665V<` z55NlAQ$Z`3`f14B3%s+zbA#RkoK_C}9hr~!Nb|#8Pr=r$-xU;cVo(?=h-N(;w73#0yi_U|G)~`lSM0#-2(-5@O(U|!LwHE zD-yJXV2~r`mg`u)*7;R;oWf2X+hL9wu4SiPPClPOEWU~rREr--qxok?9zN-B(gYpPA2OZWatc#_|Gvk5B@b*d zI25BV*$I;Iw~9a+^idct71Iq}xvif7eEub>QX09%F;{<*g(>F92F|%D96Z_ppQS9C z!jp$AqsFJjPzbR-+4h=hDO{^zGVw%nL8k@#2CkGOU%;M9SKf01g79#*f~V(TUyy!PKqVlyK&5*kx=fkZO5K%)$ND_WEf9pNnZ4 zERa%zX}87(1o!nwhxr6V!oB2CW;`b1dFNQYCV8-u7Ienh$-_rPWh=cEN>g&m^y@08Fq&-(Q3xWBe89{F2=G%AB5b=GJ z0v+O?W{feH#jwoA?rZe^P2HJ)p4g+0_2;-}UaCRsil3%_58vHUhq%6Bx{wlb?)Kyf zRMc2iyIylg13Aevub}+HHJTfBp_c&wAmlC*k_z4Zo9$5mVgzeg8yDU~badD$ax7LD zlM6SIp~`cE2=U8&p{ebh_OvrkU$xtFx80)*@(Q6T)_=rIU8}JA+Snq4 z-P1<<&qs48K7K<3dtCA1$2~F!91{7MgR)XCUfyr-*HYhVv+l~u!9JMbK!=qgjuA%_ zCUM@bmrt+h_O#5b&tDseRHjXH3^*Zx_E4-t$Sfm~9};YC>MB%|hzI~Aii_czgq!A5 zq~VG!6puriMMQhppX}iuMEd$~&<~3T&|-KZSNQL%fBdVkVYgS+zRv-Epu7 ze+$ydKv$~gcj$YqMy0=oxfCyiaNlV+fP;my7hvDlp_4{eZw>)thZ)LvqzGZaJ zELM429MyFYi(*9G(K7_vl5P$2+3Nm}?AIKeae{lA<2ct=+R!54=F>W?+WMR$rn)~< zL_^K>mdnnIYCP>yRQKVN^=%#uPv1Z(&7~YI{j0E)yqcyanTJh>hmW8<+nSAg1DR|PQUN?0(n3tBrR3-=H;99JE zk;H3ceF0V~`K#kvmY4F}dRk(ATO8pK!4!5YLK%o+kXZnfD)^A6rvEs8)*9rC0U zkjMjxHmep;EPei^HGEd%Jm1FAs&KrB#`|~i-C@y5u2j1erMD@VZXYPRMo%>H2e%d1 z@00AeRj$WO7Ksj+HY75LwOeEcf|{;cxTbxeI0;W=t<0>3K$SeDwwAWxov4#hJWR@q zUniG$8G2k_lcd7liilnKQJaF5=A@+an!A|VPc5OG#E6nGuPPKjvgE51t`g)s)wigi zz!G^3sIRXzph6S&e$n1)J6&d;YC&900-5w~5T9^ie@z{@!5dk>2BA9j!I)Qtg?^Sg zXo7;^%tsnJV_FIl_hJN;1jSAY+Y}pA3%9c-$Wcr5J!q1$%octBkXTCoK98@D{+?vI z0vVEW{Vw~rcjU$Wib3sdGg6nePT71P-Qi(pX^>1*_XiWINhXur(G6h0Q>Co*u^DTf z)?GMxkiB{I1?K)y8_H`B43=E}!)XV^gbKnkgC;GWB_qD{iQDu$n8Rk`#t;4>W_~3@ z*_mhuly!#D1B<#5`Y93daC42KDPpZ1;cVsI+Mu_)*_8~KWEQ!hl0;jqE^4H_gsA3m z=lJ(5P0o`Di8_*XJQ!8P$T71hg+Dqeb zdB3;L2tmb1Jfj*pE4xvy?uOfUTDO5?|5{!N@ZJa$6UK)Sf6u#O3iAcB3uK0`zHXZ| zBt|x_(jtt}b0cI#vM3^w;&qBZj?{U0!S&ed?fhHqGQ)U#-qWGY^U=Q>JO!Bm~B2woxp{WC88L3y-wuupXGXr;= z1l6^W66VEM8}|P*K*IOH2G9{|+B1m}lAV=*jb=UTjlk!L?vSU6nWX`%w>NlSnEPg8 zO?JO&x|IoqS(%Z5K}lJWuAa%q5+?-KJuM`9m zvf5~?02kCv=Y393n!C0M4QbcDgFxJVJ4-XSC+FyGn*2d#3b6~b+M}Vd8N7%!{9_d*da6JZD22ZjO;UfS=K)S!zXw$$VGh;AyH1P%GhAXfBY8SY=U6-WjDt}*lT@B6^ z>{7I{19EG4r3t`9sV`w&odYr}sO-6h`89X%1*uCrXO~Xj2e#;-P5^lVSAg3>nf9;w z9X`qv*UqBX-k>`d0eW2A1ebg}Tf;$tGv&3J`6&+D}^PZ;p z(>U<{vs&?Ea5p?%16MzIH+^@qDz3KDu1lK5G_S|!VWS2vNcl&dt3)Kt2zRC`=UyTc zN=Wx+PQzh)10$kKwR0 zLZ=8$mbLZw*`YyG8{OO>rbBaik<9V8zO5Q)l|+W@BpY_cT73!a2WT zNI4K)Cp%b5-{?Cam#Zvq)a9iCv?P*FiAGYp3{Yp;8$}LwV0jD^su&C3nL+{2gB%{i z)0Z+8q+J-80`vjuUsI;Q@_8ITk}u%c8LRxoOaXXVnDvIagBaC^WycJ#YF_!Cn~c4B zd;A492$M)~Uj%9U)f5(7AIuf3Z4*lGM83;l?gZKu6i}ElTS}dfdxcXQ{P?uBpgNuP zw%6~B(N|O2LcfO91L;s>wLs=^P4jmoX=A49hY%5DSN^XVBBV;jk%*psYR+e3_ul=- zLw?GNqBIS|f44(yx1)shj)^ybb=A2tgVg&H0k-FH`HZlRJBjdkig0BG08y(^Qo#rV zF)4#41krUj1kxnjje3WQS@FFKJE&bD<0%rOtu8|GRlvwXb_KB3iv4Rb-AMKM`~gHp zw1@qzi-2M$BScoC5$$|TT%+VDi>>lOQD`OA7y9|S{MzKM@$pPV4FyJGf1DOR_zz4KswSC zq8K3NXb|!UfY@$m5N@#DAdqpG^=|UuEE-&)z2tZTQ@k<~rkU-6oxj9!l6{gXk1r)uQ3=BZH7Dl&(6T(CQ)D zH(roOx0`w~h>-^~gV;NJ=`RhUV~ltv)eK_t)NW`HfZJ^b(QwgT1B8AIoa5afuI=l! zpj0DuER992TWyWh-Wr+;YOq1Z+h?)m*t3lH%5Lf88m%0pyfzV3c z^GGLu{U9sh4%|b%iEs55ZR@?sBve8<1)~L%)Gv8%?$Yvu!K;^hmtuq5eY+mWu)OMu zJR4NSP0SW_@C;F>z>k$80V0NHL166IOUk+1{mi|TG;j0Q+S+UnJ|W!-lSxrR)e88< z6I#M?Skmnu$VDO}Q}=fYbwokjG02|vWLA2eLT4Mu+MTn1nrL|zYmw!Ck* zdX_gg(=A}%zt;6FZB9-(X!}SpTlTjv{iR@q>-*+(IDX~;OC;=BvTk}*sb;}vEn%CP zX_vd3C_OvqiNWm-H+?|Wram-x5_lUC1t@nG_+C?&f37o4FjOo<#&V*xZ8`rO81Qpd zKlR1A>jPaCF8;~yQ|%3O~q$IN^Y45&-=W<+1g)}A1CFJ5c2NhzC31vZQu6VTgzKKCIM^3KN4tH`~K zp&&zL+;#6|FhXu_l{y0zEUCGM3bbwlveq*OR~<@AY3uG|+U$THda{}S_W60X{fnmD>2${a$3=yj(?2aJLsDh9Rd9}HXB>qaS&d{>SgZ>vS)5b?V?-Z_8p z4t>ss{xHIn!xlb&OVZZQ4HgXJJwFaW{Aeu14h zl=+01IqDTooquj^jlRxD$Hd_5YoH)8@>Tq#Tq96JYtD|?v0wDUEg*~ z7aQntGmwF)44|PD>G{0M;nlR^gm<+vJ08QoTNA^xd-w=;h@W? zJBpO&T2{W*!5ok)+}gnC8T}15;P=8dpz&5LL_G}MjGlBF63R9p=Zn|98*F-k)sgeb z*H&#{zoGZ|V;can4LxIIc*}X`ZfxLuC1_ujMZ*WpvL7h8hj09Vj?xd%igM+b5Kzj0 z;9xS9!XXiO=Xpsw1w>z*SVPG1vyRifDzY0v>C;rtO#z;WyPJiCDw zN@^eeH*TN-Q=G0B;K(-=;PMUolN*?91`lWae(eS(py&%6Pq=Gt+<;raUv>jhu={&0 z0Nj8VLvP$b!E4_!sQm*A_yad^V*$Sog@zVTUlXDE$O*`=9p(hw0&bnawS4WE0S(KAuvB0P8@U{MftGOC?-sRd{j75cC z=l0_;d;xd-8~4pP$+vJPQ4JHrfocRF{`iY>(~aX%)S@8hUD|Q-SiRH-B{R#xtlgDS7k~G~?_Uc$luQa^bItd{d(HnaPTDpvrzH&%yY9 z#{3}*X8troCd=nQFQH>BmI^w+Jc}&P<+~sm50|1VA;{;RAo5A5J88g7h$w3HZ2)M{ zeyIdi^)qo2b36C1eS3pUWZLX=`8k7Pp9B?Un_*>`!Kwwp>n zV^RHriqHv{!6+?p#s#PH1tL9rn=MbrHlf&pz!g5#C^2PBK$`py44hLSy>ib3QE;Y3 zPYQTpCb;d6t^NyF(HNil>A>=^y!u@7zmCdg3jiY`(`pTv(odi2g3AoC8lMJ9p!TyA z<=Eg8X==1e)kn&GYBH79d4$$uX-F;9d7^Q;vr%Bw{q1(LFN*=LpHgcYbK^)I8-?73 z9f7n`p^wY{ROV;g;XTHao1X4Xk;Q-_0%V}^GB`AC7^ll9#~AD0T&u$nlJ+a*P|fvw zT)(t-IF)}Uow>$wxdD{$TCAEyZQW!6cO4 z?ULduxm!5ps16YM|cn{$ydTk4B#S}$x_#4 z9sZpUk|btL&lC^n_)OhFg5x2wHYxz{q%!yNM*X$@Dh*BXC;*;}lu8Rpd@B%=#tQlX z;YvxW$LwymRGkPP5yC<|89o~sDj!FY4G|RT-)&YThONwM#VQ5VW%S5yJ+#Tek ziceH<4qySFB>H@suNf3U>;GV#P+cgmB8wReX3YX|J(DITd>xByL)j8exGAz-9)d`b zAaMUVLy!#!FkRJv|HJFQ8K-eNlqr*q5M@A8CX@Ml9I^WG(lb zJ&-JbQmIsKCcFp_9qy)bw{L&V0_1K&!`J~H~s2tP+?DGQ)sPA_v`Jr_D z3Iul90%SGJXY4k)yLAG)WAetrQxrt88qYDM8Dm1)@^eaLv`kjZqlG-212Op^apP=) zqAE_T*rJnSA5mnaDKUy{Qry&bT^X(3=z3M9r2js(uaW>b#i$&cVARJ^rJgDB`|Du6 zIELjCgP$?b7U4EXx<7iFX@Z|(Y^G>P(f`B!%k^@m(odCO2S<5jcqiHzW6$?I_uUSH z$L5FuX?@%dih(ZjAQsYW3?lM?A1yR%T=LkKeSCF00BSU~8~MF?PKGe*Nk}whL!QPMC+9>6y zb`VDbiJ5_=7@qE5?ZC(OZtb9KUrTEpJe5RQd4TU+r=iU6rYM7FcB#e0(@N?0!U$e@ zpqElB4HQ3ZLc+){h0gS22go-Sey*gTjX7EpvtqbC*=VJFhjMis$i%EldAdJ4&ufiR zK>LJz5H?bGfDewnhHb#`z&*Ie@KF0kWw@l=#S_~-ze9t=CmG7WvJ?>S{ZA}Y0*wzv za*5XGu*j|be9a8!Zy?};Myf{?Nc2f(8)klkD81iJw}eVod%Zy}7*fHND6SqRwR-Zk z9DA^DOOS>a5_PJLQVxZle-!;ka<1||84=DS_TyYIk5`lFD^t~(r*+h?pGZLhYmwj> zw3dy-1fCr+AE|d2X`DN*fF4!GdRLBd6W?R|^^U)$D2$sIcxFg6e^}+E45Lu44zE+I zr(OMSWi`MX*bx$J;F*0wuH=?X+GBMj9Ve>3d%lLh=N0>x!4<;s{mcn5_^Xn3jAsbm z{9NQp(zUAXRQnI|_1g%Z{qHOXmz8lVye{P}R`&0^J{*ht>v!gfC5Je5Q!j5RFOD?B z!R|Cc+}=RlZAhY~#_ke>X>N)2@-`qnsEviCmI3}nUU|AqfovMWve&Aoaz8f1$F5un zGg;6u6PGDc511Q6JWxj@BPq-VG^wxT(nF0@h@^D;ezy;kdn&LE8O0w)l$eDGH4fcv zzz`*t6H9NKOg5&*ID1AqF&b zSwQgbx6P`_HA|X%b~JX^{bwxL+B33hE+dQ8UAJ#~+71eQEv{e8#Y`Od2} zu}dGepFe!EV{R)|9C{n-u9{bW9$arXjI6-V`jQI8si{k3m0TE37?+nqu+DsRY%vWr zBEmYCeDrmlH5kvUCP)nn@DSjf87xvIl;+2fQ69E-M?JLPKfN+bF@A#QQGcJWe>7T9 zO+jM($BGZi->E48&9a(8n=rdGh0j%E@r!g9I41dQ^(F8)6NCu=J~Rbjs1j4CK{^1n ziyokdo5IHmP@5v4^28KAHw-|!fhn}=-HDbkb!kTPPmh-1(?tn}MD12C9x9@DZTo61JZsRMzQ`|5(C_1+FB7N3~$A^@1f-TR=-F z-`f%_VSkkEP)pcDA3TReae#tYvh+%3XLjPS=&S(haoD2|HdJ~4LRbXbhJnl}EMi0k zghium$`vN=n0)?@Z1LP8YRh5a=hL|P&uruS>hMSt>qS$ZI9JT4UcxdD>bgJ>RzjyqNTfzBB%a%vJMJY^7 z=Be$w5pPxBaWxBe^^tPc;$ff>RJB?GwYTd5f%W!|3X4auIEQ3BuvQhkJAhr%x4Oa( z5D10#ri~sE^zsjutmr{r`h+T}z!wvd_l7cub*v6C;G_?HihHf8`7dZOyix1O>ja%V zf5O5h1$fnz=uo@kM+wsHzkIe{IhsyGN#EJ>)HXC-id|J;p4Y{cpRvo@Kkxa*vB>r3 zTH&_lsmdn^4|dOrg-nvr3ING&*om@L);TR(}~c8fw{dXxFYx z=h|wH7>(t8qov~+EulX9TrHG)#9FT1FIcSQ6PR~K!8`zxM?@rRoPc48Qg~(=#4d|k z%l;i?cqWt*sMfNgah=jh>H}?)noCg;P3?FL%%uQVVnX#0va3;{E`4o6fk@2d^RVZB z5wUrcb900Rsl5d7Bvb5HdzsrVb$gMeJ~}n<=Q}?)4H7wOFr_b7HJG3a$l4Xi%U+tn zd?LhcbrBPqjcPL#aqu944JAIKj4(Iy+dGiP%# zln2EG<8{I}R5pecPr*7ESnuP$n|@h@cY#PWHh(``?}Tq$wd~-)iKxV?wQZ?&$?8rz zA}SSkDXQi>ud$6hTu(Ho0=(D%%D_ly_T$U9$}DYvK-qCST)( z2cDb6HO*hk`?wAjyiyN=85!D@?9|o*5K{SQU7yrb^PrF(k-g%~VfJcJKnyasI5ZUi5%^HQKH&8bezB&T3#{ujp zRQ1YZy5ehGtc|`~NxkgN+3a?kdu!v%G8{d9NCLv<+_YvN%TY?KGS}%St2wXT{VCaN z&=hcOsp3TMUT`aGmIG_IartcoUasyPtW#Sd~Vu~ZbI{857I!(vdyuYOu zQH$L~25JDNPyy79kap7*NkBRAQ{_7$Yb1rJ5rbITNQoqn3#PWUm~FduTRC0Z-z{=3-ky zQP;BpvVu5Mm`jA5MWPUk2SZ{-;Dixe1=*Qf@hy=JBb}LSCrPfKKdqAT9Svc7XN)9T zi=?(evzfVQh{AV{Wi5dE20M_~q`~}q)hGy#yx3mtAj}g2BeVRSI~fK#nEigYurFz! zKH0&P>_qKAcJi6*U}R@_3UI5U{HvrY07AIs^~esUevU;u7-&m8*n!?pz@&>E$f>tB z22eDFQ9#tx2lB{3*yC_A>=>4Z?ZGD&?ElMPlP& zK*C{HHxK`w00b;ENT^kowv*HN?%GJ`D)EalT@GMMhge`AMBYwX8k8VmlbJ zDv9L`&}TXsnPTY$NX_%(%eSKvh_+F*bJHxgM24#AM}y8grgSX1)%9}l~aBi43> zwJlJvaVcL=@EZvDQQ8m1T>Ol(P4I#4+hvr#epL z|CQup>HGDnpSWfxw5m*~#js=DHa>=-{J+1VHF}$>!^Zi4V&?C^um0Uv5SU0^olgz1 z4J8Mwc(s4drT0y{FJIdms?UTgW)hN7$TMM+wy> z6ihYiC~M>E)_K+np;tzA^)Vod?AC$kN%G7IZA^^c7|nPcNq3%FhZpkYq>{))ww7_) zN$gQSVc4z!*JYHco5ux=G_<|BE5j1;yvVD95AW)X61U9*j>*j93iR%kqX@=m)jYP)tPMmmA{cVP;1|hLd<^8c z(jE1#5b{8pfs{3cJp2B&zDXk|xRa221K;c3D->4Fj3D8g@g-G2TKHPv~{ z<=&ceSNAhaB|}%=Joed}|qcbD`WW?Rbw5d{35SO%I$>+3M?Ze{RF*>QH1}KEAc9o9lEJ#1gDxkLg9dJkeBv3D86a!L2N4%oY0k;NYhA z$?)Jt`6xm+{p#R`&N2k-xR3SLYe&x=Pefv;`u$@s(^fv9-aQ6glUbR4xYNH1}70tEba>Ug$t zFat;#lf~2H%#VnYIO@JfOmkk!evz|Wv_fxG0<82+-_G}*W}KOtV7Hm)VhNP~-rA8r zi1Y>Cxq-bBdD9IX!rPy*H8z>Zq2q#BK#Or-JOYuXrs&!6YOz8<(zNJ+3AcdtvkR4j z;=uwwiD8h1+BchIXy1(VCT*8!MC%NHrh)D@L?QZF|A%WsrwI#zHm$MtT0`!FHW?cm znQ1zYyK=U}Ab1?*_14G)QpT)PL7D(*@50`f-&1VUYWXBR-O4%`IB{vB9K{^ldCDT5 zMR6j1e3!?eQ7mmxmOp}>oZA}%sf`%fo^E}T@7CF{rB3o@M--@ zc=IiBsqu^IL5@}tpW7mhNszA{ScR+;Fap%q*J6@sXB*SEYpQke@7BN#R&gEAoTN%D zQdZE0Bd{^Uw6Xu_s3h0|F;`7O71TZD>Iky{N(}6;I(wr#OrU9RtQ2$Vz@)0b*jF<^e(_5v}oHG#rH^m#BP= z&Qr&7VTqwd&+nqLg!vouahwiYBIHTK+wCXz{+s$(dN>TcGx7-_J8z%Z+>L3SlcYzA zDOlVpn)CFr{ifX&J1!k++gG%V`D&HV$0}07iBIiBDE%496LP#0bwIIe%r)d2Iw+QAg^Fmob*-*8eM{o_v>dV+6bbPyw!c`llVUGUV> z&I=GP6c2CQp2(Bn+5d`@V5B&W^D$E_QW;<7- z87*LcLQiLX;2n8z4+I;XvFaaQ)@6jj!R~B9?FK6eq{k- zk2&^Ub0n4ck;HTh- zKzm7Hh(Iof)z%J}krV@HwKbONZje6!%_x+?Uz3_2*1~UHfDcM=Wlvn;-oLFuVW??| zleXN*po6M(qzfMMgBmZ8&^c&|%@5sc&&cXwFb_xU?d7Jg2{RR^PVz)Qvxz5KPM$)c z3=PLc6$R5?E50h?%ruUfVN)_Fj1eczVFLh*IvKnGiQUJl$XcguJD9TI{ae+YP!Bm+ZdYsHv$>MBxbtn9r>{=t7iJkvPsp`hZ-vTPhim5! z!VBorR${T{bWtj)+40k}0;p$e-h2%I>Q=UQ49DCKl^MBoB^aHcV6jxP;=m_rnk~*` zuqp#`B`a@zDxZ2&j>@80U0GcIXR@Grp0;o`n-B3E7E7pDOCEJPY8n0@1QC?75~3){ z%hbwzAh4ARbV0;&E5Y<0l?0@f)Y>4HZFmm8wJ}ufsKVHyVqn9Or@WNL``OZLKO{Fj zHLa4?`)S1TUGzVc-J!X3l5(%V?yuRqxW<>>gl7PT&9^jvPGBKU?Of7DE0}#+Q4q>A zkbI(3YfGm)WxX7%bN&cztUJo@?d#Jt@4s`Bd<^DuRnnI(h5hT_ z7wJVi`3Id?|Bt?!ba(5yk}yvH5HD~}I?we)LPZ4^o*U+>b_&QcC#CMRRx;r^SWMgW z_gnnC!VL6uE3ibIAk6E5nt@(!s{hZRRU}xNxM$kWIq<@(O)1i6U{%*LYG2TUb@_o2 z?MKohWzrB^D&xf?pMxzpcoZs*p|P)IsLSYXxQ56zzNG=19AI-8j7^;+mrGLCWUmjX zzd{FscM_NKkm*-JG6Ed)4kDKhI~iIqf%(-2F8k#Rl7zh{B{Ge8F1>%?RNCGXqg~Fm z<`0dgd(scan5;FZ`y89^_zj0@l?&@aM?c~2Vwlg(^B zsS`m8-Km-g)Y#dsdHwL+vRYIRPl3?ZAQ^LiBBViy_dhyGcC&_kxBgh*El%_NE}Tv3{53C9S4bxArCrZT;kLXZ{k5A}u$J9sae??S@IUCiSKUBI z_-qoa`xkJXBN9l(;&$IofNBpdP5Z&4A~K*bfou@ZAF zUc&_po=%XGC|OFI{?2HSq>0MfoOO9F7%B(@6as~lZnVeqGz_}c+-cixmNPSALGLeG z!Ttn!{s#qh@8$4fFkuz-#qPyF>0KqpXM=nj;S&H-qtt}fWX@^Wlzy{>&yfiu`l zmMi;2XC=&0%r4Y88)=_sAVtMSnDRE$+}9qO;itzz9|!u(syrZXPzx~VhS4aO(}d~$ zDvU|mE?gwerQasOPKVQzP9mza!SWr>a7$w}mtEA=#ENQ-PN+?GPfm@?%p!Kud*eZ$ zQi0ATjH&E0K!lH|&MnLv3}&9TVa{T&&+!4?9)=$V7Ejmz`F&5q(j`fQqan*xjcCG0 zii}VG&=I{ed$u=gwzr#F_--Y0f9l%zONg6w{`_mzZY#z6Ox+%aGCXgs<=~Q9xYb~` z^Jyxb4TjMdf6ZXLJqUmtw_XL<0RtumBl*js4N9xCo#o#!82MGJLO&XeP;D<2 zVYmgb*NTus2GV_&@4(F)XZ%Vqn3kYlb)#*)r;VLVc>utAFUwFL_Hll@V{0t0K=ax* zNP#4NZgDU4R1SM)$7Kfd`OXpksXdG*gPGJ|3hHXau| zR(_@@a_0o)q?8H^7Eqk5<;ngUhgyJUNnRIQ&Nj8zMne{l3^8 zEQh0YTMV+aSMB zKh0`Ynu^siOKPd4gPCBSbv}9j?xiIihvbz|pygdAb{9rQ z25m;#GjBL@W^qg8w^^7=sce1VEy$w`1~sW2fQ1DQz>%MBw&{w>Chm4|f=46NWf2!w z*3IvNJBsE}fD4XBaah=mG1Ht^gVzmqv7f)-k`NmYcH!-VDGekQD<*V0wJcSh{YA6s zo8h>>=r4R`eBdtxP}22Y^$Vtv9HskY%nq@rrivnyCe3g6^ zX-IPHFE*qQJw6_^yb1&0NEV+H@^=zm5W88bg<8puJ`lO`BS>IMIt1*_IgRM^<}Kx< zPmh9hxmXR@xHL^Y|0e|-4{w`A4S$cjy8QjmDwKKccr~~jns|%t{TjNU&WyYU1c_`L zJ5AHow2byACLHu@toq4d=7f#`RZzIQVh9RG%fy|-cnkhEc4&Z6=qB)SE1yU4MyLXM zl(6MjL+%~+_hW~eQG4vO6-!Lgd%O<_md;Qdo}Wjf)O}wg4NYH=qVvzI-| zYa4&Q&sbYO6C}K*lvZF@BG)~6z9FF{iA-fRdM-VJl5Q|DG+*ug*BlO9`ATgwuoNH< zgs^58p98!;x>L8#oEn3J{EKY)RZOuRBu3bhNQeyHRbjDs+I06%$(sh5M}RBqZ_2Kj zJfxfUZWHJFbsTTuQXMCnzI$4gxNVmvfoE6$If+hu{W&`XA2Dv!p#Ha(Hv;gi{s`CE6<%DaBAvJw*wBuX(J#9&`eT-Y!m*%gHF0 zf7<;XEzIhYe^YxL_Vc`Xco=zaIjzTGmGe7rXu-r??gZm3*=V&n3QWR~z(rL4mAM9y zVXn00Xn1kQbHE33VB9`XFTmp^Cd22*95z@mg!9!o@W#j24uAp*>9eUvonGbJj2rOA z5d0w3>y&Q;YJh@A;nHyCi!Tgm^D?PJqNJd1Im2}LXvXMR`@3>N-3njA!8$a9c4~Gr zkZ-qN8;~rQ@OOpP!IaGEXf*_<2w(e&68mdQ5hoS zMC~kHS_pRM3R@=QLPFW2_jv*1U#1!bV<^LMACD&^3zKF-as@YlqbZWBR&_ZooZBrE z(k0S>dS-U5eTfzfWY4Qb%BzujeXMf-hRASjb<5S3g!x!G_5u!Fw}Z1{oE}*u+Rb`R zdRomCe3+(qUB11ek!D2LI^3|Nq7b1-W!@4ALM$P$my-m_6cqA@at0X z3P(s9sFXZ^{PY}YyQ#Xy^wGup6U9cJs4xpCq+lG|yO8iCr9(MuN_TI__()BwdVEUv z+;Qsy!YRGcl|dL>@583I8i&3<%{X)`1u0vvsqst}Pvw{%VZVZ_CL||tY)L|LIR-|7 zN5ue}{0j^t!3u4!;z1*h1|QIyj=pcV71|dw4&7I%{snV2liYw%qZmcF#9ZH#kC&(E zAZVSrbpX2+OGojv2+#iHRc3Cm#6{|ZIps*xXl@;P7sm9#Bqydsd!ltTL8@^(4%0o7 zvNUomf#*q+SUwP7p41_iyPvo*5GNWyAfu8gz`zkgjG4Jl}zq~GUuK655f1%2sxVp0-5{= z>lrqa>EW`>_+N4E=bZMh^?LIk+}%LHfS1&O&A52fQ05Q|`zggfJI&8B)Q9=jVDQ3w zW9+HrnJ8toUm0$vduYHr7@FVUpUE^btSl#03mYU?p8 z;pzI94QZEVY&v$P8$|_MmpArC#vit0qNj%u16zXgA4S>?^V$zG#?&UIB-UYq17eU3 zgTW03=BPEzbh|95-V9#i`gSjj#U$hOEa>Q<9JRT@4 zfp)sMmt@?uocmX|Zl-?ajshU<2PIS1vty!WBDqF5$SCSSk9yk!n@kLurvUg|k5{8U zuhAmx{a^$pj0D2W@?Ls*2gcfxjkfpu6>3PpIrTk7qc6VvHRE)g%?<_jQdK534#;&R zZV?`2=)U6PEbQwfp$N3-))*XLiC&BzMymbUPwfEcYUx?Kb-VNK zwdC7|@GiOy{H?*hWJNvVhK|3bJfPyQ4NIqg-%|E5Zi2}JO`(b`nqBADWPe@1jfP#W zqwWn=Q;!S6tTEx5QuT`rox#XRhs~cKEFk4uJf4&AY|PgJ2ZQ_?m7P}`R9r^^o}IgE zyWBxHkLv6U6)ZmHn@DMW(_fXDw7eC27`uvzw}P`atkAQ*8yBOKbPKUVBQ^%^4Eyfh z0U1ymF`}8ENkyo)G8zCFAja2i1eth6#59 zHD0aS|5?AgH{;cA_iMjUT7^jFMI5z3eOw09allh{4XX>GY(M7; zE5JR=t95*?JFPeVek(R@mTAHD(S8k8gnq}%~$cv+dVf3xfqLl&S&kXZui0uL-f zzRz37gbsK@p!~`bIvIM!l2TSnlAFUS3 zC8;II)%r9=xL>sdd55F1vL&<=^!Jt^S8P|vvkWYi#K;q!raSMt_dHEeTK&s$wM6ij z9w%JhlOYK8@AI%G)q`1qhjnVi5Dxfzb_oHX*oK!W-7ml;2JlEXgmuKQu7)5X*Nhtp z(g_(t|7;6jYXg|X$R&LYVGB-$3QMWH0QK;pAw(4)R=Oa;UzT{V)p9c?RX!eV7MCEM zOQ#ad?#U)gO;{7pNUonJpLzfWn#2-Vrf(s_xMxt$J7f))AU^&4O z_D4aQe^5^U-&g<9SLI(ibI@9AoP_=}$~o6|w#L+B4Zf+|Om6zDHM(0}#A9%NR0!>k4ELDxrzL`S$ueaDV@ zgg=q^2|sgCoYVLv^qx{5nOHRV%;O?4^l-a9oQ;;~c}|QYu^+@(@K_GZxFcY=MVddM zX~}5jM1xCtK$3xn)PDqF$0@Z@q>qwzbt6OwI?LKCc<3g^EN7#NoQ8*N9I23%s3+?qf|&i>K+?|K{QB%?0f1&1QhG zI+(%nNKN+-N^JhWcvWm`x4{^WKmPk__zE`c^0l6CIqlj^VZAd28~Sl969|5nk+Bj0 z9E}|!WUpK^y#n@}o;L^2R+luM#pArN$8v)p06H9$lzY{# zs&lQ6o!ZtND{6z*FtcyT;_U|g zg9Y0z#kuDwzh@ed)=YrnH{^-~|G^YSgh%?7jJCXA`g4>=0~AFtZ;-HCpqS1eaQ=Mh zaaqTWQuPq1a?Ap@Y1&(N_OX(~xMs|%9I?7|+e3y|#`X-FG&Hq0+m=)OMWTKJunFV9 zddtY3vf*WA54Wo$l-j)x0_SLcN+9vo)sj`1s?@6+8p!ffLVJ#}C5+4G3M!QWk}3ex z@l3{kQikocdmS{$GdfKU6&)B=#nmA!3TU1Z)ys)d4VjAFr`P}69X}ZHAw(*M^|m2g zsux9q1?=;ij`puCpwvcW=@wA>xHYni{L%vC^O=#7cTKl|?<+cr4j$MnZ~+5=X89i& z00aU|ATxLM#s8E6l)mBF04n{DndhjV`U?Y4S=;)q9s$?)+%Fc8f1A})l}VYS*|h(e z^p22cy8maJqWPo!uMw;7|7HPw{~z<$e7@~}o<+wPM^4@*+3K_PWwu=slzf3*m-#wc zW12c2_#mm49^>15uMAa91G_2}2*aqto8Gqy*N||c$U7xa_u!|=B~m_*BU?+cnW@kA z)>w_5dusm?u?J67GQn{~`wGHXVMMdTK#6^qp_Vv!hWVd&lZb^jBGx4fBi>UUXv`S* z#83YUgWl}}+ShPlY}3Ui!As!pb-O6%{uR#*wG11hcvN~X-fs6Vx| zy6SSPr7kVj1wI?9ESGNVW!(K@wuSThIngn5UQ(eR3oz_lw(ytsr?WhVrqHD-Tgzuy zwgIIUpxYM3tR`hul5O7PM?g&+fNdAKCAgTFqeCz6>mD^`IDtcs*^0?QO>#khqpTyXGzfowgtCYbVn5wJtVH<=Zb1D zp5fUs1+e0FC08}7b}j8+eDtBLzPWS}ZKhR@##jXvqdCsk8FvdIdJNH0y=ElvFOy2l zw>U&9Akzw_cIaO@4v#2Jn$Z*(_Cp^k8yJkHw8tEbhN-+6C>ROX>ob&fL9g4otN=R@ zqdEIf4yxGtu@4wI#sI?XbT=Ao3nhto&6B;Nt#15qqOM>xvMz96?GqBwPVg@+TE~%% zbf;%C@6$_e1RQ0x8Ro|15&dQ}1&02`W`t)CZKmxUJIF-<{O7IhG=J;Bhj{SqpZ~ztoutlhAlpkEd4n-%N zi!(Ou@nDUUT1zkPd1(5HMv`}Jm^*ao5-r7`o@k|5>dBmQ%O-LnN zhWTQ7dK5u10G|N~%r4B?2OnP?{xG28GB?l7bT&L@0Wh3y#g zV(Z@@ZVl@vQ&msCSO6A|)btm+h{abil?ZL>u*0osqK8i@4GT_h=Th+-j%c@wkEd^1 z$d8R>)H;^+phhnT>3WViBQn3wRDN5-B>DFvP<`s2A1v zLY+m z7@E^|q9jYP`$ob9f{`F;vD*k@izrpWbZk&oCprTLjk1shMqp6(_FWe#l1pl2C3*)y zsAn4>+)@~DnlkkQHRTd@1SPjT4Ny<*#uwyQPYqITi}Abw6U_48Bm1~Kdn%i-s7Hbv zORU;gfLX_iE-zFaepGt>6-*+GWTw?1pXwpS1nGQ_VaSQ0exA7D7!PjZTDB zypSw=FI~T*qrE9ef9`oCwpv(L&#SNL_I;j?PSmM9HUm8pca`_OY91@63QW8Do^vxTHI-<1g)7Z=;Ham5-JE^tppy7D5r&|WAE8i$RonE`+E9OypMt*ae$Ea#c*#IdQ zQm&>_g^5aZLX6bMK_aI9Yl~VSux-HFYF*r6bE#_+QE*$07XE$zsUP|Ul#DHb9C3 zRP8UiHCkDQyV?+*I?VtV^pda%(|g>u*`Oxvl~1Po)a!%2i%HhV=d-RS`=BJrL|2e_ zw&;BpCF1Fe)ViZqAE&a3EhbcDM_831Ynl8(89wvWM`cE3Bcd>lIKq!4!k9oUC{K-g zKv7+K$`ms^-$2T=ybGZJ66`?|<;Qb@^+j38=dfbWVf)Ps%ZhtSlN7(RhhozvLwi_m zPX6D9!k}@l}|7_f$bq_Fm_)hSHKcsjQ3Fm-wAvE5B9**Y0OxYD2nU) z9GxewI6R`L3>jLOtP#ySu{|X5CK3iiltb^4w*7tfL{kbPx{Da=X3CG+VtluVS6H2l850tPKEZNXsFg>I5U?#y8iqopZ=v_}iIR({NKgAu zi-8@9K?N$7V`RRPH0K0SYPM3IqC!doS(3HJ(5=xUw@l|C$LJrweZ)~c?%bEHf|)Vy z5-W2DAx3$SKtimmpx?NLzo=BwC0)}^MMItmu$sauvERp4mlbG` zh)R9Zt)iaPZ<0$4i%pCfl&Ys7k{C5&{VIi+Q~~s9P_rgoq7mO;NrjtjV-xCuxzoILlz1!>;dsRYVJVO|Y}IC6=%BZ|Y$7qX!L`^fstQ;vi; zWYssGdQ7ZK(8enr9=0wf#L4(VXh+HWkAh1{m5r`;FrOn}dH;KcZbI{G2sCZ(E*i48 zlGDT|HCmT8>$;4ZQ{0;NYJoPJI2M=4ndFlcO}Kj_l3IZ{FO*{lZf!9rms@Rm?79*+ zE4AUXkT8K7xNB>Jx@H*WI(|Z{Gm^Wfoy9vbwH^BEM(;npQlAe+Z8Ls=Mh`Y=-*qd)RgH8CD^{mWQZn?*XEb&%rY6^0zm^t17 z1~BsZhwhndtE0c>CZ6A?@AdU#M~@(E36Z8Ymwesq7u2E9z_h(KoeFSC*`?t4(pw61 zU%KfJqgxa&E=Yt&}Ba>$vzj2F8eG;0E zP0Xt_tH*r_PJ?kvj>jHD#>hPB+%r3x4&KN+{oM`UeqEk^zt@79Row9MZ4&*W+m5ur zjOU;x9dj7+XfYHx277;c*!!M5K-LpURHnT9DSc0B@k|v07{3u>B5fTycsP)3R?y`& z5;^S13O;H3xxXqMSt-=y4a2rjaxx4lWpMcHqA%_5J={;c+Uz$7mB%AE%Vi;Pp6u$l z97`5t>cNXPYSWTuYw;@0-%})#D*n$|VZ+vXP8uJZ_77y=8%sFt+BEJ%=r1d=n0_Az zH+!3Vb2J#Xv$*}{Psafxc6&Wx;o?5)qqX0k+8vA2gk!ZofL^!a(K_vJ6{`U8_PB~} zzY7er0Pu?7Y}{Xo8I?@n7d1REgim%<)+a&L($-q122sjkf~QTqPKhUsnBK0RG_nYH z9$B0sQ5SYiZ?ewTqPcUOeqEY;6ouzvHqi<*dBohOY4p|IFyL)en05cJ3NZPyTF*P&`swL(NSKnsLN{_ zW9HLHD;D$h-B>v=Vl4eMTbJ+4qp~3EOFaqlD)8%?85jF?xjLZ4Q(wEC@#>p#e=q4N z6pKI`bUQ{xyDkp`hiKASUedO&N)a}7C-0L%L%i+Vep~0SPbBja^dK%roE&t`6%o|V z5DR+hFTp5J64az>FXKF!mxg(7Si+XvDyyNv%x|lZ%7Fk_M;zqIy{%GbRf{1By~YaF zUm24;mKgDTonw1?H35m0{%_?hqtN^?m;pXxLc&Ll+u2BA&SUi-z6nBV&x|gtVvI#I}5G)7x3V zO7%Rn!qr{J?sN(~s5V3OTH0EUH*Sbytk+H^X^J={sQ)_OA`hl;5{K3AwptpVPnMNx zKXP#}7UpdQ4y}+hPe4w|1X?g%A%;YRP&_@N;jmAma7mn}D7YEIs;;Q~E=zn#JL5Xy zCUwc>q)JPK20Yb?;WsScXHze&tH-0NnDC4`7Am{mq@^v8k|phXT-SWEMPS4bFT!aI zO)A6A15IZ;=gw#o+t>amlr76ai1#FxrkHYO_nsQRck(p6rTpxHfk*b8{P&6Fld4YK zFRO>{^bK{OaLrtl)qFyph>y0GHvOJYryjP02LeypFmyi?^5Y;{nAeow2TzPFt@Af# zgf#A({gfP^*lnolpuh)+e1fADW!}}u-&+#LmW}O7slYthhLRtNk78ZG{Z8i&;>9 zyz1^cp+3nm8S5V%t#WYq`?Ya_EcTq>QFhKe<r+=o5Q=40D#Si%RO>q(NrF z4Rarzag-bdwirvY#O~@h7NT{6s7Yph&C(d6Uo%F&) zG3GGp@Gh+c(2vt*7eKq46|^md^813=m7@q*2kDR2>4bn+?PJEM$?bNrSF~rtKR*o6 zCmP{;aljLgOrx^G*Uy22YDx2oCmX=?k z^VH&|?kUf;B+(`6-X~V{$C)2qX&f(Aq{Mc@>qbr?Gzw-=LppK zJf_SuFl$>q^M>2hPHnpy=G{s8O1&Hyapaj9{C>{B^b}sP1O=-bY~Y;UG*;0D9Q6Uy zJ2YOp-HwX;$0JXa(6+t@jTn?V?Qw z%7y`cDOiC$+w0p8?L;R0h8l;dN=p?dO^SZIe#daAB!Zr2)g}6)zCMmS~{9 zfkXXWsFMupWl)7x4-`1IS%Jbj<&!lP$#;rQ<7mBGLAZRMgIA;Fm}{6kk8fjiVN5^$ z#4;e^MC>Ba0^_fbZqwmLu+#Ui*O@Oy%BDGPTQ3u)2L4vaXT1X(8HY3KFA_SJ#8Zmh zul7jPV|+P3vOMaedq}R#%GI@+Hggp+6$1AF<1UVdigz~HwRBQ2WSnQL6F(~vU*na_ zmD1E7-5II4&`Ffl7P}jnv>^=-pUr#~yW$P2W((ph^wXZZH!quR5{>K)$FAU1bdr z&u!R3(yQXRAPyxz;l{GT1rOK|>qN*AL0o73FD%9W)7bqMc*MbTLV>LP#r0DPF2zw( zLH_I3?t{V#4Q-Q*@~=38pgA%bbqXm6foE46Mo zBvtBMlF7*jQ`z4mB4l&4bu7q}SWTs@A^biP(weOt{ zve6ZGKpFE8R8y%qAvk|z&lXU9j0;`NR9Z)ex%G2WEN9Mp#!Mkv_Dyu69L zGJ)~0>_R)DZWl;7Nw}|H*hLu6=eVCi6}+ozH#E!+{LU`G zQ*Hw@`s%sM${dG029rjl&50U=8q1OKToIH5b4NVlk_J~tr`T%3G;3Z%8TDV1 zDi?83uwoF;J!RaLo^kejP|FxzKWlW+>f+~1%gUsd;nfNA-1_(2qh@qzY}9i1i3d5E z?GZW=ZUfgeeQmE%em*KeU3NGnU~C2DxNY^em2O9xJ%_X4w>wwU=Q*A@bAwQbL6&bF z7UN-rz@Y6}BeW`u9ie``Ga$F%Ngqe!xbnINlWZ{8r+Ep}1!D#w)_o#2D#rZtym#tJ zC1%dzUr}ss;4*M>xdMxp2QO#kOT!&RzK$mzId?gXyHFV&i^nSEbPcaF#Hqa^qyCF| zyF4D+ZQe>~-rzf!(yfM6A&8S;X8A51(FCj4W|c-byJ{QzEB@5-tI5^1HuI_5SQHq0 zS3}!~b5rz8Y8wPYx6`It&)sZ8GL3m?nJk5cJD}M{jb8&tvj>lp3IEXK7?biPj%)Iw z>G`mrCV>Icz&law?XxPr?BiTW>LqbNa;>>V=#qSFqg)ni0nZ+vR-5&qH%l$%DyRcFa}C=kybC|jiuyjDW=ei3>|V8vtvBdhx>mU&0`r9;Ll0K_P8MGvMVuM+?c-pO<8?EPMQh2Qeg4ZDb z(yXJO8-TWEl1=U)%DJ(1(v^X21cIC*<&!E6So)J}meJ3RW*L5N$bEqJGIu(PDjSt9 zHbfZlRHF*J*UycuS54Zvq0QQ08?`z9BBjZ&if53^WjXzsk*1%&wLfh)2E^+eR_psq zpl`7u{-g=a35i~3&`0Kkhh<}lF_LD{6DXAl!vT^d@7vq$k(oF98in^9q^0|&F$abr z9Y+3a1nrZv9VjM&+c=o4wQXsCFsCPx%Wyf2WGT;DeF|#QbO@nb?dbckJTBMAL_S0V z#L(|ZaUYUb+WxOJcHGy-Z8hBf*ZAGG{R7Hq|Bl~| zk$T(y8T*bhlQG)kqUSobjM3l!3813@vV5g6s;491G!ka2Yfp?LmI}#H(ad7oKXhvb ziVIQv{HSF|I4xOmfg;7v_P@evKsUahGaW*mh?wa6k{lHw`FK8Ht4^rr?y6?D}(Bsjpx(kaw zGKvl+gtWU_R_g*?TYG*U7lamoa2LpwTvsm)yl0toG!kD6yt@9q_2#f6B(~Q$mQO#w z$^CKnkp=ivt@&~}LSy^y6T%jx_nFW352ue!lYrvK!t0iC5%oqAK$;`)7HK(JJ*58yi{_L?DL;KAh&AW1t=l%2O$_?4vNr0Z{rL)Z3dXU{ zPd$RtjN_WYO<)hjjRP=rxqZoS&K9R%K4_Q4Wm21!Xd*CmxN&V$=Pn&c9es?WtXRHN ztyG_n=lPMO-biCvEDaS$?zF$Qf154hY`56PZZ$Qx4T-1&9T;>VnKAHV8&?P=a+dvB zgAx`&P&6?2i9-bg(rykBcs!fky`_&miD#|XR2pcuaX@JZMlj7bN{Hz=xyfkP;(N;h zmNDvT!~@e2fJoPRepRBy_TMLakHiGlzG)=(WjsZlP=6Dg^ z+Ul&b_ETSc)(|Q^A1u){&iT0#J2Z`U`MXy}+xsV)hE$)mwv2sM$5i$u|rY1sSc`2A=aB~P%kGC($s;B1DbA$M?D|1Pjm;G9UqlbR%2 zDVuf_1hoxAvqRI6dkp>9*WopMPRart_KeftcDIX5XfpR zsG_P(vvoRklI*bWJnp7lqh*w_W$e>>ea+`9N{@I*kewdb(w0E1ip1MgDKlP|)ebmf zM@odbRO&+1?;zuDcI%!g_V1f<8yW7fzF zS$9&ZA?=>V#{xBd3SAKgC(lCXmbcC?I9vFiuNDQ?hie1)NAYmmPZ&Ysf>z=)qVXdJ z7M;z&y#jytY_7rG%iR(~5AbSr8`#&cD$(;?Z)zMQ#Zv(GO~_d-7AiIAKIgz3YYcZ| z9=#;)e#>b+w17Aj09AjnPr^duM318~aNL&uJ`IG^)Wb7jHCOMG;1CfPBwf*3m_RN% zqDf$7X$j&F*b~HSz*U>X-T}YQD3a0daaW1E9sK=LSJ}I6AEhoG zV6C9*hn*H|U_IUh6}V!8)nXPdm+sW2(b*t3C(SMS@3S`PVFA=phU=&0&}s#41Eo%%Kl13w zFSnJPy-)?*WxkTyM|5AiL+_HTHF0N=4Y4<5n@J_kA7iG_3VGo9#(gDM1CiFCpAJQ; zAw_m*{*bT_c{zG_#JV~?D8dj!Txxs~Qa{aUa2&&Zaq<>g>W+SHaS4QgBM?w_E7#aV zYoxnL(9JguzfMCPB>lzT$IEv&2DyEE`Y;C|WDhdK_Maaqk>JX`Bgha%b|gIBvb4bh zFOeq+YBJ=TfyLgVrH-g(27UX-Z2~;)y8S03+8b_v4|8r9;-M-Nd&vpf7T@JDPU4T} z8q|QkUtS$?`#V%KCDsIVWphd(WIG$vF%La=r}~}^wx@rMiXo#t!>_qaz+G|vK3+Yh zh8jYmXP|rQVMW;e*Q229|0G2GfBMyA)*w%v^%DN~)qm_&->=n@m)GF~B0INp=d>i2 zIigpq%s_cT{-Kt?TFI@w_72JQBS~)2lLlL$;*Vh}i~A#^Fq&DYSskcRAheALDnA9N zI_aL62Re}qQz*(MisbDW)J!D^4i;{Bu>E!8qG+%&=wJB2Xi?`}JUBU80m=(lEEyjK zUbA#2cX-o?iQRHB+h4s$qWE@HE|rT``2(+ZB)Tut{U{}?-Ds_QpJ1b0^?&dUJbMWl zMlg!?6;+yKBOe$iS}wFzR3kK$nV*<>4H%8VRWJ_saznkx-CD5#Otn=YSMSYcUJ!=K z;XSEQ>`S=ETRn<)#f&4OJLZOeZCRdBmEv9GH}qfS&@5oJ^thhrII$M&W!wGt1meZcS_R;P;k`hbYKyRR)g9r^7~u+eNWS< zGMM=BNd=e@R>oFhmBS*%nxa8bad%s*!U zk;tqYc4QbSQ(Aw@dl+aJ)T3y=n?P-bmhbl;0~AD%$@eqBr1D_}Z_Hg7X2oDt0k#V~ zzx0kG@-y2-fPgR~G*8?yzkcjLmS7hOa;cYd`7YI_u2{zKd@;MQt{4I)_?e7CD6@;M z5wQN0KsQjqMrtY8+uz-nlVyG`d5^N1?Zlg0i6N;7Kwqj?pQ~Kv=v{zPiAxF+`#4yg@BE#7L z`8^*cI4yTk=cuF>j%O$eXh0kd12SYmVH^sY2z?@eMuO6y3JW>Vfzhb&0BbZnF!}+& z5D+fI%RGP%;{2@x!$B~NUfT`AvMYpzC~@%_=0h2_td*_hxN#!n#){J29?q8K1ajJ>JH0c+!@sG5GutoK#hj=qPkzvSBoYpm?tB z_7||Ls%-)xSW>_)5#O;>0JfLo=qeJA}lN#48V(Sg?#Xvh&~KJX>JnDmr=y(dGMpG;q8Ht(mN~C^8f{o+;jIp+wdhwD^dR- zX}+E^eCqNFs)1xz12t_mYF$fvkoIl!-M#DQwI<)(bIxxakZO6_r!`{GFgC!`3_B*K5 zDN(r!jd#~AL2Y4d36nu&dmPyF!4mWvH@Af1GKFAGJ$EBOCIZ9V68O|=<-lMGRZ;Kt zOb|P;`TMnLH;A>7eFawar8csdipcMQ%1i7^)I`TpumSijDJR#uHYl5ILl!`TWmQbpaMikdi~`n|SU(uSGXJL3}t ztr(tkHH=vcy)?dQC}g){{Mx@^YP-X(N3=Jt{&d(@xg5q}yzS;PxPDoorR|2I zzmF_ia{u-H6TY8SVOkyn3ORjrz1Jw4m|Fh~KNr4g-jmHE9&VFt15y3eW+y)p-C>;l zQZN4`3#-Y8rw&3RYH9?X!^25#3k;nvG6QgIYJ2O00Nm)-B6$$i*_UH(Riwu${)FJ7 zJU`LDC+fLM5L5-pRzEm__K7x%0NJT*>rVEEjqSD)m^10IxFA>z z-~etHYpu#OqT!qHsr)qv@uAh_fSws7U%~l|0+Lv#<~@-r_)J6!dvY+ONiD8K#|)@W zuJ}WUEWP96p&L|kfm(ae-JpP)bNs01I;E9MD@}E19*S-}k^OK>fJ8WaA(iVh2Y?Nz zYkB-2p)+%Mr175F)>;!qLoF$2DRC51AceJ{G78+tzjdPR(b^!v9HdGPt_5G@`+xhS z4>PxE8cdSR|zF0)}oJ1A7~6dz4%b1xm^ z**u_-s3Augar0)~UCOVI#Mi|`HjZC4pB!@kO>M%?WbHoWU|_aEh;w zMuZ~QyaoWxZL2^Q(X}vGl4q0{2v@z|3|>9ylM_KQb4P+cOSgh+`vqMEqg+tpNW4DH z6A3)<>b{Yyf=}S-?j3qGlK>e4Hh^hBDkr2^0|=@Cr{r*Qro-i=Jw=+#HO6W3VcxEo zzY^bGy4eLnOxCVNQcAhLt6g8Yd7tB&1W**p=s+&U@DGSiE#5>A%e_375M{^G;vDQ3 z@NTZ(*q(`2f-i&4c_Ae-w>Fl70;@m}c*Zp)LN!W^24s=@E?lWkMWz2ivrGT`>Oc5O z5?}EP0?Fj+-G6IrZ7=&TxK=p1v&x8tZ(M6<5F)}g2HXqOCE(^EPvA2i8!Pdnq~W<8 zhKI}G-8R~_`*%aT=%&#JAfUuqG2$wKu$WgOsjCv)lvxy7&^~oq%)rkkPKs@)z*1XpSjt%#co?`g_V@w*Oh=;`5>8v-dQiN9B#3L5J!Ja!Ey|F zfJlFo{zX5-e;xY->JM6MTY9i7Uq7t(0d9Qs8mH+;p*N$#8Rh-_>zoayK%X+>W7Y?6 zV^6K(+V6&boe|x|a5F~5LIXVf_smrg89K|D5u%x7H-YM?C2)D*T9G~6I+)&s3{6R| znS36t7C9m#YzC&Fn1H1H?fbn6OZUd?6vg$3cm`fqz8GD#ybg%Y_H#xzJvCfM+mwBd zGqSm(_Zf8GY#-pMG?}tmr*PoDVP44hEuRP{s9?er3}U}?_k(d>RQyF_Oc@`Nc;mb< z>Rt-gExA_4sJ5iDKnEW;aCrdAy%pa4Y%Jo!T>Ra!xk==%TZCJ{@maXztqYdUU!`#N zM2&daVv&2wbIQ!RLj_|#Jrl?n%4ohzdQC5VoW4Hc&fszfdmu1k5Af1NLidcvV_};_ zkw^7RCY591_||;ubb$Q*5=clDJ3p$?=Tk)yGFFDZxYvb@wl(vhjmDuKJz6=#Hdt-C zzSKS?_y_kM_}OAJ(*waRBBqahQlXpw^F(67Kb>|lZ99gG3tA4~bArsg-{TYmCki3j zIK8aS*ETA%^Rn?{>m1jSOH}>FOZ)EALLANi_E7%kf>&r>H2CNe9y0k7WQwnA ziKJ>$>-j7MP@b*>6x@8=%c98y zPL&d@XldUcV2f}}XBQG$EY!24Cq{j4W}C0~idFZ-wMD~zgPk85Kr!+e5SfJO6`r`g z-}m#c_I>pF-q7zG-~3afs9Ed;zuWo2y+v6jqTU!ZzCwrb7h4~?sROs~{X*OM*YH~Y zojZTfrTxv$hvRCiNO2V53cJ&Y5lis;K}+j>>z_AYKHmCwUZ1!A=<}nk4=ligtsk_g zz~$d>{rzj3-r83@zKnfM4^71;H+u+C&lWy^Q>lT97R&Kr-G`Id!3HDVAa-r6wVD*Z zM#YUK6fZ(!XP|fHhBinccn7fj-S#shuM?Lp7(#)VZdj`ht)~Glb}Fc*I>_f~0EKOZ z;X!HIm)r)re))c?-ZBJgx69cBfTW|EVE{^;8j(yU{kZN-f(0DctF|8{U)(_C_c`{& z&)-^rqYhY+4^t(#fHJ~;@(vv351i;Rn|Z?3XA6ksJPIv;V*$MhnIK~fDuT3;!voku zUYAYb#V~CKMDlHt?iK)@n3SY*;~e@z{A(k)7vrIE?bQN`N%IWtAF5n#0Z^Yw6C{0g z-2%>OY1RKn3rO<}d}qvN&hRO!-ZK^^P1^7-V+8=Xvw=kg>9Hxj<~^Sn@i|?hV#N~? zZ{8(Ioq)a__xv!Riupc+C8$uu_KNrB;4av+33$gSrC@>i{j|1=eV-j#RO?KMJuesi zz?)n_S^$i7dIkn35x6~JruK7V8d z>Wyx!Kz{A`y%oskx0iV=w*vWexwC>2PH2b?7~<%gO73OtPexvsdn6 zm!v45W&Q*Jf$-j+3bX&>H0vli;efj|#+Lq6NjxEq4f2pC&l9uQ0*i*wBsH%M|9z4- zYP;ZEI__BB_kJU>sBoK&L+)CyYY9vl{+@>Lbqs2Jz4ZI4Gv?F8eE(@|lGc~|XskYK zDaWdWn~)*|BM?mI|1Ye-=DPom6);nPS%E#pH!ENO5>U~8|p{bm=i74Wh8 zW(9GI)p6;1xL9(?0&x4v-`K$quepLQ+Oa<1x<3EuVwM5ECM@ znYqH{`v}mVl4TAAK&a=<4!A&(#$%y8G6V(DctGqI@WfZFn}5O|Q}$L9h-5>o!pDsf zM$_|as?{X0F943cdaaL*AERuzSQiBp%P6=>*nXP3PVC;4BJlViS6UhHohq$_vPn8$ zG_?+>#=iaQ1bca%aN&X?UMiJcTS^aegqjir``Lb;Zk)r`G~@v#ue|%0pFpurrIl0| z0t!Qg%+#-LE=}7Rl1FMW0$ZY7D#x;Eo0gh{d{NDKZs~lhF>)uZVTskFnXui!Mj}4J%`ng5RUaE83`fVPTA*%f?|ag2 zf8ldgMF*>rwjR~?5~`b>5{1GtSK`(nB$`rtTd$$>=jidWd%j@cUY?mwVy2P)cn;&? zBd7G${Fq0R#DH`eOXsx(duYg@TREoD!)6Li2I}6JgP&U->!g%oD-if*bl}5*vf6RyP6rCT`jDn&NjAyXTJy=pxWhL5XT~Q%QJsvpHNnnKZDO zozm5oc)0WX#B!S*zc(;BQhrqGa)mKB0(8)6*F{bKMs8j+5*fj z-6q4KLf)8>JL5+TjQB6OW9PP0fWL{3XvUIoaWE?A<~3q+io^}Q{u~&=FpYa@)j$}r zWWMUb6;B8-i38~+q3iaksVVippLHWF{W)xg<#JO+ij%|y&Hd&wn>Lu8ZM+w*+E0V+ zdLE58+^(8cIRSJU3}c_AJoGd%RttkC@n&tEIqqzQ!_y(!L3>AzDf2DYtzF2wVR9(h z1@NI!ABg=dC%;(WYF8+m5_e_$iz7&BidQ+G>;n5AOpCyp#x&W+oJoIX7oC{&XtWDn zMj6?K?52(|lwEl_$}}MzI$mV58=C+9_VqhuE_XVC`O=1!_JI4|-Qqg@dF z(LZGu6JKMy$_KkBGj$37o?UFXS5&N|k_mLX*wEXD>TCCcIQ9l;V0+{w*@i4N_ zixxhpAuWu z!HvoP;g4(rxX7hP4PhG-`TQd`aR5!EOq$_S8QR2t2NC?-&x}V!6Db@|>D}2x@oKY- z!<@CoULK923EbN35Ew-RPso34xNHEQjdQ!w{d^jo8D(drfEFfA%<3injgml3vzN04Y-!lqr zx62iH)E0msViZzlR&cRfMXA-Aa&HyIj?;lvoVe&LzFLZj{S+<0p#tn+ny#fPUUdCf z#Tgie2y~w{n9(YxzXpYnY!p{Wjt3{jt5JkCs76r&bJH)3;&ZZY$5Y`|9xn+nazKrB ze@tL(J1~nq7cdhphr%%i?%fl0+>$*x-5IDDIo& zU$kZ(q(?fz!)$weYpd^$iVQkiRSMIZolVymYyR zQ2B>b&^81FB}@X^A4W}nKoqf#K+U&!q|P8h2Mk|(#8&C7w1^j@<20GF&$FqRXbtp<8Qt zIJA?w=9v&7Ndz$g0g)bZV>pc>0>opuuiU%6VnsnooAzlU}gJ?=x5&c*Jj^bqPm{&s8* zf%o3bbj7I%iKk`~+~2>~v63w@EZsGCy$>IHvi+%@Km9wIl{A$fS(}Is#Kuht!4g;gz<-bi z3;^>w7#JX!K_Zx)G-jV{Pa|(9r`x)=TNtpV8EQu8CBzf7NYrSi=+a0D_Vrv*-<1tI0>-B|*v3 ztfi!kbg)p=Z>`3FGzztDq*Wt(5ZliYNWED|@xd6hb5;M`L@H`REUp@$Nf#^+|2dYz z`R8?cR(#FGgcg{eouz-rolKbqf5{LsQs~ulabRvE%D*TfZk++u3p&Z@Dc$Cn85% zs~$EZ{KID`DT^`xTw(-|x*e4b_Iq zBZ1)Wb1z!}htiqBYr(S+Oi;>5|Fh*;uH(VA1Eht}ggQEshV@y_;rmj1XfdAspelIn z{+dR5ID^IuE`Md}JA8jw%#d%RU)y~-sdQ3zSxiq!?Ei!hK;kILiW{iLB5up(jx2R>GPca)nPR5sxXV+Ro{kmu+z6x7z-43=qc1Q!nqW|^ds zM^4i5K-4`Poec}s5Bfyxj9=tQk2YdbbRm|#8Odz_@ClCP$L3LiNz7!CiLQO{w)_Ch zxa3s*W0S@kJRH@Jqin21ktry{O7f^0Pgo85Rxz;&VA@#89`LY|R!OSv!nvTbilx(> z+jCty!hmLZ>N&GutV~1#pFBrEnjUW@inE%ze1`&3C?fE3f(HQ;I2+H`a|M;PmnZ^C zdW%|~_+0+voSW@0wlQ>Mw;HXf!IDv!Hv-?@{(ca1WHt_Yl(Mv19Yj!CG4~;hXE1oF z5ue|au_Cm28Yy}X;W|MTSkIz1xMs5`F=&g_O;)9?Ke%N5+|lXC069pg`0%}=eC==yAEE1 zb+=hS9>3qcjI6N^%u$DVYYFUT;;CnAz@Dza!H~S;FrdY;W0}U0kQU-D$SjOa1>5nv zr`Wo`4&2d)rQmh!QI&#i7t9s>(S0~dP&TX8JwHKlOLm?Yqtr}__nQ)BK#{)y#H@CF zJUGHwRLVNG(&rxRVs8bc2ec{+mf>r#i^EaevgE}hw=za)qg}Lbe}+H&kC zeqIMb!7gSm{!uRqRd3KP%4+$w+QsQbvId-3*TKGJ(Bp$$_}{Z#U?JzhF1A~{(X!Ur z?ZQ_C?822~%F!ed%Hi5Dqi-y|6g6zNwRRiYh4=sX`-)As`gp5G9M^pFRNHB$=b71s z+@-@U)VUWgCK`Cg2qo|;Z|x$^Ahhc~cZ{HF8RLAj3(jt8=!^W+$fT+@sKCNdg=a%3 zOI>32or(2fwO#MEIS*c+!9HH-1pduh!J58%K^z0`L0-(%NGwTRRAHn4dSp^%(wOi% zQ>?JKE!W%l^J~MuuTF_VX$7VcTu7DAL(zP2_aRLvcO(4{>Eb+|B^}v2RC&Lroq>S1 zW;s70{p6jwH8`Pnr;thACq_!+qz^{0yf)er9wua-8G?nvpT&N~WU%=`6@*fOQIpB;5>lh#a#SgtK612Kh875P9X(fXzT$oLy0* zWW75L_VTs9ishuhyMh0`p~vG4G0~A!VQP(%fX&AFkovGs0IpHTqTvJ}jDhp#mh^ma z@{;!H-M8{uMb%dDF(?kI_{$KKp%Rg|AMkOqlo>&&le`e|<=VqruptX2eBnRYNhwL0 z1*Ixh#qF^|a|(A;xBXH}0$f#)T+?UwAu1neh_?3r?ztG1%5hS?711>6-yB#$P4GD1 zIysQ94#H^_i`wX%@6~unp7X#0WDRHz8E0nbin>7@+gEwz5N@8cvq=m!Q-R@}56L%< z8E#A_;Vr6OV7=}}rb)hi8U9)o)EI0=A!w3kNpJ_0`Fa+G@@sE@KYo7%#g==6saY5h zWNz$Ks}#@MyH&;)V6P*Ukml^4-|tv)Cd;RxSzP>4gv2+%Jdmk8OgG4-&_u&QM-8J- zc=Is2m5;WD36`TYn8CKaN-A)_?cEGQ!o+P7#&&-0WDn@kYz7g3@MZ>);*HgKXq^)Z zh&J+C%euGW)4&Wus{0Ew2+7{>%m4^(C;(xKoG5Q*W^i^dk&q<>zDOXYtV`@a9P^%4`M(Y<4qPr(#*cgBf(*7pvQ?t@61Vz=Anyif5#s|6i+D zSv~s<%w8T1*6MSDcmN6B-X;aMt3O_G0lW1WU|>c}k#vsY*;u!yLdNFW<7s!{s#I8i=xM#r;hd>DMbGK^cE_5~j05LS<)pdKeVAtKG=6|Ke;S2X9!RAT0s^eQF` z*yE6VHU0IcSQ#VO$G*K4lVnU*Q+&4%w?*0g#K~dyQ8tSw)jm!jO%Fu_u8cF(qgDnH z8NQ!CJH~=>6sH7Dca0roHJs~7TQ|jfH*q&{|3d9!N9gj2FxtM(%VQ*Vx(Mi6S>Sr%3|3GS`_91)mxOq+tkWN_92951lQQaEF z_XhU@7$Mn)q*r*>3D)zmj}j11+_y-Sc3Y5eykOD8;MzE*G)a2Cv zPuG)%V0gfBZ`F?7I&ob2N+J%dxJOtOOUb5Z<6sYa z<57B6>6`>Xf}U;vIU~9g5i-qxuk}CrOdS1S+$Q&9s(%*kVSAtH9%Ota1mzU-Cc+4q zKWgXNTK@~)s-BJgD&*8SP$j2EJ$PR%BOLdUjdFRRjr=c;w$&JDg4fJ!$qkfqu9*Ogwh*Fp@LX#BZhn4t91)bt8GLQSjf!I&H(SI<^oTXu$o`gkH;-EPw_WYnMw&;O!A2~CzO|76@gLYo zi}1URD7#vLb#C8SQh7wq23vyDOT)ji5iBq>;*QI=NGUe7k-&5J2R0JQ9s?U`@;u!} z0{Kz1k*HByZ6pkiQJ%oGSpyq^S@W@t$m#2!Xf`r^<8Bz(NJFE5jnw)__fG#A8_{Sk z*vPiORcYfrKiNnjS^{M%a_qCV*xd zY~UCLTh?Uh-g)dd$uv6fj}}G~mHAoQam0z~|VS^i_sFMWn;bWMYY# zi6kl#%Nljh(y+uE`vuRavItiAzLE+Bk?xbbc{*TQ_I^Xm>dTb~uK1=(0d!-<41n@$ zw17M;lPV943ed}$;pzM zF==Qn_-z8Lk15J|;FsBdIhbas9dmW?N!f}*P=Fyk6rU+L+A6l-N!z;U!|YC9ka|!w2x~pyN$um5 zHcv^V=TypG+P(P@4Ur=otjk!281}l`5AJ#l5I1AdIi$M2#<(SZ3Mfk1(a4CO;uCLZ zHDHG`O(8=Y(l|?EMMGe*tWo`iYjJ`FPC60p*S@h%l3l0&L22BcN54hx26Bg$eW@_Z zU3Y}vNJZLyPn(s8e?sSk?1~z#J6v*O*FZ!ou|Jjui9I^UH>U`E57xCkteX!giF>nn zP8hmb2(}T;LVml~FWOmMYB4v%gMwLjZVO`X;v}xl3c;eIkw>8ZUI8vw)*5UJ3#_@|t>qft4Flvy)DWdSICsOi`V}43Jsth~i;zPX z#Bza9ml;OUIBDzc!x`40Uh~<%lT{h8L40Qz%h&qKSIJZ<%;K90E~zn`CWi=F%?&Cf ze$kU~xggeIwnCQ7;uxLFBJ9`_aD@M!01mVFg~#`k8nFcO;QQm(+{jM2K_1x)ZvIB3)`9G<2l#`9%17sGJpl; zo&jFx&HPya3eh62*D-67IQpGMC`)3u2pl5H79rPq4t~L7Lx2i$(G&+uZY)Cn-g2LT zMKo_|EtG5#&0}|q2-Hn~U=iW|DsN6@!&|>^EkZu;yXD;?>g%KbKErKV{13xGtS_7` zqV0dQ2%PSqH2U5m&YRZ*iR}h)OXFcY!%1yiZatZ&)21jai-+L4ZJ_rrn~Xm{*#6XqWA?(-qJCxo z*J;IH39*2aom~Z{9l!igNr5Di3r(=G2oguWF zOaK-oIfPIJu51)eb2wXvSOSeTeSaEbr6-dh2JmDC%_2C2hbSC0jXc(ynDqM-ENl;P--UeC7rQb(-;(`67NmSs|6pI;Vot*JoeN6nbm`< zd@Ki=AgGP{&N)aJOvkYflk;&M=`2Fq>EdCm6cUFhMG1RrELJY;aGrGz*a{c9RA$el z(tu=sek&{N-{#Q`o=6EvpZg?)Oyj65jd!N|Mksz2qv>%v1l~t!9yOH5MnMw#eM4xBm2Zq z#ATZl^HJFg&#iafVt8F;8)j=I+?Ma;-B!OjYqdPx-&*_Z_ z4z*_QxtG?8JaPCokzG+W2Yd9Rs&o^&gZj~I4_Ey&R4M&n+F&zLMhd;nZUmpKWtm^a zq6s>mDz%A-wxNn!bxytk2J?NRPCztIo{vXr8DEnIYN_5G8ShG}x3cCN4>t~I9|PlE zl9LEBUNNg}7!>ts_H2UQPOSJlS_nD@Jc!M-lRSt}WkG}=+#Q9w$bzHSm^a3e-zims z_^@SiH3Wt`OFCe+8PCE*n}ZQLstgQ1L39o{3h3?{#nbN3+h`Hj+rTvI%5Wrr7SU28 zJEB(YQK?1jCV-UmR#>?e==H1^JUZ0(vey?VnSWcDAv^R2<2U(05LpC|sAr4N zE1Y|@R(e-&U=jNHKFBB*>=gDRi)h8PI$#Nbk5@5I!@rzs+BIwuVlg9&*c)8+`G{a; zA!<-@>*8puuMRH*D$^VbwP(0Rn?MKLkcWnvMk;e)XrL?**qhUVB<7HDzAL&O&Q(&& zoY+Blb8$P1iKZA%!1v3zG@VkM-7=V2x7(zA0msuW6612D!3l`9`(WOuu^-ELarBY}7 zh(-=R*b2k6(hrr2QoWt(^Ugwn+hj6X4t^~n1m7wV+Px$Y4{|w$qtFBb40p5ID2wSH z|5&MYgi>GycTNzvl*O3k^m#(TGg2<5KTK%)`TP3k{o6@%IhH3&RKAv_U`7y10Fpuk zsdS};f$^7=9i}-Udd;m1C0VUuakqib@hJ@UkEcQMzQhBJOXa=>Sd973WY(cS77F{~ zyBwOIKV!D}ArOeJlVLWe~G#)#}9h<*m2-(96y^_jJbZx zCk1Wdm=)*oJR~g~vJ@ADc_x}!s-7}Xoh#*o8bAp~mBqG0#e`Olc1lwD+gnuN>Kpxx z3p;*(?VdHwsc{EN+#%=JjL2o1bt5G zja;~)t4;o(+Tc#`O!)moo-I$akLoZ#3Z!%*NV4ucokTK0Pb zJ#{;@amOzIyR=h zAkfs>5x)8NPi$MEGxuaK5)6=#5hFu*G?gn7i30$F6Zw8Xx`?r{rU*5eF^?D&ZGy-HJO+`NpLO7V?GK3k{qGxsjZLM5z-7 z_9mw0&$k$1pJq13H*e2_K>>_p;&45MM%0{%3I&7jGi24dr_fCH2TkX4iKm} z!@U(DH~KCR!n`q$%cMOV;#}|aolUFl+)Y0sj zNyKn!jE`S=CM2@PiWaE^BTG;q5JJ&fE=kERP!X#IPOahB?tw>6aSm3(aIpE-r!gXJ zFKqGbON(tKSnYEM`zJ-;U&juJJ10dLG=$Hp*=V3clo7>O*u*lFQ?IF&2d1M@gp!&q zplt!ikymhe=9gihm$y1 z!2Bv_#dD*rpt9YVK&~e88I>lf$d3=Xik9)~0YH*`a1sar9)KqkFjk3wg9#MtA3mEv zPNDhpNH^}@9tYVWMRwp2Pb96KGa=2}@cBmZXG(&z34|n;`-iMg#03$gu$I5)h74mG z>a*IRKm)aCk4EKOh^IisSiY2shBnY+8`F@jlr`nAi0de31F|b;&_>4LsejA}^c)x% zLDyM2Ev!GUZUh^Isa$1-qWZ6l04f~`k<1lyCVJW1=gaql5y0np6LH8B>qI$-Yeqnr z`Dg?oDEyTXV8dc$1W-5ol@S0fNU9X^z!?~U9t5Ew1Eeot1lQN`%KFIt$;86Qx~Uu+ zLGYMSxZBkZtT{~l>N$}=&KHxWXUP|(%#+YcJT0D%d-}dq*kbGk7mrv7r*#k)`2K|o zXMT22nL9OWhp2#-S@!ITiRFo|7@Pn3RK<7Qp#WHu1*5f2a(P_=AgdnJM{4PF`(pKdN!m*DdUCuEHW;%vE`x=S| zS;l5YuU!>Ge%V26?P=DBd25iN=}pdn+MqPjlG=A5zo?a3mrGD^*0N%pKwFxollr^5 z*q^1oQ;TTE**84Lrd+V$?n3IV>9-#}o~r++LW$cCX7#BvPSK_h`t)~Y5lh_c%d4k< z*zDGWXj6hp#D%-P*nSodbNY^ifSesW1$Ai${$jTm8(^fmYZ^QYQ_}id(ob2_Z%bX$ zce_~ie`~it4mB`t|F@f+@Aq!A-;Z}#w2 zKS~~OSAl(TV{Pe`XJIY@iChK(^2xv{R;$mRw>f;GUu)mggkepYIprEl0j6nTj zFan_z|Gg31xBC8P7(qS0Zs;fewh72^%kpO?K=J!8O~Bdl|I7p?6L0lw9=4czw@NZL`1Z?0;-%UxibrpLJmM$Z)P9Jc=cwJ&c}LJaIdW#x{p?9U8`$>cOJ zV97NSknmx_YUkY_%Q`lPm`0;Gc_zvL9-XQ~P&9xz0oU+zQDvGL!GNTF49-Oug=V~2teWva2Awuca za7I{2cTld0M;o#?%4(PM48+nvCWYvHx5~W>1psUo1%(C zK>`~vv;+FMFf^J+B>Ca+l-i&|6CgxsijK;i31Y-Ur!>>XtqE4wf=Jh`;GEa5WqM1C zall+62G$W#@T3Q&1V)r`SfB_`ol62YCZ>vZcDnLRnpa?fkkTk^?`X(A0bu>Y$?Q0@ zxg>U$dIcLW=W_(d6soX7W$>&bjj_e58?+Ed2nT46@<>G^?+D_%;_z+}2CS(7kNCz< z0eKE`caAoQ@{KB&OX*I24c`E-ZGo*i5Aw(AUDh`7?B>pE=Y{gL#QW;h1xI;9d+;TiQvMW4jAQQB{@?}dASyZlK43B%7TQf@GBkUB zs{qsO0Y-{gWsP@;F;Y)1Z_XCPuhHSSJ$&}S9PFWhlN{KChJIiVC(Nf3rU?RVvxjr~ z?BMzJcqpw*0QFfGOUmpmNoPdUBYKh|;t7&YWeS~#gMT-7YA8Yr-8>H)s|hrdDoi-}8$R&$CY zW0^^5u2rx4(ECgou>)abDc`B}{^DIPrXQ)+QVi4O*0P*aQ^fhdj|yr_wYK2fAg*h_ zU)K`-?R>5EzhJMmmKS_10sKp?zby?PVhlD4LY|NrY;xXy@f_#pfBLOMS!uB!DUi)PPstig=DScNd{7x#D`QUd3i_4)o%Ix+ z(LN9L8%OC^S#WJ;btH3FQcV3{t10xj?PCj@jdKi8`;}WrSKPbT*YrtBw)L%ao50LK z_A1W`igzt4Yg#!LLzealY1k~ssG3RjMwAl+qv}n3s^un`NTweT;D@3#SCTdyzA=JS zB*P()XpDp0oBmWYm%;C6*nyH@6;IrV<7BIKhZO*A)Ct8-slP^Xv&s2rrnUkc&@$ID z!}mBb;r5}d&jtZ6RP*nII{U9*mLgnpU!Uf`&_PZB+#pIGu76*SsnHz-g!i6Gw?xW~ zp?se0vcHB|?p%xRRvejahk_o4i-U2MR&91#HRFh#ToRZmidxWfg5%%{c;$pG1^J-# zsISs{Bc4{U8VSpYjBvI>;O9Ecsa%?r*mv->U0JPo=_HMWE<+f3`72WD2{`HyI)q}V z+0Q{CNzK}Q^8BO9fVSC)P$9NrhOwH&#_M;_Lh9*JcKnukt?*n?X||h7^j|g+TK`Q! z2#FK`uhwA=#Z-qTr}C}$tlH+reypi@8J<5eHl|NQ^D*?j)~IN#2YMCNXHs5JJhI1$@-+D@B0+K(GZtY*h9 z)QZ*)39!w!cxY^1xe~~(=JoR+tZ5@L<)Q? zKS!8YuKxq0XOstvu%&4(4J>=F@~Uf&%5k43GWYPTB!>2sGlj_@8RT6~oZ4XCN*;Mf z_7gahyhP7qk32_}(u8mjv`cJVfkMZW+C9b`PTtCm%&Yzn-3;||Fs*BS!mAEoOEOU~ zZgle0CgR^vFQV^MazXC46RN+vE-LZ+k+ zI<<8ZCZ5{5bxh;6qL*u zLv*VIbVE}uQ&I(m8tddg^1d>gP*G+j8B5Y5EEXf= z5{E8hy)ucpyzj|)Gjx<64CS}@c?neH_Ybmw`4u6BM4oB^?M9cShe&hlhN}gHR&63H zqCLc-Ur9rTLZ%c#(ZS9KZ5(4rL`*v4F)dhJiagE5Yyc zCQOfpk~NN*@bkYk0FQjrmc^$ z*>daS_;U+Aw8l3>)$j~Q=J9g{V=t1nqB*7mEloa#KALPjnvLb!=C!rjBs{V3_e@FC zD)P{a_{1kADmPHyj43!jzbME2GAjBDfSQ=~>iIFja9R-!A2|2v?@O7QBD|8GOU+Fx zQoi=AZ;`reTA+aYoYo(yVfW9R>rV+is9M=>7t%z+I8@_`>?chRSvpUZpGTGM!C&0u z7a`Au09WpdXlu&HU`hm4GqKFpq^!%f-s}LZ*Y{mG>wVhl6|4gLCkoifI_<3<`&fcv zz&ZlLyf_DN<)otlov?vFB2w^#w*w$I2UY_z;a1!Buna?oQSUd=HBqk+(SH2?AP}NN zAyMBlr72HAQ^?LVjc*jK99-Zaf;W+dd~8IzAo38;s|Y`gG2>=sakGLP445>bLMTTFwkFW=tHB2-R8y)4~x zK{ZH2uQ-E9H5LY!V^aKj-cx~;hgTBnik?wJ@W5O$H9wx@F8#d5&r^J{TD-8r`v`9( z^b9|X-Qof59HxRnj~gX$%*4xyZ=aqHzE2gI_KU<|&nPN>%^0v$8Kv*%Q3FoMiqqeEm}*|8+g76pfC>3FC1}Hu_hryBVL?FOnDz?AhD!^gyR4N zBc$s8XrqMuj2sIyH}UTut)ubDj;tgfqf8!{V9_8>-bQiIHf>+W{u&2yCyLmi`J|CL z#RhGE9zvrc3wPB_ZP8tYb&Rd+w%O~Es4{ayr>JYG3|$aSThC4kR3!k?0CJ|7smkd$?6oGzac0e;eD9f3 zAPMVG_LkyS5a<|T&wfIV6Io|UdMJtEg&yiqXlc368{TLr6HViA65;s6wKP#)yZfO4 zJ8-MD(Xq~Nz!U*&v1!tR6}xCoBoQ<$?e4t+M6*1YrAe@oB#m?-F2|%RFuhZx!jD{97f$BKd;l;%k zpjW!j?_+r9!$P=xL4$o@+6lg>Skr)WihE*Y##w2=*S5diI|Yn7EOz>s8*39%Qq95| z+!sS?WWWu`5mhXymtW8gPV@9Bplt@QVji%aIwtfeJDaGjNPG`>1(!cz$MV2%cbwc{ zA%IPqQKQ2;z2*W9OMnnsA?-6oIlB#k>th7R=zegY{sLa~(03cY=G9|(61_%v(Xd1b ztA9ft25XmQt*OhHkh!DzLb!VdCvguHpJ%mI9-KqICIS53=$TaiDMjoRnQD#p9GK)lc~Ms1}3~@HkPSmPZ)xVpUYlcX5*d*2wd>eatE$76Day*iYy$d)@5g`~an09VvYIs@MkTt)xk)_9Wr?2vK79L9v6#cY_`Js1lsMem&5Pl6_)D*cy(JIc_b+Jq~uNT zRH>lLY)!3g4W$4b$e8Ps9G>4?LAq?uUu(y@0gpo~mKgXvha?HMpub-<#u541(fP4&AX4N_(JhkNklpq{5Qi@nX z$$_bsr}hVy5T%K4s1(Wjfwdz~^0x2m5lJKV1UhT#kK#C(q@Hc}>@b5VTO$+&)?Vet zzaMaF5a|!r@ceE|YsIyqz|p>bcgQCZhjN{cX^HrLj<%l1W$R7!-OR1bhybqK!IpJn z*r(-ddn*;$4DI3R4MENskAnO=Zal!QlhQ42C{r^qac$l9%m#Kr-^Eh{Yuh#JT>*q? z7P<7q#iBt_Utgc!OZs@}A;4mrHbsjJWa6cvDnw!dBjO_b`_iM^dE93_P!y^bVmp zEO%(3|Eje6^UtMS&h|b{%wG2SOS3e>(C}PK{XInTHsC;yAEDVDY(eEl9!`TcSSJl6 zK)plPF?DbVcgjIpEWGO9%kq|;`+UO+c^4HKwqOfYumTK?IouP2Hn+QI1|Rh~3Wx}} z>#vKfg$29K6ixAI-E}IY^W+7ag7OdCH()IeKU3S3R_O-;%I@`^p>O`IdPus_2pYKJ*P0BVtY!OO+!EYRy&&Q&@0znn_Mn_JQDmo z(9AUkMh~O|l(>fF+Uu=f=1}$0kKwKGBzSrfOvDT&582Y>CHZEb=40LuDBd?|Zk~#i z5N37@_#7?E{8lVV3IRL=#h8`0F58Z72IA>B{*?fdJaI)6RQJu!(YFn7^KCO@06J4j zJbink1-t#Xik_cW(J;PXwq~sil%@9T?x}dMMNd2H--$ew1hKh% zii(mqDHqrmBT^W2g-7X7bvd?8*7j}IL*lLu%aL%yEs9#a4HPGP;$Vt3@+iniN{582 zN@yJZK3dCG0a^X-)7%cM?ajm`#;x2jBP>vgd-?8|losk!qo^eb^1g(oQR_I0fY58R zfTeuAfhdnZj~uggQ(Kqeb*ORbWm>2or9wh`-79G?B&jJN3lF z38PjJcp#BtMfM#tYW~g&oNgrH#ow%8##1O+LDnJmUmu+$SP}Y_70h?%M9GE0P%rLQ zV3PxBIE1aBgTm6asujqV8SP?^^Zff7BtX8<)`mG>AM4=-7<5;gVPrc>@R^keifEwfNmYieZS;M(`h(S`d^52~(XWG7 zbt{-xWzv3*ilEj5k3~R$TKfs2Y{+3Snf-~6w&D+qUsHJN{i@fcnuglJc%@&mS3rzY!@ z^K&ZKX|0&=@d{Qq#Xc0@VAGZ-g<#c8%h~KsJac*vec#b?*Zs2B!p368*kV z9=VEj>84;26|eNdQiN5X(elMn?RYli#g9Yj+}ukrX=a;+_T`|C$uMO?JTR3S=OqZr z_MQi#KL`am|KP^ON@KmYQ)K2n>V+&sXKMtq?*1}8QBH8n z79x1BW5h1N`|fX_K7IFxXZ)}3{`OKQ>{10}y!*SLqyas3tcE*=dH3r=;O>_$RNws- z4(*kw$-cYqe(x|-H!;1=yI+5N|Ih4xy_)j0`-QFAcfaIudH0WY36BTk(C%$s;6N)5 zzkaj%xASUsqQ?P)C+0mq8T6=@NA8d?s&3q%=lm(AamLFc+Y>|QIrDhw4vfGOz}jic zc%eXB_xC*fd#p+ftnFdAVECHDCO&(3oRRzIOkPP%W6lP-a?OLL_dP!OHUg?7#tR;? z)sylv#4D5gQ)bN|BDVLnJ^4XJP=j3g+kk{b5C)0MLNMeOaLmis_SiEPe|`O&A-Xw! z4*X_8?(P6>nQLnWZGy3~+}~!d4o!76-tO%#gS8()1K~mSa7ZPWakni7I~zg?7L_m7=&D( zn>;5)(H(XZhcilq_?aI(L!$XHm7`J)2V5I{f`N|3J04~8DoFc>&0LI~E5)cy$!wU& zGfM#?dAw}kj-?N#aU5@%^4Y?L^Xw}m>vuevM!i%Y13arj7HH7$#$p*Y-6$@xq?>y$ z{oWL*I0BkfD%ItC9X^kurXl~}#o8!3RGMil?lsjmrf*O@TiRarQD*Kva6OqThHQK6 z4cPO2Y~u`%HwaBn1BOy&lr6g*bJqF#Jh*j7(i>)3PtsUH;bdqV;W-sGw$df0=@W_D zT*RK9gc_@Dl=v@{KrwfG6#g^X{nfheY8)ks=A7&DiI&gl?c8Vt`a+*?w`dM#Z`?kt zB3c@?k#lnv`i_C{0U=LVl4!RGVjn`-9w2KTUq}o)`s>oe6C2)S%A3gpplM5mol*41 zB1w!g;FFWZ>lqNsd@C%nb=luv8TZyABtKUc6_HZ4-r`MaqL*SI6?1$i9W0|-^;DVrPZr>_Cc5){Q*s1WD|HB2V3L^?=s_wK#c)G)1KHf`PN9WHO|Mcm{^ zP-*$gTO75?(eEB0SI($Qq%G83Nm){RYFt7ib5tLvAj`Atr zj_N@go&Tf}I0i)@^S^Ecj^&U!^JgRQ_HDhjJw0;QI-g;5`Ikme%;P5`Ai)W)^ZaW@ zFc_H&lN5Onf_Kip%Lc5~cw+-nF_fLzPhhu!>$4V$!@H?0>And$9*<2hXY^j@(7&f! z^e5kGS}CrUJm_EOkh$;M(s4YKQx=gOG&urr#}I2+b-&+l3BTWxqmIZFAMk_8W)eE# z+7n;hglzpK?*mo`p`$LL6lpb4z7pzw8kv=_&jwaaR*>kc2-fu6R8gKYaVdZlA!cP~ImM3hw`~HbzayZ2z}A+gpjd3Z1OWCGch`QeBzJ|H3*m(0Hk#V5jfgSBd3teZcKAj;z2A{~V2d0p%yRE?9!8&Xq zAFC@inF^$4mqF*FY)Ts8qrzE9HBB5D)ryjar1*g~LW!y+c{(b%v2rAz1GT`0wWH0F z0`s&}M;65*OHWUWXO~6N%M9jGE!eYrJX=Wx13|rb)S*q}zk9!JSKJiwAb*yW0M~NU z{4H_N>QZ5`f9OYO=?Yt1Xbo#sAs^Dk8bgpW6b4_3aK zmiV$IycTQk=*ICtF;>5+0?6*anmWq3r0N_GoDhVB5qRa}>q~I1Np$nKEo!j=T4#%U^=-Ieb_Roa(pli8 zG>WKWbMoZ5{)a2N9qwh+p&vCt3ai3R%b*1=>jZYyT#vg6b1lX|?`>%w#I8Yx*-}dl z++pe`=A-UWyt1M_vf_;h)~qlUcaZ?M zXM5F9Xz@^JTQn=4b&RU`Ia&0eERFyvR$kZ5Gq2WdsH;_90K<)Tljd_bKT5JoMdF}O z*mb(6&`3xEE4>Fqc(&aRN3L5_y|R6J>+-RmjZl`>3_if~uw5q}Qvz8qe_oQlpk^|9 zp1&)9)~o_~+fqwSCCw|{P9+raNX&!O`eTq$l01QsW&i+z zGfu%VQyAWTIV1V%l1lB`PJDpB#33y@FBlrfzn{cw;8{q~v==6W1)PtpF=_$g(TXv9 z0v&=6fh@gf*VyWMwNHwQ)N8Fz0A+U4i%1d;w?c2DYsFH` zyBtJo2zF7rB#6Mo6NJO&l|u;wwSa~mQ0Yw>u7VcBGqN6wt8M}EWykPppdm24IvxQ} zG<`g*OYPh=QqHSEU3YvIZUHr8-_Qa!YgjySZNnbY=yVFKMmmIM#icalNOw*QJaAv{ z`x&_&-*;GD!twKN=WScTGQ6&6=jAuodEI>#EkM#mneC<&XGtRysgFPpgy;8}3Mv`W zE%QSE_O9NSjGXSKZM=T;U_p(a<+*P0}SaGT0F3hH&u01yP+X2hGQ{00-u^5Yn9Frh*NGa)*B>1 zAB8{9;16$|p?7659kx}T*&_B9NaFSqH_B%7(0{%4uloScZYc%En$63Kr8NQ zaTjoL@|YH}k)&DAx>Jq^?iBI>+}TXs^xk8RHt^b`;0a+?1m=*M5oxu16NDDR%y8t1 zxE14>y_4~X$xbwyEa3t?yYd)m`a213o)#i|pRLVDjE?}g6X>1$uQP0phoABD&;wnZ zWtdbH;;ecJAUb(Xcgv|1c0UHRc{F;>ki1kMCzbIB*-I->h%a@1ki$^IW!QVc=_)8$ zI;#M4O7LEQS*~sY%O?e%-@>2Dkh3I!cX05^1x8MlnIXLP>Q=Bc_HW#sNjTTg z18Zk359XHEKDmI5k-n9S7u-KVG_D4^QFoKjx}m6c|gmyziAk=y%!mX{eov=5Y64FRqoX4dVco&;NQaUc-w1UWafVHT-=&yM9cRI(`(mvpW09)&DZ{8fy zCb@GvftZJQXliuD5fK$rkplJtY9ghNbTeTN&z$6?jONldf3wlDo0|}G5vQ%KqSKc9 z%=RKan@F+`13Di~kO%QPW-r>VD&t?+R)b0#^^OitPCgOH*=ewsVT9@cz+yAQ0VA(* zSiv$>x0fAHm(QMAUXikVI-)H?geyocImbeiSa2<^3G7db=#$v3vGe7T1Y}(pBr80k zNwOhFYaF>Nm%Vnt-|sC*sw|i3{zpH+vI4IRoJ{P(h!+pQj|fc0i@)J%t(w>?f?A%K|_R zSPmSbXM?fyU2mBrht+AM0WSDqnWp?D>GVW`P%-TfNJRhW@ zHD7PS-8Vy+?w>YKjNnAcjihy}FuEDcpETkX@n?leFYnA1Z#VKEl8gZdn1*PP4~{2g z3GG+Q96O>W2wQ|YB$I%pyi$%mNUfeGfRY?H81Obt#YZ3cU? zb|05M8C}PpXEK_ad|ju)HB0+KtyC$g5ThB=6*FfV;qeepDNkr_PpH5h;uGaTrcXL@ z1yLkAkFVwD3TOD2Y~EUtD%`znE=r&>~*zI!Qh&|GFq&=p;hgT1i?y~4#TL7&h(zC#+R z8(4y_`0kc4!;awCj8`=6sDUN4GZZZ0vztnJ9V?|6j1O-n)yD{abaZjd%rS6^D(Ua> zN#1DS%s_vz+OL5K#@4YJ&k-_Xun;mZRMwgTK!K4pgz!p17G)0!d82>>-xDlnDZT4@ z?{g2E0JoG@np*$_h+uh#$c8$YvZrjTRVBqJ`W{E6FbYyr*az9p4JM~_XiWR-?b{08 zjDKD&h+M8{0oSv>TS;h69^^v{u&61tdw3Uxksf_6;v00Dd0+xCcA+L92g;Cvg8-RN zkoodgoW32JKxAbCDD1Nd6gmjxp$x#MaeB#?rZIi5ZZeK{juRe38)zf5cQz0>Rx!d* z3y*^2oT{*lBu_xpu?!rdW1+PN8vwwDPhd0~kiC)O4zqz-EUeISvN!Z|l;9fG2A1+R z{lM5eu0XL`w#G}Fx1V?$QJshhgw@{~fYfi?0NO73g}`XiB_s9?c6n)(gCY2= z_;dcuPlR~ble}{)bEePrs5J|lW2gK($CO7ZnADp_e zD;(jK!~!1qx^Iqvur7>97#so9H@NUWv;aH;W*fGAJ_6V;-y8w&7SOL9yyUMf;N}d- zhutqN0MCG5TfiTl0m0V|&H&p}76jGD;>t-$3;RD|0lu0^2&2|ZQYyTBy~-Ri_~fib z@e|6vqL@*sAo|Rq6n5JTZu=Kavd%v9DwTn)|4pN?YBO1FIR$!ie2?W^WLomN&l0i2 zra+!U$r98(NwxlSA7-dru4ai|R7TM4>3OPFixvajxq1#@s(C(wCsKe1ZbVNAb5OE5 zPK%IDWK`B1G<+MFpuj{>5hmAi^%Tp%Z4Mx*E!v}BBew*udQaCx@AuN{an?i`C`4`}HW1wICo4SwpK&Vko@Ky$QWbbI7=?Ac#z>F7}jU=OJxeVbpHzv}IEkQd$fWb*-A3f!ls`9=8K*pQxmZ>Amye{Ydh7W zs%OAj9ZNpU73o!w6ZGvA5pQPxtD1;ZO-nZsS%STP-O)3vevH5m5)6s?2qV5dmph|s z@ZB+TKiJrgk-I`MW3t;Z(lJU6F&*1`bxlHCr^iS~0)I@T9U|uA18Vl}7%8{!bIY`u zNC9V!1mYCk;30xrg=j_kA>zl(;1JOxgbtA~2(`v$Bpf`^M9w#IfT4*rBk@418DA%I zuBS+NS{B6iD0W~X@`*kj1#C}a6JfF$95v^bOMCYFw@1~dO7Xb%D}zGWy>UAfapk!! zR}u=A^8(I!Q2B3cA=unC<%jddLfREuqp|@`%jJkvv5*M^EnjmFq+l*g50R@3-!J1p zOV1Gd$Wa{$cor_&ics9QhUE`7B8Ldt2!NfMjYt?u$4GJ7lCh1bm2?~V9G7ns61gbJ z+~Fb7lT@5NkseM0!Ypj#E9{T} zu1YX!jZs`lQ<)|WF*&=LIK@%ldi7fe7&3n{MlTXA{fMIXAl8w4;cMryXZ04Y|I4ju z(p5ucZeLpnCb{dt@CMeG<~f}h_mn)jNI=kpemv}11FtWRb(6Q^Q-#}ttdi7J6prEE zYMxt43Q+1H&2@s4HbVaXw2`Do06O}6pP%SfFrQ!VMOk$RSFa{5Po=fJkskWMhfxpM zXh3Q|F_MWfcszXkC_RiqU6y6c_75D*N<4gNjMW!jPt5)S+2-BrAt6 zwVU(BX^IE;lh-u8%5_%Ox7WOG^FaZsWHJDoyXVXsQR}K0TX9UF@#ZIjYn_)mQ*%8z zZ&oK_Xa7l>_Atm!<41`Ilv)HyJgko!M>AMn@p?qwoDgC_vF>&tuXkKZ$5U|t!bAuO zffqRJB6c)y!>H$Bq^`651J7yY+e|B4(=-srsGMp)85p%x={T)YIN3GQH? zrHzw#y2UAuP06}%gOE$Cl6)V-{$t8z=$hvA!tAo`jxgI^&Jf%Eyz*i7urX-Yzv=1%v&5m1;R52yncC~xqoQ=ZWOL3S1jq?07yW$zr&4Som5Ei5w@BtLev`J zoUMvHB3DY5j<+BMp8NxRII+XQ>l;m;#3k2(+tF2MhAD^JjHf%DmAX-$LLfQ$3Gl$L zkyx+T0W+(Of|Ym`g?GiU#sjX2dmr&==3gkinYIMGg$#LZywl#VNdt;>MVzr??lU+8 z$(8XL#vD;ep_y5qXlQ_~23#>%fhqz$`vPtVGIoV>D6E_E`Iswm67GRZYRoyHwT`1G}T#cU@fn` zg1@nWSa-O!fm~ZN+qJ66)2@8O&S`zPaxHm@=sz@qGH4EPPJ_96y18`6_r@*dCQuFFSAJm7J@^AR;3gow5^w`${BTB*>OCR1nm}OqW99{p z)p%5N3E;OgMJ(Oh&>CoCFQpU@fDnFw@6Rx(^1$VsqkSZnuOVXQWLXFaEq9)7B+k+euDfE-yhea1rWO*7%QW^&Xp9njLMkUvfWk|S1lz@0Onb-YvU|XBIC;N4 z`hCH^CBi4DPr)%cx2Wbe5$Y`;rXl5`CwC`PUzFspxl)d#j0&Haa9}(MIC4uYMDc1! zf_=Tx`i`ELU9Zu&GQ_D1!xC+_msQgaq9Qs=C+;RusbymB*S2s%);O3#P1-)TaO)3B z@MW@>s1TNvqllyJ*%nIbk=#IKqAj4WHs+ZEg-{u}Roi6G8DP?V8t1_lB7+~bFC$ba zcfz?rz^^0dQA%ckK6_{jz@{*?1&EB8pfv6M-`E0Xdf|OzdfVM?#Qjn7^$u-8B$DkI zr?TGA76fQ=3~a$kTR%_L=yyiO(3UJ1!}cgj<#=__yB#_P*&K666RsVHHZ%snnf=Nb zwqckz{QbylcjFkg9*FWZJkLp+WAI+x$T7hE42?k>1(+#+J|x$Nj=^Uh*fHRG@a7sd z^!M%<#Tbsp;m(f1U$Zel7|y6+HWtRUMe?7)^)hUxY7qxE^`T>cAxm!S$mRzMNPO)$ zO0@-;TS>N{iNc#L0OR?<7ThtYEd=_xfh~l2X9h=cipXSZNmTGRwg42BrloFsW3PHh zd;h+HEfm43*%%U$m?e_0rOq=#cL30AY708m47RY_^$q5Kcs(Gy;q@403n)Izd-=u| zLNv}P{=gQtvCsXxB|S6wV;Ur5MTe=7LM&}eMM9-+kbT0ZTwLfn0-9V zjOA!i&^EVvM@00>t*H+K76o}4)T3a8n*#Xu&be>jr}s)T9=sNjpF^!dO4*7sBOC+w z^)b7<>1I#B@}dNLTF}zXC(Uwo@)7(ZxQEsb@}>+`m{P-+;*JEthG|XR3}NP#a~gg? z35G{;5>w39L7)Ep0zZ(=+xuH&PyB@N{E$M7>Ejymf-sO=4M0*t1v3TdP?%&0)*w;R ztu-i)Hqky!SeN3ngihLlDIBj-Nis+i=@VyD2u!sRq83^dU3Kpr1GTt>Y zsy`2wFl_VAUK76}PFJ4B_sj#_dv*ghNQwY7%)zoVq( zTup||R`UEQD?aPeCbnQ?3vWhXp!W37)7;k<%F&cMVkcry3@6SHkm}Owky|LBV!PHe z2ZqGM2vdBz@-WYzxhuGRZU z$^izA!g?qaI6zsv`t%CGuKT9m)Yds?E}1-(9|%S}Wd;PaQQ4 zyc?}=sMDw(H1Z&@TE%Iel*dzlZxxDAmpZ?Br_;Q{X*}85QFG6Y{z2i&e!|O%6@D>Bw=vr|A?bOZ6{#s!e znT4+Md6`+Tvq)xf;Z_?s3$_YLT-@j1ScNzXunK>D*(F|`WP7{Lug75pxm1FTaRily z3kb2otngA>ycJ~O@%S_jFW+{@Kv%yTS`ySENLL0}n41w~RFJA~cjvpQ8JL~9nYG9F zW1Ij28w^czTSDoHwjKNlJI>n&Ag&m z3NSO#R!BV=0SjCmEyxcS(2CDmK$FFI2n6Ge+OH<;c<}?jkr*q(wDNm8{Q{vF~`P;Y_pUj>49#}DnuZE}4m{XWPPfhT| zDNOI*jFT6eVSdt^8a^A~j2RswsZYxAWuCI5&cSB)v#tI9N?#uglW+Cz{oA;|jH@j> zwPRF+4P37&0$Ur}Hk^3QLdS6qSLP&)L5m0-s(1qi)%{y9?|r1V+k1JvJMt~a$yC$^ZHt_34Z5kBl$HAw+iV1C146M z5l}cppB_8|`0ajWa*t#H>B{)|Ysq69e7hfsOocSxspQZq5eYh(>R^-apTPb&UkA*1 zD4U=HNj0Ty3TJBI;Z{DNcz{379@iCWM+j!9@H`;u5k%fOwg^HH z4koq=b#uZAk$ye&&(sBd*2`zG!Vc2T?B`XIjyBsiI?VAHXwJl_XiEHlPVo0BP?Z%xRqxcfU{vTvZ%Es zPQ}TkI8mfTY_THVa&#Mzs~-suBbNJCN@{XhxJ5s02|TS#Dj1I5*Jmy(17ner!o&EC zn}B@&t$VG2t8msOhBVgrB-$^gtx5er>g@39Ag!2}6y$v^r;sva?#1=b-&w%%u};B6 zJWLc!Nh+#h7=)uxe>oA6s)H|!YZnq8gzuGYN_m_77a1&v#chtS^kfgJdR*`?`f!T( zbdF*=cf+}EDn0QGJsqCRy+>%4G&@O0ck%08!SlNeJ+*gx_7n@`~Ks=mfLC^ zn~cs$2{8BkD1Tx(AEx={i40D^%jEJG(~j}9qhO@-S|3j6yncJBkC7nt8%6)XcSOAg zTO-L2i|nups14RIKdNWCH9*-C#eB>faQ>$F=K1`8_tpSeBcD7xq0^$E!-={7#2QBJ zud+C(NWCfE!!tVo6ce7T0fqq48p@qD0QK$A8gQVTApeX_sn!sRW>P1C`4>WLy;%dx zKqMt&(i}(S6x)gK)}U%N?Rn8@c-6-R7z>Vd{>mEKJ)8xsVgK6Jr|3xjvROU+NZvog+{bnQP(zymN zb{DO7U+d3>94@EdODb{&IRTtnbiJd2bH9mk^PDzSxGqjI zut}84a|vVIIyba>fnBD?wBbH3(C@Zp`(d$GfUIIv+^UAY$kQ?Of+*`N7g^*#JXr`3 zEs|7gmI0a^+gd2A z;{}IhgWO9?+JXeQP8xBbB?voW$t6x%IPRR07DJ>Am=bn`X>RaH=fEA3h)M!ukAA_; zl?qG@u%^lO3W^P|fJghwNV;fm(LTI`t8jG)-M!+&*UKZg+%029O-^=|LANt<(qwq|?aI$omE+B-~0C0!_3hWmXgW zDUX2)`yKAFGQ@PYL1z0rg>iWI1DhjGAACJXonJUr6KI2(?|3C2Ii07Z_L~@&;7JUw zmi0-v1QJ?83M!NxJLjbvJsKXc z!5i1zB)siV9(I(7G~<=OQQ`2DNlp$~Htj4#VB=nUXF?4>#!#izI}F>hsP zYe?*HkO-m(pAJWAJT9X8!-sYmmmc}|%`bZt(G$O51^Xi|!mU6_hWJX=3c_4R^%O0Ipz0aCYkJVar3!K2K(p}X=sX*bo$+=S!{Njs01KQEl|mv>98z5z?nxLRhq4p5 ze=m1?4&TQv@te@i5blQI$qOGG^9yl>m78mvX{Nt_;mhQ;N$hV_F=qC>Bw@l^k}Jp@ zShL)UqDLq_^nwA_<43&<2)x|{wohKXoo}PY73yESIynl9_n#8l=X0qA4+#$KGc`N3CBD_lq501K;S!{jHFZmy+;0Glz&lXHW`X<7oAB*dXXeW{sZEodpPiRMD5s#^PJJ}H9L@!Em#$x2VeIegAt zF*(O2FuWg0)wy!s3U_Dyhtgfs{Mop3z(OSXO;T7cwa|a!x1Pt(iB~aCtq3$v&QMH~ zd`z5IKKY95zTGiV(^eM^M_N8VQ*@}r8NBxM*uReD4Mdtqc#4IM1=6R6?#VlrLo3#> zO7IvKDxmJpJuyUkBK=(s)L?qcne4C|z}&$7USS>S{fIuxrJ*!eaWtPAt`9LE9E=d= zBMI*@ka>!n>NuJY#S@>PPBN=3Y7M%55Mm*t~Luers@3J%Ig$9@i8!BtQNTJz?1_nthzk45+GF!z+oGWyyH&a!oNM`dY_92H z73u; zc`*{oluM*ET=t4=B9tZf2^(5TPL;;6)QXH-zvaQ>Xs~Y%{8(wc5 z4w7BKs95PmO{T@eUFsEMj2TGOm2+chT^=BAK$MqP9q4ZfQi^b(+%#onQIAMkOp+p& zk!LyEp>|sInp%@gxl+IH1T&&yRAYJ)(6whQe6kTGTHAz8qX_{aLTf?C~ zWX=)ISQ1qx%aXD@LgHKFkyexKJWAhaSYx2b7kOlF%s}?h(aiubOvuXMW^i;#3?A-8 zkvwymV(aaP{v zrvK8I(T5pu-sqgaj}2jo-|mJ`5|;6-pdXx+q88oNYA=^Fx%|cuig<+JkJgU8WkWbC z3U=O}4WSWgN;7hFg2-1B3m`I#>fS8q%2HCve6n;Tr+NRjH1o~S7}3b5nQRiPOC5MB zr11HgN);5w;6`~HnB?8L!1aG$t@)^3haapph>e*pu%IB63o3 z-oqcHfqtqIB6ptF93vH-o)ZhkW$KVd(Z*&xgv#B=9UKU%gB@&-jE$u&MYjVrF}8z{ ztXE~HfQEvy^srwFXSk!7rY<7RXgNGmZ|%T`YneQsv0KV?(95xu1}ExODkX7Vhgi8m zfl;k&Q8qQsUT|$ky<|qpCBbc?&tzRyM(%O5`(p?7EDr#VXa+u-nPCT$ngKW`ezs@^ za=l;%>Rt;)jq<)FGfCB!d&_J#?0$RUvzx&uH(2IZ=84hhb1N}Bv z7`Vy6t$Ep18=OeM9G`Ooy|>TR4hEk2(GPnL^ki9FE@?%Ub~}E#l=|@Ups>JTT7)80 z{xvLkQ2)wJV7K1#ZH7E@s+cNRn>CQF)Uz;Bax)Jx-zk@h$jfo`8RaBOg2v!RVO)Vk zqxFB`dJYRa4yRO#b?FDnaZh%{5Z2+dNgU}+6BNdLa~Q-B*(7{PMxCT40}-G*Q|PbB zF|ag2kY`+o>?LMbCL9M=e-tVtsidEYgqt{QJ&rMK772MrK`a;Z_QfPA+?~!?atB($ zU<+q?nmSvslYz4g)o#bwuL4?GCGAvwou|6-^do!B@S&N6u1(`N0b|( zY)+NXY70+2zmF{(p$A6IsgEsOPeT|3TW}pL2rVb0kK2uoa`#!B^IE5``FP6^_Nko$ zUWMVL-sZ8qDnsPaJb#rS6%AgxkD@@%K*~SU3->}AUY5uW#(C#DZe4sMeHLyH&D6~{ zc8lSw5WApxJk$d4z6L{45iVGcye|})xD7RCRkW>a{EpF}X8Ol+X79#JSgr%euysOB zEviZtJ9c{!1*Vz$^E|&xzu>wc-V&jjK2CENdyU0VU`h6!T6zQOV>xmzId=zlq#}-7 z+RXyv^fZ7ul(tri*~al5pR84gN3ll163*)xhOKATXW9Ck7zGGcpY-+xPuM&{P^-HQ zqpodP27#Yi!D6IDHx(I-p$P-WqX&F^+DPR%d8xC6@?}>_2RLr2mnMJx?a2cx)lf(5 ziTrW6{h`5_QOp<-NBM;QXWx=CM())e%={M9S zr&QoA!k)jTw>>Y9exB}c!dTC+t^PWH6@4IyG z*UN=8;}mlQeJE$cUcK$w|8BoSIV0}({h7N?|ML7O^{4R7iSD* zXNMVvbDUu=oe)uejmhAk@0v-opeW>fP(HldhA&~;P-P=tSYoEMFLQ@5^)sA9xbRJh z!;tv&;w>k(z08NF7czHeRGG&C@w|k8<=Bxc zuue7810h9U+>VJBFRbT1f0cb}gT{}=PgJcK1^67%RlK&{#+bE>tC`G5BLoS1XhRoN z8NmUzh7hOcz=X-vzH)ASWxQ!8i%s8Hv+b}hg{I@5bhC$cOsP!TPRpzz&;mNlz!;ip zAC&JW1~y{X;@6BX$s!BIsZ>hmQqk{F6i9u&fzKlJG(QzQ%jGpQS5({v zNdcfGNEHq`w<@cQfTOxi1OZbP(LhfOHnCXKvhL6|$W9TmuflkdC*`vx)g<&EK6~zy zaLgTVk&ZX+<+V-Pn^?S3htHJs`x=*Mp2M%t8GyWjR}0sSa&8I z;+_^m=vXX~e~%w)n*<64gg^+^CZdi|>|vLAOycOh4~P>>1EXk5QfZaCQC!1(^*oB;uQomZusmFP32?E@&c<9r18LWAeO%M1wQ?Nj ztJfL88@f`N-8Xa;@RvtZ(=`?cht zU$gtr%}sMJ_1CTdt1sV>H1OPu=Bd|=cL#1tP58KQb)f#ntGU6&D= zczK&GX80$E76_A;*UkEOI|?}kOl--*tqKl}Qa+vqR%@?+Gs3$QRUproGk|i@R-^B6 zsw-h)OalQfLQv{r}}vol9+b*D_Cbl7UaZ6Y}A>n+z@=eg-JU@GW zKRpX5!8J4;5k$k@l)b!JUDr}D_bV&6Z~ z_`rRvoFqrE1D0E&NQ1{M(5}7Ipkqs#@C7aq=9Va)>G=H;d&4L8I9TA%*rNz#X;;{8 z*k)Jh#IKw~E37wPA+k|O(TOVU%!5>Uj+&3Lzer{0HU#4IiAQ^V+?}kTdmJobzkW4d ziSvIH4{+f{{PPLp>NMcNta5uD$HYPtpd{520#z2GEPnyiC%iFF8Shi;(t#yRT}i7X zJ?Z-lAQzb=CYAFjuX_uQDFSeUsDZnz32Q=LJ7IM|JZ^J1TJ8C~@S zv=`csWp65f-AmQBeRMH`V+KyR5S(b{f zSl=XXxVoRXXXyQedSjI7PYAYX2nHvG-G#_&Cl(C}cl@>lkK{58@v|_7jzDtUm!P2l zVf(=QoC2L%J&XFgOtQtpIRP_gQ(ybH_uY6>>b~rG^AN(t-4}qp|JdwRZ!~fy#_viS zgoyup+ijF-#U)R364iwaAFrbGBBMBAZ{f=NuHTMUD}9`x;nSN(!g+$`G{7q-Nx9f4|?f04R${aenp} zoF9iu5l6*5#?6g4CN<^8)m04Q4J|`?Uao}rtn)-w`y@$E4HrHCKmK*;I}z5C*N12O zQiEr;v5sQz&q3sb$J(KK0+l_Taww>w)-B<)_tv-ZnM$`SJJDSg)9vvnR7J6rz#Z2} zp@5I3rVTK1!4HFv2nL~}fYptX2at$z=pm2lLbS5j;t&uaV-s4K@XAHvM|>X`j zOX&bgHkU{YJ-UbnQ0!@Wd&-^Rj+<3i1(bb9P9AAeu?2Z_(mr86$Uf7SChtgm@0!oswhO zAOI!EKk3uW2K_tQ1s?$g0Er^AUaal*JI;>SWQ-QtQmtwba#n}Y3h1+7E%U}6pi07o z+&mCwfHl87stq$$k4@v2P9!lfhxUo(dl_EC(eS-Tp=Z3@FhO1ICqE`pf;p5nVROq& z*Br#h6u_J-Te#H$?i_?#LvRpGUqKA{*jc8Tz1BTlI`*_~i2b&AON`naivNX!SVOBi zDP8?3qXgalz(Gt%YyArc5ei$ALWdrrd|v=-d$0)g5aN$+XJQ@4e;gXb)QNo1AV#Z&2BEzp=k09S z&d?wR9%38z?S}>tJ%m=GL-ufa^@kMB)>>(WI{7eQlIw9{3bluA2>o+h($Uul?Lj_2 zvWJ>akv;6&vl`~qBPQ1ewTQ{?f1E#2|&(pj+@e5Am2n zTzZpk5$ADz?UPI*JfV=R$hn6}r_~2hNR$hCjk#lt=d1DOram5nTWJmus|CZ}f}dWT zP?vv7LU$##Ujn0I`2IY90F@W-L8ckRFtP3=bDyhSlxxzm83W#Pyv@A}PA}MdTd(Ky zf9-h@Rskmx-_dxb5r~v<`Xe47^a`9ayW%;txJ1o{8%U}jUuSC|*9|pvPw94;cq(v! z6eI}`hES$QflRqH)~+BFCexB8D$ZiDd)sS`h13ZNRour32irp0x;Nyl6O&ljHr|(U z>i6SL@bIJRZDP9#pT^}L3?OhrLq6-4{_`~K#jDvRA3Um>`oyi$U<5?`(t{|Z;+3aN zfGsX7pi_E2MB0+bm)Unwz?rl)0rUdp=srBi0M^)4m|g@`AQ|T4SALzFnf*wz{XQ@I z{I$Kc(%N_fcp&P!qBL`%IH8QJh5w$Hjo)Ww6hM9DM@FOlta``tru^Mgl;uV|_o(B{ zcLIU2hr>CFqeQrbYuKK&_wok&fB;$vuR(|lbbvSfO8`7z(#13_Ng$vUK7j z1{+w*bI+ipDHxvh;s=p5F^}so-L=fsI)VsF<1)K($3D0LgY|LN+GL!#EMj>vXE}OCg z%vK__N$WtCpk($Dbj!y_XC|^7Rab?{D8c> z*h!^de|95~*O|U(cyhIeW<=a}u?h~IO@2a`iiw-~=9s7g)$lwWsQLzMd1;?7_CDQxC36Z4Y$FrEgPFC7X%>MWy_!I&-}knfI`!LhW=2#t zW#k8z>72fn7a^zV=Q>*v&iR+xgRAfbtyR^n5ceUfu}jf&GqB@2v;zj9F!=niyFYaC zKyFVE?g}xd%W~-+XzngHJFX?&Ahm+K$Y3K_?tSdCe;RI;{i4HJGBDLWFc2}a6>ofQXMac@<77&5GW{`2?ZJayD@3sD10r^Vp zjaIr_`#llhof{8ZZRLJL@<1Mv)pFCwSE#d;9BmWOLP!EZ!U7xltxhjXKK18_Ox?~? z%)&xIO7c1&Py3{-^|@f-nMXz$8jtrd{S(Wf+I*F>z=s+sndHGe94#O2+zvMBHgO(b z`~2oB(oi;)eoXbrVHJyXi*|3C6R|lZrab=0u+i`&Bsyz?*f;#H)bL@h1>TBjiiCOA z36h3QoM-9HOgvl>)^bwz=tEp==rNc6`Kl+|y#GzOlvo*w&V|Pb8PLnJ$fx} z$T&53b%PpLPaa55rH5GJ#Kts&oIa*m4w^;eVB>}^%hSWe2u*CjtSHb3xy96gYfOUs zO#kS9Nq%7I!MOauh7YeN^9%>!;YSYcIe(@F${;~XvC#@3 zAMugs)E%Lx%OEwQBDP~JWh5{1aw)4M7Xs@Q?4XwXo?QYL2l#y8;>Z)l->n_Ay^7wt zuGa9$^ZUd*%T(-aWg|O)t`=)4^LdhZX8*Eu)yGjN<1vUkh$HAzml`x`UR-v=`&<{XE#!u1!oDVV|fT1sMq z^hovHVS1+>sHq^pVJ1gy%n6@B11vhO>~?|0U;;EB&$SUN7bkl-$i+xhHEfxBTH_Jj z<&!gHO@5!)`a9Z=2hRuz%B)~~{|tLL6;jpn42?{t9@s0gtz!GX6zdx%rI{%sUUTLI zOl0fI9yI%OqMqx{eZhCZ$wVK8r$$MOSk=ip!y(^9q_;{t`Fo|+N)RAM%MW(O|(;l^JO7}P@ZKJWI6jUUl-gi&L}YEsYTfSECGG;cND_@8S%U&)Fn z^pEV_S>z#UW>au`f2@wyiHR-n^LG;kBuC+81}?H-I@KD3@o?cgNofGRPS2bUdd5U^ zy_Sp5{CQqUPIFS)(uC2L9+`96hPz~l&z%ClH-kFJ5pi0=nD4YcQ+>EKQuA1iR*Wl; zU64^eO)bhKH3`mu+7!VC=JF=@u{9T6nfFo@+$*SyTR+k#j0zoz8x0goAtdN+#kq+> zI6e;I$J=?YuEZh3<|69sCk{&D8t2!kv`%+h&s}7IuFOycUh`R)T6Ba-=d&~^ zaeX#MS+KpIA?;H$91wxW}YW*cjnMev)k1Ura^PwJ3BBbOn!CrY3?j=(-lCt z!49_VO$(D-=*+3bEGp+*Ihmk2N?8m~tW*^1T#Q##q!Dsr zy@B#?WK|p#_S-qN`3!}&6%2%uR%oiRXn=o){C@NodRRE$3B3lQAmpyWufQ9*dUqLhhuMPDwbezd3v--Q55ZbT~?D_Sp%4k2A zf9A=fs>#IOJuY`Y06xE-akZ3Go>Bkzr%qg&Hy1c9d}*z&DK zwYlDg&&q6it;Glxm1XQ>!kbkOtj#%>5O{f|y=;zJ)AH7Cx3-TeB*hArwPa~7RPWs6 z<2|dGG|lMk1gp^4N3InxLG5qO_A5Y6S^VH{rla(WPOm&qR>1HYgZ5R++A|z$1$cfo zT>utXJjoVhBoNyiMw5ILbwTwHcAS-8tN>Q5``zmorK6s7ohR+>75kT2!~f#NqN07C zS>p0p21#a4gWLBuB*5pKo6SXDl5vWek7!_LIfCRH%iL|}lX5+G)g&CMzkb5n0I7jI zS3{~^BdfXW@mwGjiAs5sgH)%6p%nFAUvLx_YM4l+e`&v=bi-reM{HlYdeMz~C&Gxmk*~)VO$D7gd zz1)`NGUYOi2jo0pA;eI1f1vt6xQ%WY+x|7b4se3>j9kbRH5l283wy=^2uPTy8cZNj z`nEQK9~Z>HpxUFf+Yp%J8JvF7q#~GDQs(68EoQN1rn|L`-Ht(dSQdmL^z5i`NPraFjjU?w{yrOjwtoV zrZ}YJ73(^fdk!}7jS(e0< z$6$bLsiXvEzJp*5LZqAeHc%ueigouMJPj}KVLMPzlc(B6UibPR9yY`a%%uo)Y`XEH z`W{zWSrd%_dz?-qV67!;wlVV^%j?GH2el7Mb)v)MEKP^WS4naWDP~F0m9QqYiLOFPg?z7SwnqlCumjy zbX}~W57l*RIM=VGyjcU^?U=(l==QlrF9M07O)TSAg z34bP3Q)^Qk{rPfS$Jfuf3itcDzt6Z-j=;y69ho7}(6B|AYzH;WOV|6S}bD0X~V+(VuB*h_yVJFFcKAFvwi2p%0d_?o!kaY_+q` zf3Rlv!-U-$`uFh@Vck!uOaq6G4N3a22qzgdTFdCEI7Z6Wpyx}$Xf`!pXd>>n*08=} zQc+vUtzimk9|8&uo}vEF8DNIqA!j~b%&p<%?_~HhH$LIB7c4a0yHI_na=3s2uJ%d_9w;si)3~d1pkCG!b zE61+m7{yTUuCxsJ8}|&rZZ8RRvxaU9%^JWnOu%2vI;~MXni+_5tl9cs68UvoxX!QF zAc?2=nM#X?HHzc=%Ce2iB_zAbX55nf{yJR&84pi;vn!F$3qW5>*^~Uiw0^rZB=ng4 zXm1-j9nGUaZLU!=9_0|2-ApsWe0?GZm9VRmnx`2;3L|*EBGtXzU;V^24z%PO-qb;) z#n$0yZFU-ps664X&4OM=mEP(n?etVE5uVm1yt-OKYj{8fNshP@F;<~f&(XPRe3aQe z4#$se;ip(tsw}DJvtEMa9Hj>rS%cvIFv?AxqXj)*zk!wY3G3tAD6p&~v} zJ1KlJD>YjL=U`L~M#W2cT2>uW0z{_1NtGM2 z7oM-c-kh8;wz`)i{iDbvQ9TL{_XMXwyQ2jPlUq~Lnx$UgCnnkhK{Ai^_7g4GK?Tyh zp_;hsN-ZVk^kfKkpZlJ}ukkX987edPSqq>6^!_ zHN7Mle%XOeigSv)`gZ>$ko)x}Fu0v{2pG8mnV5(=sECyI_zCn}xDwAN z8P`g9dQ}%@&~26*-Rc||cnvZTf$)?*`^u3P4m)p69}uCapDR7JH3?09uiA ze>dpf0o6JGy4($sqVbfw0g3!DV(NC8%7H_cKv?%;G^1}r;=TbIh3iEGlxMvr6jQ6O z>s(2AGOT4zsuxl9CHLJiE-bnh_@uA%^S?K1kyT|%h3D;0+Uq!>qbHmn30zNnk2^ux zyj#G>0d24R7CK*dI8Oo9HCY2a>KKbBAk}!Tj7468MsX*e1h%mp7fxUSrMP!C@g&k1 zit2vclty5|M(Sm97;Z~~K;igmJa5v>_gX2OpYjDna>Psy$vx!rRD7XZ5`mBKf@L1& zYJU)2YeD@A$~~)G4MEInVbJEJ_q%A24a49q#vM;HcSKI zj)Fl*Wc26~_{dIWSulte=b}NV``SW^N~?(mQJOpJ2EnnF_i2U(!6%=d94)|f?;pEN z1OLlYZcKDY1g25iYl;R@M!_WWjXoGeq2`6>TCl&-AiPoMuq&yaN+GUS=V=31gE+v` zu@VqtCQ`MZ3=9oIZh)d^J`vC$N;8O7`SXW1TR+Cv6fD9U6lxK231AVrrpt|u2a7oO zKXnlakk#Jb9RgP4j5yRupt0m4LbK~%xd=Z$vA4#Evq>>BlV8C4b3D~O7@p1n{BK;u zj7G|eAgmRe!V}6M_!b8)0!+9JEh60EtBar?;MkB++-%}=o7L(4NSfq2EP7(~UUJy?X+SlYZ39tQ~1;ip3h4BuQ^tLx^k6D=%-3(wM*Y4o0i zQF*6u?}{oyR8Z%(wsuuvQ+z{OJ*W_&E){`|FfBB4mg026an0D{qywKeN1Rt>bJiL5 zr|*XDWn7^=+8Tp-!6C~ea@&(^RnkIZEi!7hAZ>@(L|uRjURTh|dHDl~bTIM_VTx=}G9bVpH!+vm z4#K{4U6Boxuyi6(K=9CV1CSKa5te2kS=zJPpX`eQFhFiw@J4AH3x1PXZc&N7n?yW#~5DUmM8*fjyq~RR@auIMSVVp{-%1lOzpKNRG+U4s+wn81WRbKkv#_Ag^AX{2J-H=_)JSAK&-h*V^>_JkBlPe z-ic!+4TW@cTi^Bj_4PW;k6Gam??SD^V{1LMaDdhSG0ke8Y$wWpW^mPLc>C62y!svbmz2^uYN9xZP6u@Xr#N+!{^#5iCytWxQsm%tOSK8F@umQ0r+X zQq3T;l+pL4nONGGyrNhAUt9zFeiluLB(oeHpPviBBcLU*{WUzFXa=u@FbOA5Aq>wg z0<=SoYLqY=3xlOq6q_(&j2E@;!20amMkH3 zLo@RHSu$~83DmvKNb5-H;wKl(lDt|1qtlrpffAw9uJHs8PynrPqIK2ZySmIp3YCC- z!+&4?$~F z%r*ABLP{i-(0cGz+GkEL3~YI;7BU4{;`YE#pkWAfx6Kql-A+tl9)7=?LL|o{r}1P8 zj31-psGGudd;m#6w!f`!MN*|U^0q5ubdvnz+(ymotZXqKF5hs+k;gdAJ4;@%6?S6btp?M~TjGg&B1fXGkKRMDE~4 zTj6Nuh9y3X<0Y`}ZJ(XS46jR`xmGzU;!aGC8bXL4`vQOZ~Pwf zr^XNqf(lOVA>YXP!*b7kzl-K|G^Wb7UHsnIV zps*177pyP3YbVUNFpX$)uclQnmBgd{i&BpC8ebf|(1S_N@a^o`P1~gQBiwECWzSBe z9^#)c;6nUmqIJqCcVHGrTX zAYSh+VbtvSg(aM;mg3P z0xFcVyWd-aqz?7<2~Q(i!isp|nBAx)#Ez`+(Bt3KH4g}BD9!Q}^D~nj&`)--g!OBE z<+mt0zF1r@7pLgAbtSxPUXFFgPEw`;z zBO%Uqa;$F^r)npazPO)rNI)%%0<^&`rB~8^XO&`xr%Xxh1kKag77}E;N;4BVYZfPK znWl!X>STCOveytcByxvwmmPYUOXFEC4%up3N{*-g9eSb4ajw4p`#Q1wHkn`!7c!GX z7X?!cZfD*{EVub_*ABcdhwsSmU0(qY;S^}4*D7@yZJzw1CzaRigjvHZu31T4{jHZ; zTJPI}f&dBT8qp_zxdILaa#ZgV`>=)?Nn5C+2S~Dxx?!$ffxT{x1cyx`YSi7El#H&N zvVf6XU(5DJD#@-}WJJJi;fl83>KWObGT$CtOn$hv!Re#kiCu3Waj1y2}5 zBl!<^Ch#+inngC~>=5P2H`&mOA(~;30`XY%3z<|Bf}&)TsfeWTe3s#Bv8%nMvt@X7 zjI+X;suy*|D%YM603L|j11YfLb_TZ-Xf;Hu{R-2sp=QBc;Y_2(L=G@K)a_uO8oBDb zbZ0A3_B+#kCc6e`g+}KWKBqwdPmMknj!V*RpaHFYer*Dm{<oA_diL@jk=Dw7B?0k*AiB;+-i6dLk+)=O5Sd-@>=a1gwRG{1C+KKJQ<0_WWcuj zVzhP=#@p;kZCOQg=tu4Ew==EX=fT^q! zl%LASTp41{Jn4uC_^C5dg(5|Z6F}%MAZk19kS)M&r`Wy*OIY6WhJht)=2GP~<9`x@ zCiP=sFLqnX_lK8e~ZXoG2>c^;8r5?IieJ879~|9i-nJT`~MvyxSA z){kVOZO%HGmbw-yCD}$71Jf;fChUE_R#T~RDU>2j^tRWV<3D+9w7VXzMKsShM{W{lI4oRq4dh}U( zMd4^D=);eG)vGPiPQ(nlcoT)eKup2O8FX?`KrlG!P3wA2Mvaao$`%Tl75Fb4W~U`N zAP!c%D2mw=XR$nJO2b+StVLDZMES??4Jx{_2nR!Kis;Z5$okWn3_fE(D*^BlZD&Xh z;eXBiM2#S-K*OVj0DclB^7%0BUKN%>BtEVjhlp7 z7lOr-?$oP(pJ!u98B~QKJ@+Z?G|B|Ug&~_wxOtBB(@-tz-P>cGAz_BREZ)vUnVbyh zoaR=~ZVd7Z=Xe2Wbc@ZEIh=Vb^MS^9beg!D$|5EnCOwq93yRmr*Wgf)wWGL+rUH+!`Py(+Hw}hSGCMMd6ni`B{2*)m%y-mu96&LBh)Ro2 zJ#S@Yk~gIUM8Xar=S)|}q;WiS-8vtU?*MiZGh}g10k6L8eH_DV)}xV{#i46>Gt%0X<8w zimCA(*r2k+$dJa+;L6?{?3`_w|MdO9 zLd;a0MI^xc5JsZJWCTC&4KA-z!-UJNn6in5w6pK($$5)yiU&{ZpLmczQhH(m(_3c9 zcSwy$Oy)y1!yAp0Y&kiq z{6yq}4BJ4W8V$Tla>B}Mr5*AErIMUrx5i0VSQMiU#Ua`AX`A-65b5|487Od6-Xu}+ zrroE^_Oyux83Y}1DktY1q6AIQ-ggtDlHaojziXIh*Q{#W<+D@Dfm?^eFv)@>2ZBI# z#!_cqhkhFAN?#3_((Q3te{^z$tV2|+ZqtZc>i|!wC#`Ff6hGXGo^E0t2SlC}U&IN! z+?a!+u~~<{zJ{kOZnWtihrd^#gZcuApFkv)XEPY#eA-4hH?s|WXjiulgk_WG=jfkl zcbSMn%0X-zTgN6@IAlWH$aZ3;(LT_mwaqjN#Memy;A+<}E|PJlfMdXjZtJG8)e30) z2B2qf(||;{_`d%9f88`NVc#sHEnA5Cy5CIe&?4mt@3Pq0ZkA!jvw~&p2Ge-z&Q(|j zDn<}f?PgcE?ZfsozAt}IB`0Q-NeyJcV$1d1w!247N!Cc^CTi+E<*9&BP*3zSQ11q? z(ljE?mZuH*Wuetj)uRKn=tr{7oCP-_0*#Vye2 z8J&t5v-mS1cLSsH8i28%5uEQcJqi~b!F2^Yko@}14kDc9Pwjx#JrNVV+kwMm-|Zl2 zK|@*df7%Y(DfSbx=>$GvO8h^y1FA#~?4X2mcak#b)B!w6_47ZogV8?xAF%^m&;P;> z>NLdp#wx=FZfq23mQZi=uwYTMg42R_)=1R3zCPAR9+QDxt%3%^PEfwS1?}~ICgkUG zwbW+h25-zsrV!4{_d!mW<#-kaPt7+yIqp?ZfR&7lUcVvCQCdgBm-_mGWt;lrp*cMx5V;B{UU4U9u>(3Av_l=H4t+Su#e9c@<=jI5ylZUJ()rCWd;rf0VR?9*|x16Fec_5or0ZUNWwDs-!* zvQp`qmm{^g<<=O4zZe@n|XJCkd+ycbOLuRfc7}=M(eS^5a9ggNq9oBy$>43)u}A;u^bh^#IXTgAV#xt5pV8 zuMETqH!ZK%GI&;|gS-31JG6jNk?Xqp zZjp6ZzQdX3Wp*Z%NJt$mW3NNH2xh+LFqm}&z)SYPe(KXWN%tlMTwd_rR89%iR&L?o z4$q4&+w1F7l}+mT+#&yvskivs%nFe|2M zPqSSNgks(n?t{E>n%G0NfaPp|e=dVdmWSFqz1bkH8i3$_V(Mo? z5UinPvBSjcO@K}3Al;}=Cda0WZ-5DJHisLYeW`fCUS3`G+LMYBPU4<*_-x(h|4Yu_ zAL-gJ5+w{}i$E!5;9nt1;->ltf5pUU5K~5DxL%EcR?0ylM=42pk9vwOiX{Z$+^-x(*rcn=!P%?mROw z(8MTti`@h<74KzKJ7`L7L@u~q1-zau{z=PZ*69~qx+LtY10OChWFzopGi#2*FP1kti2_$3xI2C>*7%)MKR@i6ZV&tP^;ku1 ziWebPYzM|7DhQhV#9!pmXkr;rB4|jDJl6Ph8() z!A(-Ao{e!`c~$h?5yt0*E1oEhhOkmul>ln?>dyId-rUtFMrHZRG^I@}6j85;C*%^( zJ>5&vE}@bF1MrfUY)uNMLnv2ESS4k|N z5jm)(kO0W!N8V`2TlP`9cK#CD*)O~9eP;H_Ol`g}} zTP^xs!DdjBCEJ8t9Ega@w{5?-3HkhTZxixrL7R}jAAR3w1Y$Lpx1M)4(f%OXgw$%> zCf44odM_|_(*gQL(+8iT?LGl4aNP3$kapmM)z5%yKw zM>7n!BLlthHjVdq;yNYNcWNL|+ATIQH-7pX-qvOnW)p$SaBXN3uO{v`W_?Es$|QO7 z+(a%*w24C96+gEb#LBwJ+tCKzO;(gk@ku0{da^t;v9*FvXWO28hQcM)ykeBv1^ zZG%eO)Ljm3k<3lbTC_aNm8iDVPptU)XFpL)aPQV8&`)HWSbH{JZDI+~M7liY+aCG} z$P$0$Cl(kI3v`URgBjIaZu|s*wynieXgBo}mMLG-5ZcI3AOm^8xX1%5_JID4pJ*9+ zd9aDn#4Wl_#QIkNk0;_9>O_JLh1m!niyw1Cme&^)=q_f^Jwi>iE1iQ zONC!k6kY2PtpkIIc`*GH#5g0glYqkd57jT028VJ}{-F9TzS8>b-oAN|Lo>kD04W-b zN^7UTOHZ14XBbWzdCy8~n>Qk5N71|AoUF;U%Nh;p5d7@`4lcGT2+1Fv7xH6m3ca_Ec2ZL0av|#Kq@kFsaWVp9h~mw@#;9P;W#M0CVUScFo|80zCU(l z6=yToQm-v0eBt17!`wy5`0?=b+QpXEp2c-GjHI~{1MJhVD?R%>o@IZ(rl&iMxx&-Y z#=iJ$pxYBOIG>Y*sp-C>AW038k>rY+#4LX@RQ|*=m~uFnn@aK^RFXqU+CkRL4D&?% zRCPN{FqeNldp0@jo)L7y5IE? zv%Vh737xidrv=HnG5qSTc6FCs9nTgZ<3?{_x1B2G{r36O-=~6LI%25#0jvn^^Ru=~ z-SRGTA=f-y@6!&Ua~&MAp4W7K7jh|yJeCQ%s2I4~_enXYghXRh(!`cFub4zVQj0m@ zSmj*qvSU{v)kxnXxfOwtQs&0FVQL^_kJ6jsFb`AP=JHf3X;1qL8UZhB_XVq+DwAnc zjLKR~CR>hy9ppFVzBDYJJc69|U>ib6{5a`m0t{UffMv4fIY^^j5seMA3`B$0C-qaA zPXc12Np#Qk^G5}k1HK!H!#IQ`sDW^L9{r@SF6@J7ABCii)fA9(BilfQQOcnBY~;^# zve!Dz%eU`D8s_0}4}()*G1M<;_>pDzUBv7#C}!@q0c8Z%wc#oV%N91RFsbL4BP9luq^N zH{3SVZ$PNnIb(if8=$ttGilhQ9s!NeZ#3IDrN~;m0X(z~^cw_E;F9BC*#`TK9r&7g z29P1~R3c?^&!lUqw$T%Co=R-z7x03KZ2$!@^PpzG(W>mf@*CiLeGQ8t?K{+-_z{W( z?ge%Ra|!UwaM7{aeojXjiDnxOtBX{8*K&Rx=bPW)eVVx0;OZo=0Kl1-*x)HA@>?!T zyv!8iM0G>r{IvQ`Qv|#p_?3&PRd)EXMAFTn4{Nki35<%i))oU?K9BN232d<3FKX3W-Rf9@fAIH%yoc_EqY0Ms z05246;GJ)bhev*60|(>?qo*`=QsC6yYLS=&l7=<_;F|&9``HLWSv|$Je2$Nd0GaAR zW$;gpV6r_`qlInog>D2`S{NC@#QfSoH4noJw?^RUdY(!{yo4J8PISK;0ft9^V+8wk zLvF*JNe&x+YXqNs_+>tt6`(lj!rGo1fh&lq5h$)Vt#$}? zUNwRew3J|k=f()?_pP}SsYVb~eel=S2m(G1Yx|=*ZR%)*%4zEbZ1x5GgAo_V+d$Or+Tej~E(3)Bs@CK^tB*%npGl5Bs{~!3d^6NL`Z& zeVEvGhPbdALN|i_Y@*VS1ok|7gWyiN55h_C3?B}!4C;IxaEqKcW&lE z!0y8>2wvmYoO61U6+#bYmQBYz1Cya0H)uD9tIO~i2Bz~aOd2^1YntqRtrQ1l;Jk12 zX|~X*{YkrmyXYeJ@R^(CY_m@1KKQYb5f$6jo$8hvFGU+fYZsH1l#Srk!s`K>O|J$#;p)vpea5ew?>R-O{9V^K0>8(AMkiFDCXPu8GDGhlP z<93<6)Mgo#6q1>9X6v>qS|Dk*LifCkLQuN?-GWA=^$zGlOH^x6vZ1q(m>XJq#e&dR zokGG=FiF78n7^Y1Qpinc3f5KG54%5|VhoJHIfTa$eRRDk1t2s6BgL5{VY8fR%S=QX zQnuHsJ;3<Vd8 zJKIih1{0oJ`B=h=*TbcG#y4};pLB$o-GryP);8hpuc^r$!^>RaVQ>i3ZKUv&3tDvj zyxzQCy#6d&(Nr%CYcG}{@Q%KKbis&$fUUQzR_CM*ktCFe3W?+EM3qDXZfXjpNwtO4WBFv^M|fJ4eKMs)D(=wJu=pMOp)`^ENbaW0)H4aI0rAb?WM%{ff- zv51%^T*&ESlvA23`#62*+oh;rZqk+hka$@MRa#HU$uCz7b%Du)q(Vr_m`pQ|Oh}{E z!KhMJYcr)xi`uTA65>dlU1!IYpGH39qlID-bF`=VWHAtLhotO3C0-9fN}3cyw_yb0 z^6Q}u$CgB2&tL_6dFpjZkOD!?sM*2I7S=W48H8sTdlC(?ywKDOZ(A#n8+ewSDCw!w z^sxe^NnJyl=-6m(^d-;(al^$lP#jL%W37sSjRXFAJ0Z}hIBQNk$uw`waMa>ug|cRe zDsFuZR)`@5S!h&Ge#BMLVf$1=NG++Wy2Uaa5VL6k4_%#sm{6f`I8GM+17k{6zF zCzSx`-3CM0US?}bB^Z~j(5JO2Mag{I@6=xtvRG&b83!Jc#($ZM_Li< z!~OF6#J0{GfsZPd(TQRPZVEWH3GKyOQ*feH9*st2Rx^d7H+-Tg_yie0!6uc{XJT0V z;IaXj3pmP=&xFWVPNN<>M@cDQn7b)_Qk+*wH6AEhl+nxL(nga4B3d1hI{f=2sYaq& zypgyrh&6^++y+(kxC73^QK)8AEF@h(IPa(NH$VUjoaIp_UNiZ6BYSVh&z(PyK$j z8qBqA=BOqd0E^tS1{kv{GRBH|dl=lyM|T_(+RCf`FW9ZAd^u>mO8tksQ@W~$vDmKs(U z0b4wg#Dkr)ok~(rZ};k!SDJVrfc98KE+&4ZY0O{1|4g%%t%u!9C;W?ivT^$ldz<4c z17FwSU=uir3}_Ok0#g z@!;$!DysJ?4(xweWs5=4(01=nQO~P$*iX^^$?0%^<{=`F!5)zHtK^DiQL+n(ey`lH zQzj0R#1NsitL_w}nI*?#A3M{B>C6_~P&@1p)>Z+Rln;yGm6PY=NVZUBG-_BAZ;+&~ zF?6Y1ggq)%SLZP&<;s_5d5(jFP4A+UStce$q|s~lp&s5RQxMQ5TjKmVdETI!NY#&g zCWp^7fgo_GpAZw7;9rt3UBm?4n26?9x`owb^fhp*jIv{fLL@fIX2qLVd&vZwiPRPK zW-4L*(L_AVL5K<*wl3x<$J+8>BOb2%V_stEM|ByXI95#dhl^*b^iVoSgWE{;m0FPV z=GPILon8PH8#%h51W%7LKp`>wtj!aL2d3v#tqpO*-fM#jKXb)<|#gMQ*<&xHd z=vTXqoW;U8W(Lw@`aIc2UP!aSM(TurvJr426T*VzX#uE7+(;X~c(4(Wh%mUao@S?w zNb2c?HsWps(%)9WDLo&B3W?jGNKkYenViAKJI@V)fi~i@E@K<%F-`(3LuZ>!1Wv-q z^wn83gUiSK`MBohMeL+9mQABm`uG#`BF#Pq7BZ2AxEBE+6sz?i2aZ`tZ8&reie@2j znlTaUFD*p<$apQ1KwR;O;WER~n|HQyTO3Os<)Ws%g;=9U~d2lyFcvkaK%|_G7UZ8$3Yu>@E|jhq(Yr=(97V4AWiS>>(3sJP(YKm zO%(_FpW9!Yp$|qV+WV&Zc{NQ7zgmIb5`J2~Z|_wc80cq;D;5am8f+SKp&IKw!Gsq- zONSOEtQcebCNG(2K+Y5t+#IQYQClt7b+fnXtV4jK5ek!A|13vxGmKeXd$)qmXXiJB zc^jU%wUXmW>xwWawRjDrw z%*g!kSstN5#$dCAO8XR;j-`~!5HtcU9`%3m@lRdKP2;))Hyigj8N%LjE6G8F6=<~d z+~zJ=cxJd}60+Ux0D`y;isuY{dNl(*-j?L!p3T6!57W1|ix9@7X3)MHBN_<$o7gB2 zH)J!A&pTX_IQx=FF0B;;+Jv>-f0>0Y0A}lZ#?@Yq<8t z3GMhP*4vq-^06rP3wM7O@oEPYg<9P|IL2Tuwfps3RFF9QPi~ z6&huS|NhlJaQWI1_L%k36UWb}#04!|A&$a3Y1dpf9B zsBn%I$}+Nst}ze(W#sO#Akbp_?mgrh8*2H;`#bM;9%@jU>uJAV!A6F#^dewV)1x&* z_=MPFm>elM-Qf1H)rQXgh7V`;`t-D#pY?`m#jUhnce_@-me20-DGvq%C1wVCI1B*J z5?}G*V5}n>m{4|Ci+z050|CYI_e5TbOb?!?%~VbDSV-Uh{Q5E64jd(FBWm-&f)3ww z98hG(bN^f)ZWTYR`I+;TZ@k^0L{-9@DH@9o<5hR>lxy}xy3QM++!NocexR(Qc&^=s zVkV{#vZBq>w$bL+G5Wlmo1GRr*u+tuRiE7^s#WwygzZVw98&`AhUF532-<{NMYjpy ztM%v*$TDmMuLk}|0^;{*A8O87v4a^IMQ_()(W z0*}ZZfa_u`$-wiZJlk88at`L6xeQ29b1to-NQ9dN_&okT^I4NWAO^dq!f6{b0@mRK zx1SscGDYe_8}m&lMSw)W=j)X>i;#n@Zo{5RZ_E5Ozfwv{%y9O*!zTj3gWV?;4RBe! zF-Y@wH}tW^FrTfA+&yHHA|PoL99|ejj7*MOG@~s&{kKn?I*CLWTP)8(oL?jTw%S1& zCEFm^S9yo9pl<^xb}%(h7IB=J=5mf^_u1t8o-jCN3U?lw`Y5U(t&z}t@} zbioY=pvKJ-el2n2BScP+{y3-RF}wmpSo;>GbY%>TTI9xljOs-Wa2nZ7J z?)bZSJx`=JvNB8)LkAT*H@n^mM|1(&nuce%mr2erQQ=dsGSR&dg(N`ry8-OWFL=oW z$QuS>vp}_Iqs`+|K`Z=JmMScF)bdEEZ`ayjz*t5WDmgX?34JxsdHLZFHE>O_oy$!- z&}Y1=z5W-jLgzp|O=l*n0m70-(0SMz%Q6~NEQo>Uyh)(Q6Ru4HW4li&>QuN?WCy4S zChMJPsnrAP`C|feS)imR4y2(q3S=JK<;z>T)6&BFu`7fi)Ugta#bCSRDB298haX9 zYj3Hk-PAwuU^hp3vYVoIBb9Pki)uIFzBGoFs~EHjs@+^Q zNISe*!bGu(ODK*s%O%#c!9M)VLA%iyBsSbz$=FBu6XI#;Z%SwzFdwO`btK=&{zmT1 z{Rx%&kdl?{rnudx<#f9dOr|NJ9X}-$?jv{TZ|$aysm`UJzj`A3$#bmj2pDO-%%3C#7OZ3i@BXo<5#7?U6I=c5uss;JojmQJjq>#gf_NrF`d zt32SFgX!U%oF$HQVk1l1UW^Olx(20&_fHsBZL%6x&hURGQ;VSPRM_^FXzxW5j>_O% zac0%8y;U=uu{x38QX7K*o@a=YsP-*nVzeJvSVZ`=cl$L>;|f&q;~!{o=d&5RWl~u` z*%~FXjg_{AF8y3EaZuJ+D_Itjfa?jOGTYw+*#Qdja3Y+!to~#@q3PiO8^oElr?q=I zg{o`(JW^8y-WLZ2HSWRHg`TUrv(H-j*E16zWc|Sm_SY=^$qb;q>_t3A|EGL>WCr^8 z|IQ4w(GWc&Eo&55n3Dch0&_rgr-l3g|4WpCObgANIIOvKPvzK+K;93BWi$eLf4(;Y zxr57$Fj5r$+6dIWhHScl(z{79y&F?arCs@81oA%gK5vYm0OJjq`!ic zllApH)KEzEZr`$>a+`uJk!2mw%Sp7(+Q-ytWEKd4!s$Y6B=2&p(sBNtIbuP6t2WXQA^BLLsL?z>dbj1<|-uuk@nX@W}>m1ft zI>I%`jQkt?MoD9P>rvy+;(<5A8x!j&fEDC@4iuT*xDAEr4$uUuIvt}vpgBs;ySdSK z*d{)1=KUvAQF7Br6$zW#Zk0DNjarP_J7v*s{U>djCxkJza5JoQ{Obu#UqE?PQEFkZK#t@y3eNXrCz8_u8`B#(}X? zoJYN}ji}KnSj`D)Xv`|h@KC&lU)aVTftd0ieBxsp7gDj{(2v?iAh_pg1P05-=>)Nj z&+lFLcSk*tq|0(PUZA_*%RQ0Y9ctCJ4f+|(wSxdywT(c6Ut?mN>>1d`fmfYr{&B8Y zZ6ozdV*QF&YCz4;8aXTuP=j5O*YL_ZO*9N`XS;tEVQxT_4k#Ryc&$@k+)|CFWW!sTP=2_(XQ!qF2ooxt8-X(9cSaTUf-NXAKtPQnE5{h&Bcc zw-lI8grct&&{o*b00rz}|E#_}IbM{yJ@%5;`JCyw0C1Y@)Mz zt{|n!EEk)3gVv-!E#p78;V;CIdr95|9ONdRs^IXjf3dHHhxO@5L8;%-k;FZUm>S9T z9cl|2zy%(Tq>M}@1x)(cZ0~L-fYAaZQ>&_Bg0?;(`-{Q6EhWSFJcb_dV+VHd9E_EsnhE|r^%ngF9?8n+y^xr5JK9ybf8LuPIdqkT!-g4!UO>DlSOR$M{ zx`eeZ&un#J{zPSVD?$%a+zv7~c#}s7-Z`P!BAz{AV_y{p4&DyFKwDHX#@^Z{DFz zv?c!=nf0mO+^`BdHg9+Fc6|q z6CQVhY4Q@(4F(Yl0R|!=gePq4YO^hAlAOXX^yz~=$PD{{ws_XYm5ZZ>Qo4A0pQCmL z8)hgvlX`K|o#4pKz)uroET)tAoLU(TwN5u%@Uh@JpNX8Mc6j4r0WxbnQO?b$2nXCC z0OZ!Ne4h5ayfHTMdBt2=Jive%^YFMPEKh35QPIgtIJOd~H}TYD;0hvNEAR7R&5$c~ zl>NubazygHD-LtTF->w3JS9o;z#x=*4tX*Fnsv)4%`<(xGR_Y{S?1ZyZ~US^NI8H5 z)kiM+%ucKBfq*RjhC~B+dvtJc8I{q|jKxPkEgQ4bz6TT7mbXsyFH8U) zNKf}<0$xb}r3t`O^mL3j-M|DU13BK9z!dfn)pUPh0`2{70&?$jy4qV4kb9rI3CJhj zO<=PAy0j4Na(`t4hjmkE7M&j?tHTUUKra8hHvy@OeUT1(Eu^}ly z&r!6MKc^U1&zFrANGQA6ztqZ>Y!@fx0i9xPz{y=g`J-TppX&8w+latW=KVHlXQ%eM zH~;D37MCfQe~qWi8dd-oa#miBc{=q+KH-Brir(J>s=QG=&V;VfS%@l;ETnF|$+^ml z3q>U{7GfhQF3RllFce0W)#e&6J2{y+G)o!PP#Yx0xnm-P6f!|`k&&$H?~Fu4!Borx zBZ1k8zcmuTF$T^>UR5@lk&(>s{>MmW+)ZL6E6z=2O^w>*z~87gGJQkY=D|ir!R-Hl zjWmQ&Z#X3z*;NF`J`-)xY?5Lktv})H=0pq5M?x9q;@>pzZ@zf z?hY_<3;y0n9A-T-lGd;DzY!zBs5gA(nE(2cz()t3Y`K zHfZ?^qezqCE%_xDeLTBMDm!r*@lT9G&^lxktXuedlkjwgMiP}Z19hY+a}|@A(J zLs33>GGY>K6|O=iaXn5(a4|)$7Luv*Pe}um+-PO;OU-@kY48XbkC<_p3MP^V_COI1 z7B#aywE4GQKkyU3{Vj}ladGyps077Jze^}xMhF8moB80y-ZwZSk4{kzS?q+0wOeBV z?1Z5K;WZKSPeNNUU;|c_TgBxct;4kR?6li0Xi`f$m~7rO2}F!%cAbwD z=^fx$^y`5w**E`reU;^n=PwmTsLYah=w@T7F6sTzowA|;mw9laQC`DFxECnwe_!KZ}FDz}(xt0WvV?E6vH^*V`&$iM9 z->2DZx_Y12(HI8N9Ev6Nm4gaU7cHaCPue$h23mSmM7-n#Xi?LKP-q)CO~y@F?5#bFtMeLEf@oU!&@iLXiYw z68tDZCIt+MdygI`4`aX(OfZAvc-6V;1o-!6Adf}?ge`*I46RTV(^^c|?I4y5IhvsQ z4%z|lg=a<*wF8F-shWob@*X26tSRe$!dCN+ndYX0(21t@(^NmP4lq0?)pJ=6gD6q> z>9D-PX(Pg?L-7NI@7@q5i^$aw;NE-KO1RxxFhQ0sev}NCuf@R~xc&I*xNR}8g0On^ zSz57CpN6+N2wdB(;1k##+v|j8P??m#5atCtgsEM`(mCZ^>VLQs2#nt3 zFZ4MCi#gw0%t@D(Cv3C$PqmmiPAz{dri9tkY%wAugZ-+H#bAH5Sq$=>4lIUGCfIF* zQ~qNyGoVnVr`8^rv;CpPC@)3@kih^=@J!{8Or|uGk)?8BscJLw7rRwh(zw&mW{$8{ z&1T?V5+e0EU75Ew1 zQbI=2=Tlvj3TVg+DSO_LRcn645X;r{tyr*k%byJKk5@E#=&MnQ0kD$VaU4%!jZ*A^ zhP-&3B_Wd9`_4ied2Mra$;_Fokb+=TP6|i&3ys_H6D7n|8kwL;tiqTM+z@imx;dPW@U<-cdY6~ZNTmXohEy&+H^5WeV!pc6`0yiMFHXcQ6>GL03IHhaW zPdm9j|9b-F4;hgGEcPo)0HhQ5;MP`{^w)QmVDhKGvV=nYtf_Z2`Sa;)8Ce2wbfumB zZVB;u(sa9l=Do=cqr_?n^8R&meScvI#{AJOp_Wdk*FqFb3#i8lT|C~Y$Sfr*4O|?9 z9B;DwFrVl-((u=qZi9QZQtFX}|FE!SLIf&vXvZ#*e!kwUa)1&SW71TV0}~{)z|047 zp|r^(|AuxZ!e>g4Qz3(A<>|0T@+7|766k!)^++LG z-~T+dBRpkhIHg7}XD&%t4rZR!3Lx2Pt^N8eeKiTu#<(1Gm80*&L|4l`b4+|=1(M0N z*cEe;Esgck=Xs!jML-(m|Ah0MVgfA?j@;({%EDfDzxmYos zMm|^wh?$ve-?)N0xB>>3xGMmuA0|UdeBo5&9{Pe-2)pwI@M}yIV7}lO-0h7oDCpR> znyrH1!q69JLJYp3fECF1dw?d6^X$}M#2v-o*90Ko{^)5Yu_PhJ+K1ooz5x1RJpaU> zM_=FpEHFAjnBrEj&*f`=t1P7ufPlCaHX;ME20TeDG0fmJk~D`<5WSc+9JlYz2!-cW z?ms5}vYzv{tIHE}1y4K0kqxhW2_eOiF7BYMzzHjf+w%NQEOmHd zv3+|Bx31d)_`wo3Bv08r;_SG&&g`El(531@a=i3?yp$*$%FYG?ed($Wu9msIsScMQ z@l26S?e^3~q=1dPmI@*th*ZnH61sLVfeHJykc4+|I15=`I#IY7q0*x#m?6MY)Z zezX2{Qo5}1&;oHbZ5rf?&gd|)fExewgz>YoA2&1KvhTBcExq0iw7x^{8ws3gJd@dd z7-^SC5Qz z#AXPvdYcmwqjD>Mea<8DZsB+m=Ru#T)O)-JsuIM?1<%^8;QYLIzSV=6jTO@y2zMsq zoJY=Ch1CXknKl^#ml$i3(EHHoy5-;M&v-%#JaJN?Ba2;JMHNSyHA?hf_+l6b&SN7K z1gDgTQo9u9P~Wf}K)uS#icFuAb_;~CEVT>LCqquY66j)i{#v$_1TVIhffG929VJj{ z%hKKQ-SGQKUK@JU!<}ibcQApE7g)=i43ofe&6Y|Ue7(v(zFU&OHpeBGGz7@(4sboA*K?a;= z(Rx^)aJ8h5@G=k#yCq!v(YgbVmXK76sVIZ$&3@uwTFzw+s@JE)k55!8Dc@5t_=$zO zl|WhTCj^k7@ZbWHck8!Z-cm3KD@I{Mnr!EoQpwT)$GhU6ePLB>%M?A)6POC+g>(3?FYduHDEgEZzb%#VV8L>bQ| zQ)(!+Zw6&w)==luW3>0N+ei2PAME{Rn_mtmf%u5AyXl#eYGSi)L_%FdL|s_#g3>(^-vyc0Fjn$mxVUS6a+S> zpf*Nhh>YwI+b=MN2(i~7Y3Hd*NcoFB3z!MLEUCT9*aqlaW5ts6zS1k~z2F)4PKtCP zCm2})tcF>^IZbO*&3P^ck!&OGLT>qLwgKR?OpTe&wyVbYWq2ojAB-C+H{?^8X;KrD z(T}eU>lN<>OWecXek!ilmnf&XHtR0^{l}b_%k7LQW9&G#Q_DYtMg${H*r$M}RSU>U zj4Kd)F14`%UnmF822PN+I5WYg&K4(+tl9!ySl+0z@mQgzL&yFPd+(O)I&5@lKJU4l z2on^=%YOT#9(n>j|FN`~01_*|grsA)tJ@vzuwC`*Y+XnYiM*{`YnZ@2`14h9IR)Pz zG?CdOoQAsWxT0Q(ZW9Axxta+)*IpfeWYgI<=R?mAVZBn+`Z#CHD@XTA21mZn&T&=K zyfUU@r+4O<7rrJWGd;79)6Y~~*57Uk(H)KN^9u+0CKokPri2@_2De@MHUBhbpVDYH zCdFi7#qjB{?Q!;)Fw3G5lGkpP$_^2TaMy z#TBijxJ9Opr~voritQVLi?pa%?jUmHl&)^LjD15nE>a9$w>?~vwEeEjU&H&;NiN{u@0dENwQPZ^OlxXHK|%BFG-lFi>F z_k~J!>p2$BF{IKnq6|9-r*R_VP~C4H_i8?ls2~ZueQ0J)ua8<#%$Z2Fz`cZaP_?Jg z=U}c$xDM+q%*jZaF_ByQ5RG1sc9vi3czV*eU|vrxGK!WTefJ&L@H7%jtBCLPHHa!E z^U7uiNBKH807CJJ9fbZ;wS%YE$EqC|{!#6~D_TkAd~OG0%nLa1RPjVNZ(;{~I7hP` zL_LFS2NC@81=;Y%4u;MX=L}f+p4)+=1JtiHI|z1e5az4f#b4XOP>KI%?ZB*H24MbR z2R@bZ#tx1UB4<1BzKFhVaY2w$klt>vgY#>bnCCfJtX0#%?4a)R(`!h8%2PfvfkkT- z$D!t2$@(0RQHKWqR~+-tlzCLD=E^0inmOptQ<(%`G_a^ZFT(XLJ+!_j14=goGm};9 zfR#*1BFql9Ia9aWfiShImS9U7?S6)uV*UP5Sr>mm=C=3AnLYi!I%mdYYa?3)6XfI#28Li*!QChR$U0~7*1d}7u)n*nTO`VkEcZ2{>&sY+i}Y+P z25{z*RVnLn@ALC}0wTekvu1TVf7F?tgZoWesitp!f8R0gH|1#X4$O0C^+`MhhyYfG z>Amh4U*q9>?thFPEDDWpyZk=km9Lnpq+Cz4+Y0~vX?aILTzo^vD5aMDy`F2O>wuG? zS>v{m0X(GN=4o;Vf#IZy^adxBEJb!Cqf~dctIs z#!s0ifLRkB!=cN&h*^WJ(v2Y$IiJg~lTlBNVI3)N9+@;_I7g^P&7h?GjNw-zp1(;_ z-1=}qj&19O%?7stWhV=tJmLxHJ!(*X_=w_|mTI9+WpgP`Vog$vG^qku2!Wm~)e@6? zr?2lsJex7t_leUA6ccIkCdtAlnRgP{2>Eyp-`W8Dy$9SD)@A?Mzh%n`^z>8R9{yvT zlMRPuTTwg~qxe}=&FqhrHR5SB+my~`@#$Z{%oB|vkzK9Q=QN0QoFuf zew}3nBr;6W8MExWzN3Er3lo9nqwFb4^ySfD(p(`ffhAuur2;{nluTI8o&$ACxiBdES!r#m}!n@}hEWC_huTk|K^v9cxP{9g~icCrK^JkyeUNF5hccem41 z2A3)AAT2?M^jIfjpOR=_GE$)Hs@=kN{gKfJC+FTpa`rN!-cdch^!+7_kNH}>=}>D64cw*%6_`X!5qc;-v@_vRWPmrKlqYZrRBBVGato+mlLU#Mc2K+SbfA1q`^qX&N zz)tr!c(A(fbe;UHPZX-?NWQTF&keuYfMJ3ke?HiNR)A(UAn*Sx8yFD=ROa@6F7L-Y zqWC)-SUTDH8yoP5?Rj>J@?+|E-`IeUZcS}K5aMraV1bZ|cca&O2HcQ=ZUe0jUWN_4 zeDLx3Rx@H}l@;}gT7Ae35`8RcD9O*52evDf*W%IT$xZwK75h+EwThB4{e*bLv4ZJ2 z+fg(-87F&^y#r#4X52%6EHYtON0Y5$SY} z`fo3Wpff@XWe2_HYy!qXuYnciM}7YztY(dzh6TK$ESs)*J7GVo{j)5Q13GGQwFpqB$k@>w^@2lsCD#W=36d?gZ*++Wt_5E+>+otChN-iW1 z*sfYK8^|V9l^85^m)Jo&I$G=nN~yW^f@AR;x{I{;FL+(4247BEmjHMOx45Kif|WX|MQJ`c#C7earF9AY@A)VV zaP%=rW)nc2nH7y?9L*||cO~x}LpQ2-E?dr{fA)~%SwoVuhahJy z|54e-2Kp-i&Mjdp<>wx3{+uMMc%wVDrAu>_+vcod@0F?2kN#3?mxjx-OY!1XVjY9j zRg(7tNoRLY&p)Fiqt^IXD!#VF?Ywyil<0t~#95QVN@Xishk6D&-ER`bM8Pp>!iT?G zx^7$E<6V_8qz{xMz~{6k!hx0(yN!=hxgVExk2>}M=(nWc%7{HY7OUh{jRWs*0PIlO z+=}=K_^vE+);{6i$+mfU^gQ9+=xQ4;@!NU{uRfS3F4(X=v$ZEV}mc79^#n)xuo zP}yzaUW%yWWju)#xo;V0Kt1ARh$ zUkBasl@h(eyGo3l+ro#+ubK9@uYLF_S z)xg3?g1n>jpFsF*9igz&WlEPn0cPZ(i!>F39W+(sPi0g#rO;mH7_632-45QKH*d3kkxXqZ*6ZSn!b(!_C*&KQ#P`0x<4aB2t)Rw5!wT&0=a18%*`Z~H z%r>BD-s2p*)|N-Cz%Kte-D@cwp#%}Wj|$f5%pMIzw}R*X{5jWeSu=0-_26rKd34M| z;4NZ6@}5?)-9`YCoWCJF|2?LE%iI6)8+coUzONaFa7*Ub>u*T=f6wVR^D#85af;vj zs`lUg&1ZA3@A>--cUQmX?1@NZIKmu9Vuq2|&06L2MOJb)(x;tjy()W}hhJ9tNZZu* zO3c7Q8O<*1A$R#%1gxKbem;bBFs`)U!`R%{@w0vH5|nDE;;sz0S6OZ9dI(qlOsD=TM^%;Z$hl$X;rQb6okn zoFF#%cOne13Y92!oS@$jw(0X0wFol1wnVlO?iahMB8ugl0?}Er$$k@9qX24}whZTvRZXN9t=hdyFLV>S+JXh&pHZ1h%6_0+o4XL|7+AlPW z)v>kLhhywwnP@IN=*dbsJa9RJb+o%|))COb)jFDe4C^op+SPpzfdlBAr@kkUcuMi@ z)^Y!*O;%}&HT`@lExtm$`-;be&(rt8^D(T$zV#ftw`qS&tizAvqgzMlujJ0P{+@k9 z|A*tzt;2Wfunzk~>n^9-)!CZu=dRWvUD&fmk!MlskPeoDhwJXSw~u|NbeM1JIM%|eAF+o9zzt>a-pZ#x@vj1}L#8s!T_g56I5eV572MxMCV<1fX#71A8 zPqesJC%0SgJ2rkd^9P->=KgCeW!AA2)uq@-{I!CMTNGFvjZ9pgG&Aj70D4^VeilRs z#*d_ViL+2h5fBkNPzje4e zZ~sh2^}LU3C!JV?(Xnm+*d<^a`up~eBddA)hn4-h{c8<>Y=0-Xa1f13{mSdV-u{Cg z;oq|T$05h}TYPbj?~f~=hOhz3R*<`ucAx#*w{iOK&+TXXc=|ViZu=pxqDNhm5@3|I zU{Om0hW+Rj%Yau&>JjLdOr-lF8Lf1_CcP}eyg<#xUUDR#X@#!)#enQdPu+fjBAC)I zYDzWUO`BZbRslyo$`nS-zjvQf*HVJG$w2+tg^t@Gu?&>vuyILBS33WdznzGlo7kt( z`t+;Yf1mH@!t0r^nK13Z=5Y1z@4OT)KuM4LC$ufALvihK*@h4#zL|zH+#RpX$&jcY z2R7NL<3{M*t{&H6Tu&d}hF$4lp&NHzZneI8%A`j%+X|6WYma?j?rjJGxM& zQMQ1|b0N*a&y0A}Z{t)DxdA0lX&{2gYJox5#PT6dcJgFkl5|WH-QEWdtWf7mQdPn& z*w!`*o`t)y;_LQDMwSRfC4dWyE6J=Iz*Ux?{rNdjE@`}7{m$o9%Kg0p?)i{$a4uhYR`O+OQ!rc^@^X#81`@8fK@jI5oWi4G<~E$$8&^D68t7UEDXcj zb=us(HH^W2O|oQr?GvnVIDTdf_WoK0WMyS)47Q!c80_;~zaAPxoQKPhp{Qhy>nBqM z=jXIdD$jN8U1ai7XcyT`VgJ39`HlW9`TAxWAR}11+867{^f*d}&@3S+BCw5o_Uk=o z&m&fG-4bm7Ji8?X^kB6Fd&9E#6$_KV!c0Fb;q|ml4EAG%hXhjm^8lFZ=G}*wCmFt_xsKi96UrCj|Ic_b?#=Ba3?TTn<-rK{b(XHvG`;O^^jLfuq#5X zC4tKC6;V~(Qumi17Pfy%w1k(7eUz^Rs7oJ6y~bX#rK`9qDv)w)lN4q|FELw)T-cPl zW7X;tNKOJ(M}b*Rwbl!&UkF|f&OVd3DwT;jCyM#p{`*&tPV8cY$jNTb2f8TkN&O|T zrz)@6Y`Ly}_1CkX@gWs@uPVgY)Jr-F3`Wl6|%KEasqU$sGZG<=%`BlUY=#q>-ZfiiZ;y9J3c6z8Pk!o^K zrlZRtFZTJUqX%w>hz9j}v{Jk04U=h9u08`3e4E-`vxJ!Sa4a(nZgPLsa=hBg0yF2Lf6h%{}Ca?1E$r=9X(+ z#*y-<_}_7kIsP|s0ipO29?PgA!b=lD5Q>TM#*-)tiSSt#KzrCT#fY?$G{aGWn^sw6=T&)$c_M&J>e%|gMt=K6KguQ32O&|memP|i?0t5C2eKx~Db~<7T zuf87FHeFA}AE?v^yJ9NNjH>37%#FK!Fhvb@&jn-gGjj)%OmE!f5fOqG|;aOM7f z%~;cL2?%vR_mY!1Rs+E-16o!O#|D+uq9IE=trKqBtWPveXuAabZ%2|HcRq8bJ6q1E z#S!JK3YVV1&f|RULq-Ef-$_T$QgoJ{UYp-IiMypTI4clPlP2u6(b*GQWnEO26q=>o zH`JIl?^bfRm1{%-Z3Sl=N>5(z!Y)JaO&I2fB|Oin6#LN>T1Vh`PKZS8@7M1UxUkzH zQyyi2MnXhIq7e2KNpPF`({if4m1R=R-)e~d_ZBw!?|0Q?=Zu2K)o8Xg?Ccxm{mY-6 z#ST_cl#^2K!k#s#TT+`*Y!71kd^Xku!-}lj(BPr1E9vq zj?%;@$23Y}tg}MTz+@!F2kSseiLr&K&eJA9ukR>}NEFlA#>*<`lz{UtaZ0%vg>9K2 z&#Cx83OYV|u=GX%5_L41Z9=NmmhGSphS9MG+&r`c^<&G`jp8}Nw?wRkMby8$QIt@% zwMR6#KAP3I*=%(U{V1&gWsw$!?Fto%ri^xK922d;R(GBE`Qwmn3eD6Y)gHw#isStG zO7T*Q+WXkyM4up9HY$`u$QBS{r6TpC))>6#P2Em-*b4f1zM%kTZBJ3hX2Fl&<2`%V z*M2_Y1xWqL^nnGB0W&=1lhfc!3};%ol5Ex1h5Bfy<&d0RCpM?+0xRe;UhRNtFVBFo3dugB@wqD%IFFP+wB^b@Z6@ zIHx-}@z+8DnNc(?=snUSTR@8#%O9`3cgm(U@d(Qfw?2MvU81}E#sXU7v#m^<@~c~- zAEcBY<-|9UmEsG%3s6_Cu1mc$x6Z^0-*!-Eno1LWSa;rgC5n>vn&h?ZIRw=IElvs@7I0T(pT}2W*+#0c zc*jF)0(S4@jB5|0cq*M{rw|7cQNpSNStqGto@%N%yX&A-ZMxU@*X>h$ePV7_(g||( zD>^*4YfZbkUaFqp(_FMZ?QKuH-94A>hHYHGz2h-``bh}~uSCmIZN4fNs zzM)6HH8vTU8(T9P##g*WGYp9iwa4#<(FRG?Fw8W@uQwd17{>eJDo_M_|H6G&!?;aj zT1eh{iDFxS3O1G+#{H4UFpTT{oK79dANO1hLnw^{mr~p6kJdb&T1Et|AQB=HJ*o4e zyG+nZeSNy!76-e%{;&E->MuGasxk@JPy8-QlEa7oGK}?)#8zph*$kuT{22fMS%1~o zBA)n7IUjGssGhoXRTfr(X>3+Mu>$s=}dNfn?qj%s@+*I{jDNLw#)LUM=@0QpHD)zJ3F$U5T`nwNlozsMG=aus4;@ zNOUOvg#NXPN5|5o>aFcOh_{1*Yd5PMcM}0mRkBTo4!NLKjRck%63xgnr8N# z@kMyS`(>k=B@Z$Sr#@)uPoNBoC_^ilBc1UKm{OrFiHd|JXD1$HWqd5(*cU@^4hMnzslG5MJ zXHh0k`6v7tlLjVXX_wwS`wWq zhT{@?i0eaTJ$}AE-cp?4l|;k+L=E*IWkRDC+_Jg{pW7k<@11*1I6OjiU1H*33uXNZ z*9KeH)EH#7%oxsr`Qeo&mQS;VJ>Hqv&fFGeC$8gf9wUP!b}(g}FlDZ@Y6QKpg<#pV zr9}BUvjtmShpn{FU+->cUVUqFH^Rf5GcJa4K0Ief~sVG~Qm zf-L;4H*@sQtD1lqk|*`ra+o9#Y&Qn{R_=`}b4c4L0p86As|jL0)KntEJ`MhBDh;*6 z{vO$!?gA;m1OqspU!4JtD-K|2ajB-FhjAXI=Bh&w>0EUP(1RO$GA(#Pu{~;`=kb{& zgUcGO5YK%VPHQW7qcFyER33dC|4F71yS}v=yfM~bK?MUZWB3{C-&-d=@YpN9VN}=$ zimmiwqcyaTPkyf0^BFjidJ~l=XmTzsmv;@$ zWV^Nt>nfctVg`^jRiQeV&=_ihMOCnM@nTp1v8#S#47j5Kj8$W}&0!dW zun%keec!>=kGSiM(b4jC+&@t}d>G>Z9I)F$D9a_zDeCTUpdKS|OpLc*%oGQ}BuN`P zoN0Lv$0(r$8VTqrq!=Mb&-&X%%s>)m^4+0e#``86B!hJF+i;wQ0@;aA=d-E~gw9im zjOrg?{=&*20om@uetS1Ybc0-#e1pH8h}21D1-lI0x*T@J*O-!^JG{~M> zL$F6C@s^p{7V2^xvr!TIg$8nwM9Hk_rk8w5iNFN^pY%7 zQ!u;s%7U!a5V0Y^Bo8P{9-C~*#WXzAFvlI-B4W!gnrAuh#dKxG5+uMzj(CkMRor~m zKGFWgtiQrJB$4%#qh@~jb~S+3(xk{rO+;e-{ZSpV-{1S)HT;zwNKN-foIH{STq}aIk-C1p@DTI3yJ?utf13xB_AscUZxDfgM_K ze7`+r!!Ye{u8+m26kK4qRXIko5p*3qD==st=}Zitj9~d_1O-Om8Tx^p@d#HRywE>m z1heSllM$AGlmMIkWCPFjQv=Pi`Rj%kD*eb5DLrnLM5l=Z3=W@3$K$TZOI%DBt9Zx1 zFoLjYw3^mjLEt@CSI~?guo5vSqwWn+=1Jt3!3@RIAihY}&$NwDF{Pv+=lu2k1qaYy z%=IHQQ_iGj1c72UF+|#&UNC|%_ruUok*>`M0tXX`YL2CHgZpYRR2xU;m67=qLEmima!es}1ak$|AK4W?ey>$FGk@Wg%3dhfue$lkKmAIT&oHmql z!E}-$O_c4U?kr&%4L|1j0cea;%N7+sLZ)JD(3+Ny77*Y6aCvCe=f%IUZ*u@Uah0R8 zn^b$lfOB5Mk{IKzdkwC29Od{01<~hLXPZH{*Dc9n<%mp_^3a1hd@q_Nfl&MDKP@+I zM@`Lzw*jv*+u!u;@gm)HL`utQAPnJt)Gou6gu43RR+Ni;zZupXX|CE{xF7yLeq3f( zlky*06j3+OEvr6*-@s-=ehdyTvbcf^XUI%sM%`kPw$qH!+h;jOk+T)hK8%Eax9dY3 z{HJL5y6jpzVuyi^{eSL1uRZ%=n%PWstLx~dDoL@^ zX}{ve%`?5l?{ul7Z8l5ry14aS_@H%s`HiLXi?K1LT&WU%cpaIa*YRP)eSnaI7|pfo z$Y~|KO~iXsQ#7bp1Wnv=N7O%id z4h7H8?!K?iwhnZWJ@2cX?DsBNC@Nz4Z9~a0Cf)3(hzWxQRalqE#zcQ zayhuZJE&GF)MA`wA%m|?F=+`L$L|p)jC)V*Xxx6_$ky=K)_{#8*jd@`UXFf(?0nQ( zQ#M6+;WgrDuIuGH%BnpY!VoFvR%(#pz1C*F_isKsiN}8b?@u(3$8y#|&;RpdpE-~< zyP>XYAAsPL4K2Ukp%hk`t}(qsdd754$rj#(Of7kyR7qq4sMMuALgNoOsa6y&9R!l% z3QXWsy*1g9R1igtOJP*nymJr<)`sM{iS-MWh?IzOA}O;OgnAztfJo(`xU+Aq9@2h1 z>%Q6pc6(usD@|3tMO4VRX_Xel>kH%)UJHDL- z6{K)vI88}AcnyeGPiR1?Ojb#yYm^Q8`?6IbS7zb*oXHObW-mY|Hj5KuaG=Y zELovN&fn)9-k(>}^6DF6OFvSwFCi75f)K+g6MY)U2$zrDkvYhuND0nBjfKo9BZ zJ}KMNyp7x^g>>LES>Jz@%3t89nE_@DHgP?^6_y@%dt9Oc@}!ZQLvtMWyuyx}r1_9B zGUM}!6WjZYeJ?HIzIdf=*3R=rt|>Vo zBOf`xjSP{xiY>OiUp}_D@1I}g6eZ!9C`5B&aOuNzwi4pCQvncBABT3eSbF_Tni5Y(4Z~$jlT>e_h7^?eJj6iZA4G7 zvcVP8c7D;7O9;OTNgbH@`$?@MKG-Ty+cjCVZZY5a-~}!tUyjuN6bMw(iy0(~6P83} z@GN}o{1Qa7;`xF5e%!gGh=N7N9f>G?=Wmbla}x*s#r*y$RV!jeWWvR>X2FIeArYMD z3CM(6Z4zI5TRQb zPHg{Be?u!Z_S8!AK}Wl42<8cUqg%uC6~VOO{SQ^6gq))K824WQva#}-8wEWJ-p43K zU^rpFJW2a;7803Xnx_I>iaU}`VcuVw#HaM2*hiV%FWZXL%Vwp9NS3z$p2yf-hK}~O zqhy=2-KRwsFLO9V%J2X9^OzptHc#PT<^@INh#;1*z^6+lSk-{2Qa{VXc9LqdBu~a9 z1R1i}!wg<|@$r?^g@<+`?rz@a=ybBy+bib?K&>QaiCD9oG$?Z#iH(yXu_i%QK&?kf zugA%bk{}ja#EE^jkpZ3W_PXZxjG|_?mws_Jt7)GQw)FC6aOLCdAeYeA%YUuA##;S^ zUw5w`DSOyp!j+S_!*CuP-9C?fG^!p5bD{M9`xU`>&)0J}uCE#kfVuFSRe!PWQ!nzbx!PRUERHE8eoNFO5)T7d zk)x_Y7OB&T6pNXJh2Pg-BEGd}#j9Il83?xccZZQyFHx_T5h6y2$m75&5DVq3hB8JY zu#?mAr6wdryaL5Yh?fLhM89!XS7Q`$9bFu~?M7;Ta#(dKHs&brpe}W)^`%L33iM&F zURkQ_8V3Z&En+D^-# z#j^kc<386^mEX5ngWa#g+*sGX+YzxJabL9TW!i_@&uoS2H);j-uCc1>E(fU3_4f>C zBGeXSaz0qY@pW+L>Zj}FPp5h9XJ4&i*rfduYq*C~1xgoy<%tgualy0y{duZ49E=x| zRlc!?2l6+2_c}d2udVA|NXRS|x@W)N=W|$t^vqL*9bCQUJ*=%!hWD`Rd5rj>MiAp< zwEcFD^|tr#-5T2WH}n&7NqWCBn({@gK`IoAa++F0ec8BUnF8#+_t>MG(H!jEK{=Tv zGInIm_3S%ro32n9CD~q+rDin3`?HT{b@3bI(^5wt*08TXkFPzp#8iyRB}XJUJpsd&f-K$cHAk{+T6_rj}G-!K!My%oX zT*fuiJL(Ra419`bvlXe?iPH_Fktgf9mS_pL)ztZgPo1@`!t1>%9weAbsQh>(uGZqb zHvLu|-}Vp@B4E1RmaLF1Kdi)lRg4u$V2wdY(LWV@HFC+(%$Ra znCP|l&#z)^l?hOyGs%~xI+q;wQDd1l1wsO>hmM<;PU6Xt^4$qAJtasYT`RT6gLpvx zdt@eB!t6r9pQdxJ)(o~JYF%fJSc+>~V|3h(y!Z_~qsGc<&N@b82+ zP)sCUJ=_Dw0dMKA4$o*V+WIBlE@W|p6a7fdCE0T$I9{j!_9ZbWNvK=rDZFeWfi%lr zeWJpq&S%^qWY$Y$Kg=6?7v(uKs?>Rx5ef50{o9-V-O+FFcuvl`lBPXAbs@v;x^xFkz(xkMOPUG}VM>JN3OJLZp=Xg&d z`>;-GED&9?dKS?}Tv&Cx`aN7iUUxr{;vd$^q2`fv)uq-DDyy~q;tzQnk%gYchy?i~v*itV4$mLBv zVfgDYU7i|(6>=p#TEnMVm;@y+!ylH42yiFxn!pnZEizz9a60%t1~de^vb4qU?pCxY ztvFYP8I%FFeVM@(_+j9W5}S+^%gQ*I20z*G{=*E;{pbA33e40tj&Zf){LxM+TTCy_ zlwO;$n(pO1u|%X1Ql7}ZFp;E$6K^J(*M4fn=4NS&-w30hQmJx+ixz#`^|f=g<s_y0ljWnBC zs)tSeyVPMPpXNLnI;geB_4KPv;)GSbQ1BW-n?qUpY=I&RZL(GcFeiQcFcp zS>Wd_%ySh>U?%Yj+ic~$0D9IU*x8F<#YR9D!AsqJn6)Cw-fWJYwkQ5|VSgKm}OBetQu+MT9A>kbnHKGghL-RJ15z`sY0`dQ)DKgx@vwmyM{`U42PPKl|PX@<+57|7Db9k&3WAsr&s_r&nxRCCc zhkBA3R#f_+y`B>8D=wQwbOzG1`K(ri|2iQ{RR_^0v};8kmuBQXXhuysnu1-MTnn%{ z30Fq9h(wG^&Lja#9cDO1nZV;P}~>&na?FwTN0vv%M1dP3fkCtLAjRRwjIpE(5izWKmOA_t3P_ zpt%J|A&6A0_oSSQiCUK6qT{dX+7@<5X7@oht>hnIOv_DmQEt#P&ZxK$<@iX*HG(s3G`wV zlOW3*Sih4ngZnD&n+N=69P2gJy=3;lo|Z@cRIG!RCh^i#pHv33Ni(_f40r*ZSrrEat17QB zh9N$uP=dy^F6-~ z@gJRfupO9GaMMPs9SMzlx_8ML!E#J|?{nr2w4V4*aiFVvnHT}#Ghp&>`dVi{F3#@k z&UIQT)c#28#Mrg(^KDEp4hTsYotZ+}C7(xhMu|)%q>yKG^lf-{`2N{{e_TMtc~SGM z$JKl6(k-3lbgLs7j_{k}9VO|dLtxxa(#JfY&k?GQRV$-g)~P2Ofeod!u8PaJe0l=BSrT^jNuiy85`bE zt=yW}>Xjwd8ca*1c>=^qY(A^fscuAU6mOyOM4e9m>#PxH6mbxwNjeG0Cx(rw%QOvv z22m>FW3|XGMMgxTZIr=qM6FW$0X~E5R6G{Nmx~FUOC7uU=nw9}?_y=B`Pjo9!WF0o z_$hRi$+`6R8~5*Dc~DR-eJrwhn!m_a#Y;`L!`o4xfAv-ANR_`R{Qh&RaMOzh0=UIz zsF!_&m9~ARlI`NtW?ezYo1R?;@bTM7WB+aU@onWQAa#}SZt=!Mib;kNMJy zWApjXq=;?L(lBZbx6SU&^X{~ni995GuBf!;O5;5Jhd$e+_=Vc6LO|`;$zBi`h;1|5 zsFK9_Rd0Bgj+M7Cea=SuPbQACSH4|;dch!^VYk)<+F0bEbYOL*oo5DjD`TOmUDyUV zyK<}A#fW`$Ja>Ime_!65t?TRNRs$Ud>RTc8Db+8kMd4e8k7S zA&!n!Z8bBCof_1cHSoPZ5+6Uf&EeRqc+UU&$lwy%5=#P?GM!YpXFCBA=dno6^zBij z^uafQnbXhX2TZNWphX!eP331%uyW-{l(`I|@_09zGfaEi0i%&vzXAB?yl~1O*oVXf z;|-T7>)@yN>gtd%mneM>4-7yaw80Xy#8T=6LK%c@;fB(DTRW$(>&*%%9CDVEG0V{A zCpa$I@ELAG3tiA3?#4IeQs1L&eGd?NW|-GfN#RDv9ig!X%X|)E?(^?DkTh z|7Uo!?`_Gju6j9F;DxeCDR9+#zD(u}?e2dL*&CGF@GkX0M$v#p{Fq#pOmmLT8aKYu zXw~4gE^YBrFrQw6yg*EcJ=C=p!bb&1NFy@%$$k;ty)?!aB=~Ba(*lbw@MG4p)>70Y z5C~t`Mo|q(uwJ9mw+6@BR$YRm$16QNpWnPf(!gY`0w)6zQ;Oo5c;K7$MJ6RQVJj1V zo|vn@VSWNg*ZM7o%&h>4mHK6rF6V2qP6DKyrtDeyz${_{SnPMsAppj{O)4&m4SDW2m>TEzMGO}#;r#FOqQ#=RM(kmz21CUk#1YXdU`0E~E z48U5jY)E%Dn!)R|_zbNuld=w#S3k*mh=Z(aJv(GdQNr&L242f1!6@fnFqQER{mj~o zKb9gg8bb19d4#?6w&<@)pT!BHR??sTt<<5X0a@c6;0{4(L8S2)lF2DKM;U~&I)PJj z-0^+)inZ8Q4}vgii{OuQSRjW^Gc)ud^=h1mM47_-={*M2fJP^#hg37X*0GYZ=^w|> z_WTwICD;m``O?p$mV5x+tZws=YgCixGwSf3!8{Xw89w|nYSB@ z-gZSCO|t`gR)T0_1<60}CB{g#$s}Y302H7r?jw?8gQ=gbD@ACOc&4oB2;%@kN04&Jqx7FhD zP>!QgUH$y&%rj!tJfSBJfpkgWlS>>5Eoynbx!N@S0c{qZajANU%#f=?hW|Sk>$!nF z`$SN2o56MctY0yv*u^#YldOYT$C60@Bjqo1VfpF8*0V zdWTljZ?p5Q{v87k3c{RhaSA0<8U`{6)fXIsDIu^rU=y0nye!ZoYYLU{VWsiBfC-A# zqKPwr%mRzZEKe{&u9rW$S+Q_8sXf8jB!R*#$Y`$}U|Msq!>?!Q%U2knMqz zs@0{QQEiSoAxPuAK1=+)(Nn~7!mNqHqcZ@3WGUUQOR2GZ8ib)zTD@P_f=MJ>_49*8 zn(IN{C+LAxcRReR%o|2a_&l%wzaJ;{-&g921$oivlcTpzEkOtgaf=hvS$a@sPAkEn$19<>l;km{viK9z#)FofrF{FJZa#%z1m;Cf@0vh*>wl+|H#T9qU93 z))3>qzt(T%%tWFAW-ZdxD<@hzVge)j{u?F-80>;=Au$-f1(Z$pJvjDATR}E(@+Ksa zh2OvsWxutL=NF~nf1e-jB89MlT0bQOnSnB{5hb7)QZHa9d&^KMJ8?)OhP&qTYU~E1 z2aIcvU0Lo0a4HhT#5Gi1Es|=bhdmyM?D*&TbAFYbQBG!iIx@;>C!i!8^=zo+z|uHsp38FWTyONf-%5Zp4(IP#x>fzY$gNU2aMw*~q_TRRmen`Gn z`P6zg=_QqbapqJ=$DI(SPzx+~dtp;!Ci*=gIK#vTpIkNXrHy0xvwqZPUEZu@xe@Y# znMmpE>QUG1xE#Sg_LsLSUp+!UA_i!=e%sz*!Szvu5sX(PSI&q2OCV;q2aMs7Ho1GQ zV<`h@?ySeh=_toB_1U9s=QA|Bl?~XMj1PUd<;Ia8@g!bz@$nZt6{JaRr3EvVdgzZn#5kGGY{Ikhc=mX5nZeMkH%mMU-?Hr$}S`aI3J*Vj1%+&l_rmlI4`60Bn>Z40TGh@eZU}N@%ACOf~-0lFulq!ldY5A7Rhuh?GbG?|GkDm%im``k*DyQAmLDyL_V2B z*Q>r8Kq*~&yB3^OIkil@T9!`_B8aON!kvzYY=O@TMtX(-e&4sB<7>rVh1~K&wYK;z z9@{RR1mW8H@~!&7VkxB;0L+B!5@gE?c>*w#Y@rsB?FyTtz~aW&C6PQh;-4K# z;eYP~n)l~BX(nbDG#Iia5Uv4soZ1qG$+*r`*>A8^J}o(4Sg|2Oo>yS>STcR4bgiZK z5KE{4wW(CW!vcw;0b5PCjgn)Ulh}!Rf8iz5@e&}~6$nn<-hZ#rwZ$to1Vgp|tjGPb zh-2L}HijPb9EF9IADs{BS1FXTZQ2AHFQE zRA}=Y)TFY8?Xa+4^TP-4=TWX1&9n#KKD`BCQLkVmVadQP=iTM!pJzAcy4am}0UxI= z?fqfw8QkZ7Mc5)gV+|*CxJ8#HPeb?E{kn#um%SpR=Oaoge;g>Fvo*G@TeBd@RO|F^ zxIm{icp1i)@2`b%?E-`Z;@BTQTlt1)hH?S~bRm9J7oCp} z-J`ufSI>iG97kfa`s)M^GTLX~+pY#PhH27{T{d|=Nj|=5KqA}aaBvDIk2-wO?=I!D zQZt@h4Fv?)wGY(w4*z{UEhC-wmiLWBpI`qS+jj*@InjIoAb|I;uLahRhc>V07gHJ-hF$#{9U< z+32nr$L%Wp5*=JKDIkr%<;#tK^Bp&-+*K)H&ooe68J{%g)qPjpDD{g5{~+kjd7lHg zF$rzM8lWH)%0~@BR7&q{H>AY=rw>v@fCx)xu>qWbyVZ8X6+>om>2Mo7<#A}qwm#3F z{oC9M*NJW>X~m##%Mh7mO2UHJbxnMrAG5Vo1jVl>bRD@HLP591hBqUfe}Fh7v%Fzk z9OjBffofi(WqKz#o0g8X#4mFrl#3xzgFZ^feJg=Ah$m7d7L=bIIJ~xGBMs73EvGm& z^n9N^)zoAVQ6$_JuZIJ!eaI)kad(H3`3AO6%-kIA(q$Ka0U4f)n+BetO_1E$Ed7j@QAWq`aZLx09GW|ss zT^OXMv1hB{E=_iWg-^0z=-=O@%QE}B-<1hbQB!JHyMEA%(yb;=4Z2;7tPdO_Dy-7U1`%7h)}M9#<^kCH zqlt4KHAxbRH))38C*T`Hu&ucbLlCB%Bx2q_zWL{+ zG@W%Kgly<1?~|T4QDByDC16I4Y!`mN9MzNu|5~RNHhEX z&rzeZ>;ADzP;4#(S{gz2arW8iW897{X*KSv8~?RV4+GBG>-p!cN@XoZF`X^yEZcT@ z!|582T*}u9_Lw$?Tlu6{T?qh4g1R6CKl_rM`#1pXI6L|lZtuUQ9)Z6{rh+ogL1l-$jbhRUewQcQ6ex4JejU#HRy)alOOL+&-j zA}9pW*RqD53OOtcvF0vuZJF$^`}_1+uw#^dkAe%QniB6L=)09(WuRThIG)V0(wJMabd+1bX4CnDJRQfAp*!#mXW+#i@2eMJJ{S3Lt zl-fGBB2VLS>gzJ1h-wW(wvCm^sWpgzIhC;08p=O%hWf@Drby6It>NA(U~PQ(Ir_~Q zB!m%TaF%Q8JpVJs(8?Wlt`1x*t%0qZ=3{OD8xj ze$YuFuBH^f6};F4Hl>x+A(WfLAfW)m;k1^kg&Q5CYB+IwM!iqInd}KfB6Bw4*^}Rf z*YEeZPnQ^X0Y+xl`1xCVXCmIk*y`!f&yGcHEr~8dNvw@Z>}7g&Nks>nk9Hy;SK0U1 zUJ*y1=PzwQW-xa%biY$G4ZYKV7FEFIQti}|jzn{CPYt28!_cZy?fpW481bet`UKvz z3*e4B+VB6$C$yPpaE9}~!=ma`GBnq=VI5&>W&AK}aa%yqSGJSvY^YEAtX1V+sNP&f zsL=)xpv2_;>|3pi{+gy_Nbk4%e`hj;@Q)x7FFe*S*ws9pkuG0oTFqGA!bGtUv2lG}46CDV2s35s<`6Ef9ZQ z+6TqDL`B4rat24AMs8YQ|GIte0Vhd4P)OHWwrv@85FXpr0&`_lk{uyk?OKdo{Tno# zbPSE0-YPomr}tKUQ0cFwLQ^@=wvl^56tGy^I3%90v!|?Dk$d~uMtF{q)t8A}p*TwtD*$t+CL(#{%tT5+I#m-Hh{gS= z#mdzY*&l7BTG35Fw+pmQv&mNX&o;8?@=_+VF4p-c;`qw`av`Qo_A#!q)Ml6cf7|db z2QpHb3R!yiQ#fmP?(`53^9n}|NRNKIocU&IrPHz#Bp)G{m^o^!$Y&4hskqK&F$+`L z@|Yl2so#_n?|>WJ>e{%BGj-gy9vo~{>#OzkHkV)NU9O{d9z8uo%b4a%6kbtc}x~0UXBn^e7#*NZWmch%}UFCi$VXqce8BM4|#ZZD_t4X!vc~{uQ z!yt}Vj`a9S^g`4XS*3JK)x)cEM>xd8ac~1K6q2?C48w_iA3XQp{Sc7~%>)m$+>0lg zMo0g)GKwABfO#bzlcm~(pWc!=*|Q*836f4McO?NSz}yIc;ILLwHO6onyd@xzmA|t% zPem)AtyW~%rtU9I+d)3DrgkI3OSrwta{JhP2PB|8iY|T62o~^Wx{#wosVycqjU{AQ zPXvb?s?i+w^_$8;g0o<JvwvAv%?A7Hxitw;Qnq6kxMpB@EkW8artBow!w~J4flWc{oRUBtl{N9 zAJ1>jA)VYHE_yWe%+g0tI)vnW%2})j0nSP!Oe_~L{&`O`X$KdSPTA;4Woq0_8UscR zEzwrWLHd0nJE>n{Ez++O01jANQgj3?QX^YijkWtVDJ?wS`5CSae?77ztkyu_Z9zv-b-c4c!g}ktiuSg1U8^SvySY&#XT?%r_v~A;$88i_|`%kXk zjlllp8b)Ae%DWNBuSeW>PGE@JCa{r$V~Mk+hZ5~>h(k}E7(8oE zkW2YljNm$duKgR)QIdDSgG!T{(sJacwoB_*)-Sa5g>5mq9aP?c?1<752(-pR)*qjr z!<9>u_X#@f4QOjmZN=vp_%-th>@UH}p~+QznS?pUbEL7u$XxRJr2U2% zQfe;zcE%vy%PhjtGiACKyt>x1^D4?cF8CO~mtqLShs?yI`6Y&&P}S%JTE1iR&!x-% z7%p|5@tf^INLN`=hs-i#?XUN=R=M%WhRXifeF|4KAH< z+voH5NdPZ!jqTu|9{9|~W;Q|{KeGFie#6AxfzTk~Um``}_zH(80eRi~&oux8XBQ@S zAF2mhuc-I8S;uEo)8aIPedhXo2J#EMPUCC>I+n1)9m!oX&{_Apq_0VN;sWOHtxM}E z`6_|Y@}80@5seBK6OL`M4e3;i>)HL~Q9aaMig%k>m!tfAOp9BQNM^n|cEAwg>j?R! z@?D01YVPmo&;3w$IqKGm|L`^3NA{N3vhUDB$Rc=B*OPwrvr<)_EooWm?}fh~(zXeq za0{&MiEPV=K7=keDn{fgVk(28R8SMTp{mH(JI%G(Gg-z0f)1MtT6@stb<{X(mqa}N zlBxHwh8J{p` zLDO6=wTiG~rZ({kpGKGp%>7-xtpgKYliWb+o_4Q{L0Q$ zyT!80SX#&o3NjpOZB!B!CS^>AKpCW@6jfz zn`mygI|}C`nF__&>+5IfbxO-AnyX}rq@IFhUfXhF6t-p2;1g_qT|qk&M+32QlRI3a zc?$4X%9LB041_PFcrmkAQpS{q&MaeAQGC%T=8mU4^%PQ$DgM|?pK+1$uk9NHMx0|6 zfK($AP4v~=_d@teC($+|U z88F4xRG^wpPCdX7~pqNs6wJX;T#)!ukR^_y}VM-fVxly(|9-v;Ob}8 zReCT|-~XHww-7j!#woWJ9gU6CR%e#@v;DYt?WA!z{n$_aHry)!9e zG`}3oj2ttnK{Hlg+JPWJID414LxzCsxn)=_iaNV$X5AYO!f7y?GR(%w6k8!A9Al#V zIm}?a&EO*@&zx6Z>Z>Lpy0rHC=-aYQloZcKOY6+=X|R!;s4J1%(GqoUeiL$hI;(r* z=^cdkjq#o&Ao{Fq0s0qSZ+dt^%Bbxv^LMLA`AJn-H&6ATeNLtrDwyi9Mpe2xq1cl#*Mk zt$_YMg=2lrs-LHnZP{)e+#}H}j>orw2hx>tj}sJFt-_4Dov`+aQwrW_!qK%c%4F{G zuUbW2TC<8WfO)E>?kAY=IB`z2pHTht%v92e%b5YPb}e3y=|o^s!MF98Lp_~Xl0-P1 zhUrmv@d|{}|JW0{ulbZ~hR!PE_>O-<^R+sGXGL%q;NE>y~lA~;wz=h&U z_=vvC){yjERSH|s)b36;gf}wVO1}(veU}a}-0gkZL$wy9f6bO1LD^|Xf`yo!C?!?4 zxB&Amw*1T|60t2yydU3ls5;B8VioLn#(q-MWHe;odeR|5P`)LFY# z9i@0IuR5~v!JcN+R7wvT8zt2=xzPZsYc-wK<-+9qyyU4sA+)CWeQ7Mdz1&?(>INb0 zbEA-Fz~7o}dfqF!Y5AIA7Yoqb^eRj?`@Kjfz_uXoF7ZW>J@(6L5KzdgVILP)N1PhY zXF6{w3dH@tUZ0DqCDl7v<$m0zC%rBvE~GhU;`6N4pQjIhkz4yBEL!R2PSArLV1q&^NQ~=OC5BolDbkM120JBp;;;uP5l>Q`Vg8o=+NnX6HtmZ z;K*I!6mxhvpZ)k&THR~;%d5s3##tm(tK^6ObSv5vr%7U+IHASZr^HlSB4h_?j&3+f zzCAD{(}0ponun^7>*@x~Nz|-={yXN~`SVMd%bnDI(dq8Hd21{I3CSuXNwdXaQ9tFu zJ?!_mpSz7+J&swacuh{rlC=A_G^&pNFTBDe(_oo)QQqmTo`?f@W#L`{d{XS8h3_NT zt0palybn?qu!z4?^RZi+2ajZg$t<{yY-j(sT7)^3Rk!5QY1f~f!Q~k&V(Bz}6ar=$ zl~I-Q{z??(c+>d%F;bbDg#9g;gv~#1Y7zs9$U(HZN!X~uCzCLvP?H$xMm7n1`}Vgc z(N_C%lc*nuN%$2e&35Y$6_t_al+QbpSUUV5OVz(I32z$-B72y`_DVR`Pd;LHs3jsh zbEq9`Ro?Wzz<2lh^d+*fq;Y!1h1Va^(3+~A9`3eO4TtwV>!vGgddV|*Gl>|b zR}zVs3EGEg|6+0=K^rB*^&(qY$E^p}#ta`NYfK`NdprI3orNP!YNFZL!S}t` zou*pRs!kFS+y*$8v~j|AqJ4iF*vDGK^C)(B_W4A}$uiU0_fF$T5iId!H97N(yC?qw z>+P&BNZJ#PU|s*t2qfbw^}+aX&%eb8WB`U`B6%?OAQP2Q+-PasW>)X}k1~Q|`gd$D8F0ei&hN&D?3;Qop4Md{$k22)J)*2huG}*x=D{fF10g@?)`s<3mIgC%3*kgTUwC?OML$Px<1*$$${bGCypB$=kErvBj8=lhr$5W&Q4I&1h7NSgg_?p@0e|lt+tKJFJHW>OD&98P_;P?32(rZUxo!L?=)%S-5*KzmQj2=2 zzc(+^jM9QXLT-HR1?7z&S-ikI9Tn%%)ReR7E#PT!tr8U3AcB+mUBVis@oI|FP|0QY zP_J)%9}bvq{Ghy$au#gtB*Bw6eiWLfz7d}=M%Rwt;33I%15oc+N#FP@5Ow#)-}Z0w zIF#2}?;%og%?itzqKJSMX2_dbqjz0@OE)^^XQY)q8OK4RhXh7_ny;rysqaRnsWhuS zd_oJm4B_(C9eGx$qf9{Q^T(O%Fz93nnn5NJx+GK3C}?uEaOD$WcDp(UD_T8a6yc~0 zqvcY2Kk!^>Tot^INjFIFxBmN$EqxRPhr1T4#9;&1-Obs*a%bIPPIdk8!K7?`U7zaJpvd@20jtpUoXQ} z_f3v*vr483o!dGdA7u)~I#fwvt=7=vt~UI2jj6*^k1re&bpG ze6Ws&fA}lwXw7^(IJ)ZYfG5>WP^8y0wT|GR|He8t=@(9{BOp2+bxpneOh(5hP7|zS z5n--Ydn%*&)IL&N7@;)eMsa{Ofl!oLO%k5+!WF6c74Qn*DjxgqN-4TzDvY2(0 zYjb7?vyMw#@qJiJVJrHMa$85~2TJ>UAf43VnZK}(q9h^JI+`bF)}buZ?mLvb%Rdta z5hQ0#fWl@SONS6`zo$C?IFN4E@d_=rc^hpwk8wV#^QcCDvkaDX)Vr#JM|sM7K01#U zUcPl6_V@j_u?a|wB$XYi;ni9H<~~x?8I)`2X2=6u7Xd z@96y8(K-xw^q2g36NLeRH|24G%e?4npwEwA_1{fD(h|8|KD+}3ZPu?gr* zwV$*06K&+8RUPhgu;>EsLD#f(y7Gb^6?}N~*NF%)WbOklS;nXzk|Uy@i;wq|E%5b@ zA(UPLx;DK>pC(OQ_HCl|o=p>)IQ!K;vEvgu%OJvjl-D9|k8gFN(tDlG`b)B*Ta&1= zM~yhUw0y1fxa11^78pgM9w~OJ1rN`(+CFZzXphNfb{i30rOCk;iBqC8twaY8Wiu27 zAxD`iPdiDO-;!$ByNNj@K@)GD&N?L>@RRZhpT%W{Qh7wk3 zHQq8rIAIv6bK2^vWewLLg`?64qi?;%BIlpbe^gW12GO{MS@p!J#Uf$Ww4Hh0>9Ji! zG>qp*;kD8X!%n zWg3$Q-%g(g(%B%bMMm4dH;k45EviaGP{-dHhJey&7+W`tuH$hxgpsE1x0!BYuJ+rIQjsHjFKFotj|?GY%+cZ^LMxh=%d{|GxIrdRX!hUKa6i z1|h!}y|LgVp9z-m9s>!d&GJE+82*tu_p$w3(tJj$SJ!!A5Ao6j6vjSvjB_-r`;jzS z*K~xF@Qx&40*|e`x1H+!%Fu^MZ0%N>mdZWC#bYov8)?HD2h?9JKGB{H0qP=c&+({L>VyqzJ?2XtaSiLz%J2=;8V2a1Ol%I9^ zI-pPfM>zxRtM8TAMleBs*5^Hgr_6(7v69c*x)UdY@agYGU;L>{?Sle3TGgI>+fjeZ zTk|Xkp;N4D^QKo-txdv|frw0?1H03~Hj_Zug!+Tnrv^^z_&o7QA3JMoDrzgpy_5Y~ z-N7sva#oYPFYG7K7b)42ueA=#qGe0AWY*3^;cb|}V_SaqkIEswY04P2v&VdY(?f{N zB=PI|iN@3P7vzmS6Mr|@o0Lf8P@Zfv_M*|d=D~N=_aA=sfLDGdq9peW=l*%@lfWr~ zH%S+C{Z{Au>ENw1dE;Oe_L;N3KHaSZ;!=NogAS*hd??D(Ka)(DEuv}zWTS=B{Si#o&%O4%V-W}*3m@&3q|0nepyI(r6D*J4iVV-B9&zsVL zXMtL;nT0|W!BQPudlaB2Obit$pCo}6@-*PMr{0hTEDaSBEQPEUTz`VSs1u=5PO>$f z>4Z8kDc=P6i$YWk%l8`6_}07n^ z1%!5YER5ws5=S#@qj)`Ym@D{3#1MdP|^Tss@tY{UC*NWU@n(^7uK2vI;$t^8@IW>4%4wmhOWSGqj;(>#5mRqAty~$yzmS zaKE!#K|u>F>+9%Wqbx)+ox4U_0^pyP2l2)uTbuE`K}s1ddH-+cyjPrrk+M>5o9pO>oZ%p`I}nkNo0~)&31jBR=9Wke*aHz zYyUMO{JuMt#I3@#&2sdx_uQ|v|8yY&e{U zzBa3g$`(UHtNF&z=wX_U&YbJ{6F8kW+zw!7x^{Z=E=#+0 zYQfUwE(3hNbg=R(=5|uPk)tf#Sn5I1Yf4C>^daz;XG_AMzf(N*BO!4N^~bW+E4=zs zxqA23OJ+-(rQIvZ{ta9%cAHNxU_2x!vYVLgXAPme)+zOly|44$N7j{Kcvf@RyPWY} z8~dfDe)|oJ8m*jCJ^5c0`h*e2EV%yt?A2QCqyG0(NHHG!UJb9l-yBojBkMTw>fMQ}Te8yI*8{XKb2$X?BKgcs zFIaEF3lL#m^<~R@koiFVMO%M)un_hUvZ{tQRj-I)x}$+gg9GXGnSKA>$6VZzdH>kX zng(d?uZ8U|n#KK)zX|r>`Sjw#KGtRnPIj*_kRF232B_APxEL$=O3R+%*|2yOC!vyF zPd&oC3&#$qLX%qVU-ZePQWJJ}>b=#iHx#2eYsW4na#9M~+=4k_r&g%em@z_P#H#9P zu-96|ZGHGP0JJfOh$%E#djf3i@0i%1%n*ejR!hjAC-UrCYG==L2R@rS;M4cBj>EY| znKBnExc0wr4qJBxJ-)!PdH3e)wvbk~7g*X{v~A3@FI*h)#;_o_g_fLT;caws0-t!) zO;pCW*FU!guIAe{-tOPFPdDw&CGeEHQ!;{y50`50bVM{7XkN+o>F~PrS}uo1rwqf^ z_c+GUYwhC7Vx9;?6v;9GZ-`pQLMnA|Mhn%?;yqVln{H zqf`oq4IHIup?|aiVp>VyP7cYd2QOC(fM)}LcB?I5hEg!$BMdai2uU3rg7dA0y^V%; zmCYNIUhKlWA^Eko?RV|zFM?G^zqdX8_Uzk8M$fg_dx5{L-Hqt4p=&RqQ-hdA@dOqH zH)9g)LWX4_R+Yj#CXr-2pX)`ozBe;0CW&m*oc$0!{Sa=K&`cd5YSqZGNJJ1078MSh zp4!6e&ChRy+poQ24RL3LB?6ghZCTs%?2r6(u~oa59#4vOuVBC^;j5W% zX7m_w1lrMUX?YNwWqVv5L5sco7u#9tk)Y#Y?C-ZDe zc-~1{>aIh2ZwrMuagLqB;Y-Szc)JU2V^R;mNj$*5Jo;W>JVZR0r5 zOqo|}$a}lg;8XGF)rr(yI4+GP|Hd+=KEr__Z+wPlOvK=9RX%kfJ^u-xAt!j-rxkH*ey|NP6swy zLFTtk!=4ac>rZy4(Gys48e5+&qHJ4Q0y+)QSP)T`okl#5OPYRqG<{-+&m`t|^5cW- zUrnQyx4UV0)3w&Sz3FOBV;$f4)@e9^W9l?)UHd20G`iC;eZdmS!>vR3-f6t@E|W@s z>ooq81_%H9>i;jVO0{)!>v#S?cI^3z%=YpX(}%c?kYbfDtB1KV_POy%Y*Z}1YCpmE#mTwV+74W*o zClKi>FyK*+aspsLQE_4BkMG;N1TQZV3Z7&?!6Ix6`WW6;)dDGQ1z2HB!tEXC@8}ZP z72dBe84wJ8h)u(I?z>AP(1|ZTPT}!cuR|kP!CQvR zwMD>rN9C6j;)~_^+n{wlPO_1@_n^vp?L!mb^~BCicSh};s0h1tOILwWp4acGff2jG zYvsWcZp_zLoFUq@GS}L`qpbm2Ppm{UQQ0pm(Wig_xB88~63#92dfzaa>+$?~te?gs z7=KIf>p*BS#E}+&!005+3*a`#CrB0gUgOz+O@+qWulc8;9-C+cq;#K4h!K?R-R}A? z_4lNWk((YoowrVEur-lKi2o5Jo}>$rooy9t;q|syrSQ++3Loo_kb%GHgYZ#M!Hb1^ zZ8^6dPy6=AG|3?Rge0Ji$*FV-g{XO{6AH6ONj?iHxkMXy?%#A6p7*+nmu1+);QJ1tXUZJ zBHsXSov2yT7u60*aeo$NBpV>w2G@(!Qyahi!~_t}B?Vrf+6lX)?i{K7h_K?=2Fc9Q z*bDhLg@1lpckHl}4UXXanoTfUpyn%iw#mXuaSxKszHtO@zyE?GSi-<>`}8r*EZ8Yb z#J^}1aG)d63in1(as;!3JpuRN2ohiR+!1(KPvtXZ*BLt5=QxqHtMJAOmU=U81wtvp zxi$`4B}c#xGKAYWO?vd(KX$c((fI3BI@?^go6N-0W{p-*8VmP_6oO8$)!yQ^TYRjH z2+h7w^}hRUw=lQfMR~KO(w396WC8^KRRZ^^JX>4AS^r{C$(t$vD&hIyI54Ll-lc5d~Tb(1#?LA^eu z-;*JQNK6h^N{KOjeYUme3iCjIl3bfCE=g4?9Mo+N?_RG}_GlR?B@gzrM}xFMNeW$z zM>@+uU#*y)mx?bqK?^7Mt0!}|S87l(`k`C0fg~5hwEGjt#_WDrpQ5xJB~xiB1k5PA zp#ol#GZ(s~VFaJH+ zWCV2V-4vdEYdDpMxTB?$mQbsN3W#fmnXOHg!*0i(T{^CdM@R<4z3M;M2in0l3zj)! z{CKoGXkh{~KyEHI26IP1=4(Vd34*921NGiCL0;B=?lz~v>#w=bs8~&n!G7WD#!xEX z`n-D1sPAwe#t7N&{+%%t6DIs$@BD&i>MB-*td8&nc2tw13ywZMz(^R$ntyCd?*azIGf`RYrva?#hOGY_N+~b%dR(X%#*1&6q6dn^t zM!3GxxlPZKqL9)kl0v{aM;R2n;&mZWF``rBD#y9vBF}{HX3J%2#T|U=yM9|K>H<7DDuDJo2&cd#Gn$JL=(C>H~LJf8Fa(fI_Kz-U>_qW?H|~x<18=f<+lox@V|2cM(2wB z{q~JM!Q#j5b4+jE~(#>=nkd0e7XxeOVb zCPzPLE1^Zm{AwmlZl+)`q5onb{`=}b=vAxTS}IlcxMLqb&+S_qi}NG|;<6BHR03fP zB0-*H0%ejqA==i-0gGs45<%R-Xp^D9kcKd7$Rtpwvqr;Cj=)Gp2L}J5A_;)1p7v!N zUS;Xw{$8sL4{x;*GR7f1jz0NBWNVt7J-R*Hps2A@>@w!5gJmtg-sX2${!!BWLPFgU znfVGNN+giw$fXSG)hKCg6s_-e+1<%5MZZHUxwF>M)t$oSInQI2H4wh(VG?)7xqg+D zx~Uhe5z-exS~1?v+lL%foyvdxzhg;J4r0ZQEW;E!O3j-azPAl9K@4&YtWyWnLa0|c zjo5N%G1;@T<9O9h(vH;KsU|cgBPk7f->))627Nx(^~@tzm+yn39G&EX0Hl2*dk=X; z9IE}Mbe9Q-eq;HH!;?TmC3ukm;q8|Cl2SEg`+a5>n}z@xVU|!$o@=En^0GH*m^iqs zXlLmfy8yIcvZFt0_0axK4s*d#%{vA!>ZcozM9E5;YU<0P_$Ifw{|nx*1I&?js* z#&5b@mG^ux4_cYl?HP(eypp1=#`zzjCY9ltW%isrAVKAg?W!m>zu6p>xRaSAT~t>f z+Yfrm6Z+x6HdYL>QUn95@WmW)UeE5~dt;WRjJ>(%))pp&B{gcnhVi<=C+N_MdPH5G z+4;c+jgm{%1+w#bd&>h%);^3?6K~3(E%i?VFmm}v; zlT9(g1O42w-z|OJItkLSiO2oWKH?yzt?_VR65x9u7~_GpNeo-Ua!gk|5nlCaZB^N| zNZU`?w!<3HW{;Yu&r3^n-jmSh3;f$uCcK`=)4!j;XS{X~FY?kc7~-8oxR=rdxvAT` zolYs7)Fc+;Y$u`X0icR9C1v%8$6BQkP8N znQYQ#nwQW_u`BesZs6_|e9txV_K2;)z{PFb%h(@Zc~Pm;L)jT-M2Zlfg#@X0hWv*) z;{ADL@6-@_a_I7yL{(pF9Br#V!yz3qMguT3Z}#Q~QpO?y-~`Mb^kQlNcea}=)iSF@ zk^^r@Cc*#uRWA)Ptu>#mI(tKeoI=fPLq*EWseizd9?#z+ z6gh-6#ccnMxwm&ZPnGt#Y{Hyt*5E!?6tN`ykH z{WDppw{o15&pYOzg&UJ~d>=96u=)`tC%L#a1Do{4?iU_FRIcdyJvIkP!187QBcF!*({O0U0s ze;2L`N+l5>-eUdftG0>L^-lK`?-o-yanJDGJU2Kd!p4W%)AZc%{XAJs?mxgbXuI*g z8OY-tpc+zq5?B*5t7x$r7^<<;&sR=(erp_1N+O;w7GgYn%ha4RMKK(82M9{Fgl5M8 zk!1&ZeoQ%mfSYu^R)F;Di9SjpA7WIr$KNMFX1VFL^8z91GPUeIcM3oA>v58VwuEv0qm)@+v_KF|C$Q5D_Gb<~>3q{2Y3 zL+#aj7e!Imr9;8aSRHz{g%+Wf|R=d>h1Gw5V4(24bg_@fe$l zDfdJ1w+q-5Uk)Qaud2PoQTr3!4w$Yow9yfKH#^azOx=RzxT`<%i@JBG z4p-1pOTh-I_n(^#G&L?ZUM;G!fBQ*ovR#BCDCzK@Fak4?jlS)Ydt%krNt@K)E_jH#l1U^?&`i zpq}l>)?;ARuPfFcq!b^l{f#_I=Gic9)^+{7l2_N^JoK*Xp*|3DwsO0e#rAsh@-1T^ zP=>kj1Zc48fv8#4BqOV1j^$k@lcnqNB!nct>552OiO?aVoJ;-^QhI3Hmi znKN=boKWeGm>=UcvP{;|_!=aZDH}&cM^`N8#{?ZE1`Xy$e0o&fCCLN@9|Y9&y;`NN z+5+@ntrm%6mM#ChYAN*NmZuakv1kck?QO;Kh6jKgwTbW!Ng-!ul+C$KZCfv9D}w;+Mo{p2$VO3XwE*fmnW{i0bozTh|?E-$#*eHr|z-yzZ1f zK~t7Wg@}z_7SYCNKFJk8@=>!ZvxxhF9Xcj?1I$OhT2enJwFf!&!1f}Qj^yT= zMXY@uJ|{6Hv|pzdap?V|gcce=EW@+RpM>eCgu`qS%}xHD8}Lq`HJc?h+sh!%_riG1 zAkNT@6FlnFAa?z9!bKp(t0M_rs<0VEWw(_(2%ks*Og7BRojS#43X+X`m)2D%-5{>x z%~jhP+&5W!c+nt^$ESXQZD+xETI2yej?|Y4fvLNQLqfcnix33s)J5zPDid5p-^#+B z$p43ONetFXG6~gl`u>u6iI3dXhvu$C{G7{#^8# z@C^hgbF=N&wRz(*kpNVr>)M|b=^#=w{UdH7shY8=M<_XofzfWHFXOCJN9Auy;<=(f z^B(0P55A&M^y;$VpN$7@^Wkax!13o@dx*es<`C7f487a5*c?Z%56fe_M0`9(y@nAy zx4n*T{?8{|5z&Z>Cy^q%KiS6dyStHqPM?KXV#A*`%Jo)PYL;@S3Ogs_O9!us=lTTH z=qYQ(6I=V9Bj>?(Myx3p4z+~#_kC;y)I}m`cfTKb)R@xaA+gmNp3zzXKtI30tKWb4 z**||irmLN(%@A91v_y<18bSFQ7Nx;& z>}nR!df3|4mD>9s9$82U%$ya5c=UW?H_96Z>s!iOmU>aX+iL;g=@22DcJGU`epW4_ z9)CJ1Gqq`1JYm=o1J22l!Fd#mmo4nLB;7+g zpuVp~Wvk}0J?!!RHTsyE01+tVZBwCaizT`S*nB=~C)!IIhG01VVlD!C<2|IS z16jmY5K&6Q!XgTXsVBSC z4!B^4&9}_*2dhks5g;{$tE&0^&qwf`6b1au5y#6e-+Qdo$kWF3Y4Qb2pVlr+Y|^j4 z$wF5I6#`RBgsb7+a!}9<0-mPH?Av6zhD@=fv%}vRXY1dm-asHK_E4|8p8X!?5U2Ic zSG7Dz&!FjI^3ixiCK$r%EFJ?<&XjQ6**noduvjIOy>4uvPm?MyQEkK7fwtZs)N-zYc%gj3A zNRg>3KZghDi%1)y70tUNq?+Hypn-!KvQLKz9Q*lGmi<$1{E0eD+~>V(W-~|a)%pK8 zt(lYYTMS;Y`$$Xidj3-*kH%X;N zayGK=;EYS)c#_^Cc)Nkd_JworP;K6IJDF24^kr9jS`BNVs^^r;yJ3^H(P%pKhTeb~ zCDNAE0->M`#Jd2*zSs z9w&Jpcuu|>Jg&;~ZXo){eJeG4tjkQ^Zs2gp#TdmpEF>vKQ{BW%2kLh6S#WWa2ovht zMCB(%#_mA(bDRjOf+>^*ts!y!Nj-R9z$EMeVi=MRZ5`6H1!`U|Qa8!z^5(nr^pbhEZ=FKzZ8_8S`akzO?+4!gcf~Yh z;ur|k|Dv%p#^xL+UIkzD!^f|Ad=d)h9YYijT3HuX}ZZQ{o;0hKbs6fF%sb*NdFx3s8(* zYbkgPHz6P3YqCSBhR`gkO*K^TWpz1W!)7;oGy_$%Pwj^8f@pWKwT8RqB^ja_3UHhYW~F5|M&_D0#IjZx2$v03ap$Bazd4~u7W zqHAH>vvn_DTX0y%v#dYY*EILmCB6?mfnbF+^ez_^qdmlm+VK+Iy~&9 zM(L5wQ_c6}xDnoLS0`Ljr5CVRCy)oyj$>Ql83+^=~mKL5B zk~~_n0JS8}Nh#6Ph+j)Y_ct~<%yZS}>oA(Oe6Q!}m?Bmx61a-=NP%P_;%3S}Mj6Zj zkNAGlW_E2U2W)cmG>w{%dQ5rq;GVTK=O`_P+kNV5{S#{D-uEYsN@;Gc_y8$8{|Rr? z1W^93+P*AFawJFgJLW7Y(lqXj-*^8zJsJ#vDHKLBtENY4Ql>pT!kxBYS18ur^4F+B zyv47GMlNfRjPR6(srIf8FTp!%sC}kGbAd;t%f@+aKc6$o&eDcMfi@3h>zbV09giLQ zoz>PxAT5Q1JSibDhH;Ph+A;uESGdDf%bJw`bm;Oy0ulMd~fpWAg>CA>-O*;abYi{L%bX zkcDd)4se;L2#?dPOpX;tWuRWC_6`OoG7yQA-h0#Pl3soQUC7_Bc2!7atNL2)^BA_u zfRxh;RmU|{;)z)qijD&x1x$qcqKYHf@cBLCwl=HSVX%Z@M<}PH%G>L!!?bk0K8hnz z;t=W{13=#YQGl2NkHaFwqS0#{z!sZhfJr!Q*M?Y8OgPGTh=vbRVgulG^8)2!a`Am>r;%Wc6MT z9rBb;A}h%Hm@}R&mhPX=fQr;9O)F}gE?ws`6sJv*?6isrW=c&8oWkXSEh8?8W1W_t z<+bS6dPmf}c_@3DPjKqxYQJ!~vGU|wSsPZU2De&C-JOeajmquTrtNPgHN+k*nyKPB zC#)coQKf6fRA@E&EDM&OYjn7`*hEP*kLkCec&y*vDE5Rw>2GSxp&FH|jOu|N1y8scZ3kvNK(FziHZnpJ&HvQEWQxj051va}LsKsdTzpRH)3T zATGyp{nWzodx4^{?stF*G75TPdF=&-Ms#bEUY^*qra(+9OZ2K(LEX##EJC>+5TK8g zI?U^rGS8&<>vtqJOG5Z9Anwa}h0E{OP22q+D;Yjb0 z_WG_ooe1iQHqVQAI3BZGWH@&!{V=?e8&6ML&AE?vN0Rg%z{UAZ1i*_>=shkh0^9M` zn81T4m~tyJ#uwsxejt#;X^uQPgf0gEJs#vg5rNV~;0~>U^a^DlmoKKw$MP)$aL3ti z_$wKBX^!UCLmAj$7%lYs7TP+Of%R!MxOSC+HGpoJE05aFhcW=&zH-M;Vk%@AIQtz> zyF*P0Lm7ZV8C+zLfjfY>zN|o`i1bXy0c2;T#k0LB%fT3qYw@3GQ8V%BOkO3O6e4NX z;%L@_!CT18s`rg2XR1zYTI#y)|AY67^LN*2=o0D6Gf1$onv^PrYmLZ-=se%xgqK0{4Kl@*^NO&_^sq=Z2SiT`w#f8o&4%lexJh~vDi-1*vm zEHXg3Ikce;zHm|^uln5@Vpa})Kn%C_t83RSfnY^o#F2b}hk;~-(b;}PW%nLY>f+>H zKdg_9^6(FM=uW@Fq~)gu@ef!RW(7zbaXj3M*28_EiR`**!d!XDNSy>t@qINt~IX&>m~KbC0a(jFw;>=s_=OMSGof&rrx;^`wfzCYsKZ2 zj6y@|5ZZDskx8h9lRIz&Aw7j|ZpfdeA)$oxW|}F)g%6=daqcA{sksPQZ9vfZWCM78 zsRfyb+dOuzsi4LYN(8e`vs`u?CGWm?Ae6Y~-wRdb9WZJl!Lo6XYBU$tcauTT&E&+A z7{AYWU_{+FmstMcGg108&8Nw<*0AUAu$|G3#AM1yxxx2?FkF+=C|-viFiMpP(Qp(S zr+LIbpz?I$fub5#%AJzhY#4=Jvob`lK@QTqYf=l065>JXi6@q@-pnYRaOhCq9-Jf3 zMFJ%~_-#gVGe;KJ|7ao?;&QmAq42CKnBy-`aDBG7WW5<*l9sBkjl(bzbOrk)msqXbB!!~a$Ug77tx^v=P@rLKVp1gbF{og?2*RK=(&)bf=e z{Qq18LIxnU@r1S^OJ8?r96#@e2ryp-pecs@60-J%{(6s0m?#1(a{cq5u_OZb`~O4) zf+c%vwi($~W)Mt+$e%=Dd$>95W7cAEfz|%C5D3)!e;_Wt4hza<1P!^cj#1F9Z`;JUZwoZdJBypSxq)%c!i z;`eUfy$`d}l>bX1Bi$)REGH5efUyG_YBHGqu%ig>MdS|*F!;XHkb%P{f`OmU9Yz7< zpL5#WX3xW~kRU;xj%qDwHHLmtN*vxjLGc{@tawTyW0kn;k6S3P!9zS>s4We+Hi)q2 zi{gMY*_VmYr3G0c3E;bxNCGsSQL${}G|@Sg<7eI9xvNVnVclx2Sf`kr`vE<5;M0mF zfMJaCB=V$~Ykikz#w(;OJyh2R`%Z2uR|GiA&D1}f^+q3i5Q$%HZs9qQ*g<VXNCxB74!Oyi=FgK37X07oF>1;7*kd!Q?gt(>Y1 zZ*?{s8MfSv3g-0;A@hLHBqkPuG)`y~d;v6u2~x4dA+M$U%VMw|jq>ij^^GcsDBqqF zfk6hsY9Zd@I$j$)5UIU|+h1t@%WUc|F}mo*4A+?1YR z0rPtiD|#xtt+w`pDx#NO$dIy+!9d#QJzxb)sxvz>!aR3<{#tYI!hjx zr?~w5#rMVQPyA@%{ZPc|a!}6oXa5|EnS9fx0Y{X2t-QQg_Ri_4Lv}A&1O9v_TWQz6 zr_F(!MXj{wM%Ay6xyujoM~-t6;R3a|e00yhOfnUPT6NzwSjuoKIHS+7G@25#HL$zG z963D{={^J=-efLwD)85<|3`(Y_BhUvPHBeJtIrKhWWG2X_RI@3G7Yhvs?ngIe>$eM z;)(YbFLn`FZv7yG3|{9u2|DoUz!_{wiTiM6 zXRaH{(5CS@)CUajcOh7}^0RI4MdMn|^K8qcX*a41@La#rhUxqfd`Htz1cI#1mpitD zP+5_|IXupKvvxCWeM-yaAtqD|)1<@Y?OcJ;ic7z8zyNs~C3%=KjOVp+7dxj(BI~B2 z8D)jDU2ok%MYgL?WMLY%$28IOEYD&Vv!Zqua1Atl>Z4y0lP5j%X=_q8N~ZHgk!|-t z_0wz$3LDNw-zW_@S8R&aRalRkL{I{n_9BgLq?X@W-L}|O^M|v_(2TmIY`V*31v;pqe&%q}T zF-(+!<)d~`TF#;VcQv#e=LAY~y>S4T^xu{XrndoU{3yC;jY|D>YifLknYWbq`sm#= zb5_frVRRu*uhW{u)~g4WBZwwas~SZsZEk5h+=1)E!@U8JtRAvtJsbfjNOfS2AP~NE zPF;}2QLYIb&?yN^vB|olgswl1#x&#>)>v1yIwnf=fHlzUT5CmX=@Dyi!U6HIF=Eg> z*Sw0ki!lDi_b$p4?tK7y^J{8TGHB~C)LyRX6`5ns{g(fI{UY5?%>(MW`{*QUAQGZy zx!}RPdp}mn9udZTNF9g$0#NZEXmTE2MwJLWJb5}!yD`TPVW+XClPgr3My(%r!sCFl z3i)}>Vv012SCApBX)rR^km&h&)RWMnoX}cASMfP~SKT{h!gClz7s%hV&t5L7;e&Z< zF~#q3T3d!NG@K4d&eZl3Oq)pVLtUH-N8sI)6r5iPB$NWLNlC5lL@B6p(52uCHd1%$ zvLuq);4*ac6Rw5FrGfwRZ>0d3vg8&4Is8xx`eYQYY^Fi>qhbO+4-^Z!7+h3GYl6^q zG^B7D^0&5jZKs%EfWg_`_fE;b7Xy!=3gEPJ#xPW7T624EPB$y(33Ux&4GL;Jyi4yBx zznh*>7lz~5fA;AeZj=W+7=y!ZTq!aPx#M+&pY8;R2ODFmAItVEom(dIOTE7ynakAk zJ8DbY`}=8*Hg(A|zZDjxjB6WUn?SbclGpAXqo6_$y7=3Tfk9Q3s6NS4grJjiP zi%QRPhjM5)E z#?>aep&$&`{pR&KC7IfYFjY9LfP&^>$6tjZBokAk7dMtsr$Xk9iPh`pLKjp!oUyd7 zu33)RHg2Br+n_ggSb;6AjmrZKN`+p(0h~{BIGLcV5@D`D#FmDs@F=$oe1~r+6kgF2Cr&naHob#|Ct;V*5uF4(|ip$AD&2C$Ob37u{FD4ubCS2Ux-17X9i*r`HX3Vn25mz zzBvO%Uc_Li@9Q-OGR1)y1U_Ld=<%!uz(tW59A9N+vU04 z&4K(zhG5(9lDgE){mbS+#b8S20Qhwnah?EZ|J)qN`xow|2Zf2h>%UVN0i#Q@S{ zTsIzC1AQL12Bjm1*ttY&z;VTB{RxVbtw9NQgYFLFh|wCj7|8FxS%d5Rxz{JbBO-_cq{p6yc24;`UJ0lZy!`Y z?UuFQeQEjPor+KLHEOwC@4AQWxZ4oap2bgN)Yzs`N5R)Dqtw1i?Pr`NOe^PIr49>b z9qkxscb(iOWV$WRC&AOu<$s0U>E#aT%hZg{eZHahbqYP%jNSChKlRBW{F+1R6hag8 zOX?vfhEg`Syq*}uCSDOvhCafr+vN{)1&IYEIf)XEm%)>KU4HHfxtbVVj)$cbE$RCqAM?0^A6?{QFlNkkI^;9AtO{ z6At3vi4sN-vay+;Q^Ki`TOVfJXgTsDc`fm;6Lf-|A9y|1`tY1o=wZ}T z{O11ZFRs1YIk_eT8%%|4T7zuR%%}%pQ^-tf_l$J*(`dV zo0l4RyCdrt{+g%zqssOsH3z(5 z6OOXOF?`|!16VHCO2n4lI}iQ9@eVSZ$$TzCYhwhK;eL6z2!sNp&uB4q zHz%9`#{nnK0Bi@|aSzS?p2(sY^hICY6}tKGfvJ7!eAIDJ{lQci@)PiWX36G!kx ziUS-<8jH@UI3B6|PJEk)W*J(*R+0j1{(HVBoDt&BOF#;eas;k;fe5YmV^&$#PCe{w zM>&6lNsn*JV?Jr_(3f_h9c~VfMWk;Zh`eVGwK8m+1YHQu+u?Y}3qfHahBUxNYv8LH~EF6ZjU{?l7{hMm-@h0qtPdSNC@J?sox>Y_7QVI(iQo~`F`2a_u zqnT0)+*?BSZrkK}G$6LRu+tQyadsspC%pGPkWak2dk9KfGDIy^8b#q;zTyD(^_VD} zeLF;O|FtN*0E5#gf|t73ltlr$)I?(mbr@LI$u_Edio!4!U_W~#3gt=PMy89b-Py_E zvlxm3YS5`U;{6-BGvosS#H%5VJraecfukrq!_;v!*2v9kjNN4de`F*IaQ|=*SQO;_ zEDB|s=jrD-zXAlFYzAX(O*B@V16FEqUwTK;AVWk2aW4EPc3{djB(`7*ypkKsEP<6+ zdGG01b|;wO{dQw-R|~spI4MN+Ft|lS0)-R;G93h?&6r?`D4%*jR+{5`*r$2s3$60VCwWw~9Lz?bX$$o)gj};# z>JK+SRn{|ocu&;Z!z;dAIpVe$aJT^!K}Nud5+lr=DYk7t^y38xc(!D3S@(e*q{B~x z+kEAts!zn4$xdvrQB1}`9|jp(O)Z9@yd2OP_a-ihG{?=n(4+}4brOEekGH^h^dnPG&H z3S?-RraqN&nAez3hGu8r$&a2FCmpNT8_EcLbCA@(w6hZ!i!)&FZPaFY*k4YUF>*gC zHBEQ1Q_?bXzj*#EGaucl-N&8DAVa+C=Bhtc`uUqYxY)!(4R)sO*Mu{44C(BKLtqIuZhZmIonl z%wn1|orS<1+AkhA?ZOu$YxgwV+Y;cb59INni{7OmlI}eYNOdiV+=$bl;`Sf~&Q6%d zL&(uI+E=+2?elm0d^U0KgK(JYo%IWo5IqRN@}$=j5SV8aG=F!WpDs=#q4kTy1LOJP z0Myropd7bq|6tPcLC~kIV=7d;c<|6i&T%H7hwk)iwMT%&d5}qDk?3VbH^w$GE737pMQlLGf8c zCm8uY54N>AiK=j?C(7YuJtnWiO-hsC*dcx0$AL!CsFP9NanN<9r)65?qll-Y$p)k& z@24%xjwHYo!E*+p%7(~=|70K=fsqkqV-#m`wh8~f#V>Nskk!M{(<&RWTmY=Lj0Mp{ zTrMnt{EckLRa%~8BRC+8<=AVsTLR7Um$GsFHbyaP8Ro{TdP?gbh#wiAY3=K0#)Qd= zs6(ZSM$w$1BL3FjE3APB{@tQcChNEy?Lrj|5exqb=1-qRqlwcwyssh}M__4hqM@$S zOC10wNxRvQYg_EAjQv`#X~kufSkr2>{EAAk7N=gh}$mYV074RW$xI;dt29R@i|GD3{dL-71~# zbRZfBrqQZO;Ly69*Zwnq%`Xrtiw&x&1XbfEbEa72iWxdT3V14rx zqtZ(HQmG4rK#{7dQ)R{LFVLa?_lBY~B$fbBejHE;!BXmm(B7cpy?^GbF1?v46tS3N zgbP79h(dn9C6Kq#T^pwGV#m#N)PJBI&@K#UC`Q9n3UvGgiIy~9F>N$LH&M2d^Fe8@ zHxt}Wk&kHLbI!G67H*6B<)!*{Z9`$OBrI_|^cin)ZSKu(b}Y1$bCH4rzFWJi`vdYG zds&>vpdDJ z_ApNSZ{tAi`Ioi+!;`8W%ZgZ*`d9KP!U@ly)h2!oJGFGSaU*|Jw+J0Cc}-3P4*ipD zIDZ>5&wN?Co|pZ;{Db4I0%K3PcY_RJ91k{S>a>LEq3Kb{5lj9w!a-I4J4=`B3SiJ! zXr&B7?8>E)2HfB2RRi%i3$PzYcdH1b^9~>piA_vo%=NV$>Zok(G%tIqOI3-JtrcZk zvti|4y8y5e-Uo0J3AlW1YUI4tkj(<@SXx8Ys;W+ha)th*|=MMG>+6hqX5cwgS>YP|QG#bH}L1<$oQ}(`+=fNZ+Sp2gpsU?DS0K}j zZlm`G<7i(s@A?Pr0Ib#CNArf+a&iR(Z|J$J;?ViBdJ^DTU`y6R360F(J591q?&2g;+(O+PSAK1!ADd8h+}1?}>%&GXOpNzTG?F18iPQiuSgoRT3qXJ3w}c(K6B z3BoWw>}r#*AjB|37$sSFbWZQY*+Kn8bp!_D$B|i`zu&?7a))P#{h?iu6Y2@VO;A3D zs(p2qF-V(JMys-gdTs(RoTI3&wBF4|QzJ{{IMI0Q+|+ZV&1Ccx1vA@iBT?^kV|vHOYYve6KLeL58!sfg z6^F`}aLqjuiBi$Dv?|KdD{}^1ux~U+USt2dh-KB1OufDOX_`??hGLx4~&pbUGn&_P|%9&%dVwx7YgIFqnJKOkhr$m!CJE0^ezXuUsSY_ zwm+W^r(L*&h))}#Wb$-0-jm6;_^jY=b}`s1if?Kpzi&Jigcf7!t28>E1{Uzj3G+qk z?(2MicaSPF&CnEsyz;35lvBjlVlMo*S(5s@l~3V2;T188Nk(Wd;%YfD^ZZn!b4i00 zdE6h!*AR^^zwO$JF@tpfQx%^G>ye6QB5gL(UWod5LL$57Ajwa--X5d%+kWlK&whPY z97rsgx3cD~TB4~yncApo#R{G+cqx71amr$QxWgHWo1yQV&p_!8p3#<%O)fU|OYs=h zT`+lcGP$f!A#R=l0;}cNH9-ALTDZC>Zw0NI78#kic`p# zeJ%mHVMoe;N?rk%sP#S;H2PyH2&bGX!c@xfoKR;sokR^sxuUei<&YQ{!ro9|0A8JJ$u~b~JcHVk zdn4Yk@b%HE&FuNislwERTkW0Qp6&#aU33SiHlu)Xlh}phztOWnbnSP4y%nR)27D*6 zE1~22rJrAhpGZFE>_ZuegeaBpXkuIBU$Oj=iSd+193!kvik z3@9nlLB(fQ6nt=rL6=6iaH=IzQ^*L1Qd2>;Ta95C%rUdw09(Q!f6Iv-W&sOq$2R|I z8Gbr<#metfQip5X2^9yhWx4jbtmeP(UK^zH;4DcDJ}U`n6wM27pE%9H!^c)tUUS1C zjhSVe$wbuX`Ltn-)a=DPgEE`6UwbUWsu&y-7H*HU9WMPOXQWY1@ zmK!Ab_hTb(!D(bs49@G5&zIa+j+-!*EU!aW$j~VDN0*5~dopbS;i0x%8{t7}aVR?j zB1-Cti&>qLhPrcoGRC0z?a^dESOQszIv@739XWh%NkK&Fr=Vz&b8U<<$7${yByhy& zdh)R<$#l?(cYybpEIdCg$I4oyJv~-79QF(_Z0RG=HXePPy<1Spd@cCfhYux!wYkk$ zBT{ue?(27b5mv;}l;Y{EOK>d+6upe)F@Lf&mB_w3Gn7UFk%@IJdvD8NhJHXf>YEUWAXlfJrcuG1=rXVh+Kn z_OgZIft`*m?Xnef?PZr43dkjBDI7x;5D4KE+q((h#_YH$JtJv9-mq$?cVuX zp8*g{l0%XVR!I)H>O5Jt`*BR-1~mj9KPw#OCGs)d*GaFN{p750 zF+_H=pL88{5-XY@;#j3A#aS1B{;`%7F+oyB=r9DP%-ZMr4}QW! zuF6?4fr0#p2bjp^4G*#vZ_`s*p_aPhh?o0+b!pj;>u3Lj?QsEs^I%NaYyGtTIu%Rw zO4=4sHIpN_#Lo{!t^u7eY?rdJH4*H}OK+E&Z~`wSq{C`YGh!*@G(B=oyZM-`WkTa} zQEDY9jd@HLk~sE@Y4$LJ*+X@AhV zb-!XF0H+I^;oz!-peOo~-Tq#=1n~XAR3)$!^4nC5Dn2@}DD%Q)ZS#t0V~iYv1OYKM zjo4Y#0Vw_Zlg_8-V>QUE8qp@$QJ(z+6+buUP9|Bd^XL>Eyp7Ya;qG)I4I&Xa?E}u) zD);(;$1vi_csm{qp1#q!FziSYv$kv6Vgp2&E{L}AG6}fOo_mGy0?-2E60uMF{!`K7 ze*@85LLx5Yg)s}yag7TAU~VJ5=&TcGC#UP6Nk&Z32x-C0_a&3v|A5Z|g|X7E8xoCi zr$XXBWj0eac>k13QnulD!dW)VPRR8|;;@c$KvLLG@E0xxr14U4gzu$&F&3-Pi;anC zxT2J(mMM+PxQ;lmg$tKNk|t3r@EG$r6L9qiUf6H_a&155bFe1NSZi$ow}U!!63YhR#4xK}+IHSo3z9a;cJTwz)V!qB zC9wpMCu*~4(-5{!TOx_8mey8jfPPN*Vu9!`!OaLm!inrOXY5HD*6ociK&3&-gh3jb zJeX;yuXl@1F6)la#$0xZQ}K&>&1)SWF%yhp;2F+mkyi71vNQx#27e#JbMB+v0*PM}bOdT*m zuC^m>-499>M@nQ<=_v|+`R27=_I#T-9a}%%*oH{DCDzY#M^Nhc0R)AJD^U({hf#uq zGM@q0o~NdHOx!r$j#CDvR6b9$aEPK)cD(eg8;b}3eKX#@%~Fb}Cx|oc2cl61?*C%K zv!HTYO}J1QzD)}qS#1XKvsb_{1{Q+^V`yJ@x){JthH~t5pB4zhtrxdXOk->O!Pqkxir|E|WD>CY2qYhzSK*TXLYmbb{A@{~!K6bu#b{*3Vy%DlZj$ zS{Fbl$J{2P95bBMdHkNCf8%Hc9$yvpYqVlZKi9TtVA11v*ABEe_PSjPEV;JHdB7EyCfjj7Xe@K5VtHSAW&YE%Y{*!2uLWa z{)K>Oc5`t72~m=1>tjP_KnUoD0^-RGDe~R|V*HvWAmzRYcD>42KonI^*Bq8nXZGDmueSdqEkZ@B(LIM&wONegl@hBl7fg#%j5OX5&{8tjv zw#ib@R8;*t3DM;F^h8k^tDs{EIp+H|?q4aV2g=?KLkCB~gDB{lOOvh$e#vo1B8{is zCj_lNj7nrmotc3lxe316Y`3kAEElzS5-1iu{J((E(!MMvKTDGz zE@Lan?h#td5!^@&0C9xE!#?&?p@wgaUfgMtr_;YD7-1sfruJ7}O(Mf3rz&y98A7ll z_@x|l^8LR)i745*VeMN{6*>uE=xVU|a*mz-L1t`EV+}#H2bH(EX6zs=hkV?~QX%G4 zCz-Q@DYB-YT7NRkq9cw$rU*r1>82AKiUqK1m2_~&@SNf0JZzM~ z25|!AcU3M;up|q|>@aOn2Q|4ZOw~@()|hQCB`+^6h+_$T;(7BgqsSf@h#2U zrB#))-rNwzQc9P>*;p`vu-8MT7VcDQ54<^%?Y=QgV3F(I%o1>;O!6&Ap)-<+iGVDh zP`!bGw99vGCLrzUPQwy93}^~oY`Hx(JKFXahW@mw1$GA1{|*BdB>|!C1|}e6=Jf(K zVtq=_7T^Et-wKF0bmb5D;_?h$R&J}BGgkm-##KPt?=M?gV;7LbM_vrWnMR?DwVH9w z9)1^%zYjaAW9fF!vsVx{P`jv9jm@sU~J`nufG>9 z!1F+&v4H5`DE-=B3CMoVKifCkp11F5Hy<#+iT6%feVn-s8`7Dh4Ehr}Q(Z$Oyat88 zscDaokO7`h1@NkbG}aUp&mK;b)5YY{X)+&EOPg@c;r;p>>GMWTUE+SCj#rK-cz;W5%0P17%6l{j+uo`O^<+fO^wub$pR# zi=BxtbQiCW(ORvI4Ism97`Nzix8O1g|F*W-&JkppFO5U%1Z?J-dZ=xDIH|{ZD zF1dx;?|9J@b}>tcwVLvQX#m`a2e5Y+hil)wY3@ZFc)V-k$0Eil)S(W5Kn5#@RuUy? z8Zb`za(q1y2I>yxo=84=tTQ;e37~^%wSXWWW%Lt-{M5<9Ps=dbw0HD$mbCHg zJdf3+Ym&In0C_n`f4!4Voo#14c|i>1%y7p2>1HtFIDng%+%N4AW62^d?OUUTM+J8(J8NaeF-YB?@{{yar+$BYv>irA%`<>#(Gx)zmZeDy}>YH83y$KPjEyiRQom zqMhX2X~I4PNNgdCUQ(?o&8ugkM%aB2bk8+vlIe2Zes1suDcoeod;itEkXLC4gv zCuY~!gX8_FM3qRXo!UI72JLG~UQVnX*u(lOBZ!fb=Gy^x8N}c?l&SA+aOmQ_|0>g* zX(?TUm(wy6?FXL3v@oXV^uoC=ZhlUqvOhmWwC?Z>pq6Df$^XZpK`p%ZQlSo!ZZJss zh-vLcwfymh^}}@6v0!z@HE#^cRo6+zXjy-JWM~`rs-uRezJVk5ifLPkTFjbFHAMql zMogW3}Q)JMlpG9TN+7aMV;My-WMow(YjmP0ci5kQ1X97RMqWgbEZmyv)m7|BSbf9m;1 zoP2CD5>W-r6l3Fey+w^ii}Cvd8HwH0G@JnWC{0E>d5?M8?O>j?oXW_t;Pohg70NPF zkrmwmn8j?A{+-z64>EEZ2hCc2EKED3xqQ_5CO3Siv^DgRwK|bjirQB;F+Hu!h%iHy zk^5-7%k>~59)Tf6Ws?z=N{3CRb}&K+#AgH Date: Thu, 14 May 2026 10:24:19 -0400 Subject: [PATCH 05/26] moved test data --- .DS_Store | Bin 14340 -> 14340 bytes inst/.DS_Store | Bin 0 -> 10244 bytes inst/SNMF_test.vcf | Bin 493448 -> 0 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 inst/.DS_Store delete mode 100644 inst/SNMF_test.vcf diff --git a/.DS_Store b/.DS_Store index 3cd33c3864814afb0abf3df4dec58b7b0985d897..80c4f8b757e5b7cb5c31b3b1644679a43d98b63b 100644 GIT binary patch delta 64 zcmZoEXerpxpvky%a-(J;k7RYVp{0?fj)JMB;pBzl(v01cA1KI+^)N6nurOpYV!Z delta 36 rcmZoEXerpxpgGxHVUI8iLncEWLoq{1N^x>dQht68gUDuot*yKO>y!*3 diff --git a/inst/.DS_Store b/inst/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..e96c142eb0784b75f3f6cd7e67df0242678216d7 GIT binary patch literal 10244 zcmeHMU2GiH6~5otN$%h!87FqKfh68!Y11Yq*hw64A!NO_0Vf1o-gW$wkj?DQ*d8)F zv&_t{aYMk+rz)j?h^j(RsW1GfEf1)zpsm_U6@^x6AKLUMv}&cQtq^Jf3B(f;oI7{c zvDXPNt)PXu(%f_Jx#!%O`|Wq`-!jIKts32or5IzJ9wD^^WtT{zT|6t25^2_v1o<975&>~`Z(=&Du*#6V?EIdkmObx=DRhghigSJ?I^{oK ztk{+xbank6N>lTy)ob_~-oo$9&AM~BKo6>ZR`-sJTHbZ-V!f;vk6GqiL2K)Goj|u7 z(+eFe!z7ava=)7RZNS~zW&9rv6ZC!)E6T`B8}`4^}Z4ae|Hc9A|$m_{nAREtK4U)4wWS52#r zQN5xiapl@|TI>1^t!=IC?d=;kB{yGn)s}*`p{SQm&v@e7`(4}hvUb&+uu86zvp#E1 z1m-<~C=|5y4R)iZaq^-nKVKo6wu_3euUkFSbdJw>mN7g%?VG{GlJaChTj!TN*S1Go z-wG_(nLObW>_dTB9&)B#dSi_sAFhZd|Cs6dBv<%MOzNJeJ2Pf>{!Uvjn)a}hb%Vey z3ro=(4P?YKMNi?oa}~X0IWy@)Z%ACznUQ+oQ?j73v@Fmbv#nl=B+@@EX2NpbaUD}t z)0rbt6KA_wA3Mx)Y?jTjFS1A36YM$m0(+VLi@l9zY{U-i#(o^cA>4)`OreBXSh!32 zEA?M}Yt&yP;8P*`iEBB}v0Z0|G{U->859Bm(?4`__wFTf_w;uEhvZ%ykUi6#E4k%L zgn`^se&7Y=;PP%p{_HoTn$HJhKsso7|xOPMxugO@I%C^K!T%Dj_vrHfDOWmPl zAJ<;uC&i0z*Zp9)VmkFtI+Psbe9E8IJ#%=DrrEm35a(e?lU}$C8dl&&joXq(IiD1r z^%(~BvtDamH$0L|68e@?vuIMMnM2O)+HW}Li}9V#?2;5)64r!eI@2Z9DsAt!vb}78 z-Of%ikDXx;v9GglvhPw{|D64f{e}HAjBY@|Dy&8e+R%{a$FJ<0*)dL^R_DWl4`a!P*s;(RhC>-AjGskAhhqD4b_ z=F-8`aqDeEhmZXK1k(k%#A95lA=8(|N67RrvKm=R%jVTv zwkA5pC=|?l8iTVQwAvaGn*6-5-o7Kzp{=4|k=0M`r0Qx46j|Nf+0mgX6rZx%)!mWM znkf3z(6^_Ps)#DRpGhRNW{N}EcJo%MvZ#{nr*1@4{nz+?f&GoW!rox-09cC+#Oj^s z!U5bwY`y~{$RUq0V)Q8#X)P11c8Sv-eB6ush}RDgv(Mondv*b&>-g{*h;-2zFl^66b_-I5?&KG`ll*}G S42aMFbfp)c|3A*>|MvhR1)oj; literal 0 HcmV?d00001 diff --git a/inst/SNMF_test.vcf b/inst/SNMF_test.vcf deleted file mode 100644 index 1bd2cc2d4c9b5a50ee767e84d295e47c35dc8e48..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 493448 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�y~ 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

    kQTl*_ag{TOc)Ho(*hM%!KYUkk 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

    +qHwf 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
    u*U@Lhs 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%0A-*1U(M+H9F!2Wz1*=YZnWLR`EmNEp5TXDR^ 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 Date: Thu, 14 May 2026 10:31:05 -0400 Subject: [PATCH 06/26] added data folder to gitignore --- inst/.gitignore | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/inst/.gitignore b/inst/.gitignore index 8f45b0b..3af0ccb 100644 --- a/inst/.gitignore +++ b/inst/.gitignore @@ -1 +1 @@ -SNMF_test.vcf +/data From 1b0e8cbbce80f934ffbb2c1bc05370c03cdd737d Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Fri, 15 May 2026 16:49:02 -0400 Subject: [PATCH 07/26] implemented fixes flagged during pull request review --- .DS_Store | Bin 14340 -> 14340 bytes .Rhistory | 42 ++++----- DESCRIPTION | 5 +- R/app_ui.R | 81 ++++++++---------- R/mod_SNMF.R | 188 +++++++++++++---------------------------- R/mod_ped_cleaner.R | 104 ++++++++++++----------- R/mod_polybreedtools.R | 89 +++++-------------- 7 files changed, 193 insertions(+), 316 deletions(-) diff --git a/.DS_Store b/.DS_Store index 80c4f8b757e5b7cb5c31b3b1644679a43d98b63b..52c0cb9c44425914fb95c19038bce9ee71f5cfe1 100644 GIT binary patch delta 1147 zcma))Uu+ab9LMK72kma0v~w-(^_IQF>P>w3S(rb&7yYAF3Z1>9T z^^Z-=Nvs--4~9iwQ3weMiqR9_L?s#_Q4*18gsAwS^1zFUi9v~R_V$ADN%vuAzrV?E zezW;}R_0dbUKvKyJCA);j&Ao*Wi{7E_l_mlM8cd(+au<(a6ei%UAdq0c}MIKRx)cY zi2h_&IBp-W$~E=2k;0>%Eeq)l_ukjK>7hrq4GaxmE$6|C$~BBln1-;k=Cmm?ql>1I zof%I$Q^Gb(`>C-7(=k()h}+3o5yTU!TIi|?Yg%GHWgeP0vrqFTMJZGxwHn)J$icC+ z;hkpibBdZPY&F(u+N8I&EhFUHD0Zyhps~0k|9~eI|K$5y7>ge?ZG$_-S#43Kjatc+ zu(+Z6gEn_EZEQhg95Ze6p<=On3)2!)>DgKNFHR6G#d2p)uckfejoy`Xvcq%2miM|? zoZm0^CY+gMMhq|7B2%mm%Bp)k9FFXgw;uOe`wXLS=L#My*B;kK6n;fG&TVL{$&E_t zVoCAP@zSeOv9)?5Tc=3se6=4pux3T_<|Te?(H~HxVw@Hti|QS!^oR%i*rGqEDja_3 zW?NNh6kp}X9@eLNHgi(QdcVG12}mp4J9^W9F#VETBR9xR@*BC065IohI&4H6I?;>m z7?2c)5W`-KVO+BGNKRu0CJrKtc}a5#%XkhecmXfsh$QMtrXJDPaRMiC3TN>)-bKC( z=Wre$;$vLEClc~ye1jYK2|xRY?vmU6Z*urOUswIPR4soiRHdLI&+0Fgx(ypox>mF5 q#+p0af%@gZ=4iY7MyRLaE@H!(vQp`^Mea}QI3fXT#TZd zc@$2v+lnzHGvqTA0bweTRRSba7~&ZUz;q@2*?Pwzh%09gzS!a$uMT{)!L z3e-6dVanwB8eEebHH;Z|PSzJM= 2) Encoding: UTF-8 Roxygen: list(markdown = TRUE) -RoxygenNote: 7.3.3 Depends: R (>= 4.4.0) biocViews: Imports: @@ -33,9 +32,11 @@ Imports: shinyWidgets, shinydisconnect, shinyjs, - RColorBrewer + RColorBrewer, + zip Suggests: LEA, spelling, testthat Language: en-US +Config/roxygen2/version: 8.0.0 diff --git a/R/app_ui.R b/R/app_ui.R index 130b1d4..21db514 100644 --- a/R/app_ui.R +++ b/R/app_ui.R @@ -12,10 +12,10 @@ app_ui <- function(request) { tagList( # Leave this function for adding external resources golem_add_external_resources(), - # Dynamic sidebar color theme — only sets the :root CSS variables # ── Sidebar color theme ────────────────────────────────────────────────────── - # Change this value to switch the active sidebar menu item color. + # Dynamic sidebar color theme — only sets the :root CSS variables # Available options: "azure", "green", "yellow", "grey", "purple", "red" + # Change this value to switch the active sidebar menu item color. # ───────────────────────────────────────────────────────────────────────────── tags$head(tags$style(HTML(sprintf( ":root { --sidebar-core: var(--%s-core); --sidebar-lite: var(--%s-lite); --sidebar-deep: var(--%s-deep); }", @@ -31,22 +31,22 @@ app_ui <- function(request) { rightUi = tags$li( class = "dropdown", tags$a( - href = "#", - class = "nav-link", + href = "#", + class = "nav-link", `data-toggle` = "dropdown", icon("info-circle") ), tags$div( class = "dropdown-menu dropdown-menu-right", tags$a( - class = "dropdown-item", - href = "#", + class = "dropdown-item", + href = "#", "Session Info", onclick = "Shiny.setInputValue('session_info_button', Math.random())" ), tags$a( - class = "dropdown-item", - href = "#", + class = "dropdown-item", + href = "#", "Check for Updates", onclick = "Shiny.setInputValue('updates_info_button', Math.random())" ) @@ -55,32 +55,29 @@ app_ui <- function(request) { ), help = NULL, #This is the default bs4Dash button to control the presence of tooltips and popovers, which can be added as a user help/info feature. bs4DashSidebar( - skin="light", - status = "warning", - fixed=TRUE, - #minified = F, + skin = "light", + status = "warning", + fixed = TRUE, expandOnHover = TRUE, - sidebarMenu(id = "MainMenu", + sidebarMenu( + id = "MainMenu", flat = FALSE, tags$li(class = "header", style = "color: grey; margin-top: 10px; margin-bottom: 10px; padding-left: 15px;", "Menu"), - menuItem("Home", tabName = "welcome", icon = icon("house"),startExpanded = FALSE), + menuItem("Home", tabName = "welcome", icon = icon("house"), startExpanded = FALSE), tags$li(class = "header", style = "color: grey; margin-top: 18px; margin-bottom: 10px; padding-left: 15px;", "Pedigree & Parentage"), - menuItem("Pedigree Cleaner", tabName = "ped_cleaner", icon = icon("sitemap")), + menuItem("Pedigree Cleaner", tabName = "ped_cleaner", icon = icon("sitemap")), tags$li(class = "header", style = "color: grey; margin-top: 18px; margin-bottom: 10px; padding-left: 15px;", "Breed/Line Composition"), - menuItem(HTML("BreedToolspoly"), tabName = "polybreedtools", icon = icon("chart-column")), - menuItem("SNMF", tabName = "snmf", icon = icon("list-ol")), + menuItem(HTML("BreedToolspoly"), tabName = "polybreedtools", icon = icon("chart-column")), + menuItem("SNMF", tabName = "snmf", icon = icon("list-ol")), + # ── Genomic Diversity tab intentionally removed ────────────────────── tags$li(class = "header", style = "color: grey; margin-top: 18px; margin-bottom: 10px; padding-left: 15px;", "Information"), menuItem("Source Code", icon = icon("circle-info"), href = "https://github.com/Breeding-Insight/familia"), - #menuItem( - # span("Job Queue", bs4Badge("demo", position = "right", color = "warning")), - # tabName = "slurm", - # icon = icon("clock")), menuItem("Help", tabName = "help", icon = icon("circle-question")) ) ), footer = dashboardFooter( right = div( - style = "display: flex; align-items: center;", # Align text and images horizontally + style = "display: flex; align-items: center;", div( style = "display: flex; flex-direction: column; margin-right: 15px; text-align: right;", div("2026 Breeding Insight"), @@ -97,7 +94,7 @@ app_ui <- function(request) { ) ), left = div( - style = "display: flex; align-items: center; height: 100%;", + style = "display: flex; align-items: center; height: 100%;", sprintf("v%s", as.character(utils::packageVersion("familia"))) ) ), @@ -106,15 +103,15 @@ app_ui <- function(request) { tags$style( HTML( ".main-footer { - background-color: white; - color: grey; - height: 65px; - padding-top: 5px; - padding-bottom: 5px; - } - .main-footer a { - color: grey; - }" + background-color: white; + color: grey; + height: 65px; + padding-top: 5px; + padding-bottom: 5px; + } + .main-footer a { + color: grey; + }" ) ), tabItems( @@ -122,7 +119,7 @@ app_ui <- function(request) { tabName = "welcome", mod_Home_ui("Home_1") ), tabItem( - tabName = "ped_cleaner", mod_ped_cleaner_ui("ped_cleaner_1") # ADD THIS + tabName = "ped_cleaner", mod_ped_cleaner_ui("ped_cleaner_1") ), tabItem( tabName = "polybreedtools", mod_polybreedtools_ui("PolyBreedTools_1") @@ -152,11 +149,10 @@ golem_add_external_resources <- function() { "www", app_sys("app/www") ) - tags$head( favicon(), bundle_resources( - path = app_sys("app/www"), + path = app_sys("app/www"), app_title = "familia" ), # Add here other external resources @@ -167,18 +163,7 @@ golem_add_external_resources <- function() { /* Make collapse/expand icons visible on white box headers */ .card-tools .btn-tool { color: #495057 !important; } .card-tools .btn-tool:hover { color: #212529 !important; } - ")), - tags$script(HTML(" - $(document).ready(function() { - // On page load: mirror active class from

  • onto for CSS targeting - $('#cnv_1-sample_select_tabs li.active > a').addClass('active'); - - // After each tab switch (content already swapped): sync active on only - $(document).on('shown.bs.tab', '#cnv_1-sample_select_tabs a[data-toggle=\"tab\"]', function(e) { - $('#cnv_1-sample_select_tabs a[data-toggle=\"tab\"]').removeClass('active'); - $(e.target).addClass('active'); - }); - }); ")) + # ── Tab-sync script removed: handler already defined in custom.js ──────── ) -} +} \ No newline at end of file diff --git a/R/mod_SNMF.R b/R/mod_SNMF.R index 9de52d8..8e838f0 100644 --- a/R/mod_SNMF.R +++ b/R/mod_SNMF.R @@ -12,7 +12,6 @@ #' @importFrom bs4Dash valueBoxOutput mod_SNMF_ui <- function(id) { ns <- shiny::NS(id) - shiny::tagList( shiny::fluidRow( shinydisconnect::disconnectMessage( @@ -24,8 +23,7 @@ mod_SNMF_ui <- function(id) { overlayOpacity = 0.3, refreshColour = "purple" ), - - # Column 1: Inputs + # Column 1: Inputs shiny::column( width = 3, bs4Dash::box( @@ -77,8 +75,7 @@ mod_SNMF_ui <- function(id) { ) ) # closes box ), # closes column(width = 3) - - # Column 2: Results + # Column 2: Results shiny::column( width = 6, bs4Dash::box( @@ -127,8 +124,7 @@ mod_SNMF_ui <- function(id) { ) ) # closes box ), # closes column(width = 6) - - # Column 3: Status + Plot Controls + # Column 3: Status + Plot Controls shiny::column( width = 3, bs4Dash::valueBoxOutput(ns("snmf_best_k_box"), width = NULL), @@ -154,6 +150,18 @@ mod_SNMF_ui <- function(id) { solidHeader = TRUE, collapsible = TRUE, shiny::uiOutput(ns("snmf_selectors_ui")), + # ── Palette and label controls (mirrored from PolyBreedTools) ────── + selectInput(ns("snmf_color_choice"), "Color Palette", + choices = list( + "Standard Palettes" = c("Set1","Set3","Pastel2","Pastel1","Accent","Spectral","RdYlGn","RdGy"), + "Colorblind Friendly" = c("Set2","Paired","Dark2","YlOrRd","YlOrBr","YlGnBu","YlGn", + "Reds","RdPu","Purples","PuRd","PuBuGn","PuBu","OrRd", + "Oranges","Greys","Greens","GnBu","BuPu","BuGn","Blues", + "RdYlBu","RdBu","PuOr","PRGn","PiYG","BrBG") + ), + selected = "Set1"), + checkboxInput(ns("snmf_show_sample_labels"), "Show sample labels", value = TRUE), + sliderInput(ns("snmf_label_size"), "Label size", min = 6, max = 14, value = 8, step = 1), div( style = "display:inline-block; float:left", dropdownButton( @@ -178,20 +186,15 @@ mod_SNMF_ui <- function(id) { ) ) # closes Plot Controls box ) # closes column(width = 3) - ) # closes fluidRow ) # closes tagList } - #' SNMF Server Functions #' #' @noRd mod_SNMF_server <- function(input, output, session, parent_session) { - ns <- session$ns - `%||%` <- function(x, y) if (is.null(x)) y else x - make_collapse_panel <- function(panel_id, icon_name, label, body_content) { shiny::tags$div( class = "card mb-1", @@ -220,8 +223,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { ) ) } - - # Help button + # Help button shiny::observeEvent(input$help_btn, { shiny::showModal( shiny::modalDialog( @@ -233,12 +235,10 @@ mod_SNMF_server <- function(input, output, session, parent_session) { ) ) }) - set_status <- function(...) { msg <- paste0(...) output$snmf_status <- shiny::renderText(msg) } - show_error <- function(title, message) { shiny::showModal(shiny::modalDialog( title = title, @@ -247,60 +247,48 @@ mod_SNMF_server <- function(input, output, session, parent_session) { message )) } - call_with_allowed_named_args <- function(fun, args) { allowed <- names(formals(fun)) if (is.null(allowed)) return(do.call(fun, args)) keep <- names(args) == "" | names(args) %in% allowed do.call(fun, args[keep]) } - same_path <- function(path_a, path_b) { identical( normalizePath(path_a, winslash = "/", mustWork = FALSE), normalizePath(path_b, winslash = "/", mustWork = FALSE) ) } - copy_file_if_needed <- function(from, to, overwrite = TRUE) { if (same_path(from, to)) return(to) ok <- file.copy(from, to, overwrite = overwrite) if (!isTRUE(ok)) stop("Failed to copy file from ", from, " to ", to, call. = FALSE) to } - write_vcf_upload_as_geno <- function(vcf_path, geno_path) { vcf <- vcfR::read.vcfR(vcf_path, verbose = FALSE) gt <- as.matrix(vcfR::extract.gt(vcf, element = "GT")) - if (nrow(gt) == 0 || ncol(gt) == 0) { stop("No genotype calls were found in the uploaded VCF.", call. = FALSE) } - dosage_cols <- lapply(seq_len(ncol(gt)), function(i) BIGr:::convert_to_dosage(gt[, i])) dosage_mat <- do.call(cbind, dosage_cols) colnames(dosage_mat) <- colnames(gt) rownames(dosage_mat) <- rownames(gt) - lea_mat <- t(dosage_mat) lea_mat[is.na(lea_mat)] <- 9 storage.mode(lea_mat) <- "integer" - LEA::write.geno(lea_mat, geno_path) - list(geno_path = geno_path, sample_ids = colnames(gt)) } - run_ctx <- new.env(parent = emptyenv()) run_ctx$run_dir <- NULL - cleanup_run_dir <- function(path = run_ctx$run_dir) { if (!is.null(path) && dir.exists(path)) { unlink(path, recursive = TRUE, force = TRUE) } if (identical(run_ctx$run_dir, path)) run_ctx$run_dir <- NULL } - state <- shiny::reactiveValues( run_dir = NULL, project = NULL, @@ -315,8 +303,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { best_run_by_k = NULL, sample_ids = NULL ) - - # Value boxes + # Value boxes output$snmf_best_k_box <- bs4Dash::renderValueBox({ bs4Dash::valueBox( value = if (!is.null(state$best_k)) state$best_k else "\u2014", @@ -325,7 +312,6 @@ mod_SNMF_server <- function(input, output, session, parent_session) { color = "info" ) }) - output$snmf_best_ce_box <- bs4Dash::renderValueBox({ bs4Dash::valueBox( value = if (isTRUE(state$entropy_enabled) && !is.null(state$ce_summary)) { @@ -340,8 +326,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { color = "olive" ) }) - - # Selectors UI ─ + # Selectors UI output$snmf_selectors_ui <- shiny::renderUI({ if (is.null(state$project) || is.null(state$k_values) || is.null(state$repetitions)) { return(shiny::HTML("Run SNMF to enable K/run selectors and downloads.")) @@ -361,7 +346,6 @@ mod_SNMF_server <- function(input, output, session, parent_session) { ) ) }) - observeEvent(input$snmf_selected_k, { req(state$project, state$k_values, state$repetitions) k <- as.integer(input$snmf_selected_k) @@ -375,30 +359,25 @@ mod_SNMF_server <- function(input, output, session, parent_session) { selected = as.character(selected_run) ) }, ignoreInit = TRUE) - selected_k <- shiny::reactive({ req(state$project, state$k_values) k <- input$snmf_selected_k if (is.null(k) || !nzchar(k)) return(as.integer(state$best_k %||% state$k_values[[1]])) as.integer(k) }) - selected_run <- shiny::reactive({ req(state$project, state$repetitions) r <- input$snmf_selected_run if (is.null(r) || !nzchar(r)) return(1L) as.integer(r) }) - - # Q matrix reactive + # Q matrix reactive q_matrix <- shiny::reactive({ req(state$project) k <- selected_k() r <- selected_run() - q <- call_with_allowed_named_args(LEA::Q, list(state$project, K = k, run = r)) q <- as.matrix(q) - if (!is.null(state$sample_ids) && length(state$sample_ids) == nrow(q)) { rownames(q) <- state$sample_ids } else if (is.null(rownames(q))) { @@ -407,20 +386,21 @@ mod_SNMF_server <- function(input, output, session, parent_session) { colnames(q) <- paste0("Cluster", seq_len(ncol(q))) q }) - - # Outputs - output$snmf_q_table <- DT::renderDT({ - q <- q_matrix() - df <- data.frame(ID = rownames(q), q, check.names = FALSE) - DT::datatable(df, options = list(scrollX = TRUE, pageLength = 10)) + # ── Shared plot helpers (used by both render outputs and download handler) ── + ce_plot <- shiny::reactive({ + validate(shiny::need(isTRUE(state$entropy_enabled), "Cross-entropy disabled (see Selection mode).")) + validate(shiny::need(!is.null(state$ce_summary), "Run SNMF to compute cross-entropy.")) + ggplot(state$ce_summary, aes(x = K, y = min_cross_entropy)) + + geom_line() + + geom_point() + + labs(x = "K", y = "Minimum cross-entropy", title = "SNMF cross-entropy by K") + + theme_minimal() }) - - output$snmf_q_plot <- shiny::renderPlot({ + ancestry_plot <- shiny::reactive({ q <- q_matrix() df <- data.frame(ID = rownames(q), q, check.names = FALSE) q_cols <- colnames(q) - - long <- stats::reshape( + long <- stats::reshape( df, varying = q_cols, v.names = "Q", @@ -430,36 +410,45 @@ mod_SNMF_server <- function(input, output, session, parent_session) { ) long$ID <- factor(long$ID, levels = unique(df$ID)) long$Cluster <- factor(long$Cluster, levels = q_cols) - - ggplot(long, ggplot2::aes(x = ID, y = Q, fill = Cluster)) + + p <- ggplot(long, ggplot2::aes(x = ID, y = Q, fill = Cluster)) + geom_col(width = 0.9) + + scale_fill_brewer(palette = input$snmf_color_choice %||% "Set1") + scale_y_continuous(labels = scales::percent_format(accuracy = 1)) + labs(x = "Individual", y = "Ancestry proportion", fill = "Cluster") + theme_minimal() + theme( - axis.text.x = element_text(angle = 45, hjust = 1, vjust = 1, size = 8), + axis.text.x = element_text( + angle = 45, hjust = 1, vjust = 1, + size = as.numeric(input$snmf_label_size %||% 8) + ), panel.grid.major.x = element_blank() ) + if (!isTRUE(input$snmf_show_sample_labels)) { + p <- p + theme( + axis.text.x = element_blank(), + axis.ticks.x = element_blank() + ) + } + p + }) + # Outputs + output$snmf_q_table <- DT::renderDT({ + q <- q_matrix() + df <- data.frame(ID = rownames(q), q, check.names = FALSE) + DT::datatable(df, options = list(scrollX = TRUE, pageLength = 10)) + }) + output$snmf_q_plot <- shiny::renderPlot({ + ancestry_plot() }) - output$snmf_ce_plot <- shiny::renderPlot({ - validate(shiny::need(isTRUE(state$entropy_enabled), "Cross-entropy disabled (see Selection mode).")) - validate(shiny::need(!is.null(state$ce_summary), "Run SNMF to compute cross-entropy.")) - - ggplot(state$ce_summary, aes(x = K, y = min_cross_entropy)) + - geom_line() + - geom_point() + - labs(x = "K", y = "Minimum cross-entropy", title = "SNMF cross-entropy by K") + - theme_minimal() + ce_plot() }) - output$snmf_ce_table <- DT::renderDT({ validate(shiny::need(isTRUE(state$entropy_enabled), "Cross-entropy disabled (see Selection mode).")) validate(shiny::need(!is.null(state$ce_summary), "Run SNMF to compute cross-entropy.")) DT::datatable(state$ce_summary, options = list(pageLength = 10, scrollX = TRUE)) }) - - # Run SNMF + # Run SNMF observeEvent(input$snmf_run, { if (!requireNamespace("LEA", quietly = TRUE)) { show_error("Missing dependency", "Install the LEA package to use SNMF.") @@ -469,30 +458,24 @@ mod_SNMF_server <- function(input, output, session, parent_session) { show_error("Missing input", "Upload a .vcf/.vcf.gz or .geno file.") return() } - k_min <- as.integer(input$snmf_k_min) k_max <- as.integer(input$snmf_k_max) if (is.na(k_min) || is.na(k_max) || k_min < 1 || k_max < 1 || k_min > k_max) { show_error("Invalid K range", "K min and K max must be integers with K min \u2264 K max and both \u2265 1.") return() } - reps <- as.integer(input$snmf_repetitions) if (is.na(reps) || reps < 1) { show_error("Invalid repetitions", "Repetitions must be an integer \u2265 1.") return() } - ploidy <- as.integer(input$snmf_ploidy) if (is.na(ploidy) || ploidy < 1) { show_error("Invalid ploidy", "Ploidy must be an integer \u2265 1.") return() } - entropy_enabled <- input$snmf_select_mode %in% c("auto_entropy", "manual_entropy") - cleanup_run_dir() - state$run_dir <- tempfile("snmf_", tmpdir = tempdir()) run_ctx$run_dir <- state$run_dir dir.create(state$run_dir, recursive = TRUE, showWarnings = FALSE) @@ -507,28 +490,23 @@ mod_SNMF_server <- function(input, output, session, parent_session) { state$best_k <- NULL state$best_run_by_k <- NULL state$sample_ids <- NULL - shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 5, title = "Preparing input") set_status("Preparing input...\n") - uploaded_name <- input$snmf_file$name %||% "genotypes" ext_lower <- tolower(uploaded_name) file_base <- sub("\\.(vcf\\.gz|vcf|geno|gz)$", "", basename(uploaded_name), ignore.case = TRUE) geno_path <- file.path(state$run_dir, paste0(file_base, ".geno")) uploaded_path <- input$snmf_file$datapath - # Convert input to .geno if needed if (grepl("\\.geno$", ext_lower)) { copy_file_if_needed(uploaded_path, geno_path, overwrite = TRUE) } else if (grepl("\\.vcf\\.gz$|\\.vcf$|\\.gz$", ext_lower)) { shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 15, title = "Converting VCF \u2192 GENO") set_status("Converting VCF to GENO...\n") - vcf_to_geno_res <- tryCatch( write_vcf_upload_as_geno(uploaded_path, geno_path), error = function(e) e ) - if (!file.exists(geno_path)) { geno_candidates <- list.files(state$run_dir, pattern = "\\.geno$", full.names = TRUE) if (length(geno_candidates) >= 1) { @@ -536,7 +514,6 @@ mod_SNMF_server <- function(input, output, session, parent_session) { copy_file_if_needed(newest, geno_path, overwrite = TRUE) } } - if (!file.exists(geno_path)) { msg <- if (inherits(vcf_to_geno_res, "error")) vcf_to_geno_res$message else "VCF conversion did not produce a .geno file." show_error("VCF conversion failed", msg) @@ -544,7 +521,6 @@ mod_SNMF_server <- function(input, output, session, parent_session) { set_status(paste0("ERROR: ", msg, "\n")) return() } - if (is.list(vcf_to_geno_res) && !is.null(vcf_to_geno_res$sample_ids)) { state$sample_ids <- vcf_to_geno_res$sample_ids } @@ -554,10 +530,8 @@ mod_SNMF_server <- function(input, output, session, parent_session) { set_status("ERROR: Unsupported file type.\n") return() } - state$geno_path <- geno_path state$vcf_path <- NULL - shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 35, title = "Running SNMF") set_status( "Running SNMF...\n", @@ -566,11 +540,9 @@ mod_SNMF_server <- function(input, output, session, parent_session) { "Repetitions: ", reps, "\n", "Entropy: ", if (entropy_enabled) "enabled" else "disabled", "\n" ) - old_wd <- getwd() on.exit(setwd(old_wd), add = TRUE) setwd(state$run_dir) - snmf_args <- list( state$geno_path, K = state$k_values, @@ -584,24 +556,19 @@ mod_SNMF_server <- function(input, output, session, parent_session) { CPU = as.integer(input$snmf_cpu), seed = as.integer(input$snmf_seed) ) - project <- tryCatch( call_with_allowed_named_args(LEA::snmf, snmf_args), error = function(e) e ) - if (inherits(project, "error")) { show_error("SNMF failed", project$message) shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 0, title = " ") set_status(paste0("ERROR: ", project$message, "\n")) return() } - state$project <- project - shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 75, title = "Summarizing results") set_status(paste0(capture.output(str(project, max.level = 1)), collapse = "\n"), "\n") - if (entropy_enabled) { ce_records <- list() for (k in state$k_values) { @@ -619,7 +586,6 @@ mod_SNMF_server <- function(input, output, session, parent_session) { } } state$ce_df <- do.call(rbind, ce_records) - min_ce_by_k <- tapply(state$ce_df$cross_entropy, state$ce_df$K, min, na.rm = TRUE) best_run_by_k <- sapply(names(min_ce_by_k), function(k_chr) { k_int <- as.integer(k_chr) @@ -627,7 +593,6 @@ mod_SNMF_server <- function(input, output, session, parent_session) { if (nrow(sub) == 0) return(NA_integer_) sub$run[which.min(sub$cross_entropy)] }) - state$best_run_by_k <- best_run_by_k ce_summary <- data.frame( K = as.integer(names(min_ce_by_k)), @@ -635,20 +600,18 @@ mod_SNMF_server <- function(input, output, session, parent_session) { min_cross_entropy = as.numeric(min_ce_by_k), stringsAsFactors = FALSE ) - ce_summary <- ce_summary[order(ce_summary$K), , drop = FALSE] + ce_summary <- ce_summary[order(ce_summary$K), , drop = FALSE] state$ce_summary <- ce_summary state$best_k <- ce_summary$K[which.min(ce_summary$min_cross_entropy)] } else { state$best_k <- state$k_values[[1]] } - # Initialize selectors shiny::updateSelectInput( session, "snmf_selected_k", choices = as.character(state$k_values), selected = as.character(state$best_k %||% state$k_values[[1]]) ) - initial_run <- 1L if (!is.null(state$best_run_by_k)) { br <- state$best_run_by_k[as.character(state$best_k)] @@ -659,12 +622,10 @@ mod_SNMF_server <- function(input, output, session, parent_session) { choices = as.character(seq_len(reps)), selected = as.character(initial_run) ) - shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 100, title = "Complete!") set_status("SNMF complete.\n") }) - - # Downloads ─ + # Downloads output$download_q_csv <- shiny::downloadHandler( filename = function() paste0("snmf_Q_K", selected_k(), "_run", selected_run(), "_", Sys.Date(), ".csv"), content = function(file) { @@ -674,7 +635,6 @@ mod_SNMF_server <- function(input, output, session, parent_session) { utils::write.csv(df, file, row.names = FALSE) } ) - output$download_ce_csv <- shiny::downloadHandler( filename = function() paste0("snmf_cross_entropy_", Sys.Date(), ".csv"), content = function(file) { @@ -683,7 +643,6 @@ mod_SNMF_server <- function(input, output, session, parent_session) { utils::write.csv(state$ce_df %||% data.frame(), file, row.names = FALSE) } ) - output$download_project_zip <- shiny::downloadHandler( filename = function() paste0("snmf_project_", Sys.Date(), ".zip"), content = function(file) { @@ -691,10 +650,8 @@ mod_SNMF_server <- function(input, output, session, parent_session) { export_try <- function(args) { tryCatch(call_with_allowed_named_args(LEA::export.snmfProject, args), error = function(e) e) } - res <- export_try(list(state$project, file = file)) if (file.exists(file)) return() - res2 <- export_try(list(state$project)) if (is.character(res2) && length(res2) >= 1) { if (file.exists(res2[[1]])) { file.copy(res2[[1]], file, overwrite = TRUE); return() } @@ -705,20 +662,17 @@ mod_SNMF_server <- function(input, output, session, parent_session) { return() } } - zips <- list.files(state$run_dir, pattern = "\\.zip$", full.names = TRUE) if (length(zips) >= 1) { newest <- zips[which.max(file.info(zips)$mtime)] file.copy(newest, file, overwrite = TRUE) return() } - if (inherits(res, "error")) stop(res$message) if (inherits(res2, "error")) stop(res2$message) stop("export.snmfProject() did not produce a zip file.") } ) - output$download_snmf_figure <- shiny::downloadHandler( filename = function() { ext <- input$snmf_image_type %||% "jpeg" @@ -733,31 +687,8 @@ mod_SNMF_server <- function(input, output, session, parent_session) { height <- as.numeric(input$snmf_image_height %||% 5) dpi <- as.numeric(input$snmf_image_res %||% 300) fig <- input$snmf_figure %||% "Ancestry Plot" - - p <- if (fig == "Cross-Entropy Plot") { - validate(shiny::need(isTRUE(state$entropy_enabled), "Cross-entropy disabled.")) - validate(shiny::need(!is.null(state$ce_summary), "Run SNMF first.")) - ggplot(state$ce_summary, aes(x = K, y = min_cross_entropy)) + - geom_line() + geom_point() + - labs(x = "K", y = "Minimum cross-entropy", title = "SNMF cross-entropy by K") + - theme_minimal() - } else { - q <- q_matrix() - df <- data.frame(ID = rownames(q), q, check.names = FALSE) - q_cols <- colnames(q) - long <- stats::reshape(df, varying = q_cols, v.names = "Q", timevar = "Cluster", - times = q_cols, direction = "long") - long$ID <- factor(long$ID, levels = unique(df$ID)) - long$Cluster <- factor(long$Cluster, levels = q_cols) - ggplot(long, ggplot2::aes(x = ID, y = Q, fill = Cluster)) + - geom_col(width = 0.9) + - scale_y_continuous(labels = scales::percent_format(accuracy = 1)) + - labs(x = "Individual", y = "Ancestry proportion", fill = "Cluster") + - theme_minimal() + - theme(axis.text.x = element_text(angle = 45, hjust = 1, vjust = 1, size = 8), - panel.grid.major.x = element_blank()) - } - + # ── Shared plot helpers called here; no duplicated plot logic ───────── + p <- if (fig == "Cross-Entropy Plot") ce_plot() else ancestry_plot() if (ext %in% c("png", "jpeg", "tiff")) { ggplot2::ggsave(filename = file, plot = p, width = width, height = height, units = "in", dpi = dpi) } else { @@ -765,14 +696,11 @@ mod_SNMF_server <- function(input, output, session, parent_session) { } } ) - session$onSessionEnded(function() { cleanup_run_dir() }) } - ## To be copied in the UI # mod_SNMF_ui("SNMF_1") - ## To be copied in the server # mod_SNMF_server("SNMF_1") \ No newline at end of file diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R index 7e1632e..165569d 100644 --- a/R/mod_ped_cleaner.R +++ b/R/mod_ped_cleaner.R @@ -1,3 +1,4 @@ + #' Pedigree Cleaner module UI #' #' @param id Module id @@ -9,7 +10,7 @@ mod_ped_cleaner_ui <- function(id) { shinyjs::useShinyjs(), shiny::fluidRow( - # ── Column 1: Inputs ────────────────────────────────────────────────── + # Column 1: Inputs shiny::column( width = 3, bs4Dash::box( @@ -53,7 +54,7 @@ mod_ped_cleaner_ui <- function(id) { ) # closes box ), # closes column(width = 3) - # ── Column 2: Results ───────────────────────────────────────────────── + # Column 2: Results shiny::column( width = 6, bs4Dash::box( @@ -102,7 +103,7 @@ mod_ped_cleaner_ui <- function(id) { ) # closes box ), # closes column(width = 6) - # ── Column 3: Status ────────────────────────────────────────────────── + # Column 3: Status shiny::column( width = 3, bs4Dash::box( @@ -121,11 +122,11 @@ mod_ped_cleaner_ui <- function(id) { ) ) ) # closes column(width = 3) - ) # closes fluidRow ) # closes tagList } + #' Pedigree Cleaner module server #' #' @param id Module id @@ -137,39 +138,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { check_results <- shiny::reactiveVal(NULL) - # ── Helpers ─────────────────────────────────────────────────────────────── - make_collapse_panel <- function(panel_id, icon_name, label, body_content) { - shiny::tags$div( - class = "card mb-1", - style = "border: 1px solid #dee2e6; border-radius: 4px;", - shiny::tags$div( - class = "card-header p-0", - style = "background-color: #f8f9fa;", - shiny::tags$button( - class = "btn btn-link btn-sm w-100 text-left d-flex align-items-center", - style = "color: #343a40; text-decoration: none; font-size: 13px; padding: 8px 12px; gap: 6px;", - `data-toggle` = "collapse", - `data-target` = paste0("#", panel_id), - `aria-expanded` = "false", - shiny::icon(icon_name), - shiny::tags$span(label) - ) - ), - shiny::tags$div( - id = panel_id, - class = "collapse", - shiny::tags$div( - class = "card-body", - style = "padding: 12px 14px; font-size: 13px;", - body_content - ) - ) - ) - } - - sanitize_id <- function(x) gsub("[^A-Za-z0-9]", "_", tolower(x)) - - # ── Help button ─────────────────────────────────────────────────────────── + # Help button shiny::observeEvent(input$help_btn, { shiny::showModal( shiny::modalDialog( @@ -182,11 +151,11 @@ mod_ped_cleaner_server <- function(id, parent_session) { ) }) - # ── Run check ───────────────────────────────────────────────────────────── + # Run check shiny::observeEvent(input$run_check, { shiny::req(input$ped_file) check_results(NULL) - shinyjs::disable(session$ns("download_results")) + shinyjs::disable("download_results") # ← un-namespaced; shinyjs handles it tryCatch({ shinyWidgets::updateProgressBar( @@ -237,16 +206,21 @@ mod_ped_cleaner_server <- function(id, parent_session) { title = "Detecting cycles and dependencies..." ) + # Correction 3: write ped_raw to a known-extension temp file + tmp_ped_path <- tempfile(fileext = ".txt") + write.table(ped_raw, tmp_ped_path, + sep = "\t", row.names = FALSE, quote = FALSE) + report <- BIGr::check_ped( - ped.file = tmp_path, + ped.file = tmp_ped_path, verbose = FALSE, save_zip = FALSE ) - file_base_actual <- tools::file_path_sans_ext(basename(tmp_path)) - corrected_name <- paste0(file_base_actual, "_corrected") - corrected_ped <- tryCatch( - get(corrected_name, envir = .GlobalEnv, inherits = FALSE), + # Correction 4: retrieve corrected pedigree from check_ped return + # Use the session-local report value instead of reaching into .GlobalEnv + corrected_ped <- tryCatch( + report$corrected_ped, error = function(e) NULL ) @@ -260,7 +234,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { value = 100, status = "success", title = "Finished" ) - shinyjs::enable(session$ns("download_results")) + shinyjs::enable("download_results") # ← un-namespaced; shinyjs handles it bs4Dash::updateTabsetPanel(session, "ped_results_tabs", selected = "Summary") @@ -273,7 +247,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { }) }) - # ── Summary banner ──────────────────────────────────────────────────────── + # Summary banner output$summary_banner <- shiny::renderUI({ shiny::req(check_results()) report <- check_results()$report @@ -307,7 +281,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { )) }) - # ── Results UI ──────────────────────────────────────────────────────────── + # Results UI output$results_ui <- shiny::renderUI({ shiny::req(check_results()) report <- check_results()$report @@ -370,7 +344,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { ) }) - # ── Download ────────────────────────────────────────────────────────────── + # Download output$download_results <- shiny::downloadHandler( filename = function() { paste0("pedigree_check_", Sys.Date(), ".zip") @@ -413,4 +387,36 @@ mod_ped_cleaner_server <- function(id, parent_session) { ) }) -} \ No newline at end of file +} + +# Helpers +make_collapse_panel <- function(panel_id, icon_name, label, body_content) { + shiny::tags$div( + class = "card mb-1", + style = "border: 1px solid #dee2e6; border-radius: 4px;", + shiny::tags$div( + class = "card-header p-0", + style = "background-color: #f8f9fa;", + shiny::tags$button( + class = "btn btn-link btn-sm w-100 text-left d-flex align-items-center", + style = "color: #343a40; text-decoration: none; font-size: 13px; padding: 8px 12px; gap: 6px;", + `data-toggle` = "collapse", + `data-target` = paste0("#", panel_id), + `aria-expanded` = "false", + shiny::icon(icon_name), + shiny::tags$span(label) + ) + ), + shiny::tags$div( + id = panel_id, + class = "collapse", + shiny::tags$div( + class = "card-body", + style = "padding: 12px 14px; font-size: 13px;", + body_content + ) + ) + ) +} + +sanitize_id <- function(x) gsub("[^A-Za-z0-9]", "_", tolower(x)) \ No newline at end of file diff --git a/R/mod_polybreedtools.R b/R/mod_polybreedtools.R index 49ccf80..6067fcf 100644 --- a/R/mod_polybreedtools.R +++ b/R/mod_polybreedtools.R @@ -13,8 +13,7 @@ mod_polybreedtools_ui <- function(id) { ns <- NS(id) tagList( fluidRow( - - # Column 1: Inputs + # Column 1: Inputs column( width = 3, bs4Dash::box( @@ -42,8 +41,7 @@ mod_polybreedtools_ui <- function(id) { ) ) # closes box ), # closes column(width = 3) - - # Column 2: Results + # Column 2: Results column( width = 6, bs4Dash::box( @@ -106,8 +104,7 @@ mod_polybreedtools_ui <- function(id) { ) ) ), # closes column(width = 6) - - # Column 3: Status + Plot Controls + # Column 3: Status + Plot Controls shiny::column( width = 3, bs4Dash::box( @@ -148,7 +145,7 @@ mod_polybreedtools_ui <- function(id) { sliderInput(ns("poly_image_height"), "Height (in)", value = 5, min = 3, max = 20, step = 0.5), fluidRow( downloadButton(ns("download_poly_figure"), "Save Image"), - downloadButton(ns("download_poly_file"), "Save Files") + downloadButton(ns("download_poly_file"), "Save Excel File") ), circle = FALSE, status = "danger", @@ -160,11 +157,9 @@ mod_polybreedtools_ui <- function(id) { ) ) # closes Plot Controls box ) # closes column(width = 3) - ) # closes fluidRow ) # closes tagList } - #' PolyBreedTools Server Functions #' #' @importFrom graphics axis hist points @@ -176,12 +171,9 @@ mod_polybreedtools_ui <- function(id) { #' #' @noRd mod_polybreedtools_server <- function(input, output, session, parent_session) { - ns <- session$ns - `%||%` <- function(x, y) if (is.null(x)) y else x - - # Helpers + # Helpers make_collapse_panel <- function(panel_id, icon_name, label, body_content) { shiny::tags$div( class = "card mb-1", @@ -210,8 +202,7 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { ) ) } - - # Help button + # Help button shiny::observeEvent(input$help_btn, { shiny::showModal( shiny::modalDialog( @@ -223,44 +214,36 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { ) ) }) - - # Helper function + # Helper function format_percent <- function(x) { scales::percent_format(accuracy = 0.1)(x) } - result_data <- reactiveVal(NULL) poly_items <- reactiveValues( pred_results = NULL, pred_results_long = NULL, id_order = NULL ) - - # Run estimation + # Run estimation observeEvent(input$run, { req(input$reference_file, input$ref_ids_file, input$validation_file) output$status <- renderText("Running estimation...") - tryCatch({ reference <- utils::read.table(input$reference_file$datapath, header = TRUE, sep = "\t") reference <- dplyr::distinct(reference, ID, .keep_all = TRUE) reference <- tibble::column_to_rownames(reference, "ID") - reference_ids <- utils::read.table(input$ref_ids_file$datapath, header = TRUE, sep = "\t") ref_ids <- lapply(as.list(reference_ids), as.character) - validation_raw <- utils::read.table(input$validation_file$datapath, header = TRUE, sep = "\t") - - # NA filtering: validation samples (rows) with < 50% call rate - sample_call_rate <- rowSums(!is.na(validation_raw)) / ncol(validation_raw) - removed_samples <- validation_raw$ID[sample_call_rate < 0.5] + # NA filtering: validation samples (rows) with < 50% marker call rate + validation_markers <- validation_raw[, colnames(validation_raw) != "ID", drop = FALSE] + sample_call_rate <- rowSums(!is.na(validation_markers)) / ncol(validation_markers) + removed_samples <- validation_raw$ID[sample_call_rate < 0.5] validation_filtered <- validation_raw[sample_call_rate >= 0.5, , drop = FALSE] - # NA filtering: validation markers (columns) with all NA col_call_counts <- colSums(!is.na(validation_filtered)) removed_markers <- colnames(validation_filtered)[col_call_counts == 0] validation <- validation_filtered[, col_call_counts > 0, drop = FALSE] - # Build warning messages warning_messages <- c() if (length(removed_samples) > 0) { @@ -275,7 +258,6 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { paste0(" \u2022 ", removed_markers, collapse = "\n") )) } - # Duplicated IDs in validation file val_ids <- validation[, 1] dup_val <- val_ids[duplicated(val_ids)] @@ -288,12 +270,9 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { output$status <- renderText(dup_val_msg) return() } - validation <- dplyr::distinct(validation, ID, .keep_all = TRUE) validation <- tibble::column_to_rownames(validation, "ID") - freq <- BIGr:::allele_freq_poly(reference, ref_ids, ploidy = input$ploidy) - # Error on NaN in freq na_pos <- which(is.na(freq), arr.ind = TRUE) if (nrow(na_pos) > 0) { @@ -312,32 +291,25 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { output$status <- renderText(NaN_freq_msg) return() } - prediction <- BIGr:::solve_composition_poly(validation, freq, ploidy = input$ploidy) prediction <- as.data.frame(prediction, check.names = FALSE) prediction <- prediction[, !colnames(prediction) %in% c("R2"), drop = FALSE] prediction[] <- lapply(prediction, as.numeric) - columns_to_select <- colnames(prediction) predicted_line <- columns_to_select[max.col(prediction[, columns_to_select, drop = FALSE], ties.method = "first")] - pred_results <- tibble::rownames_to_column(prediction, var = "ID") pred_results <- dplyr::mutate(pred_results, `Predicted line` = predicted_line) pred_results <- dplyr::mutate(pred_results, dplyr::across(dplyr::all_of(columns_to_select), ~format_percent(.x))) - result_data(pred_results) - id_order <- data.frame( ID = rownames(prediction), predicted_line = predicted_line, predicted_value = apply(prediction[, columns_to_select, drop = FALSE], 1, max, na.rm = TRUE), stringsAsFactors = FALSE ) - output$preview <- DT::renderDT({ DT::datatable(pred_results, options = list(pageLength = 10, scrollX = TRUE)) }) - pred_results_long <- tibble::rownames_to_column(prediction, var = "ID") pred_results_long <- tidyr::pivot_longer( pred_results_long, @@ -346,47 +318,42 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { values_to = "percent" ) pred_results_long$predicted_line <- id_order$predicted_line[match(pred_results_long$ID, id_order$ID)] - poly_items$pred_results <- pred_results poly_items$pred_results_long <- pred_results_long poly_items$id_order <- id_order - final_status <- "Estimation complete. File ready for download." if (length(warning_messages) > 0) { final_status <- paste(final_status, "\n\n", paste(warning_messages, collapse = "\n\n")) } output$status <- renderText(final_status) - }, error = function(e) { output$status <- renderText(paste("Error during estimation:", e$message)) }) }) - - # Ancestry plot + # Ancestry plot + # Ancestry plot ancestry_plot <- reactive({ req(poly_items$pred_results_long, poly_items$id_order) - dat <- poly_items$pred_results_long - if (isTRUE(input$poly_sort_by_predicted)) { ord <- poly_items$id_order[order(poly_items$id_order$predicted_line, -poly_items$id_order$predicted_value), , drop = FALSE] dat$ID <- factor(dat$ID, levels = ord$ID) } else { dat$ID <- factor(dat$ID, levels = unique(dat$ID)) } - p <- ggplot(dat, aes(x = ID, y = percent, fill = category)) + geom_bar(stat = "identity") + scale_fill_brewer(palette = input$color_choice) + scale_y_continuous(labels = scales::percent_format(accuracy = 1)) + labs(x = "Individual ID", y = "Ancestry Proportion", fill = "Line") + - theme_minimal() - - if (isTRUE(input$poly_show_sample_labels)) { - p <- p + theme( - axis.text.x = element_text(angle = 45, hjust = 1, size = as.numeric(input$poly_label_size %||% 8)) + theme_minimal() + + theme( + axis.text.x = element_text( + angle = 45, hjust = 1, + size = as.numeric(input$poly_label_size %||% 8) + ) ) - } else { + if (!isTRUE(input$poly_show_sample_labels)) { p <- p + theme( axis.text.x = element_blank(), axis.ticks.x = element_blank() @@ -394,13 +361,11 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { } p }) - output$bar_plot <- renderPlot({ req(poly_items$pred_results_long) ancestry_plot() }) - - # Downloads + # Downloads output$download_poly_file <- downloadHandler( filename = function() paste0("lineage_estimation_", format(Sys.Date(), "%Y-%m-%d"), ".xlsx"), content = function(file) { @@ -408,7 +373,6 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { openxlsx::write.xlsx(poly_items$pred_results, file = file, rowNames = FALSE) } ) - output$download_poly_figure <- downloadHandler( filename = function() { ext <- input$poly_image_type %||% "png" @@ -428,14 +392,12 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { } } ) - - # Example tables + # Example tables example_ids_df <- data.frame( Group1 = c("SampleAlpha", "S3", "ExampleFour", "", ""), Group2 = c("SampleOne", "SampleTwo", "SampleThree", "SampleFour", "SampleFive"), Group3 = c("SampleX", "SampleYy", "SampleZzzz", "ExampleEight", "") ) - example_genos_df <- data.frame( ID = paste0("Sample", c("1", "2", "3", "4", "5")), Marker1 = as.integer(c(0, 0, 1, 2, 1)), @@ -443,23 +405,18 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { Marker3 = as.integer(c(0, 0, NA, 1, 1)), Marker4 = as.integer(c(0, 0, 0, 0, 0)) ) - output$example_ids <- renderTable({ example_ids_df }, bordered = TRUE) output$example_genos <- renderTable({ example_genos_df }, bordered = TRUE) - output$download_ids <- downloadHandler( filename = function() "sample_reference_ids.txt", content = function(file) write.table(example_ids_df, file, sep = "\t", row.names = FALSE, quote = FALSE) ) - output$download_genos <- downloadHandler( filename = function() "sample_genotypes.txt", content = function(file) write.table(example_genos_df, file, sep = "\t", row.names = FALSE, quote = FALSE) ) } - ## To be copied in the UI # mod_polybreedtools_ui("polybreedtools_1") - ## To be copied in the server # mod_polybreedtools_server("polybreedtools_1") \ No newline at end of file From d9d8ad89ac55f3f9a02c1d443b24a6940657a888 Mon Sep 17 00:00:00 2001 From: Josue Chinchilla-Vargas Date: Mon, 18 May 2026 08:22:23 -0400 Subject: [PATCH 08/26] update bs4Dash to shiny::updateTabsetPAnel Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- R/mod_ped_cleaner.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R index 165569d..0e0fe76 100644 --- a/R/mod_ped_cleaner.R +++ b/R/mod_ped_cleaner.R @@ -236,7 +236,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { ) shinyjs::enable("download_results") # ← un-namespaced; shinyjs handles it - bs4Dash::updateTabsetPanel(session, "ped_results_tabs", selected = "Summary") + shiny::updateTabsetPanel(session, "ped_results_tabs", selected = "Summary") }, error = function(e) { shinyWidgets::updateProgressBar( From da027b002dbcbb1d1fad37990b5ae3a5288589ab Mon Sep 17 00:00:00 2001 From: Josue Chinchilla-Vargas Date: Mon, 18 May 2026 08:22:54 -0400 Subject: [PATCH 09/26] updated help section to match new button Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- R/help_polybreedtools.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/help_polybreedtools.R b/R/help_polybreedtools.R index 6713329..d466620 100644 --- a/R/help_polybreedtools.R +++ b/R/help_polybreedtools.R @@ -258,7 +258,7 @@ help_content_polybreedtools <- function(collapse_fn = NULL, id_prefix = "") { shiny::tags$ul( style = "font-size: 13px;", shiny::tags$li(shiny::HTML( - "Results Table — downloadable as .xlsx via Save Files. + "Results Table — downloadable as .xlsx via Save Excel File. Contains each validation sample's estimated ancestry proportion per group and its predicted line." )), shiny::tags$li(shiny::HTML( From 56e0b7da43b9a0f89f5d794845f08c3a330b5e5c Mon Sep 17 00:00:00 2001 From: Josue Chinchilla-Vargas Date: Mon, 18 May 2026 08:24:59 -0400 Subject: [PATCH 10/26] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- R/mod_polybreedtools.R | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/R/mod_polybreedtools.R b/R/mod_polybreedtools.R index 6067fcf..be8ae02 100644 --- a/R/mod_polybreedtools.R +++ b/R/mod_polybreedtools.R @@ -240,10 +240,14 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { sample_call_rate <- rowSums(!is.na(validation_markers)) / ncol(validation_markers) removed_samples <- validation_raw$ID[sample_call_rate < 0.5] validation_filtered <- validation_raw[sample_call_rate >= 0.5, , drop = FALSE] + if (nrow(validation_filtered) == 0) { + stop("No validation samples remain after filtering for genotyping rate >= 50%.") + } # NA filtering: validation markers (columns) with all NA - col_call_counts <- colSums(!is.na(validation_filtered)) - removed_markers <- colnames(validation_filtered)[col_call_counts == 0] - validation <- validation_filtered[, col_call_counts > 0, drop = FALSE] + validation_marker_filtered <- validation_filtered[, colnames(validation_filtered) != "ID", drop = FALSE] + col_call_counts <- colSums(!is.na(validation_marker_filtered)) + removed_markers <- colnames(validation_marker_filtered)[col_call_counts == 0] + validation <- validation_filtered[, c(TRUE, col_call_counts > 0), drop = FALSE] # Build warning messages warning_messages <- c() if (length(removed_samples) > 0) { From d0626ac2005c488273c62530970e637708f36245 Mon Sep 17 00:00:00 2001 From: Josue Chinchilla-Vargas Date: Mon, 18 May 2026 08:30:08 -0400 Subject: [PATCH 11/26] Delete .Rhistory --- .Rhistory | 512 ------------------------------------------------------ 1 file changed, 512 deletions(-) delete mode 100644 .Rhistory diff --git a/.Rhistory b/.Rhistory deleted file mode 100644 index 9d16f85..0000000 --- a/.Rhistory +++ /dev/null @@ -1,512 +0,0 @@ -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC3 (", round(variance_explained[3], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 2: PC1 vs PC3 ---- -ggplot(pca_df, aes(x = PC1, y = PC3, color = Species)) + -geom_point(size = 2) + -stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC3 (", round(variance_explained[3], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 3: PC2 vs PC3 ---- -ggplot(pca_df, aes(x = PC2, y = PC3, color = Species)) + -geom_point(size = 3) + -stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC2 (", round(variance_explained[2], 1), "%)"), -y = paste0("PC3 (", round(variance_explained[3], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 3) + -stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 3) + -stat_ellipse(aes(group = Species), level = 0.99) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 3) + -stat_ellipse(aes(group = Species), level = 0.90) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 1) + -#stat_ellipse(aes(group = Species), level = 0.90) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 1.5) + -#stat_ellipse(aes(group = Species), level = 0.90) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 1.5) + -#stat_ellipse(aes(group = Species), level = 0.90) + -# theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 1.5) + -#stat_ellipse(aes(group = Species), level = 0.90) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 1.5) + -#stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 1.5) + -stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 1.5) + -stat_ellipse(aes(group = Species), level = 0.99) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 1.5) + -stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 1: PC1 vs PC2 ---- -ggplot(pca_df, aes(x = PC1, y = PC2, color = Species)) + -geom_point(size = 1.5) + -stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC2 (", round(variance_explained[2], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 2: PC1 vs PC3 ---- -ggplot(pca_df, aes(x = PC1, y = PC3, color = Species)) + -geom_point(size = 1.5) + -stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC1 (", round(variance_explained[1], 1), "%)"), -y = paste0("PC3 (", round(variance_explained[3], 1), "%)") -) + -theme(legend.position = "right") -# ---- Plot 3: PC2 vs PC3 ---- -ggplot(pca_df, aes(x = PC2, y = PC3, color = Species)) + -geom_point(size = 1.5) + -stat_ellipse(aes(group = Species), level = 0.95) + -theme_minimal() + -labs( -title = "PCA for Trachycarpus Species", -x = paste0("PC2 (", round(variance_explained[2], 1), "%)"), -y = paste0("PC3 (", round(variance_explained[3], 1), "%)") -) + -theme(legend.position = "right") -shiny::runApp('app') -runApp('app') -shiny::runApp('app') -shiny::runApp('app') -runApp('app') -install.packages("golem") -golem::create_golem("/example") -golem::create_golem("/stuff") -shiny::runApp() -runApp() -devtools::document() -runApp() -devtools::document() -devtools::document() -devtools::document() -devtools::document() -runApp() -shiny::runApp() -devtools::document() -shiny::runApp() -shiny::runApp() -runApp() -runApp() -devtools::document() -runApp() -devtools::document() -runApp() -runApp() -devtools::document() -runApp() -devtools::document() -runApp() -devtools::document() -runApp() -devtools::document() -runApp() -devtools::document() -runApp() -devtools::document() -runApp() -devtools::document() -runApp() -devtools::document() -runApp() -shiny::runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -runApp() -#### test function #### -find_parentage(genotypes_file = "genotypes.txt", -parents_file = "parents.txt", -progeny_file = "progeny.txt", -method = "best_pair", -write_txt = T, -show_ties = T) -results <- validate_pedigree( -pedigree_file = test_data$files$pedigree, -genotypes_file = test_data$files$genotypes, -trio_error_threshold = 5.0, -min_markers = 100, -single_parent_error_threshold = 2.0, -fill_pedigree = T, -verbose = F, -write_txt = F,output_filename = corrected_pedigree_filled) -runApp() -runApp() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -tagList( -# Leave this function for adding external resources -golem_add_external_resources(), -# Dynamic sidebar color theme — only sets the :root CSS variables -# ── Sidebar color theme ────────────────────────────────────────────────────── -# Change this value to switch the active sidebar menu item color. -# Available options: "azure", "green", "yellow", "grey", "purple", "red" -# ───────────────────────────────────────────────────────────────────────────── -tags$head(tags$style(HTML(sprintf( -":root { --sidebar-core: var(--%s-core); --sidebar-lite: var(--%s-lite); --sidebar-deep: var(--%s-deep); }", -"red", "red", "red" -)))), -bs4DashPage( -skin = "black", -bs4DashNavbar( -title = tagList( -tags$img(src = 'www/familia_logo.png', height = '40', width = '50'), -), -rightUi = tags$li( -class = "dropdown", -tags$a( -href = "#", -class = "nav-link", -`data-toggle` = "dropdown", -icon("info-circle") -), -tags$div( -class = "dropdown-menu dropdown-menu-right", -tags$a( -class = "dropdown-item", -href = "#", -"Session Info", -onclick = "Shiny.setInputValue('session_info_button', Math.random())" -), -tags$a( -class = "dropdown-item", -href = "#", -"Check for Updates", -onclick = "Shiny.setInputValue('updates_info_button', Math.random())" -) -) -) -), -help = NULL, #This is the default bs4Dash button to control the presence of tooltips and popovers, which can be added as a user help/info feature. -bs4DashSidebar( -skin="light", -status = "warning", -fixed=TRUE, -#minified = F, -expandOnHover = TRUE, -sidebarMenu(id = "MainMenu", -flat = T, -tags$li(class = "header", style = "color: grey; margin-top: 10px; margin-bottom: 10px; padding-left: 15px;", "Menu"), -menuItem("Home", tabName = "welcome", icon = icon("house"),startExpanded = FALSE), -menuItem("Genetic Composition", icon = icon("chart-pie"), startExpanded = TRUE, -menuSubItem("SNMF", tabName = "snmf", icon = icon("list-ol")), -menuSubItem(HTML("BreedToolspoly"), tabName = "polybreedtools", icon = icon("chart-bar")) -), -menuItem("Parentage Testing", icon = icon("diagram-project"), startExpanded = TRUE, -menuSubItem("Find Parents", tabName = "parentage", icon = icon("circle-nodes")), -menuSubItem("Clean Pedigree", tabName = "validate_pedigree", icon = icon("broom")), -menuSubItem("Validate Pedigree", tabName = "validate_pedigree", icon = icon("sitemap")) -), -tags$li(class = "header", style = "color: grey; margin-top: 18px; margin-bottom: 10px; padding-left: 15px;", "Information"), -menuItem("Source Code", icon = icon("circle-info"), href = "https://www.github.com/Breeding-Insight/Genomics_Shiny_App"), -#menuItem( -# span("Job Queue", bs4Badge("demo", position = "right", color = "warning")), -# tabName = "slurm", -# icon = icon("clock")), -menuItem("Help", tabName = "help", icon = icon("circle-question")) -) -), -footer = dashboardFooter( -right = div( -style = "display: flex; align-items: center;", # Align text and images horizontally -div( -style = "display: flex; flex-direction: column; margin-right: 15px; text-align: right;", -div("2026 Breeding Insight"), -div("Funded by USDA through (UF|IFAS)") -), -div( -a( -img(src = "www/usda-logo-color.png", height = "45px"), -style = "margin-right: 15px;" -), -a( -img(src = "www/cornell_seal_simple_web_b31b1b.png", height = "45px") -) -) -), -left = div( -style = "display: flex; align-items: center; height: 100%;", -sprintf("v%s", as.character(utils::packageVersion("familia"))) -) -), -dashboardBody( -disconnectMessage(), #Adds generic error message for any error if not already accounted for -tags$style( -HTML( -".main-footer { -background-color: white; -color: grey; -height: 65px; -padding-top: 5px; -padding-bottom: 5px; -} -.main-footer a { -color: grey; -}" -) -), -tabItems( -tabItem( -tabName = "welcome", mod_Home_ui("Home_1") -), -tabItem( -tabName = "polybreedtools", mod_polybreedtools_ui("PolyBreedTools_1") -), -tabItem( -tabName = "snmf", mod_SNMF_ui("SNMF_1") -), -tabItem( -tabName = "parentage", mod_parentage_ui("parentage_1") -), -tabItem( -tabName = "validate_pedigree", mod_validate_pedigree_ui("validate_pedigree_1") -), -tabItem( -tabName = "help", mod_help_ui("help_1") -) -) -) -) -) -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -familia::run_app() -devtools::load_all() -familia::run_app() -run_app() -roxygen2::roxygenize() -devtools::load_all() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -devtools::load_all() -devtools::load_all() -run_app() -roxygen2::roxygenize() -devtools::load_all() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -devtools::load_all() -run_app() -devtools::load_all() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -devtools::load_all() -run_app() -run_app() -run_app() -devtools::load_all() -run_app() -devtools::load_all() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -run_app() -run_app() -devtools::load_all() -run_app() -devtools::load_all() -run_app() -devtools::load_all() -run_app() -devtools::load_all() -run_app() -run_app() -devtools::load_all() -run_app() -anole_vcf <- -read.vcfR( -"https://github.com/ivanprates/2018_Anolis_EcolEvol/blob/master/data/VCFtools_SNMF_punctatus_t70_s10_n46/punctatus_t70_s10_n46_filtered.recode.vcf?raw=true" -) -anole_vcf <- -vcfR::read.vcfR( -"https://github.com/ivanprates/2018_Anolis_EcolEvol/blob/master/data/VCFtools_SNMF_punctatus_t70_s10_n46/punctatus_t70_s10_n46_filtered.recode.vcf?raw=true" -) -View(anole_vcf) -vcfR::write.vcf(anole_vcf, "SNMF_test.vcf") -roxygen2::roxygenise() -devtools::document() -run_app() -install.packages("LEA") -install.packages("remotes") # if you haven’t -remotes::install_github("bioPop/LEA") -if (!requireNamespace("BiocManager", quietly = TRUE)) -install.packages("BiocManager") -BiocManager::install("LEA") -devtools::load_all() -run_app() From 37ec982cfcf91fe0bfae8bd758011e87ba262a77 Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Mon, 18 May 2026 08:30:46 -0400 Subject: [PATCH 12/26] fixed wording --- R/mod_ped_cleaner.R | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R index 0e0fe76..d93cdda 100644 --- a/R/mod_ped_cleaner.R +++ b/R/mod_ped_cleaner.R @@ -74,8 +74,8 @@ mod_ped_cleaner_ui <- function(id) {
    • Upload a tab-separated .txt, .tsv, or .csv pedigree file.
    • Required columns: id, male_parent, female_parent.
    • -
    • Click Run Pedigree Check to detect and fix issues.
    • -
    • Issues detected and corrected:
    • +
    • Click Run Pedigree Check to detect issues.
    • +
    • Issues detected:
      • Exact Duplicates — fully identical rows are removed.
      • Conflicting IDs — same ID with different parents; ambiguous parent set to 0.
      • @@ -264,7 +264,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { border_color <- if (total == 0) "#c3e6cb" else "#ffeeba" text_color <- if (total == 0) "#155724" else "#856404" headline <- if (total == 0) "No issues found. Pedigree looks clean!" else - paste0(total, " issue(s) detected and corrected. Review the Issue Tables tab.") + paste0(total, " issue(s) detected. Review the Issue Tables tab.") shiny::HTML(paste0( "
        = 1) { - if (file.exists(res2[[1]])) { file.copy(res2[[1]], file, overwrite = TRUE); return() } - if (dir.exists(res2[[1]])) { - all_paths <- list.files(res2[[1]], full.names = TRUE, recursive = TRUE) - all_paths <- all_paths[file.info(all_paths)$isdir %in% FALSE] - utils::zip(zipfile = file, files = all_paths) - return() - } - } - zips <- list.files(state$run_dir, pattern = "\\.zip$", full.names = TRUE) - if (length(zips) >= 1) { - newest <- zips[which.max(file.info(zips)$mtime)] - file.copy(newest, file, overwrite = TRUE) - return() - } - if (inherits(res, "error")) stop(res$message) - if (inherits(res2, "error")) stop(res2$message) - stop("export.snmfProject() did not produce a zip file.") - } - ) + output$download_snmf_figure <- shiny::downloadHandler( filename = function() { ext <- input$snmf_image_type %||% "jpeg" @@ -687,7 +676,6 @@ mod_SNMF_server <- function(input, output, session, parent_session) { height <- as.numeric(input$snmf_image_height %||% 5) dpi <- as.numeric(input$snmf_image_res %||% 300) fig <- input$snmf_figure %||% "Ancestry Plot" - # ── Shared plot helpers called here; no duplicated plot logic ───────── p <- if (fig == "Cross-Entropy Plot") ce_plot() else ancestry_plot() if (ext %in% c("png", "jpeg", "tiff")) { ggplot2::ggsave(filename = file, plot = p, width = width, height = height, units = "in", dpi = dpi) @@ -696,11 +684,13 @@ mod_SNMF_server <- function(input, output, session, parent_session) { } } ) + session$onSessionEnded(function() { cleanup_run_dir() }) } + ## To be copied in the UI # mod_SNMF_ui("SNMF_1") ## To be copied in the server -# mod_SNMF_server("SNMF_1") \ No newline at end of file +# mod_SNMF_server("SNMF_1") From 4cc6822a46a927429ca65b0fe1d3116da59ba1ee Mon Sep 17 00:00:00 2001 From: Josue Chinchilla-Vargas Date: Mon, 18 May 2026 09:59:02 -0400 Subject: [PATCH 14/26] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- R/help_ped_cleaner.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/help_ped_cleaner.R b/R/help_ped_cleaner.R index e2ac166..3caa6e8 100644 --- a/R/help_ped_cleaner.R +++ b/R/help_ped_cleaner.R @@ -88,7 +88,7 @@ help_content_ped_cleaner <- function(collapse_fn = NULL, id_prefix = "") { shiny::tags$ol( style = "font-size: 13px;", shiny::tags$li(shiny::HTML( - "Upload a tab-separated .txt, .tsv, or .csv + "Upload a tab-separated .txt or .tsv, or a comma-separated .csv, file with three columns: id, male_parent, female_parent." )), shiny::tags$li(shiny::HTML("Run Pedigree Check — scans for all five issue types below.")), From f115df399669a71b1387d2781b728115355e75a2 Mon Sep 17 00:00:00 2001 From: Josue Chinchilla-Vargas Date: Mon, 18 May 2026 10:01:13 -0400 Subject: [PATCH 15/26] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- R/mod_ped_cleaner.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R index d93cdda..6529545 100644 --- a/R/mod_ped_cleaner.R +++ b/R/mod_ped_cleaner.R @@ -72,7 +72,7 @@ mod_ped_cleaner_ui <- function(id) { shiny::fluidRow( shiny::column(12, shiny::wellPanel(shiny::HTML('
          -
        • Upload a tab-separated .txt, .tsv, or .csv pedigree file.
        • +
        • Upload a tab-separated .txt or .tsv pedigree file, or a comma-separated .csv pedigree file.
        • Required columns: id, male_parent, female_parent.
        • Click Run Pedigree Check to detect issues.
        • Issues detected:
        • From a24a0ce16cc77d5786a94ef2cf02baa6ac31c505 Mon Sep 17 00:00:00 2001 From: Josue Chinchilla-Vargas Date: Mon, 18 May 2026 10:04:47 -0400 Subject: [PATCH 16/26] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- R/mod_polybreedtools.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/mod_polybreedtools.R b/R/mod_polybreedtools.R index be8ae02..21196d0 100644 --- a/R/mod_polybreedtools.R +++ b/R/mod_polybreedtools.R @@ -64,7 +64,7 @@ mod_polybreedtools_ui <- function(id) {
          Funkhouser et al. (2017).
        • Input format:
          • -
          • Reference Genotypes: A genotype matrix (.txt) with SNPs in rows and samples in columns. The first column must be ID. Missing should be coded as NA.
          • +
          • Reference Genotypes: A genotype matrix (.txt) with samples in rows and SNP markers in columns. The first column must be ID containing sample IDs. Missing values should be coded as NA.
          • Reference IDs: A two-column .txt file with population labels. Header example: Group1, Group2.
          • Validation Genotypes: Same format as the reference genotype file.
          From f1c340febbc2499b1ec0c3967c88e06a2ccf9038 Mon Sep 17 00:00:00 2001 From: Josue Chinchilla-Vargas Date: Mon, 18 May 2026 10:07:27 -0400 Subject: [PATCH 17/26] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- R/mod_ped_cleaner.R | 1 + 1 file changed, 1 insertion(+) diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R index 6529545..485aa21 100644 --- a/R/mod_ped_cleaner.R +++ b/R/mod_ped_cleaner.R @@ -355,6 +355,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { report <- results$report tmp_dir <- tempfile("ped_export") dir.create(tmp_dir) + on.exit(unlink(tmp_dir, recursive = TRUE), add = TRUE) if (!is.null(results$corrected_ped)) { write.table(results$corrected_ped, From d0db729d34a4c174a53674b30e67c2bb528419e5 Mon Sep 17 00:00:00 2001 From: Josue Chinchilla-Vargas Date: Mon, 18 May 2026 10:07:52 -0400 Subject: [PATCH 18/26] Potential fix for pull request finding Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com> --- R/mod_ped_cleaner.R | 1 + 1 file changed, 1 insertion(+) diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R index 485aa21..014ff23 100644 --- a/R/mod_ped_cleaner.R +++ b/R/mod_ped_cleaner.R @@ -208,6 +208,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { # Correction 3: write ped_raw to a known-extension temp file tmp_ped_path <- tempfile(fileext = ".txt") + on.exit(unlink(tmp_ped_path), add = TRUE) write.table(ped_raw, tmp_ped_path, sep = "\t", row.names = FALSE, quote = FALSE) From e9092c9a69f2e3697e928d840df54bd655092129 Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Mon, 18 May 2026 10:19:38 -0400 Subject: [PATCH 19/26] updated help file to match new buttons --- R/help_SNMF.R | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/R/help_SNMF.R b/R/help_SNMF.R index 3874697..e8b08f9 100644 --- a/R/help_SNMF.R +++ b/R/help_SNMF.R @@ -111,8 +111,7 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { "Review the Cross-Entropy, Ancestry Plot, Q Matrix, and Logs tabs." )), shiny::tags$li(shiny::HTML( - "Export the Q matrix as .csv, cross-entropy as .csv, - or the full LEA project as a .zip." + "Export the Q matrix as .csvor cross-entropy as .csv." )) ), shiny::hr(style = "margin: 8px 0;"), @@ -279,10 +278,7 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { "Download cross-entropy (CSV) — full cross-entropy table across all K values and repetitions (only available when cross-entropy is enabled)." )), - shiny::tags$li(shiny::HTML( - "Save Project (.zip) — complete LEA project directory, allowing you - to reload results in R using LEA::load.snmfProject()." - )), + shiny::tags$li(shiny::HTML( "Save Image — exports the Cross-Entropy Plot or Ancestry Plot as jpeg, tiff, png, or svg From 0dde4d316a9c1d7f688f1b71532d5cccc1b29b59 Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Mon, 18 May 2026 10:45:57 -0400 Subject: [PATCH 20/26] added sorting option for plot and fixed brwer pallette not having enough colors for SNMF --- R/mod_SNMF.R | 55 +++++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 50 insertions(+), 5 deletions(-) diff --git a/R/mod_SNMF.R b/R/mod_SNMF.R index 2a41bc3..c7a3131 100644 --- a/R/mod_SNMF.R +++ b/R/mod_SNMF.R @@ -23,6 +23,7 @@ mod_SNMF_ui <- function(id) { overlayOpacity = 0.3, refreshColour = "purple" ), + # Column 1: Inputs shiny::column( width = 3, @@ -75,6 +76,7 @@ mod_SNMF_ui <- function(id) { ) ) ), + # Column 2: Results shiny::column( width = 6, @@ -124,6 +126,7 @@ mod_SNMF_ui <- function(id) { ) ) ), + # Column 3: Status + Plot Controls shiny::column( width = 3, @@ -161,7 +164,8 @@ mod_SNMF_ui <- function(id) { ), selected = "Set1" ), - shiny::checkboxInput(ns("snmf_show_sample_labels"), "Show sample labels", value = TRUE), + shiny::checkboxInput(ns("snmf_show_sample_labels"), "Show sample labels", value = TRUE), + shiny::checkboxInput(ns("snmf_sort_by_cluster"), "Sort by dominant cluster", value = FALSE), shiny::sliderInput(ns("snmf_label_size"), "Label size", min = 6, max = 14, value = 8, step = 1), shiny::div( style = "display:inline-block; float:left", @@ -426,11 +430,36 @@ mod_SNMF_server <- function(input, output, session, parent_session) { times = q_cols, direction = "long" ) - long$ID <- factor(long$ID, levels = unique(df$ID)) long$Cluster <- factor(long$Cluster, levels = q_cols) + + # Sort by dominant cluster + if (isTRUE(input$snmf_sort_by_cluster)) { + q_wide <- as.data.frame(q) + dominant_cluster <- colnames(q_wide)[max.col(q_wide, ties.method = "first")] + dominant_value <- apply(q_wide, 1, max, na.rm = TRUE) + id_order <- data.frame( + ID = rownames(q), + dominant_cluster = dominant_cluster, + dominant_value = dominant_value, + stringsAsFactors = FALSE + ) + id_order <- id_order[order(id_order$dominant_cluster, -id_order$dominant_value), ] + long$ID <- factor(long$ID, levels = id_order$ID) + } else { + long$ID <- factor(long$ID, levels = unique(df$ID)) + } + + # Palette fix: brwer pallete allows up to 9 colors but we need 10 + palette_name <- input$snmf_color_choice %||% "Set1" + palette_info <- RColorBrewer::brewer.pal.info[palette_name, , drop = FALSE] + max_colors <- palette_info$maxcolors[[1]] + n_base <- max(3L, max_colors) # brewer.pal requires n >= 3 + base_colors <- RColorBrewer::brewer.pal(n_base, palette_name) + fill_colors <- grDevices::colorRampPalette(base_colors)(length(q_cols)) + p <- ggplot2::ggplot(long, ggplot2::aes(x = ID, y = Q, fill = Cluster)) + ggplot2::geom_col(width = 0.9) + - ggplot2::scale_fill_brewer(palette = input$snmf_color_choice %||% "Set1") + + ggplot2::scale_fill_manual(values = fill_colors, drop = FALSE) + ggplot2::scale_y_continuous(labels = scales::percent_format(accuracy = 1)) + ggplot2::labs(x = "Individual", y = "Ancestry proportion", fill = "Cluster") + ggplot2::theme_minimal() + @@ -441,6 +470,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { ), panel.grid.major.x = ggplot2::element_blank() ) + if (!isTRUE(input$snmf_show_sample_labels)) { p <- p + ggplot2::theme( axis.text.x = ggplot2::element_blank(), @@ -457,7 +487,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { DT::datatable(df, options = list(scrollX = TRUE, pageLength = 10)) }) - output$snmf_q_plot <- shiny::renderPlot({ ancestry_plot() }) + output$snmf_q_plot <- shiny::renderPlot({ ancestry_plot() }) output$snmf_ce_plot <- shiny::renderPlot({ ce_plot() }) output$snmf_ce_table <- DT::renderDT({ @@ -508,13 +538,16 @@ mod_SNMF_server <- function(input, output, session, parent_session) { state$best_k <- NULL state$best_run_by_k <- NULL state$sample_ids <- NULL + shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 5, title = "Preparing input") set_status("Preparing input...\n") + uploaded_name <- input$snmf_file$name %||% "genotypes" ext_lower <- tolower(uploaded_name) file_base <- sub("\\.(vcf\\.gz|vcf|geno|gz)$", "", basename(uploaded_name), ignore.case = TRUE) geno_path <- file.path(state$run_dir, paste0(file_base, ".geno")) uploaded_path <- input$snmf_file$datapath + if (grepl("\\.geno$", ext_lower)) { copy_file_if_needed(uploaded_path, geno_path, overwrite = TRUE) } else if (grepl("\\.vcf\\.gz$|\\.vcf$|\\.gz$", ext_lower)) { @@ -547,8 +580,10 @@ mod_SNMF_server <- function(input, output, session, parent_session) { set_status("ERROR: Unsupported file type.\n") return() } + state$geno_path <- geno_path state$vcf_path <- NULL + shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 35, title = "Running SNMF") set_status( "Running SNMF...\n", @@ -557,9 +592,11 @@ mod_SNMF_server <- function(input, output, session, parent_session) { "Repetitions: ", reps, "\n", "Entropy: ", if (entropy_enabled) "enabled" else "disabled", "\n" ) + old_wd <- getwd() on.exit(setwd(old_wd), add = TRUE) setwd(state$run_dir) + snmf_args <- list( state$geno_path, K = state$k_values, @@ -573,6 +610,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { CPU = as.integer(input$snmf_cpu), seed = as.integer(input$snmf_seed) ) + project <- tryCatch( call_with_allowed_named_args(LEA::snmf, snmf_args), error = function(e) e @@ -584,8 +622,10 @@ mod_SNMF_server <- function(input, output, session, parent_session) { return() } state$project <- project + shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 75, title = "Summarizing results") set_status(paste0(capture.output(str(project, max.level = 1)), collapse = "\n"), "\n") + if (entropy_enabled) { ce_records <- list() for (k in state$k_values) { @@ -603,6 +643,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { } } state$ce_df <- do.call(rbind, ce_records) + min_ce_by_k <- tapply(state$ce_df$cross_entropy, state$ce_df$K, min, na.rm = TRUE) best_run_by_k <- sapply(names(min_ce_by_k), function(k_chr) { k_int <- as.integer(k_chr) @@ -611,6 +652,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { sub$run[which.min(sub$cross_entropy)] }) state$best_run_by_k <- best_run_by_k + ce_summary <- data.frame( K = as.integer(names(min_ce_by_k)), best_run = as.integer(best_run_by_k[names(min_ce_by_k)]), @@ -623,6 +665,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { } else { state$best_k <- state$k_values[[1]] } + shiny::updateSelectInput( session, "snmf_selected_k", choices = as.character(state$k_values), @@ -638,6 +681,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { choices = as.character(seq_len(reps)), selected = as.character(initial_run) ) + shinyWidgets::updateProgressBar(session = session, id = "pb_snmf", value = 100, title = "Complete!") set_status("SNMF complete.\n") }) @@ -692,5 +736,6 @@ mod_SNMF_server <- function(input, output, session, parent_session) { ## To be copied in the UI # mod_SNMF_ui("SNMF_1") + ## To be copied in the server -# mod_SNMF_server("SNMF_1") +# mod_SNMF_server("SNMF_1") \ No newline at end of file From bac81de69be89f2585b308f012464fd2c6403e30 Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Mon, 18 May 2026 10:50:58 -0400 Subject: [PATCH 21/26] updated help_SNMF to show latest changes --- R/help_SNMF.R | 73 ++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 58 insertions(+), 15 deletions(-) diff --git a/R/help_SNMF.R b/R/help_SNMF.R index e8b08f9..0cf8e28 100644 --- a/R/help_SNMF.R +++ b/R/help_SNMF.R @@ -11,7 +11,6 @@ #' @noRd help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { pid <- function(x) if (nchar(id_prefix) > 0) paste0(id_prefix, "_", x) else x - if (is.null(collapse_fn)) { collapse_fn <- function(panel_id, icon_name, label, body_content) { shiny::tags$div( @@ -58,7 +57,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { shiny::tags$tbody(rows) ) } - ce_row <- function(k, run, ce, bg = NULL) { style <- if (!is.null(bg)) paste0("background-color:", bg, ";") else "" shiny::tags$tr( @@ -70,7 +68,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { } shiny::tagList( - shiny::h6(shiny::tagList(shiny::icon("circle-info"), " Overview"), style = "font-weight: bold;"), shiny::p( @@ -111,7 +108,7 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { "Review the Cross-Entropy, Ancestry Plot, Q Matrix, and Logs tabs." )), shiny::tags$li(shiny::HTML( - "Export the Q matrix as .csvor cross-entropy as .csv." + "Export the Q matrix as .csv or cross-entropy as .csv." )) ), shiny::hr(style = "margin: 8px 0;"), @@ -123,7 +120,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { ), shiny::p("Click each mode to see how K and run are selected.", style = "color: #6c757d; font-size: 12px; margin-bottom: 8px;"), - collapse_fn( panel_id = pid("snmf_help_auto_entropy"), icon_name = "wand-magic-sparkles", @@ -147,7 +143,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { ) ) ), - collapse_fn( panel_id = pid("snmf_help_manual_entropy"), icon_name = "hand-pointer", @@ -166,7 +161,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { ) ) ), - collapse_fn( panel_id = pid("snmf_help_no_entropy"), icon_name = "ban", @@ -184,7 +178,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { ) ) ), - shiny::hr(style = "margin: 8px 0;"), # ── Parameter Reference ────────────────────────────────────────── @@ -194,7 +187,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { ), shiny::p("Click each parameter to see what it controls.", style = "color: #6c757d; font-size: 12px; margin-bottom: 8px;"), - collapse_fn( panel_id = pid("snmf_help_alpha"), icon_name = "a", @@ -206,7 +198,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { style = "margin: 0;" ) ), - collapse_fn( panel_id = pid("snmf_help_iterations"), icon_name = "rotate", @@ -217,7 +208,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { style = "margin: 0;" ) ), - collapse_fn( panel_id = pid("snmf_help_tolerance"), icon_name = "arrows-left-right-to-line", @@ -229,7 +219,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { style = "margin: 0;" ) ), - collapse_fn( panel_id = pid("snmf_help_percentage"), icon_name = "percent", @@ -240,7 +229,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { style = "margin: 0;" ) ), - collapse_fn( panel_id = pid("snmf_help_cpu"), icon_name = "microchip", @@ -251,7 +239,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { style = "margin: 0;" ) ), - collapse_fn( panel_id = pid("snmf_help_seed"), icon_name = "seedling", @@ -262,7 +249,64 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { style = "margin: 0;" ) ), + shiny::hr(style = "margin: 8px 0;"), + # ── Plot Controls ───────────────────────────────────────────────── + shiny::h6( + shiny::tagList(shiny::icon("palette"), " Plot Controls"), + style = "font-weight: bold;" + ), + shiny::p("Click each control to see what it does.", + style = "color: #6c757d; font-size: 12px; margin-bottom: 8px;"), + collapse_fn( + panel_id = pid("snmf_help_color_palette"), + icon_name = "palette", + label = "Color Palette", + body_content = shiny::p( + "Selects the color scheme for the ancestry plot. Palettes are drawn from ColorBrewer. + When the number of clusters (K) exceeds the maximum colors supported by the chosen + palette, colors are automatically interpolated so every cluster receives a distinct + color. Colorblind-friendly palettes are available in the second group of the dropdown.", + style = "margin: 0;" + ) + ), + collapse_fn( + panel_id = pid("snmf_help_show_labels"), + icon_name = "tag", + label = "Show sample labels", + body_content = shiny::p( + "Toggles the display of individual sample IDs on the x-axis of the ancestry plot. + Hiding labels can improve readability for large datasets.", + style = "margin: 0;" + ) + ), + collapse_fn( + panel_id = pid("snmf_help_sort_by_cluster"), + icon_name = "arrow-down-wide-short", + label = "Sort by dominant cluster", + body_content = shiny::tagList( + shiny::p( + "When checked, individuals in the ancestry plot are reordered so that those sharing + the same dominant cluster appear together, sorted from highest to lowest proportion + of that cluster. This produces the classic STRUCTURE-style grouped bar plot.", + style = "margin-bottom: 6px;" + ), + shiny::p( + "When unchecked, individuals are displayed in their original input order.", + style = "color: #6c757d; font-size: 11px; margin: 0;" + ) + ) + ), + collapse_fn( + panel_id = pid("snmf_help_label_size"), + icon_name = "text-height", + label = "Label size", + body_content = shiny::p( + "Controls the font size of the sample ID labels on the x-axis. Range is 6–14pt. + Only has a visible effect when sample labels are enabled.", + style = "margin: 0;" + ) + ), shiny::hr(style = "margin: 8px 0;"), # ── Export Contents ────────────────────────────────────────────── @@ -278,7 +322,6 @@ help_content_SNMF <- function(collapse_fn = NULL, id_prefix = "") { "Download cross-entropy (CSV) — full cross-entropy table across all K values and repetitions (only available when cross-entropy is enabled)." )), - shiny::tags$li(shiny::HTML( "Save Image — exports the Cross-Entropy Plot or Ancestry Plot as jpeg, tiff, png, or svg From 5721583e0f68b5342638f39da0dbf9eb5f621bea Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Tue, 19 May 2026 14:13:42 -0400 Subject: [PATCH 22/26] incorporated autopilot feedback --- R/app_ui.R | 16 +++++++------- R/help_polybreedtools.R | 9 ++++---- R/mod_SNMF.R | 2 +- R/mod_ped_cleaner.R | 46 ++++++++++++++++++++--------------------- 4 files changed, 37 insertions(+), 36 deletions(-) diff --git a/R/app_ui.R b/R/app_ui.R index 21db514..7fe4acc 100644 --- a/R/app_ui.R +++ b/R/app_ui.R @@ -12,15 +12,16 @@ app_ui <- function(request) { tagList( # Leave this function for adding external resources golem_add_external_resources(), - # ── Sidebar color theme ────────────────────────────────────────────────────── + # Dynamic sidebar color theme — only sets the :root CSS variables # Available options: "azure", "green", "yellow", "grey", "purple", "red" # Change this value to switch the active sidebar menu item color. - # ───────────────────────────────────────────────────────────────────────────── + tags$head(tags$style(HTML(sprintf( ":root { --sidebar-core: var(--%s-core); --sidebar-lite: var(--%s-lite); --sidebar-deep: var(--%s-deep); }", "green", "green", "green" )))), + # Your application UI logic bs4DashPage( skin = "black", @@ -53,7 +54,7 @@ app_ui <- function(request) { ) ) ), - help = NULL, #This is the default bs4Dash button to control the presence of tooltips and popovers, which can be added as a user help/info feature. + help = NULL, bs4DashSidebar( skin = "light", status = "warning", @@ -69,8 +70,8 @@ app_ui <- function(request) { tags$li(class = "header", style = "color: grey; margin-top: 18px; margin-bottom: 10px; padding-left: 15px;", "Breed/Line Composition"), menuItem(HTML("BreedToolspoly"), tabName = "polybreedtools", icon = icon("chart-column")), menuItem("SNMF", tabName = "snmf", icon = icon("list-ol")), - # ── Genomic Diversity tab intentionally removed ────────────────────── - tags$li(class = "header", style = "color: grey; margin-top: 18px; margin-bottom: 10px; padding-left: 15px;", "Information"), + + tags$li(class = "header", style = "color: grey; margin-top: 18px; margin-bottom: 10px; padding-left: 15px;", "Information"), menuItem("Source Code", icon = icon("circle-info"), href = "https://github.com/Breeding-Insight/familia"), menuItem("Help", tabName = "help", icon = icon("circle-question")) ) @@ -99,7 +100,7 @@ app_ui <- function(request) { ) ), dashboardBody( - disconnectMessage(), #Adds generic error message for any error if not already accounted for + disconnectMessage(), tags$style( HTML( ".main-footer { @@ -163,7 +164,6 @@ golem_add_external_resources <- function() { /* Make collapse/expand icons visible on white box headers */ .card-tools .btn-tool { color: #495057 !important; } .card-tools .btn-tool:hover { color: #212529 !important; } - ")) - # ── Tab-sync script removed: handler already defined in custom.js ──────── + ")), ) } \ No newline at end of file diff --git a/R/help_polybreedtools.R b/R/help_polybreedtools.R index d466620..22a3a32 100644 --- a/R/help_polybreedtools.R +++ b/R/help_polybreedtools.R @@ -113,15 +113,16 @@ help_content_polybreedtools <- function(collapse_fn = NULL, id_prefix = "") { style = "font-size: 13px;", shiny::tags$li(shiny::HTML( "Upload Reference Genotypes — a tab-separated .txt file with - SNPs in rows and samples in columns. The first column must be ID. - Missing values should be coded as NA." + samples in rows and SNP markers in columns. The first column must be ID. + Missing values should be coded as NA." )), shiny::tags$li(shiny::HTML( "Upload Reference IDs — a tab-separated .txt file assigning - each reference sample to a group/line. Each column is one group; values are sample IDs." + each reference sample to a group/line. Each column is one group; values are sample IDs." )), shiny::tags$li(shiny::HTML( - "Upload Validation Genotypes — same format as the reference genotype file." + "Upload Validation Genotypes — same format as the reference genotype file + (samples in rows, SNP markers in columns, first column named ID)." )), shiny::tags$li(shiny::HTML( "Set Ploidy — enter the ploidy level of the species (e.g., 2 for diploid, 4 for tetraploid)." diff --git a/R/mod_SNMF.R b/R/mod_SNMF.R index c7a3131..ca5b6eb 100644 --- a/R/mod_SNMF.R +++ b/R/mod_SNMF.R @@ -449,7 +449,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { long$ID <- factor(long$ID, levels = unique(df$ID)) } - # Palette fix: brwer pallete allows up to 9 colors but we need 10 + # Palette fix: brewer pallete allows up to 9 colors but we need 10 palette_name <- input$snmf_color_choice %||% "Set1" palette_info <- RColorBrewer::brewer.pal.info[palette_name, , drop = FALSE] max_colors <- palette_info$maxcolors[[1]] diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R index 014ff23..48bdaef 100644 --- a/R/mod_ped_cleaner.R +++ b/R/mod_ped_cleaner.R @@ -1,4 +1,3 @@ - #' Pedigree Cleaner module UI #' #' @param id Module id @@ -10,7 +9,7 @@ mod_ped_cleaner_ui <- function(id) { shinyjs::useShinyjs(), shiny::fluidRow( - # Column 1: Inputs + # Column 1: Inputs shiny::column( width = 3, bs4Dash::box( @@ -54,7 +53,7 @@ mod_ped_cleaner_ui <- function(id) { ) # closes box ), # closes column(width = 3) - # Column 2: Results + # Column 2: Results shiny::column( width = 6, bs4Dash::box( @@ -103,7 +102,7 @@ mod_ped_cleaner_ui <- function(id) { ) # closes box ), # closes column(width = 6) - # Column 3: Status + # Column 3: Status shiny::column( width = 3, bs4Dash::box( @@ -126,7 +125,6 @@ mod_ped_cleaner_ui <- function(id) { ) # closes tagList } - #' Pedigree Cleaner module server #' #' @param id Module id @@ -138,7 +136,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { check_results <- shiny::reactiveVal(NULL) - # Help button + # Help button shiny::observeEvent(input$help_btn, { shiny::showModal( shiny::modalDialog( @@ -151,11 +149,11 @@ mod_ped_cleaner_server <- function(id, parent_session) { ) }) - # Run check + # Run check shiny::observeEvent(input$run_check, { shiny::req(input$ped_file) check_results(NULL) - shinyjs::disable("download_results") # ← un-namespaced; shinyjs handles it + shinyjs::disable("download_results") tryCatch({ shinyWidgets::updateProgressBar( @@ -206,7 +204,6 @@ mod_ped_cleaner_server <- function(id, parent_session) { title = "Detecting cycles and dependencies..." ) - # Correction 3: write ped_raw to a known-extension temp file tmp_ped_path <- tempfile(fileext = ".txt") on.exit(unlink(tmp_ped_path), add = TRUE) write.table(ped_raw, tmp_ped_path, @@ -218,10 +215,9 @@ mod_ped_cleaner_server <- function(id, parent_session) { save_zip = FALSE ) - # Correction 4: retrieve corrected pedigree from check_ped return - # Use the session-local report value instead of reaching into .GlobalEnv + # Use corrected_pedigree — the field returned by the latest check_ped [7] corrected_ped <- tryCatch( - report$corrected_ped, + report$corrected_pedigree, error = function(e) NULL ) @@ -235,7 +231,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { value = 100, status = "success", title = "Finished" ) - shinyjs::enable("download_results") # ← un-namespaced; shinyjs handles it + shinyjs::enable("download_results") shiny::updateTabsetPanel(session, "ped_results_tabs", selected = "Summary") @@ -248,7 +244,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { }) }) - # Summary banner + # Summary banner output$summary_banner <- shiny::renderUI({ shiny::req(check_results()) report <- check_results()$report @@ -256,7 +252,8 @@ mod_ped_cleaner_server <- function(id, parent_session) { get_count <- function(df) if (is.null(df) || !is.data.frame(df)) 0L else nrow(df) n_dupes <- get_count(report$exact_duplicates) n_conflict <- get_count(report$repeated_ids_diff) - n_messy <- get_count(report$inconsistent_sex_roles) + # use messy_parents from check_ped return [7]; label stays "inconsistent sex roles" + n_messy <- get_count(report$messy_parents) n_missing <- get_count(report$missing_parents) n_cycles <- get_count(report$dependencies) total <- n_dupes + n_conflict + n_messy + n_missing + n_cycles @@ -282,7 +279,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { )) }) - # Results UI + # Results UI output$results_ui <- shiny::renderUI({ shiny::req(check_results()) report <- check_results()$report @@ -328,7 +325,8 @@ mod_ped_cleaner_server <- function(id, parent_session) { render_if("Exact Duplicates Removed", report$exact_duplicates) render_if("Conflicting IDs Resolved", report$repeated_ids_diff) - render_if("Inconsistent Parent Sex Roles", report$inconsistent_sex_roles) + # user-facing label stays "Inconsistent Parent Sex Roles"; data from messy_parents [7] + render_if("Inconsistent Parent Sex Roles", report$messy_parents) render_if("Missing Parents Added", report$missing_parents) render_if("Cycles / Dependencies Detected", report$dependencies) @@ -337,11 +335,12 @@ mod_ped_cleaner_server <- function(id, parent_session) { shiny::tagList(shiny::icon("list-check"), " Check Results"), style = "font-weight: bold; margin-bottom: 10px;" ), - make_section("Exact Duplicates Removed", "copy", report$exact_duplicates, "#6c757d"), - make_section("Conflicting IDs Resolved", "exclamation", report$repeated_ids_diff, "#856404"), - make_section("Inconsistent Parent Sex Roles", "shuffle", report$inconsistent_sex_roles, "#856404"), - make_section("Missing Parents Added", "user-plus", report$missing_parents, "#0c5460"), - make_section("Cycles / Dependencies Detected", "rotate", report$dependencies, "#721c24") + make_section("Exact Duplicates Removed", "copy", report$exact_duplicates, "#6c757d"), + make_section("Conflicting IDs Resolved", "exclamation", report$repeated_ids_diff, "#856404"), + # user-facing label stays "Inconsistent Parent Sex Roles"; data from messy_parents [7] + make_section("Inconsistent Parent Sex Roles", "shuffle", report$messy_parents, "#856404"), + make_section("Missing Parents Added", "user-plus", report$missing_parents, "#0c5460"), + make_section("Cycles / Dependencies Detected", "rotate", report$dependencies, "#721c24") ) }) @@ -367,7 +366,8 @@ mod_ped_cleaner_server <- function(id, parent_session) { sections <- list( exact_duplicates = report$exact_duplicates, conflicting_ids = report$repeated_ids_diff, - inconsistent_sex_roles = report$inconsistent_sex_roles, + # key stays inconsistent_sex_roles so the output filename matches help docs [5] + inconsistent_sex_roles = report$messy_parents, missing_parents = report$missing_parents, dependencies = report$dependencies ) From 03b3ac19b950030747239c0f63eeaaed01c95e2f Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Tue, 19 May 2026 15:51:14 -0400 Subject: [PATCH 23/26] fixed app_ui trailing comma --- R/app_ui.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/R/app_ui.R b/R/app_ui.R index 7fe4acc..0509246 100644 --- a/R/app_ui.R +++ b/R/app_ui.R @@ -164,6 +164,6 @@ golem_add_external_resources <- function() { /* Make collapse/expand icons visible on white box headers */ .card-tools .btn-tool { color: #495057 !important; } .card-tools .btn-tool:hover { color: #212529 !important; } - ")), + ")) ) } \ No newline at end of file From 490a77a327143885bbed51ed01e37da5c6bb0344 Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Tue, 19 May 2026 16:10:15 -0400 Subject: [PATCH 24/26] reverted to inconcistent_sex_roles --- R/mod_ped_cleaner.R | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R index 48bdaef..b747284 100644 --- a/R/mod_ped_cleaner.R +++ b/R/mod_ped_cleaner.R @@ -252,8 +252,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { get_count <- function(df) if (is.null(df) || !is.data.frame(df)) 0L else nrow(df) n_dupes <- get_count(report$exact_duplicates) n_conflict <- get_count(report$repeated_ids_diff) - # use messy_parents from check_ped return [7]; label stays "inconsistent sex roles" - n_messy <- get_count(report$messy_parents) + n_messy <- get_count(report$inconsistent_sex_roles) n_missing <- get_count(report$missing_parents) n_cycles <- get_count(report$dependencies) total <- n_dupes + n_conflict + n_messy + n_missing + n_cycles @@ -325,8 +324,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { render_if("Exact Duplicates Removed", report$exact_duplicates) render_if("Conflicting IDs Resolved", report$repeated_ids_diff) - # user-facing label stays "Inconsistent Parent Sex Roles"; data from messy_parents [7] - render_if("Inconsistent Parent Sex Roles", report$messy_parents) + render_if("Inconsistent Parent Sex Roles", report$inconsistent_sex_roles) render_if("Missing Parents Added", report$missing_parents) render_if("Cycles / Dependencies Detected", report$dependencies) @@ -337,8 +335,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { ), make_section("Exact Duplicates Removed", "copy", report$exact_duplicates, "#6c757d"), make_section("Conflicting IDs Resolved", "exclamation", report$repeated_ids_diff, "#856404"), - # user-facing label stays "Inconsistent Parent Sex Roles"; data from messy_parents [7] - make_section("Inconsistent Parent Sex Roles", "shuffle", report$messy_parents, "#856404"), + make_section("Inconsistent Parent Sex Roles", "shuffle", report$inconsistent_sex_roles, "#856404"), make_section("Missing Parents Added", "user-plus", report$missing_parents, "#0c5460"), make_section("Cycles / Dependencies Detected", "rotate", report$dependencies, "#721c24") ) @@ -366,8 +363,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { sections <- list( exact_duplicates = report$exact_duplicates, conflicting_ids = report$repeated_ids_diff, - # key stays inconsistent_sex_roles so the output filename matches help docs [5] - inconsistent_sex_roles = report$messy_parents, + inconsistent_sex_roles = report$inconsistent_sex_roles, missing_parents = report$missing_parents, dependencies = report$dependencies ) From 9258384201c25e7a99f5ca64ecc9e82dcfa36b70 Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Wed, 20 May 2026 16:28:09 -0400 Subject: [PATCH 25/26] Updated UI and ped_cleaner function --- .DS_Store | Bin 14340 -> 14340 bytes R/help_ped_cleaner.R | 97 ++++++++++++++--------- R/mod_SNMF.R | 2 +- R/mod_ped_cleaner.R | 176 +++++++++++++++++++++++++---------------- R/mod_polybreedtools.R | 3 +- 5 files changed, 168 insertions(+), 110 deletions(-) diff --git a/.DS_Store b/.DS_Store index 52c0cb9c44425914fb95c19038bce9ee71f5cfe1..6ff26b3ca5cecd70dc7e3c2709a7097081a9ee28 100644 GIT binary patch delta 275 zcmZoEXepTBOBV7EM@=w=>;lkB!)49N`n3`Ibg3S^Z4$rOfoh5|61$&d~fPi4>p z%2Y6vc;@6MC*|ZPF)%O)FfcF`O+Kc+sh*c1jUkaCmm!lO2Z$4aYJ-6Ki-4wPp{i$8 u0_xNI4+cOM1A{P7CrDQgX|@7&&O?|odAZ8N*UIgqeE0Cso} A2LJ#7 diff --git a/R/help_ped_cleaner.R b/R/help_ped_cleaner.R index 3caa6e8..843afb6 100644 --- a/R/help_ped_cleaner.R +++ b/R/help_ped_cleaner.R @@ -1,4 +1,4 @@ -# help_content_ped_cleaner.R +# help_content_ped_cleaner.R #' Pedigree Cleaner help content #' #' Returns the UI content for the Pedigree Cleaner help section. @@ -44,7 +44,7 @@ help_content_ped_cleaner <- function(collapse_fn = NULL, id_prefix = "") { } } - # ── Shared pedigree table helpers ────────────────────────────────── + # Shared pedigree table helpers ped_table <- function(rows) { shiny::tags$table( class = "table table-bordered table-sm", @@ -76,48 +76,58 @@ help_content_ped_cleaner <- function(collapse_fn = NULL, id_prefix = "") { style = "font-weight: bold;"), shiny::p( "The Pedigree Cleaner automatically detects and corrects common pedigree issues. - Problems are fixed in place — the corrected pedigree and per-issue reports + Exact duplicates and missing parents are always corrected. + Conflicting trios and inconsistent sex roles are corrected when their + respective options are checked. Cycles and dependencies are reported only + and must be resolved manually. The corrected pedigree and per-issue reports are bundled into a single zip file for download.", style = "font-size: 13px;" ), shiny::hr(style = "margin: 8px 0;"), - # ── Steps ──────────────────────────────────────────────────────── + # Steps shiny::h6(shiny::tagList(shiny::icon("list-ol"), " Steps"), style = "font-weight: bold;"), shiny::tags$ol( style = "font-size: 13px;", shiny::tags$li(shiny::HTML( - "Upload a tab-separated .txt or .tsv, or a comma-separated .csv, + "Upload a tab-separated .txt or .tsv, or a comma-separated .csv, file with three columns: id, male_parent, female_parent." )), - shiny::tags$li(shiny::HTML("Run Pedigree Check — scans for all five issue types below.")), - shiny::tags$li(shiny::HTML("Review the summary banner and expandable result tables.")), - shiny::tags$li(shiny::HTML("Export the corrected pedigree and reports as a .zip file.")) + shiny::tags$li(shiny::HTML( + "Select correction options -- choose whether to correct conflicting trios + and/or inconsistent sex roles." + )), + shiny::tags$li(shiny::HTML("Run Pedigree Check -- scans for all five issue types below.")), + shiny::tags$li(shiny::HTML( + "Review the Run Summary panel on the right and the expandable result tables + in the Issue Tables tab." + )), + shiny::tags$li(shiny::HTML("Export the corrected pedigree and reports as a .zip file.")) ), shiny::hr(style = "margin: 8px 0;"), - # ── Issue Types ────────────────────────────────────────────────── + # Issue Types shiny::h6( - shiny::tagList(shiny::icon("triangle-exclamation"), " Issue Types — What Is Detected & How It Is Corrected"), + shiny::tagList(shiny::icon("triangle-exclamation"), " Issue Types -- What Is Detected and How It Is Corrected"), style = "font-weight: bold;" ), shiny::p("Click each issue type to expand a before/after example.", style = "color: #6c757d; font-size: 12px; margin-bottom: 8px;"), collapse_fn( - panel_id = pid("pc_help_exact_dup"), # <-- prefixed + panel_id = pid("pc_help_exact_dup"), icon_name = "copy", - label = "Exact Duplicates Removed", + label = "Exact Duplicates Removed (always corrected)", body_content = shiny::tagList( - shiny::p("Fully identical rows are removed, keeping only one copy.", + shiny::p("Fully identical rows are removed, keeping only one copy. This is always applied.", style = "margin-bottom: 6px;"), shiny::tags$strong("Before:"), ped_table(shiny::tagList( ped_row("A1", "B1", "C1"), ped_row("A1", "B1", "C1", bg = "#f8d7da") )), - shiny::p("The highlighted row is an exact copy — only one row will be kept.", + shiny::p("The highlighted row is an exact copy -- only one row will be kept.", style = "color: #721c24; font-size: 11px; margin-bottom: 6px;"), shiny::tags$strong("After:"), ped_table(ped_row("A1", "B1", "C1")) @@ -125,21 +135,22 @@ help_content_ped_cleaner <- function(collapse_fn = NULL, id_prefix = "") { ), collapse_fn( - panel_id = pid("pc_help_conflict"), # <-- prefixed + panel_id = pid("pc_help_conflict"), icon_name = "exclamation", - label = "Conflicting IDs Resolved", + label = "Conflicting Trios Resolved (corrected when option is checked)", body_content = shiny::tagList( shiny::p("The same individual ID appears with different parents. - When a conflict is detected the ambiguous parent is set to 0 (unknown).", + When correction is enabled, the ambiguous parent field is set to 0 (unknown) + and duplicate rows are collapsed to one.", style = "margin-bottom: 6px;"), shiny::tags$strong("Before:"), ped_table(shiny::tagList( ped_row("A1", "B1", "C1"), ped_row("A1", "B2", "C1", bg = "#f8d7da") )), - shiny::p(shiny::HTML("A1 has two different male parents (B1 and B2) — male_parent cannot be determined."), + shiny::p("A1 has two different male parents (B1 and B2) -- male_parent cannot be determined.", style = "color: #856404; font-size: 11px; margin-bottom: 6px;"), - shiny::tags$strong("After:"), + shiny::tags$strong("After (correct conflicting trios = TRUE):"), ped_table(ped_row("A1", "0", "C1", bg = "#fff3cd")), shiny::p("The conflicting male_parent is set to 0 (unknown). female_parent is unchanged since it was consistent.", style = "color: #856404; font-size: 11px;") @@ -147,33 +158,43 @@ help_content_ped_cleaner <- function(collapse_fn = NULL, id_prefix = "") { ), collapse_fn( - panel_id = pid("pc_help_messy"), # <-- prefixed + panel_id = pid("pc_help_messy"), icon_name = "shuffle", - label = "Inconsistent Parent Sex Roles", + label = "Inconsistent Sex Roles (corrected when option is checked)", body_content = shiny::tagList( shiny::p("An individual appears in the male_parent column in one record and the female_parent - column in another, indicating an inconsistent sex/role assignment across the pedigree.", + column in another, indicating an inconsistent sex/role assignment across the pedigree. + When correction is enabled, the parent fields referencing that individual are set to 0 + and any resulting exact duplicates are removed.", style = "margin-bottom: 6px;"), shiny::tags$strong("Before:"), ped_table(shiny::tagList( ped_row("A1", "B1", "C1"), ped_row("A2", "C1", "B1", bg = "#f8d7da") )), - shiny::p(shiny::HTML("B1 and C1 swap male_parent/female_parent roles across records — flagged for review."), + shiny::p("B1 and C1 swap male_parent/female_parent roles across records -- flagged for review.", + style = "color: #856404; font-size: 11px; margin-bottom: 6px;"), + shiny::tags$strong("After (correct inconsistent sex roles = TRUE):"), + ped_table(shiny::tagList( + ped_row("A1", "0", "0", bg = "#fff3cd"), + ped_row("A2", "0", "0", bg = "#fff3cd") + )), + shiny::p("Parent fields referencing conflicting IDs are set to 0. Exact duplicates resulting from this correction are removed.", style = "color: #856404; font-size: 11px;") ) ), collapse_fn( - panel_id = pid("pc_help_missing"), # <-- prefixed + panel_id = pid("pc_help_missing"), icon_name = "user-plus", - label = "Missing Parents Added", + label = "Missing Parents Added (always corrected)", body_content = shiny::tagList( - shiny::p("A parent is referenced in the male_parent or female_parent column but never appears as an individual.", + shiny::p("A parent is referenced in the male_parent or female_parent column but never appears as an individual. + Missing parents are always added as founders with unknown parents (0).", style = "margin-bottom: 6px;"), shiny::tags$strong("Before:"), ped_table(ped_row("A1", "B1", "C1")), - shiny::p(shiny::HTML("B1 and C1 are referenced but have no row of their own — missing parents are added automatically with unknown parents (0)."), + shiny::p("B1 and C1 are referenced but have no row of their own.", style = "color: #0c5460; font-size: 11px; margin-bottom: 6px;"), shiny::tags$strong("After:"), ped_table(shiny::tagList( @@ -185,35 +206,35 @@ help_content_ped_cleaner <- function(collapse_fn = NULL, id_prefix = "") { ), collapse_fn( - panel_id = pid("pc_help_cycles"), # <-- prefixed + panel_id = pid("pc_help_cycles"), icon_name = "rotate", - label = "Cycles / Dependencies Detected", + label = "Cycles / Dependencies Detected (reported only -- must be resolved manually)", body_content = shiny::tagList( - shiny::p("An animal appears as its own ancestor, creating a circular relationship. These are detected and flagged.", + shiny::p("An animal appears as its own ancestor, creating a circular relationship. + These are detected and reported but are never automatically corrected -- they must be resolved manually.", style = "margin-bottom: 6px;"), shiny::tags$strong("Example:"), ped_table(shiny::tagList( ped_row("A1", "B1", "C1"), ped_row("B1", "A1", "C2", bg = "#f8d7da") )), - shiny::p(shiny::HTML("A1 is listed as the male_parent of B1, but B1 - is also listed as the male_parent of A1 — flagged for review."), + shiny::p("A1 is listed as the male_parent of B1, but B1 is also listed as the male_parent of A1 -- flagged for manual review.", style = "color: #721c24; font-size: 11px;") ) ), shiny::hr(style = "margin: 8px 0;"), - # ── Export Contents ────────────────────────────────────────────── + # Export Contents shiny::h6(shiny::tagList(shiny::icon("download"), " Export Contents"), style = "font-weight: bold;"), shiny::tags$ul( style = "font-size: 13px;", - shiny::tags$li(shiny::HTML("corrected_pedigree.txt — the cleaned pedigree, tab-separated.")), - shiny::tags$li(shiny::HTML("One .txt report per issue type (only included if issues were found): - exact_duplicates.txt, conflicting_ids.txt, - inconsistent_sex_roles.txt, missing_parents.txt, - dependencies.txt.")) + shiny::tags$li(shiny::HTML("corrected_pedigree.txt -- the cleaned pedigree, tab-separated.")), + shiny::tags$li(shiny::HTML("One .txt report per issue type (only included if issues were found): + exact_duplicates.txt, conflicting_trios.txt, + inconsistent_sex_roles.txt, missing_parents.txt, + dependencies.txt.")) ) ) } \ No newline at end of file diff --git a/R/mod_SNMF.R b/R/mod_SNMF.R index ca5b6eb..04d090a 100644 --- a/R/mod_SNMF.R +++ b/R/mod_SNMF.R @@ -149,7 +149,7 @@ mod_SNMF_ui <- function(id) { bs4Dash::box( title = "Plot Controls", width = 12, - status = "warning", + status = "info", solidHeader = TRUE, collapsible = TRUE, shiny::uiOutput(ns("snmf_selectors_ui")), diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R index b747284..4272319 100644 --- a/R/mod_ped_cleaner.R +++ b/R/mod_ped_cleaner.R @@ -1,3 +1,35 @@ +# Helpers +make_collapse_panel <- function(panel_id, icon_name, label, body_content) { + shiny::tags$div( + class = "card mb-1", + style = "border: 1px solid #dee2e6; border-radius: 4px;", + shiny::tags$div( + class = "card-header p-0", + style = "background-color: #f8f9fa;", + shiny::tags$button( + class = "btn btn-link btn-sm w-100 text-left d-flex align-items-center", + style = "color: #343a40; text-decoration: none; font-size: 13px; padding: 8px 12px; gap: 6px;", + `data-toggle` = "collapse", + `data-target` = paste0("#", panel_id), + `aria-expanded` = "false", + shiny::icon(icon_name), + shiny::tags$span(label) + ) + ), + shiny::tags$div( + id = panel_id, + class = "collapse", + shiny::tags$div( + class = "card-body", + style = "padding: 12px 14px; font-size: 13px;", + body_content + ) + ) + ) +} + +sanitize_id <- function(x) gsub("[^A-Za-z0-9]", "_", tolower(x)) + #' Pedigree Cleaner module UI #' #' @param id Module id @@ -28,6 +60,22 @@ mod_ped_cleaner_ui <- function(id) { "Upload Pedigree File", accept = c(".txt", ".tsv", ".csv") ), + shiny::hr(), + shiny::p( + "Correction options:", + style = "color: #6c757d; font-size: 12px; margin-bottom: 5px;" + ), + shiny::checkboxInput( + ns("correct_conflicting_trios"), + "Correct conflicting trios", + value = TRUE + ), + shiny::checkboxInput( + ns("correct_inconsistent_sex_roles"), + "Correct inconsistent sex roles", + value = TRUE + ), + shiny::hr(), shiny::actionButton( ns("run_check"), "Run Pedigree Check", @@ -73,26 +121,22 @@ mod_ped_cleaner_ui <- function(id) {
          • Upload a tab-separated .txt or .tsv pedigree file, or a comma-separated .csv pedigree file.
          • Required columns: id, male_parent, female_parent.
          • -
          • Click Run Pedigree Check to detect issues.
          • +
          • Select correction options, then click Run Pedigree Check to detect issues.
          • +
          • A run summary will appear in the panel on the right after the check completes.
          • Issues detected:
            • -
            • Exact Duplicates — fully identical rows are removed.
            • -
            • Conflicting IDs — same ID with different parents; ambiguous parent set to 0.
            • -
            • Inconsistent Sex Roles — individual appears as both male and female parent.
            • -
            • Missing Parents — referenced parents added with unknown parents (0).
            • -
            • Cycles / Dependencies — circular relationships are flagged.
            • +
            • Exact Duplicates — fully identical rows are always removed.
            • +
            • Conflicting Trios — same ID with different parents; corrected when option is checked.
            • +
            • Inconsistent Sex Roles — individual appears as both male and female parent; corrected when option is checked.
            • +
            • Missing Parents — referenced parents always added with unknown parents (0).
            • +
            • Cycles / Dependencies — circular relationships are flagged and must be resolved manually.
            -
          • Review results in the Summary and Issue Tables tabs, then export.
          • +
          • Review results in the Issue Tables tab, then export.
          '))) ), style = "overflow-y: auto; height: 550px" ), - shiny::tabPanel( - "Summary", - shiny::uiOutput(ns("summary_banner")), - style = "overflow-y: auto; height: 550px; padding: 10px;" - ), shiny::tabPanel( "Issue Tables", shiny::uiOutput(ns("results_ui")), @@ -102,7 +146,7 @@ mod_ped_cleaner_ui <- function(id) { ) # closes box ), # closes column(width = 6) - # Column 3: Status + # Column 3: Status + Summary shiny::column( width = 3, bs4Dash::box( @@ -110,7 +154,6 @@ mod_ped_cleaner_ui <- function(id) { width = 12, collapsible = TRUE, status = "info", - solidHeader = TRUE, shinyWidgets::progressBar( id = ns("pb_ped"), value = 0, @@ -119,6 +162,15 @@ mod_ped_cleaner_ui <- function(id) { striped = TRUE, title = " " ) + ), + bs4Dash::box( + title = "Run Summary", + width = 12, + collapsible = TRUE, + collapsed = FALSE, + status = "info", + solidHeader = TRUE, + shiny::uiOutput(ns("summary_banner")) ) ) # closes column(width = 3) ) # closes fluidRow @@ -191,7 +243,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { shinyWidgets::updateProgressBar( session = session, id = "pb_ped", value = 50, status = "info", - title = "Checking for conflicting IDs and inconsistent parent sex roles..." + title = "Checking for conflicting trios and inconsistent sex roles..." ) shinyWidgets::updateProgressBar( session = session, id = "pb_ped", @@ -210,20 +262,22 @@ mod_ped_cleaner_server <- function(id, parent_session) { sep = "\t", row.names = FALSE, quote = FALSE) report <- BIGr::check_ped( - ped.file = tmp_ped_path, - verbose = FALSE, - save_zip = FALSE + ped.file = tmp_ped_path, + verbose = FALSE, + correct_conflicting_trios = input$correct_conflicting_trios, + correct_inconsistent_sex_roles = input$correct_inconsistent_sex_roles ) - # Use corrected_pedigree — the field returned by the latest check_ped [7] corrected_ped <- tryCatch( report$corrected_pedigree, error = function(e) NULL ) check_results(list( - report = report, - corrected_ped = corrected_ped + report = report, + corrected_ped = corrected_ped, + correct_conflicting_trios = input$correct_conflicting_trios, + correct_inconsistent_sex_roles = input$correct_inconsistent_sex_roles )) shinyWidgets::updateProgressBar( @@ -233,7 +287,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { ) shinyjs::enable("download_results") - shiny::updateTabsetPanel(session, "ped_results_tabs", selected = "Summary") + shiny::updateTabsetPanel(session, "ped_results_tabs", selected = "Issue Tables") }, error = function(e) { shinyWidgets::updateProgressBar( @@ -247,11 +301,13 @@ mod_ped_cleaner_server <- function(id, parent_session) { # Summary banner output$summary_banner <- shiny::renderUI({ shiny::req(check_results()) - report <- check_results()$report + report <- check_results()$report + do_trios <- check_results()$correct_conflicting_trios + do_sex <- check_results()$correct_inconsistent_sex_roles get_count <- function(df) if (is.null(df) || !is.data.frame(df)) 0L else nrow(df) n_dupes <- get_count(report$exact_duplicates) - n_conflict <- get_count(report$repeated_ids_diff) + n_conflict <- get_count(report$conflicting_trios) n_messy <- get_count(report$inconsistent_sex_roles) n_missing <- get_count(report$missing_parents) n_cycles <- get_count(report$dependencies) @@ -263,6 +319,17 @@ mod_ped_cleaner_server <- function(id, parent_session) { headline <- if (total == 0) "No issues found. Pedigree looks clean!" else paste0(total, " issue(s) detected. Review the Issue Tables tab.") + # Build correction status message based on checkbox state [4] + correction_msg <- if (do_trios && do_sex) { + "Exact duplicates and missing parents always corrected. Conflicting trios and inconsistent sex roles will also be corrected for this run (check help for details)." + } else if (do_trios && !do_sex) { + "Exact duplicates and missing parents always corrected. Only conflicting trios will also be corrected for this run (check help for details)." + } else if (!do_trios && do_sex) { + "Exact duplicates and missing parents always corrected. Only inconsistent sex roles will also be corrected for this run (check help for details)." + } else { + "Only exact duplicates and missing parents will be corrected for this run (check help for details)." + } + shiny::HTML(paste0( "
          ", @@ -270,10 +337,13 @@ mod_ped_cleaner_server <- function(id, parent_session) { headline, "

          ", "

          ", "- Exact duplicates removed: ", n_dupes, "  ", - "- Conflicting IDs resolved: ", n_conflict, "  ", - "- Inconsistent parent sex roles flagged: ", n_messy, "  ", + "- Conflicting trios resolved: ", n_conflict, "  ", + "- Inconsistent sex roles flagged: ", n_messy, "  ", "- Missing parents added: ", n_missing, "  ", "- Cycles detected: ", n_cycles, "", + "

          ", + "

          ", + correction_msg, "

          " )) }) @@ -323,21 +393,21 @@ mod_ped_cleaner_server <- function(id, parent_session) { } render_if("Exact Duplicates Removed", report$exact_duplicates) - render_if("Conflicting IDs Resolved", report$repeated_ids_diff) - render_if("Inconsistent Parent Sex Roles", report$inconsistent_sex_roles) - render_if("Missing Parents Added", report$missing_parents) - render_if("Cycles / Dependencies Detected", report$dependencies) + render_if("Conflicting Trios Resolved", report$conflicting_trios) + render_if("Inconsistent Sex Roles", report$inconsistent_sex_roles) + render_if("Missing Parents Added", report$missing_parents) + render_if("Cycles / Dependencies Detected", report$dependencies) shiny::tagList( shiny::h5( shiny::tagList(shiny::icon("list-check"), " Check Results"), style = "font-weight: bold; margin-bottom: 10px;" ), - make_section("Exact Duplicates Removed", "copy", report$exact_duplicates, "#6c757d"), - make_section("Conflicting IDs Resolved", "exclamation", report$repeated_ids_diff, "#856404"), - make_section("Inconsistent Parent Sex Roles", "shuffle", report$inconsistent_sex_roles, "#856404"), - make_section("Missing Parents Added", "user-plus", report$missing_parents, "#0c5460"), - make_section("Cycles / Dependencies Detected", "rotate", report$dependencies, "#721c24") + make_section("Exact Duplicates Removed", "copy", report$exact_duplicates, "#6c757d"), + make_section("Conflicting Trios Resolved", "exclamation", report$conflicting_trios, "#856404"), + make_section("Inconsistent Sex Roles", "shuffle", report$inconsistent_sex_roles, "#856404"), + make_section("Missing Parents Added", "user-plus", report$missing_parents, "#0c5460"), + make_section("Cycles / Dependencies Detected", "rotate", report$dependencies, "#721c24") ) }) @@ -362,7 +432,7 @@ mod_ped_cleaner_server <- function(id, parent_session) { sections <- list( exact_duplicates = report$exact_duplicates, - conflicting_ids = report$repeated_ids_diff, + conflicting_trios = report$conflicting_trios, inconsistent_sex_roles = report$inconsistent_sex_roles, missing_parents = report$missing_parents, dependencies = report$dependencies @@ -385,36 +455,4 @@ mod_ped_cleaner_server <- function(id, parent_session) { ) }) -} - -# Helpers -make_collapse_panel <- function(panel_id, icon_name, label, body_content) { - shiny::tags$div( - class = "card mb-1", - style = "border: 1px solid #dee2e6; border-radius: 4px;", - shiny::tags$div( - class = "card-header p-0", - style = "background-color: #f8f9fa;", - shiny::tags$button( - class = "btn btn-link btn-sm w-100 text-left d-flex align-items-center", - style = "color: #343a40; text-decoration: none; font-size: 13px; padding: 8px 12px; gap: 6px;", - `data-toggle` = "collapse", - `data-target` = paste0("#", panel_id), - `aria-expanded` = "false", - shiny::icon(icon_name), - shiny::tags$span(label) - ) - ), - shiny::tags$div( - id = panel_id, - class = "collapse", - shiny::tags$div( - class = "card-body", - style = "padding: 12px 14px; font-size: 13px;", - body_content - ) - ) - ) -} - -sanitize_id <- function(x) gsub("[^A-Za-z0-9]", "_", tolower(x)) \ No newline at end of file +} \ No newline at end of file diff --git a/R/mod_polybreedtools.R b/R/mod_polybreedtools.R index 21196d0..bd3bfa3 100644 --- a/R/mod_polybreedtools.R +++ b/R/mod_polybreedtools.R @@ -112,13 +112,12 @@ mod_polybreedtools_ui <- function(id) { width = 12, collapsible = TRUE, status = "info", - solidHeader = TRUE, shiny::verbatimTextOutput(ns("status")) ), box( title = "Plot Controls", width = 12, - status = "warning", + status = "info", solidHeader = TRUE, collapsible = TRUE, selectInput(ns("color_choice"), "Color Palette", From 9242bda3e33bf87adf5e3419dd0dcb07dec91a2a Mon Sep 17 00:00:00 2001 From: "josue.chinchilla" Date: Thu, 21 May 2026 13:30:08 -0400 Subject: [PATCH 26/26] implemented final minor edits --- R/mod_SNMF.R | 2 +- R/mod_ped_cleaner.R | 4 ++-- R/mod_polybreedtools.R | 1 - 3 files changed, 3 insertions(+), 4 deletions(-) diff --git a/R/mod_SNMF.R b/R/mod_SNMF.R index 04d090a..f562a62 100644 --- a/R/mod_SNMF.R +++ b/R/mod_SNMF.R @@ -449,7 +449,7 @@ mod_SNMF_server <- function(input, output, session, parent_session) { long$ID <- factor(long$ID, levels = unique(df$ID)) } - # Palette fix: brewer pallete allows up to 9 colors but we need 10 + # Palette fix: brewer palete allows up to 9 colors but we need 10 palette_name <- input$snmf_color_choice %||% "Set1" palette_info <- RColorBrewer::brewer.pal.info[palette_name, , drop = FALSE] max_colors <- palette_info$maxcolors[[1]] diff --git a/R/mod_ped_cleaner.R b/R/mod_ped_cleaner.R index 4272319..9d920be 100644 --- a/R/mod_ped_cleaner.R +++ b/R/mod_ped_cleaner.R @@ -337,8 +337,8 @@ mod_ped_cleaner_server <- function(id, parent_session) { headline, "

          ", "

          ", "- Exact duplicates removed: ", n_dupes, "  ", - "- Conflicting trios resolved: ", n_conflict, "  ", - "- Inconsistent sex roles flagged: ", n_messy, "  ", + "- Conflicting trios detected/resolved: ", n_conflict, "  ", + "- Inconsistent sex roles detected/resolved: ", n_messy, "  ", "- Missing parents added: ", n_missing, "  ", "- Cycles detected: ", n_cycles, "", "

          ", diff --git a/R/mod_polybreedtools.R b/R/mod_polybreedtools.R index bd3bfa3..ed601ff 100644 --- a/R/mod_polybreedtools.R +++ b/R/mod_polybreedtools.R @@ -334,7 +334,6 @@ mod_polybreedtools_server <- function(input, output, session, parent_session) { }) }) # Ancestry plot - # Ancestry plot ancestry_plot <- reactive({ req(poly_items$pred_results_long, poly_items$id_order) dat <- poly_items$pred_results_long