From f1c1390029f2d6bc5d2253034f6498d159fca65f Mon Sep 17 00:00:00 2001 From: nf-core-bot Date: Fri, 30 Jun 2023 16:12:52 +0000 Subject: [PATCH 001/133] Template update for nf-core/tools version 2.9 --- .github/CONTRIBUTING.md | 1 - .github/ISSUE_TEMPLATE/bug_report.yml | 2 +- .github/workflows/awsfulltest.yml | 11 +- .github/workflows/awstest.yml | 10 +- .github/workflows/ci.yml | 2 +- .gitpod.yml | 5 + CHANGELOG.md | 2 +- CITATIONS.md | 6 + README.md | 6 +- assets/methods_description_template.yml | 12 +- assets/multiqc_config.yml | 4 +- assets/nf-core-crisprseq_logo_light.png | Bin 11593 -> 74216 bytes assets/slackreport.json | 2 +- conf/test_full.config | 2 - docs/usage.md | 6 +- lib/NfcoreSchema.groovy | 530 ------------------------ lib/NfcoreTemplate.groovy | 2 +- lib/WorkflowCrisprseq.groovy | 45 +- lib/WorkflowMain.groovy | 37 -- main.nf | 16 + nextflow.config | 54 ++- nextflow_schema.json | 36 +- workflows/crisprseq.nf | 25 +- 23 files changed, 177 insertions(+), 639 deletions(-) delete mode 100755 lib/NfcoreSchema.groovy diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 3893df65..607441a1 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -116,4 +116,3 @@ To get started: Devcontainer specs: - [DevContainer config](.devcontainer/devcontainer.json) -- [Dockerfile](.devcontainer/Dockerfile) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index a6a2106b..5be250d7 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -42,7 +42,7 @@ body: attributes: label: System information description: | - * Nextflow version _(eg. 22.10.1)_ + * Nextflow version _(eg. 23.04.0)_ * Hardware _(eg. HPC, Desktop, Cloud)_ * Executor _(eg. slurm, local, awsbatch)_ * Container engine: _(e.g. Docker, Singularity, Conda, Podman, Shifter, Charliecloud, or Apptainer)_ diff --git a/.github/workflows/awsfulltest.yml b/.github/workflows/awsfulltest.yml index 0cae140d..92ebecb0 100644 --- a/.github/workflows/awsfulltest.yml +++ b/.github/workflows/awsfulltest.yml @@ -14,7 +14,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Launch workflow via tower - uses: seqeralabs/action-tower-launch@v1 + uses: seqeralabs/action-tower-launch@v2 # TODO nf-core: You can customise AWS full pipeline tests as required # Add full size test data (but still relatively small datasets for few samples) # on the `test_full.config` test runs with only one set of parameters @@ -22,13 +22,18 @@ jobs: workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }} access_token: ${{ secrets.TOWER_ACCESS_TOKEN }} compute_env: ${{ secrets.TOWER_COMPUTE_ENV }} + revision: ${{ github.sha }} workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/crisprseq/work-${{ github.sha }} parameters: | { + "hook_url": "${{ secrets.MEGATESTS_ALERTS_SLACK_HOOK_URL }}", "outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/crisprseq/results-${{ github.sha }}" } - profiles: test_full,aws_tower + profiles: test_full + - uses: actions/upload-artifact@v3 with: name: Tower debug log file - path: tower_action_*.log + path: | + tower_action_*.log + tower_action_*.json diff --git a/.github/workflows/awstest.yml b/.github/workflows/awstest.yml index 6d64d2ba..0d650d8e 100644 --- a/.github/workflows/awstest.yml +++ b/.github/workflows/awstest.yml @@ -12,18 +12,22 @@ jobs: steps: # Launch workflow using Tower CLI tool action - name: Launch workflow via tower - uses: seqeralabs/action-tower-launch@v1 + uses: seqeralabs/action-tower-launch@v2 with: workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }} access_token: ${{ secrets.TOWER_ACCESS_TOKEN }} compute_env: ${{ secrets.TOWER_COMPUTE_ENV }} + revision: ${{ github.sha }} workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/crisprseq/work-${{ github.sha }} parameters: | { "outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/crisprseq/results-test-${{ github.sha }}" } - profiles: test,aws_tower + profiles: test + - uses: actions/upload-artifact@v3 with: name: Tower debug log file - path: tower_action_*.log + path: | + tower_action_*.log + tower_action_*.json diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c6c9113a..277385ff 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -24,7 +24,7 @@ jobs: strategy: matrix: NXF_VER: - - "22.10.1" + - "23.04.0" - "latest-everything" steps: - name: Check out pipeline code diff --git a/.gitpod.yml b/.gitpod.yml index 85d95ecc..25488dcc 100644 --- a/.gitpod.yml +++ b/.gitpod.yml @@ -1,4 +1,9 @@ image: nfcore/gitpod:latest +tasks: + - name: Update Nextflow and setup pre-commit + command: | + pre-commit install --install-hooks + nextflow self-update vscode: extensions: # based on nf-core.nf-core-extensionpack diff --git a/CHANGELOG.md b/CHANGELOG.md index 1d00cceb..6f507b61 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## v1.0 - [date] +## v2.0.0 - [date] Initial release of nf-core/crisprseq, created with the [nf-core](https://nf-co.re/) template. diff --git a/CITATIONS.md b/CITATIONS.md index 7093ef8f..287bcf20 100644 --- a/CITATIONS.md +++ b/CITATIONS.md @@ -12,7 +12,10 @@ - [FastQC](https://www.bioinformatics.babraham.ac.uk/projects/fastqc/) + > Andrews, S. (2010). FastQC: A Quality Control Tool for High Throughput Sequence Data [Online]. Available online https://www.bioinformatics.babraham.ac.uk/projects/fastqc/. + - [MultiQC](https://pubmed.ncbi.nlm.nih.gov/27312411/) + > Ewels P, Magnusson M, Lundin S, Käller M. MultiQC: summarize analysis results for multiple tools and samples in a single report. Bioinformatics. 2016 Oct 1;32(19):3047-8. doi: 10.1093/bioinformatics/btw354. Epub 2016 Jun 16. PubMed PMID: 27312411; PubMed Central PMCID: PMC5039924. ## Software packaging/containerisation tools @@ -31,5 +34,8 @@ - [Docker](https://dl.acm.org/doi/10.5555/2600239.2600241) + > Merkel, D. (2014). Docker: lightweight linux containers for consistent development and deployment. Linux Journal, 2014(239), 2. doi: 10.5555/2600239.2600241. + - [Singularity](https://pubmed.ncbi.nlm.nih.gov/28494014/) + > Kurtzer GM, Sochat V, Bauer MW. Singularity: Scientific containers for mobility of compute. PLoS One. 2017 May 11;12(5):e0177459. doi: 10.1371/journal.pone.0177459. eCollection 2017. PubMed PMID: 28494014; PubMed Central PMCID: PMC5426675. diff --git a/README.md b/README.md index 9f069719..23db4ee3 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ [![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX) -[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A522.10.1-23aa62.svg)](https://www.nextflow.io/) +[![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A523.04.0-23aa62.svg)](https://www.nextflow.io/) [![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/) [![run with docker](https://img.shields.io/badge/run%20with-docker-0db7ed?labelColor=000000&logo=docker)](https://www.docker.com/) [![run with singularity](https://img.shields.io/badge/run%20with-singularity-1d355c.svg?labelColor=000000)](https://sylabs.io/docs/) @@ -66,11 +66,11 @@ nextflow run nf-core/crisprseq \ > provided by the `-c` Nextflow option can be used to provide any configuration _**except for parameters**_; > see [docs](https://nf-co.re/usage/configuration#custom-configuration-files). -For more details, please refer to the [usage documentation](https://nf-co.re/crisprseq/usage) and the [parameter documentation](https://nf-co.re/crisprseq/parameters). +For more details and further functionality, please refer to the [usage documentation](https://nf-co.re/crisprseq/usage) and the [parameter documentation](https://nf-co.re/crisprseq/parameters). ## Pipeline output -To see the the results of a test run with a full size dataset refer to the [results](https://nf-co.re/crisprseq/results) tab on the nf-core website pipeline page. +To see the results of an example test run with a full size dataset refer to the [results](https://nf-co.re/crisprseq/results) tab on the nf-core website pipeline page. For more details about the output files and reports, please refer to the [output documentation](https://nf-co.re/crisprseq/output). diff --git a/assets/methods_description_template.yml b/assets/methods_description_template.yml index c10071b3..e2693af3 100644 --- a/assets/methods_description_template.yml +++ b/assets/methods_description_template.yml @@ -3,17 +3,21 @@ description: "Suggested text and references to use when describing pipeline usag section_name: "nf-core/crisprseq Methods Description" section_href: "https://github.com/nf-core/crisprseq" plot_type: "html" -## TODO nf-core: Update the HTML below to your prefered methods description, e.g. add publication citation for this pipeline +## TODO nf-core: Update the HTML below to your preferred methods description, e.g. add publication citation for this pipeline ## You inject any metadata in the Nextflow '${workflow}' object data: |

Methods

-

Data was processed using nf-core/crisprseq v${workflow.manifest.version} ${doi_text} of the nf-core collection of workflows (Ewels et al., 2020).

+

Data was processed using nf-core/crisprseq v${workflow.manifest.version} ${doi_text} of the nf-core collection of workflows (Ewels et al., 2020), utilising reproducible software environments from the Bioconda (Grüning et al., 2018) and Biocontainers (da Veiga Leprevost et al., 2017) projects.

The pipeline was executed with Nextflow v${workflow.nextflow.version} (Di Tommaso et al., 2017) with the following command:

${workflow.commandLine}
+

${tool_citations}

References

Notes:
diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index 4a692180..5f5e0401 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -1,7 +1,7 @@ report_comment: > - This report has been generated by the nf-core/crisprseq + This report has been generated by the nf-core/crisprseq analysis pipeline. For information about how to interpret these results, please see the - documentation. + documentation. report_section_order: "nf-core-crisprseq-methods-description": order: -1000 diff --git a/assets/nf-core-crisprseq_logo_light.png b/assets/nf-core-crisprseq_logo_light.png index 622298e6e0d2c74423da9ab15bcc7d25a420edb1..9f408dfba734fa5979c87e0171517f987ada894a 100644 GIT binary patch literal 74216 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�ev`Q}H7y#R1zKkC5n?0_OP7^FqWWeXhX0t0pNK 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

)bNtXB<>| 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 F{vW@^HM;-+ literal 11593 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 } else { %>danger<%} %>", - "author_name": "sanger-tol/readmapping v${version} - ${runName}", + "author_name": "nf-core/crisprseq v${version} - ${runName}", "author_icon": "https://www.nextflow.io/docs/latest/_static/favicon.ico", "text": "<% if (success) { %>Pipeline completed successfully!<% } else { %>Pipeline completed with errors<% } %>", "fields": [ diff --git a/conf/test_full.config b/conf/test_full.config index db51bf13..85bc453c 100644 --- a/conf/test_full.config +++ b/conf/test_full.config @@ -10,8 +10,6 @@ ---------------------------------------------------------------------------------------- */ -cleanup = true - params { config_profile_name = 'Full test profile' config_profile_description = 'Full test dataset to check pipeline function' diff --git a/docs/usage.md b/docs/usage.md index cf8951d1..1a8c67bf 100644 --- a/docs/usage.md +++ b/docs/usage.md @@ -57,7 +57,7 @@ An [example samplesheet](../assets/samplesheet.csv) has been provided with the p The typical command for running the pipeline is as follows: ```bash -nextflow run nf-core/crisprseq --input samplesheet.csv --outdir --genome GRCh37 -profile docker +nextflow run nf-core/crisprseq --input ./samplesheet.csv --outdir ./results --genome GRCh37 -profile docker ``` This will launch the pipeline with the `docker` configuration profile. See below for more information about profiles. @@ -76,7 +76,8 @@ If you wish to repeatedly use the same parameters for multiple runs, rather than Pipeline settings can be provided in a `yaml` or `json` file via `-params-file `. > ⚠️ Do not use `-c ` to specify parameters as this will result in errors. Custom config files specified with `-c` must only be used for [tuning process resource specifications](https://nf-co.re/docs/usage/configuration#tuning-workflow-resources), other infrastructural tweaks (such as output directories), or module arguments (args). -> The above pipeline run specified with a params file in yaml format: + +The above pipeline run specified with a params file in yaml format: ```bash nextflow run nf-core/crisprseq -profile docker -params-file params.yaml @@ -88,7 +89,6 @@ with `params.yaml` containing: input: './samplesheet.csv' outdir: './results/' genome: 'GRCh37' -input: 'data' <...> ``` diff --git a/lib/NfcoreSchema.groovy b/lib/NfcoreSchema.groovy deleted file mode 100755 index 9b34804d..00000000 --- a/lib/NfcoreSchema.groovy +++ /dev/null @@ -1,530 +0,0 @@ -// -// This file holds several functions used to perform JSON parameter validation, help and summary rendering for the nf-core pipeline template. -// - -import nextflow.Nextflow -import org.everit.json.schema.Schema -import org.everit.json.schema.loader.SchemaLoader -import org.everit.json.schema.ValidationException -import org.json.JSONObject -import org.json.JSONTokener -import org.json.JSONArray -import groovy.json.JsonSlurper -import groovy.json.JsonBuilder - -class NfcoreSchema { - - // - // Resolve Schema path relative to main workflow directory - // - public static String getSchemaPath(workflow, schema_filename='nextflow_schema.json') { - return "${workflow.projectDir}/${schema_filename}" - } - - // - // Function to loop over all parameters defined in schema and check - // whether the given parameters adhere to the specifications - // - /* groovylint-disable-next-line UnusedPrivateMethodParameter */ - public static void validateParameters(workflow, params, log, schema_filename='nextflow_schema.json') { - def has_error = false - //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - // Check for nextflow core params and unexpected params - def json = new File(getSchemaPath(workflow, schema_filename=schema_filename)).text - def Map schemaParams = (Map) new JsonSlurper().parseText(json).get('definitions') - def nf_params = [ - // Options for base `nextflow` command - 'bg', - 'c', - 'C', - 'config', - 'd', - 'D', - 'dockerize', - 'h', - 'log', - 'q', - 'quiet', - 'syslog', - 'v', - - // Options for `nextflow run` command - 'ansi', - 'ansi-log', - 'bg', - 'bucket-dir', - 'c', - 'cache', - 'config', - 'dsl2', - 'dump-channels', - 'dump-hashes', - 'E', - 'entry', - 'latest', - 'lib', - 'main-script', - 'N', - 'name', - 'offline', - 'params-file', - 'pi', - 'plugins', - 'poll-interval', - 'pool-size', - 'profile', - 'ps', - 'qs', - 'queue-size', - 'r', - 'resume', - 'revision', - 'stdin', - 'stub', - 'stub-run', - 'test', - 'w', - 'with-apptainer', - 'with-charliecloud', - 'with-conda', - 'with-dag', - 'with-docker', - 'with-mpi', - 'with-notification', - 'with-podman', - 'with-report', - 'with-singularity', - 'with-timeline', - 'with-tower', - 'with-trace', - 'with-weblog', - 'without-docker', - 'without-podman', - 'work-dir' - ] - def unexpectedParams = [] - - // Collect expected parameters from the schema - def expectedParams = [] - def enums = [:] - for (group in schemaParams) { - for (p in group.value['properties']) { - expectedParams.push(p.key) - if (group.value['properties'][p.key].containsKey('enum')) { - enums[p.key] = group.value['properties'][p.key]['enum'] - } - } - } - - for (specifiedParam in params.keySet()) { - // nextflow params - if (nf_params.contains(specifiedParam)) { - log.error "ERROR: You used a core Nextflow option with two hyphens: '--${specifiedParam}'. Please resubmit with '-${specifiedParam}'" - has_error = true - } - // unexpected params - def params_ignore = params.schema_ignore_params.split(',') + 'schema_ignore_params' - def expectedParamsLowerCase = expectedParams.collect{ it.replace("-", "").toLowerCase() } - def specifiedParamLowerCase = specifiedParam.replace("-", "").toLowerCase() - def isCamelCaseBug = (specifiedParam.contains("-") && !expectedParams.contains(specifiedParam) && expectedParamsLowerCase.contains(specifiedParamLowerCase)) - if (!expectedParams.contains(specifiedParam) && !params_ignore.contains(specifiedParam) && !isCamelCaseBug) { - // Temporarily remove camelCase/camel-case params #1035 - def unexpectedParamsLowerCase = unexpectedParams.collect{ it.replace("-", "").toLowerCase()} - if (!unexpectedParamsLowerCase.contains(specifiedParamLowerCase)){ - unexpectedParams.push(specifiedParam) - } - } - } - - //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - // Validate parameters against the schema - InputStream input_stream = new File(getSchemaPath(workflow, schema_filename=schema_filename)).newInputStream() - JSONObject raw_schema = new JSONObject(new JSONTokener(input_stream)) - - // Remove anything that's in params.schema_ignore_params - raw_schema = removeIgnoredParams(raw_schema, params) - - Schema schema = SchemaLoader.load(raw_schema) - - // Clean the parameters - def cleanedParams = cleanParameters(params) - - // Convert to JSONObject - def jsonParams = new JsonBuilder(cleanedParams) - JSONObject params_json = new JSONObject(jsonParams.toString()) - - // Validate - try { - schema.validate(params_json) - } catch (ValidationException e) { - println '' - log.error 'ERROR: Validation of pipeline parameters failed!' - JSONObject exceptionJSON = e.toJSON() - printExceptions(exceptionJSON, params_json, log, enums) - println '' - has_error = true - } - - // Check for unexpected parameters - if (unexpectedParams.size() > 0) { - Map colors = NfcoreTemplate.logColours(params.monochrome_logs) - println '' - def warn_msg = 'Found unexpected parameters:' - for (unexpectedParam in unexpectedParams) { - warn_msg = warn_msg + "\n* --${unexpectedParam}: ${params[unexpectedParam].toString()}" - } - log.warn warn_msg - log.info "- ${colors.dim}Ignore this warning: params.schema_ignore_params = \"${unexpectedParams.join(',')}\" ${colors.reset}" - println '' - } - - if (has_error) { - Nextflow.error('Exiting!') - } - } - - // - // Beautify parameters for --help - // - public static String paramsHelp(workflow, params, command, schema_filename='nextflow_schema.json') { - Map colors = NfcoreTemplate.logColours(params.monochrome_logs) - Integer num_hidden = 0 - String output = '' - output += 'Typical pipeline command:\n\n' - output += " ${colors.cyan}${command}${colors.reset}\n\n" - Map params_map = paramsLoad(getSchemaPath(workflow, schema_filename=schema_filename)) - Integer max_chars = paramsMaxChars(params_map) + 1 - Integer desc_indent = max_chars + 14 - Integer dec_linewidth = 160 - desc_indent - for (group in params_map.keySet()) { - Integer num_params = 0 - String group_output = colors.underlined + colors.bold + group + colors.reset + '\n' - def group_params = params_map.get(group) // This gets the parameters of that particular group - for (param in group_params.keySet()) { - if (group_params.get(param).hidden && !params.show_hidden_params) { - num_hidden += 1 - continue; - } - def type = '[' + group_params.get(param).type + ']' - def description = group_params.get(param).description - def defaultValue = group_params.get(param).default != null ? " [default: " + group_params.get(param).default.toString() + "]" : '' - def description_default = description + colors.dim + defaultValue + colors.reset - // Wrap long description texts - // Loosely based on https://dzone.com/articles/groovy-plain-text-word-wrap - if (description_default.length() > dec_linewidth){ - List olines = [] - String oline = "" // " " * indent - description_default.split(" ").each() { wrd -> - if ((oline.size() + wrd.size()) <= dec_linewidth) { - oline += wrd + " " - } else { - olines += oline - oline = wrd + " " - } - } - olines += oline - description_default = olines.join("\n" + " " * desc_indent) - } - group_output += " --" + param.padRight(max_chars) + colors.dim + type.padRight(10) + colors.reset + description_default + '\n' - num_params += 1 - } - group_output += '\n' - if (num_params > 0){ - output += group_output - } - } - if (num_hidden > 0){ - output += colors.dim + "!! Hiding $num_hidden params, use --show_hidden_params to show them !!\n" + colors.reset - } - output += NfcoreTemplate.dashedLine(params.monochrome_logs) - return output - } - - // - // Groovy Map summarising parameters/workflow options used by the pipeline - // - public static LinkedHashMap paramsSummaryMap(workflow, params, schema_filename='nextflow_schema.json') { - // Get a selection of core Nextflow workflow options - def Map workflow_summary = [:] - if (workflow.revision) { - workflow_summary['revision'] = workflow.revision - } - workflow_summary['runName'] = workflow.runName - if (workflow.containerEngine) { - workflow_summary['containerEngine'] = workflow.containerEngine - } - if (workflow.container) { - workflow_summary['container'] = workflow.container - } - workflow_summary['launchDir'] = workflow.launchDir - workflow_summary['workDir'] = workflow.workDir - workflow_summary['projectDir'] = workflow.projectDir - workflow_summary['userName'] = workflow.userName - workflow_summary['profile'] = workflow.profile - workflow_summary['configFiles'] = workflow.configFiles.join(', ') - - // Get pipeline parameters defined in JSON Schema - def Map params_summary = [:] - def params_map = paramsLoad(getSchemaPath(workflow, schema_filename=schema_filename)) - for (group in params_map.keySet()) { - def sub_params = new LinkedHashMap() - def group_params = params_map.get(group) // This gets the parameters of that particular group - for (param in group_params.keySet()) { - if (params.containsKey(param)) { - def params_value = params.get(param) - def schema_value = group_params.get(param).default - def param_type = group_params.get(param).type - if (schema_value != null) { - if (param_type == 'string') { - if (schema_value.contains('$projectDir') || schema_value.contains('${projectDir}')) { - def sub_string = schema_value.replace('\$projectDir', '') - sub_string = sub_string.replace('\${projectDir}', '') - if (params_value.contains(sub_string)) { - schema_value = params_value - } - } - if (schema_value.contains('$params.outdir') || schema_value.contains('${params.outdir}')) { - def sub_string = schema_value.replace('\$params.outdir', '') - sub_string = sub_string.replace('\${params.outdir}', '') - if ("${params.outdir}${sub_string}" == params_value) { - schema_value = params_value - } - } - } - } - - // We have a default in the schema, and this isn't it - if (schema_value != null && params_value != schema_value) { - sub_params.put(param, params_value) - } - // No default in the schema, and this isn't empty - else if (schema_value == null && params_value != "" && params_value != null && params_value != false) { - sub_params.put(param, params_value) - } - } - } - params_summary.put(group, sub_params) - } - return [ 'Core Nextflow options' : workflow_summary ] << params_summary - } - - // - // Beautify parameters for summary and return as string - // - public static String paramsSummaryLog(workflow, params) { - Map colors = NfcoreTemplate.logColours(params.monochrome_logs) - String output = '' - def params_map = paramsSummaryMap(workflow, params) - def max_chars = paramsMaxChars(params_map) - for (group in params_map.keySet()) { - def group_params = params_map.get(group) // This gets the parameters of that particular group - if (group_params) { - output += colors.bold + group + colors.reset + '\n' - for (param in group_params.keySet()) { - output += " " + colors.blue + param.padRight(max_chars) + ": " + colors.green + group_params.get(param) + colors.reset + '\n' - } - output += '\n' - } - } - output += "!! Only displaying parameters that differ from the pipeline defaults !!\n" - output += NfcoreTemplate.dashedLine(params.monochrome_logs) - return output - } - - // - // Loop over nested exceptions and print the causingException - // - private static void printExceptions(ex_json, params_json, log, enums, limit=5) { - def causingExceptions = ex_json['causingExceptions'] - if (causingExceptions.length() == 0) { - def m = ex_json['message'] =~ /required key \[([^\]]+)\] not found/ - // Missing required param - if (m.matches()) { - log.error "* Missing required parameter: --${m[0][1]}" - } - // Other base-level error - else if (ex_json['pointerToViolation'] == '#') { - log.error "* ${ex_json['message']}" - } - // Error with specific param - else { - def param = ex_json['pointerToViolation'] - ~/^#\// - def param_val = params_json[param].toString() - if (enums.containsKey(param)) { - def error_msg = "* --${param}: '${param_val}' is not a valid choice (Available choices" - if (enums[param].size() > limit) { - log.error "${error_msg} (${limit} of ${enums[param].size()}): ${enums[param][0..limit-1].join(', ')}, ... )" - } else { - log.error "${error_msg}: ${enums[param].join(', ')})" - } - } else { - log.error "* --${param}: ${ex_json['message']} (${param_val})" - } - } - } - for (ex in causingExceptions) { - printExceptions(ex, params_json, log, enums) - } - } - - // - // Remove an element from a JSONArray - // - private static JSONArray removeElement(json_array, element) { - def list = [] - int len = json_array.length() - for (int i=0;i - if(raw_schema.keySet().contains('definitions')){ - raw_schema.definitions.each { definition -> - for (key in definition.keySet()){ - if (definition[key].get("properties").keySet().contains(ignore_param)){ - // Remove the param to ignore - definition[key].get("properties").remove(ignore_param) - // If the param was required, change this - if (definition[key].has("required")) { - def cleaned_required = removeElement(definition[key].required, ignore_param) - definition[key].put("required", cleaned_required) - } - } - } - } - } - if(raw_schema.keySet().contains('properties') && raw_schema.get('properties').keySet().contains(ignore_param)) { - raw_schema.get("properties").remove(ignore_param) - } - if(raw_schema.keySet().contains('required') && raw_schema.required.contains(ignore_param)) { - def cleaned_required = removeElement(raw_schema.required, ignore_param) - raw_schema.put("required", cleaned_required) - } - } - return raw_schema - } - - // - // Clean and check parameters relative to Nextflow native classes - // - private static Map cleanParameters(params) { - def new_params = params.getClass().newInstance(params) - for (p in params) { - // remove anything evaluating to false - if (!p['value']) { - new_params.remove(p.key) - } - // Cast MemoryUnit to String - if (p['value'].getClass() == nextflow.util.MemoryUnit) { - new_params.replace(p.key, p['value'].toString()) - } - // Cast Duration to String - if (p['value'].getClass() == nextflow.util.Duration) { - new_params.replace(p.key, p['value'].toString().replaceFirst(/d(?!\S)/, "day")) - } - // Cast LinkedHashMap to String - if (p['value'].getClass() == LinkedHashMap) { - new_params.replace(p.key, p['value'].toString()) - } - } - return new_params - } - - // - // This function tries to read a JSON params file - // - private static LinkedHashMap paramsLoad(String json_schema) { - def params_map = new LinkedHashMap() - try { - params_map = paramsRead(json_schema) - } catch (Exception e) { - println "Could not read parameters settings from JSON. $e" - params_map = new LinkedHashMap() - } - return params_map - } - - // - // Method to actually read in JSON file using Groovy. - // Group (as Key), values are all parameters - // - Parameter1 as Key, Description as Value - // - Parameter2 as Key, Description as Value - // .... - // Group - // - - private static LinkedHashMap paramsRead(String json_schema) throws Exception { - def json = new File(json_schema).text - def Map schema_definitions = (Map) new JsonSlurper().parseText(json).get('definitions') - def Map schema_properties = (Map) new JsonSlurper().parseText(json).get('properties') - /* Tree looks like this in nf-core schema - * definitions <- this is what the first get('definitions') gets us - group 1 - title - description - properties - parameter 1 - type - description - parameter 2 - type - description - group 2 - title - description - properties - parameter 1 - type - description - * properties <- parameters can also be ungrouped, outside of definitions - parameter 1 - type - description - */ - - // Grouped params - def params_map = new LinkedHashMap() - schema_definitions.each { key, val -> - def Map group = schema_definitions."$key".properties // Gets the property object of the group - def title = schema_definitions."$key".title - def sub_params = new LinkedHashMap() - group.each { innerkey, value -> - sub_params.put(innerkey, value) - } - params_map.put(title, sub_params) - } - - // Ungrouped params - def ungrouped_params = new LinkedHashMap() - schema_properties.each { innerkey, value -> - ungrouped_params.put(innerkey, value) - } - params_map.put("Other parameters", ungrouped_params) - - return params_map - } - - // - // Get maximum number of characters across all parameter names - // - private static Integer paramsMaxChars(params_map) { - Integer max_chars = 0 - for (group in params_map.keySet()) { - def group_params = params_map.get(group) // This gets the parameters of that particular group - for (param in group_params.keySet()) { - if (param.size() > max_chars) { - max_chars = param.size() - } - } - } - return max_chars - } -} diff --git a/lib/NfcoreTemplate.groovy b/lib/NfcoreTemplate.groovy index 25a0a74a..408951ae 100755 --- a/lib/NfcoreTemplate.groovy +++ b/lib/NfcoreTemplate.groovy @@ -128,7 +128,7 @@ class NfcoreTemplate { def email_html = html_template.toString() // Render the sendmail template - def max_multiqc_email_size = params.max_multiqc_email_size as nextflow.util.MemoryUnit + def max_multiqc_email_size = (params.containsKey('max_multiqc_email_size') ? params.max_multiqc_email_size : 0) as nextflow.util.MemoryUnit def smail_fields = [ email: email_address, subject: subject, email_txt: email_txt, email_html: email_html, projectDir: "$projectDir", mqcFile: mqc_report, mqcMaxSize: max_multiqc_email_size.toBytes() ] def sf = new File("$projectDir/assets/sendmail_template.txt") def sendmail_template = engine.createTemplate(sf).make(smail_fields) diff --git a/lib/WorkflowCrisprseq.groovy b/lib/WorkflowCrisprseq.groovy index 243f5da0..dd252d59 100755 --- a/lib/WorkflowCrisprseq.groovy +++ b/lib/WorkflowCrisprseq.groovy @@ -11,6 +11,7 @@ class WorkflowCrisprseq { // Check and validate parameters // public static void initialise(params, log) { + genomeExistsError(params, log) @@ -46,15 +47,57 @@ class WorkflowCrisprseq { return yaml_file_text } - public static String methodsDescriptionText(run_workflow, mqc_methods_yaml) { + // + // Generate methods description for MultiQC + // + + public static String toolCitationText(params) { + + // TODO Optionally add in-text citation tools to this list. + // Can use ternary operators to dynamically construct based conditions, e.g. params["run_xyz"] ? "Tool (Foo et al. 2023)" : "", + // Uncomment function in methodsDescriptionText to render in MultiQC report + def citation_text = [ + "Tools used in the workflow included:", + "FastQC (Andrews 2010),", + "MultiQC (Ewels et al. 2016)", + "." + ].join(' ').trim() + + return citation_text + } + + public static String toolBibliographyText(params) { + + // TODO Optionally add bibliographic entries to this list. + // Can use ternary operators to dynamically construct based conditions, e.g. params["run_xyz"] ? "

  • Author (2023) Pub name, Journal, DOI
  • " : "", + // Uncomment function in methodsDescriptionText to render in MultiQC report + def reference_text = [ + "
  • Andrews S, (2010) FastQC, URL: https://www.bioinformatics.babraham.ac.uk/projects/fastqc/).
  • ", + "
  • Ewels, P., Magnusson, M., Lundin, S., & Käller, M. (2016). MultiQC: summarize analysis results for multiple tools and samples in a single report. Bioinformatics , 32(19), 3047–3048. doi: /10.1093/bioinformatics/btw354
  • " + ].join(' ').trim() + + return reference_text + } + + public static String methodsDescriptionText(run_workflow, mqc_methods_yaml, params) { // Convert to a named map so can be used as with familar NXF ${workflow} variable syntax in the MultiQC YML file def meta = [:] meta.workflow = run_workflow.toMap() meta["manifest_map"] = run_workflow.manifest.toMap() + // Pipeline DOI meta["doi_text"] = meta.manifest_map.doi ? "(doi:
    ${meta.manifest_map.doi})" : "" meta["nodoi_text"] = meta.manifest_map.doi ? "": "
  • If available, make sure to update the text to include the Zenodo DOI of version of the pipeline used.
  • " + // Tool references + meta["tool_citations"] = "" + meta["tool_bibliography"] = "" + + // TODO Only uncomment below if logic in toolCitationText/toolBibliographyText has been filled! + //meta["tool_citations"] = toolCitationText(params).replaceAll(", \\.", ".").replaceAll("\\. \\.", ".").replaceAll(", \\.", ".") + //meta["tool_bibliography"] = toolBibliographyText(params) + + def methods_text = mqc_methods_yaml.text def engine = new SimpleTemplateEngine() diff --git a/lib/WorkflowMain.groovy b/lib/WorkflowMain.groovy index 72fbde90..a19a8241 100755 --- a/lib/WorkflowMain.groovy +++ b/lib/WorkflowMain.groovy @@ -20,40 +20,11 @@ class WorkflowMain { " https://github.com/${workflow.manifest.name}/blob/master/CITATIONS.md" } - // - // Generate help string - // - public static String help(workflow, params) { - def command = "nextflow run ${workflow.manifest.name} --input samplesheet.csv --genome GRCh37 -profile docker" - def help_string = '' - help_string += NfcoreTemplate.logo(workflow, params.monochrome_logs) - help_string += NfcoreSchema.paramsHelp(workflow, params, command) - help_string += '\n' + citation(workflow) + '\n' - help_string += NfcoreTemplate.dashedLine(params.monochrome_logs) - return help_string - } - - // - // Generate parameter summary log string - // - public static String paramsSummaryLog(workflow, params) { - def summary_log = '' - summary_log += NfcoreTemplate.logo(workflow, params.monochrome_logs) - summary_log += NfcoreSchema.paramsSummaryLog(workflow, params) - summary_log += '\n' + citation(workflow) + '\n' - summary_log += NfcoreTemplate.dashedLine(params.monochrome_logs) - return summary_log - } // // Validate parameters and print summary to screen // public static void initialise(workflow, params, log) { - // Print help to screen if required - if (params.help) { - log.info help(workflow, params) - System.exit(0) - } // Print workflow version and exit on --version if (params.version) { @@ -62,14 +33,6 @@ class WorkflowMain { System.exit(0) } - // Print parameter summary log to screen - log.info paramsSummaryLog(workflow, params) - - // Validate workflow parameters via the JSON schema - if (params.validate_params) { - NfcoreSchema.validateParameters(workflow, params, log) - } - // Check that a -profile or Nextflow config has been provided to run the pipeline NfcoreTemplate.checkConfigProvided(workflow, log) diff --git a/main.nf b/main.nf index 2071b49a..c5573a01 100644 --- a/main.nf +++ b/main.nf @@ -25,6 +25,22 @@ params.fasta = WorkflowMain.getGenomeAttribute(params, 'fasta') ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ +include { validateParameters; paramsHelp } from 'plugin/nf-validation' + +// Print help message if needed +if (params.help) { + def logo = NfcoreTemplate.logo(workflow, params.monochrome_logs) + def citation = '\n' + WorkflowMain.citation(workflow) + '\n' + def String command = "nextflow run ${workflow.manifest.name} --input samplesheet.csv --genome GRCh37 -profile docker" + log.info logo + paramsHelp(command) + citation + NfcoreTemplate.dashedLine(params.monochrome_logs) + System.exit(0) +} + +// Validate input parameters +if (params.validate_params) { + validateParameters() +} + WorkflowMain.initialise(workflow, params, log) /* diff --git a/nextflow.config b/nextflow.config index ae9ed185..c7eaca03 100644 --- a/nextflow.config +++ b/nextflow.config @@ -12,12 +12,12 @@ params { // TODO nf-core: Specify your pipeline's command line flags // Input options input = null - - // References genome = null igenomes_base = 's3://ngi-igenomes/igenomes' igenomes_ignore = false + + // MultiQC options multiqc_config = null multiqc_title = null @@ -27,7 +27,6 @@ params { // Boilerplate options outdir = null - tracedir = "${params.outdir}/pipeline_info" publish_dir_mode = 'copy' email = null email_on_fail = null @@ -36,19 +35,15 @@ params { hook_url = null help = false version = false - validate_params = true - show_hidden_params = false - schema_ignore_params = 'genomes' - // Config options + config_profile_name = null + config_profile_description = null custom_config_version = 'master' custom_config_base = "https://raw.githubusercontent.com/nf-core/configs/${params.custom_config_version}" - config_profile_description = null config_profile_contact = null config_profile_url = null - config_profile_name = null - + // Max resource options // Defaults only, expecting to be overwritten @@ -56,6 +51,13 @@ params { max_cpus = 16 max_time = '240.h' + // Schema validation default options + validationFailUnrecognisedParams = false + validationLenientMode = false + validationSchemaIgnoreParams = 'genomes' + validationShowHiddenParams = false + validate_params = true + } // Load base.config by default for all pipelines @@ -75,13 +77,11 @@ try { // } catch (Exception e) { // System.err.println("WARNING: Could not load nf-core/config/crisprseq profiles: ${params.custom_config_base}/pipeline/crisprseq.config") // } - - profiles { debug { dumpHashes = true process.beforeScript = 'echo $HOSTNAME' - cleanup = false + cleanup = false } conda { conda.enabled = true @@ -104,7 +104,6 @@ profiles { } docker { docker.enabled = true - docker.registry = 'quay.io' docker.userEmulation = true conda.enabled = false singularity.enabled = false @@ -128,7 +127,6 @@ profiles { } podman { podman.enabled = true - podman.registry = 'quay.io' conda.enabled = false docker.enabled = false singularity.enabled = false @@ -172,6 +170,18 @@ profiles { test_full { includeConfig 'conf/test_full.config' } } +// Set default registry for Apptainer, Docker, Podman and Singularity independent of -profile +// Will not be used unless Apptainer / Docker / Podman / Singularity are enabled +// Set to your registry if you have a mirror of containers +apptainer.registry = 'quay.io' +docker.registry = 'quay.io' +podman.registry = 'quay.io' +singularity.registry = 'quay.io' + +// Nextflow plugins +plugins { + id 'nf-validation' // Validation of pipeline parameters and creation of an input channel from a sample sheet +} // Load igenomes.config if required if (!params.igenomes_ignore) { @@ -179,8 +189,6 @@ if (!params.igenomes_ignore) { } else { params.genomes = [:] } - - // Export these variables to prevent local Python/R libraries from conflicting with those in the container // The JULIA depot path has been adjusted to a fixed path `/usr/local/share/julia` that needs to be used for packages in the container. // See https://apeltzer.github.io/post/03-julia-lang-nextflow/ for details on that. Once we have a common agreement on where to keep Julia packages, this is adjustable. @@ -198,19 +206,19 @@ process.shell = ['/bin/bash', '-euo', 'pipefail'] def trace_timestamp = new java.util.Date().format( 'yyyy-MM-dd_HH-mm-ss') timeline { enabled = true - file = "${params.tracedir}/execution_timeline_${trace_timestamp}.html" + file = "${params.outdir}/pipeline_info/execution_timeline_${trace_timestamp}.html" } report { enabled = true - file = "${params.tracedir}/execution_report_${trace_timestamp}.html" + file = "${params.outdir}/pipeline_info/execution_report_${trace_timestamp}.html" } trace { enabled = true - file = "${params.tracedir}/execution_trace_${trace_timestamp}.txt" + file = "${params.outdir}/pipeline_info/execution_trace_${trace_timestamp}.txt" } dag { enabled = true - file = "${params.tracedir}/pipeline_dag_${trace_timestamp}.html" + file = "${params.outdir}/pipeline_info/pipeline_dag_${trace_timestamp}.html" } manifest { @@ -219,8 +227,8 @@ manifest { homePage = 'https://github.com/nf-core/crisprseq' description = """Pipeline for the analysis of crispr data""" mainScript = 'main.nf' - nextflowVersion = '!>=22.10.1' - version = '1.0' + nextflowVersion = '!>=23.04.0' + version = '2.0.0' doi = '' } diff --git a/nextflow_schema.json b/nextflow_schema.json index 0699e01c..815e1887 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -15,9 +15,9 @@ "input": { "type": "string", "format": "file-path", + "exists": true, "mimetype": "text/csv", "pattern": "^\\S+\\.csv$", - "schema": "assets/schema_input.json", "description": "Path to comma-separated file containing information about the samples in the experiment.", "help_text": "You will need to create a design file with information about the samples in your experiment before running the pipeline. Use this parameter to specify its location. It has to be a comma-separated file with 3 columns, and a header row. See [usage docs](https://nf-co.re/crisprseq/usage#samplesheet-input).", "fa_icon": "fas fa-file-csv" @@ -57,6 +57,7 @@ "fasta": { "type": "string", "format": "file-path", + "exists": true, "mimetype": "text/plain", "pattern": "^\\S+\\.fn?a(sta)?(\\.gz)?$", "description": "Path to FASTA genome file.", @@ -157,7 +158,7 @@ "description": "Maximum amount of time that can be requested for any single job.", "default": "240.h", "fa_icon": "far fa-clock", - "pattern": "^(\\d+\\.?\\s*(s|m|h|day)\\s*)+$", + "pattern": "^(\\d+\\.?\\s*(s|m|h|d|day)\\s*)+$", "hidden": true, "help_text": "Use to set an upper-limit for the time requirement for each process. Should be a string in the format integer-unit e.g. `--max_time '2.h'`" } @@ -174,12 +175,14 @@ "type": "boolean", "description": "Display help text.", "fa_icon": "fas fa-question-circle", + "default": false, "hidden": true }, "version": { "type": "boolean", "description": "Display version and exit.", "fa_icon": "fas fa-question-circle", + "default": false, "hidden": true }, "publish_dir_mode": { @@ -203,6 +206,7 @@ "type": "boolean", "description": "Send plain-text email instead of HTML.", "fa_icon": "fas fa-remove-format", + "default": false, "hidden": true }, "max_multiqc_email_size": { @@ -217,6 +221,7 @@ "type": "boolean", "description": "Do not use coloured log outputs.", "fa_icon": "fas fa-palette", + "default": false, "hidden": true }, "hook_url": { @@ -228,6 +233,7 @@ }, "multiqc_config": { "type": "string", + "format": "file-path", "description": "Custom config file to supply to MultiQC.", "fa_icon": "fas fa-cog", "hidden": true @@ -243,13 +249,6 @@ "description": "Custom MultiQC yaml file containing HTML including a methods description.", "fa_icon": "fas fa-cog" }, - "tracedir": { - "type": "string", - "description": "Directory to keep pipeline Nextflow logs and reports.", - "default": "${params.outdir}/pipeline_info", - "fa_icon": "fas fa-cogs", - "hidden": true - }, "validate_params": { "type": "boolean", "description": "Boolean whether to validate parameters against the schema at runtime", @@ -257,12 +256,29 @@ "fa_icon": "fas fa-check-square", "hidden": true }, - "show_hidden_params": { + "validationShowHiddenParams": { "type": "boolean", "fa_icon": "far fa-eye-slash", "description": "Show all params when using `--help`", + "default": false, "hidden": true, "help_text": "By default, parameters set as _hidden_ in the schema are not shown on the command line when a user runs with `--help`. Specifying this option will tell the pipeline to show all parameters." + }, + "validationFailUnrecognisedParams": { + "type": "boolean", + "fa_icon": "far fa-check-circle", + "description": "Validation of parameters fails when an unrecognised parameter is found.", + "default": false, + "hidden": true, + "help_text": "By default, when an unrecognised parameter is found, it returns a warinig." + }, + "validationLenientMode": { + "type": "boolean", + "fa_icon": "far fa-check-circle", + "description": "Validation of parameters in lenient more.", + "default": false, + "hidden": true, + "help_text": "Allows string values that are parseable as numbers or booleans. For further information see [JSONSchema docs](https://github.com/everit-org/json-schema#lenient-mode)." } } } diff --git a/workflows/crisprseq.nf b/workflows/crisprseq.nf index 91a0baf8..d608ede8 100644 --- a/workflows/crisprseq.nf +++ b/workflows/crisprseq.nf @@ -1,21 +1,19 @@ /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - VALIDATE INPUTS + PRINT PARAMS SUMMARY ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ -def summary_params = NfcoreSchema.paramsSummaryMap(workflow, params) +include { paramsSummaryLog; paramsSummaryMap } from 'plugin/nf-validation' -// Validate input parameters -WorkflowCrisprseq.initialise(params, log) +def logo = NfcoreTemplate.logo(workflow, params.monochrome_logs) +def citation = '\n' + WorkflowMain.citation(workflow) + '\n' +def summary_params = paramsSummaryMap(workflow) -// TODO nf-core: Add all file path parameters for the pipeline to the list below -// Check input path parameters to see if they exist -def checkPathParamList = [ params.input, params.multiqc_config, params.fasta ] -for (param in checkPathParamList) { if (param) { file(param, checkIfExists: true) } } +// Print parameter summary log to screen +log.info logo + paramsSummaryLog(workflow) + citation -// Check mandatory parameters -if (params.input) { ch_input = file(params.input) } else { exit 1, 'Input samplesheet not specified!' } +WorkflowCrisprseq.initialise(params, log) /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -69,9 +67,12 @@ workflow CRISPRSEQ { // SUBWORKFLOW: Read in samplesheet, validate and stage input files // INPUT_CHECK ( - ch_input + file(params.input) ) ch_versions = ch_versions.mix(INPUT_CHECK.out.versions) + // TODO: OPTIONAL, you can use nf-validation plugin to create an input channel from the samplesheet with Channel.fromSamplesheet("input") + // See the documentation https://nextflow-io.github.io/nf-validation/samplesheets/fromSamplesheet/ + // ! There is currently no tooling to help you write a sample sheet schema // // MODULE: Run FastQC @@ -91,7 +92,7 @@ workflow CRISPRSEQ { workflow_summary = WorkflowCrisprseq.paramsSummaryMultiqc(workflow, summary_params) ch_workflow_summary = Channel.value(workflow_summary) - methods_description = WorkflowCrisprseq.methodsDescriptionText(workflow, ch_multiqc_custom_methods_description) + methods_description = WorkflowCrisprseq.methodsDescriptionText(workflow, ch_multiqc_custom_methods_description, params) ch_methods_description = Channel.value(methods_description) ch_multiqc_files = Channel.empty() From c006f62a4631ba0c5794f3ee3e80019c22cd3398 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 5 Jul 2023 10:26:26 +0200 Subject: [PATCH 002/133] Bump dev version --- CHANGELOG.md | 8 ++++++++ README.md | 4 ++-- lib/WorkflowMain.groovy | 2 +- nextflow.config | 8 ++++---- 4 files changed, 15 insertions(+), 7 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1854e1fa..d1ddf4f6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,14 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). +## [v2.1.0dev] + +### Added + +### Fixed + +### Deprecated + ## [v2.0.0 - Paprika Lovelace](https://github.com/nf-core/crisprseq/releases/tag/2.0.0) - [05.07.2023] ### Added diff --git a/README.md b/README.md index 046675c7..41ce5924 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # ![nf-core/crisprseq](docs/images/nf-core-crisprseq_logo_light.png#gh-light-mode-only) ![nf-core/crisprseq](docs/images/nf-core-crisprseq_logo_dark.png#gh-dark-mode-only) -[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.7598497-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.7598497) +[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.8116072-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.8116072) [![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A523.04.0-23aa62.svg)](https://www.nextflow.io/) [![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/) @@ -126,7 +126,7 @@ For further information or help, don't hesitate to get in touch on the [Slack `# ## Citations -If you use nf-core/crisprseq for your analysis, please cite it using the following doi: [10.5281/zenodo.7598497](https://doi.org/10.5281/zenodo.7598497) +If you use nf-core/crisprseq for your analysis, please cite it using the following doi: [10.5281/zenodo.8116072](https://doi.org/10.5281/zenodo.8116072) An extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file. diff --git a/lib/WorkflowMain.groovy b/lib/WorkflowMain.groovy index 05c17b7f..7fa1e0e1 100755 --- a/lib/WorkflowMain.groovy +++ b/lib/WorkflowMain.groovy @@ -12,7 +12,7 @@ class WorkflowMain { public static String citation(workflow) { return "If you use ${workflow.manifest.name} for your analysis please cite:\n\n" + "* The pipeline\n" + - " https://doi.org/10.5281/zenodo.7598497\n\n" + + " https://doi.org/10.5281/zenodo.8116072\n\n" + "* The nf-core framework\n" + " https://doi.org/10.1038/s41587-020-0439-x\n\n" + "* Software dependencies\n" + diff --git a/nextflow.config b/nextflow.config index 05bda0dd..410e8c7c 100644 --- a/nextflow.config +++ b/nextflow.config @@ -247,13 +247,13 @@ dag { manifest { name = 'nf-core/crisprseq' - author = """mirpedrol""" + author = """Júlia Mir Pedrol, Laurence Kuhlburger""" homePage = 'https://github.com/nf-core/crisprseq' - description = """Pipeline for the analysis of crispr data""" + description = """Pipeline for the analysis of CRISPR data""" mainScript = 'main.nf' nextflowVersion = '!>=23.04.0' - version = '2.0.0' - doi = 'https://doi.org/10.5281/zenodo.7598497' + version = '2.1.0dev' + doi = 'https://doi.org/10.5281/zenodo.8116072' } // Load modules.config for DSL2 module specific options From f1dc329df1b80a272db4ae557721a921d96f713a Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 10 Jul 2023 11:38:16 +0200 Subject: [PATCH 003/133] fix linting from template --- LICENSE | 2 +- assets/email_template.html | 2 +- assets/multiqc_config.yml | 2 +- nextflow_schema.json | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/LICENSE b/LICENSE index 41427d4d..4de6f708 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) mirpedrol +Copyright (c) Júlia Mir Pedrol, Laurence Kuhlburger Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/assets/email_template.html b/assets/email_template.html index 4a90e11b..ec162f42 100644 --- a/assets/email_template.html +++ b/assets/email_template.html @@ -4,7 +4,7 @@ - + nf-core/crisprseq Pipeline Report diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index 5f5e0401..67439316 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -1,5 +1,5 @@ report_comment: > - This report has been generated by the nf-core/crisprseq + This report has been generated by the nf-core/crisprseq analysis pipeline. For information about how to interpret these results, please see the documentation. report_section_order: diff --git a/nextflow_schema.json b/nextflow_schema.json index 5d81138d..ffef1b81 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -2,7 +2,7 @@ "$schema": "http://json-schema.org/draft-07/schema", "$id": "https://raw.githubusercontent.com/nf-core/crisprseq/master/nextflow_schema.json", "title": "nf-core/crisprseq pipeline parameters", - "description": "Pipeline for the analysis of crispr data", + "description": "Pipeline for the analysis of CRISPR data", "type": "object", "definitions": { "input_output_options": { From 8297a8129555c17a58d105c55c9ee875d026ddd4 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 10 Jul 2023 16:10:17 +0200 Subject: [PATCH 004/133] fix duplicated format in json schema --- nextflow_schema.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/nextflow_schema.json b/nextflow_schema.json index ffef1b81..96005eae 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -201,8 +201,7 @@ "mimetype": "text/plain", "pattern": "^\\S+\\.fn?a(sta)?(\\.gz)?$", "description": "Path to the reference FASTA file. Will override reference sequences provided by an input sample sheet.", - "fa_icon": "far fa-file-alt", - "format": "file-path" + "fa_icon": "far fa-file-alt" }, "igenomes_base": { "type": "string", From bca2bdf58bf3fd33cc20fdced79fc3afcc4e3da0 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 13 Jul 2023 09:53:30 +0200 Subject: [PATCH 005/133] validate params through the schema --- nextflow_schema.json | 15 ++++++++------- workflows/crisprseq_screening.nf | 18 ++++++++---------- 2 files changed, 16 insertions(+), 17 deletions(-) diff --git a/nextflow_schema.json b/nextflow_schema.json index 96005eae..a5be54ca 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -151,18 +151,26 @@ "properties": { "mle_design_matrix": { "type": "string", + "format": "file-path", + "exists": true, "description": "Design matrix used for MAGeCK MLE to call essential genes under multiple conditions while considering sgRNA knockout efficiency" }, "rra_contrasts": { "type": "string", + "format": "file-path", + "exists": true, "description": "Comma-separated file with the conditions to be compared. The first one will be the reference (control)" }, "count_table": { "type": "string", + "format": "file-path", + "exists": true, "description": "Please provide your count table if the mageck test should be skipped." }, "library": { "type": "string", + "format": "file-path", + "exists": true, "fa_icon": "far fa-address-book", "description": "sgRNA sequences and targeting genes" }, @@ -314,14 +322,12 @@ "type": "boolean", "description": "Display help text.", "fa_icon": "fas fa-question-circle", - "default": false, "hidden": true }, "version": { "type": "boolean", "description": "Display version and exit.", "fa_icon": "fas fa-question-circle", - "default": false, "hidden": true }, "publish_dir_mode": { @@ -345,7 +351,6 @@ "type": "boolean", "description": "Send plain-text email instead of HTML.", "fa_icon": "fas fa-remove-format", - "default": false, "hidden": true }, "max_multiqc_email_size": { @@ -360,7 +365,6 @@ "type": "boolean", "description": "Do not use coloured log outputs.", "fa_icon": "fas fa-palette", - "default": false, "hidden": true }, "hook_url": { @@ -399,7 +403,6 @@ "type": "boolean", "fa_icon": "far fa-eye-slash", "description": "Show all params when using `--help`", - "default": false, "hidden": true, "help_text": "By default, parameters set as _hidden_ in the schema are not shown on the command line when a user runs with `--help`. Specifying this option will tell the pipeline to show all parameters." }, @@ -414,7 +417,6 @@ "type": "boolean", "fa_icon": "far fa-check-circle", "description": "Validation of parameters fails when an unrecognised parameter is found.", - "default": false, "hidden": true, "help_text": "By default, when an unrecognised parameter is found, it returns a warinig." }, @@ -422,7 +424,6 @@ "type": "boolean", "fa_icon": "far fa-check-circle", "description": "Validation of parameters in lenient more.", - "default": false, "hidden": true, "help_text": "Allows string values that are parseable as numbers or booleans. For further information see [JSONSchema docs](https://github.com/everit-org/json-schema#lenient-mode)." } diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index ec989f40..b9ed6237 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -15,16 +15,14 @@ log.info logo + paramsSummaryLog(workflow) + citation WorkflowCrisprseq.initialise(params, log) -// Check mandatory parameters -//if (!params.count_table) { ch_input = file(params.input) } else { error('Input samplesheet not specified!') } -//if (params.library) { ch_library = file(params.library) } -//if (params.crisprcleanr) { ch_crisprcleanr= Channel.value(params.crisprcleanr) } - -//if(params.mle_design_matrix) { -// Channel.fromPath(params.mle_design_matrix,checkIfExists: true) -// .set { ch_design } -//} -// TODO check with the schema +// Set screening parameters and channels +if (params.library) { ch_library = file(params.library) } +if (params.crisprcleanr) { ch_crisprcleanr = Channel.value(params.crisprcleanr) } + +if(params.mle_design_matrix) { + Channel.fromPath(params.mle_design_matrix) + .set { ch_design } +} /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From f29d9469a683ea250434ce868d39a8882d8c648d Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 13 Jul 2023 09:54:52 +0200 Subject: [PATCH 006/133] update changelog --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index d1ddf4f6..02d741b5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added +- Template update v2.9 ([#52](https://github.com/nf-core/crisprseq/pull/52)) + ### Fixed ### Deprecated From e998e17f618614e17acbf664d5d1dc5dada98527 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 13 Jul 2023 10:15:14 +0200 Subject: [PATCH 007/133] fix link in multipqc_config.yml --- assets/multiqc_config.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index 67439316..73d174a7 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -1,7 +1,7 @@ report_comment: > This report has been generated by the nf-core/crisprseq analysis pipeline. For information about how to interpret these results, please see the - documentation. + documentation. report_section_order: "nf-core-crisprseq-methods-description": order: -1000 From c73dbfb287ed56c1eba9b83d706014936f358ddb Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Fri, 14 Jul 2023 08:51:08 +0200 Subject: [PATCH 008/133] Update nextflow_schema.json --- nextflow_schema.json | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/nextflow_schema.json b/nextflow_schema.json index a5be54ca..36d4cd2a 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -164,15 +164,17 @@ "count_table": { "type": "string", "format": "file-path", + "mimetype": "text/tsv", "exists": true, "description": "Please provide your count table if the mageck test should be skipped." }, "library": { "type": "string", "format": "file-path", + "mimetype": "text/tsv", "exists": true, "fa_icon": "far fa-address-book", - "description": "sgRNA sequences and targeting genes" + "description": "sgRNA and targetting genes, tab separated" }, "crisprcleanr": { "type": "string", @@ -185,7 +187,7 @@ }, "min_targeted_genes": { "type": "number", - "description": "Minimal number of different genes targeted by sgRNAs in a biased segment in order for the corresponding counts to be corrected", + "description": "Minimal number of different genes targeted by sgRNAs in a biased segment in order for the corresponding counts to be corrected for CRISPRcleanR", "default": 3 } } From 28665e083fc4a5a5b20ba97eefdb22cc76d74e1a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Mir=20Pedrol?= Date: Fri, 14 Jul 2023 08:54:12 +0200 Subject: [PATCH 009/133] Apply suggestions from code review --- nextflow_schema.json | 2 ++ 1 file changed, 2 insertions(+) diff --git a/nextflow_schema.json b/nextflow_schema.json index 36d4cd2a..48f8656c 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -164,6 +164,7 @@ "count_table": { "type": "string", "format": "file-path", + "pattern": "^\\S+\\.tsv$", "mimetype": "text/tsv", "exists": true, "description": "Please provide your count table if the mageck test should be skipped." @@ -171,6 +172,7 @@ "library": { "type": "string", "format": "file-path", + "pattern": "^\\S+\\.csv$", "mimetype": "text/tsv", "exists": true, "fa_icon": "far fa-address-book", From ef705d7c1fdd44565dc6f89b8434bdf893d64d86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Mir=20Pedrol?= Date: Fri, 14 Jul 2023 09:51:43 +0200 Subject: [PATCH 010/133] Apply suggestions from code review Co-authored-by: LaurenceKuhl --- nextflow_schema.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/nextflow_schema.json b/nextflow_schema.json index 48f8656c..ce0956c1 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -164,7 +164,7 @@ "count_table": { "type": "string", "format": "file-path", - "pattern": "^\\S+\\.tsv$", + "pattern": "^\\S+\\.(tsv|txt)$", "mimetype": "text/tsv", "exists": true, "description": "Please provide your count table if the mageck test should be skipped." @@ -172,7 +172,7 @@ "library": { "type": "string", "format": "file-path", - "pattern": "^\\S+\\.csv$", + "pattern": "^\\S+\\.(tsv|txt)$", "mimetype": "text/tsv", "exists": true, "fa_icon": "far fa-address-book", From 8f6af2d596b8fffdb94a67c05077d9ce618888d0 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Fri, 14 Jul 2023 11:00:01 +0200 Subject: [PATCH 011/133] Extra files from mageck count --- modules/nf-core/mageck/count/mageck-count.diff | 9 ++++++--- modules/nf-core/mageck/count/main.nf | 3 +++ 2 files changed, 9 insertions(+), 3 deletions(-) diff --git a/modules/nf-core/mageck/count/mageck-count.diff b/modules/nf-core/mageck/count/mageck-count.diff index 50ee78b1..48cd0c4f 100644 --- a/modules/nf-core/mageck/count/mageck-count.diff +++ b/modules/nf-core/mageck/count/mageck-count.diff @@ -1,24 +1,27 @@ Changes in module 'nf-core/mageck/count' --- modules/nf-core/mageck/count/main.nf +++ modules/nf-core/mageck/count/main.nf -@@ -12,8 +12,10 @@ +@@ -12,8 +12,13 @@ path(library) output: - tuple val(meta), path("*count*.txt"), emit: count + tuple val(meta), path("*count.txt"), emit: count tuple val(meta), path("*.count_normalized.txt"), emit: norm ++ tuple val(meta), path("*.countsummary.txt"), emit: summary ++ tuple val(meta), path("*.count_normalized.txt"), emit: normalized ++ tuple val(meta), path("*.count_report.Rmd"), emit: report + tuple val(meta), path("*.log"), emit: logs + path "versions.yml" , emit: versions when: -@@ -22,7 +24,7 @@ +@@ -22,7 +27,7 @@ script: def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" - def input_file = ("$inputfile".endsWith(".fastq.gz")) ? "--fastq ${inputfile}" : "-k ${inputfile}" -+ def input_file = ("$inputfile".endsWith(".fastq.gz") || "$inputfile".endsWith(".fq.gz")) ? "--fastq ${inputfile}" : "-k ${inputfile}" ++ def input_file = ("$inputfile".endsWith(".fastq.gz") || "$inputfile".endsWith(".fq.gz")) ? "--fastq ${inputfile}" : "-k ${inputfile}" def sample_label = ("$inputfile".endsWith(".fastq.gz") || "$inputfile".endsWith(".fq.gz")) ? "--sample-label ${meta.id}" : '' """ diff --git a/modules/nf-core/mageck/count/main.nf b/modules/nf-core/mageck/count/main.nf index 30fbd8fe..91ea3fe2 100644 --- a/modules/nf-core/mageck/count/main.nf +++ b/modules/nf-core/mageck/count/main.nf @@ -14,6 +14,9 @@ process MAGECK_COUNT { output: tuple val(meta), path("*count.txt"), emit: count tuple val(meta), path("*.count_normalized.txt"), emit: norm + tuple val(meta), path("*.countsummary.txt"), emit: summary + tuple val(meta), path("*.count_normalized.txt"), emit: normalized + tuple val(meta), path("*.count_report.Rmd"), emit: report tuple val(meta), path("*.log"), emit: logs path "versions.yml" , emit: versions From 13181f093fe4b45b90c324f484c857d5e593424d Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Fri, 14 Jul 2023 14:17:02 +0200 Subject: [PATCH 012/133] fix bug in rra --- modules/nf-core/mageck/count/mageck-count.diff | 5 ++--- modules/nf-core/mageck/count/main.nf | 1 - modules/nf-core/mageck/test/mageck-test.diff | 12 +++--------- modules/nf-core/mageck/test/main.nf | 1 - 4 files changed, 5 insertions(+), 14 deletions(-) diff --git a/modules/nf-core/mageck/count/mageck-count.diff b/modules/nf-core/mageck/count/mageck-count.diff index 48cd0c4f..87f8e83c 100644 --- a/modules/nf-core/mageck/count/mageck-count.diff +++ b/modules/nf-core/mageck/count/mageck-count.diff @@ -1,7 +1,7 @@ Changes in module 'nf-core/mageck/count' --- modules/nf-core/mageck/count/main.nf +++ modules/nf-core/mageck/count/main.nf -@@ -12,8 +12,13 @@ +@@ -12,8 +12,12 @@ path(library) output: @@ -10,13 +10,12 @@ Changes in module 'nf-core/mageck/count' tuple val(meta), path("*.count_normalized.txt"), emit: norm + tuple val(meta), path("*.countsummary.txt"), emit: summary + tuple val(meta), path("*.count_normalized.txt"), emit: normalized -+ tuple val(meta), path("*.count_report.Rmd"), emit: report + tuple val(meta), path("*.log"), emit: logs + path "versions.yml" , emit: versions when: -@@ -22,7 +27,7 @@ +@@ -22,7 +26,7 @@ script: def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" diff --git a/modules/nf-core/mageck/count/main.nf b/modules/nf-core/mageck/count/main.nf index 91ea3fe2..01691029 100644 --- a/modules/nf-core/mageck/count/main.nf +++ b/modules/nf-core/mageck/count/main.nf @@ -16,7 +16,6 @@ process MAGECK_COUNT { tuple val(meta), path("*.count_normalized.txt"), emit: norm tuple val(meta), path("*.countsummary.txt"), emit: summary tuple val(meta), path("*.count_normalized.txt"), emit: normalized - tuple val(meta), path("*.count_report.Rmd"), emit: report tuple val(meta), path("*.log"), emit: logs path "versions.yml" , emit: versions diff --git a/modules/nf-core/mageck/test/mageck-test.diff b/modules/nf-core/mageck/test/mageck-test.diff index ee8558c3..9da13d3b 100644 --- a/modules/nf-core/mageck/test/mageck-test.diff +++ b/modules/nf-core/mageck/test/mageck-test.diff @@ -8,17 +8,16 @@ Changes in module 'nf-core/mageck/test' label 'process_medium' conda "bioconda::mageck=0.5.9" -@@ -14,6 +14,9 @@ +@@ -14,6 +14,8 @@ tuple val(meta), path("*.gene_summary.txt") , emit: gene_summary tuple val(meta), path("*.sgrna_summary.txt") , emit: sgrna_summary tuple val(meta), path("*.R") , emit: r_script -+ tuple val(meta), path("*.Rmd") , emit: r_report + tuple val(meta), path("*.Rnw") , emit: r_summary + tuple val(meta), path("*.log") , emit: logs path "versions.yml" , emit: versions when: -@@ -21,14 +24,18 @@ +@@ -21,14 +23,18 @@ script: def args = task.ext.args ?: '' @@ -38,10 +37,5 @@ Changes in module 'nf-core/mageck/test' cat <<-END_VERSIONS > versions.yml -@@ -36,4 +43,4 @@ - mageck: \$(mageck -v) - END_VERSIONS - """ --} -+} + ************************************************************ diff --git a/modules/nf-core/mageck/test/main.nf b/modules/nf-core/mageck/test/main.nf index 420edcc1..78d5f58c 100644 --- a/modules/nf-core/mageck/test/main.nf +++ b/modules/nf-core/mageck/test/main.nf @@ -14,7 +14,6 @@ process MAGECK_TEST { tuple val(meta), path("*.gene_summary.txt") , emit: gene_summary tuple val(meta), path("*.sgrna_summary.txt") , emit: sgrna_summary tuple val(meta), path("*.R") , emit: r_script - tuple val(meta), path("*.Rmd") , emit: r_report tuple val(meta), path("*.Rnw") , emit: r_summary tuple val(meta), path("*.log") , emit: logs path "versions.yml" , emit: versions From 2226e704d8e3a9f6c6b8c3c3795bf070bf677331 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 18 Jul 2023 15:24:29 +0200 Subject: [PATCH 013/133] add fromSamplesheet() in targete dpipeline --- assets/schema_input.json | 31 +++++++++++++-- conf/modules.config | 8 ---- lib/WorkflowCrisprseq.groovy | 27 +++++++++++++ lib/WorkflowMain.groovy | 5 --- nextflow_schema.json | 6 +++ workflows/crisprseq_screening.nf | 9 ++--- workflows/crisprseq_targeted.nf | 66 +++++++++++++++++--------------- 7 files changed, 101 insertions(+), 51 deletions(-) diff --git a/assets/schema_input.json b/assets/schema_input.json index 7327787f..a66228ed 100644 --- a/assets/schema_input.json +++ b/assets/schema_input.json @@ -10,25 +10,50 @@ "sample": { "type": "string", "pattern": "^\\S+$", - "errorMessage": "Sample name must be provided and cannot contain spaces" + "errorMessage": "Sample name must be provided and cannot contain spaces", + "meta": ["id"] }, "fastq_1": { "type": "string", + "format": "file-path", + "exists": true, "pattern": "^\\S+\\.f(ast)?q\\.gz$", "errorMessage": "FastQ file for reads 1 must be provided, cannot contain spaces and must have extension '.fq.gz' or '.fastq.gz'" }, "fastq_2": { + "type": "string", + "format": "file-path", + "exists": true, "errorMessage": "FastQ file for reads 2 cannot contain spaces and must have extension '.fq.gz' or '.fastq.gz'", "anyOf": [ { - "type": "string", "pattern": "^\\S+\\.f(ast)?q\\.gz$" }, { - "type": "string", "maxLength": 0 } ] + }, + "condition": { + "type": "string", + "pattern": "^\\S+$", + "enum": ["control", "treatment"], + "errorMessage": "Condition name must be one of 'control' or 'treatment'" + }, + "reference": { + "type": "string", + "pattern": "^[ACTGN]+$", + "errorMessage": "Reference sequence must be a valid DNA sequence" + }, + "protospacer": { + "type": "string", + "pattern": "^[ACTGN]+$", + "errorMessage": "Protospacer sequence must be a valid DNA sequence" + }, + "template": { + "type": "string", + "pattern": "^[ACTGN]+$", + "errorMessage": "Template sequence must be a valid DNA sequence" } }, "required": ["sample", "fastq_1"] diff --git a/conf/modules.config b/conf/modules.config index 84504a31..43cdc492 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -18,14 +18,6 @@ process { saveAs: { filename -> filename.equals('versions.yml') ? null : filename } ] - withName: SAMPLESHEET_CHECK { - publishDir = [ - path: { "${params.outdir}/pipeline_info" }, - mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } - ] - } - withName: SEQ_TO_FILE_REF { publishDir = [ path: { "${params.outdir}/preprocessing/sequences" }, diff --git a/lib/WorkflowCrisprseq.groovy b/lib/WorkflowCrisprseq.groovy index 85035344..289319ff 100755 --- a/lib/WorkflowCrisprseq.groovy +++ b/lib/WorkflowCrisprseq.groovy @@ -15,6 +15,33 @@ class WorkflowCrisprseq { genomeExistsError(params, log) } + // + // Function to validate channels from input samplesheet + // + public static ArrayList validateInput(input) { + def (metas, fastqs) = input[1..2] + + // Check that multiple runs of the same sample are of the same datatype i.e. single-end / paired-end + def endedness_ok = metas.collect{ it.single_end }.unique().size == 1 + if (!endedness_ok) { + Nextflow.error("Please check input samplesheet -> Multiple runs of a sample must be of the same datatype i.e. single-end or paired-end: ${metas[0].id}") + } + + // Check that multiple runs of the same sample contain a reference or not + def reference_ok = metas.collect{ it.self_reference }.unique().size == 1 + if (!reference_ok) { + Nextflow.error("Please check input samplesheet -> Multiple runs of a sample must all contain a reference or not: ${metas[0].id}") + } + + // Check that multiple runs of the same sample contain a template or not + def template_ok = metas.collect{ it.template }.unique().size == 1 + if (!template_ok) { + Nextflow.error("Please check input samplesheet -> Multiple runs of a sample must all contain a template or not: ${metas[0].id}") + } + + return [ metas[0], fastqs ] + } + // // Get workflow summary for MultiQC // diff --git a/lib/WorkflowMain.groovy b/lib/WorkflowMain.groovy index 8f725734..36db450c 100755 --- a/lib/WorkflowMain.groovy +++ b/lib/WorkflowMain.groovy @@ -42,11 +42,6 @@ class WorkflowMain { // Check AWS batch settings NfcoreTemplate.awsBatch(workflow, params) - - // Check input has been provided - if (!params.input) { - Nextflow.error("Please provide an input samplesheet to the pipeline e.g. '--input samplesheet.csv'") - } } // // Get attribute from genome config file e.g. fasta diff --git a/nextflow_schema.json b/nextflow_schema.json index ce0956c1..c75c5a2d 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -16,6 +16,7 @@ "type": "string", "format": "file-path", "exists": true, + "schema": "assets/schema_input.json", "mimetype": "text/csv", "pattern": "^\\S+\\.csv$", "description": "Path to comma-separated file containing information about the samples in the experiment.", @@ -381,18 +382,23 @@ "multiqc_config": { "type": "string", "format": "file-path", + "exists": true, "description": "Custom config file to supply to MultiQC.", "fa_icon": "fas fa-cog", "hidden": true }, "multiqc_logo": { "type": "string", + "format": "file-path", + "exists": true, "description": "Custom logo file to supply to MultiQC. File name must also be set in the MultiQC config file", "fa_icon": "fas fa-image", "hidden": true }, "multiqc_methods_description": { "type": "string", + "format": "file-path", + "exists": true, "description": "Custom MultiQC yaml file containing HTML including a methods description.", "fa_icon": "fas fa-cog" }, diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index b9ed6237..ff6fcada 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -4,7 +4,7 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ -include { paramsSummaryLog; paramsSummaryMap } from 'plugin/nf-validation' +include { paramsSummaryLog; paramsSummaryMap; fromSamplesheet } from 'plugin/nf-validation' def logo = NfcoreTemplate.logo(workflow, params.monochrome_logs) def citation = '\n' + WorkflowMain.citation(workflow) + '\n' @@ -31,9 +31,9 @@ if(params.mle_design_matrix) { */ ch_multiqc_config = Channel.fromPath("$projectDir/assets/multiqc_config.yml", checkIfExists: true) -ch_multiqc_custom_config = params.multiqc_config ? Channel.fromPath( params.multiqc_config, checkIfExists: true ) : Channel.empty() -ch_multiqc_logo = params.multiqc_logo ? Channel.fromPath( params.multiqc_logo, checkIfExists: true ) : Channel.empty() -ch_multiqc_custom_methods_description = params.multiqc_methods_description ? file(params.multiqc_methods_description, checkIfExists: true) : file("$projectDir/assets/methods_description_template.yml", checkIfExists: true) +ch_multiqc_custom_config = params.multiqc_config ? Channel.fromPath( params.multiqc_config ) : Channel.empty() +ch_multiqc_logo = params.multiqc_logo ? Channel.fromPath( params.multiqc_logo ) : Channel.empty() +ch_multiqc_custom_methods_description = params.multiqc_methods_description ? file(params.multiqc_methods_description) : file("$projectDir/assets/methods_description_template.yml", checkIfExists: true) /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -44,7 +44,6 @@ ch_multiqc_custom_methods_description = params.multiqc_methods_description ? fil // // SUBWORKFLOW: Consisting of a mix of local and nf-core/modules // -include { INPUT_CHECK_SCREENING } from '../subworkflows/local/input_check_screening' /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index ff14ff28..8f4d33f7 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -4,7 +4,7 @@ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */ -include { paramsSummaryLog; paramsSummaryMap } from 'plugin/nf-validation' +include { paramsSummaryLog; paramsSummaryMap; fromSamplesheet } from 'plugin/nf-validation' def logo = NfcoreTemplate.logo(workflow, params.monochrome_logs) def citation = '\n' + WorkflowMain.citation(workflow) + '\n' @@ -21,9 +21,9 @@ WorkflowCrisprseq.initialise(params, log) */ ch_multiqc_config = Channel.fromPath("$projectDir/assets/multiqc_config.yml", checkIfExists: true) -ch_multiqc_custom_config = params.multiqc_config ? Channel.fromPath( params.multiqc_config, checkIfExists: true ) : Channel.empty() -ch_multiqc_logo = params.multiqc_logo ? Channel.fromPath( params.multiqc_logo, checkIfExists: true ) : Channel.empty() -ch_multiqc_custom_methods_description = params.multiqc_methods_description ? file(params.multiqc_methods_description, checkIfExists: true) : file("$projectDir/assets/methods_description_template.yml", checkIfExists: true) +ch_multiqc_custom_config = params.multiqc_config ? Channel.fromPath( params.multiqc_config ) : Channel.empty() +ch_multiqc_logo = params.multiqc_logo ? Channel.fromPath( params.multiqc_logo ) : Channel.empty() +ch_multiqc_custom_methods_description = params.multiqc_methods_description ? file(params.multiqc_methods_description) : file("$projectDir/assets/methods_description_template.yml", checkIfExists: true) /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -34,7 +34,6 @@ ch_multiqc_custom_methods_description = params.multiqc_methods_description ? fil // // SUBWORKFLOW: Consisting of a mix of local and nf-core/modules // -include { INPUT_CHECK } from '../subworkflows/local/input_check' // // MODULE @@ -138,36 +137,43 @@ workflow CRISPRSEQ_TARGETED { ch_versions = Channel.empty() // - // SUBWORKFLOW: Read in samplesheet, validate and stage input files + // Create input channel from input file provided through params.input // - INPUT_CHECK ( - file(params.input) - ) + Channel.fromSamplesheet("input") + .multiMap { + meta, fastq_1, fastq_2, condition, reference, protospacer, template -> + reads: [ meta.id, meta + [ single_end:false, self_reference:reference?false:true, template:template?true:false ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] + reference: [meta + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], reference] + protospacer: [meta + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], protospacer] + template: [meta + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], template] + } + .set { ch_input } + + ch_input .reads + .groupTuple() .map { - meta, fastq -> - [ meta - meta.subMap('id') + [id: meta.id.split('_')[0..-2].join('_')], fastq ] + WorkflowCrisprseq.validateInput(it) } - .groupTuple(by: [0]) // Separate samples by the ones containing all reads in one file or the ones with many files to be concatenated .branch { - meta, fastq -> - single : fastq.size() == 1 - return [ meta, fastq.flatten() ] - multiple: fastq.size() > 1 - return [ meta, fastq.flatten() ] + meta, fastqs -> + single : fastqs.size() == 1 + return [ meta, fastqs.flatten() ] + multiple: fastqs.size() > 1 + return [ meta, fastqs.flatten() ] } .set { ch_fastq } - ch_versions = ch_versions.mix(INPUT_CHECK.out.versions) + // // MODULE: Add reference sequences to file // SEQ_TO_FILE_REF ( - INPUT_CHECK.out.reference + ch_input.reference .map { meta, fastq -> - [ meta - meta.subMap('id') + [id: meta.id.split('_')[0..-2].join('_')], fastq ] + [ meta , fastq ] }, "reference" ) @@ -177,10 +183,10 @@ workflow CRISPRSEQ_TARGETED { // MODULE: Add template sequences to file // SEQ_TO_FILE_TEMPL ( - INPUT_CHECK.out.template + ch_input.template .map { meta, fastq -> - [ meta - meta.subMap('id') + [id: meta.id.split('_')[0..-2].join('_')], fastq ] + [ meta , fastq ] }, "template" ) @@ -190,10 +196,10 @@ workflow CRISPRSEQ_TARGETED { // to channel: [ meta, reference, protospacer] if (!params.reference_fasta && !params.protospacer) { SEQ_TO_FILE_REF.out.file - .join(INPUT_CHECK.out.protospacer + .join(ch_input.protospacer .map { meta, fastq -> - [ meta - meta.subMap('id') + [id: meta.id.split('_')[0..-2].join('_')], fastq ] + [ meta , fastq ] }, by: 0) .set{ reference_protospacer } @@ -206,20 +212,20 @@ workflow CRISPRSEQ_TARGETED { } else if (!params.protospacer) { // If a reference was provided through a fasta file or igenomes instead of the samplesheet ch_reference = Channel.fromPath(params.reference_fasta) - INPUT_CHECK.out.protospacer + ch_input.protospacer .combine(ch_reference) .map{ meta, protospacer, reference -> - [ meta - meta.subMap('id') + [id: meta.id.split('_')[0..-2].join('_')], reference, protospacer ] + [ meta , reference, protospacer ] } .set{ reference_protospacer } } else { ch_reference = Channel.fromPath(params.reference_fasta) ch_protospacer = Channel.of(params.protospacer) - INPUT_CHECK.out.reads + ch_input.reads .combine(ch_reference) .combine(ch_protospacer) .map{ meta, reads, reference, protospacer -> - [meta - meta.subMap('id') + [id: meta.id.split('_')[0..-2].join('_')], reference, protospacer] + [meta , reference, protospacer] } .set{ reference_protospacer } } @@ -681,10 +687,10 @@ workflow CRISPRSEQ_TARGETED { ch_mapped_bam .join(SAMTOOLS_INDEX.out.bai) .join(ORIENT_REFERENCE.out.reference) - .join(INPUT_CHECK.out.protospacer + .join(ch_input.protospacer .map { meta, fastq -> - [ meta - meta.subMap('id') + [id: meta.id.split('_')[0..-2].join('_')], fastq ] + [ meta , fastq ] } ) .join(SEQ_TO_FILE_TEMPL.out.file, remainder: true) From cbfd31683285e3ec20ef07946e3ca47d3e7be3d8 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 18 Jul 2023 15:30:30 +0200 Subject: [PATCH 014/133] delete input check scripts --- bin/check_samplesheet.py | 259 ----------------------------- modules/local/samplesheet_check.nf | 31 ---- subworkflows/local/input_check.nf | 130 --------------- workflows/crisprseq_targeted.nf | 2 +- 4 files changed, 1 insertion(+), 421 deletions(-) delete mode 100755 bin/check_samplesheet.py delete mode 100644 modules/local/samplesheet_check.nf delete mode 100644 subworkflows/local/input_check.nf diff --git a/bin/check_samplesheet.py b/bin/check_samplesheet.py deleted file mode 100755 index 4a758fe0..00000000 --- a/bin/check_samplesheet.py +++ /dev/null @@ -1,259 +0,0 @@ -#!/usr/bin/env python - - -"""Provide a command line tool to validate and transform tabular samplesheets.""" - - -import argparse -import csv -import logging -import sys -from collections import Counter -from pathlib import Path - -logger = logging.getLogger() - - -class RowChecker: - """ - Define a service that can validate and transform each given row. - - Attributes: - modified (list): A list of dicts, where each dict corresponds to a previously - validated and transformed row. The order of rows is maintained. - - """ - - VALID_FORMATS = ( - ".fq.gz", - ".fastq.gz", - ) - - def __init__( - self, - sample_col="sample", - first_col="fastq_1", - second_col="fastq_2", - single_col="single_end", - **kwargs, - ): - """ - Initialize the row checker with the expected column names. - - Args: - sample_col (str): The name of the column that contains the sample name - (default "sample"). - first_col (str): The name of the column that contains the first (or only) - FASTQ file path (default "fastq_1"). - second_col (str): The name of the column that contains the second (if any) - FASTQ file path (default "fastq_2"). - single_col (str): The name of the new column that will be inserted and - records whether the sample contains single- or paired-end sequencing - reads (default "single_end"). - - """ - super().__init__(**kwargs) - self._sample_col = sample_col - self._first_col = first_col - self._second_col = second_col - self._single_col = single_col - self._seen = set() - self.modified = [] - - def validate_and_transform(self, row): - """ - Perform all validations on the given row and insert the read pairing status. - - Args: - row (dict): A mapping from column headers (keys) to elements of that row - (values). - - """ - self._validate_sample(row) - self._validate_first(row) - self._validate_second(row) - self._validate_pair(row) - self._seen.add((row[self._sample_col], row[self._first_col])) - self.modified.append(row) - - def _validate_sample(self, row): - """Assert that the sample name exists and convert spaces to underscores.""" - if len(row[self._sample_col]) <= 0: - raise AssertionError("Sample input is required.") - # Sanitize samples slightly. - row[self._sample_col] = row[self._sample_col].replace(" ", "_") - - def _validate_first(self, row): - """Assert that the first FASTQ entry is non-empty and has the right format.""" - if len(row[self._first_col]) <= 0: - raise AssertionError("At least the first FASTQ file is required.") - self._validate_fastq_format(row[self._first_col]) - - def _validate_second(self, row): - """Assert that the second FASTQ entry has the right format if it exists.""" - if len(row[self._second_col]) > 0: - self._validate_fastq_format(row[self._second_col]) - - def _validate_pair(self, row): - """Assert that read pairs have the same file extension. Report pair status.""" - if row[self._first_col] and row[self._second_col]: - row[self._single_col] = False - first_col_suffix = Path(row[self._first_col]).suffixes[-2:] - second_col_suffix = Path(row[self._second_col]).suffixes[-2:] - if first_col_suffix != second_col_suffix: - raise AssertionError("FASTQ pairs must have the same file extensions.") - else: - row[self._single_col] = True - - def _validate_fastq_format(self, filename): - """Assert that a given filename has one of the expected FASTQ extensions.""" - if not any(filename.endswith(extension) for extension in self.VALID_FORMATS): - raise AssertionError( - f"The FASTQ file has an unrecognized extension: {filename}\n" - f"It should be one of: {', '.join(self.VALID_FORMATS)}" - ) - - def validate_unique_samples(self): - """ - Assert that the combination of sample name and FASTQ filename is unique. - - In addition to the validation, also rename all samples to have a suffix of _T{n}, where n is the - number of times the same sample exist, but with different FASTQ files, e.g., multiple runs per experiment. - - """ - if len(self._seen) != len(self.modified): - raise AssertionError("The pair of sample name and FASTQ must be unique.") - seen = Counter() - for row in self.modified: - sample = row[self._sample_col] - seen[sample] += 1 - row[self._sample_col] = f"{sample}_T{seen[sample]}" - - -def read_head(handle, num_lines=10): - """Read the specified number of lines from the current position in the file.""" - lines = [] - for idx, line in enumerate(handle): - if idx == num_lines: - break - lines.append(line) - return "".join(lines) - - -def sniff_format(handle): - """ - Detect the tabular format. - - Args: - handle (text file): A handle to a `text file`_ object. The read position is - expected to be at the beginning (index 0). - - Returns: - csv.Dialect: The detected tabular format. - - .. _text file: - https://docs.python.org/3/glossary.html#term-text-file - - """ - peek = read_head(handle) - handle.seek(0) - sniffer = csv.Sniffer() - dialect = sniffer.sniff(peek) - return dialect - - -def check_samplesheet(file_in, file_out): - """ - Check that the tabular samplesheet has the structure expected by nf-core pipelines. - - Validate the general shape of the table, expected columns, and each row. Also add - an additional column which records whether one or two FASTQ reads were found. - - Args: - file_in (pathlib.Path): The given tabular samplesheet. The format can be either - CSV, TSV, or any other format automatically recognized by ``csv.Sniffer``. - file_out (pathlib.Path): Where the validated and transformed samplesheet should - be created; always in CSV format. - - Example: - This function checks that the samplesheet follows the following structure, - see also the `viral recon samplesheet`_:: - - sample,fastq_1,fastq_2 - SAMPLE_PE,SAMPLE_PE_RUN1_1.fastq.gz,SAMPLE_PE_RUN1_2.fastq.gz - SAMPLE_PE,SAMPLE_PE_RUN2_1.fastq.gz,SAMPLE_PE_RUN2_2.fastq.gz - SAMPLE_SE,SAMPLE_SE_RUN1_1.fastq.gz, - - .. _viral recon samplesheet: - https://raw.githubusercontent.com/nf-core/test-datasets/viralrecon/samplesheet/samplesheet_test_illumina_amplicon.csv - - """ - required_columns = {"sample", "fastq_1", "fastq_2"} - # See https://docs.python.org/3.9/library/csv.html#id3 to read up on `newline=""`. - with file_in.open(newline="") as in_handle: - reader = csv.DictReader(in_handle, dialect=sniff_format(in_handle)) - # Validate the existence of the expected header columns. - if not required_columns.issubset(reader.fieldnames): - req_cols = ", ".join(required_columns) - logger.critical(f"The sample sheet **must** contain these column headers: {req_cols}.") - sys.exit(1) - # Validate each row. - checker = RowChecker() - for i, row in enumerate(reader): - try: - checker.validate_and_transform(row) - except AssertionError as error: - logger.critical(f"{str(error)} On line {i + 2}.") - sys.exit(1) - checker.validate_unique_samples() - header = list(reader.fieldnames) - header.insert(1, "single_end") - # See https://docs.python.org/3.9/library/csv.html#id3 to read up on `newline=""`. - with file_out.open(mode="w", newline="") as out_handle: - writer = csv.DictWriter(out_handle, header, delimiter=",") - writer.writeheader() - for row in checker.modified: - writer.writerow(row) - - -def parse_args(argv=None): - """Define and immediately parse command line arguments.""" - parser = argparse.ArgumentParser( - description="Validate and transform a tabular samplesheet.", - epilog="Example: python check_samplesheet.py samplesheet.csv samplesheet.valid.csv", - ) - parser.add_argument( - "file_in", - metavar="FILE_IN", - type=Path, - help="Tabular input samplesheet in CSV or TSV format.", - ) - parser.add_argument( - "file_out", - metavar="FILE_OUT", - type=Path, - help="Transformed output samplesheet in CSV format.", - ) - parser.add_argument( - "-l", - "--log-level", - help="The desired log level (default WARNING).", - choices=("CRITICAL", "ERROR", "WARNING", "INFO", "DEBUG"), - default="WARNING", - ) - return parser.parse_args(argv) - - -def main(argv=None): - """Coordinate argument parsing and program execution.""" - args = parse_args(argv) - logging.basicConfig(level=args.log_level, format="[%(levelname)s] %(message)s") - if not args.file_in.is_file(): - logger.error(f"The given input file {args.file_in} was not found!") - sys.exit(2) - args.file_out.parent.mkdir(parents=True, exist_ok=True) - check_samplesheet(args.file_in, args.file_out) - - -if __name__ == "__main__": - sys.exit(main()) diff --git a/modules/local/samplesheet_check.nf b/modules/local/samplesheet_check.nf deleted file mode 100644 index ec0e11b2..00000000 --- a/modules/local/samplesheet_check.nf +++ /dev/null @@ -1,31 +0,0 @@ -process SAMPLESHEET_CHECK { - tag "$samplesheet" - label 'process_single' - - conda "conda-forge::python=3.8.3" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/python:3.8.3' : - 'biocontainers/python:3.8.3' }" - - input: - path samplesheet - - output: - path '*.csv' , emit: csv - path "versions.yml", emit: versions - - when: - task.ext.when == null || task.ext.when - - script: // This script is bundled with the pipeline, in nf-core/crisprseq/bin/ - """ - check_samplesheet.py \\ - $samplesheet \\ - samplesheet.valid.csv - - cat <<-END_VERSIONS > versions.yml - "${task.process}": - python: \$(python --version | sed 's/Python //g') - END_VERSIONS - """ -} diff --git a/subworkflows/local/input_check.nf b/subworkflows/local/input_check.nf deleted file mode 100644 index c9aafbde..00000000 --- a/subworkflows/local/input_check.nf +++ /dev/null @@ -1,130 +0,0 @@ -// -// Check input samplesheet and get read channels -// - -include { SAMPLESHEET_CHECK } from '../../modules/local/samplesheet_check' - -workflow INPUT_CHECK { - take: - samplesheet // file: /path/to/samplesheet.csv - - main: - SAMPLESHEET_CHECK ( samplesheet ) - .csv - .splitCsv ( header:true, sep:',' ) - .multiMap { - reads: create_fastq_channel(it) - reference: create_reference_channel(it) - template: create_template_channel(it) - protospacer: create_protospacer_channel(it) - } - .set { inputs } - - emit: - reads = inputs.reads // channel: [ val(meta), [ reads ] ] - reference = inputs.reference // channel: [ val(meta), reference ] - template = inputs.template // channel: [ val(meta), template ] - protospacer = inputs.protospacer // channel: [ val(meta), protospacer ] - versions = SAMPLESHEET_CHECK.out.versions // channel: [ versions.yml ] - -} - -// Function to generate meta map -def create_meta(LinkedHashMap row) { - // Create meta map with sample ID - def meta = [:] - meta.id = row.sample - - // Add single end boolean - if (row.fastq_2 && file(row.fastq_2).exists()) { - meta.single_end = false - } else { - meta.single_end = true - } - - // Add self reference boolean - if (row.reference.length() <= 0) { - meta.self_reference = true - } else { - meta.self_reference = false - } - - // Add template boolean - if (!row.template) { - meta.template = false - } else if (!file(row.template).exists()) { - meta.template = true - } else { - meta.template = true - } - - return meta -} - -// Function to get list of [ meta, [ fastq_1, fastq_2 ] ] -def create_fastq_channel(LinkedHashMap row) { - // create meta map - def meta = create_meta(row) - - // add path(s) of the fastq file(s) to the meta map - def fastq_meta = [] - if (!file(row.fastq_1).exists()) { - error("ERROR: Please check input samplesheet -> Read 1 FastQ file does not exist!\n${row.fastq_1}") - } - if (!row.fastq_2 || !file(row.fastq_2).exists()) { - fastq_meta = [ meta, [ file(row.fastq_1) ] ] - } else { - fastq_meta = [ meta, [ file(row.fastq_1), file(row.fastq_2) ] ] - } - return fastq_meta -} - -// Function to get a list of [ meta, reference ] -def create_reference_channel(LinkedHashMap row) { - // create meta map - def meta = create_meta(row) - - // add reference sequence to meta - def reference_meta = [] - if (row.reference.length() <= 0) { - reference_meta = [ meta, null ] - } else { - reference_meta = [ meta, row.reference ] - } - - return reference_meta -} - -// Function to get a list of [ meta, template ] -def create_template_channel(LinkedHashMap row) { - // create meta map - def meta = create_meta(row) - - // add template sequence/path to meta - def template_meta = [] - if (!row.template) { - template_meta = [ meta, null ] - } else if (!file(row.template).exists()) { - template_meta = [ meta, row.template ] - } else { - template_meta = [ meta, file(row.template) ] - } - - return template_meta -} - -// Function to get a list of [ meta, protospacer ] -def create_protospacer_channel(LinkedHashMap row) { - // create meta map - def meta = create_meta(row) - - // add protospacer sequence to meta - def protospacer_meta = [] - if (row.protospacer.length() <= 0 && !params.protospacer) { - error("ERROR: Please check input samplesheet -> Protospacer sequence is not provided!\n") - } else { - protospacer_meta = [ meta, row.protospacer ] - } - - return protospacer_meta -} diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 8f4d33f7..0229c4b9 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -141,7 +141,7 @@ workflow CRISPRSEQ_TARGETED { // Channel.fromSamplesheet("input") .multiMap { - meta, fastq_1, fastq_2, condition, reference, protospacer, template -> + meta, fastq_1, fastq_2, x, reference, protospacer, template -> reads: [ meta.id, meta + [ single_end:false, self_reference:reference?false:true, template:template?true:false ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] reference: [meta + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], reference] protospacer: [meta + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], protospacer] From 7e4a20569603a97be756adea2eea8a716afda6f4 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 18 Jul 2023 15:39:41 +0200 Subject: [PATCH 015/133] add fromSamplesheet to screening --- assets/schema_input.json | 3 +- bin/check_samplesheet_screening.py | 253 ------------------- modules/local/samplesheet_check_screening.nf | 28 -- subworkflows/local/input_check_screening.nf | 44 ---- workflows/crisprseq_screening.nf | 20 +- workflows/crisprseq_targeted.nf | 12 +- 6 files changed, 21 insertions(+), 339 deletions(-) delete mode 100755 bin/check_samplesheet_screening.py delete mode 100644 modules/local/samplesheet_check_screening.nf delete mode 100644 subworkflows/local/input_check_screening.nf diff --git a/assets/schema_input.json b/assets/schema_input.json index a66228ed..ea6d0647 100644 --- a/assets/schema_input.json +++ b/assets/schema_input.json @@ -38,7 +38,8 @@ "type": "string", "pattern": "^\\S+$", "enum": ["control", "treatment"], - "errorMessage": "Condition name must be one of 'control' or 'treatment'" + "errorMessage": "Condition name must be one of 'control' or 'treatment'", + "meta": ["condition"] }, "reference": { "type": "string", diff --git a/bin/check_samplesheet_screening.py b/bin/check_samplesheet_screening.py deleted file mode 100755 index c069109d..00000000 --- a/bin/check_samplesheet_screening.py +++ /dev/null @@ -1,253 +0,0 @@ -#!/usr/bin/env python - - -"""Provide a command line tool to validate and transform tabular samplesheets.""" - - -import argparse -import csv -import logging -import sys -from collections import Counter -from pathlib import Path - -logger = logging.getLogger() - - -class RowChecker: - """ - Define a service that can validate and transform each given row. - - Attributes: - modified (list): A list of dicts, where each dict corresponds to a previously - validated and transformed row. The order of rows is maintained. - - """ - - VALID_FORMATS = ( - ".fq.gz", - ".fastq.gz", - ) - - def __init__( - self, - sample_col="sample", - first_col="fastq_1", - second_col="fastq_2", - condition="control", - **kwargs, - ): - """ - Initialize the row checker with the expected column names. - - Args: - sample_col (str): The name of the column that contains the sample name - (default "sample"). - first_col (str): The name of the column that contains the first (or only) - FASTQ file path (default "fastq_1"). - second_col (str): The name of the column that contains the second (if any) - FASTQ file path (default "fastq_2"). - condition (str): The name of the condition of the sample. - - """ - super().__init__(**kwargs) - self._sample_col = sample_col - self._first_col = first_col - self._second_col = second_col - self._condition = condition - self._seen = set() - self.modified = [] - - def validate_and_transform(self, row): - """ - Perform all validations on the given row and insert the read pairing status. - - Args: - row (dict): A mapping from column headers (keys) to elements of that row - (values). - - """ - self._validate_sample(row) - self._validate_first(row) - self._validate_second(row) - self._validate_pair(row) - self._seen.add((row[self._sample_col], row[self._first_col])) - self.modified.append(row) - - def _validate_sample(self, row): - """Assert that the sample name exists and convert spaces to underscores.""" - if len(row[self._sample_col]) <= 0: - raise AssertionError("Sample input is required.") - # Sanitize samples slightly. - row[self._sample_col] = row[self._sample_col].replace(" ", "_") - - def _validate_first(self, row): - """Assert that the first FASTQ entry is non-empty and has the right format.""" - if len(row[self._first_col]) <= 0: - raise AssertionError("At least the first FASTQ file is required.") - self._validate_fastq_format(row[self._first_col]) - - def _validate_second(self, row): - """Assert that the second FASTQ entry has the right format if it exists.""" - if len(row[self._second_col]) > 0: - self._validate_fastq_format(row[self._second_col]) - - def _validate_pair(self, row): - """Assert that read pairs have the same file extension. Report pair status.""" - if row[self._first_col] and row[self._second_col]: - first_col_suffix = Path(row[self._first_col]).suffixes[-2:] - second_col_suffix = Path(row[self._second_col]).suffixes[-2:] - if first_col_suffix != second_col_suffix: - raise AssertionError("FASTQ pairs must have the same file extensions.") - - def _validate_fastq_format(self, filename): - """Assert that a given filename has one of the expected FASTQ extensions.""" - if not any(filename.endswith(extension) for extension in self.VALID_FORMATS): - raise AssertionError( - f"The FASTQ file has an unrecognized extension: {filename}\n" - f"It should be one of: {', '.join(self.VALID_FORMATS)}" - ) - - def validate_unique_samples(self): - """ - Assert that the combination of sample name and FASTQ filename is unique. - - In addition to the validation, also rename all samples to have a suffix of _T{n}, where n is the - number of times the same sample exist, but with different FASTQ files, e.g., multiple runs per experiment. - - """ - if len(self._seen) != len(self.modified): - raise AssertionError("The pair of sample name and FASTQ must be unique.") - seen = Counter() - for row in self.modified: - sample = row[self._sample_col] - seen[sample] += 1 - row[self._sample_col] = f"{sample}_T{seen[sample]}" - - -def read_head(handle, num_lines=10): - """Read the specified number of lines from the current position in the file.""" - lines = [] - for idx, line in enumerate(handle): - if idx == num_lines: - break - lines.append(line) - return "".join(lines) - - -def sniff_format(handle): - """ - Detect the tabular format. - - Args: - handle (text file): A handle to a `text file`_ object. The read position is - expected to be at the beginning (index 0). - - Returns: - csv.Dialect: The detected tabular format. - - .. _text file: - https://docs.python.org/3/glossary.html#term-text-file - - """ - peek = read_head(handle) - handle.seek(0) - sniffer = csv.Sniffer() - dialect = sniffer.sniff(peek) - return dialect - - -def check_samplesheet(file_in, file_out): - """ - Check that the tabular samplesheet has the structure expected by nf-core pipelines. - - Validate the general shape of the table, expected columns, and each row. Also add - an additional column which records whether one or two FASTQ reads were found. - - Args: - file_in (pathlib.Path): The given tabular samplesheet. The format can be either - CSV, TSV, or any other format automatically recognized by ``csv.Sniffer``. - file_out (pathlib.Path): Where the validated and transformed samplesheet should - be created; always in CSV format. - - Example: - This function checks that the samplesheet follows the following structure, - see also the `viral recon samplesheet`_:: - - sample,fastq_1,fastq_2,condition - SAMPLE_PE,SAMPLE_PE_RUN1_1.fastq.gz,SAMPLE_PE_RUN1_2.fastq.gz,control - SAMPLE_SE,SAMPLE_SE_RUN1_1.fastq.gz,,tratment - - .. _viral recon samplesheet: - https://raw.githubusercontent.com/nf-core/test-datasets/viralrecon/samplesheet/samplesheet_test_illumina_amplicon.csv - - """ - required_columns = {"sample", "fastq_1", "fastq_2"} - # See https://docs.python.org/3.9/library/csv.html#id3 to read up on `newline=""`. - with file_in.open(newline="") as in_handle: - reader = csv.DictReader(in_handle, dialect=sniff_format(in_handle)) - # Validate the existence of the expected header columns. - if not required_columns.issubset(reader.fieldnames): - req_cols = ", ".join(required_columns) - logger.critical(f"The sample sheet **must** contain these column headers: {req_cols}.") - sys.exit(1) - # Validate each row. - checker = RowChecker() - for i, row in enumerate(reader): - try: - checker.validate_and_transform(row) - except AssertionError as error: - logger.critical(f"{str(error)} On line {i + 2}.") - sys.exit(1) - checker.validate_unique_samples() - header = list(reader.fieldnames) - header.insert(1, "single_end") - # See https://docs.python.org/3.9/library/csv.html#id3 to read up on `newline=""`. - with file_out.open(mode="w", newline="") as out_handle: - writer = csv.DictWriter(out_handle, header, delimiter=",") - writer.writeheader() - for row in checker.modified: - writer.writerow(row) - - -def parse_args(argv=None): - """Define and immediately parse command line arguments.""" - parser = argparse.ArgumentParser( - description="Validate and transform a tabular samplesheet.", - epilog="Example: python check_samplesheet.py samplesheet.csv samplesheet.valid.csv", - ) - parser.add_argument( - "file_in", - metavar="FILE_IN", - type=Path, - help="Tabular input samplesheet in CSV or TSV format.", - ) - parser.add_argument( - "file_out", - metavar="FILE_OUT", - type=Path, - help="Transformed output samplesheet in CSV format.", - ) - parser.add_argument( - "-l", - "--log-level", - help="The desired log level (default WARNING).", - choices=("CRITICAL", "ERROR", "WARNING", "INFO", "DEBUG"), - default="WARNING", - ) - return parser.parse_args(argv) - - -def main(argv=None): - """Coordinate argument parsing and program execution.""" - args = parse_args(argv) - logging.basicConfig(level=args.log_level, format="[%(levelname)s] %(message)s") - if not args.file_in.is_file(): - logger.error(f"The given input file {args.file_in} was not found!") - sys.exit(2) - args.file_out.parent.mkdir(parents=True, exist_ok=True) - check_samplesheet(args.file_in, args.file_out) - - -if __name__ == "__main__": - sys.exit(main()) diff --git a/modules/local/samplesheet_check_screening.nf b/modules/local/samplesheet_check_screening.nf deleted file mode 100644 index 69b887f6..00000000 --- a/modules/local/samplesheet_check_screening.nf +++ /dev/null @@ -1,28 +0,0 @@ -process SAMPLESHEET_CHECK_SCREENING { - tag "$samplesheet" - label 'process_single' - - conda "conda-forge::python=3.8.3" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/python:3.8.3' : - 'biocontainers/python:3.8.3' }" - - input: - path samplesheet - - output: - path '*.csv' , emit: csv - path "versions.yml", emit: versions - - script: // This script is bundled with the pipeline, in nf-core/test/bin/ - """ - check_samplesheet_screening.py \\ - $samplesheet \\ - samplesheet.valid.csv - - cat <<-END_VERSIONS > versions.yml - "${task.process}": - python: \$(python --version | sed 's/Python //g') - END_VERSIONS - """ -} diff --git a/subworkflows/local/input_check_screening.nf b/subworkflows/local/input_check_screening.nf deleted file mode 100644 index 8b3ba471..00000000 --- a/subworkflows/local/input_check_screening.nf +++ /dev/null @@ -1,44 +0,0 @@ -// -// Check input samplesheet and get read channels -// - -include { SAMPLESHEET_CHECK_SCREENING } from '../../modules/local/samplesheet_check_screening' - -workflow INPUT_CHECK_SCREENING { - take: - samplesheet // file: /path/to/samplesheet.csv - - main: - SAMPLESHEET_CHECK_SCREENING ( samplesheet ) - .csv - .splitCsv ( header:true, sep:',' ) - .map { create_fastq_channel(it) } - .set { reads } - - emit: - reads // channel: [ val(meta), [ reads ] ] - versions = SAMPLESHEET_CHECK_SCREENING.out.versions // channel: [ versions.yml ] -} - -// Function to get list of [ meta, [ fastq_1, fastq_2 ] ] -def create_fastq_channel(LinkedHashMap row) { - // create meta map - def meta = [:] - meta.id = row.sample - meta.condition = row.condition - - // add path(s) of the fastq file(s) to the meta map - def fastq_meta = [] - if (!file(row.fastq_1).exists()) { - error("ERROR: Please check input samplesheet -> Read 1 FastQ file does not exist!\n${row.fastq_1}") - } - if (!row.fastq_2) { - fastq_meta = [ meta, [ file(row.fastq_1) ] ] - } else { - if (!file(row.fastq_2).exists()) { - error("ERROR: Please check input samplesheet -> Read 2 FastQ file does not exist!\n${row.fastq_2}") - } - fastq_meta = [ meta, [ file(row.fastq_1), file(row.fastq_2) ] ] - } - return fastq_meta -} diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index ff6fcada..fdff3857 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -76,22 +76,28 @@ workflow CRISPRSEQ_SCREENING { if(!params.count_table){ // - // SUBWORKFLOW: Read in samplesheet, validate and stage input files + // Create input channel from input file provided through params.input // - INPUT_CHECK_SCREENING ( - file(params.input) - ) - ch_versions = ch_versions.mix(INPUT_CHECK_SCREENING.out.versions) + Channel.fromSamplesheet("input") + .map{ meta, fastq_1, fastq_2, x, y, z -> + // x (reference), y (protospacer), and z (template) are part of the targeted workflows and we don't need them + if (!fastq_2) { + return [ meta, [ fastq_1 ] ] + } else { + return [ meta, [ fastq_1, fastq_2 ] ] + } + } + .set { ch_input } // // MODULE: Run FastQC // FASTQC ( - INPUT_CHECK_SCREENING.out.reads + ch_input ) ch_versions = ch_versions.mix(FASTQC.out.versions.first()) - INPUT_CHECK_SCREENING.out.reads + ch_input .map { meta, fastq -> [meta.condition, fastq] } diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 0229c4b9..49ab46c5 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -140,12 +140,12 @@ workflow CRISPRSEQ_TARGETED { // Create input channel from input file provided through params.input // Channel.fromSamplesheet("input") - .multiMap { - meta, fastq_1, fastq_2, x, reference, protospacer, template -> - reads: [ meta.id, meta + [ single_end:false, self_reference:reference?false:true, template:template?true:false ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] - reference: [meta + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], reference] - protospacer: [meta + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], protospacer] - template: [meta + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], template] + .multiMap { meta, fastq_1, fastq_2, reference, protospacer, template -> + // meta.condition is part of the screening pipeline and we need to remove it + reads: [ meta.id, meta - meta.subMap('condition') + [ single_end:false, self_reference:reference?false:true, template:template?true:false ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] + reference: [meta - meta.subMap('condition') + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], reference] + protospacer: [meta - meta.subMap('condition') + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], protospacer] + template: [meta - meta.subMap('condition') + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], template] } .set { ch_input } From 6cb5f6437663e3615606057f551e73ab32cc92d8 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 18 Jul 2023 15:42:32 +0200 Subject: [PATCH 016/133] update changelog --- CHANGELOG.md | 1 + workflows/crisprseq_targeted.nf | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 02d741b5..90d0c5fd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,6 +8,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Template update v2.9 ([#52](https://github.com/nf-core/crisprseq/pull/52)) +- Use Channel.fromSamplesheet() from nf-validation to validate input sample sheets and create an input channel ([#54](https://github.com/nf-core/crisprseq/pull/54)) ### Fixed diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 49ab46c5..7aa25e77 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -141,7 +141,7 @@ workflow CRISPRSEQ_TARGETED { // Channel.fromSamplesheet("input") .multiMap { meta, fastq_1, fastq_2, reference, protospacer, template -> - // meta.condition is part of the screening pipeline and we need to remove it + // meta.condition is part of the screening workflow and we need to remove it reads: [ meta.id, meta - meta.subMap('condition') + [ single_end:false, self_reference:reference?false:true, template:template?true:false ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] reference: [meta - meta.subMap('condition') + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], reference] protospacer: [meta - meta.subMap('condition') + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], protospacer] From b24a00c60934d96aec99b189261b5ee2c8ff1ce9 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 18 Jul 2023 15:55:57 +0200 Subject: [PATCH 017/133] allow sequences in lower case --- CHANGELOG.md | 2 +- assets/schema_input.json | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 90d0c5fd..cc4ab20e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,7 +8,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Template update v2.9 ([#52](https://github.com/nf-core/crisprseq/pull/52)) -- Use Channel.fromSamplesheet() from nf-validation to validate input sample sheets and create an input channel ([#54](https://github.com/nf-core/crisprseq/pull/54)) +- Use `Channel.fromSamplesheet()` from `nf-validation` to validate input sample sheets and create an input channel ([#54](https://github.com/nf-core/crisprseq/pull/54)) ### Fixed diff --git a/assets/schema_input.json b/assets/schema_input.json index ea6d0647..13f50606 100644 --- a/assets/schema_input.json +++ b/assets/schema_input.json @@ -43,17 +43,17 @@ }, "reference": { "type": "string", - "pattern": "^[ACTGN]+$", + "pattern": "^[ACTGNactgn]+$", "errorMessage": "Reference sequence must be a valid DNA sequence" }, "protospacer": { "type": "string", - "pattern": "^[ACTGN]+$", + "pattern": "^[ACTGNactgn]+$", "errorMessage": "Protospacer sequence must be a valid DNA sequence" }, "template": { "type": "string", - "pattern": "^[ACTGN]+$", + "pattern": "^[ACTGNactgn]+$", "errorMessage": "Template sequence must be a valid DNA sequence" } }, From 808448ec50dfd7cc947ebce6fdda8ae5eb1f39c7 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Wed, 19 Jul 2023 14:25:06 +0200 Subject: [PATCH 018/133] replace seq_to_file module by channel operations --- modules/local/seq_to_file.nf | 33 --------------- workflows/crisprseq_targeted.nf | 75 ++++++++++++++++++--------------- 2 files changed, 41 insertions(+), 67 deletions(-) delete mode 100644 modules/local/seq_to_file.nf diff --git a/modules/local/seq_to_file.nf b/modules/local/seq_to_file.nf deleted file mode 100644 index 6dfc0022..00000000 --- a/modules/local/seq_to_file.nf +++ /dev/null @@ -1,33 +0,0 @@ -process SEQ_TO_FILE { - tag "$meta.id" - label 'process_single' - - conda "conda-forge::p7zip==16.02" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/p7zip:16.02' : - 'biocontainers/p7zip:16.02' }" - - input: - tuple val(meta), val(sequence) - val(type) - - output: - tuple val(meta), path('*.fasta') , emit: file - path "versions.yml" , emit: versions - - when: - sequence != null - - script: - def args = task.ext.args ?: '' - def prefix = task.ext.prefix ?: "${meta.id}" - """ - echo ">${meta.id}" > ${meta.id}_${type}.fasta - echo $sequence >> ${meta.id}_${type}.fasta - - cat <<-END_VERSIONS > versions.yml - "${task.process}": - 7za: \$(echo \$(7za --help) | sed 's/.*p7zip Version //; s/(.*//') - END_VERSIONS - """ -} diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 7aa25e77..5b1f5a48 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -167,46 +167,59 @@ workflow CRISPRSEQ_TARGETED { // - // MODULE: Add reference sequences to file + // Add reference sequences to file // - SEQ_TO_FILE_REF ( - ch_input.reference - .map { - meta, fastq -> - [ meta , fastq ] - }, - "reference" + ch_input.reference + .tap{ meta_reference } + .collectFile() { meta, reference -> + [ "${meta.id}_reference.fasta", ">${meta.id}\n${item}\n" ] // Write each reference sequence to a file + } + .map{ new_file -> + [new_file.baseName.split("_reference")[0], new_file] // create a channel with the meta.id and the new file + } + .join(meta_reference + .map{ meta, reference -> + [meta.id, meta] // Join the channel by meta.id with the meta map + } ) - ch_versions = ch_versions.mix(SEQ_TO_FILE_REF.out.versions) + .map{ metaid, new_file, meta -> + [meta, new_file] // Obtain the final channel with meta map and the new file + } + .set{ ch_seq_reference } + // - // MODULE: Add template sequences to file + // Add template sequences to file // - SEQ_TO_FILE_TEMPL ( - ch_input.template - .map { - meta, fastq -> - [ meta , fastq ] - }, - "template" + ch_input.template + .tap{ meta_template } + .collectFile() { meta, template -> + [ "${meta.if}_template.fasta", ">${meta.id}\n${item}\n" ] // Write each template sequence to a file + } + .map{ new_file -> + [new_file.baseName.split("_template")[0], new_file] // create a channel with the meta.id and the new file + } + .join(meta_template + .map{ meta, template -> + [meta.id, meta] // Join the channel by meta.id with the meta map + } ) - ch_versions = ch_versions.mix(SEQ_TO_FILE_TEMPL.out.versions) + .map{ metaid, new_file, meta -> + [meta, new_file] // Obtain the final channel with meta map and the new file + } + .set{ ch_seq_template } + // Join channels with reference and protospacer // to channel: [ meta, reference, protospacer] if (!params.reference_fasta && !params.protospacer) { - SEQ_TO_FILE_REF.out.file - .join(ch_input.protospacer - .map { - meta, fastq -> - [ meta , fastq ] - }, - by: 0) + ch_seq_reference + .join(ch_input.protospacer) .set{ reference_protospacer } } else if (!params.reference_fasta) { // If a protospacer was provided through the --protospacer param instead of the samplesheet ch_protospacer = Channel.of(params.protospacer) - SEQ_TO_FILE_REF.out.file + ch_seq_reference .combine(ch_protospacer) .set{ reference_protospacer } } else if (!params.protospacer) { @@ -214,9 +227,6 @@ workflow CRISPRSEQ_TARGETED { ch_reference = Channel.fromPath(params.reference_fasta) ch_input.protospacer .combine(ch_reference) - .map{ meta, protospacer, reference -> - [ meta , reference, protospacer ] - } .set{ reference_protospacer } } else { ch_reference = Channel.fromPath(params.reference_fasta) @@ -224,9 +234,6 @@ workflow CRISPRSEQ_TARGETED { ch_input.reads .combine(ch_reference) .combine(ch_protospacer) - .map{ meta, reads, reference, protospacer -> - [meta , reference, protospacer] - } .set{ reference_protospacer } } @@ -656,7 +663,7 @@ workflow CRISPRSEQ_TARGETED { // TEMPLATE_REFERENCE ( ORIENT_REFERENCE.out.reference - .join(SEQ_TO_FILE_TEMPL.out.file) + .join(ch_seq_template) ) @@ -693,7 +700,7 @@ workflow CRISPRSEQ_TARGETED { [ meta , fastq ] } ) - .join(SEQ_TO_FILE_TEMPL.out.file, remainder: true) + .join(ch_seq_template, remainder: true) .join(ch_template_bam, remainder: true) .join(TEMPLATE_REFERENCE.out.fasta, remainder: true) .join(ALIGNMENT_SUMMARY.out.summary) From b053ff888421369ded41b73add68d9b6837908e5 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Wed, 19 Jul 2023 14:27:56 +0200 Subject: [PATCH 019/133] remove outdated module includes and comments --- workflows/crisprseq_targeted.nf | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 5b1f5a48..56f1dfdf 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -40,8 +40,6 @@ ch_multiqc_custom_methods_description = params.multiqc_methods_description ? fil // include { FIND_ADAPTERS } from '../modules/local/find_adapters' include { EXTRACT_UMIS } from '../modules/local/extract_umis' -include { SEQ_TO_FILE as SEQ_TO_FILE_REF } from '../modules/local/seq_to_file' -include { SEQ_TO_FILE as SEQ_TO_FILE_TEMPL } from '../modules/local/seq_to_file' include { ORIENT_REFERENCE } from '../modules/local/orient_reference' include { CIGAR_PARSER } from '../modules/local/cigar_parser' include { MERGING_SUMMARY } from '../modules/local/merging_summary' @@ -447,11 +445,11 @@ workflow CRISPRSEQ_TARGETED { [ "${name}.fasta", fasta ] // >centroid_... -> sample_top.fasta } .map{ new_file -> - [new_file.baseName, new_file] // Substring is removing "_top" added by VSEARCH_SORT // [sample, sample_top.fasta] + [new_file.baseName, new_file] // [sample, sample_top.fasta] } .join(meta_channel_2 .map { meta, original_file -> - ["${original_file.baseName}", meta] // Substring is removing "_top" added by VSEARCH_SORT // [sample, [id:sample_id, ...]] + ["${original_file.baseName}", meta] // [sample, [id:sample_id, ...]] }) // [sample, sample_top.fasta, [id:sample_id, ...]] .map{ file_name, new_file, meta -> [meta + [cluster_id: file_name[0..-5]], new_file] // Add cluster ID to meta map // [[id:sample_id, ..., cluster_id:sample], sample_top.fasta] @@ -470,7 +468,7 @@ workflow CRISPRSEQ_TARGETED { [ "${name}_sequences.fasta", fasta ] // >... -> sample_sequences.fasta } .map{ new_file -> - [new_file.baseName[0..-11], new_file] // Substring is removing "_sequences" added by collectFile // [sample, sample_sequences.fasta] + [new_file.baseName[0..-11], new_file] // [sample, sample_sequences.fasta] } .join(meta_channel_3 .map { meta, original_file -> From f28c9fcd54397d0cad2cd1f68938c71fdab23f2b Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Wed, 19 Jul 2023 14:38:13 +0200 Subject: [PATCH 020/133] fix typos --- workflows/crisprseq_targeted.nf | 76 ++++++++++++++++----------------- 1 file changed, 38 insertions(+), 38 deletions(-) diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 56f1dfdf..02ad5f97 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -38,14 +38,14 @@ ch_multiqc_custom_methods_description = params.multiqc_methods_description ? fil // // MODULE // -include { FIND_ADAPTERS } from '../modules/local/find_adapters' -include { EXTRACT_UMIS } from '../modules/local/extract_umis' -include { ORIENT_REFERENCE } from '../modules/local/orient_reference' -include { CIGAR_PARSER } from '../modules/local/cigar_parser' -include { MERGING_SUMMARY } from '../modules/local/merging_summary' -include { CLUSTERING_SUMMARY } from '../modules/local/clustering_summary' -include { ALIGNMENT_SUMMARY } from '../modules/local/alignment_summary' -include { TEMPLATE_REFERENCE } from '../modules/local/template_reference' +include { FIND_ADAPTERS } from '../modules/local/find_adapters' +include { EXTRACT_UMIS } from '../modules/local/extract_umis' +include { ORIENT_REFERENCE } from '../modules/local/orient_reference' +include { CIGAR_PARSER } from '../modules/local/cigar_parser' +include { MERGING_SUMMARY } from '../modules/local/merging_summary' +include { CLUSTERING_SUMMARY } from '../modules/local/clustering_summary' +include { ALIGNMENT_SUMMARY } from '../modules/local/alignment_summary' +include { TEMPLATE_REFERENCE } from '../modules/local/template_reference' /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -56,30 +56,30 @@ include { TEMPLATE_REFERENCE } from '../modules/loc // // MODULE: Installed directly from nf-core/modules // -include { FASTQC } from '../modules/nf-core/fastqc/main' -include { MULTIQC } from '../modules/nf-core/multiqc/main' -include { CUSTOM_DUMPSOFTWAREVERSIONS } from '../modules/nf-core/custom/dumpsoftwareversions/main' -include { PEAR } from '../modules/nf-core/pear/main' -include { CAT_FASTQ } from '../modules/nf-core/cat/fastq/main' -include { SEQTK_SEQ as SEQTK_SEQ_MASK } from '../modules/nf-core/seqtk/seq/main' -include { SEQTK_SEQ as SEQTK_SEQ_FATOFQ } from '../modules/nf-core/seqtk/seq/main' -include { VSEARCH_CLUSTER } from '../modules/nf-core/vsearch/cluster/main' -include { VSEARCH_SORT } from '../modules/nf-core/vsearch/sort/main' -include { RACON as RACON_1 } from '../modules/nf-core/racon/main' -include { RACON as RACON_2 } from '../modules/nf-core/racon/main' -include { BOWTIE2_ALIGN } from '../modules/nf-core/bowtie2/align/main' -include { BOWTIE2_BUILD } from '../modules/nf-core/bowtie2/build/main' -include { BWA_MEM } from '../modules/nf-core/bwa/mem/main' -include { BWA_INDEX } from '../modules/nf-core/bwa/index/main' -include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_ORIGINAL } from '../modules/nf-core/minimap2/align/main' -include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_UMI_1 } from '../modules/nf-core/minimap2/align/main' -include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_UMI_2 } from '../modules/nf-core/minimap2/align/main' -include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_TEMPLATE } from '../modules/nf-core/minimap2/align/main' -include { SAMTOOLS_FAIDX } from '../modules/nf-core/samtools/faidx/main' -include { MINIMAP2_INDEX } from '../modules/nf-core/minimap2/index/main' -include { MEDAKA } from '../modules/nf-core/medaka/main' -include { CUTADAPT } from '../modules/nf-core/cutadapt/main' -include { SAMTOOLS_INDEX } from '../modules/nf-core/samtools/index/main' +include { FASTQC } from '../modules/nf-core/fastqc/main' +include { MULTIQC } from '../modules/nf-core/multiqc/main' +include { CUSTOM_DUMPSOFTWAREVERSIONS } from '../modules/nf-core/custom/dumpsoftwareversions/main' +include { PEAR } from '../modules/nf-core/pear/main' +include { CAT_FASTQ } from '../modules/nf-core/cat/fastq/main' +include { SEQTK_SEQ as SEQTK_SEQ_MASK } from '../modules/nf-core/seqtk/seq/main' +include { SEQTK_SEQ as SEQTK_SEQ_FATOFQ } from '../modules/nf-core/seqtk/seq/main' +include { VSEARCH_CLUSTER } from '../modules/nf-core/vsearch/cluster/main' +include { VSEARCH_SORT } from '../modules/nf-core/vsearch/sort/main' +include { RACON as RACON_1 } from '../modules/nf-core/racon/main' +include { RACON as RACON_2 } from '../modules/nf-core/racon/main' +include { BOWTIE2_ALIGN } from '../modules/nf-core/bowtie2/align/main' +include { BOWTIE2_BUILD } from '../modules/nf-core/bowtie2/build/main' +include { BWA_MEM } from '../modules/nf-core/bwa/mem/main' +include { BWA_INDEX } from '../modules/nf-core/bwa/index/main' +include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_ORIGINAL } from '../modules/nf-core/minimap2/align/main' +include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_UMI_1 } from '../modules/nf-core/minimap2/align/main' +include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_UMI_2 } from '../modules/nf-core/minimap2/align/main' +include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_TEMPLATE } from '../modules/nf-core/minimap2/align/main' +include { SAMTOOLS_FAIDX } from '../modules/nf-core/samtools/faidx/main' +include { MINIMAP2_INDEX } from '../modules/nf-core/minimap2/index/main' +include { MEDAKA } from '../modules/nf-core/medaka/main' +include { CUTADAPT } from '../modules/nf-core/cutadapt/main' +include { SAMTOOLS_INDEX } from '../modules/nf-core/samtools/index/main' /* @@ -170,15 +170,15 @@ workflow CRISPRSEQ_TARGETED { ch_input.reference .tap{ meta_reference } .collectFile() { meta, reference -> - [ "${meta.id}_reference.fasta", ">${meta.id}\n${item}\n" ] // Write each reference sequence to a file + [ "${meta.id}_reference.fasta", ">${meta.id}\n${reference}\n" ] // Write each reference sequence to a file } .map{ new_file -> [new_file.baseName.split("_reference")[0], new_file] // create a channel with the meta.id and the new file } .join(meta_reference .map{ meta, reference -> - [meta.id, meta] // Join the channel by meta.id with the meta map - } + [meta.id, meta] // Join the channel by meta.id with the meta map + } ) .map{ metaid, new_file, meta -> [meta, new_file] // Obtain the final channel with meta map and the new file @@ -192,15 +192,15 @@ workflow CRISPRSEQ_TARGETED { ch_input.template .tap{ meta_template } .collectFile() { meta, template -> - [ "${meta.if}_template.fasta", ">${meta.id}\n${item}\n" ] // Write each template sequence to a file + [ "${meta.if}_template.fasta", ">${meta.id}\n${template}\n" ] // Write each template sequence to a file } .map{ new_file -> [new_file.baseName.split("_template")[0], new_file] // create a channel with the meta.id and the new file } .join(meta_template .map{ meta, template -> - [meta.id, meta] // Join the channel by meta.id with the meta map - } + [meta.id, meta] // Join the channel by meta.id with the meta map + } ) .map{ metaid, new_file, meta -> [meta, new_file] // Obtain the final channel with meta map and the new file From 237e7b8be4261034cb381c2308111d0f6655535d Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Wed, 19 Jul 2023 15:13:15 +0200 Subject: [PATCH 021/133] add suggestions from code review --- assets/schema_input.json | 9 +-------- workflows/crisprseq_targeted.nf | 8 ++++---- 2 files changed, 5 insertions(+), 12 deletions(-) diff --git a/assets/schema_input.json b/assets/schema_input.json index 13f50606..21c8c38a 100644 --- a/assets/schema_input.json +++ b/assets/schema_input.json @@ -25,14 +25,7 @@ "format": "file-path", "exists": true, "errorMessage": "FastQ file for reads 2 cannot contain spaces and must have extension '.fq.gz' or '.fastq.gz'", - "anyOf": [ - { - "pattern": "^\\S+\\.f(ast)?q\\.gz$" - }, - { - "maxLength": 0 - } - ] + "pattern": "^\\S+\\.f(ast)?q\\.gz$" }, "condition": { "type": "string", diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 02ad5f97..2e05a8f3 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -140,10 +140,10 @@ workflow CRISPRSEQ_TARGETED { Channel.fromSamplesheet("input") .multiMap { meta, fastq_1, fastq_2, reference, protospacer, template -> // meta.condition is part of the screening workflow and we need to remove it - reads: [ meta.id, meta - meta.subMap('condition') + [ single_end:false, self_reference:reference?false:true, template:template?true:false ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] - reference: [meta - meta.subMap('condition') + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], reference] - protospacer: [meta - meta.subMap('condition') + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], protospacer] - template: [meta - meta.subMap('condition') + [ single_end:true, self_reference:reference?false:true, template:template?true:false ], template] + reads: [ meta.id, meta - meta.subMap('condition') + [ single_end:fastq_2?false:true, self_reference:reference?false:true, template:template?true:false ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] + reference: [meta - meta.subMap('condition') + [ single_end:fastq_2?false:true, self_reference:reference?false:true, template:template?true:false ], reference] + protospacer: [meta - meta.subMap('condition') + [ single_end:fastq_2?false:true, self_reference:reference?false:true, template:template?true:false ], protospacer] + template: [meta - meta.subMap('condition') + [ single_end:fastq_2?false:true, self_reference:reference?false:true, template:template?true:false ], template] } .set { ch_input } From 3a506e65c1c3afd9f0c60e1cb42755d7b22c9c1f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Mir=20Pedrol?= Date: Wed, 19 Jul 2023 14:53:08 +0000 Subject: [PATCH 022/133] fix typo and filter out empty sequences --- conf/modules.config | 16 ---------------- workflows/crisprseq_targeted.nf | 4 +++- 2 files changed, 3 insertions(+), 17 deletions(-) diff --git a/conf/modules.config b/conf/modules.config index 43cdc492..75765bcd 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -18,22 +18,6 @@ process { saveAs: { filename -> filename.equals('versions.yml') ? null : filename } ] - withName: SEQ_TO_FILE_REF { - publishDir = [ - path: { "${params.outdir}/preprocessing/sequences" }, - mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } - ] - } - - withName: SEQ_TO_FILE_TEMPL { - publishDir = [ - path: { "${params.outdir}/preprocessing/sequences" }, - mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } - ] - } - withName: ORIENT_REFERENCE { ext.prefix = { params.reference_fasta ? "${reference.baseName}" : "${meta.id}_reference" } publishDir = [ diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 2e05a8f3..53c28942 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -169,6 +169,7 @@ workflow CRISPRSEQ_TARGETED { // ch_input.reference .tap{ meta_reference } + .filter{ meta, sequence -> sequence instanceof String } .collectFile() { meta, reference -> [ "${meta.id}_reference.fasta", ">${meta.id}\n${reference}\n" ] // Write each reference sequence to a file } @@ -191,8 +192,9 @@ workflow CRISPRSEQ_TARGETED { // ch_input.template .tap{ meta_template } + .filter{ meta, sequence -> sequence instanceof String } .collectFile() { meta, template -> - [ "${meta.if}_template.fasta", ">${meta.id}\n${template}\n" ] // Write each template sequence to a file + [ "${meta.id}_template.fasta", ">${meta.id}\n${template}\n" ] // Write each template sequence to a file } .map{ new_file -> [new_file.baseName.split("_template")[0], new_file] // create a channel with the meta.id and the new file From a748381fe3364ac487aced42e8f1068510343b7f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Mir=20Pedrol?= Date: Thu, 20 Jul 2023 08:51:53 +0200 Subject: [PATCH 023/133] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index cc4ab20e..e5d26623 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -8,7 +8,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added - Template update v2.9 ([#52](https://github.com/nf-core/crisprseq/pull/52)) -- Use `Channel.fromSamplesheet()` from `nf-validation` to validate input sample sheets and create an input channel ([#54](https://github.com/nf-core/crisprseq/pull/54)) +- Use `Channel.fromSamplesheet()` from `nf-validation` to validate input sample sheets and create an input channel ([#58](https://github.com/nf-core/crisprseq/pull/58)) ### Fixed From b66f7e55c5badd38c17ed6371445d2e0cce62e7e Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Fri, 21 Jul 2023 08:55:47 +0200 Subject: [PATCH 024/133] Add bagel fold change --- bin/BAGEL.py | 1104 ++++++++++++++++++++++++++++++ modules/local/bagel2_fc.nf | 57 ++ workflows/crisprseq_screening.nf | 18 +- 3 files changed, 1177 insertions(+), 2 deletions(-) create mode 100755 bin/BAGEL.py create mode 100644 modules/local/bagel2_fc.nf diff --git a/bin/BAGEL.py b/bin/BAGEL.py new file mode 100755 index 00000000..6077e5dc --- /dev/null +++ b/bin/BAGEL.py @@ -0,0 +1,1104 @@ +#!/usr/bin/env python + +import click +import numpy as np +import pandas as pd +import scipy.stats as stats +from sklearn.linear_model import LinearRegression +import sys +import time + +VERSION = 2.0 + +BUILD = 115 + + + +''' +Update history + +Build 115 +1. Add single pass without resampling + +Build 114 +1. Add option for normalizing rep counts + +Build 113 +1. Fixed bugs + +Build 112 +1. Add sgRNA filtering options +2. Implemented 'Click' library. Thanks to John McGonigle + + +Build 111 +1. Add an option to equalize # of sgRNA per gene + +Build 110 +1. Enable multi control for fold-change calculation +2. Now user can input column names +3. Fix Threshold function + +''' + + +class OptionRequiredIf(click.Option): + + def full_process_value(self, ctx, value): + value = super(OptionRequiredIf, self).full_process_value(ctx, value) + + if value is None and ctx.params['filter_multi_target'] is True: + msg = 'Error! Multi-target-filtering selected and not align-info provided.\n' \ + 'Please indicate align-info file.' + raise click.MissingParameter(ctx=ctx, param=self, message=msg) + return value + + +# --------------------------------- +# BAGEL: Bayesian Analysis of Gene EssentaLity +# (c) Traver Hart , Eiru Kim 2017. + +# Acknowledgements: John McGonigle +# modified 10/2019 +# Free to modify and redistribute with attribution +# --------------------------------- + +# ------------------------------------ +# constants + + + +CONTEXT_SETTINGS = dict(help_option_names=['-h', '--help']) + + +def round_to_hundredth(x): + return np.around(x * 100) / 100.0 + + +def func_linear(x, a, b): + return (a * x) + b + + +class Training: + def __init__(self, X, n=None, cvnum=10): + + if n == None: + self._n = len(X) + self._cvnum = cvnum + self._bid = int(self._n / cvnum) + self._bucket = np.arange(len(X)) + self._X = X + self._step = 0 + + + def cross_validation(self): + if self._bid < 1: # bid check + print("The number of genes is too small! n<" + str(self._cvnum)) + sys.exit(1) + drawing = list() + mask = np.array([True] * self._n) + for j in range(self._bid): + # drawing.append(delete(self._bucket, np.random.randrange(len(self._bucket)))) + select = np.random.randint(len(self._bucket)) + drawing.append(self._bucket[select]) + mask[self._bucket[select]] = False + self._bucket = np.delete(self._bucket, select) + if self._step < self._n % self._cvnum: # for distribute remain.. + select = np.random.randint(len(self._bucket)) + drawing.append(self._bucket[select]) + mask[self._bucket[select]] = False + self._bucket = np.delete(self._bucket, select) + self._step += 1 + X_resample = self._X[mask] + return X_resample, self._X[~mask] + + def get_cv_step(self): + return self._step + + def bootstrap_resample(self): + mask = np.array([False] * self._n) + resample_i = np.floor(np.random.rand(self._n) * len(self._X)).astype(int) + + mask[resample_i] = True + X_resample = self._X[mask] + return X_resample, self._X[~mask] + + def get_data(self, method=0): + if method == 0: + train, test = self.bootstrap_resample() + elif method == 1: + train, test = self.cross_validation() + else: + print('Method passed as a value that was neither 0 nor 1.') + sys.exit(1) + return train, test + + +def fibo_weighted_sum(listofscore): + value = p1 = p2 = 0.0 + c = 1.0 # current value + for v in listofscore: + value += v / c + p2 = p1 # go one step + p1 = c + c = p1 + p2 + return value + + +# Note the \b in the doc string below is prevent click from wrapping the lines on the terminal. +@click.group(context_settings=CONTEXT_SETTINGS) +def bagel(): + """ + -------------------------------------------------------------------- + BAGEL.py + -------------------------------------------------------------------- + A tool from the Bayesian Analysis of Gene EssentiaLity (BAGEL) suite. + + \b + Calculate fold changes from read count data: + + \b + BAGEL.py fc -i [read count file] -o [output label] -c [control column] + + Calculate Bayes Factors from foldchange data: + + \b + BAGEL.py bf -i [fold change] -o [output file] -e [essentials genes] -n [nonessentials genes] -c [columns] + + + Calculate precision-recall from Bayes Factors: + + \b + BAGEL.py pr -i [Bayes Factor file] -o [output file] -e [essentials genes] -n [nonessentials genes] + + + + To print the current build and version use: + + \b + BAGEL.py version + """ + + +@click.command(name='version') +def report_bagel_version(): + """ + Report the current build and version no. + """ + print( + 'Bayesian Analysis of Gene EssentiaLity (BAGEL) suite:\n' + 'Version: {VERSION}\n' + 'Build: {BUILD}'.format(VERSION=VERSION, BUILD=BUILD) + ) + + +@click.command(name='fc') +@click.option('-i', '--read-count-file', required=True, type=click.Path(exists=True)) +@click.option('-o', '--output-label', required=True) +@click.option('-c', '--control-columns', required=True) +@click.option('-m', '--min-reads', type=int, default=0) +@click.option('-Np', '--pseudo-count', type=int, default=5) +def calculate_fold_change(read_count_file, output_label, control_columns, min_reads, pseudo_count): + """ + \b + Calculate fold changes from read count data outputting a fold change column: + + \b + BAGEL.py fc -i [read count file] -o [output label] -c [control column] + + \b + Required options: + -i --read-count-file Tab-delimited file of reagents and fold changes. See documentation for format. + -o --output-label Label for all output files + -c --control-columns A comma-delimited list of columns of control (T0 or plasmid) columns. + Input can be either number or name. + \b + Other options: + --min-reads=N Discard gRNA with T0 counts < N (default 0) + -Np, --pseudo-count=N Add a pseudocount of N to every readcount (default 5) + -h, --help Show this help text + + + \b + Example: + BAGEL.py fc -i readcount_file.txt -o experiment_name -c 1 + + This command calculates fold change, and writes [output label].foldchange and [output label].normalized_reads + + """ + + # ---------------------------------------------------------------- # + # Import raw read data, normalize, filter for T0 min read counts # + # Output: [output label].foldchange # + # ---------------------------------------------------------------- # + reads = pd.read_csv(read_count_file, sep='\t', index_col=0) + + reads[reads.columns.values[0]].fillna('NO_GENE_NAME', inplace=True) + reads.fillna(0, inplace=True) + control_columns = control_columns.split(",") + # + # check if controls are given as numeric or name + # + + try: + try: + ctrl_columns = list(map(int, control_columns)) + ctrl_labels = reads.columns.values[ctrl_columns] + except ValueError: + ctrl_labels = control_columns + + ctrl_sum = reads[ctrl_labels].sum(axis=1) + reads.drop(ctrl_labels, axis=1, inplace=True) + ctrl_label_new = ';'.join(ctrl_labels) + reads[ctrl_label_new] = ctrl_sum + except: + print(reads[ctrl_labels].sum(axis=1)) + print("Invalid input controls") + sys.exit(1) + + numClones, numColumns = reads.shape + print("Controls: " + ", ".join(ctrl_labels)) + + # + # Add pseudo count + # + + reads.iloc[:, list(range(1, numColumns))] += pseudo_count + + # + # normalize each sample to a fixed total readcount + # + sumReads = reads.iloc[:, list(range(1, numColumns))].sum(0) + normed = pd.DataFrame(index=reads.index.values) + normed['GENE'] = reads.iloc[:, 0] # first column is gene name + normed = reads.iloc[:, list(range(1, numColumns))] / np.tile(sumReads, + [numClones, 1]) * 10000000 # normalize to 10M reads + + # + # filter for minimum readcount + # + f = np.where(reads[ctrl_label_new] >= min_reads)[0] + normed = normed.iloc[f, :] + + # + # calculate fold change + # + foldchange = pd.DataFrame(index=normed.index.values) + foldchange.index.name = 'REAGENT_ID' + foldchange['GENE'] = reads.iloc[f, 0] # dataframe 'normed' has no GENE column + for i in range(numColumns - 1): + foldchange[normed.columns.values[i]] = np.log2( + (normed.loc[:, normed.columns.values[i]]) / normed[ctrl_label_new] + ) + # + # we have calculated a foldchange for the control column. Drop it. + # + foldchange.drop(ctrl_label_new, axis=1, inplace=True) + + # + # write normed readcount file + # write foldchange file + # + + foldchange_filename = output_label + '.foldchange' + foldchange.to_csv(foldchange_filename, sep='\t', float_format='%4.3f') + + normedreads_filename = output_label + '.normed_readcount' + normed.to_csv(normedreads_filename, sep='\t', float_format='%3.2f') + + +@click.command(name='bf') +@click.option('-i', '--fold-change', required=True, type=click.Path(exists=True)) +@click.option('-o', '--output-file', required=True) +@click.option('-e', '--essential-genes', required=True, type=click.Path(exists=True)) +@click.option('-n', '--non-essential-genes', required=True, type=click.Path(exists=True)) +@click.option('-c', '--columns-to-test', required=True) +@click.option('-w', '--network-file', metavar='[network File]', default=None, type=click.Path(exists=True)) +@click.option('-m', '--filter-multi-target', is_flag=True) +@click.option('-m0', '--loci-without-mismatch', type=int, default=10) +@click.option('-m1', '--loci-with-mismatch', type=int, default=10) +@click.option('--align-info', metavar='--align-info [File]', default=None, + type=click.Path(exists=True), cls=OptionRequiredIf) +@click.option('-b', '--use-bootstrapping', is_flag=True) +@click.option('-NS', '--no-resampling', is_flag=True) +@click.option('-s', '--use-small-sample', is_flag=True) +@click.option('-N', '--no-of-cross-validations', type=int, default=10) +@click.option('-NB', '--bootstrap-iterations', type=int, default=1000) +@click.option('-r', '--sgrna-bayes-factors', is_flag=True) +@click.option('-f', '--equalise-sgrna-no', type=int) +@click.option('-s', '--seed', default=int(time.time() * 100000 % 100000), type=int) +@click.option('-t', '--run-test-mode', is_flag=True) +@click.option('-p', '--equalise-rep-no', type=int) +def calculate_bayes_factors( + fold_change, output_file, essential_genes, non_essential_genes, columns_to_test, network_file, align_info, + use_bootstrapping, no_resampling, use_small_sample, filter_multi_target, loci_without_mismatch, loci_with_mismatch, + bootstrap_iterations, no_of_cross_validations, sgrna_bayes_factors, equalise_sgrna_no, seed, run_test_mode, equalise_rep_no +): + """ + \b + Calculate Bayes Factors from an input fold change file: + + \b + BAGEL.py bf -i [fold change] -o [output file] -e [essentials genes] -n [nonessentials genes] -c [columns] + + + \b + Calculates a log2 Bayes Factor for each gene. Positive BFs indicate confidence that the gene is essential. + Output written to the [output file] contains: gene name, mean Bayes Factor across all iterations, std deviation of + BFs, and number of iterations in which the gene was part of the test set (and a BF was calculated[output file]. + + + \b + Required options: + -i --fold-change [fold change file] Tab-delimited file of reagents and fold changes + (see documentation for format). + -o, --output-file [output file] Output filename + -e, --essential-genes [reference essentials] File with list of training set of essential genes + -n, --non-essential-genes [reference nonessentials] File with list of training set of nonessential genes + -c [columns to test] comma-delimited list of columns in input file to + include in analyisis + + \b + Network options: + -w [network file] Enable Network boosting. Tab-delmited file of edges. [GeneA (\\t) GeneB]\n' + + \b + Multi-target guides filtering options: + -m, --filter-multi-target Enable filtering multi-targeting guide RNAs + --align-info [file] Input precalculated align-info file + -m0, --loci-without-mismatch Filtering guide RNAs without mismatch targeting over than [N] loci, default = 10 + -m1, --loci-with-mismatch Filtering guide RNAs with 1-bp mismatch targeting over than [N] loci, default = 10 + + \b + Other options: + -b, --bootstrapping Use bootstrapping instead of cross-validation (Slow) + -NS, --no-resampling Run BAGEL without resampling + -s, --small-sample Low-fat BAGEL, Only resampled training set (Bootstrapping, iteration = 100) + -r --sgrna-bayes-factors Calculate sgRNA-wise Bayes Factor + -f --equalise-sgrna-no Equalize the number of sgRNAs per gene to particular value [Number] + -p --equalise-rep-no Equalize the number of repicates to particular value [Number] + -N --no-of-cross-validations Number of sections for cross validation (default 10) + -NB --bootstraps-iterations Number of bootstrap iterations (default 1000) + -s, --seed=N Define random seed + -h, --help Show this help text + + \b + Example: + + \b + BAGEL.py bf -i fc_file.txt -o results.bf -e ess_training_set.txt -n noness_training_set.txt -c 1,2,3 + + """ + np.random.seed(seed) # set random seed + if network_file: + network_boost = True + else: + network_boost = False + + if sgrna_bayes_factors: + rna_level = True + else: + rna_level = False + + if network_file and sgrna_bayes_factors: + network_boost = False + + if equalise_sgrna_no: + flat_sgrna = True + else: + flat_sgrna = False + + if equalise_rep_no: + flat_rep = True + else: + flat_rep = False + + if use_small_sample: + train_method = 0 + bootstrap_iterations = 100 + + elif use_bootstrapping: + train_method = 0 + + else: + train_method = 1 + + genes = {} + fc = {} + gene2rna = {} + rna2gene = {} + + multi_targeting_sgrnas = dict() + multi_targeting_sgrnas_info = dict() + + if filter_multi_target: + + try: + aligninfo = pd.read_csv(align_info, header=None, index_col=0, sep="\t").fillna("") + for seqid in aligninfo.index: + perfectmatch = 0 + mismatch_1bp = 0 + perfectmatch_gene = 0 + mismatch_1bp_gene = 0 + if aligninfo[1][seqid] != "": + perfectmatch = len(aligninfo[1][seqid].split(",")) + if aligninfo[2][seqid] != "": + perfectmatch_gene = len(aligninfo[2][seqid].split(",")) + if aligninfo[3][seqid] != "": + mismatch_1bp = len(aligninfo[3][seqid].split(",")) + if aligninfo[4][seqid] != "": + mismatch_1bp_gene = len(aligninfo[4][seqid].split(",")) + if perfectmatch > loci_without_mismatch or mismatch_1bp > loci_with_mismatch: + multi_targeting_sgrnas[seqid] = True + elif perfectmatch > 1 or mismatch_1bp > 0: + multi_targeting_sgrnas_info[seqid] = ( + perfectmatch, mismatch_1bp, perfectmatch_gene, mismatch_1bp_gene + ) + + except: + print("Please check align-info file") + sys.exit(1) + + print("Total %d multi-targeting gRNAs are discarded" % len(multi_targeting_sgrnas)) + + # + # LOAD FOLDCHANGES + # + rnatagset = set() + with open(fold_change) as fin: + fieldname = fin.readline().rstrip().split('\t') + # + # DEFINE CONTROLS + # + columns = columns_to_test.split(',') + try: + try: + column_list = list(map(int, columns)) + column_labels = [fieldname[x + 1] for x in column_list] + except ValueError: + column_labels = columns + column_list = [x for x in range(len(fieldname) - 1) if + fieldname[x + 1] in column_labels] # +1 because of First column start 2 + print("Using column: " + ", ".join(column_labels)) + # print "Using column: " + ", ".join(map(str,column_list)) + + except: + print("Invalid columns") + sys.exit(1) + + for line in fin: + fields = line.rstrip().split('\t') + rnatag = fields[0] + if filter_multi_target is True: # multitargeting sgrna filtering + if rnatag in multi_targeting_sgrnas: + continue # skip multitargeting sgrna. + if rnatag in rnatagset: + print("Error! sgRNA tag duplicates") + sys.exit(1) + rnatagset.add(rnatag) + gsym = fields[1] + + genes[gsym] = 1 + if gsym not in gene2rna: + gene2rna[gsym] = [] + gene2rna[gsym].append(rnatag) + rna2gene[rnatag] = gsym + fc[rnatag] = {} + for i in column_list: + fc[rnatag][i] = float(fields[i + 1]) # per user docs, GENE is column 0, first data column is col 1. + + genes_array = np.array(list(genes.keys())) + gene_idx = np.arange(len(genes)) + print("Number of unique genes: " + str(len(genes))) + + # + # DEFINE REFERENCE SETS + # + coreEss = [] + + with open(essential_genes) as fin: + skip_header = fin.readline() + for line in fin: + coreEss.append(line.rstrip().split('\t')[0]) + coreEss = np.array(coreEss) + print("Number of reference essentials: " + str(len(coreEss))) + + nonEss = [] + with open(non_essential_genes) as fin: + skip_header = fin.readline() + for line in fin: + nonEss.append(line.rstrip().split('\t')[0]) + + nonEss = np.array(nonEss) + print("Number of reference nonessentials: " + str(len(nonEss))) + + # + # LOAD NETWORK + # + + if network_boost is True: + network = {} + edgecount = 0 + with open(network_file) as fin: + for line in fin: + linearray = line.rstrip().split('\t') # GeneA \t GeneB format + if linearray[0] in genes_array and linearray[1] in genes_array: + for i in [0, 1]: + if linearray[i] not in network: + network[linearray[i]] = {} + network[linearray[i]][linearray[-1 * (i - 1)]] = 1 # save edge information + edgecount += 1 + + print("Number of network edges: " + str(edgecount)) + + # + # INITIALIZE BFS + # + + # Define foldchange dynamic threshold. logarithm decay. + # Parameters are defined by regression (achilles data) 2**-7 was used in previous version. + + FC_THRESH = 2 ** (-1.1535 * np.log(len(np.intersect1d(genes_array, + nonEss)) + 13.324) + 0.7728) + bf = {} + boostedbf = {} + for g in genes_array: + for rnatag in gene2rna[g]: + bf[rnatag] = [] + + boostedbf[g] = [] # boosted bf at gene level + + # + # TRAINING + # + if use_small_sample: + # declare training class + # training_data = Training(setdiff1d(gene_idx,np.where(in1d(genes_array,coreEss))),cvnum=NUMCV) + # declare training class (only for Gold-standard gene set) + training_data = Training(np.where(np.in1d(genes_array, np.union1d(coreEss, nonEss)))[0], + cvnum=no_of_cross_validations) + # all non-goldstandards + all_non_gs = np.where(np.logical_not(np.in1d(genes_array, np.union1d(coreEss, nonEss))))[0] + else: + training_data = Training(gene_idx, cvnum=no_of_cross_validations) # declare training class + + if train_method == 0: + LOOPCOUNT = bootstrap_iterations + elif train_method == 1: + LOOPCOUNT = no_of_cross_validations # 10-folds + + if run_test_mode == True: + fp = open(output_file + ".traininfo", "w") + fp.write("#1: Loopcount\n#2: Training set\n#3: Testset\n") + # No resampling option + if no_resampling == True: + print("# Caution: Resampling is disabled") + LOOPCOUNT = 1 + + print("Iter TrainEss TrainNon TestSet") + sys.stdout.flush() + for loop in range(LOOPCOUNT): + currentbf = {} + printstr = "" + printstr += str(loop) + + # + # bootstrap resample (10-folds cross-validation) from gene list to get the training set + # test set for this iteration is everything not selected in bootstrap resampled (10-folds cross-validation) + # training set + # define essential and nonessential training sets: arrays of indexes + # + if no_resampling == True: + # no resampling + gene_train_idx = gene_idx + gene_test_idx = gene_idx + else: + # CV or bootstrapping + gene_train_idx, gene_test_idx = training_data.get_data(train_method) + if use_small_sample: + # test set is union of rest of training set (gold-standard) and the other genes (all of non-gold-standard) + gene_test_idx = np.union1d(gene_test_idx, all_non_gs) + + if run_test_mode: + fp.write( + "%d\n%s\n%s\n" % (loop, ",".join(genes_array[gene_train_idx]), ",".join(genes_array[gene_test_idx]))) + + train_ess = np.where(np.in1d(genes_array[gene_train_idx], coreEss))[0] + train_non = np.where(np.in1d(genes_array[gene_train_idx], nonEss))[0] + printstr += " " + str(len(train_ess)) + printstr += " " + str(len(train_non)) + printstr += " " + str(len(gene_test_idx)) + print(printstr) + sys.stdout.flush() + # + # define ess_train: vector of observed fold changes of essential genes in training set + # + ess_train_fc_list_of_lists = [fc[rnatag] for g in genes_array[gene_train_idx[train_ess]] for rnatag in + gene2rna[g]] + ess_train_fc_flat_list = [obs for sublist in ess_train_fc_list_of_lists for obs in list(sublist.values())] + # + # define non_train vector of observed fold changes of nonessential genes in training set + # + non_train_fc_list_of_lists = [fc[rnatag] for g in genes_array[gene_train_idx[train_non]] for rnatag in + gene2rna[g]] + non_train_fc_flat_list = [obs for sublist in non_train_fc_list_of_lists for obs in list(sublist.values())] + # + # calculate empirical fold change distributions for both + # + kess = stats.gaussian_kde(ess_train_fc_flat_list) + knon = stats.gaussian_kde(non_train_fc_flat_list) + # + # define empirical upper and lower bounds within which to calculate BF = f(fold change) + # + x = np.arange(-10, 2, 0.01) + nonfitx = knon.evaluate(x) + # define lower bound empirical fold change threshold: minimum FC np.where knon is above threshold + f = np.where(nonfitx > FC_THRESH) + xmin = round_to_hundredth(min(x[f])) + # define upper bound empirical fold change threshold: minimum value of log2(ess/non) + subx = np.arange(xmin, max(x[f]), 0.01) + logratio_sample = np.log2(kess.evaluate(subx) / knon.evaluate(subx)) + f = np.where(logratio_sample == logratio_sample.min()) + xmax = round_to_hundredth(subx[f]) + # + # round foldchanges to nearest 0.01 + # precalculate logratios and build lookup table (for speed) + # + logratio_lookup = {} + for i in np.arange(xmin, xmax + 0.01, 0.01): + logratio_lookup[np.around(i * 100)] = np.log2(kess.evaluate(i) / knon.evaluate(i)) + # + # calculate BFs from lookup table for withheld test set + # + + # liner interpolation + testx = list() + testy = list() + + for g in genes_array[gene_train_idx]: + for rnatag in gene2rna[g]: + for foldchange in list(fc[rnatag].values()): + if foldchange >= xmin and foldchange <= xmax: + testx.append(np.around(foldchange * 100) / 100) + testy.append(logratio_lookup[np.around(foldchange * 100)][0]) + try: + slope, intercept, r_value, p_value, std_err = stats.linregress(np.array(testx), np.array(testy)) + except: + print("Regression failed. Check quality of the screen") + sys.exit(1) + # + # BF calculation + # + + for g in genes_array[gene_test_idx]: + for rnatag in gene2rna[g]: + bayes_factor = [] + for rep in column_list: + bayes_factor.append(slope * fc[rnatag][rep] + intercept) + bf[rnatag].append(bayes_factor) + + if run_test_mode == True: + fp.close() + + num_obs = dict() + if rna_level is False: + bf_mean = dict() + bf_std = dict() + bf_norm = dict() # sgRNA number complement + if rna_level or filter_multi_target: + bf_mean_rna_rep = dict() + bf_std_rna_rep = dict() + # bf_norm_rna_rep = dict() + + for g in gene2rna: + num_obs[g] = len(bf[gene2rna[g][0]]) + if rna_level or filter_multi_target: + for rnatag in gene2rna[g]: + bf_mean_rna_rep[rnatag] = dict() + bf_std_rna_rep[rnatag] = dict() + t = list(zip(*bf[rnatag])) + for rep in range(len(column_list)): + bf_mean_rna_rep[rnatag][column_list[rep]] = np.mean(t[rep]) + bf_std_rna_rep[rnatag][column_list[rep]] = np.std(t[rep]) + + if rna_level == False: + sumofbf_list = list() + for i in range(num_obs[g]): + sumofbf = 0.0 + for rnatag in gene2rna[g]: + sumofbf += sum(bf[rnatag][i]) + sumofbf_list.append(sumofbf) # append each iter + bf_mean[g] = np.mean(sumofbf_list) + bf_std[g] = np.std(sumofbf_list) + + # + # BUILD MULTIPLE REGRESSION MODEL FOR MULTI TARGETING GUIDE RNAs + # + if filter_multi_target: + count = 0 + trainset = dict() + bf_multi_corrected_gene = dict() + bf_multi_corrected_rna = dict() + for gene in gene2rna: + # multi_targeting_sgrnas_info[seqid] = (perfectmatch, mismatch_1bp, perfectmatch_gene, mismatch_1bp_gene) + multitarget = list() + onlytarget = list() + for seqid in gene2rna[gene]: + if seqid not in aligninfo.index: + continue + if seqid in multi_targeting_sgrnas_info: + multitarget.append(seqid) + else: + onlytarget.append(seqid) + + if len(onlytarget) > 0: # comparsion between sgRNAs targeting one locus and multiple loci + if len(multitarget) > 0: + + bf_only = np.mean([sum(list(bf_mean_rna_rep[seqid].values())) for seqid in onlytarget]) + for seqid in onlytarget: + trainset[seqid] = [1, 0, 0] + + for seqid in multitarget: + if multi_targeting_sgrnas_info[seqid][2] > 1 or multi_targeting_sgrnas_info[seqid][ + 3] > 0: # train model using multi-targeting only targeting one protein coding gene + continue + + count += 1 + increment = sum(list(bf_mean_rna_rep[seqid].values())) - bf_only + + trainset[seqid] = [multi_targeting_sgrnas_info[seqid][0], multi_targeting_sgrnas_info[seqid][1], + increment] + + if count < 10: + print("Not enough train set for calculating multi-targeting effect.\n") + print("It may cause due to unmatched gRNA names between the foldchange file and the align info file.\n") + print("Filtering is not finished\n") + filter_multi_target = False + + else: + + trainset = pd.DataFrame().from_dict(trainset).T + X = trainset[[0, 1]] + y = trainset[2] + + regressor = LinearRegression() + regressor.fit(X, y) + coeff_df = pd.DataFrame(regressor.coef_, X.columns, columns=['Coefficient']) + for i in [0, 1]: + if coeff_df['Coefficient'][i] < 0: + print("Regression coefficient is below than zero. Substituted to zero\n") + coeff_df['Coefficient'][i] = 0.0 + print("Multiple effects from perfect matched loci = %.3f and 1bp mis-matched loci = %.3f" % ( + coeff_df['Coefficient'][0], coeff_df['Coefficient'][1])) + + if rna_level == False: + for g in gene2rna: + penalty = 0.0 + for seqid in gene2rna[g]: + if seqid in multi_targeting_sgrnas_info: + penalty += float(multi_targeting_sgrnas_info[seqid][0] - 1) * coeff_df['Coefficient'][ + 0] + float(multi_targeting_sgrnas_info[seqid][1]) * coeff_df['Coefficient'][1] + bf_multi_corrected_gene[g] = bf_mean[g] - penalty + else: + for g in gene2rna: + for seqid in gene2rna[g]: + if seqid in multi_targeting_sgrnas_info: + penalty = float(multi_targeting_sgrnas_info[seqid][0] - 1) * coeff_df['Coefficient'][ + 0] + float(multi_targeting_sgrnas_info[seqid][1]) * coeff_df['Coefficient'][1] + else: + penalty = 0.0 + bf_multi_corrected_rna[seqid] = sum(list(bf_mean_rna_rep[seqid].values())) - penalty + + # + # NORMALIZE sgRNA COUNT + # + if rna_level is False and flat_sgrna == True: + if filter_multi_target == True: + targetbf = bf_multi_corrected_gene + else: + targetbf = bf_mean + + for g in gene2rna: + multiple_factor = equalise_sgrna_no / float(len(gene2rna[g])) + bf_norm[g] = targetbf[g] * multiple_factor + + ''' + if bf_std[rnatag] == 0.0: + bf_norm[rnatag] = float('inf') + else: + bf_norm[g] = ( bf[rnatag] - bf_mean[rnatag] ) / bf_std[rnatag] + ''' + training_data = Training(gene_idx) # set training class reset + + # + # calculate network scores + # + + if network_boost == True and rna_level == False: # Network boost is only working for gene level + if run_test_mode == True: # TEST MODE + fp = open(output_file + ".netscore", "w") + print("\nNetwork score calculation start\n") + + networkscores = {} + for g in genes_array[gene_idx]: + if g in network: + templist = list() + for neighbor in network[g]: + if neighbor in bf_mean: + templist.append(bf_mean[neighbor]) + + templist.sort(reverse=True) + + networkscores[g] = fibo_weighted_sum(templist) + # + # start training + # + + for loop in range(LOOPCOUNT): + currentnbf = {} + printstr = "" + printstr += str(loop) + + # + # draw train, test sets + # + gene_train_idx, gene_test_idx = training_data.get_data(train_method) + # + # define essential and nonessential training sets: arrays of indexes + # + train_ess = np.where(np.in1d(genes_array[gene_train_idx], coreEss))[0] + train_non = np.where(np.in1d(genes_array[gene_train_idx], nonEss))[0] + printstr += " " + str(len(train_ess)) + printstr += " " + str(len(train_non)) + printstr += " " + str(len(gene_test_idx)) + + sys.stdout.flush() + # + # calculate Network BF for test set + # + ess_ns_list = [networkscores[x] for x in genes_array[gene_train_idx[train_ess]] if x in networkscores] + non_ns_list = [networkscores[x] for x in genes_array[gene_train_idx[train_non]] if x in networkscores] + + kess = stats.gaussian_kde(ess_ns_list) + knon = stats.gaussian_kde(non_ns_list) + # + # set x boundary for liner regression + # + testx = list() + testy = list() + xmin = float(np.inf) + xmax = float(-np.inf) + + for networkscore in np.arange(max(ess_ns_list), min(ess_ns_list), -0.01): + density_ess = kess.evaluate(networkscore)[0] + density_non = knon.evaluate(networkscore)[0] + if density_ess == 0.0 or density_non == 0.0: + continue + + if np.log2(density_ess / density_non) > -5 and networkscore < np.array(ess_ns_list).mean(): # reverse + xmin = min(xmin, networkscore) + + for networkscore in np.arange(min(non_ns_list), max(non_ns_list), 0.01): + density_ess = kess.evaluate(networkscore)[0] + density_non = knon.evaluate(networkscore)[0] + if density_ess == 0.0 or density_non == 0.0: + continue + if np.log2(density_ess / density_non) < 5 and networkscore > np.array(non_ns_list).mean(): # reverse + xmax = max(xmax, networkscore) + # + # liner regression + # + testx = list() + testy = list() + for g in genes_array[gene_train_idx]: + if g in networkscores: + if networkscores[g] >= xmin and networkscores[g] <= xmax: + testx.append(np.around(networkscores[g] * 100) / 100) + testy.append(np.log2(kess.evaluate(networkscores[g])[0] / knon.evaluate(networkscores[g])[0])) + + slope, intercept, r_value, p_value, std_err = stats.linregress(np.array(testx), np.array(testy)) + + for g in genes_array[gene_test_idx]: + if g in networkscores: + if run_test_mode == True: + fp.write("%s\t%f\t%f\n" % (g, networkscores[g], slope * networkscores[g] + intercept)) + nbf = slope * networkscores[g] + intercept + else: + nbf = 0.0 + + boostedbf[g].append(bf_mean[g] + nbf) + if flat_sgrna == True: + boostedbf[g].append(bf_norm[g] + nbf) + + if run_test_mode == True: + fp.close() + + + + + # + # print out results + # + + # Equalizing factor (Replicates) + if flat_rep==True: + eqf = equalise_rep_no/float(len(column_labels)) + else: + eqf = 1 + + # print out + with open(output_file, 'w') as fout: + + if rna_level == True: + fout.write('RNA\tGENE') + for i in range(len(column_list)): + fout.write('\t{0:s}'.format(column_labels[i])) + if train_method == 0: + fout.write('\t{0:s}'.format(column_labels[i] + "_STD")) + fout.write('\tBF') + if train_method == 0: + fout.write('\tNumObs') + fout.write('\n') + + for rnatag in sorted(bf.keys()): + # RNA tag + fout.write('{0:s}\t'.format(rnatag)) + # Gene + gene = rna2gene[rnatag] + fout.write('{0:s}\t'.format(gene)) + + # BF of replicates + for rep in column_list: + fout.write('{0:4.3f}\t'.format(bf_mean_rna_rep[rnatag][rep])) + if train_method == 0: + fout.write('{0:4.3f}\t'.format(bf_std_rna_rep[rnatag][rep])) + + # Sum BF of replicates + if filter_multi_target == True: + fout.write('{0:4.3f}'.format(float(bf_multi_corrected_rna[rnatag]) * eqf)) # eqf = equalizing factor for the number of replicates + else: + fout.write('{0:4.3f}'.format(float(sum(list(bf_mean_rna_rep[rnatag].values()))) * eqf)) + + # Num obs + if train_method == 0: + fout.write('\t{0:d}'.format(num_obs[gene])) + fout.write('\n') + else: + fout.write('GENE') + if network_boost == True: + fout.write('\tBoostedBF') + if train_method == 0: + fout.write('\tSTD_BoostedBF') + fout.write('\tBF') + if train_method == 0: + fout.write('\tSTD\tNumObs') + if flat_sgrna == True: + fout.write('\tNormBF') + fout.write('\n') + + for g in sorted(genes.keys()): + # Gene + fout.write('{0:s}'.format(g)) + if network_boost == True: + boostedbf_mean = np.mean(boostedbf[g]) + boostedbf_std = np.std(boostedbf[g]) + fout.write('\t{0:4.3f}'.format(float(boostedbf_mean) * eqf)) + if train_method == 0: + fout.write('\t{0:4.3f}'.format(float(boostedbf_std) * eqf)) + + # BF + if filter_multi_target == True: + fout.write('\t{0:4.3f}'.format(float(bf_multi_corrected_gene[g]) * eqf)) # eqf = equalizing factor for the number of replicates + else: + fout.write('\t{0:4.3f}'.format(float(bf_mean[g]) * eqf )) + # STD, Count + if train_method == 0: + fout.write('\t{0:4.3f}\t{1:d}'.format(float(bf_std[g]), num_obs[g])) + # Normalized BF + if flat_sgrna == True: + fout.write('\t{0:4.3f}'.format(float(bf_norm[g]))) + + fout.write('\n') + + +@click.command(name='pr') +@click.option('-i', '--bayes-factors', required=True, + type=click.Path(exists=True)) +@click.option('-o', '--output-file', required=True) +@click.option('-e', '--essential-genes', required=True, + type=click.Path(exists=True)) +@click.option('-n', '--non-essential-genes', required=True, type=click.Path(exists=True)) +@click.option('-k', '--use-column', default=None) +def calculate_precision_recall(bayes_factors, output_file, essential_genes, non_essential_genes, use_column): + """ + Calculate precision-recall from an input Bayes Factors file: + + \b + BAGEL.py pr -i [Bayes Factor file] -o [output file] -e [essentials genes] -n [nonessentials genes] + + \b + Required options: + -i, --bayes-factors [Bayes factors] BAGEL output file. + -o, --output-file [output file] Output filename + -e, --essential-genes [reference essentials] File with list of training set of essential genes + -n, --non-essential-genes [reference nonessentials] File with list of training set of nonessential genes + + \b + Other options: + -k [column name] Use other column (default \BF\) + + \b + Example: + BAGEL.py pr -i input.bf -o output.PR -e ref_essentials.txt -n ref_nonessentials.txt + + """ + # + # test for availability of all files + # + essentials = pd.read_csv(essential_genes, index_col=0, sep="\t") + nonessentials = pd.read_csv(non_essential_genes, index_col=0, sep="\t") + bf = pd.read_csv(bayes_factors, index_col=0, sep="\t") + + if use_column is not None: + bf_column = use_column + if bf_column not in bf.dtypes.index: + print("Error! the column name is not in the file") + sys.exit(1) + else: + bf_column = 'BF' + + bf.sort_values(by=bf_column, ascending=False, inplace=True) + + cumulative_tp = 0. + cumulative_fp = 0. + precision = 1. + recall = 0. + # note float formats + + ess = essentials.index.values + non = nonessentials.index.values + totNumEssentials = len([x for x in bf.index.values if x in ess]) + + with open(output_file, 'w') as fout: + + fout.write('Gene\t') + fout.write(bf_column) + fout.write('\tRecall\tPrecision\tFDR\n') + + for g in bf.index.values: + if (g in ess): + cumulative_tp += 1 + elif (g in non): + cumulative_fp += 1 + recall = cumulative_tp / totNumEssentials + if ((cumulative_tp > 0) | (cumulative_fp > 0)): + precision = cumulative_tp / (cumulative_tp + cumulative_fp) + fout.write('{0:s}\t{1:4.3f}\t{2:4.3f}\t{3:4.3f}\t{4:4.3f}\n'.format(g, bf.loc[g, bf_column], recall, precision, 1.0-precision)) + + +if __name__ == '__main__': + bagel.add_command(calculate_fold_change) + bagel.add_command(calculate_bayes_factors) + bagel.add_command(calculate_precision_recall) + bagel.add_command(report_bagel_version) + bagel() diff --git a/modules/local/bagel2_fc.nf b/modules/local/bagel2_fc.nf new file mode 100644 index 00000000..9fe4ccc9 --- /dev/null +++ b/modules/local/bagel2_fc.nf @@ -0,0 +1,57 @@ +// TODO nf-core: If in doubt look at other nf-core/modules to see how we are doing things! :) +// https://github.com/nf-core/modules/tree/master/modules/nf-core/ +// You can also ask for help via your pull request or on the #modules channel on the nf-core Slack workspace: +// https://nf-co.re/join +// TODO nf-core: A module file SHOULD only define input and output files as command-line parameters. +// All other parameters MUST be provided using the "task.ext" directive, see here: +// https://www.nextflow.io/docs/latest/process.html#ext +// where "task.ext" is a string. +// Any parameters that need to be evaluated in the context of a particular sample +// e.g. single-end/paired-end data MUST also be defined and evaluated appropriately. +// TODO nf-core: Software that can be piped together SHOULD be added to separate module files +// unless there is a run-time, storage advantage in implementing in this way +// e.g. it's ok to have a single module for bwa to output BAM instead of SAM: +// bwa mem | samtools view -B -T ref.fasta +// TODO nf-core: Optional inputs are not currently supported by Nextflow. However, using an empty +// list (`[]`) instead of a file can be used to work around this issue. + +process BAGEL2_FC { + tag "${meta.treatment}_${meta.reference}" + label 'process_single' + + // TODO nf-core: List required Conda package(s). + // Software MUST be pinned to channel (i.e. "bioconda"), version (i.e. "1.10"). + // For Conda, the build (i.e. "h9402c20_2") must be EXCLUDED to support installation on different operating systems. + // TODO nf-core: See section in main README for further information regarding finding and adding container addresses to the section below. + conda "python=3.11.4 pandas=2.0.3 numpy=1.25.1 scikit-learn=1.3.0 click=8.1.6" + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? + 'https://depot.galaxyproject.org/singularity/mulled-v2-1ec3f69e7819b1ab3e6f57d16594eb40ed7d6792:f94a27287a1921ce0dacd411d48acff738d3ca90-0': + 'biocontainers/mulled-v2-1ec3f69e7819b1ab3e6f57d16594eb40ed7d6792:f94a27287a1921ce0dacd411d48acff738d3ca90-0' }" + + input: + // TODO nf-core: Where applicable all sample-specific information e.g. "id", "single_end", "read_group" + // MUST be provided as an input via a Groovy Map called "meta". + // This information may not be required in some instances e.g. indexing reference genome files: + // https://github.com/nf-core/modules/blob/master/modules/nf-core/bwa/index/main.nf + // TODO nf-core: Where applicable please provide/convert compressed files as input/output + // e.g. "*.fastq.gz" and NOT "*.fastq", "*.bam" and NOT "*.sam" etc. + tuple val(meta), path(count_table) + + output: + tuple val(meta), path("*.foldchange"), emit: foldchange + tuple val(meta), path("*.normed_readcount"), emit: normed_counts + //path "versions.yml" , emit: versions + + when: + task.ext.when == null || task.ext.when + + script: + def args = task.ext.args ?: '' + def prefix = task.ext.prefix ?: "${meta.id}" + + """ + BAGEL.py fc -i $count_table -o ${meta.treatment}_${meta.reference} -c $meta.reference $args + + """ + +} diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index ed8f28aa..45280efa 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -14,7 +14,7 @@ def checkPathParamList = [ params.multiqc_config, params.reference_fasta, params for (param in checkPathParamList) { if (param) { file(param, checkIfExists: true) } } // Check mandatory parameters -if (!params.count_table) { ch_input = file(params.input) } else { error('Input samplesheet not specified!') } +//if (!params.count_table) { ch_input = file(params.input) } else { error('Input samplesheet not specified!') } if (params.library) { ch_library = file(params.library) } if (params.crisprcleanr) { ch_crisprcleanr= Channel.value(params.crisprcleanr) } @@ -60,6 +60,8 @@ include { MAGECK_MLE } from '../modules/nf-core/mageck/mle/main include { MAGECK_TEST } from '../modules/nf-core/mageck/test/main' include { CUSTOM_DUMPSOFTWAREVERSIONS } from '../modules/nf-core/custom/dumpsoftwareversions/main' include { CRISPRCLEANR_NORMALIZE } from '../modules/nf-core/crisprcleanr/normalize/main' +include { BAGEL2_FC } from '../modules/local/bagel2_fc' + /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ RUN MAIN WORKFLOW @@ -138,7 +140,7 @@ workflow CRISPRSEQ_SCREENING { if(params.rra_contrasts) { Channel.fromPath(params.rra_contrasts) - .splitCsv(header:true, sep:',' ) + .splitCsv(header:true, sep:';' ) .set { ch_contrasts } counts = ch_contrasts.combine(ch_counts) @@ -147,6 +149,18 @@ workflow CRISPRSEQ_SCREENING { ) } + if(params.rra_contrasts) { + Channel.fromPath(params.rra_contrasts) + .splitCsv(header:true, sep:';' ) + .set { ch_bagel } + counts = ch_bagel.combine(ch_counts) + + BAGEL2_FC ( + counts + ) + } + + if(params.mle_design_matrix) { ch_mle = ch_counts.combine(ch_design) ch_mle.map { From ac2ca2c09651bcb3e5ffbee5fa0d4eb6349c7f01 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Thu, 27 Jul 2023 16:17:16 +0200 Subject: [PATCH 025/133] Trying to add BAGEL_BF --- assets/CEGv2.txt | 685 +++++++++++++++++++++++++++++++ assets/NEGv1.txt | 1 + assets/schema_input.json | 4 +- modules/local/bagel2_bf.nf | 33 ++ modules/local/bagel2_fc.nf | 27 -- nextflow.config | 2 + nextflow_schema.json | 23 +- workflows/crisprseq_screening.nf | 30 +- 8 files changed, 762 insertions(+), 43 deletions(-) create mode 100644 assets/CEGv2.txt create mode 100644 assets/NEGv1.txt create mode 100644 modules/local/bagel2_bf.nf diff --git a/assets/CEGv2.txt b/assets/CEGv2.txt new file mode 100644 index 00000000..fa3ce335 --- /dev/null +++ b/assets/CEGv2.txt @@ -0,0 +1,685 @@ +GENE HGNC_ID ENTREZ_ID +AARS HGNC:20 16 +ABCE1 HGNC:69 6059 +ABCF1 HGNC:70 23 +ACTB HGNC:132 60 +ACTL6A HGNC:24124 86 +ACTR10 HGNC:17372 55860 +ACTR2 HGNC:169 10097 +ADSL HGNC:291 158 +ADSS HGNC:292 159 +AHCY HGNC:343 191 +ALG1 HGNC:18294 56052 +ALG14 HGNC:28287 199857 +ALG2 HGNC:23159 85365 +ANAPC2 HGNC:19989 29882 +ANAPC4 HGNC:19990 29945 +ANAPC5 HGNC:15713 51433 +AQR HGNC:29513 9716 +ARCN1 HGNC:649 372 +ARIH1 HGNC:689 25820 +ARL2 HGNC:693 402 +ATP2A2 HGNC:812 488 +ATP5F1A HGNC:823 498 +ATP5F1B HGNC:830 506 +ATP5F1C HGNC:833 509 +ATP5F1D HGNC:837 513 +ATP5J2-PTCD1 NA +ATP5MG HGNC:14247 10632 +ATP5PO HGNC:850 539 +ATP6V0B HGNC:861 533 +ATP6V0C HGNC:855 527 +ATP6V1A HGNC:851 523 +ATP6V1D HGNC:13527 51382 +ATP6V1E1 HGNC:857 529 +ATR HGNC:882 545 +AURKB HGNC:11390 9212 +BANF1 HGNC:17397 8815 +BIRC5 HGNC:593 332 +BUB1B HGNC:1149 701 +BUB3 HGNC:1151 9184 +BUD31 HGNC:29629 8896 +BYSL HGNC:1157 705 +TWNK HGNC:1160 56652 +C1orf109 HGNC:26039 54955 +CFAP298 HGNC:1301 56683 +NEPRO HGNC:24496 25871 +SPOUT1 HGNC:26933 51490 +CCDC84 HGNC:30460 338657 +YJU2 HGNC:25518 55702 +CCNA2 HGNC:1578 890 +CCNH HGNC:1594 902 +CCNK HGNC:1596 8812 +CCT2 HGNC:1615 10576 +CCT3 HGNC:1616 7203 +CCT4 HGNC:1617 10575 +CCT5 HGNC:1618 22948 +CCT6A HGNC:1620 908 +CCT7 HGNC:1622 10574 +CCT8 HGNC:1623 10694 +CDC123 HGNC:16827 8872 +CDC16 HGNC:1720 8881 +CDC20 HGNC:1723 991 +CDC27 HGNC:1728 996 +CDC37 HGNC:1735 11140 +CDC5L HGNC:1743 988 +CDC73 HGNC:16783 79577 +CDK1 HGNC:1722 983 +CDK7 HGNC:1778 1022 +CDK9 HGNC:1780 1025 +CDT1 HGNC:24576 81620 +CEBPZ HGNC:24218 10153 +CENPA HGNC:1851 1058 +CENPC NA +CFL1 HGNC:1874 1072 +CHAF1A HGNC:1910 10036 +CHAF1B HGNC:1911 8208 +CHEK1 HGNC:1925 1111 +CHERP HGNC:16930 10523 +CHMP2A HGNC:30216 27243 +CHMP6 HGNC:25675 79643 +CIAO1 HGNC:14280 9391 +CINP HGNC:23789 51550 +UTP4 HGNC:1983 84916 +CKAP5 HGNC:28959 9793 +CLNS1A HGNC:2080 1207 +CLP1 HGNC:16999 10978 +CLTC HGNC:2092 1213 +CMPK1 HGNC:18170 51727 +CMTR1 NA +CNOT3 HGNC:7879 4849 +COA5 HGNC:33848 493753 +COPA HGNC:2230 1314 +COPB1 HGNC:2231 1315 +COPB2 HGNC:2232 9276 +COPS3 HGNC:2239 8533 +COPS6 HGNC:21749 10980 +COPZ1 HGNC:2243 22818 +COQ4 HGNC:19693 51117 +COX10 HGNC:2260 1352 +COX11 HGNC:2261 1353 +COX15 HGNC:2263 1355 +COX4I1 HGNC:2265 1327 +COX5B HGNC:2269 1329 +COX6B1 HGNC:2280 1340 +CPSF1 HGNC:2324 29894 +CPSF2 HGNC:2325 53981 +CPSF3 HGNC:2326 51692 +CPSF4 HGNC:2327 10898 +CRNKL1 HGNC:15762 51340 +CSE1L HGNC:2431 1434 +CTDP1 HGNC:2498 9150 +CTPS1 HGNC:2519 1503 +CTR9 HGNC:16850 9646 +CYCS HGNC:19986 54205 +DAD1 HGNC:2664 1603 +DBR1 HGNC:15594 51163 +DCTN5 HGNC:24594 84516 +DDB1 HGNC:2717 1642 +DDOST HGNC:2728 1650 +DDX10 HGNC:2735 1662 +DDX18 HGNC:2741 8886 +DDX20 HGNC:2743 11218 +DDX21 HGNC:2744 9188 +DDX27 HGNC:15837 55661 +DDX41 HGNC:18674 51428 +DDX47 HGNC:18682 51202 +DDX49 HGNC:18684 54555 +DDX55 HGNC:20085 57696 +DDX56 HGNC:18193 54606 +DGCR8 HGNC:2847 54487 +DHODH HGNC:2867 1723 +DHPS HGNC:2869 1725 +DHX15 HGNC:2738 1665 +DHX33 HGNC:16718 56919 +DHX37 HGNC:17210 57647 +DHX8 HGNC:2749 1659 +DHX9 HGNC:2750 1660 +UTP25 HGNC:28440 27042 +DIMT1 HGNC:30217 27292 +DIS3 HGNC:20604 22894 +DKC1 HGNC:2890 1736 +DLST HGNC:2911 1743 +DMAP1 HGNC:18291 55929 +DNAJA3 HGNC:11808 9093 +DNAJC9 HGNC:19123 23234 +DNM2 HGNC:2974 1785 +DNMT1 HGNC:2976 1786 +DOLK HGNC:23406 22845 +DONSON HGNC:2993 29980 +DPAGT1 HGNC:2995 1798 +DTL HGNC:30288 51514 +DTYMK HGNC:3061 1841 +DYNC1I2 HGNC:2964 1781 +ECD HGNC:17029 11319 +EEF2 HGNC:3214 1938 +EFTUD2 HGNC:30858 9343 +EIF2B1 HGNC:3257 1967 +EIF2B3 HGNC:3259 8891 +EIF2B5 HGNC:3261 8893 +EIF2S1 HGNC:3265 1965 +EIF2S2 HGNC:3266 8894 +EIF2S3 HGNC:3267 1968 +EIF3A HGNC:3271 8661 +EIF3B HGNC:3280 8662 +EIF3C HGNC:3279 8663 +EIF3D HGNC:3278 8664 +EIF3G HGNC:3274 8666 +EIF3I HGNC:3272 8668 +EIF4A3 HGNC:18683 9775 +EIF5A HGNC:3300 1984 +EIF5B HGNC:30793 9669 +EIF6 HGNC:6159 3692 +ELAC2 HGNC:14198 60528 +ELL HGNC:23114 8178 +EPRS HGNC:3418 2058 +ERCC2 HGNC:3434 2068 +ERCC3 HGNC:3435 2071 +ERH HGNC:3447 2079 +EXOSC2 HGNC:17097 23404 +EXOSC3 HGNC:17944 51010 +EXOSC4 HGNC:18189 54512 +EXOSC6 HGNC:19055 118460 +EXOSC7 HGNC:28112 23016 +EXOSC8 HGNC:17035 11340 +CIAO2B HGNC:24261 51647 +FARS2 HGNC:21062 10667 +FARSA HGNC:3592 2193 +FARSB HGNC:17800 10056 +FAU HGNC:3597 2197 +FNTA HGNC:3782 2339 +FNTB HGNC:3785 2342 +FTSJ3 HGNC:17136 117246 +GABPA HGNC:4071 2551 +GAPDH HGNC:4141 2597 +GART HGNC:4163 2618 +GEMIN5 HGNC:20043 25929 +GEMIN8 HGNC:26044 54960 +GFM1 HGNC:13780 85476 +GGPS1 HGNC:4249 9453 +GINS2 HGNC:24575 51659 +GINS3 HGNC:25851 64785 +GINS4 HGNC:28226 84296 +GMPPB HGNC:22932 29925 +GMPS HGNC:4378 8833 +RACK1 HGNC:4399 10399 +GNL3 HGNC:29931 26354 +GPN3 HGNC:30186 51184 +GPS1 HGNC:4549 2873 +GRPEL1 HGNC:19696 80273 +GRWD1 HGNC:21270 83743 +GSPT1 HGNC:4621 2935 +GTF2B HGNC:4648 2959 +GTF2H1 HGNC:4655 2965 +GTF2H2C HGNC:31394 728340 +GTF2H4 HGNC:4658 2968 +GTF3A HGNC:4662 2971 +GTF3C1 HGNC:4664 2975 +GTF3C2 HGNC:4665 2976 +GTF3C5 HGNC:4668 9328 +GTPBP4 HGNC:21535 23560 +GUK1 HGNC:4693 2987 +HARS HGNC:4816 3035 +HAUS1 HGNC:25174 115106 +HAUS5 HGNC:29130 23354 +HCFC1 HGNC:4839 3054 +HDAC3 HGNC:4854 8841 +HEATR1 HGNC:25517 55127 +HINFP HGNC:17850 25988 +HIST1H2AJ HGNC:4727 8331 +HIST2H2AA3 HGNC:4736 8337 +HJURP HGNC:25444 55355 +HNRNPC HGNC:5035 3183 +HNRNPK HGNC:5044 3190 +HNRNPL HGNC:5045 3191 +HNRNPU HGNC:5048 3192 +HSD17B10 HGNC:4800 3028 +HSPA9 HGNC:5244 3313 +HSPD1 HGNC:5261 3329 +HUWE1 HGNC:30892 10075 +HYPK HGNC:18418 25764 +IARS HGNC:5330 3376 +IGBP1 HGNC:5461 3476 +ILF3 HGNC:6038 3609 +IMP3 HGNC:14497 55272 +IMP4 HGNC:30856 92856 +INTS1 HGNC:24555 26173 +INTS3 HGNC:26153 65123 +INTS8 HGNC:26048 55656 +INTS9 HGNC:25592 55756 +IPO13 HGNC:16853 9670 +ISCU HGNC:29882 23479 +ISG20L2 HGNC:25745 81875 +KANSL3 HGNC:25473 55683 +KARS HGNC:6215 3735 +KAT8 HGNC:17933 84148 +KIF11 HGNC:6388 3832 +KIF23 HGNC:6392 9493 +KPNB1 HGNC:6400 3837 +KRI1 HGNC:25769 65095 +KRR1 HGNC:5176 11103 +LARS HGNC:6512 51520 +LAS1L HGNC:25726 81887 +LONP1 HGNC:9479 9361 +LRR1 HGNC:19742 122769 +LSG1 HGNC:25652 55341 +LSM11 HGNC:30860 134353 +LSM12 HGNC:26407 124801 +LSM2 HGNC:13940 57819 +LSM7 HGNC:20470 51690 +LUC7L3 HGNC:24309 51747 +MAD2L1 HGNC:6763 4085 +MAGOH HGNC:6815 4116 +MAK16 HGNC:13703 84549 +MARS HGNC:6898 4141 +MARS2 HGNC:25133 92935 +MASTL HGNC:19042 84930 +MCM3 HGNC:6945 4172 +MCM3AP HGNC:6946 8888 +MCM4 HGNC:6947 4173 +MCM5 HGNC:6948 4174 +MCM7 HGNC:6950 4176 +MDN1 HGNC:18302 23195 +MED11 HGNC:32687 400569 +MED12 HGNC:11957 9968 +MED18 HGNC:25944 54797 +MED27 HGNC:2377 9442 +MED30 HGNC:23032 90390 +MEPCE HGNC:20247 56257 +METTL16 HGNC:28484 79066 +MMS22L HGNC:21475 253714 +MPHOSPH10 HGNC:7213 10199 +MRPL57 HGNC:14514 78988 +MRPL18 HGNC:14477 29074 +MRPL28 HGNC:14484 10573 +MRPL38 HGNC:14033 64978 +MRPL4 HGNC:14276 51073 +MRPL43 HGNC:14517 84545 +MRPL45 HGNC:16651 84311 +MRPL46 HGNC:1192 26589 +MRPL53 HGNC:16684 116540 +MRPS14 HGNC:14049 63931 +MRPS24 HGNC:14510 64951 +MRPS34 HGNC:16618 65993 +MSTO1 HGNC:29678 55154 +MTG2 HGNC:16239 26164 +MVK HGNC:7530 4598 +MYBBP1A HGNC:7546 10514 +MYC HGNC:7553 4609 +NAA10 HGNC:18704 8260 +LSM8 HGNC:20471 51691 +NAA50 HGNC:29533 80218 +NAMPT HGNC:30092 10135 +NAPA HGNC:7641 8775 +CIAO3 HGNC:14179 64428 +NARS HGNC:7643 4677 +NAT10 HGNC:29830 55226 +NCBP1 HGNC:7658 4686 +NCBP2 HGNC:7659 22916 +NDC80 HGNC:16909 10403 +NDUFA13 HGNC:17194 51079 +NEDD8 HGNC:7732 4738 +NELFB HGNC:24324 25920 +NHP2 HGNC:14377 55651 +SNU13 HGNC:7819 4809 +NIP7 HGNC:24328 51388 +NKAP HGNC:29873 79576 +NLE1 HGNC:19889 54475 +NMD3 HGNC:24250 51068 +NMT1 HGNC:7857 4836 +NOC4L HGNC:28461 79050 +NOL10 HGNC:25862 79954 +NOL11 HGNC:24557 25926 +NOL6 HGNC:19910 65083 +NOL9 HGNC:26265 79707 +NOP16 HGNC:26934 51491 +NOP2 HGNC:7867 4839 +NOP56 HGNC:15911 10528 +NOP9 HGNC:19826 161424 +NPLOC4 HGNC:18261 55666 +NSA2 HGNC:30728 10412 +NSF HGNC:8016 4905 +NUDC HGNC:8045 10726 +NUDCD3 HGNC:22208 23386 +NUDT21 HGNC:13870 11051 +NUDT4 HGNC:8051 11163 +NUF2 HGNC:14621 83540 +NUP133 HGNC:18016 55746 +NUP155 HGNC:8063 9631 +NUP160 HGNC:18017 23279 +NUP214 HGNC:8064 8021 +NUP85 HGNC:8734 79902 +NUP88 HGNC:8067 4927 +NUP93 HGNC:28958 9688 +NUS1 HGNC:21042 116150 +NUTF2 HGNC:13722 10204 +NVL HGNC:8070 4931 +NXF1 HGNC:8071 10482 +OGDH HGNC:8124 4967 +OGT HGNC:8127 8473 +LTO1 HGNC:17589 220064 +ORC6 HGNC:17151 23594 +OSGEP HGNC:18028 55644 +PABPC1 HGNC:8554 26986 +PAFAH1B1 HGNC:8574 5048 +PAICS HGNC:8587 10606 +PAK1IP1 HGNC:20882 55003 +PCID2 HGNC:25653 55795 +PCNA HGNC:8729 5111 +PFDN2 HGNC:8867 5202 +PFN1 HGNC:8881 5216 +PGAM1 HGNC:8888 5223 +PGGT1B HGNC:8895 5229 +PGK1 HGNC:8896 5230 +PHB HGNC:8912 5245 +PHB2 HGNC:30306 11331 +PHF5A HGNC:18000 84844 +PKMYT1 HGNC:29650 9088 +PLK1 HGNC:9077 5347 +PLRG1 HGNC:9089 5356 +PMPCA HGNC:18667 23203 +PMPCB HGNC:9119 9512 +PNKP HGNC:9154 11284 +POLA2 HGNC:30073 23649 +POLR1A HGNC:17264 25885 +POLR1B HGNC:20454 84172 +POLR1C HGNC:20194 9533 +POLR2A HGNC:9187 5430 +POLR2B HGNC:9188 5431 +POLR2C HGNC:9189 5432 +POLR2D HGNC:9191 5433 +POLR2E HGNC:9192 5434 +POLR2G HGNC:9194 5436 +POLR2H HGNC:9195 5437 +POLR2I HGNC:9196 5438 +POLR2L HGNC:9199 5441 +POLR3A HGNC:30074 11128 +POLR3C HGNC:30076 10623 +POLR3H HGNC:30349 171568 +POLR3K HGNC:14121 51728 +POLRMT HGNC:9200 5442 +POP1 HGNC:30129 10940 +POP5 HGNC:17689 51367 +PPA1 HGNC:9226 5464 +PPAN HGNC:9227 56342 +PPAT HGNC:9238 5471 +PPIL2 HGNC:9261 23759 +PPP2CA HGNC:9299 5515 +PTPA HGNC:9308 5524 +PPP4C HGNC:9319 5531 +PPWD1 HGNC:28954 23398 +PREB HGNC:9356 10113 +PRELID1 HGNC:30255 27166 +PRIM1 HGNC:9369 5557 +PRMT1 HGNC:5187 3276 +PRMT5 HGNC:10894 10419 +PRPF19 HGNC:17896 27339 +PRPF31 HGNC:15446 26121 +PRPF38A HGNC:25930 84950 +PRPF38B HGNC:25512 55119 +PRPF4 HGNC:17349 9128 +PRPF8 HGNC:17340 10594 +PSMA1 HGNC:9530 5682 +PSMA2 HGNC:9531 5683 +PSMA3 HGNC:9532 5684 +PSMA4 HGNC:9533 5685 +PSMA5 HGNC:9534 5686 +PSMA6 HGNC:9535 5687 +PSMA7 HGNC:9536 5688 +PSMB1 HGNC:9537 5689 +PSMB2 HGNC:9539 5690 +PSMB3 HGNC:9540 5691 +PSMB4 HGNC:9541 5692 +PSMB7 HGNC:9544 5695 +PSMC2 HGNC:9548 5701 +PSMC3 HGNC:9549 5702 +PSMC5 HGNC:9552 5705 +PSMC6 HGNC:9553 5706 +PSMD1 HGNC:9554 5707 +PSMD11 HGNC:9556 5717 +PSMD12 HGNC:9557 5718 +PSMD13 HGNC:9558 5719 +PSMD14 HGNC:16889 10213 +PSMD3 HGNC:9560 5709 +PSMD4 HGNC:9561 5710 +PSMG3 HGNC:22420 84262 +PTPN23 HGNC:14406 25930 +PUF60 HGNC:17042 22827 +PWP2 HGNC:9711 5822 +QARS HGNC:9751 5859 +RABGGTB HGNC:9796 5876 +RACGAP1 HGNC:9804 29127 +RAD21 HGNC:9811 5885 +RAD51C HGNC:9820 5889 +RAD51D HGNC:9823 5892 +RAE1 HGNC:9828 8480 +RAN HGNC:9846 5901 +RANGAP1 HGNC:9854 5905 +RARS2 HGNC:21406 57038 +RBBP6 HGNC:9889 5930 +RBM14 HGNC:14219 10432 +RBM17 HGNC:16944 84991 +RBM8A HGNC:9905 9939 +RBMX HGNC:9910 27316 +RBX1 HGNC:9928 9978 +RCC1 HGNC:1913 1104 +RCL1 HGNC:17687 10171 +RFC2 HGNC:9970 5982 +RFC4 HGNC:9972 5984 +RFC5 HGNC:9973 5985 +RFK HGNC:30324 55312 +RHEB HGNC:10011 6009 +RIOK2 HGNC:18999 55781 +RNF20 HGNC:10062 56254 +RNGTT HGNC:10073 8732 +ROMO1 HGNC:16185 140823 +RPA1 HGNC:10289 6117 +RPA2 HGNC:10290 6118 +RPF2 HGNC:20870 84154 +RPL10A HGNC:10299 4736 +RPL11 HGNC:10301 6135 +RPL12 HGNC:10302 6136 +RPL13 HGNC:10303 6137 +RPL14 HGNC:10305 9045 +RPL18 HGNC:10310 6141 +RPL18A HGNC:10311 6142 +RPL19 HGNC:10312 6143 +RPL23 HGNC:10316 9349 +RPL24 HGNC:10325 6152 +RPL27 HGNC:10328 6155 +RPL27A HGNC:10329 6157 +RPL3 HGNC:10332 6122 +RPL30 HGNC:10333 6156 +RPL35 HGNC:10344 11224 +RPL35A HGNC:10345 6165 +RPL36 HGNC:13631 25873 +RPL37A HGNC:10348 6168 +RPL4 HGNC:10353 6124 +RPL6 HGNC:10362 6128 +RPL8 HGNC:10368 6132 +RPLP0 HGNC:10371 6175 +RPLP1 HGNC:10372 6176 +RPLP2 HGNC:10377 6181 +RPP21 HGNC:21300 79897 +RPP38 HGNC:30329 10557 +RPS11 HGNC:10384 6205 +RPS12 HGNC:10385 6206 +RPS13 HGNC:10386 6207 +RPS15A HGNC:10389 6210 +RPS16 HGNC:10396 6217 +RPS18 HGNC:10401 6222 +RPS19 HGNC:10402 6223 +RPS2 HGNC:10404 6187 +RPS20 HGNC:10405 6224 +RPS21 HGNC:10409 6227 +RPS23 HGNC:10410 6228 +RPS3 HGNC:10420 6188 +RPS4X HGNC:10424 6191 +RPS5 HGNC:10426 6193 +RPS6 HGNC:10429 6194 +RPS7 HGNC:10440 6201 +RPS8 HGNC:10441 6202 +RRM1 HGNC:10451 6240 +RRP1 HGNC:18785 8568 +RRP12 HGNC:29100 23223 +RRS1 HGNC:17083 23212 +RTCB HGNC:26935 51493 +RUVBL2 HGNC:10475 10856 +SACM1L HGNC:17059 22908 +SAE1 HGNC:30660 10055 +SAMM50 HGNC:24276 25813 +SAP18 HGNC:10530 10284 +SARS HGNC:10537 6301 +SARS2 HGNC:17697 54938 +SART3 HGNC:16860 9733 +SBNO1 HGNC:22973 55206 +SDAD1 HGNC:25537 55153 +SDHC HGNC:10682 6391 +SEC13 HGNC:10697 6396 +SEH1L HGNC:30379 81929 +SF1 HGNC:12950 7536 +SF3A2 HGNC:10766 8175 +SF3A3 HGNC:10767 10946 +SF3B1 HGNC:10768 23451 +SF3B2 HGNC:10769 10992 +SF3B3 HGNC:10770 23450 +SF3B5 HGNC:21083 83443 +SKP1 HGNC:10899 6500 +SLC35B1 HGNC:20798 10237 +PRELID3B HGNC:15892 51012 +SLU7 HGNC:16939 10569 +SMC1A HGNC:11111 8243 +SMC2 HGNC:14011 10592 +SMC4 HGNC:14013 10051 +SMU1 HGNC:18247 55234 +SNAPC1 HGNC:11134 6617 +SNAPC2 HGNC:11135 6618 +SNAPC4 HGNC:11137 6621 +SNRNP200 HGNC:30859 23020 +SNRNP25 HGNC:14161 79622 +SNRNP27 HGNC:30240 11017 +SNRNP35 HGNC:30852 11066 +SNRNP70 HGNC:11150 6625 +SNRPA1 HGNC:11152 6627 +SNRPD1 HGNC:11158 6632 +SNRPD2 HGNC:11159 6633 +SNRPD3 HGNC:11160 6634 +SNRPF HGNC:11162 6636 +SNW1 HGNC:16696 22938 +SPATA5L1 HGNC:28762 79029 +SPC24 HGNC:26913 147841 +SPC25 HGNC:24031 57405 +SRBD1 HGNC:25521 55133 +SRP19 HGNC:11300 6728 +SRRM1 HGNC:16638 10250 +SRRT HGNC:24101 51593 +SRSF1 HGNC:10780 6426 +SRSF2 HGNC:10783 6427 +SRSF3 HGNC:10785 6428 +SRSF7 HGNC:10789 6432 +SS18L2 HGNC:15593 51188 +SSU72 HGNC:25016 29101 +SUPT5H HGNC:11469 6829 +SUPT6H HGNC:11470 6830 +SUPV3L1 HGNC:11471 6832 +SYMPK HGNC:22935 8189 +SYS1 HGNC:16162 90196 +TAF1B HGNC:11533 9014 +TAF6 HGNC:11540 6878 +TANGO6 HGNC:25749 79613 +TARS HGNC:11572 6897 +TBCD HGNC:11581 6904 +TBL3 HGNC:11587 10607 +TCP1 HGNC:11655 6950 +TELO2 HGNC:29099 9894 +TFAM HGNC:11741 7019 +TFRC HGNC:11763 7037 +THOC2 HGNC:19073 57187 +THOC3 HGNC:19072 84321 +THOC5 HGNC:19074 8563 +TICRR HGNC:28704 90381 +TIMM10 HGNC:11814 26519 +TIMM13 HGNC:11816 26517 +TIMM23 HGNC:17312 100287932 +TIMM44 HGNC:17316 10469 +TMEM258 HGNC:1164 746 +TNPO3 HGNC:17103 23534 +TOMM22 HGNC:18002 56993 +TOMM40 HGNC:18001 10452 +TONSL HGNC:7801 4796 +TOP1 HGNC:11986 7150 +TOP2A HGNC:11989 7153 +TPT1 HGNC:12022 7178 +TPX2 HGNC:1249 22974 +TRAPPC1 HGNC:19894 58485 +TRAPPC3 HGNC:19942 27095 +TRIAP1 HGNC:26937 51499 +TRMT112 HGNC:26940 51504 +TRMT5 HGNC:23141 57570 +TRNAU1AP HGNC:30813 54952 +TRRAP HGNC:12347 8295 +TSR1 HGNC:25542 55720 +TTC1 HGNC:12391 7265 +TTC27 HGNC:25986 55622 +TTI1 HGNC:29029 9675 +TTI2 HGNC:26262 80185 +TUBB HGNC:20778 203068 +TUBG1 HGNC:12417 7283 +TUBGCP2 HGNC:18599 10844 +TUBGCP3 HGNC:18598 10426 +TUBGCP6 HGNC:18127 85378 +TUFM HGNC:12420 7284 +TUT1 HGNC:26184 64852 +TXN HGNC:12435 7295 +TXNL4A HGNC:30551 10907 +U2AF1 HGNC:12453 7307 +U2AF2 HGNC:23156 11338 +UBA1 HGNC:12469 7317 +UBA52 HGNC:12458 7311 +UBE2L3 HGNC:12488 7332 +UBE2M HGNC:12491 9040 +UBE2N HGNC:12492 7334 +UBL5 HGNC:13736 59286 +UBTF HGNC:12511 7343 +UPF1 HGNC:9962 5976 +UPF2 HGNC:17854 26019 +UQCRC1 HGNC:12585 7384 +UQCRFS1 HGNC:12587 7386 +UROD HGNC:12591 7389 +USP39 HGNC:20071 10713 +USP5 HGNC:12628 8078 +USPL1 HGNC:20294 10208 +UTP15 HGNC:25758 84135 +UTP20 HGNC:17897 27340 +UTP23 HGNC:28224 84294 +UXT HGNC:12641 8409 +VARS HGNC:12651 7407 +VARS2 HGNC:21642 57176 +VCP HGNC:12666 7415 +VPS25 HGNC:28122 84313 +VPS28 HGNC:18178 51160 +WARS HGNC:12729 7453 +BUD23 HGNC:16405 114049 +WDR12 HGNC:14098 55759 +WDR25 HGNC:21064 79446 +WDR3 HGNC:12755 10885 +WDR33 HGNC:25651 55339 +WDR43 HGNC:28945 23160 +WDR61 HGNC:30300 80349 +WDR70 HGNC:25495 55100 +WDR74 HGNC:25529 54663 +WDR75 HGNC:25725 84128 +WDR77 HGNC:29652 79084 +WDR92 HGNC:25176 116143 +WEE1 HGNC:12761 7465 +XAB2 HGNC:14089 56949 +XPO1 HGNC:12825 7514 +XRCC6 HGNC:4055 2547 +YARS HGNC:12840 8565 +YARS2 HGNC:24249 51067 +YRDC HGNC:28905 79693 +ZBTB8OS HGNC:24094 339487 +ZMAT5 HGNC:28046 55954 +ZNF131 HGNC:12915 7690 +ZPR1 HGNC:13051 8882 +ZNF574 HGNC:26166 64763 diff --git a/assets/NEGv1.txt b/assets/NEGv1.txt new file mode 100644 index 00000000..32701540 --- /dev/null +++ b/assets/NEGv1.txt @@ -0,0 +1 @@ +{"payload":{"allShortcutsEnabled":false,"fileTree":{"":{"items":[{"name":"archive","path":"archive","contentType":"directory"},{"name":"data","path":"data","contentType":"directory"},{"name":"pipeline-script-example","path":"pipeline-script-example","contentType":"directory"},{"name":"BAGEL-v2-tutorial.html","path":"BAGEL-v2-tutorial.html","contentType":"file"},{"name":"BAGEL.py","path":"BAGEL.py","contentType":"file"},{"name":"CEG_mouse.txt","path":"CEG_mouse.txt","contentType":"file"},{"name":"CEGv2.txt","path":"CEGv2.txt","contentType":"file"},{"name":"LICENSE","path":"LICENSE","contentType":"file"},{"name":"NEG_mouse.txt","path":"NEG_mouse.txt","contentType":"file"},{"name":"NEGv1.txt","path":"NEGv1.txt","contentType":"file"},{"name":"Network_STRING_v10.txt","path":"Network_STRING_v10.txt","contentType":"file"},{"name":"README.md","path":"README.md","contentType":"file"},{"name":"pan-species-control-essentials-50genes.txt","path":"pan-species-control-essentials-50genes.txt","contentType":"file"},{"name":"pan-species-control-nonessentials-50genes.txt","path":"pan-species-control-nonessentials-50genes.txt","contentType":"file"},{"name":"precalc_library_alignment_info.py","path":"precalc_library_alignment_info.py","contentType":"file"},{"name":"reads_hap1.txt","path":"reads_hap1.txt","contentType":"file"}],"totalCount":16}},"fileTreeProcessingTime":2.2530900000000003,"foldersToFetch":[],"reducedMotionEnabled":null,"repo":{"id":93685947,"defaultBranch":"master","name":"bagel","ownerLogin":"hart-lab","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2017-06-07T22:46:04.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/29264780?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"master","listCacheKey":"v0:1609982357.0","canEdit":false,"refType":"branch","currentOid":"53388adbb4fb0931e5c9dda135502be19e4555f0"},"path":"NEGv1.txt","currentUser":null,"blob":{"rawLines":["GENE\tHGNC_ID\tENTREZ_ID","ABCG8\tHGNC:13887\t64241","ACCSL\tHGNC:34391\t390110","ACTL7A\tHGNC:161\t10881","ACTL7B\tHGNC:162\t10880","ACTL9\tHGNC:28494\t284382","ACTRT1\tHGNC:24027\t139741","ADAD1\tHGNC:30713\t132612","ADAM18\tHGNC:196\t8749","ADAM2\tHGNC:198\t2515","ADAM20\tHGNC:199\t8748","ADAM30\tHGNC:208\t11085","ADH7\tHGNC:256\t131","AFM\tHGNC:316\t173","AICDA\tHGNC:13203\t57379","AIPL1\tHGNC:359\t23746","ALPI\tHGNC:437\t248","ALPG\tHGNC:441\t251","ALX3\tHGNC:449\t257","AMELX\tHGNC:461\t265","ANKRD30A\tHGNC:17234\t91074","ANKRD60\tHGNC:16217\t140731","ANTXRL\tHGNC:27277\t195977","APOA4\tHGNC:602\t337","APOBEC1\tHGNC:604\t339","APOF\tHGNC:615\t319","AQP12A\tHGNC:19941\t375318","AQP8\tHGNC:642\t343","ARGFX\tHGNC:30146\t503582","ART1\tHGNC:723\t417","ASB17\tHGNC:19769\t127247","ASIC5\tHGNC:17537\t51802","ASZ1\tHGNC:1350\t136991","ATOH1\tHGNC:797\t474","ATP4B\tHGNC:820\t496","ATP6V1G3\tHGNC:18265\t127124","AWAT1\tHGNC:23252\t158833","AWAT2\tHGNC:23251\t158835","B3GNT6\tHGNC:24141\t192134","BANF2\tHGNC:16172\t140836","BARHL1\tHGNC:953\t56751","BEND2\tHGNC:28509\t139105","BHLHE23\tHGNC:16093\t128408","BIRC8\tHGNC:14878\t112401","BMP10\tHGNC:20869\t27302","BMP15\tHGNC:1068\t9210","BPIFA1\tHGNC:15749\t51297","BPIFA3\tHGNC:16204\t128861","BPIFB3\tHGNC:16178\t359710","BPIFB6\tHGNC:16504\t128859","BPIFC\tHGNC:16503\t254240","BPY2\tHGNC:13508\t9083","BRDT\tHGNC:1105\t676","BSND\tHGNC:16512\t7809","C10orf113\tHGNC:31447\t387638","C10orf120\tHGNC:25707\t399814","C10orf53\tHGNC:27421\t282966","C11orf40\tHGNC:23986\t143501","C12orf40\tHGNC:26846\t283461","C14orf183\tHGNC:27285\t196913","NUTM1\tHGNC:29919\t256646","C16orf78\tHGNC:28479\t123970","C17orf102\tHGNC:34412\t400591","C17orf78\tHGNC:26831\t284099","DYNAP\tHGNC:26808\t284254","TEX45\tHGNC:24745\t374877","C1orf146\tHGNC:24032\t388649","C20orf173\tHGNC:16166\t140873","C20orf203\tHGNC:26592\t284805","SCP2D1\tHGNC:16211\t140856","TEX44\tHGNC:28563\t165100","STPG4\tHGNC:26850\t285051","PCARE\tHGNC:34383\t388939","C2orf83\tHGNC:25344\t56918","C3orf30\tHGNC:26553\t152405","PRR27\tHGNC:33193\t401137","DCANP1\tHGNC:24459\t140947","C6orf10\tHGNC:13922\t10665","C7orf66\tHGNC:33712\t154907","C7orf71\tHGNC:22364\t285941","C8A\tHGNC:1352\t731","C8B\tHGNC:1353\t732","C8orf17\tHGNC:17737\t100507249","C8orf86\tHGNC:33774\t389649","C9orf53\tHGNC:23831\t51198","CABP2\tHGNC:1385\t51475","CABP5\tHGNC:13714\t56344","CABS1\tHGNC:30710\t85438","CACNG2\tHGNC:1406\t10369","CACNG3\tHGNC:1407\t10368","CACNG5\tHGNC:1409\t27091","CATSPER4\tHGNC:23220\t378807","CCDC155\tHGNC:26520\t147872","CCDC172\tHGNC:30524\t374355","CCDC83\tHGNC:28535\t220047","CCKAR\tHGNC:1570\t886","CCL1\tHGNC:10609\t6346","CCT8L2\tHGNC:15553\t150160","CD200R1L\tHGNC:24665\t344807","CDCP2\tHGNC:27297\t200008","CDX2\tHGNC:1806\t1045","CDX4\tHGNC:1808\t1046","CDY1\tHGNC:1809\t9085","CDY1B\tHGNC:23920\t253175","CDY2A\tHGNC:1810\t9426","CDY2B\tHGNC:23921\t203611","CEACAM7\tHGNC:1819\t1087","CELA2A\tHGNC:24609\t63036","CELA3A\tHGNC:15944\t10136","CELA3B\tHGNC:15945\t23436","CER1\tHGNC:1862\t9350","CETN1\tHGNC:1866\t1068","CFHR2\tHGNC:4890\t3080","CFHR5\tHGNC:24668\t81494","CHAT\tHGNC:1912\t1103","CHRNA6\tHGNC:15963\t8973","CHRNB3\tHGNC:1963\t1142","CLCA1\tHGNC:2015\t1179","CLDN17\tHGNC:2038\t26285","CLEC2A\tHGNC:24191\t387836","CLEC3A\tHGNC:2052\t10143","CLEC6A\tHGNC:14556\t93978","CLRN1\tHGNC:12605\t7401","CNBD1\tHGNC:26663\t168975","CNGA2\tHGNC:2149\t1260","CNGB3\tHGNC:2153\t54714","CNPY1\tHGNC:27786\t285888","CNTNAP5\tHGNC:18748\t129684","COL20A1\tHGNC:14670\t57642","COX7B2\tHGNC:24381\t170712","CPXCR1\tHGNC:2332\t53336","CRNN\tHGNC:1230\t49860","CRX\tHGNC:2383\t1406","CRYGB\tHGNC:2409\t1419","CSH1\tHGNC:2440\t1442","CSHL1\tHGNC:2442\t1444","CSN2\tHGNC:2447\t1447","CSN3\tHGNC:2446\t1448","CST11\tHGNC:15959\t140880","CST4\tHGNC:2476\t1472","CST5\tHGNC:2477\t1473","CST8\tHGNC:2480\t10047","CST9\tHGNC:13261\t128822","CST9L\tHGNC:16233\t128821","CSTL1\tHGNC:15958\t128817","CT45A2\tHGNC:28400\t728911","CT45A4\tHGNC:33269\t","CT45A5\tHGNC:33270\t441521","CT47A11\tHGNC:27397\t255313","CTCFL\tHGNC:16234\t140690","CTRB1\tHGNC:2521\t1504","CXorf1\tHGNC:2562\t","CXorf66\tHGNC:33743\t347487","CYLC2\tHGNC:2583\t1539","CYP11B1\tHGNC:2591\t1584","CYP11B2\tHGNC:2592\t1585","CYP26C1\tHGNC:20577\t340665","CYP2A13\tHGNC:2608\t1553","CYP2C19\tHGNC:2621\t1557","CYP4A22\tHGNC:20575\t284541","CYP4F8\tHGNC:2648\t11283","CYP7A1\tHGNC:2651\t1581","DAZ1\tHGNC:2682\t1617","DAZ2\tHGNC:15964\t57055","DAZ3\tHGNC:15965\t57054","DAZ4\tHGNC:15966\t57135","DAZL\tHGNC:2685\t1618","DCAF4L2\tHGNC:26657\t138009","DCAF8L1\tHGNC:31810\t139425","DDI1\tHGNC:18961\t414301","DDX4\tHGNC:18700\t54514","DEFA5\tHGNC:2764\t1670","DEFA6\tHGNC:2765\t1671","DEFB103B\tHGNC:31702\t55894","DEFB104A\tHGNC:18115\t140596","DEFB106A\tHGNC:18088\t245909","DEFB107A\tHGNC:18086\t245910","DEFB118\tHGNC:16196\t117285","DEFB123\tHGNC:18103\t245936","DEFB126\tHGNC:15900\t81623","DEFB127\tHGNC:16206\t140850","DEFB129\tHGNC:16218\t140881","DGAT2L6\tHGNC:23250\t347516","DGKK\tHGNC:32395\t139189","DIRC1\tHGNC:15760\t116093","DMP1\tHGNC:2932\t1758","DMRT1\tHGNC:2934\t1761","DMRTB1\tHGNC:13913\t63948","DMRTC2\tHGNC:13911\t63946","MUCL3\tHGNC:21666\t135656","DPRX\tHGNC:32166\t503834","DRD3\tHGNC:3024\t1814","DRGX\tHGNC:21536\t644168","DSCR4\tHGNC:3045\t10281","DSG4\tHGNC:21307\t147409","DSPP\tHGNC:3054\t1834","DTX2\tHGNC:15973\t113878","DUSP21\tHGNC:20476\t63904","DUX4\tHGNC:50800\t100288687","DUX4L7\tHGNC:37266\t653543","DUXA\tHGNC:32179\t503835","EFCAB3\tHGNC:26379\t146779","EGR4\tHGNC:3241\t1961","ENTHD1\tHGNC:26352\t150350","ESX1\tHGNC:14865\t80712","EVX1\tHGNC:3506\t2128","F13B\tHGNC:3534\t2165","F9\tHGNC:3551\t2158","FABP2\tHGNC:3556\t2169","FAM106A\tHGNC:25682\t80039","FAM47A\tHGNC:29962\t158724","FAM47B\tHGNC:26659\t170062","FAM47C\tHGNC:25301\t442444","FAM71A\tHGNC:26541\t149647","FAM71B\tHGNC:28397\t153745","FAM71C\tHGNC:28594\t196472","SPATA31A7\tHGNC:32007\t26165","SPATA31D1\tHGNC:37283\t389763","FCRL4\tHGNC:18507\t83417","FEZF1\tHGNC:22788\t389549","FEZF2\tHGNC:13506\t55079","FFAR1\tHGNC:4498\t2864","FGF3\tHGNC:3681\t2248","FGF4\tHGNC:3682\t2249","FGF6\tHGNC:3684\t2251","FIGLA\tHGNC:24669\t344018","FLG2\tHGNC:33276\t388698","FMR1NB\tHGNC:26372\t158521","FNDC7\tHGNC:26668\t163479","FNDC9\tHGNC:33547\t408263","FOXB1\tHGNC:3799\t27023","FOXB2\tHGNC:23315\t442425","FOXD4L3\tHGNC:18523\t286380","FOXD4L4\tHGNC:23762\t349334","FOXE3\tHGNC:3808\t2301","FOXN1\tHGNC:12765\t8456","FOXR1\tHGNC:29980\t283150","FRG2\tHGNC:19136\t448831","FRMD7\tHGNC:8079\t90167","FSCB\tHGNC:20494\t84075","FUT5\tHGNC:4016\t2527","FUT9\tHGNC:4020\t10690","G6PC\tHGNC:4056\t2538","GABRA1\tHGNC:4075\t2554","GABRA6\tHGNC:4080\t2559","GAGE1\tHGNC:4098\t2543","GAGE2C\tHGNC:31958\t2574","GALNTL5\tHGNC:21725\t168391","GALR1\tHGNC:4132\t2587","GALR3\tHGNC:4134\t8484","GBP7\tHGNC:29606\t388646","GCG\tHGNC:4191\t2641","GCM2\tHGNC:4198\t9247","GDF2\tHGNC:4217\t2658","GFRA4\tHGNC:13821\t64096","GFRAL\tHGNC:32789\t389400","GH2\tHGNC:4262\t2689","GHRH\tHGNC:4265\t2691","GHSR\tHGNC:4267\t2693","GIF\tHGNC:4268\t2694","GJA9\tHGNC:19155\t81025","GJA8\tHGNC:4281\t2703","GK2\tHGNC:4291\t2712","GKN2\tHGNC:24588\t200504","GLRA1\tHGNC:4326\t2741","GLRA2\tHGNC:4327\t2742","GLT6D1\tHGNC:23671\t360203","GML\tHGNC:4375\t2765","GOLGA6L2\tHGNC:26695\t283685","GOT1L1\tHGNC:28487\t137362","GPR101\tHGNC:14963\t83550","GPR111\tHGNC:18991\t222611","GPR119\tHGNC:19060\t139760","ADGRG7\tHGNC:19241\t84873","GPR139\tHGNC:19995\t124274","GPR144\tHGNC:18651\t347088","GPR148\tHGNC:23623\t344561","GPR151\tHGNC:23624\t134391","GPR152\tHGNC:23622\t390212","GPR26\tHGNC:4481\t2849","GPR31\tHGNC:4486\t2853","GPR32\tHGNC:4487\t2854","GPR45\tHGNC:4503\t11250","GPR50\tHGNC:4506\t9248","GPR52\tHGNC:4508\t9293","GPR78\tHGNC:4528\t27201","GPRC6A\tHGNC:18510\t222545","GPX5\tHGNC:4557\t2880","GPX6\tHGNC:4558\t257202","GRK1\tHGNC:10013\t6011","GRM4\tHGNC:4596\t2914","GRM5\tHGNC:4597\t2915","GRM6\tHGNC:4598\t2916","GSC2\tHGNC:4613\t2928","GSTA5\tHGNC:19662\t221357","GSX1\tHGNC:20374\t219409","GSX2\tHGNC:24959\t170825","GUCA2A\tHGNC:4682\t2980","GUCY2F\tHGNC:4691\t2986","H1FOO\tHGNC:18463\t132243","H2BFM\tHGNC:27867\t286436","H2BFWT\tHGNC:27252\t158983","HAO1\tHGNC:4809\t54363","HCRTR2\tHGNC:4849\t3062","HDGFL1\tHGNC:21095\t154150","HHLA1\tHGNC:4904\t10086","HIST1H2AA\tHGNC:18729\t221613","HIST1H2BA\tHGNC:18730\t255626","HIST1H4G\tHGNC:4792\t8369","HMX1\tHGNC:5017\t3166","HOXB1\tHGNC:5111\t3211","HOXD12\tHGNC:5135\t3238","HRG\tHGNC:5181\t3273","HRH3\tHGNC:5184\t11255","HSFY1\tHGNC:18568\t86614","HSFY2\tHGNC:23950\t159119","HTN3\tHGNC:5284\t3347","HTR1A\tHGNC:5286\t3350","HTR2C\tHGNC:5295\t3358","HTR3C\tHGNC:24003\t170572","HTR3D\tHGNC:24004\t200909","HTR3E\tHGNC:24005\t285242","HTR5A\tHGNC:5300\t3361","HTR6\tHGNC:5301\t3362","IAPP\tHGNC:5329\t3375","IFIT1B\tHGNC:23442\t439996","IFNA10\tHGNC:5418\t3446","IFNA14\tHGNC:5420\t3448","IFNA16\tHGNC:5421\t3449","IFNA17\tHGNC:5422\t3451","IFNA2\tHGNC:5423\t3440","IFNA21\tHGNC:5424\t3452","IFNA4\tHGNC:5425\t3441","IFNA5\tHGNC:5426\t3442","IFNA6\tHGNC:5427\t3443","IFNA7\tHGNC:5428\t3444","IFNA8\tHGNC:5429\t3445","IFNB1\tHGNC:5434\t3456","IFNK\tHGNC:21714\t56832","IFNW1\tHGNC:5448\t3467","IL12B\tHGNC:5970\t3593","IL13\tHGNC:5973\t3596","IL17A\tHGNC:5981\t3605","IL17F\tHGNC:16404\t112744","IL1F10\tHGNC:15552\t84639","IL21\tHGNC:6005\t59067","IL22\tHGNC:14900\t50616","IL25\tHGNC:13765\t64806","IL26\tHGNC:17119\t55801","IFNL2\tHGNC:18364\t282616","IFNL3\tHGNC:18365\t282617","IFNL1\tHGNC:18363\t282618","IL3\tHGNC:6011\t3562","IL31\tHGNC:19372\t386653","IL36A\tHGNC:15562\t27179","IL36B\tHGNC:15564\t27177","IL36RN\tHGNC:15561\t26525","IL9\tHGNC:6029\t3578","INS\tHGNC:6081\t3630","INSL5\tHGNC:6088\t10022","INSL6\tHGNC:6089\t11172","INSM2\tHGNC:17539\t84684","INSRR\tHGNC:6093\t3645","IQCF1\tHGNC:28607\t132141","IRGC\tHGNC:28835\t56269","ISX\tHGNC:28084\t91464","ITIH6\tHGNC:28907\t347365","IZUMO2\tHGNC:28518\t126123","KCNA10\tHGNC:6219\t3744","KCNB2\tHGNC:6232\t9312","KCNG4\tHGNC:19697\t93107","KCNK10\tHGNC:6273\t54207","KCNK16\tHGNC:14464\t83795","KCNK18\tHGNC:19439\t338567","KCNV1\tHGNC:18861\t27012","KHDC3L\tHGNC:33699\t154288","KIF2B\tHGNC:29443\t84643","KIR2DL1\tHGNC:6329\t3802","KIR3DL3\tHGNC:16312\t115653","KLK12\tHGNC:6360\t43849","KLK9\tHGNC:6370\t284366","KRT2\tHGNC:6439\t3849","KRT25\tHGNC:30839\t147183","KRT26\tHGNC:30840\t353288","KRT28\tHGNC:30842\t162605","KRT33A\tHGNC:6450\t3883","KRT35\tHGNC:6453\t3886","KRT36\tHGNC:6454\t8689","KRT37\tHGNC:6455\t8688","KRT38\tHGNC:6456\t8687","KRT40\tHGNC:26707\t125115","KRT71\tHGNC:28927\t112802","KRT73\tHGNC:28928\t319101","KRT74\tHGNC:28929\t121391","KRT75\tHGNC:24431\t9119","KRT76\tHGNC:24430\t51350","KRT77\tHGNC:20411\t374454","KRT78\tHGNC:28926\t196374","KRT82\tHGNC:6459\t3888","KRT84\tHGNC:6461\t3890","KRT85\tHGNC:6462\t3891","KRT86\tHGNC:6463\t3892","KRT9\tHGNC:6447\t3857","KRTAP1-1\tHGNC:16772\t81851","KRTAP10-1\tHGNC:22966\t386677","KRTAP10-10\tHGNC:22972\t353333","KRTAP10-11\tHGNC:20528\t386678","KRTAP10-12\tHGNC:20533\t386685","KRTAP10-2\tHGNC:22967\t386679","KRTAP10-4\tHGNC:20521\t386672","KRTAP10-5\tHGNC:22969\t386680","KRTAP10-6\tHGNC:20523\t386674","KRTAP10-7\tHGNC:22970\t386675","KRTAP10-8\tHGNC:20525\t386681","KRTAP10-9\tHGNC:22971\t386676","KRTAP11-1\tHGNC:18922\t337880","KRTAP13-1\tHGNC:18924\t140258","KRTAP13-2\tHGNC:18923\t337959","KRTAP13-3\tHGNC:18925\t337960","KRTAP13-4\tHGNC:18926\t284827","KRTAP15-1\tHGNC:18927\t254950","KRTAP17-1\tHGNC:18917\t83902","KRTAP19-3\tHGNC:18938\t337970","KRTAP23-1\tHGNC:18928\t337963","KRTAP26-1\tHGNC:33760\t388818","KRTAP3-2\tHGNC:16779\t83897","KRTAP4-11\tHGNC:18911\t653240","KRTAP4-12\tHGNC:16776\t83755","KRTAP4-2\tHGNC:18900\t85291","KRTAP4-4\tHGNC:16928\t84616","KRTAP4-7\tHGNC:18898\t100132476","KRTAP5-2\tHGNC:23597\t440021","KRTAP9-2\tHGNC:16926\t83899","KRTAP9-3\tHGNC:16927\t83900","KRTAP9-4\tHGNC:18902\t85280","LALBA\tHGNC:6480\t3906","LBX1\tHGNC:16960\t10660","LCN9\tHGNC:17442\t392399","LCT\tHGNC:6530\t3938","LGALS13\tHGNC:15449\t29124","LGALS14\tHGNC:30054\t56891","LHFPL5\tHGNC:21253\t222662","LHX3\tHGNC:6595\t8022","LHX5\tHGNC:14216\t64211","LIM2\tHGNC:6610\t3982","LIN28A\tHGNC:15986\t79727","LIPM\tHGNC:23455\t340654","LOR\tHGNC:6663\t4014","LRIT1\tHGNC:23404\t26103","LRIT2\tHGNC:23443\t340745","LRRC10\tHGNC:20264\t376132","LUZP4\tHGNC:24971\t51213","LYZL1\tHGNC:30502\t84569","LYZL2\tHGNC:29613\t119180","LYZL6\tHGNC:29614\t57151","MAGEA10\tHGNC:6797\t4109","MAGEA11\tHGNC:6798\t4110","MAGEB1\tHGNC:6808\t4112","MAGEB10\tHGNC:25377\t139422","MAGEB18\tHGNC:28515\t286514","MAGEB3\tHGNC:6810\t4114","MAGEB4\tHGNC:6811\t4115","MAGEC3\tHGNC:23798\t139081","MAS1\tHGNC:6899\t4142","MAS1L\tHGNC:13961\t116511","MBD3L1\tHGNC:15774\t85509","MBD3L2\tHGNC:18532\t125997","MBL2\tHGNC:6922\t4153","MC2R\tHGNC:6930\t4158","MC3R\tHGNC:6931\t4159","MC5R\tHGNC:6933\t4161","MEP1A\tHGNC:7015\t4224","MEP1B\tHGNC:7020\t4225","MEPE\tHGNC:13361\t56955","MFRP\tHGNC:18121\t83552","MMD2\tHGNC:30133\t221938","MMP20\tHGNC:7167\t9313","MMP21\tHGNC:7170\t8511","MMP26\tHGNC:14249\t56547","MMP27\tHGNC:14250\t64066","MOGAT3\tHGNC:23249\t346606","MORC1\tHGNC:7198\t27136","MRGPRD\tHGNC:29626\t116512","MRGPRX1\tHGNC:17962\t259249","MRGPRX2\tHGNC:17983\t117194","MRGPRX4\tHGNC:17617\t117196","MS4A10\tHGNC:13368\t341116","MS4A13\tHGNC:16674\t503497","MS4A5\tHGNC:13374\t64232","MSGN1\tHGNC:14907\t343930","MT1B\tHGNC:7394\t4490","MTNR1B\tHGNC:7464\t4544","MUC17\tHGNC:16800\t140453","MUC7\tHGNC:7518\t4589","MYBPC3\tHGNC:7551\t4607","MYF5\tHGNC:7565\t4617","NANOGNB\tHGNC:24958\t360030","NANOS2\tHGNC:23292\t339345","NCR2\tHGNC:6732\t9436","NDST4\tHGNC:20779\t64579","NEUROD2\tHGNC:7763\t4761","NEUROD4\tHGNC:13802\t58158","NEUROD6\tHGNC:13804\t63974","NEUROG1\tHGNC:7764\t4762","NKX2-1\tHGNC:11825\t7080","NKX2-2\tHGNC:7835\t4821","NLRP4\tHGNC:22943\t147945","NLRP5\tHGNC:21269\t126206","NLRP8\tHGNC:22940\t126205","NLRP9\tHGNC:22941\t338321","NMS\tHGNC:32203\t129521","NOBOX\tHGNC:22448\t135935","NOTO\tHGNC:31839\t344022","NOX3\tHGNC:7890\t50508","NPFFR1\tHGNC:17425\t64106","NPHS2\tHGNC:13394\t7827","NPSR1\tHGNC:23631\t387129","NPVF\tHGNC:13782\t64111","NR2E1\tHGNC:7973\t7101","NYX\tHGNC:8082\t60506","OC90\tHGNC:8100\t729330","OLIG2\tHGNC:9398\t10215","OLIG3\tHGNC:18003\t167826","OPALIN\tHGNC:20707\t93377","OPN1LW\tHGNC:9936\t5956","OPN5\tHGNC:19992\t221391","OR10A2\tHGNC:8161\t341276","OR10A4\tHGNC:15130\t283297","OR10A5\tHGNC:15131\t144124","OR10H1\tHGNC:8172\t26539","OR10H2\tHGNC:8173\t26538","OR10H3\tHGNC:8174\t26532","OR10J1\tHGNC:8175\t26476","OR10R2\tHGNC:14820\t343406","OR10S1\tHGNC:14807\t219873","OR10X1\tHGNC:14995\t128367","OR10Z1\tHGNC:14996\t128368","OR11A1\tHGNC:8176\t26531","OR12D2\tHGNC:8178\t26529","OR12D3\tHGNC:13963\t81797","OR13C3\tHGNC:14704\t138803","OR13D1\tHGNC:14695\t286365","OR14A16\tHGNC:15022\t284532","OR1A1\tHGNC:8179\t8383","OR1A2\tHGNC:8180\t26189","OR1B1\tHGNC:8181\t347169","OR1D2\tHGNC:8183\t4991","OR1E1\tHGNC:8189\t8387","OR1E2\tHGNC:8190\t8388","OR1G1\tHGNC:8204\t8390","OR1L6\tHGNC:8218\t392390","OR1N2\tHGNC:15111\t138882","OR1S1\tHGNC:8227\t219959","OR1S2\tHGNC:15141\t219958","OR2AK2\tHGNC:19569\t391191","OR2AT4\tHGNC:19620\t341152","OR2C1\tHGNC:8242\t4993","OR2C3\tHGNC:15005\t81472","OR2D2\tHGNC:8244\t120776","OR2D3\tHGNC:15146\t120775","OR2F1\tHGNC:8246\t26211","OR2G2\tHGNC:15007\t81470","OR2G3\tHGNC:15008\t81469","OR2H1\tHGNC:8252\t26716","OR2J2\tHGNC:8260\t26707","OR2L3\tHGNC:15009\t391192","OR2T1\tHGNC:8277\t26696","OR2T10\tHGNC:19573\t127069","OR2T12\tHGNC:19592\t127064","OR2T2\tHGNC:14725\t401992","OR2T27\tHGNC:31252\t403239","OR2T33\tHGNC:31255\t391195","OR2T4\tHGNC:15016\t127074","OR2T5\tHGNC:15017\t401993","OR2W1\tHGNC:8281\t26692","OR3A1\tHGNC:8282\t4994","OR3A2\tHGNC:8283\t4995","OR3A3\tHGNC:8284\t8392","OR4C11\tHGNC:15167\t219429","OR4C3\tHGNC:14697\t256144","OR4D1\tHGNC:8293\t26689","OR4D10\tHGNC:15173\t390197","OR4D11\tHGNC:15174\t219986","OR4D9\tHGNC:15178\t390199","OR4K17\tHGNC:15355\t390436","OR51B6\tHGNC:19600\t390058","OR51D1\tHGNC:15193\t390038","OR51F2\tHGNC:15197\t119694","OR51T1\tHGNC:15205\t401665","OR51V1\tHGNC:19597\t283111","OR52A1\tHGNC:8318\t23538","OR52A5\tHGNC:19580\t390054","OR52B2\tHGNC:15207\t255725","OR52B6\tHGNC:15211\t340980","OR52E8\tHGNC:15217\t390079","OR52I2\tHGNC:15221\t143502","OR52K2\tHGNC:15223\t119774","OR52L1\tHGNC:14785\t338751","OR52M1\tHGNC:15225\t119772","OR52R1\tHGNC:15235\t119695","OR52W1\tHGNC:15239\t120787","OR56A1\tHGNC:14781\t120796","OR56A4\tHGNC:14791\t120793","OR56B1\tHGNC:15245\t387748","OR5AU1\tHGNC:15362\t390445","OR5C1\tHGNC:8331\t392391","OR5I1\tHGNC:8347\t10798","OR5M1\tHGNC:8352\t390168","OR5M10\tHGNC:15290\t390167","OR5P2\tHGNC:14783\t120065","OR5P3\tHGNC:14784\t120066","OR5R1\tHGNC:14841\t219479","OR5T1\tHGNC:14821\t390155","OR5T2\tHGNC:15296\t219464","OR5T3\tHGNC:15297\t390154","OR5V1\tHGNC:13972\t81696","OR5W2\tHGNC:15299\t390148","OR6A2\tHGNC:15301\t8590","OR6K6\tHGNC:15033\t128371","OR6S1\tHGNC:15363\t341799","OR6V1\tHGNC:15090\t346517","OR7A17\tHGNC:8363\t26333","OR7C2\tHGNC:8374\t26658","OR7D4\tHGNC:8380\t125958","OR7G2\tHGNC:8466\t390882","OR8A1\tHGNC:8469\t390275","OR8B8\tHGNC:8477\t26493","OR8G5\tHGNC:19622\t219865","OR8U1\tHGNC:19611\t219417","OR9Q2\tHGNC:15328\t219957","OTOP1\tHGNC:19656\t133060","OTOP3\tHGNC:19658\t347741","OTOR\tHGNC:8517\t56914","OTP\tHGNC:8518\t23440","OTUD6A\tHGNC:32312\t139562","OTX2\tHGNC:8522\t5015","PAGE3\tHGNC:4110\t139793","PANX3\tHGNC:20573\t116337","PASD1\tHGNC:20686\t139135","PAX1\tHGNC:8615\t5075","PAX4\tHGNC:8618\t5078","PBOV1\tHGNC:21079\t59351","PDCL2\tHGNC:29524\t132954","PDE6H\tHGNC:8790\t5149","PDILT\tHGNC:27338\t204474","PDX1\tHGNC:6107\t3651","PDYN\tHGNC:8820\t5173","PGK2\tHGNC:8898\t5232","PGLYRP2\tHGNC:30013\t114770","PGLYRP3\tHGNC:30014\t114771","PIWIL1\tHGNC:9007\t9271","PIWIL3\tHGNC:18443\t440822","PKD1L3\tHGNC:21716\t342372","PLA2G2E\tHGNC:13414\t30814","PLA2G2F\tHGNC:30040\t64600","PLA2G4E\tHGNC:24791\t123745","OOSP2\tHGNC:26699\t219990","PNLIP\tHGNC:9155\t5406","PNLIPRP1\tHGNC:9156\t5407","PNLIPRP2\tHGNC:9157\t5408","PNPLA5\tHGNC:24888\t150379","POM121L12\tHGNC:25369\t285877","POTEA\tHGNC:33893\t340441","POTED\tHGNC:23822\t317754","POTEG\tHGNC:33896\t404785","POTEH\tHGNC:133\t23784","POU3F4\tHGNC:9217\t5456","POU4F2\tHGNC:9219\t5458","POU4F3\tHGNC:9220\t5459","POU5F2\tHGNC:26367\t134187","PPP3R2\tHGNC:9318\t5535","PRAMEF1\tHGNC:28840\t65121","PRAMEF19\tHGNC:24908\t645414","PRAMEF2\tHGNC:28841\t65122","PRAMEF3\tHGNC:14087\t","PRAMEF4\tHGNC:31971\t400735","PRAMEF7\tHGNC:28415\t441871","PRB1\tHGNC:9337\t5542","PRB4\tHGNC:9340\t5545","PRDM13\tHGNC:13998\t59336","PRDM14\tHGNC:14001\t63978","PRDM7\tHGNC:9351\t11105","PRDM9\tHGNC:13994\t56979","PRG3\tHGNC:9363\t10394","PRLH\tHGNC:17945\t51052","PRLHR\tHGNC:4464\t2834","PROP1\tHGNC:9455\t5626","PRSS33\tHGNC:30405\t260429","PRSS37\tHGNC:29211\t136242","PRSS38\tHGNC:29625\t339501","PRSS41\tHGNC:30715\t360226","PRSS55\tHGNC:30824\t203074","PRSS58\tHGNC:39125\t136541","PRY2\tHGNC:21504\t442862","PSKH2\tHGNC:18997\t85481","PTF1A\tHGNC:23734\t256297","RAX\tHGNC:18662\t30062","RAX2\tHGNC:18286\t84839","RBM46\tHGNC:28401\t166863","RBMXL2\tHGNC:17886\t27288","RBMY1A1\tHGNC:9912\t5940","RBMY1B\tHGNC:23914\t378948","RBMY1D\tHGNC:23915\t378949","RBMY1E\tHGNC:23916\t378950","RBMY1F\tHGNC:23974\t159163","RBMY1J\tHGNC:23917\t378951","RBP3\tHGNC:9921\t5949","RBPJL\tHGNC:13761\t11317","RD3\tHGNC:19689\t343035","RDH8\tHGNC:14423\t50700","REG3A\tHGNC:8601\t5068","RESP18\tHGNC:33762\t389075","RETNLB\tHGNC:20388\t84666","REXO1L1\tHGNC:24660\t254958","RFPL3\tHGNC:9980\t10738","RFPL4B\tHGNC:33264\t442247","RFX6\tHGNC:21478\t222546","RHO\tHGNC:10012\t6010","RHOXF2\tHGNC:30011\t84528","RNASE10\tHGNC:19275\t338879","RNASE11\tHGNC:19269\t122651","RNASE12\tHGNC:24211\t493901","RNASE13\tHGNC:25285\t440163","RNASE8\tHGNC:19277\t122665","RNASE9\tHGNC:20673\t390443","RND2\tHGNC:18315\t8153","RNF113B\tHGNC:17267\t140432","RNF17\tHGNC:10060\t56163","RP1\tHGNC:10263\t6101","RP1L1\tHGNC:15946\t94137","RPE65\tHGNC:10294\t6121","RPTN\tHGNC:26809\t126638","RS1\tHGNC:10457\t6247","RTP1\tHGNC:28580\t132112","RTP2\tHGNC:32486\t344892","RXFP2\tHGNC:17318\t122042","RXFP3\tHGNC:24883\t51289","S100A7A\tHGNC:21657\t338324","S100G\tHGNC:1436\t795","SAGE1\tHGNC:30369\t55511","SAMD7\tHGNC:25394\t344658","SCGB1D1\tHGNC:18395\t10648","SCN10A\tHGNC:10582\t6336","SCRT2\tHGNC:15952\t85508","SDR9C7\tHGNC:29958\t121214","SEC14L3\tHGNC:18655\t266629","SEMG2\tHGNC:10743\t6407","SEPT14\tHGNC:33280\t346288","SERPINA12\tHGNC:18359\t145264","SERPINA7\tHGNC:11583\t6906","SERPINA9\tHGNC:15995\t327657","SERPINB12\tHGNC:14220\t89777","SHCBP1L\tHGNC:16788\t81626","SHOX\tHGNC:10853\t6473","SI\tHGNC:10856\t6476","SIGLECL1\tHGNC:26856\t284369","SIX6\tHGNC:10892\t4990","SLC10A2\tHGNC:10906\t6555","SLC13A1\tHGNC:10916\t6561","SLC34A1\tHGNC:11019\t6569","SLC17A6\tHGNC:16703\t57084","SLC18A3\tHGNC:10936\t6572","SLC22A12\tHGNC:17989\t116085","SLC22A13\tHGNC:8494\t9390","SLC22A24\tHGNC:28542\t283238","SLC22A25\tHGNC:32935\t387601","SLC22A6\tHGNC:10970\t9356","SLC22A8\tHGNC:10972\t9376","SLC22A9\tHGNC:16261\t114571","SLC25A2\tHGNC:22921\t83884","SLC25A31\tHGNC:25319\t83447","SLC2A2\tHGNC:11006\t6514","SLC2A7\tHGNC:13445\t155184","SLC32A1\tHGNC:11018\t140679","SLC34A1\tHGNC:11019\t6569","SLC36A3\tHGNC:19659\t285641","SLC39A12\tHGNC:20860\t221074","SLC6A18\tHGNC:26441\t348932","SLC6A5\tHGNC:11051\t9152","SLC6A7\tHGNC:11054\t6534","SLC7A13\tHGNC:23092\t157724","SLCO1B1\tHGNC:10959\t10599","SLCO6A1\tHGNC:23613\t133482","SLITRK1\tHGNC:20297\t114798","SOHLH1\tHGNC:27845\t402381","SOX1\tHGNC:11189\t6656","SOX14\tHGNC:11193\t8403","SP8\tHGNC:19196\t221833","SPACA1\tHGNC:14967\t81833","SPACA5\tHGNC:31353\t389852","SPACA7\tHGNC:29575\t122258","SPATA16\tHGNC:29935\t83893","SPATA21\tHGNC:28026\t374955","SPEM1\tHGNC:32429\t374768","SPHAR\tHGNC:16957\t10638","SPINK14\tHGNC:33825\t408187","SPO11\tHGNC:11250\t23626","SPPL2C\tHGNC:28902\t162540","SPRR4\tHGNC:23173\t163778","SSTR4\tHGNC:11333\t6754","SSX3\tHGNC:11337\t10214","SSX5\tHGNC:11339\t6758","SSX7\tHGNC:19653\t280658","SSX8\tHGNC:19654\t280659","SSX9\tHGNC:19655\t280660","STATH\tHGNC:11369\t6779","SULT6B1\tHGNC:33433\t391365","SUN5\tHGNC:16252\t140732","TBXT\tHGNC:11515\t6862","TAAR1\tHGNC:17734\t134864","TAAR2\tHGNC:4514\t9287","TAAR5\tHGNC:30236\t9038","TAAR6\tHGNC:20978\t319100","TAAR8\tHGNC:14964\t83551","TAAR9\tHGNC:20977\t134860","TAS1R2\tHGNC:14905\t80834","TAS2R1\tHGNC:14909\t50834","TAS2R13\tHGNC:14919\t50838","TAS2R16\tHGNC:14921\t50833","TAS2R39\tHGNC:18886\t259285","TAS2R40\tHGNC:18885\t259286","TAS2R41\tHGNC:18883\t259287","TAS2R42\tHGNC:18888\t353164","TAS2R43\tHGNC:18875\t259289","TAS2R46\tHGNC:18877\t259292","TAS2R50\tHGNC:18882\t259296","TAS2R60\tHGNC:20639\t338398","TAS2R7\tHGNC:14913\t50837","TAS2R8\tHGNC:14915\t50836","TAS2R9\tHGNC:14917\t50835","TBC1D21\tHGNC:28536\t161514","TBC1D29\tHGNC:24509\t26083","TBL1Y\tHGNC:18502\t90665","TBPL2\tHGNC:19841\t387332","TBR1\tHGNC:11590\t10716","TBX10\tHGNC:11593\t347853","ELOA2\tHGNC:30771\t51224","ELOA3\tHGNC:24617\t162699","TCHHL1\tHGNC:31796\t126637","TCP10L2\tHGNC:21254\t401285","TEDDM1\tHGNC:30233\t127670","TEX101\tHGNC:30722\t83639","TEX13A\tHGNC:11735\t56157","TEX28\tHGNC:2563\t1527","SPATA32\tHGNC:26349\t124783","TFAP2D\tHGNC:15581\t83741","TFDP3\tHGNC:24603\t51270","TGIF2LX\tHGNC:18570\t90316","TGIF2LY\tHGNC:18569\t90655","TGM6\tHGNC:16255\t343641","TKTL2\tHGNC:25313\t84076","TLX1\tHGNC:5056\t3195","TMEM132D\tHGNC:29411\t121256","TMEM174\tHGNC:28187\t134288","TMEM207\tHGNC:33705\t131920","TMEM225\tHGNC:32390\t338661","TMIGD1\tHGNC:32431\t388364","TMPRSS11A\tHGNC:27954\t339967","TMPRSS11B\tHGNC:25398\t132724","TMPRSS11F\tHGNC:29994\t389208","TMPRSS12\tHGNC:28779\t283471","TMPRSS15\tHGNC:9490\t5651","TNR\tHGNC:11953\t7143","TPD52L3\tHGNC:23382\t89882","TPH2\tHGNC:20692\t121278","TPRX1\tHGNC:32174\t284355","TPTE\tHGNC:12023\t7179","TREML4\tHGNC:30807\t285852","TRHR\tHGNC:12299\t7201","TRIM40\tHGNC:18736\t135644","TRIM42\tHGNC:19014\t287015","TRIM43\tHGNC:19015\t129868","TRIM48\tHGNC:19021\t79097","TRIM49\tHGNC:13431\t57093","TRIM51\tHGNC:19023\t84767","TRIM60\tHGNC:21162\t166655","TRIM67\tHGNC:31859\t440730","TRIML1\tHGNC:26698\t339976","TRPC5\tHGNC:12337\t7224","TRPC7\tHGNC:20754\t57113","TRPM1\tHGNC:7146\t4308","TRPV5\tHGNC:3145\t56302","TSGA13\tHGNC:12369\t114960","TSHB\tHGNC:12372\t7252","TSPAN16\tHGNC:30725\t26526","TSPO2\tHGNC:21256\t222642","TSPY1\tHGNC:12381\t7258","TSPYL6\tHGNC:14521\t388951","TSSK1B\tHGNC:14968\t83942","TSSK2\tHGNC:11401\t23617","TXNDC8\tHGNC:31454\t255220","TYR\tHGNC:12442\t7299","UBQLN3\tHGNC:12510\t50613","UMOD\tHGNC:12559\t7369","UROC1\tHGNC:26444\t131669","USP17L2\tHGNC:34434\t377630","USP26\tHGNC:13485\t83844","USP29\tHGNC:18563\t57663","UTS2R\tHGNC:4468\t2837","VAX1\tHGNC:12660\t11023","VCX3A\tHGNC:18159\t51481","VHLL\tHGNC:30666\t391104","VN1R2\tHGNC:19872\t317701","VN1R4\tHGNC:19871\t317703","VN1R5\tHGNC:19870\t317705","VPREB1\tHGNC:12709\t7441","VRTN\tHGNC:20223\t55237","VSX2\tHGNC:1975\t338917","WFDC10A\tHGNC:16139\t140832","WFDC11\tHGNC:20478\t259239","WFDC9\tHGNC:20380\t259240","XAGE2\tHGNC:4112\t9502","XAGE5\tHGNC:30930\t170627","XKR7\tHGNC:23062\t343702","ZAN\tHGNC:12857\t7455","ZCCHC13\tHGNC:31749\t389874","RTL4\tHGNC:25214\t340595","ZG16\tHGNC:30961\t653808","ZIC3\tHGNC:12874\t7547","ZIM3\tHGNC:16366\t114026","CBLL2\tHGNC:26371\t158506","ZNF648\tHGNC:18190\t127665","ZNF679\tHGNC:28650\t168417","ZNF804B\tHGNC:21958\t219578","ZNRF4\tHGNC:17726\t148066","ZP2\tHGNC:13188\t7783","ZP4\tHGNC:15770\t57829","ZSWIM2\tHGNC:30990\t151112"],"stylingDirectives":[[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]],"csv":null,"csvError":null,"dependabotInfo":{"showConfigurationBanner":false,"configFilePath":null,"networkDependabotPath":"/hart-lab/bagel/network/updates","dismissConfigurationNoticePath":"/settings/dismiss-notice/dependabot_configuration_notice","configurationNoticeDismissed":null,"repoAlertsPath":"/hart-lab/bagel/security/dependabot","repoSecurityAndAnalysisPath":"/hart-lab/bagel/settings/security_analysis","repoOwnerIsOrg":true,"currentUserCanAdminRepo":false},"displayName":"NEGv1.txt","displayUrl":"https://github.com/hart-lab/bagel/blob/master/NEGv1.txt?raw=true","headerInfo":{"blobSize":"21.2 KB","deleteInfo":{"deletePath":null,"deleteTooltip":"You must be signed in to make or propose changes"},"editInfo":{"editTooltip":"You must be signed in to make or propose changes"},"ghDesktopPath":"https://desktop.github.com","gitLfsPath":null,"onBranch":true,"shortPath":"9640181","siteNavLoginPath":"/login?return_to=https%3A%2F%2Fgithub.com%2Fhart-lab%2Fbagel%2Fblob%2Fmaster%2FNEGv1.txt","isCSV":false,"isRichtext":false,"toc":null,"lineInfo":{"truncatedLoc":"929","truncatedSloc":"928"},"mode":"file"},"image":false,"isCodeownersFile":null,"isValidLegacyIssueTemplate":false,"issueTemplateHelpUrl":"https://docs.github.com/articles/about-issue-and-pull-request-templates","issueTemplate":null,"discussionTemplate":null,"language":"Text","large":false,"loggedIn":false,"newDiscussionPath":"/hart-lab/bagel/discussions/new","newIssuePath":"/hart-lab/bagel/issues/new","planSupportInfo":{"repoIsFork":null,"repoOwnedByCurrentUser":null,"requestFullPath":"/hart-lab/bagel/blob/master/NEGv1.txt","showFreeOrgGatedFeatureMessage":null,"showPlanSupportBanner":null,"upgradeDataAttributes":null,"upgradePath":null},"publishBannersInfo":{"dismissActionNoticePath":"/settings/dismiss-notice/publish_action_from_dockerfile","dismissStackNoticePath":"/settings/dismiss-notice/publish_stack_from_file","releasePath":"/hart-lab/bagel/releases/new?marketplace=true","showPublishActionBanner":false,"showPublishStackBanner":false},"renderImageOrRaw":false,"richText":null,"renderedFileInfo":null,"tabSize":8,"topBannersInfo":{"overridingGlobalFundingFile":false,"globalPreferredFundingPath":null,"repoOwner":"hart-lab","repoName":"bagel","showInvalidCitationWarning":false,"citationHelpUrl":"https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/about-citation-files","showDependabotConfigurationBanner":false,"actionsOnboardingTip":null},"truncated":false,"viewable":true,"workflowRedirectUrl":null,"symbols":{"timedOut":false,"notAnalyzed":true,"symbols":[]}},"copilotUserAccess":null,"csrf_tokens":{"/hart-lab/bagel/branches":{"post":"pYLWEpeG9RoxdtoYXQJ5y8-trx6KAJSl7LLqOLZ-2cESTKQmFBTzFls26c8sdQ8miAFjbcsFlrlb9JOP0frNWg"}}},"title":"bagel/NEGv1.txt at master · hart-lab/bagel","locale":"en"} \ No newline at end of file diff --git a/assets/schema_input.json b/assets/schema_input.json index 21c8c38a..dfc3dc1c 100644 --- a/assets/schema_input.json +++ b/assets/schema_input.json @@ -1,5 +1,5 @@ { - "$schema": "http://json-schema.org/draft-07/schema", + "$schema": "http://json-schema.org/draft-07/schema", "$id": "https://raw.githubusercontent.com/nf-core/crisprseq/master/assets/schema_input.json", "title": "nf-core/crisprseq pipeline - params.input schema", "description": "Schema for the file provided with params.input", @@ -30,8 +30,6 @@ "condition": { "type": "string", "pattern": "^\\S+$", - "enum": ["control", "treatment"], - "errorMessage": "Condition name must be one of 'control' or 'treatment'", "meta": ["condition"] }, "reference": { diff --git a/modules/local/bagel2_bf.nf b/modules/local/bagel2_bf.nf new file mode 100644 index 00000000..5299915a --- /dev/null +++ b/modules/local/bagel2_bf.nf @@ -0,0 +1,33 @@ +process BAGEL2_BF { + tag "$meta.treatment" + label 'process_single' + + + conda "python=3.11.4 pandas=2.0.3 numpy=1.25.1 scikit-learn=1.3.0 click=8.1.6" + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? + 'https://depot.galaxyproject.org/singularity/mulled-v2-1ec3f69e7819b1ab3e6f57d16594eb40ed7d6792:f94a27287a1921ce0dacd411d48acff738d3ca90-0': + 'biocontainers/mulled-v2-1ec3f69e7819b1ab3e6f57d16594eb40ed7d6792:f94a27287a1921ce0dacd411d48acff738d3ca90-0' }" + + + input: + tuple val(meta), path(foldchange) + path(reference_essentials) + path(reference_nonessentials) + + output: + tuple val(meta), path("*.pr"), emit: pr + //path "versions.yml" , emit: versions + + when: + task.ext.when == null || task.ext.when + + script: + def args = task.ext.args ?: '' + def prefix = task.ext.prefix ?: "${meta.treatment}" + + """ + BAGEL.py bf -i $foldchange -o ${meta.treatment} $args -e $reference_essentials -n $reference_nonessentials -c ${meta.treatment} + + """ + +} diff --git a/modules/local/bagel2_fc.nf b/modules/local/bagel2_fc.nf index 9fe4ccc9..bc0c4f12 100644 --- a/modules/local/bagel2_fc.nf +++ b/modules/local/bagel2_fc.nf @@ -1,40 +1,13 @@ -// TODO nf-core: If in doubt look at other nf-core/modules to see how we are doing things! :) -// https://github.com/nf-core/modules/tree/master/modules/nf-core/ -// You can also ask for help via your pull request or on the #modules channel on the nf-core Slack workspace: -// https://nf-co.re/join -// TODO nf-core: A module file SHOULD only define input and output files as command-line parameters. -// All other parameters MUST be provided using the "task.ext" directive, see here: -// https://www.nextflow.io/docs/latest/process.html#ext -// where "task.ext" is a string. -// Any parameters that need to be evaluated in the context of a particular sample -// e.g. single-end/paired-end data MUST also be defined and evaluated appropriately. -// TODO nf-core: Software that can be piped together SHOULD be added to separate module files -// unless there is a run-time, storage advantage in implementing in this way -// e.g. it's ok to have a single module for bwa to output BAM instead of SAM: -// bwa mem | samtools view -B -T ref.fasta -// TODO nf-core: Optional inputs are not currently supported by Nextflow. However, using an empty -// list (`[]`) instead of a file can be used to work around this issue. - process BAGEL2_FC { tag "${meta.treatment}_${meta.reference}" label 'process_single' - // TODO nf-core: List required Conda package(s). - // Software MUST be pinned to channel (i.e. "bioconda"), version (i.e. "1.10"). - // For Conda, the build (i.e. "h9402c20_2") must be EXCLUDED to support installation on different operating systems. - // TODO nf-core: See section in main README for further information regarding finding and adding container addresses to the section below. conda "python=3.11.4 pandas=2.0.3 numpy=1.25.1 scikit-learn=1.3.0 click=8.1.6" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? 'https://depot.galaxyproject.org/singularity/mulled-v2-1ec3f69e7819b1ab3e6f57d16594eb40ed7d6792:f94a27287a1921ce0dacd411d48acff738d3ca90-0': 'biocontainers/mulled-v2-1ec3f69e7819b1ab3e6f57d16594eb40ed7d6792:f94a27287a1921ce0dacd411d48acff738d3ca90-0' }" input: - // TODO nf-core: Where applicable all sample-specific information e.g. "id", "single_end", "read_group" - // MUST be provided as an input via a Groovy Map called "meta". - // This information may not be required in some instances e.g. indexing reference genome files: - // https://github.com/nf-core/modules/blob/master/modules/nf-core/bwa/index/main.nf - // TODO nf-core: Where applicable please provide/convert compressed files as input/output - // e.g. "*.fastq.gz" and NOT "*.fastq", "*.bam" and NOT "*.sam" etc. tuple val(meta), path(count_table) output: diff --git a/nextflow.config b/nextflow.config index 4b01987c..bf675e5f 100644 --- a/nextflow.config +++ b/nextflow.config @@ -21,6 +21,8 @@ params { count_table = null min_reads = 30 min_targeted_genes = 3 + bagel_reference_essentials = 'https://raw.githubusercontent.com/hart-lab/bagel/master/CEGv2.txt' + bagel_reference_nonessentials = 'https://raw.githubusercontent.com/hart-lab/bagel/master/NEGv1.txt' // Pipeline steps overrepresented = false diff --git a/nextflow_schema.json b/nextflow_schema.json index c75c5a2d..c5774253 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -186,12 +186,22 @@ "min_reads": { "type": "number", "description": "a filter threshold value for sgRNAs, based on their average counts in the control sample", - "default": 30 + "default": 30.0 }, "min_targeted_genes": { "type": "number", "description": "Minimal number of different genes targeted by sgRNAs in a biased segment in order for the corresponding counts to be corrected for CRISPRcleanR", - "default": 3 + "default": 3.0 + }, + "bagel_reference_essentials": { + "type": "string", + "description": "Core essential gene set for BAGEL2", + "default": "https://github.com/hart-lab/bagel/blob/master/CEGv2.txt" + }, + "bagel_reference_nonessentials": { + "type": "string", + "description": "Non essential gene set for BAGEL2", + "default": "https://github.com/hart-lab/bagel/blob/master/NEGv1.txt" } } }, @@ -450,21 +460,12 @@ { "$ref": "#/definitions/umi_parameters" }, - { - "$ref": "#/definitions/targeted_pipeline_steps" - }, - { - "$ref": "#/definitions/umi_parameters" - }, { "$ref": "#/definitions/targeted_parameters" }, { "$ref": "#/definitions/vsearch_parameters" }, - { - "$ref": "#/definitions/vsearch_parameters" - }, { "$ref": "#/definitions/screening_parameters" }, diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index e0e9e478..129c1229 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -67,6 +67,7 @@ include { MAGECK_TEST } from '../modules/nf-core/mageck/test/mai include { CUSTOM_DUMPSOFTWAREVERSIONS } from '../modules/nf-core/custom/dumpsoftwareversions/main' include { CRISPRCLEANR_NORMALIZE } from '../modules/nf-core/crisprcleanr/normalize/main' include { BAGEL2_FC } from '../modules/local/bagel2_fc' +include { BAGEL2_BF } from '../modules/local/bagel2_bf' /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -85,17 +86,19 @@ workflow CRISPRSEQ_SCREENING { // // Create input channel from input file provided through params.input // + single_end = true Channel.fromSamplesheet("input") .map{ meta, fastq_1, fastq_2, x, y, z -> // x (reference), y (protospacer), and z (template) are part of the targeted workflows and we don't need them if (!fastq_2) { + single_end = true return [ meta, [ fastq_1 ] ] } else { + single_end = false return [ meta, [ fastq_1, fastq_2 ] ] } } .set { ch_input } - // // MODULE: Run FastQC // @@ -104,6 +107,7 @@ workflow CRISPRSEQ_SCREENING { ) ch_versions = ch_versions.mix(FASTQC.out.versions.first()) + if(single_end==true) { ch_input .map { meta, fastq -> [meta.condition, fastq] @@ -116,6 +120,10 @@ workflow CRISPRSEQ_SCREENING { } .set { joined } + joined.dump(tag: "input joined") + } + + // // MODULE: Run mageck count // @@ -167,12 +175,30 @@ workflow CRISPRSEQ_SCREENING { .set { ch_bagel } counts = ch_bagel.combine(ch_counts) + if(!params.bagel_reference_essentials) { + ch_bagel_reference_essentials = Channel.fromPath("${projectDir}/assets/CEGv2.txt", checkIfExists: true) + } + + ch_bagel_reference_essentials.dump(tag: "input joined") + + if(!params.bagel_reference_nonessentials) { + ch_bagel_reference_nonessentials = Channel.fromPath("${projectDir}/assets/NEGv1.txt", checkIfExists: true) + } + + BAGEL2_FC ( - counts + counts, + ch_bagel_reference_essentials, + ch_bagel_reference_nonessentials ) } + //BAGEL2_BF ( + // BAGEL2_FC.out.foldchange + //) + + if(params.mle_design_matrix) { ch_mle = ch_counts.combine(ch_design) ch_mle.map { From 8a888035d1b9197ae4b8ce0e1880c7ac25e670ea Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Fri, 28 Jul 2023 16:01:57 +0200 Subject: [PATCH 026/133] Adding bagel2_bf --- assets/NEGv1.txt | 930 ++++++++++++++++++++++++++++++- modules/local/bagel2_bf.nf | 2 +- modules/local/bagel2_fc.nf | 2 +- workflows/crisprseq_screening.nf | 29 +- 4 files changed, 950 insertions(+), 13 deletions(-) diff --git a/assets/NEGv1.txt b/assets/NEGv1.txt index 32701540..96401816 100644 --- a/assets/NEGv1.txt +++ b/assets/NEGv1.txt @@ -1 +1,929 @@ -{"payload":{"allShortcutsEnabled":false,"fileTree":{"":{"items":[{"name":"archive","path":"archive","contentType":"directory"},{"name":"data","path":"data","contentType":"directory"},{"name":"pipeline-script-example","path":"pipeline-script-example","contentType":"directory"},{"name":"BAGEL-v2-tutorial.html","path":"BAGEL-v2-tutorial.html","contentType":"file"},{"name":"BAGEL.py","path":"BAGEL.py","contentType":"file"},{"name":"CEG_mouse.txt","path":"CEG_mouse.txt","contentType":"file"},{"name":"CEGv2.txt","path":"CEGv2.txt","contentType":"file"},{"name":"LICENSE","path":"LICENSE","contentType":"file"},{"name":"NEG_mouse.txt","path":"NEG_mouse.txt","contentType":"file"},{"name":"NEGv1.txt","path":"NEGv1.txt","contentType":"file"},{"name":"Network_STRING_v10.txt","path":"Network_STRING_v10.txt","contentType":"file"},{"name":"README.md","path":"README.md","contentType":"file"},{"name":"pan-species-control-essentials-50genes.txt","path":"pan-species-control-essentials-50genes.txt","contentType":"file"},{"name":"pan-species-control-nonessentials-50genes.txt","path":"pan-species-control-nonessentials-50genes.txt","contentType":"file"},{"name":"precalc_library_alignment_info.py","path":"precalc_library_alignment_info.py","contentType":"file"},{"name":"reads_hap1.txt","path":"reads_hap1.txt","contentType":"file"}],"totalCount":16}},"fileTreeProcessingTime":2.2530900000000003,"foldersToFetch":[],"reducedMotionEnabled":null,"repo":{"id":93685947,"defaultBranch":"master","name":"bagel","ownerLogin":"hart-lab","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2017-06-07T22:46:04.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/29264780?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"master","listCacheKey":"v0:1609982357.0","canEdit":false,"refType":"branch","currentOid":"53388adbb4fb0931e5c9dda135502be19e4555f0"},"path":"NEGv1.txt","currentUser":null,"blob":{"rawLines":["GENE\tHGNC_ID\tENTREZ_ID","ABCG8\tHGNC:13887\t64241","ACCSL\tHGNC:34391\t390110","ACTL7A\tHGNC:161\t10881","ACTL7B\tHGNC:162\t10880","ACTL9\tHGNC:28494\t284382","ACTRT1\tHGNC:24027\t139741","ADAD1\tHGNC:30713\t132612","ADAM18\tHGNC:196\t8749","ADAM2\tHGNC:198\t2515","ADAM20\tHGNC:199\t8748","ADAM30\tHGNC:208\t11085","ADH7\tHGNC:256\t131","AFM\tHGNC:316\t173","AICDA\tHGNC:13203\t57379","AIPL1\tHGNC:359\t23746","ALPI\tHGNC:437\t248","ALPG\tHGNC:441\t251","ALX3\tHGNC:449\t257","AMELX\tHGNC:461\t265","ANKRD30A\tHGNC:17234\t91074","ANKRD60\tHGNC:16217\t140731","ANTXRL\tHGNC:27277\t195977","APOA4\tHGNC:602\t337","APOBEC1\tHGNC:604\t339","APOF\tHGNC:615\t319","AQP12A\tHGNC:19941\t375318","AQP8\tHGNC:642\t343","ARGFX\tHGNC:30146\t503582","ART1\tHGNC:723\t417","ASB17\tHGNC:19769\t127247","ASIC5\tHGNC:17537\t51802","ASZ1\tHGNC:1350\t136991","ATOH1\tHGNC:797\t474","ATP4B\tHGNC:820\t496","ATP6V1G3\tHGNC:18265\t127124","AWAT1\tHGNC:23252\t158833","AWAT2\tHGNC:23251\t158835","B3GNT6\tHGNC:24141\t192134","BANF2\tHGNC:16172\t140836","BARHL1\tHGNC:953\t56751","BEND2\tHGNC:28509\t139105","BHLHE23\tHGNC:16093\t128408","BIRC8\tHGNC:14878\t112401","BMP10\tHGNC:20869\t27302","BMP15\tHGNC:1068\t9210","BPIFA1\tHGNC:15749\t51297","BPIFA3\tHGNC:16204\t128861","BPIFB3\tHGNC:16178\t359710","BPIFB6\tHGNC:16504\t128859","BPIFC\tHGNC:16503\t254240","BPY2\tHGNC:13508\t9083","BRDT\tHGNC:1105\t676","BSND\tHGNC:16512\t7809","C10orf113\tHGNC:31447\t387638","C10orf120\tHGNC:25707\t399814","C10orf53\tHGNC:27421\t282966","C11orf40\tHGNC:23986\t143501","C12orf40\tHGNC:26846\t283461","C14orf183\tHGNC:27285\t196913","NUTM1\tHGNC:29919\t256646","C16orf78\tHGNC:28479\t123970","C17orf102\tHGNC:34412\t400591","C17orf78\tHGNC:26831\t284099","DYNAP\tHGNC:26808\t284254","TEX45\tHGNC:24745\t374877","C1orf146\tHGNC:24032\t388649","C20orf173\tHGNC:16166\t140873","C20orf203\tHGNC:26592\t284805","SCP2D1\tHGNC:16211\t140856","TEX44\tHGNC:28563\t165100","STPG4\tHGNC:26850\t285051","PCARE\tHGNC:34383\t388939","C2orf83\tHGNC:25344\t56918","C3orf30\tHGNC:26553\t152405","PRR27\tHGNC:33193\t401137","DCANP1\tHGNC:24459\t140947","C6orf10\tHGNC:13922\t10665","C7orf66\tHGNC:33712\t154907","C7orf71\tHGNC:22364\t285941","C8A\tHGNC:1352\t731","C8B\tHGNC:1353\t732","C8orf17\tHGNC:17737\t100507249","C8orf86\tHGNC:33774\t389649","C9orf53\tHGNC:23831\t51198","CABP2\tHGNC:1385\t51475","CABP5\tHGNC:13714\t56344","CABS1\tHGNC:30710\t85438","CACNG2\tHGNC:1406\t10369","CACNG3\tHGNC:1407\t10368","CACNG5\tHGNC:1409\t27091","CATSPER4\tHGNC:23220\t378807","CCDC155\tHGNC:26520\t147872","CCDC172\tHGNC:30524\t374355","CCDC83\tHGNC:28535\t220047","CCKAR\tHGNC:1570\t886","CCL1\tHGNC:10609\t6346","CCT8L2\tHGNC:15553\t150160","CD200R1L\tHGNC:24665\t344807","CDCP2\tHGNC:27297\t200008","CDX2\tHGNC:1806\t1045","CDX4\tHGNC:1808\t1046","CDY1\tHGNC:1809\t9085","CDY1B\tHGNC:23920\t253175","CDY2A\tHGNC:1810\t9426","CDY2B\tHGNC:23921\t203611","CEACAM7\tHGNC:1819\t1087","CELA2A\tHGNC:24609\t63036","CELA3A\tHGNC:15944\t10136","CELA3B\tHGNC:15945\t23436","CER1\tHGNC:1862\t9350","CETN1\tHGNC:1866\t1068","CFHR2\tHGNC:4890\t3080","CFHR5\tHGNC:24668\t81494","CHAT\tHGNC:1912\t1103","CHRNA6\tHGNC:15963\t8973","CHRNB3\tHGNC:1963\t1142","CLCA1\tHGNC:2015\t1179","CLDN17\tHGNC:2038\t26285","CLEC2A\tHGNC:24191\t387836","CLEC3A\tHGNC:2052\t10143","CLEC6A\tHGNC:14556\t93978","CLRN1\tHGNC:12605\t7401","CNBD1\tHGNC:26663\t168975","CNGA2\tHGNC:2149\t1260","CNGB3\tHGNC:2153\t54714","CNPY1\tHGNC:27786\t285888","CNTNAP5\tHGNC:18748\t129684","COL20A1\tHGNC:14670\t57642","COX7B2\tHGNC:24381\t170712","CPXCR1\tHGNC:2332\t53336","CRNN\tHGNC:1230\t49860","CRX\tHGNC:2383\t1406","CRYGB\tHGNC:2409\t1419","CSH1\tHGNC:2440\t1442","CSHL1\tHGNC:2442\t1444","CSN2\tHGNC:2447\t1447","CSN3\tHGNC:2446\t1448","CST11\tHGNC:15959\t140880","CST4\tHGNC:2476\t1472","CST5\tHGNC:2477\t1473","CST8\tHGNC:2480\t10047","CST9\tHGNC:13261\t128822","CST9L\tHGNC:16233\t128821","CSTL1\tHGNC:15958\t128817","CT45A2\tHGNC:28400\t728911","CT45A4\tHGNC:33269\t","CT45A5\tHGNC:33270\t441521","CT47A11\tHGNC:27397\t255313","CTCFL\tHGNC:16234\t140690","CTRB1\tHGNC:2521\t1504","CXorf1\tHGNC:2562\t","CXorf66\tHGNC:33743\t347487","CYLC2\tHGNC:2583\t1539","CYP11B1\tHGNC:2591\t1584","CYP11B2\tHGNC:2592\t1585","CYP26C1\tHGNC:20577\t340665","CYP2A13\tHGNC:2608\t1553","CYP2C19\tHGNC:2621\t1557","CYP4A22\tHGNC:20575\t284541","CYP4F8\tHGNC:2648\t11283","CYP7A1\tHGNC:2651\t1581","DAZ1\tHGNC:2682\t1617","DAZ2\tHGNC:15964\t57055","DAZ3\tHGNC:15965\t57054","DAZ4\tHGNC:15966\t57135","DAZL\tHGNC:2685\t1618","DCAF4L2\tHGNC:26657\t138009","DCAF8L1\tHGNC:31810\t139425","DDI1\tHGNC:18961\t414301","DDX4\tHGNC:18700\t54514","DEFA5\tHGNC:2764\t1670","DEFA6\tHGNC:2765\t1671","DEFB103B\tHGNC:31702\t55894","DEFB104A\tHGNC:18115\t140596","DEFB106A\tHGNC:18088\t245909","DEFB107A\tHGNC:18086\t245910","DEFB118\tHGNC:16196\t117285","DEFB123\tHGNC:18103\t245936","DEFB126\tHGNC:15900\t81623","DEFB127\tHGNC:16206\t140850","DEFB129\tHGNC:16218\t140881","DGAT2L6\tHGNC:23250\t347516","DGKK\tHGNC:32395\t139189","DIRC1\tHGNC:15760\t116093","DMP1\tHGNC:2932\t1758","DMRT1\tHGNC:2934\t1761","DMRTB1\tHGNC:13913\t63948","DMRTC2\tHGNC:13911\t63946","MUCL3\tHGNC:21666\t135656","DPRX\tHGNC:32166\t503834","DRD3\tHGNC:3024\t1814","DRGX\tHGNC:21536\t644168","DSCR4\tHGNC:3045\t10281","DSG4\tHGNC:21307\t147409","DSPP\tHGNC:3054\t1834","DTX2\tHGNC:15973\t113878","DUSP21\tHGNC:20476\t63904","DUX4\tHGNC:50800\t100288687","DUX4L7\tHGNC:37266\t653543","DUXA\tHGNC:32179\t503835","EFCAB3\tHGNC:26379\t146779","EGR4\tHGNC:3241\t1961","ENTHD1\tHGNC:26352\t150350","ESX1\tHGNC:14865\t80712","EVX1\tHGNC:3506\t2128","F13B\tHGNC:3534\t2165","F9\tHGNC:3551\t2158","FABP2\tHGNC:3556\t2169","FAM106A\tHGNC:25682\t80039","FAM47A\tHGNC:29962\t158724","FAM47B\tHGNC:26659\t170062","FAM47C\tHGNC:25301\t442444","FAM71A\tHGNC:26541\t149647","FAM71B\tHGNC:28397\t153745","FAM71C\tHGNC:28594\t196472","SPATA31A7\tHGNC:32007\t26165","SPATA31D1\tHGNC:37283\t389763","FCRL4\tHGNC:18507\t83417","FEZF1\tHGNC:22788\t389549","FEZF2\tHGNC:13506\t55079","FFAR1\tHGNC:4498\t2864","FGF3\tHGNC:3681\t2248","FGF4\tHGNC:3682\t2249","FGF6\tHGNC:3684\t2251","FIGLA\tHGNC:24669\t344018","FLG2\tHGNC:33276\t388698","FMR1NB\tHGNC:26372\t158521","FNDC7\tHGNC:26668\t163479","FNDC9\tHGNC:33547\t408263","FOXB1\tHGNC:3799\t27023","FOXB2\tHGNC:23315\t442425","FOXD4L3\tHGNC:18523\t286380","FOXD4L4\tHGNC:23762\t349334","FOXE3\tHGNC:3808\t2301","FOXN1\tHGNC:12765\t8456","FOXR1\tHGNC:29980\t283150","FRG2\tHGNC:19136\t448831","FRMD7\tHGNC:8079\t90167","FSCB\tHGNC:20494\t84075","FUT5\tHGNC:4016\t2527","FUT9\tHGNC:4020\t10690","G6PC\tHGNC:4056\t2538","GABRA1\tHGNC:4075\t2554","GABRA6\tHGNC:4080\t2559","GAGE1\tHGNC:4098\t2543","GAGE2C\tHGNC:31958\t2574","GALNTL5\tHGNC:21725\t168391","GALR1\tHGNC:4132\t2587","GALR3\tHGNC:4134\t8484","GBP7\tHGNC:29606\t388646","GCG\tHGNC:4191\t2641","GCM2\tHGNC:4198\t9247","GDF2\tHGNC:4217\t2658","GFRA4\tHGNC:13821\t64096","GFRAL\tHGNC:32789\t389400","GH2\tHGNC:4262\t2689","GHRH\tHGNC:4265\t2691","GHSR\tHGNC:4267\t2693","GIF\tHGNC:4268\t2694","GJA9\tHGNC:19155\t81025","GJA8\tHGNC:4281\t2703","GK2\tHGNC:4291\t2712","GKN2\tHGNC:24588\t200504","GLRA1\tHGNC:4326\t2741","GLRA2\tHGNC:4327\t2742","GLT6D1\tHGNC:23671\t360203","GML\tHGNC:4375\t2765","GOLGA6L2\tHGNC:26695\t283685","GOT1L1\tHGNC:28487\t137362","GPR101\tHGNC:14963\t83550","GPR111\tHGNC:18991\t222611","GPR119\tHGNC:19060\t139760","ADGRG7\tHGNC:19241\t84873","GPR139\tHGNC:19995\t124274","GPR144\tHGNC:18651\t347088","GPR148\tHGNC:23623\t344561","GPR151\tHGNC:23624\t134391","GPR152\tHGNC:23622\t390212","GPR26\tHGNC:4481\t2849","GPR31\tHGNC:4486\t2853","GPR32\tHGNC:4487\t2854","GPR45\tHGNC:4503\t11250","GPR50\tHGNC:4506\t9248","GPR52\tHGNC:4508\t9293","GPR78\tHGNC:4528\t27201","GPRC6A\tHGNC:18510\t222545","GPX5\tHGNC:4557\t2880","GPX6\tHGNC:4558\t257202","GRK1\tHGNC:10013\t6011","GRM4\tHGNC:4596\t2914","GRM5\tHGNC:4597\t2915","GRM6\tHGNC:4598\t2916","GSC2\tHGNC:4613\t2928","GSTA5\tHGNC:19662\t221357","GSX1\tHGNC:20374\t219409","GSX2\tHGNC:24959\t170825","GUCA2A\tHGNC:4682\t2980","GUCY2F\tHGNC:4691\t2986","H1FOO\tHGNC:18463\t132243","H2BFM\tHGNC:27867\t286436","H2BFWT\tHGNC:27252\t158983","HAO1\tHGNC:4809\t54363","HCRTR2\tHGNC:4849\t3062","HDGFL1\tHGNC:21095\t154150","HHLA1\tHGNC:4904\t10086","HIST1H2AA\tHGNC:18729\t221613","HIST1H2BA\tHGNC:18730\t255626","HIST1H4G\tHGNC:4792\t8369","HMX1\tHGNC:5017\t3166","HOXB1\tHGNC:5111\t3211","HOXD12\tHGNC:5135\t3238","HRG\tHGNC:5181\t3273","HRH3\tHGNC:5184\t11255","HSFY1\tHGNC:18568\t86614","HSFY2\tHGNC:23950\t159119","HTN3\tHGNC:5284\t3347","HTR1A\tHGNC:5286\t3350","HTR2C\tHGNC:5295\t3358","HTR3C\tHGNC:24003\t170572","HTR3D\tHGNC:24004\t200909","HTR3E\tHGNC:24005\t285242","HTR5A\tHGNC:5300\t3361","HTR6\tHGNC:5301\t3362","IAPP\tHGNC:5329\t3375","IFIT1B\tHGNC:23442\t439996","IFNA10\tHGNC:5418\t3446","IFNA14\tHGNC:5420\t3448","IFNA16\tHGNC:5421\t3449","IFNA17\tHGNC:5422\t3451","IFNA2\tHGNC:5423\t3440","IFNA21\tHGNC:5424\t3452","IFNA4\tHGNC:5425\t3441","IFNA5\tHGNC:5426\t3442","IFNA6\tHGNC:5427\t3443","IFNA7\tHGNC:5428\t3444","IFNA8\tHGNC:5429\t3445","IFNB1\tHGNC:5434\t3456","IFNK\tHGNC:21714\t56832","IFNW1\tHGNC:5448\t3467","IL12B\tHGNC:5970\t3593","IL13\tHGNC:5973\t3596","IL17A\tHGNC:5981\t3605","IL17F\tHGNC:16404\t112744","IL1F10\tHGNC:15552\t84639","IL21\tHGNC:6005\t59067","IL22\tHGNC:14900\t50616","IL25\tHGNC:13765\t64806","IL26\tHGNC:17119\t55801","IFNL2\tHGNC:18364\t282616","IFNL3\tHGNC:18365\t282617","IFNL1\tHGNC:18363\t282618","IL3\tHGNC:6011\t3562","IL31\tHGNC:19372\t386653","IL36A\tHGNC:15562\t27179","IL36B\tHGNC:15564\t27177","IL36RN\tHGNC:15561\t26525","IL9\tHGNC:6029\t3578","INS\tHGNC:6081\t3630","INSL5\tHGNC:6088\t10022","INSL6\tHGNC:6089\t11172","INSM2\tHGNC:17539\t84684","INSRR\tHGNC:6093\t3645","IQCF1\tHGNC:28607\t132141","IRGC\tHGNC:28835\t56269","ISX\tHGNC:28084\t91464","ITIH6\tHGNC:28907\t347365","IZUMO2\tHGNC:28518\t126123","KCNA10\tHGNC:6219\t3744","KCNB2\tHGNC:6232\t9312","KCNG4\tHGNC:19697\t93107","KCNK10\tHGNC:6273\t54207","KCNK16\tHGNC:14464\t83795","KCNK18\tHGNC:19439\t338567","KCNV1\tHGNC:18861\t27012","KHDC3L\tHGNC:33699\t154288","KIF2B\tHGNC:29443\t84643","KIR2DL1\tHGNC:6329\t3802","KIR3DL3\tHGNC:16312\t115653","KLK12\tHGNC:6360\t43849","KLK9\tHGNC:6370\t284366","KRT2\tHGNC:6439\t3849","KRT25\tHGNC:30839\t147183","KRT26\tHGNC:30840\t353288","KRT28\tHGNC:30842\t162605","KRT33A\tHGNC:6450\t3883","KRT35\tHGNC:6453\t3886","KRT36\tHGNC:6454\t8689","KRT37\tHGNC:6455\t8688","KRT38\tHGNC:6456\t8687","KRT40\tHGNC:26707\t125115","KRT71\tHGNC:28927\t112802","KRT73\tHGNC:28928\t319101","KRT74\tHGNC:28929\t121391","KRT75\tHGNC:24431\t9119","KRT76\tHGNC:24430\t51350","KRT77\tHGNC:20411\t374454","KRT78\tHGNC:28926\t196374","KRT82\tHGNC:6459\t3888","KRT84\tHGNC:6461\t3890","KRT85\tHGNC:6462\t3891","KRT86\tHGNC:6463\t3892","KRT9\tHGNC:6447\t3857","KRTAP1-1\tHGNC:16772\t81851","KRTAP10-1\tHGNC:22966\t386677","KRTAP10-10\tHGNC:22972\t353333","KRTAP10-11\tHGNC:20528\t386678","KRTAP10-12\tHGNC:20533\t386685","KRTAP10-2\tHGNC:22967\t386679","KRTAP10-4\tHGNC:20521\t386672","KRTAP10-5\tHGNC:22969\t386680","KRTAP10-6\tHGNC:20523\t386674","KRTAP10-7\tHGNC:22970\t386675","KRTAP10-8\tHGNC:20525\t386681","KRTAP10-9\tHGNC:22971\t386676","KRTAP11-1\tHGNC:18922\t337880","KRTAP13-1\tHGNC:18924\t140258","KRTAP13-2\tHGNC:18923\t337959","KRTAP13-3\tHGNC:18925\t337960","KRTAP13-4\tHGNC:18926\t284827","KRTAP15-1\tHGNC:18927\t254950","KRTAP17-1\tHGNC:18917\t83902","KRTAP19-3\tHGNC:18938\t337970","KRTAP23-1\tHGNC:18928\t337963","KRTAP26-1\tHGNC:33760\t388818","KRTAP3-2\tHGNC:16779\t83897","KRTAP4-11\tHGNC:18911\t653240","KRTAP4-12\tHGNC:16776\t83755","KRTAP4-2\tHGNC:18900\t85291","KRTAP4-4\tHGNC:16928\t84616","KRTAP4-7\tHGNC:18898\t100132476","KRTAP5-2\tHGNC:23597\t440021","KRTAP9-2\tHGNC:16926\t83899","KRTAP9-3\tHGNC:16927\t83900","KRTAP9-4\tHGNC:18902\t85280","LALBA\tHGNC:6480\t3906","LBX1\tHGNC:16960\t10660","LCN9\tHGNC:17442\t392399","LCT\tHGNC:6530\t3938","LGALS13\tHGNC:15449\t29124","LGALS14\tHGNC:30054\t56891","LHFPL5\tHGNC:21253\t222662","LHX3\tHGNC:6595\t8022","LHX5\tHGNC:14216\t64211","LIM2\tHGNC:6610\t3982","LIN28A\tHGNC:15986\t79727","LIPM\tHGNC:23455\t340654","LOR\tHGNC:6663\t4014","LRIT1\tHGNC:23404\t26103","LRIT2\tHGNC:23443\t340745","LRRC10\tHGNC:20264\t376132","LUZP4\tHGNC:24971\t51213","LYZL1\tHGNC:30502\t84569","LYZL2\tHGNC:29613\t119180","LYZL6\tHGNC:29614\t57151","MAGEA10\tHGNC:6797\t4109","MAGEA11\tHGNC:6798\t4110","MAGEB1\tHGNC:6808\t4112","MAGEB10\tHGNC:25377\t139422","MAGEB18\tHGNC:28515\t286514","MAGEB3\tHGNC:6810\t4114","MAGEB4\tHGNC:6811\t4115","MAGEC3\tHGNC:23798\t139081","MAS1\tHGNC:6899\t4142","MAS1L\tHGNC:13961\t116511","MBD3L1\tHGNC:15774\t85509","MBD3L2\tHGNC:18532\t125997","MBL2\tHGNC:6922\t4153","MC2R\tHGNC:6930\t4158","MC3R\tHGNC:6931\t4159","MC5R\tHGNC:6933\t4161","MEP1A\tHGNC:7015\t4224","MEP1B\tHGNC:7020\t4225","MEPE\tHGNC:13361\t56955","MFRP\tHGNC:18121\t83552","MMD2\tHGNC:30133\t221938","MMP20\tHGNC:7167\t9313","MMP21\tHGNC:7170\t8511","MMP26\tHGNC:14249\t56547","MMP27\tHGNC:14250\t64066","MOGAT3\tHGNC:23249\t346606","MORC1\tHGNC:7198\t27136","MRGPRD\tHGNC:29626\t116512","MRGPRX1\tHGNC:17962\t259249","MRGPRX2\tHGNC:17983\t117194","MRGPRX4\tHGNC:17617\t117196","MS4A10\tHGNC:13368\t341116","MS4A13\tHGNC:16674\t503497","MS4A5\tHGNC:13374\t64232","MSGN1\tHGNC:14907\t343930","MT1B\tHGNC:7394\t4490","MTNR1B\tHGNC:7464\t4544","MUC17\tHGNC:16800\t140453","MUC7\tHGNC:7518\t4589","MYBPC3\tHGNC:7551\t4607","MYF5\tHGNC:7565\t4617","NANOGNB\tHGNC:24958\t360030","NANOS2\tHGNC:23292\t339345","NCR2\tHGNC:6732\t9436","NDST4\tHGNC:20779\t64579","NEUROD2\tHGNC:7763\t4761","NEUROD4\tHGNC:13802\t58158","NEUROD6\tHGNC:13804\t63974","NEUROG1\tHGNC:7764\t4762","NKX2-1\tHGNC:11825\t7080","NKX2-2\tHGNC:7835\t4821","NLRP4\tHGNC:22943\t147945","NLRP5\tHGNC:21269\t126206","NLRP8\tHGNC:22940\t126205","NLRP9\tHGNC:22941\t338321","NMS\tHGNC:32203\t129521","NOBOX\tHGNC:22448\t135935","NOTO\tHGNC:31839\t344022","NOX3\tHGNC:7890\t50508","NPFFR1\tHGNC:17425\t64106","NPHS2\tHGNC:13394\t7827","NPSR1\tHGNC:23631\t387129","NPVF\tHGNC:13782\t64111","NR2E1\tHGNC:7973\t7101","NYX\tHGNC:8082\t60506","OC90\tHGNC:8100\t729330","OLIG2\tHGNC:9398\t10215","OLIG3\tHGNC:18003\t167826","OPALIN\tHGNC:20707\t93377","OPN1LW\tHGNC:9936\t5956","OPN5\tHGNC:19992\t221391","OR10A2\tHGNC:8161\t341276","OR10A4\tHGNC:15130\t283297","OR10A5\tHGNC:15131\t144124","OR10H1\tHGNC:8172\t26539","OR10H2\tHGNC:8173\t26538","OR10H3\tHGNC:8174\t26532","OR10J1\tHGNC:8175\t26476","OR10R2\tHGNC:14820\t343406","OR10S1\tHGNC:14807\t219873","OR10X1\tHGNC:14995\t128367","OR10Z1\tHGNC:14996\t128368","OR11A1\tHGNC:8176\t26531","OR12D2\tHGNC:8178\t26529","OR12D3\tHGNC:13963\t81797","OR13C3\tHGNC:14704\t138803","OR13D1\tHGNC:14695\t286365","OR14A16\tHGNC:15022\t284532","OR1A1\tHGNC:8179\t8383","OR1A2\tHGNC:8180\t26189","OR1B1\tHGNC:8181\t347169","OR1D2\tHGNC:8183\t4991","OR1E1\tHGNC:8189\t8387","OR1E2\tHGNC:8190\t8388","OR1G1\tHGNC:8204\t8390","OR1L6\tHGNC:8218\t392390","OR1N2\tHGNC:15111\t138882","OR1S1\tHGNC:8227\t219959","OR1S2\tHGNC:15141\t219958","OR2AK2\tHGNC:19569\t391191","OR2AT4\tHGNC:19620\t341152","OR2C1\tHGNC:8242\t4993","OR2C3\tHGNC:15005\t81472","OR2D2\tHGNC:8244\t120776","OR2D3\tHGNC:15146\t120775","OR2F1\tHGNC:8246\t26211","OR2G2\tHGNC:15007\t81470","OR2G3\tHGNC:15008\t81469","OR2H1\tHGNC:8252\t26716","OR2J2\tHGNC:8260\t26707","OR2L3\tHGNC:15009\t391192","OR2T1\tHGNC:8277\t26696","OR2T10\tHGNC:19573\t127069","OR2T12\tHGNC:19592\t127064","OR2T2\tHGNC:14725\t401992","OR2T27\tHGNC:31252\t403239","OR2T33\tHGNC:31255\t391195","OR2T4\tHGNC:15016\t127074","OR2T5\tHGNC:15017\t401993","OR2W1\tHGNC:8281\t26692","OR3A1\tHGNC:8282\t4994","OR3A2\tHGNC:8283\t4995","OR3A3\tHGNC:8284\t8392","OR4C11\tHGNC:15167\t219429","OR4C3\tHGNC:14697\t256144","OR4D1\tHGNC:8293\t26689","OR4D10\tHGNC:15173\t390197","OR4D11\tHGNC:15174\t219986","OR4D9\tHGNC:15178\t390199","OR4K17\tHGNC:15355\t390436","OR51B6\tHGNC:19600\t390058","OR51D1\tHGNC:15193\t390038","OR51F2\tHGNC:15197\t119694","OR51T1\tHGNC:15205\t401665","OR51V1\tHGNC:19597\t283111","OR52A1\tHGNC:8318\t23538","OR52A5\tHGNC:19580\t390054","OR52B2\tHGNC:15207\t255725","OR52B6\tHGNC:15211\t340980","OR52E8\tHGNC:15217\t390079","OR52I2\tHGNC:15221\t143502","OR52K2\tHGNC:15223\t119774","OR52L1\tHGNC:14785\t338751","OR52M1\tHGNC:15225\t119772","OR52R1\tHGNC:15235\t119695","OR52W1\tHGNC:15239\t120787","OR56A1\tHGNC:14781\t120796","OR56A4\tHGNC:14791\t120793","OR56B1\tHGNC:15245\t387748","OR5AU1\tHGNC:15362\t390445","OR5C1\tHGNC:8331\t392391","OR5I1\tHGNC:8347\t10798","OR5M1\tHGNC:8352\t390168","OR5M10\tHGNC:15290\t390167","OR5P2\tHGNC:14783\t120065","OR5P3\tHGNC:14784\t120066","OR5R1\tHGNC:14841\t219479","OR5T1\tHGNC:14821\t390155","OR5T2\tHGNC:15296\t219464","OR5T3\tHGNC:15297\t390154","OR5V1\tHGNC:13972\t81696","OR5W2\tHGNC:15299\t390148","OR6A2\tHGNC:15301\t8590","OR6K6\tHGNC:15033\t128371","OR6S1\tHGNC:15363\t341799","OR6V1\tHGNC:15090\t346517","OR7A17\tHGNC:8363\t26333","OR7C2\tHGNC:8374\t26658","OR7D4\tHGNC:8380\t125958","OR7G2\tHGNC:8466\t390882","OR8A1\tHGNC:8469\t390275","OR8B8\tHGNC:8477\t26493","OR8G5\tHGNC:19622\t219865","OR8U1\tHGNC:19611\t219417","OR9Q2\tHGNC:15328\t219957","OTOP1\tHGNC:19656\t133060","OTOP3\tHGNC:19658\t347741","OTOR\tHGNC:8517\t56914","OTP\tHGNC:8518\t23440","OTUD6A\tHGNC:32312\t139562","OTX2\tHGNC:8522\t5015","PAGE3\tHGNC:4110\t139793","PANX3\tHGNC:20573\t116337","PASD1\tHGNC:20686\t139135","PAX1\tHGNC:8615\t5075","PAX4\tHGNC:8618\t5078","PBOV1\tHGNC:21079\t59351","PDCL2\tHGNC:29524\t132954","PDE6H\tHGNC:8790\t5149","PDILT\tHGNC:27338\t204474","PDX1\tHGNC:6107\t3651","PDYN\tHGNC:8820\t5173","PGK2\tHGNC:8898\t5232","PGLYRP2\tHGNC:30013\t114770","PGLYRP3\tHGNC:30014\t114771","PIWIL1\tHGNC:9007\t9271","PIWIL3\tHGNC:18443\t440822","PKD1L3\tHGNC:21716\t342372","PLA2G2E\tHGNC:13414\t30814","PLA2G2F\tHGNC:30040\t64600","PLA2G4E\tHGNC:24791\t123745","OOSP2\tHGNC:26699\t219990","PNLIP\tHGNC:9155\t5406","PNLIPRP1\tHGNC:9156\t5407","PNLIPRP2\tHGNC:9157\t5408","PNPLA5\tHGNC:24888\t150379","POM121L12\tHGNC:25369\t285877","POTEA\tHGNC:33893\t340441","POTED\tHGNC:23822\t317754","POTEG\tHGNC:33896\t404785","POTEH\tHGNC:133\t23784","POU3F4\tHGNC:9217\t5456","POU4F2\tHGNC:9219\t5458","POU4F3\tHGNC:9220\t5459","POU5F2\tHGNC:26367\t134187","PPP3R2\tHGNC:9318\t5535","PRAMEF1\tHGNC:28840\t65121","PRAMEF19\tHGNC:24908\t645414","PRAMEF2\tHGNC:28841\t65122","PRAMEF3\tHGNC:14087\t","PRAMEF4\tHGNC:31971\t400735","PRAMEF7\tHGNC:28415\t441871","PRB1\tHGNC:9337\t5542","PRB4\tHGNC:9340\t5545","PRDM13\tHGNC:13998\t59336","PRDM14\tHGNC:14001\t63978","PRDM7\tHGNC:9351\t11105","PRDM9\tHGNC:13994\t56979","PRG3\tHGNC:9363\t10394","PRLH\tHGNC:17945\t51052","PRLHR\tHGNC:4464\t2834","PROP1\tHGNC:9455\t5626","PRSS33\tHGNC:30405\t260429","PRSS37\tHGNC:29211\t136242","PRSS38\tHGNC:29625\t339501","PRSS41\tHGNC:30715\t360226","PRSS55\tHGNC:30824\t203074","PRSS58\tHGNC:39125\t136541","PRY2\tHGNC:21504\t442862","PSKH2\tHGNC:18997\t85481","PTF1A\tHGNC:23734\t256297","RAX\tHGNC:18662\t30062","RAX2\tHGNC:18286\t84839","RBM46\tHGNC:28401\t166863","RBMXL2\tHGNC:17886\t27288","RBMY1A1\tHGNC:9912\t5940","RBMY1B\tHGNC:23914\t378948","RBMY1D\tHGNC:23915\t378949","RBMY1E\tHGNC:23916\t378950","RBMY1F\tHGNC:23974\t159163","RBMY1J\tHGNC:23917\t378951","RBP3\tHGNC:9921\t5949","RBPJL\tHGNC:13761\t11317","RD3\tHGNC:19689\t343035","RDH8\tHGNC:14423\t50700","REG3A\tHGNC:8601\t5068","RESP18\tHGNC:33762\t389075","RETNLB\tHGNC:20388\t84666","REXO1L1\tHGNC:24660\t254958","RFPL3\tHGNC:9980\t10738","RFPL4B\tHGNC:33264\t442247","RFX6\tHGNC:21478\t222546","RHO\tHGNC:10012\t6010","RHOXF2\tHGNC:30011\t84528","RNASE10\tHGNC:19275\t338879","RNASE11\tHGNC:19269\t122651","RNASE12\tHGNC:24211\t493901","RNASE13\tHGNC:25285\t440163","RNASE8\tHGNC:19277\t122665","RNASE9\tHGNC:20673\t390443","RND2\tHGNC:18315\t8153","RNF113B\tHGNC:17267\t140432","RNF17\tHGNC:10060\t56163","RP1\tHGNC:10263\t6101","RP1L1\tHGNC:15946\t94137","RPE65\tHGNC:10294\t6121","RPTN\tHGNC:26809\t126638","RS1\tHGNC:10457\t6247","RTP1\tHGNC:28580\t132112","RTP2\tHGNC:32486\t344892","RXFP2\tHGNC:17318\t122042","RXFP3\tHGNC:24883\t51289","S100A7A\tHGNC:21657\t338324","S100G\tHGNC:1436\t795","SAGE1\tHGNC:30369\t55511","SAMD7\tHGNC:25394\t344658","SCGB1D1\tHGNC:18395\t10648","SCN10A\tHGNC:10582\t6336","SCRT2\tHGNC:15952\t85508","SDR9C7\tHGNC:29958\t121214","SEC14L3\tHGNC:18655\t266629","SEMG2\tHGNC:10743\t6407","SEPT14\tHGNC:33280\t346288","SERPINA12\tHGNC:18359\t145264","SERPINA7\tHGNC:11583\t6906","SERPINA9\tHGNC:15995\t327657","SERPINB12\tHGNC:14220\t89777","SHCBP1L\tHGNC:16788\t81626","SHOX\tHGNC:10853\t6473","SI\tHGNC:10856\t6476","SIGLECL1\tHGNC:26856\t284369","SIX6\tHGNC:10892\t4990","SLC10A2\tHGNC:10906\t6555","SLC13A1\tHGNC:10916\t6561","SLC34A1\tHGNC:11019\t6569","SLC17A6\tHGNC:16703\t57084","SLC18A3\tHGNC:10936\t6572","SLC22A12\tHGNC:17989\t116085","SLC22A13\tHGNC:8494\t9390","SLC22A24\tHGNC:28542\t283238","SLC22A25\tHGNC:32935\t387601","SLC22A6\tHGNC:10970\t9356","SLC22A8\tHGNC:10972\t9376","SLC22A9\tHGNC:16261\t114571","SLC25A2\tHGNC:22921\t83884","SLC25A31\tHGNC:25319\t83447","SLC2A2\tHGNC:11006\t6514","SLC2A7\tHGNC:13445\t155184","SLC32A1\tHGNC:11018\t140679","SLC34A1\tHGNC:11019\t6569","SLC36A3\tHGNC:19659\t285641","SLC39A12\tHGNC:20860\t221074","SLC6A18\tHGNC:26441\t348932","SLC6A5\tHGNC:11051\t9152","SLC6A7\tHGNC:11054\t6534","SLC7A13\tHGNC:23092\t157724","SLCO1B1\tHGNC:10959\t10599","SLCO6A1\tHGNC:23613\t133482","SLITRK1\tHGNC:20297\t114798","SOHLH1\tHGNC:27845\t402381","SOX1\tHGNC:11189\t6656","SOX14\tHGNC:11193\t8403","SP8\tHGNC:19196\t221833","SPACA1\tHGNC:14967\t81833","SPACA5\tHGNC:31353\t389852","SPACA7\tHGNC:29575\t122258","SPATA16\tHGNC:29935\t83893","SPATA21\tHGNC:28026\t374955","SPEM1\tHGNC:32429\t374768","SPHAR\tHGNC:16957\t10638","SPINK14\tHGNC:33825\t408187","SPO11\tHGNC:11250\t23626","SPPL2C\tHGNC:28902\t162540","SPRR4\tHGNC:23173\t163778","SSTR4\tHGNC:11333\t6754","SSX3\tHGNC:11337\t10214","SSX5\tHGNC:11339\t6758","SSX7\tHGNC:19653\t280658","SSX8\tHGNC:19654\t280659","SSX9\tHGNC:19655\t280660","STATH\tHGNC:11369\t6779","SULT6B1\tHGNC:33433\t391365","SUN5\tHGNC:16252\t140732","TBXT\tHGNC:11515\t6862","TAAR1\tHGNC:17734\t134864","TAAR2\tHGNC:4514\t9287","TAAR5\tHGNC:30236\t9038","TAAR6\tHGNC:20978\t319100","TAAR8\tHGNC:14964\t83551","TAAR9\tHGNC:20977\t134860","TAS1R2\tHGNC:14905\t80834","TAS2R1\tHGNC:14909\t50834","TAS2R13\tHGNC:14919\t50838","TAS2R16\tHGNC:14921\t50833","TAS2R39\tHGNC:18886\t259285","TAS2R40\tHGNC:18885\t259286","TAS2R41\tHGNC:18883\t259287","TAS2R42\tHGNC:18888\t353164","TAS2R43\tHGNC:18875\t259289","TAS2R46\tHGNC:18877\t259292","TAS2R50\tHGNC:18882\t259296","TAS2R60\tHGNC:20639\t338398","TAS2R7\tHGNC:14913\t50837","TAS2R8\tHGNC:14915\t50836","TAS2R9\tHGNC:14917\t50835","TBC1D21\tHGNC:28536\t161514","TBC1D29\tHGNC:24509\t26083","TBL1Y\tHGNC:18502\t90665","TBPL2\tHGNC:19841\t387332","TBR1\tHGNC:11590\t10716","TBX10\tHGNC:11593\t347853","ELOA2\tHGNC:30771\t51224","ELOA3\tHGNC:24617\t162699","TCHHL1\tHGNC:31796\t126637","TCP10L2\tHGNC:21254\t401285","TEDDM1\tHGNC:30233\t127670","TEX101\tHGNC:30722\t83639","TEX13A\tHGNC:11735\t56157","TEX28\tHGNC:2563\t1527","SPATA32\tHGNC:26349\t124783","TFAP2D\tHGNC:15581\t83741","TFDP3\tHGNC:24603\t51270","TGIF2LX\tHGNC:18570\t90316","TGIF2LY\tHGNC:18569\t90655","TGM6\tHGNC:16255\t343641","TKTL2\tHGNC:25313\t84076","TLX1\tHGNC:5056\t3195","TMEM132D\tHGNC:29411\t121256","TMEM174\tHGNC:28187\t134288","TMEM207\tHGNC:33705\t131920","TMEM225\tHGNC:32390\t338661","TMIGD1\tHGNC:32431\t388364","TMPRSS11A\tHGNC:27954\t339967","TMPRSS11B\tHGNC:25398\t132724","TMPRSS11F\tHGNC:29994\t389208","TMPRSS12\tHGNC:28779\t283471","TMPRSS15\tHGNC:9490\t5651","TNR\tHGNC:11953\t7143","TPD52L3\tHGNC:23382\t89882","TPH2\tHGNC:20692\t121278","TPRX1\tHGNC:32174\t284355","TPTE\tHGNC:12023\t7179","TREML4\tHGNC:30807\t285852","TRHR\tHGNC:12299\t7201","TRIM40\tHGNC:18736\t135644","TRIM42\tHGNC:19014\t287015","TRIM43\tHGNC:19015\t129868","TRIM48\tHGNC:19021\t79097","TRIM49\tHGNC:13431\t57093","TRIM51\tHGNC:19023\t84767","TRIM60\tHGNC:21162\t166655","TRIM67\tHGNC:31859\t440730","TRIML1\tHGNC:26698\t339976","TRPC5\tHGNC:12337\t7224","TRPC7\tHGNC:20754\t57113","TRPM1\tHGNC:7146\t4308","TRPV5\tHGNC:3145\t56302","TSGA13\tHGNC:12369\t114960","TSHB\tHGNC:12372\t7252","TSPAN16\tHGNC:30725\t26526","TSPO2\tHGNC:21256\t222642","TSPY1\tHGNC:12381\t7258","TSPYL6\tHGNC:14521\t388951","TSSK1B\tHGNC:14968\t83942","TSSK2\tHGNC:11401\t23617","TXNDC8\tHGNC:31454\t255220","TYR\tHGNC:12442\t7299","UBQLN3\tHGNC:12510\t50613","UMOD\tHGNC:12559\t7369","UROC1\tHGNC:26444\t131669","USP17L2\tHGNC:34434\t377630","USP26\tHGNC:13485\t83844","USP29\tHGNC:18563\t57663","UTS2R\tHGNC:4468\t2837","VAX1\tHGNC:12660\t11023","VCX3A\tHGNC:18159\t51481","VHLL\tHGNC:30666\t391104","VN1R2\tHGNC:19872\t317701","VN1R4\tHGNC:19871\t317703","VN1R5\tHGNC:19870\t317705","VPREB1\tHGNC:12709\t7441","VRTN\tHGNC:20223\t55237","VSX2\tHGNC:1975\t338917","WFDC10A\tHGNC:16139\t140832","WFDC11\tHGNC:20478\t259239","WFDC9\tHGNC:20380\t259240","XAGE2\tHGNC:4112\t9502","XAGE5\tHGNC:30930\t170627","XKR7\tHGNC:23062\t343702","ZAN\tHGNC:12857\t7455","ZCCHC13\tHGNC:31749\t389874","RTL4\tHGNC:25214\t340595","ZG16\tHGNC:30961\t653808","ZIC3\tHGNC:12874\t7547","ZIM3\tHGNC:16366\t114026","CBLL2\tHGNC:26371\t158506","ZNF648\tHGNC:18190\t127665","ZNF679\tHGNC:28650\t168417","ZNF804B\tHGNC:21958\t219578","ZNRF4\tHGNC:17726\t148066","ZP2\tHGNC:13188\t7783","ZP4\tHGNC:15770\t57829","ZSWIM2\tHGNC:30990\t151112"],"stylingDirectives":[[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]],"csv":null,"csvError":null,"dependabotInfo":{"showConfigurationBanner":false,"configFilePath":null,"networkDependabotPath":"/hart-lab/bagel/network/updates","dismissConfigurationNoticePath":"/settings/dismiss-notice/dependabot_configuration_notice","configurationNoticeDismissed":null,"repoAlertsPath":"/hart-lab/bagel/security/dependabot","repoSecurityAndAnalysisPath":"/hart-lab/bagel/settings/security_analysis","repoOwnerIsOrg":true,"currentUserCanAdminRepo":false},"displayName":"NEGv1.txt","displayUrl":"https://github.com/hart-lab/bagel/blob/master/NEGv1.txt?raw=true","headerInfo":{"blobSize":"21.2 KB","deleteInfo":{"deletePath":null,"deleteTooltip":"You must be signed in to make or propose changes"},"editInfo":{"editTooltip":"You must be signed in to make or propose changes"},"ghDesktopPath":"https://desktop.github.com","gitLfsPath":null,"onBranch":true,"shortPath":"9640181","siteNavLoginPath":"/login?return_to=https%3A%2F%2Fgithub.com%2Fhart-lab%2Fbagel%2Fblob%2Fmaster%2FNEGv1.txt","isCSV":false,"isRichtext":false,"toc":null,"lineInfo":{"truncatedLoc":"929","truncatedSloc":"928"},"mode":"file"},"image":false,"isCodeownersFile":null,"isValidLegacyIssueTemplate":false,"issueTemplateHelpUrl":"https://docs.github.com/articles/about-issue-and-pull-request-templates","issueTemplate":null,"discussionTemplate":null,"language":"Text","large":false,"loggedIn":false,"newDiscussionPath":"/hart-lab/bagel/discussions/new","newIssuePath":"/hart-lab/bagel/issues/new","planSupportInfo":{"repoIsFork":null,"repoOwnedByCurrentUser":null,"requestFullPath":"/hart-lab/bagel/blob/master/NEGv1.txt","showFreeOrgGatedFeatureMessage":null,"showPlanSupportBanner":null,"upgradeDataAttributes":null,"upgradePath":null},"publishBannersInfo":{"dismissActionNoticePath":"/settings/dismiss-notice/publish_action_from_dockerfile","dismissStackNoticePath":"/settings/dismiss-notice/publish_stack_from_file","releasePath":"/hart-lab/bagel/releases/new?marketplace=true","showPublishActionBanner":false,"showPublishStackBanner":false},"renderImageOrRaw":false,"richText":null,"renderedFileInfo":null,"tabSize":8,"topBannersInfo":{"overridingGlobalFundingFile":false,"globalPreferredFundingPath":null,"repoOwner":"hart-lab","repoName":"bagel","showInvalidCitationWarning":false,"citationHelpUrl":"https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/about-citation-files","showDependabotConfigurationBanner":false,"actionsOnboardingTip":null},"truncated":false,"viewable":true,"workflowRedirectUrl":null,"symbols":{"timedOut":false,"notAnalyzed":true,"symbols":[]}},"copilotUserAccess":null,"csrf_tokens":{"/hart-lab/bagel/branches":{"post":"pYLWEpeG9RoxdtoYXQJ5y8-trx6KAJSl7LLqOLZ-2cESTKQmFBTzFls26c8sdQ8miAFjbcsFlrlb9JOP0frNWg"}}},"title":"bagel/NEGv1.txt at master · hart-lab/bagel","locale":"en"} \ No newline at end of file +GENE HGNC_ID ENTREZ_ID +ABCG8 HGNC:13887 64241 +ACCSL HGNC:34391 390110 +ACTL7A HGNC:161 10881 +ACTL7B HGNC:162 10880 +ACTL9 HGNC:28494 284382 +ACTRT1 HGNC:24027 139741 +ADAD1 HGNC:30713 132612 +ADAM18 HGNC:196 8749 +ADAM2 HGNC:198 2515 +ADAM20 HGNC:199 8748 +ADAM30 HGNC:208 11085 +ADH7 HGNC:256 131 +AFM HGNC:316 173 +AICDA HGNC:13203 57379 +AIPL1 HGNC:359 23746 +ALPI HGNC:437 248 +ALPG HGNC:441 251 +ALX3 HGNC:449 257 +AMELX HGNC:461 265 +ANKRD30A HGNC:17234 91074 +ANKRD60 HGNC:16217 140731 +ANTXRL HGNC:27277 195977 +APOA4 HGNC:602 337 +APOBEC1 HGNC:604 339 +APOF HGNC:615 319 +AQP12A HGNC:19941 375318 +AQP8 HGNC:642 343 +ARGFX HGNC:30146 503582 +ART1 HGNC:723 417 +ASB17 HGNC:19769 127247 +ASIC5 HGNC:17537 51802 +ASZ1 HGNC:1350 136991 +ATOH1 HGNC:797 474 +ATP4B HGNC:820 496 +ATP6V1G3 HGNC:18265 127124 +AWAT1 HGNC:23252 158833 +AWAT2 HGNC:23251 158835 +B3GNT6 HGNC:24141 192134 +BANF2 HGNC:16172 140836 +BARHL1 HGNC:953 56751 +BEND2 HGNC:28509 139105 +BHLHE23 HGNC:16093 128408 +BIRC8 HGNC:14878 112401 +BMP10 HGNC:20869 27302 +BMP15 HGNC:1068 9210 +BPIFA1 HGNC:15749 51297 +BPIFA3 HGNC:16204 128861 +BPIFB3 HGNC:16178 359710 +BPIFB6 HGNC:16504 128859 +BPIFC HGNC:16503 254240 +BPY2 HGNC:13508 9083 +BRDT HGNC:1105 676 +BSND HGNC:16512 7809 +C10orf113 HGNC:31447 387638 +C10orf120 HGNC:25707 399814 +C10orf53 HGNC:27421 282966 +C11orf40 HGNC:23986 143501 +C12orf40 HGNC:26846 283461 +C14orf183 HGNC:27285 196913 +NUTM1 HGNC:29919 256646 +C16orf78 HGNC:28479 123970 +C17orf102 HGNC:34412 400591 +C17orf78 HGNC:26831 284099 +DYNAP HGNC:26808 284254 +TEX45 HGNC:24745 374877 +C1orf146 HGNC:24032 388649 +C20orf173 HGNC:16166 140873 +C20orf203 HGNC:26592 284805 +SCP2D1 HGNC:16211 140856 +TEX44 HGNC:28563 165100 +STPG4 HGNC:26850 285051 +PCARE HGNC:34383 388939 +C2orf83 HGNC:25344 56918 +C3orf30 HGNC:26553 152405 +PRR27 HGNC:33193 401137 +DCANP1 HGNC:24459 140947 +C6orf10 HGNC:13922 10665 +C7orf66 HGNC:33712 154907 +C7orf71 HGNC:22364 285941 +C8A HGNC:1352 731 +C8B HGNC:1353 732 +C8orf17 HGNC:17737 100507249 +C8orf86 HGNC:33774 389649 +C9orf53 HGNC:23831 51198 +CABP2 HGNC:1385 51475 +CABP5 HGNC:13714 56344 +CABS1 HGNC:30710 85438 +CACNG2 HGNC:1406 10369 +CACNG3 HGNC:1407 10368 +CACNG5 HGNC:1409 27091 +CATSPER4 HGNC:23220 378807 +CCDC155 HGNC:26520 147872 +CCDC172 HGNC:30524 374355 +CCDC83 HGNC:28535 220047 +CCKAR HGNC:1570 886 +CCL1 HGNC:10609 6346 +CCT8L2 HGNC:15553 150160 +CD200R1L HGNC:24665 344807 +CDCP2 HGNC:27297 200008 +CDX2 HGNC:1806 1045 +CDX4 HGNC:1808 1046 +CDY1 HGNC:1809 9085 +CDY1B HGNC:23920 253175 +CDY2A HGNC:1810 9426 +CDY2B HGNC:23921 203611 +CEACAM7 HGNC:1819 1087 +CELA2A HGNC:24609 63036 +CELA3A HGNC:15944 10136 +CELA3B HGNC:15945 23436 +CER1 HGNC:1862 9350 +CETN1 HGNC:1866 1068 +CFHR2 HGNC:4890 3080 +CFHR5 HGNC:24668 81494 +CHAT HGNC:1912 1103 +CHRNA6 HGNC:15963 8973 +CHRNB3 HGNC:1963 1142 +CLCA1 HGNC:2015 1179 +CLDN17 HGNC:2038 26285 +CLEC2A HGNC:24191 387836 +CLEC3A HGNC:2052 10143 +CLEC6A HGNC:14556 93978 +CLRN1 HGNC:12605 7401 +CNBD1 HGNC:26663 168975 +CNGA2 HGNC:2149 1260 +CNGB3 HGNC:2153 54714 +CNPY1 HGNC:27786 285888 +CNTNAP5 HGNC:18748 129684 +COL20A1 HGNC:14670 57642 +COX7B2 HGNC:24381 170712 +CPXCR1 HGNC:2332 53336 +CRNN HGNC:1230 49860 +CRX HGNC:2383 1406 +CRYGB HGNC:2409 1419 +CSH1 HGNC:2440 1442 +CSHL1 HGNC:2442 1444 +CSN2 HGNC:2447 1447 +CSN3 HGNC:2446 1448 +CST11 HGNC:15959 140880 +CST4 HGNC:2476 1472 +CST5 HGNC:2477 1473 +CST8 HGNC:2480 10047 +CST9 HGNC:13261 128822 +CST9L HGNC:16233 128821 +CSTL1 HGNC:15958 128817 +CT45A2 HGNC:28400 728911 +CT45A4 HGNC:33269 +CT45A5 HGNC:33270 441521 +CT47A11 HGNC:27397 255313 +CTCFL HGNC:16234 140690 +CTRB1 HGNC:2521 1504 +CXorf1 HGNC:2562 +CXorf66 HGNC:33743 347487 +CYLC2 HGNC:2583 1539 +CYP11B1 HGNC:2591 1584 +CYP11B2 HGNC:2592 1585 +CYP26C1 HGNC:20577 340665 +CYP2A13 HGNC:2608 1553 +CYP2C19 HGNC:2621 1557 +CYP4A22 HGNC:20575 284541 +CYP4F8 HGNC:2648 11283 +CYP7A1 HGNC:2651 1581 +DAZ1 HGNC:2682 1617 +DAZ2 HGNC:15964 57055 +DAZ3 HGNC:15965 57054 +DAZ4 HGNC:15966 57135 +DAZL HGNC:2685 1618 +DCAF4L2 HGNC:26657 138009 +DCAF8L1 HGNC:31810 139425 +DDI1 HGNC:18961 414301 +DDX4 HGNC:18700 54514 +DEFA5 HGNC:2764 1670 +DEFA6 HGNC:2765 1671 +DEFB103B HGNC:31702 55894 +DEFB104A HGNC:18115 140596 +DEFB106A HGNC:18088 245909 +DEFB107A HGNC:18086 245910 +DEFB118 HGNC:16196 117285 +DEFB123 HGNC:18103 245936 +DEFB126 HGNC:15900 81623 +DEFB127 HGNC:16206 140850 +DEFB129 HGNC:16218 140881 +DGAT2L6 HGNC:23250 347516 +DGKK HGNC:32395 139189 +DIRC1 HGNC:15760 116093 +DMP1 HGNC:2932 1758 +DMRT1 HGNC:2934 1761 +DMRTB1 HGNC:13913 63948 +DMRTC2 HGNC:13911 63946 +MUCL3 HGNC:21666 135656 +DPRX HGNC:32166 503834 +DRD3 HGNC:3024 1814 +DRGX HGNC:21536 644168 +DSCR4 HGNC:3045 10281 +DSG4 HGNC:21307 147409 +DSPP HGNC:3054 1834 +DTX2 HGNC:15973 113878 +DUSP21 HGNC:20476 63904 +DUX4 HGNC:50800 100288687 +DUX4L7 HGNC:37266 653543 +DUXA HGNC:32179 503835 +EFCAB3 HGNC:26379 146779 +EGR4 HGNC:3241 1961 +ENTHD1 HGNC:26352 150350 +ESX1 HGNC:14865 80712 +EVX1 HGNC:3506 2128 +F13B HGNC:3534 2165 +F9 HGNC:3551 2158 +FABP2 HGNC:3556 2169 +FAM106A HGNC:25682 80039 +FAM47A HGNC:29962 158724 +FAM47B HGNC:26659 170062 +FAM47C HGNC:25301 442444 +FAM71A HGNC:26541 149647 +FAM71B HGNC:28397 153745 +FAM71C HGNC:28594 196472 +SPATA31A7 HGNC:32007 26165 +SPATA31D1 HGNC:37283 389763 +FCRL4 HGNC:18507 83417 +FEZF1 HGNC:22788 389549 +FEZF2 HGNC:13506 55079 +FFAR1 HGNC:4498 2864 +FGF3 HGNC:3681 2248 +FGF4 HGNC:3682 2249 +FGF6 HGNC:3684 2251 +FIGLA HGNC:24669 344018 +FLG2 HGNC:33276 388698 +FMR1NB HGNC:26372 158521 +FNDC7 HGNC:26668 163479 +FNDC9 HGNC:33547 408263 +FOXB1 HGNC:3799 27023 +FOXB2 HGNC:23315 442425 +FOXD4L3 HGNC:18523 286380 +FOXD4L4 HGNC:23762 349334 +FOXE3 HGNC:3808 2301 +FOXN1 HGNC:12765 8456 +FOXR1 HGNC:29980 283150 +FRG2 HGNC:19136 448831 +FRMD7 HGNC:8079 90167 +FSCB HGNC:20494 84075 +FUT5 HGNC:4016 2527 +FUT9 HGNC:4020 10690 +G6PC HGNC:4056 2538 +GABRA1 HGNC:4075 2554 +GABRA6 HGNC:4080 2559 +GAGE1 HGNC:4098 2543 +GAGE2C HGNC:31958 2574 +GALNTL5 HGNC:21725 168391 +GALR1 HGNC:4132 2587 +GALR3 HGNC:4134 8484 +GBP7 HGNC:29606 388646 +GCG HGNC:4191 2641 +GCM2 HGNC:4198 9247 +GDF2 HGNC:4217 2658 +GFRA4 HGNC:13821 64096 +GFRAL HGNC:32789 389400 +GH2 HGNC:4262 2689 +GHRH HGNC:4265 2691 +GHSR HGNC:4267 2693 +GIF HGNC:4268 2694 +GJA9 HGNC:19155 81025 +GJA8 HGNC:4281 2703 +GK2 HGNC:4291 2712 +GKN2 HGNC:24588 200504 +GLRA1 HGNC:4326 2741 +GLRA2 HGNC:4327 2742 +GLT6D1 HGNC:23671 360203 +GML HGNC:4375 2765 +GOLGA6L2 HGNC:26695 283685 +GOT1L1 HGNC:28487 137362 +GPR101 HGNC:14963 83550 +GPR111 HGNC:18991 222611 +GPR119 HGNC:19060 139760 +ADGRG7 HGNC:19241 84873 +GPR139 HGNC:19995 124274 +GPR144 HGNC:18651 347088 +GPR148 HGNC:23623 344561 +GPR151 HGNC:23624 134391 +GPR152 HGNC:23622 390212 +GPR26 HGNC:4481 2849 +GPR31 HGNC:4486 2853 +GPR32 HGNC:4487 2854 +GPR45 HGNC:4503 11250 +GPR50 HGNC:4506 9248 +GPR52 HGNC:4508 9293 +GPR78 HGNC:4528 27201 +GPRC6A HGNC:18510 222545 +GPX5 HGNC:4557 2880 +GPX6 HGNC:4558 257202 +GRK1 HGNC:10013 6011 +GRM4 HGNC:4596 2914 +GRM5 HGNC:4597 2915 +GRM6 HGNC:4598 2916 +GSC2 HGNC:4613 2928 +GSTA5 HGNC:19662 221357 +GSX1 HGNC:20374 219409 +GSX2 HGNC:24959 170825 +GUCA2A HGNC:4682 2980 +GUCY2F HGNC:4691 2986 +H1FOO HGNC:18463 132243 +H2BFM HGNC:27867 286436 +H2BFWT HGNC:27252 158983 +HAO1 HGNC:4809 54363 +HCRTR2 HGNC:4849 3062 +HDGFL1 HGNC:21095 154150 +HHLA1 HGNC:4904 10086 +HIST1H2AA HGNC:18729 221613 +HIST1H2BA HGNC:18730 255626 +HIST1H4G HGNC:4792 8369 +HMX1 HGNC:5017 3166 +HOXB1 HGNC:5111 3211 +HOXD12 HGNC:5135 3238 +HRG HGNC:5181 3273 +HRH3 HGNC:5184 11255 +HSFY1 HGNC:18568 86614 +HSFY2 HGNC:23950 159119 +HTN3 HGNC:5284 3347 +HTR1A HGNC:5286 3350 +HTR2C HGNC:5295 3358 +HTR3C HGNC:24003 170572 +HTR3D HGNC:24004 200909 +HTR3E HGNC:24005 285242 +HTR5A HGNC:5300 3361 +HTR6 HGNC:5301 3362 +IAPP HGNC:5329 3375 +IFIT1B HGNC:23442 439996 +IFNA10 HGNC:5418 3446 +IFNA14 HGNC:5420 3448 +IFNA16 HGNC:5421 3449 +IFNA17 HGNC:5422 3451 +IFNA2 HGNC:5423 3440 +IFNA21 HGNC:5424 3452 +IFNA4 HGNC:5425 3441 +IFNA5 HGNC:5426 3442 +IFNA6 HGNC:5427 3443 +IFNA7 HGNC:5428 3444 +IFNA8 HGNC:5429 3445 +IFNB1 HGNC:5434 3456 +IFNK HGNC:21714 56832 +IFNW1 HGNC:5448 3467 +IL12B HGNC:5970 3593 +IL13 HGNC:5973 3596 +IL17A HGNC:5981 3605 +IL17F HGNC:16404 112744 +IL1F10 HGNC:15552 84639 +IL21 HGNC:6005 59067 +IL22 HGNC:14900 50616 +IL25 HGNC:13765 64806 +IL26 HGNC:17119 55801 +IFNL2 HGNC:18364 282616 +IFNL3 HGNC:18365 282617 +IFNL1 HGNC:18363 282618 +IL3 HGNC:6011 3562 +IL31 HGNC:19372 386653 +IL36A HGNC:15562 27179 +IL36B HGNC:15564 27177 +IL36RN HGNC:15561 26525 +IL9 HGNC:6029 3578 +INS HGNC:6081 3630 +INSL5 HGNC:6088 10022 +INSL6 HGNC:6089 11172 +INSM2 HGNC:17539 84684 +INSRR HGNC:6093 3645 +IQCF1 HGNC:28607 132141 +IRGC HGNC:28835 56269 +ISX HGNC:28084 91464 +ITIH6 HGNC:28907 347365 +IZUMO2 HGNC:28518 126123 +KCNA10 HGNC:6219 3744 +KCNB2 HGNC:6232 9312 +KCNG4 HGNC:19697 93107 +KCNK10 HGNC:6273 54207 +KCNK16 HGNC:14464 83795 +KCNK18 HGNC:19439 338567 +KCNV1 HGNC:18861 27012 +KHDC3L HGNC:33699 154288 +KIF2B HGNC:29443 84643 +KIR2DL1 HGNC:6329 3802 +KIR3DL3 HGNC:16312 115653 +KLK12 HGNC:6360 43849 +KLK9 HGNC:6370 284366 +KRT2 HGNC:6439 3849 +KRT25 HGNC:30839 147183 +KRT26 HGNC:30840 353288 +KRT28 HGNC:30842 162605 +KRT33A HGNC:6450 3883 +KRT35 HGNC:6453 3886 +KRT36 HGNC:6454 8689 +KRT37 HGNC:6455 8688 +KRT38 HGNC:6456 8687 +KRT40 HGNC:26707 125115 +KRT71 HGNC:28927 112802 +KRT73 HGNC:28928 319101 +KRT74 HGNC:28929 121391 +KRT75 HGNC:24431 9119 +KRT76 HGNC:24430 51350 +KRT77 HGNC:20411 374454 +KRT78 HGNC:28926 196374 +KRT82 HGNC:6459 3888 +KRT84 HGNC:6461 3890 +KRT85 HGNC:6462 3891 +KRT86 HGNC:6463 3892 +KRT9 HGNC:6447 3857 +KRTAP1-1 HGNC:16772 81851 +KRTAP10-1 HGNC:22966 386677 +KRTAP10-10 HGNC:22972 353333 +KRTAP10-11 HGNC:20528 386678 +KRTAP10-12 HGNC:20533 386685 +KRTAP10-2 HGNC:22967 386679 +KRTAP10-4 HGNC:20521 386672 +KRTAP10-5 HGNC:22969 386680 +KRTAP10-6 HGNC:20523 386674 +KRTAP10-7 HGNC:22970 386675 +KRTAP10-8 HGNC:20525 386681 +KRTAP10-9 HGNC:22971 386676 +KRTAP11-1 HGNC:18922 337880 +KRTAP13-1 HGNC:18924 140258 +KRTAP13-2 HGNC:18923 337959 +KRTAP13-3 HGNC:18925 337960 +KRTAP13-4 HGNC:18926 284827 +KRTAP15-1 HGNC:18927 254950 +KRTAP17-1 HGNC:18917 83902 +KRTAP19-3 HGNC:18938 337970 +KRTAP23-1 HGNC:18928 337963 +KRTAP26-1 HGNC:33760 388818 +KRTAP3-2 HGNC:16779 83897 +KRTAP4-11 HGNC:18911 653240 +KRTAP4-12 HGNC:16776 83755 +KRTAP4-2 HGNC:18900 85291 +KRTAP4-4 HGNC:16928 84616 +KRTAP4-7 HGNC:18898 100132476 +KRTAP5-2 HGNC:23597 440021 +KRTAP9-2 HGNC:16926 83899 +KRTAP9-3 HGNC:16927 83900 +KRTAP9-4 HGNC:18902 85280 +LALBA HGNC:6480 3906 +LBX1 HGNC:16960 10660 +LCN9 HGNC:17442 392399 +LCT HGNC:6530 3938 +LGALS13 HGNC:15449 29124 +LGALS14 HGNC:30054 56891 +LHFPL5 HGNC:21253 222662 +LHX3 HGNC:6595 8022 +LHX5 HGNC:14216 64211 +LIM2 HGNC:6610 3982 +LIN28A HGNC:15986 79727 +LIPM HGNC:23455 340654 +LOR HGNC:6663 4014 +LRIT1 HGNC:23404 26103 +LRIT2 HGNC:23443 340745 +LRRC10 HGNC:20264 376132 +LUZP4 HGNC:24971 51213 +LYZL1 HGNC:30502 84569 +LYZL2 HGNC:29613 119180 +LYZL6 HGNC:29614 57151 +MAGEA10 HGNC:6797 4109 +MAGEA11 HGNC:6798 4110 +MAGEB1 HGNC:6808 4112 +MAGEB10 HGNC:25377 139422 +MAGEB18 HGNC:28515 286514 +MAGEB3 HGNC:6810 4114 +MAGEB4 HGNC:6811 4115 +MAGEC3 HGNC:23798 139081 +MAS1 HGNC:6899 4142 +MAS1L HGNC:13961 116511 +MBD3L1 HGNC:15774 85509 +MBD3L2 HGNC:18532 125997 +MBL2 HGNC:6922 4153 +MC2R HGNC:6930 4158 +MC3R HGNC:6931 4159 +MC5R HGNC:6933 4161 +MEP1A HGNC:7015 4224 +MEP1B HGNC:7020 4225 +MEPE HGNC:13361 56955 +MFRP HGNC:18121 83552 +MMD2 HGNC:30133 221938 +MMP20 HGNC:7167 9313 +MMP21 HGNC:7170 8511 +MMP26 HGNC:14249 56547 +MMP27 HGNC:14250 64066 +MOGAT3 HGNC:23249 346606 +MORC1 HGNC:7198 27136 +MRGPRD HGNC:29626 116512 +MRGPRX1 HGNC:17962 259249 +MRGPRX2 HGNC:17983 117194 +MRGPRX4 HGNC:17617 117196 +MS4A10 HGNC:13368 341116 +MS4A13 HGNC:16674 503497 +MS4A5 HGNC:13374 64232 +MSGN1 HGNC:14907 343930 +MT1B HGNC:7394 4490 +MTNR1B HGNC:7464 4544 +MUC17 HGNC:16800 140453 +MUC7 HGNC:7518 4589 +MYBPC3 HGNC:7551 4607 +MYF5 HGNC:7565 4617 +NANOGNB HGNC:24958 360030 +NANOS2 HGNC:23292 339345 +NCR2 HGNC:6732 9436 +NDST4 HGNC:20779 64579 +NEUROD2 HGNC:7763 4761 +NEUROD4 HGNC:13802 58158 +NEUROD6 HGNC:13804 63974 +NEUROG1 HGNC:7764 4762 +NKX2-1 HGNC:11825 7080 +NKX2-2 HGNC:7835 4821 +NLRP4 HGNC:22943 147945 +NLRP5 HGNC:21269 126206 +NLRP8 HGNC:22940 126205 +NLRP9 HGNC:22941 338321 +NMS HGNC:32203 129521 +NOBOX HGNC:22448 135935 +NOTO HGNC:31839 344022 +NOX3 HGNC:7890 50508 +NPFFR1 HGNC:17425 64106 +NPHS2 HGNC:13394 7827 +NPSR1 HGNC:23631 387129 +NPVF HGNC:13782 64111 +NR2E1 HGNC:7973 7101 +NYX HGNC:8082 60506 +OC90 HGNC:8100 729330 +OLIG2 HGNC:9398 10215 +OLIG3 HGNC:18003 167826 +OPALIN HGNC:20707 93377 +OPN1LW HGNC:9936 5956 +OPN5 HGNC:19992 221391 +OR10A2 HGNC:8161 341276 +OR10A4 HGNC:15130 283297 +OR10A5 HGNC:15131 144124 +OR10H1 HGNC:8172 26539 +OR10H2 HGNC:8173 26538 +OR10H3 HGNC:8174 26532 +OR10J1 HGNC:8175 26476 +OR10R2 HGNC:14820 343406 +OR10S1 HGNC:14807 219873 +OR10X1 HGNC:14995 128367 +OR10Z1 HGNC:14996 128368 +OR11A1 HGNC:8176 26531 +OR12D2 HGNC:8178 26529 +OR12D3 HGNC:13963 81797 +OR13C3 HGNC:14704 138803 +OR13D1 HGNC:14695 286365 +OR14A16 HGNC:15022 284532 +OR1A1 HGNC:8179 8383 +OR1A2 HGNC:8180 26189 +OR1B1 HGNC:8181 347169 +OR1D2 HGNC:8183 4991 +OR1E1 HGNC:8189 8387 +OR1E2 HGNC:8190 8388 +OR1G1 HGNC:8204 8390 +OR1L6 HGNC:8218 392390 +OR1N2 HGNC:15111 138882 +OR1S1 HGNC:8227 219959 +OR1S2 HGNC:15141 219958 +OR2AK2 HGNC:19569 391191 +OR2AT4 HGNC:19620 341152 +OR2C1 HGNC:8242 4993 +OR2C3 HGNC:15005 81472 +OR2D2 HGNC:8244 120776 +OR2D3 HGNC:15146 120775 +OR2F1 HGNC:8246 26211 +OR2G2 HGNC:15007 81470 +OR2G3 HGNC:15008 81469 +OR2H1 HGNC:8252 26716 +OR2J2 HGNC:8260 26707 +OR2L3 HGNC:15009 391192 +OR2T1 HGNC:8277 26696 +OR2T10 HGNC:19573 127069 +OR2T12 HGNC:19592 127064 +OR2T2 HGNC:14725 401992 +OR2T27 HGNC:31252 403239 +OR2T33 HGNC:31255 391195 +OR2T4 HGNC:15016 127074 +OR2T5 HGNC:15017 401993 +OR2W1 HGNC:8281 26692 +OR3A1 HGNC:8282 4994 +OR3A2 HGNC:8283 4995 +OR3A3 HGNC:8284 8392 +OR4C11 HGNC:15167 219429 +OR4C3 HGNC:14697 256144 +OR4D1 HGNC:8293 26689 +OR4D10 HGNC:15173 390197 +OR4D11 HGNC:15174 219986 +OR4D9 HGNC:15178 390199 +OR4K17 HGNC:15355 390436 +OR51B6 HGNC:19600 390058 +OR51D1 HGNC:15193 390038 +OR51F2 HGNC:15197 119694 +OR51T1 HGNC:15205 401665 +OR51V1 HGNC:19597 283111 +OR52A1 HGNC:8318 23538 +OR52A5 HGNC:19580 390054 +OR52B2 HGNC:15207 255725 +OR52B6 HGNC:15211 340980 +OR52E8 HGNC:15217 390079 +OR52I2 HGNC:15221 143502 +OR52K2 HGNC:15223 119774 +OR52L1 HGNC:14785 338751 +OR52M1 HGNC:15225 119772 +OR52R1 HGNC:15235 119695 +OR52W1 HGNC:15239 120787 +OR56A1 HGNC:14781 120796 +OR56A4 HGNC:14791 120793 +OR56B1 HGNC:15245 387748 +OR5AU1 HGNC:15362 390445 +OR5C1 HGNC:8331 392391 +OR5I1 HGNC:8347 10798 +OR5M1 HGNC:8352 390168 +OR5M10 HGNC:15290 390167 +OR5P2 HGNC:14783 120065 +OR5P3 HGNC:14784 120066 +OR5R1 HGNC:14841 219479 +OR5T1 HGNC:14821 390155 +OR5T2 HGNC:15296 219464 +OR5T3 HGNC:15297 390154 +OR5V1 HGNC:13972 81696 +OR5W2 HGNC:15299 390148 +OR6A2 HGNC:15301 8590 +OR6K6 HGNC:15033 128371 +OR6S1 HGNC:15363 341799 +OR6V1 HGNC:15090 346517 +OR7A17 HGNC:8363 26333 +OR7C2 HGNC:8374 26658 +OR7D4 HGNC:8380 125958 +OR7G2 HGNC:8466 390882 +OR8A1 HGNC:8469 390275 +OR8B8 HGNC:8477 26493 +OR8G5 HGNC:19622 219865 +OR8U1 HGNC:19611 219417 +OR9Q2 HGNC:15328 219957 +OTOP1 HGNC:19656 133060 +OTOP3 HGNC:19658 347741 +OTOR HGNC:8517 56914 +OTP HGNC:8518 23440 +OTUD6A HGNC:32312 139562 +OTX2 HGNC:8522 5015 +PAGE3 HGNC:4110 139793 +PANX3 HGNC:20573 116337 +PASD1 HGNC:20686 139135 +PAX1 HGNC:8615 5075 +PAX4 HGNC:8618 5078 +PBOV1 HGNC:21079 59351 +PDCL2 HGNC:29524 132954 +PDE6H HGNC:8790 5149 +PDILT HGNC:27338 204474 +PDX1 HGNC:6107 3651 +PDYN HGNC:8820 5173 +PGK2 HGNC:8898 5232 +PGLYRP2 HGNC:30013 114770 +PGLYRP3 HGNC:30014 114771 +PIWIL1 HGNC:9007 9271 +PIWIL3 HGNC:18443 440822 +PKD1L3 HGNC:21716 342372 +PLA2G2E HGNC:13414 30814 +PLA2G2F HGNC:30040 64600 +PLA2G4E HGNC:24791 123745 +OOSP2 HGNC:26699 219990 +PNLIP HGNC:9155 5406 +PNLIPRP1 HGNC:9156 5407 +PNLIPRP2 HGNC:9157 5408 +PNPLA5 HGNC:24888 150379 +POM121L12 HGNC:25369 285877 +POTEA HGNC:33893 340441 +POTED HGNC:23822 317754 +POTEG HGNC:33896 404785 +POTEH HGNC:133 23784 +POU3F4 HGNC:9217 5456 +POU4F2 HGNC:9219 5458 +POU4F3 HGNC:9220 5459 +POU5F2 HGNC:26367 134187 +PPP3R2 HGNC:9318 5535 +PRAMEF1 HGNC:28840 65121 +PRAMEF19 HGNC:24908 645414 +PRAMEF2 HGNC:28841 65122 +PRAMEF3 HGNC:14087 +PRAMEF4 HGNC:31971 400735 +PRAMEF7 HGNC:28415 441871 +PRB1 HGNC:9337 5542 +PRB4 HGNC:9340 5545 +PRDM13 HGNC:13998 59336 +PRDM14 HGNC:14001 63978 +PRDM7 HGNC:9351 11105 +PRDM9 HGNC:13994 56979 +PRG3 HGNC:9363 10394 +PRLH HGNC:17945 51052 +PRLHR HGNC:4464 2834 +PROP1 HGNC:9455 5626 +PRSS33 HGNC:30405 260429 +PRSS37 HGNC:29211 136242 +PRSS38 HGNC:29625 339501 +PRSS41 HGNC:30715 360226 +PRSS55 HGNC:30824 203074 +PRSS58 HGNC:39125 136541 +PRY2 HGNC:21504 442862 +PSKH2 HGNC:18997 85481 +PTF1A HGNC:23734 256297 +RAX HGNC:18662 30062 +RAX2 HGNC:18286 84839 +RBM46 HGNC:28401 166863 +RBMXL2 HGNC:17886 27288 +RBMY1A1 HGNC:9912 5940 +RBMY1B HGNC:23914 378948 +RBMY1D HGNC:23915 378949 +RBMY1E HGNC:23916 378950 +RBMY1F HGNC:23974 159163 +RBMY1J HGNC:23917 378951 +RBP3 HGNC:9921 5949 +RBPJL HGNC:13761 11317 +RD3 HGNC:19689 343035 +RDH8 HGNC:14423 50700 +REG3A HGNC:8601 5068 +RESP18 HGNC:33762 389075 +RETNLB HGNC:20388 84666 +REXO1L1 HGNC:24660 254958 +RFPL3 HGNC:9980 10738 +RFPL4B HGNC:33264 442247 +RFX6 HGNC:21478 222546 +RHO HGNC:10012 6010 +RHOXF2 HGNC:30011 84528 +RNASE10 HGNC:19275 338879 +RNASE11 HGNC:19269 122651 +RNASE12 HGNC:24211 493901 +RNASE13 HGNC:25285 440163 +RNASE8 HGNC:19277 122665 +RNASE9 HGNC:20673 390443 +RND2 HGNC:18315 8153 +RNF113B HGNC:17267 140432 +RNF17 HGNC:10060 56163 +RP1 HGNC:10263 6101 +RP1L1 HGNC:15946 94137 +RPE65 HGNC:10294 6121 +RPTN HGNC:26809 126638 +RS1 HGNC:10457 6247 +RTP1 HGNC:28580 132112 +RTP2 HGNC:32486 344892 +RXFP2 HGNC:17318 122042 +RXFP3 HGNC:24883 51289 +S100A7A HGNC:21657 338324 +S100G HGNC:1436 795 +SAGE1 HGNC:30369 55511 +SAMD7 HGNC:25394 344658 +SCGB1D1 HGNC:18395 10648 +SCN10A HGNC:10582 6336 +SCRT2 HGNC:15952 85508 +SDR9C7 HGNC:29958 121214 +SEC14L3 HGNC:18655 266629 +SEMG2 HGNC:10743 6407 +SEPT14 HGNC:33280 346288 +SERPINA12 HGNC:18359 145264 +SERPINA7 HGNC:11583 6906 +SERPINA9 HGNC:15995 327657 +SERPINB12 HGNC:14220 89777 +SHCBP1L HGNC:16788 81626 +SHOX HGNC:10853 6473 +SI HGNC:10856 6476 +SIGLECL1 HGNC:26856 284369 +SIX6 HGNC:10892 4990 +SLC10A2 HGNC:10906 6555 +SLC13A1 HGNC:10916 6561 +SLC34A1 HGNC:11019 6569 +SLC17A6 HGNC:16703 57084 +SLC18A3 HGNC:10936 6572 +SLC22A12 HGNC:17989 116085 +SLC22A13 HGNC:8494 9390 +SLC22A24 HGNC:28542 283238 +SLC22A25 HGNC:32935 387601 +SLC22A6 HGNC:10970 9356 +SLC22A8 HGNC:10972 9376 +SLC22A9 HGNC:16261 114571 +SLC25A2 HGNC:22921 83884 +SLC25A31 HGNC:25319 83447 +SLC2A2 HGNC:11006 6514 +SLC2A7 HGNC:13445 155184 +SLC32A1 HGNC:11018 140679 +SLC34A1 HGNC:11019 6569 +SLC36A3 HGNC:19659 285641 +SLC39A12 HGNC:20860 221074 +SLC6A18 HGNC:26441 348932 +SLC6A5 HGNC:11051 9152 +SLC6A7 HGNC:11054 6534 +SLC7A13 HGNC:23092 157724 +SLCO1B1 HGNC:10959 10599 +SLCO6A1 HGNC:23613 133482 +SLITRK1 HGNC:20297 114798 +SOHLH1 HGNC:27845 402381 +SOX1 HGNC:11189 6656 +SOX14 HGNC:11193 8403 +SP8 HGNC:19196 221833 +SPACA1 HGNC:14967 81833 +SPACA5 HGNC:31353 389852 +SPACA7 HGNC:29575 122258 +SPATA16 HGNC:29935 83893 +SPATA21 HGNC:28026 374955 +SPEM1 HGNC:32429 374768 +SPHAR HGNC:16957 10638 +SPINK14 HGNC:33825 408187 +SPO11 HGNC:11250 23626 +SPPL2C HGNC:28902 162540 +SPRR4 HGNC:23173 163778 +SSTR4 HGNC:11333 6754 +SSX3 HGNC:11337 10214 +SSX5 HGNC:11339 6758 +SSX7 HGNC:19653 280658 +SSX8 HGNC:19654 280659 +SSX9 HGNC:19655 280660 +STATH HGNC:11369 6779 +SULT6B1 HGNC:33433 391365 +SUN5 HGNC:16252 140732 +TBXT HGNC:11515 6862 +TAAR1 HGNC:17734 134864 +TAAR2 HGNC:4514 9287 +TAAR5 HGNC:30236 9038 +TAAR6 HGNC:20978 319100 +TAAR8 HGNC:14964 83551 +TAAR9 HGNC:20977 134860 +TAS1R2 HGNC:14905 80834 +TAS2R1 HGNC:14909 50834 +TAS2R13 HGNC:14919 50838 +TAS2R16 HGNC:14921 50833 +TAS2R39 HGNC:18886 259285 +TAS2R40 HGNC:18885 259286 +TAS2R41 HGNC:18883 259287 +TAS2R42 HGNC:18888 353164 +TAS2R43 HGNC:18875 259289 +TAS2R46 HGNC:18877 259292 +TAS2R50 HGNC:18882 259296 +TAS2R60 HGNC:20639 338398 +TAS2R7 HGNC:14913 50837 +TAS2R8 HGNC:14915 50836 +TAS2R9 HGNC:14917 50835 +TBC1D21 HGNC:28536 161514 +TBC1D29 HGNC:24509 26083 +TBL1Y HGNC:18502 90665 +TBPL2 HGNC:19841 387332 +TBR1 HGNC:11590 10716 +TBX10 HGNC:11593 347853 +ELOA2 HGNC:30771 51224 +ELOA3 HGNC:24617 162699 +TCHHL1 HGNC:31796 126637 +TCP10L2 HGNC:21254 401285 +TEDDM1 HGNC:30233 127670 +TEX101 HGNC:30722 83639 +TEX13A HGNC:11735 56157 +TEX28 HGNC:2563 1527 +SPATA32 HGNC:26349 124783 +TFAP2D HGNC:15581 83741 +TFDP3 HGNC:24603 51270 +TGIF2LX HGNC:18570 90316 +TGIF2LY HGNC:18569 90655 +TGM6 HGNC:16255 343641 +TKTL2 HGNC:25313 84076 +TLX1 HGNC:5056 3195 +TMEM132D HGNC:29411 121256 +TMEM174 HGNC:28187 134288 +TMEM207 HGNC:33705 131920 +TMEM225 HGNC:32390 338661 +TMIGD1 HGNC:32431 388364 +TMPRSS11A HGNC:27954 339967 +TMPRSS11B HGNC:25398 132724 +TMPRSS11F HGNC:29994 389208 +TMPRSS12 HGNC:28779 283471 +TMPRSS15 HGNC:9490 5651 +TNR HGNC:11953 7143 +TPD52L3 HGNC:23382 89882 +TPH2 HGNC:20692 121278 +TPRX1 HGNC:32174 284355 +TPTE HGNC:12023 7179 +TREML4 HGNC:30807 285852 +TRHR HGNC:12299 7201 +TRIM40 HGNC:18736 135644 +TRIM42 HGNC:19014 287015 +TRIM43 HGNC:19015 129868 +TRIM48 HGNC:19021 79097 +TRIM49 HGNC:13431 57093 +TRIM51 HGNC:19023 84767 +TRIM60 HGNC:21162 166655 +TRIM67 HGNC:31859 440730 +TRIML1 HGNC:26698 339976 +TRPC5 HGNC:12337 7224 +TRPC7 HGNC:20754 57113 +TRPM1 HGNC:7146 4308 +TRPV5 HGNC:3145 56302 +TSGA13 HGNC:12369 114960 +TSHB HGNC:12372 7252 +TSPAN16 HGNC:30725 26526 +TSPO2 HGNC:21256 222642 +TSPY1 HGNC:12381 7258 +TSPYL6 HGNC:14521 388951 +TSSK1B HGNC:14968 83942 +TSSK2 HGNC:11401 23617 +TXNDC8 HGNC:31454 255220 +TYR HGNC:12442 7299 +UBQLN3 HGNC:12510 50613 +UMOD HGNC:12559 7369 +UROC1 HGNC:26444 131669 +USP17L2 HGNC:34434 377630 +USP26 HGNC:13485 83844 +USP29 HGNC:18563 57663 +UTS2R HGNC:4468 2837 +VAX1 HGNC:12660 11023 +VCX3A HGNC:18159 51481 +VHLL HGNC:30666 391104 +VN1R2 HGNC:19872 317701 +VN1R4 HGNC:19871 317703 +VN1R5 HGNC:19870 317705 +VPREB1 HGNC:12709 7441 +VRTN HGNC:20223 55237 +VSX2 HGNC:1975 338917 +WFDC10A HGNC:16139 140832 +WFDC11 HGNC:20478 259239 +WFDC9 HGNC:20380 259240 +XAGE2 HGNC:4112 9502 +XAGE5 HGNC:30930 170627 +XKR7 HGNC:23062 343702 +ZAN HGNC:12857 7455 +ZCCHC13 HGNC:31749 389874 +RTL4 HGNC:25214 340595 +ZG16 HGNC:30961 653808 +ZIC3 HGNC:12874 7547 +ZIM3 HGNC:16366 114026 +CBLL2 HGNC:26371 158506 +ZNF648 HGNC:18190 127665 +ZNF679 HGNC:28650 168417 +ZNF804B HGNC:21958 219578 +ZNRF4 HGNC:17726 148066 +ZP2 HGNC:13188 7783 +ZP4 HGNC:15770 57829 +ZSWIM2 HGNC:30990 151112 + diff --git a/modules/local/bagel2_bf.nf b/modules/local/bagel2_bf.nf index 5299915a..56fb66a0 100644 --- a/modules/local/bagel2_bf.nf +++ b/modules/local/bagel2_bf.nf @@ -26,7 +26,7 @@ process BAGEL2_BF { def prefix = task.ext.prefix ?: "${meta.treatment}" """ - BAGEL.py bf -i $foldchange -o ${meta.treatment} $args -e $reference_essentials -n $reference_nonessentials -c ${meta.treatment} + BAGEL.py bf -i $foldchange -o '${meta.treatment}.pr' $args -e $reference_essentials -n $reference_nonessentials -c ${meta.treatment} """ diff --git a/modules/local/bagel2_fc.nf b/modules/local/bagel2_fc.nf index bc0c4f12..bec12be1 100644 --- a/modules/local/bagel2_fc.nf +++ b/modules/local/bagel2_fc.nf @@ -23,7 +23,7 @@ process BAGEL2_FC { def prefix = task.ext.prefix ?: "${meta.id}" """ - BAGEL.py fc -i $count_table -o ${meta.treatment}_${meta.reference} -c $meta.reference $args + BAGEL.py fc -i $count_table -o ${meta.treatment}_vs_${meta.reference} -c $meta.reference $args """ diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 129c1229..8b060b9f 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -175,28 +175,37 @@ workflow CRISPRSEQ_SCREENING { .set { ch_bagel } counts = ch_bagel.combine(ch_counts) + //MAKE THIS PRETTIER if(!params.bagel_reference_essentials) { - ch_bagel_reference_essentials = Channel.fromPath("${projectDir}/assets/CEGv2.txt", checkIfExists: true) - } + ch_bagel_reference_essentials = Channel.fromPath("${projectDir}/assets/CEGv2.txt") + } else { + ch_bagel_reference_essentials = Channel.fromPath(params.bagel_reference_essentials) + } ch_bagel_reference_essentials.dump(tag: "input joined") if(!params.bagel_reference_nonessentials) { - ch_bagel_reference_nonessentials = Channel.fromPath("${projectDir}/assets/NEGv1.txt", checkIfExists: true) - } + ch_bagel_reference_nonessentials = Channel.fromPath("${projectDir}/assets/NEGv1.txt") + } else { + ch_bagel_reference_nonessentials = Channel.fromPath(params.bagel_reference_nonessentials) } BAGEL2_FC ( - counts, - ch_bagel_reference_essentials, - ch_bagel_reference_nonessentials + counts ) } + BAGEL2_FC.out.foldchange.dump(tag: "BAGEL2_FC dump") + + test = ch_bagel_reference_essentials.combine(BAGEL2_FC.out.foldchange) + test.dump(tag: "TEST") - //BAGEL2_BF ( - // BAGEL2_FC.out.foldchange - //) + + BAGEL2_BF ( + BAGEL2_FC.out.foldchange, + ch_bagel_reference_essentials, + ch_bagel_reference_nonessentials + ) if(params.mle_design_matrix) { From 03826f5e9e2de4522709102ef80775085a6a58e5 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 31 Jul 2023 09:20:38 +0200 Subject: [PATCH 027/133] add all module version --- workflows/crisprseq_targeted.nf | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 53c28942..2a3a5427 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -305,6 +305,7 @@ workflow CRISPRSEQ_TARGETED { return [ meta, reads[0], adapter_seqs[0] ] } .set { ch_adapter_seqs } + ch_versions = ch_versions.mix(FIND_ADAPTERS.out.versions.first()) // @@ -376,6 +377,7 @@ workflow CRISPRSEQ_TARGETED { EXTRACT_UMIS ( SEQTK_SEQ_MASK.out.fastx ) + ch_versions = ch_versions.mix(EXTRACT_UMIS.out.versions.first()) // @@ -384,6 +386,7 @@ workflow CRISPRSEQ_TARGETED { VSEARCH_CLUSTER ( EXTRACT_UMIS.out.fasta ) + ch_versions = ch_versions.mix(VSEARCH_CLUSTER.out.versions.first()) // Obtain a file with UBS (UBI bin size) and UMI ID VSEARCH_CLUSTER.out.clusters @@ -434,6 +437,7 @@ workflow CRISPRSEQ_TARGETED { ch_umi_bysize.cluster, Channel.value("--sortbysize") ) + ch_versions = ch_versions.mix(VSEARCH_SORT.out.versions.first()) // Get the correspondent fasta sequencences from top cluster sequences // Replaces the sequence name adding the "centroid_" prefix to avoid having two sequences with the same name in following steps @@ -496,6 +500,7 @@ workflow CRISPRSEQ_TARGETED { false, false ) + ch_versions = ch_versions.mix(MINIMAP2_ALIGN_UMI_1.out.versions.first()) // Only continue with clusters that have aligned sequences @@ -511,6 +516,7 @@ workflow CRISPRSEQ_TARGETED { .join(ch_top_clusters_sequence) .join(ch_minimap_1) ) + ch_versions = ch_versions.mix(RACON_1.out.versions.first()) // // MODULE: Mapping with minimap2 - cycle 2 @@ -523,6 +529,7 @@ workflow CRISPRSEQ_TARGETED { false, false ) + ch_versions = ch_versions.mix(MINIMAP2_ALIGN_UMI_2.out.versions.first()) // Only continue with clusters that have aligned sequences MINIMAP2_ALIGN_UMI_2.out.paf @@ -537,6 +544,7 @@ workflow CRISPRSEQ_TARGETED { .join(RACON_1.out.improved_assembly) .join(ch_minimap_2) ) + ch_versions = ch_versions.mix(RACON_2.out.versions.first()) // @@ -546,6 +554,7 @@ workflow CRISPRSEQ_TARGETED { ch_clusters_sequence .join(RACON_2.out.improved_assembly) ) + ch_versions = ch_versions.mix(MEDAKA.out.versions.first()) // Collect all consensus UMI sequences into one single file per sample MEDAKA.out.assembly @@ -577,6 +586,7 @@ workflow CRISPRSEQ_TARGETED { SEQTK_SEQ_FATOFQ ( ch_umi_consensus ) + ch_versions = ch_versions.mix(SEQTK_SEQ_FATOFQ.out.versions.first()) } ch_preprocess_reads = params.umi_clustering ? SEQTK_SEQ_FATOFQ.out.fastx : SEQTK_SEQ_MASK.out.fastx @@ -665,6 +675,7 @@ workflow CRISPRSEQ_TARGETED { ORIENT_REFERENCE.out.reference .join(ch_seq_template) ) + ch_versions = ch_versions.mix(TEMPLATE_REFERENCE.out.versions.first()) // @@ -725,6 +736,7 @@ workflow CRISPRSEQ_TARGETED { CIGAR_PARSER ( ch_to_parse_cigar ) + ch_versions = ch_versions.mix(CIGAR_PARSER.out.versions.first()) // From f5ab95de4a19021af7d56928c4d7269dd7209db9 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 31 Jul 2023 09:40:15 +0200 Subject: [PATCH 028/133] return Rscript version instead of R --- modules/local/cigar_parser.nf | 2 +- modules/local/template_reference.nf | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/local/cigar_parser.nf b/modules/local/cigar_parser.nf index 8c87314a..fcdce47a 100644 --- a/modules/local/cigar_parser.nf +++ b/modules/local/cigar_parser.nf @@ -39,7 +39,7 @@ process CIGAR_PARSER { cat <<-END_VERSIONS > versions.yml "${task.process}": - R: \$(R --version) + Rscript: \$(Rscript --version) END_VERSIONS """ } diff --git a/modules/local/template_reference.nf b/modules/local/template_reference.nf index 12c24553..28fcfd45 100644 --- a/modules/local/template_reference.nf +++ b/modules/local/template_reference.nf @@ -29,7 +29,7 @@ process TEMPLATE_REFERENCE { cat <<-END_VERSIONS > versions.yml "${task.process}": - R: \$(R --version) + Rscript: \$(Rscript --version) END_VERSIONS """ } From 0bebd941a03021b612b7ba4675ab9fd6a071effb Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Mon, 31 Jul 2023 10:07:31 +0200 Subject: [PATCH 029/133] working modules of bagel --- modules/local/bagel2_bf.nf | 4 +--- workflows/crisprseq_screening.nf | 11 +++++------ 2 files changed, 6 insertions(+), 9 deletions(-) diff --git a/modules/local/bagel2_bf.nf b/modules/local/bagel2_bf.nf index 56fb66a0..4d3deb6a 100644 --- a/modules/local/bagel2_bf.nf +++ b/modules/local/bagel2_bf.nf @@ -10,9 +10,7 @@ process BAGEL2_BF { input: - tuple val(meta), path(foldchange) - path(reference_essentials) - path(reference_nonessentials) + tuple val(meta), path(foldchange), path(reference_essentials), path(reference_nonessentials) output: tuple val(meta), path("*.pr"), emit: pr diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 8b060b9f..ff46746f 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -182,7 +182,7 @@ workflow CRISPRSEQ_SCREENING { ch_bagel_reference_essentials = Channel.fromPath(params.bagel_reference_essentials) } - ch_bagel_reference_essentials.dump(tag: "input joined") + //ch_bagel_reference_essentials.dump(tag: "input joined") if(!params.bagel_reference_nonessentials) { ch_bagel_reference_nonessentials = Channel.fromPath("${projectDir}/assets/NEGv1.txt") @@ -195,16 +195,15 @@ workflow CRISPRSEQ_SCREENING { ) } - BAGEL2_FC.out.foldchange.dump(tag: "BAGEL2_FC dump") - test = ch_bagel_reference_essentials.combine(BAGEL2_FC.out.foldchange) + test = BAGEL2_FC.out.foldchange.combine(ch_bagel_reference_essentials) + .combine(ch_bagel_reference_nonessentials) + test.dump(tag: "TEST") BAGEL2_BF ( - BAGEL2_FC.out.foldchange, - ch_bagel_reference_essentials, - ch_bagel_reference_nonessentials + test ) From 64e2fa12975f5636d647101435cb77bef6a0bf3f Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 31 Jul 2023 10:07:33 +0200 Subject: [PATCH 030/133] remove module samtools faidx --- modules.json | 5 --- modules/nf-core/samtools/faidx/main.nf | 44 ----------------------- modules/nf-core/samtools/faidx/meta.yml | 47 ------------------------- workflows/crisprseq_targeted.nf | 1 - 4 files changed, 97 deletions(-) delete mode 100644 modules/nf-core/samtools/faidx/main.nf delete mode 100644 modules/nf-core/samtools/faidx/meta.yml diff --git a/modules.json b/modules.json index 22939a8d..e396008c 100644 --- a/modules.json +++ b/modules.json @@ -102,11 +102,6 @@ "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", "installed_by": ["modules"] }, - "samtools/faidx": { - "branch": "master", - "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", - "installed_by": ["modules"] - }, "samtools/index": { "branch": "master", "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", diff --git a/modules/nf-core/samtools/faidx/main.nf b/modules/nf-core/samtools/faidx/main.nf deleted file mode 100644 index 4dd0e5b0..00000000 --- a/modules/nf-core/samtools/faidx/main.nf +++ /dev/null @@ -1,44 +0,0 @@ -process SAMTOOLS_FAIDX { - tag "$fasta" - label 'process_single' - - conda "bioconda::samtools=1.17" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/samtools:1.17--h00cdaf9_0' : - 'biocontainers/samtools:1.17--h00cdaf9_0' }" - - input: - tuple val(meta), path(fasta) - - output: - tuple val(meta), path ("*.fai"), emit: fai - tuple val(meta), path ("*.gzi"), emit: gzi, optional: true - path "versions.yml" , emit: versions - - when: - task.ext.when == null || task.ext.when - - script: - def args = task.ext.args ?: '' - """ - samtools \\ - faidx \\ - $args \\ - $fasta - - cat <<-END_VERSIONS > versions.yml - "${task.process}": - samtools: \$(echo \$(samtools --version 2>&1) | sed 's/^.*samtools //; s/Using.*\$//') - END_VERSIONS - """ - - stub: - """ - touch ${fasta}.fai - cat <<-END_VERSIONS > versions.yml - - "${task.process}": - samtools: \$(echo \$(samtools --version 2>&1) | sed 's/^.*samtools //; s/Using.*\$//') - END_VERSIONS - """ -} diff --git a/modules/nf-core/samtools/faidx/meta.yml b/modules/nf-core/samtools/faidx/meta.yml deleted file mode 100644 index fe2fe9a1..00000000 --- a/modules/nf-core/samtools/faidx/meta.yml +++ /dev/null @@ -1,47 +0,0 @@ -name: samtools_faidx -description: Index FASTA file -keywords: - - index - - fasta -tools: - - samtools: - description: | - SAMtools is a set of utilities for interacting with and post-processing - short DNA sequence read alignments in the SAM, BAM and CRAM formats, written by Heng Li. - These files are generated as output by short read aligners like BWA. - homepage: http://www.htslib.org/ - documentation: http://www.htslib.org/doc/samtools.html - doi: 10.1093/bioinformatics/btp352 - licence: ["MIT"] -input: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. [ id:'test', single_end:false ] - - fasta: - type: file - description: FASTA file - pattern: "*.{fa,fasta}" -output: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. [ id:'test', single_end:false ] - - fai: - type: file - description: FASTA index file - pattern: "*.{fai}" - - gzi: - type: file - description: Optional gzip index file for compressed inputs - pattern: "*.gzi" - - versions: - type: file - description: File containing software versions - pattern: "versions.yml" -authors: - - "@drpatelh" - - "@ewels" - - "@phue" diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 2a3a5427..ed1a56af 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -75,7 +75,6 @@ include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_ORIGINAL } from '../modules/nf-core/m include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_UMI_1 } from '../modules/nf-core/minimap2/align/main' include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_UMI_2 } from '../modules/nf-core/minimap2/align/main' include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_TEMPLATE } from '../modules/nf-core/minimap2/align/main' -include { SAMTOOLS_FAIDX } from '../modules/nf-core/samtools/faidx/main' include { MINIMAP2_INDEX } from '../modules/nf-core/minimap2/index/main' include { MEDAKA } from '../modules/nf-core/medaka/main' include { CUTADAPT } from '../modules/nf-core/cutadapt/main' From a6d40903775ab4fbd7741a53ad6c00602dab729f Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 1 Aug 2023 14:40:47 +0200 Subject: [PATCH 031/133] All of the bagel modules and output graphs --- modules/local/{bagel2_bf.nf => bagel2/bf.nf} | 4 +- modules/local/{bagel2_fc.nf => bagel2/fc.nf} | 0 modules/local/bagel2/graph.nf | 77 ++++++++++++++++++++ modules/local/bagel2/pr.nf | 30 ++++++++ workflows/crisprseq_screening.nf | 27 +++++-- 5 files changed, 128 insertions(+), 10 deletions(-) rename modules/local/{bagel2_bf.nf => bagel2/bf.nf} (89%) rename modules/local/{bagel2_fc.nf => bagel2/fc.nf} (100%) create mode 100644 modules/local/bagel2/graph.nf create mode 100644 modules/local/bagel2/pr.nf diff --git a/modules/local/bagel2_bf.nf b/modules/local/bagel2/bf.nf similarity index 89% rename from modules/local/bagel2_bf.nf rename to modules/local/bagel2/bf.nf index 4d3deb6a..1353965c 100644 --- a/modules/local/bagel2_bf.nf +++ b/modules/local/bagel2/bf.nf @@ -13,7 +13,7 @@ process BAGEL2_BF { tuple val(meta), path(foldchange), path(reference_essentials), path(reference_nonessentials) output: - tuple val(meta), path("*.pr"), emit: pr + tuple val(meta), path("*.bf"), emit: bf //path "versions.yml" , emit: versions when: @@ -24,7 +24,7 @@ process BAGEL2_BF { def prefix = task.ext.prefix ?: "${meta.treatment}" """ - BAGEL.py bf -i $foldchange -o '${meta.treatment}.pr' $args -e $reference_essentials -n $reference_nonessentials -c ${meta.treatment} + BAGEL.py bf -i $foldchange -o '${meta.treatment}.bf' $args -e $reference_essentials -n $reference_nonessentials -c ${meta.treatment} """ diff --git a/modules/local/bagel2_fc.nf b/modules/local/bagel2/fc.nf similarity index 100% rename from modules/local/bagel2_fc.nf rename to modules/local/bagel2/fc.nf diff --git a/modules/local/bagel2/graph.nf b/modules/local/bagel2/graph.nf new file mode 100644 index 00000000..1bc149a4 --- /dev/null +++ b/modules/local/bagel2/graph.nf @@ -0,0 +1,77 @@ +// TODO nf-core: If in doubt look at other nf-core/modules to see how we are doing things! :) +// https://github.com/nf-core/modules/tree/master/modules/nf-core/ +// You can also ask for help via your pull request or on the #modules channel on the nf-core Slack workspace: +// https://nf-co.re/join +// TODO nf-core: A module file SHOULD only define input and output files as command-line parameters. +// All other parameters MUST be provided using the "task.ext" directive, see here: +// https://www.nextflow.io/docs/latest/process.html#ext +// where "task.ext" is a string. +// Any parameters that need to be evaluated in the context of a particular sample +// e.g. single-end/paired-end data MUST also be defined and evaluated appropriately. +// TODO nf-core: Software that can be piped together SHOULD be added to separate module files +// unless there is a run-time, storage advantage in implementing in this way +// e.g. it's ok to have a single module for bwa to output BAM instead of SAM: +// bwa mem | samtools view -B -T ref.fasta +// TODO nf-core: Optional inputs are not currently supported by Nextflow. However, using an empty +// list (`[]`) instead of a file can be used to work around this issue. + +process BAGEL2_GRAPH { + tag "$meta.id" + label 'process_single' + + conda "python=3.11.4 pandas=2.0.3 numpy=1.25.1 scikit-learn=1.3.0 click=8.1.6 matplotlib=3.7.2" + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? + 'https://depot.galaxyproject.org/singularity/mulled-v2-54e0353146eca1531516863e8235bf7385d76663:c9ff1a9eec871c54cbea815eae778da702623978-0': + 'biocontainers/mulled-v2-54e0353146eca1531516863e8235bf7385d76663:c9ff1a9eec871c54cbea815eae778da702623978-0' }" + + + input: + tuple val(meta), path(pr) + + output: + //path "versions.yml" , emit: versions + path("*.png") , emit: pictures + + when: + task.ext.when == null || task.ext.when + + script: + def args = task.ext.args ?: '' + def prefix = task.ext.prefix ?: "${meta.id}" + + """ + #!/usr/bin/env python3 + + import pandas as pd + import matplotlib.pyplot as plt + + pr_data = pd.read_table('${pr}', index_col=0) + + plt.plot(pr_data.Recall, pr_data.Precision, linewidth=2) + plt.xlim(0, 1.01) + plt.ylim(0, 1.02) + plt.xlabel('Recall') + plt.ylabel('Precision (1-FDR)') + plt.title('Precision-Recall Plot') + + # Save the plot to a PNG file + file_name = 'PR_plot_{}_vs_{}.png'.format('${meta.treatment}', '${meta.reference}') + + plt.savefig(file_name) + + # Show the plot (optional) + plt.show() + + pr_data.hist('BF', bins=50, range=(-100,100)) + plt.xlabel('Bayes Factor') + plt.ylabel('Number of Genes') + + file_name = 'barplot_{}_vs_{}.png'.format('${meta.treatment}', '${meta.reference}') + + plt.savefig(file_name) + plt.show() + + """ + + +} diff --git a/modules/local/bagel2/pr.nf b/modules/local/bagel2/pr.nf new file mode 100644 index 00000000..4a5616b4 --- /dev/null +++ b/modules/local/bagel2/pr.nf @@ -0,0 +1,30 @@ +process BAGEL2_PR { + tag "$meta.treatment" + label 'process_single' + + conda "python=3.11.4 pandas=2.0.3 numpy=1.25.1 scikit-learn=1.3.0 click=8.1.6" + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? + 'https://depot.galaxyproject.org/singularity/mulled-v2-1ec3f69e7819b1ab3e6f57d16594eb40ed7d6792:f94a27287a1921ce0dacd411d48acff738d3ca90-0': + 'biocontainers/mulled-v2-1ec3f69e7819b1ab3e6f57d16594eb40ed7d6792:f94a27287a1921ce0dacd411d48acff738d3ca90-0' }" + + + input: + tuple val(meta), path(bf), path(reference_essentials), path(reference_nonessentials) + + output: + tuple val(meta), path("*.pr") , emit: pr + + //path "versions.yml" , emit: versions + + when: + task.ext.when == null || task.ext.when + + script: + def args = task.ext.args ?: '' + def prefix = task.ext.prefix ?: "${meta.id}" + + """ + BAGEL.py pr -i $bf -o '${meta.treatment}.pr' -e $reference_essentials -n $reference_nonessentials + """ + +} diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index ff46746f..317838d2 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -66,8 +66,10 @@ include { MAGECK_MLE } from '../modules/nf-core/mageck/mle/main include { MAGECK_TEST } from '../modules/nf-core/mageck/test/main' include { CUSTOM_DUMPSOFTWAREVERSIONS } from '../modules/nf-core/custom/dumpsoftwareversions/main' include { CRISPRCLEANR_NORMALIZE } from '../modules/nf-core/crisprcleanr/normalize/main' -include { BAGEL2_FC } from '../modules/local/bagel2_fc' -include { BAGEL2_BF } from '../modules/local/bagel2_bf' +include { BAGEL2_FC } from '../modules/local/bagel2/fc' +include { BAGEL2_BF } from '../modules/local/bagel2/bf' +include { BAGEL2_PR } from '../modules/local/bagel2/pr' +include { BAGEL2_GRAPH } from '../modules/local/bagel2/graph' /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -175,7 +177,7 @@ workflow CRISPRSEQ_SCREENING { .set { ch_bagel } counts = ch_bagel.combine(ch_counts) - //MAKE THIS PRETTIER + //TO DO MAKE THIS PRETTIER if(!params.bagel_reference_essentials) { ch_bagel_reference_essentials = Channel.fromPath("${projectDir}/assets/CEGv2.txt") } else { @@ -184,6 +186,7 @@ workflow CRISPRSEQ_SCREENING { //ch_bagel_reference_essentials.dump(tag: "input joined") + //TO DO make this prettier if(!params.bagel_reference_nonessentials) { ch_bagel_reference_nonessentials = Channel.fromPath("${projectDir}/assets/NEGv1.txt") } else { @@ -195,17 +198,25 @@ workflow CRISPRSEQ_SCREENING { ) } - - test = BAGEL2_FC.out.foldchange.combine(ch_bagel_reference_essentials) + ch_bagel_bf = BAGEL2_FC.out.foldchange.combine(ch_bagel_reference_essentials) .combine(ch_bagel_reference_nonessentials) - test.dump(tag: "TEST") - BAGEL2_BF ( - test + ch_bagel_bf ) + BAGEL2_BF.out.bf.dump(tag:"BAGEL2_BF dump") + ch_bagel_pr = BAGEL2_BF.out.bf.combine(ch_bagel_reference_essentials) + .combine(ch_bagel_reference_nonessentials) + + BAGEL2_PR ( + ch_bagel_pr + ) + BAGEL2_PR.out.pr.dump(tag:"TEST PR DUMP") + BAGEL2_GRAPH ( + BAGEL2_PR.out.pr + ) if(params.mle_design_matrix) { ch_mle = ch_counts.combine(ch_design) From 26c8df37c901a7a660c38e643964df097aee79a9 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Wed, 2 Aug 2023 10:43:31 +0200 Subject: [PATCH 032/133] add edition plot to multiQC --- assets/multiqc_config.yml | 48 +++++++++++++++++++++++++++++++++ bin/cigar_parser.R | 30 ++++++++------------- docs/output/targeted.md | 2 +- workflows/crisprseq_targeted.nf | 1 + 4 files changed, 61 insertions(+), 20 deletions(-) diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index 73d174a7..c7fc0616 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -11,3 +11,51 @@ report_section_order: order: -1002 export_plots: true + +# Custom tables and plots +custom_data: + # Summary of edition plot + edition_plot: + plot_type: "bargraph" + file_format: "csv" + section_name: "RESULTS: Type of edition" + description: | + Number of reads classified according to edition types. + Reads are classified between WT (without an edit), template based modifications and indels. + Indels are divided between deletions, insertions and delins (deletion + insertion). + Deletions and insertions can be out of frame or in frame. + categories: + Wt: + name: "WT reads" + color: "#C0C0C0" + Template-based: + name: "Template-based modifications" + color: "#E9AF82" + Delins: + name: "DelIns" + color: "#D5B1F5" + Ins_inframe: + name: "Insertions in frame" + color: "#B5D5C1" + Ins_outframe: + name: "Insertions out of frame" + color: "#80D09F" + Dels_inframe: + name: "Deletions in frame" + color: "#BFD0EB" + Dels_outframe: + name: "Deletions out of frame" + color: "#699AE9" + pconfig: + id: "edition_bargraph" + title: "Reads by edition type" + ylab: "Read count" +sp: + edition_plot: + fn: "*_edits.csv" + +# Define the order of sections +# Show FastQC before Custom results +module_order: + - fastqc + - custom_content diff --git a/bin/cigar_parser.R b/bin/cigar_parser.R index 7c2179da..2da1fd9e 100755 --- a/bin/cigar_parser.R +++ b/bin/cigar_parser.R @@ -1088,7 +1088,7 @@ if (dim(alignment_info)[1] != 0){ ##### Summary: edition ########### - edit_classes <- c("Wt", "Template-based", "Indels", "Insertions", "Deletions", "Delins", "Dels inframe", "Dels outfarme", "Ins inframe", "Ins outfarme") + edit_classes <- c("Wt", "Template-based", "Indels", "Insertions", "Deletions", "Delins", "Dels_inframe", "Dels_outframe", "Ins_inframe", "Ins_outframe") ##### Update wt if template-based is a substitution if ( t_type == "subs"){ @@ -1098,21 +1098,11 @@ if (dim(alignment_info)[1] != 0){ edit_counts <- c(wt_reads, t_reads, indels_count, ins_count, dels_count, delin_count, in_frame_dels, out_frame_dels, in_frame_ins, out_frame_ins ) edit_summary <- data.frame(classes = unlist(edit_classes), counts = unlist(edit_counts)) - total_reads <- wt_reads+t_reads+indels_count - wt_perc <- (wt_reads/total_reads)*100 - temp_perc <- ((t_reads)/total_reads)*100 - indels_perc <- (indels_count/total_reads)*100 - ins_perc <- (ins_count/indels_count)*100 - dels_perc <- (dels_count/indels_count)*100 - delins_perc <- (delin_count/indels_count)*100 - in_frame_ins_perc <- (in_frame_ins/ins_count)*100 - out_frame_ins_perc <- (out_frame_ins/ins_count)*100 - in_frame_dels_perc <- (in_frame_dels/dels_count)*100 - out_frame_dels_perc <- (out_frame_dels/dels_count)*100 - - edit_classes_perc <- c("Wt", "Template-based", "Indels", "Delins", "Insertions", "Ins inframe", "Ins outfarme", "Deletions", "Dels inframe", "Dels outfarme") - edit_counts_perc <- c(round(wt_perc,2), round(temp_perc,2), round(indels_perc,2), round(delins_perc,2), round(ins_perc,2), round(in_frame_ins_perc,2), round(out_frame_ins_perc,2), round(dels_perc,2), round(in_frame_dels_perc,2), round(out_frame_dels_perc,2 )) - edit_summary_perc <- data.frame(classes = unlist(edit_classes_perc), counts = unlist(edit_counts_perc)) + edit_classes_perc <- c("Wt", "Template-based", "Delins", "Ins_inframe", "Ins_outframe", "Dels_inframe", "Dels_outframe") + edit_counts_perc <- c(wt_reads, t_reads, delin_count, in_frame_ins, out_frame_ins, in_frame_dels, out_frame_dels) + edit_summary_perc <- data.frame(sample = unlist(edit_counts_perc), row.names = unlist(edit_classes_perc)) + colnames(edit_summary_perc)[1] = results_path # Rename the column to add the sample ID + edit_summary_perc <- t(edit_summary_perc) # t() will add classes as columns and counts as values, 1 row per sample ### Save edits count write.csv(edit_summary_perc,file=paste0(results_path, "_edits.csv")) @@ -1201,8 +1191,10 @@ if (dim(alignment_info)[1] != 0){ separated_indels = data.frame(matrix(nrow = 1, ncol = length(columns))) colnames(separated_indels) = columns write.csv(separated_indels,file=paste0(results_path, "_Badlyindels.csv")) - edit_classes_perc <- c("Wt", "Template-based", "Indels", "Delins", "Insertions", "Ins inframe", "Ins outfarme", "Deletions", "Dels inframe", "Dels outfarme") - edit_counts_perc <- c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0) - edit_summary_perc <- data.frame(classes = unlist(edit_classes_perc), counts = unlist(edit_counts_perc)) + edit_classes_perc <- c("Wt", "Template-based", "Delins", "Ins_inframe", "Ins_outframe", "Dels_inframe", "Dels_outframe") + edit_counts_perc <- c(0, 0, 0, 0, 0, 0, 0) + edit_summary_perc <- data.frame(sample = unlist(edit_counts_perc), row.names = unlist(edit_classes_perc)) + colnames(edit_summary_perc)[1] = results_path# Rename the column to add the sample ID + edit_summary_perc <- t(edit_summary_perc) # t() will add classes as columns and counts as values, 1 row per sample write.csv(edit_summary_perc,file=paste0(results_path, "_edits.csv")) } diff --git a/docs/output/targeted.md b/docs/output/targeted.md index b04ca3d8..5aa68b3e 100644 --- a/docs/output/targeted.md +++ b/docs/output/targeted.md @@ -252,7 +252,7 @@ This section contains the final output of the pipeline. It contains information - `*_cutSite.json`: Contains the protospacer cut site position in the reference. - `*_edition.html`: Interactive pie chart with the percentage of edition types. Reads are classified between WT (without an edit) and indels. Indels are divided between deletions, insertions and delins (deletion + insertion). Deletions and insertions can be out of frame or in frame. ![Test sample hCas9-AAVS1-a edition plot](../images/hCas9-AAVS1-a_edition.png) - - `*_edits.csv`: Table containing the data visualized in the pie chart. + - `*_edits.csv`: Table containing the number of reads classified to each edition type. Contains the data visualized in the pie chart. - `*_indels.csv`: Table containing information of all reads. Edit type, edit start and length, if the edition happens above the error rate, if it's located into the common edit window, the frequency, the percentage, the pattern, surrounding nucleotides in case of insertions, the protospacer cut site, the sample id, number of aligned reads and number of reads with and without a template modification. - `*_QC-indels.html`: Interactive pie chart with information about aligned reads. Reads are classified between WT and containing indels. Both types are classified between passing the filtering steps or not. Indel reads passing the filtering steps are divided in reads with a modification above the error rate and located in the common edit window, above the error rate but not in the edit region, vice versa, or any of those conditions. ![Test sample hCas9-AAVS1-a QC indels plot](../images/hCas9-AAVS1-a_QC-indels.png) diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index ed1a56af..511231c8 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -757,6 +757,7 @@ workflow CRISPRSEQ_TARGETED { ch_multiqc_files = Channel.empty() ch_multiqc_files = ch_multiqc_files.mix(ch_workflow_summary.collectFile(name: 'workflow_summary_mqc.yaml')) ch_multiqc_files = ch_multiqc_files.mix(ch_methods_description.collectFile(name: 'methods_description_mqc.yaml')) + ch_multiqc_files = ch_multiqc_files.mix(CIGAR_PARSER.out.edition.collect{it[2]}.ifEmpty([])) ch_multiqc_files = ch_multiqc_files.mix(CUSTOM_DUMPSOFTWAREVERSIONS.out.mqc_yml.collect()) ch_multiqc_files = ch_multiqc_files.mix(FASTQC.out.zip.collect{it[1]}.ifEmpty([])) From 41a9eaa0c991b1f630c7b4dc36d3cfad343c4d07 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 3 Aug 2023 09:00:22 +0200 Subject: [PATCH 033/133] add indel QC plot to multiqc --- assets/multiqc_config.yml | 44 ++++++++++++++++++++++++++++++++- bin/cigar_parser.R | 22 +++++++++++++---- modules/local/cigar_parser.nf | 1 + workflows/crisprseq_targeted.nf | 1 + 4 files changed, 62 insertions(+), 6 deletions(-) diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index c7fc0616..d40cb078 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -23,7 +23,7 @@ custom_data: Number of reads classified according to edition types. Reads are classified between WT (without an edit), template based modifications and indels. Indels are divided between deletions, insertions and delins (deletion + insertion). - Deletions and insertions can be out of frame or in frame. + Deletions and insertions can be out of frame or in frame categories: Wt: name: "WT reads" @@ -50,9 +50,51 @@ custom_data: id: "edition_bargraph" title: "Reads by edition type" ylab: "Read count" + # Indels QC plot + indel_qc_plot: + plot_type: "bargraph" + file_format: "csv" + section_name: "RESULTS: QC of indels" + description: | + Number of reads classified between WT and containing indels. + Both types are classified between passing the filtering steps or not. + Indel reads passing the filtering steps are divided input: + - reads with a modification above the error rate and located in the common edit window + - above the error rate but not in the edit region + - below the error rate and within the edit region + - below the error rate and not in the the edit region + categories: + Wt NOT passing filter: + name: "WT reads not passing filtering steps" + color: "#302F2F" + Wt passing filter: + name: "WT reads passing filtering steps" + color: "#C0C0C0" + Indels NOT passing filter: + name: "Reads with indels not passing filtering steps" + color: "#696868" + Above error & in pick: + name: "Reads with indels above the error rate and within the edition region" + color: "#80D09F" + NOT above error & in pick: + name: "Reads with indels below the error rate and within the edition region" + color: "#FFB570" + Above error & NOT in pick: + name: "Reads with indels above the error rate and outside the edition region" + color: "#F89D47" + NOT above error & NOT in pick: + name: "Reads with indels below the error rate and outside the edition region" + color: "#EB5555" + pconfig: + id: "indelqc_bargraph" + title: "Read indels quality control" + ylab: "Read count" + sp: edition_plot: fn: "*_edits.csv" + indel_qc_plot: + fn: "*_QC-indels.csv" # Define the order of sections # Show FastQC before Custom results diff --git a/bin/cigar_parser.R b/bin/cigar_parser.R index 2da1fd9e..523519fd 100755 --- a/bin/cigar_parser.R +++ b/bin/cigar_parser.R @@ -1008,7 +1008,6 @@ if (dim(alignment_info)[1] != 0){ reads_classes <- c("Raw reads", "Merged reads", "Quality filtered reads", "Clustered reads", "Aligned reads") reads_counts <- c(as.character(reads), as.character(merged_reads), as.character(trimmed_reads), as.character(clustered_reads), as.character(aligned_reads)) - write(reads_counts, stdout()) reads_summary <- data.frame(classes = unlist(reads_classes), counts = unlist(reads_counts)) ########### Pre-variant calling counts @@ -1026,8 +1025,15 @@ if (dim(alignment_info)[1] != 0){ "Above error & in pick", "NOT above error & in pick", "NOT above error & NOT in pick", "Above error & NOT in pick") prevc_counts <- c(aligned_reads, wt_reads+incorrect_wt, dim(separated_indels)[1]+trunc_reads, wt_reads, incorrect_wt, dim(separated_indels)[1], trunc_reads, ep, nep, nenp, enp) - write(prevc_counts, stdout()) prevc_summary <- data.frame(classes = unlist(prevc_classes), counts = unlist(prevc_counts)) + # Write prevc_summary data to a csv for multiQC plots + prevc_classes_mqc <- c("Wt passing filter", "Wt NOT passing filter", "Indels NOT passing filter", + "Above error & in pick", "NOT above error & in pick", "NOT above error & NOT in pick", "Above error & NOT in pick") + prevc_counts_mqc <- c(wt_reads, incorrect_wt, trunc_reads, ep, nep, nenp, enp) + indel_filters <- data.frame(sample = unlist(prevc_counts_mqc), row.names = unlist(prevc_classes_mqc)) + colnames(indel_filters)[1] = results_path # Rename the column to add the sample ID + indel_filters <- t(indel_filters) # t() will add classes as columns and counts as values, 1 row per sample + write.csv(indel_filters,file=paste0(results_path, "_QC-indels.csv")) } else { ###########################In case we don't have indels but maybe there are template based editions @@ -1064,7 +1070,6 @@ if (dim(alignment_info)[1] != 0){ reads_classes <- c("Raw reads", "Merged reads", "Quality filtered reads", "Clustered reads", "Aligned reads") reads_counts <- c(as.character(reads), as.character(merged_reads), as.character(trimmed_reads), as.character(clustered_reads), as.character(aligned_reads)) - write(reads_counts, stdout()) reads_summary <- data.frame(classes = unlist(reads_classes), counts = unlist(reads_counts)) ########### Pre-variant calling counts @@ -1076,12 +1081,19 @@ if (dim(alignment_info)[1] != 0){ prevc_classes <- c("Aligned reads", "Wt", "Indels", "Wt passing filter", "Wt NOT passing filter", "Indels passing filter", "Indels NOT passing filter", "Above error & in pick", "NOT above error & in pick", "NOT above error & NOT in pick", "Above error & NOT in pick") - prevc_counts <- c(aligned_reads, wt_reads+incorrect_wt, 0+trunc_reads, wt_reads, incorrect_wt, 0, trunc_reads, + prevc_counts <- c(aligned_reads, wt_reads+incorrect_wt, dim(separated_indels)[1]+trunc_reads, wt_reads, incorrect_wt, dim(separated_indels)[1], trunc_reads, ep, nep, nenp, enp) - write(prevc_counts, stdout()) prevc_summary <- data.frame(classes = unlist(prevc_classes), counts = unlist(prevc_counts)) exportJson <- toJSON(cut_site) write(exportJson, paste(sample_id,"_cutSite.json",sep = "")) + # Write prevc_summary data to a csv for multiQC plots + prevc_classe_mqc <- c("Wt passing filter", "Wt NOT passing filter", "Indels NOT passing filter", + "Above error & in pick", "NOT above error & in pick", "NOT above error & NOT in pick", "Above error & NOT in pick") + prevc_counts_mqc <- c(wt_reads, incorrect_wt, trunc_reads, ep, nep, nenp, enp) + indel_filters <- data.frame(sample = unlist(prevc_counts_mqc), row.names = unlist(prevc_classe_mqc)) + colnames(indel_filters)[1] = results_path # Rename the column to add the sample ID + indel_filters <- t(indel_filters) # t() will add classes as columns and counts as values, 1 row per sample + write.csv(indel_filters,file=paste0(results_path, "_QC-indels.csv")) } ########### diff --git a/modules/local/cigar_parser.nf b/modules/local/cigar_parser.nf index fcdce47a..d1ffa10b 100644 --- a/modules/local/cigar_parser.nf +++ b/modules/local/cigar_parser.nf @@ -14,6 +14,7 @@ process CIGAR_PARSER { tuple val(meta), path("*indels.csv"), path("*_subs-perc.csv"), emit: indels tuple val(meta), path("*.html"), path("*edits.csv") , emit: edition tuple val(meta), path("*cutSite.json") , emit: cutsite + tuple val(meta), path("*_QC-indels.csv") , emit: qcindels path "versions.yml" , emit: versions when: diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 511231c8..1814eaef 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -758,6 +758,7 @@ workflow CRISPRSEQ_TARGETED { ch_multiqc_files = ch_multiqc_files.mix(ch_workflow_summary.collectFile(name: 'workflow_summary_mqc.yaml')) ch_multiqc_files = ch_multiqc_files.mix(ch_methods_description.collectFile(name: 'methods_description_mqc.yaml')) ch_multiqc_files = ch_multiqc_files.mix(CIGAR_PARSER.out.edition.collect{it[2]}.ifEmpty([])) + ch_multiqc_files = ch_multiqc_files.mix(CIGAR_PARSER.out.qcindels.collect{it[1]}.ifEmpty([])) ch_multiqc_files = ch_multiqc_files.mix(CUSTOM_DUMPSOFTWAREVERSIONS.out.mqc_yml.collect()) ch_multiqc_files = ch_multiqc_files.mix(FASTQC.out.zip.collect{it[1]}.ifEmpty([])) From 6f59fa0f994af081d5a7b78f397bd6b6f8222ef3 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 3 Aug 2023 09:06:00 +0200 Subject: [PATCH 034/133] remove module samtools faidx --- modules.json | 5 --- modules/nf-core/samtools/faidx/main.nf | 44 ----------------------- modules/nf-core/samtools/faidx/meta.yml | 47 ------------------------- workflows/crisprseq_targeted.nf | 1 - 4 files changed, 97 deletions(-) delete mode 100644 modules/nf-core/samtools/faidx/main.nf delete mode 100644 modules/nf-core/samtools/faidx/meta.yml diff --git a/modules.json b/modules.json index 22939a8d..e396008c 100644 --- a/modules.json +++ b/modules.json @@ -102,11 +102,6 @@ "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", "installed_by": ["modules"] }, - "samtools/faidx": { - "branch": "master", - "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", - "installed_by": ["modules"] - }, "samtools/index": { "branch": "master", "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", diff --git a/modules/nf-core/samtools/faidx/main.nf b/modules/nf-core/samtools/faidx/main.nf deleted file mode 100644 index 4dd0e5b0..00000000 --- a/modules/nf-core/samtools/faidx/main.nf +++ /dev/null @@ -1,44 +0,0 @@ -process SAMTOOLS_FAIDX { - tag "$fasta" - label 'process_single' - - conda "bioconda::samtools=1.17" - container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/samtools:1.17--h00cdaf9_0' : - 'biocontainers/samtools:1.17--h00cdaf9_0' }" - - input: - tuple val(meta), path(fasta) - - output: - tuple val(meta), path ("*.fai"), emit: fai - tuple val(meta), path ("*.gzi"), emit: gzi, optional: true - path "versions.yml" , emit: versions - - when: - task.ext.when == null || task.ext.when - - script: - def args = task.ext.args ?: '' - """ - samtools \\ - faidx \\ - $args \\ - $fasta - - cat <<-END_VERSIONS > versions.yml - "${task.process}": - samtools: \$(echo \$(samtools --version 2>&1) | sed 's/^.*samtools //; s/Using.*\$//') - END_VERSIONS - """ - - stub: - """ - touch ${fasta}.fai - cat <<-END_VERSIONS > versions.yml - - "${task.process}": - samtools: \$(echo \$(samtools --version 2>&1) | sed 's/^.*samtools //; s/Using.*\$//') - END_VERSIONS - """ -} diff --git a/modules/nf-core/samtools/faidx/meta.yml b/modules/nf-core/samtools/faidx/meta.yml deleted file mode 100644 index fe2fe9a1..00000000 --- a/modules/nf-core/samtools/faidx/meta.yml +++ /dev/null @@ -1,47 +0,0 @@ -name: samtools_faidx -description: Index FASTA file -keywords: - - index - - fasta -tools: - - samtools: - description: | - SAMtools is a set of utilities for interacting with and post-processing - short DNA sequence read alignments in the SAM, BAM and CRAM formats, written by Heng Li. - These files are generated as output by short read aligners like BWA. - homepage: http://www.htslib.org/ - documentation: http://www.htslib.org/doc/samtools.html - doi: 10.1093/bioinformatics/btp352 - licence: ["MIT"] -input: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. [ id:'test', single_end:false ] - - fasta: - type: file - description: FASTA file - pattern: "*.{fa,fasta}" -output: - - meta: - type: map - description: | - Groovy Map containing sample information - e.g. [ id:'test', single_end:false ] - - fai: - type: file - description: FASTA index file - pattern: "*.{fai}" - - gzi: - type: file - description: Optional gzip index file for compressed inputs - pattern: "*.gzi" - - versions: - type: file - description: File containing software versions - pattern: "versions.yml" -authors: - - "@drpatelh" - - "@ewels" - - "@phue" diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 53c28942..6556d79d 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -75,7 +75,6 @@ include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_ORIGINAL } from '../modules/nf-core/m include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_UMI_1 } from '../modules/nf-core/minimap2/align/main' include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_UMI_2 } from '../modules/nf-core/minimap2/align/main' include { MINIMAP2_ALIGN as MINIMAP2_ALIGN_TEMPLATE } from '../modules/nf-core/minimap2/align/main' -include { SAMTOOLS_FAIDX } from '../modules/nf-core/samtools/faidx/main' include { MINIMAP2_INDEX } from '../modules/nf-core/minimap2/index/main' include { MEDAKA } from '../modules/nf-core/medaka/main' include { CUTADAPT } from '../modules/nf-core/cutadapt/main' From a66fa61e2e79b68cbc18b425689f70fdeb7baa2d Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 3 Aug 2023 11:52:32 +0200 Subject: [PATCH 035/133] add read processing table --- assets/multiqc_config.yml | 66 ++++++++++++++++++++++++++++++--- bin/cigar_parser.R | 26 ++++++++++++- modules/local/cigar_parser.nf | 1 + workflows/crisprseq_targeted.nf | 1 + 4 files changed, 88 insertions(+), 6 deletions(-) diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index d40cb078..9c52320d 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -59,10 +59,10 @@ custom_data: Number of reads classified between WT and containing indels. Both types are classified between passing the filtering steps or not. Indel reads passing the filtering steps are divided input: - - reads with a modification above the error rate and located in the common edit window - - above the error rate but not in the edit region - - below the error rate and within the edit region - - below the error rate and not in the the edit region + reads with a modification above the error rate and located in the common edit window; + above the error rate but not in the edit region; + below the error rate and within the edit region; + below the error rate and not in the the edit region; categories: Wt NOT passing filter: name: "WT reads not passing filtering steps" @@ -89,15 +89,71 @@ custom_data: id: "indelqc_bargraph" title: "Read indels quality control" ylab: "Read count" + # Read processing summary table + read_processing: + id: "read_processing" + section_name: "Read processing summary" + plot_type: "table" + description: | + Table showing the number of input raw reads per sample and the percentage of reads after each processing step: + reads merged with Pear; + reads passing quality filters; + number of resulting clusters after UMI clustering of reads; + number of aligned reads + pconfig: + id: "read_processing" + namespace: "Read processing summary" + table_title: "Read processing summary" + sortRows: False + headers: + Raw reads: + title: "Raw reads" + description: "Number of input raw reads" + format: "{:,.0f}" + scale: "PuBu" + Merged reads: + title: "Merged reads" + description: "Percentage of merged reads" + suffix: "%" + max: 100 + min: 0 + scale: "RdYlGn" + Quality filtered reads: + title: "Quality reads" + description: "Percentage of reads passing the quality filter" + suffix: "%" + max: 100 + min: 0 + scale: "RdYlGn" + Clustered reads: + title: "Clusters" + description: "Number of UMI clusters after read clustering" + format: "{:,.0f}" + scale: "PuBu" + Aligned reads: + title: "Aligned reads" + description: "Percentage of aligned reads or UMI clusters" + suffix: "%" + max: 100 + min: 0 + scale: "RdYlGn" sp: edition_plot: fn: "*_edits.csv" indel_qc_plot: fn: "*_QC-indels.csv" + read_processing: + fn: "*_reads-summary.csv" # Define the order of sections -# Show FastQC before Custom results module_order: - fastqc - custom_content + +# Set the order of custom code plots and tables +custom_content: + order: + - read_processing + - edition_plot + - indel_qc_plot diff --git a/bin/cigar_parser.R b/bin/cigar_parser.R index 523519fd..6bb972ca 100755 --- a/bin/cigar_parser.R +++ b/bin/cigar_parser.R @@ -1009,6 +1009,18 @@ if (dim(alignment_info)[1] != 0){ reads_classes <- c("Raw reads", "Merged reads", "Quality filtered reads", "Clustered reads", "Aligned reads") reads_counts <- c(as.character(reads), as.character(merged_reads), as.character(trimmed_reads), as.character(clustered_reads), as.character(aligned_reads)) reads_summary <- data.frame(classes = unlist(reads_classes), counts = unlist(reads_counts)) + # Save table for multiQC + formated_counts <- c( + strsplit(as.character(reads), ' ')[[1]][2], + strsplit(strsplit(as.character(merged_reads), '(', fixed = TRUE)[[1]][2], '%')[[1]][1], + strsplit(strsplit(as.character(trimmed_reads), '(', fixed = TRUE)[[1]][2], '%')[[1]][1], + as.character(clustered_reads), + strsplit(strsplit(as.character(aligned_reads), '(', fixed = TRUE)[[1]][2], '%')[[1]][1] + ) + reads_summary_mqc <- data.frame(sample = unlist(formated_counts), row.names = unlist(reads_classes)) + colnames(reads_summary_mqc)[1] = results_path # Rename the column to add the sample ID + reads_summary_mqc <- t(reads_summary_mqc) # t() will add classes as columns and counts as values, 1 row per sample + write.csv(reads_summary_mqc,file=paste0(results_path, "_reads-summary.csv")) ########### Pre-variant calling counts # Indel filters @@ -1071,6 +1083,18 @@ if (dim(alignment_info)[1] != 0){ reads_classes <- c("Raw reads", "Merged reads", "Quality filtered reads", "Clustered reads", "Aligned reads") reads_counts <- c(as.character(reads), as.character(merged_reads), as.character(trimmed_reads), as.character(clustered_reads), as.character(aligned_reads)) reads_summary <- data.frame(classes = unlist(reads_classes), counts = unlist(reads_counts)) + # Save table for multiQC + formated_counts <- c( + strsplit(as.character(reads), ' ')[[1]][2], + strsplit(strsplit(as.character(merged_reads), '(', fixed = TRUE)[[1]][2], '%')[[1]][1], + strsplit(strsplit(as.character(trimmed_reads), '(', fixed = TRUE)[[1]][2], '%')[[1]][1], + as.character(clustered_reads), + strsplit(strsplit(as.character(aligned_reads), '(', fixed = TRUE)[[1]][2], '%')[[1]][1] + ) + reads_summary_mqc <- data.frame(sample = unlist(formated_counts), row.names = unlist(reads_classes)) + colnames(reads_summary_mqc)[1] = results_path # Rename the column to add the sample ID + reads_summary_mqc <- t(reads_summary_mqc) # t() will add classes as columns and counts as values, 1 row per sample + write.csv(reads_summary_mqc,file=paste0(results_path, "_reads-summary.csv")) ########### Pre-variant calling counts # Indel filters @@ -1206,7 +1230,7 @@ if (dim(alignment_info)[1] != 0){ edit_classes_perc <- c("Wt", "Template-based", "Delins", "Ins_inframe", "Ins_outframe", "Dels_inframe", "Dels_outframe") edit_counts_perc <- c(0, 0, 0, 0, 0, 0, 0) edit_summary_perc <- data.frame(sample = unlist(edit_counts_perc), row.names = unlist(edit_classes_perc)) - colnames(edit_summary_perc)[1] = results_path# Rename the column to add the sample ID + colnames(edit_summary_perc)[1] = results_path # Rename the column to add the sample ID edit_summary_perc <- t(edit_summary_perc) # t() will add classes as columns and counts as values, 1 row per sample write.csv(edit_summary_perc,file=paste0(results_path, "_edits.csv")) } diff --git a/modules/local/cigar_parser.nf b/modules/local/cigar_parser.nf index d1ffa10b..5073ab26 100644 --- a/modules/local/cigar_parser.nf +++ b/modules/local/cigar_parser.nf @@ -15,6 +15,7 @@ process CIGAR_PARSER { tuple val(meta), path("*.html"), path("*edits.csv") , emit: edition tuple val(meta), path("*cutSite.json") , emit: cutsite tuple val(meta), path("*_QC-indels.csv") , emit: qcindels + tuple val(meta), path("*_reads-summary.csv") , emit: processing path "versions.yml" , emit: versions when: diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 1814eaef..984dda5d 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -757,6 +757,7 @@ workflow CRISPRSEQ_TARGETED { ch_multiqc_files = Channel.empty() ch_multiqc_files = ch_multiqc_files.mix(ch_workflow_summary.collectFile(name: 'workflow_summary_mqc.yaml')) ch_multiqc_files = ch_multiqc_files.mix(ch_methods_description.collectFile(name: 'methods_description_mqc.yaml')) + ch_multiqc_files = ch_multiqc_files.mix(CIGAR_PARSER.out.processing.collect{it[1]}.ifEmpty([])) ch_multiqc_files = ch_multiqc_files.mix(CIGAR_PARSER.out.edition.collect{it[2]}.ifEmpty([])) ch_multiqc_files = ch_multiqc_files.mix(CIGAR_PARSER.out.qcindels.collect{it[1]}.ifEmpty([])) ch_multiqc_files = ch_multiqc_files.mix(CUSTOM_DUMPSOFTWAREVERSIONS.out.mqc_yml.collect()) From c682852a445b4d50583c429277e208da4b8b9f1b Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 3 Aug 2023 13:59:41 +0200 Subject: [PATCH 036/133] add cutadapt section to multiqc and sort table columns --- assets/multiqc_config.yml | 23 ++++++++++++++++++++++- workflows/crisprseq_targeted.nf | 12 ++++++++++++ 2 files changed, 34 insertions(+), 1 deletion(-) diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index 9c52320d..331a476f 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -12,6 +12,12 @@ report_section_order: export_plots: true +# Modules to run +run_modules: + - custom_content + - fastqc + - cutadapt + # Custom tables and plots custom_data: # Summary of edition plot @@ -104,7 +110,6 @@ custom_data: id: "read_processing" namespace: "Read processing summary" table_title: "Read processing summary" - sortRows: False headers: Raw reads: title: "Raw reads" @@ -145,10 +150,13 @@ sp: fn: "*_QC-indels.csv" read_processing: fn: "*_reads-summary.csv" + cutadapt: + fn: "*.cutadapt.log" # Define the order of sections module_order: - fastqc + - cutadapt - custom_content # Set the order of custom code plots and tables @@ -157,3 +165,16 @@ custom_content: - read_processing - edition_plot - indel_qc_plot + +# Order of table columns +table_columns_placement: + Read processing summary: + Raw reads: 100 + Merged reads: 200 + Quality filtered reads: 300 + Clustered reads: 400 + Aligned reads: 500 + +# Add a comment to cutadapt section showing filtered reads +section_comments: + cutadapt_filtered_reads: "Cutadapt is selecting reads passing quality filters." diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 984dda5d..b1b081a6 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -342,6 +342,15 @@ workflow CRISPRSEQ_TARGETED { .join(PEAR.out.assembled, remainder: true) .join(SEQTK_SEQ_MASK.out.fastx) .join(CUTADAPT.out.log) + .map { meta, reads, assembled, masked, trimmed -> + if (assembled == null) { + assembled = file('null_a') + } + if (trimmed == "null") { + trimmed = file('null_t') + } + return [ meta, reads, assembled, masked, trimmed ] + } .set { ch_merging_summary_data } } else { ch_cat_fastq.paired @@ -762,6 +771,9 @@ workflow CRISPRSEQ_TARGETED { ch_multiqc_files = ch_multiqc_files.mix(CIGAR_PARSER.out.qcindels.collect{it[1]}.ifEmpty([])) ch_multiqc_files = ch_multiqc_files.mix(CUSTOM_DUMPSOFTWAREVERSIONS.out.mqc_yml.collect()) ch_multiqc_files = ch_multiqc_files.mix(FASTQC.out.zip.collect{it[1]}.ifEmpty([])) + if (params.overrepresented) { + ch_multiqc_files = ch_multiqc_files.mix(CUTADAPT.out.log.collect{it[1]}.ifEmpty([])) + } MULTIQC ( ch_multiqc_files.collect(), From 54499cef8f6fda4e7bbe6e10bb51765bb2f28969 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 3 Aug 2023 14:04:10 +0200 Subject: [PATCH 037/133] update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e5d26623..24902a8d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,6 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Template update v2.9 ([#52](https://github.com/nf-core/crisprseq/pull/52)) - Use `Channel.fromSamplesheet()` from `nf-validation` to validate input sample sheets and create an input channel ([#58](https://github.com/nf-core/crisprseq/pull/58)) +- Add custom plots to MultiQC report (cutadapt module, read processing, edition, edition QC) ([#64](https://github.com/nf-core/crisprseq/pull/64)) ### Fixed From 4843f582f01b96b65088a0bf8f6a17302bf072c8 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 3 Aug 2023 14:16:50 +0200 Subject: [PATCH 038/133] update documentation about multiQC output --- docs/images/mqc_qc_of_indels.png | Bin 0 -> 84853 bytes docs/images/mqc_read_processing_summary.png | Bin 0 -> 60254 bytes docs/images/mqc_type_of_edition.png | Bin 0 -> 70614 bytes docs/output/targeted.md | 17 ++++++++++++++--- 4 files changed, 14 insertions(+), 3 deletions(-) create mode 100644 docs/images/mqc_qc_of_indels.png create mode 100644 docs/images/mqc_read_processing_summary.png create mode 100644 docs/images/mqc_type_of_edition.png diff --git a/docs/images/mqc_qc_of_indels.png b/docs/images/mqc_qc_of_indels.png new file mode 100644 index 0000000000000000000000000000000000000000..fe342fd62fb89bc2a06370e680ba2e5d7e24afab GIT binary patch literal 84853 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ŒMq?avdm5>#PUlSuzGd8c^%}UuRXSZ(&rjqAXcB|A zTgtAGBN59Q!?`0&XO%)^?UxaA<=KnRO8yfXPt;V@Xc>N~b|G78PKwS45mam%9)`H@ z&g@$S$57p3CWQrDII`unVKw1c+q&Z#-A^2vlIjcC78q=!^~F{YS=5`{bDgNH2n8X_ zF$UpA^%a+rojkEtjtjeIx6QhGa74OOe|3h2ufhmHzMF$@Q7mUTjc+c^EArkYNW16; zZ7l4%zK&aT>z$AKX3&rLuhx?7j((RzboHM3>^A{c1+fqZ&WO%)_K`ux)Ovmx>(8^< zr(+h86f23z&940```iYk=;{)v(71e*6I+-iG+;F}#ABA)m(Rre1NYBo((1=boS>An zh3D2&Im50c#Q|yAg{G3?RkJ;L$FCQwKD3pU&YYMy5GAU*yYJNy=8y9wzr z{oLO}K;3I5&!dnJ*3LfQG1owP(ETUix$03xdQlNo9CTltkH5DmD`)|yRZ+zAtorIw zv5r}&ju4GgMONC=j1<2I6sE?HeV4D1A_YDh zyFZZhTib|N4Cc=}0w`LF^m*`$qeAJ%Wp$)St?65h*pcMsHLQGyL=PfcuQ*4dVy`$T zLMyIw$Ic6yYKi`w>5nng7W^yII z-!yj;GU1(S*S7W2e4S4t%!V~Mth}4D(4_^9kNMSnYeD80o*3t`VIjUjtlb4iR17`?%*=Hhfk{Et~OoQM_L2gX-(;ErkbMeB;TTdaTVc0^ivzt7PaSb)#QU zO4&zE5I;i>(MKWz{Ks^owfJqln*yhD;*x?EZo6}gqCvfttG3n>%QhZV9CaKv?AVv1 zOvtmooR#>6MY*^c;aROwa9o_Vws{QV(EOPj2kSe*rEoq^Gg|V@cH{wevAb)YfXPVSo^`cxq6^vGN zmpxX*Bh-$?%@JZ|4T4DOL(35PuhdcUT~H>(mHr##h(BauK{qjdj|n1i{AQrJ%(gAv z@6GCx;P7uiknd6D>J%&_3X5!p%29GqhL7Z!I@=;#=bV8*L*4pQc`(#N+8XMz1 zOKh)!E2YE=JU?$FQYTTZ zcl?IG3A@oLexsP+@S(l9ArZRQi7)awmx_`6N2PE^r55Luc7yuFO; z0tdYQ(KC|Ycxz9TJw-7Nh%1;=iOMs${c9VHd?^S}8f#ceZnP$7>?%!B#-)#cV^K3> zVw(4*aIS+vM&FV-NZU0bb5}uFSy&r)@4{Oa#Id!@t4EskN)U)86_0vHxMsEwllAlq zhXvS@q6=zbpc4_$P7THO3eGrJ$NjXh(r4?5-mh-LCB*k-j8ftrh4(+MT1)xG14f#0 zDqp61t7gmwlw%-3T5=3kF3RlJLHkNxi0&#!tDjr>PSqFn@4{KY7CBo?&|mAj+HpSR zGxhwC)xrxXAiFo%#pX`ZgIA<^=C_MW-$jk&D~XKI4vf5a=SSvscTLv2ECucsi3x}< z7EbgY=AP4oeLHu4gMn^c6+s8M47R%Qa-C*Cu=FQJ!g@gVfdDM$cPf*#!I3 ze^nQxrCvPq)&}3gqcpKc4MZrFF~zLjc|jVw8dcLUvKm==tfVLLb-e7GVu5q8q`WK} z^la&iaeyb|K&Vz(=?1@wKls=JYK7^ zD49cjH3RAk*PouI7b`bvSK)RoPs5v{P@}Kxp$J6xCod=D%5@Hz>pBh0ow@YSF=aQi zpkj`_EgnyNcHXU{!%Z`;U!%1L<*1w7w>^myuXNKli)4sAgEoi_!fEZTe{p6^82n-QwUvoDty<5SR!^x1$v(4zNe*-aYXS)(Nt- zxf&g)?^&Ju(#^!9eD>v_zA@M_E?Nb33gqjuEbOL6+0+sQ-&|&y!u~PrQ-b6c{GAD2 zk>fK1h_725Vd1(~QeTx=_@HpBmUnhm!?5+~T6z*eDS9^AeJBjiL{Xl4q_}hYHe4$ZHwusnXnFvxz0faRmd*06G!U4 z;7omKDARQCHEm5#KLN`q%Z-{`@_)QHL&c-qw8O5emoz%{v>kQ%OBehoNR-_|-PcbR zXmUR;LDE4SqJ-ar0_L(0R4qBL3?NWWPH9okgQ;nS>R!k5JXT!gzQtUtrz3;UpXKvw z*1qaHPI6#-s~MDk9>un52L0qA#@}c6jEwirXR)66=MGel_~Ip&cxM+`wc*PLe74J- z(*?X1=M%FXneTYhlGb~lvu~EVASOLnTf$p79|Z!&C7qo-|VRy#+zGH>Adh{f8arg(J4+<_c5#?pI8%1qwY zq5-G!#3_&2=FNyzkY*f?7VYbo6Gqdte5Zva;01mam&+iRt4FIEhf&o|{muGK0W0Mb z4~_a&(gpho@(&nX^Hip__j9OUE;hv!&`F=}TL4|@hXAouy0kmQ5jIs&^P*%Lce~)i zU__;amkv~0)-%|@8xN`z=w~QTbDeX)ALR2L`#$gU%Ia6_^Z^fwcq_~DKIVq`5JsD_ zL}uU(&RPp(_7(A^ko14}Ro^vR@b)pkjDtDubvv$IKr_jYD~7EHTGoEcr|QQ9@2+sD zaJG6B%o=s1$1Y-YJGOd0X(cPhMh4=E1q6}s{fyxw+Vdx=IqMJj_(A*`#noDrp9sbX zc@^I!lHH_3Su3*4j{2i8?1{7FE9Rdb=47}Z>=lzwi%p#MF_e4MIDhAyU;(T<5Hm*A5{9}Xj^j~9U zjs0UfPEu?5UkH73CWJlV4^W6wp253TJ4vCqPaKo&hOzug4c7q!&4Egy_SB`M-Z{F` z|7zmttmAr|bkrda@S60IKU(;{=HwGkeLExJUItNiX$m!Sn0T1sVexOK{nlA_Uqc}5 z(b(eFmK<|A`G$!qJwtjv`>!PJz#3g<1e}iqsNo|e~Tgmmc?@M2~iVnR|ft~;5 z(j3(LaViCA`|YAS#@YkTu-X*D$TV1_r{3LK+I{iy}7CTE#-QMxD!R=`lEzSz* zO7^tjEUx&Fgccl&TvH>(cJG<>13b5s)gYLW#_mRg**QN%dqNZ;MqE@ylq|j z?~1zegQ}vUFNglw!-QTj8l37X0m!iP|Nbq2gCMw?>%5V9NucRD?4WZJH6HPKOD-R6^yoe!xo#c?8Wv2HKyqb{^=Ridj!G% zI6D-aLqF^@BcM?-7_MhR5o`9&xAHw_RElt8#X$(xr(cCf+jUW08xrP}DNtsa-`adQ z0@`rr+Ci#I1{b3dtwk#L;Q>Aqv7qvRba|c8oM9Et7N`9Yej2`W*gko;yqf*^V=4$W zyaQ}1js-olu{#m(@U~mg8Lvg;^bcj!&((pScLzKY2didpJ%c(|z%!IIRuc+PbS|{V z$^|s)U``$C>`Aj#-=FVGs6)03mlC)$CQna_Z2w=cww>;oa~Kq&TmM`UQ;r^67iBZJ zR2T;aZ!c*=(?a(0%NNHv3M~pI9|8BTv9>lcnjKR}m^oIh)v})_M;D~FSGMTr#BdS{ z4r~A5=YtR0$SK890q21bVb=@tH4x9TSR05P3{10osNC&IQ$1!GwaFw!_xIvxzn$j!?smt zDj9LmKO)21R74D|9sJclLEt%Pdr8-Q4Ko4LHndXz3p~TB(yh0SoCB~WyX9hbftbBGF)0>{pz*}8V)!5sw z=je#c5G-qeRIwUV;c8x4QrguYg;rqCUPW_Gya{#u6q*^S6R0Sc$S>7Y;X}ffAIv7g zf$4f!A{gM@USrDKsdFwP+~#VL_L+M383e*Z{KU8>qJ?R&-H%s76P7dsK7Pe&R9Q_15pq>G|4AqSiDr3;^lcRA)lf#@ z*35qKe!GVT=eF$s!00~-QD2GDyvmye6730l0;$unaZ;L?SvPsm&Vt+|O|}$euJGwu zydxE3olP;HTA%kY**48$>5rxC}z*-KKXR2d?0gXu;aEBHS72Qs&kQx3!%8Y6*;Zh{Kqq@M${dM#@^>wgbHBB zD9U7$ZAgn;R`KN1J$yfPnL>Bt&?>b4+1@y^A?_&HaY%$C>pT};tYS7rID7;R?(4%kZ&ivCBC`Blja_Nz zulxjc*PPks9AQpYPX{bqF6zNn%-XqefrSNw)G0Oy{)8U0%Y1_MLT-F1J)ow{_UUsK ztU6rp_(}Q|m;O2>dm};LS3uO$vG^UE36oV&IaW9B_cei4)15A>EUP3vrftnGH_jHv z_3?IN?Pu1}OzWzX%N$xfq-*y*0$Y?Nxes0O4$H+0y|(*XEK2OaOg5ut?KE8vHi7hFK&=`^-K7yPH3N7{kMG=(2QfBxdyKb<~(*|dBhgUnVr ze|RZQc3SSyXp!^Y;Upk~Sfw$9Ba_^}fT8}xAr0k;m@`3T(LV7l>~42jF;Cm$=lPlK zz4fA@=wK=s%!NpwD!A(DG1x&=k5=EUiXO3xyzvED4wrKV*K%5 z+K?JnzX5V+s;r-y!o%JdzBDFi$=K6c)Pxv2Ht^;G>=J}+{OG&{`jInhSrnKw_s&~A zY8d|25Av^kFPDNqC*QklC|?$lN)CN*d*u4ox+=YK!c_P1Vl!gZrHRV$3hT z%b)qT$x}oD<~Ux;-AL77ZYji$~vV!AuQeboQ6~cae|!Y5#5?C0S|8bxK|&k z&gLTNIogAp^lH36+ij-|rB}=)7Isj%UacSy`ojLh?KNoO*Ji$vB##rBR4JzP>%(|I z@}^>tc)ivtFY%;>s!Fu6yO0*9Fw2-KjPS+BFL_6#Wm8c0u)E29`^r4Hj`=C3Ps3Tn zOd*b68{JX`~yGZk6tmPC>enkcLGrSil|goU^z4{_fuA{Coe|A2uLstvSaSbBymK?66>}yCvozKxbJ;c}S zRJfZD!{2y!!n^T~`?fXVrq-6kl)fawO9M`tvP62JZ2$5^E;VBLD;0wJM50vpUURrl z*Y323$9y*9AULRHd>B%`)J7=91@7w=%9h*NnS50(9J2EIwx2>R>*&_N$Q&$ouBwXi z)5R*n@e6JBuh)+&nCMvK9F9ZdmQ3JN+ve`~FT2AI3#+h9M0)8|cgeT$o~9XW(95IA z^=fZ#4X|Nt22q=ktlrrX?EJ#$O>kkr_-#7kj4z&-tZQ#a*w|)B61$*@M*4laWT|bO zObT5!lVEnhs|+DE1w}KahvDV^yC)URWYcjBVphd0W7mC^Vs>T4+UA-G-*)&?lE?ys z7UJ<8S0&GMl$-q*ruVcP5^Jd^w7uUa4R;QV39WfE?}oO29x$I7J7d3UF=jhIy=$$c z+WNIbM;>%Lzz(9vvcNr(+a=XU=~%ZkJ+$2rp1R)oggd6rR!P|9iH_=d&W$O1x~kw! zdMt5?9j16G>YZ-`hAv9gbBxF<^&ug3GYbh`>gI^LkX0$MhPI53?UivyZ~O~H6)ovQm;gxp>bK(duN&|!_!4OZ@rFKl?(C1RR8 zx!Dmk03&r-cCkhEW-;A#!R4rHxUTJL{1m-I&o4{j$laB~TcWILSSrOgns(#pMQsX9 zg3WGTg?4Tx4CkIP8H!;47>5cxxrQ;e!rCoo;KO3BfLozd($mYQI-OipeE;rau9_k+ zJPJn)OG(3ameY@3^;5HyxVmLHM4k$LD6H^JlUpw9#T3t~Dl(tFn8@au4GnOToDH(R z)hi=|1}Q}F>y=%GPQ6|>ExFLVi4P$69w*wxnK5_5H8Xb0E4EgWW!<2Uo%?cFa3Pk<#fW^HGswvzUVRAiV-e6SIqQ?dUp z#q&Az^Q$qxIs2k|6Z<(%taCcqn3D$iN0v&ttLOb|HgBxkD&$EqcS8;ZEMe| z;xe|*$vM@w&leA+zBsT>slG$mK_)oKjm;sM?Sr0{bukeh9I0RCyuP3IAD1{-aGW@9 zHWd!ZpQHZdB~_E2>JjLDFMoXMXmRh9cF(>{`pv?ei=^#1RjmUhhJwQ7NY9&A+qnTu zgXxfVg87Nyi(ya13__xIltijB@=JMP^E`=99;B6+O8e{#OG(e|n`CJ}_^5P|iT`hT zGYLgY7@9wa?QmFz_xXnR#r?sqjSX^nlEW26^M^B-2VL7#s{a1v<%x|Qn^;xt(eGPC zsanuURKKuYIDZW3t@iBy9R8@>OoOTQo=nx0fjElEFlcSZRewaGMizUt`E>ut0_E;! zdN%-`*g3A4)G5PD^Vahzr%#z$E56FrH9Ni%WhSa8n&0)F$S^q&RS=sq;h$_as%KPv zq-WoO8$L)#vb_|4{cl-)AQKV=4oUj0z>>!d70~-17P*b56=tcM+N)+^&cI+ z<>)rfu>IaE)TtJi%0#xE>PmHwol314lH|zHDcsUTjUUs7z3E%@NVkG-1aX%$iCWII zUY(SIkAnVrCEc2L%01To?M==2jdC4>8cso5Wk+m3^7~wvaZSG{Zw{V3)exOAetZx6 z>7;yYN%!QV@bdUchoF+NO&dAE2km1PBFAPLg2SVVc^a5_7a_O`-k~x$id6#(`UmxY zYPy|K&F@I)D6!N0FO4^={#|qtea|P6|I>l+UQ`aK>wny)GWwsg^;y|Zm)Ng*CxPL89g?e`?o=<-?KNM|U$1G< zZ!TmY&tey4R zi6^nPA|v!Pvr=%=xF)$%j#)l=I)S|mMk_9{m;B(@bGIMg8i%cD4!0l~xq0MK;4n>= z?ThOIk!+UpK%R1>~exK!>ylnSC|UJuH6#N}6jBsk?b~$&}~ez#K4U&h6}NdGijB zNbC5V=GG=k+19Ca?Xq6~VAC_DmcOtka5VWgtVtTMq~!K0-r;I5sW;1#yYVu&dgh7T z!z4v>mrW1C_cGhO;@xTwsi-R9ZR1DDZhfIC2+%B zPk}C}HfE4&=iZE`l%M-wtPg&PV62ivGypc$%y<0^0I+Htpyjy&)T5KhxXF1^En2j| z$HN6RkJ^@>A{K%56&6x|b?=#NeMacvoXgAr6R^F`-SZyYwb7W)j8xUO7q12&DYqH* zo~IJ^WvUDVK-Jz9wymfbc<(i`gXRWHix@==?+(xXpa1!UKlJ!^uj^+xb*`>ig68!a z=kN$6R~!z=)+TbV2B+qJG)*Ez!}Dq|Ps@BR`*eV2>dUFejVXB3NjL@KF{2nOaod`tQh_EX#w<`x| z%Zsa~Oo_-MfKhuu#~Z$Cy;rn+l4O>CU~>)Tj!hEH?AbbCG{J^;fuemVw&q<{NwJ03 z{?Ew5nsXq?`AL|v0OafQ<9XSrybri}qjSB_mV(AF&LraW>~4uT&H=W`TxtF8<|w*L z7IC{RzV4gM3oz&}i#eu+w?N?LMPfJrJ_}dBt3p9~b;29pQiYy8_91aI! z_)a0qiVVyXnsY!y3DI~rGE`*AR8FMXZjfm z!5lcl04&H=)&MEAnVPX|0X#}?d+fnP;n#dA4N|S?42zuN+5C{b!t;0g52}ASck*Ev zC8ZVAWrj&H4|Lc7uWn`2Y^HWrn5k)5+)!;pYM)4^mfU6^>rO(zLl0$>=X&uHX@v`S zl_T;3UVluGIEy@w=FKa4CiEF{)=rmtX^?&(D})*AB}k-6GdTBUz0!JrG@b^_ubz44 zr9%4fN*f-(tfs$(&StPU&rag>AxI57nudZC>CKAwyPsRVZC!P zH)(Ax?3h=`)PAAOCsEI{ZI+Z)_uK9z>Vr+t6oEp3^RcyGpTX}N!t{dhk>=fI*C`YH zX3M2WA4FCPKrhZh&SjKaZbPs|fS38svvxA?VawA)8B+t4yn{Rq=1zt*e%9P6IR$Y3 zU5=Uq;IeY}VFqwR-C%vc#WOY>L~qy{gsn=UnT6N62$h; zw;YkJ6>(VetALKZ9#BYzAhe#qsS+V9G_f_J4vSANlU|Rmfu#i zzP(|LaKt5R%YR;#PybTpAf;M;K}^_3|(L=CgoPmRp;^rjtRTv%Cg9 z%O($b;tOlq_9mSt4T5SR-VOu&u87;ao7&5vHw~BZJ8*7cm>|{DHxr1(67}omI3g*u zwei#l0BhNWXV>BuAond1gh4P8FU{;x6)-&`CkG+H?G7-ldFw|%y?~t3^?f(?0YPU& zRnvmXwgZ4fHt>Ke>RKR<$MAGJ-RVVM=zeSH!nc4NBV}Iw^avjK*Iuvkm?AH|I7|Yo zbBLpp6x}&h`1Xts_+A>hRP0IXo~Bon(9{$&^EJ>t6OPN_>f0 z-YO?Om8(T$X^!4!$kbApu{;3Z`M3-LC#I#5AhPDXMsGGOwHnhYWVBR@_XzUyxlB?G z(<|Kel`3p{OuM4dtBx#uSAo&Qf>wnmmQ5^2(IJ_WCrq&Z;nf;leB(8;1gx;p*r`E%Fata&T6V-vUMXUeN7$LodD(JHH0C&}vG ztLayob5|;H-~r&}T9k%&I6CY2lejh0R6~5nOEt{WDvJmxEt49-j<9}Q-6*`&kh-`TPdaj3z}u>Rr%I>e z?I#~qbWs;3;407&mzY?<_lR`A2zhGdGt~U4e9{>Rbm14dYX=g8m(Lz9UWVKfr|GTN zbCPcKSZe-cu)csB5-|SL@Qxq&BfZYJe$6^)jGy0Dx1;0q-nwo|eWeAo-0v*z{Ln{!>sd3?)BrhdZ zZ;3R%TKx#@4VrMvvU!$qdpce+M|`1Bxl+ViRQ*ogm5<*mn*LB1tWJ}g)aW?U;u*|m zB%MB`jD=e9Mz)NXajLz&;k-?b$9D{TX`KHBH$)j&=yHLvs`2>CI#@8f#IhG9#ty5{ zb|V;y4(Vc|Ug;Lc_%u+7T)kG(3$(}>YG-xGfZ^}8A0={x!WENi#(K_6FosyQZ`BHZ z8j#e?(`KimCU*L6%C!*+%a>2zE`sI9SmemN#lA*+2zqZ>^EUsPSSDg5-u4>4X_@}; zxC*lIQ`PbKQVK7Gorf7@nLe4-n7>>J8n3_@a^1CwDA=Gl~hhi zPJ-^Vtwo2`(LpECkgZpzCGLp$ca4*YPgx5vQhVJ>hddM7v!``z2CEO-iXGbCv4)QL zGhwKswucpf9rQS<*`*=;EiNZH3gg+1t1R`_xPa0AnXwT$6(GS)@oJB&Fl;L%8q6aXMC|&%TD>(g*M`QjJ$W(d zzk``L(1mx$q=fT)iw26k+RajIyU0A-Y;aSP~?U3Ku&&$?3U+cu~y^!_$XPHZVmZ}Helsb6S zd^%5}u9ANw9Go6_#Wfo`&hoI$tXzOchM2P3ZL!|*&)#MMB_*(*UV5<-@nlMFU!ey| zZXEyW%TlK27Y{9zNRM5#@>%*Q$j+9*woWl2V@i2FL`!uc?_5pAMa9c@qrs+D&%{UN zA`{xu-6>7mCc?r~&Cn9yTUArd8QwJvHNtj5ZxIP->jC_Xv?_FD56!_!zCxnEoT@31 z0LnR)!N70lOS3s6IYl_9(hS2)L~yIVF)*gS_87W9Bd8*!bLc$BbN#B;Y)EdSwPhL{ zv|mTgoo|)xd7qDFxCh7)tG=GBM&~(eb$NbwT?&W8$un;oR3A<}zD5Y2|MEsFpl=S6 zjvtn)@~6G%OwW{kx@@OUHp4>B88*cq)=C;rG5Wz&|Iz9VKXKaX&AT20U+3_(4A^cA zx@c@O5lL@HK9oQ-8(Z8zJZlW_tLS(u;)h7xXnQOY4g(yp2?ks{KPMuL$D>&t$;q5P^)~xc%nDvm1yJO9bm0pg`a$(RJ7IkQiV7{^N~=+kxgWY zCpmGA0%^#heX41=n^gkfCY)q5@-zpil?!-w?h#)PH^A%ZOA@DQX7B#2m-q4&vYLyJ z9+vMPDSf(zsY0SN{o-zNZ)QK>Ujr@BWpYn`EMZb@mBo>vft!uU+pM{$ ziD%xv>6iQ^cSW3pN`IKe?xO_qIl9Qrm7XT%Nd6D1VLF9^g)?}T{~l&#eH6T^Iiqz5 zM&?cJqS?YjCey;EYKMG_6b_f_!b|;=38{M1s$Q0c$U_%}^FV)J;e_B?y)`vQ8k_3R zchnfiso!5(+KZlxZVO-Op8hUYu|}c(P_knc3%?ZD$al!S-R7M^3=C4CoHc-ssJlj8 z{6hcplqr1XP+res(s{&duuqhr#Z3RU0c+J{ZYSmR^p?RmM332OCd@%S9ylY9YL}83b%dA)i|EL39&9lxM9z7INqg; zf9Y}keKG)rge#WVCBm2I)j?z+XYc(%7K6tmOCRgiB^kD-Y~OuFF$nZZt1%fv3tE0? zV|tgPrk5=3mT929Za@!M1~=7rMwHoXCI=SD-?6{<3jg`kdHG9(p4G>81fGj1qx{s~ zh~#kZmyji%5Y*81&7(>-Av)SY52p2<_WwtgPs!QLAztArMxgP)D| zP8Xh!B5-sCUg`y&9G~v}d+~ZcQ=B&f>QUeU9A0IjF)5Iw+J9BUh}wtIm*H2y^kZW6 zgFR#Y_^R58wVudp&0U^jy_kxW!_Z0-{xKd(Mgw6-1X*VaZyB5rPf++##*e0l zWMj0mdgyd{#u_YH=+^lN{4!N=r9h`|rsr-uw7QfB)lT*$jg# zH$BGQ^UZHeGp~dIBW)hD7>CWEJ{KZN*oKM|@O^8V461U-wNI;IuU|qj!Z@Z-`0SbL z7b?Z#^w`j1GvUl5bQDx!X1cKZR)LX^We;U0n*1tvSIA-o9M%B#E|$dVeka*8f|tA> z0v+A5dWEVA{V-EQI9@ieA*{5Xzf@&aZ*5^mxfz62M5 zC@G($9NelQOtvs|RR(7mcuyYUfW&%4RoM*3}p&mIm=&fnb9OhC$NzX~(C| z%lSv`WMt!XK8h!b=`nbd(IK3yKox#oLZX}e2%H_ zf}zBJspwoMuPOhW`&3W`>@%k~h8@Yo8ZAD6_a)s;@iF z0cHZ$Fg~9tp1DSD`=Xd*E#-9jNZ9JjIl(FX)t5A*(rFde8y2jU0q1ps()PveWl|a+ z9E!Geu5=SjV2-<=DAOGjj#h#<#-9s$ zwFhxgI?qddtsb}oa{MvJ5#jSi;vlF939)Sl=VzpY>Ta4_Hr4N{)r#>>M%?oN^(D7v z8i8BJoc(4g*4!eJeWD^4n-Fr}JHw|f(2Lt>s!iJL-Bdri{y%~lgr6`gZnq|0p7&tW26od}g(^|Y zU1H7Lr%u;>`qlU>H4#% zHFaD(nY6F@@*1QweO^8}aqP{pLPg4Yv0iG&#qx6xIG~aN$)?FBW$Z$%Kry9>xP*Ov zqni7-wVia%@0{0@)y|tT9Iq#M!%hU7GzlMyu+*2a&wMKZOQ@V1MklPhx1fpfUr%G& zNd6?%-VsNH6>C+%d6r;Et-bB4Rw{MmVT9fL>P*r+{k;S)A$HAFuZfcca_i z1Bd-AYt$liM^Q4N%CKd2`$ycAT0eh@A#vR(YV#uLMw#+V^Y@2s!Z@6FEdp!kwg@!T zmE79<{nZftJXIY!XA$cSEFSpDTRpbDO#JViXi@4o4N_zjY7q;{cqZOCj(z=Z$P<%8 zNr?UynBMidTC=laT*_Q{mNwjIH}e7Im9-3?hmD%)sTQHhP;Y5ksafxA{zY+^&scSB zh0?LkS?c-cykl{5va6x7`0 zM62E6bHXzl1vj12x1}C!8*3K)#GEB!w9fQZCv{HNOXJ-tP5Rm}r&HhC^g7x_*?S|j z$skEj!%Mn8Em)?CiUxaYQu7VyHqfJe-3xNg8W!Pv_DP47Cw^6k7A zp$iKtCds}%nU|Wh0F}*FTb3T*Pi|lW-P!v{P~OH2pmrd7=>}U2hTK%0KD&n`1*GA` ziKJ!I)j!w&Mez}4{wq{D00d`zOltwP!oBKqlh^dI7$Dyxv>ue$5LGH1{j6g3OQiGm z$TV6WBd0OHyP++j0MXVZ8WR5W7rrU%m31)NT|WvIKxB4$dt)ZT{xiK93#Ucl}_Hb49keFejg^PzLx|(&|#5@#(+Cuj$Gh=x9aGtQkmoHV(W@g zDNeKLTb=#k@%tc>F9v{P{ISL_elN6t-yGE!eVFguefAdiMex7SGye^xW9`QV)UQMZ zB&2`;|3ClNFA_qIu?(&l{eDY-%RVDm18r8eewv#%|MthfzvhD9j zUi%$Mp8qS?t6dQEUjyNkk8k|m-2d(MWIemfsbuE~>ZpD!{;-3$nDwJ-;&+*{O%`bf4;;B4FH#ZJ3G6av~-t)K|z?#GUPYibm<1=BnL zC36-eSUsWY5{;mR%l)?ziG0&{`yNJBjyvd-&4T9FULatK1UXQs+I>6qdptWBOSq<1 zUtJ_LQR#U51?W%k0A5fXlz{R@2X{m2zho=?>(b7VN2%C_v9{gy)+!99PR^HWeMryM zwlH__+{X)>p5tubqsLisGlGk=J~a9#U?#;o7@0>H2mIG}eEwEcwbj5|^m}XAg&l5} zzKWH4;&zBqI}S1b-I@Gf^#4OTaVr68xQ2wYQ+2i6*YwIr0x$V;@&{(E?C*xqU&i)d z2QMXHm_DTEQ$$XD)>7(+`m_cYx0wlj>97@t6t42$E;1OdfmBH0xWrX*xN6^UZuvb- zrsHTUs>**9#zrUdUoi3D)zM$ywq)Q{G~PG6hfz<~-*VTFj)zfDo9e%hMex&GDbNRP zy^C_aQ?1kY4h}-Y>Ooz8A{^kmpaDqBF;X_9XtU^}>~K_Mwo>yyCi#0&You@-V$&iz zu5HVqopa!FuLnc99RjYMbPs@juMG%^aRLo|-7O6opIHD@vblnW*6hdm zh&N6d`SYV?D1{3!%_5*}`&>BB{4WSbcM2XD5R0M0S7sng7j(mR!5QTB$xD5H{L&Wl z8HF~8_goL+61uJ->zXBa9 zdw{#kGg9e>n!SJu&0P%ueCKsb=xr{7_ZlDu|YG1_?56p{M7p zk_;2XY*cpLtzEAJ0KvhOj%z_Nka7TJp3T75{V$rD<~r8%vEI< z#-weJ-He^^mp$C?N6uf^qrYU3NYv~a&Nqu}rY-W0Z(SLPLZ#Mb>(O6Xk-MaC7H@Wm zotnf7` zXhP&y#HY64Ls;8sG`8Fd+JrI+pjdhb}zX1i~6SfDKD+FN0``YDadF zpHNKhGbkv|wyZ!Z3xS=A7=exKm{~}a1k@2YPz>Rl)lM8`*(H$IC&&Xj{Q_;F%eTb` zq5VtMoQsw%o_ISLmMeVyfVO4>uIq_3?yLY%!U$DE+JJC?-kR5Wv!8luMF+$WDeyPs z7)rZXxln?jj?d-s6%h`DLF(}xv)cd8bY-=|{xwcWOlMrIN#NMeru+gykEUwF2N$Xwcgf0Loc6_}$1`TLRz%jD3l4M4pG5(AUINEfCc)H`%hV>eh&(4X4+T zi+1s_sPHwyQRJ){B>1^ewcf$kUW~&$3l%}M(_^TX>z{zKGK@h-J@X6DC%|zZPPV(~ z((?TaEebuOAauI0cJa9WYA;{_2C@xV0|?zoGXw`Z1r`T?KvY7gps-^+=u->2%Q<$5oHqd7OX+~2z(5}JL@t(=4z*yoSeLFqGBDdyGQbBrZUTqOMDmFkZM1AsaR1K* z+cC%8ruB5kJe~MBbhS0vQv)_9s%OX~b4~fn~=C^hVBeKw6b^GTlu~;MWHL zjJwm=w3k`=cdg5L*xuxQVc@!4+@1e-_QKUBsNiBj%T=K;zx$q~-pK)Awf-1D$#2z|RvKwtONqBai zXrS78znQQy&BdTLKH(?&Mq!{aYB%K>J!121Rm4BzzJDK!*y^j5Mg45<9d znEOPMnzKeJb=AOB<&u3LCDoq-gM=6-!`+JN6bIdcBvZmdx>%;3dmal6YPxPFB+nQw z`dRhm>|zbdl<;)lEIraicb-jM2N`~v>leJ>0kJttwjo{){`!RVrP%-HPX7CI=2o|G zX82LGzO(ch^pq1IrNnWYyF0Nl()Q8w?g#Ryci0h1 z@n$yfArcP-yQF#4N6MMi$tj<;i|#L9hx|!7>WpCr=)7+kf*VutF&dbQi*A& z0j8GouYB3Wbn+Z_1qpZi>{JjSY65bySU`rJ*A!?zZ4wjvoqmV&3u%KT&ld*rFJGIQLo~HYs>6V>^G^9?VSQ24F9Ka_9M>sF&cBC6nePP&Qih*im)mlV{-P-jgI* z!Ayx!j!zo}!-A&ugRrj&jm6u|*H;6e-?kh*Ox&m?#fy zj3Xu4u>P=P6hr=%eaS5_p;!B{#msGXRDG<^oF@4{I~lO!)&;R=!*aC&9(UBb=JWT| zAZOISTZ%+Ky57l^!Hfu`5W1NxRgq$n7Fqi--5>%vfsst6=EEhGKjD@za>j(ZE~d&* z<_XWM&))GhM&2v5EA@+;}>w5y)@jDR4Sb+qC}o z3!tdJJDThvA8+m{>dbWoE?828Hd$4Y7AVBjASnWAqNnFHY0vyWUHuB|#8M&N+&PQs z(IYHLg)rG~=^_FDcaiz1RM9E>F&St4IQcFo%1JFc3iZX%thsaO~NPcua9>+ zO4ite9FbTcnsHrp{L$%Ni2e7|Ue?DqDZT!)$R{Z-ussur1$*x@pzIPFy)N#A-vuIS zpPfqf!MyKv?Ro2+4MPD$eazKXTbsGh{(c0o8r^w8Y`0S3fO1t_F8^h;E3Cvf>p1MK zL4kX2K`QOvzK1$p{Z}_7CMG&jvHs?v`mgKiMXn#e-ehhXNBMs*^M3~a4%P#^iXx%0 zz<(GGM*(l&X0aq|Q2qUEc`I6f`!?~8r9vh7KfHh!`Qyc3p{A-*|1?0DZ{C!spH{a1 zhrunXclR#u`KKh6=zn;J6*8hN-%C$k5&hE(;3FYL{QvwC_-aTfr2*Z!4P}u=&_8_6 z2aj1TedB-{@5f9S?P9lXp6Pm)FcHz;E@IHs^`c^}Ok+fUIi^O29Y^&KcV`F8^@=Q# zv3LLQqDOJy_Ln7Vnf%l37l3ZRxkTkZ4nQh!`-|38HU8=DV1U~%F#VG0A8$V@xc!B- zD)ImD4lBgK?T>JIh4$AMP?yfx{DTGXmkTtk1`P#Eo8Om%pri%B?RB8-bsPxqGpdR50`+yZevZj zF8-gD^Ou+}K%i%=LSeHl3qZ4~#_~0SrUQsVb#xCx)MBAwWi|L8YDxk^zo?pGwd4D;DdkSbBX!sj}7%cN#LGCW+_lO2s z(3F$sx*D%;68HP_Dv3_q>z}SPTl@Csg*}&F1ewGPAZ+%W@)!a*Y71XX4aI{P6_e=G zI*V2yQCB|!l?B-RX;bw!*mlf0S$f$s1O2oFv~0>u8vv8TPAGp7<)5pOuQ%QUyCcV~ zB7y&W>!Zw_`QuX8I518N5bz-%X0WHx^+GJ7h^T{eNErKswxjcgMgkP2o1oUXsj@20 z;{I|X-6%z28(b#0S}+HC!TNWWNZ@b(FUnz~X5z z1;w7fq>1}I@>sc$u$$lt1LIY{Zwf2PZQb*cgm|^)^Dz@(1z-kGW*u-OwC)8EVl~L= z5TDSnLN&Vde$+I9Zx2EDlVTqbQ5~Xh={fXJtpXLCw}$hWiWaUN6jKd7*KzG+N0#ya z992g#V1{I9YU%tjLxgCf>VE)v|C9p|^2UL)ipi%(g8MDER=4!7-D^R(yEJvGd`%Sj zr+Cnc@;!EtxQ51uLkF%}toF7y@X7aq52gxK(R(nF>qC)STdPvk*doAl)3@h+T3IaARum4p@$Z55%d9AgHpV@VQ?k}*Y~geaSq=eO8odKyyrGlqwMiE{G6jWe0s{9SN`Tp%qJ+13Y=G`ptP0E}MBZA)uG zbKQ?%@=YR5#@RQTUZ5Y+h15e>qZO;brl2_?Uyt}DAwmx#&eh%ewC0tX03LXJ_$LTm zJ$vraXI5xYMmJC&eIhmdAQZAsc+2aZd`%cT=N1@<(y*6Kg9$cDLh%Z)LDwe7PeX^G zq@XwRB;$jpsY9v7C@9So2YM3bGOYrjJHtQ&0X!7}QVGiX4i{Ph2LBcRX^c_s6-b$U z4qP0{o9>Zi&XGshf8;0?D!6*Pl5vGtx{#){S0JGSU2@#6%72+w`4_pakuyf$Qx4UcEQJaYgQn%L{hg=-Sn&V<;gKC5 zd?lt26a&>+oG@#@``}X>_Xv{L(vl`BM& zc~%S^k8NVs&z?$tY~e;gA(RwBV)eyHyQVUyGDrylgl z0{sFWb}NH$e*&D6Af!z z?IqkRur=aQu}`Q-SnLEVqP7VcJ{p)$T;usaJ%M1SgJ*p4sw^it%WM7oP z=-zcM>m*j@<40B*k15t00lsQtpXsLRyJ#TCC_K5E1ctfS>gC{>Fy2DxJFG~x^x|D? z@q#~D7YK8{41>7f%o}MVj0ys49O=4D8Ss9y!09xT|7@^*n;vxUMa??JERfXRl-%(4 zy`EhgyC6sNJa`bsEQ;+a{^hcwPcOqiIXW;{>hhMco2R31QaNl|<(mYE|V zGkVK>aUg;QHA=~$l+e^Fe`HEH%|I$}a2i;%wy4F9F{E4K-x`5}NZHNj9P6^~?BThT zl2Trdi@+_Yks#_#i? zFoY9~4Q=vvb}k{tcwP66!Rp+p!y}xHR3b_->if(CZjsq}&jLB6gT=5dop#F#6xP2E zu5a+|13O6eNtoov=+LFw&%(U=zh1C1Yjw8j0VVI((x*!;Qd{d%VQJ&D9VHNDHw7j+vG-8g<@wbhXmD$nN z%z8-PgG=Ej@)NblAr;{oNB*5ZXnS)u=#K-tZxz~#Y2;vYLBSr_0`m9BQPje-XOLnB z5BpuGJtYQgL1@YlYwqagi?RYX;sI`?i0|ea34iRy^aJl2m%j7N92B2m@mxZ4Cdirf znx9q4Sn^4ZmP$fNFpYS}c-?$`(F`k4@G9J8IJ7gyc(={aNR~V@6=PI`Ha<`{ddQ}; ztcqiJb;8aig##|8i#JAXW~n<_G52O=3(!QaVRb&PHVF>BVLi z_M0x!?pm^2(Qj#-djd{m_tTf+u9JBgqVy^`)82nhF+VgvfM`amEDD@FpTVbL_9bk2FFO;8%L#p2{zw?)sqXcq`RFbecg56im0iZ>RME! z;K5%NH~4r?jZ1*eqpb+8d#q10(fiAy#}c5rofe9DvA1=@vLY8KQO{SCweQNnQ8d@Lwo z))Rv&>_Fef)ui^m{BRW7r5qe=WYw8L($AWSSO1+O^q+D3+>Q*g6>T`Wf}q2A>vcca z%2CB=#+@3GflXC zd&3|t^eR%2zYevlym>Y|u6gak%AIEYMa*qnR3(^@186Ab3uQUZB1}rF!Evw}gD54v ze_()JBVClz5w&U8xvU8L<2uhX>2m9cIP3C3X!pI)cUq4wCr}%`gZ(O-Q>=h{YrU~w z13%_AJ)!q8kiM3JF(f47c!zuMK9`kEdBz4jAEoQ)N2Tqb^NI~E+x5lnwgP4ZPy`=3 zk8EfgFMvi%FG#6)$uhoHn&W9d6d9%MB+t7)R_0xaArQN`45A{Kptj={=6i5HZsf%F z$TMpJv6gxsF54jf^Z1j8JG(aU#~sUOgB`tV9eM{Rv9$Nw6$x?XkURl5T?j5wSuN#w z>Q!#d{Cp4O)^R1iS2*;eS&~B^8S{j^)~XpR_CRM*;_9>7rGWHt4Mi#NAX&QyGwH~o z`@9yL@z8YzWfs~AdyF|Db4)1&diU0@7$QKMR+nZ-7#w*mg;2^;*nEJKWpWzBVrW(_ z;WF1a5lMZC+#{9AU6SU$BiqN@cwaQB*{&;9= z-2qC&lIhpvPoM9U94su^9eN1}F*}U*z5ss3!p(I7H%AVYrq_81+d#>z>S0b<-0f)% z`N%0R2DI(qSEX=BO{JJceAR(Gozv(e>`N)Il}1{U({9~ z)Y}#8-8xe5PTPWKe%PmovDyP0NG<{?%#c{dzEl#>WxCkhqPrZOy_^>`z075no1?Cd zv~mS$UlV8u_`{fw6e9T%yvy(TonA4Y@LcqHJ9Me-=1ZT&?5@LQdbq*))Y~iFC)ql= zi&17jW+@}NzVa)hvz#4gPBhvQycMt6DJT*iBz%ill*Yj{0;##qN7l+9%Eh`qoS zo76g{*Ple88wYLy(%$N)Vfpiz*|)GmxJq(N?$}e7p3|QBj7Ljp7vO zAl-Ai;i=bupRcw%X8wMjsyVimA)>ULZMpaTe4u^7^{5711 zd(J1H2j#>FOAEDnWrw(C%a!?)5H;Ot@_%dq-`?=G!Rby@*$|I%Lr$)LkDOsPKZJNV z5E+P&l;k<`)YxlypCS-Da$gAFPlA2wbn&Nb(M0VQLp!_kRbt|7lOw*`Eg^ zHf5ztS-SIBZZd|uhr~`OvthL2tD`^boIC&JP11?fb%&6Vd2D>a`oVl z(z>ui>YG)JI=bVEU$ZvSLq^GDm138V(`KvSFO!FSriE@s{?XR>h3`wf*nOWIbaLJA z^D3R9FS&QDs>KTIB8EKQ)Fx3K%5g4`fHT$BD)I-@H&d-P5X8f6s!x~Oxa9*;6_(w~ zB)oJ69Xn<3pw`|TXgG+^Fj9$3uu6?3#~?+Dch?Ytgszs5p6BfV5Ix_}Z0hJ#J>QlNAX8M*9D|T~w(s`I>5tRaqw9<>!IANGzF3&$)DP1K?sj1z zQy^RBKNY7r+97-lMSj33%{r zek{G*LG?A3q*Z~ACfVIUp)K#{kDN$_35A6nLZ>qM#2bRri)E>&+}zM z?~NXsbjH_B#sk4Nr9HM0RtbB#?Q=gy5?4$MWr^owXN}{A$q&`C6W%mQ#epbgxL34+>-E)X^8``d$Stb%^b{4aGA@qHwnV!LzJTdC@1G28 z5%W09zyDCX$!@H&8NWzFMXqRbCM6n^;?D>neuD%FfNT#&q7G~^l zU@u}o^Jgubb>Ozcl5k_vC^nx^pfZ*=C1>{*u#bNn)JRy>Fym}zr~25fr_Ane6Nob~ zKnH^HG<8zD08!->doKG3s%v40CF5c-uV^c=mub7dF~ew$^(P{9=UJce=Q<9*zKS6o zg*yD3h(}3!cAzA<;py>h2>YAyn=$ApzN)owt~$reL&}96vQF$cD(fCa8P=2P!cj-? z$?`?00O{{CYy3UqPlo^t(%{l#yUV?`R=8$U?X;s{n>6UARR>Q^Bl_c4TPAO_KUZ;= z=4^d|ZDU-v5kBmX4CzyzFFk$de;X|+g<`=ui0G50>i{aMJ=z(t`D3)+b{Bt4{#2RYLzHtUR5Gz0 zk*6KzZ6OwXdHQPt#HC@J{||d_9aYu-wU4SGaU?~N21P(hQbAf#kTyXYq+5`X7Ew@X zkWK{*8tLwCkdO}P?uOr7zOUyT{hs}L$GGE;aqoT4A7_j$XYIY#`t*F}GoR-Xsp)Py z3(xh=2W!TE?nHm~*Y^*Cw7#0r$PW6-PS11V8<8na)Q}l>AAXkU#AgICXn_BCzVrpj zh>4VPkW!ct{sj>K?S~+5_1;Q^Lq2k?{sAb<*5rp5_d87#CuK;?EyqgpZ?B?0;P_l=-oR{_TE91YoBGsfv!K$!~ufo`1iYi1Qzi>&O`B{4v3P z`99WKCSc7U!dvQ4Jfq9ODS+ek3KB2<7!N-J&>z5~0c2a`c%lRT)`>qo>^>vBV~e$d z(T~&PFF(}U0Z?X?sStzQPhb11A$IP%N%CFi2Jo6$S}Y5j&mKgYXzEl;N3ENN4TUo^=7FAR|p^Z>s!B&gQ2(R6hujav_Bs2 z$9w)rAlO}p2BXCt=SK0qM_jO>$+3x}{&^fDYN1T8e)3Xbt*_mY+J} zZ~f;&MF_*@rsx$J6umB@@$BhSt!FRvP~Abq2a>dQac?8&QFICo`&F2YW#wF`?hqpm ziA2HnTe2u=2_ZBz!yy_Yq^RxyOoLR{q2oPI6u6?i1=K-2^1RWKjjH2IbD`s_ zUkqGDd5d)9f_Hk#s5)Ll1v-ALd?5zqEgrxHT5TDus5+kgB6PgDrp+ysw_t$_(x<+n zN+A=FoPi0Fo5ugoGz*wE?8I;Z>MaQ!%hLlUh)NIT8x*S=0SR&ei`~D&;osqa4AcKb z!$J4RF34Uff~ZH_ZR%+Ne;L0*Dk7Q^7S#V(q5peRG$9VjY6_eU${&Cv{WysIvq0W` z;H50%EH$VO!AMDRct_=0HMSWZ-BX-HU|Kw&Zqbw zrVk(}whf6?c`Cc9xBgM&5R(B7d?O^ka2LS zAR6r24O6`YQgTOMj{_mWWRMB8&@2!k%h}l)YUe^Bq!i=Q1%%a54;qwrqxF4H@(xC_!RqS#0Dvr3<*pe3hFcz#l$KkeLNKX}(0vQ`$5i|uyRmGv&86XeC%9M$it zTM^vs&uAVu2QI}M9K|e1zw(&b|2Q1{$Kys35j>I}^C?5XTr~*$y0Od8JkW5--vr5M^WJ*%Yt1Ui)O{N0w??s}#&jN=7}mF1O`t&4637ueay~&G^$#5Lmgh;WM{y)| zv4%LN_iKvb4? z?PTp_4dNVh>{0Mq9^kvQh%(~r@r;zbl06#jE~b@q*w-4g7_DWcFJQm#=XzLTEL0(M z;?Qrnw9J{vOC;KnxGOSu&{chV$W3Th0O#Py6Tyqe0EqoJRQi8MsHD+lekH+GmdnK> zC08qKzQOyK!@-Y@O(Ye;CF0}VuC(BGsXPp^p=Tj}CY`qA`Olka?^%tP3D%jhO8>Em z|JU!k6a!m+?f&CLmLE6x<#+VmVdtcr|458#=S+oI*0Hmn2?e%^-V1DbeR2MT<0x)0 z#S8$R`lXzD6cM|NHN0?do44UrROewyI1ei{C4WZsgp?2~|3BOWy7P&>8|FF+%2rvQ z686uk3u`B2&vtpGz-il5FiW##wvtGeWTS|&C>;S_^6TdVE*kdvBaqAI`${u;Hqm)c z%9(ryoJ1X$OBFMM=?)k5hz9?$PhC<@x4Om}g;&2qaa1{atOEGuZUN~Lzx3pvN0uoi zXz}jLUPP!)?dWcBz{6qC`oa7AkA`o}f+kHdA!88xkN@@GkPi+6;54$;7N`J>7$X2p zRr|PQQH)!NCy_&7gy%SlUVRE|a4g>ZY=a0A6a$NfJpy6?UeX4XKu*eOf=8An9lRW< zo>GGsK$1tCK`6lKqsLU40jTVKZ~hR~Qj$DlVOJbJ0SiY5I-jP|DFM%5r#>D1eFN!-;IB;bOlLu_CxjmIM^7FJh*&G zjtZjD{Aef;u`|3JJ<%6;00H%|?=GUj;;v$P7Uj~x2lY!iJ8!z7#Iv9Q0(?ctA{U%h z0DFzZ22h<zSDU8z0%ni=jnZ@!t2oE_3!xGXIJKrxFe1cEo)EEI`sL)o3m5Q5~-TmkBtpN`9M zVv+~KeJvobpaaQTCUq$Ms7F}okX=vzTuo;5hJu!ER>f{QUS}dy?;=uNf|w1Bh0r z4ml&h2SNw`4B8NZNOgwJE4rWyz%OBt3L3IsEV7E+3t0VLfKkT~Es)kogmN{WIsSf| z;C|C5pjww)fVvF(dW7U;0Z3YB71G6y4p3^r*J^a`?bUMEHwf8FXLG=Y4SB6Az+jsB zy!RNy32<11H+r;YSDv54ChP*nSAMEO@k-!06rm)Il$W|y2wZ`#F#MR_$l35^kls~+ zAGAp7!-w`J@^i8IR~|wtmJO&{&80I4BN0i>DyVIhpXpMg07{sB9s50~iKFuR#HT+&C0HGfx}%S%5=JAZt$lXQAS8RJHcrD%QiuyGsr7jH&)dbdu;a>p`VX-Wmh}dsoL0$aD6h397uQ5-q!`+s7~f-0A^n zQ(XbXjTsN8n>*fPEmU~Sjog$3i=bU}3@HadoKPF&oK^z(TB^eb*WSO5c7y`%4J#p^ zwV>L#amHyuKaKN6SNWtSDsSHOAEXIALEFay1`1YzIQ*S+JTBFsFrjn+RT9B#g}G3O zHG3sKSjS@RN@aKY%T(_Wl;{&hV>JC;HC4#Q|x z7m^S>^?YHSx?3Ss;(jn3;OkyTb&Og|EVabueHMD;9JmoI#s?`SxS?U=b7tPvtE=qC zzQL(b1@IVOnq${jr1ZIv1e=vp(ZSQN5uXr z<@qH?M~@|)^Hi(+EWLo#lLo=V^~Tq1}l+^S-WdNh0}WJG@kF||;% zm(Vuf*ncJG@DA@&;1z+B50Ek~lAaAfl#_Ow9nN8kLg7!O1rX_ifw~rta5T|o_o1YY zQHrg|G8C45Bi;awIBZ)Cd9tHFzr800ufVS{v}K}<)*C6D<{*t#W1rUo|3_>Y^}_w~_FYjUQ=PDUAL zwuvECTZu%TdLI+!CZVkIV)SnRB%i`6%2AnI%8k$4{&*B5yQq&KPBxfPlXX&REB^i? z;V=Lvf@-x#WUdT9MKdJu9ZBR=7r*ARro9D)miG~upYMvTUh2zKhjHd{Fu+NewR9tH zI=~Pv1`P-D!jHv(^_B>HTVZMRy^YPwCuL`9xiMI4k4y*_dl&yq<*6%YLT0ROhYzb)`@3;bVbfyUn6uunbLk141> zUca8YyIci_ygP^oUsNI<@3*ucS^zsh)49^roTq>*hMTtVEr(=|ebZSX+TN$mY*O`~ z*1>#n5q$3jgA;l`Xv06k#y=54&s%`JT)U8nVv#(0Y=9O}kErZN^r*JhQY=7sXrF&3 zLls}O3c^DC??V9Q11*tZ-SUYy;1gl))NB6tx?FvKcErygT%r(V0?XCF&t+j!(&-r2 zd>KzFy8LsfXD3}sa9^-XL-x;ly5Hpqnk1 zLW$^6y&XD*5E`nV7HI+S)Gnnig8gp~^wY)c%+C%8cp*gGiG6qXG7bm zVvfU{CFXv|grehIoB%amQ}#$?L-Bu6r7${T1D}j ze8;X}p;~1!N|U$}EWk(5_zIv94G2jIflwsy?4f`@7{JrQ@ANas%_Uqd1;gcA8(?)S z(G}VL3~DFiD9kGfb->>20ydw}`X{+S0LpB8nw&uNC>SZA6fHhXu_;RIhw91o{)}>v zM^l|m1JxtB%mV<@l&Kt+$}GOz77qli4uj#M@0G#UJ(>u($b!J4s(NsOV-%-$v6(v+ll2?jzf|uS#64BYc0%AK2;Bk2ye#@PV;5-ZXRPod2d`(;22OXjd;9jV# z2vxfcfOI zs8Be1S_kxIQ)c7zsu5P;&K{s?Oo%>_;{kv%Z_w~~V=%~vwwrAX9|e?-18{c%N+5Sj z4+K$yNMa1^6=>dI7WvKr&@NWe&jtvHgw!Wr0XgJZ#gg@8Gs>xb-$A@>sXV~z8ho7A zVtWHd0akXJ_w!SuA+4XOrS$&CFg}>8Mc}bUB(VEFM>WXu&)=)?N{V(&g1W4x_Z33) zOA@I*=;zEpZ>L^f+2qn({@|Y{h+jVJ)3b|C4r7@fd+OuxjW!GO`ZbR?=%)dZ?H9qi zb;f!x15tj0^0vf{h}z?aCobm36x#!M7=-At#JN|2nvFs*;wpWqHg_V-Xl530^<*J6 z1ei59Jgn=d!Io^Vpgr60nmOfxO<>-&_QbKQR7Vp4Y1QtYG>qGns7DU|)CeHlUDLMr zU8nSIG6KO`0J0v8vmB3NKR$ZwkT7IKkoTl%Az=4O0bYk2IVH(@9Pu8TpqFWkd%|fo zeCUldSrio+BQ_pqa1{@f+^%@r6vkd`*dq?5rd_pVNv}LfS9V>}&P@BlCj?Jlw_266 z(>8`$lBNbtYDB!#0>S>-=~wN!=`v-@D-i)0MCoY-QV9hcwInz@ zAaGWMCz=I1UcvO&Yxxk#sRpFHxER3QZnd+dDTeT9tf@}xi4C9-eJ2M|@1A9s$L8nU zwy{&P44M>Nw2fqQcPs`+-C#NAoesKySChQ9QT}R_*m7Z4ggDKgxFyv`P<>MPFHI@x zn~rVEEnv8!j&NEbsY=7Acwq0gIcfSBosk{Q@<|8;`?xl^Fxh0Eb(0=9e9QW7>L zC+QPAra0~P1<-H&DAZC&iH*~)H3kC4pH}aD^TH7h9Hb$QViM%%w6&3>-<0+BkD{Jl zPlp1r&f)VT;u~$--OmZEDj4?y2G35rSj=a2cfHLHtE(yjbiZ>X4pbJ>R$wL--NWji_cv(|gZ{NSBH&PutWNIl>Q|(xqMp(;IK#9Lgi)515(D%%J?x+L#b z&4(=5z;sqx02N$51@Vcw5EX>^Y8VqRl6cazl2-8E{{)J1u>dIg#Lbc{LA&<-djMfU z%2zz&$uNhg1Z&2f3yDx$(Z!gLtQR(Oo+9vKiFM49k0pyDa)C_s2oVv;(6Vvxn?A!T%Z zma-_J?NkUKocq+8Q1CfKS^&JY%bt$lMR78iQipdu%q|K;5!AXw0Uu<|xZ{dBs&_1b zcRVn$zl5rh1d&Gi`u_1Ks&{mTciivWFhtczb_g3JLuRrP)jJ--JMQGnccN^hBxoeP z@a9*j-tho=N3*^}lq>H4?*_uw;aueLLdvSI?hMyX-lWOpKTFV0De0$C^*ZyE4YQi0 zhZAqS$lKi0ImcM5&gK>vJv~oA^W?e6$%jL>^o8zu;hm3LiZ*Kx_xBeDG72&>xLO(u zX%`!lP}pLKte*6BiM8!e<2ds-*MfhrGH}VKqd^lNppQIu@i)#SO;REl-V-wRRVu&n z5}65libG))Zu!UWJUh7Aj*{|*@ywro{2LdGkIKh5AAK=tXB_^Gtw?Jjy7sXCV5UOj zUrxdz|Ma*qrr5Qmw{s*uJpG^TOFrsJExwk8ShqnO#g9J3&#2Npr(Z~T*< zVto;UhBg%TI(6-L9pZuoSDq8G{GFN8xm&x)7~JQ+gZ0}ncn+?7d8F;rZ<^|*$UG6O z>>C|7&z|~ghW+ycza;Q=p*?o}!*9DfOAeZ-S1wlG{n6Iai0QXlzvPV%w*`=j!JUU;&Y<{ZI@goV8f6c>t$yH5b&o31MtG9*H1C7JSzc`WOWQGs$E37H zgtmYQp}aJ*2hfM1dGeqfy?IsbubS-6|7z+`=9Yu)G(0iss3_4jJ?uVgU;Iq;X z45}G=*$DmHa)Os1hTimgG_9*rFamZ?HlRoKpeq*FxrES4RO#JqS;Xx{yx`m$u`jrq zdneX--TLMOtr0wu@128OSMNk_}-%*T@k0viVvt(9Bm(ZP&tsenSCmsO?K4sVFZ7H zJhQE;d|nI) zGU@h+=DtF=vYB8G82<2v;E=GFCIi3Dw3<|pWytIeHOXhhk7pAMkn&E;KPaQLs69LW z@vW~c?+E%3uTBgR6^JaS?m1#415->U2Z{6tx>tP=yR5d5xRES~a`VBUv3q=qTWXNx zvT=yqVsj*a0f$y~uG9Wb9-^9~a=?fQt{p|QUo$?;b|wbfG%Ti;9P|!2AMTriLCOWL z#7XKY7r;u&YlyVE&74-rb3pKG>%wg{JkVGsZYzNBbO1;ovzQj-pQKelxp@I#o+XM4 zhlpd7GW^@IKfqFycBTQbbPC4wR8=joUf*^Cd~1b5=Mvr^nQGTB~3&$JKn!un8JVIl9Ho@%3|&q-X;jjbT@&BtWzsS zWFFAIE(e-!!S@_&;iWghNdGOLtuWfo*@G8ZJ~Dx1z<$Bhja2s$L)4RZ)asJ6 z>X)x6^O;1@G4789TBfS?-N}qrciPrT#RtJ+&UaIEG7Mc7gQYZ%-KsX*uZ95*6z(_9 zXwtoHA+gy$+I!np6~o)&^QA$2-ERTuAD`AbfN_{_-=hlL0f4dEpZIybB18)XiR}22 z3K4lOtkW!L+;T$O-|l6wl4e4Ln>PRuz%&Lv)!f12;Xz9>U`lF?JY?a6MfUa;7}Zg{ z25yCAPrpF)I))ib(o>VW4Ya)PZeQeiBs~H^Q|t$l)GXqvwFw|;V1pDzhFwwiQu&Dj z02^zXpg7e#6djnDLj$18_KjbMn8A~bo`i?&HjrES5$iBpv@>35@E{+Ihi|sydg^ZCxNf&Lbz62qw+%Owkab^iWILy1KUqcivWIEu%d58Rn(we&Epc?i zxLr*(&K;Sr2I#gjCmLC(HeqZQzzk|!JkrWChMQWr@_H96#{@8S-*x1W-3i-Dhtl4i zxmK2Z7iQJ9 z-o1iL#$9U~>~l{VXX{IbMy;Y{+YKTwo+e+O2Z2|0o~LoTHecat^F_=gn_x5y=9XRA zJ~k$PZ>sf98;3`_+KaE-Bs>J8o@vj{p6Vc?7>gsUN8c{PFi;%OisTp#7w6%AU0k{3 z-pWBo%>qi?2mJ@PWm$yTMLC$fZqdIal6n;iwY-D&IWHd$T2}yUy@-@%6EmwRJ-Nrg zz%%5K5$&R%7+S8u#ZkU;jW?Gx-vE6;#9?&iI$tbKe~)Afu!g%G!7}ZxOqBkqfg|pj zE78_IdgNDm*m=2z99FkOr*Q^vVKlb(Nkbn{uZ5EIe@GF*f3Pp1#N%PA@hF-!Vo!5x zW~ihj`a&mMV*QjO#>Wbnyaj;ZwM-seIo6JoU$#~XGTY-hMe)LIIcDnAhlTlXZ_h|& z=e?)Cp-grW5bA=-(h`<|R;+b8D@qKu-j=Bw))E?{=k4Bx?gVGLDh@Pw(+uQWtp+F?kiK1*|`)O|%o>!}VAJuy&$ux_@jUCU{@*(R4u6&$dwzm9lOOr;ANX8uLh{4MK~ zb+62Q`JS01N|Q+)8(@D#DcUx%(xn&L({5s)*bL72FDhoa#*h>AO1BlZ*6vH;IFQ&S zIo4+PNdJMo+itMmAZ8%7TY0#xuC()EfJ>Mxp7pesk&1f4?G>@8+-w`QV3!KXduUXj zZdQ-rn=q(i)y|f zYXZAPdcDWuTF()iAXELg9e>^qwTBG~^=KwHZswS&>=B{^=%ggrbZJ{-_lV*DoCQr_-N-q1~3S{a7RN`p5&n5Tybk)8G& zU21dxMQ~&sXEng$i`<;Drm!N8zgDJ`jje3CY_79GhW}!`(t(?RzKMnYf{U-&T*FF@Jf;;c>|aAvd-Sg_iG~c2a#sc<6NL z)0%_4w;KI1XmW}gZq66H?$EdHH}Yx|bnw03d+$fqiQ8t4HvYnbP>0AO!F^~-K%V1s zG+(ux?ir3J>);U<=qe{*Ae>f{i~FsoNvs3c-0B<#OE0=SCVPgr1))<-GW3%{xcouK z!ll=yG19HXG|sE;LK+%p42TCrqUfXVZnW7Lcc7o?6{T;ABR4HtmoKsNICvw$HRFby zHSu-*&%8sH(c(@qa{p}ZeQ_Z^Z)6@Nu!Www5&pDu9*(vtKF++aIAwUa?>N@|L4{MA zw9y9(m!LbOVIC(GwodI!$!{%tQ5BozgX6_+etE@(eJMCYNhs3#!(Zp;ME_gvu z;|R7PtbE^idto!#Kgc(}|7^tsk!=cMJnp_wBi2Ix zpb>U^$-{K34NM*1*JVu4LthzpYAJJa^iYxsPxohpxg3?#HR2*rOD%7d!nlafKgUi@ z%}bE_k-b!+P*KdV{ie>twW&5@R$-#R`%0B(>fj6%$L58m<1+p&yXqRL>@?>1v)#8& z#&Mii-Pe*bnpd15Z4~Vw#0#`@M?IFr0TIj~y8y>rlSj1L3T!3Yc!3RH)Xg~WFt$KqSEC1A(SZ<^O?KH+1fdbN<{-zoP;qw>|+O8M* zXqqKwb*;3SL7!@KI0Y;!HXS|TS)N@5elfbOxS7Eug;|SB5BkGpc+zy}>|7QJ=p-Tr z_0JDHed}{SdFnXEFv-hG_W$nJkglkiE?J zF=V>z@D$V?v#4Kc8L+pr*j5yuEuGU2fHP!Qx(s3D-E6fhP<6Fe!&SH2DE7yTP_b_= zkc85}6FE(_)uo!{8_GCe+S0(ihigx~hw%i-)|}`gFM0Z{6m}_}lf@Nf;W? ztXbs>T;>^jX1oG5m!91(l6r&I_hh+Dr&qSIS*OLEsDGvV!n%%9WG+Oaxo~#rgcPpo zK>_**vGdYX(b%c)%P&42Y_BA>y1p2K68tWK(Q{XPxC2aSiars2Vla@49W(Z5(QU_t z;+Sl?-H$G=9x%7{#oJ|dpI&5wl^P1J1UDh4x5b)I(xX?<0*10*#%^}tddaJQE)O=D zg&~9gpy^AAvvbQ?8J^)7zZofcmKgHT>-^w9v9)-buts-AyHiwS*<%}CXD2FweC=i8TOf#6q&KbO;={7V~(}nwsn;*fAx(n3$w(2pD5pf5{cub>ZlSoAy$QUr8dt z4Y~LVPv#^yoGA&Xv!#uW81cpvb!;|aW5FxcY}1W%0-mZP2`|(aE+4QZ2(O_>dgq#8 zlD#@&u7j`REn#kgF(5+w=Dxk4{YFIn$0li2A>vx`sXC%2mZlz4td4MR{_W?aue{i| z&w47a*~mxU3>_&Dv>Y|LbN!2t7_S`jp}{8E*@ZS<0`>YM)kPnn&0}P>`AZ(TS#wRh z>Gz7agx}z~K1LbE6K)#gbv?hvixDo-5DB-|?g=)9V~h?phPmxq#hu_J2c6xsJ8hb3 z`tJ{PKH|^YAZLw?N%C=$4@Bgb%qpw0vZfz=!o7y!-R0lC`dfhLG||T|rEkq1-Sbqz z|1FMYc?!@mzSo6=%)iMfoV&#VS2Brx!2B&b#`hY)P0AZ;i>H4FdVLImD^JIExc>H~ zC~pAj<$W%7^S5twPa3X#-8OyopK-Ropko*BbC69D_v^O*<&6y8N%t|QsEvD{32ng4Dwk9@q|A%rO1mn!U6~G-x(v=^kQ)zYL)qe?J?wk%%FU~r zx?^7h4adjk6GtkFbld6s@%{fQG#dU?7p?91ov|Lvd6;Py*(O z!La#o4GK$VC%_>s2XvQrR*|q=2E=+13-~on!I9@g{SX681CL7=;<=$bq+rz)avPhP z6M{)f+khKQHuKH0bSEmL-hBBh${Ta~KhblmtHZmCB{l$~#M#3y4glzM7mv&BwUFZu zFAfHY5Y*}3b~bB|lNc;T_JBO7cP&rvJne>yK30Z=9e7Z;v4yA zE^4>AFb`5$yf$Dakq@ubhfB%#gDBqK5x~}lk zlZ&7mdLD7zOY-K0*WKgcWqE>Nw1@C43cYkZu;Vv>QR!f0IID`&OJ%MpSsjR(>i%TT`GQ{PDk?`J$guN64NVWGVqAZP z_VPE~_<2NsUnE_`=wnzD$gWtO=K1Nt^x2OY6ISIgZmCsGMmsO;tj|sg?=-m=e;ovj z)XBmX6MrLJHxL7ZAloY+>eTly6~8KD@&FsH9zh`UdE>vq2NYWnh;*;wfD^>(>~sGd z3F8($=AshdO@%`OErxzj@?24X)Ku@A!~5ARmK+w713Fy*0QLZ!wEeccr*J))9E{GZ z*q*eC{W%M)Zw+ZQZhO32dp|9uG1b_XGhaU4z_Nkx(d-K^@Dlg^I>|}+0UW|Y(Df%; z$M6wZJ||`-dB?Q&hX>n}HemDUci6fKMZ{xXr{J0-b=>kCUjOH2Pmp@f1sK;BnA8qw z{GbQ8e_2tACH;9HlsNYTseVksU4wnZo&q?3!JDtm95e{7tklx(&-mOpqx$8>nE#q= z`2iev@&>H?n#kq+`=|4N%HMEvxyZ(oUM(>e3m16^OWi@NEq0ET;?Lto1f4IUwAPPy zKZgZD8}Ux`33yQn_L|{VnPrELDwAR{^YiAIq}1cn?Uf2HYMe-Dz2#>)Fvy|XNP?_T z=;{G%83U(Vh`)9*edQS-{HgDI>2AR;KQ#Ptfct*!FO%aB0``g}W?zM0p%? z1yaq?gw2Ivb8#Qs9g^st50&&J7if@I+LQR@tD{Kv?a9Ub-zUH-kObIB9}X2e4pfI5&w)IIj}q?Za=K&ZTD{SW4|a?;VP(#TlU2d;SWN+y zpj|F77CTwfN{^)|q^ix6oGg+=zaDe)SZc{e7#!(p`r%Bn2qaNV9+=VvkVdOE=_x4* zhm;%h@|~9N6Qt=R372_<{llKwh2#;}fo?7F+?2@tTwD9*3Hgw$RArrPr%U9f$EE)^ ziejv>EVoPiwU19i&}9X{mlS0D%|wqO{1E%atQnInSBr z^v)#aK?*5H^8#PjETH!t1CVbp1r1m$gjHCB@g8H)+s_D2p-xNrM%^=gOboEGVSY_1 z-Z9*Slwdxj-)f2gpf*Kz64iW5^D}Bs-rB=q7!0*o6)usPP<}`_o+&11w^+1E;f(Y8 z9W6n-Ih>2|D4(TkL3Zt9TdM-Y10aBh+Ha2s4>1D)Dx6KtJ;+AauKRBEoWSy5+>3;UEVwnJOsK!J@79A{L6RzEF3@_T;) zj;mIX!>V(LvhH)m7n(x0;31wsJsHcha!T36m>37-lH*e@m{d!SXPRrg$R~9p%*7PA zqrYKG*;g{k@y>KM#Voq#F%K3r6!DA_ZB{%_7a|Lwm$RUCBAXwiTu$Geb59*;=VBY> zvzfWab(`hR0W+>;)W%gm>nBF52860Z#N#;LSxHhJaW~>^ueF?}y_I|*a;bh4qz%47 zjYD{XmwM)X(uQ*slpb{*LG=}Evqkf^CA|inQJUQa*JJ#!?isqa65qG-KjF>0hqVdW zTL!lv``kMJ8Z{8g;>&%9A#MBX+gNOP()#L-rWI{=hh%Uec_4g)&iv0g;F(! zb(UW2oN&eTeVt&V>505-CM|=-Ni|Cr z`V`jFGKaiQii^{=yPY=^y>UtgS&ucz!h*|Jd(>DeP`5wr!Z1dT0Yb0e>T4_%4>|pc zo#@Eh6$hBM1CS`5$K)mbCIHCoo?v#}aD*`5M$l#*ASI;`*U z=_-SXhD9#2&R18(=Uc(3@>=>9D$VL6ezQ1 z*MB9^ydAv){UMq&iKvWl2-QPtsg@|g0mN3h3mY+FcE%g~IQ2 zv=kAiIw^48JIv7@uBEl@{~EIal{B*m1EXZcWuq)WPAGKp^rdm#w=alStXd#AUZ}W_ z>sSP#&=cWLedPB)<|t}@y&Z6EG*_&HvsuO{g=4GS@ZCZDeE)-(Vo=)HI(-|g_8uqY z;Dp?n900wZ^vzWj<5}ML7jKC>cv%bE?D3rsByBsz*3_OHOxU>g_r=dAu3*i312?_{ z;>CvxFugXJOI8IGj7;CnyLP>|5})W$((3D7x))p0(aZj2W;MC#Ll#M@;hP)u`s{Ua zCqIdWfAHU&u%+(}dM$N$p+w-oIxf5`?!LI2@*?q3!VrWQ#aD~%@R&ALJ1@&bxu^Vi zx{H*q5XVhJd#6+=QE5JqSF_bwvv^1s}jP!*fxmDcJq+*z4zCprVUZA01 z{%b2`iQJX(Q#CVzKz=BnhtVs660d(3`#EFFJ<_d*@3kUI1GmmKw!2fJbwA&Q{W5yS?|c1~LVxctZ^M>JC&6N@ zpIhbf!)kHm>Q|eeAHKS3OX5q-ieDLTu2k%G!Z~EnU|NhfffZqBn6lNCnA`RUAYRjZ zLWgXHOV3)Ir_hOXan6!l)kGwLf~}r8l0RKM7P=4u1AVS-#g7%Emgt-93i>$p*_J*@ z!WBk?7rtz@sX;az+)CTSLVVQ=Bi^6MB=3Z|n{Gu0zGtdv*jl?o>OB!L6QRZ3$P8gx zvr4j#6Gtt=*U1G-=^phz6!z$*CzA?g_q`9|E_$RS4AV)hhrW14JCD0o3i3}gY_VL7 zHD8Lb#-ny#9i2iDq;A2ao7YCyvPy36xSNWK$3*K356eZwRD5jF-=$GpXJ8&`z5k^R zm=oRi_5#)v`U^Z}&iBf}?i)2Jvwu3JJi<@N{D&66m@?}Z!7ghWlb5T2FW*lY!UOei z8wk3qkH=G(tsFZj^|BekbT-HjcDSbGi~j^KieAFp^L_mEKpd|>TP^LDT;EGsTd! zKrfMmK}66QY%UYa?8mgGdoPUr+r1uTz9`(7$IL5ojMe^DOAAR?32vFe@8RdowoyDk2f@436|DCj0V`5pHK)btOrp+> zb2XWCJ&^7Rl9W8W6->ysM!in3&X-RdTk9iyFcoWTd-0RZFy-+>{}pp3+h#KSSMTpD zJ(=G}95++4^$0BYfm*0fdn~fAR^3+l#xY~e0EN%}7lETO$jrx))D^?|P~@a$5OsHG zXj5@}Al9NYsJ``sbuxYqk`OQYWFYd{672lC*Sz>Kgr`)_;xvAa-h%l#heggT+PDQF z^S##&yP6qIm!TszRXk|Y_i>p4O-RFWghZ1?$g=-at{+kr z=)`_RSf4vXrUile$j2{pIf9(lGTOztuau|B7PsWKM)ZdgV+dbsoC<-`$GsrA%HtUK z+_2nEk&`^_LpWt6fu%*6yh;)JAvD%hXT-@$adv!#0H=r@l6Mu8Xt$<{3v`@Br^4aZ z6exGhz1~%lyN2(2W*ei7)pg(-UG7SgJFw~M@n1)SNYkK9?JRf}GdZ)BjkXe-KRb#> zX?cF6>Eyk>M8S(*9V;dz2f1sqQat!E^@p!b9Zz05cHK1t)bh5ZxCw@yjNu--SX^wi zrJ)u$crqO>oS01P$kKhqO>l+Kp!5h4TAB*2AjwN!hyolL0$rGRxrp|`Qg0>lvgh+} z!BDbQTjF7F94l5l2&H|Fq*!QvK@)HJo%G^A)u+`zy0d?>Nh&ZR{How$29EqV;R@?| zVJFX&^?4cL593xCD^q)KAGfYwmMAaxmyZr5_jbU4xoEJg$~tojWBdXv4J3^0N$>2p zQruxnJ#z9x>b_UIuqT;-oS@8ZnS5feBYzmxxs;ckg68WCo1wPY;_~RN#3DRlano#% zwQ3|SPtG%}QK98X3&fZ_FU1j*uy^ANGBfwP457z|a7ckua%B_Zpk2!?%W7!Gx`m6Hhf%8dVxb0z7tqN<^- z>(%Qk42gc`)MPJMb{yc76Js#P2@WfKAvYx$Opyw>qa%U zJDL*-8OnpcM7@L)RiVC#<;Hsk>HwRUC)Vwh@(H~S8*;|P^2~`oWU8-j?N@~?uJEo- zyDYGeG3yZ5J#>|gpVv~}Kx7v|V$5Kix+I|f*yc4w4VU8%PI3EQ8rRP{x0_vKZ@i61 z*kF|DKGxpL&$LgA+rm4BGZcJ{?Y7fc<%-UrLseFGo{y{8`7Q+~T_*gWG2? z2X(A8dWdt_dpMAV;#9EQC-L?_mx}u9DuR)n)a-}zJ%c)g15%1S9I6o?=9G$vdGP$c zOfcRN>gdbadziJ+q z@*%2$3?I9LiMep&01$V2g}#pRZTLg^gNTA4(wJJ>NY z+n;Bp=o(6hbM2u(diVpymA|_ zX5%>-($cr-HwKaHumj0hdrv$2#UV2HxV4n?1C1?8yeXOOl0qanY7ZYhCo+$}YM99D zkI}f|MtwlC6XMqxLpfb8f{rE=hdDWQp`JS*U6g#}oVvdc0pE#lM)jvMmO>QIOw49- z%l)BuCoBOc5l63+O~N*THdX73&IAV<+nl%wb8`FIVp{Lyl@(N{Y$fm^eaK9M#l@`f_I z%%+fr3W=xuy%`*>KkL{+j({oZ zc)7m8sM+2g+r{LHU7TCJbC1H$6A#MmM!u2Duyl;N{JDsS5x;MLDdY{_+i+gTz|LSU z)u%^Ex?qR*Nph&GCm$&o+u?XNd8Ol)<{_R&yFFl^VXY_)zd0 zG4pNiRN1Uex^0uqE7hGHiu*20wocuWik=N@ZE0b$Pt7bT&V6dS8|UyoFDqNI{ed(| z7wjgBt9|uk6GG{nz|$C|21TYc{-dg>>4|(N>w63niuri0-MLgnd}+ zSTcE)=~!vqE+e}BgKvQXrpco2RS{))y18e$bq%!p_6rw1^R;drb49yG>yL51+(P<* zKv$opFu)rN15chUq?Lr81uKx^WTc>!&NZ|bq*C{cNhEtV&dC_x$_Cs>M-RuEc1veb zL+t3oku`=Z2ZUxA$3r9}Fv-jC$p&#a+t_vOJ#K{<)RrDW%g-GtZkkAzr!Wa(%^2^K zVyCA;+-kIZWOt8Tj^rcKy~p9fDK*-jtRE4=AstJi>C4nlOtW*4Mxy|A#)wJDLGFShj6d^6gX79 zJi`g6#d}?FF47RE_!gAh9(TT65Lw1Kb8d#}e1EUkJ>foy-%K+9Xxkyx8&0d}g5W%6wy9|HE&bs@H@r*F6;NbL*6qMt?~6 zLPCDKM)i&&yYSr2zE_2!hZv$~CNmF7ExBk7+lfmj#Mf>{dpMoUXG}CX;~2D>>rlVW zts0%<~WRyDuy0 zk-2kuMvp2-!tui`Hbp^=^=Fjx`9<9`n*2WeVne|UUX9U(e4YK1%ls)(%`^BRht^3i zK8L(fXYsW4HvjLFXH$~YNKiq&$oG#10;Ly5+`dfvftdum{l}++OsdP*kB=A zrGslK2&h|jedPkd@eLU z!>TquG*LK8**rr+lV&-oU#PshAUS${GEkuWva01dEOK04BB`-V z2P4x8E$*VkK+_TacBhV;&CHD!<7_fhOCtP=oB}s&5^-v@gP2r4-@j{H z`0xewx+GQE12e9}P!~NNy6@+?#Neh@60#(0IVDG8+*DE-sO+#y^pk?}RV z-a|-l@_p)jVX}7@UfNE;W=|!q(}!uc1@ZVhk*C)60GrtiPAYoniWVd`AvE2mZ7nR& zdmSC4zTJ|og?*~(59#cctF=6rNp5-Z-l+*mA6PNjlDTl$&a|IVsBQI!8@as21IJ2Y z=1yP9(KjCiH4Rj_+1d}pZc4?GO-~5cZ=2;Q5;sk^=jrH1ahfyDx&XA;;>?eydadMX zvV$-8g+`>5AGDdpuX{`Kg@;LrLa*>?5K0p2(2^}_lDv^XR* zAXK4TEbETyH9l zjAG;{KD*yv>C~5m&u8_1uSv$p2eb_$H=o64G=^z*okSzUp*eRirIBik?ElnumH|<2 z>)RJmL>WLtkVXYX=`JaQE)f{IC59Lpq(xdvQo2J4>7f})y1N_c?ta(ov-de?@BcYx ze|r7Ij4;nLYdx#(`?`NueV-Yv<+$-j{*%%AmPjop(R8m`=F&?rs9^F^PGUw;U?zT%1y zW12(TO||jxPSdid0$osK4MZgWeWKadEQX<%25%QYBxa|G(xLh11Fdyz<&GcaAY*@V zM3A+!nPRCcbmtI)F^agio*W2b9Petd8xq2&1|>?jHDJhSme`|89*4=%na8|n9zMCo zkIA4@ef0_p2@FVYQvEN5O`Q0qa{Br{O{~K?j{-+J_>t_1}5&CtTwFZAK-%6>A1 zhN;b$7iVXZkfDOf&(Z<;#U+Dz%c5+b-dyBcW2mWcGz>c84lnIz0VOZ^1;1keI4}f5F_9JB{z+y=SD_T>kx63B5*QW}xY; zczeSyZ#`9B&&|1gMW|NLl3&=t5_jofAj|>XUe52(KIJHNDI;utb$qBSP=GYSa1b|n z{4uhq?^%qj|MCDmvcEohkkZ!)q1mSUdyF7=B`vKW>e;Z-spwX$+zKkua6r2u=1D*V zDw5;}9E6u(i{;BBFP%I~Q^Zyu;oWtA1G070Dc^HR4HK>HvO>`3G2pwH=(pKN@J!N1 z@q{&VgHpXv2>K(+YX+QTXB$Pv9?`R?@`kg?zHdvF4;tOQY3Rh6KQQ}x5G1%u@h*dy zg8xxpy$?scJBGo`Te-pug7&2T#suui9=w!-j*jPtw))w0w4=brt|t#ZJ3nKSgNHcF zCw`qwc^JE0_|7YrWX2SO1~L1IhdeigO7zqo&%C~q2Ln$aw1Z2?NNO96ky@54)$((~ zJTCgou{6<0SRDIHBJDOh%S-R>d!ln4S(vel-5olI0}CYR_aQR*-9_S|iM?yR)(K1` zG#IdvQ(u=VmhCT79c_(UW$ZF-rG$1t;w$kqlds&ec49^JhjQR;QJq$8j+q?S%|@Bj zmfs5Ct%)_B;C+QAzo?{iwf2fOfOLhp9Sd}z@*0719XN(preOK;h|ug{7C!#?%v*>~ zkFQ%O)(ejd2J5=u7MGBZ(21DMIeo$?NKlSY{N7c>e-)N6Ud`^OGpZf>D)a@Np+J~JGOQ`?u2IHy* zqOxFg31T7FUBDZTkd6ToZ^8URy!Z<3){*cGryc(~ttna3fYCy}ZsSJgo&(Rgnhbz^XO8Zkt%cmwYiW%mrHo4}n!+nG~eJcr^ zI?MXK3mE*4@0yd4w%t~f2W3;~vC^D{5sR?JL?P-3ud-|2VZub(`YD0Ln9`Kq-73x? z5mNDdcl^A_FlEV(UvfCJB&1W8&JgA>GS$pNN8Z7JUL%J(6U?h1a1nJAD5=&c)Enl| zFhxv}dJ(^^IkAP>Bnbqo&6B!tRwXD3MyW}re$$#QFJDxJk_hj?G~;8M&9UT(C@Let z+1q}$AhlhWD6)7uqS&FY&2V1>1}|#TrDve06z&&vegKbVZcbAiBXgGbH>dB*DBi&9 ztUfVW5*M{L+-lZPbztPR`$8~Pc0}W)I1IEAV?IKeeTVeO_3qGZ8G{bhdAd43#!`GV zj4qJuz1*cY=<_oBZu%uJ{*zp0jdJ{`Mui21H%O)6NTDU(zCMQu#s>m31Y@)C?InPJ(Jgd4y8* zzZ}=zo8|IgClbfA!8~E$eYk2Kd6}MGUfvq^+rB?iYi#$}5vE94v@-g`ofqAu4a!d% ziIKx{9V#y+D|}!L)yxcx`y?vU@|?J?IbBO1d!&@&4*Gv?DW8pPnn@M!W_LxAkFZwJ+O! zG&+fPu~GOnMSasmzlh%4L0Z2$hT-?g6dg*XU;1<_-lL(*6yNYGV-ITgU&e#PqhmlU zCNe1ke?=RosS!={A)BShmJ)~#E1XP@wT}))@P3$NGQy`4ipmKLHrAlgxmpxVcgp?r zJZ>$Z?~`m;oz3Ky#1^)>sj57?Uj}KmgvIZOWy1|u9OuY~OZ{uu>2Q5EQ9+~-*^qBF zbE;r7bOs9z=bB4ksg6|=B=RtFAziY^E4Az%FUdKrn;_sfNS9L==**TcI+wvRfx121 z7)?2vn^PVLe!NKs+go5r^rUKKa9}Z`f69pCFw$d}G)<`FJ%66FpsMchJwOiK&jPh|}g^ChA)9YS$)|G*r+hX%FVmc}+{VyG~>41S6* zB#ZjFjS>zdzxFwO(u9yTaPm$b+gkm`J^0#DDb_aiObHh@CU;WJ&|i}}r+~XM89A|7 ziYYV$d|eNV?u~xVAETqsei=oaUaWF#!AwU#!bzj9FBfQETuMn!Ofya~g!p8#Rkr5x zy8@*r~|P^EAZ1xiyB{5^yDZ%`IOVJKlW%Yk>5G*01As-VM61AMnfNrLpJ zE9aAM)k~J~ztrk%S1Vm}Z)wc_E=_W`qhWSfVCK3kc`?!Wh^eAAwZbGP%$ zU4AZyk?|k>Wd1zEW)-y6`3FM|_;{9B7%XLGCVT zZ8%Ts2LlnPf_id=W`T&Mr45fjX)4?T=uEP+m}-vecX~e{Bvd}kdSO+s0{o$6>6Byk z)d*~&nZKXUq_YTi`Kw%soniO*Iae;wEm)}r7W$^U0{zIPM~Nk6BLhkQPdoZ_aMYXbg|i}IwrF# z=c{8|U%6)e*}MyG*(^=MT$3Ani}dA=DCK!;`eCQ1te~wPh0}yI1zVG?mX3ozRGKVX z1tauvxFU{!WIUe(-*b9(^E}5AF||h|Q$u{D2iYwSy~WSwN++N)N&IcFsUH1^C1dZB z)ZNt8!K(6?o4lW{ofO?8eX|sVnKPvlSDUuA=;>*k*s+l5~*^OolcA z(gDRa5IJ!zapeQ@3)g%%0EigewW4)nR$m8-WT3&8^iE9F2h!#zXR@u=_KQ$#10N5x zD852efeBR*_v7IH?-Kz;EcHnLGQ(D`bYfYe*9kzhOrI$~nc3S`L_OB$lh@arsGf7oqRUr%>fbp zM>i`Ndh6u+IMPaGI$~~(ENNL#F;#Ix4i%7Y$6Hqu%WClWRmc77W-0la>9URhPFG<$ z-y|H5IISwte<*uxu1zP35_EPNUjhw%8SMAYK16jk-C7j~EM(EXdRnQP*Y-|R#8Qu< ziLC^~g6Lqj&gWJ8Q~&`<#d#NM_WfNTDWOkjNJC}GUN{vSHB8JL$YeJ`0?W!U!NK73 z+E{f7P&1UF1Q@-~L{Pemv(XF(4DnE1VUJi0M4Ii5tPsLntd|=CokAq>6{vK+9l8qh z``$ujaWa&oTMK9dB?^<^00as@Su`;jdZ?pjlwDI?@UsMqk_?Ar&hq(#TqCKDz$9CtkscN-_KoARkKTRsA@`4Q>ufR zsSYT<$HG9Uj1gGcz9Gpna*(lB+tK&wWAtn&+nOC0+YkF%wZ46 zQkriSZnv(=o>NkZ*2fR<7o0@MzOfBj9YicLOpkj5aiv*9Nmk9NIecNCC2t&v@s5eV zpXrdC_$_3lG-qSU-TVyj^ zAgivq2{^Ni)AP+ViOzE<$^Vt+{WGAa7?`VxXV$X;%u+j0%$ZNtJOyc zwLl?bUYo0(%UGMhM8@vs0l9r=!3E~ZHN8Ifs?T4#10FeecuxfjGL_3ZW(W&O&{%Hi z>EmpDeC|ecAEg0Qj<*0DQ%5FL>fgTQk8 zy|hpUT;Ni~O0!ed;4|71}l@%{93&FP-q_ zng8)sBfjkW$VpV0NI^AvJ=<&+BX2KC+|Z4+jbk|Z;CUhp-oIaqlF83|ZA$3k?^5Bw z7DLY>mqPdN!KHwg8+x}VAEx~7jZ*<>S!bXxWZ387z5Zj_k~#(on=LsCLx%O$)vM;t zFKi+0@CBc{9VZJ}0 zj+gqmc{usiITZuLm};;JPvGk9ehwX%wvN|h%Ef-)^6Y_NlklKq1-^^ZP3ps3W4Yy_ z|4v2RSZP5&HsX@7JMBC{QKq46=L}Wn;c#7G!SYx|vk*Zrp8Kd+yf-i0BaQcQE;f0j z;d%QV6HSANh33clTHL^l_7^L<^xxFtn2Vi0QvxG+2`V5_TC)MgDOUT$&Zkp8Mx#pCS|w>LDD4RgT1 zdM)11m0Y>arAE^)GKX$Ohlj-Kc3yWs7jAKXPRl>7cBc=nd% zOuWj)5j(%ZqQZgkIgtdECon^wY9KqntGCMy=#SKjd;Ls8;bQH2av~~l#k{A%XUYy{ z-HseFuDs^_?p?V@uLO#D(9V)RBs?Inc=2IdTQog5KQz^PsY|l}Wv6#JP7JxeXXc9p z+)r0Z_ymh@0T2b00dp&Vd3%)6)Ga+C?qu`|AQ~$ZCR9oLc?}1S!plr^>oG^WN2Qr7 z&;!Y@>)I0%J4})L5aw>ay#PVO)=j>>j(NAD;vgsIW>nR~5nFosOGDNQH=d?AV#Byz z77Ni^F=&z8I$zi)PW`N>TmXEi?B)aYp62!d8un`|${_ZFO}Ca4gJe%a$uKKXbz0=M z19CM5cYMHKjRXi>p-?j@6$SH~^j1)OB!Bs%1(2-QQ4pRE_JC8-<7M@{k|EU^wje>U z=PRXDX9^`uMnA$+YkmvAE5}f1cjXY-ExFrF3`M+bz3l> z6XJ%w-8FldCUzoa9h-iurJ->Rs4^tpgDJuEA5+5I{=K8u1xH1>?!>={OFa- z));#yu6PhXj}>W2QpxP%?Xk1gY0H(n-X*F?8f;3{mTd9q6807vekt{lzTSY*0ej4q zuW3ka>9KxdA07x}#q#4TvZH6XX-hx_xV2Y>+}RW4-RLm=SsT1LM=nkm2T)y%J_VHM zk8SUX$n*u^P@^{k0I?f6FZry?#OuB`oQe!F3aSL(#U*O~H^lF^Ln`79o2|P`$S~U4AR^iU9z|D4*|~PRWarnnSuU=zjcHg;EBZNU zsgnFGq5GUKy%)=@#y7v~1m#&gc^h@(^_kc1>+xW7iC!ou$azuCHujLYsP+CpYFyY- z=xTQ{r;Tz#QN60C%9E1UEOs5Fw`Jsw+?7a- zSQ-iPN2pAUyn5nDpW8`^Z68BXWR>M;yUG%tV@0w!@$6s~6v=I+il`(bB?Kp_0h?rz z#c3!A1}2V--zSd2KI!IFlzhUGeyxoLs)XWNyM6%$kV8Azc#mssX>G$9*_Z)vn2M5# zjj>0rVf$rf{7bbP`r>-MH81KQ$0%#TMZ@aUnQ5TN-yqEc1KOTS0jN`Jn3-`u@4U3xyX|}!B|BZkH9t@D)e#JwA)+MGVHW?7;!~?%=^K` z9&G3hkVdwiriZ9{vTamUyg#FT)Zhp4aoQ9O5PT{`oG!z8O@sC#3L%ULAl)rPs- zTHvh?Urx6uug|lc2;;K(&~;Y zvYVpn7sjiT4Ktt~rP?V|o4MZv!3c46ZZ+}FGzvRc*`<9medO33Np%g_va{&oGU2tsj7)CyzqYIe7PbUYDcKy-r3kHVJ zHrW{X=hMVyvu`v}$GZ21%u!r8q|_-3PwgtPKa#)UA@RXoksRvV(_8@7MIA{1A?xMT z#6vjr3o;@NBl?Xdh|+|5@KB;T$}bCKshW}R2k}(QmUHq6b)e#|^zZEYCpev|jaR}4 z1*H41R8DdtH}x6~f3l&^6Umx=`pjZf>{wC)gNj$HrkNA{3Z!?@gTqRbri~hu1!HeN zfWeHq$9gBg63ym}_tfO|Ha+@uoSvAWu8IO}ub#uIgp+Ix1sj(Rf2N~t8(5w-^w-x% zo*iUG;Eu8HE4@Y+4TZOaH3!JYs10VzH^qe71h7a++^WpeGs9n29j}vL=5wD)AG`yj zB*JBx<@8}*+XU40FfI4GfEO6WcVk_|(;EbwpCZ(wa2P*_dB1xGnPC0!imD!iFoo?I z%XQ|KwtH%qM4sB5#tKH%v$z=881CGL9O&3IY$?p7sozFE2WeJ261WU-#k{o><34^* za1;A0w~qE59u#0_qR9fEAhK3>|4{<_z8@830roB9)NYVaeCfmTj1K#?AQAIxBBRoM zT>^CU_c=q!_uzTO`T6-ap@R7BPIg@^!D=KG5Ifq3%o9uHu;FCCVd1??w|L zx%Y|BkoVz$q@AE6%Ja7!(zky@(ndN_O|)bG^?+RK+ZszO+*_PxY+34f^hkosqn+FPGz}qU)%=ZG`XAh5>tK z5j@VlTkk){^0tpT!yGtr`3xi6gMKKf#TrBmWW&sA%Gleo&DT{*E=CKBR z#MH-I5=!)-37JeHR~`hpITItGV%%9RU_axs^tRqFtpvSys>&LK!@qFPZmBqS)ZZPl zwv#?Ec03#A9_?L~&6eFT8t&8x(VKEkNSE)kQ4HB`Tx_m#2snCQu2>yoK0(7s{y8mm z!j9fuE5pFnlzad1{`L4@?VAtB=D}3W7EA2Y@h1JAA;C4)anqs`Dso$l@=+^4!N`)r z^RSJqZ(m@ZtR~%!Bpk0L#<8N`+_L&M5zXI$fMRBo=dkE?kMtVAm_M{ZEDh?Ys@%S( zM_TF3*C*T#ruR3)MVXIWnB<^6;7}jYzK8yf~f4bc=m?Um$jPYn%AY%(C#JY(2-hZDcF?8v&fjetildz9H)H22jwRh8wIbmb82 zbX5K8$=-0h#;MfkJ*rOGP2f)L3`gZbz272?8@7GYR;b%p*t(TlMVB74`>OGd*awdk zV$8pLW?C+0m=HZPFg!qmFn(my++p5EXM0QS1*+1>m4l2oaAQ+hIO>T*yG*1Y?1*^3 zlvU4z(G=v--%##CPJ&gC%PPB!E7$W-bN>Lt5@(3V%hMdbu11``2X#bVn)=>EVBW9t z@N{$Ne=N-P6guE3l?!>#syc*~l-demNc|8_ZG!c8Ws zI<-BOQm)}DU4~MNBfV|kOmW&kmHnBEEUY@hC>yFm1|wUoOmafUhIK~jrymtFn+Zm0Uzw6^VW`gss|7JIckD9%*2?S4a# z=;;dObA$-)4n?Rq($n$T3GRy?WXZuCOp6^kzW*>LHd&&1wn$EexhJPip5tf>4IXZK zX`HMXm{HoLhAIyoVl%a-bp)SY*Jx+ak(pzuM{Q#3%%r)G31Mn=pQI^z!cbM98}i!`4r(a(yY zIGb+oC2~E+dBCa4KA*HKGk!2@t;JkOo;p2Op=Ai@Z3~RG9Ge+%C_VR)O6&nVtVk{16-8HN=5Q zsD~iXm9=cdXk_->?iH?Ksx>7sSQ{a{JEgN7Jj(YJlFyc;ClX@urRf}Drts|?lP3G2 zsdxE_9(<#UM3lR?EJddo@^0K`?A#k|XTb@lqe6fCvpL#`kE5mG>|87cWOqARrN*c3 z+FcKSOWp4LT!QI9?dQzoXpu|xkDp^V9L)x~^I}+QH?cXheR6k!JT*{njV0{0Ae6>3 zFkr?MN{t{8cFqrXuU^g~nv!qK^=gk&(VXR_j5qk`Ey8w|yH}0V7sjCTrOfa=Fu)BZ zR8iyUT{fWOL?kA&G#ow&f6{f5fyNdz(sV-y$_?vodtQTEf9LMmq4aSDJ+i1i4g|aG zcVdr5wbN_`av=7eknx50DW`M7AWp}6num|2At;^RDcvY%cQJx@Y&}YkNG+B(QtN@~n2;fIKT7~% z5`4w^ojKd<@M4|2Ph=?!D{q)&ju_*dGpK4kN%#8s0z!xEw~>DW51Yb2{V7CUWXQtU z`$MPcc~i~uHF*l;D=yTSQ@W2Db41AHEpU9cl~oHkWSq{Pb21(f&2cS`=pOhkbti?t zb10-2p{Y(D^829kRq8#Dg4(6Vfkqw7jx?9TZDc7rn&p%w<~$M(BE(7fZcrUFC{V)e zy;W*r=CEF{O8eu;{VcO4WobyQLK7Lw3Zv;v_L>X|M_;`;Rwsoa)}9SpV`?d^*DBCxdUoD#^uE@oNk5MHEH3w%DY0=}tg-sM$0TGR_E9E@YsN|4 zLq4fxp`W*ZLQ-+zDd?VZM<`i`M_cbjL+a*woQh1^>j|mTH1=Y{1}fJXr8vRl$`mA> zI2O@Ehx&JoW~w8tU)h89tYr7vH+5R5WWW6C;5@rL+q%ekS}CiNl8o<4`ib?Ej_0VX z_=(?A(K*7tk-Vr4Ho+F5>F=+X?z-p_REU9mYo5-p_Qztvyr9z$U1Wtw#wBPw(e6I= zsC0g@a)i99b^~ZmcJd*LSs+DRI$8*6m^dEZw7~bNT7DXQ+Go4UncHyOYwLIULo%^s z_k&!Ebg0a$=8-mLSG|_nkG^jcTJyxoZTfs~V~X3FBwx$mW>mF%SJhS}tnzAjbcn?g zcVW;6$~YUF!Q~*T%BxH?6WBO-E4OuC97ujhDf~0MSX%nKp3QMWj7UqEglzfdBABOqi6LfhMe(3~7@sby@a7l)hjPY;CwVHRA8;|z9A3gs) zSe0{NtPU0k^3ThpP6;+CX84&~p?y6G*uiNgY6~YRjyYl)(HYJ4W%?J;>KK`Ca;u8F zSo7Cm*@dappBD;H&zDIN*#6iTB`O(vfLPP0bp7ohEAgJ%C`Ui(&N1`* zgO(!1ay?7Q|6f2OF{&g-jzAfg=`i=ynts{j->qfbV;u|q6|mqo+n%UU)0H8-dRAwN8k!p&;E`*@|F(8 zyNL*Y%l%(3`^WXIP&5@TTAshParj1n0?9~7JR|!Lu#9>;-&_jhf>*tQQQFsJJm8bZ7 ze)s{vF-kr(kxha^emIZ_T-t2U)NKMk2rDHG+XyF+rc^82!bGrIDATU|@22g^zd;md zn2)j(umZ=>KsBJn&^X$hqzl>tjEzN9LEh)YZbu8?%?EOtT)!dV8oq@np*$i`SpFm6 zuW&31d?l8dEu2A)rM$|w$pn=0TgCI*S`jg$Fngr{$Xsk)Z2`vL=ZRZa!LE?1_scgY%vJwPg zM-Db8ooGz~(4vs*o@vEO#^nX~2%rgEuo2-+ftu3N`a5)Gs1$4EZ;lP1Xm{?y0if+B z0fch_Md$-2!5Ds<2?Q(%^WPzp@A#eQ<)^RPsJExyzh zKZy#zxuiJ<5|DsG=~%8W+I-PE-o#b2+F7?gVWDgj*ZR`IQYtdhTvy&D5elM0L!^|- z<+@GbwXv@RXMI>2ZcyFcN&w&-mk(hhF=q(ww%T4og~iN2=J$UY0{z=NLehBJijAm5 z0`_f4+jv``(L|lU(dcct4MnKR&raZ!vACt9UB*0LpW@HBs-%rl0v-Ayn}?t+ zweIL>ZvK7OuH8}=fAdnIeYkdM?PLr5iaPc4AM>^ZAN@e_>` zhW|Mmzs0|Cym^D}E|@Y%hKmekkrL>sH?v7!&5}^|*Q^(|lTG)I*o~V_qSB@yEsKYw z{bZJ+Ok4mc4V9pDxUO;%*m$1b`2svVM$AcnMk-7gI(-AlsqVZs%xN7Y3rT+AC#q~Q zF#YjgRby3lhYV6y?E&bI4KQ{w`Otp#3w_42FHcLbxf!XXZuygtj%nnFaqUMm*FoX^ zaq{E-QuArT9abcZDTI`>!}<{)k@!f0{}D}r1`r}`>~Qkf(LU)}pieAd#C!hF75P8* z7;r9PL#ugS$HlcyH7{n2<|w~kZVw6n48=H+n<_maBk`Z%FR|FL&&HM7k_hf(j#oyvElo)9v*P~N|>kVC_3 zq5k;Nu+bOKRbMh={{F295^mni1rYNau1=Sa)o1&9HrT!4F z{;}?U<8?$d*JyH}&FA%NW>CZP#eO=Vc%N&vF0Tj%bjY8NfRg7c??kpL|~y=coSrKOuhu7^1d!KU72i z)GB{!(SLM)k`-tWg)SM{zXjphpuF37F{?EH9)-*Uev{TPljd(*g4Y-HHTezAyuT+9 z#)03ADC!UUOMm{~m*Bf&1mRrI8~)pGq<~^QwT-Tb|EYWb!=~IF2Nhttw9BwOId$dx?_|U@Uh2(#+Koy#yerORlGkNbXCfWZqJk=1IS+ZyxDH6O41AcjBFE6jHA}`OV?e1b@?_`aJMw$FJL0YX#n=(wxsqkft>clhGK5Yy& zauvxx(~pRsF^$KU8h!58w_6d8iWI}UK_kYXz{*_M`pS57585vKo1OX1PZGr3SNjP( z5VC8@Rs7UAhXB_qneSccra{=|m!{TQPQ|RB!4EAT62H*Tu(k%LaGxz!zyja3pYF0l zx1VM-iGz2eP6!_Rtn@FBnFS4Oj(ZvvUOy8o7Z|t~ic!uH4?*0zUm5(vkMiX#Rr8C$YZ@z)+|^UcJUebie=m)Tesu?_$IhWN_=d z=|`opjWY#$bRn~3^VL66QUdl$@9jopohnvE#-bf7jrdoAO|S8>rSGNgv7Ho}28D)v zdIMPcrL}>IjfMsqC-52@?OudE8V2y{9`K|Fo@i+3iQ#Biz)uq3`8?oUPT4?sb}SGZSCw~=i<5G`dbLN)Reuxfv16nx`dU>TV9JdE|%83zHeRc zhM-CLN&qk4T6DZ^_qpPKh6BGzGuwH3x=MgRK0ZFYK7zb1?zSL)adB}Fp8!ZefCo5( z#{=x_Y2nM`?7{Nyi~P@Zo?ClZx!b#X+PgS2-d)$i(#6YDnwk0TM*r{Mzdxt7ul@ht z$=TyS(*h<4x_bx2&&vn;f7b?vO5Gim(6;xrb~1c!{}wP0a1R+lK2fQEo&W#$&i~%= z|BN*F-;w;nVgmnn=>K`^|99vM4{LXMm$$$@J!SrPY5p_#|GxR3fl{EmssA5S{M*j| zItmzC23HF7{}xRKSBvgb2O8Q_G?nMi^nLH`WMWOzDV#U5;V36-{=twVCf;Ps#KsQbt%Z$r0rLQjFV8WaKmCV?A6js*G$Ud3d+f+}|M2j=FJR2h@{gw-Q3B^3r4?vD z|HqrZY0{>Dc#rtMKmPDzylMKwuaX=2kGJk~&6Q%j&-~vXqgL2`u0O330W<&8tv@cw zf&a;X&vRf8KQ86L9)~eA|I@7*yTVZaWaY@G@l1?e3h^qq3je%(;dpERG>3=5^zu)` zW9UDTMMwU_0!O~Xr+}mXgZUWmONX~V2lG?$TZa0dF8CZeiyCKpj;Sn29S*LnXSm2T z4hjr3QQ4&BE-dsRH=HDyAx zhX}g87BCii_*2D&vHGBwM)KzIe_uiqt(^L$Ja&fx5VUm;Fyev&g^7O9QMzqb3Bv|m z>+Q|uUKoX`tH-c-afb8vO%(k=>&?U~vvY!O1bBn)bh9}7J20EcA+eQM=V*?iz5to+ zWx%w%rr2EXwZy)yPR{!(0R63-L=O1m+wIn?og^K;zR5QrtOyGV8 zmh;Js?Z_8md4rvq{YfL2bKB1gV%LDdJZ>)$x3sM`8E-{IhlGBS^@1Qd$@Mn*zGHSf z(={@g${Qs`pE(Jc53deKWPNt@EHZ{xQe;JpU5eY+n>VsNR@EqzKV(2;1tZ)e&*x=c!wK+KhBY&I*r1$R1;qk0u67KXlK+?Z>>HIae`r!sQI5@9RQ87Ty zEY|(=BBg-I&)@k0dE&`K#Sn(8-&oGu6^$q1_$~CemJgeEY6s?l)!Z;BtspqupAwyFP;r>2|4IfBmHHHP=Q-Sv5SNW9ENUna0)KPncm|$$p!7yz%KkLWqx-R?XGUL?0qi_ zKE8`7Cvz^cFabv}YD^8(OsXaIbHN|^gTUFa)S)=j+x_fW8z0l~>MrLPcf`I44zjw7 z&_j*q+c?HED}8KRqqnvFtTHb9jNxfObeLLbN4Hw|sl>3m*LJyg;YFBY;%(^D#}v^d zzMj@)@kac7_0z)J#)V03rTzI~N#srgFv0NJu@_4ZW#q2uDV~TCuJU+(XAa^DnFXUTQUIlw!^oQbV=Q=XbpZ3hEceus+Xq z{Htq@e!{Mwa3!W8rWB{gQ@sp4nJIpz;yBWJwj2`&)yY>B7dac&ORIjxL!A>JbN86)Ye5ukSYV3obSL=g0JhM9#jr!~_lK!UpGc|LYDes7 zRDSp8pxGEz&tdk>QE~W_Axd$EB04t<%m=7`wrrt!|FfltANK~6dM%#rT-MGxw=@G0 zy|p9KdSu>jyP}PI8hnNq1jkXm;NvX_BDW8dzp4aV2p+Pclgv9`Dm514f@= zS*J+Hinbzw*tHoawv2t+j!rawjYHIQ3oOWat>sh;Cv9h!-Lsh-{572OrSiIAlwuQO%adtAQ&QpWI#Kz%VhP{>PuD3ok&{p#gU9iG^HFqNVfA{)$Zg^kd965aPhq zk_vLW1^Kj}TY5&4dk%_Whg}XbHUU1>H2}d$=FWeRf7>;bG(?>LTRx0_%5dz-h+T)f z8Y?@!PHdwZWhR}oIeoabh52KHpzGspmf~H%GyjzjqU+Q=+KYMfg95MLg!v4MZ=59{ zb8l($`K$|ko$C8gAsasPZc5N2au{nxk#OBZ%lrrDkB7NJeb$m+T@bH75;+(acx`UX zR23>`YE>^$C;2%6olq<%%QUuj#4>d0eL7q26%b&Dg8`kun_a7PB#~maDdZ7wFEzyEk6Ves&mZ^$md+B3IIDqv3JX7Ut-ly#_ z^MYfLZ|6<_kSJo_HJ!?ehH7- zP=CyBFH+6i!>seY5rL=s4Q7d0KCHlmBj_#=g{h{qpeNmlg0afIRntUz?>@_uEf za~yPM3?RE1Br(S+(8N*W;-?9%);1;e=8hfZWhtv@`21>=0k{OD`Ee{uP0fQRT=>{T zngx37KqflJa9$ScNVjg@NAI=G4)pF)+}(e($@%H!FKTr4rces_HsH+g4bnwoh?|55 zBJ?u%V^+0|4L004g$j>+kfYG`kJci;;2XZIkFple#c~hs`NT`1lo!O2N}t0z1ys0^ zVGP{|fUkP2Nt?;titRZNx}AYHD7n*i-*;xprZ^3d;LEUYt9YQCrOGy-x7RKybr;_> zL%V9tElgSXmQ}tJYmH?aN?F`2)4?fw`CeQ2K6Yt;yvUf9Zdao{xxCHI#`aen8@#9v zr26;7XE8ht(-=Wql}&kwPt5v>dG!hwGMfdTCTDU6@oZ_YmMNgFfD^tAR3S}yYLQNv z0urz|@)G+@xn|A|qxFb2a_xAqo$H6{(Q|5jJ%5}RrAJy#}n6WXypkExC3Gpb;A_Zaz3 zL)clEMC}~lF&5>@Hx@1@{Y;93jdf?~nIX{=V_vRSXV`cJC6v!tJ8R0=L*o>Hq0`Qn zX7DGM!=Z8ko!0Qkfj6Ht9?9fc{oNb9Fj%*q#~Lo$0H4x%U&5G(z6&#h)3)Dx?(K#_ zXCFq_dyf6-k#`zZ#7Q@~wWC?_sT8%_SH01iv6yaByWnNFjt3Oe_C}BcK{aj9{BnF- zs_MOKRj!Jp z!_unNlzlJ%=L{%+qCN}A@PV_R+F}TceRZu}3a9xF#9;7!3b(dSN-Gj-o~Ce=q!4PxgE9s{c0X`p-+Dv; zG;)cP_4Mr3eHlwsbPOjF1nq)8*YK&HQ^sN(t9jANesCQtw|=SjAOPR_-jJ{o>nukJ-b~y2BTze z4&osqp&d_&8B`b7$CdC!?2V`HCA|aFlj*RqF zH$RYppb?tJ(?x&VMMtIAw||sm9i|7+!+3%ye^6$|S)i@phsXM|Ec@#D;7bf@FO87R z4%$669CnwhP;Mf6_J^qMIqLBjaJS&#YxpPNleO7*DZFy;iwO#lj(^ouPvTrV_GF-m z^wMP`6W8{$eUaN$dNl@FofluUuD4=5{ch@oKz@dF>P62xhr00Pjp-_8A!B18#dvi+ z7OL*Ud`U6%rv_rgS3PP%4r*rTbQ4Ypy$7To}F zx;3GL)oNFKr0W5s z@Nt})l;mSinqu_RWgjkFP+R;Md6zTWdbyt>+dcMpA8?f4KV z2P+|i!E3wWF^Dht^ipEm?j?>U{ki&~4n%7Q(F?Xz9BKA?FD0l51!JZU!wNIyx*TSj zdPaH#RXQ&zH`1ak!XMfQx($Adp!fTlOZX<8eak57uhrs__x-|e#<7t$yC?hcIz!x> zo$hiwjSq42Kk7VWX=v5+g{E7HjM~`Kr#SQrysm!Lo?_&jzU@`69yekY@q(^-G$uW&3*7Z=*ONt0OXh!qxeiso9y|uR@x&5oxR-xvkuJ{jQl}AWX z9S1N5B;SWpq9AAI!*ZNr7fr<(LS%tFJ`Y7Dr zE7b@kdc3d{!H{KNZ$62x_OXX1s(6`ZLY{1i!?)D8=gULb1jDkbH+idvzo{+J$3z>WU4NVPUdkCj_pg1p$SLW&wG zQpGYY|I(86+KEYcQuBUPk>6H&KzJF!t1^_s80$)eF>DJIeGt}dA19v?kHzVaUFHo=uoZ*_cI$ung zN+$IW?%SnS-}VAAHn}W^l{dFrO+4(hHqNT>N%U1K@${g26F>>jwDNa7=q)yKZZ3qx zuh{`S#7o&m^sx;#*>jZz*A6d{$2QO?0P$#QNgpRYSW8n0L1kWZpII4x1uAD)&8Bw~ zv6vzbJ_R?(8h+HznlZ?gJo7XI`r@Tw&n{4EF7DTi$Xt$hF$NXJ3LRt3xjv*RobEE8 zd)qj4G?P*fZ#8tSc|lksN4IWBl5$vn8MsNk#*}n8EIHC+9e-IdoP^Vr<77!$a}nux zR9aT)!0u1!`sD8s{S|hSDQD>*9!%|bs33KxMppAM^?~7gUBa-lUK*F3TTO}0$G6kK zE?d|?BT?i2>FUgOkcI7?iSR`?KKX4Pg5<^#tsMT27!(%a9wD(YdYGz>5}_c>#)-FD z;~01x2EW}m6geXhy$z4yktL59SbVZXqP|YFX)9>g)UZ`rHYwWgEL<@o`Yw=dCtg~^ z(&ErFB^cKlpeAmPM4{&z3p{n6wMl*5KFw<>c$xlP3SD7@ncW#~+2Hkbh{uMQ*ok%| zf%k!6$>B?J^FKIGK)hgUanHF|as0#Se0A)+KJ)pl-Qmg}zjj=l($02Wg64jc3oibh z)ERwsS2-R4C$0nJAkZ>Mz3Q5Og>sO61Z46v?7aPD7?dwqM-BB>|?1Cd(0qpx+=eOu&cNvQ= z{I0IdMj6(rjtQV@zXXLx{8d+=fz^2*L?8iX5(s)V230%z4M2iTtyDvs^!-}-ewq#P zr2RV_eJyUY(j9$qF(ksk=lEvEIW?N;j?UqHH0c);gF^|5 zzj3I+S(-T&Y6?C6OgTxS7Qbc}d=LwnK%(>R=bCLEX1|3o1kHyD3i(D7AH;y#nt~tz zAS-WKd8c#ERZ*XKYt?|J#@_>%%aT91Gx?=P3x$cN4pgfbAl$lnK!Z}|;aGKqk$AoF znz(hmcl3!%nz><_t33~%4~)*IzDpHKX`R+=QOBXqH0)n9kMA$ljjNAO&Q)G5Crz7z z?DQoYwlUWTyfLVa5^8wjIQY{thG(*x`$d`khhPq4>IhfwS$j69PcOin?26LEJ`zJ? zhB__!Yt?w0yYn_|PjftBjPj;k`*IMxFe*wDj-)VvT4|(z3}y)P;a-9;9sI}x_Gq;_ zO>38-I^fQkS~PH4n$Ixn26oLK*D}2|uIv5xuxNkZ?^ zWWKl&FVeiN*IAe0=Fa#pWlG!goC-l+ZO?G`jZ7br*l}CBTcBWJ4(J9=bjv)bxld+& zhQs#d_i1DMJ@}6F$#i}P4_ng@0CZBvK4SNm2kNd%R>rfC14alYx|~xzU%twpS9LJ% zd~1t5S0%SB>w0r=Hb7}Mm6%U|dYAst2||xMU}51DNq${c)pmg)sP7t4OReC@O&I~y z(nzmCeppi!t3!P-Kx>8i0|ZBluNKMjNbf9n2sv~BU>LW5J!wlnZ4w<`+GdJewBn&D*GcyR?%i|?@y z???(%mCIL{6kJ_+iGl9OJ;8L$(K~4g0Hof7^^R2F`pbpFJ!2mO2qOA4C1Hzu?l~Y~v&CJqfI_ zh2J!E20OejM5KM|OjPD>4qIXaEn2UPXJm)K)IdL0dt<3q4$01=0<6`)8co-Q%BC1} zX-~jqIFmxAKlYW=T_yj$W-wzOtq6~4!w`U^CM_{TUT$2+puvMqxcDsM-zTsr&DwV% zom+M%t1*b{)c9mnE*S2mv|5G7;9$nMf+$)l{|ni+i}Bg)@@pfsc^Pzn;W=8Dd=u9F zOXq6O89;R~i6^FMtb?hwx^#}_%5RVS$w88ur;yea(F4pow7~GJH^Ze3>|6R@%5Xsp zY9IYQ!Ky+E;@~W`cZH!M3!ZvDv-ZUkEd6cRN(_PZW{{}Dv|15oTP+f!@UMH?Sb-^M zYTDOF#j-;IvM1P z?|10bC+bnzKf$-m?WSyo{wGHuTtB0~PzS+ns(_+LSjbJoTLtj&5J9{51^`1NNtW2U z`vC(JpYr#=gd(SDKA#1zspdQK7@vZbl50K7-?{M$HPBMgFk5Ps(P-p*u}g=MV(MoP zHI$^uSNl8IuOb;;pAQtaJ~sUk*A8fFdyD=^X;FYKAJG1}ty?8Xe6v+nH9uWrb-nYY zBLvH_q>_`g$A6BGR^b4Ga@8j@5a=HiLg|>h ziE~Ml(frfIr|vZGss5_ezhaYr+bB3o0oV#z$@I}5{#tAN+hva&?<};vIyLYQ#(X-$ z4Cv1zszg1C|6rjDVZcHcUa0N0zoxAJ7~Pf_FuHAFgylbJsMnvLhAb^_S3$i&KaO-! zNFYDMF?zk`A%KdTe%gEo@SAF^VC#!6>%D+yuA2JqezW=V(pz3Ebc!4WNJT9G1Zm`Y z@8C~a1-A>qR0{6{SWP&xvL(X#x0SRSTa_`6K zqMGc{&_ZRoqnd&;k?_O5G9)$q)~E{GfHe5%uF}>Xlw5fm#KUDWqqLoL=OSr8dbNH=#lf37Q7@U+OJSSS_PS*jNdFI8l2A(fKRf;f#EYrlF zRG6UdbW~spEhz`Z#Q`xVp)%@eNK5Yp!>kL3#n4RvPs~iB z-fk+M7kyxkHBh!q`>aj0&wcTOJ2%!9u{Cz5@ZE{3hViUbhV;~;&c>+b%BGn;zi;Vc zrxVB;8-pab5c~;st zTkh)2n?L+8+Lbujo3jhBi^MblBNhOh@?97%xl_4qzbrw{x)>(s&hCVTy^`WA2alaOqzSNenL8|nx+TS_ zBl`1odkesaa_%A!9sEAAQTZ)@FY?mU4KnS!@?il`GK@c)T+!77)!z3HBC~yW0v^Y% zl8b*e-R9^EWUS>op)G>9&jweIerfsKu?WzB^>o|sX4hMct$epl=J zL3ncil;51O-UC?4Hfi09Dby%X37gDnEQYvUW}X@^9ygf|`B&;qU2dHk6#FhARoF6D z0Vvm}iK+9)XFmLq1U5bP_SD{R(85e=mz`W-$Wo==n0Zs0Q*D1MiuQp-5THGm8`wuWk7M;mGopXZ3|0z6Tw>%!iDtP&mTNo+^5W&7?(q^h$?S2BsL2Ot-?+2nkwe+ zR1r}iLn}qtReYOtkLAXH5JNsmA4~7q2Pmnz``%sr`S6_?z(-hoj_`lAQzgI8UPlU! zNd5Xv0k>H0xh7^&6yo0OR_0R7b&cP55<%0O6N7zs?EJH0;yu%&d0lT*zAkk1%ET+# zAE=S9q-7j@Pw%wtPkf%&d%e^zRN2*prAT7_Rrsa8;ZmE5j^w9gM3m%SpV@vsWMyTcAQ|b*OzAFqT3h->|>0zsPrMeyqjE&9Qpz}=Iqf8>*ozBrKSZ^V-dwfp=Q|DomGy|( zZn?%bQ4?B8yKOf-4!g0(7PV<_zHOKIJvpY+JEC*hOqggS8u+xPU{jMYQURrHP~lbz z&kFUg=c*SSw+Fvp>~4dqGgw}K9o5ijhHv|?u5GtAu$K{3jSZ7*v|e1_^`5Mycoq+d zt$viB)m@j4pKkS(jS zT(Y_D4b;j~aT~f+6oqcePd7f;bf}Zsg_w#rUJhLmmM=$Y{sM1gZs2j#mFCJv_^~`| zs_MBTeNqfog8Wh!)VM}Z3r|v|TESx=!G;Oh z4GMvQjJ-u?O>HSN3p9b*AowiCnIP!m$nN1EW21^gU#M!EC#lU=or=~|(Z>7vHO zw-R>(m^R#1b;7MX1d{}F{6`XxgmOJOH?b0==q67iw@!0KEkBwmt9IZp$u?sxx(@(P1?rSckyyWi7r|vNr-Yn`4xUweQ*Iw?X+dg zd3xNE_^n41^-;6!tqdsH>Qd;gRo0R9x$_2H`S!DqO z$oF)Y`<&LAjDc2}6H@Z;z=kg3NiZ;~0dnJ`$t49ZrNIdl*_xD^pF5rDxR2Vm zobydL;5d&{&UP?u(Z*6lFf2qy=ksp{( z6z?W{)z({`d`#CNN{Pq|kOx}8WW9jSy&6%~P*tYRd>#{^ZzDi9e69$TkU! zkG3|S?OA~aBi@e4;CuAf@?xYonU-0V6%J;?nxbtj{6)EV3qZJNwvpDr1Z*22 zP>h`OUY$rlWaY+yiV@GgT{IOf1Ab$u%VCuzG zpS#b3{9ztSP38N$Jy<5rQ=+;pPfEQ|T9rAJ$cn6@DgH@v(JCINf{d>H$0#!@4$H2- zxqdJD4Ytx8gq;L=v3QtYNtx5#QUV3u7b-{$zg5&*A_f?-x zA3jTbvg&qXpS$vmr2{5IAd1NlDxh%|OQw?SgJL2evCi;iydz{qZCssLmiVM}8qT|1 zZh(F`aQIKTafY(;+UOBI^$$gha=J*BW<~gVkdbN?=`kZ*Bgu$TS!a?l)|9W1cmwQ( zi40!)7*AZp%hDB2FimyvIKahK;{Mj+;$27(_=}yqt{1K8sF+~%2ft*AOsSZT z@NhCFGs^WyTfwN?AJ}xFCFSVoR z1!F$k+}jn~RFblLWw*f|G#&^(AL{Jq;_{Zg(fB54c%DfFmRQ1mi|$1Wre0IJ3vKW6 z?)R6rlud4fkBN8PlVuVK9_Pl6-97`W2jM(;{_j!Wc*d_8js!9W=fF@Pss{KmP$$M&ELhgNuT1I z-x>38O25LFaN}sTbpHZUZl@G%=h5WR6pKDiuGM=NA`MDJ*SLxcRv78lDTZ)AJqF4z z|B7uT5QUeo!^?CH3Q$|LilN09LhFl=%dt~~bcnO5w7HZn^yqx_l@5g6sNVW0fxnW4 zl34Eg!4#@3_^VQBz1|r)E+*Qn_E<)63$~x(#a_K(Jy(fHeY$rhAAB+ud@h)LT6R(r zMMQEUt+y-t{Sb(4R~C#9yd*C?%jVcV+c6_VTxBOBRv>k{{jR}YpK+sg=3;AWN-ivZ z2lS=oyjzl=RaBqx$~hoz2j!b;RQJunB288(6oeRv&lF&I3ZyLY75w*%&kj1UXg<*1 zWKW^!fYg^*xf)A*B?9n~90XJq!B z;50xvhf%1%Y-AU5mH`*^jQh$^@ntE_-BwqBud|`t_6CRmF8JT8xEWd${6S3R#tD46ajfA-4gppnQ<5RCbxX8CIP`!=|>Q24kl#>Zz z3JEcPtsjv;I8Y|p8u2ZtcVf8iqQyHNk!28JbcMQbUX9T=O6Qzft!Ndm`L*$)I zFLpp;E*egZ7hTdJue0X%B@nNUO3r)p5#E5P--Lvmwm=?voEewFUTmRtsuoh6#%v9h z?lMEdb-#hKQbk*qjfA%6!~!TJ8@zvfHB||OrJ3zsSf{+hIc7kFVPE5+@;6zVdcj#s z?@>xL7STLeqFtge>n9VSsB3nInA#)!7qc@0$Nsd%`>hV?cnc!_gJY8HZ~6B}VT!rY zdpYHNqmlKnYIC_88$P1M7i^a_RJYMvA4gRL?Ww+Rh*b@9Z2juKnLgymwA^9cZY{1~ zv%Y8sA3p_>>(n3g^sLE?%$Fy=B6}@`ZNaa31o5L;7}9>e-~Xxf6ZVwi<5D0sxEnVWN}<`(>g+ofnr3{|m4 zRpiFJ1k<5>q$d8cxT|%zkBLl&6^yhw?Lz2h@lP%tE-mt&I9nKZx>I}?tUSr`9$9vH z`@v-7ayM#?UX$CRs~t_T`sYamg8~?7IrYJ6M#^$;r?F3ZV1GVYpizqE$$kqM&^_B+469e9XHUo8y zf3HpSYvUE6x*JX6h&-8)Fp3)#acIXwYXO!|{31H3KSekE>;iBXtm$ll8g{tyXWLlN zQhd5!ELpvu5cj8-@ey~d58v&FvP_EW*V9t3$RMSGoT?F})?d!Lk3S~!ET>1Sl^PfC z5!(P+-qFkYEMS^GVoIEMnN)V9Ir(0k-dg76i_k**nWw22i4)joiq4JtCFs~K4&S>E zhSZABnp+Q>ZlVrNcX-=ez;zQy+%lx)?e2B?hnN-8?5#|N^CXXJpc(KAEJ?2^ zoby!CI~G;Fhgu*6d%pdlp>uZo9ERY10T(~uv$loSTIp|VBMR^9E>A4xjz(YpO+>Bc~RfQeIg zl8gUFpMr|ChgEOmOgpbDa+!J9b6sn(>VtQet_?X^N(m=J4;bRHU?agN*KXrAiX&NN zb51Du1|GjpPZeL1!y4OO$06fgu?33l8v5>Z#0Y%JPsP8idf9cLfJ3#~8yEcfzS9FT zJWe?YE2))`&nS!YP-0fFn($iBz+$7ixcpKyNmhvuC2!x#m5$6gfs!9=$xzJL76VU? zs=)Gj-|1lNGo4gUWD@aW#-@jeLXsi1v3#|;pj<2pj{Qn;+ML@Qqm^fEg#rJ@i*tmp zHrmiKc2eQIouLkN#!^+VC>Uv4*aZlR1$bWA1Fh4#I1Mi9I;-XMo!_00u`= zv&v8z4z^#7x~}L?__<|uvifZUavt@7UeN1$iL&ICPHr3Gcb*w7ByF+evggFVUyhT7 zQv?d9h}XATEhSaN0NDMo_|FtvU&pt^FN5gOtkZHQy&h{rJnlxx4Jbd#C_!I_FKAaf ziYxzDB+aovXT+y(ObWDib<2MIJAwwjOP~;ehm-QQ1@vw?BWjR#UkkPNaOdyK({SUL zh$x9K97kZUh@O$AS@2JnvjEPktZ|%miBX>mDK2P_%=NFa-B;F3ZH+|@fh+_gu?9re%9=h#>;8gwb7qVQE_h63M0 zfKW^Nb2BcH@h3eu@X*1op{EBCLq3ABz6Gh*DY+^44Aij;8KO(69SmoY$JWa;sVhx# zh6}(gk~Y+%R^okYD;XSb1jc>=jpYnxtu%F9+TFV1H56#4rMMq(8F&Kp`8n~|@b%{P z74eD^KWh#XfuoLz#A{WVn} zbhly7&!wy&@TC;Iz&@qLrbnW ziUEsqv2Wlcx805y#l;{pna+(HBNZw;Xl`jwoYdh&q6*3De2!WMzG~NG4S%d=bD%@6 znf;hhogxIQmu``+utk{C&}~~kt0Pa-_QRS4pJrl~h*3=3vn}bmWyAH?Y+KLj#=1U# zkM+rOelruBmq5R&mlQXyGAI^|?xm>eW+sdj(W^WZdr`6S$5;E2FB_ZzoUT(#dCE7) zCm-*Z7U*p!`xQCUJ{S8z!T$3L*^OiZ8R~MUQR4g$c(SALq!vDz-AW`pH2c&!ll^p@ zAxUYL5hWC^Xq5M4wVmIX|NXC*F9EkUQ`obQ;4oUH*iyP+#I}wX5llv0g^=GC&ZbXu z!38&!>DfSfaV3baGzQD1|Iuld#fpZ@0Fee@ohfNH(NPD%20?7R+16Wmt>3YN40VG8 z<>0a1%jf#O3dbT0H|2cXZ+& zpKPa@%wU?=J)(>cAMS;CD8?to*FGL5G90OQulP!+F+pc|?Y~8aq55PB zUpSXE6~Mi=OsN!4)OGxwMrK^n1K@++W6>_UDGv(hMK}OYHlB2uZgb1_z+9-wW<&-j zR=jxDF(fJ#E;~B|h$lMVtCKP|F-v>DL4#t7;CJ7$&Af^$>8x}>$fzr!SiJD;)fbB^ z-h8yp%2_Qkd;c>GNoYf8@wgq06v*%7$I{CInGP|_uHt}H^0ET4()5DI!!6*vlBuei z1jk=@>`}gB?UN?H$8T`_Rkb0TN;AJh$~RDzKO5gXWX$mV#ike$G0Z9Q`nODSih`H& zJmi(eKJSop3>~y+6-UHe!zDmn!bqBhMS>rAUXtGnt3mqu!*$Dg>#vt$@u=}I9uQ^J z@4GoMykK9^(G-X#4?~y3#7_O#NkHzz9Z+7=CU#0pZ6ZLXrrpyi7)s2$-4UL|UVu8G z;@c+LW~_5;;h@{k@M6}88WzuZ@ssH>p-3Xt6NdcsU8|@Kc;tcHvq+M(cw$^kHS;$b zW&E=J?^mSC37sLHNnA|jg_##p=O{Mj44Cv4ka zG)3sh=RT%r;&Ok~pPd_w<(A!jt@HV1l+R+_l9$1La3^&Fwqv<~WoW%kFM6H(S@rLD ze=?gSE^OS#^Loz&F5msU;o#u3^`!jc*_o<|H$ckB?V{K`$ms}P${kfoP@8wccyJ>i zn5Ql^$V1L>9}6Y%o;>w~W69_r115HACp}OQ(?!JlJW_CY{d2d$HW6;nd+o(2ntWy5 zW9rrnV#SX77W&5@rsv+HLinhYH7W9SqHNP_yTs<;@zR?O)|3(;X!v09Obbh0anuSu6Ml*HTB^%Z;W)x~a|Sz8{1jb$m;s3bzi zZ^vJ(3UA4vXsktF>~YWUH)bBw-4t~q;qD`^PsgdoajtShMKr7BIH>XL70uACrSlg{ z*Au3pN&ax00r`WPh*1$i#^CRvjwM$%*35(;q{PUbOEV1jo8b#o|AejD55Fat(!bJO z3zqu$%119^VL;ori0*pnz^ZSdxhH zdN5mfjGaY+AQcnV^PCpR2J^5}0<>GDGt#Q|)hF9A>c1>es~ouBKk=j7L_4Hj%^p7_ zt$UxU;Rbmey%RU(s{4Mi{p@Dds{K^+5*XyKGk`O&jI+t~`$m_+rSwLhfz`E8GcJw8WY}gdrn&R zlb_{l^z>Xtvqj3evMtHFUr!E6c{}^TY$CBT+tWRf`@;J|$F{H% zc!KdmnOU$U!HixzmS8j2G$sDt9P?L8~mPnRyjH1^oL^oOdnC9_>8$6>#_C zZ~ivmqU3@kiQ~Vu_+2brdC57IT0uG&dVo~vb52$t9bdQT?<1ZTE=Fy7hj#nu0&~rf zjK+ijPf-yIb9`fa6B6g5NH z%C+vo_*-lyx6yKtCFR18M5SMgk88fXI@Kh#{${}OmE%-k`b=|y>8Fez;e%;pfDC*s zzuH)P{aBPhN<36@ytCzV22);gvsQmaa=|zH(aV|7700#Pk_!g*Z)SjBVo}B4WcD4` zsz;q!J#mm_s{OLD(6Z&SVKa!p)oj^DYQ%$JzMyJA-&`BtaU3#fLsK#X4mqyHHm9Q8 ze5SN=Ib#b;w)oqgl|2Z$862>Wx6r_cNyFdt6SUC8CbXv`fdG|azEN&fJ@ zb91t4SjVqS`FmM=WX%_io@4*pbp`F~P0^3_S*cdNW@8U?b>E`Av#+!H*peDuh{eo$ zGCv=lv=966M`O0^LoP0*XTr{qd!ETa>J*j6MeuwwHnXmyZ%vPB9Dk*RYa}hUTb;)B zf8)_R_+s@L|D*uo@3l^&s-R8GXBddM3Uvp%_7Sm(+MZIQOZKa9DHSXUXX6(<-O^Iy>Rl zwf_7MtBWia?C$-7La-U|$#Jb7XS$nu%17<;;{%gy(czZ7nt@_zje9MHevyFoU5gvu zT(UUk@cjwqjbtx@&?|bS!zbUgob^xpu$BpvXQ#?9Gn{6>+_VSm@UNsW(L^^|X-pnB zqzmx>D&v1`)P2nHwMS!{>L%GEs|Pr8W(rZ%b#f_vO*v%~Z@0xS9DIVmU=hL{z{n@v zHgsh%*79N*yWEO`hqh?oy(+AW#WJOmtwm$9;-0gqj5VY}mln-L6=!Hz9=8Ff4kelV;RA`%6XGJ~&n8s&si7kIBnTGwWp^c7T@# zLCevdl(>eQ$ByBa+ya-^_jED5?WCQToy&ydGBR$edq$&PhMpEX`vT=%Cbd5wVu4)- zV3*6)dni44InSg&s-mUb8GniJWVE0}J1tJq)Z*r)?(|yI@PKs!x zbrtD<6H1pl3`VK;R>fn7dWSZXUpoiqLR!Xl z^;nZbhHGxpJXFVHi44_WZH&`wh~1ZdNU6LjIj!>hF!gl3VyDhyPtG?>XJffDTcKgb zCFL5!>UH{qmVf_RFw6b1o#CD3ea$P&6M>HpUM+()yMq&{&g4-i{=z?L;%!Iyh1`6y zUN7Xo5sY6H6{FJp=-}?@tG-!^uM1>0-l2B+uFX65P&ky$glQ|6v#}(UhO<%4C@cXk z`QMLtDR>n&!42e1nZ72cn0%$+}}O4j>p>{1F% zFg$c1R5O{{C*`N0Yct_r27U$2`WJ77imKLR?8njG^L-IP1?LLl< zRdVp0{SPVjK+bm#4?KSzOXrH^PZu2l0XgI!0vVb9kYrDdlnKY8S;6{r{*XJ517(B* z-ax#9|H#GoOJ9Hm++3(bt2ydV`T|}_AkCgJ=f^+mJpLn$k+6c_oV4sj>krBE&vVd$ zgnVAa7b<^jP9ZqJZOAG49|aYEwcQIiiVoe{<$uG(06yLbDRA?*Va2|L|80wZ!me2d z0h)yu5{dYKZ1y4e&3W|Ki~pcRh>*YsaX%ualZ|l#a*~ws7yjI;fnZ)$<2<$^Y>}ft zI9zPvsR90<9vlZ6hfBiQ%t&!+K=}vB1JL^tC`jo_GFndMa(~b=z^&UJux@KIMKAh4 zS~m+|V6PY;7k~B8KfSQ01FU;it&i@H&8!Vqo3KcJ|AR6F5!adwxcN+&24&=*th)xT zC(=gmYx-l)&BCplFX=@7kJhaP7+8&>+QA>2b4C`p`M2C8xqoV!zy4l|2N;-EkjtNB zHnbyr@S8s>6v6wGkys}K)?JF1`!e{bRZ7F)9q7!v>DaVV`&qVtb)Ak<&R zIH)i$&4wmlW^w}&>p5q*ADd!)TEvhU(w*Q#!Gh>Uf$KlF3Uooz7zx0MNZWjpnPj3I zs7~3?@P6y}>UTHJjqCjnpNoaGxTxy?(N?bbBHgOAh9 z;+)}#1u|aigjqnVO&*4oc)Z%v0H;-|+>9Rr`T3iao=b=qfE?($q^8SWzm?|zaE07&4jRgJj6V&%q{%t* z1z?QxfJ*OWyjHzjJ%IWtN}hYW1BYcS0t`UgM^W=Cq2sf6K;EFMU-K)o*k|N(*Lewx z@Ko`7AVsA6Uz9<(C}kGVKmZSK-v6}jZQY!U(yY;4We=q*klSSYv88&D@8iwYFd!s) zW&8AS6Xv|S2jkY3eCGJfcN3S8t-^;4n2(BGG{ zi}yrw3Y&k8`v3C+1vFy`laLHHt}y#<^NggC2B(aN&Yk;uf{AvdvnRoz<47-yvM?gB|C=i@{N8!>-a{$or zejoI)ICFeo!@B^8e2g7$HeV3*!(}H8fXa6sP^Ik>4gw^E2x;5}1yXMF2r@wz^VuM{ zpvrIl`$7HgwU8T-g8b#i56D7-#quw}{1=F^+esOhZ{XedueqVT@g$00Ih5y(&|ufj z8mE{L(LYR!5XKRJ(jyxfFMjVCg!8?-iS6oF_WjzWFq~cqXRbN`3Ga2CcuFw1=Btw3 zt7si~W_NhHo)StTKR*4TH?!*ON@>p>bX!s_60^{4OHf;YTPLNw|LJK&xF%&WQ*; zX)PBJJPpD3;P=?bp#Ia_4gQwntW>QPIJD}qw1N(LbrXc6lY&&}?Ppy4(e9`1h z&`U?s#M#T~+Gfcka=8@j0FW*`;2Ne`0JC+c%tQ`owpvbPh2p$Yflg|1NMJYwLJ|)C zDe0tgoJ(2G-J}bjt^7^=zJ4a%0 z-sv2G?O6T3Oy#DO(n>7bC_Frkm5PilGJ-1>V|ISo1TY0}c8}U6-Z9j0z&RTn4+BnI zW^RP+mp*`G%CiIQcqwxrp+}g?ZA{(&9Lt%haVkP8&1bJtPShJNQNM`BEVu)ta65+` zY2J}<135MaQ1k4T(QZ`*mO%lT6`qfo`=`ZA0{+iv`_Hc%j~LLm!0^ko-#Cw6iLF6iL$2iS5yQT zc}`)VFnog0+}i_>meamUC$D!cfGoxED#SF3!AuP`9S8d*{XPJIO%Ed^h>c-k5`&EC z<`op1Ls5v1qMpLwcIF|o>D>4))?`{Rz$X~mhRdBdKG?FOF{O-{prXAm>|FEC3OWYp zrYDMOmV9t-Vcc7ub&D*ilwAl{M`5HIMzw4}iYXzAprQqV7koVL@Tf+lq90GaDK3Tc z4mKGx-)itrnM4wB`Dz zLy#r)g(u}IE$6_kH%=#nc1u=!nINAdg(qKpR!!5B@sqt@C+!nn&q%izXfze1-C^(R z16W$i{C(Y`sG$Ca44&d(ZrNrZV4{buEt0kzM~gfsg#mikJJH#O6*%s)&jX9ta_k7( z_cUHlV}OzRk!6}mn2>7>#(?EVKr7eY!xR4{HQh^!5>Sd8%!@xFCm8 zOjtX%v%fzWEsUP9`nLw32ms;BOP0ptPWY|G`u~V)C9O%_}jK;?^B#>|P9y^|s9?rg9 zNDF~(pY(Hhz$a@zlJoeZr={Ozub;4<+`#dkr(`VyE~a0&+wY7(uc=m3YVd6 z0bdGJT-F{HU|Bun-2eSfSAv6PM7yI4NXA(rtbyELN$d63vYB);2aVDar0`DziNkXM z202v|EAP_eTPL8=UzNMaOOmaOSjl?#bAX6bGVFk1|bolFw*^0|7qqMk(?%yU1VHSn68%5o^Da1y#1jl!Qw5KqMGdPM`KWsMTu@# z0+cqDA(E5YxKV1981o=~9~biqA(VN$$H$~Xk{Jd-YOh8I*NW8SeNHma4}&%Ep>2RX zW!36)g1A~UUN#`y9f}_j+pFlf?X|h>)zH94lMTz?V|p<46}sNafBKp7__f70#PWqn zMc!Vh;%QQQ_6dI%!AsBlH2@ql&v1B~dFb0i_Jvd1BtgO?rZUnDKWULIv-_TSjrb=y z1NWiqRT>}}X_Csm#*`K5;o!mVm1a}5tZv}cpW^o35O0Cy#;AFi8q83m|QO?cK_3shAPbRedktX*?HLj6@2;G|;Q-Hm)V@ zxZ5*!Y^VL0c!$f@^{Z3vff>5!Z6NY;)o-H1t~~;t*2FNMgYQKRfK+H_IaSb@56kBH z48Hgd0+!VpSq#q@4`Tt(;efEoh(wLV8y^h4hFz3$PuMgU zasy?VNe}J<^Byzc4Rhg<$~1GBI9j_&ZE+ceW@UZ z@yOWAp<{PoPtv4+%MV012j?&OpCo2qo^mu_wm(=hf4PgD5htjMv4#W2@8sV$ERgxD zYnWB6VWWsE9(dYRXnr^JJ?^6D3y6sVR6w?=jVEbbW^*;aRCcW_xTM3bkvfo+3Z_rA zN$6jsl}g`tAxIl?NqRLd1z}zn=Jv)92;~~K8cTjR`OdvVP?ml&H+K^KZX|@0b55Nd z*U~zzf?qbp*xFc+FNMXF2*E4DPmdEX5e;``Z~#QG>)3Rrox;E1X}kw0EG&$^?MYgi z&=l~5k?%;Z$de?IVv(@fJST0{?b_pC2u}sf*!>9FQmpo6?ccw9GGw_UoUK_kjCA8 z7Ef?)#UjPO3^^n}q1|seD|Nh*Tej2)s}?Q(2Z+hmBhZW~%(zCpUrdY3kTZ(lhelSW z&TG@~!f1^s$+;CY9y(<;wp5^lP6>6cX ztd>9rIaIbA6Fr!Y_&|yZ`Cb2})Sti;8SUQ4g|E5?r5lB>A~rPr=>W-+!AnKuxzIko zmj~VV(_Vz3CEqKJ2vR=jT3iuM{0tWi7^sinAC)~0&*M_&IK^Z*1EgWwhwrkDt%5Y3 zpqLZVWTCSYR62gB!#L) z^|@Wz>5%gTiIUUA`uE82WCz#qn=HXIXmzLW9l0k@xyp|H_(+A*GI<@n|#F=dA- zTKV*paN2!RBvD~eeLoEGVPvzF5v!_ivlOi4rJ_6MGVjED!pYTcI>p5m%yX#H6h)iq zVJawSnXc|=RJD?# z*6!_{o8i!JAM7(@->Yof!@b44B(vvF5{XCqTH)|XB zdV0t#X%BM8*~|-c>cR34N`l-arrp|nm=ZIWb7G+})*VKCtU>QMLDdGfk}M4b&)%G8 zGuM>R44KC`Mv$zrT2qG&qLm(tk2!p@&`8yi`x6g^{*WBQ8Iv&KQ}3f}W>>pI60!b) z1OV1@Q`pzrz(&>aQ+;_L>*z{_Jm2`!UT)y)7A$pj4{=_Vllvyte z-F<*M7fZeT<)^e*XvJ@0ANK?fPUE(uTS5#s1UIIuP)^-;X12rSYIi%bqL=*3R7!2j zWijT?ZKB;aSmZ}>r%!Eq!jRWB3-@FlELdM?RV-C_;#Ncd#O0< z?v(mE>jrqdGPqXovfarP`#Ked|KrR3KW;M#R?sVM{V78th^_7fY9ThA_Y3CCC=xm? zJ*lwGbW$jA{EYDjWZ*tsBvBi*UDWsa5>n1xy*_-W&q7I~=#rvJMu&Pg*-XZ`oO>>z zCs?86`B&+WTJa=vHR9a{UU>C<{;lQ}zR0E%S`o={cn)BKuHCME`YDM?*mW1sP)IOr zV^9Ywj9qmn?yW*R-{Jj2hFozJCe*$gjnQVJtQf{m3M0u>9`yn^`h0c+4hP>#?GIjv zNk{h7|6b!y%7O%?&j->HtTTtPw$tCGMdBXHw8}fmS|#dmL5`FgLOd%=9w}j(Byg=) zkvh!~s(9SI)GSM<36_lD-NB%7tVklh`JjfXTLv}*^=&0h8KRLme8H59Bj4WT`S{4Z zpJ$q*n;g_7fcK`&qzeCV=iwA>5@{74FMhw${yK$1s!e^T#b4Vr$N`H3+gnIA@8Wj1iJw`%KAv_mp zog&CI&NGb`y$ip;8pn~~0e+m+5vc~fFq~S*=ew8YvY<=n>L$pvLW%vE&G1?+>tl{c z4()?ZyUv=R~A@ zc4;jkK}if&rjpyvms|2*Rnsnft>am(#I*;y6h2p*trQUy~H8X z_htlM)3hLE==IhP)0nzcVWD;3u_LOaT=@Z^rM(p;eAj>D1U78)~xQ+fkLnJMvjfRN$O^wm zcX$B%*L7@Z)c#5?rAL%&yShjC$kfhemPm*4e#%q1hzK4uJ|wN!EzVYF&U*pASzQdg z?-S6{Y{H;41h#Zjmvb?!b3L4I4eh<8cl1{%*^#@k$nbZFv0O+DI31_}f6cvi#yN?( z6uMOu7k+QZ_2ks1bGN+taGLPl-+Lz|9H}{T_&(e`Osrlpej`Cr>(j%yp5QAv~I-UTwasp;q9RG)PZiYgAn{W{I+RY1;u z*O8O}q()sLFF{t)qEFt^GDq2R%ui8G<(P7V{mjmjBie7Gb|jV}5f!3t5*n2BBKPGc z8&fhHEBlAw{~M@o($Y*DC{HwY==bY_WIpnH|Ir>RUvy5!iP>`dIZQrTCAJ0awmp>imij zPqbQNl_O%i9YG2T#xSYhLWz0uuI1g=>#V`BUla$Nuu7fYFfxZN!_R|kW{h||?WS~6 z=`gN*P>WMESJ1TVF;)ck{qI^UP8?Itock%jQ+Rt%#rN`4c~kL%+~0eOy^*1jGq?&V zq*Cppg<7{VSGKmFtiG@M_vzv+nuRdu7wBDgSQ?vOkr|oQ*ujbWBM61tWPm6x^N zpN8IDl56?MasVm6QN8)g;*rkE?Vbo9Ymap-O>#Q@Kb1>>9?*>tb;x);57-*X^-s?& zsZbXIw&pATsPcrN?kPs~6M{(ln!WDqDJOcM`cwp2j1(D`Y7tF!Wj)lmJCU^Uj`zCn zALxwr(`pO(q`yo3eFN5KOO!v;H_nKdq~_0vVN@9;so4BI+XR~VlCZzPuf9b);sfTa zjuBU&Lv*%T%jNm|h`^Q#5^@8NQ|Qw_1;nV4Xn>%U)RTX7LH-qn+|q_eC|Uhc*#C4* z93U)2Taf$Dgunk>6Y9Xg30*cF$&qvbq9*fCzTA@t446+xV684zl!*;_@I{avMf9V|Y&Fnl69mao*;vnJzhc_UY+I0Ag;Li=v zECCPsT(>K2Q~Zy3)4%`a%>;Cmw^cp!#NWFF|0=RJ!UPXUG9_wpF#MsXni7FfP7}{O zf$iU0(f`}`iSYD+#2;T%{}8}~E+_yopM`XXsM`M#YJ&gkw*p{JzkisIEB(EX=&!w= z#34Npi9J;2?|Sw3Bj&G`yQYUmer+5t%J$!(^x5OO06hKm0Mu>aY0Zd~15kIUctvJ5 z8}0~e%m#d#4P*ipA1F3}*nkV%AL}9Rd1TBFufeg(Z#h8HbECpP|JI?8xv0cw5{NHJ zT;Ks9GX6PYBi~UR^uBv#p20PE&@XJa>23}1#J@dkd1(G<8pZ6JIXk;3cYH_%vKF?H zeg{-*_zw7kN|(Dz{nl4BU%puXly3PU>}KBUn{R@p9tectmR_6nWV z0js5C`y2>f00i^zG}2)(fKA!3?-z1JW)2J!(Y%AtAN;@Ce#QHBdY6n~u@3m+j_*$3 z_!EGV=Ia2^J1E1?C@vqvHN@Afv`rr3G)M68)wkryST}1b-y`Vi@bv|7UQdC8FBv_{ zSk?8eG#8s$zp%35T5~{uez*q?PUEFjeJuZ~Hw8}%073&z;#AMxX!@9Gw((+YYu#gxJ+^Ne^j4$0r(8V2Hzy zz*l(R zfXme{vkC|}!AA4tZggr-;{6LKe!kv`cW*4d1%|jo^VNp8xR}E#JAg$DI0OPL#~khe z?eFFk_}KZghMImi4$|d;GC*pAA}Kq(5?dYM6N3Q{GX)2i#bHaY;0yy!Lb!F1QX+M#$o{V0N}@Ob~XZVk@El#ZyydXu4_fYgu$s19&70;Keo03 z?BO_99tmuEES`acGtZ7%V1&*Yc&#TtQj(oUX0vyO@2-KM*DR}n=fy+Mf?lhfbB)Pu zmnc0lsKmO-$W@MXt){!hwQ4-*&QW z1_SF1b>r2b+i@zWodx={P)P}Z3)|NjeNrZ+_=KoUXwjcCp8Lkv$CByA2YP_|9-jnJ zmzspC;iUaBp5odHwg&Ss_S=8#ZEq0ylpiRDsyyYQ1-^N}(b-eMUY zEc;H>=X~oMx(N%l+Fbk2FW_r@of{}uM1ZI(PR2S6_(GJfPS))&u!{kdaQMzQ&;oIV zHM|G~3XReA*=|w)Q^Q7G-%p}iw-%ZZMrBXJldtN3bS?04PZ`^PoBM@ z7j)eiTO|pZmbn2RYVjblxR^Pyh;9c{gRt1f~WZiJ2a zl3>_3WWTIJrPMcFkeQ^Er>}SJ5&Ay3zUpB-;_lD|<8tHJAe|B)Np##QNl4qRk`v$s zYCP(02Ajn=?SRYcJq``qVB_h=F}}B#&UfV0R6TS*(XVT_JUTGRhDnp4X~?{%0TEvV zPmS#Yze|&#N}wZMsrmWntm5g*8TXv+%?8tkf^OwnefS3BtJL^N+Cr$4P%E6mq>w25 zd-rGSP!i7*kWet>OLQx1)_E9_xmv^OPzkUvB}S%bN_EN&-ETbgut~X}w~Un=G*}9E z^Tr8K621KO=|y6RUiFUIAh8gNr=Hmg9t8r-Jx_AFC7^{eg1RizF=z;ZjVb4CphakY zjpL%>X1;n?AS%Y=B$+vV<&?CWc8;Ogp|-v0>a(6XRz`9){v;MP_r}9oAw#kY1?m!f z0gr=>0|98TIugv=a@4t}I?A(F&0k{FILicLJlfnA1j^)sppv5ubI+s$7C%$PIaRLz zy=p1+gnKG8C#VN&lG~3&rpZHdeKTPDcgAC0<^c@HASB zFUH(Pr}Kd}mnVsdIE^2+r*Z^YQQ!W70T7a)tx>knFKc9mynhg$rohMLV^`k%sfM z1_aOmHFn0@rGDOBFdFKP+#;eas7(L6#-Z8V8stIdb+E0mc*ikE+g*inD~Y4jv`rGx z5-yN@FrN*r1a<#Tv#p5o@;A{m>HKX|A%?){eRIBFT)or<6%)Va^;|T|YOB1HkgPFE zd*F1X^?X}1 zJB$aypT7P!pworY-G12;FUB_!B(+GmYWwSu&lS3XRB{@?_~>x*V7@`={`TrjHyBg{F&F;eZC3$nrdXjS@`8#u;)Wy^1xA#UtspGsbMIJ|Ad;heu9r z9LPy(`4oq@F|7h?pmruRL6{y#7Ci?!UPS=)wwr~Fl0Z%9@@!y5FD!>AR6%Js5P8;` zXXHze@jlifD3e|Jt(0WcH{>9go7{}q@zzE631JRBi+EDWj_((5vrh^ zY-}0i#?sO3p7w>InRo!kIh#a8qGKFmGO<$i#6CyG_9J2kF1VYUlQC3BU}$wpY)9&r z7Ev6WBOdpRjhfT4TYx-B43=M+IplQNZr-B)DrYhFic5|T!8IaXx;pG*=)1-6o!Ogb z?C5*2EI*&q)C~^w%lN<+5q32~M$}P(wo+0mnRnOY@lNhB#k`G^$NoJa2CNJ<@oNt2Y8>_s z{;LH0M`h4Eti^jgW$b7WP9EyYfCQNGm9?$15iPZ^@)-EHnep3DcZ3$ta$)>p^+I%e z+YJF6hi;Y$KICN|&H$)Ci5Ta35dVi_L0nsdIYvZQ#F+HK2jPKan!N_xTk+G~2f{`Q znoDu(g$^}+5{}0&iT%04!$zWUe%18=7}e|Zd(u>pyZ&%<)BUfLXwdBo>c#*?scH;I zurAo-J=PQX&T#%jiz!(;BoyS52(F0XcXZ){tL@%#Tci22?y;dkHopg&OIv3j!CsPa z^_bmZ$Z^>?Ne43^ih*5GEP?`1FPscI))-3gajN>jPZW4nDjdRof}ELg@B7kQ-3Uw% zy7uS>zczyRYV*V}&_gVcA`Ty;(9V#RyhDbvvY0C0Y^H~5AR!eqV3Fqp2G$|(aB3&0 zP1L{F{Gu^kHOLeD1NYZ`&VCzOA9m+*`Rlr}xM$HL+;K!HmKrD+m~?SO>efCcUFjS~ zVxr5?b8yP53bmqy)*ksKV9z|B8ft}w?~aqd_e*%EUqpB+dwuT?&n|C#kC5qsz za_zh(+{j9BoT*uQW9#(zoJRuK{V#w9g4)5ScGp z2cn-mlMIUeFAJartP_ge2r*9A{j5e~t6nsl#(8^xbLh8bVoHFIQsENvnkX(140|^2OKsRD@MH+K4FMZ)=CwZ52t2M z#xqnQnQdOi%%&wUE@KI6($y9F9e#Txf;QO_ZB3HjIgi2$G2_Br2qz#o_%m(fJw|w! zx?l-rKL2N1`(Mg8{m7%hB@$*yV zE5HyEQw4^U33B$2;?s5|rkDKBmn%^mRk2n^T7oVxt_^TXen`_G;vF$2i2As{_JLj= zUmPw@Vg}|Ja5~p4+eh-XLD+JaIQvwK>k0y{aqpKMGIO9sf-{&gg*YCRNaegbCp5Fb zzFPl|A&r;_oy3AJDL0}SK?anRx#dBks%}MN5sUjCJ=MPP>m%uq257Qi$zX0L@51m#m~fN_m*Z!QDZ$;x%MkOC-g) zy!lFw(T?rCMTT8lrSE~?4RNjOui|Np9Mx2dJbJMI#^lr5~!RB3PNu|a!)&It+odxlHDJV zaj!4GfI<=2K8-j_H-t-~4VI;;)@S*R6rQ{_{g3f$!kT54GC!i>egCh#< zA!v+xCZ(Z1q14YGhl0ekkr?#}%CHZ`4N^4h&!NuJQ}Evf_Y;`&ZMWpI(qPQF9Q05R(C`7|lvoP^o#O&7sKy#@c#TErK2* zi=-x-^8#>x2Rn#!ez78m-taeJz`#@_p(BOTATEqryT)7=QJM4!-8`dQ;p7Xnq8F=( z>AvhLSq?r%y&)ai;)(@{Jw~z?ulPi;(6*Jm8Z6exwbq#dj>#&qM=K*gv@DRMfubuG ztK*&EMxnY%*+9?x2J)$~clFbbfdkfv9282pV>eZin^oMJ0Xi8(Y7>}HSIHJD?V(NU zXw&UfW;2VCrhx|H=(hMbvBy0;sF9>aFdwA_GCkY4%Lw(Y%0eE-jEO&f7@gM7sx5Jx zrOIcdO7BYS}?r=14jPES#mYP&!Zx2RS zjP6Tj6&6nJuK}zD_bXCLvbA`QwPXvXU*-A!>~5{Mz9Bh}0(A_o1X-}v^lx0 zg!@Y4$-wipaG@Zv26$}}sRC}*F9=&ZAWthOyK*FhGlrPbj($O~^XY%<3|u1FaB2sQ zB5&ZTiDPk$61R~fi!hSUVwaqSayo!*qVL~vRRxZQJMNk;iEyH}iD1l7lR!PJCN>Yt3t@yVMj(nJZ|k8ay;u!a$?>u^??*Y-SZ zXa2vt)jO+AV)V<85(0!lKm6Tn#2<&E1g55@8n?!WA;%`;TI=Ut$(a#x7>Xp`F0`a2 zw1Ox~SWIFAe~31Y#ro70M^(ymI1I9VUH@7Va5`cWSWCw!IC_Md4C<*x9j~pV!~_2T z1?{H0b%FLD6YX`-=4!8l;-Ef)Gx9Y`6P}q9*GqoTRXc0KQe+xi(K$wF zf;_^)b5B{{n+L}xCS7hRb#zq)tT`@31O`-4O2ot^tZbp$^V3L6tLygVz^mcSNp~ml z8{^<_h<;CXZOEdXTFRoY=y9~sje~H9`LI54G9#fdFly&Cat>p&WgkoWm{9y8v4rl+ zEj7hk5!+)>8llW-3S9YBL(@DjyfA*`)(N2ceRv*;cjf+uY8z%r9(>LS*_8Foh(M=b3PKQx&e`kG zr@?YQdceIo`Vh7p$ZE!5HSQnL+*ItWpcb<`UFUJ0YVid9k{-vnD|DD8h@(7Z&@P9!Wj78eju-S5Pg8;wDzu#^G zMPS^nq!w)qGxkIar4T8teB@}m%1lb6dqk-a2ttxw%GcI!<;I}-GBV14FoD=0n!<<( z3}g5=xD-?o$ll1h6d8zeRiXW;T~;0N2msDBI!^l;-hHmn%aiXe>nA1#ca;Vl<>4Us zKLbHQ?*sMLZUC>>%qfzs3hiE_o8(@O2-Pkva6t-?*qbhyEs24Kf8XJM{5;}-dSGf^ zUVu~R{`)-t_-?2%twfg$C)A?$KW+5ymioJ&h)lpcThouh|M`sn|6CJi^f&>ZNkxFs zIr~4Y@b9+x+n+%pfkj0{{oY&7%Xrv4Kqvg|yZ-v47(F5jyBNKFR`egoV%3NA|DlQb&LXUe`T~cw_nuXqYyc9Lw#XHmzs74Dc2;LLZo|UYHcIOh7u|NOp91$~BHa%`W@{m};8fp=DP zv{C%g1RmZa5E4Hy_+@?kW7Ee0?{pV{Nh8q%Kiv#w$+CsX>>AIk}>qg96qt~x#8fC!h!K)y{ z7H79{y(wySv_E^VDWvGoF56p%rD(1h_PeOhuZghQmJ-?-tHUDh+p@!p7 z{q8`^6(R0K-(WbonwUKCyDIQW6v5B2qHbCXkQlK6uMZ149=&Hd3zdjxPQ0tDt55l= z7Y<-KQ?yP_!;h!$hAnMomVIVpedb||N|yKRlk7%gHZpzMNh|BD(i#=>wU12xu^*XQn+<){S~+~2f>m}WR4#TGh?y~~tbSTLd9v}0 zX#;u!4)yxN9tuG7KXnu0OAPsuxaBfTDgJKp=22?Z*;mC|`p6P37r-o*=$H^>wqQor zKdi=g6=zhrXUp7AzgkpT3}Q583+Q2d(I~I%R9(9ppc}1QwIkH!^JU%LAul^&({fD& z1tqn%l{Q#hgas6A$5Ys!NinyW-ztB1U#?PN)%adQP=21i0Cals(th_wSFw5j`*Cj$ z=RR|d!s%2z@h=y`u00$Ttdk4HyT5bsIihuU|uYD~kc7^r1il6~5 z@fy6TMz3n^R}#*Z&a1Kt@987o0{h18eOihu2*3ZWCn>)}#*$}mdnhIYaQ`a1Y3@i| zy0DVhbt*+bWlZ_{x7)NpQL2QsABnrX{_o%;9=tbS^MWWQiv{g|!3J$@^e&v+qtpDV z#?JZ5;d#IhqcYe4nV=r!ybpER$sUWkaKO{otdrxN%Dd3{-<#cC#Vq!*?C!^7g5RBw zqiQIB2d}Zd)_hT6S3}Y4a_y^-`ZV8sAaOpW`w?I`@gG|g<*+S!QqH(7)^NW2+@#ER zWeIu9vp#LMJC3FFFutv{?xr{B9(Q(6{!H=z9nF%GOTXL9sw~e<3+dDL^Xp~Iij?*| zDSz5{8hu&(o_t&THa24};CZSmFod_ppmeWnj@Rp+x`}>ve8-I%*h+@C=`eRk_GSLw zR*&B*a(|@hW8IH^TSJZdl%~qOQUrdWPozYk)av?;9HGEM(+dO=OP@YHeqI08X1c+n z{O#V<=wt%!p$|Ky958N$z#=dYo$onO1&W6@9?}nNQ z$|G(cRY-gXVs!8TS1lg0U71k}`}VJ*$uw^BUSmwmXMi>t9uP>u$b6)y zpcR00$E=&1L_S|>MC{|VnRQYj&jQqyPW6n$@AIq0hT@_0#Z|c#@A$z@B?QFI1bC2x8@K1h^M!)XV{vZG>*3tsyYu!}f|ry;Tyv%hJIbW=r$vJ6Yt0?NlaV|6s~!l`rk|`Q@al=U ziFUPo&e?79*o_nMy3}o{HtRVXIW+WCX;wFkGt?>TpAl3l^xl=l<8q;YNf-dE^HQXU z0pU?V&RvL2Ye*+>OaLW2-Tq`FnR#l|}0-y=t~t@>i|mH-#vMD?mxqZ`y0HWV7$pomMkJ%C$iAjZk>)Bf1 z3p@g-@ADCEf|Y94j?wAa(vX2d2Fv%5mx?H0|HJ|nnhVEyt=VPYL7tvf;zWAgB3i@u z9(P!FbdS8a%zAz%LUhYF&uc%f;EI>cHT%ER9@K}#Hajxm(tR-@UhxUXv?@)R1r~NH zW<*c*q|#R}jpmn|&JFd|)C%MihuqhlSAFU*NwBHsfk_svao%&$6(-c;lL3n>S{6eG zeUKd+@laBshJW$ z)Fiww4qg<7e(K}^dhh{HqESiSv;R3`QsLGZC>bUcUfh@?B)&@nO^`sqw152wJH}-> zv_tAUr&{2W;Ip7rWg#rm4}A74V7W*&b+tFVHb0+-C++}&MIdY`S6=$ev=dy(BCc$3 z`>$=EG=i;)?(CBSIgN>QwZJeR{Gmw^R}ufk#&biQu~+favPN|4Oxtfi$2g0k?$&a? z@jFeXelCk{@yz>pjWnIdH!p6`AlKwY?KfFI+i}3_jR!UX88&${ zi-fNSm|st;De;c55gUzY+|7>UckaF}M3~6BB!Xj6T{~zwYGODU>`x_9EQ0Wxu?(XjHPAQS@1_|kIL_)e-x+O$H zknRSFLwEbG^W6LOf1mH~7z`cC8Jxr3Yp*ruucli*#?Xn9pR1cL@>Z%Er?5xGmwT`R zNHYVvG!pNxkDF*2K{-HaGgFa(j7_(zA9k6qNu`uoLXBT%KA4wO8yccnBePR)HCfQ4 zrnID5l@<@~MHHyK-<|%lTWs8GV9Q}Ggw~V+{z$>7$97(JScp8YF>_{=lKmlPm6_1r z;k;6)C`sf4ML>iA4RiE6Q#1_OSEd!FR1eX4a9%v41=LEJI$9Mvq)F7usj^8_va6kb zg#ff#;K%esxsXO~VauXPik}#Mg;R$vrxMRj8LSmkFxqJHA4FW@AEG?#ewq|wD zcS;s(TVlUI{;C!pT7T<9S=5$c&YY>NHKs?Q=-rsMUrA6pwUUQq7yd5Dzab)AZcr9-Fwo~>&><~^Xr!h-YaNwDKgKyy< z3Y)w2u;S}1hWA-e*OQ}Mz6$x752rG^qd51Hu{o@?FTi1R#fPC1gGV3WAKV>tRP9{R z@BE@@)r;oZxzWz=>XA`I0Wu3+-{IK&jZEGHkfOtQeeSBLHtF9j@@-(13oJf&`UKwt z14~0Vn#pU{rjB_;`_cFQ^ZEO~8~ss@b(Uk<4JgzhPoWtZ8PP<7dZzu6lraRHi9nSi z3piD`&osf65+CTm;|YV*OtywIU|40`ZmKVix}I5;)kR@XbOiQrJ!&jWMCHH}Whwho zy8`@Sl>+G)BE?Z6A=0qMqf|NL>G52~nofjKY+)<17Kqy-zj<QXx0E<>9KqR6YxY(rM<-#sE% zm(SV_dQ|z$;;L8bTTmpPjr{P&jruY6I}}Fe8}d&7otkQ%q~;24#MXGniz1$X&I%-0 ze_E#KGg5FYG%kj2o7aCBKj;xHkVy~=vAc|2M5YX7mrZ9YRFdM&Z~vJ@9j7E;)+0?R zpQ_-n+EI?P_Meq4jO5uD!yL}s2Fg*dtBVK&9zQj-I4(mfhht`ct^1|2h@>zoo(^?9n94RIU`bnwqNf1sg`I7 zjputZ0W7K)>seOGZ&e~GY2Z!a{d#i8Dxgo{{ZA16kUI7k9 z?Q%?+Ct5$=4`rz9y4uJ4$lV5v&0s?)&9V>NcYIv`=8g~xN|tezSL5QvR8eU;9$ChH z{kfdc)ByJhVlYR#`5Gyh2M*7eaJfr*^s7+rz}pOM=E==?p3{RE4mcOHs?l{iW|p0; zS_(83I3lEt(o33+;nc$NOP`~j(@AH~dn0Jo*F4ngb!9itq{IFU%s%iqN;@A=f_QT= z>lQ*{^7pxeJkBNuG z_~^u`FItsP+HBX?wP*6zN_@P^xu%J%i*1rY3A+b8Hg9L_{@X7#7}MC zJ0e~aGAUpIA}PONo%lDAk)RxdTno%J?E`!pi^)J|XST{v-?1GXkJWW=LbCdkg#d>m zLyvSWgP0PO?EB{lfvJw9GoDSN#I&3j{|K zMl+w`FfmO^`&>ILEeRI9-^3C1X8z~q$S?<`Bm_KzE#BP3d1Zd&khGoFxa_tkK#4M+ zd^c^d^>(3AI_?*`8oCsWmppdD-Y4ljzMS}y`KpNJ`KG59ReG98Em|9SX1&5p@20V- zmDqWd?QdYL>hoq%Q2lNo1*^Y3@PBNL0y~Cmpnt801W=XB4u_}H{4fkkYYlArRiUCMAMM>Ok$=j{0y@B+g;T10a}_nNehbkQ`1qjX zBXgs-Ylnb^b}|*6hqL-^2xywzKG1x#Pvu0FichJ;oBGL^AFu*^lRq8(%|EKQxNv^`~L7Rqq_)XGDO`z-x z3?b;}9zcSH_o*$`U^;toV@dGyEihHvm(YTv_U6(~4K|xVJnVG}7zC)x<*-r#37Dpw z8Owp5yWRH~h@;;>wNODXnq}+`Gg7cSoQfC^9hq;NWw5_973e&$eKRA%!kP-}zX=pU zyTJfq@+vik7yH#`Fbi%{Y6;Nkwm|TLrSoP88JOG}uXp7$*Gm)9OAdj;gfjoZs}Xf4ki*zIW$Yy`**jGJb}=Cfu1MJH=R z@t-e5>96(@ADzmDy;&`RWg zd?CgFTnsVBUvmZXU$C}d6*vup;NQZ8%>M?AiID^FQf$*W&dz3noaHt<>V8Rw-h`7tL;=r}gJ)TLy_r9LG46-)qK}Ee5yy9b*Y^=x zoA;!{KwN~c>mPpG2&;4SalX`_!DopA{G>{FxjBD97 zVal4dwW7Zl4+6Z(4y-ispHBkp2M1xhahu(v8i-G8=cI5n`eteYg#n`c+4PhJ)Dddpl&@bh~kjV*J%@ zi#LfLw`yov-y_Qcu)Z=RFVQ^rT2Vuz$2cxcW z;;zv^=V~K9|F}-C#|5jmV_$`m=q;IUG&%p-WJm+UpIWFDelNFsss9&&b@cjaGyU73 z-BT45$>jF-_KBq82u>az9$q8&=Fq~8Od_0w74&?+*PHB@6RDN6Wq<;k!lWlyDNeF@ zYk#_&5A{0gKGdMaS<=zJnRqE9A+2n@!~K^}d?JsNX#^H+VvdW;?r+i-mz~(Ym^a$s z&?FnrlVlG&Nds`FAQBjO)VpAKCysupZzJ9hy9!O(9&*S@&T;Id@l5t`TVFqH)`3pPanfD$lV!A7xJ>r?>NFx zNtB5N6K=_ihEA7XxEcNMoiFsxK)_&p|MENh#*#_W<<=lXySmWink$jULe22?Kn&z6 zO5=l?I0l9MLB0_cv|?0%Q{nQ}?TU3hTGB+`V*bz;0frY%Z^9<2)QFJcv%JfhZ@6D> zwJU$PTKv1U)bcHnTv`c0-&y9vUlh}B!SdY(u;27KHK@K5fnTA7jkkXM$H{uH#o5+i zE8!na5MM+BHYImAmoRuC_`q{%<-xN-m#wSI3=CdtEL#2QFI!A|j{@y#kEh#RV+m$$ zuXp7KHS=+LH8^k)72oA1Lj!rCYlGbXB(pbSm$M^F(urf@f?UGBr@uA8UB!_!UTKf0iuBalK}vmX+T$#giSvqcf9gw z(G$#CXEwkE>MZSu-qC}3_IkFSFF?=EN^97fNkF5}AZhXi<@)mWfHhrq74PaI`2zAF=TY8y*}bA7`E4Ik)-DjRd_=)o+q8O?0-1E zr~FkQCBbh%Ch7Gn%3MBT&_a+Lpz*k^eP+nuk=}Q`(`!}6C(Ca6HWdAJ0J)u6d3*joeP`U*tOT1K zX88ehzXFkdjI(QuV^?#gEEavXtsw>g!knp6L$93}QDEEk(Gao!NFokn=L|yh48P~a zZo-#OJd|bwO7VM>@As7lVzVkFZ5MHw4B}(ob|tjBK?ct(=qbhTUb6Y#uw?l^J$P9y zw>EHm_$@M1sbBo66a-P`oj2Of=cV9))i8aI8G%8WDCGAc+2q-9464-H>8CI@pIy&E zBZ{xC`1~?-oR#Itc>X_QqE>!%(ii_qTb#9*`_{QCn@_wjxDunkeUOkOROPVx$4;+h z+ePF~Qfaw{4c_jgpI=0+$@mgTjy5C7YjVX11+GZY`*YB>td@Nf$kwTVk zFp+ZhEAV|lL{YFPUJ-C;Wor|uwK#M7Wv0z4wr#eE!$aJH z@-4?gJqe#{Gzr_H&D4+7W}qWF6)4b}+*d1AdS1MaYhM=8Yw+AfPNC^@BBQZZ1c6}L z7hm6!@s&<5>BM5$q9*kMMJkV#(2y@&rbV9bhe<-@a1n?7;a2#Of@R@~uZdHX&&(%> zKJC_;%FHv<+Z;zm4UGMq|1>};S6`x5Acrq%v`$xe`IIhB?OPMXMy{x(d@6&cjZq{+ zR?1d18HtMJny;J!<&4egq z52=23Q?Pombt&mZTs^h)K{F8_>JUb7@|oH?Zf+m61(t{=9Q+T{iTDWrfK4|P2}|%7 zpZz@|)q>4bNv5 z^&9zAPa78#-WV0FC|u@7T5ScV;7>sq2$ujbQl~e)I$ADgXg@D`E$y@iAZVsmzk7FD z)x6+NB2OKWH9O~vUDb{lW*Vk<_^{vomfAd&m0L}T?Xv-R-uphF54#OUv#*B&4Gswq z9vZZw#icbi+-*u)xTQ zU{Rt??lC#&MsmKJ)0Hivg0bOx6eE+mn1356W_DEY{7j4%C5~926q{J(oru6j%kbqe z_r+DAi#COSgs&d0vslU-mfSdRsnrt4MA7#dxnsQm$_I2JjMz^-v-f5_&)~Lu@_nwK zC(+`CiJW9`7|O9?Qt_Q0;))q}zajrPA#tV9`~j4|1(Xm8YBBskbnWst^$ zv^iK=&TW2M&~oP1rG%jx5+%79R*MeZ{>?GFc{G1ztD;(=f`#^Lere6mivS9eKNb=m0y=U^#V_>}b&~XNjqZLXkn`2MUmq<$ zAEyU)K577rOnZGk$73}Oe))z=Aq|ruCS1S4S zPEYSH>C?G4JPxhUjYHn``79em8TKzh+vRC^IF7Qg;%6JoJ>_u7@HDJk_DeKIMn-yr zFlw6RWjgLSrNBRxof9?z`w9M`2L;v*n^sLCM3@8}asM>y4dDfO&-Q<|J23Ppec-u>pU0ihW77B`{9SE~_aB!;RE@>N9J8a?|uzy3qsbA-#u&Z|W>D z@I4%Xev4PbElE3tV!xcZUh8C-?p0tf=;!S<#ZVgDII`tzj=_~nNk>#Mv{o5+R*6g4 zt=6k=P)Al{W6)?Hd?Ty#fC$~LLx{H{BI!|||18K=FL1lYIlHg1ny6jzI5X_E=i^8L z254$PcSTQ;Zf)HcPg0IgKRtVJ7#htzoCA5TmiepAt@Hx!FpJ@V|lu7O41h_2q=~M2?#j zesKS=w}@~oHGKj<;z@g_bo@KHx_6gak{H!KT~e*_vbyabCo~hR-twzoI;J-K^}IX)1Vvaf0}+(qQmbKaWH=pSDof%y^20xXWoFkeIsUC=2(YT zk)fI=C7C{DSu*nE)}HL3VmR~5sH}r|gIbZHxARst)Z>5=@`vHF!3e6O3RZ%<67=+6 zA~&k|+#ZHP-ox=-jzlSwr;)str$O`Nj5EuxzziJ{^c+PFtjt0HaDjc#BuS%{w_F88z8b5@EjEF#LQ7Rj1xqZCq3Pl-2`x#-}&JoCL(8le$j)q zJh=$!nn@$7xp|<~czXB7#y>|q$mhG8NKUCcRsnAtYS)}D?n{q~B;cpeLtNv{;yy<0 zXaoublPn~&O3*@k|Mj^#&>DMkZjf2Q6SdV1{_6eokZ$x2bv+k{$-ti8sL|G|A@qlP zN32u?MxiTTGKJX>1r;L#WsUoB2^@ycd2;C=5iITGW2 z4tXb{R;Wz+OUQu{Apc3xyzME8GX6PYVv3J;fE-`c3QG+#eTE!sA-6YPvz&&Z9pZTF z_G3)X3SBeAe{a%0K%>%FmR@8un}@mg{i}pR_O!vWTblyefzXmfD1JMHR4|%p)cIjj zrJBFiVw_-5ldQ{#=M9RJne*26Ij%drk$?~BI=MGJMFqb6z+X}?Io!lC0?pY$`r?t< zC^rwnaeaMnuKg7)TJdZ-EbLDE>G}{1c`uVKI#rQ7&Rrl7`CBkMpu=O`YCigPQjf6- ziWi~>QpI#(_(r>`qIk@f+=duv=N9JJ)*weSfg4rSW9@S-jb>D4UTQiNe_q1%QvxgO zhqV!WkQeeu$~z_a^S3My!MQZioUGJAZW8EhLnHjVpKc`KzAKPeNAFIo-E+Z(^j(PN zyCU{y_Mbueo5ALOtm zS&p$F0Md}2A!n)EbjdS8yoL)tnfi~fipm3UM)MI{jJ((h7P*BH)uF3khAl_<2~HZ@ zRCGk7=kf@MM}zzGfv=wxG@q3PthKB7R_JXXav_I=qSMegG9tcsKK6>dnc6eyhO%=x z%=qA;EDh*>2@sAekD3>QkA2*tnOX?TuLh!P)Fzjp5X)<)jXQ9;@4$@*10n+ zIt3lnAZnou8=u`$=^Ku=1v#X@i`#C2B!*!6TLb>d%i#>}uSS_;M=(e6B6!q}e~+H= z)|}_~>h-i$zjLIJ`=Vl6a&sm{R=$H4)bCR1yxpVOk-^&5#6})j*E6Ka5(db(ajlo3 z=p{Dar~37H)pE7GzAxZf38?R}sM1bQr0H|FZ~j?$y@3Gmi4saj};-`Eq z60AxsB_AV_OiU`Cni8%b1ZWRNf=7TwmU&lwyhtkBudOQnz zdhjC3W)64@XQt+wyuy6PTLWL)1#)sY67?N*x@@K%8vMa~N(5UL5#0ICSjy%=+`RqI zkvHusM)R?W0$$EeQQPn3xzNe8yF9CAYidRdC8BT?(|QSifHwT{4yUL+J&ecas-lv~ zKE6AQBmhn6hT|@`(wEyiU`hp|xYXgLzd;qve016#^Etosu`3Gl{r)#W>$t&YFmc$= z@BZ%ThO%j#`750+kEx8WK$KY=(QwcBGI+fhPhC@erW)OQJ6^`Bg|BI1o}=U1iYcH!X~WYxn=HpAcIC7 z7}XGN*BqwZxD$V@Juf%(i5laix;^WppaehD3sIG zKy03FRL++&F5T&9e0VsoE_)l1(@ra8Er}q&6H6qRhkL@Lk`rGbm!d~&qHGfv2Wt8K zLpR6_4JzF+nse+9(6+QuiJOvb$O_GeP8c<^p#K8?gxkS z`Ij_?&viQOQ)~Sd5rH*oal}G6%qd};Z04t2d@LzM%N`0d40_azoqzT8DO+0x>MH%5 z6hqP@%f(uuKJXp{*uE8_MZ20zRj^O?m~TF$=q1Dph+7wipG={IKXtffJv~~^dp|}= zHlJ1*{~d7V_1H@8cE++XvDI&pRUBHHuxPAYq8Xg>#+y-5M?Dsd7yg(T^1er51j1sR2rdDVHGll>W$Po<$8 z)@Dc|w^o4N{Dsfn@e2Q&`6wBPFTfcQ?e2y1QZG^%53~67Me{_o*>P<>X?p@@ z0ap8fXoBa4tyr!1JtMAj>qqDa?LQTKvHei1p2%wK9+58wGUpN`p7dI!e7IN6TglsI z%Y}SmNABus9Iu}kS6qUfFez2sDrVPCVl|6b;;F6CkT`yZ{n;N^p#NCzPJk!AE)BlC@)D zA-~T;q9I;Ohbas~x(;s5RS}uPVYrHEppl9tEXCQ(s_11*=j5vS&6)fR?}NxVEUi|> zXZMWYyk6Cs-`wz|m5z2&HSt_nxH`RXCMD4uaM?sueOP>CC76+@3`;T31JI?AXM;|( z(30bbSKDes*btBr7*-5{DbQ~W(3}%9SSPzM&${4`zK$OCGP{4A9`?mR+=B<*RgOch zWK{KmeW7~sXk)zV=vn7YUXh`fCI5P_Pgs;p5dz_I>!k+d_MrlcqQiB(y3?AOV7P#p^1xvk_K$89Xm}AF3so@2@ z03*S}Z@sQIvw?G!)QlL{pVYw~K^hK=D*BP8b&kF5*cha0@S@G7Uk=|4x38<4%amug z5@O*u@NtYU-UK!M2trqK}lF0f^oQ?y&N!}N3n_Qe_`@-H4Z_g4p=g_!hogtKGCV6^I z_Kd&2a89DXWie)TKhSym2y2zbY&?UIQiAHGQ?c0liPX8mx8>~ve9e`5KUITfNlAa* z$0N2%+me~Gz&=$X+<3jijIwJ8*6kks@kfuw9=w0r2;Qj?1vL=oXq0G{r@p>*z1-I%i@Zgx1i7oK+S{6W%;^;u1{kaVe9q3bRV zgH9GeSq{-nHkLMhr9jQ#m6H>|)$Fb|jGUh-UgRa^t z3eJMm3%H~78OfjMXUK#kK%!OSWu3!BLt4Z2e5OC(C6RzmbrQhdaA&$jI!-oNY!$ON ztBnsfe#AgL5rKla55x0hZQkGe(DUkexsCqlh-e{k(VO*Wo6mJDfkt0r1NMxs<)Xd4 zY8EAX47?ae;HRdm_Swr#eD8;oh`z|fj@Ky;DLGMa&m}pq<%Q~y=ig%o=eJfaO-*_h zHBv$B2r(xaL*p!GrA4XYMG(p28I6w6TpPaolnyK19(|8?f0m6p&S+$u-FByj7W}@I_zW7z)vp*H6rpXiK%m?n%JWVP|EZIUh%q$f zCmsbNLGOYn{CsKcft<(hU$T#mj>V=VqmGuFoKh|KgGecRG|WDRWE+Gc`+th+4*HZ~ zp!KK$;&;E`jy^GOybbrNN3>St*AA*tN9@`?5cJy~dF~WPEZtGufqTex*{-#n`@6e^ z7JzF2F591vd@(N>>c9F$LEPdadKpqA3=JNMlvSW3Q@(WEj2ucqZypThor=^uCtA#J z=w2sUpt<{IGz>TNtimkN`SaBAOl8JZ5T1~4bN413imSL)07J%oIg~BZ<@5tT?9nf?`=iq4I+6)eFAj|w>ydQxq#&&+{=dFdXtL<4phH^1R){scSx z#XWs}A#W83k@TclU73`fEV{_8?`ADYlS7Hm0mce);O2}9F#WEFg9wYw?{52;=q5lE zrTG0BoPBI($F50?it#Nd1F2o^>$Q5YC% zU0DfHjfMx1eO1v0Rd)Vwi33R>3HjRI-d-IOaU@DwVY)2z))9wy=ZB36|4t7&;$StC zL~0$oKMefFwuBwWx}ILks?2 zK2HaQlNUL1(HNX+Dw_S?G9)@k3_LZgIuOfk@D3(XB9{l0aDKfnv9Uh{SNsow!+*X7 z)+M+Y8Wg&y|9UZUpqK6c*Pq$_g7W0guQyPSz@&?i&((;Pw+N;x>gc9Iwy-}F7(7<} zjRC5mYNtFo+omsOI580Pzv{6v62b5*-`r@ScV2|pih?q6skJwN%DXgcm9S{dLC&GAnMq1dwjh z0?Mx;8M6-XU%P*1%vNX3oIdQaw>bY1dsp_S7TjghWD$wK2HaG~_ABkQ04q&_N5W_p z*lMu;z+}`;V>z0M&dtp|7*G1Cxvi~D;Ex|0u$_^hlS#w_T)J6+@NIOtc6BR55{H%A zDcJ4CbrFe$+9?!1tB^@XZf$znbi9M(8ih~F0FH%JdhIHiJc)?D$w_ta*G2`+B8$|-+Dcg!UtPJ(p-YZt8_^JOGN%3M&wUH>Dq)c=0x23h3C_D)~ zsD8!2?JulYBTvk6_CofrtaXdaefGrxk4{IEv7D_3_a6I}egryuE0fRJobKL?eNJ>H zU-yyDe@S@$S=)q5msHyRU6+UqolXVwJ6V(HZ-lnI#dI5nZ-ziQ)-RA&CBWYCB2)+rMUCq#6F%H1Lu%RCfB9K`Ot z20PnNN|+F_W$%VUo3!IXk-(rkDHdE7=Pkr^UYpRBu`iV6fS#9DD^l3ol=3Iw5t*sb zJtX%7T7^VDH*4tlG2q$L-oXX_2f*9xn2l}&jbH*0VGaVql@i423hkT1fllo|I)>Gq zp+g8arSlYxTBDKXpy9^hdCuMDaPdeARK_s;Q?orFS^d`f#MVQ1n0hQheDP|o(4^Su z+JVBU%pB^Go4?wTdi=cX@Uf`bt1q>{%1_8li0&UY4)m5>vGo1o>1^9u!``nH616l;U&x^lvTro8 zI&b|Xy{&SQ2JB@T)=y)VS8}Z=$yr^m@vE@viwph2xbFCnap_FU!`@J!r6L)0dMbW= za1XEl+gZ9r8*fNYOZC7dAF8xV$^Uo0`Z_H7kQND}KPlmpf7&X7QsQ65{mp0ddz(82 zp6PIEkHe9T?KemrFCgV<_7joujaeDHE_Tc9`a>EFbjn1+DWZbXNE4XUZgw9`%9Ekg zdu~v7y7+*__7qT^r=@zEZdOy;Y{i*i7WSU3V9+{Kv^YLQC#%baXy9kX;lB*dNUM&} zH$W}Dw_{JD7&rBPBWEb!q*Z0yOm-N0F@?#XuU(O5UDKq_7()TDk5kS0#Vbvzz3!jxUKP3@ z>NRcwT$4uf2Z3z1K#M{qk7}d+G946XM@R>Bytb6irv|oOLTFhg$`=CvL=Oi@!{qs1 zDw*{$dHHO$knNH6O*qPrb*`lpCTA3N&I`UReuqUIkn_rRmC$GEFJhA~c-dsXjAXl~ z8Pu54X4E~ymv%o&%jdtA&4hP)o=sS8$&~o|FN87fNHBh0oO%um*N4k~`cm6r`gfJk zKTrQFI8hurYT*0xu58)1Wr?yG+4i&`|+oG5O&_LsEy&^+N0pz%v8>A}wh|j{8q{ zEw!xby=xb|_&H7vb^=UJo(}~b9dc<*^x$krjmhBRsRV<-k`l>%lz?}%ltMn$z#nYs z6~n+{BpHdtL zPs3v2yIKLYDrct%05cFYl+bd%@nx#km@8?ci&8tzeOyVgH1e=yDSd-aFqmbDmgcyGC7zDo-Aq7e)b$pI_@*@T*A=n`KYv1n-6EY#!_FGaV&T!~mbRxy?r zwN{fd2L6qN5#tagRh6M-%A-ZyVYqd%A`i%y zI|YdDJ(ojTWQ@)JwP_*;ZNd7r9Yv@<1993LY7+t3Oum*U2@QnjZ8MLQZv32SG~@Y$ z|B)=%TJXTc$+mZ)yCbjT&W;$7aV~PA6GCH|5Pjg=En(msSAoPQ1t=DNg66OQq&80E zioZCN9WRu}HI%Q^Yp9nFE@d6&yK>iNndX`6;X?Cp7wv6-v@`)HK$P_O3i@ zCUBAx*#cg!Pk@F?f$Yk3yoy4i(T(nY_ADC@bfg$Gp1w&y;=aeX)*r<4gxK=@BQ|~K zH-XDT9jJGV>YbQyrA~`MSR~tZm7CvIPi~F2&4A1eaM|v#~^c zh2mnb_Sm(S1eXe|v(D7Y1Dix8mTr!mFB6+Qc0#_T6@J)zsIxlc;%)yMjEp|LTJ?5q zH5e>(TQo#s)*!9;FKwJojp%oKqpz5=1df{qoh3uOdJ1G(n9F5DGt(8F7LPAcw72(L zqS$sJOnh4!v3XzjPn1=s`{Wd`zq}^G*V){kX?P=7i?02+k}RB3EWMe1=*Ax=5S;pt zx5gF@@qDRtv+0gXt6I;(gWYbiUeg8kIGULCeVBA3{--(Yk8PhC*FjwR#E)zh4G}Ww zSX0&V1@xy)W%Iz5O`%5fj+?Z- z;pI`>YO|}Nmk~p}wzUvyWX!|1e9mVV)v=zT(sPaUjmF=RC$_=PTR;rzd_42E^2W3B z$Jx2m1CzzR*7){`QP?`L&Vs9gju^iImvl`ffe8lu!J-6%%vo#7XA@;wnzaWEKwxE| zUqZ#<`JYsSR(Pt5+9&vA7?5f_j`N}fQ!d7QFi{rJvKGLA&t?r$A!~O{^uuRc{{-vm z_cXC6r^+Lp`~h-YTa)S>1J*j=z3MQV!@Cp`iFax^i7)wz2e>BIHwhI;0&C=8Aj$_zt;U_!>e54+bWHL)l?lg-PZUWz zsMD$Hi0BQb>)x`-6rD@0Uecy59dB;lypJOinz7OH)haCT)#EAFl6jc0j7I*OtP+_# zLTw?;Ol7$EK=I;=FyVtW8>__^^NB(?e|(nq^5_SPNIHLmJc$^F4g`-xb6SiHYY^E= zffk8WFr2FTWYnrvGb%ZxJTbUBJhRv4cePd8tqwO7xxq;%6J#EtncihS6Ys=F5#sZ} zC03!iY>0HH{EQH#=6QV@qy!UqLCln11gwg2;3S}-?fpR3eo*$IoNz^X0fX>8~Geh z1weFDO0a?9Xe=iRUxhl1aIqkUA~k5-WO7jD&HJ(J${1lcgf5viVUmD&6`fhQbv$84 zZG}-nfuaul^_ZKjb#gyRel3T@32Q-`U@tum_fUyQ4BfL-ri}}0>PtfBG)06xD z&)8yL6n4@MqF*qJA~3g&ld6xbM_?{0qjhimwDxj5T;P1mMhm2z3*TT-yv$x92de~e z0{zX_XqG;UD(dzRp!$Tz4AGe*sQdWnUAYAkB#pMv6s~$F7WTCwTy5}Z4(=(T)*ztd zMKlm!--Chb#29U{_^98XGI+jw2kT73gqDV3M19i3qBXCRIn4JxqBXjaU=hu;O6NId zH4l+V;Tj{`yKWfp!!ce&ul*A34@tpmlI_kAVJOVOd+JJHbDlzMIFiuErlL!;)~A!_ zxg1kfaX-z&ZrpOV7#@y&yEtXpb{0Iu*!B7?!!!Ro$x2CegKQz6vY8vJQmiud6t(HL#fu2kX(NW!+pPL&*B%pWuF#9JMsBIoDU|F#jBokPCLBaX8a(Zp_NR-*& zo2tQ!S zA_hmZ(`HN14UnQ3FE(CaetSWmm6xS|H#J2U2>7I%tYfbe&L#7 za|3>XpbQa>!kiDk8yYG!BZK!oNkLdtd84*xi(^i>qHPL`+%Dl3W!n9I$-j13-6`KN z1xY9r8EPWkN#k^q<;m(&&nPc+*6We~dYTV>v^sa;Zs`0WL95?XRxo@O@zVOVqpYch zqyX!mEf@{)x9uCM?ejms%Bd$#Q7E5Pz_NHbz$ZOAZF)0jM{p>di1NaI5B34Hikt5M z*c~D9YA4++aM!ZI`U}lY`R-8?GL)W#B)*tN3!iEFf`xEudV*H9zDGS(cRigYbbc{*qz-ws)vh7fIIP!+U^#qC{< zyCLn0L|EjxwzbW4tsXiFVE|87G$*AQ{bmJ$8Wwt*)UhB>EyKcpgCWaOvnlGw=W;K z$M>^e9Pq(MjxF8%QyMY2dnVa2X8!oqU;a*cV%NiV-<5XjCV{>2?4O0V43CCE2gHgK z?`xVYxy6)hb=&o-)t%IIJxtffM!x=;LaR4P5&uAIo-<-BKO^^X+b+=U33dVv};thd_~Z z(*n={>7kolt-Ha>0?+YNNLXJw`&AMZ;A^A6G4dgG#-^W(L33R!@?QF-f&tjCc@Nt4 zT(?1hHAW3N8m}|ft=Eb2kfBfL)#rsei=>0)Ch3q&dMh9e^&FLo!!H#Ze=Ie1>l}~T zV>E2lp_N0S4Uw=m{J2n0%U3X^*&u~5Gx;->vF$Zwidajia<+izPVN(@jn>|#Z)PwM zhDsq}F(oL^RNcr|JHRUceEzMym)`rm5`A|1#L!oHt`EmiKyWjhC;T*(tX3q;G+Vur zjE{*s6l2pg)n^QU>vusoUvo!%d;P1cwMtW-TW$qz{;-5-&P5|EZ+|MkrExT}lHqH$ zQESz(L5rv1M)~t@DEDOY31(#n)8|#nw=m^hBupB{92uEZp%j5ff1hjOa!o@7n1@{s z1LyJb=9(G;wwS&G#X5}Q2$`wy8`hzbW&|8FtJ)rg-sqN`pYwAtc9>Yjl`qLc7qm$C z)==^E{}30JOQk+vsFc#jhe%@itMS}?T3Y(T<3UyZ>V`v6VD2#u(o2RwY&WDv4}@ifZ7 zfcEF&@}&3hYZ_TN>4))%-$@_Q!d*6hXbS&o6so5^HaYdaDt@b6;PR)W_SUV;q}bw^ zXESTw%&YVV;*+$0jZYG}lbXl?=+9RiZ z+hHREfx9#b`O`_bh%|#Lu`|HtXm{ha2seaPCusjf|Ij@RB#WgKqQDA_`pH8(q|$G= zfPOI7>F0Cz8-0NIn3atkhfyyXOa@@EC|=&W_!2i^{=BVT&h8zo;4^X9vMyWp8wcHR6nKS9hS`>Vxl z`+(Uf$xz6|6q$xex19quh+*`o?e9vx-$loV3^zA#-(kk4_uRgaH}idQamr)GiW#ch zJc&jZsDZFFXcl=w!j^jOn{M)Te%0+?2y9mG@*(Q(eU^(w1u*@y@0(^zV~Q5X!!`<% z^y`W}gp!uK_HpMw*Y23-kMZ+o_)l`qpS2rHa_q!z56!E8lV=kCEZRU_E%^5_Bh7O4 z0bJ{;+{3*MVnTkt``eB;-yl^+pF3*q`wwOotBC{tJ||=g45a<-y-+&8t^JWtzs*-M z8}?MqI`gsRxv|pDr3L@i8^mmWTt;XBwdIN<~6xzOz z^0$N@#YXtGPUcny?)}AlD&*q6k6G6iJ3EDRqXO4{R(?~rMBKM^2Lr1{U#wk}?|Lp` z4+Tj?)^;)HTHWNc_a5blG&~C?zuT=g=1-n)$QsCpL!PPPw7N%3OeRFI0@}BpkB%9D zP&w{NN^xzeSw|On)L`sTI9tS5+l=(bJL;~HkN4kVN>}@*TC}%!e&<@nv3K$DAHQhe zyI(oD`s*R=xITA~|Mf$c*9oeA`f#>nGDF85aEl9wD@w^)~GI*{|1^xY})-P-+)0=L!ZMB^Q*-R zXn{eK-2zo2=@3{#JuX7RpI#<7sW5=R8rk$`0637tf0>|)W(=L0G|+!f(@+oe`3y%) z;TUr4??-+T`JQ~A%Hhvu)~%z+U@;L}7yttcCJm>Z^5Tpz5)RQkRIlqL;wkp!eqh`) zdcW^G2Tfq{mxKhT@tGN%@(DIjm`|yjfsbG%3HHq{$l+Muvk+fO?lGVQ<{Q2{mVY7N zb8)3}eK4Q2KfrbGNG#l@%HG(}(4hY}{bm}kx}O-2I@6KmvcZ$N%|rO>UnabzQmo~* z)H~wtNY+kFo(1@)+UwKMFf3tXA7fwMH;FGOTbb_9i+t|SCg>AL$0rR3SqHM0nYR}k zTtRKJek(Zt?XMRTzs*#5)ubi*)CYWL(~$=r?rLiE83)e-u&wC#~0Nm8Rzq@(c{$nqBDF# zZJ?|2{PTv}DiT_W(Yu9~vh5WFqH}oEjt~~^ zk(uSOJ?`z9l8+``nY%+jbJ>PZvUQ|wWS*rsdOZ+6cs7DK8?5^9Q&7Ol<38mFYrrE} zGb2jvl{EK~)S;8Hp!qSFwjq9&$Uovqkd7#A)+Z%!mHth3Bo`hX{a!R`;d&)wAi)V; zo`ZB1fVtJ+06DilEr^htGJGS>;Zs=SD$cd?cf8*@Xn{y zl_~Q9-BCy))sFM)7b8641q0f=!ml74R&iTQL9czgH(iTlKXvZ;%l_ZW)~{W=yo4+2 z%D!iYj7)Fs`JKDGulu|}@195L##QlGeoOX#1j-nOrxaX~zMNryO&C}M za2$C*waT&E;t+>Z$zF*|FHZQ&810C@uxQ5PyXpNe#I|%?f0P&C*zL9msQQA3!mkR> zD3ePY|9J>?%oFal+kf2hLqL;Q;hgtYpKVLeUpCBV@zG)7;IV1^ul;z@cAbl-l{QH~ zdX$*E_+8Sx9kUfqX&j9`*Xws7@UdZ*>$WXhmb~rS_|f*=fu4^SWvoy6%f9qB(dlnE zydm+hlwAJxWQ{&UCY6hGPCF$m;FR$?cJ$$Hb&A{>`c3z(lPNVP|$&1nKTw->7~;=W)`5PKzWa7CzSn`bK)Eo)>)maPD!^ z?+(Gc-sU3CkNTQ!wcR`V>(+b0DIM#pyzjVH{(8CmdiBeW81aKsfk(J~d$o7()xM44 z?CHr&EF1y~4h;;9sEi8^3rbe5VEY{Diy;M5tf8w=5IF0c1FA-ttb)UW^{gyf!-GX8a~p9wF`iqdSRwvbRnTWaT&`p}#c^VX#^N*{oR)Mp9B@@#qoxYC z7L9R=1L%!F<2GF0Sm6S6rBK*poB@@}!lHL-g`_iT=pZ6CLPppCMQ;V_?(X)4f*A&0Vpa3+=>U>Hf7Cc|w+ zV>EgJy{MIFs);j@-GE`#Gs_UC3sr$$oVsDw6kLIMSoeAja6IAFu2aRh@=Jrmd=4I2t1ZVX`z$Bu+vYuV#jVnwQ$zHs z|AjJ~1(=Drz>bW(6mDEbESL{09)5A&%0nwQ;H3rd_BAH)v%NWvxN`58$-n~0-tjgs zTnifGLJY8g**Q@crww&N0y|!)XY9sVh|U7mRwm|~SkVlIm$?`Gfo}ZEl538$3@dK@ Z&p4s$`(I5)Sqlar@O1TaS?83{1OT1@2uT0{ literal 0 HcmV?d00001 diff --git a/docs/images/mqc_type_of_edition.png b/docs/images/mqc_type_of_edition.png new file mode 100644 index 0000000000000000000000000000000000000000..ac26f48db4dbc0e44a45d00e8e96d0924cfd1932 GIT binary patch literal 70614 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 literal 0 HcmV?d00001 diff --git a/docs/output/targeted.md b/docs/output/targeted.md index 5aa68b3e..0a4ba78e 100644 --- a/docs/output/targeted.md +++ b/docs/output/targeted.md @@ -250,13 +250,13 @@ This section contains the final output of the pipeline. It contains information - `cigar/` - `*_cutSite.json`: Contains the protospacer cut site position in the reference. - - `*_edition.html`: Interactive pie chart with the percentage of edition types. Reads are classified between WT (without an edit) and indels. Indels are divided between deletions, insertions and delins (deletion + insertion). Deletions and insertions can be out of frame or in frame. + - `*_edition.html`: Interactive pie chart with the percentage of edition types. Reads are classified between WT (without an edit) and indels. Indels are divided between deletions, insertions and delins (deletion + insertion). Deletions and insertions can be out of frame or in frame. A similar plot can be visualised in the MultiQC report. ![Test sample hCas9-AAVS1-a edition plot](../images/hCas9-AAVS1-a_edition.png) - `*_edits.csv`: Table containing the number of reads classified to each edition type. Contains the data visualized in the pie chart. - `*_indels.csv`: Table containing information of all reads. Edit type, edit start and length, if the edition happens above the error rate, if it's located into the common edit window, the frequency, the percentage, the pattern, surrounding nucleotides in case of insertions, the protospacer cut site, the sample id, number of aligned reads and number of reads with and without a template modification. - - `*_QC-indels.html`: Interactive pie chart with information about aligned reads. Reads are classified between WT and containing indels. Both types are classified between passing the filtering steps or not. Indel reads passing the filtering steps are divided in reads with a modification above the error rate and located in the common edit window, above the error rate but not in the edit region, vice versa, or any of those conditions. + - `*_QC-indels.html`: Interactive pie chart with information about aligned reads. Reads are classified between WT and containing indels. Both types are classified between passing the filtering steps or not. Indel reads passing the filtering steps are divided in reads with a modification above the error rate and located in the common edit window, above the error rate but not in the edit region, vice versa, or any of those conditions. A similar plot can be visualised in the MultiQC report. ![Test sample hCas9-AAVS1-a QC indels plot](../images/hCas9-AAVS1-a_QC-indels.png) - - `*_reads.html`: Interactive pie chart with percentage of the number of raw reads, reads merged with Pear, reads passing quality filters and UMI clustered reads. + - `*_reads.html`: Interactive pie chart with percentage of the number of raw reads, reads merged with Pear, reads passing quality filters and UMI clustered reads. A table with this information can be visualised in the MultiQC report. ![Test sample hCas9-AAVS1-a reads plot](../images/hCas9-AAVS1-a_reads.png) - `*_subs-perc.csv`: Table containing the percentage of each nucleotide found for each reference position. @@ -278,6 +278,17 @@ This section contains the final output of the pipeline. It contains information Results generated by MultiQC collate pipeline QC from supported tools e.g. FastQC. The pipeline has special steps which also allow the software versions to be reported in the MultiQC output for future traceability. For more information about how to use MultiQC reports, see . +`multiqc_report.html` contains statistics for FastQC and Cutadapt modules. It also contains a table with statistics about read processing (equivalent to `/cigar/*_reads.html` plots), and plots summarising the found editions (equivalent to `/cigar/*_edition.html` plots) and indel quality filters (equivalent to `/cigar/*_QC-indels.html` plots). + +
      +Custom sections example + +![Read processing table](../images/mqc_read_processing_summary.png) +![Type of edition plot](../images/mqc_type_of_edition.png) +![QC of indels plot](../images/mqc_qc_of_indels.png) + +
      + ## Pipeline information
      From 015097c25527ce18f50a7d49e8f942dfc2d69a98 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 3 Aug 2023 14:36:11 +0200 Subject: [PATCH 039/133] summary processes don't modify input file, fixing resume --- CHANGELOG.md | 2 ++ modules/local/alignment_summary.nf | 2 +- modules/local/clustering_summary.nf | 2 +- modules/local/merging_summary.nf | 2 +- templates/alignment_summary.py | 3 ++- templates/clustering_summary.py | 3 ++- templates/merging_summary.py | 2 +- workflows/crisprseq_targeted.nf | 9 +++++++++ 8 files changed, 19 insertions(+), 6 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e5d26623..76d9871a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed +- Summary processes don't modify the input file anymore, allowing resuming these processes ([#65](https://github.com/nf-core/crisprseq/pull/65)) + ### Deprecated ## [v2.0.0 - Paprika Lovelace](https://github.com/nf-core/crisprseq/releases/tag/2.0.0) - [05.07.2023] diff --git a/modules/local/alignment_summary.nf b/modules/local/alignment_summary.nf index 2805cd92..3520689f 100644 --- a/modules/local/alignment_summary.nf +++ b/modules/local/alignment_summary.nf @@ -11,7 +11,7 @@ process ALIGNMENT_SUMMARY { tuple val(meta), path(reads), path(summary) output: - tuple val(meta), path(summary), emit: summary + tuple val(meta), path("*_alignment_summary.csv"), emit: summary when: task.ext.when == null || task.ext.when diff --git a/modules/local/clustering_summary.nf b/modules/local/clustering_summary.nf index a134bdaf..b31d4f36 100644 --- a/modules/local/clustering_summary.nf +++ b/modules/local/clustering_summary.nf @@ -11,7 +11,7 @@ process CLUSTERING_SUMMARY { tuple val(meta), path(reads), path(summary) output: - tuple val(meta), path(summary), emit: summary + tuple val(meta), path("*_clustering_summary.csv"), emit: summary when: task.ext.when == null || task.ext.when diff --git a/modules/local/merging_summary.nf b/modules/local/merging_summary.nf index dcd31e04..cf9c158b 100644 --- a/modules/local/merging_summary.nf +++ b/modules/local/merging_summary.nf @@ -12,7 +12,7 @@ process MERGING_SUMMARY { output: - tuple val(meta), path("*_summary.csv"), emit: summary + tuple val(meta), path("*_merging_summary.csv"), emit: summary when: task.ext.when == null || task.ext.when diff --git a/templates/alignment_summary.py b/templates/alignment_summary.py index 5adedf93..12dd6109 100644 --- a/templates/alignment_summary.py +++ b/templates/alignment_summary.py @@ -12,7 +12,8 @@ summary_lines = summary.readlines() add_line = True -with open("$summary", "w") as output_file: +outname = "$summary".replace("_clustering_summary.csv", "_alignment_summary.csv") +with open(outname, "w") as output_file: for line in summary_lines: if "aligned-reads" not in line: output_file.write(line) diff --git a/templates/clustering_summary.py b/templates/clustering_summary.py index 208b089b..ea501964 100644 --- a/templates/clustering_summary.py +++ b/templates/clustering_summary.py @@ -12,7 +12,8 @@ summary_lines = summary.readlines() add_line = True -with open("$summary", "w") as output_file: +outname = "$summary".replace("_merging_summary.csv", "_clustering_summary.csv") +with open(outname, "w") as output_file: for line in summary_lines: if "clustered-reads" not in line: output_file.write(line) diff --git a/templates/merging_summary.py b/templates/merging_summary.py index 804a5be3..2d88e24a 100755 --- a/templates/merging_summary.py +++ b/templates/merging_summary.py @@ -34,7 +34,7 @@ else: prefix = "$meta.id" -with open(f"{prefix}_summary.csv", "w") as output_file: +with open(f"{prefix}_merging_summary.csv", "w") as output_file: output_file.write("class, count\\n") output_file.write(f"raw-reads, {raw_reads_count} (100.0%)\\n") output_file.write( diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 6556d79d..90917137 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -341,6 +341,15 @@ workflow CRISPRSEQ_TARGETED { .join(PEAR.out.assembled, remainder: true) .join(SEQTK_SEQ_MASK.out.fastx) .join(CUTADAPT.out.log) + .map { meta, reads, assembled, masked, trimmed -> + if (assembled == null) { + assembled = file('null_a') + } + if (trimmed == "null") { + trimmed = file('null_t') + } + return [ meta, reads, assembled, masked, trimmed ] + } .set { ch_merging_summary_data } } else { ch_cat_fastq.paired From 1d111f9fce66bc3dfb678689f4f36beca02adb4c Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 3 Aug 2023 14:56:46 +0200 Subject: [PATCH 040/133] don't stash unexistent files, use empty lists instead, fix AWS tests --- CHANGELOG.md | 2 ++ templates/merging_summary.py | 6 +++--- workflows/crisprseq_targeted.nf | 22 ++++++++++++---------- 3 files changed, 17 insertions(+), 13 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e5d26623..e1ffeea7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed +- Do not stash unexistent files, use empty lists instead. Fixes AWS tests ([#67](https://github.com/nf-core/crisprseq/pull/67)) + ### Deprecated ## [v2.0.0 - Paprika Lovelace](https://github.com/nf-core/crisprseq/releases/tag/2.0.0) - [05.07.2023] diff --git a/templates/merging_summary.py b/templates/merging_summary.py index 804a5be3..ffc7d277 100755 --- a/templates/merging_summary.py +++ b/templates/merging_summary.py @@ -7,7 +7,7 @@ with gzip.open("${raw_reads[0]}", "rt") as handle: raw_reads_count = len(list(SeqIO.parse(handle, "fastq"))) -if "$assembled_reads" == "null_a": +if "$assembled_reads" == "": assembled_reads_count = 0 else: with gzip.open("$assembled_reads", "rt") as handle: @@ -16,7 +16,7 @@ with gzip.open("$trimmed_reads", "rt") as handle: trimmed_reads_count = len(list(SeqIO.parse(handle, "fastq"))) # Filtered reads -if "$trimmed_adapters" == "null_t": +if "$trimmed_adapters" == "": adapters_count = 0 adapters_percentage = "(0.0%)" else: @@ -41,7 +41,7 @@ f"merged-reads, {assembled_reads_count} ({round(assembled_reads_count * 100 / raw_reads_count,1)}%)\\n" ) output_file.write(f"reads-with-adapters, {adapters_count} {adapters_percentage}\\n") - if "$assembled_reads" == "null_a": + if "$assembled_reads" == "": output_file.write( f"quality-filtered-reads, {trimmed_reads_count} ({round(trimmed_reads_count * 100 / raw_reads_count,1)}%)\\n" ) diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 6556d79d..ebc07552 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -341,21 +341,23 @@ workflow CRISPRSEQ_TARGETED { .join(PEAR.out.assembled, remainder: true) .join(SEQTK_SEQ_MASK.out.fastx) .join(CUTADAPT.out.log) + .map { meta, reads, assembled, masked, trimmed -> + if (assembled == null) { + assembled = [] + } + return [ meta, reads, assembled, masked, trimmed ] + } .set { ch_merging_summary_data } } else { ch_cat_fastq.paired .mix(ch_cat_fastq.single) .join(PEAR.out.assembled, remainder: true) .join(SEQTK_SEQ_MASK.out.fastx) - .combine(Channel.value("null")) - .map { meta, reads, assembled, masked, trimmed -> + .map { meta, reads, assembled, masked -> if (assembled == null) { - assembled = file('null_a') + assembled = [] } - if (trimmed == "null") { - trimmed = file('null_t') - } - return [ meta, reads, assembled, masked, trimmed ] + return [ meta, reads, assembled, masked, [] ] } .set { ch_merging_summary_data } } @@ -705,13 +707,13 @@ workflow CRISPRSEQ_TARGETED { .join(ALIGNMENT_SUMMARY.out.summary) .map { meta, reads, index, reference, protospacer, template, template_bam, reference_template, summary -> if (template == null) { - template = file('null_t') + template = [] } if (template_bam == null) { - template_bam = file('null_b') + template_bam = [] } if (reference_template == null) { - reference_template = file('null_r') + reference_template = [] } return [meta, reads, index, reference, protospacer, template, template_bam, reference_template, summary] } From 7463aadcf562fdb0f33bfda55d009a5c8fc070f3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Mir=20Pedrol?= Date: Thu, 3 Aug 2023 14:59:12 +0200 Subject: [PATCH 041/133] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 76d9871a..573ec572 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,7 +12,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed -- Summary processes don't modify the input file anymore, allowing resuming these processes ([#65](https://github.com/nf-core/crisprseq/pull/65)) +- Summary processes don't modify the input file anymore, allowing resuming these processes ([#66](https://github.com/nf-core/crisprseq/pull/66)) ### Deprecated From 354e1242a2eb66088b4ae1f23efcefcbb3664566 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Fri, 4 Aug 2023 13:49:03 +0200 Subject: [PATCH 042/133] rename merging_summary to preprocessing_summary --- conf/modules.config | 2 +- ...ng_summary.nf => preprocessing_summary.nf} | 6 ++--- templates/clustering_summary.py | 2 +- ...ng_summary.py => preprocessing_summary.py} | 2 +- workflows/crisprseq_targeted.nf | 26 +++++++++---------- 5 files changed, 19 insertions(+), 19 deletions(-) rename modules/local/{merging_summary.nf => preprocessing_summary.nf} (77%) rename templates/{merging_summary.py => preprocessing_summary.py} (96%) diff --git a/conf/modules.config b/conf/modules.config index 75765bcd..f78266e9 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -128,7 +128,7 @@ process { ext.prefix = { "${fasta.baseName}_top" } } - withName: MERGING_SUMMARY { + withName: PREPROCESSING_SUMMARY { publishDir = [ path: { "${params.outdir}/summary/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" }, mode: params.publish_dir_mode, diff --git a/modules/local/merging_summary.nf b/modules/local/preprocessing_summary.nf similarity index 77% rename from modules/local/merging_summary.nf rename to modules/local/preprocessing_summary.nf index cf9c158b..52d29e17 100644 --- a/modules/local/merging_summary.nf +++ b/modules/local/preprocessing_summary.nf @@ -1,4 +1,4 @@ -process MERGING_SUMMARY { +process PREPROCESSING_SUMMARY { tag "$meta.id" label 'process_single' @@ -12,11 +12,11 @@ process MERGING_SUMMARY { output: - tuple val(meta), path("*_merging_summary.csv"), emit: summary + tuple val(meta), path("*_preprocessing_summary.csv"), emit: summary when: task.ext.when == null || task.ext.when script: - template 'merging_summary.py' + template 'preprocessing_summary.py' } diff --git a/templates/clustering_summary.py b/templates/clustering_summary.py index ea501964..5b1dfd42 100644 --- a/templates/clustering_summary.py +++ b/templates/clustering_summary.py @@ -12,7 +12,7 @@ summary_lines = summary.readlines() add_line = True -outname = "$summary".replace("_merging_summary.csv", "_clustering_summary.csv") +outname = "$summary".replace("_preprocessing_summary.csv", "_clustering_summary.csv") with open(outname, "w") as output_file: for line in summary_lines: if "clustered-reads" not in line: diff --git a/templates/merging_summary.py b/templates/preprocessing_summary.py similarity index 96% rename from templates/merging_summary.py rename to templates/preprocessing_summary.py index f0e134e2..10cb94b1 100755 --- a/templates/merging_summary.py +++ b/templates/preprocessing_summary.py @@ -34,7 +34,7 @@ else: prefix = "$meta.id" -with open(f"{prefix}_merging_summary.csv", "w") as output_file: +with open(f"{prefix}_preprocessing_summary.csv", "w") as output_file: output_file.write("class, count\\n") output_file.write(f"raw-reads, {raw_reads_count} (100.0%)\\n") output_file.write( diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index ebc07552..56742701 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -38,14 +38,14 @@ ch_multiqc_custom_methods_description = params.multiqc_methods_description ? fil // // MODULE // -include { FIND_ADAPTERS } from '../modules/local/find_adapters' -include { EXTRACT_UMIS } from '../modules/local/extract_umis' -include { ORIENT_REFERENCE } from '../modules/local/orient_reference' -include { CIGAR_PARSER } from '../modules/local/cigar_parser' -include { MERGING_SUMMARY } from '../modules/local/merging_summary' -include { CLUSTERING_SUMMARY } from '../modules/local/clustering_summary' -include { ALIGNMENT_SUMMARY } from '../modules/local/alignment_summary' -include { TEMPLATE_REFERENCE } from '../modules/local/template_reference' +include { FIND_ADAPTERS } from '../modules/local/find_adapters' +include { EXTRACT_UMIS } from '../modules/local/extract_umis' +include { ORIENT_REFERENCE } from '../modules/local/orient_reference' +include { CIGAR_PARSER } from '../modules/local/cigar_parser' +include { PREPROCESSING_SUMMARY } from '../modules/local/preprocessing_summary' +include { CLUSTERING_SUMMARY } from '../modules/local/clustering_summary' +include { ALIGNMENT_SUMMARY } from '../modules/local/alignment_summary' +include { TEMPLATE_REFERENCE } from '../modules/local/template_reference' /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -347,7 +347,7 @@ workflow CRISPRSEQ_TARGETED { } return [ meta, reads, assembled, masked, trimmed ] } - .set { ch_merging_summary_data } + .set { ch_preprocessing_summary_data } } else { ch_cat_fastq.paired .mix(ch_cat_fastq.single) @@ -359,14 +359,14 @@ workflow CRISPRSEQ_TARGETED { } return [ meta, reads, assembled, masked, [] ] } - .set { ch_merging_summary_data } + .set { ch_preprocessing_summary_data } } // // MODULE: Summary of merged reads // - MERGING_SUMMARY { - ch_merging_summary_data + PREPROCESSING_SUMMARY { + ch_preprocessing_summary_data } @@ -587,7 +587,7 @@ workflow CRISPRSEQ_TARGETED { // CLUSTERING_SUMMARY ( ch_preprocess_reads - .join(MERGING_SUMMARY.out.summary) + .join(PREPROCESSING_SUMMARY.out.summary) ) From 613ed313d77b1e3120fe718e81fefe8fab9a85b0 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Fri, 4 Aug 2023 13:50:05 +0200 Subject: [PATCH 043/133] update changelog --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index 14bc880d..ac39b6f8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,6 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Summary processes don't modify the input file anymore, allowing resuming these processes ([#66](https://github.com/nf-core/crisprseq/pull/66)) - Do not stash unexistent files, use empty lists instead. Fixes AWS tests ([#67](https://github.com/nf-core/crisprseq/pull/67)) +- Rename process `merging_summary` to `preprocessing_summary` to improve clarity ([#68](https://github.com/nf-core/crisprseq/pull/68)) ### Deprecated From 710911c1aed8ab9898aa4be6397aeb75370e535a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Mir=20Pedrol?= Date: Fri, 4 Aug 2023 13:52:42 +0200 Subject: [PATCH 044/133] Update CHANGELOG.md --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index ac39b6f8..1c24832a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,7 +14,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Summary processes don't modify the input file anymore, allowing resuming these processes ([#66](https://github.com/nf-core/crisprseq/pull/66)) - Do not stash unexistent files, use empty lists instead. Fixes AWS tests ([#67](https://github.com/nf-core/crisprseq/pull/67)) -- Rename process `merging_summary` to `preprocessing_summary` to improve clarity ([#68](https://github.com/nf-core/crisprseq/pull/68)) +- Rename process `merging_summary` to `preprocessing_summary` to improve clarity ([#69](https://github.com/nf-core/crisprseq/pull/69)) ### Deprecated From 6ef05ac032b45ea40b451728d59738f582c89ee2 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 8 Aug 2023 09:07:13 +0200 Subject: [PATCH 045/133] Bagel2 --- conf/modules.config | 32 ++++++++++++++++++++++++++++++ modules/local/bagel2/bf.nf | 2 +- modules/local/bagel2/pr.nf | 2 +- modules/nf-core/mageck/mle/main.nf | 2 +- workflows/crisprseq_screening.nf | 21 ++++++-------------- 5 files changed, 41 insertions(+), 18 deletions(-) diff --git a/conf/modules.config b/conf/modules.config index 75765bcd..aee0939a 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -43,6 +43,38 @@ process { ] } + withName: BAGEL2_BF { + publishDir = [ + path: { "${params.outdir}/bagel2/bayes_factor/" }, + mode: params.publish_dir_mode, + saveAs: { filename -> filename.equals('versions.yml') ? null : filename } + ] + } + + withName: BAGEL2_PR { + publishDir = [ + path: { "${params.outdir}/bagel2/precision_recall/" }, + mode: params.publish_dir_mode, + saveAs: { filename -> filename.equals('versions.yml') ? null : filename } + ] + } + + withName: BAGEL2_FC { + publishDir = [ + path: { "${params.outdir}/bagel2/fold_change/" }, + mode: params.publish_dir_mode, + saveAs: { filename -> filename.equals('versions.yml') ? null : filename } + ] + } + + withName: BAGEL2_GRAPH { + publishDir = [ + path: { "${params.outdir}/bagel2/graphs/" }, + mode: params.publish_dir_mode, + saveAs: { filename -> filename.equals('versions.yml') ? null : filename } + ] + } + withName: FASTQC { ext.args = '--quiet' publishDir = [ diff --git a/modules/local/bagel2/bf.nf b/modules/local/bagel2/bf.nf index 1353965c..f3a3060d 100644 --- a/modules/local/bagel2/bf.nf +++ b/modules/local/bagel2/bf.nf @@ -24,7 +24,7 @@ process BAGEL2_BF { def prefix = task.ext.prefix ?: "${meta.treatment}" """ - BAGEL.py bf -i $foldchange -o '${meta.treatment}.bf' $args -e $reference_essentials -n $reference_nonessentials -c ${meta.treatment} + BAGEL.py bf -i $foldchange -o '${meta.treatment}_vs_${meta.reference}.bf' $args -e $reference_essentials -n $reference_nonessentials -c ${meta.treatment} """ diff --git a/modules/local/bagel2/pr.nf b/modules/local/bagel2/pr.nf index 4a5616b4..b5cd1793 100644 --- a/modules/local/bagel2/pr.nf +++ b/modules/local/bagel2/pr.nf @@ -24,7 +24,7 @@ process BAGEL2_PR { def prefix = task.ext.prefix ?: "${meta.id}" """ - BAGEL.py pr -i $bf -o '${meta.treatment}.pr' -e $reference_essentials -n $reference_nonessentials + BAGEL.py pr -i $bf -o '${meta.treatment}_vs_${meta.reference}.pr' -e $reference_essentials -n $reference_nonessentials """ } diff --git a/modules/nf-core/mageck/mle/main.nf b/modules/nf-core/mageck/mle/main.nf index 626c410d..9c744afe 100644 --- a/modules/nf-core/mageck/mle/main.nf +++ b/modules/nf-core/mageck/mle/main.nf @@ -1,6 +1,6 @@ process MAGECK_MLE { tag "$meta.id" - label 'process_medium' + label 'process_high' conda "bioconda::mageck=0.5.9" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 317838d2..3682e4fe 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -101,6 +101,9 @@ workflow CRISPRSEQ_SCREENING { } } .set { ch_input } + + ch_value = Channel.value(single_end) + ch_value.dump(tag: "ch_value") // // MODULE: Run FastQC // @@ -125,7 +128,6 @@ workflow CRISPRSEQ_SCREENING { joined.dump(tag: "input joined") } - // // MODULE: Run mageck count // @@ -177,20 +179,9 @@ workflow CRISPRSEQ_SCREENING { .set { ch_bagel } counts = ch_bagel.combine(ch_counts) - //TO DO MAKE THIS PRETTIER - if(!params.bagel_reference_essentials) { - ch_bagel_reference_essentials = Channel.fromPath("${projectDir}/assets/CEGv2.txt") - } else { - ch_bagel_reference_essentials = Channel.fromPath(params.bagel_reference_essentials) - } - - //ch_bagel_reference_essentials.dump(tag: "input joined") - - //TO DO make this prettier - if(!params.bagel_reference_nonessentials) { - ch_bagel_reference_nonessentials = Channel.fromPath("${projectDir}/assets/NEGv1.txt") - } else { - ch_bagel_reference_nonessentials = Channel.fromPath(params.bagel_reference_nonessentials) } + //Define non essential and essential genes channels for bagel2 + ch_bagel_reference_essentials= params.bagel_reference_essentials ? Channel.fromPath(params.bagel_reference_essentials) : Channel.fromPath("${projectDir}/assets/CEGv2.txt") + ch_bagel_reference_nonessentials= params.bagel_reference_nonessentials ? Channel.fromPath(params.bagel_reference_nonessentials) : Channel.fromPath("${projectDir}/assets/NEGv1.txt") BAGEL2_FC ( From 7030145e69622588b6cc06bd132182abbe925211 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 8 Aug 2023 09:11:05 +0200 Subject: [PATCH 046/133] Add new features in changelog --- CHANGELOG.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index e5d26623..6284d434 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,9 +9,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Template update v2.9 ([#52](https://github.com/nf-core/crisprseq/pull/52)) - Use `Channel.fromSamplesheet()` from `nf-validation` to validate input sample sheets and create an input channel ([#58](https://github.com/nf-core/crisprseq/pull/58)) +- BAGEL2 as a module which detects gene essentiality ### Fixed +- Change to `process_high` for the mageck mle module ### Deprecated ## [v2.0.0 - Paprika Lovelace](https://github.com/nf-core/crisprseq/releases/tag/2.0.0) - [05.07.2023] From 5be5815247eec5f0f29d8e965e5f96f0d03b70eb Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 8 Aug 2023 14:44:24 +0200 Subject: [PATCH 047/133] Fixed paired-end --- modules/nf-core/mageck/count/main.nf | 14 +++++++---- workflows/crisprseq_screening.nf | 36 +++++++++++++--------------- 2 files changed, 27 insertions(+), 23 deletions(-) diff --git a/modules/nf-core/mageck/count/main.nf b/modules/nf-core/mageck/count/main.nf index 01691029..ced51e85 100644 --- a/modules/nf-core/mageck/count/main.nf +++ b/modules/nf-core/mageck/count/main.nf @@ -1,6 +1,6 @@ process MAGECK_COUNT { tag "$meta.id" - label 'process_medium' + label 'process_high' conda "bioconda::mageck=0.5.9" container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? @@ -26,9 +26,15 @@ process MAGECK_COUNT { script: def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" - def input_file = ("$inputfile".endsWith(".fastq.gz") || "$inputfile".endsWith(".fq.gz")) ? "--fastq ${inputfile}" : "-k ${inputfile}" + // def input_file = ("$inputfile".endsWith(".fastq.gz") || "$inputfile".endsWith(".fq.gz")) ? "--fastq ${inputfile}" : "-k ${inputfile}" def sample_label = ("$inputfile".endsWith(".fastq.gz") || "$inputfile".endsWith(".fq.gz")) ? "--sample-label ${meta.id}" : '' - + + if (meta.single_end && ("$inputfile".endsWith(".fastq.gz") || "$inputfile".endsWith(".fq.gz"))) { + input = "--fastq ${inputfile}" + } else { + input = "--fastq ${inputfile[0]} --fastq-2 ${inputfile[1]}" + } + """ mageck \\ count \\ @@ -36,7 +42,7 @@ process MAGECK_COUNT { -l $library \\ -n $prefix \\ $sample_label \\ - $input_file \\ + $input cat <<-END_VERSIONS > versions.yml diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 3682e4fe..52b24c9a 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -88,45 +88,43 @@ workflow CRISPRSEQ_SCREENING { // // Create input channel from input file provided through params.input // - single_end = true Channel.fromSamplesheet("input") .map{ meta, fastq_1, fastq_2, x, y, z -> // x (reference), y (protospacer), and z (template) are part of the targeted workflows and we don't need them - if (!fastq_2) { - single_end = true - return [ meta, [ fastq_1 ] ] - } else { - single_end = false - return [ meta, [ fastq_1, fastq_2 ] ] - } + return [ meta + [ single_end:fastq_2?false:true ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] } .set { ch_input } - ch_value = Channel.value(single_end) - ch_value.dump(tag: "ch_value") + + ch_input.dump(tag: "ch_input") // // MODULE: Run FastQC // FASTQC ( ch_input ) + + ch_versions = ch_versions.mix(FASTQC.out.versions.first()) - if(single_end==true) { + ch_input - .map { meta, fastq -> - [meta.condition, fastq] + .map { meta, fastq -> + [meta.condition, fastq, meta.single_end] } .reduce { a, b -> - ["${a[0]},${b[0]}", a[1] + b[1]] + if(a[2] != b[2] ) { + error "Your samplesheet contains a mix of single-end and paired-end data. This is not supported." + } + return ["${a[0]},${b[0]}", a[1] + b[1], b[2]] } - .map { condition, fastqs -> - [[id: condition], fastqs] + .map { condition, fastqs, single_end -> + [[id: condition, single_end: single_end], fastqs] } .set { joined } joined.dump(tag: "input joined") - } + // // MODULE: Run mageck count @@ -187,7 +185,7 @@ workflow CRISPRSEQ_SCREENING { BAGEL2_FC ( counts ) - } + ch_bagel_bf = BAGEL2_FC.out.foldchange.combine(ch_bagel_reference_essentials) .combine(ch_bagel_reference_nonessentials) @@ -208,7 +206,7 @@ workflow CRISPRSEQ_SCREENING { BAGEL2_GRAPH ( BAGEL2_PR.out.pr ) - + } if(params.mle_design_matrix) { ch_mle = ch_counts.combine(ch_design) ch_mle.map { From 2519663efcfc77d5ebc74d5b6b27bfd7dd861a4c Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 9 Aug 2023 09:22:16 +0200 Subject: [PATCH 048/133] Update CHANGELOG.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f086f1c3..f9f6159b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -9,7 +9,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Template update v2.9 ([#52](https://github.com/nf-core/crisprseq/pull/52)) - Use `Channel.fromSamplesheet()` from `nf-validation` to validate input sample sheets and create an input channel ([#58](https://github.com/nf-core/crisprseq/pull/58)) -- BAGEL2 as a module which detects gene essentiality +- BAGEL2 as a module which detects gene essentiality ([#60](https://github.com/nf-core/crisprseq/pull/60)) ### Fixed From 65c0f6f010619b4472d2df4e2d723d46743fb6ba Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 9 Aug 2023 09:22:35 +0200 Subject: [PATCH 049/133] Update CHANGELOG.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f9f6159b..a3e18bae 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -13,7 +13,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed -- Change to `process_high` for the mageck mle module +- Change to `process_high` for the mageck mle module ([#60](https://github.com/nf-core/crisprseq/pull/60) - Summary processes don't modify the input file anymore, allowing resuming these processes ([#66](https://github.com/nf-core/crisprseq/pull/66)) - Do not stash unexistent files, use empty lists instead. Fixes AWS tests ([#67](https://github.com/nf-core/crisprseq/pull/67)) - Rename process `merging_summary` to `preprocessing_summary` to improve clarity ([#69](https://github.com/nf-core/crisprseq/pull/69)) From 2be7f3b4c9bf0d5a4079b707eb20e23bbec6b32d Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 9 Aug 2023 11:40:30 +0200 Subject: [PATCH 050/133] Update workflows/crisprseq_screening.nf MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- workflows/crisprseq_screening.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 52b24c9a..730478fe 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -69,7 +69,7 @@ include { CRISPRCLEANR_NORMALIZE } from '../modules/nf-core/crisprcleanr/no include { BAGEL2_FC } from '../modules/local/bagel2/fc' include { BAGEL2_BF } from '../modules/local/bagel2/bf' include { BAGEL2_PR } from '../modules/local/bagel2/pr' -include { BAGEL2_GRAPH } from '../modules/local/bagel2/graph' +include { BAGEL2_GRAPH } from '../modules/local/bagel2/graph' /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ From ea07b75991267a372690d45927263891a91e8fa2 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 9 Aug 2023 11:41:04 +0200 Subject: [PATCH 051/133] Update workflows/crisprseq_screening.nf MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- workflows/crisprseq_screening.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 730478fe..dee43eeb 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -91,7 +91,7 @@ workflow CRISPRSEQ_SCREENING { Channel.fromSamplesheet("input") .map{ meta, fastq_1, fastq_2, x, y, z -> // x (reference), y (protospacer), and z (template) are part of the targeted workflows and we don't need them - return [ meta + [ single_end:fastq_2?false:true ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] + return [ meta + [ single_end:fastq_2?false:true ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] } .set { ch_input } From 9278293a2bfae6be856a45c11033c0fe068fb5db Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 9 Aug 2023 12:40:04 +0200 Subject: [PATCH 052/133] Update workflows/crisprseq_screening.nf MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- workflows/crisprseq_screening.nf | 2 -- 1 file changed, 2 deletions(-) diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index dee43eeb..94fbd7ee 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -95,8 +95,6 @@ workflow CRISPRSEQ_SCREENING { } .set { ch_input } - - ch_input.dump(tag: "ch_input") // // MODULE: Run FastQC // From 4cc4bba46cf578e75caa5de0588c80c515bed62c Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 9 Aug 2023 12:41:25 +0200 Subject: [PATCH 053/133] Update workflows/crisprseq_screening.nf MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- workflows/crisprseq_screening.nf | 2 -- 1 file changed, 2 deletions(-) diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 94fbd7ee..a9c3348a 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -121,8 +121,6 @@ workflow CRISPRSEQ_SCREENING { } .set { joined } - joined.dump(tag: "input joined") - // // MODULE: Run mageck count From d0b21d9d761812f4ef2dd218ff0840a3cd886b35 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 9 Aug 2023 12:43:09 +0200 Subject: [PATCH 054/133] formatting --- modules/local/bagel2/bf.nf | 4 +++- nextflow.config | 2 +- nextflow_schema.json | 4 ++-- workflows/crisprseq_screening.nf | 16 ++++++---------- 4 files changed, 12 insertions(+), 14 deletions(-) diff --git a/modules/local/bagel2/bf.nf b/modules/local/bagel2/bf.nf index f3a3060d..9f5fe090 100644 --- a/modules/local/bagel2/bf.nf +++ b/modules/local/bagel2/bf.nf @@ -10,7 +10,9 @@ process BAGEL2_BF { input: - tuple val(meta), path(foldchange), path(reference_essentials), path(reference_nonessentials) + tuple val(meta), path(foldchange) + path(reference_essentials) + path(reference_nonessentials) output: tuple val(meta), path("*.bf"), emit: bf diff --git a/nextflow.config b/nextflow.config index bf675e5f..eeeca587 100644 --- a/nextflow.config +++ b/nextflow.config @@ -21,7 +21,7 @@ params { count_table = null min_reads = 30 min_targeted_genes = 3 - bagel_reference_essentials = 'https://raw.githubusercontent.com/hart-lab/bagel/master/CEGv2.txt' + bagel_reference_essentials = 'https://raw.githubusercontent.com/hart-lab/bagel/master/CEGv2.txt' bagel_reference_nonessentials = 'https://raw.githubusercontent.com/hart-lab/bagel/master/NEGv1.txt' // Pipeline steps diff --git a/nextflow_schema.json b/nextflow_schema.json index c5774253..211f5f1a 100644 --- a/nextflow_schema.json +++ b/nextflow_schema.json @@ -196,12 +196,12 @@ "bagel_reference_essentials": { "type": "string", "description": "Core essential gene set for BAGEL2", - "default": "https://github.com/hart-lab/bagel/blob/master/CEGv2.txt" + "default": "https://raw.githubusercontent.com/hart-lab/bagel/master/CEGv2.txt" }, "bagel_reference_nonessentials": { "type": "string", "description": "Non essential gene set for BAGEL2", - "default": "https://github.com/hart-lab/bagel/blob/master/NEGv1.txt" + "default": "https://raw.githubusercontent.com/hart-lab/bagel/master/NEGv1.txt" } } }, diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 52b24c9a..586b8dc8 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -69,7 +69,7 @@ include { CRISPRCLEANR_NORMALIZE } from '../modules/nf-core/crisprcleanr/no include { BAGEL2_FC } from '../modules/local/bagel2/fc' include { BAGEL2_BF } from '../modules/local/bagel2/bf' include { BAGEL2_PR } from '../modules/local/bagel2/pr' -include { BAGEL2_GRAPH } from '../modules/local/bagel2/graph' +include { BAGEL2_GRAPH } from '../modules/local/bagel2/graph' /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -178,24 +178,20 @@ workflow CRISPRSEQ_SCREENING { counts = ch_bagel.combine(ch_counts) //Define non essential and essential genes channels for bagel2 - ch_bagel_reference_essentials= params.bagel_reference_essentials ? Channel.fromPath(params.bagel_reference_essentials) : Channel.fromPath("${projectDir}/assets/CEGv2.txt") - ch_bagel_reference_nonessentials= params.bagel_reference_nonessentials ? Channel.fromPath(params.bagel_reference_nonessentials) : Channel.fromPath("${projectDir}/assets/NEGv1.txt") + ch_bagel_reference_essentials= params.bagel_reference_essentials ? Channel.value(params.bagel_reference_essentials) : Channel.value("${projectDir}/assets/CEGv2.txt") + ch_bagel_reference_nonessentials= params.bagel_reference_nonessentials ? Channel.value(params.bagel_reference_nonessentials) : Channel.value("${projectDir}/assets/NEGv1.txt") BAGEL2_FC ( counts ) - - ch_bagel_bf = BAGEL2_FC.out.foldchange.combine(ch_bagel_reference_essentials) - .combine(ch_bagel_reference_nonessentials) - - BAGEL2_BF ( - ch_bagel_bf + BAGEL2_FC.out.foldchange, + ch_bagel_reference_essentials, + ch_bagel_reference_nonessentials ) - BAGEL2_BF.out.bf.dump(tag:"BAGEL2_BF dump") ch_bagel_pr = BAGEL2_BF.out.bf.combine(ch_bagel_reference_essentials) .combine(ch_bagel_reference_nonessentials) From 6c8993bda1e6f7f3c1b71eeb996901e192ebaff1 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 9 Aug 2023 12:55:45 +0200 Subject: [PATCH 055/133] test --- modules/local/bagel2/graph.nf | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/modules/local/bagel2/graph.nf b/modules/local/bagel2/graph.nf index 1bc149a4..4a48b7a3 100644 --- a/modules/local/bagel2/graph.nf +++ b/modules/local/bagel2/graph.nf @@ -1,20 +1,3 @@ -// TODO nf-core: If in doubt look at other nf-core/modules to see how we are doing things! :) -// https://github.com/nf-core/modules/tree/master/modules/nf-core/ -// You can also ask for help via your pull request or on the #modules channel on the nf-core Slack workspace: -// https://nf-co.re/join -// TODO nf-core: A module file SHOULD only define input and output files as command-line parameters. -// All other parameters MUST be provided using the "task.ext" directive, see here: -// https://www.nextflow.io/docs/latest/process.html#ext -// where "task.ext" is a string. -// Any parameters that need to be evaluated in the context of a particular sample -// e.g. single-end/paired-end data MUST also be defined and evaluated appropriately. -// TODO nf-core: Software that can be piped together SHOULD be added to separate module files -// unless there is a run-time, storage advantage in implementing in this way -// e.g. it's ok to have a single module for bwa to output BAM instead of SAM: -// bwa mem | samtools view -B -T ref.fasta -// TODO nf-core: Optional inputs are not currently supported by Nextflow. However, using an empty -// list (`[]`) instead of a file can be used to work around this issue. - process BAGEL2_GRAPH { tag "$meta.id" label 'process_single' @@ -29,9 +12,9 @@ process BAGEL2_GRAPH { tuple val(meta), path(pr) output: - //path "versions.yml" , emit: versions path("*.png") , emit: pictures + when: task.ext.when == null || task.ext.when From 29dc2bd6223e0daa1187b9ea419fa525d5349de4 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 9 Aug 2023 14:35:08 +0200 Subject: [PATCH 056/133] Update workflows/crisprseq_screening.nf MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- workflows/crisprseq_screening.nf | 1 - 1 file changed, 1 deletion(-) diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 9e020e1a..ff495e3a 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -194,7 +194,6 @@ workflow CRISPRSEQ_SCREENING { BAGEL2_PR ( ch_bagel_pr ) - BAGEL2_PR.out.pr.dump(tag:"TEST PR DUMP") BAGEL2_GRAPH ( BAGEL2_PR.out.pr ) From bc75826415e90d2d328cf682091f1919b6eb35c6 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 14 Aug 2023 15:45:15 +0200 Subject: [PATCH 057/133] don't save reference oriented files and other intermediate output files --- conf/modules.config | 16 ++++++++++++++-- docs/output/targeted.md | 4 +--- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/conf/modules.config b/conf/modules.config index f78266e9..867f0d58 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -23,7 +23,8 @@ process { publishDir = [ path: { "${params.outdir}/preprocessing/sequences" }, mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } + saveAs: { filename -> filename.equals('versions.yml') ? null : filename }, + enabled: false ] } @@ -132,7 +133,8 @@ process { publishDir = [ path: { "${params.outdir}/summary/${task.process.tokenize(':')[-1].tokenize('_')[0].toLowerCase()}" }, mode: params.publish_dir_mode, - saveAs: { filename -> filename.equals('versions.yml') ? null : filename } + saveAs: { filename -> filename.equals('versions.yml') ? null : filename }, + enabled: false ] } @@ -159,11 +161,21 @@ process { withName: RACON_1 { ext.args = '-t 4 -m 8 -x -6 -g -8 -w 500 --no-trimming' ext.prefix = { "${reads.baseName}_cycle1" } + publishDir = [ + path: { "${params.outdir}/racon_umi" }, + mode: params.publish_dir_mode, + saveAs: { filename -> filename.equals('versions.yml') ? null : filename } + ] } withName: RACON_2 { ext.args = '-t 4 -m 8 -x -6 -g -8 -w 500 --no-trimming' ext.prefix = { "${reads.baseName}_cycle2" } + publishDir = [ + path: { "${params.outdir}/racon_umi" }, + mode: params.publish_dir_mode, + saveAs: { filename -> filename.equals('versions.yml') ? null : filename } + ] } withName: MEDAKA { diff --git a/docs/output/targeted.md b/docs/output/targeted.md index 0a4ba78e..66f3d8fd 100644 --- a/docs/output/targeted.md +++ b/docs/output/targeted.md @@ -44,9 +44,7 @@ The pipeline is built using [Nextflow](https://www.nextflow.io/) and processes d Output files - `preprocessing/sequences/` - - `*_reference.fasta`: Sequence used as a reference. - `*_template.fasta`: Provided template sequence. - - `*_correctOrient.fasta`: Reference sequence in the correct orientation. - `_NewReference.fasta`: New reference generated from adding the changes made by the template to the original reference. - `*_template-align.bam`: Alignment of the new reference (with template changes) to the original reference. @@ -174,7 +172,7 @@ The FastQC plots displayed in the MultiQC report shows _untrimmed_ reads. They m [Minimap2](https://github.com/lh3/minimap2) is a sequence alignment program that aligns DNA sequences against a reference database. -### racon +### racon_umi
      Output files From f8210a462f328ff41176873780d769b5550f87aa Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 16 Aug 2023 14:41:02 +0200 Subject: [PATCH 058/133] Add doc --- CITATIONS.md | 4 ++++ docs/output/screening.md | 20 ++++++++++++++++++++ workflows/crisprseq_screening.nf | 11 +++-------- 3 files changed, 27 insertions(+), 8 deletions(-) diff --git a/CITATIONS.md b/CITATIONS.md index e279aae8..2f5384ed 100644 --- a/CITATIONS.md +++ b/CITATIONS.md @@ -63,6 +63,10 @@ > Li, W. et al. Quality control, modeling, and visualization of CRISPR screens with MAGeCK-VISPR. Genome Biology 16, 281, doi:10.1186/s13059-015-0843-6 (2015). +- [BAGEL2](https://pubmed.ncbi.nlm.nih.gov/33407829/) + + > Kim E, Hart T. Improved analysis of CRISPR fitness screens and reduced off-target effects with the BAGEL2 gene essentiality classifier. Genome Med. 2021 Jan 6;13(1):2. doi: 10.1186/s13073-020-00809-3. PMID: 33407829; PMCID: PMC7789424. + - [BioContainers](https://pubmed.ncbi.nlm.nih.gov/28379341/) > da Veiga Leprevost F, Grüning B, Aflitos SA, Röst HL, Uszkoreit J, Barsnes H, Vaudel M, Moreno P, Gatto L, Weber J, Bai M, Jimenez RC, Sachsenberg T, Pfeuffer J, Alvarez RV, Griss J, Nesvizhskii AI, Perez-Riverol Y. BioContainers: an open-source and community-driven framework for software standardization. Bioinformatics. 2017 Aug 15;33(16):2580-2582. doi: 10.1093/bioinformatics/btx192. PubMed PMID: 28379341; PubMed Central PMCID: PMC5870671. diff --git a/docs/output/screening.md b/docs/output/screening.md index bb45fdcc..e51bb43a 100644 --- a/docs/output/screening.md +++ b/docs/output/screening.md @@ -97,6 +97,26 @@ The pipeline is built using [Nextflow](https://www.nextflow.io/) and processes d [MAGeCK](https://sourceforge.net/p/mageck/wiki/Home/) is a computational tool to identify important genes from CRISPR-Cas9 screens. +### BAGEL2 + +
      +Output files + +- `bagel2/fold_change` + - `*.foldchange`: foldchange between the reference and treatment contrast provided +- `bagel2/bayes_factor` + - `*.bf`: bayes factor per gene +- `bagel2/precision_recall` + - `*.pr`: precision recall per gene +- `bagel2/graphs` + - `barplot*.png`: barplot of the bayes factor distribution + - `PR*.png`: precision recall plot (Recall vs FDR) + +
      + +[bagel2](https://github.com/hart-lab/bagel) is a computational tool to identify important essential genes for CRISPR-Cas9 screening experiments. + + ## MultiQC
      diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index ff495e3a..54a2d3b0 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -15,10 +15,6 @@ log.info logo + paramsSummaryLog(workflow) + citation WorkflowCrisprseq.initialise(params, log) -// Check input path parameters to see if they exist -def checkPathParamList = [ params.multiqc_config, params.reference_fasta, params.library] -for (param in checkPathParamList) { if (param) { file(param, checkIfExists: true) } } - // Check mandatory parameters //if (!params.count_table) { ch_input = file(params.input) } else { error('Input samplesheet not specified!') } if (params.library) { ch_library = file(params.library) } @@ -91,7 +87,7 @@ workflow CRISPRSEQ_SCREENING { Channel.fromSamplesheet("input") .map{ meta, fastq_1, fastq_2, x, y, z -> // x (reference), y (protospacer), and z (template) are part of the targeted workflows and we don't need them - return [ meta + [ single_end:fastq_2?false:true ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] + return [ meta + [ single_end:fastq_2?false:true ], fastq_2?[ fastq_1, fastq_2 ]:[ fastq_1 ] ] } .set { ch_input } @@ -174,9 +170,8 @@ workflow CRISPRSEQ_SCREENING { counts = ch_bagel.combine(ch_counts) //Define non essential and essential genes channels for bagel2 - ch_bagel_reference_essentials= params.bagel_reference_essentials ? Channel.value(params.bagel_reference_essentials) : Channel.value("${projectDir}/assets/CEGv2.txt") - ch_bagel_reference_nonessentials= params.bagel_reference_nonessentials ? Channel.value(params.bagel_reference_nonessentials) : Channel.value("${projectDir}/assets/NEGv1.txt") - + ch_bagel_reference_essentials= Channel.value(params.bagel_reference_essentials) + ch_bagel_reference_nonessentials= Channel.value(params.bagel_reference_nonessentials) BAGEL2_FC ( counts From e21fc25b08ee19f81f2fb304311859410f5b3519 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 16 Aug 2023 14:58:28 +0200 Subject: [PATCH 059/133] fix meta id --- modules/local/bagel2/graph.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/local/bagel2/graph.nf b/modules/local/bagel2/graph.nf index 4a48b7a3..8ca0d84c 100644 --- a/modules/local/bagel2/graph.nf +++ b/modules/local/bagel2/graph.nf @@ -1,5 +1,5 @@ process BAGEL2_GRAPH { - tag "$meta.id" + tag "${meta.treatment}_${meta.reference}" label 'process_single' conda "python=3.11.4 pandas=2.0.3 numpy=1.25.1 scikit-learn=1.3.0 click=8.1.6 matplotlib=3.7.2" From 63f328a42ffb85910bc30a5f6fa8afd7696ab5ff Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 16 Aug 2023 15:16:54 +0200 Subject: [PATCH 060/133] Ran nf-core modules patch --- .../nf-core/mageck/count/mageck-count.diff | 32 +++++++++++++++++-- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/modules/nf-core/mageck/count/mageck-count.diff b/modules/nf-core/mageck/count/mageck-count.diff index 87f8e83c..53659a20 100644 --- a/modules/nf-core/mageck/count/mageck-count.diff +++ b/modules/nf-core/mageck/count/mageck-count.diff @@ -1,6 +1,14 @@ Changes in module 'nf-core/mageck/count' --- modules/nf-core/mageck/count/main.nf +++ modules/nf-core/mageck/count/main.nf +@@ -1,6 +1,6 @@ + process MAGECK_COUNT { + tag "$meta.id" +- label 'process_medium' ++ label 'process_high' + + conda "bioconda::mageck=0.5.9" + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? @@ -12,8 +12,12 @@ path(library) @@ -15,14 +23,32 @@ Changes in module 'nf-core/mageck/count' path "versions.yml" , emit: versions when: -@@ -22,7 +26,7 @@ +@@ -22,9 +26,15 @@ script: def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" - def input_file = ("$inputfile".endsWith(".fastq.gz")) ? "--fastq ${inputfile}" : "-k ${inputfile}" -+ def input_file = ("$inputfile".endsWith(".fastq.gz") || "$inputfile".endsWith(".fq.gz")) ? "--fastq ${inputfile}" : "-k ${inputfile}" ++ // def input_file = ("$inputfile".endsWith(".fastq.gz") || "$inputfile".endsWith(".fq.gz")) ? "--fastq ${inputfile}" : "-k ${inputfile}" def sample_label = ("$inputfile".endsWith(".fastq.gz") || "$inputfile".endsWith(".fq.gz")) ? "--sample-label ${meta.id}" : '' - +- ++ ++ if (meta.single_end && ("$inputfile".endsWith(".fastq.gz") || "$inputfile".endsWith(".fq.gz"))) { ++ input = "--fastq ${inputfile}" ++ } else { ++ input = "--fastq ${inputfile[0]} --fastq-2 ${inputfile[1]}" ++ } ++ """ + mageck \\ + count \\ +@@ -32,7 +42,7 @@ + -l $library \\ + -n $prefix \\ + $sample_label \\ +- $input_file \\ ++ $input + + + cat <<-END_VERSIONS > versions.yml ************************************************************ From 90eb2879b60f5b5752e86e4e79d040950558f8d3 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 16 Aug 2023 15:42:49 +0200 Subject: [PATCH 061/133] Add license --- assets/CEGv2.txt | 685 ---------------------------------- assets/NEGv1.txt | 929 ----------------------------------------------- bin/BAGEL.py | 52 ++- 3 files changed, 40 insertions(+), 1626 deletions(-) delete mode 100644 assets/CEGv2.txt delete mode 100644 assets/NEGv1.txt diff --git a/assets/CEGv2.txt b/assets/CEGv2.txt deleted file mode 100644 index fa3ce335..00000000 --- a/assets/CEGv2.txt +++ /dev/null @@ -1,685 +0,0 @@ -GENE HGNC_ID ENTREZ_ID -AARS HGNC:20 16 -ABCE1 HGNC:69 6059 -ABCF1 HGNC:70 23 -ACTB HGNC:132 60 -ACTL6A HGNC:24124 86 -ACTR10 HGNC:17372 55860 -ACTR2 HGNC:169 10097 -ADSL HGNC:291 158 -ADSS HGNC:292 159 -AHCY HGNC:343 191 -ALG1 HGNC:18294 56052 -ALG14 HGNC:28287 199857 -ALG2 HGNC:23159 85365 -ANAPC2 HGNC:19989 29882 -ANAPC4 HGNC:19990 29945 -ANAPC5 HGNC:15713 51433 -AQR HGNC:29513 9716 -ARCN1 HGNC:649 372 -ARIH1 HGNC:689 25820 -ARL2 HGNC:693 402 -ATP2A2 HGNC:812 488 -ATP5F1A HGNC:823 498 -ATP5F1B HGNC:830 506 -ATP5F1C HGNC:833 509 -ATP5F1D HGNC:837 513 -ATP5J2-PTCD1 NA -ATP5MG HGNC:14247 10632 -ATP5PO HGNC:850 539 -ATP6V0B HGNC:861 533 -ATP6V0C HGNC:855 527 -ATP6V1A HGNC:851 523 -ATP6V1D HGNC:13527 51382 -ATP6V1E1 HGNC:857 529 -ATR HGNC:882 545 -AURKB HGNC:11390 9212 -BANF1 HGNC:17397 8815 -BIRC5 HGNC:593 332 -BUB1B HGNC:1149 701 -BUB3 HGNC:1151 9184 -BUD31 HGNC:29629 8896 -BYSL HGNC:1157 705 -TWNK HGNC:1160 56652 -C1orf109 HGNC:26039 54955 -CFAP298 HGNC:1301 56683 -NEPRO HGNC:24496 25871 -SPOUT1 HGNC:26933 51490 -CCDC84 HGNC:30460 338657 -YJU2 HGNC:25518 55702 -CCNA2 HGNC:1578 890 -CCNH HGNC:1594 902 -CCNK HGNC:1596 8812 -CCT2 HGNC:1615 10576 -CCT3 HGNC:1616 7203 -CCT4 HGNC:1617 10575 -CCT5 HGNC:1618 22948 -CCT6A HGNC:1620 908 -CCT7 HGNC:1622 10574 -CCT8 HGNC:1623 10694 -CDC123 HGNC:16827 8872 -CDC16 HGNC:1720 8881 -CDC20 HGNC:1723 991 -CDC27 HGNC:1728 996 -CDC37 HGNC:1735 11140 -CDC5L HGNC:1743 988 -CDC73 HGNC:16783 79577 -CDK1 HGNC:1722 983 -CDK7 HGNC:1778 1022 -CDK9 HGNC:1780 1025 -CDT1 HGNC:24576 81620 -CEBPZ HGNC:24218 10153 -CENPA HGNC:1851 1058 -CENPC NA -CFL1 HGNC:1874 1072 -CHAF1A HGNC:1910 10036 -CHAF1B HGNC:1911 8208 -CHEK1 HGNC:1925 1111 -CHERP HGNC:16930 10523 -CHMP2A HGNC:30216 27243 -CHMP6 HGNC:25675 79643 -CIAO1 HGNC:14280 9391 -CINP HGNC:23789 51550 -UTP4 HGNC:1983 84916 -CKAP5 HGNC:28959 9793 -CLNS1A HGNC:2080 1207 -CLP1 HGNC:16999 10978 -CLTC HGNC:2092 1213 -CMPK1 HGNC:18170 51727 -CMTR1 NA -CNOT3 HGNC:7879 4849 -COA5 HGNC:33848 493753 -COPA HGNC:2230 1314 -COPB1 HGNC:2231 1315 -COPB2 HGNC:2232 9276 -COPS3 HGNC:2239 8533 -COPS6 HGNC:21749 10980 -COPZ1 HGNC:2243 22818 -COQ4 HGNC:19693 51117 -COX10 HGNC:2260 1352 -COX11 HGNC:2261 1353 -COX15 HGNC:2263 1355 -COX4I1 HGNC:2265 1327 -COX5B HGNC:2269 1329 -COX6B1 HGNC:2280 1340 -CPSF1 HGNC:2324 29894 -CPSF2 HGNC:2325 53981 -CPSF3 HGNC:2326 51692 -CPSF4 HGNC:2327 10898 -CRNKL1 HGNC:15762 51340 -CSE1L HGNC:2431 1434 -CTDP1 HGNC:2498 9150 -CTPS1 HGNC:2519 1503 -CTR9 HGNC:16850 9646 -CYCS HGNC:19986 54205 -DAD1 HGNC:2664 1603 -DBR1 HGNC:15594 51163 -DCTN5 HGNC:24594 84516 -DDB1 HGNC:2717 1642 -DDOST HGNC:2728 1650 -DDX10 HGNC:2735 1662 -DDX18 HGNC:2741 8886 -DDX20 HGNC:2743 11218 -DDX21 HGNC:2744 9188 -DDX27 HGNC:15837 55661 -DDX41 HGNC:18674 51428 -DDX47 HGNC:18682 51202 -DDX49 HGNC:18684 54555 -DDX55 HGNC:20085 57696 -DDX56 HGNC:18193 54606 -DGCR8 HGNC:2847 54487 -DHODH HGNC:2867 1723 -DHPS HGNC:2869 1725 -DHX15 HGNC:2738 1665 -DHX33 HGNC:16718 56919 -DHX37 HGNC:17210 57647 -DHX8 HGNC:2749 1659 -DHX9 HGNC:2750 1660 -UTP25 HGNC:28440 27042 -DIMT1 HGNC:30217 27292 -DIS3 HGNC:20604 22894 -DKC1 HGNC:2890 1736 -DLST HGNC:2911 1743 -DMAP1 HGNC:18291 55929 -DNAJA3 HGNC:11808 9093 -DNAJC9 HGNC:19123 23234 -DNM2 HGNC:2974 1785 -DNMT1 HGNC:2976 1786 -DOLK HGNC:23406 22845 -DONSON HGNC:2993 29980 -DPAGT1 HGNC:2995 1798 -DTL HGNC:30288 51514 -DTYMK HGNC:3061 1841 -DYNC1I2 HGNC:2964 1781 -ECD HGNC:17029 11319 -EEF2 HGNC:3214 1938 -EFTUD2 HGNC:30858 9343 -EIF2B1 HGNC:3257 1967 -EIF2B3 HGNC:3259 8891 -EIF2B5 HGNC:3261 8893 -EIF2S1 HGNC:3265 1965 -EIF2S2 HGNC:3266 8894 -EIF2S3 HGNC:3267 1968 -EIF3A HGNC:3271 8661 -EIF3B HGNC:3280 8662 -EIF3C HGNC:3279 8663 -EIF3D HGNC:3278 8664 -EIF3G HGNC:3274 8666 -EIF3I HGNC:3272 8668 -EIF4A3 HGNC:18683 9775 -EIF5A HGNC:3300 1984 -EIF5B HGNC:30793 9669 -EIF6 HGNC:6159 3692 -ELAC2 HGNC:14198 60528 -ELL HGNC:23114 8178 -EPRS HGNC:3418 2058 -ERCC2 HGNC:3434 2068 -ERCC3 HGNC:3435 2071 -ERH HGNC:3447 2079 -EXOSC2 HGNC:17097 23404 -EXOSC3 HGNC:17944 51010 -EXOSC4 HGNC:18189 54512 -EXOSC6 HGNC:19055 118460 -EXOSC7 HGNC:28112 23016 -EXOSC8 HGNC:17035 11340 -CIAO2B HGNC:24261 51647 -FARS2 HGNC:21062 10667 -FARSA HGNC:3592 2193 -FARSB HGNC:17800 10056 -FAU HGNC:3597 2197 -FNTA HGNC:3782 2339 -FNTB HGNC:3785 2342 -FTSJ3 HGNC:17136 117246 -GABPA HGNC:4071 2551 -GAPDH HGNC:4141 2597 -GART HGNC:4163 2618 -GEMIN5 HGNC:20043 25929 -GEMIN8 HGNC:26044 54960 -GFM1 HGNC:13780 85476 -GGPS1 HGNC:4249 9453 -GINS2 HGNC:24575 51659 -GINS3 HGNC:25851 64785 -GINS4 HGNC:28226 84296 -GMPPB HGNC:22932 29925 -GMPS HGNC:4378 8833 -RACK1 HGNC:4399 10399 -GNL3 HGNC:29931 26354 -GPN3 HGNC:30186 51184 -GPS1 HGNC:4549 2873 -GRPEL1 HGNC:19696 80273 -GRWD1 HGNC:21270 83743 -GSPT1 HGNC:4621 2935 -GTF2B HGNC:4648 2959 -GTF2H1 HGNC:4655 2965 -GTF2H2C HGNC:31394 728340 -GTF2H4 HGNC:4658 2968 -GTF3A HGNC:4662 2971 -GTF3C1 HGNC:4664 2975 -GTF3C2 HGNC:4665 2976 -GTF3C5 HGNC:4668 9328 -GTPBP4 HGNC:21535 23560 -GUK1 HGNC:4693 2987 -HARS HGNC:4816 3035 -HAUS1 HGNC:25174 115106 -HAUS5 HGNC:29130 23354 -HCFC1 HGNC:4839 3054 -HDAC3 HGNC:4854 8841 -HEATR1 HGNC:25517 55127 -HINFP HGNC:17850 25988 -HIST1H2AJ HGNC:4727 8331 -HIST2H2AA3 HGNC:4736 8337 -HJURP HGNC:25444 55355 -HNRNPC HGNC:5035 3183 -HNRNPK HGNC:5044 3190 -HNRNPL HGNC:5045 3191 -HNRNPU HGNC:5048 3192 -HSD17B10 HGNC:4800 3028 -HSPA9 HGNC:5244 3313 -HSPD1 HGNC:5261 3329 -HUWE1 HGNC:30892 10075 -HYPK HGNC:18418 25764 -IARS HGNC:5330 3376 -IGBP1 HGNC:5461 3476 -ILF3 HGNC:6038 3609 -IMP3 HGNC:14497 55272 -IMP4 HGNC:30856 92856 -INTS1 HGNC:24555 26173 -INTS3 HGNC:26153 65123 -INTS8 HGNC:26048 55656 -INTS9 HGNC:25592 55756 -IPO13 HGNC:16853 9670 -ISCU HGNC:29882 23479 -ISG20L2 HGNC:25745 81875 -KANSL3 HGNC:25473 55683 -KARS HGNC:6215 3735 -KAT8 HGNC:17933 84148 -KIF11 HGNC:6388 3832 -KIF23 HGNC:6392 9493 -KPNB1 HGNC:6400 3837 -KRI1 HGNC:25769 65095 -KRR1 HGNC:5176 11103 -LARS HGNC:6512 51520 -LAS1L HGNC:25726 81887 -LONP1 HGNC:9479 9361 -LRR1 HGNC:19742 122769 -LSG1 HGNC:25652 55341 -LSM11 HGNC:30860 134353 -LSM12 HGNC:26407 124801 -LSM2 HGNC:13940 57819 -LSM7 HGNC:20470 51690 -LUC7L3 HGNC:24309 51747 -MAD2L1 HGNC:6763 4085 -MAGOH HGNC:6815 4116 -MAK16 HGNC:13703 84549 -MARS HGNC:6898 4141 -MARS2 HGNC:25133 92935 -MASTL HGNC:19042 84930 -MCM3 HGNC:6945 4172 -MCM3AP HGNC:6946 8888 -MCM4 HGNC:6947 4173 -MCM5 HGNC:6948 4174 -MCM7 HGNC:6950 4176 -MDN1 HGNC:18302 23195 -MED11 HGNC:32687 400569 -MED12 HGNC:11957 9968 -MED18 HGNC:25944 54797 -MED27 HGNC:2377 9442 -MED30 HGNC:23032 90390 -MEPCE HGNC:20247 56257 -METTL16 HGNC:28484 79066 -MMS22L HGNC:21475 253714 -MPHOSPH10 HGNC:7213 10199 -MRPL57 HGNC:14514 78988 -MRPL18 HGNC:14477 29074 -MRPL28 HGNC:14484 10573 -MRPL38 HGNC:14033 64978 -MRPL4 HGNC:14276 51073 -MRPL43 HGNC:14517 84545 -MRPL45 HGNC:16651 84311 -MRPL46 HGNC:1192 26589 -MRPL53 HGNC:16684 116540 -MRPS14 HGNC:14049 63931 -MRPS24 HGNC:14510 64951 -MRPS34 HGNC:16618 65993 -MSTO1 HGNC:29678 55154 -MTG2 HGNC:16239 26164 -MVK HGNC:7530 4598 -MYBBP1A HGNC:7546 10514 -MYC HGNC:7553 4609 -NAA10 HGNC:18704 8260 -LSM8 HGNC:20471 51691 -NAA50 HGNC:29533 80218 -NAMPT HGNC:30092 10135 -NAPA HGNC:7641 8775 -CIAO3 HGNC:14179 64428 -NARS HGNC:7643 4677 -NAT10 HGNC:29830 55226 -NCBP1 HGNC:7658 4686 -NCBP2 HGNC:7659 22916 -NDC80 HGNC:16909 10403 -NDUFA13 HGNC:17194 51079 -NEDD8 HGNC:7732 4738 -NELFB HGNC:24324 25920 -NHP2 HGNC:14377 55651 -SNU13 HGNC:7819 4809 -NIP7 HGNC:24328 51388 -NKAP HGNC:29873 79576 -NLE1 HGNC:19889 54475 -NMD3 HGNC:24250 51068 -NMT1 HGNC:7857 4836 -NOC4L HGNC:28461 79050 -NOL10 HGNC:25862 79954 -NOL11 HGNC:24557 25926 -NOL6 HGNC:19910 65083 -NOL9 HGNC:26265 79707 -NOP16 HGNC:26934 51491 -NOP2 HGNC:7867 4839 -NOP56 HGNC:15911 10528 -NOP9 HGNC:19826 161424 -NPLOC4 HGNC:18261 55666 -NSA2 HGNC:30728 10412 -NSF HGNC:8016 4905 -NUDC HGNC:8045 10726 -NUDCD3 HGNC:22208 23386 -NUDT21 HGNC:13870 11051 -NUDT4 HGNC:8051 11163 -NUF2 HGNC:14621 83540 -NUP133 HGNC:18016 55746 -NUP155 HGNC:8063 9631 -NUP160 HGNC:18017 23279 -NUP214 HGNC:8064 8021 -NUP85 HGNC:8734 79902 -NUP88 HGNC:8067 4927 -NUP93 HGNC:28958 9688 -NUS1 HGNC:21042 116150 -NUTF2 HGNC:13722 10204 -NVL HGNC:8070 4931 -NXF1 HGNC:8071 10482 -OGDH HGNC:8124 4967 -OGT HGNC:8127 8473 -LTO1 HGNC:17589 220064 -ORC6 HGNC:17151 23594 -OSGEP HGNC:18028 55644 -PABPC1 HGNC:8554 26986 -PAFAH1B1 HGNC:8574 5048 -PAICS HGNC:8587 10606 -PAK1IP1 HGNC:20882 55003 -PCID2 HGNC:25653 55795 -PCNA HGNC:8729 5111 -PFDN2 HGNC:8867 5202 -PFN1 HGNC:8881 5216 -PGAM1 HGNC:8888 5223 -PGGT1B HGNC:8895 5229 -PGK1 HGNC:8896 5230 -PHB HGNC:8912 5245 -PHB2 HGNC:30306 11331 -PHF5A HGNC:18000 84844 -PKMYT1 HGNC:29650 9088 -PLK1 HGNC:9077 5347 -PLRG1 HGNC:9089 5356 -PMPCA HGNC:18667 23203 -PMPCB HGNC:9119 9512 -PNKP HGNC:9154 11284 -POLA2 HGNC:30073 23649 -POLR1A HGNC:17264 25885 -POLR1B HGNC:20454 84172 -POLR1C HGNC:20194 9533 -POLR2A HGNC:9187 5430 -POLR2B HGNC:9188 5431 -POLR2C HGNC:9189 5432 -POLR2D HGNC:9191 5433 -POLR2E HGNC:9192 5434 -POLR2G HGNC:9194 5436 -POLR2H HGNC:9195 5437 -POLR2I HGNC:9196 5438 -POLR2L HGNC:9199 5441 -POLR3A HGNC:30074 11128 -POLR3C HGNC:30076 10623 -POLR3H HGNC:30349 171568 -POLR3K HGNC:14121 51728 -POLRMT HGNC:9200 5442 -POP1 HGNC:30129 10940 -POP5 HGNC:17689 51367 -PPA1 HGNC:9226 5464 -PPAN HGNC:9227 56342 -PPAT HGNC:9238 5471 -PPIL2 HGNC:9261 23759 -PPP2CA HGNC:9299 5515 -PTPA HGNC:9308 5524 -PPP4C HGNC:9319 5531 -PPWD1 HGNC:28954 23398 -PREB HGNC:9356 10113 -PRELID1 HGNC:30255 27166 -PRIM1 HGNC:9369 5557 -PRMT1 HGNC:5187 3276 -PRMT5 HGNC:10894 10419 -PRPF19 HGNC:17896 27339 -PRPF31 HGNC:15446 26121 -PRPF38A HGNC:25930 84950 -PRPF38B HGNC:25512 55119 -PRPF4 HGNC:17349 9128 -PRPF8 HGNC:17340 10594 -PSMA1 HGNC:9530 5682 -PSMA2 HGNC:9531 5683 -PSMA3 HGNC:9532 5684 -PSMA4 HGNC:9533 5685 -PSMA5 HGNC:9534 5686 -PSMA6 HGNC:9535 5687 -PSMA7 HGNC:9536 5688 -PSMB1 HGNC:9537 5689 -PSMB2 HGNC:9539 5690 -PSMB3 HGNC:9540 5691 -PSMB4 HGNC:9541 5692 -PSMB7 HGNC:9544 5695 -PSMC2 HGNC:9548 5701 -PSMC3 HGNC:9549 5702 -PSMC5 HGNC:9552 5705 -PSMC6 HGNC:9553 5706 -PSMD1 HGNC:9554 5707 -PSMD11 HGNC:9556 5717 -PSMD12 HGNC:9557 5718 -PSMD13 HGNC:9558 5719 -PSMD14 HGNC:16889 10213 -PSMD3 HGNC:9560 5709 -PSMD4 HGNC:9561 5710 -PSMG3 HGNC:22420 84262 -PTPN23 HGNC:14406 25930 -PUF60 HGNC:17042 22827 -PWP2 HGNC:9711 5822 -QARS HGNC:9751 5859 -RABGGTB HGNC:9796 5876 -RACGAP1 HGNC:9804 29127 -RAD21 HGNC:9811 5885 -RAD51C HGNC:9820 5889 -RAD51D HGNC:9823 5892 -RAE1 HGNC:9828 8480 -RAN HGNC:9846 5901 -RANGAP1 HGNC:9854 5905 -RARS2 HGNC:21406 57038 -RBBP6 HGNC:9889 5930 -RBM14 HGNC:14219 10432 -RBM17 HGNC:16944 84991 -RBM8A HGNC:9905 9939 -RBMX HGNC:9910 27316 -RBX1 HGNC:9928 9978 -RCC1 HGNC:1913 1104 -RCL1 HGNC:17687 10171 -RFC2 HGNC:9970 5982 -RFC4 HGNC:9972 5984 -RFC5 HGNC:9973 5985 -RFK HGNC:30324 55312 -RHEB HGNC:10011 6009 -RIOK2 HGNC:18999 55781 -RNF20 HGNC:10062 56254 -RNGTT HGNC:10073 8732 -ROMO1 HGNC:16185 140823 -RPA1 HGNC:10289 6117 -RPA2 HGNC:10290 6118 -RPF2 HGNC:20870 84154 -RPL10A HGNC:10299 4736 -RPL11 HGNC:10301 6135 -RPL12 HGNC:10302 6136 -RPL13 HGNC:10303 6137 -RPL14 HGNC:10305 9045 -RPL18 HGNC:10310 6141 -RPL18A HGNC:10311 6142 -RPL19 HGNC:10312 6143 -RPL23 HGNC:10316 9349 -RPL24 HGNC:10325 6152 -RPL27 HGNC:10328 6155 -RPL27A HGNC:10329 6157 -RPL3 HGNC:10332 6122 -RPL30 HGNC:10333 6156 -RPL35 HGNC:10344 11224 -RPL35A HGNC:10345 6165 -RPL36 HGNC:13631 25873 -RPL37A HGNC:10348 6168 -RPL4 HGNC:10353 6124 -RPL6 HGNC:10362 6128 -RPL8 HGNC:10368 6132 -RPLP0 HGNC:10371 6175 -RPLP1 HGNC:10372 6176 -RPLP2 HGNC:10377 6181 -RPP21 HGNC:21300 79897 -RPP38 HGNC:30329 10557 -RPS11 HGNC:10384 6205 -RPS12 HGNC:10385 6206 -RPS13 HGNC:10386 6207 -RPS15A HGNC:10389 6210 -RPS16 HGNC:10396 6217 -RPS18 HGNC:10401 6222 -RPS19 HGNC:10402 6223 -RPS2 HGNC:10404 6187 -RPS20 HGNC:10405 6224 -RPS21 HGNC:10409 6227 -RPS23 HGNC:10410 6228 -RPS3 HGNC:10420 6188 -RPS4X HGNC:10424 6191 -RPS5 HGNC:10426 6193 -RPS6 HGNC:10429 6194 -RPS7 HGNC:10440 6201 -RPS8 HGNC:10441 6202 -RRM1 HGNC:10451 6240 -RRP1 HGNC:18785 8568 -RRP12 HGNC:29100 23223 -RRS1 HGNC:17083 23212 -RTCB HGNC:26935 51493 -RUVBL2 HGNC:10475 10856 -SACM1L HGNC:17059 22908 -SAE1 HGNC:30660 10055 -SAMM50 HGNC:24276 25813 -SAP18 HGNC:10530 10284 -SARS HGNC:10537 6301 -SARS2 HGNC:17697 54938 -SART3 HGNC:16860 9733 -SBNO1 HGNC:22973 55206 -SDAD1 HGNC:25537 55153 -SDHC HGNC:10682 6391 -SEC13 HGNC:10697 6396 -SEH1L HGNC:30379 81929 -SF1 HGNC:12950 7536 -SF3A2 HGNC:10766 8175 -SF3A3 HGNC:10767 10946 -SF3B1 HGNC:10768 23451 -SF3B2 HGNC:10769 10992 -SF3B3 HGNC:10770 23450 -SF3B5 HGNC:21083 83443 -SKP1 HGNC:10899 6500 -SLC35B1 HGNC:20798 10237 -PRELID3B HGNC:15892 51012 -SLU7 HGNC:16939 10569 -SMC1A HGNC:11111 8243 -SMC2 HGNC:14011 10592 -SMC4 HGNC:14013 10051 -SMU1 HGNC:18247 55234 -SNAPC1 HGNC:11134 6617 -SNAPC2 HGNC:11135 6618 -SNAPC4 HGNC:11137 6621 -SNRNP200 HGNC:30859 23020 -SNRNP25 HGNC:14161 79622 -SNRNP27 HGNC:30240 11017 -SNRNP35 HGNC:30852 11066 -SNRNP70 HGNC:11150 6625 -SNRPA1 HGNC:11152 6627 -SNRPD1 HGNC:11158 6632 -SNRPD2 HGNC:11159 6633 -SNRPD3 HGNC:11160 6634 -SNRPF HGNC:11162 6636 -SNW1 HGNC:16696 22938 -SPATA5L1 HGNC:28762 79029 -SPC24 HGNC:26913 147841 -SPC25 HGNC:24031 57405 -SRBD1 HGNC:25521 55133 -SRP19 HGNC:11300 6728 -SRRM1 HGNC:16638 10250 -SRRT HGNC:24101 51593 -SRSF1 HGNC:10780 6426 -SRSF2 HGNC:10783 6427 -SRSF3 HGNC:10785 6428 -SRSF7 HGNC:10789 6432 -SS18L2 HGNC:15593 51188 -SSU72 HGNC:25016 29101 -SUPT5H HGNC:11469 6829 -SUPT6H HGNC:11470 6830 -SUPV3L1 HGNC:11471 6832 -SYMPK HGNC:22935 8189 -SYS1 HGNC:16162 90196 -TAF1B HGNC:11533 9014 -TAF6 HGNC:11540 6878 -TANGO6 HGNC:25749 79613 -TARS HGNC:11572 6897 -TBCD HGNC:11581 6904 -TBL3 HGNC:11587 10607 -TCP1 HGNC:11655 6950 -TELO2 HGNC:29099 9894 -TFAM HGNC:11741 7019 -TFRC HGNC:11763 7037 -THOC2 HGNC:19073 57187 -THOC3 HGNC:19072 84321 -THOC5 HGNC:19074 8563 -TICRR HGNC:28704 90381 -TIMM10 HGNC:11814 26519 -TIMM13 HGNC:11816 26517 -TIMM23 HGNC:17312 100287932 -TIMM44 HGNC:17316 10469 -TMEM258 HGNC:1164 746 -TNPO3 HGNC:17103 23534 -TOMM22 HGNC:18002 56993 -TOMM40 HGNC:18001 10452 -TONSL HGNC:7801 4796 -TOP1 HGNC:11986 7150 -TOP2A HGNC:11989 7153 -TPT1 HGNC:12022 7178 -TPX2 HGNC:1249 22974 -TRAPPC1 HGNC:19894 58485 -TRAPPC3 HGNC:19942 27095 -TRIAP1 HGNC:26937 51499 -TRMT112 HGNC:26940 51504 -TRMT5 HGNC:23141 57570 -TRNAU1AP HGNC:30813 54952 -TRRAP HGNC:12347 8295 -TSR1 HGNC:25542 55720 -TTC1 HGNC:12391 7265 -TTC27 HGNC:25986 55622 -TTI1 HGNC:29029 9675 -TTI2 HGNC:26262 80185 -TUBB HGNC:20778 203068 -TUBG1 HGNC:12417 7283 -TUBGCP2 HGNC:18599 10844 -TUBGCP3 HGNC:18598 10426 -TUBGCP6 HGNC:18127 85378 -TUFM HGNC:12420 7284 -TUT1 HGNC:26184 64852 -TXN HGNC:12435 7295 -TXNL4A HGNC:30551 10907 -U2AF1 HGNC:12453 7307 -U2AF2 HGNC:23156 11338 -UBA1 HGNC:12469 7317 -UBA52 HGNC:12458 7311 -UBE2L3 HGNC:12488 7332 -UBE2M HGNC:12491 9040 -UBE2N HGNC:12492 7334 -UBL5 HGNC:13736 59286 -UBTF HGNC:12511 7343 -UPF1 HGNC:9962 5976 -UPF2 HGNC:17854 26019 -UQCRC1 HGNC:12585 7384 -UQCRFS1 HGNC:12587 7386 -UROD HGNC:12591 7389 -USP39 HGNC:20071 10713 -USP5 HGNC:12628 8078 -USPL1 HGNC:20294 10208 -UTP15 HGNC:25758 84135 -UTP20 HGNC:17897 27340 -UTP23 HGNC:28224 84294 -UXT HGNC:12641 8409 -VARS HGNC:12651 7407 -VARS2 HGNC:21642 57176 -VCP HGNC:12666 7415 -VPS25 HGNC:28122 84313 -VPS28 HGNC:18178 51160 -WARS HGNC:12729 7453 -BUD23 HGNC:16405 114049 -WDR12 HGNC:14098 55759 -WDR25 HGNC:21064 79446 -WDR3 HGNC:12755 10885 -WDR33 HGNC:25651 55339 -WDR43 HGNC:28945 23160 -WDR61 HGNC:30300 80349 -WDR70 HGNC:25495 55100 -WDR74 HGNC:25529 54663 -WDR75 HGNC:25725 84128 -WDR77 HGNC:29652 79084 -WDR92 HGNC:25176 116143 -WEE1 HGNC:12761 7465 -XAB2 HGNC:14089 56949 -XPO1 HGNC:12825 7514 -XRCC6 HGNC:4055 2547 -YARS HGNC:12840 8565 -YARS2 HGNC:24249 51067 -YRDC HGNC:28905 79693 -ZBTB8OS HGNC:24094 339487 -ZMAT5 HGNC:28046 55954 -ZNF131 HGNC:12915 7690 -ZPR1 HGNC:13051 8882 -ZNF574 HGNC:26166 64763 diff --git a/assets/NEGv1.txt b/assets/NEGv1.txt deleted file mode 100644 index 96401816..00000000 --- a/assets/NEGv1.txt +++ /dev/null @@ -1,929 +0,0 @@ -GENE HGNC_ID ENTREZ_ID -ABCG8 HGNC:13887 64241 -ACCSL HGNC:34391 390110 -ACTL7A HGNC:161 10881 -ACTL7B HGNC:162 10880 -ACTL9 HGNC:28494 284382 -ACTRT1 HGNC:24027 139741 -ADAD1 HGNC:30713 132612 -ADAM18 HGNC:196 8749 -ADAM2 HGNC:198 2515 -ADAM20 HGNC:199 8748 -ADAM30 HGNC:208 11085 -ADH7 HGNC:256 131 -AFM HGNC:316 173 -AICDA HGNC:13203 57379 -AIPL1 HGNC:359 23746 -ALPI HGNC:437 248 -ALPG HGNC:441 251 -ALX3 HGNC:449 257 -AMELX HGNC:461 265 -ANKRD30A HGNC:17234 91074 -ANKRD60 HGNC:16217 140731 -ANTXRL HGNC:27277 195977 -APOA4 HGNC:602 337 -APOBEC1 HGNC:604 339 -APOF HGNC:615 319 -AQP12A HGNC:19941 375318 -AQP8 HGNC:642 343 -ARGFX HGNC:30146 503582 -ART1 HGNC:723 417 -ASB17 HGNC:19769 127247 -ASIC5 HGNC:17537 51802 -ASZ1 HGNC:1350 136991 -ATOH1 HGNC:797 474 -ATP4B HGNC:820 496 -ATP6V1G3 HGNC:18265 127124 -AWAT1 HGNC:23252 158833 -AWAT2 HGNC:23251 158835 -B3GNT6 HGNC:24141 192134 -BANF2 HGNC:16172 140836 -BARHL1 HGNC:953 56751 -BEND2 HGNC:28509 139105 -BHLHE23 HGNC:16093 128408 -BIRC8 HGNC:14878 112401 -BMP10 HGNC:20869 27302 -BMP15 HGNC:1068 9210 -BPIFA1 HGNC:15749 51297 -BPIFA3 HGNC:16204 128861 -BPIFB3 HGNC:16178 359710 -BPIFB6 HGNC:16504 128859 -BPIFC HGNC:16503 254240 -BPY2 HGNC:13508 9083 -BRDT HGNC:1105 676 -BSND HGNC:16512 7809 -C10orf113 HGNC:31447 387638 -C10orf120 HGNC:25707 399814 -C10orf53 HGNC:27421 282966 -C11orf40 HGNC:23986 143501 -C12orf40 HGNC:26846 283461 -C14orf183 HGNC:27285 196913 -NUTM1 HGNC:29919 256646 -C16orf78 HGNC:28479 123970 -C17orf102 HGNC:34412 400591 -C17orf78 HGNC:26831 284099 -DYNAP HGNC:26808 284254 -TEX45 HGNC:24745 374877 -C1orf146 HGNC:24032 388649 -C20orf173 HGNC:16166 140873 -C20orf203 HGNC:26592 284805 -SCP2D1 HGNC:16211 140856 -TEX44 HGNC:28563 165100 -STPG4 HGNC:26850 285051 -PCARE HGNC:34383 388939 -C2orf83 HGNC:25344 56918 -C3orf30 HGNC:26553 152405 -PRR27 HGNC:33193 401137 -DCANP1 HGNC:24459 140947 -C6orf10 HGNC:13922 10665 -C7orf66 HGNC:33712 154907 -C7orf71 HGNC:22364 285941 -C8A HGNC:1352 731 -C8B HGNC:1353 732 -C8orf17 HGNC:17737 100507249 -C8orf86 HGNC:33774 389649 -C9orf53 HGNC:23831 51198 -CABP2 HGNC:1385 51475 -CABP5 HGNC:13714 56344 -CABS1 HGNC:30710 85438 -CACNG2 HGNC:1406 10369 -CACNG3 HGNC:1407 10368 -CACNG5 HGNC:1409 27091 -CATSPER4 HGNC:23220 378807 -CCDC155 HGNC:26520 147872 -CCDC172 HGNC:30524 374355 -CCDC83 HGNC:28535 220047 -CCKAR HGNC:1570 886 -CCL1 HGNC:10609 6346 -CCT8L2 HGNC:15553 150160 -CD200R1L HGNC:24665 344807 -CDCP2 HGNC:27297 200008 -CDX2 HGNC:1806 1045 -CDX4 HGNC:1808 1046 -CDY1 HGNC:1809 9085 -CDY1B HGNC:23920 253175 -CDY2A HGNC:1810 9426 -CDY2B HGNC:23921 203611 -CEACAM7 HGNC:1819 1087 -CELA2A HGNC:24609 63036 -CELA3A HGNC:15944 10136 -CELA3B HGNC:15945 23436 -CER1 HGNC:1862 9350 -CETN1 HGNC:1866 1068 -CFHR2 HGNC:4890 3080 -CFHR5 HGNC:24668 81494 -CHAT HGNC:1912 1103 -CHRNA6 HGNC:15963 8973 -CHRNB3 HGNC:1963 1142 -CLCA1 HGNC:2015 1179 -CLDN17 HGNC:2038 26285 -CLEC2A HGNC:24191 387836 -CLEC3A HGNC:2052 10143 -CLEC6A HGNC:14556 93978 -CLRN1 HGNC:12605 7401 -CNBD1 HGNC:26663 168975 -CNGA2 HGNC:2149 1260 -CNGB3 HGNC:2153 54714 -CNPY1 HGNC:27786 285888 -CNTNAP5 HGNC:18748 129684 -COL20A1 HGNC:14670 57642 -COX7B2 HGNC:24381 170712 -CPXCR1 HGNC:2332 53336 -CRNN HGNC:1230 49860 -CRX HGNC:2383 1406 -CRYGB HGNC:2409 1419 -CSH1 HGNC:2440 1442 -CSHL1 HGNC:2442 1444 -CSN2 HGNC:2447 1447 -CSN3 HGNC:2446 1448 -CST11 HGNC:15959 140880 -CST4 HGNC:2476 1472 -CST5 HGNC:2477 1473 -CST8 HGNC:2480 10047 -CST9 HGNC:13261 128822 -CST9L HGNC:16233 128821 -CSTL1 HGNC:15958 128817 -CT45A2 HGNC:28400 728911 -CT45A4 HGNC:33269 -CT45A5 HGNC:33270 441521 -CT47A11 HGNC:27397 255313 -CTCFL HGNC:16234 140690 -CTRB1 HGNC:2521 1504 -CXorf1 HGNC:2562 -CXorf66 HGNC:33743 347487 -CYLC2 HGNC:2583 1539 -CYP11B1 HGNC:2591 1584 -CYP11B2 HGNC:2592 1585 -CYP26C1 HGNC:20577 340665 -CYP2A13 HGNC:2608 1553 -CYP2C19 HGNC:2621 1557 -CYP4A22 HGNC:20575 284541 -CYP4F8 HGNC:2648 11283 -CYP7A1 HGNC:2651 1581 -DAZ1 HGNC:2682 1617 -DAZ2 HGNC:15964 57055 -DAZ3 HGNC:15965 57054 -DAZ4 HGNC:15966 57135 -DAZL HGNC:2685 1618 -DCAF4L2 HGNC:26657 138009 -DCAF8L1 HGNC:31810 139425 -DDI1 HGNC:18961 414301 -DDX4 HGNC:18700 54514 -DEFA5 HGNC:2764 1670 -DEFA6 HGNC:2765 1671 -DEFB103B HGNC:31702 55894 -DEFB104A HGNC:18115 140596 -DEFB106A HGNC:18088 245909 -DEFB107A HGNC:18086 245910 -DEFB118 HGNC:16196 117285 -DEFB123 HGNC:18103 245936 -DEFB126 HGNC:15900 81623 -DEFB127 HGNC:16206 140850 -DEFB129 HGNC:16218 140881 -DGAT2L6 HGNC:23250 347516 -DGKK HGNC:32395 139189 -DIRC1 HGNC:15760 116093 -DMP1 HGNC:2932 1758 -DMRT1 HGNC:2934 1761 -DMRTB1 HGNC:13913 63948 -DMRTC2 HGNC:13911 63946 -MUCL3 HGNC:21666 135656 -DPRX HGNC:32166 503834 -DRD3 HGNC:3024 1814 -DRGX HGNC:21536 644168 -DSCR4 HGNC:3045 10281 -DSG4 HGNC:21307 147409 -DSPP HGNC:3054 1834 -DTX2 HGNC:15973 113878 -DUSP21 HGNC:20476 63904 -DUX4 HGNC:50800 100288687 -DUX4L7 HGNC:37266 653543 -DUXA HGNC:32179 503835 -EFCAB3 HGNC:26379 146779 -EGR4 HGNC:3241 1961 -ENTHD1 HGNC:26352 150350 -ESX1 HGNC:14865 80712 -EVX1 HGNC:3506 2128 -F13B HGNC:3534 2165 -F9 HGNC:3551 2158 -FABP2 HGNC:3556 2169 -FAM106A HGNC:25682 80039 -FAM47A HGNC:29962 158724 -FAM47B HGNC:26659 170062 -FAM47C HGNC:25301 442444 -FAM71A HGNC:26541 149647 -FAM71B HGNC:28397 153745 -FAM71C HGNC:28594 196472 -SPATA31A7 HGNC:32007 26165 -SPATA31D1 HGNC:37283 389763 -FCRL4 HGNC:18507 83417 -FEZF1 HGNC:22788 389549 -FEZF2 HGNC:13506 55079 -FFAR1 HGNC:4498 2864 -FGF3 HGNC:3681 2248 -FGF4 HGNC:3682 2249 -FGF6 HGNC:3684 2251 -FIGLA HGNC:24669 344018 -FLG2 HGNC:33276 388698 -FMR1NB HGNC:26372 158521 -FNDC7 HGNC:26668 163479 -FNDC9 HGNC:33547 408263 -FOXB1 HGNC:3799 27023 -FOXB2 HGNC:23315 442425 -FOXD4L3 HGNC:18523 286380 -FOXD4L4 HGNC:23762 349334 -FOXE3 HGNC:3808 2301 -FOXN1 HGNC:12765 8456 -FOXR1 HGNC:29980 283150 -FRG2 HGNC:19136 448831 -FRMD7 HGNC:8079 90167 -FSCB HGNC:20494 84075 -FUT5 HGNC:4016 2527 -FUT9 HGNC:4020 10690 -G6PC HGNC:4056 2538 -GABRA1 HGNC:4075 2554 -GABRA6 HGNC:4080 2559 -GAGE1 HGNC:4098 2543 -GAGE2C HGNC:31958 2574 -GALNTL5 HGNC:21725 168391 -GALR1 HGNC:4132 2587 -GALR3 HGNC:4134 8484 -GBP7 HGNC:29606 388646 -GCG HGNC:4191 2641 -GCM2 HGNC:4198 9247 -GDF2 HGNC:4217 2658 -GFRA4 HGNC:13821 64096 -GFRAL HGNC:32789 389400 -GH2 HGNC:4262 2689 -GHRH HGNC:4265 2691 -GHSR HGNC:4267 2693 -GIF HGNC:4268 2694 -GJA9 HGNC:19155 81025 -GJA8 HGNC:4281 2703 -GK2 HGNC:4291 2712 -GKN2 HGNC:24588 200504 -GLRA1 HGNC:4326 2741 -GLRA2 HGNC:4327 2742 -GLT6D1 HGNC:23671 360203 -GML HGNC:4375 2765 -GOLGA6L2 HGNC:26695 283685 -GOT1L1 HGNC:28487 137362 -GPR101 HGNC:14963 83550 -GPR111 HGNC:18991 222611 -GPR119 HGNC:19060 139760 -ADGRG7 HGNC:19241 84873 -GPR139 HGNC:19995 124274 -GPR144 HGNC:18651 347088 -GPR148 HGNC:23623 344561 -GPR151 HGNC:23624 134391 -GPR152 HGNC:23622 390212 -GPR26 HGNC:4481 2849 -GPR31 HGNC:4486 2853 -GPR32 HGNC:4487 2854 -GPR45 HGNC:4503 11250 -GPR50 HGNC:4506 9248 -GPR52 HGNC:4508 9293 -GPR78 HGNC:4528 27201 -GPRC6A HGNC:18510 222545 -GPX5 HGNC:4557 2880 -GPX6 HGNC:4558 257202 -GRK1 HGNC:10013 6011 -GRM4 HGNC:4596 2914 -GRM5 HGNC:4597 2915 -GRM6 HGNC:4598 2916 -GSC2 HGNC:4613 2928 -GSTA5 HGNC:19662 221357 -GSX1 HGNC:20374 219409 -GSX2 HGNC:24959 170825 -GUCA2A HGNC:4682 2980 -GUCY2F HGNC:4691 2986 -H1FOO HGNC:18463 132243 -H2BFM HGNC:27867 286436 -H2BFWT HGNC:27252 158983 -HAO1 HGNC:4809 54363 -HCRTR2 HGNC:4849 3062 -HDGFL1 HGNC:21095 154150 -HHLA1 HGNC:4904 10086 -HIST1H2AA HGNC:18729 221613 -HIST1H2BA HGNC:18730 255626 -HIST1H4G HGNC:4792 8369 -HMX1 HGNC:5017 3166 -HOXB1 HGNC:5111 3211 -HOXD12 HGNC:5135 3238 -HRG HGNC:5181 3273 -HRH3 HGNC:5184 11255 -HSFY1 HGNC:18568 86614 -HSFY2 HGNC:23950 159119 -HTN3 HGNC:5284 3347 -HTR1A HGNC:5286 3350 -HTR2C HGNC:5295 3358 -HTR3C HGNC:24003 170572 -HTR3D HGNC:24004 200909 -HTR3E HGNC:24005 285242 -HTR5A HGNC:5300 3361 -HTR6 HGNC:5301 3362 -IAPP HGNC:5329 3375 -IFIT1B HGNC:23442 439996 -IFNA10 HGNC:5418 3446 -IFNA14 HGNC:5420 3448 -IFNA16 HGNC:5421 3449 -IFNA17 HGNC:5422 3451 -IFNA2 HGNC:5423 3440 -IFNA21 HGNC:5424 3452 -IFNA4 HGNC:5425 3441 -IFNA5 HGNC:5426 3442 -IFNA6 HGNC:5427 3443 -IFNA7 HGNC:5428 3444 -IFNA8 HGNC:5429 3445 -IFNB1 HGNC:5434 3456 -IFNK HGNC:21714 56832 -IFNW1 HGNC:5448 3467 -IL12B HGNC:5970 3593 -IL13 HGNC:5973 3596 -IL17A HGNC:5981 3605 -IL17F HGNC:16404 112744 -IL1F10 HGNC:15552 84639 -IL21 HGNC:6005 59067 -IL22 HGNC:14900 50616 -IL25 HGNC:13765 64806 -IL26 HGNC:17119 55801 -IFNL2 HGNC:18364 282616 -IFNL3 HGNC:18365 282617 -IFNL1 HGNC:18363 282618 -IL3 HGNC:6011 3562 -IL31 HGNC:19372 386653 -IL36A HGNC:15562 27179 -IL36B HGNC:15564 27177 -IL36RN HGNC:15561 26525 -IL9 HGNC:6029 3578 -INS HGNC:6081 3630 -INSL5 HGNC:6088 10022 -INSL6 HGNC:6089 11172 -INSM2 HGNC:17539 84684 -INSRR HGNC:6093 3645 -IQCF1 HGNC:28607 132141 -IRGC HGNC:28835 56269 -ISX HGNC:28084 91464 -ITIH6 HGNC:28907 347365 -IZUMO2 HGNC:28518 126123 -KCNA10 HGNC:6219 3744 -KCNB2 HGNC:6232 9312 -KCNG4 HGNC:19697 93107 -KCNK10 HGNC:6273 54207 -KCNK16 HGNC:14464 83795 -KCNK18 HGNC:19439 338567 -KCNV1 HGNC:18861 27012 -KHDC3L HGNC:33699 154288 -KIF2B HGNC:29443 84643 -KIR2DL1 HGNC:6329 3802 -KIR3DL3 HGNC:16312 115653 -KLK12 HGNC:6360 43849 -KLK9 HGNC:6370 284366 -KRT2 HGNC:6439 3849 -KRT25 HGNC:30839 147183 -KRT26 HGNC:30840 353288 -KRT28 HGNC:30842 162605 -KRT33A HGNC:6450 3883 -KRT35 HGNC:6453 3886 -KRT36 HGNC:6454 8689 -KRT37 HGNC:6455 8688 -KRT38 HGNC:6456 8687 -KRT40 HGNC:26707 125115 -KRT71 HGNC:28927 112802 -KRT73 HGNC:28928 319101 -KRT74 HGNC:28929 121391 -KRT75 HGNC:24431 9119 -KRT76 HGNC:24430 51350 -KRT77 HGNC:20411 374454 -KRT78 HGNC:28926 196374 -KRT82 HGNC:6459 3888 -KRT84 HGNC:6461 3890 -KRT85 HGNC:6462 3891 -KRT86 HGNC:6463 3892 -KRT9 HGNC:6447 3857 -KRTAP1-1 HGNC:16772 81851 -KRTAP10-1 HGNC:22966 386677 -KRTAP10-10 HGNC:22972 353333 -KRTAP10-11 HGNC:20528 386678 -KRTAP10-12 HGNC:20533 386685 -KRTAP10-2 HGNC:22967 386679 -KRTAP10-4 HGNC:20521 386672 -KRTAP10-5 HGNC:22969 386680 -KRTAP10-6 HGNC:20523 386674 -KRTAP10-7 HGNC:22970 386675 -KRTAP10-8 HGNC:20525 386681 -KRTAP10-9 HGNC:22971 386676 -KRTAP11-1 HGNC:18922 337880 -KRTAP13-1 HGNC:18924 140258 -KRTAP13-2 HGNC:18923 337959 -KRTAP13-3 HGNC:18925 337960 -KRTAP13-4 HGNC:18926 284827 -KRTAP15-1 HGNC:18927 254950 -KRTAP17-1 HGNC:18917 83902 -KRTAP19-3 HGNC:18938 337970 -KRTAP23-1 HGNC:18928 337963 -KRTAP26-1 HGNC:33760 388818 -KRTAP3-2 HGNC:16779 83897 -KRTAP4-11 HGNC:18911 653240 -KRTAP4-12 HGNC:16776 83755 -KRTAP4-2 HGNC:18900 85291 -KRTAP4-4 HGNC:16928 84616 -KRTAP4-7 HGNC:18898 100132476 -KRTAP5-2 HGNC:23597 440021 -KRTAP9-2 HGNC:16926 83899 -KRTAP9-3 HGNC:16927 83900 -KRTAP9-4 HGNC:18902 85280 -LALBA HGNC:6480 3906 -LBX1 HGNC:16960 10660 -LCN9 HGNC:17442 392399 -LCT HGNC:6530 3938 -LGALS13 HGNC:15449 29124 -LGALS14 HGNC:30054 56891 -LHFPL5 HGNC:21253 222662 -LHX3 HGNC:6595 8022 -LHX5 HGNC:14216 64211 -LIM2 HGNC:6610 3982 -LIN28A HGNC:15986 79727 -LIPM HGNC:23455 340654 -LOR HGNC:6663 4014 -LRIT1 HGNC:23404 26103 -LRIT2 HGNC:23443 340745 -LRRC10 HGNC:20264 376132 -LUZP4 HGNC:24971 51213 -LYZL1 HGNC:30502 84569 -LYZL2 HGNC:29613 119180 -LYZL6 HGNC:29614 57151 -MAGEA10 HGNC:6797 4109 -MAGEA11 HGNC:6798 4110 -MAGEB1 HGNC:6808 4112 -MAGEB10 HGNC:25377 139422 -MAGEB18 HGNC:28515 286514 -MAGEB3 HGNC:6810 4114 -MAGEB4 HGNC:6811 4115 -MAGEC3 HGNC:23798 139081 -MAS1 HGNC:6899 4142 -MAS1L HGNC:13961 116511 -MBD3L1 HGNC:15774 85509 -MBD3L2 HGNC:18532 125997 -MBL2 HGNC:6922 4153 -MC2R HGNC:6930 4158 -MC3R HGNC:6931 4159 -MC5R HGNC:6933 4161 -MEP1A HGNC:7015 4224 -MEP1B HGNC:7020 4225 -MEPE HGNC:13361 56955 -MFRP HGNC:18121 83552 -MMD2 HGNC:30133 221938 -MMP20 HGNC:7167 9313 -MMP21 HGNC:7170 8511 -MMP26 HGNC:14249 56547 -MMP27 HGNC:14250 64066 -MOGAT3 HGNC:23249 346606 -MORC1 HGNC:7198 27136 -MRGPRD HGNC:29626 116512 -MRGPRX1 HGNC:17962 259249 -MRGPRX2 HGNC:17983 117194 -MRGPRX4 HGNC:17617 117196 -MS4A10 HGNC:13368 341116 -MS4A13 HGNC:16674 503497 -MS4A5 HGNC:13374 64232 -MSGN1 HGNC:14907 343930 -MT1B HGNC:7394 4490 -MTNR1B HGNC:7464 4544 -MUC17 HGNC:16800 140453 -MUC7 HGNC:7518 4589 -MYBPC3 HGNC:7551 4607 -MYF5 HGNC:7565 4617 -NANOGNB HGNC:24958 360030 -NANOS2 HGNC:23292 339345 -NCR2 HGNC:6732 9436 -NDST4 HGNC:20779 64579 -NEUROD2 HGNC:7763 4761 -NEUROD4 HGNC:13802 58158 -NEUROD6 HGNC:13804 63974 -NEUROG1 HGNC:7764 4762 -NKX2-1 HGNC:11825 7080 -NKX2-2 HGNC:7835 4821 -NLRP4 HGNC:22943 147945 -NLRP5 HGNC:21269 126206 -NLRP8 HGNC:22940 126205 -NLRP9 HGNC:22941 338321 -NMS HGNC:32203 129521 -NOBOX HGNC:22448 135935 -NOTO HGNC:31839 344022 -NOX3 HGNC:7890 50508 -NPFFR1 HGNC:17425 64106 -NPHS2 HGNC:13394 7827 -NPSR1 HGNC:23631 387129 -NPVF HGNC:13782 64111 -NR2E1 HGNC:7973 7101 -NYX HGNC:8082 60506 -OC90 HGNC:8100 729330 -OLIG2 HGNC:9398 10215 -OLIG3 HGNC:18003 167826 -OPALIN HGNC:20707 93377 -OPN1LW HGNC:9936 5956 -OPN5 HGNC:19992 221391 -OR10A2 HGNC:8161 341276 -OR10A4 HGNC:15130 283297 -OR10A5 HGNC:15131 144124 -OR10H1 HGNC:8172 26539 -OR10H2 HGNC:8173 26538 -OR10H3 HGNC:8174 26532 -OR10J1 HGNC:8175 26476 -OR10R2 HGNC:14820 343406 -OR10S1 HGNC:14807 219873 -OR10X1 HGNC:14995 128367 -OR10Z1 HGNC:14996 128368 -OR11A1 HGNC:8176 26531 -OR12D2 HGNC:8178 26529 -OR12D3 HGNC:13963 81797 -OR13C3 HGNC:14704 138803 -OR13D1 HGNC:14695 286365 -OR14A16 HGNC:15022 284532 -OR1A1 HGNC:8179 8383 -OR1A2 HGNC:8180 26189 -OR1B1 HGNC:8181 347169 -OR1D2 HGNC:8183 4991 -OR1E1 HGNC:8189 8387 -OR1E2 HGNC:8190 8388 -OR1G1 HGNC:8204 8390 -OR1L6 HGNC:8218 392390 -OR1N2 HGNC:15111 138882 -OR1S1 HGNC:8227 219959 -OR1S2 HGNC:15141 219958 -OR2AK2 HGNC:19569 391191 -OR2AT4 HGNC:19620 341152 -OR2C1 HGNC:8242 4993 -OR2C3 HGNC:15005 81472 -OR2D2 HGNC:8244 120776 -OR2D3 HGNC:15146 120775 -OR2F1 HGNC:8246 26211 -OR2G2 HGNC:15007 81470 -OR2G3 HGNC:15008 81469 -OR2H1 HGNC:8252 26716 -OR2J2 HGNC:8260 26707 -OR2L3 HGNC:15009 391192 -OR2T1 HGNC:8277 26696 -OR2T10 HGNC:19573 127069 -OR2T12 HGNC:19592 127064 -OR2T2 HGNC:14725 401992 -OR2T27 HGNC:31252 403239 -OR2T33 HGNC:31255 391195 -OR2T4 HGNC:15016 127074 -OR2T5 HGNC:15017 401993 -OR2W1 HGNC:8281 26692 -OR3A1 HGNC:8282 4994 -OR3A2 HGNC:8283 4995 -OR3A3 HGNC:8284 8392 -OR4C11 HGNC:15167 219429 -OR4C3 HGNC:14697 256144 -OR4D1 HGNC:8293 26689 -OR4D10 HGNC:15173 390197 -OR4D11 HGNC:15174 219986 -OR4D9 HGNC:15178 390199 -OR4K17 HGNC:15355 390436 -OR51B6 HGNC:19600 390058 -OR51D1 HGNC:15193 390038 -OR51F2 HGNC:15197 119694 -OR51T1 HGNC:15205 401665 -OR51V1 HGNC:19597 283111 -OR52A1 HGNC:8318 23538 -OR52A5 HGNC:19580 390054 -OR52B2 HGNC:15207 255725 -OR52B6 HGNC:15211 340980 -OR52E8 HGNC:15217 390079 -OR52I2 HGNC:15221 143502 -OR52K2 HGNC:15223 119774 -OR52L1 HGNC:14785 338751 -OR52M1 HGNC:15225 119772 -OR52R1 HGNC:15235 119695 -OR52W1 HGNC:15239 120787 -OR56A1 HGNC:14781 120796 -OR56A4 HGNC:14791 120793 -OR56B1 HGNC:15245 387748 -OR5AU1 HGNC:15362 390445 -OR5C1 HGNC:8331 392391 -OR5I1 HGNC:8347 10798 -OR5M1 HGNC:8352 390168 -OR5M10 HGNC:15290 390167 -OR5P2 HGNC:14783 120065 -OR5P3 HGNC:14784 120066 -OR5R1 HGNC:14841 219479 -OR5T1 HGNC:14821 390155 -OR5T2 HGNC:15296 219464 -OR5T3 HGNC:15297 390154 -OR5V1 HGNC:13972 81696 -OR5W2 HGNC:15299 390148 -OR6A2 HGNC:15301 8590 -OR6K6 HGNC:15033 128371 -OR6S1 HGNC:15363 341799 -OR6V1 HGNC:15090 346517 -OR7A17 HGNC:8363 26333 -OR7C2 HGNC:8374 26658 -OR7D4 HGNC:8380 125958 -OR7G2 HGNC:8466 390882 -OR8A1 HGNC:8469 390275 -OR8B8 HGNC:8477 26493 -OR8G5 HGNC:19622 219865 -OR8U1 HGNC:19611 219417 -OR9Q2 HGNC:15328 219957 -OTOP1 HGNC:19656 133060 -OTOP3 HGNC:19658 347741 -OTOR HGNC:8517 56914 -OTP HGNC:8518 23440 -OTUD6A HGNC:32312 139562 -OTX2 HGNC:8522 5015 -PAGE3 HGNC:4110 139793 -PANX3 HGNC:20573 116337 -PASD1 HGNC:20686 139135 -PAX1 HGNC:8615 5075 -PAX4 HGNC:8618 5078 -PBOV1 HGNC:21079 59351 -PDCL2 HGNC:29524 132954 -PDE6H HGNC:8790 5149 -PDILT HGNC:27338 204474 -PDX1 HGNC:6107 3651 -PDYN HGNC:8820 5173 -PGK2 HGNC:8898 5232 -PGLYRP2 HGNC:30013 114770 -PGLYRP3 HGNC:30014 114771 -PIWIL1 HGNC:9007 9271 -PIWIL3 HGNC:18443 440822 -PKD1L3 HGNC:21716 342372 -PLA2G2E HGNC:13414 30814 -PLA2G2F HGNC:30040 64600 -PLA2G4E HGNC:24791 123745 -OOSP2 HGNC:26699 219990 -PNLIP HGNC:9155 5406 -PNLIPRP1 HGNC:9156 5407 -PNLIPRP2 HGNC:9157 5408 -PNPLA5 HGNC:24888 150379 -POM121L12 HGNC:25369 285877 -POTEA HGNC:33893 340441 -POTED HGNC:23822 317754 -POTEG HGNC:33896 404785 -POTEH HGNC:133 23784 -POU3F4 HGNC:9217 5456 -POU4F2 HGNC:9219 5458 -POU4F3 HGNC:9220 5459 -POU5F2 HGNC:26367 134187 -PPP3R2 HGNC:9318 5535 -PRAMEF1 HGNC:28840 65121 -PRAMEF19 HGNC:24908 645414 -PRAMEF2 HGNC:28841 65122 -PRAMEF3 HGNC:14087 -PRAMEF4 HGNC:31971 400735 -PRAMEF7 HGNC:28415 441871 -PRB1 HGNC:9337 5542 -PRB4 HGNC:9340 5545 -PRDM13 HGNC:13998 59336 -PRDM14 HGNC:14001 63978 -PRDM7 HGNC:9351 11105 -PRDM9 HGNC:13994 56979 -PRG3 HGNC:9363 10394 -PRLH HGNC:17945 51052 -PRLHR HGNC:4464 2834 -PROP1 HGNC:9455 5626 -PRSS33 HGNC:30405 260429 -PRSS37 HGNC:29211 136242 -PRSS38 HGNC:29625 339501 -PRSS41 HGNC:30715 360226 -PRSS55 HGNC:30824 203074 -PRSS58 HGNC:39125 136541 -PRY2 HGNC:21504 442862 -PSKH2 HGNC:18997 85481 -PTF1A HGNC:23734 256297 -RAX HGNC:18662 30062 -RAX2 HGNC:18286 84839 -RBM46 HGNC:28401 166863 -RBMXL2 HGNC:17886 27288 -RBMY1A1 HGNC:9912 5940 -RBMY1B HGNC:23914 378948 -RBMY1D HGNC:23915 378949 -RBMY1E HGNC:23916 378950 -RBMY1F HGNC:23974 159163 -RBMY1J HGNC:23917 378951 -RBP3 HGNC:9921 5949 -RBPJL HGNC:13761 11317 -RD3 HGNC:19689 343035 -RDH8 HGNC:14423 50700 -REG3A HGNC:8601 5068 -RESP18 HGNC:33762 389075 -RETNLB HGNC:20388 84666 -REXO1L1 HGNC:24660 254958 -RFPL3 HGNC:9980 10738 -RFPL4B HGNC:33264 442247 -RFX6 HGNC:21478 222546 -RHO HGNC:10012 6010 -RHOXF2 HGNC:30011 84528 -RNASE10 HGNC:19275 338879 -RNASE11 HGNC:19269 122651 -RNASE12 HGNC:24211 493901 -RNASE13 HGNC:25285 440163 -RNASE8 HGNC:19277 122665 -RNASE9 HGNC:20673 390443 -RND2 HGNC:18315 8153 -RNF113B HGNC:17267 140432 -RNF17 HGNC:10060 56163 -RP1 HGNC:10263 6101 -RP1L1 HGNC:15946 94137 -RPE65 HGNC:10294 6121 -RPTN HGNC:26809 126638 -RS1 HGNC:10457 6247 -RTP1 HGNC:28580 132112 -RTP2 HGNC:32486 344892 -RXFP2 HGNC:17318 122042 -RXFP3 HGNC:24883 51289 -S100A7A HGNC:21657 338324 -S100G HGNC:1436 795 -SAGE1 HGNC:30369 55511 -SAMD7 HGNC:25394 344658 -SCGB1D1 HGNC:18395 10648 -SCN10A HGNC:10582 6336 -SCRT2 HGNC:15952 85508 -SDR9C7 HGNC:29958 121214 -SEC14L3 HGNC:18655 266629 -SEMG2 HGNC:10743 6407 -SEPT14 HGNC:33280 346288 -SERPINA12 HGNC:18359 145264 -SERPINA7 HGNC:11583 6906 -SERPINA9 HGNC:15995 327657 -SERPINB12 HGNC:14220 89777 -SHCBP1L HGNC:16788 81626 -SHOX HGNC:10853 6473 -SI HGNC:10856 6476 -SIGLECL1 HGNC:26856 284369 -SIX6 HGNC:10892 4990 -SLC10A2 HGNC:10906 6555 -SLC13A1 HGNC:10916 6561 -SLC34A1 HGNC:11019 6569 -SLC17A6 HGNC:16703 57084 -SLC18A3 HGNC:10936 6572 -SLC22A12 HGNC:17989 116085 -SLC22A13 HGNC:8494 9390 -SLC22A24 HGNC:28542 283238 -SLC22A25 HGNC:32935 387601 -SLC22A6 HGNC:10970 9356 -SLC22A8 HGNC:10972 9376 -SLC22A9 HGNC:16261 114571 -SLC25A2 HGNC:22921 83884 -SLC25A31 HGNC:25319 83447 -SLC2A2 HGNC:11006 6514 -SLC2A7 HGNC:13445 155184 -SLC32A1 HGNC:11018 140679 -SLC34A1 HGNC:11019 6569 -SLC36A3 HGNC:19659 285641 -SLC39A12 HGNC:20860 221074 -SLC6A18 HGNC:26441 348932 -SLC6A5 HGNC:11051 9152 -SLC6A7 HGNC:11054 6534 -SLC7A13 HGNC:23092 157724 -SLCO1B1 HGNC:10959 10599 -SLCO6A1 HGNC:23613 133482 -SLITRK1 HGNC:20297 114798 -SOHLH1 HGNC:27845 402381 -SOX1 HGNC:11189 6656 -SOX14 HGNC:11193 8403 -SP8 HGNC:19196 221833 -SPACA1 HGNC:14967 81833 -SPACA5 HGNC:31353 389852 -SPACA7 HGNC:29575 122258 -SPATA16 HGNC:29935 83893 -SPATA21 HGNC:28026 374955 -SPEM1 HGNC:32429 374768 -SPHAR HGNC:16957 10638 -SPINK14 HGNC:33825 408187 -SPO11 HGNC:11250 23626 -SPPL2C HGNC:28902 162540 -SPRR4 HGNC:23173 163778 -SSTR4 HGNC:11333 6754 -SSX3 HGNC:11337 10214 -SSX5 HGNC:11339 6758 -SSX7 HGNC:19653 280658 -SSX8 HGNC:19654 280659 -SSX9 HGNC:19655 280660 -STATH HGNC:11369 6779 -SULT6B1 HGNC:33433 391365 -SUN5 HGNC:16252 140732 -TBXT HGNC:11515 6862 -TAAR1 HGNC:17734 134864 -TAAR2 HGNC:4514 9287 -TAAR5 HGNC:30236 9038 -TAAR6 HGNC:20978 319100 -TAAR8 HGNC:14964 83551 -TAAR9 HGNC:20977 134860 -TAS1R2 HGNC:14905 80834 -TAS2R1 HGNC:14909 50834 -TAS2R13 HGNC:14919 50838 -TAS2R16 HGNC:14921 50833 -TAS2R39 HGNC:18886 259285 -TAS2R40 HGNC:18885 259286 -TAS2R41 HGNC:18883 259287 -TAS2R42 HGNC:18888 353164 -TAS2R43 HGNC:18875 259289 -TAS2R46 HGNC:18877 259292 -TAS2R50 HGNC:18882 259296 -TAS2R60 HGNC:20639 338398 -TAS2R7 HGNC:14913 50837 -TAS2R8 HGNC:14915 50836 -TAS2R9 HGNC:14917 50835 -TBC1D21 HGNC:28536 161514 -TBC1D29 HGNC:24509 26083 -TBL1Y HGNC:18502 90665 -TBPL2 HGNC:19841 387332 -TBR1 HGNC:11590 10716 -TBX10 HGNC:11593 347853 -ELOA2 HGNC:30771 51224 -ELOA3 HGNC:24617 162699 -TCHHL1 HGNC:31796 126637 -TCP10L2 HGNC:21254 401285 -TEDDM1 HGNC:30233 127670 -TEX101 HGNC:30722 83639 -TEX13A HGNC:11735 56157 -TEX28 HGNC:2563 1527 -SPATA32 HGNC:26349 124783 -TFAP2D HGNC:15581 83741 -TFDP3 HGNC:24603 51270 -TGIF2LX HGNC:18570 90316 -TGIF2LY HGNC:18569 90655 -TGM6 HGNC:16255 343641 -TKTL2 HGNC:25313 84076 -TLX1 HGNC:5056 3195 -TMEM132D HGNC:29411 121256 -TMEM174 HGNC:28187 134288 -TMEM207 HGNC:33705 131920 -TMEM225 HGNC:32390 338661 -TMIGD1 HGNC:32431 388364 -TMPRSS11A HGNC:27954 339967 -TMPRSS11B HGNC:25398 132724 -TMPRSS11F HGNC:29994 389208 -TMPRSS12 HGNC:28779 283471 -TMPRSS15 HGNC:9490 5651 -TNR HGNC:11953 7143 -TPD52L3 HGNC:23382 89882 -TPH2 HGNC:20692 121278 -TPRX1 HGNC:32174 284355 -TPTE HGNC:12023 7179 -TREML4 HGNC:30807 285852 -TRHR HGNC:12299 7201 -TRIM40 HGNC:18736 135644 -TRIM42 HGNC:19014 287015 -TRIM43 HGNC:19015 129868 -TRIM48 HGNC:19021 79097 -TRIM49 HGNC:13431 57093 -TRIM51 HGNC:19023 84767 -TRIM60 HGNC:21162 166655 -TRIM67 HGNC:31859 440730 -TRIML1 HGNC:26698 339976 -TRPC5 HGNC:12337 7224 -TRPC7 HGNC:20754 57113 -TRPM1 HGNC:7146 4308 -TRPV5 HGNC:3145 56302 -TSGA13 HGNC:12369 114960 -TSHB HGNC:12372 7252 -TSPAN16 HGNC:30725 26526 -TSPO2 HGNC:21256 222642 -TSPY1 HGNC:12381 7258 -TSPYL6 HGNC:14521 388951 -TSSK1B HGNC:14968 83942 -TSSK2 HGNC:11401 23617 -TXNDC8 HGNC:31454 255220 -TYR HGNC:12442 7299 -UBQLN3 HGNC:12510 50613 -UMOD HGNC:12559 7369 -UROC1 HGNC:26444 131669 -USP17L2 HGNC:34434 377630 -USP26 HGNC:13485 83844 -USP29 HGNC:18563 57663 -UTS2R HGNC:4468 2837 -VAX1 HGNC:12660 11023 -VCX3A HGNC:18159 51481 -VHLL HGNC:30666 391104 -VN1R2 HGNC:19872 317701 -VN1R4 HGNC:19871 317703 -VN1R5 HGNC:19870 317705 -VPREB1 HGNC:12709 7441 -VRTN HGNC:20223 55237 -VSX2 HGNC:1975 338917 -WFDC10A HGNC:16139 140832 -WFDC11 HGNC:20478 259239 -WFDC9 HGNC:20380 259240 -XAGE2 HGNC:4112 9502 -XAGE5 HGNC:30930 170627 -XKR7 HGNC:23062 343702 -ZAN HGNC:12857 7455 -ZCCHC13 HGNC:31749 389874 -RTL4 HGNC:25214 340595 -ZG16 HGNC:30961 653808 -ZIC3 HGNC:12874 7547 -ZIM3 HGNC:16366 114026 -CBLL2 HGNC:26371 158506 -ZNF648 HGNC:18190 127665 -ZNF679 HGNC:28650 168417 -ZNF804B HGNC:21958 219578 -ZNRF4 HGNC:17726 148066 -ZP2 HGNC:13188 7783 -ZP4 HGNC:15770 57829 -ZSWIM2 HGNC:30990 151112 - diff --git a/bin/BAGEL.py b/bin/BAGEL.py index 6077e5dc..94bd734b 100755 --- a/bin/BAGEL.py +++ b/bin/BAGEL.py @@ -1,5 +1,43 @@ #!/usr/bin/env python +# --------------------------------- +# BAGEL: Bayesian Analysis of Gene EssentaLity +# (c) Traver Hart , Eiru Kim 2017. + +# Acknowledgements: John McGonigle +# modified 10/2019 +# Free to modify and redistribute with attribution +# --------------------------------- + +# ------------------------------------ +# constants + +""" +MIT License + +Copyright (c) 2020 Hart Lab + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. +""" + + + import click import numpy as np import pandas as pd @@ -54,17 +92,7 @@ def full_process_value(self, ctx, value): return value -# --------------------------------- -# BAGEL: Bayesian Analysis of Gene EssentaLity -# (c) Traver Hart , Eiru Kim 2017. -# Acknowledgements: John McGonigle -# modified 10/2019 -# Free to modify and redistribute with attribution -# --------------------------------- - -# ------------------------------------ -# constants @@ -822,7 +850,7 @@ def calculate_bayes_factors( multiple_factor = equalise_sgrna_no / float(len(gene2rna[g])) bf_norm[g] = targetbf[g] * multiple_factor - ''' + ''' if bf_std[rnatag] == 0.0: bf_norm[rnatag] = float('inf') else: @@ -934,7 +962,7 @@ def calculate_bayes_factors( fp.close() - + # # print out results From 54f65fe29a0ee106445922a5f8ff0eb3febe7d87 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Fri, 18 Aug 2023 15:10:19 +0200 Subject: [PATCH 062/133] add R script to generate more output plots (some modifications from original to fix bugs and make it run) --- bin/cigar_parser.R | 3 +- bin/plotter.R | 665 +++++++++++++++++++++++++++++ conf/modules.config | 4 + modules/local/cigar_parser.nf | 2 +- modules/local/crisprseq_plotter.nf | 42 ++ workflows/crisprseq_targeted.nf | 19 +- 6 files changed, 727 insertions(+), 8 deletions(-) create mode 100755 bin/plotter.R create mode 100644 modules/local/crisprseq_plotter.nf diff --git a/bin/cigar_parser.R b/bin/cigar_parser.R index 6bb972ca..2018d686 100755 --- a/bin/cigar_parser.R +++ b/bin/cigar_parser.R @@ -946,7 +946,8 @@ if (dim(alignment_info)[1] != 0){ dels <- separated_indels %>% filter(Modification == "del") dels_count <- dim(dels)[1] if ( t_type == "dels-out" || t_type == "dels-in"){ - dels_count <- dels_count - t_reads + t_in_dels <- dels %>% filter(Ids %in% t_ids[[1]]) + dels_count <- dels_count - dim(t_in_dels)[1] } ins <- separated_indels %>% filter(Modification == "ins") ins_count <- dim(ins)[1] diff --git a/bin/plotter.R b/bin/plotter.R new file mode 100755 index 00000000..10ab023d --- /dev/null +++ b/bin/plotter.R @@ -0,0 +1,665 @@ +#!/usr/bin/env Rscript + +############################ +#### Plot editing results +#### author: Marta Sanvicente +#### modified by: Júlia Mir @mirpedrol +#### Released under the MIT license. See git repository (https://github.com/nf-core/crisprseq) for full license text. +#### Original code https://bitbucket.org/synbiolab/crispr-a_nextflow/src/master/bin/get_plots.R +############################ + +args = commandArgs(trailingOnly=TRUE) + +library(ggplot2) +library(plyr) +library(dplyr) +library(seqinr) +library(ShortRead) +library(ggpubr) +library(ggmsa) +library(seqmagick) +library(stringr) +library(tidyr) +library(ggseqlogo) +library(plotly) +library(cowplot) +library(optparse) + +#################################### +### Load command line arguments #### +#################################### + +option_list = list( + make_option(c("-i", "--indels_info"), type="character", default=NULL, + help="CSV with information of INDEL editions", metavar="character"), + make_option(c("-r", "--reference"), type="character", default=NULL, + help="Reference fasta file", metavar="character"), + make_option(c("-g", "--gRNA_sequence"), type="character", default=NULL, + help="gRNA sequence", metavar="character"), + make_option(c("-n", "--sample_name"), type="character", default=NULL, + help="Sample ID", metavar="character"), + make_option(c("-c", "--cut_site"), type="numeric", default=NULL, + help="Cut position", metavar="numeric"), + make_option(c("-s", "--substitutions_info"), type="character", default=NULL, + help="CSV with information of substitution editions", metavar="character") +); + +opt_parser = OptionParser(option_list=option_list); +opt = parse_args(opt_parser); + +sample_name <- opt$sample_name +indels_info <- opt$indels_info +reference <- opt$reference +gR <- opt$gRNA_sequence +substitutions_info <- opt$substitutions_info +rel_cut_site <- as.numeric(opt$cut_site) + +data <- read.csv(indels_info) +ref_seq <- readFasta(reference) +subs_plup <- read.csv(substitutions_info, row.names = 1) + + +###################### +##### CRISPR-GA-1 like plot https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4184265/ +###################### + +plotIndels_gg <- function(indels_data, cut){ + # Split insertions from deletions + l <- length(indels_data$Modification) + indels_data$wt_reads[1] + data$t_reads[1] + dels <- indels_data %>% filter(Modification == "del") + ins <- indels_data %>% filter(Modification == "ins") + + #Metadata deletion + if (length(dels$X)>0){ + metadels <- as.data.frame(table(dels$Start,dels$Length)) + metadels <- metadels[which(metadels$Freq>0),] + colnames(metadels) <- c("Start","length","Freq") + metadels$End <- 0 + metadels$changes <- sum((as.integer(as.character(metadels$Freq)) * as.integer(as.character(metadels$length)))) #Now the changes column corrspond to a constant that will be used in the creation of accumulative. This variable stores the total number of changes per position + + for (i in 1:length(metadels$Start)){ + metadels$End[i] = as.integer(as.character(metadels$Start[i])) + as.integer(as.character(metadels$length[i])) - 1 + } + }else{ + metadels <- list() + } + + exportJson <- jsonlite::toJSON(metadels) + write(exportJson, paste(sample_name,"_metadels.json",sep="")) + + #Metadata insertion + if(length(ins$X)>0){ + metains <- as.data.frame(table(ins$Start,ins$Length)) + metains <- metains[which(metains$Freq>0),] + colnames(metains) <- c("Start","length","Freq") + metains$End <- 0 + metains$changes <- sum((as.integer(as.character(metains$Freq)) * as.integer(as.character(metains$length)))) #Now the changes column corrspond to a constant that will be used in the creation of accumulative. This variable stores the total number of changes per position + + for (i in 1:length(metains$Start)){ + metains$End[i] = as.integer(as.character(metains$Start[i])) + as.integer(as.character(metains$length[i])) - 1 + } + }else{ + metains <- list() + } + exportJson <- jsonlite::toJSON(metains) + write(exportJson, paste(sample_name,"_metains.json",sep="")) + + + # Count accumulated insertions and deletions by position + accum.dels=c() + accum.dels=unlist(apply(dels,1,function(X) return( seq(as.integer(X[3]), as.integer(X[3]) + as.integer(X[4])) ))) + accum.ins=c() + accum.ins=unlist(apply(ins,1,function(X) return( seq(as.integer(X[3]), as.integer(X[3]) + as.integer(X[4])) ))) + + # Plot + a_dels <- data.frame(location = c(accum.dels)) + a_ins <- data.frame(location = c(accum.ins)) + + + ############################################### + # ACUMMULATIVE LOCATIONS # + ############################################### + if ( dim(dels)[1] != 0 ){ + acc_dels <- as.data.frame(table(a_dels)) + acc_dels <- acc_dels[acc_dels$Freq>0,] + acc_dels$percent <- (acc_dels$Freq/sum(acc_dels$Freq))*100 + del_acumm <- plot_ly(y = ~acc_dels$percent, x= ~as.numeric(as.character(acc_dels$location)),type = "bar",hovertemplate = paste('Percentage: %{y}','Counts: ',acc_dels$Freq)) %>% + layout(xaxis = list(title="Accumulative Deletion Location",rangeslider = list()), yaxis = list(fixedrange = FALSE,title = "Reads Percentage(%)"), barmode = 'stack')%>% + layout(shapes = list(list( + type = "line", + y0 = 0, + y1 = 100, + yref = "paper", + x0 = cut_site, + x1 = cut_site, + line = list(color = "red", dash="dot") + )))%>% + add_text(showlegend = FALSE, x=cut_site, y=max(acc_dels$percent),text = "Cut site", hovertemplate = paste("Cut site ", cut_site), + textfont = list(color= c("red"))) + }else { + acc_dels <- data.frame() + } + + + if ( dim(ins)[1] != 0 ){ + acc_ins <- as.data.frame(table(a_ins)) + acc_ins <- acc_ins[acc_ins$Freq>0,] + acc_ins$percent <- (acc_ins$Freq/sum(acc_ins$Freq))*100 + + ins_acumm <- plot_ly(y = ~acc_ins$percent, x= ~as.numeric(as.character(acc_ins$location)),type = "bar",hovertemplate = paste('Percentage: %{y}','Counts: ',acc_ins$Freq)) %>% + layout(xaxis = list(title="Accumulative Insertion Location",rangeslider = list()), yaxis = list(fixedrange = FALSE,title = "Reads Percentage(%)"), barmode = 'stack')%>% + layout(shapes = list(list( + type = "line", + y0 = 0, + y1 = 100, + yref = "paper", + x0 = cut_site, + x1 = cut_site, + line = list(color = "red", dash="dot") + )))%>% + add_text(showlegend = FALSE, x=cut_site, y=max(acc_ins$percent),text = "Cut site", hovertemplate = paste("Cut Site ", cut_site), + textfont = list(color= c("red"))) + }else { + acc_ins <- data.frame() + } + + if( (dim(ins)[1] != 0) && (dim(dels)[1] != 0) ){ + accummulative <- subplot(del_acumm, ins_acumm, shareY = T,shareX = F,titleX = T,titleY = T) + } else if( dim(ins)[1] != 0 ){ + accummulative <- subplot(ins_acumm, shareY = T,shareX = F,titleX = T,titleY = T) + } else { + accummulative <- subplot(del_acumm, shareY = T,shareX = F,titleX = T,titleY = T) + } + + #Elements for dynamic table + sequece_length <- max(indels_data$Start+indels_data$Length) + exportJson <- jsonlite::toJSON(sequece_length) + write(exportJson, paste(sample_name,"_length.json",sep="")) + + exportJson <- jsonlite::toJSON(l) + write(exportJson, paste(sample_name,"_Total_reads.json",sep="")) + + + #INSERTIONS + ############################################### + # LOCATION # + ############################################### + + pattern = ins + + #defensive programming against file with no insertions + if(length(pattern$Modification)>0){ + + LOC <- as.data.frame(table(pattern$Start,pattern$Length,pattern$ins_nt)) + LOC <- LOC[which(LOC$Freq>0),] + LOC$percent <- (LOC$Freq/l)*100 + + + #AXIS -> PERCENTAGE, BAR -> COUNT + Ins_location <- plot_ly() %>% + layout(xaxis = list(title="Insertion Location",rangeslider = list()), yaxis = list(fixedrange = FALSE,title = "Reads Percentage(%)"), barmode = 'stack') + + Ins_location <- Ins_location %>% add_trace(x = ~as.numeric(as.character(LOC$Var1)), + y= ~LOC$percent, color = ~LOC$Var3, type = 'bar', + marker = list(~LOC$Freq), legendgroup = ~LOC$Var3, + hovertemplate = paste('Percentage: %{y}','Counts: ',LOC$Freq)) + + + Ins_location <- Ins_location %>% layout(shapes = list(list( + type = "line", + y0 = 0, + y1 = 100, + yref = "paper", + x0 = cut_site, + x1 = cut_site, + line = list(color = "red", dash="dot") + ))) %>% add_text(showlegend = FALSE, x=cut_site,y=max(LOC$percent),text = "Cut site", hovertemplate = paste("Cut site ", cut_site), + textfont = list(color= c("red"))) + + + ############################################### + # SIZES # + ############################################### + + #AXIS -> PERCENTAGE, BAR -> COUNT + Ins_sizes <- plot_ly() %>% + layout(xaxis = list(title="Insertion Sizes",rangeslider = list()), yaxis = list(title = "Reads Percentage(%)"), barmode = 'stack') + Ins_sizes <- Ins_sizes %>% add_trace(x = ~as.numeric(as.character(LOC$Var2)), + y= ~LOC$percent, color = ~LOC$Var3, type = 'bar', + marker = list(~LOC$Freq), showlegend = F, legendgroup = ~LOC$Var3, + hovertemplate = paste(' Percentage: %{y}','Count: ',LOC$Freq)) + + ############################################### + # MERGE PLOTS # + ############################################### + + insertions <- subplot(Ins_location,Ins_sizes, titleY = F, titleX = T) %>% layout(title = "Insertions",yaxis = list(title = "Reads Percentage (%)")) + }else{ + insertions<-empty_plot("No Insertions were detected.") + } + + #DELETIONS + #pattern filter (A,C,T,G) -> NHEJ + pattern <- dels + + #defensive programming against file with no insertions + if(length(pattern$Modification)){ + + for(i in 1:length(pattern$patterns)){ + if(length(strsplit(pattern$patterns[i],split = "")[[1]])==1){ + pattern$patterns[i] <- "NHEJ" + } + } + + ############################################### + # LOCATION # + ############################################### + + + LOC <- as.data.frame(table(pattern$Start,pattern$patterns,pattern$Length)) + LOC <- LOC[which(LOC$Freq>0),] + LOC$percent <- (LOC$Freq/l)*100 + + + #AXIS -> PERCENTAGE, BAR -> COUNT + Del_location <- plot_ly() %>% + layout(xaxis = list(title="Deletion Location",rangeslider = list()), yaxis = list(fixedrange = FALSE,title = "Reads Percentage(%)"), barmode = 'stack') + Del_location <- Del_location %>% add_trace(x = ~as.numeric(as.character(LOC$Var1)), + y= ~LOC$percent, color = ~LOC$Var2, type = 'bar', + marker = list(~LOC$Freq), legendgroup = ~LOC$Var2, + hovertemplate = paste('Percentage: %{y}','Counts: ',LOC$Freq)) + + Del_location <- Del_location %>% layout(shapes = list(list( + type = "line", + y0 = 0, + y1 = 100, + yref = "paper", + x0 = cut_site, + x1 = cut_site, + line = list(color = "red", dash="dot") + )))%>% + add_text(showlegend = FALSE, x=cut_site,y=max(LOC$percent),text = "Cut site", hovertemplate = paste("Cut site ", cut_site), + textfont = list(color= c("red"))) + + + ############################################### + # SIZES # + ############################################### + + #AXIS -> PERCENTAGE, BAR -> COUNT + Del_sizes <- plot_ly() %>% + layout(xaxis = list(title="Deletion Sizes",rangeslider = list()), yaxis = list(title = "Reads Percentage(%)"), barmode = 'stack') + Del_sizes <- Del_sizes %>% add_trace(x = ~as.numeric(as.character(LOC$Var3)), + y= ~LOC$percent, color = ~LOC$Var2, type = 'bar', + marker = list(~LOC$Freq), showlegend=F, legendgroup = ~LOC$Var2, + hovertemplate = paste('Size: ',LOC$Var3,' Percentage: %{y}')) + + + ############################################### + # MERGE PLOTS # + ############################################### + + deletions <- subplot(Del_location,Del_sizes, titleY = F, titleX = T) %>% layout(title = "Deletions",yaxis = list(title = "Reads Percentage (%)")) + }else{ + deletions<-empty_plot("No deletions were detected.") + } + plots <- list(deletions,insertions,accummulative) + return(plots) +} + +####### +#### Reverse complement +####### +strComp=function(X){ + return(c2s(rev(comp(s2c(X))))) +} + +###### +### Cut site +###### +get_cutSite <- function(gRNA_seq, reference, rel_cut){ + ### gRNA seq to upper case + gRNA_seq <- toupper(gRNA_seq) + ### Check orientation of gRNA in reference sequence and cut site + rvComp_seq <- strComp(as.character(sread(reference)[[1]])) + align <- pairwiseAlignment(toupper(gRNA_seq), toupper(as.character(sread(reference)[[1]])), type="global-local") + alignRevComp <- pairwiseAlignment(toupper(gRNA_seq), toupper(rvComp_seq), type="global-local") + + if (score(align) > score(alignRevComp)){ + if (rel_cut > 0){ + cut_site <- start(subject(align))+rel_cut-1 + } else { + cut_site <- start(subject(align)) + ( nchar(gRNA_seq) + rel_cut ) -1 + } + } else { + if (rel_cut > 0){ + cut_site <- nchar(as.character(sread(reference)[[1]])) - end(subject(alignRevComp)) + (nchar(gRNA_seq)-rel_cut) + } else { + cut_site <- nchar(as.character(sread(reference)[[1]])) - end(subject(alignRevComp)) - rel_cut + } + } + return(cut_site) +} + + +####### +#### Empty Plots +####### +empty_plot <- function(title = NULL){ + p <- plotly_empty(type = "scatter", mode = "markers") %>% + config( + displayModeBar = FALSE + ) %>% + layout( + title = list( + text = title, + yref = "paper", + y = 0.5 + ) + ) + return(p) +} + +###################### +##### Alleles percentages plot +###################### + +indel_count_seq <- function(indel_data){ + # Get table with percentages of indels among all genotypes + indel_count <- indel_data %>% group_by(Start, Length, Modification) %>% dplyr::summarise(freq=n()) + #indel_count <- plyr::count(indel_data, vars = c("Start", "Length", "Modification")) + indel_count <- indel_count[order(indel_count$freq, decreasing = TRUE),] + indel_count$Perc <- (indel_count$freq/sum(indel_count$freq)) * 100 + return(as.data.frame(indel_count)) +} + +get_sequences <- function(indels, ref_seq){ + edited_sequences <- c() + seqs <- lapply(c(1:dim(indels)[1]), function(num) { + ref_seq_test <- as.character(sread(ref_seq)) + if (indels$Modification[[num]] == "del"){ + substr(ref_seq_test, indels$Start[[num]], indels$Start[[num]]+indels$Length[[num]]-1) <- paste0(rep("-", indels$Length[[num]]), collapse = "") + edited_sequences <- c(edited_sequences, ref_seq_test) + } else { + seq <- paste(substring(ref_seq_test, 1, indels$Start[[num]]), paste0(rep("N", indels$Length[[num]]), collapse = ""), substring(ref_seq_test, indels$Start[[num]]+1, nchar(ref_seq_test)), sep = "") + edited_sequences <- c(edited_sequences, seq) + } + }) +} + +###################### +##### Substitutions at -+25 of the gRNA plot +###################### +subs_plot <- function(subsperc, gRNA_seq, cut_site){ + ### Get the gRNA region + pre_cut_site <- cut_site - (nchar(gRNA_seq)-3) ## insted of 17 to allow different gRNA lengths instead of only 20 + post_cut_site <- cut_site + 3 + 1 + ### gRNA nucleotides to use them in the axis + ref_nt <- stringr::str_split(gRNA_seq, "")[[1]] + ### Get the plot + plot <- ggplot(data=subsperc %>% filter(pos > pre_cut_site - 25) %>% filter(pos < post_cut_site + 25), aes(x=ordered(pos), y=percentage, fill=nucleotide, alpha=ifelse(percentage<95,1,0))) + + geom_bar(stat="identity") + theme_classic() + scale_fill_manual("Nuclotides", values = c("A" = "#109648", "C" = "#86b7ed", "G" = "#f7b32b", "T" = "#d62839", "-" = "#f2f2f2")) + + scale_x_discrete(breaks = (pre_cut_site+1):(post_cut_site-1), labels = ref_nt) + xlab(NULL) + scale_alpha(guide = 'none') + ylab('nt (%)') + + geom_text(aes(label = ifelse(percentage<50 & percentage>5,percentage,"")), + hjust = 0, vjust = 1.5, angle = 90, nudge_x = -.5, + size = 2.5) + + theme(text = element_text(size = 11), legend.position = "bottom") + return(plot) +} + +############ +### Substitutions logo plot +############ +subs_logo_plot <- function(subsperc, gRNA_seq, cut_site){ + ### Positions related to the cut site + pre_cut_site <- cut_site - (nchar(gRNA_seq)-3) + post_cut_site <- cut_site + 6 + 1 + # + ### From percentages table to matrix + fper_filtered <- subsperc %>% filter(pos > pre_cut_site) %>% filter(pos < post_cut_site) %>% filter(nucleotide != "-") + nuc_pos <- pivot_wider(fper_filtered, names_from = pos, values_from = percentage) + nuc_pos[is.na(nuc_pos)] <- 0 + nuc_pos[nuc_pos == 100] <- 0 + nuc_pos_matrix <- data.matrix(nuc_pos[,-1]) + nuc_pos_matrix <- nuc_pos_matrix+0.00001 ### This is done to aboid problemes in case of a matrix full of 0s + rownames(nuc_pos_matrix) <- nuc_pos$nucleotide + # + ### gRNA nucleotides to use them in the axis + ref_nt <- c(str_split(gRNA_seq, "")[[1]], "N", "G", "G") + logo <- ggseqlogo(nuc_pos_matrix, method='custom', seq_type='dna') + ylab('nt (%)') + logo$scales$scales[[1]] <- scale_x_continuous(breaks= 1:length(ref_nt),labels=ref_nt) + logo_plot <- logo + annotate('rect', xmin = length(ref_nt)-2.5, xmax = length(ref_nt)+0.5, ymin = -5, ymax = 105, alpha = .1, col='black', fill='yellow') + return(logo_plot) +} + +################## +### Top variants plots +################## + +### Logo plot of top indels +get_logo_top_vars <- function(selected_reference, change_len, pattern_indel, modification, str_pos, cut_site){ + # This function is used to generate the logo of the alleles that apperar most times in data. + all_pre_nt <- list(A = "", C = "", T = "", G = "") + for (j in c("A", "C", "G", "T")){ + per_nt <- lapply(1:length(selected_reference), { + function(i){ + if(i < 11 || i > 10+l || modification == "ins"){ + if(selected_reference[i] == j){ + return(1-0.00001) + } else { + return(0.00001) + } + } else { + return(0.00001) + } + } + }) + all_pre_nt[[j]] <- per_nt + } + ## Data frame with the probability of each position + df<-NULL + df <- rbind(df, unlist(all_pre_nt$A)) + df <- rbind(df, unlist(all_pre_nt$C)) + df <- rbind(df, unlist(all_pre_nt$G)) + df <- rbind(df, unlist(all_pre_nt$T)) + pos_matrix <- data.matrix(df) + rownames(pos_matrix) <- c("A", "C", "G", "T") + if(modification == "ins"){ + cut_correction <- change_len + } else { + cut_correction <- 0 + } + + logo <- ggseqlogo(pos_matrix, method='custom', seq_type='dna') + ylab('') + + theme(plot.title = element_text(size = 12 , face = "bold" , hjust = 0.5), + axis.text.x = element_blank(), + axis.text.y = element_blank()) + + ggtitle(paste0(l, "nt ", mod, "; Start: ", str_pos)) + + annotate('segment', x = cut_site-str_pos+11+0.5+cut_correction , xend=cut_site-str_pos+11+0.5+cut_correction, y=-0.08, yend=1.08, linewidth=1, color="red") + + if (is.na(pattern_indel) && modification != "ins"){ + return(logo) + } else if (modification == "ins"){ + logo_plot <- logo + annotate('rect', xmin = 11-0.5, xmax = 10+change_len+0.5, ymin = -0.05, ymax = 1.05, alpha = .1, col='black', fill='yellow') + return(logo_plot) + } else if (pattern_indel == "NHEJ"){ + return(logo) + } else { + mh_len <- nchar(pattern_indel) + logo_plot <- logo + annotate('rect', xmin = 11+change_len-0.5, xmax = 10+change_len+mh_len+0.5, ymin = -0.05, ymax = 1.05, alpha = .1, col='black', fill='yellow') + return(logo_plot) + } +} + + + +################## +### Get all plots +################## + +#load(subs_info) +#empty data troubleshooter, notice that 3 is choose to avoid counting small empty df product of read.csv function +a<-as.character(data) +sampleName<-gsub('.{11}$', '', a) +checkFaulty<-grep('Faulty', sampleName) +a<-as.character(indels_info) +a<-gsub('.{11}$', '', a) +checkEmpty<-grep('Empt', a) +checkFaulty<-grep('Badl', a) +if (dim(data)[2]>3 && length(checkFaulty) == 0 && length(checkEmpty) == 0){ ### Substitutions percentages plot + cut_site <- get_cutSite(gR, ref_seq, rel_cut_site) + if (dim(subs_plup)[1] == 0){ + system(paste0("touch ", sample_name, "_subs-perc_plot.png")) + } else { + sp <- subs_plot(subs_plup, gR, cut_site) + ggsave(paste0(sample_name, "_subs-perc_plot.png"), width = 12, height = 1.5) + ### Substitutions logo plot + sp_logo <- subs_logo_plot(subs_plup, gR, cut_site) + ggsave(paste0(sample_name, "_subs-perc_plot_LOGO.png"), width = 12, height = 1.5) + } + + ### Counts plot + #GET THE HTMLS + figure_counts <- plotIndels_gg(indels_data = data, cut = cut_site) + htmlwidgets::saveWidget(as_widget(figure_counts[[1]]), paste0(sample_name,"_Deletions.html")) + htmlwidgets::saveWidget(as_widget(figure_counts[[2]]), paste0(sample_name,"_Insertions.html")) + htmlwidgets::saveWidget(as_widget(figure_counts[[3]]), paste0(sample_name,"_accumulative.html")) + + ### Alleles plot (deletions) + indel_count <- indel_count_seq(data) + dels_count <- indel_count %>% filter(Modification == "del") ## Just deletions + if (dim(dels_count)[1] != 0){ + dels_count$Start <- as.numeric(as.character(dels_count$Start)) + dels_count$Length <- as.numeric(as.character(dels_count$Length)) + seqs <- get_sequences(dels_count, ref_seq) + + # Write fasta with the sequences and use it to get the alleles plot + if (length(seqs) < 10){ + rep_seqs <- seqs[1:length(seqs)] + } else { + rep_seqs <- seqs[1:10] + } + write.fasta(sequences = rep_seqs, names = paste0(round(dels_count$Perc, 2), "_", dels_count$Modification, dels_count$Length, "_", seq(1, dim(dels_count)[1]))[1:10], file.out = paste0(sample_name, "_top10.fa")) + nt_sequences <- paste0(sample_name, "_top10.fa") + figure_alleles <- ggmsa(nt_sequences, cut_site-40, cut_site+40, color = "Chemistry_NT", seq_name = TRUE) + ggsave(paste0(sample_name, "_delAlleles_plot.png")) + } else { + system(paste0("touch ", sample_name, "_delAlleles_plot.png")) + } + + ######### Low variability or top variants plot + wt <- data$wt_reads[1] ### 7299 + templata_based <- data$t_reads[1] ### 0 + total_char <- wt + templata_based + dim(data)[1] + + delCols_indels <- data %>% group_by(Modification, Start, Length, ins_nt, patterns) %>% dplyr::summarize(freq = n()) + unique_variants <- rbind(as.data.frame(delCols_indels), c("wt", 0, 0, NA, NA, wt), c("template-based", 0, 0, NA, NA, templata_based)) + uniq_indels_sorted <- unique_variants[order(as.numeric(unique_variants$freq), decreasing = TRUE),] + write.csv(uniq_indels_sorted,file=paste0(sample_name, "_unique-variants.csv")) + + # Check if there are enogh indels to have 5 top + if(dim(uniq_indels_sorted)[1] < 5 ){ + num_top <- dim(delCols_indels)[1] + } else { num_top <- 5 } + + # Get to variants + top_5 <- uniq_indels_sorted[1:num_top,] + + top5_names <- lapply(c(1:dim(top_5)[1]), + function(i){ + if( top_5[i,]$Modification == "del" ) { + return(paste0(top_5[i,]$Start, "_", top_5[i,]$Modification, top_5[i,]$Length, "_", top_5[i,]$pattern)) + } else if ( top_5[i,]$Modification == "ins" ) { + return(paste0(top_5[i,]$Start, "_", top_5[i,]$Modification, top_5[i,]$ins_nt)) + } else { + return(top_5[i,]$Modification) + } + } + ) + + wt_pos <- which(unlist(top5_names) == "wt") + if (length(wt_pos) == 0){ + cols_list = c("#bebebe", rep("#9394f7", num_top + 1)) + } else if (wt_pos == num_top){ + cols_list = c("#bebebe", "#9394f7", rep("#9394f7", num_top - 1), "#1cf453") + } else if (wt_pos == 1) { + cols_list = c("#bebebe", "#9394f7", "#1cf453", rep("#9394f7", num_top - 1)) + } else { + cols_list = c("#bebebe", rep("#9394f7", wt_pos), "#1cf453", rep("#9394f7", num_top-wt_pos)) + } + + reads_classes <- c("Other alleles", "Top alleles", unlist(top5_names)) + reads_counts <- c(total_char - sum(as.numeric(top_5$freq)), sum(as.numeric(top_5$freq)), as.numeric(top_5$freq)) + reads_summary <- data.frame(classes = unlist(reads_classes), counts = unlist(reads_counts)) + reads_summary$parents = c("", "", rep("Top alleles", num_top)) + fig <- plot_ly(reads_summary, + labels = ~ classes, + parents = ~ parents, + values = ~ counts, + type = 'sunburst', + branchvalues = 'total', + textinfo = "label+percent entry", + marker = list(colors = cols_list, color = "black"), + textfont = list(color = '#000000', size = 20) + ) + + htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_top.html")) + + ### Logo plot + all_each_logo <- list() + list_num <- 1 + sel_top <- top_5 %>% filter(Modification %in% c("del", "ins")) + if (dim(sel_top)[1] > 0){ + for (i in c(1:dim(sel_top)[1])){ + if (sel_top[i,]$Modification == "ins"){ + selfil_1 <- data %>% filter(Modification == sel_top[i,]$Modification) %>% filter(Start == sel_top[i,]$Start) %>% filter(Length == sel_top[i,]$Length) %>% filter(ins_nt == sel_top[i,]$ins_nt) + } else { + selfil_1 <- data %>% filter(Modification == sel_top[i,]$Modification) %>% filter(Start == sel_top[i,]$Start) %>% filter(Length == sel_top[i,]$Length) + } + s <- selfil_1[1,]$Start + l <- selfil_1[1,]$Length + if( s > 12 && (nchar(as.character(sread(ref_seq)[[1]])) > (s+l+9) )){ + ref_splited <- c(str_split(toupper(as.character(sread(ref_seq)[[1]])), "")[[1]]) + sel_ref <- ref_splited[(s-10):(s+l+9)] + mod <- selfil_1[1,]$Modification + if (mod == "ins"){ + sel_ref <- c(sel_ref[1:10], c(str_split(toupper(selfil_1[1,]$ins_nt), "")[[1]]), sel_ref[11:length(sel_ref)]) + } + p <- selfil_1[1,]$patterns + each_logo <- get_logo_top_vars(sel_ref, l, p, mod, s, cut_site) + + all_each_logo[[list_num]] <- each_logo + list_num <- list_num + 1 + } + } + } + + if (length(all_each_logo) > 0){ + plot_grid(plotlist = all_each_logo, ncol = 1) + ggsave(paste0(sample_name, "_top-alleles_LOGO.png")) + } else { + system(paste0("touch ", sample_name, "_top-alleles_LOGO.png")) + } + +} else { + fig<-empty_plot("No alignments were produced. + Please check your files and references") + htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_Deletions.html")) + htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_Insertions.html")) + htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_accumulative.html")) + # system(paste0("touch ", sample_name, "_delAlleles_plot.png")) + + #Elements for dynamic table IF THERE ARE NO ALIGNMENTS + empty_list = list() + exportJson <- jsonlite::toJSON(empty_list) + write(exportJson, paste(sample_name,"_length.json",sep="")) + write(exportJson, paste(sample_name,"_Total_reads.json",sep="")) + write(exportJson, paste(sample_name,"_metadels.json",sep="")) + write(exportJson, paste(sample_name,"_metains.json",sep="")) + + system(paste0("touch ", sample_name, "_top.html")) + system(paste0("touch ", sample_name, "_top-alleles_LOGO.png")) + system(paste0("touch ", sample_name, "_counts_plot.png")) + system(paste0("touch ", sample_name, "_subs-perc_plot_LOGO.png")) + system(paste0("touch ", sample_name, "_subs-perc_plot.png")) +} diff --git a/conf/modules.config b/conf/modules.config index f78266e9..8c6b5d6c 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -231,6 +231,10 @@ process { ext.args = '--cut_site=-3' } + withName: CRISPRSEQ_PLOTTER { + ext.args = '--cut_site=-3' + } + withName: CUSTOM_DUMPSOFTWAREVERSIONS { publishDir = [ path: { "${params.outdir}/pipeline_info" }, diff --git a/modules/local/cigar_parser.nf b/modules/local/cigar_parser.nf index 5073ab26..5b87bba4 100644 --- a/modules/local/cigar_parser.nf +++ b/modules/local/cigar_parser.nf @@ -11,7 +11,7 @@ process CIGAR_PARSER { tuple val(meta), path(reads), path(index), path(reference), val(protospacer), path(template), path(template_bam), path(reference_template), path(summary) output: - tuple val(meta), path("*indels.csv"), path("*_subs-perc.csv"), emit: indels + tuple val(meta), path("*[!QC-]indels.csv"), path("*_subs-perc.csv"), emit: indels tuple val(meta), path("*.html"), path("*edits.csv") , emit: edition tuple val(meta), path("*cutSite.json") , emit: cutsite tuple val(meta), path("*_QC-indels.csv") , emit: qcindels diff --git a/modules/local/crisprseq_plotter.nf b/modules/local/crisprseq_plotter.nf new file mode 100644 index 00000000..30a5db68 --- /dev/null +++ b/modules/local/crisprseq_plotter.nf @@ -0,0 +1,42 @@ +process CRISPRSEQ_PLOTTER { + tag "$meta.id" + label 'process_medium' + + conda 'r-ggplot2=3.4.3 bioconductor-shortread=1.58.0 r-ggpubr=0.6.0 r-ggmsa=1.0.2 r-seqmagick=0.1.6 r-tidyr=1.3.0 r-ggseqlogo=0.1 r-cowplot=1.1.1 r-seqinr=4.2_30 r-optparse=1.7.3 r-dplyr=1.1.2 r-plyr=1.8.8 r-stringr=1.5.0 r-plotly=4.10.2' + // TODO: change containers + container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? + 'https://depot.galaxyproject.org/singularity/mulled-v2-61c59287265e27f2c4589cfc90013ef6c2c6acf1:fb3e48060a8c0e5108b1b60a2ad7e090cfb9eee5-0' : + 'biocontainers/mulled-v2-61c59287265e27f2c4589cfc90013ef6c2c6acf1:fb3e48060a8c0e5108b1b60a2ad7e090cfb9eee5-0' }" + + input: + tuple val(meta), path(indels), path(substitutions), path(reference), val(protospacer) + + output: + tuple val(meta), path("*_Deletions.html"), path("*_delAlleles_plot.png") , emit: deletions + tuple val(meta), path("*_Insertions.html") , emit: insertions + tuple val(meta), path("*_accumulative.html") , emit: accumulative + tuple val(meta), path("*_subs-perc_plot.png"), path("*_subs-perc_plot_LOGO.png"), emit: substitutions + tuple val(meta), path("*_top-alleles_LOGO.png"), path("*_top.html") , emit: topalleles + path "versions.yml" , emit: versions + + when: + task.ext.when == null || task.ext.when + + script: + def args = task.ext.args ?: '' + def prefix = task.ext.prefix ?: "${meta.id}" + """ + plotter.R \\ + $args \\ + --indels_info=$indels \\ + --reference=$reference \\ + --gRNA_sequence=$protospacer \\ + --sample_name=$prefix \\ + --substitutions_info=$substitutions + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + Rscript: \$(Rscript --version) + END_VERSIONS + """ +} diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 15d870a0..33c2ee59 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -46,6 +46,7 @@ include { PREPROCESSING_SUMMARY } from '../modules/local/preprocessing_summary' include { CLUSTERING_SUMMARY } from '../modules/local/clustering_summary' include { ALIGNMENT_SUMMARY } from '../modules/local/alignment_summary' include { TEMPLATE_REFERENCE } from '../modules/local/template_reference' +include { CRISPRSEQ_PLOTTER } from '../modules/local/crisprseq_plotter' /* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -706,12 +707,7 @@ workflow CRISPRSEQ_TARGETED { ch_mapped_bam .join(SAMTOOLS_INDEX.out.bai) .join(ORIENT_REFERENCE.out.reference) - .join(ch_input.protospacer - .map { - meta, fastq -> - [ meta , fastq ] - } - ) + .join(ch_input.protospacer) .join(ch_seq_template, remainder: true) .join(ch_template_bam, remainder: true) .join(TEMPLATE_REFERENCE.out.fasta, remainder: true) @@ -740,6 +736,17 @@ workflow CRISPRSEQ_TARGETED { ch_versions = ch_versions.mix(CIGAR_PARSER.out.versions.first()) + // + // + // + CRISPRSEQ_PLOTTER ( + CIGAR_PARSER.out.indels + .join(ORIENT_REFERENCE.out.reference) + .join(ch_input.protospacer) + ) + ch_versions = ch_versions.mix(CRISPRSEQ_PLOTTER.out.versions.first()) + + // // MODULE: Dump software versions // From c546e5403aae0891ac61428a0ee2e8a35fe76fc4 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Fri, 18 Aug 2023 17:29:46 +0200 Subject: [PATCH 063/133] save plot results in a folder called plots --- conf/modules.config | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/conf/modules.config b/conf/modules.config index 8c6b5d6c..b282aebc 100644 --- a/conf/modules.config +++ b/conf/modules.config @@ -233,6 +233,11 @@ process { withName: CRISPRSEQ_PLOTTER { ext.args = '--cut_site=-3' + publishDir = [ + path: { "${params.outdir}/plots" }, + mode: params.publish_dir_mode, + saveAs: { filename -> filename.equals('versions.yml') ? null : filename } + ] } withName: CUSTOM_DUMPSOFTWAREVERSIONS { From 7ea4c31759af1c2deb1caa21c0e00a0e6b6bdce2 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 21 Aug 2023 14:46:17 +0200 Subject: [PATCH 064/133] print plotted percentage in substitution percentage plot --- bin/plotter.R | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/bin/plotter.R b/bin/plotter.R index 10ab023d..883b2105 100755 --- a/bin/plotter.R +++ b/bin/plotter.R @@ -400,7 +400,7 @@ subs_plot <- function(subsperc, gRNA_seq, cut_site){ plot <- ggplot(data=subsperc %>% filter(pos > pre_cut_site - 25) %>% filter(pos < post_cut_site + 25), aes(x=ordered(pos), y=percentage, fill=nucleotide, alpha=ifelse(percentage<95,1,0))) + geom_bar(stat="identity") + theme_classic() + scale_fill_manual("Nuclotides", values = c("A" = "#109648", "C" = "#86b7ed", "G" = "#f7b32b", "T" = "#d62839", "-" = "#f2f2f2")) + scale_x_discrete(breaks = (pre_cut_site+1):(post_cut_site-1), labels = ref_nt) + xlab(NULL) + scale_alpha(guide = 'none') + ylab('nt (%)') + - geom_text(aes(label = ifelse(percentage<50 & percentage>5,percentage,"")), + geom_text(aes(label = ifelse(percentage<50 & percentage>5,100-percentage,"")), hjust = 0, vjust = 1.5, angle = 90, nudge_x = -.5, size = 2.5) + theme(text = element_text(size = 11), legend.position = "bottom") @@ -627,7 +627,7 @@ if (dim(data)[2]>3 && length(checkFaulty) == 0 && length(checkEmpty) == 0){ ### } p <- selfil_1[1,]$patterns each_logo <- get_logo_top_vars(sel_ref, l, p, mod, s, cut_site) - + all_each_logo[[list_num]] <- each_logo list_num <- list_num + 1 } From 6f57715525385dede52608347976314a99af0fb0 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 21 Aug 2023 14:46:54 +0200 Subject: [PATCH 065/133] add documentation of output plots --- docs/output/targeted.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/docs/output/targeted.md b/docs/output/targeted.md index 0a4ba78e..f44ffd0b 100644 --- a/docs/output/targeted.md +++ b/docs/output/targeted.md @@ -33,6 +33,7 @@ The pipeline is built using [Nextflow](https://www.nextflow.io/) and processes d - [bowtie2](#bowtie2) - Mapping reads to reference - [Edits calling](#edits-calling) - [CIGAR](#cigar) - Parse CIGAR to call edits + - [Output plots](#output-plots) - Results visualisation - [MultiQC](#multiqc) - Aggregate report describing results and QC from the whole pipeline - [Pipeline information](#pipeline-information) - Report metrics generated during the workflow execution @@ -262,6 +263,31 @@ This section contains the final output of the pipeline. It contains information
      +### Output plots + +
      +Output files + +- `plots/` + - `*_accumulative.html`: Interactive barplot showing the accumulative deletions and insertions. x-axis represents the reference position. y-axis represents the percentage of reads containing a deletion or insertion in that position. + ![Test sample hCas9-AAVS1-a accumulative edition plot](../images/hCas9-AAVS1-a_accumulative.html) + - `*_delAlleles_plot.png`: Image showing the most common deletions found. x-axis represents the position. y-axis indicates the percentage in which the plotted deletion is observed (in respect of all deletions), followed by the length of the deletion. Dashes `-` indicate a deleted base. + ![Test sample hCas9-AAVS1-a deletion alleles plot](../images/hCas9-AAVS1-a_delAlleles_plot.png) + - `*_Deletions.html`: Interactive barplot showing the percentage of reads showing a deltion for each position and the deletion sizes. The left panel represents the percentage of reads having a deletion for each position (similar to `*_accumulative.html`). The right panel shows the number of deletions found relative to their size. The deleted sequences found are shown coloured in the stacked barplot. + ![Test sample hCas9-AAVS1-a deletions plot](../images/hCas9-AAVS1-a_Deletions.html) + - `*_Insertions.html`: Interactive barplot showing the percentage of reads showing an insertion for each position and the intertion sizes. The left panel represents the percentage of reads having an insertion for each position (similar to `*_accumulative.html`). The right panel shows the number of insertions found relative to their size. The inserted sequences found are shown coloured in the stacked barplot. + ![Test sample hCas9-AAVS1-a insertions plot](../images/hCas9-AAVS1-a_Insertions.html) + - `*_subs-perc_plot_LOGO.png`: LOGO showing the most represented nucleotide and its percentage (y-axis) for protospacer positions. PAM sequence is highlighted in yellow. + ![Test sample hCas9-AAVS1-a substitutions LOGO](../images/hCas9-AAVS1-a_subs-perc_plot_LOGO.png) + - `*_subs-perc_plot.png`: Barplot showing the most represented nucleotide and it's percentage (y-axis and bar tags) for +/-25 positions surrounding the cut site. The protospacer sequence is highlighted by writing the sequence base in the y axis. Bases whose percentage is higher than 90% are not colored. + ![Test sample hCas9-AAVS1-a substitutions percentage plot](../images/hCas9-AAVS1-a_subs-perc_plot.png) + - `*_top-alleles_LOGO.png`: LOGO showing the 4 most represented editions. Cut site is highlighted with a vertical red line. The type of edition and start position are shown as a title to each LOGO. Deleted bases are not drawn. Inserted bases are highlighted in yellow. + ![Test sample hCas9-AAVS1-a top alleles LOGO](../images/hCas9-AAVS1-a_top-alleles_LOGO.png) + - `*_top.html`: Interactive pie chart showing the percentage of the top 4 editions found. The percentage of WT is also shown. Editions are named after the position, the type of edition and length and the sequence. + ![Test sample hCas9-AAVS1-a top alleles plot](../images/hCas9-AAVS1-a_top.html) + +
      + ## MultiQC
      From 11cfda2a2318f9356b5087797c8c16256c802411 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 21 Aug 2023 15:01:44 +0200 Subject: [PATCH 066/133] add images of output example plots --- docs/images/hCas9-AAVS1-a_Deletions.png | Bin 0 -> 183460 bytes docs/images/hCas9-AAVS1-a_Insertions.png | Bin 0 -> 88166 bytes docs/images/hCas9-AAVS1-a_accumulative.png | Bin 0 -> 139340 bytes docs/images/hCas9-AAVS1-a_delAlleles_plot.png | Bin 0 -> 372550 bytes docs/images/hCas9-AAVS1-a_subs-perc_plot.png | Bin 0 -> 174001 bytes .../hCas9-AAVS1-a_subs-perc_plot_LOGO.png | Bin 0 -> 155293 bytes docs/images/hCas9-AAVS1-a_top-alleles_LOGO.png | Bin 0 -> 475593 bytes docs/images/hCas9-AAVS1-a_top.png | Bin 0 -> 130763 bytes docs/output/targeted.md | 8 ++++---- 9 files changed, 4 insertions(+), 4 deletions(-) create mode 100644 docs/images/hCas9-AAVS1-a_Deletions.png create mode 100644 docs/images/hCas9-AAVS1-a_Insertions.png create mode 100644 docs/images/hCas9-AAVS1-a_accumulative.png create mode 100644 docs/images/hCas9-AAVS1-a_delAlleles_plot.png create mode 100644 docs/images/hCas9-AAVS1-a_subs-perc_plot.png create mode 100644 docs/images/hCas9-AAVS1-a_subs-perc_plot_LOGO.png create mode 100644 docs/images/hCas9-AAVS1-a_top-alleles_LOGO.png create mode 100644 docs/images/hCas9-AAVS1-a_top.png diff --git a/docs/images/hCas9-AAVS1-a_Deletions.png b/docs/images/hCas9-AAVS1-a_Deletions.png new file mode 100644 index 0000000000000000000000000000000000000000..b2132a821dae48a557532062eec2477a199d14b4 GIT binary patch literal 183460 zcmd?Rby$>L+c%1ZNC*ZYjR*)xiF7JTN=SEzfOI#*h@>E(A{~Rbgmj0bv`9)1H3HJz zJ@c(mhuinn=Q+NA_TGPNjss^o*R}HO-+3-xC@Dx0;F9BFVPO%-NZ(h+!n!bng>^O? z2OE6zE$a&t78bs^xrBt0jD!TOl7p?Oxs?ePmh_8Ajq{o+tt3f0%5?9}61}?Yapk@R z7BgKjR!;~m3*7}G*_S@akEKY7bt^SL1>^?bbP>OG^Rd~ZB}hT?KiMJYDmNI*yrQ60vpll@CcWmSFzWI^K6lSHu1yVjTJ%h@5{te9|yz^QI=mXy*MN9yHr#A9Y!y)jr_z>Z73>jrO!Q=bmMEPRSHuB^x{!E((I3=Lf{a|urzJdV$p5y?$(2N)8=Hx@MxZ(NXJK49bSD9f724b0Zp5N zMjr{opAlMW_7|lZ*>4CmRE@PK64A9R5bXwW|ML&sK){}_baH+mS*mGU{pHA=50`46 zopHq8qIDrzdw!jk_c{Ol1XALRN$%SZ=yZc7aPKmO;C{S7v?w8Lph-lTR|vnENR+W21l_2ab7c}KJ*)5(bs{WRl;Dri2dYTl!opdCIZBjC0t)_m-kJH3EUtLu3 zl2`(si_A?^ri*hpc#={V+aJ*4W?R1m>(ZC6&MLEAx)2F(d_D`8K z*L6~1AAXwq&xGALR9;>t^pHCpPDg(b=t`aKMP^H#y@7;w5#}SV@jkh(_R{JTy^8Ut zH)Id-uLoR`2y!W>TM0b;_IiyRD+{l)z8ZUGeJp9suluf>bh+f*jZtzAmeJ>> zY)hzq{Jh6STF%qw)N;n&;KRj8dy!Eh{z;o|LW0PF7makx(t>aNgDzdWO%Ut*mcH#( z$!EqCYeIuN@YST8m5lqyslp1Cc*%Vjla0ULa=NblvhxAy zyR5GkPE6Y2N#Y#IgWU>S=Y|7MJtXLDXy=rA>2II^^cHbjW6BVIHh$Kp%mTse3!<~E znoI+}kj5AMXUrzU?9K&Fyx^yS1$BKQowQtEb`u#7HmIZdR=vk}I@IvK9j)7ya=)*B zx9V@)V}AEMKho}%9qvjhd%e*0*B_*c={)MIWA3%nDKN0#$faLlq-Jsz)Vu5BvWaR)S<)=%ZY)TClL7+P=EYz8xAD7xytPT01*V z+B$03qC~{Pte^S=M0HTTOk?&#dPZ9xX@;$eSgyC+F+r$gQQEm~Wpn@H2gT&WGQ*JJ z^MbxB_h);~ZN+ZMdWam~K2F7c&>-uZ!=>if(%A2od z2s%XB0tRq$p5}Pv_-hLlcbbdzGMejHp0~s+p0%(Y5Y0Fa^5MEgMu`pM3M}xq5B{1e z(O2+wV&VJT+r_0G^TGN4{sHG+`JTjVoeWRaG8Mw!qJgP}>3Oz+k#twR)n1}0x+S`L zI=p~Bf{()AtC32_Sde$#u}GU^%L5pG40av%M{GF)a{QHRlL0#c1pyKGgA_@(m#$@U z_nF;vPi=adOAP8H-$sx@LH1Ud%AeRCcUtDY0pi#FDVy z(!S-vCeJ3NrBIYzQf2+1;IWp8PEMhq@%H#|vmo3f$=P?Cn*u_SD_5{$9|VOY-#kl|z+ldMtXm z6+OBVx@Hx;6*Ufyc2_ELTr1~0?P#V&yQ-UxvjWot``&lHAL;Gk9xM8?i7gjM+@Sqg zaPh$!?pEBqbK~OsvOw2&yP~VLUX&0Ah|8WZg*mq}zeC$+shXJ@VT625qW8mEr`k~O zM5HNF7-fM9JVkQq`Lmo;ig1@D${mHBHt|_;^KW&Zb}4N;ojTWPZ{57};noKcO(A|R zH|w=yqRm&?uZCZZEA4h?ylZK|F}h?V*I;88`q9gVpp0*n+snhv($C|*SL1L{;Om{& zJ)hGa&3#yV)Fw3+S{Qs;is!!XQ=6@gIZrNLt}DhDTP_1nZ1R%VM@RPu`_cYK{QTsqX=DcTvN$`@2}er2DZO`QQ#MvS}~>xRel4B6j2Qj&{M?5%512rQ%G z5>j?o-JP2>?lX1_-{vFb+og)8TorijJo%_?FG`3>3RX2tJ~HghGT8_3rAt>#GJ=_l zE_&{K7Fcx*>@4c!(_Jf9Ld=Z2thw$Y2unSS2MxBWhTK{gl~r0khZ#p7bHK_kJ56t? zt@Ps!{*&vht61f|DLEY48UH-K%Vv7a!?|*9XI7|a3@SZ|evJz~y#o5lsYw6ZlP zd_X&QccfttxG(E8)o!|Ldvb%LOvOyZit?}lVMlkD6rq&Eo=vWsZMbk+m&5pK9YNu$JJb!wr-S=n0;Ykz-xZ$8vV2%06Sp)AUhUKWL3I zpKHld(i?k^?}7Ww5#0(*hgQS+j93}!G-An1r>fpX6oeGPCYmy)^72?LppAod_7pkR zInX)ha(Nj`&VpUno(u!S7|_3`WR!2L zf$@jTRW+S7Y#asMM6UmMLlCsl zUvpfi{qc&ErO0(nc_ms2TL%+bUUp7)&g-JMw6wIs4o^%4mG4Xb>JI)Va{Z~3lbs+3 zhpVeAyDK-lt%Df{mwqbqMd5}m$b#np^;>Iu!+K(Q<`zn6vh z*k=j__+{^3H`G7--RIPCQBW}L-JoQvYa|!WT)N`RA4JIh`JZG3{14d|t{dS-Z! zmT1G_OPR;Pz;ewPr1H?kc{e@jd_|Osv-h^ZSW0nC26^GaGIIM;+8+#?e(HZ_9dqaT5HXmN!Pmx?B)Xi#parVNnN2KBR|yC3TvQe)-V zKi)X{c3$k}9STt|w-_N;8%^tye%!@E?!2lE*}a3oT54*yZ$9}B(_fZmp18vxI~SOe z+#YK>cJRpAK-Zf{8zus2^oMwz7y8z|hI<$1>spvj)ca2yZFUickg&0o2;fr*-l2qS zeVxc}xQHhafIr_q6DW3MRKC?CCpSQ`+os^TTJ6feT-^Jnf8A?}tJi$E*qlyqmv79z zg=%61fppOP;6wp;D=HumPY+f?X{ zBVu2Nd8cvrS${p(F&@38?Q0Eg_MRU(HSDJ@(M$R{b_y^pffH!TirCkF?!La-ikyWa z&0++KDr!^m=hNaDCyEL9M)SK@U26}=?3#!*u12wTER~MfOvo7=D0h_994ur_JjY|l z*&X+^O=W-cO$VQ2r51%`7%^?(4cMUen0vPd4n5k+pz8L(+W2lwnVXuC=nAx*t3{P3 zU|!+t^|;^IUGK$=S`CjmSJd7;-DUsWNcyNqGnF z$gOO!g^Bre*vjVB>g6(o=tG!jb$-`w&2IHtjx8iBU)S7pcg&S=Hp$bbCwo}i_?g|8 zx6BiO379gn_phLl3R;B5LLXW zTk!b7-d4I86%sJ-&alux`Fb-&AcI_#-{dRPVQEf|$TgW?o1OFW*}Bj_&*N4>i8}o- zVX`-N>Pq2=y=-3pp{Ij$QP*O0?U6|y`(rk^2XZY?%x~}eij%fkqH{eUOFTOxtiSlh zY^L}ahT>7Tp9ziCy?J1*vw?PM|qe7PvH)lKB9XCHhwcPdPX{bAgl42?a@`JPl6 z+7;5;y$41pUqVrSa~;j~ork4e4ta&g$E#4pVt>_p$xvK_y?W9EVSkQ*%}&9^Y<<4O zNme~qxJh)%2oMo&_nak>-O(#G>!G$+WncIdS(n1o@)J6<3!2Gg<~Z0jbS%9f%MVEP z-cn!ZI;chMq5?#AhTiA1i@xKmQRXX^Pk(x?;k9K>iFyUgetVd81y`6NWeAn)D3?`1 z6NwDO6#;SGSQssqKYB^Mu2$UCyIYGoUhA;+F3Pt6yHn5?plpboUxXTmDvItu*~lD$ z9ern#(W$FC9eeGkwt6Psg4>9tk3W@qw@Q|&0x&$2{4hg`2Bk79aX^++P3UkE0rG8T zYFxJ-k9BaDKu+!WH)W3m3$b29Lws_QK!V=mDOAl16>^1#(Y?!}@$^Kf$8bZ1dDM7z zSr?i_RUWm74pHw?{kF5iGKP~<3fJB`oZH0q*JApiE&qoo^y55f&^hD&Sbu4jo@QVA zvaa0W(Rw&Ep_38D)$Ve*Tt+(3G`(CplAE89_(IXdb0H%gH*2;desD3vz29$aGW0q0 zunfv7Y{D+;yxL4*i*K1%?J`l`#Jz5A8%X2rHt_%M=d5NQL3GB7>q(RXw`n^L zSHb{7RX!)L7U^+0O3q-NqQPaoztXrRjLm({je1bu)7ogn=R9@H+3&cl<4LVy)}t=p zUrPmqLyx8=Xpj>$!SRfnXq6Xj;O%a7Y!pZpB}|orhJ?_tF>r0e#QfCpS^u#VU3ux zw;Vj^t)N(bWG<}TZ<|_SWm_$tGl;vbN{Om^I(;K%P!c%W~}Kc<-fnPibAedC;jtCo|9vo z_N8+pbHEaEu@;%NR?)8vX?BKx)8loE8XNy$IBpWHM>5lysB<%GC@=pux8s=ep#Q4Z ztdM`n`n>l#Gj#qf)rfg-8bjVig|g@a;qR{`aPtC#jjy(3x(QCbj50;eF^I zp&-bdT{>*x?`(SFyxjX7kd(=DZ7E;6#5vMZqbp*guw~S#S6<>Mgw{PS^FnYWZZpp& zWg%S{nYbKES#{X<{qS24h*i;Zs_E=rq->&@Fk+I(Dnnz;rgFIy;-#Ff?wxiwr!Mo| zSCq9m<}@jF`fcs?*7?*|Tvd+{FCDCd!%b?qPER8%2V>svihMDIt`-sF%$Pj5_2=n2 zRRLSb(``7;B)a~B$UrAf0f9p9HpE%x#@=ck>~6-=5hNDdXV=qM*j#U+;m8(U`0)PT z5`ALkg&D|thyngQYM*L1D-D6#hoLU456xeNJ>CsR?S;=jhJDk258Q$IXY0&9_AJ{e zHTOV-@5p#Wb2|6-gz%iMr`6Km2)BK zz`?ko$PWh&lSI{g$wUAJi7l@p#>NTykX;O}tMYm1PH-twFj_KTqi1S%zSX_tEF-p1 zLbQi-z1c@ZoA|>vD%SAYtVvXkAlcN=oVY^e0Bm6FX}GNMP^NcpMR3C;mm4Y6V4Yhb z)tk@#s3T>zhZ$CKbglP;BlXfMq;$ohuBtyEmt;WO_P(3RI>KYQ@F1waAwTJz5nL{B zM_cUi7*9hyt9rm-boIF9u^>e*Ra8y+Eqtx*oj%KubH6k{@MYzRH0@DiMy`qaW{HO`^HQD=?ke4Vkpp^en8{1d#(A>;IBea zhYjSG*^jE=!oQrvovd&yIr&>PJVu|SqLWtYrFmJbxxS7-{nkRM~SZ(c>Sst5@X@xsMm{H1zR%OK4 zB&3Z>tg^-pX4<~HJNt;dhP9t@Y~W=aCHIZIig3icx+Ltw!)TFOuxzp~@oq=@MvWEp z_4H!UTl-8ad>d4YeuQ2J$3~wmB71^fy}j{EbmKE z!n?9P9Rr@$*Cxf<^e?x!Rp>BcJeQ|$o*C*#7*a+32tAx)&=h%PIKJ5>MuXfoK$Xy5 zfyMAz4rJGF0C$htdovz!HR}BBE51;s1iO1igJ@RPRnOLZG-O80J)7vNKjb{9hgZqV z8bfMup%O$IDX_gKwQU@=RcQKUy@D-NBCq8d~` zPno&TKK)TXgHtI3t53X(jv~S0d%<~am343Us>*t)X*=J+;V{~InThmlYaJqM_~5IW z>owD1Fg=4R#rLy^Sscr(Nd{gH`a8^d%WJbr9v7E)v^vV~EGA%Y9%?L5%AVVtR9V>( zu*pl=cMKP!S*e}(c_K>it;xS-1#dsBHh#~Eb z_JJ+Gkd;^CVe~OBc1Tq81qWIYQF-r8_z(7kUE^ldwQnMxUr~cL8^T}FN#HKW6SuSG zmJBn^G%<}dF^#6Gc-=Gfnzj`*X(@eFSGBbVoC=x$c?JQT@fV%loA)?G< z6nGwmgIVb{hhwWdxJ`O4a1*08wzBND{5ZpL^Yla#Z{WQ!9zQY26YB0Ps;jc~nxbg6 z)HxK==P60@SjaF!9_{n=dmtdY{zaXFS>4WF!DHt|*L><7T&yUl+F6~pcG>}L$*Dm| zoo`t8+-|jcH{d}C39;?PRrfB>df>SCSterisdy!BpQEt|HtnRU*RgJh1kc^q+F^XJ zN~h}y%??3v>GRRX3~Ky<2)};`MBY6*Ic5=-m%=wN<@{?YtQ5puHgICPGJ! z_afYC;;l=yj0A*AJMd?S1&>i?g~rq{VSd~3Dl6``Uk;y7>DAAo)*pIgQr-nwRg$>{ zqf(4sEbTb7<Wm}Z=Ye8TFR81FWYq{D zldW9Lt@P;ETrhXzs9L+nzwwzKZ`s4cqh6kG>}^$WR(@e~tVO*IaJ$WvjXmaaN{3mz zfU18;dVcGg!N|dW7qlkdc8A&7pWp#^e;>JoC09bU0(|gP`eJVvIu4}-I-O3mfHM*8 zwdFUHTc(8236+N8%;ad7WDaIQ@Dd|qUgQlNFB+haYxKysuD@yR`YPeu~vCjZLwmq;y)ifqX=xzGg#$lC0!*0 zp}AA`dMppVomP?xgCo>*VFQT-i%r(^wsfA<_Bsi}3^9B$@2ci{f(-SA6$Ez6b7Ff9 zp&UiC%Iq;eY;g&nF01h78VU)OwnvP)j`L=ZZxT+J?ILpr-;IClk6D{pv<+xdtX9%Q zY`RolsI;Xasm*W9vchBe*L^<}Ro)o41eKZU=(XEp9aGv<`EvuVxFD8n}u2%wVr2$xPjberyvquHtknDULG)4#_ z3zWVlJCBNd&e!d32|@x^_3WFJ*F`Vcw#RV!Pfy08j=E6z>ldEQ-?5);)K_G9xmaX8 z5@a|I&_rsWGNXy81_6#%eE0^229X+66h$JfEc>$j z2D)YiiWN0I?&-^4Ag1B)B`l=^je~d=jS<6Kj@+y`@1m9M6$5$LaY;rA3K<5J-qOBC zks^@N{i~>`LPW228BgW-q+{Cvd0FbIJ`jSei`t7KsVCi=m`8H=ydtm#js^__H?H5M zN9nTg*mRgux38LHI5HEr>p&V8jA|p00{B|i(wbZGV*Y5mQ)r1lo#;A~{$@YRwp?V? zX;Jabeuv97n(-op7~|%yKC0~=|LV&K6wkwiHN{qsyh8cke1sF!f|d|1#rW;16BT=^ zrP2Bx%vDDlZFB)`N!|zZXmb&DO9;C`L1?+SP*El1uti+Qt4Cijl$?hp!Kp{4^$MxF zj&;csXZ)t)c||BL+V(dPLiZYoeBJH8)TEVwSbKC8Ko2Da{*}<325Kz54F4Sn3_Trb<)P3P}|5@ciqxVY$dt^a3FFv>* zZ53b6UdrsPt*<+{K(RRe-1P^SXnL-zWT!_*V3v$p*^#zwu_vEj z$yTb5Qlng5UA`niT|BGX);*H~`g)8_P!z9iIFRyh4-_H=)jirJp{ABEQ6fRLUzZM$ z2lA+@FGyawL>*|$wRYJL42BoQpLhW18>ye z+P9oq`5Cc2pTzok*x{kU%W9LAu6p9Z@u+NsMLmg8JfT%&J8EIZAP}|t)huE^FA)Mf zeIX>I+ED-A?Z$LN#*nV7fNy3NcF7YtC_npKJY)te+G@|V)lhn4F|1fpAmydwHp zw%M-rSyoy03e^39|D!0`2iwTd$kjoTs!CM}tyiLM~P%mHvk-l^nWGUmrk{ z4j#>8X&6A9hn_^p<91{cR5npPmR33lajs{!MZ2na9o)| zTk4mJc`E1Q;PZCtNpOQ0+)!yaZI7Gaexq~$S(XKYm8-iVulDP3KqSGwTGWMrC3C+b zKO9LXpF-~Bndz)+4mu{djPotRj;pW2bgJpzOfo&2W;0Y>siogW*2FuHPTIfNoIaQ@ z2KI7r$(1+Pa@+RfUZtL{VutqAjz!v5LSf72UfcA@cU4b^UK;B2822(;e>t})n`i*7 zt5RMDtqe`fI!}(0w%fsHFQt4h7>-QaGPhfGYZ0mkP%Nbj@Ul6L>isyahVqdvtd(pv z3tPjMc?4p6b%gaB(`{{~AwIQ`-7!9Nr2jCT0$PWde;|h(#RJrJY z%9RS%YnACq9+`uslm2^&FQ)9#*zaq4DH7Y;7~JQn=MN$^2K!3F*Y5uyk_4Ja`xqka zU7aQCY*PRl@KRnOaeLc>OQ!?x)|Fb6eehzDiil6Ll~_}4o0V9OCOcY6pok7Zn}H9y zV$a>RGMYKePzll~{EV5dc-j6&gs!mu()&HW*l0w!p?>P6_Fb2{DzEVHg%j80q#>w8 zTXVpJgjGWidSUmx2rTeXP2%H1i2Y7Zuf4UjMEfJLSQxNVDG0QSIM0EEb#bk!%YEa- z?w_B1!yX>cw#*6WLxNl$Lta3rWI--l>CpB4bX~)Ix1s_A zHF%5rv%Q1E;{(is2b~waQdivy+Qdf->r$6&v-kFL;yBEdju7EKeFNE3rk2cuiug1A z+#+kA&gh%yoHIN?#ihd>Q0GG zI3j*egf*!Uk?Q2B3sXp~iBAoSEVXSmTenSp)Y3I&o3=NqP25Q_2XkyHA?-4&HEtS- z<3cPU9;L>~o!e}-6=u|RoJSz|?Ga~c2@Q_EAXbfmQl&aBIIe#b2;rPxkR#Qn@pf5V zedAtNC3{ecK__tT=z>J&M9M|!6F=#sL92?Ja`ik<=Er$`%4Z)K4Zi~4V4YQIA;bL) z!L4GJ7}BoyZeA>Cw_tdu2@yDCR;^MRCP`CUUh^2{1WDag7*RWD7nQ#qfH(E=Y9M~d zVO|pFiRGa6dM=e@3rJ0eov_Du0O+~U;=aryjTe6BpJdu&ZgB2o4itDz_hkBXL zIz@|YqO}&t(VI2~9bWoSzNV70>j`|_Vza@E3bRFs0w)N!*!fLQtp#CVU3h84cy;$f zRo=|hCZV44FE6o1>;qQHfF0TKFVWLT4=12PwE!A)D1VzHCYp1P6cbf{G6e7iL0W0e ziA0_>08XY%o67&`lKesCzWz~h)etX*dhlYQ3b3Q;+jm&6a%loos*9cqCYuYl&r5^s zRKD8L>M|=0Gu?VU5IvmIwqDfZPFl8XTcaCu(^GVQe~0uc@ZqMKpgkF?-2gTU?Aofz z%whNu)9&cx>g60q3n`Q=7R?$gd-s>hbuoFPCa>12%)dQWNE<1#?%7^1f^RpA_GFCO zGLKP1@tS-F%WKMaiuKmbptWU_E;&iI12Bo{&MbgZ%^8^Ef9Y51I;cC+kIGcx%zGQ` ze3GQGW~Gf8ER{&N!vwyVk1HI@n`KpYD0`ga_GIIJW{RK zcYHblA)>JzzVs(h?aEFOwN&+RwQct!4y>qvdk8%osL1KtE$wk1?2+2h4c?XabuI|l z8~L1Mrc0B)Rpf@S8kw|qk6m3ImFtgj&T~a6L;4DH2auKmE*YipO^*JwBoTgtb8+2MSvd7n>7;XLTsUITYK@IzEh9ZI+Z@^wJR6Jj{!$V` zm&u$)f+`ESaW4F z0Fy>%)@r>A687ILoJwl3zsbYvuCHN5E;6-B8}O3l+*;wRs{AvSO2w?`kgn=D?VqS) zS{HJ-Zx{+~$u!m3Im&{kM}f>-dfckoN0bX6I=H*iepo44grsCCC240J_yE!8%yZ%P zJjuKLwUL~4R`wkK!I`<$$Y;~{sE(;@InU4>_dl}GVXF%Q=*gYNZ)3pStycs_P&rU; zV45Kznrc@#Ttcfo!TRRKtEq~}5E%TKzHYQa)8_Kpld9sCC9|Eww`1dT(~?kwkrHI_ zO14ym=;F8me_k!hJ6g!w1yWk;bBh!eCc8`n<%Toqse9bBghFj17aA%S&K(?%t3u!U zlvp+I=0(Y#-L&}H^Ao%O>+;cDqX+E8r$;ZY2hjH@J;GORgks-DLn=HxEzic$!T6of zx=Q{gTK$CPa2i;9dYipos<;7ly*u3AHqbt()E&m+uX=zdIek2Oki~HbS;(`dFXj0S zPEXC2gPdoD*#1ans6tC}ue4{WWp6LDLZESKM%*>fl0I#gn6i}*CG`XdL3(_e8jl#y zLlL89HODs+EBRwHMhDU1iZdMhJ2^(ndqqVA zyuKUk;I~EBQU_#vc*+hOoM^&7WaOu?6i14uG7<1>K9LpK{}6jjFjKHe(wW7;|A?iW zJH};sTmzrv!K#&JNrc`Z-g6#fVG63xCn?7EIC!3+KEtt>P2O}@jAUXRI;ZFy4GyoSALq zf#MyTr&bAle@0+g8>;R4UW6r7qUexq+mk()8R?qomRSN>ubH7> z;v5>h;(J`(B^!x1V=~fTx%9$)8+RD?9}eypE3sXbK6Bq!?cM?Is8#vn`~#YH?*qKq zlF7)@<8w^dLT^c1=m_>wjFmG3mQ<+Z{6{m*RTf6$uPxnN$%{QsamhJq4>K;ZG%q&8 zFPNT-d(6);a5Y^4di#lR%MyRHb4LQXh|S5_=w%(`s75cJ#a0pL zwB;<>KAE@M$%l9sK^65dUU@FvZ1;lE_m{E$CK!zJ#Kin)e9jWL=g$LSOJ6#FiaHB^ zbgAXekCia1$^9s#xC(O|HYhqRZ*Gv<$+SFT=6zN@N1NwE6aKZ^DRjpsP%*ggz~QmY z&U(?dHejoWv@IAg4D#V7ZH&fi=`(*AI54}zEusc@`(ZN}#Nm+%es~jeK#Mky ziLY4dbE|&8l}z)9fa&0_5>P|4UQoCRl9Th6@kJxIt~~V<-`R~2F|9_dn$n2rF&gT}Xoth|exvt4-$oTR#T zchLb@mPOX3zm2-g0R}@F&*5VRv!(-IkTj%7|2)BDY@Y~4Q32ttZV9#J^|4iNzL%5& zg_)(~n5-hEAKJ(0Mxx0f7SQ=8BPO3aZO&;s*Zs~YuX<;p?D>!S2T*BsTw3t@FM{OL zi9U&h0w=~3-{qv?d-E0crer8Nv1wP5NRY^4@Zb7Z;o;0oL;U*wjDcUtovN$Sy%_S( z?<@bsKHu+&b8?V2B;)+SK0YqskS)tDsc`&xiavGV8HKQ=$e(B8^h%t(T?bt%r>3Dt z4064f0thHb26Swz^M@_6oV#NMiT{`iOkhDw1kAug&%Zpg#Y+JJKG{@r=nphHhTs12 zMxAOw&Bmz>hyiWM@H#6CN4$xYU^Rohme6P-fa}|F1oc!mx`bgrA0zlko ze`DI{eJC&Px^rokdJZl}^_KEp6NmSu6_CY7SJS3cwni`oPKArryw(#U`SWm3ofaSk z?7ff09FAEfGnhH?_M1-MpI>~C{Puz=2?ut(WENqkkH0+Tv6$1plt%Ekv8b*C?xs64 ze+NT+cl6+gI2peNe_H$rU0aLJCV$UI*Nvg;``%aD3IFYM9e^N4_xe1-tU9^(?Ac90 z>-&j>Kc`lb`4*2jGTlS&*23<@3pko?d>N5F98&mGI-ZG};o!_TH}ebP{hCO81r&!l zh~3BiRVGP(%MJi00sEV?Oj5^rsDnH-R)f9!&F(}jertSJ18kf}|DOGiRr`$M-qJ1S z%&;!%;APdCG7c9ZQQ)8OdomKkWn2$ZfJ%jlk-rUeLT{%uQ0ZV6mQ{p-4NjgAJ^kks zaOJK}E}EB(xs2F#-#zc&!G{ojNx{cnwef{@B38QI&pQR= zfhTno81)ARrL_gbb*H$r{qF>rr{DEy31-w-wqT%or~zb<)iYw3|GL%~u+~6=550e4 ziBD@jfqIEcxz#(vYXFz6050XEzSK*yOA4a<-_Z!zWd8}6`uosxr+v(j75soib>cz~ z{yfzgoT~kq_zAcfi~tRUX;!(}4;lIr)HB9gT}BK0jMLnQ-^V-IlJ++M@ z2iFNOVttmJ4G8+vM=kXKVaGq_rBy^T8#zG<=7=lMyOqNpHvgN(`#F-s&9x27w)!oD zv4P?*k~v)06RH*i<6XSY+Ykc%w?oFH_MiKntPV7~vB2xtw1W2^fY0Fjzm<%6%a}-;07b zU($%xWKKEj(AQPjP}tA@SvLRY+QpMY&Q&nPkiu;EK#5xZbbr|th(6da&qW!IW9$Zzfl(z;g#PF7NN&6r_S{+GwCMZrh8_t3b$|LW z{_D4NN^ikM-8a75Efut&3Ak;J>QhnlN2i*Nz?G4^oOy)dOf%aI1sJo8E_-5KsTH~v z%bVIQ-?eh3{_{0%ytcpMn;631kxQm{?k*S2PQax~n!dL%3`*U(L8e2X)d7E)3S5$C z_1ZCr)^pK9Uv(+;KppQAf&xH?QW@B^&}tR;QgN?>(ed`+YEe$ShFhdHUwDlpMgWVY zfsi~{tN1U>hBHRg9?xg153Gvh?O{?qr$<9BBi0QdTS}&$t9z|EjEW)`K-Z!Ozp`-; z)}_kTn%0B8x7B-3szH{$Qc;LC6L?fvoieN#a{FMTtBr_y-~AWyu(&)IU^tFW*J-qe zk#SvbkL6|pQNxV{C~|)SOedS23vOQIw=%|WId}pdtN$uRlbD^gWA0vk(ePa~P#_!^ z@lMp7FYtr;$i5t44)ibbd6S`gzOD+eEITF0;k9Pa{3_0qn<2fWNu(e!{Z@2Q<-O<1 z$Mm&|k#fb+!8>+9)_q3c5x;bsxZyLjIQtb*{FRG;>{Wd1bRuweRLiRW-Wt&Wsz2|oM{Fr~|ENUP81Iq>}Lb*dfv!Q z7}Kg*Zd&->=T>m*q$VzH7_%h@2H?kJO(>l}>X_x7@IL@@1Vv(8=iUVdfI@nKm!NiT z)UJV`x_M`#jYCo2nnFY0ZNlHEh067oRXAOZj?G5~tt3%Mg|6~lQ$udBMMukFeZDa# zl^Ea!skMlqYoW(ISM}6%LjMave|v=UF2dJ6TzEq|hSysAcKhLKEtG#Uh~9%>zuq4Y zFE48h+$N|ety%N0-$AqQg~cXf^z|%$kcYqB$dC=lcN^#Q5B&`SCH-3!rLJk;YHo>ft=C_wQtlSIoY|3ur<2xg^G---3{iiNybp;CS7}{DW z9Ut-^tu^3{eCZHI9c>zc+L()=;*?`Bg>?{bX4-1#+@=FB?Uz6OuRn!p?xv3dq8AE0T;5Pk*L zO$y6&1==c5j-&dH6>x1CMw}OA>#7n$y}+plv*zN^OTNTGSAvoWI6NV{{Y1JmQ|;n^ zJ^5dHz-Q<3T%+N5PpVu45VZ&&H&D?*!CwCDx%YXK@hW#CaNkNMeko#|y>h9L({*LE z9(jfFAr3lEJ><375pkr9zXdK08Bc(P;(-z*h2aY`#O1g^BF+VSwO>8ISxB4%sv9TJ zH)=K%y^h|W)NJIQXnZB_|7(p8?wmB;t=#)w1u8%)4QeK75km#WKgyDxqClS4&ocKT z<0y!Z{GB6Bb1N1yIlYheWIHM>fb-cIP+4oJuWf-p*Texmz-e`=#uUeiSAx)_q)j^G zL~H%QOx^CM6Uo}+foQsc1nfPpV=Mgm?X4|U%5nga^0dRm#LQhA2>ATCjGMQHX93!) zQV#B(L`*dg4w$B+YtRWHa}q|NY~2Wy9(35O9GC#wLC$%j4iSN3$n|ie2zg$an*4RC zjUG7;e{^L{%modm4=bmX0)7$hTW6}fF&B^ zjIKKRknMiEt*=snqy}DG8P)^YT1H@hxB8f4G?FFkZ9wWJ(Kb?bbJNyjJ9W* ze_ncfY6)yYDRoULGeFd>0~S{O(d9t8p!Tb^9$av1LPsUMLT9EiUgfw>{dH{iU@kWIoCF+K^k%%Kl<^GRjkfF}_pTq;;O#ve0U#*Yd?Pf*P@?E#wnW44fMOO98Keb}F^=X?pmysYLgJ0u_ zZ-Rk&5t@W2tZ~xtWdfd(+kgi~{G48jSM$khj6z*CZ(GaOz5fd$JjSH7%453wLcsWc zFB8j07>(SyJM~Ha+T!O7^l-qU2i&A;9N3c%^ywSASY1 zndI^KwCC=Te%2Tl)(IwFJs2~_H1iU}UMIUbyMgA<*{_cFx15pfF_q6AR`d zLiar%k323N&5GPV`{Vp?5LcYR$HO)bcSh}UY2q)@=!Tr$);D&6#c=<@y+ogj0Q)9M zNm>6|l1~C|pJy+);E{eN>lTI@c;^7Z_*!vO524Fh^eVcPVhpOZ)xTV=Owi;i{T})3xzlPraS#{@IIoagHo<+ zVg44tb9abz_KCg!a086PKsR!7To%N3p;}onJO7?L#@llz0h)4i?nCIW)xAv*}oh;=*xNmege5EWr4ohO~n{Sz_`FTe>?Va^SIy9y-*+l zrR(3AF+}_~7)%ZaB%`^^da@9f3xH%!m_I~N@#h~RcqYCJUI~Rm9(Tt4-%vqmRbB`wLahuyRckdiYxp}_yoMDYJBJ}5WW zmig?05f&e9z(WHpX(AX=JfWR<62N;mgas`yfYov=l>L$ zKQ$icD|_$XqMtq%&{v&n`9%CMT=X|>XA?K$WcU`7-Fs>b%--Mew>f&?90WGvp6pH* ztts_>-dbe#xAAa+5lME&Xle5Pa)|)y_5ZTsTc|c?iP4Z5!cgGXU&>GMVJNWQ~=_J0lH8`P^Cw)-h4^{+#+IY5G+Qm18kGFb_)+d`} zpao&BRZ~<(Ab`I3Bfv6^w?4=*&ga9OAt)_JVwOln3oOlf{C`w1w&(jp;3#%t-xv6w za+B=)2N;RI7k~jHxz4(-e4GscH!9O~BkB+Ar<(oqAj_6UTXSFio#!8l@H9e_zA|n#RY4tAY z1Rvi4luMfw@cf);58@hLuUCD=iQ`k4pCMz@=s0EOify-94=BA4F1a??lJ^r@6}S#0 z-a5@4{d{r~ClhgRAgeSGy7>*i(4quu=(0lm`jR#LObLLl1z>4=vf{^A)gk!@T1`J; zEAvM(UhI5OWzqZjXs64{d`}K3{@ma?$jF(%@~Xlo;9kg(F|UqO2$ zr6a`Y6X<6=8y37);C&OR7=YHvD;XN&?8e#AL~ba@0sVNIb!FT0U9oQXm;|dqc4Of6 z>;fBUZG&wnAx;-7z45@mvXBVIrHTnq4ta8_`QEE&Qp#2&!u|&S1V~ik0q62wq%-37 z`8M1|?kAhH@2MLF-to=BJT@WUu1v?lz zy#EGHY)N(yu&;zBD~&MJc7MyEYrB?h4iZU(wSBN`-BIp$s>uhRFdyMpwWv3>B7;VR19O;(gOqc=UBbzG^&OL4M`U zy%<|A+4c{g?cV!`X3~F?s%(CZmNZN{z&GuR`IkrQFBka>UjF)Y`@HHAJfGqx^N~u$ zF#=!Dq2i--E+Ug1+E(#0`Q1iqmR~q=wBeP6J7SlAe!yh7`C6fGrN*Y@hCSY1-9OK7 z#pfi5lzX=)y~Snz63O}8`%-EK*%gx95MVXKnhj8}*yJMA^;%nYt;qO~n*bv19$LNe zz{+s{TarN|ogMY?3-^ijIW|oh%L0}we@0EDYlS+3U)3SOB7bP(TgLICb&9$z-g+fH z&hd0b7jpRcM(+rmu$Abe2k}!2YF?U%2JA$@FhG+0-$4>7@6LaT*_J(H6g02vRU`<6q#@nIaR@nLbG`d480^x%IB>{?bs zMP+r}jesq>G{7@i2ORtxW%XeETf)xzl!bRgk(Fl}u*r@OB2nXC#YHxtBC}iFa;s3y z22H1KawY%oh3)OW!(~tQ*Stz7hAsDMURv4~Td~^o7I!~7VsKTLI&FlC7N{dH`k5*y z6#O)cN8JV>`I8}AZ42%6doHIZ?Re0*_UNyVpAwX>b-no+>ZQI4ibBSg(8sZEak21sP?Vw3 zkzX_6vN!GeY}Jy73SWsH>dB#^mFq;tH4mP}Jdc{~0BkjXLW&CdK@h|?^WC_3kVS*; z2#C6Ai->Ua_k1W`3q86jdCgzKo3q2a)F2-G1W1ymPXEI>-IFu}Nl3%#GXUv+!&AWe z5VeM?%Q`?^ujL5=qc>Iw3vRKNxB$MA(ER$%LRU8}>r*30vnRH(RN@sS`84T&;Ln#W z$@ud_eZZf$XYApZu3>AQ@2>Cro_v3X?W{NL+QUEYyazr4n@p6GeFl&%4t$5|+k6t0 zy1BqfCQGJ^cId@-()1GaF=TJs>_*Rjx&XT98+%&`1Dnt-iSgs zMbG&{0pDuAd3 zWSwq|SxvNhomkVw0YLZ@=vqaLn|F{nR`xYKHRpLX2G;r@Jjhl^umP}t|9gX|o%O-i z%+eL>3-sb%H)BIf5nH%NsQub)>`3}Bdq#vWy^A?g_|KyQwQfLXx|_0CzQ}DVU^=O< zhTlc#)WW+244%8W4ZlmyJjRhExfPc+a5(KSg-eYz%TH_nAWe0VoMRZPvQHoZ6)H4| zSMWzW?113a7EJ$!Zb|S$d7V6 z41iMX-*BD008bfimh-Y-!Cp)(SRD@BzmlW>;M&xl1dxJ%%igOvjMkokm13gtynvr$ z@#FWSUEWoO5nVA>b^yf6G3ofQ{(o|SU=ja>7#G5PtEuL5GVbvLLBt#f)QF3Zfme)j z5^mEY+hfRg^sj^-_!m(^1@IMu}dGLyunilQRorj(IMN!;;!i+6L58@#a~E}VF4eM zUZFrndN(4gulZDFc8J51{W%l`Dbe|kCi+voT6$)W7EJp66s zmD)c&)W3K*2#cK`_mV4UIe>iB-Tvi){Ute){agJCykiRHt=InxtM&grXBX%5F(Q9% zqwTNqZeN8F-_OLgEBa<0|9>0SO-qO3YkZ{wQkmZJi>CpYC@D7{F$*+pel87A^zVkV z-O8O;>fp6@xepPOY8wl>y>d_En54K$J6cc=LWm?U+tLuQ=1j2PT>_GkMiPxpyrvx` zH$htJL119u+wWIs`++pH4&ef>qO-Se1J35AS^w+j=g-TT^l8njFF%|oi4QdAdI`@n zYaoGUMAzf@x}_oWx`e%t*6;j;dg0##x$eQTwTD?zqx)6Yfp*b3K_C`#9R&du#Fa#B z0g1YiDiyA@Znge-AZ+~O3K3cb4V#hJ+;I@wrL!IV5H!ysng^1z9T~P;z5|)7%T62# zD_KCz__OFtxo9QB<^pq0Z?E4Hs1k8jSev@wDpWeYbPVfW{Y_D$SEL-xLyfZ*96~AI zG5`xy-CC#~U@bRVrdF8KRZ*=+ebAgwQ+#yjYz=?sgWu8Q&bKW?0Etu2H|k_q z6QV~#HzFbIFaCJxAzGHL#OTtf9#HsA;_l5ZEz0 zwp=HJD=c2BwAyDYDr8)eBu9vi`j&$WyZeU=t6XI&#ob?UsCdn~qrb!k zzf}SL$_cPJ>vmrfG9VEJ>cbrKa+t(y>A<6cTM>9t{r<8|ZLVy+V&-J!t{)0p3!I|; zXW*Xg9_K0(dj!nZT}(A-Sz7vz2Y)rojX=|clLKL3B$4MkkaWM*a)CUi1UL7k^TYFn zneT9Nf2MRtt%jSMJaklA3u#*4H}Jp03Rire@+RP?P$d8{`=AlYqfYn|3&<2ZfCvupQ6Ak8Lkw-x$rf=_t%6v@cs>8ZnBf85o>Z{AbgLTz#>db4C5sCc_q4oFxG zV!*~`2!;f1JnQ_j-@s-XN*J|jnrjS_n==sT9>hfiE7CAMVB}E!Rh87Jn%nz@PA_NdF4$-qI1(XK`LzbS*(L& z`Am4I;Ly*Gm#)%P@>6kX>ML$ry*Ny(R9HS3JC)m-)CiLG`Py>tY$D^U_E)}ZG(#LH zm(fO`QM%*OYVNCv#b_pHoN%A7}VAt zA{lodjrW?z4!3&9O}>+IEpba6i{aJdIg$>cdCNsKt z_~;a2G&MfftFDaYoZdE{O%XY+MQh~D#(#7O+FWa^CUZ{3CaAUT+Vwjv3I^#uT)|Em zgAnl)p+NZtA*q8hk0V%IA|fN5e|~C|5IGA^^0rq|C zlP)a|`PWx#&zM2d;F8u}&S)k;>HCKn8&E67wnsS2z%WUHb???9-XH zGgn4?YG{w(5m!m1P; zxMY`8)QGxW<4O({1)9~>)k0+OB}wc2=ehR55}PRdEP zVP!91<77*aR7Bm3({a(+un0<2QPaU zA&+lft0W*dd;0b=C)tC~{}3EUB`N4F01$K%)cO46KYsi6jdxr@UjF&$9H`u`helAT zv4=EFp48)fdhh3mosc6D3j75R38z3&xcM{7>`f_7nJH9tkGc8tlc^|m+wQ;9Jq`2Z z#@xdDcV~Uv#ag}IPg7m|btlpDGD<_KEA>*f9}i2QAE5xhXjm7KtnHl%4Tx-F%o5W`=u_GAkJdL z%Lz5#VK?pX+S8tfNNlPJ!lu0Cr9sJBlpKJC+Sv304YI7;jX1FYDlFJ--8c z{x^LVJvs57|3S=WrNY|1YENAT} zKsMH6Zid*kCwJNMHIGoX7Xvq()BO$UJE@0v>k)p~uV{J`9w?de1^Qb( zAB>kd@Xzk_CY~1a!dL8X$G}T$eXH+G+I@Q$Xcg~Pva=vx$`@R7>n>RkyPrIk3eN-m z8U_4P%A#M1nRaui-WN6p!-JZUMmFjO@JZ>r&}DLJaI$9CD@A$v z`1&0|P?PVZYj<-2Ay*gMnMuB+w(LzBPx|3dbtaj~L`5{dFlx*gcr0VR1K1^=BKA?U z$tg3aO#oF5hp8>h3`RuV!-+N!HeFn8dbFI2Cg4`%0xa_{&;{rQ`NmAQ`^cW?6k+Jz zX?l8M?HjxOA2NZGfcn=^`vSjy_0#LobrQ$zSth=Um$9wgBQu;|3C@UJq8U3vNhR2s zdro?oBV$hitZ??H$Gw;T6G_{<%>Kffws?yg#KV%1HL6cBD+O0H-&rDTIjlQs;7+XD zBa*}cSFhM+U2Tuq?@ z7g~FUFQ)kS@9%xut*KtPbLdLtc&SgQ0<*|rOX(mV!30cnVwJT;d#z}~j`y0hI?T{w zMm#^*YNnBuHuyHN65pPc(d+y9H{l?-GENLukxD5A{{sGK%9ZqK@bp<;Un#M(XGYQ$ z1AN?A>qG1fFvp);-jBre0vzdCW!2GB$s0vr@_n2ne2Tn2Cz*DmYY%U}`n@Us1-z*% zY4_fSIDMDv8TrC5qz-@Etf#pgpTG+sA;3PeN`>X0`wVLJX%H#DMKmbjf;6!8HPs`k zRWW;?wS)rRe4}P3E)3$dik4OO7d$eR#tu5Xc`$kd0s(X8jzi>M+RF=neLUjP#NyN9 ze~UW>56NK}g};x-WB6nr`dU(r$KHQ6>W)MmSEk=l(-bl%|HhXWm(v%pKbKTqvGl9l z5d-0b_I{j0$x2iB@t-p7``*L=-P+y-RCq1MVfqq_qN?$!(^sI8i%0Y0or0Kv2k=#B zgtwCSnEbf(iSSg$#Nr;jrFHbxNk8mD+OkA*!gMxehn=!>PV~xL&!Cois`cYo?pl`d z#A@TO@2h{_aoD+ke}bU2i31@%Lh)4ZgOT;}M^1+~*dz#EkFfW|H;2uh#r!gYU=xvZg(NuAI z6Ypq6EXzuZJi|*~H1ZGhF|c~;Hx*al)pMp!o5_h)G9D}$?!28hA#G#s!ueVJRQp&z zGef#%cAK3Di{I?**@~m48euYHM$(R5#Q|m2H?OO_STV#eoX%Y}cl)#uk#lF}X8DI( zpIvg&RDbY^bYpqC!k$mB>PtuIORd&#&r8E)f({RSq1#E_vfEFyAz?MEccKA{4t@@j zF@Oy@qN!?0T~`yZee|w+mpsm-5~w^D5!dL#!nC1&Zb+r{jZSoARD@dUo~oISsTfew zIho-=;Bzf-l5ZB*X}dUoeVPeid3VTJuy%bx{`yy!7u1C&A%#j8MOZ4`+4Q#~ijSYu;mw({wSB`6}CqCbmM)lG@?_+`qnp&nReB2r39HAs}1i9Vji9Q;W?^S_W2qJ z7#g{}Y7Env+vew$wwWQo;*qpU+r{Lm!1HDu>(7^lrWkg-R!cOOYFts?%)C~FS7@Y< zF5bvcx75FDd0kpdX!UqY(3NtNxkrf_HoNyX3UKcqt7bPpI_iEtM$0S3Py}y@3N_q9 z_O%rU1tn+@TA#-NKOq~amfO7(pI>aIxl3?P)y1xYY+tl{rNO^6z4N<-lMhA)C9}~? zBkGqkJi^3ow#1Vgiu5`Ynkw9P5cu@Hnx&rv%yy@Cw!-@{-3S@<4|>(>B-1G1Nz=!2 zB4tMB0E=x8zfongBg+>TmKp6@9jmOgbH$vFmF=#sg*G9;N9=*C0nkcsktXtyN}|mDV<=1})@`lDMytTxR>r{uA=x(~LgbNp27N?Txlt zXs69gMs$|0Zw`vQP=G5K9j&KVtSjA`<+_45dX}KQ77Gm+i1Y7UYF;uAJln$p5b){ z%mr3fHQgM(<+c4bR{3;u4TJ#0cAK%r4Lhb!ns${QvbojpK%+>yzx+*cQE9v4*r`)Q z!_F8x92g&eL=z#s;iBzm3<@zhsAq5uC;~sYl6nM8e|OoR?RdeDkm!2Qv?W6@Qq(gsk*x)wl$eF7ap-ouh;wmU(aafXOxogWosez z;w>LSx}NT2EHE2#a?%3EXLwdJv*_fTVO6cHv=k@bL*XsdHtf>deAUZF*qcM@s-ukv zR5!2I({|EP(s^ljo9EP&niUWawqwuS%JCj6yqoc+HdFG?H2WwG zOvr@Ob&OV;gmiaAC)_y5%v_)%+Fh$8FcZL5G#qH6V`@9sP^TuY;y{p~<))_GBlE4> z=5rykg-k>X;Rhj+p(yP2*jPnT*9EQ~JaGjiRW%wgYY+ z%bp=j2JU?rteOky^Zb7W|qC4$Cs~eB< zg-%th)w=h9z4PjzC(mDsdP%>XvOD{vi|dJDCFRiig1V|N{IermF@sV;5~;h6B}ZvY z+_(to+5We0ebe4WW~H^VZKd;@>(7sA&V6ulL?^SP!=}OCN{X>SN?j*)sDHLXmxXkt z0BEX$YDhVD5OQaB0CGy*q`rkjE7o|P^5Gz}uE~i2KP>W9xf`oV-a}IDM{ldq7p9=Y zylU6H+)rmq({brlx*ZYn-ei=?oG&_+S3O-O%2Xgq-PwDyWKP1tz9h|aoQcjWe%mYvb?8_T-XA_6Hk4uj3!QiLX`@0S>t(up9|Y6fD8P{#6WIOqH7 z^D%Qd3vGNiF&nxCwx-)24VP~=zs+rw|4vUp|IvtmDqXkTw8Lp)N$b7!r8EAkLqb%> zhOJe=xHD&Oq#1vI)_M53RnL}yvG3ufR@WGhm^p5n8>xrql=j(kgk)_KtKMm3ilF-1 zp1%=_=?&@zmbNgrbs%sojm?c%Z4UR*JiTut_cYa$6&g~oHzq~HzbQiZK?3e;7QdhL zCC^eR%ueOS3>3SDM?m@OVTfF#Er;jp)or~%%nQl2$OuxO>uQ#pweY9mJ5MN*DFYT_ zKU4nlF;{dgDQ@b%} zno?_~7gC-&8D^tsdsSP1I-l;m*|>N}`>+MY?ZS0!Hd;`9Q7k1y+k}i2_gD9&tJJ=j zE${7W)T+x$>n*;Xop(a3{DV{N@T)A(s8e>NN+Vy!1`|@qd zq|=sK+c5I0F(l+h?rWBUh}*Y}O;h^Dt~d6uwM9hr<%8Va6taFYEcXlr7Z)D$ZIqF!*HG7C(cuv2fVCqEL$ivjKm=rsc3wyj1 zZAV99`rhVUw}P1dC`v0QH`cDe(b3EERCXH2<J#GoI6ISl#oMyq4!kU%X$gA!d4&;_@Ct^LICm)uH?1yh z{qpR5^3+uMP0c~&I^Q|ME(N#nvJzbM1DaQ+2D__;jT6s=;qOzHK$Z)Oq`{ z;;p$B`H%5{CgqJY%}pyoEq6uC=U|7B_H~A5rY1-dh^+60?U4=$wBz)L*26^}fwYYc zyRTY7lfAx_(ND6)l76sv15k}UFIJg;AzH}xQ5e-*SiB3cme`}4Andx$%Z|%@x+T2a zFkX-Ng(;VL3wRcT{@BR71c{Hm&MzF8(i3tSL?1!y%QG!#qa5mLOp^-=V0yP(u+OHs zxAaZp5m9|3*zX=eVSZ5syXFYzqV!qSw`+x=t4rjO&4K~n5pzLaj`BKg3;QicxeHp6 z?2it5QllT^N5guv^5)3K#x3Bqx)cOnTNmG{9?;4?<#jozrYkpr}^nIPqC(4q)SNx?@}AqgP)k+}&pV==;Tg!tUL+Y#PV6v!_SqsW6MDr6n z7n4qWgQa(Y*!Q#I(^>3fdiTgqwLPew9&{QQWtwx87PdSYZZTFjsL^Q9Xf)I|9G?g& zG(Ed#Jze~amAGlt+31O&fIy?027u;Sh9vMe%o1a(r)$~IpI2jko|?htrm0e&5UHuI z7IY>@X*Rlg`db-quwrs6Us4|3;QoX(#zgr#^R^1jf>-@aDs6Li8ZI3dw>($rtGnKA zVNlaw5$uP7hrjH1Ek1Wod!}z%T2x;az`KQk6h==P*68{kc0e} zyP^GD@l$p@FUcgxCLp#2NRZDjmvUfSt>glv=bnz8WQyk>FD$ygugLYOGMkW5)JF(S zpo%?Ej@O%ZFDtwq#r_9x{@jZ=;44NK-dm1;*CPY=rjuArCe||}nTS$`n3cugD#Jrfa6fT_&f%r+->$1~fH!P!rn@pJc3F7s?7ByGlN8IsVwo2+J_HDR3bh z)%*`0XpCidL^4dSef{p;6GunKs&yCkD6VQ_IQBvVs`Y5x3UnI?2J{j$M&qHAht5&6 zEsT_udN{%#zqwc@gwN@H(3n?DidVRK{}k2&;8~(ZA$xu$7p|D5UPMgHtE-NP*s#zMqB>O8MR`&SBTEShwX>#imuqrv&xz}6q z$9?tWTUP<7*LYkRp{R2W%9by1I^6;VH7=PFL!4dj)dF)m$eFQ3HvlMd9#Y&~gq1+u z_#6@zwrA&2kX$(osy&Bt&-K1jj^B@Rc{C`@ud6H=Nc|SBsKsabn$0D_>Hh1$c#|gc z=Jpl={|1$MmV;*qKe}rEAucrR_EIeq zGba_LmK)TpKsO41o6#B{F%2^_Go&;Y1H_YT5Hw?i&Ynk#>V(}kZt63t<*i;Cfg;Da ztkP}?gG77DH)2&)4%H@AT13JU`V5*;If5l;@91@I5ef$)qGta#fNR zIe~rmu9FRM{s;Smw0l8f&`sD9M4)yM?)Rd>Q>!;|o{d1tFyhhb>5P%4gC6Nf?nfP( zVuq)Y-b#CrovkUZ>Z?4g*N&PE-BFj;yo?+o()a2H`mesAh6+S}Nnk zw-K~eLDH{t0F7UTBDL;CV<=A>H#-Z2wYz|Rm^bhB3omD4nLz!jp&IIW>E9Bz!PQy# z$?=+WNPEjHc-e-a0rM)fQ%kI%d&6Gbb?)xeoPpq_RZI0c>=@gG7$cI=S}+?wa!>(&buPgf8yjI_TnV_g;w zd>(WgXY#iwIS97lNr>0$-=uzfJF<6PGv72K0q#4cZ{)&<14rh5!3wJ7Ym&xG1h0ob zI4#SIeelW_aKc>S{>yO`!dsWHUA8ML4biEPXx_yiuiT{_p=0z=y$1C4?a^1vOn2!5 zea3HTedgbjjE$QfvsDEQ)~teeR|t;J-Hna`BD2I8)~9sTB^vokMn**yeSa&Mm8QK0 z%eVv!Q>v?&n>$<%vYN8X4By4(Qr&ulrsxPMrb$W#L#;G4o;70M8F=5j2b?6xkG*gN z-01g?Xf~iRnW$H=tQNXO&3JD9_z2}*`Cc%&a_b8-Y@L-1f`s&5khm%z{sqEgk3cK) zb>GD{6VT~=_N2VpQ#-(oZK$SUzBH7154DSRTKTw-9h&>~Q1l5Z0n=Rbq#SbFbtBe! zo3PM)*<7Z)yEa}g4Cn)ka4d3VTOAk|967xYoQP)(@6Lp?dn>-Wf5_mUJ1%<<(Mgzi zuAD@@!;>T3o1jEwDEk5|`&D$pImU2sz0ee{*=9XxSqC+-SGkQaFTMHBvbA6RBkCr` zb4Aq?Q!CpOf$M|{#R)gKh|9rAyqSg)LNkKdoOFhulA4iCOu|95&9)Wpss3~t*8w3X(bw#U+^WxbcG~g|02S+#u6xzz05gBHlr=ge#3_!M+85y`R zGPQ<2)KpjZt|v8y>4w6JvHw)XZjZG@9~ShQTqj0aaHbP?KG?&7AQvv}42L%L((yb$ z;r5~cCWutm=XS*j08z|z4g~)mA#DH^=MON4wmOYq5@rM3)J~P-?#pEg^54G#9F9g< zsHX#Xu9A(7-zzB9!4)2c8ghAgc!0U`R*Ub(&!$~p>J$f_Qwza$hNp+%iTuwqKEmfV zm>OQ#qsjZvz=7nk=ZP2IOwbNoQBlELr~m05wK4eVuo(e^T6&;Xx<#g>2-!p$3?@hR zg65?&3SYe-8!Riy9sNQ)Ya54J3a^`(dhG7&6}z4<3XlMH&!th;M-HDF@cDz0>CgZ9 z0QT0aJ#KIt!L(i;U=nzkfIz~tw6_T{2Ea7%A=a;DR-Sj|Q6q2q*At#S9h|uOU0HoW{c4(Py>wxSaWe!M1q3hN~Sg9Fo z_{9Wv1po00L5=g}f$J|d)yw&*%s>Yr_}k@!3$dpMGShESEgNwI4RpO~syF1-<2;a* zUVB7}?SqO>lo}IgAj;@jf&z9ngQ99o;UrRW1MS4XQ5;0dMX5&$Ve+oYQE(iGfm8qj z+@p{FUbg%T)G)Mw%sc=jsoiKY@-+%u^{al{r7U2^gC%{>dAHNTK$k0B--NfiDK8f2%Qo|MGJw>Y` zRfs=SZ$1642h^1(ARHos^aEZ;MK!#Y5flL9Fd2!&XQkvU7{|5aor}l$2E3q9p1fqI zXmwwptx`Ty($oh)jOT$%ZnH$-0}Ve){s|jy*ezRrkqPJko6RurmBFvKbV~YuhT19^_JRW(oK^Qpoz|u)oM56Mc-4hy_n0 z1CMS~zy^-J9_`+%uznY!q84?)P@m+^GoNw9UdaphE8;F^x_|m>WND`mso>tJLzrqV zmH~z`$kAs@`c?Zu(Dr4|^i}zzLn+t;WuwU{Rd^r2K7++`VWq(?h_&Puyx`6&O@0jW z4}Va>CXkF+V$u|j;{Qd2fg9=t_)YfKE@hl4u!_U+5xmPw2H3>h;e~T$hsla^AZnOj96#--Q_utf_cFNpLmnm}C0gHjF{+wFbla6#Z<=pZpD8 zv?wL&`)+b4Z0LN9QESn2IrmaW3!#RXgI z$nEKSMd3LHBa#{Z8LVJkB@ve45us;*7kw-G*p+46IJ^Ty9 z<4KtexM-Ea5WBDh+=E}qi*`!QVoG&_!@mDSE7R_um$};b&h|dSZ(qAUr&|)w>vUej>e`w ze4YItexLwk$RC@oCo{)_e}TQO$~=8->4g9!?2wE5t-!Qb1^z#lBmF)$ltCaNdkNgY z_wq#(qy6dt=D6)?J?dtQ2Ezdwmz*I;`kJ0(hA#CEf07smf`6~Sx? zp^2os_8qYX2^Z8rc(P~*yKeAeRB;0=2poW@R? zwiOlp#S=Aktez6w5*z4y!IFA(j zoBDUK^!|SYmU_r>_k;48BO-%_N>iB0g`Is2G@)zdT+qseru?8$El2_wVF$yt+kn0U zQr;ULZoPE|jSi@9tO|~gk2i)C^os^e-8Fp&)1yzGJ9mz8u)92529j1Tl$DNmh>J4T zr&=^t$(}Ni=8o2tyc&X+)djMh?!#6VI79Gof@Mvo>emJb-uL+-h4D@1QM4sQwttmFs2BiKGBmpx3qD@9-Q85o3 z)`=X>nCUeV50?&LJfg;H09lIMemcAprvC5@xizVWaEh*q62Z{2swG8JA@yKYAhWm+ zawfO9E&t)LoW>C_Vm{q`5!8;;3<4uXl#_2GBAP*z*b&hM(CBa_(5Xj*e>$O4>{RGWz^Ii4J!0fy|KN^|5F^4=c?mndR zif1ahv6i*ibyQorrWUzG;eXmVmg`r)gW*c*~zz>WMu5t0EcIyzKfY6qZ?&wI6*QK7Mi z+bs7ErPM*6Z#Il3Q?huQ9i*scCXZynI?WF06zTtRtlPLw;ngN^rPqI+^&{QXpUR+o z@1FjOdJMZ7)<591&uXv}?=GEfH@b^@vgD0`~jD2=kDA&mZHo zT?n<1H}}-z99WhUwyO2Q^==#oNUO=rg)rUqJ5PUsxnD0eGHrQah{N(9peuGp!@!SM z+UMYIq|8<@(K3<%0$dWVfPMDo{Jmo9Q$fYVA?U|QGqi{(HnQnfF@}!u&|b6XvU6(@ z$)*D)yg1CFR%&aYyBn1#%>976hQUR7`AVbxDM0iKVfUfNwlxS*)634p0zaGwN;{L~ zzgv=>$o$C^%cb_X#cc%2XFQ+}Pj3P8VmvUlXL$+GN{iB>km$POYOXYHlUa27U|?N% zZXVr2JD6f(`FG6*)T*3|+R2AwTO_Q3Y!J<~W9DpNnAi80Z#W1veJ)4(sw+A}bT<{S zJ0A4eh5fD;?5|K&V?BPFR#dTDE1!Uy@JV(dyO|<%Yk?os4!%SEsqk(TpeUeHc`fj) z*S%3Uw))+5)NKB=8dJ5z1V){#yHqit9C>yMCZjY%?2~lu7Uk&&)ldZNm`9AJtac|> zSEY9)MD@Zv5*Jig5T-APkQ*R7f7!C%kprHH|8?X5ROc=NZBEk=YH8=?=6e$X11*lb1KOc+S%Q_T26CCE zCMPZzXu;RW3Drm~_K-XSeF?7OQY5DrhXIA315ez-?X|`XsA_s`psKrlw&1P;^ zn31s=0-{sqbSu{YC;;%&{nG1sa~sJTps_eUF>c}GHb8@P9?P7YDNQtLL|zKz2?H=7 zaG#BHFSv>F41{@pAV+-JZ?LMNs%mk>c_YhlRj0sGi$bljzF*p}mhMExQsBK$Vk8&9p z4&e-<#4nP)=(RKDBZ%2!cBU#qiH;nv|Uf-*wRfbS=YW z67+7~%0G518qMuOq5UunDceb1!55!CJ(v#&`)IV?jNZ%3nc5jESgdcNh%7SvVjbT^ z*Y~g-t}o!UkH2#i#Fnt?EP|ydR02D3tdmrRrF@mIw{+s57&|3AEpgR@jcOO<J};5B2+_?VICVXk3$zh zFry#%4&pPI4$iJtrFwkn=EVR2!=RGwXabW1vo8sd2YM__vHWgGMg!k~HUHK@i!T}; zs3VY?K4zuo(?rb%Up~Dimbr29w1FI^7??4q1ezM(+>btZ59K}7w=lf^A+Q+tQt-=> zV*(oeMX0R1vEYU6%Mddp(o*@)0it5YE93OI`$0z35z-(opwqLUagQHPLKSr*^8Q+= zvk<0aoj!Hy)Q6~YGEX&l2H8e&)mPGYw;u(}QP1e|AIh=t@72n|YQQRE?T2cGGl)0p zcOOXz-c4|vpOFMjvvGISSAQorDz(5qauGvva7ncV3Ta$+RegVAcVfZPtl?Q{ApHFW zgb$l$r~0FrM2CEiQul+XvSts+Omy186eB59=q^Jw{M#ViTR!KeSkDP%Vv}?A(v2B5 z&2Cbhk5Td&m4}g?J7U|Y;PxCr&{luPC@S>f?!Q15=*H)DL~18C$KSGH-6*l5y9C5> zI15D_Xo>Slwt!pVq+~792|!Ag*Mvt5p)z6&imqXEXiUr@h1f$-cpLB05v>a@{2Ti+ zu_?fb;xl88U=y!J%_r&F&bYw?+Y9`A@O68CsIn?nso%_^qUk#bSFX)a=f9|^D4=VU zmj(8dJKivsu_@1eyemP=MQ{(zUscRg*kEXN?T~2;n6JP`-wI4P-s_z)j^n?XI4{S0 z^ZEzl4eN{~j$EuTtnuxu9ri(;ha*IdAaitoQ-#rK5F)L3ZH}!j+VvuhWu`+M5=Dzw ziX%WIN5aT=*OT{~RyP8yRfS3oBd+t)Vq890=wMV1ug72ZgBz0ueO0syYe!1kG#l27 zZ(WZj@$HI!UpQh8J|-6kBirs0l0ErwJkXp1e_JO|MsB`+4gY^%dCL&l>5^J$Ypk!1C*APm%=} zmEdGJhF)kRXCGv+8CXJ00)~#=*X9yNpc=6(W*h#B_76~k!nd`aJknasYL&K~msDST zal?n&A|bDI-F52z8y4sKcpN&Q=*}m`v`JzaX54N8yZ6J>fPsjI-?b(ss2K- zU>g6~96Ne8!JXb?nIfb3#or7tE>TP!F7YQO`ZDKclR#ABN@rOpP1VIqm$pC&S_Vl$ zbm};`lfNsa&{@{0Tvd2R_WMjYk5)c_K4c3VsO%@4WFuJoq2z{r8s!i|ByNKuP~wq1 zL^tBe-TI;4RtSIlm2sJ3qpry?A>62MEnad}(82JM%7O7Z&!de0<>~b`g6ka!AO^tF zjAVtb?Ll3?TEGR9(9oKKP@N5FIW4LnFTPXLilTR0fgdD~s2v!&d$`Cvnw^<4;tNNYJx);IkDIx> zn)4Aftyo5gFp|H@AZ!oXGTWJYJkh3PqkT{Rtvn?t(ylk-AfH$A5B8qaaaP>@LqT)a zXjmvxH~9kTpRa#CbOC6gOUkX5ugG7y&-jzK;H&Gx;!YS_kZ<*zl(CulyR}xewH~j+ zN;%|DfggO?O8TH&q;|)=QNpZ4ju3LEE7{rr zsXb`VPc>u<0{A%~$G;I-`xDT}ohit$+3-#36Tz$wI@q_MmmtYdss~B7z?_`8GLY< z3$~u$Q+BvW22HBq!2*jIg;?%t_`pQyk{<`rcwZ4d1S$GdBAF^U=sG7sqNOYW@S1sT zG-ws$x&pBkv`da4TnA}FxXIu;=pC`k3ocA?vl$PWz-Ti6`9vs@iA%F!hy0sSC9l_& zAM6oIf=jrz{?_LqY$1FHar9)5S}1b zB9c^tDG%hoSfxn%jL7Fc*q&mk&~a&}8j5|s6+1ri9{}-C)ZTyjP*+$ooRy?DU%e(Y z$WToVGWwja&vt56yar~uTEO*1*CXqVTo2G_uLTrfV6DVkY}6w8m8+(@)&;Ws>hA}} zRV)>{2f`+&hl+ENXx43L>g)0idHZ(1jb(!bTL3-G12_>@zo;a1nR-6XC@PKcFp>7- zW5WC<*-#B7>~6!e6c%j+`0A@5kBv5biv$D8@1T(hibQ%4B5;BUjb9-5*c2dS_ATzW za_SnADU#E?q<>BG=Fj6LZZ3xJpP9n#B3wZoelp`45{>?s0`0e>u z4BgPvYhGtJegchS7=Xci{NCpVYisSM678fMEP&Z%)%G0}S!j_@Z_W48shu3{WddOx zC-|GsKK!J1FSsl-vn@FD+{#Y@*xPY1%)3A?Z{mehGx){dcT^p@z+E0=&PLWd0fkPg z-=Ye$C5=H0O?z@Tu>lYrV^BCl{^w9{-hg3hujl_3ry~G5P~IXomTg5yYosO50vXOb zl|)XM{^xJIhZ)^ToGxoAxd!e^SNf$itw>+6g9sIP#FqM1Cr7-2}^dm`HY z2+m!U=aY{u;@r{kzESuN^851NLN2%n8tsuChbTs?cSc-C^g;peV}lpd0GDM$Qf3J< zpr41vbu72(S_@MeBa=XG?+T!Bowv<;$xY0ZLZ=rFt;-vSRPqzdJBBSMxTE>pqR91s z@vYLqJyA!5%arC*1{TWNo$d?IA?(5hS1Dpm`%*}#VcbtG%V#h z8P(nkf@&-#RM7u$nB4zR?K1BnQZ*aQOZ;)wi2Mx7n$5M(2Z~i@Q|qgePK>F?Oz9LG zB@WQ2T2mOTY72m&jswsWa2nm!9*Rz*aYb6}_KO(`y1&8D&0D``D63>ht}x=+7VHXr zHz1=PrYq2sl){SA*n!Bdg(a*^=OM^sE8Qt2hrjTl;!J z-KQB)wxX?x+Tm7XeLOI{-Ba~Kf=%7lf;u=hNJPgtpCb_=-HCU%g1VVMsIfgedaf8l z7p$^JNufZdw*b#2Le6si`hp<~OgX?t>+wM>nG%!%8nyy!*a=SK+2ju_uM^;6j!IDn z+f`!SDQEgJruy(hL~x;ie`b{zeK0ycO_n!Puy|<&x@0CC*$!+iW zk!DsM%pku4X_8O#u} z@O76WhIG4zV4RgqP(tF|>{Kq43H-Xk(zk%I7K)YO4@Mt?V)FB54SPOPkk8(aw&D^n zgku!S)0Vh!d)1Y{)#^ODtF>I6;RGE-8UOJ3aJh^t)Hw9LUVgjPL(#9#1)3-J zXH4b5JQ*!W=Sml3oT|*B^*ceTqGxU7+P2-U0@iTinjvj4BHn3$TZr%M`Dq}P>yL(z zAA(jlb>S%t1o$XO>&mJze=4Tnk|5P+gFl@VzwD3CKgH65+gTzM+?t^ja!%?N3SAJh z5()=bwi&pGpJG#CF7P{~BfTqIX#9smb8J4R6I^5yJ8}v;t)X`&ynnx;;gt`9T3w4b zw4)17(6>E|T==4$Phd=1sl?V7U4`BD6zgme}MWCoMsc5$b$}a_aIKm?oA3 zC8AV$D>*X&*d)VRdktW15_^cz8VFwkMYDBr*2|q$V*pl3n(T^bhEpU}3~i=&UtzGW zq=wPE!G``=M(*XS!tGH=1WZ^mhK;|0V(RZH6Sw~0YU29K;KR8*RJ%i*}qWP z;5xx7!hwJgl1aw8$;9dET#=0^+kiBfXk<8QJNWSF(cN6st(6rO+EG&#;Udo^46iXR z=0R~FxH*51{$@aCe@M^gt`0DL-J@Fbx9kI%mDn?C4@+(%7|<1StM%LP-+J@>|A3|Z ze}|zF=w|BDi!;cq%t~uXK+xvotF){6o_yZfsGmpT8G@J*X~V(9nK=z`XavgTKqJKS zutVKrf-tV=N=M0y5x>RKZp*QS*m5+O%ozlFC33@;L3;9@-qJ?b;Jrxg5EK5Dz2Fvz zuD*;Fx=`>n?hN$`GeAnB2r{E7B8t)$L`0V+%s_y5Q^^Dw=uWymD2H7&0)9RZ)O4!N zh-y0t%s_lcm(T9#%x%$WgOX{m?*qVH$bqTuAGn+m`x@lL{0Z-x6qpxfcK**SGL#TO z%(zoU(ofEZ^`c3+N}i%W3tQx zXlTrP%T^B}HY$7b`F!{LS?*}HJQ{KVjD)PwCyBjTK7@dAP?MD$feSu!Uc?QiI)!NU z07AXN;PMJYAgSU2R{PcK@>)d>gb|&X%by?2XA2X9tq8FnHi5%XnrhJxdb)Y-Rv>bQ zntEpP7p;o^4mtn^G-P)3rAw7R9bUE%`}k-rChN&`D2I7+0H9}$KcMGqHrcmXX$Yl) z>qp?m7KkRUaQ*}?`L}R{0o_N{au!ub)zd8vDiyhn*xeKa(3Pq3!!2?Lg4jclOGOCZ z&)sAyv)G6EbGQjSil2=5(hxRZ2}%S}h|MC_x0NHIH)wBEQj?>Bg5lCSo65*0(4%@) z2~s+dVJ7$^K?`&ttLe2=VI~Dl<$1%Xq;7kz;2epk`eB??*9Y<4yH@nNv9&Y9M98|6 zZ&+Ho8#C<+piB}mdzYZ{EDlvnD@{2uxb2a!;9Nr0j3RK^O=><+2|?ofHm35AKt;DV zTeE?LOq~Z*QQ}PW+qXAT_kwRwM~d0K0#Nzy01xb-htqH*e~Bi={qT42M9_JGlo4sI z#A-;G1Ak~DsnsBuay}SHK`^lYq>SSh&PD-wL~?qJpYIc(sVaZ<2S5CPj-|8laXEXkK_c8^teoUDO0#a z63PP#pOW8ILhkW@W&5B|@gDIIQ$?;}9%cvkLa-EiM{kIEN4hcS#-RNdNXZ>a!Rvxe z0Qvt2coXGw?Z@#NBb{F`T*cav1fhl3f_o{T0mBt>@}SqYRz!(O937rDY#=^)kt{y> zTXwKiFwet%!E9PD+USw4;R$TADk@AU%zcO6O4Rz99eXwZ3c{oEN1-!k{Cm5|CMal` z&R_F~;@uIz11jek!}a7Ag~e|pb`Sa^DDa80KfQ1g^gJYXk`6)`1=0Y6$zp~UBP>(Z zxlND?H5z8BTFiR^E^jZrtK^wizkd-_2))jvgI~JJ0atuO5dXpS^0N_t(97xF#X$4( z*a~KP=v1+TR;z8D8{F7BXMo98bU>%+%VXmLo?LC0p_uuv6b>VXU@_KW~0cY2* zkM^p*%;FAtw2G4R4E=fyRtMJ(@69iRukmh4-+!KR&D!(lDfVwrQJI^2d&uUv=$(y4 zohB(o?eD14;R04`WjERvZ&|AG7P7Z=RD$n`E0>1$O}0hG#8u9cUtW-^Ud_;aKr*|y z*B?>zgn}2L1Kw%WCoPQQ6E>?q!DzZ4m7jOC7t)XqQEpTweh9cnMwCy~!$xhKM6Hy%!b6=c|v+s0kFX7(dZ)^0LVa z*+0kxAeg;gxr4+((zT&ru^qpRTBAEZx`%h7ahn`Mj~|HU?+yTY!j26cPw=&aY)`?T zs2n#Gpt*BR2(<@ATfQcP%>`4Skz_MQ+ddEhFQV3*MWB<`$s*W9Wn~F-onXswzyT zP!GDK0^f~+9<~59lldhCfnISBp^QRAs1PZuNDEh}G|aT4jJ8T~HYA%QN{Te>k;-Uk z5t67-DQzmHt*xkjucOY-nTz{*e)s)-{2&?d0OgIoPJNWR5EV)O3rkMy&! z?bWJl|J}C#I~jnY`wbXZYg)k+v+FBxwz?%7q#8*h09nrUdT+OTa`45t$7#PSog5aV_!q&j*T-}hhGp3Whv|)uUZvGcXnM6?_0MJRk+d0v2AAR zaay4Ht#GVGbZ302q;F&EZv?KZJ*-~iqzvAx1;Xk@Q(O|Rj7=cUyS zH^TSVwYi1K9C_aU-7N7B;j^c+#(n+xpnO)mk_A*3#k9W7svHGSPWP}^1O@I@Ei`S# zilpf|@wWGR6Zq8y1_lxZM~WGWrBX;g**uHWt3Lk}rrqVR=UuDWR$nLs+|R~{i(q7- z*;W$0hqER7zlg@cX%j!Z_@GiU7nYQop)v+8Z(kzL1oqf`iaTdL$G@Z2s8^OUp2%t_ z)Cw4NzSgdp-@?pNltTW-c`14*k3AAQJIS5Wf1uU`(k!ed%-8>TwZ)tk%VX{Q=>KU` zz+;c_uG^I>Pr6n_3mUYPRd0xJNz4R!z3u;|B_;1EK|C=GfZAqdCg5 z$G_~_qk~<8;_iyMoUj!3w{T}nIKcCk?HRniZAQKPB>f;8aNVF;`s9V5eOpUU zDne9S$>^6r$j;Mz=WCreE&;>c1pVGV&|oRywPBQ-Q`auYX|s;k4*4vJR_UqQ`UduX zsvY|sIMFHC$c^P8hew~HwoE(L+jpbhTDKHZ9Pbk-FPre>1SVd4H&83qt?QPX`TOD0 zbV}(d`D4r?GT86b=pYinKYY(84jhzrVq}exc69=j@R6 zdgUj`h@T>Kp?8G3t1N>0u3%Tk*80MjJK4$+7PO157#qINcld1+(*hEf)M`Z*cB^-e zNW{0>NaeTI4}^$xE`(Nu$#j8Nd)V9LA>Z1buv!HCb-k-<2!53v+_Se1ZJ6r34WsXW zev3&r(K=^v?Bxe;`}SgY0p7~Zg7-U__pBS*f0{()`YyI+=cZ$^3g`Jvgau@ohSa~o zxokiQ;j3!+g#98R#fS$|R6hzrD|<&Vl%BJ5-02|n0b)OAYygMb$w>^9F7k|*^N&H3 z6_k)BY4v#Q&nCD5DBy7mVMhE$y7;*=XQ>=zKl5j?aSW10c+CF#ed7dI?3Mp|XthJ3 z?)z`M9#<#;Pjk1Lon&*85BeflKjc%N#e2%>NsAOZ*9z)CpcWq{&=YaO+3XSfaU2@J z=YEdSNbk`N=&t~0?_%dZRUa0zy(2@SaPwcbSiaAimZKME(jKVW_>q|v|MGe6x#C*U z$qBOW;JTHHlXL4n|Fj5<+RgwxC^gl!_5Iq{DzhURvVkfl<(q46y*=;44dUa>jX1|A zVMk>juqUYQBZyurkz{N*#BH4aAJ&D!<%5UtR)#@tf^4VHTLrtep9Eg9HbC@eBjk+< z_2`s@RyE;37yGw|8g+|L(5Y@?xxuVi(Y;DpKL`dkA`%K&mr;y^WMloN);O1*os>(qJE~CS-{DU5+U- zt!jQU_|PX1S-2y^UYJeFWw!do%(-@!sJiX$#zBn?UW~Ko{&K%J0;^8OsrBpr=CoNG zBcQ_}3_X=c%JIEj5xu8c-YP0uErM16dA;ju7*=B^zl(GMAU*{>*=#$3-Z*sO%8`km zQE=^Ae2LJHePgq6ZL$tE=ZCflF4@3L7iJ$)x`L{vFOb_S)`~t4Q@CzZC(GJ7W_1IH z1lEkV{3h%iq^BA;&-^n?eUx^`u>v9$#EEx5F>m;U>Crw!ocLxpKT4Qs^Dt3}+5fUyzvn3I`ox`St`F z4-_QKzOJKZwGYoJ6{khEb~eqeGrX4rHd2lYu^wNkX1FaL2fXIqh@B1}PYH@fw8{5; zFVCJ;Sr5!&6Yw+%{GKIR{VUo%7eZ@!m$cu0WPfkhck5?C4`|#}{^uz3;}*Jgq(I~P z^pt|Yd{IUn6tgtiOQCCaQfG$EO)HF4O|qp*LslG~!Sc0u-X&2YHFK7Qxp^62<(@CT z!PCScXdjy z0%U9q)1f3$KZEtG5Tg#0SbL24Bq7*#@ zm-6F{QP0@J!+6hBoU}>1MVOvkon0x4Kc6e+_)yEgytKEw)C6+yon7#UxS1!$ACc5$ ze%bEzoa)Euuce%yv$47Up*{r#ec(>pZhpjkgZM;UcT1gSO<_)pQ=}{Kw|)$JBq|OW ze#sa#HpF}M1`TYezDwJ^z`bB!?#oNd%1`AQeJFJ}m021exw~UudG0J^XND`k^_Q+~ zGIm&!br=D>M>e*fYC)`{@LRq)C{30Vmo4%D;!)>2!?EioFS9dEY}b+BkBqP!lqQD+ zfES2wmx`W7)*Z0}dHVM1r0mpoGl*+CXO5D>x8F5mS(|ly-8ILyGrWc6x7yAKvF|8< zEK+upXt7N@A3@Yy;sgZxt=2u~)K&dQ`6P<7-^wmj=b&6wtBiw&2F>QLA}oe()Lh9@ z`8tmkXINYXg2@S*t5<)97tJ-zUvOdL1 z8#2^kdEdA1UK12E-WcKsAV!rnEaHGHm{-sPW^0EG&y5RXX6s5xPU?Y{P`36vu|e_2 zG+(J@Hp1?&DY4O2lI+iR7e-rc_>z6(DQeQJ5EDCbR$C*2X#U@GH#6J$*@*F7o1>2k z1#$pgx+Ioi-Hm2dhk~@zKUdqkOI+eWQqh>TEX5=Hi%Ln>GJwS(2$Ct8hj>8HkqR62IuDFyg>NM(vEZl(%D<_+5UhL zR!Iqv?ukWXK6@zP0k9mblO8N$u5>WYSbpv-tN#5uXs|j(bS;c>K2EvI{EYd#SGhN- zLQO8-4D^GUY33hXVJgLs0zGv3X^>4)F~Vy}l~@m4^S{b=DgMw=+q+rXH4>6%mOG0^ z3|mMxPgq#l=ZrAkYJvsc75>a;XPJnF$DdcQC4E2hJ&AJYNhBxaMp}3>rwu!yi?nuE zh0~Mf>v)g~YbA0CdEmd)c6-u%7EcYPcP*&_0`R*jy?z`L#U3aU_h)acF5GB@4M-Js zVpoOwT}rI8<3Nl}fyz^-QXJaK{fkL$_7J*~Hvw&iThj;6smDst)CxO+0F)tW}Ug~w2zE15Hk6u7UpJ__!( zOu(GDDY&;Y*!KA-nHNBHX04yfsyJs0GYsGTFXGt!VR7Y^goqOKw^5J-^ zr@^eZ>C@&i+d`a#24f0vY(>^){PrHsZwUcU8kwDS&z-&CdBPSlg1TlKzQfUNjkkJ1 z!5S$Wi2_#hIX71+|-6aWXN)elk}ZIY9YVakblB^?op9mv6uIn| z5X{2F# z#JG>@04qYT_WHt9v>>jbFHOX}{h(HCsH_MJqS>!N8cM8JEhjYuaYf7=d&&2^PQ0U40zBoa#|>3P`F3Ma3XxCh6b9n7Ra$1*KVy;Bmccr_m7+F_h2-|{F+cEZ_$yYcWwJny%tH?coLq=Q$0`ryFp9 zwC)G)gdBl>E@OvjNIPUviIZvgw*N6Hwd35gv%qAlJJI?#U6~Mlu7@xWMBB{-OKDEW zO`Cb$Kt+_}e_r5z#1mjiMj&KqKQzZ zn1w5sgwW+#g>4a76=ak4f4L~NW^FP$tEj&$Q@nShd^;Gy(_N#iHc%V~Wmq$@C15H* z1a}{}exWRL%``DDrFDjC&S+g+zg8G)YeK^M60`cnt7<%*fSrAS^Dr`eS>wX+eGdlY zc&~DghrH_f6>$tcHpG`Ug8-=czShRie*;y8X$ikcPQa!j7-#n8W#}cA#g}$lC-Uop zJJcl=b-nr9b6zhG$)wnlPIZjPr9XU3vcr45b=j_On0zkbrDI6~tMk1psWQGH&JGbF zI=ilagJ+m>^Yz4v7I18YHDIb0S;y!a{I@T4N_sr?BG4PK5pY1>GEYBN%Jr-6MsSFi z+<0i^fP!n(GzB?g4(V8b4T#dtabAK;#E}r>nZnjX zOegxzLo6=S&p}Q#clJuDj9sLnBNj}6OApdfFoOx64PmxsO3ZSjvB{aa;juI1H4N?+tAs7im(fRh0*$r*(6b z`ePC=>&z>bZZnRG1M;gzB)ZoEuMRH8C#cpE%0~RcQU(F%>ab}@zgKluII!BGcHKzT?nGfG>Iv8w8+^a6)`4FTAL~zbO$Lp&KhLZ zrCT84z{*mYrQH1eMVu!3#o2j!l)?wa&1Yu`r)VrH z5oK(cV#(qtK(LQ4(Fw1%OEp4F!c!#J*M-%6#WT9%Aspxh$2d(7LrEkbYBoTqYgR=5nOv(;Z_Xz9Ao8`>g0id5^sa88O= zu24VhLSW_mN4sRqfxA6n8ZZ}iNMXTR?@_kM;&Yuh7-EAE`l)q9Vc6$oOp|x_3Ve*f zi(G#8Z?>fnFFGMTG&aoU8Rz-+eGy_hSZ8FVCxlye8E{MwKC{M-o42??ydJ2)>8A6^Z^M` zL(@X=DZMB`E}p|_uWTEC!yn9k36674>S5n9*yuSdU6__`h?V;P?;r+;!ADg@f4&zUZN$XQ(DGJwKYHi&op ziIYbt^B&fMDEZ_Cno;AB31}F+JR>w275>&`lO{3!#*i6Q{MzNKU+Pb)c2CEHm=Xya zJFBI|Olr!!W-xJLpE?d}2?yhvR_K9GZapo*)Hc!Z!pwEj@`hNG9({w)zzv>4uY5n1 z?Vd6vw?j3a5FGmfx(a!r_MC_Qt{HbAVH3_qxP;iDae4X9r{)2vX|g0>aMUKicbCsssg4TTTdEzV8fi!avVR<%9`Qf!TYdB6gorW=bll(U!Q5En%Ko%{i@^ z<4!5$#t>Z*{|=1tUjSr~ckeM7R-&t!eJ@&&>DF?OC&l0W(G3iU1&37qpk%pH9?k>i ze4)dSc7qK7fHZcc)r)z#bfFD!#}r6+#^iA{4nvmWzEW%*m?MN-3;ha*q0pGdEJn_6 z<$5SigC_u&%AqY?Ahswu!D_obXODgwd~|drzso^urmed>g`Qaoo>@x3$9I1|v*_70 z`NIYh#EB4^X9lr$n&&=1Id9XpBntDK9WYFMT+%i`LeeEG$uAjg?2p()jbrPuAuZy& z-UcwK>%ddZqP`#Lc9WjMopOL~1;B&Up{A2>rFjyw=(dnhSdHI1=KF7&H2>V)KKWG*oq=a_BO;#c)nQWHODeDA1ztzp{)E`HrV17Nt9W8f+Y1MFN5>o znXA;gLydp((kA7k9Jn7gc%YrXGl?ZRLo-?f(*rdh* z)MK0s`DeM-cdM!o64m%?(c>0r-pr$%cX@+4sDX(={cpv+jz$5wTcsp_I2ZpZrRFP6 zFA7+O?I5Aw^h+@YsvMlvq=wXD=v1LFa?>CC~bf( zm}z=DCO&3nSDYm#u13eQ=VY0eXvUeK7x5ml^x)bZ7=sGx&b-Z!7^0FXWI`nW<*|E2 z|D7o1_Z|8mxmm{CcIRvrPB6E;rG(ryZ9ffc=tPu_Bz+xdzuXUezIPcD-jvjc2p<{C z%#T%}XYeL0+SpLE-pQW%WX|v0bb)>+wERy~IR>Isi#Kwo&gR?^&?!2N=8sj_MW)99 zaaU>&FT7vKewqC6{qWN}keqO;M_P*Q)Ws|Xgx8z&>e!uXlYsY-LdJ}^^Uf$Jr$#T~@E6WWl>x~X~Ww({) z>_1Ax=HNltiDKV0;?7C}^OL3sSa52RHS zc)Y8eijbmy1l6piiqq=nQiUvowyd)}`(@_$4L}|k8@6}EP5N_9Zw}d=oY3b&pmBL3 zpk!gY3d8hb{Gr{PWL@|1LDNSQuN$eeF7H`+8bytp#sC#(FK*(-qdYd0`K&AMu}F}o za)(<4d#uS$1nHTDY#>-xJo*mhpy^p>MQ)R71abBhc^sM*juw)A0Tq(`3WtG?mM+Q2 z?nrE7CkmUW(`2297-~@(@CUa##GBTSGx{AS0IH*Im+ow>%U?uNd8rh+N%d{<$VyQw zG;Mu@)Lx@0fnJxBi1GlgXY7byLc@X8|6Ml_hrSLixMJwgb!vYg&GM$_(|V-%)d%lG z^{3~PoPY@|99(AS4dRVbjT5F|rs=;{vd*w>!LTAYt8YhL?0fAdkHe zwN&Wn`yh}WdfmV#ob%h6MgMv%W~-9JKahY>d#PJ5kz*k|F`^QBI~G(6Mq1gqj{OH@ z3@_Hmws~xnixv@t9y{RPPIp@~b5M3D4Vi++`+6I{ zxW!1kGy_b1o6rebb9}T=8IqfH3+w8WEQc$J*P94Z=PQ^V8Wu*nL(`EcZ5;hZYrP2`Y9ozxfSA8=;@WD@Q$Um4 z_>wWCg$xHLqVp&cAlylE1k_9TXJ3hyXxv2xAKCB9{dmb3$ZjW^{r%7PCmcH17eGiP z{MpCvB$5&)iRL`osUCM7Xc4csE|rUD6)u7MgN<_P8KIci93Y#(Yw&e(Lg9e$+aOT5 zJbx>lc%}=;!enSYRH&yCw#Jr+8BW;GXTq-ScO z%*-mK>Ei3T5vPf~y{LE%K}KyqAD!To^Lgh{jxfdf)rilF8=TmQhd5+sC1W7@0}tX1 z4$q`NXE=XYY0Ke0aPVbx4Ih|)xO<+38MmJ6(gNVDgBAAFV|r~FxtJj3r{Rtg)(iO8 zWrZCySXA-4r5+$4@7!*=*YniPA*Wz$8n;fM7a}`-NGjLy+nZGj$(E(sWNZhzdZZ$l zJ#!;R8%T@H)V!N(FZb`sSFv=AxI=(6>AgAwA!6_C^XKR?NwTQxNWzggz*rXSczwQp z!;=bcwe4x%qUYpTjcDYb;h($Z1$C62+tIc*DhbyRuPD1ZtVR6A`^C(nzBq26hP@`D`nGSm3`fllco2E~|D90}$u6=oFr$z!gqH{iDtWpMlm5=jw6_@k+3?;Sz z=Gn^vtZF%=3#B*6xuPyd1@-4#?yo6h3wvyA_@&-;5!0S!r@J@C;*m81mU;#NMTH&e zha77$;>J%SZtC*5+CT=vSp*9M>mT zTdzF9U_7apI3RRunPp>t#d@Dd&XXg(}q4fE`)=%8OC2Xu~^CS-s2)!{#TI$LSA zaPktGd3usi>k6LZoD)led+H{_7HupdDOQyEaq92bLy^U`1tO6o z6|yAMN>oN1XDxAgedlVg#_>KwMOC`01*(9lpOOz}-%Oi1#%Im60of4@bukgn%3RGx zc0+2buf_s{m{qTKjnf6~e`GoWSag!CgSySaQ5D(H`GbW~&Md>1AXcVeeJi|oh$(Th zAQ(#U*GsAv`aq~WjHOJpOW`x(-V>c5Iy7k6n-$VRrMbyYgIi3e;vlBwz-{cRWjAO3 zqC{gVUwTU-Cl_IV5qX{h7iPVVm-l9=tk=^E*g!&WM70ZhD8_3@I)4S$%v4PdB9$3K z8@%~G(G0?ohF#F_Y{^fcdXb%G-H_J^kd{Cm@VK+2w<`Un*QNxTQPEI7#>sO4BAY_S z7U2=`463NFYy>m$b&rA+d(kmv<2!F!{i4Ts1m>L(IqT;lyRTtNd8(IJUy!nW{vOxyOs6)oY3H2KOtepgiUgEN?{ zWe6l|SGlNgOLmH&unKlrxY}!K;8b4B@Mz?EL8c=QUVvjsfl*U4P$AtO*{Q(vicGgiJ;?$PzWh?`x=h0C_hy!>7m72z7w*Uex`}{V zwn@zGDRdLMxQWalnT@~QggM>B*g`DMxiFsNqZRq+Hkg>f$69F`W1~`^b0=FMLep^9 zawK$->NE_2M5vynQQ9mX5CEk7*x6W>E>skf+?KKg4Ihrd97M0t1#z~>?u|sy1#Qg~ z2Cf?NpBIX=C%E6kP~|e=*>R$I09li_`NNL_lme|EqKqIZJ~Pc;2wjru0F4fS?+7wg z6J=E+%$jRH_LW*toc4qUi@SkwC$4g}jQvRB@ao%g<-7K%eFT$TPo(;dq-(XBp80@w zjuOv5%D$ohUD=0tu>s;luhVL+d}M->AbM)H8L6~ML}L4?iqB>W5`78P!k;v5_ue;r z*7QX5j-)TGr$PhL!>UHEq@FG<8^IU{DE)WON|mS5*TY%V>)LJ1`?vX=EurweA4r9( zpeVlwQVPSU`kU(KnY4uK^;#rtrv;vCvCq_WYIj}OBqeFDS9s*tm5!DS^{jmBvrHY0 zQ6rI+m~~=X?)W;KG230LmY1f@3p&X(P974P@XLoKGVDY@hq6@)4Q(1ZzmuBrn;%g1 zs>g-}R_~{M`x3>3(Y*)plALDO7@Sq7PSoc1Z$PCKYW=}@z%a#a?q9z&7W%`B=@u$e zu(9WYed>K^)Ks~p z$Ia5{%kt_?$hHwe0C7DooSxu+KPI3KI$4(?D)b(+`S zo3?D8Vph$nu9x9HyDGgnycyp<0G}1mwFPaJe+-Cj&!a?+m}0=s_9kYWqLeDqs?aeY zVqZTW0P9<68S-St=~a=^&p3Ye|9RBc`JnqWE>M6 zcUFttW}X0OP%A1>V?uPS4Awic*=xFPMMi&&A?na-!$v479 z)K#3ym21S(w1>vu3smer+v#|HkM#GSjiLV(MTXF(%1?|5_&Qe4wH)`3C|RW2NE>in zu!1~EzK9LvffjpUeVhsup8lQMZ6)lBc7I4VrvW#l_}J^?aNqhscj8l}^uOt6Z=w(- za)N^BbpxU|HU?FV^IrWmYMYKD;r znN{sc7Hc81Nt9Hu!c<>Ju(iZNpTSxfB9Q*(`)V0^<{aT1c|)k7#c)Qhp%rfn!{9Gw zG2=OhrCA|Z27d#S+nhIt+1uRbSO1D*^|`~QfAnl+TJ`@)o7aX6lu2;ul*-3&NNSt0 z?17EFbZM=jQ9KTS$YMm)tJu`OQ6qLT&6U}!5Q!J+k6*>cIxOsim8m8tq+6Pe`>j~Q z(%CIcD;-HYWs_zyGZ( zfWI`9h}RX0x~a1h@h<~G{J$Qffc?#@_*06QQN(f&sP77FbeToG+<%O+V{zpvZ4UeT zUw_C$ib1ug$@5Ex?fk7Khy3M3ib2D-0`*gbvY&YLkqOIQR19~b#xZqb11zo%)cah6 z2Lj#joi~|&bRQDK&H~v^SK@B2-=Ef?!6}6MkFbu#lJkTS66u|l!z||{VGMUEv|J<) zZL+cLlR(GFq2|&L&Z(v)Mgw) z^2wB4L9CsCJLEpGKYR@hxm0zT;_-<4qcWFrLfh;$*j{$}{3h(}^^iahdMe2Y_v&`H zFmaC)1^9N)CeRDetV@ITm!16S`lQLz=5L^X31s~MFeWk-YN;B^J9P?BkQoCgckc5M zbPwU4=h*iU217^5m}3BzxJd>uMI2McBQwb!T*#lU2T%dw2RoM=!BPUT@Iv|Wm4E#; z`>4v_D>e=L;^p&@g$)os(#s9uQ&c9W`!w4+SEDKr~iDwL}pC%urER} zEKrFr(f>0Ni{3Xt+N;7!8`t8k2~|WBG?dkA0&!521k}wc@`U*QY(mmI)8)RLCHMsa zN?XBVn@Impl-lVtEX4i&5)-X{_gB*&qTsU2HNmds`qfbp^`-TK&Z89K`?*H+(aIhI zDc4mVkD`kIr8dz2Vnc{x5DREXmOZK2kutA(^hS>Sxt0QU#g|6{tJ%r3DGB<=+yok` zuyE&Zsq*X1IQjIo#p25g!i`ICo=qet9S3r9rv>h_0a}cnP@1?|<*i*B1et>W_YVr$ zaF_)jjR)|``WrMN)#$}vq>gP^cOd={i#*k+q!Q|2^Xk^g)~x$7E?~(WooMfN0udO zhS!PdRIp0vi7sLv$~xA?rrZz&KqdjLS+js3dFMVcxRmyQpm{kHr4x5q%!^qoC7Dc( znT@bY$&FP%%|^A{{u_HpRo}s$okZxW;;GM)fTrtm4MonnU@r$zt`Q(_PmAHayjTf2f~)+sz^mR)M;Pi#Df0q zuEX~VdT%5}=F?o0YmUjJ2Wd?aH@?qx1(YDN#!f-}uD$dE&gy5K+Q(wd>F^wnVWQrb>xr6X4Bd^ZMJ1QJVtKG%~mdiBPR zcFgg}#RKv6Z@>8l#E?-hS#)P!#YE{smAT8O`{%tDNZ-S3eF*@w^EPC4u|HY7uhOi+ zyeala2IE=9E`H9hrWP@wXEo&8atK&9f;w4H8*3CehdFjP8Ma(Tkn}8&hgbIkuyiAP zQWbk_yUr&ffXtE)f(`@l1CQP>IXZRKwb8m}DUML08xn`j$0OSYNc;9j5icZmui;pj z2;W!6I+JK#%53+K^YQ(ZU}(Ks&7AOijT)>(*9YRhwChU4l|%{gU%2D-EG@I5R?=}L zE5hcAM3D*6nAlDPKe6CGXxkVmY701x3@C|T;uiyPvP-k9>o^No5AdDBhhC4ES5;5P zQ1$RitGDy*eg{i@Q{j3jn63vnXH@ z;#L(W2O)mDkq#Z{&$N>h=H0uxj5&T!k--<&rWj_!{`5lZ8@*EMZ476xvkT^T8-ASv zoo`~MKn|||oC0l&=S+c=kr)sjz%|UOxO1iFm4*X4op=_$zKeO;xsj4P_Ued{HIB?H zQKyp)>h%GZBb0y3pF(ca1#|;aO3fUSoN#*Hbu;F1kHDZod-wVdrn~o(oUL~OKoBE;<+rnx zd%QNi>C|a%a=@Sal!3`22^3J<$?5Di_V>T@irG-;TY2NRj|{%uvLy?|P2YLvw=sF1 zE{TcVNNHosW^E$-N9!nnk<9V}*mx7B@dDYT--a=RiG0~NjM*LmIlQd9J?4og z=|#Zt^xAiPBLtEib&rXR_*|_ymDJ?R2|2Lpph4W;lQ6ldcx&}`VzW%z))i8cCOqb{ z%(7dFMjF3r7KbM7iDhXg2AEvOF~Q%L;ZlMvxIz}i77F4o!Q5@$|F2=APm^l}^)Fjb zI!Y$CZb*Q!quB|`;h#l=0X@br_9eP`+2tTvrXC#hudL?Eo;db+zPkF(##=9|Fiwd~ zkT?0LZxohj2>J4ekR~Sno+71bk*zUIU-V}$6)IN3{#Aucsm#2^-E;beB+vgbBw5QD zl4O8&3eI0-O07>`{+UUO#H_NPxb;%3PU?<6Gu`d*Y5w2e8&=E}5sm=fJCG73cg^t6 z+i!FG_p|iW%(HFAhJgj3LsK)i&pP$4laX^g=>kSZgcJre{uZli7_221wWADyhN*`<#pPRa)7##kZ`%q6^ymL8PDw}>vS?GI zJ0^2b;H$_I(yr6E1aP4;KpQfC5UHWbt+%l^V_F`6Pe*T0sV!k^FbS-^JJ1iGePuv0 zqfh&2cj?Erg8vW)3Y2#3Q?Ya_+O?Q; zXCUsJ9YoD-qO}mcSk)dUdn%5Q%ez#27TBen;;(MHc_mTg9{F3oC5ZmhfAOw+)59Ul z%nrmpsjh2dxVul3#=iQIrg`Au2Y0dFEsoH%SYkfQ-*4uabc@I(o0u3lP+*(>O})lN znM-Fv11qTK?WZ9;0u>kg0$ZiblZ%Q;7{!@j3cSt>8z+BhN0EJYGkHT2@FMAdZVNha zTLO4=XdlM*Zd96_1UzoO>nW0D$vR29@$xeJ?YPwlnFUDu02fHK`aDoEGp%yrRfG`@ zgoZqk5JB(jUodz39|s{)Npro^p6UnkU#xB-Uyw9;cGCjeRh1@Ix^9W=i1tO|8&-I) z2Msy_FdGkd5A($z=SCzfggkrC%rMQKRW<9^2yKq={GY_#@Z`=;r#B|;>RV5I6{J0L z@=$U5_cVU0_@r0bwdE&FuwO3{TagqeRq`qMFrjBU?HM2wFmz)G>a_ULJLVh=Sv;8h zB7tDP9yrV9_}Y@O531KlN#2_7A5$H!^=F&?l{a;6NrF<(`myMeI6xK4iI>~gOI!N+ z2(W-Ay1fz5&FPCAtW@H6VsL$SDw~<=_p6HJKhc@5jy=8EJEje1mj}49k4j$PIGO^J z;^?CsZY;WC4L#Orz&0; z^Y--^&i=0#K!i6iJ`H3qqGDf-VS26lI&7fn{@ONr13{3pgI=Ab$8j=)%&L2vruDuT z+4x+0-%m)*og%**tAHcz0`s==5tqm(?=F*X^6g%RAb#Od?zsN@IV<4~jWl6e6rg6S z&2j`{k>uRB*mwhZJ{oH0h0p#?Yv&jj!4nM)oXOaTPGYA`!=~&}(npJj)SFzoNyds$ z=}wmu+ND|D|1;SuQo|i>F1e`(zJK2Pje&Q0ie&*ex-n71BF9>9uAxzO>|1$Rqeo#e za|;~25_=-r8eBh4RSer#_xs-YZaNr;&QH?`yVVaWy{C%|om@`>f_-Q`!NRv-y-|i0 zx3M#VIOxQ~ueOCJ(st~n%;1fjr~6xci8OStD2+SNk zNSRoI(_k!}LwrVgO!8$XK=NoirbUIy6!i&)?Y96!N^hJUyFa`;V=xSw?9+n+d6J@V zPQai=5Y=6A-FfVa#i$jEXAGcXIH5Jt4hw5b(!pa)Z+iAWH6LDiKSgdm1*W!El+Xrl zp(L}pB8{kpHnx|r+NPp1wjMW&sSeqfi*>5|;3+(OsBPwtzDe?}9=D#iy(cTCNpbSW zKLVa4B&nvopyM9?+iQmvf+t3D|70AOU-Jpl^MB)xi^T;wm(Teka)Uc811NDrD`5RM zGf3&kd%L~3SMe5e?!F#rw#M?!3lBeL$5v5d#54{5%6@pWE!@c}7-ODkKbEd%frZOZ`;YS@Qs%O6;)b7kRXNt-spf(XqdP7MR z<5x;aJ`v@NR|lT-Lb3Z9$q58Q8Fg++E1|$ogVi6V03kLL;7CUW4Db082K~z zDK_Nc(U*hztyW0reSG1(xHfLy;sP96`m8U$3-*8e^c5(kYjaTFt~w{TS*mjiLZU6y zrew@HV`D8M5p2I5$9S&_)41Lq4HTi@8z?xgH`8$qd)~&B$uu-31eenR1xP`FGxZ0w^FKy1=h^Wjbdr3t;$oI9pvZ*EJq{W&UDb517TmP4x+S%f~$&DzO8f`Zoj*MJfT~~Mh#f!h!>kY9NKKR#QZu;X2pRoUg5j#rU+23393;XXn zEtf18(=#fhwC}I{w|0QrQ)jMb$v>=JA<+A+S zY9aOyIakOn{As8A!C@^}PNq1g3l@uutHMU$hPG3@VDrUAyG&uUi)^i;Z|OqM-p@)7PkqkM%i|X~eqAzw zYY-Qo(qH&vqWNI1meXUV`^)6)6e~TS!Z%{HUT_@159WCe7}-1SpywA@p!UY#)sEq?xPG5>u-hV!!@0iQ5L3I`pkSkV9d zkvo4SCwv+`C0XvdpRwVds!5t_=qdI+%7H)bYYO9-SsB0VIKzNlJo^5ieDxVYdm zOS7ilYPqcJi}I$mmX`NQ3LG)Y_xAR_s(o}(qist>vu?a&n1ARfs9>(YsUA?db8Occ z_KTMu&X@jZcu?Mq{vC60E*E#@r046T-tuP$YOsI!>lz6k&yC4#L=C+3L>Df6XtSis zjR!+a)dL5TqO}V1tV12-$a$9-uh{sjR@uEim}X}vF6N__cn1*hx-E8b01XGT%8$m zQ<*nBaqB_jlBWv#%FJ)-If=c!%FDP!@uG5($FC2Dy?mt34>=^5Zed~J17!0XC~AFy zvU&5HZRo!(w5wSAq(Jt{d$dDliHeGD(MG>y=KJ^Wb6KS;SFSun4u-Cw%Q)+6@O(6g zK3$jNW3J{ty_@k|E%)ZE7{vT+U=1og-8Oi|@X9-UhAURMBf*%}E2F)B{W(~ueeO+? z)VI;>AzV6yLf05M~9)+c;|*RtJ(CVr>8HpIM?RgxN##5J%g}Xe34aB68_e2 zp3V$--kb$9^;w+8z+-tj72CKywq*f25w6HAg3W?#L3w19d*-8BD-E zXoKrKHU{bl_D2PnA9B_e-$eXZciW0NJ@iEU0s`ia8a1kmXOof*@H2KjKUpkTGCLS( zXq-t8l8?`u5U&4t0}wkRI77t6#Sso#<1&Xco8zF;*CE`MM@uftFq_?(7LwCF znX|gr|LgLlOLyOxE6YVK4C+|FWs6u!%1iS(;vfAkU#@e#xR7%t2S;I_S}IlfvOnvS zAnx;}*0^;0jPsmxl=CD%&i{15xFp46g2T?*TfqmsgWY;`(A0`_-McqZL`38j7yw^T z6PyRffp@7Gi^Z~QC|U;U&x?~+1q@p{zE)SCtEn+3U8)LD!|W>4Cm~hH@rX`&`BK%z zB?047c{>z|HOi$wU9DrIc=k(a4r$cY(-RdFTRnQpQe)Qj8#l~8K@~O))3AF^o4>{#JsMLVp!MGPKKx1KbVi?W7o)q$#N6cImVq}{ucY>f66yz&nl@# zjGuf^k*KX%b6m3xqjohzq>Kj&? zxTYeIx86PA8gcXo>*-+@@{(rg=X^aczagqB~wdi7bnDr`yTRaaLh)^r8IQuj5a z|H5i8VSJ6+w*txjdyj-W{NHoL4*-RLO>G?&diSnfg>($|-klvIYinv27eTf2ZwbZQ zXHY1;f^^WeH{wTRc4ba6*y6Td^E65leTb3GsTE`r28143+xg|0dd$rU(aqW7=FW6# zNdA6v6Gsfz7+o1C$J!9Ys+^QDg`fY%gtclaD%F17&}q&KtwAJG>Efw0NOIAE16G7~ zF))&aty?0^Cl^3lVTG!i+7H*8cjcVh@7)gE5+5J$FgePi1{l?y9h>x3*+&Jbvk~yFFN3ewQu@u76kg;6S&N zimK{D%}&nw!*^dr7$OD%amg0UJ-APwL*Z255Nnm4Q}g=YW607CPwylr1O-iH0sIpd zW@2w|FS=|Q>*)e`=qM_OS;s&fb#B3(DI~P&&<(I@o4E6F-f6j2;uEAn6Pnww9;l3a zXDcgrx@Ih2lxtIt9;|~yb)Ys}8}@(rt5m6jx6NXZ(E`o-&G();)BtMmP-E*QZu55u ztM>0q>xa)`~)LA zz)RC!zs}lh{-Xe*r#`)1dNV&I%SH9tuvm|eo$>JS0f1Jw{N4NaSH@iev~EkF&I#nU z;Ja>q={3z}OVhyNZhQ?#$K)o~687aUHKcqVeZ(n>AF73!dt$D6)oOa)r%sK?e_(Rl zv3*xmg8R_Fcf@b{t|0_w)!BpuIfDZg=hjq!7rfBr`=0gN5>K4qHn8dW+&v2EzYn6! zML+%S$={5FBr_n#x+>z*zSghnJ5kz+C@2`(nEiklLmG0G+FHl(fd_SDEt=*hLRd^K z5W9h{v5u=ne_40+;@__^ntSOI{}|UFj)@XsD<#Cmy#Xm5SrBvgu4=S(@!du@0DiyV z19Nvo{mWcOC!fEq(j(!?iYOr&>&vXP4^O7^RzB7Z$mD$bHW8ffr-yoIvX`m*{c#ld zCM74_4~TP-`u)?l&Ha?qCy09e@nan?j}f^bCtJQVX+<1P17c(LRIfG1yVHG}5P^5R zzpC8zxMXhiMaky2QS$QgSGSbM7c4;C9%?Y6*69#yo4kvQ9P2`v}X(a}k)NzfcUP2t}2gC!0cvxhD5 z&nqsLFgnnAW9oVQsoc2aGWG%ZUJvR71qCb6X6*Wjk;wVj*ropnT0gi33#HfI>)mwV zP5OP=3Ki80wIe*j>_;#+bTEKU>}xo&)gJ{V{c&PP9Nc)A)!Es(K~FE#R!vpa6fEJx zhvrL2_+ksxI@{aXRe(HS-*y?pDHUbqqv3i{=Dyc&-qg)QRf7Lt9o*3|%3S$L(h9}e z$|pR&zP@(o0`J#eb`|1dB{*K&f}X>t$3k-UlJDk!rO%X<)U2tgX|2Y=GY^`sGLrwt zUGwna!a4J$1)hVypC}?KI_kBYyu1NU`k!&yN87yfvoBw+cCEqca{KGAzj}KEjpgkbbE3Lp-uqKFyG!=?a2*=M<*q!Y z(}sIad!p-)3!`RlNDf|Mx}aw+&yW#@Th{l)dMS!(8mG*jcXf8Sx98d!mfym;|6U3&n@{o(`U%aO`h;*{L8icHam+$M+uznjDRQ-0-x#hQhv{q*a zXZy+ew5Y$mp5f+n)Y}MQlsmZhXH`IST%mRRQFnLumr2A8BqERw6*|166lM}E!)Z7b zkK6z43hS{?M8RSS?V#oM>%;XoZI#*MyZ-{2yda~BlXV<61QyIke{63P@8)cdLBoC z{n#l$t>XQ)dZmH~z8#)+WGT0ql;oCEGJh9MFd|W1LLWcs=;1WtzXmDAkv(JLgFS3B z;gDXyU52J^l8WeUu+shw0CHFST?EipXxb(GC~mYijUu{(6x6_y0BgHl-_B44NhXU_j%UK&e zm`5LCf>Er{wGUG4Nt7^m<){*_L#zXnm<}s@Nw}XJ`!&zlurW#^YxFQmt^FN8}V{x_AldiNnPQg_8-!KN5I-{Ya-apLmV*Y`k{hOeaQ%s$iU zPqh=u_&nJc-u@4koXZrh{I(?j$+Z3_*H zetpKAKm7-}A1VC&oE%ZJzxPM!w33#fj?N}AT*_N)p5nOOc~u0!t@9E9 zhfc3~AzX@te?m`-V(+4#Kc4hDw=ao?LE_uHUE+n)9~=r^u&D!nhDQ~9TNHWGVl%tu z7~1dpq=8A~J!?6IV=W1s*Ah2Z%TY?wz@@|?_mg7!*M`lqY_UqEkmZA`i)Oc9P48SU z>*rDb_VNNgw@o#o{@Qmwzx&Pk;a%R~?kVXW{~~P5F}3-RMW`Y%5lqD!k>;r$#alqs zOEUA5@bWU+wcM@e=e^9rlJ@95(1BV~WApL;bm}v2L!;2sO4+9Dd8sw%QTO4QJ7IJE z<8Ggx^ZrHpJ0q$x0w$1BX-~6c@50G-SE6S+O-U$rEDUSf9JA`jF~tRq_a0@ASc6&2 zyZMToNll!{+4+^>h(CEgj~7k&@>==m-loUtN2{*d7c$eJ+n1DNWlnX^wLfq^^UL-h zhgj>AIV<~M{}R6)s`LbkJ}=uKdczGcXlAqCs={Nvs1}^sKSa^t3;3hz{x^Ch-mXjP z(N&*TmiI;=5z>tlu_P57Y-ShvO&u3pG@-ByQfucvsCA@9#L2^E@OjZ=dzu+MBS8vr z*Y)$|{YgpXXzvfVUYm~xe$+o&Tz+;#C@j;Cwr?-~F7y(!%%|_R9biyh+DSST zrvhH(p`r_LO=&=>xbmlLAtK@;OXxq1%Rd?(7}{!F0@;$_8}rNg38%gdc-QI|etCJIwVgn6+0~dZB?jAR! z#c8`%SAx%tVJ*Z1*n`21>5BO8vCon5D<-r@MU2Wg#Of$@bNdcmjHzJV2QPptMtqad z3)hB*W@c^sLNhG%CttO2e^7e&oF2>JS^jy?Wgdk8ws)sOn4|W=pxVO?7pA6rh?REb z#yo=sLjKUVcm)%J0C%WsID1Ot2HZK zwg)ke;|G~$lu{3|&NZRQFp~Jy&mkx#d$*?dXK?Q#5^vaskTW&vj1cGG9tWbDOjBhhn|qS8 z2L5?_?!g4i{%!n*f37IZR*Jb~1=BtJp{6$)B><0?T=QBwmL5e!c0W@5@#sD#+(!s( zMIm5R3(1>UBDQaXnuDiR$v~{dheRxI$YfuA4%B#T_FTqi+CGU_{o^x*hR8yCaW0uA zj>(j3N#8@e239)G_m1CT3~7bmk?!p1Wb+H`gX-HXe4kv1ax>z0<96J}lM$PsmJ3+R z9+<=&MN)qRFzJ<25k`&DdCL7yvh_SxvgRniO!oehhwX*TQrMEnJC@hXXPiJ50V-0HwTa7peijy|qhGOM*N*;Q{;SV#3 zL+b-2v;IVYd}}|GO9z=VJqIj8pr_F7hs|f4*Y&qupd0H7uP|HdUeXXZgqdMw^c>EU zUYDSR^kr`oD^F)y(032J)$FIMq|BA|czxZLi!Imo&Yw^iyv#(n=XQ>oRK$koR~W;Q zU+z(K#QCx5glrm1L*1LjPAPK@$B>kGQC>Fs=*#q>61NR_DNhq(w0~HRa5uRyfddun z%Yov}vm^C)Rc7j+pF4p+E2V1TgdmShD~50%V%~QKMX=8xo=W8*9Etj0E@a$HsRm<1 z7u6D-U4b7S#(?6N5p=pQW1yGlb)fZHesw}!e-A>`2`UX))o_14ZKhGGLl+nTm+&VQlxDdiFk_fLY(~DUF}415{>zc z=+6u4MS6P%;NO>l%>E29qmcw9yVirG`uQ!z?rOg0EJMy_`v9bSXy(?h!`Xq#jRKVk zz!YvB(Q`SlGG+H0=I|EqY4|zA>_sN+E*ygbx#kC9;2K*G9Tu{UI$~Ej^Bm2hK0gclznM{v9^G z?KYo%f`6J;?nn7A-K|=PnecJ6h*(G3Kv_-N1NHDTAFVn23PFpjifrX!G6;b+)l4YujZgJd7Qz1h~(X&9z*o*ER{FlA-$*t31lo;9b{w+ zK<0du8zc3n3Clz#Ea`=IzA4-Z_L$>?D|X2^6pqNY!sA3C37&QENhd&o=FsPZKVtHg zzdrF&?At9nVtVDURX&m!^)2jOiE7>F?tMrl{*$JyXSyXuzZ~wC>{aDT6SXK2o0oeH zWzh&X@s%OlE4xd24qY^)?c5F(BJM=NUAEfluV3sSa;1zDA&0};FBJ4mp<6785 zbW~@ARU`HhX_mwD=)Af}6ga2^RhCv37$4l6?zQH(r-4tgKLu+ix$Yc4@qAH3?*@NW z$0tIdQ43=NOwCdtRI$WmU;6!h#ByM%`*>U9h*1d7HCWt3@+%>LKAKMa5ENGiRZ3U? zz8I@XgrR2^w`WZRKxg=KjJXH2t^oZT-GqbK2Q2~o$6&;hRaURTw64PW_KC)#nL+lz)oyDPy@5U9e5y zWc$6`y~L*=Q;=W@WGMFXIWBsx+dOf>|H!%y?{hgY27q^`0CAgEd>D&t7@UxMe$R>S zZQ=>xGJXE`F)))|iR-{ij|yEbA-ce3XTmp&)#0NP4MKE6SMEXa!-xJ@HdYXIG}V3) zNYI{Psk9*J)rMi$6;z=c2~j^SEFi0A(4M zr_*0X*nlB?NRQD}pB_Ff{NtVQx5sMBOi^-$TXy_{eJR)UzGf4;jRI3WUa9fzttiLH zIaISEw08#>Oy|jxpAf7QFDQvH?6d{Rf<=-H<6n28axEMgt`OY((_41Dd8<`L2xnXK zDEz$Ysxi^ZK7hVw(@I$$)A{Mg+la42JU5BtwSbyKmmCkw8Rapkewlc}DykkT>6_D< z3}Y@Tb0^1M6gYZr&n>&~{05?GVpKMY6|L4py1%DXI(j)W_c}1x+aF6bG7z^V5LpsQ z&>O#ClVe1@;e>Z;p^cK_8EzDH(jBJa|Gb&Wz9)19x<3S9+7R{jc^JyapgtL`9&ibeYCPO%F^9z45>PLB8ZQSxU2Gzw_Y$sse10uk z(%55R26}G&h3mLm>|m0dD-xE|$qJ&c6@<2?qBc;7ef7~Y_Mjh**Pe~&vK7F3#5Z+@ z+bnOhm?{2n25YLDww2lwAr8VJwLcrucH0g_Aj^WD@*ibIylB)Qh1%o_p^>Txnr@4r zpP3F(oT0{WrW`^SBbI^dRdW`1M~^ay%WEg~xNiDe=O7zB+ptxC#7k4$v)5_AZOi+7%k zF)Q02d6kYikBiTFaA1q%&MKNc>l!=cCqb1p^A!k=1@O7rU^^Kb<@-<!#p!~ImZsd^y!_8--DNqW5;~rY08bFul|T#BjE1*WFRN}ksG@SF><5l zp!u)&SIl+oEL>jzoXvnZ%$F-*4S=>5@T52;JJ9sjyE5qxxa?NmF!c@P#Vo3hfzTY% zDBp{wzh3(W+yi&mSbm4#MWD6n-GL?$(Pl>&Tj-XK{l;nFv*jD8R_$^eG}53%Bf|FN zBi*oTGF=R_0pp<<@sWGCxwdxDbm4ylUBnsc!=qxD`>}2gvPi7z z)fZ^{AcWAOnIJNCWlx|GqPJr_E?GpiAf_HzT=?b9e@ph#BHXtAM@aZZL%(EN(T==J zQFreIQ4fR=7)|7f<*ge>O3qMX^P~E5Ip`VA@MWibpEf;LE=o+?5klqQ0;Cpqpjx{F z;H;~aGtqD0KHVP9yr6#!ly8$d)4qC#YHA8ixiMTPL*osf9hJYQ1Lxq-1_5Fu7KQ2q z_}G%I`+uGrhs2RAK$|qE)J>(P+)$0r=(wK%2#M+F<~C4ZYPSfUQ?;H)f~Xq>dO`-A z<^>v|AHn+VR46soFx0T@t$P|Kx?zOFW=NS6c|bUtXM#4%AW(fjW!GfcnO-8*SM%1| z>S7r3PR_I{l5iDgq1n{b%ob(PrWSN7c+B!L9@vMf8K}YOGjO^5tv1w~q(X)|u$Z?r zy|gh8Oh~fqX8^+(G$cW&r3tkgylH8dsb&z6lVj#HZQa>XGb7=UGZDf4(Yn|kHRw+{ zw>eEy0WQmQ;~ny6s2_SubEn(PWHzeU)Ht;?u>0Ytth$Lo&%{j#KQ?W6%tgd;z{B$& zvjiN+fwKSDO5lk9P0w+RGicrdBMtE|8*Lrun%l15>1|>RXaJFH zdpt6G2>QP=Gg!i4TAo{Pt-mxP;s}Ky3Sc=hHTf(!LJ6P{nhJxO`LLUVAJ7FqL@wD3 za_Vc@XbJ^a-uzg5UD7mCuBM0oB?@0h!x4%UmDK7iHTd}`x~#-ojuZWpFvR7!HMd`S z5UhU%gw9kO10mdLEfgSNN<_10e<4KUwjFA#D@1nOSV&tFEVp%YSmO6SrMw-vu<&}N z&R_R1lcOH7xIi>?;~;28G+P56#!F&(0}ow{AVr{N+?!3K_nZwXxnt%vT;4{GQwjGD z2@l)J*h0FV^rfxxyBp4gw%h|JqO5Of%RoJ;&SM((GLR_DP>JeA!hD)pgrF3`YOP<) z$h#(MO=5@&0EAr#i9~kK2BvDdfvUh&9gBjsba%uz9>3~Q(hGGhN*RbH{JcCvbGRMb zDLu0g^3`di2f}=XBWNO9B6sdR4IRM=t88(>+{MXwcchNMu@QRM0QYQ1iV0~88cUNJ zMN;Zxk3+?if)l+__n>*R$oKa$Zm8r&xsRgjoBofEglKk1E=^nVd$q<2X+5O^XR{i$ z++A-oZ{5L=Lj<>KA!9H#gTY*e=0(}kzs7R1tI>HPmL&a0pzp2_6dIe;rl5hi@O5NR zQ~eDDETjI@WF77N>pfVPQ973`i_l4xm=H@pfYhCn?Tf&X({XP+)I+C%=7b&V^3zG0 zj$QPF;oC4RCl;nM?VVfkAkj!QCNQy*dihcQMX_<_Wrj`OT#FVA4BEZ`n9MfRa&l|~ zbhMe_i<$P|`pFLMq|*qV``o<)lWkm-AgWC^0_a9X8WwH=)#!eQ(aE{CC6S$=N74>W zClzHMgP!{i(odDbu#R>O2SI=l%%D7fClJ(M8XoOwqv-NHnn(=W#X<_y#6&_g;6D33~^xT^>py}wV5C_?Zz-?oK_ z!yyCeN=3juD}=_t`h)+Q!r~DaG+pn}o{xI|1ouw$GDG)EA(+ZXd{yi)k&yjI@X~|A zcXj%GP6Yd758^ncW?xCi?I$7yAmhmef&C6+YT=JqO|`!a!OzO4P(Ks4i#Oh&_Wt18 zDK~XAsLd8ef%?_mJCTbzK zsHC&56f*SbAvIxQ;7u^AIR`3-3$UR#G7-uT{qEu$(s&(EEIilO1iTU07qx;xyF3cXhIQVKnAC8XCc4GxV7Uwjbqb zDd)oHA$(wW1SuYh#E-T^6SToW{Gg-uCbnH>SgPMD98v=CZUYRMHX+NCL&{SxMtxMT zEXO_*Nk72;Azdb?l~hp*G>C zZxm7}YKPv@_k4q3ezl;1l;RK#|D$-M1w&Z}V|TdT#wWKx0k{Ya!#=Hs_XzRvo*Eys zp@y%wbbeworRGKf);gtj-$TfN_p#hZzN=CR()6L|^EKu;ew(f^)y$}eTq3@iBdV6y z=ZMZuks9E;L>Jvp-iQ{W!NYyPmWWRgPmmRD6l9`tovIQ2Agoud-y>Cl!qU$Vd-2?a zlwD8_rszt=L>?fz7Z`J8y7?XTIK_3EY~mL!J5!i~3;TX9yta}avc3|sh#h#??W2M* zGD#R`bVz(3SrV#dVzekVl!R$c_iZ9qa5Lg_k&+?IOUW&a&k*%LH;3A^!CbE$e#2oLeoPB216v;SBk^#njT>Z0CpMtIX$AT&+9W+4_R=7#Zv zf!U=g#0>riKvAg%W@uus@gbAR6J;;rjnw5jq9B!>6qA0{yhtEiao%Z~AmXqW>?8Nh=20V)H zgwQj#HNA(IcLH+`A0Ta+ zAjybey|X~ZiJu*YyT%Gu+WmH9V7CMSP{SE$4NjwBavGcBJz$r_2H}wmT_}mN&jK(j ziT^GTfC>VnYyRA5HGqQp59B?W&VrAK_YPS^z?B%sj}+!}-^3L0=+7#ni|oNkpf4QJ z+whjz#~$(*!()~!C7&O7AW{?CdWct16#jqKGm`_%nOGocb@6A#fLGtRT!zX|XPV3H zg7Lu??U_BFr-+5}Xx4|HJhhjI=He9Tcy<4QEY)bfhB&GkTN^#(g}*-Q34{FI}ub9z^r^#zF2y`E+Lxg?}zaQHde6g+-L zWQ;NSEp0hmHnk@#yx#j{tLdlF3t?q$*%k3(iDvF8N2M_rs~_FTY#CiH8-DR;-UDkDV;7eE*c6B=N)Ni%CkwX4u#QTiO=1u=b;kbX9FLi!06xxDoge-H%3 zLh|6~%sM!#sky^%1U9@uv+O1^;G>;a;iz6Pv2v?cH5{9?N-o++>3g(nrJhcJg+DM0 z?c*QFE#oTA!YFD->bHie{dj|@Xlpr#18K@{X*4XdEG=wX^n*Lj6EERB$ZQO_0M}Ks z5WLn{?I2fmm-i*2g`4n29493u8f_y)vtW!h?|&7%M!SFg$K$U)Khgh72?>qS^V$=uajIeP+Oo`xu|J)1!nscY=V}z8!;B$;MI&KB&R*8yr}x?9 zui0uwHB2<<-zbg-c#wCIclkK@8vJE_&^W7>TAQID$VFq{0;KTOoD8hk^WWW%JD0{kW%y911+ zSOwhOZ|<@@+{2-S7`+zNrOf7iMQzUwN%$f5?q?5ISYxbP^unG%b;~-U2>FT+7K=y0 zR@2>H)1QD%Od0u0N^?b(2S#9>cUDo4yBXOMacOp?kVe&V>TxippR=X^Qi^GT!A||J zaxJFOaFB{kp_IrGN`fIA!v^{JPRkO`cONQZ9a{|YQyOktqeT4lmB^<@54PNyNex&3 zQ>oe>Fe+|QM=z;BP*%(7runKB z@3V-nhxgq-X*>v#cxt%f^%iu87DA4fK6Tg{ON=mxUtvONY&$jGE+_?E92tpBJSN$` zZbfb5{5r95>Qr!f4SC*iC87{CFuCq9y1XZTy1YaEHZ#Q|+Lu!el;ea55q?noKQS>C zQZ?1>bHs7LVpPmNGD!rE2yZ%pFB7oiKaZJ|6TUbMR@CTTD54T_w1#gUiNnTz5gNzDKp>%3!oC)q=zw&Q-F@;pSLh1 zowN^z9zwDWnd@&Qvqmu!=-X;njJH=j23ib7AdEzd$eVKO%>Z*mHJWzN@m0K>V{c^( z^598XNMgr!GDd?DU*+P*wo_>Zn51n_r4l^3x!i(oGrc>c;m1aH0_P61gY3sOb-WBD z(ciAAG!K-<{&Gw6&3>tSfzSn25qD1S9Ed0Ls5*`oXF84c+9Nb`O5?iZlR}u-ga;ND za97jMyMRr$VEFAZzz(gqBjRhG@*4bt0|{oob_v|FWB%mk@cnk=SGN{w&_nuN>_Y4w z$pZ9u0+VOzC3aWRnvKU;kS-1sHAJ*vE<2)awL@n+CBRuDvOZ@0vFUuR05cy)a?p+P zQ*L}rQ03I>D)-j{MXXKGxvM`#lN$_zxK|t!F9?+aThlFi&YzIIHbEk2Bq^l^x2zT^ zB8ztYZd0HFzer^^`Rhh&cHm)-JoBli^6QpXUv+%kf-0S6z%e~~Iv3D{q{zPF_((<| zq-wY@6giF3<|R!bMiR7P(N~oq2n+gfit_Wt8URLLJ1#+%lW~G)_%!7(8LH{y`1}!- zL6!qd-@F+}mk1MrSd2Ybdh)KiIsW`QVsyWJ0x|dK5If(ox&@SJ=%Km$Nhk;(h@#fq zeIv|EGo=ZjhcXgplfw~%rub~o0nok&Slk#i|XNo?P=Y?odY>;zWz_;n$av`xyD<9 zr*De-!m(Xwwz?LoT?e$ycSTJO=%X?9!rZCkU%?6y?f^nmzMTLfrJ5cUS4o%AexeQU z+XeYshobLsQF~~~*~6mu2}%pG15~|MRBAQ)&B)2eQQ~<_4v7z)H{QjWRld-%AH6t1 zkW=iD2P)GxZVUa^`bb})p$`BP@rSNM2aFtF9)YqVVm?+pFohxLh;W$tEeF*q;WS?@ zeJiW6VcO0IfzV#zmkbZU|JPt_8ewzj!^N^#lv0Z`uDPt{pRcYT9`R@|PC%s4%$CzN z6OM~X+@-GxR=-vnCAuHDEu8m4=M2MvKZD5-3X;Gek4x=4J`CN~RBsGxLaDb6!iH^t zCF>590lg?xv?&6%eG>^tF6tZu`JiMSXj#o00b+h)Y^Nd<1V^Tp3=U*8u&1~43-I+CO)@VUp#>j!i3snCSKzfJ= zfXoC?B}wzP5wm~;)5Vpxl^#)^{QMLk0unP>ONb8VC^On`@B6J#{;^B@mK~~;>#kJF zkJ9x_sHS|s;@}ViL;>&MR+KlKLFFMNf^|9R>RD@lqyT^H>qBujF1vD3q$z9$J?7UY zb%1+1fh|DA3)T@V4zKjIYjxAS=CX0`;kDr8E_?@G>?L! z^(B9Xp`aN;JzkdcVFe=4=Xw}tTC7~3@mz%pidhVgN1i~Wo5T5YFV;rH^j*j9Hh?dW zT>eoWL48t1z`cEv<1O<+CCk#FU49(ZE|J72njcwcQI~p4Q(aB6)ry}sWAJ{Ad9$9& zmz+#<C8MO1ctC;5S3bHQV0C7)OM0VgnTJrcpb_4KMcg(rxU4ckr<}I7Z7WJtl zUtJTbw(bQFuz=jkwvx~TmWhA>F|ho-9nqTV>hizj7A%2+5>y332vfL3#1u5cz>+oj zZYwuxE8hao85Jfbx_-Q)rvCyI`3A_X#itNE0ZC>Rf%j$rBFCjT)$L61R0rQqLqE7) zog1`_0A<(=f+F4^EM4#mo9eS{uE_smXY1lO!gP?2O$h&QBAY07I`p->jzEh<ME@R4E#SgiY2aGS{3nqn-6=y{jDmr6UqdqGznL?9Z<@F+(lk-52# zq92CCd4!TgGTUb=6NW_#Q08ohX#_^cKqs{blqB4T%UVsFQuZH&_AESM_{mf?1&mA} zhZ+PjlkP~Fza>@(VR-az>7>5UOwpyBe$9@D0Y7~+bS4` z1}Dq0sHpUr1c1@)jr3F)%}pb8h&j)q=97y05i!@F$p`*&o$s!HQ_ z8F{Kohi{vh)@~mfR_70E1}Ntm!KENjrDf|GT)MXCn;WT2o|aUH>baC9ja$Od?PsZ^ z0v~cc3ODxx0#hazrC_q37K~H@v0{0Fa?AkR$uHJ-B;`y%d<4;$_b_5WRM!pajYohu zmq*?PZKXv}?eVoz=NT?OwDbA6Cm$V6xkFW%;Ii+#nSYA>WxvWOjI>bhk2JcQXk8_s z-M?*+0P6Q4VzIlNwWrRuGi-IIsrx2wdu-y=d36arh133rTtImE=6-x~yYkDAxQi=r zmRCLyM2a8|m$1AHG4JEh<8AsDCkn81u~>Xj1ioAPDcZ3LBhQ#r=PWmRBf8iw);cJGp;K-nZu2(x8f<{02;Ly`eKc$hwWH2E8Fq$1{U^xTI zALOGPCTquc?DdTAW;Eeq_nQv$A@J~k)r~fw!!GtlYP}3@v(8|c)!TZ`CIaK37S$Ox zh7as0J^1iKvf5B?KQqYgXKmL^M@89 zzNg|Axm8`aAlyvA64sJT`XPE{8F*#h|GQU)Fvyjs>4j;^;4QlxhrIsd%NL?Do1}O4 z5_T&%meM1?-3TyL#G1*@WHEu)T+d}AmtAoxa>YGT7|TRCNCC=;oNnV6%Pb119lEB- zXP^U|1B^d5Kf2-e>^z5-yDHxSlz7l^jo4ojqJqADz@0a)KKxPKu9BwH{dZ$kQhebb z!Z$?ShM0e?T(*iRgVmsCs?3)H9de5=n|RoxL-_|hRR<t#C(FxHff}Yrax( z>CNRWX`t#&F_k2m{q)Cf&yMGsp>7-c7K zY1M2U3rv?IY60-ov}rW?#5;79Z!yU+_mz?~=5Q!tR#NjfGVggV(Y#n>w08IFHND@e1PC4xmEo zcq<>6nU`I!_rSWNWIZO|Bmpw~gLl(mZo3&Qt=r67Y^bkh>%+Hi=V{6V==Jn~0|Tve zkPk6kfjKrJQv~=i2O>tgLjBd)sx+XFEjkTTEN?Uh@uH1fpsd%#ZvoAqEr=!^lyijo z46OadM_f-qRh*&gqtPPw0n%|+YccpweRCtSVy19~V{m$Q2U(v=CGiEx}L9*jYp$&d>)&ZG8Ys2~rGyQ~~Q^|;LX_56=h?*CBB zd@Gzn1we$1=RY2C_&RG3$&~rG>vYwNuNJPL0$9K$ljqMk(zEqp2u7zo0l}LEnN{vP zmR|dz$vj+XFj-027q*uh@p+r@+DyL1s(<&aTW*t+)j(f< z?sBK0ljzI8oA3g;ZRP!~AwM~iAAeMnG-rj2!Sm_`*jjO7Mk%}+g@3j< zAc3?F$1yE$L>Asz%!1X-rNr-pK4YSl2k{VDK@(HV7hu;|nacijgQrVA`Geh-U5hzt z%j)OL>{H8@2R(9=M5*p*?gZf2p@SWFf+LwjB*% zNVTU>8TxXF2Jd*4p`7}l;nI}bM3!5eLCPR1r{P@jo#cw_FP*%dc4Wm}Tc9pCdZkU6 zMIgHmt<}^=unt?!{oU^03jch8XBg;JYHQ;|Y_ccb;l^D~hTmJkC)osh-UA{%40!-ESH2=lL zFxCNLfGVpAG1QCvI$a7m30llpKo-ZA(sg{!t9>dIN{e2t5Tf;)w0g@v$yF$7A{+A)0_! zs3D^etWJz*k>Q1M6n1?R)V0S*>@(zhUuN}eL0;4Q`%rrU&I%swDa%8yhKK^}?XI2j zg;&aqb`P31nM1vyY2kTd*m&x!KthV?@^e9?u1=@V$A7>=WUrr6D`WN0WvKJ$#S`lQ zN04t3@&Mmb-@8NmjarIVL)K}BWvB=vKn8taYbCFsC3yV9nrHD_e*(${<^aH`)=>JC zyFw5;(dq13Ges6~K`>g5%VJknRn$t;_I-+%7Nrdz4|j`0c24D(tpn-`K{?L|cJUJ# z3Y!i>*rf6gVbj03b5JPx3H4e|VJJgeA`ip-;#&09=if#hBS`4-Frky1rV9a+{y&)* zT__V%o%>-}dRrTgAAxfbjn+PupCr-7hRC`d=q}BZ2Fne=^Y7Y&2B&!yqHfw7@uTK0~Jj z5qvm!n4juofDwedX$HY~2Nw=i;pI?{M-G49>@+ClnmCk$miuK(N<>6E0f-|1+_W1NfNH7sZTE{(j0BB^r6XuKe^)5B!x+!@r)0 z5X;Jdm1OSv&9%&`gfxCWgGwWL!}dyq61~D{l;tiYmDJf={(}=MV$UuCfa*u0dPqJ7 z2uqk;n&oXPdNKQTnxZR$iD0qBTqwaep?dV>wAyeV!A3+Q8>X{mE#~( z2IV-vx@A+$HH$sSGcV@$t1&Jwrz|brseJ&aR(1C8PVK)+W>g0)dANl&vMDorN73c@ zoFR1B&LR$ra9%qC<49OTIj?0gvXp2pNTFG&@pDx9_sZLwJ~9*>vM9;FYocpqEg_E}ZKA!rlnjIX#>SRL z{kJsV=R<3j3x~k)?}xok>#16&-`XGX#RtFFiopF6)1X*3?ON)8n)d6d8I4h2i7Fr= zGEi^S!M<5G?JexTSv$n7u=BomFv95W=x0b=s2fGQ35GBlDi}&1Z&bx_k>d{s)IojM zl^MYOk(I+(7F>X=N%m(5qZJeq4jF>Z?SbZ>fV7Y^;Gxe%SOuq>_3~}1B>$yc1YRm?7vy44xu76cE@+_APfKof z-35+ag#tLp%vOD3V24;K>f84(yx6>)TW>25c&K#)g~SsN2-is9KZ9Dk;Zt^pei{U0 z*y(@2ev2TEfs^1$auCwPu_q#!diQen4D{W@2QQq2`xCTf`TmH*h@Jmn_GIz1v}!XK z;1~$W11iyNAFfNV6iQ%p>~&vGSeyjZ3o=Dz9@CR<#b=Raf#3jtaeDsrt*GtHWq!;l zbM;dHg74LDNUf|{1d8321_7VROJ()bMe!#zmg#7>-n`4+}I&cQ|W{t8xdS1#u_HkNO0s;;{FYGi=C1PNblg zX(zxh^JzJszM4b;jyOd6DnlnNo6-oTQ4CZyz&4&9|7ac8j#vdzB0t|PThv59)8wj>Qf0W-q z+P9;;87em@VD~#}P~8ynyw<+ml@6u$byq9inna&uZpu*xf^l)}uo3Y9_V+gz6vGE- zzE#pkOM?&50@x?t57U-Q2|p#c;6(^g_zyfcP1^&pt=FagEd0GSk|BnEoWS*IHqRbq z@(1rR1?y4jaG?~PNwM!FR^(m6Am-nWy1GEnS#}2CT}C8dw7~*+&{XmEbuopZ?o2zp z1p1;90GRcLm0e5DNbG|5Wg|xeSGnjIlBfhHUL9?&}=(K8@~S z7FPCon(C3RscrJh4jx9^$`|3=fb>;Z)NXPpv!CyW`t|$2IjZom@7Dx(-?AIjPmOCv z@oef85d&&KQ(rjK8HOLh{Wgx*XS{*!wiH7C>?t>*?8EqDU70e5$AVvOt|>$kTp(gY z4PsKvsHOngY`G&ajboD{IYy)(JNO* zQSxFQT2wEwtW`=Wvd`=3AVWv@7Q$zHc7n}Y;H)&hu5h%?Sn?F&@6}s1qg<^%h?p9y z09=;-&AL!iwC^ z!h<84>hrVB^g|x;GnU!VM8^ZusC7;;z(D1)AV+>4p3PIBkBs_U7w7WVi#%i$g#H6F zIN7?xOI@amto_Y*C6w4vWu=&Kn- z;OnV}BLi&?v5RT~BPL+;z*nKm@eEHqHsEDTA`l@f)TIcH43D-SdK3X6V^B71@9w#7 zRrE(Ze5krr99bSn(Ba$ucK-Xg_=ciX`-M?&mkp?KdDtG8on$B@JgIODUwTe2zrE%bC?Icp`~g!l2}3tXM3Vmp*gjkp>0MYZ2<`(>b zu<2EN(%i$eHqRtYb^hAGAvQoN3}S_t4r`jjEM2EL27M7{_04r;TP%#zQ}I%PhR3vx`ccd#tNhcqWbF$X%uUY;txhflV92bbkdWfEalQP(qA&Q z`=C;Y@K~f%bgdb6ydudkPyLv3kq7!%DFzU2BOOkuqrq1p3=6P^Ug7HCFhULz4QN|` z0d|h{{3kh)G&{q%opk4$p-DJ3Jc1zmRXL0zF?Cb4k<=?2Sq33|H|O}GzEd&rqADVC zf9pGhqp?Bk*U}%0V6uP3{%BPC2tJ{0XKL$ZYsU`iU@}yFNsdM%v239?=y}f4m-V9b zV84!Q&&dYpPH9DbyuL(J-akcl%q4;t$bgzx}nw`t_dl*kOQ3gGn8RJVhdq6bH&!e~0Mr`&=~(9jGnmhyM+Qy*QVoVNu_f!q zG*Ua1DwtrF{FVJ~v)UP^QW`GvoyQ>e5G+S3uMeNWa~PA>mC$wsaFYf*jDu7r&Y3RAQlA3+L|L4-MT4|p%9dQe)Kgb zmOf1Ice04P(&CU!9s?3EHLihP(owUXPXe@mNDU}8blLeaH=Zc=}j#&F(V4(~K4 zM1$+A0M!)BCRUrmLo`i;FyDh-R*_&v(;ycx^=LSEoE;p4=eF2A&&;(wQEnvm8u5*O z5Kk@LtvEde%g5+{8y>>kMh_yWm&@TW!hBqAx>Xco=Sqp18w=*{j z@urJ%Jx?1y=TxoZ;aD^K1E#}AWXmvJOVxktEXIN4V8Ye+UqrpIUv5$26&d&*YNdW6 zGFeo#5tF6K37Q%6C{b)x>ev7skIdldaZwr)uwjZ{VZ%A_Fk%99sh81n^(IXu2PPTGo^6Qv3vj(Gme>)-e@ zp82Y2HyW7Ha7l;(Ph>!^Y!S4cHZ@rMYX(j6!?yJzBbYa3f*^1_0?DFHQA~I1(tw^Q zChq|hkVtR|Nj1V14q;zaYX%u3$C9T0!)$$hIW`WfLM>XV{|K0k%3&`q3aCN zVR+L7gV&ID2ow@CcqYE)K*10-Dua&g>h`*LXDjGdH>od?aha`=2;m;`*p)YP2Mc52 z4jEa1^jhO__t{5_51gDpbb*P_xM4F=cSZsnNK#UfL58_{Tp{$JpOULwrF$6>&rsKO zyC4aHVC9w--`%U(YO$2K%cdp%_@oYMa2p&BZx*c_dsxaR^KmfvcWLq;i2ay}!UVC4 zu5vv|uj)bdi~i%gpkeI#WBhUXS2-){XI_h@CjRJWW*Ozs>wGfhmZxpTEkcfDaF}!L zYNwILUJ-I7BcE(?kD!dOv1T?dv+KEB|E9s2Lb}||*K@yjy|E>#Am}S?V=_+Pgd~$X zXAb0muS89+xMlPT7(xBwuht-68TFH|+~obQe5I)qY1yn=l(!!T@C(Eep-7!57ikD_ z%cv0Cg}^=!YjhVNNt_k-NTDi%F8kIurWnZM zlRubLmCQC6G1pl$*rC)?64}aVS$P7_#Rjc~YnKLRI=wf6;*Qj&?Q-e_$)x1LL!W)u z^*0R`-KAEz3dGL;WRihe5F4y6X`j1ga#-D0@G35E&KQ*E&oqy}#qK^dx18*+CizDG z(ju|JTwsZzq7nLg!+k~5S`rU%Ja`HtPUiNwxSk^w*dtp%d{WOoQW0#)#4A{V=@L%x zqQd)?B?r_^1Mz^D1T|<}nfA=KlKEn z0!w)L7gWcYR?5~0kdtZi>>GGhk)@I!a)x|s*5UI=*#y2qOgN1O^S1ct0YzB z{%pPJoOvAe5xpgoIHA^)vlwG3kq4gXn^5vCCQAMi#)?qN7%W)dwu5QJE?;NVliI3P zkDG{o&f!XTSvi^xmUHWsnZ_ErUS}>4h$%xuoQFJaVYXeY>M&pyC}<)5X)6Bxky4Ta#I!lVPr- zGbtr<2h!T9mv9;!a;ykVfl#QqWv95Ed?D%%5!+PMZm_%sr;!neX~Flm1y#>NjWzTv z09u>_zZFS-_2~cd48YD_e-FF@nO6M8xQW+Mo1B{Ib$SoavhTK`7ks%e7yk4K;ZGk> z|x}}$bxWkX0`kosY%hA{R?fcPH%v+7v6qF9X6})cb9&ehm z27YK0EkllTw$4TToviA9R28o|?@*olc3XC1@TkV4ZLBBJDY@4ZV}U{igm!1~Uj&?N z;A|C4!HiEQJO`P=X?T#ILr4u>m3vw>x z<@AM5om>)i{+|0ee{phADrt<+hLOwGmGkb=4mu|$yU}-JZ4plQ^m?wjl;xe|v_2`8 z@QOORX|L?2)k{nCPN0r1k={EIgb*+QI1_7}stL-FvZ$fE&-)S6g%IKmI{)R%FceGok>x;&ULBOwMOrX=f2Un7gV_NSA~eDv?7 zAh)GUFQ?DI(QPk%wjeSnWt>(UC$_To0~t(lh){yw{Z*ZABd_7F`e*;cZxAqlK!Zi9>(2^ZYvh}XI*|x_%9}f{M4i;d%4slKRxXM<@7jf>E1)F^-EUghn2Z}Cuq7dE47t_SGn?v zkUKwKMV_(s%XpFWgF>Mr0V(lcc7%P^Q<0QzW@}<2ejvNZYKrmu8j=${;v@~P)2yQQ zmw!kw_oGF7^i?e1YS)GudA~@d9b;ATV~UsG-PT%J@)Fj~b^Kvy`!r)p`LwCW)()Sa zeNl*gd5_Osn8N6Jc+iz|ThH8H70i4snx@OY@ukyR+~$3v%>vp@B2^+Q$6%CP)=z0( zAk2OH*8B^pvEt{o)ZKiF-k{UPvYv!`F>LrU|9t)vot%8vBNXG7s_!K8&S^1?Y5J`k zz{KSh35RK=eTkm3esnL3#t&}}NqDs(^%V2j5I?kMI7(N$YkUS81-z%;SEPCQrOBko z5RSlJSw|9@F4{b=9xXT01bLHwS$RKSt#3RW=uO{YR=L^~JQHLEF%%4DS`9+BQZd$VGbMUJeW-nA!Fw5sAy=Z*XC8qA%V zD`w-Feyt*YA#Ff#FFIT3{9;P>iD{{K)^kc-TC;jUp;@4ormJq1e>%D-V)w{oVfnYg zLu_&*+&Ea75GE4#tgR|EU2=YO#_|mk?B$fz?RMMY!pOTRhk5Unl_qg?_Um{3W8b-n z+x-wNUo|Uyanl`xJO$#5D@FH3B%`bGMfzr;5aag$N8fuTrx0ty8XVf>?U12uX%cTz z>l?{@iM%_r^74&aY|B>{{rBOP)ii2n)0Wr4xj|xVfLj#q?g<=re8Ikz{=N<=IVrj9 zW$Kp&7O>QGXi*I0{<0~s45R&bnc%`a6l(%|CKbRl=zE`dgU>1ESUyAR^#aan;H_!X&sT}+2 zWq0Q3k6U_;^`;Y>)(I^pSG$5?(zGpbU@dLc*OAcFKMj4>vxl7K30%-F`_Mm3ng`L6 z?L|j41>W43PpgTWmUu#aqV0PRqFa0nOs|ZjgjUd}+q;OyVfEH1_f_}f-om-1=~~-N z^Z(#`8_C9{2hLCWE7+&#P&Z}1;{P6eYW_)l@Yci08WjxUHy*HHSm3_iI%<0XPWwr? zuSYm3#>;>8a(P7OCXU|hOaK@I1L{``7q<{i)$3^APmje|NrRjx)H#ElHZp~{ZfBy*yUq93=WGKw^8Rsw9Eyx;URPG%!-QH#R`isJ8E>gr?9>rXF! z2zPwa+RblMSJYJebPY{c#DHMpuG^U5|{wl-b&p0!ZVBMlJW?$0r?>kJ4f;mx#f|8~g$MQQBd2+UE}ZiJ z^uqn8^^-2-lgApVe?BC$-KNz-_d(dn*OVG&^orc9bMzIA<6%9A;vRvUs5z7RKIx%Y z8d{a{|Mgzpi{aU1lX7`P&ZEnyZOuAEEmc32q|u#&_BdTZgLc_35aUE~?J3dM+Hf%F zxVp!zvOBFZ{Wy**j#Ado{nXFVO%u7MhU`JzL>={u-=7bJ-2F(G;NOv{6O>8SKGPA9 z?RA*#!uK+Ci_5g~g81D!=ueQGfTblh7~qYxiwFen`;?dY`+$^=bV6oU=Fe?nm-e zobroL;(gNYlZ1kfgS@9j&xY9Ij~krv--3?+$#KJRlso8+ZI52aaOaS~O*Kh4+0APC zBn&F5``i)Q1=e}_7iJxc=GHX-4mA&HE%jM=qB_OY(X>Twn{o@2NokFvuuL?u5#CbZZO_0*KrwocE%VR?ZbVZmb+Z@d9tGV3EXoOM~DA!ZOGZ` zLhN-0Zm&tF_azn(M*9xFbQQHgG)?{X{**s z;CPeNkWEahb?+v1e+}J!Wp}?;)(r5TsV;f8dWTRb^}s%aZm+BaGRQ`dH~bbt|GQA? zAvv73!v!y{u+nt(LU3JU$8(Apc#4rsZWep=tYK^Dv;D2S+(Uk)jN_`!(yI1Desq%V zIB8P$H-{c+36Vd%>3OsF`y&O>_s?7&#Y1$eF$kf&t+t9}d4)=sDh&!>BUpRZlc#K% z`C3y^7wcjl!MVFV+0;^5gX+6R_FiM3t}=+{u!nI>PBJfuVa?Wfk{x?7)hKhCP>iC5 zc#mqmO?l0YpC8a_3lHbPfDW}I;SlHx;rOV1g9@?71hCh3Yi_Ogt3DEhte_*wt8U4Q z3wuR_4?ACkr;Ba>ho^&Y@?2YygnSg=3xBDzD@JxNtrY)R7I9=`$pmk|0VBK1qV$(U z4JH3Ig-K|gD8||0NFTWY`J6|1kr68itCr_};ZBr;<+EwpJMXQN85`f<$>wVJy>3U` zuKR3|EY4$fKb=P3D`$Ai`JosC<{E8R?3HARRMR$f=_>r*?;-|dQaSy}`Ow3nP&-M)9<y1CG`BQHm`G?=9Fu)SVMR!eCTWVj}oJ1UP}wj_A?=@aMJ7U#3t~|!3$IUnPk0k z)kR+1(T5W(Q`5DM>duBU)f+{5uun8!P^lYz;c{z&s4oOxApzaZwblTTC^_Fn{; zWh{nDRh&i!(#`L7A6|H%Xe+Fibb$rKN8-s<9&qeNSh{?WMu&Qi{c91Y*(exCq3#5v zE<+frU21!@5fP_BPFRuiO48eA*I_8V zj}DyO@m>eURXdvxT8w-t=!1`|?{WFv_uaT++A+SzBuyofyT~5s3!v4m!DwP&wO^pso=I2O(7YHVpr<~<00%7o zmKl|tP-5(!u5L~XE((OFT%?}3P1;0uG>Jz>{kWiU15bQH(vucAAcOa+n$ERZBP|TO z?7sK?2Db}^>=t70&V7B@G8l&)J69Jj>7B-qCol(^;yHoCtTI7w?575{?=PnwZQCFD zqN62oICm~OGRVG6P!z$4z5=sCv6(0)X9M`e2zWr z@BZ?+`=X*}SQM8RH+frEdkFRV7sptdCme9E$~;Qo-3lS`r986VVgr{*dm*)mub}ni zI9lIA?D$cpcT(UzZ@S<{1b$8<&Y*i(&3w2xpzQiN8I)qa;**yW^74GU&db{{@q@#T zfSX{=8X~Usf;D^0f~?uB@Y%0dwlQRE-0O@>+IFX3MLSZ(d;eHLk=QCghx|<#t2FOd zoj(P~mNnXVTk28L9g2Qz+2vG>0t%e!pR>-s+vlqqc4`BijU&u+HUw=4!~C18)ssMi zM3!pD(KGLju71maF*AxVZ9K=K#wF=UOH6!j^hTIfDEk=k#`-`)W4vQHtDlS4{Og%X zV7%IA<6t7n`FpmTz4toK06*&$Fq^b1EPc7uYGG2qE4T*kR}8coPs_e_+ub2G`^C%d zEOkWAMQVHw=(&cjIb^M%2It(y8y&8CTv{sOM%Zv?$UGMAt<>E{mz+5e-K1ca5QMp@O?aob_`u7~Xa5VMlOZugS$q^0} zzzN^?bYC3u(~I6(!oPj>lZ03Ac@i?f9P)1F5f+tpX*PNnmXiKO;33V+XQ?czZCeG? zc)8Bjl&_E5ML`K@+mUhYMiufeO$l$a;x;|m2M9+JT2y`@pp|i10zDyotK5tJ8y`5+ zZMB6mhe6(29%ePlsGV1+_K-#O+e=A%G^U4I>h6$J3pGD>-|4I2oY@582OPZ%Pxd;} zi#TRXm#HTnx1Z3j%eFCXbL0x9>H2mn(0`lHvX$SN(XfuQ;k)^uEu6Wvn~t%>=<-~u z%?j1nE4vNspijiB=L1$ex#GOAFh5p(@>#to)7hSncE!VXNsJj@Z9P65SIL3F--Qyq+sh=(>YTkbg1w%k77ym{Ssm$r)R1oodHh^`sJ z+A7$5z9Gr({bmmsjOWM3IS3x%m{}r~a>DqxrqRL^Y!vinVwXN>9;~29^5K?g^W!I1 zkb;X~c-Ci+8USK-MttT6dXUBI&E{%8OX*I+jSW9-wf&F;rHGcP?&pH3S_1?Wz@71e1Rr^%!;F|NBvwQUD(PLhm+I=acW8a}Z z17h;EM7rlol6f#P@NBALVD828LCN~gmxtB(_V60Wvq`wpAK*=Pv!SO?kaP4Zj`G~w z<8zdGk}XoK)COg^X)XY{Mb9(*t3rBqYWTdq zg-V2sf!-GYROgZ^Rxh6|zk2o(_LN-x{gAatoE!u|M(il}I7jFQ!5?2s*L9|v6mF60 z;N_{rGv#>(%MJD}g>1$N^h`h5j_wf>MgT#eI@aJ>=}$qlBG=R-(a$#E9nX~o5|wzL zT{AK9!#z7?nu147R9>Tnpc3IAA*sJ8zPUJ57OZ$y9310hV!=r)t_c(SYbk6D$ZAU<(OQ(&j;1zId&(<;2Fr@|)2p>T5q{wsnIK1uPH9{vlF ztb=aVm!pC&cQU!Kc+CB|BO7#+;f#Qkvug!!Emr|E9$(P-jSXq(+*bTaeD*OTTnY3q zB@sog`(MgAe#6u5NI>km_nW=>)-A^$7rmV>6+13wvM5B{sn%_kI{;y18W`i%6g%}8 zho_co4i*RV7Je8Y5}A9Cyl-Bg$MpPE=?%x9?XMTs{|QcP4=EBU_fzJ?8hK;@BN@In_ZjttMwWzCq@4GBcQzPxQ^lqQ8bU(lr1Zy((MSNBffR7z>Jzq-*5H<4S z%~F*Q(y1^y(NGMp?iQqH;lk&yTB#y>=2 zPKWpZpNj_k8XhHJ8m#dX%mH-f;bj&}ugsM>cqUsVt8^zVT+0*1@Y7BVoY@%dK}vql zr4L?6dVi9bPDd`@lQ?HJey)^t^cKmb$^Z4rTA+TqFHyAK>Ge3k@ZV~4s?h6qhkPp0 zy`HE{PQ__O%lXBuc$%VI=N7qoBa>-BY}3U7=Sgo{MQ;Ld^n6Rg%;;{%G%7wNcl)02 z({LPHhNI$XV{-fvcMnvh1P(lE(1?-!=PpAr$|fi&A^Se?`Um_~7;H)9{x*I#>pi>= z=U%i_NzjL{JJGYXJk|lKzTuB>g;&+fT=&z^U%7f<0-{4vXrP_K;A$TfOriZ_^m1Dl zva)n@jC@UO;aR>k`Ec&iZ5?rFrkxPs=VJd0|CzNzgg@mg-eHXv$#{GHG6XCi(&jqr zjLzF_EkMmbUHPvO>%oxv|1e^mk7wM89M|$r=WVGv+f|TsYv7rJFVFoD{c6Em6$aWe z7Pdy52iG9uW>dbozI;j`jn@jiQwNpobJSvJ7_4VoKX~V1!Pw3xc+*6LX8;buXYRsb ztVJD%2GWWc%PutB`!sk{EgeiyP@8`vyxE7qE2^X{3QMDj2fN?t58lVQY-ldF721s5 zm6!K-jPoRZxC?Go%X8}s1KNRfV%O?Va6N(dvCXzuCerMtnzf#v1;iZuUY45hCWc5y zK9L}ij>Sugx#xLvB2~Vzmb~8BIf`YD86o><(!Toe0=LF^oV1JXq_i>CnXj~LO@m#7 zpla;;Z;GgHM{)>(f+@VjeJ{$KlnwO6hIj|Haj=AC7{qPjlJXw?NIu2&PMj>#eOly& z8~?}C2SZH^p}6~>KfX3$C(gu{D=N&pKq~(~MpUftj0!|Z#_KL(eT4{^%n-54fPJ_R zvnclrYlGB5ADbJ+XDB^U&*QpGunv}{P9xxurl<=RbZPK-cj#=djrSKu2Fy185}kBq3GO ztu@%KO9~$+4;xZ}1$rt4|*C~X~ z6AWs+v(w)88)b!(Q5Z|OwE}NSSgTH7e&^~9$fz>^{rT+3d2F7;?>IR8#+gfu#ak~W z>S^g#uLf!&ohEr}+Rhu*wSNdSh``S8lnP~1>@KI=S?^XyU*#3`{NE`&yig=(VY-He zVl=;%y(+BSrWI|Z)_G5{>?^~AouJ_%h2`4A;>b{|j`5eSoo%)J6EA142XjB+`hlGC zsvyfi`8I)74|AW&%KV`2M)duSdsu~6II}ZnzZ=Oxi;&YpnqsnU!TzQ<(YnKz)l^!y zz2zDBDy6+J&?cJD3sX`Z@EVmU$q>9mg*K8j7zC4n-@d(jv71J>(jiRvzxQdG^*0WWq)17^LsrfKl! z>g7CpzO;&0+N&{|-}8uC(CEjRJQ#*dg9%3k-%m?{LW6gd#kZ591kJ-7`-UrCijl-y zF{VPI3ucfLA(Z@&Yw^tiop{nta!L4tKXt%~MUMJ!8PBDbLx9wx!HoGm>}f}nF`l)* zJTfczp_XpLj%$tzSSr>@_Qqd}`QCoQZ_PHNF8v!#bp;EM0!JQaZ`9nK2*)^;VUvfC z(&X@0-&JP6{X*qBT*qP*z>4`A`7}&Za$3~5J-N2ShfEKUPg8h6DAc1YLU(jyR!F)$ zm~{KK-uN3PTi$=D+vQys46S`ltU%62QdRor zOCFmuo#A@VQrWFn>NR^zd7ON#l^rUb!Gic@Yt1T*GsuHeqwx$BBAIBS4S3&4AbFDq zG47kGz@=Y%@wXb;mydJ$+2IWdSbZTp1l~x!i;Os^m13wApC>tg)i!BnsLZV@bSIIm zG5t0D;uGHEO4w%jA$9J9sfN5Ua={3KdzeH&Mo$`6?E2Y0;m}vvOQL5wBZI+uO?ZSx zhGW~DY%_&%cVwU~=k@#ov@>k-3Y5uRwvb*7f?7Iz#8FfTR542HjFuoOmV_qLEbvOtO*O?mp3yDU1m!B1_>C0W7>OPL)k z%yoj3BZ-03p#UE9(PVW_!C8QzzV^EGEb>t77~u&N@wTL_1EX-MCr`2&h7X-d^M4H4+Gr#Sss9&(l zzv=LKx2MH*l9|+o9)DKH#ixD|n1p4A6~vvpWMG>&@D%B0j|six3s>TxrWA24kn{9G~%kE|I635@%+;=8u zlIthI`sFzHMMu8uS(CI@H^p@W9q1iZ53N*+?5vk+n;Jx}5zzg%T8fG>Ja8(}GtevU zqDbEuqsxrY?K7udpP2Smul#K_fu;O!M;jA#Ax&nQxq>|jh)RX2>%Bft6~r2%o*V@12d5~5j?2-+l0$SG{g}Iis{kL7YdvsnOrqirL-#``OtdafL9b#Ouxi0UM{Rs7J{mGPDm*{jMaA3ug8`DYi^H-%^Gv zp^>GR5yq)G>br+L#+S~O-+jY=wo?)EDN#r=g;FIh$}-d132Mv^mS~Gac$b(XZz4=P zdGf1OM5Smvj)dF;+W&5QIf!tLY+hy$yJ*IaVVq$dwU}tASDp+Z#B`TzEmM)UG$KFhsF0NLIwp~jgi z?7z!Gp&r;dg%$UgN9E0T4YoqNYtsPBQ zZ^H}mpYW1%trqiwQdLiVcxZehD?L`Xcol&K2M){iZ-`K9Vdujp-hVP*nY3A-Ds;~Ljhz3JrKusE zF24?jX~KUo6cKpC=kKf5aP<}?ry#v1yIH$3fE*(HgB2P*HF=mZ62ZAKH~koE%$uak z*J%0Hz5Qx%_XB3fzU>6fUbl7okIa+0xdqJ@a~20gWOweWJCu9rkcNItBv?U7nP*Vf zVecYLtsF^k^ygpKLL@)_obzG9|J|8<{|6a`cU&dHu*s>rSNeI+NPPQD`Nl=P2h?@7 z`~^DMG{&4SwSE0VqY#GWUn{#FiD&&>b+VVkd$GHwYPL{Hy9*?G(8?JX@_>kBdgV12 zB!gf(K%)nB$*59XPE$)9g&`6(w@>*xZN&sf>wD($->eU+7rhtgG7BWB?m6nxb8AOV z^Bk?l9XW!aaa4rAqMuS@z;9;YHv1BlDU++mgq$=X3r4Axu5kk7r16GkoL+|Zp>~9c z`OV96bua&@8vJg!kA)<*-x}NTuvEBBRq%K=YEV65b1z`X^TA^4;^#Xt^ad-nx!q=d z@#2mVR&Bd;Lzh(|EzI$-G1Z=RZMn`^6Eq@EhM@3VlMsHaxV2ZOExh77ZL+3*c79tDjB4sP%W9liV!IV&selgB&b3zr*4wdBekB@i zf3QGwEd{`&x~qU-4~^8~7BLU@xe`x(78QVp1J-COcFy=qeI{Mw&wQ;R7TWm^GEDYS zmhb0l2}P?ya-o3avhZywNSYCni>i3n`iQh)?N$?lO zsPZlRRAKhx6eGmbeBw)N`EM_i(IG+qoyXU@+8n&qFbmPzyJS42vpKO3v(lkAp0)Xr zR~fhRuMoFg3BGi1&vNt3sRz^{#iJCKx}f+3hRmKTy9gSf>b1V9Pm!8Q1J+gVW3iU6 zI)3JOVL$fF)|-wNw)l>YYVXtPrMvt_Ckq#+B@JRyi)%oiB zm5J>e!$U(1e&zKyzdln|93uHloPEFQnxw?oj#G!4siK@g97pze+Za{i{rn6@mT(cS z&`@YU8E0JGQAE1-b?_N@u7>5dV;l=6$ErB>jj4xDSsyQ;!^t1rD~l|k2U!66f46`s z?nZvTnr-^jbYTyAFVqbmTs$@}JElrcfGS)sE$UYZx8tK1J7UD1|Hj~IynYP{6u*XM zo}xbuu4tp>F(a*U|q7`;39_ZR_X#@5K6 zM_BWxUE$7w8KkV^%U8mIX<-PFH!;H;I*)DVCP&b3+7np2$AVBVUf@EyIQQ$M^?_`# zEzzZu_k+TL`Nl0ppf2&m*vG3H$VD*8KkMREiGIwjSv3mcWK&QyRPs!!Sil`7FLwP+ ziv%~QV>9y+7_4^I5Q z4|C#{27~qAZr%v}D%p^c&{ex*$DDli9Tc&q4p740P0lepigArdV8Lq*p^Wd1BC3=ONMtpQU#kAJ>3NWF)|<()I!6m)NmQVM9l1ZV}|n znionpVI9j0$EDr(^ZS1aDb{q?Bn^{IUaF>D)#~%e^@eQ3OdmQ1+Oo756PMs{UMr-P zqEfJ3af(Z497;1iqxg^w!YSD*@#YYwSQE{;w~Cr(w=V&WoXYXb5ph-x;xl4E_=CnS*M1&_H9${l}8FVvGJ4BTJBB;KT9a1NHa zoXsrgRp~4kjoBE(up8XxK}&CB4)i`80ZWx!=_A$9&qkbXEAz?TmgKqa8YT_6y$yVr|MG8!Jr4Cf`lV8M_^bU}VPb;tONo)_M$+J6Tcg>NRJU#8ajab+-F4OS?fu1?p7@2%|P}Rmy!9@c;{` zKynaY^yeG!#8dP{alk~&XZQxnZjp{4Jd4mc5}qOVpB28rN>U4&K<4i^u&qUJu~%0J zC{>MkGJBzxMXBf6VM+AJk|<$GTTeGmWt@*K<<}z+(!wa~G9`dUDMvnUOK0h?C-nJy zsMtRU?*&fILM_hfB+Bkg`4yIrFtsy8yZWeK;#&LG4y}uxtOc8|5z(nBuRW)b$0W1; zi-%F5!vwHHAowGOu^yx(%RjKGDqOwkK6=gK4R7AJ*dAJDD;9QRGPNeUG$USPjOfSb zBISdU7ol$hQScXowjD6hzIh;&nC4mKJ_&2{Qz2e^f&8EqCV&NTYmts4$3dV5?>?OE zbTYUfJ)WfZA>glCY8< zj~@E-xzt*2l5b!0LQVGCWLU*WoNW;HHfj#k$U%PO@dZkOKUE(laE9)Qtj9*~c&=+U zO+JD4f{x{^PmfcLjvpeoW9TAsL5`G%1)?k^G?`RAdt4Rj;+{DU;iQx_XGSW2)*g!L zf8Fd!Yt}md%lsVwsbO$}xMHwvQ7NjxBlV*=fbxMwHz%M9$!tIsOZSO5v5$52%g_wQ zd6}@9+2DX*ZAt>|;1lZl&_=lMS5tj`9>*G8ku5#Xi82v@WF36FS5tKvQC1uGw;ARn z@>&JI55L;B0{n;G^Ah2QLr98}l~5gO&v>R6DuAF=W#Aw`Y^4zI(dMo^gUJ6woA5=?Q-znArvi}1Fi9kokY3=r~ru*y#A zg+jgMaV!NfyS7{A{zc^2fP7$Jktu@}IjG~2Z4Af>dKZYmy>z~vXm&WBs@3ThFPLdO zyBHe3pH1Szs@yxD84Iy4+Y?Bd3=>CIBu=4m7=pFD^lW57Nt;r`xVqU#tZlR}9jnGKyyi2E#>~^Nk z?oH@jg!2-YxwTOd(_gzVAWdmV3lf=BsCv%Zq1%~|v>EL8i0`QCc?Cb4&)O+<`%exX z;3LM3%p?%W-vxbyb+o-PP5zz1^A0^j~8%k zlFFRPyM;@CrsJBfW9$7?aY3PW zTY<8yVIj=V&U<>>6Sh5j@66ju(N&sL&GdNuF*k#S>9$F)8{COYe7|SPwCFMY?IFmf zAvK7Wy@ax7=oDa|l_4rEPHNcm`g?|J;mFAe263+5ih^l&)gP>llclgwLn|EdRJS{O zK;OZDj+=^e|AF_J=KamW&u6_u7+enQBqyTWM(exFvPi_UOJpPc8b7G8FlEySr}~9- zK%F(;_iCQ1Pr$K}VP=ddjY7d%I-8-~b3#&M( z12FRWF2${R2m96X<#$_6^J$hiZIauj(Yl<}ON)zNrsh(@a$XZ@m}~jlmpuD@`#*rA zz|{8WW3CLG(FlXM;J8ZBgkje^5mU{LYq|~vcVk2pj4QtpEk{(Mw@|_ma2^SJGueo) zu)5p*MESi~NqLLLO`h_*1pgl7gFPaE8qXP_Sgdn1f1GWBH0!kkTlJ4dRN~+u)bW3; zKKqBHAw?e;eZ|8hV$nTuDu4G_GqdrfkNovJbCXtCF*(Uuv{7*X+*B zRz#}5IBoxjW`Bq@UeYh?B8`qK_;`0^F#00;$yqPk9T&donauaX*?A1;@||h0?@g6x zr@8IL_uUj)JIErvVUvGqO}EWtq^v3HS!Q%SoQq%>zgS)mT$QOjJ@tku^DVKOGrLyg zB{=TV3iIV;M+!2ypu4e2>*L70k*J#1(eP0YQv6y7O1r5cgK}w3zyL-?6q(vvKjN0ks^@<~XO})i0-oH9^5o?QGFi_~~f)=?Rx#>M`V%EmtV-T;v_9 z<6yc&ixe>DKz3zQi@w6wvdiRIu<8|2(;Vqixen}N0&xny{4Qkh!xoq*7;?a9?tYn7=M@JpL+stnB z^1>XlE-|}FStLA2A+>O;ndiayZ3sb6m&cH>59AQ1+plq{oNr7fgni!kYpw+AJek%+ zz^!!-&`SkH$64Np$1ZD-_ zLB8j4%prf4!54(-rPhWF!Xze7Q8e58c;&#Pl<{RXpVCn?+^N@9?9CUYrrL$GGaFaf zuX>@TgN5?2)t>X?tty;eYLZjE3AKinp;Tm?kpE=t`65KUmrzy`%vM)c#%+~YNy||U z0$xw7*D!m-n{_mMgRnBRkOV${54|UUv{E3h-GzJZ!WC9(JJlrWCTU7ln4;Z~r(L^o zG3-lV`xCKZk!+g#Cu2UtXiCPDFS=t%cUrwr(a#O@?+y3N_nI4=eyW>KDm^^{d`2Z{ zX>l>dQNB38&E;zM(V=93n;?((WLT!IvVZS>$l=e*{Of=F1x$c@U;G^*Ji+AdCX_v- zay@)nwGQYH(oH19y*9MS9)j%n3}D0fU6GyB=(}PPV?tUnIOE==(rz{J)VGIV0?$~> zLaPJIU7ON$1`l*%`R%Yik-}XpLRjSf!eVwzV1d&(XHbX=08G^Ntg-&h68qMq> zVZ)8~CpHq2e;{Lss4k3E9x}+6Z5c!{)|GWEIs$OtN_Th__1aAYzZJJi;IAh3baDvz z=SS&scG{Krvt4msU%9ah9ehjRiT)Xa4}=N$6YCp>RM8aj8UzpzAKpYTqHqlb{G*|O zan0ye%S`FWCS!*KgtCfk9ok1uszvH}p;$zSGTYxhtzjg7ytyv2#x};Ufehp2DZrXE zhjmQJdsrsj1X0YfHKCeq+ZyJO@6F`$lI{M#SR6s`@#5qNj`&VISEPBE;xM zkm&*72R=k6ESt|sj#CZG{ zp`_1yUl;P|)syqjSBP)exO%42MvNl22bvp)ecxMh&cFvdnifL>q!n7nSIH;A;XLYVtEl>R_e0=X))yHw!FwO3ZKCxZ-3s$f7?taYi{N#wV@xWYm(4 zeJu_C)J(cJQiaUIa2>QXZNAC`Ip&Q@pBKn9(lGh0O}Ngo7qDSdj4>iLVPXvuQ71VO zMzn6k)HS&gEsK~vORFS)^=8*YDo zyItG+igPCVXWR?g-!NFDeHvz*{tjXN?8f;Lf5%GVq-lc7x45Tt5v<><86KEn%fav_ z@X22KrkFWf<_{ZbR~v^wpM}&6EqnWKH~@@IbH}iTJ{8t5D-t@t7-h9Ih;Gq!aa4@I zyA2&w#_4NQmT6tzNDpc13yr%k`ia0z22TBVdd2_468}IOft_>vyN(Z(2*(65EM2CX43u8c3d)gegtWD(eGo zw%@Pmkuh5?{nGmUdCeu52^P3A)NlVTTRhkE5@aIe7^Am%!lrvHiwLIVm}#3sqZSBj ziYKYjLW_19L%P3M)x{yi$rd%E3=gl{hKOSU`VJ_6ee50;Ws5_jGyyg4`{jg&$gNi7z{2Eo@2bhh2Clk)hav&6&97~ zk6F(Zi$6AS>pvbLrVvlb-&_BDyWfv)puLZkRu8YCl85*YaAw2DoMU|;k*p`tTG}mt z`E~Amm$vJmm7axQN31#INUv{=+Q9ad)2?10|J`B?CFDUI({_x2nD@c5+Y@5lnSK2U zipj`0`h*v*w`P%Md@($krvDq=J^Jn>oqVL9KI@Is6Ypc0cuVG^x z-EH93W=UU6uOe;_gM#IIM-`(R+^q?H+_m@D5nNGl`DiDt&j2Cjvi`QqNIg&Q1B5rJ z5IgcHDeXEQido8YDi&R>cG}N0^d7^v_wvypC@Zj4<3cx_8*2Oa)5mu8c-e!a2`<^; zMs%iqSp|D&2~OdaKKIlGoiUpLu8juhb%fSc)d-fDY6yqWs-fi+++BBuPzoT^>m#kK z`phM@Vgf9!ltElEuhm5V#e|wdgpU`Nz=Fd@H+6eI*Cw8AI5an>_z@-1o~wV$fgNAH zTi2S(6*FJBq=8YhuUmBw!;pF#$h{{+a>>o$ih|ni!W6rJ$+R?`5})pTxP>pxO0m#x z>LNJYt$X&X%*_d;=G>lr!z}v-{$aez0AA$XnI6xV*7&Oo7p~o!5Y$x9@IShX<2uM) z4EC=+f!~*jxjDEN6SnOhzmV#cOX=z**nd#Oq-!<3b3b48b51We$(=2m-pmYr{R6wpnCb0Ngn!89Qb4D6 z)|vZNfE&5TKL2!lRM4ja7Lb-CR&OODecDfgH_M_TVMCg9cDLWfR-&I5@^`&}zr!=& zSAluK3&nr495;UNVKycQXwh2`r*`g0M_>n zUHV_5rkW)l6k)zIh1jgw#s-`%*yq?R{7Ho)l??`IQf3g>jIA|b#&qMC1_tu1+p=b1G3>c`L`eX)n=oeB9nMq)&}IF zr71m8$=CR@E4BsY0JJLPn)$=Xcpx?G?S$8mG3vlDCMjUI_yG)14Pq2XM?NqEsn@R( zWikE=n#XA*0Q|aq^6D>##$Nx5zY6atf9Nf+$^r?#h8=mPUWt}HOy5oJPSh}2v`<_o z5`y7i?5B@3b^e6TvzHda#Z=8`WUC2_64`qG)(MYvR)0NFy6~oecX544oRVFtg@2Qv zx`PUWoI8#T3-0gt_1AVxujnXakUJ$v=>JBb>4sBQW`b_ zkiU+%O1FEsmXSrQwQQ0R3>o$>O1_R|Pf~vHw9Umdm#3K}Ql@uf_C-Uq7*_JN+w62x zoJ?v+LQP+vH95-_H5b{N4W*FyYd*dp=V~F!-J-BM!4hA|v&+d-9(6Ksl8J!>?z*Ka zG8s8j^-iQYOYR!}(Pq|O9V*-&?6v)Lz^%3m0-%1r*CLbZhhk~0%+OZj0%}QYdwH#|@#;9ZGUp*n-VDnJu@ozDMEXd|PNwMQbPpig)T84+Kw2VBIQO~bwEopLCo zooPjK9c1@!L6J6oBujK4o#fJ>&D}j*@3+wc9T_1m_8(UA4IAd3NPN;`B^s&Svqu5? zoExfLru^vG$9Or(BOx;{U+WJ^deC>%KunD}KkX4)wTN^2v?zjAz0!l}H!q71p2s7BL|Bf|VboPp&R~#@P!Lp9K?no$ z-_zOHZrHR?NSfjVpapA7wwyXLjI_*PyW2A_)DlpiNx~W#Kp$l#a11d zzPBgR2`6!PAwK_!qDh3WDhH^S=AouHB=R_&sQ#kf!~W-1KYB-Q0^@szOd2Y4FO*j% z-L)^ke4iC(y_k1-;2Y2Zmx%L1`e)cIC zh*wXEb%-ixh@<~D({mi@iqJH$ z$qQq=tI%I6$Lv919C|Jm7q>^{WsZ2fSk?gJOZ!7>+Alks>bt%n0=D}7w?OFsK_EA? z60OBL_DFQaJoJ}K=kL^;wxe7qVhP~YRO6F<$IY{W&2!pdYm$@9fzvg?oo22 z4pQ&B_C1xY5!4NVUkvHQ^(Pj&Yvg9LCKjQC0##Cc%*J`-1o%4-M#L#+&e9ZeGjajX zzq`rLegZmtRDCDuRUFQD=>Xm`&)j)r+93J3gno;EzT#U1&chur%mlE`hnG?Iz2xycS&iI6q5j6H%g2e~Oy9!cR{WHC z0fMY49GaAiuX=!N>{4SiW#YB1aeB{Dv%vBV28YpJ_t`8h^YwxCL?Av7l0TQ>Tgc(GET=DRKP_FffzlCSy72Z0#JkgY-u z+{D+x;&KwzdU@W{s0S;{gVAvWkxHr&n`@pXH#RmYOC8y`r%!Qawd2;v#pSg_EjvxH zsxaT(t`wZ6y~pR!Pn@k-ij?FWWxR{iGV8Ph8&?bMg@i2J@ni|SCjYAUTiuTI@m+(sxu-%;f8WV-T7H=ILh5t@jAYl`+d!r;;60Melcyi=@9u!_ zdz$3Slb2AT88nWAsFaz0&90dDl0CGG9UA)T$dHlaG`!3aU9>goU$V-rTl5L^!bg%| zEAY8^8Gma3R#le|7;>0bX&FbFA=tg?cUlqjRcO^(9T2WDE8gs;uw*4rRJOvAJfzzd z*xNlUWtP*5{#RV%oXY6+w>b-8#E0Meu1+XvKl9T{N5`&A;-N2js~J)!vHXX0C{JDL zcoOaf1Q^-mMUq#46d{oq8`Kv2WEvEY^%s^v}^@h<*$5` zDf=2QtvJfBR+{WYO1<{$u-WjLe)%hj$Gel69|B4>@K3Qur08s{dL?B`l2ZRtyw4&x z72fbv`7YWtzJm)@0m3oA*hb7FK`6?reArXyru7dti-{tWd7{^fBUrUj& z&*yu-WxZ(s&35c}>j(A4!ID@@fnGxB#c2iRh}x6<(2nrN=AwDmlR3uY2*yO>)8^D) z{HSPNAMEcMzT*ohi+ks3Q}$j#E5e%q3ycZKR>=GA@?wHPAXP{F*k&*=Z?sC2Y7s&* zxJGzLekKFX>Je9KV|vrG>Rlk}oBb~ym5&}ZEbja0!qTT)Og~GzWsj;y)klLLNO?O{ zfS!|n*B@ox`EEfcy-*2j<@iNyo408~eXYBLKx)zp?Y`J^Qf8w6_T6{E^p?6B>$4#w9C8 zCnJ^)>hglc6H*=V{X%w+X0;C&$_`ySQq@vE8D-nZ(AaoteY5@8Yumup0WRPq(fOL( zsu5kBf=#yfr2gb)v+Xi0A>&urmuQ}LI0NusT2QIbH|#t48Kx>u2@WU?QPTU#vtzk! zLyJ*5M3C#otrR5*3P++hUE5W(2%OhLFA-|0{+nTx$K0vz8k6;BFE*;_f=FiTpq5(S zs&UrFi-&iRd2{GG_; zH?=8R6jH+|?=(i^B;p~Xb%4tU%}qbH|DB0W#H^}99!5i^qRjwusv*y%Db)X#hj)VS z$k3sZ9J7_<#b;*Hvx1bmjk4juX?lGvT!v)fKc%*)zGob^$Ijt2>^}F4xPVY^qxt2_ zxlfXmrJYDXFzCNQ53H7^I(4O#f8uZi!!@u6?(?bjlmmQBqEzz;S|l!YSDj54L@RzXHV6v;-5M(bNVO! z^|pD>hVx~}eLv{g{w?5^>O|Y}^{uv1WhhpDwSjLnW9PLaj{1kW*r?9Jd{)pdkxq^X z>&_$%W*2q)h$ysRtBI6nqq{+G67)s&pD&?`5c;D#hsh?nme^PpmXJHUKyIR%#vNep zV;c@V?-@>hbw-38d}|(V%)#LyO+Fb&b5#}QgUt2vM8SVP4W{gr)N>u?wT^5?Hhn%R zSGi=?!f01JrAf@lz?BE(7=mEMp+QO*2`!gbpYKtm-TPA~sd7M_G)hX8Wc^cp(f)`u zd0`o!l|$I}SR@{VE|wnlCQvTlCMZ6+MG zT&P61OwzL!=8eq`q}+4hJ*5Y8T$lQY*I%H`#A>HL?G025XX`c$86Kg|kGe;9yMMK2 z?YS*T3Zl)EGF5ox536=2tFm)?cL6K6x6t;kUw;rH~eriuo&7 zL4IUM;T1kpvx*ld^g6^hx((BGiyf3Y;K4pBdt}gi^XcNCu3`jl#k8y3UOh+FCwK{G zsMzYyD7S5XtB=s1VzmQNzeKgF+cO?q_7|DVD~%UBWwlf%aq47jv(5FsQ(k7U3@l7%sHzXuBZ-Gnp~bM z!3f`y_bzht_fb9*4I*LQgk?w8?|?Aq_s=e`E%v^e0X`_)@dUBtae|zgQHzJ*aSJg- zh~@~~SzT<^0K^c-+p=yY2Q2}41HHA)tg!n~v{UC3iksDWZwgQ#bY{A^W>n1uWO`nI ze@0^lkoG3K>7Rk}d^;~%yGFhl0A}~7Exvd}T~X9e$*SpwLh}7dA`2JuQ9bARkJ5ou z>P?n}@vq>pW<8|%>Gem@z7@D@{CdmdWdm%P9;AIp8ntP@(SOvtFvVT@Y-4F++|380YL~t?z`!I5 z-?8kRD-`Gj4F9%Cps&e1wAv}Ip@c&3;4;>IuV4f33u$~L4^avB~# zr6-dD$^(rE$38B%);EXaN!WS3jtH#!r?>eAytcm#dGA+VQ*bUwbn#XA%iz)DDKozd=)$1E99C9~L^jqI4ITYAg@uAA|JDTuN=O?ZPE_0J zsHHKH%JHmM^vFfRZc@R%jyc?k9952q`w859etuJ}eNCT5=QNDDD2`&bgxT{L%OA7m z;V?%wAY@!m*6~sPoC$TH18BjRvsC6HYVAkm_1YEsYd!4x-)quT$~{38bg3{aCtpi= zlM=l(L!?EsK-U4281?pj?&M|4wjUZC&8Dl~hNAaExWCuzq$I$|skABLacO-Qi%p>T zVOi(A8wcJn)9ve&3aYOoROg1Vq{5XBg&vEq#a8I|H1N#5to=nAhj%jc2#WyG-1*>7 z58{Fc8Q$<#xv|BaKy5&ha>(Xss7WXLvi?0z=meMuGZ<`Jo_fWuIe9T)nJ1{TZFgv! za&vZhKj_JR1?j8kbv8NzDm4u97e`-05v%JQ6ZexqPz^3o`SXSx_)S|)gCv_< zF4qv+2EQuTaTHplLKI8uJ8#v{ymkv2?d&+1nsmPTiijQ>`KRz1@eym#8ydv1=Bfym z)Xukvyaq9{WMC%AOvB!mdQ8Epd-6>1;645PSryWphg}lZFP6Tl@4Vz#+>itrqgqBhV)W%W zd)P^U=59Cqk;QJ)9S5bA)XNqRJdXTS-jI+auv}2CxYl<0fc*}1IV6W%r0hshghSTZ z4g*w9BeYy~2(dJB)cemay#_u|y80!L7`f1hb9pz#{mg5R<-)|&o*2-D9U@t8qVL0y zrdGt?K=LC5dX37@M7=gXeqJ9ZF(%&bFr>HS(~nV{HubrWd_KAIN9@KK$Aiu zrXgA~!h2)ihCV2I%o8P-M;$_ozuK%O>>B29M(C9ipl*Be%>cl)KVQ9*gHh!!_8@Y) z4mwk)=w2v2SMn)a`TS!H#IHVg@4iao=}oS0G_yHliN&b zhgH{7c(a~4C}=7{AsG5~@VC9;Q6bnKHRr(kLiFmbafc?suDdvPdPc)#Zctj70sfl- zmhm3{qsC7<+toa-33^T=CwS0M<)!-bl-{?WX-~BkbIN&8fd$4m8mU&#$Ef4DzHMwz z#it{6BME-J4K%kt#qW)?B8gb<{GszqYDzo2Pb#XCkYrf}ru8p6XW-eXjCwU2THJ6O zQr;6>W(ob3$M@fn^1AFZZ5OChZV@QuAS!*w#*nbiXCRyjansrkaF*_7X;C0`Cm*wZ z82zPY1586Xu0JPw|Fcp5J!XICgS%qt+?gU3`Xh#7)m-d8@HN0%B|l|eNSF3B`-w{F z4o8l8kjVZAhhl8wGOgtYa9mmpb*txQ*-ZB9{PRI9OB3PxX*{J{H!{i&c3SbUvQ_L^ zpqd2EOt$mrcFw;KbC5>3L*rgP;`k2-LuH?w0#?fySEivS4KORIWO(OARdog*w8-=f zNglO9!N-G+W3m`WJ#yxMlSDu#Ow7||WN8X$=Vcvw^@&*W`Q5~XDnaQ7^r4k#D#?}n zHl*7wpe`j7?Q@-xVAW`|DB-5}Gm-9Xb;KSmeG$Hy8Mq@ZRoSjiwP@H)HZI?Ko_;T5 zCHRCFir#fAf%UWY*GGYliVn>p>+NdlS$ZYyh)v?4>#im9l>>NS^)8N!t>P`$1Cr+% znN^lwo35DscyrMVo`<>{ZJ8f=R&oel_ey}ru;k#qH_pZUikG;~4B|u5j4mMieBX-( zt3`yTSrB|^I!3~V?EuD`fHcmYHMoDZRRDgL`eca$dC0^DSPZFAP`qrXpL9+W_;54 zQxOCaz$SjAMazAu)e8uB8*g<<(Di_0Z%LEn&($6hx8~$oZenTV&nBTz0USp*DOX&+ ze!|yZ+YrhtbPYozTO%p{2-Vn!R(_ZoBBSMCjUd*BR>AJz|U%}%!#@2`O_hRb8#*{3Tny6Xf5*ROK}y^byl@@+ZKu(<-V z)~@dYSN${oW4x>Us)RWxT4mR^TTVnt{O~_&Q<-1*BeQzr4le`XGK&pL?~ZEe(B-eG zbY&OXZ18b??;v^8Ts%ET+1B!vZ?b%j)?R zCxOR2_J;@A*U!f|U+CYhIZ@9Olog6vfJvEQY*kNf?r9B~;kmCZnP}UaER4k9nhK-{ z>-wla4?Bwg15I7GZ3Af@HEOcFP1s zb}uN*!253V2cqkhk(wwsr9`r~!6BiyTyiKiy#LYH} z{{WQG;hO6DWI@LAj~jt{PNIz8*|F`-;VH1W?FeR;7kxX_Rd!&XS52Y)2@HKw9p-xt zR1NQYqDH?XZgy9Cj7al3?rEn2LDm*g`j#7n3hupR7YD%tYp$ed1A?D=^poEF;y?=$ zR1Kwxlb)aI8g#xoL~H7L6BTpL4M-497GV&@jGb(<pcRBoe);CswVOMe6`c99Y%}E~wADCpyz&}B%`NriI@WqFE@bSbDz#2WL zoqhwY=ioLkeKPrSr)+`Qu5W%9F9H~n=jf4 z!=B$AEBz$I8u46NWUxw_~>TNDVsk%O%~^F zPM@=MBJm~DPYj$W#fUBp^?N%E(EPC@FWs3*p8=P#W%T)LPd`x!^Kupzg7;SF;lUIX z!*?tT4f-+-RAP5y{F99JpB@UBbe&*pyvb1a3USgdQd0fxD0BEQs1iL1Ski7|adFO5 zQHo&9lY(mVbQ-^0Xbu65puaZzaa5?h`m7t#)vzZ1;wx@-|r zq*%`NE$9BCdiuRoum~z;Xj>(f>WFLyo;KNQ;oM?rrDMWMkIC@Ii#8EDYgHyEFNT^{ z(5$Yz1$Z)CEn5r+kuy_0FLI>r(A+bCX6r}75#Lmoh;9(^9r|$p0E5E|g!?poA%~95 z%yhqQ6WO#p9C(?32I0bC++>!Z?Z&9ea&$a3r}4ZaV->=cw@Ja?>|u}mCc!Y_Z( z$svv}g@LqO@cc4)mx14$gbSmGG&0V_*a=3hw+!@}*ZHBQw1=ndQF;ON5_(9ZX}r~C zb07sF%AJ?NmiAtW^JZpJg)g?-N<#33sgT57Z>KM6v_g-=oE1Zw9(NJrpttPhLOfsoyNTLT~TJ3-P0oF@i3OZ%%1=?U%9! zSe32osqccvewCMFH=a{Bw?t+68^%NadW}W3n}vAgqm(&w98RBQKg9DmoTd%@ThM zCr)Pa$m;Y{L5V*iNMSHJ{~HLK?6QY|lD+yXRc~1U>|M^u&wV`T3$rL-_r^Dw&it9t z-Q{i!J#o~P&`S|44R&3NPGO}zE0_06z7EvRu9JSr2I(#>Ll4nEfs8f@_1;3Wv_{Cd3Jn z)mc_vWQ#7&vtPNw_lXgxfOA1Xs?lrJwI$Y5>EwTOf_%r#>_rES=Vcug3ks!@<8v$0 zUS@akfgaX6J*6S&BSzpmZh^+FA3W^V_`8P^+M)Dx?r&u*z17dl9d+hGEqy=4x#hr3 zYDLp}0g5vA;hR6af_*!!$6j2xkWC+TsG#zaPfCFDoA@_mrdyRxD+P+NUUfo(A*oxw zK)csQd=r)Ky?f^qDEC!6J>WX117stv802(thW5M9WKM%1(qh&QWcdRFU!U6;+_R43 zp$`d+4+HVwTXiTA#$BR7xCx%XdEaw$PU&pkTO-cSPn3uN+mN~ofiYYHBp=7g&K4j zDAanbKC5m1jJd&=h!QxXY{DeRr##O!vV1uFPB@#MRK{w0;39l2bKLqZRy@e}I*?#9 zj(Ol9!!#RsTt5@%4)V95BW7>~>EZ?_HRy-B=$GjGf%oy;E8Co99fLF?(=GXl8QYL6 zTVXIGHqABCc17cm3%)k)dDS_$4}wy_-iczCyt1jN584W=kI@&1_1pVGwcq$A-%ra; zU;gCQejVHhgWPs5mL~+5`!4t)0wAB>73;70OO3U3AkTLOO1iL*zcG9->nMry38D8A z;lFNVDY9BW1KAn|{;Vhb(oQ^+t(iZ8lYeLgqviZkW4aj&wc!BiNc}+DdjypPSqz`APUv7+JQSUE>t-PVQGEend^Rba#e0mON$V z=coBE4UC`HKvGN~ZwG#nJ^{M;a7r#d!MiBarSt_<)tdUFGm+dLY@L=pm_#V{bSwuk;2@bS%|+063sz9$`o!B#^>prN`d%akK9U{ zV4W&xb1b(m6eIp=dT+Q4hDd-h4t1itzFjUB$C z?Ww!o@-R`Ywg3*6w_5|0u@rrwN^Z?c6*IE316zL!o0>87~)S9 zbCrCIahW{EjpuuR99*qfeKe7uCBMOM;I6W&o{o3gxmf(kL^b;lpW%%LdGu^q?LCkQ zTVXL+77S`6t7@tbxKZBK+=_R+eJ-nuEF-*#N=T(;(g2sWCIjLU9!1|2OA*P=Wm6sr zy59M{JEnM!xh{d?!B2h-Ou{?1LgxCDj~qbISFgYLofQ`cB==ugzf-%xOIIR$O?|04 zK%0oOrJ%69YX>=R9z`oiK%*0KSINCNHr=IkSKw0Zp-rntBs+@Nz9aNXXpW66o%U*^ z$!`ETI=efMj6nj9A!GRx2MsECZREmLyR+BQ-Zm&PSD+Goye%gZq$^}sWW@Te`K-QA zJZ}3(gorh5A7U$O^O1P8ZZq~Pa@E)mVLiwYoX+``ap#%`47MOGFdh8}_M@UQ*k&uZ zjzrHa-twU_$MWX%u2CZQH51U>1JsSZj{?#ACl7K>HmL(Qbv}FnmG#$Xc0T)k-T}Of zlizYIjh6~5c!uw-DA=~`wp|T$Ddiu#COdQATp``}oKH+9O7mF2>F&uD-?7T#)U_?E zT%nEXG0mo(NfCeF)%4GL4R@u-ds2sh+bC6@`u>2~1gY#gvUsU}ab2w*56qENkRI1u zsSzZsK7B6D?!k-Q&XvBWiw)}|)9<#P4ht1;+|RGAmY2u2z?^e?5|Yr2w}i~?8@t(Y zMh|74oeu9K@jf4YY1s-oJ3 z+Nm{sp{w0p-;J&%R&YDS>}?!Y7E?N$;ByvtdNRoR?cx>DiIg+ktKnJO>ER(~c2$*Yl3>o2r~L<-8beEQ_Wte-WWfAiDy&FGEu zQFZK1_8gD*MUVsLpva`oQs`Ws+ttpgw!0g2?>hS!HFmJ08S?Rb5vo|QxpA5?pv-=| z1C+8tZfrJg&vbger~0Zm8~ro7Ep}K{COUp9YYMxNxJ~s^(!N>D4$aujST&DWld`Z7 znW|5^uAkspccfl>5OjmEi!4h?dFyQPy*a21Aq@GRe}=H^+RDCILu@`T%(oXsa(bVh zr&BGdl$x-8DCS?rSyps+;T206YWWRRN$bl3thOaraYpu5#7uWwN=pjK!q;V^ol{=b zOgNF=DrsvWH@jQAGn_(HJh)~dw?&G3?(wSInnep@v*?u0rje4Tv&UFJYa2VxCTeU) z_@G2i>e&!?y%^Mc`NfJ)OS_kUSY;5)zmz2gZrrAI+qJC?N?(I@pT24Y^SLQe#y|T8 zUtkp~hO=fP>fT+vo0%i)Gs$<)-7qQg6;!=ouP>J6BOXR0d!+luSd`8)YSxZ~-R+6* zPbnD%wNu_Y2DsV+Z|8KaEZ%|J7(}Z0CJru9AH)RqE~aoGlgaE)h{Y$9;r>YM2HgTg z-Ipi7SAkA7*)dl?J0o2{<$cg*{w z1AZY}h0KTUSJ5CHAOdz1%A}hH=4_^zA?A0V&%L{QzyGa4iiDDWyw-=FrCGJaPlM#$ zkUS@-Y=g^pmhXHs;J^D~TnxWEG?*PI|X}&ZvS4TDNPw08yF9lv4zcyh) znT`Kp1{{(^(3?78_$5Xm`SuWj5b^Qo-C9gsd6QZv=@A)Mv#+xhWClioj`^Jd6ukz= zEskGs{^Tsr_q^yGf9Kiv5f9Sen-1uoRQTgZi`T|0-Exu#vI0f#XUWI}XTM~-Zp_#9 zA>!&(c;37jjk8#4TyR~G6z3HepAdhe;<%K+)$i1;gT~_xjGu z{rRE1gM@fo^(!S`suHeHv=3LOT(-QOo8r z>lrTwb+7-AQNXzE$FDA+a223%?Ar_}nJ$;IozSwF5pP82fa+5RZ>gxZ@jzLD77&fUI}W~%9{R9 zGs(LtXKF$vvE|QVM+TAz<%;HuXU1)EE$YHX1>NJGg6QKF)Qs^01t>s1$F-sSCk^+h zDy)D6tvkd}*dX}qsY)e1tA)}vYTyvpljynpH@bu0hzN2BXY;Ung2Rs=C@L#eRr}Vd z?CxWXNIdqX{Vycxs?>0S2ipQUEt8-<;Cz3OuT7PpB#1o4@H|95WRMp-n3@gzB7Pv* zUMwTGSt3dBfj3bm?c%BX3SwgDP>}pY25Qgi{RC!4&4a*&(9b{lJ2;R^vYg?UJJ-H* zxv%K2f=)Oza72TlySM!*n?fMq&)gWL)n!xFVV}qk6OE8F8M3rA-6kee5frY&TZKL9 zsk6x<2CdpHC{@0|8w7Qzp>=iW0J=4~^Bk2m0uhR#wX$6=x1W`43~bxKNGZRk>$87S zTOqQFM_8^8GnU=4R>*emOs_}+mNpvUvpvGjd(X&i$Zu%153WuW#)e;f24Y1&&q(cV zv@FEJh>#ML878F?UvsBH)n{hR@<%a0MVY10ubrj9y;TWN5j%R^AWrg&%p#KJ7?wH% zfXra4X(!+zN&PF{!CA%AX%@zy4;SJK1^^dtl_QF*L&>zGmvyYfeiO_2i9)# z1id^(8@((t>|t^A%9DT?S|29_=ugExkqF&knCuOBORxM`4lQ?@W*rp$jg%dU5f290 zR5>7$u+p^Ene8p=IUzYn9%baH-b;+6Rf_a+BS%EYx8JGjlW zakvun6srW8F0jc@8sRVJ)ExySQ}JzNw9&@Mt1d2WO1yry1wA~djV3r-uSU1Pv!(A` zKt7SD4hzLe~8B-*DF(!f+hIgdT&nY2XeU{833I$F5&J0fJo$|UE>A8GJ{J95a0FB z?=naa7hPQ7GT#b++d!T1@(&_nOI;59^A)fe&g%mU-i*T`xw0E|>eROBGm-KLixU9k zo+X*QvnR5$( zNnCz{2uyg1Z}qj6+!h(h`*z#?RgYgTr+X|yaZpb;P-Qw^YI6~Ib;+^aOIZ4aqLYIj ze>fSmEMKR1xpnG=^DMFUL(l?j$RWhT$TEKVrLfNS4MCm7qS*uIpWL7?@ ztIk)kvUi^H8DLp>`^9mrK6xB##|wfJKI#`dLzeBMqcxFAGMu4RYu{hmF~ukVPC9jB z@@-)iZp}^V>MXs_&q4r>%`HpNobkiUK$*XhLY$T99NWgV&?Ia$T8-DT42Rq$m9D;v z=75vYT7Qr`=JEpR2Kv9Lu79KP7M5jWzqmw%<2luruxwNi5%=K-u>lWlc45^{8)yRb z=4EJgifwgwDiVnR|_zwkI4vj21S5p&|mL|$v^GA2d;LiN$4_gQP z@*y+NW0NvAY?TPm7U=2vdJxl{%d^Mr6uR%r5b2Or{VHyLVdlDlKq4-#3(ENOpodrS zVNoaxZ|r*d+WNVEC?7znHwDm#b|JnSQLTunq3p!clXj29VT)xsvB%rlw|>@!ZC|zD z74yM~K^q$FUtW|DdZ$}Wt{Rk2ms-@!*Pp|lstXG>5kt~=FZ!N2st57Yd{0QNd(E}) zO!myaxGTNZNwhvitvgH7ZJ9$m85Al@r(W=&6)l|`S_Q#68-wL|LFkI7W4u<_W5P=%o9pMG7uCry|nQf2E$VLG_O$yLy#MI)WuSS~@pSQDp zc4nkqc~_-xM-)58atY6hoah_!NLDKSlm!-Jol;(eL`=kc*tu1*U|uDbZjTAk2)X|V z+&nZwgZGA1&D4~69r_J7Ek~;a5@d@ActQdNclD&G)zLGKP@$o0jCFeG1N7WRy}SJ5 zauv#|86K;*4mF-EBP-!5N)j<*dajem`270H^v2K@yV4& zD;W{;EDuO?%544!X>K{eeuS0%)Nyuak#ng+&FkZ0W#Uzb^Vb7HKHMb5bDzR<=9Cj9 zdEU6&Swo=Jui*URdg5ZCk2NsLY+w%HW|pKcsSl|JlK6YwI1BVY1N?N18jxgvvX?B; zjK25PB&L#+BS0pElUo%h+mG(yY|pU^LqE+!RNF!%rc)Px*2)w>b0(vmB=ZE+qruMK z#)|R_!`nXZC^g@cbY6)%gmfXVie)eYT?8VIj;j{KZS+E{1%OdtsV8TOnO)6{JZ_x< z$?7rYfRMN##+M*vd*t0UIjCJ+C20S%nmkZB@82!1GS2w%$9u^zab5ABjnT z={Ti8wR|P-lb%kna;h)pjHf(_=3tWP8ooge$rO(icmISWh?h?Q~lu z8&+<8q{uMH=i43_+%aA%S_Y<;ACxtOQ^o#CLkWJgqQnV2K_?iKNFWg)nMBjkn|;Bv z%xS94;T@y^;w?&e zThQ%Ex(ACr#lG=fF)WY9Yf^qFG{nPFPyFQ)h%)Bg}UeaiTN9#_Q&<-4K;eGK0VY-ccR|0 zS*R0f{IeXf{ICQ8D?Ntw&!Uh5^4-wkuf|5Rwse1e>mx zOH^aTFv;mmd+UaGEiYdpT#AXx}tG$X21|-znbs|5#@P}Ws$Z|?KzJFnx%w1 zdK$tGl{V+K0AdXCP;P^xk(%K9EO6!`Zw?OOgIXR<#EyDc#8<>dQjB`t_$$x(lZ-o0 zZ%5Zk@u1d97v>NW)%dLib_jQKfbHHgD4s3iGqJGXy;d?>``AGO^FlmW*6lcl9EWnE z^?^dL>@<`(Oq466p=)ZQSnu2r{Im@02_P%b1Pm8dAA-q&u>pp^R8`_!omjkni?pk{#MKL&(rzsczwm5iUp^5nc2mJ1jwIkH>&|+utQs39 zUEc|Iy*@;SZL#g{DtworSz;!G>nk0Ap3B1uCDX?Ka-l6Zt)%}`ULlj7*R?9d+#Gw>Vf&rtX~V7T-OX&;g}3Z2@ZlK% z7Ix3Sxy9+Bj$lAe9b2S;Ap;tmH2@5kQ6m?* z2=3z?ttXJ0L^z|uhjlmJy@41UI!G$y1aQkGG9w`zt14j{a2pA#qmTiB);u`HeRQmv zZhaj}a;*f}9&sr3-8BgQ!5Le6s0BX@ZYPXI#@Aj(N|2wVl9={>+X&1;Mo5uRKfH0Q zW|ElQSvKb5qqV47nbprjsY$`iMYEtY;+TEELoGJ~+N;W?u?Es+-q7;v6hLH8e$qm% zpDdhP?{%nUtu(|eMQ&7k-hgB?T29I?z&A*2z)9;iZao#Z{vEg6uy)g+%E^#8!23pk z+dA9%_ZDoB*hYUW{}5#ovmGsTbfP-3)GdAx!RkKwZV0qQQgU=1V=5P$bgrh?d#VSN zzEYRW)-0XLQdrcn7*%GV4^AN8BN5QK#a%ExouI1EArX~NjS5eHc16<#Umbov>V-<`h7ONN+dhz|6uu0ZYeNaU z8wsS%oS|}Y#DM>*9|ul=Zca*_Bjs+VIoOvaAcp`*{u~rL#C~LB*l!9tDtV4_vY*Pc zUI%oigDhfh1lI228n7jg{zE#AkHc7qN;uY2AA(0@gV1M`CmqmWPcnz3+%2_-!_ z=3((FAWxr>X-wpHN5$Gr&GR@QZ;#9Kh=*xjH3K48tUz}ZDvz=}e1(z)S83!YNIm1q zrX*^xPp@Xt!my!VTij|y+HxV}Do4rvC`T#Ptnx}n#bsvzCrjR~#Ef#(^YP+)=~q~T zxWOaeiHLAFcya;B+8Ne|XndIN%9(gN%VyXP9_iZUT41BS)zyrGmbBIF$44T%GJjjfNC*qi$D|(HXAeFcC?67Kgp`5-=w!u-6+uE(3&c~m-iij_k9|^CGu9m1) z40k3fBJKRK_MLX&y{h>q;$vzLjbjxH;3wmnOD;+sq;BxG!D^GE)%MDh-kwJ?T zn7r0ea&HJn1e?Ae2H^RZd>q1X?Ta`%4q;~`bjYleGt0Q?*>CANYw77sI`DyAHo7rq zyo^cX0 zdjsRrA96kQM4Ff4rxNhzr9ku7mdy7Hp+;v#8lOWa2h{i$TOD1PI^;}proB4)O8&Z3 zNI>>H`+##u>^)Xlmt9jKjE)Z|Z;&b<-hn)XjG;J5)i}eJd)kU%r^d8>VmM4hPx<;( z^hEK!>bMVXfC`t50RB`;YOIhq#*~93vlD`-#fnB)9|pvkhCsTsLlMw<;U8UP?KpW( z+m|1%TLMOb%hLCzt^Nra+#lGp`Y0O}exJH9?lXcV4|~3Bc*22`$Mkh#k~-*fGz6MU z-ikTl^9>Es23If7fK$m^pUYORrZ#V((AE!pWs#oNq9D1uCv{Dn@E=d_+h|d54vJ7a1cC(UC+i91EpS(8^4kEJc0wsEe#$(~sz>u+ej;r1V zt^*gD7Rb6M7-)=9aTWwRUt5X1@wj}J5)l8am@8=|UI!X#$ zAh^XRj3^F%7+MP0r8MLq&6xtSCLBY>@$Q1?VL3A?{RM9?05enz?%gF}$xLq8k7A|g z$;+QNRGEHoJ1&R@*Thm5AzL4^6P-^!zm|#(HpZ?114s%rXA4)x)Xup8y94~!G|SuD-6yW6A9 z$_|UtXf>IQQF|cHLeQJqX_?kUPAo(+`>G_Y=B02Cl3?$4TE^NkfQGTti+)0$XFPGS zgDNp}vM}sC&Bg4kF%fWh^Su)T0M+uZzY+i_aM^XiF&(AKV_-v+_frg$G*!Pa7#R6sjn0_gS0@|9! zXGPDavweM?6AheI0!n@09hJ(k%{JQFsbS7vAwV0nk^=)_02sUj?vbL`0K}ZL2mjL~ zU&T)D$`;33Yb+7+#n>v&d3?~-G9K(?+oK*e)@^P%Qx}q9tomuKdDL)_6yzhM^+|2r zG4}=KN`&}LP(>n!_5+Ub6@*hBlNLD2MB6iPLfX9fu${>iR!$t>D;QtyS~iSa0hiI) zAfTTgjbFnGDnZJZgnlJ8IyJWZQ9SPLhNQe@r+{4pmSJj2Z_T#79pT{qb0GZgp;?x} z^_q=qo7WnEn;2u3UAoHrnmefc2|4iNOc863>Rg`rtSZBaa9m0epk;44wKk#v^F=Fr zhMepafzgrh>_E&9+Kz|-=I`ZhC2wr7SrIImJwYwK+=}jj8p4h~%jpIla8Hxdij%~+ z>MA!^{Cefj56V%^EhAKr%9Yz58j;q9%gCcxMuB*QdcWPwX{ zw15+{Xb!y3@d@B)f}nsba5+;I;8irQ(0_Rd`G9zs^Wxp|0np{F2iFkM+&e61>iOFC z7)8JWY3VShO$gBA_VwpemX9&lAV#wNMp&z^^xIcn3%tdt!Gd%EdWvd&wXlp8vxZ*d zcCDXDt}eTHh?6?L7S?E0DpR@>b3b`1()?Lrxi zoqm*0*OcV3x%@OcGxJ&9;Y>m((&>cF+14HFiL*M)C!-moaMHK`XpvGqNnpn07o}Ov zz@V{?f(#nwVb(P7h)tq96<>k9zZ1z9+|YnNnkUlzTSx8|K*WfSDG@fL$S{G>9!v5YXXOwe|Z4? z1<)*MCc8{Ve4*!IZc~LX`}VI2?KeoID=9aMSc3x13BRe&I0~myVnC^K3 zcs~{1BL|-7!`%W_h4B2BK$q!&!)v<1oegO4zs8CF=Wkm1083>~+d(!CWDfoxe}+s0 zaVs5x49|b?EMYwB2w-37Iv3VJ=l6f|ivK|O|MPU9SLEFSYB#;u&>Xnp{?RKEAAm*c zP+my*C)0tRG2jLsP@RFy&;M*fU|;jWqSO2$2=>K4`BCNx+UV}I`K~+vl&q-+V9}iw z^}PRR#Q>po$;ldRbX;xt|H&>x&u9yPML#ebqx)w>eJqzwOgx^SRw5etPsy4F&c1s2 zIZOX|-*kWo8*~mZ|2+oyzfj>{arg&&@vk`i6WsWJRUFK&PIn#D0{CB8`>&{y_^)XE z1DN_(Q~U$<@;6Ok>WNHm5l@2;2^2~u3#k(QRv^f;L{lTmwUG)Pjq-m}?X4$)l2x5L zzXHX>p`WPeb9fD1)~&5>KkpjQd7xF8`CrMPogVi5YSwoC+vJckU<@y=6ThvJqvXj# zZ)*@nQmkCuK?l&5_*`ytz3ub8fqs7-e_MTj4B*9RV^lMDHj;{SOt~YyPtwG1djzGLSJC;qVxI&- z!*0d1$bq&=?LE+L--zY z*{}T$E2DZ!|9Ra5YsETekD$JiTAc@E`*TT~V2qW}o4>`4iR%^Go_PWg^wsOjze)7} zPu3`ZNuF`%ctzU>Ix#-L>+nC>L2?A2HM{TTps^KCQ{eMp53HhH{dH{S$%?F#f-3!Ym*O{g$Qol)e$Pq65V?%~P>$+#i3r%=rT>`P z%QL_SdhBxG!Ca?#?7PL#C+&8+#ke~`>}p_f5HHO?;2w*AkcFt4iG%HU7VY>hklV;& z>*SAsUX!=BC}X`%F^Lk@myrnlOKk_Dw{rX@JDj31U41YWB!~US8=*Iqj{=*RM@;(w zl}*!#((N|oi?I5V{++J<@g3&v@Es0*j1%sivw`zY{tyP&Of@6r9A$x~k1{!_YvQ1P zCvU#kY_1G*UP&2t&e&-PE?+blYuUo2x~otFo3p?Pa#(%AsV^vlEBzAL77*yQq>b-#0z-v^(~#hfm>_>+-# zxYT&(nBTj9PLab4bzV68wBCmUGXKdN9r6ICr8ln$9DHR?*^gKvA1YWYyP)sAbA*O! zrgWK}Gs<~O5yLWn6nF8zJJ){nE7^7YfeVHAmQn|*4f|y?wmYkb zFbTU?Gm5ePwC!TjD_gkgV-$@gBgrF_-RCj33;tFz_t2<&LZ0^>Q&2jEm=p6dI~_U0 z6}T`I6=t!;tS4~oO#;D)ktg=Qi;io&;`diTG$lp2+rF%q%)JB^8{_@Wc zmcYWmWGpAU>~rMY$ve39?wJA)x3<+~a}&kGZ`@5WF&srR@kOe)$DCadH-1hIunTJM zC=uawjodZYD+A--WLS-?`S54#yiQrk%#|#Mhlh9xW~>y=ZH|W?*cTka@xZBo?dJzs zVZZ6P_o4L|u#=i5dGil!tz!(66xJZn>Po@l^K1PZZY)_%S{SanV<)pXHWa_>YI(bT zW!1y@&Kf*{F><@^$g?ibuyRz1x+Hi1(ztKKU0Gxcr?j$-F*bYLdab_C-5M?6c?L zKdUygcT#dN4esoPR~~x*sjMmivr(;u{@ppy`Vb<|ylnn~P4(1}T2i>*YxC2KD$BuL z1pt6wLUpETqZu!Fb$^1*hit3RxZ8if|1HssRR8 zh0+oVmU!cdDUYYl@x{uP=wk=ijQjyiq@eM8b_ZYl-Y%piq?gF9@#RE86l%d8X5CA`NT& zxVy0n(0M*eg^{AMA+?>AmzCXax78!e@oubnU+KZN5;Ld)mafn@r29SbgAe5uz`Xd(_Zu0FMO3H7n|F9lH9m{wQtLNYyS z+E~ecdjS_6UeVjPtD`TfOUQkO7*Oso*jAEPjo1G!4|l*{g61UX4>o*T^H*0PJM;Wz z8BFa&*G}xjQ!32zYNKR%wPgRmW>%qpHH+=(D-zSu7H>+>*lPQkGPX$6;Al9E!bW=Y zvosPB=$x*{Sq4o*Q@W6VBQL*@}hnr1x^*z-Q z8(<`kqzCW+RN|(jtI(={@ZW!LQk` zxvDEO3@*!dN!4E&&qUlK8Lvj2bq-)C^!oMus>hwBoXpCj*}D@tT`(zc)yJ4(vwN3I z)}PpSccW?NH}I~NJiMM~GFGB%xpA9>ga(L-O&tMQ!ddu!AC-P{NFo}TOVfQ~4{q## z#iYb>G<0AyxbP|cM1rC9*Ly8}A`k6u5JG+8&Ao_5VT-;Z6HCR z40(>0Wai@L%?8SLwsN{g3TEnH&XvwXU9M>E{zqM|?rnOqj_Enme(KbLvKw(Zlil5Z zGx3{`?Rze;MKtEtE{%khr7wJy?04uVtz_l(%CPEjt3_{lj?YNnKf(*{FJK*tUA^Z5 zj~tvGGb)J>R#(0bEw?b2>)?w&m%9T%yR$5$1IoOE5K%b3Jf`GZ=Jo)*ODb$d z%!aM0n4cfr^3kj=K}z^(bzp9TVW|Y-sf{P`9DCNf!JX31k7xJ|J-qSkw(IE|YgkoY z;q36D%`C~v`au)=iUC(Y1qUxf8IGq=$k`8Hb4k}2x0SOLlP-UZ%jiq>PUWzw7>mim z8SaqVDV;XctbkMfXDR_kGBRX;+I@eo!T+^j;K6iFjR0Sb)a(B~GyTa|dr@bX_xj&l5gT-w z{S|vUTrr4!6Y8rqa2uGahh(RosYs$47XRDUx`phH+_$F*PPgUo~FO z#M_)%!cu``Jc!)t;=Z`-zoM0UZx%YQ3qe*oKN!WLH7%f_Pjh@sPe*8MKfsg=hy-`p z(rqB9Gr34P%=&c`Z{4r9sx7$sh6HCZBqA46*{k>$8dIJj3|&U+oJUP$OAi?@@h#B6 zV##mPl=dF&fYQr?B;<7n1D6w#j|K^ijtOaqvgF1{WuvxhE;}^_P&Bg8HQ(K%;Q?h5 zl{w&^XN1bq&%w!Q&*_6v>JoM6qY9H68?w_(>i4nx&(vMWxI*$HQCL6Jc7|hLO#DPd zlt%hm2SBpNPw5*RCS=o@=uC%uHtuT~_g5*1-f{5-K~> zq`hzVCf)#xdC+kxZO=wwxVg7m$h4m5&QTyoA$=PE6QEpH-(whrfUY@F6Ty^5*Z<$- zMh6x?VYrca!(Sa0$nia{70a%EppqyKX2;y7hmfpCZTnx=65aDSAen)YnyzV;NxM(DXeSS(^MaN5e@Um*-gD#mcY??-D*`T;-{gaMW$=|{8V_M84h>EK zprX^qbj}b6Psz0>b#k2#8y_s8mX>O5Clg1C#zNLRimG)A`p+|>i&JK$BiXw}Y@hsQ z%e@cZ83`NP0`nCI*R`Ou_aaA1lo7N6KFD+%=e^A;KSp+}IMHJ&?Vhy2BW&KYeVt^D z+T-kz!?*0@0OsI}I!`&B2HDX@s{c(ecS?eocb7OnP)zJ05X|TA1OqR*06>j3c@NYQ ziS}qgk=8MJ7DrgvcH+oYu-6X^{!4ju81C&gCR0n2s0lNI=hA79e zPdR!r!mRW(KHOk@L)eoMQr22>z^3j0&8C<=HeIoc>pgB=KwwkY-`Uhxa1ywfG)X`0 zZF;KQ-mISRi57o{z|Db0cJitkAacxqOV|nnVI#6#XF7uAa)H(mP2T;xgfTf?(}U3S z<{o;=k?hTiUi;Gzg>ix;tY52j09Hb09>~!6Pf1HH+}o>C!xR_d7$_)xW`}^Ce}TC2 zM9N}F)UNG|8XxW6tP*bp30@)yaSe?`FkQ4**2l5`Lb*~Bf&!WukjUpG92Kdi%22HL zOuXe|KE>?KL@tQ%=FFH|p@<|p1)35ennqp5aUP!&26xaw97keSrH+Te`E7R}) zm*8o@_n6JSP;HLvvLQk6g#IRY$ZL#FB;%c_zS@2S0n*;XT-db;W@8J22n4bJD+2$! z2&myx2J;PnI+n=avY8>s@&_#6^S^>p$E`#WwEgB(3QY#UlyW~Vpf&@5#NB2}7vdtQ zO)sj<{XqruxIn|0xYXW0gNAio=p1 z5u6oo;>wADjb(Uf^pdWbqJjVWOM9%1)Px)m@9&uq1WA~MU|rU}k0-*7_mhlAl z!Bt&ozz6)$fX(Os9q{+r{$CpY%Qgi0)%aIZ{so7B0rp=!{1*@Z#lwG%rT;G*oN_%# zgkHiUZJ26d|NJZT<^51=`7-fK+1EC(4lPs6+mdpWW1;MazxZ|JB#8rpWx>g^b~Q0# z1#)L)ZA%MY2%q?CxE=iHe@ZR=s=SFl)$<&a)O@Oi1xTVu578oQTZV)>KC#9z7w#eJS9Y z`s;z8!!U7j-M1X|P+puk4U+AMhjnAUp^?W7ZUcwettZ;Ypc8e+^6Bbz?D0Z04SN+gOaUtwUJ}1um5^4!!=CVHLBsYvQjoUd7KXQCM|0Tk60&B> zNyb;~qxbymznA5=hgKJ=?(-0R0ABqI5xK<`vp3Uo0d z!3_oJ_V#!tr=iQnyhz0TkMv!<_MCDB}+8dc~!E^bH!0Fnj;7fG)*}%0AuJ^U}Mkv2d#^iHO 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 literal 0 HcmV?d00001 diff --git a/docs/images/hCas9-AAVS1-a_Insertions.png b/docs/images/hCas9-AAVS1-a_Insertions.png new file mode 100644 index 0000000000000000000000000000000000000000..d71a446365f462629e64703da6397fb10c0c8b12 GIT binary patch literal 88166 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

      {(Fh4ZJ!S+!7V^Nk%QxW;J`FE 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∋@Jphy(%+7q`vm=P0VSHD(ku~o8F zEPrRLi()_b`r64dKDruGZDU6{inV=lybW;{4voMfZG1jIKOcvG6H6{acXVzT?@;SP z*ZOJ~+Q@$7HaZSJd=DsP;mg`9sO5ht0u)C(;}#E9Wv8mo^$TrrystBW4NGj)NPV|b z_vYLXWINc#^z=Unwj~iy-J1tJv6&CKV=WF-u4=CxZrM-DkGw`g5q+~dDLMniLr-#e z@ran%OcV^1%7%@`#2cTRMl%CYkWf&edYCu)+#AAJ;#G}_%oB0E3WsFR=wQi-J}CmB zGDCxmhtFNAMAyd-#GQx}dW#)*l&tY`YsH7<;kIPyDUR%C^1I%smPu-yWY?ALUR&m0 zU$?PXkE`XLw|}!x2l6JG>_!eFT7Gg7AF$-Q9Pnk&9OqY!$w>;8C(u<(IGDC-JaJsI z$H}~lGoM`YTb(sYFWHd8{>-lOoW|GAQ?Fnav*229c?}*i#U~Zkj^s0otE=&e)$4Og zT`k5z`+E>-4<$MFv}p;+*&i46r;Hh$wzXjZiq<^(b)b`i(_91~6B!1qseDkGX>Q<@?QOhqK%zAUR2qw35Pz_IV|=~>(7dWVCQKHi#OFckidj#FCXKFP7r_CuT45c<`-nIjwBNZM-=BKEXORaDt_?!Eu+HKjP!F*^vmL56|X8B>%gf~k;GQ~C`66N zy_^5hNHfRTS(7{RwSBLuy$O9Xq5XdY1Z&C7%%qp8RFFg z8F&_l<}6fhnH+uW!=13k=`j2@rcz^9dZ##3wm<>&*a)Oevkzt#cBM6hEF)thg-4V# zd2n(Mh$FC-%i8O|;T4lgzRNFu{^0D~@uB>WqNFz0?Z?}4R7YT$k90~;h%AU_tx9%P zP?wxYa(h-F|1p?IpLn>%_~Ou#Qe2_hvpDK@o})u^Z|0u5o_=K?Ys;RMY>{vDM2|t{ zd`@A(!ix|><&Px<`s1?>`wgkXTO2(1#_oJPXuD`25q zH{-;w1a0K1vxgN#)TZ zf_wr^E$p>n&58rP2>#@>U({X=bTkcySgJL66B zRqrdDEMjhrx5OKJTPi029jmiDo0u%xkzCG^Pitd9d{g~y*p#3RvWzE3=(D;c)d(fO z>AtXvTt3t8KsRA4sgBnylyaM`i8>!&hXktlXVRb8*0`B_2-w(buYOlIwn^rEuqvQi zQNAX!a9yJ+xRY7(TkYDDbDl|xv1Y{Y631t4`E`3q5sM-JE9IizNHw-IO@j*BuYFBG z7#rHh6v*F`Gi!Q{-=jC?^l|U%%TdU{vUPH8%hS+f*c)ah1WkdDc`QB9bbPzT*0%-o2U z+CZRTPI+Fmx%#AWNx8*gD~Bw5w=ut_u|DEUm-b2&+|$x>{gFH;SM|17V0udn02)Q0 zd9T%+!z5agIY%T*rvT|#v`KSCLnlgNKq_7U~i zWmfe&jXNCZ_03PbGl+-5usf%LVONc8p-R6oLFD|HkSZS^BrnRB??l?t)QwQf9F&}p zqe~7IF%bMV(HEkVkX^rgMuzLVDmgrkEVGgKHMc?^bDa1y;&h@zLoPcI-*sRMGiw-p zKQ$M)%C|Zs6$SdKHx2=gl;7Xh`1I*hODX}9uSZS?5CCOUCfFmd89#>obmabLp(}lK znhxY-B?Lj*I&r)@>eu+#9)hy+k6K|0ALv2uU-oS1xwLKuv{FI%pGXIF&BMWQ`$vAj zM$%+^%DXm9u^EHqYM3ftT79_l(bWqwgdDC! z%$M5OcvmS^T*;TA-Ki)f=s2466EMQU=MN!(;-f1=T9FwEIsB_l9P|#Lc=H7kX0!_( zR-yJzv`GjDscG(UCIsF7_iB(95)={TXIE2Lm22@mXJ%%`))dNyEmSw~#s~_kX1So* z!Xz_l1EcGOX@)V)7nDgQ)xUb`V|I^0b+q1#!MYokm=AI8%JpS!Z_VaRSLd1o@xv`T z;}F_R{|)QLg^`h)!efK%InY)gWi2?+Z9KTXEv*SM^ZcYCAeW6Qtp{}rk^9EW4Du$%RRb9-V9U4 zN?w^T=a_ps^T23rOmBvUdMuvf#&Dzb*AI~W>%XA^tXUTCj(ub9xpI1{IIEQLN$^mo zmsd5@+}%&s;Y;uz50<@MXrC}O^xX1;;K*0!*tRqsYT&UQ>NH5^LZ05}muu&>O;H1N zwKq_hHxFZxnqy8;OGqS2P%$=Klt>3Jm*ktJ#`2F@;%BZkq6ayr#mQ#V8{XZoFm5cd z18N#-Bl|a(nOaJC{PS~wV3oaQfp!p)1uU4?ivRD)CEAD$LZwDiB_#r@iMWO zJ<2tw`|9!b&hR?`f&p2xUyfY*Z>rwpoUugAcN5}Mcef#}aiUlr_oh|*@O@Boeel=u z<@F|W_RkvfpH9OCELD42@@*c_@A%uMUqQKs6W3p$@l|p~jh5>FG7AJg4^JYHp4EY$ zrSLw4m~2*u@NEv|e;gHJN<`=3&=t48mK6Q^usUOrQ?P<-{id+U-?7@SD5Qjsz`Y(Y zJO52hw%I5nb~8%0zqBRVIL?bDfi9umO#HWud^~jJUvs!IX-Hz~45dVe2DzVG_3%P~*gUVFG1wW_%t2>8I28j9-!;XmM&-2jO8DX?!(a3&8o=zNs zz(FNGaAo2$JO%%B$2V*(Wh##KvD@luYBoQ`(td&HJ74Xmftkn7d2RmxRtVH3`~9p- zewngK6am9Pqfaz+a>uGQJieGR`ordFNJsx(oj}VQ|1JN861+TBqj&S6P#Hb&U&Po;l@lN z|19$DmKf%qEZT!;hm}JO?GFgpUv;gHTX}(O5I6|M+iKV%S9bTeh-Qh4JtqLYP!A?X zmf&0^coaRV_idh`R&jWTjIX+RC&i_fZUGH6IgaiPL!J4#l>zJ(6|xkz=s@X}^hg-?92_gohfWbrn8`u+~V5oVc`^$p#Go$bU@Zi7evM zB>qa$iHf7jKzSv*XxyzrkJN51@x@B~?vI;C;#9&3n_5VZ--RWETS z&xwcY%k#WD=WcQ@7Fu9%pFM=xGz5dG4`K)Le_u$_Xb5-qD|B2z7o1KG*Z3lXp%R0S)3!L1ml|0Ki{>F7X2-_Dq4i*a~!vub#g| za-2^?^}eLKvWN{D@(n@fCV~!jM0)JJlr%mXQF}drhj$-pLrsBy+Nw32$AvU}&HwG* z3Iv95k)o2mBa0(OMB){XL&a35&HY0_7JwQjX;|i%>?i!kO`Da9Ae@M&3>|}!7`X!A z=}K*~VA~jQfegowrf%m|EueJZt@krvQ4$zo8D&bapYD*JoA6H>0|dm!rIpVq^Mdof zUuFayNi^6LJ)As$>Ga6}>i{*0esK611wQF-=Z207L!P5YS={DlMjIuAyHZwYp0>P{ zm%mM$EcQk%xLcLpyi&ZC_Qs`o1vc?XPLTOtbn&sp!MF75&8c_$7e;>E3hZh=qiHpC ze20DbZSrD%DhbpVYrGlJ4?*alP|a>Bqj{K@aV+Z7cYYAy6#>>4WVvb{oFN4Qq$s^{ znBaXk2Q?)Pw{7{??d^$z;!5CXjb|$exS-zQ&BnIt;qDFMqA!@9zBdrIzVoNIlWLSN zpI~*;jIyfy>-5^#{>t>VmnDn%5^lmJ`y*c0jlSdR{zyL$D^xvMW

      Kp3 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 literal 0 HcmV?d00001 diff --git a/docs/images/hCas9-AAVS1-a_accumulative.png b/docs/images/hCas9-AAVS1-a_accumulative.png new file mode 100644 index 0000000000000000000000000000000000000000..a064d72e52fc34c556d9d014698fd9b747940189 GIT binary patch literal 139340 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

      o3CJ4GKy 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%0DApa-I4er%zC{M$K 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 I?)5nLZz^RoyZ`_I literal 0 HcmV?d00001 diff --git a/docs/images/hCas9-AAVS1-a_subs-perc_plot.png b/docs/images/hCas9-AAVS1-a_subs-perc_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..0cd88e1b01e271e380b25a40297058d6c8acfc8c GIT binary patch literal 174001 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

      V@C>J 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

      4rgUsSI}S+a&?AL#rc` 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 literal 0 HcmV?d00001 diff --git a/docs/images/hCas9-AAVS1-a_subs-perc_plot_LOGO.png b/docs/images/hCas9-AAVS1-a_subs-perc_plot_LOGO.png new file mode 100644 index 0000000000000000000000000000000000000000..05dad7495e8e51225abd25327e2c90f07cbb5520 GIT binary patch literal 155293 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

      l`bSb=9 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 literal 0 HcmV?d00001 diff --git a/docs/images/hCas9-AAVS1-a_top-alleles_LOGO.png b/docs/images/hCas9-AAVS1-a_top-alleles_LOGO.png new file mode 100644 index 0000000000000000000000000000000000000000..c15dfd01082dbf26531d8973b4e342666b8acc26 GIT binary patch literal 475593 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 z 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

      Wbtz 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�++Se47Qne;Uis$ePXQa&{w-O=iZD%1}2<@ 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

      *ZbRzzc0R8lfSv6APAv( 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 Y)^#th>L%H6Z(sldPgg&ebxsLQ00n?7ga7~l literal 0 HcmV?d00001 diff --git a/docs/images/hCas9-AAVS1-a_top.png b/docs/images/hCas9-AAVS1-a_top.png new file mode 100644 index 0000000000000000000000000000000000000000..3adfe3cfc83d94ec969e957332ecbdad635aff18 GIT binary patch literal 130763 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 literal 0 HcmV?d00001 diff --git a/docs/output/targeted.md b/docs/output/targeted.md index f44ffd0b..95c53b12 100644 --- a/docs/output/targeted.md +++ b/docs/output/targeted.md @@ -270,13 +270,13 @@ This section contains the final output of the pipeline. It contains information - `plots/` - `*_accumulative.html`: Interactive barplot showing the accumulative deletions and insertions. x-axis represents the reference position. y-axis represents the percentage of reads containing a deletion or insertion in that position. - ![Test sample hCas9-AAVS1-a accumulative edition plot](../images/hCas9-AAVS1-a_accumulative.html) + ![Test sample hCas9-AAVS1-a accumulative edition plot](../images/hCas9-AAVS1-a_accumulative.png) - `*_delAlleles_plot.png`: Image showing the most common deletions found. x-axis represents the position. y-axis indicates the percentage in which the plotted deletion is observed (in respect of all deletions), followed by the length of the deletion. Dashes `-` indicate a deleted base. ![Test sample hCas9-AAVS1-a deletion alleles plot](../images/hCas9-AAVS1-a_delAlleles_plot.png) - `*_Deletions.html`: Interactive barplot showing the percentage of reads showing a deltion for each position and the deletion sizes. The left panel represents the percentage of reads having a deletion for each position (similar to `*_accumulative.html`). The right panel shows the number of deletions found relative to their size. The deleted sequences found are shown coloured in the stacked barplot. - ![Test sample hCas9-AAVS1-a deletions plot](../images/hCas9-AAVS1-a_Deletions.html) + ![Test sample hCas9-AAVS1-a deletions plot](../images/hCas9-AAVS1-a_Deletions.png) - `*_Insertions.html`: Interactive barplot showing the percentage of reads showing an insertion for each position and the intertion sizes. The left panel represents the percentage of reads having an insertion for each position (similar to `*_accumulative.html`). The right panel shows the number of insertions found relative to their size. The inserted sequences found are shown coloured in the stacked barplot. - ![Test sample hCas9-AAVS1-a insertions plot](../images/hCas9-AAVS1-a_Insertions.html) + ![Test sample hCas9-AAVS1-a insertions plot](../images/hCas9-AAVS1-a_Insertions.png) - `*_subs-perc_plot_LOGO.png`: LOGO showing the most represented nucleotide and its percentage (y-axis) for protospacer positions. PAM sequence is highlighted in yellow. ![Test sample hCas9-AAVS1-a substitutions LOGO](../images/hCas9-AAVS1-a_subs-perc_plot_LOGO.png) - `*_subs-perc_plot.png`: Barplot showing the most represented nucleotide and it's percentage (y-axis and bar tags) for +/-25 positions surrounding the cut site. The protospacer sequence is highlighted by writing the sequence base in the y axis. Bases whose percentage is higher than 90% are not colored. @@ -284,7 +284,7 @@ This section contains the final output of the pipeline. It contains information - `*_top-alleles_LOGO.png`: LOGO showing the 4 most represented editions. Cut site is highlighted with a vertical red line. The type of edition and start position are shown as a title to each LOGO. Deleted bases are not drawn. Inserted bases are highlighted in yellow. ![Test sample hCas9-AAVS1-a top alleles LOGO](../images/hCas9-AAVS1-a_top-alleles_LOGO.png) - `*_top.html`: Interactive pie chart showing the percentage of the top 4 editions found. The percentage of WT is also shown. Editions are named after the position, the type of edition and length and the sequence. - ![Test sample hCas9-AAVS1-a top alleles plot](../images/hCas9-AAVS1-a_top.html) + ![Test sample hCas9-AAVS1-a top alleles plot](../images/hCas9-AAVS1-a_top.png)

      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 literal 0 HcmV?d00001 diff --git a/docs/images/hCas9-AAVS1-a_delAlleles_plot.png b/docs/images/hCas9-AAVS1-a_delAlleles_plot.png new file mode 100644 index 0000000000000000000000000000000000000000..87e1ac12fc9b2276e9546030f7dc7f312d400c2e GIT binary patch literal 372550 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�o|O5VNxl6lQ><>%1T^-m zuQ`~r-bF5C(n$zG>%^GPvNtS?7GLlg%DFulM2|FOG&u_)?yXWX7~Asw%VT7ob}L*N zb3v2nmFfh5$Fj4>Mu`919m`djr&O-!{uS@<5oIvQk(|zhEK3g?<|!u-!HnMVwRP+; zL{ss3oSK!>?>l>Lqzp68eW{81BicGW(iGTd$k+vzbCCW_@*wlCcmVTYk7XnS^$ie! z=0w@d`l*l^J?8@brEJ$3QL7rEs!23BkS>5BPZ(E&=R{=&x z-`qkY`EwXkNgP|}`v9bN*Y2B)aSmjRC0ez8lriX#5sr+(6j=m{keGwr>HECpYint8Zj-WWDCZSbo^mAn zB_r!ClVFBO=|n|fUM12~^1Gc2pwE#Y#kb2m^oXwLgqY$|fnUsk%L652IBDC_T1Ek| z&cJvQ51j|WQa^*fxgFmT=a%acwILL#F(3h==ozz|&DqmO_s)Z9Nx^gWzC!@`1Efqk z4?0{c-I1|v4__ZES`k4o%0hPa>u)fY=8Qewc)IB}0S!50>6@$R=!}J08>?knRqh`$ zZoVT~jJm$#FTdX>yGqlVvDyLIuCLmKs4y+EZl^ljc%)5G)^u3x=+^?%g4eOZFRo1rEH zED1p_#L{X69f{+Qz?e>L-n9TW?Bg}#;xukJ>yBf3v1fpH4OG zgK7ure7~!!>;FFa4@<@fyC2v8HkLm|y%G3bf#>-R?%w$z@0-sq?dSqWe=8L5Fn21EL8fRHiMmxf|6pIZyi z(hM6=Gy7`eJRIu3yQ*du6BrZdR8kGayWI8 zS+!zV*~TVcTRk2qFmpz$X4@`lXfex=rcPq24MuMuIaM;S?2+hKP1SpOX-VNc*HFx= zdalViV;q4b*Z_hfV&bi)ajlK||1bFRx@H4$t`wk4A-w(s!Yjd26kbCC8W;(psisU; z8_v6mj6%P{&x(4#0S~-P@~w&m?8jVU->(n?PXUFTM0`+{YoHr*B@@f2J`j_T<_|@v z&b3++7-07e7|&xU;Z7>%aNz9p40(7u6qYK->AO(2HY0x^0dIEHcu4E7$=RbqdZw#- z!tGbj`|@wnBke?Zq>-p>O{&-@nxHUdzxpbGGJIcFR8i9lKnrKQrl)NvZ(FNt_I3aE zvK|>pg6D_R)|3SFZTzfgvv1C#qQ}ZGXFQi6yy3p^y~bnQ*3W~p!iyM z&pJ{#_fO!5U0YROWxXj5BDAm^DLT#s9ibhP|C@Z@00B@=i3)KmrMOug$}^kcrRnWR z(i<}P4TJ(T(DSFQ@sK<>tg#h}F)GK7B)y6J=$u1HG!Bspkbil4e4^NlC@miW@KFoU zMTQ~&vn;6lM~_X?EC6+!5ERl#HQw$Z#TK>^tQ3d;EvfufpX8pR28wuZ2-BM){&C5rjuT1Bq=77to*w zHY#v$c67Ali$A~|$hnXa%SQXICokmSp8`oRvYz7k2}UQNfyB0k3uv&CF&J5jz;`Dy z20=}Q;D<@G9Rd(pmQfn)zJW%aoSiy!98YmXp`0Nat4n1)Vewa?WLI5V!_f)Y$%72* z&a{W5lrZi;l=dEcro&5ofluHn3^Q2J)o2jbI)gp4Mm+7bbWIJ@Vn${kzw{RtccH1z%1 zS)K{wZHi9dsfBU(ci6s8oq*%C=p4i^5Bue4j70{1|3=w+VT}KgD%*#p-sLmSS3SVQ z-VOMD!1}O{5hMsNRWRShIQA~Q`=_s4w@!m|_2I%t@RXmZYvVpv;`x15ZR?i+i~JFw zh8*1ckM;Y_){~Qy??Jf{zGGFLot+nd`st@NCS|?2-p>GHpr-XZJdQT}28%iPY1}_| zhNl0T_lDFalW@CFt6RqNs00|~7i#<1QhNf*=$M5(%nOrK{Evm6K7Jts!t0R$G_*Hs z!ZRBcpPcP)+tIjEUZWvU~%4K37$*o9{~h96MladJPJ7(z!5@17#=I36>% z!?_i8v^Dr6DY*Hr)crG8W;ljKt9EjKdz1RE(61bNJKNQ#j;Yij@dMab)mXm}0D(-M z5s*sE2dm0O8$8k(7FUI{Rc$ja)tK$({p+vMiFUjKuQL+E)zTx41ca;f$bJ^yUi9=? zhkivRycIF5x1y0*S{-WpXj=|cTPu8X)<}4#yG5$4k+2O8O?RhWrUYPUZ_>zY=SD~E z4D0`@ud;+&-xd`u${WS4I*oTgPsjIsDHW7bkY)6Sj1B1jW$o=^WUMu)OMm}yM>&6G zdHYj9S(;^%_Xs7y}SBPb^xrNLAnOiN9vSMwFyJ2K0?d7!*nQ<1n?=RiDDM)G5>Zqh*ZD`j*% z1-xJ?^a6@#eE)w3Dt*xe>HvJTmmL+4Js2{^Ip78LGKO-9J3zeP0q~?B z`yzAyy(KaX|#R>olzYVZdG@J*VlA5!PG6r=`O2!~qhI6MOd#F5;5S4zfW zy>7`aoo&s2hn%>S99HcLDZVW#Hpw+73sol@=rmGSxHq!}hU#KN#75Sk2TQ$ye)Zkq zc~YJWxBmW?SI@w$_s{mII=TLNDU@3rFLID~SFW{!^sv--r zP412@nqFui^jB=_K*^b`+YM5D03)9`jrsonW}2Qb$+VW z&6Y@&@d)non>ePq7n&3Ts3aL}|GGMaI`6gsGpHg0fQS2$c7xiQM4UTw!GZ;6;5{=k zgj4GGd*g*H-ksAnn3fCY-J$R1BF)Jgs3?P#p&xXjO_!oSH<(ubKe|(IbUX`T3L|~S zAwCWY*~%k>o<4UU0Z$)>hEf!H1fnjeYdcvsA}lz`Dhw(;3(os-n{8DueivSk?%05A zucM+~(96N8oos6;6fDaeN$TnHxul^Hu0B`fwIjJ% zr>xNT?`;^|s8A=V$S=M_GH0Sv#4#+g9iU;L-j%A?&G)bBafg<$@A_!KgMyY2A1zDIce){kF^V?d$6MWzZ5Iz&7z3u z9lEs7(-MI94nlGN>V@7pSe>huCr*wOcVD9AfL8mM9)rZNzEp6?-b0hZbg?Yj1pg55@;w;eU<09^=%CX&+@7-nhIG36`erc zH;nAci+j^wf&#+J1(x{%KErN>e2Im;Kmw!;^`)(+61|E{b+ zsLy`bC7yg&n=92d^h>5y`N~qQUqQ|gm6etH!~I(CKuQ5peSN)a^;TC`%Q^w>cCAiU z2>D9Zi`0Ow)qD7`rY=C*NZ0CQBl(^bpRM`;0a)>|=FImOf88by)mx8Of4C(U3h>^s zwV|cAY!V{+n9*~qyTqU0vhG(*EyR%aR` zx5Bz#Fk#)bi>!KKOGE$dW5y3}%Zu+Pfsw~?|Km)lqg7B`+9-!{EU`Y-kXtA%cSw(#sge zex;W&$g|i18q~MSYg+N`e|e`<{A-mpFL?RMQR1pafn%$l7j#P|RB0jDR=4V8U5alT zh&oySKz*-fk@a{zk^)OH!XCl8%K%UsY*Kx|&F8A>%VJLc>O90N2sdrsk&(y0W6azp(cJo#@$MSjhv&&c~X809~J zpuZM|a6(C=U>JW4%M!5u-T@?GLNt;e}1@gSbb zBrL)KG`RBKaQ}R7{&&Z=3>NvoCA{a6ye9et>H0Nm)_gQrZTP%g$4()DKI9iNC={;* z+Mi*;29p>bsh6yo$lfwXZp{~*K=`5{n>M6Y)4`h_8_b=(dFuVsK))~V2@#6EuNUyw zs~&J)E7G0Ud;dP=w(i)`wn|iUFS+*(FolQLiz(T~=i1v&AQ*k2B_|>b_;_DPbak9y zsoa)d##%&DihiWCi}d$}Jb$>K_MPtW$r- zDmQWxqGz0jP@sBJUf&%5KWSq$zcmP&K`n6vHVVDX-?~%qz83I?O z$WWd>PQq03mHQ>WNqX6rnn^=0+z0Y*n%WIa_T04#;JIt4W7WsJokWQ;1vg+n19h9agSGou#pmUiC& zzY!yOeCZFkpWhbsU;U*({?fdyeYr+2-{xYSy8G`-n?jubwB36aY9! z0??qnFB3sQHL?%Of$9T&Xvz^k$Y7XG_YZ2A04*Z}MK~)|^ewom&;-ItacSJx}qsWREP{)t-QjM)H-aZ`hdhg#& zUE4rBE4>cWO}&`E54ibY2jT(zkJYKy*#D2+`oP^T7&0T`>LVceM)-Xb@_qkbdW3;;8Rs>sNtIG=z9Nifpifc<_j z0|xM4A2@K}+r`DjdhTN-3O|Z_xSmV=*sm@|Bm}zb-HhLW5!y2W?NjydQ!92$fH8^z zIIt{&CTP<*-TsiPZojvX7j(G*`s+MY`3ip7tQzmdi)U~h z?&~kyK1P90Kq-cqgLMUj4gU0W5TOMX(c^Wn0S(c*+;l28y=u?Vwp6*wt$0s3YX1(YffcvM>o8ePQ3`zQ{{pCS-m+TWr=;^~eu%}uG zuh9srsi?Eny?3RaYiFyCbgC}wa2fCoxcFREy#w*Cx*!a_g0Y>H4x`7T@W3+?(>#!< zKBKqSbveW2w%Na!xFpfm)Q&O0y?3RqLk0RuL}(x}f3sP?iudtUjQ~}=kAB7UCT66M zq{GnjW^~8-(c*?PgT<4pf7LG92XV+Ywly`u&ujXd{j+OgM5jTSLXgAtj~K-O?Uc9} z54=!>jM89r|EIv?aOz#bJnF+Qb&A!6recIYLQyl6%2Xhu$H?XU% zRc!Y~Q^Dgk{Ra3Q6NJjJ(VJk@JPyW9GYY(a_r^i9Yq_-#EWJ!u#QJ!je>_+fRCSY1 zt4L4c+lGz^D#IOm?=Gu;b-{utaoY6Ye)avocZj0$zlMR|F-OgrIbTM^07 z-#j(8QYXmqGBq)HY<={m7=M^^bz<2eulUB}=3}d>lVz>?)j9K`#EDaa`_+9Mm&TWQ4shWV#pf+<%clUP;zPyWn#jWpYdRToxmY zKtmcmF2CQe771!~GJ;99gI%?HS2OY>Ol7yn-|7-?tT#-$LAATLBPn1WG_QBr>_~C^ zgy1>*=l|*y8+P0GD;gbN_4TVX^eaYVFp>f)@~-JgYiE4t{K8a(1Hrc*)X5kz7BWVX zj~CQrj0UmDLdMX0`qN-#M&CjNhOeF*eC&!}wg-(3#`8B|4pu1~TJem{_|^=Jp9CH- zQd%+Q_^|+Kgd#oo9>rf`$1-+Ddr%sj}ue#cs2jpGx`s`P3 z$QVxUr&r}$v2 z`8=rjwhjOonKsNU3esb@#s-1v_Z;wwZ~vvY?dl%XlKLA>*XEv#rF25P2FHP;IZA`l zw{~?jOJ|n=FoJqWVJ?mLALi+UT0CHE#TeigalC44s*&T0TXi0*r~gmDo*U|a{r{^q z1Zb3@2zm(M1YOX&;Ku?`!xJ!?{~Sl8K^Vs1DOe91&=6d+{T@UX*bdObMwFV%l4$ER zb;gt_Q{af>`HtGg@*SVy-IO!MJv?^82`7w%a_PG~2X$SCyrK8QL%)>U14Mq&8rLg# zat+**Z8;p*gAvGWKkKAkLm7P?hC}_|w0m#;uRXjP(0`WWjDO+>^@M!y(B*iqMPGS} z+s7#I3Fs99?GU*BbSPLctUrTcjO*d)qtB_SKRyua@hQEb7n^I#MP}Y~N0-^V{$+7! z_h%wDDN{^a_BBW6^tX`8ze__-Rb3DAhX*s$c_#V4H-=C$^|xJS=O?5M_3v)3D;LSx zWBl88D_d6l8aV;$M0UYEF>2=70Y%ABlfj}PlkdtY9oY4;DBJY96#Qph@Lfcei3&J1 zK2_@jnqsU;=$XTSg1U_!7?U=<@Keb==T2WLhK@f$cNC$8Q~kp=+FBv9$IK2mZnd#* z<7?tz@h2iCAyrI2>rSg;uI^9p-9IaBswopmnIj$5zw4vFi~9XL@oq+=Ce(cx*9eSEAP*Y;d7+Hl@X}8u2x!FA#bVgR zlLJb~Tz1SU3jhG0YmPWR;JDRB+2%LIft{-nk}^@uIQLsY#rT{LR~Cxqy8Vs?LJH8E zU;CA;EC2Y5MaD=!OBGN*0Rr@hAeF%Y8fqTkyRuR?vW|F+EfliCc~^~xN=4BJPw;dx z>9p%bVurZ^lE8~DU*rcGb(LXPo@nxqZM6b4=yPP2RP~63NS|P&tQ4As`0FJaO9m6n zz$*u|b-!1P?j64T4I7pbJl~XbsjtvqEMR3srbp~O=oKZX(~PLlF;nW;-9PJ8v>QNz ziMhSoYQI^oa<;>Yvhf~bF)h%$)~c;EM4A~R%_1|X>!`Vf+s!rQj+Kpt?>;8yjr80p zqG0}|syev@-!A8umb%KYzJZ#3o5h|_|0C;|e)cyk73$CVJUv;EX%|%L1$m;$KYDyx z0UBZw(g0?Jf(~ho!ueh+3qKH*+ujxQJmH)@n8f?7^eH|Mz%U(ZydnVWYe>7n_hO`s zWRFO|w7}>d#TMTH!9!*MB6@)uiPt#mth0=}`@CIPSSYHhs>I~UljX0^6&X%^^UXI! zLPCP8ZC$x?rM!w;zzfx60vfWivRrNJi!Z*Ysu%k4iYa?$j}4v&Mq~z$t=09`hHM&0 zQz3=cw{W~NAA<>iRv>79W3bZNZaogFa&PH89d{!q`R)+18|T6Q20(*x9-NV{o=ER9 zCzaoM;J40*Kz77*A=M2%mU9bJk>q6u*2(%*$|k$I-8>c>?Gf22LL374q8L1j8PO=C z3^V%Utq!6|F@1qb6GsDlsIiq`F*`s5=U2*Y10iEDg@bwmPGt-$K*Pwa-gis>V%~WD zlhf9-P5KqReC?vMs9F^8fZHDd=*^!U@q4{RSyWfbQ*X;{)}Xo=8W>N zBJx5pBN*H^G;MqPccS%hmB@f@Du3QZ0Vgn>CuPFchJ#`8SJkB(MCoTQ$hu}Mzbhzx zq2gQVkkZ;%jca5DT-R&^x=^w4rJsxL&NeY@(kWuZl+yx=#X(o5fVkm&uN7P05&L(n z6ii<_^SrwQ>eO$%P*?5Wd^1G9qKvl!{pyM=6G6vci~B1H&^Pj3QWkJZO(?tLy+6w0 z6HdKWBxj8ZI90DB2~WoOqwF(gGDg4!J|`O$m`^_OrHNydhEU@b=b~neYl#*S@5l@6 zs-)~{J_cCIu9~XD^r;2R1DIc@j}GPq^{K^FC6%?-ydcZ)d*zry{hd>4fv#u!JHMC3 z$De$SNXZFgcH-0Yy73ATpW^IW+4274qN#eXNE}rNw>{N%j z>D33NbKH<|3&hCdmIbtdfHS6b?doU&e-RAm4JfSJs47||%D22FBRo)ch5xkf=)kP{ z?;q7SqYt=c$Kaer-B~!YJLjTpZ$2t-bnL<_(GN_Roq>4_|1-4)S}^`+ZhK&F6dwMK zIuCz@Lhsq);ELdTygQ(nksK-5q<+jdN;sesI00YQe*6iIV zM$cYuTc0|3VAmSaT3;pNQtTBts=OP^g!JKl#=T}A?%x2;FuMk$ZV-4u)a z=vV+A@SN}r+L~%bTvCQvRRQ~IN;k@P#Sn6K<&^?&6hhR_Lx@@{Vn}2vYU^>Bv-TeB7Tfmqh{NzsHd6xY>*G4}mol1y6-^)0JMXcr6LWjFt-Z-AaBR`aX$bc7L!G!7n|GZNqdXh94KPLEGU z-MV}DNYilJlrK`j3vgbq1)#!v!sU(>JZijh!Z%nnug|-mtJUtG>2c09q?^!JTH4+& z!5#!ZFhBWRi+N}|zJWDGJ!0+7ZqbR57tv9nWiEyvFR!ugSNe7wTR*y=0N=kN^6h4T z26bG&+-5Ugu^h+254ZJ*&x(6Q8^Y1Y!5AHiS^#D!wE=di^HunI=D0sKB~|SXT5_Id z+7-^*`!F9e6~*V7@`v^UkUqlPa?wI(szbZEh0kLe<`x3W%c{Nj^$0V-o!N5>HNTpj z)8Bp5$3%*EHg$^)m`vIeGtWFy5)i zmy^LWPqE;e`7oFsh9EsgD7XVrh3xcyY79U~TbUZv^kHHrqb#fffPz33I;EU$5wVQt z>y3`{ke*^xY#<0+e+{O)XvVz})DjBNp!$^?G6wlR^21vY#pdIpZs@hW&>MvQ1`Zzf ziW>0xRwNCER38G2PF^tG0ic1ParRfLqlZ|?K;N7opC4+QFmd+ zJ5tZ0s1~x*h^b4|rsa|{DSsq0oe240K7)GjtdbW5P}i>isS6z}(PY=uq1J{mI!}EB zew4&?lVfb=q1ORqVDt}ydIlTN!10RjzOC_)G`uE4_Y#VzKjOQ>!-A|EEN9c9q;E3D zI$IedRJ)G08vBhnY2cX2?2e{O8!h=z&>dW`!*8RsoKIim1bN0%#!cfxH7LI^JB@L%kTs zD(bo@!#j!mKu0G&SL%NU1I!@X4@V`x9Ru$*&)^IwZ_?ynC_9GKix#hu5jq+U?hXRI zm{cjBm+DtebaQ5P9NTCA1e|e?_H`UPYIp(wGicn4Z$FIZWriYFo4aw~B;Ua?R)q#& zKez&oF!A^`byzRZF;>kmQg2h`td{H6t?Pu58ytZ+$5+Oh+p?-8jQwa|ttyW7Ug(_K zX}(N0->vP%`_ls>2u8WruDsbXJi8{d{Vwk_eQz#b!>T$DqH+8Z2fwcR2=2K8DNN2n z^oY$?Cmq|59QQs3let#!%N=d`NZKK^F5C{Lox&^58B9O}8JsP8kAxA*ifxz8lVQ!?g>q`Ji2^MRx()ESuPj_C za;KdE?{IsgOU3qgwPr%-&&)f{w8_~8b0wgGVf(6zJ`}?zFETBscDB?Xkj77LTfHlS zFW6p2hA7|irWi7Aen`fZ-lL=_q$@}r*2_%GoxXoL=vRAS%qO~)0E`TH+uBiG`F06r zV41AZgC`7->CVcZEvj~WCw*R3VB0>Ho8L9&mCL*VeDusGQR(t#Zx+1c)p^5*Yy|CxgK@7#nPGzy{mT#`eQD z7=sNq84SievIrtd2oNAZ5(+5ioOcyB&UgORQ@g#h-959?NCU0qf8 z-gD1w*=dkfrh>{(mjMxH5<(oqbZ0B2RAUuBDpq*?nuw*KV*cn2^X z5$S=kqh;ZcEr!BUK8;PjWiCox29Jp4MyB}k*Ka!!JnzxI%-I^c~RFxwA=q_ z&bo4RZg54ut&?U}nr+@=@NKRB+M^&#RNx--!*f&0%>{A}klrFna3sI>Y4m;NSpjGu zf9dPfD$Gd-rB)kXo*EI3qXuDIhPj0I6tEhGh9G0FzwNLSVDv`9<^kRT#;LeKeMGPo z4m;IfMXm1`#y2cRU7^l!!_;IsBsK|Piu^zhkFbbS_CLB|o%#Km6*l$6;9k0y4-z_&cj!O-g{cK@{S-pAx z4+8Wn01dDtJL88L`HP4@GS((=eF&QX^Ppo% zTRB5IMv92gbaf2QpRSGptJh5_bPOEgq!oJp!wL&PTA;}Pp6yfjt5oYN?ho@7j(_CG z1)W0YA@=`WDL($HzqJB2e5`2Z5h0*mfQ>IDfQ?5rZW=ic0_Z(b_8Uek*6mS%2KGC- zty34%UV!v4L1)8B30M#yM2C>F`$EUyeFf04p~#rGKd&&y4@o_?zLa7N!2SVHe9MYi zV#|BqbRK+?m>7c{Y3`n^wmOzK286BKcn7Gjvb@x+n*EM~a>lyD13y`Z!O(!T46!pb zYS~dy-|ehDg7sxVpQBTz4W%4{9vKGKKz9YufI}Y#ENzbxoM_t=A&f+=1?g9ATEo^@ z7y)RYuBXL924HHb)^J@?l%;&8q?MRD7h9Gz0o$az_7USkln^)qI|YJ0AP9V7bquk0 zY|=B$q>d5Qt^;i!_6Wz&F+#xNU#ky<$xb<@kC-h`iF7RbO&FkodGMJJymk10CYPJ< zo}79fd`}<+^v5uPLAPgnkNM$6jTe`U%1H?r1YG}03f&bwanXnWv3lcj*>C!dx;m^0 zc00jf=#L0sh#-JF!86#F2;9L*UpVYE*|VYngKK0%1k8Yh>8^HXhW~>>274Q01%WvL zuyXREfnCmq3u{cvkU#@$xBwbRalBSRj0L@qh-^6^37Afi)*)kSWCeS%v)Yfb)Pmc> z?1%0YFgB+0W3((BY8HO*qy=-VnEtBif8sUn@W4+%AFJm~wEGA~NQad+u%fRwM&5zc zE62#gzup;i2Na=R!=bB5Wk6853$tPe0YO{4?eh4y5&`_t1GKE zc-oRS=)2#`v09tl+Q=0T{M7X>^zA6{eb4w;ookJ&RNo8T_oz<+Oj4Db?>oMgQfWL_ z*FU9Oc*9pmT3<8u+|oMP-WAGLnu#X`{P>}(M)!WY`u&Kn!3^$>1b<=>SR!QsIkj2z zA}C+9d7~1!C#UV)ZdN3mmBBSZ{9kjBOVwcOwFQ_CH?p7LH+c5b63m zAZeuq7L@bIlBv&%Vr^wmF}n?AaQ>u+waAZKCuSJ<0f&Ca1l<_O(#0SBUud1|!08UC z1?e>C#6Z>u_K_|CihpFm5jowkMMt{@XZbc!=7kA}b^292ULoU6UM*@(cN_q?PJ=z;5)m|3 z;dDC#J^@r9b&cIw*QL3@^L7Pq{tX{?)-Yo=UQW&rdI#0)fv|NUUqO}XcsBwC?C57$=SiMzZodS6Dzd_Kkpq%Fs{g38B*axBnP+M5eYTfR>w#HdI17vO2>FML0_MajsfT|9UbF>M8D!b{Z{=dRqB`5rvp@%hWR@5SqvNDq76 z{>1Sg7VS!)M59(+Y&pO^fB?dTRGIV8UG)hIB6?<+IQtFh{jhn3y@MRTQH)|ZJ`wcD zFqR0Y-O)o49A&$TH`wn%{}Jsy|J_IIE+VL-m?K^A)L=1+r2;dg`wj%PX>YgT5N^|B zgso=1BA?Ouqh!%X|FKc`lrMT(J_L~bD(Ym^t4h;G015t)+`Og z6moQebqY||+Qf0m*EY0!wipz=Ir~Y05N9rp9*Y?x{`6exdC=+E03RqH^w5q*DYdv1c!d+3{lT#QViwD)elK5Hz#wv+;Is^Ns`3 zVo3<8YL7O%>i~SP;Jrt6U&Gfe1egK7K+rK^EesL@y&PNa;*XxTtSUj}*v7qKY(?-V zkalN(N=-k;BX#m)gn`8Xx)k*GbZ{6w9Jng%x|S%75w=dm**(I_e!YFq?|?Td?fLOv z9~p25ly+gB24j(^Rmovh-=e=%c|df$XBCewUt_N#=FgI&d52Oy?8wW@TP6p2x?qB; zkViSCs{jpZgBKR4v*>#dF)uW)al()va#(b6yYzjY`@SzeRex1`6X#9Yr*$obDca%( zG!%>&F`{jX@^-iGJ)?ih^C#Dp>F1VQe};c&={g_Ly*}4h@5@`aZaq>A9;M_-mQlHVPlsZXM?`YYNCc~lDYubwQm6sF1b&sb7nzWcXQ8)@T=>B(jG_3sv) z28bqcq&*E0sxw~xqjkJ!T&g-X4vdwv-ZZl&{8fW*rHyFsnv^H9s<6J0GqU$lm+Ldf z8U<#I|6d!Sit_81;&qG6^zpY#xnE>A_c;6lp^(EJG^7K-NrbGL{g#>i#@}jzC7=Rd zB1gVcvKxy&vBSV{g8&g3y^grp)=5;vwC8WLsY)soN#TTk1vp}wa!(SqpbIm-)vw4M zzCQ&gao2;+w5Qy@X}Ov9!fn<#2;$ZW#t^8$r@!>SmgXFzMXKm{BBnfLA#TV8%Kal+ z*e`%cX1{Tdt()yQ$U$2NiAS%x#qI*E&?q9M5{1Z*NQ4oB(o6JVkN|4weUx|KiFBDU z{*N{fUU^AUzmk!Oyn95MAl(l=H!|Y7oxlg=s6^I$G12yOmr}xR)PH~umVWx8b#}6? zky1)TIo`edeyK{vOzEy7^_| zGA7w$?H2Dp`Z2&8$B=;26-JXVaRyB2>-$7d;kx6;Bn+<5LVg&L2e`*!=T(88zIgi| zHtMBh$5vO3{lsxfpCft+0ku!MiXg!m2@NlDr1}d++9={(wU7V+KmbWZK~$-yap;%? z2ycd%9f;Nr5~6dzbCUNilRNp!zm}LOb3GbcfBE%Aar2iKOU=!Xm708=+8I;*W%l*= z!J?Wz>u?W!@zMNBbIspN1C2P#H&mKmK2a*Cf4Ndfh_2G}JA^jxXWz)P*F*&8wfB}7 z*oAiNuAT!paJTYrzwn`=m+veQy{D;i0EbmNW_Y$aw2!w0eNoZLKLDseSHFI!Brw-0 zpo8oGS!$kDq)n=M5X$zSoa0>##wMQCYoC=X^0a1KNeA%Q+hyk4_mrsJsoP4VLdQX) z?WI6*Iqjw2TgC#v!NrTjnruFQ`Oh+Pms!A4Dn=W|Ud959)1SY3hgmKl1ap*M7;8R% z^-dcV$o8%Wk5lAb8-J0i@BTnqCPqnHIZ$wDBG7FYhZyIX%b2s7+hA5=4TbZG zx!(!n6+o)#Fa4p4O{Uk87Y9b9xnuUlryH+urVVcp?HuC#V-kQmD2%xWL6WBw6F)sC zmm%1KORu`S#NY%iNph5KSHAQo1QNPh`-!?w)n9|o_4T#`^9~#}AiFA!4^B$PqqD=(XWUSPIkaE*1`(#EsbX|-$eB*-b3dc z8mj)^DS{H7JDsIY?cRaqT3f-M^;MUy?Xt{eV$ncg)woLc?UMyWYSx?w0KEP0Go|J? zPn9XkQYpqfY*Xmv-#9MUG*Zx@aOUR52TP^D32d&p#4pS>%sH3cvD>DnhX7aUkWQ`Rj=rbRRB?UP}YiHT3!iw7MM5Fgk+ys$KLwR@ z+uXXHw4tvSRguZM-S)FCPDc(ntZ`%0G@;)`0VW-wBV8TC*_zNXriADiq*?j#+1^@^ zG!j?dwcETQfC)@reks!X`|w+3S}T{BQmM*qn?>J$D7-uLA7!h6wF+IDU=IIU5c>e@ zqnWS%*{;?SNjF0;GDPatBRs8=zB~kV{8>zYi)y^zFf7imqBT7UG{ zvA5s%#*Yz{irKZN%fV+>f$0{!_qgnTPgF5GxH1G)&71U)fr%FZw3UiE)*buxXWj3B zH+$9nxUY|hxC5kJkkj{h6}cc$?3jq+cGqEt9o9o%y1Q~(OuXT~r~9d6K2+4aRUfs0 zj|td7803Rd#|xw|T*vkIE%>Ln^4d1t_dTX^N9y;BZd=GFmfwTiJ^>`Ax$pbpv#hM_ zg`Aw6zpJgxgw1u|&lfwwzaq|+qq32!;2k@5%xln~L0skRDqM^XT4|d9ji{4dT=!=> zf1wUrsqg;~tHbZvkxDZC+)|xyZ}zLd{94Cf=;~10AJzT-rhaQ_^R-0X0Sp4n87z8pAmHYq9q3R(V8q%nXJ)x1i1S}`yoP~HCNihOhKA9maPo!-{{ z_kYhLF0@KHj&NwCX9#4Fom<~VY~n1(iSL}|L?8?p^L>+>U^NJ9Ws^2tP5%?VD<%3L z_L&g%36dRp|7_76;@E^0!it8r?o!-|42Tkj)qbjTjvSyE7yw}K$08Af0uHBL01gsH zO%%uhCte%M&fv}k@)gGuPGFqREc)h)t%0@z$^aZgnghf-endg&fEBKe{q@;VY!l^j zG7;s0Bb!BkR(76e^w53WUA)mo`O+SkC!ik-OEuuy488iGldiXpe3W+58SqEMF7$~w z;CSDhw3p%@rC_`zBi!}`$RbtbkgF48+nWhz6VW_Zw=HnHYJ8G+u)m(^oVV_^$_t3> z#UKBlltlF_r757D)egg$6v%NYBZ!$=q5s1;u|;u~@vkXiO^s6jI-t4AdC0I6y!~x6z-D#9yY~uZ!J>hPFd6rus0APT; z`c18amHHg2pL&`Lu+-<+D?+OzzxKRD3Wrn?d9ISNauD9PevSP}1lhQ@31CHE_UCEZ4x?M_qcbD|>4ibOY$q}{L7RyWVl*6)d;KS;=zyiLx^ zhZN0E)a?!TmzsuhY;O`Tb>iX41?GOLrMm-@e@TgVS@(E;;Ej zw2&s_s=G@~Q?0Z+sI572bYQUI4{0TQ*d5=>x6zr~kyt0&6L@BdR~I;*W1xp6=( z-w?O7?L_h7s4f#w6k28_P0%IF!^ zR#LqT7;~MOBk&#leW{`&mVWYr9j`I|mMT((XcZ@&hn^CdN{2{T$EK3*J3tiWr*dNA z$e17}&^e;04-(RN^*in=3);d6zEJZaYb~fkVWMGfaNx06EZg+Zx*?2WIjH_jY+Ej) zIM;%}&OjeaB^XBkympl>hSO!Veg_FmCAXfRYksG`1XuJ9Y{`1=)3Y@DAt z(zIaM`da=w?!eE_%eAaGMDsIdeKfzsrjRQTdk4UPHCrkzn2W20dEw5h^32Z#aGSd_ ze7qux@K+b+sXvw4_5E$?U$@h*5@Rd#4r426Cg{$L?~LcadNR0Q;dES)aLAt8Jh(3> zKMfquk8fIUH!}|oNf9NUeEfm<`-&5CEa(nr!h+Rt^S%2@P2>7{E}92(rGt@E+ogkO zqV2a|k!P6~qS%$%x6HEh<&PgOv2)AcUnw{DiHW0=#(<^`w7wQ#V43C?QavDm3rTx) zg#ZKlTLyN?Hov_j&-_||c|b6K5L?8bHODbtkuC-B)zU=2qHWiloMQlQ(qDt5u1-hl z7^Au6L8Uc9=vRk?q(|5@9m4}}+sc#vdvgzT4CVo+V~mf`F)k5P3-=Si(xSC-^L;tV z0J+cy=vSMx7F?BB3$mSc(*)`Fr0oh4STEe@kcv^r9Zy^5Y0e@|#oN-0PD+}yU|5)> z^)Ny(N?wAA%pD)}d3@7m=2xraq}DosXBCvL%>fTA>qP>r5>%Jl2B7kIo&Oo72O#~& zOaX@nDgxgx=ooYBsAB-Yx;LR?U~4)eM8`N) z^$vhXVJ*nIu}Bz#yIu+&TV1=m$)U|!kZ4yNU^w2~S`c6ZdbXo&N1tJhmnt;{Ky=oO zbKd-$T}Q!QN$>!S0Nz@#$m)r%4PAzxZaSn$*GbvF$6aZ`3ec{jzw(EE#XINet{ZJ2 z3S|K^(AFr>Jmqkp_BrNCtFvOKL2q3sCmC(EYr*YW3nl_oY~YaWC+NFj^898Gh@K;W zKS116lC6mlr}w`%Z7{0@mikP9h~WY`>@NX)HSnYx%&gb$vi7f43h3dFdx~8E(61lh zfb9wZe<}g2oM{~+)j1D@{iKipoP~_ib0vr+l@R0t!=g)bOzP4g0o?e%8Vhjb)P^46=01#kH zU>vpfW--FRtcs9QXQ1p|ISF>=uyX=J>o@A#<_iHquz@X--nwYYQ$F1ldvgLjra6mu zb$>JLy0-5NKL+>5v$fr20cHed@mJNaG*)BBc0#I=UPoT)et!MA5AML%fQEf=Q>jvp z{72;ozku%=h!2&c`xkQj{*OM}YhO+=bwL`7*(ok6M&+RezjGZd(=K_>D2dWAAIn^v#yjJ^2^oU z<=WplvF+z#E10OX0>z}X$j!|ir0durP{BfN!+I50`J43Fk@Bh!P{0R#-&dmZuG2Xu zs{Z3Rht7A4KK`x0Kut$w8Bx0F&x*>|)C9D3+O%mK#G3Gs_I;B=y2e{{y-!Y^I(3CT zDBwTUdzs1uN+l1@t*Pa*zP?|?cDJF_z znG9+eKnAA~A(zS9LX>_JMcv~V*t~Lc+HH;S3R zUz2B}PN70uqdcpAM-xpUs^jdDIp*Tya;($rsQ%e9pau>V`?TdCKl>bWg-t!MeEQ3F zL5u@`=N8Wiz{yeKNY4O8RTv6Cxsk9x3_t5u>%iHtG+`5ZdB4^X)6`$LMwLkJ5 z2Tsc_L#!jeftV7$OzATGG#d%9OpF1r5I|uFgMt&lJS>_ERW3h49qIOkePZYsKJHdU za*Ve~Zk|62V3~ER4uLYWaM&r4h6@TmtMLKxDA8+7FLry-f5(Vku%4z6awfw55(a4C zSaN?Jbk;8|1HlI64Mb71%o)Cl$xX-gheiAQirTOAX^c&zM_BRsYcg1EunJI>5~NZn z2T*mwA^;#E9l_860D|!f_81hl zEA5S1cD4})shp$F$!LlIsyimcz-bHk{=+EJQ1cdsVfs}Vpn*fK8k1`o1@50vZgVIT zQR_LXyyXK1QK+83D>jFYisU2m|J~UYroIfP`%?hS{o=elBu0xy|LU>1a>&KZ$bQ)}&R1H4d{|pY^v*W_`cXYmSeKazp9#pO>sxG%Gu6wd z-W_A+s?oUyPyx}Ofb?+mgb9w|J7nkqd_g)33`?*(Y%Hz@SKt&lqKD-yNt_==?an- z$c^i6ThQn8iFbgsFX^tmPLu)hx2u=iMKBKiFhB$61Kc-Ua{=rw8<&3OjaLbJO4}ak z4J|}f3ZRY1p#3c_f|&EBqOEmpBd_h}=)yZ*CCx3fvjsXAx z8&K<}Wu{3$zjAXn%z8MK(-D{)+N#g5D=V|n*+1>D|KHto+F6$}tZTl1TAmr%x5B1f zn7+8uI-an0=&HmW}CT+Ay^XdZk>bL;r26#`9o=>uJz z90&OBo0_kP{uUg%kN+^=-2ZyHc}uJ!%!8gog?r!$*K@U42M+3)Eua?t zN^7WqIomlMG5npJCQxR8oYx)m@+_4&sepdbq0pVS)@Rx}hFHj277ng;ynlmV#~7I+ z?UFmruVXL|M(G&WC>Q(TVwd8+ezvI6Y*!!f_bb+d#|+G_0*T-xpE9q)I?>(v+^0(q z(^u=}9%-;%a2yW(I~@p5`cyKYfrw>*2}ruY#wOBPNIOBw3CCFGr~YRh&oe||Hfx-w zjsw6MKm!6$A{o%&#w*^AROxYSCHgN}$JmhoGQ0i$&(pPbWbFLMgfcT(pjp61^OM$s z2lv!kP|vha$1EFZ%{$Og<9L{`7VLS%MW#ikfmSEpF6M+aOUQI7S`#lrjL` zp*ts)Sy-Ax%J~I{A8S0TyDAkWPDV#nZp-N&wbcD#E$CPS{l~lS{@^K6q%{vo)9A{( zPk^`p8W8%`{sc5|PV79x$NfUO>#G8`OtSYA5Q87cVA(E|4uEtc=?HVyzR)q!Iro=Y z1|T)S1SH+S3CFNVK*B=V8s-QX<uJ0$v%zBk{+HNvVAb7&W0 zs?o0$U;(pis^Gyd^WOZooI5=W@qf$J?#JtplX`-j+^=fTgCzm^mB0o+(`P+_7wiT; z#iCHIa(E;B9-Cj;0!jbLp?!lK$5kP<0vw!^RD_>@(BC6`(Ybp!Zru0*ff}yxgBsM1 zZgNb2to=3MmjYPasKcsfBYwo=-%_~=iTVx}h+&c1tH6m^l~%89Ms+SxnfFxwT*@LU zbBEeE+xxZe{#Uzyq*S<3T5m5Ys`t(5Cu7j|Ql z8L3FOayfm{kt+&1nqhK2B6*_xr7k3{$0f~Y&KJx43n?Bz>!ftEWp;=mO z@Uo0PCPgpl$_OGJ<-~msIFK5$$)C&~*K!x~GlW zG_7iDlkTlkmZyHs7<6CTbsui{+okA(9Rf3;5aS$Y0p3VX4pK>YQv1G!)!DFd3)BDD z%T2`*7uaV7GXv;cQcE<}vtr>IRwvuFPOsfoZS2%vi(UQg*s{hh+A%h;U~eEqFFDOM zHiXt2*48F1JD9g@O~uIb<#=3XjSQ||F$UzN>{s!CekJr{-y`hb&aG>0--7Wa%l50b z2IqWKzv6`ry01-I6qrFLen*SYf>lpQ`Q7u}Uc6uIJ zGNPx`Rz|EpcI#y}D9Q(MZH)(w*V^B|P>cpw85#a7&HPmr)&al}-MVR(>D3|I8ZD@Y z@%nHOjUdm} zblkR?*VcSF=MdU@=HYqzvp>DI+OJvq?wfP8twj?>o}ZO(t~)Jm=B=y{2(Qvc4g*@~ zR*-G$=1}U)*P+kc>{*5R?Mc8qs2yWu@8fUf#tNJ78;W(>*Iq`Y9__Og>0aH|@0^@x zzH_oy8`mCo{T*9Nk-5m2ovLfD+6qX5X}!4s96eQM^G4o$McX>5>~lZ&#&6eF`>X;6 z?ADzJ82)xE3XQQ9P!kL)FcmPiWNDmrtxJ5V`UtDDzM{+e9C@MXdDu6+c~D?6#w+GO z=9cQ{zN#BpRVQC~2X<*pJU_u)(r(Ghoz}ma>!el}i&t8||E}`M{Ilwz4l(zqa$B4zJg$amupxT#4~&pbX-_u3z7R z-#Rr?M3dK$l>h&vb62x)H|l{g+x0?|28q@u_kZ@cZ)wb}7wSFGTFv&WqC~%v!;-$* zqH%SSe?Z>I0*O7)vfYAy0qa9reZ*)oGNzB#ki-A8N|Bi~hKNUdlGm=CFBSXb)rV*54+L|MN8u7VXfurd!!Yb9PV7 z*?{B_o{f91?l(6fsNO~mjQQSa`R3av#ciELW5V*&MDt+RcG;S@s-G42@n1L9d{&$> z)qQOKyTCbeW7E-utOxy8TBDP zoj@HU==oF6pl*ux{kFFjWG%Ec(XZ@UP-8#?fi)5C>rn&w^Q{H7o%_mq^U8t_wp@>T zT3;vZC3Zu^f9-P`ncKVeG`rBhq=UNS+_UPcH9Pj3Y<0dtTEmy~KBpnqbu2W;D-Z=K z*BnT_T)%7UPdat6`vz;h;?8L|MEo~g}AJ8nN^biJzdni8D#%p)7!pjrCkfc z(payF)`D{O@5x%QLBpn|?@2v9drU(@nc*(J#r94I(Q-C-ZEr0rynL zX3K`r;!*ThVw>{l;t=P0+y<*Ppra9ZO0y17R3_tzTnsYW!E4fb2d*X2K zZ&gBf-7bBTwIFK%)`EWB^;=`|%(upHl;#Efg+2dl*)O^ubeicVZ~;0d{ffXGm{kA= zp=){))~|wfw^p6{8vfAPwxPRX7u350D`;cJD}4{Dmv-8=M!Y8+*SKA?s(#h9XPfl; zfR3v*UTIrFkAv+W*S=k>5_Y^w)80&DgX(P5q^0S9+!bQ6y)ZGh0?^a*V!V=`T^)o_ z`@Y(Hpv|fJb?+)aM#Ge4b@I?Yu-ASJ8mw#cOSZox z<$F@|xavAmj{zNz?PFREls`c4aH@Mnz3Gfsb=5Ig_Z;YQ;J5HVzk?C&gT){}KYxab zIIl!R>8f2X%NKr1)i2){IqIL*&$Hbol?!}+awy-gj(>$KC!@qNeZNOe=9&85Ko0T0 z=yylApHFT7og(W2T+|ZPcem=hrq+XSU}x^?RgTDWjwNkp-X?NS?mt2S1(U*}(_ z%Ae5RNBS$!zN5A6B7Jht&@QZ3PusTWx@GpLExO-a^WDBZT+1W6kDussk*WezaH{^s zCF<2zvq7vIM|}M8$MgB&MD1IuGKKusIj8HKL)||28TQ;{sGF^4c8iW5;mW#C)fM{O zT$xOKs%_`${QusYy42R2bltb_O&$C4*r#56x-u`GYf5A3sOsspBtNdjj5Nah-CB`l zP_{Ktj#y1FVv${!M&~D1V43b$IqFvx zF*!bx7MOKuTXNa#(wrEIS0>w>iZHWj&T;vaO!sD&OS9Jn&4W8e3G_ zNb_K3$JQJzRlsFrdc0~eG-C%jDcb+p==YG+N=%&HP$0lVbp@ zi?Vt-8Sht0->p@EQeb6tEePl+N8^R0i+O!g~**T8jVx?eS}*lj8` z$7E*^C{j|-^GMdyJ;>NSRYj$WxKl!@OjaqwbZ)FNU+Hf$IS0O0C^9y%yY8ItJ*MO!uqUE;-+{&dd=bN~Xk(SDAcPw5>u)W|jg?Vu=XqOtg1j zw6#>@e@uNfCzjcHa9^wibF~%(gOTaA;8#g^ZB(f-RU=@QKslKb*RL`;wz6K$t<*f2 zVVj6-^ZQ1}P~Xbr-0GeUb8IHpT)}cp;2h?{Ov%2`UC}XiS2oJ1or&vJP++WH zhILo$Oxd#IX7c&d)_q}b&R08i7c#D6#H71^W&9W#12Sp9j|Z1am8%~#6N{D6O(|GSR=-2Xd`?&s;Jt zKC$`Y*skm{Q@n7!**a%URPo4t?T+qc@|xB+C#~;emTYMd|6)TT3?kqtsNag$EwVY| zUBoX@)Qy$CAWLZ!f@Dme&G9!{&PRtan`f*v+m~$$Dwfu^jwcNegF&`AeM7f+SMy@5 zAoi(!se=w)v9VH=mCCtR%owOhSdFZ`l()P~TZY%#GPCkrvnr=Y{GApHZJq0F6z4;vergy1y-S{OSSm4_DTYZQNP=J$AJai2%hSlvM~h*P!SMqZJ&}ZL8T* znj8OUr9y&21O|bkbqg((KZsE%{_Bg<4?1p`6@ujWZpHEUmo|*;D0309HA@lIux-Oq z8=>wo6o{ombo@MjDEEWpq#j$%vf}*s?DYX$zKH`sHy5j|L{3zSwhS~rxzI^s4!)nQD3MF!-UvFrNAXRd1yTUL|^F$<^zO10wk zODwGz>?cJ0@|;MYQ5}&{ec-VjluIr@EB@BvCZW#?whNvW)RmT@0MxV)-c8!}^dX$9 z>*U*69e2hLerIy5?W#4Q^-}KfjqA+z1brw}sqJBL2$AvUjWe4{^5Rogc#hJbVr7b+ zE?%p)D!)Bc?$!OOyZs(?4E<{IvWBs3rQ!XG{?B{h`W5LWn&_U=XM<#H_pN5t_Wbzg z>mvG<=-(KxO15qC`c+;7uV1yLUj@I9Cw4E6zrCb!EDY2`|J0GU z+wL~?N>E#Q2L^mL-E^C)aWFz&7R{&2)lKS#eo47;{fCY}b+iv(ug*QwG%>5=gJbuH z)=5O}%%zn!S8|#B5)JiOp_PV?J}(iS>%V@!zhQn6f4|w1SW)h7vwityvw8Z83#&5ZYoJr~+m=+Hk`Ti0(T4}08;BGtS?dI-k=lzifk%uVs3=I&Tt zh;g`FVJx$kSDK}w*>r3QmDv^H`_7@nC7+b<}FrUz8V|;S+MX}x4<)&!tnqqz&?_r*cwT(>=ZR_$4-dd1U26TCXw0m{PGKFn|*MgHPe`XrS zHpYj=?g_1vca$-J-0r1nH|^`Bcc7o%SJEg1$<+9d<0Iaj7;Cj|L(uN3Z4aqmK^u*n z-J-Q=6`%vU!t|?kyXwWKt_~R_RFHM0eFyygs!3bD1N5ul^}yMkcE*o*`HfhE9pNCf z-D=~*YAeD5|MJ#tBXi5Ye&(s73m+8k*RNmj4YD=W{lAxAd@6p3Aq%7TE+*Gds`-R| zMfx4ruiC3$F;eE0~nq*p=a zb&QR@;vY6%7TcJ=!|YmHY&LwnBmaAq1RuuQ}4i% zO0!03CCYV=NvlxUM(;qUtg0x=J32T&Q5+NNyAK3-MWc(Q?ncZ3W zd#Gddu=8wC-TO+%XqLS^J}~xB@C{N!iuK%C3$9k$NbWIdW?a8=OfAXn{iO0I@sY2- z8Edk&D0x@aZ|3R;HC|OF=Io1Gi3Kjfo>W!H_l2>waLKaxK#c>w&9%P1TU;c1c5j>{ zE!ANuQgXa;>=Eo_|IDoNx!>RsqTWy=lEYSB@sFD_XY;Tm!krjKAP))9#i_hdNz^7S`eFvB52XGtJxr3E4@!^6ItFMR#Xyf z-(nrOebaIq^ltSs>h-F3~5y!iCBA%ld8?cl zYAsk_Hj$=nx`(E)IIHuz_)#yt7R!$SOcqOLdqTP!lAY*RqFlDWgZ`sm&26$VzOcc@ zScUTIteP-8s90Lt8h6tgc|dyuv*z(@`^Vo{6f&TzHrDE_g{|%i^93v&)+W+Jj2c?N z1;`2AiuOpyK)*oG2+}b|cHC;Rn(o#b+gk^$oxH%5ZrL+{PmWl9+mGsFTRv)2&-e#T zmc+K??J_%7Z84iZT^?{n>1}E~LiV?|O|0(PY1!)du*p-xAE>JQaC@2h& zaMrT8n6+R`g8@mpt8BPELUdOpIXCabe-+uUD#b`zv|jznF{;q78nx6IpnfGrydXKT zdy(GN`mvS8;o}tyqohoPWfsY?x@&m9I;5b;)NfuApVVTJz5aFY%l^43e61bSF1IaP zkpdk~=x2Y9lD&D#iu$olyMpaoj8{9vB;eVby*>b&0%=;YsLvVLxj4occSp90XW!GW6s} z6-#Sd(?0D?(_U@Okj({hIycO?jxnsLW4vH@W03v_tOU={2W)e{It?2!Vg#ehUtEjj zME^pL@Ei>$-8E?@TT!rXw5F`e93?0E5BDaLed*GryY=@CF$^4|^WCBIiO4Zrl%C=F zu)RZv4sESEe&;57eJ|B_yb?j42|^_5=`UZ50>9ViA^P*IGWxQwMfdDhrDpg*_wZ)5 z@ksyq)NWSAFX=gaOZ)%q-xu{=b^b@GJ|^mzJ5_Fs{+b7rhhyi@Vp6y(In6~t+0adO zcy4QTuF*Qz=b@Elen;bI~gy@ zSMJ`qRCN^1TenwjZ81cYdjd2>2{gz{K7Ph*T|GCjSWbQ;<=#3``2tU{H2i^uv~lCK z{-l%(w;yTcd}rmNC0ARz0yu!&o@?j5Z*zOr zI!;Rkaz%DKFC|>E<`(SilC0r>bAAnB}jk>N}3Y z4*f?dXW~hrfSIboi7zNDD`reEt7gAtX;72*^SgP6ex}=@-w0IK%4KF( z;+-Xb4N|?M9Jc{ zmF90RmzfXddX)IdWihy%b$E`s=vYxshTA@B9EP*)iHYUrsmbM{Sgx_l{=n9Fm~u;B zH73{emJ>EznX#loZ7sLP=AdIRIGulVj@p|Y3c^S}Zo7jz9zH_pA5jRG5EgEx5qu_pWtX>m<8GYr&HaO5YT+sW@)emlHm# zFr~G-mEL#P?%)>TIGfsyNo>K;eEXV}Rr_&fUD>9f>UUkfu&!M4vF7Y$(q*s+ zCrOsT46IiQhn*SZ)yB#X@qTocaff0A6_bt#b412jyma0D%Mj z>Zk!(=4y?tVc?diYuO^>_^q0=%L$8>ESCfNwoYB64ymzkU+5S+*A(s5JXo(yV+&}g z(a@wHt2R}dzrRv$Ce9Q~T5T0WX*rBJ{m>k9*{B@rj7~Z{@F&2)r{AkE|C(54!FNH0 zhWE(QdzE7bchy7_BC_@D)%CYNv}+ZhA>s091#aC{yA=KEh<;wb>e?>- z@ygYN(~+^YH1W=o&-{;_ySd$U`ur;C7=SP7S8snF+^@X+>DlJ;<8v*Dv`#ldg(q(- zGI#ps>^4fBF|I|cx>i%8JpJuAtCuOYOsU=8TY#qL8t=Wi>_q`u{9`LXiGv$OuTN_< zEZ|2bbqqi!_rG3dUi!E~??dgAy*hSl) z(ANSQqRv&W6iv&fNq3$5u0Z$!N`}@$tqO-)-IW~n=}M+_j5Tl1GuxH~gYiD}V(5_DY$VwkTk6p-S2`jhXX~$}#60QJsDwRo(QZWz)u6 zdlSJOwIycltk{~W(*)EmmAqy1ikZ?grMt?O86^1vOR&Cf*X!`0-BsJxOqy?s=X*e- zs*P!W$!jJ%X#&s?b;!B}Q|vw1t&|f%(x7<2_tLh0iKE&PFKWf1AJxjTOZ| zOb+rs+O}R`f<-u{1wME}<~xOUZ^^%Enl@S z`+(X)j?spS)CiKDYl}?0Ty%lb*cu2G8zdkm(-oYK4$QzYYlYhXSjOQIig-&$a+}l( zZR?JeU~Pmx5?@xmR*eFy%R=*vkTvt(GYj5(T%(bC<)VDW z*|~MiJk$S#?}jQ``OTHDEa1Kp>ArJyk!=NFfV`%`N~J<&B3f$9UtcOSPiTSdgvcHu zM+tUYDI?qlonnO|32ysOnR#Ev?%!OT7aB=q4SQN-BnwKNV{Tv}nX5@ZSy%`}3D-M+ z@*{=?rjz=L#H`=6js3}j69h4Tv){PKD)2a8QwhL;Id9%;qp>NA=rHR2A%Z7P_(-{7mNSdZ~onEUF8;mG0R8*s<~2*?Oj49?^fjBw)Kn6^zpZw z-bY_<+NR-n;@am=ezeNKkSo-EqZZ0JN54{3#&)%ph>B%0ZWPh4PP{hMnG@cx6geff z6$ErV<$@$tzgj-+Wou+{$L2R|VHzk$W|pvhB|E*m@1_LXLQ^A$MBu^ zdiEQCt6H#QRKZvSaDivEebX{)d|**ezZy)x66!ljh`^w)Zdq9kI)LdSzmW`#8f%Em z;5{HpXU5BaG`)_vM1YBrQB~S~fQ05vdRSF>*;apn*W?^>U#-IXdgrJ8fhShheOP?S%*@l=>Z;S6CK|4U0dq{c7OY8+0ul>u?5R zo>xEe%S&4}n;Y6`PN-wQ`eZ?c`ROC2Rn8{B3*F@a$k+6_S=oeOE5LD%qhq3s+<&<$ zU-`6y4I?=XBj)TiTa|}Zl(c!-rhc2?c{N+CI#Kf4r{#9uC`*7YnrJBLrnca`fT@9b z1wg_BZ8Zq?Gd11)3WL2i?{Eu0<_V_ zMlB2Nm;_sm*VYmX`r5LJdEf^ccZ26KfT=<2E81VR7S!6bUd!OMAZyxm<(*<8BC8Qd zABtscy&~0d64gakh&_RR1=9fnD250uBIk<*py3^$U%fS>!T?bC-6eVEu)fjll)ho^ zc%jUW8?G$?c!(Uu0lP}c%UaJI{YuVJ7Ll`tz0frccM<@yfL;`SZCgHRo&`TYCa%z|cD9t$*0{9_OIX zFlPf|wf#!#cGiL`XTEOdE!Kk7`EHY275w}8fVLhefQHpt@6)efkwF-z8LyhCU%>`M zztU3Pyz_ab`Cv|o`SnG40yjkWtK_@Dyyw6S?1Qo7mJWrco~YW>k$s_KpnHam0lU@} zn@UY!F{OWM&@Om=meU~m{pB6JI>)OvR`5yRxKbxcvF}Ch4py3k%&>Wb7bKxkQFEDbi2u2Nmo5H@=ng_JL*jqru zgbe8z3)fVdAL<=gugGbHXT+QhOHt7dZ!O3=`L$0gs@9jodPKhi%-M@Rc+#x?Vxp~+ z{{SyoCy>^HtO0j!S!Hmbeew1`tlbF!LMnlgVfO3ySo;TM0f(YzGamx{_SRR5j+F!5 z>e(m%FqCP}or@@M+F${wiH$e|0p6m!!n8;`sr&O+?l3(@UXWIx!-gfFnt2l+v^pi# z;$UmkDxtfIWy!5uR|rHwTL+F|Etp%U%{GyQJ^Wd`-G*!r=<&*y^sb4dFQ4VHq5^nT<<7lTAX`KlXaNKdMglWm3ne z->!+BLzB;0vAfLd-spMt^IJ49ISgP)lHXE@_W;S2Z7S@(0#J-=(TbfG7KR|fUY)KG zDB-{i9K+c4ne5HO8cIp5gKUw0{v+wGb5?j`0J>{e&Dkvyx~tROKbl`@rYaKbTMpQ1IK*dvcpEz$-cz`p|4bsmlJHF4PZH_(p^_s9d`b^ z4_iA{PmKd%f?c9wXKluw3N0pfZ}9q6p6r+Om1N0n8a)QUDvC`ETcQ(!OoVw{g->+ZCy8Ev0Qsc~G{q@t|mnM3y-*6`vnB)F1 zFau>StT~JT06+jqL_t)xZr%D!vu4d6(lxNsV4OKfe=q9qDIcU(}B$ZeqI z7s%<1;Kc25`1z(q=Rq|bqGh{x7#0C2gj-h5HVdcxTh7Oe1M4k3eTd;NSxUCB<1gWU#$i+^y?fm*Potesfzsv&R^w4*s{pR;B=3oZNGn7urko= zvcvs{R(*%odB$z8+TWc|9TbSTt|}bzWzmOERe>3r7W6hf4m+<_dI^yF^8|VTD6mur zU=(|zs>1{a`0UsJW*s9qoVy)*j*URgl2YgdCo;~XrJr~a5MR7?pBW?t-Z$2`qV`i` zk(ndK-GLd1is%5|Kq0?+@L5vaTh=HCHQ+og+EL`^PkPuIBAO@-MVJtMzye#VX)XSm z*?!fsaIo4@ZJ@$YPNW7-a+G(#0ssYqq|?a*4S&f}w!Oqmx%NrBxs4*PdR%;Ha*>q3 zIX~?{Py#ScG}ANl3n?=eso$e$uV46~z5c>sr}&H1_zs=qOgWu#g0l$jtg;;kjIz!K zR}j$4I@PuCgC{KQ=4>e%!^Yj3wgCfr)t6)hL)_T1S`MdAcWyTa)j@f+M$rj(TjvMH zpstEIY1eC{jKS6Y3IoroId5A~6N(W4m?5X!B)zWsdAjRzpL5^2zY5IIvWpjSL7EM} zK;cI}0oXJDy+7Kmm?Vlr(5RyB~g@X{EYr^eY*$mVGwfz6U57fNJ_47rq>V znE@paV-ix3h-gI__RD6CeJHMgyym?1cQfqFU)X-&FBA3MIfvY{D$_Lpa)8P{UBOW` z^VK`Nh#|d8fS^E}`x!G}#aO>+s@|u^tz!$v?{NB6nvqG+^}djBWVyC((DTQkd3Xw{ zUH^4JQTd|>O083=u?T{$k&|NV@a!7tB`}UY{a(3^vc&=UqX$dP<3Ci&fB@%vtKo%) zzaaVOhX0t7%{xt_!j@*p%_jvFiQIe6j=$n~e^+Q{B4AHWV!!y|8(DH^!K zIyHVKhU|p`RPt^! zcQFq}vEX17oh2iKO$Q^8Sl5Hk6eH2m0yPLFlaNY9z_MOh{L#}E_%r+UyUozkZ>}+> zxw1i@IG0}E>VZYwJAk2Zk(?RbBPi#S>tf!VqdC}1-_^*1HQIDPSmS23@gHy-3^qgp zZr`}n%zftp8AiUBT$TM@a7=H*Uy!_e`NK@NijeDI`dxEOP?0)qbAS$a{q$lSyjQeo zmv%j*Zn^ee&oP2ykcjSc6?x@P13-Ec93wEJ5Dopa$4bqkH{?e$HQX(OC?F_gP?s#N z@p5hI8h^v)uGIQ(e3|(~{U5MI`xY_t-IJ^Ph`%h~mx!I^2mkaOZrG2%b5gE3bwqZJ z^b$B`VVQW~buVJ=#s^Ex6F1hYaXrcP`hSyV;?<;nMRfKT>RWy5;2;A8$Q&G3KgV$c zYY-sQ8vP0|!{@Ktxe(A04w`{ue-Jue`P<3&)nX%H%tu@wfO;LO^k#Jg;n_+u_#gAe zwfB`O-Hw-69Y(ebj?SqO)lGU6z*l#x4;1e-<`;6(KXQG3XiB=E<~gUMyZ)VeemI{` zRtlzcWMAkQ%|tyLrn`Q2>x)YHx7h-k!pcOod)guofC!TkY(&?cnrluNS~E(LcbbSz zScka(H)_u2zJ{d=V2)!Q0Bt>TvY7K=VQAZ|dX9s=0npK3Uer2Mz$cs;q#!sv0N8{s z6LxJ&pPOcuzhF&RX2ADH8Jtsf5#I0bX}nsgHelJf@EEZ%>946T+Y5|Kuuajgh+4h% ziBdV<^DR|&y61W>;dFHU3T8FHGH2F-O#l$?S4GDlBKIcs6P(}xMFFgg7R!yl&)`5~ zZS(j$N$-<RpAE%ITAOr$PhMxA*8gpfG{qx>^s0z%0J*@i(qHn!m z6jv7TE&3o%t%dJDVb`tABbXYtu9i}whn*{X&p~QO^*9K7!Sd-ZTPG@Z zp?Q-Yw2n7-&QzbQPiH1lqqu(cM$uMtix~D`7)vEMQ^UsA1&>ZKuoobMZyp=yc#Wzb zdk^E)ZaG&OTssXOYa^xo;9Ydr4PuB~@c!dAkYcv%62s5B#on*5y7x%OP`_&5@0h?U z`&@lg;P%a*uQap%{HER4<*Z?*?Z_U1<$^Z0P;@zeLGtlU&zRlox0wbVnweq0JT<6D zowhxn0CljG$CO@949tAY6A#PSDgPAgvq5$5%GWn*QoX1qqn?5q@$L%WCf zGnlmQddbsWncvY}lR@zSp#M3c+`OSVcE*xQs}uiLAm=dQodG0+ZBiY};Hd93c#O$a zT3aXBIkDX>c<(WngOtff<^0=xcf$dY*t61vRQ+oFd2$-C^;^ z|7Y9Uvaq(T-W`-_9V5z*@t*t`0CAi3ZD;yx-BwrGD4x&sJY;2u#&qT9v>QXx{hLy362>34@9i!7J15JnH z`vx5S)!I}&Q+~DDeL%N%`0(M36jh^+I`wC%8Z1XS;048Zd7_jJL*4hi{S?Rm&#bf9 zPf~mSlun(89C8ThG5j;dy{V2<-7mN@I(C478ExI~{rH(Jh6b1^&e64Brtf_+b#B#H z$oH|svA)CShy~&hZGYXjZNGo*(W6Jc+VD1iI{8Kc z8eWTPgcvKN?ikPF>lLgydqy4n|Ixk*O?b}fcwwtHrd7h|j`4#0v|pw`Rf)3?A!>5y z=|3}`)48TnN>o?RBQ7%Sl*RyAJ9n~;F1J7S(|^!wKk}Bh5I(Yhmbv%4`GHO!@+RN$ ztvqwgKyT{9=nc)~{**0ZI>1SewCXa<3=+zm$n<1k!8z!p>pjG;b}pLol$a*GYfLVS zqK9%@S)m-^0y7Lb^+r!|_kkHWhCJLXy1EPOfPh4WhA~WtV0EE!K(&p)=s@J{{uG>Pi{$h| zKy(k0p(7d0z&;}N`;NNWf_?aHX()x>4U>gap0r>F6n7X+ppQ&W|A8R`n!0|+f5%pX za)-yKjCUL5TtI$MP~E=(OQkCs@71p!vS0?HoClwLqje_w!3@-ev#`^k z(RyAU0v%%uV2m)~S%QW~c)tC0jmcmJ_Tk(dq<#hH1#dE7sW3soupk+gqx_K5e_{bZ zelP>aVjzM3t>eHGZB_JtfDK^+ogDcF5gbE3M_y=={mJE9bnI^#PcWR(7O1|{mF03; zeX2+=#GewRF3*Z%0ZMuFr^;ik{@7*sX*IwMl;M8h-0FYAHT<%vK9Ux&nSchIY#`_v^kUgBjS@MWBe=F3~+d z)H5zYpFdAvzc9J&=~4@3z<_Py4Y2Ao`uo9L~G|#d6`W z(`;=R$2KkhJfh}(ziWfu|MwHlq3`MXy%rONSJ)Ou%e2k>)1hA=AQ55)dDkcEX)aixhl_6!}A+vFBfsj zZ@*OP#lta4pN3BVzH9RZKvG(nBxf3JzvQ@F%TB`a8wEo0Glu!=4Ep}2`W5MWkQ)7} zE_1eyxBUt*gVs<(PW`c6N7U+9n$Mxa1@MDF!@5ZT=5*x+wMoN~X(UI;l?f0Ffb3Tl zUH)au?a!83XF4F6KZt$i+hc1})Z+*}^^hEM-!%frX?lSLU}t5hw?tR?{Rt`RWkCt?#qU^0M~K1|Tt9GC%s#Lv&o zs{v-G2SM2Kd#dcW}rQJIWe2UhJFQm1>ldr z%dwlT_??b5`c)mq0M4~g(e41I(J}g+@SOuz#{gJ#i`IgG8Co_L!Krjo*v+b*IK!)&j^?8Uq_7oX_LsAO!fk zr{aQKNI!aB0?^F704vg-N~Uy--#+C5b(o7`$zZ-qUJC*^{)Xm9SjrfKVQhIwsmj6x zy?#YP2Wc)n3R^-ln1N#fFbq)ibmP`tY*jek(6z#Z;0la@f#;2 zHY^0-I?=pg0<#@|2sSVDsAMn$`)L25lYV4v9N0Qwp9m8I0?@N9m_b1KA*cV;wCR3G z4KM@8!p6`|po~tk;UMVH0DaRH2WV*}z~M!*HzKTK-xR3f%N7eR2FxJod+fJNSFL&d zUmfZ!l#UU2vai6#GCga?LF7`U$7_}d zN_n+Nj6ij;H~&NHZ^tUgJdfV%2QyGV>jIdG(CuMaU^oQi7bXA|?i8yUGEjhh=7D4| z1N%COl?OJhb4Gev2P{wk;=%;xU=Pe-6cBZpeSiF5295&+Nw65q40`G0eBLIY?~7qo z8iIUCGl39bGx*e-s`OL;K`=I8-y>)ZA&`s!!2K!ci`a3I)*4f|#$+%9`>;X7)(KNE zf~}39svtpU-5)we(7Efn&H6FkebgT2`7wSP>BlJObCfM>{TPWLrl51$v`7gsL(d~G zu{K3Nn1N&HSFHpJ!484`<%0Br>ic@z-roW2F<(oD?|>Z8Slh(x8!R-`Te?LXlmSQ=gFD)+@Uw#^rot@p!SFA!&_X~W# z1HXzHVYALtAOD##5jWUzt>ThX`vH74MUTU0*hdr+A7NFAc08(rwr0< z#MxS$b_^<3wXMCJIT#0!uxG_$7FvFU`gp!k0?k(EAt&1+MAkbcBKa5`N6@<=Tt8rd zD8b+kNCR2#OVJT^Os4i>WFg8C76p{-D0)ZwRrf>BwWlWCfirp}w*_Trqo^g34*f?7 z1TiqVNR8h(%3E|EY`29ys~QI+emJ98e?K4y*bnOXy`cJw;(;*=Efg*f{Y zDE+XuV$@hU^9_3{3~gcPde@c)&DvD~a6pBpYZP%Q9GYZjn~P;=I;f$%{E}&6(^#oU z*mQ*VZT-TJY*APw00~72PUKcyhuI=w*B^Aei_Gq+NObyDL4sob&0;xurRb(3FDsHC zgEVsUH}X>EFUK%)uyS!CL~HL)fjV1E)z*nYB#56uA*dY}9-U)4irOA|RcR`MgebS? zrg+zJ=3&{^0TNWsZ6jLsGDW~3M5Tm*@cyZs#>{CrT}h`D#AM;>PhOP<0*hIu?kl1-pV*x;^KF3^H%h2pU29_Z=PGF#RU?_hX zzC#yE8X2T;=qWNbc?L?mA>h9@0`?FMh^$*UC7?v`CTAEPDMpeD^u9Vr29ZvTZ|Mk3 zK8{+q`(fwHkkmHvuuen9c)%`|s>}NtS?M0`1ZYL?ttaE(1uff{BNI88=PLqmo}x?B zkvYpN&AYR`es$%EIp)yb(ftbg@v}ze*s3Qgr3(($AaU#@I6iMVFFd6f#{x^(CCjr3r{xGSC|#_vwQ(Y9 z5+gL==X7MfoGq{9D*v}i48oF_ylf0?piwa2(Y z8!izu!x8=8_B%GH31gs*U9S@VebH`iXPYeiU2Y{Uvp=a03P_Z<{*T0F|e%cFCpd9 ztBJJ-Y#)FcqXfqb<&Y_wKLJLjBW^9&Le8d3)UO6NXlM_EO<=9q1k#aY9iye9$fM-T z)G=QCh@b-R-rRD2o>D|ckF8^d<(R=;y)t3ztDtLjk;%t3X=cvXoR!O@4FL~EH*IdKS}zCnM+x?ty4LM?I-c6BWsQ^=bp<&4&+YnEkdCpUBt0Et>VgW( zXhgl=)!K1Lx9E4EzZ{dN9^#dO4Tq@hAaQmE^!z@@d{b+|@Ns~B-NcB1;2^?b7bGy| z6|Y}pcXc`FbWzB64JuZ(jdX@izg@rJ!>aAcUzR2uozS)S(7Fx1KTHVr=`#FuyPHT} zqMCzb?Sc<1H9h+P%m;z{{l^gif&B4Ofz=F98~P}Eb}~pR`4|||V0J`E2N@(V zr{b7K(DmB(JS?bK)iwb2?Gj~3T^i=lCk3r`TAj7eu~&ws!lhyy+0HIViZ_@b_NO>| zGeJJs#gYSj{B6O$=>X0I#t`rpB-l3hhmH|+?z(RC{21HqVV)nOX=D}HIjj5_AwgNN zU#*@q(bm&SKp0qmqNGvFPGS-|(iYjU=o1AV2KU#fI=zRlHT=kn2A9;DcpiP3W0U6#@bjx^g(A z6?LDUHf0PjOV2_g#!r2JLaY_cXx^;mD&5P^O`A4VE?v4**k2it4m+&AKn71~ad~P; zwXL=N1_2ZL>RLVxDN}2+>K(27@Q`*C)Y|E7;F$pw8fyHinx}W>{KBwCb-Ls2*Ww-0uc&k<4#;?B`<8nG;48uWmh5!u@Z19Yc zC>bX;^A?<6#=XMejJN2@t?Ka{Z zQ!L;?t|HchWUCglc zJTVbLdz!|SY#ChuOEI==OGNsNPGf9w&k93Rszp0(z_#+evLKk66tel0+g40tpE2*AA1U2FXc2JnZn`Zj=OY} z44LiJ_cdHYK~2==z7`_0U!Ll<6$fQ^IaN~$PSS77*fMizMXhLacPtJbfCpR)X(rN< z6NY400T~jhYHJ*Za|nu0goyT3zzfP@G$P6rBU6V22!ri@anZGaB+gDal>PgIzMrY{ zyT=2ad#ffjOTnN(+93qCkW^qv%CQc?I9wr$V8C-h;s8CcGdO0SpmP3gupf}pC@bMS z_U{Y&j`82Uo4f;1_2S3?=(9#Ceb|>yu50(c<|~y~Dg!R_K4OoMKFeB!+#I{sXxFG)vW6ye=Risg7t2J9?VDis&4g>w|v zkW@lS6r7|`IyY4Gb%rzg)uc*c1;PwM}gK-7t{Zr z1d!bq0^1>sSER%_Mj*U56f{CgpEYn6tIx-KC!V3Ek?SD^TDN<)NPcV79V^V#hV>qXEppK!oem4yrV|;>Xg>*A#CfL1F zottzN`H3YiYeAy5{X#VK<`uK-rnX`vB;7(P!5#(3y;8bta#XB4*1ZEbr(D#n+ZXoP z^`LPEy9c^qkT6F&M;^flQNRm#Jiu~NUm#8|bo<<=v)^DdNCiaa7+58`i#C3Ta^45g zm%DoXpI-2kXPTy8byJ@LEXCNu+G2y&uB{W`bpLVtY&sj4O|#Xsmc28b_pedQjsgmdGv!Jjm`?drZA^DRPF?H!y+>c=V82EOj^$u2XrEPd{Udd( zXt^sdg#qmxOO7`?xE-}WnTZPBW}VlD-`1~R|M%KCP2e*>XHNfX?>jR ztM_Ale^v|!Gt~B;`a52Kr|EC3{?hUy3H)%b%KqC|XOX_&Czgw8+P+DD!*qRP^m&Z7 zb8l|0SFc`IeO{=)JrPwG?+NH+PY&joeSM$PXje@4?VGxe+jL)Saow*wbxocZB#jFG ze<_mebmY2GURi8@t~_^8`fif)+Om$y>;Gf#I>6(o&h1q%wro|)lACO~_kt_NHrUi) zS|GFp2niv9mp}>$S^>|M>y&dknA zv%-LWeXD7A?%cU^`+xrPyODp*U<056nc_q_sGe!(&rpSNd%N|hwz$Q37ffU|bSAeh za;8Xf7MrtBdc>>KeC2|(Lit-gg_Cef3jCu{@!>?Mr035{s^Qa7N$QY^YS(tl#RyUb zS_$da8o*FMar*uYOV zrk~1GJ5hCjl%-~_M$GOdsKqX=#(U_8oQhBi7n&%SU}51Wg{LJ*fD4gM01YZ%Ng2pA zI1y5}D*9F@;i;&hKWFyr%DRK)ihu?R(;5uWz{QJ$u+*T0(q7Ybf|>gS8Bv)2(Io_Z z1yiUX;FUNHg_tnM2Mt7p49pyK5H3*dUpsgO3?N~kp5bzG~jq`g=38msW? z{G^;H!Jkv%f-+l0vR<(Lr(BboCIJoHXWM$dmkEQ%W_8!#N-)+F6$jf2yEZ_D zb9<}ON_GIFn+dCD4NM8GT=^*-QJyGQfC1$Zj0Ib~N@*v62GtLSbB?jxg*iqwSSyZr znQuZF3ljL?6#T$Ee5taG8$s3!)rOK0lYj=wYv{8=1vHR3%?E7sj@!=zv(Av%IB^Eo zRss0?-9bY|fG#=Z@@FL~ zPF_!SICrH%hTVLSKyn(Egc2vi(s)D&{+x*#pVDw@oELDaz)~FDaNPFU42^EyS&Z(5 zQezeZ6ljp(L}>NQpOu7bj$!q@bNxJ7qu%oxxhN*!u_y;)Q63HfEJcO}u1OQ@WhZKk zojWiBAb4lv%l?V>eKuJK$<9Do7{VHEFm?!4UkQM>D=XTQwg2ohhnu(nR$*9I$=XT@ zW$rp;%4I5w9^0z-=L1t5uHkb1m>_>E>8Uw})$>C+-_lU6(_=VWYh?Vv^cX5%$?)oQ z{fta`cKtvo@6{XDJO}JsF7tbO&$^rgPyk-uG71CO z{V3fd;GEX$fRPCMe}FrRyO1A$#Ls&5%A2^!lPCAV?ytRv1cbZ;R~?_(ym@oJI*08l z{C?%j6gfLajXkdPE`O1Ox*r=VUUhd6m9^=waz-dz9(c;~X@6={pj@zC`Q z2|`!-LBEGW>N6dEQnFo14jB>Jy*|a={8p+A5TxLiMQCG9iSM1=dVgPpF7Nn#D;Mj4 z%GW+A;j33_@nSv{AgNwJlpZYgUQJEV$tx`!lxvV+E=)qndiDNfeTeUy8p^GfVVflQ zN?R0DE-x$thj2lafrR8tOY52tqB9Mu6r@}To#u5l(Ffx$Dz!)xdkTxAyBq3YO`|D} zOe4Wbm9OEfS4N98re!EBJ?J8Xi@Q{4m15x}1HON);h(Alq@txV(G8(%9JSawD$Bh(U`(6p z2NdfCud~e`f%f${03>9;q0e?Qf>;R`@Mx__akC%PKaXyO-cT$(P~>6GD=*W!uW!L= zL0|8$W8Pv1Xn5(Rmqc|n?E|_mV4U`0Ud7jt!D45+yb!9Pw+AZ zBtZ$!y2Z5s0?AmmltR)h4xVeM*6g9e*|#Y7INh0JsP>v^4p+WP7Y>SQ-^+Tz=P}*v z!^)t$elP(5w2Q%1q=W$9Ka>8QYh z49~t*fu-m+AXGqu>Ra@44E7_T%rVGdq`0I*a~r z;SqAA4{*ejV4+xTxYn&hSpKUOk)NoD@UHIy%-7M0l$(V0;CYV##6SSV|MEK0@Ox~|!>@A{fERi|!ko{hZ-DRm0xpa- zTx>%=djtpl?DY%2%H{KG(M8m}pZ{ z`irq7t9jrp18&BtfA=G#SH+K_kofAl0!t}NANqf{l2%PZd&IC12lBzYk1OnqNz#J zlQL}qGN67!a$4fnno=|szsb!GJ{&? zY6D1re#{H3HH(|p#A63rFVyZpxgv0lV(bT~Ap1>mfoO!%gMEdu?bSbz3|LCSRj%Fw zn1O!dDf+Z37a1?WMFuUDccMQ~06mo^wSD4=Cj{6P)nT``4?Xmd$Vk;d1ys0sJ(5_q zSNl(Qi0#L$+t$$l*vtVNjg?U8_%3MSDaLO>t8W4tD69itg_886AoQE9#Ht@yy{k6w+$`#rG0vaeRSHS=cs(%evKd7H$=-U9MFO)fk`u@Dnstl}! zTaq(n*5eB@XXRx2mn+7nglsC6UW;12GM9Z9)BaRxi3Bxl02ucI8xWp~k6Wy5`GAcC zGw4BP{C1CG9Kf2uZxsrlflLW3?QDG%vmSP(iwOmm+6(s1lK{4mGTw>QyEMm8eJh`7 z)xYjQySfkUtCdX733OMZ<}JL(tv;)@B|QD0TEF0$7{`2Wh<+>>uKLQhg9>Y=STXA{ z?Rv1(VF2)s;->(5ZoHe*IMiB$Ti>70RdI6PtvLqc`ml-uU@hneHZ>g!gFjfR+!oNl zcCW(ASZLK=pDgJR@9wwmvj>CK;UWWjq3Q?d&Z!^R9L(f}^=&@4U}o2^n;R`%DC)1N zy5(lQQgQM*ZpN!mw_E$FZHC8e1nI*V2)q(21~0FAe?i*KKjlJY~`I*qp@&L^N$UeU#< z+AwH)2KU~@`w`b&066>?@vY*qQDCV*4Pm})80aN39KaEWu;I^D0gzw>BJ^>|0Oasf zy9YEkH$Muu3=beof2(kK$0WQ1!5dN#=R+1?1{FjA@bHV6n3(%1!{_;l2Vcd{QDrnE*lbdBL8jo}Uxjye#IZ^e92K&ig4z_}3Zh+gzyDI)gm01f*4 z!tt%>=RO<~j(EfI{(Sd0u+Y@xwa(Emw(=USz6ZlMc|LrrudJ#R4`vS$F|Y;;CgFI0 zK2uqxl4^g6&LWN1Xs!MeSm#pd#zkB^K!e`zwN=yd)($9zv5;*gTukW+K!fUAn2uCyEqRQblCP;7fucYG_|s3v0DYRq>P&bSR%pY?KuhU-^;nDx)S7HK7*fx@&}0UGr8xVf+ITdc~}?&IyY zW#HPmQMP~vrF3L7dxc@{rnmYgh4=k%yJ1)lar1S1EG~VYWz`QXL;2tAbx&lLFoGF| zX82!Gb<65ok!{1SzD^qv*&~1k)vhr0(NX3T#l0u(`)v9Kw*xdR*C`#ZG?c43V8R&) zqX$^l2r@fxE;?%9n@?)3{Z+Twyyh0Ap9Z&{dQkEJb%=AC!b^ z%o48e^+DxRsL$Q6a}#GAKc;}eQ-P&+A>5hfW-%lVsCW};M>7megA}W=FoC^xefIqE zfq(|p4_J)@_`qjYxB3`jv=sRNUjmRs9}A3Exa!r1rCfz;y*XU<)&I-7a}E_n$v(xr zE|}w804yE^+ru@uAp>!8CbtqwYJvuS31EY?wadxLiOj*A6@p8y!*3pb>Bx@}{#*7(PbcH1ZaeO32 zO4&rUM*>;dhqn&p^2edp4?^6TB$teeH^5*UeA z>$-V?lj!0~kJxa~dZ9!Yg=@PiUpwH>5_QIv#m=bM1Yi2vTWz#ezEI9~R9fBq{!y`= zGmiGQbGuxr_h)Xong?*T(B9hUYMknef)+hCWAbWe z=@X4~Dsi)1MSGb^+|1KxUAgLTvkrLcmYZ>^JmpsP1LL3wBz?WHAGoMriuik3iS$iR zHz5}pfCT!u_`O=&Yf-M;YXemL9Vk~^@TJT}`Kias27h`X(~zXw4r1w}+H2n1V9{pJ z9up~&O+0M8wz*xj>6D@R=Z9lIPG{86faa=iXO-|hZZQ^8CJgiMds@()FWYLK&{*B9 zi*cICFerb_`mC)`7?A?sOjKGMG{$+eAY$q4XweM1f4x-JdBoa1{@+qvS8?*V!J=4= zho!t(T4`CSD2i2lYU|&&G>hmsiF;O;yR;2=-$F~rx4djBTmU3hwO$A|nhct7wyX4o zUI|NXE*6>z-R&rGvmI1%hHI;=yoNz(lZJOQwpRqu5zs(j6I~=2t#?(r;vCcgG8&kb zt9QZPQf4u$ROQvGUU9+HEY3o>zo0V4O#JGrMctY{G7>(;1MgnB4Q@~@?opwo3kN8Z zC<~L4MTMbUf&W8H_qz1iBwhNnz@?ABQbNV0?+3#%zA6Co0+o3(t+4bne*bI$@UoFM zvY3#*_#uGs=#IoF-Tr~-0Rq- zK=s-DCKO{HaPIbEMVTl<9&ANk%|d_qVHYR$bv`WR2c-up`(N5%-VZWQSYN5ku&S?_ zP*$6LD>4EpcNIO6x2j#?v#iD}xo}5gmR8O&IoAv(3NSh;p^tzyNIXqd-+P8k;5$$l76cugWxB1-^iaQkc44{kr&Ax@Q=_k(KO){J>`J1o$m zxM*vTD`!RvVTW=Rk-IEZswZt zTe%gtir3A2bt`Qj=Xgw};2-Dg=$Uti5_lG#v0T6fw=ejIV8uy1H z{qKm2D+uj~_O|X?#seTwf%M*ocpY5C*~X#^4z$=F@7&ZVScxF}#mu5L_RnyIu$8g}DGhSccbK@GVaxO`~+@ zKeD?hADn^xRQG~!V*fXA?LnrF-{D7@3090JasFCexR32Fm5ypbpc(s@9^Px47t7!? z@xIKSwe*Sao90Usef%YhF}`EFotm@9MSVp+CZ%y=z{uHlL0!9+?p-e|!uga+d$MAWa{Uvh>N_ zSX&k>D&O^ns$x-Hd_*2+j-Ce)mj7@dE=el`n!oRM$CeJohu;TSqg^DW=ZL=PLw(QV zPMoe>HPw)wdV=3|tApCo6QZvCjHFG=95vS}n5*aY--dM{p})0z2K|F83l54VgeM(c z`mm|`OL9LxDHU}D6w+RQ?*Rc!PP8=Ei1Jgropweba`D zq>LQD*HUrvWGMMsTXss+;m7(j5Ou&P@qJT8E!s5c=hS%7;k*4!h^fbg89x7*k%W4U>N+kjbnXUNq?yNOF)B4D*+#8t30MkfUhhK zOe^Wv*X}Xbx~A(~Vie$8naTO%qXd6O*>$`L?`VEc9O{)4)~%$tVd~I!TYh?vXlbaD z{YdIy|GtC$S8PIm(b8BQQX9}zTP`XKIAy_vY{V>~U$D_9W+fD~icRI;utMk0N?1y1 z^=9SkI<9Z0GM9aYQ(?bRbC%Pt2$41R0;jjR67DP%v}^|`bdM0Uy+Rvc1!$n_22R^h zrA2`Soj7U#&8YwPpKb!6!Mt3lI>7QzYyFt$&bEf>=CRpWa3!pOtpE)wPTp@-2k2Jj zvgr)rFRONH3M&7z{zqi9sQ0>Xc(Jlf@Mk4_Yg+zW`MQqnlZ>K)xh()Cq4Wdwm4%|F z0X6DE1`mnz{w?G?=i}6fBReGscs!Ff9-jBKS6M6!JU1J znb1v%(Nzh<9W7`M3TQZ>Q##Vcl9M{{Q2;dP>j3k0%%H%WrMn`dG_`ny9iV~n);4-9 z>(z*Xk*4+akr!G3XkaVbGeR0{Ds-uEv1$XR=SE>H6W9;l`&e^OKm(PIWMiZd1mL7x z*#R25KgXDAN&l~(W4wX+1%Gy8H^_>&C<)GQG!3CY(3HhK!bUEte?BF&+3zE(zqBS#Buql-EyoK-#1;P z3?AC$d%e1yHFcg=K*2 z0ik>=(&?9BU5t`CWRi&M<3G+&>sP$))*ORzeb_|0iSq(x=_>5vL-y;}(F0gPfMIiFn!GUwvhyT$6K!bUoJ;1x{!1+KC;vH-PjJ)R)fpgbAa7$+gXy6(i z+muk&gy_1k^!Qf!nNu*w)UN~br2e?E_AJ&+oYj?zGyCM4Z(L%ENF6#!#vkr~st$Aj zDAv+Y<2bFQ$G3^LmIjfSoF)1X9OakHuFf$UDvLyQ$x#`X-5kU3Vck6N|5jztV>lC~ z$Kd*BrimVd`Pxub6jHfje{nW%vrItppz$Ih$$p&SETz4n^f?eXdemR--FH0)00OuQ z%JQ{{Sb-Vf+RAg=`t|Fd>h8nh>z@^c2j6iL+?6o&c}wA7cn>UhoXTknw6N3ryAn>X;CGs@v|2d) z&Qmg9&FnhaD%2--zGp#MYMrzzmEe35sKi2a7f}XEAYhAe=ZHdGBvB z-ulXdfIB#OkBMiKDxmasUan5)XRE1EkiVnRi)0wyFKf;Xa&Q}NU z9?SzL!o`lm>z+*7yGot%+xAT#CXbuzpv;8g z(}{30q`p-P(rqQL*eI^d?pX^EL9G|8Vs>49s~RkFb$G!CX5sYb%1`a_rPZ!1>KDcI z_gn2RL%AZWgP9D^)T}&sZC42GH5Ca4QV6r?T|GA{yK{=P>$r8jGd?s}-!j@8FZ-(w z<@DVciODf3xUFQ2KCLIr7mm#CJ!KPTVqAn6oTjybyF!SQ3I{9257VIP75AOiR}b2Y zBkyW`O9d9Q%|x{=3aDom#(1ve*d|#Aj=le!E#>bkUaEcL{Z_}X0f=fP1bikW50sZf z=?C-oz9rLode?HRsKa)iASLHDKnTSqV3wd*01I*ksB+~zR@Rk#3x*OtN7XB~6Z>s^ zc^lJYWjV%hTwG1?uFvj*y8@>|Fi&l8Jc9_eA5cs=X6YcPr%#GD{dQWf7*8R_RqV4) zZhy@Z%z*hd{Kl7=J=XHvt0*%)DYWbx2}^m(&JfybhCf{zyc{ZbUJUO<-h_g**$Y;2 z68>BbD90PNZU0wu>*Y4h~UQ=l$J47gQ#zDCXb$mtk8!FbV zMD?#-pJP~$Gu)hGjLeFZz&5@|DEWHE;oMyh60piE{dt0hg9!l~3fLGdEUzB~Q017H zdBG|?m5yX`2u1Ar0ToZEeGBIpH5PM>{s8r4CTneLDBr3Dz``OMh7z^Tz%*BR4J=gp zt+pPxvr_ZHiu`@1!F*%E5Y`z=4zJh7Q#4yI002M$Nkl`>0DZ^is^$}m_7 z1+kiEbB)X>YMq7WosNZ^%rT75IoFR_rwJ}~DyIQf-fgqqJStmj1NOni66bkN<#xKtUaFV6?KNdpY>yq#16(Bvyu05=##l~ta1TCN!O$a{a6@s^$1 z$-^EI_5OUA(>1)dmL_q?+g?={YXAg&V!JxWDA>P7zQ5fZL;oB%_N5-f%K#M08t%#M znjWL*z&obNP<>VdfZ#L=aw5!sRj%5adRCv~Bz+%+Fo8YxN8zo`(RYBA|GiigprTi< zl48FGYyj5*FtDb(NrpxI^@#TtZ#>0_`yGHME-;H1&m62j9~~V%2Vte@Od4dyY0Zag z1l?`^yLhJ@yr2Kc(2w+a5c=I8fjf|o4wi0)(icq$#$peZ?foNZV) zFU}qv1&X{@Nk6#)6u+}@>_px_;CztpBt9o$$XXB+p8(uIBflgELB*InJ7F6rJF!Dr zrZax4d?i9%vKW+|mP`f;;9!*|T9FflYZs@qdSF)tMN;wM_kh$LX%(IC{8=c6G>Jf3 zN!$}COe?MJ%TLq70;pjqqwR#qVoowBDT8{hTydeHUuLefTr4@dNer95G$@+@C*+M_ zzR=R@Z#5!M;$P~}$@2Y4u~>F|yCWtOm9L3VR#;illj3|G7#b*dq-RS1&GNwH-{WVC z1b_K0u=D{f@^lMJAAT!NYB+GGqTXm-VvL##O$y!4?{8-5$#19_MT!o+XIW14aWnsw zSd{^y-ir|*7r59K87(%{{c79VR4=$FLa~e!?|)*;i!u!BK+bvB$bGwi>RUyEIyK2) zjic_PvR^5CNH6>QVY%v3!1gUHpnmhr2?6A*c(bZfT%RVfumR!ttq3L|8vktG7BO(l z`2k^!CsbM!`VH{2JkW>Z0;ghRxFv0X_@<4IRa(K(YPSR~lt@iZ_a;V(hd=r0xshTk zC@ATB{;OAe;QP|N57giLeh<3`;9X+GR@ia?)`)I{ovejk>Wq=+r@#? z9&r+jQaQ+zV6y#KhqPw33YX9?1B^EVMPqd_`j+)#(8R^2ZH4}RGT*4hgJg?-fOVka z%w9nNQf2;u0LwjneB8$v)dxK5H!wGVO-6-31vV90L{dn}dpp`!D|w{wjCdaG4SR#o zZKn;HEb_^cga!A;>JsFKb)0+_Ej-G+EIlbbIKEQvsgy%AK(+tZ;iJ{*fbIKWak%&7 zF)!VAg}5U_18x`tvdo_-X%j~aJ>pnlhZv~?Wr&G7=|ks-sym(Ci?Ik98mi$!qd(?4JtcEdt_~Np2?Dha0Ms&mXlI$QO2fWW9hQ{n>K?t)k?+nt zuoBjl9~7LD%p2@GuQ2$ox4Q3KJ>MVYef-b}*$1owef+&wdIUj9!Njg!@!ompTi)CO zwmRT?-`?FWt~f7vIbr<^1*{Y-jZUx6L)*e~LZIGmfcvHl4?fR4T+ks(<;t4%Q}jy5 z#i0KF_0SQPfyvJDaQ;cDP+whBDXvaQHw`Q2SVuOX&*;J&16G+mHOJt%Z_4mUL9i$- zZNIV<42u{a29xzc#w@&_H2X)qK!WdN4;7!ZVP0UKGH+>}UV?R(ObeGjj8}nAM!;3Y zOQX!^cnn7%!_9ezxGUYYea&XvtXDcdo-+#LX6v<{+m9cXZmr(HT;PB4US=+R_{{Fi zF>bJ!W3axy3|AjiI_6_MN_zQVvIXN@J2!EODOqyvK_*C!1+&L3!dTG03~-D`3u1~@ zpOuEOU=_xUjbMT#Xf!#?dd$LjsLVc_r&(qv4;+m-YGC~)J7#25EY@RML=n=;dKOGL z7gJ(2Zeu)!2i9VpgY1rFK7fO|&$#8gldX(GYhNpQ5B+bs*M$}5n4D``$z3OoN*76F zDf#Z8q0&8xRam#r%l8MUlEyP+v&bH|Fz6!~juO`=)szJ>Tyu<|2|LFEsB!zim>98Q z%p_q|W68R9^^yHD^{)cdGR5ms%lJARx350{V-)E6xm`3Vu$~z2DX#1g$BL}M50lXc zB!UcuuBSL|{{-AiIFVre0M~>F0w-fESu+PsToN=|Wr#$E)x?xR0pYo>M5Yyvu}jd$ z4w-xz+6t>&)o!mUJS>?7d1SSQ8}J|(PV~zhAziHy%)z#GK<><-v6i0Lh9zHZO~9&c z4Rww|0~;rEjG&1NF@V%#3|4xKomfAp^BL4xMJ4qZ_+Avtbq36_Xbgp31Nr*C7&7HD z8Q$)nT5BV7kRE7acTexN&~m`O7KRpAZ)ocrhydW=SGfEr25K_Tv5-~(@W2IbfEoB$ zus)opd;CBgufen4HTyxC|1Vuw-n&eNgL{RC^w;$JV3DZA??HeYF2pvav9U23`~C2{ zR0n3@U^GW}-#*>G>$`YXg^CpW_A7!aAdHVYcLVp3A9`Q}`I)W@^@s0!Z(z(HuQMnY zT&X*v-Wqw5tM)&xTfNfpisUpoY2bv^?3aTHGyQ2&J_t*n?D31_v#B6EzU4o1-|nAO z{9#fU5fKIY_Tb7iySPHRM*8A~leDgE)lMp2tdYPfUMkWKoUtBYt8i{_Iq=OIw?IZq zMX`ReYxXRn)lcnsU0$Lxn+kR_q4JVSV#=`%&-n(VW?^}bgZx&22`E_>lScwCGDc|K z3awa!S<`bMn7?nejFSUiD}{2_xJ5DyC$Gmhy&(7P{+-zNvi3e$|73ZZ?-mR>PId;B_gQ1LvSW;s$FIX8SkbFq zlaglIrl@x26S@UX5GK&*hGLhX2~-I zKPV8CE{NZ5OGC9RuRNK8#T#YK;ui=9TnM9ZGRCw9lat$D@dAZF-#*3^`ze({{js=3 zVcDkQ(N45U?nW6TbJRRbf3Wm{Or<}CwCw7;m~9vLPZsgouo3jN*i@~6_t~JT?K7M5FuUdvum~d3KG=y%gP_< z8CZtD;=ttvfd{W`u?GoUIwQ(w_5G(6t&$!;Si&DeI6FxIo5JOYmqM__ro;AWV7Q%m z?LplxT{|ZleL6#fX8v{iG%yUUcK-Zk@NlYaC3R!rfp>VTr4WEeCLs!$Sga^J*{-nd zrQ~gXK`LwIfyF;A@(@%($r@|Dh^naenGM0}t6q6&XGJMpM#zkXLLU}^1XtL}sh!J2 zyVqh!jUnv9yLpWkTPFbOpj?G)XV%!KmGLT28~3jc z(hvBRE1Q0ReHq8#lst|FF)pzaT6(rMYkh@XKcM%+ds##Ie?F8@r!!iJ!gD~Lmx|47E4#62-OGhe_&E8v`yA*&2?F(qi%&xr0xpvQW zUh02>@c!|3@Ul&}FwehdA8sM&=~KO{F;BkP2C$NS8^}EQ^Bb+U3es@p+m*ATMU3~O zKDw+;`uete7TdGOgY?&taQnC1gl)dya7p#)1?MRUSp#8cgW+=}FYrV3OrsYpMtP z9zof5LN|pcw!I>QkWxHl&;--q1Ejk{Xh|V?n=p69eRjezsB(E=wI)Ir6Pcst$Y{zj zFDGc$P6)s~vwNis(jS0|L@z6s@gD7Y7!0AWb~F|QVDW`V4CJkNeo=@OMrI(q*ZY=CK$JoEtE=rUSXLAhONY1f~ zr2uEKf1zB7_A1_Dt(oOvRD6OMiyvhr=KQS|{ z47uKHQC8H=r_lyFnPaH%Zf@1L()1YG`mA02@>}73?DQBk>{6fvzFQLvDC~sBV5Kl# zqeyofsBgXEeh&2Js{46rj4=xA2hTxC{&jT$1KV9-378Eg1Px-TE_}GQp6%PW2aKj? z&z{{6@8@&3fc^F1d@aOZq~gc^Ftu;D1)w8XIG++8@uUO1@p7m?DD&-mIlBa&qu2Ot z0nC|-@_eDwB;uQBtHrnhgM&U!@B65R(=P~E`4`r|`{l_g@~{qrBBJQFM-lA%@{1K$6vZ4M*2AA+9myr+kqP1!UFd9|D{=) zg*8zYkq@49DHM;|f-fnwRlXU6Qz5y3)t`Km?2&VCvK(L&JTP?XCcVDM!n~6)VkST&Bjr<0 zV?xBme=`LE(@#n{rJQHJMSB%%#w3!;GI!3WPnEYae2 z3I|0mIvSHwE9*^_mRy7x3BVNP4fuwq^`V)NJ!9y!E9E6JfE-x;I27geWvq;FIWw+C{v^tH4y=02a$$%Qg}rb79%Z>+0(M5szQOd_JV{m(P8KL+l_9;G z85JeJAHQYM!F4h$Cp@$gvXT*VZjh53PKfrb{GF%+3yPT#%&_mxM^Qf7fr{@7Mh`9D z%)+V#%s!adT!e)tJ4t}0(4u~tWeu%l3t&lMCbTHZoqMCaL;%iSq?JBl&4d;M2jBUN zyhKa+?D5uJ`paIb{oyDt6BF&b@SzAZ-fKBbW{Ds`Suu^ea!a*s>EaEa`hccZs$*oCnL5Z~whT z`Vv?1=(ml{9`RH73}3s)ypHO_e(vHJ(N9~G65o9muBwh&FAULo_FK;c?+1s&kNGuF zK2tV;CF2(_^8L`!nh2E*-+a17TJoA)_B+M4Of5EXY*C2%i1DId7#@%U^C0>&E_PGc zc5# z_D;M;MutHX7IPQv-+tN7ThZ+n08Ev?=S>-weW%qzlME1sf2zHra_Ca;nAGYqF#umJ z@mlX6f`u&o!<)$vSa;qqUn^H+Yx(I5t(LU&)v(Hb=x=C$L30~S?uD=2SQHPso%s4+ zo5i7g>w8viYZE_y-d@qc=gk}yh}?w%EE{QTHjJ%=APm zzcl5Gx@O!?L6~f>P6?BOZ9FMO4(9e=Abg6HrGB@ee{W`bUV*T%?sNDpS7yuU1%; zny0m{(IdY1&sNF46fCW(ToD9jXF<()`XbB)UMp)dyPSo>%1q9cIR=$v6uUXblBrQ* z(lBi-_%{G$2!gTdGszJ3Wt1y|YV3sb8G;BX%+p{DG4oJYle}%39cWk&K)W(Uo5S0s z<8m*stJup}W)`*-*ObzcK=VioC7QaIU@5H@+JmK(dz?_`7~5^;7I*hh9k9d z{+K&koAaB6C5w_`C8z-N0^N3!k;^Eo7iTaI4#%E2VrqcP~+fT@A@nCu*yPK8x%`xzOZRZ$k zpL8_GuzJ?Hc%H^8YGkt%fZ1TeazY_+ldh4?gseJuU8eQfWWjn6<8m4tmfz^-6 z(_Eh&JV_fv8^iIK277(HZhpD;O;@;PeHQC5-8XRUj51=@^_DDvGC&yq4V`ki&mHR_ zxGv_r*GyVa?>Jv>uBURI`KGNUnT6HQG3d&{`5fas%Q=SGbKE$mpWAopF#_j&njYh2 zA7f)MJ%*M)5pvC&<%(>0W>Q;vQuaMqM3>)z-=kN;lLO|fLg9JV$1&DOD1ZNkMpfT3 zEU&7nx@rIZ{XvH0p=B2U5{Chrc*DtEXm}HmrUkmNYp^eCIIj7P&SuV>IRvZ?193hR z&v+Lg4BKU8xD~h=aeJ3kMgE2j8&2t-dK*myDF;(NuO6~C6C0}clB_q-*o zPD!6fg)1lEXJNgrEHbIcwQ}L0k~MVdCqRQ%AeFha9@q@wgk%)&e5zSTbtT*qDX1vwxi!gkM!-(WyGT2gVvCH9vJV-DC@2BZZ9CZ=N-ea_Mn zK|N>G`M1h4Q;SIisTPSGP9HuU_hpF)DEtYK;5lVIn=*KU7(Vk_b$gF(*-wmH`~|Ul z*)L^T=j5dbt_RYGP4j{)B18i$d`m%9NhLC6;MfbGAYLT*t^QGYR)=p)>ka1L*8hA5 zaZZ(rDk|k#k=JyyLCQ=DDPSjD{3TPrp1e+aQ!0-rPJmJj$H^<*1Jq#h%7qUqD$Hca zluISO9@!MQ*s|sMhvc^+LYd`?3<@k)YSPBGVeG=snMLJ0M*z;a#dpgI6zMYw>L750 z3=DC7l0`eLY3h(KL^YG%6DvZptoBJAhm%*bC~(n(mOk`Xn4U8OObaYmF`%L^ zm*t99;S|=X5wov1i^_K{DSen2b-`x@!AHD*$16VpmHh-sVM-Pg()v~xAJgdIQFrNT zg5S!@l}ar@VXL9+r_kb#RujR5-%44!zK(w2i=Zbr6P6*mMj@+9UHNIT4dsf~dSrG{ z<%*yrDo`mg2}wxnJ(iQ~Jd`O?=TnwC?0dL~OS)fL`n+vJxBbIgW5wN%HcNL7e_Y-s zmVwn^(c~z&G>DLN*5z0b-FX}fD_A(Ca`Ivr81V+tMCa1<5^^O`0HENiX^fX{pd5XQZZDEw0;@jiWws#C1rkA ziZzBVZ*+&C#4znm@F-nMNkg)!*>fNq~w3ms{rP>_3IXN+xGx`K!wN7JSd<*HM`-E zR<1_F{RGQZEy@)^LaYNUpH!$$&WS|*vo2RTnUUh5PsNBIJqMaotjXT_f6an)@iRt7 zVJt{0ZXr&?2m3m(bdd%(8v2=UBRl~WcJlCzXs`a*EL|B;q5B4?@-IYtH9Rvy#G{QM zn1?Pg7;h_*N2Un29Zb8KY=uJdj2E2dw9mc_V3MawOT<|y$f?k@Qmj*v!v(eqxb@o(Sg;b7XuD+}!L-pg_^A1xF-xXAM{rsr`ZfwJlY>bguX1)3+W(y>|7V(; z#gI6Az(%k*L%DwUWzpg=+D-yx-T+ev7r>XGy&46DTpyMzFaZ$s%x^=MAo_(SXyso3 z*O`f4=}1e~V9FuJ!9IIE+75nw)}K$OXPQO*p*cs_D?dTs!akdB6n^zG!3Aw#$BPm} zG9tiU5FyIJ%CPNNyX;?B&&ZZ>2K^1|x0R4ynsuE03avA*f22uVgl{zgu0ja>YlKqd zSW$;q4ObTgHKz9y;>HW21;-3MEuUS&KD$F~Jfx+EfI;?yRP^?RqNfh!iq~1L*#C|g z7$MFFMfX3}nx|E-bi54XCR)k{6Sl1!S8-%PHwkxIxT$e_j&Z09bBxQ7Rs!1W<{0dE zfApCcl&cm|Qsoi918DS>O>L6Od>G3WtamvU+<|h%aT3RZWTN6Zx-&2n&Sw;xij%gL z`Mv}ST>|%*UcT#CgG(R13y1RnS{xJvfW~xjz2-@{VWY4goNeNQjpx-{I7#aOfZ7O} zB)FL_1z3g%pwbKH7;C~b$N1VcF&Ni&NQTS*ybqQLtf?%X5{B8VBTq?Jo^Xk7VTIng{`^bP1s>eL2seL57{s2tu;v z!Nn!#JZdZ`=dLi+kYhmr66l_ZLU8xk3-7Xv5_9o>V*HXX0=y0b4$S@bz4ZsUV$7B9 z&0;aH^oCjaThg>sAx(fL-HlLaG{7UAP2-h5=r}Ct`&r$2m;{YsE;4-^7*$4f$ zSSw#_mlmV_Hj^99kCNjjx{KO`zEI6w#}CowuI#fp{#uQGkl?c{xNYQE;E6ZP`$0Z~ zZrpxyTdernUs~i?|EmB6Pea==7i0H0%$di&ebgI8WEPT#uqL4%d?p0)%xYJx98fCUApHxpft1 zu!gx!wr5O3?!23V0uQ=2$G9yVuNXAWQS)!ZdUKgv`z9DHxE^D&4-97&Ioscn$R`>_ zaLsZ1OFxuGTy)K>%9UjNz#I%6m|T0{S{uJduY@ND{6|6Ic}9=L3Z-i{ltr6lHyjT)AgAi<>klU; zCVCJ~t^kA4;dX@oh4CK4F=5L)@O*+L%JA;1PzE3AZW;8JgK>y6$MC!!Jw!gQLz(G7 zIZ@ChW~UuKDzJ9q9_oXH{Rp+@sg?061?yT z7N+TIoQqEU86^V?V&AzrRxV(^iiML8!u14E_0z8UwmAIm)6$&)m5=-xg$mP=^KK5R z#NmC+cPeI1?^-TMgT=vXv6tPz7%#0n8Lt(KfId8_?58e$02ZXr$O%Dp@ewF+ecgvI zC>I_^UvN8=#AAHttaeD@W%y*<56?Lw4)$AwYwE9+?N6RB@2apHb*@Z}fuO;b&As&l|7v zSWR5nVO{A|@r-Z;G*CEswE{G-YaM&x=b#K3B&|7VMa%`460t$vtN%wUPb%D;4BAOE zIc4cL0Tg&fE?`i>sFaNQI63Jeu!>-ZU_yY!q|5Jzi<}o_dE(+&(ZP2DZ$sCf4XdCL zP$-g7B$x~wJx_v4j;{X)Kn)dG9NQ;<#`~B@V;0_NX*I*}D`4rWTsSycz~nu&%1cE3 zCP;u5WLAI%hGiLKU8L1J7lBx2`7;VBP{%B|Lxwe8Q^(4Jn8!{mJQ$8jH~M?0uv{rB zQ+Y!7FCEJFr|yfBiV-R+*k=E2P2hq@6h?NpFOC*pxHMXD0kx+A4NP(_6!*`3HBKr$ zx51j1K!k&50@E5FE5!dmN&88#Iy8aB;CQk1P#@xxnVq~ian)ooG%qAmIc-ZOi2 zr1;(~v67P84$#1~&Keyh{`_U6^?A)Yj@HL!7RdcEuYT}`SgAOmBAM(9RzijC@9&P4 z6r=xHuPK%^rE*|esciV>Cu1b|!4A;CXOVGd+ST8dU?D19x!|P0M*6hSjRdV*?C5p% z;YUL`OK{xDZLi8jW%{pFJ}mX&xFAkNZY+R3R-)JmXmM`UMjG#>GLwJ?3hRIspn*&i z6E3+|rn6x0YFS?i#0V6)TN*oGvQyYC;0E5;{WAn#ks*xYw7ufOIBAY6u~9 zWC|D|)$IS>6$={qHt}zOgem|=W%)9jA`{T`AV8>GD76DLFrAl8j}`;azB~fJDuJwQ zGtAnJ%;X61-J4^?^xP;sw+${TJiOgh`eVWMFQ`{!X`wp{0)w74QB=~6#!U;N1eqeJ zOt%6ws6Jb=URW#~8xumX7y%6wmMbejgSO!MMG0)9MW^ziYmAS_nXon+32Q9L#AOx$ z=U%QXlUK+*V&~soe>;_V1T;{nT)D>rgr~p9t^H^y*MIZ*STJd{Nss~;)!BELm8**Y zN+F=-WQoTT(7^Po*3k*5iSI#IQQt3!kV++fs}DP%f$v22i>L387e9y9<$L=(L>>Tp zdBuVKAYC)u1qPzq!Dv7?0(O7~#{11r#zG<5Cg@hF4geGS(dN%61T*~reI~6${}hDA z+IX)U$1GRB_-w3vCxR3RG}QXIz_c!y5Gno_ASg0VSOFT?Hg+lArUnA z?{@>g6`xHS`L6*myA8lHJ3s@&(j9{u3sR|1#l2GA^STl$97lkqi*vGI!ZG&f1$RgT zoKxFhm#haR05|Yw6ta}y)*M6s zjB{~+4}he3UN>=0=k5fZPC%QrAAl~pv#G)O-3-9Ydi6bwn+aOiTt#6#y18BcjCpY$ z0QKL;+?7ByJ3s^P<2d{;U*SBvMb5DaaOBS@WFdS2b4;%J?tsz5y1jv6^!E$~n1Jg@ zR6Y}6K(`XgwS+z#neWCdx>F>AJujGWjb+-^4@vM9K{hnL%HN}b*Yx*tT+M#ijs;U6 zJ{h>_}iKcn;ofMo2#&)PD<8t>^n4m}4x^nivrbLQkgq5TM6eJOr0 z4A2T8w@|va0aS1R=O13be*NpAXOHzAP=M#6QU4`=e6C+U;+ZGf+uN5zseLyaehT(q zf};Hn?(*17KB#vwON%-OCG<)v`gx3ZxdoeN)ivW5%J)wp%oKGV?>tEDhigmb1U$DC z@yi|v&;Jhge~(|_3==02_I7MW;O7%4;8SrQfg719H!tkmx${PR-=}fzP6opJe-}&@ z&u!hh^^ET(-H!LWJ&#i(y{EHq?`??dHdO|Z7gac?yUThPY2@na5AnMb_h3#I(6G)1 zkR}UYog(X4+`U4;3(`fc$a&tF{}=i8^2UuD8}&~@*&l&--GX!*SBNX|9-H-HKdk$S z+5JUCbfieggl0Sh*;ZdGh?J%1eb@(!;!~*^f>v@A(g7+u-(dIgdf%a`q66k)@#)Sc zG-h#9`Ami4kja-y_XxBoZ^59D<(Y_d`jZ-vJ4<%#X7@We7m1aMK1eGiE+zPc(kjj= z!=uDMABdF7nGLXzJqb!QQg+9~a)8#fWNe^S9WCc54`3m!7^q(^lvuaSGN|ugR9v(# ztuaY)zVo5(aH2JJ>9-_0xa{OE(Euw=gOIo(1@o?_0&CcD-E1#P^j}8Dv!;=%B9blw?sL zkcSg+POt~$&ctGfvDvdvAt@udkis~*h(l%yx-1~Vm)4YILm`sfPWWw)H8sh$g$rV| z;Bg{3SU_70YUn~Nw$TDnwJ~P*64Wqs>J^gWvXtctj0B{nQ{{>lp0o%fb!I3+_Jiry zen(WE*)Ph^pj-jfPQZjJR|GLo=}1cpr^1CHx@RE}hIOFk>bVEU9Yab|2Q-@BH%ncg0(mLh?U_4+ykc4-dX<@l-yqhcz z><2buv59ipyHH^ar;am6&6Q!rT7 zir08PaZrkghU3pr`)qwYOv4|(7$=zs*24PiXkiB|Lp;)gkc!dC!?m=g^ws*7n_xvc zeFPaNw6yEvQu~o;pFVR@jJRrcv{(gD2NgfXRhktdty9T>uwY`OV82FT+&{k~R-`4_ zk0r;zVw3<3S}2oEfr_UFSdX&bqqWTR+(>CzO2rU`wBJi-dcX`J4^98^-uteKg|fCo zyafu;yQLKgws1qrECRB7sP>^kW-MKq1>JE4p447pbf1;)Qi!CY1EF zJa-}lq0UC#=7Qj9Sf^XL2Vh+6GwGsf(1eR5-6iuu`FbTY5Bux^0E%_j-4e%w)N#aT zgf0GDh5h`mze{!1loU zsubmlX;tNlN@tcY3fVtcu9O=XtF%l9Bg1nT3lhk%5r7>k$w+}qg$&tF&hw51396tx zczvum3#Ju2=?mtR@7xp%fK><5+72*mhos0Sh=J@Vv`{03`d~1IQ5H<3zhTs4FaYSK z4KH`vTdt;|oCKppSNBdp9-fbK$ab{=cJIfU)*0IQz zfqpR9;w?ec^{59d0|e>>qeNH9p_`_WGR&GaB*l=vAeEuTZwd?0=fVX454r(k!R=U2pm6+dCj-Zv@10|8?baM4uZwexC75Hd4-GcQNX3}ur?*x8o8@S;n6C@*Y$vQ2yq7Lw z*l%+lblhZoy&LtIadIAUDHOj>gVw^d3`;W@F0kMVxW07_6{%(etp z{J?pW3YeM&oP)bDF)q8$^*M$< z4N>s`+Ijny=sqEKO!|ln`-$1ff^jFJ?+!(FV6B+npAzbN^S`}d?45{%ZK#>BUfsMf zMv!5N1_?VbcP*;yoV&8_6Vx{?w{y-!FracPVHPLPanAc!fEs8x@E+J-ICrgAb5}4m z&{ZYJ*lO;2H~Qksrg;SW4?D@gIvZI)$R=9}=2IFbb#%0%EkU`$x)s?Kg0bKlU>F#vT%tSZ5@dgDfaC zdZQs0+Y=g2Y3t3-)(@FJt~aYWhFlj!yX`;6;JP5@7yzqvM_8|<9wVc(?+i7*aOpAF z9;FPLAWC60R0X4q#+tLzg)+Z6*=pIAv0SmfbX7QKXC81p+bz-0F=G2!vyr&2<4unt{;th5PW%t+c+(+M) zp~$`g`~Skvr+L8pu0LX&HU`^f`i4vNy;1eR%gJnL_W&sH;pFg5ty?`7uDM-jGtyz5m+*Q@FQc>doD3JUH%dGe&1`9vYidk8aE zg;86Cy%G8Pf;v7Iw=ci;N=FCtzDnw8B^Vg z#ZmMbIPGEvAhy=F)`*zsXnZU8;$>P{2i$yr=0|&bo9lI;si{@O!2!3MY4yH8n#D+0 z>wstkmMlI_xL2x#Xa;?$tOG8mwY9Ac<%;cXn=Aph~L=NWWVj z4+bP$>vONNvJBKWikQTNu=Inj&oKZ7!MTz!A$ zV|!bBM6}CoYYTkm!~lum_P8BjE%I`^ny*Pv&R{|yB3$eTTeuz)-Gup&yYkKMgoxGmJos!5s!Jc%ipT9ISK8R)SJ7N zR5=C)a1@{4-F$7sSQzefu!QMaQU$S8ZHUj!IGMUWtqu5A?!G_ERZCO{SQ}i-0HoE^ zOtNHm(@HbO2xuVO%vX*pJEB@SZE-mRFl}|Y5sXIhk8f&ob$rQk)f(T5a>Y4@ds)yX z`e0qW5%X;K+AF5DwzV&E)!lOC0Rav0^&g6I@LQy%PlCB;@2Rq zU*U(s%?j=*!R9Ia_*}w=X5)7oF6-wjgYoRcIPX{x??wbBK)~!>sO;vC&*<{I;NGAD zCG>kxvOk7^Ut(Y^^#2*hmtX=}0tQ%g&%zV#2%~WrX>+ z89y>6EJU7u8vFcigf>fvE6%fg1i;6@(ol-`d>Gdr#gFA@A{Jq`;@sZ=Y}kfVdHCIm z^LO&P5UB*Rgd zqeqXz$99xw#E22DrZpVp3UP`70|t09GlQ6CIC}HWKq#-CNfRfb$#E|WcI?<8^E4@` z>qy|v6l#0r<>jKNsK_&M;zainim1a;u8to+4%B*wXXMC{uBUbE*s)y5HfB$kkMaH@ zH8s_PHp|tt%5pWy-ExKTgg_r4`uF!?DZBjM>c*Oy8gcUENzdfTlU#j&wgGIf;BHJk zs@q$nQvlQ}e#~#l=rg<-hgAy;n{|T;&3#^q4| zxB&w8G5e6c0w7!e0J@_clg5eYgg8&Gc-{8>)h+GqVAOE%t#(J<=s8>#AJNhtJX)4j zN|cRz1zw+=(EwL|QJy1ZpkN9jnB$6$_Es6E|5AP6jS~hmc@CDwMYMGUjTVYD02c8V zEUi;B8$@MOj3>X^OBEXUSl<}{?2*=XZ(8lsFgLx~Gj7WcsGi*|SNZYPo{H!OiRx%; z*1m@?fg$XWi8U$)04dxvxowDNcQNR9f(YAycH}GBD*#-!4Lxx{qvuF@d_;3w&}d~F zNJU~ajo55tbZUc$jO*|mN<1qgZG(Z5$6MEJZZo|^z+rT(#@I2TZlLFIpR*CI5iE;n zlL5->szkvEhi&=Pnk$-bt@ioE#Ie0{ zQm#fMH-L4<P5(lM(iOZ}{t>OuOFfUVMv_$e$duYdv`mX&8y;$?vY7i*wvv2QbF3 zkbdQYBmm5y!h=QOkI3Uv-1kSEOUI9u`3o30d_jfLZ}ILGi2Gsy40fpV#xltB2sd3_ z*Kd)gXK<{*43!9X3CaM$6Lgg^78?axQt|Bew_@T5zybKiYfbG=a;bQBJFTq$ROq_>tyr$8bY`3FmH^O0pp5HjWw|0q zBsrPGA$R1^p+l~JE2hi~>=JGQMW}doyC1|DR<EL!+S+3Xz z0x;!Hp+YPKw^EVqc3N3qIc8;F;Fg4=AH-aMKpEHHpK-cft_T*ZtE+Q8tt?l)bBvGg z9HSAeTD@}&Z7kS3$8c{=fPe<*l0{LSxpIy!0t*kkBkA!;iLA^Q<3Ni|`u41G3#E&{ zfc^u+sszl7GYg6WE~yiA@v!v3ZqW#!1m$N#hKs9G($wXEEddSDqFH1_&;~3}_Mhqy zuWV|Q6z0X1P;}tE;_+I;U}rINbddh3HpRtv~IzPd5rn5AXAx z`&aH*G1bP^2LTNPb7Y@7XV4_5L% z;=2p+Qm95-J8rUcc_UAl{M!LQLtImH(6oL6?|;JUPT~s#28#O!4mOERJ4HYPm6%rF z>U3#`cxgkM*nFfzoGFFk8ATulI_E*@np?9gK}SChZkWuZ849;zlk!TSLCMigaKpG2 zRPLvsE7@9C zD{epDX?B)vf-G0fk!_+VzDBgvG>J|3|Jy3+py#tM9w$cLIvWfEa7~1t)%&xJ zlI;~-J2t?zBeZ=oZn}=>KX8<6uedb|01bj58MAmh;QsCGu}yG6$8vR2((Uv9$Y_=; zxS)f3*MVa$kmXDtFBQ*`03GoCDLa3@Ow^tz(+6?9PwMztztmJG_b(P{Q-?@ELkyIn!P={@pUM*}t1D$R7bNu)PYfSzjMDFTpO^%N z!*LN85vXRUsP%}KH@3mGTe~<8_YlOpNcU58!wC0NbR#u)92y0K5YP}U8cf?3&K1_} z>kw~jZ<8(_%e{}KOT=8bq&RvSCOXicEFYA*<)MaB4&#$S8Xj|xP;J^L*LXP(v3qF;*E;& z2l5X|Y827Ba<%I>D@4r^^vzw6*yKbp=XalycTz!E-x4Xx8#RD~K03MyEiKtu zR=Ccl&_zgMN*3HhOcvSWE)=nef$Nl0V5?kI$2|2fbG*N)u3RfuXIQR^4I5AjyZ`_| z07*naROM=qQ%>`))!QX?f?6VF^J>iVb@I)!>*blG8_7cMA*5j_G-`X z-xO5`tjBM54~T|~lX;KcEQ4e<2j+?0y&uFi|5E!wq@WAW#G=ssxGj;lqTwsR=0<=S z0$SSb+qZMH_&r$Fv***kiVzQD|5x~-*$Y`d4W*ni-7LoB^fLx9gNiUq?YOn&yWl+z zAU=Jq=+3)1PTH|!$C~k506@p*@cuu>FQ8?@cQ}j)e}wH|T>qKl$lVY43eu2AVN-BqW$YozrbMHzZS3&3%A-Su@oFay)Jtg=GfmpLfpe5A$npWkc~|9HDiDiHPWNh8~nB_90R0d{B? zm(Pe2-@HCX#0MuM5Ck0@eEZMRzr8+A?o$~@#TkDE`&Nqy7vCfLq*{Y9)csUs=WYBq z6mIXTQ=MDX2`bO|z)=Br*{VgrSi3*vQYjC53Cg<&%ad+96c`}T(A=_SNbdCSqARTbX{c; zEE$ZwRZv{v*X7;N(6|S84ekVYcL?ql+}+*XCAdR?AR)NByE_DTcbooSyi+wZ-#72v z^hHBT>;`Q_3 zuGjofuyrmf6e3>ec4=n4=S_N-JLYNtQzV%48Z_j0(^Yd3BhY@uCKi(U+;#)hSHPo; z%zobs1_J|fsU59%nW zLdO3Zkn-KYPvQein4+0r`KcEl%H5*;aP03qdRj~mfw>>0)^1r1djnI1!=A?DK~s=N z=&4gQ6*!cVVjbb zH7Ye!2>LUVlKN{rVmlfM|C}(yDz>@_hexhWPhwc5;|Iqs8{oU)dD0bE$TL|lpAlkF zTn~-|@XM|V>ON`i=}DW%7Qe?-AyJhrZ@!^FdJJ%?dzKk{%8cia!||7!e@EbehJpzG0uF*&T={F~u>XFMZaKIB{FWD>%qL2?mKCiDdG4|}I8o@2N zNGt~tLXvADn;G8HK6=Ysb>d%F;ntf?$N;;KEQ^h3@?!sXg}k47(Gqq{9sfVogm`ac zr4=Q}XgL|(EmanaUgH_!7(|w9X(d$7NFM40gom1e2MT(`B^gtc)R2M*W#QJkY6+#0 zJcw^(WwZ1D&>r7g2Fm*J*r-Kx**LXh2nlGqOBpSo<;1am;#>TF<)p6nn0nWE)j3|{ zuK|vpY9NiSr!HXr>p3G0s>W`mg%Uqfv!C#o)B$+vrmwn|D$){acr%o%wLWEEfNgk5 z;0AS;SIHV7_L%Ey{>-T;)^8feD!yH{sQ)VeQC>9<>-gSI&En~ia)dy>cLIth85^|D zS{tCL{Z<7fRPtw%+z%{X(b*QWJ%+3Eezs??G@{Q+UNIE9kkfodPI=^5NQ?fX!b>>@ z$?zN3ZIxpS)EDF`FvrpTq2`aCT02}yL1o^f{X|xqxF>@J4G9bOhD5KdYt_tNz0UMm zoVLtM*!lgDnzu^%P~%5{kV{AgS&jO~a77VXlW(^7t>B+7?Pd?G5{&E-|Cm2RsouNo zvs@+Dns#RY1(-mP;Rut)V}@MpMWCD$rC6rX&ax_jW=}0rO(FDr#HGG1Du!I7RoM0X z^Q+e8WWS-pX(%AaQzfydB%hHuOz^2_6Da zFm2_B+NtLBpox||t>^-n{;uJtO)F_Fb2D9S3y}BC!g1d@bY+3MSQJ)n`448`Ey*jA z_A6#x>kqx*Z*6UjIjbz0rGr-ZI&GrAgJ+2V!Y!$W z0y+%_%ri{4GR3j19EGWIqiH9R*PGtV_XQGk&;v%%1v51&WL@q2B&)UB%JNTm=l!V8ua085ORx zL`1Q!GwQ&mK__&#Q1}t2Rlx9bv7*`mw!BEGtF{h+XRYDvP#~XR?aQCKgrA`RU=Sg= zKu5iGR6hgcU$ufb5*NoHUI z4H*%X4{9YRMU6j?Q~o#is@(`troTd2fr2^4!~CpsaL%-1F#e-|f=yh9AGHAVYpUjp z=agNV`ABxMfJp`^6p>^_DoWyV6XfA`v`~QpWotY!OmH}1PZFHzl`?hxDOxp3UvK;^ zyNw7Wdv}=&LGJyx3p!DwY(&Zr{FpHrAqFj&5;jTXUz^NwO?f^_m;cfuP*DK?jsTh@ z5b*Dsd%_qudr;koLn1MQ>|EWbRmv*Yvf@OSp_M_tdJPwkrP6tfFQ2Q?9{1!G!2G2S zxJ!{oxLtV+Q?AHAsu7n55FMvN8Ky<+#e$}louja~rkUAuo0G*JLJ_!iC z!4t;&BgT_ipJMSK+^cQZCtv(7eIe0!ztGL_`vW0+Ftq%Cd-2hA4)`(+Kb`<)dvU;e z&utU#NhV&YI>mu&BWg+MAqBeozeXyx34$X`*$X|E&5X;)py$J9CMoaWwpxw^AuDYUW24YHnPRX|1lJ%-)WbbKI@}y*QruX$hjgW> zF-l&W;8b4+^s!NBe=jIq&8qdIH%A^-wEu&a21i_=^uTODuve8=q{v7r)kZm9M;a@d zba1WDQ^&D?iWAFtoQQRemD0*hR+Z{UNd!sntq%_L8+iP7gSi$F10- z!nC>N^LaOs_D8|b=Xt9w<1l8!cx^&^lWikgg~TLzotD7^-O9HBC6X(nt{?2u(Dz)a zdS)Vq0|o9Mv^`+f==(tbSSNaZaj`2~s!^3J%+i|{s}RA~8!?Ml&$*fMsPoXbw>j`Z zxi9fpz+xCbquoUH*WSco&uhU`f z-^{9BK0aG?aLHbSWE)BHd2cGU3?*X&-0pT1ok{J$02H1<+! z`zCMK&o7p`R#sM6FFEHhoEl&P@Vuz0H@nn58BRD{S~um|7-FAwAW{menEyhp$&KM{ zRL4+h^r^Pt11yY>vI(y`MGP@)sLn@k0(Q{HhbM6Gh@y~`t2O04sh;+T;m1*Nv#3qX zKbwPL(1UuvgR?%B7Sm92Q^GR8yT-=$a#)Ca=TE_c$nWt5H9&IQ1`t^7`@eJ`oJdeO z89e1G;2%eGF>4C*W=cu^X54w~OvUJWU>Uk3NQDR;jdKVo^4zD2TdYD)eM_gyø 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

      From 4acfc21892511cda60db6a8a5c358dc10f317465 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 22 Aug 2023 08:52:30 +0200 Subject: [PATCH 067/133] add mulled container for crisprseq_plotter --- modules/local/crisprseq_plotter.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/local/crisprseq_plotter.nf b/modules/local/crisprseq_plotter.nf index 30a5db68..2a368f6c 100644 --- a/modules/local/crisprseq_plotter.nf +++ b/modules/local/crisprseq_plotter.nf @@ -5,8 +5,8 @@ process CRISPRSEQ_PLOTTER { conda 'r-ggplot2=3.4.3 bioconductor-shortread=1.58.0 r-ggpubr=0.6.0 r-ggmsa=1.0.2 r-seqmagick=0.1.6 r-tidyr=1.3.0 r-ggseqlogo=0.1 r-cowplot=1.1.1 r-seqinr=4.2_30 r-optparse=1.7.3 r-dplyr=1.1.2 r-plyr=1.8.8 r-stringr=1.5.0 r-plotly=4.10.2' // TODO: change containers container "${ workflow.containerEngine == 'singularity' && !task.ext.singularity_pull_docker_container ? - 'https://depot.galaxyproject.org/singularity/mulled-v2-61c59287265e27f2c4589cfc90013ef6c2c6acf1:fb3e48060a8c0e5108b1b60a2ad7e090cfb9eee5-0' : - 'biocontainers/mulled-v2-61c59287265e27f2c4589cfc90013ef6c2c6acf1:fb3e48060a8c0e5108b1b60a2ad7e090cfb9eee5-0' }" + 'https://depot.galaxyproject.org/singularity/mulled-v2-6de07928379e6eface08a0019c4a1d6b5192e805:0d77388f37ddd923a087f7792e30e83ab54c918c-0' : + 'biocontainers/mulled-v2-6de07928379e6eface08a0019c4a1d6b5192e805:0d77388f37ddd923a087f7792e30e83ab54c918c-0' }" input: tuple val(meta), path(indels), path(substitutions), path(reference), val(protospacer) From a6cfae3ebde3b9f1d3e771664683da76a6bf8b67 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 22 Aug 2023 09:19:37 +0200 Subject: [PATCH 068/133] fix left-padding spaces --- bin/plotter.R | 220 +++++++++++++++++++++++++------------------------- 1 file changed, 110 insertions(+), 110 deletions(-) diff --git a/bin/plotter.R b/bin/plotter.R index 883b2105..33a008f2 100755 --- a/bin/plotter.R +++ b/bin/plotter.R @@ -547,119 +547,119 @@ if (dim(data)[2]>3 && length(checkFaulty) == 0 && length(checkEmpty) == 0){ ### system(paste0("touch ", sample_name, "_delAlleles_plot.png")) } - ######### Low variability or top variants plot - wt <- data$wt_reads[1] ### 7299 - templata_based <- data$t_reads[1] ### 0 - total_char <- wt + templata_based + dim(data)[1] - - delCols_indels <- data %>% group_by(Modification, Start, Length, ins_nt, patterns) %>% dplyr::summarize(freq = n()) - unique_variants <- rbind(as.data.frame(delCols_indels), c("wt", 0, 0, NA, NA, wt), c("template-based", 0, 0, NA, NA, templata_based)) - uniq_indels_sorted <- unique_variants[order(as.numeric(unique_variants$freq), decreasing = TRUE),] - write.csv(uniq_indels_sorted,file=paste0(sample_name, "_unique-variants.csv")) - - # Check if there are enogh indels to have 5 top - if(dim(uniq_indels_sorted)[1] < 5 ){ - num_top <- dim(delCols_indels)[1] - } else { num_top <- 5 } - - # Get to variants - top_5 <- uniq_indels_sorted[1:num_top,] - - top5_names <- lapply(c(1:dim(top_5)[1]), - function(i){ - if( top_5[i,]$Modification == "del" ) { - return(paste0(top_5[i,]$Start, "_", top_5[i,]$Modification, top_5[i,]$Length, "_", top_5[i,]$pattern)) - } else if ( top_5[i,]$Modification == "ins" ) { - return(paste0(top_5[i,]$Start, "_", top_5[i,]$Modification, top_5[i,]$ins_nt)) - } else { - return(top_5[i,]$Modification) - } - } - ) - - wt_pos <- which(unlist(top5_names) == "wt") - if (length(wt_pos) == 0){ - cols_list = c("#bebebe", rep("#9394f7", num_top + 1)) - } else if (wt_pos == num_top){ - cols_list = c("#bebebe", "#9394f7", rep("#9394f7", num_top - 1), "#1cf453") - } else if (wt_pos == 1) { - cols_list = c("#bebebe", "#9394f7", "#1cf453", rep("#9394f7", num_top - 1)) - } else { - cols_list = c("#bebebe", rep("#9394f7", wt_pos), "#1cf453", rep("#9394f7", num_top-wt_pos)) - } - - reads_classes <- c("Other alleles", "Top alleles", unlist(top5_names)) - reads_counts <- c(total_char - sum(as.numeric(top_5$freq)), sum(as.numeric(top_5$freq)), as.numeric(top_5$freq)) - reads_summary <- data.frame(classes = unlist(reads_classes), counts = unlist(reads_counts)) - reads_summary$parents = c("", "", rep("Top alleles", num_top)) - fig <- plot_ly(reads_summary, - labels = ~ classes, - parents = ~ parents, - values = ~ counts, - type = 'sunburst', - branchvalues = 'total', - textinfo = "label+percent entry", - marker = list(colors = cols_list, color = "black"), - textfont = list(color = '#000000', size = 20) - ) - - htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_top.html")) - - ### Logo plot - all_each_logo <- list() - list_num <- 1 - sel_top <- top_5 %>% filter(Modification %in% c("del", "ins")) - if (dim(sel_top)[1] > 0){ - for (i in c(1:dim(sel_top)[1])){ - if (sel_top[i,]$Modification == "ins"){ - selfil_1 <- data %>% filter(Modification == sel_top[i,]$Modification) %>% filter(Start == sel_top[i,]$Start) %>% filter(Length == sel_top[i,]$Length) %>% filter(ins_nt == sel_top[i,]$ins_nt) - } else { - selfil_1 <- data %>% filter(Modification == sel_top[i,]$Modification) %>% filter(Start == sel_top[i,]$Start) %>% filter(Length == sel_top[i,]$Length) - } - s <- selfil_1[1,]$Start - l <- selfil_1[1,]$Length - if( s > 12 && (nchar(as.character(sread(ref_seq)[[1]])) > (s+l+9) )){ - ref_splited <- c(str_split(toupper(as.character(sread(ref_seq)[[1]])), "")[[1]]) - sel_ref <- ref_splited[(s-10):(s+l+9)] - mod <- selfil_1[1,]$Modification - if (mod == "ins"){ - sel_ref <- c(sel_ref[1:10], c(str_split(toupper(selfil_1[1,]$ins_nt), "")[[1]]), sel_ref[11:length(sel_ref)]) - } - p <- selfil_1[1,]$patterns - each_logo <- get_logo_top_vars(sel_ref, l, p, mod, s, cut_site) + ######### Low variability or top variants plot + wt <- data$wt_reads[1] ### 7299 + templata_based <- data$t_reads[1] ### 0 + total_char <- wt + templata_based + dim(data)[1] + + delCols_indels <- data %>% group_by(Modification, Start, Length, ins_nt, patterns) %>% dplyr::summarize(freq = n()) + unique_variants <- rbind(as.data.frame(delCols_indels), c("wt", 0, 0, NA, NA, wt), c("template-based", 0, 0, NA, NA, templata_based)) + uniq_indels_sorted <- unique_variants[order(as.numeric(unique_variants$freq), decreasing = TRUE),] + write.csv(uniq_indels_sorted,file=paste0(sample_name, "_unique-variants.csv")) + + # Check if there are enogh indels to have 5 top + if(dim(uniq_indels_sorted)[1] < 5 ){ + num_top <- dim(delCols_indels)[1] + } else { num_top <- 5 } + + # Get to variants + top_5 <- uniq_indels_sorted[1:num_top,] + + top5_names <- lapply(c(1:dim(top_5)[1]), + function(i){ + if( top_5[i,]$Modification == "del" ) { + return(paste0(top_5[i,]$Start, "_", top_5[i,]$Modification, top_5[i,]$Length, "_", top_5[i,]$pattern)) + } else if ( top_5[i,]$Modification == "ins" ) { + return(paste0(top_5[i,]$Start, "_", top_5[i,]$Modification, top_5[i,]$ins_nt)) + } else { + return(top_5[i,]$Modification) + } + } + ) + + wt_pos <- which(unlist(top5_names) == "wt") + if (length(wt_pos) == 0){ + cols_list = c("#bebebe", rep("#9394f7", num_top + 1)) + } else if (wt_pos == num_top){ + cols_list = c("#bebebe", "#9394f7", rep("#9394f7", num_top - 1), "#1cf453") + } else if (wt_pos == 1) { + cols_list = c("#bebebe", "#9394f7", "#1cf453", rep("#9394f7", num_top - 1)) + } else { + cols_list = c("#bebebe", rep("#9394f7", wt_pos), "#1cf453", rep("#9394f7", num_top-wt_pos)) + } - all_each_logo[[list_num]] <- each_logo - list_num <- list_num + 1 - } + reads_classes <- c("Other alleles", "Top alleles", unlist(top5_names)) + reads_counts <- c(total_char - sum(as.numeric(top_5$freq)), sum(as.numeric(top_5$freq)), as.numeric(top_5$freq)) + reads_summary <- data.frame(classes = unlist(reads_classes), counts = unlist(reads_counts)) + reads_summary$parents = c("", "", rep("Top alleles", num_top)) + fig <- plot_ly(reads_summary, + labels = ~ classes, + parents = ~ parents, + values = ~ counts, + type = 'sunburst', + branchvalues = 'total', + textinfo = "label+percent entry", + marker = list(colors = cols_list, color = "black"), + textfont = list(color = '#000000', size = 20) + ) + + htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_top.html")) + + ### Logo plot + all_each_logo <- list() + list_num <- 1 + sel_top <- top_5 %>% filter(Modification %in% c("del", "ins")) + if (dim(sel_top)[1] > 0){ + for (i in c(1:dim(sel_top)[1])){ + if (sel_top[i,]$Modification == "ins"){ + selfil_1 <- data %>% filter(Modification == sel_top[i,]$Modification) %>% filter(Start == sel_top[i,]$Start) %>% filter(Length == sel_top[i,]$Length) %>% filter(ins_nt == sel_top[i,]$ins_nt) + } else { + selfil_1 <- data %>% filter(Modification == sel_top[i,]$Modification) %>% filter(Start == sel_top[i,]$Start) %>% filter(Length == sel_top[i,]$Length) + } + s <- selfil_1[1,]$Start + l <- selfil_1[1,]$Length + if( s > 12 && (nchar(as.character(sread(ref_seq)[[1]])) > (s+l+9) )){ + ref_splited <- c(str_split(toupper(as.character(sread(ref_seq)[[1]])), "")[[1]]) + sel_ref <- ref_splited[(s-10):(s+l+9)] + mod <- selfil_1[1,]$Modification + if (mod == "ins"){ + sel_ref <- c(sel_ref[1:10], c(str_split(toupper(selfil_1[1,]$ins_nt), "")[[1]]), sel_ref[11:length(sel_ref)]) + } + p <- selfil_1[1,]$patterns + each_logo <- get_logo_top_vars(sel_ref, l, p, mod, s, cut_site) + + all_each_logo[[list_num]] <- each_logo + list_num <- list_num + 1 + } + } } - } - if (length(all_each_logo) > 0){ - plot_grid(plotlist = all_each_logo, ncol = 1) - ggsave(paste0(sample_name, "_top-alleles_LOGO.png")) - } else { - system(paste0("touch ", sample_name, "_top-alleles_LOGO.png")) - } + if (length(all_each_logo) > 0){ + plot_grid(plotlist = all_each_logo, ncol = 1) + ggsave(paste0(sample_name, "_top-alleles_LOGO.png")) + } else { + system(paste0("touch ", sample_name, "_top-alleles_LOGO.png")) + } } else { - fig<-empty_plot("No alignments were produced. - Please check your files and references") - htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_Deletions.html")) - htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_Insertions.html")) - htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_accumulative.html")) - # system(paste0("touch ", sample_name, "_delAlleles_plot.png")) - - #Elements for dynamic table IF THERE ARE NO ALIGNMENTS - empty_list = list() - exportJson <- jsonlite::toJSON(empty_list) - write(exportJson, paste(sample_name,"_length.json",sep="")) - write(exportJson, paste(sample_name,"_Total_reads.json",sep="")) - write(exportJson, paste(sample_name,"_metadels.json",sep="")) - write(exportJson, paste(sample_name,"_metains.json",sep="")) - - system(paste0("touch ", sample_name, "_top.html")) - system(paste0("touch ", sample_name, "_top-alleles_LOGO.png")) - system(paste0("touch ", sample_name, "_counts_plot.png")) - system(paste0("touch ", sample_name, "_subs-perc_plot_LOGO.png")) - system(paste0("touch ", sample_name, "_subs-perc_plot.png")) + fig<-empty_plot("No alignments were produced. + Please check your files and references") + htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_Deletions.html")) + htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_Insertions.html")) + htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_accumulative.html")) + # system(paste0("touch ", sample_name, "_delAlleles_plot.png")) + + #Elements for dynamic table IF THERE ARE NO ALIGNMENTS + empty_list = list() + exportJson <- jsonlite::toJSON(empty_list) + write(exportJson, paste(sample_name,"_length.json",sep="")) + write(exportJson, paste(sample_name,"_Total_reads.json",sep="")) + write(exportJson, paste(sample_name,"_metadels.json",sep="")) + write(exportJson, paste(sample_name,"_metains.json",sep="")) + + system(paste0("touch ", sample_name, "_top.html")) + system(paste0("touch ", sample_name, "_top-alleles_LOGO.png")) + system(paste0("touch ", sample_name, "_counts_plot.png")) + system(paste0("touch ", sample_name, "_subs-perc_plot_LOGO.png")) + system(paste0("touch ", sample_name, "_subs-perc_plot.png")) } From 25141457a6e1c29e8a1ffe98ae1f7ac3045e8a18 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 22 Aug 2023 10:30:59 +0200 Subject: [PATCH 069/133] output empty *_delAlleles_plot.png image when required --- bin/plotter.R | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/plotter.R b/bin/plotter.R index 33a008f2..0982f5e8 100755 --- a/bin/plotter.R +++ b/bin/plotter.R @@ -647,7 +647,7 @@ if (dim(data)[2]>3 && length(checkFaulty) == 0 && length(checkEmpty) == 0){ ### htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_Deletions.html")) htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_Insertions.html")) htmlwidgets::saveWidget(as_widget(fig), paste0(sample_name,"_accumulative.html")) - # system(paste0("touch ", sample_name, "_delAlleles_plot.png")) + system(paste0("touch ", sample_name, "_delAlleles_plot.png")) #Elements for dynamic table IF THERE ARE NO ALIGNMENTS empty_list = list() From fafdc8265129317c2d58ba7b78c0bbf53772d5e5 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 22 Aug 2023 10:55:11 +0200 Subject: [PATCH 070/133] fix modules bwa_index and bowtie2_build after module update --- CHANGELOG.md | 1 + workflows/crisprseq_targeted.nf | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e31b08b8..48fc69c6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,6 +16,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Summary processes don't modify the input file anymore, allowing resuming these processes ([#66](https://github.com/nf-core/crisprseq/pull/66)) - Do not stash unexistent files, use empty lists instead. Fixes AWS tests ([#67](https://github.com/nf-core/crisprseq/pull/67)) - Rename process `merging_summary` to `preprocessing_summary` to improve clarity ([#69](https://github.com/nf-core/crisprseq/pull/69)) +- Fix modules `BWA_INDEX` and `BOWTIE2_BUILD` after module update, new versions accept a meta map ### Deprecated diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 15d870a0..8792469e 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -621,7 +621,7 @@ workflow CRISPRSEQ_TARGETED { // if (params.aligner == "bwa") { BWA_INDEX ( - ORIENT_REFERENCE.out.reference.map { it[1] } + ORIENT_REFERENCE.out.reference ) ch_versions = ch_versions.mix(BWA_INDEX.out.versions) BWA_MEM ( @@ -638,7 +638,7 @@ workflow CRISPRSEQ_TARGETED { // if (params.aligner == "bowtie2") { BOWTIE2_BUILD ( - ORIENT_REFERENCE.out.reference.map { it[1] } + ORIENT_REFERENCE.out.reference ) ch_versions = ch_versions.mix(BOWTIE2_BUILD.out.versions) BOWTIE2_ALIGN ( From a5553e59147d9c25e2cf68b9e921380c06cc7a32 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 22 Aug 2023 10:59:33 +0200 Subject: [PATCH 071/133] update changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 48fc69c6..9585c977 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -16,7 +16,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Summary processes don't modify the input file anymore, allowing resuming these processes ([#66](https://github.com/nf-core/crisprseq/pull/66)) - Do not stash unexistent files, use empty lists instead. Fixes AWS tests ([#67](https://github.com/nf-core/crisprseq/pull/67)) - Rename process `merging_summary` to `preprocessing_summary` to improve clarity ([#69](https://github.com/nf-core/crisprseq/pull/69)) -- Fix modules `BWA_INDEX` and `BOWTIE2_BUILD` after module update, new versions accept a meta map +- Fix modules `BWA_INDEX` and `BOWTIE2_BUILD` after module update, new versions accept a meta map ([#76](https://github.com/nf-core/crisprseq/pull/76)) ### Deprecated From 08334c0aaaa895494a4317c38afe6a1c016a7ec9 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 22 Aug 2023 11:23:10 +0200 Subject: [PATCH 072/133] output empty *_subs-perc_plot_LOGO.png image when required --- bin/plotter.R | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/plotter.R b/bin/plotter.R index 0982f5e8..fb540e7f 100755 --- a/bin/plotter.R +++ b/bin/plotter.R @@ -510,6 +510,7 @@ if (dim(data)[2]>3 && length(checkFaulty) == 0 && length(checkEmpty) == 0){ ### cut_site <- get_cutSite(gR, ref_seq, rel_cut_site) if (dim(subs_plup)[1] == 0){ system(paste0("touch ", sample_name, "_subs-perc_plot.png")) + system(paste0("touch ", sample_name, "_subs-perc_plot_LOGO.png")) } else { sp <- subs_plot(subs_plup, gR, cut_site) ggsave(paste0(sample_name, "_subs-perc_plot.png"), width = 12, height = 1.5) From 0d7aeb44288db053a787cd0fd9e7f33023372be3 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 23 Aug 2023 09:02:34 +0200 Subject: [PATCH 073/133] Update workflows/crisprseq_screening.nf MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- workflows/crisprseq_screening.nf | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 54a2d3b0..a037ad13 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -15,8 +15,7 @@ log.info logo + paramsSummaryLog(workflow) + citation WorkflowCrisprseq.initialise(params, log) -// Check mandatory parameters -//if (!params.count_table) { ch_input = file(params.input) } else { error('Input samplesheet not specified!') } +// Set screening parameters and channels if (params.library) { ch_library = file(params.library) } if (params.crisprcleanr) { ch_crisprcleanr = Channel.value(params.crisprcleanr) } From 6b75dd93eda477e3bee01a6d72e3439bce64acdf Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Thu, 24 Aug 2023 13:43:37 +0200 Subject: [PATCH 074/133] Add license --- modules/local/bagel2/graph.nf | 38 +++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/modules/local/bagel2/graph.nf b/modules/local/bagel2/graph.nf index 8ca0d84c..26b404ab 100644 --- a/modules/local/bagel2/graph.nf +++ b/modules/local/bagel2/graph.nf @@ -22,9 +22,47 @@ process BAGEL2_GRAPH { def args = task.ext.args ?: '' def prefix = task.ext.prefix ?: "${meta.id}" + /* + # --------------------------------- + # BAGEL: Bayesian Analysis of Gene EssentaLity + # (c) Traver Hart , Eiru Kim 2017. + + # Acknowledgements: John McGonigle + # modified 10/2019 + # Free to modify and redistribute with attribution + # --------------------------------- + + # ------------------------------------ + # constants + +""" + MIT License + + Copyright (c) 2020 Hart Lab + + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + SOFTWARE. + + */ """ #!/usr/bin/env python3 + import pandas as pd import matplotlib.pyplot as plt From 0ca0b702bcb35b0e97ccbb7e307548ad6b703141 Mon Sep 17 00:00:00 2001 From: nf-core-bot Date: Mon, 25 Sep 2023 15:16:13 +0000 Subject: [PATCH 075/133] Template update for nf-core/tools version 2.10 --- .devcontainer/devcontainer.json | 1 + .github/CONTRIBUTING.md | 4 +- .github/workflows/linting.yml | 2 +- .github/workflows/release-announcments.yml | 68 +++++++++ CHANGELOG.md | 2 +- CITATIONS.md | 2 +- CODE_OF_CONDUCT.md | 133 ++++++++++++++---- LICENSE | 2 +- README.md | 23 +-- assets/email_template.html | 2 +- assets/multiqc_config.yml | 4 +- conf/modules.config | 9 ++ docs/output.md | 5 +- docs/usage.md | 16 ++- lib/NfcoreTemplate.groovy | 16 +++ lib/WorkflowCrisprseq.groovy | 2 +- main.nf | 3 + modules.json | 6 +- .../custom/dumpsoftwareversions/main.nf | 2 +- modules/nf-core/fastqc/main.nf | 8 +- modules/nf-core/multiqc/main.nf | 2 +- nextflow.config | 13 +- nextflow_schema.json | 17 +-- workflows/crisprseq.nf | 1 + 24 files changed, 259 insertions(+), 84 deletions(-) create mode 100644 .github/workflows/release-announcments.yml diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index ea27a584..4ecfbfe3 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -2,6 +2,7 @@ "name": "nfcore", "image": "nfcore/gitpod:latest", "remoteUser": "gitpod", + "runArgs": ["--privileged"], // Configure tool-specific properties. "customizations": { diff --git a/.github/CONTRIBUTING.md b/.github/CONTRIBUTING.md index 607441a1..212cbdbe 100644 --- a/.github/CONTRIBUTING.md +++ b/.github/CONTRIBUTING.md @@ -9,7 +9,9 @@ Please use the pre-filled template to save time. However, don't be put off by this template - other more general issues and suggestions are welcome! Contributions to the code are even more welcome ;) -> If you need help using or modifying nf-core/crisprseq then the best place to ask is on the nf-core Slack [#crisprseq](https://nfcore.slack.com/channels/crisprseq) channel ([join our Slack here](https://nf-co.re/join/slack)). +:::info +If you need help using or modifying nf-core/crisprseq then the best place to ask is on the nf-core Slack [#crisprseq](https://nfcore.slack.com/channels/crisprseq) channel ([join our Slack here](https://nf-co.re/join/slack)). +::: ## Contribution workflow diff --git a/.github/workflows/linting.yml b/.github/workflows/linting.yml index 888cb4bc..b8bdd214 100644 --- a/.github/workflows/linting.yml +++ b/.github/workflows/linting.yml @@ -78,7 +78,7 @@ jobs: - uses: actions/setup-python@v4 with: - python-version: "3.8" + python-version: "3.11" architecture: "x64" - name: Install dependencies diff --git a/.github/workflows/release-announcments.yml b/.github/workflows/release-announcments.yml new file mode 100644 index 00000000..6ad33927 --- /dev/null +++ b/.github/workflows/release-announcments.yml @@ -0,0 +1,68 @@ +name: release-announcements +# Automatic release toot and tweet anouncements +on: + release: + types: [published] + workflow_dispatch: + +jobs: + toot: + runs-on: ubuntu-latest + steps: + - uses: rzr/fediverse-action@master + with: + access-token: ${{ secrets.MASTODON_ACCESS_TOKEN }} + host: "mstdn.science" # custom host if not "mastodon.social" (default) + # GitHub event payload + # https://docs.github.com/en/developers/webhooks-and-events/webhooks/webhook-events-and-payloads#release + message: | + Pipeline release! ${{ github.repository }} v${{ github.event.release.tag_name }} - ${{ github.event.release.name }}! + + Please see the changelog: ${{ github.event.release.html_url }} + + send-tweet: + runs-on: ubuntu-latest + + steps: + - uses: actions/setup-python@v4 + with: + python-version: "3.10" + - name: Install dependencies + run: pip install tweepy==4.14.0 + - name: Send tweet + shell: python + run: | + import os + import tweepy + + client = tweepy.Client( + access_token=os.getenv("TWITTER_ACCESS_TOKEN"), + access_token_secret=os.getenv("TWITTER_ACCESS_TOKEN_SECRET"), + consumer_key=os.getenv("TWITTER_CONSUMER_KEY"), + consumer_secret=os.getenv("TWITTER_CONSUMER_SECRET"), + ) + tweet = os.getenv("TWEET") + client.create_tweet(text=tweet) + env: + TWEET: | + Pipeline release! ${{ github.repository }} v${{ github.event.release.tag_name }} - ${{ github.event.release.name }}! + + Please see the changelog: ${{ github.event.release.html_url }} + TWITTER_CONSUMER_KEY: ${{ secrets.TWITTER_CONSUMER_KEY }} + TWITTER_CONSUMER_SECRET: ${{ secrets.TWITTER_CONSUMER_SECRET }} + TWITTER_ACCESS_TOKEN: ${{ secrets.TWITTER_ACCESS_TOKEN }} + TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }} + + bsky-post: + runs-on: ubuntu-latest + steps: + - uses: zentered/bluesky-post-action@v0.0.2 + with: + post: | + Pipeline release! ${{ github.repository }} v${{ github.event.release.tag_name }} - ${{ github.event.release.name }}! + + Please see the changelog: ${{ github.event.release.html_url }} + env: + BSKY_IDENTIFIER: ${{ secrets.BSKY_IDENTIFIER }} + BSKY_PASSWORD: ${{ secrets.BSKY_PASSWORD }} + # diff --git a/CHANGELOG.md b/CHANGELOG.md index 6f507b61..d48d4ecb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## v2.0.0 - [date] +## v2.1.0dev - [date] Initial release of nf-core/crisprseq, created with the [nf-core](https://nf-co.re/) template. diff --git a/CITATIONS.md b/CITATIONS.md index 287bcf20..9170aa49 100644 --- a/CITATIONS.md +++ b/CITATIONS.md @@ -12,7 +12,7 @@ - [FastQC](https://www.bioinformatics.babraham.ac.uk/projects/fastqc/) - > Andrews, S. (2010). FastQC: A Quality Control Tool for High Throughput Sequence Data [Online]. Available online https://www.bioinformatics.babraham.ac.uk/projects/fastqc/. + > Andrews, S. (2010). FastQC: A Quality Control Tool for High Throughput Sequence Data [Online]. - [MultiQC](https://pubmed.ncbi.nlm.nih.gov/27312411/) diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md index f4fd052f..c089ec78 100644 --- a/CODE_OF_CONDUCT.md +++ b/CODE_OF_CONDUCT.md @@ -1,18 +1,20 @@ -# Code of Conduct at nf-core (v1.0) +# Code of Conduct at nf-core (v1.4) ## Our Pledge -In the interest of fostering an open, collaborative, and welcoming environment, we as contributors and maintainers of nf-core, pledge to making participation in our projects and community a harassment-free experience for everyone, regardless of: +In the interest of fostering an open, collaborative, and welcoming environment, we as contributors and maintainers of nf-core pledge to making participation in our projects and community a harassment-free experience for everyone, regardless of: - Age +- Ability - Body size +- Caste - Familial status - Gender identity and expression - Geographical location - Level of experience - Nationality and national origins - Native language -- Physical and neurological ability +- Neurodiversity - Race or ethnicity - Religion - Sexual identity and orientation @@ -22,80 +24,133 @@ Please note that the list above is alphabetised and is therefore not ranked in a ## Preamble -> Note: This Code of Conduct (CoC) has been drafted by the nf-core Safety Officer and been edited after input from members of the nf-core team and others. "We", in this document, refers to the Safety Officer and members of the nf-core core team, both of whom are deemed to be members of the nf-core community and are therefore required to abide by this Code of Conduct. This document will amended periodically to keep it up-to-date, and in case of any dispute, the most current version will apply. +:::note +This Code of Conduct (CoC) has been drafted by Renuka Kudva, Cris Tuñí, and Michael Heuer, with input from the nf-core Core Team and Susanna Marquez from the nf-core community. "We", in this document, refers to the Safety Officers and members of the nf-core Core Team, both of whom are deemed to be members of the nf-core community and are therefore required to abide by this Code of Conduct. This document will be amended periodically to keep it up-to-date. In case of any dispute, the most current version will apply. +::: -An up-to-date list of members of the nf-core core team can be found [here](https://nf-co.re/about). Our current safety officer is Renuka Kudva. +An up-to-date list of members of the nf-core core team can be found [here](https://nf-co.re/about). + +Our Safety Officers are Saba Nafees, Cris Tuñí, and Michael Heuer. nf-core is a young and growing community that welcomes contributions from anyone with a shared vision for [Open Science Policies](https://www.fosteropenscience.eu/taxonomy/term/8). Open science policies encompass inclusive behaviours and we strive to build and maintain a safe and inclusive environment for all individuals. -We have therefore adopted this code of conduct (CoC), which we require all members of our community and attendees in nf-core events to adhere to in all our workspaces at all times. Workspaces include but are not limited to Slack, meetings on Zoom, Jitsi, YouTube live etc. +We have therefore adopted this CoC, which we require all members of our community and attendees of nf-core events to adhere to in all our workspaces at all times. Workspaces include, but are not limited to, Slack, meetings on Zoom, gather.town, YouTube live etc. -Our CoC will be strictly enforced and the nf-core team reserve the right to exclude participants who do not comply with our guidelines from our workspaces and future nf-core activities. +Our CoC will be strictly enforced and the nf-core team reserves the right to exclude participants who do not comply with our guidelines from our workspaces and future nf-core activities. -We ask all members of our community to help maintain a supportive and productive workspace and to avoid behaviours that can make individuals feel unsafe or unwelcome. Please help us maintain and uphold this CoC. +We ask all members of our community to help maintain supportive and productive workspaces and to avoid behaviours that can make individuals feel unsafe or unwelcome. Please help us maintain and uphold this CoC. -Questions, concerns or ideas on what we can include? Contact safety [at] nf-co [dot] re +Questions, concerns, or ideas on what we can include? Contact members of the Safety Team on Slack or email safety [at] nf-co [dot] re. ## Our Responsibilities -The safety officer is responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behaviour. +Members of the Safety Team (the Safety Officers) are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behaviour. -The safety officer in consultation with the nf-core core team have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. +The Safety Team, in consultation with the nf-core core team, have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this CoC, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful. -Members of the core team or the safety officer who violate the CoC will be required to recuse themselves pending investigation. They will not have access to any reports of the violations and be subject to the same actions as others in violation of the CoC. +Members of the core team or the Safety Team who violate the CoC will be required to recuse themselves pending investigation. They will not have access to any reports of the violations and will be subject to the same actions as others in violation of the CoC. -## When are where does this Code of Conduct apply? +## When and where does this Code of Conduct apply? -Participation in the nf-core community is contingent on following these guidelines in all our workspaces and events. This includes but is not limited to the following listed alphabetically and therefore in no order of preference: +Participation in the nf-core community is contingent on following these guidelines in all our workspaces and events, such as hackathons, workshops, bytesize, and collaborative workspaces on gather.town. These guidelines include, but are not limited to, the following (listed alphabetically and therefore in no order of preference): - Communicating with an official project email address. - Communicating with community members within the nf-core Slack channel. - Participating in hackathons organised by nf-core (both online and in-person events). -- Participating in collaborative work on GitHub, Google Suite, community calls, mentorship meetings, email correspondence. -- Participating in workshops, training, and seminar series organised by nf-core (both online and in-person events). This applies to events hosted on web-based platforms such as Zoom, Jitsi, YouTube live etc. +- Participating in collaborative work on GitHub, Google Suite, community calls, mentorship meetings, email correspondence, and on the nf-core gather.town workspace. +- Participating in workshops, training, and seminar series organised by nf-core (both online and in-person events). This applies to events hosted on web-based platforms such as Zoom, gather.town, Jitsi, YouTube live etc. - Representing nf-core on social media. This includes both official and personal accounts. ## nf-core cares 😊 -nf-core's CoC and expectations of respectful behaviours for all participants (including organisers and the nf-core team) include but are not limited to the following (listed in alphabetical order): +nf-core's CoC and expectations of respectful behaviours for all participants (including organisers and the nf-core team) include, but are not limited to, the following (listed in alphabetical order): - Ask for consent before sharing another community member’s personal information (including photographs) on social media. - Be respectful of differing viewpoints and experiences. We are all here to learn from one another and a difference in opinion can present a good learning opportunity. -- Celebrate your accomplishments at events! (Get creative with your use of emojis 🎉 🥳 💯 🙌 !) +- Celebrate your accomplishments! (Get creative with your use of emojis 🎉 🥳 💯 🙌 !) - Demonstrate empathy towards other community members. (We don’t all have the same amount of time to dedicate to nf-core. If tasks are pending, don’t hesitate to gently remind members of your team. If you are leading a task, ask for help if you feel overwhelmed.) - Engage with and enquire after others. (This is especially important given the geographically remote nature of the nf-core community, so let’s do this the best we can) - Focus on what is best for the team and the community. (When in doubt, ask) -- Graciously accept constructive criticism, yet be unafraid to question, deliberate, and learn. +- Accept feedback, yet be unafraid to question, deliberate, and learn. - Introduce yourself to members of the community. (We’ve all been outsiders and we know that talking to strangers can be hard for some, but remember we’re interested in getting to know you and your visions for open science!) -- Show appreciation and **provide clear feedback**. (This is especially important because we don’t see each other in person and it can be harder to interpret subtleties. Also remember that not everyone understands a certain language to the same extent as you do, so **be clear in your communications to be kind.**) +- Show appreciation and **provide clear feedback**. (This is especially important because we don’t see each other in person and it can be harder to interpret subtleties. Also remember that not everyone understands a certain language to the same extent as you do, so **be clear in your communication to be kind.**) - Take breaks when you feel like you need them. -- Using welcoming and inclusive language. (Participants are encouraged to display their chosen pronouns on Zoom or in communication on Slack.) +- Use welcoming and inclusive language. (Participants are encouraged to display their chosen pronouns on Zoom or in communication on Slack) ## nf-core frowns on 😕 -The following behaviours from any participants within the nf-core community (including the organisers) will be considered unacceptable under this code of conduct. Engaging or advocating for any of the following could result in expulsion from nf-core workspaces. +The following behaviours from any participants within the nf-core community (including the organisers) will be considered unacceptable under this CoC. Engaging or advocating for any of the following could result in expulsion from nf-core workspaces: - Deliberate intimidation, stalking or following and sustained disruption of communication among participants of the community. This includes hijacking shared screens through actions such as using the annotate tool in conferencing software such as Zoom. - “Doxing” i.e. posting (or threatening to post) another person’s personal identifying information online. - Spamming or trolling of individuals on social media. -- Use of sexual or discriminatory imagery, comments, or jokes and unwelcome sexual attention. -- Verbal and text comments that reinforce social structures of domination related to gender, gender identity and expression, sexual orientation, ability, physical appearance, body size, race, age, religion or work experience. +- Use of sexual or discriminatory imagery, comments, jokes, or unwelcome sexual attention. +- Verbal and text comments that reinforce social structures of domination related to gender, gender identity and expression, sexual orientation, ability, physical appearance, body size, race, age, religion, or work experience. ### Online Trolling -The majority of nf-core interactions and events are held online. Unfortunately, holding events online comes with the added issue of online trolling. This is unacceptable, reports of such behaviour will be taken very seriously, and perpetrators will be excluded from activities immediately. +The majority of nf-core interactions and events are held online. Unfortunately, holding events online comes with the risk of online trolling. This is unacceptable — reports of such behaviour will be taken very seriously and perpetrators will be excluded from activities immediately. -All community members are required to ask members of the group they are working within for explicit consent prior to taking screenshots of individuals during video calls. +All community members are **required** to ask members of the group they are working with for explicit consent prior to taking screenshots of individuals during video calls. -## Procedures for Reporting CoC violations +## Procedures for reporting CoC violations If someone makes you feel uncomfortable through their behaviours or actions, report it as soon as possible. -You can reach out to members of the [nf-core core team](https://nf-co.re/about) and they will forward your concerns to the safety officer(s). +You can reach out to members of the Safety Team (Saba Nafees, Cris Tuñí, and Michael Heuer) on Slack. Alternatively, contact a member of the nf-core core team [nf-core core team](https://nf-co.re/about), and they will forward your concerns to the Safety Team. + +Issues directly concerning members of the Core Team or the Safety Team will be dealt with by other members of the core team and the safety manager — possible conflicts of interest will be taken into account. nf-core is also in discussions about having an ombudsperson and details will be shared in due course. + +All reports will be handled with the utmost discretion and confidentiality. + +You can also report any CoC violations to safety [at] nf-co [dot] re. In your email report, please do your best to include: + +- Your contact information. +- Identifying information (e.g. names, nicknames, pseudonyms) of the participant who has violated the Code of Conduct. +- The behaviour that was in violation and the circumstances surrounding the incident. +- The approximate time of the behaviour (if different than the time the report was made). +- Other people involved in the incident, if applicable. +- If you believe the incident is ongoing. +- If there is a publicly available record (e.g. mailing list record, a screenshot). +- Any additional information. + +After you file a report, one or more members of our Safety Team will contact you to follow up on your report. + +## Who will read and handle reports + +All reports will be read and handled by the members of the Safety Team at nf-core. + +If members of the Safety Team are deemed to have a conflict of interest with a report, they will be required to recuse themselves as per our Code of Conduct and will not have access to any follow-ups. + +To keep this first report confidential from any of the Safety Team members, please submit your first report by direct messaging on Slack/direct email to any of the nf-core members you are comfortable disclosing the information to, and be explicit about which member(s) you do not consent to sharing the information with. + +## Reviewing reports + +After receiving the report, members of the Safety Team will review the incident report to determine whether immediate action is required, for example, whether there is immediate threat to participants’ safety. + +The Safety Team, in consultation with members of the nf-core core team, will assess the information to determine whether the report constitutes a Code of Conduct violation, for them to decide on a course of action. + +In the case of insufficient information, one or more members of the Safety Team may contact the reporter, the reportee, or any other attendees to obtain more information. -Issues directly concerning members of the core team will be dealt with by other members of the core team and the safety manager, and possible conflicts of interest will be taken into account. nf-core is also in discussions about having an ombudsperson, and details will be shared in due course. +Once additional information is gathered, the Safety Team will collectively review and decide on the best course of action to take, if any. The Safety Team reserves the right to not act on a report. -All reports will be handled with utmost discretion and confidentially. +## Confidentiality + +All reports, and any additional information included, are only shared with the team of safety officers (and possibly members of the core team, in case the safety officer is in violation of the CoC). We will respect confidentiality requests for the purpose of protecting victims of abuse. + +We will not name harassment victims, beyond discussions between the safety officer and members of the nf-core team, without the explicit consent of the individuals involved. + +## Enforcement + +Actions taken by the nf-core’s Safety Team may include, but are not limited to: + +- Asking anyone to stop a behaviour. +- Asking anyone to leave the event and online spaces either temporarily, for the remainder of the event, or permanently. +- Removing access to the gather.town and Slack, either temporarily or permanently. +- Communicating to all participants to reinforce our expectations for conduct and remind what is unacceptable behaviour; this may be public for practical reasons. +- Communicating to all participants that an incident has taken place and how we will act or have acted — this may be for the purpose of letting event participants know we are aware of and dealing with the incident. +- Banning anyone from participating in nf-core-managed spaces, future events, and activities, either temporarily or permanently. +- No action. ## Attribution and Acknowledgements @@ -106,6 +161,22 @@ All reports will be handled with utmost discretion and confidentially. ## Changelog -### v1.0 - March 12th, 2021 +### v1.4 - February 8th, 2022 + +- Included a new member of the Safety Team. Corrected a typographical error in the text. + +### v1.3 - December 10th, 2021 + +- Added a statement that the CoC applies to nf-core gather.town workspaces. Corrected typographical errors in the text. + +### v1.2 - November 12th, 2021 + +- Removed information specific to reporting CoC violations at the Hackathon in October 2021. + +### v1.1 - October 14th, 2021 + +- Updated with names of new Safety Officers and specific information for the hackathon in October 2021. + +### v1.0 - March 15th, 2021 - Complete rewrite from original [Contributor Covenant](http://contributor-covenant.org/) CoC. diff --git a/LICENSE b/LICENSE index 41427d4d..4de6f708 100644 --- a/LICENSE +++ b/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) mirpedrol +Copyright (c) Júlia Mir Pedrol, Laurence Kuhlburger Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/README.md b/README.md index 23db4ee3..d10e9a88 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # ![nf-core/crisprseq](docs/images/nf-core-crisprseq_logo_light.png#gh-light-mode-only) ![nf-core/crisprseq](docs/images/nf-core-crisprseq_logo_dark.png#gh-dark-mode-only) -[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX) +[![GitHub Actions CI Status](https://github.com/nf-core/crisprseq/workflows/nf-core%20CI/badge.svg)](https://github.com/nf-core/crisprseq/actions?query=workflow%3A%22nf-core+CI%22) +[![GitHub Actions Linting Status](https://github.com/nf-core/crisprseq/workflows/nf-core%20linting/badge.svg)](https://github.com/nf-core/crisprseq/actions?query=workflow%3A%22nf-core+linting%22)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX) [![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A523.04.0-23aa62.svg)](https://www.nextflow.io/) [![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/) @@ -29,10 +30,11 @@ ## Usage -> **Note** -> If you are new to Nextflow and nf-core, please refer to [this page](https://nf-co.re/docs/usage/installation) on how -> to set-up Nextflow. Make sure to [test your setup](https://nf-co.re/docs/usage/introduction#how-to-run-a-pipeline) -> with `-profile test` before running the workflow on actual data. +:::note +If you are new to Nextflow and nf-core, please refer to [this page](https://nf-co.re/docs/usage/installation) on how +to set-up Nextflow. Make sure to [test your setup](https://nf-co.re/docs/usage/introduction#how-to-run-a-pipeline) +with `-profile test` before running the workflow on actual data. +::: +- [@LaurenceKuhl](https://github.com/LaurenceKuhl) +- [@mirpedrol](https://github.com/mirpedrol) + +We thank the following people for their extensive assistance in the development of this pipeline: + +- [@ggabernet](https://github.com/ggabernet) +- [@jianhong](https://github.com/jianhong) +- [@mashehu](https://github.com/mashehu) +- [@msanvicente](https://github.com/msanvicente) +- [@SusiJo](https://github.com/SusiJo) ## Contributions and Support From d5c59ab89489c42ffe3727af3e5cb0497a677cde Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 7 Nov 2023 13:06:50 +0100 Subject: [PATCH 095/133] run black --- bin/BAGEL.py | 350 +++++++++++++++++++++++++++------------------------ 1 file changed, 189 insertions(+), 161 deletions(-) diff --git a/bin/BAGEL.py b/bin/BAGEL.py index 94bd734b..205fbb44 100755 --- a/bin/BAGEL.py +++ b/bin/BAGEL.py @@ -37,22 +37,21 @@ """ +import sys +import time import click import numpy as np import pandas as pd import scipy.stats as stats from sklearn.linear_model import LinearRegression -import sys -import time VERSION = 2.0 BUILD = 115 - -''' +""" Update history Build 115 @@ -77,26 +76,23 @@ 2. Now user can input column names 3. Fix Threshold function -''' +""" class OptionRequiredIf(click.Option): - def full_process_value(self, ctx, value): value = super(OptionRequiredIf, self).full_process_value(ctx, value) - if value is None and ctx.params['filter_multi_target'] is True: - msg = 'Error! Multi-target-filtering selected and not align-info provided.\n' \ - 'Please indicate align-info file.' + if value is None and ctx.params["filter_multi_target"] is True: + msg = ( + "Error! Multi-target-filtering selected and not align-info provided.\n" + "Please indicate align-info file." + ) raise click.MissingParameter(ctx=ctx, param=self, message=msg) return value - - - - -CONTEXT_SETTINGS = dict(help_option_names=['-h', '--help']) +CONTEXT_SETTINGS = dict(help_option_names=["-h", "--help"]) def round_to_hundredth(x): @@ -109,7 +105,6 @@ def func_linear(x, a, b): class Training: def __init__(self, X, n=None, cvnum=10): - if n == None: self._n = len(X) self._cvnum = cvnum @@ -118,7 +113,6 @@ def __init__(self, X, n=None, cvnum=10): self._X = X self._step = 0 - def cross_validation(self): if self._bid < 1: # bid check print("The number of genes is too small! n<" + str(self._cvnum)) @@ -157,7 +151,7 @@ def get_data(self, method=0): elif method == 1: train, test = self.cross_validation() else: - print('Method passed as a value that was neither 0 nor 1.') + print("Method passed as a value that was neither 0 nor 1.") sys.exit(1) return train, test @@ -208,24 +202,24 @@ def bagel(): """ -@click.command(name='version') +@click.command(name="version") def report_bagel_version(): """ Report the current build and version no. """ print( - 'Bayesian Analysis of Gene EssentiaLity (BAGEL) suite:\n' - 'Version: {VERSION}\n' - 'Build: {BUILD}'.format(VERSION=VERSION, BUILD=BUILD) + "Bayesian Analysis of Gene EssentiaLity (BAGEL) suite:\n" + "Version: {VERSION}\n" + "Build: {BUILD}".format(VERSION=VERSION, BUILD=BUILD) ) -@click.command(name='fc') -@click.option('-i', '--read-count-file', required=True, type=click.Path(exists=True)) -@click.option('-o', '--output-label', required=True) -@click.option('-c', '--control-columns', required=True) -@click.option('-m', '--min-reads', type=int, default=0) -@click.option('-Np', '--pseudo-count', type=int, default=5) +@click.command(name="fc") +@click.option("-i", "--read-count-file", required=True, type=click.Path(exists=True)) +@click.option("-o", "--output-label", required=True) +@click.option("-c", "--control-columns", required=True) +@click.option("-m", "--min-reads", type=int, default=0) +@click.option("-Np", "--pseudo-count", type=int, default=5) def calculate_fold_change(read_count_file, output_label, control_columns, min_reads, pseudo_count): """ \b @@ -259,9 +253,9 @@ def calculate_fold_change(read_count_file, output_label, control_columns, min_re # Import raw read data, normalize, filter for T0 min read counts # # Output: [output label].foldchange # # ---------------------------------------------------------------- # - reads = pd.read_csv(read_count_file, sep='\t', index_col=0) + reads = pd.read_csv(read_count_file, sep="\t", index_col=0) - reads[reads.columns.values[0]].fillna('NO_GENE_NAME', inplace=True) + reads[reads.columns.values[0]].fillna("NO_GENE_NAME", inplace=True) reads.fillna(0, inplace=True) control_columns = control_columns.split(",") # @@ -277,7 +271,7 @@ def calculate_fold_change(read_count_file, output_label, control_columns, min_re ctrl_sum = reads[ctrl_labels].sum(axis=1) reads.drop(ctrl_labels, axis=1, inplace=True) - ctrl_label_new = ';'.join(ctrl_labels) + ctrl_label_new = ";".join(ctrl_labels) reads[ctrl_label_new] = ctrl_sum except: print(reads[ctrl_labels].sum(axis=1)) @@ -298,9 +292,10 @@ def calculate_fold_change(read_count_file, output_label, control_columns, min_re # sumReads = reads.iloc[:, list(range(1, numColumns))].sum(0) normed = pd.DataFrame(index=reads.index.values) - normed['GENE'] = reads.iloc[:, 0] # first column is gene name - normed = reads.iloc[:, list(range(1, numColumns))] / np.tile(sumReads, - [numClones, 1]) * 10000000 # normalize to 10M reads + normed["GENE"] = reads.iloc[:, 0] # first column is gene name + normed = ( + reads.iloc[:, list(range(1, numColumns))] / np.tile(sumReads, [numClones, 1]) * 10000000 + ) # normalize to 10M reads # # filter for minimum readcount @@ -312,8 +307,8 @@ def calculate_fold_change(read_count_file, output_label, control_columns, min_re # calculate fold change # foldchange = pd.DataFrame(index=normed.index.values) - foldchange.index.name = 'REAGENT_ID' - foldchange['GENE'] = reads.iloc[f, 0] # dataframe 'normed' has no GENE column + foldchange.index.name = "REAGENT_ID" + foldchange["GENE"] = reads.iloc[f, 0] # dataframe 'normed' has no GENE column for i in range(numColumns - 1): foldchange[normed.columns.values[i]] = np.log2( (normed.loc[:, normed.columns.values[i]]) / normed[ctrl_label_new] @@ -328,39 +323,57 @@ def calculate_fold_change(read_count_file, output_label, control_columns, min_re # write foldchange file # - foldchange_filename = output_label + '.foldchange' - foldchange.to_csv(foldchange_filename, sep='\t', float_format='%4.3f') - - normedreads_filename = output_label + '.normed_readcount' - normed.to_csv(normedreads_filename, sep='\t', float_format='%3.2f') - - -@click.command(name='bf') -@click.option('-i', '--fold-change', required=True, type=click.Path(exists=True)) -@click.option('-o', '--output-file', required=True) -@click.option('-e', '--essential-genes', required=True, type=click.Path(exists=True)) -@click.option('-n', '--non-essential-genes', required=True, type=click.Path(exists=True)) -@click.option('-c', '--columns-to-test', required=True) -@click.option('-w', '--network-file', metavar='[network File]', default=None, type=click.Path(exists=True)) -@click.option('-m', '--filter-multi-target', is_flag=True) -@click.option('-m0', '--loci-without-mismatch', type=int, default=10) -@click.option('-m1', '--loci-with-mismatch', type=int, default=10) -@click.option('--align-info', metavar='--align-info [File]', default=None, - type=click.Path(exists=True), cls=OptionRequiredIf) -@click.option('-b', '--use-bootstrapping', is_flag=True) -@click.option('-NS', '--no-resampling', is_flag=True) -@click.option('-s', '--use-small-sample', is_flag=True) -@click.option('-N', '--no-of-cross-validations', type=int, default=10) -@click.option('-NB', '--bootstrap-iterations', type=int, default=1000) -@click.option('-r', '--sgrna-bayes-factors', is_flag=True) -@click.option('-f', '--equalise-sgrna-no', type=int) -@click.option('-s', '--seed', default=int(time.time() * 100000 % 100000), type=int) -@click.option('-t', '--run-test-mode', is_flag=True) -@click.option('-p', '--equalise-rep-no', type=int) + foldchange_filename = output_label + ".foldchange" + foldchange.to_csv(foldchange_filename, sep="\t", float_format="%4.3f") + + normedreads_filename = output_label + ".normed_readcount" + normed.to_csv(normedreads_filename, sep="\t", float_format="%3.2f") + + +@click.command(name="bf") +@click.option("-i", "--fold-change", required=True, type=click.Path(exists=True)) +@click.option("-o", "--output-file", required=True) +@click.option("-e", "--essential-genes", required=True, type=click.Path(exists=True)) +@click.option("-n", "--non-essential-genes", required=True, type=click.Path(exists=True)) +@click.option("-c", "--columns-to-test", required=True) +@click.option("-w", "--network-file", metavar="[network File]", default=None, type=click.Path(exists=True)) +@click.option("-m", "--filter-multi-target", is_flag=True) +@click.option("-m0", "--loci-without-mismatch", type=int, default=10) +@click.option("-m1", "--loci-with-mismatch", type=int, default=10) +@click.option( + "--align-info", metavar="--align-info [File]", default=None, type=click.Path(exists=True), cls=OptionRequiredIf +) +@click.option("-b", "--use-bootstrapping", is_flag=True) +@click.option("-NS", "--no-resampling", is_flag=True) +@click.option("-s", "--use-small-sample", is_flag=True) +@click.option("-N", "--no-of-cross-validations", type=int, default=10) +@click.option("-NB", "--bootstrap-iterations", type=int, default=1000) +@click.option("-r", "--sgrna-bayes-factors", is_flag=True) +@click.option("-f", "--equalise-sgrna-no", type=int) +@click.option("-s", "--seed", default=int(time.time() * 100000 % 100000), type=int) +@click.option("-t", "--run-test-mode", is_flag=True) +@click.option("-p", "--equalise-rep-no", type=int) def calculate_bayes_factors( - fold_change, output_file, essential_genes, non_essential_genes, columns_to_test, network_file, align_info, - use_bootstrapping, no_resampling, use_small_sample, filter_multi_target, loci_without_mismatch, loci_with_mismatch, - bootstrap_iterations, no_of_cross_validations, sgrna_bayes_factors, equalise_sgrna_no, seed, run_test_mode, equalise_rep_no + fold_change, + output_file, + essential_genes, + non_essential_genes, + columns_to_test, + network_file, + align_info, + use_bootstrapping, + no_resampling, + use_small_sample, + filter_multi_target, + loci_without_mismatch, + loci_with_mismatch, + bootstrap_iterations, + no_of_cross_validations, + sgrna_bayes_factors, + equalise_sgrna_no, + seed, + run_test_mode, + equalise_rep_no, ): """ \b @@ -460,7 +473,6 @@ def calculate_bayes_factors( multi_targeting_sgrnas_info = dict() if filter_multi_target: - try: aligninfo = pd.read_csv(align_info, header=None, index_col=0, sep="\t").fillna("") for seqid in aligninfo.index: @@ -480,7 +492,10 @@ def calculate_bayes_factors( multi_targeting_sgrnas[seqid] = True elif perfectmatch > 1 or mismatch_1bp > 0: multi_targeting_sgrnas_info[seqid] = ( - perfectmatch, mismatch_1bp, perfectmatch_gene, mismatch_1bp_gene + perfectmatch, + mismatch_1bp, + perfectmatch_gene, + mismatch_1bp_gene, ) except: @@ -494,19 +509,20 @@ def calculate_bayes_factors( # rnatagset = set() with open(fold_change) as fin: - fieldname = fin.readline().rstrip().split('\t') + fieldname = fin.readline().rstrip().split("\t") # # DEFINE CONTROLS # - columns = columns_to_test.split(',') + columns = columns_to_test.split(",") try: try: column_list = list(map(int, columns)) column_labels = [fieldname[x + 1] for x in column_list] except ValueError: column_labels = columns - column_list = [x for x in range(len(fieldname) - 1) if - fieldname[x + 1] in column_labels] # +1 because of First column start 2 + column_list = [ + x for x in range(len(fieldname) - 1) if fieldname[x + 1] in column_labels + ] # +1 because of First column start 2 print("Using column: " + ", ".join(column_labels)) # print "Using column: " + ", ".join(map(str,column_list)) @@ -515,7 +531,7 @@ def calculate_bayes_factors( sys.exit(1) for line in fin: - fields = line.rstrip().split('\t') + fields = line.rstrip().split("\t") rnatag = fields[0] if filter_multi_target is True: # multitargeting sgrna filtering if rnatag in multi_targeting_sgrnas: @@ -547,7 +563,7 @@ def calculate_bayes_factors( with open(essential_genes) as fin: skip_header = fin.readline() for line in fin: - coreEss.append(line.rstrip().split('\t')[0]) + coreEss.append(line.rstrip().split("\t")[0]) coreEss = np.array(coreEss) print("Number of reference essentials: " + str(len(coreEss))) @@ -555,7 +571,7 @@ def calculate_bayes_factors( with open(non_essential_genes) as fin: skip_header = fin.readline() for line in fin: - nonEss.append(line.rstrip().split('\t')[0]) + nonEss.append(line.rstrip().split("\t")[0]) nonEss = np.array(nonEss) print("Number of reference nonessentials: " + str(len(nonEss))) @@ -569,7 +585,7 @@ def calculate_bayes_factors( edgecount = 0 with open(network_file) as fin: for line in fin: - linearray = line.rstrip().split('\t') # GeneA \t GeneB format + linearray = line.rstrip().split("\t") # GeneA \t GeneB format if linearray[0] in genes_array and linearray[1] in genes_array: for i in [0, 1]: if linearray[i] not in network: @@ -586,8 +602,7 @@ def calculate_bayes_factors( # Define foldchange dynamic threshold. logarithm decay. # Parameters are defined by regression (achilles data) 2**-7 was used in previous version. - FC_THRESH = 2 ** (-1.1535 * np.log(len(np.intersect1d(genes_array, - nonEss)) + 13.324) + 0.7728) + FC_THRESH = 2 ** (-1.1535 * np.log(len(np.intersect1d(genes_array, nonEss)) + 13.324) + 0.7728) bf = {} boostedbf = {} for g in genes_array: @@ -603,8 +618,9 @@ def calculate_bayes_factors( # declare training class # training_data = Training(setdiff1d(gene_idx,np.where(in1d(genes_array,coreEss))),cvnum=NUMCV) # declare training class (only for Gold-standard gene set) - training_data = Training(np.where(np.in1d(genes_array, np.union1d(coreEss, nonEss)))[0], - cvnum=no_of_cross_validations) + training_data = Training( + np.where(np.in1d(genes_array, np.union1d(coreEss, nonEss)))[0], cvnum=no_of_cross_validations + ) # all non-goldstandards all_non_gs = np.where(np.logical_not(np.in1d(genes_array, np.union1d(coreEss, nonEss))))[0] else: @@ -649,7 +665,8 @@ def calculate_bayes_factors( if run_test_mode: fp.write( - "%d\n%s\n%s\n" % (loop, ",".join(genes_array[gene_train_idx]), ",".join(genes_array[gene_test_idx]))) + "%d\n%s\n%s\n" % (loop, ",".join(genes_array[gene_train_idx]), ",".join(genes_array[gene_test_idx])) + ) train_ess = np.where(np.in1d(genes_array[gene_train_idx], coreEss))[0] train_non = np.where(np.in1d(genes_array[gene_train_idx], nonEss))[0] @@ -661,14 +678,16 @@ def calculate_bayes_factors( # # define ess_train: vector of observed fold changes of essential genes in training set # - ess_train_fc_list_of_lists = [fc[rnatag] for g in genes_array[gene_train_idx[train_ess]] for rnatag in - gene2rna[g]] + ess_train_fc_list_of_lists = [ + fc[rnatag] for g in genes_array[gene_train_idx[train_ess]] for rnatag in gene2rna[g] + ] ess_train_fc_flat_list = [obs for sublist in ess_train_fc_list_of_lists for obs in list(sublist.values())] # # define non_train vector of observed fold changes of nonessential genes in training set # - non_train_fc_list_of_lists = [fc[rnatag] for g in genes_array[gene_train_idx[train_non]] for rnatag in - gene2rna[g]] + non_train_fc_list_of_lists = [ + fc[rnatag] for g in genes_array[gene_train_idx[train_non]] for rnatag in gene2rna[g] + ] non_train_fc_flat_list = [obs for sublist in non_train_fc_list_of_lists for obs in list(sublist.values())] # # calculate empirical fold change distributions for both @@ -781,21 +800,24 @@ def calculate_bayes_factors( if len(onlytarget) > 0: # comparsion between sgRNAs targeting one locus and multiple loci if len(multitarget) > 0: - bf_only = np.mean([sum(list(bf_mean_rna_rep[seqid].values())) for seqid in onlytarget]) for seqid in onlytarget: trainset[seqid] = [1, 0, 0] for seqid in multitarget: - if multi_targeting_sgrnas_info[seqid][2] > 1 or multi_targeting_sgrnas_info[seqid][ - 3] > 0: # train model using multi-targeting only targeting one protein coding gene + if ( + multi_targeting_sgrnas_info[seqid][2] > 1 or multi_targeting_sgrnas_info[seqid][3] > 0 + ): # train model using multi-targeting only targeting one protein coding gene continue count += 1 increment = sum(list(bf_mean_rna_rep[seqid].values())) - bf_only - trainset[seqid] = [multi_targeting_sgrnas_info[seqid][0], multi_targeting_sgrnas_info[seqid][1], - increment] + trainset[seqid] = [ + multi_targeting_sgrnas_info[seqid][0], + multi_targeting_sgrnas_info[seqid][1], + increment, + ] if count < 10: print("Not enough train set for calculating multi-targeting effect.\n") @@ -804,35 +826,40 @@ def calculate_bayes_factors( filter_multi_target = False else: - trainset = pd.DataFrame().from_dict(trainset).T X = trainset[[0, 1]] y = trainset[2] regressor = LinearRegression() regressor.fit(X, y) - coeff_df = pd.DataFrame(regressor.coef_, X.columns, columns=['Coefficient']) + coeff_df = pd.DataFrame(regressor.coef_, X.columns, columns=["Coefficient"]) for i in [0, 1]: - if coeff_df['Coefficient'][i] < 0: + if coeff_df["Coefficient"][i] < 0: print("Regression coefficient is below than zero. Substituted to zero\n") - coeff_df['Coefficient'][i] = 0.0 - print("Multiple effects from perfect matched loci = %.3f and 1bp mis-matched loci = %.3f" % ( - coeff_df['Coefficient'][0], coeff_df['Coefficient'][1])) + coeff_df["Coefficient"][i] = 0.0 + print( + "Multiple effects from perfect matched loci = %.3f and 1bp mis-matched loci = %.3f" + % (coeff_df["Coefficient"][0], coeff_df["Coefficient"][1]) + ) if rna_level == False: for g in gene2rna: penalty = 0.0 for seqid in gene2rna[g]: if seqid in multi_targeting_sgrnas_info: - penalty += float(multi_targeting_sgrnas_info[seqid][0] - 1) * coeff_df['Coefficient'][ - 0] + float(multi_targeting_sgrnas_info[seqid][1]) * coeff_df['Coefficient'][1] + penalty += ( + float(multi_targeting_sgrnas_info[seqid][0] - 1) * coeff_df["Coefficient"][0] + + float(multi_targeting_sgrnas_info[seqid][1]) * coeff_df["Coefficient"][1] + ) bf_multi_corrected_gene[g] = bf_mean[g] - penalty else: for g in gene2rna: for seqid in gene2rna[g]: if seqid in multi_targeting_sgrnas_info: - penalty = float(multi_targeting_sgrnas_info[seqid][0] - 1) * coeff_df['Coefficient'][ - 0] + float(multi_targeting_sgrnas_info[seqid][1]) * coeff_df['Coefficient'][1] + penalty = ( + float(multi_targeting_sgrnas_info[seqid][0] - 1) * coeff_df["Coefficient"][0] + + float(multi_targeting_sgrnas_info[seqid][1]) * coeff_df["Coefficient"][1] + ) else: penalty = 0.0 bf_multi_corrected_rna[seqid] = sum(list(bf_mean_rna_rep[seqid].values())) - penalty @@ -850,12 +877,12 @@ def calculate_bayes_factors( multiple_factor = equalise_sgrna_no / float(len(gene2rna[g])) bf_norm[g] = targetbf[g] * multiple_factor - ''' + """ if bf_std[rnatag] == 0.0: bf_norm[rnatag] = float('inf') else: bf_norm[g] = ( bf[rnatag] - bf_mean[rnatag] ) / bf_std[rnatag] - ''' + """ training_data = Training(gene_idx) # set training class reset # @@ -961,102 +988,100 @@ def calculate_bayes_factors( if run_test_mode == True: fp.close() - - - # # print out results # # Equalizing factor (Replicates) - if flat_rep==True: - eqf = equalise_rep_no/float(len(column_labels)) + if flat_rep == True: + eqf = equalise_rep_no / float(len(column_labels)) else: eqf = 1 # print out - with open(output_file, 'w') as fout: - + with open(output_file, "w") as fout: if rna_level == True: - fout.write('RNA\tGENE') + fout.write("RNA\tGENE") for i in range(len(column_list)): - fout.write('\t{0:s}'.format(column_labels[i])) + fout.write("\t{0:s}".format(column_labels[i])) if train_method == 0: - fout.write('\t{0:s}'.format(column_labels[i] + "_STD")) - fout.write('\tBF') + fout.write("\t{0:s}".format(column_labels[i] + "_STD")) + fout.write("\tBF") if train_method == 0: - fout.write('\tNumObs') - fout.write('\n') + fout.write("\tNumObs") + fout.write("\n") for rnatag in sorted(bf.keys()): # RNA tag - fout.write('{0:s}\t'.format(rnatag)) + fout.write("{0:s}\t".format(rnatag)) # Gene gene = rna2gene[rnatag] - fout.write('{0:s}\t'.format(gene)) + fout.write("{0:s}\t".format(gene)) # BF of replicates for rep in column_list: - fout.write('{0:4.3f}\t'.format(bf_mean_rna_rep[rnatag][rep])) + fout.write("{0:4.3f}\t".format(bf_mean_rna_rep[rnatag][rep])) if train_method == 0: - fout.write('{0:4.3f}\t'.format(bf_std_rna_rep[rnatag][rep])) + fout.write("{0:4.3f}\t".format(bf_std_rna_rep[rnatag][rep])) # Sum BF of replicates if filter_multi_target == True: - fout.write('{0:4.3f}'.format(float(bf_multi_corrected_rna[rnatag]) * eqf)) # eqf = equalizing factor for the number of replicates + fout.write( + "{0:4.3f}".format(float(bf_multi_corrected_rna[rnatag]) * eqf) + ) # eqf = equalizing factor for the number of replicates else: - fout.write('{0:4.3f}'.format(float(sum(list(bf_mean_rna_rep[rnatag].values()))) * eqf)) + fout.write("{0:4.3f}".format(float(sum(list(bf_mean_rna_rep[rnatag].values()))) * eqf)) # Num obs if train_method == 0: - fout.write('\t{0:d}'.format(num_obs[gene])) - fout.write('\n') + fout.write("\t{0:d}".format(num_obs[gene])) + fout.write("\n") else: - fout.write('GENE') + fout.write("GENE") if network_boost == True: - fout.write('\tBoostedBF') + fout.write("\tBoostedBF") if train_method == 0: - fout.write('\tSTD_BoostedBF') - fout.write('\tBF') + fout.write("\tSTD_BoostedBF") + fout.write("\tBF") if train_method == 0: - fout.write('\tSTD\tNumObs') + fout.write("\tSTD\tNumObs") if flat_sgrna == True: - fout.write('\tNormBF') - fout.write('\n') + fout.write("\tNormBF") + fout.write("\n") for g in sorted(genes.keys()): # Gene - fout.write('{0:s}'.format(g)) + fout.write("{0:s}".format(g)) if network_boost == True: boostedbf_mean = np.mean(boostedbf[g]) boostedbf_std = np.std(boostedbf[g]) - fout.write('\t{0:4.3f}'.format(float(boostedbf_mean) * eqf)) + fout.write("\t{0:4.3f}".format(float(boostedbf_mean) * eqf)) if train_method == 0: - fout.write('\t{0:4.3f}'.format(float(boostedbf_std) * eqf)) + fout.write("\t{0:4.3f}".format(float(boostedbf_std) * eqf)) # BF if filter_multi_target == True: - fout.write('\t{0:4.3f}'.format(float(bf_multi_corrected_gene[g]) * eqf)) # eqf = equalizing factor for the number of replicates + fout.write( + "\t{0:4.3f}".format(float(bf_multi_corrected_gene[g]) * eqf) + ) # eqf = equalizing factor for the number of replicates else: - fout.write('\t{0:4.3f}'.format(float(bf_mean[g]) * eqf )) + fout.write("\t{0:4.3f}".format(float(bf_mean[g]) * eqf)) # STD, Count if train_method == 0: - fout.write('\t{0:4.3f}\t{1:d}'.format(float(bf_std[g]), num_obs[g])) + fout.write("\t{0:4.3f}\t{1:d}".format(float(bf_std[g]), num_obs[g])) # Normalized BF if flat_sgrna == True: - fout.write('\t{0:4.3f}'.format(float(bf_norm[g]))) + fout.write("\t{0:4.3f}".format(float(bf_norm[g]))) - fout.write('\n') + fout.write("\n") -@click.command(name='pr') -@click.option('-i', '--bayes-factors', required=True, - type=click.Path(exists=True)) -@click.option('-o', '--output-file', required=True) -@click.option('-e', '--essential-genes', required=True, - type=click.Path(exists=True)) -@click.option('-n', '--non-essential-genes', required=True, type=click.Path(exists=True)) -@click.option('-k', '--use-column', default=None) +@click.command(name="pr") +@click.option("-i", "--bayes-factors", required=True, type=click.Path(exists=True)) +@click.option("-o", "--output-file", required=True) +@click.option("-e", "--essential-genes", required=True, type=click.Path(exists=True)) +@click.option("-n", "--non-essential-genes", required=True, type=click.Path(exists=True)) +@click.option("-k", "--use-column", default=None) def calculate_precision_recall(bayes_factors, output_file, essential_genes, non_essential_genes, use_column): """ Calculate precision-recall from an input Bayes Factors file: @@ -1093,38 +1118,41 @@ def calculate_precision_recall(bayes_factors, output_file, essential_genes, non_ print("Error! the column name is not in the file") sys.exit(1) else: - bf_column = 'BF' + bf_column = "BF" bf.sort_values(by=bf_column, ascending=False, inplace=True) - cumulative_tp = 0. - cumulative_fp = 0. - precision = 1. - recall = 0. + cumulative_tp = 0.0 + cumulative_fp = 0.0 + precision = 1.0 + recall = 0.0 # note float formats ess = essentials.index.values non = nonessentials.index.values totNumEssentials = len([x for x in bf.index.values if x in ess]) - with open(output_file, 'w') as fout: - - fout.write('Gene\t') + with open(output_file, "w") as fout: + fout.write("Gene\t") fout.write(bf_column) - fout.write('\tRecall\tPrecision\tFDR\n') + fout.write("\tRecall\tPrecision\tFDR\n") for g in bf.index.values: - if (g in ess): + if g in ess: cumulative_tp += 1 - elif (g in non): + elif g in non: cumulative_fp += 1 recall = cumulative_tp / totNumEssentials - if ((cumulative_tp > 0) | (cumulative_fp > 0)): + if (cumulative_tp > 0) | (cumulative_fp > 0): precision = cumulative_tp / (cumulative_tp + cumulative_fp) - fout.write('{0:s}\t{1:4.3f}\t{2:4.3f}\t{3:4.3f}\t{4:4.3f}\n'.format(g, bf.loc[g, bf_column], recall, precision, 1.0-precision)) + fout.write( + "{0:s}\t{1:4.3f}\t{2:4.3f}\t{3:4.3f}\t{4:4.3f}\n".format( + g, bf.loc[g, bf_column], recall, precision, 1.0 - precision + ) + ) -if __name__ == '__main__': +if __name__ == "__main__": bagel.add_command(calculate_fold_change) bagel.add_command(calculate_bayes_factors) bagel.add_command(calculate_precision_recall) From 49306903fd7bc5ca8751be3c9c7d6cb1dfce63d3 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 7 Nov 2023 13:22:47 +0100 Subject: [PATCH 096/133] fix left-padding spaces --- modules/local/mageck/graphrra.nf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/local/mageck/graphrra.nf b/modules/local/mageck/graphrra.nf index c4f77c6d..2c531d5d 100644 --- a/modules/local/mageck/graphrra.nf +++ b/modules/local/mageck/graphrra.nf @@ -43,8 +43,8 @@ process MAGECK_GRAPHRRA { gdata <- transform(gdata, Rank = rank(Score)) png(filename = paste0("$meta.treatment","_vs_","$meta.reference","_rank.png"), width = 6, height = 4, units = "in", res = 300) p1 = ScatterView(gdata, x = "Rank", y = "Score", label = "id", - top = 5, auto_cut_y = TRUE, ylab = "Log2FC", - groups = c("top", "bottom")) + top = 5, auto_cut_y = TRUE, ylab = "Log2FC", + groups = c("top", "bottom")) print(p1) dev.off() From da83776937e0bf9c77517d32ed699e476377fdbc Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 7 Nov 2023 15:17:50 +0100 Subject: [PATCH 097/133] Remove a comment --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 9657b7c1..cd4ef567 100644 --- a/README.md +++ b/README.md @@ -93,6 +93,8 @@ SAMPLE1,SAMPLE1_R1.fastq.gz,SAMPLE1_R2.fastq.gz,control For more details on how to build a sample sheet, please refer to the [usage documentation](https://nf-co.re/crisprseq/usage) +--> + Now, you can run the pipeline using: ```bash From a276caeb036b61d869469a7d7fc1e0cac1bd6c7f Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 7 Nov 2023 15:41:47 +0100 Subject: [PATCH 098/133] Fix template issues --- README.md | 10 ++- docs/output.md | 66 +-------------- modules.json | 68 +++++++++++++++- workflows/crisprseq.nf | 135 ------------------------------- workflows/crisprseq_screening.nf | 1 + workflows/crisprseq_targeted.nf | 1 + 6 files changed, 79 insertions(+), 202 deletions(-) delete mode 100644 workflows/crisprseq.nf diff --git a/README.md b/README.md index cd4ef567..7fdfec34 100644 --- a/README.md +++ b/README.md @@ -70,8 +70,6 @@ to set-up Nextflow. Make sure to [test your setup](https://nf-co.re/docs/usage/i with `-profile test` before running the workflow on actual data. ::: - - Now, you can run the pipeline using: ```bash @@ -119,6 +115,12 @@ For more details about the output files and reports, please refer to the nf-core/crisprseq was originally written by Júlia Mir Pedrol, Laurence Kuhlburger. +nf-core/crisprseq targeted is based on [CRISPR-A](https://doi.org/10.1101/2022.09.02.506351) [[Sanvicente-García, et.al. (2023)](https://doi.org/10.1371/journal.pcbi.1011137)], originally written by Marta Sanvicente García at [Translational Synthetic Biology](https://synbio.upf.edu/) from [Universitat Pompeu Fabra](https://www.upf.edu/home). nf-core/crisprseq was originally written by Júlia Mir Pedrol, Laurence Kuhlburger. +It was re-written in Nextflow DSL2 and is primarily maintained by Júlia Mir Pedrol (@mirpedrol) at [Quantitative Biology Center (QBiC)](https://www.qbic.uni-tuebingen.de/) from [Universität Tübingen](https://uni-tuebingen.de/en/). + +nf-core/crisprseq screening was written and is primarly maintained by Laurence Kuhlburger (@LaurenceKuhl) at [Quantitative Biology Center (QBiC)](https://www.qbic.uni-tuebingen.de/) from [Universität Tübingen](https://uni-tuebingen.de/en/). + + diff --git a/docs/output.md b/docs/output.md index ffc58e89..21eb08b0 100644 --- a/docs/output.md +++ b/docs/output.md @@ -2,70 +2,12 @@ ## Introduction -This document describes the output produced by the pipeline. Most of the plots are taken from the MultiQC report, which summarises results at the end of the pipeline. +This document describes the output produced by the pipeline. This document describes the output produced by the pipeline. Most of the plots are taken from the MultiQC report, which summarises results at the end of the pipeline. -The directories listed below will be created in the results directory after the pipeline has finished. All paths are relative to the top-level results directory. - +Please refer to the respective Output documentation: The directories listed below will be created in the results directory after the pipeline has finished. All paths are relative to the top-level results directory. -## Pipeline overview -The pipeline is built using [Nextflow](https://www.nextflow.io/) and processes data using the following steps: +- [Output targeted](output/targeted.md) +- [Output screening](output/screening.md) -- [FastQC](#fastqc) - Raw read QC -- [MultiQC](#multiqc) - Aggregate report describing results and QC from the whole pipeline -- [Pipeline information](#pipeline-information) - Report metrics generated during the workflow execution - -### FastQC - -
      -Output files - -- `fastqc/` - - `*_fastqc.html`: FastQC report containing quality metrics. - - `*_fastqc.zip`: Zip archive containing the FastQC report, tab-delimited data file and plot images. - -
      - -[FastQC](http://www.bioinformatics.babraham.ac.uk/projects/fastqc/) gives general quality metrics about your sequenced reads. It provides information about the quality score distribution across your reads, per base sequence content (%A/T/G/C), adapter contamination and overrepresented sequences. For further reading and documentation see the [FastQC help pages](http://www.bioinformatics.babraham.ac.uk/projects/fastqc/Help/). - -![MultiQC - FastQC sequence counts plot](images/mqc_fastqc_counts.png) - -![MultiQC - FastQC mean quality scores plot](images/mqc_fastqc_quality.png) - -![MultiQC - FastQC adapter content plot](images/mqc_fastqc_adapter.png) - -:::note -The FastQC plots displayed in the MultiQC report shows _untrimmed_ reads. They may contain adapter sequence and potentially regions with low quality. -::: - -### MultiQC - -
      -Output files - -- `multiqc/` - - `multiqc_report.html`: a standalone HTML file that can be viewed in your web browser. - - `multiqc_data/`: directory containing parsed statistics from the different tools used in the pipeline. - - `multiqc_plots/`: directory containing static images from the report in various formats. - -
      - -[MultiQC](http://multiqc.info) is a visualization tool that generates a single HTML report summarising all samples in your project. Most of the pipeline QC results are visualised in the report and further statistics are available in the report data directory. - -Results generated by MultiQC collate pipeline QC from supported tools e.g. FastQC. The pipeline has special steps which also allow the software versions to be reported in the MultiQC output for future traceability. For more information about how to use MultiQC reports, see . - -### Pipeline information - -
      -Output files - -- `pipeline_info/` - - Reports generated by Nextflow: `execution_report.html`, `execution_timeline.html`, `execution_trace.txt` and `pipeline_dag.dot`/`pipeline_dag.svg`. - - Reports generated by the pipeline: `pipeline_report.html`, `pipeline_report.txt` and `software_versions.yml`. The `pipeline_report*` files will only be present if the `--email` / `--email_on_fail` parameter's are used when running the pipeline. - - Reformatted samplesheet files used as input to the pipeline: `samplesheet.valid.csv`. - - Parameters used by the pipeline run: `params.json`. - -
      - -[Nextflow](https://www.nextflow.io/docs/latest/tracing.html) provides excellent functionality for generating various reports relevant to the running and execution of the pipeline. This will allow you to troubleshoot errors with the running of the pipeline, and also provide you with other information such as launch commands, run times and resource usage. diff --git a/modules.json b/modules.json index 647cc52f..e396008c 100644 --- a/modules.json +++ b/modules.json @@ -49,13 +49,79 @@ }, "fastqc": { "branch": "master", - "git_sha": "bd8092b67b5103bdd52e300f75889442275c3117", + "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", + "installed_by": ["modules"] + }, + "mageck/count": { + "branch": "master", + "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", + "installed_by": ["modules"], + "patch": "modules/nf-core/mageck/count/mageck-count.diff" + }, + "mageck/mle": { + "branch": "master", + "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", + "installed_by": ["modules"], + "patch": "modules/nf-core/mageck/mle/mageck-mle.diff" + }, + "mageck/test": { + "branch": "master", + "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", + "installed_by": ["modules"], + "patch": "modules/nf-core/mageck/test/mageck-test.diff" + }, + "medaka": { + "branch": "master", + "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", + "installed_by": ["modules"], + "patch": "modules/nf-core/medaka/medaka.diff" + }, + "minimap2/align": { + "branch": "master", + "git_sha": "603ecbd9f45300c9788f197d2a15a005685b4220", + "installed_by": ["modules"], + "patch": "modules/nf-core/minimap2/align/minimap2-align.diff" + }, + "minimap2/index": { + "branch": "master", + "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", "installed_by": ["modules"] }, "multiqc": { "branch": "master", "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", "installed_by": ["modules"] + }, + "pear": { + "branch": "master", + "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", + "installed_by": ["modules"] + }, + "racon": { + "branch": "master", + "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", + "installed_by": ["modules"] + }, + "samtools/index": { + "branch": "master", + "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", + "installed_by": ["modules"] + }, + "seqtk/seq": { + "branch": "master", + "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", + "installed_by": ["modules"] + }, + "vsearch/cluster": { + "branch": "master", + "git_sha": "603ecbd9f45300c9788f197d2a15a005685b4220", + "installed_by": ["modules"], + "patch": "modules/nf-core/vsearch/cluster/vsearch-cluster.diff" + }, + "vsearch/sort": { + "branch": "master", + "git_sha": "911696ea0b62df80e900ef244d7867d177971f73", + "installed_by": ["modules"] } } }, diff --git a/workflows/crisprseq.nf b/workflows/crisprseq.nf deleted file mode 100644 index 1fec328e..00000000 --- a/workflows/crisprseq.nf +++ /dev/null @@ -1,135 +0,0 @@ -/* -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - PRINT PARAMS SUMMARY -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -*/ - -include { paramsSummaryLog; paramsSummaryMap } from 'plugin/nf-validation' - -def logo = NfcoreTemplate.logo(workflow, params.monochrome_logs) -def citation = '\n' + WorkflowMain.citation(workflow) + '\n' -def summary_params = paramsSummaryMap(workflow) - -// Print parameter summary log to screen -log.info logo + paramsSummaryLog(workflow) + citation - -WorkflowCrisprseq.initialise(params, log) - -/* -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - CONFIG FILES -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -*/ - -ch_multiqc_config = Channel.fromPath("$projectDir/assets/multiqc_config.yml", checkIfExists: true) -ch_multiqc_custom_config = params.multiqc_config ? Channel.fromPath( params.multiqc_config, checkIfExists: true ) : Channel.empty() -ch_multiqc_logo = params.multiqc_logo ? Channel.fromPath( params.multiqc_logo, checkIfExists: true ) : Channel.empty() -ch_multiqc_custom_methods_description = params.multiqc_methods_description ? file(params.multiqc_methods_description, checkIfExists: true) : file("$projectDir/assets/methods_description_template.yml", checkIfExists: true) - -/* -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - IMPORT LOCAL MODULES/SUBWORKFLOWS -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -*/ - -// -// SUBWORKFLOW: Consisting of a mix of local and nf-core/modules -// -include { INPUT_CHECK } from '../subworkflows/local/input_check' - -/* -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - IMPORT NF-CORE MODULES/SUBWORKFLOWS -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -*/ - -// -// MODULE: Installed directly from nf-core/modules -// -include { FASTQC } from '../modules/nf-core/fastqc/main' -include { MULTIQC } from '../modules/nf-core/multiqc/main' -include { CUSTOM_DUMPSOFTWAREVERSIONS } from '../modules/nf-core/custom/dumpsoftwareversions/main' - -/* -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - RUN MAIN WORKFLOW -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -*/ - -// Info required for completion email and summary -def multiqc_report = [] - -workflow CRISPRSEQ { - - ch_versions = Channel.empty() - - // - // SUBWORKFLOW: Read in samplesheet, validate and stage input files - // - INPUT_CHECK ( - file(params.input) - ) - ch_versions = ch_versions.mix(INPUT_CHECK.out.versions) - // TODO: OPTIONAL, you can use nf-validation plugin to create an input channel from the samplesheet with Channel.fromSamplesheet("input") - // See the documentation https://nextflow-io.github.io/nf-validation/samplesheets/fromSamplesheet/ - // ! There is currently no tooling to help you write a sample sheet schema - - // - // MODULE: Run FastQC - // - FASTQC ( - INPUT_CHECK.out.reads - ) - ch_versions = ch_versions.mix(FASTQC.out.versions.first()) - - CUSTOM_DUMPSOFTWAREVERSIONS ( - ch_versions.unique().collectFile(name: 'collated_versions.yml') - ) - - // - // MODULE: MultiQC - // - workflow_summary = WorkflowCrisprseq.paramsSummaryMultiqc(workflow, summary_params) - ch_workflow_summary = Channel.value(workflow_summary) - - methods_description = WorkflowCrisprseq.methodsDescriptionText(workflow, ch_multiqc_custom_methods_description, params) - ch_methods_description = Channel.value(methods_description) - - ch_multiqc_files = Channel.empty() - ch_multiqc_files = ch_multiqc_files.mix(ch_workflow_summary.collectFile(name: 'workflow_summary_mqc.yaml')) - ch_multiqc_files = ch_multiqc_files.mix(ch_methods_description.collectFile(name: 'methods_description_mqc.yaml')) - ch_multiqc_files = ch_multiqc_files.mix(CUSTOM_DUMPSOFTWAREVERSIONS.out.mqc_yml.collect()) - ch_multiqc_files = ch_multiqc_files.mix(FASTQC.out.zip.collect{it[1]}.ifEmpty([])) - - MULTIQC ( - ch_multiqc_files.collect(), - ch_multiqc_config.toList(), - ch_multiqc_custom_config.toList(), - ch_multiqc_logo.toList() - ) - multiqc_report = MULTIQC.out.report.toList() -} - -/* -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - COMPLETION EMAIL AND SUMMARY -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -*/ - -workflow.onComplete { - if (params.email || params.email_on_fail) { - NfcoreTemplate.email(workflow, params, summary_params, projectDir, log, multiqc_report) - } - NfcoreTemplate.dump_parameters(workflow, params) - NfcoreTemplate.summary(workflow, params, log) - if (params.hook_url) { - NfcoreTemplate.IM_notification(workflow, params, summary_params, projectDir, log) - } -} - -/* -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - THE END -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -*/ - diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index ff2a61b5..a4be8125 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -252,6 +252,7 @@ workflow.onComplete { if (params.email || params.email_on_fail) { NfcoreTemplate.email(workflow, params, summary_params, projectDir, log, multiqc_report) } + NfcoreTemplate.dump_parameters(workflow, params) NfcoreTemplate.summary(workflow, params, log) if (params.hook_url) { NfcoreTemplate.adaptivecard(workflow, params, summary_params, projectDir, log) diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 8792469e..6c4044ba 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -787,6 +787,7 @@ workflow.onComplete { if (params.email || params.email_on_fail) { NfcoreTemplate.email(workflow, params, summary_params, projectDir, log, multiqc_report) } + NfcoreTemplate.dump_parameters(workflow, params) NfcoreTemplate.summary(workflow, params, log) if (params.hook_url) { NfcoreTemplate.IM_notification(workflow, params, summary_params, projectDir, log) From 631eae278b3a1a90780122f9da847c6abc390b72 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 7 Nov 2023 15:43:55 +0100 Subject: [PATCH 099/133] Update README.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index 7fdfec34..832a0ec1 100644 --- a/README.md +++ b/README.md @@ -113,7 +113,6 @@ For more details about the output files and reports, please refer to the ## Credits -nf-core/crisprseq was originally written by Júlia Mir Pedrol, Laurence Kuhlburger. nf-core/crisprseq targeted is based on [CRISPR-A](https://doi.org/10.1101/2022.09.02.506351) [[Sanvicente-García, et.al. (2023)](https://doi.org/10.1371/journal.pcbi.1011137)], originally written by Marta Sanvicente García at [Translational Synthetic Biology](https://synbio.upf.edu/) from [Universitat Pompeu Fabra](https://www.upf.edu/home). nf-core/crisprseq was originally written by Júlia Mir Pedrol, Laurence Kuhlburger. It was re-written in Nextflow DSL2 and is primarily maintained by Júlia Mir Pedrol (@mirpedrol) at [Quantitative Biology Center (QBiC)](https://www.qbic.uni-tuebingen.de/) from [Universität Tübingen](https://uni-tuebingen.de/en/). From becdc6e256ffa85b73d9367be1f8df13aa40bb70 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 7 Nov 2023 15:44:03 +0100 Subject: [PATCH 100/133] Update docs/output.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- docs/output.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/output.md b/docs/output.md index 21eb08b0..1e115eee 100644 --- a/docs/output.md +++ b/docs/output.md @@ -8,6 +8,6 @@ This document describes the output produced by the pipeline. This document descr Please refer to the respective Output documentation: The directories listed below will be created in the results directory after the pipeline has finished. All paths are relative to the top-level results directory. -- [Output targeted](output/targeted.md) +- [Output targeted](output/targeted.md) - [Output screening](output/screening.md) From 6a87c2cf64e1746a7ef14596cf0be3af1f783ced Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 7 Nov 2023 15:44:14 +0100 Subject: [PATCH 101/133] Update docs/output.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- docs/output.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/output.md b/docs/output.md index 1e115eee..5e44a3f0 100644 --- a/docs/output.md +++ b/docs/output.md @@ -5,7 +5,6 @@ This document describes the output produced by the pipeline. This document describes the output produced by the pipeline. Most of the plots are taken from the MultiQC report, which summarises results at the end of the pipeline. -Please refer to the respective Output documentation: The directories listed below will be created in the results directory after the pipeline has finished. All paths are relative to the top-level results directory. - [Output targeted](output/targeted.md) From 82b874c6e56367ff9af2896c03b6abebc383844a Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 7 Nov 2023 15:44:25 +0100 Subject: [PATCH 102/133] Update docs/output.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- docs/output.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/output.md b/docs/output.md index 5e44a3f0..ca0c8c42 100644 --- a/docs/output.md +++ b/docs/output.md @@ -2,7 +2,7 @@ ## Introduction -This document describes the output produced by the pipeline. This document describes the output produced by the pipeline. Most of the plots are taken from the MultiQC report, which summarises results at the end of the pipeline. +This document describes the output produced by the pipeline. From 14f28c6cc97f154d7f80b6ed61c9af8b7ecd742c Mon Sep 17 00:00:00 2001 From: nf-core-bot Date: Tue, 7 Nov 2023 14:45:35 +0000 Subject: [PATCH 103/133] [automated] Fix linting with Prettier --- README.md | 5 +---- docs/output.md | 4 ---- 2 files changed, 1 insertion(+), 8 deletions(-) diff --git a/README.md b/README.md index 832a0ec1..38a74435 100644 --- a/README.md +++ b/README.md @@ -70,7 +70,6 @@ to set-up Nextflow. Make sure to [test your setup](https://nf-co.re/docs/usage/i with `-profile test` before running the workflow on actual data. ::: - First, prepare a samplesheet with your input data that looks as follows: `samplesheet.csv`: @@ -113,13 +112,11 @@ For more details about the output files and reports, please refer to the ## Credits - -nf-core/crisprseq targeted is based on [CRISPR-A](https://doi.org/10.1101/2022.09.02.506351) [[Sanvicente-García, et.al. (2023)](https://doi.org/10.1371/journal.pcbi.1011137)], originally written by Marta Sanvicente García at [Translational Synthetic Biology](https://synbio.upf.edu/) from [Universitat Pompeu Fabra](https://www.upf.edu/home). nf-core/crisprseq was originally written by Júlia Mir Pedrol, Laurence Kuhlburger. +nf-core/crisprseq targeted is based on [CRISPR-A](https://doi.org/10.1101/2022.09.02.506351) [[Sanvicente-García, et.al. (2023)](https://doi.org/10.1371/journal.pcbi.1011137)], originally written by Marta Sanvicente García at [Translational Synthetic Biology](https://synbio.upf.edu/) from [Universitat Pompeu Fabra](https://www.upf.edu/home). nf-core/crisprseq was originally written by Júlia Mir Pedrol, Laurence Kuhlburger. It was re-written in Nextflow DSL2 and is primarily maintained by Júlia Mir Pedrol (@mirpedrol) at [Quantitative Biology Center (QBiC)](https://www.qbic.uni-tuebingen.de/) from [Universität Tübingen](https://uni-tuebingen.de/en/). nf-core/crisprseq screening was written and is primarly maintained by Laurence Kuhlburger (@LaurenceKuhl) at [Quantitative Biology Center (QBiC)](https://www.qbic.uni-tuebingen.de/) from [Universität Tübingen](https://uni-tuebingen.de/en/). - diff --git a/docs/output.md b/docs/output.md index ca0c8c42..f112182b 100644 --- a/docs/output.md +++ b/docs/output.md @@ -4,9 +4,5 @@ This document describes the output produced by the pipeline. - - - - [Output targeted](output/targeted.md) - [Output screening](output/screening.md) - From 7e16e87d9935772ddf377bbe04e6adc1febd4012 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 7 Nov 2023 15:54:59 +0100 Subject: [PATCH 104/133] Fix fastqc --- modules/nf-core/fastqc/main.nf | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/modules/nf-core/fastqc/main.nf b/modules/nf-core/fastqc/main.nf index 249f9064..07d5e433 100644 --- a/modules/nf-core/fastqc/main.nf +++ b/modules/nf-core/fastqc/main.nf @@ -29,11 +29,7 @@ process FASTQC { printf "%s %s\\n" $rename_to | while read old_name new_name; do [ -f "\${new_name}" ] || ln -s \$old_name \$new_name done - - fastqc \\ - $args \\ - --threads $task.cpus \\ - $renamed_files + fastqc $args --threads $task.cpus $renamed_files cat <<-END_VERSIONS > versions.yml "${task.process}": From 5d83f6d9b9acffb0eef7fcd48217289a4f2efa8e Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 7 Nov 2023 15:57:19 +0100 Subject: [PATCH 105/133] Update README.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 38a74435..803e70ed 100644 --- a/README.md +++ b/README.md @@ -112,7 +112,7 @@ For more details about the output files and reports, please refer to the ## Credits -nf-core/crisprseq targeted is based on [CRISPR-A](https://doi.org/10.1101/2022.09.02.506351) [[Sanvicente-García, et.al. (2023)](https://doi.org/10.1371/journal.pcbi.1011137)], originally written by Marta Sanvicente García at [Translational Synthetic Biology](https://synbio.upf.edu/) from [Universitat Pompeu Fabra](https://www.upf.edu/home). nf-core/crisprseq was originally written by Júlia Mir Pedrol, Laurence Kuhlburger. +nf-core/crisprseq targeted is based on [CRISPR-A](https://doi.org/10.1101/2022.09.02.506351) [[Sanvicente-García, et.al. (2023)](https://doi.org/10.1371/journal.pcbi.1011137)], originally written by Marta Sanvicente García at [Translational Synthetic Biology](https://synbio.upf.edu/) from [Universitat Pompeu Fabra](https://www.upf.edu/home). It was re-written in Nextflow DSL2 and is primarily maintained by Júlia Mir Pedrol (@mirpedrol) at [Quantitative Biology Center (QBiC)](https://www.qbic.uni-tuebingen.de/) from [Universität Tübingen](https://uni-tuebingen.de/en/). nf-core/crisprseq screening was written and is primarly maintained by Laurence Kuhlburger (@LaurenceKuhl) at [Quantitative Biology Center (QBiC)](https://www.qbic.uni-tuebingen.de/) from [Universität Tübingen](https://uni-tuebingen.de/en/). From cfe1fd82fe8ad5e08583c4cd300cfd27b68d9ad4 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 7 Nov 2023 15:57:28 +0100 Subject: [PATCH 106/133] Update docs/output.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- docs/output.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/output.md b/docs/output.md index f112182b..f6e1cc39 100644 --- a/docs/output.md +++ b/docs/output.md @@ -3,6 +3,7 @@ ## Introduction This document describes the output produced by the pipeline. +Please refer to the respective Output documentation: - [Output targeted](output/targeted.md) - [Output screening](output/screening.md) From 5f191109e5a151913006d29877b125a794bcc5e6 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 7 Nov 2023 15:57:47 +0100 Subject: [PATCH 107/133] Update README.md MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Júlia Mir Pedrol --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 803e70ed..fbacd7bb 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,6 @@ # ![nf-core/crisprseq](docs/images/nf-core-crisprseq_logo_light.png#gh-light-mode-only) ![nf-core/crisprseq](docs/images/nf-core-crisprseq_logo_dark.png#gh-dark-mode-only) +[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.8116072-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.8116072) [![GitHub Actions CI Status](https://github.com/nf-core/crisprseq/workflows/nf-core%20CI/badge.svg)](https://github.com/nf-core/crisprseq/actions?query=workflow%3A%22nf-core+CI%22) [![GitHub Actions Linting Status](https://github.com/nf-core/crisprseq/workflows/nf-core%20linting/badge.svg)](https://github.com/nf-core/crisprseq/actions?query=workflow%3A%22nf-core+linting%22)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX) From 8583f1ab8cb214fdc511df8bef4ca6a562cc8682 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 8 Nov 2023 09:26:02 +0100 Subject: [PATCH 108/133] Bump version --- CHANGELOG.md | 3 ++- assets/multiqc_config.yml | 4 ++-- nextflow.config | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8fd0a0dc..3453b0ec 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [v2.1.0dev] +## [v2.1.0 - Margarita Salas](https://github.com/nf-core/crisprseq/releases/tag/2.1.0) - [08.11.2023] ### Added @@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed - Change to `process_high` for the mageck mle module ([#60](https://github.com/nf-core/crisprseq/pull/60) +- Fix paired-end samplesheet file for screening ([#60](https://github.com/nf-core/crisprseq/pull/60) - Summary processes don't modify the input file anymore, allowing resuming these processes ([#66](https://github.com/nf-core/crisprseq/pull/66)) - Do not stash unexistent files, use empty lists instead. Fixes AWS tests ([#67](https://github.com/nf-core/crisprseq/pull/67)) - Rename process `merging_summary` to `preprocessing_summary` to improve clarity ([#69](https://github.com/nf-core/crisprseq/pull/69)) diff --git a/assets/multiqc_config.yml b/assets/multiqc_config.yml index 368215a8..a754e6ab 100644 --- a/assets/multiqc_config.yml +++ b/assets/multiqc_config.yml @@ -1,7 +1,7 @@ report_comment: > - This report has been generated by the
      nf-core/crisprseq + This report has been generated by the nf-core/crisprseq analysis pipeline. For information about how to interpret these results, please see the - documentation. + documentation. report_section_order: "nf-core-crisprseq-methods-description": order: -1000 diff --git a/nextflow.config b/nextflow.config index adcec17c..1be05b5b 100644 --- a/nextflow.config +++ b/nextflow.config @@ -265,7 +265,7 @@ manifest { description = """Pipeline for the analysis of CRISPR data""" mainScript = 'main.nf' nextflowVersion = '!>=23.04.0' - version = '2.1.0dev' + version = '2.1.0' doi = '' } From 4bb1ef4c1fb7935764287b51d6e2ae15bf04c565 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Wed, 8 Nov 2023 11:30:19 +0100 Subject: [PATCH 109/133] Modify surname into a chips flavour --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3453b0ec..c88307c2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [v2.1.0 - Margarita Salas](https://github.com/nf-core/crisprseq/releases/tag/2.1.0) - [08.11.2023] +## [v2.1.0 - Jamon Salas](https://github.com/nf-core/crisprseq/releases/tag/2.1.0) - [08.11.2023] ### Added From 63000ada5044bf387dc409e4f86986e63c840e4c Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Thu, 9 Nov 2023 16:34:50 +0100 Subject: [PATCH 110/133] Add versions --- modules/local/bagel2/bf.nf | 7 ++++++- modules/local/bagel2/fc.nf | 12 ++++++++---- modules/local/bagel2/graph.nf | 12 +++++++++++- modules/local/bagel2/pr.nf | 9 +++++++-- modules/local/mageck/graphrra.nf | 15 +++++++++++++++ workflows/crisprseq_screening.nf | 19 ++++++++++++++++++- 6 files changed, 65 insertions(+), 9 deletions(-) diff --git a/modules/local/bagel2/bf.nf b/modules/local/bagel2/bf.nf index 9f5fe090..3ff86603 100644 --- a/modules/local/bagel2/bf.nf +++ b/modules/local/bagel2/bf.nf @@ -16,7 +16,7 @@ process BAGEL2_BF { output: tuple val(meta), path("*.bf"), emit: bf - //path "versions.yml" , emit: versions + path "versions.yml" , emit: versions when: task.ext.when == null || task.ext.when @@ -28,6 +28,11 @@ process BAGEL2_BF { """ BAGEL.py bf -i $foldchange -o '${meta.treatment}_vs_${meta.reference}.bf' $args -e $reference_essentials -n $reference_nonessentials -c ${meta.treatment} + cat <<-END_VERSIONS > versions.yml + "${task.process}": + python: \$(python --version | sed 's/Python //g') + BAGEL2: \$( BAGEL.py version | grep -o 'Version: [0-9.]*' | awk '{print \$2}' | grep -v '^\$') + END_VERSIONS """ } diff --git a/modules/local/bagel2/fc.nf b/modules/local/bagel2/fc.nf index bec12be1..b65afaea 100644 --- a/modules/local/bagel2/fc.nf +++ b/modules/local/bagel2/fc.nf @@ -11,9 +11,9 @@ process BAGEL2_FC { tuple val(meta), path(count_table) output: - tuple val(meta), path("*.foldchange"), emit: foldchange - tuple val(meta), path("*.normed_readcount"), emit: normed_counts - //path "versions.yml" , emit: versions + tuple val(meta), path("*.foldchange") , emit: foldchange + tuple val(meta), path("*.normed_readcount") , emit: normed_counts + path "versions.yml" , emit: versions when: task.ext.when == null || task.ext.when @@ -24,7 +24,11 @@ process BAGEL2_FC { """ BAGEL.py fc -i $count_table -o ${meta.treatment}_vs_${meta.reference} -c $meta.reference $args - + cat <<-END_VERSIONS > versions.yml + "${task.process}": + python: \$(python --version | sed 's/Python //g') + BAGEL2: \$( BAGEL.py version | grep -o 'Version: [0-9.]*' | awk '{print \$2}' | grep -v '^\$') + END_VERSIONS """ } diff --git a/modules/local/bagel2/graph.nf b/modules/local/bagel2/graph.nf index c14e7810..270c265f 100644 --- a/modules/local/bagel2/graph.nf +++ b/modules/local/bagel2/graph.nf @@ -13,7 +13,7 @@ process BAGEL2_GRAPH { output: path("*.png") , emit: pictures - + path "versions.yml" , emit: versions when: task.ext.when == null || task.ext.when @@ -60,6 +60,16 @@ process BAGEL2_GRAPH { plt.savefig(file_name) plt.show() + # Output version information + version = pd. __version__ + matplotlib_version = plt.matplotlib.__version__ + # alas, no `pyyaml` pre-installed in the cellranger container + with open("versions.yml", "w") as f: + f.write('"${task.process}":\\n') + f.write(f' pandas: "{version}"\\n') + f.write(f' matplotlib.pyplot: "{matplotlib_version}"\\n') + + """ diff --git a/modules/local/bagel2/pr.nf b/modules/local/bagel2/pr.nf index b5cd1793..cc4f3157 100644 --- a/modules/local/bagel2/pr.nf +++ b/modules/local/bagel2/pr.nf @@ -13,8 +13,7 @@ process BAGEL2_PR { output: tuple val(meta), path("*.pr") , emit: pr - - //path "versions.yml" , emit: versions + path "versions.yml" , emit: versions when: task.ext.when == null || task.ext.when @@ -25,6 +24,12 @@ process BAGEL2_PR { """ BAGEL.py pr -i $bf -o '${meta.treatment}_vs_${meta.reference}.pr' -e $reference_essentials -n $reference_nonessentials + + cat <<-END_VERSIONS > versions.yml + "${task.process}": + python: \$(python --version | sed 's/Python //g') + BAGEL2: \$( BAGEL.py version | grep -o 'Version: [0-9.]*' | awk '{print \$2}' | grep -v '^\$') + END_VERSIONS """ } diff --git a/modules/local/mageck/graphrra.nf b/modules/local/mageck/graphrra.nf index 2c531d5d..ec11bf55 100644 --- a/modules/local/mageck/graphrra.nf +++ b/modules/local/mageck/graphrra.nf @@ -48,6 +48,21 @@ process MAGECK_GRAPHRRA { print(p1) dev.off() + version_file_path <- "versions.yml" + version_flute <- paste(unlist(packageVersion("MAGeCKFlute")), collapse = ".") + version_ggplot <- paste(unlist(packageVersion("MAGeCKFlute")), collapse = ".") + + f <- file(version_file_path, "w") + writeLines('"${task.process}":', f) + writeLines(" MAGeCKFlute: ", f, sep = "") + writeLines(version_flute, f) + writeLines(" ggplot2: ", f, sep = "") + writeLines(version_ggplot, f) + close(f) + + + + """ diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index ff2a61b5..95a9e22d 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -116,7 +116,7 @@ workflow CRISPRSEQ_SCREENING { [[id: condition, single_end: single_end], fastqs] } .set { joined } - joined.dump(tag:"metadata") + // // MODULE: Run mageck count @@ -147,6 +147,9 @@ workflow CRISPRSEQ_SCREENING { params.min_targeted_genes ) + ch_versions = ch_versions.mix(CRISPRCLEANR_NORMALIZE.out.versions) + + CRISPRCLEANR_NORMALIZE.out.norm_count_file.map { it -> it[1] }.set { ch_counts } @@ -162,9 +165,12 @@ workflow CRISPRSEQ_SCREENING { counts ) + ch_versions = ch_versions.mix(MAGECK_TEST.out.versions) + MAGECK_GRAPHRRA ( MAGECK_TEST.out.gene_summary ) + //TODO: Missing versions } if(params.rra_contrasts) { @@ -180,6 +186,7 @@ workflow CRISPRSEQ_SCREENING { BAGEL2_FC ( counts ) + ch_versions = ch_versions.mix(BAGEL2_FC.out.versions) BAGEL2_BF ( BAGEL2_FC.out.foldchange, @@ -187,12 +194,18 @@ workflow CRISPRSEQ_SCREENING { ch_bagel_reference_nonessentials ) + ch_versions = ch_versions.mix(BAGEL2_BF.out.versions) + + ch_bagel_pr = BAGEL2_BF.out.bf.combine(ch_bagel_reference_essentials) .combine(ch_bagel_reference_nonessentials) BAGEL2_PR ( ch_bagel_pr ) + + ch_versions = ch_versions.mix(BAGEL2_PR.out.versions) + BAGEL2_GRAPH ( BAGEL2_PR.out.pr ) @@ -207,6 +220,10 @@ workflow CRISPRSEQ_SCREENING { MAGECK_MLE ( ch_designed_mle ) + + ch_versions = ch_versions.mix(MAGECK_MLE.out.versions) + + } CUSTOM_DUMPSOFTWAREVERSIONS ( From c0f0e7455b710536d8cc153428893bc4ab3d0e31 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Thu, 9 Nov 2023 16:38:06 +0100 Subject: [PATCH 111/133] fix zenodo links citing all versions --- README.md | 6 +++--- lib/WorkflowMain.groovy | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 09ff2465..ffc72899 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,8 @@ # ![nf-core/crisprseq](docs/images/nf-core-crisprseq_logo_light.png#gh-light-mode-only) ![nf-core/crisprseq](docs/images/nf-core-crisprseq_logo_dark.png#gh-dark-mode-only) -[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.8116072-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.8116072) +[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.7598496-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.7598496) [![GitHub Actions CI Status](https://github.com/nf-core/crisprseq/workflows/nf-core%20CI/badge.svg)](https://github.com/nf-core/crisprseq/actions?query=workflow%3A%22nf-core+CI%22) -[![GitHub Actions Linting Status](https://github.com/nf-core/crisprseq/workflows/nf-core%20linting/badge.svg)](https://github.com/nf-core/crisprseq/actions?query=workflow%3A%22nf-core+linting%22)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.XXXXXXX-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.XXXXXXX) +[![GitHub Actions Linting Status](https://github.com/nf-core/crisprseq/workflows/nf-core%20linting/badge.svg)](https://github.com/nf-core/crisprseq/actions?query=workflow%3A%22nf-core+linting%22)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results) [![Nextflow](https://img.shields.io/badge/nextflow%20DSL2-%E2%89%A523.04.0-23aa62.svg)](https://www.nextflow.io/) [![run with conda](http://img.shields.io/badge/run%20with-conda-3EB049?labelColor=000000&logo=anaconda)](https://docs.conda.io/en/latest/) @@ -139,7 +139,7 @@ For further information or help, don't hesitate to get in touch on the [Slack `# ## Citations -If you use nf-core/crisprseq for your analysis, please cite it using the following doi: [10.5281/zenodo.8116072](https://doi.org/10.5281/zenodo.8116072) +If you use nf-core/crisprseq for your analysis, please cite it using the following doi: [10.5281/zenodo.7598496](https://doi.org/10.5281/zenodo.7598496) An extensive list of references for the tools used by the pipeline can be found in the [`CITATIONS.md`](CITATIONS.md) file. diff --git a/lib/WorkflowMain.groovy b/lib/WorkflowMain.groovy index 36db450c..0e40058b 100755 --- a/lib/WorkflowMain.groovy +++ b/lib/WorkflowMain.groovy @@ -12,7 +12,7 @@ class WorkflowMain { public static String citation(workflow) { return "If you use ${workflow.manifest.name} for your analysis please cite:\n\n" + "* The pipeline\n" + - " https://doi.org/10.5281/zenodo.8116072\n\n" + + " https://doi.org/10.5281/zenodo.7598496\n\n" + "* The nf-core framework\n" + " https://doi.org/10.1038/s41587-020-0439-x\n\n" + "* Software dependencies\n" + From d40255956fd9062a0ec4e858ef3984cac4560cd8 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Fri, 10 Nov 2023 08:57:32 +0100 Subject: [PATCH 112/133] add template updates to all aws fulltests --- .github/workflows/awsfulltest.yml | 2 +- .github/workflows/awsfulltest_screening.yml | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.github/workflows/awsfulltest.yml b/.github/workflows/awsfulltest.yml index fb0e299f..df8badba 100644 --- a/.github/workflows/awsfulltest.yml +++ b/.github/workflows/awsfulltest.yml @@ -25,7 +25,7 @@ jobs: parameters: | { "hook_url": "${{ secrets.MEGATESTS_ALERTS_SLACK_HOOK_URL }}", - "outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/crisprseq/results-${{ github.sha }}" + "outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/crisprseq/results-${{ github.sha }}/targeted_test" } profiles: test_full diff --git a/.github/workflows/awsfulltest_screening.yml b/.github/workflows/awsfulltest_screening.yml index df435c92..8c91e9cf 100644 --- a/.github/workflows/awsfulltest_screening.yml +++ b/.github/workflows/awsfulltest_screening.yml @@ -14,18 +14,22 @@ jobs: runs-on: ubuntu-latest steps: - name: Launch workflow via tower - uses: nf-core/tower-action@v3 + uses: seqeralabs/action-tower-launch@v2 with: workspace_id: ${{ secrets.TOWER_WORKSPACE_ID }} access_token: ${{ secrets.TOWER_ACCESS_TOKEN }} compute_env: ${{ secrets.TOWER_COMPUTE_ENV }} - workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/crisprseq/work-${{ github.sha }}/screening_test + revision: ${{ github.sha }} + workdir: s3://${{ secrets.AWS_S3_BUCKET }}/work/crisprseq/work-${{ github.sha }} parameters: | { + "hook_url": "${{ secrets.MEGATESTS_ALERTS_SLACK_HOOK_URL }}", "outdir": "s3://${{ secrets.AWS_S3_BUCKET }}/crisprseq/results-${{ github.sha }}/screening_test" } profiles: test_screening_full - uses: actions/upload-artifact@v3 with: name: Tower debug log file - path: tower_action_*.log + path: | + tower_action_*.log + tower_action_*.json From 516519d73a033bb04e59b541195275ad60109120 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Fri, 10 Nov 2023 09:55:23 +0100 Subject: [PATCH 113/133] fix dump_parameters function according to dev version of the nf-core template --- lib/NfcoreTemplate.groovy | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/lib/NfcoreTemplate.groovy b/lib/NfcoreTemplate.groovy index 01b8653d..783c3fab 100755 --- a/lib/NfcoreTemplate.groovy +++ b/lib/NfcoreTemplate.groovy @@ -227,15 +227,14 @@ class NfcoreTemplate { // Dump pipeline parameters in a json file // public static void dump_parameters(workflow, params) { - def output_d = new File("${params.outdir}/pipeline_info/") - if (!output_d.exists()) { - output_d.mkdirs() - } - def timestamp = new java.util.Date().format( 'yyyy-MM-dd_HH-mm-ss') - def output_pf = new File(output_d, "params_${timestamp}.json") + def filename = "params_${timestamp}.json" + def temp_pf = new File(workflow.launchDir.toString(), ".${filename}") def jsonStr = JsonOutput.toJson(params) - output_pf.text = JsonOutput.prettyPrint(jsonStr) + temp_pf.text = JsonOutput.prettyPrint(jsonStr) + + FilesEx.copyTo(temp_pf.toPath(), "${params.outdir}/pipeline_info/params_${timestamp}.json") + temp_pf.delete() } // From 4ca08acce4003aeb0556a48b7e57a792810ca89c Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Fri, 10 Nov 2023 10:21:08 +0100 Subject: [PATCH 114/133] add NfcoreTemplate.groovy to .nf-core.yml to fix linting --- .nf-core.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.nf-core.yml b/.nf-core.yml index 065203c3..94c07a2e 100644 --- a/.nf-core.yml +++ b/.nf-core.yml @@ -1,4 +1,4 @@ repository_type: pipeline lint: - # We skip these linting as we have splitted tests between targeted and screening - files_exist: conf/test.config + files_unchanged: + - lib/NfcoreTemplate.groovy # Introduced a change ahead of the nf-core/tools release From eec96e66ac3bd5d213419d388e2f6eec2471d1b0 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Fri, 10 Nov 2023 10:49:45 +0100 Subject: [PATCH 115/133] copy NfcoreTemplate.groovy from nf-core template 2.11dev --- lib/NfcoreTemplate.groovy | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/lib/NfcoreTemplate.groovy b/lib/NfcoreTemplate.groovy index 783c3fab..e248e4c3 100755 --- a/lib/NfcoreTemplate.groovy +++ b/lib/NfcoreTemplate.groovy @@ -4,6 +4,7 @@ import org.yaml.snakeyaml.Yaml import groovy.json.JsonOutput +import nextflow.extension.FilesEx class NfcoreTemplate { @@ -141,12 +142,14 @@ class NfcoreTemplate { try { if (params.plaintext_email) { throw GroovyException('Send plaintext e-mail, not HTML') } // Try to send HTML e-mail using sendmail + def sendmail_tf = new File(workflow.launchDir.toString(), ".sendmail_tmp.html") + sendmail_tf.withWriter { w -> w << sendmail_html } [ 'sendmail', '-t' ].execute() << sendmail_html log.info "-${colors.purple}[$workflow.manifest.name]${colors.green} Sent summary e-mail to $email_address (sendmail)-" } catch (all) { // Catch failures and try with plaintext def mail_cmd = [ 'mail', '-s', subject, '--content-type=text/html', email_address ] - if ( mqc_report.size() <= max_multiqc_email_size.toBytes() ) { + if ( mqc_report != null && mqc_report.size() <= max_multiqc_email_size.toBytes() ) { mail_cmd += [ '-A', mqc_report ] } mail_cmd.execute() << email_html @@ -155,14 +158,16 @@ class NfcoreTemplate { } // Write summary e-mail HTML to a file - def output_d = new File("${params.outdir}/pipeline_info/") - if (!output_d.exists()) { - output_d.mkdirs() - } - def output_hf = new File(output_d, "pipeline_report.html") + def output_hf = new File(workflow.launchDir.toString(), ".pipeline_report.html") output_hf.withWriter { w -> w << email_html } - def output_tf = new File(output_d, "pipeline_report.txt") + FilesEx.copyTo(output_hf.toPath(), "${params.outdir}/pipeline_info/pipeline_report.html"); + output_hf.delete() + + // Write summary e-mail TXT to a file + def output_tf = new File(workflow.launchDir.toString(), ".pipeline_report.txt") output_tf.withWriter { w -> w << email_txt } + FilesEx.copyTo(output_tf.toPath(), "${params.outdir}/pipeline_info/pipeline_report.txt"); + output_tf.delete() } // From b24e0ce13aa229278e82e29f1dc8a3a4973c4d10 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Fri, 10 Nov 2023 11:00:35 +0100 Subject: [PATCH 116/133] fix .nf-core.yml --- .nf-core.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.nf-core.yml b/.nf-core.yml index 94c07a2e..085dbd0a 100644 --- a/.nf-core.yml +++ b/.nf-core.yml @@ -1,4 +1,6 @@ repository_type: pipeline lint: + files_exist: + - conf/test.config # We skip these linting as we have splitted tests between targeted and screening files_unchanged: - lib/NfcoreTemplate.groovy # Introduced a change ahead of the nf-core/tools release From 06b98c4ee8af18dc6cd84f6b6ddce430d023aada Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Mir=20Pedrol?= Date: Fri, 10 Nov 2023 11:20:35 +0100 Subject: [PATCH 117/133] Apply suggestions from code review --- CHANGELOG.md | 4 ++-- conf/test_screening.config | 2 +- nextflow.config | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index c88307c2..9f846e3b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -14,8 +14,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Fixed -- Change to `process_high` for the mageck mle module ([#60](https://github.com/nf-core/crisprseq/pull/60) -- Fix paired-end samplesheet file for screening ([#60](https://github.com/nf-core/crisprseq/pull/60) +- Change to `process_high` for the mageck mle module ([#60](https://github.com/nf-core/crisprseq/pull/60)) +- Fix paired-end samplesheet file for screening ([#60](https://github.com/nf-core/crisprseq/pull/60)) - Summary processes don't modify the input file anymore, allowing resuming these processes ([#66](https://github.com/nf-core/crisprseq/pull/66)) - Do not stash unexistent files, use empty lists instead. Fixes AWS tests ([#67](https://github.com/nf-core/crisprseq/pull/67)) - Rename process `merging_summary` to `preprocessing_summary` to improve clarity ([#69](https://github.com/nf-core/crisprseq/pull/69)) diff --git a/conf/test_screening.config b/conf/test_screening.config index 0ac8ed89..7661aacf 100644 --- a/conf/test_screening.config +++ b/conf/test_screening.config @@ -25,5 +25,5 @@ params { crisprcleanr = "Brunello_Library" mle_design_matrix = "https://raw.githubusercontent.com/nf-core/test-datasets/crisprseq/testdata/design_matrix.txt" library = "https://raw.githubusercontent.com/nf-core/test-datasets/crisprseq/testdata/brunello_target_sequence.txt" - rra_contrasts = "https://raw.githubusercontent.com/nf-core/test-datasets/crisprseq/testdata/rra_contrasts.txt" + rra_contrasts = "https://raw.githubusercontent.com/nf-core/test-datasets/crisprseq/testdata/rra_contrasts.txt" } diff --git a/nextflow.config b/nextflow.config index 1be05b5b..5f898729 100644 --- a/nextflow.config +++ b/nextflow.config @@ -266,7 +266,7 @@ manifest { mainScript = 'main.nf' nextflowVersion = '!>=23.04.0' version = '2.1.0' - doi = '' + doi = 'https://doi.org/10.5281/zenodo.7598496' } // Load modules.config for DSL2 module specific options From 3818dd28c3e333fd589c641faf9b28c33aff16cc Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Fri, 10 Nov 2023 14:02:29 +0100 Subject: [PATCH 118/133] Add versions for graph rra --- modules/local/mageck/graphrra.nf | 2 +- workflows/crisprseq_screening.nf | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/local/mageck/graphrra.nf b/modules/local/mageck/graphrra.nf index ec11bf55..4e349b4c 100644 --- a/modules/local/mageck/graphrra.nf +++ b/modules/local/mageck/graphrra.nf @@ -12,7 +12,7 @@ process MAGECK_GRAPHRRA { output: tuple val(meta), path("*.png"), emit: graphs - + path "versions.yml" , emit: versions when: task.ext.when == null || task.ext.when diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index d198f831..6e393238 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -170,7 +170,7 @@ workflow CRISPRSEQ_SCREENING { MAGECK_GRAPHRRA ( MAGECK_TEST.out.gene_summary ) - //TODO: Missing versions + ch_versions = ch_versions.mix(MAGECK_GRAPHRRA.out.versions) } if(params.rra_contrasts) { From f3c6ace64a16399d0c82c44e0448cec9c4089105 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Mon, 13 Nov 2023 09:34:53 +0100 Subject: [PATCH 119/133] Try to add versions --- modules/local/bagel2/graph.nf | 1 - modules/local/bagel2/pr.nf | 2 +- modules/local/clustering_summary.nf | 2 ++ modules/local/preprocessing_summary.nf | 2 ++ modules/nf-core/mageck/count/main.nf | 9 ++++----- templates/clustering_summary.py | 3 +++ templates/preprocessing_summary.py | 8 ++++++++ workflows/crisprseq_screening.nf | 4 +++- workflows/crisprseq_targeted.nf | 4 +++- 9 files changed, 26 insertions(+), 9 deletions(-) diff --git a/modules/local/bagel2/graph.nf b/modules/local/bagel2/graph.nf index 270c265f..62cb12d0 100644 --- a/modules/local/bagel2/graph.nf +++ b/modules/local/bagel2/graph.nf @@ -20,7 +20,6 @@ process BAGEL2_GRAPH { script: def args = task.ext.args ?: '' - def prefix = task.ext.prefix ?: "${meta.id}" """ #!/usr/bin/env python3 diff --git a/modules/local/bagel2/pr.nf b/modules/local/bagel2/pr.nf index cc4f3157..e27366d6 100644 --- a/modules/local/bagel2/pr.nf +++ b/modules/local/bagel2/pr.nf @@ -23,7 +23,7 @@ process BAGEL2_PR { def prefix = task.ext.prefix ?: "${meta.id}" """ - BAGEL.py pr -i $bf -o '${meta.treatment}_vs_${meta.reference}.pr' -e $reference_essentials -n $reference_nonessentials + BAGEL.py pr -i $bf -o '${meta.treatment}_vs_${meta.reference}.pr' -e $reference_essentials -n $reference_nonessentials $args cat <<-END_VERSIONS > versions.yml "${task.process}": diff --git a/modules/local/clustering_summary.nf b/modules/local/clustering_summary.nf index b31d4f36..a48fa270 100644 --- a/modules/local/clustering_summary.nf +++ b/modules/local/clustering_summary.nf @@ -12,6 +12,8 @@ process CLUSTERING_SUMMARY { output: tuple val(meta), path("*_clustering_summary.csv"), emit: summary + path "versions.yml", emit: versions + when: task.ext.when == null || task.ext.when diff --git a/modules/local/preprocessing_summary.nf b/modules/local/preprocessing_summary.nf index 52d29e17..f1aafa7c 100644 --- a/modules/local/preprocessing_summary.nf +++ b/modules/local/preprocessing_summary.nf @@ -13,6 +13,8 @@ process PREPROCESSING_SUMMARY { output: tuple val(meta), path("*_preprocessing_summary.csv"), emit: summary + path "versions.yml", emit: versions + when: task.ext.when == null || task.ext.when diff --git a/modules/nf-core/mageck/count/main.nf b/modules/nf-core/mageck/count/main.nf index ced51e85..f47ad55e 100644 --- a/modules/nf-core/mageck/count/main.nf +++ b/modules/nf-core/mageck/count/main.nf @@ -12,13 +12,12 @@ process MAGECK_COUNT { path(library) output: - tuple val(meta), path("*count.txt"), emit: count + tuple val(meta), path("*count.txt"), emit: count tuple val(meta), path("*.count_normalized.txt"), emit: norm - tuple val(meta), path("*.countsummary.txt"), emit: summary + tuple val(meta), path("*.countsummary.txt"), emit: summary tuple val(meta), path("*.count_normalized.txt"), emit: normalized - tuple val(meta), path("*.log"), emit: logs - - path "versions.yml" , emit: versions + tuple val(meta), path("*.log"), emit: logs + path "versions.yml", emit: versions when: task.ext.when == null || task.ext.when diff --git a/templates/clustering_summary.py b/templates/clustering_summary.py index 5b1dfd42..33feb1b1 100644 --- a/templates/clustering_summary.py +++ b/templates/clustering_summary.py @@ -22,3 +22,6 @@ add_line = False if add_line: output_file.write(f"clustered-reads, {clusters_count}\\n") + +with open("versions.yml", "w") as f: + f.write('"${task.process}":\\n') diff --git a/templates/preprocessing_summary.py b/templates/preprocessing_summary.py index 10cb94b1..c2a30578 100755 --- a/templates/preprocessing_summary.py +++ b/templates/preprocessing_summary.py @@ -49,3 +49,11 @@ output_file.write( f"quality-filtered-reads, {trimmed_reads_count} ({round(trimmed_reads_count * 100 / assembled_reads_count,1)}%)\\n" ) + + # Output version information + #version = pd.__version__ + #matplotlib_version = plt.matplotlib.__version__ + # alas, no `pyyaml` pre-installed in the cellranger container + with open("versions.yml", "w") as f: + f.write('"${task.process}":\\n') + diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 6e393238..031fe86a 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -128,7 +128,6 @@ workflow CRISPRSEQ_SCREENING { ch_versions = ch_versions.mix(MAGECK_COUNT.out.versions.first()) - MAGECK_COUNT.out.count.map { it -> it[1] }.set { ch_counts } @@ -209,6 +208,9 @@ workflow CRISPRSEQ_SCREENING { BAGEL2_GRAPH ( BAGEL2_PR.out.pr ) + + ch_versions = ch_versions.mix(BAGEL2_GRAPH.out.versions) + } if(params.mle_design_matrix) { diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index a94f939a..87c4cb89 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -601,6 +601,9 @@ workflow CRISPRSEQ_TARGETED { .join(PREPROCESSING_SUMMARY.out.summary) ) + ch_versions = ch_versions.mix(CLUSTERING_SUMMARY.out.versions) + + // // MODULE: Mapping with Minimap2 @@ -702,7 +705,6 @@ workflow CRISPRSEQ_TARGETED { } } .set { ch_template_bam } - ch_versions = ch_versions.mix(MINIMAP2_ALIGN_TEMPLATE.out.versions) ch_mapped_bam .join(SAMTOOLS_INDEX.out.bai) From 1abc804a7e7973231a857ad1b1eed95a5d8ffae7 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Mon, 13 Nov 2023 10:30:49 +0100 Subject: [PATCH 120/133] Update modules/local/bagel2/graph.nf --- modules/local/bagel2/graph.nf | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/local/bagel2/graph.nf b/modules/local/bagel2/graph.nf index 62cb12d0..270c265f 100644 --- a/modules/local/bagel2/graph.nf +++ b/modules/local/bagel2/graph.nf @@ -20,6 +20,7 @@ process BAGEL2_GRAPH { script: def args = task.ext.args ?: '' + def prefix = task.ext.prefix ?: "${meta.id}" """ #!/usr/bin/env python3 From c8ad5a24611b46703739db99c843f57e46201587 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Mon, 13 Nov 2023 13:12:14 +0100 Subject: [PATCH 121/133] Fix typo --- modules/local/mageck/graphrra.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/local/mageck/graphrra.nf b/modules/local/mageck/graphrra.nf index 4e349b4c..d6d35b66 100644 --- a/modules/local/mageck/graphrra.nf +++ b/modules/local/mageck/graphrra.nf @@ -50,7 +50,7 @@ process MAGECK_GRAPHRRA { version_file_path <- "versions.yml" version_flute <- paste(unlist(packageVersion("MAGeCKFlute")), collapse = ".") - version_ggplot <- paste(unlist(packageVersion("MAGeCKFlute")), collapse = ".") + version_ggplot <- paste(unlist(packageVersion("ggplot2")), collapse = ".") f <- file(version_file_path, "w") writeLines('"${task.process}":', f) From 0034a4d9cb171e7c6d1fa37cece24420ce890bcf Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 13 Nov 2023 13:03:48 +0100 Subject: [PATCH 122/133] add versions to template scripts --- templates/alignment_summary.py | 4 ++++ templates/clustering_summary.py | 5 +++-- templates/preprocessing_summary.py | 17 +++++++---------- 3 files changed, 14 insertions(+), 12 deletions(-) diff --git a/templates/alignment_summary.py b/templates/alignment_summary.py index 12dd6109..a6b12c06 100644 --- a/templates/alignment_summary.py +++ b/templates/alignment_summary.py @@ -22,3 +22,7 @@ add_line = False if add_line: output_file.write(f"aligned-reads, {mapped_reads_count} ({round(mapped_reads_percentage, 1)}%)\\n") + +with open("versions.yml", "w") as f: + f.write('"${task.process}":\\n') + f.write(f' pysam: "{pysam.__version__}"\\n') diff --git a/templates/clustering_summary.py b/templates/clustering_summary.py index 33feb1b1..4981351a 100644 --- a/templates/clustering_summary.py +++ b/templates/clustering_summary.py @@ -3,10 +3,10 @@ import gzip import sys -from Bio import SeqIO +import Bio with gzip.open("$reads", "rt") as handle: - clusters_count = len(list(SeqIO.parse(handle, "fastq"))) + clusters_count = len(list(Bio.SeqIO.parse(handle, "fastq"))) with open("$summary", "r") as summary: summary_lines = summary.readlines() @@ -25,3 +25,4 @@ with open("versions.yml", "w") as f: f.write('"${task.process}":\\n') + f.write(f' biopython: "{Bio.__version__}"\\n') diff --git a/templates/preprocessing_summary.py b/templates/preprocessing_summary.py index c2a30578..2089eb7c 100755 --- a/templates/preprocessing_summary.py +++ b/templates/preprocessing_summary.py @@ -2,19 +2,19 @@ import gzip -from Bio import SeqIO +import Bio with gzip.open("${raw_reads[0]}", "rt") as handle: - raw_reads_count = len(list(SeqIO.parse(handle, "fastq"))) + raw_reads_count = len(list(Bio.SeqIO.parse(handle, "fastq"))) if "$assembled_reads" == "": assembled_reads_count = 0 else: with gzip.open("$assembled_reads", "rt") as handle: - assembled_reads_count = len(list(SeqIO.parse(handle, "fastq"))) # Merged reads R1+R2 + assembled_reads_count = len(list(Bio.SeqIO.parse(handle, "fastq"))) # Merged reads R1+R2 with gzip.open("$trimmed_reads", "rt") as handle: - trimmed_reads_count = len(list(SeqIO.parse(handle, "fastq"))) # Filtered reads + trimmed_reads_count = len(list(Bio.SeqIO.parse(handle, "fastq"))) # Filtered reads if "$trimmed_adapters" == "": adapters_count = 0 @@ -50,10 +50,7 @@ f"quality-filtered-reads, {trimmed_reads_count} ({round(trimmed_reads_count * 100 / assembled_reads_count,1)}%)\\n" ) - # Output version information - #version = pd.__version__ - #matplotlib_version = plt.matplotlib.__version__ - # alas, no `pyyaml` pre-installed in the cellranger container - with open("versions.yml", "w") as f: - f.write('"${task.process}":\\n') +with open("versions.yml", "w") as f: + f.write('"${task.process}":\\n') + f.write(f' biopython: "{Bio.__version__}"\\n') From 2e58467bbf21f56556d1048f65c6107bd90047e8 Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 13 Nov 2023 13:05:59 +0100 Subject: [PATCH 123/133] collect versions --- workflows/crisprseq_targeted.nf | 3 +++ 1 file changed, 3 insertions(+) diff --git a/workflows/crisprseq_targeted.nf b/workflows/crisprseq_targeted.nf index 87c4cb89..abf67bb2 100644 --- a/workflows/crisprseq_targeted.nf +++ b/workflows/crisprseq_targeted.nf @@ -370,6 +370,7 @@ workflow CRISPRSEQ_TARGETED { PREPROCESSING_SUMMARY { ch_preprocessing_summary_data } + ch_versions = ch_versions.mix(PREPROCESSING_SUMMARY.out.versions) if (params.umi_clustering) { @@ -663,6 +664,7 @@ workflow CRISPRSEQ_TARGETED { ch_mapped_bam .join(CLUSTERING_SUMMARY.out.summary) ) + ch_versions = ch_versions.mix(ALIGNMENT_SUMMARY.out.versions) // @@ -705,6 +707,7 @@ workflow CRISPRSEQ_TARGETED { } } .set { ch_template_bam } + ch_versions = ch_versions.mix(MINIMAP2_ALIGN_TEMPLATE.out.versions) ch_mapped_bam .join(SAMTOOLS_INDEX.out.bai) From 69d20c1b74dbc6e567da64ae03870f41ea7e2aab Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 13 Nov 2023 13:21:16 +0100 Subject: [PATCH 124/133] add versions to R scripts --- modules/local/cigar_parser.nf | 8 +++++++- modules/local/crisprseq_plotter.nf | 14 +++++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/modules/local/cigar_parser.nf b/modules/local/cigar_parser.nf index 5b87bba4..45dfd7d5 100644 --- a/modules/local/cigar_parser.nf +++ b/modules/local/cigar_parser.nf @@ -41,7 +41,13 @@ process CIGAR_PARSER { cat <<-END_VERSIONS > versions.yml "${task.process}": - Rscript: \$(Rscript --version) + seqinr: \$(Rscript -e "cat(paste(packageVersion('seqinr'), collapse='.'))") + Rsamtools: \$(Rscript -e "cat(paste(packageVersion('Rsamtools'), collapse='.'))") + dplyr: \$(Rscript -e "cat(paste(packageVersion('dplyr'), collapse='.'))") + ShortRead: \$(Rscript -e "cat(paste(packageVersion('ShortRead'), collapse='.'))") + jsonlite: \$(Rscript -e "cat(paste(packageVersion('jsonlite'), collapse='.'))") + stringr: \$(Rscript -e "cat(paste(packageVersion('stringr'), collapse='.'))") + plotly: \$(Rscript -e "cat(paste(packageVersion('plotly'), collapse='.'))") END_VERSIONS """ } diff --git a/modules/local/crisprseq_plotter.nf b/modules/local/crisprseq_plotter.nf index 5612260e..c3b0ed62 100644 --- a/modules/local/crisprseq_plotter.nf +++ b/modules/local/crisprseq_plotter.nf @@ -35,7 +35,19 @@ process CRISPRSEQ_PLOTTER { cat <<-END_VERSIONS > versions.yml "${task.process}": - Rscript: \$(Rscript --version) + ggplot2: \$(Rscript -e "cat(paste(packageVersion('ggplot2'), collapse='.'))") + ShortRead: \$(Rscript -e "cat(paste(packageVersion('ShortRead'), collapse='.'))") + plyr: \$(Rscript -e "cat(paste(packageVersion('plyr'), collapse='.'))") + dplyr: \$(Rscript -e "cat(paste(packageVersion('dplyr'), collapse='.'))") + seqinr: \$(Rscript -e "cat(paste(packageVersion('seqinr'), collapse='.'))") + ggpubr: \$(Rscript -e "cat(paste(packageVersion('ggpubr'), collapse='.'))") + ggmsa: \$(Rscript -e "cat(paste(packageVersion('ggmsa'), collapse='.'))") + seqmagick: \$(Rscript -e "cat(paste(packageVersion('seqmagick'), collapse='.'))") + stringr: \$(Rscript -e "cat(paste(packageVersion('stringr'), collapse='.'))") + tidyr: \$(Rscript -e "cat(paste(packageVersion('tidyr'), collapse='.'))") + ggseqlogo: \$(Rscript -e "cat(paste(packageVersion('ggseqlogo'), collapse='.'))") + plotly: \$(Rscript -e "cat(paste(packageVersion('plotly'), collapse='.'))") + cowplot: \$(Rscript -e "cat(paste(packageVersion('cowplot'), collapse='.'))") END_VERSIONS """ } From b134f12d61b0928565d68d90bbd868200723765a Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 13 Nov 2023 13:35:30 +0100 Subject: [PATCH 125/133] add versions channel to alignment_summary --- modules/local/alignment_summary.nf | 1 + 1 file changed, 1 insertion(+) diff --git a/modules/local/alignment_summary.nf b/modules/local/alignment_summary.nf index 3520689f..1947812c 100644 --- a/modules/local/alignment_summary.nf +++ b/modules/local/alignment_summary.nf @@ -12,6 +12,7 @@ process ALIGNMENT_SUMMARY { output: tuple val(meta), path("*_alignment_summary.csv"), emit: summary + path "versions.yml", emit: versions when: task.ext.when == null || task.ext.when From ea081e0c557e019e63ded3ed2efc2a310d40533c Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Mon, 13 Nov 2023 13:48:55 +0100 Subject: [PATCH 126/133] fix import SeqIO --- templates/clustering_summary.py | 3 ++- templates/preprocessing_summary.py | 7 ++++--- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/templates/clustering_summary.py b/templates/clustering_summary.py index 4981351a..1f2d7eb8 100644 --- a/templates/clustering_summary.py +++ b/templates/clustering_summary.py @@ -4,9 +4,10 @@ import sys import Bio +from Bio import SeqIO with gzip.open("$reads", "rt") as handle: - clusters_count = len(list(Bio.SeqIO.parse(handle, "fastq"))) + clusters_count = len(list(SeqIO.parse(handle, "fastq"))) with open("$summary", "r") as summary: summary_lines = summary.readlines() diff --git a/templates/preprocessing_summary.py b/templates/preprocessing_summary.py index 2089eb7c..16f8c74a 100755 --- a/templates/preprocessing_summary.py +++ b/templates/preprocessing_summary.py @@ -3,18 +3,19 @@ import gzip import Bio +from Bio import SeqIO with gzip.open("${raw_reads[0]}", "rt") as handle: - raw_reads_count = len(list(Bio.SeqIO.parse(handle, "fastq"))) + raw_reads_count = len(list(SeqIO.parse(handle, "fastq"))) if "$assembled_reads" == "": assembled_reads_count = 0 else: with gzip.open("$assembled_reads", "rt") as handle: - assembled_reads_count = len(list(Bio.SeqIO.parse(handle, "fastq"))) # Merged reads R1+R2 + assembled_reads_count = len(list(SeqIO.parse(handle, "fastq"))) # Merged reads R1+R2 with gzip.open("$trimmed_reads", "rt") as handle: - trimmed_reads_count = len(list(Bio.SeqIO.parse(handle, "fastq"))) # Filtered reads + trimmed_reads_count = len(list(SeqIO.parse(handle, "fastq"))) # Filtered reads if "$trimmed_adapters" == "": adapters_count = 0 From d7fa6291e64d53c83207136e62f1933e84b9c122 Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Mon, 13 Nov 2023 16:04:16 +0100 Subject: [PATCH 127/133] Last todo statement --- docs/usage/screening.md | 3 +-- modules/local/bagel2/graph.nf | 3 --- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/docs/usage/screening.md b/docs/usage/screening.md index bdbdd4c9..63fba93e 100644 --- a/docs/usage/screening.md +++ b/docs/usage/screening.md @@ -59,8 +59,7 @@ MAGeCK RRA performs robust ranking aggregation to identify genes that are consis | ----------------------- | ------------------- | | treatment1 | control1 | -A full example can be found here : -#TODO: add link to rawcontent of nf-core test +A full example can be found [here](https://raw.githubusercontent.com/nf-core/test-datasets/crisprseq/testdata/full_test/samplesheet_full.csv). ### MAGeCK mle diff --git a/modules/local/bagel2/graph.nf b/modules/local/bagel2/graph.nf index 270c265f..32c96046 100644 --- a/modules/local/bagel2/graph.nf +++ b/modules/local/bagel2/graph.nf @@ -7,7 +7,6 @@ process BAGEL2_GRAPH { 'https://depot.galaxyproject.org/singularity/mulled-v2-54e0353146eca1531516863e8235bf7385d76663:c9ff1a9eec871c54cbea815eae778da702623978-0': 'biocontainers/mulled-v2-54e0353146eca1531516863e8235bf7385d76663:c9ff1a9eec871c54cbea815eae778da702623978-0' }" - input: tuple val(meta), path(pr) @@ -30,7 +29,6 @@ process BAGEL2_GRAPH { #### #### Orient a reference sequence according to reads orientation. - import pandas as pd import matplotlib.pyplot as plt @@ -69,7 +67,6 @@ process BAGEL2_GRAPH { f.write(f' pandas: "{version}"\\n') f.write(f' matplotlib.pyplot: "{matplotlib_version}"\\n') - """ From 510c563f043ebccf153b3e3939262590b697cc4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Mir=20Pedrol?= Date: Mon, 13 Nov 2023 16:08:38 +0100 Subject: [PATCH 128/133] Update docs/usage/screening.md Co-authored-by: LaurenceKuhl --- docs/usage/screening.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/usage/screening.md b/docs/usage/screening.md index bdbdd4c9..17717cf8 100644 --- a/docs/usage/screening.md +++ b/docs/usage/screening.md @@ -59,8 +59,8 @@ MAGeCK RRA performs robust ranking aggregation to identify genes that are consis | ----------------------- | ------------------- | | treatment1 | control1 | -A full example can be found here : -#TODO: add link to rawcontent of nf-core test +A full example can be found [here](https://raw.githubusercontent.com/nf-core/test-datasets/crisprseq/testdata/full_test/samplesheet_full.csv). + ### MAGeCK mle From 8b344a3114ab3da444eecd2603665d25b5794914 Mon Sep 17 00:00:00 2001 From: nf-core-bot Date: Mon, 13 Nov 2023 15:09:50 +0000 Subject: [PATCH 129/133] [automated] Fix linting with Prettier --- docs/usage/screening.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/usage/screening.md b/docs/usage/screening.md index 17717cf8..63fba93e 100644 --- a/docs/usage/screening.md +++ b/docs/usage/screening.md @@ -61,7 +61,6 @@ MAGeCK RRA performs robust ranking aggregation to identify genes that are consis A full example can be found [here](https://raw.githubusercontent.com/nf-core/test-datasets/crisprseq/testdata/full_test/samplesheet_full.csv). - ### MAGeCK mle MAGeCK MLE uses a maximum likelihood estimation approach to estimate the effects of gene knockout on cell fitness. It models the read count data of guide RNAs targeting each gene and estimates the dropout probability for each gene. MAGeCK mle requires a design matrix. The design matrix is a `txt` file indicating the effects of different conditions on different samples. From 1c9a8300ac32edc0830a865771f168659b2a5fee Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Mir=20Pedrol?= Date: Tue, 14 Nov 2023 08:32:32 +0100 Subject: [PATCH 130/133] Apply suggestions from code review Co-authored-by: Friederike Hanssen --- README.md | 3 ++- modules/local/bagel2/graph.nf | 1 - modules/local/mageck/graphrra.nf | 4 ---- 3 files changed, 2 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index ffc72899..b9f2281e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@ # ![nf-core/crisprseq](docs/images/nf-core-crisprseq_logo_light.png#gh-light-mode-only) ![nf-core/crisprseq](docs/images/nf-core-crisprseq_logo_dark.png#gh-dark-mode-only) -[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results)[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.7598496-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.7598496) +[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results) +[![Cite with Zenodo](http://img.shields.io/badge/DOI-10.5281/zenodo.7598496-1073c8?labelColor=000000)](https://doi.org/10.5281/zenodo.7598496) [![GitHub Actions CI Status](https://github.com/nf-core/crisprseq/workflows/nf-core%20CI/badge.svg)](https://github.com/nf-core/crisprseq/actions?query=workflow%3A%22nf-core+CI%22) [![GitHub Actions Linting Status](https://github.com/nf-core/crisprseq/workflows/nf-core%20linting/badge.svg)](https://github.com/nf-core/crisprseq/actions?query=workflow%3A%22nf-core+linting%22)[![AWS CI](https://img.shields.io/badge/CI%20tests-full%20size-FF9900?labelColor=000000&logo=Amazon%20AWS)](https://nf-co.re/crisprseq/results) diff --git a/modules/local/bagel2/graph.nf b/modules/local/bagel2/graph.nf index 270c265f..355d2f43 100644 --- a/modules/local/bagel2/graph.nf +++ b/modules/local/bagel2/graph.nf @@ -7,7 +7,6 @@ process BAGEL2_GRAPH { 'https://depot.galaxyproject.org/singularity/mulled-v2-54e0353146eca1531516863e8235bf7385d76663:c9ff1a9eec871c54cbea815eae778da702623978-0': 'biocontainers/mulled-v2-54e0353146eca1531516863e8235bf7385d76663:c9ff1a9eec871c54cbea815eae778da702623978-0' }" - input: tuple val(meta), path(pr) diff --git a/modules/local/mageck/graphrra.nf b/modules/local/mageck/graphrra.nf index d6d35b66..69f48ae7 100644 --- a/modules/local/mageck/graphrra.nf +++ b/modules/local/mageck/graphrra.nf @@ -59,10 +59,6 @@ process MAGECK_GRAPHRRA { writeLines(" ggplot2: ", f, sep = "") writeLines(version_ggplot, f) close(f) - - - - """ From 23caebbab5e97b8144215907f9433541ebda9ebc Mon Sep 17 00:00:00 2001 From: mirpedrol Date: Tue, 14 Nov 2023 08:34:11 +0100 Subject: [PATCH 131/133] add licenses to template scripts --- templates/alignment_summary.py | 6 ++++++ templates/clustering_summary.py | 6 ++++++ templates/preprocessing_summary.py | 6 ++++++ 3 files changed, 18 insertions(+) diff --git a/templates/alignment_summary.py b/templates/alignment_summary.py index a6b12c06..035e7b90 100644 --- a/templates/alignment_summary.py +++ b/templates/alignment_summary.py @@ -1,5 +1,11 @@ #!/usr/bin/env python +############################ +#### Summary of alignment +#### author: Júlia Mir @mirpedrol +#### Released under the MIT license. See git repository (https://github.com/nf-core/crisprseq) for full license text. +############################ + import sys import pysam diff --git a/templates/clustering_summary.py b/templates/clustering_summary.py index 1f2d7eb8..b1ad29ed 100644 --- a/templates/clustering_summary.py +++ b/templates/clustering_summary.py @@ -1,5 +1,11 @@ #!/usr/bin/env python +############################ +#### Summary of clustering +#### author: Júlia Mir @mirpedrol +#### Released under the MIT license. See git repository (https://github.com/nf-core/crisprseq) for full license text. +############################ + import gzip import sys diff --git a/templates/preprocessing_summary.py b/templates/preprocessing_summary.py index 16f8c74a..13c698ce 100755 --- a/templates/preprocessing_summary.py +++ b/templates/preprocessing_summary.py @@ -1,5 +1,11 @@ #!/usr/bin/env python +############################ +#### Summary of reads preprocessing +#### author: Júlia Mir @mirpedrol +#### Released under the MIT license. See git repository (https://github.com/nf-core/crisprseq) for full license text. +############################ + import gzip import Bio From fd384fa07623aa34c1753aef6c09b6b1a1aaa81e Mon Sep 17 00:00:00 2001 From: LaurenceKuhl Date: Tue, 14 Nov 2023 11:17:21 +0100 Subject: [PATCH 132/133] Fix version collection --- workflows/crisprseq_screening.nf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workflows/crisprseq_screening.nf b/workflows/crisprseq_screening.nf index 031fe86a..e37619ce 100644 --- a/workflows/crisprseq_screening.nf +++ b/workflows/crisprseq_screening.nf @@ -229,7 +229,7 @@ workflow CRISPRSEQ_SCREENING { } CUSTOM_DUMPSOFTWAREVERSIONS ( - ch_versions.unique().collectFile(name: 'collated_versions.yml') + ch_versions.unique{ it.text }.collectFile(name: 'collated_versions.yml') ) // From 659177368b3b1bbe049a8d896f541d48ca588aca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=BAlia=20Mir=20Pedrol?= Date: Tue, 14 Nov 2023 12:31:34 +0100 Subject: [PATCH 133/133] Apply suggestions from code review --- CHANGELOG.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 9f846e3b..0b8f63bc 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,7 +3,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [v2.1.0 - Jamon Salas](https://github.com/nf-core/crisprseq/releases/tag/2.1.0) - [08.11.2023] +## [v2.1.0 - Jamon Salas](https://github.com/nf-core/crisprseq/releases/tag/2.1.0) - [14.11.2023] ### Added @@ -11,6 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Use `Channel.fromSamplesheet()` from `nf-validation` to validate input sample sheets and create an input channel ([#58](https://github.com/nf-core/crisprseq/pull/58)) - BAGEL2 as a module which detects gene essentiality ([#60](https://github.com/nf-core/crisprseq/pull/60)) - Add custom plots to MultiQC report (cutadapt module, read processing, edition, edition QC) ([#64](https://github.com/nf-core/crisprseq/pull/64)) +- Template update v2.10 ([#79](https://github.com/nf-core/crisprseq/pull/79)) ### Fixed