From a9cb70ece9a9689c4954622658e9c5694e4499bf Mon Sep 17 00:00:00 2001 From: Maxime Garcia Date: Wed, 12 Jun 2019 16:52:00 +0200 Subject: [PATCH] Configs and docs (#12) * Update CI scripts * Add possibility to download singularity images with helper script * Update Docs * Improve build.nf * Use label for processes configuration * Update configuration files * Disable Docker in singularity profile * Disable Singularity in docker profile * Disable Docker and Singularity in conda profile * Simplify check_max() function --- .travis.yml | 2 +- CHANGELOG.md | 429 ++- Jenkinsfile | 2 +- README.md | 1 + bin/concatenateVCFs.sh | 59 +- build.nf | 54 +- conf/base.config | 104 +- docs/README.md | 9 + docs/install_bianca.md | 179 ++ docs/output.md | 1 - docs/posters/ESHG_2019.pdf | Bin 0 -> 341880 bytes docs/posters/ESHG_2019.svg | 5580 +++++++++++++++++++++++++++++++++++ docs/reference.md | 2 +- main.nf | 263 +- nextflow.config | 50 +- scripts/build_reference.sh | 14 +- scripts/download_docker.sh | 37 - scripts/download_image.sh | 73 + scripts/filter_locifile.py | 25 + scripts/make_snapshot.sh | 53 + scripts/run_tests.sh | 56 +- scripts/selectROI.py | 232 ++ scripts/speedseq.filter.awk | 50 - 23 files changed, 6963 insertions(+), 312 deletions(-) create mode 100644 docs/install_bianca.md create mode 100644 docs/posters/ESHG_2019.pdf create mode 100644 docs/posters/ESHG_2019.svg delete mode 100755 scripts/download_docker.sh create mode 100755 scripts/download_image.sh create mode 100644 scripts/filter_locifile.py create mode 100755 scripts/make_snapshot.sh create mode 100644 scripts/selectROI.py delete mode 100644 scripts/speedseq.filter.awk diff --git a/.travis.yml b/.travis.yml index 08f48f99a3..4db211fa00 100644 --- a/.travis.yml +++ b/.travis.yml @@ -27,7 +27,7 @@ before_install: # PRs to master are only ok if coming from dev branch - '[ $TRAVIS_PULL_REQUEST = "false" ] || [ $TRAVIS_BRANCH != "master" ] || ([ $TRAVIS_PULL_REQUEST_SLUG = $TRAVIS_REPO_SLUG ] && [ $TRAVIS_PULL_REQUEST_BRANCH = "dev" ])' # Pull the docker image first so the test doesn't wait for this - - "travis_retry ./scripts/download_docker.sh --test $TEST" + - "travis_retry ./scripts/download_image.sh -n docker --test $TEST" install: # Install Nextflow diff --git a/CHANGELOG.md b/CHANGELOG.md index 3a0c68eccd..a3f5c33d86 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,4 +1,429 @@ # nf-core/sarek: Changelog -## v2.5dev - [date] -Initial release of nf-core/sarek, created with the [nf-core](http://nf-co.re/) template. +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +## Unreleased +Initial release of `nf-core/sarek`, created with the [nf-core](http://nf-co.re/) template. + +### `Added` +- [#2](https://github.com/nf-core/sarek/pull/2) - Create `nf-core/sarek` `environment.yml` file +- [#2](https://github.com/nf-core/sarek/pull/2), [#3](https://github.com/nf-core/sarek/pull/3), [#4](https://github.com/nf-core/sarek/pull/4), [#5](https://github.com/nf-core/sarek/pull/5), [#7](https://github.com/nf-core/sarek/pull/7), [#9](https://github.com/nf-core/sarek/pull/9), [#11](https://github.com/nf-core/sarek/pull/11), [#12](https://github.com/nf-core/sarek/pull/12) - Add CI for `nf-core/sarek` +- [#3](https://github.com/nf-core/sarek/pull/3) - Add preprocessing to `nf-core/sarek` +- [#4](https://github.com/nf-core/sarek/pull/4) - Add variant calling to `nf-core/sarek` with `HaplotypeCaller`, and single mode `Manta` and `Strelka` +- [#5](https://github.com/nf-core/sarek/pull/5) - Add variant calling to `nf-core/sarek` with `Manta`, `Strelka`, `Strelka Best Practices`, `MuTecT2`, `FreeBayes`, `ASCAT`, `ControlFREEC` +- [#6](https://github.com/nf-core/sarek/pull/6) - Add default containers for annotation to `nf-core/sarek` +- [#7](https://github.com/nf-core/sarek/pull/7) - Add annotation +- [#7](https://github.com/nf-core/sarek/pull/7) - Add MultiQC +- [#7](https://github.com/nf-core/sarek/pull/7) - Add social preview image in `png` and `svg` format +- [#7](https://github.com/nf-core/sarek/pull/7), [#8](https://github.com/nf-core/sarek/pull/8), [#11](https://github.com/nf-core/sarek/pull/11) - Add helper script `run_tests.sh` to run different tests +- [#7](https://github.com/nf-core/sarek/pull/7), [#8](https://github.com/nf-core/sarek/pull/8), [#9](https://github.com/nf-core/sarek/pull/9) - Add automatic build of specific containers for annotation for `GRCh37`, `GRCh38` and `GRCm38` using `CircleCI` +- [#7](https://github.com/nf-core/sarek/pull/7), [#8](https://github.com/nf-core/sarek/pull/8), [#9](https://github.com/nf-core/sarek/pull/9), [#11](https://github.com/nf-core/sarek/pull/11) - Add helper script `build_reference.sh` to build small reference from [nf-core/test-datasets:sarek](https://github.com/nf-core/test-datasets/tree/sarek) +- [#7](https://github.com/nf-core/sarek/pull/7), [#9](https://github.com/nf-core/sarek/pull/9), [#11](https://github.com/nf-core/sarek/pull/11), [#12](https://github.com/nf-core/sarek/pull/12) - Add helper script `download_image.sh` to download containers for testing +- [#8](https://github.com/nf-core/sarek/pull/8) - Add test configation for easier testing +- [#9](https://github.com/nf-core/sarek/pull/9), [#11](https://github.com/nf-core/sarek/pull/11) - Add scripts for `ASCAT` +- [#11](https://github.com/nf-core/sarek/pull/11) - Add automatic build of specific containers for annotation for `CanFam3.1` using `CircleCI` +- [#11](https://github.com/nf-core/sarek/pull/11), [#12](https://github.com/nf-core/sarek/pull/12) - Add posters and abstracts +- [#12](https://github.com/nf-core/sarek/pull/12) - Use `label` for processes configation +- [#12](https://github.com/nf-core/sarek/pull/12) - Add helper scripts `filter_locifile.py` and `selectROI.py` +- [#12](https://github.com/nf-core/sarek/pull/12) - Add helper script `make_snapshot.sh` to make an archive for usage on a secure cluster + +### `Changed` +- [#1](https://github.com/nf-core/sarek/pull/1), [#2](https://github.com/nf-core/sarek/pull/2), [#3](https://github.com/nf-core/sarek/pull/3), [#4](https://github.com/nf-core/sarek/pull/4), [#5](https://github.com/nf-core/sarek/pull/5), [#6](https://github.com/nf-core/sarek/pull/6), [#7](https://github.com/nf-core/sarek/pull/7), [#8](https://github.com/nf-core/sarek/pull/8), [#9](https://github.com/nf-core/sarek/pull/9), [#11](https://github.com/nf-core/sarek/pull/11), [#12](https://github.com/nf-core/sarek/pull/12) - Update docs +- [#4](https://github.com/nf-core/sarek/pull/4) - Update `cancerit-allelecount` from `2.1.2` to `4.0.2` +- [#4](https://github.com/nf-core/sarek/pull/4) - Update `gatk4` from `4.1.1.0` to `4.1.2.0` +- [#7](https://github.com/nf-core/sarek/pull/7) - `--sampleDir` is now deprecated, use `--sample` instead +- [#7](https://github.com/nf-core/sarek/pull/8) - `--annotateVCF` is now deprecated, use `--sample` instead +- [#8](https://github.com/nf-core/sarek/pull/8), [#12](https://github.com/nf-core/sarek/pull/12) - Improve helper script `build.nf` for downloading and building reference files +- [#9](https://github.com/nf-core/sarek/pull/9) - ApplyBQSR is now parallelized +- [#9](https://github.com/nf-core/sarek/pull/9) - Fastq files are named following "${idRun}_R1.fastq.gz" in the FastQC output for easier reporting +- [#9](https://github.com/nf-core/sarek/pull/9) - Status is now a map with `idpatient`, `idsample` as keys (ie: `status = statusMap[idPatient, idSample]`) +- [#9](https://github.com/nf-core/sarek/pull/9) - Use `ensembl-vep` `95.2` instead of `96.0` +- [#11](https://github.com/nf-core/sarek/pull/11) - Summary HTML from VWP is now in the `Reports` directory +- [#12](https://github.com/nf-core/sarek/pull/12) - Update configuration files +- [#12](https://github.com/nf-core/sarek/pull/12) - Disable `Docker` in `singularity` profile +- [#12](https://github.com/nf-core/sarek/pull/12) - Disable `Singularity` in `docker` profile +- [#12](https://github.com/nf-core/sarek/pull/12) - Disable `Docker` and `Singularity` in `conda` profile +- [#12](https://github.com/nf-core/sarek/pull/12) - Simplify `check_max()` function + +### `Removed` + +- [#9](https://github.com/nf-core/sarek/pull/9) - Removed `relatedness2` graph from `vcftools stats` + +### `Fixed` +- [#3](https://github.com/nf-core/sarek/pull/3) - Fix Docker ownership +- [#11](https://github.com/nf-core/sarek/pull/11) - Fix MergeMpileup PublishDir + +## [2.3.FIX1] - 2019-03-04 + +### `Fixed` +- [#742](https://github.com/SciLifeLab/Sarek/pull/742) - Fix output dirs (HaplotypeCaller that was not recognized by annotate.nf introduced by [#728](https://github.com/SciLifeLab/Sarek/pull/728)) + +## [2.3] - Äpar - 2019-02-27 + +### `Added` +- [#628](https://github.com/SciLifeLab/Sarek/pull/628), [#722](https://github.com/SciLifeLab/Sarek/pull/722) - `ASCAT` now use `.gc` file +- [#712](https://github.com/SciLifeLab/Sarek/pull/712), [#718](https://github.com/SciLifeLab/Sarek/pull/718) - Added possibilities to run Sarek with `conda` +- [#719](https://github.com/SciLifeLab/Sarek/pull/719) - Annotation documentation +- [#719](https://github.com/SciLifeLab/Sarek/pull/719) - Helper script to download `snpeff` and `VEP` cache files +- [#719](https://github.com/SciLifeLab/Sarek/pull/719) - New `--annotation_cache`, `--snpEff_cache`, `--vep_cache` parameters +- [#719](https://github.com/SciLifeLab/Sarek/pull/719) - Possibility to use cache wen annotating with `snpEff` and `VEP` +- [#722](https://github.com/SciLifeLab/Sarek/pull/722) - Add path to ASCAT `.gc` file in `igenomes.config` +- [#728](https://github.com/SciLifeLab/Sarek/pull/728) - Update `Sarek-data` submodule with multiple patients TSV file +- [#732](https://github.com/SciLifeLab/Sarek/pull/732) - Add `cadd_WG_SNVs`, `cadd_WG_SNVs_tbi`, `cadd_InDels`, `cadd_InDels_tbi` and `cadd_cache` params +- [#732](https://github.com/SciLifeLab/Sarek/pull/732) - Add tabix indexed cache for VEP +- [#732](https://github.com/SciLifeLab/Sarek/pull/732) - New `DownloadCADD` process to download CADD files +- [#732](https://github.com/SciLifeLab/Sarek/pull/732) - Specify values for `cadd_WG_SNVs`, `cadd_WG_SNVs_tbi`, `cadd_InDels`, `cadd_InDels_tbi` and `cadd_cache` params in `munin.conf` file +- [#732](https://github.com/SciLifeLab/Sarek/pull/732) - Use `cadd_cache` param for optional use of CADD VEP plugin in `annotate.nf` +- [#732](https://github.com/SciLifeLab/Sarek/pull/732) - VEP cache has now fasta files for `--HGVS` +- [#735](https://github.com/SciLifeLab/Sarek/pull/735) - Added `--exome` for Manta, and for StrelkaBP +- [#735](https://github.com/SciLifeLab/Sarek/pull/735) - Added Travis CI test for targeted + +### `Changed` + +- [#710](https://github.com/SciLifeLab/Sarek/pull/710) - Improve release checklist and script +- [#711](https://github.com/SciLifeLab/Sarek/pull/711) - Improve configuration priorities +- [#716](https://github.com/SciLifeLab/Sarek/pull/716) - Update paths to containers and iGenomes +- [#717](https://github.com/SciLifeLab/Sarek/pull/717) - `checkFileExtension` has changed to `hasExtension`, and now only verify if file has extension +- [#717](https://github.com/SciLifeLab/Sarek/pull/717) - `fastqFiles` renamed to `inputFiles` +- [#717](https://github.com/SciLifeLab/Sarek/pull/717) - `mapping` step can now map BAM files too +- [#717](https://github.com/SciLifeLab/Sarek/pull/717) - `MapReads` can now convert BAM to FASTQ and feed it to BWA on the fly +- [#717](https://github.com/SciLifeLab/Sarek/pull/717), [#732](https://github.com/SciLifeLab/Sarek/pull/732) - Update documentation +- [#719](https://github.com/SciLifeLab/Sarek/pull/719) - `snpeff` and `vep` containers are now built with conda +- [#719](https://github.com/SciLifeLab/Sarek/pull/719) - `vepCacheVersion` is now defined in `conf/genomes.config` or `conf/igenomes.config` +- [#722](https://github.com/SciLifeLab/Sarek/pull/722) - Add path to ASCAT `.gc` file in `igenomes.config` +- [#722](https://github.com/SciLifeLab/Sarek/pull/722) - Update `Sarek-data` submodule +- [#723](https://github.com/SciLifeLab/Sarek/pull/723), [#725](https://github.com/SciLifeLab/Sarek/pull/725) - Update docs +- [#724](https://github.com/SciLifeLab/Sarek/pull/724) - Improved AwsBatch configuration +- [#728](https://github.com/SciLifeLab/Sarek/pull/728) - Improved usage of `targetBED` params +- [#728](https://github.com/SciLifeLab/Sarek/pull/728) - Strelka Best Practices output is now prefixed with `StrelkaBP_` +- [#728](https://github.com/SciLifeLab/Sarek/pull/728) - VCFs and Annotated VCFs are now ordered by Patient, then tools +- [#732](https://github.com/SciLifeLab/Sarek/pull/732) - Merge `buildContainers.nf` and `buildReferences.nf` in `build.nf` +- [#732](https://github.com/SciLifeLab/Sarek/pull/732) - Reduce number of CPUs for `RunVEP` to `4` cf: [VEP docs](https://www.ensembl.org/info/docs/tools/vep/script/vep_other.html) +- [#732](https://github.com/SciLifeLab/Sarek/pull/732) - Update VEP from `95.1` to `95.2` + +### `Removed` +- [#715](https://github.com/SciLifeLab/Sarek/pull/715) - Remove `defReferencesFiles` function from `buildReferences.nf` +- [#719](https://github.com/SciLifeLab/Sarek/pull/719) - `snpEff` base container is no longer used +- [#721](https://github.com/SciLifeLab/Sarek/pull/721) - Remove COSMIC docs +- [#728](https://github.com/SciLifeLab/Sarek/pull/728) - Remove `defineDirectoryMap()` +- [#732](https://github.com/SciLifeLab/Sarek/pull/732) - Removed `--database` option for VEP cf: [VEP docs](https://www.ensembl.org/info/docs/tools/vep/script/vep_other.html) + +### `Fixed` +- [#720](https://github.com/SciLifeLab/Sarek/pull/720) - bamQC is now run on the recalibrated bams, and not after MarkDuplicates +- [#726](https://github.com/SciLifeLab/Sarek/pull/726) - Fix Ascat ref file input (one file can't be a set) +- [#727](https://github.com/SciLifeLab/Sarek/pull/727) - bamQC outputs are no longer overwritten (name of dir is now the file instead of sample) +- [#728](https://github.com/SciLifeLab/Sarek/pull/728) - Fix issue with annotation that was consuming `cache` channels +- [#728](https://github.com/SciLifeLab/Sarek/pull/728) - Fix multi sample TSV file [#691](https://github.com/SciLifeLab/Sarek/issues/691) +- [#733](https://github.com/SciLifeLab/Sarek/pull/733) - Fix the possibility to specify reference files on the command line + +## [2.2.2] - 2018-12-19 + +### `Added` + +- [#671](https://github.com/SciLifeLab/Sarek/pull/671) - New `publishDirMode` param and docs +- [#673](https://github.com/SciLifeLab/Sarek/pull/673), [#675](https://github.com/SciLifeLab/Sarek/pull/675), [#676](https://github.com/SciLifeLab/Sarek/pull/676) - Profiles for BinAC and CFC clusters in Tübingen +- [#679](https://github.com/SciLifeLab/Sarek/pull/679) - Add container for `CreateIntervalBeds` +- [#692](https://github.com/SciLifeLab/Sarek/pull/692), [#697](https://github.com/SciLifeLab/Sarek/pull/697) - Add AWS iGenomes possibilities (within `conf/igenomes.conf`) +- [#694](https://github.com/SciLifeLab/Sarek/pull/694) - Add monochrome and grey logos for light or dark background +- [#698](https://github.com/SciLifeLab/Sarek/pull/698) - Add btb profile for munin server +- [#702](https://github.com/SciLifeLab/Sarek/pull/702) - Add font-ttf-dejavu-sans-mono `2.37` and fontconfig `2.12.6` to container + +### `Changed` + +- [#663](https://github.com/SciLifeLab/Sarek/pull/663) - Update `do_release.sh` script +- [#671](https://github.com/SciLifeLab/Sarek/pull/671) - publishDir modes are now params +- [#677](https://github.com/SciLifeLab/Sarek/pull/677), [#698](https://github.com/SciLifeLab/Sarek/pull/698), [#703](https://github.com/SciLifeLab/Sarek/pull/703) - Update docs +- [#678](https://github.com/SciLifeLab/Sarek/pull/678) - Changing VEP to v92 and adjusting CPUs for VEP +- [#679](https://github.com/SciLifeLab/Sarek/pull/679) - Update old awsbatch configuration +- [#682](https://github.com/SciLifeLab/Sarek/pull/682) - Specifications for memory and cpus for awsbatch +- [#693](https://github.com/SciLifeLab/Sarek/pull/693) - Qualimap bamQC is now ran after mapping and after recalibration for better QC +- [#700](https://github.com/SciLifeLab/Sarek/pull/700) - Update GATK to `4.0.9.0` +- [#702](https://github.com/SciLifeLab/Sarek/pull/702) - Update FastQC to `0.11.8` +- [#705](https://github.com/SciLifeLab/Sarek/pull/705) - Change `--TMP_DIR` by `--tmp-dir` for GATK `4.0.9.0` BaseRecalibrator +- [#706](https://github.com/SciLifeLab/Sarek/pull/706) - Update TravisCI testing + +### `Fixed` + +- [#665](https://github.com/SciLifeLab/Sarek/pull/665) - Input bam file now has always the same name (whether it is from a single fastq pair or multiple) in the MarkDuplicates process, so metrics too +- [#672](https://github.com/SciLifeLab/Sarek/pull/672) - process `PullSingularityContainers` from `buildContainers.nf` now expect a file with the correct `.simg` extension for singularity images, and no longer the `.img` one. +- [#679](https://github.com/SciLifeLab/Sarek/pull/679) - Add publishDirMode for `germlineVC.nf` +- [#700](https://github.com/SciLifeLab/Sarek/pull/700) - Fix [#699](https://github.com/SciLifeLab/Sarek/issues/699) missing DP in the FORMAT column VCFs for MuTect2 +- [#702](https://github.com/SciLifeLab/Sarek/pull/702) - Fix [#701](https://github.com/SciLifeLab/Sarek/issues/701) +- [#705](https://github.com/SciLifeLab/Sarek/pull/705) - Fix [#704](https://github.com/SciLifeLab/Sarek/issues/704) + +## [2.2.1] - 2018-10-04 + +### `Changed` + +- [#646](https://github.com/SciLifeLab/Sarek/pull/646) - Update [`pathfindr`](https://github.com/NBISweden/pathfindr) submodule +- [#659](https://github.com/SciLifeLab/Sarek/pull/659) - Update Nextflow to `0.32.0` +- [#660](https://github.com/SciLifeLab/Sarek/pull/660) - Update docs + +### `Fixed` + +- [#657](https://github.com/SciLifeLab/Sarek/pull/657) - Fix `RunMultiQC.nf` bug +- [#659](https://github.com/SciLifeLab/Sarek/pull/659) - Fix bugs due to updating Nextflow + +## [2.2.0] - Skårki - 2018-09-21 + +### `Added` + +- [#613](https://github.com/SciLifeLab/Sarek/pull/613) - Add Issue Templates (bug report and feature request) +- [#614](https://github.com/SciLifeLab/Sarek/pull/614) - Add PR Template +- [#615](https://github.com/SciLifeLab/Sarek/pull/615) - Add presentation +- [#616](https://github.com/SciLifeLab/Sarek/pull/616) - Update documentation +- [#620](https://github.com/SciLifeLab/Sarek/pull/620) - Add `tmp/` to `.gitignore` +- [#625](https://github.com/SciLifeLab/Sarek/pull/625) - Add [`pathfindr`](https://github.com/NBISweden/pathfindr) as a submodule +- [#635](https://github.com/SciLifeLab/Sarek/pull/635) - To process targeted sequencing with a target BED +- [#639](https://github.com/SciLifeLab/Sarek/pull/639) - Add a complete example analysis to docs +- [#640](https://github.com/SciLifeLab/Sarek/pull/640), [#642](https://github.com/SciLifeLab/Sarek/pull/642) - Add helper script for changing version number + +### `Changed` + +- [#608](https://github.com/SciLifeLab/Sarek/pull/608) - Update Nextflow required version +- [#615](https://github.com/SciLifeLab/Sarek/pull/615) - Use `splitCsv` instead of `readlines` +- [#616](https://github.com/SciLifeLab/Sarek/pull/616) - Update CHANGELOG +- [#621](https://github.com/SciLifeLab/Sarek/pull/621), [#638](https://github.com/SciLifeLab/Sarek/pull/638) - Improve install script +- [#621](https://github.com/SciLifeLab/Sarek/pull/621), [#638](https://github.com/SciLifeLab/Sarek/pull/638) - Simplify tests +- [#627](https://github.com/SciLifeLab/Sarek/pull/627), [#629](https://github.com/SciLifeLab/Sarek/pull/629), [#637](https://github.com/SciLifeLab/Sarek/pull/637) - Refactor docs +- [#629](https://github.com/SciLifeLab/Sarek/pull/629) - Refactor config +- [#632](https://github.com/SciLifeLab/Sarek/pull/632) - Use 2 threads and 2 cpus FastQC processes +- [#637](https://github.com/SciLifeLab/Sarek/pull/637) - Update tool version gathering +- [#638](https://github.com/SciLifeLab/Sarek/pull/638) - Use correct `.simg` extension for Singularity images +- [#639](https://github.com/SciLifeLab/Sarek/pull/639) - Smaller refactoring of the docs +- [#640](https://github.com/SciLifeLab/Sarek/pull/640) - Update RELEASE_CHECKLIST +- [#642](https://github.com/SciLifeLab/Sarek/pull/642) - MultiQC 1.5 -> 1.6 +- [#642](https://github.com/SciLifeLab/Sarek/pull/642) - Qualimap 2.2.2a -> 2.2.2b +- [#642](https://github.com/SciLifeLab/Sarek/pull/642) - Update conda channel order priorities +- [#642](https://github.com/SciLifeLab/Sarek/pull/642) - VCFanno 0.2.8 -> 0.3.0 +- [#642](https://github.com/SciLifeLab/Sarek/pull/642) - VCFtools 0.1.15 -> 0.1.16 + +### `Removed` + +- [#616](https://github.com/SciLifeLab/Sarek/pull/616) - Remove old Issue Template +- [#629](https://github.com/SciLifeLab/Sarek/pull/629) - Remove old Dockerfiles +- [#637](https://github.com/SciLifeLab/Sarek/pull/637) - Remove old comments + +### `Fixed` + +- [#621](https://github.com/SciLifeLab/Sarek/pull/621) - Fix VEP tests +- [#637](https://github.com/SciLifeLab/Sarek/pull/637) - Fix links in MD files + +## [2.1.0] - Ruotes - 2018-08-14 + +### `Added` + +- [#555](https://github.com/SciLifeLab/Sarek/pull/555) - `snpEff` output into `VEP` +- [#556](https://github.com/SciLifeLab/Sarek/pull/556) - `Strelka` Best Practices +- [#563](https://github.com/SciLifeLab/Sarek/pull/563) - Use `SnpEFF` reports in `MultiQC` +- [#568](https://github.com/SciLifeLab/Sarek/pull/568) - `VCFTools` process `RunVcftools` for QC +- [#574](https://github.com/SciLifeLab/Sarek/pull/574), [#580](https://github.com/SciLifeLab/Sarek/pull/580) - Abstracts for NPMI, JOBIM and EACR25 +- [#577](https://github.com/SciLifeLab/Sarek/pull/577) - New repository for testing: [Sarek-data](https://github.com/SciLifeLab/Sarek-data) +- [#595](https://github.com/SciLifeLab/Sarek/pull/595) - New library `QC` for functions `bamQC`, `bcftools`, `samtoolsStats`, `vcftools`, `getVersionBCFtools`, `getVersionGATK`, `getVersionManta`, `getVersionSnpEFF`, `getVersionStrelka`, `getVersionVCFtools`, `getVersionVEP` +- [#595](https://github.com/SciLifeLab/Sarek/pull/595) - New Processes `GetVersionBCFtools`, `GetVersionGATK`, `GetVersionManta`, `GetVersionSnpEFF`, `GetVersionStrelka`, `GetVersionVCFtools`, `GetVersionVEP` +- [#595](https://github.com/SciLifeLab/Sarek/pull/595) - new Python script `bin/scrape_tool_versions.py` inspired by @ewels and @apeltzer +- [#595](https://github.com/SciLifeLab/Sarek/pull/595) - New QC Process `RunVcftools` +- [#596](https://github.com/SciLifeLab/Sarek/pull/596) - New profile for BinAC cluster +- [#597](https://github.com/SciLifeLab/Sarek/pull/597) - New function `sarek_ascii()` in `SarekUtils` +- [#599](https://github.com/SciLifeLab/Sarek/pull/599), [#602](https://github.com/SciLifeLab/Sarek/pull/602) - New Process `CompressVCF` +- [#601](https://github.com/SciLifeLab/Sarek/pull/601), [#603](https://github.com/SciLifeLab/Sarek/pull/603) - Container for GATK4 +- [#606](https://github.com/SciLifeLab/Sarek/pull/606) - Add test data as a submodule from [`Sarek-data`](https://github.com/SciLifeLab/Sarek-data) +- [#608](https://github.com/SciLifeLab/Sarek/pull/608) - Add documentation on how to install Nextflow on `bianca` + +### `Changed` + +- [#557](https://github.com/SciLifeLab/Sarek/pull/557), [#583](https://github.com/SciLifeLab/Sarek/pull/583), [#585](https://github.com/SciLifeLab/Sarek/pull/585), [#588](https://github.com/SciLifeLab/Sarek/pull/588) - Update help +- [#560](https://github.com/SciLifeLab/Sarek/pull/560) - GitHub langage for the repository is now `Nextflow` +- [#561](https://github.com/SciLifeLab/Sarek/pull/561) - `do_all.sh` build only containers for one genome reference (default `GRCh38`) only +- [#571](https://github.com/SciLifeLab/Sarek/pull/571) - Only one container for all QC tools +- [#582](https://github.com/SciLifeLab/Sarek/pull/582), [#587](https://github.com/SciLifeLab/Sarek/pull/587) - Update figures +- [#595](https://github.com/SciLifeLab/Sarek/pull/595) - Function `defineDirectoryMap()` is now part of `SarekUtils` +- [#595](https://github.com/SciLifeLab/Sarek/pull/595) - Process `GenerateMultiQCconfig` replace by function `createMultiQCconfig()` +- [#597](https://github.com/SciLifeLab/Sarek/pull/597) - `extractBams()` now takes an extra parameter. +- [#597](https://github.com/SciLifeLab/Sarek/pull/597) - Move `checkFileExtension()`, `checkParameterExistence()`, `checkParameterList()`, `checkReferenceMap()`, `checkRefExistence()`, `extractBams()`, `extractGenders()`, `returnFile()`, `returnStatus()` and `returnTSV()` functions to `SarekUtils` +- [#597](https://github.com/SciLifeLab/Sarek/pull/597) - Reduce data footprint for Process `CreateRecalibrationTable` +- [#597](https://github.com/SciLifeLab/Sarek/pull/597) - Replace deprecated operator `phase` by `join`. +- [#599](https://github.com/SciLifeLab/Sarek/pull/599) - Merge is tested with `ANNOTATEALL` +- [#604](https://github.com/SciLifeLab/Sarek/pull/604) - Synching `GRCh38` `wgs_calling_regions` bedfiles +- [#607](https://github.com/SciLifeLab/Sarek/pull/607) - One container approach +- [#607](https://github.com/SciLifeLab/Sarek/pull/607) - Update to GATK4 +- [#608](https://github.com/SciLifeLab/Sarek/pull/608) - Update Nextflow required version +- [#616](https://github.com/SciLifeLab/Sarek/pull/616) - Update CHANGELOG +- [#617](https://github.com/SciLifeLab/Sarek/pull/617) - Replace deprecated $name syntax with withName + +### `Fixed` + +- [#560](https://github.com/SciLifeLab/Sarek/pull/560) - Display message for `repository` and `containerPath` +- [#566](https://github.com/SciLifeLab/Sarek/pull/566) - `slurmDownload` profile +- [#579](https://github.com/SciLifeLab/Sarek/pull/579), [#584](https://github.com/SciLifeLab/Sarek/pull/584) - `Manta` output reorganized after modification for `Strelka Best Practices` process +- [#585](https://github.com/SciLifeLab/Sarek/pull/583) - Trace file is plain txt +- [#590](https://github.com/SciLifeLab/Sarek/pull/590), [#593](https://github.com/SciLifeLab/Sarek/pull/593) - Fix Singularity installation in Travis CI testing +- [#598](https://github.com/SciLifeLab/Sarek/pull/598), [#601](https://github.com/SciLifeLab/Sarek/pull/601) - Fixes for Python script `selectROI.py` to work with CLC viewer + +### `Removed` + +- [#607](https://github.com/SciLifeLab/Sarek/pull/607) - Remove Mutect1 + +## [2.0.0] - 2018-03-23 + +### `Added` + +- basic wrapper script +- Abstract, posters and figures +- ROI selector and FreeBayes sanitizer scripts +- New logo and icon for the project +- check for existing tumor/normal channel +- `SarekUtils` with `checkParams()`, `checkParameterList()`, `checkParameterExistence()` and `isAllowedParams()` functions +- some `runOptions` for `docker` (prevent some user right problem) +- This `CHANGELOG` + +### `Changed` + +- `CAW` is now `Sarek` +- Dissect Workflow in 5 new scripts: `annotate.nf`, `main.nf`, `germlineVC.nf`, `runMultiQC.nf` and `somaticVC.nf` +- `report.html`, `timeline.html` and `trace.html` are generated in `Reports/` +- `--version` is now used to define the workflow version +- most params are now defined in the base.config file instead of in the scripts +- update RELEASE_CHECKLIST.md +- `checkParams()`, `checkParameterList()`, `checkParameterExistence()` and `isAllowedParams()` in script functions are now called within `SarekUtils` +- `nf_required_version` is now `params.nfRequiredVersion` +- in `buildReferences.nf` script, channels now begin by `ch_`, and files by `f_` +- use `PublishDir mode: 'link'` instead of `copy` +- `directoryMap` now contains `params.outDir` +- [#539](https://github.com/SciLifeLab/Sarek/issues/539) - use Nextflow support of scratch +- reordered Travis CI tests +- update documentation +- `MultiQC` version in container from v`1.4` to v`1.5` +- `vepgrch37` container base image from `release_90.6` to `release_92` +- `vepgrch38` container base image from `release_90.6` to `release_92` +- `VEP` version in containers from v`90` to v`91` +- `nucleotidesPerSecond` is now `params.nucleotidesPerSecond` +- default `params.tag` is now `latest` instead of current version, so --tag needs to be specified with the right version to be sure of using the `containers` corresponding + +### `Deprecated` + +- `standard` profile +- `uppmax-localhost.config` file + +### `Removed` + +- `scripts/skeleton_batch.sh` +- old data and tsv files +- UPPMAX directories from containers +- `--step` in `annotate.nf`, `germlineVC.nf` and `somatic.nf` +- some `runOptions` for Singularity (binding not needed anymore on UPPMAX) +- `download` profile + +### `Fixed` + +- [#530](https://github.com/SciLifeLab/Sarek/issues/530) - use `$PWD` for default `outDir` +- [#533](https://github.com/SciLifeLab/Sarek/issues/533) - Replace `VEP` `--pick` option by `--per_gene` + +## [1.2.5] - 2018-01-18 + +### `Added` + +- Zenodo for DOI +- Delivery README +- Document use of the `--sampleDir` option +- Contributing Guidelines +- Issue Templates +- Release Checklist +- `--outDir` +- `awsbatch` profile +- `aws-batch.config` config file +- `--noBAMQC` params (failing sometimes on Bianca) + +### `Changed` + +- Update `Nextflow` to `0.26.0` (new fancy report + AWS Batch) +- Extra time on Travis CI testing +- Replace `bundleDir` by `params.genome_base` +- Update `MultiQC` to `1.3` (MEGAQC FTW) +- Move and rename some test files + +### `Fixed` + +- Version of COSMIC GRCh37 v83 +- Write an error message when `--sampleDir` does not find any FASTQ files +- `base.config` for ConcatVCF process +- File specification for recalibrationReport in RecalibrateBam process (got error on AWS Batch) + +## [1.2.4] - 2017-10-27 + +### `Fixed` + +- [#488](https://github.com/SciLifeLab/Sarek/issues/488) - Better CPU requirements for `ConcatVCF` +- [#489](https://github.com/SciLifeLab/Sarek/issues/489) - Exception handling for `ASCAT` +- [#490](https://github.com/SciLifeLab/Sarek/issues/490) - CPU requirements for `runSingleStrelka` and `runSingleManta` + +## [1.2.3] - 2017-10-18 + +### `Fixed` + +- [#357](https://github.com/SciLifeLab/Sarek/issues/357) - `ASCAT` works for GRCh38 +- [#471](https://github.com/SciLifeLab/Sarek/issues/471) - Running `Singularity` on `/scratch` +- [#475](https://github.com/SciLifeLab/Sarek/issues/475) - 16 cpus for local executor +- [#480](https://github.com/SciLifeLab/Sarek/issues/480) - No `tsv` file needed for step `annotate` + +## [1.2.2] - 2017-10-06 + +### `Fixed` + +- [#479](https://github.com/SciLifeLab/Sarek/issues/479) - Typo in `uppmax-localhost.config` + +## [1.2.1] - 2017-10-06 + +### `Changed` + +- `runascat` and `runconvertallelecounts` containers are now replaced by `r-base` +- `willmclaren/ensembl-vep:release_90.5` is now base for `vepgrch37` and `vepgrch38` + +### `Removed` + +- `vep` container +- `strelka_config.ini` file + +### `Fixed` + +- [#471](https://github.com/SciLifeLab/Sarek/issues/471) - Running `Singularity` on /scratch +- [#472](https://github.com/SciLifeLab/Sarek/issues/472) - Update function to check Nextflow version +- [#473](https://github.com/SciLifeLab/Sarek/issues/473) - Remove `returnMin()` function + +## [1.2.0] - 2017-10-02 + +### `Changed` + +- Fix version for Manuscript + +## [1.1] - 2017-09-15 + +### `Added` + +- Singularity possibilities + +### `Changed` + +- Reports made by default +- Intervals file can be a bed file +- Normal sample preprocessing + HaplotypeCaller is possible +- Better Travis CI tests + +### `Fixed` + +- Memory requirements + +## [1.0] - 2017-02-16 + +### `Added` + +- Docker possibilities + +## [0.9] - 2016-11-16 + +## [0.8] - 2016-11-16 + +## [0.1] - 2016-04-05 diff --git a/Jenkinsfile b/Jenkinsfile index 42d6074d46..b4b5aa501f 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -8,7 +8,7 @@ pipeline { stages { stage('Docker setup') { steps { - sh "./scripts/download_docker.sh" + sh "./scripts/download_image.sh -n docker -t ALL" } } stage('Build references') { diff --git a/README.md b/README.md index a055578752..d2b544541c 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,7 @@ The nf-core/sarek pipeline comes with documentation about the pipeline, found in 2. Pipeline configuration * [Local installation](https://nf-co.re/usage/local_installation) * [Adding your own system config](https://nf-co.re/usage/adding_own_config) + * [Install on a secure cluster](docs/install_bianca.md) * [Reference genomes](https://nf-co.re/usage/reference_genomes) * [Extra documentation on reference](docs/reference.md) 3. [Running the pipeline](docs/usage.md) diff --git a/bin/concatenateVCFs.sh b/bin/concatenateVCFs.sh index 89bf9d125e..da01138eed 100755 --- a/bin/concatenateVCFs.sh +++ b/bin/concatenateVCFs.sh @@ -1,48 +1,59 @@ #!/usr/bin/env bash -# this script concatenates all VCFs that are in the local directory: the -# purpose is to make a single VCF from all the VCFs that were created from different intervals +set -euo pipefail + +# This script concatenates all VCF files that are in the local directory, +# that were created from different intervals to make a single final VCF usage() { echo "Usage: $0 [-i genome_index_file] [-o output.file.no.gz.extension] <-t target.bed> <-c cpus>" 1>&2; exit 1; } -while getopts "i:c:o:t:" p; do - case "${p}" in - i) - genomeIndex=${OPTARG} +while [[ $# -gt 0 ]] +do + key=$1 + case $key in + -i) + genomeIndex=$2 + shift # past argument + shift # past value ;; - c) - cpus=${OPTARG} + -c) + cpus=$2 + shift # past argument + shift # past value ;; - o) - outputFile=${OPTARG} + -o) + outputFile=$2 + shift # past argument + shift # past value ;; - t) - targetBED=${OPTARG} + -t) + targetBED=$2 + shift # past argument + shift # past value ;; *) usage + shift # past argument ;; esac done -shift $((OPTIND-1)) if [ -z ${genomeIndex} ]; then echo "Missing index file "; usage; fi if [ -z ${cpus} ]; then echo "No CPUs defined: setting to 1"; cpus=1; fi if [ -z ${outputFile} ]; then echo "Missing output file name"; usage; fi -set -euo pipefail - -# first make a header from one of the VCF intervals -# get rid of interval information only from the GATK command-line, but leave the rest +# First make a header from one of the VCF +# Remove interval information from the GATK command-line, but leave the rest FIRSTVCF=$(ls *.vcf | head -n 1) sed -n '/^[^#]/q;p' $FIRSTVCF | \ awk '!/GATKCommandLine/{print}/GATKCommandLine/{for(i=1;i<=NF;i++){if($i!~/intervals=/ && $i !~ /out=/){printf("%s ",$i)}}printf("\n")}' \ > header -# Get list of contigs from the FASTA index (.fai). We cannot use the ##contig -# header in the VCF as it is optional (FreeBayes does not save it, for example) +# Get list of contigs from the FASTA index (.fai) +# ##contig header in the VCF cannot be used as it is optional (FreeBayes does not save it, for example) + CONTIGS=($(cut -f1 ${genomeIndex})) -# concatenate VCFs in the correct order +# Concatenate VCFs in the correct order ( cat header @@ -72,14 +83,12 @@ tabix rawcalls.vcf.gz set +u -# now we have the concatenated VCF file, check for WES/panel targets, and generate a subset if there is a BED provided -echo "target is $targetBED" +# Now we have the concatenated VCF file, check for WES/panel targets, and generate a subset if there is a BED provided if [ ! -z ${targetBED+x} ]; then - echo "Selecting subset..." + echo "Target is $targetBED - Selecting subset..." bcftools isec --targets-file ${targetBED} rawcalls.vcf.gz | bgzip -@${cpus} > ${outputFile}.gz tabix ${outputFile}.gz else - # simply rename the raw calls as WGS results + # Rename the raw calls as WGS results for f in rawcalls*; do mv -v $f ${outputFile}${f#rawcalls.vcf}; done fi - diff --git a/build.nf b/build.nf index 583fccac5a..bcf1fe38d4 100644 --- a/build.nf +++ b/build.nf @@ -74,15 +74,16 @@ params.vep_cache = null ch_referencesFiles = Channel.empty() -if ((params.build) && (params.offline)) ch_referencesFiles = Channel.fromPath("data/reference/*") -if ((params.build) && (!params.offline)) ch_referencesFiles = ch_referencesFiles.mix( - Channel.fromPath("https://github.com/nf-core/test-datasets/raw/sarek/reference/1000G_phase1.indels.b37.small.vcf.gz"), - Channel.fromPath("https://github.com/nf-core/test-datasets/raw/sarek/reference/1000G_phase3_20130502_SNP_maf0.3.small.loci"), - Channel.fromPath("https://github.com/nf-core/test-datasets/raw/sarek/reference/1000G_phase3_20130502_SNP_maf0.3.small.loci.gc"), - Channel.fromPath("https://github.com/nf-core/test-datasets/raw/sarek/reference/Mills_and_1000G_gold_standard.indels.b37.small.vcf.gz"), - Channel.fromPath("https://github.com/nf-core/test-datasets/raw/sarek/reference/dbsnp_138.b37.small.vcf.gz"), - Channel.fromPath("https://github.com/nf-core/test-datasets/raw/sarek/reference/human_g1k_v37_decoy.small.fasta.gz"), - Channel.fromPath("https://github.com/nf-core/test-datasets/raw/sarek/reference/small.intervals")) +pathToSource = params.offline ? "data/reference/" : "https://github.com/nf-core/test-datasets/raw/sarek/reference" + +if (params.build) ch_referencesFiles = ch_referencesFiles.mix( + Channel.fromPath("${pathToSource}/1000G_phase1.indels.b37.small.vcf.gz"), + Channel.fromPath("${pathToSource}/1000G_phase3_20130502_SNP_maf0.3.small.loci"), + Channel.fromPath("${pathToSource}/1000G_phase3_20130502_SNP_maf0.3.small.loci.gc"), + Channel.fromPath("${pathToSource}/Mills_and_1000G_gold_standard.indels.b37.small.vcf.gz"), + Channel.fromPath("${pathToSource}/dbsnp_138.b37.small.vcf.gz"), + Channel.fromPath("${pathToSource}/human_g1k_v37_decoy.small.fasta.gz"), + Channel.fromPath("${pathToSource}/small.intervals")) ch_referencesFiles = ch_referencesFiles.dump(tag:'Reference Files') @@ -134,7 +135,8 @@ if (params.email) { summary['MultiQC maxsize'] = params.maxMultiqcEmailFileSize } log.info summary.collect { k,v -> "${k.padRight(18)}: $v" }.join("\n") -log.info "\033[2m----------------------------------------------------\033[0m" +if (params.monochrome_logs) log.info "----------------------------------------------------" +else log.info "\033[2m----------------------------------------------------\033[0m" // Check the hostnames against configured profiles checkHostname() @@ -166,7 +168,7 @@ ch_compressedfiles = Channel.create() ch_notCompressedfiles = Channel.create() ch_referencesFiles - .choice(ch_compressedfiles, ch_notCompressedfiles) {it =~ ".(gz|tar.bz2)" ? 0 : 1} + .choice(ch_compressedfiles, ch_notCompressedfiles) {it =~ ".gz" ? 0 : 1} process DecompressFile { tag {f_reference} @@ -178,15 +180,9 @@ process DecompressFile { file("*.{vcf,fasta,loci}") into ch_decompressedFiles script: - realReferenceFile="readlink ${f_reference}" - if (f_reference =~ ".gz") - """ - gzip -d -c \$(${realReferenceFile}) > ${f_reference.baseName} - """ - else if (f_reference =~ ".tar.bz2") - """ - tar xvjf \$(${realReferenceFile}) - """ + """ + gzip -d -c -f ${f_reference} > ${f_reference.baseName} + """ } ch_decompressedFiles = ch_decompressedFiles.dump(tag:'DecompressedFile') @@ -306,7 +302,7 @@ process BuildCache_snpEff { output: file("*") - when: params.snpEff_cache && params.download_cache + when: params.snpEff_cache && params.download_cache && !params.offline script: """ @@ -325,7 +321,7 @@ process BuildCache_VEP { output: file("*") - when: params.vep_cache && params.download_cache + when: params.vep_cache && params.download_cache && !params.offline script: genome = params.genome == "smallGRCh37" ? "GRCh37" : params.genome @@ -363,7 +359,7 @@ process DownloadCADD { output: set file("*.tsv.gz"), file("*.tsv.gz.tbi") - when: params.cadd_cache && params.download_cache + when: params.cadd_cache && params.download_cache && !params.offline script: """ @@ -391,12 +387,12 @@ def nfcoreHeader(){ ${c_blue} |\\ | |__ __ / ` / \\ |__) |__ ${c_yellow}} {${c_reset} ${c_blue} | \\| | \\__, \\__/ | \\ |___ ${c_green}\\`-._,-`-,${c_reset} ${c_green}`._,._,\'${c_reset} - ${c_black} ____ ${c_blue} _____ _ ${c_reset} - ${c_black} .' ${c_green}_${c_black} `. ${c_blue} / ____| | | ${c_reset} - ${c_black} / ${c_green}|\\${c_white}`-_${c_black} \\ ${c_blue} | (___ ___ _ __ __ | | __ ${c_reset} - ${c_black} | ${c_green}| \\ ${c_white}`-${c_black}| ${c_blue} \\___ \\/__ \\| ´__/ _\\| |/ / ${c_reset} - ${c_black} \\ ${c_green}| \\ ${c_black}/ ${c_blue} ____) | __ | | | __| < ${c_reset} - ${c_black} `${c_green}|${c_black}____${c_green}\\${c_black}' ${c_blue} |_____/\\____|_| \\__/|_|\\_\\ ${c_reset} + ${c_white} ____ ${c_blue} _____ _ ${c_reset} + ${c_white} .' _ `. ${c_blue} / ____| | | ${c_reset} + ${c_white} / ${c_green}|\\${c_white}`-_${c_white} \\ ${c_blue} | (___ ___ _ __ __ | | __ ${c_reset} + ${c_white} | ${c_green}| \\ ${c_white}`-${c_white}| ${c_blue} \\___ \\/__ \\| ´__/ _\\| |/ / ${c_reset} + ${c_white} \\ ${c_green}| \\ ${c_white}/ ${c_blue} ____) | __ | | | __| < ${c_reset} + ${c_white} `${c_green}|${c_white}____${c_green}\\${c_white}' ${c_blue} |_____/\\____|_| \\__/|_|\\_\\ ${c_reset} ${c_purple} nf-core/sarek v${workflow.manifest.version}${c_reset} ${c_dim}----------------------------------------------------${c_reset} diff --git a/conf/base.config b/conf/base.config index 14c8f70aef..cb98eb8e6e 100644 --- a/conf/base.config +++ b/conf/base.config @@ -9,27 +9,95 @@ * run on the logged in environment. */ -process { +params { + // Defaults only, expecting to be overwritten + cpus = 10 + igenomes_base = 's3://ngi-igenomes/igenomes/' + markdup_java_options = '"-Xms4000m -Xmx7g"' //Established values for markDuplicate memory consumption, see issue PR #689 for details + max_cpus = 16 // Base specifications + max_memory = 128.GB // Base specifications + max_time = 240.h // Base specifications + singleCPUMem = 7.GB // for processes that are using more memory but a single CPU only. Use the 'core' queue for these +} - // TODO nf-core: Check the defaults for all processes - cpus = { check_max( 1 * task.attempt, 'cpus' ) } - memory = { check_max( 8.GB * task.attempt, 'memory' ) } - time = { check_max( 2.h * task.attempt, 'time' ) } +process { + cpus = {check_max(params.cpus * task.attempt)} + memory = {check_max(15.GB * task.attempt)} + time = {check_max(24.h * task.attempt)} + shell = ['/bin/bash', '-euo', 'pipefail'] - errorStrategy = { task.exitStatus in [143,137,104,134,139] ? 'retry' : 'finish' } + errorStrategy = {task.exitStatus in [143,137,104,134,139] ? 'retry' : 'finish'} maxErrors = '-1' - maxRetries = 1 + maxRetries = 3 - // Process-specific resource requirements - // TODO nf-core: Customise requirements for specific processes. - // See https://www.nextflow.io/docs/latest/config.html#config-process-selectors -} + withLabel:singleCPUmem_x_task { + memory = {check_max(params.singleCPUMem * task.attempt)} + } + withLabel:singleCPUmem_x2_task { + memory = {check_max(params.singleCPUMem * task.attempt * task.attempt)} + } + withLabel:singleCPUmem_2x_task { + memory = {check_max(params.singleCPUMem * 2 * task.attempt)} + } + withLabel:max_cpus { + cpus = {params.max_cpus} + } + withLabel:max_memory { + memory = {check_max(params.max_memory)} + } -params { - // Defaults only, expecting to be overwritten - igenomes_base = 's3://ngi-igenomes/igenomes/' - markdup_java_options = '"-Xms4000m -Xmx7g"' //Established values for markDuplicate memory consumption, see issue PR #689 for details - max_cpus = 16 - max_memory = 128.GB - max_time = 240.h + withName:BamQCmapped { + cpus = {check_max(16)} + } + withName:BamQCrecalibrated { + cpus = {check_max(16)} + } + withName:BaseRecalibrator { + cpus = {check_max(16)} + } + withName:ConcatVCF { + cpus = {check_max(8)} + // For unknown reasons, ConcatVCF sometimes fails with SIGPIPE + // (exit code 141). Rerunning the process will usually work. + errorStrategy = {task.exitStatus == 141 ? 'retry' : 'terminate'} + } + withName:FastQCBAM { + cpus = {check_max(2)} + errorStrategy = {task.exitStatus == 143 ? 'retry' : 'ignore'} + } + withName:FastQCFQ { + // FastQC is only capable of running one thread per fastq file. + cpus = {check_max(2)} + errorStrategy = {task.exitStatus == 143 ? 'retry' : 'ignore'} + } + withName:GatherBQSRReports { + cpus = {check_max(2)} + } + withName:MapReads { + memory = {check_max(check_max(60.GB * task.attempt))} + } + withName:MarkDuplicates { + cpus = {check_max(16)} + } + withName:MergeBamMapped { + cpus = {check_max(8)} + } + withName:MergeBamRecal { + cpus = {check_max(8)} + } + withName:MultiQC { + errorStrategy = {task.exitStatus == 143 ? 'retry' : 'ignore'} + } + withName:SamtoolsStats { + cpus = {check_max(2)} + } + withName:Snpeff { + container = {(params.annotation_cache && params.snpEff_cache) ? 'nfcore/sarek:dev' : "nfcore/sareksnpeff:dev.${params.genome}"} + errorStrategy = {task.exitStatus == 143 ? 'retry' : 'ignore'} + } + withName:VEP { + container = {(params.annotation_cache && params.vep_cache) ? 'nfcore/sarek:dev' : "nfcore/sarekvep:dev.${params.genome}"} + cpus = {check_max(4)} + errorStrategy = {task.exitStatus == 143 ? 'retry' : 'ignore'} + } } diff --git a/docs/README.md b/docs/README.md index ca3fe27a91..879c20f793 100644 --- a/docs/README.md +++ b/docs/README.md @@ -6,7 +6,16 @@ The nf-core/sarek documentation is split into the following files: 2. Pipeline configuration * [Local installation](https://nf-co.re/usage/local_installation) * [Adding your own system config](https://nf-co.re/usage/adding_own_config) + * [Install on a secure cluster](install_bianca.md) * [Reference genomes](https://nf-co.re/usage/reference_genomes) + * [Extra documentation on reference](reference.md) 3. [Running the pipeline](usage.md) + * [Examples](use_cases.md) + * [Input files documentation](input.md) + * [Extra documentation on variant calling](variantcalling.md) + * [Documentation about containers](containers.md) + * [Extra documentation for targeted sequencing](targetseq.md) 4. [Output and how to interpret the results](output.md) + * [Complementary information about ASCAT](ascat.md) + * [Extra documentation on annotation](annotation.md) 5. [Troubleshooting](https://nf-co.re/usage/troubleshooting) diff --git a/docs/install_bianca.md b/docs/install_bianca.md new file mode 100644 index 0000000000..667aa850a3 --- /dev/null +++ b/docs/install_bianca.md @@ -0,0 +1,179 @@ +# Installation on a secure cluster + +This small tutorial will explain to you how to install and run nf-core/sarek on a small sample test data on the Swedish UPPMAX cluster `bianca` made for sensitive data. +It can be followed to install on any similar secure cluster. + +For more information about `bianca`, follow the [`bianca` user guide](http://uppmax.uu.se/support/user-guides/bianca-user-guide/). +For more information about using Singularity with UPPMAX, follow the [Singularity UPPMAX guide](https://www.uppmax.uu.se/support-sv/user-guides/singularity-user-guide/). + +## Install Nextflow + +```bash +# Connect to rackham +> ssh -AX [USER]@rackham.uppmax.uu.se +# Or just open a terminal + +# Download the all Nextflow bundle +> wget https://github.com/nextflow-io/nextflow/releases/download/v[xx.yy.zz]/nextflow-[xx.yy.zz]-all + +# Send to bianca (here using sftp) +# For FileZilla follow the bianca user guide +> sftp [USER]-[PROJECT]@bianca-sftp.uppmax.uu.se:[USER]-[PROJECT] +> put nextflow-[xx.yy.zz]-all + +# Exit sftp +> exit + +# Connect to bianca +> ssh -A [USER]-[PROJECT]@bianca.uppmax.uu.se + +# Go to your project +> cd /castor/project/proj_nobackup + +# Make directory for Nextflow +> mkdir tools +> mkdir tools/nextflow + +# Move Nextflow from wharf to its directory +> mv /castor/project/proj_nobackup/wharf/[USER]/[USER]-[PROJECT]/nextflow-[xx.yy.zz]-all /castor/project/proj_nobackup/tools/nextflow + +# Establish permission +> chmod a+x /castor/project/proj_nobackup/tools/nextflow/nextflow-[xx.yy.zz]-all + +# If you want other people to use it +# Be sure that your group has rights to the directory as well + +> chown -R .[PROJECT] /castor/project/proj_nobackup/tools/nextflow/nextflow-[xx.yy.zz]-all + +# Make a link to it +> ln -s /castor/project/proj_nobackup/tools/nextflow/nextflow-[xx.yy.zz]-all /castor/project/proj_nobackup/tools/nextflow/nextflow + +# And everytime you're launching Nextflow, don't forget to export the following ENV variables +# Or add them to your .bashrc file +> export NXF_HOME=/castor/project/proj/nobackup/tools/nextflow/ +> export PATH=${NXF_HOME}:${PATH} +> export NXF_TEMP=$SNIC_TMP +> export NXF_LAUNCHER=$SNIC_TMP +> export NXF_SINGULARITY_CACHEDIR=/sw/data/uppnex/ToolBox/sarek +``` + +## Install nf-core/sarek + +nf-core/sarek use Singularity containers to package all the different tools. +All containers, and all Reference files are already stored on UPPMAX. + +As `bianca` is secure, no direct download is available, so nf-core/sarek will have to be installed and updated manually. + +You can either download nf-core/sarek on your computer or on `rackham`, make an archive, and send it to `bianca` using `FileZilla` or `sftp` given your preferences. + +```bash +# Connect to rackham +> ssh -AX [USER]@rackham.uppmax.uu.se +# Or just open a terminal + +# Clone the repository +> git clone https://github.com/nf-core/sarek.git + +# Go to the newly created directory +> cd sarek + +# It is also possible to checkout a specific version using +> git checkout + +# You also include the nf-core/test-datasets and nf-core/configs using git-archive-all +# Install pip +> curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py +> python get-pip.py + +# If it fails due to permission, you could consider using +> python get-pip.py --user + +# Install git-archive-all using pip +> pip install git-archive-all +# If you used --user before, you might want to do that here too +> pip install git-archive-all --user +> ./scripts/makeSnapshot.sh --include-test-data --include-configs + +# Or you can just include nf-core/sarek: +> ./scripts/makeSnapshot.sh + +# You will get this message in your terminal +Wrote sarek-[snapID].tar.gz + +# Send the archive to bianca (here using sftp) +# For FileZilla follow the bianca user guide +> sftp [USER]-[PROJECT]@bianca-sftp.uppmax.uu.se:[USER]-[PROJECT] +> put sarek-[snapID].tar.gz +> exit + +# The archive will be in the wharf folder in your user home on your bianca project + +# Connect to bianca +> ssh -A [USER]-[PROJECT]@bianca.uppmax.uu.se + +# Go to your project +> cd /castor/project/proj_nobackup + +# Make and go into a nf-core/sarek directoy (where you will store all nf-core/sarek versions) +> mkdir sarek +> cd sarek + +# Copy the tar from wharf to the project +> cp /castor/project/proj_nobackup/wharf/[USER]/[USER]-[PROJECT]/sarek-[snapID].tgz /castor/project/proj_nobackup/sarek + +# extract the archive. Also remember to extract the containers you uploaded. +> tar xvzf sarek-[snapID].tgz + +# If you want other people to use it, +# Be sure that your group has rights to the directory as well +> chown -R .[PROJECT] sarek-[snapID] + +# Make a symbolic link to the extracted repository +> ln -s sarek-[snapID] default +``` + +The principle is to have every member of your project to be able to use the same nf-core/sarek version at the same time. +So every member of the project who wants to use nf-core/sarek will need to do: + +```bash +# Connect to bianca +> ssh -A [USER]-[PROJECT]@bianca.uppmax.uu.se + +# Go to your user directory +> cd /home/[USER] + +# Make a symbolic link to the default nf-core/sarek +> ln -s /castor/project/proj_nobackup/sarek/default sarek +``` + +And then nf-core/sarek can be used with: + +```bash +> nextflow run ~/sarek/main.nf -c ~/sarek/configs/conf/uppmax.config --project [PROJECT] --genome [GENOME ASSEMBLY] ... +``` + +This is an example of how to run sarek with the tool Manta and the genome assembly version GRCh38: + +```bash +> nextflow run ~/sarek/main.nf -c ~/sarek/configs/conf/uppmax.config --project [PROJECT] --tools Manta --sample [SAMPLE.TSV] --genome GRCh38 +``` + +## Update nf-core/sarek + +Repeat the same steps as for installing nf-core/sarek, and once the tar has been extracted, you can replace the link. + +```bash +# Connect to bianca (Connect to rackham first if needed) +> ssh -A [USER]-[PROJECT]@bianca.uppmax.uu.se + +# Go to the sarek directory in your project +> cd /castor/project/proj_nobackup/sarek + +# Remove link +> rm default + +# Link to new nf-core/sarek version +> ln -s sarek-[NEWsnapID] default +``` + +You can for example keep a `default` version that you are sure is working, an make a link for a `testing` or `development` diff --git a/docs/output.md b/docs/output.md index 08bd9b3b66..2987103493 100644 --- a/docs/output.md +++ b/docs/output.md @@ -97,7 +97,6 @@ Recalibrated BAM files can also be used as an input to start the Variant Calling ### FreeBayes [FreeBayes](https://github.com/ekg/freebayes) is a Bayesian genetic variant detector designed to find small polymorphisms, specifically SNPs, indels, MNPs, and complex events smaller than the length of a short-read sequencing alignment.. -The single VCF file generated by `FreeBayes` being huge, it is recommended to flatten and filter this VCF, i.e. using the provided [SpeedSeq](https://github.com/nf-core/sarek/blob/master/scripts/speedseq.filter.awk) filter. For further reading and documentation see the [FreeBayes manual](https://github.com/ekg/freebayes/blob/master/README.md#user-manual-and-guide). diff --git a/docs/posters/ESHG_2019.pdf b/docs/posters/ESHG_2019.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d65b0415f4a7d2228bb5c086bb7692a0cd7f934d GIT binary patch literal 341880 zcmV)CK*GNzP((&8F)lR4?5av(28Y+-a|L}g=dWMv9IJ_>Vma%Ev{3V59Cy<3wV$#Ew5p1vpQObyn z>#XU4q_~tuBZ*Qs#WfSh#?S|aMu}Ag5LMkR&aYqpzRx2vPgQ{zJ*@4+G$liYpUlX( zc=+8tez&Ywp{-kwr}ZkwoVxwnw;FRkeg5wB*KgO;cMr>Y+H$?BDV*ZgHv7Gu-fX#D zl{KC|U!UINfvv7rTTh24YDiaW?s_7e@IUMFr{64fJ>h@$Pc8i_r&L=#ZNc74X-(U9 z`sQx=>-TTgH>Gl8o=D#n&hThk>o!$f+BK|vl^Uiv`yScx)vrg3a z>E`~2>xW0{HodxkJpKJQuUmcf=H~uA`uxmi9v(k`kAKgP-+z7``m1YpzeP^R{^{#> zwS_GdTd3aK)tbs`OJdXc_gDY@;|KO}e}DaO`pND6^|u(mbyHq_$8O?!)z}gL2+{gl z%NBAuZEG;l?CVwd>aSjZ^B;%rhPc^>OHXTg{^74q|M>PlZ|<&7zp~|fxIX>jEysSo zdHd35%Uab_c=p-&$NQGAqTx(`amL@+vX)mLzrE46o&Mof>)8URr^z zq^l5Pj@`ac%JB>7$qH;0J5^%Eqj|fEm&`TGtJ$&ToaQ)7LzOA3lD(1vU8j{dYI_*E~+3178E<&Npb^pY5>S+@F5-;ri~z zPVeu(I{ozKS*R{X;29NyRR~p}s*Y8M6xE3oAB4%MkygL2u^(R9M zJVrWZ1jo8X^Plg}9M)IXW2moqe1tK#H}?;}1p;wYHYoe>VO;jr$B*aVe)xEMXMf`3 zFMN5sI{nM{_I|c6-iTa2-u!TFt73!Da{TQ2{?ShBZ(jY&Pj7zqo7Z2Rens51r?9{e zH;=zRVao402wRBMU;SpQ>04X+>-(=>fc(M^d&sZu-m;(HKOa=Odg&Yb09W$k_m3a0 zNhlrn>u+Ay^y(-7YQrNh zNw2ug9LD4K+Gc*-X2Avj^pV?eO%$?k8E5#&G2Ok@Tjz(<&-@vi&&}gk!o=tAe=Tb8 z-CKYb9Mb3GEPnt+?E7Z}44gh`Vc%g~pFS9iJU=)FK4P3g3Czz1^}{t+*M~OnSiLGK8K94cim|kEGFo%BRsxL8nA~$VP`xsq43NDY!>Q!;Dz&r#60c$b zBwqEvw^rN84R3*CB!E)0jUw(zZf)hb~|Ic?CTtXI`$ z6Vq00=++KbYb$8m0)&Wn3}gfopukBjfYgW)+ZtfNdpp^q*e%w@~` zaOnY)gfv(5C8NhC9~ubUa^nij`Qc zzh1eZ(f*BF$0VCC`qm+K_G~MXxG}|kGJp-Ig@t<;^hh*;lv`zsQt)|u)wrp>75i1J z?AbnLGY6XV4YI0!INNFk+xiX9w1#~(bhF=b6JTvNU>j%cbqAbJxd8_b&)lAt3^rHu z4$H>tVh93khE>@X(0@1a#d^u%*|6rl=|93e?KU_Bm8d zyxJh_O)V(aCYnT_x2yxRb>p@z1GTa-aUhHq*<|f(B1=ixx50Wg*~1P)+BeExiuEcH zvDbu?vlygYZEM$-*A@(ruS$)M6vo!i1es>BqfR!w6Sf(4Wn=9Q08*Ibx24Jfb~_i_ z4!S*nY>%?-Ku#Dl&PRwui)=F78p@*2n0Gw!f)5ByKjEfdK%l)%J1Xi9>*-1DgiumKaw^ zmmFl!|BxyVWE&7MG?1H_hX;9^&Fs0bmMl~&R6RQ0;_EmrfK~FDNW9G z(q*H_jl{yxtg&NzJCdVlwXAKF@4$5g;2~=Eb}9QqhNHEJS`1JwwzBHTz6q=_#3?*7 z2B@L2BaOuf&RTft6HlW3fsM*onbgHkN@_%E+c_SEZ0J~U=*v~heGy;Ewm-J#LRh1? zddC<-Dp~9f>NQSy;$j+~F{Z`ytw|SK<}Gq)5xa~DnMz`6o=!N4da2~K0FbICsQ!hN z%=W!y^jr-IV_yi-QMCmkbs23t60u}|$w3_E()&Q|D+uX34oTDju&^eqQ0Y3}} z49^0|3JGY&X{~`&q=2zyJ3GAxZtJGCGltBS$+plu1vzY*lF^KvCuAGTrJI^_pom;v-UMI!8F16EN2G5wbaVMu8oq<{pJF6LOZl6AU{$aoT7d9?|9tkWx4xhyXm> z6Oa6%+nqxV5SUolHUaFTx!57BNgu~Fmow3N4Mih{%n8I7N3~gz#oGR_6n9PB08WF1 zK^*G7Hnt`UjugAb3bwV0o%f^_?zuSO0~NAeFchQw8hpuk*Pt91nINxLTLg} zf-AtWEc#wEr7GJ^iBP0O*xu&ihcu_rqI-fo)FX&wF7dxw0WFK~1P4_WarD@0I zl4clDZRsQqx=aL1Z%UNOja+st^ipm0_!i{TW{(&d$ddIzwJPSd60lJyIU9(Ai)3EN z3N_ZH@KW(rTmSVh?gu->4HPJog4kVvg}knR0ubfu8U;he=Ny|-Q7#BKCzn_68=BOp`|pbE8@(imun z;atV}Yd*(jD^u;{iv*BXHDWmqee<=!!7%(Kqk=SSTY$qPQ4+F!625|1Q3*F>hOCP- zsf{zf0=_kmt+gdF?~u+tz$-O37np&sfVjD$I~w6bRBkey9XRT%RFbSi+{K7(o~9&l zWHx;8Xc9RHKREX?rMPH`32XU5JQIgjTu10PvZ8?;M~FmtHlV$q9KB!#Wg`kCGIykgvJKrKsAUszE@!N6>OKHBG5VVOVE3`UJwUBsH+J*qF~Td z^4{K$vO~a(?6}z8jl;b|J}moUxP`%3H#Ggc8!LE3dhus?Ty1sI;6EVdSob_ErUrv- z4l<@g?#Q^GX+zgR*IYY*C4%(b7R7Wk+94_@58@)7653VdTei+d_`tRxhJ~GKK~pg) zc5hQ9T#ked-YwFoK?~zbt1F2X=LA-ua|WWyQ*S33=Zx}+D2{PMY;`qy6$93ab_Bi@ zoY4XAunrJNxWWeDmrPN&#aYBap@;|p$>9OwLtuC$_$#GQupj8T6L2Pd0n#q}Ltx|N zKL&vLiVpYDZHwFBj>Ny%oe*T8`W)Xv>JeMlq&n?=6$;2cP1A_o8Uqsm1QO%a)D2Pu zHd9Qn6K%b?DGxGxflx=8Fm$PTJ3zYo`3TymrK6iIxFIUz3{i&Snwv_QW$1xQFGF6T z$XbcIl7?Vv!IX6B_(vx9wr49(G^Hp?Z;hsIV0E^aFskTgJV(9gCRR$ZpqemZQ6rnD z<>`q!zkJNzFAb-9^HU8{aCbU@3W)&#YZ_vD0H8?V1>L4ubupM>BlJYDPpHEUWQ>># zOXP;PqAOHjo-}?mBSdl!6j_;?X+-w#GI@_djG;?e3T~5VP?!ZVxCAWMVT0Z`aheaS&2rck19PbTqc zlO1*h?bd_6vll=%wNf)Xvr%obwsjr=j9i`=hzdqeF*jKqK--E&)u>xhnKkiv;UdYh z2VMmHL0|~C9gLPF%b2Xo_=XZNus2A5;%v6bwoTYBL!U*1ri-E(Q;?|y@d>uWS@hMK z5W^eQ)xHCSI<0LJWP_{4u^mj-6yXN@7N^vroArS2qW>+>UIgdA%VHg-NdwsNZIa*$ zF~i=16^O=QTN_aGW@JRVEKHMjpc-@w*Un)+#ygz`!$o4LF^RqoTLs*LwiyS2PAty$ z3&;5V(#tmdKrl-;10q6##=8OPFqQ@P^4JMIbx?`uZYtPr>}>Z9y5#2GEL*+~7l~X~ z(u%urF!hTmQSIy@%Lqgtg$=2jSXqjkZK9AJc73v5SS0xpakYs@!fMdhL9~E+YdZiW zWh{Jaz+4j9yOFGN_|lYTd^l6)Sq>w1v1rc9WhcBfW={DEOEK1FNMOEz%TY?3t1L;b z?)xxMbMDoStKCLHg?N8RIGCu$b?aRmvVlwSGlm7yXYDtf#%}vX4h}jCGH8qARJt}I zn!RKw=L$<9D?>1iOM^AhS7?wt@EwK|s&)pfu0@&zwehJg^D!lUWBCD*OF9CE&7`OX zid35A3x_U7P^T>u&H*FD2HA#lz`n=TAWQ;01Z8$^G?U_pX+{~CZ~)mRv^c(}&bLUb z*sbm1@Pxepl8M1q%IKklow$;WW9PdhKAEI|3}wg#fn=Z??aTClyU)3AVd$!Fg|uTjaKLRp#8v>>C9{TQj$Gkk^F0`-E+Qh=N&L;@_b;Bk?zAY@CR*aiVikS z=rt`L<%@2dd~4e-gLK-O@)T0KQHHu5<(S@KBwlt|$2Q7|=s4;Sp=6620uy4@a%&7L$lt$-2-v?gWP)fy7R5=V*9>gfk8^Vc6qL5WG}XZ~*8_ciMzBHJ z_kDG_1ytNtjut2fft*NUt$|wtd@+W(i%6j2@DL2<4biH@Hr4!8W0`@8TXnTLGS;EP z;}RqRAdaEKnpP>G*{O%2*HK)8g9dHtwJ&wa)UrB+czSZ7tJosor; zs}>RB2M28Pg-HQtlAaw%NtL#AfFyNiS~r)&Q8qyduI2+Ex`SfJD+k>kL0w`C@KfXr ztJ@QCcumfVH!6>yr}Ea=m|@Q9vf(E5hiVL8=dU5x#ljG(1p2L=l zm&b&6*oPOF;SduJZbWU|#5o$}?sgDdKp}2f@8V?gF`_CU5sc3`#9o>s8K61V(ap2@7)|)FyfDl63usn=xdkGP z?QuJSk0T-<3lrm%eiepscZ!e&sxTS`2U~JbLPkIV$s@Plv@!~fh|G$oWrsurSpPF zu_fEslF~}FgMhd+fQYM?GZ;Hk${*O0?dg_i=9hbt{=lZ>FKmh--|`ZMUTh37^iSBD z_a15aufI4UY`_-Qg!dl}h(OT)SpNNg+A^%CcXpOf|9JYH9b7#82AsBmfXoyS<0D3T z?}YBwGlZOC61ku0Aib}eFo%PLV7>|gKnMm4jW_*3R~W?w@zXk9_vYw-p60N^K?m_# z?;DY`-K{w+^AiK&rx}BopfSqX&C`jTPs@iFX7}~!UzUG4{cb5RqrjkwYyn0*ne>Ec z$TtCku5q=`*QZ~f?w8*!`lZ41hQ;*XVYyQ$1tzh$B87XI&u#KY*#$=Q%dtF!cTA;q>Fj&%ZtW$k_0Q(*q-UKYjZ6 z`SJSQ>D%9*9zR^4e)2l!SHJ%H^fLwmfBgR4X%Arbc;TNZ^7q}%;{$_y@#Me0PU+S4 z!?h=%d^mk#io(b5KJ#ODh}1{-jH}Mp{`mg&^6GitZ`s?K!N;GzA5rWxF8TcVbqxIU z={x1^+&`W^BbfgBjNoQPncJ9`S2mw#yO~VTCgZRAGl? zx)d$|%B4C08011ofKk>qNgmG_;ZEXH5VUdfqiI}-&6^OM6c9Dz_Y($Mg4j`L+Y@Ny zC6QJzVaR&O2tHo%8qD`(iGcx+Pz@t!;#vV=lr=gs@d@hs02!nw4`10~NETc1B4ST? zB5B_5$RPneTIc{lBO|+3L85P zFGL|Ma)2uU#?c9}7vY4dwz!9IcO7McT@&2OL7g(jiP_0I&cBrlalf zP=;BA#;noL4)Kqj53sN%xij{jLX>v3e{Vp}he7R6`M3`~J((Ple;|n&RK|G?_)(`F_f9#C@U~Bw@u-dVJ|l8UL)jtD z+h~H_fksu~g*HfHx`jaky{%+-M$C;6CI;`Fl}?Lu7$AAZyb+%^V_=|{MIjggA?R@O zO$c7J70Qyuwk@mrLuSj^sY4BPnbb$32MRMkbhK< z5V$F1r#}EgW=hVXt5s-o_@F~@E><`__NQr^}w^SLY8(>BZoyZaB@NAF=b6`fBK^P(l$uiP7-5}HQk*)K?cnu*gIGc=eT;X7` z1>lqeLl`q9nMTPWAk72fG+u-eTT*IgvO<8TB0zr60ao}73b^xw)bi@^YR8qq3(PIHVko5ooM#I_&O7AdGdiV>uf}^Vgq>l|J zY~>USf-d8VOi1+Zn{zQk-!Goi7k2h|P9gsT)p1TSsknm-AlXh39$X0cV9SK8QOC4J z-z0>X!7oC{#uu9mB?rhprvb|`%IIXP7-*;t$Qwey#y6b?_(V_jHpfnEck z4noeb)ETkrO^AXJTk2^F4GxGf*q{$Fy`@TVK`2f@fc;uU%xiQ0jBEo87-47;?*o97 zbx?~Og4YJ|a2QE&rM)~bRsos@lr^0UxCj^`9AK@Gx)$Z9GKlgW1nH#agZ?^5;#TpU za9BVRBiMVOrEfbz#C3FHcVOFS*bj{CC&BbU*uW@#vPTkp*HPsFGXaG0jL_5CrUPnQ z2mQr$={5menal{>0lGbaR>U$QZ21-%X%vliAYn~`ekSw;TJUToLTg#%^~CtfSUj8}BFgZAN1*uK`y7JvfMa}c~fw3q-EGLt(x z-1H#!up5G7bmRhY2m`PyJrl%qNr>r)&q3m->BkJK+jUO|;9xQatL@KpxI^KeR5uf_ zTqs!Mp)sC@OkH^P#)umNm+PFCRL@m;Er;2|jYYlxIcU6jD}4?Dsq7tR1XVRE0s-a# z9C9(p0h%*Gy!BzOyTU1e7z})qtsfpjqC0$o-pvk}pV~nh4(Ms3C_jfBO|+o1WnYj9 z+9w}z+#vcnWI2EaW*tGqKUhKFLkE)@I2z#&>v_jy@r$DD*aLbS4F1D;FrWYhhH1~k zv+G*|xct-@!*Y14Di~^<)+40J#eF`&bn@YanO%uI9273K&xbLMN5-f{io%@QvQsR) zhEThbj#O-iaft)hlZHsJ+Z|?#T2uPe1ja46%_MH_!T>~6*qBM8V1I;xS>izNuq}!E zm>k*YEIRW1CxU^5{Yl>7Ku&bK7A7Uf9Y$3QL2>k!BJbb;5!#3lPhgi@X736Z)XUKZ zF(7!)q{(f6h&(Vd#`MtBgzOY>hs|MmPd@VH^n8NSk_QU-AYd3kqC!0kHNv!v=+HTc z17x4|0qCRHyBgozQG5;}qHYzfz;mpIhLI8Fdrv#$U{si}IjqsuT)<}&l%35)uFm*~ z-JUo=G0L6;O~8b2P+-_ecN?Dr&L`^!Yz(nn^C6osqXuR#18}e>4p357%IF0|meK8p zZ#m$+4`)6y#yfktoYSzGA;~1B3;W;z`4}Ukx8gpF-DWqY3eme&et1rm@k$ucnCb)^ zIKu#qL3%IyRQGSqsqW*M&x{d!H&18fbA_)V1Sb-RmjW^)sIOC`W8AQ*yPIpDh;QG* zfhaj-xpa^CW4AKKlcEh+Ku#om3=!E+m>>cP5IktgZ9!a&WKTHJs47>*+!!RdR@~g- zu|p)Z>OF^nn)O1t%=7^|A6eD|ddhC4a0tcgBn!uUs40A!5Vr+2CEC$=->dv8Z~$So z803UCDP4(<0l^tm2oPRh`JOTqr9Z4H%@7cY1!{|wBVceqN+K0x3EAnuURzTKF4LUst;ws&?@wuaW zTmPTa-_fmo_xAqu3;f}gtgiptGjH(Mk6xDQyX*gU`pbwvO*?t+?*4f9>H9}Kf@%Tr zNnJ=IYPN5+RALq=u3>yrHM@UOnZ(Ec`}X6Hrw{IRzxP^OKU|+4zNhp3^j>ALPIqtr z1Mc*v131$S|4EhNezUW5(~{okH$9!_shKQdV0<1K4&em5(q9jbA@)f`l^^DtcORnV9}-F#v> z$ea7?6AN*Ey1hoBG8CYDhhTu?+Pv=J)xjBG@Lz@Z%=k)0)Kr(t1P&6&Pc(ld#fILU zHlr+!2G&Bw`Szq#l(Ii`03joSfr+>C#fIQiR(hGe`%}W&=b!wev0dYp71o-q?W63d zkPyppMB|wQh$XRdI1Un)?cR=K^oK6TxPS0)uwczI%7#<4vb>KC2iBu}0NoxyDR`X0 zB?x6&2uT8%YQ*N|4`c>r6BL_3NPq(X%Nvk;Yutg=saA536g{kWYjRHp6$Zeh3^bbk z1gc2k-~s@CL_i?-28`+gU~yv`F|}-?tOWqHsRNKg^>?5?6O!~urW8(y@x@IZb_dWs z4G<}8WeP6aB-P4nRxcs>J7p_lbfk!c*^e95>EeK_IU%=7fT{?lCRG3++BgBB^^K4i z2|%pu1lU`M;~bw?gs5$jtV9m7j!dgxHLu9H-~(Xw7~37RV+qpaVAggJaTGa}kg3LF zTU7C#fTTLC%mI)+n`43?rX=j(?Gct)MQrwrco1ZU&Cd_OVUP}DM-x^Pt;H801%}Ke zDX=PrZC^GAaMyZb;`Dq7hr(?X^SyCOX3sl-Uth+tkesH0-|olq2-;W!YJ#Zw!U*Ln zvK%4J#fb?Tt9yF{X$NM{bKjm(1&HPc)DaRGsi;M6l>xdvfN<>BdI_@LAVO_bIZy$` z6%aAGW2yrV%R4}~N6;!~!tDW}1tZNnY)xi1(%o?f1vn9CUjCfdQ6hAll;y@pkWQQe9GEBA%Jm6`EeCCIg^IwXXb17ER2I8$$wg z%H&h3szN7SNn}%ziSL4d-4PI<0Bmse zfskEA2xHcQiiZF|*AoF^$1Nx-f*?D+0JxtK5kPEj@cs!vXCz>XY6HlJ6H^obsbmCT zBMAup&RP?v*;siDOudgU0V_7z54Rlv;$4^}H$g%srXK9?ZK{G~07cgy0Lfz;Cum0$ z98Bny%Mlh`ff^ui82P;1bGQQ_VrbVLWF4UlEG_W+V_8&j?-?}!IqKEbS_kZdTqf-H zFmQSmx)?hll1M_mg=5Wfpju zAb4CEmN1vZA*Z=)=L5)B_x1p4s$c3oFZ(7vBMf3y6Lpd+lbc)CCg^qt@#N=ANS5P^ zf+9W1@Y!r>N7Mm0uC9Y_4)rVt}43F)W`?mY5dGFLZaor@BX3q0mz$o2qivJLL8NLCDM+ zo`DKQFy%=S0%}4)@JD2tB?x1V%)&k)7nEzud=KL*02HtTLYO*;@L+O}$hr^WQ!Y3Y zWNHTi?B@dDZDxc6Let;~7vC5l*9Cyvgawt?;sA+s&D}Tvu@)*Ju{nf{p(&t}fHK~q z1r8uY+_A!P_9-Ct2w~6+Eup`RaxXv%Y^ti;O+fKEAVZu01u$=em?OO#!9jx6LP*X& z93;Lo;yR=qU~i?3fo}t13knT5f^yE+Hpg*9fWcfdR%quT=@dpRTrEr%f>Dq1i>sFs&$xA*06z_Kse z`S1{ywyL8EY81lvp0z#W93LhRhsfeh z?SP#QIG^Ui4$$opBt%4`t+P6KpMl;{TQPe6$Oj8k_)8*1p(od_T` zoXQhGCGNUYL^gAZ2i++$1@x#o!QbX;2x;M{I|0;P7oqM%K<~Tq zgve|~^$g`{A&eHpp*#_=#a($KV5(dw;HVJq(01jC03;Q;`XmS>g@g7)5LAkxJrNM= zu00W84E4NB{YkL8Yfo(VU10L|L3eVHfVk4+kg5BOwOA%(EZ9M3 z8tZz{na0}Bj>qmS&j`YW&NR0FAkh!dL449@+`+YeE!U2G6q88(3fqX$nEvK{YraJOQAZp+iPTNgQeAbuIK+i+Hc3%hq;g zxOxFuf?_6zq6M80I*14W+W;VWFIgXA6(j-*-C}9r9{i}Z!Y5ulB8arZsxlu0aRy1D zglyBLbqurKU@-0qM;m6ih{Pf7)P=UY;BN7LQ@*Z|!g zK!?Tk_XJtK(Al4A(nD+qs?JGbXsOrwg7fKuKmDKe<@&O`##&S(55d=k(NCGd18+hG zs@uBGk{&9H5>y(cn5u*u$qrRJnyPk8mbX{zh`hG|S+U$bYazP`;gJY+4a}R(1rYIPy{fR%let5*Sqm@_K=2z#(8y3NM7(0y#t_tPE zr7kRC%3>vd_SE{JAc?P7KqX=3^~@Dp8T^?4^lroYXD=DT)@+g5%KXd~@iKi)&zJ1) z-hR6M`1t!z*FRI~5QZ~-9+x93;OX|a_=gct5m)K*uEj^)oy&`rP!UT}R4`9<;1>d= zV-L*O+ITZffSK~yf%`YqQF;6M=I#CC>1S_mZ*T7XDqx>ic`~mJ;(E>nS@XC7BKB$= z_}R1`?mzwf{d-+x`foq~<#DIy#^B!9sF3mR2GC|MC4cyRkV+PM!(zM?}{+rM70Y=cVf%dBNT;; z0ziMX$Mo_VLyJWaSl?9X>W)@g#FV1`UlH#Iq#gmdLI>ex{u12zDE^KLrxP?GQFmm@ zh7ITNOOWQ}<`#ey!kva)Eh)X1klK7eofQdZN32M9?0VV!Rye-q_6pTAAtY9Zu+ruH z{tnqYLg;C__}YNX$$ofYA>S`R05B+2NlfA?8BDXOFe!`}StaQ^(?DRGl!A?RWXW4V zSY4Z+kDVpCny)LZ3rRmQHP-3RCOWw%F6d2^GAy|HsyP+}z5#vN5;4KxF zzGcNnc&%r}hc%2{vYG@S(7HxxShSh97K?N(>?6yW#Nv0P zPRKsnoG0EsfegG+N6^%ERQm7&k^pfUW8zWVllQeC0{l(TEtq!Z?Fj_9cb58uiC7Vz z1kBGPFdL}$0t84$Z0AeMGYEIcgMtR2NLfQIp{gyTV(WpXs3n(qQN;!;=&CKlwxi9| zyr|$9v{@)Ld+sg(#TQ^aP~m%H5AXw`E?sYP2hW_z{DvJLw1x78w!O`-OynM~iikt$ z)1U&S3Lz_PoEv00;3Fsp%l4`^X&h>-OZ$b$6m$@&@W613!k^=u71dQgoJ3|G$HNm) zv3(2-1t`hsU-C;N0bwm0)SCyw!-P|{HiuUA>d^vRZeXPK_a(@V2o zPsV;ed~P!7imVGDql0MA>Ed>63y1bTC5J?9sCO}tb2)r>;%_T{j2wS?>sjBs814Nd zf-L(uMi*n8Po{!uk+2dV;lASvLYBK_-LTodRWDsft;iqV#^^JzW0KbOw4e9X#43+@ z;7zFN8$upxe0bavQm~^)(g^T5vb;&jA!7bc8c zkGsoTm-}*fWM$y^M2^wkmw7@Q!_>vVz-9l+j-VLFdO*@H-52dmVe_epeR<4Zf^H7nJoEI>4Aupf+i!S$%WPQ>4-uJtaZwS$5D;V$G{JQBrm{oqC-Pi>$*?@ zMSnwZ1Y;%7zN!2eUO`Pv&^v|-&h~M!2#Hn*C}8;!z&&WI3BrrR4aI~&KqRYxkSLE z1(mO72sSfpO&fru$|vw=hFF1kxe^hmj=ER)Z}@ake;oMT6w}moec6D>42X*d010Wh zrgab;sv!+2=$TPH3rKQ(xTc? zl#Mz7Zc{%w{%W9>5(5=nK8A&XmDFS~m03a%Fmc9j&RaZ*VymJCkEioxM|sbCa;191{Y!~mhl3`_K&U`N|d%LHu7nmLb0bn_g|_7l=0OWu!Oc^mN> z$A^~*z~u!R-hkYmkWahr@4(^9`zpN8+16Ke2_ivrXtz7WNAG>k**#kn)*XIfsZe8)4Hv77^LFf|6iWo{`hdRzQ29@c>aJt&Y!Q}KEm4e=8Viqe)i4v{SU|n z{QU9$4nN&Lp5DCqjI_+}Za&_hu3sVB*_rmEnzuD6Yqo+Z>VSo1f_w3L9 z_<{YQm;1*z_iycwyX(_m{_LOakAM8-ufF;D|FS=R{!jn*$9wyXF+F_z{_~lCoM1P! zKmO+HU;gtqUongE;qfiLc)tEdKRx`-U)<$)e}Qp-_3h2OU(&jGwsBw--(CMrUdJcn zNaOrNEA<~AzkTyN4Cea#>(d)RK4WFDQm1QM7|ikE(H7h@2)?e{sQ0rY=8Ytus^=qck<`=_5uchoxI0({f({oKmHP* zv=#sPKiMDu_7^Wq{{H$u@$`G-!s096-=DsIOBDF+U*EmG!BnsA-*fVxK7V|FgY403 zEZMi1A6D!QCvTA7eSgi#+mwH8e{jmb!d_3j9t6xOS2oJ^rx2-FAQmv3EWps)Si0O{ zw+dzg7nm?QEqUn#3W>zP(3=U0O5QskU=$Tp{e6d}rs^28dlbznD`Qm0C>(SoSp&4w ztN|HBYV^EJfPa1xtvSfs9io}cPUl?p-DQWcLdWx^dq%WqMSvlJv}?9N!i>EoT;hnL zH94YC;xh{NvyXRoZ|~ndoIZa4c*{EG_t#G{oI?pl*-bx=x-ul9{}<|@|N6tt?e*yv zMaqkv($j~V?>@Zwbp4rC$rEzMS$&+D&qVo0q&vTy;e2QBKAyfc6up%<;qANMpXf{Y zfgXpO+qd7^#~wfGd&$1{`3qe!v-?;){W}#;|Nhg%SFDGA{qPBno%7Ax+uPrt9`5X) z|4L`4ADP+x{p~vfG3H0>@7wG9>-RU0U+C|>UcWoNJ$+(k{kOL_XM5}IS;X?;2Gcy- zpSDjpvnH{zo_2iKn;PF&)X*NMNq zCKdg{_r6$6{^tI@^8X*`_xb$&`H>UU3Z8zvdHi4~_k~`+|MZ@9=RX=NyCK@Vmly8A zIwBT5ey=sQpMNmo?IiZ<^s9$2Bh_U({>S@KlD{CqUv&U%)O?1Mc=oaX>r2@B_R}Z( z>{qAnwDxzmI7PN*Le|eWqnQ4gBcQ+Pq~q}JOZ&)Q??3MA%If~u7wyi6@9)&>>DRxY z+wJtg_ML4QDhj;Z?QdAb;r#K3>(6h$yZ+7Vd0oNboU+Kjb!9Wg1q8R(4_~T7@Tjs2 z_orWR1aJQGlvl5h@Fl8*!iA=g@Pc?GoWVi6zCf40R-K8vx1WFiCB9Ss7~jcV`5qN| z`l@QrepT}Tp;i{JG}}QDHE4NpWMF*ia)3ZR%`Cw&K!KE*R+IzGul<^R2QmT*$72Ko zbn@cajEEVqTNNXObUR_DqBOcCM)%7Rj(a_L$CSUwH0qzy9&9A6=r4(T3B5*9yV0c(}fQxM2a0XQevcy?rD_ zA=L%}al9iDdwYL#{csZBc=o0-k{@n9Lg>*K@u6S*?JxiJ^p0poMgn5+?8Uz@vH)r5 zotV%0@h`4UfB)W|^(#N@|M1>fRPOq#=RJJ1-|Y~6JR8ZLwMK0EUTfqJj2JZSqmxS` zFya)SNKA|(I9WgFEV!6A=MDo4IR4gg-PsEq|LqUPnf}X%s)kNi&_N`bIDL@jChAYv zJRZ9=cK}UkZinsC+yUk?*WUe<=Jrt>q`5iTU7QQNx4G^hmV3e6KyJC#l4-6BHHGS(0fUJv{XGTypfPN>9= zs*wXS0El4=3`3gTJcnR=X)*ARFGmpSCY6iVP<0x`k`EoxHp`coN?uZDVTt81o+mTC zJ-uI0%9X`N6bx>Y$7Mti&>ez`f|wO9_ywsO&CaOOvjbQujy{_L-zF{-SyzS=l%jfE zSh~hi@H>Qe2Hze4?#?T4q;=hwWo!jy4iT0$+W2VK^~K|fahW>r?rxk!P@T~1?!A&# zmp|fOP#z3Cgu*MpBP?Rcs&Ix&aBz#FFO4@Bj@)m&A5T5pEV$(x0kgQ&)4qfSiL4K9tHDJSxM(x5P(Ip8h1$G*<~H!+g89U_(ieZU$mCS46GG zg_p`_Ucj}{Vu=gmFNccZ*HPJg9uZW%W7^l)v92p-xw36<`re!eWMRLE`xre8L>k{1 zZPTbj)Agm}i5MlVsfT3(_ODEchB0~=qkK9K-akLS%iEe8=O%alfK=oIV_7lcmS-EE zRZ%{NEF|2pM6(MNc13nvPWy+wjmaeydYVrp4OKlX2SD+F_5tBI;x@aO<9sp`cvNu5 zlX%pi>;r-z;>y$zNO6d{im>`K!+t;xl>KQ(M2n<=1KhtLcVSJubZG!8t_;SAqUwI` zZ5Fl0oCM)jCXze7hp2d+`3Y~^8@R78?vR>AmA!-I0GJ<{5Ff_qVh;0i9z=`eNviw8 zIRs}(B`fNt@>V2=Brbhrmi9>LeVA%7FMd7S5nwa&QOiGzI0Y2G8Jez(rf-aFEAk+=r7~{RZFh z2r5>y#`4O-CbR9cKTpVUWKR~23)vO6bs$VA&6)asX4ZtYA&S-{PB-#rJ#Buu)wv1ncOx4Ptz(PkxJV(|{?3i80>RHCr&gRVT-H>w%e z9{d3i6l2W17EPrQ8Y4h;vjx%Nyg!1_Ye?>>{)fGW9Ab1Hcf*n1xSY~f#k+ZX@ujd) z&qr9lw1ge?XFDeOAAjW_$)#syb>gxLm* z%=AO;pp9igFcsdJGI8q?`#^AU?H#jG=Fx7Zn62IA0hZco5h2(8CCE-UTG+f)+(7pM z*(vvUZKvGFu5l3`Iy!uxpcBTZTTBMsYREtcM@rTZnE{S<=xA%aU;HqlCzHjIY*{xa z%@c_WV|W{eLmKLAL3D6&dT$ST+9A6@-BRJg4}rR66=T~4>K)<&^$u`>x@FxXGw~2{ zmAm+iuQs_4#seuc&|wJFD23bGg+SdC(c*rAW%2lal7uc zv5l*-U7()rDNql{E>Pn-l(ofOpvDb6@Pf}ZzuXisxUoRHK;4WjQc!ns3Jb!^uw0;? z?I}<@WEZGg^888{m+@WZTu*@-^}TuZ$b2Fz!(|B6b6iuPemYVL)UIe26>t_!f5ZES zJbbipzvXt#tJFG&aOXFwKLet`%tX;U$ zIk`=305pun^;D%6Yh(vVZoCramY#Lq9D;O4dfKz!PzEc{sjwgvuNVo+U5Do8SLyHp zyh}B-`QO3iC${!4YXz1A$d(Qnn2o83SFBiAnC{jG06Jg{EW^TBwZcq&w7ZwL<`ak( z3LDE#E0h2s2O2ZDJZMp`Q@Dy*E)@s7tdO5by;kf7S1d@I|kc zSB}m-L2_}PfYLSnCg zb_2nSyweD`ne9!as8wmNga97`OIl$XHBW@PL^vug%ftz(l z_U0TT0Si}7We8Z~J@uC$Ogtidv3XsBJWdWE6jH_mnK}WQIk$Znyqu51`GCYK!AE1= zoJ^n#uMqDG|8#4(T_HR>ql_K!GZ4#T^c!@Qh_ECiz>$>1atvhS|-%d`9(G6?H(dfE{+ zn2nZ-9nI^ee2=->$Svs;&1Z9WxX=#e+5xTsKk!uM%Sru`2)Doti&D7$1rv@ACLo@r*-1^ z=5@Ens$XskQQWA$S1u4&d8;M6DLJb9licC6_y@!kGhA9aL!7+(Y=z zY>AN?t-FIauk;H?bWeTR9|=j4G_Lc6QWv~3h_w~*iyKLFC?!|k@|h^fnKzVprvtyB zu=B#(fo`x1(C+F-v?pGAH&$;nskF%w;Sk&vBKrs{K}&#x^&{^>_?c7ayTsREZtigz zucHmK7er2JKc;peMvJ%JWWTTz_7XnjkZHO=njbv)Yta2J+0zypoW2|DD38Kl4x&hh z1k#2IdTTiJdHGfDDeewFFq%8+{6jGTq{Zy_OX?u*?Qswtazy)v`#yE0;;96a#mJASX>}5GmCN({6o}d4o#B^c!LKU(E6$5%3%8)a#g=2sP z02vJ?K=BG991%FUP%s%f6r@dBGg%A}Mre8ik&B@xsvAO07vW{9m<7tSsC*ZTz7e1= zWK}OhPJS_6k$|irWG)`w;5QSK3R6YbiDN*O%EUVkw~H}#N5{?zut;xDypd)jZ)cmc z+T4_Wgcv>H)g!!M1M7fM|Aq zu<9cy+>Se;d<-%^@OO}5?oVM`P9@+MM#XRVc9BjeIt`i@iyPLYCF2#8ZY#|mV4zj86zbZ zkj`pU00H$(Zu2MLdrY~xD3$!07eP89NWo#7mXIjt&lA9SRFFH> zKTU)o3;^jBRUjB_OkMJJGBPfGgs6m&48v=F1V)3*veQB>Rax&|u92Pc+O^Kx{ILFh zwSj#slZsZ^LaI+Bz~RMm>cXt-7WSlS`p0%wiCtLd;5~H+?`rE=ZCC|C3wYzV08Sl< zo+zVjViBnYWiX@Rq!qfOyt9s`pIgijAjtGOxOxON+&~;iCoz20=7l&9)X6G7%_ksj z0%1TKlD|;q3j@-XVg3ZbJLw`@t%=$MG4=KENfsW%1>Q~bV2V!R)$xf2HK5hzo=z6}*W^}$LVlcB(vA1zRd=l=l$T3#U^T80|A5WDpG+)5bO>W|ZN^H^ttU$=@L@ z0yilWvv4@1#T`=o0ux{xY5E0(5`C+F-~)0V zlOsn#TrQ+~v7zG}cKKS7JB&*79C~va?F!GFKB@M4SRmA0sv0PeYEtzkhIQr>+Pxy8 zK~X%iO_G&(khR^L-q-aYiflfRmLwj1@e`(d4M<*zL8`M2B1mkBb{zVSIPsxkf`D}luZDO=y1?U z*awUClSyb^S%d~Yo?3m&NFWigcrwBFI9JBzttLeOHAEj7xXa zC0bxG5*_R8Qnd|bb43++y&{GM5Jn8J+*zYkK;5b9n(c(b?2?D%d&Fm%8Vzv;WDZ!2 zbZiJGAgd6GH%ZNdRtKqPxH7ay3dzVYra%N;10qy&nMs#&C9+<1LK(JrG(=Yo60|vw zo`)Dv$WIr7h#bWkthF(Yr|t6#Pi#6VxEKgX1OP?v;cQ@XPzV!(nKbDGaAfgvQC}?C zz%UP%J_)>DHRzk}V@z!E9CZmIdV%K#^+uCVl)^ho*r2-h5s-o}FNKrNsxlHcC1*#f zMMYQFcDd{%0<@SU!h+Z(B_k`sE9i`Ly`c+zfE3ZS6dY#QClQO-{Kj$62kvN#Zh0of z7-5h+@48V4_17ptQBri5t%L^HG+~!u{Z~wcl>>DW8ztIH+!Y;9!qy^J;@wFQS>7R6 zu}zlSc$C5e~|d$0$*=oN8Il^umaZp|Omt3CS zJV;RWekf0?=~5^!NnZ2-c~BKWtFF=xDHP>)VsUYgZf_RtkvL68h&F|oOMrjn2%!p; zFXwighvwF#8B}RFcc&dvD9}LlqU2IljtXsZeq4Gc;)Tl!rH<&9a2y^w0#q*;Z#2zB zN^5aV7y!39G{-KmljSMk{Ol1-mFKU@wfS@!nwlF`>~Mq6-tjHo@LP0`1Q(3A1{S(X z(I(M_%3C)dYOU023WI7vN~o-{qLWMuM8U%=Rr0Kt)JL1T6|SmYq)vk#`lv)Pg!C>&i@-W^KvpLfWutR`KDL9%;ffJu-STPn6>*gP~*T%DP;wX~vS z_uf<*4-zls)~`j9c##FSve1O+sKR?x9Qo-uHTFJk+4D+Xkl5+hN5?n}c-#GY8`s>m z4&b#LF(3e^Wr9faA;bvBNYCSTL^){{aM$BxU=z|daroJwG|O#O&Lt}pDixKn!?1M4`UNCZAsp^aJ}Rik^&2FPwAN;+iYJ6* znRuy6XBE;xP)4NbLczSW8TjOaFr2#!<%~wJtTxrw?(M3p_W%$^s>}~IuIeOYkT`_H zINx#oantfKTBmEOtNR6T2%gMh93{pc(R@Y<2X&m6wN@ujZjQ%6pk2-HIQRB>K$iUx zsM91+DmyqwihCDIcYWHg?A0kBSIm=R&`z18LWqu>sSLB!y7z%Tr~E(}?{XrX9B;4c zq&`I#dO5KtJt}S=B@?L9WYBBVI21#Kx%A|EI>l;8208C-?2=pK5TB;?80-!ZT8g_2 zcqO(#6EE@FmY10u7tYtyQTrIZu;^j9mmQ(}r{_QBl4(-ZPC^ z7uncw56#o|`6*y|7g&COBc z?m1p-f^Xt(7lwc*{{-`ISKSSSL4fDr{f-Z8N&{M}3+sR+#1P^QtX)pQ1JR-Kv6-2s zH$>!|JUN)5UN$JWej^{CJu`3gUE&k6Z|6;FE=O&2EpNKBmFahdP0$^0;`yvgF_;Bc zG65T3$aJHyUFvM>6$ErJeWDhA5`ukX>|j|AA4w!k=ffxxITv1OOzPOEK4du8SZ_bM zhXWH+BG;;de|#mjnMb&{hf5osK>i~H8@x%vjjI=7zvxx)3!{=oxR2)pmu$j7{goJGncucRw$jD}3NQr(K@h`3el2b$(>? zAojB9JZ0zB1*q9Y8&-GZ0w9MQ&bSdCLuHvM8&7AHQAgDs^WZ%_aI!ey^j6S*Wdkh3 zbKoPkSE~CA;Y7C~f@;V|kZ4>&n=}EeXyuL%sSZR4+&|Z0@DJX_W&8ZX6Yh$kN28E1 zNm4@45-%Cf#l!4ij5e;7A$bS&04jl~OUgkb5ibv!7~T?yr+9=pH;72EMaYn)imbIo z`&WjQx6ybvJ8heArZC1@Y*xx1Kr-KHIoL&YdIhwh$ z5jmPWBlJnuv2BUh6gJUbHJ8~wKYyT2HV#nL9FOofXrw3T1b+Y9%jQ!@gnlnG!56eU)Q5$nD?Rn(<`jW*~-n3%HrfKE@@ znRpx$jXWK&u}ngyO?YU87&7M>O*_e?%1W0wJ)dC&Rfk6LR6aTGjij5?{KPv}kuFT$Ju0svtlnu8# z<~Rwds5KxEr0|A9${gWwUqe@j+2({))#2$sM(}PPPMu8E5>5I=a`AvaK$QMaX_AYMvP27D zn6#Qpi6akO!*&&^>F{ZQKcK&b<^ZOY5*?|zcX9}FT-@se#R=a)7_KY7zPj5`5fNDn zI=8KgmVm>H=o&nOTylb5q2Z$|2@dR3oK5DG%(CXFl48uz$uAy3&5TtMc^FrrIJ1$B zQy9r&^Um2e(jdxQBy%WJ+$EF^u3nnjy7Mg~Cy?hz${;2}r4ZR$KwStMbVwRNzAZ`{ ztK45?hFFYF{zmSJz&fB!AHj=&(1!^x5yh(5SvZ(n0lSVWuq1VPaE0ieWf)AO2F??P zu!`O&B&l@E>NiwVbjxl~_QfIPf~5<{h+)YBxM>!_Qwugl`C;Y^EP-Vf1RGJ)G&1S} zZVYOK#3UVaCS4L0A)dzS4m=u}`3+tmAR{9$f`*N+@|&AZ6wVxekJNp5nOz#M0QKNINa~cvoPto3jcr8>g)5OO zChu3p0+C)ZqF2E|nG^FX&dbKz2DMh?(S;eF+|N}n5NEXGGV&>$3m}D#M5qTqkyS1D z5hu!&=ohUMk~B&w5I|)`dD}nx0M;P@4G2@@p#-vvqEJ_a@MYb+s)Oy%tWRo1LPqzg^bGO8+5s;orWztR_AOK7>n|lGyR5r@zw35 zSBk<>@p%lWCj-pAj=4y)+w61Sz4rc^KflNQa))fuEITgq$~MtEt3B^h#WlX3=n!W03q+? zVOnJA?#TgSmP)iIhgVK04h*7XWef&q!sC>+>2k=YMe|SypNd{!{b>o|4IYwB5?zw( z5C{&Cz+2QQj<}DO#Bd_Y9VrRQ4y3 zS-RF;s@S=4cK-#;QsX08S#P+i25X~$u^~hqA&JYScs|(7a&l~_uD>S5VotP ziP%cE#~YHlVRT>&WAs%CN-s|iKfF}wS$lEv`t%XnsgnG7{2j)=RE7e?Oe*D_ z%A~+_dnG=|Sh9)Fq;fQ;tO~SDMfR83>8g`P=9Xwv8-$CFQx+M}ai#oTCJ`!fw{2qD zNt9za*Z$8hDd}0{F5L zM9>zV@tRvAs%srZ0w|aSlX4Ri3b2;iKHs48x@{>*&vm zC$ADcaEY_0HX{~tQscvzk|%g%1z;194=edZ$CKj6tFIKFwjssnHuGm$@!)0c(WOfQN z?G{Q}S90_7q4aPEK}?bH!}r@p4B^tu)2|KUS+LRxYD#l;tDco(BJ?~;TWzq@;e> zN+5xIkRUn~N+u z)g_Uv=x2uO7rB<)c25vkUDkz&cxCMR7d|Zico;LLGC_!j-`zJo+a9wgZ<@cc%ubGd z#&~-2iT$&OUNm2M=4GLR7rtn)8(U0hlWs&+Mj?%t8?D6x(YvzA77wHF({JpDIJ*q7WqNy-O9JG)4g=xVqG_$x;U zI;D?4sr1m(nK*G&9;dwnqv+jf0wl@ZO4o=2P&p|&j#7+r8i|Oh%%OWpq@=)qPHt5X zG)-l?X;8>mwYDY7!ap>e(9r$e4xg+O)>nwqbKttjCj; z@YRVf_(ZQ_LCMLr9cUi6(jlcLKn=JZy07#A7X9Tad)SxK$*Dp$Y1FaF;C=b2TYi7_ zWX(NCP4WALkM0oYhJuF#BxR~pYgAdogv zcaJU-_Ys_e5QNk@Y)=A25CSWAuL{2I647Fmw)?cLZ$PL61U6|56Sb%!Y>Y59006%j zZgyD}*aQgt#;7BW*bCe}XG&_^JeqO7v5mM(q?M{Xx!?TP6~P@hWqEL>@S$(nFT_iJ z3t~j&5+wX0R~4}U8%>+bK5)4Fm0#Lra*Ugk`BmPtxakhGywdd$U8Fnnfr<8)GmbRz$uOzd9d~&d=QuZAxdLw zJ|aMnUx^Rcj{7WE0kqa~eMe@r`y22Rab=Ma+huS@n?Ym9dGVF^m>y)Ca9QN!Pbg!F zm4*GBqgu5$xXao1LbgRfXe0#y4w#5rXV;Bw9y#2uS;s59cR1=cY;?+Ut1*z`8ipxyzL4A4zve+};I{}BV@7;((;WvDkytCs-yl|WHM^S61M9qtD>xtK^kFG})kS6)_!5q;ealAEmmPDN0RrFpaoL9D*DQ6tB3 zp{5vA2%N_U77k^d1?~Z-DB8YwNajYHYB!x+k{CR!1*JDIsvz$WO3Kh;6*dJ`z%RoR zEjcuq#b6UH>XWL-ro>m5N)`e<+6GgFT4WFg=s=Kx>JF0|bm7$ll~J=Q4-r5@@+yHQ zM_-JjntTvs=;=r@UC5KiG`Gw&N(>x#q0%`;_CAK?@)ZIdv5TbE@FZ^3G`u)3+-tD8 zqHGT&jo4V_6}t#~Ipqj(pz6h(akUI|%~jdesFh6{;p$gHhT^GlfUs^V%9BgFVUQOy zk{15lJn+IrW)&4yFh>^~1npzw1@wg{?el;vhe!NYx41cmUrwA+pExFzp&-*E=#v$g zJ0&w%U?>Er+&sg}yHeHBPE$e(F{rY2AS6(0N5nDX!ptZ}43kU`H@R|=_>m)L z9pAtq==uoD>ROwrUHE7wGY(u5eT9*iI48)->(XVw&Jh!bHlnkE5S!xTSx-hNlGZ4` z2VX6O2G-%|DqBLCTFI?`tujQ-A*wL65(Z4t=HeIl!G0-51_=t%J|IZI>k`e-Ue$zP z1+mi8AR)tHSer*!pa&2W2&*i`K^cs9>5Rk(22NB8ya?=PF`mXV3u%y}g6#*$@6|fU zL^eWL*aSkFmyOQid@3y6M)p%zMLCFEO+vN;_wY^TMNHu~xE4#foa^hUbG>@4e=mpw z++*M>?r2at0YTe@T(&QpzUv+}9KFCJ0a=eQ7vo7=uVk0&80?NjVPF?ZJ0Q!5MYoSX6Gv ziV7uPcOfgQ0(1pC1%QsmzPiVir;26P1I0(l(VpLZ(NZ3DXDW=xu4;QInt0&q*icqY zQXK{8lng$P$_en3&S3P@a%^^`Xkv_ArGZH0btfpp;T=zT5gV{A3_7fI{;X`SLDg5) z7$QyY3T^j=t@N8k7w4%cM^E@iihA~{^rLjYG&?3obfu=+6MP*$as3@!nZ=Xhm#b1f zGb@^R6$^m73c7z*1aonDq)H5;>LvM(RsGkXaDTNG8CINW7gt_ZW)(ubP{zAr+9)S+ z24h)sNGd(mC9>nAaK=M(VF=c-T_x}pj}?=)gEk*XvNy0Pp6(t4To%|}RA`b2l|)cv z)P`}Ux7i+ps?@k5;!+@Jaj&`z@VHbAa)Gz?2Ji4#Rr-ZeY4pU}2VI7z1M8$VP-RrXNY*`Rj&XZfQ0N}kzsc1dMo9uW zAu(Z3Xfl?QX9c2Dmzd@xHU4Eq9&{S7Qtr&|SIJh$r!Rg=u>@eiI*e8;KiHX1>2A`~T_ zX_esAN}uiXfGET}@k9n$(7O&3!2y+0gxi& zAtP{B4+pEwZH1#WR%*6N|9*z6K!TY4DlnjwFVs>S9xQ{dnT$h-vj zD@O=sru44ty%^=@pLF|38Mmh36BL3O4TtItJ$l*CsB%IqG^nUc&%+(V;2S$5MK~9$>>U7J z`_B-OWt>WNdt>r%C>Jhug@G#25NmDAzA$8&97q?r(T|wRMH?e@J1f7~{p3|8xG@2C zoc5~d){urIs_F=p**17W_w589(r8DDD`QXtEe!0(RL8+Ao;l15krH2F7z8@KY~}Gn)65{? zK~D1=YJ~H_fU&vbT8InKC;+mR!6TIW;f{;hcGee^#E;kxa9%Kg?9OC54ntL>T^$9P z0bw329Hj^;p!BHZT6zu0Iy|*jC3Z0^tGAwBJmMyRjzjvVo&CLwbiD1c^mRCXs!^^~5pyLs9+g`=(tEwK7U znUcgtWNVmS8&)M9d|%19UC~m(ON=yK83Jy~tT`5oDvI`vl8=!eO~$X}n6al}l%MII z%S?NehgOtIDL?6EfTlb#6WegSRD7xDnRd|X&TJ9nOD)8coS6yEOOPfgXQK7((9&4! zkji>i9-0%}rvzBcQ=$j_q&Ta0Vp6T`$tSc$dl^BJ`Vk=4Jc|eh9rrd;AX>dF2rN-# zADiT7)}I)*LWYgy;BJkLNHvVP^9`0D+1yx2!)Z}sAKhC~o<7DajzM|bd97+VsMI5c zFqXyWRFj|1e3-vjDa4Iv5+xW^lLjV*;V4xn>$JKhcL$Cl1bKC)zIrxDa#`AIdLX|f z4H8!zGQ2v;WA;1rIda!^0-VG#4uPX^2Gy9jxiM&1mZOTYadBXSL`J~2>{6Arhb*#6 zDUGT`NS|U+UE?0*V#!?t@@~+UV36TGu86ZlBg|Y&;TV;z7{es;*di z0vK-`AY2IESJD*Bx_VJF_~~3d^6QHS2mqG7huL^LJ=qNHPf~^25E+ksM|!dO2FQ{u z4{U%78PPPO9oLEV*=yLsTEW$D&Jv3p|4-WI7oT7zXsEg@fB+im)3A8cLaUL=D?cgaLu9ds6d;?YSgYzAy%3>a<$A-BhseLTNer5|Zp0O>+n(WaOI z4k}Bf^t!^ac%3s^4VbhVi|bWPcgOK&*yh^ig(q!SfOOpB^bPQ=S4A~!iI-9J5%S8w zhoIx$wc)zHW>vKO6FeMbpLslph<2aH-e!+g&KPD-4_<>9`8GybHuvx(iFc&FNK{H)*Wyf;*1!*wT5cLOPF5zoRKbAyJWD zS005fmr@)aJMxTms$11dT5VnSRd+3JEKy3cW7N^euGYBvz9rSInNK9ITQdRwFI{hv zCOfX|-1dDGIfDC%l|+swI>i=-N%2ZjZ+R_`}xuQN+k1k}!=PzSEds^qLEKI~?qo6ME9@o9MAN9z=K3@JOzc z1RgRFXR^kpp|`;>Bvsno0-PxgCx8(0$I7B|VrRV-W@;*_#%HnAHrW*dp>B2A#*N@- zGs^saH{#mhu|9S~pW`=H~rY;Hx<{hyr5ma=DZDE5+@sx8RagB&Xo;eTflZqk2SEbpc@JH=vALa6^;; zDO9rjz7@s==4NVxN|L5MMNw+(1Ke5ai8Q-w#4NYzUwE&4UsPSOQ$M0|H=J@R;g1n} z+`W6v@CN+Xi$))>7foznTJaHmIX1|bFG2m$kxI)k6BcF`9y`^@x3Gxaa-^;e$M&f_ z+rU5Fq%&pJvc&f)L>Pg|=f5f|?(Y#4P-NFO9r3BRn8p5EJsoH}s6Y+X!XH&h3v`N* zV!mICY&L~C!+8;fJm}UG0GqO*lh9_R7}IXMZo<%q=ah)Gu4-6FwX#DCLvZXLJhaxw z5j>y51M#W07WP=AGA)VldDM#^8AerNKIbKnR8*{j^Qm} z+bx>J1^|hrU9_JZHGths{2vwJMjJM z%Mg}NzRd6Ehl(4XY$%sXh+07eDo+r{&*$DBhj^JaJrz9cAOmmDVkyHF^h!$v2KM8Z zwN(pR7%;Wry+2HFKzbT;RH?3aT({@*=?YWI$F5-mj>k>F@9|_X0R^{EzyJ*!`v*p0 z7UuU6(-C-WUWj}gHA$zB$50?Hp#;%=o8J%elZWHAR|gh;IHvh(vE5&LS|o4;;ggLe z6m5=w;b@-aTWHRzanrK3F4Ug)Ww{R)b+Lae021LVKDr#FFBQHj7J1l5I^Fi1>B(W2 zsAqmtoA=WJu~SnW_-DPJb$?u=l8zKS+!s>f3g|VS<%JuQyMFrg5kMMk8y*!J>-!MM zqVDI@zT3#>*0>zouWWvfc=@$Z*H9 zbe#E>W8LFn8hrf>nfr05Uz^vg4&gpeY(U(bQ$K4cQT=?dy2 zC1js|0k{2w2SRLn{51aL;JJ9Ewz6BV&oIw>%=ELYEMDps9Vo6Ouih;4v#Tn|M#Ci&n)WodFaCUaPDw545^aYE3M2KabKbUpWcJ4a-MTmxE{sq|y@(A? z|HS7}+oB6_dNmQKS=L*MV2AKUkCHXZEI$S65!RS0reo6gB z5j;HJp8K^`p&dEM(&PB~-2Ht>_eNU@pWnltIo`Iqy>=0Ff$1zDTh;sV%L?L!??9wS z<**+m%>VRTH_R(ahxU9vUUB8pZPygQ#q;vyUVI80Yx>^HbYYG#TO=jK{&i=Bb%b`r ziUWuvoN>16-ZZ&Aj+VK?ydJmt{UASiI7H<%V~#5iH@95$;SXh$98gZ;b!iGe0cc|_SwYnq5XQ&xV{*d&IHDRfwFjZw9uYEpdaA(jazNi( z$A?p~^m{N&W8aZMb*T689aatIv>h2V3h1t^DEA1UU(R{~vK`y6&lqwaFz*xCI@GkU zB!VCRwtvj`c=qiv4c~C+P<_IV8@z{grV1`Y<$jWpNxJz-lE%@TVx~Jb&_AnGXef7F zpuzBpBzx>1JP66(M}&P`GhO{MGZo&Rk}d1|3eKeP8|^mz6J-DH1CqO|LBshmJVU3x z^6{wUa)bMNcm)StyXuFEr)ETPyMR9`vFjEB`GuZXnE-i!#9U^lF|g**+FSpcNdFMK1(A?O_? zINO?6Q8r^a%A`Wg!*DQjiEevb`H_;p=U30u2WTGs{pUvF%X2nYuqhwTIs9xf=unlo zmc&#U+!4>hqy%Dk#|T?wIdYV>&rq;dsW2Wn#VzOX8GsVuKEHCG7i~xDsrAZ@g4G{q z(B{R}9?;GEJ}HS9XS5NFI(|EhdHc0TT^CmXwUmiMYCmlY_c_ix=g)GHJ7t;TvcrYv z2B=fYIBIg?A3JS$c~-@9yH3K3tA~uoj1J9KgTK8@ff!!0ESP(zNfZWsseXMBJi`yGy4#Lv5TAdQ_LH7MpVX#1<=5?Xn=ja6TAWwff_ zKe{wbJk*;V44dE7ZZbSRITP051{Ad^TFgF9*>p>R)^^fNZwR4je8B-S4V!)2Qct{nLn-= zJu`lh(?M&&KdBdrm}Q2R6!{3NHPXDSy*C|`@Wv^BzMO`u%Fr{bI8nq{atn1*jU?tI z4Fi{pn?)LlvZodsFKjm^c_{rBp`)}*q=BHHfNNx7D{7H#LRn2ZG#2p|QX?g%BLTp- zvMv1E6+6huY2ju(+OvE=7*$jO{9x;4$+nVGc>D1zA3+b-%1)V`hn=DO;Q@%xMb%y9 znEmS}K2Jhr_w$Ht+5$Xp+sDuQ03YFZ*U1e|rXsA?@@|!GttbJ#61yl~(%aN%XAhm1 z_g!pjAPW79Y(^B+TT4E1Q$7@z)QS}FXh=~4Lv8b6N8S7Bk&wb=<&z41;&Q_hwF!=B z#2VaM0p$8e7=|7;Bfo5KgC&sECAci=GVNxC>3MBCZ|m4POg<#KOINBB&+-vFI{nJc`HI@n=`#>+{KZAU zd^#N`8&YI=onlWn1Q)R4S)M!Gn7T_0an!jTw$o(4J-)=WJ})08FDSt^kwh+f@I=M>E&fI<2{q=r4y&}qg(i1 zn>~7?mnXRk?qq*UVG)0kf1(6Y)4{+az_-F^_;{~);IBSSRe}aKJx*L&(PDaD-<(q2OS3;Gtzwg!R>ESzF-bFZ@(zuzW|BU=(JsbTVn%OlUI|u2Zm|4i30)y~bfZN$ zqtC7Xha$Z^Xk}UWi>a`?uANJ$-NSX%^SeI6u-sofJbXW+#@(##SG$#RaOidSdq3=Q zf?S@KZmi*|Th8R$eB}fR;KWnM`)OuLag7YkO)XOPy&`5{70pv~TRN@KTf>O72Ub6R z_lDbLeImUgRaDtSVS3Njuja@r>-)~onn|7*S;%hSQ(q_|6fD9 z2~THmQzHS`%!0|#Z|rMVHy9?j!DkXxZUJsV-JW#PUk%_T@uF z5AZx-FREJRr^?FOK{C8f4VgO}H5Y7JBhyX}jxj>40A?^VApF)}F4m32Gh>v*pD z^}-6o8{c*S`6_{yXSk>nI3yel2A+OId*;nMB!ww-cK$B5z<%&1u83}BuFZB2T!-m3GJoW;9iRhbcJ$Tr@8*K zE`Q$yR70kBQp!PPyY;+r?(5pS7OEe7Uw2(8E@&1rTga7DgZFL_!UP_>I6+~WYLq$r zq%p3#KZM@gIufo@C#Wby;yq^obJOpw8w~e(jkGC&UEl9o8qSjn4ROJ|=YvTN(&m(( zr$PJGgaI;L<0J6xCA&DkFsikwr|xP0p}l+B z2Y-${1N)R!4pnSbC%II1?t}HRWNj1{h~PO~Q33MglnI$~b&#i<4Xb|x@5wsC z4cKH@;cTu{Ed}5@#2&YibJ)VDpL`*D$9YfTL@3(kSW<$R9<5MR z5P787_Z@w$unvBkzJRhO?h^hxE%+3GfQ$9w-y1pnDjYEV#gw&IEywU%V@Hm{mi^iW zRR@P__~oF2UIik{HoQp6su&2a&n!S6rMZg_0|1P=TVy9f5~yDp`^!@mc33g(*I!fp zep#7IpISqfnMTyC1!R(&y!AcT}UG=Cx}Az8#RAzbC4>+uGM4z_=iI z%lifqIbqYQIUd z+{JQ7z@t(dgNg*4P)FTJ-xi`^)xNYdEb%(Ud>Ixd|%nNml!d4C9 zZ7VO0R?{LIGSg_Bm)iDgx80xHwZe;7UCQFZbXn>LbK{PwGoTN%@zWxfw2Xop&4pU( zM{9H3YXd_4P9t9{3{LAbi*<3Q8k_A+Bwu=C%V{3uU*1FCYI)e0_2zKB9oCyVh+3EV z=a9`&fw%Sn%<4d4O=s$9rpOlFQ>Dctsygi-YM1@$n+N$xvYXGZa7VVd7X*&GIDU(9 z93-9Bhsj;J3x!#yncyFd^XH$}J3>ee4!nmz5TL~&ih!Y@SrAGMcDc1EzFId!rT_kV z9k8* z7fatgLQmh{*q>d30I=ck&CN<1k|d<1E~Z{BVCY1b|GKsmmBwlR-6Ix(wC7T;T^J&+ zTe>P!Gvm+0EdM<2rXoeV#n6i}- z$r!}x@5ZyvkW10U29M`HqkJuqE^mHXHemJp)0lWjLzD$1bZ;T@`E&0~S<%p0=9w}9 zzp|(rA*Tt27nEenD1AB1lDbBA$dQ%PFlV-0J2a|z(T^^jp0Gta&xC6_+OUpjys}s0 z!-bU4`-uR6_)PVL#}=7o)aVxKIrpEb!Rwv^wN5j(OQ{iUu`K67u`3G`>e#ze2y%hDH*F+-gU4w~A%9uL4REeMwhmjit$F3&?0 zRiJheBgBRr8wy}Qc5$_#JRx=t5wZ$rpsebt{6|62f=>WrDP=2}A)X$^C*UYFutbB= zpc@>tr)3<99cZrzgQE?-)2cK;4v)LOSmjk7ngC>T#NnUt5Nt|5-9i>?@+?OfX2P~2 zZ#fb*cJx(sQ)?3{*>!vLf*sZ@Yhpl#yRgI7DDdeSPurR!LQ)+OA&o|iR^5455qQ#X zv>p-2$}y&$`lb0ez$(EJt8-9(d6;@ty+>P5Yl}WEilElD2dlpB_6E%qnkTGlr+LHa z8rQB;6!K!S4sN%K0EZJ13}zT;K}ayDb89fTOb9j1tF_lZ$~=y~S3Ey|9RvBJ!6JM3 z?8ivq!DAVgQ@ptN7dCxxf3PcBTtE;dGbxBA-BrnFirWw;xLm(ZjII4n&4k58V8}yP z3Y{~rg_2%BN!>S;1{aNGsp`hkyNOpFRgW+fskk08_RHj3hehB-_^$!3P{D6NUkUI| zc?ON*>|ZV}YM5Oy!kp?`i>ijROl73YM^KMwdehfGf8P~z$yjDGJ?@Io5rE^78e)NU zrhnK%;MGvWO(YB_X{8`0;|*QhT`+S7q>zT!3q@K5E{bi&sJxIa=NKzL%?@Bl-85MmvDw5iq1Ct z0-rBS4X{^l@s(w2rGNkFXd#+oi{x$XQJ0q7Q5RNP`C+gGBzx=O!4nm8?G0$<9r=EWS)^^C>jbSCjEkseO@r%tIJyr)Y?bqU0~AbRd^d-;Vb!9(`0 zlNJ$RaE3axruK~_(e<{Mx!cMH`qZd&EK{?|)=w-7zyIe|k+rU&Q(iSvG#$Q4OO$Gh zIjJ3Su$0`U+QqH;xZh@l3YpBr zgr?5aYrSsXv=k0$O(=+>0t{_G{CNyohVnDjoN(4b>BSs!i@OXRIZ^)J`d^Gw4g_gsfS^Al52{7smuT?wQsE+4iuR+xTagY|R-3*+^+BFl^6~)q1 zH_)oWdSeN8>X}&EM>}5o2#U4^k09mgf{?mZk=3v|yWJuX)E+j&2#+AV266~whz zV}lK*IO)REg$nDD9)MU@SPx2yOf(y8hceO~hw8ud8!-jK;vP&-J$AKTwbYev(*-;7 z0AqoYvSe&hSP5x0iY^-eKt$`MHRDs2LZ(q$RxblDZ&fqp{|K5^b|ct8ZDAjNGGKcB3Zqa5I)`H%hEQ~? z3(3V0e-08X)hq}7bketWFD`%Zpq|o0Rd}9$(hj!r#U+6c^}2-=1iu3&VCq2b0#rZ% zhx#CbB=wpt3%)_?)++I%9EM7w=ZHBiY~m154o1u#(nf)XPE1YnFWKJ9&*D^$`sakc zpQ8ASb4zU(f}e*e3AiN#1l-!tOG#zqX@UxQU`#%<$xdbFiA{&>ke|D4848ESi`tS9 zcrzE(e)$zvTK(P1AJe%kB z+jTk^7VVuz%^rHllVp<2Kmlk6hU;s6sryFk0=)jQ@@|6oH(Xj@c^S1580oOAH;8>T zE)jhmM#{U4V8Ad0`qliNS`8Rb3_xj^5W}eEZ`(qt@faLTh59h@C8LVI*;xLGzB}e= z9oh|lqw!sawpxPd-01x~1kWPR0OQJcN9u=>%gtckdtxJ7aCxxyV~D`t;?AsiuW#!COkrJF=<(9R761R)h*AH5{e&thASkH z0zNMzh?f!|kUV2oQ7Fr$sWnLY)8?+Fxm+NkXG0fAi2&tT%V{+F@FqY>XgAKS!yD2U zP-;v-aI`R%1xd>*G`QE~l!@DKL^1T0`gWpFY$Nad#0HpysFv=|$%V;sz_9Ai!}QSi)FXIGlLgS<5E?r@ z9zkSNjTYSOI*TkIv4!>YN*`+D2g#VmULbkr{u3?El zdcLc2tcCacH8>dbz=jxO^DxW-Rf(+z{be)QbX&^i{TX_k0z4Ba3^H_1VX@BZPFgolLXB<~~pJPfZIMp#go zclt&cT_rKBGXLRJksha+dLDRYhP-ac%I0y>cod}){ap(Hh2%_&Ka$$gDEo!6WlPbT zZ-F8KC*M#;(~WDd&#KpTE2!&L3mh(bucY@FynEXi3GRik3grn>rjAxf>FcL;LR+_J zuWRk30HD^R zC)ekK@Od;hp@@(>XU`wQ}v3?j?1Hw)uFp{6T=ke z>VUdI>SR6SjmvX{x@_}U!EnFPx(p^7M!V6hKE>_Ag@-%44_bLS+fS)PKev*DJ+IrP z`(R<)4Qcy3rtNW#AVGWAmNeLB3FUF-EKS!fy@aKy)ppwc-604KDwlxYN%t2EdeW#x zqVG$1r(%Lhs{jUkjntM|jqXL--1?E#J7E;2Sc@oIMt?l2;J570%udCQrP~TA{O6F2 zoUA7Y{l;`3-}X;9MC>7{2t&wp69YhZnsJroqp@EqCmLR2!oN$g(B(_49*ULWaV{9W zGxARHXw$_D#$w%K>UeC2|6x0-E851+HuUTT0Y3Htn^L2t{Z#J@64A|jVBtxt2c~rT zGm2aqiH4a>y!dloX`DuJWu)>6gj78;Rwga+VAafYsGz9YK47{S-ni&4oBM(6g(yFR zFyt@GZ|llu_Fa{bYYj>^EaK?`({IN>6dheFGzn#sMQA;|th-Jh=_@Z1RI`wi`t4DR zCc8O(z)7R`27s<%?a;PS(|dE1ZU$G$ zlvgdLbCrxt_iq?4TU*U;%F_e9`f{C%Y%>mc2U<3|pt-H?Ll*2q-1@LcEh`O`foNUP znkgGTW@M!8dEsJ3beTg?Z;!RzRh)?j3OIA4PmgFH_{qy-`NIy*^YoUzJ>eZUX(^1blFdXNUcMBG6*p^YGcMww9|nj(7uLA6bfhfczros5cBj9(48h=u8_m| z5-gX*4r7J~)r=uVcJk!EzOQNhGB_!fn@~d$j`S+uwr9qN=TOcOhhAqr@A1?kbYr7P zPwOe*ftBa*xGx*pnj@;S=dHIM?PB3i4d+%$L{VQg!%$`drA6yXi9Pd+c4KSsW4G(} z$Yu_1mUj3%NilI<(W0wHjf(RlD^tN+g=)N}N4#nZr2z$o&uAepxP)I^42yb7 zk0$e=P#P&d?sgVen$(`^uaQ#TmjvaMMj9wkR0QS}v~s|-;9L-vGn@&vITp3dh0j2R zLk?uK9T)!KVbv?N@v(2s!oXgg>*nD^z;1p%jh*!d%3L#AgpD=f<$@CKiwl^%ssfci z({rsXyrA$fzYPIVaixj+9dnTq1JfOq;i6o3r^s;<6NQKnOm2(3yMIp4T zYv&l@|_bb8oiJF>AJG(bba4C@NFU zep;l96TAi$#g10gxK5wKp2yQJJ|(o-Gf@W=qSHsv*R(=Xs%d5eL-|Hez7u@09IOYW z?Utd5$Z)3eRCb2tZe`e7Qn59ifU8cFV$%t9iWPz8@W5lHvEQdd!^y*BIiOOdnpd;W zCvMT(?*0YuTU$MR%+tVH)Oa%!n9Gfp12!+qSu{8E%Ke1$?sE zo;XZ;fvqlo^i8ilujmmPzlcrhN4O86?Phoyj++kc;eppuI)Q#pQqod$Dt;4e^!tp- zkBrnck2&)Ktq>?1PJqL!$d7&Q!Uubd*>GPB;m&b6oiwk!tt-?He?4jqE0}}>9O}cd z8$IO08}y?fKr=o%V(qW#0n^*khtZ1~hDcZ+!__*fSsq5>M3vASmR2?ar{WBdgX|1RRAW03zeVKml{3q{ zNE*McfFKVrq|UU*aV+baQQTRW#L1fLI~XBFP*MzgWN-6I zd6|l!mTlAuRWj&aeubS>BiACWv0TtLv%;HB&fhI{?sn$}olNxs7Ls}uB#D?)aJAiRBJ z$+&~l?W#w|QEyr4vvuDzLyz8Ri|t(NACGKEY-bBoC^Z%1zJyPK40JkUW7{u^g2T0i z1bgV~xeMx06<&Ffu6r+j|E3ASBQ(D}mmlBir_)iq()BO-G#S z*2@O~_+CzIy|}{REBIB+EmF0bDS_v;+v=8}p5D$H=0q?wRzvx6W>F83yp}pY&ERw~ zp*n80tzXfk2DiHk!4n;#-SoP}c7JJmP>w4cDvl75V=|3^*T<(DQ-pJ`t*m%@1DvJ$ zVU1rB6jv%T=Db%M%OvG9+Z3{qr#_s9zm{vbQ3OvcahOAXB?l*Ns?#FhG=$ zSpiq0c|0C=->IgD#}uxAJTE)Y2Q4nIdDvMFfCpdkOyXvm!;nDPPS?cWf+mmsb$_X6(`aa;wHDL4A zf?FflbfjLwUi8O)?atBt{+yAGEGdLEj`}DpQl`7_+!qb|`tZnVvqsSTiw#(N;IF-o zF#gf!G@_hle~G7BtQXcq*~3!3)16caewjPj{_Wvsn@=F#zaqeM-dkaM-UETn%Ue=% zM4_1SSR`RBySpc@!_fKD8fHo3X&SI}uD>O$uozm%B#_7Rdz&nueY5xoJ+#g!I0jqF3N7?AKRx`ExG^S{Pg+LDp?F1 z0?FZ+d$cY&!t~q597B+{L>h-9f-k8I9@wci>K{N#KDSTx!xPwH$h3p*>~y) zPi_lNbj|zOiIih$PXXFy2;;~O*ravu%?ipCgHF>l|i>LTu zh4uK&g$}r#Wk*s)ipO^dFXTV3~cE(jqZC%a7JoayQV8u zD)1EUxe5J->vANZfci_(A~@O$$aYQ#*WlRujp2bjoye4pnI5Hy zNI;(c+VKHD5>OSfcx24hOu%sZ#x%;VXorn+=f~wy^0o}itn*2i%7)%l1U&86id z(tb(KEOYH(GpZdPS))(wUxAjGi@4lbOT5d!v^SWRi5B|YL$(q}8nyb|Y{$wRS=taP z1LdN$_>*sXMqi7{-hQ9*@n8?zW%);t&!Uok|46$~He4aIV>OW9 z$>P9LcM%rWvqn_VGK4dIvM;ksvI1|B9n|E%4B1BYI&Ca#cBs|;6{b}MNwO`#YHkb5 zG5d-jaEP1zDfyM*6v=NA=jSbSZOX!55@9qn8AAb1- zg9XM>ef-(I=3&7sI}vK8%x*l`@Ber-QbwAb`sW#;zSuwi<8i)!_&JYlmu|zk&6N@o-GpT z#c7UkQp--7Es2COB8aQZ3(Z2=QFdTR!i~-JY*)o2ScYFPIwGTomw)fMXk<(*KDXYZ z(Eka}smC40VtYoUB6oOyn@#cNBWNqvm6=CWEPQ`Ce=+Wzrl=)e>}QzattHLzH8nevJV4J-!5cz#v>p&{h`?Nyi#2&`>HvE zRrYW_pAy|(xsDRql+z)XZqqYf*07%^i7a*G6m$l8IwVVTU#F8t!y1&oJU(OG7<(I8 zuatYe9v+`HH`ya<=ppXU9MJ)Acrb{F<6!^5d@(7L-snQ-Dw)PO0F(9BUS0G$+^ zk~VsNK{>1E7QS8w0^;e3ph?wAMhI!LIV>?;lT@-^fjlKUFbrgnebl{~VwLGcTGKF9 zB(@J9!X;YhCl%nKuzu~iV}=-|Q3LhLi12W^XGU`y1cyZR@=)vj~UB!O0Un+EgpxvlNb5xMRz=TpZef7lYuU8s5@oB7zmQp+$>u339mve`ksX%=`P zynSrg8=7=#Zjog|6*0QnXd5-#k(0YzTc#iBYk3%OrGA0)Xkc4)Jo-onRV$e1RtQ2! zwjs?ZlR&X;Sk%E9Cgu-!v3u4>!iq-U%}wqtEw0&vRk zz|8D3c8Hr93oN}t`(^$5lBaskc~pFNQv?D8tWVPU8wFb7!#LxiK(Wq03h&@kzO9a zu3i-MZhbu;AjW6bTgz8)C8_AxgW30Q1hrR}>A_X2Fl{%>PO!`!uNyDx=bbs_ZJq`| zv}1F*sM&zo-wYKHcda-OQ!O@n`}+S6!m36UJLl1RNaCBd-}!Msq_7RU2E7DOJs8ha z!|N5AJlEQuWtcJSGQ+#x`+$xl%*&UsSj33xS#xNJE$CBodeHW1n}`8V+YWRbo}P0% zuH0#EgIdHEf#HW;{POL2+4X)8IBZ?HtLZl#g{=`KE4@*wkyELScDICHhH)wt+2nj* zBq`Len}vc+N2-bv2ru;S_-9ks>x82X7raGiL=C>WzD*?+Zty@LyMtNm;Ujvn4cw$p zM}E0T6apxm?x|zdDJ#Ew`R}P&?*3fd8K4Y#PLN$VjMz)7=$Y3h4%K$R2Q& zI#Oify@kFXD9r2O=wYIjhg!Sdw_3O^LM47D%a|W(HJ*ySP|@l}F!i1iEH$&>m~~y$>BUE!(KvrMjp0_+|f6sKD{i?+?s^$3p<)ctLRaxm`Gug3KiUxM^@y6jw*ZOk3K)GL!HN)jW zZ6UJb*vq2f)MKW!`NzuZD$J?57^2{Ze+QumeHDSa&{EzMJv_`HP4)}v4(u9rtHSG7 zJt>=fDQp^bMj4GM(GKMvWWz;d25A1gJoiG2_QNIi)VNMlF{R!(3n|$Uk?2UtE;euR zR(O7MiE^eE1!$kWc~|%c+|w}wd+94ab{&WY?D1z zB*%PDu%lEb&OpO!(A6lAerK_qYB9WO5^wn5h679pSm45Ifzx|RR!n&MF|S@8jWMr5 zgyBSdvRx4+NHl8U71d27MkpC9k2{cX+C}d({Re6rSIsDCkIkS|y_NfS zG&RMe+YdYY>kLOBd9`yFPvPks9&kGfj>&#@8t!`FIB46;sFrSmMUr3wv8>BoM-tZ8 z=FOCctQa2mCAO_D%i!7`hRM{N09&W>7k&3fEzuCh5*3ctL=9U|q+Un1jE`i%L=g!3 z;&KVF7#V@8UJQt^i5VnwQ0!!aF?OTm`NwQwB-vz>e}JiQ`H0^3F{+@<%Xw|r<@cp# z@Hr{Mv%0J@ym}eMuP5T#SGz|aVdhqL`z?l7!=bDF{lo8!)Q^%#5T;oofj#kdkD=Au z=qsnQOHGZp^v~y$M5UDF5v)sDO#vzx1Sf*%VsP-9%BBl^bc62`_p001g z{)DEILQw!n5x8AF?*S$8la-d+Ji`}T(+`H(uF6(=7x3Qmbg_0cI5aUX7Js~gYWcLS z(MoAg&kF_B8;x)b6Tk6H!^b?nmTDDs(*bSA0)GROT&cl!g7Z&V zGpp3F9yio~vs4Q;}JfGup6t}IBk!B`Zj^}B-j|K z!;#HC_^`-GuQOnv83tH+82@xi@n@L6E7Ui20{RkTZB1dh0J>R+GfQz{dqfD6QS}NG z+FY0{80XvoR*zqvx4Pje3~1MNBX4E5V%)6PgWvXJRa(UAR<8VPXIW8A1y43gv&@d2 z28AZ)v6YBRN{a+gY~Azr2#)XWWF;`!Ee2nDIwAeMdvAKwEqYnH3F>K-r{_Z6u=gH` zP-Z|hUdbx|Vn~R$<L08atbK9@m@q>%# zL#b~kZnTwKx_OS-+URUZo^AgEeNQx94R`=U#p&(Cp2h=Qy-hHXd}TGzcJ3b~KK53$ zIoYc-o@_oJ=2K?*r1Yip&e8c}>yD0Np+9z`ho?2A|Jf`IbFhYYuy|1eE(Q{?bEhOp znSnEw0DGWTzRtaQhY8+DHi2jWCbB&!Do0SfRaZ@;s#&JmVHyoo*qAox_0Ibdfg74f})&uMm8Wi49!Sg*#va$Oc4%}3EG}+fmfUPzUC6; z5!~x%4!>g}r*>`KfEuZqMzRQV*>pss#ic@r7OXTx*}262uyg|*K;MioM!R+-Agzb< z%unSMH+Zl-9Uk@XqBBr8rkdA=N$L#oKB||2W~$9mdw|kwudM zJ2%>0$turv=9-pCs`H~VqK1?SkyDya375F?IK@aNYglxnQ^<}Zd(mCNqQScCH8dk+ zusps~PX=Gt&^I9peBe7Z@y(kMri z5U%^CT61Ef1;i$oX5)4Rrsgr;3HlMmNI=K8&7^Shu;bqL z2*Y4bq(DTYVb`kVcHJIDETmnUk)X0Yyo`Ir|MAS4Jpf{NInMKc?4NIsZoH-rHqA2j zS3A{aQf4+%01-j~owRI|KhgH~NOxl9>tvW-I9RcE(_(RkW~F}a4XsE?X*+-IjW~qI z6k8Q<#JNB-i@U#zJxlpGw?yDroF?xZLVu9Xw!*8?$6l7WJfLni@-jd8|MS{02vJ-- z*u~)~3o|4l+Fd=8$Y=S8OT|1}HDa&-_?5)Nh9HzI5vpTRRE8Zx&u{CMnG9^)7)i=x z3ZO>lpF8U_oL=?``|mpdFz}lM7Y<);uLF91px%o!^Eu%e>yLfDz8!s!_P2+;{^O$M z{O9l2VhKM?tuNAsCOmN;-Udb{(-?wc`PAh{AEvNJs#H;?kGHI-%kTRzfFdenf$>;| z%*^=qPvGIs zAoqR|B7dNitof)ni7}so%nZj61Jvmhl>;6SKToMqXMvGqwJYoeej%-pmid z?ii~+Y0+f6tmTr~f9Ni7IviN~)=^o!QdY%27V_JAV@}r!0a+{%$FM3MyJNz(5U=mvg z+{JAA8MNR;kTi_aSvJ#MHE^}4F{-^7&cWg?Qi|B~%Vdw@SmD`L%Vjw!ZkXk@-v}D| zIGxXtUHxzhx;Vv8l2pGiP8u1G8p1?8J(}l>$2XO->PL>5Lz){3@!E0i z4Xu&f10Ii?beoGB(GLB4Y)dq0DlXOnUB-g+ls-K-C3KIA@9wN)~68Y0Fvc0uvS@6RHNEV4#u8T{vb5>y&%W{3(o6qjuO{C)q- zI+x4H7^tQsJp0DcYb4S)P|kVe2(5LlRN)?Dqg93IC!jmv?Rek#wMUVAFYmG}GD7i< znFyMTik@R|PpSbgsth=??!1OMG$e#Ag|5q-aA@tqJ-{h+aVPC$d)TO!1MM(ojhsTC zXZz6C^mwkU{km>VTiKS1ZN^6^YoBTL@Cy7iW^V0Lw?7W#l`Qkl#2g+%-Omm#gG{P!mFh-5=l=xgj7`Yeka-tr-shNYiY2(#B>X8d8^)f)f~g zdn|wBZ)`oN0@*vZw=jm~C)Wq!cx|y*c1>Vzmk9LfPZ#a1HFhppl060CWyIE~6u)>T z4V1%_Uu$HFc*&Csv}g!P_j)*57#`WzR{8kjz?_)Q59?x5+3oBv_;@A4sPgySXuw=h zo<^TYC(kYF)vOqP6mJ|1(@Cy#C+k#zuE#m~;=hi(7Sg-7t;l&rd1*9@ILN+YM_e~I z_~pPnkoG;R4_EELx{{N7as6f`U`0L&{BnRy+UI9X^lD&Pi$kVHC*2MEfun<<$lW^P zL!;d*XW-!o344_G`dwwLnThT4P<;A`E4sSicrM2bva_|uk6OQcimgC1fWwR7*!QIiUQ!*ikXH?p@i@Ux)dc z*107{rx7-)vGyP}4Zxb_my)SZE^aC*kWLq}O;@46d;tXy(*!P<2gkGfsS2FFEg${v zW6!_7m+f$$sSl|}X!=@Z-`)Ei`R}Uhq`ee|jFs()797@+AdDqbxC#QL>}MKs`PhEauV zXSf^7F~OIkrvg{sddBpJwnW#{!3=l#Wv&}JpfWFgnF-PY^Zm_cc7}AgZc8+&UZP$I zEvjl&AM!G)RUCj)hr3LTIW+ zy>L~GqFi`x#-WeEF=9_$+o6^}O>q3{km|ksoRL40t)NS#yzY`N@|mV=|6@8N)ALME zwjtUSDWbB%;VOqCvA%Nn;Q!^?tW26;paRf|<)0 z4ywr$J^5KCdnxkJ4KEi=$rce|ho5FR;4{r| zvAxsSI~?pqOfQ`0OqG}H;WOYovE%wDOnq_8?hpO8T=?-?)M66zq^cIt?spSN!xbl~B51XAqSGu8!Xms((kYYZ zHxlibLuRtUI5=E4|H5AU7>nv}Gnb$II@$H{9`oq1OR$DHyBvIXC=}~C!>$R0ePXu6xL`|eXiB>0E5lW`3cuz_|@aQQ0-YoYA zOG)$2Wkr05pKYnIJR{E2stZw1V>||O>cawo!}Y;R`|IPKHLFfMdOCUdnQkR$34w@~ zBin3ffx5hJP|s!YzQdK|e>_7a3i+4_o;+=H-q`cHT_fdX-}V)|?o(D2iSy2;OFMN; zah3bG%XUxo;_=tsmqiOrIWzH6s;=2uvrYlVaoaz5&}@x9hRT|U?LNOuUK z1q|=VN;hxWbgYbcUzxe;EB9)(#w)MD3uG>VmS1xzjTE@eA=Sbw&$X^J(sEAMk3w|I zwy&kRAU?F(UsnJqLD9$mH*fcN4t@XJ_ z14wZrF6=?alC<=m;z}a5<2>BAN4DF{412R2(_cG;10WnMzZc5YY9VII<}XG|ZmY9J zr@tbI;R54aVPqtLT|`q(IyJ-!)!H&jN1MR*%kjdtsI@WHewi_o zGm{%V16{RCAz-oE#oKWi-m0C8%XFjmC=eit_3?~NIBFE7xI%%_D+YNt6=((Z&fYh3 zxVRSu2SB$14tIsSAgQjyl_RlrO7Yg!eS{$KKl?TV0LKhf*yIq6!oIs;4o!}Ga}@pjwuiVH~Rv8k2c zF4u?rucz!9ChidOIlErpzQgVJeo%qM_Cv{XGm*oalp`ggc2VN?^tEiic{%iU1bFoR z?bC$=K}^QMx4OcV|2b%RkJy?gA3LPm+aVPP>J~*zqD4gzbGIWePiMfV`1PH(=kpPE zV~pqZ&)@dxHhcQj7C{TINu$*!gfI>rqo*lljR9*s^L zHCOv?bf-b6k8dFPv{C=d^Z6>-V6f-)<$8R~Mbz}|dER+GU8;R@qk5d{+x7c!J)ZC~ ze`j323)KLgWC}@YluJBj2XiQt@JbwNEggiHY$eauk*#SwklDtSYbc-mJW0Xdea%8Y zTz5~HXZ9!`Hzu~pHNNhDyB<#oO@IGS*Yjd)C%7LM^A5)28(rSAdV0b@|Gd=szwh<@ z`}W^oX`(}B^uj=E?cs7-{q69aBQy)Ppdhu}jvr}U9KqG@gRT|MNKJOy3AmK!I6lAR zHXmou0RQ?tw(J~ub7AFecAPVhxtnn!A>H1k$G#6KCK+=qBzt(1uVhh($B9_;aB|9U zguu4{JQla3CY|G3j@%?5$ zBerf;p~vfU5aCXCpO1$lFY)J}zpvF_T6pc%pTo;6(JA;elH2uZsgr>HdrrH3#~pNh zT$w2*^)ueVSLi%; z?V#4}xFQSkb_FLX7~A``=sIEHzQ+co)#iGP4R4osE*{79fXw!5w!{00tNHWX2UYS2 zZ%2yGkNt@S-U97*WM}T}It4&_?Zw#JG2sbXE+G2YEmTFfXBw&ewg)qf`!(`Q6G^vE z*Vmm0=5!AZ-Br_Di)soey|Q-rv5f-vYN^h8yV|~w+tcCLTt`sjZ;$mWrq|89N8v3j zpY!s&W*M`RGJM~>S9|gBFyy#>(U0B24ZA%rAQI?H4HIfCgZp^PnrE-5&2j5s2BufD zdOBrg$+P#@$C0M=^YjEUrZ-02={=??VLRJn;8WWwRG8hz2o5j}Zc-YBM!dJ~&pgdn zvvyNIt?Ks(A?N9w{~eIcjW*gL+sE+<`j*%Y`T|)@&Pe_oEaRz zf4LqnODDFk&`K`qQw4sYHBTov*JAMc*yA3TwkO$w*pH9}*{WwyBMH$*)FXuij|EBy zzimrUB-&sqmB>OPW#PQ*+jG#B1y4X>EjxbqxV3QzpOH;+L8>*s53xg`(*dc-w);Kg zY){sYvKa-1^zeAFwT<#tIVqp^@uL5HZ8rgFW2rLy(*)MhOxFGRY`5!kwRIfMfIPn2 zI?RT!YVdS;K+sj+yX+0HL;UbCyU}MAArI5SXB8n=9be~Yn)+PR#Aa)&9h6m4J@9pJ zE9k(-BgFN1&|=c0|8hMqCXwDc|6WX6R`be+)Y}8o=H+c#-l52iwDw{S19A6m331TC z&@O%)V#-g^o*d1#NOrU{pSg8=E>{Hq+9hPs<)DI#3SM=k=yopi?8N3Gt}EV0tfM-G zad{u(?QjL#gyF+qX%IU|@WE5*GR)=K-geV^_Uu2+jW&3$@_#7@wiq?pK$w){`hB_z zIbU3-rMTK*ls9?bk;=NGIZbz$+8s`~9%rhD?qimfWSUV5+mX5^M_Bhk;gj?|&ycZ? z>){|kaB9(>7uo}7vXLi+=*4r5lF*jBD)++TFstt8m}1IUm8bKKNks30|AfdNSA!9h z6s7WO|LM8Bt%>X6g$+Zo-u718nCwS!hh{;T;iYwQ{rnuFFLSob%n5`I@wmLGEql#PIQn_6>Ha!(zz=qLc0~Ob{DKeu~h;o)@nja`igHX_E$5 zH=X9+Cg}7EO5FaUx{#L6s&8($=hq&KQp^;yI%kPq27r;*_E{O_b7re|gZb;yj{QE( zRc3F;eIcvoxOnfPxOAkJd_5fP3by*;YUBl856|ud;;B%i|L7>8a{L_A!jdl10Jbw4 ztSv56?P-Xu`r+#gf|m1$eX99)-aocn|9*c&vpBq-U-8=Y>z{*mL3?#?`Z&g)lU_GF zJRY~Z0W87}xU}_-X=C}!_e=l&?ssng^inFX<6q}oNiyDV2=x+^?yC;;`!^H{z`YFtO zVi)<>GdfTf)4Uz@4?kyI6i)WXRqhYEf9dhjRjpc|A6=EPHNppgS>thG>)}Mvc7>Mt zbD8^wzaQ$A4N7JHv|muIJN0j}no3#JE7V?^Sv4HrcVrac=dMY8M~d@4D1Z@4`>*kE ze7?`^aW&Q3vGjgkkGsC2_!q~IZ>K+8+;GWIJIHv=>Ny6ij7QP!@|cliFR8=-@GJtd zq(Q9$5aQRj=ls9&Y^oRZ%+Hp3&eS^ZL(VYYb>o<~Az z>c@8{wBhS>P_*n+gN(4C^g-bAFME~n_lvt{&$O1)q#iVbkO#!|`*igne@HMRuWQ$9 z`>b5%9IRrVBl3Xaq(9ETF2DY@!n$$~^xN~99!QzC{-3UWA*E4kw5;}pBGA{%{<36v z>)3&lvy$O?`45-I?cv9p$KfoXeP6D}nMX?*_#INS>WJbPu00Rs%xirDw!f~& zon7;u^>bs}^EgjSzDTn?T#t|c+By48-gY+$uwTC7e-oiw+OjdoJsNw zu9k<(suDP0k)T9y*a5~>1J`sgL@JV*>x`Dd+f{DOr-4?sc3#Kz86T9|-R0sL`JCOo z%HyDx)JZoN`oqyuVfJygWu+E8%@d43c^}&^H(99_d7a%3wrhVUE_4{8@Mu)q^*B=u zBIEjRS9ggs9)`N`27Mg8rnuzcGKW2m5&byl!Rp+SDEG*wBrn7?pM&xd;qQOiM+$p! zT_t1GzUNBf>_0q@rx)Sgf4W}Z9TeW^FVAPc<_1E=ii(+Fw*7wA)eUCH6n^@{!*Z9*q zQ`57L`q!zt9jV@TasA(XPIJmYmcRDvYib1i)&AR6C~m}I4mabBag1xa=LdZwpJkjr z-u&f1MwM&7ga%za879!w(maSoDwVjF%YlAWW~c;W2CmAt?GayUpqm@g4w>E zAcM9@_`S0^8Py*F`_dL?{Y(qWX094if%_nsM8;X1<=N7<=XqYF(Eqr!jV59(R*~}5P}>kt-i}^VoA7X*Nph87 zNcK>*pw_5gv%o4Kmp{iG*^) z)>oV(7i18ABX+F$h_G*mUq~9(_U$)vv^$pc;H|oe`8B?4Q|tJ+UY|a;r^VgH9@C;b z*;oGtdH5JUUJu`6drk5i)jb<^7Y#ZbxaMIIR8yrf+ z`F8nbFBvM^sKX1pm6``_QUIvYe-0l+9I5bD2{buMuw&E3=5?lO&z{!!aqjp&sgpwf z@r4oGny#J4fn7Wv5L)w;m$fJPrOD`3Rn-Nyky^(Shat5Rc@=W`TG3D1t2Vu^T=M&eUcFWb5ryB!j~Vaq2I1eBQDceG2%c9MYW;I ze823Yyk%M^*$$znb&%g*%lm5~3o&AeS8S35ejDYSxzoIA#{%rnHPXGi>b{K#S7!E(ibQk=OA$CbES9Cm9D$3 zr6r;J@NS02N2+71Ok-qr%2`Qatd^g*NF;p>@h5G?#ij^J&GHx<*Q50NOET}_=ZzpHC`Jmt+WflDP1@9iZ3%~YDbzKNX*9K%0U(;kJ(JA5!KS2xv#1g3Gx=b}4b_fy?qAXcUlqFG;rl~n2r>Jf4K}OHwYx#M&GgUS4-*%T zGrho-Xd`f)b44%)n9pfPO-nnwZR)xDW-r7A<#a_Ly|}p|fT&DoNrk}f7I$abUDFrJpYoTKFF#txOwZ8gx;n{g_6+7DX^|mFs4T%OPf$%c<4h|#lu53=hpODKE zfTFWPEbdfhn&pf4Vr~)Mw&5u0#%~)1YW)tohL?Ltfr{eV=ZJ|xsTA}PXm@@_vmEf- zfD;K~&Ygv4`kR$e4hM2Ohh^RE=)|TlOyneMAzc(8x!HN&WWT&&WX5$`z511JOWzs$ zQ+hV1{}Dn7H_=Wzvb7+omf}vk+@J~8EbFoxD-^%ixZ}dB<^D$E)+>1PXV-rW4|_jJ zOMVs*gSX16!|K0vZv7du@z|D}Qr%B=FlI`l7e1=%5TegP%#S$;^fC30bMvU;VgWG% zMG|JS5=XZn+$boT1cD}jU>}0%M)FDYN6mD{Nz6Ii$-C9RgauhiL~9P!Ja(;QO~gK> z1+|c1qWgB6`6w>TsM(*)}#W#3N%P?%}8~4Eg=W3^z;4-s@OmO1Ug^545Dibj^L$A zX@n!mKOZJyn!q-dw1~=izN#S!Z@nM{*$BD2kx0MVGaU zG*qy3S9$75(^oaO9cU@r&MCaT`-pL0!Yk45q3^X9QpyEgUO*oA z>`u7LL5=)rjyNx*Oe-g!s4VQz^6MO*Wd{Q-idVz2-}D!j=#@iYZJ>$HVR@oIydIIg z?g*Xqj<^yVQG83UYn0KaY@e^d&jsto%8chFj$XSq5iEIldX*+s zFXO&WuhT`dCYd=dlzRQsiEwI=`FdxEf;_bb;@RKI?@z@J5>`pbDQO^f9Y@FYg0hHc;iUnvLV8s|*m zwB}ygQFM%*XLz^Ams$iP4_J;pvqh{c7`8jXcASAB3r;7%q5qvb==8fVf5TEwsnEE$XEim)Ke0NN~90?)CD1+eR?8Tl)e zW3pQ^kZ`@@aWG$-Q*~OwGa=RlDysX;a99&kEE9hjqNq5G_-?@LO`!dd%SJyJ)ARI%2rueE!5lN+n%*e7ltC67HSxm3D1>q2d z&$N{8k6i@QTC0(ANii7?WN|pFCD)lHRdr2)Qj&S74489lhakOs{@%|dnNYPWM-SqM zIvisfT^ng#InrCInT+Kj3{c5jO?KIGoRys`9P`@eti;4=4eqfyDMyrC^#~MDWr~T2 zSi@Fl5Qvbj+$|B378Lm*E0f+U3Q-C)v1St_GpJPq!dX5fRaVX5Sy3zPb_h4dF?JX# z$W>ZTdmYZwULggSgP7@>8Puv{Lhi5MO)s9sKIj!?R6;So@#>XcyEl2NX^&>#lgRRA z#cXB>v?}Ganwi%f?$RgS91apZXgPRGs-@Fv!2WZNUhIo2)8)#J&(1wxjqI3M4JHG` z>1O6sLm9d7Fu$NZhfiwtJ_+`xI}+rW?g-Svhu>q~d+OG<|6yVr<%O=X%aReeKC^7Q zqh!so=gL}2EmUG}DPO6eV=%cuA-b;qu*%-0Dhg# zAkDpP*MH{|o=2*7!!xgGoo@;fPm_RvI_I^s0<6Lm+<29<#qCd1{&5y6>=LoO?iI9` zVU`Bs9l{f*#gYr6zaDCXQ^dES1Z;6H`#0}M>gp%lO-4Sdc}O7d$}*cSTDJ6vOWk37 zDo2V+^{AT84l~H|m1(}m8MQn^A>SiTJy5)Nkv+>A9pjhGT0LwYKY8!NzvF^x6{#bs z-afVPk0-i6X>2O zJ_1Si`bmfsFLo6+ko;8gzgdj_Vmp_{vvuJ;Fml7yCxLq@F7v1*li=ScxFbPTksOrW&6t3Kn`In)Kawk2rNpPi#_%OjQ+;jngi9#qF7K|)< zfmW*@rg@3uZMVH@`M6F;iMk5o0~~F|ZwJDy^SB{3`gm*{sKkc)LTSfB9~T{Jpmt$P z3xH%IIjx_9!uDm4_aBWhw^0CO+GdA&vOBC(=>S_(WQ6(mf%MQuV+;T=&WRROY+#q5^uqf^&|kX627<@uG3 z%F3o44(|=tJ>*3&Ssp@JInI%t)#6sLvK82(oa)wIeLLu6sHH&7*I1x4dNK6t_Ri1u zBaBwr3j@>pDnwf?Q75hceY?$&g4~`DvGyZ(CmgUGK%#h63SHaGdV;4uYCQX?)lN`N zi@kD+iEDk*X`ex@dYM|6qHDC`(16(HW|y<;{X`PPLmU;4UJS~7`!YP!xj{I-GM>u_ z@q^k}Iark75GO}%pDJa+&($}Z_2eICiEum*)pC_G_cIAl_u|KyzRE?~p(S^(p4ocd z)Mw!ELz;>PO1<|t3!deVV}I9&hgMJLLE3HFLA!)_HIZ8s(d0XOrY+xpf6QZQ;mzzG z>C7zO+8ytiqNbu{`HF*&)EKdH5^0Lob|85%5X{Yx4nno}k}xez-P&2;EESWO61 z-^O-aI3DpR8HTpu%m@E@;Tdf2=`p7d38-jNjoa<&nGhA)=^MEH9^N!~H^tpri-SnL z^N}!##@SPJL~M0>EI31Zp_rx23>gGIr?k5{05{N8M?MKb0;L6c z{}nb@DSD0jEbWHEiz(36hO{p}0y zSp*o%hMVxz!KkFFL#<(iD3z_)fOjK8+`F!Y?v?ir3OmS}_e_{?zcTMK3Pdk)A*+DgZ%Cgix zNn;7p(s6XasrvExne!F-*66?Tj`R8wv3@&#ZrAJkAok{K%hX&#KCeDi>+T-z^kGeq z!;cPv_4PlVeb&?U_^F85&roZ~!9KfFP_&%7(y|p7FtV+kX<$CAA9kEQZ`I_kCli}4 zP_kb4+nq={&C- zJ}1K@c2Xo9O~`-qA++#_bOrrK&np1aunEu~A-FvN0LYYU+#Q}0pb@Z62kf}cUE6oK zUR>q7Dr9B06kI;1#@ zySM(9w@~U4?RO<*TiQ*@=u_B{iO%b8vubs0H@7|cq{lJXa}TE-=e#rgGYvbVvPaoR zOTS#WFKEko4{L}tuM|Q!$X6nG&5SmGx_iKihs(xv?XVs!DC|#C5FGMduybH(PDwpg0 zfNF6}=X7@|j(uaI^wV+iwrId zO%Mo#IEH`9U<1K5)o8^6IQ9=g2YKTLgw8d8=Z5utd-kV#x*(+hrw?ec*+F2Tr#^%A z)Xsi>z4*zyC*zSm^=<$Bzm900oejeP#_icUEn>Rxg_G`T!Ncv|g$9AdFYu$88jkyz z^zTS4tXY^CiY{Nh(i0pJ$W`n%Ke9+Zysz?9BNPG2){#nXfs1sTa<$LXeb zqa@A{OFplRYFW9$WpbVWKVM&tB{|P4>uVKdKcf%lVLj>mM)m&PS22K6X7zWiZlN@! zC=$dF2q;mSO;Cudkd?_UGZ3$qiY4=b;l2wrnSYrY|Cg!R*KO=!(Qb#2&_ zAR+x49!8EuDfwTl!Fer%0r+SgDG8tDR z`z7gHfO33xU4+yWsU7=M0Y75;dewp|@E7%yUs=;66gX_6y6qe1!+#A;CD045q>Y>Y}-_f#fSl28y z4yi)+W!Cax)N6Oss$sNuZC(;XeJL-=xFgTuqTH&O9|QuKR@L!RUT36omVh?;vZAZQciE>WO>MUH zfXyVzxw_sG8-7q>nrr-&&?EelHM^J<0W@+bRpV7Afiz#35OEUftq8+L^h_iX@&O^( zWrTL*H45=wRFGVp#hP>3rAL@X!1li<{74a;pfob3RmiJX5^@B^auD%x!tXu0K+@j+jJO4eZ0+0*)2y zSVvqlr1bv8!XTWUHbAxHx!$D&ijBjiVmQ;=K1CD=D`7e{2(rs(X)Y2Ky2DKqY*aN# zFqCCFeF$FvJcoKCJhCQ<9Hkr)X4F`)do+oaqY7in;a6X@>>yf_vVMig6~J+h8Q-Hy zL;!GB_j=FF)msH2sFx&cqXMAzimOEQ6zfu{QeGqAeo?CgIOQBXB*gmV!P6x<2zsLS zB6mRM5 z9Ys`WEMU2$WA!C_ltBztH1B>$IiQ$_B-@Hw^PyW`71AIpg5Y!mAH^U-b5y;!q?Sda z+IiSHY2PK{NP_Cmh>>Y6|Qxuc*ZRP`<*+vudX*L=9uf6+_I3oiH{QCBe|$A&)$iZA6@Xc;m~% zA^qm^!aNV#s zlq_`m4!lWoLL@8Z1sOR_rVO<`qe#pQhKLNicPfxGO(HE!c9URu!*m-dR!a}wmg#U| zmwI9XVLZZ6X*wJS=Q!#+hjS=GlpS&v#+atdFcowX3;atWsUu8NDzRh?{tm*iDIqMuVuqcM0yj+%mI9xm`s#b^iOSh2%+)am}@I7kE_Iq9d5b8R&)XK+oQ z1gH_@{dJK+v6zjjSZOL2Pt)+=&k5^Rz>C=Tj_pEaZ>Y*3ns&JUFd632tw{o1)ejDo z--cMw0O=ALDx;94Js4LRrft#m=B_%?jlA4XW_2yn@I>`(Uq|rteI99ZaC>U z7Nybp6D^6|1>ruWtF)`DbGpf&+{8Sct_aaAp0)_MatPV&ED5^Y_oDc!oZ~9OHSnZd z^lOM78Cmh-u{9$gfO1g{wey{*0-e5!`FNZ(s|73;$pJ#)MLLB!7akMMG@L#>1VAGl zb|2^By3ybqaYCtG=rB{@uW3+wkuAayA!4~ZOHPEz7F7;r%rZzjR?CuNVdDvUL_&J1 zn|Sh7kD2G$*afdfKa5>sIubU6q7gMY`V^`3JEa!Ej98vJ4vuELZ*L%|}V>QZo&g`o@)XLPe&5gnNi)`undKxN>* zSslHTK(@Ks{mMdpKrr_y(PlCqB3c<)NL0OL7~jOS<5|bfC-@+n{)k9o&A@baE+(F% zr5!8Yvox#IOGr4=PA*!nEYTmvIG8dJqNKDu`_xb{B~UAG60tK2p6|U%t%+!G_ZE-p zvf8tUkCpT(ogT!ANF?1zb_kx~EqsXAEon8TcGq<$qb{1wOw>3{ol{dYDH;`YYA3pn zN8odkHK9pBv<&a;YH)%fahr%vvBR>ilJT6nM|s&o{LlnPJ+R^uP*7`!F7V(mhQb@} z!JpAWAb_sYKKA!x!+Ai-l$m5hdm-i&8%fiEsGEz*4I2q|w59|h7eR`1n)RR>W*5nY zz@@|23WZyZ#7iXtG)PmRDPQc!xts*R=WIO{IP-Ghdhl)>GA>-Kt&q zaMlTPNZ2GL511nF!Y^KSK9YtUpGb4sjof9{xa8KLxMfA`#P&t+Ckmfq?cL1~9Cw<@L~FuL|IH6C)je z3(HE%AWH9+gtZT${6BA52lR^|x1e0ayy8BVA z&_!Lmz7!}JRzSq_ksQJ6w}_iG%SjPVnL4I%iQ5L2E=WF$s--FDezw>H;6)MAUJqd+ zRlh#e7}NflzSIyNl(e5!Q2tVGn*p#rkR_y`_Gvn29r7O%iLoVdY_A&irKnk|e#sTw zrmp`kVqW((nte-9as6N_UzMQRHPoZM=#SgN;scL_;KDQPpsuKncefJ?rfQucMRh2c zcEhYrEM*1hqh_66K8x|UQ#9(B*2JeY9hV4xC8b16Lyr>w<=_=#7mXt2oy0mIGMF9V z4ZhUaLGi{L0rU(er)iP_)@hHeaM5|vRv~6Qs?`U75fIp0yhs9S!b}?)hhxv1=LMnj z-GX+giDbfN&k*Isj514#;vCaP4aOaKj?5mE`eT~lHjZDhVWi0JysV5i1qcOYe~Ti5*yw!Arh;YPIgl4OGT7=!WYrq8luWp?h3wD5yiDz zSTc}ai|Mq71k>j@Cc+>cIm2h929hSkN)DF^XXB!0Gt%Qj@cJck&`E<;9GA{6sh->>;+?cGN{rq(=ZH~}9i+{U7|1Zxwlxu~ z`6?yzgUgKqZnLu=r2*y1NY%-vvo?B=QA0aC4d!KvjT}ia)>MG=b+4xm9x9SP>9;b+ zG5(|E7guHH>_}g9hz(0Jo1|)8U%nBoxY>gANcBSGqZ7T(`<`GzKQqu*<V-=a`iPk|LALK0&RKYlKJz z+Eu72nr+xf(e_EbT;Bw@o%wkZi5dV_=(bLuW1;Se$?;HJCT0+dwtkXe$_y5FRkX+@ z?~26NEZDwx`|Mf|5#A@Ews4YJ1_i)ju}VAE3FB($k(+$cob`G>%W9>TC;vGkwzb?g zpo-j!;0`o}w|?N<<%*CC_sW`YI&Kxl90q#x=+%Q<=4bDEtHEBjkg!h2iDn-Ay>mTm z;dIhb8Pj}Yt_!4%dbVJzJZYu#Bv#lk`!pXH)g0bMQ9W2amBi=*yTSN|H#gsTc8ySv z0I0BC`05@%-YB)Z3ZEmvvi#*Tc1~2)Sg$(_M>hcQ19^{kU3NK>(sk`IBbi9R8TQSV zY$rT;c6l)>o|*wlKMZ(v8ASvOmX*XQSe-B>KmdgL>2xPA#-r|@>XtH&eXdU)GGQp^GiLrqpXs49wh@u9B5J-&t z4tlw6UPhPsyuJ?nw(PLs$quymC?Tku>7SRY{&7_s!Nn%K8RhtJRaP}z_y|&1QX!ea zvxy@4ux2EfM1q2!Y#8v`gvNq-LqHoJoMp|_Xq_toLY({lby*gzqJC|f3fSAtm{L*rK{?YEm4wqK*7*??mCAD7 zq++H>Pm;$g1;PAuKpWf1R$Hqn=ug>^`2dGp&}7oQA0oErn>!Z>856`?)NvU1Vd4jL zXI@Ma7m91k~t!Os-7BG)7e@6?^tF9+f02J0E6YP;rU06NbaLzSb%t zB9$ZF^G#nG3tfVGLggWvu9m}?aiz_n)IEnadol<5yei~Awaapx?HqgEhhYB+yni)C z(Q^M)NVrL??CL`bq`Zn7W-+@g&(?i_DOz@9fmpOmQI%yVeUCLdj7LKHc!=)&V3JK< z$@gNiw2S$Rl#Ya!@a3abK$RayZz#M0p{&yQ!0wlrRMx)fp8)M{qk|N7NkrgMf9P z^T5T;^E3ri_f>S7qDW#SyVA>gaF`l!B~fv`EMpsn#7BKg6vV5m97)M>p#@dSl1#Uc z-3zl6b2-F=RDx(oQocY;7fub>w=$kismpuf@^L-{a^Ghf5 zIo$=o9qHmmQ}6_yqlLk$4*1I%TMPpFDT+p*K#{WD{)K_+-;Gp98xW zureav;@EwKU$+RbW2Vv&mSBIie76Q-YMeERaS4n456qL{Pct}6PYy8-t`R&KSXaY# zlxMaHsqj@)l;tXD)plKRmEI_d`i6jrYES3e&~BfC(Y`dhy1OGdYD8M_tr@9Gq2_RE z3$GsMC^Q-Yl`*vHQH;c)K~s4uPBuXDRVE%r9cdr2gE=CF{NRU#KEYrc0mq-}Epb5Q z+*u+s74cD`eHDOsm?~@*g^PR-}C`42!7tyfI zyQ3M63a}{1wp_3gWSxY-`nOIa1`rdhE{WW0X1m)9D}YVJjr7f>y5X$-JQ+AVO@Yd8 z?QR3a_umF+u!YX<-s8tn1`5b-J0-M2rSPkIPKDrX&JT%vCJ3fGQwXIB2@S@67aKRF zmzR5|L(qMgeb_BHi_ea!H=A#Z+yoP5T8OsJ5*-9P4s8l@SAVIH2oU#riXwT3iOt_! zMt%GrVma*Ev84mLxl{$UOqCCfrqhmvHi`M>X`VI3M>dQ5Q3Z>MEB}sMXQb&Uq~8swvP-3QI(d%*<_^Nsa=$ zcfsoxU2i8XlVd0c-PP%t@R@3@l8ocuV)Y-1N>}y8s(nf>f1fAK#fmSnp^P!#1%gtK zFt-SsRB!kpqOH~)-V- z=TsHIA_wmFgR18%<@76~``g8&Bunt|i{;qA3y!Kv3Y`}5WH{LM6fwpT_g1E?Epx_d zH2AK~Y|;qz@uGNKgv>q!uYaA>lQV7z*@Z;IT5n%9E7@Cvu;|wheixiqHPjn55_TMb z)@?$!IEr9{x^(+qAA;C_-cLg5dlSlooKLuK64PCTBD;ga$j5b;jjKs33me*z9Kq|i zhysR7ki}EM_uEUIS7nBkP%|Tjha0;gi>S)m8)+uB_92jq_UojiXdsdGcICz1-h%QL zFQ17peUwpWBt9Wo=h%m@PXXVl2q-7x^!;sqJ^@~_CB;&cs!H*WA0ibs8vH6-y{Rz@ ze}0r$wyKXumP4M@Wr1baguNfX;^`uF%*P3>qI)2$ENXS9=9W^i@5ir@T#r*wshI^` zQq>D`6A!%I%Rh%KlqF)I{f~(u)v54Z5Z62;ye+kDuq=MQkM*E+V^iq&@7FJp3^ukk zu72xS9Bl|b5DTV>gWWz{Rf7g{Cyd{M*MFQtGZwdzqm5IB=>3oXSmhmp%QgS=2fqno z!2qmNM0CF#lV#7>B`S21e@t=80j#g6=Z8Ql|JO-g!ibr62Lq^_5a_oXKdetdea{&W zT}?z{Tem|iuHki9YKG}?7d_hVUlIkWeBULY%*T7`<>7Kv6S^BuHQmvyr(hUL^2>V^ zMt%rH1oU~*w0^}GV-{(OCO*tec$uU+UU%r^XRC38?s-d&;PqR?F=qA~k6GbU-EVY0 zvWK~;AjcoMnowA!QPa@WrpnQekztNA*{-3-v^{*f?R`}^e`Lrr~9-yZ!eq$LK9|CIs-zPa}1;T6Q zd8T9RKk6gs2&P*`oZn1t1?PeD4#7Eo{gNnV(DdHI%e}u*d{0n~WwqU2CjMFX{1%-S z5)D(!&ux0%1!61ubyAYade8QKW>~Scj$FswkGZ@0O@rOW5ybK9mxRaa06*g%Z?6sWOY7g;8Qe>x}gL$dEhRnzTVPD_LUaiRFT zs8@jk%ZoKSVhxuMyj-G^=EXccBdVL)P7{;|V*|J?`Rv1L9$OpGn&tW>!Bw9k zcShB*s3^s>EfVnfb%`nQHpECyy2|F8Fq1(32dSaM)wYA`Tx>?m6=k zFeAOnbzgouqP?ve8@-nC7R~jLNbYcxBmcKa-rNily?4y~$jD(YX3B|@gkDbHdUgeN z>E-rJuY?WwlABG{FqD#FYD)C@!At^CYv+TDM6YQ12u}rGAl9NaRV}=v`sKN8V=I=m zAFw?NV~UlMXqA5G8C6aNz)uf4#wmcAsTbAgfj~Ozd36&ffzFbi7d!+BRf0I)C9yd? zMY@Z6dAQ&GG>C58sknK1dANhT*mu~VV$_GJf^8}mltF%AR1qm5r;#<3l%HF3qnCg) zLgY}9PCdkh)qQQKRNsz0AwEyx65*GvW{zaG47%K1kmD1apF+Iu^;o#rM4Nto5JyhK z>4EGT-dLHPtachC;-qgV}7dw@S-gGJvE9WuLCZxTrN zvWJK*Hkg6yg7Ao+X&QJJ5=T0c(Lp+C7|>o#C^HNYu06Q@2`czezSsFRY=o6FiezlK zDze_}z{8;8di?on;&Cq8OA>C~p7Xwn$q{r@VRnYChPUx{`8hD^TN$Vcx^Fd@07jR+ zwv3{%!>?nf*1`zX8O!Z35$RE|Jz5IwlgV<9wwWnXnUe9?3lL80S_AD&Ru{uHxB4cU zn@fpBPansxf1S}?BaY>lBH-pF9TdAWyFHU1Gu-B~Rj;fc179uT*tF}4QD72;u*CTo zsFow;pn)WZ(~g;{IOwKUR}3b*W0N{{4mZ-M>r^2O=WNb+i}D!X*%^`=XiR_mNb}vt`OjiCT;?n4h6dvAsmA4bN=v$1|qYLmV{R z6tC0cHtD&DV)x)TaBbdon@H~W#2&h(zH1}xz$Pe`nViujezE@CETYgo)s3Kbkg}f-Bm-QyCc~=RQ1DV7#72two#_Pu%TF@8DzuGdbSS+ z6F}ihTu1WykCRv^kK|$)I}F41a*{XbbKKn(RiN=m!k+aT$K#NH9Z@r! z7@6F*@A1k`-bb9^nImo~)Qf*!i>BzKxEJ46Yr8MSyh+W0+6Ni~LnT?VTnuF^Hmi2N z6U(-}Jm0co8#S=GBa&7@JvZE#r#35-kxrUatGBzKS1mUZq(?5bScUiPExH^WfpGhU zcL@Xlzb>iszOHY{xEOmgwFHyeY8UEEPf?@*2CXAr7#pbG(U>z9gpXlj%&8ux>qFql zNll)N@fY z?aI09hd}wEkloNN#9T1*&nsYmVk_%-$+pf=waAe6q;L#UCZggl=1Ou89j5!(I5!_S zQ#VMmDAM|EdS>Qa%CZU8MZ?J6OnLqmIBV*1Y+?RjC~%6R@LMF+CNe?Rw8S+kI$th| z??(OAP+aDh#&l~X=4f_zqgbu5f98HT-#?=hm4Km3P=96%lH+I}g4b^m z1zQVRnPHru7D@8}Vqje)c~_eHP&CDvYt;}$sa!tc4mPsQs@W1DUfbs*R42*Bd2l+Q zVu%^vDgo&0$&@NH2=~z<8JlrV!cfCV)VlR$JY*!KIl~4=0H( zz&Y6Dn*EzCkGUODcPPQ8R}kAriZ3UQfpQ{rvA^N2*Fjuw3g+05gLtHl41 z9N{FBM=*`HWe%l%x|6hZy2lCg0CSF+A+&|Q1#$fPCAp_ZF~1ZGL1y{*WnBqFu%75D z)vSnT#7Wt0kU)2AvzZo1!%d=Ib>{^S1*5#xeVvO4Nu2FfKf&fHR1M4rkA^bF)%A}g z+cdp%RdnM%$>o>9>v7*#h{u3GPPXy%;A`w;VC{Md4S%l&KJv-Nywl??NQu*dNs>OA+60`0;z(7%2^e*No=VGj+> z%C__LBHmhr4!`s*8Px|HL~}l!+hrb6WMs}K)S}0XPy=#OW{IhJ%X-W~hz^5+^in%Q z_|ScVz5n0(%mh zVzo#c0Wi20%9TI2IJhF^syR{uyO$Y(2Gv6;j~y@PLrK6!3}(d3?d+6dyHl7cHq*4v zh6V#*=-XzWqPAe$>=^HY>s(YsfCr$$_iqse;*&F?l@B*nT$=OTh`E+~FkC%My1V{c z@cJdXo)2%1trBb?LA|S#gli1;`1S8Iw6k{^t&{{Z z?Ub(Gb4ra`$gW<@@S0C$ZNAHjHRCnOv~MFN_nel`!`DCmzV!@PG%6kzJhva)G1fVm zOx!yqW{R7W6cyxw^CP)BsuKmx+2Voawwh;jI0;_PeNs_9OwigjS#XD3IIH%kDS@AC$E&n6t;j>~GUNSVX&l zl^=rFFOfYW`bargvYTxp^53lRCYp6(I4;`g-JhBQ=5%bi_#%>U9AxUF4l;*{&Grt+i9Jws`WFK zj!mrTrYS4KqR;CLs zI1q?D&3u5L%t`=#?-Co%&suGlAf&|bRim3{{Zb^Ukqy-*dHnOyO_p-k!w%6q)#ieS zlYp#dBpBwWCH2la`8h@rs}U-X<5PdCxZWdvY4AaIwXW`~PvCU)cDHZA9~`O|<7u=- znNq=KKm1ZAp=vFYR@O-Yrrk?yU_e+@wdq#-jSs==m&i2{H2t9Voy}+19SsxOfiw#J z8^I0GN9FnW+N`8@ujyzsG2O?wp5poK7*0`Napr}}jtFL0Ntr7XO^ULUcnTp^Ti21$ zsWrGFMs(1Q&?s^VEywr1eo0RL@F7x8VhTAR(vHYu#6^*E+MY_?`6MdPGiOQ2SB}6* zvz6Y?X?AI9z_X&P4zLCL+p`_^7JpA0qP0cwq!aB7B7C4Tnn!&q<|x7!rizSxsizQk zpAV(DJc~MuJBM@eBE!g=Z$rn? zjuIn&wCb$KwAt)HzP}M2#`6QGkpKr4BEj_r9YM=1<4c5?*#V&0{%G9f>bU!Ws)vl> zJj@H1KL%oKALZxc5ZuVg&GHx?W`5_2>{gCjnrK{vXA>faleQX;$2%h@fRq5SH(R=j2~C|QzpOi@!gb~67iwu2zb-)&Vf()5WN0* z&T?Z8`e4^nG7tUD5p@>=|Ngn}0(15>BBpCnKU%&g!Np{|DlSrGm=B$Y=9{3OZmtqt zq>+-z+H70w>bi;#!Rx=yspO?#5>)BJCeoAvws2JbRJ5@zGPN4D6-FaP259J|vV7*I-nJZ! zeiFb_L*~p!7c`PLo|?(TeXn&7DxsBC1a`#}mFfJ|%?)t`^;9#2Xa-MOBYlu)nq<8< zGbcUhxRFcT;(HQ`5Y;bYINAX?FwJwc)C@_DD_oldJFPe=C$75Nk!V)+Fxh`xfXf&K zA`n&-2*uc}adYQY^MwS_^P9*}kq=ouBz(*K@c2^jT|tL7Pp(e%E^6qBk6Xq2BdR3` zbVXQRPf3XxL86@l|W``fH(I|8<$qwI{J+ef-42_<2d)W{q_j|bB zWNHK01=`}8^hE*)rn7CMFM%PKVi3hmxMUy^bFmsJgy1ESdVZaAoD9M8+HV3>DcKP` zvguGy+yD3-2vQr!5%ez1`3PQmc3kCiih+j94zUETrj2U?g{$yT z+yoz&CQdxaf|o?>UnG%#9=AMvxS+u18hd_R;cm!m5O1&y!lj~e_V@}%5Z~z`aLa?~f{^pI<4KPhk)3Y1&v61@6U(EQOH95iu9{j0 z%KGQ!%Ey?%CYisdcy`OYb4F0xw&)U=&42q?OGt2*@c=(Sz`s~;!MA^wEuaWq*j%H2 zR9nw;hRZ)=@gD&-gsusZw8(Yta`a3*=`mgLYh3t!&Y{C|R2uTJOk_Xw9$xCH8nX#P zLw7!o-B0Hh9ZY+6Q1qzj?A}5a@G8SI?{kV#(Amgt39ch~=|%#k27rT2m4!JKQ)8~@ zs|0*rAL>$2qlzx^D9is8-FrZb;ywr}kkI+$jnIhPN*9m&mPo%~8>&)o;6U|l zt~9q$ITNaNBfHL=V?D=so0qLQ?sCqlu6K?-@(3P#4Zvbj(6ImPDw*&`vy{cV$M?s#->l1(kDkG5-S zmHpI+fUvK(bE$yqRtt8rG zmqgGt%(}haF4Fkb$|*|{H|;RxbGJp}rey2o>qj3+&&1O{Tx=afh; zn~zPhnZEqFNkW$TW0$PrBRNyJx>3MA$*Z_$&I!$kwzEkh{yxXsVgiS|_f0K0Tvd+U z`ehX4e%~ZfA#7{WC%IGZS^h_G?~+Hf1CtxKIjSa}^_a2vJ^6V`leK%4T5UE|9-6PV zb7Lt-+{M$X&-dflCM~*dHSA>7t*DVY$+vs+lBo3eQ=+`dJ=fnQaS;{P*(GZ=3qkCX z)zFXFC9mhFy0^r3R{;Kp=-vgiOIpdQ-0$8d+c2!64x@P!r z_;zrTcxq3dDKnA zT(kQ(Jx@~pH|S9D)}_9G-t5Lc0Tx0=-j5nu+96n{X!3}HIjb7Rf@FdACXe5~VXpv{ zr2IIitVkW&AocP6oRGL8wk%~+)Fp;DK0 z$h)4h&?M(Jp=-{g?g@*ZQ`-AEnM^B3ua)3YxOE@iDi+Z4NT}0NXwZj%)d{bsEOar- zT|7sntxF(V)~RDG#c%?OE=lMV5TF0+I08sb(@&sBl*~lW8aZOs9TV$K*B+k=MOax; zPAkm+l*BHeLM>UxkRZ@p=4mKcrzsfpuy2V(gAvV0(DJN#HG1osp2+9D-X*$b_2+K) zwj(O-R8YVG48&^upns7^8${b7q|QdQiB=#ufcVS7xchV8r7Y?Tk|q+QWm8+!!|My( zdRf&0&gCC-belGb0?bCVZ6|thGyc5AJ9zOJwXo>f-t`FONzmD3054ez+i>TvJq^c7 z>ive45s{wgbc#y!z1_5oBJ6oNWm9~L#3U!z&GQ=g5o`ms;~EmyCO5m~gNUm{(`qKc z+3*~tPqfS z<41(N!MZHtRaq1e5GZ@O2v3YNUJ}7uy)Rno3C3sBmxP2Bo9r zKNAA%>?AD38~qHPk9iX%^6oR#1AVa#kKYiR19JRCTNQ96!{kAFh9Ffpks}oo>z5j_ zG%G+xl(3X(X~s~1Owv*v|MOTh1GhvxL_7v?1jkFAtPy$a{NdeCVf+D-M#SyU?*a^Y zb)j~FBEg%T70DA2VL*$W&HKuK_e*Qy}t*NC|s0mg# zCI~AOvHcZYma(dTEHNmwW&K2wHb^*cq2MqGL|IS|00G5sNN_F%2(Ch)?)EcoSy<4E zWm7nn#PL*6KGLHMYt__~D_MHrF5z z5p+VMZyGrKNUZw=Cm!pXI5jHNAQK*sV-=k0k|eEnP63Pz3$QQ~^pwnXUq#WNlG9J? zTE{RbG>?nV$b^4s0w9o@L=ex<4U$I)nlKuh$r?OL)~k09DTLBOR}wmtRJ)<=0B$%n z`iLC@%N-(b2yDp$Wsfc6p@LDDM}!GwK;e16;-dj0MkBu1mMRZxOjay3Hdg27!H&wo zA6l1hAM|H`{eOU;1JM4Ji|TH$!73}0**bgZ7}h!jD)a(q_bbSc!^SMA&VJW2l5YiD)Dfc+g`qV>G0|-x;!O-{3+r+#S8)nhG*;= zn?JT9il*&@qWjKWj^Lt1(1yoJa}5y~mDDl}JN-j{hM1+*nYwZ)-FcEmtk1!hjH zl;RkuXABN)~1h154dD4s6KkURyS=fI+X~Ym#9Ed|P$efbB1OIRZ|KoT*4D zqistOz>6W00LuZ+o|c0cLLexs`9^XEa#f!T-l#EEn2B1`F~JdZ)`|rB;?ogBiqiJ{ z68Cx*_ZkG1(ElSC##_FL2KR%k4m~v8Zb1Z~O8xu@P0M^QNxypw#3{@z6E0PN2r1`F~_#B)oRQV84 z@~O+g#J0ynnGe}!w=xGC3#W#aImQe_OAu^Z(jPpU97Huxr$>_m6_&@F zCU0tbc58Bk!g1$YlQ&ToKUH~CkEu>cB^t$dk*!@eyDO3sP+0#H7`j;@52miF?^~qIw}UBLb)_7S>|^Tk)=gou zO{Qvr;}f8ec$}kFMj7DU(j38{6+T7!7SWWZpR-gey!^qI15Hbuo+02xLL^$ma7khI z0=F6TevY6Mfc<)k#K=PdK)jeNAb9=}AVZ5>ZOfi5jLd+(1T$<5k1}_DGt4Rg()3LQ z^^pHbA`^yG9h{;4*}@fWdQIe{YKz!QTH40&lX(}O!qmTAU(VAK{pUD-+Sj^&-l__7 z6_rc>2;@dWz_{Th8EOxYUdd>@BZjmZ;tb5+BBS9f3@)9TgM*ARx_6|-b3n6m(YNptlN4+1Cda=ck4!NzTD6q$ zpsFAP5ZJ!C?`%`baCTBl0al(ob_7tkK|u(#EQMTuoHUr~=U@R551&}liS zfdFCsu|3G$=HTO&3oU}84|SyAJo0H+PhHKFq1TII5)`p$rzn<=hw&wNQIml4{*tUp zBz6L9q$?jiMgh=Ocn7t!rzm;BBS}a>>DE!$8Y#&%Nn4C5MLnzw?K?#^z?_oYK819< zIK3(@FDy4ron?y%1o~@?2BSI`g9X&H1oU5$$-O9% zN19jxd=+soYdJ8B&phcINAQv;EaG#HRf*zFIF6T8(;UhecL#R`lPR2?ox3?h{46AE zwtny52mU9Tm>fQC&QdqB&atyuwZvXp#XC-wM4Rg8KVid6MSe=LF+LowqKNghVeKM& zw(P`~_v5g{C9+G+O7vofqD;r{N;v_W>gQB#I7NX?95X3^W0L-{ts8&;a{WF(G;KxMypwxm~W2w7EF#gv{-0EqsC~&a(?IlDu!Ih%!#Z>+caGu zfGGzbe$%R^s7a)NJ;p+*tVCl5Lvbm!rEr|zo2eNbR)j|Csk7s7?FY*kD*1Grt<`to6XrLDo`wk?)2Dl+!~umokv6gegFHaTQHmil1Miy zq#=S|uAj$Pes(4nFR2C|C5Pfe*n*)j92}8gULk38_3$IvZ5-_LND534mL3D1Rk}CKqVWYL*A_@>~ z!5&UCA*loSavM5HYRXFgAzqS`oU|2FIjzXpsMj7P*x?|7-p`JFuV!2e1(_+E;f)=V z!c#hK{f*945#mV!CONa`qT0l&glx!;X^QE zz%1!xJ>^YdR4@0dQ@Wb@zgU*Zjn0;uh4^=I0xLuRe(XyaUPz)A`hJSgnTysjR0pc>EoR4m=xfmSswy(?pvbL&q+K+Ncd9fjlU*2HFq3zSdK_eiKCPb0aVS> z+0>iJ4v+B86a9YVlf_&kdNHI>X(It^sr<5thvd&Iz3%rfC+`i~S6+gy20r$yrCY*a zRnlrwH0160iYQoj7IiuXhK5|L3$M{c;l6@*Ljf?Vv`Si>hTg5z5{_>Sz1MKNI!a&; zppcRgE4C8ZF*rQN1EvV)8vZfJ@o?x0Rx{rX4Uy`65!9F0O#5~#dhx|Bp+yPc9 zB&|3~0vOL;3di!8hbN+B8)Q4iAP6l1Wi^5lKZCxH;|NjvSug0-w|og=3|l=3e4K$n z*(JvnP!qeUm6;y8gkPh9vIM!sB`e+on4Rra$GFWVUX6Jed}gfBJpvJi4=q4j5sN|- z&>&zC)95uJQ{rpI+q~QhKOK| zxdnS=n#33Vlos`6M8l>i&0wi2&@!zchrlv;cbcZr140q1EQx|knOI(^fq24=a+MaP+nJdL;n1qsUu1RfW@>7C6!Nt4-MimG#NE)X!YsX;jO>NkF#-wJzp8y(Nz^GE{Zd^~% zv@(-n`XeCvKb$GOY?q0a$9X%3J&y-QUO63ef!@dD3V6MVm~O#wczT>3V_B)szyonH zG+iVA2Lw@M+PXoHnUkISOghSgZLTbO+haV9-ZmYhXfyIOb3N@>h<3h3KY}j39cZD^ zyz5Md+;ksOCnhHkbL5xdYLW4Gh#!rEzWnhMW0Nod`Ci=}0TDQ*s^~SQTrT=_kjPJw zss@Qyraviv6fC}UQo_=Bll&ZlD|}JQDg=&_L;K7T@&wI>;h~DaqLpR0GtP(z0Z0}eR~ec*ITIhZQ4~Dr&eA-4ag&133=v&*H#Rj8xTtH} zM&MdwHnm|DDAywq&|dAVNRSwjJ3Qx`-34{~DcQsv6jTd{%St^0YluhT17C3eq>or* zi6LjqH1{SDbvk)dFB1g*)LQA_0YP6)aZtg@}eeLc&qZ^AxAm;Mq znu;QY-XwaV$w7>VFU+ODLY?OO?)6iG^ox+Il6;K=dDhnB*ANXEG)Br@K>Pn=?% z7YUkIqd1$fhSZ+tK53NmS-le9SF4sVaPzgqbl?&;_ujquQ7T&f5+qI+_3;h;#(m~_ zT4uTkA?TtNE4vU`EMN*?IwpNNmIN^*l9>*~anV-oCrv?HL>chH_ zw~VMTr$e>FEX_-zE?73*RUT&rVQ3uO$FZ0~(rGOel{Egu@&Lza}pr z4-gLdrmoS`F)bKa;g_$dfmoxa8{Xs zhF~b;I~_uRjJpG78m)=yEQhl@g*neaF6okVfP?NpupE6Z(-?h(TW5ZzN*GKp+38$1 zGO&kL!Vm_%n=wf(a`Acj;RcRmpaQ#dBV6d9+OJALtIY04)C|)|YD`TD^GKLK^a*q1 zx=-Z_MP1lma;sB9tlTnKAXm}ZF;7Y6`>f{W{I>oI=%z81px~~PRX)WzgAmF&foYB_ zu3>GnU2-NO7{VIfHIxRxS@ycxaylh565~yD)lk3bWOEix_KGKXxKo zmZnyo22BCmsBbXOoK;s>+<7^1=!`^C4T=+qN-dGQH=iZ=l1Kx( zy;#7*VSIu1$fhRag#C!V*#_=5HYhA!X#}kd*6%9`Uu#@KE3_t}F)0{GaAmhV&_GOK z7t2O-jIPeO0ZE}Z2 zr7lAiU8LYQwgt^UIqB~`qk93haO=8y*IF~uN`GHYs$^>07$Yf6uCc{5M%|8DVvG^r zh9E{~8;>J+)}{A?>CUT)M|tVSGDskR)7;Xjj%#Y}PJd1g7$T;Esj!VGFKSXzCH&0h zGg--cb57d7yUA0Nt4$eD!Fd#Fe- z`Iqrfk?4fm_pKt)v8I2hNVFzBh==gk+5-Y{1V=?a1X7W39c3DZii8Jh12a@4=zQ0D zsK}w9@2w&snDbpl4k6f%h9nQ~e5goVw8xu{9O5?$9Vz#cFL`t%`>(Dy9f_B4)sj>J z{nYhPk`i2@CF80%se7;j)*~f}@h$yLNe+dkulpqMVFx;hN^+;Epuz3Ca=h0sIVy1==+AD@s~& zY(=RaT5`Bs;8Bx9+ttyMgZ16-T5_lm_tugat`1 zfIS4P8Nc3TDx_zDtE0Zlf(Qes(RWE(2uZ{jbktb+m(+!elIlFPp_mjo=LaB-1cN*a z#6s~dKid__ul4aD!l;9}x3in!r1D^?f5S0pqJbLfen_YLw?qQ|bKFFpVO-6RK*PM6 zy6u$&;0NFKc z%W-@hH;|1jG2&1F7kU@dd{d&NLg(Or`=sh%`}A!b=-liJkkCTJ-%?aH5;-WSUpp0x zJLC_~GpPH0Bj0D~_j%E>070; zzT+IuQsyY}vG*3ZiBbBr)Y#+3i(v{ONfT@lm}2G((Dc!l*0JZk0)FQdq*;*&-30jP z7y-Z>h`+?j*yHU_8L!UDQy{!|dO7k2Dj4 zJjuxnKl}bTA{OVPYJ7NbYW_$R;0-LsFNJ2vxeJkz0aKU|B0*e4J|ls%RH8t62uQzi zJ!MGqb_=R<9IAsWE(HdjP0=PjN)tlmui52Um?0!@K!3bCkH8lRhWI##fdK^A+0MEM zt;3~Vi;=fU2xFvN*zzr_$p9BOOC>=YJkK$%5l!$Bp)lE)UZh1?NgBuXAlZ*7v#OBA z!p%ekDtI13H*W3cFZ~vHOTa}eLx*9FZKVnc8-_x}D$%MY_!+ANfj|SOv7wS6qQ|j# zHV(*{dRcv(c}p^?EY}he9!`jAfO(2`JFIgelrmL1Q-UmT&ZP6Z*-==GE5T5ewAnq{ z9}^e|(JBfp{kapzs8Us)&iuTf`#Po$caHI#vf~@7Qg6vg!68!xTUa0eq)mbmvhk_O zFH>ez@T>&x{ChygvKno!VUi$(E*sIQS^XM;j-FQt{Pli5^f?355eSL-nD_csQ3Q+6 z3wVgz_-WoRe!Uv=Ie)PV%0smoF5lfeDQM+bg&*O^%T46Uqo1f}Px@SyLC-K#y zazWhf>(nc%MJrLGLNFHjuQ2ek4=dNn7)F2=djAA9E#DKfXWP%`CHsvoh9Uzbq#DtR z$u>~YCNhm~obCmzDhqG3Of$0nDJGj=Kjv{*p=@}RHI^v5rV$7jWF58Gq_1K@w@pxO$(B*g=?A-h(*WEe^=51l6*@_VNb&LfG9$ewFep% zQ2^>Qf|Ax%nb|(hpfglTct=Dny43k8!tqr6oEXJv!PE&(%2G6J3k~k2XeZgf1W{aH zalBVp=(ph9v$O+0#PMD}^v{xay@lT3+alN=0L72vmn2wr1Sk$269N_hMGm2`HY=C7 z1g`!zB%Yt4Xv!{sNkrLkMK$dZ8bPith~n}wOi5EI@wl!BMDZcfW<61f(#51T{VKr1 z6QbDScOglz-Axa@ZN@kdMSN%Y4uUB9XJw{oL3*QaiVJt_#u)Be1X1kgbEGPW;?^*pg-3Otm(|pqLg+EBRHnM>1UM0Yg(#JPxFra!CU_{{H}3<_@Q)3wop|0xB~bN16Q2U^ zB-gu4YZJo|aE#%R9DzL>XXOO5BNx|1d#*#{Xk8`1_5mjr_m7R;cSd!=Mrh47scd{P|Bc076tWPnxUlrPGd zOGvJ?f`Cy(GWA)I?XU%>CcGoV+~rTwIdWNrcuV$lVZ#Vu6`PVdZid(%X4Eb>T8*up z*@H?2HkEn{f)Qvu?N*49HEHoU1!KCFD}>OUO-uBU=zy(HM31U9f!AIbDbt?6739X+ zFg?{)5$EzKuq#}NSlW=FsHiQ9m+@0qxz9l9N_II}`#jd~f?83j;5h}GcL2d~+=V5! zxof@%{BYJEFCuua;GblNHkxt4FtY?bKsb&Hbg4bA2FJ&f4iVz?moI7ZKDEjhixFuI z$aY-&aI+eWO;K@#Vfdm_JtG+LRP#6+A}YY++f3KKscU<)?G^lNh%O#u#TL%Wr>2Ls zun-8T+pN`(payW~DVmvuHVjl!Ks-f3y#rsf9={xH0>0>+GmEOzh+nfnL6PvCS2_r2 zq-(z4MGUmw4_mI(MybTu*O9!wekqIZfH(72Th-)$on}H2FFZ^F-iARx+wM9OWjJ2; z2QKFAIwd_DCdy~|6rxWVg4r`rEPaX-W=Hi)Uuw@y`cZ-kqnvN6?e|L}#(S{jhyv?V zDB@iOQUOF7s(yng$*G{Onp#qTkR0Tkl#MSz)gM$n0JV|nGb!#)x{;oZ_ePkT{1x$* znDv41PeLi6FE{Iee#VNE5;V3%Obvnse_nIVh+RO&(A;ux7Xs$D)-*xw5WW(E0Qe3P z0bF0AyB$7h>QStS9!1CzRz{S_DstIig>C_*^B!Uuty4y7LU@DP?vE|n;3QB zf{`skU>VWYs)|j>sE)xO+M7~f^mEMLLIJ&reb-?O8QJ7)+|HA+arLD^vkTa=`!yy8j+yH zojD#w<}VYv1V>>WRzI90zoWA?e>3Sbv`z7N`dG}XLp4$mm}Flv|GqwbRri~V>*Ql7 zJU&HvVDbcaEp$7%TV2z6Yo<}jN*sCguFp&)`sKVdlq&Y$=I7H0+BH(TNyry=39T_c zWJ&|6b@n+zn%`eF(JX2We3c=E_bppY0q>RrK+}u zg*0k+vLZ%`g!r2Ic@6^8B&=Ve<8{uQ+$E-dp3U7v&adh2*6KJMpqZQ$S#S5!@yS$_Aj=s!doSm!m)uSZW9#jRc*8Y zQ|8w5BWO%UVLhn!ueu+3J*ARMb~8U{Hq#WsH0qq;Qoeg3URGU`eGjlAusQzK%d<~m zZBfnW(pES2;0Qj?pp7!8Ke9L*DCq7+GW|WH)k|vU^FP8vDq2psMx6;UQ z5gTKnPX=KJ^R!@5k>gZ#2}zBHRo9e3%hnLwnIT}?4%gzm4?_UF7DL=+5*7V7R{5qx z1n`*3fLXB4Z+e;QIMB?Kj3O6hDV7?XREFL{H?U0$F(79ZaZ-*J7-(Ge^T&%mI4jn$ zhVd(4W{{p9OAq=Dia4*h52z8#$Wfmt);gY3qY_oeE|I~f#EgcWR7-sCErC{y9C14F z`Fxh4x2&|=^y%uC{CZCaHjKjwy`Cpw(jbJ8y?&D~GN5X@+ZA4V^m7#^2RI#L+91Cu z>PX*)&E$tefuW$W6h{|55f?DNC4gSBfT>_cKLtjMeaaxw@55GrunNN|Dr^)#Iv|(=Be|+*^JEmA73=l$L5MkO#*6OoTE})6XOq6Ps*~hUo&!GFE@+4z>+F6 zW2pKM0%y!1LU;rs0YL|P7_xJyGCGu~NAq1bgi>KFd5Z`wQ_s}x1^q6#i-r9xJ1>hL z^1S8{0WO)DO_nrT`EycCvWcAv!Nuu<$eGGnTJpXLzo;->U zqSuCF;T4Sh}OGbB3c+CIjTsfkxYrTtVI%ah1`EU z@29)74)OHdr{Ej2i0yqfhY7?%tb7<$!(WXe`;;y#3&KFPHiQ&)o86HPXWFQ)haSnr z)3~VUY2x`BV%6gucDoqvHQtSN(TFFlX+Saii;V{+RmI16bA?Kvx;0^CUwph!_+iHG zFBQ?z5o==d1b)k8pM)$Ss2QBCXsW|&qfmG$W=m$!Zk`VU^>A_yIub+}7m4qzed#*l zS|NS6VPAy5*~&zWk6gGbj5b1zR=EvPBB?Ac%vLt&CW36 z_e{5%Av$E$Qy;%w+)fjuNI=Jb#gu1*n!#zJ#)!Hx04#x&fPkqIKr30#y{F)21Xj9A z76A)J;#xe)H9SFXMe1SBlYRnx2%w-s0l7-iIg=6lqJ*&mq!}1o9D)UKNJ+fl#qcc= z%WZLIS}>a^Xg+)A`Rwq+cgXQ@qUct{OwEmq`J!$(RnhG8Jum&hssYp%80@_mi{Nr* zkRAh34vjVQSjcnG!&+Ny1v4`SoN-gJSk!F0RvOs@y_70Ei1FmH$cBbeNO;F#S_oEn z>&Ivypbm;AfHqD1rRvv(FNa4iJqU#r-x86|fZAnAz~UEtmgFD9>L!1MSXB=#^>ZWH zVQzSYZ(=t!qTnSqgiThAUEHh7P-P0%vCKQEG!XO4cE8C2g_BZv)+o-{`OL2s0ov>` zQsjWPBAca%kjYhIhzbT3xM}MEs#7PmegfK7Dcx_sWmii_O98w36v=A*nl(dRybsUo z_aJ`ztCD$jMTPv5pGp#Q5>#LwB*oIh@WBnJ>~}nD3c0gW7}l6+O+yj2#7k8KoUvT8 zOU^7uuzC6@=&Q)!i)d@v+Wr~d z&+T)qYbibT!CC#Ag&jx&O!Lu`N||Xm>jPGC?0eH^e$(-6k_>J4xY;@EC2mF zxJCsU`^Y~@LGY5eZ$@uo&UvMU+(02>( zG84XpVG1rS4GuQk6TIZSC=vIVsxhP*jir8Thu6oP!*F?RW!?BJb;2FkldVXQ6}}D! zY^gKMZfZ9GeXYQHb2IVZubQjn}`BDMYx0|^5 zdpEbVrT*uJup_{Sb)sxevw>vxPzWL*w6l|ZEt<;}Z8h5%Mvn7VX7CV1u&rTvKZ(sw zb~9VjcKUbUJg=-0(YH-GyXgZ`pe%m^5SiHFFIk14`608n*FCS(nm1=A<_H zbXKJz@71ioMYgr0-^4ahX^-RV(^ya<%q?fL6SSw*Xv`yIX~V4A)<47SBTN&Q$gz1r z7d`6mWp1a`hKeu0ee+b#X%xhpDpeBZzxOV24tD-h(GLvyY=Nv*iZIJ7BnSM z{W;83pUR5`?Z{9tbvpH|Qg7D__E4ncIZOf2>w*-e)=6 z(9-4PJJ?8z#+Tlxv5;&xV~wT>jUW1Yn&&@Y*0R@xJdw=_)O6B!nkiCp<$M@%Mus71 z-fz|y8;KGOIKzC#Tg9A;H*?=dnXln1-Ag=~1<1fsHtykHRuu_aXy^^BX~>vy~jl-ChiNz`xk8)2php z=##Zt{MCpHgU__25rmb`-y8vOe(Q%C=q?ILO>48O=%9$9lpvj{< z_~hV={h#P%-cMYHB9ek0mFoSl;a*1}#IUngvZ4-@{QK!ccEa?qAp^9kzp zp37fCbpMGe5FZAS0$E$6pVTSKVP(b>#^H8>k-K#tAqt?uY4gpyAN2&aB#L1a#P zQasS<2%}H0B&UZ}*|gtj>jz@0NfWvjEriHps!?OJ3{-vYT)CZ_Ct5xT`Ain+ONyWMD^T4$TVUDa1eUuLB)8~fz?o>D z54nJ&0t}AM~WNbLL3D%yfb(wlmCz+omR%6b7;cyk= zC!C9;ZpcPI>CfbH@ucMR{53+PL$G zcFT5|1MDTiliw+a9``qJoY3sgl(-_7$v$I>J<*oW9ToaJZLMW;Uku7%QE{f46V za(&%j;$AP$50UikIMhkNP(EkrxK|k_5!t5`#^$*Fy8ywdFTCDMW}-=aZ6N>DFDdWfVo6q^KxiHbKz0JbEd zdck{XKi0!!EdjkVnze>ayS?<=vXB#bE6=Dx?d5b9%{)9PJVgTub7WtXOXEn17Xn(Z zdztQff)bkJ(a3X0FWefz>EVs%@uiCZCh?^s^Q5-ObS5JMxa*l%ikqG&`Nyvrrd z!7AagAoVZ{b`8_vP;rfMuQVKM0d({7!h^RqJh*6W>Ur9v1pd(dKaEf$M3-xh`~!|d zv|Fe1nATzmKs#_^dB%o!#YJ3Ok3pV7IDm__`z5{YIt4wOkYq)Whbs&s<$qZXqPL>| z9KbQDy?h9T*c^mLthwWGtWp!=Y3Ok7EE_Z?IMyPq*w``l^r~x^nY(JL$q3)Ve zr$4Xc<`hFT4o+%}Eofo6!PQ{%Qk}hnUL^BUvrRj*(}2Kp1)_-X#AQf_} z+YnjL-*;>QLV3h*;3Qo@cS;mukpE7s8uxGR4n&7K8*1D}Q{YKccN;zEvki`vk-r`W zI7MpDBnOIn;nKV25rVF_*wF-C9VKOGaEmUE59Xk-5$`vrj(c#GY+Adhkt^AF+&ta5 z>*wrd*CR~NyzRp{Sc1!CBo-x$Xh2GrML9pM{x0XpP1Le|$>iiDHC>aftbS+c7Ko_= zE`dHy7J~i~HceJ&rmdNgf_4IC5J{YF4xnU6*WI2f8L*d(%XyEPp2+L`ddop1LL7>U z@AQjV9z!oRQXurdP6tfBc_*1w@WCv(5i~hXCB!q3;#k|P6~(g1RTR;tQVWTRNljl&u$+O^cG?bdQ8D}3@Y(b6xx70lBPEru`!Pe3;88P&f0y;*g( z{Ng6-lrAfjX&u7z;Ww{lN%+V+y}mxPQ!S+ni5M?NtSR-*lI{-4spSK+R=O?tD;l3}QhQ2$-YNda)u!G}ciYFey!=!}JEx zGGv*N10L@G3ax2YW|kh#v_DRMT|>xiQlpuVMz z`Z)H43wDQ;!U|KXj4%h{(XtwSjXZ18{yT`D)z;>2HTM+gi#roWXR!zl3M1Wpa3i*oHO$4fc;lY#sEFWYT|q^s&*(33 z;zW;mq$8I;u_FE3koC0G;>fWd`la~9N@6C3*F66Or0I@0_k%=KsQGr4ip&^DsN|4D zu3r%uwfCR^cr}WB+pLYQNXU{-b=slL`qJ2hQ7s(j`7Ax41MlC-C|3|tQ_pQW?TpY1 zZbO~GpW0l3A4LamQT^c5evdK3&_YWHf&zwdt{}E9ysuVpQ#(>UyGC3(xq1BkgV5lC zv5W0=QxD&Ld#8ZFcOr7s(R9|vl=!OMal;ZJzb?i!Zh$T^{D_KwJHTD@TOZut zLKLW(s1p^v`X_dkRQN`6I7d`^J9-GJV@46Wl03zY+MUMWN-ZlYeyfW>%K8)imxj0j zP9F(?;u$wM@8182Pr$7ZfUF-o1XrYRgcn&h_<sYJsk`5zGk(Y>m;eAy3XKS_0KtV%7 zei;OV!;A4ESx)0AYTr*r8zFF7!(Ajv?0}c#CAu7eZqD^K#vk6$_gAD0aUbs`MKue> z9D;1js2>yjB5)k52g{{^H8$;v69M~}6ONSU}a>8mh$!x zI2Sb?Xd8!Ck+@-N-V_sue&)}!oj_MHW4YVayQI0Cmb0vyl-|&)dq(-n!8t!;fd))( zZ+B`Ix~BS&acr1uq%AI`Rc-+0(4f~8K;x!U)S`69CD-gWCXN~W~vXf3W%ykzpu-+HWPqPe^~tP-Nl%1vm4;i(t6Uzlwm=Fc%DOR#Fhrtl#Mx|l&=!QAS1r&q|kaJqGBg{>H&L3xHMjv zCjciv*uSG|1xlwERZ^>`2;(DCU+Yh>Cx?-^oW?DYWZmL?p+qUIZE`Mz(rWTJ9fyXZ zsu8+bbc-x)Ma7;1bNBNGR!8DYEh4g^UP+F~J)?H7ulFELET@{Bat)r(>he*VQB49H zimjN8IFp%P%ezTXYq1-m6kWD8u@95^$Gd+YpOaQ`l^USW*$zR69G2$nCYVW>18WA` zR6(j}Ks3=n^D&GlL9ir9(b?&^x6xAT|FiWTNpd91vgkZlQ7dS1PSyjFFL%&q|I-gs zVi8&WW++Dnb819Q_3d?Tx_Cq9MK2Z_CQDZ|2ymtvjp!CGr9&lfB40~IP@yF za1hf9Y7$v6;RMIt7evaGS<@aEx1sFTA?h>w^H>w==tq(#fNqgkS!kdR?NadzOIBT? zcEI*>>=Pe;g?P@sz3o5$oy7mL2`ju8Rq1dJ)`x8dTVH8nZb|lIm^JZuF0tn~+)xo= zV1Jo8J!aD&Zw&MF;h~B*hB^2qTeH_(nHPD|54mOPYu zjV|8^Gb*U2V-nqT@vvh^+4G%byP+L9x%eRrNEY$JUnmZOxdIkXzh9G^ zDM}j7oT|NYrXdc7OM9FGQ3Eyt0t_N$jaXfrcbVXlKE75GkUFpj!wa{Jh+ z?KQ*VjKT-TDrpYhhfN?Fr$0QCBdkV*^*G9n{9(&3R5H% z)eRYf)H8M()+0{0xHA*0fMT}Sv!Zh0ut9?d)PH;Z1_+Wn^Ue&o;^>dJF-EUx?i9g! z0_mrZ*z{aDAB#zUz>@raJJurello7h#b1|zee3B2AQ491RP_a2FXpI|*_(<(KZ~Ag zj5LC4N=3w=8A4exV?Ou|HhGmRLYx?JM@9c6QmlyKsAA{BPX_lT@N88@FRS*;s9#iU z@>c(be zxS{f?acL;`VIFlHq}ZIfto{|cymE(Pp~n!3mJo(GvMcu|(GmELy$3@BhZqe0&EP(-hus^@%VT{MW zY$Nxg$rC2{XTi9}XuQCR{b5v%2_D-BxDJQb0Qa`@S~-P-Wfo6y*K}1nO_sR#BOqMx z_+Ym_K5syUyU=nB(kAcXNdih9CFfyb8C=1~pc=8D>O~L<2L_^_g!XOmb@8Gfgpq-0 z@5hvKPyyu2y}(*XhXNG-~W|kym(77&6p18Rlm^ct5U& z+(L}#M+g|9I-(QUp=eOmNbztED9hgYo7SwH!M^!8ngP?hABkNQCcyoq=VZ?JizA+1 z!-YTcq4p3=Z~^&=a?8JAfK(<-`n4-+E9Hu1JdjJE=;_zgl5p@lS}J|{$pVz;BEn+T zzc$VqhoOwbv*2x(6grxq1AS)oW1Dhdru>06@DyLB0?YesX%ckB>7q;RGr+$aNx1+6CH9da zDn8lz2r^+>@Ndw(E=6L#|Nis;{sk*Xx+}k%NZg`95x9s?V2W;wec41`vPzrizdCBx zKH2LctlZ!3K_b#rtP`@~{o6YTq4V42p<+4=T33wCJxAsr&e5Aa!{O~*(4!cK44K;x zTZ+tY(B_UT!HRen?9x$CC{4i9!cd<9eu$6bXqdO7DD7HR$u$bd2M~ONOUA1l zv4i2kM+thg$r%?n>bef;gHa@$hlchwEh?pWzotdid7R%G4Nc$5K<5JGJ{~`^u!G|c zpwNdcICd}=o1O($-=OlE!lRQfB(Rq7s`06eR@zEer)pguUpB$H9qH###*rf^ zhb6!KfeW^;VGjV#KI*~22JA9}_CLIwIiD{O*Fe=IyuL;T81)Bg@$Po^cw*a{rB!|q zDu2`5HF1jUCpKht22RQxOQ}peQ@e=l`ZXy8kNlbxE;ASc zDMbVC%hH@O@-~?Y7&%E*%`ix`f&OFUUGctQUGGK+-pxK{Wr#+F^Qf>M@V$s4Nuq%v zpa5l2TYaG-2%K=wy01`b%9hW+Zqk<{z9vOl+=t1@Xa8{N<=wdzbQV=a0k=L&BoB+0 zf!4IrPE)HI%beU3^H~fJzUNtHXwy|VuuvQ91#JF?m4i2(!DQLNGuP3k2_{QN#Q^a> zfbd=w`8^{l)Dmw*?gf*J#J9tshMvLvetaQr;r;aTd>W~l#b|=}*~%2V%er~k3b{Xr z0pnzD@znURrRwX;Q%?bJ)N2d*$93{Z08c^Jk}#th^b5Y<`B2Xom$B~cC<1xKA8}N& z-0wd-)9557zhc4>E}>t6VuCAb^A#T?qTJX7Z>K6wqMxwvz{ z!4mYI5{I01?_pp{#sSics z)E2_e40^_*ok)K+Z$j0V_{m(Z`-<;5*XtIs$7?jV44cB%_Od|J@Qmhy^10X&xy=3lYF@k@9ZV-YMSp&VUz6g z{f&Wd(v~C@heH`{w762ZkMT7nqA>saK2zy07z3RRfyn$si&Rn+G>)rUG8cH`Lh>M@ zV>WWc6F@C6&NR)5U=y%u#B$2#MB@sdo#yImd_hu>n+pR9k)#>#g%*h%Ij2MzjH^iP zwtyJ|Ti9^6DflCvK~ITQUzspE$>tYfkww>OGTb7Cmo61ma4}FHz)mhAFjRbS-Co4H zx}pl_D>ZhK3MXPcTfz*4xf(MXPIyx|h(WcioMiq?PGnPrj4`Ckn#?C=_L@+?VquPu z(Q_OG#~9WMbAKwt`S%|sEVnTn0-Ai>7*DivFd9F)&b=X^%y12T{2(Uns0n2o61N+b z+7|J*_9X@SzF+yz?++7xc4-@I1i+1ja?Ve@3}f3dHZYk6f;5hfO@3u}bPN%`F`bj# z#LBX3OzIn0*z( z%1wMN=(DhJhoG`YTO)y;vt=LNCmf9s9v+5^D$lu5Rs4eJ9IUuxzKfQMkK(pGo4RKx zrZdG!DtkHj3e$OM=wWg}Vc7n>BKdo{|`5 zgrZ~3vhu98A+As;T~rLFC)8~J>otRC;X9t<;Q&Tx%q(d$iemPIHR zmdw+k>j1O$dH3kDn=>E9Erel*Wa>cY?kAaCo{SqG{OItb=nYF#B)@tZ!&N1p$p=+6 zL>6>FATLqk9&j&DXjMG3K>W8;?+k54lVEzv5%OF3u&yek5I^4RWC~^2CTh0EYPz}x z><5dw97WP4VS#vY?*3mJ=+C#E^pyR^i8Gq$@3sJyBk=#o$Q_kIj3+g71nr5hpo6>f^S&I&nXjCF^Gj|Zn>gwA88yzi6(OsrBy3(tM z3R>vor3-XG4Aj_Ryvlg7hH zPH0wX!&K7yaVvXI|ET64_j^ERPJbFZN76nqT7;A<^Yfbih8>UjaN@L{6Apj#=zjLi zBWA8KWyC?D@MyPXCrf5*%+zGN(li*BL%OOg9|}o33vJ*5F~TGPA+~8I>F} zzatO|Wjt{TM}JyIAC-V<86Dk;OqO|e1dF~Zhaao}{}Ajw_|7Umlb}Kzdrw6ea3e9F zx)9<>XGUibAPz(Y`|HhUuL;JgesRIXK(JQM&hV>Co5=ZxbrFM>LPs~tAys>ZuRM+z zUAf*obZ<|e3K9?wDt%cbU!f-jdWLpEixFHISaE!wt5UeB*|hib&Wn>$%$%xu#=fI4 z6AyEpP$I|f3i3S@{)!f8IFWr-vo#FO@Be6?n!PyQ8RS~IVO@nzxaa<~}Ov!nP0I zc<7DD#Z;7K_pD4Fn^7~#P`p(t3koO@3KybF0hE2muH9kp2zPy=*?CBSj%aa~62Ae; zpSxbKj5qciIKt}N#bTMjma#FNtwj^#`qLD_8!LAh>JYKx^}CC&VhXP=zQq3w$=<}v z&_`9;1#F~Mc8$ap<0HD>D1lN#=hIMUb=m0C;rEd{FdTHm`Dt!z|47~-*bR)m%pymrDWghzV2Yd=FI=Bp;183bOh={*2DGN81(5nd_E0#S zG2kDzZ1%Y%QE<_w8xGqHCFPe>QXCmwo{25=Pa}IC-+8i2Rc#&bOum()?b)yVf2`C% zDDpKaK~^L0gh~04lSi}^LlcFD4eK5pa+BkYvV=u1ED;}5+q#!*Q_R~I919@ig$c3y zr2kJs-`^MkLEmZrxQJQEclZ@hhhu#uC!Em;;;I^A`$D;*R{Bt}$rHG+wrJob2-SG? z*p-1j=)eJS4TA_+M1s~^&-sr51N3(3jf6?z_EcGO@C6Fdw|_xLC;`1|iM#$AP=Bh?7}@>#x%V7`Xq@6IDb0WJ$A2U)f)G=}j~V84x5n04rU8E_s0#0Sds|R=A=l%RCh$ zl3RZT#{utJ!wB|uu<;1^^i1~CwmzU^s%fNc21ggsJZ>TT=p)Cz7SB; zhCy@o9PO0eLD+P)fynJ=tyfIaqes)3s_?S@-Qi$wBfW4 zSmY$yaGp7)UqQm8vVq*#4rp9zJR@C1!uvL4uz|`1=9D05UwNYL49Y7%B82#+j`1*$ z&EE#j6hg)0Z|vs>6fMrS^_}1Fud^(Kcs(Bm{O~{%%fDtN?d&*GADy;p4}4O1Oo3*N#ycP9Kbm5-&xZus81}{sq3m1J zd4{m#*0TgaUsVa&rQCF|g~*mAO#WA@B_rnb`$K~GgO`a2WU#6rvXfvdH669;{}hte zZ5Ujhf}h6=lAdo74L?{2t#~-kc1wkADXk90!jOVE**70Y-WezMY`~2eExHzw+6wYq ztJiu)gZky;us=~ESF+4}X*Nv$%~!rDNVujBDiQ@#!ZTMBa~Tq$$NM=h97GxCdyvi2 z5f>shyZ_NIL=GbPEYxN=jWfU-HcY5x{nEhplORTHD@gY)_cFbcB?XK~L)e;R_(+L~ zujJ2H_QJUz7}HyM@vV~fnBJ9;g`>VWSW3cSFbs7_>W6qUze=PSg-N-0Z=L!z#9}^U z9M%x`IO{iGM}%ZuDbz(&jpD+zy4F8S#)x8DA{BW@cQbDGj*2O!x#3WZWS(f*g=9K4 zeErq$SLJNOgr2u~S^d36;lC%;)-!Il_xIB!fbcxr8NjFlVc1DL9jGSB8xezIrm2WN z4qnCblve{Pdh|wMG>ATQ{7QSH&|(VuY*!#k&WBA5s0K;kW^XZhVVM3{$-;7_A0JH& zAu6Y?4*VS?`#2W#%2A4}Lb0I5zOmV}U7|J=wtkbP4DvV(lcfy3-!aGV@DbD>8e*O{ z=b!w@f~9y(xH07%dv9mwjrY0rf(#z*(GV5YnikEh18MsSB}-T`&Qtbim9w`kiAB5= z2g*vk36xkaROe{XJAJS^iH+gfs0 z6!g|W;mdI9N3k`S!$&@B1Y@*&2!gtFGH&dEe;76KXl`=%9&$ z!7vFvKM&E$d+N5PGRtS`f>gS*E2?4}Y3FW*Ki<(8R!6Td_=I>dha z@Bh3Ii^bmWa}-B95)TBO=+H7AKfi(76f}N`Fj<%+5P+TN(CFIWA`cQv|Q(F*=K1x@ytcT{%J?#Id=R9bbC<@+SK1Hx!gQ zz{K*Uh0=M$D)OZpO~5bk0BR(MYb1|Ugrb3J32($f*O+~UwjIW9&sGJ>h-lFMW{EmF z*FL5{NPjH(LJW7A18FQBgd)Zm`$4!LmTeAGw^7*p^K8*p^el&3s7piAmMlHJ1?UltlTv$o8o^~xPRX@T#!?Ee&-*M-VT z94*X6w;c_-(bYzgF@K*sCVR5|#54t0j;JAmLu##O&kPY#)c=iRMTjf+;&{6TF_wH^ z)R|FLkiX&bvpz)}u1BD&tD0_LUNv@U+l^`P`U=W~p^34y zCF0h}G$VKw;w=JGx`YJ|>|X4i)6(6m(^#D*R#=@ehFKnwu%7lbac9d~AkpK9a()F< z(q(V2_{zU*VzloXV+T&xPdrTG3oD;))X@^-8p1<{Om6(m7(-MKL;%9Ur&5((kE>HU9o&R~e1nl1sMWH2_3iKU#=UL>3tGGLsRn1twI*&@* zM}iBOMIYZ{|NdyD8{Qv17^uWYZ#DoG0k({$hB)zJ{S}GR97)g2W}Q%KX=8>GYBh3C z$uP1^!}-v$Q(z5u)}vsXd~F3sw#56Ty+1W(g}@Yf>-#GfD<@`SJ%Nkwm!^(?quEBF z?a^6}Cq2P>FUNfPr7sq*-4tgB?q;?ps17G^GPUwYadke89Ri0Fz?*jiLQn55JIp{v zmkkBc7fPv~K08e3eDzttndWz&y_@QCqy`QoKIHxgj>hj$Sz)C$J*)L!16kJfMk!&e z>A|S6y=`|r{q4VQ9^d+!<_3-*HgN&wh8C$=C9WzxqX~QN72+iBJgSQCkn($v*i{_) z{q3EB?3mLCT3?FL#M22->onYEl{W6@L8S5988$lm{pAD9HIpPXe_ky`X~MV!Xq;Ib z?)eUKD7f>4LKOGVxiPMCCjkcoHSf6YKoQV`qTKgEo^d9XkjgvbCxVc9Yl04d49Ou6 ziaD$>SOzzHdJw>{>VrW+Ky>< z@b8-zhXD}~DY)M+bh&e4?`w=KR4oY(S5*-j`{zp;5PQ#Jcme_SY2mk8a!*Ta&-MAZ zU1v^Vz*&tEn=DYQgLT7Af*WPScI@GDg6OvJ< zJ~IcPoyLq%j34ng&BhclS6@M_#Oyq=rJ2Ng%-UVT&Dyg~FKZrE`4L;(ilDdVR3SSs za7Q1VA)VndRP27O&$e@(=C|*hshdcnL;Pk;4+@AnRj#4`ux)BKkTT@S^oeZd6)#H) z%O{A%fe-eS!`Vy98ZI*l1D)I!9=q~8@yM9h%H%&2slE0`TWQPI#xETv$mphiJ;t<-D^h7JYm#ZQKZe&M8;qd8g2b#wKe) z?I>ctd~aIJbI7xb!nnudhLLYfd;kQ{&?TGs6(mRj@V6Td48>H@84w49KcZFJl_QJ> zY{rx${=-)W>@@_{F|0Gv`PkH_oQ^5HMttb7<-G*ld42ujHXcpODP`nYs=`Y{VY%oi>}qqQyp0hAp?ov6OK41B zMoFv%4Wt13unezqLD1WX;=Zr~V`v9E95#3Sy_2$YE&hasT_9T+oPMl1+T{7eLZ7~f z$KkYgh-zWxGLr(!n>A&kw{o4Aup8Czvrw|6!8LOq*ANi zlEukR8%)=UM=9K3A0C%~NgZ+yVND{4QaLTAqbwP{*%@7U1w0g3*E-dLk z{4yj~W5~ARM@0?Xb&u4(yz8nEscMsZ#xU~WmAi_(mnMf=`erC{x||M3K?>ABuaVUC z@i(rSmM9y9Va#bxEx;Vm^;5liVLEb2+U;c&csv|ND!#|D)Y!nIekfuXZ-OP-t=x%H zs#Bl6>v}$S``2&he>>j(xM&@9cNDbH5y*tQ>h7Xp|NO^?`}5ni>e7eUEEArVfG>yn zrI|%WZ{KS>nSNeTI9HSm9Z6Uwk0;d`bbb7>fq0Mn1Eg_dlb~8gXg|X6p>z>-K3@kk zzM^OjXrfZ5Qs>iB0Z!2j6YF{r-_9gDN4|T}h7faCHDR7`l+p3Gv#j((*ZpV-Smb+a zNT(AmOI@ED)>6Xu20;|f-rNj}U4G8mEV>hFWhRLsnuhkYDkKYyo<&v^-gvBEM|#8; z#;>JCY2;X0mKAKW!?x+Ss(!JQ9YndCo>p}c@P*TW!z-rJ_d8Q6W-b?YE=osv+kH}f zGc|D;x6rai($$4x&!dl`ZSQlSg=X{l`p_0~+LQe{%*kIA5gpb6^3^KLKffKH zZqCD{R1i5r13Msx?^0B(Nz#5cvsHoLvv4+ai+=F5m&konq#?%;Dc+{U;rrVhLKEl< zEa``bt_UEf!VvR8-84_np&TznOk`kDT;SWC`}1F~>0di*{IV-wjb~oBuCh=Au_cIv zv29wAVU+q&4P>O#;WQ#Ll*&Y6b}da!&hG73Hv|6`0i428uvCs0l3%9Te?xxSU4bnn{y+T z#+9A)E}QN3Rkv^301UkiVWSU_hCI=TA&aZ#)jY^AwI#FNJz6O|%9p}Mk>WEBU6N9| zjWw=DeH$q|O?Xw7thf1{H$tj@TJk#@@{CiGSifuV;KrRKXewc7Wzot zz}7zR(=-%Q@66-9i>n#%e@@*;G?$0U5KT=ezHwp<=XI3AR*&kcYm=K&V)q~0ic_@` zOWTnZtU(2!9_;P=Z^aqD(>&Vv-`NFa66Eb?S6mU!&F+kUVR=am){e}DcnxQZQ3jqf7CI07}yi$zOS2?kQ)t35>;D5hF0%(JcnLUPLmVYAXHzFPWI zQXTVP$3=Lh$X_~wz(EfPo#DcgS7=KmPhasS@pUy>p<6+bhzI17puP+{rUSJ3whU%BSNt4mU(d?Z9CW(I5NZdjHwshmvG;CIeXr{yosZS zU@ac!w9erv{vAWpIra`W`Rk3L*yaMX%^+kd6gV(r#F+kJ8!9=b;RZ`pnyYHqT`v=# ze^T26Nw&r6=J=Z^|M+^0V5onnJ4o53N)Fh#udm-KjanA(*iwF2l0kwxY{UB*Sr;)B z>@>$Zu1*(k86LmlZU~3Gf*tBG#)+&Iy5;>%mmqCHW`dbfgJ7YY z38u=AAJw{>_;L&t9~-z@EAx@EFnU+>l`LRQJK!WW-BGkL^}G;Ji>-Sl?WxQz??D^6 z<_{W@_Vkcfa23{bBRo2}m`Lvtpy2p|Xqd@#MRu80W&M=gu&Y9H^t-Md>?3e1SOSSJ zV#lo}`dwxMb~>ujR5`sPLZATH;h1p0WH=6sf(IajW}oks^Br50Jv<$Q%`0=kGn?n)f`+Z&g!naXa0cC@8 zE2idr!?V!u$^(&JiJ=CoNGq{OcV%7#0u_VdE=W+WB3nZ{B}oD@!7X$V(56rpm=6JJ zpj{Vt3_)afu2NMcy@Mdr7g22G{q0w=8kO3BB}RK1)22ZY)48HleZ?s0k&HVCL(a_~ z(4^EzW$@`~!rVf`Ri6)4Jyh`YO!`W`s@(hr2E)#CXnaS<#$#u0&aDiXZ9=y7LNsZo zw=97i=mhMC=7z8Q!N^oWKK9JPYso{uUJU%gGOyxlox)9Q6%r_;$I)HT;OUNd#uQl6 ztO1I9$WSRpdiTfjv!o32A8Io`%%)3gZrE&qgBuNJqK;wO?fvCAJ#^c0{-` zQ;-GD4t(CrE$LPf_seiW3s08k%(~J8dfymUd~ANEE5rH3_xt!!2zoysL1{)>y}nKD zFH1(QV0G_&Oev2F;xJ@{X@kzxGIeaw&B3lJ&t9zh`^mgBoy`x7Us(^KavE^)8mju^aC?b6mSklMAPw)ss`O; z3CBH}mfsPU_htFfznAl%zydH9(NGluXdDUoUJ&#CJbip52pXnyQ78iO6U_l#18Zkl z=irDrHV)D@O>&@hcPs}5t)|AbU>(FRW-iqtw|!fZ8^ zaz1Ia{LwounIwpHR!+cWVb!`BfP0U8JRKI-tBWjDv#J%Am8V&j*l32hYk7-*XUOyx zxWkV=zDbytwGv`is<5ikE5ZfTpKy1 zaNVjJj*P|Y&{W)Lb}u`KPl1_lVUjpt!=KA z2qRegIfFdmhlHcxqs_jF4uR&>^ck-WtFodxj_0I)MXHK@qckwj*=j}|!8>!F;O&q> zT?AseZeTa}s0;WVdFlN%Cn5;(bPiPN!nALWnd_nq>LbrRDH-zT)$6M~d2`%lS-#@e zgj4`^u$W|$D&>DPeY>n4)sGDlvB(%`E+^Of(WFqOCZ6VU_gqM%Ar};JW~3p4a7PV5LYT(Vr-{>ar9ZYDEPNT%R0N51_flx#I+s1= zvxbnFkn8g~CYS;5+}M}cU91K;t%`8Tem<|Gid_O}?~m#XcSrBk{d${aIwt2v(~z^1 z!c|RPr#pQ*R}23DNcJ)oqDeD1>gfJ`y5f`DAZZ)8upUgo{_>8m5j&Dg5wil%Cb?Aa zsr5%8O)2KA4Vo|n+iYW)HU+!FLIY!co6zE@HJYyW+Q8baC3aJ!2;)n|V~GG=ywG|G zb|VHGj?L;80f9^WK?^yPzap-~QN@fI%Irp<^5Qay*nwggARujpMW7heW9|RUFK>y?50DDZ!I8P!9g#`n@GXd)Yfix{Ixt+mW12aPUa9u z9&^x{&fC&VScg}B z$7+Q%vzAJLt175tQXEq^79E#^6_a6<7EMT{?O#@^Vc>5|>nKYvs+uLFBj5&w%bb-H zfT{D#6I882i8U<_cva%Jl0ZXIfY;Z5`%%Z0ZYbK0v9gE8Bg@p|XXQKznLHYGD(GFV zTcLl*sYB0e=clT0Aew+>!aNvkxX5`w&wBfG={9}&NOW=KJtq(^Osd5@DI`&NU@m8? zqhaYY6kNW_2gKu-vZi*z`+VxZ>U$8sop;4CDr0|f-BxsgF%z>dBSxXf#xzw=BPT+1 zQB|;`Yb>}${0f;c)%zV z{dAaOF)_vWb1Z+jtT295{Ft{rs*&-de;8A~)BB77z|mhHPcr5u^cyUvuSCztz`=Vu zE9)4r)wmLOI0lg55&j?EVa5;V9;9HTS>F640q%yD6}E@>rL3x zA8qr0M`w$QJyu^V%Pp4Elug+kQ~nQ+AmofgY#JuL&%e!*Asl4LXvdKuz(JgU`1Y&0 z8+HmTlcN>*%T)RE|2U%m{c)ZRZCofYwi<54zKJ2g4#f`r^YgIB1*SOwe3DK<>@JdP zu8Kwl)pkv$@y>t0UFx=xc7v^pz6NG{H+ljg8)8WDM28mT4z>=iC<-Apn^4GmiXm?g z0U7p46LnAZVHXF1vrWoh?;gpxVR61a{xLTi z9EEs4mX(J8wfR*xGmel0+rkG{``$xl(h)jh6PRM`5q#X|M-l)Jdbp{876KtCp-DbV z&Mzz4M?edJ;mG5W2~`!x`#}m)?IN2RH7X7+l8|^|sv_>&M+QUT8Ek=`;TgmMwJkAX zPbS{j3>K3}-Do0`|J5?*_urQ1xFes$)S5T6xC>cK8p%pLxAawTg|@38j)FCDXO6fa z3NdSciMK~O_bUCyji6ZvXEMLFYpSEi#ES{NRW}wh9YN7u1gb@i5L}5X@B{3~s>R1b z{3ROtb>z-|S=h$Of7_P-{ybF}%bEM#b6H<-K5*6G>DbLa`VQ=z#T%v4NZa~_TlOrJ zf2#W@PL|*-T*km7tg(I29_36!QL85Giqoq(cB~C;chR6m_nY_UMw#5s97T(5XohrzT&8a<{FNZtuAg-r#q(k9x^q*Hvrbf&una!@Rblmhj7HwG6h_)!#NqE|8|Yb1bWH*~lIT^QNVWNzS)erTM`NBFeN= z?pWcST_2fbu@`L~vPh=!$ZIC)cN90~ex2@7n2Z`tri|j@F;e>fqchJH-h%zcqFC33 z*@G>@Th&~MwJ)b5d7=oO1l*BUZ$SkoYrwgasY64vxp03GVqRG4-PN5Q1TE)3?BRex zd~yrLGFXFB~^S+o%akRIs-a@i!FH5{XO2;o*rrD#ylYpu}Jmz6PZ3LZv`_m*kg{!DPjrl zAEldzU)c}hN_@TXkgs>lpcL@fp+((gvCybFNeU7r4sE{nhNJRfA?UI`kUK+4A{6yu zKD`03_B@K@8`xq9mTHJ!6Tpv46>fz5P`To*PNCO6Nb=}QHx zE#HVShav$3RBKap)5i817T9}7SZLSW(|rFdcD#1FiSMoL$+JPExz z55(cxpJx#!e9lWXH@}D(!jHd{9}6!b=3~@sH=$7QR)>Ku-3KY>NFZ({c@Nkn&XN#< zQ;AU>^W-Q2MvbPa&O!3{xRCist0^{}F>=#_IgfYWd=_@3lL*Ac4~0g^BQmo2^hxRA zK<$Kkaa`m5tKrZ8>o-@SCf-IT1=K`e&x)K?yjZ?Z96GVm0;;oB-Z%8&=G$5zUHL>) zRtfShOZe%l`iy9JxU_+BI7uolNd%6ABc8E*UV|0z#=|*D)_6m?V#MvDKWCy8A^smH zr#@@5>P__$Tf48)lmbg2sskR#E48JVx-Q*S+J4&yzS6Zp@wt!N&DDCJv?@KIEBe1H zfgcca=przmo{~h~R}xQHpv!s7ig3iC221p5WA7Yit~dYQC$pdNcEHyvVaikTI@KQ~ zo|iw#qki$Ail*-HaO~M2GH;XHi*Fr6lB01|ax>JaEY?xv5tXyaZ=i}b1{F@&VXBXx?C zWxFa%kdOm1CB7d1GMYzaUB`)t?5HE@R&Sa#tF&n{u=Ko1p;d9r_i?197N^&$4yVE4 zjO<<4*?IN)wJs;|_<MK?ve$C_~xr z*ENO?rxX`uHG)bkCy?64ja5l{hE$8Tiu>Yf&604pptydd>xkm1#b?W&cSB8Gvaq;2 z4OT{y31*2+gfq+3yYFkL)*HXUk+W4GdkmF2Dq#)V;J6&TurOm^Pa|b)x3Og=gxTkv zv!U1GTDPzgw%ogX;kU7#GJTK#CR@D|sIay4F#$L4EiSINgJ%%OZ#P+-u1hIMN$NQ$ zdR+-5lW&v2+MKRDzWk#rI9%T5+e`mR@aEJA#X}9=yc|YjA!)!>NfjZxD;r>VK`xe3 z#2}5VmB9dp3F3qk;0iG`-5IDRnMR1K7LK zIAkiJ9&*@W=VPQ<+#}%+tc;E?9#U{wLGFl?WRVi53XmKJtoB@_J|Zd=M<_n2Fvb`( z#Y*@mTBy;x4qCd`5d#~7U?LKNnvlbD`yd2)>myw+ zt0w>Ea!pD$Zzu@*!lmx=ysEB3 z!pSP=ED5-)6QYYW-;<<29VbI4Rb;!BjRCPCqel((H$y6|1ar_z7?h{p@&@V< zvFsM5YBVq;UJ}_Enx9G~MVAI$VpUDd5$YR);)D;HzhRI^HWoW_6J2i1k}_QFQ5#Ee zj;(}#5>bSxZiV?&ee)h-!9eI8Vb{duO6H$U;>s(7Tu~zb?aAlm5jx<3nM#Zeqz|-&E@yRMX=R+XIDR0H4j{6 z9Ilhz{STY)<8J+hE_IyXPDR-vUKx~NkMc*a-1$PudC-3E;xCB86%K^*m<{0C4_h#A zLbBRlD)Pc6dF1FrU_F}HNMdZre0m;1Rv$NYs?4AZRaLu+srurIs+n1j=>_{Y)aro& z>|2HZ#kKg+-?5;BfrHm5zl{8$RtJhwi*)Q`MZw?*PuXG0!T1XFZ?MZlF6sV|OABlD z0BK2CJux{{WRXxWNGQsr-XHJ@z@kh_!$4tJ+bD{~;y2Um0UhgsdTu~ZPm)T4#ZOQV z;v=akq+RrHcUDIa!1H+T4;c=Hg=**tpzK(#87bMn4wW>HehA_CyW+r?DF=SjiFOl@ ziob6cW;K%o5U2TMi#)ABZ}I<>Z3ze(OncWeQ1G?y2Uc?bo4346i@1%`DxBr znr2;^ccCy8kLny-pfbQ({#-yFz!SC$JE*?XmTA!Vh@S-{7-=QP@eELg@GnD!`4j9*w1sZJDf!iqm*ia^j+EFrhl(T$FxiKX~MZtm>)^ zBSwK+^iXwnmq=}`uDguy;XrLpBheegP{Q5lM4|>+(H2Qj7avNI+;$v1*rtlu-XT{P zU0X`3UiE@J2CzN5%W()3kty>1lS+8RF=*Zs#*46B(`pF=1o3(dW{Zg9hl}MT17D=m z34d0(X%xT`dJQYt_%S@wRuv2%!;nCY=qJhfeACg{TtCoZe!n%L=`HEn$5GjG& zz=m(;(~bNj;%D3~C;bOxE~{d#*h$pj3uBk(K>x<@QXcu@` zDXfUFJfmx#$;PGm5H{ztcjNJZ_#Zntq z7{$Fp1|Gk;tgVR#_;di;=%UFGWO2x5NL;CyM*x-)j}@~u#6BHPV-T}WxhOayhFrV| zbl?ZZ1})(V|mpm#0-VozSEc^^0wI4jEMeEtX7(7eaq$qG403x1&rTn zh)Z95zbe7jusua*Y=(?zYRvDDm=0Df+^i_xxpFyR;ztpVstmf)6HWBN(SR^ebLm+h z3=&6+^D$kOc+L2l-iZ@$QZw(Og6cJwQ*ZE2Kky7H8&LVvyBHQ@qlSMmaj@Ezi8bAw z7>Uu5)Ku{LJfQQ!coPL(UB`2n3jQNZ5wr)-H2|j4&^(EMX$nBy6xceX zS&ZlxPqe_~UdF?efK(kPXjP6gbO>AIRR--n7fpKM2l?#O_QZ`s%S~FA7fdR6ALbw> zdSEsY?AW|7x(4P+|3`5(X#*`9;cM?+QE0o!^Jyy6Jc1y1sev!?c!lBncXfX%{)3P8^;O+0vee=qzWXAiu&zFihCwcx&GP8iAG8Mgc5>WCQc=$PUXfVN*z zuYh>Ow{|KwYjR^Oda{T|Odw2w?gJY6bOz5}+z4t3FrI+asCMiI@LiTOeQ+iUDuTdh ze-&1W$TDJIN5BxQqu!J@yaGS|J$z4HsZ{5-Iluo-G6#63og6c|22j0D=7En4_J)@7 z#w+xi;A_FF;ui#IiGIEd)J)2^nD(9dh(Bxti$$;A8zgActE;aDD+0T6J8WXsqQ6Ax z5Gac%poRZ937ctVp5Jt%ag@D-NmW1ZtCng*MNb>^rVYOg{?-V{$?rQi_1jgd;fX~+ z)Wvgz!;wzz-v%FUrm*O&LK9}XA;J+WwQaY-4362qjuB$0cT!Wc`W`MD!mm@-sXx|f zVA><17)?SwA@tbIEBkAm{rUO-K8!2H*!GQ0S7qjIV#=`!xfq5U%KGchWdt^_58JTc zMVGjg9#Bnnh{(p@>o;@6k%*EM-eOkUXB08 z5)DffsG!cX;eRwv`AXY0=M1=G@-pn;{0_0jERpn$rh+Y@e|4+YtQrPq_Z?Z)iTSi# z3R)zy&{Y>h-KU+8)@GWEX52xc%-7L~GaT}Kq6q;9F#29aU zW*24>MezIrqi45xBH4t$Ig@pIp+RS?)8Sincir0LQL#I;4@sJ==4NFqCaMoBwk8RN ziDe@ahCfeE9hu3G{kAOwgmC3(7&IjqWQ>NxdnEmjSoRU4a4>CZT8q?sF@q5kRC)LO z4S8sBXVe0P#fj);FbMzz-M5sH(bl!7iwHiJNLu39wZz?#g&`85fE!gE-ZjS#wMo%L zVt@jn4E^Lkn*a{)Wb*AG;5K>-(fV$J=;v>N?YtaJ5X}3)$Bp&LLWDzjAlCF@gVuPK zMUc+Ao7x~8T9{njftk4Ga6WGHU|f2V-FRFSwQDtyO-&IKoCS|!1+vi9V)U2Erd~}z za2c`cta#Pyp|&dy!ny?_-TlXwDnX@_Qzv=vmR5L?5RKegjXBNe$kMR329#t#H<-DJ2`t{HK`pF4np z1UrcqkhbUi$#U50i1o40M{EGg0yq(c-Y;>C-HG+-X>62k&@DEeZ@B|1ilA@822*&5 z#!f)?lFD#g^zxqnX~-KfvU()W68uArKVpb<2{@tK{9zLvwZnQy09RoU_SSgyOLiJ`{tBM6A;5n^NonoDIhKk;Nd>)%%@hx1#-;m zGv=tqqXX^nls&wo}3-96JU!1_2QZ39DB zn#5&i=>C$Od*wR9ojz;>oVlCn!5TB3U#3?@WGk})pS4Sc9`O%_4&ne=E zm;`8c!NLw$qqPj)^do)#O$6QQxU7D*$2%;k>{r=%``P zvZ~wb^HohdmP%8g&|XjehV2^yiyiv<%zj!V8PNi1pHEG8p$g^nEG% z7Y#_9AZIz*Vo$F3q>iC)vON7&NYbb0=wir)kNWs3F3)_Q&BQ~OHuvw25N5uLE@P3U z>3{6$Y9`Ds@rc$lc*`Wz^w;{*eZ=mXU$f+a7}$3%A^ z5U>=rj9w@4eSKs``#*xI5_=SIr^TNTn_rv_s3;WEmU5+AAQGSFH$<=$0hZQlnszZ0 zS0{P>Xn`s4cA%;&E_TB-5wAJXMzNtt5((^Vm?-2vERX2K6c1_q9h^;BDB~<;8QNJ zZbBj8>4?`3D@*%b)B5R6KYFj!|1@a3J2WU!KQfa=R*GYAcVKIPu#`s{$0~^}bNI+j z&4OO^JMrS(x+o&0jjz}_QOJVS6_YDRODC8km68N5c%`ghG%fW;1iJrKQ{}C@wT~GG zHLLXR?-WV1a|FNykrZ5ImI%!WG)2M;ErBFni9lDk&ka#-#kB z_@OQu0>xg6BVA_<8j{z$BnjP>KeCfa+=XvN{#!JNE3R7EGx+zwtZ$*KYfjp2^*)0l z)&s~b;&g}E_xWy7@rxXtm{H5`hr?(MRcl=d?geeKxd0DbhBY#menr3&bJta>pf`2B z?-93-ZmR%8gfKsVZLm&mOOVD6-q|_fOop&he;CJctBW zrERxlHKTmza=e$-%OO?Dd6MxM)(Dy*FDhI#zKV6zg+FMLaLX24d%4VpbwOkkd+1Fu zc-PdbvH;!<@I`n{7O9fGD``KJwTbD*UVj>1AqE)9B)n6^!z6iJFs}Q15gNLpSjA+F zI$ZosesU;a#nA-r!Re_)`jcwVxcG1+u=Z>5%D)o4f03;5fASzM*BSYt!x7aU+KzZUIQ@!{asf&f+o3p-&4QLRo3ox8n=R_k^`9afV&1@B5YBrM6AkW>|T@mRQ`r8u*v-=&Weu)eWPJA$%1l)#tJ-6z^&y`RO$e_e<7jr?Kqr+ z+?mfOjQfBM;$s6Pc@s83(VaqfBeLR{YgMF$NZdnIl7s79e&^tZaigq!m2A2AEk%Vl zK{Wee3+2yJqd6dQN5alns?|!30?80V$K~Q_9kM2$TpwtV#xy0VA_d;t&s%glKWc~t zwNe8E%F1_YMN!FazWWnl!@oNcy%wNE==;!HYNjKsHq4=y+6v`6ovjIp;;B6o z>Gvt6o~cTJ&yPU+Txg{Ho8Fcbph``YS(1f1V6&Zbovbz#cKK+QD)SL95q}#LTbM5S z+Z27M)I!s*4*x`8bE4|{qn5%J^J@jYd*vD@gMYZkmJ=-{q{K&yYtUaFg zcunRJ0ys-^U$%WbymQy2s{x^@!##)@A1K!GD(mt>&8u>$!OmFnd!Uy+*)aJ5%L3O= zQ4cNDo^p*4pBElu6r#_21|G={2cq`@Q;KG)v#GKe!!^Hlc*Xx z1c*xop*fYI|FsafI>MPnr;(%p2o|Zn)G9TzEfb?w40s|>YL(0NA==~WKCsh5XlAk^ z171Ip^r$JkDSx|^ek}@UMFWlfqO><;eWJ$@*3BFiic_viDVAWy&ozzSUNjimzeEER z_dzx)8Y*uLT8n64&Et9G#L3%Mn1}n|Z2<0xFctyrlWCKZ%(Kx1CnrK9STFHWsA$>5 zajYq((6X~Cdf%Mbl-@wCxj$V#O*!&FqM`9e$Lj%_doho#H6;pQOx(+l zAb~)20o^*ZD{FbQr7k>>N+HpI^&?I8X<(D4cD)?o@6U7upDK@tampuYT-FhIL=-&$ zc89g1olc6R-r}OGh+nNNCqmrwFm9>pECK=*go_`Rnn@!Bx4nT#o%n+mdNyS-QdVDq zbp?KFQtIoFMhw;&QY~T>k?UEUEt}pTgV~t7nHuAkGR>#OoX5pnCUG!Aov3&lP9w<& zMv`&+N%+4A_g{xP!_kO%zjGM}*rk%p3Fsb-*Ki)M-cWEG3E_dGuI@n$wyowS0s`L!x%?y_vd47Cs z;dA?y-}`Qm`qi!d@7mtUeb450K7TCvfxe&CC+2dY?jbtBXa z21=ag#T3PXL}5Wugj&s4M|AqK(Gf!!pmNk(#TE=|Kmry$mb(u|O|^7M$ZNuiZ?bBU z7Gy(RJ!PPnRB(aE6woVv)bw}b-!l&W;hv7a1ODcbH?yJw)guNyp?mX!aIAf!#boUBsH@xTWe+fX1>6(W_nE=iS(XdP}w{JljJBuz%aTcRvmc{Yp_fuMv%VqnP%_%t+X zbU9N*`4!Gm#S{Wohe1|_8CqzsS$Ym>uMXwO1{pqjWcu(UV^SKHWZ89?MFb~4Juy>HN%#@ih3`292okhIY`$Q}Wr#yd|( znc&ga=@J~NH%#+{BRq8JwYd~T=()OVx44XO+2unM)HkSi%wSdJ0v^}Oqlgs5q`4U! zpIWaYgX5U$OBP(rd2JL$n(9?pnCPXU06J`gs+x~z*!n7qE1`tx>M+sEu(ukq?3`h8 z-+OjCUFAx5iILL!Lt|UBkLN>FuZ*0qaI(_=#+?Tq)g4#lq2H3Nx(ZxUyR`UFfO9zs z6nbush9HDvtF1g!iNRCupXA?1tN~T*bv%6`ezTYrRq<3LH)H1TI}772@eB7w6xnv& zXv$F9x=LoHDB9xTJt`N>m%XzdDcq(XDanaQG84W+GEp5DyWbO1 zod#EEh;4P4BInnZsX)$R1RW;#wPGc<#Ilu34gRbpdl|Xks*ubQzb4ft089yF*wT*{ z|CVHlg4lsKd((e1a6yqG786wjM81YPu*c zGMw`kjd@ujeBLUyEHfGJH>tWKz;R(H23-uy`|p)o8$B z0p_eEL&n(p`Ns5&iZQA*;^K`#9Fy@~)D_zgO=2+JKrs_>6W7B_6gtfPqs z$%e%h_Z5qq6kJPr^aDLhs`Qsa*a!`-s{pqIf04o=AxpXWQH+?penjfG=kFBdl#*ge zwjGEge$am^q!Cmtw7A3|5v-Vo01ww;H zG&5tJ?~4}66wrdiW^pB4Je!LHTG4!APRJ#Rru>2_^vt##eM!YKa8We->XQxF1>%Ky zw5Tq-%tTW}lix){0Jxn3Hh8pyQ0C#5(0vhi6&NoRgJJ}jqyNcGB1@HW_15K5B^)LZ zZ#aVHz#fQYXC>sCAqp4yms~_EIp(>-$we3_q07-UrT5idTYM-42nfYWrCM0@<}|iY zPJl%A56h;{PZlpxBv61F#xcs{Nw`KQDU1$nhSDs{D#r1MD&CZv=Gb*S>4TOj4kH38 z&dIL1lCZD>wZk>Q_bfF`HK5L{OlR##7sx*EuJmFUU@FFS#35ZCZK8uU|G`u$g7bJr z(uX;urhsr`(v$EeOaIRpN=AP{ZKzv}eHD8fx6& zg~D0{BE;(6sSk~86OjA5G1YTp*p@yKL}`HpQ6}ktw~drmN2N;D4b+({q`ib{!=wC3 zinuG+;i@#!upgl8I={-fxxY<5$!4K=MDu5+9t{J#!?9>Ec4_qxSkiU&O>12=RS%%k zQ`);}po$=MJp=bzDvr|oK|;$#6FLnGcXD&Y^7^&d1&xw~;@?>w%Ljq1!5T6V&NY4> zN1PTJ{=pxdsX$iG1tfp5)3hpGHRlnZM--}Cun?Glt^{!M7o_zV9+0A;IZ%j-k^~nb$|@hEQ$uD_6tcXlYtk#ZhS!-(EsUunbA6A?siBh-j|P z3D6(%kgFL>%v~VBhNijxrXss0guZBVB!zVifFpNLAySX#Ud_||61fb+M(W91an)j# zSL)}15@V!-C7hGkyGc%XwYLd(8FQFlknl@t% zrQ{f!4>JyhZb&rr<|o1F2pAw2hV9|7lNs+2vba?5)0mchXVYsrRk3Bd#;CkYcHGwG zj24NLGtKp%g{!c1c?|2u^E^I`EevSD$};gnvf!f1l%+xL5!bZ=Bw8Og&_K#3eqn@=eEPiYl#f) zVLXZ^sI-OmIW@fGKHJo$#%-jOXezBGMt(`maN!v=9VlVZ1Gy61cG&a z0)LISyE3wKR4!G$K3YF*zQljbTM^T*DLVtcmQx-k_CcwyDs`GDwLbHc(n(A(HSQS2 zxtQ^f_8ICvtSQM05hi2YD%Uo65dORd{7i9RE!9vRRnQ@q-$=68bCzGWP|5;D!yhpy zYHM0jz_3`!udVZ6hT;daN3q0J@DuS>2tv8svr1O_SX8Dy>Th7SQv}O$Pop_CcWfJHD6M@PhbrsC|_(e`}+yb9{a7}sPvLP%qqcf58v<@;I*y{qcr zCLLcDZJyPk5So*KUpMj68TrncIELMEs`A)9#g3HZZepEm2*D~U2$ZjcxDZZ-YFss3 zv!zbpl>U6gU>n~~JYS7rx=p)@NDcH&SWhG0&f>yHpN-%)f>dfiw01v*X|<=Ob4)m* zLXb0pPWE{}YCK`{s#T;&QN~aoardiWSqR2t4IFi^hRcFQz@rLozj4JorJ|N2EU;q6r9>~|?-AmZZgy77cJ96=)+&}@zb1V^%3q>W zOOT1f_>;CcX3;PAGsEcvd2we7b+xSZ$E>|-fJ?Z~yTENrN?rvk0&_`!{wZdAc5(a$ zQJ=j`?|D>8v|IuQerg|-#s+LQu~N7`O6aH)YFS1dSCtHtQ?_e)yQu$2Gn^Hx@dF+p z)mfw}CK3cn`Q)q9OVys2A=P*9c}Jry37CeKrm_yc3m2IK|1`b4fRLL?fy`J7w&-dm z`Ysizx^W>xtf$SDliz!0LXMXvK+qxxatt6y98OMt7wL@haGggwKx7^@7PqPYc;K!g zX?f=9z$c=mC<3h|{-rI>2w(yL<_IEGf)rH2w6jDM@QunQojcmtwj~h*kiZ|v1b_V| z%}UvJyAd3QJn>=$m}96&E_af!wkzZ^&-Nmd_Eo0%AekvIRutq9$U@Bf<$zy+lEL!2 zOP;`BT_3ENo9aDocU2*kCAP76VTBgwmEE^3c^ZR&t<1bzQ@E<#lUQY{%xe4G4m>U_ zR#2v4EX6<)w%pXSCIhB>%QlL#m?Z-h5!Ary$|$SGlgyD;7>n_yoSiMyQQWslG2HaR zf$EQrN}ZJeI{-J}4F@=iJ-=+MDJTEfU7r+7{%Uwlbz$yN_j7fKP`eOCM@z;ywyq|! z=&+fqvYl6Rc_b;|Wh^b`uJfoAPwY;H3CkZdcRfWtvG1x0rp1Mk`);x5RwBn1w<-xJ zCkkOx0nB&NmUxpDkVk}$4kU#&f|+Bc3BMkVnZs~@=*5Fv9qD5EA?xTf-yNuJMX*Xu zL~JVpfxwGuY~a0{)SagQ9-D$doIx^Vck_%c5@c_J^GwwjY;s=xVN=&?$CJiYO>#U6 zb76=qdnZh2&`HMf;-B2}#J&;@q${svG14_uk1yQfX2HK1p^2AJq3kj$ztUsQRX&?t zkf!|46!k-_d)H+QIdN6NwrLx}BxF+@mC!x>coDJ5n)K12QqN7~)MBV|?F@ni7g3mQ z;i(TZ4|TC(sBT0GJZnB%!(cVCwPd5x4OOSP!GPBG!;6H3o3cK$I64Z+@TYi^Bu}>< ziGj({jG}rEZM-q`7f`(7z_Kb3>4;r$=X$dTYPvV-(Ybang zwJ8TK+L$MDZG56TRdS^#cIWjJ=u-}ENOkZy88X*zT4B;|ln}_(0*33O0H=3NbB;Xq=M_+PHLOcOLo8ZCcGXAOEka2ulY1@aq$f}lA_!WfrlX{Cg6*foIJ#429^?d+fYXwtjKEw z>-ZNd)8U@nA=!w4MZS))q{Een?NRKEkC1FGAqayZ%qe*%2x?r`jxCwOLq#{6Hv#b zYm}OsMLM74j06A&7+u42$qA|aj-mdTjEIpq?m>Pgk$+kG_bfaUO!gCc-%6tsIetT4SA{9 z3x=z?VvRxS`&a`6dZL}bIqExjAww$DvF851Fh5bQ0K~0gn#6smIa-;L9zv)=vzLE6 z8a>Fh^FgU97n#_1hBc34d1DBc(Yo&@0*Ho8lYw0KM=fC|Vr$iUmfTJJ$g>t9x{>-~ zoi@f`@dYQpLMd@0uf?HaT1j|y26qNaPc-?r<`FYalrR2d{XQRFZcaz9PMk_rwtnnd z(FfCl)ggY;TuxhayXKE_n-UIlx+ZW)asXb=^>Ko8D!dpX?!&%`1jE?&XJpQdWgS8+ z*m%4ZTcRPH^`R6QU*!WCEz^!h?_fMDr2x@?n8wv}iPClWg@-C4!r()2HZHzAym#nv zU5#e^V=xcwS&R8LSnAQmL=;;+;Xn}E+W3GXJY^Sk>JT~?3SF2>UH#dGVI7omr?Rh5 zZqc@}Himxy}Y#x$fp;s|OA5>gr>(k1RV1wY#Gz#cksYlum@NzXhq z2olKV_7arZl|M)o@bDQvXws=PlcAdu)<@_(ou_-74~c3PIyYZM|Uo#o}!ZgdE|zvOMJ9#&4FU4odObc>+iABjl{McNFE?nqjG9(0XpmbVD#ukZm&l zbwEry;$8+9uqEPN&mJf=YpVi}4n<9xSb3uXft6MthN;+Z$Pgr>Aa-Obgb83V5E5xE z6Y7Hzka*6v%~M(YsC;@qSu~Z}@8V~RCRr=$zT%xhD1oSl5*-ruAtr>F(8Q03i&9}# ztVzIT^4#vErK`$#KWmEFJ)L!S&?G$4mQxn^*q zA=<$%2kL291h%%}{0;Wsql+l>(Zy5{s%=Lf1)HIzN_m%a86v%K*I{zuZ@MEPXNHgL zNhlu5#ycORDU76&NdRaq;}@2p8X$G}U>3`OuH3PkDbNQC72CmCYsU=v(kt}y5U+bv z$uL^rk+hq@kvNJsTDrGluP~xJeyu`A%Db7dn1PK*d6#NITPj=wi}_^(6}t}|gGCC>>%G z;0lnKB^sD1?^mS8s>$z)=(Wz?qD*?{;*d=Nt-#9_L_Nk>K!Xd06iR((eL;Q&9^5PqVSX|?G_k0wN+t#HXLZvsgu#=`W-VqAWRYVj3eDJ!l zQ2cl_LPN26h=Vpvgu(rU7>lm>L7Sc?EvL1dM`+;ja2qPy461ZyyhP&%SzqqXLp%{( zsnk~8?VXs{ILLS!f$bf+Au7A+@jHJ6Gy;SM`LM8_&{W9b-r7GB7#8trvw|4JS$-M-S_NIcn`RZ4fvb%_}%V?;y6(5QcN1L+R(z(H*8)Q!PQ%T<4&&zPcVF?sk*_< zzkgT`c{EmV<^qx>%9CCnvYVpuBW~NwDJH)MTeP2qY;>?*Dog58 zSBoYA=BuYNX(kkpg7J*JXIYMPQ!H!!upUd_&;_z*=V=y$w40X{mJ$Pi!=2M`ZSrNr zSV#VbFS()aHgWt!o-5@A+F+nheNjhkc6ZAB6a5? zXuZuGOHxrcMVf0fE-#u`Alk(0-$c|`RS_5OTfl!>n;Bdobt~Ej?q*G-Hz?hm{Kaxn z@XnqP4M9$}DvALC?~$S$y1>AE{DZz`LLV12RbJyh$jv=|dv{PVT6{+2a(9V~gc@w83z$v9_(|d}IzFs$eg>f~AU8 zP`jqwryBIetS<2E>%hRIche!?@APU3{0ys8^i4g2N@&4e*fy*nT%{ASk?avw5k!b= zC88B-;*KriTg1MxR3o#sZxofOSV$%;VAY)9tuSt?s)A1oD+^^yJtZx}amGbmMO5Jw zAC{A7Arx1;bevCr)P@ORT7@vIQ5iHDJdHh4$53hVV>-AI#;nX#$*(fIVE2G&AVX>6cLHFyJ>9$)3yvvO}WwEv$f#r_BB_LM- z;6P=aVpUOGwmxhcfufqIIA zrP`odSBM&Xv>XKHrXmPmxwro98^O_Hy<+=KOjp!fp<1^Y)}{jQYRFMcYE-gKuko7e zUbrtwcg9wMAm{Xkm$1KR;?6k?^a*F^!#!~7U0AB?8s(Uvn8ETh0o!c)4R?h}qP;;l zvUUX)W)8S-Xc*6W`n}VsFc-uXp=ln+g$U*%Mn~auggG{Rz-W-X&%x#kbrONr4_UCN zE3$q}C>IsQDn0~1m8zoXO5mp|L%#d~{?IP8zw-LUayP7dJP~7XC5q?^Ue73vr{Zua1)jsC+8oqz&_>70-Bh-nv=LgQ-5%8i$uoQ$bGW)|n3l=;Ea zc<3lhzL)812j9p8cH$P>9^LO@@7du;~#EB(Y;2DSQp}P)O z;R^&ps!Zwp5G^{poQ7+8VEgXX?#m^{zIgL_Ac1q&D$i1id8CLfQ zfYhWkFcKUE)~R=de$1Dkb8&~e{1%+`5M1#kLMm?D84vY1uju%F#$3Ek?WH|l60SD4 z;KSQ1toRT#xhQtQ&O>s|l$&MWR(9QKG$Td}YBNVnShEA1R#F(aO~N4m$SDv{|CXI; z#@kR|BCF`70EaL$iA7?!yJc9Sa2_7EGwocoIGyPv$Y!A`lN2r+Jh0e_M5AC*44(Sy zQ7{Zmynzp9gzVsylETovJAN*WiwN$6y9yF_5GDTj8Mj^@-3&%;@u?$7BHCidggTa^ zeoXv3+emC8e`p>-I7y_Gj?>v~dQw=zv>FX#=X}fV`7(mQ(?7PHh1L=v~K^=BofA^J#Gw^L3m#0B$cplwlj z_HpGtg-(C@iYWj0rnsH3ywdG|UUOEQBi_fB{RmbmrgzH`tO6*wF!d)Hq)z+9MFFqC zEc;GuJ3i-;n4O|^(ml1QLk|TX*?E$5C1z;OFhO$;1X3~#z9)lXM5-f0qrzljc_bMq z&)_Q!yZU*A>B;$DGu(zoX+>crqd@YZ&VtEr%tw-S*FY?9GHbcze_S??)mY3y9pA!t3^!A`Y5MUJO}nr@kAH&YG# zJqq)a`QcTSjb#q&TXW8bU`3MwN^1Bglfx)#nzmrti)$q7ZZhL`C5mX6VYoPzo~D_b zg4nJPV;208eMpqXL^|Iq(mfB4!qvmEiX0&H>J>i7Be>3fNRZ2-JU9a< zwn-gWqm*5l4c+!RBp01dV@bvNN8QO7(ks%g5w*Z3CZ0{}Gu&#JSfK})LUPr?oRh>b zg%8zh>ANdZZefySKF9UF?+{5V1F0k;^rc%*`6tR=O*T7RC8GanA={M}qP)|T70P%i zDIUL-WxBrPNWrVvf|ry_b=lh!Zc#trS2%oR08|7^(lkT1e~Ooq@@E39DCNP0s03H4|a;+eYxR`+*MA%TUgAOlGAx2(vR8ToJ4(KHO3<2K?ppFGwN|`6#yWitRE_ zi(}C)&-(FGmtac3O0nrT-5pmQId(8@G9i%?*b+0!jnII!xA4I2_5%CK#Sa2b{W{b`&64}_b>nw zp4x`afSy%K;2vrv@Nc`VNWprhG)kg6^&X{2V0?k<>lB|DiI&~wb-9@7{YbKwRcBtx z5YkpAxs#fC4d)MeuL>mt2^Xu1m{@^jpyfbOaJe0_8X8Xm=O1q*b{n>z2f|nn8;eGz1a9uZn|miLj;%7h_4X3{Ye{wl3O3i3)~or> zIjyUKDeT3iGx-oKC(T)twC_q?7dby93>02rHNP+0w{o~hcRPj-&rBTAyvH5GKfBw* zGnwBIYteO?PJRiy5CkO{8Q0z6zLb9QV!C94b81B(MDuESsSO9`T?r;sVYx1FMUt%55I}B%tEvyM47k9(D5=^gu&twmlf>l-m^r=irP? zyi1=m?Yi@1;m|4dx%=*%W2!#(i($NqW9bfEa$jVW73lgN>5kno4k^-Ux^b`*_tPgQ zn~8%eIeqH1qN6|vJ<)bWU<4A*Y1ANuU?`=o+0t{6`png9v*89lI6FU0o;MCD@o0{1(ry39d0dQh;qiOHqemE7=8+lk$5L^c5^o%Pv z^9+1<&UCvz#1M21jD^#5d&dZouX58jJ7&(yZi)7N9w{4DUi#)th0{PV^0?~}VPlV! zh|{qg!BZ0HQ#coLafa&dQ7JKv@)%sPGoQ&RQ_1a!g3;)3 z+K@PUls%;?S4N2dGB4>BW&|cZqO8 zTaeT3LO&ge(}&%txSMX_%@J^Ec)B7@dLL=hhk)+)Hc)CIDogAU{cvu9n)GVl5P#Ph zGzvS_<`<1t_g)f7bwQ!!d7VArdu-xKi4*Hf#$P^y&oB~%xWY%`Ej@1$)WWcK<-sP0 zLQ66PPj5vOG?QZqi2(MGL(x0~%=io}ej8|&B<)sJCsD3F5$dd9JPX6DsLY0Ku-g2E z03({`n&XBQaiqNDh;6F6uaxdUKir&|%W5b^#$BM!$hM9fjf35T`59egK#+yj1(I6n5mk>NZ{ldTzhs~Yq*DB0|bY0hlDlA zVHAy|6r_4K8^n}{p95Ki))0a!qzL+r>r@1QXAh`oRJLJ~-PJ#~e^t5zOEcO?z7#5g zEZ%EG3vxLYIW#ugRK!gyrWlKqG;U@QRIoZ>IIK0MUlsA3!q8iAsTP|L8B$iRh}^V2 zhmaRx0i*Yj$Qgb|=GF(v@#>xI1aaBSPNyA#het)pTQ$PrrIRoL zI^KvZ`MTQ@r;u;-=I()P?xZ$Mb37S}P!rXURYQ^^rkN@H$P~Cn2s1z39Z{8q5s577 z%eE;ZV_;p>5sJ*=xtwaqs?hd_g%M^~vA7?>mcY45e)U7fmMr%Re%n;*09_(NIsPc` zo_KrMfOjWJ?-B50Li5rC5hPL?w6-rt%<*nm94CiIXhSF?6OAHoBf8Zw%9H5bYw%R8k-uwMVsbT9r^r|E?I3 zvfbL%0X9`RvxKF0j#gC^Cq-0FD|1`n(KKkR(8C}I2;3@2ixF7>!LgU&=47c|4!?cq zepQr9L}(XxMAk*e?jbZ1;lU8pff+03BmA6HQHgG3r(ucy)e{lYRHbAvGJ;Aq;7b|4 zas(5{uC0X31wqB3*hTUiP)Q&isT(P_hMoED^z}L|4(6*|<)20~P2AZW7obxe=Cx$E zd$FL}!G8o0s(}J26L>GfOzFNCLTuB`7LgCv_&BF%37);q%}$dSUB#FNPDXkPvhiFl;iYSic2}?aAu8}_0YahL#6Kcrj3OHtv9w8cFjnBQGJgqG zonaJW7*oIkyDJaQzKBZD?5E&RcZnVK5_v=$2wjJ)&kAM8ekM7L!cfA5AJISs#qcV+ z35K`25YebrPl7=uM#k4eBFu{|Mw2te)LxGQk2nr5Miblya<3ML1oElE))bob3K$_N|!miyb52x`Wr%RB#BY_+%SZykVNXW$qB}&?%75qu~IL-dRC9I0jLRQ?P z`#8CL(j=>SJS83PU`Tl+72Y*e#yg0M6#h_ZSn)gDxke#cU_a=t&QAE(*?t-|AP~9; zRiOKdqge@NkfoL}DCRT`1zG8po0SA=V7#a&iFkv*a`;CNt5~Pgq>!^{+_v43m2}1S z1>%bNe3!fkvc6}Ns$NX|v+hq-twt=3uuV4MWFFQd1znz*L}R5^Sh#0I9LQBtha=wZ zs!Hm*5skqs0}y{BXM$Y=P}$I(1Qy;$fLJoQY}*~7$vFG8Kq03_y}ljOU1cB zT&iI9>F`G;8KG3qao(0ivRq?IU(wNv^=wrIy?C4APU;79xk&IU%|`s*~|obb%oDCy&rR z`tL1DBi0ngRFPB*)u*3f77rp4NR+B-bsCm)Zcp9NgMHGRApl7dx*%w!zW)rXn8;x^ zN}LOU6NJFIFu#kV$ELX+;1$iLLp))!9R)mYESa{hX0qCDi&=AU3=P-ba=YBny*MMi zUdrd{k$6d3tV_LQ$jN~H@7eHwCSB+$kj-TQgtk`W3@+eJfJnv@9QU}q^do?5m6zqn zHoj!wwH_hVmkDQ}wib~AADYd5m~DzlNf129L-WQ3opFHy@PjM zLH9o#+jef)290gowr$&1W7}zy#%OFdwi>6g+4y&x_IaM~djElUt+VdkGqds8d-lvZ z_ndoXIC6+<`#m~xNaB?;+s9`Yia>g>K(Fe)*rDs|-tALsEO5mrvb=#%Yq@RHj_P*n zA`{RMxbWJ{QKC?KuexUKNqhwEU3?LvSpiqrCml#fxwIjRRDD+Uj z#XI_JLCg1wRP=*t)YGj{DdTx+nD4qV=_Xd(>Dhdw6sNBehxpD?43iS}DZp`mjJPo= zD0QA16gij)G$H9>T&|3fsCC>9o)3%gYTQC@r?T%i{|9JhPV48GudEQwzdYnZVls|Z zgG^4)bfpp{l{2z(2BmS31-opHg&jXg4K~OK@!x67T7d6JH)w%V1b8*$Q5Zyc#i&7Y z*V@e_+Ei*Yj_4y`^0;tvhttLDBWbod(wnMR+-j1wpuA3n#&8 z6pEVz#9dqsS{kMI3NHlL$}_irmg5agRTOGh;(9FqbQA@c=ncMA6MnNH1~9bD7Ly4^Uy2VKS}+cWubdj&A6fid8D7 zPqQrbV)bno#bTi~(g5A0N=e#A3#YP_Ts5#P^93KHC{*P<)aH=kB#p&(ad2G^skU$T z49qi~g1@XhQf{UmmrTy}JXmU8Il|3i_K^It<@4=_G;Gh*-sQrtqR%=|?CXgxWkSu= znUT=}h9Qmx0{3%9*cfL@Q|H$4W$uID2R=u%iW|-~!8m-Y$*(`c6yPkAA)S#c*@daQ z{t}g>s0FtT8AO^Q$ABcH&@7Q*9kabb_FU>fzYARF0lK%VEP)V~HxUXoNR(?+mJJqs z3dV827|=@xJLxcC3GSPcAx#ztfhz2Pd2Oc&e4SGm)xla7pkl69v;AoMRkcPm${Wwv zFM928P~c;eo-R_(=#R(Es|oN15tZa{pK3{%;1!$njX@e|*Vj^KbFgkxb|`wt&uy7O z1QQaMvCmE9i@yd#;`ga) zuZ@)W{^%(uK_CGU9l#IrO0K_kF-B#R87>}`->thaXH=%vn!N+_F>jZH2R|hx&j`&OQ=nRAMxN!RGgBw23u5%f*FUgOImCK1yB$1xzZcZ3ABaogN98@F>(z}Te zT$3}%t(a|vk|8oB^;uSOcl1Gb?Nn*x;N|CxdlolBXjcUISQ;sV04l|nKoslJg&)E9;%hw}p*e&BH+$Yh1zLG7;xL+mkJ>k1_ zQ^kFTwk7C3aLhEoxMQ~I;@WpNR^Ifn6Nih0VCp^tSGh#XrVsN`=ks(Q8F@Bw>E0Ws zBi>I?%NiZvJ(sc3+(5t%8O^mx3PjUQpE4j0n2m!R#iK(HT~he8(gMm9^M&K%CkC<5 zkRg%MA}%3OMmC=s&j_;mD^h3cxwQ-koqS3M@%GO?e)!_Y>1D{a}IQ%5`<4;dt~bV%9*a0ex{ z%$PEr)}bE|Nr_;dGsckQW8&#lel%}lkl7Qh)e`L#Y)gA8p)r7pE+R*^@SKIqE+v#j z|Kb~z&W?}9*b>j_k!vE6lAD)XGpOM-%8=O(5B{i;?6|s;lCxd$vqL5YKzVQDkuuW0P>(Aes28RECC;&KjWJN z>PmF=YWqUUhXiZNkyIueoyUb z^g2%!(*Ae^J_o2Pjby+jln)!g!t#Cux828-{PF87)b_k}`C2yGye43pY+M{`0|So` zwZlailb3<#h+H!q(}^BI?pv5fx8JHy^wl}Q(1Hz;a~->kii&yAKE^H~ha*Be%S`uZ z%dzk~qhhx-2I29yQ%+jJ95E71a&U8YU1+I2$NA4w5>NGdQcT3R24RA$6IMINl%VHW z(zmUk8YF1>gpK2oTPa6Nh)q?dw@msh+TW!L87mIve}s@IV7#H zA?tgqk&WToIl`x?R+aTbK0Fmo`WXp1LSo)*oIA0(wIC^{YknNB6eQyI1VTi5EehX1 zy!(yw!UcBk+hu8haY|ptui@IvZ@>jMX_Ot{@6{c?kLZliN}zpI+4nK8zZcYXW{04?!Nle5t~qhD4#j`~E+Gc3KgG#lnp*uh+KgXbvI zyvdkw855l@6dA-Vq}kkGx3PmD63CJ`lrRQ9i!w#EUYNKQyg`48AY>M^WC~kKRg2~O zq-&pr^emz}wM*Oj6Z?Yi} zB+c=9zlI4%4YWkVGA((IXg26gfV?z6G)b}@m)N>b7*7t=6x@+f!g3x=uAqoZ&0K;M zyiZ!IL(isM!@PC|&Q%`uxvkFD>3)ncoGihXTz~zCK&QMGLi2D#hfNm0 zpWDrihHM5#O$kVo47xmck{hAMBI!R-rMzpl;0Y@8pM&$Tj(bGF!_*ik$SIZO`#KA` z^lNY2znaHj-oYr(iVBAMR>hr;>GErTSv%c7&1>3e+IWk8dqGmHR2M>d8@($-embSsxAT8Ydpf&1_g{V; zGooP(WTN@p&?ViFv~kGfOBZ@Yzwei4Nt@%}MMHQSMtX*adDIl#T}26%RY`1f9ZVQ* znI??LT&wb+)n#0_^WZ-n#RuPU|2$viO$@$Pm~)?Wz8>j4WO;k6Z|7xdts5x>J+gkL z`|OleSoO1XUo{!Vc&(Lg3>uSaQ?8+^6L!Qm9uKVQiqwjsyfXCn{@Jh|9NS#UMd1D= z%pu6C(l&)#*n=v3?nfh)WYKawUa{n#-y;`9jidtQ&XM*Peg!$?9kson$#6Hz>%uE^ zIB7)YA}7G-*W!p7IBusksZ0fVLmtM7v+R0&iG(u6V20dLu7o?ZkH{774?^3a!0SZ^ zW$IJ7+^&wx`{GcF-XG*=Q6LJsN}BPRr@;hSkNOL^dKI&;NftqS9oGeBNPbg4TSVQZ7iIZec56Y znUtm>&lp!J7(G8p&w85bI?a{$cbH=P7~){T40S4S=fE8&t{8j{7oC`!_k^@4Q8q=9 zKkaWl#kmD*l>OT`kuFGVA5^i1Fp=Gx}@H1|kv>N%oVAf&B$$}}5283$WzQ^&p zzl=0p(Si3pChk{u|5rRT^_oxgqGXR$ISGj2td)5)7eWsDK`7C&1{K zkHly9YC9vZ?;}#JU#*N(Lj|qwtxop@tg}{lVIi0-2vm`+R4CNP8rXPgiblGJ`%yK6 zU>SN4K2n&xkaS0YRhQ0FwXyG@&>y3)f;iSA>t2w4Y^t$UhC-H66ci?}SfIr%Tk^He z(*M4x7jLCmda{hjS!TgDPeC8F2C};9The}7{MM!PN~}ZGRW^}R=**SQ*vE|Kg=46C z07?B#H%;*+-!VUTF0aH-3NRil0T6_|zG+&_>tbbk@Xo1!?C8MVEK{!!kbATrOICNb z^v-t3KC}PuYo|fB+B?~Y;J}UU+hq)IA?>eqC75&!(Ryy-)v3y61LY9DVh}TP)iOPM zZ@u7qGY$q1stwkFvH50fmknY&d*fiwHpKqeeP5$2?e!%Cu1(fhQ|6X5=a0`0XY?S> zo7)aOtE7>LW>Ixcw7KdDHOb~9OVZXpKKMapt3S`lHNSIr-Iy8s&vR$p1lgavakF!N zixt8=7UQS6YPfwUc!D*)!*d7BhK5OHnzXu@j5|jzZZW2 z-5Gl^v2IO6Z4UT}6fI%pLxvjU*Y|a%TdiBv1XO-lS`lzv5G^21T}8b}i0+Kc6Hh4qPJOGjh3E&aY6|Yx|$0 zao}IwPEjcD()GYs9~GC;}DMz)myL=4&sc#DiSX>xEV(I zV2nN0@NEprQ3CZGOAyZaH)aIFv_^D zNTDmf;$cUyea4`151^Qa?Ymlk?AtsAuqCOMpQy#l!R zDfnBu5Yd%P6A_h*=V7iMhAjMJK=88+1LvniD~};ja0spYy`Y8EE zqT_uJb-#*CznaJA``sV9>=ik$>Fx2%-cG*j`T4eQKX1c7ZNvBZ_U``tb?;YS*Xz~w z>5Ko<7XKRj8`4A%v0pp?!`0Sd*(ASzyRYBFMOvKy+w0vVapz{vcjR^W=d0VrjoePZ z=gYg>wD10J7x?Q>kE5gE)p>b*n;XDY$T~WnulTy2PWP*6uaD)4H#+a*_+M^EUqbis zyPkdxt;Tivz2*^j`AkB;^&zip#lty)1+#%3)p%DB7W#2^T+3WN$b%+Map?*~fBT`w z6%{Cak|?U0SGO6Nh2YFK$lOAs>5Y|?^P8=+F`|&KDE-T2h1xO*3vk&jLG2_o8sQL2 zG4!($haBi0o8x#2#-K5y#C*S0I32l$;Kt^gU#R`4Hqy8s7*$fu!n!dd@5N<_wXfT3 z+bcA?zYHPnL(q9`-<`P}lJtI+D?Usb{%na#i*B;%k!)O zB~aM2MkwDszi*TAZwA`YsARn>3sg~$B8)|Yag~p2O}(+MM;H7V5<xjp;|FqXxqv&O6PGd8c$HcC$f)u)JqCBf@GJjc;k5}grXm} zA&n_~(;g9}(qOB`Eh610%)+k^0onlL#x<0iTADL_LW|tUMt(u-fj#}>cauN=8jtXI zs$hKcdq?Bxntkz}=ztAByhK|SM@MK;X0sl<0}Wyl4?JdnZ7z#%VaxT`<5YMh+PmlW z#yDwso?pxdhC)2_L^E0FJhPln$9wmXJTvys$e*!Uw@A38JhqaYCc3C*qMKt4gfF9_ zV?8pW9V}hHt=mW56h>vKwj|45*7+QRepVwbIilC1+g?}T|{ggEBx9F ziXLQ$LSn(CLDaxqT%TNrQRI^UP$GexDV33zUap(Wc+>oQiZtp+j8b81b>@xMDG80S zzrrbPrj|DPWe;gOVoqHS?q+@Z3X8cpWTx|Wm=#uBh!wV}MpD)|LLd#=d0Zx6)1Lck zbGh5Ffc1W`mHG7CO1#DAc_s+yzA_mFrh1%G&dSyt$O2KJA_S2Vh%Tt zs6qM{OWvK)0`gZ)CNvOwk;eYTPaaxwG|{PjOd{7)&OO&RG1b-KCCAM~sdm8Isj@lL zz(2(zjT-61|Kfm~b|S#+jcFWZnbXV+tDYIr@?q|bc7a22kc=-u43{h5ecHf1|2J*u$Q26-i|fl5qkQfwz0mWi z3R=FPI-Y?PV;t5#k46PRj7GBL;(nO`ozgTu7%M-EA`xUjJ9~g z$kK|yLC7B~lcBXUgrfC)Rz}0r6~VTpl4hLoOO=D4%VsUwrNY^%9j+7B z5NEU-I3DCDkf;~mycmZI&F*zfpRmJ&wu=}{;Ayo?h`G!rWi_K3Y~6jHJ1NyHnwAyd zI(0o=rwd;r2p~ycV=+A|)r@I7blv#{=Qm51*R)vbAy9Fe0)=TXKj-EDSV{F7em|tT z@#6GkRP=jjHLbeq`EiT>{_Sn3ZP(}i=JMtH$?4nk!?FDLN&Z>t*OcnlXBYqd>#prf ze{XLp{!ZWh*Wc=?p8hwZpDC8wC*-?)w?@;5H3^?_RUh}`x;o{b+Ty-%box9yrf&we zD;SiJe9sm_orPUQ3U&eY7EI?S7du|y6iri-jY2)K#xnT`AtUy+=H3L63)$P?qiL@O zAU|B>m^IoyA2aZd2=gbQNnl6>t~+bw9xRw6q8il3e7t~yZ1xi%=sO%(?_(h7Twdu2 zEZBxUp2FvkXeRy46fR)%-tl%=UQ1NVkGrP9JV-AyH6nHoS<#vdt-W zhY18Df<0u*`?|75gRxwC@RlS+O)do`-ruC~;T+LiglA{z!W6`+pzY8#;lR%xA%kY$Ww=oy*xEMsRZBH4KRn!@yYveH%*SN+G~(c{$D`xub(J zhz*2`njuX}$rzF=0lgJw;=RK$7P zu8JN$3B)BgK!#CEQo#%RgG%sS_Dxosp&MQWWNr5$6b^C@*hjOT0Ofut5o%bLA1g@0 zusrn1$huKIItgls70)OJ8P|^y0gtkD8*@QNCCmO8^0VUT*=mQO^Mj|9PX@Qbho^GRY$<#Mq=RQswal zl@4S_jD;*|nI{$5EDqRdtN>j3sUkq&mnbEno$io9kRaiSb^dTiA60y zR$;`2rcQ9GV6qMJxHJY6ui{Kf&JHV)S6_VrKM2y(0R3WN+i#0oT5r=?p*zruX9FcGorU-ZlPLV;`bf9dQv zJYrv8P00`3xUoGeU_rhmAT=EJVmI8iSxivlSS7(>hqM2%Npv_03#TkXafOfn3I$VDh6U%T^!$iwixz-nV`|Q_4S2YLe+l|32g@Xr z1c78EHYoi)KpEOlX~o}&Kn`+8Z1JZ1x484Lu@|;#hSD}uU&NSOtliSbucBaE3PM7{ z_7rkDMFIv_2I>d<)E1N?OQmB{eb-kwb74M;z}*3$agNj{t>H8j;7!Sh;Kt{kKp|Lk zR7oB6*ygR|NU0e|vb`NmzSZS_m*9mCTxaaWutpFfPj`2XX5OR*lW^4!u~pc7B1}(f zorW`trCT>ii9+3^7z#N-rI4HY%p}5Kd`{#*Jo^&0YRDHt?!KsMIzepPI_3dVSur5r zRO@u^p+#)Tq^DPgIiUPg?1i)uxGnt$zqF4yoey8FuW!%-!fE_?ym( zVRZM3=j(B+z&S43u~17`spitOVb8A3uMvJ3V56pv!)jp^6mPVzAuR5AK(%vc$FWvf zV4o*DQ=#l~#yk`&?R^SSV*~dC)A?7WGWaIA24UCTGOT?cSdMi@gKz%V`0bL6ZPD(`ntyBZPF+K-wEK~kNuk=S+gf$Y z{U%&KAoJ-}iJZGrHf|nLHJ;_uSWv@MgAA>Goy6dCyMz?I!lNTHs1GQZSZL~mRe&~Pmm>4BT08ZDj^@|GC$>(HjyAK!@O)=e{anYl7dx=&F4c7( z4>xSmd9`LlI`aL|okJ_U=tJ6025R8$A;s6wbCq!A?s=R{C-%@0WUxh#>N}IoD-n~0%PDH)78!F5V61a>+jhQa1mE_F?2BnZg=#j;!m9+1F!&~7ZwCC0_cqmfuDSQf7qb}8~~1g6eoc5AH~Q303Lta85se<;~&igMD-t<8NkT=ADRWg z_y_qPeT-}X;PH=U2Qae#hvon<{>Ks{CjfZ-44)VP ztbaKESH%dddRP3vDkfkRSS!{40!K}|Lf-eas)sxV`^vaVgZEzpTN&>5Tbiu?l(Ri$7L$(IB^y)FfyLea+2l0Cvb;a^=b&`Xmu#RK z%K$^Fu>E(VIDdy?%Z2lNYqX+`rlvQh!kBPTFC zg@dCL?`9-$?A+w|KL8CDUer6kx1og;<;=bt!r?jnD;%;}fBq~(ts?x+iE*OyuU=%+ zarhYWs{+y=V-fhmGs@aeh?LCxopRK3@4VY#AYp3SPi*o6CYr@Ug71#n{jAJG?o8UZ ze=i|Ae)r=85B!w?hxzVZvtza2D?)#YBz3aLA8Xr#Igc&=O*wy@C?+|Zn=}V}(@`p* ze22<@Haoet*hDNDT6pj$Xg`~!`8PfZs4N!?ss6K7k_SGa34BvP^pCQ-ao)$4>y}e< zr2^W23Z^GN07}9BSDu=L1{9+y70~@_p8~f3-}2;SQP}>w?o$VUKcf2Pm(Ty8O-u%3 zegE4dU+#C)j_hss%XG zULSVz|H(aFIcL>xnK`10|Ba{bL(9P4b@0&AGt6I+`(OJ|hj$|`h(9U*flbNVIlSvT zD2x5$TL0&^D`yYaryd{0C&>RYbb<5`I5z&x82+;#lYttszgOOqI)eCqcmH7dbeksb zuekS>b2md=vD>fr4z_WY_lrGM^S({}hllrp6XgdtFd>lNmB;=}$TObZPio`)*8{_o zwTIUQroQj3tH9Ptfsdel|FJwgiTrMo$qgy_BB2wL#@#Z$k>RnokxTHdpJ_5lNP?9w`g_%FZnb>P$=v(1j| zen{EtM7yc~!udH5-0{R1;~i78BfVej&%s0^^8Xe4Nf^=IhwIN~Y<}^kydhfq_c`fu zNAHAm5PZHdfz8yoe((tj2BM#`$P0tfo`V5e{WJ0cSH^i_80_n10?cTWa4 z<^3Jx+8};6OHtA2a@z$rHoy#7~Q_|oc=k+kVK)`pj zefUZf$O8Y;&Peo2#1=QihwLhQrcL*kk5l!vv=o|4iW5Pcyk({{^0CIAZ((JU$H9II zZfsG`G2v^`>%$UP?ENB7B9Vtb`~7vr*{t_{gZWp&0N5*@uSc5<=Xqf(+avyvFYQ=m zNN-9gKStZC7qMhtk=?G^={-5sJ#$*wZr5i02B|kMuEr)fB7^*hCgl>V`rh0KZprT+ zBFW;6e@xJrGky3Ivl=bwGcf-Pj>4j8*S*fLuWe-`P0H7g zJWF4na6&sK&cjSr6`PsehC+#-Qd-8a;>QH6j(?J4@}+oRUc1xlk5MzW1`;qdzAm(= ze{sUT4Vhm#pu2!)Bu;rVT$a}1L6N5?y6oc9&Nw$!bNxEiVxKE+uq95Oh%0ZKlU3Xs z?u_mCYLU|3w#mRd;5y0pP%V3eZm)>0VhL^UNqmw^us)s=QFJe%J1a_v^Y9@NSM^<$_*_>W{~31u%F{sf<=ju|$@GaH&0K2#&0JQEe6Fna zU%UiEzj`V+62k&&=3*x1YsrJpZ;#5$Cd^pI1XC&Ig_wW~QadN9{LbgPcNS-U18zv* z56-Z~$2E%2TG(C>HEj9A{uLVyd6LfaS5|*}4V>GE_r%sPOFq}48sj~4kzovvww&o8 zNyg>;LW?A|j|T74!$ez`|8@=WvvAMKE4I07l2nSb9k_?{M*Hlk{QBD1C#?FfCcRjL-Wbwmwu5wUH@(;p&zX{xSu$aD+dw4CKYv-)fNw2Bsf zAX}3&udi^iONJs>i}U+yjg?nGsEZG=DL-kI-CYxDVcZ7#LVx+h%)k8;d|ZSY@dnFw zg8E!V{yaqYQ}NypWNmWh-FNZHYJPs?i3WWq2|q)_V4Ous-pYnrQAJ{eL91`_JoSdS zpZjRd$~Ys3BRmx(CwNP^O>%5#Z950F$eEAc6~xuB^AnrZm(S#%-ENo!x$t_Ac!98m zdD>lyor%?~OS3m{mnwQ?V%E(eyyibr!>xbwmTLQ+rZ1E*Hf;T#@q?YuJbtF*8((t5 zdea3x`QTl1yeGg6cKAlm3^Wl#=`p)|8Z!!UGviqM=X$v${wk~8hbwB2QBO1d1G+tV&q>B4ZX3qgdC5)CCgp$ zV;6rdkH$XxEJ_hOp~hX*^o$*l9D;Xz?9v1|5#X)3cE=;m%##$`!cvpNr&Mges^w7J zV~55Le1grIj~~PP@}ANhz;jL++e$b(k+93jvr<=!l>uq@`A@Es?x$&?-gqnt5kPgY zXt$|MV=&*f*6&K{^?SRagSLGrr;mCPW)ySpd05!-+mku?8kr~T0G@RC{8ao^T;Ft#dPR8J%j!vljHAtcyFo-vW!N>cQ2;hHur5Q&gpP%!3Sc=iERe5GXRQwnKgY| z@g>1)tq)nkZ_c5qSXF)rZ&L}u056TB^=lfP5EC_t_erX3wKGq;uR6~*5kCu)NVd_Z zR-mw76uk*kU}Mj19V2y|%o?=%^_FyXswX%HYN(tQaJRQoE@77Pw+lMQpFE4k`#v-| zn@zO`P3|$+C~a7(5o^hTW@{}rW)b6#6ZKFdQm*n3v$~8;CSY# z>Lz`9!8YNNu@=8+f1j}!IrM3BOYW#4&r1|N=M2)5s2ak(|z-=iGf?ogPz(gR01q8Av zWg4nz+W7aV3U@=+@F~FNS;zCC75=T{-P|3}oKkx&v&%suYd97J|A;xmA_N6vKBSj} zDNEog-_62eRj28I-R}N4!t`phNh?^Qrr_TYxwZMNZ{t>5r{i)ZZ@75?JmzEeGLLRO zFIFsq`V4N!{lF&2MI4@_S+B2uYdchlGG~R(;wNf~{*`vG_glZ~yxvGZ9o0g?+#9t* zTw!~P);U&1)x)Y7;h#Pq>Wz_DHacWm3wOcqG)TG3LYB-`@WWk@++TyJJSIqS>!!H;~a`WwJbLH_e^j?LZ0 zks)kHh*)qF0q!NalBt>beOptvL2S3vFsW@*`zt*db@S)97uUntZ8sd6hk+()8h>Yo zjr=_KXFe?i(E?bb*#UDgagg-R4^ssc2RpT20T)2X1o~a{D_(+d>8k1N}v-p zP5&m2zqjA|Y>Pt|Bj*?Jj-YuMZ8y}PAH4dxPfTnf8(5u4pF9rY%Wb?~-QC8>-@ z$c@jrsugkiqBG(AaBA+^sZer zyR^Bj*zKWAhg4&-RK%;*XxMGl6Z!a=OAWp0^7y^kcI+Q>ZSA`YN}q$1c$3%f{W-4; zbU+dLtzWL(F+4%GKw(FKI3&{wKFjvaGl&@OAtBHba?) z<^48bgd;jQCNJaE#kdz~^E0o&-_GT0h?5JRFDXko*t>Xy@GnW7vHS2sOf=Q+d6_kp zoOe#3bH`9--g1X{x=STn?;8k(T@O&RV$-xu?`F<|5a8k>(`(lZZ3xbHt<#{=y!)PQ zcWnojIINphM`*LTNujDr&m&S-je8h7_qG zb4+aj7JA=W!VL58^(-;om2*9^rKg%NU0hNMh|df5R0~6E-ki%>p9Prj0u94g%y!bf zLtmCyiJCkjJQU9QzyKAkFKh8PTGMR}d6j@y()&7&6+D-6Q&>vcO@*j*K}D`y-*0kAT>t%aBTns)JmIrPDE>CtDc z4x2~ueNo8RZFlS0g_Lo`lwI)E5zc*KM<2znx1?2HVniwYRI3#iUSs zy0>PsgMErI0bAdM&DetR+a7Rga0_V}w{N)mftF6^tHtyiW@unvKp0USA~lxBzoZ7x z8>j-e*I~RljRdGmha+~ZjDHC)issi{gYa3LnuM>x$*pj5_peD$3W7cu=F9KNN23gu zYVPir58R3vk7N^ojED@#!=XsJ*FP7}qIP<(qMD*^tR{ zg!1SKimsrUr$H!e7C#o8)=c(b7rlE2rrslu;H5Q8#m#06D-e(l^IP_p30nF&r1+O4 z(Gy%6)`8-D>zKz)VdvB9QUB8&^Mn0|&9802YgAiM@D}LhhBIll@juzRz|pIa4^&yT z^pX4N+2CFc9L3F)Qa|TX1iRIl@!YgS*GtQtaasu@Yc2XQUA5_~mInIePD0GhM-I4f zLFZ-#p^ptiun~35*Xrxzw9|HL%zbnQf7fIbFEexJX7+6f6>-f3iMRfmn-0qKMN}QS zZCP{-GTbwdgY*sZg$MuluG_J9w1F_bBBa3Q&5S5m#5d#`a&l9K?vgwZjEK)cG&n40 ztyK)^eT?atOfBbz!?a^V)8e8_adc7>1bVrgtJ`s8x?|veb3WTy{Ow~_NmEw&46;R z>lW4KyA#00UH9xj81Ot5sJz~t301*u5_mBn(W^T3i>UQ=A_&9M!EzckI9f>B47lB0 zM}zUsciGe1hpyEiHHa4;Y=`#L(5bhbx}sgWtpjdHYPDtfo$LiQ&`@NuVzM z)1Y6681W2TLGBEl(#KH&UbQn0DWER6<4;T^kdzg}h^14bdT}`~Ggn~3-?^~QvBR_6 zC($20**3*FGhrVn;GaAcGzDhx2@$-(HRD*X^1Lo_?0z8GWC#OEBm>qU_0a=6n*5T5^gqAI!e?yU# z0gck3VW|OnlMYCt>)Wu;uSJ-~z=m`SNI8wmyWk z-`N66!0VTc2Wr&2u?|6XY1&?iP&(2hn~~DDsngg&OO|s*AmcPKmuZi|&FT<*>poo% zGdWpnvE5wr)O`L{HBtzv7&c)9ej5bbQzzkzIxdQ&z{cPiBxn#eGb)XN@ply+A|neU zJkCxJ=a2MrT!(&bl{Ia*FVUW~$j|&?e!0*$f?6BBujn7I5$F#WKKv}$IgB}%;$v&00*fe~=ty#hsPU;3&6dgO)W?iH^)HKVjE?m}q4 z1A5)8nf{RBkYLw|&g)2RFT_6yhKGdLw4ffi0>`q2G>1_4ICj_%XOfR_V}r179I!bc zH-N_ssP^FhT}c0fuLw%i&txjanp=dJUCN6kw_3jmj=2n)Y%D*V0q?@uVsFxSV;3PJ z*jj=gOu*?ykDUg5(n<;2%B67y7U0I1TnjdLOECIF$juJ}>lYy>>4;lIXH~C<;Zx61 zcfX7mLob3COc5x*cqi<}@->;l6|OE1oX=2jt3uhK^GDqR;#?fvN;j|wT?Er_jNp%O z6|fptM$NfBmpHNDLZyHq+Yje(v78~vjLU3)!%WuN=VWS>u*aj4BQ%MKBtOY8bAFa~o}3Jea9hcpjV zP(0o-aLW==9nrV$>E#|x450Lh7sn8aH$-t`GGX1kE};fC(J#z7TEJXfcMlAr{j&wd zq4|xhIh=KfUM~a;ffO8=7F$J|wSUlFa(;2(*2*>{8@I~`Ver+vdCiTg2;v{_s;!%&+2`If{(8b$0d_`7S1n7z$s~(kNyR{h7b{~ zAo^=OX1t0LHI>Ce8uRav*v`hy=J~Ut2g`#}H$8KQ*Qsz+vngSm`4-1`7V)zA zZw%i%&lUKjLkdp@<0pgzhmZ3_A)R){v3pD6CA#VVWA8nqnv9yZQ4kds6crUgii(1O zfOG*NDAJ`$m8Nv*y(eG+M4EJ|0qMPm8c?d#&>;i}MF=g_5FjD&-B_OYIqUp6KfZI; zI%|FYkh0i&&&-~==GwFG%w3Sj+wcDT)N`KfXQO1J-(q}wrCJut>PV-@F9x__Ena*V zK?e&diTmYwZYlmpx0%@8mDS_33U|KKE)m$o^152qKf&J>j|{6)-7?Oidd>q=)FzuA zj*2+{lP5%HY35Gb*{}p8tb9j@e;nx*YmPPk>j!oqnxt(CsqFpPk0p(ch8`VG1OqMw zv|4!nwl?`)I{o`xr>h=+*B$3}6)Z7J`@S|4xP@~Gv}|a+bar-m`Nuhdr8}V$kZ{+6 zDTKEK1ulB)%C|;Gtw6icj+OgwgSqXQZabD~&83y5#mE?ba%%n+b^a5ncac0nbTfJ( zLR7`sZ1BTxGgpxqAE4)Fey)-w2p&G6CHZ>|U(2BpqU=3g2RZwlP|keYkuOf;<()4t zmFy!k&U-}1Mr+ef2gyl`gHAJktNpv{!}uLN<3>~CV>ib{G&WCqt{QD3>^k^koe&SD$T z&>x**NsM~dY-blNPh}2VHK>6kgng7vY*QKBvv3G8%x7G@t^M@r-`zC_QGSk?07FiXx0*Zti1&V?X(U{eyCl3|x~QNZLt5~W znl#~A<6Yhk?O$Uc5tiVsMda|s6-fnn=cO!}TEtN- z;%&h#IpUAom#e>q)GD@OsFNSx3s2ABbttDb@w`m^te15b(*Ms4z5{eDVgi}*ZwCVN zxQlASZ`|&GqBxZ3y;llKB|E3z(`Img&ZXEXsHD171cl|#9?P}LgRdSY{Y8Z}jMT;8 zr(4K}-YKj`giP-G$}r~!uH6@J>7*r=oWDkpH{b9P8vC@LylehgHS&!^$?_|S`k~2@ z(73JFe+^*>lCypwm>{_7#@66U`kql5b!v1m&Yf?Vl_}`(;$_%)L9J{nW^!p8PbpY$ zR$%_V^1ER9)%6d5C0NBs1wLGNtzm_$C|%>(PQblc)YzZInHHxPrZM`Lwi)#b-JKrN zGkoqGdUy^-F{RscI+$GaV@g1Z^q-I&7RsNLxnKN8egsB7qcSs#@q*H0HoUJ z&-e0z3{2JeyvWo;J|uIUHV7hPRKJ~?4oVBUo>Wlau4!QEZdAWp`7P+t3gMuTS7J7c z&Of<=|7J{+6%}t+eeHCtclKJ9I^Fz0Ci(9vZnF;e-1XPC+oUFu8(xm@+0_)|I z!&5l}fvTs+9|$xAQF6*}4l0oe$Aq74E0ANB8T!eGc@>Lm9p>mRD}?Njy}v;t;dg%1 z1$+fhi6>c{ZT8suaUpQJ54OYm*AV$o)`PMcj&FJ;f_gC}>#Em=qj!L?P-IA!(F;VZ zQ{J|6x`GQL1C1dr5P9DOTz$c_-Fy*@`*bSvPhQU_c+p(PoiBy8Wui+`CzyA-zsFHp zzWl4 zaOWxixMtaW;n=Te#aeW%Hyhg4()_%NvcTnv{RaePf9NWm-aW)m)z<>DD&OXSd&UO& z$MJvsFb#@PC+X$upXucOK>`>OveVIxrsb{j<^K$&+H887rvQpb?66)_tD(vlNfic| zgO<{nxRQHMaCh@TN`4Mh;zxIVil0vfIa!bUe{GW+a7e`Oj3JqB`*sL>yf<4IEKC`5 zcwz?tdp<;Rl}gofNoLsiGl)Y8;f|;gXAaVS#&i0dUh+LsGaB(h`023JBy;z*v_?bm zjpmbdKuz#s^UjmSeiUPp{6%WyA%A3ZWYt5hC$5#`D&$L>mCQPKZS$7oEIq#p;pTtW z0wlaN95Iu=m+hu;16pgUyt@;fA0JtJXds@x;RNustW?&ytY!8i2y<0U!Ku0Z*Y1rK zddes-y5A(BA0a^AD3{>|Um4?YID!lu;&SzezK#*B3MTECsx%N+wgz#u1W|uaNqQY= z2UK7EZ%+3ClG<4~mKb{PVb^xWBAYAKk$asWIBq^a{`Ms`Zs0>5I9bpJxf5{651g*~ z=lsebxfS-qK(t7b#-w=ZP9p=s&HEf+9|bDQUK^cH=C(5$Zr3H*7KK=ep_~bVpQjB}+0;12 z?n3f;(xDXh#^hX@A-nJPLjsrce+y|nam|_hlgye-Zt9;5Rq*}s|b?y%MKBBi_rVwoT3-iiJ7iyj~hqE0TB$eE9I4WPU^zc>} zksFw3^Fzj0bEqkb-3>42N&CI@yoR6YN3*YgB5P?Fkx`;#_q-4vRh8t@m9Miaz%%mj zd#}*@iKX7PP=O28nVdVbZj6ra}##@EhwdzB|!bN*xlmh zM!^1nWTFBIR^W?GUoNEmf#xMlO0X7wT|_9&BQx&^;`)hy{`Qm8DY>+B1#8rQ)}aKt zW3QyM{}0eunp72-Rx^-|>=T?@OZ1qVM2~YOixwN6>9MbT+~*XR22ox4hF7s0`KZBna%J*XKK;+Q*3C!ser4|eF}X-tmnLr1 z(Nq0!I%3y0Uj%Gwld$dhcthx!m==4h-UR#K(1p>Z?KzfAB>eM^JvMDo_o`C-3mwr@5JWC!XD1S*3_INjBC>4s59boHQ}kJoH6!^BghROs zxQmX`egxzs!mK4s(;f#aAP|zm+?)or91Mrr zl&CRlLsWKewi|=KC7hPGA?IO`spgIRpx#N4nruti+}ojlknY5&^EF{QiV(KX@n6IF zm#bc>x^l43wZ}qV!cVo7und^djv3uvxZ!h5QRG&q@~OUt7FfHf!=$#96s2;b)?=i< zWJvlZP#Cd*kD5J{@rqx1RsD<>3H=3M(JMZu!E<@j0p(uVn{DuOsm`fWn7U= zb&3r)OVL45laiC5@@Ut`Y90~#(uJp4s}x&0z-tjM&FreJ=`@3f+KQ`+e}h~`Hq=Iy zT>NUPRpRce=&BnFgpE~v9)a&*M<7wMefLaV7f$-SwQ))*?Oe(FITGV{Oyrt{&Oo2e zjjw-cu~xhn`7W#Hk~sj&od%&iejZa>p?%gPFIJ2lLSnipPI-HZyaJ2^+RIm4>5lVLYNKMRH5aB@>~rN@;2oto$NWS&bWfkW`!N4JM-6KOKI*& zO-p}-vfi%@>;4#q9zLMM-tzuW6b$FTsG-q;D8^1PmmGe{Hg>Ga$*>_$DbW^Bzlwi% z`lnACl+`o&4p!9dNM;&;fmfv3gJ;USXyYhuUJ{5tkZe-_r<1Ml-ZU({LN1@*P*nd(t3URBm+8TKy{pG35$W^MnB<=PnunX??! zQcfJT*(VCr@%38i)!XF8fNx(R+&yGGxIEGB{o%QMF)4aLx1KvpDD@RklF5fsIQZg{ z)ol>Y>Kq5+#zn8%-6dwz^bVd(oO`9GXBnn4aXz?T4kRa^t$LSp?5NXCLo%|#l6_%De`rsS6ewTGe8d^#@zMcXyUB)Qlmq2B(*uZ#7lrmgm^Gj3hqo+~9VtOWA!|z@a%I z`Q>H+Iiz?m-=EeiDQz^aQB!~9c-jnBpUr# zQLs(iBYA9_XdDK1ocGmHe@m1yxpwx1Ki~EaFTC`j@x9tB3Ek{JQq=9b{7~Y3^HwE~ z$Mn(RVWi#`?OUy=yI#lQFB>164p45iss!KVyFhX1t3kJEyno<=dsd^wAcXq^qq(b? zibmWOUifLaT1mEnhh68VpehK^;3#CP!riqXC*x`@r_)%oE9-Z}ySoO`4yQ2P!}k0_ zUSR9LXu66y&kHB}Wv#=mQ1_9DID{=;oVrPEQ+IQ@gLg^$%yYxkf~$M)S|3nvy1ag= z7;Ryyu+LKk67*vE8!^MXJB!+3B?EJchv#)N@{YrjQ?ti*cDOaTVa~`Izl&its`q5y z_(Lh6?>z&Jpq~XW=!Q#G1+%<=w{HwlkMy7ZrZ%Oq$)eQJv;Ld{va!A4CK~ihy?#tB z?~mm~zW^<{q)Svr5_TLesU!1!|D6D#dur0`iBA%=M<51$LIrCsTN0%{VLg$3d`kzkP&n-P^_LWnljx#kV5Bk7n910>BAaL_J!z&)oTyKr`BR zB~j$4{6qSyil#chKE|-R6BRx}S4Gm$Tc`H2izDIgyw1vhW!M(Yminwn{dq$_XPv~* z==Xh&>}E}>Q5h)07B09V8F@3{3PiF%>67FzAGMypw?|qT*ygY9ziSAcY5N8Yy{r!z zBoO0h2Snf7v*YOVzBM1_LKUYeuVy@IM!e%c+tI&TmgN6xFTKco{Xc`>c`g4uvmPd? zpoIm4gnPTPZ`pJT(axZU!1S(&clsdzswQkh; zy3kMn{WosSbDrftc$9T|vVCsiW8Oqm$O2QND*)?Zu(gsglCv?*#jbSd1 z=Pcg~sQ~ezK0T+uD){_5uc`ie`_j+cu+%!u<*<^i&2Rhj`gR}L%q4FRJXfi=!kxIj z^daNTNMTbxwzVjwd@vs&WlY=opA~?b6zmRoW;g7&f1k|sf z>-}?;PV2vu_zuQ9>Ci6CpBlz<26f047&X5sG?ZcatBM^6id*Qozu|vfs*grvgo&_b zVinj@y%)$a@eT3uoi**#r5g{zzMq)%6O&oXbCr6f!64s(Q z)wmn~HOsrUa;Hx5+s6w}IMNt~8uK%{tipwq2jr3jIF9)7ns>s!>!#d+gbzzo;or~0 zsMi}DCO7w9jwFf={K-jGB*v|-+%mmx@THOD9mhi@obBj!!IuOUy+fI;__BG4fbRl; zf3+j(b#ZeYmmUk5CT-yM&Gs^O)XIug{+h)NLbx-7w-*3}a>k?ZWu{<;0A zvP)&e=5rNgSo4WVLZK9p(c{Pxm5_-DgN9!57CUUv1g7?HjUJff#@KVfwyNFW-f5Mg zn&d+l?ZY?WcV$fdtbb`anAj4uGd5|1)o;#Y>XN)cOTGd18A->J6V`8+s)GI|cJ(Pl zq?voq5;d}DvBYukr`S>Y9HJcWZ8Pod)xVqgK3<38nvv{HsZc1Z@$+9^2b&!T%y_hg1jH4Y14_W6eR+U3b70aw=RI=zN~7kh z^sP|9q}wi;$&GO}8@~32wXa>WCd>>c?r1r>N|m%07y_r`GyG4nK1|CLkDoYrf~GW% z*pa=Zi*TJKCqKNOn$;6lz6%+Lj06kui4T%%5_CUOJdyaZ&W7*ip?URGWK~yr+yQNv zsnk@brC(d!zB+8Lm-?ja$5-y3@QY8J&aqgLncSCs69bh-ub~E8i;Szip5dp>qU?je zu60v;xTXc6Y$tR4O4)dDks(!%{!*p%?WFg;Z$`VF zOK720XId3Qn;(IK+zYk7a&j!ZZ9dgAKkq)Q4>aRu1wr*nD$pM1C_PHtq2;&$~7Da=t68`~el_kLztJzjHviaT?inp};G@4`HT3hvRM>_t-N zuI8B1=S!N<y=N|jSSRKWO9KxTM@iZIpijxStoGaC0-M)ck<*!YS3Hc{`{j;C6<2h)U?%U4R*KUJ1+EVUgm~1knuTP)7{1C{@q{+3Eka2#u zJH&(go{fh|USw6gcQ~QFEax)Wj~25EfX7xIePt9IzZc?uHl$*{BZ7*@`$L&-ghR9* zhJy06QfTw|hZ>8tO6cVRY~J+B#gWWvMyWO)jdaPZ*q zG3=Vols#i%B{UsM$#HPjh*!Ml20!OowzHvn@uvQc(cb2o{QD(Q8qri%y{VsmBIDuAHJP$d;=D=bH`UpV6Bj@G zTL7lTVv4IjPM((x8m`vedaLBP&-hMPN0iiXnRsW4KdVR-+L0re)MQy@;X%5(UU#jd;r*iNkj@lVky;(;OVF4bQK)X`+BM*ln|z?^O)2SlMa`( z()BhGG;+A zUYav&;@A3zF}jRC2jZG;!T6g~nm|llfY^I}CK^Wi9i5lb7u~BY64C{P6DBnzF9q2v zZ|BC;#pW2HF%_mo)4pd(hn&Ui7d@2vxl5H7CWm07GmSyIV?v}S+G-TTJuuMYUh|cT zKpy1xAH{Ww% z{lfp9x9d;2iY`vdFM$55`(7K-X0VShl8@73wOW@0`^KM#>*@%Q3}m<*EJb54dBeZI z$voYoxI}f) zpOI*hJv!^dPBwKFxcG#+gc0e{Oqf-{fegiJO_fN%#^JyicRQSL$d!@{ogIyo)G6&2 zAgJ-`Nod;#tLt_nyw+BO^+HokMY*X5hPWfsDO}5nO$fD7k~#g+`rvD?kF=!Yp$1K_ zPkuIVi*O59ztZ-}T+r)1S%k|1r@Y90*+r+;I><6c$V_Xl>gd_+tMUP6~(5+5nL01#}>k59n*(?k@70Pt2N9<+})ym1E zHflV8lMxP%8`z33iuhUP*2O(Ge_+r&{K;)$5JAqMJFWgbefudt`lk5Or#wC*G79Cz zd9p45EtNqVZuDF)1neQt zh+|r5KPEft?&y?mY^Q$a3v<4C!LnjCg6IokQOiv=s(^>wXMjHcMFjtI{lLbo5)WF6 z$5vyuy{=@`Ia_=+S-rn-flBoFWnn=yBz&kQy&Cvj_NjWv!Rxg4HS$rA8r@}Hz6-ZD zcYr4fIp<4RdaS!rbmdf$b$7#oH|=$0LT{AR#a~ZTEG&qE80mi#2unsDQ5M`O>vXc!79VA(F=SQ))pUV}oMV)@o|`xYIJC?l!tUlRJEj#QeAT-VLmlCw_<Jj$`2D;<-iyeJ^boh}g9xk@H|A*2b-lO!ncOWtVdVR>gIL_oU52%f z1)gB$!h-BesueEES^N@xfjpzTav+h+Jo;K`icU1QJDd6|H@z3B22{(Je=pOCU|~+Z zwfd1u7th_`sZAZdN~@6N&88}3V(5e0(avNT!p|IjYU}^G=BX8uH#~9j7$6S7QP^R_ z-W_jD^x~MKa(#}8XllX3*1Gj242)VpE#19R@-fK7DM-Eis%e>Nuh}Z&g*0PelNK=> zymO}>9>EU9yWyO;lMi|c396|Hy07+yDacEnEdy8 zi-!$e@Y|2Ok5qaOTkUZP4KFTmLv&m}ITZ~cu)$5HGamgZW;1M$HCoOrc#c*PfNMp6 zGTZ-&#^d z%1yG{WWnm=-=HD_>Tzw|@Is5G&J3?!3`WvS4|(*9_3^W0fm zg6lwEn-zyF&F@iTh=|pEa;L@~g@z1=uO0A#?V8N7(h79gL+xFcK*;*1oq=;r&#;bF ztM3DB#Z1H2b#3lZU3d;isgK{8zgu{AtnL_XbkzB%@#d4n(+Xc5$w8Ns@(+NKUF%-t zoR6U`f|}u)XFNL-?Y6JjJT!VywM705C@I?!y?Qw24j7G=7SQsEKL{_rl9|fUg(%j3 zgsg{=uJ$&m90|Pj>7X1f)F45v_Qm9JnAU8L!&auzp;zWfsXQ#JT`a9dtoOy9U&=2{w6Rj|@q*LsM1$F25H?!SE8SOL`!$|+{MrnG^)vetA-SNMiazGrPvUwfXDZbARL^ZaXD^ShhS@7^;1pSG>}+iK_k zao3vP-F%eaxY*q0|4%ob|7l}06`W+Cl>&mKLd(ycJO2e-@G#ci!nO4}`GEhY%kEKM zE=Tn%3_<3XdeXu#d~SYlf%E1KqYvzwV2V>-3I6r`Zv#3 zlJi$2H^jhwq8PIO^Y4G71>UshsII3%9uz%~p#MGXLqTT4)KwJu$q%_?VDaC-#Hpe$ z{r-kDR84X6jnpv?`}-IDp#SqHfFb_>W|sn0)sY+)MXmwUv%k0Tf5U%YqPCW!=Z9!| z&G(!W@>M~@ee27e#m6dO@BDdHaeC6sYf&uw@nm%EbYxcQELS!P`e=FK_qx~niyJ%Y zV%|wBuQoj%IU;!$#6>XQlvRQs;B4q-qFelqJj|Te&*Xlj1peILIT4k@tdX;alnAdn z+8&UW&+38n#JD689tl*l7?FPaskC-ds+C7DnAul-^hG|pGkvRWX;LE9IlKLk`rOHy z)Ut3dNAI0Sak!9H+XQiUR`0V9O13^X@vz-0Ax+?(;~vo{5L=$hsXRrxPVbcO=f@X0 zFi&naGr1(}MHnHQ)>YAab%5z^YuCRnX;qnO)_@`h9jf|zwDDaevyKb&x8Chc*Bc=X zK*UWJhLi~A*H(*?7=|Qpn-(qyBg+eg3A{z0A|rd0xTs_XfV~yY~aVetcj51kyzN+ed&yf(^7gcst-f=-BZIQA5TT;X{H#wRA6+Vwi z*F%2p*%uRAk{4cKIFN5^Z};*ArzX7L9j)el;lpZ=Lo+E_n$ctwKqOO&hCrg~$G<#D z^YcaM%Iy+bOClb5)#xO`HT4^xDa0vP1Q#8u-^$37+^$FZcx~%g)cZgkB2-dLVyYqn z5`6T(to#~6S_9+jC9TcA#R6aKE!xTrf6p+ukLw&Q%S~)~n)6;9BKLAN2hS(_oSWw>f{G(1!8b-!3Je`?EZ0jWj~^gR#g7kOv(`)6nte-fM^C#TiyeUN z&Nsu?+$@;6V_DuzX`nN`k5k}HkmQebE#d#la-4wUV~pkV(XV7R;f%FVl|&V9cy26( z??tTp9*_6YywXdzHSVuQBnwpd7@^l&PKz*3wdDj4lI*_3MwMNL8~BU6-8?nRf_j-7z>vRXw>(#N`vu3PrC zVqFT0WILa7TFvHrCsC)$EUL@J)wr<3AjxUYah7p+!VIhlU5)LPy(A3rgV`Q;G?ash zhvjgzDGFrhX-k|mesQ8-j9z{11>+$FmIT*8mzq&_?ODXf0Y!;`Rq9iq_X;Myxi``3 znW==F=-yi@Xwh;k?nhAx7ESPGrGzy)rRl+r!7y8pM3b$<9(Jb-_%uT-mZiv1&U!4` zY+~R<;KAt%PMPW(xg&Yr9BpQWlSNABA-{gy5ulEPMkq<_s;aDcZdhS^(u*7z z$G5xS`bNm=g%Pm6Hzx`My%$XiA1>^GA=*$3WMpcbVQyt%HP=;eJ2sW$qeg)-2Rt9H z;;;hJnW^6#t?{lEt1ZD;2TVSE~Vb3t5 z8kaUUE?y)fd+-5y5vxIZY-I6x<#V=kRw#R2e5Qkg+^WhQMuuoBcZg%5`{Gei$p#uX zXP9JEQ*p2w;sNDG88=oVt3|r;U>9@ZsE9>3-U1ED?Jz~fKSb3tq8d&9ICWZ9 z+)nXa4EFvDxUVWvV;5VYun5yrG{^g#SN2gv9vqcTEPqHcZnSJMc0hZsgoh!f%C-)~ zlgx=!fJu9S`3r~^;dXwe?k>b6B}UW{e$Es{=_6-td6KB5J^|QVq!paCwbUNGPBCY$ zwHUKvo1lTm_KvTrL@@B?mM!HJn058}N$QHbSnZ(KjgEV!FCr#kvq;n{b0Sv2oVbH6 zClx1@ld|m1eVjZpVFbLrN9Ll0LN=3wF&WwSFIDc-D->BwxAa0ZlTtsWs_BU?h-&0j zf{ANVc}2QWNollQeKg^A;^0zb*|GTs0fa6;LR1SwDrOVlfC`xPuUse*lAXN^5e}b@ zoFI+k@2|@<^^{>uzd4Xpg!Gj z$Oykiu=-XTLCW$O1y-obu{YYo?Ttx*y9ppSE)*j5p3B%^2W(@*+t#OOXB=Pbky-3% z>(lrLxt>?#7{)2U&4O$*<&mid?TTtY?+sR03oIL&v?BXcpIbXjH61KibTlq@CXF7= z`q&(g|Lk2&B|s`1pd2U%L(oeYI&Nzm-&YQHckyxX$h?FZ$JZ_aOv?X=c^aA%qluP`9>2o+vAQP8@&scV8~s`Yd`kA4ZjBwT*Y_SCWml;}N=B-A)nOo1 zm8~&;9DjX79(yp34=^Xnb;n_kyR=~&qbI@hA^mMUqk1job&KU(aN*?3HI%-p=bmKf zX|#NdC=fTpeT)I{z3?E?aH zDNbjv$Y+HZPa>e=CGaWTemf~`=EOAxeh~yCYWg8cU@FoZ(NIpR5?q(ZhBh(*A*H=< zqNWki1()l>U$~#`tXk~=4UwMWvS`?Sqqx7Lc*6{pL@6Ta(Q!RuLyxpn%|jg7Eh;CW zn9PY6E6j-=m@YiULufnO1-v39%)p2T66vS z66)4`_C$VQyQcMoQY@jPqq+g+H}z7a1cK8qfOuh7jWimdu6HhZj-Kv|30q&bhNp{4WIse6{3rvEgm_|O zoF%#e=U1Y)yJMq6nwuDDYOvpBMZY2ytR{hp@5|xwrYI<~el`IWCk_MWiEHRQhDo$A zxNau^8LzM0=u&?!Rsq1R0f8Ll`j#$ zZAKKQDLn2jDge}vg8I%!L5(EzVa6^nTj!Jqv1jhbhl6!p?Xl zeE1GCN|Nq`x~mm#3T0?=T&QeoW|uje_(l@LHCnyl9$_seh`rxAI<{9rYT45!9Zn#Q z_r`b*pd}tLShQ_Cwjj~m2cy6bpNgDV7{{Xk6-cqy!|h7k0My(JAD#}kL+HRx&Jq4r zvmtVMx|-`Lf|?m$(%pncR#7PWm+rA&vn8I?OG-BGR*_DeGwS$&&;~l{!W^#_K#w;{ zz(;=0*9c3V#Mk%`6(hF+nkL^Z zKghux3wUA9%bX~}BjFR(Q`IZ3;fH*PO6q_edk+B9niID>V7y*(E9JnKMpmJXGAyzS z?{{78ZxqT<8LKPa&k%EwTgf#)N9V6y;{fd~ElJBN*cxTOJ)jzRrMEaD+`)URxSN@X z4|sX(Gou4m$T*rlAX*+YQDzh`<6qi_wq`|ptIbHyv2Q4=K_&Cv z(sUL_unEH*F)PM~$F-fjzU%3{!rgcl-#ldX@n(L=Vi*3HFrfjcRl`~}W{N@q@h=Gj zcZzFlBzVZJ*wAmtgL9sHWV*}#T`!Ddq<1NmvjVkSPR5i}2?iF*E`>M)E#& z=VJUu?V$*|_VpZ^=kd`7kTzUi8aHfGRwSViaoC**yJKWm2h5mnV;m0z^2DS^W@AG$ zQyyv%2swdi$3L+qm^Bd$c~9wROMGCN2Jig|q;L93`N6#1oyS{464pop;axX`ghePr zW)CS#0Dq)Q-rqw=-~xaxq(PbcR0I1btOGNyZ)M8!shf(d!pOqG3NX%W~HxwRhI&C)d6oOk?q$Y>-d2F#x@vuaS0ai(pNJI z{MgV55l$d!rUjHpWNp*u4Si(-Kiqw%CBiyhT|IYo{~d;v)Njj+| z0P0-G!|Uvw@|G(U`(NLh5%KQH+%M0uP+ejNsIW8A6fL>uND`oQ2bk~&aRl6N3|K-^ z!J^m}RJIg8Yz_#&96sEQnTjM#d3j_Ct47tDmVG#gs>kt6_D!48WT%j1E={ zuKt}_-9wJKxv^^1n9jd91pk&|bC}wO*WJ zSx(my%2Lj)(*DhQv`5Z6i>*L>#ark-0Ua3cV;H=`_V`CUj~Ej0h5`UN;6$dp5Wp>q zYimzZ%$`{ts~do7=1oAv{oOGeE&4po^7~XQS{!ztNoAM7K5}f7PR}51p{mfzBCz9f zT{`#;vT^1&B1s_iU>?c$h907HBw?h_UI2L1vF8qZD7N`~zHT5LV7~LpzFuoj1IcvivY7) z0@zyx#7*7OINk!;2*hy+V750#zyI9=0dfaBp6_ys&N zjnHsgV}Ny`0wK1{X4e+Y36&^QkIy$#x8U>yfPx#=&(s%U4+iFkvlR^ zky$fV6=$F+pl>wg0pu~=GK&p>rc~&y%cpqQ`osf5Gol~|QGo5#VZ4$sc!uo;kVL1A zBJ2P@`S(!s{lB(9H1^61^HEqvb+D^*p%6F$BA>p+i@4GDk`?uxZaaCbnwK`#X9_WK zEd_6wivf9>M=1NWi)-kEPsnKT3O0N=09eaSZY6IT$SK^bOnEd9AEKz9z`$Q<4HGsL z0N{-}XN>4Nmp!g@FC$d;KomKhZS*=pR1#e7R*tiB`w;L1BR9`6hPbVRv9v6Ae&tiP zOj`PC3+%d89Cj+)?s%oy6eWO;6!Wkp_S!(L9qf&Lu8U$=54|lN~v#;nOq| z)Q?aqEC#zFHWedlfJdKDnUlyp!o>3)Z4CnFHo#Hp0Ncik!AQtjQ&a^&5noR;<>k=D zV}oc<{PFsJ;Awz<#%@;Gb-qM=-E4B?Q~-zgXhqmtZCJ2uzYdS+vXMhehK6b`7>$U0 z`(g{^>=WExOV;HDxcG0?OD;*?Ao;xF6B?`q(}Bv z@orZk3#pz9Oe;}4FCN?j$}vA(H@DFD8P;dV{n zqcW@qH`tbVRNMg@6N|9h@RnQo+yTRIp>|J>oQchJ4FQ?pbF!;@_pL7pvQ-$8=5?p?#_EcD&c^?0zd$q zb9HV2r@}Q~K2~z-JaXWVfWmm^8i%WMYvM7+ntpwtVbx%Lm(&d~XL+3lPPr z%`w!gT5wCAxbPE?jzGHg@!=j@R*!So#vo3Oq};!}pf>`U*LRBEOHK^R?Fl{CWny zc8%(4xzud`8VUlA^ufRx$O9~>er)w^oSa5I)+4p_+F<3epNkOjh^cq7dj2H+(~?dD z7XfJxo8!Oh321!i&6vgxOus`R(iOCj9Ec zi^dj&Q&zQs-;JVV+5+vfe7yl~fnUU@0Mlz%9^?q!dc)WzF@i4+-)UOvL*%e)E$py8$DFsj8*704}}$^|2(TLKZE_ zzDuZPm7Z8d`+0~O>Q;r*=w;r ztBglWKOTB8(AELPAsvu6>3}A@s_$c&&55+-=Zu9;qZ~Ljn5jiFT}xavSGf zZgdPMs*bmgZ5N<97RVzhfIoDQssw_p9hfiB9~f!6yMOM~#9}Fn_esja#V3Y+HDH73 z8K~yfe&?KhSe>1HSS!l_lI+j8K+=`l9BKq!u6lJW)7{>_1n%aC?IBeS1;OB6rTBL6 zyAMqSSK#4&j3MjA?m6he=QOhyqU_k%ZH8zEKIoKk8X8@eh`Vk* z72n9_)-kETU(|~Q@P87&M+7R1uUA(ozXkcF#(;)z$+v6l53mE%>E8Bznj!=wdrrqb z*Vch@U-k=u>#2|z(ym9y|cl~7_*4yE}5)9Snv^sU(>FQ2#PTB&E|CP033vj zmB%|hMU;SF$Qp}vyXU=Grvw`-f&|3kD!@GV4?DxP&nN#Jf-K%k03?&BuZ8QuHc*G# z@Fe3pOQ5bdjjOH?1oZ{`J)3Y?xlb%T56pPsO5;vy%-OuCI}T(e

MiSq)VW(qPZJ7NRkesY4!}$|%?DQ3 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 literal 0 HcmV?d00001 diff --git a/docs/posters/ESHG_2019.svg b/docs/posters/ESHG_2019.svg new file mode 100644 index 0000000000..3aaf7052f5 --- /dev/null +++ b/docs/posters/ESHG_2019.svg @@ -0,0 +1,5580 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + Analysis of genome sequencing data with a minimal investment IT-infrastructure Johannes Alneberg1,*, Maxime Ulysse Garcia2, Alexander Peltzer3, Tobias Koch3, Martin Proks4, Andreas Wilm5, Philip A Ewels6,* 1. School of Engineering Sciences in Chemistry, Biotechnology and Health, Royal Institute of Technology KTH, Sweden2. Department of Oncology, Karolinska Institute, Stockholm, Sweden3. Quantitative Biology Center (QBiC), University of Tübingen, Tübingen, Germany4. University of Southern Denmark, Odense, Denmark5. A*STAR Genome Institute of Singapore, Bioinformatics Core Unit, Singapore, Singapore6. Department of Biochemistry and Biophysics, Stockholm University, Stockholm, Sweden* National Genomics Infrastructure Stockholm, Science for Life Laboratory + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + This work was supported by the AWS Cloud Credits for Research program in the form of a computational credit grant received by Philip A Ewels. + + + + + + + + + + + + + + 30X Human Genome:Storage: $2.43Compute: $46.42 + NextFlow has native support for major cloud providers, including AWS Batch. Sarek is a whole genome sequencing analysis pipeline implemented in NextFlow. + + + + + + + fastq + + + + bam + + + + + vcf + + + + + vcf + + + + + vcf + + + + + Based on GATK Best Practices Preprocessing + + + + + HaplotypeCaller, Strelka2, Manta Variant Calling + + snpEff, VEP + + snpEff, VEP Annotation + + + + Reports + + + + + + + + + + + + + + + + + + + + + + Analysis steps + + $ aws batch create-compute-environment --region eu-west-1 \--compute-environment-name $COMPUTE_ENV \--compute-resources type=SPOT,instanceTypes="m5d",bidPercentage=50$ aws batch create-job-queue --region eu-west-1 --job-queue-name $AWS_QUEUE \--compute-environment-order "order=1,computeEnvironment=$COMPUTE_ENV"$ nextflow run Sarek/main.nf -profile awsbatch --awsqueue $AWS_QUEUE + Commands outline + While large high-performance computing might be already available to larger research groups, especially smaller research groups would greatly benefit from a publicly accessible commercial alternative.Cloud computing offers a complete computational infrastructure without upfront infrastructure investment. Using Sarek on the AWS cloud infrastructure; mapping, germline variant calling and annotation for a human WGS sample (30X coverage) was performed for less than US-$ 50. Summary + + Beware that storing sensitive data with US companies might be violating GDPR due to the "cloud act". If this is the case, other local cloud providers might be more appropriate. Caveat + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A container (Amazon machine image) was constructed to automatically mount the physical ssd drives. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + To scale storage space with instance size, m5d instances with physical ssd storage were used. + + + + + + + AWS Batch executes batch jobs much like a HPC scheduler. + The analysis finishes in roughly 30 hours. + + + + + diff --git a/docs/reference.md b/docs/reference.md index eb77557ddc..0dc33be6a5 100644 --- a/docs/reference.md +++ b/docs/reference.md @@ -9,7 +9,7 @@ Settings in `igenomes.config` can be tailored to your needs. ### Intervals -To speed up the variant calling processes, the reference is chopped into smaller pieces. +To speed up some preprocessing and variant calling processes, the reference is chopped into smaller pieces. The intervals are chromosomes cut at their centromeres (so each chromosome arm processed separately) also additional unassigned contigs. We are ignoring the hs37d5 contig that contains concatenated decoy sequences. Parts of preprocessing and variant calling are done by this intervals, and the different resulting files are then merged. diff --git a/main.nf b/main.nf index 7bff7070ea..724f49b0bb 100644 --- a/main.nf +++ b/main.nf @@ -222,7 +222,8 @@ if (params.email) { summary['MultiQC maxsize'] = params.maxMultiqcEmailFileSize } log.info summary.collect { k,v -> "${k.padRight(18)}: $v" }.join("\n") -log.info "\033[2m----------------------------------------------------\033[0m" +if (params.monochrome_logs) log.info "----------------------------------------------------" +else log.info "\033[2m----------------------------------------------------\033[0m" // Check the hostnames against configured profiles checkHostname() @@ -405,6 +406,8 @@ fastQCReport = fastQCReport.dump(tag:'FastQC') // STEP 1: MAPPING READS TO REFERENCE GENOME WITH BWA MEM process MapReads { + label 'max_cpus' + tag {idPatient + "-" + idRun} input: @@ -454,6 +457,8 @@ bamMapped = bamMapped.dump(tag:'Mapped BAM') // QC process BamQCmapped { + label 'max_memory' + tag {idPatient + "-" + idSample} publishDir "${params.outdir}/Reports/${idSample}/bamQC", mode: params.publishDirMode @@ -501,6 +506,8 @@ singleBam = singleBam.dump(tag:'Single BAM') // STEP 1.5: MERGING BAM FROM MULTIPLE LANES process MergeBamMapped { + label 'singleCPUmem_x_task' + tag {idPatient + "-" + idSample} input: @@ -524,6 +531,8 @@ mergedBam = mergedBam.dump(tag:'BAMs for MD') // STEP 2: MARKING DUPLICATES process MarkDuplicates { + label 'singleCPUmem_x_task' + tag {idPatient + "-" + idSample} publishDir params.outdir, mode: params.publishDirMode, @@ -565,6 +574,8 @@ bamBaseRecalibrator = bamMD.combine(intBaseRecalibrator) // STEP 3: CREATING RECALIBRATION TABLES process BaseRecalibrator { + label 'max_memory' + tag {idPatient + "-" + idSample + "-" + intervalBed} input: @@ -606,6 +617,8 @@ tableGatherBQSRReports = tableGatherBQSRReports.groupTuple(by:[0,1]) // STEP 3.5: MERGING RECALIBRATION TABLES process GatherBQSRReports { + label 'singleCPUmem_2x_task' + tag {idPatient + "-" + idSample} publishDir "${params.outdir}/Preprocessing/${idSample}/DuplicateMarked", mode: params.publishDirMode, overwrite: false @@ -657,6 +670,8 @@ bamApplyBQSR = bamApplyBQSR.combine(intApplyBQSR) // STEP 4: RECALIBRATING process ApplyBQSR { + label 'singleCPUmem_2x_task' + tag {idPatient + "-" + idSample + "-" + intervalBed.baseName} input: @@ -687,6 +702,8 @@ bamMergeBamRecal = bamMergeBamRecal.groupTuple(by:[0,1]) // STEP 4.5: MERGING THE RECALIBRATED BAM FILES process MergeBamRecal { + label 'singleCPUmem_x_task' + tag {idPatient + "-" + idSample} publishDir "${params.outdir}/Preprocessing/${idSample}/Recalibrated", mode: params.publishDirMode @@ -747,6 +764,8 @@ process SamtoolsStats { samtoolsStatsReport = samtoolsStatsReport.dump(tag:'SAMTools') process BamQCrecalibrated { + label 'max_memory' + tag {idPatient + "-" + idSample} publishDir "${params.outdir}/Reports/${idSample}/bamQC", mode: params.publishDirMode @@ -801,6 +820,8 @@ bamHaplotypeCaller = bamRecalAllTemp.combine(intHaplotypeCaller) // STEP GATK HAPLOTYPECALLER.1 process HaplotypeCaller { + label 'singleCPUmem_x2_task' + tag {idSample + "-" + intervalBed.baseName} input: @@ -878,6 +899,9 @@ vcfGenotypeGVCFs = vcfGenotypeGVCFs.groupTuple(by:[0,1,2]) // STEP STRELKA.1 - SINGLE MODE process StrelkaSingle { + label 'max_cpus' + label 'max_memory' + tag {idSample} publishDir "${params.outdir}/VariantCalling/${idSample}/Strelka", mode: params.publishDirMode @@ -924,6 +948,9 @@ vcfStrelkaSingle = vcfStrelkaSingle.dump(tag:'Strelka - Single Mode') // STEP MANTA.1 - SINGLE MODE process MantaSingle { + label 'max_cpus' + label 'max_memory' + tag {idSample} publishDir "${params.outdir}/VariantCalling/${idSample}/Manta", mode: params.publishDirMode @@ -1014,6 +1041,8 @@ bamMpileup = bamMpileup.spread(intMpileup) // STEP GATK MUTECT2 process Mutect2 { + label 'singleCPUmem_x_task' + tag {idSampleTumor + "_vs_" + idSampleNormal + "-" + intervalBed.baseName} input: @@ -1048,6 +1077,8 @@ vcfMuTect2 = vcfMuTect2.groupTuple(by:[0,1,2]) // STEP FREEBAYES process FreeBayes { + label 'singleCPUmem_x_task' + tag {idSampleTumor + "_vs_" + idSampleNormal + "-" + intervalBed.baseName} input: @@ -1119,6 +1150,9 @@ vcfConcatenated = vcfConcatenated.dump(tag:'VCF') // STEP STRELKA.2 - SOMATIC PAIR process Strelka { + label 'max_cpus' + label 'max_memory' + tag {idSampleTumor + "_vs_" + idSampleNormal} publishDir "${params.outdir}/VariantCalling/${idSampleTumor}_vs_${idSampleNormal}/Strelka", mode: params.publishDirMode @@ -1167,6 +1201,9 @@ vcfStrelka = vcfStrelka.dump(tag:'Strelka') // STEP MANTA.2 - SOMATIC PAIR process Manta { + label 'max_cpus' + label 'max_memory' + tag {idSampleTumor + "_vs_" + idSampleNormal} publishDir "${params.outdir}/VariantCalling/${idSampleTumor}_vs_${idSampleNormal}/Manta", mode: params.publishDirMode @@ -1232,6 +1269,9 @@ pairBamStrelkaBP = pairBamStrelkaBP.map { // STEP STRELKA.3 - SOMATIC PAIR - BEST PRACTICES process StrelkaBP { + label 'max_cpus' + label 'max_memory' + tag {idSampleTumor + "_vs_" + idSampleNormal} publishDir "${params.outdir}/VariantCalling/${idSampleTumor}_vs_${idSampleNormal}/Strelka", mode: params.publishDirMode @@ -1283,6 +1323,8 @@ vcfStrelkaBP = vcfStrelkaBP.dump(tag:'Strelka BP') // Run commands and code from Malin Larsson // Based on Jesper Eisfeldt's code process AlleleCounter { + label 'singleCPUmem_2x_task' + tag {idSample} input: @@ -1328,6 +1370,8 @@ alleleCounterOut = alleleCounterOut.map { // R script from Malin Larssons bitbucket repo: // https://bitbucket.org/malinlarsson/somatic_wgs_pipeline process ConvertAlleleCounts { + label 'singleCPUmem_2x_task' + tag {idSampleTumor + "_vs_" + idSampleNormal} publishDir "${params.outdir}/VariantCalling/${idSampleTumor}_vs_${idSampleNormal}/ASCAT", mode: params.publishDirMode @@ -1352,6 +1396,8 @@ process ConvertAlleleCounts { // R scripts from Malin Larssons bitbucket repo: // https://bitbucket.org/malinlarsson/somatic_wgs_pipeline process Ascat { + label 'singleCPUmem_2x_task' + tag {idSampleTumor + "_vs_" + idSampleNormal} publishDir "${params.outdir}/VariantCalling/${idSampleTumor}_vs_${idSampleNormal}/ASCAT", mode: params.publishDirMode @@ -1378,6 +1424,8 @@ ascatOut.dump(tag:'ASCAT') // STEP CONTROLFREEC.1 - MPILEUP process Mpileup { + label 'singleCPUmem_2x_task' + tag {idSample + "-" + intervalBed.baseName} input: @@ -1406,6 +1454,8 @@ mpileupMerge = mpileupMerge.groupTuple(by:[0,1]) // STEP CONTROLFREEC.2 - MERGE MPILEUP process MergeMpileup { + label 'singleCPUmem_x_task' + tag {idSample} publishDir params.outdir, mode: params.publishDirMode, saveAs: { it == "${idSample}.pileup.gz" ? "VariantCalling/${idSample}/mpileup/${it}" : '' } @@ -1449,6 +1499,8 @@ mpileupOut = mpileupOut.map { // STEP CONTROLFREEC.3 - CONTROLFREEC process ControlFREEC { + label 'singleCPUmem_2x_task' + tag {idSampleTumor + "_vs_" + idSampleNormal} publishDir "${params.outdir}/VariantCalling/${idSampleTumor}_vs_${idSampleNormal}/controlFREEC", mode: params.publishDirMode @@ -1513,6 +1565,7 @@ controlFreecOut.dump(tag:'ControlFREEC') // STEP CONTROLFREEC.3 - VISUALIZATION process ControlFreecViz { + label 'singleCPUmem_2x_task' tag {idSampleTumor + "_vs_" + idSampleNormal} @@ -1693,41 +1746,43 @@ vcfVep = vcfVep.map { // STEP SNPEFF process Snpeff { - tag {"${idSample} - ${variantCaller} - ${vcf}"} + label 'singleCPUmem_x_task' - publishDir params.outdir, mode: params.publishDirMode, saveAs: { - if (it == "${reducedVCF}_snpEff.ann.vcf") null - else "Reports/${idSample}/snpEff/${it}" - } + tag {"${idSample} - ${variantCaller} - ${vcf}"} - input: - set variantCaller, idSample, file(vcf) from vcfSnpeff - file dataDir from Channel.value(params.snpEff_cache ? file(params.snpEff_cache) : "null") - val snpeffDb from Channel.value(params.genomes[params.genome].snpeffDb) + publishDir params.outdir, mode: params.publishDirMode, saveAs: { + if (it == "${reducedVCF}_snpEff.ann.vcf") null + else "Reports/${idSample}/snpEff/${it}" + } - output: - set file("${reducedVCF}_snpEff.txt"), file("${reducedVCF}_snpEff.html"), file("${reducedVCF}_snpEff.csv") into snpeffReport - set val("snpEff"), variantCaller, idSample, file("${reducedVCF}_snpEff.ann.vcf") into snpeffVCF + input: + set variantCaller, idSample, file(vcf) from vcfSnpeff + file dataDir from Channel.value(params.snpEff_cache ? file(params.snpEff_cache) : "null") + val snpeffDb from Channel.value(params.genomes[params.genome].snpeffDb) - when: 'snpeff' in tools || 'merge' in tools + output: + set file("${reducedVCF}_snpEff.txt"), file("${reducedVCF}_snpEff.html"), file("${reducedVCF}_snpEff.csv") into snpeffReport + set val("snpEff"), variantCaller, idSample, file("${reducedVCF}_snpEff.ann.vcf") into snpeffVCF - script: - reducedVCF = reduceVCF(vcf) - cache = (params.snpEff_cache && params.annotation_cache) ? "-dataDir \${PWD}/${dataDir}" : "" - """ - snpEff -Xmx${task.memory.toGiga()}g \ - ${snpeffDb} \ - -csvStats ${reducedVCF}_snpEff.csv \ - -nodownload \ - ${cache} \ - -canon \ - -v \ - ${vcf} \ - > ${reducedVCF}_snpEff.ann.vcf - - mv snpEff_summary.html ${reducedVCF}_snpEff.html - mv ${reducedVCF}_snpEff.genes.txt ${reducedVCF}_snpEff.txt - """ + when: 'snpeff' in tools || 'merge' in tools + + script: + reducedVCF = reduceVCF(vcf) + cache = (params.snpEff_cache && params.annotation_cache) ? "-dataDir \${PWD}/${dataDir}" : "" + """ + snpEff -Xmx${task.memory.toGiga()}g \ + ${snpeffDb} \ + -csvStats ${reducedVCF}_snpEff.csv \ + -nodownload \ + ${cache} \ + -canon \ + -v \ + ${vcf} \ + > ${reducedVCF}_snpEff.ann.vcf + + mv snpEff_summary.html ${reducedVCF}_snpEff.html + mv ${reducedVCF}_snpEff.genes.txt ${reducedVCF}_snpEff.txt + """ } snpeffReport = snpeffReport.dump(tag:'snpEff report') @@ -1748,60 +1803,60 @@ if ('merge' in tools) { // STEP VEP process VEP { - tag {"${idSample} - ${variantCaller} - ${vcf}"} - - publishDir params.outdir, mode: params.publishDirMode, saveAs: { - if (it == "${reducedVCF}_VEP.summary.html") "Reports/${idSample}/VEP/${it}" - else null - } - - input: - set annotator, variantCaller, idSample, file(vcf), file(idx) from vcfVep - file dataDir from Channel.value(params.vep_cache ? file(params.vep_cache) : "null") - val cache_version from Channel.value(params.genomes[params.genome].vepCacheVersion) - set file(cadd_WG_SNVs), file(cadd_WG_SNVs_tbi), file(cadd_InDels), file(cadd_InDels_tbi) from Channel.value([ - params.cadd_WG_SNVs ? file(params.cadd_WG_SNVs) : "null", - params.cadd_WG_SNVs_tbi ? file(params.cadd_WG_SNVs_tbi) : "null", - params.cadd_InDels ? file(params.cadd_InDels) : "null", - params.cadd_InDels_tbi ? file(params.cadd_InDels_tbi) : "null" - ]) - - output: - set finalAnnotator, variantCaller, idSample, file("${reducedVCF}_VEP.ann.vcf") into vepVCF - file("${reducedVCF}_VEP.summary.html") into vepReport - - when: 'vep' in tools || 'merge' in tools - - script: - reducedVCF = reduceVCF(vcf) - finalAnnotator = annotator == "snpEff" ? 'merge' : 'VEP' - genome = params.genome == 'smallGRCh37' ? 'GRCh37' : params.genome - dir_cache = (params.vep_cache && params.annotation_cache) ? " \${PWD}/${dataDir}" : "/.vep" - cadd = (params.cadd_cache && params.cadd_WG_SNVs && params.cadd_InDels) ? "--plugin CADD,whole_genome_SNVs.tsv.gz,InDels.tsv.gz" : "" - genesplicer = params.genesplicer ? "--plugin GeneSplicer,/opt/conda/envs/sarek-2.5dev/bin/genesplicer,/opt/conda/envs/sarek-2.5dev/share/genesplicer-1.0-1/human,context=200,tmpdir=\$PWD/${reducedVCF}" : "--offline" - """ - mkdir ${reducedVCF} - - vep \ - -i ${vcf} \ - -o ${reducedVCF}_VEP.ann.vcf \ - --assembly ${genome} \ - ${cadd} \ - ${genesplicer} \ - --cache \ - --cache_version ${cache_version} \ - --dir_cache ${dir_cache} \ - --everything \ - --filter_common \ - --fork ${task.cpus} \ - --format vcf \ - --per_gene \ - --stats_file ${reducedVCF}_VEP.summary.html \ - --total_length \ - --vcf - - rm -rf ${reducedVCF} - """ + tag {"${idSample} - ${variantCaller} - ${vcf}"} + + publishDir params.outdir, mode: params.publishDirMode, saveAs: { + if (it == "${reducedVCF}_VEP.summary.html") "Reports/${idSample}/VEP/${it}" + else null + } + + input: + set annotator, variantCaller, idSample, file(vcf), file(idx) from vcfVep + file dataDir from Channel.value(params.vep_cache ? file(params.vep_cache) : "null") + val cache_version from Channel.value(params.genomes[params.genome].vepCacheVersion) + set file(cadd_WG_SNVs), file(cadd_WG_SNVs_tbi), file(cadd_InDels), file(cadd_InDels_tbi) from Channel.value([ + params.cadd_WG_SNVs ? file(params.cadd_WG_SNVs) : "null", + params.cadd_WG_SNVs_tbi ? file(params.cadd_WG_SNVs_tbi) : "null", + params.cadd_InDels ? file(params.cadd_InDels) : "null", + params.cadd_InDels_tbi ? file(params.cadd_InDels_tbi) : "null" + ]) + + output: + set finalAnnotator, variantCaller, idSample, file("${reducedVCF}_VEP.ann.vcf") into vepVCF + file("${reducedVCF}_VEP.summary.html") into vepReport + + when: 'vep' in tools || 'merge' in tools + + script: + reducedVCF = reduceVCF(vcf) + finalAnnotator = annotator == "snpEff" ? 'merge' : 'VEP' + genome = params.genome == 'smallGRCh37' ? 'GRCh37' : params.genome + dir_cache = (params.vep_cache && params.annotation_cache) ? " \${PWD}/${dataDir}" : "/.vep" + cadd = (params.cadd_cache && params.cadd_WG_SNVs && params.cadd_InDels) ? "--plugin CADD,whole_genome_SNVs.tsv.gz,InDels.tsv.gz" : "" + genesplicer = params.genesplicer ? "--plugin GeneSplicer,/opt/conda/envs/sarek-2.5dev/bin/genesplicer,/opt/conda/envs/sarek-2.5dev/share/genesplicer-1.0-1/human,context=200,tmpdir=\$PWD/${reducedVCF}" : "--offline" + """ + mkdir ${reducedVCF} + + vep \ + -i ${vcf} \ + -o ${reducedVCF}_VEP.ann.vcf \ + --assembly ${genome} \ + ${cadd} \ + ${genesplicer} \ + --cache \ + --cache_version ${cache_version} \ + --dir_cache ${dir_cache} \ + --everything \ + --filter_common \ + --fork ${task.cpus} \ + --format vcf \ + --per_gene \ + --stats_file ${reducedVCF}_VEP.summary.html \ + --total_length \ + --vcf + + rm -rf ${reducedVCF} + """ } vepReport = vepReport.dump(tag:'VEP') @@ -1811,23 +1866,23 @@ vcfCompressVCF = snpeffVCF.mix(vepVCF) // STEP COMPRESS AND INDEX VCF process CompressVCF { - tag {"${idSample} - ${annotator} - ${vcf}"} + tag {"${idSample} - ${annotator} - ${vcf}"} - publishDir "${params.outdir}/Annotation/${idSample}/${finalAnnotator}", mode: params.publishDirMode + publishDir "${params.outdir}/Annotation/${idSample}/${finalAnnotator}", mode: params.publishDirMode - input: - set annotator, variantCaller, idSample, file(vcf) from vcfCompressVCF + input: + set annotator, variantCaller, idSample, file(vcf) from vcfCompressVCF - output: - set annotator, variantCaller, idSample, file("*.vcf.gz"), file("*.vcf.gz.tbi") into (vcfCompressed, compressVCFOut) + output: + set annotator, variantCaller, idSample, file("*.vcf.gz"), file("*.vcf.gz.tbi") into (vcfCompressed, compressVCFOut) - script: - reducedVCF = reduceVCF(vcf) - finalAnnotator = annotator == "merge" ? "VEP" : annotator - """ - bgzip < ${vcf} > ${vcf}.gz - tabix ${vcf}.gz - """ + script: + reducedVCF = reduceVCF(vcf) + finalAnnotator = annotator == "merge" ? "VEP" : annotator + """ + bgzip < ${vcf} > ${vcf}.gz + tabix ${vcf}.gz + """ } compressVCFOut.dump(tag:'VCF') @@ -2021,12 +2076,12 @@ def nfcoreHeader() { ${c_blue} |\\ | |__ __ / ` / \\ |__) |__ ${c_yellow}} {${c_reset} ${c_blue} | \\| | \\__, \\__/ | \\ |___ ${c_green}\\`-._,-`-,${c_reset} ${c_green}`._,._,\'${c_reset} - ${c_black} ____ ${c_blue} _____ _ ${c_reset} - ${c_black} .' ${c_green}_${c_black} `. ${c_blue} / ____| | | ${c_reset} - ${c_black} / ${c_green}|\\${c_white}`-_${c_black} \\ ${c_blue} | (___ ___ _ __ __ | | __ ${c_reset} - ${c_black} | ${c_green}| \\ ${c_white}`-${c_black}| ${c_blue} \\___ \\/__ \\| ´__/ _\\| |/ / ${c_reset} - ${c_black} \\ ${c_green}| \\ ${c_black}/ ${c_blue} ____) | __ | | | __| < ${c_reset} - ${c_black} `${c_green}|${c_black}____${c_green}\\${c_black}' ${c_blue} |_____/\\____|_| \\__/|_|\\_\\ ${c_reset} + ${c_white} ____ ${c_blue} _____ _ ${c_reset} + ${c_white} .' _ `. ${c_blue} / ____| | | ${c_reset} + ${c_white} / ${c_green}|\\${c_white}`-_${c_white} \\ ${c_blue} | (___ ___ _ __ __ | | __ ${c_reset} + ${c_white} | ${c_green}| \\ ${c_white}`-${c_white}| ${c_blue} \\___ \\/__ \\| ´__/ _\\| |/ / ${c_reset} + ${c_white} \\ ${c_green}| \\ ${c_white}/ ${c_blue} ____) | __ | | | __| < ${c_reset} + ${c_white} `${c_green}|${c_white}____${c_green}\\${c_white}' ${c_blue} |_____/\\____|_| \\__/|_|\\_\\ ${c_reset} ${c_purple} nf-core/sarek v${workflow.manifest.version}${c_reset} ${c_dim}----------------------------------------------------${c_reset} diff --git a/nextflow.config b/nextflow.config index 833a55d974..d5689a380f 100644 --- a/nextflow.config +++ b/nextflow.config @@ -38,16 +38,6 @@ params { // Developmental code should specify :dev process.container = 'nfcore/sarek:dev' -process { - withName:Snpeff { - container = {(params.annotation_cache && params.snpEff_cache) ? 'nfcore/sarek:dev' : "nfcore/sareksnpeff:dev.${params.genome}"} - } - - withName:VEP { - container = {(params.annotation_cache && params.vep_cache) ? 'nfcore/sarek:dev' : "nfcore/sarekvep:dev.${params.genome}"} - } -} - // Load base.config by default for all pipelines includeConfig 'conf/base.config' @@ -60,7 +50,11 @@ try { profiles { awsbatch { includeConfig 'conf/awsbatch.config' } - conda { process.conda = "$baseDir/environment.yml" } + conda { + docker.enabled = false + process.conda = "$baseDir/environment.yml" + singularity.enabled = false + } debug { process.beforeScript = 'echo $HOSTNAME' } docker { docker { @@ -68,8 +62,12 @@ profiles { fixOwnership = true runOptions = "-u \$(id -u):\$(id -g)" } + singularity.enabled = false + } + singularity { + docker.enabled = false + singularity.enabled = true } - singularity { singularity.enabled = true } test { includeConfig 'conf/test.config' } } @@ -110,33 +108,17 @@ manifest { // Function to ensure that resource requirements don't go beyond // a maximum limit -def check_max(obj, type) { - if(type == 'memory'){ +def check_max(obj) { try { - if(obj.compareTo(params.max_memory as nextflow.util.MemoryUnit) == 1) + if (obj.getClass() == nextflow.util.MemoryUnit && obj.compareTo(params.max_memory as nextflow.util.MemoryUnit) == 1) return params.max_memory as nextflow.util.MemoryUnit - else - return obj - } catch (all) { - println " ### ERROR ### Max memory '${params.max_memory}' is not valid! Using default value: $obj" - return obj - } - } else if(type == 'time'){ - try { - if(obj.compareTo(params.max_time as nextflow.util.Duration) == 1) + else if (obj.getClass() == nextflow.util.Duration && obj.compareTo(params.max_time as nextflow.util.Duration) == 1) return params.max_time as nextflow.util.Duration + else if (obj.getClass() == java.lang.Integer) + return Math.min(obj, params.max_cpus as int) else return obj } catch (all) { - println " ### ERROR ### Max time '${params.max_time}' is not valid! Using default value: $obj" - return obj + println " ### ERROR ### Max params '${params.max_memory}', '${params.max_time}' or '${params.max_cpus}' is not valid! Using default value: $obj" } - } else if(type == 'cpus'){ - try { - return Math.min( obj, params.max_cpus as int ) - } catch (all) { - println " ### ERROR ### Max cpus '${params.max_cpus}' is not valid! Using default value: $obj" - return obj - } - } } diff --git a/scripts/build_reference.sh b/scripts/build_reference.sh index 741a27edb2..99c9f422f2 100755 --- a/scripts/build_reference.sh +++ b/scripts/build_reference.sh @@ -1,6 +1,13 @@ #!/bin/bash set -xeuo pipefail +# This script build small reference for sarek tests +# https://github.com/nf-core/test-datasets/raw/sarek + +usage() { echo "Usage: $0 <-p profile> <-t test> <-v>" 1>&2; exit 1; } + +NXF_SINGULARITY_CACHEDIR=${NXF_SINGULARITY_CACHEDIR:-work/singularity/.} +OFFLINE='' PROFILE=docker TEST=ALL TRAVIS_BUILD_DIR=${TRAVIS_BUILD_DIR:-.} @@ -16,6 +23,10 @@ do shift # past argument shift # past value ;; + --offline) + OFFLINE="--offline" + shift # past value + ;; -p|--profile) PROFILE=$2 shift # past argument @@ -26,6 +37,7 @@ do shift # past value ;; *) # unknown option + usage shift # past argument ;; esac @@ -35,6 +47,6 @@ done if [[ $TEST != ANNOTATESNPEFF ]] && [[ $TEST != ANNOTATEVEP ]] then rm -rf references - nextflow run ${TRAVIS_BUILD_DIR}/build.nf -profile test,${PROFILE} --build --outdir references ${VERBOSE} + nextflow run ${TRAVIS_BUILD_DIR}/build.nf -profile test,${PROFILE} --build --outdir references ${VERBOSE} ${OFFLINE} rm -rf .nextflow* references/pipeline_info work fi diff --git a/scripts/download_docker.sh b/scripts/download_docker.sh deleted file mode 100755 index f8fe108664..0000000000 --- a/scripts/download_docker.sh +++ /dev/null @@ -1,37 +0,0 @@ -#!/bin/bash -set -xeuo pipefail - -TEST=ALL - -while [[ $# -gt 0 ]] -do - key=$1 - case $key in - -t|--test) - TEST=$2 - shift # past argument - shift # past value - ;; - *) # unknown option - shift # past argument - ;; - esac -done - -if [[ ALL,ANNOTATEALL,ANNOTATESNPEFF =~ $TEST ]] -then - docker pull nfcore/sareksnpeff:dev.GRCh37 - docker tag nfcore/sareksnpeff:dev.GRCh37 nfcore/sareksnpeff:dev.smallGRCh37 -fi - -if [[ ALL,ANNOTATEALL,ANNOTATEVEP =~ $TEST ]] -then - docker pull nfcore/sarekvep:dev.GRCh37 - docker tag nfcore/sarekvep:dev.GRCh37 nfcore/sarekvep:dev.smallGRCh37 -fi - -if [[ ANNOTATEALL,ANNOTATEVEP,ANNOTATESNPEFF != $TEST ]] -then - docker pull nfcore/sarek:dev - docker tag nfcore/sarek:dev nfcore/sarek:dev -fi diff --git a/scripts/download_image.sh b/scripts/download_image.sh new file mode 100755 index 0000000000..dd581a8022 --- /dev/null +++ b/scripts/download_image.sh @@ -0,0 +1,73 @@ +#!/bin/bash +set -xeuo pipefail + +# This script download and tag image for sarek tests + +usage() { echo "Usage: $0 <-t test> <-n engine>" 1>&2; exit 1; } + +ENGINE=docker +NXF_SINGULARITY_CACHEDIR=${NXF_SINGULARITY_CACHEDIR:-work/singularity/.} +TEST=ALL + +while [[ $# -gt 0 ]] +do + key=$1 + case $key in + -n|--engine) + ENGINE=$2 + shift # past argument + shift # past value + ;; + -t|--test) + TEST=$2 + shift # past argument + shift # past value + ;; + *) # unknown option + usage + shift # past argument + ;; + esac +done + +if [[ ALL,ANNOTATEALL,ANNOTATESNPEFF =~ $TEST ]] +then + if [[ docker =~ $ENGINE ]] + then + docker pull nfcore/sareksnpeff:dev.GRCh37 + docker tag nfcore/sareksnpeff:dev.GRCh37 nfcore/sareksnpeff:dev.smallGRCh37 + elif [[ singularity =~ $ENGINE ]] + then + mkdir -p work/singularity + singularity build nfcore-sareksnpeff-dev.GRCh37.img docker://nfcore/sareksnpeff:dev.GRCh37 + mv nfcore-sareksnpeff-dev.GRCh37.img ${NXF_SINGULARITY_CACHEDIR}/. + fi +fi + +if [[ ALL,ANNOTATEALL,ANNOTATEVEP =~ $TEST ]] +then + if [[ docker =~ $ENGINE ]] + then + docker pull nfcore/sarekvep:dev.GRCh37 + docker tag nfcore/sarekvep:dev.GRCh37 nfcore/sarekvep:dev.smallGRCh37 + elif [[ singularity =~ $ENGINE ]] + then + mkdir -p work/singularity + singularity build nfcore-sarekvep-dev.GRCh37.img docker://nfcore/sarekvep:dev.GRCh37 + mv nfcore-sarekvep-dev.GRCh37.img ${NXF_SINGULARITY_CACHEDIR}/. + fi +fi + +if [[ ANNOTATEALL,ANNOTATEVEP,ANNOTATESNPEFF != $TEST ]] +then + if [[ docker =~ $ENGINE ]] + then + docker pull nfcore/sarek:dev + docker tag nfcore/sarek:dev nfcore/sarek:dev + elif [[ singularity =~ $ENGINE ]] + then + mkdir -p work/singularity + singularity build nfcore-sarek-dev.img docker://nfcore/sarek:dev + mv nfcore-sarek-dev.img ${NXF_SINGULARITY_CACHEDIR}/. + fi +fi diff --git a/scripts/filter_locifile.py b/scripts/filter_locifile.py new file mode 100644 index 0000000000..6f34f1437e --- /dev/null +++ b/scripts/filter_locifile.py @@ -0,0 +1,25 @@ +#! /usr/bin/env python + +import sys, re, math, random + +#VCF file whould be downloaded from ftp://ftp.1000genomes.ebi.ac.uk/vol1/ftp//release/20130502/ALL.wgs.phase3_shapeit2_mvncall_integrated_v5b.20130502.sites.vcf.gz + +vcffile = "ALL.wgs.phase3_shapeit2_mvncall_integrated_v5b.20130502.sites.vcf" + +outfile = "1000Genomes_20130502_SNP_maf0.3.vcf" +of=open(outfile, 'w') +for line in open(vcffile, 'r'): + line=line.strip() + if not line.startswith("#"): + pma=re.compile('MULTI_ALLELIC') + ma=pma.search(line) + if not (ma): + psnp=re.compile('VT=SNP') + snp=psnp.search(line) + if(snp): + info=line.split("\t")[7] + af_info=info.split(";")[1] + fq=float(af_info.split("=")[1]) + if fq > 0.3: + of.write("%s\t%s\n" %(line.split("\t")[0], line.split("\t")[1])) + diff --git a/scripts/make_snapshot.sh b/scripts/make_snapshot.sh new file mode 100755 index 0000000000..16ae81b5e3 --- /dev/null +++ b/scripts/make_snapshot.sh @@ -0,0 +1,53 @@ +#!/bin/bash +set -euo pipefail + +# This script makes an archive of sarek, with or without configs and test datasets +# https://github.com/nf-core/sarek + +usage() { echo "Usage: $0 <-t> <-c>" 1>&2; exit 1; } + +CONFIGS=false +NAME=sarek-$(git describe --tags --always) +TEST=false + +while [[ $# -gt 0 ]] +do + key="$1" + case $key in + -i|-t|--include-test-data) + TEST=true + shift # past argument + ;; + -c|--include-configs) + CONFIGS=true + shift # past argument + ;; + *) # unknown option + shift # past argument + usage + ;; + esac +done + +if [[ $CONFIGS == true ]] +then + echo "Archiving nf-core/configs" + git submodule add -f https://github.com/nf-core/configs.git configs +fi + +if [[ $TEST == true ]] +then + echo "Archiving nf-core/test-datasets:sarek" + git submodule add -f --branch sarek https://github.com/nf-core/test-datasets.git data +fi + +echo "Archiving nf-core/sarek" + +if [[ $CONFIGS == true ]] || [[ $TEST == true ]] +then + git-archive-all --prefix=${NAME} --force-submodules ${NAME}.tar.gz +else + git archive --format=tar.gz HEAD --prefix=${NAME}/ > ${NAME}.tar.gz +fi + +echo "Wrote ${NAME}.tar.gz" diff --git a/scripts/run_tests.sh b/scripts/run_tests.sh index 8b9c49c4f0..2e04744bfd 100755 --- a/scripts/run_tests.sh +++ b/scripts/run_tests.sh @@ -1,8 +1,15 @@ #!/bin/bash set -xeuo pipefail +# This script run sarek tests +# https://github.com/nf-core/test-datasets/raw/sarek + +usage() { echo "Usage: $0 <-p profile> <-t test> <-c cpus> <-n> <-v>" 1>&2; exit 1; } + CPUS=2 LOGS='' +NXF_SINGULARITY_CACHEDIR=${NXF_SINGULARITY_CACHEDIR:-work/singularity/.} +OFFLINE=false PROFILE=docker TEST=ALL TRAVIS_BUILD_DIR=${TRAVIS_BUILD_DIR:-.} @@ -21,6 +28,10 @@ do LOGS=true shift # past value ;; + --offline) + OFFLINE=true + shift # past value + ;; -p|--profile) PROFILE=$2 shift # past argument @@ -36,6 +47,7 @@ do shift # past value ;; *) # unknown option + usage shift # past argument ;; esac @@ -54,27 +66,50 @@ function run_sarek() { if [[ ALL,GERMLINE =~ $TEST ]] then - rm -rf data - git clone --single-branch --branch sarek https://github.com/nf-core/test-datasets.git data + if [[ $OFFLINE == false ]] + then + rm -rf data + git clone --single-branch --branch sarek https://github.com/nf-core/test-datasets.git data + fi run_sarek --tools=false --sample data/testdata/tiny/normal --noReports run_sarek --tools=false --sample results/Preprocessing/TSV/duplicateMarked.tsv --step recalibrate --noReports - run_sarek --tools HaplotypeCaller,Strelka --sample results/Preprocessing/TSV/recalibrated.tsv --step variantCalling --noReports - rm -rf data/ + run_sarek --tools HaplotypeCaller --sample results/Preprocessing/TSV/recalibrated.tsv --step variantCalling --noReports + if [[ $OFFLINE == false ]] + then + rm -rf data + fi manage_logs fi if [[ ALL,SOMATIC =~ $TEST ]] then - run_sarek --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports + if [[ $OFFLINE == false ]] + then + run_sarek --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports + else + run_sarek --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports --sample data/testdata/tsv/tiny-manta.tsv + fi manage_logs fi if [[ ALL,TARGETED =~ $TEST ]] then - run_sarek --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports --targetBED https://github.com/nf-core/test-datasets/raw/sarek/testdata/target.bed + if [[ $OFFLINE == false ]] + then + run_sarek --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports --targetBED https://github.com/nf-core/test-datasets/raw/sarek/testdata/target.bed + else + run_sarek --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports --sample data/testdata/tsv/tiny-manta.tsv --targetBED data/testdata/target.bed + fi manage_logs fi +if [[ $OFFLINE == false ]] +then + pathToSample="https://github.com/nf-core/test-datasets/raw/sarek/testdata" +else + pathToSample="data/testdata" +fi + if [[ ALL,ANNOTATEALL,ANNOTATESNPEFF,ANNOTATEVEP =~ $TEST ]] then if [[ $TEST = ANNOTATESNPEFF ]] @@ -87,12 +122,17 @@ then then ANNOTATOR=merge,snpEFF,VEP fi - run_sarek --step annotate --tools ${ANNOTATOR} --sample https://github.com/nf-core/test-datasets/raw/sarek/testdata/vcf/Strelka_1234N_variants.vcf.gz --noReports + run_sarek --step annotate --tools ${ANNOTATOR} --sample ${pathToSample}/vcf/Strelka_1234N_variants.vcf.gz --noReports manage_logs fi if [[ MULTIPLE =~ $TEST ]] then - run_sarek --sample https://github.com/nf-core/test-datasets/raw/sarek/testdata/tsv/tiny-multiple-https.tsv --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports + if [[ $OFFLINE == false ]] + then + run_sarek --sample https://github.com/nf-core/test-datasets/raw/sarek/testdata/tsv/tiny-multiple-https.tsv --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports + else + run_sarek --sample data/testdata/tsv/tiny-multiple.tsv --tools FreeBayes,HaplotypeCaller,Manta,Strelka,Mutect2 --noReports + fi manage_logs fi diff --git a/scripts/selectROI.py b/scripts/selectROI.py new file mode 100644 index 0000000000..af2620f88a --- /dev/null +++ b/scripts/selectROI.py @@ -0,0 +1,232 @@ +#!/usr/bin/env python +# +# The MIT License (MIT) +# +# Copyright (c) 2018 Szilveszter Juhos +# the reduce() code shamelessly copied from +# https://github.com/brentp/interlap +# Copyright (c) 2014 Brent S. Pedersen +# +# 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 os +import sys +import copy +import argparse +import subprocess + +def parse_args(): + parser = argparse.ArgumentParser(description='Selecting Region Of Interest from BAM files') + parser.add_argument('-v', help='List of VCF files to process like -v tumour.vcf,normal.vcf', dest="vcfs") + parser.add_argument('-a', help='The BAM files (indexed) to read from like -b tumour.bam,normal.bam', required=True, dest="bams") + parser.add_argument('-b', help='The BED file with gene coordinates', dest="beds") + parser.add_argument('-p', help='The prefix of the target BAM file to write to (postfix is the input filename)', dest="prefix", default="ROI.") + parser.add_argument('-t', help='Number of threads used by samtools [8]', dest="threads", default=8, type=int) + parser.add_argument('-w', help='Region width for VCF loci [200]', dest="width", default=200, type=int) + parser.add_argument('-r', help='Readlength for region padding [151]', dest="pad", default=151, type=int) + parser.add_argument('-c', help='Number of variants in a chunk [150]', dest="maxRegions", default=150, type=int) + + return parser.parse_args() + +def reduce(args): + """ + >>> reduce([(2, 4), (4, 9)]) + [(2, 4), (4, 9)] + + >>> reduce([(2, 6), (4, 10)]) + [(2, 10)] + """ + if len(args) < 2: return args + args.sort() + ret = [args[0]] + for next_i, (s, e) in enumerate(args, start=1): + if next_i == len(args): + ret[-1] = ret[-1][0], max(ret[-1][1], e) + break + + ns, ne = args[next_i] + if e > ns or ret[-1][1] > ns: + ret[-1] = ret[-1][0], max(e, ne, ret[-1][1]) + else: + ret.append((ns, ne)) + return ret + +class ROISelector: + """Class to selet region of interest (ROI) from a set of BAM files. ROI is defined by input VCFs and BEDs""" + + def __init__(self, threads, maxRegions, prefix, width, pad): + # this is the set where loci are stored + # for every chromosome there is a list in the dict + # VCF records are int-s in the list, + # BED entries are (start,end) tuples + self.callDict = dict() + # number of samtools threads + self.threads = threads + # number of variants in a chunk + self.maxRegions = maxRegions + # prefix of the ROI BAM file + self.prefix = prefix + # width of region for VCF records + self.pad = pad + # add readlength padding + self.width = width + pad + + def selectROI(self,vcfs,bams,beds): + if not vcfs and not beds: + print("At least a single VCF (-v) or BED (-b) file is expected") + sys.exit() + + # first we MUST process BED intervals, since we want to ignore all the + # variants that are already in any of the intervals + bedRecordCount = 0 + if beds: # if there are any BEDs + print("Processing BED files: ") + bedFiles = beds.split(",") + for bedLoci in bedFiles: + print("\t" + bedLoci) + self.addBEDRecords(bedLoci) + for chrom in self.callDict: + bedRecordCount = bedRecordCount + len(self.callDict[chrom]) + print("Collected " + str(bedRecordCount) + " entries from BEDs") + + if vcfs: # if there are any VCFs given + print("Processing VCF files: ") + vcfFiles = vcfs.split(",") + for vcfCalls in vcfFiles: + print("\t" + vcfCalls) + self.addVCFRecords(vcfCalls) + vcfRecordCount = 0 + # report the number of records added + for chrom in self.callDict: + vcfRecordCount = vcfRecordCount + len(self.callDict[chrom]) + print("Collected " + str(vcfRecordCount-bedRecordCount) + " entries from VCFs") + # now collapse overlapping intervals + for chrom in self.callDict: + self.callDict[chrom] = reduce( self.callDict[chrom] ) + # we still have to collapse intervals that are too close to each other + # if they are closer than the readlength, there can be cases when a read is picked + # in both interval, so we have to merge them + self.mergeCloseIntervals(chrom) + + # save intervals to a BAM + print("Saving reads from BAMs:") + self.saveCallsToBAM(bams) + + def mergeCloseIntervals(self,chrom): + # we are assuming the intervals are ordered (they should to be) + mergedChrom = [] + start = (0,0) + for interv in self.callDict[chrom]: + # (start[0], start[1]) + # (interv[0], interv[1]) + # |------------------| |--------------------| + if interv[0] - start[1] <= self.pad*2: + # merge the two intervals + start = (start[0],interv[1]) + elif start[1]!= 0: # if its not the very first one and have enough space between the intervals + # add to the new interval set + mergedChrom.append(start) + start = interv + else: # most of the intervals should fall here + start = interv + self.callDict[chrom] = mergedChrom + + def writeChunk(self,bam,chrom,regions): + # from the regions list make a list of lists - sublists have 50 entries max + sublists = [regions[i:i+self.maxRegions] for i in range(0, len(regions), self.maxRegions)] + regionCount = 0 + filesToMerge = "" + for rlist in sublists: + chunkBAM = chrom +"_"+ str(regionCount) + "_tmpROI.bam " + regionCount = regionCount + 1 + filesToMerge = filesToMerge + chunkBAM + loci = "" + for locus in rlist: + loci = loci + locus + " " + subprocess.call("samtools view -@" + str(self.threads) + " " + bam + " -bo " + chunkBAM + loci, shell=True) + print("Wrote chunk for " + chrom + " to " + chunkBAM) + return filesToMerge + + def saveCallsToBAM(self,bams): + bamFiles = bams.split(",") + for bam in bamFiles: + print("\t" + bam) + # getting reads one-by-one takes aages. We are going to try to use htslib/samtools + # by making a command line to get ROI for each chromosome, and + # merge/sort the BAMs later + filesToMerge = "" + for chrom in self.callDict: + regionCount = 0; + regions = [] + for gcoord in self.callDict[chrom]: + if type(gcoord) is tuple: # BED record in tuple + start = gcoord[0] + end = gcoord[1] + else: # VCF record + start = gcoord - self.width + end = gcoord + self.width + regions.append(chrom + ":" + str(start) + "-" + str(end)) + # let's write the file for the chromosome + filesToMerge = filesToMerge + self.writeChunk(bam,chrom,regions) + print("Merging ...") + subprocess.call("samtools merge -@"+str(self.threads)+" -f merged.roi.bam " + filesToMerge, shell=True) + target = os.path.dirname(bam) + if len(target) > 0: + target = target + "/" + target = target + self.prefix + os.path.basename(bam) + print("Sorting ...") + subprocess.call("samtools sort -@" + str(self.threads) + " -o " + target + " merged.roi.bam", shell=True) + print("Sorted file written to " + target) + print("Indexing ...") + subprocess.call("samtools index -@" + str(self.threads) + " " + target, shell=True) + + def addVCFRecords(self,VCFFile): + """ + Store VCF record CHROM,POS in a dict + """ + VCFlines = [line.rstrip() for line in open(VCFFile,'rt')] + for variant in VCFlines: + if not variant.startswith("#"): # ignore header + vcfCols = variant.split() + chrom = vcfCols[0] + locus = int(vcfCols[1]) + if chrom not in self.callDict: # if chromosome not in dictionary yet + self.callDict[chrom] = [] + self.callDict[chrom].append( (locus-self.width, locus+self.width) ) + + def addBEDRecords(self,BEDFile): + """ + Store BED record CHROM,START,END in a set + """ + BEDlines = [line.rstrip() for line in open(BEDFile,'rt')] + for locus in BEDlines: + BEDrecord = locus.split() + chrom = BEDrecord[0] + if chrom not in self.callDict: + self.callDict[chrom] = [] + self.callDict[chrom].append( (int(BEDrecord[1]),int(BEDrecord[2])) ) + +######################## end of class ROISelector ###################################### + + +if __name__ == "__main__": + args = parse_args() + rois = ROISelector(args.threads, args.maxRegions, args.prefix, args.width, args.pad) + rois.selectROI(args.vcfs,args.bams,args.beds) + diff --git a/scripts/speedseq.filter.awk b/scripts/speedseq.filter.awk deleted file mode 100644 index d5d9ab0020..0000000000 --- a/scripts/speedseq.filter.awk +++ /dev/null @@ -1,50 +0,0 @@ -# somatic filter for FreeBayes VCF files, based on SpeedSeq: https://github.com/hall-lab/speedseq -# recommended to filter the large VCF files like: -# vcfsamplediff -s VT normal tumour freebayesresult.vcf | \ -# awk '/^#/{print}!/^#/&&!/germline/' |\ -# vcffilter -f "QUAL > 20" | vcfflatten |\ -# awk -f speedseq.filter.awk -v NORMAL_IDX=10 -v TUMOUR_IDX=11 > filtered.vcf -# where "normal" and "tumour" are the sample names in the VCF respectively, and the IDX variables are their 1-based column numbers in the #CHROM line of the VCF -# also check the index for these sample names also -BEGIN{ - MINQUAL=1; - SSC_THRES=1; # somatic score threshold ssc = LOD_T + LOD_N, log of odds (LOD) is the genotype quality ratio (http://www.nature.com/nmeth/journal/v12/n10/pdf/nmeth.3505.pdf) - ONLY_SOMATIC=1; # prints out only somatic lines if not zero - GL_IDX=0; # GL in the original: PL is the Normalized, Phred-scaled likelihoods for genotypes -} -{ - OFS="\t"; - - if ($0~"^#" && $0!~"^#CHROM") { print ; next; } - # add extra header line - if ($0~"^#CHROM") { - print "##INFO=" - print ; - } - if (! GL_IDX) { - split($9,fmt,":") - for (i=1;i<=length(fmt);++i) { if (fmt[i]=="GL") GL_IDX=i } - } - split($NORMAL_IDX,N,":"); # split field 10 and put values into - split(N[GL_IDX],NGL,","); - split($TUMOR_IDX,T,":"); - split(T[GL_IDX],TGL,","); - LOD_NORM=NGL[1]-NGL[2]; - LOD_TUMOR_HET=TGL[2]-TGL[1]; - LOD_TUMOR_HOM=TGL[3]-TGL[1]; - - if (LOD_TUMOR_HET > LOD_TUMOR_HOM) { LOD_TUMOR=LOD_TUMOR_HET } - else { LOD_TUMOR=LOD_TUMOR_HOM } - - DQUAL=LOD_TUMOR+LOD_NORM; - - if (DQUAL>=SSC_THRES && $NORMAL_IDX~"^0/0") { - $7="PASS" - $8="DQUAL="DQUAL";"$8 - print - } - else if (!ONLY_SOMATIC && $6>=MINQUAL && $NORMAL_IDX~"^0/0" && ! match($TUMOUR_IDX,"^0/0")) { - $8="DQUAL="DQUAL";"$8 - print - } -}