From 200f4b9e98b6d9acf80b86ff0a4bcbdb53fcd9d3 Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Tue, 20 Oct 2026 14:17:18 +0200 Subject: [PATCH 01/13] test: add pytest infrastructure and run python tests in CI - tests/conftest.py: conf factories for infer-subhogs/infer-roothogs built from the real CLI defaults, HOG id counter reset, tmp-dir and hash-seed fixtures, and a 'tools' marker that skips tests when external binaries are missing - tests/fastoma_testutils.py: compare outputs by meaning (group partitions, pair sets, canonical orthoXML) and validate against the OrthoXML 0.5 schema - vendor orthoxml-0.5.xsd from qfo/orthoxml - pytest config in pyproject.toml (testpaths, markers, strict xfail) - new python-tests workflow; slow tests run nightly - remove the empty test_roothog_example.py stub --- .github/workflows/python-tests.yml | 53 ++++ pyproject.toml | 8 + tests/conftest.py | 137 ++++++++ tests/data/orthoxml-0.5.xsd | 494 +++++++++++++++++++++++++++++ tests/fastoma_testutils.py | 125 ++++++++ tests/test_roothog_example.py | 6 - tests/test_testutils.py | 122 +++++++ 7 files changed, 939 insertions(+), 6 deletions(-) create mode 100644 .github/workflows/python-tests.yml create mode 100644 tests/conftest.py create mode 100644 tests/data/orthoxml-0.5.xsd create mode 100644 tests/fastoma_testutils.py delete mode 100644 tests/test_roothog_example.py create mode 100644 tests/test_testutils.py diff --git a/.github/workflows/python-tests.yml b/.github/workflows/python-tests.yml new file mode 100644 index 0000000..79996c9 --- /dev/null +++ b/.github/workflows/python-tests.yml @@ -0,0 +1,53 @@ +name: Python unit tests +# Runs the pytest suite in tests/ against the FastOMA python package. +# Tests marked `slow` only run on the nightly schedule and on manual dispatch. +on: + push: + branches: + - dev + pull_request: + schedule: + - cron: "17 3 * * *" + workflow_dispatch: + +concurrency: + group: "${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}" + cancel-in-progress: true + +jobs: + pytest: + runs-on: ubuntu-latest + name: "pytest | python ${{ matrix.python-version }}" + strategy: + fail-fast: false + matrix: + python-version: ["3.9", "3.12"] + + steps: + - name: Check out code + uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 + + - uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0 + with: + python-version: ${{ matrix.python-version }} + + # same external tools as the runtime stage of the Dockerfile + - name: Install external tools + run: | + sudo apt-get update + sudo apt-get install -y --no-install-recommends fasttree mafft mmseqs2 + mafft --version || true + FastTree -expert 2>&1 | head -1 || true + + - name: Install FastOMA + run: | + python -m pip install --upgrade pip + python -m pip install -e . pytest + + - name: Run tests + run: | + if [ "${{ github.event_name }}" = "schedule" ] || [ "${{ github.event_name }}" = "workflow_dispatch" ]; then + python -m pytest -ra + else + python -m pytest -ra -m "not slow" + fi diff --git a/pyproject.toml b/pyproject.toml index ee77fb8..952b7b5 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -52,3 +52,11 @@ Homepage = "https://github.com/DessimozLab/FastOMA" include = [ "/FastOMA", ] + +[tool.pytest.ini_options] +testpaths = ["tests"] +markers = [ + "tools(*names): needs external binaries (mafft, FastTree, mmseqs, omamer); skipped if missing", + "slow: takes more than a few seconds; deselect with -m 'not slow'", +] +xfail_strict = true diff --git a/tests/conftest.py b/tests/conftest.py new file mode 100644 index 0000000..5e3cc21 --- /dev/null +++ b/tests/conftest.py @@ -0,0 +1,137 @@ +"""Shared pytest fixtures for the FastOMA unit tests. + +Markers (registered in pyproject.toml): + tools -- needs external binaries (mafft, FastTree, mmseqs, omamer); skipped if missing + slow -- takes more than a few seconds; deselect with ``-m "not slow"`` +""" +import os +import shutil +import sys +from pathlib import Path + +import pytest + +TESTS_DIR = Path(__file__).parent +REPO_DIR = TESTS_DIR.parent +DATA_DIR = TESTS_DIR / "data" +TESTDATA_DIR = REPO_DIR / "testdata" + +# make tests/fastoma_testutils.py importable from every test module +sys.path.insert(0, str(TESTS_DIR)) + +REQUIRED_TOOLS = {"mafft": "mafft", "FastTree": "FastTree", "mmseqs": "mmseqs", "omamer": "omamer"} + + +def pytest_collection_modifyitems(config, items): + """Skip tests marked ``tools`` when the binaries they name are missing. + + Usage: ``@pytest.mark.tools("mafft", "FastTree")``; without arguments all tools are required. + """ + for item in items: + marker = item.get_closest_marker("tools") + if marker is None: + continue + needed = marker.args or tuple(REQUIRED_TOOLS) + missing = [t for t in needed if shutil.which(REQUIRED_TOOLS.get(t, t)) is None] + if missing: + item.add_marker(pytest.mark.skip(reason="missing external tool(s): " + ", ".join(missing))) + + +class _ParsedArgs(Exception): + def __init__(self, conf): + self.conf = conf + + +def _capture_cli_conf(monkeypatch, module, entry_point, argv): + """Run a fastoma CLI entry point only up to argument parsing and return its Namespace. + + All entry points call ``setup_logging(conf.v, ...)`` right after ``parse_args()``; replacing it + with a function that raises lets us get the real argparse defaults without running anything. + """ + def stop(*args, **kwargs): + raise _ParsedArgs(stop.conf) + + import argparse + orig_parse_args = argparse.ArgumentParser.parse_args + + def parse_args(self, *args, **kwargs): + stop.conf = orig_parse_args(self, *args, **kwargs) + return stop.conf + + monkeypatch.setattr(argparse.ArgumentParser, "parse_args", parse_args) + monkeypatch.setattr(module, "setup_logging", stop) + monkeypatch.setattr(sys, "argv", [entry_point] + list(argv)) + try: + getattr(module, entry_point.replace("-", "_"))() + except _ParsedArgs as e: + return e.conf + raise AssertionError(f"{entry_point} did not call setup_logging after parsing arguments") + + +@pytest.fixture +def subhog_conf(monkeypatch): + """Factory for the configuration Namespace of fastoma-infer-subhogs with the real CLI defaults. + + Keyword arguments override single fields, e.g. ``subhog_conf(number_of_samples_per_hog=3)``. + """ + from FastOMA import infer_subhogs + + with monkeypatch.context() as m: + base = _capture_cli_conf(m, infer_subhogs, "fastoma-infer-subhogs", + ["--input-rhog-folder", "rhogs", "--species-tree", "species_tree.nwk"]) + + def make(**overrides): + conf = type(base)(**vars(base)) + for key, value in overrides.items(): + if not hasattr(conf, key): + raise AttributeError(f"infer-subhogs has no option {key!r}") + setattr(conf, key, value) + return conf + return make + + +@pytest.fixture +def roothog_conf(monkeypatch): + """Factory for the configuration Namespace of fastoma-infer-roothogs with the real CLI defaults.""" + from FastOMA import infer_roothogs + + with monkeypatch.context() as m: + base = _capture_cli_conf(m, infer_roothogs, "fastoma-infer-roothogs", + ["--proteomes", "proteome", "--out-rhog-folder", "omamer_rhogs"]) + + def make(**overrides): + conf = type(base)(**vars(base)) + for key, value in overrides.items(): + if not hasattr(conf, key): + raise AttributeError(f"infer-roothogs has no option {key!r}") + setattr(conf, key, value) + return conf + return make + + +@pytest.fixture(autouse=True) +def reset_hogid_counter(): + """HOG ids come from a class-level counter; reset it so every test sees the same ids.""" + from FastOMA._hog_class import HOG + saved = HOG._hogid_iter + HOG._hogid_iter = 10000 + yield + HOG._hogid_iter = saved + + +@pytest.fixture +def in_tmp_dir(tmp_path, monkeypatch): + """Run the test inside a fresh temporary directory (many functions write into the CWD).""" + monkeypatch.chdir(tmp_path) + return tmp_path + + +@pytest.fixture +def fixed_hashseed(monkeypatch): + """Environment for subprocesses with a fixed PYTHONHASHSEED. + + Several FastOMA steps iterate over sets, so their output depends on the hash seed + (see test plan). Subprocess-based tests use this to stay reproducible. + """ + env = dict(os.environ, PYTHONHASHSEED="0") + return env diff --git a/tests/data/orthoxml-0.5.xsd b/tests/data/orthoxml-0.5.xsd new file mode 100644 index 0000000..ca0ee8e --- /dev/null +++ b/tests/data/orthoxml-0.5.xsd @@ -0,0 +1,494 @@ + + + + + OrthoXML Schema + + This Schema defines the OrthoXML version 0.5rc1. + Author(s): Sanjit Roopra, Dave Messina, Fabian Schreiber, Thomas Schmitt, and Erik Sonnhammer. + SBC - Stockholm Bioinformatics Centre. 2011. More info at http://orthoxml.org + + + + + + + The OrthoXML root element. + + + + + + + + + + + + + + The source program/database of the file for + instance OMA or InParanoid. + + + + + + + The version number of the file. + + + + + + + The version or release number of the source + program/database at time the file was generated. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The species element contains all sequences of one + species. + + + + + + + + + + The NCBI Taxonomy identifier of the species to + identify it + unambiguously. + + + + + + + The internal taxonomy identifier of the species to + identify it unambiguously. Must match the id attributes of + the leaf taxon nodes in the taxonomy element. + + + + + + + + The name of the species. + + + + + + + + + A database element contains all genes from a single + database/source. + + + + + + + + + A Uniform Resource Identifier (URI) pointing to + the gene. In the simplest case one could imagine a URL which in + concatenation with the gene identifier links to the website of the + gene in the source database. However, how this is used depends on + the source of the orthoXML file. + + + + + + + Name of the database. + + + + + + + A Uniform Resource Identifier (URI) pointing to + the protein. + + + + + + + A Uniform Resource Identifier (URI) pointing to + the transcript. + + + + + + + Version number of the database. + + + + + + + + + A gene element represents a list of genes. + + + + + + + + + + + The gene element represents a single gene, protein + or transcript. It is in fact a set of identifiers: one internal + identifier that is used to link from geneRef elements in ortholog + clusters and gene identifiers, transcript identifiers and protein + identifiers to identify the molecule. The proper term for this + element would therefore rather be molecule. However, as the general + purpose of orthoXML is to represent orthology data for genes the + term gene is used instead. Gene, protein and transcipt identifiers + are optional but at least one of the three should be given. The + source database of the gene is defined through the database element + in which the gene element lies and the identifiers should stem from + this source. + + + + + + Identifier of the gene in the source database. + Multiple splice forms are possible by having the same geneId more + than once. + + + + + + + Internal identifier to link to the gene via the geneRef elements. + + + + + + + Identifier of the protein in the source database. + + + + + + + Identifier of the transcript in the source database. + + + + + + + + + The taxonomy of the species analysed in this orthoxml file. Either you specify + the taxonomy as a nested grouping of taxon elements, or link to the ncbi taxonomy + by defining an ncbitaxonomy element within the taxonomy element. + + + + + + + + + + + + A node in the taxonomy, identifying a clade of species + + + + + + + + + (Internal) identifier of the clade / taxon. + + + + + + + Name of the clade / taxon. + + + + + + + + + crosslink to the ncbi taxonomy + + + + + + A link to the used ncbi taxonomy. + + + + + + + The version of the ncbi taxonomy that is used. + + + + + + + + + A list of score definitions. + + + + + + + + + + + Represents the list of ortholog groups. Normally + the top level is an ortholog group, but in order to express + a duplication at the root, a paralog group may also be the top level. + + + + + + + + + + + + + + A group of genes or nested groups. In case of a + orothologGroup element, all genes in the group or in the nested groups are + orthologs to each other i.e. stem from the same gene in the last common + ancester of the species. In case of a paralogGroup the genes are + paralogs to each other. Subgroups within the group allow the + represention of phylogenetic trees. For more details and examples + see http://orthoxml.org/orthoxml_doc.html. + + + + + + + + + A group can may contain two or more of the three alternatives + geneRef, paralogGroup, and orthologGroup. By combining these, + complex phylogenies are possible. + + + + + + + + + + + + Identifier for the group in context of the resource. This attribute is + not required but if your resource provides identifiers for the ortholog + groups we strongly recommend to use it at least for the top level groups. + + + + + + + Taxonomy identifier that defines the speciation event of reference for this + group. The taxonId references either a node in the defined taxonomy structure + (where the nummeric IDs can be defined as needed) or it should be the taxonomy + identifier in the NCBI taxonomy. + + + + + + + + + The geneRef element is a link to the gene + definition under the species element. It defines the members of an + ortholog or paralog group. The same gene can be referenced muliple + times. The geneRef element can have multiple score elements and a + notes elements as children. The notes element can for instance be + used for special, ortholog-database-specific information (with InParanoid, + for example, we could use it to mark the seed orthologs). + + + + + + + + + + Internal identifier for a gene element defined under the species element. + + + + + + + + + The scoreDef element defines a score. One of the + concepts of orthoXML is to be as flexible as possible but still + uniformly parsable. Part of this is to allow every + ortholog resource to give their own types of scores for groups or + group members, which is done using score elements. Score elements + can be defined to apply to either groups or geneRefs. It is possible to define multiple scores. + + + + + + An internal identifier to link to the + scoreDef from a score element. + + + + + + + Description of the score. + + + + + + + + + The score element gives the value of a score and + links it to the scoreDef element, which defines the score. It can be + child of a group or a geneRef element to allow scoring on + different levels. + + + + + + An identifier linking to the scoreDef element, + which defines the score. + + + + + + + The actual value of the score. For instance a + confidence score of a group member. + + + + + + + + + Key-value pair for group annotations, for instance + statistics about the group members. + + + + + + The key of the key-value annotation pair. + + + + + + + The value of the key-value annotation pair. Optional + to allow flag like annotations. + + + + + + + + + The notes element is a special element, which + allows adding information that is not general enough to be part + of the standard. I.e. something specific to a particular ortholog + database or algorithm. Notes elements will not be validated, + so any child elements are legal. Notes elements can be children of the + root element orthoXML, the species element, the orthologGroup + element, the paralogGroup element, or the geneRef element. + + + + + + + diff --git a/tests/fastoma_testutils.py b/tests/fastoma_testutils.py new file mode 100644 index 0000000..1cb40c1 --- /dev/null +++ b/tests/fastoma_testutils.py @@ -0,0 +1,125 @@ +"""Helpers to compare FastOMA outputs by meaning rather than by bytes. + +HOG/OG numbering, TSV row order and the order of elements in the orthoXML can change +between runs (task completion order, set iteration order) without any change in the +inferred orthology. These helpers reduce outputs to order- and id-independent forms. +""" +import csv +import gzip +from collections import Counter, defaultdict +from pathlib import Path + +from lxml import etree + +ORTHOXML_NS = "http://orthoXML.org/2011/" +NS = {"o": ORTHOXML_NS} +ORTHOXML_XSD = Path(__file__).parent / "data" / "orthoxml-0.5.xsd" + + +def _open_text(path): + path = Path(path) + if path.suffix == ".gz": + return gzip.open(path, "rt") + return open(path) + + +def read_group_partition(tsv_path, group_col=0, member_col=1, header=True): + """Partition of members into groups from a 'groupmember' TSV, ignoring group names and row order. + + Works for RootHOGs.tsv and OrthologousGroups.tsv. + Returns a frozenset of frozensets. + """ + groups = defaultdict(set) + with _open_text(tsv_path) as fh: + reader = csv.reader(fh, delimiter="\t") + if header: + next(reader, None) + for row in reader: + if row: + groups[row[group_col]].add(row[member_col]) + return frozenset(frozenset(m) for m in groups.values()) + + +def read_pairs(tsv_path): + """Set of unordered pairs from a two-column TSV (e.g. orthologs.tsv.gz).""" + with _open_text(tsv_path) as fh: + return {frozenset(line.rstrip("\n").split("\t")[:2]) for line in fh if line.strip()} + + +def _parse(orthoxml): + if isinstance(orthoxml, etree._ElementTree): + return orthoxml + if isinstance(orthoxml, etree._Element): + return orthoxml.getroottree() + return etree.parse(str(orthoxml)) + + +def gene_id_to_protid(orthoxml): + tree = _parse(orthoxml) + return {g.get("id"): g.get("protId") for g in tree.iterfind(".//o:gene", NS)} + + +def geneRef_counts(orthoxml, use_protid=True): + """Counter of how often each gene is referenced from groups (a protein must appear at most once).""" + tree = _parse(orthoxml) + id2prot = gene_id_to_protid(tree) if use_protid else {} + return Counter(id2prot.get(r.get("id"), r.get("id")) for r in tree.iterfind(".//o:groups//o:geneRef", NS)) + + +def canonical_group(elem, id2prot): + """Order- and id-independent nested representation of an orthologGroup/paralogGroup. + + Keeps: group type, TaxRange property, and the nesting of genes (as protIds). + Drops: group ids, scores, other properties, taxonIds. + """ + tag = etree.QName(elem).localname + if tag == "geneRef": + return ("gene", id2prot.get(elem.get("id"), elem.get("id"))) + taxrange = None + children = [] + for child in elem: + ctag = etree.QName(child).localname + if ctag == "property" and child.get("name") == "TaxRange": + taxrange = child.get("value") + elif ctag in ("orthologGroup", "paralogGroup", "geneRef"): + children.append(canonical_group(child, id2prot)) + return (tag, taxrange, tuple(sorted(children, key=repr))) + + +def canonical_orthoxml(orthoxml): + """Canonical form of a whole orthoXML file: sorted tuple of canonical top-level groups.""" + tree = _parse(orthoxml) + id2prot = gene_id_to_protid(tree) + groups = tree.find(".//o:groups", NS) + if groups is None: + return () + return tuple(sorted((canonical_group(g, id2prot) for g in groups), key=repr)) + + +def orthoxml_element_counts(orthoxml): + tree = _parse(orthoxml) + return { + "orthologGroup": len(tree.findall(".//o:orthologGroup", NS)), + "paralogGroup": len(tree.findall(".//o:paralogGroup", NS)), + "gene": len(tree.findall(".//o:gene", NS)), + "geneRef": len(tree.findall(".//o:geneRef", NS)), + } + + +_schema = None + + +def orthoxml_schema(): + global _schema + if _schema is None: + _schema = etree.XMLSchema(etree.parse(str(ORTHOXML_XSD))) + return _schema + + +def orthoxml_validation_errors(orthoxml): + """List of schema violations (empty if valid against OrthoXML 0.5).""" + schema = orthoxml_schema() + tree = _parse(orthoxml) + if schema.validate(tree): + return [] + return [f"line {e.line}: {e.message}" for e in schema.error_log] diff --git a/tests/test_roothog_example.py b/tests/test_roothog_example.py deleted file mode 100644 index dd34ce8..0000000 --- a/tests/test_roothog_example.py +++ /dev/null @@ -1,6 +0,0 @@ -from unittest import TestCase - -class RootHOGExampleTestCase(TestCase): - - def setUpClass(cls): - pass \ No newline at end of file diff --git a/tests/test_testutils.py b/tests/test_testutils.py new file mode 100644 index 0000000..4b8e748 --- /dev/null +++ b/tests/test_testutils.py @@ -0,0 +1,122 @@ +"""Tests for the shared test infrastructure (conftest fixtures and fastoma_testutils).""" +import gzip + +import pytest +from lxml import etree + +from conftest import TESTDATA_DIR +from fastoma_testutils import ( + canonical_orthoxml, + geneRef_counts, + orthoxml_element_counts, + orthoxml_validation_errors, + read_group_partition, + read_pairs, +) + +EXPECTED = TESTDATA_DIR / "expected_output" + +ORTHOXML_TEMPLATE = """ + + + + + + + + + {children} + + +""" + + +def _xml(gid, children): + return etree.fromstring(ORTHOXML_TEMPLATE.format(gid=gid, children=children).encode()).getroottree() + + +class TestConfFixtures: + def test_subhog_conf_has_cli_defaults(self, subhog_conf): + conf = subhog_conf() + assert conf.number_of_samples_per_hog == 5 + assert conf.msa_filter_method == "col-row-threshold" + assert conf.gap_ratio_row == 0.3 and conf.gap_ratio_col == 0.5 + assert conf.store_tcs_score is True + + def test_subhog_conf_overrides_and_rejects_unknown_options(self, subhog_conf): + assert subhog_conf(number_of_samples_per_hog=3).number_of_samples_per_hog == 3 + assert subhog_conf().number_of_samples_per_hog == 5, "overrides must not leak into the base conf" + with pytest.raises(AttributeError): + subhog_conf(no_such_option=1) + + def test_roothog_conf_has_cli_defaults(self, roothog_conf): + conf = roothog_conf() + assert conf.mergHOG_fscore_thresh == 70 + assert conf.big_rhog_size == 50_000 + assert conf.min_sequence_length == 50 + + +class TestPartitionsAndPairs: + def test_partition_ignores_group_names_and_row_order(self, tmp_path): + a = tmp_path / "a.tsv" + b = tmp_path / "b.tsv" + a.write_text("RootHOG\tProtein\nHOG:1\tx\nHOG:1\ty\nHOG:2\tz\n") + b.write_text("RootHOG\tProtein\nHOG:7\tz\nHOG:9\ty\nHOG:9\tx\n") + assert read_group_partition(a) == read_group_partition(b) + assert read_group_partition(a) == {frozenset({"x", "y"}), frozenset({"z"})} + + def test_pairs_are_unordered_and_read_gzip(self, tmp_path): + p = tmp_path / "pairs.tsv.gz" + with gzip.open(p, "wt") as fh: + fh.write("a\tb\nc\td\n") + assert read_pairs(p) == {frozenset("ab"), frozenset("dc")} + + +class TestCanonicalOrthoxml: + def test_independent_of_ids_and_child_order(self): + x1 = _xml("HOG:1", '') + x2 = _xml("HOG:99", '') + assert canonical_orthoxml(x1) == canonical_orthoxml(x2) + + def test_detects_changed_nesting(self): + flat = _xml("HOG:1", '') + dup = _xml("HOG:1", '') + assert canonical_orthoxml(flat) != canonical_orthoxml(dup) + + def test_geneRef_counts_use_protids(self): + x = _xml("HOG:1", '') + assert geneRef_counts(x) == {"a1": 1, "b1": 1} + + def test_schema_rejects_invalid_document(self): + # a paralogGroup with a single child violates the OrthoXML 0.5 schema + bad = _xml("HOG:1", '') + assert orthoxml_validation_errors(bad) + + +class TestExpectedOutputConsistency: + """testdata/expected_output is what the README promises; its files must agree with each other.""" + + def test_orthoxml_is_schema_valid(self): + assert orthoxml_validation_errors(EXPECTED / "FastOMA_HOGs.orthoxml") == [] + + def test_every_protein_is_referenced_exactly_once(self): + counts = geneRef_counts(EXPECTED / "FastOMA_HOGs.orthoxml") + assert counts and max(counts.values()) == 1 + assert orthoxml_element_counts(EXPECTED / "FastOMA_HOGs.orthoxml")["gene"] == len(counts) + + def test_roothogs_match_orthoxml_top_level_groups(self): + tree = etree.parse(str(EXPECTED / "FastOMA_HOGs.orthoxml")) + canonical = canonical_orthoxml(tree) + + def genes(group): + if group[0] == "gene": + return {group[1]} + return set().union(*(genes(c) for c in group[2])) + + from_xml = frozenset(frozenset(genes(g)) for g in canonical) + assert from_xml == read_group_partition(EXPECTED / "RootHOGs.tsv") + + def test_orthologous_groups_are_within_roothogs(self): + roothogs = read_group_partition(EXPECTED / "RootHOGs.tsv") + for og in read_group_partition(EXPECTED / "OrthologousGroups.tsv"): + assert any(og <= rh for rh in roothogs), og From 76034ddb35bbbb62e267343df4930e0e08d9fb1d Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Tue, 20 Oct 2026 14:22:10 +0200 Subject: [PATCH 02/13] test(nf-test): snapshot the inferred orthology instead of line counts The default pipeline test only pinned file names and line counts, so any change to the HOGs went unnoticed. It now snapshots order- and id-independent views of the results (rootHOG and OG memberships, ortholog pairs, canonical nesting of the orthoXML groups) and asserts that no protein is referenced twice. The helpers live in nf-tests/lib/FastomaOutput.groovy for reuse in further tests. --- nf-test.config | 3 + nf-tests/default.nf.test | 61 ++++------- nf-tests/default.nf.test.snap | 174 ++++++++++++++++++++++++++---- nf-tests/lib/FastomaOutput.groovy | 119 ++++++++++++++++++++ 4 files changed, 295 insertions(+), 62 deletions(-) create mode 100644 nf-tests/lib/FastomaOutput.groovy diff --git a/nf-test.config b/nf-test.config index 7187828..9bd1e38 100644 --- a/nf-test.config +++ b/nf-test.config @@ -2,6 +2,9 @@ config { // location for all nf-tests testsDir "./" + // groovy helper classes available in all tests (e.g. FastomaOutput) + libDir "nf-tests/lib" + // nf-test directory including temporary files for each test workDir System.getenv("NFT_WORKDIR") ?: ".nf-test" diff --git a/nf-tests/default.nf.test b/nf-tests/default.nf.test index 51de684..144de9c 100644 --- a/nf-tests/default.nf.test +++ b/nf-tests/default.nf.test @@ -15,48 +15,26 @@ nextflow_pipeline { } then { - - // Custom function to filter timestamp lines - def filterTimestamps = { file -> - return file.readLines() - .findAll { !it.contains('!date-run') && !it.contains('originVersion') } - } + def out = file(params.output_folder).toPath() // stable_name: All files + folders in ${params.output_folder}/ with a stable name def stable_name = getAllFilesFromDir(params.output_folder, relative: true, includeDir: true, ignore: ['stats/*.{html,json,txt}']) // stable_path: All files in ${params.output_folder}/ with stable content def stable_path = getAllFilesFromDir(params.output_folder, ignoreFile: 'nf-tests/.nftignore') - def timestamp_files = getAllFilesFromDir(params.output_folder, include:['hogmap/*.hogmap', "FastOMA_HOGs.orthoxml"]).collect { file -> - [name: file.name, md5: listToMD5(filterTimestamps(file))] - } - def csv_files = getAllFilesFromDir(params.output_folder, include:['RootHOGs.tsv', 'OrthologousGroups.tsv', 'orthologs.tsv.gz']).collect { file -> - def csv_data = path(file.path).csv(sep: '\t', header: file.name != 'orthologs.tsv.gz', decompress: file.name.endsWith('.gz')) - def header = csv_data.getColumnNames() - def sorted_rows = csv_data.sort().rows - - // Convert back to list of strings - def lines = [] - lines.add(header.join('\t')) // Add header line - sorted_rows.each { row -> - lines.add(header.collect { col -> row[col] ?: '' }.join('\t')) - } - return [name: file.name, md5: listToMD5(lines), lineCount: lines.size()] - } - def fixed_line_number_files = getAllFilesFromDir(params.output_folder, include:['RootHOGs.tsv', 'OrthologousGroups.tsv', 'orthologs.tsv.gz', "FastOMA_HOGs.orthoxml", 'hogmap/*.hogmap']).collect { file -> - def line_count - if (file.name.endsWith('.gz')) { - // Use try-with-resources for proper cleanup - new java.util.zip.GZIPInputStream(file.newInputStream()).withCloseable { gzipStream -> - line_count = gzipStream.readLines().size() - } - } else { - line_count = file.readLines().size() - } - return [name: file.name, lineCount: line_count] + // hogmap scores have precision issues across platforms, so only their size is pinned + def hogmap_line_counts = getAllFilesFromDir(params.output_folder, include: ['hogmap/*.hogmap']).collect { f -> + [name: f.name, lineCount: f.readLines().size()] } + // HOG/OG numbers and row order are not stable, so the inferred orthology is + // compared through order- and id-independent views (nf-tests/lib/FastomaOutput.groovy) + def orthoxml = out.resolve('FastOMA_HOGs.orthoxml') + def geneRefCounts = FastomaOutput.geneRefCounts(orthoxml) + assertAll( - { assert workflow.success}, + { assert workflow.success }, + // every protein is in at most one HOG + { assert geneRefCounts.findAll { it.value > 1 } == [:] }, { assert snapshot( // Number of successful tasks workflow.trace.succeeded().size(), @@ -64,13 +42,14 @@ nextflow_pipeline { stable_name, // All files with stable contents stable_path, - // List of all files with timestamps filtered out - // does not yet work, as hogmap files have percision issues - // and FastOMA_HOGs is not completely deterministic - // timestamp_files - - // files with fixed number of lines - fixed_line_number_files + hogmap_line_counts, + [ + orthoxml_elements : FastomaOutput.elementCounts(orthoxml), + hogs : FastomaOutput.canonicalHogs(orthoxml), + roothogs : FastomaOutput.groupPartition(out.resolve('RootHOGs.tsv')), + orthologous_groups: FastomaOutput.groupPartition(out.resolve('OrthologousGroups.tsv')), + ortholog_pairs : FastomaOutput.pairs(out.resolve('orthologs.tsv.gz')), + ] ).match() } ) } diff --git a/nf-tests/default.nf.test.snap b/nf-tests/default.nf.test.snap index 5131a83..82a84d0 100644 --- a/nf-tests/default.nf.test.snap +++ b/nf-tests/default.nf.test.snap @@ -48,18 +48,6 @@ "species_tree_checked.nwk:md5,4c82a2f2ffa72a595aaf2fd3deddeff7" ], [ - { - "name": "FastOMA_HOGs.orthoxml", - "lineCount": 194 - }, - { - "name": "OrthologousGroups.tsv", - "lineCount": 28 - }, - { - "name": "RootHOGs.tsv", - "lineCount": 28 - }, { "name": "AQUAE.fa.hogmap", "lineCount": 20 @@ -71,17 +59,161 @@ { "name": "MYCGE.fa.hogmap", "lineCount": 14 - }, - { - "name": "orthologs.tsv.gz", - "lineCount": 18 } - ] + ], + { + "orthoxml_elements": { + "orthologGroup": 15, + "paralogGroup": 0, + "gene": 28, + "geneRef": 27 + }, + "hogs": [ + "OG[inter1](sp|O66686|TPIS_AQUAE, sp|O84332|TPIS_CHLTR)", + "OG[inter1](sp|O66778|ENO_AQUAE, sp|O84591|ENO_CHLTR)", + "OG[inter1](sp|O67547|SUCD_AQUAE, tr|O84829|O84829_CHLTR)", + "OG[inter1](sp|O67618|LEPA_AQUAE, sp|O84067|LEPA_CHLTR)", + "OG[inter1](sp|O67736|FOLD_AQUAE, sp|O84081|FOLD_CHLTR)", + "OG[inter1](sp|O67943|CH60_AQUAE, sp|P0C0Z7|CH60_CHLTR)", + "OG[inter2](OG[inter1](sp|O66429|EFTU_AQUAE, sp|P0CD71|EFTU_CHLTR), sp|P13927|EFTU_MYCGE)", + "OG[inter2](OG[inter1](sp|O67032|RF1_AQUAE, sp|O84026|RF1_CHLTR), sp|P47500|RF1_MYCGE)", + "OG[inter2](OG[inter1](sp|O67161|G3P_AQUAE, sp|P0CE13|G3P_CHLTR), sp|P47543|G3P_MYCGE)", + "OG[inter2](sp|O66907|ATPA_AQUAE, sp|P47641|ATPA_MYCGE)", + "OG[inter2](sp|O67828|ATPB_AQUAE, sp|P47639|ATPB_MYCGE)", + "OG[inter2](sp|P17821|DNAK_CHLTR, sp|P47547|DNAK_MYCGE)" + ], + "roothogs": [ + [ + "sp|O66429|EFTU_AQUAE", + "sp|P0CD71|EFTU_CHLTR", + "sp|P13927|EFTU_MYCGE" + ], + [ + "sp|O66686|TPIS_AQUAE", + "sp|O84332|TPIS_CHLTR" + ], + [ + "sp|O66778|ENO_AQUAE", + "sp|O84591|ENO_CHLTR" + ], + [ + "sp|O66907|ATPA_AQUAE", + "sp|P47641|ATPA_MYCGE" + ], + [ + "sp|O67032|RF1_AQUAE", + "sp|O84026|RF1_CHLTR", + "sp|P47500|RF1_MYCGE" + ], + [ + "sp|O67161|G3P_AQUAE", + "sp|P0CE13|G3P_CHLTR", + "sp|P47543|G3P_MYCGE" + ], + [ + "sp|O67547|SUCD_AQUAE", + "tr|O84829|O84829_CHLTR" + ], + [ + "sp|O67618|LEPA_AQUAE", + "sp|O84067|LEPA_CHLTR" + ], + [ + "sp|O67736|FOLD_AQUAE", + "sp|O84081|FOLD_CHLTR" + ], + [ + "sp|O67828|ATPB_AQUAE", + "sp|P47639|ATPB_MYCGE" + ], + [ + "sp|O67943|CH60_AQUAE", + "sp|P0C0Z7|CH60_CHLTR" + ], + [ + "sp|P17821|DNAK_CHLTR", + "sp|P47547|DNAK_MYCGE" + ] + ], + "orthologous_groups": [ + [ + "sp|O66429|EFTU_AQUAE", + "sp|P0CD71|EFTU_CHLTR", + "sp|P13927|EFTU_MYCGE" + ], + [ + "sp|O66686|TPIS_AQUAE", + "sp|O84332|TPIS_CHLTR" + ], + [ + "sp|O66778|ENO_AQUAE", + "sp|O84591|ENO_CHLTR" + ], + [ + "sp|O66907|ATPA_AQUAE", + "sp|P47641|ATPA_MYCGE" + ], + [ + "sp|O67032|RF1_AQUAE", + "sp|O84026|RF1_CHLTR", + "sp|P47500|RF1_MYCGE" + ], + [ + "sp|O67161|G3P_AQUAE", + "sp|P0CE13|G3P_CHLTR", + "sp|P47543|G3P_MYCGE" + ], + [ + "sp|O67547|SUCD_AQUAE", + "tr|O84829|O84829_CHLTR" + ], + [ + "sp|O67618|LEPA_AQUAE", + "sp|O84067|LEPA_CHLTR" + ], + [ + "sp|O67736|FOLD_AQUAE", + "sp|O84081|FOLD_CHLTR" + ], + [ + "sp|O67828|ATPB_AQUAE", + "sp|P47639|ATPB_MYCGE" + ], + [ + "sp|O67943|CH60_AQUAE", + "sp|P0C0Z7|CH60_CHLTR" + ], + [ + "sp|P17821|DNAK_CHLTR", + "sp|P47547|DNAK_MYCGE" + ] + ], + "ortholog_pairs": [ + "sp|O66429|EFTU_AQUAE <-> sp|P0CD71|EFTU_CHLTR", + "sp|O66429|EFTU_AQUAE <-> sp|P13927|EFTU_MYCGE", + "sp|O66686|TPIS_AQUAE <-> sp|O84332|TPIS_CHLTR", + "sp|O66778|ENO_AQUAE <-> sp|O84591|ENO_CHLTR", + "sp|O66907|ATPA_AQUAE <-> sp|P47641|ATPA_MYCGE", + "sp|O67032|RF1_AQUAE <-> sp|O84026|RF1_CHLTR", + "sp|O67032|RF1_AQUAE <-> sp|P47500|RF1_MYCGE", + "sp|O67161|G3P_AQUAE <-> sp|P0CE13|G3P_CHLTR", + "sp|O67161|G3P_AQUAE <-> sp|P47543|G3P_MYCGE", + "sp|O67547|SUCD_AQUAE <-> tr|O84829|O84829_CHLTR", + "sp|O67618|LEPA_AQUAE <-> sp|O84067|LEPA_CHLTR", + "sp|O67736|FOLD_AQUAE <-> sp|O84081|FOLD_CHLTR", + "sp|O67828|ATPB_AQUAE <-> sp|P47639|ATPB_MYCGE", + "sp|O67943|CH60_AQUAE <-> sp|P0C0Z7|CH60_CHLTR", + "sp|O84026|RF1_CHLTR <-> sp|P47500|RF1_MYCGE", + "sp|P0CD71|EFTU_CHLTR <-> sp|P13927|EFTU_MYCGE", + "sp|P0CE13|G3P_CHLTR <-> sp|P47543|G3P_MYCGE", + "sp|P17821|DNAK_CHLTR <-> sp|P47547|DNAK_MYCGE" + ] + } ], + "timestamp": "2026-10-20T14:21:18.662761", "meta": { - "nf-test": "0.9.3", - "nextflow": "26.04.6" - }, - "timestamp": "2026-08-25T18:07:32.287389" + "nf-test": "0.9.5", + "nextflow": "24.10.2" + } } } \ No newline at end of file diff --git a/nf-tests/lib/FastomaOutput.groovy b/nf-tests/lib/FastomaOutput.groovy new file mode 100644 index 0000000..8eccc4a --- /dev/null +++ b/nf-tests/lib/FastomaOutput.groovy @@ -0,0 +1,119 @@ +// Order- and id-independent views of FastOMA output files for nf-test snapshots. +// +// HOG/OG numbers and the row order of the TSV files depend on task completion and set +// iteration order, so the snapshots compare group memberships, ortholog pairs and the +// nesting of the orthoXML groups instead of raw file content. + +import java.nio.file.Path +import java.util.zip.GZIPInputStream +import javax.xml.parsers.DocumentBuilderFactory +import org.w3c.dom.Element +import org.w3c.dom.Node + +class FastomaOutput { + + static List readLines(Path file) { + if (file.toString().endsWith('.gz')) { + return new GZIPInputStream(file.newInputStream()).withReader { it.readLines() } + } + return file.readLines() + } + + // Groups of a "groupmember" TSV (RootHOGs.tsv, OrthologousGroups.tsv) as a sorted + // list of sorted member lists; the group names are dropped. + static List> groupPartition(Path tsv) { + def groups = [:].withDefault { [] as SortedSet } + readLines(tsv).drop(1).findAll { it }.each { line -> + def cols = line.split('\t') + groups[cols[0]] << cols[1] + } + return groups.values().collect { it as List }.sort { it.join(',') } + } + + // Unordered pairs of a two-column TSV (orthologs.tsv.gz) as sorted "a <-> b" strings. + static List pairs(Path tsv) { + return readLines(tsv).findAll { it }.collect { line -> + def p = line.split('\t')[0..1].sort() + "${p[0]} <-> ${p[1]}".toString() + }.sort() + } + + private static Element parseOrthoxml(Path orthoxml) { + def factory = DocumentBuilderFactory.newInstance() + factory.setNamespaceAware(true) + return factory.newDocumentBuilder().parse(orthoxml.toFile()).documentElement + } + + private static List childElements(Node node) { + def out = [] + def children = node.childNodes + for (int i = 0; i < children.length; i++) { + if (children.item(i) instanceof Element) { + out << (Element) children.item(i) + } + } + return out + } + + private static Map geneIdToProtId(Element root) { + def map = [:] + def genes = root.getElementsByTagNameNS('*', 'gene') + for (int i = 0; i < genes.length; i++) { + def g = (Element) genes.item(i) + map[g.getAttribute('id')] = g.getAttribute('protId') + } + return map + } + + private static String canonicalGroup(Element elem, Map id2prot) { + switch (elem.localName) { + case 'geneRef': + return id2prot.get(elem.getAttribute('id'), elem.getAttribute('id')) + case 'orthologGroup': + case 'paralogGroup': + def taxRange = childElements(elem).find { + it.localName == 'property' && it.getAttribute('name') == 'TaxRange' + }?.getAttribute('value') + def children = childElements(elem) + .findAll { it.localName in ['orthologGroup', 'paralogGroup', 'geneRef'] } + .collect { canonicalGroup(it, id2prot) } + .sort() + def label = elem.localName == 'orthologGroup' ? "OG[${taxRange}]" : (taxRange ? "PG[${taxRange}]" : 'PG') + return "${label}(${children.join(', ')})".toString() + default: + return '' + } + } + + // One string per rootHOG describing the nesting of ortholog/paralog groups and their + // genes (as protIds); group ids, scores and properties other than TaxRange are dropped. + static List canonicalHogs(Path orthoxml) { + def root = parseOrthoxml(orthoxml) + def id2prot = geneIdToProtId(root) + def groups = childElements(root).find { it.localName == 'groups' } + if (groups == null) { + return [] + } + return childElements(groups).collect { canonicalGroup(it, id2prot) }.sort() + } + + // How often each protein is referenced from the groups; a protein must appear at most once. + static Map geneRefCounts(Path orthoxml) { + def root = parseOrthoxml(orthoxml) + def id2prot = geneIdToProtId(root) + def counts = [:].withDefault { 0 } + def refs = root.getElementsByTagNameNS('*', 'geneRef') + for (int i = 0; i < refs.length; i++) { + def id = ((Element) refs.item(i)).getAttribute('id') + counts[id2prot.get(id, id)] += 1 + } + return counts + } + + static Map elementCounts(Path orthoxml) { + def root = parseOrthoxml(orthoxml) + return ['orthologGroup', 'paralogGroup', 'gene', 'geneRef'].collectEntries { name -> + [name, root.getElementsByTagNameNS('*', name).length] + } + } +} From b008a6246a4472f9542a7c15c0c04a1067f81940 Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Tue, 20 Oct 2026 14:24:59 +0200 Subject: [PATCH 03/13] test(nf-test): cover id transformer, MSA/tree output, score flags, archive input and splice files - UniProt id transformer applied to TSVs and orthoXML, MSAs and gene trees published, ImpliedLosses/TCS scores omitted when disabled - a .tar.gz input with precomputed hogmaps is extracted and the hogmaps are used without re-running omamer - a splice file makes exactly one isoform of the gene end up in the HOGs and main_isoform attributes are written --- nf-tests/helpers/input_archive.tar.gz | Bin 0 -> 9973 bytes nf-tests/helpers/splice_in/AQUAE.splice | 2 + nf-tests/options.nf.test | 107 +++++++++ nf-tests/options.nf.test.snap | 288 ++++++++++++++++++++++++ 4 files changed, 397 insertions(+) create mode 100644 nf-tests/helpers/input_archive.tar.gz create mode 100644 nf-tests/helpers/splice_in/AQUAE.splice create mode 100644 nf-tests/options.nf.test create mode 100644 nf-tests/options.nf.test.snap diff --git a/nf-tests/helpers/input_archive.tar.gz b/nf-tests/helpers/input_archive.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..5c5a7f0f09597c49350830315400b6870671b395 GIT binary patch literal 9973 zcmVji-?bazaCG`?pM2ol*5Or8y}!t@8-Xn#kq97j zG64+Q>5GCRwLFRyNexMjXCw4M?6W_Ezl_iR3cmQ{-;-6HBQ4I(|R?ynHfWFE(rbtrpuS zv-xtf+Uq5~N&3o_Twy(bWXP$H1%9FeA|G$iX@o)a+ zCx89PC+*WOp8P63`HxRdLtgvjimwGQT+Yw^QX_hxc%g>{`!;pfB)P6^WXl*|NLJ+!X_Wb`$qrt56$h< zFK=J|^26c459-pU>A&d9TlRmoMgP|ya7}mPXRiNu{J;KO4Zl|A`m3iu z`W(<>vs(Qz{@;4GUOoDMA7woHe?RMSr~mhk;E#?2KdArj_5(f|9&k30SUVAlVK^nbosZ{~05|7x>ZKidC~G5-G5x8MJ2v)#;h-v`sHqZ3%Q zX7F8!U43v)HAOepryP`yA($~+<&ufUM>B+=bI^s~qIJ3Wc2HG`Z9RJBwe9lgLld0N zz2zx&8cj)21*Hzgst~xM(qNrYLoTYTZ+xYS8FVPl^~H7G>Ch*oi;l(n!5LG64Z1f* zxuBBr#yZ|@T;PS$Rnhf*@2&0!-v_UPt92Sj-H*|#qUsWP!J6WGtG#POo3izWHDyz5 z#Tt6wW?yR`lCrwk(J7Uj*ClEfoz>apM)|JK-t?un_0TKdw`Ekea$~QI&UrK@M6H7H zqjH^AENe8qNvT)CwziJN)@&g(t#M^AF+jO$w8cA@v+BFzM%k*bvo^&USkSk+?scbZ zaAqvV^mPd(b9>LyS$6N-5Do*}unwlRd4xb+E+d>WZ6A_x4$?R5*e92wtyLQJXliH2 zD)vbS=R+<5YWu#h^i;djz-l%4TE$qD@gbV*`Z$Ezl*SE3d24-DoI(s7q>id9S^2|g zAzO~DA35m;*yDX{{ZLz9hR_d2)ghJOi>Xd>H(M^gkM;a4cEKApvd91r*wPr~n+eJH zP-8&O{K&JDH{8e-*O@Sy$ZKk-rWX;35PVA7YZe`pL1elZvN0`hHV)`mr*}mL`@VmL5?` z$wt@Yloc{v0xQ=hYX|vznckUPN0ns4VMJzgHd!H=xp95Au9V?0XcN;=51k(nVviM7 zK6pK{RkQ$cXP42Np;R_oZZ+P;Ja%3QWKLk8T6?6IY5Yvwhs<@ODe^zBUBurONcx% z2HOE<^$pxHRXxT!r!yN@i~aYe&c8nMkxAG|1g@F_C9<=3P@b7O9|}lpkp(D?_SPQs za@s586m1efcO7zB01~u2Hlvt=15mE?=ztoBB~U}Ft!%L*G{^RBKjbPhAykb6)Al1W zUALV-=(cE$3QXb`z&3tN%sB$b241?zhLIqJW(PBLski>77!a5nJJo74q9Q$VRJ8Bw z(DpE+)PS0e(6(e7D=ZQ67pEtJuoe(7m;y90!@9PP9+5^0xS@008MxhgEf&mH1N0br zn~GPBk7(&o#v*6~fnt;Ux-Q)q`=K7|n6XM(X7y+|l2^5*m4{9{Gr_68pcsY))XGJ9 zKrZM!t3){T8UEI*?f2=|2Ytse2-$gnsel8}A1Sn{#^?+O(B9^u6rO=K1%O-TK~+i( z*aLhO|G|&$kT83tSG^z^iYg+nkVQCjaCv%%*KOPK{|Mf8W8W!XA-sJDYYTS8f}+Jb zw$r#8v*NL_nC)Z{n-Pp0hmidU7!F_@H&&p24_t)YL|uf+Y@tV@*-h)LaTawqg03*o z_=$U^2IpB;u2j!%VvA5AMy^E^EyAXJE5L%1s*y)_SX!P08%4KyL7?2kDkrVZwuGo< z^L_4JIukQS*r2)_kMIeJSj6bMTnAql(_oYVq~H#Hj|znm!umE0ASx_H2#4;_jAB() z4a}kVJy-D)4p?0TtHJa|=wnUNu)6_tiaG?-LXX(Ha3~g}HG+?}&9$sKqtihJCNQSS z*kkP!&Oy0RK!eS_%DvIz0F?$Ph#e+*2!Kfk80Cl+u!v>{$fMVF>l>7{!<9g>RT8Ht z)fMC^Bi~QrwOj1I=c)g2Ctlbtk1Z}kakei7u?OiOO#rg+*H9D}L3gbI{hM0ctr{^? zLj#iyCXQ>WwSDH+5-sGIV7kY+^{A0}XSi4$q#Syu&A=RDk;m$$NA@{Yv(Ez>&AfQ=meL*Gt{Zm;Ra%RF}-B4(%NN>X5A!Ls|K~oEHfi!N{kjBpwm4jG6QOulwRC3IE{a)AfktZ1Fp*Cw>YtS zt#~%t0J!+B5myTvgMT#ibyMMW4aglj=ttxcN9mqGAOBxZWUSo1`cx&xI6r7F{u_NMFV+-)(yy!pvACJVrRR9eX9qZ1- zAr2~gK+1y%peN2yfRPz*fMo+TC>OxWt7X&(h|RSYpA1k%cyW?F&L`e^gD9#Fxr?sV zH^EiL)LuZ59Y?Q$Y#1QxNM=x6z|#d~GFlY+8e1oBb2sz^EQ1FTGb{<>0CtBU?n->r+oDvKz zek?0wMa6W0vL{|*hqy!{iXEy)FoVzB`RIutk#!Ixg?dCCP;cBj;tt}Z(S!~tz|cSo z2|R$e2H!JB9)!El8)7u)Tg!-C;(9XfKB2l0}AGmgvo46Bn%*; z0=7VGTvQ@b@Y*GAKCtFPQ2hbrM445Mq~npdB@Mp0uWL+BMA>mROP{ki zl|UkL)+p)h9MWfQOrlon-@K#2|QLUqP>7Jm9S3x)6OK zK7Er^Nf{5_4wRwVSQ*p3D`@jMmb0%8tT#gRnS&>jgGaX^(5 za~CjS5+!zJvK@F8*oh)uh6Irk10!=11&SuBjL>x`2)-5&kKfk{^vcXI$e2`lVj1)k zIP$g~YV7+MQa{#&i)ce@2nBGmMkmU{Bm_?4bmPZJlv(io5PWE(jF?h9GnMftyT%=( zy#p&#JwiA{fEJek&qgej9iTXo4Jw5VOVCHRxQ&7)$Q{y>GX}{@#>U_rDFPh6#ewiH zWlw&H}{rPkEsM$5{G5(oAR6!b5Z|BVdp6D2WFP_N_^hZiJ06 zzvFHoI6-iv5*y?tLq{w^MA#L)b6nB^)isj6>4?1}-dG3HhD7LsjRqaqVT;XzZvn&3 zW&jP|fHPPlDFOY;1N`Vv{wNV@g@{Pv0-FrQ2F$h_d2@s6;0f{?mKAMAQAWi}crxIj zAWuRRD#^O=c$CRcAz1D4?n?icR_M5>|F`48{>9Y)H;?uIk24hzm$ALek z{y%@L|9_P6p7Wpc)nYSWJ=Xt!^5ahbKbZCZLH%E^R@-;#|C`05{r?z4f|P!>UC(Ay z9d?p}s@1jjL#XRcLIqsmY$PkBL+AT0q*|ghDbEvwHGb#=u}3Y5O^@4Lb&7bOJ3`l` zBz4+mN*swVj0c`VpCozjd>sfdi#A;+XAPJIpS@DbT5Zz7)gg%|-;TZ;4>=J{6Uc_n zI7e6^DUZ6OT9wXbVg-rAYg65qVOg*u5HC`OEypq}8<0#|cAeC`Bk|05F2gpZi&Zx1 zScVP9GORib#`-kWsf$`7hgRyR;fCN(3bP^QK}lXQ4aG9EiRx5_9iP?9Z`HH>N-fSKnm=M zFg1?)T(~2Mww3HMDJk4ZCH#jAcUh+*g}Z1PR~-v?l2mL6O;zQmi6+7SCuE6|rM=tk^k8D%#}hbWyR(ayld&i%clWX1PC>R8DM?Y-LA4Z+&U*sw%Ed zCLtqzETcXUf(|T+5VI!S%tIis)~>|rz*20ViPcr?Bz@G4UDG?Mg+f>mJ=*>s;pB|Oi7{BxeQWFkrIM$reeyV>UtC{8;mMaOo^cz3@DiWne$Ss zoeC-^&L^ci8!iee2PvqC-1KG2rtxrOu1`)1B%MH4kphX2L)F4-IL8&oOs&nS^9aDu zDMR3F1q)r)rMzoa_PrArOt#5P(0nO-=lxLBZfrm=2(YLA{s(7s8fP;=DDiAC?2cp*j zEg3w*FZFLPr4y+Sh3tDt4CUDMu1e^I9MGB0!LUddPPLP^S7kCCsVzNw?7NuUsdnO~ z+6l`psJ$*;BX?mco@DgEJjIz?kjM}8xPQjY&$2%!My79bespMGacY|6OC!Hk7I}3k&@}4E<|oQCHv1N zfrmz>ki`BeeBOWc&xM`i3Q*GXCYwj6b%hhqPcuXWJC8gQC9;5zAp~mMd zKk~(Y23sV@{-Aip)1?N~`T%T<$4q}pBS0NWo>BrpwdCIw5GFms+k|Nv{(i`VaY|7HqE?$x9ww#aBqjuRdr31&hpKf@1k^en30QX-?{&)MB z|NS`QG5`Cs9uMSye{>x9Q}Vxy$NcX{8Slyeu6E1$eEpdJ{mG9z{r_Or{|EcOX6yCl z-Td$N(f)soF&$Fbt!A6;vHxolgQ~@yCdTh1iISuR%pLm%+_42LWqve-AMLRPEVVkE zTELvIRMVH-=FyBq#aRyHz1;zp?mEC+At)Yf8PvdwU8%;PcodJ54zO_S0OJngLU-%{ ztBDhJPK4U(kd)7Mu&$R>4zao;9+nQUz8_3B=MJz&I>6*WJMj>aY_bx~5j7F?w<>#^ zlB7Wh+N`Pr6Xnnnsf9>cLA7SRr)sjl{wPWLC0BzAu%e)7;oQO&D71 z9K4o3nJ^F%B^88Nrb|r9A6hM^#16q{-3C20kRm|s&`Z+1u&R!LmOzpX6C&4o zjKNlVgc8ch=`0sqCuf1Rs?&iWUXtDfMm8pQFkViqI><`s?1h*QEIo+sUR zu1<2iP{QcsO{1dpwfRmpCWQhMy$ge`#4b*Gry@tL z2BQ+MCWUyW3PF}Gytf*_tTcdiK}(2iiJx0(FAOC&Fcv1-#+a7IjeQPslGEib+gw|t4(A52>2#AcfO%;EtHxn!02`D`QadW4MQjIKr&8;| zW$8$1ot7+T-$`cd)Bsjc{!p=5rMeu3*oQGnX8~b<0}T&-+e$lxwQZwvXTwlW4PddC zv{aI6k93{Nk^Z_37=j#My>9?hsgu)sI)osH__DHf?xWEzRm`pr@H^FGmj~_h zC?}Ffr6IAC&4IsqS{uQLv z4PJ)K*976MOOOmQ79EOdr~a=X&6T6Khu$3z_;OM|a!GKq`uo=}Mb~zV{ps78QDJI> z(~>aD$DS`GJzqHwhoXS$4oo`te5Ik5L(^i_07+H(0TDk$m0Icf>ZRuk`Kk?&GxdDA zbI+IaSOqz6jBWD?K@YAvcYJyNJ4llk`x#vmdg;U|7ad>aW(awR+%hB{2>C!u?265) zmTV-t2(qOCH7w_jFX^2GQ1wlYLz5CV(kV=-6$@ASi;k~^qFFIIevmd!>63u3MgV~) zp$^h8+{ZIkEtiX9lh+xnvWC}9gjIdMk)(H%OwYsWQrlDSm*B%7eP1jW`|L28{otJB zJDqfYL4S1^khY`~v;~xgoExKbIyZl*zQv?FiwA=`OY>JXb$>Nx=x|e%5#&;?NwyWY zw1aGJDK>2jm$L-b%l3eZH#G?D!to4>r$ zovLu3u=l+#$L=pl)Td;m+U49ZIPLmVO?kUp%#S6jGbR|xC3pUTqSerQ>E}+y=2Ov1 z)d(Eh00Dcc0YIPJ^#*cEHSg2}lrYg^i8JcXCQv150s`!d8GIP0juWe@!G+f21_=Ct z>qd&I7iFw8M0qAM8>Nh;rCAE6?pVgEj&&?!HMlO14#yTCCoMou&Pvylh3-x*KpF=O zsdn8Beo!SXK!cI(Ld>o`wg3S#Qsa{%7N#dj3(#;+vP6=NCS|Rqu@ZBjzuh0q`jw>S}pF8EpHaFu!~k2fKD|mH#GpAYFKUV0mWkt zD-RyUo{CuTd*H!f*{K1jof?4HcC4j-dTIb_q=r?5CbEG_8h~((wKNdmpnC^KDro@n zMjJ%rSi=epD2I<0r6UTGcL=;~D_6@&1|{vG@;3u|L2cG9uDSC9oQ!G-~0|i`D}u4Gy^!DO_{W z85FcMU9b&2YAKvx6p3KEs#pxX2Nn1?NGiX7~Sc;MXI6VwEZR>Vr? z3j2wn0E~u&2q9rvT85|YAYi1&QGkst+KuYCRu`}|LTrVXYpYTEouo&o>xwkF$2WU~ zaBN#d<;J8s#OBohjSFDr$8zC`aM6{EIw8>NaH_i`2MmsdLg_of7aDQuM-3M-JF3T` z)RtBDn4EXT(J5+*F2$g%`ntj z`pDkw3?gJe546+?rA@lcQYKWn0xy#^CG{zKeG@UGfbh^w=YEcbLX0>@``8+kZL4Z& z4dVHUFicv5P)=MDF0(HJ0``r)D{s8j|I z%s0}9hDUYZ6XY*@g4oF@$3&t8S-8wS@%DXBko3|F4)ZKlc4$y*T+h3nAjL*HaYz-G zU(S_Cd9E079&Byo%mqSi+pg}Wo}e_=N?<+@Q%?}qUD_T5dXtq_m4JC0hEfq5PCY?R zdV<_VPY|JqmA`Xx*At{;^b(3`Ij12#L7@_NFi2h2bOhI2l)pcK{Xu6ZKUfxI%@kRv zc#yvUAfZ38_0$vO-|7h}=bj)Z4Z+^yjca&Hq~K0HK|y+gh<{ua58$gbeFQ9e?!ZGF zbAl@gvB30WSCEqaRU^(x%~k<-2x%-cEBV_lqXgK}5fqSW_{-H`(y=2*LW?|g1c4AZ zxF|HxgwiD_@!_ri59|MIwRq?J&+^g! zf0Xeze>1hE|LqjX{JXE8zrKAr|J&&ZA>*pVA zj@cjo`9IsozyJD?#-soLvmW>U|A)hYAJqTZ+x?&G^=$s=|9_0J*gxR^@3xE8V*U8> zKR<(Ur}ZE31Au-=|7Y)h{?BH%eEj^Mk1_7~fBykM*T)xsv^oCx{O@M9eDwc5&Up0y ze%9k&|KI%ppdSkd{^&*^`v0M<{}1Z_a<*E( zZT}aG<)i)o7~>Z&o;`hb`|{J@-@bhH^^519Jy~4OuNT!Xe)rw&%YXXx*_Z3jo_zcA z7WMu1yVtj0e)`qde|Y`f%iB+%J$?C)w=b(-eEIbC?WZrlllRRQn@{JnPZzU1Uw*dO zf3{d%&vE-#bME@hr{6w({oBu;yuN+)`uex)>6NdafA!+iS1-PM`Ni#LPkz;^Cs6qL zmruWW@%;A5FQ+?SeE0g7_0w0cx%heWEBosD#mm>fees89-`v0d<%<`uKmX?T_qX4C z_T-qazQ4xWp8n?PtJ}|i`}7raf4Tk5Zuy(r-Ttffd^i8{%gubf`{D~QZ?oPmmR~HY z-@Us1-Pd1UA^ykzr^jA>_4L`--~7|(-=2T?;>CB*U!Q+@{^I4c;|s68`_1XKS6{q% zd3*8u@wzq39n1g=%@?~F+gq%sOZ+~4aZB~U2k=}>vOi9; zxY{ij*X#LWJ(D(pbzTkbcz)CF(T(O<$%91G-``yJp-uw`Yizyc8DYmQG^=h%(&Q{AAG@0`R z2zHud4F{I;xeu#_#N5**7IL-N%r5rv=I27(PcomMiN#|#*Q?EJznm|Za~`(3V)^G; z=4$|Y4~>w(-Eu!&T5aX~_F|SdKY`$?`=xsC*Jimq|6D!vSK=?|Fux=9YJ0t0BSmm! zv7awiSBu@|j@G*^eB2`XEEM+0rNtgv?Dm%{y!>P87i3u63IBX~JzpW=yUlXG*shT5 z<(=@)=kxvM?*HSZ<^3(yLw`T~Vv^aN^e;Ax>y7wc%f)_+6mG88t9!{@Ef%}Q7D1lx zWfyX3y^`-2lKIvjnZ6*`_MW4=)%9kFuENtbT)kQy1#g;UyPFB(tTt;AN4bK+U!joG z9Di;j^*BD*xXk~YTY&!(@;~dx{LjZ3kNKaU^>`@%^JC+{pOF7q%pUVUA7wn4|H0?q zE^urf^FKfNaj*X$%KHDH{u7(5-pT*09`ipRWjyA8{xb7FZ~sY__vC*z*Fg1>plvhX zZa2%T^?v(s{%18^+7Jp~=6~M$>l+W|e-`WO)qcGt$|aQE5aO;^?@#}%u9lnG8|k07 z{=CF{(mw>iMA$5IK@7TBU#;f*hx0$%>5}ArF7iL`{P}|i^FMP*%`6t1{hIi9N0hzX z?H|nlOc$2>^L4#R?EfpVz%Ec_r@Q3y^&^UD|BsSDVH5Qnudcj%HsVw9LeA8E^|0(%-$h4bgc|I7IQ{1Fg;3Gx5q`QMK;9^?O?^>`@$|FLo4Pl*5L+sF9-ql|~+|NRnc zxp|ELfBNHI|38%V|3UpHN__k8e-i&ce*V)(86Q0U-_9Q6|35zdfBPf3K0svt&Sy^j z$U*Z%pO^HWqXzS9o{h?H_q*+qKzFshJN@zQQG@w(%;4gv!8@PL^I$wn)Oby}xhD2r zuLNzb*8ADR@$7QCwBBznMyUDr z$B;Z&$X_gG*Q+H=-)v^f#gf&|m+vX$%a!$f|5(U>9FOC1JTU$*4!98G0Hy!{E9~bw literal 0 HcmV?d00001 diff --git a/nf-tests/helpers/splice_in/AQUAE.splice b/nf-tests/helpers/splice_in/AQUAE.splice new file mode 100644 index 0000000..18ef280 --- /dev/null +++ b/nf-tests/helpers/splice_in/AQUAE.splice @@ -0,0 +1,2 @@ +sp|O66429|EFTU_AQUAE;sp|O67618|LEPA_AQUAE +sp|O66778|ENO_AQUAE diff --git a/nf-tests/options.nf.test b/nf-tests/options.nf.test new file mode 100644 index 0000000..f7b8f43 --- /dev/null +++ b/nf-tests/options.nf.test @@ -0,0 +1,107 @@ +nextflow_pipeline { + + name "Test pipeline FastOMA with non-default options" + script "../FastOMA.nf" + tag "pipeline" + tag "pipeline_options" + + test("id transformer, MSA/gene tree output and disabled scores") { + + when { + params { + outdir = "$outputDir" + output_folder = "$outputDir" + msa_folder = "$outputDir/msa" + genetrees_folder = "$outputDir/genetrees" + fasta_header_id_transformer = "UniProt" + write_msas = true + write_genetrees = true + // the report needs the CompletenessScore, so only the other two are disabled here + disable_implied_losses_score = true + disable_tcs_score = true + } + } + + then { + def out = file(params.output_folder).toPath() + def orthoxml = out.resolve('FastOMA_HOGs.orthoxml') + def orthoxml_text = orthoxml.text + def roothogs = FastomaOutput.groupPartition(out.resolve('RootHOGs.tsv')) + + assertAll( + { assert workflow.success }, + // UniProt transformer: "sp|P13927|EFTU_MYCGE" -> "P13927" in all outputs + { assert roothogs.flatten().every { it ==~ /[A-Z0-9]{6,10}/ } }, + { assert FastomaOutput.canonicalHogs(orthoxml).every { !it.contains('|') } }, + { assert orthoxml_text.contains('CompletenessScore') }, + { assert !orthoxml_text.contains('ImpliedLosses') }, + { assert !orthoxml_text.contains('TCSScore') }, + { assert file("${params.msa_folder}").list().size() > 0 }, + { assert file("${params.genetrees_folder}").list().size() > 0 }, + { assert snapshot( + roothogs, + FastomaOutput.groupPartition(out.resolve('OrthologousGroups.tsv')), + FastomaOutput.pairs(out.resolve('orthologs.tsv.gz')), + ).match() } + ) + } + } + + test("archive input with precomputed hogmaps") { + + when { + params { + outdir = "$outputDir" + output_folder = "$outputDir" + hogmap_folder = "$outputDir/hogmap" + input = "${projectDir}/nf-tests/helpers/input_archive.tar.gz" + } + } + + then { + def out = file(params.output_folder).toPath() + def hogmaps = file("${params.hogmap_folder}").listFiles().findAll { it.name.endsWith('.hogmap') } + + assertAll( + { assert workflow.success }, + { assert hogmaps.size() == 3 }, + // the precomputed hogmaps from the archive are used, omamer is not re-run + { assert hogmaps.every { it.text.contains('precomputed-fixture-marker') } }, + { assert snapshot( + FastomaOutput.groupPartition(out.resolve('RootHOGs.tsv')), + FastomaOutput.canonicalHogs(out.resolve('FastOMA_HOGs.orthoxml')), + ).match() } + ) + } + } + + test("splice files select one isoform per gene") { + + when { + params { + outdir = "$outputDir" + output_folder = "$outputDir" + // AQUAE.splice declares EFTU_AQUAE and LEPA_AQUAE as isoforms of one gene + splice_folder = "${projectDir}/nf-tests/helpers/splice_in" + } + } + + then { + def out = file(params.output_folder).toPath() + def orthoxml = out.resolve('FastOMA_HOGs.orthoxml') + def referenced = FastomaOutput.geneRefCounts(orthoxml).keySet() + def isoforms = ['sp|O66429|EFTU_AQUAE', 'sp|O67618|LEPA_AQUAE'] + + assertAll( + { assert workflow.success }, + // exactly one isoform of the gene ends up in the HOGs + { assert referenced.intersect(isoforms).size() == 1 }, + { assert orthoxml.text.contains('main_isoform=') }, + { assert snapshot( + FastomaOutput.groupPartition(out.resolve('RootHOGs.tsv')), + FastomaOutput.canonicalHogs(orthoxml), + ).match() } + ) + } + } +} diff --git a/nf-tests/options.nf.test.snap b/nf-tests/options.nf.test.snap new file mode 100644 index 0000000..ee0be17 --- /dev/null +++ b/nf-tests/options.nf.test.snap @@ -0,0 +1,288 @@ +{ + "id transformer, MSA/gene tree output and disabled scores": { + "content": [ + [ + [ + "O66429", + "P0CD71", + "P13927" + ], + [ + "O66686", + "O84332" + ], + [ + "O66778", + "O84591" + ], + [ + "O66907", + "P47641" + ], + [ + "O67032", + "O84026", + "P47500" + ], + [ + "O67161", + "P0CE13", + "P47543" + ], + [ + "O67547", + "O84829" + ], + [ + "O67618", + "O84067" + ], + [ + "O67736", + "O84081" + ], + [ + "O67828", + "P47639" + ], + [ + "O67943", + "P0C0Z7" + ], + [ + "P17821", + "P47547" + ] + ], + [ + [ + "O66429", + "P0CD71", + "P13927" + ], + [ + "O66686", + "O84332" + ], + [ + "O66778", + "O84591" + ], + [ + "O66907", + "P47641" + ], + [ + "O67032", + "O84026", + "P47500" + ], + [ + "O67161", + "P0CE13", + "P47543" + ], + [ + "O67547", + "O84829" + ], + [ + "O67618", + "O84067" + ], + [ + "O67736", + "O84081" + ], + [ + "O67828", + "P47639" + ], + [ + "O67943", + "P0C0Z7" + ], + [ + "P17821", + "P47547" + ] + ], + [ + "O66429 <-> P0CD71", + "O66429 <-> P13927", + "O66686 <-> O84332", + "O66778 <-> O84591", + "O66907 <-> P47641", + "O67032 <-> O84026", + "O67032 <-> P47500", + "O67161 <-> P0CE13", + "O67161 <-> P47543", + "O67547 <-> O84829", + "O67618 <-> O84067", + "O67736 <-> O84081", + "O67828 <-> P47639", + "O67943 <-> P0C0Z7", + "O84026 <-> P47500", + "P0CD71 <-> P13927", + "P0CE13 <-> P47543", + "P17821 <-> P47547" + ] + ], + "timestamp": "2026-10-20T14:23:51.250062", + "meta": { + "nf-test": "0.9.5", + "nextflow": "24.10.2" + } + }, + "archive input with precomputed hogmaps": { + "content": [ + [ + [ + "sp|O66429|EFTU_AQUAE", + "sp|P0CD71|EFTU_CHLTR", + "sp|P13927|EFTU_MYCGE" + ], + [ + "sp|O66686|TPIS_AQUAE", + "sp|O84332|TPIS_CHLTR" + ], + [ + "sp|O66778|ENO_AQUAE", + "sp|O84591|ENO_CHLTR" + ], + [ + "sp|O66907|ATPA_AQUAE", + "sp|P47641|ATPA_MYCGE" + ], + [ + "sp|O67032|RF1_AQUAE", + "sp|O84026|RF1_CHLTR", + "sp|P47500|RF1_MYCGE" + ], + [ + "sp|O67161|G3P_AQUAE", + "sp|P0CE13|G3P_CHLTR", + "sp|P47543|G3P_MYCGE" + ], + [ + "sp|O67547|SUCD_AQUAE", + "tr|O84829|O84829_CHLTR" + ], + [ + "sp|O67618|LEPA_AQUAE", + "sp|O84067|LEPA_CHLTR" + ], + [ + "sp|O67736|FOLD_AQUAE", + "sp|O84081|FOLD_CHLTR" + ], + [ + "sp|O67828|ATPB_AQUAE", + "sp|P47639|ATPB_MYCGE" + ], + [ + "sp|O67943|CH60_AQUAE", + "sp|P0C0Z7|CH60_CHLTR" + ], + [ + "sp|P17821|DNAK_CHLTR", + "sp|P47547|DNAK_MYCGE" + ] + ], + [ + "OG[inter1](sp|O66686|TPIS_AQUAE, sp|O84332|TPIS_CHLTR)", + "OG[inter1](sp|O66778|ENO_AQUAE, sp|O84591|ENO_CHLTR)", + "OG[inter1](sp|O67547|SUCD_AQUAE, tr|O84829|O84829_CHLTR)", + "OG[inter1](sp|O67618|LEPA_AQUAE, sp|O84067|LEPA_CHLTR)", + "OG[inter1](sp|O67736|FOLD_AQUAE, sp|O84081|FOLD_CHLTR)", + "OG[inter1](sp|O67943|CH60_AQUAE, sp|P0C0Z7|CH60_CHLTR)", + "OG[inter2](OG[inter1](sp|O66429|EFTU_AQUAE, sp|P0CD71|EFTU_CHLTR), sp|P13927|EFTU_MYCGE)", + "OG[inter2](OG[inter1](sp|O67032|RF1_AQUAE, sp|O84026|RF1_CHLTR), sp|P47500|RF1_MYCGE)", + "OG[inter2](OG[inter1](sp|O67161|G3P_AQUAE, sp|P0CE13|G3P_CHLTR), sp|P47543|G3P_MYCGE)", + "OG[inter2](sp|O66907|ATPA_AQUAE, sp|P47641|ATPA_MYCGE)", + "OG[inter2](sp|O67828|ATPB_AQUAE, sp|P47639|ATPB_MYCGE)", + "OG[inter2](sp|P17821|DNAK_CHLTR, sp|P47547|DNAK_MYCGE)" + ] + ], + "timestamp": "2026-10-20T14:24:13.332548", + "meta": { + "nf-test": "0.9.5", + "nextflow": "24.10.2" + } + }, + "splice files select one isoform per gene": { + "content": [ + [ + [ + "sp|O66686|TPIS_AQUAE", + "sp|O84332|TPIS_CHLTR" + ], + [ + "sp|O66778|ENO_AQUAE", + "sp|O84591|ENO_CHLTR" + ], + [ + "sp|O66907|ATPA_AQUAE", + "sp|P47641|ATPA_MYCGE" + ], + [ + "sp|O67032|RF1_AQUAE", + "sp|O84026|RF1_CHLTR", + "sp|P47500|RF1_MYCGE" + ], + [ + "sp|O67161|G3P_AQUAE", + "sp|P0CE13|G3P_CHLTR", + "sp|P47543|G3P_MYCGE" + ], + [ + "sp|O67547|SUCD_AQUAE", + "tr|O84829|O84829_CHLTR" + ], + [ + "sp|O67618|LEPA_AQUAE", + "sp|O84067|LEPA_CHLTR" + ], + [ + "sp|O67736|FOLD_AQUAE", + "sp|O84081|FOLD_CHLTR" + ], + [ + "sp|O67828|ATPB_AQUAE", + "sp|P47639|ATPB_MYCGE" + ], + [ + "sp|O67943|CH60_AQUAE", + "sp|P0C0Z7|CH60_CHLTR" + ], + [ + "sp|P0CD71|EFTU_CHLTR", + "sp|P13927|EFTU_MYCGE" + ], + [ + "sp|P17821|DNAK_CHLTR", + "sp|P47547|DNAK_MYCGE" + ] + ], + [ + "OG[inter1](sp|O66686|TPIS_AQUAE, sp|O84332|TPIS_CHLTR)", + "OG[inter1](sp|O66778|ENO_AQUAE, sp|O84591|ENO_CHLTR)", + "OG[inter1](sp|O67547|SUCD_AQUAE, tr|O84829|O84829_CHLTR)", + "OG[inter1](sp|O67618|LEPA_AQUAE, sp|O84067|LEPA_CHLTR)", + "OG[inter1](sp|O67736|FOLD_AQUAE, sp|O84081|FOLD_CHLTR)", + "OG[inter1](sp|O67943|CH60_AQUAE, sp|P0C0Z7|CH60_CHLTR)", + "OG[inter2](OG[inter1](sp|O67032|RF1_AQUAE, sp|O84026|RF1_CHLTR), sp|P47500|RF1_MYCGE)", + "OG[inter2](OG[inter1](sp|O67161|G3P_AQUAE, sp|P0CE13|G3P_CHLTR), sp|P47543|G3P_MYCGE)", + "OG[inter2](sp|O66907|ATPA_AQUAE, sp|P47641|ATPA_MYCGE)", + "OG[inter2](sp|O67828|ATPB_AQUAE, sp|P47639|ATPB_MYCGE)", + "OG[inter2](sp|P0CD71|EFTU_CHLTR, sp|P13927|EFTU_MYCGE)", + "OG[inter2](sp|P17821|DNAK_CHLTR, sp|P47547|DNAK_MYCGE)" + ] + ], + "timestamp": "2026-10-20T14:24:53.930715", + "meta": { + "nf-test": "0.9.5", + "nextflow": "24.10.2" + } + } +} \ No newline at end of file From 945c03bdd19209f6a9ea7faece31ca60af07d421 Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Tue, 20 Oct 2026 14:25:34 +0200 Subject: [PATCH 04/13] test: unit and stage tests for rootHOG inference, input checks and batching Covers rootHOG grouping (singleton resolution, merge candidates, HCS clustering, merge_rhogs2, big-rootHOG filtering), hogmap/proteome/splice parsing and writing, fastoma-check-input helpers, batch_roothogs and both UnionFind copies. test_roothog_stage.py runs fastoma-infer-roothogs on testdata and on a synthetic dataset that reaches the singleton, merge, big-rootHOG, splice and linclust branches, and checks that every input protein is accounted for. Known bugs are pinned with strict xfail markers, e.g. merge_rhogs2 losing proteins when a cluster overflows big_rhog_size and proteins without hogmap rows vanishing silently. --- tests/roothog_helpers.py | 63 ++++++++++ tests/test_batch_roothogs.py | 58 +++++++++ tests/test_check_input.py | 140 +++++++++++++++++++++ tests/test_roothog_grouping.py | 224 +++++++++++++++++++++++++++++++++ tests/test_roothog_io.py | 208 ++++++++++++++++++++++++++++++ tests/test_roothog_stage.py | 161 ++++++++++++++++++++++++ tests/test_unionfind.py | 60 +++++++++ 7 files changed, 914 insertions(+) create mode 100644 tests/roothog_helpers.py create mode 100644 tests/test_batch_roothogs.py create mode 100644 tests/test_check_input.py create mode 100644 tests/test_roothog_grouping.py create mode 100644 tests/test_roothog_io.py create mode 100644 tests/test_roothog_stage.py create mode 100644 tests/test_unionfind.py diff --git a/tests/roothog_helpers.py b/tests/roothog_helpers.py new file mode 100644 index 0000000..719e578 --- /dev/null +++ b/tests/roothog_helpers.py @@ -0,0 +1,63 @@ +"""Small builders for rootHOG-stage tests: hogmap hits, hogmap/FASTA files and rootHOG partitions.""" +from pathlib import Path + +from Bio.Seq import Seq +from Bio.SeqRecord import SeqRecord + +from FastOMA._utils_roothog import HOGMapData + +HOGMAP_HEADER = ("qseqid", "hogid", "hoglevel", "family_p", "family_count", "family_normcount", + "subfamily_score", "subfamily_count", "qseqlen", "subfamily_medianseqlen", "qseq_overlap") + + +def hit(hogid, score, seqlen=100, medlen=100): + """One omamer hit as stored by parse_hogmap_omamer (all fields are strings).""" + return HOGMapData(hogid, str(score), str(seqlen), str(medlen)) + + +def rec(prot_id, seq="MKVLAAGIVLLLAAGCSSHE"): + return SeqRecord(Seq(seq), id=prot_id, description="") + + +def write_fasta(path, records): + """records: iterable of (id, sequence).""" + path = Path(path) + path.parent.mkdir(parents=True, exist_ok=True) + path.write_text("".join(f">{pid}\n{seq}\n" for pid, seq in records)) + return path + + +def write_hogmap(path, rows, comment=True): + """rows: iterable of (qseqid, hogid, family_p); hogid 'N/A' marks an unmapped protein (omamer v2).""" + path = Path(path) + path.parent.mkdir(parents=True, exist_ok=True) + lines = ["!omamer-version: 2.0.0"] if comment else [] + lines.append("\t".join(HOGMAP_HEADER)) + for qseqid, hogid, score in rows: + if hogid == "N/A": + vals = [qseqid, "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "N/A", "100", "N/A", "N/A"] + else: + vals = [qseqid, hogid, "LUCA", str(score), "10", "1.0", "1.0", "10", "100", "100", "1.0"] + lines.append("\t".join(vals)) + path.write_text("\n".join(lines) + "\n") + return path + + +def fasta_ids(path): + """Protein ids (header up to the first space and '||') of a FASTA file.""" + ids = [] + with open(path) as fh: + for line in fh: + if line.startswith(">"): + ids.append(line[1:].split()[0].split("||")[0]) + return ids + + +def read_rhog_partition(folder, pattern="HOG_*.fa"): + """Partition of protein ids over the rootHOG FASTA files in folder, ignoring file names and order.""" + return frozenset(frozenset(fasta_ids(f)) for f in Path(folder).glob(pattern)) + + +def partition(rhogs_prots): + """Order-independent form of a rhogs_prots dict ({rhogid: [(species, prot), ...]}).""" + return frozenset(frozenset(v) for v in rhogs_prots.values()) diff --git a/tests/test_batch_roothogs.py b/tests/test_batch_roothogs.py new file mode 100644 index 0000000..1575819 --- /dev/null +++ b/tests/test_batch_roothogs.py @@ -0,0 +1,58 @@ +"""Tests for splitting rootHOG FASTA files into big/rest batches (batch_roothogs.py).""" +import pytest + +from FastOMA import batch_roothogs as B + + +def make_files(folder, sizes): + for name, size in sizes.items(): + path = folder / name + path.parent.mkdir(parents=True, exist_ok=True) + path.write_bytes(b"A" * size) + + +def batches(folder): + return {d.name: sorted(f.name for f in d.iterdir()) for d in sorted(folder.iterdir())} + + +def run(tmp_path, tag="out"): + big, rest = tmp_path / tag / "big", tmp_path / tag / "rest" + B.folder_1h_rhog(tmp_path / "in", big, rest) + return batches(big), batches(rest) + + +def test_big_files_get_own_batch_in_descending_size(tmp_path): + make_files(tmp_path / "in", {"big1.fa": 500_000, "big2.fa": 450_000, "huge.fa": 1_300_000, + "edge.fa": 400_000, "s1.fa": 300_000, "sub/s2.fa": 200, "x.txt": 10}) + big, rest = run(tmp_path) + assert big == {"0": ["huge.fa"], "1": ["big1.fa"], "2": ["big2.fa"]} + # threshold is strict; subfolders are searched; non-.fa files ignored + assert rest == {"0": ["edge.fa", "s1.fa", "s2.fa"]} + + +def test_rest_batches_close_after_exceeding_max_size(tmp_path): + make_files(tmp_path / "in", {f"s{i}.fa": 390_000 for i in range(7)}) + _, rest = run(tmp_path) + # the file that pushes the batch above 2 MB stays in that batch + assert [len(v) for v in rest.values()] == [6, 1] + + +def test_empty_input(tmp_path): + (tmp_path / "in").mkdir() + assert run(tmp_path) == ({}, {}) + + +def test_rerun_into_existing_output_fails(tmp_path): + # characterises current behaviour: batch folders are created with mkdir() without exist_ok + make_files(tmp_path / "in", {"s.fa": 10}) + run(tmp_path) + with pytest.raises(FileExistsError): + run(tmp_path) + + +@pytest.mark.xfail(strict=True, reason="BUG: files with the same name in different subfolders overwrite " + "each other in a batch (shutil.copy at batch_roothogs.py:45)") +def test_same_basename_in_subfolders_kept(tmp_path): + make_files(tmp_path / "in", {"a/HOG_1.fa": 10, "b/HOG_1.fa": 20}) + _, rest = run(tmp_path) + assert sum(len(v) for v in rest.values()) == 2 diff --git a/tests/test_check_input.py b/tests/test_check_input.py new file mode 100644 index 0000000..9fbfed0 --- /dev/null +++ b/tests/test_check_input.py @@ -0,0 +1,140 @@ +"""Tests for the input validation of fastoma-check-input (check_input.py).""" +import logging + +import pytest +from ete3 import Tree + +from FastOMA import check_input as C +from conftest import TESTDATA_DIR +from roothog_helpers import rec + +PROT = "MKVLAAGIVLLLAAGCSSHE" + + +def make_files(folder, names): + folder.mkdir(exist_ok=True) + for n in names: + (folder / n).write_text(">p\nMKV\n") + return str(folder) + + +class TestCheckProteomeFiles: + def test_species_names(self, tmp_path): + res = C.check_proteome_files(make_files(tmp_path / "p", ["A.fa", "B.fa", "Homo.sapiens.fa"])) + assert sorted(res) == ["A", "B", "Homo.sapiens"] + + def test_needs_three_proteomes(self, tmp_path): + assert C.check_proteome_files(make_files(tmp_path / "p", ["A.fa", "B.fa"])) is False + + def test_mixed_extensions_rejected(self, tmp_path): + assert C.check_proteome_files(make_files(tmp_path / "p", ["A.fa", "B.fa", "C.fasta"])) is False + + +class TestCheckProteome: + @staticmethod + def check(recs): + return C.check_proteome(["A"], {"A": recs}, "folder") + + def test_ok(self): + assert self.check([rec(f"p{i}", PROT) for i in range(3)]) is True + + @pytest.mark.parametrize("recs", [ + pytest.param([rec("p", PROT)] * 3, id="duplicate-ids"), + pytest.param([rec("x" * 61, PROT), rec("b", PROT), rec("c", PROT)], id="id-longer-than-60"), + pytest.param([rec(f"p{i}", "ACGTACGTAC") for i in range(3)], id="dna"), + pytest.param([rec("a", PROT), rec("b", PROT)], id="two-proteins"), + ]) + def test_rejected(self, recs): + assert self.check(recs) is False + + @pytest.mark.xfail(strict=True, reason="BUG: empty proteome raises ZeroDivisionError (check_input.py:65) " + "instead of being reported as invalid") + def test_empty_proteome_rejected(self): + assert self.check([]) is False + + +class TestCheckHogmapFiles: + def test_species_names(self, tmp_path): + folder = make_files(tmp_path / "h", ["A.fa.hogmap", "B.fasta.hogmap", "notes.txt"]) + assert sorted(C.check_hogmap_files(folder)) == ["A", "B"] + + @pytest.mark.xfail(strict=True, reason="BUG: dots are dropped from species names (check_input.py:91), " + "so they never match the proteome names") + def test_dotted_species_name(self, tmp_path): + assert C.check_hogmap_files(make_files(tmp_path / "h", ["Homo.sapiens.fa.hogmap"])) == ["Homo.sapiens"] + + +class TestSpeciesTreeChecks: + def test_leaves_ok(self): + assert C.check_speciestree_leaves(Tree("((A,B),C);"), ["A", "B"]) is True + + def test_leaves_missing_species(self): + assert C.check_speciestree_leaves(Tree("((A,B),C);"), ["A", "D"]) is False + + def test_leaves_duplicated(self): + assert C.check_speciestree_leaves(Tree("((A,B),A);"), ["A", "B"]) is False + + @pytest.mark.xfail(strict=True, reason="BUG: name list is reset inside the loop (check_input.py:100), " + "duplicate internal names are never reported") + def test_internalnode_duplicates_reported(self, caplog): + with caplog.at_level(logging.WARNING, logger="FastOMA"): + C.check_speciestree_internalnode(Tree("((A,B)x,(C,D)x)r;", format=1)) + assert any("unique" in r.message for r in caplog.records) + + @pytest.mark.xfail(strict=True, reason="BUG: UnboundLocalError for trees without internal nodes " + "(check_input.py:106)") + def test_internalnode_single_leaf(self): + C.check_speciestree_internalnode(Tree("A;")) + + +class TestAddInternalNodePrune: + @staticmethod + def prune(tmp_path, nwk, species): + out = tmp_path / "tree.nwk" + C.add_internal_node_prune(Tree(nwk, format=1), species, str(out)) + return out.read_text().strip() + + @pytest.mark.parametrize("nwk, species, expected", [ + ("((A,B),(C,D));", "ABCD", "((A:1,B:1)internal_0:1,(C:1,D:1)internal_1:1)internal_2:0;"), + ("((A,B)inner,(C,D)inner)root;", "ABCD", "((A:1,B:1)inner:1,(C:1,D:1)internal_0:1)root:0;"), + ("((A,B)abc,(C,D)'a.bc')root;", "ABCD", "((A:1,B:1)abc:1,(C:1,D:1)abc_0:1)root:0;"), + # names shorter than 3 characters are replaced + ("((A,B)ab,(C,D)cd)root;", "ABC", "((A:1,B:1)internal_0:1,C:1)root:0;"), + ]) + def test_rename_and_prune(self, tmp_path, nwk, species, expected): + assert self.prune(tmp_path, nwk, list(species)) == expected + + @pytest.mark.xfail(strict=True, reason="BUG: a name made only of special chars becomes empty " + "(check_input.py:168)") + def test_special_char_only_name(self, tmp_path): + tree = Tree(self.prune(tmp_path, "((A,B)'!!!',(C,D)cde)root;", list("ABCD")), format=1) + assert all(n.name for n in tree.traverse()) + + @pytest.mark.xfail(strict=True, reason="BUG: internal node named like a leaf makes ete3 prune raise " + "'Ambiguous node name' (check_input.py:180)") + def test_internal_node_named_like_leaf(self, tmp_path): + res = self.prune(tmp_path, "((AQUAE,CHLTR)MYCGE,MYCGE)root;", ["AQUAE", "CHLTR", "MYCGE"]) + assert {n.name for n in Tree(res, format=1).get_leaves()} == {"AQUAE", "CHLTR", "MYCGE"} + + +def test_check_omamer_db(tmp_path): + small = tmp_path / "small.h5" + small.write_bytes(b"x" * 10) + assert C.check_omamer_db(None) is True + assert C.check_omamer_db(str(tmp_path / "missing.h5")) is False + assert C.check_omamer_db(str(small)) is False + assert C.check_omamer_db(str(TESTDATA_DIR / "test.h5")) is True + + +class TestCheckSplice: + def test_ok(self): + assert C.check_splice({"A": [["a1", "a2"], ["b1"]], "B": []}) is None + + def test_no_isoforms_exits(self): + with pytest.raises(SystemExit): + C.check_splice({"A": [["a1"], ["b1"]]}) + + @pytest.mark.xfail(strict=True, reason="BUG: species with a single splice line are ignored " + "(len(isoforms)>1 at check_input.py:195)") + def test_single_gene_with_isoforms(self): + assert C.check_splice({"A": [["a1", "a2"]]}) is None diff --git a/tests/test_roothog_grouping.py b/tests/test_roothog_grouping.py new file mode 100644 index 0000000..44e6d35 --- /dev/null +++ b/tests/test_roothog_grouping.py @@ -0,0 +1,224 @@ +"""Tests for the in-memory rootHOG grouping logic of fastoma-infer-roothogs (_utils_roothog.py).""" +import os +import subprocess +import sys +from collections import Counter + +import networkx as nx +import pytest + +from FastOMA import _utils_roothog as U +from roothog_helpers import hit, partition + + +@pytest.mark.parametrize("hogid, expected", [ + ("HOG:E0990677.124f", "E0990677"), + ("HOG:E0990677", "E0990677"), + ("HOG:C0886513.1b.2a", "C0886513"), +]) +def test_extract_root_hog_id(hogid, expected): + assert U.extract_root_hog_id(hogid) == expected + + +def test_extract_root_hog_id_requires_prefix(): + # characterises current behaviour: ids without the 'HOG:' prefix are not supported + with pytest.raises(IndexError): + U.extract_root_hog_id("E0990677.1a") + + +def test_group_prots_by_roothogs_uses_first_hit_only(): + hogmaps = {"A": {"a": [hit("HOG:X1.1a", 1), hit("HOG:Y1", 900)]}, + "B": {"b": [hit("HOG:X1", 1)]}} + assert U.group_prots_by_roothogs(hogmaps) == {"X1": [("A", "a"), ("B", "b")]} + + +class TestResolveSingletons: + def test_singleton_moves_to_multi_member_alt_rhog(self, roothog_conf): + hogmaps = {"S1": {"p": [hit("HOG:A1", 500)], "q": [hit("HOG:A1", 500)], + "s": [hit("HOG:B1", 500), hit("HOG:A1.3", 300)]}} + res = U.resolve_singletons(U.group_prots_by_roothogs(hogmaps), hogmaps, roothog_conf()) + assert res == {"A1": [("S1", "p"), ("S1", "q"), ("S1", "s")]} + + @pytest.mark.parametrize("score, moved", [(70, True), (69.9, False)]) + def test_alt_hit_threshold_is_inclusive(self, roothog_conf, score, moved): + hogmaps = {"S1": {"p": [hit("HOG:A1", 500)], "q": [hit("HOG:A1", 500)], + "s": [hit("HOG:B1", 500), hit("HOG:A1", score)]}} + res = U.resolve_singletons(U.group_prots_by_roothogs(hogmaps), hogmaps, + roothog_conf(mergHOG_fscore_thresh=70)) + assert (("S1", "s") in res["A1"]) == moved + assert ("B1" in res) != moved + + def test_alt_hit_to_singleton_rhog_does_not_move(self, roothog_conf): + # characterises current behaviour: q's alternative hit is p's best rootHOG, but since A1 is a + # singleton too, p and q are not merged (only singletons sharing an *alternative* rootHOG are) + hogmaps = {"S1": {"p": [hit("HOG:A1.1a", 500)], + "q": [hit("HOG:B1", 500), hit("HOG:A1.2b", 300)]}} + res = U.resolve_singletons(U.group_prots_by_roothogs(hogmaps), hogmaps, roothog_conf()) + assert partition(res) == {frozenset({("S1", "p")}), frozenset({("S1", "q")})} + + def test_singletons_sharing_alt_rhog_are_merged(self, roothog_conf): + hogmaps = {"S1": {"p": [hit("HOG:A1", 500), hit("HOG:C1", 300)]}, + "S2": {"q": [hit("HOG:B1", 500), hit("HOG:C1", 300)]}, + "S3": {"r": [hit("HOG:D1", 500), hit("HOG:C1", 10)]}} + res = U.resolve_singletons(U.group_prots_by_roothogs(hogmaps), hogmaps, roothog_conf()) + assert partition(res) == {frozenset({("S1", "p"), ("S2", "q")}), frozenset({("S3", "r")})} + # the merged group is named after one of the members' rootHOGs (which one depends on the hash seed) + assert (set(res) - {"D1"}) <= {"A1", "B1"} + + +class TestFindRhogCandidatePairs: + @staticmethod + def hogmaps(n_shared=12, alt_score=300): + # n_shared proteins with best hit A1 and an alternative hit to B1, plus two B1-only proteins + hm = {"S1": {f"p{i}": [hit("HOG:A1.1a", 500), hit("HOG:B1", alt_score)] for i in range(n_shared)}} + hm["S1"].update({f"b{i}": [hit("HOG:B1", 500)] for i in range(2)}) + return hm + + def candidates(self, conf, **kw): + hm = self.hogmaps(**kw) + return U.find_rhog_candidate_pairs(hm, U.group_prots_by_roothogs(hm), conf) + + def test_pair_found_bigger_first(self, roothog_conf): + # sizes count all hits above threshold: A1=12, B1=14 + assert self.candidates(roothog_conf()) == [("B1", "A1")] + + def test_fscore_threshold_is_strict(self, roothog_conf): + # characterises current behaviour: strict '>' here, while resolve_singletons uses '>=' + assert self.candidates(roothog_conf(mergHOG_fscore_thresh=300)) == [] + + def test_shared_count_must_exceed_threshold(self, roothog_conf): + assert self.candidates(roothog_conf(), n_shared=10) == [] + + def test_big_rhogs_are_not_merged(self, roothog_conf): + # rootHOGs must be smaller than big_rhog_size / 6 (here 10) + assert self.candidates(roothog_conf(big_rhog_size=60)) == [] + + def test_pairs_with_non_best_rhog_are_skipped(self, roothog_conf): + hm = self.hogmaps() + rhogs_prots = U.group_prots_by_roothogs(hm) + del rhogs_prots["B1"] + assert U.find_rhog_candidate_pairs(hm, rhogs_prots, roothog_conf()) == [] + + +def test_cluster_rhogs_connected_components(): + clusters = U.cluster_rhogs([("a", "b"), ("c", "d"), ("b", "e")]) + assert {frozenset(c) for c in clusters} == {frozenset("abe"), frozenset("cd")} + assert all(isinstance(c, list) for c in clusters) + + +class TestHCS: + def test_two_triangles_joined_by_bridge_are_split(self): + pairs = [("a", "b"), ("b", "c"), ("a", "c"), ("d", "e"), ("e", "f"), ("d", "f"), ("c", "d")] + clusters = U.cluster_rhogs_nx([list("abcdef")], pairs) + assert {frozenset(c) for c in clusters} == {frozenset("abc"), frozenset("def")} + + def test_complete_graph_stays_together(self): + nodes = list("abcd") + pairs = [(x, y) for i, x in enumerate(nodes) for y in nodes[i + 1:]] + assert [set(c) for c in U.cluster_rhogs_nx([nodes], pairs)] == [set(nodes)] + + def test_path_of_three_keeps_one_pair(self): + # characterises current behaviour: HCS cuts a path, the leftover node is not merged at all + clusters = U.cluster_rhogs_nx([list("abc")], [("a", "b"), ("b", "c")]) + assert len(clusters) == 1 and len(clusters[0]) == 2 and "b" in clusters[0] + + def test_highly_connected(self): + g = nx.complete_graph(4) + assert U.highly_connected(g, nx.minimum_edge_cut(g)) + assert not U.highly_connected(nx.path_graph(3), {(0, 1)}) + + def test_clusters_of_1000_rhogs_are_not_merged(self): + nodes = [f"R{i}" for i in range(1000)] + clusters = U.cluster_rhogs_nx([nodes], [("R0", "R1")]) + # characterises current behaviour: huge clusters are returned as singletons instead of dropped + assert len(clusters) == 1000 and all(len(c) == 1 for c in clusters) + + @pytest.mark.slow + @pytest.mark.xfail(strict=True, reason="BUG: merge partition depends on PYTHONHASHSEED via set order " + "fed into HCS (_utils_roothog.py:576/1028)") + def test_merge_partition_independent_of_hash_seed(self): + code = ("from FastOMA import _utils_roothog as U\n" + "p=[('R1','R2'),('R2','R3'),('R3','R4'),('R4','R5')]\n" + "print(sorted(sorted(c) for c in U.cluster_rhogs_nx(U.cluster_rhogs(p), p)))") + results = {subprocess.run([sys.executable, "-c", code], capture_output=True, text=True, check=True, + env=dict(os.environ, PYTHONHASHSEED=str(seed))).stdout + for seed in range(8)} + assert len(results) == 1 + + +class TestMergeRhogs2: + @staticmethod + def patch_clusters(monkeypatch, clusters): + monkeypatch.setattr(U, "find_rhog_candidate_pairs", lambda *a: []) + monkeypatch.setattr(U, "cluster_rhogs_nx", lambda cl, cp: [list(c) for c in clusters]) + + def test_cluster_merged_into_smallest_id(self, in_tmp_dir, monkeypatch, roothog_conf): + self.patch_clusters(monkeypatch, [["B", "A"]]) + rp = {"A": [("s", "a1")], "B": [("s", "b1"), ("s", "b2")], "C": [("s", "c1")]} + res = U.merge_rhogs2({}, rp, roothog_conf()) + assert set(res) == {"A", "C"} + assert sorted(res["A"]) == [("s", "a1"), ("s", "b1"), ("s", "b2")] + assert (in_tmp_dir / "merging_rhogs.txt").read_text().splitlines()[1] == "A\tB\t" + + def test_merge_with_real_candidates(self, in_tmp_dir, roothog_conf): + hm = TestFindRhogCandidatePairs.hogmaps() + res = U.merge_rhogs2(hm, U.group_prots_by_roothogs(hm), roothog_conf()) + assert list(res) == ["A1"] and len(res["A1"]) == 14 + + @pytest.mark.xfail(strict=True, reason="BUG: `newhost` is not reset per cluster and the overflow host " + "loses its own proteins (_utils_roothog.py:667-713)") + @pytest.mark.parametrize("clusters", [[["A", "B", "C"]], [["A", "B", "C", "D"], ["W", "X", "Y", "Z"]]]) + def test_overflowing_clusters_keep_all_proteins(self, in_tmp_dir, monkeypatch, roothog_conf, clusters): + self.patch_clusters(monkeypatch, clusters) + rp = {k: [("s", k + str(i)) for i in range(2)] for c in clusters for k in c} + before = Counter(p for v in rp.values() for p in v) + res = U.merge_rhogs2({}, rp, roothog_conf(big_rhog_size=3)) + assert Counter(p for v in res.values() for p in v) == before + # and no rootHOG mixes proteins of different clusters + cluster_of = {k: i for i, c in enumerate(clusters) for k in c} + for members in res.values(): + assert len({cluster_of[p[1][0]] for p in members}) == 1 + + +class TestFilterBigRoothogs: + def test_low_score_proteins_dropped_from_big_rhog(self, roothog_conf): + hm = {"A": {"a": [hit("HOG:X1.1a", 96)], "b": [hit("HOG:X1", 95)], + "c": [hit("HOG:Y1", 50), hit("HOG:X1", 99)], "z": [hit("HOG:Z1", 1)]}} + rp = {"X1": [("A", "a"), ("A", "b"), ("A", "c")], "Z1": [("A", "z")]} + res = U.filter_big_roothogs(hm, rp, roothog_conf(big_rhog_size=2, big_fscore_thresh=95)) + # strict '>' on the score; the score of the *first* hit is used even if it belongs to another + # rootHOG (c was moved here from Y1) -- characterises current behaviour + assert res == {"X1": [("A", "a")], "Z1": [("A", "z")]} + + def test_big_rhog_removed_if_nothing_passes(self, roothog_conf): + hm = {"A": {p: [hit("HOG:X1", 10)] for p in "abc"}} + rp = {"X1": [("A", p) for p in "abc"]} + assert U.filter_big_roothogs(hm, rp, roothog_conf(big_rhog_size=2)) == {} + + def test_small_rhogs_untouched(self, roothog_conf): + hm = {"A": {p: [hit("HOG:X1", 10)] for p in "ab"}} + rp = {"X1": [("A", "a"), ("A", "b")]} + assert U.filter_big_roothogs(hm, rp, roothog_conf()) == rp + + def test_filter_nonchild_rootHOG(self, roothog_conf, monkeypatch): + monkeypatch.setattr(U, "filter_nonchild_rootHOG", True) + hm = {"A": {"a": [hit("HOG:X1.1a", 99)], "b": [hit("HOG:X1", 99)], "c": [hit("HOG:X1.2b", 99)]}} + rp = {"X1": [("A", p) for p in "abc"]} + res = U.filter_big_roothogs(hm, rp, roothog_conf(big_rhog_size=2)) + assert res == {"X1": [("A", "a"), ("A", "c")]} + + +def test_create_root_hogs(in_tmp_dir, roothog_conf): + hm = {"S1": {"a": [hit("HOG:A1.1a", 500)], + "p": [hit("HOG:P1", 500), hit("HOG:Q1", 300)]}, + "S2": {"a": [hit("HOG:A1", 500)], + "q": [hit("HOG:R1", 500), hit("HOG:Q1.4c", 300)]}, + "S3": {"s": [hit("HOG:Z1", 500), hit("HOG:A1.2b", 400)], + "u": [hit("HOG:U1", 500)]}} + res = U.create_root_hogs(hm, roothog_conf()) + assert partition(res) == { + frozenset({("S1", "a"), ("S2", "a"), ("S3", "s")}), # s resolved via its alternative hit + frozenset({("S1", "p"), ("S2", "q")}), # singletons sharing alternative Q1 + frozenset({("S3", "u")}), # remains a singleton + } + assert set(res) >= {"A1", "U1"} diff --git a/tests/test_roothog_io.py b/tests/test_roothog_io.py new file mode 100644 index 0000000..ff2ae5d --- /dev/null +++ b/tests/test_roothog_io.py @@ -0,0 +1,208 @@ +"""Tests for the file parsing/writing helpers of fastoma-infer-roothogs (_utils_roothog.py).""" +import pickle + +import pytest +from Bio import SeqIO + +from FastOMA import _utils_roothog as U +from roothog_helpers import fasta_ids, hit, rec, write_fasta, write_hogmap + +SEQ = "MKVLAAGIVLLLAAGCSSHE" + + +def test_add_species_name_prot_id_numbering(): + recs = {"AQUAE": [rec("a1"), rec("a2")], "CHLTR": [rec("c1")]} + res = U.add_species_name_prot_id(recs) + assert {sp: {k: r.id for k, r in d.items()} for sp, d in res.items()} == { + "AQUAE": {"a1": "a1||AQUAE||1000000001", "a2": "a2||AQUAE||1000000002"}, + "CHLTR": {"c1": "c1||CHLTR||1001000001"}, + } + # the input records are modified in place + assert recs["CHLTR"][0].id == "c1||CHLTR||1001000001" + + +def test_add_species_name_prot_id_truncates_long_ids(): + res = U.add_species_name_prot_id({"A": [rec("L" * 240)]}) + assert list(res["A"]) == ["L" * 230] + + +class TestParseProteomes: + def test_sorted_species_and_min_length(self, tmp_path): + write_fasta(tmp_path / "B.fa", [("b1", SEQ), ("b_short", "MKV")]) + write_fasta(tmp_path / "A.fa", [("a1", SEQ)]) + species, recs, ext = U.parse_proteomes(str(tmp_path), min_sequence_length=10) + assert species == ["A", "B"] + assert ext == "fa" + assert {sp: [r.id for r in rs] for sp, rs in recs.items()} == {"A": ["a1"], "B": ["b1"]} + + def test_fasta_extension(self, tmp_path): + write_fasta(tmp_path / "A.fasta", [("a1", SEQ)]) + assert U.parse_proteomes(str(tmp_path))[2] == "fasta" + + @pytest.mark.xfail(strict=True, reason="BUG: files without an extension crash parse_proteomes " + "(file.rsplit at _utils_roothog.py:166); check_input only warns") + def test_non_fasta_files_ignored(self, tmp_path): + write_fasta(tmp_path / "A.fa", [("a1", SEQ)]) + (tmp_path / "README").write_text("x") + assert U.parse_proteomes(str(tmp_path))[0] == ["A"] + + def test_mixed_extensions_fail(self, tmp_path): + # characterises current behaviour: only the last seen extension is used; check_input rejects this + write_fasta(tmp_path / "A.fa", [("a1", SEQ)]) + write_fasta(tmp_path / "B.fasta", [("b1", SEQ)]) + with pytest.raises(FileNotFoundError): + U.parse_proteomes(str(tmp_path)) + + +class TestParseHogmapOmamer: + @staticmethod + def parse(tmp_path, proteome_ids, rows): + write_hogmap(tmp_path / "A.fa.hogmap", rows) + recs = {"A": [rec(i) for i in proteome_ids]} + U.add_species_name_prot_id(recs) # parse_hogmap_omamer expects the renamed records + return U.parse_hogmap_omamer(recs, "fa", folder=str(tmp_path)) + + def test_hits_unmapped_and_unknown(self, tmp_path): + hogmaps, unmapped = self.parse(tmp_path, ["p1", "p2", "p3"], [ + ("p1", "HOG:A1.1a", 500.5), ("p1", "HOG:B1", 30), + ("p2", "N/A", None), + ("other", "HOG:C1", 100), + ]) + assert dict(hogmaps["A"]) == {"p1": [hit("HOG:A1.1a", 500.5), hit("HOG:B1", 30)]} + assert dict(unmapped) == {"A": ["p2"]} + + def test_hogmap_values_are_strings(self, tmp_path): + hogmaps, _ = self.parse(tmp_path, ["p1"], [("p1", "HOG:A1", 12.5)]) + assert hogmaps["A"]["p1"][0].score == "12.5" + + def test_protein_missing_from_hogmap(self, tmp_path): + # characterises current behaviour: a protein without any hogmap row is neither mapped nor + # unmapped, so it is silently dropped from the pipeline (see test_roothog_stage.py) + hogmaps, unmapped = self.parse(tmp_path, ["p1", "p2"], [("p1", "HOG:A1", 100)]) + assert "p2" not in hogmaps["A"] and "p2" not in unmapped["A"] + + @pytest.mark.xfail(strict=True, reason="BUG: ids >230 chars are truncated (_utils_roothog.py:256) and then " + "no longer match the hogmap qseqid (:289), the protein vanishes") + def test_long_ids_are_kept(self, tmp_path): + long_id = "L" * 240 + hogmaps, unmapped = self.parse(tmp_path, [long_id], [(long_id, "HOG:A1", 100)]) + assert len(hogmaps["A"]) + len(unmapped["A"]) == 1 + + +def test_write_rhog(tmp_path): + prot_recs_all = U.add_species_name_prot_id({"A": [rec("a1"), rec("a2")], "B": [rec("b1")]}) + rhogs = {"X1": [("A", "a1"), ("B", "b1")], "Y1": [("A", "a2")], + "Z1": [("A", "a2"), ("B", "too_short")]} # too_short is not in prot_recs_all + out = tmp_path / "rhogs" + written = U.write_rhog(rhogs, prot_recs_all, str(out), min_rhog_size=2) + assert written == ["X1"] + assert sorted(p.name for p in out.iterdir()) == ["HOG_X1.fa"] + assert [r.id for r in SeqIO.parse(out / "HOG_X1.fa", "fasta")] == ["a1||A||1000000001", "b1||B||1001000001"] + + +def test_collect_unmapped_singleton(tmp_path): + prot_recs_all = U.add_species_name_prot_id({"A": [rec("a1"), rec("a2"), rec("a3")], "B": [rec("b1")]}) + rhogs = {"X1": [("A", "a1"), ("B", "b1")], "Y1": [("A", "a2")]} + unmapped = {"A": ["a3", "short_and_removed"]} + out = tmp_path / "singletons.fa" + assert U.collect_unmapped_singleton(rhogs, unmapped, prot_recs_all, str(out)) == 2 + assert fasta_ids(out) == ["a3", "a2"] + + +class TestWriteClusters: + MMSEQS_OUT = (">r1\n>a||S1||1 desc\nMKV\n>b||S2||2\nMKA\n" # 2 species -> written + ">r2\n>c||S1||3\nMKK\n" # singleton -> skipped + ">r3\n>d||S1||4\nMAA\n>e||S1||5\nMCC\n" # single species -> discarded + ">r4\n>f||S1||6\nMAA\n>g||S2||7\nMCC\n") # last cluster -> written + + def test_write_clusters(self, tmp_path): + clustered = tmp_path / "all_seqs.fasta" + clustered.write_text(self.MMSEQS_OUT) + out = tmp_path / "rhogs" + out.mkdir() + assert U.write_clusters(str(clustered), str(out), 2) == 2 + assert {p.name: fasta_ids(p) for p in out.iterdir()} == { + "HOG_clust10000.fa": ["a", "b"], "HOG_clust10001.fa": ["f", "g"]} + + def test_empty_file(self, tmp_path): + clustered = tmp_path / "all_seqs.fasta" + clustered.write_text("") + assert U.write_clusters(str(clustered), str(tmp_path), 2) == 0 + + +@pytest.mark.tools("mmseqs") +def test_run_linclust_and_write_clusters(in_tmp_dir, proteome_recs): + prot_recs_all = U.add_species_name_prot_id(proteome_recs) + unmapped = {sp: list(d) for sp, d in prot_recs_all.items()} + assert U.collect_unmapped_singleton({}, unmapped, prot_recs_all) == 28 + clustered = U.run_linclust() + (in_tmp_dir / "rhogs").mkdir() + n = U.write_clusters(clustered, "rhogs", 2) + files = list((in_tmp_dir / "rhogs").glob("HOG_clust*.fa")) + assert n == len(files) > 0 + for f in files: # every written cluster spans at least two species + with open(f) as fh: + species = {line.split()[0].split("||")[1] for line in fh if line.startswith(">")} + assert len(species) >= 2 + + +@pytest.fixture +def proteome_recs(): + from conftest import TESTDATA_DIR + return U.parse_proteomes(str(TESTDATA_DIR / "in_folder" / "proteome"), 50)[1] + + +class TestIsoforms: + def test_parse_isoform_files(self, tmp_path): + (tmp_path / "A.splice").write_text("i1;i2\ni3\n\n") + assert U.parse_isoform_files(["A", "B"], str(tmp_path)) == { + "A": [["i1", "i2"], ["i3"], [""]], # blank lines become [''] -- characterises current behaviour + "B": []} + + def test_select_best_isoform_uses_max_score_over_all_hits(self): + hm = {"A": {"i1": [hit("HOG:X1", 100), hit("HOG:Y1", 900)], "i2": [hit("HOG:Z1", 500)]}} + assert U.select_best_isoforms(["A"], {"A": [["i1", "i2"]]}, hm) == ({"A": ["i1"]}, {"A": ["i2"]}) + + def test_select_best_isoform_tie_takes_last(self): + hm = {"A": {"i1": [hit("HOG:X1", 5)], "i2": [hit("HOG:X1", 5)]}} + assert U.select_best_isoforms(["A"], {"A": [["i1", "i2"]]}, hm) == ({"A": ["i2"]}, {"A": ["i1"]}) + + def test_select_best_isoform_none_mapped_takes_first(self): + assert U.select_best_isoforms(["A"], {"A": [["i1", "i2"]]}, {"A": {}}) == ({"A": ["i1"]}, {"A": ["i2"]}) + + def test_filter_hogmaps_by_isoforms(self): + hm = {"A": {"i1": 1, "i2": 2, "x": 3}, "B": {"b": 4}} + assert U.filter_hogmaps_by_isoforms(hm, {"A": ["i2"], "B": []}) == {"A": {"i1": 1, "x": 3}, "B": {"b": 4}} + + def test_handle_splice_variants(self, tmp_path): + (tmp_path / "A.splice").write_text("i1;i2\n") + hm = {"A": {"i1": [hit("HOG:X1", 10)], "i2": [hit("HOG:X1", 20)], "x": [hit("HOG:X1", 1)]}} + res = U.handle_splice_variants(["A"], hm, str(tmp_path)) + assert res["selected_isoforms"] == {"A": ["i2"]} + assert res["non_selected"] == {"A": ["i1"]} + assert set(res["filtered_hogmaps"]["A"]) == {"i2", "x"} + + def test_write_selected_isoforms(self, in_tmp_dir): + recs = {"A": [rec("i1"), rec("i2"), rec("x")]} + U.add_species_name_prot_id(recs) + data = {"selected_isoforms": {"A": ["i2"]}, "isoform_by_gene": {"A": [["i1", "i2"]]}} + U.write_selected_isoforms(data, recs) + assert (in_tmp_dir / "selected_isoforms" / "A_selected_isoforms.fa").read_text() == \ + f">i2 minor_isoforms=i1\n{SEQ}\n>x \n{SEQ}\n" + + +class TestSaveGeneIdMapping: + def test_with_isoforms(self, tmp_path): + prot_recs_all = U.add_species_name_prot_id({"A": [rec("g1a"), rec("g1b"), rec("g2")]}) + iso = {"selected_isoforms": {"A": ["g1b"]}, "isoform_by_gene": {"A": [["g1a", "g1b"]]}} + out = tmp_path / "map.pickle" + res = U.save_gene_id_mapping(prot_recs_all, iso, out_path=str(out)) + assert res == {"A": [U.Gene(1000000001, "g1a", 1000000002), U.Gene(1000000002, "g1b", 1000000002), + U.Gene(1000000003, "g2", None)]} + with open(out, "rb") as fh: + assert pickle.load(fh) == res + + def test_without_isoforms(self, tmp_path): + prot_recs_all = U.add_species_name_prot_id({"A": [rec("g1")]}) + res = U.save_gene_id_mapping(prot_recs_all, None, out_path=str(tmp_path / "m.pickle")) + assert res == {"A": [U.Gene(1000000001, "g1", None)]} diff --git a/tests/test_roothog_stage.py b/tests/test_roothog_stage.py new file mode 100644 index 0000000..a00b109 --- /dev/null +++ b/tests/test_roothog_stage.py @@ -0,0 +1,161 @@ +"""Stage-level characterisation tests for fastoma-infer-roothogs, run as a subprocess. + +The rootHOG partition depends on set iteration order (see test_roothog_grouping.py), so the +subprocesses run with a fixed PYTHONHASHSEED and we compare partitions, never file names. +""" +import os +import random +import subprocess +import sys + +import pytest + +from conftest import TESTDATA_DIR +from roothog_helpers import fasta_ids, read_rhog_partition, write_fasta, write_hogmap + + +def run_infer_roothogs(workdir, proteomes, hogmaps, *extra): + cmd = [sys.executable, "-m", "FastOMA.infer_roothogs", "--proteomes", str(proteomes), + "--hogmap", str(hogmaps), "--out-rhog-folder", "omamer_rhogs", *map(str, extra)] + subprocess.run(cmd, cwd=workdir, check=True, capture_output=True, + env=dict(os.environ, PYTHONHASHSEED="0")) + return workdir / "omamer_rhogs" + + +def test_testdata_partition(tmp_path): + out = run_infer_roothogs(tmp_path, TESTDATA_DIR / "in_folder" / "proteome", + TESTDATA_DIR / "expected_output" / "hogmap") + expected = [ + {"sp|O67618|LEPA_AQUAE", "sp|O66429|EFTU_AQUAE", "sp|O84067|LEPA_CHLTR", "sp|P0CD71|EFTU_CHLTR", + "sp|P13927|EFTU_MYCGE"}, + {"sp|O67118|DNAK_AQUAE", "sp|P17821|DNAK_CHLTR", "sp|P47547|DNAK_MYCGE"}, + {"sp|O67032|RF1_AQUAE", "sp|O84026|RF1_CHLTR", "sp|P47500|RF1_MYCGE"}, + {"sp|O67828|ATPB_AQUAE", "sp|O66907|ATPA_AQUAE", "sp|P47639|ATPB_MYCGE", "sp|P47641|ATPA_MYCGE"}, + {"sp|O67943|CH60_AQUAE", "sp|P0C0Z7|CH60_CHLTR"}, + {"sp|O66778|ENO_AQUAE", "sp|O84591|ENO_CHLTR"}, + {"sp|O67736|FOLD_AQUAE", "sp|O84081|FOLD_CHLTR"}, + {"sp|O67161|G3P_AQUAE", "sp|P0CE13|G3P_CHLTR", "sp|P47543|G3P_MYCGE"}, + {"sp|O67547|SUCD_AQUAE", "tr|O84829|O84829_CHLTR"}, + {"sp|O66686|TPIS_AQUAE", "sp|O84332|TPIS_CHLTR"}, + ] + assert read_rhog_partition(out) == frozenset(frozenset(g) for g in expected) + assert len(list(out.glob("HOG_*.fa"))) == len(expected) + + +# --- synthetic dataset exercising all branches of the stage ------------------------------------------ +# +# Building and running takes a few seconds (mmseqs), hence `slow`. +# CLI options: --big-rhog-size 30 (so merge candidates must be < 5 proteins), --mergHOG-shared-thresh 1 +SPECIES = ["S1", "S2", "S3", "S4"] +BIG = [f"{sp}_b{i}" for sp in SPECIES for i in range(8)] +EXPECTED_PARTITION = frozenset(frozenset(g) for g in [ + {"S1_a", "S2_a", "S3_a", "S4_x"}, # S4_x is a singleton resolved via its alternative hit to A1 + {"S1_p", "S2_q"}, # singletons sharing the alternative rootHOG Q1 + {"S1_m", "S2_m", "S3_m", "S4_m"}, # rootHOGs M1 and M2 merged + set(BIG[0::2]), # big rootHOG B1, low-score half filtered out +]) +SENT_TO_LINCLUST = {"S3_u", "S4_n", "S2_n1", "S2_n2"} +EXPECTED_TO_VANISH = {"S1_short", "S1_a2"} | set(BIG[1::2]) # too short / minor isoform / big-rhog filter +KNOWN_BUG_VANISH = {"S2_missing"} # absent from the hogmap + + +def build_synthetic(root): + rng = random.Random(42) + aa = "ACDEFGHIKLMNPQRSTVWY" + + def seq(): + return "M" + "".join(rng.choice(aa) for _ in range(79)) + + hits = {sp: [] for sp in SPECIES} + prots = {sp: [] for sp in SPECIES} + + def add(sp, prot, *rows, sequence=None): + prots[sp].append((prot, sequence or seq())) + hits[sp].extend((prot, hogid, score) for hogid, score in rows) + + add("S1", "S1_a", ("HOG:A1.1a", 500)) + add("S1", "S1_a2", ("HOG:A1", 200)) # minor isoform of S1_a + add("S2", "S2_a", ("HOG:A1", 500)) + add("S3", "S3_a", ("HOG:A1.2b", 500)) + add("S4", "S4_x", ("HOG:Z9", 500), ("HOG:A1.3", 300)) + add("S1", "S1_p", ("HOG:P1", 500), ("HOG:Q1", 300)) + add("S2", "S2_q", ("HOG:R1", 500), ("HOG:Q1.1a", 300)) + add("S1", "S1_m", ("HOG:M1", 500), ("HOG:M2", 300)) + add("S2", "S2_m", ("HOG:M1", 500), ("HOG:M2", 300)) + add("S3", "S3_m", ("HOG:M2", 500), ("HOG:M1", 300)) + add("S4", "S4_m", ("HOG:M2", 500), ("HOG:M1", 300)) + for i, prot in enumerate(BIG): + add(prot[:2], prot, ("HOG:B1.1a", 99 if i % 2 == 0 else 90)) + shared = seq() # identical sequences: linclust must group them + add("S3", "S3_u", ("HOG:U1", 500), sequence=shared) + add("S4", "S4_n", ("N/A", None), sequence=shared) + add("S2", "S2_n1", ("N/A", None)) + add("S2", "S2_n2", ("N/A", None)) # minor isoform of S2_n1, both unmapped + add("S1", "S1_short", ("HOG:A1", 500), sequence="MKVLAAGIVL") + prots["S2"].append(("S2_missing", seq())) + + for sp in SPECIES: + write_fasta(root / "proteome" / f"{sp}.fa", prots[sp]) + write_hogmap(root / "hogmap" / f"{sp}.fa.hogmap", hits[sp]) + (root / "splice").mkdir() + (root / "splice" / "S1.splice").write_text("S1_a;S1_a2\n") + (root / "splice" / "S2.splice").write_text("S2_n1;S2_n2\n") + return {p for sp in SPECIES for p, _ in prots[sp]} + + +@pytest.fixture(scope="module") +def synthetic_run(tmp_path_factory): + root = tmp_path_factory.mktemp("synthetic") + all_proteins = build_synthetic(root) + out = run_infer_roothogs(root, root / "proteome", root / "hogmap", "--splice", root / "splice", + "--big-rhog-size", 30, "--mergHOG-shared-thresh", 1) + return root, out, all_proteins + + +@pytest.mark.slow +def test_synthetic_partition(synthetic_run): + _, out, _ = synthetic_run + assert read_rhog_partition(out, "HOG_[!c]*.fa") == EXPECTED_PARTITION + + +@pytest.mark.slow +def test_synthetic_selected_isoforms_written(synthetic_run): + root, _, _ = synthetic_run + assert fasta_ids(root / "selected_isoforms" / "S1_selected_isoforms.fa").count("S1_a2") == 0 + + +@pytest.mark.slow +@pytest.mark.tools("mmseqs") +def test_synthetic_linclust(synthetic_run): + root, out, _ = synthetic_run + assert set(fasta_ids(root / "singleton_unmapped.fa")) == SENT_TO_LINCLUST + assert read_rhog_partition(out, "HOG_clust*.fa") == {frozenset({"S3_u", "S4_n"})} + + +@pytest.mark.slow +@pytest.mark.tools("mmseqs") +def test_synthetic_every_protein_accounted_for(synthetic_run): + root, out, all_proteins = synthetic_run + in_rhogs = {p for g in read_rhog_partition(out) for p in g} + in_singletons = set(fasta_ids(root / "singleton_unmapped.fa")) + unaccounted = all_proteins - in_rhogs - in_singletons - EXPECTED_TO_VANISH + assert unaccounted == KNOWN_BUG_VANISH + + +@pytest.mark.slow +@pytest.mark.tools("mmseqs") +@pytest.mark.xfail(strict=True, reason="BUG: proteins without any hogmap row are dropped silently " + "(parse_hogmap_omamer, _utils_roothog.py:264)") +def test_synthetic_protein_missing_from_hogmap_not_lost(synthetic_run): + root, out, _ = synthetic_run + kept = {p for g in read_rhog_partition(out) for p in g} | set(fasta_ids(root / "singleton_unmapped.fa")) + assert KNOWN_BUG_VANISH <= kept + + +@pytest.mark.slow +@pytest.mark.tools("mmseqs") +@pytest.mark.xfail(strict=True, reason="BUG: unmapped proteins are not filtered by isoform selection, minor " + "isoforms reach linclust (infer_roothogs.py:50-60, :93)") +def test_synthetic_minor_isoforms_not_clustered(synthetic_run): + root, _, _ = synthetic_run + assert len({"S2_n1", "S2_n2"} & set(fasta_ids(root / "singleton_unmapped.fa"))) == 1 diff --git a/tests/test_unionfind.py b/tests/test_unionfind.py new file mode 100644 index 0000000..f67fe5f --- /dev/null +++ b/tests/test_unionfind.py @@ -0,0 +1,60 @@ +"""Tests for the UnionFind data structure (zoo/unionfind.py and its copy in _utils_roothog.py).""" +import pytest + +from FastOMA import _utils_roothog +from FastOMA.zoo import unionfind + + +@pytest.fixture(params=[unionfind.UnionFind, _utils_roothog.UnionFind], ids=["zoo", "utils_roothog"]) +def UF(request): + return request.param + + +def components(uf): + return {frozenset(c) for c in uf.get_components()} + + +def test_union_and_find(UF): + uf = UF() + uf.union("a", "b") + uf.union("c", "d", "e") + uf.union("b", "e") + uf.union("x") + assert components(uf) == {frozenset("abcde"), frozenset("x")} + assert uf["a"] == uf.find("d") + + +def test_initial_elements_are_singletons(UF): + uf = UF([1, 2, 3]) + uf.union(1, 2) + assert components(uf) == {frozenset({1, 2}), frozenset({3})} + + +def test_find_unknown_creates_singleton(UF): + uf = UF() + assert uf.find("q") == "q" + assert list(uf) == ["q"] + + +def test_union_without_arguments(UF): + # characterises current behaviour + with pytest.raises(ValueError): + UF().union() + + +def test_remove_non_root(UF): + uf = UF() + uf.union("a", "b", "c") + member = next(x for x in "abc" if x != uf["a"]) + uf.remove(member) + assert components(uf) == {frozenset(set("abc") - {member})} + + +@pytest.mark.xfail(strict=True, reason="BUG: removing the representative of a set breaks find() for the " + "other members (KeyError, zoo/unionfind.py:78)") +def test_remove_root(UF): + uf = UF() + uf.union("a", "b", "c") + root = uf["a"] + uf.remove(root) + assert components(uf) == {frozenset(set("abc") - {root})} From 3cce4f2b46750bbee868cf55a9209c48bca01c95 Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Tue, 20 Oct 2026 14:25:34 +0200 Subject: [PATCH 05/13] test: unit tests for collect-subhogs, pairwise relations, id transformers and report inputs output_fixtures.py builds collect-subhogs inputs by hand (4 species, nested and root-level duplications, a fragment group). Tests pin the HOG id scheme, orthoXML header/genes/scores, RootHOG/OG TSV and FASTA contents (as row sets), the ortholog/paralog pairs, the UniProt transformer and the orthoXML fields the report notebook reads. Strict xfails mark schema violations (single-child root wrapper, main_isoform attribute), HOG numbering depending on directory listing order, and the report failing without CompletenessScore. --- tests/output_fixtures.py | 143 +++++++++++++ tests/test_collect_subhogs.py | 357 +++++++++++++++++++++++++++++++ tests/test_pairwise_relations.py | 138 ++++++++++++ tests/test_report_contract.py | 98 +++++++++ tests/test_transformer.py | 45 ++++ 5 files changed, 781 insertions(+) create mode 100644 tests/output_fixtures.py create mode 100644 tests/test_collect_subhogs.py create mode 100644 tests/test_pairwise_relations.py create mode 100644 tests/test_report_contract.py create mode 100644 tests/test_transformer.py diff --git a/tests/output_fixtures.py b/tests/output_fixtures.py new file mode 100644 index 0000000..897e5e3 --- /dev/null +++ b/tests/output_fixtures.py @@ -0,0 +1,143 @@ +"""Hand-made inputs for fastoma-collect-subhogs (the output stage). + +Species tree (((A,B)AB,C)ABC,D)root. Proteins are named a1..a7, b1..b7, c1..c7, d1..d7; +the numeric gene id of e.g. b3 is 2003, its protId 'sp|P02003|B3_B'. + +rootHOG E0000001 (nested duplications, like _hog_class.HOG.to_orthoxml produces them): + + og root + paralogGroup + og ABC + paralogGroup + og AB [a1 b1] + og AB [a2 b2] + c1 + og ABC + paralogGroup + og AB [a3 b3] + og AB [a4 b4] + c2 + d1 + +rootHOG E0000002 (root-level duplication, wrapped as in _infer_subhog.py:119-128, plus a +fragment paralogGroup with a Type property as in _hog_class.py:520-527): + + og AB + paralogGroup + og AB [a5 b5] + og AB [paralogGroup(Type=Dubiousfragment)[a6 a7] b6] + +Proteins a7 can optionally be marked as a minor isoform of a1. b7, c3.. etc. are in the +header but in no group. +""" +import pickle +import xml.etree.ElementTree as ET +from pathlib import Path + +from FastOMA._utils_roothog import Gene + +SPECIES_TREE = "(((A,B)AB,C)ABC,D)root;" +SPECIES_IDX = {"A": 1, "B": 2, "C": 3, "D": 4} +PROTEIN_NAMES = [f"{s}{i}" for s in "abcd" for i in range(1, 8)] +RHOG1_MEMBERS = ["a1", "a2", "a3", "a4", "b1", "b2", "b3", "b4", "c1", "c2", "d1"] +RHOG2_MEMBERS = ["a5", "a6", "a7", "b5", "b6"] + + +def species(name): + return name[0].upper() + + +def gene_id(name): + return SPECIES_IDX[species(name)] * 1000 + int(name[1:]) + + +def prot_id(name): + return f"sp|P{gene_id(name):05d}|{name.upper()}_{species(name)}" + + +def accession(name): + return f"P{gene_id(name):05d}" + + +def sequence(name): + return "MKV" + name.upper() + + +def _og(tax, *children, id_="x", score=True): + e = ET.Element("orthologGroup", {"id": id_}) + if score: + ET.SubElement(e, "score", {"id": "CompletenessScore", "value": "1.0"}) + ET.SubElement(e, "property", {"name": "TaxRange", "value": tax}) + for c in children: + e.append(c) + return e + + +def _pg(*children, prop=None): + e = ET.Element("paralogGroup") + if prop: + ET.SubElement(e, "property", {"name": "Type", "value": prop}) + for c in children: + e.append(c) + return e + + +def _g(name): + return ET.Element("geneRef", {"id": str(gene_id(name))}) + + +def rhog1_hog(score=True): + def og(*a, **kw): + return _og(*a, score=score, **kw) + return og("root", + _pg(og("ABC", _pg(og("AB", _g("a1"), _g("b1")), og("AB", _g("a2"), _g("b2"))), _g("c1")), + og("ABC", _pg(og("AB", _g("a3"), _g("b3")), og("AB", _g("a4"), _g("b4"))), _g("c2"))), + _g("d1"), id_="HOG_E0000001_sub10001") + + +def rhog2_hog(score=True): + def og(*a, **kw): + return _og(*a, score=score, **kw) + return og("AB", + _pg(og("AB", _g("a5"), _g("b5")), + og("AB", _pg(_g("a6"), _g("a7"), prop="Dubiousfragment"), _g("b6"))), + id_="HOG_E0000002_sub10002") + + +def build_collect_inputs(folder, scores=True, isoforms=False): + """Write the inputs of fastoma-collect-subhogs into `folder` and return their paths. + + pickles/rhog_/file_HOG_E000000.pickle, gene_id_dic_xml.pickle, species_tree.nwk, + rhogs/HOG_E000000.fa + """ + folder = Path(folder) + folder.mkdir(parents=True, exist_ok=True) + tree = folder / "species_tree.nwk" + tree.write_text(SPECIES_TREE) + + main_of = {"a7": "a1"} if isoforms else {} + gene_map = {sp: [Gene(gene_id(n), prot_id(n), gene_id(main_of[n]) if n in main_of else None) + for n in PROTEIN_NAMES if species(n) == sp] + for sp in "ABCD"} + if isoforms: + # the main isoform references itself (_utils_roothog.save_gene_id_mapping) + gene_map["A"][0] = Gene(gene_id("a1"), prot_id("a1"), gene_id("a1")) + gene_pickle = folder / "gene_id_dic_xml.pickle" + with open(gene_pickle, "wb") as fh: + pickle.dump(gene_map, fh) + + pickles = folder / "pickles" + for nr, hog in ((1, rhog1_hog(scores)), (2, rhog2_hog(scores))): + sub = pickles / f"rhog_{nr}" + sub.mkdir(parents=True, exist_ok=True) + with open(sub / f"file_HOG_E000000{nr}.pickle", "wb") as fh: + pickle.dump([hog], fh) + + rhogs = folder / "rhogs" + rhogs.mkdir(exist_ok=True) + for fn, members in (("HOG_E0000001.fa", RHOG1_MEMBERS), ("HOG_E0000002.fa", RHOG2_MEMBERS)): + with open(rhogs / fn, "w") as fh: + for n in members: + fh.write(f">{prot_id(n)}||{species(n)}||{gene_id(n)} desc of {n}\n{sequence(n)}\n") + return {"folder": folder, "species_tree": tree, "gene_id_pickle": gene_pickle, + "pickle_folder": pickles, "rhogs": rhogs} diff --git a/tests/test_collect_subhogs.py b/tests/test_collect_subhogs.py new file mode 100644 index 0000000..b3035ff --- /dev/null +++ b/tests/test_collect_subhogs.py @@ -0,0 +1,357 @@ +"""Tests for the output stage, FastOMA/collect_subhogs.py (fastoma-collect-subhogs).""" +import csv +import gzip +import os +import pickle +import xml.etree.ElementTree as ET +from pathlib import Path + +import pytest +from Bio import SeqIO +from ete3 import Tree +from lxml import etree + +from FastOMA import collect_subhogs as cs +from FastOMA.transformer import header_transformer +from fastoma_testutils import NS, geneRef_counts, orthoxml_validation_errors +import output_fixtures as fx +from output_fixtures import accession, prot_id + + +_REAL_WALK = os.walk + + +def _walk_in_order(order): + """os.walk replacement that visits the pickle sub folders in the given order.""" + def walk(top, **kwargs): + entries = list(_REAL_WALK(top, **kwargs)) + root, rest = entries[0], entries[1:] + rest.sort(key=lambda e: order(Path(e[0]).name)) + yield root + yield from rest + return walk + + +@pytest.fixture +def sorted_walk(monkeypatch): + # HOG numbering follows the os.walk order (see TestHogNumbering); fix it to rhog_1, rhog_2 + monkeypatch.setattr(cs.os, "walk", _walk_in_order(lambda name: name)) + + +def _collect(inputs, transform="noop", out="FastOMA_HOGs.orthoxml"): + tr = header_transformer(transform) + cs.write_hog_orthoxml(str(inputs["pickle_folder"]), out, inputs["gene_id_pickle"], tr, + str(inputs["species_tree"])) + cs.write_roothogs(Path(out), inputs["rhogs"], output_file_roothog_tsv="RootHOGs.tsv", id_transformer=tr) + cs.write_group_files(Path(out), inputs["rhogs"], output_file_og_tsv="OrthologousGroups.tsv", id_transformer=tr) + return Path(out) + + +@pytest.fixture +def inputs(in_tmp_dir): + return fx.build_collect_inputs(in_tmp_dir / "in") + + +@pytest.fixture +def collected(inputs, sorted_walk): + return _collect(inputs) + + +def _taxonomy(): + return cs.convert_speciestree_to_orthoxml_taxonomy(Tree(fx.SPECIES_TREE, format=1)) + + +def _ids(elem): + return [e.get("id") for e in elem.iter("orthologGroup")] + + +def _tsv_rows(path): + with open(path, newline="") as fh: + reader = csv.reader(fh, delimiter="\t") + return next(reader), {tuple(r) for r in reader} + + +class TestTaxonomy: + def test_preorder_ids(self): + root, name2taxid = _taxonomy() + assert name2taxid == {"root": 1, "ABC": 2, "AB": 3, "A": 4, "B": 5, "C": 6, "D": 7} + assert [(t.get("id"), t.get("name")) for t in root.iter("taxon")][:3] == [("1", "root"), ("2", "ABC"), ("3", "AB")] + ab = root.find("./taxon/taxon/taxon") + assert [c.get("name") for c in ab] == ["A", "B"] + + def test_unnamed_internal_nodes_collide(self): + # characterises current behaviour: relies on check_input naming all internal nodes + root, name2taxid = cs.convert_speciestree_to_orthoxml_taxonomy(Tree("((A,B),C);", format=1)) + assert len(list(root.iter("taxon"))) == 5 + assert name2taxid == {"": 2, "A": 3, "B": 4, "C": 5} + + +class TestUpdateHogids: + def test_nested_duplications(self): + _, name2taxid = _taxonomy() + hog = cs.update_hogids(1, fx.rhog1_hog(), name2taxid) + assert _ids(hog) == [ + "HOG:0000001_1", + "HOG:0000001.1a_2", "HOG:0000001.1a.1a_3", "HOG:0000001.1a.1b_3", + # the duplication counter is per depth over the whole rootHOG, not per parent + "HOG:0000001.1b_2", "HOG:0000001.1b.2a_3", "HOG:0000001.1b.2b_3", + ] + assert [e.get("taxonId") for e in hog.iter("orthologGroup")] == ["1", "2", "3", "3", "2", "3", "3"] + + def test_root_level_duplication(self): + _, name2taxid = _taxonomy() + hog = cs.update_hogids(42, fx.rhog2_hog(), name2taxid) + assert _ids(hog) == ["HOG:0000042_3", "HOG:0000042.1a_3", "HOG:0000042.1b_3"] + assert all(p.get("id") is None for p in hog.iter("paralogGroup")) + + def test_letter_overflow_after_z(self): + _, name2taxid = _taxonomy() + pg = fx._pg(*[fx._og("AB", fx._g("a1"), fx._g("b1"), score=False) for _ in range(30)]) + hog = cs.update_hogids(7, fx._og("root", pg, fx._g("c1"), id_="HOG_E1_sub1", score=False), name2taxid) + ids = [o.get("id") for o in pg] + assert ids[0] == "HOG:0000007.1a_3" + assert ids[25] == "HOG:0000007.1z_3" + assert ids[26:] == ["HOG:0000007.1aa_3", "HOG:0000007.1ab_3", "HOG:0000007.1ac_3", "HOG:0000007.1ad_3"] + assert len(set(ids)) == 30 + + def test_property_in_paralog_group_shifts_letters(self): + # characterises current behaviour: the child of a fragment paralogGroup + # (_hog_class.py:521) takes index 0, so its orthologGroup children start at 'b'. + # _hog_class only puts geneRefs into such groups today, so no id is affected yet. + _, name2taxid = _taxonomy() + pg = fx._pg(fx._og("AB", fx._g("a1"), fx._g("b1")), fx._og("AB", fx._g("a2"), fx._g("b2")), + prop="Dubiousfragment") + cs.update_hogids(1, fx._og("root", pg, fx._g("c1"), id_="HOG_E1_sub1"), name2taxid) + assert [o.get("id") for o in pg.iter("orthologGroup")] == ["HOG:0000001.1b_3", "HOG:0000001.1c_3"] + + def test_omamer_roothog_property_after_scores(self): + _, name2taxid = _taxonomy() + hog = cs.update_hogids(1, fx.rhog1_hog(), name2taxid) + assert [(c.tag, c.get("id") or c.get("name")) for c in hog][:3] == [ + ("score", "CompletenessScore"), ("property", "OMAmerRootHOG"), ("property", "TaxRange")] + assert hog[1].get("value") == "HOG:E0000001" + + def test_omamer_roothog_property_without_scores(self): + _, name2taxid = _taxonomy() + hog = cs.update_hogids(1, fx.rhog1_hog(score=False), name2taxid) + assert (hog[0].get("name"), hog[0].get("value")) == ("OMAmerRootHOG", "HOG:E0000001") + + def test_omamer_roothog_from_unexpected_id(self): + # characterises current behaviour: the first two '_' separated fields joined by ':' + _, name2taxid = _taxonomy() + hog = cs.update_hogids(1, fx._og("AB", fx._g("a1"), fx._g("b1"), id_="weird"), name2taxid) + assert hog.find("./property[@name='OMAmerRootHOG']").get("value") == "weird" + + def test_missing_taxrange_raises(self): + hog = ET.Element("orthologGroup", {"id": "HOG_E1_sub1"}) + with pytest.raises(AttributeError): + cs.update_hogids(1, hog, {"root": 1}) + + +class TestWriteHogOrthoxml: + def test_header(self, collected): + root = etree.parse(str(collected)).getroot() + assert root.tag == "{http://orthoXML.org/2011/}orthoXML" + assert root.get("version") == "0.5" + assert root.get("origin").startswith("FastOMA ") + assert root.get("originVersion") # a timestamp + species = {s.get("name"): (s.get("taxonId"), s.get("NCBITaxId")) for s in root.iterfind("o:species", NS)} + assert species == {"A": ("4", "0"), "B": ("5", "0"), "C": ("6", "0"), "D": ("7", "0")} + genes = {g.get("id"): g.get("protId") for g in root.iterfind(".//o:gene", NS)} + assert len(genes) == 28 and genes["2003"] == "sp|P02003|B3_B" + assert all(g.get("main_isoform") is None for g in root.iterfind(".//o:gene", NS)) + + def test_groups_reference_every_placed_protein_once(self, collected): + counts = geneRef_counts(collected) + assert set(counts) == {prot_id(n) for n in fx.RHOG1_MEMBERS + fx.RHOG2_MEMBERS} + assert max(counts.values()) == 1 + + def test_hog_ids_in_file(self, collected): + tree = etree.parse(str(collected)) + tops = tree.findall("./o:groups/o:orthologGroup", NS) + assert [t.get("id") for t in tops] == ["HOG:0000001_1", "HOG:0000002_3"] + assert [t.find("o:property[@name='OMAmerRootHOG']", NS).get("value") for t in tops] == [ + "HOG:E0000001", "HOG:E0000002"] + assert len(tree.findall(".//o:orthologGroup", NS)) == 10 + + def test_score_defs_only_for_present_scores(self, collected): + root = etree.parse(str(collected)).getroot() + assert [d.get("id") for d in root.iterfind("o:scores/o:scoreDef", NS)] == ["CompletenessScore"] + + def test_no_scores_element_without_scores(self, in_tmp_dir, sorted_walk): + inputs = fx.build_collect_inputs(in_tmp_dir / "in", scores=False) + out = _collect(inputs) + assert etree.parse(str(out)).find("o:scores", NS) is None + + def test_main_isoform_attribute(self, in_tmp_dir, sorted_walk): + inputs = fx.build_collect_inputs(in_tmp_dir / "in", isoforms=True) + out = _collect(inputs) + genes = {g.get("id"): g.get("main_isoform") for g in etree.parse(str(out)).iterfind(".//o:gene", NS)} + assert genes["1007"] == "1001" and genes["1001"] == "1001" and genes["1002"] is None + + def test_nested_duplications_are_schema_valid(self, in_tmp_dir, sorted_walk): + inputs = fx.build_collect_inputs(in_tmp_dir / "in") + (inputs["pickle_folder"] / "rhog_2" / "file_HOG_E0000002.pickle").unlink() + assert orthoxml_validation_errors(_collect(inputs)) == [] + + @pytest.mark.xfail(strict=True, reason="BUG: root-level duplication is wrapped in an orthologGroup with a " + "single paralogGroup child, schema needs >= 2 (_infer_subhog.py:112-121)") + def test_root_level_duplication_is_schema_valid(self, collected): + assert orthoxml_validation_errors(collected) == [] + + @pytest.mark.xfail(strict=True, reason="BUG: gene@main_isoform is not allowed by the OrthoXML 0.5 schema " + "(collect_subhogs.py:208-209)") + def test_main_isoform_output_is_schema_valid(self, in_tmp_dir, sorted_walk): + inputs = fx.build_collect_inputs(in_tmp_dir / "in", isoforms=True) + (inputs["pickle_folder"] / "rhog_2" / "file_HOG_E0000002.pickle").unlink() + assert orthoxml_validation_errors(_collect(inputs)) == [] + + def test_only_file_pickles_are_read(self, inputs, sorted_walk): + with open(inputs["pickle_folder"] / "rhog_1" / "other.pickle", "wb") as fh: + pickle.dump([fx.rhog2_hog()], fh) + assert [h.get("id") for h in cs.iter_hogs(inputs["pickle_folder"])] == [ + "HOG_E0000001_sub10001", "HOG_E0000002_sub10002"] + + def test_empty_pickle_folder(self, inputs, sorted_walk, tmp_path): + empty = tmp_path / "empty" + empty.mkdir() + inputs["pickle_folder"] = empty + out = _collect(inputs, out="empty.orthoxml") + tree = etree.parse(str(out)) + assert tree.find("o:groups", NS) is not None and len(tree.find("o:groups", NS)) == 0 + assert _tsv_rows("RootHOGs.tsv")[1] == set() + + +class TestHogNumbering: + def _top_ids(self, out): + return {t.find("o:property[@name='OMAmerRootHOG']", NS).get("value"): t.get("id") + for t in etree.parse(str(out)).findall("./o:groups/o:orthologGroup", NS)} + + def test_numbering_follows_pickle_listing_order(self, inputs, monkeypatch): + # characterises current behaviour: rootHOGs are numbered in os.walk order (collect_subhogs.py:223) + monkeypatch.setattr(cs.os, "walk", _walk_in_order(lambda name: name), raising=True) + assert self._top_ids(_collect(inputs, out="a.orthoxml")) == {"HOG:E0000001": "HOG:0000001_1", + "HOG:E0000002": "HOG:0000002_3"} + monkeypatch.setattr(cs.os, "walk", _walk_in_order(lambda name: [-ord(c) for c in name])) + assert self._top_ids(_collect(inputs, out="b.orthoxml")) == {"HOG:E0000001": "HOG:0000002_1", + "HOG:E0000002": "HOG:0000001_3"} + + @pytest.mark.xfail(strict=True, reason="BUG?/contract undecided: HOG ids depend on the directory listing " + "order of the pickle folders, i.e. on Nextflow task completion " + "(collect_subhogs.py:51,223, FastOMA.nf collect_subhogs stageAs)") + def test_numbering_independent_of_listing_order(self, inputs, monkeypatch): + monkeypatch.setattr(cs.os, "walk", _walk_in_order(lambda name: name)) + first = self._top_ids(_collect(inputs, out="a.orthoxml")) + monkeypatch.setattr(cs.os, "walk", _walk_in_order(lambda name: [-ord(c) for c in name])) + assert self._top_ids(_collect(inputs, out="b.orthoxml")) == first + + +class TestRootHogFiles: + def test_tsv(self, collected): + header, rows = _tsv_rows("RootHOGs.tsv") + assert header == ["RootHOG", "Protein", "OMAmerRootHOG"] + assert rows == ({("HOG:0000001", prot_id(n), "HOG:E0000001") for n in fx.RHOG1_MEMBERS} + | {("HOG:0000002", prot_id(n), "HOG:E0000002") for n in fx.RHOG2_MEMBERS}) + + def test_fasta_files(self, collected): + assert sorted(os.listdir("RootHOGsFasta")) == ["HOG0000001.fa.gz", "HOG0000002.fa.gz"] + with gzip.open("RootHOGsFasta/HOG0000002.fa.gz", "rt") as fh: + recs = {r.id: str(r.seq) for r in SeqIO.parse(fh, "fasta")} + assert recs == {prot_id(n): fx.sequence(n) for n in fx.RHOG2_MEMBERS} + + def test_fasta_header_format(self, collected): + # characterises current behaviour: the internal 'id||species||numericId' stays in the + # description because only rec.id is replaced (collect_subhogs.py:305-306) + with gzip.open("RootHOGsFasta/HOG0000001.fa.gz", "rt") as fh: + headers = {line.rstrip("\n") for line in fh if line.startswith(">")} + assert f">{prot_id('a1')} {prot_id('a1')}||A||1001 desc of a1 [A]" in headers + assert len(headers) == len(fx.RHOG1_MEMBERS) + + +class TestOrthologousGroupFiles: + def test_tsv(self, collected): + header, rows = _tsv_rows("OrthologousGroups.tsv") + assert header == ["Group", "Protein"] + # heaviest paralogGroup child wins, ties go to the first child (zoo/hog/extract_groups.py:143-148) + assert rows == ({("OG_0000001", prot_id(n)) for n in ("a1", "b1", "c1", "d1")} + | {("OG_0000002", prot_id(n)) for n in ("a5", "b5")}) + + def test_heavier_paralog_child_wins(self, in_tmp_dir, sorted_walk): + inputs = fx.build_collect_inputs(in_tmp_dir / "in") + hog = fx._og("root", fx._pg(fx._og("AB", fx._g("a1"), fx._g("b1")), + fx._og("ABC", fx._g("a2"), fx._g("b2"), fx._g("c2"))), + fx._g("d1"), id_="HOG_E0000001_sub1") + with open(inputs["pickle_folder"] / "rhog_1" / "file_HOG_E0000001.pickle", "wb") as fh: + pickle.dump([hog], fh) + _collect(inputs) + rows = _tsv_rows("OrthologousGroups.tsv")[1] + assert {p for g, p in rows if g == "OG_0000001"} == {prot_id(n) for n in ("a2", "b2", "c2", "d1")} + + def test_at_most_one_protein_per_species(self, collected): + groups = {} + for g, p in _tsv_rows("OrthologousGroups.tsv")[1]: + groups.setdefault(g, []).append(p.rsplit("_", 1)[1]) + assert all(len(sp) == len(set(sp)) >= 2 for sp in groups.values()) + + def test_groups_smaller_than_two_are_dropped(self, in_tmp_dir, sorted_walk): + inputs = fx.build_collect_inputs(in_tmp_dir / "in") + # a duplication of A only, as wrapped by _infer_subhog: the marker group would be {a5} + hog = fx._og("A", fx._pg(fx._g("a5"), fx._g("a6")), id_="HOG_E0000002_sub1") + with open(inputs["pickle_folder"] / "rhog_2" / "file_HOG_E0000002.pickle", "wb") as fh: + pickle.dump([hog], fh) + _collect(inputs) + assert {g for g, _ in _tsv_rows("OrthologousGroups.tsv")[1]} == {"OG_0000001"} + assert {g for g, _, _ in _tsv_rows("RootHOGs.tsv")[1]} == {"HOG:0000001", "HOG:0000002"} + assert sorted(os.listdir("OrthologousGroupsFasta")) == ["OG_0000001.fa.gz"] + + def test_fasta_files(self, collected): + assert sorted(os.listdir("OrthologousGroupsFasta")) == ["OG_0000001.fa.gz", "OG_0000002.fa.gz"] + with gzip.open("OrthologousGroupsFasta/OG_0000001.fa.gz", "rt") as fh: + recs = list(SeqIO.parse(fh, "fasta")) + assert {r.id for r in recs} == {prot_id(n) for n in ("a1", "b1", "c1", "d1")} + assert {r.description.rsplit(" ", 1)[1] for r in recs} == {"[A]", "[B]", "[C]", "[D]"} + + def test_protein_missing_from_roothog_fasta_is_silently_dropped(self, in_tmp_dir, sorted_walk): + # characterises current behaviour: no error if a group member is not in the rootHOG fasta + inputs = fx.build_collect_inputs(in_tmp_dir / "in") + fa = inputs["rhogs"] / "HOG_E0000002.fa" + fa.write_text("".join(line for line in fa.read_text().splitlines(keepends=True) + if "A5_A" not in line and line != "MKVA5\n")) + _collect(inputs) + with gzip.open("OrthologousGroupsFasta/OG_0000002.fa.gz", "rt") as fh: + assert [r.id for r in SeqIO.parse(fh, "fasta")] == [prot_id("b5")] + assert ("OG_0000002", prot_id("a5")) in _tsv_rows("OrthologousGroups.tsv")[1] + + +class TestUniProtIdTransform: + @pytest.fixture + def collected_up(self, inputs, sorted_walk): + return _collect(inputs, transform="UniProt") + + def test_orthoxml_protids(self, collected_up): + prot_ids = {g.get("protId") for g in etree.parse(str(collected_up)).iterfind(".//o:gene", NS)} + assert prot_ids == {accession(n) for n in fx.PROTEIN_NAMES} + + def test_tsvs_and_fastas_use_the_same_ids(self, collected_up): + roothog_prots = {p for _, p, _ in _tsv_rows("RootHOGs.tsv")[1]} + assert roothog_prots == {accession(n) for n in fx.RHOG1_MEMBERS + fx.RHOG2_MEMBERS} + og_prots = {p for g, p in _tsv_rows("OrthologousGroups.tsv")[1] if g == "OG_0000002"} + assert og_prots == {accession("a5"), accession("b5")} + with gzip.open("OrthologousGroupsFasta/OG_0000002.fa.gz", "rt") as fh: + assert {r.id for r in SeqIO.parse(fh, "fasta")} == og_prots + with gzip.open("RootHOGsFasta/HOG0000001.fa.gz", "rt") as fh: + assert {r.id for r in SeqIO.parse(fh, "fasta")} == {accession(n) for n in fx.RHOG1_MEMBERS} + + +class TestCli: + def test_end_to_end(self, inputs, sorted_walk, monkeypatch): + import sys + monkeypatch.setattr(sys, "argv", [ + "fastoma-collect-subhogs", "--pickle-folder", str(inputs["pickle_folder"]), + "--roothogs-folder", str(inputs["rhogs"]), "--gene-id-pickle-file", str(inputs["gene_id_pickle"]), + "--out", "FastOMA_HOGs.orthoxml", "--marker-groups-fasta", "OrthologousGroups.tsv", + "--roothog-tsv", "RootHOGs.tsv", "--species-tree", str(inputs["species_tree"])]) + cs.fastoma_collect_subhogs() + for name in ("FastOMA_HOGs.orthoxml", "RootHOGs.tsv", "OrthologousGroups.tsv", + "RootHOGsFasta", "OrthologousGroupsFasta"): + assert Path(name).exists(), name diff --git a/tests/test_pairwise_relations.py b/tests/test_pairwise_relations.py new file mode 100644 index 0000000..6317fba --- /dev/null +++ b/tests/test_pairwise_relations.py @@ -0,0 +1,138 @@ +"""Tests for pairwise relation extraction (fastoma-helper pw-rel, FastOMA/zoo/hog/transform.py).""" +import gzip +import io +import subprocess +import sys +from itertools import combinations, product + +import dendropy +import pytest +from lxml import etree + +from FastOMA import collect_subhogs as cs +from FastOMA.zoo.hog import transform +from FastOMA.transformer import header_transformer +from conftest import TESTDATA_DIR +from fastoma_testutils import read_pairs +import output_fixtures as fx +from output_fixtures import prot_id + +EXPECTED = TESTDATA_DIR / "expected_output" + + +def _cross(xs, ys): + return {frozenset((prot_id(x), prot_id(y))) for x, y in product(xs, ys)} + + +def _within(xs): + return {frozenset((prot_id(x), prot_id(y))) for x, y in combinations(xs, 2)} + + +EXPECTED_ORTHOLOGS = ( + set().union(*(_cross([f"a{i}"], [f"b{i}"]) for i in "1234")) + | _cross(["c1"], ["a1", "b1", "a2", "b2"]) + | _cross(["c2"], ["a3", "b3", "a4", "b4"]) + | _cross(["d1"], ["a1", "b1", "a2", "b2", "a3", "b3", "a4", "b4", "c1", "c2"]) + | _cross(["a5"], ["b5"]) + | _cross(["a6", "a7"], ["b6"]) +) +EXPECTED_PARALOGS = ( + _cross(["a1", "b1"], ["a2", "b2"]) + | _cross(["a3", "b3"], ["a4", "b4"]) + | _cross(["a1", "b1", "a2", "b2", "c1"], ["a3", "b3", "a4", "b4", "c2"]) + | _within(["a6", "a7"]) # fragment paralogGroup + | _cross(["a5", "b5"], ["a6", "a7", "b6"]) +) + + +@pytest.fixture +def fixture_orthoxml(tmp_path): + inputs = fx.build_collect_inputs(tmp_path / "in") + out = tmp_path / "hogs.orthoxml" + cs.write_hog_orthoxml(str(inputs["pickle_folder"]), str(out), inputs["gene_id_pickle"], + header_transformer("noop"), str(inputs["species_tree"])) + return out + + +def _pairs(orthoxml, rel_type, **kw): + if not isinstance(orthoxml, etree._ElementTree): + orthoxml = etree.parse(str(orthoxml)) + return list(transform.iter_pairwise_relations(orthoxml, rel_type=rel_type, **kw)) + + +def _xml(groups, genes=''): + return etree.parse(io.BytesIO( + f'' + f'{genes}' + f'{groups}'.encode())) + + +class TestOrthoxmlRelations: + def test_orthologs(self, fixture_orthoxml): + pairs = _pairs(fixture_orthoxml, "ortholog", id_attribute="protId") + assert len(pairs) == 25 + assert {frozenset(p) for p in pairs} == EXPECTED_ORTHOLOGS + + def test_paralogs(self, fixture_orthoxml): + pairs = _pairs(fixture_orthoxml, "paralog", id_attribute="protId") + assert len(pairs) == 40 + assert {frozenset(p) for p in pairs} == EXPECTED_PARALOGS + + def test_orthologs_and_paralogs_are_disjoint(self): + assert not EXPECTED_ORTHOLOGS & EXPECTED_PARALOGS + + def test_default_is_ortholog_and_internal_ids(self, fixture_orthoxml): + pairs = {frozenset(p) for p in _pairs(fixture_orthoxml, None)} + assert frozenset(("1005", "2005")) in pairs and len(pairs) == 25 + + def test_invalid_rel_type(self, fixture_orthoxml): + with pytest.raises(ValueError): + _pairs(fixture_orthoxml, "xenolog") + + def test_rejects_other_objects(self): + with pytest.raises(ValueError): + list(transform.iter_pairwise_relations("not an orthoxml")) + + def test_properties_and_scores_are_ignored(self): + doc = _xml('' + '') + assert _pairs(doc, "ortholog", id_attribute="protId") == [("a1", "b1")] + + def test_gene_without_attribute_gives_none(self): + # characterises current behaviour: the KeyError branch (transform.py:82-85) is dead code + doc = _xml('', + genes='') + assert _pairs(doc, "ortholog", id_attribute="protId") == [("a1", None)] + + @pytest.mark.xfail(strict=True, reason="BUG: an orthologGroup without children raises TypeError in " + "set.union() (zoo/hog/transform.py:52)") + def test_empty_group_has_no_pairs(self): + doc = _xml('') + assert _pairs(doc, "ortholog", id_attribute="protId") == [("a1", "b1")] + + +class TestTreeRelations: + def test_docstring_example(self): + tree = dendropy.Tree.get_from_string('(1,(2,(3,4))[&&NHX:Ev=D],(5,6));', schema='newick') + assert sorted(transform.iter_pairwise_relations(tree, rel_type='paralog')) == [('2', '3'), ('2', '4')] + + +class TestHelperCli: + def test_expected_output_orthologs(self, tmp_path, fixed_hashseed): + out = tmp_path / "orthologs.tsv.gz" + subprocess.run([sys.executable, "-m", "FastOMA.helper_scripts", "pw-rel", "--orthoxml", + str(EXPECTED / "FastOMA_HOGs.orthoxml"), "--out", str(out)], + check=True, env=fixed_hashseed) + with gzip.open(out, "rt") as fh: + lines = fh.read().splitlines() + assert all(len(line.split("\t")) == 2 for line in lines) # no header, two protIds + assert read_pairs(out) == read_pairs(EXPECTED / "orthologs.tsv") + assert len(lines) == len(read_pairs(out)) + + def test_paralog_type_on_fixture(self, tmp_path, fixture_orthoxml, monkeypatch): + from FastOMA import helper_scripts + out = tmp_path / "paralogs.tsv" + monkeypatch.setattr(sys, "argv", ["fastoma-helper", "pw-rel", "--type", "paralog", + "--orthoxml", str(fixture_orthoxml), "--out", str(out)]) + helper_scripts.main() + assert read_pairs(out) == EXPECTED_PARALOGS diff --git a/tests/test_report_contract.py b/tests/test_report_contract.py new file mode 100644 index 0000000..bb57adc --- /dev/null +++ b/tests/test_report_contract.py @@ -0,0 +1,98 @@ +"""What the report notebook (FastOMA/fastoma_notebook_stat.ipynb) expects from the pipeline outputs. + +The notebook is not executed here (papermill is an optional extra); these tests pin the input +formats it parses via FastOMA/zoo/hog/extract_hog_info.py and the names it reads. +""" +import io +import json +import re + +import pytest + +from FastOMA import collect_subhogs as cs +from FastOMA.transformer import header_transformer +from FastOMA.zoo.hog import extract_hog_info +from conftest import REPO_DIR, TESTDATA_DIR +import output_fixtures as fx + +NOTEBOOK = REPO_DIR / "FastOMA" / "fastoma_notebook_stat.ipynb" + + +def _code_cells(): + nb = json.loads(NOTEBOOK.read_text()) + return [c for c in nb["cells"] if c["cell_type"] == "code"] + + +@pytest.fixture +def fixture_orthoxml(tmp_path): + inputs = fx.build_collect_inputs(tmp_path / "in", isoforms=True) + out = tmp_path / "FastOMA_HOGs.orthoxml" + cs.write_hog_orthoxml(str(inputs["pickle_folder"]), str(out), inputs["gene_id_pickle"], + header_transformer("noop"), str(inputs["species_tree"])) + return out + + +def _parse(path_or_text): + analyser = extract_hog_info.SpeciesAnalyser() + fh = io.StringIO(path_or_text) if isinstance(path_or_text, str) else open(path_or_text) + with fh: + records = list(extract_hog_info.parse_orthoxml(fh, analyser)) + return records, analyser + + +class TestHogInfoParsing: + def test_records(self, fixture_orthoxml): + records, _ = _parse(fixture_orthoxml) + assert len(records) == 10 + assert all(set(r) == {"id", "level", "CompletenessScore", "nr_members", "is_roothog"} for r in records) + roots = {r["id"]: r for r in records if r["is_roothog"]} + assert {(r["level"], r["nr_members"]) for r in roots.values()} == {("root", 11), ("AB", 5)} + assert all(isinstance(r["CompletenessScore"], float) for r in records) + + def test_species_summary_counts_main_isoforms(self, fixture_orthoxml): + _, analyser = _parse(fixture_orthoxml) + summary = {s["species"]: s for s in analyser.summary()} + # a7 is a minor isoform of a1; A has 7 proteins, 6 genes, a7 is in a group + assert summary["A"] == {"species": "A", "genes": 6, "not_in_group": 0, "proteins": 7, "minor_splice": 1} + assert summary["B"] == {"species": "B", "genes": 7, "not_in_group": 1, "proteins": 7, "minor_splice": 0} + assert summary["D"]["not_in_group"] == 6 + + def test_expected_output_parses(self): + records, analyser = _parse(TESTDATA_DIR / "expected_output" / "FastOMA_HOGs.orthoxml") + assert sum(r["is_roothog"] for r in records) == 12 + assert {s["species"] for s in analyser.summary()} == {"AQUAE", "CHLTR", "MYCGE"} + + def test_requires_version_0_5(self, fixture_orthoxml): + text = fixture_orthoxml.read_text().replace('version="0.5"', 'version="0.4"', 1) + with pytest.raises(RuntimeError, match="0.5"): + _parse(text) + + def test_without_scores_there_is_no_completeness_column(self, fixture_orthoxml): + text = re.sub(r"\s*]*/>", "", fixture_orthoxml.read_text()) + records, _ = _parse(text) + assert all("CompletenessScore" not in r for r in records) + + +class TestNotebook: + def test_parameters_cell(self): + # FastOMA.nf (fastoma_report) passes -p output_folder, min_sequence_length, proteome_folder + params = [c for c in _code_cells() if "parameters" in c.get("metadata", {}).get("tags", [])] + assert len(params) == 1 + source = "".join(params[0]["source"]) + for name in ("output_folder", "min_sequence_length", "proteome_folder"): + assert re.search(rf"^{name}\s*=", source, re.M), name + + def test_reads_these_outputs(self): + source = "\n".join("".join(c["source"]) for c in _code_cells()) + assert '"FastOMA_HOGs.orthoxml"' in source + assert '"species_tree_checked.nwk"' in source + assert '"phylostratigraphy.html"' in source + + @pytest.mark.xfail(strict=True, reason="BUG: the report plots CompletenessScore unconditionally, so " + "--disable_completeness_score with --report fails " + "(fastoma_notebook_stat.ipynb, roothog_df/level_df plots)") + def test_completeness_plots_are_guarded(self): + for cell in _code_cells(): + source = "".join(cell["source"]) + if "x=\"CompletenessScore\"" in source or "y='CompletenessScore'" in source: + assert "CompletenessScore\" in" in source or "'CompletenessScore' in" in source, source diff --git a/tests/test_transformer.py b/tests/test_transformer.py new file mode 100644 index 0000000..8201d1a --- /dev/null +++ b/tests/test_transformer.py @@ -0,0 +1,45 @@ +"""Tests for the fasta header -> protein id transformers (FastOMA/transformer.py).""" +import pytest + +from FastOMA.transformer import ( + ExtractUniProtAccessionFastaHeaderTransformer, + NoOpFastaHeaderTransformer, + header_transformer, +) + + +@pytest.mark.parametrize("name, cls", [("noop", NoOpFastaHeaderTransformer), ("NOOP", NoOpFastaHeaderTransformer), + ("UniProt", ExtractUniProtAccessionFastaHeaderTransformer), + ("uniprot", ExtractUniProtAccessionFastaHeaderTransformer)]) +def test_factory(name, cls): + assert isinstance(header_transformer(name), cls) + + +def test_factory_unknown_name_returns_none(): + # characterises current behaviour: argparse choices guard the CLI, the factory itself does not + assert header_transformer("foo") is None + + +def test_noop(): + assert header_transformer("noop").transform("sp|P68250|1433B_BOVIN") == "sp|P68250|1433B_BOVIN" + + +@pytest.mark.parametrize("header, expected", [ + ("sp|P68250|1433B_BOVIN", "P68250"), + ("tr|A0A0N7KCI6|A0A0N7KCI6_ORYSJ", "A0A0N7KCI6"), + ("sp|Q9XYZ1|", "Q9XYZ1"), + ("ts|P68250|x", "P68250"), # prefix is any two of [sptr] +]) +def test_uniprot_extracts_accession(header, expected): + assert header_transformer("UniProt").transform(header) == expected + + +@pytest.mark.parametrize("header", [ + "sp|P68250-2|1433B_BOVIN", # isoform accessions are not recognised + "P68250", + "sp|p68250|x", + "ENSP00000354587", +]) +def test_uniprot_keeps_unrecognised_headers(header, caplog): + assert header_transformer("UniProt").transform(header) == header + assert "cannot extract uniprot accession" in caplog.text From 51274755b7a73913bd7709a0c7246b6fb0ee2845 Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Tue, 20 Oct 2026 14:25:37 +0200 Subject: [PATCH 06/13] chore: ignore nf-test working files --- .gitignore | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/.gitignore b/.gitignore index ecb3eae..cab7718 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,7 @@ archive .gitignore __pycache__ *.orig + +# nf-test working files +.nf-test/ +.nf-test.log From c1040c9e45ae90bf7c1c7fb56c3246857137508d Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Tue, 20 Oct 2026 14:29:07 +0200 Subject: [PATCH 07/13] test: unit and property tests for subHOG inference Unit tests for the HOG class (construction, split_hog, orthoXML shapes, representatives), LevelHOGProcessor (merging, reconciliation, early return, root wrapping), the MSA filters, gene tree rooting, species tree preparation and fragment detection. test_subhog_stage.py runs fastoma-infer-subhogs on four real rootHOGs (tests/data/subhog, species trees pruned to the needed species) and checks that no protein is lost or duplicated, TaxRanges nest along the species tree and equal the members' MRCA, the output is schema-valid, and sequential and --parallel runs agree. D0625237 reproduces three known bugs (split_hog losing members, wrapper TaxRange not the MRCA, single-child wrapper), pinned as strict xfails like the other bugs found in this stage. --- tests/data/subhog/conflict/HOG_D0625237.fa | 246 ++++ tests/data/subhog/conflict/HOG_D0662268.fa | 52 + tests/data/subhog/small/HOG_D0111149.fa | 25 + tests/data/subhog/small/HOG_D0455823.fa | 1226 +++++++++++++++++++ tests/data/subhog/species_tree_conflict.nwk | 1 + tests/data/subhog/species_tree_small.nwk | 1 + tests/subhog_helpers.py | 67 + tests/test_fragment_detection.py | 96 ++ tests/test_gene_tree_rooting.py | 129 ++ tests/test_hog_class.py | 282 +++++ tests/test_level_processor.py | 253 ++++ tests/test_msa_filter.py | 124 ++ tests/test_species_tree_prep.py | 78 ++ tests/test_subhog_stage.py | 201 +++ 14 files changed, 2781 insertions(+) create mode 100644 tests/data/subhog/conflict/HOG_D0625237.fa create mode 100644 tests/data/subhog/conflict/HOG_D0662268.fa create mode 100644 tests/data/subhog/small/HOG_D0111149.fa create mode 100644 tests/data/subhog/small/HOG_D0455823.fa create mode 100644 tests/data/subhog/species_tree_conflict.nwk create mode 100644 tests/data/subhog/species_tree_small.nwk create mode 100644 tests/subhog_helpers.py create mode 100644 tests/test_fragment_detection.py create mode 100644 tests/test_gene_tree_rooting.py create mode 100644 tests/test_hog_class.py create mode 100644 tests/test_level_processor.py create mode 100644 tests/test_msa_filter.py create mode 100644 tests/test_species_tree_prep.py create mode 100644 tests/test_subhog_stage.py diff --git a/tests/data/subhog/conflict/HOG_D0625237.fa b/tests/data/subhog/conflict/HOG_D0625237.fa new file mode 100644 index 0000000..6eb3bb8 --- /dev/null +++ b/tests/data/subhog/conflict/HOG_D0625237.fa @@ -0,0 +1,246 @@ +>SALSA97694||8030||1226039127 SALSA97694 transcript_id=ENSSSAT00000139120.1 +ALSTMRPTLRKVVLIAQMVGDRIARMDNSYREPISPVEHLAICLRFLATGDSYRTIGVGR +STVAGIVPSVAQAIWDCLVGEYMPVPKEEAWRAIAPQCLGSQFYNYKGTYSVVLLAVVDG +IYCFRVVDVGAYDKGSDGGILRDSAFGQLDGLFTDGFHHLHYSLGLGPVPHVFVGDEAFP +LIPNLMRPYVGRQLPLPKPVRIFNKRLSRARLVVECACGILAARPRVLHNYLRMSFQEPL +QMEKGTTNGYLPDVTREGANNAPRQALQVREKLNTYLSSPAGEVPWQNAVE +>SALSA119682||8030||1226046831 SALSA119682 transcript_id=ENSSSAT00000124775.1 +SDQYYVILICFILIFFLSKTKTFLSDPNLLNGSVYYNLPSWLDARMIIFSCISILSDWFP +QNLLQCIMETCGAIERRMLVTHLPQPTEETWRQTSQEFNEKWDFPNCLGSDDGKHIMITK +PPNSGRHFLNYKLTFFVVLLALVDAKYRFTAIQVGDLGRNSDSGIYANSPLGRAMASKTL +QVSQDAFPPVGEDLGNIPNTMVGVTLKKSEEKALGILAARWRILYKEINLLPCKVDTLVV +AMCILHNFLTKPCDVEMWLQQSGAGMRQDMRSMAIQANRAGQEVVSVREKFTKYFTSVAG +RIDFQNRMVVARPA +>GADMO15129||8049||1306005642 GADMO15129 transcript_id=ENSGMOT00000033255.1 +MHGSVRISDSTRVNLWVHDINRGRQQYGAFHSLIQELRFDNARFSAYFRLDKSQFETLLR +IGAPSIIRQDTHMRQAISPEERLRRLLHFLLLHGRLLENLNFRVGISTVSSIVPDVATAI +WDCLVEEFMAQWIFTLCCGALDGKHVVIKAPAHSGSMYFNYKGTFSLVLLAVVDAEYCFR +VIAVGGYGRTSDGGILANSAFGAALRSGTLQLPADLPLTGADHRGPQPHVFVADEAFPLR +NKLMRPFPGRNLTREPRLVVENAFGILSSQWRIYRRALEVKVEVAEKCVKATCVLHNFMR +KTTPPPSALRGKIPAGEVDPPPGLGRVAANNSAREAIRIREAFTSYFPTEGTVPWQDNV +>GADMO16096||8049||1306006028 GADMO16096 transcript_id=ENSGMOT00000033168.1 +MSAPKFDDLLSRVIRYLPDSHQNHRNPIGASQRLAVTLRYLATGIGLQALSASYKMGTST +VSGIVEEMCSAIWDALQGEFMAFPSRGQWQDIAEEFWRQWQFPLCVGAIDGKHVRLRAPA +RSGSDYYNNKGFFSIALMAAADANYRFIYVDVGAYGRESDGGVLGRSAFGSRLAEGNLNL +PAPAVLPGTTTPSPYFFLGDEAFPLQVNLIVPIQDRKRIYNYRQARARRVVENAFGILAA +RFRIFGRLIDCQPEKAVKIVKACVALHNFLASTERARYMPASFVDTTADTGEVQPGEWRQ +ARPSQRAALVREQLADYFLSDAGVFPHQYNVLRLGTDQ +>GADMO18221||8049||1306006826 GADMO18221 transcript_id=ENSGMOT00000041767.1 +MANQLQLIALALAFEEEEGEEQPRRRLWVHDILRNRESQGAFGHLIQELRLDDARFKNFF +RLDKSQFEDLLRRIGPEISKKQTHLRETISPDERLCICLRYLATGNSYRSIAFHFRVGIS +TVAGIVRSVCEAIWDCLSGEFLAFPTEAEWRKIAEDFARMWAFPNCVGAMDGKHVVIEAP +PLSGSLYFNYKKSFSIVLLAVVDAHYRFRVVDIGAYGKNSDGGTLAASAFGSALRQVTLN +LPGDAPLPGAENLGPIPHVFLADEAFPLRRNLLRPYPGHTHGEKRVFNYRLSHARRMVEC +TFAESVVKATCILHNFLRWGGATEALTGPAEPSAGMRSIGRVGSNNASNEAITVRTNFTT +YFSSEAGQVPWQNRPLHIPHALQ +>GADMO44357||8049||1306016784 GADMO44357 uncharacterized LOC115546003 [Source:NCBI gene (formerly Entrezgene);Acc:115546003]; transcript_id=ENSGMOT00000048881.1 +MSRMRKLALVLALNDNDEDNDEPSRLWVHDINRGRQRYGAFHSLIQELRFDNARFSAYFR +LDKSQFETLLRIVAPSIIRQDTHMRQAISPEERLSICLRYLATGDSFRSIAFAFRMGAST +VAGIVHQVCTAIWDCLLPDYMPIPDKAAWRKIATGFQQLDFPNCIGAMDGKHVVIEAPPS +SGTLYYNYKGTFSIVLLAVVDARYCFRLVDIGAYGRNSDGGTLSSSAFGTALRQNTLGIP +DDSILPGAEHLGPMPHVFLADEAFPLRRNIMRPYPGYNTGEKKVFNTRLSHVRRMVECAF +GILASQWRVYRRVLCVSPEVAENVVKATCMLHNFLRWDASTTIPARSSTGTSTAAPSQGL +QNAPRLGTNNAGRDAVAVREKFAQYFMSEAGRVPWQDNI +>GADMO52829||8049||1306020037 GADMO52829 transcript_id=ENSGMOT00000028584.1 +MCCRFLASGDSFRTIANSFRVGTSTVASIVSDVVTAIWDCLVEEFMAVPTAEEWRVVAER +FEERWNFPLCCGAIDGKHVVLKAPANSGSQFFNYKGTFSIVLLAVVDADYCFRVIDVGGY +GRTSDGGILANSAFGQALHAGDLQLPADRALPGAEHRGPLPHVFVADEAFPLRTNLMRPF +PGRVLPPERRVFNYRLSRARLVVEDAFGILSSQWRIYRRVIEVRPELAERCIKATCVLHN +FLRRTAPTAAVRECIPGGAVEPLPRLGRVAANNAGREAIRIRETFTSYFSEEGTVSWQDD +I +>GADMO52865||8049||1306020050 GADMO52865 transcript_id=ENSGMOT00000032388.1 +MTELLLLYRYLATGDSFRSVAFCFRVGASTAAGIVNEVCQPKPDAAEWRKIAAEFSHLDF +PNCLGAMDGKHVVIEAPPSSGSLYYNYKGTFSIVLLAVVDAKYRFRVVDIGAYGRNSDGG +TLSASAFGTALRQNTLGIPADSPLPGAEHLGPMPHVFLADEAFPLRQNIMRPYPGHNTGE +KNVFNLRLSHVRRMVECAFGILASQWRVYRRVLGVSPKVAENIVKATCMLHNFLRWDGNP +GLPGGAAHVVRDKLCQYFNSPLGSVQWQNRMV +>GADMO52890||8049||1306020064 GADMO52890 transcript_id=ENSGMOT00000019214.2 +MARNRQLALALALADDEEKHVPRRLWLHNITRGRQQQGAYHNLVQELRFDDARFAAYFRL +NKCQFEQLLRIVAPSIAKLDTKFTQAISPEERLCICLRYLATGDSFRSVAFCFRVGASTA +AGIVNEVCQPKPDAAEWRKIAAEFSHLDFPNCLGAMDGKHVVIEAPPSSGSLYYNYKGTF +SIVLLAVVDAKYRFRVVDIGAYGRNSDGGTLSASAFGTALRQNTLGIPADSPLPGAEHLG +PMPHVFLADEAFPLRQNIMRPYPGHNTGEKNVFNLRLSHVRRMVECAFGILASQWRVYRR +VLGVSPKVAENIVKATCMLHNFLRWDGNPGLPGGAAHVVRDKLCQYFNSPLGSVQWQNRM +V +>ORYJA15604||123683||1611006442 ORYJA15604 transcript_id=ENSOJAT00000033332.1 +MHQSLLRVPRFFPIFLCPCSWLHHSRNGPVLAVPTIVMFLLFFKELVSIHIYYITNLSEC +YYLRGRAPLPPGQKLTITLRYLATGHSYRSLAFEFRVAHNTMSQFLPRVCRAIYDEYRRE +LFHRPDNPDEWREVATRFGQKWNFHHCCGAIDGKHVAIKKPKKSGSLYYNYKGFHSIILL +AVVDADYRFIWANVGANGSASDCGVFNRSELHTKLEENTLDVPYFLVGDDAFPLRTFMMK +PFSQRGLTNAERIFNYRLSRVRRVVENAFGILAHRWRCLLTTLQQTPDNCTEIVLGCMTL +HNLLRSRAPGLQAGEVDTEDADGNVVPGAWRQTVDPTDFPTVGGRRPTRAGKLQRVYLSD +YYNAHFCQLYSYLCVLVICVIYM +>PYGNA33577||42514||1649023172 PYGNA33577 transcript_id=ENSPNAT00000016801.1 +WLSGPSFLHCAQEQWPKNPDPGMLDIDDLEIRRSSQLGQKHNYSSTQTQKPMHSPAVHAQ +HAFLWRLKHPVLGGGHRGQIIPSVNRIGLNVNSREVCVAVPVAQKKRLSRRWGVWPLNRS +RWKDRECVSLVRPMRGLDVERHFQYFRMTAAKYDALLHRVHAYITRGKSHCSPLSASERL +AVTVRYLATGMSHRALSTIYKLGSSTLGQAIWVALDGDFVPYPSEWRGTAHDFWKLWNFP +QCLGTVDGKHVRITAPPNLGSHFFSITKVTFQLFSWQHVVPPTDFDTSTSVLSGGKKGNF +LCLRRIFSRGTDRQSPYVFAGDEAFPLKENLLRPYPGRQGCNYILSEVDANILSLLQKME +TRNNFPASFWRPSSAAPICAAYAAYPLFAPLQVDV +>ESOLU01315||8010||2320000641 ESOLU01315 transcript_id=ENSELUT00000004604.2 +MSVNKFEALLQMLAPHLSRQRTNFREPIAPEQRLAVCLSTEDSFTSIAASFRLGVSTVGK +MVKDTCNVIWEHMREAFLPSPSEDLWKNTARRLQEMWDFPNGIGALDGKHIFHNYKGTFS +VVLLALVDADYRFLAVDVSAFGSNSDGGIFANSRLGRDLQSGVWCHHHLPSHLHQSYEAF +PMKPYLLRPYPGRRIPEEMHIFNCRLSRARRISENAFGILTQRWRVYQHQMQVGPDTADG +IIKASYILCNYLRPEAHHQGEEDMSRDEVEDESVLGPIRSLWGNRASAEVLSVRDTFKNY +FVSPVLTGSLAVWPCAQLNNISTHKLV +>ESOLU30140||8010||2320010645 ESOLU30140 transcript_id=ENSELUT00000038154.2 +VFLSSGDSFTTIAANRFRLGVSTVGKIVKDTCNVIWEHMRETFLPSPSVDLWKKTARRFQ +ERWNFPNYIEGLDGKHVVIQAPASSGSQFHNYKRTFSVVLLVQVDTVYRFLAVDVGAFGS +NSDGGIFANSRLGRDLQSGVLHVPLPSPLPSAPELGPVPFVMVGDEAFPMKPYLLRPYPG +QGIPEEMGIFNYRLSRRRMQVCPDTADGIIKASCILCNYLWPEVHHQGEEDMSRDEVEDD +SVLGPIRSLRGNQASAEALRVRDTFRNYFLSPVRQVPWQYNHLSDGQFSVVPGKCSKL +>ESOLU70085||8010||2320024190 ESOLU70085 zgc:194221 [Source:ZFIN;Acc:ZDB-GENE-081022-77]; transcript_id=ENSELUT00000061388.1 +MYSIYFSHASMVIITNILLNRSYVHTILQARKEPGYYHHLVQKLRLDCARFRYYYGMDTT +QFHMLLSKVGPFIERQNTFSREPMKLGQRPAIYLRTIAYSYNVGISTVVGIVAEVCRVIW +EGLEMGYMPEPTTEDWRTVEREFRKLWNFPNCVGALDAKHVAIRCPRPFRVPVFYYKEGY +SIVLLAVVDAGSLHLHAGARLPGAEHLGPTPHVIVTSQLNFNHSLSRARMTWQVYQRAMA +VSPDKADWIVKDTCMLYNLLHQEPRSTHGIGAYAGHSAGNQGTVEALAVRDKLTVYFSSP +AGALQ +>ESOLU71203||8010||2320024633 ESOLU71203 transcript_id=ENSELUT00000047242.1 +MSQSAFTKHLALNPKEQTTIVLKFSVENLKCLCFFYIFLTSFHLGVSTVEKMVKDTCNVT +WEHMRETFLPSPSEDLWKNTARRFQERWNFPNCIGALDSKHVVIQAPGNSGSQIHNYKGT +FSVVLLALVDTDYRFLAVDVGAFGSNSDGVIFAKSCLGRDLQSGVWHVPPPSPLPSAPEL +GLPMKPYHLRPYTGRCIPEEMRIFNYSLSRACRISENAFVIFTQSWRVYQCPDTADGIIK +ASCILISLIKIDPCAGKNGSVRGQEEFKDHHQGHPDESGQLWYQHLKEDTPVDTVQGWSL +WTPTKEDSTSPSHTNKVYLQIASQGRYLIWGFLNIKLCPLMFAIGQFGDILV +>tr|B7QMA6|B7QMA6_IXOSC||IXOSC||2498019800 tr|B7QMA6|B7QMA6_IXOSC DDE Tnp4 domain-containing protein OS=Ixodes scapularis (Black-legged tick) (Deer tick) OX=6945 GN=IscW_ISCW013628 PE=3 SV=1 +QTHQRRILNYRLSRVRRVVENTFGIMSQRWRILRRSFKATNENVVRIVSACVALHNFLLQ +ESAVSHAA +>tr|A0A3B3H866|A0A3B3H866_ORYLA||ORYLA||2923001177 tr|A0A3B3H866|A0A3B3H866_ORYLA DDE Tnp4 domain-containing protein OS=Oryzias latipes (Japanese rice fish) (Japanese killifish) OX=8090 GN=ENSORLG00000023068 PE=3 SV=1 +TTEKYIACCPVVRRKRRRFWVHPIITRREEHGEFYRLIQELKMYHERFRGYFRMSISEFE +NLLQQLAPSLTKEQTHYRKTIDPEQRLAVCLRFLSTGDSYRTIASSFRLGVSTVASIVRE +TCDALWHCLRDEHLPVPTEEMWRSTARRFHERWNFPNCLGAMNGKHIFIQAPANSGSLYF +NYKGTFSVVLLALVDADYRFLVVDVGSYGSNSDGGIFANSGLGKALRDGTLNVSPPSELP +GAPELGKLNHVIVADEAFPLKPYLLRPYPGRCLPTEKRIFNYRLSRARRISENVFGILSQ +RSRVFQRTLQVQPSVIDKVVKAACGLCNYLRPKGEDQNHATEDDHDCEQPLQGFEHCRGQ +RASVEAQNVRELYKEYFNSPAGEVAWQYEHVNHALGNR +>tr|A0A3B3HNM8|A0A3B3HNM8_ORYLA||ORYLA||2923004237 tr|A0A3B3HNM8|A0A3B3HNM8_ORYLA DDE Tnp4 domain-containing protein OS=Oryzias latipes (Japanese rice fish) (Japanese killifish) OX=8090 GN=ENSORLG00000029368 PE=3 SV=1 +MDISSTSSSSSSSSDEEIIVLLNAERPRKRRRFWVHPIITRREEHGEFYRLIQELKMYHE +RFRGYFRMSVSEFENLLQQLAPSLTKEQTHYRKSIDPEQRLAVCLRFLSTGDSYCTIASS +FRLGVSTVASIVRETCDALWHCLRDEHLPNFPNCLGAMDWKHIFIQAPANSSSLYFNYKG +TFSVVLLALVDADYRLLVVDVGSYGSNSDGGIFANSGLGKALRDGTLNVPPPSELQGAPE +FGKLNHVIVADEAFPLKPYLLRPYPGRRLPTEKRIFNYRLSRARRISENVFGILSQRFRV +FQRTLQVQPSVVDKVVKAACVLCNYLRPKGEDQNHATEDDHDCEQPLQGFEHCRGQRASV +EAQNVRELYKEYFNSPAGEVAWHYPVPIEEKAAP +>tr|A0A3B3HVD3|A0A3B3HVD3_ORYLA||ORYLA||2923005577 tr|A0A3B3HVD3|A0A3B3HVD3_ORYLA DDE Tnp4 domain-containing protein OS=Oryzias latipes (Japanese rice fish) (Japanese killifish) OX=8090 GN=LOC110017219 PE=3 SV=1 +FTKKKRACIYARRKRRRFWVHPINTRREEHGEFYRLIQELKMYHERFRGYFRMSVSEFEN +LLQQLAPSLTKEQTHYRKPIDPEQRLAVCLRFLSTGDSYRTIASSFRLGVSTVASIVRET +CDALWHCLRDEHLPVPTEEMWRSTARRFHERWNFPNCLGAMDGKRISIQATANSGSLYFN +YKGTFSVVLLALVDADYRFLMVDVGSYGSNSDGGIFANSGLGKALRDGTLNVPPPSELPG +APELGKVNHVIVADEAFPLKPYLLRPYPGRRLPTDKRVFNYRLSRARRISENVFGILSQR +FRVFQRTLQVQPSVVDKVVKAACVLCNYLRPKGEDQNHATEDDRDCEQPLQGFEHCRGQR +ASVEAQNVRELYKEYFNSPAGEVA +>tr|A0A3B3HX08|A0A3B3HX08_ORYLA||ORYLA||2923005892 tr|A0A3B3HX08|A0A3B3HX08_ORYLA DDE Tnp4 domain-containing protein OS=Oryzias latipes (Japanese rice fish) (Japanese killifish) OX=8090 GN=ENSORLG00000026918 PE=3 SV=1 +WVHPIVTRREEHGEFYRLVQERKNNVRQTDTLPSFTLLFTSINVVKTCVNFLSTGDSYRT +IVSSFRLGVSTVASIVSETCDALWHCLRDEHLPVPTEEMWRSTARRFHERWNFPNCFRAL +GGKHIFIQAPANSGSLYFNYKGTFSVVLLALVDADYRFLVVDVGSYGSNSDGGIFANSVL +GKALRDGTLNVPPPSELPGAPELGKVNHVIVADEAFPLKPYHLRQRFRVFQRTLQVQPSV +VDRVVKAACALCNYLRPNGNDQNCAAEDDHDCEQPLQGFEHCRGQRASVEAQNVRELYKE +YLNSLPGEVLPPVPGSLSLLGR +>tr|A0A3B3IE60|A0A3B3IE60_ORYLA||ORYLA||2923009276 tr|A0A3B3IE60|A0A3B3IE60_ORYLA DDE Tnp4 domain-containing protein OS=Oryzias latipes (Japanese rice fish) (Japanese killifish) OX=8090 GN=ENSORLG00000029737 PE=3 SV=1 +GSWIRCLLKSALGSTPVFCFVLHSVKAGKRGVEPPEWNEQVFMRLSESYKENMNISSTSS +SSSSSSDEEIIVLLNDERRRKRRRFRVHPIVTRREENGEFNRLVQELKMYHERFGGYFRM +SVSEFENLLQQLFGRVFTVSLFTLLFTSMNAVKTYVNFLSTVDSYRTIASSFRLGVSTVA +SIVSETCDALWHCLRDEHLPVPTEEMWRSTARRFHERWNFPNCLGAMDGKHIFIQAPANS +GSLYFNYKGTFSVVLLALFNADYRLMVVDVGSYGSNSDGGIFFNSVLGKALRDGTLNVPP +PSELPGAPELGKVNHVIVADEAFPLKQYLLRPYPGRRLPTDKRIFNYRLSRARRISENVF +GILSQRFRVFQRTLQVQPSVVDKVVKAACALCNYLWQWASVEAQNVRELYKEYFYSPAGE +VAWQYDHVNHALGNR +>tr|A0A3B3IL14|A0A3B3IL14_ORYLA||ORYLA||2923010609 tr|A0A3B3IL14|A0A3B3IL14_ORYLA DDE Tnp4 domain-containing protein OS=Oryzias latipes (Japanese rice fish) (Japanese killifish) OX=8090 GN=ENSORLG00000027214 PE=3 SV=1 +MTTKQIYIEYPPSFSRQTISCCLISYCLLQSDCSKEQTHYHKPIDPEQRLAVCLSSIVSE +TCDASWHCRRDEHLPLPTEEMWRSTARRFHERWNFPNCLGAMDGKRIFIQAPANSGSLYF +NYKDYRFLVVDVGSYGSNSDGGIFANFVLGKALRDGTLNVPPPSELPVAPELGRVNNVIV +ADEAFPLKPYLLRPYPGHHLSTDKRIFNYCLSRARTLQVQPSVVDKVVKAACALCNYLRP +KGEDQNHATEDDHDCGQPLQGFEHCRGQRASVEEYFNSPAGEVAWQYEHVNHALGNR +>ICTPU26284||7998||3169017180 ICTPU26284 transcript_id=ENSIPUT00000007877.1 +MALIETQKYAGTQGGAAQLFKRPRKRRRYWIHPILKRREEHGEFHRLIQELKLYHEGFQR +YFGMSVSDFENLLQMLAPSLRKEHTHYRKPIEPEQRLTVCLRFLITGDSYHTIASSFRLG +VSTVSLIVSETCDAIWHCLRDEQLPVPTEEMWRNTARRFNDRWNFPNCLGAMDGKRVLCN +YKGTFSVGLLALVDADCRFLMVDVGSFGSNSDGDIFADSALGKALRDGSLNVPPPSELPG +APELGKVKHVIVADEAFPLKPYLLRSYPGRRLPMDMRIFNYRLSRARHVSENAFGILSRR +FRIFRRSLQVRPAVVDKVVKAACALCNYLRSDGSDQDHAPEDDHDYARTLQAFKRCRGRR +ATAEAQNVRELYKDYFNSPAGEVAWQYDHVNHSSEI +>ICTPU35886||7998||3169023446 ICTPU35886 transcript_id=ENSIPUT00000015975.1 +AFSIELDCCVSNYLQRKCERRSVWVHKIIQIRKQHGEYHRLVQELQLDEVQFQQYFRLDR +TQFDELLLKEDTKCHRAISPGQRLTICLRYIATGDSYHSIAFSYWVGHSTVAGIVAAVAK +AIWDSLVEDYMPFHHRWNSPNCVGYIDGKHVVIQNPDNYGSLYYNYKGTFSIVLLAVVDA +KYSFCIIEVVVMGGPVMPFPGSTLPNKQNNTFGILAAHPANAETCVLYKFLRRVGTNNAA +WEAMRVRETIEDYFCAEGAVPCQPRMLPLSLSLHFI +>BUFBU03090||8384||3171001724 BUFBU03090 protein ALP1-like +MTRGVYSTLYQELRKHPVKFAEYLRVSVASFDDLSQRLRRRLRRKDTKFSLSVTPEERLM +VTLRFLASGESFSSLHFQFRLGKSIISYIVRDTCRAIWNLMREEFLPHPTCQQWISIADK +FHEVTQFPNCIGAVDGKHVRLLKPPRSGSSFFNYKKYFSVILMAIVDANYKFVAVDIGAF +GRTNDSRVFKNSNMGRRLYSGNFGIPEPRPLPGTTNPALPFVLVGDEAFQMCGNLLKPYA +SRGLDYRKRVFNYRLTRARRMVECAFGILTAKWRIFTRAIQLKTDTVDDVIKACVVLHNY +VLTKEPLPTEPLSLNPPGDHIETGPRSTVAVSRMRDQFAEYLISSAGSVLWQDEHI +>BUFBU03484||8384||3171001940 BUFBU03484 protein ALP1-like +MPNDTLYQELRKHPVKFSEYLCVSVASFDDLSQRLRRRLRRKDTKFRRSVTLEERLMVTL +RFLATGESFSSLHFQFRLGKSTISYIVKDTCQAIWNLLREEFIPHPTCQQWISIADKFYE +VTQFPNCIGAVDGNHVRVLKPPRSGSSYFNYKKFFSVILMAIVDAHYKFVAVDIGAFGRT +NDSRVFKNFNMGRRLYLGNFGIPEPRPLPGTTNPALPFVLVGDEAFQMCGNLLKPYASRG +LDYRKKVFNYRLTHAIRMVECAFGILTAKWRIFTRAIQLKTDTVDDVIKACVVLHNYVLT +KEPLPTEPLSLNPPGDHIETGPRSTAAVSRMRDQFAEYFISSAGSRPWQDEHI +>BUFBU05594||8384||3171003097 BUFBU05594 protein ALP1-like +MTRGVYSTLYQELRKHPVKFAEYLRVSVASFDDLSQRLRRQLRRKDTKFRRSVTPEERLM +VTLRFLASGESFFSLHFQFRLGKSTISYIVKDTCRTIWNLLREEFLPHPTCQQWISIADK +FYEVTQFPNCIGAVDGKHVRVLKPPRSGSSFFNYKKYFSVILMAIVDANYKFVAVDIGAF +GRTNDSRVFKNSNMGRRLYSGSFGIPEPRPLPGTTNPALPFVLVGDEAFQMCGNLLKPYA +SRGLDYRKRVFNYRLTRARRMVECAFGILTAKWRIFTRAIQLKTDTVDDVIKACVVLHNY +VLTKEPLPTEPLSLNPPGDHIETGPRSTVAVSRMRDQFAEYFISSAGSVLWQDEHI +>BUFBU09183||8384||3171005325 BUFBU09183 protein ALP1-like +MTARVEAMVKLPRPGTLQDLRKFLGVANFMREFIEDFAAKAKPLYELLRGEEPSIKGCFD +ELLGLLGTRLECQDTFMRDSIPPAERLIITLRYLATGHSLISLHYTFLIGKSTASVIVKE +TCIAIWHVLHAAVMAQPNKEEWLKIADTFQQTCNFPNCVGAIDGKHIRVLKPMRSGSQFF +NYKKYFSVVLFAVCDANYCFRYIDVGSYGSSSDSAVFGHSDFGQMLITNALDLPGNTTLP +GTTYPSMPFVFVDDEAFALGEHLMRPYSSRGLSIARRVFNNRLTRARRVVKCAFGILSNK +WRVLHSPIHLKLETAISAVKAACALHNFVRQRDGFNFEDSLSHSMESPNRSGVRGTTHGA +AIRDHFTAYFMSPQGELPWQM +>BUFBU13753||8384||3171007900 BUFBU13753 protein ALP1-like +MRMSSMKRRRRYWVHPITSCRMTQGVYSTLYQELRKHPVKFTEYLCVSVASFDDLSQRLR +RRLRRKDTKFRRSVTPEERLMFTLRFLASGESFSSLHFQFRLGKSTISYIVKDTCRAIWN +LLREEFLPHPTCQQWISIADKFYEVTQFPNCIGAVDGKHVRLLKPPRSGSSFFNYKKYFS +VILMAIVDANYKFVAADIGAFGRTNDSRVFKNSNMGRRLYSGNFGIPEPRPLPGTTNPAL +PFVLVGDEAFQMCGNLLKPYASRGLDYRKRVFNYRLTRARRMVECAFGILTAKWQIFTRA +IQLKTDTVDDVIKACVVLHNYVLTKEPLPTEPLSLNPPGDHIETGPRSTVAGPICYDYHV +SSWLMQADKCTIITHISETSLKLI +>BUFBU17198||8384||3171009886 BUFBU17198 protein ALP1-like +MSINSFDELLGLMSIHLQWQETFMRDSIAPVERMLITLRYLATGQSLVNLHYAFMIGKST +ASDIIRETCSAIWDVLHAVVMSKPNKDEWQKIAHTFYQTCNFPNCVGALDGKHNRVIKPK +RSVSRFFNYKKYFSFVLFVVSDANYCFRYIDVGSYGSSSDSAVFAHSEFGQMLNTNALDL +PGNTKLPGTADPAMPFVFVGDEAFALGRGLCLERRVLNYRLSRARRVVECAFGILSNKWR +FLHSPINLKLENAISAVKAVCCLHNFVRQRDGFNFEDSLVHSMESTNCTGVRGITHGATI +RDKFAAYFISPEGEVPWQLQAIQA +>BUFBU21770||8384||3171012486 BUFBU21770 protein ALP1-like +MTRGVYSTLYQELRKHPVKFAEYLCVSVASFDDLSQRLHRRLRRKDTKFSRSVTPEERLM +VTLRFLASGESFSSLHFQFRLGKSTISYIVKDTCRAIWNLLREEFLPHPTCQQWISIADK +FYEVTQFPNCIGAVDGKHVRVLKPPRSGSSFFNYKKYFSVILMAIVDANYKFVAVDIGAF +GRTNDSRIFKNSNMGRRLYSGNFGIPEPRPLLGTTNPALPFVLVGDEAFQMCGNLLKPYA +SRGLDYRKRVFNYRLTRARRMVECAFGILTAKWRIFTRAIQLKTDTVDDVIKACVVLHNY +VLTKEPLPTEPLSLNPPGDHIETGPRSTVAVSRMRDQFAEYFISSAGSVLWQDEHI +>BUFBU33069||8384||3171018739 BUFBU33069 protein ALP1-like +MTRGVYLTLYQELRKHSVKFAEYLRVSVASFDDLSQRLRRRLRRKDTKFRRNVTPEERLM +VTLRFLASGESFSSLHFQFRLGKSTISYIVKDTCRAIWNLLREEFLPHPTCQQWISIADK +FYEVTQFPNCIGAVDGKHVRLLKPPRSGSSFFNYKKYFSVILMAIVDANYKFVAVDIGAF +GRTNDSRVFKNSNMGRRLYSGNFGILEPRPLPGTTNPALPFVLVGDEAFQMCGNLLKPYA +SRGLDYRKRVFNYRLTRARRMVECAFGILTAKWRIFTCAIQLKTDTVDDVIKACVVLHNY +VLTKEPLPTEPLSLNPPGDHIETGPRSTVALSRMRDQFAEYFISSAGSVLWQDEHI +>SINGR96692||75366||3278038889 SINGR96692 zgc:194221 [Source:ZFIN;Acc:ZDB-GENE-081022-77]; transcript_id=ENSSGRT00000087432.1 +MLTQCRVLALVLALDGGVVEPRRKKGRTRRSVWVHEILGARKQLSEYHRLVQELKLDVSR +FKEYFRMSRHVAIQAPSSTGSMYYNYKGSFSIVLLAVVDARYLFRIVDVGAYGKSSDGGT +LYASDFGKALHQGGLDLPEDAPLPGAEDLQPVPHVFVGDEAFPLKKNLLRPYPENHLDRE +KRVFNYRLSRAMRMVECTFGILAAQWRLYHRVLGVSPKVADAVVKATCILHNFLQEESCV +PLPLAQQLAMQPIQRVGSNNASREALEIRQRYTSYFSSPAGEVAWQHSVL +>SALTR91004||8032||3317034283 SALTR91004 transcript_id=ENSSTUT00000072610.1 +MGKRTQTLDRGTLPRRPASRSHLFPVDVETPLSILVRASLHCSVKKRLEAIERRMLATHL +PRPTEETWRHISQEFNEKWDLPNCLGLVDGKHIMITKPANSRSRFFYNKGTFSMVLLALV +DAKYRFTAIQVGGFERNSDGGVYANSPLGRSMASKTLMIVEKAFRILAARWRILYKKINQ +LASKFDTRVVAMCILHNFLTKPCDVEMCLQQSGAGMRQDMRSIAIQANRAGQDAVCQGKV +ERFSPLWQAEWASRTEWL +>SALTR95034||8032||3317035869 SALTR95034 transcript_id=ENSSTUT00000007594.1 +SDQYYVILICFILIFFLSKTKTFLSDPNLLNGTWHLETLCRLAFTYRLGFQTVLQCIMET +CGAIERRMLVTHLPQPTEETWRQTSQEFNEKWDFPNCLGSDDGKHVMITKPPNSGRHFLN +YKLTFFVVLLGLVDAKYHFTAIQVGDLGRNSDSGIYVSQDAFPPVGEDLGNLPNTMVGGD +TAFPLKPDLMRSYEKALGILAARWRILYKEINLLPCEVDTLVVAMCILHNFLTKPCDVEM +WLQQSGAGMRQDMRSIAIQANRAGQEVVSVRGKFTKYFTSVAGRIDFQNRMVVARPA diff --git a/tests/data/subhog/conflict/HOG_D0662268.fa b/tests/data/subhog/conflict/HOG_D0662268.fa new file mode 100644 index 0000000..4e49b5f --- /dev/null +++ b/tests/data/subhog/conflict/HOG_D0662268.fa @@ -0,0 +1,52 @@ +>tr|T1EI68|T1EI68_HELRO||HELRO||1014001840 tr|T1EI68|T1EI68_HELRO RING-type domain-containing protein OS=Helobdella robusta (Californian leech) OX=6412 GN=20196268 PE=4 SV=1 +SRFQLRTLNQYFLCSICNGYIHNATTITECLHTFCKKCILDYTKFYLNCPICQELIHPTN +PMEEIMHDSPIQDLLYKLMPSVYEEELRRERLF +>tr|T1EIL7|T1EIL7_HELRO||HELRO||1014001986 tr|T1EIL7|T1EIL7_HELRO RING-type domain-containing protein OS=Helobdella robusta (Californian leech) OX=6412 GN=20196417 PE=4 SV=1 +KVNLTSINKYITCSLCGGYYIDATAIVACQHTFCRSCILLYLQTSSYCPVCDRQVIVSSE +ICTSLSDTTLQMLVYKLLPNIM +>tr|T1EIN4|T1EIN4_HELRO||HELRO||1014002003 tr|T1EIN4|T1EIN4_HELRO RING-type domain-containing protein OS=Helobdella robusta (Californian leech) OX=6412 GN=20196434 PE=4 SV=1 +KVQMQSINQFFICSICNGYLHMATTITECLHTFCKGCLIKHLEYNLHCPKCLTIIHPTDP +KINIRHDSMIQDLLYKVLP +>tr|T1EJS0|T1EJS0_HELRO||HELRO||1014002386 tr|T1EJS0|T1EJS0_HELRO RING-type domain-containing protein OS=Helobdella robusta (Californian leech) OX=6412 GN=20196820 PE=4 SV=1 +LRDVNANLCCVLCSGYLVDATTIIECLHTFCRSCILRYLESSDTCPVCDASVHPADPTMG +IKADKTLQALVYKIVPGLYQSKSR +>tr|T1FZW4|T1FZW4_HELRO||HELRO||1014019866 tr|T1FZW4|T1FZW4_HELRO zf-C3HC4 domain-containing protein OS=Helobdella robusta (Californian leech) OX=6412 GN=20214362 PE=4 SV=1 +MTRSGRKIIKDMNDLITCSLCSGYLVDATTITHCMHTCCPKCLKRTAASSNSDAKKNNYT +TTTSKKIKLRSDKTMQNLVYKMVPGLYQNELNRRINFAKLHPNWGI +>tr|T1G3T2|T1G3T2_HELRO||HELRO||1014021219 tr|T1G3T2|T1G3T2_HELRO RING-type domain-containing protein OS=Helobdella robusta (Californian leech) OX=6412 GN=20215730 PE=4 SV=1 +MIKLRIRDINPHIVCSLCAGYFIEATTITECLHTFCKSCIVRFLQTSKCCPQCGLKVHET +QPLLNLKPDRVLQDIIFKLVPGLYESRFK +>tr|T1G7Q0|T1G7Q0_HELRO||HELRO||1014022581 tr|T1G7Q0|T1G7Q0_HELRO RING-type domain-containing protein OS=Helobdella robusta (Californian leech) OX=6412 GN=20217097 PE=4 SV=1 +MNLLPDTENKIKVMDLNPHLLCSLCSGYMINASTIIECLHSFCKSCIYSYVESNKYCPIC +DVQIHKTKPHTNIKPDKTLQTLIYRLVPNLLKNEMQRRQTFFDENPYVG +>tr|A7RY94|A7RY94_NEMVE||NEMVE||1029006478 tr|A7RY94|A7RY94_NEMVE RING-type domain-containing protein OS=Nematostella vectensis (Starlet sea anemone) OX=45351 GN=NEMVEDRAFT_v1g97430 PE=4 SV=1 +MLRTLSLKELNPHIICVLCGGYLVDATTIIECLHSFCRGCIVRYLDTSYRCPVCDAEIHK +TRPLLNIRADNVLQDIVYKVVPGMYFGERSH +>tr|A7RY97|A7RY97_NEMVE||NEMVE||1029006481 tr|A7RY97|A7RY97_NEMVE RING-type domain-containing protein OS=Nematostella vectensis (Starlet sea anemone) OX=45351 GN=NEMVEDRAFT_v1g97494 PE=4 SV=1 +MLRTLSLKELNPHIICVLCGGYLVDATTIIECLHSFCRCCIVRYLETSYRCPVCDAEIHK +TRPLLNIRADNVLQDIVYKVVPGMYFGEKSH +>tr|A7S0J2|A7S0J2_NEMVE||NEMVE||1029007272 tr|A7S0J2|A7S0J2_NEMVE RING-type domain-containing protein OS=Nematostella vectensis (Starlet sea anemone) OX=45351 GN=NEMVEDRAFT_v1g100141 PE=4 SV=1 +LRVKVTDLNPHFICKLCNGYLINPVTITECIHTFCKSCLLRHISLVNRCPVCNEVIHETT +PIYNIRVDRTMQDIINKIFPKLEKEENRRERKFYRTKGL +>tr|A7SGP2|A7SGP2_NEMVE||NEMVE||1029012888 tr|A7SGP2|A7SGP2_NEMVE RING-type domain-containing protein OS=Nematostella vectensis (Starlet sea anemone) OX=45351 GN=v1g117625 PE=4 SV=1 +DLNPFITCGLCEGYLIKPTTITECLHTFCKSCIVTYLQDSEDNTCPSCNTVIHETNPFDL +LRSDQTLEDIVFKLVPGLQQGSHAIPSPPQHL +>tr|A7SGY9|A7SGY9_NEMVE||NEMVE||1029012984 tr|A7SGY9|A7SGY9_NEMVE Predicted protein OS=Nematostella vectensis (Starlet sea anemone) OX=45351 GN=NEMVEDRAFT_v1g212137 PE=4 SV=1 +MLRRMALKDLNPHIICVLCGGYLVDATTIVECLHSCHEGKEKYRWVNELIQIDHEGTTKV +SKGQRVYTERLRRIQKYRRGNEFIPKDHEGIQKYRRLNELSPICHEGIQKYRRGNEFELD +RGPIVAWLRILIRLFCPAVCRSCIVSWLQASYHCPVCDTEVHKTRPFLNIRPDCVLQDIV +YKLVPGLYQRELNYREEFKTKLQENDPTRVEPKDEVKGDSNNKKHEDDVIEDPVCLTLEY +YGARRNWRDQPVFPTRYLRCSSTMTIGVLKKFFLMKFSIPPSHEAEIVRSDEILSDHLSM +KEVAGIYGLHSKSFIDLQYVFMAIDNDNDPDSKIPRTSLTNSGNTRLMAQISKNSARDTF +TKSREKKRTARERKATLRDQHSPSHDVKNAVPRNHSNASEGPNSTSCEENIHLKNTLDPH +LLSHKHLHTNESLIDRIRVEPRQGLSKYEANGTIPTMVDTFECPDTPESDKQEKFFPGEF +SPSGNMEPEISTVVM +>tr|B7QK09|B7QK09_IXOSC||IXOSC||1043019004 tr|B7QK09|B7QK09_IXOSC RING-type domain-containing protein OS=Ixodes scapularis (Black-legged tick) (Deer tick) OX=6945 GN=8042408 PE=4 SV=1 +MPRALLRDLNAALSCMLCGGYLVNAATLVDCLHSFCKVCVVRYLDTSKLCPICDVPVHKS +RPLSCLSPTETIEPEDDGKEGVADSADGAVS +>tr|F6ZZ26|F6ZZ26_CIOIN||CIOIN||1022008235 tr|F6ZZ26|F6ZZ26_CIOIN RING-type domain-containing protein OS=Ciona intestinalis (Transparent sea squirt) (Ascidia intestinalis) OX=7719 GN=ENSCING00000002776 PE=4 SV=2 +MDDSEAAKGPELDDISFPNLVDFLQLYSIPANESRFFTRSQVFIAYRAYVSRVNAGAVVT +MDYIKFGKHLRKLAENLAIRTKSLGKIVYYELKVPEMKENERQPNAVEAKPNDDEIKIKL +ADLNIHISCKICCGYLVDATTITECLHSFCKSCITKHLAVYLTCPICDVKLQNANIYSSV +KADIVLQDIVDKLLPGIQTMENRNFLEFHKNPDSDLQTKLIYCPYKMVTVYFDWVGPQLC +STPAEDLESNFIRTSSKATVGHFGQFVLD diff --git a/tests/data/subhog/small/HOG_D0111149.fa b/tests/data/subhog/small/HOG_D0111149.fa new file mode 100644 index 0000000..19d8a1c --- /dev/null +++ b/tests/data/subhog/small/HOG_D0111149.fa @@ -0,0 +1,25 @@ +>EP00365_Plasmodium_falciparum.2979.||5833||1140002979 EP00365_Plasmodium_falciparum.2979. XP_001350777.1 pre-mRNA-splicing factor CWC22, putative [Plasmodium falciparum 3D7] +MSSSGKNEKKKRHKDHKRNVDNNYNERIKREKKEEFGSSSSYSTDYVNKRKRMRTPSSSY +DSSLEIRKREEKKKRRNNSYPSSNSYNSNTENDSNYRKEKIKKKKDEKELKVKVASHIRK +DNNKIPDGSMSSTHSSKDKVKGKKNKKYSYEESNSISSDKYNNKEKKGSSKRSREKKKEW +SSSDNSSVYNMKRNKKDKRKGSYEGKNVYIRRSVSSRSVSSDSNKSESNKIESNESVSSR +SVSSESNKSESNKSESNKSESNESESNKSESNESESNKSESNKSESNKSESNESESNKSE +SNESESNESYSKKSISNKKYKNKRYKNKRDKNKRYKNKRYKSKRYKSKSKSSLSSCDEKK +KKGYEEFEEDDKNTEETLEINEDLIEYAKQKISNVTIDDIGKAGGVYIPPFKLERLKTEV +TNKKSVLYQKQEWMKLKKKINNIVNKVNIDNISEVCYELFECNLIRGKGLFSRALIHAQL +SSPAFTNVFTCLLCIVNSKFPNIGLLTIQRIILHFRRAYKRNDKILCFNTVKFIAHMINQ +RIVHEIVGLQLCSLLLQNITNDSVQVCTYFLAEVGELYTNICRKGLDIIFDRLKDIIQEG +QINIKTQYDIEKLWNYRKNNFKDFPSVHDDLNLIDEEDKIVHEIDILDESFNSQEELNIF +REVPYEQYEEEENEWKHISEELLFGDDSADEKKNKKTKKQKKKEKNESERENESENESES +EKLGNDDLDENNNSSEDSEAEKSDSNDDDEDENNDSDNHEEIHDMTEQYLINLRKNVYLS +IMSSLSYEECVHKLLKLNIKKGYEIEICNMLIDCCCMEKTFQKFYALQAERLCKLKKIYQ +ENFEKCFDNSFNTAHRLETAKLRNCSKFFAHLLYTDAISWSIFKIIKLTEEDTTSSTRIF +IKILLQELTNNLGLQAFYHKINHPAISPFLIGLFPTNNAQNIRFCINFFTAIGLGALTSS +LRKLLLT +>XP_050702163.1||95602||1739016408 XP_050702163.1 microtubule-actin cross-linking factor 1, isoforms 6/7-like [Eriocheir sinensis] +MAPIQQFVSTAASNSRSTSDLTTGSTRDFVNSVHKVKENYSSNSSSISSSSHSDAAHSSM +TGSRPGDATQQETLLPISSRGHFFSDAFFEDARQHFESAVRKVLERRGHSRSSVHDDLTS +YRMLRQADLSESTQAATVTENATCHQVVMDVRDFMAGDVKVKVVDEDEVVVEGSVGHRSG +GSVSQKSFRRSFTFPGLVKAADITSTMSSDGVLTVTVPKKEHVGKITNITVQEYNTPSRP +AAGLPTASRQDADFPTASRPSVCRPTPSRPAACWRPAAGLPTASREVADFPTASRPVVSR +PTPSRPAACWRPAAGLPTASREVADFPTASRPVISRPTPSKQAACWRPAAGKPSC diff --git a/tests/data/subhog/small/HOG_D0455823.fa b/tests/data/subhog/small/HOG_D0455823.fa new file mode 100644 index 0000000..2ab9a1a --- /dev/null +++ b/tests/data/subhog/small/HOG_D0455823.fa @@ -0,0 +1,1226 @@ +>Smp_141860.2||6183||1012005797 Smp_141860.2 pep scaffold:Smansoni_v7:SM_V7_ZW:24414502:24502333:-1 gene:Smp_141860 transcript:Smp_141860.2 gene_biotype:protein_coding transcript_biotype:protein_coding description:Putative heat containing protein [Source:UniProtKB/TrEMBL;Acc:A0A5K4EPS6] +MTSTKPGEWVMQALLRQLTNVAQLKIEKALGDGQETNLVKSMKLNEDTAYEHLISAFGVA +AEFALPSILSTLSLWYRSQHSSGRYYQLHQFQSLSSANEYIGKVTSMAVQRPLANDSNHV +VESQQVSYLAANKSEKTIKCASESSSLSKSHNLPLPELSVLFERRDLAIDIIFCHVMLAV +LKQLPFHPGHNDVIESILEQCFGRFNYREDLQPKNSENINLVADLYAEIVGLLFQSRFAL +VRHKFMSCLNDLRSKENSQNNRASIVSLIMGMKFFRVKMHPIEDFVKCFTFLQELGQYYL +EVKEIEIKHVLSDLFVEILLPVAAVARQEVNIPALKTFVENLYPTSLELANKKKHIPALF +PLVTCLLCVGTKSFFLNNWTNFLSICLSHLKNRTSKVALVSLQSLSCILWVYIVRIKGEK +HTETQTKLHTIINSLFPKNQKIILPKDAPINIFVRIIQFIAHEKLEFAMKEVIIERLGVN +GLQKTLVMPERINVGICAFLLIAHGLQQKEGEPPMPQQCIGAGGVGGGFRQAVIKRSFHG +TNLNEALGSLLGIQSYLVPVRRAFEHILRQLDTQVCRPMMLPKQEVTQKEFDELMTADRK +PKLDLLKTCVACIPRLLPIDMTKQEILEILAKVCLHVDEDVRKMAQQAMANLIVELPAYR +VKTIQVFIQFIQKNVADTSPHQLDSCLKTLFHLLNNWKLALQKDGAVTPNMSEKSALYEA +EGFALVMLCSCRLITRRLSVHILRKCRALSNLIQSATYDQTLKNPNDSRELCCIDILDRS +VPIILKHVLPILPLSERSALSSVSNMDFSVFTERSHPVWFSGSTPPVYSPVVLPANYLNN +TQYSGLMSNNDVQQSEEVRFNGLSNLHDLNKLNNSNNNNNNCNTNNSPTVKNPVTGNTIE +KSKPDESVVQESFTKIVRPQVSGLLIPSKSFDFRNIQTSKSYLSTTPVHRRASQYNQQIQ +HTQQAYIMQPIQERVAVTDVWATCLSIVFNSSNLPTSCPMAIKSAWSILFQRINTIFPLI +DPSAQMAENRASSLLRTGSKKPANEREQFIPLWHNYVVVGCCIAPSSTGLRISKSPDTRY +QPGFHLQKHSPDFPTKGDSNDCDNNRSPTQSDEVVNQTIDLNANSSSNRPVVSNSSCTNW +SNSPDLKYSTSFGKVNARDLIKLLVPLLRCEQPEIRDSAIGGLGRINPAAFRDVLEDLQP +LLKESFDRKQENLRRRRRRDGLRSALVKTLSLMAQTGVFAYPESNIVTPQGSLICQLLDY +MDGMRGYLESVSDQLLSPINYTHQLCTSLNLLVPIPSGSTSQQVTAVGSISSNHQGGGSI +SANSVIASLSTPTTTGPSLTSYSSEFYLLGEIRLHFCIFIKELIRRLPKQSRTALLPPTL +RHQLFILLSHWSAHFDHIMGTYLGSEGPVLTESYSLDSNENIVGQPSSLNGIVGFSPSNE +IPYGIFGIHHQLSNDNFLQSLNSLGVNSAPSSGSIECNANMSVSSGQTSQSPTIQQKTCE +GEQIDRIESVEYCLWIDLIWLSNQAMAALVCCGAIFDRSALLPQDSGKLNQIILGVGSDA +SSFPGPERLNSGSGSNVRTPSSGYVLRWISGLLVARDTALSSSPWLWFCPITGRGLLHST +LTPGGASLCGNSHTRSRTIAAGGGRRLDSLLRQLGEETLVLMLDFNSDNTCLFNWVIDQC +YTASNISLSTACFECICLTMSNMPNFACDFIAMITLCFVFINHPSRFLSDRAFYLLRILY +QRFIIEPGEILFKQAHPTEIDKSFVPNEAANSQSSPNLCIPGGCDCSQLCKYLQINKLFY +HSFNRWSPCEVVRQFSAQHPEFTLTIFSEVSKRLENAREGLRITLLHLLSIWLVNVELVD +LVEGDLFDATNHSMDKDDDDFSDIDKDSFVCPSNNLEKSGNLPESVGIPTFKAYNTTNLL +DTSEQQQRKDCSDYRTRPSKRYKCSKNFLNSESLYDHEDADADSDNIVNDRNFKSLTLLR +MRARQTMVDEHADIYSPRACHLHNHFKKNGCKYNTNTNNNELHWSTVPPTLRSRGWGSKK +ATEFVLTNLFYLSLRLADCPTSSEVIKQLWLTLIRYRSTNLRVILRYLIIITSIAPGTLL +VHVKRLLTYLASEQAERVIGELIVEMQTIDGIGLVVEPISSLPFFRVSTSTQHQHHRQSI +EKLKSPKFQSCVPNNSLSNTVNNSSQRVNDSLLANQEGIGQPDDELVALGLGSKPCSNTT +AQVRTLHSAIGGSYDYHSIDYNLSVKSPSSNVTVRPKSATCQPSTVTISTNRPDQQTTLN +ESRIQFTTISSTSKDNNNNHSSSESPQLEKYHESSATLSNYQLVEGSDGEPEIDLDSFEG +FTKCGSNLDDKYATLRAKDIANLLTLPNSKDFQSSDSDSNCDIPNLYRRGTTFPIVSDAY +ERSVFSSTLSNPLNETNCLPTTGRISRQPKYFREYKEKRSRWSNNSKVDAVESLRLDPFH +HSASLPPSLAALPPLPLPLPASISSILSLSSRGSTGSNTCILSISPVTVDRKSTTSSDKS +DIKPCVRRISNVEVSHSSNKSYFDYNSKPLPMPANGGYHAPLSLWLSEPLVIGGSVVFSG +SWPPAGPRAPLVLILAGSLTQSRDIHVNWSEHLPLMLLGVFLGIDHCRALVQEESKHLLV +SLLDQVCPHHDILRLLRLELEANLHRLAYPSGFPGPRVQDYRLTLDGGPYREKFSMVINP +FDSIERDQLFPSPLVSCTTTKHDGNSNFKNRSPAEDEETLQTTSSDLIPLKDINVTTSSA +ASPSSPSISPPIVENFQTHPTLLTNQGRLSGSMFSLTSTATLIPRHHESNLFESQGCNDS +SISKRNSVCYNLTSNSSEKEFLRNKTLTSAVRPSSVYSKSRSSKNVASNCVPFNNHCSLK +VEKTKRIKKSDLKLLEEAVQQLKSLLLNSSGQAIWTWEDFNIQHNSFSTTFQYYQNEIHQ +IINNEKVENKESVIKPMTNVNPLEQLVKLVARILALSEAGSEQAENCLQCLHGPPHNHNS +QSLTFADDDYKDTIIDHSNYCMVARLSRIALNTGLSCPSRHLASRSLQIHRALGGHLDKK +SFSQLLARLGETVSDGSEEIQGYVAELFLTQEAAIHHLKSKSDSLLESVSYLTSESTSPS +SSSLNGNGRKSVQNIVSISDRRHFHRHSKSSSLIGNRPCHLSSVMPINDCGLSKLAQSTS +PNLEYASPTSSFPSDSNHLSKISGTSNTSTPKPNNNNTNNVCLLPPEERADLIIGIFWTG +VLLLESDFEHEYLVGLKLLNLVIPSVCASNLGQSSDGSKINLSDRAQKMLNQLQWNPCFP +GILSLVIKGCSSPNLVDQSCRLLVLLIPFLTHPLIVPTGRMGLSNQLSFPIVLLTLMPML +VTAWDEDPSTSVPLNPYDTNAEQLSFLQGGFLGRGVCGSLSVIPRALGSWTSCFCTSYTS +YTNPNIASNSKLRTDSIGLFANCPSNSLGTFSAHESTSNLNAIATGSTTRDTLLNSKSPI +LRPKNPICIQAAESLAQAALKTDPIQFTNLALILRLYASGSFSKDVDQWSRCVICYLLEG +CSSNISRLLKHINMLLTSGPPCLQLPLLKVAHLFLQQVDINQRDMEYSLQNFITSIVNQF +IGTCLWTHVLPILQVTVSRSAVLNSVPETPAYSLPGLDPSGSGRVLDYAIASAAVAVPLP +DSEPPRLELGGPVLDFTFNVLQEAPLLAPQYAPITSSHSTSDNISKVDIPTFDHTSSSKG +TKKDFIDVSDIGLTEIFVSASSGWNKPGNSQIRLREKLYCLVSCYGLPPQQCISAPRSPS +VIFSQSTETLDPQLSIHSSSETTSVVDISNSDDIHLDDTSSGEQTAVFRDLDTYLDAQLM +NINFLGVPDCRLASTNASMSEEEPRRPWGVRGQAITCHFDFNGDGNESVANESVGGLSRT +VQLTDKTTSSLAYSNTKSDYFTAAYQHHHSEKEHQNRTHSLPHLTCVTNNLSDMKDTESN +SSSTNRYSTITISNNYTDDNVDDRYSSASYSEQQQPLPQSEYKKPSTSLAWRSFAKEKSN +FRDNDLMNDEFTGKERFNEDMQVVKYPLVTVRNSRSERVTFNLDGDKNEYDEVGRQDDAH +RKNKISMDDGMEKINDRCMPKSCKGILINRSNHDYVKGLQHNELFQSDTVLVDNSRMRSA +STQSLNNDGNYNETNNSNQNLRSRIYFPRCMSSNRNEVRAKYINHDLLTNEPKQAVDNHH +YHDHFSVNTPQKHLVGQIKRSLSTSELLLTRQHFTLNNKSNDYKSLTNSTVFSPLTYRNK +VSYHVNDKYFTSFSSSLSSTRSLSPVNRHNQFEQMAFNLIDTNDKDHFNSNDNNTDLSKT +ISCRPNSLCSSSVLPQSIPPSLSPMLTAPSGVSVHSSHLSLHCIEMIRKSSDLPVIPRKH +KATSDSHLNCFNKQILCNHQKLHQSNSHHRCYHFSYVNESTHSVNSSECTSLNKIVSVQP +IQRLCNWKYPLITEQKWIALEPLSNSTCLHLNEQQKLISLLMELPQLYQELISRYINAIN +DTIDLSVCCWTKSSQMDRLGKLVEKMKTYLRPPWFFCRLCQDDLTETVHSYLISNVSHLL +EKHQEIQKQFEKLYNLLQSENTRDTFIQLFSNMFTNVIEFVKYSYSSAEIMCANLSMLKK +NEVLLPAILDRSCCFQYLLKCILSGLDLTNDINNHDDNSDVPIKPAICNEPAALKNQLCE +FLANMLASFPNDELLTSINQFNPENCKQIIRLYKQLSHKSLDA +>EP00108_Taenia_solium.2649.||6204||1052002649 EP00108_Taenia_solium.2649. TsM_000990500 transcript=TsM_000990500 gene=TsM_000990500 +MEFYSTCNYHFFFSEAGITSGQGTLLPALLDFIEGTRVYLESLNEPSAMVVTMFSSNTAT +ATTFGVGLGRPATVVASSSSVNSVTASSLPPATTTAVATSINSPVGAAPGGGIMVGTVAT +CGVPGAPASTVVGGAGGGVGGGGGSGGGGIGASGGAAGVTGSSVQNPSVAAATTTPSATA +AASTAPAHAPTGVDPMVLTEMRLYFCVFIRDLIRHLPRERRQRLLPPATRRNLVLLIARW +SGFYEHMYNARCPIFSNFRDAKWGQPPWTDHLSGSPTEGKYVNPPPPSLPPPLAPAGMDQ +VISGDLVLSISGVHLNSTPQDPFIAASFLDNSIWLELLWYANQSIAALVCCGAIYDTLAL +FTIPTATHRLAEASDTALSGSGVGHQLHQISTNTSATAGTGAATSTSSSNATSSTTVLAS +GVVVEEECGPLTLSTVATTPLVPTSAQALSSVAITTPMGPGFLSSRGQPAPGYIFHWLKG +LLLCRDGKLSISPWLWGLPVVNFGVCSTALKGPHAKTGMRNIRLEDSLRSIVIAAAAGRR +LDSLFRQLGEETLVLLLDMNPDLPGLLEILVDQCYTGPLNVIQAFFVIITQHFIKNPKTH +CDKFAMLTLAMVFCEHSVPVIRENAIFLLQTLYYRFFLLPVRELHHQMHPECQQIVTSTP +VTGNSGELNDSHTGLCLSALADELLWREIGHWKPCDVLRQFCAQHPTYTLPMISGKHSAK +RSLSIFSRPDSLLVWFVEEICRRLATASSEVRCRLIKLLHYWTINIELVDLFAQGYGSKN +NTACGLGDGIMETYSGCPEDASTVATLEPISPSGKTDVTTTSEPSSASDLEVEDESVNRQ +RSSISSNSSVSSSLASSSISSSDSSSSCASHLSSISTGSSNIDLAECGFGASTTSNLVAL +GKPRRNHKPNHRTHRNHEDTCCRNQRRISEHSFKPDLDGDRQKTSELWASVPLTLRRSGY +GCLKATEMVLNNFFYLTIRFADKPDEASVLGDLWVLLIRYRPTNLRFILRYLIVAASLAP +ATLCSHVNRVVSFLTNEDPSSVVDVLMTELQTIDGAGLMIEPSPFPPFFHIAFLSDLVEH +SLASSNGVTNAANTTAGSVSAVTATEGRRRRTNLSEAITFSQRRNEVHGLLIDRGGVMPV +DTAHQAASVRSVSACSGGGQLNRGDDETAIVPSKSTVEPSPLATTTSAISRLTNRFASSA +TAMGRRALRTALHPGGGRQSKTSANLDQGQPQELDIDSLDGEAEEECGVVRTTADTMPTL +QNQNTATAEALITAKSRTLPYTAASRERYSKQTVVGMDGTPLSRPSRLRKILSRRRAAGG +DKGGSGGRRNPFRSIFRGSGSGGGGSGGCGDTAKTSRIVAKVSDSARLCTTSLPPNLASL +QPLPLPLHSHSISHINDYRRKRKGGRHRRSSTRKLRHHHGGACNEGGGNQRVRMPLCNTS +LLLQQPLPMPKEGNVYHAPLRDWFTEPFVINGSLVFSGMWSPTGARSPLVLVLVGEILKS +HNKHRVAWRKHMPLLLLCLFLGLDHCRPLVQEESKQLLVNMLRVICPRIDLLRLLSLQLE +LDAQWIVRAINSFALRGQQFCLTLDGGPSVPKFYLPASTDTPVTEVSPCSTWTTCCVPTS +SSVCALSATGTTAAPPAFVASATPPSGLSPLADVPPLTVTTTTASGSGGIVSRSSLVAHH +TAAVRPSYVFGSTYSLLSTATLIPAGLSAEQESKRRSVVLSDPPPPPPTSQPPTSSAQTV +GTVADKASATSVDVMAVATAPYDCEAKHLHLAAERIGQLLEEVQDRSIWTWEDITPSRFQ +QATLLTLRSTLPPHPSTLPQPRNSFLLLRSTCFLDRFVRCVAEAFAEAEAGCRCEEAASC +LRCHHGAPHRHLNNGEVDEVDTDNLGGGGGPISEGSALFLSLRPGCTVTRFAQAAFNMGI +TCPNRHYASRSLQIYRALDAQLDEKSLSEVLVRLAESVSDANEEVQSYMAELFLTLEAAV +GHIQCRGIVLSPCTVSIGQFATRSRSSAPDSPLVASKPPQPPQSAPPFLLPPQAPPSTPP +VHERRHSRRGSSSSLSSLLSYPAAVPAPSLASMQQTVGLTVPPIKRPLMPPHAEAVSEEA +DVVPLAVPSMSTVGPMKPTPMPPLPPNANKCSNTGAVAITANDGRHKSIAGDPVIDPSAA +GTCRLSPEEQADLLAGIFWIGVCLLDSDYEYEYLAGIRLLSRLLPCVCSTLNTASTTTTA +TTTSSSNRKWTPQQQQHQNLPSLHDHSLKLLHRLKWTTGTEDGDYPGLLGLLLKGCFSST +LIDTSCRLLVHLIPAVKSPIVDPNVETRQYRRAAVSGNSRSTGSGTPYPGSLPSLVIALL +PMLLTAWDEDPESPASTVPEAEVCDACVEGSGSPAVASSFSPPSSFSPPPPLGSWVHRSV +VLSETTVPSPSSGLLSLITAILISGAVAKKAPQLRPRNPVCILAADQLAELALQMDAYRF +NNLAIVLRLYANGTFSKDVNQWAKCVTRYLMDGCAGLGPRILTFLTTFLTLGPPCVQLPL +LHFGYWFLQAVELSQSEMSSRIRTFITATSERFVNTPLWPEVTLLYQVVVARSATLTVAP +SNPEIYSLPGLDPSGSGRVLDSLAAAAAAAVPLPEAEPQRIALAGRVLDFDSSVLLSAPL +IAGGRGQASPHLGATSAIGQNQHRSPARTSHLVEVCGLSAFSFSSFFRLGAWKTPWNRQN +SSKQKLLPSSINDGHFDDTSSAERAAVFHALDTYLDAQLMNINFLDLPDAAWEDQSRCQW +GVRGHSITSHAEFHEEGDDQQQSESQPQSQKQQQQANHPPNLFSVDDDTSFPNTASTAGE +PFVIPPLVHSQFQHQHPPEGEELEVEDVEEEEEDEDDEEEEELERERGDFLAVGAPTVAG +AVAERQSQLSLQLSASSSAAPIAAIDPAPNAALLAPSTLHRRFNSQLLIAWTSRDDSPVK +WLTDASPTADMNAENALSISQIMQGCQGTESIPRKFTLSTHPQAVCSRRRRQILATFGGS +LDSLPSQTNGQSTTVLKRRSCALPKYFQQSSSTSSFIKVINIASNGVTNIVEATVPSVKP +PRRHRRFRRSLELGTQQRPDLSLRASRSSNALVCPSEGVKALSTASITPQQLLIPTPSET +AWMTCQRQLKSLQQSSMGFAMASAQADRLRLLLTSLRSTFSGMLRRTTLQAVKLANLAFY +QCPPSSDLDPEIRISNLVRIADVMDDVLPLPFFAIHPNSVVLIDEHSVSLCLELGTAYEE +WEEAVRQLAAHERICRDLQGVLQRLLLFFRSSTDVLTSAYRHLVESSVGVADFSASVVEP +LFARLRPYILTPPPPLPPNSQEVGGMEAWKTRCARLLLWPPYSSEDVGTKRVLAIYAAAM +KSTAPISIDDVMTILEACCEHLWTGANCNSGVALMFAQSRAIESHRFEAFTSATSPVSPS +TKASALFFATDDLLVSDGRATLPPLELETRNTE +>EP00108_Taenia_solium.5130.||6204||1052005130 EP00108_Taenia_solium.5130. TsM_001139700 transcript=TsM_001139700 gene=TsM_001139700 +AQAAENRASSLLRSTSKKAPPSERDQLLPLWHNYVTLACCIAPSSTGVCVVDRKRPTYDT +ESASIAIRRRNMLKHISNPSTGYHECELESYRVPNQNEKSLDKDPDTVGFGDVNSHLIEN +TRSYIRRRCIQVKRKSGLCTLKSIILDRRARIERLRVNHSRNAMCSSADIALLPSYESNT +AITGSGEPELSSGMSPRQHQHLANSKLFISSKEKARDLVKIIIPLLRCEHPELRESVICG +LSRIQPAAFRDVLEDLHPILRESIDSKQKNVQRRRRRDTLRSSLIRLLALMAQNAVFQHE +>EP00108_Taenia_solium.5971.||6204||1052005971 EP00108_Taenia_solium.5971. TsM_000926400 transcript=TsM_000926400 gene=TsM_000926400 +MTGAASSRGNDLVKCMRLQEDMAFQQLLAALHTCAEHALPCLLQTINKWYDTQHSSGALY +PFRRTTSKTSGTRSHTLSAATGQTPAMAGGHDLLIRSMHVEGSSAVTAFGSDGASGTLSN +SSGGVAVAGEMGNSVLPLSATFAIPQESATSTSWLAMSTSVRENMAERRDLCIDILYCQA +LTSVLKQLPYHPGHDEVINKILDRSFKHFEYKEKSFLTVGPFDSLQAKPNAENINTVADM +YAKVVGELSQTRFNLVRQHFSTRLEHLRVKESSPHTMHSIISLLMGMKFFRVKMHPIEEF +VNYFTFLHELGQYFLEVKEKEIRHAMTCLFVEILLPVAAVVRHEVNIPALKNFVDLLYNP +AFELANKKKHALALFPMVTCLLCVSTKVFFLNNWPPFMSLCLSQLKNRDLGQVSVESLFR +LLWVYVVRIKCEKHTDTQNKLLSIVNGLFPKGSKSVLPKNVSSTVFVKIIHFIAQEKLDF +AMTEIIFDLLGVNRLQKLVFTPERMNIGLRAFLLIAHGLQQKDGEPPMPQNQPLAGCGGV +GGNAYPSAYPRGPGNVRRSFHGTTLDDALCERLGIRPYLVPVRKAFEAILRLLEPQVCRS +MMPPKQGAPIKDGDDSAPGDRKPKIDLLKTCVNCIPRLLPYEMSRTELIEMLARVSLNVD +EEIRTMAQQAMVNLIVESPAYRQRIIQAFIQFIQKYVPDTAPHQLDSCLKTLHTLLVNWK +IALQRVCLSDSSSTYMSTIRIIRSIKKTGKRSSLPCYLQLNLRLLKAYNVVTFYIFTIVI +NLILQDAAVTTSLSEKSALVEAEGFALVMLCQCRPLARRLAVHILRESRAVLRLINQAAA +AAAQQKQEQGHEDTIQNISSSTSAAAASNTSVIDILDSLAPTILERVLPLLPPNERHELT +NLSTVDFKSLAERATPAWLCGPRQPSMWNHKPVLGSTNLTISTALPCVQRFSSSGLGSTK +ASTGPKASLSTTATITSASKSSLETSPSRGGRKSQTVPPPPQTVAGSTALRPSAFSQCLL +SPYLLQPQLERTQLTDVWATVLAVSLSTSSALSLHPAMLYTWNTAFQRLTQVFSLIDPKC +VSDFV +>VDN18778.1||60516||1202013238 VDN18778.1 unnamed protein product, partial [Dibothriocephalus latus] +MPSSSETASINDASNIDDGRLDDTSSVERAAVFHDLDTYLDAQLMNINFLDLPDGTWPNP +ISANGAAGDGIVDEDLSATTNSADLAPARRDSISAHSNSSVSVGRPRGISLLAPVLNRQF +SSELMVAWVS +>VDN29794.1||60516||1202015398 VDN29794.1 unnamed protein product, partial [Dibothriocephalus latus] +MFALCVCFLNRSNSEAGTCRLSQDEQAELVSRIFWIGVCLLDSDYEYEYLAGLRLLNRLL +P +>VDN43651.1||60516||1202019110 VDN43651.1 unnamed protein product, partial [Dibothriocephalus latus] +MLVLAMVFTESAVSSIREQATYLLQTLYHLFFLQDTVTSNNPAEAFKPSVSVNNCCLPSP +SDSESQSCLLEPCLSALADELLWRAIGHWKPSDVI +>VDN97521.1||102285||1253001648 VDN97521.1 unnamed protein product [Rodentolepis nana] +MEPKFYLPAPTDTALSEVSSCPTWAAASYSASPNNAQSLFSSTGFLNLVPTSTGGATGNG +FSPVTEGPSSIVAPHPLRTSLQQPIPARPNYIFGSTYSLMSTATLIPSAAISSGEAEPTN +RRSLILSNPISPSQLPPPPPSTTLHPVSQAQASRTPKDDCESRHLHAAAELINQMLVEVN +DRSIWTWEDITSSRFQQATLLSLRSRKSPILLLRSARFLDKFVKCVASAFAEAEVGGKCA +EASECLQCHHGPPHRHCELESEEENCLQQPTCTVTRFAQAAFNMGITCPNRHYASRSLQI +YRALGAQVDEKALSEVLVRLVESVSDLNDEVQGYTIELLLTLEAAVEHIRLRGTILSGGG +QRNSTLIRSSAPESPMAISKPPQTPPVHERRHSRRGSSSSLSSLLIIPNGGGNSSGGAAV +LGNVGVGCVGTQASLPPIKRPLMPPHAEAIGEENESSASNTAVGTVMGPMKPTPSKDTMP +PLPPSATSKPSKLTSLPSLPVETPPETKPVSTNGCEIKSRAESNNAVEDTSMIGTCRLSA +EEQADLVSGIFWIGVCLLDSDYEYEYLAGIRILSRLLPSVCSVPQSSIFKGLPDFHEHIL +KLHHRLKWATGSSEEADFPGLLGLLLKGCFSSTLVDASCHLLATLIPLVKSPVVDPFAEA +RQNRRGPGLSGTAARSFGTPTSSSNSGSNYPGPLPTLIIALLPLLLTAWDEDPESTPSSI +APETTDGCEMCAEGTPGNPLVTPSLSLNSPPPPLGSWVHRSVVQSENAVPSPSSGHLSLV +TLTIISGAAAKKAPQVKPRNPLCVQAAENLAELAVQFDAYRFNNLAVVLRLYACGSFSKD +VNQWAKCVTRYLMDGCSNLGSKILPYLTAFLTLGPPCAQLPLLHFAYWFFQSVDLSQSDI +STKIRSFITSTSERFVNTPLWPEVTLLYQVIVARSATLTTAPSNPAGVFSLPGLDPSGSG +RVLDSLAAAAAAAVPLPEAEPQRIALAGRVLDFDTSILASTPLIAGGKGQASPRLDCTNS +AAAGVGGIQYRSSTRMPHLAEGCNVPVGAFAYTPFFFRLGAWKTPWNRQSRLRSLFTNLL +NCYGSHLEHITAPRSPSVIFSQSTETLDRQLSLHSSSETTSINDASNPDDANFDDTSSDE +RAAVFHDLDTYLDAQLMNINFLDLPDQNWEDQRRCPRWGVRGHSITSHSEFHEDGDDTQH +HQQQPQEQLAKHFQNPSGDIATSSTVDNFANIPFQRGEDENLIVDEDLVANNFEDVLDAN +TATNGADFLSYSESHRIPPQRQSQLSIQLSTASSVNSASFAAPPPPQSRSWQSKDDSSLK +WLPDITSIVPPVESPPQSRKRTLSMQPPIVCSRRRRKNLASLGGSLDFLPSQLHPLSVLK +RKISAPQQQNSVASGSTRRINTQNSSSTVSSVSSASFKVKEAPQLQPPAKPVRRKHRPSR +QSLELTTLDEPPAVPLRLSASSTAISKTPTPAETAWIACQRHLKTLQHASSSSGIVSRGE +MTSGQRDRLRLLLTGLRSVFAGMLQRTTKGAVEMATLAFSRCPPSSDLDPEIRISYLVKI +AEIVRDFLPSLFFALHPTSVSVLNDQIVSQCLHLGSMYEEWEESVNRLSLTCAPVDSPDW +NQHERICRDLQTVLQRLVNFFSYSADILFKVGNDLLLSGITDFSHNLIEPLFNQLRQYLL +SAPPKSHIEILDGIDTWKVHCGRRLISKTPDDSDVTAALGIYSEAMKSNTLISMDDIMVI +LEACCDQLWLERKSESGFALLFAHGRIPEMKAFELLTSNQSMSSLVFTTDNLLESNGQSV +LSPSELTAKLQKLLEC +>VDN97553.1||102285||1253001680 VDN97553.1 unnamed protein product [Rodentolepis nana] +MICSNPGELVVHSLLKQFASMCQSTVENALDEKADNDLLKCLRMSEDTAFQQLLTALYSC +AEHALPSLLQTITKWYDTQHSSGSLYPFRRTPSKAGLRSQTLSAATGQAVSNTPPGGREL +LIRSMVVESSLTTTGVTQGVAVSSQEVNNALPSSANTTQDPPIPAMSSLARENMAERRDL +CIDILYCQTLASVLKQLPYHPGHDDIINKILNQAFRHFEYKENELMVLFFQNGSLQAKLN +AGNINTVADAYAKVVGELSQTRFNLVRQHFSTRLEHLRAKESSPHTMHSIISLLMGMKFF +RVKMHPIEEFVNYFTFLHEMGQYFLEVKEKEIRHAMTCLFVEILLPVAAVVRHEVNIPAL +KNFVDLLYPPSFELANKKKHVLALFPMVTCLLCVGTKTFFLNNWSPFMHLCLSQLKSRDF +GQVSVESLFRLLWVYVVRIKCEKHADTLNKLLSIVNGLFPKGSKSVLPKNASSTVHVKII +HFIAQEKLDFAMTEIIFDLLGVNRLQKLVFNPEVSCRCNYGDKHLKSILRNVPHFGPCLA +VVQSVFALNHTCDYVVINPAMILERVCCISLTGNEKSVTGIKK +>VDO01780.1||102285||1253005855 VDO01780.1 unnamed protein product [Rodentolepis nana] +MNIGLRAFLLIAHGLQQKDGEPPMPQNQSVGVCGVYPTVHLQRGFLPACSTGVVRRSFHG +TTLDDTLCERLGIRPYLVPVRKAFEAILRLLEPQIIRSMMPPKQGAAIKDGDDSAPLVHF +LFGFNLIVTFCVKITLHCHWCNLSLYGVPTFTQILL +>VDO03726.1||102285||1253007781 VDO03726.1 unnamed protein product [Rodentolepis nana] +MSRTELIELLARVSLNVDEEIRMMAQQTMVNLIIESPAYRQRTIQAFIQFTQKYVPDTFP +YQLDSCLKTLHTLLVNWKIALQRDAAVTTSLSEKSALVEAEGFALVMLCQCRPLARRLAV +HILRESRAILRLIDQAAAQQQQGVGTETSHGESPQNIATSISAAASASNVAVIDILDNLA +PAILERVLPILPQNERHELSSLQTVDFKSLAERSNPVWLCGIRQPSTWNHKPLLGSNNFS +TPVAVTTADHSSSGNKVASSTMKHGGFDAASPSRTTRKSAQQLSTLRPSTFSQCLLTPYL +LQPQLERTQLTDVWATALSVALSTSSALSQHPALFYAWNTVFHRMSQVFTLIDPSAQAAE +NRASSLLRSTSKKAPPTERDVLVPLWHNYVTLACCIAPSSTGVCIVDRKRPTYDTEGAAS +AIRRRNLHHISNPSTGSADIALLPSHEKAATQSDPKTPVQVQNPRQHQHLVNSKLFISAK +EKARDLVKLIIPLLRCCDHPELRESVICGLSRIQPAAFRDVLEDLHPILRESIDLKQKNV +QRRRRKDTLRSSLIRLLALMAQNATELTILLVFDFSEAGITTTQGTLLPTLIEFIEGTRV +YFESLNEPSAMVVTMFGSSAGVGSITTVNHSSSNANDIPGGSSINPPTVGQNMNSPTGPS +QSNVGTMNSATVSSGASMAGVSGSGAVSSTSGAQNPTANSASGPTSATAATSTAPAHAPS +GVDPVLLTEMRLYFCVFVRDLIRHLPKERRQKLIPPTVRRNLVLLISRWSGFYEHIFNAR +DVKWAQPPWTDDSSSSLAQDAKQSSSIRSASVGASVGSLPSPPGMDQVISGDLVLSISGV +HLESTPQAPFISASFLDASIWLELLWYANQSIAALICCGSIYEHVAIFSNPRIVETTEVA +SNATASSSHQLAGSSANLGGNQMLSNLSANLPNSATQPNSVPTTLLSNDDDVTAPTTQVV +STVSIATTNPSTVNASRGHPIPGYIFHWLKGLLLCRDAKLSISPWLWGLPVVNFGICSTA +LKGPHGKTGVRSIRLEDSLRSIVIAAAAGRRLDSLFRQLGEETFYILLDMNPDLPGLLEL +LIDQCYSGSLNVIQAFFVIIAQRFIKNPRMNCDRFTMLTLAMVFCEHPVPVIREHATFLL +QTLYYRFFLLPSRELHQRMHSDCQKTVESVNEESRDSGDQTEFCLSALADELLWREIGHW +KPCDVLRQFCAQHPTCTLPMISEICRRLATASKEVRCRLISLLHYWAINIELVDLFSRNY +KSDGFMDFFHQHRNNPQLASASLLEKVELSNPVSAINAESESELEIDDRMEKTQNGVGGD +EEEIIKCPSGPSGSESSSSSTSLSSSSESSHNSSISSDIDSSDCDGPVLINNMASSASAS +RKPRAGRRQHQDNRRRRLQQGRTSDQFLKPDQDGEKQKEAANELWASVPLTLRRSGWGCL +EATEMVLNNFFYLTIRFANEPNESVVLGDLWVLMIRYRPSNLRYILRYLIVAASLAPATL +CSHVNRVVSFLSNEDPSEVVEILMTELQTIDGAGLVIEPSPLPPFFHISLISQTNLTEPS +SDQIGDPDENASRRILENESCLGQQTGSSIRPLSTISATGGDLQVIPIKPGVDSSPAQPI +STSANTSAISRLTNRFASSASAMGRRALRTALHPGSGGGRQSKNSMNLDQEQPPELDIDS +LDGEGEEESGNLRQAADTMPTPQSHSTPSADALVTARSQTLPYTAASRERYSKQTIVGLD +NQVVLSNRPSRFRKILSRRRTGGGGRRNPFRSIFGGGGGGGGSGSIVGGALNGSIKTSSE +LVQNISEETKLYTTSLPPNLASLQPLPLPLHSHSISHLNDFRKKRGGRRRRSSSASGRNH +QHESRRHRRRRRRRNNTNEGGVMEDVADQHVKVAFYETSLMLQQPLPMPKDGSVYYAPMR +NWLTEPFVSNGSLVYSGMWSPTGARSPLVLLLVGEILKSHNKNRVTWRKHMPLLLLCLFL +GLDHCRPLVQEESKQLLVNMLRVICPRIDLLQILSLQLEIDSQWIARAVAGFSTHVPQLF +LILDDGPSVVRNRRDF +>VDP74363.1||27848||1259005036 VDP74363.1 unnamed protein product [Echinostoma caproni] +MSTLMMNSGNVRMTMGSNPSHGPGACQLGDTYGPAGYTLDPGADALLQTGTSPTSSASGP +ATNVMTESTTSVTGVSSSNLNAATATAVGLMTGSGSVHTVGSSLDAHWESRLWADLMWLA +NQAMGALACCGPIYDPHALFADHMMMGADPSTSSLSGSEFQSTIGSQPSPGYILRWVSGL +LIARDVVLSSSPWLWHCPIVDTGLCXXRRLDSLLRQLGEETLTLLLDLNQASYTLLNWTI +DQCYTSNNVALANACFFAISRVICNIPDFPCDFIPLLTLAMVHLDHPQKSLSDRAVHLLR +VLYYRFVIKPGMLIHEHVHLNEATAHPCLWERDSSVSPQSGHETISSLCAETKVNLQLWQ +SILRWSPAEVVRQFAAQHPDFTLPIFSEITRQMGTARSGLRVPLLRLLLPWMINVELIDL +IGDSEADNHGDGPIKNRGLSGHMAGDCSDDEPNELRPRKCRRQRQAAPRSGRLGGHASVH +DRVDGEDEADDDNDNDIVNYENDREEDEDVDDRLVAGANVGVIDMGSETEDSEEDEMAND +DDSAFVPSHFTQKTVDYHVLDQHYTERIQTSQPHTCSRGDEHAPVYSDVLDSDADNELEV +STTLLGSRFRSIMTERSKAETVPLVGPHGEADLKHGVRPRWLTDSARRPHGSSFRNTYHA +DFWSTVPPTLRTDGWGSKQATELVLNNLFYLTLRLAECPASSDCLTQLWTTLVRYRPTNL +RVILRYLIVITSIAPATLLLHAKRLVTYLACEHPESVLEELVFEMQTIDGIGLTVERTAK +LPFFRITTNASRARDMMESTTETVAATVNRSASPGPTTDHLTNQLPAGSDQSTKSIQAVL +KAVQRESTHSVDPELVAIDLAVSENIGALKPERKFGRNRGSALPFFHNKRHTTEETGDGS +GRLIKRRPKSATSHPSPRSSSATAQHNKLPETALLSTETNAVSIDQRAASTDSNADRTRA +GSVPNQLTSSVPPSRLPTVLPPLTPDTDGDVELDVDAPYVISNEGLGGARGLHEFSPEDK +YATLRAKDFARLLFTPVESKDPTFSAGGASEPELLPDERGPPLTIRRGTLPSTEDSRERY +YQSGAAQCSSGVIGVSDPLGRSSFTRSHAQRRCKVKTRSQPRGQPKTPLHTVSLPPNIAS +LTPIPLPLPSSIPSLPSVWLTSMPDRLSTSSGSSPRSTGKRASGKSQAGPSASITMDAIP +LGKARSQPLAMPTNGGYQAPLGTWLAEPLVIGGSVVFTGSWPLSGARSPLVLLLAGGLTQ +CTSVHLDWNAHLPLLLLCVLLGMDHCRALVQEECKQLLVSLLNLACPDQDALRLLRLELE +ATLLATAYPSSSSSSPRKPNYRLTVDGGPYRERFDLFAYIPPITVQCDVPSPQSQPTQAI +HEKSIPDIAFSQYVPPRKPERRFVGSPGTVRDVTPQVHPFSGENSPPPGVVNVSQAVTVQ +SPLNGAQWTGSTFSLISTATLIPGREECTIPDVRHTLCDVDEQPNDKPRAVTGPERRFSG +QQIPPDSVSVARPKAQILRTKQTRATKPVRSVNTVAADPLARSARGRTLPIDPKPLLSAI +AELRELLLSSSGQALWTWEDFNLQRFQHTTTQHLTHPVTGTTTTGSNAYPTRTDHGGSET +DQSGSSTVSRVSVECLVRIVARILALSNASSAEEADSCLLCHHGSPHSHSARPTRLGRFS +TSPNNHCMVARLSQAALSMGLSCPNRHYASRSLQIFRVLGAHLDPKTLTKLVARLGETIA +DANEELQGYVAELFLTQEAAIEHLRTKSNCITEIVSPIPVSNSQPRTAPTSPHCVGRIGM +TNESNHTALVTVSDRRRPQQRHSTSTGLTAGLTNSWTRPNGDLSPRQPSQIMDDAGSVNE +SCDNVSPLVVPSGRHNQQLSQLSYPITLLTLMPMLLTAWDEDPATLSPNFPEPTCGDSQQ +QPSVLQGGFLGRDVCGFSNTNTVPRALGSWAMVAIPPRSASVSTGTSSTCAPQAQALRLG +RADSIGTGMIGAFGPTGSGLNLTNLGGTTNFPRSMLPTPLRPRNPICIQAADALAQAALQ +LDSNRLYNLALILRLYANGAFSKDVDQWAKCVVCYLLEGYAQYTSQLLHHLTTLLTTGPT +CLQMPLLKVAYLLLDQVDLPNTDLGYTLQNFITTITGQFLGTVCWPEVTRILQVIISRSA +VLATVSPPSAYTLAGLDPSGSGRVLDLAAAAAAVAVPLPESEPPRLELAGPVVDCSFNML +HEAPLLAPQLALPIGSMSTGSSLFAAGNGPNDYEQQAAGPESLALAPSLRRSDPTRSMDS +ALAELFVSAASSWNKSGICQARVRERLYRLIGCYGLPAEHRISVPRSPSVSDYYPRLLRT +SSVTGAKRPRALKIHHALR +>VDP82603.1||27848||1259008025 VDP82603.1 unnamed protein product [Echinostoma caproni] +MYFRHFADDIRLDETSSMEQAAVFRDLDTYLDAQLMNINFLGVPDCRLEDEPRRPWGVRG +QSITCHTDFTDDNIIEQVTDLLPSMRIPLEQSTLKASSPPRNTRKRKVHAPNLRTVEPGC +SVESSRLDEIENKIDWTGPVPTYAEPDQRLDDLVQNCSFLEPHTSLQFTPMRQRYTEAEG +VDVDAVTEEMGVDLHTSPVDYVKPLESATVVDEPASDNPPSAMTVSLYDPVSPSRKPRRG +RTSSGTSLLVAHARSSPPVQLPSSMNIQEHPCKTLTKKTTFESPTYSQCSIASDPMELVS +HGFVDPIQSPSSCDGDHSKRIRGSPMSAHHSGSLPLDTERIRPLSPSSSDSATKHHLVIK +RPNTLIPTNTGVVTVSQGLQSGQQRPLPVMRVKIPTHYARFGKFQTRFTSSSSASSGFEA +VTQIAAHRSLSTSNLSGVSPGSPKTTTVAPSGTDTGPVPIQLGRFQSPVLKFHKNFTSKR +QSLSAEDLTRLIRQPKVSFLVPTCALEVPGQEETETVSVIVPKSPMLSSSQSFPGKGSAS +SLHSPPTDSVAEAKITRSPQALNRLGLSRHSNSLPEPVSSRRMDQIGTTTQRSPANITPV +VYHKLMTRTSLFSSVTYPWTEMVPIERTWLNSLKKLGLDESSNDTMDQLTSALSDLPSVF +SALALRCQNGVRAALNLAGFSWDEASETTRLRTFCCFLAVSVSELLTTTVRPPYLLYTLK +KPSNLTEREQSAIQSGTALLLESYEETGTAIQHLAKLAFDRDGTSIQRGCVTLLFKLASF +LQATHTVAEQLYRACSPQRTARELSERLQRALDLLASSMNHYYSGSNSNYSHQGSTCSTA +PTDPTEFTSMLVDQMDTLLRELSELGELGGTDPVPESLAVRLFKLVDLYHSRHISDSDRR +LLTIDCVLGVFSLYVTQYFTRSENADSDATVVYLVVPSIGLGRTGSPSPLDQCSYLKQQL +DTLC +>VDP88536.1||27848||1259011459 VDP88536.1 unnamed protein product, partial [Echinostoma caproni] +MDLLKTCVACIPRLLPNDMSHPELLELLAKVCLHVDEDLRKMAQQAMANLIVELPAFRVK +TIHVFIQFIQKNVADTSPQKLDSCLKTLFHLLNNWKLALQKDGAVSPSINDKSALYEAEG +FALVMLCHCRSITRRLAVHILRKCRALIHLIDAATSAGDVPINSRNSEELCCIDVLDRLV +PQLLERILPLIPVHERLSSAVHLDFSLLAERCSPVWLSGSAPVVTYPAVVVPTNFVSNQY +SSLMPMNDLERNSSKDVSEQFRRRTQFSMYPVDARAGPINRDATEDVHKIMASSLYDRTT +SPMHMFQRDSRRSDPPTTHAATFPHSVGPGLFRRASQNQHHPHHPVQHAQQAYIVQPVPE +RVILNDVWATCLSIAFSPDHLVTACPMAIKYAWSVLYQRLSQLFPIIDPSAQIVENRASS +ILRSSSKKPTMEREQFFPLWHNYAVLGCCIAPNSAGSRMNAPRTTYYQANASVAVAPGST +KLGTRYTPSSNSQADSSEPGGALRSSTGHSASPLSSATTVNPAIITESRVTTTSGSAASP +PPP +>VDP89014.1||27848||1259011827 VDP89014.1 unnamed protein product [Echinostoma caproni] +MMTIKPGELVVSTLLRQFVSLTKSKIEKALEEGHENNLMKSMRLSEDAAFEQLLDSFYVS +AEFALPSLLRALIQWYQSQHSSGTNYAAHRKRHLTAKEENPMMTSCLIMGSAKDNPRHVN +TSAAPYVSGKSEKIIPNISDIQCTTKSTCILSSEMRVLAERRDLAIDIVFCQVVLSVLRQ +LSYHPGNNQLIETILDQSFRRFKYREDLQPQNSENVNLVADLYAEIVGVLSQSRFALVRS +RFTRHLNELRAKENSPNVKPSIVSLIMGMKFFRVKMHPIEDFVNCFTFLQELGQYFLEVK +EPEIKHVLSDLFVEILLPVAAVARQEVNIPALKNFVENLYPTSLELANKKKHIPALFPLV +TCLLCVGTKSFFLNNWANFMTICLSHLKNRTPKVALVSLQSLSCLLWVYIVRIRGEKHSE +TQSKLHHIVNSLFPKNQKFVVPKDAPINIFVRIIQFIAHVSSILS +>VDP93274.1||27848||1259015996 VDP93274.1 unnamed protein product [Echinostoma caproni] +MFMPERMNIGLCAFLLIAYGLQQKAGAPPMPQQCIGGGTSGVAGAAGGLRQTVIKRSFHG +TNLNDALGHNLGIQNYLVPVRRAFESILRQLDTQVCRVMMLPKQEVSQKEVEELMT +>CUT98841.1||6211||1308009609 CUT98841.1 protein furry [Echinococcus multilocularis] +MVGTNPGELVLHSLLKQFASICQSKVESAIGEKVSNDLIKCMRLQEDMAFQQLLGALYTC +AEHALPCLLQTINKWYDTQHSSGGLYPFRRAASKTSGTRSHTLSAATGQAPALACGHDLL +IRSMHVEGSSAVVTSGAGDVSDNIAYSSGGAAIAGEAGNAVLPLSGASTTPVESTTSTSW +LAMSTSVRENMAERRDLCIDILYCQALTSVLKQLPYHPGHDEIINKILDRAFKHFEYKEN +LQTKPNAENINTVADMYAKVVGELSQTRFNLVRQHFSTRLEHLRAKESSSHTMHSIISLL +MGMKFFRVKMHPIEEFVSYFAFLHELGQYFLEVKEKEIRHAMTCLFVEILLPVAAVVRHE +VNIPALKNFVDLLYNPAFELANKKKHALALFPMVTCLLCVSTKVFFLNNWPPFMSLCLSQ +LKNRDLGQVSVESLFRLLWVYVVRIKCEKHADTQNKLLSIVNGLFPKGSKSVLPKNVSST +VFVKIIHFIAQEKLDFAMTEIIFDLLGVNRLQKLVLTPERMNIGLRAFLLIAHGLQQKDG +EPPMPQNQPLAGCGGGGPYSSVHPRGSGNVRRSFHGTTLDDALCERLGIRPYLVPVRKAF +EAILRLLEPQVCRSIMPPKQGAPIKDDDAAPNDRKPKIDLLKTCVNCIPRLLPYEMSRTE +LIELLARVSLNVDEEIRMMAQQTMVNLIIESPAYRQRTIQAFIQFIQKYVPDTAPHQLDS +CLKTLHTLLVNWKIALQRDATVTTSLSEKSALVEAEGFALVMLCQCRPLARRLAVHILRE +SRAVLRLINQVAAAAAQQHQEQGHEDSIQNISSSVSVAAASNTSVIDILDSLAPTILERI +LPLLPPNERHELTILSTVDFKSLAERATPVWLCGPRQPSTWNHKPVLCTTSVTTSTTPSY +VQRFSSGGLRSAKTSTDQSPGTKASRSATAATTSAGKSSLETSPSRGGRRSQIVPPPPLT +VTGSAALRPSAFCQCLLSPYLLQPQMEHIQLTDVWATALSVSLSTSSALSLHPAMLYTWN +TVFQRLAQVFSLIDPNAQAAENRASSLLRSTSKKAPPSERDQLLPLWHNYVTLACCIAPS +STGVCVVDRNPPTYDSESAFTVIRRRNILRHISTPSTGSANIALLPSCESTAPITGSGEL +ELNSGMNPRQQQHLVNSKLFISAKEKARDLVKIIIPLLRCEHPELRESVICGLSRIQPAA +FRDVLEDLHPILRESIDLKQKNVQRRRRRDVLRSSLIRLLALMAQNAVFQYDEAGITSSQ +GTLLPTILDFIEGTRVYLESLNEPSAMVVTMFSSNTASATTTVGFGLGGSTTVVSPSSSV +TAVTASSLSSATTTAVATSINSPVAAAPGGGMVVGTVATCGVPGAPTSNVVGGVGGGVSG +GGGGGGGSGGGAAGVSGGSAQNPSVAAATTTPSATAAASAVPAHAPTGVDPIVLTEMRLY +FCVFIRDLIRHLPRERRQRLLPPAIRRNLVLLIARWSGFYEHMHNARDIKWGQPPWVDHL +SGSLTESKHPNPPPPAGMDQVISGDLVLSIPGVHLDSTPQDPFIAASFLYNSIWLELLWY +ANQSIAALVCCGAIYDTFALFTVPTVTNRLAEAFDPSLSGSGVGHQLHQTSTTAGTGAAT +STSSSNAASSVTVVEDECSPLTLSTVATTPLVSTSTQALSSTVITTPPGSGFLSSGGQPA +PGYIFHWLKGLLLCRDGKLSISPWLWGLPVVNFGVCSTALKGPHAKTGVWNVRLEDNLRS +IVIAAAAGRRLDSLFRQLGEETLVLLLDMNSDLPGLLEALINQCYTGSLNVIQAFFVIIT +QHFIKNPKTHCNKFVMLTLAMVFSEHSVPVIREHAVFLLQTLYYHFFLLPARELHQRMHP +ECKQMITSTPVAGDSDELNDSQTELCLSALADELLWREISHWKPCDVLRQFCAQHPTCTL +PMISEICRRLATASSEVRCRLIKLLHYWTINIELVDLFARGYSGKNNTSRGLGDGFMETY +SGCLEDASTVATLEPIFLSGKIDVVTTSGPSSGSEVDEEDANRQHSSSASSDSSASSSSA +SSSVSSSDSSSSSHSSSISTGSSNINSGECGSNAAATSNVAVLRKPRREHKSIHQPYHNH +EDTRRNNQRRISDQSSKPEIEGERQKASELWASVPLTLRRSGWGCLKATKMVLNNFFYLT +IRFANEPSEASVLEDLWVFLIRYRPANLRFILRYLIVAASLAPATLCSHVNRVVSFLTNE +DPSSVVDVLMTELQTIDGAGLMIEPSPFPPFFHIALLSDLTEHSSAASTSATNAATTTAA +SILTVAGTECRQRLTNPSEAITFSQRNSEVHGLLADGGSVTTVDADHQAASVRPVSACSG +GWQLKGGGDESTIVSSKSTVEPSSLANTTSAISRLTNRFASSATAMGRRALRTALHPGGL +RQSKTSINHDQEQHQEIDTDSLDGEVEEECGMVRTTADTMPTPQDQITTTAEALITARSQ +TLPYTAASRERYSKQAIIGLDGTHLSRPSRLRKILSRRRAGGGDKGGGRRNPFRSIFRGS +SSGGGGGGSGGCDDAIKTEIVTKVSNSARLYTTSLPPNLASLQPLPLPLHSHSISHINDY +RRKHKGGRRRRSSPRKLRRHHGSSRGGGDVDVNQRAEVPFSNTGLLLQQPLPMPKEGSVY +HAPLRDWFTEPFVTNGSLVFSGMWSPTGARSPLVLVLVGEILKSHNKHRVAWRKHMPLLL +LCLFLGLDHCRPLVQEESKQLLVNMLRVICPRIDLLRLLSLQLEIDSQWIARAMNSFSLR +GPQFCLTLDDGPSVPKFYLPAPTDTPLTEISTCPTWATYCVPASSSIGALTVVGTSVAPP +AFASSATPPSGLSPLTDAPPLTVTTATIGGGGIMSRSSLVAQQTVGARPSYLFGSTYSLM +STATLIPAGLSTEQESKRRSIVLSDLPPPPTSSQPPTSSAQTVGAVADKALAVSANEMVV +VAAPYDCESKHLQQAAKRIGQLLEEVQDRSIWTWEDITPSRFQQVTLVTLRSILPPYPPT +SPQQPCKSILLLRSACFLDRFVRCVAEAFAEAEAGCRCEEAASCLRCHHGAPHRHSYDGE +ADEVDTDNLGVSGDPSAEGSALFLFLRSGCTVTRFSQAAFNMGITCPNRHYASRSLQIYR +ALDAQLDKKSLSEVLVRLVESVSDANEEVQGYMVELFLTLEAAVGHIQYRGTVLSSSTAT +NIGQFTTRSRSSAPDSPLITSKPPQPPQSASPLLLAPQAPSSTPPVHERRHSRRGSSSSL +SSLLGYPSGIAGTAAVSAPSLVPMQPTVGLTVPPIKRPLMPPHAEAVSEETDVTPLAALS +MSTVGPVKPTPNAIRFSNSTGAATVVTNNSRSIYEDPVTDTSTVGTCRLAPEEQADLLAG +IFWIGVCLLDSDYEYEYLAGIRLLSRLLPCVCSLSNTASTATITTTNSSNNRKWTPQQQQ +QNLPSLHDHVLKLFHRLKWTTNTEDGDYPGLLGLLLKGCFSSALIDTSCRLLVHLILAVK +SPIVDPNAETRQYRRAAMSGTSCSTGSSTSYPGSLPSLVIALLPMLLTAWDEDPDSPTST +IPEPAIPAAEVCEACAEGSGSPAMASPFSSPSSSSPPPPLGSWVHRSVVLSETAVPSPSS +GLLSLITAILASGAVAKKAPQLRPRNPICVLAAEQLAELAVQTDAYRFNNLAIVLRLYSN +GTFSKDVNQWAKCVTRYLMDGCAGLGPRILTFLTAFLTLGPPCVQLSLLHFGYWFLQTVD +LNQSEMSSRIRAFITATSERFVNTPLWPEVTLLYQVVVARSATLTAAPSNPEVYTLPGLD +PSGSGRVLDSLAAAAAAAVPLPEAEPQRIALAGRVLDFDSSVLQSAPLIAGGRGQTSPRP +GAASATDQSQHRSPARTAHLVEACGLSAFSFSSFFRLGAWKTPWNRQARLRGLFTNLLNC +YGSELDHLTAPRSPSVIFSQSTETLDRQLSMHSSSETNSINDASNPDDGHLDDTSSAERA +AVFHDLDTYLDAQLMNINFLDLPDAAWEDHSRCPWGVRGHSITSHTEFHEEGDDQQQSEP +QLQSQGQQQQTNQPSNLFSVGEDSSLPNTTIATGEPFVISPPVHLQPRRQFPHEGEELEV +EDVEEEEEDEDDDEEEEELEGEGGDFLAVALPTVPSAVAERQSQLSLQLSTSSSAAPVAA +IDSAPNIALLAPSTLHRRFNSQLLVAWTSRDESPVKWLTDASPTADVTVGTVSTISPAMQ +RYQIAPSTLRKLTLSIQPQAVCSRRRRRALTTFGGSLDSLHGQTNGQPTAVFKRGSYAVL +KSFQRSSSTSSFLKIPTITSNGVSDVVEAPMAPLKPPRRHRRFGRSLELGTQQPPNLSSR +MSRSSCALVSPPEADKASSTAGITPEQLLTPTPSETAWTTCQRQLKSLQQSSMRVTMTSA +QADRLRLLLTSLRGTFSGMLRRTTLQAVELANLAFFRCPPSSDLDSEIRISNLNKISAIM +GDALPVPFFAIHPNSVPLIDEHSVSLCLELGTAYEEWEGAMQKLATTCKSTAASDWLQHE +RICRDLQEVLQRLLLFFRSSADLLTSAYRHLVDSSVGVTDFSASGVEPLFARLRPYILTP +PPSLPPNSQEVGGMEAWRARCARLLLWPPYNSLRSEEVDAKRALAIYAAAMKSTTPISMD +DIMTVVEACCEHLWTGANCNSGVALMFAQGRAIESRRFEAFAVASKKSSTLFFTTDDFLA +SDGEATLPPLELVGRLLRLLEA +>CAH8433161.1||57078||1309000265 CAH8433161.1 unnamed protein product [Dicrocoelium dendriticum] +MQTPFRLLEPTTCSPLATFPFRVYIVRIRGERHSETQSKLHHIVNSLFPKNQKFIVPKDA +PVNIFVRIIQFIAHEKLEFAVKEIIIDRLGVNGLQKNLYMPERMNIGLCAFLLIAHGLQQ +KEGAPPMPQQSIGGGGGGGGAGLRQTVIKRSFHGTNLNDALGHILGIQNYLSPIRRAFEL +ILRQLDSQVCRSMMLSKPEVTQKEVEELMTAERKPKMDLLKTCVACIPRLLPNDMTKPEL +LELLAKICLHVDEDVRKMAQQAMANLIVELPAFRVKTIQVFIQFIQKNIADTNPTQLDSY +LKTLFHLLNNWNLALQKDGAISPNSTEKAVLYEAEGFALVMLCHCRTITRRLAVHILRKC +RSLLNLINMAMADSSAVQSQELCCIDVLDRSVPAILESVLPQIPPNERHAFSNPYNLDFF +AFAERSSPIWLGSPTPLISSNPVALPAHLTGPPNSGLLPMNSLRSSPTGRVSSPQSKESS +DVVISKDTRCAQCGMFVDTGCPGHTDVGTRIQEDLKQPGRALTSCSDQAAHPTPFAIVDS +QNQEPTTHFQHSAQPNTHQGQSSQQAYVLQPVQERIIIGDIWATCLSIAFSPSRLISMCP +QTVKYAWNVLFQRLTAVFPFIDPSAQIAENRASSILRSSSKKPSTERDQLLPLWHNYAVL +ACCIAPSSTGLRVSKPYDNRYLPKSSITALSTVSKPVSRPGLPTKICGPPDNVSDSRTSA +MHPTPNTSMNAAAGPPQPSVTNVDSKSHTSPVVIRDTARDLVKLLVPLLRCEQSDIRDSA +VGALGRINPASFRDVLEELSPLLRESVDRKQENVRRRRRRDILRVSLIRVLALMSQTGLF +AYPESNALTSQGCLIPQLTDYLDGMRVYLDSVSDQATSLACIGVTGSPNVIYPSVPSTAS +PGSLLMGAAGSITPMTSSFSSNAGSAPAITAVNAASGISLNEASVLTEIRLHFSIFILEL +IRHLPKEKRTQLLPTAMRYQLFLLLSHWSGYHDHVMGLCSEVSSTGFSILFTPGNGPSKS +MQTINATSGSSPVPAVSYSAVDSSSQHGLCSDSNQSALDANAQLNIPVLPQTYENTPSVS +ASAYRVVSSASQTNTPTTAYPPHTIPDPTAGQLTLTFLDSWALRLWTDLLWSANQAMGAL +LTCGPIYDQQALFNDSRDYATSEHSSTVDKQIIPSPGYVLRWISDLLVARDSGASATPWL +WYCPIVDPSFGRSNRSPVGNCYCPVYGTPPRTALAAGERRMDTLLRQLGEETLVLLLDLN +QASPALLTWSIEQCYTASNASLSEACFASICRVIANIADFPCDLIPLLVLAFVHLNHPQK +TISDRAFYLLHVIYYRFVIKPSSMIHERMHSNASNRGHVGDSCAMPQNPRSTSSLPLCVE +LKTHLRFWQSFTRWAPSEVIRQFAAQHPDLTLEVFSEITKRLEVSRECWRVPLLHLLVPW +IVNIELVDLISGIARAAPKFACDGDLDATDPDIPDAERKYKSCHEQASKSDGKRNDDPTD +SDDADEHLIHSNPTVRKPTHHRSAAQRPLPSQSTIGSDLDSDTDLGSGQRRLGETFSCIR +TSKADTVPLAKPNAARSRRAQEVHRRSVTFPTHSLPSEDFWFSIPLTLRCNGWGSKQSTE +LILNNLFYLTLRLAECPTAAEALKQVWVVLIRHRPANLSVILRYIIILTSLAPASLLTHA +KRLVTSLASEQPESVVEELMVEMQLIDGLGLIVERTPTLPFFRVSTADGLGTAPTVMDVV +DSANRHSLSPPATVLQCQQGTALDDTTERKSALQSVDRELVGQIDPELVAIGLGSRSRDK +PSESTAVRSRKSALPFVGNQYPHADDELNTAPSEQPHFRRPKSAVGQSSTTTVFMENGRN +ALSGDAYLHVASQETSTKPSTFDRGNDEIDPELDVDAFGSHRTTRLSPEDKYATLRAKDL +QRLLSAATDTCIEEVSESDCVPLRTDAQVRSGTLPTTQVSRERYLIGSRLSKPAKRDSSD +DFDPLVRSGTRYSKRAKVKTRSQPRLVDRRDIPLKVPPQTVSLPPSLARLSPLILPLPFQ +VPSLSNMLVSEERVCRSGSNSPQGIQIPKTSPPCLASDFVPMTSAPRHPRPLAMPTHGCY +KAPLDAWLSEPLVIGGSVVFSGAWPTASARSPLVLLLAGALTQCPNIRVDWFQHLPLMLL +CSLLGLDHCRALVQEECKQLLVSMLSLACSEQYSLRLLQLELESDSLACTHPSTLPGPRQ +PQYRLTLDGGPFKEKFANHLSSAPSSGPPISDCSQHSPPKKPNRRDIIETPCNPQIGPLA +PVHTTVPVDLSPIPYSLPSIRPRSAWTGSTYSLISTATLIPGHDETEVVSPPRDYGSASL +HPAEEESNHCNILSSPDKRPAGHAVWSWDERDSVRSQSQSTLHLPIPPRSTPTDCNATNS +TKQTSVDRLVRVIARILALAHSKPDDAEHCLYCHHGPPHEHAFAHRLKSQPAPILPTPVP +NLCVVARLSQAALNMGLSCPNRHYASRSLQIFRILGAHLDRKNLSHLLARLGETISDTNE +ELQGYVTELFDTLEAAVNHIQTKSDYFCESYIKQTASVTGQARTAPASPRSMNHGIHGEF +AHPAVAVSDRRRSQRQSSSVNPSAEGSCAPGSWFRPHPPTHHSALNDLPTVSSSVNLSVS +PSSGSADMVICRKPICRLPTDEQADLLCGIFWTGIFLLESDFEHEYLAGVRIVVPLIPYV +CHNSSSGSTRSAGTSQISLSRRVEKFLSQLHLDPPFSGLLHLAIKGCSSANLVHSACQLL +VSIVPFLCHPLVVPPRSNQIASQLSFPVVLVTLMPMLLTAWDEDPSTVGSSSNAHPGDVS +VEQPSVLQEGFLGRGVCAATHAIPRTLGSWASTPGAPVRGPSDFAHSSVKTPRLGYVDSI +SFPGTCSVGGFGAANGGGFFPNTTGSPAPHRSAQHTPLRPRNPVCIQAASALAQASFQID +SERLACLTHVLRLYAAGTFSKDVDQWTKCIVCYLLDGYTQYISHVLLYLTTLLTTGPLCL +KRPLLKMVCLFVEQVDLNTPDLSSTLQHFITSVTAQFLGTEFWTETMNILRVLVSRSSSL +TVAPPPSMYTLSGLDPFGSGRVLDFAAAAAAVAVPLPESEPPHLELAGPVLDFSFNLLQE +ASLLAPQFSPAVTSLAADNLDSPTIEKGATREEVQLPDSELCTVFASSATVWDRPGTCQG +RLRHRLYNLVGCYGLPAEHRLGAPRSPSVIFSQSTETLDPQLSVHSSSEATSMVDISNSD +DIRIDETTSMEQAAVFRDLDTYLDAQLMNINFLGVPDGRLGSTSASASEDEPRRPWGVRG +QSITCHQDLNDDTFEQAVDLLPTVRAPLPHQMREAEAAVSWVYRHRSYPAALGSEVSHEN +ERISATNWFGPPSARSEAMDICPSKSTSPAARDSPPLVSLCDNNEGISGPTSNEVCTSSS +SSPRIQRLLSPLQTDAPTPDNKLSDERFINVSVGKYSNLRHDRTSVGSDSQLLSERGDHS +EPLSDLVKQTDSGSPNFQQTSLPTRSTSSVKVRTSPSSICESSLPYQTRDRVSEKLSSST +SLPQMVPTRRQSPTLIVYEQDQSPKTRPTTLALIPAASCVSNHSPTRSHRPSGPQGKIRT +TMCTSSSGLTKSNGATDQLMTVPHRSVSMSNLTVQTKRMEPVMKSVYAKQKVVRSPAKRF +PFSGVLSRLSSPLFKLHRSRATKRQSYSAENLYELTKPKVTFASPVDESERPHSNIGDSE +ATSFKGSCLSLHSASETSNTPSIDDRNKISPLATSTDNISRVGSADAVQTQVVHFNVQAP +FFAWSAPEAPITMDQLAVGPLLTQLVDRFNETQAALYRIAKMLSSRNSAPVPQTISRLIR +TLIDFVLLSCTVTEEVCSRMEPFLASTATHQLNTMMRRLLDQLLSSTSFKNDALGFSRLT +KDDLSMSAIGNELVKALSKEKSSSDSVRQETVNVFYRAIVSFRLNASNAKTTNHSIPVAD +ALNGVLDLLMREKWKSDRSSDIIFAYLAIPVLIPSDHSTNVLSFCTQLRNQLGRSHRALS +QS +>CAH8433210.1||57078||1309000268 CAH8433210.1 unnamed protein product, partial [Dicrocoelium dendriticum] +MLPGRSGELVVCSLLRQFIALTKSKIDKALNDRQENNLLKCMQLSEDVAYEQLLDALYAS +AEFALPSLLRIFLQWYHSQHSTGTQYSVHRRRCQSSGAQTYLADSMTSSYFSGSADKENQ +RSIDVPAVTPLPTGRPDKMVKSVCEMSSVLRSICLTSSEARTLAERRDLAIDIIFCQVLL +SILRQLSYHPGHNEEIELVLEQSFKRFKYREDLLSQNTENVNIVADLYAEIVGLLSQTRF +PLVRCRFMRCLNELRSKENSPNVRQSIISLIMGMKFFRVKMHPIEDFVSCFVFLQELGQY +FLEAKEPEIKHVISDLFVEILLPVAAVARQEVNIPALKQFVENLYPTSVDLVNKKKHIPA +LFPLVTCLLCVGTKSFFLNNWTNFLTICLSHLKNRNPKIALVSLQSLSCLL +>CAH8871380.1||157069||1310018167 CAH8871380.1 unnamed protein product [Trichobilharzia regenti] +MRLNEDPAYENLISAFGVAAEFALPSLVSTLSLWYRSQHSSGKYYQLHQLHCFASPNKLN +ENDIPVATQRPSEDSHIFDVTQATSVPPNKSVKCASESASLSKSNHVFPPDASVIFERRD +LAIDIIFCHVILAVLRQLPFHPGHNDVIELILEQCFRRFNYREDLQPKNSENINLVADLY +AEIVGLLFQSRFALVRHKFMGCLNDLRSKENSPNNRASIVSLIMGMKFFRVKMHPIEDFV +NCFNFLQELGQYFLEVKEIEIKHVLSDLFVEILLPVAAVARQEVNIPALKTFVENLYPTS +LELASKKKHVPALFPLVTCLLCVGTKPFFLNNWTNFLSICLSHLKNRTSKVALVSLQSLS +CILWVYIVRIKGEKHTETQNKLHTIINSLFPKNQKIILPKDAPINIFVRIIQFIAHEKLD +FAMKEVIIDRLGVNGSQKTLVMPERINVGLCAFLLIAHGLQQKDGEPPMPQQCIGAGGVG +GGFRQAVIKRSFHGTNLNEALGSLLGIQSYLVPVRRAFELILRQLDTQVCRTMMLPKQEV +TQKEFDELMTADRKPKLDLLKTCVACIPRLLPIDMTKQEILEILAKVCLHVDEDVRKMAQ +QAMANLIVELPAYRVKTIQVFIHFIQKICLKTLFHLLNNWKLALQKDGAVTPNMAEKSAL +YEAEGFALVMLCSCRSITRRLAVYILRKCRALLNLIQSATYDPTLKQSNDVREMCCIDVL +DRSVPMVLKRLLPILPLSERSALSSVSTLDFSVFTERSHPVWFSGSTAPTYSPIVLPANC +LNNNQYSGLMSGNDVQHNETRFGNLSSRHDLNRPNYHNNNSPCGGDSVTANISEKSKLDE +TSVQETFTKIVRPSISGLLATSRTLDSQNVQTSKPCSSTTPVHRRPSQYNQQVQHTQQAY +IMQPTQERVVLADVWGTCLSVVFSSSSLPASCPMAIKSAWSILFQRISALFPLIDPSAQI +AENRASSLLRTASKKPANEREQFVPLWHNYVVVGCCIAPSSTGIRISKPPDTCYQPELRV +QKHSPDCGTKRDTLHCRDSSRSPTQPDEIQNQTTDSNANSSTSRATMSNSPCSNWPNSTD +LKHSASYGKVNARDLVKLLVPLLRCEQSEIRDSAIGGLGRINPAAFRDVLEDLQPLLKES +FDRKQENLRRRRRRDGLRSALIKILSLMAQTGVFAHPESNSVTPQGALIPQLLDYIDGMR +SYLESVSDQLLSPVSHTHTSSASLNILASMPSASSSQQVGTSGSNTSNQVSGSISSGSVV +NSLPTPLSSGPSVSEAYLLNEIRLHFCIFTKELIRRLPKQSRANLLPPTLRHQLFILLSH +WSAHYDHVMGTYFGSEGPVPIQSCFNNSNVDFTEHTTGSSGAVGVSPSNEISPGFIGPHH +QLVNDNFLQSVNNLSLNNVTPSGSTDSTANLTIPLNQASHSPTFQQKVSNNEQTEGLDSL +EYCLWIDLIWLSNQAMAALGAAVPGSDSVYGSCSDRSNGTSCSNVCTPSPGYVLRWISGL +LVARDTALSSSPWLWFCPITSRGLLHNTLNPGGASLCGNSHTRSRTIAAGGGRRLDSLLR +QLGEETLVLLLDFNIDNSGLFNWVVDQCYTSSNISLSTACFECICLIMSNIPNFTCDHTV +LITLCLIFIDHPSRFLSDRAFYLLRVLYRRFFIERAEILYKQVHSVESKKPYSDKDSPQS +QSSTCNQPNCECTQLSTYLRINKLFYRSFNYWLPCEVVRQFAAQHPDYTLTIFSEVSRRL +ENAREGLRVPLLHLLSPWFVNVELVDLIEGEVFDSPDHNLDMDDDFSYTEKENDPFSMSN +YEKPSDIVDVSNSNNNTSDQQQQHVRKDNPEYRIRLSKRYKRSKSLLNAESLRYDPDDTD +ADSDNINHQRSFKSLSLLRMRARQAMMGENTDLHSPRSFRSSNLCYNNSHFRNGCKATYA +TNNAALWSTVPPTLRSKGWGSKQATEFVLTNLFYLTLRLADCPTSSEALKQLWITLIRHR +SANLRVIVRYLIIVTSLAPGTLLIHVKRILAYLASEQPESVIGELMVEMQTIDGIGLIVE +PSPNLPFFHVIASIPQRKSNEDIQSSKVKSFIKHYSSSKMFEDSLKKPTSHTLPSQDGLV +QPDAELIALGLDSAHNSNTTTRTRTLRSAVGGKYDCHNVNGTSNTSTVTPAVTMRPKSAT +CQPCGNRSSKDDPQIEMRNTGKHSTSISPASGTANDNLTSMSETPGTQKSHCLPLSSNCQ +LVEGSDGEPEIDVDTFEGLGKRGLPLDDKYATLRAKDIANLLIQPIPKDFESSDSVSDCD +LPNVSHRGTTFPNTYAAQERSGFSSTLPNQVNEISRLQMCGRTLRQPKYLKEFRERRFKW +FSSSKNETISSLAMDAHLHSASLPPNLTDLPPLPLALPTSISTILSLSSRGSTGSNTCIL +PVNLSSADKRSNTGSDKMDNKPNSVRIRTCSNSVGKISFDCNSKPLPMPINGGYQAPLGS +WLSEPLVIGGSVVFSGGWPPAGPRSPLVLILAGGLTQCRDIRIDWTQHLPVMLLGVFLGI +DHCRALIQEESKQLLVSLLDQVCPHHDALHLLRLELEANLRRLAHPSALPGPRVQDYRLT +FDGGPYCEKFNLVIDPFMTIESDNLFSSPIVSSRTVKYDDTEQFKNMPSTEKEPDGDSHT +TSLDLLPLKDIDVTASLAASPSSPNCSPPMITQLQTNPTPLIKQGRLSDSMFSLTSTATL +IPRHQDVNVSEPQYFNDTTMHKSNIVNNSNNQTIDVSEKHVLRSKTLSNATRPSSVYTSS +QPSKTATTNHVQTSNYHPLKMEKSKKVKESDLKLLEEAIQQLRCILLDGLGQALWTWEDF +NMQRNSFNSTIQSTYQYECNQIFSNEKPEIKESTIKTKMNMNSLEQLVKLVARILSLSEA +GSEEAENCLQCLHGPPHDHNKRGVVVDQDDNCKDTWSDHSNYCLVARLSQAALNTGLSCP +SRHYASRSLQIHRALGAHLDKKSLSQLLARLGETVSDGNEEMQGYVAELFVTQEAAIHHL +KTRSDSLLEPVSTLAPDPASPSSSSISGNGRKSIQIIISNRKSSVHLNTVVPVNDSPTLK +SDQANSPSSERVSSSPSSIPSTPSHFTKKSHTSVTSSPKLINQNNSVCLLPAAERADLIV +GIFWTGVLLLESDFEHEYSVGLKLLSLVIPSVCASNPRHSSTAHGSRINLSDRAQKMLNQ +LRWNPYFPGILSLVIKGCSSPNLVDQACRLLIILIPFLTHPLVVPCGRMGLPIQISLPIV +LLTLMPMLTTAWDEDPSTSVPINPYEMSSEQFSFLQGGFLGRGVSSSLNIIPRALGSWTS +CYCTAHTSFANPNSTVASNSKMRTDSVGLFGNYSSNSLGVFSGAESTLNLNMIGTGSINR +DVNSIPKSPVLRPKNPVCIQAAESLAQAALKIDPVQFSNLALVLRLYASGNFSKDVDQWS +KCVICYLLEGCGSNAPRMLKHINMLLTSGPPCLQLPLLKVAYLFLQQVDINQPDLGSSLQ +NFITSIIGQFLGTNLWSYVIPILQVTVSRSAVLSTVPETPAYTLPGLDPSGSGRILDFAV +AAAAVAVPLPESEPPRLELAGPVLDFTFNVFQEAPLLAPEFAPSSSSNANLENISKVDTA +SYDFSPLKGNRKDYIDASDIGLTETFVSASGGWSKPGSCQSRLREKLYRLVGCYGMPAQQ +CISAPRSPSVIFSQSTETLDPQLSVHSSSETTSVVDISNSDDIRLDDTSSGEQTAVFRDL +DTYLDAQLMNINFLGVPDCRLASTSASMSEDEPRRPWGVRGQAITCHFDLNGDGSESIAN +ETFAGLSRPIQTIETKIITPAESDYLSSTYHQSRTNSLPQLTAFIDNRSDGVKHTDSKNL +NTNRYSTITISNNYTDCNVDNRYSTGSRDEQQLHMDIQGASSSLIWKSFTEESNTAVQLD +RADNDYMSLLYTTRKSDTLSEEDCEMKSSKTSQTKKRLNVNMRNSRAEHVSFDLGDGTEE +VEGEDSEVENTTRTTTTIGGSVQNYEEENRQSNAKGILVSHSHCQSHKNAHTTLQSNAVH +LPSASIVRFASIQVLNNSNCDYIDYSAAKSRPNIYFPRCYVSCRNELGLRDKQHIQILKK +SEHQSTNHRYRVCNTRNSLLGQIKRSASTSELSVNKQQYILIESSDGNKSFTNSLLLSPL +SYRSEVNSNRDRNTFGQSSSSLSSSRSSSPKLSNNEFKQPISDLIITDNNNNGDNDDNNN +TSTVKAVSSWTCSSSLISPQSIPFSPSLSVSSSSAAASVHSSHSSLHYTETGGRNKKSNH +YFPAVTKMHRSTSDSSINCSGKKIIYVRRQQQHEHGEQHSDQQQHHKRHSAHINENAQNF +ASSECASLNKIVSVQSSTSLCNWRNPLTTEQKWLELESILHSTTCSRLNEQQMLMCMLNE +LPQSYQELVSRYIIALKQTINLSGYSWTESNRFSSLAAIH +>KAF7259496.1||59628||1385009414 KAF7259496.1 hypothetical protein EG68_02984 [Paragonimus skrjabini miyazakii] +MDLLKTCVACIPRLLPNDMTKPELLELLAKVCLHVDEDVRKMAQQAMANLIVELPAFRVK +TIQVFIQFIQKYVPDTSSHQLDSCLKTLFHLLNNWNLALQKDGAVSPNITEKAVLYEAEG +FALVMLCHCRTIARRLALHILRKCRSLLNQINLAKSDPLTRHNRSPHELCCIDVLDRCVP +IMLQRVLPLLPPNERHGLLNVTNLDFSALADRGGPVWLGGAVPVYPCPPVVLPTHVVSPQ +HSCLIPVGGVSSASTAVERPQSKDACDVSKNAACTGQYGLFPEGSTLDTATRFSDEHHQS +DSHRPDSQTHISSGQVATGRQSQVQQPTSHHPGQYTQQAYIVQPVQDRILLGDVWGTCLS +VAFSPDHLVTACPEAIKYAWGMVYQRLSALFPLVDPSTQMAENRASSLLRSSSKKPTTER +DQLIPLWHNYATLGCCIAPSSTGSRILKPQSRDYLLDFDRTQRPSSLNGTVQTYNSSCSQ +TPVPSTESSTNTPSTTTVATSRPTQPQPVSSDSKCPVPVLKETARDLVKLLVPFLRCEQQ +EVRDSAVGAIGRINPAAFRDALEELHPLLKESVDRKQENVRRRRRRDGLRSSLIRVLALM +SQSGLFAYPESNALTAQGYLIPQLTDYLDGMRVYLDSVADQATNPACIGSNAAVSNQLSI +VTSSPSVGGSSTGSLLVGTTGSATPVVTSYSATTVNTSAGLAATSYQNVISTDAYVLMEI +RLNLCIFVLELVRQLPKEKRDQLLPTMMRHQLFLLISRWSGFYDNVMGVSLSETEAAYPS +FFGATRQNFYRLSRSSVLNSSLSPIAANQLSANDSASLNSLSLDPSQPSLEVANPSNPST +TAGPGLSTVDTNAAQVTPLVSLTLPGSGPDLPSAQPDSWELRLWTDLVWTANQAMGALVC +CGPVYDQQALFGDPGELLSTERSIGMEKQSVPAAGYILRWIAGLLVARDPALCASPWLWH +CPITDASLKYAPMSHSGSGGGLTFGTQPRLTFVGVDRRMDTLLRQLGEETLVLLLDINQA +SSGLLNWAVDQCFTATNVSLSTACFFSISRILENFPDFACDFVCLLILSFVFLDHPQKAI +SNRAFYLLRVIYHRFIIKNNENVNLVADLYAEIVGLLSQTRFALVRCRFMRYLNELRSKE +NTPNTRSSIVSLIMGMKFFRVKMHPIEDFVNCFTFLQELGQYFLEVKEPEIKHVLSDLFV +EILLPVAAVARQEVNIPALKQFVESLYPASLELVNKKKHVPALFPLVTCLLCVGTKSFFL +SNWTNFLNICLSQLKNRNPKIALVSLQSLSCLLWVYIVRIRGEKHTDTQSKLHHIVNSIF +PKHQKFVVPKDAPMNIFVRIIQFIAHPGAIIHDRLHNREANLNSFGIVPDSSESPTSDCS +SQVCAEFSVNFQFWKSMSRWAPAEVVRQFAAQHPDLTLSVFSEITKRMESCREALRAPLL +RLLIPWIINVELVDLIGDVSPSIQAVNGEAKKNVTPRVMSSGSCARRLFTDEIVHTEEDA +VTDGEVDDDDEEEEEEDSCEVGDQDGIILQESDFNRSSVIDRHSMDFRSSALKRVRPRPE +SLVVLGSAPSDADSEYEMASGIKSHPVPYMRTRKADSVPLTRPALNRLSRSGYISGGYRN +KSTVAPSRSGVCDQFWYTVPPTLRTSGWGSKQATELVLNNLFYLTLRLTECLTTTEVLRQ +LWVTLIHHRPPNLRVILRYLIVLTSVAPATLLAHSKRIITYLASEDAGSVVEELIIEMQT +IDGIGLIVERIGCLPFFRITTAASVARANDGLEANPSNPTPTGTLAEKSTTEYEESSRIP +TDPSVVDSSLPHQALLQSVNPDEHLEQIDSELVAIGLERERLAVLKRKKVTHTRATAFPF +GGSQRRSTIEVSTETKSHTPSRRPKSATCQPSTGSDVDNACPRRIIDDSPSSIPQTPDNT +FLITSTDSTAPVSSNRTEPELDVDLFKSRPVNPEDKYGTLRAKDFSRLLSITDTRESEEA +SDLDPIPARNDYQARCGTLPMTADSRERYYTRTLPDAELRGSPGRCASQLEPSTQLPSSQ +QLRHSKRVKPKTRTHPRPVDSTKFVLQTVSLPPSLARLAPLPLSLPMGVPSLPSLWLSSA +TERTDSITSGSPQGATPVPRAISGQSGTRQSATVLQSKLSPITSQGSLPGKPPLQPLAMP +PGGCYQAPLGSWLSEPLVIGGSVVYTGSWPASGARSPLVLILAGELTQSPTIRVDWNPYL +PLMLLCTFLGIDHCRALVQEECKQLLVSLLSLTCPEQESLGLLRLELEDCLVSCAYPSAF +PGPRLPKYRLTVDGGPCKEKFNRLPLVHLPVSCNFSATGLTSVARTKKPERRIGGKQICD +QSLSHGPAPNITLVSDSVLASIPNRCGSPPLTLFPSSYTQDVDKSGWNGSSYSLLSTDTL +IPGQDDIGPSSRGPFDCVPRGKLKDESSHLQSAFPSKKIRLRPPKSIPPKPARHSFGPVL +SSAPEADPLLFELQEPNKTNSKLLNESVEELRDVLISSAGQAVWTCEDYDVQRSRFYYSP +LCCHRSIEREADAAGEINQRQLNDSSLGRLVRVVARILALTHSEPEDVEQCLQCSCSPLH +GCSSTHRFRSHQLETHDPSSNCVVARLSQAALNMGLSCANRHYANRSLQIFRILGAHLDR +QSLSRLLARLGETVSDMNEELQGYVTELFYTLESAISHLQPKNELSLDHAFKRRANPSQT +RTAPTSPRSAGRWPCTDPSQALVAVSDRRRTQRHSTSANLITVDPGGALGGFRSNVNANL +PHAVSLCISNGVSIPVDSVTRHSFMSKAAVSNTKQAACLSAEEQSDLLCGIFLTGIFLLE +SDFEHEYMAGVRLLTTLIPRMLGEGTPCWGTAAASTAATTLSLFGRAEAILAQARLNPPF +PGLLNLAIKGCSSPNLVDPACQLLVCLIPALSNPLVVPPNKTTLASHLSYPIMALTLLPM +LLTAWDEDPSVNLNGLCPPVDGTTEQPSVLQGGFLGRGVCTATYAVPRALGSWASTSVAL +SPVRNASVATGSSTRPNRLCRTDSVGFPGTCPTGVFSTLSHPGPIAPQSTVYGASIIPKL +TTQTPLRPKNPVCIQAANALAQAASQIDSNRLANLELVLKQYASGSFSKDIDQWAKCVVC +YMLEGYNRHASHLLRHLTTLLTIGPVCLQFSLLKVAHLFLEQVELNTPDLNDTLQQFITA +LSDQFLGTDFWVEITKIHQVLVSRSAVLNAPPPPSVHTLSGLDPSGSGRVLDFVAAAAAI +AVPLPETEPPRLELAGPQLEFHFDLMHNAPLLAPHLALSELVGLSNQTGPDLNPSLEVDQ +QKTETRLPDSGLGDLFVTAVSSWNRSGACQVHLRERLYRLIESYGLPSNHRVGAPRSPSV +IFNDIRLDETSSMEQAEVFRDLDTYLDAQLMNINFLGVPDGRLEDEPRRPWGVRGQSITC +HQEFQDDVLEQATDLLPTVRAPLFQASEHANCHIRWRSRHRSFPSVACEGATAESEPSEA +NDTIGRGWIDKVSVNNSLGESRLYTLTSSAVLSEGSSTHFASMRQHTGCESRALVPLHCD +LNDISSSSSSLSPDALDFMPLDATDITIMANDTSPCAHTSAVLEHESGIPCLVSDFRGKS +NGNDMFHVSSCLMEGMELPQPHPPQYSDTSSRSPSHGSVFIVPSHHSPTSSLHLISTDEH +EDRGLRKMNSSASLPQMLLLPPTFRACDSALLTASQSRPTQIVNRTTVQLSAETEKPSEQ +VLIGKSNDVANASGLTENRNPTHRSLSTSNLLFKGEPVENGVKFYGPRGKPLRSPTKRFV +TSGVLNRISTPLLKFHKTFTSKRQSCSAEDLLHLVKPKVSFIMPTKEAVCESPQNELHDQ +HIVSQPPRNKSPRGSAYPFRIESEGFDCSSQLTMLCGAQQSTLGDQPGVSSPTPDPDKLI +PMSRDLLSCTWLDLHTLETDWLYDVRRAVDRSPVRARITCFTNLSNVFARLANRCYAAVQ +TTINLAGCSWDDANEFRQLASIARLIANGLRPPFVVYYLEQDMLLDSDQLAIGSPLSRLI +ELHNQVQAYLYQICQFITTHDAQSSVSILIRALISLLKFLRIACTSSEDVCRYLELSVRP +SVAQNELTHKLKCLMDRVLPLLPEYSTNHPHPSGSCGKCDWRPVLDDVFTQLLEVEATDP +PLRPDVVDRLNRAVAVYRQRMIGFDETMANHRALVDRVTGILEWYLRQRWKTVPDPDVRL +VHLILPAVDAPDGSTDVLGCCSQLCQQLNKLLNQFES +>KAF7259497.1||59628||1385009415 KAF7259497.1 hypothetical protein EG68_02985 [Paragonimus skrjabini miyazakii] +MAYACRIFQLIFYVQEKLEFAVKEIIIDRLGVSGLQKNLYMPERMNIGLCAFLLVAHGLQ +QKEGAPPMPQQSTGGCGLRQTVLKRSFHGTNLNDALGHILGIQNYLVPIRRAFEMILRQL +DIQVCRTMMLSKQEISQKEFEELMT +>VZI53646.1||64606||1416021950 VZI53646.1 unnamed protein product [Sparganum proliferum] +MRYCLLRFLHYWAINVELVDLFARAAEPSVTHSTRYRTTSSHYSVRRSLLTADTSTPFIE +PEAAVKASRGASSSNTQQQQQQHQSPPEAVDVAGAAVVSTGPGGNDTSSSSSDSSVDDGG +SEDSSNCDSDADMVGGQPTVAGARPTSLRSDLAYARRRVQPLPNNEAWASVPLTLRCSGW +GSQQATEMILNNFLYLTIRFGNQPSECAALKELWILLIRYRPENLRYILHYLIVVVSLAP +ATLSSHL +>VEL34069.1||117903||1437027472 VEL34069.1 unnamed protein product [Protopolystoma xenopodis] +MVFAANQAMAALVCCGPIYDPVALLSNAFVTYGHAGSSSCVGPTASSGSQIASGTWLISH +VPTSIDCSAAISIGTGAGLSISCLPTSFSGTGSTSGLISTGYVLRWLAGLLSARDALLDS +SPWLWRCPVVGMGLLAESFAQEATSAAVGAGSFMRSPVIAYGGGRRLDTLIRQLGEETLV +LLLELNPGLPGLLEWVVDKCYTAANPALTEACFVAVFRILTHNMNYPCDSTSLLTLSLVF +MEHSKLLLRERAFYLFQLLYYRFIVKSLLVQHDAIHRGTPSDQPHNKKRDSAAASSGDVP +SSHEMHAATQNTAQGIRMCSFGKKDGQMEPCSELCHQVAVNLQFWRCLSASWTLVDVSRQ +FAAQHPEYTLFVFSGL +>VEL40899.1||117903||1437034296 VEL40899.1 unnamed protein product [Protopolystoma xenopodis] +MGIAQLAENRASSLLRTTNKKPNTERDQMIPLWHNYIVMGCCIAPSSTGVRVLEPLSVGR +SSSLSVRNVKQNQMHQRSPQYCQFQPSVQQPNLQQQQHSHKYHLQKPQPHHRPE +>VZI50194.1||99802||1469025244 VZI50194.1 unnamed protein product, partial [Spirometra erinaceieuropaei] +MSADDVLYSEEDETRRPWGVRGHSITSHTDFHEDGNETAGMLVANESTSCPDPRNRKNLT +LELSSKGTLEHPLGSWSPPLDSSPTQPNLSAISANGAGGGGGIADEDLSATTSADLAPAR +RNSISVHSNSSSVSVGTRGISLLAPVLNRQFTSELMVAWVSQDSSPTDWLGPSVLSSAGP +TKLKSSKKTSAGAASQSPSH +>CAH8639752.1||39320||1506013587 CAH8639752.1 unnamed protein product [Heterobilharzia americana] +MISVFFLSVLLLDKPVVDSVCIVFLRMNYGLLSVASVIIVTTNKFLRLIMAVTKPGEWAM +QVLLRQLTSLARSKIEKALEDRQETNLVKSMKLNEDPAYEQLISAFGVVAEFSLPSLVST +LSLWYRSQHSSGKYYQLHQRHCFTSPSKSNEVISTATQHLSEDSNHSFESHPNTSLYIAS +LPKSYHLTSPDASVLFERRDLAIDIIFCHTMLAILRQLPFHPGHNDVIELILEQCFRRFN +YREDLQPKNSENINLVADLYAEIVGLLFQSRFALVRHKFMGCLNDLRAKENSPNNRASIV +SLIMGMKFFE +>CAH8639769.1||39320||1506013588 CAH8639769.1 unnamed protein product [Heterobilharzia americana] +MHPIEDFVNCFNFLQELGQYFLEVKEIEIKHVLSDLFVEILLPVAAVARQEVNIPALKTF +VENLYPTSLELASKKKHVPALFPLVTCLLCVGTKPFFLNNWTNFLSICLSHLKNRTSKVA +LVSLQSLSCILWVYIVRIKGEKHTETQNKLHTIINSLFPKNQKIILPKDAPINIFVRIIQ +FIAHEKLEFAMKEVIIDRLGVNGSQKALVMPERINVGLCAFLLIAHGLQQKEGEPPMPQQ +CIGAGGVSSGFRQAVIKRSFHGTNLNEALGSLLGIQSYLVPVRRAFELILRQLDTQVCRT +MMLPKQEVTQKEFDELMTADRKPKLDLLKTCVACIPRLLPIDMTKQEILEILAKVCLHVD +EDVRKMAQQAMANLIVELPAYRVKTIQVFIQFIQKNVADTSSHQLDSCLKTLFHLLNNWK +LALQKDGAVTSNMAEKSALYEAEGFALVMLCSCRLITRRLAVYILRKCRALLNLIHSATY +DPTLKQSNDLREMCCIDILDRSVPLVLNRLLPILPLSERSALSSVSSLDFSILTERSHPI +WFSGSVAAAYSPIALPANCLTNNQYSSLISANDVQQNDPRYGDSPNHHDLNQSNNHNNNG +SSRGDSVVINSNEKSRLDDASTQETFTKIVRPSISGLLGTSRPIDFHNPQTSKFGSSTTP +IHRRPSQYNQQVQHTQQAYIMQPTQERVVLTDVWGTCLSVVFNPSNLPANCPIAIKFAWS +ILFQRISALFPLIDPSTQMAENRASSLLRTASKKPANEREQFLPLWHNYVVVGCCIAPSS +TGLRISKPAETCYQPELHLQKNSPILRQSRMVFIVATIPDRLLNLKHSASYGKVNARELV +KLLVPLLRCEQPEIRDSAIGGLGRINPAAFRDVLEDLQPLLKESFDRKQENLRRRRRRDG +LRSALIKILSLMAQSGVFAHHESNVVTPQGSLIPQLLDYVDGMRSYLESVSDQLSSPLTH +AHTSSASLNILASIPSATSSSNSGSVVNSLPTPTSTGPSLPIHSSESYLLNEIRLHFCIF +IKELIRHLPKRNRTNLLPPTLKHQLFILLSHWSAHYDHVMGTYFESEGPTSTQFRLAGSA +VGFNDHSSSSNFAVGLSPSSEISPGFVGPHHQSSSDNFPPSTNGLGLNSVALSGSVESSA +NLTVLPSQNSHSPTFQQKVSSGEQTEGSESLEYCLWIDLIWLSNQAMAALVCCGPIYDRS +GLLPNDNSKTNQVISGAGFDSSSSSSYVERSNGTSCLSICTPSSGYVLRWISGLLVARDT +ALSSSPWLWFCPVTGRGLLHNTLNPGGASLCGNSHTRSRIIAAGGGRRLDSLLRQLGEET +LVLLLDFNPDNAGLFNWVIDQCYTASNISLSTACFECICLIMSNIPDFACDHIGLITLCL +VFVGHPSRFLSDRAFYLLRVLYQRFFIEPGETLFMRMHGDSGDSEKTCLGSEMPLSQSSA +TTCNRLDCDCSHLCTYLRANKLFYRSFHHWSPCEVVRQFAAQHPDYTLTIFSEVSRRLEN +AREGLRVPLLRLLSPWLINIELIDLIEGTTFDTTEHNLDMDDDFSDNEPSPNSYEKPDNV +SDFTEIPTCKANNAGLLLGSEQQQRNNSRKDNTEYRIRLSKKYKRSKSLLNAESVRDDID +ETDADSDNVIHHRNFKSLSLLRMRARQAQMNEHAGMYSFRSFRPSNASYVHCRNGCKSTG +SMNNTALWSTVPPTLRSRGWGSKQATEFVLTNLFYLTLRLADCPTSSEALKQLWVILVRH +RSSNLRVILRYLIIITSLAPCTLLIHVKRLLTYLASENPENVVGELMVEMQTIDSIGLVV +EPASNLPFFHVSASTQQRKSNEEMLTSEVKPYVYHHSSSKSTEDPAKKPFLNSVTSQDVI +GQPDAELIALGLDNTPRSNTTVQTRRLRSAVGGRYDCRNVIGTSNTNAIPPTIGMRPKSA +TCQPSLNSVGKSDQTTVDANKKHFTSTSSSKIIHDNHITTSLSSKTEKNHDLPSTSNCQL +VEESDGEPEIDVDSFEGLNKRGPPFDDKYATLRAKDIANLLTPPIPRDFESSDSVSDCDV +PNLSHPDAIFNSQDRSIFSTTLPNQVTEVNRAQMSNRISRPPKYLKEYRERRFKWFSNSK +SDTVTSLGIDPHQHSASLPPNLTDLPPLPLPLPTSISSILSLSSKGSTGPNTCILPLNVS +NTDKKNAISSDKTDIKPSVSVRMCTCSNVQTGHAASQSSFDFNPKPLPMPVNGGYQAPLG +LWLSEPLVISGSVVFSGSWPPAGPRSPLVLILAGGLTHSRDIRMDWTQHIPLMLLGVFLG +IDHCRALVQEECKQLLVSLLDQVCPHHDALHLLRLELEANLRRLAHPSALPGPRVQDYRL +TFDGGPYREKFSLVIDPFIPDQRDNVFSSPLISSRAVKCEDSENYRNISSTENEAAYHTT +SPDLLPLKDIDIISPLAASPSSPNSSPPIIGNFQTHSTTLIKHGRLSDSTFSLTSTATLI +PRHQEVNTSESICYNDQPVHNSNQNSDVSEKYLSLSKTPTNAFGPTSVYTNSRSLKTVNP +NRIQSTNGHSLKAEKTKTFKESDLKLLEESIQKLKSVLLECSGQALWTWEDFNLQRNPSN +STMQSTYQYEFNQFITSEKSEMRDSTIKTKSSMNSLEQLVKLVARILALSEVGSEEAEKC +LQCLHGPPHDHNRRGITNQDDYNKDTNSNYSNYCLVARLSQAALNTGLSCPSRHYASRSL +QIHRALGAHLDKKSLSRLLARLGETVSDGNEEMQGYVAELLVTQEAAIHHLKFKSDSLLE +PVSTFSVDPASPTSGSMNGNGRKSVQNIVSVSDRRHFHRHSKSSSFIGNRSCHLSSVVPV +SDPPMLKSSQATTPTLENTSPTSVASTSSHLTRKSIASMTSTPKLNSCSSNNKSSVCLLS +AGERADLVIGIFWTGVLLLESDFEHEYLVGLKLLSLVIPSVCASDLNQLSMAYAESNGPK +INLSDRAQKMLSQLHWNPHFPGILSLVIKGCSSPNLVDQACRLLIILIPFLTHPLVVPYG +RMGIPIQISFPIVLLTLMPMLITAWDEDPSTAVPINPYDANSEQISFLQGGFLGRGVCGS +LNVIPRALGSWTSCSYTPHTSFSNSTSSLVSNLKMRTDSIGLLVTVHQMAFSVTGNNNRD +ANSIPKSPVLRPKNPVCIQAAESLAQAALKIDPVLFNNLALILRLYACGNFSKDVDQWSK +CVICYLLEGCGSNTPRMLKHINMLLVSGPPCLQLPLLKVAHLLLQQADINQADLEFSLQN +FIASVVSQFLRTNLWSYVIPILQVTVSRSSVLTSVPETPAYALPGLDPSGSGRILDYAVA +AAAVAVPLPESEPPRLELAGPVLDFTFDVFQEAPLLAPEYAPNSSSQITPENAPKLDGTV +CDLPPLKGNKRDFNDVSDIGLVETFVSASGTWNKPGTVRYL +>CAH8639784.1||39320||1506013589 CAH8639784.1 unnamed protein product [Heterobilharzia americana] +MVKLSQSRLREKLYRLVGCFGLPTQQCISAPRSPSVIFSQSTETLDPQLSVHSSSETTSV +IDISNSDDIRLDDTSSGEQTAVFRDLDTYLDAQLMNINFLGVPDCRLASTSASMSEEEPR +RPWGVRGQAITCHFDFNGDGNESVMNESFPGLSRTLQAAETTNSVAHNGTESDYLISAYH +QSRTNSLPHLTSLRNNHSTDFKHTESKSLNTNRYSTITISNNYTDCNVADKQLTELNDER +QLQLECQKPSRSFMWKSLTRGDDTSIKVDHTGSDYVNLLYTTKKDNMFTGGHFKTKPSRN +LQIIKRSNVNLRNSRSEHVSFDLGDEKNQDDDDVDGEDSELEEAESGAATTCDSVRDRQY +TQFDGKRILANYSSYETYEKIRNTLQSDSVHLPSASVVRFASTQALISVNGGDINDDEDV +NDLVPKSRRNIYLPRSYLAYQNELTMQDKTLRQLTQESGQSSITHRPHCINRVEDSVMGQ +MKRSASASVLLANKYYAVSESSCDKSLVSPLLLSPVSYQNEADCRVDVNNHTQYSSLSSS +RSVSPSFSSHAEFKLPVLDNNQYDDDNPTATVKAVSSWPYSCSLVSPQSVPLSSSLSVSS +SSSAATSVHSSQASVYYISSCGKIKKANWILSGINKKHKSTSDLSVNCSHKK +>HmN_000239500.2||85433||1612003148 HmN_000239500.2 pep scaffold:HMN_v3:HMN_05_pilon:16475703:16514547:-1 gene:HmN_000239500 transcript:HmN_000239500.2 gene_biotype:protein_coding transcript_biotype:protein_coding +MICSNPGELVVHSLLKQFASMCQSTVENALDEKADNDLLKCLRMSEDTAFQQLLTALYSC +AEHALPSLLQTITKWYDTQHSSGSLYPFRRTPSKSGVRSQTLSAATGQAVSNSPPGGREL +LIRSMVVESSLNTTGATQGVAISSQEANNTLPSSANTGPDPQILAMSSLARENMAERRDL +CIDILYCQTLVSVLKQLPYHPGHSDIINKILNQAFRHFEYKENLQAKLNAVNINTVADAY +AKVVGELSQTRFNLVRQHFLTRLEHLRAKESSPHTMHSIISLLMGMKFFRVKMHPIEEFV +SYFTFLHELGQYFLEVKEKEIRHAMTCLFVEILLPVAAVVRHEVNIPALKNFVDLLYPPS +FELANKKKHVLALFPMVTCLLCVGTKTFFLNNWPPFMHLCLSQLKSRDFGQVSVESLFRL +LWVYVVRIKCEKHADTVNKLLSIVNGLFPKGSKSVLPKNVSSTVHVKIIHFIAQEKLDFA +MTEIIFDLLGVNRLQKLVFNPEAGTVMDFYRDAPAYIDKDTINVLYAQHWNKGSIKRMNI +GLRAFLLIAHGLQQKDGEPPMPQNQSLGACGVYPTVYLQRGFLPACSTGVVRRSFHGTTL +DDALCERLGIRPYLVPVRKAFEAILRLLEPQIIRSMMPPKQDAVIKDGDDSAPGDRKPKI +DLLKTCVNCIPRLLPYEMSRTELIELLARVSLNVDEEIRMMAHQTMVNLIVESPTYRQRT +IQDSVLFSLLLLLLLLLLLLAFIQFIQKYVPDTFPHQLDSCLKTLHTLLVNWKIALQRDA +AVTTSLSEKSALVETEGFALVMLCQCRPLTRRLAVHILRESRAVLRLIDQAAVQQQQGVE +NETNHGESPQNIATSVSAAASASNVAVIDVLDSLAPAILERVLPILPQNERHDLSSLQTV +DFKSLAERSNPVWLCGLRQPSTWNHKPLLGSNNFSTPVAVAAADHSSGNKVASATMKYGG +FDATSPSRTARKSMQQLSALRPSAFSQYLLTPYLLQPQLERTQLTDVWATALSVALSTSS +ALSLHPALFYAWNTVFHRMSQVFILIDPSAQAAENRASSLLRSTSKKAPPTERDVLIPLW +HNYVTLACCIAPSSTGVCIVDRKRPAYDTEGAAAAIRRRNLHHISNPSTGSADIALLQSQ +EKTATQSDPKITAQVQNPRQHQHLANSKLFISAKEKARDLVKLIIPLLRCCDHPELRDSV +ICGLSRIQPTAFRDVLEDLHPILRESIDLKQKNVQRRRRKDSLRSSLIRLLALMAQNSVF +QHDEAGITTSQGTLLPTLIDFIEGTRVYFESLNEPSAMVVTMFGSSAGVGSITTVNHSSS +NANDISGGTTINPPTVGQNMNSPTGPSQSTVGTVNSATVSGGASMAGVAGSGAVSSTGGA +QNPTANSSSGPTSATAATSTAPAHAPSGVDPVLLTEMRLYFCVFVRDLIRHLPKERRQKL +LPPTVRRNLVLLISRWSGFYEHIFNARDVKWAQPQWTDNASSSLAQNGRQSSSIRGASVG +AAVGNLPSPPGMDQVVSGDLVLSISGVHLESTPQAPFISASFLDTSIWLELLWYANQSIA +ALICCGSIYEHVAIFSNPQIVETTELASNTAASSSHQLAGSNVNLGGNPVPSNLSSNLPN +PATQPNTVPATLPSNDDDVTAPNNQGVNTVPIVTTNPSTVKASRGHPIPGYIFHWLKGLL +LCRDAKLSISPWLWGLPVVNFGVCSTALKGPHGKTGVRSIRLEDSLRSIVIAAAAGRRLD +SLFRQLGEETFYILLDMNPDLPGLLELLIDQCYSGSLNVIQAFFVIIAQRFIKNPKMHCD +RFTMLTLAMVFCEHSVPVIKEHATFLLQTLYYRFFLLPSRELHQRMHSNCQKTVESINEE +PRDSGDQTEFCLSALADELLWREIGHWKPCDVLRQFCAQHPTCTLPMISEICSRLATASK +EVRCRLISLLHYWAINIELVDLFSRNYKDEGFMDYFHQHHTNLQLVNASLLEKVELSNPV +STINAESESEFEIDDRMEKTQNGVGGDEEEIIKCPSGSSGSGSASSPTSLSSSSESPHNS +SISSDIDSDIDRDGPVIITNMANSASASRKPRVGRHLHQDNRRRRLQQRHTSDQFLKPDQ +DGEKQKEAANELWASVPLTLRRSGWGCLEATEMVLNNFFYLTIRFANEPNESVVLGDLWV +LMIRYRPSNLRYILRYLIVAASLAPATLCSHVNRVVSFLSNEDPSEVVEILMTELQTIDG +AGLVIEPSPLPPFFHISLFSQTNLTEPSSDQIGDTNENTSRRILEKESYLGQQTGSSTRL +LSTISVTGDDHLPATPIKPGVDISTAQPTTTSANTSAISRLTNRFASSASAMGRRALRTA +LHPGSGGGRQSKNSVNLDQEQPPELDIDSLDGEGEEESANPRQAADTMPTPQNYTTPSTD +ALIAARSQTLPYTAASRERYSKQTVVGLDNQVALSNRPSRFRKILSRRRTGGGGRRNPFR +SIFGGGGGGGGSGSIVGGALNESIKASSELAQNISEATKLYTTSLPPNLASLQPLPLPLH +SHSISHLNDLRKKRGGRRRRSSSASGRNHRHGSRKHHRRRRRRNNTNGSGVMEDIPGQHV +KVAFYDDSLMLQQPLPMPKDGSVYYAPMRNWLTEPFVSNGSLVYSGMWSPTGARSPLVLL +LVGEILKSHNKNRVTWRKHMPLLLLCLFLGLDHCRPLVQEESKQLLVNMLRVICPRIDLL +QILSLQLEIDSQWIARAVAGFSPHVPQQFLILDDGPSVPKFYLPAPTDTALSEVSSCPTW +AAASYSASSNNAQSLFSSTGLLNIAPTSTGGGTGNGFSPMTDGPSSGGPHPLRSSLQQPI +PARPNYIFGSTYSLMSTATLIPSAAISSVEAEPTNRRSLILSNPISPSQLPPPPPSTPLH +SVPQVQASRIPKDDCESRHLHAAAELINQMLVEVNDRSIWTWEDITSSRFQQATLLTLRS +RKSSILLLRSARFLDKFVKCVAGAFAEAEVGGKCAEATECLQCHHGPPHRHWELESEEEN +CLQQPSCTVTRFAQAAFNMGITCPNRHYASRSLQIYRALGAQVDEKALSEVLVRLVESVS +DTNDEVQGYTIELLLTLEAAVEHIQLRGTILSGAGHRNGTLIRPSAPESPMAISKHPQTP +PVHERRHSRRGSSSSLSSLLIIPNSGGNSSGGAAVLGNVGVGGVCPQASLPPIKRPLMPP +HAEAIGEENETSASNIVVNTAIGPIKTTLSKDTMPPLPPNATSKPSKLTSLQSLPVVTPP +ETKPVSISGWEINSRTDSNNAVEDTSMIGTCRLTAEEQADLLSGIFWIGVCLLDSDYEYE +YLAGIRILSRLLPSVCSLPQSSILKSLPDFHEHILKLHHRLKWSTGSSEEADFPGLLGLL +LKGCFSSNLVDASCHLLVSLIPLVKSPVVDPFAEARQNRRSSGISGTAARSLGISTSSSN +SGSNYPGPLPTLIIALLPLLLTAWDEDPESTPSSITPEITDGCEMCAEGTPGNPLMIPSL +SLNSPPPSLGSWVHRSVVQSENSVPSPSSGHLSLVTLTIISGAAAKKAPQVKPRNPLCIQ +AAENLAELAVQCDAYRFNNLAVVLRLYACGGFSKDVNQWAKCVTRYLIDGCSNLGSKILP +YLTAFLTLGPPCAQLPLLHFAYWFFQAVELNQSDISTRIRSFITSTSERFVNTPLWPEVT +LLYQVIVARSATLTTAPSNPAGALSLPGLDPSGSGRVLDSLAAAAAAAVPLPEAEPQRIA +LAGRVLDFDTSILASAPLIAGGKGQASPRLSCTNSAAANVGGIQYRSSTRMSHLAEGCNV +PGGAFAYTPFFFRLGAWKTPWNRQLRLRSLFTNLLNCYGSHLEHITAPRSPSVIFSQSTE +TLDRQLSMHSSSETTSINDASNPDDGNFDDTSSDERAAVFHDLDTYLDAQLMNINFLDLP +DQNWEDQTRCPRWGVRGHSITSHTEFHEDGDDTQQQQPQEELAKHFQNPVGDIAISTAGD +NFVNIPFQRGEDDNLMVDEDLEVNHFEDVLDANTTTSGADFFSYSESRRIPLRHQSQLSI +QLSTASSVNSASFTAPQPPQSRSWQSKDDSDLKWLPDSTATIPPVASPPHSRKRTLSMQP +PIVCSRRRRQNLASLGGSLDFLPSQLHPLSSPRRKVSGPQQQHSVVSGSTRKINTQHSSS +TVSSVSSASFKVKEAPQLQPPAKPARRKQRPSRQSLELITLDEPPVVPLRLSASSNAILK +TPISSKTSFNEPDLTPTPAETAWIACHRQLKTLQQASSSSAIASRGEMTSGQRDRLRLLL +TGLRCVFAGMLRRTTKGAVEMANLAFSRCPPSSDLDPEIRISYLVKIAEIVHDFLPSLFF +TLHPDSVSMLNHQVMQHCLQLGSMYETWDESINRLSMTCAPMDSPDWNQHERICRDLQTV +LQRLVNFFSCSADVLFKVANDLLLSGITDFSHNLIEPLFNHLRQYLLSVPPKSHLEILGG +IDSWKVHCGRRLIFKTPDDSDVTTALSIYSEAMKSNDPISMDDIMIILEACCDQLWLERK +SESGFALLFAHGKIPEVRVFELLTSNQSMPSLVLTTDNPLESNGHSVLSPSELTAKLQKL +LEC +>VDD81314.1||53468||1613007294 VDD81314.1 unnamed protein product [Mesocestoides corti] +MVGTSPGELVLHSLLKQFSSICQTKVEGALDDKAENDLVKCMRLQEDVAFQQLLTALSTC +AEHALPSLLQTITKWYDTQHSSGALYPFRRPAAQTLTSIRDAPISPKPSTSAAGRSQTLS +AATGAASAGQLPSGRDQLVRSMHVDSFSAGFASAEAAPSNTTSALSQPIETQESSAPWVS +LSNSARENMAERRDLSIDILYCQVLTSVLKQLPYHPGHDEIINKILDQAFKRFEYKENLQ +SRRNAENINLVADMYAKVVGELSQTRFGLVRQHFTSRLAQLRAKESSSYTTHSIISLLMG +MKFFRVKMHPIEEFVGYFTFLHELGQYFLEVKEKEIRHAMTCLFVEILLPVAAVVRHEVN +IPALKNFVDLLYNPAFELASKKKHALALFPMVTCLLCVGTKSFFLTNWPPFMSLCLSQLK +NRDLGQVSIESLFRLLWVYVVRIKCEKHTDTQNKLQSIVSGLFPKGSKSVLPKNVSSTVF +VKIIHFIAQEKLDFAMTEIIFDLLGVNRLQKLVLTPERMNIGLRAFLLIAHGLQQKDGEP +PMPQNQPLGVGACSVPGAPHARAGGVRRSFHGTTLDDTLCERLGIRPYLVHVRKAFEAIL +RLLDAQVCRNMMPPKQEVTIKDGDEAAPVDRKPKIDLLKTCVNCIPRLLPYEMSRTELIE +FLARVSLNVDEEIRMMAQQTMVNLIIESPAYRQKTIQAFIQFIQKYVPDTSPHQLDSCLK +TLHTLLVNWKIALQRDAAVTTSLSEKVALVEAEGFALVMLCQCRPLARRLAVHILRESRA +VLHLINQAAANSRHEDQQLTLLAAANAGGDVCCIDILDSMAPIILERVLPLLPPHERHDL +TNLSTVDFKSLAERSSPAWFCGLRQPSTWNHKPVAVPAPLLIPPSPPPHAASNPTSTAMS +CPLRFDKSPKTPSGSNLLQNGTADLLCGRNVNEHSPMSKTTASKKHHLEVSPEGRRIPPH +SPPMQPPIRPSAFCQSLLSPYILQPRLERTQLTDVWATALSVALSTRSPLSCHPAMLYTW +NIVFHRLAQVFALIDPNAQAAENRTSSLLRSTSKKAPLTERDQLLPLWHNYVTLACCIAP +SSTGVSVVDRKKPGYDVESADLLSGAVVGRRTAPKHASNSSTGSAEIAPSPNHETNATST +AEGTPQHPVCEPSAMLSPRQQQHLANSKLFIFAKEKARDLVKLIITLLRCDNSDLRESVI +CGLSRIQPGAFRDVLEDLHPILRESIDVKQKNVQRRRRKDTLRSSLIRLLALMAQNAVFQ +HDEAGITSSQGGLLPALVDFIEGTRVYLESLTEPSAIVVTMFGSSSSGTAGSSNAPAAVS +MANQVNSAGIGVGAGSVGSTSISGSVTSGVVGGAVGGSTATGAGVGANPPNASGAPTTPS +ASAATSTAPSHAPTGVDPALLTEMRLYFCVFIRDLIRHLPRERRQRLLTPSMRRNLVLLI +SRWSGFYEHIHNSRDIKWSQPLWIDHPETPSEAKYPTTAIGTDQVISGDLVLSISGVRLD +SGCQDPLISASFLDTSIWLELIWYANQSMAALVCCGSIYDTCALFNAPACQFPEVSTELA +GQQSQQPQQFSSSVVEEDANMGTVSSATAALLSTPVLGSQSLSAVPMATQTNPAGSTFLG +CLKHGGKPAPGYIFHWLIGLLLCRDAKLIISPWLWGLPVVNFGVPSTVLKGPHAKTGVRN +IRLEDNLRSIVIAAVGGRRLDSLFRQLGEETLFLLLDMNADLPGFLDHLIDRCYTGTLNV +TQALFVVITQRFIKNPRMACDQFTMLTLAMVFSEHSVPVIREHAIFLLQTLYYRFFLSPS +RELHERIHPGCKRTEGVNLSSLNESGTTAPTSTPASTVVGGASPGANNHAEFCLSALADE +LLWREIGHWMPSDVIRQFCAQHPTCTLPMISEICRRLETASTDVRCRLLKLLHYWTINIE +LVDLFARPSGFHAFGETLIESSSGDGGVVAAGVEDASTAATLEPVSSSGKTEIGDNLATT +TGPSSGSEEDAGQTEKVVVNKGNESGEKGVLCPSPAASESSSSSSTFNSSSNIDSSDCDS +DLGDTGAPDGTGVVKKRGHQQRRPSDQSYKPEINEDKQKVNELWASVPLTLRRSGWGSLK +ATEMVLNNFLYLTIRFGNKTNEALALSDLWVLLIRYRPSNLRYIMRYLIVAASLAPATLS +SHSNPNLALSSLTFVSQVNRVVNYLANEDPGAVVDVLMTELQSIDGAGLMIEPDPAPPYF +RISVASDPSGQSCGGASGTSGSVAVAENATPSDRRQRRVDGGHLPDLITFSQRDDEVYGL +FRDRELCGNQRKSMFVESNLSQGIAVASKGRPRSACGGPEQNGADGDAASPKIGEPSSTA +IVPASSSSAISRLTNRFASSATAMGRRALRTALHGGGRQTKVSTAHDQEQLQEIDVDSLD +ETTVFNEDESSVLRTAADTMPQSQNYSTEAVITARSQTLPYTAASRERYNKQAVVGMDGT +PLNRPSRLRKILSRRRTITGEKEARSSGGRRNPFRSIFRSAGIGGGSKASQALPASSSST +RLYTTSLPPNLATLQPLPLPLHSHSISNINDYRKKRASRRKRTPSRGRHLRVEAPLLATS +LLLQQPLPMPNKASVYHAPMRDWFTEPFVTNASLVFSGMWSPTGARSPLVLVLVGEILKS +HNKHRVDWRRHMPLLLLCLFLGLDHCRPLVQEESKKLLVNMLRVTCPRIDLLRLLSLKLE +IDLHSVSRAMAGFTSRSPQFCLTIDDGPCVPKFSLATPTDDPLCEVSTCPTWASCCSTES +YFPPNAAAGGGQPTVVPSAGLAHFSHSSSGTPPGGISPMTEAPAGSAVAMTRSLIVAPQS +HNRPSYAFGSTYSLMSTATLIPAGLTDQEQKRRSIIDPSTTAQMIHENTEAQFLRNTSSD +HLPLQSNATTAAAMGTAVEKSPVMTAFDQMVVATAPHDCEARHLHQVSERLKQLLIEVQD +RSVWYWEDISTARFQQATLASLRSSSFISTSANGSSSSSPPPPHRESLILLRSARFLDRF +VRCVVEAFAEAECDGRCAEAVVCLQCHHGPPHQHSSVAFFDCTVTRFAQAAFNMGITCPN +RHYASRSLQIYRALEAQLDEKSLSEVLVRLVESISDSNEEVQGYTVELFLTLEAAVEHIQ +FRGTVLPISVHPNATASQSGRVGFTRPSTVVPPSDSPRLVSSLNRRNSIEEVPVAGKPPT +PPTAMTSSNYQPTPPMVHERRHSRRSSASSLSNLIGVSVGAPSLRPSSQYGGSTASLGSP +HPGAVPPIKRPLMPPHVEAASEDADTLNAVTAPIIPHSSPLKPTLAAIGVKTLSPSKPTA +SSDARSSSVEASAPSSATGTCRLAPEEQADLLAGIFWIGVCLLDSDFEYEYLAGVRLLSR +LLPSVCMSPTPASGNRKWTPQQQQQLHPDLHEHVTKILNRLKWTTLSGTDDNEYPGLLSL +LGCSSTNLIDPACRLLVQITPIVKSPIIDPNGATGELRLYRRATNTRGGSVGGGNCNTYP +GSLPTLIITLLPMLLMSWDEDPESSALTHETITTTEAADWPVASGCSEVASSPAVVSPSP +VGSWTHRGGGEGSVPPPPPSSGLLSLVTATIVSGAVAKKAPQLRPRNPICILAAENLAEL +ALQTDGYRFTNLAVVLRLYATGSFSKDVNQWAKCVTRYLMDGCGGLGARILSFLTAFLTL +GPPCVHLPLLHFAYWFLQTVELNQADMCSRIRVFIKATSERFVNTPLWPEVTLLYQVVVS +RSATLTAAPANQNVYTLPGLDPSGSGRVLDSLAAAAAAAVPLPEAEPQRIALAGRVLEFD +TSVLQSAPLIGGGRGQASPCLTTQHRSPARTNHLVETILLDSGKSFFRVGAWKTPWNRQA +RMRGLFTNLLNCYGSQLDHLAAPRSPSVIFSQSTETLDRQLSLHSSSETTSINDASNPDD +GHFDDTSSAERAAVFHDLDTYLDAQLMNINFLDLPDGTWEDQTRCPWGVRGHSITSHAEF +HEEGGDQQQQQPEGSAGESMGGGGCGVDGGALPLTSELTVVTEPINAASVNLGPLSYSPK +PTGDVLTTSNAAVAGRQSQLSMQLSSASSCASGTGNVTLLAPMTSNRPFSSQLLVAWRSR +GTSPTRWLPDGPSSTISSSNVSPPLLSRQDGVPISRKRTLSVQPPPVSPRKRLQDRAMLG +GSLDSLPNQSDIQFTPVFKSKPILTPTKAPVPLSSAGSSISCSSLNEQEVVLMPVPPMPS +PPPAKPPRKRRHSRGSFELSVRDPPPVPLRLSRSSHMIPQALGSGGGGGGGGGFTSSSSV +EVAVDSKQLLTPSPSETGWVACMRHLKSTQWKAAEGARLTGARCDRLRLVLTGVRATFAG +MLRRSAVQAVQFANTAFCKCPPSSDLDSEIRISNLATIAEFMQDVLPVSFFAIHPDTVYL +LDDKLVRLCLRLGDVYQQWEDSLHRLSSTCTSSEAAGGRQHEIICRDLQSVLLLVITFFR +LGVEVITGVRTHLADLHILEISDCSETLETLFECLKPHIGTVIQPTEAARSRASNDLDAW +KPQCFEILHVGPDKVKLLSVEETRRALAVYTAAMKSSSPITMEDVMAILEAYCDQLWTNL +DSGVAVVFARSPNSGVKRFEAFTSFTTPTTSASSSFFTTDDFLHPDSREPLPPLQLAAQL +QRLLQS +>KAA0185233.1||27845||1630001259 KAA0185233.1 Protein furry [Fasciolopsis buski] +MGTARNLFNVPLLRLLLPWILNIELVDLIGDPDDITDENHKTARYPGSFGFGVKEDSNEN +RNTFYLKKSIPQRSTVYRPGRFVRHVCGQCHPDQSETVLADRDEDDEGDEGCLMSSGIRT +TSDLDHSDEEEDDEIEDEDNAFLPNHFIPRRDYRPEEKLSPKGVVHHWCACSRLGNVALD +SDAVNSDADNELDFSSDALGSRYRCPKAGTVPLVGPRGEADLRHGVRPRWMTDSVRKPHE +NSLRGTCDADFWFTVPPTLRTNGWGSKKATELVLNNLFYLTLHLAECPSATDYLKQLWIT +LVRYRPSNLRVILRYLIVITSVAPATLLSHAKRLVTYVAAEHPESVLEELVVELQTIDGI +GLTVERTTKLPFFRVTTSASRARDATETSNEKTATLVKSTLLPDDSHSSVTCQLVETDPS +SNSIQAVLKAVQQESAQSIDPELATLDLVASENARTLKPERKFGRNRASALPFFHSKRHV +IDEVGDGLNRLTKRRPKSATSHPSSRLEAKTCQPGKFADIAVTPTSCATSTAVDEPLNID +QSGDRTRGGSVPNEVPSIQQMVPDTEGDVELDVDSYYTNVDDTRRNLRHLDEFSPEDKYA +TLRAKDFARLLSSSIENKNPVSCAGGASEPEILAEERDPRLSIRRGTLPSTEDSRERYYQ +GEAVRCTVCHVPGKSDTCISDPLGREPIRSHLPRRFKVKARSQLRGHTRTPLHAVSLPPN +IASLAPIPLPLPSGVPSLPSLWLISMCGRTSASSGSSQRSTAKQVAGKTLFNSRVTPTMD +PIPIGKAYSQPLSMPTDGGYQAPLGTWLSEPLVIGGSVVFTGSWPVAGARSPLVLLLAGG +LTQCTSVHLDWAAHLPFLLLCVLLGMDHCRALVQEECKQLLVSLLNLACPEQDALRLLRL +ELEATFLATAYPSSSSTSARRPNYRLTLDGGPYRERFNVFAKLLPTVPMCGIPSPPPPLL +KPAPVIASNKLSLDNYSSQIVPPKKPERRFVSPTRVNREPSRTLLPATDTSSPPQVAMSS +SQTGAVQSSLYGAQLSGSTFSLISTATLIPGREDYTQVETRHPLDDLNERSDDFPQNIPP +KNLSGPHHSPDITAGNFTRSYALRTKSGSAPKSNRIPHKVMTDPGAKPAMERKALVDSKP +LLDAIDELRELLLLSSGQALWTWEDFNLQRFQYLTVQNLMRSFYGTAWHNKSVNDNLIPR +NDHCLPELTDQSTSSTPRVLVEDLVRIVARVLALSYSDCSEDAENCLLCHHGPPHSHSTR +HHRSGTDHRSLSASTNHCMVARLSQCALNMGLSCPNRHYASRSLQIFRVLGAHLDSKTLS +KLVARLGETIADSNEELQGYVAELFLTAEGAIQHLRTKSDCLTEVAVIPPQTSYPRTAPT +SPNCIGRGINADSNHAALVIVSDRRRQQQRHSTSAGLTTNSWARPIGDLSPRLPSRLLDD +VGSAKTSGDTIHPSNSTPEEERPLKRNSVCRLSVDEQMDLVCGIFWTAVFLLESNFEHEY +LAGVRLLSHLVPSVIGATGPGQTRAAQNNCPSLGVRAEKMLNQMHFNPPFPGLLSLAIKG +CSSAQLVDPACRLLVSLIPFLSSPLVVPPGRHYQQFAQLSYPITLLTLMPLLLTAWDEDP +ATLSTTFPEPTLSDLQQQPSVLQGGFLGRDVCCLTNAIVTPRALGSWTMVGATPRSASAN +ASTAVSSSQTPALRLARADSIGTGMSNAFGAVGSGWNLSNCGSSNFSASILPTALRPRNP +VCIQAADALAQAALQLDATHLNNLALILRLYANGAFSKDVDQWAKCVICYLLEGYAQYTS +HLLRHLTTLITTGPTCFQMPLLKLACLLLEQVDLTNADLVCTLQHFIITVTGQFLGTVCW +PEITRILQVVVSRSAVLTAVSPPSAYTLAGLDPSGSGRVLDLTAAAAAVAVPLPESEPPR +LELAGPVVDCQFNMLAEAPLLAPRFAFANTSGVNGGRATRGGLSDQEQPETPVDSLTTGP +FIRRGEPSKIMDSDLGELFASAASSWNKPGACQARVRERLYRLIGCYGIPEEHRISVPRS +PSVIFSQSTETLDPQLSVHSSSETTSMIDVSNSALLPWIDLSCEDEPRRPWGVRGQSITC +HTDFTEDNIIEQVTDLLPSMRIPLEQSTIRATVSPPKTARKRKTHTHPRAVAVGVPTDAP +NIVSESTLEWKQSEFGCSEPGKRLADSVQSRSLADQTMLQFTPIHHRHRDPEEPDTEEDE +DDDDDEEEENSKTNLVRYPIGFSRNAPRETADGFGETTTNAPLSSMSVSLYDPISPMHAG +RRGRTSSGTNLLIDQMCLSPQNPPVVDATSELCTKTPVKKLMSDALACSESSVVNDPTEL +ASRDNTSVESPTAFMGGRFARPDASHMPSDQFRSSSQDTDPNRSLSPSCSSPVFKYSRIV +KRPDTLIPTQANLNTSSISLQQRTPFMRAKVQTFAKYGKLPARFASPSPAVSCIEINYQL +SVHRSLSTSNLFSVQNRRKFEVTGSPESVKATVISIPPVSSSSGRLQSPVLKFHKNFTNK +RQSLSAEDLPWLIKQPKVSFLIPTSRMEVTDPDVFVIQKEPICVRKSLALSSSQSFTGKD +SGAFLHSSQTDSLSESKPPRSPLSLTRLELTRSSNSLPEPIGSKSQLAATTQRSPASITP +VVYHKLMTRTSLFSSVTYPWTERVAIERTWMTKLKKIVSDELVDQVTPLLSDLSTVFTAL +AVRSQNGVRASLNVSGFSWDEASETSRLISVSELLTTTVRPPYLFYPVKSNELTEREKST +IQLGMDMLSESYEETDNAINQLAKLAFERDGIAVQRGCINLLFKLVSFLQTTHVVAEQLY +RACPPERVARRLSERLQNALDQLASSMSQYNSGRTSSQNDSADTSQCSPYPARQTEFTSH +LIDRMNTLLRNLSELTETGDPEPPPKQLAAQFFELIDLYHSQFAPDSGRLLTVDCVLGVF +SLYVSEYFAHVAHRDPDPAVVYLVLPSVGLGRTGSPNPLDQCHYLKHQLGTLG +>KAA0194641.1||27845||1630007430 KAA0194641.1 Protein furry [Fasciolopsis buski] +MTSSCIDVIGGRDNQRPSNNVPVPTNALNKSDKASQSVTESTYTSKSVYSVSSEMRVLAE +RRDLAIDIIFCQVLLSLLRQLSYHPGHNHLIEMILDQSFRRFKYREDLQPQNSENVNLVA +DLYAEIVGVLSQSRFALVRSRFTRHLNELRAKESSPNVKPSIVSLIMGMKFFRVKMHPIE +DFVNCFTFLQELGQYFLEVKEPEIKHVLSDLFVEILLPVAAVARQEVNIPALKNFVENLY +PTSLELANKKKHIPVRLSFIMPPS +>KAA0194642.1||27845||1630007431 KAA0194642.1 Protein furry [Fasciolopsis buski] +MTSSCIDVIGGRDNQRPSNNVPVPTNALNKSDKASQSVTESTYTSKSVYSVSSEMRVLAE +RRDLAIDIIFCQVLLSLLRQLSYHPGHNHLIEMILDQSFRRFKYREDLQPQNSENVNLVA +DLYAEIVGVLSQSRFALVRSRFTRHLNELRAKESSPNVKPSIVSLIMGMKFFRVKMHPIE +DFVNCFTFLQELGQYFLEVKEPEIKHVLSDLFVEILLPVAAVARQEVNIPALKNFVENLY +PTSLELANKKKHIPVRLSFIMPPS +>KAA0198307.1||27845||1630009939 KAA0198307.1 Protein furry [Fasciolopsis buski] +MNIGLCAFLLIAYGLQQKAGAPPMPQQCIDGATSGVTSAGCGGAIVSAVTGAGAGAGGVT +RQTVIKRSFVGTNLNDALGHNLGIQNYLAPIRRAFESILRQLDTQVCRVMILPKQEVSQK +EVEELMTAERKPKLDLLKTCVACIPRLLPNDMSQPELLELLAKVCLHVDEDLRKMAQQAM +ANLIVELPAFRVKTIQVFIQFIQKNVPDTAPQKLDGCLKTLFHLLNNWKLALQKDGAVSP +NVSDKSVLYKAEGFALVMLCHCRSITRRLSVHILRKCRALLRLINAATSVGDASACGRAN +DGGDGGGKELCCIDVLDRLVPQLLERVLPLIPVHERSAFSNNSAHLDFSMLTERFSPVWL +NGSAPIPSYPAVVMPANFVSNQYSSLMPMNDLDRGQVKDMSEPLTRRTQFSVYPMDSGAG +VGKVNSNSNTNNNENNNNNSNNNNNKEGTDAVLKAMASSLYDHTTSPAHPPQRDSRRVDQ +QNAGHAATFSHSGNSGLFRRASQNQPHHPHHPVQHAQQAYIVQPVPERVILNDVWATCLS +IAFSPDNLVTACPMPIKYAWSVLYQRLSQLFPIIDPSAQIVENRASSILRSSSKKPTMER +EQFFPLWHNYTVLGCCIAPNSAGSCLSTSRATRYQTASPVEVGASGPSTGARVGGRYPSP +SSVPNADPSESNAVPRSSLVSPNSSSALSANIASETKSTPSSVPANAPTPTPTSPSSPTG +TRETARDLVRLLVPLLRCEQAEIRDSAIGGLGRINPLAFRESNCLTGQGCLISQLSDYLD +GMRLYFESVADQATNPTCPVYFGSGMGTSISGPSNMTVVSPQGGSTTQVANSVLGPSNVS +VGGVVVGSNVGTAGSTGATAPSGVGMSSSVSAVSASTATAVTTAAANPVLTEAHLLVEMR +LHLCIFLFEMIRQLPKDKRTQLLPTAMRHQLFLLISRWSGYHDHVMGLCPDSDTFSSSVG +NLRMNIGQTSVGVNSCHLNETYGPSGYSLDPLVDSAFQSGSSPTSSSAVSSSGNVMTEST +SSAVLSNTGSASGHGVESVSDQATASMHSVPIQDSWELRLWADLMWLANQAMAALACCGP +IYDPHALFTDHVIGQSNSSLNGEFSSSGSNPNPGYILRWVSGLLISRDVVLSSSPWLWHC +PVVDGGLCHVNLSPIGTSGCGVFNGASILTGCTGRERRLDSVRCYSILKLR +>KAG5444725.1||79923||1648003785 KAG5444725.1 Protein furry, partial [Clonorchis sinensis] +FALVRTRFMWHLNELRSKENSPNVRPSIVSLIMGMKFFRVKMHPIEDFVNFFTFLQELGQ +YFLEVKEPEIKHVLSDLFVEILLPVAAVARQEVNIPALKQFVELLYPTSLELAGKKKHVP +ALFPLVTCLLCVGTKSFFLTHWTNFLTICLSQLKSRTPKVALVSLQSLSCLVWVYIVRIG +GEKHLETQTKLHHIVNSLFPKNQKFVVPKDAPVNIFVRIIQFIAHEKLEFAIREIIIDRL +GVNGLQKNLYMPERMNIGLCAFLLIAHGLQQKEGAPPMPQPCLGAGGFRQAVIKRSFHGT +NLNETLGHRLGIQNYLLPIRRAFELILRQLDTQVCRTMMLSKLDVSQKEFEELMSAERKP +KMDLLKTCVACIPRLLPNDMTKPELLELLAKVCLHLDEDVRNMAQQAMANLIVELPAFRV +KTIQVFIQFIQKNVPDTSPHQLDSSLKTLFHLLNNWNLALQKDGAVSPNITEKTALHETE +GFALVMLCHCRTITRRLALHILRKCRSLLSLINTATCDPNARQPREELCCIDVLDQSVPA +ILERVLPLIPLHERHLFSNTNGLDFSVFAERSSPVWLSGPSPVPPCPPVVIPTSFVSPQH +SGLMPISNLSSTTTRDSSTTEHDDQKHTSEALTRNSVCGQCSMFTDGSHPGALGVTGRQQ +DEQLQSQQCTYKASGTPEQSCTLPGDQTTTAAHVARRPSQRQPQQYSSAQYTQAYIIQPF +QERILLGDVWGTCLSCACSPERLLTCSPQAIRYAWNVLFQRLSTLFPLIDPSAQIAENRA +SSLLRSSSKKPTNEREQLFPLWHNYAVLGCCIAPSSTGSRVSKPRENRYDSSVDFTPPRA +TPQPTASASQPSNSICESPEPRVSSAQSNSGSPATQVGTPLRPTSTNSMDTKFTSPIVTR +ETARDLVRLLVPLLRCEQPEIRDSTVGALGRISPVAFKDALEELNPLLKESVDRKQENVR +RRKRRDGLRASLIRVLALMSQNGVFAYPESNALTPQGCLVSQLTDYLDGMRIYLDSVADQ +AINPTAGACVVSGSGSMVIPAATTGSASTGSLLVPAVVGGSASTVCTPYSAPAAPLAAVT +SSTSLASLASTESHVLVEIRLHFSIFILEVIRQLPKDKRAQLLPNVMRHQLFLLISHWSG +YHDHVLGVHSELGSSDVSVFGTAGTALSKQGPSTTSNLGMSPVSSGPFTGPDSSVPVCFS +VDPSQSNLDTAMHTALTTQVSSANLLPTGESAAGVASGCRAPSGSQHNITSQGYSSSNTL +TATDQMIRRSAVATQDIWEQRLWIDLLWFANQAMAALICSGPIYDHQALFGELTDLYGEH +SATGEKTTAPHPGYILRWISRLLLARDPILDSSPWLWHCPVVDTSFGYSALMSTRSSSCS +ASAIQTRTTLVGGELRLDALLRQLGEETLVLLLDRNQNLPFLLSWVVDQCYTNNNISSST +ACFLCLCRALSNIPDFNCDFVSLLVLAFVFLDHPQKTLSDRAFHLLRVLYHRFILQPGSV +IHERYHSPCDQDLDLSASSRSTCSSSVCTQLKINVHFWHSIRHWAPSEIVRQFAAQHPDL +TLTIFSEITRRLETCRECLRSGLLRLLVPWIINIELVDLIGDTSVTKLDKAGEELCWETL +ELDPVNLRKPADSVFQQIAPHADMIDAVEDDSASSDADIVSDEELLPESTRKKSHLIGRR +STEGRPGTYGRGRQHVDFFGSEEDSDNVSGDLLKSRHTIPSSALRHRVRKADTVPLPKSN +RARRTPDTGQKSTTGLSGACEEFWYSVPPTLRSTGWGSKQTTELVLNNLFYLTLRFAECP +TTTESLKHLWIVLIRHRPSNLRALLRYVIVLTSVAPATLLAHAKRLITYLATEQAESVVE +ELMVEIQTIDGIGLVVERTTVFPFFRISVAASSLGRPNETTDVRRPADSAVTVMANQTLV +KTRSNTSPGDGRQHPTDQTSTFPPTVLQSMSREFVDQMDAELVAINLESTGGAKPTGTIS +DERILDPSAKPCTEINYRMRSQASGQRSELTAGRSTHETNVDLPDPSLAFPTQIAGNRPL +SPSLLYEPDGIASVRPEALEKDVNQDSPKIRFSPEDIYATLRAKDVARVLSGSNAGESDG +GSEPDRTPFRTEAQLRSGTLPRTEDSRERYFNQAGQSRQKTTLGQADSATRTFVRHSKRV +KSKSKSHMRPADLVGGTPKVPHQTVSLPPSLAGLAPLPIPLPSAIPSLPSLKLFSSIGAE +KQNANDSGLSSSAATGKLSRTESQKVEFTLDATAIEKQAQHQQHVQPLAMPLSGGYQAPL +GCWLCEPLVVGGSVVFTGSWPVAGARAPLVLLLAGGLTHCQMVQVDWSPHIPLMILCALL +GMDHCRALVQEECKLLLVSLLNLVCPDQDTLRLLRLELEGGMLARAYPSALPGPRQPRFR +LALDGGPYAETFGCLSSPVAMTEAIPQTGSQPRYSPTEGARATPPRKPNRRSFSERLSLS +PPNPIIQVSVGEPDGLPSHSPPIITSVPPSSTLLVQKNGWSGSAYSLLSTDTLIPGPEEG +GVRTRPDSFVISKDAPQLCPSASAAPVSSVKSRLTTTRTTPPRTSRHSIGSSQGIMSTVV +EEADSPVVKTDAKLLQTAVHDLREVLLSTLGQAVWTWDEYRFQRAHTSPVVYLTQHHHSR +TTECDTDITSECSDKRSLLARLVQLVARILALANTEPSDAEGCLLCHHGPPHEHAFAHRL +KHSSDCRTATSPVTNYCVVARLSQISLNMGLSCPNRHYASRCLQIFRILGAHLDRKTLSH +LLSRLGETVSDANEELQDYVAELFLTLEAAIAHVKTKSNSLLVGRTSKQGDSVSGPWLDK +QTRTAPTSPHSVGGHVPNVDLTISDRRRSQRHSTSTNYCILDGPSSWFKPQYTDEPKQES +EPLLVTRESSRLNHILGSEESASRPRTPRLMVCRLPKDEQVDLVCGIFWTGVFLLESDFE +HEYIAGLRILTTLVPSVCADAVAEDNERFSSRALSAVPICLPVRAEQIRTQLHLSSPVAG +VLNLAIKGCSSASLVDPACQLLVCLIPFLNSPLVVSPSKSHLTSQLSFPIVLITLLPMLL +TAWDEDPATAGTSGLLETTVEQTNVLQGGFLGRGVCTNTNATPRALGSWVSSATTRSATV +ATHISSHSSRLGRPDSLSHFPATGGFGTISAVTPGPYCPSTSSTCIHKSSQPVPLRPKNP +ICIQAADALAQKALQLDPSHLANLALILRLYASGTFSKDVDQWAKCVVCYLLEGYPKYAA +YLLQHISTLLTAGPLCLKTPLLKIAYLFLQQVELTSPELSNTVQHFISSITSHFLGTEFW +SEVTRVIQIVVSRSAVLSAAPPPCVYTLSGLDPSGSGRVLDFAAAAAAVAVPLPESEPLR +MELAGPVLDFTFNTLYEAPLVAAHFAPATFSATTEEICKSSGVHGVDIGSSKKTDFFRLS +DSGLTDLFSVAASSWNKAGSRQLRLRDRLFRLVACYGLPSNRRFAAPRSPSVIFSQSTET +LDPQLSVHSSSETASMVDMSNSDDIRLDETSSMEQAAVFRDLDTFLDAQLMNINFLGVPD +GRLASASASASEDEPRRPWGVRGQSITCHQEFSDDGVEQVADMFPTVRAPLSKSFTQHSS +DEPLPWTNKRRSFPASYSTEVHVAPESDEPDWVPHAPCCTSSGEPWQHALASSTVGAEGI +PTQHPPLRNAQVDAYATVRCVTENNNLILPSFPNNGDQPGVEVVTNTHLATVKRLSFDRI +VEPSTPSLIRTPSRDDDAFILDRPASPVDKIDLTRTRQVRFERTSKRLSPTLSHHSVLSD +PIKTYPSLALLDTNLSQPKMGSSASLPQMLISELKQPSKSAGPEISSAFEPICHSGAQDI +SSTLSVHAELSSSPSQTSLTQDTPVSSRTNHEFDAPHTSSSTSILLAPNDSAAENVLKLA +YSRPKPLRSPIKRLYATGLPSRISAPPLVKIHKAFTIKRHSQSAEDLPQLAKPKVSFLVP +GATDEQPSETSQLLSHSHSLKDLPVTLSSDTIIKSQFAEDGSSESNIHTALNYYNQTPEM +QQIVSRDQPSGSSCSIASITDKVIVVSDAPPGHSWIELLNGEKDWITMASGPLAIPPVPA +QLDVINRLSSVCGCLASRCYACVVTASNLSGSTWEDEQNEFRKFISAAELIVNGLRPPYF +FSRLSQDGLDEHLRSTLDSVSVRLADTYNGVQSVLYRISKVLCARNLQATLEILAQLLER +MVEFLKLACMTTHQLSSALEQSVPSQSDLLERIDFFVSRVVPHLVESPILYPVPPAINAH +GCVEDDNCIILKRMVEYFDCVNVKTVDTIASELFGSLVALYRRRWKYFGTRRILAPVVDC +AIGILDLYVRYKLGTLDVPGPKVIYVTLPVMDSPNDDDSSVLTACTRLLQRLSSDIN +>TGZ62726.1||147828||1741007467 TGZ62726.1 hypothetical protein CRM22_007302 [Opisthorchis felineus] +MSTFKPGELAVCTLLRQFTALAKCKIEQALEEKQEHNLMKSMRLSEDIAFDQLLDAFYVS +AEFALPSLLSTVIQWYQSQHSSGPQYAAHRRSAQLSNGTPKSTEAEMASMTNSCFVVASS +DRDSQLAFSMGKPEQTIKSACDARVGVLKSICMNPTEVRILAERRDLAIDIIFCQVLLSI +LRQLPYHPGHNDQVEVILEQSFRRFNYRQDIQPQNSENVNLVADMYAEIVGLLSQTRFAL +VRTRFMWHLNELRSKENSPNVRPSIVSLIMGMKFFRVKMHPIEDFVNFFTFLQELGQYFL +EVKEPEIKHVLSDLFVEILLPVAAVARQEVNIPALKQFVELLYPTSLELAGKKKHVPALF +PLVTCLLCVGTKSFFLTHWTNFLTICLSQLKSRTPKVALVSLQSLSCLVWVYIVRIGGEK +HLETQTKLHHIVNSLFPKNQKFVVPKDAPVNIFVRIIQFIAHEKLEFAIREIIIDRLGVN +GLQKNLYMPERMNIGLCAFLLIAHGLQQKEGAPPMPQPCLGAGGFRQAVIKRSFHGTNLN +ETLGHRLGIQNYLLPIRRAFELILRQLDTQVCRTMMLSKLDVSQKEFEELMSAERKPKMD +LLKTCVACIPRLLPNDMTKPELLELLAKVCLHLDEDVRNMAQQAMANLIVELPAFRVKTI +QVFIQFIQKNVPDTSPHQLDSSLKTLFHLLNNWNLALQKDGAVSPNITEKAALHETEGFA +LVMLCHCRTITRRLALHILRKCRSLLSLINAATCDPNARQPREEVCCIDVLDQSVPAILD +RVLPLIPLHERHLFSNTNGLDFSVFAERSSPVWLSGPSPVPPCPPVVIPTSFVSPQHSGL +MPISNLSSTTTRDSSATERDDQKHTSEALTRNSVCGQCSMFTDGSHPGALGVTGRQQDEQ +LQPQQCTYKASSNPEQSCTLPGDQTTAAAHVARRPSQRQPQQYSSAQYTQAYIIQPFQER +ILLGDVWGTCLSCACSPERLLTCSPQAIRYAWNVLFQRLSTLFPLIDPSAQIAENRASSL +LRSSSKKPTNEREQLFPLWHNYAVLGCCIAPSSTGLRVSKPRDNRYDSSVDFTPPRATPQ +FTASASQPSNSICESPEPRFSSAQSNSGIPASQVGTPLRPTSTNSLDTKFTSPTVTRETA +RDLVRLLVPLLRCEQPEIRDSTVGALGRISPAAFKDALEELNPLLKESVDRKQENVRRRK +RRDGLRASLIRVLALMSQNGVFAYPESNALTPQGCLVSQLTDYLDGMRTYLDSVADQAIN +PTAGACVVSGSGSMVIPATTTGSVSTGSLLVPAVVGGTASTVCTPYSAPTAPLAPVTSNT +SLASLASTESHVLVEIRLHFSIFILEVIRQLPKDKRAQLLPNVMRHQLFILISHWSGYHD +HVLGVHSELGSSDVSVFGTAGTALSKQGPSTTSSLGMSPVSSGPFTGPDSSVPVCFSVDP +SQSNLDPAMHTALTTQASSANLLPTGESAAGVASGCRAHSGSQHNITSQGYSSSNTITAT +DQMIRRSAAATQDIWEQRLWIDLLWFANQAMAALICSGPIYDHQALFGELTDLYGEHSAT +GEKTMAPHPGYILRWVSRLLLARDPILDSSPWLWHCPVVDTSFGYSALMSTRSSSCSASA +IQTRTTLVGGELRLDALLRQLGEETLVLLLDRNQNLPFLLSWVVDQCYTSNNISSSTACF +LCLCRALSNIPDFSCDFVSLLVLAFVFLDHPQKTLSDRAFHLLRVLYHRFILQPGSVIHE +RYHSPCDQDLDLSASSRSTCSSTVCAQLKINVHFWHSIRHWAPSEIVRQFAAQHPDLTLT +IFSEITRRLETCRECLRSALLRLLVPWIINIELVDLIGDTSVTKLDKVGEELCWETLELD +PVNSRKPGDGVFQQIAHHADMIDAVEGDSASSDADIVSDEELLPESTRKKSHLIGRRPTD +GRPGTYGRGRQHVDFFGSEEDSDNVSADLLKSRHTIPPSTLRHRVRKADTVPLPKSNRAR +RTPDIAQKSTAGPSGACEEFWYSVPPTLRSTGWGSKQTTELVLNNLFYLTLRFAECPTTT +ESLKHLWIVLIRHRPSNLRALLRYIIVLTSVAPATLLAHAKRLITYLASEQAESVVDELI +VEIQTIDGIGLVVERTTVFPFFRISVAASSVGRPNETTDVRRPADSAVTVMANQTLVKSG +SNTSPADGRQHPTDQISTFPPTVLQSMSREFVDQMDAELVAINLESTCGAKPTSTIRDER +VFDPSTKPYTESNYCMSSQASGQPPESTAGRGTHEMSMDLPDPSLAFPTQIAGNRPHSPN +LLHESDGITSVRPEALEKDMNQDSPKARFSPEDIYATLRAKDVARVLSGSNAGESDGGSE +PDRTPFRTEAQLRSGTLPRTEDSRERYFNQAGQSRQKITLGQADSATRTFVRHSKRVKSK +SKSHMRPADLVGGTPKVPHQTVSLPPSLAGLAPLPIPLPSAIPSLPSLKLFSSIGAEKQN +PNDSGLSSSAAIGKLSRAESQKAEFTLDATAIEKQALHVQPLAMPLSGGYQAPLGCWLCE +PLVVGGSVVFTGSWPVAGARAPLVLLLAGGLTHCQMVQVDWSPHIPLMILCALLGMDHCR +ALVQEECKLLLVSLLNLVCPDQDTLRLLRMELEGGMLARAYPSALPGPRRPRFRLTLDGG +PYAETFGCLSSPVPMAEDIPQTSFQPRYSPTEGARATPPRKSNRRSFSERLSLSPPNPTI +QVSVGEPDGLPSHSPPIITSVPPSSTLLVQKNGWSGSAYSLLSTDTLIPGPEESGARTRP +DGFVITKDAPQLCPSASAAPVSSVKSRLTTARTTPPRTSRHSIGSSQVMMSTVVEEADSP +VVTTDAKLLQAAVYDLREVLLSTLGQAVWTWDEYRFQRAHTSPVVYLTQQHHSRTTECDT +DITSEFSDKRSLLARLVQLVARILALANTEPSDAESCLLCHHGPPHEHAFAHRLKHSSDC +RTATSPVTNYCVVARLSQISLNMGLSCPNRHYASRCLQIFRILGAHLDRKTLSHLLSRLG +ETVSDANEELQDYVAELFLTLEAAIAHVKTKSNSLLVGRTSKQGDSVSGPWPDKQTRTAP +TSPRSVGGHVPNVDLTISDRRRSQRHSTSTNYCILDGPSSWFKPQYTDEPKQESETLLVT +HESSRLNHILGSEESASRPRTPRLVVCRLPKDEQVDLVCGIFWTGVFLLESDFEHEYIAG +LRILTTLVPSVCADAVAEDNERFSSRALSAVPICLPTRAEQIRTQLHLSSPVAGVLNLAI +KGCSSASLVDPACQLLVCLIPFLNSPLVVSPSKSHLTSQLSFPIVLITLLPMLLTAWDED +PATAGPSGLLETTVEQTNVLQGGFLGRGVCTNTNATPRALGSWVSSATTRSATVATHISH +SSRLGRPDSFSHFPATGGFGTISAVTPGPYCPSTSSTCIHKSLQPVPLRPKNPICIQAAD +ALAQRALQLDPSHLANLALILRLYASGTFSKDVDQWAKCVVCYLLEGYPKYAAYLLQHIS +TLLTAGPLCLKTPLLKIAYLFLQQVELTSPELSNTVQHFISSITSHFLGTEFWSEVTRVI +QIVVSRSAVLSAAPPPCVYKLSGLDPSGSGRVLDFAAAAAAVAVPLPESEPLRMELAGPV +LDFTFNTLYEAPLVAAHFAPATFSATTEEICKSSGVHGVDIGSSKKTDFFRLSDSGLTDL +FSVAASSWNKAGSRQLRLRDRLFRLVACYGLPSNRRFAAPRSPSVIFSQSTETLDPQLSV +HSSSETASMVDMSNSDDIRLDETSSMEQAAVFRDLDTFLDAQLMNINFLGVPDGRLASAS +ASASEDEPRRPWGVRGQSITCHQEFSDDGVEQAADMFPTVRAPLSKSFTQHSSDEPLPWT +NKRRSFPASYSTEVQVAPGSDEPDWVPHAPCYTSSGEPWQHALASSTVDAEGIPTQHPPL +RNAQVDAYATVRCVTEDNNLILPSFPNNGDQPGVEIVTNTHLATVKRLSFERIVEPSTPS +LIRTPSRDDDAFILDQPASPVDKIDLTRIRQVRFERTSKPLSPTLSHHSVLSDPIKTYTS +LAVLDTNLSQPKMGSSASLPQMLISELKQPSKSAGCEISSPFEPICHSGAQDISSTLSVH +AELSSSPSQTSLTQDTPVSSRTNHELDTPHRSLSTSILLTPNDYAAENVLKLAYSRPKPL +RSPIKRLYATGLPSRISAPPLVKIHKAFTIKRHSQSAEDLPQLAQPKVSFLIPGEADEQP +SETSQLLSHSHSLKDLPVTLSSDAIIKSQFAEDGSSESNIHTGLNYYNQPPAMQQIVSRD +QPSGSSCSIASITDKVILVSDAPPGHSWIELLDGEKDWITMASGPLAIPPVPAQIDVINR +LSSVCGCLASRCYACVVTASNLSGSTWEDEQNEFRKFISAAELIVNGLRPPYFFSRLSQD +SLDEHLRSILDSVSVRLADTYNGVQSMLHRMSKVLCAQNLQATLEMLAQLLERMVEFLKL +ACTTTQQLPSALEQSIPSQGDLLERIVFFVSRVVPHLVESPILYPVPPAINAHGCVEDDN +CIILKRMDEYFDCVNVKTVDTIASELFGSLVALYRRRWKYFGTRRILAPVVDCAIGILDL +YVRYKLRTLDVPGPTVIHVTLPAMGSPNDGDSSVLTACTRLLQRLSSDIN +>VDM18555.1||6205||1763001805 VDM18555.1 unnamed protein product [Hydatigera taeniaeformis] +MLRAPIFPNFRDAKWGQPPWTDHLSGSLTESKYANLPLHPPPPPLPSVGMDQVISGDLVL +SISGVHLDSTPQDPFIAASFLDNSIWLELLWYANQSIAALVCCGAIYDTLALFTTPTATH +RVVESSDTALSGSGVGNHFHQISNNTSVTACTGVATSTPSSNATSSTTMLASGVMAEEEC +GPLTLSTIATNSLVSTPAQALNSVSLTTPIGPGFSSSEGQPAPGYIFHWLKGLLLCQDGK +LSISPWLWGLPVVNFGVCSTALKGPHAKTGARNIRLEDSLRSIVIAAAAGRRLDSLFRQL +GEETLTLLLDMNCDLPGLLEILVDQCYTGSLNVIQAFFVIITQHFIKNPKTHCDKFTMLT +LAMVFCEHTVPVIRENAMFLLQTLYYRFILLPVRELHQRMHPECPKMVTSTPVTSISGEL +NDSHTGMCLSALADELLWREIGHWKPCDVLRQFCAQHPTYTLPMVSEICRRLATASSEVR +CRLINLLHYWTINIELVDLFTQGSSSKNNTPCGDGFIENYSGCPEDASTVATLEPISPSG +RTDAVTTSEPSSGSDVEIEGESVNKQNSSISSNSSVSSSPASSISSSDSSSSCTSNSTSI +STDSSNIDLGECGSGAQVTSNLMELRKSRRDHKPNHRLHRNHEETRLRNQRRILEHSLKP +VLDGEGQKSSELWASVPLTLRRSGYGCLKATEMVLNNFFYLTIRFANEPNEASVLGDLWV +LLIRYRPANLQFILRYLIVVASLAPATLCSHVNRVVSFLTNEDPSSVVDVLMTELQTIDG +AGLMIEPLPFPPFFHIAFLSDLIEHSFTAPTGVTNAATTTTGSALTVTATEDRQRRNVIP +ETITFSQRSSVMTVDPDCQSVSARPVSSCSGGWQLNGGDDETAIVSLKSTVEASPLANTT +SAISRLTNRFASSATAMGRRALRTALHPGGGRQSKTSVTLDQGQPQELDIDSLDGEVEEE +CRGARTTADTMPTPQNQNTTTAEALITAKSQTLPYTAASRERYNKQAIVSMDGTPLSRPS +RLRKILSRRRAAAGEKGGSGGGRRNPFRSMFRGSGGGGGGGGSGGRGDAAKISEIVAKVS +DSARLYTTSLPPNLASLQPLPLPLHSHSISHINDYRRKRKGGRHRCSSPRNLRRHHGNAH +GDGDVNQRAKVPLSDTSLLLQQPLPMPKEDNVYHAPLRDWFTEPFVTNGSLVFSGMWSPT +GARSPLVLVLVGEILKSHNKHRVAWRKHMPLLLLCLFLGLDHCRPLVQEESKQLLVNMLR +VICPRIDLLRLLSLQLEIDSQWISHAMHNFSLRGQQFCLTLDDGPSVPKFYLPAPTDAPL +TEVSNCPIWSTYCVPNSSSIGALAVTGTPAAPSGFGTSATPPTGLSPLTDAPPLIATTST +TSGGGGILSRSSLVAHQPTASRPSYVFGSTYSLMSTATLIPAGLSMEQESKRRSVVLNDL +PPPPSSSQPPTSSAHTVGEAGDKSAAMSMDEMAVVTAPFDCEAKHLHLAAERIGQLLEEV +QDRSIWTWEDITPNRFQQATLVTLRSILPPHPSTSPQLRKSFLLLRSACFLDRFVRCVAE +AFAEAEAGCRCEEAASCLCCHHGDPHRHPNDGGVDETNTENLGGGGPSSDGSAFFLFLRS +GCTITRFAQAAFNMGITCPNRHYASRSLQIYRALDAQLDEKSLSEVLVRLAESISDTSEE +LQSYMVELFLTLEAAVGHIQCRGTVLSPFIISNGQFAARSRSSAPNSPLVTSKPPQPPQS +ASPLLLTPQAPPPTPPVHERRHSRRGSSSSLSSLLGYPASIVGTAVVPTPSLVPIQQNTG +LTVPPIKRPLMPPHAEAVSEETDVALASAPSTSALGPVKPTPMPPFPSNAYRSSNNTGVV +PVATNDARWD +>VDM18614.1||6205||1763001864 VDM18614.1 unnamed protein product [Hydatigera taeniaeformis] +MLYSGHVCRVYVVRIKCEKHADTQNKLLSIVNGLFPKGSKSVLPKNVSSTVFVKIIHFIA +QEKLDFAMTEIIFDLLGVNRLQKLRMNIGLRAFLLIAHGLQQKDGEPPMPQNQSLAVCGV +GGVNAYPSVHSRGPGNVRRSFHGTTLDDALCERLGIRPYLVPVRKAFEAILRLLDTFQFD +MKEMRRQRHFSPFRSGDRKPKIDLLKTCVNCIPRLLPYEMSRTELIELLARVSLNVDEEI +RMMAQQTMVNLIIESPAYRQPFIQFIQKYVPDTAPHQLDSCLKTLHTLLVNWKIALQRVC +VSNSFSTSTSTIKIIW +>VDM18652.1||6205||1763001902 VDM18652.1 unnamed protein product [Hydatigera taeniaeformis] +MLHFGYWFLQTVELNQSEMGSRIRAFITATSERFVNTPLWPEVTLLYQVVVARSAVLTAA +PSNPEIYSLPGLDPSGSGRVLDSLAAAAAAAVPLPEAEPQRIALAGRVLDFDSSVLQSAP +LIAGGRGQASPRLGAISVTSQSQHRSPARASHLVEICGLSSSSLSSFFRLGAWKTPWNRQ +ARLRGLFANLLSCYGSELDHLTAPRSPSVIFSQSTETLDRQLSMHSSSETTSINDASNPG +NFLDDGQFDDTSSAERAAVFHDLDTYLDAQLMNINFLDLPDTAWEDQSRCPWGVRGHSIT +SHTEFHEEGDDQQQSESQTQSQKQPDQVNQAPNPFGVSEDIGFPNIAVATEEPLVSPPSI +TSQHQSQHLPEGEELEVDVEEEEDDEYEEEEDEELERGGGGVGGNFLAVGASTLPEAATE +RQSQLSLQLSVSSSAVPAAVSDSTPNAALLAPSTLHRKFNSQLLIAWTSRDDSPVKWLTD +APPAADVNVVNVADISSAMQTYQGTQSIPRKLTLPMHPRAVCSRRRLQALTTFGGSLESL +PSQPNVQSTTAIKPRSCAVPRSFQQSSSAFSFAKVPAITSNGMTDVDATGPPIKPPRRHR +RFRQSLELGTQQQSDLSRRISRSSNALTFSSEDAKAFSTIGTTPQQLLIPVETPSETAWM +ACQRQFKSFQQSSTGVVTGSAQADRLHLLLTSLRSTFSGMLRRTTLQAVKLANLAFCRCP +PGSDLDPEIRISNLIKIADAMGDTLPLPFFALHPNCVALIDEHSVSLCLELGTSYEEWED +AMRQLAVTCASSGTTQWLQHESICRDLQEVLRRLLLFFRSSTDLLTSTYRQLVNPPLSVT +DFTASGVEPLFARLRPYILAPPPSLPPNSQEIGGMEAWRARCARLLLWPPYGSLRSEEVD +AKRALAIYAAAMKSKAPISLDDVMTILEACCEHLWNGMNCDSGVALVFAQGPTIELHTSE +AFASATSTVLAPTPFFTTDDLLTPDGQATLSPLELVDRLLRLLEA +>VDM21492.1||6205||1763002898 VDM21492.1 unnamed protein product [Hydatigera taeniaeformis] +MIGTSPGELVLHSLLKQFASICQCKVEGAIDDKVDNDLVKCMRLQEDTAFQQLLAALHTC +AEHALPCLLQTINKWYDTQHSSGALYPFRRVTSKTLGTRCHTLSAATGHAPSLAGGHDLL +IRSMHVEGSSAVTGTGADVTPGTTAHPGGAVAVAGESGNIVLPLSATFATPQESNTIKHG +LSTSVRENMAERRDLCIDILYCQALTSVLKQLPYHPGHDEIINRILDRSFKHFEYKENLQ +AKPNAENINTVADMYAKVVGELSQTRFNLVRQHFSTRLEHLRAKESNPHTMHSIISLLMG +MKFFRVKASMAN +>VDM21823.1||6205||1763003032 VDM21823.1 unnamed protein product [Hydatigera taeniaeformis] +MRLLNPQLYIVQFRHKFNFGDPVIDRSAVGTCRLAPEEQADLLAGIFWIGVCLLDSDYEY +EYFAGIRLLSRLLPCVCSPLNTTSTTATAAPTASSSNRKWSSQQQQQSFISLHDHVLRLL +HRLKWTTGTEDGDYPGLLGLLLKGCFSSTLIDTSCRLLVHLISAVKSPIVDPNAEIRQYR +RAAVSGTSRSTGSSTSYPGILPTLIIVLLPMLLTAWDEDPDSPASTVPEPAISVGEVGEA +CAEGSGSPAVTSSFSPQSSSSLPPPLGSWVHRSVVISETAAPSPSSGLLSLITTILVSGA +VAKKAPQLRPRNPICTLAAEQLAELALQMDAYRFNNLAIVLRLYANGTFSKDVNQWAKCV +TRYLMDGCAGLGPRILTFLTPVNPTTLKLMGNI +>VDM22809.1||6205||1763003508 VDM22809.1 unnamed protein product [Hydatigera taeniaeformis] +MPTLLEFIEGTRVYLESLNEPSAMVVTMFSSSTATATTAFGVGHGGPAAVVAPSTSVTAV +TAPSLPSATTAAVATSMSSPVGTSPGSGLMVGAVATCGVSGAPASTVVGGASGGAGGSGS +GSGGIGAGGGPAGVSGGSVQNPSVAAAATTPSATAAASAAPAHAPTGVDPMVLTEMRLYF +CVFIRDLIRHLPRERRQRLLPPATRRNLVLLIARWSGFYEHIHNNRFTDIPATWSSARLF +LTGVKVPFLRSLDWHSISCH +>VDM23019.1||6205||1763003610 VDM23019.1 unnamed protein product [Hydatigera taeniaeformis] +MHPIEEFVSYFTFLHELGQYFLEVKEKEIRHAMTCLFVEILLPVAAVVRHEVNIPALKNF +VDLLYNPAFELANKKKHALVSDFEFDRNYRLTGITFFIYVTNITYIQI +>VDM23705.1||6205||1763003877 VDM23705.1 unnamed protein product [Hydatigera taeniaeformis] +MCSSADIALLPSYESSAAISGSGEFELNPGMSPRQHQHLVNSKLFISAKEKARDLVKLII +PLLRCDHPELRESIICGLSRIQPGAFRDVLEDLHPILRESIDLKQKNVQRRRRRDTLRSS +LIRLLALMAQNAVFQHE diff --git a/tests/data/subhog/species_tree_conflict.nwk b/tests/data/subhog/species_tree_conflict.nwk new file mode 100644 index 0000000..338c321 --- /dev/null +++ b/tests/data/subhog/species_tree_conflict.nwk @@ -0,0 +1 @@ +(((IXOSC:1,HELRO:1)33317:1,((8384:1,(((8010:1,(8030:1,8032:1)8028:1)41705:1,(8049:1,(123683:1,ORYLA:1)8089:1)123368:1)1489388:1,((7998:1,42514:1)186628:1,75366:1)186626:1)186625:1)117571:1,CIOIN:1)7711:1)33213:1,NEMVE:1)internal_30:1; diff --git a/tests/data/subhog/species_tree_small.nwk b/tests/data/subhog/species_tree_small.nwk new file mode 100644 index 0000000..c77d0a7 --- /dev/null +++ b/tests/data/subhog/species_tree_small.nwk @@ -0,0 +1 @@ +((95602:1,((((27845:1,27848:1)404429:1,57078:1,59628:1)27871:1,(79923:1,147828:1)6196:1,(39320:1,157069:1,6183:1)31245:1)6179:1,(((85433:1,102285:1)6214:1,(6204:1,6205:1,6211:1)6208:1,53468:1)6201:1,(99802:1,60516:1,64606:1)28843:1)6200:1,117903:1)6157:1)33317:1,5833:1)internal_0:1; diff --git a/tests/subhog_helpers.py b/tests/subhog_helpers.py new file mode 100644 index 0000000..5e41d6a --- /dev/null +++ b/tests/subhog_helpers.py @@ -0,0 +1,67 @@ +"""Builders for small HOG / species tree / MSA fixtures used by the subHOG-stage tests. + +Protein ids follow the FastOMA convention ``||||``. +""" +from Bio.Align import MultipleSeqAlignment +from Bio.Seq import Seq +from Bio.SeqRecord import SeqRecord +from ete3 import Tree + +from FastOMA._hog_class import HOG, Representative + + +def pid(name, species, num): + return f"{name}||{species}||{num}" + + +def rec(seq_id, seq="ACDEFGHIKL"): + return SeqRecord(Seq(seq), id=seq_id) + + +def msa(*records): + """MSA from SeqRecords or (id, seq) tuples.""" + return MultipleSeqAlignment([r if isinstance(r, SeqRecord) else rec(*r) for r in records]) + + +def species_tree(nwk="((A,B)AB,C)root;", with_size=True): + """ete3 species tree with named internal nodes; optionally annotated with ``size`` + (number of leaves), as prepare_species_tree does for the scores.""" + t = Tree(nwk, format=1) + if with_size: + for n in t.traverse(): + n.add_feature("size", len(n)) + return t + + +def species_of(seq_id): + return seq_id.split("||")[1] + + +def leaf_hog(seq_id, sptree, rhogid="r", seq="ACDEFGHIKL"): + """Singleton HOG of one protein at its species' leaf node of ``sptree``.""" + return HOG(rec(seq_id, seq), sptree & species_of(seq_id), rhogid) + + +def merged_hog(subhogs, taxnode, rep_ids=None, rhogid="r", conf=None, aln=None): + """HOG at ``taxnode`` merging ``subhogs``. + + The MSA defaults to the stacked rows of the subhogs' MSAs; representatives default to + all representatives of the subhogs (or the given ``rep_ids``).""" + if aln is None: + aln = MultipleSeqAlignment([r for h in subhogs for r in h.get_msa()]) + by_id = {r.id: r for r in aln} + if rep_ids is None: + rep_ids = [r.get_id() for h in subhogs for r in h.get_representatives()] + reps = [Representative(by_id[i]) for i in rep_ids] + return HOG(list(subhogs), taxnode, rhogid, msa=aln, representatives=reps, conf_infer_subhhogs=conf) + + +def leaf_members(hog): + """Members collected from the leaves of the subhog hierarchy (should equal hog.get_members()).""" + if not hog._subhogs: + return set(hog.get_members()) + return set().union(*(leaf_members(sh) for sh in hog._subhogs)) + + +def members_of(hogs): + return set().union(set(), *(h.get_members() for h in hogs)) diff --git a/tests/test_fragment_detection.py b/tests/test_fragment_detection.py new file mode 100644 index 0000000..4bc9160 --- /dev/null +++ b/tests/test_fragment_detection.py @@ -0,0 +1,96 @@ +import numpy as np +import pytest + +from FastOMA._utils_frag_SO_detection import read_msa, split_candidates, compute_identity, find_prot_dubious_msa +from subhog_helpers import pid, msa + +H1, H2, H3 = pid("h1", "HUMAN", 1), pid("h2", "HUMAN", 2), pid("h3", "HUMAN", 3) +M1 = pid("m1", "MOUSE", 4) + + +def test_read_msa_ids_and_coordinates(): + ids, seqs, species, coords = read_msa(msa((H1, "aa--"), (M1, "-AA-"))) + assert list(ids) == [H1, M1] + assert seqs.shape == (2, 4) + # sequences are upper-cased + assert seqs[0].tobytes() == b"AA--" + assert coords.tolist() == [[0, 1], [1, 2]] + + +def test_read_msa_all_gap_row(): + _, _, _, coords = read_msa(msa((H1, "----"), (M1, "AAAA"))) + assert coords.tolist() == [[0, 0], [0, 3]] + + +@pytest.mark.xfail(strict=True, reason="BUG: read_msa strips the last character of species names " + "(_utils_frag_SO_detection.py:36)") +def test_read_msa_species_names(): + _, _, species, _ = read_msa(msa((pid("a", "AQUAE", 1), "AA"), (pid("b", "AQUAF", 2), "AA"))) + assert list(species) == ["AQUAE", "AQUAF"] + + +def test_compute_identity(): + s1 = np.frombuffer(b"AC-D", dtype="S1") + s2 = np.frombuffer(b"AGWD", dtype="S1") + assert compute_identity(s1, s2) == (pytest.approx(2 / 3), pytest.approx(2 / 4)) + gap = np.frombuffer(b"--", dtype="S1") + assert compute_identity(gap, gap) == (1, 1) + + +def test_split_candidates_non_overlapping_fragments(): + cands = split_candidates(read_msa(msa((H2, "-----AAAA"), (H1, "AAAA-----"), (M1, "AAAAAAAAA"))), 0.15) + # ordered by start coordinate + assert cands == [((H1, H2), [(1, 1)])] + + +def test_split_candidates_small_overlap_within_margin(): + cands = split_candidates(read_msa(msa((H1, "AAAAAAAAAAW----------"), (H2, "---------AWAAAAAAAAAA"))), 0.15) + assert len(cands) == 1 + assert cands[0][0] == (H1, H2) + + +def test_split_candidates_large_overlap(): + assert split_candidates(read_msa(msa((H1, "AAAAAA----"), (H2, "--AAAAAA--"))), 0.15) == [] + + +def test_split_candidates_third_full_length_copy_blocks_merge(): + aln = msa((H1, "AAAA------"), (H2, "------AAAA"), (H3, "AAAAAAAAAA")) + assert split_candidates(read_msa(aln), 0.15) == [] + + +def test_split_candidates_identity_is_not_used(): + # characterises current behaviour: identity of the overlap is computed but does not prevent a merge + cands = split_candidates(read_msa(msa((H1, "AAAAAA----"), (H2, "----WWWWWW"))), 0.5) + assert cands == [((H1, H2), [(0.0, 0.0)])] + + +def test_split_candidates_margin_must_be_fraction(): + with pytest.raises(AssertionError): + split_candidates(read_msa(msa((H1, "AA"), (H2, "AA"))), 2) + + +def test_find_prot_dubious_msa(subhog_conf): + aln = msa((H1, "AAAA------"), (H2, "------AAAA"), (M1, "AAAAAAAAAA")) + for r in aln: + r.name = r.id # as for records parsed by SeqIO (mafft output) + prots, seqs = find_prot_dubious_msa(aln, subhog_conf()) + assert prots == [[H1, H2]] + assert [[r.id for r in s] for s in seqs] == [[H1, H2]] + + +def test_find_prot_dubious_msa_matches_sequences_by_name(subhog_conf): + # characterises current behaviour: sequences are looked up by record.name, not record.id + # (_utils_frag_SO_detection.py:142) + aln = msa((H1, "AAAA------"), (H2, "------AAAA")) + assert find_prot_dubious_msa(aln, subhog_conf()) == ([[H1, H2]], [[]]) + + +def test_find_prot_dubious_msa_none(subhog_conf): + assert find_prot_dubious_msa(msa((H1, "AAAA"), (M1, "AAAA")), subhog_conf()) == ([], []) + + +@pytest.mark.xfail(strict=True, reason="BUG: species names differing only in the last character are treated as one " + "species (_utils_frag_SO_detection.py:36)") +def test_find_prot_dubious_msa_distinct_species(subhog_conf): + aln = msa((pid("a", "HUMAN1", 1), "AAAA------"), (pid("b", "HUMAN2", 2), "------AAAA")) + assert find_prot_dubious_msa(aln, subhog_conf())[0] == [] diff --git a/tests/test_gene_tree_rooting.py b/tests/test_gene_tree_rooting.py new file mode 100644 index 0000000..9305a47 --- /dev/null +++ b/tests/test_gene_tree_rooting.py @@ -0,0 +1,129 @@ +import random + +import pytest +from ete3 import Tree +from ete3.parser.newick import NewickError + +from FastOMA import _wrappers +from FastOMA._infer_subhog import LevelHOGProcessor +from FastOMA._utils_subhog import find_outlier_leaves, midpoint_rooting_outgroup +from subhog_helpers import species_tree, leaf_hog + +P1 = "sp|P1|G3P_MYCGE||MYCGE||1000000005" +Q2 = "tr|Q2|X_Y_AQUAE||AQUAE||1001" +P3 = "sp|P3|Z_CHLTR||CHLTR||1002" +P4 = "sp|P4|W_CHLTR||CHLTR||1003" +IDS = [P1, Q2, P3, P4] +SPECIES_NWK = "(MYCGE,(AQUAE,CHLTR)AC)root;" +# unrooted (trifurcating) FastTree-like tree; longest path P4 - Q2 = 3.55 +UNROOTED = "('%s':0.1,'%s':0.5,('%s':0.2,'%s':3.0):0.05);" % tuple(IDS) + + +@pytest.fixture +def make_lp(subhog_conf): + def make(method): + sp = species_tree(SPECIES_NWK) + hogs = [leaf_hog(i, sp) for i in IDS] + return LevelHOGProcessor(sp, hogs, "r", subhog_conf(gene_rooting_method=method)) + return make + + +def gtree(nwk=UNROOTED): + return Tree(nwk, format=0, quoted_node_names=True) + + +def root_split(t): + return sorted(sorted(c.get_leaf_names()) for c in t.children) + + +@pytest.mark.parametrize("method", ["midpoint", "midpoint-dendropy"]) +def test_midpoint_rooting(make_lp, method): + t = make_lp(method).infer_rooted_genetree(gtree()) + assert sorted(t.get_leaf_names()) == sorted(IDS) + assert len(t.children) == 2 + assert root_split(t) == [[P1, P3, Q2], [P4]] + + +def test_midpoint_ete3_splits_root_edge_in_half(make_lp): + t = make_lp("midpoint").infer_rooted_genetree(gtree()) + # characterises current behaviour: ete3 places the root in the middle of the edge, not at the + # true midpoint (1.775 from P4); this affects the representative selection downstream + assert sorted(c.dist for c in t.children) == pytest.approx([1.5, 1.5]) + + +def test_midpoint_dendropy_uses_true_midpoint(make_lp): + t = make_lp("midpoint-dendropy").infer_rooted_genetree(gtree()) + assert sorted(c.dist for c in t.children) == pytest.approx([1.225, 1.775]) + + +@pytest.mark.parametrize("method", ["midpoint", "midpoint-dendropy"]) +def test_midpoint_two_leaves(make_lp, method): + t = make_lp(method).infer_rooted_genetree(gtree("('%s':1,'%s':2);" % (P1, Q2))) + assert sorted(t.get_leaf_names()) == sorted([P1, Q2]) + assert sorted(c.dist for c in t.children) == pytest.approx([1.5, 1.5]) + + +def test_midpoint_zero_branch_lengths(make_lp): + t = make_lp("midpoint").infer_rooted_genetree(gtree("('%s':0,'%s':0,'%s':0);" % (P1, Q2, P3))) + assert sorted(t.get_leaf_names()) == sorted([P1, Q2, P3]) + assert len(t.children) == 2 + + +def test_outlier_rooting_ignores_long_branch(make_lp): + random.seed(1) + t = make_lp("outlier").infer_rooted_genetree(gtree()) + assert sorted(t.get_leaf_names()) == sorted(IDS) + # P4 is excluded from the midpoint computation, so the root moves away from its branch + assert root_split(t) == [[P1, P3, P4], [Q2]] + + +def test_nevers_rooting_reads_species_tree_from_cwd(make_lp, in_tmp_dir): + # characterises current behaviour: the species tree is read from ./species_tree.nwk (_infer_subhog.py:507) + with pytest.raises(NewickError): + make_lp("Nevers_rooting").infer_rooted_genetree(gtree()) + (in_tmp_dir / "species_tree.nwk").write_text(SPECIES_NWK + "\n") + t = make_lp("Nevers_rooting").infer_rooted_genetree(gtree()) + assert sorted(t.get_leaf_names()) == sorted(IDS) + assert len(t.children) == 2 + + +@pytest.mark.xfail(strict=True, reason="BUG: mad rooting passes the TreeNode, but _wrappers.mad_rooting expects a " + "file path (_infer_subhog.py:512 vs _wrappers.py:138)") +def test_mad_rooting_gets_a_file(make_lp, monkeypatch): + seen = [] + monkeypatch.setattr(_wrappers, "mad_rooting", lambda arg: seen.append(arg) or gtree()) + make_lp("mad").infer_rooted_genetree(gtree()) + assert isinstance(seen[0], str) + + +def test_invalid_rooting_method(make_lp): + with pytest.raises(ValueError): + make_lp("bogus").infer_rooted_genetree(gtree()) + + +# outlier helpers + +def test_find_outlier_leaves_long_branch(): + t = Tree("((a:1,b:1):1,(c:1,(d:1,e:30):1):1);") + assert [n.name for n in find_outlier_leaves(t)] == ["e"] + + +def test_find_outlier_leaves_balanced_tree(): + t = Tree("((a:1,b:1):1,(c:1,d:1):1);") + assert find_outlier_leaves(t) == [] + + +@pytest.mark.parametrize("seed", [0, 1, 2]) +def test_midpoint_rooting_outgroup_with_excluded_leaf(seed): + random.seed(seed) + t = Tree("((a:1,b:1):1,(c:1,(d:1,e:30):1):1);") + og = midpoint_rooting_outgroup(t, leaves_to_exclude=[t & "e"]) + t.set_outgroup(og) + assert root_split(t) == [["a", "b"], ["c", "d", "e"]] + + +def test_midpoint_rooting_outgroup_two_leaves(): + random.seed(0) + t = Tree("(a:1,b:1);") + og = midpoint_rooting_outgroup(t) + assert og.name in ("a", "b") diff --git a/tests/test_hog_class.py b/tests/test_hog_class.py new file mode 100644 index 0000000..c213b12 --- /dev/null +++ b/tests/test_hog_class.py @@ -0,0 +1,282 @@ +import xml.etree.ElementTree as ET + +import pytest + +from FastOMA._hog_class import HOG, Representative, split_hog, ScoreFlags +from subhog_helpers import pid, rec, msa, species_tree, leaf_hog, merged_hog, leaf_members + +NO_SCORES = ScoreFlags(False, False, False) + +A1, A2, A3 = pid("a1", "A", 1), pid("a2", "A", 2), pid("a3", "A", 3) +B1, B2 = pid("b1", "B", 11), pid("b2", "B", 12) +C1 = pid("c1", "C", 21) + + +@pytest.fixture +def sp(): + return species_tree() + + +def test_leaf_hog(sp): + h = leaf_hog(A1, sp) + assert h.get_members() == {A1} + assert len(h) == 1 + assert h.taxname == "A" and h.taxlevel is sp & "A" + assert h.hogid == "HOG_r_sub10001" + assert [r.get_id() for r in h.get_representatives()] == [A1] + assert [r.id for r in h.get_msa()] == [A1] + assert h._subhogs == [] and h.get_dubious_members() == set() + assert h.active + + +def test_hogids_are_sequential_per_process(sp): + ids = [leaf_hog(x, sp).hogid for x in (A1, A2)] + assert ids == ["HOG_r_sub10001", "HOG_r_sub10002"] + + +def test_merged_hog_members_are_union_of_subhogs(sp): + subs = [leaf_hog(A1, sp), leaf_hog(B1, sp), leaf_hog(C1, sp)] + h = merged_hog(subs, sp, rep_ids=[A1, C1]) + assert h.get_members() == {A1, B1, C1} == leaf_members(h) + assert h._subhogs == subs + # the HOG keeps only the representatives' rows of the MSA + assert sorted(r.id for r in h.get_msa()) == [A1, C1] + assert A1 in h and h.get_representatives()[0] in h and subs[1] in h + assert "x||A||9" not in h + + +def test_get_members_returns_a_copy(sp): + h = leaf_hog(A1, sp) + h.get_members().add("x") + assert h.get_members() == {A1} + + +def test_merged_hog_rejects_duplicate_representatives(sp): + subs = [leaf_hog(A1, sp), leaf_hog(B1, sp)] + with pytest.raises(AssertionError, match="Non-unique"): + HOG(subs, sp, "r", msa=msa(rec(A1), rec(B1)), representatives=[Representative(rec(A1)), Representative(rec(A1))]) + + +def test_merged_hog_rejects_representative_not_member(sp): + subs = [leaf_hog(A1, sp), leaf_hog(B1, sp)] + with pytest.raises(AssertionError, match="subset"): + HOG(subs, sp, "r", msa=msa(rec(A1), rec(B1), rec(C1)), representatives=[Representative(rec(C1))]) + + +def test_merged_hog_with_empty_msa_is_rejected(sp): + # characterises current behaviour: an empty MSA is falsy, so the constructor hits its generic error branch + with pytest.raises(AssertionError): + HOG([leaf_hog(A1, sp)], sp, "r", msa=msa(), representatives=[Representative(rec(A1))]) + + +def test_merged_hog_without_representatives_argument_fails(sp): + # characterises current behaviour: the default of `representatives` is a typing object + # (_hog_class.py:280), so callers always have to pass it + with pytest.raises(TypeError): + HOG([leaf_hog(A1, sp)], sp, "r", msa=msa(rec(A1))) + + +@pytest.mark.xfail(strict=True, reason="BUG: HOG.__init__ column filter can drop all representative rows " + "(_hog_class.py:333 -> _utils_subhog.py:485); the HOG is then lost at the next level") +def test_merged_hog_column_filter_keeps_representatives(sp, subhog_conf): + s1 = "A" * 300 + "-" * 300 + s2 = "-" * 300 + "A" * 300 + subs = [leaf_hog(A1, sp, seq=s1), leaf_hog(B1, sp, seq=s2)] + h = merged_hog(subs, sp, conf=subhog_conf()) + assert len(h) == 2 + assert len(h.get_msa()) == 2 + + +def test_merged_hog_column_filter_on_wide_msa(sp, subhog_conf): + s1 = "A" * 550 + "-" * 50 + s2 = "A" * 600 + subs = [leaf_hog(A1, sp, seq=s1), leaf_hog(B1, sp, seq=s2)] + h = merged_hog(subs, sp, conf=subhog_conf()) + # columns with gap ratio 0.5 are removed (threshold is strict) + assert [len(r) for r in h.get_msa()] == [550, 550] + + +def test_get_subhog_path(sp): + a1, b1, c1 = leaf_hog(A1, sp), leaf_hog(B1, sp), leaf_hog(C1, sp) + ab = merged_hog([a1, b1], sp & "AB") + top = merged_hog([ab, c1], sp) + assert top.get_subhog_path(B1) == [ab, b1] + assert top.get_subhog_path(B1, max_depth=1) == [ab] + assert top.get_subhog_path(C1) == [c1] + with pytest.raises(KeyError): + top.get_subhog_path("x||A||9") + + +# Representative + +def test_representative_from_seqrecord(): + r = Representative(rec(A1)) + assert r.get_id() == A1 + assert r.get_subelements() == {A1} + assert r.get_species() == {"A"} + assert r.enabled + + +def test_representative_with_elements_collects_subelements_and_species(): + a, b = Representative(rec(A1)), Representative(rec(B1)) + r = Representative(a, [a, b]) + assert r.get_id() == A1 + assert r.get_subelements() == {A1, B1} + assert r.get_species() == {"A", "B"} + + +@pytest.mark.xfail(strict=True, reason="BUG: Representative(rep, elements) mutates rep's subelement/species sets in place " + "(_hog_class.py:249-259 alias the sets)") +def test_representative_with_elements_does_not_mutate_source(): + a, b = Representative(rec(A1)), Representative(rec(B1)) + Representative(a, [a, b]) + assert a.get_subelements() == {A1} + assert a.get_species() == {"A"} + + +# find_representative + +def test_find_representative_by_id(sp): + h = merged_hog([leaf_hog(A1, sp), leaf_hog(B1, sp)], sp) + assert h.find_representative(B1).get_id() == B1 + + +@pytest.mark.xfail(strict=True, raises=AttributeError, + reason="BUG: find_representative calls the non-existent Representative.get_members (_hog_class.py:383)") +def test_find_representative_of_non_representative_member(sp): + a1, b1 = leaf_hog(A1, sp), leaf_hog(B1, sp) + rep = Representative(rec(A1), [Representative(rec(B1))]) + h = HOG([a1, b1], sp, "r", msa=msa(rec(A1), rec(B1)), representatives=[rep]) + assert h.find_representative(B1) is rep + + +# split_hog + +def _two_level_hog(sp): + """root HOG = [AB HOG (a1, b1; only a1 is a representative), c1].""" + a1, b1, c1 = leaf_hog(A1, sp), leaf_hog(B1, sp), leaf_hog(C1, sp) + ab = merged_hog([a1, b1], sp & "AB", rep_ids=[A1], aln=msa(rec(A1), rec(B1), rec(C1))) + top = merged_hog([ab, c1], sp, rep_ids=[A1, C1], aln=msa(rec(A1), rec(B1), rec(C1))) + return top, ab, c1 + + +def test_split_hog_on_disjoint_first_level_subhogs(sp): + top, ab, c1 = _two_level_hog(sp) + parts = split_hog(top, "root", [A1], [C1]) + assert len(parts) == 2 + assert [h.get_members() for h in parts] == [{A1, B1}, {C1}] + assert [h._subhogs for h in parts] == [[ab], [c1]] + assert all(h.taxlevel is top.taxlevel for h in parts) + assert [[r.get_id() for r in h.get_representatives()] for h in parts] == [[A1], [C1]] + + +def test_split_hog_requires_two_partitions(sp): + top, _, _ = _two_level_hog(sp) + with pytest.raises(ValueError): + split_hog(top, "root", [A1]) + + +def test_split_hog_rejects_overlapping_partitions(sp): + top, _, _ = _two_level_hog(sp) + with pytest.raises(ValueError): + split_hog(top, "root", [A1], [A1, C1]) + + +def test_split_hog_conflicting_partitions_returns_none(sp): + a1, b1, b2 = leaf_hog(A1, sp), leaf_hog(B1, sp), leaf_hog(B2, sp) + ab = merged_hog([a1, b1], sp & "AB") + top = merged_hog([ab, b2], sp) + # characterises current behaviour: a1 and b1 were merged below this level, so the split is + # "not implemented" and the caller (_resolve_conflicts) has to deal with it + assert split_hog(top, "root", [A1], [B1, B2]) is None + + +@pytest.mark.xfail(strict=True, reason="BUG: split_hog drops subhogs not reached by any partition's representative " + "(_hog_class.py:636-643); their proteins disappear") +def test_split_hog_keeps_all_members(sp): + a1, a2, b1 = leaf_hog(A1, sp), leaf_hog(A2, sp), leaf_hog(B1, sp) + ab = merged_hog([a1, a2, b1], sp & "AB", rep_ids=[A1, A2]) + parts = split_hog(ab, "AB", [A1], [A2]) + assert set().union(*(h.get_members() for h in parts)) == {A1, A2, B1} + + +# to_orthoxml + +def _tags(elem): + return [c.tag for c in elem] + + +def _taxrange(elem): + return [p.get("value") for p in elem.findall("property") if p.get("name") == "TaxRange"] + + +def test_to_orthoxml_nested(sp): + top, ab, c1 = _two_level_hog(sp) + e = top.to_orthoxml(sp, NO_SCORES) + assert e.tag == "orthologGroup" and e.get("id") == top.hogid + assert _taxrange(e) == ["root"] + assert _tags(e) == ["property", "orthologGroup", "geneRef"] + inner = e.find("orthologGroup") + assert inner.get("id") == ab.hogid and _taxrange(inner) == ["AB"] + assert sorted(g.get("id") for g in inner.findall("geneRef")) == ["1", "11"] + assert e.find("geneRef").get("id") == "21" + + +def test_to_orthoxml_with_scores(sp): + top, _, _ = _two_level_hog(sp) + e = top.to_orthoxml(sp) + assert [s.get("id") for s in e.findall("score")] == ["CompletenessScore", "ImpliedLosses", "TCSScore"] + assert _tags(e)[:4] == ["score", "score", "score", "property"] + + +def test_to_orthoxml_inparalogs_give_paralog_group(sp): + h = merged_hog([leaf_hog(A1, sp), leaf_hog(A2, sp)], sp & "A") + e = h.to_orthoxml(sp, NO_SCORES) + assert e.tag == "paralogGroup" + assert sorted(g.get("id") for g in e) == ["1", "2"] + + +def test_to_orthoxml_duplication_below_speciation(sp): + a1, a2, b1 = leaf_hog(A1, sp), leaf_hog(A2, sp), leaf_hog(B1, sp) + h = merged_hog([a1, a2, b1], sp & "AB") + e = h.to_orthoxml(sp, NO_SCORES) + assert e.tag == "orthologGroup" and _taxrange(e) == ["AB"] + assert _tags(e) == ["property", "paralogGroup", "geneRef"] + + +def test_to_orthoxml_taxrange_is_mrca_of_members(sp): + # HOG lives at the root level but only has members from A and B + h = merged_hog([leaf_hog(A1, sp), leaf_hog(B1, sp)], sp) + e = h.to_orthoxml(sp, NO_SCORES) + assert _taxrange(e) == ["AB"] + + +def test_to_orthoxml_single_subhog_is_not_wrapped(sp): + a1, b1 = leaf_hog(A1, sp), leaf_hog(B1, sp) + ab = merged_hog([a1, b1], sp & "AB") + top = merged_hog([ab], sp) + e = top.to_orthoxml(sp, NO_SCORES) + assert e.get("id") == ab.hogid + + +def test_to_orthoxml_singleton_is_generef(sp): + e = leaf_hog(A1, sp).to_orthoxml(sp, NO_SCORES) + assert e.tag == "geneRef" and e.get("id") == "1" + + +def test_to_orthoxml_merged_fragments_leaf(sp): + h = leaf_hog(A1 + "_|_" + A2, sp) + e = h.to_orthoxml(sp, NO_SCORES) + assert e.tag == "paralogGroup" + assert [(p.get("name"), p.get("value")) for p in e.findall("property")] == [("Type", "DubiousMergedfragment")] + assert [g.get("id") for g in e.findall("geneRef")] == ["1", "2"] + + +def test_to_orthoxml_every_member_once(sp): + a1, a2, b1, b2, c1 = (leaf_hog(x, sp) for x in (A1, A2, B1, B2, C1)) + ab1 = merged_hog([a1, b1], sp & "AB") + ab2 = merged_hog([a2, b2], sp & "AB") + top = merged_hog([ab1, ab2, c1], sp) + xml = ET.tostring(top.to_orthoxml(sp)) + ids = [g.get("id") for g in ET.fromstring(xml).iter("geneRef")] + assert sorted(ids) == sorted(m.split("||")[2] for m in top.get_members()) diff --git a/tests/test_level_processor.py b/tests/test_level_processor.py new file mode 100644 index 0000000..92d6f5a --- /dev/null +++ b/tests/test_level_processor.py @@ -0,0 +1,253 @@ +import pickle + +import pytest +from ete3 import Tree + +from FastOMA import _infer_subhog +from FastOMA._infer_subhog import LevelHOGProcessor +from subhog_helpers import pid, rec, msa, species_tree, leaf_hog, merged_hog, members_of + +A1, A2, A3 = pid("a1", "A", 1), pid("a2", "A", 2), pid("a3", "A", 3) +B1, B2, B3 = pid("b1", "B", 11), pid("b2", "B", 12), pid("b3", "B", 13) +C1 = pid("c1", "C", 21) + + +def q(*names): + """newick leaf names need quoting because of the '|' characters.""" + return tuple(f"'{n}'" for n in names) + + +@pytest.fixture +def sp(): + return species_tree() + + +@pytest.fixture +def make_lp(sp, subhog_conf): + def make(ids, level="AB", frozen=(), **conf): + hogs = [leaf_hog(i, sp) for i in ids] + for i in frozen: + h = leaf_hog(i, sp) + h.active = False + hogs.append(h) + return LevelHOGProcessor(sp & level, hogs, "r", subhog_conf(**conf)) + return make + + +def genetree(nwk): + return Tree(nwk, format=0, quoted_node_names=True) + + +def test_constructor_separates_frozen_hogs(make_lp): + lp = make_lp([A1, B1], frozen=[A3]) + assert {h.get_members().pop() for h in lp.subhogs.values()} == {A1, B1} + assert {h.get_members().pop() for h in lp._frozen_hogs_before} == {A3} + assert set(lp._rep_lookup) == {A1, B1} + + +def test_invalid_msa_filter_method(make_lp): + with pytest.raises(ValueError): + make_lp([A1, B1], msa_filter_method="nope") + + +# infer_reconciliation + +def test_reconciliation_labels(make_lp): + lp = make_lp([A1, A2, B1, B2]) + t = genetree("((%s,%s),(%s,%s));" % q(A1, B1, A2, B2)) + lp.infer_reconciliation(t, sos_threshold=0.1) + assert (t.evoltype, t.sos, t.so_tuple, t.name) == ("D", 1.0, (2, 2), "D1_2_2") + assert sorted((c.name, c.evoltype, c.sos) for c in t.children) == [("S1", "S", 0.0), ("S2", "S", 0.0)] + leaf = t & A1 + assert leaf.hogid == lp._rep_lookup[A1].hog.hogid + # species sets are only kept on the leaves + assert not hasattr(t, "species") and not hasattr(t.children[0], "species") + + +@pytest.mark.parametrize("threshold,expected", [(1 / 3, "S"), (0.3, "D")]) +def test_reconciliation_threshold_is_exclusive(make_lp, threshold, expected): + lp = make_lp([A1, A2, B1, C1], level="root") + # root: {A,B} vs {A,C} -> sos = 1/3 + t = genetree("((%s,%s),(%s,%s));" % q(A1, B1, A2, C1)) + lp.infer_reconciliation(t, sos_threshold=threshold) + assert t.sos == pytest.approx(1 / 3) + assert t.evoltype == expected + + +@pytest.mark.xfail(strict=True, reason="BUG: species overlap of a multifurcation intersects all children, " + "so a polytomy with two copies of a species is labelled S (_infer_subhog.py:546)") +def test_reconciliation_polytomy_with_duplicated_species(make_lp): + lp = make_lp([A1, A2, B1]) + t = genetree("(%s,%s,%s);" % q(A1, A2, B1)) + lp.infer_reconciliation(t, sos_threshold=0.1) + assert t.evoltype == "D" + + +# merge_subhogs / process + +def _reconciled(lp, nwk): + t = genetree(nwk) + lp.infer_reconciliation(t, sos_threshold=lp.conf.threshold_dubious_sd) + return t + + +def test_merge_subhogs_two_orthogroups(make_lp, sp): + lp = make_lp([A1, A2, B1, B2]) + t = _reconciled(lp, "((%s:1,%s:1):1,(%s:1,%s:1):1);" % q(A1, B1, A2, B2)) + new = lp.merge_subhogs(t, msa(rec(A1), rec(A2), rec(B1), rec(B2))) + assert sorted(sorted(h.get_members()) for h in new) == [[A1, B1], [A2, B2]] + assert all(h.taxlevel is sp & "AB" for h in new) + for h in new: + assert {r.get_id() for r in h.get_representatives()} <= h.get_members() + + +def test_merge_subhogs_conserves_members(make_lp): + ids = [A1, A2, A3, B1, B2] + lp = make_lp(ids) + t = _reconciled(lp, "(((%s:1,%s:1):1,%s:2):1,(%s:1,%s:1):1);" % q(A1, B1, A3, A2, B2)) + new = lp.merge_subhogs(t, msa(*(rec(i) for i in ids))) + assert members_of(new) == set(ids) + assert sum(len(h) for h in new) == len(ids) + + +def _patch_pipeline(lp, monkeypatch, aln, tree_nwk=None): + monkeypatch.setattr(lp, "align_subhogs", lambda: aln) + if tree_nwk is not None: + monkeypatch.setattr(lp, "infer_genetree_from_msa", lambda m: genetree(tree_nwk)) + else: + def fail(m): + raise AssertionError("gene tree should not be inferred") + monkeypatch.setattr(lp, "infer_genetree_from_msa", fail) + + +def test_process_keeps_frozen_hogs(make_lp, monkeypatch): + lp = make_lp([A1, A2, B1, B2], frozen=[A3]) + aln = msa(rec(A1), rec(A2), rec(B1), rec(B2)) + _patch_pipeline(lp, monkeypatch, aln, "((%s:1,%s:1):1,(%s:1,%s:1):1);" % q(A1, B1, A2, B2)) + new = lp.process() + assert members_of(new) == {A1, A2, A3, B1, B2} + assert sorted(sorted(h.get_members()) for h in new) == [[A1, B1], [A2, B2], [A3]] + + +def _all_gappy_msa(): + # every column has a gap ratio of 0.5 -> column filter removes all columns + return msa((A1, "AAAA----"), (B1, "----AAAA"), (A2, "AAAA----"), (B2, "----AAAA")) + + +def test_process_when_filter_empties_msa_returns_unmerged_subhogs(make_lp, monkeypatch): + lp = make_lp([A1, A2, B1, B2], min_col_trim=0) + active = list(lp.subhogs.values()) + _patch_pipeline(lp, monkeypatch, _all_gappy_msa()) + # characterises current behaviour: the whole level becomes a no-op (seen on real data, e.g. D0040139) + assert lp.process() == active + + +@pytest.mark.xfail(strict=True, reason="BUG: process() returns early without the frozen HOGs when filtering empties " + "the MSA (_infer_subhog.py:690); their proteins are lost") +def test_process_when_filter_empties_msa_keeps_frozen_hogs(make_lp, monkeypatch): + lp = make_lp([A1, A2, B1, B2], frozen=[A3], min_col_trim=0) + _patch_pipeline(lp, monkeypatch, _all_gappy_msa()) + assert members_of(lp.process()) == {A1, A2, A3, B1, B2} + + +def test_filter_msa_freezes_hogs_without_representatives(make_lp): + lp = make_lp([A1, A2, B1, B2], min_col_trim=0) + b2_hog = lp._rep_lookup[B2].hog + aln = msa((A1, "ACDEFGHIKL"), (A2, "ACDEFGHIKL"), (B1, "ACDEFGHIKL"), (B2, "A---------")) + filtered = lp.filter_msa(aln) + assert [r.id for r in filtered] == [A1, A2, B1] + assert b2_hog.hogid not in lp.subhogs and not b2_hog.active + assert b2_hog in lp._frozen_hogs_before + assert B2 not in lp._rep_lookup + + +# find_most_divergent_representatives_from_genetree + +DIVERGENT_TREE = "(((%s:1,%s:1.2):0.5,%s:3):0.2,((%s:0.4,%s:0.8):2,%s:1):0.3);" + + +@pytest.mark.parametrize("n", [1, 2, 3, 5]) +def test_representatives_invariants(make_lp, n): + ids = [A1, B1, C1, A2, B2, B3] + lp = make_lp(ids, level="root", number_of_samples_per_hog=n) + t = genetree(DIVERGENT_TREE % q(*ids)) + reps = lp.find_most_divergent_representatives_from_genetree(t) + rep_ids = [r.get_id() for r in reps] + assert 1 <= len(reps) <= n + assert len(set(rep_ids)) == len(rep_ids) + assert set(rep_ids) <= set(ids) + assert set().union(*(r.get_subelements() for r in reps)) == set(ids) + + +def test_representatives_small_tree_keeps_all_leaves(make_lp): + ids = [A1, B1, C1] + lp = make_lp(ids, level="root", number_of_samples_per_hog=5) + t = genetree("((%s:1,%s:1):1,%s:1);" % q(*ids)) + reps = lp.find_most_divergent_representatives_from_genetree(t) + assert sorted(r.get_id() for r in reps) == sorted(ids) + + +def test_representatives_do_not_modify_input_tree(make_lp): + ids = [A1, B1, C1, A2, B2, B3] + lp = make_lp(ids, level="root", number_of_samples_per_hog=2) + t = genetree(DIVERGENT_TREE % q(*ids)) + before = t.write() + lp.find_most_divergent_representatives_from_genetree(t) + assert t.write() == before + + +# read_infer_xml_rhog: wrapping of root-level paralogGroups + +@pytest.fixture +def rhog_run(in_tmp_dir, subhog_conf, monkeypatch): + ids = [A1, A2, A3, B1, C1] + with open("HOG_r.fa", "w") as fh: + for i in ids: + fh.write(f">{i}\nACDEFGHIKL\n") + with open("species_tree.nwk", "w") as fh: + fh.write("((A,B)AB,C)root;\n") + + def fake_inference(sptree, rhogid, pickles_subhog_folder_all, rhogs_fa_folder, conf): + a1, a2, a3, b1, c1 = (leaf_hog(i, sptree) for i in ids) + # the in-paralogs a1, a2 end up at the root level (as when nothing merges with them) + hogs = [merged_hog([a1, a2], sptree), merged_hog([b1, c1], sptree), a3] + with open(f"{pickles_subhog_folder_all}/rhog_{rhogid}/{sptree.name}.pickle", "wb") as fh: + pickle.dump(hogs, fh) + + monkeypatch.setattr(_infer_subhog, "infer_hogs_for_rhog_levels_recursively", fake_inference) + (in_tmp_dir / "out").mkdir() + n = _infer_subhog.read_infer_xml_rhog("r", False, "out", str(in_tmp_dir), str(in_tmp_dir), + subhog_conf(species_tree="species_tree.nwk", v=0)) + with open("out/file_r.pickle", "rb") as fh: + return n, pickle.load(fh) + + +def test_read_infer_xml_rhog_skips_singletons(rhog_run, in_tmp_dir): + n, groups = rhog_run + assert n == len(groups) == 2 + ids = sorted(g.get("id") for e in groups for g in e.iter("geneRef")) + assert ids == ["1", "11", "2", "21"] + # the per-level pickles are removed again + assert not (in_tmp_dir / "rhog_r").exists() + + +def test_read_infer_xml_rhog_wraps_root_paralog_group(rhog_run): + _, groups = rhog_run + wrapped = groups[0] + assert wrapped.tag == "orthologGroup" + assert [c.tag for c in wrapped if c.tag not in ("score", "property")] == ["paralogGroup"] + + +@pytest.mark.xfail(strict=True, reason="BUG: the root-level wrapper uses the HOG's taxonomic level as TaxRange instead of " + "the MRCA of its members like HOG.to_orthoxml (_infer_subhog.py:120)") +def test_read_infer_xml_rhog_wrapper_taxrange_is_mrca(rhog_run): + _, groups = rhog_run + assert [p.get("value") for p in groups[0].findall("property") if p.get("name") == "TaxRange"] == ["A"] + + +@pytest.mark.xfail(strict=True, reason="BUG: a root-level paralogGroup is wrapped in an orthologGroup with a single " + "child (_infer_subhog.py:112-122); orthoXML groups need >= 2 children") +def test_read_infer_xml_rhog_groups_have_two_children(rhog_run): + _, groups = rhog_run + for e in groups: + assert len([c for c in e if c.tag not in ("score", "property")]) >= 2 diff --git a/tests/test_msa_filter.py b/tests/test_msa_filter.py new file mode 100644 index 0000000..f2d318e --- /dev/null +++ b/tests/test_msa_filter.py @@ -0,0 +1,124 @@ +import pytest + +from FastOMA._utils_subhog import MSAFilter, MSAFilterElbow, MSAFilterTrimAL +from subhog_helpers import pid, msa + +A1, B1, C1, D1 = pid("a1", "A", 1), pid("b1", "B", 2), pid("c1", "C", 3), pid("d1", "D", 4) + + +@pytest.fixture +def flt(subhog_conf): + return MSAFilter(None, subhog_conf(min_col_trim=0)) + + +def seqs(aln): + return [str(r.seq) for r in aln] + + +def test_defaults_from_conf(subhog_conf): + f = MSAFilter(None, subhog_conf()) + assert (f.gap_ratio_row, f.gap_ratio_col, f.min_col_trim) == (0.3, 0.5, 50) + + +def test_gap_ratios_count_all_gap_symbols(flt): + assert list(flt._get_gap_ratios(msa((A1, "-.~?XA"), (B1, "AAAAAA")))) == [0.5, 0.5, 0.5, 0.5, 0, 0] + + +def test_column_threshold_is_exclusive(flt): + # gap ratio exactly 0.5 is removed + assert seqs(flt.msa_filter_col(msa((A1, "A-A"), (B1, "AAA")))) == ["AA", "AA"] + + +def test_column_filter_keeps_msa_without_gappy_columns(flt): + aln = msa((A1, "ACD"), (B1, "AC-"), (C1, "ACD")) + assert flt.msa_filter_col(aln) is aln + + +def test_row_threshold_is_min_nongap_fraction(flt): + # gap_ratio_row is the minimal fraction of non-gap characters; exactly 0.3 is kept + aln = msa((A1, "AAA-------"), (B1, "AA--------")) + assert [r.id for r in flt.msa_filter_row(aln)] == [A1] + + +def test_filter_msa_reports_removed_rows(flt): + aln = msa((A1, "ACDEFGHIKL"), (B1, "ACDEFGHIKL"), (C1, "A---------"), (D1, "ACDEFGHIKL")) + filtered, removed = flt.filter_msa(aln) + assert [r.id for r in filtered] == [A1, B1, D1] + assert removed == {C1} + + +def test_filter_msa_removes_empty_columns_after_row_filter(subhog_conf): + f = MSAFilter(None, subhog_conf(min_col_trim=0, gap_ratio_col=0.7, gap_ratio_row=0.9)) + E1 = pid("e1", "E", 5) + aln = msa((A1, "ACDEFGHIKL-"), (B1, "ACDEFGHIKL-"), (C1, "A---------W"), (D1, "A---------W"), (E1, "A---------W")) + # the last column survives the column filter, but only the removed rows have residues there + filtered, removed = f.filter_msa(aln) + assert seqs(filtered) == ["ACDEFGHIKL", "ACDEFGHIKL"] + assert removed == {C1, D1, E1} + + +def test_filter_msa_skips_short_alignments(subhog_conf): + f = MSAFilter(None, subhog_conf(min_col_trim=5)) + aln = msa((A1, "A---"), (B1, "AAAA")) + filtered, removed = f.filter_msa(aln) + assert filtered is aln and removed == set() + + +def test_filter_msa_single_sequence(flt): + filtered, removed = flt.filter_msa(msa((A1, "AA--AA"))) + assert seqs(filtered) == ["AAAA"] and removed == set() + + +def test_filter_msa_without_gaps_is_unchanged(flt): + aln = msa((A1, "ACDE"), (B1, "ACDE")) + filtered, removed = flt.filter_msa(aln) + assert seqs(filtered) == ["ACDE", "ACDE"] and removed == set() + + +def test_column_filter_with_single_column_left_drops_rows(flt): + # characterises current behaviour: records shorter than 2 columns are dropped (_utils_subhog.py:485) + assert len(flt.msa_filter_col(msa((A1, "AA-"), (B1, "-AA")))) == 0 + + +@pytest.mark.xfail(strict=True, reason="BUG: rows dropped by the column filter are not reported as removed " + "(_utils_subhog.py:485 and :456)") +def test_filter_msa_all_columns_gappy_reports_rows(flt): + aln = msa((A1, "AA--"), (B1, "--AA")) + filtered, removed = flt.filter_msa(aln) + assert {r.id for r in filtered} | removed == {A1, B1} + + +def test_filter_msa_empty_msa(flt): + # characterises current behaviour: an empty MSA is not handled + with pytest.raises(IndexError): + flt.filter_msa(msa()) + + +# MSAFilterElbow + +def test_elbow_without_gaps_keeps_everything(subhog_conf): + f = MSAFilterElbow(None, subhog_conf(min_col_trim=0)) + assert seqs(f.msa_filter_col(msa((A1, "ACDE"), (B1, "ACDE")))) == ["ACDE", "ACDE"] + + +def test_elbow_never_uses_threshold_below_gap_ratio_col(subhog_conf): + f = MSAFilterElbow(None, subhog_conf(min_col_trim=0, gap_ratio_col=0.5)) + aln = msa((A1, "ACDEFGHI"), (B1, "ACDEFG--"), (C1, "ACDEF---"), (D1, "ACDE----")) + # gap ratios: 0,0,0,0,0.25,0.5,0.75,0.75 -> at least everything below 0.5 is kept + assert len(f.msa_filter_col(aln)[0]) >= 5 + + +def test_elbow_removes_all_gap_columns(subhog_conf): + f = MSAFilterElbow(None, subhog_conf(min_col_trim=0)) + aln = msa((A1, "AAA-"), (B1, "AAA-"), (C1, "AAA-")) + assert seqs(f.msa_filter_col(aln)) == ["AAA"] * 3 + + +# MSAFilterTrimAL + +@pytest.mark.tools("trimal") +def test_trimal_filter_reports_removed_sequences(subhog_conf): + f = MSAFilterTrimAL(None, subhog_conf()) + aln = msa(*((pid(f"p{i}", "S", i), "MKVLAAGIVGLLLAAPLAQAKTEEAPKAEEGHHHH") for i in range(4))) + filtered, removed = f.filter_msa(aln) + assert {r.id for r in filtered} | removed == {r.id for r in aln} diff --git a/tests/test_species_tree_prep.py b/tests/test_species_tree_prep.py new file mode 100644 index 0000000..b35b7f0 --- /dev/null +++ b/tests/test_species_tree_prep.py @@ -0,0 +1,78 @@ +import pytest +from ete3 import Tree + +from FastOMA._utils_subhog import prepare_species_tree, read_species_tree, list_rhog_fastas +from subhog_helpers import pid, rec + +TREE = "((A,B)AB,(C,D)CD)root;" + + +def recs(*species): + return [rec(pid(f"p{i}", s, 100 + i)) for i, s in enumerate(species)] + + +def nwk(t): + return t.write(format=9) + + +def test_prepare_species_tree_returns_mrca_subtree(): + sp = Tree(TREE, format=1) + pruned, species, prots, full = prepare_species_tree(recs("A", "B", "A"), sp, "r") + assert pruned.name == "AB" + assert sorted(pruned.get_leaf_names()) == ["A", "B"] + assert species == ["A", "B", "A"] + assert prots == ["100", "101", "102"] + # characterises current behaviour: the subtree stays attached to the input tree + assert pruned.up is not None and pruned.get_tree_root() is sp + + +def test_prepare_species_tree_prunes_absent_species(): + sp = Tree(TREE, format=1) + pruned, _, _, full = prepare_species_tree(recs("A", "B", "C"), sp, "r") + assert pruned.write(format=8, format_root_node=True) == "((A,B)AB,C)root;" + # the full tree is an unpruned copy with the original clade sizes + assert sorted(full.get_leaf_names()) == ["A", "B", "C", "D"] + assert {n.name: n.size for n in full.traverse()} == {"root": 4, "AB": 2, "CD": 2, "A": 1, "B": 1, "C": 1, "D": 1} + assert pruned.size == 4 and (pruned & "C").size == 1 + + +def test_prepare_species_tree_unknown_species(): + with pytest.raises(ValueError): + prepare_species_tree(recs("A", "Q"), Tree(TREE, format=1), "r") + + +def test_prepare_species_tree_empty_roothog(): + with pytest.raises(AssertionError): + prepare_species_tree([], Tree(TREE, format=1), "r") + + +@pytest.mark.xfail(strict=True, reason="BUG: for a single-species rootHOG get_common_ancestor({'A'}) returns the root, " + "giving a unary root instead of the species leaf (_utils_subhog.py:283)") +def test_prepare_species_tree_single_species(): + pruned, _, _, _ = prepare_species_tree(recs("A", "A"), Tree(TREE, format=1), "r") + assert pruned.is_leaf() and pruned.name == "A" + + +def test_read_species_tree_newick_with_internal_names(tmp_path): + p = tmp_path / "sp.nwk" + p.write_text(TREE + "\n") + t = read_species_tree(str(p)) + assert [n.name for n in t.traverse("preorder")] == ["root", "AB", "A", "B", "CD", "C", "D"] + + +def test_read_species_tree_missing_file(tmp_path): + with pytest.raises(SystemExit): + read_species_tree(str(tmp_path / "missing.nwk")) + + +def test_read_species_tree_unknown_extension(tmp_path): + p = tmp_path / "sp.tree" + p.write_text(TREE + "\n") + with pytest.raises(SystemExit): + read_species_tree(str(p)) + + +def test_list_rhog_fastas(tmp_path): + for name in ["HOG_D0001.fa", "HOG_E0002.fa", "HOG_D0003.fa.gz", "HOG_D0004.fa.bak", "notes.txt"]: + (tmp_path / name).write_text("") + assert sorted(list_rhog_fastas(str(tmp_path))) == ["D0001", "E0002"] diff --git a/tests/test_subhog_stage.py b/tests/test_subhog_stage.py new file mode 100644 index 0000000..aeb012e --- /dev/null +++ b/tests/test_subhog_stage.py @@ -0,0 +1,201 @@ +"""Property tests of fastoma-infer-subhogs on real rootHOGs (tests/data/subhog). + +small/ D0455823 (45 proteins, 19 species), D0111149 (2 proteins) +conflict/ D0625237 (35 proteins; split_hog loses proteins), D0662268 (14 proteins; conflict resolution) +The species trees are the original trees pruned to the species of the rootHOGs (branch lengths set to 1). +""" +import os +import pickle +import subprocess +import sys +from pathlib import Path + +import pytest +from Bio import SeqIO +from ete3 import Tree +from lxml import etree + +from FastOMA._utils_subhog import prepare_species_tree +from fastoma_testutils import NS, canonical_orthoxml, geneRef_counts, orthoxml_validation_errors + +DATA = Path(__file__).parent / "data" / "subhog" + +# run the CLI, but keep the per-level pickles so the final HOG objects can be inspected +RUNNER = ("import FastOMA._infer_subhog as m; m.keep_subhog_each_pickle = True; " + "from FastOMA.infer_subhogs import fastoma_infer_subhogs; fastoma_infer_subhogs()") + +_ROOTHOGS = [("small", "D0455823"), ("small", "D0111149"), ("conflict", "D0625237"), ("conflict", "D0662268")] + + +def roothogs(xfail=None): + """parametrisation over the rootHOGs; ``xfail`` maps rootHOG ids to the reason of a known bug.""" + params = [] + for dataset, rhogid in _ROOTHOGS: + marks = [pytest.mark.slow] if dataset == "conflict" else [] + if xfail and rhogid in xfail: + marks.append(pytest.mark.xfail(strict=True, reason=xfail[rhogid])) + params.append(pytest.param(dataset, rhogid, id=rhogid, marks=marks)) + return params + + +ROOTHOGS = roothogs() + +pytestmark = pytest.mark.tools("mafft", "FastTree") + + +class Run: + def __init__(self, dataset, workdir, parallel): + self.dataset = dataset + self.workdir = workdir + self.species_tree_path = DATA / f"species_tree_{dataset}.nwk" + cmd = [sys.executable, "-c", RUNNER, + "--input-rhog-folder", str(DATA / dataset), + "--species-tree", str(self.species_tree_path), + "--output-pickles", "pickles", "-vv"] + if parallel: + cmd.append("--parallel") + # same environment as the fixed_hashseed fixture (which is function scoped) + env = dict(os.environ, PYTHONHASHSEED="0") + res = subprocess.run(cmd, cwd=workdir, env=env, capture_output=True, text=True) + assert res.returncode == 0, res.stdout[-3000:] + res.stderr[-3000:] + + def orthoxml(self, rhogid): + return etree.parse(str(self.workdir / f"ortho_{rhogid}.orthoxml")) + + def input_ids(self, rhogid): + return [r.id for r in SeqIO.parse(str(DATA / self.dataset / f"HOG_{rhogid}.fa"), "fasta")] + + def final_hogs(self, rhogid): + recs = list(SeqIO.parse(str(DATA / self.dataset / f"HOG_{rhogid}.fa"), "fasta")) + root = prepare_species_tree(recs, Tree(str(self.species_tree_path), format=1), rhogid)[0] + with open(self.workdir / f"rhog_{rhogid}" / f"{root.name}.pickle", "rb") as fh: + return pickle.load(fh) + + +_runs = {} + + +@pytest.fixture(scope="module") +def infer_run(tmp_path_factory): + def get(dataset, parallel=False): + key = (dataset, parallel) + if key not in _runs: + workdir = tmp_path_factory.mktemp(f"subhogs_{dataset}_{'par' if parallel else 'seq'}") + _runs[key] = Run(dataset, workdir, parallel) + return _runs[key] + yield get + _runs.clear() + + +def gene_species(tree): + return {g.get("id"): sp.get("name") for sp in tree.iterfind(".//o:species", NS) for g in sp.iterfind(".//o:gene", NS)} + + +def taxrange(elem): + p = elem.find("o:property[@name='TaxRange']", NS) + return None if p is None else p.get("value") + + +def ortholog_groups(tree): + return tree.findall(".//o:groups//o:orthologGroup", NS) + + +@pytest.mark.parametrize("dataset,rhogid", ROOTHOGS) +def test_no_protein_twice(infer_run, dataset, rhogid): + counts = geneRef_counts(infer_run(dataset).orthoxml(rhogid)) + assert counts and max(counts.values()) == 1 + + +@pytest.mark.parametrize("dataset,rhogid", roothogs(xfail={ + "D0625237": "BUG: split_hog drops subhogs not reached by any partition (_hog_class.py:636-643)"})) +def test_all_input_proteins_in_final_hogs(infer_run, dataset, rhogid): + run = infer_run(dataset) + members = [p for h in run.final_hogs(rhogid) for m in h.get_members() for p in m.split("_|_")] + assert sorted(members) == sorted(run.input_ids(rhogid)) + + +@pytest.mark.parametrize("dataset,rhogid", ROOTHOGS) +def test_written_genes_are_final_hogs_with_two_or_more_members(infer_run, dataset, rhogid): + run = infer_run(dataset) + hogs = run.final_hogs(rhogid) + expected = {m.split("||")[2] for h in hogs if len(h) >= 2 for m in h.get_members()} + written = set(geneRef_counts(run.orthoxml(rhogid), use_protid=False)) + assert written == expected + + +@pytest.mark.parametrize("dataset,rhogid", ROOTHOGS) +def test_top_level_groups_have_two_or_more_genes(infer_run, dataset, rhogid): + tree = infer_run(dataset).orthoxml(rhogid) + for group in tree.find(".//o:groups", NS): + assert len(group.findall(".//o:geneRef", NS)) >= 2 + + +@pytest.mark.parametrize("dataset,rhogid", ROOTHOGS) +def test_taxrange_nesting_follows_species_tree(infer_run, dataset, rhogid): + run = infer_run(dataset) + sptree = Tree(str(run.species_tree_path), format=1) + nodes = {n.name: n for n in sptree.traverse()} + for group in ortholog_groups(run.orthoxml(rhogid)): + parent = group.getparent() + while parent is not None and etree.QName(parent).localname == "paralogGroup": + parent = parent.getparent() + if etree.QName(parent).localname != "orthologGroup": + continue + child_node, parent_node = nodes[taxrange(group)], nodes[taxrange(parent)] + if group.getparent() is parent: + # directly nested orthologGroups are at strictly lower levels + assert parent_node in child_node.get_ancestors() + else: + # below a duplication the copies can span the same clade + assert child_node is parent_node or parent_node in child_node.get_ancestors() + + +@pytest.mark.parametrize("dataset,rhogid", roothogs(xfail={ + "D0625237": "BUG: root-level wrapper uses the HOG's level as TaxRange instead of the MRCA (_infer_subhog.py:120)"})) +def test_taxrange_is_mrca_of_member_species(infer_run, dataset, rhogid): + run = infer_run(dataset) + sptree = Tree(str(run.species_tree_path), format=1) + tree = run.orthoxml(rhogid) + species = gene_species(tree) + for group in ortholog_groups(tree): + member_species = {species[g.get("id")] for g in group.iterfind(".//o:geneRef", NS)} + mrca = sptree.get_common_ancestor(*member_species) if len(member_species) > 1 else sptree & member_species.pop() + assert taxrange(group) == mrca.name, group.get("id") + + +@pytest.mark.parametrize("dataset,rhogid", roothogs(xfail={ + "D0625237": "BUG: root-level paralogGroup wrapped in an orthologGroup with a single child (_infer_subhog.py:112-122)"})) +def test_orthoxml_schema(infer_run, dataset, rhogid): + tree = infer_run(dataset).orthoxml(rhogid) + # characterises current behaviour: the per-rootHOG debug file has no version/originVersion attributes + tree.getroot().set("version", "0.5") + tree.getroot().set("originVersion", "test") + assert orthoxml_validation_errors(tree) == [] + + +@pytest.mark.parametrize("dataset,rhogid", ROOTHOGS) +def test_parallel_and_sequential_give_same_hogs(infer_run, dataset, rhogid): + seq = infer_run(dataset).orthoxml(rhogid) + par = infer_run(dataset, parallel=True).orthoxml(rhogid) + assert canonical_orthoxml(seq) == canonical_orthoxml(par) + + +@pytest.mark.parametrize("dataset,rhogid", ROOTHOGS) +def test_output_pickle_matches_orthoxml(infer_run, dataset, rhogid): + run = infer_run(dataset) + with open(run.workdir / "pickles" / f"file_{rhogid}.pickle", "rb") as fh: + groups = pickle.load(fh) + assert len(groups) == len(run.orthoxml(rhogid).find(".//o:groups", NS)) + + +def test_cli_defaults(subhog_conf): + conf = subhog_conf() + assert conf.threshold_dubious_sd == pytest.approx(0.1) + assert conf.number_of_samples_per_hog == 5 + assert conf.overlap_fragments == pytest.approx(0.15) + assert conf.gene_rooting_method == "midpoint" + assert conf.msa_filter_method == "col-row-threshold" + assert (conf.gap_ratio_row, conf.gap_ratio_col, conf.min_col_trim) == (0.3, 0.5, 50) + assert (conf.store_completeness_score, conf.store_implied_losses_score, conf.store_tcs_score) == (True, True, True) + assert not conf.parallel and not conf.msa_write and not conf.gene_trees_write + assert conf.output_pickles == "pickle_hogs" From de46004909a9c3c5ee0bc9fad43ac004e1dad088 Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Wed, 4 Nov 2026 11:39:23 +0100 Subject: [PATCH 08/13] test: golden snapshots and no-dropped-protein checks on fungi-30 rootHOGs 23 rootHOGs (about 1,700 proteins) selected from a full fungi-30 run by the code paths they reach in fastoma-infer-subhogs (conflict resolution, split_hog, MSA trimming, fragments, deep nesting, --parallel) and by whether they drop proteins. - golden (13): the per-rootHOG output (nesting, TaxRange, scores) must equal a text snapshot in tests/data/fungi30/golden. The snapshots were generated with the working-tree code in the dessimozlab/fastoma:dev image and are identical to the fungi-30 run. They pin current behaviour, including the wrong ImpliedLosses values. - drops (10): fastoma-infer-subhogs drops proteins of these rootHOGs (in the fungi-30 run, 414 of 22,878 rootHOGs dropped 8,113 proteins). Checked only for "no protein dropped" as strict xfail, because the number of dropped proteins changes with small MSA differences. The output depends on the mafft/FastTree versions, so the golden tests skip in other environments. CI is pinned to ubuntu-24.04 (same mafft 7.505 / FastTree 2.1.11 as the image) and sets FASTOMA_REQUIRE_GOLDEN=1 to fail instead of skip. Regenerate with `python tests/fungi30.py regenerate` (needs docker). Co-Authored-By: Claude Opus 5.5 --- .github/workflows/python-tests.yml | 6 +- tests/data/fungi30/README.md | 41 +++ tests/data/fungi30/families.tsv | 24 ++ tests/data/fungi30/golden/ENVIRONMENT.json | 5 + tests/data/fungi30/golden/F0413304.txt | 10 + tests/data/fungi30/golden/F0453151.txt | 137 +++++++++ tests/data/fungi30/golden/F0459413.txt | 51 +++ tests/data/fungi30/golden/F0476910.txt | 52 ++++ tests/data/fungi30/golden/F0477229.txt | 36 +++ tests/data/fungi30/golden/F0478382.txt | 7 + tests/data/fungi30/golden/F0480898.txt | 45 +++ tests/data/fungi30/golden/F0485529.txt | 3 + tests/data/fungi30/golden/F0489906.txt | 13 + tests/data/fungi30/golden/F0848191.txt | 290 ++++++++++++++++++ tests/data/fungi30/golden/F0848294.txt | 54 ++++ tests/data/fungi30/golden/F1085561.txt | 53 ++++ tests/data/fungi30/golden/clust12762.txt | 55 ++++ tests/data/fungi30/rhogs/HOG_F0412257.fa.gz | Bin 0 -> 210150 bytes tests/data/fungi30/rhogs/HOG_F0413304.fa.gz | Bin 0 -> 1276 bytes tests/data/fungi30/rhogs/HOG_F0442015.fa.gz | Bin 0 -> 38295 bytes tests/data/fungi30/rhogs/HOG_F0450975.fa.gz | Bin 0 -> 1993 bytes tests/data/fungi30/rhogs/HOG_F0453151.fa.gz | Bin 0 -> 231810 bytes tests/data/fungi30/rhogs/HOG_F0453717.fa.gz | Bin 0 -> 7527 bytes tests/data/fungi30/rhogs/HOG_F0455646.fa.gz | Bin 0 -> 1969 bytes tests/data/fungi30/rhogs/HOG_F0455853.fa.gz | Bin 0 -> 3474 bytes tests/data/fungi30/rhogs/HOG_F0457125.fa.gz | Bin 0 -> 2280 bytes tests/data/fungi30/rhogs/HOG_F0459413.fa.gz | Bin 0 -> 4945 bytes tests/data/fungi30/rhogs/HOG_F0470062.fa.gz | Bin 0 -> 283199 bytes tests/data/fungi30/rhogs/HOG_F0476910.fa.gz | Bin 0 -> 10196 bytes tests/data/fungi30/rhogs/HOG_F0477170.fa.gz | Bin 0 -> 5202 bytes tests/data/fungi30/rhogs/HOG_F0477229.fa.gz | Bin 0 -> 8508 bytes tests/data/fungi30/rhogs/HOG_F0478382.fa.gz | Bin 0 -> 1168 bytes tests/data/fungi30/rhogs/HOG_F0480898.fa.gz | Bin 0 -> 6430 bytes tests/data/fungi30/rhogs/HOG_F0485529.fa.gz | Bin 0 -> 391 bytes tests/data/fungi30/rhogs/HOG_F0489395.fa.gz | Bin 0 -> 108417 bytes tests/data/fungi30/rhogs/HOG_F0489906.fa.gz | Bin 0 -> 1929 bytes tests/data/fungi30/rhogs/HOG_F0848191.fa.gz | Bin 0 -> 120799 bytes tests/data/fungi30/rhogs/HOG_F0848294.fa.gz | Bin 0 -> 3972 bytes tests/data/fungi30/rhogs/HOG_F1085561.fa.gz | Bin 0 -> 4259 bytes tests/data/fungi30/rhogs/HOG_clust12762.fa.gz | Bin 0 -> 11291 bytes tests/data/fungi30/species_tree.nwk | 1 + tests/fungi30.py | 223 ++++++++++++++ tests/test_fungi30.py | 92 ++++++ 43 files changed, 1197 insertions(+), 1 deletion(-) create mode 100644 tests/data/fungi30/README.md create mode 100644 tests/data/fungi30/families.tsv create mode 100644 tests/data/fungi30/golden/ENVIRONMENT.json create mode 100644 tests/data/fungi30/golden/F0413304.txt create mode 100644 tests/data/fungi30/golden/F0453151.txt create mode 100644 tests/data/fungi30/golden/F0459413.txt create mode 100644 tests/data/fungi30/golden/F0476910.txt create mode 100644 tests/data/fungi30/golden/F0477229.txt create mode 100644 tests/data/fungi30/golden/F0478382.txt create mode 100644 tests/data/fungi30/golden/F0480898.txt create mode 100644 tests/data/fungi30/golden/F0485529.txt create mode 100644 tests/data/fungi30/golden/F0489906.txt create mode 100644 tests/data/fungi30/golden/F0848191.txt create mode 100644 tests/data/fungi30/golden/F0848294.txt create mode 100644 tests/data/fungi30/golden/F1085561.txt create mode 100644 tests/data/fungi30/golden/clust12762.txt create mode 100644 tests/data/fungi30/rhogs/HOG_F0412257.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0413304.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0442015.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0450975.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0453151.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0453717.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0455646.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0455853.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0457125.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0459413.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0470062.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0476910.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0477170.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0477229.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0478382.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0480898.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0485529.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0489395.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0489906.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0848191.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F0848294.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_F1085561.fa.gz create mode 100644 tests/data/fungi30/rhogs/HOG_clust12762.fa.gz create mode 100644 tests/data/fungi30/species_tree.nwk create mode 100644 tests/fungi30.py create mode 100644 tests/test_fungi30.py diff --git a/.github/workflows/python-tests.yml b/.github/workflows/python-tests.yml index 79996c9..e3a48c2 100644 --- a/.github/workflows/python-tests.yml +++ b/.github/workflows/python-tests.yml @@ -16,7 +16,8 @@ concurrency: jobs: pytest: - runs-on: ubuntu-latest + # pinned: the golden snapshots of tests/test_fungi30.py need the mafft/FastTree versions of this image + runs-on: ubuntu-24.04 name: "pytest | python ${{ matrix.python-version }}" strategy: fail-fast: false @@ -45,6 +46,9 @@ jobs: python -m pip install -e . pytest - name: Run tests + env: + # fail rather than skip the golden snapshots if the tool versions changed + FASTOMA_REQUIRE_GOLDEN: "1" run: | if [ "${{ github.event_name }}" = "schedule" ] || [ "${{ github.event_name }}" = "workflow_dispatch" ]; then python -m pytest -ra diff --git a/tests/data/fungi30/README.md b/tests/data/fungi30/README.md new file mode 100644 index 0000000..045eeaa --- /dev/null +++ b/tests/data/fungi30/README.md @@ -0,0 +1,41 @@ +# fungi-30 rootHOG fixture + +23 rootHOGs (about 1,700 proteins) taken from a full FastOMA run on the fungi-30 dataset (`-profile fungi`, +FastOMA 0.5.1, `dessimozlab/fastoma:dev` image, November 2026) and used by `tests/test_fungi30.py`. + +- `rhogs/HOG_.fa.gz`: the rootHOG FASTA files exactly as `fastoma-infer-roothogs` wrote them in that run + (protein ids `||||`). The sequences are from UniProt reference proteomes + (CC BY 4.0). +- `species_tree.nwk`: the `species_tree_checked.nwk` of that run (all 30 proteomes, with polytomies). +- `families.tsv`: why each rootHOG was selected, its tier (`fast` runs on every PR, `slow` nightly), whether + it was run with `--parallel` (`par`, i.e. a `hog_big` rootHOG) and its kind: + - `golden`: the output is compared with `golden/.txt`. + - `drops`: `fastoma-infer-subhogs` drops proteins of this rootHOG (known bug). It is only checked for the + "no protein dropped" invariant, which is a strict xfail until the bug is fixed. How many proteins are + dropped changes with small MSA differences (e.g. 367 vs 11 of 496 for F0412257 with mafft 7.505 vs + 7.526), so these rootHOGs are not snapshotted. +- `golden/`: one text snapshot per golden rootHOG (nesting, TaxRange and scores of the groups passed on to + `collect-subhogs`) and `ENVIRONMENT.json` with the tool versions they were generated with. + +## Selection + +Every rootHOG of the run was classified from the `hog_big`/`hog_rest` task logs (conflict resolution, +split_hog, MSA trimming, fragment detection, dropped proteins, runtime) and the final orthoXML (nesting +depth, paralogGroups, scores). In that run, 414 of 22,878 rootHOGs dropped 8,113 of 265,464 proteins. + +Running these rootHOGs in the `dessimozlab/fastoma:dev` image reproduced the results of the full run +exactly. With mafft 7.526 instead of 7.505, clust12762 and all large rootHOGs gave different results. + +## Snapshots are not correctness + +The snapshots record current behaviour, including known bugs (e.g. the ImpliedLosses values). When a change +of the output is intended, regenerate them and review the diff: + +```bash +python tests/fungi30.py regenerate # needs docker; --tier fast|slow|all +git diff tests/data/fungi30/golden +``` + +Regeneration runs the working-tree code inside the container image, so the snapshots match CI (Ubuntu 24.04 +ships the same mafft 7.505 / FastTree 2.1.11 builds). With other tool versions, the snapshot tests are skipped +(or fail with `FASTOMA_REQUIRE_GOLDEN=1`, as in CI). diff --git a/tests/data/fungi30/families.tsv b/tests/data/fungi30/families.tsv new file mode 100644 index 0000000..b0fe0ff --- /dev/null +++ b/tests/data/fungi30/families.tsv @@ -0,0 +1,24 @@ +rhog tier mode kind reason +F0489906 fast seq golden conflict resolved without dropping proteins +F0459413 fast seq golden two conflicts resolved, nesting depth 10, 12 paralogGroups +F0476910 fast seq golden four conflicts resolved +F0413304 fast seq golden split_hog succeeds +F1085561 fast seq golden split_hog succeeds six times +F0477229 fast seq golden MSA row trimming removes six sequences +F0478382 fast seq golden fragments detected in the merged MSA +F0848294 fast seq golden 1:1 family over all 30 species, nesting depth 9 +F0480898 fast seq golden eight nested duplications +clust12762 fast seq golden linclust rootHOG with eight duplications; sensitive to the mafft version +F0485529 fast seq golden single-species rootHOG of two in-paralogs; nothing is reported +F0455853 fast seq drops conflict resolution drops 1 of 12 proteins +F0453717 fast seq drops three conflicts, drops 2 of 19 proteins +F0457125 fast seq drops MSA row trimming, drops 2 of 9 proteins +F0477170 fast seq drops MSA row trimming, drops 4 of 17 proteins +F0450975 fast seq drops drops 1 of 7 proteins without conflict or row trimming +F0455646 fast seq drops drops 1 of 9 proteins without conflict or row trimming +F0848191 slow seq golden large family over all 30 species (175 proteins) +F0453151 slow par golden performance canary: 101 proteins took 157s in the fungi-30 run +F0489395 slow seq drops two conflicts, drops 143 of 193 proteins in the fungi-30 run +F0442015 slow seq drops MSA row trimming, drops 90 of 186 proteins in the fungi-30 run +F0412257 slow par drops a single conflict drops 367 of 496 proteins in the fungi-30 run +F0470062 slow par drops hog_big rootHOG run with --parallel, drops 53 of 221 proteins in the fungi-30 run diff --git a/tests/data/fungi30/golden/ENVIRONMENT.json b/tests/data/fungi30/golden/ENVIRONMENT.json new file mode 100644 index 0000000..2dcaec8 --- /dev/null +++ b/tests/data/fungi30/golden/ENVIRONMENT.json @@ -0,0 +1,5 @@ +{ + "mafft": "v7.505 (2022/Apr/10)", + "FastTree": "2.1.11 Double precision (No SSE3)", + "image": "dessimozlab/fastoma:dev" +} diff --git a/tests/data/fungi30/golden/F0413304.txt b/tests/data/fungi30/golden/F0413304.txt new file mode 100644 index 0000000..eba9aca --- /dev/null +++ b/tests/data/fungi30/golden/F0413304.txt @@ -0,0 +1,10 @@ +# 4 input proteins, 2 groups, 4 proteins in groups + +orthologGroup Fungi CompletenessScore=0.0667 ImpliedLosses=2 TCSScore=0.0 + tr|A0A1Y2ETJ6|A0A1Y2ETJ6_9FUNG + tr|A0AA35IW45|A0AA35IW45_SACMI + +orthologGroup Fungi CompletenessScore=0.0667 ImpliedLosses=3 TCSScore=0.0 + paralogGroup + tr|A0A1Y2AI63|A0A1Y2AI63_9FUNG + tr|A0ABQ8PQ38|A0ABQ8PQ38_9FUNG diff --git a/tests/data/fungi30/golden/F0453151.txt b/tests/data/fungi30/golden/F0453151.txt new file mode 100644 index 0000000..a72b62e --- /dev/null +++ b/tests/data/fungi30/golden/F0453151.txt @@ -0,0 +1,137 @@ +# 101 input proteins, 1 groups, 86 proteins in groups + +orthologGroup Fungi CompletenessScore=0.6667 ImpliedLosses=120 TCSScore=20.314 + orthologGroup Dikarya CompletenessScore=0.6923 ImpliedLosses=118 TCSScore=17.4933 + orthologGroup Basidiomycota CompletenessScore=0.375 ImpliedLosses=3 TCSScore=2.2 + paralogGroup + orthologGroup Ustilaginomycotina CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.6667 + paralogGroup + tr|A0A0F7S8K2|A0A0F7S8K2_9BASI + tr|A0A0F7SAF1|A0A0F7SAF1_9BASI + tr|A0A0P1BDW4|A0A0P1BDW4_9BASI + tr|A0A0F7S400|A0A0F7S400_9BASI + tr|M7XCB9|M7XCB9_RHOT1 + paralogGroup + orthologGroup Sordariomycetes CompletenessScore=0.4444 ImpliedLosses=4 TCSScore=1.5 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A7J6IG66|A0A7J6IG66_COLFN + tr|A0AAX4IHJ5|A0AAX4IHJ5_9PEZI + orthologGroup Sordariomycetidae CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A2P5HUN9|A0A2P5HUN9_DIAHE + tr|A0ABQ8NNB3|A0ABQ8NNB3_PYRGI + orthologGroup leotiomyceta CompletenessScore=0.25 ImpliedLosses=8 TCSScore=4.25 + orthologGroup Hypocreales CompletenessScore=0.75 ImpliedLosses=2 TCSScore=0.6667 + orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395SPL0|A0A395SPL0_FUSSP + tr|A0A8H5KVI5|A0A8H5KVI5_GIBSU + tr|G9N0Q0|G9N0Q0_HYPVG + tr|F2PYR0|F2PYR0_TRIEC + orthologGroup leotiomyceta CompletenessScore=0.9375 ImpliedLosses=101 TCSScore=5.0161 + paralogGroup + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1L9VRU9|A0A1L9VRU9_ASPGL + tr|A0A1V6PLF3|A0A1V6PLF3_PENDC + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1B7NX54|A0A1B7NX54_9EURO + tr|F2Q0I0|F2Q0I0_TRIEC + tr|A0A0D2FPJ6|A0A0D2FPJ6_CLAB1 + paralogGroup + orthologGroup Eurotiomycetidae CompletenessScore=0.75 ImpliedLosses=6 TCSScore=0.8 + paralogGroup + tr|A0A1B7NXM4|A0A1B7NXM4_9EURO + tr|F2PIH5|F2PIH5_TRIEC + tr|F2PJ36|F2PJ36_TRIEC + tr|F2Q5N8|F2Q5N8_TRIEC + tr|A0A1L9VJB7|A0A1L9VJB7_ASPGL + tr|A0A1L9V5W5|A0A1L9V5W5_ASPGL + tr|A0A1L9V9J8|A0A1L9V9J8_ASPGL + tr|A0A1L9VX51|A0A1L9VX51_ASPGL + tr|F2PKQ3|F2PKQ3_TRIEC + tr|F2PLE6|F2PLE6_TRIEC + tr|F2PM61|F2PM61_TRIEC + tr|F2PV36|F2PV36_TRIEC + paralogGroup + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395S0Z2|A0A395S0Z2_FUSSP + tr|A0A8H5P5V9|A0A8H5P5V9_GIBSU + tr|A0A9P9JQS6|A0A9P9JQS6_FUSSL + orthologGroup Hypocreales CompletenessScore=0.75 ImpliedLosses=2 TCSScore=1.0 + orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395SR55|A0A395SR55_FUSSP + tr|A0A8H5PCB0|A0A8H5PCB0_GIBSU + paralogGroup + tr|G9MUQ4|G9MUQ4_HYPVG + tr|G9MZ61|G9MZ61_HYPVG + orthologGroup Hypocreomycetidae CompletenessScore=0.5 ImpliedLosses=4 TCSScore=0.6667 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A7J6ID17|A0A7J6ID17_COLFN + tr|A0AAX4J184|A0AAX4J184_9PEZI + tr|A0A395S871|A0A395S871_FUSSP + orthologGroup Sordariomycetes CompletenessScore=0.2222 ImpliedLosses=4 TCSScore=1.3333 + paralogGroup + tr|A0ABQ8NJB1|A0ABQ8NJB1_PYRGI + tr|A0ABQ8NNL9|A0ABQ8NNL9_PYRGI + tr|G9MVA5|G9MVA5_HYPVG + orthologGroup Sordariomycetes CompletenessScore=0.3333 ImpliedLosses=9 TCSScore=2.4 + paralogGroup + orthologGroup Hypocreales CompletenessScore=0.5 ImpliedLosses=2 TCSScore=0.0 + tr|A0A9P9KUY9|A0A9P9KUY9_FUSSL + tr|G9MKA1|G9MKA1_HYPVG + tr|G9MUY2|G9MUY2_HYPVG + tr|G9N4C5|G9N4C5_HYPVG + tr|A0ABQ8NPS7|A0ABQ8NPS7_PYRGI + orthologGroup Sordariomycetes CompletenessScore=0.5556 ImpliedLosses=5 TCSScore=3.4 + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395SQY0|A0A395SQY0_FUSSP + tr|A0A8H5Q5X1|A0A8H5Q5X1_GIBSU + tr|A0A9P9HA30|A0A9P9HA30_FUSSL + tr|G9MWP4|G9MWP4_HYPVG + tr|A0A2P5IFJ7|A0A2P5IFJ7_DIAHE + orthologGroup Sordariomycetes CompletenessScore=0.6667 ImpliedLosses=6 TCSScore=2.3333 + orthologGroup Hypocreomycetidae CompletenessScore=0.6667 ImpliedLosses=4 TCSScore=1.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAX4IDB4|A0AAX4IDB4_9PEZI + tr|L2FJK3|L2FJK3_COLFN + orthologGroup Hypocreales CompletenessScore=0.5 ImpliedLosses=2 TCSScore=0.0 + tr|A0A9P9H1B9|A0A9P9H1B9_FUSSL + tr|G9N2Z7|G9N2Z7_HYPVG + orthologGroup Sordariomycetidae CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0ABQ8NQ86|A0ABQ8NQ86_PYRGI + tr|Q1K8N5|Q1K8N5_NEUCR + paralogGroup + orthologGroup Hypocreales CompletenessScore=0.5 ImpliedLosses=2 TCSScore=0.75 + paralogGroup + tr|G9MPI7|G9MPI7_HYPVG + tr|G9MXP9|G9MXP9_HYPVG + tr|G9N3N0|G9N3N0_HYPVG + tr|A0A395SC72|A0A395SC72_FUSSP + tr|A0A8H5KYU1|A0A8H5KYU1_GIBSU + paralogGroup + tr|A0AAX4HWZ4|A0AAX4HWZ4_9PEZI + tr|G9MWW6|G9MWW6_HYPVG + tr|A0A2P5I048|A0A2P5I048_DIAHE + tr|A0A395S4M2|A0A395S4M2_FUSSP + tr|A0A395SBK7|A0A395SBK7_FUSSP + tr|A0A9P9KU18|A0A9P9KU18_FUSSL + tr|A0AAX4IC69|A0AAX4IC69_9PEZI + tr|A0AAX4J3X1|A0AAX4J3X1_9PEZI + tr|A0ABQ8NIE5|A0ABQ8NIE5_PYRGI + paralogGroup + tr|A0A7C8I9Y5|A0A7C8I9Y5_9PLEO + tr|A0A7C8IAS7|A0A7C8IAS7_9PLEO + orthologGroup Fungiincertaesedis CompletenessScore=0.5 ImpliedLosses=1 TCSScore=0.9091 + paralogGroup + tr|A0A1Y1YU83|A0A1Y1YU83_9FUNG + tr|A0A1Y2A814|A0A1Y2A814_9FUNG + tr|A0A1Y2AH12|A0A1Y2AH12_9FUNG + tr|A0A1Y2B4U0|A0A1Y2B4U0_9FUNG + tr|A0A1Y2B4U1|A0A1Y2B4U1_9FUNG + tr|A0A1Y2B531|A0A1Y2B531_9FUNG + tr|A0A1Y2B5M5|A0A1Y2B5M5_9FUNG + tr|A0A1Y2BEC1|A0A1Y2BEC1_9FUNG + tr|A0A1Y2C3D0|A0A1Y2C3D0_9FUNG + tr|A0A1Y2DMF1|A0A1Y2DMF1_9FUNG + tr|A0ABN7V2T2|A0ABN7V2T2_GIGMA diff --git a/tests/data/fungi30/golden/F0459413.txt b/tests/data/fungi30/golden/F0459413.txt new file mode 100644 index 0000000..9ef5d78 --- /dev/null +++ b/tests/data/fungi30/golden/F0459413.txt @@ -0,0 +1,51 @@ +# 26 input proteins, 1 groups, 26 proteins in groups + +orthologGroup Dikarya CompletenessScore=0.4615 ImpliedLosses=25 TCSScore=20.6538 + orthologGroup Basidiomycota CompletenessScore=0.25 ImpliedLosses=1 TCSScore=0.6667 + paralogGroup + tr|M7WKC3|M7WKC3_RHOT1 + tr|M7XDE6|M7XDE6_RHOT1 + tr|A0A067TG69|A0A067TG69_GALM3 + paralogGroup + orthologGroup leotiomyceta CompletenessScore=0.4375 ImpliedLosses=7 TCSScore=4.1111 + orthologGroup Sordariomycetes CompletenessScore=0.4444 ImpliedLosses=4 TCSScore=4.0 + orthologGroup Hypocreales CompletenessScore=0.75 ImpliedLosses=2 TCSScore=1.0 + orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A8H5NQD1|A0A8H5NQD1_GIBSU + tr|A0A9P9KTM1|A0A9P9KTM1_FUSSL + paralogGroup + tr|G9MRY1|G9MRY1_HYPVG + tr|G9MWX3|G9MWX3_HYPVG + tr|A0A2P5HH10|A0A2P5HH10_DIAHE + paralogGroup + tr|A0A0D2GGZ5|A0A0D2GGZ5_CLAB1 + tr|A0A1L9V7F2|A0A1L9V7F2_ASPGL + paralogGroup + tr|A0A7C8IAK2|A0A7C8IAK2_9PLEO + tr|A0A7C8MMZ9|A0A7C8MMZ9_9PLEO + orthologGroup leotiomyceta CompletenessScore=0.5625 ImpliedLosses=16 TCSScore=9.5 + paralogGroup + orthologGroup Sordariomycetes CompletenessScore=0.6667 ImpliedLosses=7 TCSScore=7.3333 + paralogGroup + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=3 TCSScore=2.2857 + paralogGroup + orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395SGZ3|A0A395SGZ3_FUSSP + tr|A0A9P9KT16|A0A9P9KT16_FUSSL + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.5 + paralogGroup + tr|A0A9P9HBT0|A0A9P9HBT0_FUSSL + tr|A0A9P9KT27|A0A9P9KT27_FUSSL + tr|A0A395RUQ0|A0A395RUQ0_FUSSP + tr|A0A8H5L0G4|A0A8H5L0G4_GIBSU + tr|G9MYJ3|G9MYJ3_HYPVG + tr|A0AAX4I6A1|A0AAX4I6A1_9PEZI + tr|A0A2P5HEK2|A0A2P5HEK2_DIAHE + paralogGroup + paralogGroup + tr|A0A7J6J8J1|A0A7J6J8J1_COLFN + tr|A0AAX4ITF3|A0AAX4ITF3_9PEZI + tr|A0AAX4IYH9|A0AAX4IYH9_9PEZI + paralogGroup + tr|A0A0D2EF97|A0A0D2EF97_CLAB1 + tr|A0A1L9VXN8|A0A1L9VXN8_ASPGL diff --git a/tests/data/fungi30/golden/F0476910.txt b/tests/data/fungi30/golden/F0476910.txt new file mode 100644 index 0000000..64dde85 --- /dev/null +++ b/tests/data/fungi30/golden/F0476910.txt @@ -0,0 +1,52 @@ +# 34 input proteins, 1 groups, 33 proteins in groups + +orthologGroup Fungi CompletenessScore=0.3667 ImpliedLosses=19 TCSScore=12.1515 + paralogGroup + orthologGroup Dikarya CompletenessScore=0.3077 ImpliedLosses=7 TCSScore=9.0 + orthologGroup leotiomyceta CompletenessScore=0.375 ImpliedLosses=4 TCSScore=1.8571 + orthologGroup Sordariomycetes CompletenessScore=0.3333 ImpliedLosses=2 TCSScore=2.0 + orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395SBE1|A0A395SBE1_FUSSP + tr|A0A9P9R990|A0A9P9R990_FUSSL + tr|Q7SD43|Q7SD43_NEUCR + paralogGroup + tr|A0A7C8M6G8|A0A7C8M6G8_9PLEO + tr|A0A7C8ME07|A0A7C8ME07_9PLEO + tr|A0A0D2HEG1|A0A0D2HEG1_CLAB1 + tr|A0A165G1Y1|A0A165G1Y1_XYLHT + paralogGroup + orthologGroup Agaricales CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=1.0 + paralogGroup + tr|A0A067S5K1|A0A067S5K1_GALM3 + tr|A0A067S7G5|A0A067S7G5_GALM3 + tr|A0A067S7J5|A0A067S7J5_GALM3 + tr|A0A067S7N9|A0A067S7N9_GALM3 + tr|A0A067S839|A0A067S839_GALM3 + tr|A0A067S9Z7|A0A067S9Z7_GALM3 + tr|A0A067SDK3|A0A067SDK3_GALM3 + tr|A0A067SEH4|A0A067SEH4_GALM3 + tr|A0A067SGA6|A0A067SGA6_GALM3 + tr|A0A067TCL5|A0A067TCL5_GALM3 + tr|A0A067TCR6|A0A067TCR6_GALM3 + paralogGroup + tr|A0A0C2YMZ1|A0A0C2YMZ1_HEBCY + tr|A0A0C3CHJ8|A0A0C3CHJ8_HEBCY + tr|A0A0C3CIW7|A0A0C3CIW7_HEBCY + tr|A0A067STW1|A0A067STW1_GALM3 + orthologGroup leotiomyceta CompletenessScore=0.125 ImpliedLosses=3 TCSScore=0.0 + tr|A0A164Z8X8|A0A164Z8X8_XYLHT + tr|A0A1V6NNK1|A0A1V6NNK1_PENDC + orthologGroup leotiomyceta CompletenessScore=0.25 ImpliedLosses=3 TCSScore=4.2 + orthologGroup Eurotiomycetes CompletenessScore=0.6 ImpliedLosses=2 TCSScore=3.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.6667 + paralogGroup + tr|A0A1L9V458|A0A1L9V458_ASPGL + tr|A0A1L9VLC0|A0A1L9VLC0_ASPGL + tr|A0A1V6NR88|A0A1V6NR88_PENDC + tr|A0A0D2HK19|A0A0D2HK19_CLAB1 + tr|A0A7C8MDA3|A0A7C8MDA3_9PLEO + tr|A0A0D2HJK2|A0A0D2HJK2_CLAB1 + paralogGroup + tr|A0ABM8W3Y2|A0ABM8W3Y2_GIGMA + tr|A0ABN7V5G4|A0ABN7V5G4_GIGMA + tr|A0ABN7WS42|A0ABN7WS42_GIGMA diff --git a/tests/data/fungi30/golden/F0477229.txt b/tests/data/fungi30/golden/F0477229.txt new file mode 100644 index 0000000..838bf74 --- /dev/null +++ b/tests/data/fungi30/golden/F0477229.txt @@ -0,0 +1,36 @@ +# 27 input proteins, 1 groups, 21 proteins in groups + +orthologGroup Dikarya CompletenessScore=0.4615 ImpliedLosses=15 TCSScore=16.0476 + orthologGroup Agaricales CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.6667 + paralogGroup + tr|A0A067S4V6|A0A067S4V6_GALM3 + tr|A0A067T8Z9|A0A067T8Z9_GALM3 + tr|A0A0C3CZU8|A0A0C3CZU8_HEBCY + orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=13 TCSScore=6.1111 + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.75 + paralogGroup + tr|F2PXP9|F2PXP9_TRIEC + tr|F2PYJ4|F2PYJ4_TRIEC + tr|F2Q4D0|F2Q4D0_TRIEC + tr|A0A1B7P4W4|A0A1B7P4W4_9EURO + paralogGroup + orthologGroup Sordariomycetes CompletenessScore=0.6667 ImpliedLosses=5 TCSScore=4.1 + orthologGroup Hypocreomycetidae CompletenessScore=0.6667 ImpliedLosses=3 TCSScore=2.25 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.8333 + paralogGroup + tr|A0A7J6ICM4|A0A7J6ICM4_COLFN + tr|A0A7J6IHN8|A0A7J6IHN8_COLFN + tr|A0A7J6IMY3|A0A7J6IMY3_COLFN + tr|A0A7J6JBZ8|A0A7J6JBZ8_COLFN + tr|L2GDX0|L2GDX0_COLFN + tr|A0AAX4I0N0|A0AAX4I0N0_9PEZI + orthologGroup Hypocreales CompletenessScore=0.5 ImpliedLosses=1 TCSScore=0.0 + tr|A0A9P9JYY1|A0A9P9JYY1_FUSSL + tr|G9MTS0|G9MTS0_HYPVG + orthologGroup Sordariomycetidae CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A2P5ID70|A0A2P5ID70_DIAHE + tr|A0ABQ8NUF1|A0ABQ8NUF1_PYRGI + tr|G9MRU2|G9MRU2_HYPVG + tr|G9N670|G9N670_HYPVG + tr|A0A165GUZ4|A0A165GUZ4_XYLHT + tr|A0A7C8M9S8|A0A7C8M9S8_9PLEO diff --git a/tests/data/fungi30/golden/F0478382.txt b/tests/data/fungi30/golden/F0478382.txt new file mode 100644 index 0000000..0519f65 --- /dev/null +++ b/tests/data/fungi30/golden/F0478382.txt @@ -0,0 +1,7 @@ +# 4 input proteins, 1 groups, 3 proteins in groups + +orthologGroup leotiomyceta CompletenessScore=0.1875 ImpliedLosses=2 TCSScore=1.3333 + orthologGroup Hypocreomycetidae CompletenessScore=0.3333 ImpliedLosses=1 TCSScore=0.0 + tr|A0A8H5V9V0|A0A8H5V9V0_GIBSU + tr|A0AAX4IL06|A0AAX4IL06_9PEZI + tr|A0A7C8ICJ0|A0A7C8ICJ0_9PLEO diff --git a/tests/data/fungi30/golden/F0480898.txt b/tests/data/fungi30/golden/F0480898.txt new file mode 100644 index 0000000..6f11392 --- /dev/null +++ b/tests/data/fungi30/golden/F0480898.txt @@ -0,0 +1,45 @@ +# 24 input proteins, 1 groups, 24 proteins in groups + +orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=21 TCSScore=6.5833 + paralogGroup + orthologGroup Eurotiomycetidae CompletenessScore=0.5 ImpliedLosses=1 TCSScore=1.5 + paralogGroup + tr|A0A1L9V4W9|A0A1L9V4W9_ASPGL + tr|A0A1L9V7S2|A0A1L9V7S2_ASPGL + tr|A0A1L9VLF5|A0A1L9VLF5_ASPGL + tr|A0A1B7P0W3|A0A1B7P0W3_9EURO + tr|A0A1L9V624|A0A1L9V624_ASPGL + paralogGroup + orthologGroup Sordariomycetes CompletenessScore=0.3333 ImpliedLosses=7 TCSScore=2.8 + paralogGroup + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A7J6JGH0|A0A7J6JGH0_COLFN + tr|A0AAX4I0Q8|A0AAX4I0Q8_9PEZI + tr|L2FWK4|L2FWK4_COLFN + paralogGroup + tr|A0ABQ8NRX1|A0ABQ8NRX1_PYRGI + tr|A0ABQ8NYR1|A0ABQ8NYR1_PYRGI + orthologGroup Sordariomycetes CompletenessScore=0.7778 ImpliedLosses=8 TCSScore=3.9091 + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A2P5I609|A0A2P5I609_DIAHE + tr|A0ABQ8NGB4|A0ABQ8NGB4_PYRGI + tr|V5IKJ7|V5IKJ7_NEUCR + paralogGroup + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A7J6J4I6|A0A7J6J4I6_COLFN + tr|A0AAX4I0H8|A0AAX4I0H8_9PEZI + orthologGroup Hypocreomycetidae CompletenessScore=0.6667 ImpliedLosses=4 TCSScore=2.0 + orthologGroup Fusarium CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A8H5Q8E8|A0A8H5Q8E8_GIBSU + tr|A0A9P9L841|A0A9P9L841_FUSSL + paralogGroup + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAX4ICN6|A0AAX4ICN6_9PEZI + tr|L2FCD7|L2FCD7_COLFN + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAX4ITE2|A0AAX4ITE2_9PEZI + tr|L2FSM0|L2FSM0_COLFN + tr|A0A7J6J952|A0A7J6J952_COLFN + paralogGroup + tr|A0A7C8MBL4|A0A7C8MBL4_9PLEO + tr|A0A7C8MVB6|A0A7C8MVB6_9PLEO diff --git a/tests/data/fungi30/golden/F0485529.txt b/tests/data/fungi30/golden/F0485529.txt new file mode 100644 index 0000000..8fd3dfa --- /dev/null +++ b/tests/data/fungi30/golden/F0485529.txt @@ -0,0 +1,3 @@ +# 2 input proteins, 0 groups, 0 proteins in groups + + diff --git a/tests/data/fungi30/golden/F0489906.txt b/tests/data/fungi30/golden/F0489906.txt new file mode 100644 index 0000000..7ec79fa --- /dev/null +++ b/tests/data/fungi30/golden/F0489906.txt @@ -0,0 +1,13 @@ +# 6 input proteins, 1 groups, 6 proteins in groups + +orthologGroup Dikarya CompletenessScore=0.1923 ImpliedLosses=5 TCSScore=8.1667 + paralogGroup + orthologGroup leotiomyceta CompletenessScore=0.25 ImpliedLosses=3 TCSScore=1.75 + orthologGroup Eurotiomycetes CompletenessScore=0.6 ImpliedLosses=2 TCSScore=0.6667 + orthologGroup Eurotiomycetidae CompletenessScore=0.5 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1B7NPW6|A0A1B7NPW6_9EURO + tr|A0A1L9VKP1|A0A1L9VKP1_ASPGL + tr|A0A0D2ESI3|A0A0D2ESI3_CLAB1 + tr|A0A9P9G213|A0A9P9G213_FUSSL + tr|A0A9P9JYK9|A0A9P9JYK9_FUSSL + tr|A0A0P1B925|A0A0P1B925_9BASI diff --git a/tests/data/fungi30/golden/F0848191.txt b/tests/data/fungi30/golden/F0848191.txt new file mode 100644 index 0000000..4b35b7a --- /dev/null +++ b/tests/data/fungi30/golden/F0848191.txt @@ -0,0 +1,290 @@ +# 175 input proteins, 4 groups, 167 proteins in groups + +orthologGroup Fungi CompletenessScore=0.7333 ImpliedLosses=32 TCSScore=22.3611 + orthologGroup Dikarya CompletenessScore=0.7308 ImpliedLosses=28 TCSScore=18.8387 + orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=25 TCSScore=13.6333 + orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=24 TCSScore=9.1034 + paralogGroup + orthologGroup Sordariomycetes CompletenessScore=0.3333 ImpliedLosses=4 TCSScore=1.3333 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAX4I2Q2|A0AAX4I2Q2_9PEZI + tr|L2FU61|L2FU61_COLFN + tr|A0A2P5HLA9|A0A2P5HLA9_DIAHE + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.3333 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAX4I2R5|A0AAX4I2R5_9PEZI + tr|L2G588|L2G588_COLFN + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395SEL3|A0A395SEL3_FUSSP + tr|A0A8H5PFR4|A0A8H5PFR4_GIBSU + tr|A0A9P9RCW9|A0A9P9RCW9_FUSSL + tr|G9N6T3|G9N6T3_HYPVG + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A2P5HL47|A0A2P5HL47_DIAHE + tr|Q7S836|Q7S836_NEUCR + tr|Q96UW1|Q96UW1_PYRGI + orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=11 TCSScore=5.125 + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1L9VYU4|A0A1L9VYU4_ASPGL + tr|A0A1V6P8M2|A0A1V6P8M2_PENDC + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1B7NPZ8|A0A1B7NPZ8_9EURO + tr|F2PUU8|F2PUU8_TRIEC + tr|A0A0D2ELH6|A0A0D2ELH6_CLAB1 + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.3333 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAX4I8K4|A0AAX4I8K4_9PEZI + tr|L2FXL1|L2FXL1_COLFN + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395RLI0|A0A395RLI0_FUSSP + tr|A0A8H5UZ13|A0A8H5UZ13_GIBSU + tr|A0A9P9HJ80|A0A9P9HJ80_FUSSL + tr|G9MGW2|G9MGW2_HYPVG + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A2P5I8E1|A0A2P5I8E1_DIAHE + tr|A0ABQ8N4J5|A0ABQ8N4J5_PYRGI + tr|Q7S7W1|Q7S7W1_NEUCR + tr|A0A165JSQ7|A0A165JSQ7_XYLHT + tr|A0A7C8M810|A0A7C8M810_9PLEO + tr|A0AA35IRL9|A0AA35IRL9_SACMI + sp|Q9UT43|ATC8_SCHPO + tr|A0AAW0G776|A0AAW0G776_9APHY + orthologGroup Fungiincertaesedis CompletenessScore=0.75 ImpliedLosses=3 TCSScore=1.2 + paralogGroup + tr|A0A1Y1ZPJ8|A0A1Y1ZPJ8_9FUNG + tr|A0A1Y2B225|A0A1Y2B225_9FUNG + paralogGroup + tr|A0ABM8VX59|A0ABM8VX59_GIGMA + tr|A0ABN7UHV8|A0ABN7UHV8_GIGMA + tr|A0ABQ8PV12|A0ABQ8PV12_9FUNG + +orthologGroup Fungi CompletenessScore=0.9667 ImpliedLosses=22 TCSScore=15.2188 + orthologGroup Dikarya CompletenessScore=0.9615 ImpliedLosses=19 TCSScore=13.2 + orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=13 TCSScore=11.7222 + orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=12 TCSScore=8.1176 + orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=11 TCSScore=5.125 + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1L9VMD5|A0A1L9VMD5_ASPGL + tr|A0A1V6PLY2|A0A1V6PLY2_PENDC + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1B7P7I3|A0A1B7P7I3_9EURO + tr|F2PM24|F2PM24_TRIEC + tr|A0A0D2IQY6|A0A0D2IQY6_CLAB1 + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.3333 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A7J6J338|A0A7J6J338_COLFN + tr|A0AAX4HZ44|A0AAX4HZ44_9PEZI + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395SAR2|A0A395SAR2_FUSSP + tr|A0A8H5PDA4|A0A8H5PDA4_GIBSU + tr|A0A9P9L1T3|A0A9P9L1T3_FUSSL + tr|G9MMK6|G9MMK6_HYPVG + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A2P5IDA2|A0A2P5IDA2_DIAHE + tr|A0ABQ8P235|A0ABQ8P235_PYRGI + tr|Q7RZL3|Q7RZL3_NEUCR + tr|A0A165FY10|A0A165FY10_XYLHT + tr|A0A7C8MRI7|A0A7C8MRI7_9PLEO + tr|A0AA35IX53|A0AA35IX53_SACMI + sp|O94296|ATC3_SCHPO + orthologGroup Basidiomycota CompletenessScore=0.875 ImpliedLosses=5 TCSScore=1.7143 + orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 + orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A067SYV3|A0A067SYV3_GALM3 + tr|A0A0C3C8P4|A0A0C3C8P4_HEBCY + tr|B0D0Z2|B0D0Z2_LACBS + tr|A0AAW0GDM5|A0AAW0GDM5_9APHY + orthologGroup Ustilaginomycotina CompletenessScore=0.6667 ImpliedLosses=2 TCSScore=0.0 + tr|A0A0F7S3X1|A0A0F7S3X1_9BASI + tr|A0A316UVR8|A0A316UVR8_9BASI + tr|M7XXB6|M7XXB6_RHOT1 + orthologGroup Fungiincertaesedis CompletenessScore=1.0 ImpliedLosses=2 TCSScore=1.4286 + orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.6667 + paralogGroup + tr|A0AAD7V2H0|A0AAD7V2H0_9FUNG + tr|A0AAD7XWI9|A0AAD7XWI9_9FUNG + tr|A0ABN7VMC2|A0ABN7VMC2_GIGMA + paralogGroup + tr|A0A1Y2AWR0|A0A1Y2AWR0_9FUNG + tr|A0A1Y2F4G6|A0A1Y2F4G6_9FUNG + tr|A0A1Y2FFW8|A0A1Y2FFW8_9FUNG + tr|A0ABQ8PU82|A0ABQ8PU82_9FUNG + +orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=28 TCSScore=13.175 + orthologGroup Dikarya CompletenessScore=1.0 ImpliedLosses=19 TCSScore=12.6071 + orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=13 TCSScore=11.7222 + orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=12 TCSScore=8.1176 + orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=11 TCSScore=5.125 + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1L9VD89|A0A1L9VD89_ASPGL + tr|A0A1V6PG37|A0A1V6PG37_PENDC + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1B7P7T3|A0A1B7P7T3_9EURO + tr|F2PZY6|F2PZY6_TRIEC + tr|A0A0D2GF51|A0A0D2GF51_CLAB1 + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.3333 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAX4I8R9|A0AAX4I8R9_9PEZI + tr|L2G5Z9|L2G5Z9_COLFN + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395SM71|A0A395SM71_FUSSP + tr|A0A8H5PY59|A0A8H5PY59_GIBSU + tr|A0A9P9KN43|A0A9P9KN43_FUSSL + tr|G9MH84|G9MH84_HYPVG + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A2P5IDQ5|A0A2P5IDQ5_DIAHE + tr|A0ABQ8NXB0|A0ABQ8NXB0_PYRGI + tr|Q1K7F7|Q1K7F7_NEUCR + tr|A0A165FUL6|A0A165FUL6_XYLHT + tr|A0A7C8MF34|A0A7C8MF34_9PLEO + tr|A0AA35J0Z5|A0AA35J0Z5_SACMI + sp|Q10309|ATC7_SCHPO + orthologGroup Basidiomycota CompletenessScore=1.0 ImpliedLosses=5 TCSScore=2.4 + orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=2 TCSScore=1.0 + orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A067TE99|A0A067TE99_GALM3 + tr|A0A0C3C0S6|A0A0C3C0S6_HEBCY + tr|B0DWL6|B0DWL6_LACBS + paralogGroup + tr|A0AAW0FB63|A0AAW0FB63_9APHY + tr|A0AAW0G052|A0AAW0G052_9APHY + orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.6667 + orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A0P1BME0|A0A0P1BME0_9BASI + tr|A0A316ULH2|A0A316ULH2_9BASI + tr|A0A0F7S4M1|A0A0F7S4M1_9BASI + paralogGroup + tr|M7WHX4|M7WHX4_RHOT1 + tr|M7XR38|M7XR38_RHOT1 + paralogGroup + orthologGroup Fungiincertaesedis CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.8333 + orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAD7UTJ8|A0AAD7UTJ8_9FUNG + tr|A0ABN7UYE4|A0ABN7UYE4_GIGMA + paralogGroup + tr|A0A1Y2AE51|A0A1Y2AE51_9FUNG + tr|A0A1Y2AHY8|A0A1Y2AHY8_9FUNG + tr|A0A1Y2F6L3|A0A1Y2F6L3_9FUNG + tr|A0ABQ8PEK3|A0ABQ8PEK3_9FUNG + tr|A0A1Y2A3Z8|A0A1Y2A3Z8_9FUNG + tr|A0A1Y2DPB3|A0A1Y2DPB3_9FUNG + tr|A0A1Y2DPB8|A0A1Y2DPB8_9FUNG + tr|A0A1Y2E2P9|A0A1Y2E2P9_9FUNG + tr|A0A1Y2E329|A0A1Y2E329_9FUNG + tr|A0A1Y2E5M3|A0A1Y2E5M3_9FUNG + +orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=44 TCSScore=12.7797 + paralogGroup + orthologGroup Basidiomycota CompletenessScore=1.0 ImpliedLosses=8 TCSScore=2.5455 + orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.6667 + orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A0P1BQC6|A0A0P1BQC6_9BASI + tr|A0A316UXC2|A0A316UXC2_9BASI + tr|A0A0F7RS93|A0A0F7RS93_9BASI + paralogGroup + orthologGroup Agaricales CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A067T192|A0A067T192_GALM3 + tr|A0A0C2YFW7|A0A0C2YFW7_HEBCY + orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 + orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A067SUC6|A0A067SUC6_GALM3 + tr|A0A0C3CJ14|A0A0C3CJ14_HEBCY + tr|B0DQ40|B0DQ40_LACBS + tr|A0AAW0GKU4|A0AAW0GKU4_9APHY + tr|A0AAW0GN29|A0AAW0GN29_9APHY + tr|M7WXI4|M7WXI4_RHOT1 + orthologGroup Dikarya CompletenessScore=0.9615 ImpliedLosses=22 TCSScore=13.0667 + orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=13 TCSScore=11.3333 + orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=12 TCSScore=8.1053 + orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=11 TCSScore=5.3529 + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1L9V8A8|A0A1L9V8A8_ASPGL + tr|A0A1V6PFJ5|A0A1V6PFJ5_PENDC + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1B7P546|A0A1B7P546_9EURO + tr|F2PX54|F2PX54_TRIEC + tr|A0A0D2HRY1|A0A0D2HRY1_CLAB1 + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.5 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A7J6IT22|A0A7J6IT22_COLFN + tr|A0AAX4IIC0|A0AAX4IIC0_9PEZI + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395SBU8|A0A395SBU8_FUSSP + tr|A0A8H5V8Q5|A0A8H5V8Q5_GIBSU + tr|A0A9P9KZI6|A0A9P9KZI6_FUSSL + tr|G9MQ06|G9MQ06_HYPVG + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.5 + paralogGroup + tr|A0A2P5HKR8|A0A2P5HKR8_DIAHE + tr|A0A2P5I0U7|A0A2P5I0U7_DIAHE + tr|A0ABQ8NZZ0|A0ABQ8NZZ0_PYRGI + tr|Q7SF11|Q7SF11_NEUCR + tr|A0A165FCM4|A0A165FCM4_XYLHT + tr|A0A7C8I895|A0A7C8I895_9PLEO + paralogGroup + tr|A0AA35IW22|A0AA35IW22_SACMI + tr|A0AA35IX89|A0AA35IX89_SACMI + paralogGroup + sp|O36028|ATCZ_SCHPO + sp|Q09891|ATCX_SCHPO + paralogGroup + orthologGroup Basidiomycota CompletenessScore=0.875 ImpliedLosses=6 TCSScore=2.25 + orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.6667 + orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A0P1BP52|A0A0P1BP52_9BASI + tr|A0A316V1J6|A0A316V1J6_9BASI + tr|A0A0F7S488|A0A0F7S488_9BASI + paralogGroup + orthologGroup Agaricomycetes CompletenessScore=0.75 ImpliedLosses=2 TCSScore=0.6667 + orthologGroup Agaricales CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A067TK84|A0A067TK84_GALM3 + tr|A0A0C3CJD5|A0A0C3CJD5_HEBCY + tr|A0AAW0GHG7|A0AAW0GHG7_9APHY + tr|A0AAW0GDP4|A0AAW0GDP4_9APHY + tr|M7XNP1|M7XNP1_RHOT1 + tr|A0AAW0FWL5|A0AAW0FWL5_9APHY + paralogGroup + orthologGroup Fungiincertaesedis CompletenessScore=0.5 ImpliedLosses=2 TCSScore=0.6667 + paralogGroup + tr|A0A1Y2AY62|A0A1Y2AY62_9FUNG + tr|A0A1Y2CGT1|A0A1Y2CGT1_9FUNG + tr|A0ABM8W4B7|A0ABM8W4B7_GIGMA + orthologGroup Fungiincertaesedis CompletenessScore=0.75 ImpliedLosses=2 TCSScore=1.75 + orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.6667 + paralogGroup + tr|A0ABN7UQ65|A0ABN7UQ65_GIGMA + tr|A0ABN7VFB1|A0ABN7VFB1_GIGMA + tr|A0AAD7V148|A0AAD7V148_9FUNG + tr|A0ABQ8PP77|A0ABQ8PP77_9FUNG + orthologGroup Fungiincertaesedis CompletenessScore=0.75 ImpliedLosses=2 TCSScore=2.0 + orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.75 + paralogGroup + tr|A0AAD7UYQ7|A0AAD7UYQ7_9FUNG + tr|A0AAD7VBQ1|A0AAD7VBQ1_9FUNG + tr|A0AAD7XRT1|A0AAD7XRT1_9FUNG + tr|A0ABN7URS3|A0ABN7URS3_GIGMA + tr|A0ABQ8PX09|A0ABQ8PX09_9FUNG + tr|A0A1Y2D4B8|A0A1Y2D4B8_9FUNG + tr|A0A1Y2DBV3|A0A1Y2DBV3_9FUNG + tr|A0A1Y2DMD0|A0A1Y2DMD0_9FUNG + tr|A0A1Y2ESZ3|A0A1Y2ESZ3_9FUNG + tr|A0A1Y2F3B3|A0A1Y2F3B3_9FUNG + tr|A0A1Y2FVJ1|A0A1Y2FVJ1_9FUNG diff --git a/tests/data/fungi30/golden/F0848294.txt b/tests/data/fungi30/golden/F0848294.txt new file mode 100644 index 0000000..99f4225 --- /dev/null +++ b/tests/data/fungi30/golden/F0848294.txt @@ -0,0 +1,54 @@ +# 30 input proteins, 1 groups, 30 proteins in groups + +orthologGroup Fungi CompletenessScore=1.0 ImpliedLosses=22 TCSScore=16.1333 + orthologGroup Dikarya CompletenessScore=1.0 ImpliedLosses=19 TCSScore=13.0385 + orthologGroup Ascomycota CompletenessScore=1.0 ImpliedLosses=13 TCSScore=11.7222 + orthologGroup saccharomyceta CompletenessScore=1.0 ImpliedLosses=12 TCSScore=8.1176 + orthologGroup leotiomyceta CompletenessScore=1.0 ImpliedLosses=11 TCSScore=5.125 + orthologGroup Eurotiomycetes CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.4 + orthologGroup Eurotiomycetidae CompletenessScore=1.0 ImpliedLosses=3 TCSScore=1.0 + orthologGroup Aspergillaceae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1L9VWY3|A0A1L9VWY3_ASPGL + tr|A0A1V6PIE3|A0A1V6PIE3_PENDC + orthologGroup Onygenales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A1B7P792|A0A1B7P792_9EURO + tr|F2PQY5|F2PQY5_TRIEC + tr|A0A0D2HIH0|A0A0D2HIH0_CLAB1 + orthologGroup Sordariomycetes CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.3333 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=4 TCSScore=2.0 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAX4HY75|A0AAX4HY75_9PEZI + tr|L2G5M7|L2G5M7_COLFN + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395RH59|A0A395RH59_FUSSP + tr|A0A8H5NX32|A0A8H5NX32_GIBSU + tr|A0A9P9RC40|A0A9P9RC40_FUSSL + tr|G9N112|G9N112_HYPVG + orthologGroup Sordariomycetidae CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A2P5HL36|A0A2P5HL36_DIAHE + tr|A0A6P8AUH6|A0A6P8AUH6_PYRGI + tr|Q7RYM3|Q7RYM3_NEUCR + tr|A0A165FZQ7|A0A165FZQ7_XYLHT + tr|A0A7C8MU77|A0A7C8MU77_9PLEO + tr|A0AA35IZ99|A0AA35IZ99_SACMI + sp|Q1MTQ9|NIP7_SCHPO + orthologGroup Basidiomycota CompletenessScore=1.0 ImpliedLosses=5 TCSScore=2.125 + orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.75 + orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A067TQ63|A0A067TQ63_GALM3 + tr|A0A0C3CUS6|A0A0C3CUS6_HEBCY + tr|B0CR22|B0CR22_LACBS + tr|A0AAW0GQL6|A0AAW0GQL6_9APHY + orthologGroup Ustilaginomycotina CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.6667 + orthologGroup Exobasidiomycetes CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A0P1BJE5|A0A0P1BJE5_9BASI + tr|A0A316UL47|A0A316UL47_9BASI + tr|A0A0F7RSB9|A0A0F7RSB9_9BASI + tr|M7XIG2|M7XIG2_RHOT1 + orthologGroup Fungiincertaesedis CompletenessScore=1.0 ImpliedLosses=2 TCSScore=0.5 + orthologGroup Mucoromycota CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAD7VCH9|A0AAD7VCH9_9FUNG + tr|A0ABN7VXY4|A0ABN7VXY4_GIGMA + tr|A0A1Y2AHI4|A0A1Y2AHI4_9FUNG + tr|A0ABQ8PD51|A0ABQ8PD51_9FUNG diff --git a/tests/data/fungi30/golden/F1085561.txt b/tests/data/fungi30/golden/F1085561.txt new file mode 100644 index 0000000..26e2893 --- /dev/null +++ b/tests/data/fungi30/golden/F1085561.txt @@ -0,0 +1,53 @@ +# 28 input proteins, 2 groups, 28 proteins in groups + +orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=12 TCSScore=5.0 + paralogGroup + orthologGroup Sordariomycetes CompletenessScore=0.2222 ImpliedLosses=4 TCSScore=0.0 + tr|A0A2P5I218|A0A2P5I218_DIAHE + tr|G9N994|G9N994_HYPVG + orthologGroup Sordariomycetes CompletenessScore=0.7778 ImpliedLosses=6 TCSScore=2.8571 + orthologGroup Hypocreomycetidae CompletenessScore=0.8333 ImpliedLosses=4 TCSScore=1.6 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAX4IGD7|A0AAX4IGD7_9PEZI + tr|L2FZ33|L2FZ33_COLFN + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395SGQ3|A0A395SGQ3_FUSSP + tr|A0A8H5V7B3|A0A8H5V7B3_GIBSU + tr|A0A9P9L341|A0A9P9L341_FUSSL + orthologGroup Sordariomycetidae CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0ABQ8N552|A0ABQ8N552_PYRGI + tr|Q7S4T5|Q7S4T5_NEUCR + tr|A0A0D2G4K5|A0A0D2G4K5_CLAB1 + +orthologGroup leotiomyceta CompletenessScore=0.625 ImpliedLosses=18 TCSScore=8.1111 + paralogGroup + orthologGroup Sordariomycetes CompletenessScore=0.5556 ImpliedLosses=6 TCSScore=1.8 + orthologGroup Hypocreomycetidae CompletenessScore=0.5 ImpliedLosses=4 TCSScore=0.6667 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAX4J405|A0AAX4J405_9PEZI + tr|L2FYR0|L2FYR0_COLFN + tr|A0A9P9HDS3|A0A9P9HDS3_FUSSL + orthologGroup Sordariomycetidae CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A2P5HMI4|A0A2P5HMI4_DIAHE + tr|A7UWI4|A7UWI4_NEUCR + orthologGroup Sordariomycetes CompletenessScore=0.7778 ImpliedLosses=8 TCSScore=5.8182 + orthologGroup Hypocreomycetidae CompletenessScore=1.0 ImpliedLosses=6 TCSScore=3.1 + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0AAX4J1E3|A0AAX4J1E3_9PEZI + tr|L2FT04|L2FT04_COLFN + paralogGroup + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395RWT8|A0A395RWT8_FUSSP + tr|A0A8H5KT52|A0A8H5KT52_GIBSU + tr|A0A9P9KTM8|A0A9P9KTM8_FUSSL + orthologGroup Hypocreales CompletenessScore=1.0 ImpliedLosses=2 TCSScore=1.0 + orthologGroup Fusarium CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A395SBD1|A0A395SBD1_FUSSP + tr|A0A8H5QE56|A0A8H5QE56_GIBSU + tr|A0A9P9K4X7|A0A9P9K4X7_FUSSL + paralogGroup + tr|G9MPB5|G9MPB5_HYPVG + tr|G9NAG7|G9NAG7_HYPVG + tr|A0A2P5HYD3|A0A2P5HYD3_DIAHE + tr|A0ABQ8NQ87|A0ABQ8NQ87_PYRGI + tr|A0A1B7P2U9|A0A1B7P2U9_9EURO diff --git a/tests/data/fungi30/golden/clust12762.txt b/tests/data/fungi30/golden/clust12762.txt new file mode 100644 index 0000000..ed2d387 --- /dev/null +++ b/tests/data/fungi30/golden/clust12762.txt @@ -0,0 +1,55 @@ +# 32 input proteins, 1 groups, 32 proteins in groups + +orthologGroup Fungi CompletenessScore=0.4667 ImpliedLosses=27 TCSScore=13.1875 + orthologGroup Dikarya CompletenessScore=0.5 ImpliedLosses=26 TCSScore=9.0645 + orthologGroup leotiomyceta CompletenessScore=0.5 ImpliedLosses=8 TCSScore=3.2 + orthologGroup Eurotiomycetes CompletenessScore=0.4 ImpliedLosses=1 TCSScore=0.0 + tr|A0A0D2EY06|A0A0D2EY06_CLAB1 + tr|A0A1L9V481|A0A1L9V481_ASPGL + orthologGroup Sordariomycetes CompletenessScore=0.5556 ImpliedLosses=6 TCSScore=2.0 + orthologGroup Sordariomycetidae CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A2P5HSU6|A0A2P5HSU6_DIAHE + tr|A0ABQ8NCJ7|A0ABQ8NCJ7_PYRGI + paralogGroup + orthologGroup Colletotrichum CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.0 + tr|A0A7J6J7J9|A0A7J6J7J9_COLFN + tr|A0AAX4I094|A0AAX4I094_9PEZI + orthologGroup Hypocreomycetidae CompletenessScore=0.3333 ImpliedLosses=2 TCSScore=0.0 + tr|A0A7J6IMQ8|A0A7J6IMQ8_COLFN + tr|A0A8H5QA53|A0A8H5QA53_GIBSU + paralogGroup + tr|A0A7C8IE91|A0A7C8IE91_9PLEO + tr|A0A7C8MPZ1|A0A7C8MPZ1_9PLEO + paralogGroup + orthologGroup Basidiomycota CompletenessScore=0.5 ImpliedLosses=7 TCSScore=1.8333 + paralogGroup + orthologGroup Agaricales CompletenessScore=0.6667 ImpliedLosses=1 TCSScore=0.0 + tr|A0A067T9C5|A0A067T9C5_GALM3 + tr|A0A0C3CLX1|A0A0C3CLX1_HEBCY + orthologGroup Agaricomycetes CompletenessScore=0.5 ImpliedLosses=2 TCSScore=0.0 + tr|A0A067TSK1|A0A067TSK1_GALM3 + tr|A0AAW0FQ88|A0AAW0FQ88_9APHY + tr|A0A067TFH6|A0A067TFH6_GALM3 + tr|A0A0F7RU98|A0A0F7RU98_9BASI + paralogGroup + orthologGroup Agaricomycetes CompletenessScore=1.0 ImpliedLosses=2 TCSScore=2.0 + orthologGroup Agaricales CompletenessScore=1.0 ImpliedLosses=1 TCSScore=0.8571 + paralogGroup + tr|A0A0C2XVI8|A0A0C2XVI8_HEBCY + tr|A0A0C3BYI6|A0A0C3BYI6_HEBCY + tr|A0A0C3C663|A0A0C3C663_HEBCY + paralogGroup + tr|B0D5Z8|B0D5Z8_LACBS + tr|B0DKP1|B0DKP1_LACBS + tr|B0DYK6|B0DYK6_LACBS + tr|A0A067SZQ2|A0A067SZQ2_GALM3 + paralogGroup + tr|A0AAW0F875|A0AAW0F875_9APHY + tr|A0AAW0FB02|A0AAW0FB02_9APHY + tr|A0AAW0FH18|A0AAW0FH18_9APHY + tr|A0AAW0FKT5|A0AAW0FKT5_9APHY + tr|A0AAW0GUV6|A0AAW0GUV6_9APHY + tr|A0A067SZ40|A0A067SZ40_GALM3 + tr|A0A067TAY0|A0A067TAY0_GALM3 + tr|A0A067TB36|A0A067TB36_GALM3 + tr|A0ABQ8PTL8|A0ABQ8PTL8_9FUNG diff --git a/tests/data/fungi30/rhogs/HOG_F0412257.fa.gz b/tests/data/fungi30/rhogs/HOG_F0412257.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..40dc9a952449e7af365bad2dc82398995b1c5b95 GIT binary patch literal 210150 zcmV)#K##v4iwFP!000021FXH-avV9DC47&k;N8raO;(Y?{i53p=~x^MI0{=L+UrKf zQmQLuqmuGhD%-l+>f!%$;1Og{3u|j?VK5jT;ST?nbG{A#`sw3e?e&+pFp@9ym7(f!zyHha&E3uInT`LlTwPqMB29a>ySzNVJWKjt zF3)QJmkY5pm4I$b6>`e-DDsEY1n3cCi*VLrT zI3y$^gH%QJZk^1{R_j|3a}%Kd#!Vba_Ox)jaM|= zUD6`ehHLdHrMXuprR&x%Rc4<{aZVN6RbRSn$(FEJxL&1H4l-+3q6o#{Bb3HDElx{2 z8;SLZE|k!4&DBRe<3qGjI@%>-skF*kb+4@xUfGbFai+=^s#hVG*uD3rByXel^XiMr zGRfA0QX$|?l_@I4q`Pn`)YNV4y|$3G^-fQrTIE$=!@3&0dQH~X&`qe-;ZBtjmW1^V zK|~iNSGne(bIB$67*sJWwiIg*K{kbzC^jgUWLI-{v&k-%DpeD!gEZLEWRXk3?Ws$^ z`Xr?b@4F1a#$b!WZO4@_&FO$wD13%2U0~%3PBpeXd*^+Nvnp}F6y2nj0c#yxX|7r< zY6=mzEcUr)rJ|aHfHTp( z(D{N}UzG__tuFW2ZCxP3GS0=d?C=>Kztxa98cOLFGzT zxM*Cnn<4QT>sHjhhp3I0xRN9sHCAuQsrue|;Y3-sNOZ+?FB{>L}(KRuVD`os4-3R8G^{rchK z+lRA1ynX%Q-G`57|NECuA0OVnKdZaTyZGIFw>$eS-e;Q5mQ{Xt1$+H}C}CH3kgy91 z7(dBv0(NnCbANaKOu*!e=Sx+uy*@InF4^x)D+8JUcyMg$?K9xY5!r9@5hkSLf5*t``t zN&0nxTo>3U1CeT}H?JUUp(x+{lxEj)j|8PE!l>g}$ddH1fU}`gP0B;oG6btYuwiaZ zX)VpO&wW{j$&|354$?EhWG*tMfY(5OG(1-eGi+;~*Y4?_V23?i8m>~cpy`^r6Q=vx zVZ>mdlnlC0~}>Z2`NcP4#*fAa9vz4;;9qb<9?yx(oM z>}Ck!5gUB#xU-bMd-vhP&)@wBJn;7YcdtLZ|Ag;v-~aLK=Z_ygy@A|8CgYnAuOHsM zd;6z{Up~G4uQNP;`yU@ZzJL4hW*E2I>#K|V^C5fd{rM((S66q}=g(}LHTXm8J-G>& zMfbKwto`1>#~O>L*M{5UOg5_H4erviR@M#*HU~1bO^uz!8x}#&MG70>TILM z%WHDk)4Z)f0E@;;oXx9n>*`mS&{!i>9nu)HPLMyi8`pi)*6JE#f^UrufFsWh5XDr5 zH>)B!*aY~Qu5e=^pdNQrYX>|4bP!WjsW}(7FAvqKw!)PLQ?jjd3?eVqUY zaW|#{%K_*VOTotj8^TTpf%l%8BRGILz%vVML`n`8$rxx%NNd3RbW1>_x^sQarnt4> zMrcvxn&+U8sv`I2Hvikz$-`IoGR+4VeF5Kle|e>nT^5APp7Jy2J6SGRX}_jlBlJjv_xSLf%uyX#x($<;wma;y>n zASS?S3)m@Xu7L1tszB8RKF(&m0`ldh$DPf%cHD>6D2es+5dSH`m0`()ofoWIcCbz% zLPw;Th}QG4JE`{~$I6E?L-F9oeFrinI!g);+Q`)bROe9K3_0pBssQS|%d&z2CicJ4jm2BIo^Dp)7R;O28ucU~|NENDWu60e+ec zMH5j*C`6lc2Y!b)soG`%)Y^&dB_tRkzUB@L1n}TtlV|CrGj2@{O9D=ky_9q|VUiOt zoEEd=`mgYqEoD8I0=N&1iuVCZ27Yt1git3eUf-9BH(edB8~0O(S-!?t0{{EuXZj5;@#5s+tE8iv9{tS4 z^=>!(%r$=8onN25eB9rHeA1iuZ(jpNzXcWj@y+XB|MZ79?|-4v+}z*Z4rs%-($lNg z=jS)}{O02J>KU||^#*JztQ$B}YgiB0|;1La&3yitdXYU?78qIWl6_q+Y|$-`IHeP4e#h~D+p?fvb| zu-m}fm%FPYUHjH?U(hxC_78t}^YP8QcMoU3{Q8GKzWepl+xHKfq+RW9ZU;*<5K8;% z?*2J=w$OFELVh4Y{BPa<10AvWd-xZRPg{bG!%u?$nZqHHF9X^Ocm!6R^2w zFD@=G&t5+63%UL~?B@mS=jGkyGy4e$S7$)T)HIABa3Gw#@-v_Y{CMpOD{m`rOOsMDtP*~z4k?8VlpRt4&W`nln7WgY zgak`S6VNCi0uT@IN?PaC8cbE)q;vrtV0g_NDHJ1kwjV+gaEUs@*$0?gIk+Q*lu@&& zfEy!SoqrTk0V!qZFe?YUuLV-t7se9y3BVNh9_-jGAO^kl=AgP@$&dkvNrPpC z>D7ISmLW^(1Kpx~M2pwW6joq#2|ujy0>9uR1(24dtcI8yKv0RGwFa&Q*r3JmA~@(v-alGPj5aF z1^>sx>rWp(o`EKwz5n&~yEhLXH(>nm%ZER~<+pl4ku5)c`0)c?_bY7i`1axLk8gf? z40*(Kaq)k)_}S(8-Q|ulT;}$>SLe6q_s_^>-sft~3Ubw9WPnPO!Q&Zpr6vG5Mtg&V z7$-S{TpKX$WbpzEj4bxHGnfmtw}YcXCS_SDjkMLETCjv*WMJYQdR}2_CBw%F4=f|Y ziM*0uz{NnYmG}c-9ZCeR42Bjm-^mwQT4#V-OTH;^qJXIe3RjRy+Cm5;Oc;O$FhdAD z*%{Bm>H|7LXW-|7H}s&FdIo5A5SG+%KLc#*>P#)Y1bBbF_NrkWS8}zE1<80-g8zpS zN}!qsj{=3Ap}=^nQ1G5yvJlDNAlyLd01>jz0bsZRmF(wWLM!-SIC?NsTRKjthMw!* zs0?Zxq{SkD+}ol-Dl!yNE*ko%;pYI`?LIh5P%VX&-C}9^TL2OuHSw>%{QQ@ETfd)f z{-VB5yH`>FFqNm!+THo}5WR~5G%wG-_Uf15<&S^(dA9{Ie%&%14`;7GKK$~_!=spu zXxi@T2E6RIXSY}1{jTgTzq^q5fib(=^Sj@`eE#-K)#dDB2eS6tGvM~=?Eda{24+6FVQQB!ISE(+G`UDMS0?~AZG-{ve-~ERjIemb3i2yh!JT3Sz|ndd7w)hxFJp!J zb*!*K1@TR+0Lca6gvWWr3hD_fjJPoP|0z~*5U`?S-q1p`TVz;$H8KpaApTLbAiZs3 zGr>R$m1seSZa+s0vTU%CsMxL>R35G>vAeq4v|>la*xjCe?bR=7#jg)PU*AwI>g%80{`ZGp9$vrx>EYvtKmGYN?C;MX zfE^yyq(56S-L(57~pXq1T5vJ7;_a7%>O{Z@`y37UyU()Ndo2u0jtkr%ylDR<%xhz zkWL_>M*_wZHtImYj{Hlwrx^2+R83!xF~hQh90RJs$KVpkzaZ2j#;hUXxDiW~2Ndw{ z$z315y?_FC=lAz#Uw{2s{qy@z5B~+px%mFKyWd{^Q;z<8cX|7agF(edI46SE+H9kw zoy-YNPU7y;xoixJ#xwC(Egy`q!2c^20WNNhOque5l_^$0)70^1O0EEx&_KQeZiuaL zTM7O-8DYr9s>`q;Sk$>j7eS9T9+g5jt(0uJM&QmI8vX*$yA{8llYPn)X zRAAmzHyFhr^Ri?GZER2qphHNo4^B5AZ&*+WkcMRH+<*chf3g6c_@(USWQ>E2cg}Uu zw=dnvQstE3Lx917g{N9Z7~mw-darLz9)3I2dU17ea~f*>+Hqe{o4+ZLdUtbibs9)D z!+U@rY&Xc{5)(jpgSaadngnVC1gW?@qZRnBS9qew8E#etcvuV90?eoAIsoJ42IDgi zT0&l#)rPb|!Qqj?hl&FZ%HDVZW7N`TFh1fDwRFIEcj`j`4e4}-3$aSbS(6!C*f4x- z(X@nrWNwNe5(5y^1Fr+}v(8sQ-Y8qxaG9>|~)R?AQ0l%G;(FR7&c0zoxN|;fieg%XOeS=PE_@b^HmJ=2j z1kn3YiURZs?SMk!6?)ccQJ~Kfe*~bkS^#{5Qmk8%kTL_WL~2kq0KT@k5RJ=$DCi0z z$b<`PVKm4Vs23nx1rM1M1W}Hc0V(1@zMU&TdD<9>qjGQHz+g)Z_*Rpn0H&{SH33pZ zK4O5_NvDf%E_K#bcmg@t!HrErOkBsy!92q%N-DksxdRHhupD9Bv_d#p$u+;FM!fi0lI5jUNg6o*pnJIM#9G5HnGsWJ*WPozPlVR!cf!%8{SbE|5 zKvMDf@Yxc0%%7M!0`)KzVtnRCvi)qC-Xbxx|q0<>LJQ z`tGP;x0k=UCMuiMboTvs7x!1^_#wLa?C$#Ze)FVPS8$z!mi+$u;{Mh7#r^fOXr=@N ziA!WUHDV!g$81bXf}SN);)iz z3>G+9=BqOFZI1)zmP#@a2hrUU@RIY)5YTnwI`EnWKPj8{1^>-X;$vfi7D7USVp3F0 z!pzMI7n$*;;p-YSdR9HL#6X%BnWt5x{6Kgxo@=9O^z7H_KwK8fNK;tkbgT)3j0XeV zfE$Hofw42LPLys6^hp|0+#}oRl{sj|G?J-nse4fSsWUPvm4l-Qr2>iB3CQjcbYhhf zo`J&*G79IvRt8f*U0|jbP`DfixYk0@vBX`3>k& zskJ|mod`t3@PUcN;;&@^j{((Py2eFcoIHG`9NgzoSMRUzH3F)aM6c&Z z)bXw3{+1k-di(J6hmW6rdNY0nJ^ktJP`2y4oAZ%4P_qu_7q9+v2RQP1>CI_=3P8+{ z3{_-?R6}#DVvzMKq)6i?ex8+TqwprMzS6lbvr=G9&kJfD2T-g}9FZB*x)pfh8&?K(mGp1Ff+B(%`*x^bnco znI;iUHr$~q`LA}^ZzlR-q6i?Eum{qCSgHzSlV{d`cCe*U`>Uh?=98<&6M!Ir;Q|FY zCN1hSkhaedAO|A}TOMRktUY6Su)<*@sK}43pkjUmvLGSHY{FLd8`ofTl=$ly3obDB z_;^=X;)`YNi4A3viFGwFV6HP*8;D(DGD1CO zboa~?1!g~BUmb%(Po=sM1*ttSiu#1LsMgjsb9605dgK19w6t6;7&w zOI=_@Vub>*8W@%VSPbjZrZqVh1Ltwghic%`;0v(Oy~b&)34Zh>AXYPg;F`l$6HG?} z2^%%ROe8`5u=1cU8W*w;IZR$IOgrLOXHsv#ws-|pAB+nRq*KD@HUm{)At66;A0z}A zNE`TZ;aWkY6$6{nTjB}N>_08b;_*#ryqSa~wvm>e%L)z%hn9(9x>Ad)#n)M97cAT{ z_;zlvNAPCJXOWl@V*whhG~N_{YSM6f%E36g-b&GI={hsd_ zv%Y*GmUnr6eRKA;SO1j=_vQacC~v&cX;#HdrZ}j_3KRp0h)|;r(ZWvh%)tG?P!39}1!;oJ zNjlt{C~KS}-)vQ71p%HTYm-#+73L>UyR(6?s}4&CX%Wn+!!vAYMuq@Z-1pB4pF8-P zOVIZ<5CN;`Yfs?YqW43R(dD+{?ISQ?2EPm*IzR9pK3B8)P5Q`EA7_WA2e@{@B%@PP z&E1~Dy|(2TOLVXyEy3;rdR68b%@(83@T)LGI9UR|)V*u0s$x1ERAmcsgPJNRlGl7k zTz2s@?74;hD(?hw-xi;c&=%WRK@VEjN0M==Oj$vcLsU#M`srD8LO|hs&rexKh9{m- zUxd1}EyA6$f`%|Q!F+fD?8rP=TL=LBDo7qMJ5fFZDKM`feR6~*)T0-@xouJ1ojiPH zWmqnc%CNiLZAtKRc+ty?-TB$e$Nd9EdG_HQQXw{hfx2;AXIj6UGU`&ctC$0j@wgFPL4280KQYv>iY^3tUqI8v&aN0cvPx zejI*)zYYzu%+P@hRu=&vrZR*%(v7(N>hTi!A8tY7dAfL`I<^;UqVJ>Uil@YY&1 zBT!DyTAFGz5dH|f0EFv6XbVYH@a0ReBOF*G$ZD1Y*_N6?>1AKA<_Qi|<=F_FEC2<- z4-*csQI1h8?eLjczdT91>LsxhP+^sfO;cMGFgqN4@dD`2?pJWjNynee?vYlVt?5>|@PExmU#TquCYv#0o+JX8lSQ;d?GCG!F3?%DZ zGvk+lz-2UD2zZ?g&I%j{(Il_eMOog)qSm4+BMPg=YgaXQ78{WA16%_aSt)=j6M-#0 zYp!!0Xvs#~+B~W=u%awtkqmBB2Vk&5&}kVGh_NWJjZrbNX4I^J%d#Y# zaqk5uBQ0~nx)jNtIhBGJ#dh)^U~E6{2hL=18%x7LW1(rLjt(|E!vQ7;{2mYl1j91E zDgf@Zv#ZqX0?Jq#z*3;a$e70ykdWY!E-j$~BEjev7T?Aq=3vtb?&1!~a%L$RnDM4T z5$)<>Mc71G)B=&OYYbRWe4aa|BE6cNF2j=7JOQ8szXMMA3Fm;bkia_z8d1S-VQPF* zO@qJ3L@E@ls?lOGtY0DZ3(T%;d?5>vWC4f+%aDyA1B;LKv#o39HH2|+?gV9k3k!fS zi)u6sIS6?LY|dD3#-G`Rh~L0C_Aql5a?3?PWLU)lY@@&U<;m}k;DeZq>2>zC0e87* zDs25?fb&lB>x}Obd<4DBz<>rCi+5pi1a}40l_o@}GADLp;$jPKFiD`+ho&tMkMqN~ zZ#QjSTwUJn&c6Qov-I)Jk8fXpdh_Eciuj*w)4IIe-CpgUWktY09jq=(*%tV@MS0EY zn#gn~yIpi>5Iqn#MZURO#?)}5^}dOxA8K3ro}Eq6F9d*KYI|rgfc0Eb1I;gZ2+pdY z-L}CT7-$R-35d{A)@6=!xAcF&{Bnj3T<}qVplt>-1|)&Pb~jHMfDxcDu7dHbHSd|C zXoc|^fDqWq3VRIG&eLXjY=he3hFSK%!W;m6GdnKw9t5^4X6KSy14KPB&jAw@0h&lK zN{bWxs3l1Q4>gKKQ4y*V1mJrs@I6|xLzi6%F~UCssxu72Qd)fVMYF=G`oY!=d14#6 z3E&Hr%VHN@;DLdV7U&}|(aLI5Ya?Tx63e)ULc|oqoZ@U4La|D4N!B(&gh5w;w?LN) z0FVYXH+a_txY~^vmo$@83Fd1dgDPw~67blecew(l00f2t&cotEzry&gWyWU`uMIJ$ zOI3#1GGK483NO|LXXDa5=ZIS%b%jZU$FsTaL3L)RQX=G1G{mgw)HbK$a;ljP%`BGp zO79^DHSd*zeuZSSg>FffX4MMMn_I%FLxqh|>^{Jut*(MeCnm5PRTuh+`%p{ExVy2# zPe{BF!U>Yqm{)2Ia1|)T#2I`=F#H0z47be~zb>$@EE$5QuzX~bjU$Dh(xEN}uZm>z zDY3Z7rdVe?^R}due~S46K49Jf=d+f@BpHF7K}H=w1+ICoY@GLvVL`LcJp*Z&VC|mu zsxZm>us0AUjgRUj?hS5fS^!|GS*9xHH2?zv%)z<9K{db6P)iWvHAaFLUE<7y6!gV7 zN`GJ5;C=vK0b=E#fJ{EimPAvwS zch%T|<&@Bnvq(G-E!R)%UQnh>gjbpr5>xz2E*l~D~aNjBTV-vL*Vi?c>bgZ{t` z$tuO%B<{Q}xV6BjxQmTdJ@8V%^A&t1CBR3JRX+k)YfF+D0*3B-7qVr$XTGDv*5Eb-+>Hi#uHI!~SJpuSd@?6v8@O|0)^>G0#icPD3KFB% zImA^nT{FY%n5iz#8YzIU*UIiT+hu7*8J3&mDp%0IY8(SexX%&a;UmfXq=k4D0(vR% zu7$o>Pc(mBS(pjndA(=16IhjmUsk{)z&7B|FpW*6Jzxbfx~OyF+Z3zZ2p=f+6dAH; zh>pQ;Ve-{_(j}38n0F@+U+9v!xVpbOd-=G3qDuml{aJ~QEQy$q-P6+2Ta4=1s1$2V z6dwWh%&eE?AC_hn*p;~2V#LJK3^!|-DgZ6QOuUp07HVBt1AtqKcTfs?$J`R%hp*v# zX#h=p21_CF1e_P1qQB`p4(AgK12uTAG4t8*PK9M3ZT1a_Ou#k`6r~|NBmco%Aknc95NcS&GzxY*OUZj$ z@p*7z9&`n=RG~{a70obj3!u-I9|xUfh6u+bJkK(K!cwl`;2=9WIROVL@hV&#KM*#% z`xu*sGB5&BJp2W)5X=T2H@;y=VBZRyc@X(B=i}!kP=lUs=b#fZLYbK)c`*OWXQCvxb>n4eqaAl`zqJ zysu)#BM5PmI6cov29gOfSZt>g=yEjsu3=JvfdiG8#nMFp{U{jX9!EQjXO4F-^JH;T zGsqW^a%7LX9}&PMbA7@xN?e^4V4xdvUl_7Xizzc~`qo6}SmJ7fTiRoZ>s-|26D(DZr?a_l0MMjUNF(&Tz0|%lmeK8o0#7l8~t~ zlIqzENv!}l0W8r=@e;!Jnhyy6$SD@q zgA;s7ON%VfpPIrL1zD4b@e zh5aXbCPn@`dnT9BGYQ?QUWvA*=z6zb_Ds6J+A}Ho-_|o3jy;q0Bs(qY=RK44Z||8D z?W;YLFJz~y&QP1tGb!|G&!inalk%iz5<(NBzCL;Qg4~_oTx z87BBUMD6zS=9#F0^5n><8?IlO#tr~5IkLJGa?u?=NkZXfEE1c)TP4p6lL2xU9Je%E z7(^y#AOvCQicw@}aI`FYYp?)dBY|~-+QC2omfATvSAqyDt(KYKkE#Lq2$}irJnAc* zWKd2v7(M2q>JRjRZOiEgC1z;6to)E9f3nX(DBi5kwS18z|JE zh%+OLkhemJE5jZjB6^bR=Cz-#CR>${10ig%&Nnq|qlV#{SM2!JF zSkKVcwI&Y7fmflM0`AIc59Em(Qgn>N3V_`Jz%X3q8U2v}rw*1D)NaMPRzlec^i<%# ziH&ezI=IK97EdM(mapSlft(C0$QED~>eXXXO^4GtlNXhXR=IGdsUl{9`B8JgOz&VPIk8KwfO*Vb!)Jzb-6# z!27y1SPJkE=m8Bvi>!;yh7=L2p9=ff*sFjW*b>kpD4P?BM6t8!K z2(D{m#tO_r1V-y(1%zPVSzqBNtB?Sjk!25wGlY_49Hm9PAr5Sn z)7xaiyEOI?!2-hV;a=*5542jS$+XfI9L(-n12Cx##70IyKZZ*Ic_0^~1+0S@$qK^6 z#EHf`i^#rHteS$Xbm&{y$2`|PY!rxsB#SmI^)zLPaLSMl`bOYIfW07=)Y!QQJIpE$ zU{Q)o12u-YI$lc+OJ)^V4y*`)rDC)I2Lm<;U0@xU4UuKGIOmzYv8#hIUY6+LMn|v= zOddonGcN7=(HduQFvp7Km)65CVc3AO7Y~-!P0JN)oMHe#0H?$) z@W667pXwkP4lHlQ+f?iNI$^DuisQT!8DRS?J1Y#0EEJ=W+Y`nVHkFn&c1Gph!K8W; zR+`kgxzeh5RYRZIL~SRQ)6|s^cyW=efVHg(9EEw5k{6D5=y_%JR8g7-Y`SF+iMs$enHqybUb50VJ1HEwpupK(;ve zEA0{!zS0X2sF`*^E7q_>-#K;8l`g@j$w;sw!P3Lg2$)JP5a!J6iZWtZjr18Rm)){x zKp)(qWEy8i;ts(91^!DAK&n|wu`@hc$B~E7*eR%io&8H8a z*y}L{2>kNtimYja8lr6uW;V?_orSkvA_@>B3U;1K^W2qyaUDn z0RTl;wGJP|VWFio4X^?yGX`Zc&CHr1$x%E|#8io%8Hea>2LWCy?A6L-uQD~<+|~?P zAD-U}b|D9_X{bhlxne{R?1Po8fH;%0tW`Xg{7BMX1`8O4l+YT^{%pt6KS)SsVFqV_ zRh~}hFn<*!B4z1VgHQmc`k|Xu3N<^rR`~5cSpwSSk?eykuv*zd|6wjPr*8J)nlmF5 z!8F12TN*{tPtRAG_ zW{@b&AtB%)lE2T3mV2-q+hc%r>Y*rjQa0iGk+K@|UPs@zWik$cfMr1^3gLGDesS{f zC55=VyghsQxG$69f1fDtZZ9vN$1mGS{4&pxMVUYZ3}C7XgadbVzE~6SjPQHyQD+G!!868Lo=$w&HJQ%S{K&e?CW0$n@ z+taC77S}KaDZtsImJG!cYUajd@fNErTdcAc4I9Oj)@Py0;zcDyU^s)#>ToU+2HziJlkgevo`wzu=dV5V^$?mA?29^$ zO@>2klA%ex#U}07Vw3C)5m{%>zGF|1>IzWALiSi{)uh(2LmEV*e;%2vishRLe0=sS zIsm(or@={SJg_SuPy%)eKyHt*$;L`6p7t!B1t&QQg{K!ahbe5aNw%fA=dsDc*kq83 zqYwcjIG1$QORrd+O`;YJ{k$TTu|0jKaOa@vMB!{>nn;1!a!o{^t?h)UK&RB{VSu74#c z*{f@URhMRk1v*3}p>+&O_Q#+kcy!x>l7MyaZgMEs2ug~9S|7*O*4w+ox0lA&USD0F zef{-c7})>W8MV91`)BqSDoub8IDtEG7II-zAWOMfhE~~_$+~Y>0TMW2TLV@@)R;mS zqn(4d6OfS!o{{h_?0j17X1$f2X?-)Z;Vu4}kd%Z4jqD6|Ft95}m9plWWqS)u zwKrg8dpKv1TH~(0t8BC$XGX18}2wnsh<=i6+oRu92yyBW?Nuc8!M6| zdr2BdzE-dTG{9_!UK}(VewDQkn@!;$nBko~D2Qi&LUWd5qa}+#Mmds!6;+xQ^{iHN zU~)Dy)Zm<8ivsvMBz}R~aMFmh`v?^nB}XxjDNvlevy~&M(~={hdR7d4xoGkNDCJ=L zPrBTE*y^1_WBZE+tOF++lTL8U1x&!O`F@5-=9zS4D>$t>$op;(ER$#!`2=2;oZagtqbku{&K5V{{H;mF0K#b z`){wV&z}_nvL<_`>#v#((hBSjE9qIOi`9l5^sLy|qi(ehe*QBm#DrDzu9d9t$u%; zEWNutzr1@U(6Mte9m5aoM~2;H;d+`m9GOj80IwP106*ZEDepEND& zHGI*t?DQ%)zfQ4?Gz=(Qmz3@EuH|KPEyMFgXW35p)U+(vwH#QFR@w_)%dqvIH7$2L zvp4b3wH#gN(x~TM%aUfi4k0*nEg$}ZD6=-iuvAx;r5@*an#1tNg_9DZ9K&ZQY?Pse zpSca4sZD@W9eS3R+x-u}zc_q*X~N$9RtWx;*MAoL`S||fSsU2hKQ(LTf@9219R)~a zgTwBmNm%>@lU;DDB`3XU@Qw*MJA)xP#=n@dmuyRRfkQMId#Ojkb;A-n(jAc5wAyZL ze+<1Cz#5%R0f&T0#31I{`q*Mcu>g<5_lwVIe#9c3V+|{qj5ch!VATIH@FD=_I6H$C z*-kNR-3~DqfCIqF&QMSEDdU|0C_D6s_Z|+XB`F|`8Q8|S#36RNuc58%h6xim9_>h& z$KW7%AOQYt6t-t|vsO)5<}wCr>S>+|kXQg50p8(RB$uWUmznVqJX08H35Lf$gM`y| zG}87lF2ioKxYuk-`!X&w;7Mcqs!&kqco}D(nBrWLOi<2^k&4mq7+8Pj(>C|9*dU^6=X`5M10|-|o&{ zKJM&?_iR^uc>U?k$G89eyvX_=*mvM!cfPxQHU{#H z;7xK>xfxH!yJzw581p2stT07fNMj5K(*Q87p4}{tTl;7lI=rugi|_#4s<)|3ZrXcx zNr9-0A{Tt)w0aG=QCId>_YOJLD`-F{E29Mf$9QL-6)+Pp83c+IWurTCgI3TlxNUp_ zr_kYVi{O`YuB(Tl_>dKxTx2UEJV~mYox3vnomTCbgN+e%%CY8(1HdYjcaNjM)4@W( zt?V-XL7c`^9bDiVj<@@Ex^q(AoIHGWpMpMC7F^w3+}&)Wofy34NbZ-9J1Z{Q?>_zc z=Ql5R=`Ebl`0?$BUw;1S;SH%KzaPdo^4_0w{K|$5`uzdwUfU@S&dQHfwoVJ0N&(axz?b7jcrGIN^Y8zH{55Tw*p*R zI5<|@DcRYXY4(!~e$VYXIL$}eHl;9?>cdi8t9!`EjAQtD6>ry=W#u0jE{=Mx8aD$B zQ{dN`I1YCT=+3*D&FCzvRf(9LAq3U7F-PM#1$fEFQL>Ld75>BnEO)1ynO?Wo*XL(1ANP`;|4rk)E^e-# z-CH(*z^{O`GW5YJ%fQeJt~f#Rt#y?HmVotu5gf;Wwa6(Ofczf!Hp>E>0K6?(G`^0} zBBZKd-X>;7DHVuei*0~POXvm1f|n}5r#L`DJsvrp<^)GzCZ>dXB(18kb-vO7##nZm zTkuy#S^;#FtL)^!hc^~h;{}n^WPvrp0G@c?%88J(9Q_9hp00Cy2Wu6a4o}EL#u&CH ztMRvu#}XHwM#Vo&c^PlUEkodm1t=FjVrJ@3st9ZEWK@Zz2ppGZSY4{dS;{SNWbYTP zZV%sH&1>rRF>rKyaj~_mbF#|K{g`#}mDj(Ns)Ap-9-Gnq`R5O>KLYUo=i85*SAB#j z_CI&`-`yQ&tzMj8AA?9hE!#BfHZsPW)xW*I*}8HchhQYK+TxkE9$Nr#4n+hOunZ42 z4yUk;1WI7yl7nO2Ly&twQ(AqXyFeSyecd{_Kkff!fs5Kq(GuV9&eu3!LiWr{GPoIeFt$j|p4`?7*@= z0~BSl5v4)icvqNNQH{ZHNM$r10TmkkR1Iwnu*v4*gjJ9r*nhX&QOrd*5j^Wo; z?qObM;I7P>6^=72h`T^TSlZWJm@4oUAQu*pa|L~$89$~ra(QRtbmOdq;@MjWlm|P5 zb>^&krW4@J?JQtj+CD%ZaDy3VTw!mtQDm<+?zdsVWw?G#>11yv_X`*y35X{{og8M) zgxl&GH&Yy)!Hi(z{l{2BGmHh;V~Fl__o%D+_T=FUyGP;i)!EC(eZk@Xk&U9R&(H6k z^$&0=H;^c6JP3xU#F|Z1OnGvHBi1T2+BBk6$G2$_gdF&zlH1#j77vf z$H&bhA#xZq(WACB-d3;hZxC)^#Ar5>_V*)zE|72-T1QDZ+Yc5a4c>Uz=>2h+Q`$viI{_8_Q~ z+(|I(4M-ZyYPb6BSp21e5@sd zIs7D9qwAwz0b!jtGJ$qItd9h0H zz$zyr!2(xMR5(33Y1ZsHtVU+nN_D9kqT%Y~D(8+BbuHK|N(`&&VdcO&ToL?wY1*zb zwva8W#NdBTP6b!6tZ8CPxruS<>{J!(n!x32yBNrK-m<@wQA->X2oh_l;g4CK6(hia zU0J$1<^UDQ_RK(GX`D)jcbaCFYt@BwgIF$Ln5ywGV{$Fl=TDeZ_iMb|>MMEq&cL=83?3X_Z$In9K`{TPyfEo{Nj;41wgvpoEc{ z3@}P7Y+5fYSpZ&Hdu!|w?=yEza|M*Yv1LIphB_zX01h~) z1g8~QYk}L%L>x26Oq2o#LVKbgTLIuRb7EtsP<6)Va$6P7&Eymldl=&S~x4G=Rsg1PO<5?NInjzy!@1ddp8j9-jsTVEg-97o;L0`Y`$E(`Ds z9Gb_+^r_MtbIf_?&d3lrj=eE1v=wAJ0NL393DDfhBQVukI=49HAQRAYu$VnfM;%iu z@KWwKGmpr&Nd&P=2b5}NYSF9!pg>>09IOnM4l4-fXI2AV4nN$WIFMS{vV}!U-C)Jw zpjc&vA8}fmc(8;ySID-JGd&L!ig_*=l#&;=t!%20G+CBUn>WE)&)2tK%5(laM=d#Eg+yUrPCxUL;+xdv$#P< zSaYGFjJ3f(jxNHaS%-}Gg*`57#Oq;W1gK#K$b{2fs$6JM8Vi;?2c_UI_dQBX(WSDy7YNK&xJL%){Q@E`vW#yM01>Ww-OO& z2{W7bc)9_|0M!DKo6=VZRvr6{&4n{e&OY%;fasLvh8x2u)CF z3yT2w!$`^kQqHp4x(DmxxE3**9ORxSyTZQ!ihCGM%kd>yn$;RCClO&}Z*G8_<0j#p zcIcMJ^w<4$RpsX7;mFITWBTjn=HhzWz3HAmULM0C-#YFaZ3$0V-Jd^v+$z}KZsGee zOZ(z#Yr9RqE3Yo^Zk}bqU@zDs4!^XAGUCFxoiWE9n$#&EbquG;HP2wLxkDGYTMiVv zI>82dU;!Ym8ab+!#Ek>WRN^j+YUIHcoE;nnhe%3hU_-AZ%(Az#qx#zOrX zbxj=LlH~TM!VFD~`?(wLe9DPCYK1I^Hp(eTr(rNa0J{(S0)!}ANjh;%G(>fDT1Rd| z4VuIqh!yK91^c%xYf0JK-Z-765MKuf)6rUIjaj&jPE`99NRq*#Lvl5(`X5?=}<;ScyABXkKw; zh>1G|uT; zAjl}vH%!os-n4~VPxlJcWC47`T)g#0&}~2VLp-%ZIAAj9u3y2DQ$Mytc=jl;$|rIw zZY3r-x_az~SlOADz>}=@AYUBO8r)pra-tvY5RH>Bqa5uJH8A{a9bDtgeu#-<2-s?o zqul4heSLfXYC8n{n&*JFlYR(gxkECCwyZSU4onj08Y0gy=B!6M#8MYP2MB?gggW#? zH0}VtGKX$BP~)*30tT!ZqWjSf;W)^yW05nr0TP^KUloTt0Pe9Jh;8Fq?`OM6&;1i- z4fNirNR_?DxDhJmZVO%@q|0N#F_2VY>e}Yw!vdU_IbWPZA6dDTxGx^ABr*2hYg`fw z#{?T9EO!my3pkdia8M5(K(ZLEH@%OpcLgb86m0BZ%Pqtp%z~{E+++g&HF6i|xhOz2 z(7KhOAAFGSC1wa+f#8}30B3+KaK8K2*pM1QKt^jsQoeh=T2^avzYz~OJmXeyFkRU; zAL3kDruZvo$_fsGW696hr2z16HEc`dtbaJgITi{dY!aS zU`hBmxCasyHZ!#z$z|Ahxn>S+08aw30z?PZfb)dOD&TAISV=OzBpa-ej;!gC+2nTTz@~&W^|8xAGCa#V=>kbyeV-ajqZ$Z-6wHosZ;2_pa2RX~y9_D; zln<^DH~_4frzVHRnk6wD=eiUyvJqOq(5YQUl^>3o`&cZtPtbfBSK%i;cU*5Xhr?uC zi0(-MJOE&@c!hD!c{JL|nBigB7h=X#-vFY&Vx3@P@KG#FX0tYsi(qC>WA?C<;lYrDy=S|A!jcicUH>saUwuWMC1POwV@Z z!W}BW+il9CY}-7shRaw`5Y}TEPL1MYGk#phkH@FScW#>v&?(c3kBuQEcCY{!=f>Fw zP%|nxo(5t93gV};2NdLzjkr0o4Oh$%__hMaWVwU|oEPUS9n{Hj%rM^2j(Q0>cAEi8 z;2Z^Rc#v~00ycBo`hX{za~eAytQH7pg+^={JmAT3QK`-lQQ}BIbNot-tRCD2{;^!} z@YUrgP#cdU$CD)`nY95H>CAqpQQs)WRTX%Da&EX?>rYBm!(HET!M1Iq8?LsZA;zhEp^8;d&=C2$J8BAKpCk!4T7x; zE`NEJxC05A!BR%vjumKYpF}?-?((z5oqbH)jTCRlIMK?)-AUfATk$M$XW_p%T7R@f zGH5#fBgHz&;3;?-&oPshyEPoLck(HFr(e$AZOJX<3 zzvjkPW_PRrMuh1w-@&Gy4aoHo_+oGe`U9c|H&P`cDK)W?2{u7zj!u$0!Cw58(}`dk{gXv zu0?L07WcVzP(IE>R&dGS46JJ#NqEN=P^eYr5I(4%t=zgKGXFqz<}O=%9039B5>{1n zbe2fmIg42UW=EJ99qq^}G7?=~GPtEtw^4r6IXr%^Dx-f%L#o9XhMlg+9f$HO~%>@*e)gEO{lYJD@JDUUo_nr%rlQqcfkO!| zVaF=d?WASEonCQ~PE|HiWt}5~J*q5Y@@7qbe$rTuuZPOQ%)&>;k#T~`)}zX@(Zg^s zgdD9ar>Vh(Lz@{+*|fGj(^^JgxHDdGLu)zvsWEo}rJdW%kWl43pq}wzZVrIMhA#lp zmXSo?HSTOowI$b&B@6a5=avFAG;=oMqvT*8gi*OpaNwAiD zLoBrPf|K273gNKW`o!5@U5)MU0w=m#PRqb^oTAgXCk#VGMl!&dS$ECfanL#|G)XDf z1s@b$3mRA+oRv%K*Dx&i6lBauDD$ZVt7Ha&s1O1!}H#!R36W4R^%J5Vb!vW2e+53Kyz3*S_ zT`7!dSs!pn&VC&Gq+r=^ICQ2iS<`w<4ScpKMksI^6-T@Ru}h> z@t2SLLS_Dr307-UfmfVu(^w7cD?6gVLz)-G zmzll^D$;UfK}zAA^~~*Bliv1z%&K#PNo5%gK5khFNY8LFWZfvchrt9`vG9G$;v>0r z>)5r@0aC!WFP;U>tQ=;c84MSIEIa6MdX5oMc1e;rbe6jw_N}yI-%9S(07MHc41Wig zT3J_$gE?wUk4U!~MXGVAZrXOPblka;+xBteN)AZoN6WEsC2Wkq!obJC3Hb`DWS;h| zY}~i9y|{0s7#ml*M? z+bkrL+?89a3Fw|&dv1(AM)pN!$3zo|Z+7jmFS2cYk!H@PZIR-%FR~u{BJDT&B4w|T zu+`hGEmA!7MS^s~C5*mEzx73~kA0Ecd}!jnm(SWF!Fsp8$PTai^}a|s1vWNrJ!6k; zk(`(%9{VD><&zzKkywhYFA@Z%(Q`faMRJl4KzeM83>^lB7$%dSV zQ32B=^K0x>EF76lJSNl3iv0!=Ndkb6yP>m_3^qLNLo3`QXwi>DeB_ryeA+g|M~o5P z%QnSlu>?2n*h%Kb5TDK=K9VI3o@}FWlU7FCxPu&fJJbAF%`Elf5FaPU5T9b6hWJR@ zuez`dMYjpSjzfG{zkh5fWBQIsxWa+eiNSw&7~unnkPdtooC}O5%OpA|i=JS3_p^&z1LU!dB+GJ^?9q9vvchNUTVzn z0ghNDcO&T5`vos$P^WW9`k2%QTEJQ3V}#EVvdggNidkRIKe0>ZB(D>*{lo9?b|(*C zGTXOzyR(;%`)9_Fv!wW|mH%7JupVNDY(A%DIfM)wLx%M!WC)UL#UW%^k0C=wDV$R& zv(!r2FGGfD3mLMDRj|UC$!YE_EiHH6)Qs^la2Vkv7*mTJhPA~G*?adCI}{8af=x<} z_2cjx^7!Q|(L?`P^bnLriLVs?AESqv(L?`2^iZ(uzmD+X-w-{7n&#?3tF~B#cnTkW z7Co%Vawql?JskV7k6}K~!iVA{e)w|u@E9r#Pj&v{%TQtXMyRkA*7={-BMYBj2o=hw zLVxuXDtwF-iuM>P4DM^8!uDmT@G(*-^i!zNe-=l*VsBVOLz5`jUlSbuDjvl8} zXKoz}UY~%dIgAthV|24a?H0+n4&H#Oq2yv$A>+c9e9gJ+iv@YeYWn|)d$%UpaVtyn zoxdX9dd93&757WOAqkL#NTLV=f{S`dJC(|o(mJJ7r&4WQX8q%5eW1IC$GJo*rJk8{ z3q~BLUr1o@wQp+)^NSp?!l<=9Mk_7E)_uoIX7Yk*f)F*D{t)}Qt<=`Cf4&*? zeun`jfN?Mb5;7KDj|Hk^Val}4BY7BWS>V$^X-ms{v#72&XkB(~$}}M8qilKV`T;kZ z(70L3AKasj<$$!$y2biI&M6idq)AvI0;1)RDu2Y(eKSC z{PAypz5TZz|HmJ1{*MeP)F;yZyE&n~l1D`uVI3xWP)Ms-hn6zoWq~?59orQ}F(o12 ziw}jsXr!-6cHVZ1YqrWf?1UE~$<>k`4|LS(%6ecLmQ!0d)dAOzu6???Rr+I5QXY3vvHU;R+(WPTk`NtLS$9hu|;49vCV(Rsb*0@*ip z;BHx`y}w?+EY!hnY-m#>5lS~~iavQO19Dgf>cDYBw{f+MBzZwJp@%YS|19)C$`dvR zPt96hJCb}>=u&v45b8g@{>V_tUQ|_8y@Dc~SWs9LAY2;yct=u8tK4!(+CxGGTI9O> z-JsaAcAG^(6RkVTJUfiQo@!l}8-$tc;)C36Pp+zz;%)W6x?PIBwQFf^BvX(A3O@CQ zSmvJl#?3-10pl@ilL+UaY_}ZJsQ2H?D-UBQ*wA>oASyl^2CNu&uibI5v4mdH7tLd7+7whzZ^(j&L*Jab z<09O1kSRu4obK2i7odb6g-jF`uCoj6RB562=D2Qa91DTkhN6@W>Cey))1a&8ePs&H zsdbdlN4avlk-Rz7);MH4;k8?R3=XQ`w2l6iD!3^2JyQjDA5#SjA}I_ST0eJ{Dwr9j zI8IOj3TG-(KT`$ks>H5!p=wyJLN0P@UGExbWy;Vh%x$f2W$uhn%oy#QVa1401?yva z`0g@1LbLV4RLnz+zR@n}4?=ELT%#Z9-tTRKCwS0mORg`n$74aukg7_O#ie&OYIz32 zAcXnQzl0@^D$HVYs_m64vg8X9k=6hlyb&s5m|(OdJSiqR?KT7yg#_WXKyNYV4NRj`kgwG&&;?$CCXTBHdKB8$ zesz6z4XznRFq`eRc#Ed0z8M6NyQ(9fn5arJXD}f+y<3_9wS_}B>oe=b48kr8g{Pc0 zSdquHt;4uNa%z-iwFl$LktE>BCRgH(&qH+w1#> z+qc2}h=tZhHHV32{1p{o)BuU925UMO1jC5m^#>MtT{(rO3W7~T35gcKLNAMMZt!qJ zE7bPFRD%}=8=Mey{d@YYkfTs-qh2Jlx3`y5P(fVI$Sl(1vTFO7jl5VUlf4D~SEeOI zKN411n&h>oGi<>Jo#Kd&Yj zi6Qy#@t|ODA$-|{XJle2InM%x2I*&XM{{gwJqL;{1Nm{=3(93-qoO5K62eKyA=1D+ z3z*7R>DtgzC-0G_rjv_HMe8)x?!gJ-;APgHqT^IpO+hN;)~wRLGZ0P#TopG6g1}BT z?XBpswxTP>R8TXa!v;ZMB3LQ7XkE=*>){D$M9i%&STwL$%0}r~aj-EXWb73J%ajiz z#FM(RwS$xjs=kwnA{=v}S&*F*93OM3b4Ge)gG8agmD5FoqF>vv4lys&T+4=2viP3C zHD<%d)G@wESIPJDywzq@T`cdah`DYWP3tm*3>ulKivOU<-1v^VpIsK1Zgku1k_o3} z*-EZm;$Q^b{FZbilMZ||=&56j4IGUV?PkRKGDJ)4)6M?RWC$*Em$yNYW*a^MY4llPjg%0uPfSY-$LgTeRea_Q?MyTlv?dkK>J6(ly zdwR3?r-!{ieN>!bXVjwP4(-qwGid1N^o;@t}eUqrC$peqBcBhva53F_7 zqOz?>6A#Q>nH?3^Wt!7hnrPAJQ8bXp&FuO#W!{F&G+T&mR;;B3qisMY$@RJbL+_0c zwQjl-#?&=hq3Cs_P@KRTLaus*kDK5XqAI46diG4j>w}WGv?KBnS~)btK^lw3gOy=N z-$r;^(2MqThzxu5=zG*;OxMx&;u$k_Ly-R++|rN_VNO@ezH4Ef(*JIqjHH~I&;&Kc z6|s=Y=C7!WQB+>53~ts6%Ld(cS%ImtCIu~;PBxF8bMb@O~vHEV8fA8&3ew|P=fe0|^FKYUcwS{E{Eaq_13v_{c6WC4j7y-Keu$J~t( zO_3Bvc=?fN7bJ%ZSujS%M++qN(*PAH%vEp{=@NAj>MS@=1hegC3AlC&@QEDEh^!y| z)oGjiaX7%{FaX01In8gou*ts{nHBy0ll0eTG+{RS*>i zNC)XvIcGp??bxq#TARcWks_Q?j!V$c)XYq!M~u-&n8oEaMt?|%9c}2u`$~i>(C!o) zq$(i~#y%xy(CM>bn5HrdwYYrD%wRic*^`0IfsQS*$$|Vu4(E~=xg^Dwx)A*~!|JtZ zfy>kBjYHA3LZ!VK8<=t*J6JA~!nbil6UY0`2gNuFfe#3s%i+5mX1#k)EqP~QKx-*B zl_qg4v5ugI3mS%0d9)+haQ}uTF;;T)x} z+}O(p#Z>nC!zkQX7B_eH*pxUmCuShDfE_d;1*j!ktY{+)%%9VAQTq{fS7GB{909$I zepjr5JkkXsOx;ym3}g~X^f>mpNP4)wvY(P>f8fX*r*Fs9!OQ7HI= zR!FU`1AQoy;K+$7XskU@=;D$I+bagcUNCswE~zpFX<1n>6CQxju%Y-0SVZs2K%T4^`wnaNwXPnsA_?<#Y&twM0FwsdkWVf1az z1%n|TI~b`K9E3&aay+*$h7OwWQ^i0RbvCJQ&K<}7YsWDfMN9a&;aH!fb}s^{Osyg` zr!s;fVfOBb@Q5jInN0*T;;DO4j%Q{|r8?wE{XbJq@l)H=bX@jI0_}@hb2O35Va;ns z5f5p&*D?Y<6`4-$N*6@1V-K`;>})}<_AXLD>eGQHtQ29qiS%CupPRjiFz@Zg(_TbK zC$1pf3Xdkjgamo+v74hJ-3cj{OVYpTcjf-#@SO_v^TX5Q)%)kYH=gy66rm z&Q1v73V0L~oGx!~YN!4z04g`JX-zc;a=`t}pZ&L~MIA6gM<>G!FWj&fdiaS#9AG&KVSMQ(quFTL^ z%k4h`NN(=?+w12yfFwhyY;_01n8OwTSqdfeGg&wN-GW`2-3i?>>z?$WNMPj0W(fy` zgBW=c@*d%J5RlCU4QL0Yjv_ncPUb9tGg#y}e9nTtGDMA{6~ZrOr*}Dy-p4lfhh;Xk zVP>XH^wj2^wif*{t*ihCY(r-NdK~4OT>|J}d|h!Q{k=-8O|c7tYb1|8wD zsQm`>(ua@wWDwLvyHt=rhEY+r{ExuYyf#oR2ftJjtPOGj2A_sy-Odve@K@KFt^FGX z#R@m%hYo!c)_UL1ebwDlvd{Myhab(y31{pqW>5O=`SE0(zI5JMHS6snkMGRP{a@XW zAO7$s?Ti1rZUY&s@BaG3KH~JvcRw*r_w5ct?q9C=dP+*Ie|)@uzW&#nH+D-=@5F4S zuZ^1#qLZ<*%+Rb2eTWgNL+55?(tnJ6JIc;E(h0PK(2!Xr$g~Vv1VVdloNXIy=-m{y zUWh`T1??gQV~Ug_B13)S)`2|tGLT&d>YB0y$P81Zl~kOaWJHtKS(^X__(V}EM6|P& zd#YL(Bt>XkA-Pv%HW!zMCFLdObwh7wT?Lwe`s9QYLKj+E%~9y0--Rx!NDe|5s{@`a zuuf%R0E8~w8=;FBR@+RMLKl@_W|}UQLw|j20^SebQ4YO%d3m{d|Gf8w*6htcB_sND zdwcU%b&Bz*xfkY9RFvXimbeIT5YKPAF2ke+pl|1(D8}r(p9w}6_{sZpq%98z6HH)g zex+m?LOPH|>QS)j!eY(Vlhb2^rBL&Ly-<$9uh^Z(euT$@^7mwTg_C7g z6-CMvL`eJ~a@e_Ui?gz1{p9F8gNhMueYdu;W^}>=l6Jq0jj(mwn#3>_c2T6h1Mq&5_K071*6S zkYc;k!15z5`%<~=vwah!HC2gS?&HK|-$Td+Wzmt#ey&{h$un(`_9FGsyso;>0=6rP z*qI5`E};Ip^>yihRF20m-S5=(q(bT=Hdffi=q*`ct-8aTQRUyJ+l#|@MwJ;#xqAP+ ze_Rye{^{ZQjo>s?Bq+a7`3#f+N*@^|c3rB?-sE;mtn|+as*-3!XQ|hB4K?Voa^5Tx z$`UmdcH~Kb>nS1+#h^%SiWlUd_Z_k!-I#{qt6UkNpobTDN0=#E`Ww5L_C9#fH?m>0 zr0lJ_(8qYw)CmDja&O%^qM?l`liLYBGJ^FC5t=`T9rYgvARifO9s*Hc$4^_Pa| z=-3KhR$xG{h_uqVz4Z3b2w?ZtLlq5a!c)K_F->TDd$>k25jDz!DVz>ni53IYy_ z*1a*_O#F1MDrzoFLYAw&=!=g{mRlyKPxW%xO$K`%;aDa~57pADsBF#Stlfx`5>v{0 zPqRF_Z&oI#YP?EB2MM5JT0SLTGU;}R_1S49+I+J+3^q^+nQL&eOQW1g@6UBpn7d&Km}d(Q_Jc6 zc&iD9b=V*@LAa5jnu$i8eye(pj;1Cp8Ux)%<0~ItoqAc239`tK^x!1gq0CNpV(48& z19^2vxkZNLTvLbYQUz80E~mKg19CVHP8qkLJiP4x#Y-q2>1Bo{x!h)vPtbCq<~l-^ znD{rtSX~w8V5`q3764>R*GloJa8(g*Lp;E7hZkx~F4pvLl@8GN4c{G8kA`?U=pA z4r%lXgO(2En=LnjMXoUW8D)ZHajP1mr7qXk;bVE>@sPGU^JiL52CtvoR!QSwYXWJe zU5(NES2f1jbpEKuI94@A8E~RMGoQp58>6^Ofc2=xh_Zr7RgDpCR~x*sGi?H{_>&r= zA|VLpdU#mF6yHREmuif@KSh9LI)W4ASD9}pTC~kFU8pfusu-CQePCUIRVZPGW~v{j z4$4z2%UJQr8X2&V>DBQ>fAW@Fz0(0*)2hZ8vqH}!mv8kOuWF1{jM2xfvBIaryhniM zB(|dnuq|-nEW|8Z0vlD87$^z~0ibiU)^>tWlf^z(OLvlE)b6p_tyP7-ii~YNdfYJF z!upD=sbi=#27TBm>XXh@)+s1_l4+dj`9`NaQxP87mZqwCN3IwZFs*Hac4E?p8U=#p z3C9h)hn9Ru86ikW%eA#^HyG~^KG<#7X&g%fO-@Gft{~JX#G*HcPNT!)2sj6!wh`J% z?~+hQw-zCJ9~H8Xa_$0~a--A*T}_nsJ8{R{uUkCIHSQCPA^h(7;_#gz$m^$@$E)|x zd)0!zlzx7f5at(*Nj}|uL_;VfPUGW3TC-!=v~+S%rqia0HNPucgtH{x&%K!rzWFg+cYaO zDobOt5JaFxbr9t83RLxiD5xur>I3W$a~%~~CS=fQD=V@g#&+AZ0misId2 zF$ZBs*@i3=H3`LSnZD+A9H6=FT!v;i3(5}}nR@2FsO1y`4TSEbVoeb5EG#J7$?S%8 zRabA_Fea%HHkBVTmG%@0x1J&3UY;rA#VWS|I@r_JIhxTdb*2(!nsTq;nNbd5({*q| z8Rw;JNv;vb6YoX^`wDe~DM8_9SX)z>8yCm4QF5tqEZLQGi(E}!qMj?!d6)dcU}9gX zWq|%dM29WQi|CCqSrnXUqQdsA-=-i)og$p_X4>?Ez1&B)kuA6MmP~{2!N6|J^xLvg z{nkVziw6{Tt=^<39 zsOYCf4tqVoa2w&8Efk2RVcY09>C;f;fM>?rVJDM0keeCg4Si}W$ym@Q9=e=;*DEM5 zqXL{xo@;@P&UMey%EgGMR-Mhb0@^EcSzHx?wa$8r#y51ZSncgcgqIhkluErIYmAaz3&8j zw3dlHpzOxB%~99EP0aO#mV&pPZI~xvsebUWX(>(2iU5V>Y;AF%uPB$6E(>iFSTDAr z9qib_m6>8!k}ff2w4tG*Zc7eGa2HxP2v?Yw_M7dE7S<4TEd@MQOL`~}tkCzVVC&Fi zML2@jBq0{vL}$pCpwuBexyelXwStYV-(YAT$FNew^TH2;pIRdF{_>3nVTMIpWim`F zz@E&Qx7LrrGuCwyI;|Hi7e%gF5Gpj#q;v#GIaVIMb&`v<=GdjtdrW2BQ1ILVw^oI1 zZERQ9w~dD#8M<(CB69P!c|(4O?qS+$D1QkV&(!2R67O}udNOofHH+@hmqQ<(G(gzNSY6x3^z45zw^9oHiNr_f5*#L@pfx_K;u?mcFxBnUXX zmb~2rigV)`LGSE7h}=eVuB%MN__HivVi4J21ZrL7SXOELYm-K;t3=nz7?QHAbrs{Q z%=y?awXPEN7F;3ZR(oAGe70q|tc35o7H^g$bcVq_tLZTC^CL7%6t;oI+#*{S zWZc$i(>9@VwqGg{0|H4E*kXG1zB^E{9>zi#-^@Y8>D+}W->KCRr*3Ih;aYZ{u$#6^ zp~}y=j&}K|Gf|@@$C=9pLDRJ9g30gdSrshXh5$>~&MCH= z^*-_;${`d*AZ3kg5a?V;KI&GHFxS@av^z^By1?&P#w7YwARL2cL>_U5`NBII!6H+M z~>Dr_7SjRN5XLKIx*$4e}bxaazxlENsw4@a9o*aKE8-d$A|li!*?RnySv-V$nWr7`{9qDgk--!72rnK{SAq+N5)bf z+Cs@sbL@y3ZPKbIzLL|kc7arC5x|dHor%sg!T#7cqavyV&xwqx{44b~g;WfCQfs>m zsq#6bvf0Z)71s#7j5G?TWHK%p;h=HZ`Ey_JE3c zG%Gjnbe9OFx(VdhA4930^gJ!|!fnjs#i=2Z>h?$~Py&QLTfv3`8X~E&on7eZXmpC} z9dT3Zt1vj)0!^mv%{V&cj*(O@r%1|u6iHPoasny42U5*Bk}^b6Yu71~O31JzBB}A? zNU8=>s9MWag+{>Ke-cUA+4tKXN#*%9lG0TR@@p<01F7aSk<|E6Bo&FI=2Rmo0x1O+ zr4NEg&3F+>xj5)%D3W5f6J10F3LiyMdmv>9q*B(&t~Eqb@=G<6^2bQZL`5@GQCPMT zNy$!W0kpa$uYpu^iloN5i@l8KIg*-cB$bGy=GRE-GLXVY5J{Dup%_I{!^e@70ukuZ z;bbO~(&ya>q!cANtuP{~k!+oBi#!!k>3oc&R(Vk^30*yfJWzSqp$1YuhaUa#<}#9+ zE+VOAkEG&a;gVA%#Xy2P9wRBHIcII=TqvL^lGizS6 zu8sKn55NE6FMs^*!}t1^oY#MR`14QSefaZ7S+ASxmxt#Q_vzE!zdkTL-P-o*t6$x` z2owL?Rq(@=9MH>N3cJ6*y?d&;uHQY}ynHSDfB&XBjnbR!FN_~04t=Ek7;zR7n`Ofj z35IY#4%i>~uaBgt-H{a4R%KEdQXz{nR{^exX?aGWRz@F2cOU?R|5%1Y=0iTfo2H-y zvnge z;&RDDGIee^py<+s+F_KkJdCaSS?3T>u7J7npqSkwGc+vl$sfr`Hro3Ma5lP%%SnXP z&w{Qg%RCheF+6-++9;p$qtdW3>GQ(W!BBZmf4=N%T0**@M;(szsQ96gLhTHD-IN<- zwrh_u1V?+1aqj5smlKVUgz1%%FK~a&Oc8g`B?zJqi%isb(PK=LpRTH2af}PhkweP! z63296DlsM^dngxC+l!mM$n6E#U)fR5{l&BwYokYUNjp)A>1ktDpi_nsB3R*Fc`I|Q-5QA}+n}1*k%DNebJ%1)e zHI>P@DToW`Rq0cbukMF4dVGBFzZvc>4!{2GHVyf-v!5Ox?{>gc2}*9y%JE+~@9HnV z`u>L>{&ICu!ua#wzWM&!AO0$6q;tR1hNi3dr*E(R_@9b2zh}!|6ghtTpWpwWeg4O9 z|L3Fw?FvFqge>HhhR*t~ ze`+Kz6UGE6`9WE#u|Nc7+pdMN$)g=TFMIXk81qfMFiVRV$0y>(iA1|x7%8aGZl>igQ z0Z}16ukh(Go{@R`ip*sQD>P3-frHUAYKg*uo@fCbcWJBK(ZU&2Ds`(yy+Q%}$czXX z!}d9Z-oW*^L-FncicfKY40eG#8Z1tJ`dHKu(3@xGqxPzXmK9Bd6U-|F*22&-f{tk~ ztH6wuE$cd?%xyN)i~=?*v)n6b8|yuJ5t+=lVBFF$S%%u;B_oAp7Zz`}ARps%oODy7 zVPtlgwt=#Se+$O-!qecWYD}l9Mso(^Yb|R`r?Q4F?kgCl46+I+y0=x0W(VWxu;#a5 zyinHYUdtMJh{c;7jJshDwX8v#7G;f(!FVSyZjMzAYY+}H|F2J~Ua`cSThGtq|OOo?OA7$FXxC4w2u)CbVxZFB)oc^_{QJkW3 z8Dz>DFxGB>acK8IzsU<{PZf-t;O*gD)zGr@$Erqynj6ZI-3GIK5n=+2*Rloy$^{sQ z1b!4wr>Y@5Ji!=?3dL0QIF4YvPFhpexCG<6l7R6Q<;inZqd9_ca|Yv1-~ukIXj+*6 zOgpsE?qIx?o2^w1T}7}sVX}uBN}JtMZWkCo2#mvoy%(3W$Zo zpc#b-50*NCs-6xK8<>N(+ML>9@(gy*`+Rk6zp}T-FJDha4)V3yEbv>gcFH4Sk5@O7hs^vy9 zk|xWt3?pG?V6o%~U2YRDgTz5%SKk6Yv?(Fl2<`(fEZy z+AV$n^VIav=nXTG5r0Z=&O6#SSXG9z&)ySKB%L znSoW&i;VKn$r7JA`N9r$XSv8O&C}cp^bq>$c_(^96UxVatPMQ0pumX+~k4)82g8|^aXDRhns=D8$R3IOxuD!B<%fc${0d+A)q6a z6_L|4MW-cAt@7o-cmc?Mg44J3sHhliOh|pr=Sh9jPU>qQ3y$M~j6(;fZ}H8kzkRBt zzJ4e5jjyD>+08(Hk0!M+!np!$?BE*&j%kN%A#H~{>`dwl2joubTOjpi$a|?&hi6XT zMrLnCBx7Fm#)IIe?@D$a_M8YI#X=09H(C2-$^+znmH(0M!O+NyD{Pu7t*=6CnNznS zxwX^!B8(yr6y?e@ovN_{B3TT3-b?dv80ez7h8Wt8b(K z9|Zvq1d=akU{{$l6jbV`U3bZU zusu9n9DbSq;O35LmG{qkZ)p0LkssXL-MqY+IvnK{J({?5U2v>Z%JTtue^hqig3XMU4XcRWS$s{q(|*ap{-R zoca@XCYAl4%ENMT4b6Oiarh30#LfNF-PQZ&om*f36*RYakTNX{f;Y%0jhK}(sHkffuK-p_PStiG6UtcN|(P-rF%^b zG^aA%07cTdO1H*==2dyhJ`_eByU$hWn*N*_n9{LI7cZ)GnSRGu`yI2^4OP0dSLuYa znos&2(`#bjO_eTFrJLSV>6$m00aL4Vdt%_VN(U)x`dpQ+Av2(u6?I~_SLsaLt8^4W zrZ-i(i^M>!(lvTVdFa>RzS!?Lo~v~0JYQDnvhb+wYME}&42+`|cZz#r;8dmCPKkkW zuhI?2DqSP2yO-(c+W@spb@GfVT{>0iUK0b;IWbTKH5%7xk=HUEsoB>mU3yIn4BigY z6yvE%2PIkGuC4_&*r}H3KB>}8wcpVk`yID*$_o(J3jB^%%QG-}hkl}S@|i0H<_wgc z1DeOD6dztL4!_pUo9|A@_V!6;xdt>(g1OJH0nHcAyPAbU-VbQ{58un_2^#$A!;gRX zuA+m>{QTYB%fCK9*KEM!^TWd~B+7G}V}$eY{HPyZnpy^+R%pbcOpgA|am;mv#w99L zMyIMyDII^=%ECGaMS5~tmT3S5hk=}{0BM)qFs_;T0HQ!$zZ>TO1BNkCJ%1O#s#>lB zjYtaj%%Lg}USJlRY_z==br0!K6j&uR=Sk&GM@73Z%}j7odPjF`h6Boz7B#(%IZxe^ ze5j&R0_{wzDE^$5aZ@lh`E<~8P@K^Y_R|J@CNBYyDK*HQR>gK&62k-mit)qZ*8wrB zoU4OSybX)KfNj5#hlr7sP}wIE5!xjXT5~j2+f>kUbBFcND^%Ay^u3l&GBQ!dbfif|QS`=xVfP7ENE zZ$~f@66H6%@>?@ighmpgSBMgDO)K38IF?3cng<|8QT$5fU#eR>ADzQE@87>oVM@BJxQ1ry|3}qPQ zpJLodglXYv9ioad==;d{U6Aczcya2wsPp;Eh5;Z4!Sx6cVPriBu{WhPumaC|WyWw| zIlDXerV3z@-^ompE3oD%j!yGHha`YEO}(UP2W{l zq5wbAvna>WqbP{9lgXQQ#LRd^@5b@q`vZxzsgzYNeN!N-tKAtW5U}Dt3yx_IBLzJ! zT^i;o=*C#93ljG}i?uGAo#(_1yf=ZJp7ykb?z&W+wBpsc%Aq3jF%^JcON>zZT ziclFFgi*UGhn=yZBNmuX0>b3n^l8@GpW1AdoFN=SEuWr#Z=}@re?q9FI<<*UKQS;S zUobU1wa@;m$Lov3cPPDXZf-9`r#^e$&$M~}BdlHzFZb7XZ*urcjfiypz1>cegz`7q zd|UESw-)Wc6+O%lqCn7$k1hg7nFNpk9Rt5<^qx-PwjUH|tw&bdtz~Yxt72xQ3<6&J zoFEm@p}80oOkI>$73A}-TPU#mcApYl=y9{u$R_%X^#x*sIX5{$Yg@+zwO(N5UpBoI zRN8QoWoS$Th#2C9}t-2XqsQOjIAwqZC?OoO8)K#r;t(_-9*%g$hr%K>ogf8L)Z5*w|!~x7YC~6!@ z4``)ttuxuK?W!0^3zZ2ZfPtV9VcJg6{^b0FG;mHg)$jEmf+ITM_A9JL$~ratPeQCjL4k)>s6H0?k^zx( ztp)*L=&1URK?OI@39_KY_d>mTMvth-5@tJdnU^$gR`&GR9`g~V}6u+%06tjpxPK=@{a%m~iHx@~&p0m9n6IXT0^-s);Q z`<9omge}Ke5r?As#gRI*-20=>H?SJepxCRBipX5IkPssY) zE+Af6n}&GP!H#lPjLQZes+h5*w_p3)ZLasVhkBd?3I;)+IYXixx~-D4(LULDZCzf} zSF#gVdkgiie5k;@{yhhGUxlaNwA;m7aEDbjl#GW*hbS8@l> zcVGYXUt630>&-`WeEoNS_^=}lvIjyTJCePBeyVd4I(_ZU*VDhZze)G^w{Hx(oeORC z22}yLKlOL9lsol-$E^ac)8Bp@w9dBi^yucJhrgb2exzL-O+9)@+UkH0{g!Bm2;Qao z=+jU6*~iB`*~Lk(kAVJ7-)aL@UbnMLEsvqx-Ci7iz32|NXP0{Ou%~Tq9sqz(XP5eg z^L{3vUcUYFci(&`k6IJq-~8=Q|MBfE*ZBDI^iIDw~vA$Yd@kFjlkGR zhfSEKRdAYxyr7YA?I1tQ+!KR?Msa5+gJvKhJWJbdLh6(d_v*qUP< zF`yeSL#r#=J3-u8k@`AJ2xAQkN+6!5re$iiuuGoJEFY-=N)|4zLg1>sL~ji} zBZ>rdOJ)T&da%<*Yqi?tj|G8BL4>W@RoJ?qd#smNfK9L~Of*0OG$@t~Od$wpfLNnK z<<5?$ybEf(YmJUZ-CJ`hrsIBle{uMZn9kkZ%cYpk=g#|khSGk4vJNZ#Eze^_NU)dN zQGmBZ7l$e-o9al~44bpILj7&(zXa5a;YcUL?M)+GCj&uotYkEBV=S1;O8z~GClT{a4wvf z9w8B*`%jo28XB#!B;eL8IGzO!L^67`~V@ zC~tEHO_nFCG>`r*&7*nC@|Y^iqd-a^XOL>nfJ(wE%VYROERUvdV0la*u{=T;wX;0> zC3b?1Gi4?y4SOpkqYVg`WjvC139iyVU7 z!7@%S7l-e8l-v9JtM|{NE$~-=(gypL0<&+v{p(+e(cam8vJ?-$(A8Yu_JS9;Zz!j? z$hFVLBds3jXBUKxvHn>PbiD{Enh}$J7*{N_M;_42xiqLl(DHFuAaYuDuX81}W6^A| z@UHp;yWCDzr>$1A#FbR8SvUCVuxtuD=n98-&gx-~Zx;ilU0UtBKZE5Fd~4APYLJ$! zgm*IdG-+DI_;`*$Llg2O2t(1?i`*go;d+bc1h^l&L2VhoEQ<%+4$|Rn0UdufHHA zI`*N^@DCgGf^TwqlqqYT^g|f@GpLqQMy{qMkv1^FTGK$ci4JnK3?tWftNjB*hhgde_a&c`L+~dmb5D7@?=4^tK3|c>!>; zg!C8dI#hB{TP8E_T@0f(pIrE$5JC`n=~nHrEx3g&Kf-$s`nhK3o$D*_TxCDOJRVYP z89V>g|M2@s`W~ZGi%?0nAuiT#}-Z@C;gbfI>rW5ZRv~$B~PqcFlymO`U z&KZUnqOVY&rc;{p}WgfH$%ZVW4sCVAH<(-okr#pMR;GGLc-Z`T%fKKRgqMch@ zb0i*L6<5Tu>nPPC95-#cenvlJWmZi=D6TD8H#gDMxh?J7U^M&DR^~a_pDiRA9;cB% zVV=Wgnx!_^R^qwlf_Y9Tr4yK8EM_yhg+^~xF=bDl)o~L9@0m&3iRavC8We$Fndc%6 zoo1cs5X?9$Ta^GEv`+}A!Sc8&h+-(dAo^B`7;(;%f#{uKEjd=7^~SPJk|Q=r*Q$~j zYR$`s4G@FTyUoan&Qa{O_6xwb8;q8Q4?=B~ZB8F1tcbUaeu8XHOC@J*rfxIMaLG2e zdB!yy4QeH4GuJDNv*|Z*zN!xwWtEI5wdla^j1+AohNY|GylMqgO%mq5Hsln`I3H& zB|$^bI4%89YUegBJ+c%K!3fmFDu*h|3-etx(+{GfPO+vZKx6~f=K}%a9%}KsxbA@iM zDCAzufo8$6^B>Px&Mtb=S#}+ha7n+w)JWkP!NTlHYCfH_M8su9GiRDpSU)4GA^u?Y=@=)NDm$=;i;;) zOqWxZO%0PU5h(a745}(Fb<9%H40`Y+?l3(juSmJTc3GudP_m>|5z%VLcyp*yF1m5O zW#Ce~`aEzcd=YK!HtNx51EH^t8>uxapkpxCO;yeW)mjFdR+x$Qk;`o9$1k)pLLrlT z*G+vh(w~kJ)kSvQbng1%@XOhC1x&ZsSMQ(q8BzFOo=v~Kf4F}`4-9#&>&7GB6ju)& zkKp|3x|Oh5@o5L^Jd?~h?K&Qd^YRObq3rV;=0d__Dz9Pzv)PK)#96{)8czxybV|Gy z)SYWbA%YbWp*7{!?-CwRO>rj^&C=yU!J`pwzMz`=NWx?KjD$y3@Q88J8*F4a?RKJ? z3cG}d{G9jBw?;My{%E8;1vx#m6{rBS++|kQCe!Yk*G{kf$~6_VMpEUPnz?NH@JM*D z*!{_kYQ1mGk!vb{B;gSA&U7ObrFV8P`HM@uK!oxW(_|kdrxsu=i$6u=S%<`W(HASKhm4odC?jKXW%Tm)SF4~ELM2YPHe-?o7F1hXDE!vS6(!$#Tth7tT*FQ z)tj09I?S?O`lvm0g+WUPZnT{m&H1`qkJM;2RF-!PJ2je(5NnRjtK>|oiZhB%V0+YZ zmAQwK;F1~*_FXy0uFF}0(AY$SAVQCR4SWWk9HMcvS+@%&w5>+U>oDw5vjIlUJvuY5 zv}iRYWUns{-_0tWGuB@^?-P^xOHxQrZ^t<-)7XHUsVZlC)W1kRGgr2DGi+jXsm02C zEN@EQV9!U4jnjJ}MlGE@QqtwwVx7ntsvd}<8zd6vbqKveDgG)FrJkXu=^NpIF|UVG z>ltXNuiM;HSW^%u?_SZD?n@ZE(DetpmgU&AN9^Las-~9G^0avroN4sm0t$GFc@<|h=A1lsC@+ixZp@}q71>oHbqk{D z;6x|R^5?{H>s_<%{aUeYH-Dlb+*KkSb-OBhx5$1t1k{;rXK-*9Zd8odpntxhzA$en zN9sBklq1Kup}v4tCWTc-L2ND#O%l0^9;U`oh-*SqPj@ydPF+YPYu}D*X!TfK0Uh!o zm?A+sGFRzHlw$>=#)e^$ny<2qL9z*D&GvZ|Sps23XSV#h32Dw^6HbidHv-h-rneqv zKaUBeSeh$wQi_!X{g#5nc5R;`@=Aw`K2ssnr;EdP`b=+c9v-gVKkt(*_fK|}-rnBv zqL;bcY0$Qi@u}9_K)A1kP-i2{XC_CtI!;(+z}E&5r}pjWXq_BQOelHRr4S716x~4s zr^<0;ln#C7C{8n@vYY$J=!qG{`l&L*P0S|Koc{61Xmc?$3N5-&hL?Bg6fP=^j3WbL zr1*Ow1ykonx7WGRCP0bTt#UG99~`xjE}OS=qv2w1v>fL~M{S38La-R-@8jU;La6q+ zxlslJ-_DIvk?!bvIS-Ehg1ON~9;FVBmVIy(GAgbKg=<~xso&>DeVrSX8+f^VKz4$*@$rVj3i+m2+Ii}yTkZqcTh!@oT zMmp!{mm!U(nA|cUDDRRN3&H70ad!tWsK(@O4sr2gn70Ibt3~4(-rv4)n-c(nhOrYk z>t=>(WE0t`+GS)n7c{yPnFN}2bfcJ|EL(8ePrg@dkQoGDJFkdtgCk+}Z6`~u$4sF= z92D^@a95x%EVKn03_Hb*Ue+=|kf(PvmO`fJbf;gIm$l807l)N5@T6w;boco9RITAH zT#K@ZSMQ(qi8XvB75w4*4}adl$K%W0ZuY*q{`JkVE${y6@Kp^rS0n+G*83tX-1F{5Z~~N*UX#dJ<4|SwmcNBd={kPen7(?EyhBW3Ix8 z;|`d{lW+^lPP*+{H-SlkH8AY$sA9@z3B!!?{j^Wl$8S9>rpaWS-*4@76y6CQFj=94i{%vs#r^D zNS7P!1$;Tu-%#_OyDL=pmnV$S^zI*uEb`I_Hj*>Z@G5QEOh8}LXNru z5Qw4UQ3Nl}nessY`!Q24sMz+3Y_)}j;$S%4+@1-Wqp7UA=|s*jo+pT>qe4rwOSFtO z+qbE51x#8Hcg&PGJA`|aDvx`re7s1Nzs;0)Cd_2Y6*Ku=C`+3kGLEc0 zO{(1Mqn=Xbqw{XhltZ;MDjF&^Q{K2~vs8l2noklf2&_+)cE<0C@{jW5@f(W-P>1hLA9aKD zesufC&*sOQcM{~w0zDCGZf?(yBW|Q6T*$&tsBX{)yq*%|TK}g6dG`4vv0?lBHN9cq@Sri#HTL0T1FWjdB zCvn=}0W=T{nFU!49Wsgz=uO#>wV!2h!=ZPL0P#WF4%!G`zyV9ymTGi;q_-R9Y<}ry z9_=nZSfZ#O0@{-DG(x6@e##>By!JcGV#qx(y*%k}v(#VuDO^FB zukZ$^<8KCfXnWut2aB+sOqC3XK(D+*lZR-NuwCzJ!eM4so&L;8$bXm$S4VGrZ{Wv6 zkmMcU)6kEbPEmgxB7gWb%CC~oV|?o4UnUNN8B*Sa92eeVqc@A>%mn)nFTr>&qB}wt zr8bmDZc>=a3acZMV*~SGbPZFq9I8B-ehy5P4@q(jR+d^8deH9)6Fu6Hg;*5*Qa4u| zjU2_;OfWp!j{bCHv{9xL++AY<2>KKd1;8>e+iR?>IwKDtF8Zb{wTB;bYo7bE`k@h)g^!gZ;ONA* zH|rx-Rt)W2dT(0HtQAKe?2=|WF3^*Njx01OOwM(7lXcRw$gL|pmkIK<6$g4W1#q&? zGW?T#mfYk*!CQb#Uz*Ct2>YTykEb#)$)^u`s(QKIAT%NGFOX$6Qwvwf{wj=(6Sqp= z7pEW+YP)svavHtQZcLq>j(w#RU_65j3(7;Qe6{e4K#ps+A*9G`X;gev!}&_E#BRw< zN>mz+rKBw;m@|U5qxHJLie+Z4?Gbj5S;l3ka&b!+4NcW+NJ}?neLq6rHrTD(J6cWk zz{ToTxx8hB_So=r5f2j^qs(kb{Sab^aSbjQc=64c%D}$URd?gujGH-V5tdrIW^h;l zqFW<0sr0yIsQv_XXvI6y_qUb4zZ4n3zBcsdQYrkI-<1O_dVLe*m*J=Dgni~fVrrdB z7X{Lo+Se|aVso4}nPHzHln#O(cG}kUWAgsPnY>@&1o|3lC&w(LI3Go+V$fx`P}&G% zIos;lbOE}+tjWf#$xJIU0~$aX!5|vA`dI1uGmJXA4T0_r1P_K)!IHxF0R=Pam|iA* za0fk{Vd#dbk~3NVQpx)L5C^|hs{U<@E}w=*P&gcrV=A8@*o{vsJfJct_EkcCL)R zOwSl=Zd8kJM!kuRk4@DY3&JN$L6KV?DKYV@|I_Cra7?KY)*NJO2NQbqC_{$?d(hL? zVPYewD5HxcCDiNk7mMN{W_n@b6~xc<9?9TErbTf?9vnCiK|vDR))hGwPxAt^%46yD zq@BW_Ff>AHOC4Z~+X@NRddLJ&W?qfg<_pm>@VL?E;z_Qo-JuV|4@;FEb{x#y|LnheSa0`VGu#$sUM>l2 ze|^6^UL3whVEcG;L16pY^L}QA?w@a&c)opjzI{ssHQNE==T*^fKgcK`_H)$fo2Vq^ zvrb<^cTZNy?>c?WQK;`|74>$G#iaeg4k-w(JIRrE9|@0tLqt!wJHude(GS>Fb1R z6bD*;qaC?2e^)lMu2o`1eof||1w17>)R5&v0A-)PqqDScF30cWd{Bx(Qt(hHhHCTF zO4VunPXBqDzMEwzn{Kz1$MHL=AI122(;KMccQjr@MOlU90-_X?16_18@6-@a9) z3ZOV!*~t~0E*q4)Q7h1m)1Xh5No*IpBv4PlRG28-PJ?q(Q1OE3SC1LDzQ~)^CdY|} z6KG0^G*_&Dkx!##urI@w-7=3_!v~pwb@RIFSmuGgiZE`2Vt(6)fIzAIAuTQAMAc}j zjWy#a^tv=8AejAL%FYfs`yLXN6WKZ4I}-^CXB+?)A(`5(H*3k_T^KNpSxa$hbL|_3 z;A30R^P6Bk*AkM~i^-NwF|Qxy6We(s$Urh-?ShbEo42Vw*OEv>xLPEgwL0V`&-40P zgQJhG>4?OqLO!~LQj4a7F1Dab>b9C_9_O;@`n6LWwYCKIXio~`Kp&*l=G8d@!RzfLr>PF2q; zj=BfkWEwz@5c7x=>H9W!ZQnzoCTQC#s27M_6%+}`)y7F}P`d`(ofu26pKp&}-eD|# zczn9Q`uyYn-)AhnyS;mPD_66CI<%1)ywDm`JR#dlgQ%D1meEN=>X_?faD9w2dyByM zP*#@@jiDoR5ITn~Xb}7Y9Y&bug7uqhupDeIE#vI74nhl`JgU5Q*B{O_qYk-S(okdU z-fMpuxDwEYVJix}EF`n-vaEjVa;qaB3KaKR5xQq-&K+q50|$mxTn#kWn^MdPC6nx} zEGT23#J?yG_@(I-3@P^3K9sRj&?ZZ`2nWgH3ArnG80TQ;Gu`>{h;87 zyorlKxb!mj6Y*=`4RAOsMjg8@kP;@rY_xy1@wJ0tInWIdDAa><>>49bx#mJCn1*%j z>p_u)K&)1OYJ=`mr05$6uEyHgFB`io`vgd;?GC&`P(-em8}t(e0sDW4<#kwu+u18% zVe(|z`k-5-NMVGpMK3H~++R|FGVy`MfV76v0fIJ1Ii7CfYCrD;Sr>z1(F6$OTZGG5ePh=O3 z+fe9=1g&u0QQ1X1U0*xe4{9z0ONGMMNNtkf7dzf9W3WSAyRzBD6Y|pSL8w$$%C53n zc4KY8u`g#&3*dBE=x>t;lg}edGflw>jyQo-S;vLZGc+4w-@*ExrX-Z52ta0b=}C!< z&`4$v1-3rV0bNdX;|1d)#P-oaNlCdZL39r*2b}J3|E^uG#T%Im2Gk6FbJ`CF?J8RH zmkT!A)|BUq!*|$hZ*T4{*la(0-WLmwZ)Z4v8KdpP{lmj$6|!dWItuGGe=&xUG+i%n zDR)GSvlu5&Ef^4)MUP;JC`Smj7Bv&=5$|22f~-j1EFp-tL~XOK-tJ79b8-k?A{&JZ zud(6UB$taUl#EhBZcS@!iwh0usM(WvNn`z&b7`5Pp)~CjOCz%q3)QR2!k1zG&rEy@ z>u8hLX%Vfdh|rr%;+O)5y|z32G>svmS2VvE3Y74qYw47T1byYTsoZ?RzYvhX`W$;~ zJxRRLH_R;n*jLyY4B0!qqXYV%GQTqF4i%F)m4&7ufgiHQ2iY)mCK_1xiXAjF2c*-|woV}&*3ip0FeD6l86A&;aIWi628u;t^g&xD24N=DQw+vL5rC@|p}HaH zkWmcV`P$cnsQNUT=1_9agqDCI-Dn+?1smg65CRgB%F_v%Xk#lno|jDVKaX}eIO7G+ zo!5<>bk2Ab&0vq|sayqzG$6SS3M~NWS@rGa@i)Ku_2b3i8=9(HLF(tdFYK8~=9^Qm z3OB6?!?REI<_0LIW z)&!G9trLCj+NtNH$ax(kV#F zifgq?h0iEFGr_3m^7JuSlL#2J=WUL1Gf;Mi;A=U-c`hSj6s_nW`UnT-BH$Lu=Gc#x-I$T`ylAw=q2bZNYGIT$Qn$#JRa2t zy}_P5fOCu`q3p!ye1?51$7zYS(TX;Eva9&55NE6C%L=tKU~!>yVT<;)(FeZG39e}ryX(2>RpHY?_cX(JzT%l z%B9!Nq_t`r$o(wXEk)Y<6SnYv-1$!+|4RmpEjca|4A1Gk~samI4xOs-f$3LSKc4YI)}{2Kvad zqG;F-Awp!tjbweYXp|8u6#VELY< zn%Jp#vySFIF5A=t+M1Xt*tMu zkSEFr1};1r4G=1ue7mN$Q#{`cOD(Uh;DgFgvaSmH3IM#+wi}mbMMSX_Sl8Wp46xg! z+#bKY6JTH8J>Fe?{_&sYlKxMsfxKKlKD?Q_hiRRm5A?Tad>xO{bv4qSFuSGn!OZ8L zVDFc?GR`W5a21~!;ky<}%~Lx`+rfe*o0f-ceVp0}VPNQFA*$u_|bT*g`Eo9QBk6sITNo>?xpoOkDE&0H=oBk5O*H;8IvS^LwY_#{H_fty^vj(_qo9ke znVg>KBQ3r&5&cMS%s}%=H&Y+D94_?s<@)0AolN=l-QC00`{(^VoDBbbx*YA?o5#

@3UAXeg`&l)f-v1FX0Bun%sfEqn9M;@Y9ljM>bSi^(%!JJbYzYU3^F4yFnFCP z!vF`do9Ge_m4QK?5DEr+LBRkwl@m~Nok@&I%lgs9yV4gqno9I)*k`ea)|Egq4UBMC!uVqxemSs4CK5{72266YVWFnmnHpqKg_2}AQG=El#FFs$J% z2}5&cVMrG&3?~u>H+Q;FUnF5@KFh)oGI^JeNEm8AmbMZs_#HPu$oPVVVdt~wcALuG zI8t9bvM+S-GML4@(kVwPNko^PK{*!N54{iAdW=C6PG z_QyYb_x<;O`|H&ozW?yIZ}gRI^KkR{ua6Hq(vXpTsX=#rrDF#3QStuUzEEBD^o9>% zyx>FNNd7WxJ0XH1-L2jqn%SB+ou3=pG!VBhQ0`B5yFuc zA)UKHX%v*nJu)H~>R(Pi?xNqb*$ENGoe&|KR=3ayAJy656~51DK?ZG!2@-NzLFv6Z7+1I3y~y+>=$eZyZFtK z4ME{**7KUZAp$N0hw_PQT=<9#VTvU}5=>8LadXra7|169@_#xSP$PZw^7UZAw2?Irty`{4>b}*xHn}e!y>?o}y7~1u`0*}yO&S&<6 z@-h2CQ+qm(^atsJ{-D&J&gotDgQn6SlrPdBe9C@ckL(A+LCw$5AAG`oQ1+qC%6=ec zx{SO!(*e1<;hp|q-02T4*bj6`$}9VUZd+_1vX>Q-wbBy`3)}pL{@|mo&Uj)!s5O=5 zXXp<;$9|yQmMZ%}VBuo`o7BtWRV=(Oo8 z2xSZm{sTFP!phd(_>}j6L7yhQ5+CF@#0P%|??Lm~zRm;(KMc8M=@rpl@E*uv0WT~U>UgeDKw6RJ^)vTC_*+9Lm-uIr=l2fSewOR_S zoC{UQB&4+?^<_exO<3Jhc_ruHB$#Tnbi))6NRq;4%b2{+YcU~DgCIkWwe&=YGmLfA zs?2d>LeCUXMX8fRGhA0%{C>8e6|Kv-8A?D}Q80bSemc<4+!{TpwM}jp8NrPfTIecM zT81>p->kF17@3?kqZ1|!#YHmk+1WC)SGz;QXy1fLrgzzByP&7-h34DMOtY?$%-N!N z)YJ|lTmK*dTIG8ieY5EaCt0^C%G}DiRUtcJcY1Vm=@N}~X~6Z3oWsyyk9t91JeR&F zi1cKEHzpBRs#G3kJiVB#;?zy?|KaW3mLo^bY|VQ-1s`Cvn`9oC+!td8!2yTM0T=ur zkA`l_N>Zx3W|vf&I>>g9^~2Bl9Kpz79#|!H+pf$?2FXAK0&xHT^`F+#Uxt{69CiPN zVfW1r_IgF;S%-g(5kC3-8|(~$RKS%tY=?TaG#fJ zmguy-yL$KnkHx(#`OVA6{Z|#l{|VZQw-2}PUO&q)dx#PzuV|#vHz!|1fnZA@)`c2S zL|j@cN0_y(Eu^w8kjKFEd2lCbOaTYPlDwWRXGse@EKQ`2!zPcxbfYZ2cQU*#_YAGD;0u_@!CxkEG876L@nJKQug$`v68gE*fo%qom4%sA@In0OkS zgmWgZ)FWEIGdv4I^oE*uj0Wyr`EdErYi8HFu(NA$)O;{8sQ&8Fw ze=0>+v?iGdG}341x+nQ3PgBOM0QMxqGG&tZP5#Nvc`tJh4dcMz`B@iw6zT~AL^8+D zBLC#rZw!THMW&7urrZ0Ff711xm+7S2hsKRIDW9R646};DN(|mB8dz8qBnSIxXbyN7 zoi6cScUpD)BCNY)=E~DtJsAwrpYmCH#c78BoMQTw8q^^ZJu94P*;pMi z#d!3YPT>H<+WV^AhLUa(qz$g?h53Wl(>}}_4Tuyl_euUBpwVcm z)`EUrViTuwXhAP&+UIfZ>(pt7YTfOz>P_Gp^E>s&t%k+yf-{T;dglH^u0dN}TgXHi zdk^nNm#X%*Jj1^GB?y~k;b#i8%NA1B#t&t;(@FPeo2a>XC*;`X2$seuR_C6strc!1 z+W(gT*C-2nifb6M6OIU&dqFWh2}0|^V$e$`bTGSZm-~_@(A`JAV^D-SY+-P*Z1b=u z4~uv9UVsV-&|w(_dCHYM#rkTvy?XePJjJ^=w>K{z_cLr{|CBt1?Dp-u=iRh|T8)UK zKY1JHO}kpxh$2faP2G9j=$cY&q#Y8-vad+c%d&TJx&qy@Ur|rmGyLvUVHBQ18tQS> zVa-e@!8V72)RN1Y@whuAg8DP#F%v(t^~kqcg&wMUoHd!j2tTFBm3{CjAT^(kjv|OJGC(tEiL(fy<;{X7>{+5T15gleo)lB z3IB7_tJzRAByj-a@uZWfZLqpbJp-eQ6TXI(d@Dr0kRHpN1gpqJ@$({>Ob1Ih(e=I{ z4HTlRS4o9rs3#kvkK9O)>xJ~#LV65`_nR6A88tR ze>Bj%R$SYvhB*)J)!nEK9O45L<}F^U*r zGjGv}qChRv#;95*x#ZT;8>9X@csf&)I|8^k=IeDC&A1(7J~3*Kb-gxAq!|`wm{s8~ zWeYM8zO*^*CJ^0{0(0M!Ceuw{0St=FI`UA8nkPDZGh8kS8yk#wdYv%S=h1S$TXiK& z$*jmr(tBT6}VwF}AJSD}T1d*U9$v?L>qtrjitMlag9p9j;n@6=%cdMB6Q` zVbP&p)mnV>+K+Lb%bLBNX4gIS_(ov^d@;qLVG!~emd~{KB0U%{Exz5k$Jb1~upD*R zihTCb;tLnu7g~J#CRfOSAD)jE-}q6BFH_!ftcYF7_IX9ciVoHa{aI`A?Tq|2-ok~w zd}#5FAGi3jx!{&5jJWATEvwF?qpgx2U&c1!XKG?_idcuO9!Eom@ zfxN+f#W}Xk5BFCOpY^uiy}7%8Y*V`TZ{Qqz`{w55<8Ja#fBW0_?|;yix%uwTH}Eq3 z@w;#T^s67<|MiD&e*EU|?{9wiYYN-VAHMnS-`@ZA{SV*#aPya+e*9X#A3%aHVfpmJz38~a|{ z1f@1`@=cwvGkF=O5NlPyDOlP=YpfU2|9J?|I}QTUW@Uys3F;^YKm;UvVV2s#8Z#Y) zMk6eWZARV+;K3Sm)HMZD=~S}|?N3!Mm!uaTgf_P{jXDbb0nE`RKd_dAhu%J}<#(^n zU%r}mnS@J4{6VX+WkOzI+26IPpwB%2CCI|MX>F1J@we~(`2G8@Z~p$x_i$c6Wkl@X z?;n5l?r9?Y?)J@7b^Pwt?ZJp$+OXj<74-V{_4CZgJRVCB%&BN6Fg1Z*fFNEQpiq>7 ziV^EhSGU-<>=u??$GWrE>rOXdi2qOCij@5{O? zZQWJ$g0nFFu+8UX*R`@W>#oKxUR>t%ck$-?cI=$ zbyvn2tz$X!59`j!_@Mg6x`SO)sE7t6%IUT9ndGXLf#OGbDXlwbRJ9{*ZIcl$C52KG zf3@z0HW_g&I}(lx=X=-Mrh<_#{B+%E|74Q(u{GQPCMMbmwsGoYX>HX}T6q0M=;Ph| zCfd{e)x)o>`*r@^c>%t8{qXqE+LrFYwf7g*_AedxX)5lUKm6hS_ZYOBAAb77zkU1D zkKg?D>w|Iq_5It2X4xh!QTx@KyW8gg8Sx?tK*mgNDo2+X6>Z8BrW3 z!ib$rdnw4qwceAX^+XHZBn8<5)Cy$#Bn)6OM8_3H$JTnXqz<+X2y3l8#w>Fl7A^nQ zdNQR5H6aA{`p(jNB3Mc5NfwMR0sOSW{jF@HgHwFpHqbOGJNcuEBDIF!}*Y4(6*L0^Vr ziyzyVdB1gtxWj)8?n#%Hs^7o5JAZkprRwfrdiu=se`cKYzjb)&4qNhUt4H0yflf}v z`qW#>WEE-d`kYZltTv?qvfm2@(_+^)OghE7=`Ny;t)TD2IH{MZHG#$@M&McH8J)DI zqUD@7D`UW$puHSW8z+?^7S5bVp^p}hi7_sM3$>o->z~F+$33MsUq5;|vrZfEX}(@4 zi)2wHr6+Js+JiFBHicxEu#a@LHHyNR4kVVFNLo7^Ty2UNk!V90~++VL{z zxlh|ZqwI?FQM{`7>C}}rf;^54S1IOHq#gEtW=zXX3o;9B{+^VYM<;xDZr&-TBkI^) z58%_yIXIo5q7N&rBRv<|wHe&2$JAVn{Svh>)^bjVj@bw1i}F@&BfisHBa6n#L-lB9B;tTshr+CCzI z$^@m~I;LpW1uDa-q1#24aPr%h(dR`iiB{xsY3-p4OKr1NYUQ-3YHwe?4%|M}rdA}M$G zZ*N{c?h7w(@kJaMIjrc}aYs>~U z#5#>;2&RLyBCLH{AXP-b+825l7Xe~u_u&CTRWBEsBjz#B^SCKg@p57t*lEKz5#5!% zO-4bWf&`LKlQ}VtmxT+oAZ3G>6P&0$L`~Z~!p=o`MCY@Y4BMnu{)`t)dQUH>(RheZ z76h|oXU{}oJIw87{rjYwmXP(Vkfm<@K#sZk`uI@HbDcTt{M=vSCvtW+k@$4Z;b z$>JEb4YC1Am;hmcD1VvyIgG;uPblS%#3+xDVU%AK7+9M&Ws+l&U1eyoj?k40r)~(~ zYW4TJ=4Gs;7iw*OQ^YnY=FrAnxIME-Q zN^M*$v#g{H^TEYp8W&6F(cJlnj74V@Wfe-+8iTwb$RMF%+R+gLr?hVB zLdR+d=ocWLBy+uutJBqHaFV`2Bk)ZzQ;WG#v2-7Cv5boX6}fLmo6B->6`|52z0QH5 z2|H+KK*iEEE|voE0PbDUvH+$615=>A-u147b#)&gV=2QZbB8Rk_q%77DZ<7gD7rzP z=8Nw7DXvyXuewjkSf-h#_X`U&S1=a}Y%JPoi}rj));?kQdna6#<|*z*KHXQ{!EPUDd8d7Vp|pjr zJ>9I+Zo$Tau<|UzvD2PfRvAhbT|Ebt)Fj9ncbQnre3r0$u`$J!?hM(UEx~ehhEt(4D3ytX|qnNVp|%&NWkmUYhROs(P^jM3SKTWz6M$kckRL=2Z4_$ zL3ddOF3dBZl%5?#e47}jf=2`MqjpRd91S?;pc5PR32G^A68XM`*h4EwI77&xB*D=> zd9C8ym6Hu8x(LCP+UwT9#=-~R-h5B#-S z5cjtBRx66SXWyMjXwXKNY#VtFCtAvwlHRm(Y*hR}O9&idR?#PFdh&+{Jxq6S#OPiK zZ#=bfr>9o#{;8E)q5Sr#m|l0Zax;iBUWw_2d7*9$^YE@;eL+mG`>2&WPcveAn}bOU zPNR#OUjJN8k7RoH4>oes$2~l$>2+UfixVxWevvYKA^xkm0U zs_D7sYI@yOBe#3r$lb=k&T4uUz2j>&y*9(x9dnJk5{hJcII1S_`dJi$R&Mwruf!sd zXgrTN_T5EH;^_&@*7wiF^d7gz>G%8X)x#I~eQ5x{dHJ}P+7N#!)$g0zw{PA(Jg0M3 zIOJz7C78w)Wx?z@%_H-MHq2HQGNOS_yZ5~4mdl2FM6+G&w938hOYqtUTZ^I#KEgyq zO@;I}>VsQt>lPxS+6J?N?N`#%b{BrN6T^c|`fU<`-^{EC&&yEKKfY`ZMOAc^$X?6| zhAgXCLJJn>Ix0R?@F|l%Lb9uvU#{g~$SPDm73Dda`Zj}H#Vpe+i|%Ne+L7-~umx_O ze(;v~K9gW6-q7OjcSgqaK%Zg?CCCxc;@a8S%9{sW56C0+k1Z(pq9fuH@q!Sn;Bh#W zgP|%lB`1ig=;lE{%A-9kKg~;#;geT2dZkGK01BQh$TxR1M(V1QRrCzsN5<_D0q0hjrqsqvmRrGq;Q4Dvy& zYdXZb=3TgGRVcujXPuV{ z!qk(_MQ?>v7xLjzA@{U=km`y}stY`e=)@>LRZjGU*T%t~DZ7-gp|*7;)uwZ{s>xxfmU5HR^6}2rIMEocSG!AxK&uU!-wXRu6D)G`+YF#v$GJJ-%X1@r? zto<{!E=D9M8ZQ?`n3foHW@>U>eUt0z_u8S?bz}y60=4R#-hLd{ioI9l;_F-jFV2L- zMpN2CM>F##5EZ5Bb$wA+Xw=QEZ-SEKXaaIwJy6}sf0+zrp>IU8$Dc0E@=o$4Ezg10 z3}Xn9)~iFS3xW;#|3%?Ys*vF=3&c=?_Kl8-JLE*JD7$|5yNA20hc8fe-IADl`M6(F zRQiQ1UU%B-Z$E0NH8T{|NAXetH02!2l`;=@$NbKz3<*0i1@8DifJ+gz7=-ZHio zkY)uPK{4I@p@0Mr(1*fhF55i&Si5rtsi$zcxu?SA@=4)x+FkspfRwwVa5)I;XmtzI zDGKI^y``zv1G49?3;@`AP)n}gniQ5>y`}W)S zKYsV)_gYv29e@7*r$7Ek&iO-N5Cl|i{_T%%j#i(ouh1Ix6+4bW~gE=x{L|GwIJtN34ED!tQgWqy4FL zbX1Ny`4mb=>E+VV@=@vNs2p{lmX0!|Bf&d4!_u_apTk_{dnRwDy z&xV*b8PN!tKsx_7KK<8+R$xV-NDGLK1O8}*)UoKpRxJnUP<-3k!JmY|R><+daPrI3 zPAN^sEhrX=WmcpZvmk`7eO-K~oe~$jm!p|W3l|EIHsSATZ$GGh?JHfyZKDvN2wM~d ztM01ES_dQe<`o%YPnR&+W2*#(%`oIIzG$ah<}SMPfWNj%Zqrir$SJn1GBWWrE(MIX zxDDy<3r}MxiaMg)Xe5cwgujEzZi8|lE0}6!R)sQYoaHeEAEvO-mT5L&RC$ov$u;%~ z*^*g%%E@)=^R9v~ZMQ5<+-r%s(q9=C*y9#Auvv(nMN-_gVgRAS^-YDI+#Ku8pA}2 zykwN7f7&~YAfbd5i^8=yFU2dUqW2h%cQWLB)K1%YXPLlYDDSV6Or&L@YVa4brpGt> z)Q?vWTdcf2by*7Fyg6zy+9$8>-(AR>zHr$*;07Y%IRbh^(8zTna=ZBEGHZiJZ)ZD0g)CC zg|drUP8W1&J;R5VSo)~b8_8rYfR-$J_pU6LoBCU#Bz#Eg5rGO z{k7ma`mUIsF&Ja;~*<>Ibcy?iY#Wd_gOx`$b|o zU(m|weu-F4`hr$Y_eHTB*=WV1t_@ayK`W;_#B$c>W7X~>v79z|_Ni7*_lv}GKGMoD zXRVy>7m4L42EAzI6l~lvTHQ6Z9CKF70a0><*E5O$0vZNT3E0nz<#fMHE$8!MIo+X_ z!!S5%IsF&Za<0U3D%H_LET{XRmUGP2{klx|R}Wtp&AWTNd$@V|xSz>P{S%XSuirf0 zzj|IohymWe5L#2oN=pKz{lM^zJ~*aBzmq2mJ~Lfp^gxH`OOWr9SsFvd`vq{$5-vkX zhM6G@;?ne2WfVzMjtc~wB^TNeLgujchyQZ89Nivze+&cK_EQ#$q5Dm{%*$V!aDtT! zhfS6N)lHd%X+erqTe`LiGeNiY6rzP8J+sv^K;6?Q@ooe1E5<2|@wCLD0S4YK%}LXy z7bc`TPTnvejOJ&DdPaYir5_<~K)8%yC0A-GinB1fJcZy#==K59ybtKg zdAatrcM8|F%qM{}{TD-yO zC7Dnyva_Hz#d0!OhlnM#uL4B^T->&it4o(UfM5LWofFa*_i?9N_vTyw{*VfgMI+UMg+;V??o!uV39gD{pLDI+a1jeV0?L z`w}pNAxHbc-F~w zC6Iu^69@tnFQ#RV;AZVn8k7WAI8UB z{R)z)^jXrt&<0WzrjCqZj$CW-tJaIwtJx-0j3A^n zP35>igR%(H>|}Li3Kgyg#1xDIV%D|2b6tu*y5ZLTd;>T_}0TxUQsftTI{!GxY? zA+?O2$O2KgL!K!LuEmXNIJ|B$S^A$|mQLQf(#xdlpOFr0O1*_f0z^mP3>Ul;EZJSJ zSSTj_Dr}n_pe^l^9r95XjOp?KsC|Awenru}{#Rfdn(7?&$jCM8^j7E;kfRQa9qSjH z%mMvHORtEM4{9>RK}e*-#HEN&sFVP;Tj~Z4_0o7(Dzz+Ljrl7p^Sv09%xGSyqo4bQ z%#YTaYs~;#SI6t3Q9a#XJ$#{P^y<}{yPKDf`)?}~X*1qGr(2UFp}%V|(>Rm9@{J*6 z?vav*s8=ovjIRZ??GVt6Gy`rj-C7`VD*ZTT=jpi7uL5biBsY|&GA~;kc#U2AAm_>F zR%UO!2a2aV!ra2F*E0_`EQwSw?!=!weVjsFt{x?tex2mN{XQrC{1f2mP7a3 znvF!`mU<{5w7+rsVVmXN_H;-nrwlKIju;urod($&`S&%ooJRutO}_S)0{fa7mzfkx zj&0gY*X2pj;q0igd}Lj;dM7zVEv;uvX~ML#LYV~>B7-K7tcnY|_&ubva1RLyVOP+O zj&nz|LO)F&;kE#ImX{;_K(Wj)!sFZ5R}Wv9XSlz+%tn6cxS#2Z{^ipRuU_3g!;gec zNlR@IXtYg2Cr&e}^s-L6|IRf{iGM_gt#)IIqq6CCxo+TPI5k@@FInX}t0|8T$$|-K}G&MtMjxp(;v~r@(9%Tpe>9YH$idMxMDbgD|?`C`& z=JNIK{N<%#uDgR__z0r4wwxfY43zXa(5eq=809rWo*>WTXr1Bv=f}#Pl+*DX(FollwyoKsI zJ$Fqw%`vFw2vj#2FBqpSt+bQ=!tM;HG7D4Nwx^?b96PEo)z=fay3Z#M)3iT?9A&|+ zjw+CNMOLv8@?wkGnna~dbC>%-6fAJjhc;9;uC5mOPH(9o=L}sc0tb0pY@(H$PB~e{N|4d_X2O;0Q zLM!M{<(fhsiNtojb6vB(A5+-Id1{@-P2^G7O(DUwhQ3>3UiQ=oR6nosSm;gGzR~sj zNaV39!bj!Nt|1Juex&kg39WX; z?1CLt7xomrjav1es62MNg3;N2N#@Zl({6=jU8*#HXwB2*+d5{FqTRm9Jj$>SCg@oM z3TtPXM>EM%#9{WWu~#z8wn?+_DPX+ya~ zu5{Uqj4UZyt-y$&@6xqVQ8`*GyFp%5|SR zpLdi(Ecy)S#^<6_z3NjFYHPELql~wuQElF*#)Hb}QtYSMP!n2$iMlfxo!z`QJwyr- zP5vVjXE2*DAW59l7<`ZsV#uNiS+;b(?9n6xV^ho8>j?tFPc3WpjV{3B`O6Fa$Fv&U zeE#`AgWmoRG#`iIcg)W`E8kF)*Mbs;J&PwsVY@MWg#2bxr;m|e&-_ek;)zd!vTKn4 zBDaPP0y*uF12Zdf6g%wlOV7k9Z-tnw+#!D2Ts1lVb0=y!Zj4E4GQ*) z-T){lZ!vemf*TSQ4Ga2{)2nWRg7p~`94}CCxrTz>$5`;tPpm^&>Y7GmL#b2g&0HW~ z5?j}V;ujEMSL^^J?9X#T&#CdSWQLeY|_Td)K09D2iU)U)Y+zaNN&Qnm-pr8vmjY`@6sV#~--K4DB*&lkqbFK7k``te!jqxdZHCN~B;s;3ypxXF%2UI84!h~XHFx|DU?uxklNd<8V_vbG!OcdWe zJc%@X^8A<9==0_I-#J`-_vYcvn`?p!NTm&`BsMUqK>Jf8z;XuxR!e9odZ;*WTWJXwbay0Qw#;0hr)rhV+6Y0pM;1LW+wBlJ=#AxtODJ0Pb&O?qLSj+zKB{s$R~KRa>E}&5 z%@1pxrVSBwts{o?h_uKS!Y>O$ph6=B9*B3#?UTMi9gK|Dk*R_FN+`C|1&GyB9M2~1 zZf3^nsW(=xhX9VW&@?UdL9R(FYAGlfD8T8o5ve2zY^M=TaoB55i)?YQd-nZmS4Df; zY$JNLI}?bDJr!@MZ*|BTroLKg#&QEBT1Ef0}xD_xN~w zbS}NRy?cGHF!$x-ZeG28^ZNd)AOELz+W)*e(mDV3^??TvRmQdkUHNPXyPD+Y#b zN3L84IQek}m%^-WL~g@5Mn{FDWrqT^eKGGN-D8!hqQ#GLR&G%oE#qNmlJNj!NSNq{ z2&8$c!Y6q@Et+9j;xx&A%~Nbdtrckwm~wPK$^Y_ZIm~doDnu#5Hc?^bqHC+*W$zT?NSC7xm+rb(Z`{e2=6`+tsRS4J>`X#_(ej(Ws#-_N0wipa(E$N;@69sa4 zYLPju&CnN23k)>0rd5c7chkBNM)K0F)Lj|<-dNX`$}$-dCd#xZ8SHVL!bKX5f+7X| z)gj(fHFNvkN}S_1MIWXeWki8vfzh#`I|Z-Q(rNK3a+Bd7=zJ+i3P2~KsA(;WqwOb6 zND9#P*E(O^Q|F7z-IJz3-k}f|5U9FJX=BDhG48h5%gmg7hMQZtWhxd5H^rv84ug8s7zyRPxQ^(kY0Q;ndwAT(^FL`Tt2~Ah5*~D&44K!su&_7BT^KK*+9B z2rQ?QwFc1aaEf_7S`(gcWelpDcBVNTnp(OX=`{Am6E7{3>)P!cbQuHhyKkeSGKdhM z8uW{9z8fvfcIY)_GB->`L#iZ~+V#1KHx<8M(=@)D9#Y!-Ma;-HI9k`>V?TA^rzy1Gl_ zyUZ(`tlcT5An*FQ;e0pGdHGBV4dH-B)Y2)YzYyR4=Iw9%es}fo%R?A?`0lBd`%A~Y zs7CQm&t(kO4sX8tI|%LJnWU(lLUBtdJ!DFmUCabsZ1k?ep3$CA06|;M_fsGC*i&gh z#lv*aOh`+m>;9#YF?(Y4v+Xbw@fzDZP3xmlO94@s0GYu&?_`=W1_u*cY45kB~beY5GY4 zLTg{p58x^)0OPeJ?CJFC>fuY0uy0@8-MoC<&HDBKqX_EHU;pu&Z)E^})Z-t1`rG^O z|14YZ?SI@T{5-)Y zkri|V$XYwpj1-n^2}W2r?gXr|Li>QwSyqhIw?txL)M6q~n$B<1wd^7^Ex~M|kBSTw zcvr+dqg+!H~d$@*nII_2axy?MW zqKe;fTE`!|4SXS0qaWWN;`IvCe=43KiXxlCz)Q^4c^i3+@N`=&@VrYlj zUGJDC8p5<}MualJ-ulh~*C&RaStp_Ei>(1-U^G`&jt#p`3uOSgppD5{Eh)bQ-HW6k zzDGQk!nCkecWMHea%S>hyFNBOiwix|a@!WpfBw~1ZB^Z4K~()K|4!Y`bYo>U6EP#G z%OO|SHQzRcp)}$E|4Y&dt!de`Jhbx>LfHcx0jAT>wo@MMMzI9dT-u;y1_ZNp!ab6j zyY9N~pMy;(_bC+GZ?&DqZahYEQT$Tus1wJ6kP@e_RF^@wKr4>U>*8EL?^aKqW>BC} zxIe8lpp|VR_ojOxqcp=RqKm8F4AI#sPP-6|fcPdCFZeqz{i@GlJ2_T;#v(K}fo+lS z*%VOe(yc}NzzGDb>7{Wr#Y-6JkckV5c3CKX6N+H8AT-G} z)96O2nL&@d8K(_f$VV*DC6NpCT9h8OR}4QqJSs$=;Rf1%|*bo zjFT=-gdb2*ks>S_20pFdIv3Ndc(v73u8E94zz$jm2c~=dn6;D z`fWxyGEUBqGYTdRcj6f%vaHBs`wsO;qy$>=7D_xt<8zHZp9HGBi_d{)Z;r~zRA5l+ z>T~3&YvhLn^4!}K=eRBoYSS{Okv@k$$vcH5MA?&WAJDa+d`nYDrf4!wW~(~6bnrsK zz>iMN!uXLcnbX5kk^55|vB2EKbY(0RH3Pwh-p_KF$2^42Ot0Shl9%xy7gcyLQD@g_ zLq(?5W)Wc7WzDjp6v|X>3bF#<3j?(|RRqZCS2_Nx3euy_p;+&SJW4IK^=rH8ct{^38(ueWzEktm@; z^|@!iNTT$Izy0dn|0x!w_FmUj%trA~8m0$m1UQy!K+mEU)YP>!g$o&z(kqTFp))d< zB}@TJZu>JErW=Kb@yWG~akek5_$(U;)Xb*+0f6B48Luu_R)w6k#HE#~8Oy5uR{d6| z5agBV(WjZA-+UQ8On_utx7sm!)$}zsXL|bgO~0Vlcv`9~a35AJ$RrctqPK&CqQh$! zz`jrS&eI4~&m>Tcr(R$(1Nc4+NiWf@qjs30g9uxI7c_A)IbAPn;Xxe=1?4Z6r_s-z z$_iBQ~%!etO zC*(@*d55P?;LL}_#c03N!Rr6-~H)3#Zo^h+-+ZuIn7JtyWO3Yq3>P^ zDYQIGn#*s$x_$NP?Z-0%bU(~mGM<>IC#gZlD-BWff6%?&lbFmibC=BjEmMMcp%au^ z8Y_Sm7T%aS&J<$Hsn^0o8k~tp;-geE@+ytq0PU;34I=gO_x6? z54Q)t(dQvn=SII)!94h~=~t@A%a%60QDjD^feD4YBG*96GOr#Mb`Y(SMt;h5O|xpO zS^)hnur0ru>MT^NWos0DXfx;z#{>j#T8HQsz`d-%s&sUpC`MZ*`9XtS&QN>HN4Vns z1ou;;nI}Ne=N*Nx`~;d>i3J=}DvO_JIe_!i^@A>RqfOiBa$efR5(%xDoTMN_V`xnb zm3Q=EFL3=P#fu6A1i=t}8rKy?x@Av>;X-3)MfP;$Agia(F!wHN$4w-E7jla(Y;$Z% zVJ$GBtSmz|Z@SK~Ga|lrr59EqpwcBa#Hd2%_0S9JBT27}XHtl&+ehoVcffyZ7?MKT zSf{SwDOC5Q7A8oetveDPr)f&$xSLv-ezUhQaF|h=PeS(nVnga?fIx0SVRWUB^O_3A z4O6?oa^Hl)v>#=?PP&e|p9bdEHo2+D4%*ICC&dsH#+^2ForYA?8c_+;1*C^~SrPkAAH!FVwdZd-4qxr6sQfouai8GVo}F#G~D_j4Oswm%R^U+GLZOA;*4T7(goB}}(Bgp`R?9SL+c&0XMWMoF`jzgpZR!Y6q97^_ z1MPCOE6|47g6EB~V#aVHvB5rWczCU-u01XCG<|Hn!K7OXM=0?&!kUaaY2B46A}mG% z4^(-jIU0Wb_Uhpanxn7oF6?JtI_~EN1O96Yq;KUpUSFdvMFj%QQ$VGNxQ2v!L0jxiEFYVJArekq;h~6UC84kq)=f)fQI#SCPhd5+;=sMZdK4f zD;9ud5>maRQLLP7gnYl>wFuiZf>-Qzl}lG3Qc!PJ;JbMGTzZA2EutYiwwKzt`+{YZ z)aA(uM$a=`C)Mpk=on*Zx%3#876E8Y%o9Afuu|x=6vdh+!A$xcpGP#IJ96o%ky0%A zqjuEZ49hxA3Q19wQ@|MM>eR;7=Z1VR#ZlN^n{sbVwK zWz2Mv@=Itx_H$Sy4Lm5g`|HM z*s_BYE(sguDy?37q(%P}pj@K>{MwGg`(it=m&T z(asC2Y$xCgQwxC>hlP;3Op`6lt^i*;2${VAkARn_dB(L)XbMjdW4m4Og_XYw;0Ku? z*xlG;(6>#UoYlz8f}h8k;Vp&4Q`I>wG<>I-rlWCFbgCt6m`q&l;v3poAQ}CsLnQ zxIG#V@)?w@y`a;MGLMCX={Y75xId*lAwPHlC3O#gl02`BM4Tl|VXg{7N{WdZFsTA2 z-8j#yKafcjA}wY*kVzr{A5NicGD{m{Zu*(d1&VXh6hp-Mp=4drFHMX^4kNi#MSU>r zC=3z8RD^XP6Ki*QBa<4_t$>L^xx-m(O>W4fevC}yJV7S;Kqd{CWEkVjFl}8iao^Xh z3o+_?_$>@_XS6s3y3R&>Ad`JuH-Sd9N49;kSZ*ObWN#He(sK$b38O%kZmcXO<0%Hd zhk5E9LJV*Kl-isuEGV+Mof9fS8)A+&py{mZgy{L|`o^m(lyRc3CK(iA040L7CDA{w zs5kq5+U@4NixE^Zfl53JmQOxcn5dmYJi@N0rRhxcG%R|gD#@Mq{TY>1l51Po<&f6x z36)g(mnOmh#jA=O2#KcM2vBsg1B$qZWgLdVjA`(ZZs%1egp9kZ>i`Vtq4)$xZ6^z7 zO9f<%U8%KUjI>roH0;KDat9lN(fcJC`V~PSw12Jkz_kX$^83fDhc9R_+`s*x6a9tb zKI!232h$n zlT7M{1d?82tB`VlA1THt94xvV3ql$vtyuIN;JcN*>0R{w(0!B*Ig%mkQ!>P#dgivZ z%8=pykPK-eYJI0myv4kFno)&Ridoa9n29V&+U9zl4Dm-YM1c;&S1ta$WJ59?T1PIV z2&n6=;n}?8LWDb@++P~;iO`Ss3;b4PghM0DHaPtlmYrRnb6ZJ<^x744L2AW^3SCf3 zhR6rVQ!ia3!_yUQVP0NlV%exS6uJQmrAGTxpAn31eQSe(6sB&3A?73gIAn~MBN;Lt z$&m4!3>kF|Nr1W0c1$Y*@JN1Sc83r&*^nlKV^fn+_r9iUx~l2d@2(!cKv#AD`qjhD z%g6l;hsr-dUiIqD!?X4?8bxvJ2xS(#q5Pg@vE;IIZXINngesKIZ1a2)7+?rU&UBQY zrHBuk4Wsi>0ag~of?`FcZ-awS`}S6w}V6trzST0^wq8AFWL)8rFIM9~@n zP#kmc9_pzGeab?!rD6<0W#oWr=lc>ZIrQAmR#ud~(i+dn-G?GB--YhvG(8ul_OkkWe~hPAEvsS&wb=#Q{whGAo9nmr7#54AQr zU)nxnip=?6=zNzGOFnEVhNSB|Z#X`@8dFhgI)UH4wW8UZ5$WICx$AkRDb|Z31LeI<4^whM@^d^1w zb(Xc)xr6WK$ze1cqbSX%O3Ut=+lNGtHF$5bqM zgXuKq;lx~s&JCZX4S5zqSjfz5LYdlAdk7E-(+K49Szzp7Xehgadf()P7VCW8yMb{K z*?0x3>>O}CQ-6>%)FdD&M4gh|(IjLT#OtytoOMwF zPk_rQ58Lu=BW(cyxP-ltGoZxlK5#QAHt&k!A^BDXtlAH~9Z_jjIDV)f2y~@@AUNa< zO!_w$Z4UQ#`UdUD#Id+OdriAG;pXxju%e9H8dGN z{nhI#{0rC*+1GUxKI@VK8B6iGGB}k@p>%A<(6_eTx>I6XR@0;}p^pcKLu|JReRO0N zM;G@EozH#R$593gi;mgU4HkGaixs?)tD*0D8(g0HSqR>YopEa}2(j6nW?3+v@E8+O zKn!<9`3EoXvaO5O`YKm9F4}_j%=!1!_gn?^@<>h|sdKu46}T}wmAyjFsc9Ti91!~J zj_u;i>ijCN8Yp??efdE6cl110A@spen=_X&8AMDKv7BJJs|xxzm$YeZDK=`i7}}(3 zUm@IGcYiXcg)nln)6fbZUF&d8-uAM>bR5d7l0}q@TC`b~HO{0WS>8f+GB)9g$fU#T zXq|_uy{#W5V8whzWHKTuxzkN98)tMO^onq=j3L`D3aPGo2lCVk0AcG?Xtvwy>I?sr z_K1PGK28et@>;+x$dl(bJf9U2u3?hbDuq!xfsuv&h<=^tIr(dn-&482diVm#@7?2t zw&zR7y*P0A>+Swm{m;|<>S@nuezRSE@HAxANHev_W{CE*t=cmv zwpSWG&%iA21Bq0c#e1Y7^VSxZ3wfAuMK@na3{8MJNoDd#4jd3#TILa9;DB zS(g#<`nKrHe&r*cCI-C|vT+B?<+7fdi}0=Qx+}@-3++DU05I+VkWH&(h2m)HED|=Eg6kIwD4>55fQ;NbCMIFWd@CEDZ-+Nm4_{Ebq2_z@@^N3_SNX+4H;-@MynXnDLZu()1=+Y@qNQZi zH=X(<)7wKXCInNW>@#^6eKt5?b4XhU(w=pY3`8m0o;Eu82rW%9h?&vbur{U|c_$gK zEu;3QPzQC%Eo*7%AUIrMg-tV1shl#e?n|VcJkpZEd>%7pg)uU1geCNyVCT3m^q2!ryPNWTRMi|cB)xRQ~lfM+S;l!g?=t%fAkxefQjvUy5Q#67kJL%V!9^m5%oz6 ze5$>0ds3`L7jZ1bQ@WsccjT26SkP^(g^o_8ENBs&f5wFIUV5L>nQ>1F!64Jt)}zNG_B+kJ2cwDrn4z;5cFQ{AvV3vI7MNoD z&N44K30xE#*1T51sJ;mhuexZppHI-Iz`GctJUTIn(`Sdpzs?GWMy*+3#wMg<6l-Yl z=*Gt_DSnn$P;9rYTU87v-(*b_vVq?v%2~r~P6#E)%bnQ-Rk%$XX)wrBg5b)9JVhZN zod_`aOxC-uk*CPqlj%^51UC+Z6Kf|4Z zP`m$(C}S^FBn$tbFjw<7G z?vyiiO1GLkM7>&$v@kt>_^rMvxW1=1$pI3yM_CX@@(-y`bdPeM!n|MaruwdF79kyr8ADD@tD7 zi&9=Ra=)PD)qO$A%QY#lPnEouYbCGlV<|6tE#>tEC9iU3Na?DU-4~?18cWi1C9m{M z$*Z#;OL_UTlox%k%yu72UiEWIUhBiZo_=$8{_;}a)BWpn-_s}0|0Hhur~8{;zq@@l z(j%1RblZ+$0eU93#@8uhT$)aqm#=AUgSJUlFb;ttCEqeq1$9o}v{8^dkz)V|o0i0f z=CDqrN`x02UHT!{lOdhDJ4GbgsJcYtzR3&p@Qi4W(uOmkP?Z&$+eW{G-q1oL#0pOy zwCr+bbkxwQNPkspKWqvsjq29xF2g=WrWZvH<_5WuBPV7~ogyrx#pO3~^?Jy1XsR7@ zoM?YRbHC>ED;qQ(DD34;xUY+f0uXu8RS<&8+EJMrWnyttt=z)Ew{rIKVYX!#%c0^j zl8~qCKN~#>Gb~ zt0a?rj?`wwF=ZPRjVJ^i>(YH7Pab9J4ecDHJmrk@MVdl*RJ%Vy0G?5Ck?HWV$7^T# zxE8u0!J|rvT)`9blmP@WCX(`tK+ZB0Mu5obHA$E3`v_P1>S2FhrZy1@<7W%r4xtLl zkzgmSiZ&W@t?J^srXEXu&Fk%+3025GB!+hos-Rn^%74hQ$=||D7j*`m{DthcE(*ac zUDdMNrmpcxm?9-;u@^Y|!-}ShIW%4RR8HL#VfKJs53AsX6@`_B24E-^sBAe`28x>$ zt9-mAb2vf`zV@B4G*3tW^65eW?>w`_tZvfWdDM!Oldp>_w^QrQ~W zQpVfnGh}H>1bWw9aWnap6|O=Qh9fEo3MoCs6v6U<7|5c7v#&Mn!&u6khNR%#t*`>g zQe(zaA5JoxHlSj_tdyYscCawHq4j#`b5yy|wAMx_Ez~2_B?A}Ts#`GWCQa!oxjy{s zba(aeh2;AE>(`GrFCTZ)fB*F#Abr(p{+Dmx|NZN~{_qn$`0xMao4@}3{r5lq^C|a- z+xv%i&lWf=V7|z18;6O4OoY zb}}JIsA#Ujkt642L+$(ts>_}Z(n2`YB*xL!V|=9#8@vX(vx|Jr>KgCn78N-4+o?|7 z2*qvij=lwEP=>-{u-k3}Z4o_V7lg%+b?P(ST%(qbP^ zLVU4;%siYQWv2IJBX*D}45(u-6eShBM1&D?zl0quC>t$B$3EFLuRb;zh)CHXM&) zklwCMZ$_`HkWPqtP&AYW8QdTgB@;9Ft3BHL`!`n)U(y4)eRp^B@^L>)m-bKA#NOW1 zuyM6PNhRrpE5m&#_EZT zzI8F`t;TU*_YLJ_@`idABcBS*6!e>suKx&)#taRP3zL!IfT7KF0wqb0j9iU2i9zgM zfAu~Bbhwr?MO$tZZHkF5n&d*OFst-W6m0|K;c_Q>xzC^26s@j=}MM8 zbytey^M<=-uv#c=uop%0;ZP)>9mADpMe+t*yXT7J&~Y-hD;s&CX!D;_ByS9DU887o zu2nvRu8gq2(r8>pnMA!-zUqs4Lc>xv?=7GDZ`6NXuLL_cjc zGi`H}CHKJHmDgrWWwon}?9RlUY**1~YbD9Hoi1tFTXS!J6W?Av{AyVGU*COD>Uenf z*rHK{1n({#Cto`53u)Qm+pquh-QWKGo3Fpszx0y+;p@Nt_>KJS^BK3h+s8NW&SPzN z53l~m8%W~@Gu-_8S9g!EZ}pAv)6Kg#506JA`}+0$tB1CsfB)w0@hdpFUp>p|dT6mj zZaLjJZ!_s@!FsuXpomVWFz--N_x)Ug!W!YgsC62h%xKy?8ZOgJg-T$GwpD63CXfL^ z3?yok3)Q)-Fq*uY?mkrt`R-2tqB+|rSeXvC#xY$DMS-@5YvjuCO(!=hv~D^- zStm{UI4cZ-T~MC0xY?Ye*gAVAOl1d5fjZp8Hi9n4P>Wu~6h(#;GIH=jE5J0iO|+X_ zwfBe;Asc{xcC70X7~VtV0_F@Fwa|k%LYE3WVfBb;?j`}??CJDL+Mq@e&Y(Rm%o%28 zlanwCN}K}w1wsU7?Uxf&Ns0mDDx{hetlM~a+6AXM2 z3$8nm*2Z3iB-p$lrqgYZKx(&Jd(0nY-OxrwT)9@we$p;ZrT{rHq&TY;(~H#RkSdT zQHwUO-15}g)E3zotvlC-CL_*R_c=4q#8~s%=B9Nm1r#Bio8S;`x!W(LZo3Qbb!_c6 zpX6?JZFD7OQnx~rR*o=?GmXFk`<-rrfXe7~6P|Lnf@68C^ps8u9Uh4`zt5#^yWK+o zf&8HG+*R%tva4!_wb5Q{dFj>4)7*49Xs-pxJSSwC$)-sq3oJ&+t#-zJQa{k_jRcR} zpf1+IdkqJDKPpg~;ekBq`E~y+X-@@aeww@G%g`bEBs*%DQt)YYBgJ!biYjQ1X-IG&7$BdBq38@BEH@#R@z3rOJ{L~d1a1)JRH7Rj?ONA zNR6L5Ta<6bK@;}LK+8EHtp%pdK2j3dYjIrCGP;sR}GSF9=fbiHfO4;&j zk*T)1i!-DE@}BxNtN^7zTECdO`c6>?5=4vz2oAtqUC<{G)Y7^o3|zwocVV~6NFp|+ zPYZE~*`XLivyS1(ahnZ_;iGGeRz2>Xd=J0UgD$5X0vcEkXWal#%`W#78jjlKwMm1? zj_Z}TQ)q-BTAwj7q@241$B(6*175)1mDDu-vO@R9T%hFy^QD|G^g+3m^KG59sI0KF z)g4>4$u7=yyZiO;?p|Fze8vlO`{wn#*KK&b@vz?CU1YGnaNN)2V21bKfBnbz-~I62 z_doq`^M~*L@`tbg_|2hWB8>gK|Jd0Xy@GvC5Tu^69hXH*MPB8ENR064WMb^y5E=t^A|G5owme!K$*#gzXPPj% z;W#X_7KJWl9>#TT`i8K?Wit7xcwJz*IZEC1h}ES@GA0O6J+f{jdGc<1w5=|dXUK8= zV0j{QLUKl@C$caE;Ve{!BZ8f%=GsjVa%xIH%&cl9_1hxI)`w-@n;@lW>Pmf28@)Lp zv_0#c4h9EuzDCEboDv9H*2C%Ge3BtTFPu)A1Lg49X{A08l@Bb`|yj(4jBd6 zvAbks^v(v>z&&lzlqESh^h@iwkU4_wrb1^Tqd36KFj>EMXwC_vXul1%Vt-uRHk3pw zfs5i)x;1e;&^{%2kMvA%RG${IY zmPZZKY3;jRR!MeU*DTb-CXvG>kBo>5`p2>-LL1Yes%}p5aIN=KpI32Y6Z^J=;hRDb zeew%^Ycwn~wVS>+jpt_^%ik ze;SAS{{8>^(>LG0|I^K%A>jItzyA2|?|;yS`tHv+Z*TL>_uu?MTkS7je~W0)Pk;U9 z$2J!5AK!oT$Dh7!M9Ba4{WnjnT(94~x_xskZ~tMGT>A=5;~--x6N+OH z%Cg6Lq-vXJrG?h_Aa)s1Bt10lsgJcq-b+{Fha*f^`!zQH$?8~#@3&Bh!8YI z-f@~bYC&?d27<=W=PBkx`m)A-{#4^$L2B1T?w@Pi_f6xTRwrj*kv1{}JyjiO zIP_jn>bG)8r`rxeIr_GC469QlN_5kI(731nw@0m(gz=&^McGH|bhe!kj6yG-Amh}p zS}*dLsma{;P3GP=nfr-mV%D@=KB~Vmu|j%1XhoR%gW&zYzLvGQzk2x9<2L^OY2UxP zzrTNYX#4&h#f=LO=a-KAIam6eDDhA46{W(J`1gZ|6EfaL&O5-G`_=7(&fp_mFj=!X z3(PsQAL>B+3+fOZG@A1>CZjb(N0Tnys&XN@sY7fV>JZ6=$a&8 zP3>@N>JZxXs6!Yb%a4V^fP82sq7KoWmBI=w_$Y-{hB`h`hX|ilhv+^ig-sWA2wi2x zHd?X1@jvHq8v8~mN|*N1gu+TcB${&0vJe7~n;*<{mW7}rD5kVFp)m6#6ebiNcixwF zXo!9uXS=>Rh<@@gZx<~Hxu16jEzmtu5U*d~eD2vlLkrYcf$|^!{hR;qyC0qrM*mIN z?)@cm^7wF}*4Mkfe$`SV_wQc6JGf%o3tcyCjx%&0tpiNx>!jG6gtx5bK5jCW5iVR^ z7Fvh{Q(_-lh`R{^b)gM~n`X;xOzc|F*C=>}g`#H;1Vzdw=xcNv6hC*2X}2-4`ZOkn zkXw-JC}5d3JG;~~YcgXqvb%UM=yJM+VwSnghzWrza*B)JqfmX2?cJ8sLZYk~hOX%l zi^4*U4Y`Y$CD~rZX$AqBglM)t zmRY8iZU{gNvJ(y-Pey@TONa3MR{Q1Pu9Z=$m;QT2UE6vFEhux-j8f826`Z#nWNRE~ z`~$WWU`wRs@!ZqV_Db2@ksK)8Y}Q2Hy3 zMIrBiE!0}&(*gQRZLp<5g)xk&QwR<0B!PY;k#ukI96_(CoHCX1oXT}MXQ zggQpoH@Sp{S`l7v@R0ceQ5tDPI>$0?&{$Sq0Zgg+q;{Wk9&z2`sd=7b@*+1^$HHn z`!~;sg!L(O-GYx>4gQD{gmrthL)h0MCv+c;D= zo;GuuWMqvm`$6td%QOsfR&yhFFen}nx6Y{C#WT4>?_fsTj9t?~?oihyF3>!Kj}%~{ zaTuWc)ehJ;ZSN{__W`>cfQUgGGsIaOP6>;UqVx@IiYhbb zHm%!H^#N-bbvJVVxR@DbF-9qO5LiJ&+st?;*UR58g@tbRovJd4- z^#N2XblXE}YKuv~F0RpGQ0D%q`e2TFR0;<|i#&P9lNYKFO%ZN=OZ8zgw9=2rJ|tZ< z^r+@|RDFmSst+^rP?xF?IBB%Pl>(Kv9S1))*b^1R$pjpSW}v%znU|!?l6Tbyx2ryk zY3s=&o3rdg?lO8Fc2|AK%$lsaV%kr`tPkq^QT4%{RUbx!?1KX4=z1y>b{l&AmTC}v z)S}XYr2+V)`cMR_6@c$2N+Uk*mgIn$KTv68%h!8g`;$=A<6ko&%MW|?lEp!4Y{=4APC#b{Yo^P*paDm45L4TuP&mZes zYw2nfyb`Y(u$ZhS*b3I$hS{Lv(89b;yFd1=!;eruKL{DOeSb)MnxMN~LU=lU`8sP0 zH0S&La`U*CvG1$lSw+BaJpXSfO=t1}KmYL$fBo~%KYbuO_>&OtRRw#$(H|dAMeN(B ze|p(fSRZs=KUYSk?b?5>gY@p8> zgge^FETi!3B-*2ULz56|MMNmiwouTnmpQEBH5fkA#=%X^WDvxTygw|{Cg7c*z?oQ~ zqakBPzF>ltYTj0dHzR1;oH_vn+e<~{27Mq@oavm(Oj&Eu*1;oN7sNm-JZ20e1$6iV ztv4|?ufO0h95W)p11piq^l9wXi`>qFBUYG?Ym zNN)#Jk~~hv!?FyR$Mk_Y7pF+912M1LR1+u3bUL7r%M02Pf)&j6ZWN^urbw~%v!K9= zEeK9)Gvl(%a<|Cid*cxUoDj$vg#lfh6=)W$KnqnAmu#eD?XgU%4k(xzbsn8HB5cMV zdFg0Lr#DkXJXTyYF@4-svE6mm`^RB!33yQG6NDl4eKzz2>3mht7W-Kb;shN+5^*`? zNoVf?DXIyz>pUTzxh&&=CUMlJ=MOZHwS~NhMnG}KMn?&V|956MW=O@ax#Gt#B}a=DS)p-K)zes|)^>xXal2s=Z~ixzMpYS;CAp zOM5M2w-a;I>-C~}}5H4#R1hEkQ$oiLP^*Fl$Fk)EIu1X81J zxGixQ#a9$_g?0ss*NE5_v)fq53RUIRtU{1M(3&HG+M+P-UQ`}e^m6f_V}x||BDwm} z4&{|fRP_YYBKHXv)Du{m{lYO<=MZ(3b=J7K5D_P>53%RQY1_=Mjs!)sbPIBpdJab# z*&oVp4D$*TwH_mNu`Ges2?urWH+{a*;*b=3BN{QZOArwh<6tg`$@AVFKxQs2n$FP+z|x^`C;s62 zxzp{(6b+?H>aHZ#xcDR&N*7z`#-s>=q-9)YBzbfP^EBx^ zBLgC|otRw11qe0x<*-(XF-0S~ct-8ZzS-=YE6~q2V$dP%qYa2)d^fFCH?u){92Fu{ zw3zAn%z#S~sMhLm7{W-CSb@fkXf)IJgx0ZEIG#}YL&;f4oj#{UGzs#Bygm(TAyD4I4!{uAXR%~q8 zaOv6@_*>Cj9{V*>-k#_qawB~}u4_CUDEc(5L0wUiA?m8>_(8a(}={Sk#aS1M67ah1Vl?QntILn}DD z;-?w}4Kodn`r%vHTIlj-`PXjg=rMGBfNOEJF7B)UqdER<-wMZQ6|9YZO)i*gw|TBQ z1gYEbHjH#{W{fYorDO=S%?4~0^7f%Lm<2`PW?%Upm`M{SOJA? z^;#S;5AD;eaB0J!2#r<^(gS9kTWT(J#wn&}ub?jWo7e6vJ&-<=9`Hx$0dvlj3u-C| z=K*<|b`#Q0*U|$vS4+W8`(Gpv_wLqA#bRx!KSeZirh(4P?Q{dz!|qyi{_p-z9m5Pl zq+%oru7^u=t~}pfJbcHT>*nrkIQym7eHJ`_wF{Si%+2E!!%JA5i4V0j&e-9krL@xB zs9>l2ETBjC5!Q~5ykcU&u}JJzA?7AaZ0T>%W#Jb;i!i-pgZ+ z7O|lHY+;uACs^`hLAOcwoyN?>$dIDQBo3(1P3c)+oE_7yX7cA`chekb)Jl7@dtdH7 zu8~4WS|70{?({3k{`Dl3O`RF-DhH)g=kxOSEdLfgfT^E_iUv;kbeHJ6*F(EW|I?DM6(G=$UI=prBKe5 z1dMsF*Io%WJv~2MJbcfM>E^7w@uk=OjnetAm2bL#c(|I2a)O>5&9#kLS5%>pc2ix} z-QE@xrIwYtata2FE>dQmzc|x~00j(RbO5>Gpkr#SrFN%Kq!m7aqFbFP$jDua7fiHU z_g$W9t(_@_B!05NPw)k^bHauTxrBD~TM&-w*8)l91iQ^%;pQEOWtB9&P?Y0j)$KcMzR`)(1h5kp@|H*a*SdHpuw zS(>Z!EyOth#y9{C^ zt(kGQ%}K~>Y5En`l2P|9NvLo{E|RH>wKPMG3Q>D8Gk+soafn8TI$kWe*NPIgsICc! zwZijh+-hT434?B?NY;dI0y$W^ebY7;!>Cwa-PB8-^wJ=1(RduEC+u@maIW@RA+RE1 zCh##Xi>pfct!YnoCI9kpfBf>!*#6DU?^0~b_C3{`DQ`vU@m2uK0!myHCbpVU8*txhWZMI#7afJE^48F3k|U% zFI1UKca~+Ml!=;b3mQVXZ>nf$suMyWE*k1^uGv+Y{FwBc!>-CS+8r5@4*OJ;Nho?p zM!n+jq^&l&sHt6L~uckNa00S(HjLtp@CQgMrm~)?aX+6 z|B8loVD#qQH%9<<>2Cb=yN8R1@3i@DhSS1szWVcbzkrK=`0#H(|EPuh z)rBJcMGF1bx*b10-aj7Qj?W_VOA@cA4x;P6R{uP)zgBEh_cE_T-)%Z1rhz3FX)VU3 zqea8cn>_5z91~tSWJ5#gYcogEjR-Sx6t6d8^*cnxzMfXpNrZ$nD0wNwJ`gn$79rmf zR}$jwS_`2qBmez*9`f;Fytj8355NB1HVyd{K%O2S?{;n9O1E!MB>qdU`x~k1-~IK6 zpMUyB-~RXSzWMITw&LdQ_Mw`D>{ZakII1fxE>3tdp|L1hZAZOI7|bpx z47pG%83-(;Hf5Yw=^w#r>>y(9=r@=LGDl-w7I<0cQX#6M<&*W$%}A^0V zbtl~&MQVj?ziI*b(jD+r#6LGRg6%7HbS>t0qNtuRkDHoOg(MLMQ0qhISQiB3tGe@!)H1w+XE_FBrPU%uE}v>SlsLM#L}cr zpX+KzQSLl~!);)oucOsN=%ytAby_AfX0Tn$C|c`G*9=t}RL7T&SR4-BKv(qI#+J{B zZlDYm?J{FdiFzhn)~euD zuJZJ*=IOn7Ue}GG#~eG-YNeAoqYRDgZ0yF@DKKuWowGptily#KkI-B0nPwB9>#Nq9 zw$W!(U^P$A6j<}d6qrSKLW@mX+0q6Sv`At)r|Cl@5Gc+&HPLOP>6@CSpIu;*&LQF* z4^bcH*j)O#g4bI^U|xqtvza;s7TZjc+0P`WX@7Th2yF24>k!y3;DvvTWeAL6ZsXc! z2>m_;hOCPdp(Ns@K9SWoN!2@h90HrDZeiIP z%FGq7LtyA&^ zAl`p*8bla2#Th3am9$_{mY~xmp;YIn1km?LoiE^ys-SL|3G+;420IUEZVHpn1Kqyb zfqondjzDXQOPA2=UfryvDo%uww81!V(XCM!)2-QhN7Knf1ae`;k9}TUaP2Dcyohjx zLI(vdlzKZx+=swk^lmYfS2S>O6*ShyD%F;w6OHe%o}?Z|{@pE>K}YRPqvJ2NzJ!{U z*X97W(wU~1UfUW1Axw7!(JwT=APfkqqaMMKB6B|xBLjd~P34cTt(tdDe0sci_)e?l z?aTemhxcDcW5QQI>gf4Opz7Q2{`4pC)jRE*%ep-LBkh|vA77rY23Kl5zhl~1cXHLv zOoL9asuhO0c#dlhEQd`o4z(iR>IH#r0JGM%fa8A@$n?sVh{ol170Ky96{fJ1x?`qe zie*F>o_4>&*}-F9Omb@~OsjZ{4wmi!XAvc2tN5(DIR%{@vR6tPh%>{u_?#7{ z-da(`R7KAf9)-cJScG^pnY6xW-Eg4RxE2?|iaTP1K>jJ=t8^ftPJ=fo=)3EM{2*tL)6N zi`AMyl}PO9M>s^YjQYTsfp^&ahDNkPEDSMl3vMvcA_;BBxhADAB%u}hrU_%pVZ?N8 znGh-x3(IAkk3HQ+G;CO1;};HkT}DF4*x?QwY4zztr=wrL4s8;x1Wzky9n~Srh+x0= zxDe}+8dS8*Ju~~JBNEjbMP)^E!NlCRS!biU&` ze@r+Fr!Qi>$hD3Fe>T^pZ0bnZcrg-&2zp-0CmegL^+|?QUFfW*Q!aMt*jp{=hf#%K z>v}N~cIvGzf?yLCs^c`y7kYUXaX>ekQHW#l{bg@;7_lAq6Jh~-Z#6dQcC<)*Mc3(| z6kGtYwkwmc^j7N#*?e+mjXb&wW`FFh*6v^^p%(^nN+ zj29zeh&nLiJB_{JgJ82TS$zOh?TV+fTDY`~)^7p{0(_kharATp?w!@ls@KkH8<2b- znZCeAgU)JCXEnN&D3YW>zFZPy#c4U3G61mdqnKU zyvzh^}IxPiPn44hgsL*^7#E- zxxIM!&hcC4cHV#8XW6{J?_5>XxVbXU6Q08SY1iBw1(RE(G?Na4jj;m3??}_T78h0R zfEr<9&QVm+=(!{uYVAlzuoxOLa=BXMMpuT3Vi2kuxFYFpMqrTcE)#nOyhlxNt}dWs z+)%5JDIL~jIp9jW=4BH*_0=Jg?1}5Og`w`w44u`fH!_hyo1hl(I_jWc$4;^5jdyAH zBhZ<1w#;dC_>8ll1YQcW*Pn`TZNC(O`KiGvaDw)2Eo~WxM(4GTUQtLb>|m#f(Ihjb zIkYiRUDVk#TxSEd(7N1((1><6$IUxdV}h2Vq|uSsvBuA8mor)X*dn5g($IqVMX9Mc z8z!>tr5dfFNo(e^>B2T*NB|UOIT`2)AO>ynjeY>2bu9-$jK!GahH8jbrRgncenAkO z#vGchNWvJ0`cviwZwP9naZf;Txq5tb6-efg&BBn})N1!l)9jGFEQpjR+|-v9r&iPq z1U{RkH0Zbt1W`q)srDsn3C&iJi$zd#f~Tz!o~GX%5$68zJ+XrOoAcKA!s|ZU8h?j8 zfw&&3ZK3wI@q&7`{LzBxHV;a^*ovBdoIfDRjImWi%jY)^+@r*n#|x2eaJIPy5qb+0pOThl?u zo~_zgmTvVpRS!dP$O-8J)_JMgSf*dm+@sO#jkGt~SlX+2{mj*6?Wm2l?%G(!BaWqY zeIbrjwXyuDZ*ruI#PgRvUjxwJ9rM5}0dC00Kk1AF#vjRI7M* zBe>MX%0n?l=hTHT)>#)T_rtD>wJNfQQMh0lgEkay1mcA0pqOR!UR|=?p50zgW(4bU z>yc z43@$LJz(0CZXx|;yKKVN7p{O^90lkosS0{e^q2}d?BkxZLJ%Vsffhh#*B=yB`a zp%u8hSgX^N*DNaO&|1Q;1-s6eo5}2UfJ++b`NB*c?OSB^v|8riuw`9GjC+xp8aB|L z&H{mfZQ9I+D$lZ12FD1qwmi0g`Wbq!mVSXcX}}a$w$nh$lw~_5ea~p!icu7f0FjT< z@9>I&qgn9kpxso>ueW?L^Vut!kEtt$nNNm2i)TDY7aF(hSy8~XwR}5a1CRxGbfO9A z4mi#9Rnbbs$NG!H{qItLck%F@!u{>b!_$ZNU-u6?Exp{_T?vFw__c}d`ppfH^s<}y z(&~ZIq+bWC@Q`W19$dZt3!E#Z$YO$NCBD^^u@OG&-G=-{Zilusg0_ukW^A2lGAVi2 zT(cqz%VvtjT!~@vPyq_K7ZC=*3`_k$<`k+vxh~p!0;N zt+%4}GE)O08CXcjv+{H5rV(Y{p`ojMoCiT1!LrmZbq7#_Xs1Tp*rl44E`r@L%_w!j zDF8g802?mBy`E)GEh~8*=^kB%d7?{x9_F%dfl{YqM6ZQ+D&Srb9ZLuYn3zS7&_{Kc z64|X;F^5@TB&Cmvje_PDyG+t1LFgox>45H1B3DX+5GAI?Za#ZmI1iQ4>$}SvabtXsu zrNQ?3{`p#V5X#z<*evZq>`J?T*bC|kAQX$KL#{A##t=})Dv`mjMRd`KaJCU2V%?v) zYJ|tW6JE&|1@&Cp3&kkobwS-sr}jd-7u4;w%~3oS)Wcp-x8u>~sCE|`D(dBvg1S(^ zYe9W}!{#XM1$A?R6}Yd|f_e}rSljuvy)fG_guT7+R8S9ID0`SptFy$O3hL!lP#-@p zs6%ef1$A2s>gMQ#cPgltV?n)J1pKcH>NDAdEpN5ekdcqoIGmtSo$`3oh*>C3r};5xXTF_Wg(*`ty zMyj6m0;88_kxz58&~}ecp3~J5J6y#y5$h36sIE_FGxR<&X+?rtD*}5XS4Rfu;TOYS z(dtp`L&M%pYt79%BNDD7(nrLE=)G`MZ?9=)B8uY`e4w=16=)_2BCBIU$6*+7lED0q z`f?84T4|=$A9Q}Zs+7GahR6slf{cXn*&s3v#WJmn{g7dq-7uaMEaJ{GJt?9FmT8*lL^IhVuJ*oGmKiTurr%kn zi;TGtlPk+KJIx$LAI~)Nf@RXbspyUV=o>849BC%W_7lzQ{TEoK4$pZB)0t$N&sk=; zCYfIA0Fr4@u@K=x2&(sROabwoWC{?pm1Mf0C4zK!r#;#BXO1~PDR?~`zr52t_3`oX z@x$BC-+LZ@6p;P~ApQIAe){>x?>>D0)1UtQ&A)#C!}ovw>ls_${HI#0?w)V1QmSH` zItCS14;w|KB~P&ni-U(Wx>r-I3f-0%(oaZ1JG3#;VoxTEJW=as?s1w0U(nKC^C&{t zS2-@NvMvgZa8GGe0L?f&?(kUEhAGUuX#Wy^#u?GBnm?spFiv$UR(EDWz>q0}MBWux z-x(Sr$spow!t9O?qDl0!2tEfzy_w;KkcCqFEf$9Q80B@s#v)qN$18o*)WkKrSI1s1;8d|xTxmaJ8lXc_E z#ltV>`xJ*CZ$G^Mx)1*nx`&tN|1r2ph}aJAH#hx#$-rB1_9e{LJsJAGopn&P+R9oA zSeJIWbBY%vbBBJY&c!XKV*Q_X|AIcbiA-B30dOiY^j|aWTX-_2+Cm^X(p8p8q0g9N zVJ?QuL0Y20#V$k37hw!1G%rAmG_s)H6ezLL@uc%JuL;{a{8d+`C-Zm+21#GVmO&>C zY6aacXiYmh65BQ%6hak6$V1^_M~|2P{o8KbB4UP=MB;wjxhD!BYI&D|ck1|iX*3o8471QNp!O%WmJbY)eKqT${!~3uMuzdBy z&p-e1!^L9ysj3tHNnuN`{r-=Cs1sU${_evc{;JjV17P4{x&7)vgonqwYeMI%Iv@Iu zR9ymTuj-v-`vvh+uLC8zYA>FnF6Zdmy{I$#MfhuA0#&;k1?)O%9Mh1sx#KvFl>B0w zv|q&56sb^B8iLgo4tZgGxK?+??Rzb%m5lO1!JyL}RX`HPn-rk7)HT`zXBiOE2*r6b zkph}r83rNYDjKk0-&|!tL>c*;skH;HPHBzIS?G8inK}~kqY&tDI&&nJS0?lNgwJ>? zdsPr^*UU5?$tj)Ot_#deA)aT*L})KDrnj#B60lO%`qo8Y+^K3Ar5Teq#1_PPut97b zORb3__*jjVmU#eLgoJJ=1ZV9uVR1yKy{~m+5rClJt8WVUN;Pfl~Ez>)2^6ZCL|*hqUZyCJj#U3 zjoxe@#5}Z@FI7Tj;g3!sp)Dq2i;7H0qie52S5c<+8|rp0Ud%~*f3vP6KQg*nP~@#{ zQ`wi*ths^HFl3FOodVN3v?J0PR>4a+FWI9?h|t^t=a8wYgd|-Oqlddph?wm>Arq2D zgtyN!A(I#172$50R%h^xN{FRVr^WR|5jIia777p>DgfXKnGkV|Wg4ce?Idd73tVUk zHfydbAvDu$gK1V~CKp9p9d&kGd%or^ZDU)pC$hylP0_7d?bzX|rybPIL+qo`vl`!y zX=rD`_c&umR6?i4ysYgY9QdT1+ji95RB)YB;XAgLKm2ROME}su7*ev*u%$37nD%2y!MV%F}Rjx`lp zu?PrPB^AZn-kfSGxz<#4-ssqMVf3HYRJ0SPPfIH1^O}l|gE_@o2&grcl+Tj{WGJ@R zl8V7^`VJ+PbX`(0Z`M@WPiiU?b;{36D(0f5LOyJ-sgS_b*>hP_d8?#i zKB=j2A>OR1oJuO?qNHMWuaVc9iVq{c)_AY(HI=eNxJ=Pel1K_^c^nRx(yM;GyLkAH z^y;lp?1%SX_g;qX@0VVEe!9O(cPN$<9YfRyU4X_qo0l!rndaIZ1{_`@N1YB4lGh7H zmD)3{5O-gac%DLtOofTnlt84B9(i2Z_&* zP$GIYFt>+~{nOq3#lx>(>@sYpZSef?@~~H9UbGD!A5MqBmtObl64lLjzx?vuPv3m_ zKR=(!Gq?9o&(ALv)AO{iZ$6y?JI;ZfMt|zp;rRGK8@oRzsPp)mpf)u_U229p?IT|` zLru5XTr<>t%}}S*2}KJFwc9vjK0|`qe3GF)j(mNVq5eEUeXf1~?F{vvpf1-5YLk9l zhWgC}wa%f_0Q~ftp`Knd)M?L9lc0|01od$i-u%i8^_vN5^Q8=RzRpln`93D7wF6U4 zP+JT#_7$2=8S3i@>2;q4 z?&Z6mzW?_7AAb10M(uC^^5egL_fySDKfd6wruE9}T=Vs}A3r|zyS4FUN3oFfM1U4@ z6B&(R5PVp$S)&=-MDn3kxN_Mp$$&b-e(1&*rM$Vl@pmN7^334DN-r^ zK?#z6)~YSJowOxQS6QXNhsUy+>5V=j4MDMYEyy1rtF?9xbxAaO%dE(v?UBV0HUXS9 z4lU(6((Jg04K40Nt8Xi96rMP#Ne&Bwvr7s~5%XDTn4DhKBq!Pf#TT^!D0nIkPi55t ziMGm+Aj9qOl$x~D7H5*q4+Xk{XcnTgzG_LL_gYn`W{2qnT9U46Nw(T{i?);AX%~$y z#7RpsS1rkDOO+>%A)q)od`1(|t{w1PZp|Qw*5ez5G3 zCJIBOS`HRQN@q1ml>eC<=@phmJ@Jo57))5)&*-|X@ls&2)VMa?3UfamzkJ>NRN zn!?S;m%XO&z&z!1g{5yi|GjfK{q{GvZ(!2@RRQU@KmYJ*Ul+dl<(m(`|Mp?8C)`#z zP+6OP!dD-!j%bTk-`H-|$UNrYGR!rgJY3Z{`Vbgt*EufiG>ANP*cVQIVI)QuQ~*?` z+pr`>6cOWb0a@x?AIAoXd#ZIpY2<>?KrceLk=ZSy^*1-esd+Bh3q@M-CMAQN=^SxKvghgu2khVe{c^VWg;wGS56&`%hPSh^Y&!xZ;>4!AM(+5EZbnEr`UBj^X zXv=_XC2f^rW1Duo{vW(TMFpW<9qSzp67D*gD=Dg07e}pWi*2IT=~NqblC~rw;6ea2 z>~!c%>1ub1snu~IZ?jF8=jg|OxxIM!&N-@+?(!Uc>vgXaJb(J5mfhc;-?@GMJ5Sr& z+y3L7{(Ggi(bLDo;WaJ`9J99lnU*UXNQNM4k*qZ1GHfFf8 z=v@-aBAGzmh(MVWBy9b#*jfmKTWM|jxNft4XvAU-?QK%p0#bOjcJ5$8Mo3a|dK1Ff z;(&2e=vXN$CZ|2;y_UCK(Xb#PN<2+HdW7E4Cq29Bl~XgrB4vI!B*zF+m@DSfj_|JS zg6I~a-Xi47yrx5|qgt!aS9^gG3xEyt1Z}j{)@g<*;-^{-%FkNy4CV-*rvMQFd)y6u+Cq$><0IQQToMl66#OH|Vch|X8_YDBzA z`JrwWLAn6FMjA2@aVcN;ZIJ9l2z61b-aq?ZV93R39CbbmnpCAr+o> zH(kac2-K0%9u=d6y4KLN2!$y~3^U82WHTLmrUj96oF z_jeZ$-OTF!l?y3KoE>4^o7w3Su?TGJoe ziDL3)U+F@E@wKmX-TO-Swo<1bMq-0$L$hECuykSvvv*^rr&OOOBA|EdDYe_QVHqlr zL)+h=1+QpG`-&NQ$cGh(jSvpS5d1*ga@BO|_omaVlRQt|x#`qgbe+C7osPBX)Lt~5 zmY|QfV7z(Jbc*GmB27KSYSSrM_Icz`^vt%3^PpPj5zW46It{aMHgo=6@98=fy7!@a z99$$jy0ko8JbWkFar5}}@x%MCd#i!z%Xtmq--nN1YbV`4Tv5bs@JnHQMV}hmdf)qn z|MYyDW*=On#vZRLM%@-P17g%dbIDW#tUgTPpeKtywqZhnP%yf-N3>``GPl|5$kLjR zRPJ=Abhe1)!F#Npa?rJOb>K)}X-B{^i$ZB9l-5@53okwtmDt%i#nzd$w9ya2~*@|wmb#oWXU?lnoQABGUI}#BKm4$RareYHEGu{YvYG8`7sP* z)s7CHnPq%=FzXFxz%sp*<>TGO!>`4p`{@K&p6~BI?$wL?j~{Oz?oZL{ORxLvUfMtX z@w;DsFD&wxKYjT958wRdTYaSy^Wo<4pB^9f2Aju^_b)YQ)gN(G5Pf)fx%;G5Eul<| zvu9der^6R5y2u1Nt%)(OAP!=fOKo5XeV;E3y2@BTpc&1^+wJW|lt=PNp8nJNou~&1 zH#~7ALA?<_8H;CVr_iO-6E~zP;xJnzGm&)kgfWh-J&ZBzeGX$qoH!bPu&!OiLba04 zZb)Kun~Pd<1jm?WPaY`KtT3+tc6c-G@#k!o70n9>Pwj3GwMF!TME#hO8@a>6>Nl>1{hmRxK@YBSUiyg5!cT=ksL=d+z*1=UOCcv;ewJUQ+iR% zQd56~D*b(&i`xX|`Vxx6%5SA>N_dfJ<+Zwq>6vuBV#ib)M?J+|R(Ssso^BtHU%no; zrS#{X;isFM-G%Fpk)^xZR`$m8uUGW-SjOP+jbk35$YsXKUu5G zE_L9r-JhmkTwkDf7ibf8R29>(@S9QQM&g0CqBiv_CX!lq0MbUw1zET;#hR;M0?5k2 zWRa>6gx&}D;rOl>KlI4PVP_tM5!~EXf*_Pf+tN~yd9bLJ)2*J0K^$kcUYdvsL?>qH!;r4IeK0>7?|*{^ZRd~+h> z(YATn#3Gn$*7Y^LE}*S5%eBNT&_3* zy_>ey)9$QoK%JE_S~T0xA)2G_x5YFwg;rgsShQ&pR;-;zC}Pjxr(>N}G!qpPQVMnn z!`?(oh4nnUrWKs4IdOEMv5VlDNTQ26$EY=~Q@~F%Dg0JzX@)e!N_WnoEy{=r5swDw z6)$;gDQHKH4ufH>7Wy7iF43+|F*dikZ}D=8H16rKP$^3dkuv1>7}cK8 zVZ|h%kBb@G;K}Uuwi|SYxG}WdF0Y`^po1V3TN}6aq0*Q+MY?SPDhvCY9<(!Ux;l=Q zQ#3U30CjU-$j(PXN!?-D(~_d-(YMVEnvz~}7Q53R+;W|_(~(Caw2mGh^LDQ0?FuqSW!m$0!zpiP z$=gkkaq@OL^7M>z-p&W%|FyF)Vv)Hq!#h4P{ixb zc{?XOdX={uhS$8EK8qRk&Bps~whB;sPEkmF&D#xIA#Ydu*SuYt9C^E?PD4V$bX1@%_mE@SPe03G#?E!x{PZ&$e5 zi=r>iV%wb4W%>5;<@Vy?yXD)DcOTw=-QUM()?qh$d7bmuHba-mRR~ZHisJ}pbc%v? z&fjZEK-zLTAU`C!frWs`j5Az2P7&t(5qkEgIsbW|^Utqy{>)$0222t!Sf!ok{HHpA zQJC`=zqGHpwpax-sk-1H|P9G z0y5GtiDjSW{LAH>zYBPA)usdA_O{OX=hr#^-d)c5m(S+>+c)O?-Nl^$dO3ly9_RdH zVwUdjne#9I$vOY_ADZ(YU+4VEf$VesBuM;QQ~o)cM z_o^nhXRFXJy{>9c-u<_)9{$^VO+0@`!Q_|!{fDcLhPnrI@v`_>nrwm4$6eVmWpuaJ zF4C?ep04l1=7cC|7>6Gvigp9suON~)?S`P^ga~9naZKzoVXx#6zdHmn$w|O^nHXT~ zk*5(kni()?r`;5^TiS8cy2d_fL8#y2XhTxh8ZA>!CA$gz!CTfwx| zNKD8D2csE<2u_bC=y(iK~3 zdAoBs(x5w+`EhjaWvpZ2!4xJFqsX2Lzuvi@Qk9JWp+H{0o>%l3Iii`(rA|9v`X=ds zC3z#epclx>X%Ja)(3yz+B7MlI@-9HTkwF@`0z%{Xlx za*UOn zm>i!u;wN%6C^YKu?6iH*7S;O{jlwM*E~j#56YzT)`n|-7r!{;b_9- ziQ180=z?BT7ZGM$4;a)eQS1d>Mjc+1|AAxOxXi_`&8l4%l8%2k4Sqbcs6~rLeVrlD zm7Do@mjtLvs#-6)7gY5ogS{?lWN6{RM9&I=jU;_9OB8eGsv_0^Zzn>~(4RpX=8*HxEx&-K=$J z2FX7PuJjk_v;n6rwXmw~48VgGwym!h!ZGB!qQ`4Q^|4oHq$fBYoT{p5CiQ49)~T^r zyT{fZqift;gy(H*ypATPc&Ruw(PcLEV&g%vJ{(J{^P01eS1ql!jQBAF7Q{BU)-e59 z(x6|dV@&X^o?F&cMJoL}GySCy9D4ehT|a6?bmAY7l$Fzu+?4iPt*@fecvW8oBI(A@ zr}}CndAUS!&M+FGvN!6h_RIBEpsjYns1wb!Ro`KpkB#FsHB+mrmTBQ`JyloreX6TL zL5++?#iBGwOnY^8dZW5p!Dzayu2Njh6tA_{gis@w_|xj@G7(yIxsTOVwCS;0u;=2c zIFRWv)1)z!=5s-e0{_q32g zt*(wJ0OK67S6A0lb+xPvx{`q5`uE`wwfp|`$Nw9j(!+Z5f7{+1zdVBZP zjXgSdK7D-tr>7hJp-uCLo7*awUQ@j<&%2-J-QyF6t=hZ$@4Czs2oQQyyh+_KxG6^C zi`VTIPiM@e3e}M-a2NkgJW${iPD*H>3RdVI%(Vlm9TVd>Iz zR1iJ;{LFQ@z9~+J1^9`ck3dQ}+ku|RDgw8+z~=$g3naLv(oc-Tjc78po_J3Rc=Lg5 z@;K(5*)c+)>z8(6t3*Ng)Z8l^m6$!8wBCBt2!Xk{_xEP{dnZvWaa^s~c?>!^*);>n zX`H}ZA9}53Cboqhje;c|#Vx)*u3M*VABl**#{;t^Eg}9|ZGH;!p?IXBIv_eX8r<$z zx*s!Ra>xyG-OIJjk8bvKw)q*)-dASdM`Yv1JayR(*!<9KQt0&YhYGBygC98TMmYA%3mEvb!&ZrHkr`j(nxo0e?21|m(F7IPheZMB;h z3QpBMQD5s+rnbaVeb7-xx5tT6Z?wi@zUcm~BcB3X(4wGUN;8u--6~QrjVK+h zlW|q6S}R2-0498%p{Cx?htwVv#06R>C`03Ph=@Rm%(V21D?qosabgE9*Y;mUY8aFj zPTBi@hj~uBi#*!hOxx*nvc94Ipu1d*L-ANqWZFohGJHkLLXXDzl4I@rg=NzBn~r_I zyNA5%2Sekp2%s%A{(3DzwD*sFzj61Ff9?AnuKRw?X+CsjTQF=nz0vnumHc~b7$%3r z_p$HS=oX15mJ1X4tG?g#Uf-|jj?(119pNt$n}xvBMY|&VI5J zx-sb13RG`QhfXx8!g`D)eL~|eCnI zx){5)e1o-ogF>}447DnT9O(K3$Kf)ZqE2O3Cu3YL3I`d>gLUZ%=K9=Nl$>O$oV`1K zc~7S5>HhJ<+s}W`MD71WUBJhO=POH>vEBNi75l}hL}zZC{YpbUMPn=!`qBg&X6V9L znsUxm*6U{#?cZkW zuuo$m2Q9FE5^`6>$!F&Xnqq3AVraLB9Vyf_irJNFotCgpTM+ZZA1UhxXf-PAZb59? zX&r40nNHiP{XOXLq#0^qxW>);6mw~}QK4&Cf{6F-pQcrSvy_dI=$2ww@v_Ea4eKUh zTK)Yrc#DOaPKQ#OJ#)d}vG32Bi<-CSUJcZYIM$xG*j9y=KIg9G4hkLFon*WJhfRYY0`!whYZ{G1*@FN z*lHfi()OJbkAo8X**CZ+>U3#%CT~6q9wL~|fJ7AS&^y`8fCQcA+UQj2Bi*M{8Aymg z5HHmVfA_oli-+&o4BlSa48HlgU!#})YXuA+9`CL-vC#GJFxuOt%sV>2=yaVe68!?b zZrK}%^A61I{*NG`QRKwEWr3Y~I33ULRWRcqem)3M}?E(n8A zyx(0q(d`p1-yH^Ydn|+0Bsp{!YKo-3Gt$1hf;tmFnC!+xdVZoxpVY}LVyYh$wtO!(l-Q9fOJbWkKSssW@7ltj&W(nGU@mP1<8 zF$T})&|#z{Hll#zb-FNSYwI+nPYy-f!79*fB=6TMpdKm(tnAUp%hKiV?jA25zEirq zf4I4vJbmkRe_!dcmd`H-tlzCykBm8esa&nQS;DDajgJPIEm6RWdi8P4g#HEwjxNg8 z$SZ%TUY+-PwN}PnuFjv9tIfGyU2{F>dUbxSSNo)pDH2f2)#X^Owv?+4uH{ZY`^)v} zTCOg&T-{%ntIb}o#?4iv5xcH+oKxM4r+W39iLZm; zxt)W8Yde#-a@Ffi!4)?-;mB3@l7?ER+m-aMW2nlw+I=(DqM3I0NNlzEk>eQTs0&tS z3Znm5H2_j)8Qh5a{U)__g0#k20x#h^2m;sMG3V1fi;fNnldfZ+#a^cRR5-M=;uu>B zg3~e37W|pt478px{MSHhYO18!1MP^zSv$_9sU>hBXJr17t@2_ACz(zG;DI5T*qbgF zePpLsyb)+IYyKqADnPXgwAH7=;DW6EA`+Ujm?e>t<|&~IC^@1i;(}9yuE(&hXP=5r zfp|86^PVylgq}M1RPB~(kx#Hqc&`b2pgmfGzXn=|06`vHxeBxZrjgMFUGeHu(HF&c zJm`Y;-f<$C-nfk>8D`{?O_I>8hk!pP_B=+`{zul;Uq+E*^f}+iAW#?aNJim%)3eN? zu#Y&*GSbDmEFlRW9@5r_ZP7OrcrDhkg;0 zXWo0+D0zt@ES+|1>ElB4G{*0Jw*8?>ud@DWjzN}G4}`=Hh+-`pdC>~qQakiQ##>vR zY{k9jxRNE+8InR8+(MO&y4gyG6DcSh1N2iFqQ}MvV5hjWS&Tos)(t^WXr*=cpgq_L z`_tZMw{cm8tpoIUbz2aFUbTRSMf+$|WQQJaTdR$tSkqO(XT>;>ldjn^(uhLG_>vpj z&Eh`8vUa#`C|<@Cmq2quFY3YgdccXzF4|@5&>ezSey^ag=DJ@xJrcX8jzZ?DA4xE5 zI;6BkMe_QoX5vNCg+a0qOuJXXx?8P)yW^LyvzT;qK4)HT9$)Gzz6ZqLSJeK-^FPBB znL5|cfBeH=|NQe$AHMtFfBF8Wzx;Tedf(~l$H!yB{pR-RpI-LV`oqJ^^K(5>Fpd2B z1}2S~Ws&@wk4{afwziz9poLxOdww{a+<8Y&APJglQ|Pn`1kUmocTyEo4&0-u#HN_owZYXvkE^^5sL z`l4KGGh5`nX;Hp1J6?~<7baKfi{?`L0@KF#%#O#C@`cIGd^ky8;E|5>MMSh)j84!M z3LS>^Xm(tZ1K?1$!tB_rl;;S3?I?XwO&@%WVVAxLuJgI4HP_7LHRzXB zucCuXG=5?1?8@}PhHA1qbvYxnA$Vk<^CNRw`q2VNj1SKCtiZf({jqY1;dE85ntFYV zqvA#XGSB19@yk170XGl3lgS&;{~HP|&;MoP0e2t8j<3qT^yZBOT|#DJ zb_xRM%Ry*2=}J=ZUzgm&BKHv(|H%kUsUt9Diu(kN(f!jm%Jm2gVnT?r3BJq%&4g=V zcrCi|I0CafZkgi<3|5M+%_66)>~(t`ff>MLrx_S`oPn`*1jg($FynCsMyOG+W$C>x zLRT7B+8pNz6FfSe{Gjco<3tQ{5a=kTQe*x#LeE=q91X7WsR!tFsT0WheYFtIB8NhQ`BI5=EB6-<-%%pHc{zL4ed%?-VnFp*i;dpCh@M;}U(k%gEHl#P zg0CafSwg#@eIbbjl>lswXS%J&0zBM)bEGffDy4-d2`E>ynQs-1t zw9ruPococC7n7w-lPbn!w7>g0PI_dY2V^;u&hqFE$bdA*aZ+=hCq+!NPYQ}?LN9JT zca>@tF^#QXh6fpA>AiN0AAzYlB89Ya&2wrAZQ`5zRB73#O7pO=56NpVV;&d=)!t@T zn`)M~_9P^cyreMXD0%g|hA4^dc6=?u?vShmH40sg2iCYO@UspZe$&E2x=ey>W1aL; zfN8Wa1@D{Mu&)ijG_{K;R>O?dOfG11cgO$+e<+uuUYMx%^HFZjYVEe40C;n-C3RZB zTIy}-V$Y!Zv@)mZT^~0;i%TrnsI0ps%8HmBhf6<`aB4ZZh2!H&PDJ})U71`Er9pmx zeg|r@rw#D3ybSa9c=50{opEdUH~1D||8Q>W4TpO(>ep?2kLa7ll<(#2vmYwvIV|0$V0$dz+0O9gLb(f7U+_y;rMt-gB7hcjI3k|E z!^oG$9u8on$)n264VV45Cw$=#u_6 zPoimSH|{MfL}}D1uuHF_Y^UXH?ACK+P&f2@=Rj_Cp3+EwrtGV~mEJv{rO{f$7DYUc znHERy^vE#Pl5n6%KG03&IhXYke&pm?_lvMr!Bj`5jm|nxPd;s;44O~p(?$$UKM)@y za;4LS+UTfvJm|EUS{g#kl<^m$t#TxBm2~kO$S_lF7c!hqjNM;S!d+ofHnbU zJc3Gj(l07AuIselErL7RnajmY*6)5h-CR6;XC~|Z{^jn&`>%U%z5Sia_)oNeU24TG zoV`d?t_x1)KG0>g^tQC(bBloSBCZfAjYq6K6fL<&(M4+}>MwMH(=_DTE|UCDVH7xy z`_Ok2nOyf6_{qA8$=tut5x>0-n!7hUXSYL`R52rCU*cTR*MHJ8JE!{f`v!}o^!MD;(s|GNLI zF8<#;`1gGK@ydsx>Jf@*^f-;>$p@5O{Xm&!AVtZBHaJMWSXVJZyT1Fd2w2k)W z4sk~cetR#`w&hbV(Wc-jvbL7SR-yTIUXQIrLbp~lZ&n-@ZEa2MIp-a>!n=u7|28Q? z*W_rL%R-OI%7Nq*N=N;eX=XlHWNqq9;{{pJ__wqsc@%7e2pe56q~vUECd#YZn~8#B zQZCX=q&s8wZX%@S%d6D9kXs5E2id)uD6P8gmRV$yvLix&V;mNf+(eGF#&-R>c2^PH zrRK$8M(i>~9L7V}FY7$FrSXa0Dx8(fVH-p}#BuZ^n>ZjM*xOYn^F{+qVM4*$ZLT7M zjcz!4mcZH4O@oPo;vMdsg|f3wr&x3hx8ejC0j^G0X><#+|7$APw+4l)juKyK6iG|h zZymKuvQFc4vTeyF83H%gx2ZuW`_E=YGd~ z{Zm=*ojCB#*|GLZulo%2x8HxGNb%=Cd{@8w%};;+!w&o(o*zHfsL>8?`grs8zYFu< zJY8X<*{;Ky&jJtV^$%6s;rze8DpRlRuJE8^fqZ7CzcISe+pfhh?yqRujrD^bF{TB& zbNb<_%7Ke6pJW^A|4jW--6?cDMct2+f8OsX+?z-4x@!CY@vfyx6I%{VB6TB zc5qbgp-V_xUHHk)DDj8Bwkal3==ymA!U~)7 zve{k4!R{gsx=usF{(V9no;hknPzs~UIHGtIcH+zPs=$`@ug$39dWe4OH}Y7V4Lmev8W;seZCZVXpwqb!Dnfv zfw@Htv$kze5)kLrvkiK9HVXhy$h8POpzO1&JM=-TXjeU)S31K` zchE{_iawsy9khp9=H&`KjaA*jQ&ZlZtuU(4LyxPyMcjljKP#f7t!+_E6wn|8qOXiS zIcilRoxRo1#PnP7RSca8zpC%B{6qQIvIm!1L7 z?&ad)JDveIxA%`9-hbV@sd(4k`~$`T_m5AHS8TS8Q_$vMz*2-k*n3UexGaP2=Nzgz zblvv)hd=iH7<8~6fKohFct?lE1n)#q`NbL}j0PHlfn4=J(5JC0RaDHoBb2QW#c0Y|NcL{HtR!ete&VhOf zJqE9S8gpO$G;Cv|`NX3EJ_@TKo;^(bGL=50TXa_LcC z{WM}2J=q@fMUV1OV)(>QV@AG00I%J~>Zf5YJ<3b<(wo&ov7>)s>r;k%!|{pN=szW?!?KmGap|M;NC-~X?lfBEVAZ@#N2 z>FMGA=A{luP1~s&@bK~B<@wrrOki>B5}o19iHbXHqDH-LR&}A%UZFus*C+L}ctO-f z(D#T~7{Ta@2>|FKV4~7iSIUlmVG>YZ8Dyago#MiRS!F1vfG5(w%<#TD1k! z{?fERBh{b09G~Br;~%^A_?@|TeSiK5ePSl=@*Dhw(>F|8zr(vZzT?w#X4)Tw`Z02D zE5*0&Qn;btwM35(zbxEPQ-UAff88e$^&Cw_^ltuh3J&~)udZ|(_fd*$j}q$1U5--Z zGx^C=+aLjggt|6Qoun`qqZCI8^`<*Ys7EB!uSO|cm}wsDhp|pl7&i;dEaf;#fsRQW z8%Oh%&eTf@^>Jb5!|oF5g5h=?v3D4Hls?eWtP<*(Q3~C?T|zw(%CwV({ycb}EH^f2_6=1)y^O2b`hAc>kj_&^otTK#_7E<( z8l(sas81IH>WV+6V;(p~y2SdkS~}}F^(YhD&JFm>U^p&dMk#e`T&g1z#aOY)#=Fq& zBNK@{fRMTlMn{{Y0OZ^+!amJn>yQLZ@{5iO->$*vhE4Q#p@->O+R~>3m%bcwFX+d_ z=kl?+4bT6Vj>GpRKJRXCKD_npcPBo7`P0q+Ujv`N{Nbycn@^N08N0S)d+c{iC@1R% zVtuItp@*dZOJvU>iqs`k-y+yJkXO zg`UY$o6}bT;%Z`VE}JGTW2J3obm?4yy6BliHRGyh(vWTw#vfM{I+<%8ffun#(q_7Z zyTWfm*TE|cZId=_qmQ*^x0<~>T~8iqnq(%99MzPX+MJ%|5Owy9k>SJIGg(4+Y)((B z*}K!3`=)8q(mUtID|OAZ_s=jZOwVLtq7ep?A~HlHg*m#6#eMyOZlkt}*Rm331Xj7@ z!e_IaW2rrpv!I%uV0h)?X_|C8jR{wfksdeW&|?TNX&DFNdBV@i`>D+{lT`ZGWJDU0 zb#&>HNQQB{{@U*2cRGEDj#xMzP=s6XqYmJGyAs=}H>PMVz zk2pOwP*=1r7e$ef!n(DI!=@hXx6L zuzI7z?bF7x9^VN1@Pn|5qSggcPeSUWxrFL@>@Sddu1FoGi}%OeqDR&`9YQ*7dfYJe zws*uHEq@vGlNABGn9qQH+W~t!2|SAdU-{pe6Jp=J9{drpzXEo;@he~-8MPMj@F@8) zm|?w%ZX^kcnJEXIHrQ(Yx(xxyep-^hiOz|j^$5FtpylSQ0{^Ag zeZchL!`bxV1g!t~%O7`#hvw(+e*EUAKYjnr2h1IQ_~BTXy}7@=zu$`%yBWl#tX!8< zovjX3r*uFlbTY}m<^}&K1dPNewO=v1$-8TVB{&9M0|gH4^r9Q5psCA^VB1QfLWjn@ ziu=2XkFZ*Isp(NJ9pN+a8tKC8e60ToR_g;&SLx($S565_u2- zqquJP__~cjmYIHfqtq{T3iql=<&9BwPX-3+8!IA&)OpNNF4 zyGTgGtmr6K%*w~kw=6v~syavGC`9U(Y!C^FR(rFjt(VrKbKe7=*LWTwm}IBgd^n^_ z`vtT6F9_(vgjWPY63t(F$2wm<8P7?V|VRnMu}FyT?f0=-sSZ(X%3ZCdCq zLI=x+ssf^SLvTpCoc=6W@YFodkL}CF!>?a-D^Ei%_s=)ak9&s$O>7^}zN%k(-De5> z8T|Ll_q96s9W%6iJ%U5F5>WGDZ&)iY#}1yy+ZRF6>pll!603d1Yh0LULoKlub2gyQ zT7{bV%C}rszltcVt8qMUZHGO{Z}$Q~pp|FiNeOd8WOyvqfmSH7{s?h<{n79s#f;TE zUIL)F6`d;mN2e~i>VoDd-QLb0P{y-N(?rov0UcbHNK@yuR2%qQvpND}ZkV%9U6G!M zK#2GVY-B>4N^}RIaBq#$i5Iz&! zbvbKQ30}rF)SWGQCK}%r00=7YdgFSNb1ksf41KF(P5{W@6r*b}lSdIN(iMX zZn4H;l`L50ioH-y&LQ-I>bv)0Mm>4%Cwlc~TRK8rO|Kgrwd7zI9gd0aLL!MjOJMd0 zWUa%fLzn(k0p;33HJ&0#63L_dNP^wlB$PDvr~G;nU$X*ZT6d_mH>Vb=X|4dnD4Hg% zxG|r5WnUBQ69X|}@1n9N`D7nvEu4b*g&79nl0r-6N`{>w;wYFnmTLIp7f6LD-b5p; zuIwOO=z>@wt>8vMj?Nqrc|k{fk~RxMJ*p@ty4#Q(?mUACpQtDsT(9#{;WeKU?ak@5 zJ~mU0E-bxpWM>CFOL62#?ZA)~D&pwArY_Jzs%7E4DE=|gp3oVj?y?J{>a+RL^`#Ea znwCWAB5>?$xwi*6_XT~wrNRlfxNY_r)p+#xys$g2T!=i10qA;pyZ4NYLTD3aKNzAh zqH@Z%Purl+_F1;w9MkQ>bLA+fydCuMXjImPZQDKFUTV4>`a?09bUOp}rl-FX<&1gN zs`-C;d$%pwZ8J;v9#4@k;NE#Y^c_TkBnl*&Bw$3bZZu?DU9HhB%Uia4?CMbuzvl-= zL`JMbN>;ghX=!C-W-x+50{=h%)13XfrQ$Co9{$DOUOfD|#KYa)`?TQKj{7L<_iNQ2 z?(ZL89$&A!c!~lD7=C=TlS0}9w`-vJMNqF<;eU@Xn5Rgr_#uC?cn1NephIR?TOs(c+u!$)Oq?Q%{Ve}Sq zN7{hs#7$IYsX56RXpJdO7;V^sALdMnRmQM|5LA1Cs6?;`%Cu424>jPk{&A_b!=iUk z_#1Wq<}l=4{n)(AA6I5STH6VbZ(_2R9LI7D&$WZ`U_^HfJenK0$&qeRF!f~j0 zMHnYCvrvu#$ffNDV3DFP<_cy8oQJed83E)0i%;=!LcTZG5?S_<)6e4X)e&@s|Bh|*p1bXcWU!iOfWYJDnKm!ZIGG?R?$XdjTa^xrG`k$*( z3;+q;-M%K;##RW$b)a8Ui`NBhYI1E1qRLE1+##$#ZOh~_LUzy)BrsR~>uL(jP^qOG z5OVic%ciY-z04q^Pe%qVIZ`PkSS!l|F-M&?Zsnfj)DX5|Hx zvU_eVpfjM@tko7sopw!koJf|Jg*%CQAj!2=TlLKRps4%{$u*<6S^%`bQblrYI(2t9 zTilr+GRzOT(kM}_l2=+F?GD5wZSmI=$&4=-2JF9@T=S>onmJA+>-k~y+Js}I-4bpV zMz3We(p7RTGGMWd(?G7;_)XsMlw8vi7}lbgZD)Q6_Ly9&1Ia!J^u>+>LA6^po0?ra zCfD3Kxu%$9{A?h(q2PUyT&wC^b+W|6R8Sj)wHOY%R5H-=+~n9i31C5p0GR|mslt%* z_2XnhjSUfkIVRVH>{(9a#4JJz{p`TDxUaG&*C2UBm&F>W1qF=`tZ6&xLo*5$&=3^> zu8LSRoW3V6;y2$sUp)L)?xH^x<0;9#J=8FZ{r>Rsbo23X?Dq>lr@MYqfd2QNe)#?0 z{#e&K4+Q7a>PB}RMwql6FfE#-RT4kJe%U`%o?1=(# zH82<|+*nfW*`b{o7Q~GCgAFmy3z_F!g(%;76L-=?vwxog#HC4IfgVFe7}|JAE^sOD zY>C>vhlyLG9ibD9X*3FL>d1eWmyu9rgxzuOEMti8bctIU+fPS9ZD&$ZR370Z)ywxf zIhmzRR$I~1XMBl1L1U=BHo=!TR&MV((6^jxTT7ti?#l&VVyi8bMw+U+@}9X1d-xK&sl>Siatl!JS%j-)7h_*cIWZB%$CPEM(dp(!AO1hj06V1?O zUEEGLv9uFi*cXI}<9*jYz8t@NC>^}#9lr4V&xuribf?9uN%Zt9I3Mxu~GoL66NEBG0U#5s`u_fP1hlJ)*(#x#5E9pdw2Zu0oTCo>&xrSm!JQClxyJbx`;Db#T5zw zsx&H$zKW~}jp$PDd%o^ME+a~Xy-+_vR-Uy(7)zGHtcu7XA}H^eyGDK?+o-5PA@8^( zIlEm&Rm<)$7N&>nFz^ z8X8c`JgV@=G8KE!KAigk%e9cByu_|Os6av|I`!Zi=3kF4fJU= zo~C}tK`2b_Qs+Mp*=Q5=2%z|R7fl(NeHj!|K|UK4AIgX`ga~;83spuD8NC5H4bv=~ zzt&^!oj!if5%L1XBi{Bh-HO(mI{tuc3W-E=pWsGl%S=4TAtD9gfs>S7wb!)w4_x-u zGIA@}B(SzF`tXS2$+Z;cHZ6CHy^>ZD=w6B-+$Iw=Mc`@8otblo=CzHtg>6hxIJ3LOdS3({9@74w<6 zNncX1*I*~vxb5S zxfs~$w2)d9CMbFbD5LO(FsEpDPVhfFq%SAg6YLb!HH!Fk+ELCM+(xjX=u9VP{cxZh z=fbqEn7WqHyV!1MvW(1{gkg)rwmM^{7OHP;T;y4*e2Vt|M3-3AoQC*eKs$x*9NlW$ zX?cwD$1+`pN}2)%i(^eaGw-yT>)$$9iW-@Iw5HsXC$91-38Pp)m{Ev{khWGCGAYv~ z!$SM?c=7NfhK0M=$D5Cj`cmDuWN^y)hb=eAQbM=@^ZDRc1(wJl&paa-KzDkV8NU+ z;`=m>qK-U`0za~qT26jXiJvp#!aZcv#)aa=rX{}kJtZz{Mkf}^2BgG~@N7i-DJm2! zo0gOePkPt5Z{_2=DYWCNUq`(jX%4OD%Y?XMnPT_Oh5jNRUSc+TLcCL?p_s7i*`ZdT zw;>@e^xpQFZ1{N0hFb+{J!dBb*pH^pxYu-eS|YSGUYmGZTkQUk7>8{5BnY83my562 zaNC9@ZRR~4&M2a6^2k`d0>wi&3)KpO39vCoIHPUE>1uP!3QVvZL2>4{#nyCqj9aCW zKWI0}@2`uEWm6>FYd0W*h7edrHC~7t+b`QvGSfP-aeeeJlr*L$K>`ortXU>wV%u}nNL+}wLp=Z-4unu@=kfR zueuZTp^aK*oj=YokyW5n`aZ~{;}A)Rb&zS(;&-n0hO&NZsx8$Hf;!4%O_gF0?5vz1 zp0PEpl`@bS<>!KPu?p3anU>obEOhs_FB4QUW&Tw{wRMn5Ahvh$va+hnk|Rmeaau`U z^_hA&EXx#DsjS9QF5B+s=Jn#?hpD35r<;$D`x&$M>k~-wm{+*J)dGOkA`CKa2yI&e z)djmQ5M+@Y(_$%*S{>jj)=i%}`8wBkX44%m6wF&sFR0*=Q!rNvHCp)~MZKM#2I6BP zYPOZjS}O)-9#{_CS`)SWgA{mMy^a=Z>v--Q=>c&_0+D1w3Oop|1_juL5z`b)$54QU z-&%WpY-L>-2kz--sni>KTA*z>MIz)>*~zS73d#$$q;tBpPCU8xpjF(p2%|YfatCY~ z;xW599u`?GGeEz=#I)AN+?6IlRVF~p1UB>gfFZs5PTQfYgWiZ7fOdpFv!_$C91U`E z{m?;s;%c&|g})0JFRK?7iV!qcqK<9|uo9av(f}I{ad3PWJfJBZRJX9+B!pby6@ZOU28g5t!bg`zV&|R?jEnW zyUR&y+9*(%j^y1N@wnUKDk~0oH{3pD=kC_Sc5*ObXgk5(?MuH?_yx$j(VCWPPi6J* zTGPT|JYGEfs8#s+?&ap=<90qiM3_EUcMng$tZVpF zEo!-ZT?g5iMBf0+1M7<3Ppz;=^ps?IyOy%IyfriTVJ;Mo4HFB#EVW87 z$;8a1jA!NQbjITPzTw%`b$FKJrb zvJDyC>M~5`#51@cE=!|*9NV$c274E-F4PJfW^_thC;xpKjyE*#9fhmYE?g~ySJEzA zJ!x~3AKLVD9qq4mtBdiSMYx(4f@%CrxVo*X;+w2&Quv9q$L3&E4x=ZC$z7e!Z`Q`(U}~gwb%Qlq z{s|fgL1tZ}xG}gmL%;M;m^T~WY6=TdjwMOjk2?o(HFES#=YV?P@=sbk^V7cN2P zTZyS$T0qvvp>UXLPOb3yJZX~mNfWzInj}c=@Y|mZg~yuYR}hd41>Eo@3gZFn*0coN z{pF~MMMHg`G%@Kk6@E1oK5j+O0oGz$$Ffm^Yp;jGmoXcr!sTvoNA@^llJ*%BYdeJ2 zY#P5X6kc70nQJ%B)r^VI(LQ6M^GHz}v>yjLUEYVnLu;oA=Ja|~6F0kq^f9jOri;3B znbUAI!|0;;t1@*R=nf*4b6_;tkk9yR==;&$UOfC@SnB@i%oO;w<38IJzhWHf@$TX7 zdS3*(5F>5M0WQxqRUGPloI2K z=W;x<9w@lCj7va&&2Y<^1Es0jP{U4vqLtiHZg#YFY+G1bg#l|_ zP1oE(w3UVK6Al!j1=`XgV$vCQSOEwVEZQ!#UB)`INZBe)Z4b4x0<@MqxMImjCk{CS z{ed`g+-&EJCoQn;X#uV|#AP)JH)d^RpYz)1uAApREVF=z6HeI1j$XpN2sR5)TLiEW zcOgADrpDKf3Y}gewXiDG@+aZi;o;#w=5>DhXpH&o>EY%}&%T*|`u;aefBojqKm8~_ z^B3m7K0tPV{^`%ZdHTOJ+q}Qmr8{GA=}crrU6Ad0;<8%XUan?1l2{S;ZD)R~)o-30P(=lj%3U!Zl=FRCUIJ;Eh9eAl0j|SaDr$7t2Mf6TC93>k|_++Qr zDS9y?;}&T6oJ&IrwuP%Y1e9=PQ0>++713_}hAw;-MuUoKs_}fKqRN$uYHZI`RAr~4 z8fwB~w8p*9%Ot3{PE=G2R8%y}(MObMg87t+N{i$ZDk?YzMif6Q6;Hm z(ok4DE^}uCY@ST?SqyQsXG6T6xTub!GH_A#yB!X4_D4HxKINi{CoU>~#YL6jqJmz0 zx5IT(W;Q1-D&cl2z46FJ<<4AG=?h#`YvrO!=9t6PZH-4RssI<&ZixL=4%dIeMb(?@ z9IiicQKbtms=0DeMOV3~!aEn0HD^1Fh9|ixyH4+1RJ0%?AflbHkNdX)l1h3SA*1q@ zj7lrWW!Gv~QAMaz=EFcCUf$$LN0ls!v{!UgX8HTGxN+O;T(h`6b3mWaQR$8gou28a zrk#!|eSwbZrFk8;@O1I;gF(ZGyE8rb*N*#WKIYfV96sH?9>LO?bJWKJG@054LL2g4 z$U!mC8k@==hI)3Zm8?bYVyDnTks-6xT0llWkGkq`>d&+ngB-vqt9FpAWC=i$6!=b| zwCq_p{_A{aU?XnZj^(AztfdPeWr!}20%`N)^4uQ(DAv4GfBbE@yLkA4`s2f$oYBX} zeFi~)snp}M?&P%=yTHe$|JQaH26Uzgtsp8-+KesVLR#+VNzx^%Ki}lg^wluZX(JjO z>oCYsp(?|x=_iBS8hOz^RR$)$@Eg8Ht-eht9gLpNbWQbLx4!-F$`9{Y>dz;%AiZ zsVr+1Yd4iPVCQs4{eXVnJ|T4v;N7ko*=`mRz685HT1kuc=T7Qw*PYb8_cAw`%p;`k#wno7S`bHm{~FTm zyzbm*IQ^GP7XKdbqp2?u={)9GkE~ zoukQRY0)56kXPV@t%JURE`QEb%dmF>HPdJU)a8n{%4MF~)jYL=nS9omoG$Xz0~(Vl z_6Ctj|Eb8NJ>{v3P}Veds1FDaL>~zpggfM{OP>{a*XYgHEOn%q{w^`8C48wcsWl&l z-mDk6f`xdn93^>6IKB%yD| zycDe=n5APmuOV|Rc3Aj)>LMzNI2#%ire;3XIzoHBhU{MJfFc5!V`x`Gn`MvpV#h92 zih3!0CTsK|UDi5+R*@C7twN=gzT5X=hi>(G6|JnIvOydBzKS+hQKB{cz1R_Vp;BLk zN`I!-5!TJDwb&6qEq1)uI)pH;g-TC4rKvNuqc2X(kGB`aj%{}DwT=rJ#5}CG7Z1NK zgDC6u{Ce~8ai6WK|E%KSgTUQYhftDObdyD?kaOen93e* z;@S+^*6vA{7lJ-`ySk2kgdRCz6rHsi#yZzWiBHIQd?(Ga?~2Y95nl+6LSIrzv$PtR z2h)bhYg6Rr>#Fa|(kQ^}sm*3+vtWD~kF;4@NqW^aGue0U688vnDNasZu7uqelYQwp z*_Q}wQ^O45B8EP;5Qr1Bs;GA)8 zSy6A`%yREMwf%5p%_7EfQ%(OZvJTD+y2rkIml|arbqQK*V+x%g7#s+*K3J~9ExI5< zW<+nO8%+Des?z}Bv~m=ERXSlpMAwBoxXyFXyU)Tt^m6Z`rzr{j3*M6%?zEx=b`UES zs_i|k7_yI~D=OKRLcuyZcFDA5@0y2;hacgO=eOsZkB_@qzx%`E$J$}P0)D*QzUqgU z+qig`Q%0Jp_1U5>REa5SUk5MK&Q+ufDb_M(REVv=8DObJWyHk0u}&!J#v05hFBk^~?vbm}n`rYK|E@X@zeR_roL-(Y ztcyiPz5eO>#x0wI>l7wM3ONRzs=Jx>PLV<#Gb5xG;0a`GF^@(&ua@4J4{lMH8!$4$ zz`mujO3k!NkVF&)5>y>BColr)a1)lCcrDJS4;z{(a%ozdF+%y*^0s899J7|Ph=MIz zgbHdnZI38q+?B?hJGdFqDHa)m!2y9>T}{r@hGCcMiaHg~hiQ#4pIlMOE_gX+xw1OW zoa+naIwMeD2wtj6ipW3w8xztsdQm30iTYzJr{?fcE{=*sd8sOeQ(tOPI3oN*mY4^6 zWMnR32KHHAO)pXNS%Eak(hAAz2K!-Qg0T^Dvd!ub(HYyc~?5x5h=SwQ-xgY~@I6dFs2Rp>HRR8(JNytNA%PF0FUtp>cj|EVHfSK`ueS zVoP#gP)2miCK%W(VU`tSiYyW%`QTPsgSEK2ZA|$PMzcZ?c{pfM>$hc#bX7Vi{$$pf zr>#uO6S5u2E6!m)eca#)8x%$@8)q!5Q>*Oq6!MeXye6`0g-M^`P}WumhloI%WeS^x zi)@qCH44wDN^_57V`s&JSU)!vy+I!ii$cJSkXJEe@0lDATd&J4v^*y>Az~v4G{%kF zyA;Yu%&RB}@$j&Awzq?hhqFa-07ih>Ss7$G$E|a9o)YLDs$8aC`XJBlX?>TKae`T4 zlas!nH~*)n=eLW8U#B;}dlD+S`S`dGrMdntT64YI^Hm}VDu3vcg%|{W7rBpFYgdtn zyc1&{b6T53u5w<+oJbl9K-g{*0)YX(mLXT6inWhjnkO4*MHehUqi`$*(kaHv5`#7J zYxElsEOiEPCA)a4o2XQzaaMr0uCxqlG0c4jO&X@oLHvvIh%DEDhjTLoKWk6-B29K= zp=jkr>ad$zzsXJaw3EsZtfP&>5!$C(!Gq%R2?f+rNEcMrL3!_G)oPt&7Ul>AF6A}F zo}rJ+fTj!Sb69p!z;I@!A%4}*yG1~Enf+mI>_jTAZMvZ}M7smj0V^m+r#`_Nlu2<~ zBQPnbo*i1ziZ;+y6^NrbsS9>$hhar7qP4n~S@uD1+%CETkG z5HkdmG?>n`>Mx~|uvdC^CX4DILH#;k{1on4ehSI>)l)0KdrV(=Dny4#YrdliURx*4 z)cG$DFZyiwt}zGiE1wcyTAVNe|*ZhntuO3e)!)%{^hCx z=g&X>+wZ6eks-HpMlr8Ari^A=_n`(AhGAiVFGLaa8Ew zkTry0cg{#j<^ejup=|Q&D_v_kw%=S+=0GP+4{ZlN2Cihu6_&r3@KhinfcREBlpLON5P`e|LK z4(`LWCA&C%-UfA*(B@KBeS)OzEWFSe%4%|CZBnqKqn(|a9{RO4IM%z6pwN0OR&jZ< zAh6?qYny1es(ipjdsHi}^f_~ueDn-$^_aO~_n z`Yr4HWMiPBCsbyNht?ynaCwn&P2O&HD7vCv@%v)dIBrm8IvSSHM)#{M?*{QLlbFbG zj2$8*F-_atcm;7?j1$A4Bcflro15#WPV0NA$`eAd?Gy=8M`*MaGwYZZl@eX}E$Ma( z);n3Wlm^5yR;FPigzv-Jb#sCsL*aC&xzp6@hDX=5aZ7R7=(4C+&9tS{wSk%eK|-Nd zMX|}lggAChrBr|l&%*04l}%m)B{-Si)s34Op>Z82zfoh+&*Bt1`4hp}wG*tK*&BA$ zN+?<*vu@=m(_L~_Xr7GraoNVUo4TT%tk7@4ZEdUX=3w)-G+qD~o`$%sgBRTE=oa?$ zQf34HR@aV;?FYRr*G?dB6>;9qZ`7JzzQ#EPUFV z!u#_$&{J1Cl}6oWnqa#o$4>W65G)y4K?R`#k>fCL03x`Rv1JogoYLuv33oB_uWxl) zj#>Rx_%vy4cXr4Sv~9U>YbJ7CCggRXS&K~X`UwgU+X)jYo|*arrS5>Ns}NY4WYgZK zS!L^JC+fBe;PW9R^kUK!Vn-;NWrUd?m30R=%9J(@tnjfZTLUsiCYH7dv}~uXFJaCk z(}kk-x|xyOXyI>2W}fF|hRguEo(YS>^mrYmuW7M7YL6uteh!KYyIvoLb_DKuYjoG> zZ0QGGp9(OeYz{zV(3W1yQ2qGC>`w3Nf9?KXY13-5M<;d*X%#+`nOzQrVH@p4-5uT7 zwQO3H&6pb9-U#i8Uv-W9U>hNAC@h;TG>rQWk%V#>SHE^LLXEaG^B0|~3>cH$GQ+;< z02Pzgq)FQFn>}!{oBWHnZIIDKk75s%zPW9-<>~n4TN%%9(tD@W-P*5_`c+=Y&7HhVhfI{>5^JZbAm`+hYClZ!!IO5corxJ~ zHaZivxD@YrCVV#RL8{cT?|q5pq90~&OdOBWY%&b8H?=Xbl#9N^K@dj!0k&83uFdvA zW1^hLsV^~5tUWS)nCpHRe{M`H$Hv64Oo&j@mpGjJ5^FyUJUDLGW}BJY*!y7^eV;a= znOPW%>7?@BmsscTLcfi8RCA@xc5FFaa489a31XAbVEHSW>CX)@?cSK!f?F*7;#==#8e&MaTR9O#*r1}5Q=PK*ui%rR zTd+q#RhZCfYiZkcLSTNr?nG1|HWfH>CuXksLGL%SX%!*0HtLSf0h?MJQ@-0;oHp{x zi;uL>LxnKH9=FolRk>eHxl~G6-TlSGkMg&750^>_Upnq1)c)&ox6d#4uMbyRYh*Do z!`WBm*xAW(1YskfuGYGOFfCVj$+bSB-+3J1m>DN)avbCd{3uvk6RXt^mrA?fQ`%`4 zV&{+@r3Ok-x^Y0LQ1(hexi5UUdwedQ+1UiQsC1~-HNmXMDigMuemWt&bLU8aN+LOLd) z7@G~`umM8tmZYpM>`23#FhDr(n{VRF;cdRZc=)aS>SRxZ2Cr{#w|mFZ!|na6+{4Ys z$KBk$K0n=m``7>4wCTTo8r$|i{Ofmn3m8>Q`K-Nt>GAdDvDPamSvdRc_}`k}CcW3b zSQS}`vM#l)QT7y;m|7(GbRMwwS&U!ovk=mTp7aZS7E9%*ntMTg zd);TDfMCnDMh@Ro@NKP;%h)Mq+(PIU<^eslQpMC7IexRmwjV|&yRSMe+HU(l z9^$z~ZpL)cX|dE!3u@$-ofcgoU7PHCr$ydNkOm-B^45grTjB!yFa5z?U&IsNv%< zIGG=-tB9tPmLY-x-B3t|pt&cHr6;Fk(=-nZ@@V%a$e@-%msSD)+$y|S%wdeSV{TmW z6e3ryWV9ItjdZL6=XM@uxJ?FxgW5$ulnqiqG&FWLdSxy7K~RBrD#A%Hh|crmqnvd& z2$IT*jXgF-;67QW5TvpRx6V|Cr3G4HoxMCz(<>BS7R91eonS9=+kD7Wi8sZjL1AT8 z6rbZFtFB8x4jA0_PB%0k>4p@L!$%z8%7gs_wjsnti#9}wLLRuKm9#sg7`leSJW+_H zRT!}qD)*x{TIbgkW3O!r{r0$_G&UM2K0hTJ8a8c^9+E1Zau$4==y?&=Q$*(vtzKJ^ z>w3t6!NÑ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 literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F0450975.fa.gz b/tests/data/fungi30/rhogs/HOG_F0450975.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..3cab9d6b7a9cfc74abe74c6777a747549fafe6c6 GIT binary patch literal 1993 zcmV;)2R8U0iwFP!000021FcuxZreB(zSmRu5$q(k*>r&k7K=%MK!{CBJm0T=dVKgsTe`^mDe&RN<&E()*>B(84H>%;cA;q=B#Hg0z}|Ge03uMhi8wr{RBqHlJ?Im8&L zMT+D*6_Ok%o})+) zI!z|qF3es>ESn^gQLk9+DQhl9CE6Tq5uQvLoe0;IVl)~XK4BK?qgX@E+AyWo1kV@; z(EB_LalL=PRg@T!ms1m z<2fB^3(cMzcI`SQ?7^nSG0q_sE<>Z zH@DoTtV1mI?4_$#jzK04o;VQ~i$zmZb+t|^xeh-)apCf`7gP5yE^pjBk^Ib|i^E~J zzgRhR0-<)>{pR&`uW`tI{c`(o|Mef6FQC%r$A|m(AMQWj|91CfVbXrTyIOeUB>!A* zuC}MsOAeWwqIErpk5l9vY^^wGDG`@eebvyS+G@*e3#bzcj$Msc6KMcVGO4pka*icX zj9h8#J{iy^YOB6YNo!4PCHf*t#+ky@@%15BL$i<6M-$blWh1G@YJCqNTd~&00#IzA zYL%)a3%(OJqc9FjXoQ2%NiS}+-IGs8#1%S z7p-l+v1}G%T zL}73sK6lZ{OM!BoL>U{UYD(2n!!%3nrF4UV2huolZLt|lBKbN{j=_{tC-GAs3HnKC zoD9!#nyooAu};kNoxIo6K3<)!UR>U=e=F~v$-BQgo{oowyfCHh)%NOo^ZL5i$jkS? z{(ARt_wnQH=F8V#|Nimof+=v5a21J_~7V8UzRGg^Tgb5^V$|kj5JsX%Pi_e%M#=Zcp znnr-Hfg=xOV#tv~6)<*m8O|A5DbU$K4;<96^;zJAQZ!rq4Hh&c4PXH%0K;oMa+H1->XAb~nK7@XYhV1w6PGnEGmWcAT+AH8V_b4mem@ z-L4b{9dT%pxeT}wPu}}ka-x!I<<$GAj%(>!3CFH;G!1*(%$#4aA&=Y37niTF;jl++ zy}s_RVZ-Tgb$m&NDnN&pG$c4VRHnsa6cbPpD2AeF2Tl!{S!5J}o(yFXZ`{z9_)F|K zIdFhd=usyL6qfkQerzE)WGFRNI|=}tLr(Zutw{rP1h1sP6l;Vh28L!4Mxk2dG2Ad` z8bz0g0aq7lEl_tig%Ss`3$eJZ&jcO_Y*IQhcy2JHmRGEqSCYz{fOYFI2wpH641_=T z)M$DFJHftG zd41hR?%qG#J^sHSU+)jQA3%<=vvw38qzNq501XYZiPorwVj2YQTuBpgFwUA@nrYQc zAr`nV6c-8t&p>Z8K&ZWUyXZ~1k78S4U?2@a6q=XNI;w_GF3)}d2Jl`AGNWyfbV0q~ zrCzKMRR074)pHJ9rNSj9R2o)~Oc+pcQo#6KS*$mtkGJw|!SU_(Z@ayz5pA|^5iR5t znoEm>qn0O{WNtYL#yKQvW^@6a7p1hhO4t^~PSCZHxKpjBL8C~|;zpT!Yb`}JW_9Ty z^|)vkgz>9%?J8Y47sQQQq$^_Z44Pj`7o9ah*u#j@7}%n1qFRh7$qQ>ZcOOyEk|{sx zR0^X^%_gie9sZ+JfD`1G!;8y5$9H#eeSO@#zV0u<_q016e#BRkjQ}{pnl&zN7^~RO z@a{0-{RF`nP?`!NZ3$^K6hxmV%th?5^e)cMK+9fTSPdG=hzr&h0`!;@BGua^qX}R< zWi(z;VjftKtbe4j1pql4rA$i}lf`CULr7CKOB5sK{fyU>Rx2!c_@2dS&EkA6V@7Pk z8(N=G&FXq{_%j&Wo}(D<)0z(r%#!Cn+^Z~OlZn> literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F0453151.fa.gz b/tests/data/fungi30/rhogs/HOG_F0453151.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..2b8da2e5e0536ddef735ec90a9a962af3cea36af GIT binary patch literal 231810 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�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ȚiCDEVan!^n5S# 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

eJBZ6;am``AP^8yj>r9<8-|WoloBuKVgveZv-B6 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 z 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 literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F0453717.fa.gz b/tests/data/fungi30/rhogs/HOG_F0453717.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..1f92bc77996a6919607aacdcd4114f3686e13bac GIT binary patch literal 7527 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 DCcWp> literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F0455853.fa.gz b/tests/data/fungi30/rhogs/HOG_F0455853.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..70c65ec0491da8fdce4033e11c0ce537a2c8c728 GIT binary patch literal 3474 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 A9{>OV literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F0457125.fa.gz b/tests/data/fungi30/rhogs/HOG_F0457125.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..2503026c5dbab0a5c09852d6d60f29a0eaa24fdd GIT binary patch literal 2280 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 IIJh!^y@j583Dzab|TQuO;wI$tmP)v zXDkfOT$rznz>4Ce@|k|j)fsioi_=!{dt$*!*S#){4>{4i9;Z$8H!B z4J%Md^#ePIIQ^)oy3c?Z3G5~PB_*YELHd8BnpV{9XEOprCClA0IgP9mKuOcX4#>8x0;)RY69&UYPqF=#4_Lb{xbT~f4z9Kb2E!

1A+{xfJKvxa%4 zcCY(TW^!#$LGLbZyW2OP*qNKTJUgC2^W-y!0%ES}z)fGGn-t!53eT)S(NL;cFE5Bv z70k9v$s)&6*Q6L(St?9iGg~SYK0xV^2GEN~A{56GvtGbGr;RDfU z!A{PhA+CQ~mF~9wS}I%~p_@!YD?}HWXPIq0;sNE&eM|{Zn8&<}RUr@h>AFt3fU1w* zcM4xTlCBS=oTJoRQBFZ&S66p>XJ)e~OraNNYZM8~DW;@d(5Gbd$WczbaLmjD{xCa* z6XF-TUe8jYaS+Bq{SE20k|b2nC|{g235Up{Y%M@D?@G-RVll!5DU88(Va;AiS?{R} zzu9(isqD&?3yNo^bG))WOwHtx?zTA&HDo_+Kp-D!}67d%~zTa!5dbgPtf1*?O{ExV0EP z%wxo2nRSB%mmAbO!N`ZuOVeLbw1!3XbWw&8Dj#2#3lr*R?q=q|(nZb~5>6GlC(A0&QAz?33yg*6JRaMO!Wm0BvLzyBj;wfso`}2pg*Af<){VBC{9$Ze!MpzW; z1+urW*SyBDD?H43#;~*r3!#>P>h1$ zCa({y105;~;0Mzm);sem>8XBCbK7IHk^%(@EI?9=vIAS{HPc zRDc7wLQ=J?*UWhBHdH5sX%+R{Z&U;ytrU92G%ef3NHZ#)n~5t1DR8nOJwnW_6B9ey zR{AM=GhU?^``3fsKLv2r_Z+p^GgqlNbiF*xKY=>tJGq|-9GRCvbL)sE42EB&Fy+g% z3%m4}8H^DYP`WEAOh_#9ozZE9tswYzwDW`mrc+jz#OPC>(|NO`!BoSzya6&oH!|yB>w7CMd&Rsf^Z zn@@vt77XQ@4&a!=r2YxRI@mFapsKG>kxNR|eLGQIr8ZvmX>{h-sDIFb@nAPBlazDE z#NMG!fMS(i3%=$G61tWOkWn9UDCfDESxV@%)%QDpwE#D*f$dV;fMa~bM5PJ%nWoO7 zZ-~&!`gI@p$MeHifBcm`@TZR-zU~A6t*`s0r^pSBc*tuv>Tx~os)Y>8*Z3>)f-rjd}bjrMLppfVRE0RKo1Cd!a5^V zlXdN{t^>f19DTBY$RIvF^L6hiiV2gbZ0X9jHzq(ZMc)X$EIhE;=<+Ebwo#j+;KUx# znQ43JzOag>Q^Qm;xx1X)6sPB+zl@;5#(swpdV>*qNprunfjz-tQ)!%Jzfe4}DE0Wj zc72MM4eT&81G9mp^mwy@g%~xlErF2E{37%o&xRb1!EZoJL4xP;;4seJfwrNZs{lj) znw$`9(5tY5sRUd6+nc;Y28rPV3#DDzOlNC478vdj6v9R;&Ik(8@4HW+wl(X1FQ74f zoM%n$ixup|^bE4jtrsT%tqXkC-Ojg)k%CQXRk(-b1t!5({Ln{1EYjhOjCBo{1soiG zQnjfcuDgL7V2cl^}M$M@& zZnP>LmKgMok>hIYiF5F0Hx<`Z+Y3E#9qZ*mm+UI_IIsKS9# z3Pq}wrd7fdb0!@yip#<-C(Z3uiB0Lj;lX$*cOf9EG{SmD0vb8CLUnk&NAoXYNh!<> z{+?J*V&J{r4Qe^M5|3ppc3`0{wbq2GOTj7>f+WOMB+CVuCWM@nF?29*0cEzJjmnEG z5xerhXr%zid6erRV{%(j-c_EN*hr-PrTS19qxzB(*lf8{ zKkm-$Y;5W|X5<~^`@^HhIfTgAM>_CNx^$re()-BZxQejdgqBI=vyqJ39PXMcP#LsQaD5zAFppIz|VrSI-UShl_+UGj0irP$!$7 zwtcB{#)UxA0*4Xs6`W3$C`(iT4@D;wCEisj6${D=%|N&POt^LFSuAs#jJwU`A(Z&_OP5B})v)=mqc6 zf2Xx5Q=e&3F7~ulVCvQE`n^dGUCB^^AFdUb0u<5pC{*-}9p~Y5#pgKljHlBKWOZ9l zjIjFJvTj3G+O(yqR`hnr4~nRl&?ubFz3PZ47<)f?+LEZsLc|vQ_CV4G8>g}Hl*(*x zy`X#*gK9>_b|HF2O?`2M%6{uWvqXK+vN+xa8`u-zwGcOK-y79JHB1Gw`l6ox&=ha@lI$Z1Q4}etu;mh3#}bKUz;?t&=Vpn%CJS zg?K<7A`KOF`ASSHdp&6d&ddxLa^J?ZnlZZGCR%~ZR`d#+$CJqIzzht3JInWr3VM?l z69OekHkD=i2@7g0H<*M#Po_unT0hyOj46JyY9`Y`=%#eHZ*&50NBQ$~0;i3k*=~0UT;kE6PM{**G%MqIY>kX* zS9V)b+8%A|&6KWh=)G7g>f2_%@}bCIxEARh!w~Y=bJ4LHl>`AZkupB3uNo7 zOStbDPdtMXm8P1-LiMetgiWKX6XCgA9Glwo0OcDDz|Ay)_V2^i00gT z74pR0A+RK20HiWDmu@)(%8 z>C^RtdGLfFct_2KK#ypM>M>{Xa`?drUtLaTxicfrf+M@20b=!8wV{v!-Ls$=zf~2D zx4;^-ayYU~$rB{<5!QV6?GEh`ThNIuIV%89Gb3wkdZSzSV8-iupx*1Fo}-@!bOi+I z_f>hhUwSP8?VHlOQ18``z27QKS?ZkqsWXj#pG|U@arTU1`tCy0U&CV#h4lI~3a7+u zbM+geaN%^N3BeGZUFg9L-4ms_O);L$pA4>C4^tt=K4uAQ=lk2`a_34^^B)k2wg+;QWC<_G8_m|AWB^E3hN`ky2vg zO_;9R##o2e~j(M@JSRWw#u$SmmOt?ndMzgEWFDI9aoFaH*uJk>=EdbU(| zILSwb!-y!EN@EvqVIAGKe4ctv<8tLd4tTOfa+*Hth7E~|9OZuuT%fGZs-WDiLo?Hs zR65@v2}0Qyyi^s7aq~cV!fm$#NvN6CUVUPrK0W#sd!!1}?)Jjbg^96>a{9S@n&wBL zOhxH}oNrv`sF2KLT_DPFiOq9R;S~XIM$yLOE_y?mSH<-%Doa)2ZS?d6^Qu`hLQa4n zg2F-7KO~il8x{+PKYMVPVy7&SpsKmTGf@?o`6{whIiml1!-pu+4R$<*}h^$v^Mnx3fx@LM5ZzkR7xbM@9 zUQ#~eyT(G-msRwwO3jc4OgDNRJVN?GI`O(t2ww*M&Z`Q-10yivcw&Y;8-y!-%|!C6E?ytdBRA4m6soncQMVIyuk@ zG!)adQB2oI2^RFw6oPZoFK4@&G+^1EyXO+hi8)}B>xM?<}v*21i(3*T^s>e1=W z&M_4vLc+}K9nLs@+uF^cMwM5g8}70qXvwEbT@W7MciaM6JrVi8?+FzJ1*-Y1t%aeOmeWiSvaxZg$w4_7ET>z3-Ed~ z3#a|f5tK2B_b;{Vwj`b8)wAmN#%vKbcDi(D#A;m?erwRg{F~(9{35n&rZ_m^lQJH) zY$OMhLZTNA$teHU^-jV!!g7l+4N^5qBH?|OqKLI2AZiv)v|SDsyc3RTVOJDVv4klp z;5?~9=*f5dn|z1gc1-lJ^gpGjKGB~UK+*Jb0+1x?hOmGNg_`uZ0s^J zal#{5(C})yuig~#z-Bid<9=f#jMM#)UCF_#YS zd!+H)Y_NH^v9ftRPZcZX6%S{Xne;-u3ZgCYymEOnBE@^sCN&j`dw64rPj94|9_VX8 zd0*liX9htNv;P@F1c(qO8lZ}7D)WJd(}8j3{iqP;HJKi{^EAg{uk5Ps9fI#dM%azJg0HDHS&Ji+=J@O_^0!)U_Y-}TMvFmqMz}0CerQKfV4RvGTSk@o}1Fpp{lX-vb7&|$3xrPudLhL#yswV`f zZsm7<`GP1+i^Z>ZymoeCk9bd}^~uCO+?T%4^FA01P))b(=DMrk8rBRe15qYcSyY_s z)=b#F?RD&~>z72Fpxj98)KE_pF5`;Fmd>fOr8>H9Ti2=EX@*TIKq25H-=bcQhd#~X z%oQKcUZ1IkJWC>OUzL+R=9~UrFwvYMw7h|}?a7jy3iYe$t>d(~7OVhX^t++|c0px<{&Qi$8C8m`P36oHMs@cTi8}kbC_=3) zaSp-nlG%LMho|%B81f13w1EN0aCc)Ry2Id~hJp%mDsBe6DCy{%u+8gpdwS~18f($n zbl0f3|31`mbOqhy71dRrWz{A$yjQ(A8~Nyb)PN@7LDiHX*X-env>fQRV@^IMey1<1mWk%O4Y_P%^811UnCx?I-@_dNkpnn|a>+v)_5fk6) zBdxn(C$xn}KBX-kTeuAar{zT2t)2C}b5#Jl^w?mT;}hVSx{V`|>j+@$Fw##^)QV#= zmN`ObIJ&c(U(Uz62|ALZNQ_1K$TfEG6dg=lFewhraSKzdDEi#*>VoXknst*G3N-7c zH*vw#5-i(uUUc5r!CP4@J1Tssy+%DORR*Wf`RQ$uy@h>2_bDBBW`WQf$^4NP)Zd*@ z=El>aQ?=?4?aESD)$f|D+@0SYO?Ce-G!q~Bl!2k)q~8{C1{`2KsxT%ZDd-omZo*xZ z<@vMwmvs{^3(7>0k&>J6LR3|;yK-^OYeNL*HNru(|BH2#Nw=k8%7Tj8OJ65ep*pTR z`wq74&7=j-YLmLzni9K9RJSlE3PQPlJ+K)F_q5<&(u^IMktz$U(vF@@WUMB|pL9d;Q1n_B)U5eW~Hcj~}0<1|7MNpMSD7+`sYnzsdjlmxuB8pZ@kf?*9M$r+@y# zpMU=SH~;yMfByNO{^fnMVf)XYKL6&Yw}pj|AHM(T2U}VAP6z16j~px2JtMpfjK2N+ z>4#tJNVis;UWl*xZS|ln73;ZyAB zufjBMYLwfF$NlNsj%1DAVAN}HH#8*W?3D%x<3uHPPh`@gnZEcLg^jtR>Lb%|Z}>UC z&l6X8MggP`KBI&UyJLX@k1NuigTQJGY0vO=6_|yUnp^e?*V9TyT=hRQRp~oZCp$ZW?g02d1IELM;j5me$z*w`7GtbR>m27sy70~awmZPsZ z(3;iZIE9w?K}b(dbbDW>pP=qN@sO zD6e{~VY%ZdOcfE3PP%p;Z9AV9eHC^~tZfPAopAkG!SAu{b6^&?=%Cd_o3AuSH*^b5nSn=EpOqIMYg` zPlCZ7vJhQIIUr-FI}vm_h1bdN?uOk3<4tvc#`Cy%cM1=LRdr@zXq>Yyry#iM7vbB^ z8bP1#4Ytv7U#fIi^JZ(tR1ORE#Sw)vPak^cz4Tdw{)4gCbQlt zMze6+Rg1A(s-nve{4p?WUCgjGobH$yT;GZg!TfmoSK1p7>JN`z&FrFTQ}g4&3sm__ zXG%yyuzkZ{0_%;ozoUK>nRKuLBQHOm@bcs7Gn zp5!M){z?wI&KwyPQ-dXh8YhGO`0=o!zS9Y0_grXe)_HPlkgU}kOgtuAEq(1EtRCOrp@YKVp4ma* zF6%}dMW-Lq?Vvzo2VpAnZaWD2Xh=>`qrf1dGlsyeQ7&u;flcmHztbrYFMOp}fJPLi zC4mhvcon)^OTocc`A}t9f-Riadu}WtwEI8~T>+?}z#As|rI_c0r6~SXD-@MLolOcE zt;29T*bY>kgR8`rI^mn?)`VzMc*a{~8~qlqO@!Wz-~s(}pmSOoZd~0za^nB+VQC*e zzy9NQ$1IfnWwG?*XB%yOFdElSwuSIF{{A=l&p-dWKmOq_U+K^MZ|k3b|L_0f&;Rt7 z{~Zi={QeJruoZ-VL=*(P8t~hKiyh%ocAwxO3SifiJz( zeRaKhp!&)4E(o+kz7f8~^-FOJ^RZi%Ki$MTsKR5?sJcsqqHgpJ4!#wPwzxn9Hl)7x zmky%J*Vn26+v594s#Xn-MXF|6(LszGe(0xwraP$@u{*!_eNHuI#Yp^8jtOglckS>LP=r{Ucls-|b!vDw z<6+UDt#l_9OBtS*TT?`(a}+$Ozp5j{51+sK|A82z`C`p*SC=Olj3{3EwsUYKqyG{t^ zptZU0NZ_GYTqA~0gwyugW>F=ku>6kgk%%#DKRsHT_4L?lKoMS6lc%pvm;jkJRg#Kr z$8C_Amwmo(vrMK>4{i6gR*VbdvAwMocYY`{9kyA{tb77ltD@sBcrod~7DlIWd!{d* zDd_U76(7$LV=2Vs>6x~?4POpH`w48%q6_ms1Oi!c@8yf%6IP`-=h6u4ECI5-obthE zn8Le0{e~(=VL>dMXP_$|vVNlrQ*>J^K7sZJ!x!B<7Fi~qmaf>F+$O3yO9(c6xmQKL z%IdFfQ&B{0xhc7^X}%4Vb*H4{qdRy(E_SydNL~j^No~o(it4t4jL9vw_ft{K;mw;ky>gmq(`Qu#*d@iAeJRB< zN-!a=UPd|D9_@h5IL#?B3U{gr1op;~&E0Q4Bh&#M@2G@?8i}6t@VheS`Yyz&AXy$O zIU1~+g6s_rL>Dxvc|X`PoWS{jSd6z zHyyJn;B~49ko9b~uAAss|yp_4#&IP+dszvdnPCUhHB%N0E;!~&HV zJf^dPy_vLGk9!C=jvQN_Hj{L}p<O z*8M_cKxv}bTqPb#g*s>Zh)KysP-ImJcIt?!22_=O;#P?swr}?YB8$g*yZcnkI|a6i zSKYVWx=6z9!(E3;0%9jt4mwv#lE{rKUxkSl#eQTRmCF8aMu&)g*Lv)FYQmraA<C) zZ46k(8@~|ZWn{qelB7?dU==t=FDuOGb=pr_|9YU;C2Y^a^S*BoOi%atHzA$6I<$G5 zN{cn?GvOUC)Gee4tzVZX3rk0@C#o1Ur|elr*JtqMG{<(&umX{&<-i<`#iHV;s7hqP z_9j&!(iQt<)=w_<#~EUGK7H50fKobA^B7O10~urCa$EUMHxmFXyk>|90!h#5orUVh zy6i|CBV8)Eb@_W%`q<8VP60btx;G)AFyF45C3lp{^Gb-R8NygF#)xg@pi$4(wyMHu zo7oICf*WE!N=B;RD7UOiK(Lh|3+V`E1pXiyoTHZ>p}4FY21L}$$~M?U;1FVxddjQ; z#IM_VVDzJMUzKvF+JdRKO)m>4e7ORwr}c4gnjG^ReIR zEsv$BqBdO2H~-Uum;olUY=a_;!IWih2s1dem@mf;S+k{YMlYCem~N9vvY!yFo+*pY zOW)?*$}Odn-A&lVqH4hDW{h3iQ*S*yI#hg=NiJ28#wiTPQ*L#-6?)Hnv3>=XM=)Kx zsJB}3z94`Xd==vM?aBxe4>NFbD8_Z2(>mccYubW$Vdmn?%JRaqZurbxbYWSgUT?E! z7|5A#Evr^aEP$JxlheoB5ekj$f-a`(bDognZ)U2S;3<<~7EmuZiedNrgj|*KH>p>B*TpU)hjY^}6&89un}#?3rO*W84$X$mx6p zjSy~&8SKA}$r+F7DZuX8g@{TXTIl?K8M`~oUgoU}(kb4q&H1nK^0&)}um1Qec=^M( zKYjS-*T3$6244Q*)A!$f{Cci3#$A^Z=Nyd9&8&GPojUwOGuZA?L`2~|khke!@1}@2 zjeXsz9}<#?g)Ki;Gi+0&JKQhAgY905hMB6#L|NYJFY@ep@fsNs91@u z9C+Qqq{rgooY%D!@`cU)5}9YxHMB>rwJK$g+m4Pbup*S^d<}g;1&+{k#+TbZ93LUDYjnNy-tinaQ)3}boVUNd~2hcR&kE@PsL10)}-|zJf${4!#dgE7x z2*$GUard3hOk=T7*%*Seo_0X>?J8{j-A=8M6wcU>mkQz$bxy`{ zO~;7{x^gixh;&62?1`a|3Zf2y!ZoUiN-oxy-H`Y`J325luDUDivLStrM7bi-7Oxl~ z%9OeKExY1($7ESGGKNBWxbcDuH{sNGV3WDCEQ}ogj3Y?d(Wy9)Lr_T3t!IoP{4JEs z65|T~?o-(U4v4*;OWJh@fWPf%bHYh3$|nRh)F6Uzqi)t-#Dau(gXGw!Q?Q=~f;uQ$h-dpfp+ z6PH~1c|my<#7kv z6hcsr?{V80w?I!6yz$po%VFwcOb7Z9demnSAXV|(CWmK7aLh5*Rh0{CHtVKhq}>R1 z>q_k5xWG~>ZcYENqF{ZnkUKpBh}#}bwLG}GlIQjrDxaEY%o5a~CH*KwA1?_+9lc3c?}~7g*Daa`qOEsq z`@009Zc&4Lq=H014M$iSzzAZLY2ExSe2FFu8i?#=U=1x8g}Kiu+*BS3#8J=*1i@%6yQ`DzBBpC<|nSF zy`C!PRLlt}+0wAWaqlNt^6=OQsJcL1X|T@4A!;S)8=qSrX`Ti|wKMDLudQBeypU&S zy*(YZ9cP|{F;FqB5&fw!afy)6k8RRVnrWNfrWq93luS(0RT^$+<+N*6-oY3zKnz9m zQa=>~gMk{nfP0PcRy@}k%ji)aEbe%g{t;dhY>c$T6y~921yvY}ibxN;XvNq-HIm@m zx^g*n-&6-0miICS>31l`nm6-J_WnD#K3WQ}RjgFFzZQ@Bez8Vd=; z>#Y6TPZb2K@PaLbKn0_v7auO=0~Ll9k_m zcw-U$y|4RwO6%Jn|M4Gx{`1d&`qS^f`ImqF$AAB)fBnlJ|LOPt^e;9!`1He%24L6r z+ke=8_v7bJpTBPOx|CrB;)FidiVRztX9199<8GhNs~sFvNAhYf^~#^^cefV^v_SBLIH zW>fTCGQAnKV}er3^542`5bJN%0~?abRv)kqt&e=_Ur-`>JZhRRZX2sj`#xlnvogm4xsuR5s}%^U8i9E6H-Rs{9b1maaZ%XYqPB4Rw{p z*e(mPtk{3EKk;xo{Hv3Te+%kH-prX?cIW!iPq$5RCBK8t$K;t|9oURz;bcbFO<7QX zTM4Fjd`$GvRJcL#C~xHWhAJESM1GC}#pA__$COrxSEqSF;;rVjpr8(+R<}c8Ln)hc zaolCst+IIo+Czy>Dx1pvaZmDuR25ouSXFJ*a_6!yRyTyz53@we#R>;d3B(So8xmvF zHR}z%)eV8V!M+qdU(-*Ych0sctm3;&?J)2AkzDeSL+@bn=|Vx+;>CSoq^p959cLYt zYoa%KSnaU%8t#OLJ?ZCWIjowsG-f4-x3y|a2_uAj9itUNLm`pCmc?#|vLFs(%blKu zs6G%*M+wj_d=%=qs@`}<$Yo-o&k9+F$(v44r3vq7_X@}(?x4ezE}dXSh|@tHUzIvW zNDBM9pa+XHsxOuhyfQ?@T+QdDWZ|-?{HzQS*~1F@?rf!vDPg&!5EqSAGB;@ToWy5&$1yz*aQRzy^?dW4PhZWh`kp-r9 z@8+!0bw;dgPtMfPbKl6lXUH-j2w&Fv9671Qk6v4_W6_km|_B{@lzhVl#a;)ef**lpU7o zPB_H(eYJ7R9rg;V9e#@~pOs}{g*x2K*4d4$QTgIkH%wMIu>ChiIZyU}jNg)?j}J>ZThRiAw6|Nj}89O!*4m~wroXpgOc{)Ogep2l-ut~iTSG3 z$<>7uQ4qoIO5LD*NZrs(i)^mc4J##?)eVeA&OD)^VQM+Z7q_siO7Sn*^rvjVY+zi1 zyb!1M<5f1`0TG1^I{O3Xwgl6t-4IPaFwJ&I-Rk>b2WmK!_O*_hKKfZNMWHx3bY$tR znrONr!M-W8xP85_bqjF#9GdA{x}y==gIBFoC>f4vduj%KV4Nkw!)(b&(KMvN6rEHW z!hc3g9%o9nI}onNAr>)2pV+KdQHboX5EONUzIazyQ!S-L-qWRWyw-C=Z%2_`)#Z$e z?dGd3eb~2d3>y?J^maMsEeGT25w>cjB*&P#lDpdeH+{>CK?F;3_~T zRu9b69I0Pcxj&8{(!V`_{OXUt%Raf~tN|r-Oqpc*Z=sBKR?j)htEGg^kTk+Uw-$851)S6K79Q2@s|#v8Ls(8 z>8J~=vXU(Ux{1bGM_*3or5+c)j;I=8)~B)&)6WUX6I?&D-|>FkQC;01&D3_U*q5;| z2Mk37(_rX0J@z9eaE|2lF`M^G(w$sUYe>6;&vu}K1f?L}5jn}8RC^fN1t!8eMRV^7 zZ^D}6jb*IlRDDaVfvO@>0>ylVF4)-+FjGPeLgE;^3FCU;Qyif!ueTcE?ZF8YArN0t?H zLNBx+YsnnN3C0Ojz>mvUhDklWZ-Ksg)ysI6Kv%3hE9;JXG7<(1fQ}C_c%wiV^QuH{ zHd1LFHT`kmqq^$(=|-|xnQ6_U5}EJLy5`6#+s*^`IPWHWq#=~uFcer7)fGz}yLsfa zQ9f$06WR(pK|ufp}~r?k{eF!nWQ(usa+<13#JoMrWf_r-f*A89+g0-&F)8{RQ(M6(Y;j;PF`e_${4(3_wgO(UwA z>LAOCi)s=m1ZmRqfD{(<5>H$8%(v?Fy_2%<2Ti5%SOY;?Ubi`;+~nqjvFTL{$|6a( z24TS+?d^1rI~xyi7-?A#l>uW^4Jjb>uwzuWPkMCOsa9Z&tdw{n6=fDu3Ldqt^i^*` zyN36M@s*XUg+FoFbCUvYa*F+`Tohw21#RJZ6@6W3x1DKaX-iqE*gSScrB-K4*sG%d z(5g|5bcyL1lI6}E%YE*%QXguXSapW|giD1_D-|P}Cl*2(l^;DThB2u2YE4X`>(AaZJ~_UoUr^dR@hpqgNLdwhp~Pza|8zoluM_9|5oljY^$Azfnf( z_t#rh%o8#}+Fil$T(@F2<*I|D2l%U$&G?JAeWEt4JEM{#Ssxu*ENiW*F(Mw9n7bky z#aQ%dr8ibTtLm;vuQFe-a9ESn*DJHm!vTtCofU!Nm0o%fDAp6*b;h@JJiVLsrI@N;uSu6n(3R*hzu;5sZaM8Azw%pPTX+8-;=^%H|EDxaMV;eC?Fiy$hvw! zfwGy<)yyuxpnW;ljPJpg6SB!BJf`!d8_bd&9`!`;sw-sweKk|BsuJP!OG)T_c4I<# zT#nP(&KCvzf=!G7XW*O^XE_Y#rb9=V_@c zG{mZF@;#5eh<1<0|AOdM_`MP@M}Ih2AztOI@R#8t4l?7MO3!b<?-|C1#wg-pngaFI!N-u z{6@gAAtCJDrF;{bHPwxLfP`kTh0k%mnBS|Z&o^4?=yew3vaD0>tQa(0fsmQ!Tx_b6 z6mMEPYu7zeS*;vWz4ORX1y9$xtJsQ)B>FFOxtl4cAda}7OHo1-sz7xm-9Tx5Ev9!g z*L_c3Uxx)SQdbBuL_rCKPyO7@^c|b6l!CU0n-vl_Wr|?yo+^eFp#xI=5fVDrNH`oV ze|`gxzGpW{V%Oew@BZ!f{p&w|W%usW4?q0)&ENj}|7&*dzWec~PrvXdone0Ix2_iy zCf$LDq}vdj$A`WlC4F4Ti$J|>*W7j;s=CHgsbRhL3^yLx%cSFmN_avhZmbFnwy%kz zTb#oKjUhD6H$9TcHt-INCtgJGWghMB?sg^M7n5~|a=nEi6u6O?Z!;U4c>V4eTgLVx zg0r4EP-Wz%Fs|ntV7UTG*JTon0=dd$Bk68+GKmzGGVKi-!yqtd{1{sTjT=PWW=l~o z$@vrf*e1n_j*j20>rInZ0D8QWboD#AwBY@-Lcv_{@pTbWy0O49w(NcxCXk{dI1U~N z6jRt5otVW4$Xm06C#A?=wkvz0GRBsIBkiH+cI(Q{f*E;^$|U;wh_&;;OJ)qZABhL6 zh;hMM(4E?#+39s(Q2`2nk2xuoA`^rMAFkEHw|eQw4Xse`0(umB`BRMSvaks_qJE@; zN?%OM1X+h;dDimko1jTvR^UmEf()KzMYI7g7L;_GVvj;hkILsUm%LcVb{Gfu!MQBj zjpf0))6=oV;iS)~D}r za}^9nejFbl0a>Ga+`BnwVn#{G@G94{k{s-t`be5A4z-Tz1&-#2flD8w+E!kRv`pFZ zqL3%FO6+Z6keb$GptAALkmZxX+g&`Mw0Vl~Z{Po!g_I$b;#}!_kKk zdkKCEKPc>#L8wrQ3Ps^^H5G);@2UC)+W}~=uy1R)v8_n@C_vph(cRR~OD8Vw00m?N z52DM}VQ{N1xg+!~R4#7e`4!KjBv2|~eW{>bgg1wBTEq@eg;eo*--T@j9KHVbfjh=F z;)oT&-52^Wwe--_@;z&UQqO8HgrPscb2L#>F6A(>Pa8A60oy|r6VPyeo< zd3P*(8J>1`*1ya!W9E7jIsi!1LyLs}SyX*3%2ioEau@2{*PBkSFWCLf zInStT7MoG)*()xxCFlwu*Lms8_<{agjza8;;( z43>5Ek@U;In!9aXnHnAt0umCKcOPgWu(;v~ePcqelhs`;Y8|4Z1tw;A0PLH8(u_C6 zipCzkm{30*12H}AXlzk3c#NUHx{z=lz#V^Iw-koXj| zKI0BuaORVb2HOQeNlF{@#Z)@bFI^%){7`L=<5b=7um~^|l{)%`*{A3=mxej|gm%5Ejet>Z$2=>{ zI-JE*VI2r774$Q!H>*-|ZOBj^apBer8(UNWX%ZhJP2ux#=}gBGhdHx?k&=8suh85Z zvQM%kHJ!*&t$I*vXFj^^DE#buLBB;$5tHdoQ`*DAi8o&LuXFzR_VI6D3Lm=p8LxhP z_5S0)t8evx@87~%JSvQ5AWZ6{B)02!KPcc>{#RO3RK)IV52h4mX=)g zAo7XG;ouzQd1GkY6>`0u%yG}{xnQZQdS(!Q&+YAfrs`k>Dz3+rZr+wI9vCW2_&vLo z?M{0!iv3fsbJZom2#z6dV$W6o)rN$16ntK$bwN{#q#ptU5EUStQANS9gcP@wu?MVm znOW;;aWqUJX-DNw8m0|YXz;AZyI03iA0Aj;P+jgrj)8T2LOmH*Rpro8AZxSmB)pCh znn2p{a4u+hE4B*(DcBXzl0vkfx6=oDKHYm1WsgT!M)${HcD(X7di0*F`9%+7U&FZP>ZCrkt z%2L)qLCo#-yKar{*VWM;56=UN>$R=thfn_a< z>``zucUuYU1}r>}qa>#x53_M3nG>ia)@^FLqc&)@v>@4ox(H(z}{cEZ1S_x9Dt z;pDnqA79>;*_#h9^}nB)FE~|ARh4aGDvbN4-y$?V9cNaVB1=h^gU(*Bw9QaNaJuYA zoOEDLB`2X*p{Q)H%&}MHA;{ys0zx#ixw-&!^)yfw;5u~>Vy@dHgc6u0o>!=IV^pFn zw+Xg&eKklQlWpP4%j%w_;Fa!U5xfx=TqbvhQ@QoZqmI8Y@>;x3bKd>DE6y|eQd}-G zY#rq%Q!_$iN=3U6C~Zpxbd{h{r+Gf&9u?&~+Wj~@35DoDHXRHoXvYxY%^-KBq^X@j z<-@usTvfK9BctfKDqzz!!EDD0^)@!a1G^C(f3=`oqR+oh%J#GCw5?P}&N(L9N@ya7 z<-+0b^rueP}6rofZvj^aGnOd^p#5IYPlPkg>!qy0*BSm{`A@p`tMblh&b4($w zGrkqVx#e=b&k8`g!Z6@>H+1}jH^bP*WQ!2`)dc-Q*{+@G*!7}x+lT*HN@o*VZ}`_< zLGf(SFG!zUPZY61P1Y{LcHoHKU|ORp>Ill_k^hr0i9eG{qY?`;o0uJ`7s;b_EeRKt!y@!GcP1%6GJpvO{P!k0uKxa`( zP5Qek8@*xUPVfJC9tzUFMN3ZUG6`y{U|97MC!NwhnjdXY;1gh6h3;;meu~-48ZSM+ zw5>j29<6{UU>kB!1=1#T=T3+IZp>9r1fB`rm%7L}ynNA5?!uJUq^* zE4Ez+S_Ekl4vsPC`O%GZ=q*ASVM%2O%5KP%>8G%xEsBC|15&{b6@vMTLS+9 zUHA7N-+h*9by;+%k#JRDE=#S)f~{70xU(FCLA{j{YFzi_q^M+dS><@2DpM%@od~D; zZ^qvJ!USjSgsH@G^U4CJYPSqumWgFPX@UrU^;3bG-kxift@~WpOgD!eC8U(oDOi<| z{bdC6uyuwQ-lr#HK*VuCW?kV4LC{6vwjS)c2)5k^{KD)^-GQrD`hq_sHnt`{yD zC9`%#3wTq!R%M{1F!1cCt#HQUL-4q;E|;|?{69JlJO-PG_;Y>r^aTbEE44KWP*XubUu^U<{ga)E#9ga$85cs<&83h>JVRDTZgE*T7 z!v;%de#{g%W<*?63=Q=27fg9<6hhF$-!ZjtLqnGlTUD*tELYaCQEg_OxJ9)bp1P>h zEh+|a*gCM7TgpPNz?2R>Njk}DVRle zr#F4pJ@DIKW5)yk-wmEOKVXBfs`#t`vrUlcV3`UD6-D4BpE`~P{D6t;26u`(vgon3 z6^(yOm{xo@Fkg);3NI^xrq+x89{xE>po%&DM2aozQE=~yF5HUNpl%otiY=!~1Dg51 zB1ngoudho(Y<5S0R;7okC^OtR0=tR2{3{!j3PX%CNAGkg*J8?3qWzdZE`Jx_ee%aI z{Xgi3JQD2}Z{ENEVyxr6#*g9syQg)$pZmI>?yqj0czP%!#F!7;U5tq7VdE04W#}Pq0m?AeO zpXk{$5%eebS|Cc$%fJ+A_2jwxmMBo`ffjs;=*FTj!y#`tn5arpHL|%nk2xd?kP4y* zfgapn*2`mlW{RL2tHMT5%}(?g7JWctu4RxYkqYwY#>P*WBIa2)7N&?QHs+FH!cZ-3 zeTP^jAkO0aGJG0fil7_Irq<{>CE3}wBkTlf?A&LXG-A!LU* zXi?U1dR0e8RYDIBzV_aIdQd{#E~txxgoWuXz`v;k)?F1w-Pgeg*`}gPp}L0E13{MZ zBPHY(`C&~T&D1rsPVzY;#7tpq=HV6dpoBz)2}O-%U&bCC0_=yXm10T2W)R8UW2`tS zJVRs9FN;t?QWD$RFb{M?-N&xGUaSuPrE|OMfhtHSm`CNY7A9`EAC3ueht4wudhB%u z#Sn}D#}*xg4V9o9ZiPcneC*E&l;jOZKVG#_C37K|3wpI|qEV5sd$j6CD8<_o_EL@r zy)aOm4xFhkR*L+2Jvy97$V1>Y_d1i&E zpjG%?t~%x@c!chHFv1$(457Z7S>Y1~(=Sp_!~%o~R#h|y9)aF1$QsTG3o54mI50q% z${jQ-V9IEAWu^V5g&4X?tlFz8qD>xEy~jhRO9{kpenp|gCK%-`fyC+7Moc`GI^=Ct z4Juz@@~se$>XbpGg73xW9jp++>PRs#p?9f5*b26~ish$r-YFEQ91KlnXPdiK)n-w- zVPBow2Pp)jH5HY8$dfMu^d1L*bZ%*|m60A){S<_M50oI?&gMg{ZV#$)FH~%&f}yhU zp0g-ebFpTyFiRUHcWK)mZ5nC@bf0xcBV=;u-Rm*MVF36kEo4WSNvDwMQ#OMZ;*Xn6 z&OUT?)e9BpwA)D#!t0+X{Ca31$QE3-k4Q8&;Mg>XY{$|{A71U7z%{IprBA)KoG!(n z^h66W4A4(EXd&)F3n75B0M~|bg>W35o8cyXw1`PtOqmv&&Wu1n2yFzVK1ACC`-Q9* z6JS@+xPXB!#!!0=!wN*t*wZ*XiYuy(y?%==9czSt1dfe@lReGF<}sQJi*jt8F+Dg` z-}@DIh)NxI%$~Ik)e8EJL#>U&uo2D$(?h2gKx}-lLk0y2x_Cp6)DU#64N(EAV;-#Q zWCGlGHwgA<(ChUIa6?4WBQo971heErhWmmJ%ieLm$_RoYLTuNLRzy>(Q4WfGnXnH6r1dza?x{P^WL-b5n9=X5*6HJ^tLR8g{oCgK!(lB(cVf24`{Yh{MeBK8*e zdmIVxO3%s(X2i#M&k8w;mu97oj6-!5{}9DgSc-Tb^;;Hof3QT(xY3Opq<5$PR=`8R zhnh!GRxt|tv!3nrU%&tTzbzlr+rNGNZvr#s7k1-bzI^-U#ZUe17wb3w@|$n}_~N^- z|LKQck3q{%K-2&6&3ERn+majKL3s7m6R&v?E@qb7Kubam_+Ixb#i$%HH!>=w1&${i zg;>B> z{Yd5FAym95UENxhYk$(AZx5-;#=vGR(=Z^2iDodw*8xEJ^scO`SoLby1B<@|bs`)92l)vMuL!Ex4_+1{XO*X=nS1P4JTjRpl8!bSfEl-qd8A zS+MxtpcLyjV67ux?r>3`2^T8n0SDV^O3O8(W7)b>fK{@eSo~8^qd+JMqg5CFVy>jG zNWzb(lI+c*;W5@y3Uikyck2l!FNHJRSejR!)v8129XW@saNXS%Gr-2F<`hKCY?g$C zI?FMs5E?Q^u%FYezkebQetfP#Neggm=6GOJkMN|zIC9YSLGlO+4yd4QEbMXhdL3R~ z<_VyJ92t|K4OOCxQyk)xj;_NHI?}h%y|=I@AfxLP^ce9Ec0KNJ3-y6uh%7po6K!tA zx(n4uT0OlCA8sh|?MU%Lb}~FSO#@9+9kW=O0Zlz$n78O=xO7}y;ghCm8&+Pcvc-An z0H>ZS#&5_o4DJ~yHRfr{=Q?_&ihp`faaCeM^r%6n$LrjkvtVk-bsvjw&^uHXDvkF( zG1)QKZieb495;nJWnu)}1UM9KS(i$1O#o^@mA^ebQpbj(u{tE%+NO>EXar~LZ-C(3 z-5(uYO~KZAXFam-?qK{xFz7pfaamoT&Sh6Rx=hqLaW}W4!7G6NEr7}9i85svEm5ml z2H~S+_j(d5n>2dxvoER?c2p#mq#U#9we<{}>`?X>NKu_a4Z1L0t6@Frj>A1XNcKfM zKE|0LU}yb&Rmx26f>N9r66(laDvj=*XBjN!y1Y|R+?eNsFA$@9dUb>ic zIgwIhHov-Zd=RM|N0*Z=M~6qQ{xQ}7_Sl7EIummNJU9=6WqncD z8NE%_cdo|aCQ8E)Q62+j%IL9-#^$8>t$<>{d6qSwFp#3|!}<`(M;TcvsccZiUO(X(uYIUC4w3w6rLTe$jS6&{1u4KHW}Kp= z7VfkqETvMR4{IzHN{9~~FeRoZS7=%@I^{!ss0yvc^wilrocAc-Fi^01ddmfYC%FBZ zDCO_YCPU3m0AnHcQmqk3XS1`Z#9g($wKe;ZJN_du) zcKR@PPg6gcy)ni8eVEuO%nGicy4Qw9F4k~Ln8YZQm@KsdiP4?P9*W!evK%`G6UvRb z3E>-j=o>2}W7U2y8=9I{|8x^D8O=<60|)Wr^ggjYVf*N2;(Qy4e&EocpQlp?vtXdb z^2M=+_y0zJ{LAG2VXi+a=zn;5qeVpYU%!6);-~)hpM@5`|L&j6y{GfTcMlucUw?dI4mcnWh8ALT#S9_@h{`H3G5G^a>Uw4 zWlKd4<)M~yjoB7qdrP|;W=Ib6EWPZ6T+Rc9w$D(ghm64tNuQ~(?)I?HO1?Mib>X3u zACuC>S}!Dsm2TUk4GId~X@mOyOjEw*ZM|ndfoubBLv?td(Bru6 zv-JN1o(%ojt#))WZ!$)Ei1N3m%{!}X^FX1d7#ty#6zmlqAe0iBHYh&W2)@RcRkg9$ zev>h_XB2weC=>!>H^zuL1;LVb+bw_#qo_XhrrM# zVDzH^`e=_jEIoXl4t*{tD(GaRn3GpsS3yvCTic+E9D7JBBwB&DXQ54Q`ys3nBCzpO z2-+Ajx6E4XLosI^8W0V;6hTLxy<)VPR2eBs2^26_st-R|Fep1rc=IAcY>KyfUAVP$ zWptr}0YRsA2ly6jQ8(r^n_j;4D)aTyd-Z`1DH5RigU z9^3A6FTwU@h4fkDy71;NY!AUszd6x2n#y4E1?suY$m;t83nMy8FPM zjmhakA`(i+IE?YU(pXgOVVSAH3&s2>tZ~hi&Snw54{=`|^ebR)#v zbXe(~4@1^26qJ>Q*j+z5Jvt_rbM%nt55a9#Sg|+O3{OLJLuAA#f^pZxL5 ztaKJ`g!$^_yN@3}z8OREw=ZA4dh_x9i(me_7wwO~|N2FE5&rP?cQcqZ{B=~faCjDpV4sz`L?1PKV)0$>QI+h z@zhqCuBghouL5n$SUJ$MO?ujS6P(WzS$Hu#Yk@aKN+uyYm}yR=*3Q~6bV%b{468I0Ry`yG znt>0>M+zu4q9XGU$Vr0*%x1nRk41Fk`(S28!DChPhAmHBGdHO`#QGqkUZ-?51{(aYDh*^Dk&Mfae`o3-FsNg) z#@bzu6Xu>YHV)jHl>T;B8@+OL#lD4X#cyzXdln`hTfQR6i}naKHX1nXm~q!od~H=9 zob~)C9J}5|KBMQSG-dDxM_gE8nXKPDq$j6DPn`-S<*@gZf0^O5Y&VU#T0OP-N4@xI zxOUZqDa)k=#%|CbN6KT*i*kKI@XR zKA#5O5z5bN9%i3rn0=0>tOBJf7L3JuO_35@xpg{5N$=Z=`jBObA^D8zQblG+<<+ih zZce)@4PEDoCgeibN2%XWI0_DCpniuVS+qe1m{o7`oA0U-|MFo%M;3pzu4RRB?{n5tuO=Jx*dN@G=lNTj5)Zpe z?Cwyz>S;5E&H8i2^9`n~>F|$fa~3^FW6nP8qje485BNO`g+(UDLd1#1+P?yoiR)D<(;ZFgh6-_0T3p(bCr6th- z6!KJA;dJa-7uUhcQ!4`Sjhx3M-mSt@LV|3>>Ug8RMW$G0ZoLxm1qX9x^HHc^nPBlM zUkbF~hKCpl;>ODK+X?m%R#h5NbORC40KDBng%MOpObvU`r5L1Uuo7ZpONo45yVto^ zR-uO;m}aAq>XfJzRpA$?@SAWuYC~(=m6g@GX7ZIw_A4%-Sr{JA?TASzTOl3ymBb8A zcWKfq4!RABjP1CcLh)E$lmmxTXm><|J{AvAhIlp#RW8Ny^k`R84We|aC(b(b-a!8< zEi!FwoI(v-xLDUf2JFKqREbG(o52_0jnbFy>u?Gc##iaFyLJJF>~IPlMxju6b*m2Z zBQ70Iq2}Qf`n=sq50ow(XdV4oZ;=Vd6qJ^;(C_4`t}Uuzn-yfM2rcMNS7hmfYDyMi zxq)cm6qdGE1nxWTtBZ0Kr232NqHnA#zF=L$VP+j9pcm7HN!zW!-hr}=)H`6;OhiKV z{n28IssoN87*jf+wC;N6%n1v3#Bvnec3cGno z#t5VfVk5uyq{5Cn(pq(W7uJ+1`1COKsUBvbt`=;tN)a5U!-H5C=8}d&L1M99;mr`I7~U>QUs;`yD9NuvJa4!ZJY5lhqT5E(*!4ZUXHwkh1KlbPPjP9ARo1 zX#=P%gNlp1B3?DE3YP-H6rP7!jnE9aQjZ`+s_XgCa}fp~khFYpylfvH|Mm;b&et!$ z7&P3U`1?P(r}^&xP;c}1|NZ-4z5CqBz4^G>ynX^8&#arH|L!P)Lc>Z_h0Lkyo`qUy zEsF;~PIv2aKX#o$uP3Ik0yl4M-Y+|4g|h3;x4Ao)MgTJ0>zk*WSPsVioB?`5cx65J z!2JBQDOUvI8p}_|qjPx$pU~tGYV5+kx7Xvt$DO*#Fh3tY?y8bbbhVbzB^#!(NEn$q zI+sRe+mpf~>OpXZ^-YB@?0&Gox&PR?WHn0XBh%wAoCh5hbLpNdcL=wE0Q{qOc|8W` z2D3+nq^tt}K&0ZSc`0BcSTp!vI8c_EAee{cdvc0y z4wBd)qhNpzn!b&L3}ZYmfG{0i2}lS|ADT@j6ORhA$SQkO*Dpg@<{1qdmOk;ar%O<; zX`{u$%4u4%u*rsv^KmabY{>E`7!`9jHQ5ooMP&}f$rT>l-PGJ4OP^Ixj=Hm(hkKAh zTdMee4IsEJnVJPX86CdKBJyB(l@vr{?-OZp1Xtip(>f0o zjwMn<)Wy-#QIRY_JTY5WhF7UK0%$VyyP_{Z(LM(3EP@W(_o?b2Is#i`)bfq^tZP`?W$y}cF$ zY8wMny(hyogBDR^vab8Q;9PR+D6*)>I8V1`xdbT$12JJ1Vn9TpBN=mEm~~TfsvKQZ zJQOtd={`dE82SnDeRQ@L)W4P0>zJ=YFIdowXR%M0Z<#9IzKwnA@%WGJ3YM&`T!K`i zPD`b>SyaCWF6*j!Y`PZAPN6nYeGXGj0npspg%<=A-q=QSGgJia5GOC;qS%f}*FEPs?Tw~s#c6As;&318EPpqb z^t-e7%@V%e^oc?kwv;pxRMtlY^ExB*v9O2~^wH^ws2E`)-VrHf zU!6Xw4%!;#qPne2ipvRxQ1fZD-;oa@5a6by~_1vz{<-9727JF*-$dp2SnC&EtybJ_pGOa z0o{0eF%`am$PCHYl~17zh^#BQ#HIK}k)~2C3JoKJm4uNI@-oMcAPpWAN|p-6X6@Bc zXfWMVjJMmpCa|&WQW26iqd_ydvgm$NG7p99wFlM?5rsl-%<1=wH7ZaD$v1QhVbgA7 zsBLI$&3be6JymZsG4btLB+y9$J>#n?eH)^YE=e2RB?-OiEfQfF7*xyw+7eJ>4wKUbWD{@mri^G z9_!ag2}MP(vc1-FKh8$PVf@wER68a*Ro(9132ZS)(t%c(GDvxtVeX`|5={@Yl#>}F zd(492U~^Keg6cjfYmP-PR+tfG=sDN(La-hC@*M|2t9-6Zq8FWbiTvc4S{TbCW1_<8 za6B3PL}rXuX9Gtg?{9wlPpldIq8`W&{{HS8zWA%JX$tf24{%On z7$eHj82($^KRy^#?_a)o{pxd;vcE7bql8pUV@7~&RbOWFI1#k*ajKZ{CD`aLvSdv6 zb;7{0B;CyIYRfQAfQPOtwi6O7zTRkO=PNZX9d-_^#YfCwr_H(5oO_9g60gb}!A6&r ziF$!tR2v!*D25Xv8OFQ7M&8z9rFDmDREDK*-5Rqp%vcU7L%&Exfj^SdanhYo?8SOe zN9eo*#e^}uTM?wTwIm%_vns#NDXR=bKr5==6vDbT|8y8${=@6$zWCykKmLMY(#tpR zpNMcj_jP}jVUqsIm;9tRpKgG(p*ohp-VC?(Cf89EcnDGnOir>wNYJf}S=K_-4ues~ zj2!V?pQ+(#D{tq}j9Bn()a%aflXVcwg69JKi^|25-`K#h3UKf|j?gj?Vo_1mN=4{L zvE41BE6?9Vj)u0N^Pw?|WcB1Kd> z=N7q6LMk>b8Ooy{dR0T4GsSs5eq_Z_mM^|f2!an`qT@-n9-%Bf!O@l9@J&J0tzyEW ze@aRiOUX92GcxuVt(wr!Z4DIVqgJtER^sx@2SbD~g zLRJ6`@yurMckh<`(;CPSt)Eb>k8S0VtO6)e)lT19gW{lfJDO&KWHIJdw@|lwbSIaO;STJ|ax;OFS64)WYK{+prB8P?2P@>B90)w-gAF?-eV zq>w@do)reYqK6A>hFtBgG3+*jbA0P^nnxj}M-%Mi^mvr=jkRIyCliAnh1A%A)HfJL zBvHXZxDgkDy2G4P_MBATERDSnlsV09rv&N9fG6my8QeJ|`Z%hcP!T__xH>&?I%|kmm^5)~i@QK4>Ci85AnDTm z)i~nlIr1#^Hc>W7^kJfElLMbs+a{eGRj+yx`Jq3Lb&yB>7niFAG!PJu$S9aoLLE36 zAB-QPE{48)J7QGiYpmAVJ_IKhv;V4#Qx0$YauLq~9h5|G)CVXK)uvWY}OkE7zflHhOm0;79R`zBlIE=BS2$SVM9?*;r-kO3*^9{ zGqGbpkaPdqgdJFnUR#*~7=MHzsZD#r3L zDt&Bd;;DF5Wj8jI?FDIN85^vr+)|ihXM90gRp9>Ip1Skl_Bn!cdEhHwSz%@F$$tu) z;8Hj)MK~pzFf9pZI9)BB4rLC8*aGUx4NfHizVfO~ZYfNa+ZW0i7VpW9#xr`_v#OfW zoPXG((wt`_>h?KOwttY>^s;gHr7ev+URkDIRC9T{A<8Sm^rMHN*oM5HY7af88C!V; z`F>G_E6$!Mde$5fNN+VEB(dc-mXpKGUgYS^AN0o3m7a{`2Ys7?h_ZX5m5BRer?Y~M z&f%0{a4CZbDr^D0aZ6p{04F-V(T3c!Zni4evQ4Uj6pd`Yl%uSm3la%svruB;lIic* zlWS(kby=9?a)GwL(29O%$OO@FD+NhvWZiOGZVh)D@_LJcM!q1=LtCOB`bo-8FzzOW zS;pAGd@2}ty!-IUAAeCW@Z+l&zx;K7xkBb&ARqX}%UAH&{=Iyl|6D%M{U{&UK9LVR zepWtk`;W*6njs(Pw?Lor-^mAt{|)ki{YgGBJj(|je<~jshJ4_Ropc*gud%0FJ`i~g z+KS4fF&*n%&KF}Z^$oxDAfuV?$>i>`Of#E0Q1CM_vA9(z4l@FwE5+3q_ z@iY0r^ei8EJj(|zPx688Svzp(2Tt*?&<~vKU!fm3afALs{lGNUhkjuC3-kl0^RLhk zoR+^rKXB@Qg?`{v{tErT$^Eo`;PL0^2Ttv;&<~u!41`! zN1Pbc{q1;ItO$^wxX%?gvC^xe!ZR;s8o{oNilVVyIX}qdqpWzS8$m8NK<^4f)~8d3 zfc>IMKtHx#%T-d`l-3o#7ezk>ij@UmTvo<@vY-dd96rl1<=tnlO7cT!a_(L0*rJ2uEk7fcBciikMlWrR5dKDAFO(WLpo299zM`<5vfH&`G1iSgBfTINN(4!H2}p73sN$4xu5PKSDKPh0 zYk}uA*yURnxJuCR>RAPnl*PvA`@o&GsOk)=u$pf6G3}~-jHyNWb+62MkC0SBLh5N_ zsgpAxe1a$qdLT6yrbCqzG?m*|h2Ds2vrcEIQ_>fVJDbxRbu7%~Rw2M;Reh_%PAXn6 zZ^9Qt*YVVI^@4)99s~sGbRJZ~b5}Fn^Lc0@gf+wc)Wx{gW#6Yo<))`n<00t>sOF7= zP3+*H5*do?ZB}fnTq{ObVF|iLZdFFq@4OXra;$Zjv)*mcZLg>m&de}RRkOlMO)>5g zyxV8;0*ZHnV{Qrvz;goEOJ|I2mNq5@Y}J&S&MTd}AenwkmlX&vh>!Z`mZslSP@`7x z#aIqgmDX0aF(Jh2%?o~T8JE=Sth5^-J_<_fmmZKp!xAvUj&;Nj9jOb=SI=(k za-IMo{8Y9h@6`3>gd?ZisvwY((u(fqm51!-5mo`cNvMf6UO@$uu{cppd+AEsaN(zn zX_4U2smI%knJrX!?q>v+?Nc7orQMt=mob<`qs{0)3pDf)eBWoGbOF3l1sm-t9O1iO zRK47V&wz3ZPIWj!I#_8m(3m~v;q@ zRt2gt`D27lXa7Wx#tCarI#)iBF9M&D z)=p~96R-sp1*))^@YSM~vMYhbCsCwrnHIPE>W*2^)PSDHo@X5ra4MAdtdFDbHabaH zw;r0dQkl+-&Yz;^f=@jfnHY{J5|j`x7%+;MG?Ji7#kDOU;ih6u7*>%&87}5YAywsc zrjbNv=3$tvud%02EnA*f==$_fh!M(aMF4l91lpIWBkk)VLu|dN60l5=nN^0DeLO|>D471J7dE< z$)M=qhv{rUBdnlWX_h`#JD1yKMW5~33am<%$@`h$Q?b{f z7={fI+Dx&>!y#a%0vTKvt@}g=JN#|<;*&rAybkuOS0CTMfAPy-_n)ML{pyRipJ{Z) zp{na^WZlKNyxrq5^E@6SLhnze&T$#Kk%m>@Fd<8T`^P2lg%pHd`k5K1)hFFZ&mK+_ zs=7^`89!mKC6qkPu*6i2Q6>pY>xEL9qK>k_T+;hQAyD{b-NsHL*jl(6+H9Ui)0=f8 zys_vn^^g<^%y8Q ze>8M9c3%`zx>H=96i?7wB;a2}vbmiHnUo{1VpxTzA}6b8;4$bafHkxc1R>e$`w@@j z#q0r#V}k->H7Yn8l3ljX59$eHeLbuU7t>C>74&I#Wnuv<0fc3^*s=Gg6JqJfZ`3AO ze^-bREvf>{IN42TO)9J-ktvA&nPW5LAaL#S%27$U<+y~% zS?;`)GQDnw;z~VjiaS0)GkgE4$?H{cWbXH@tf{WUi%yVC4~-H7j}yg?)1y>%>S>jx zTB1&;A``AqW-I|#)afHo1$7)1KeIk<95c?Y3fvT$U;?)6R-SQUt&gRj;R$Y_?;Mv9 zHv9M+^QySd%$Af_1?{ke1qhE>gks_v+_@J>En!Rx1ZyeVH>O1j(wGaP$+u;5#_iIx zV`iJ#bVbw8W(7-djtZj`Jgk1D{B1t002sFI6io0-6(9VwH09oesRt-5Fa}jX95~s# zt6c+*ncJcHsAsl%&UJ4-4jzi|jy;&wO$IjV#ZvEa!!ZRemqNYwblEqYHxgG5iQ$XN zcE2<7$Do;3my#LV!m2;BW4U5%93})R(P<1irr_jx4cLlOEGRA@;$G-h=}aL!Be7Q01FBqqcz;lVXrSlv}NmNSL7sC}i+%^k2FJxu{$y)MMj|-QB@t zk!f9~7qjaZ_O%7{f2e?0Wg@(z6t8r`8fu22M3p2ozEtua7Ie0uYPzwBpz_;Uf;!`IKj0m9KQWpfnuiWA_=8!HmQxx*ov#WL&_Sl!2EjpJt2HG*^ zYn4S_s5c>I)vUUn=MF1;Zn{-Iv$4%SY7{>6@Nn2_2^2ZID#x;nWoO|t$5-n19Bi|y zDDKmct%#^vj4eY;;Se#URtVVWs^0jF{W%3ll{-Ua-3@#;T>@ws<9q#-V}^*M0H9b^ z0yF$TqC;X5K1ob0*9qh>hJz6^k&ZS5nF`hS5`(JV!u|Eh9CW4)u6T}I!}`8niZB@l zN4fZkgI$laQEnkx86dn4Vz>^*aqh+{1`0hP-B2;9)~VHRw+r%OVpxYwqL3Ew3@l40 zS_j-8alkW7o0TvJJTnT6y1Dx8Pq#HCcb!26A>diXX04&JWY( zy3#jQu$)-zQq_0vuyjK}Q9W{3e7|z0>w&O^&FO!m9QijG%c!>m1xZh z(IzVy-$ZQ{RuL8F`Nvjb>L~HK+pYO|0aQIJ|yoI=z-SP4`5R?bt|AyAeTWN{k55a~Tw@S6QGT8U}7rrWMr zsFR_Ce@FzSNU4;@flqLIkFghhQ*v*K(P z>Qw}oqpHgr^_pcuszx2`DQgpygU|FrvvEJ@S%)F&ER zk_#TLsD}%`OwSA)9cb0gm*Pag6<1%q!NjKLfMPeTjlM=Y5k(P3@MPJhu{(xsE^yea zdvP8(O!q>#9w!FJ#5#8*8b|L@@j~ZJ2iZFpe(3#L+d*G}Wv!7rKf9#yV${s-U5Esa&J7BVd%QB0A_=K!!%d zMdy|0=Ml5(i8eAR#;SmtgcVh!3vCF|I*P0|C`i={z#W%RvcL?@$XO*f@*7A|7{LiR z%M&O~)rG6)Y80ke124MTIvh$#hV=qd!!3G=d*93|{K9Zx5n^ilf?WtUzek63jWXPd zqQ6lHLfYRC=J;;04>=OFKY{$}Llj~<5$jayQS@KCBG0PyQDZQus~-(E_o;%e(YFo9 zIqYL~*sZ>(Of(LR6aHO=KhBWXZuikGlRnLn$bMEB27yO=YB!ar79^U7JyXw2w1UKwR^O* z0`4pqB!k8c#=BWhbK1~&k11k2)1OfDfyV;M=^Ob?bwOvn?ZDV*AF$Z~n~S2S%HWbO z0h}F99a`(ERZLW^=ba!bL>;!oJ4KveUb}VOb$*_RIvYq#g`>T$lkGKR^bvMHmWJhf zIZ+1?WGSlLxR2<{DTi0DgDrfTT-o%Nj?MF9U^k;*vgG{~%Ib6%vpz}1xb$G3K(9GY z*tiIN7OX>uUMCGeM~iQp;Vfb6p(>9SqzYP^v^A&BF=Y1NKQ9~F+9!{x;6**mY2bnwzu;v3{v&GL9x%Ydn z{n(IGem+^hSSXZ&A1?DXG%UUJ!yNp6yC`=J9ea>-9KO^#qGgT~)0Cn3PGeKKLs(H+ zerF@wV>DHV;`;#3%7(eXrt*QlrfJMhmQ-&l1{-oWa#lvGr9g(#Z-+cA3$p0FTYRrn zq*2`qO6}-d`As1+`c<_G z`h#7MFzNT6f0Q)hch6{PTK(!Nt~1un3g@kQg?ELtSx~vAA?dDXf|#bBsqM8~gFG>g zo>|j~aodl2n$s=oz6vBX{S7Sq9+UT>>b^oIR0hu2i`Pq76gaDwGg#@(6roI0osbY+E8&XN}^SF z3HGi&!b8QqKNBV*Q< zLMM4STX3aqx5t6_Am>6nIP9!mc$d6^hz97BrN%&7=0h^Nmpj;G_zZi9O^` z#>YdXKq$8AKh;@f)*Kpyl7g&GGP;XJncJC}@@TpbOjuPO>A(c`W5-T-J$3{l3mXC| zsPlQydk!1o4G~@MifrApD^u#bG z#d;FhU6oN04jY=4enqme=-ad-u!PWte`m6dg>(o9Njb`ZLs^q_d2(yd#I$?g;#_q+ z4UPYXrcF9gTvuT>)-6PeVH)p8^-Z+vtT<|)Bve@*A>_?Nx)y=t)n2Vv zNBf6}p?fh|!6>)i##5zkZO|aBN-OX1ozg!xC-Gl#tXIUcsFE`ePc<1-Y9&CSiF#gK zz}gck+p0iDn(8&t~~z7xmW34N;K>|0d%#;PPTq}F0120Lpg_6H6ipS|g0$4l{#NXpbg zKVzHm|5=A4=-BWzI8X_-o_oRKNbuaPnA~;SCe_J`gza!n&#(qopN&8g+BXVQRJUgZ z%l59%gc`B+w-~Fg%cL(2mp%8C!fA)DuHMa}(mfXpQ4wOJ&A%y!1*kif!=)=HxOh!y z3g}rc$O6&1@zGs&QK=Gnx;RiFqQU*Px1_)^rVsG?*NMSI;&^YX%F+sV97=y^$FU1M z?~7`VA04QSqpOgaT#v2ZjY=ggGcv877FoU$`7$6?rf}h->Iw&Y_JFe)){Nc?wcR!( zR=t43I@c2`V27KY6-d-O(e*~@NR>lIBKbT7mg@l`D?yfnDjEIVwOYXwE9&CmR-702M9S+>KoM> zYplvcFbr3y-?X2YC0RDx`lBdmW1U5htgk4vDXA(`G~9lcF`JJQg(t}`jg5=_-uTs( zFiOv*X8rueULBD+HmrAfdmCa}@Nq}_&VMq0}`{Y|d| zPo)X0#ySPRsx(o-S}6;LzW_anc^FaAA7bV+q_qyc&;6FxvO8PzLd+=m=mVvSsE}|u zG7IL(fOXT8R`%Ym6c-irTg-aT`pgj5gzOxGuh%YA-){a+udr=N5yvUOPRl?a>#+6K zd%eA=l!VOAVCg_{Whc0 za}vs;cc%c{S$^u}mepF3>jMw@4F$oY&&%GI>AIG?HaUi_mU2M36zGQF$sus7r%gAC za9ZitN5=-r&Y}&b;C02pYFjtW5$J-x1z=_v-!Ms7eC-yn6rg?Z<(B#?QJZ z0B>G>c=_^E{1bF=A!{hesHCMk_k`W|f!!OTKv3)0)`G~@ZrrYNeo~-iZ%9dXMhAK< zd-&n=xv?j)0nfL43)Vc4)fEM5b>PC}Ms>Ljl0bt_+$a~)6_wQ%y=jaMZ%Cy|pt^O- z*J`|OLRyBjj~Rxa8^4I+zekaBw;?}E$Yww25PQ1m5UL{AqYO4ge_}&S&vXby z&ggve@VO7xsR#c79zZ_b9v$=t)lB_D;<-Q$JSOG+gZiPQn4(pjeGngv05POEcL+;f zxD_Kbbj87YNH_0c`jPm676EQ8=%>f1&njR5UV_N*cw^=t--h?w%TNCJ<;U#)+mq(< zo7b;jfAPi8W6BaXy=vv)x@W1?o zP{)fWp$;?W$Cvz<7b-S>_wAz)nSb}~w>k`C_y31~eeq9UfB%Q?e)#ntzWE>e52)U~ zef#n~?{h}K`pcJZU%vgU*CrTcF^)72V;*8Sr5A?(oW zLv2|{X<~}E8obZ#?1u0n3VUHVd^K$2-I`E9*KaHU>8)}EE+?Z;L5#kL()B?d8a^Mx z((*{dtnFyKkPGa9f_bH4-HI@Ji1wP;T-3Sz%x=zLIWVH#x;z;k586;4BfQbQk9))T zn^I+LuCZc~#|Y1tdfk?=`d*nph>MV*1tn%5hR1sD`eHr9byKAy6oS0EA{jy^I0`uY zk4K>y*GxKWyQ-VD9M`-V+DVgg)9rt(%m!dx1-OJ%&~>NYQJp3jx#Y_V)o%S0e-A~) zDZ<`y+rSv`w|CY@O2LpX+f&G&D{SBs;qPIUNRQIznHnKXcV~iOLQvR6B>a;~b4Jjv zzz1lzzemClsN-Trr8(g?rBbtWmT4+2;l5C6@^bX17mIkpx~n3<;uJMyMvN4=$l5;? z98j?ns3Nv2&ZVrwreb#ZdK^hugFOc(F4TqPUjN^wTfjlZJTvIS#_qQ#Z#iY6PzxWF zDXei9PLypZ-miL0n|?Bq4d=F|qU*IKWS0dw!`S-Y?kZGCZ)hKHs7o+q^K~6n=+scG zVDTyq>*Ebx1XXA-j@=hLA}G2A_2#<@t+Wd04K`KjrLTU)Y-VqlJBr{V`y0xc!Z8-g zp(;>#cn4Zgi#@x_U!D10k42bE34c+Ux(`jBrfb2T%p8?$&x?;p9CxD%J(gVvt{GU( zI(&LnZNo)t&`INU9c=m=_8q&j^u>aQpkJ$LR&7d8?dn#kV{cgn!n7!l>`@>rb=rLy z9ZuMCbnz81%;0Vd2>?-xt^KB@1AdR-gSr1nyo0C8s(8sZ(UfeyJVM~K52CUtDrfL+yl;va@LwAjrbcVFfDrUlz zALVEo3c*Yu^^DG_<9DFHfq*bp%gfbLx(iWs-hItc@EAc0eVK}UG$j??3O88~#a*;n z7y{4~Dj4U{g_sWkZlvm6ag*;!;m*^ujds!X58KJoyezcSS>r8*Q>#+uUV5Y9XZXl4>?2?S1L4m?D~<%idMRv_C|>geV82$+qU^c zaX+)bO6ghyVveeDge6B2$}m!Y51~yKICSpETA5-M^A1~|{Ox)eQoAiNG}B|*=9!f; z*Y5hWPeCyNe>)F{F|DeJgo5|S&i^n4zq=`_#Z~X5NBxP7i}UCwyE*loAO3bQYLuv1 zJiYzx>^5Wz9`)yO7DaVf0v>YXqEqhaf<%_{ir39i{Ylljw^dJG598>=N=a{aFWcFQ zl2*iqb25>>r9+Iz*RmHnc>&?N-uH}#kkPTt0uk+EyAicc%1_U4G{H?)_YG4+D3tXo}&a^hk(TH(8a#0Vk(au(sf^a7|PBaz01jscJx@RJbhwb zDmXF+-OFu{7*rhCfgff*dtqzQfSV2_blu-6wiyb29NxzYal>;Rz4V0xVz>QB{K^Wd z6$)$$J#LuAx7PHYP2=h6SXNzGG_cvrDY{F_Y|H*E^lbFf${CiSTe?A5Ioy;s%x!cO z%Mw-4#0#s-XNkJMd;fQD-n{?hk6+GzzxnjkO@H<3<;S5)_VS(n!@Cbps$@U+b$^!2 z-BF`s%x{Ui{0i-;MRNSFc~a`S9)|SeNhctCyd%U0W!` z5qo>nnfY0ZY>d;C@^t$lu{vloj%@6n zvD!QY)!UX+q=h+e6T(fGsVUK;(~pKozIssWWBF{@MfKq&mzC0W*-?_A+YowA!z(#8Hqex9Ysf*VW7!Z~7J|)Q;c*h|?$6R>{)y1a4jP6;xV69u(k)ON zh=S>^j@r^u+a95blW3{S?DK5h|M=79hAR@iK4*5_Hf@!Vhin^m^RZ3jCDT z6nzvJ&jjw(Cz~Fq_Sx>kjt#Te2dc%oL`l@x)Sj%9XGnbApgL8iuG)2I`8qV4=4&jO zZ9_o=>X(JSG2R5Mtf5b4hId^R^qq7h^Z+WH3)aN&V51xnhGVypO{zQ11PH@B8-KUo z2RL`CH#gL5a~mXLsK|q|B)H#)py)M7yx5s%@Lld;^aO zdI%8&VPvDXvYL^6gwHY!Uezy$P9aZN2dfIoXMt!XLnVr{0Bb;$zr$4KISDViZHTxU z7IcIpIi14aCj%?C;Pl{>nJc?yn47IfYxq4ttgmhgFzfA@*I2wF(?Zoc3juUwd)ceg z=|*X*F!K@`nN64j+}}D`+{+PEcY5z|6Cx`ldM6u8Usp_tRT9?A&J2xifP(~_cb9VN zv8>42?qROFVM%Bd$}Gk@Lai#bgV9^f$}yZ27K#qeS4R!63!OoX5;mj*k=l%d%8ukh9;-(BX+nDjMFlh* zaC8~Q(Ob$eTxi_~cEPYuxfjnsBKn_IhxZtcam=y=m3>^NRk1qzT?weJiV|DLQfppT zRwjKf%~T$jj%~7DVT-k09UhgZ#xIj9LG)ImvK&sp3CDuf2YWJq64WLRC>q%?26{iL zv+;XPD*Kn~cEV!BA=n9x{2uZ2eyX}kdQ13eVj{%)7Z@A$PUoh4y~GII$MEQv~zWEjN(FfavpZmtC?o~_re+ab~QLXLe|d& z;MRQ*YmL#Ru`oM(7W6c^)veyVTH${c%(taqF!9`p`O0B2-5PB~Z??bK5P)ZAcLcke zK)NakUE+xiFBYbi&6JB(;-jY_Y-PrVkg8R|5rwI8I^l>V$4{xXde0ATEzHr2AU z>a!KJaIx||R?uc80{zsTl@AR6tS^xLgEs^(`{` zX%UL;l--zJA4maHkV8y6D4{KCjqIa!xmU&G_QfxM-HZ3X z`q!`j@S8t=`~6qne)H=;>R&Iu`t>*e^x4YFUpl~f^~LKCZ{B`}rf1&zGQg(_Kh`If zGB)nqo&{-6ldm-~Mnmm%S3t^o(bpARnsi*foeP7^BjeChZq|k(nC{+*y`CZ=Eqyl8 z*g5Y01g0i?Q5ptR-~=$OIrl{oU*++_w-3j)ZfP6+UKHdF>@B^XzODv91-lQLJlEZQ@0HZZ$4-Hi!#wsq_sVfc#{Yd0$fBZ+!CCt<3>%_xjU z5N)@4RouMgU*JNb->!-mR;e%o%~=6vYcn#%u*`0*vLTG^%Qi?GCX~1+ALOh$6hl|l z@FAU;&tf}UVs7a~^U^U3Hhn&>ApryP4!r5}RIa8nJtLo*`g-W;6e9Rxa&e^&OBlh% z<)zZi((eOI@fe*r8lH^9?fV2YRo)l&e^Ur>KzIBhJ=- zS_i>vQHXHL&TTXguy~2w z{Vw|fm|RBxQl~?SRX7Zp)(|!pU=^w5gF*)eQ z!jm=?TpE1OoDSvhD+m#xB2|zvQKjf~VosJWg|r|A?1w6z7<^Zys5A>J0ve_n&2$`) zS^GiScJ`pGU}rtqjw^-P;}r^UJkXDX($&T~G%gFawza6V)pxJ>3|`X~hAu{@3Dw8u zf$-=s;2p96`imJA*kl!~pmg9n5Cf~6L-E9Z*Eb!+F z-q1n;Xic$DH({big+|NFQ^gOb2fAf5qKl~GK|#PFvYV4kzYm~08%CG zZL|nn3AHhwV!=wU)Ix+A{uKCp*aJXuY`9PqTzCT=(zXdGUb!_T5gj$(v6-IANY~rz z<>U7H@o&G-|9bP`)#!iy#NYq9Ez-ZD#r5qU-u>#cp}gSq&}a+PC;RAb(WY4ZI3`1) zZKcpjas6hHli%@&&%5C7Zg7zRcg+G)CXQNc!)d2h@A$K1O$ zZH`=5diVGhb!kV8?5;ldC4@`>=>$@FnuIYoj1EnE%&;RQ1HUTYuLTGA1ArM9z+$1e=b99G+E!n{yPr1mFLG^%v$RgSm4${rMD z1<8WG2l{ME^P)Yvj($dX9)=aljPkjx+4BCdF5Me49>D?0ITh0GXMpw?_e6lt`@G zt}ueAUjGZDtDRBDs;tfC$h^9#=zgNy>DoOih=GklD#15%s*N@+9yV#+FWWn2rC-0! z!i4Z-?(LmTr3m{tKDBC(*UlvNQtV8!fR|8?5eQq_r5DDYU^`RS#b7K-cTU*_JCjcX z!8?{^bKakf{i#hWOstIlRJ6kUD7G~eUU4kb+hf~Ya2ruvTA~W^y4pJeM<%u}JU&s( zY6$0I0J!!lcwOiGPu4wr6ZsB_diyYv%xbC>VO zOF!f(VJ)#R*iREhSDkj>XhJa^?e&bRk5GEAD-H1D!qvPXBy`aLJFa$@dlOF}>46kJzq>knXNfZa!&h!;V*#Q5gsP7F%(ghi`AFV+A{^2pp5rFFEFd%)oUuO(#-Iv9vI zM-bZ3yBkYyQy{!`eL#JPzT9cJ%Q!Fn9W-@x$r203ynQ|UIV}2{_|n~MC`KkH1=MDb zBnP7|cZv7WubGx(M>VFB3fZ8%o9(Z6+eCJ0!VD4_LU2#Tju3M{#!@hXTDwDrB?X=Q zd?RPd$k|!-kakhoX+MR0Un`M9cN>dLv$(ZG8$f5=B;C;UA&4v6r&UQ^Un+csnXT@k zpeU;Us~4nKWPc`%Y3V8$?_$gfg{(lb3K`dc>3T;RW4gDrGA?&mOINT;;X5L*Ms(gT z*LLbq)ZpRaD{f1(VALu`eopN3=;|mOFouiG(Gaw)3oFfxVwZz~Is|l)W*MG_6;%y< z6((HWmawuoyds6KZzZg*OS*-aPSI#lGBfin8_P(dIcT*h!||D6;z*Ir6_){1lF+a0 z-BRIQ>@loX5P4TB(QZZo z082#$7pA-E5-H{Qf#4ylFM1n_!NTt_hMd?=n{5?x;OZ%mlm+(9Ct%u^T@Pm6`YQI2 z_kCe{LOd3Z@=dK#tSL=#_Ws zaZ-4L<}yj5Kr2eOk5$K7SKecKCBB!2Y6EQ|Vq*)nCf$?n%62yC* zJw8j212q>txn3sLAq5@o zJz!69R<=Lx6b_c2T-Fz}=b*@dpC`lLafK=Brz7xi*lclF1L3%t%5p(Ift@KGPs z8SSpd#t-vvG%e>6!=)d=nq%P(303Xwem7Js`aY6gm5#+J66I0Q((~n|GJ7dFFs}pU zjJNXB-s7p_8^8JCm!E(6&ZZl`$Hw=QuG?Swx)1$d|I2S5!iVt3 z-~RCHAAkQZzkN{N2H@s@6}0`o|KV56!~WABe*e$EJ;q_*|NPxIW*l}de^g;a}8Q1DSrg`i|AafBQ(j5T|O;SR!D%YEt4nlmr}a@Q7KqUuz-ou_#0Vr73c+nYyorp2 zj!PGPUfnKn>|0lDg`-wQf=|lk^);QSKzt|seAz^(@4S59r1hrlG%$=@@#(9+g972= z*65LL3iYb~N;aW*7KOu{U5pI9r6kVyNn?cDn{PTJl=PE6Yb@gK%n}N~J|Z59Jh*HM zFjui*g;a__;_%0(4a(yvfZjlJ6Hniun2)TYUX4B-+wPRC4fIZ+-s|bw-pZSgPBEQF zhS+ArqJ)x^JWMG>Ac!ZTXA=-Uo0g9G>H~X)oVKx}Q~XXB?{0XI^i@GjFztnU72-v( zrn*vo*{Zd2m4Sqt#Ebb|7k%nc1$@_Js^m`-H(RycgTdx0mUG?V`$Y6-Mv;z2(P5)1 zzYBfPO6h{A?86=G+!L*F44)`h`E>NfbV3ji(XsLwuSA6Sx+(oVbBbj{q?n*HP(!A~ z)NivvtL)4V5&RQ@W)Ynp5!4p`P=>)c7n8mIs1%D*Uumy>s_fx4WuspASQIrC6T!Rs zNa1b@>7KPY40?qktYuqvS_k@^_mo%NPi#LA?jO#Z0SwMCdi^kh0eoCZS!HcNyM0?<-@U#KehGwazfFcZ+A!ZDgrB zEP7}n1`1C1vd_Yl8KDZ{4W>ku>Qf6ToBRp&MSWQP1U&$Q8?3+U7%z7WsQt27&S4W#o7%)U;@F*)g=P}e0FhvfljMX#tJkXi9@yCf; zpUHKIE;E(u-6?W6c72-#sYZ;tS0Q}lw{)rl8)Aa3?bz2b;d7EU{UoJTq$+G6?_}zY ziakqPG*Gu&zXLTrlL%jE=<3)^`&c;H+ji3-uU+r4k5fS_>I$w{3NDy}Gl_TKf{rKx zvk4~fdg?vfX2_#bv7p|he-Kaeaq10i!{az3K2FW=#njz+Lb~~(PPDn+R4N=qLU*hC z8GNQEjmfZxm5uHJkS-@YR7DyODs9uia*ib!M)3k3U07XHsA)+14Bw!tut zPL3XU+&NjN2jZ2^QVEYiw~Z#XNH&61dfx1lj>S5dkt#TRVMaKZy?XKEdp|z8Ii(dR zHSz7aokdvsuu~&6!ng1K_?N9zKYsV)k8ctH zf9dP~Dl66Y@BeoD-N&E4|Kb_2ckPv7*MOC<4inCJv5U91QIgP^sbxfUlEgXGxPfhc`9eEHg})<#2_66wjnzj9scBksR^Qw)w&{fA}h>HAdQFvNTAgV zc4QC#Fij@3Jr6c?SS}!oQ~lYFPkeW~SR4|6&$}=H?i{cUKFIn z@8A9LE21Dj{`BonAHM!|AO7~YKmPhR#L!>a>iZNFzPfq&|3TmUmv4UlvbEDQ!{9e( zhywCf@>O=-THKcNhQ*XFsm@ULy1luGBs}EzU{dJN-}}sdQC+P4VZYG{5$;ZyX3t`= z@!Z;tE8~`QJ@?_JBewGk_S???hW&0rmT?zOW^Lm|euE9~?FDJEAS_K;$=GlCGwgS^ zDd(44kCERK*-K@QozKudvtMS`+QWX^i~ZW{@{9a#BN+Le1oV!WlCv>q!L#XJ_PhdAxdFuFJNllT1l~uB!Ee_K(OFp#@eBuGA*$*8syO9PeaZ7 ziyiN<2`dUiP=8M3Ss3Zemq|M z7!fZvMDg)f5b8#cb!;g!VgrbzO&SOoio-0ok)#(%ZcL2K3WioKyt6;oMJ!ny5ijNi zf5g+|<>_q+w4Ht`xLLEKB!XRN5FPurR|ZS{f*vM@J_((Rhbtd$KM_e*L^_Y@&+ufX z=5!D7v({~`2uU7R@Mo%y(v=x9W7P_asoaz#pc%xObq9CWOg4Q*dzdrMV(AtMUa#F} zKXf*Q{rA+YXFJm1nvZA0wvDC{nG= znNlQ#Jg-fttAWgVFs*qfEQYmk@M{T6yN;(uw#K_%>t`DOtxgt6=+4cm^e%U2@;^N)Q5(@4Bkui3Ca7;BE zW(SIfPI{;H{u`qMoO_J|@Vsg2~$gTT4&;)fHKo{t$C! z18`Hohcy=0^o#p-v|YJcKUowycv0vf3VaV_-bl5XX=Fu9?`+yuk!n7ch}pD={H^Pw ze@&jLCH-j8b)6C8(Vgy|&YXj_Chk8C;!Q_I;BSje@UJoJ`b>c;)M2I6ec!h8u6?0J zJvU-$&^zGTvk-8;5o*O5h3C2Ifq8+1a0EOFXdMNtGZZ)$+iyEi3@kw`ZwQ94jW>|N zU2&CcyFG2OSla?Vk5U$fLkq0~MY_^sh5IUj8Je#Fm!47u7Pj38{%m-x%IGI{=ozVX zQSApF4lGX2&OG+nMqvE$6VvWWvC+U`K*+k&w0cjq`$MwIT}MMojz+x$w9gExPXr`d zVSrcWZr>=kSK2;xAs)_cet4$dx1_z$zh;|Z%AyH^B_iDk(p^oNl=%#WQc7_865?hu z_hg-yq!-F&63B8A&mLhxd3nbx?0|b)ST^q6_B+4l-l#PTrzBdj{+JHd=|W-BnR!XL z_hNdN?>64T_WdvK{`i%NpKpGAzw!2GzwSf*+Nv7@kbm7AkbQ?Q`X)@u;2*!S+eTdq z9F_;+YByrIeIi)M@_=F~R(Bvex_H{T( zFNLLe8~y#Vmol{l#lcT-vb=|r0l{|brHI}o_gS$0g(jy5PBv?%!~+e(yCxIX+#g+= zrO^TK&aHph;Js}LXzHg>HaB?%x@dr+RLX+_wnmpsk6OjZsnf@G{^n#OkdF1Ni zNlXxPRt(WE5*Z_!3^h_}P_U6w4AJDd_#$U>??w zpD^R~%n{ui-pRxfFryP@jO?gQ{=&M=A1OM(ZDeTcX{n&F4P-PX->)rHAmjWFGSUPO z47bgH+ENi@%+4UAbyRxvew2I$Oc;H!j>=?vac^jm1%{25N;)v{KG$Se(f3zJC9xy& zU_}M=j7@g$jJ)pFQQ1q-J@QMLcboq`*y?&fA}UlKWsf~FEqn67{uC+h1H9VxKJ|cv zY@ddTBI)UeO-u1n#EQkdreGZvQQ|jTSZ~Ge+YE@FhDtg2c-PqSdsNs!h0_BI_s_7f z&`w5&@SNGGFj&~o5LGVqwSo#eOCX`+6HTt8P`afPeO!ZCQ~bgF-Ikn zfZdq2X)`_fWA`HoSt!-$a(1Drl2NP3*nqA2kQI+tUHtO7o1(-{U9X9?j0X@34>C9Y zYNpIdaDY89y}xOMTX$Cvdri#s>L)AZAwQ>Ic{L;$cIUki#5#6i2>P-jF#0XFI62JB zDjtIjP6yw|&bW)NKvLw~^mXGwfr|c#Zd)+(t$+dF6q$S(Ht}LmkR3oFP)1%z&BBK} ztsz#gdY?@#AFIC;iNVR{P2QR+?C`L$js@e(GG}8xr09zlQJ3@0(U6VQIpX4eoMpe$ z$hLZQx0-slkw@l(g?wMi-yLsr1iF2@W__o+ZqqGhs=pT9M(wy#3e<}iDQTjGbpZZ|rU~#;N1;@>ZvGQo7hbsTG+g(Bb)BB% zz^awIwoR+MT6;rw-~9Mf``_{p@Ba8Z<_EreLw4W(^zFCi$^Few_~(58HuLhAzV5^F z>mUB````ZX^{U_Y>p%SVhu{C>uOI&NuYdSY`u9J6hIH&+efQlj|I5!m8>sv7=O2*o z6Q<+a&(H4Fx8Lc1zUUp~T=o*_dL9^bG+;MfWbc?9TtslnB|eEJ5#l0&$xwxpdppvU zJ7pMApgrG;RcuZulrx95V#}&D#WwGV5g~acN$droY#xIW+L%R%?ab$y*A|6v^ka`+ zn7J=qM?(qrSebu9X-g-IZO(>=mN4287v=Z9d!qD)(dmfST3f$#UrP3PpBykRrIc{a zXA=^E;I113Y|CxKRDxPM1uXu@QIplpgd>0{Wzu!Dw{8sz0L1Z2|V9j-y?-p zXoF(Vx;azGWV%JsI_^H+1H1PLN2;iAkNB#7{eGn=pjfG&`GArc3Jjs5yq1`-Tyc;* z6+H#MrW%wsC`GT$H2+gy_I?OHblfU*t0|lbmCXpniZA4%G)NrvK1>WM75v+>9uvlB z4dd$r@mJ@9AOHi7^%9k7>s>3&|90du7X9r>;ZLB(N=d8J6Jx({&U{kkcJvsjxL6BZ z9AgoOm}3wmZl^fLG)xZPZMWX@fsE32Ibq7Z9m)8lodNB{C)4kcj*(xz@sfzN(xD&PwJF~4` z@Fft3=A>h`>yXr?NAyL@jPk6`^rAGo>5X1G5xc>AHo7w_hN2kFbJp3g&h4JA;dj~( zBO+r($x)wQtW@||X?n{_wBceCV?Od;m5D<;78XB~D^o%bjW>QUY(0;j)2auo?}YW4 z0=byIeh5;6XjNqFN(H7W+O`S?wC8loLQbf$2?-`;+?z!Vw^xcgm7PB5w$Q~KOCzxA z2p@g2PdX4k*zqA0Xr$MzAIVkQTb%W+7F#OoyLb~WkueOX*qHO=D+VqKIXF{9k=6BC zGZ1SHwOura92)aNii{O@%(iOO`CX2En%9l$v9N1qGf`IyXDiy9Ztch3U_@SAVyU;7 zgO!fb&6^Xzo+$C5M6XcWmMt=JaOrIzRS!?9y(s9g416=DrvI)~$3Cr&MAJ`h3i~YC zDjehBLceOpxDcU!rhjy9GE1p~sF->MaH8I1S>xpAwcM+s&1Q2~LSPMNjErRJn)0&O zopuni0}Yt1pO|#lM4-<`3{&KrTSn6+A-#oU?XcNG%#rDjDg z+C_;M)NsW+wmK+A&rTs5OV7&MhVZt4|GhDd_*j__)--x333JqWHFXU3$e+?>5P%Um z(~T)pdj`1!3w>KETR|Fd-gNI-zDKW%9=(kT1zpvAv2)YKOZCF0)Ywi5Vp1KKKzcZ* z*pjYUVKhpx!q;^^g=Ftm6aZGN!_hoLA4Eh_)U)bXi=idfOB_HHnbJt25mfC+)PcfQ z#h$u}OyCO~{Fw5o2&B)rcBNEvG@HX<~7z1Ll9Y8kaiTa>Lv>y4322M+b;Z`=rv=wxK8(eI;C_kSdy@L zXUWN#f!V7#sP}u4TAZ$#O|u=;24`B$Q|KqMklW+t*mbY5PuO)(=vO(hJ*?;(_S^G$ zeA#NA4zl)U#le~4;D)>;bG^7Z9tb?A0~bBL>@d#uEZXimLd!Z&LIia#Z;D#%6Ck_*+^A)-dnUAO#le%}V1EZ7A_XhTc=DSF-{*=I#Fh2SXXHew4nDd7Oj-wyerBk?*uab%TUHFz zJ!&m7VbiPdB%1hcKc;5Zy~0nKdV#Y^>xRGEzUB*yQs8|?3xtll!l*vCt`1(ueL7OW zmN7k*!TaeZH_8EQ7@m5X4p*HMxd2A3b*uIJD0TKKXyfyBSYdFW1iM%-*~AH>h2p0$ zh?CuI8_S)h5(~_@Pj9#r$Ghx0N>nvowv4+I$H=$I)`)2LmqYo>q{gv4lRN?yEUE6o z$}Cpb5!u(wRJ zQSl&gwqLriZOfAh!*-Et)>zouy1NZrZ)K-@%#1vRmaCx|kBHx_;3bITw~k=ZsKZKx z*@mw56z{8o&eDiGBC-3Zk5$QWQbh3l{^n6$C%Su&P8JtZMBJ=OHmpi?G*8-D1zRH@ zlVi|QP_69SZLW+H)}Q({hcYUILmtP*V~-0~-`EOm*p}#@G%m{Km;?3uqAyo8od$a_ zmp=78UyKmzUpWiJV&s(-y`2F&>dgd|u_A$2<94h<;R^qWk=3#Ey_B}>f*?LDQIJSC zrrmu!W+oJ0+sxEGHE*u0a@3Tm`1{jlk`*Xo-jvvB<9iVf47@kS;Q}HA)@l{e?W`n< zT1D~Mb-|%`qj}8zu-|;fM)Zv7L_T4#eu$(@XVqNvT)$}1>+n;jX-&nsS`-S2ZF%OF zkPVqnf9D@8TRt44EN+-x1P9_Y*3YuVwFYemh zIouuJHV{o03;B}Unb&DCU96r?Zv(NDd7RXj8{>(!esrLd`^U%F&ADHKHVk~7w#Y%ESpCeYu+=d>y>y4lIA<{L8Y>jZ?m%h=xWKB?Hckd>PbtG1}TdlX1 z%UCPLJc(sbMy012$w&P+;=);1Z8cci$HF1p|`u*EW=)s27-jW)InpXzLiT$4HeSTsd+zR;c(*xC9T|+$`!z38TGcp^SaovjWsB>Al^$+K!F!6|~&m<}@)rDq>rx-FfU2XI$omb|(@0`L&UF zm@XD-U$5G%_2Ip;fMXAu8m8{*9T%1(_O{^L;ZWRRnT8d;x}PFEWwWKG6Ql8&(cZI* z7hD3^7&8h#G!{n{dc_7z70a9%j|FFhBqqy@X5TO?Vt=^q)u!QhWU7##!%=P%G1QT@ z>XjbiuB(EPmqV*x>#3?z1;5VVk@uIx%93# znk#jiQ;b4-h-VPLXXeDv`1E4;5zK^w`>Dt5DB2L5NzZS~iI1bXS*B2gKU-LJL=oA+ z$kqf;=MtMPkhqybjUZV6GztIH@^kp<+i&0f@pr!{uKnGsVEg^gAAkPwqoH7?y1)JT zZI1gdecgxtvQ7A#fB60X_1pU*?fL6J|FbYK-V49}1{UVu^`HLf4-X#x1}8}H@ZY-e z%MVXw_DAOLtup)FTV?h(S99?G5m#i6hbvaYVqB6X%%ykT+Jqs3$UzlqLvKSEb}}tl z<`CH}czn#)i;^aWZ!EqbxDjcz81ThVb=g=GJ`uWSQi~P>!+aZt2}z+$Sr{$Z)yh?4 z81OYkEN&EC@g2-FB^-KY^fm?p{xkVS2s^#>Hq6JonUriZxs8n`mf6jt0*S@sHa6jKC16v;nt5sopRt{m7s`J`lUG+fZYCm& zA{Ny{s+p)633LcsRa22wauhG5QL2z2;L9c*+brX~8H_2&-uo9efy>8tfBdRV;J4p? z`1;rVcb*95jQ@#kM<}|*ofOEF%nX{f*)bC~*6Y*}aO;&;3Kb@7{F?VIVgzj!Igfg< z^S+Wr^*~>eFVw(T`g{#$^v8qa(Y6qsa1#NWJ{5x*1vTTFE~-wTjcDry>bvT@VNfo7 z19?b@8lQ^M!sX`0@f1$kb$y%9P^j^XqFQ(k;=$^|xt_OBu~3D=gc8QILYh&D3w4~zypcK7LdKm%nm*wRg+H@Kh zJB@482P{?pa4@qH`se>+BSWEjD$D}cTf8vq%@h|A8mZ_vFA^i9WQxXnWk6}h=~+33CZ$bnAVkM^ zo~M9-XEsB)ho6qGYI@P33obD4DcHic z2NH;4V?6ap59hXC(Mu^t+#ltMU}0$6^!FCtv>;5~AoQjY!!BM}_j6wDkvEJ5bP>)W z`XqWDI3#lkjqbF7PqU_kV$il?@Q6A-9z3i`C{+z~aYVbrrW39UG+vBNQSXjOj zQDc4wg&2=@pW+Z>>3W5XnPn9Ja;vrnt1Bs7wc{ilOh#CcNxVW2!#c8dOlORG3xdxS z0)@cCrK{`DaZk~D@j{$vh_EFi@+VLUsb%8A=VIhc zw9%on)xe%ObLg@u`VfPWs_G1BXCxeQLbNX*tT9nAA86W5y2`?%i76zL#`HR%=TJ)1 zIq9gnd$;Ryo9!=ps z1YJ&@cm~!lXZvkT4?fip+ix55d6+v*?E{B%+dWh~*Uv(leDLLkAqkw(?A~EaW_u&_uUB>7Q4fVMe?yi5{^A<%$9tL}mc zyNG&%#)Wn&p7ck3=3BOaKKZbGRJT)cU4QNJTV~P9>vSA;3@P&nG8g3-ysisV=Lf3z zEGFn!26yHQ^(cfvm1|E1VtZw)THkiI|KX+SsnH9XpUMsU#MVPSOx?JiEGvpFBkNgL z6L<;MLpuMZfBgIZ^VdK8`uBenKl*=u`;UJ$d-~zqZ@%m(=pG8VCX^+-xR2FF;YURXLCJcMth|^1_a8kBcGNhprb)HbGUB_qIgfa{Lg2TKw z2E)WdC||6JcG?73b$Vi=rePHa6M49xf1 zyC_E=+&{e*t_6Mst%D1d$^9PD+L~Sln@R7MI^tDzS#_bBFAT~YL3sxpkFHn>%V#gS zx}V!b`MRzi<%l^XCeqmX5G=hf#YW|dbvRVTL=l9|h%_(P@*%wOQYoC<<>(=dFKo+k zSvec+8-dh@?S|M$W1vhq5}C>-lp4yx0Lp<0bIXk33Ra+9++V&M3tGd%Mgb1J+E{_F zIDH-LIOqV64XwiU!~zrLzj9NKzY3dkEIrgUG;|3Ne`gb^=qIy?hB8CS!lyKC0Tzph zgTp+;p?EUyLvO z)af4XI=!AS3LqP-PH=tJ<7&8&*o%53(3k~JS44z-T z(BQP{^L3_W=@lp>c~dJ~@GUg8!egwv-$N20Q5-|L>62PvnY<2K(Fr(C3{|eAsHb4M zt?ltOQ=qv;phU1T`sEP3Suw9G0PATpk3MJQ#>4HgS{Wskz@QS+VXOy0K@RF>=7*qv zU%P9jS~x9=><_Hc3yZoyin39Ws|dB7bPGf?y4gEDhAp@mR7OF3((zn3vD(14dcK`V zN!Uc}bPDvDQ&t=;x*qzgw}4O5lUd-4Lcd~2eVX-hvc5ByNti*`L!77d9HNK-Grb0L z`|3s4n1|MTMX#Cdwqtr+(vkXurYc&yr0}CF%q386Wap}5&V*_E5Wn4(Y))$sEMhK8 zIrhl@e$d6FUx#ZGesk6y=$D{y#Z9$Yp0bQU8DS!QftCcI9j{;Q)Kj`D_ z7HBmgdT4w9dWXRfZkslSw`;o?=*Uld03%t&_ok517NiyOS@NogI!=nntdbsgRGQb> z?zk{0+B2KYT4v33v&&c`Lslq2gL3=RBH-_=GcIAnk4aw>vCgmpXurdoXrVr*LJ}$t zXp-LH8Q-pGWr&{$0Ep~O6~UgU<6T5KSdyesydw?8teVf|~?BY@P2+Ox|QilONSHIuncS?_t%fQzf8$T#EXHC%n~^XeI^f2WH>! zebHUS%Id!1)vUMKIg|6soM+vDHiFyx9?Hq$(xhx-)*S<>5aykk+Qz3@XWBf$qfbTD zYTUI`qIE0tIlIu7S5&03MuIe>W-f&Z%`X+XcYKnB(GXFvz< zH*=+Ln0h^%dlQzdLXn2H4>Dq8@k6u&RfU`=2-nO8d0wM$tlH&44!Xo>CjGoOpS$p8 zSPiST(fu_$kGsvuX6_?1w`o-@)W4-H!DAUs@_PHWdf`CC+`^@#a^dtJ@^cS44=*d{YwNY`gDl)Tu zXNF{h%1aUhR&L*CtUDsai++oMz`~97p70^YAN8Px`!|+J3TMT6fxL}#iUYMT$}XZI z!FfMbfs-}rU7+Yml}=Cc3Ibe98DeVQ;By%VwSB^mXW~i>7TvSyH5k?&8`82C3nmeB zZ9G^`wrSk$@0p2md`*NLm&{RjUKeB08`kS#$~taL*DzIyP^bC9drk4@WV=A4QL0zvyDe>UJzm06cguQM~M%<8rm98-E^>G90VBd5b60?Jro zaF6bV!iveCg$Fm=F(2Wje&(ZK;eDJ=@IK_af0jQJuB9cZhaJt^_p|)j+%Np*Je6T< zVwwEeM$Gf)Z2JkyHp_y}Ryme6VyLv(rWd4Rxy3K;AikssKBzo0iC6KPThAgU{Tizg zs&>p-A{gV2v)jU_XC|9}iK!_Zy;ngiGwW8zpQ@nIVsJ&boDrLLQXKA+UWNF;QoxD) zcHZi_sgf~{PdaFdq5=haz?TsHnBVE3A-aJ&;3vD9fMJI)>?4ErN$Fy)msm!5G$qA8 zHt{9#0Gz>?5T`PB3Kl4JovhgS!{o*=g2n@!-g{>neM3;S=Lu7G{g&;xL{(0`Nu&V; zZj&uP3VSpx6pz?1zJzq_$)r5NG12qhA0@O^aZx9W{V3{}vq=-5FA#m!eqDM<0wpQ5 z^RSF@Zi!!Q22S`5;f$joR`AZ!x&HjkyFdPAfs2nHfBK}3_?N!!-(>0h&;Ris|L(8T zxv=l>ZrG+G^Vu;mO4Jn%iwT}q8pxfM@%6a5~zL3Az`<8Cm(#)KI5N-J6h zVvg&!r;){yltYD`cKxCo2Hm6RC{u)-*9ATMGT(JCUcBFQ_Gz8y@Anu_;c?N^^GMT% zSxm*hfkm{7iZ|N1G1v9j{66%<5LV8ER#8%X+FUqA4%e~M&v!xq>!mQGpcGk_0Bk^$ zzYzoMHh0K&_R8L|qT*bs2?fl3$|tkJ``h*B?c=*Y{_dCc->2=(tniobe);w>EBx`B zk3awL@s|%@|GK|4ETaRGe*34t|MegK;rIXf*MI)w@Bixu{rUI*$3OkyAAkSrZ+0Gj z`oR=WbsmoUmv5d{!Vlkm``vdxzvoX!OaZ|#`~dY@qirXQwmgf4g09Y4gJE>smxZrh zdxce*;kpIEauD^=eT#UPDwWQ+TV0Ab^D%{#?QI%aA#Cw<(z|ein8VZw_w=iu`4}|7 z9X1oikg$T)EH>Y5doP%(1H$Q*)Uq2{{EgwF9^TW?S+U5WL<9GV8yz5>u7kOUx$8Wy>!ithk z?Y7fsVd(CL*IVuDF80Rm$%&!)@Or<9z=a%}A7^_L z`8PNB^0K_jm_LMP0&h|#+19kX`w#_7jS0MX;O5R0R6^f(Gsmmdtx((J{oK>E;v~!N ziA%cjXfrLFD8kzB+}(w%@xGG;wl~Ks5x4EtNSfI5)%&fOsT?oID+XHF+W6c^Iuvk_ zIV`6j?YJY9+#M7C)OUDuyqZ6W{EI=Z$ZS@uio?@Mnr&;;xGj4JacUxn2SOz;8+Rc` zI!Re{>#EoS z9i_gfy(Cey3B$LpUu;DddPO`}5j3%7g}iDKcxeUDJ7e1OT2z5g_IWMS1;)`|6cKj^ z)}Nh*X%GoJ@B~JCasJ$CdM&D0V{DBR3vjxW`+X`vDzS+4-cPD7&9|bDE)G8LCVCjk z=Oz=1DHHP!@4HMhTOXzLPv-6-j4Z7(!}TnwpwVlU6C6)}DWX~}l+6_l+sv?5{M^k9OXOm(s3J@MLtB}%`o*cSy>QRgF|Vj!4?Ec~h)s0+sMjgR`ASB)3m?Cnl^&MvWRD-JB! z+Y5Hkh^RZyXb@u&#W&;;=(+l3fo|!vPPfBRi6i~E1DF|>7?7yNhNusFs^$+6PQAoc zOn5)Tj!}%x_Id8d%5E1@7cQa_*|2f%D>ql4Sr@^h&a%g~ig+mOGxAj8y0=MR5-vp% zMRs42VBap{9uge``RG{~a?#WBm$;nrp$<)kP%>gM=^*Q=+#+{Omhg{+kOL-Psa1tR<8lQAow#ObzNLm?^qsUtQtKoF+p4hdqSbbcIXo_G( zIh~%XoRLcU;-TX_WiApT|p%y-4Ehks=Cj6F!2=z2oVD- ztp;89b-Uxf=rA*ArWn@!5pLHRunPQ&Sy*r?0-B|Wj~$7+4@z!<7Ubqodd;nfmMH#* z&t~m&*2N|Y&ib|4b#cY?#?2FZFRLzoaJOsG05p2J6o=^KDp)AGZ>#udT9q;2b;2kD znMhny!|As|Jn!XTgGBlBnrl8$X&cN`)u+`|@eB;uwC@A|*)5qxp15DY6|ARG%p7an zr{F5JrUe!Bttzq#BGZ4#Sc|RtPgK`Ln@vS>qjQANXnYxDeIBWTHj`WQna5+mAg~MP z)v3HU+NhrmvPOIivQpZWZk~avX5FTVA%V~BCWx3bOijC-MWI^yIO#MgUWYR&>!WX0 z_$dm#l|Cp$8Dq0v$B8D-W7FQyh=}603XyBfX-;O5hu=-tH!hP>y(s+`gH&daHLRVq zD=P&Xq*5$uHb_;x4QDSYAb~kAx(v>D6Z;M#(~*bh={1QFLzWe}PV-;5sT5Nk$D?X% zlbN)$jbgo~!;GjpY9C^;<()wmrLVp2EkKn!RZV>{r^*bn5{0tJRAMm8j%FV1VP{?% zR|K@$SQH?S>9pzR-%~8Lo{IHk@&kkRT~A4$K_8NlUnh)m@RW*ql+CCkje*OZZtBE@ zpMGs>#?A$o^>hRI^l3D8!T`%W9TBD@>+A*qnyx`#+XO;xd_Cpr{8=l=Bpg3}_wJ8h zRe}8JhYw%>x_=W%7KH78tsLa@J^tnkE3J-2WmYoldXzOIOsagQ^OC{NdTrvK_=M@G zZO3J6wsXZjJ&y?`?V#?4-l+THBsygU)P+-t+pb3}EEs@y)}< zhplb2H;${FmWHt^&EA$*ZlH5}Njf$Kp@CNr4svK(b?XWVx#+0v0_-E(in)$rA=Oiv zsbfDWbDQ5c65-qDAuK>DdRlaTOQq8`DN`}{^TiyNPA7)$-9#M~4i4@;Vta``Yhn)r z#gn14EGjAd+}VQF-&_z(mqvK91J z7crxWGT7AuU1iUzoPL{X<5`cgV-JrQIIXJrs>A2`v$7+df|VMpenSMD5CcCObo4yFj(!)%RQ9UqjEIiWa6{<2;7{j_&+Ix&5q>lT)D^9+i65x!%cvDjr7XQ< zHaK)#SQ0sE2pi{Fn5qgX7Ch_DQxsm%b1J)%txaK9{mA*8>&+AqRY96N;kC7`Z`9)h zkM*j&bp!n*YQ+?m0-xf{X2sHaHNBgT_K*G>VMcxWCKSTJ*lJ7L4fs3vNkoAG>3JV- zz_{89NIUlvoj9>;4C9}jZAbQK2*H{G#B?!#XTGrl4;03|6G;=5s4P8(i$tya=TPGu z1-7f>rDvUm)KCChw)Nt2ZFo#2IArTANXZ5y^QJ}72_~|$tvm5xh<)d=}aHG?ksZqa! zp0FS{HtxgfA9KF`;wWUhyY3Np}HiD_p|pyJPU zcYX1(D;P46RWKk_`bYRH#xDdlkDE)VZj*I`bm$Atf&yi+sr@d^GEOZfE9H#?KpIbZzgFr1&u|~ za-S4oihhwbUuP=mMweqr40y*GZM{6RYpMUBSb@)g8>cV`#<60fQ)l}Uc4!v+JE@w-5FfTijn?i>jlDAul0g^XW;44q7%Og;@Uc7)0o%f@rz*B z^AJ{f4Ls?jnH`-_sQB#xWimk`7O#iZ8N`OEBb!)fP8kt89pPG+9Xk??Fj~~rd>eQ& zXseHi%8_E~rXZt7c!x)hNT?PC044-_}qJ6V@C&g>bWpfPm5`Mz?W}-YmO?XZb zs=p~F+Po8cu(ro0u&V4GX~|vNreKA{hX{#~)+Ed&(wiL<-NGw=$B^vYP!*xDDbiq7 zUd)sA@YZF}qId2>hjP?48$3#bWO~)DAK6W<5+Q@5Y%7LBw zP=`{OcAy!)VjB{ld8UK1x}G_5+3P3up;^Fnn+k0|z2&;PTeuciHXY&J>o+JQj^oma zzjd`xkkR`_(gnDB-1(aJ+Y1A{RdPMrKz2z;dy%4E zqpinsveP!#a#*8u?MsPbU=(prlZT?h6gpsFuwTMNb#vDZ(i1-vcABpd#Y!1s+H3>3 zG&YFE<`CjYx9G4gT%51F#&seB4=+?&1=$YUW!K@y)>bmZE^`;qHR}5Mk(GRzeV@Qiaq{Rm9nkxUYM?#J^yl$S;Wl zUI#G{!goX_s`Y^q8%8c*&*RzVSkVL%bQSA_%)79fcO4^H%rr4<5zpIASlTiS+USfP z_|4RuY^dp})^0=`%2#ME0XbY{UB-r*rqB=(V$YGOCU>(X^jZwSU5lxv!piWYA(WoI z0A*Z3K@nUugoco$X$T?Ylzop^*uuJrhXO}Q1>-hhNjY;CB@c z=wVfSXGoG-04uY!A%vsE5OpjCK=v!@LosuwYwJgy7+}I^2ZV_pWkIFg^=%F=ksA>Q zLQRpC4*i(5S~Zrr%wAVTxglt+rV5RdgbgU0}S|#?;1)3P< z1Z2i@VBpA>KuZNh*7X>D$G_2wsXhZteLeG|3sjR3*z~y+%LG%q;-W{QeEp!z>I5pw z7IA4Us}rCU`P`Vt*#-0`Jq-m6q#J4#Y+Nt>LVFNFg7o?uc?+=Rs+-Hy)gEl$z~?)gkwISUzJ*Eb8u9Cpq#NGC#rSRFlvCr(BUc1dL;TFaN5zd^a zyV~mndLC(P81I_D1C_V=boy=Dxs_|Bjl|s2qNjBtRashO*Q&BB#OPDN5cvx&oW7Gez|Mc#UU&p53fB5>>{aI}K z?Y|Y8{)quk=mVLbU2h@3q%qHJsTVWGzN0#Exm#C8kf+@(uHewXO6jy>*u5oP=%%PB zwz{kb_VBf!e1brb*o@+FHxWstua`Uvy1tXiJrb82K4dzyX-ztPtJfUJ1Wk~e#%@KfQ5FNVK_l&$y@rrPI_cjX8fWiq7zSpGwYL&jfq6n`xbhc)><3Hkq=fh;VOSiPCTT0WXOZvlO{wFBtg< z%I?l5z@;uQ1*zE9RIZfEvlH8_7Ps!D&a2>`$mi+j#f(g-iYfRr+&by0voU_W4eD10 zB@dc!xhYao(K}o<*B8nVim+CjRl3pB&NdS*tn67eJ}3&7a3avIUxyVdlxxB#K)XFg zjY2SfJ`vq`YO?_sHIynI!yUx~Q#Ouu5g^pl zO$kKn_7fVO>s{zu9{ZV*9Gex3V&UP}2^pM$N23X(&Y3YbCBXZte{ z7mi?a`k?V*gZglsQ}~`W^NwmuFnBA}%|aZaYa;w2e~#U$I+7whvMyUHtc9RIY2*6k zDmO~}$8q~q1tx{l&@g3Wf!_(fNfXuQ^O{(3);UcB$rj|YHvs0Eo6h(_Gmh25Vlo<= zxncyr=octSIDOLfIZpDVThYB>v%0bf$=*-h<8_Ebj>9GqeS*fW`u7FCQItdVw(m`d z6q}b*j|43zyb(R)O_7Ch`d+aIC@iSm)YpzhNO(F~l5J_ARb5yk#GH?*wN8Hr*ZX=a z-DU#&jGi@3WgTv=#6$yrRz_#fSf739fa(`iXxQ}J1#Rv*3aem3x#42K@|;+o;HWap z7U2v6!+o zF(`v)hr6hrQ8%*Pm}YgEQ7N>r9^yR<>y1GgelgFTT6W&@kr~zAd{mUNVx&W&%B9=W zC%CKEA*p67umAF%_maL?m2GIX2Yr)+Cl_>N?H)HLvI3we}O?^Y`ha(a!9-DL*jLLL;ix*rtszX$2!^jc zr(GFl5&AJnJ7JO|nEVTbZDsV99i|H{P ziKR3V-^b{@9G4(^$9t7$4^(FGZ+g(W`>@T(Ld&}i z*)sp~?vG#Dkp1?Dk3WC-`q%vrvLXBNn;*XW_~l50Kx0uFobzdw-e8s9g0*qin`U}P z5G*>xN5qI}u4Y!IFqz+CG^4XZsdqT);Z$n{y^sKjG_e;OVkm~M>&uqXk91FU!w8MV zR)ts*H(gJ?caLVkrkt*Lu`8;b0S)wa>z+J&t%J?D>2ampUW=^=sE;ia6Jj$2zCJ#a%%I*Uh9bhh9ZCo z&r|08ar>^;t9KFpoM}PM7i07evBU9N zY866%aP^!sOW#EwaO7pMmX@jF%nUaQ2+s<3!>3RRnut4_5sqak#(0mNvQ`Eb>tQ1R ziSk;v@xNKwAyO(nKUq-bD9-7RX%sQjZDsnavEUKRHEkC$xLER4w4@@?T0C|=bhPG! z)pvt((S&PFHDh@9MS=Hb*o5(LhtTV%5#9wKA!Tn1=3-(_I3eGGB@DV(^Wr}17*bO_ zSVi%u9k`lJ{o9lb&-tEqef*PwIVbGF$V6#}EsE3)zg?UlH&*HLBW0Kx)!s+SuuYFt z3_Wn180fFAxQ-N)yZf}ddc0OwnWmzBqQ|r>_XN!fVB)zTI)Dg9Iqs5#MrTUu{1SAu zo6SrLRAj7}5ZAiy$;!UCLY}qgd0`+82-@|4b;$B@frSMjntzioth%Vr?&@^2eYcrL z%-$7Hn{dxywGE-^^91CPn@JGQ>Z<60Q=DJ@x=e)cw2jA_oc+)`FCr|qk;}p*vh=2a z9UDM5oh}jc1$5my>ES9o?-Ye{ zdx*?u1aMm@-Z5E^UE3*@z1FhjXD9_y_8th)<+V~v|~ zZ|`3Cv+esIW2YQ4EopI&uwa+*$mi%L`MZJB}GZS?};H#SC?T!C+6W0&yI zkH7OH7=Iqayx1135EOUr21K5%+*_P@J?HBV0D}uX^f)gj0>d=Xfxvpc%S2{I zM43s9XimKZnu=o1R4_!wl>8djryXfwwZF|)-kNor>Wo`sMi0?5+GO1@RN&hb8JrHF zCR!H?C+I%vDURTfK#Y20cM<%egUpRais;!3!%e-N95B|HX5<iWgG|W1mH0CE^n#~iesS}Uc6k-D72x#9~o%lq=q_>65TdYnLu!cgK?yB;$$sl$L z#mW^pk5gg*y|d~1jO=zsc6X~2FQODyCr16-1mtJs0lh)I-K+b&>B{dJu|_owL{o?v zuT9r>`GpSs3LiotMg&l(Ssy%|b$`F<+C}V&uX#5tD9F2jv*SD|6~}zUd^Y@MM7UU1 zuGi27Z6IGdHfQ$wV=LCr^6X;Q6RlL{6+?d&iiPIrx!8Uy`^^-JyS0iV(=lOw&Fmg1 z+}cP3tA`Fnb)DmuZzXlT1rb`?Zk_e*nsNh188hB65h;wz6f)L0mGg1-G|wDb8J^|V zEm7=dxmABjSm&8Fpn!0supp966-hri71l@6sb{_&_j*)34v;VNqDq3N4AxZ)>}nQ# z5E52QuVN=coo&1HnXX|i4BVi^4+W=0I#aJbT@^GS{&Mehlu(D+cGvVAViWtMGlRG@ zf{59i2xsbV`bSnu7H)Brsg-IGMO2`sJa3~5=VS^p^`0K!8ajVOYzu3g2?j!My)coLux@9&SH&bz8nNoncxb0Td*?>REVJzn7 zeKNoGN6%YvI5g{C>UlBmgSx2>))_@{*=%DVXliBmvVH9G(br6ua1ia@~J6}5bm1ja{NELJG;3RUmOBR(g5 zIw|%qBB#2X`KmYj>iSz7S)~vv7H3Tp>KICiV|?CLJ2qVg*40EO71CxQ62Sp|pV$~H zJHVvwVvPhbmmRG~439etKqZep^_NtOxMkhM_-S(g3F6(9UH8P`|D)f%o=9mI$v(LE0sbH5y z`%zOvKcCeIpDV(Zc#1UqmF8*JS$Df0ydJYqZdh1c(-)MnS0>1zQ)K=TBhwIw9g4o{ zP?pjsKXZfvTAPZP$Gp0g?XVTtb5+|~(}QN~r4_$B6Ku9NtXr|cQ79=me<^pMEr@N` z&91o@YmB$4_J>g7O;xw1W@3@U5Al-;n-~2K3MARY5v}q&RuQKoGclpKTv^A^xy$wsdrssKSZT|vRQ6JM_(q5~q#dMC;bQKZ>FaYZSZ*_Wu+PfLE+PxA@4C*YL$!T_%A3{!2aB$rUPeL2iYXo8HJutk zH6#MF!<9Sf@6g#2OxC;9tGy5BnXA^@#xxG$dFBkU0$A&yQ&n4^syU?7%+P;a*(I~^ z+Lmj+88o1B`r3>ztrY5MqTCDX15-uS((9GZVpVyif5&+0$>t<&upQam14WRggMdN2 z`NwR${fVuCdI!v7_R+<-uu-Yv4Oq$zd{+No=H9PakK4TVyzfuJ%X6wGr$|ba#LG?t zXdviD@Gt1}l}h7M9M#xXMz*Ia-+tB)@4Gk2*w*BnIrGOUM>NH~x!-Q!dDa5fvlhl% z!p7QRm591MImE2`yX}IdFos0_Kx2>NuX-$QoiH-}ZN_yRuJIP{L8Y15Ld-w#@>!U< zo`Yw|EEs^+jx{$296_(8MYdmH;s9A5SO2CMJxT7((vk(uN370V;Qa=IoKs(%5#!x+ zoGW7kOnr6EPV*ME6eyRaEQQ=o?lJmt>wROO4So_>U75Ax{`?_n4IDEIUZrt2GKlnf z77TYr9H3*pF5(R-iR;roTR$5FvQ4EyB2E(|d=Nz;FuIs6-X}11zpyeCy5tZaEq>9~ zah#Vr9FI7O_R~^W|Bw6%TaE=EV{=a#l}#cSeG?}-Mo{aaLoagVb8nBt*7{!Qx(NwnRHt{zncjm?doD~H6#6Ki$|B0t4G9EMX9(P z(|5TWbdSrQ6`wbcb-v+V$zF$JLwfxkjF8te)?2&-Lm%Q&R3n`Q!Rc@D{0E7`{12q; zPKJ3J6&$Y`Cd$?I_laYdeCbE5lepA*uTt55!3e6TQccqpaRU(`k^NrWa?Ay!-Y*n6 zXEd;1$=IR@04Cx-1T3xZ5tm(q4qHD8ra2;v%bh_AYWc^8C_vjB``NW`!mO%Of;;ij zvbWujf)*bOO7+-V4b?6_;+uuWnv)E1yt*PhRCUBhQJm&x)KoPp<1>jOvNK|#)pCtR zTeat+Lhr(id(qC-cd(uC5p2x(kH^MMKy_tkOr@NRKW-WqRj-gS|fDWyl0X>niLQwe-)d8fISpGgy_Ev3QT1_Hiyd{DvyDR&<<0)tnh2p|;J4 z?WjL*h^B~iYoD36X!*bW?3ce{+VbJ;w_m;a^{@M@5}E(ve)-|IzyI+MfBLWggXS$? zz5V9Hhp#>(JVJ@irH!c>VMmb@!J-Qn9`XCfEMZv1E)R9~{%~0t$rx{LJ<4Ua>OjkE zE3wd17D8;hyQ%F=9)(FwIt!54fQ^Y%3l7PzQqg?lZgH#E0HG zPin&Uj0jm*QUqppdm8~ubQMn3tXfD@!evF|SWq%D7voUc2^I}pyB>D#uP^NHzfHA# z^Vu)I|7icI{^Kh@efRO*ck_k4CjSnXhs;$Q4h zPKz{zO9o~9aor%Et4>G%yhdAJ}p)jHMBAWI1XE+nah+PoBu*EDecv(^&m&vy%h|BriN+VADNe^*m84NATpKe zvJp;i#39iZKJukXM4nx**zYl>C{(>cOsq}MSi)xX+C_-#5|g8CQ!} zZ2T+d3#wci7Q?X0rpL0HW&i?P5f8Aj4Oeb7lx@Zscl%xl=X_np1AxV zqwaz>2oIdmrov?fwtBdj5Gi$4lD$;oHmBCK17zEJW_@BIB2S>yV2boal8bHL#ypG2 zhbnSD$AZsFwCy4XIHgANnjqYU&emnSirQho6ygRiO-2BOGuoY(nF&rN0#^UK&qQPq z{|h<0IUldqbAT|cicPx(0=2VM7N*mR9++UgYE%-M(K{ZI({z7`fZz5yeI@^go8N|c zCE)IeN%$sZ{X&)GP#qZhUf9}b9qLVx8iA0SQBtES^{`qoK^;ur(lR$mZiz~^x~y=r zAev1#i|~_H$-xsvS|=CZ)lM zPO0{=xC(|~eN!trmW$CGK3-m3I@QI_A$C8VRyey)4iFgBu9%m`O`8$o7K5vISs+N< z!g!ok0uqxW+#z|De2+S=kz!IDD%Wh!gBd@O3#|yOhZ|>Uddr8uxTB=@l3lgxflu5# zZ*CY!Qu~?hPsCRHXhv5pD(pg;ShtgLSeZrd-2KJ9yV5*5M*(H+X+2YYEN2;cJu+$L zeHj>(c7BwDOO_a3_5Ba0m3yAkKLtxo)GD6VanN}0VL9rH(+b1k1*a8t(R4q;8IboE zJAM60Bl*H;jcK8&u@c1eOjH+Nnm2uvg@G(|#F)C;gGkR9bez!$0k|KLf zrTM5ww2Y~A)^gS|`wvbl;`8ovtCcBOiYR4OB=!5SpSW+F`MExwR-lU_ zW`gEhVSegi>mOdNR#zWj+^aqi1#dSGDo<1w86eHOC;5f-!W^Vf?@af2_;?ku+CKylJT)H#nqF5Pp z+@wmuW44=qV+Rang&nq2gL4EG%EG`>YT`CUpcxMBJ`Y?4Sx-GEp1Hd?x@8(X>?FNB;#PMou=VpT=#SiqtA2M3 z&@yF;tw+F6`ciohoWol2YJEi}2P3@7`j^#*FpsH_T-Um3lO1=BLJ64xeF5S%3DlLF z2#+9SO4htx+t#BB5uN&S<$!=cN2w!1)9Uew1+#;p$NU^$K0#=XW+vNC(EG8s> ziEw)GSFH&ZY}x>XyC>QXaI+XA$=F88#f1LY6F>d z(wPrUC#F1`&|e-Vk|edM;OLPST)V{|#g~L}lPF5Ksv4gjVT@icRWu>=F8EqFDe3yO zXgc6)w#_V>vSWscEAqmUpV5HFZMK_JxIs9vDn=AEp5td>pR%^Bmr|UXvOvjBR(4*h zJJQ{SqneqAwECV=Wx)y_i-A2RQMH_z&lQeszT8|BgzWdAS0!xREipRcTbRD8O8R5W z3Ef%|CbM`O%>tow zfDm!ZH(l**rE~$nUAgsyMyg_OtLgS$_ySsgm?2c!BtoKonhGQ?j84%Z=f!2I-Q4Zt zdPFQA!rFzYFzB(mpL!*3e__XcIrU09vsEQhFHmplgCsU`5%-xsrB$$O2X9feE!Y7KFy`Ju5SVqr$8j~|! zpoQbalus-%*??uwB!)E?u{vR07~#1rDCE_6gSN3=l|gFD;R%xQ1E27ApHJ6(fqEW0 zEypgM5n>C#tNP*Z=>*8N1n%KL*R?Psj<6^^Qm2T_0JQg2Uwr$n zos;9;h*Uki9%&}8?8OQY*Zi<2B=xh|wC+wM^^LranvfRtN2n^3QV%acPuAYboG!Pk zqSb^`kd|guOF5-gSzNRzI^uyV?$fw*O@N}qF`r+xbsKT10-MQjH>VbX%_t^FKdnwg;@~Jmp^Nb@Vu?a7sxf#-V5Nc&AYqoDtLfc8 zzx(W$zm_-k-Pd2g`Sq{+|4ZJ~x9`9CB5z6*vtz%+NyhmYSPcx2JdiCWNf+#gGegAb zcw|>6;G(^^sOxCI!*>#X3qrQhXyL67WV?o*BWBZ2l@ZP<4d;}JY?mrv2DEMGzTGD( zqiSx3e^##=Je?)%$~80-Pi+RX-cM7&V`<0d$*ixqRyY#_g6F{MDMDQil}emS!L=#2 z(%qu&{sL@C9X@9=D+6Rm>c`w9b$_ai{Hvd~*qeT;1!t8zwi)+a)K@+wv#wK8Phj`H z_DP}C2I4f-e&X6i0BUE}iG(a+rkiley-fF%3k%z+t3PeL7&gmO272XrY*^Rj71%zG zjK@4OzL62^sN4M{T)WB#5qg3Iu`-(K6EJs)Ll2Vw`kD!4!dgMiu30*8D%vnnF#Bq& z7sT5)jtf=}MlkGNVo~|;AY+`kaG#hGSYfw%hs;xUwgb@U>=ycu}IsuOzoK$f7+_6>Qh>5Zf=V6!)F-S%n;Z1Da5s{bF#37&e_Km z9}sw{aqqD6v~sSbxYzdy~jGv?a* z(dPg+AqiUFTKsyL4>>;ZMAjrNl0C1&zT$R*$Y9?If>ws;bBeY0UYNuh$+>e1lxEU> z#)9c+i`E&VLBdP-Ix+9A4a2qO<1!TYE)*<;ICX6c;=2b*cBB)FAg=&#y_xFF_#Wyh zSL>gq+S`GlpGuvctC+^kZMQx1b&Ai#u@tOPZ&dl{t|#Ob3}20BzTfV*pGKY}AQ4Rp zBp6mSsJNQ1MeT^?pw32atLVfguw8aSSvc-Jkj&lOu_P^}nr!8s)ICc zJ-2@9V1nG@5J$P@&7Imf<0-pQP4F8w0US5i8|#L}S@$^VMVW+=!FdK^Tl0*1H<4z~ zL>wkbjjJBeuYT^E6C=I2eD5wsths9U|;#DTZa z*>yxM66??(5G>bJ3NZsY&P_{hWvnj-hx!@4z@RU3NS1EwAOwNY*k!0MuFo#|7~2_N zPI?!F`yHbVoHU76!W&gAxZkh7fx@Nw;%Jew3kO8~;Xo|iP%%(JR8eFyRRr^K%8M1S zzQ>xj+Ru5&t7gw^^Gp$~1NVOY)`H1w;?`C~UT^jUQ}36yDAB9929gIR(B%2JH-K22 zyplGmznP{`FzLb4BMP>y6bmg5Q6I98%f6MtK*v#RM_tAIJ)cYuVPW`0sHGF^Y#ix3 z*b?(TJM*YZ2jayJXsIyyoGqRN5WK)As4RXS@80fe%|?xo8E;_9M0;iM0dhnr{9U{ZCC<9*OeOzI&mhUxZ|VUo<7>)5!o8{ z2#{6VHPc6Xr@KLGPtBIdDK%+S`RVm= zS07(Z-P5|Yd6q;D?;J>FfJ8k_1&=%M^$a_s#aw)LOe3+|KVY{5Jvc)Lhqj~|y|MWg zh%kEEsu>j*`NGhI>aAdkiYd0b>y#0aN3Bo2?fNkmRWm001-ut>}W$6j(mz+0^nuI09@y^dcw7@UU`{` zB!ZdNI!0235KxZqu6(CRa8Q$2eYxnC1NE? z%7WPcoN#Y*PXD-&8=puG)E<{8bXm2_v9jNbNlc{XV(qv(wGru->L0P=2O3#N$MARo z?%49C_88Wm_h0k-oWhl*+ea+hBb#qp8SbZN0Bz1JsS|iXGr|PPur>2OB631;B0!v> z*86(v`9yzjo7?!$y)}e-zHBPqi}utFZ(*g(mN zAz-J$Ib@8f53=jYP{}e~{{*OJev+zwal+SwnFp~d($WV_Ovpu8o>`t5pL9d_*0#7; ze?{qSAAy1k(VnF*rhIDhax` za!jWc!vuAmezNerNPdzi#K}d*s_sPp_qb}4iGo7tnV+;{w>w-x(>IrO7IW1H5mH(o zHt_mQJ?Fw4I3q1KJq$BRTW9}aOKs}4qcc8M?E}ogm#j}!Um}8^Iw1lpiEAb{>6mn; zd4iNghV5plxwm$cyMCJ?y;y0iqMsL$Yq7yMCB?}u3en}W?5ca>cjYm9 zvQ!A3R_3uWHwaW>a%IO6PT!P+-=`bVd@W{9rml%;*vjDb^x9-hlUGq@6`d#lne-%h z`@S<#q@DD<*2vC#PU7#SU3%#ibF{09==t?wM5OLqMUt~!=f#H5fMD%-UTkmxjy>tJ z1CbsyZ%i4SA+IP8kscwSMY%-$bjkK7IMJ@EKEu65*_f1RL#E$3Gbhg5G zSzo-K`Jq2jj7iaOC7b9)r!?~OO94-_mP8T26nGT zEVy7#4Z@u}&m%LK-O<6Vyi@hk%`GYcS5&JroLV5Yv-p>BJBO9Rl)!13=wh;Cnj8(Y3bLRm(LAB$7=xPuvUH z%tYrlf*6j)6P=(1jHq9H@M6tsamAg00Ij?D8c2K&qLq%3lJ@(JXZ#|_}VX(5S`kg69W`Yi0m0YyXb^Wx{}DEhbC4kFJguMSG6owAYzfn09-dBOpKN4RLja0Eb-!{8^<)HD@{xwmZfT@+LkV$?pOkQtdd~r}9s&WWSuM4~2-hbg zT%U|^S>q)Dn#I7^m>z@LJHz%F@Ql1b-|1waudhek#L$??I>uaRS|p;{PR$$nFWso% z>bW{$5Q3{OYqw*6MiCRPnVj})2`Ef7lO4E%~ZEDje-lnkpDfz+B zFs4N;*@@!mDc9*!)VNvnh*g1SW!JI_*vI4HsdZ`bJhD^h*o0u6mU`tjn#(=zsCR3G z5B7nd$P}pqq}F*WxLHC0ks|a{<#(|R&ywA=_8zm?=bn)Kt;Zv- zaBop73=L4s_L(*+-1heQk6%d}{r0P`o@t|h@#p{QNW%ZDq|tBQzWey4)P36KXs_&d zp2H#7`8rk2eKQ_)R>%t{l5j+_B(YQH898-HN{t>5B;)`RW7zRNb!+H!z)`vX}UdCO}H>iisGzmS~ zd~2PpOy;JYvpnXqH_T`3Zttryny6xQ5gT`_vo3hgY@lw={yFBZQQTGE0|Z=+dLviQ z!99c>#6e<{EI7UUx^OFWiQ`sL<3ay8P9Fg(HRabFPW@vQjFTBZy(>D`oob*m8D;f2EV&AGc#^Tv*O<`+z- z;^nF{%#jg1!t?T~z7zEWXJk%7N5>Y0#kgjlMxX1EIFY^uIm5oB8dbwu!Ixb;{=`@a zX@|jaUsatuKXp&=Ns58sc~$F!z={n3Dk5{JQA8D_Bwiyb=>L@yeVCmVm33)`i~xJP*{e*N)IC3GLW~@GyKmO`i&<5N+1qEL0&Zevxjo0Ko^q zVg%3Xb<@QtRDBQmX2ijun^Lp>DU$ z=~GN|MdF1f;?!sm=ZGWpv5T2a+ZJ(kp?9Z^+D)kNo#kvI&};^+l#1AyRHEs^Jeb+N zw1qm8m`=#Vo_Gg9;e=AfT9$%Q!g259pw0^J-fLrieE#Eml}@|8R`8GSzWF#S_}6dW zzJK>_YBvAMpa0L#D0NQde*U+A{r5lp{D(I`{_lVO=?{PY{cB-Yqukz{_xg8VfAjVm z)psPF@7{m=-#&gj>-&cfAHVzV{jBdot>3@ZANuC=EP2xz{fGW{{b-FeRT4#kh&^jz zh(M3WG0DJr<8ex2Q#jGH3+Kmp=4Pr(qL(*fPcikVSFQET{n9~l(2mw~cg_c7^`O*e zn8@+;aDH5glN`ahTj@AU?wjk$sKA_|!yxWEN90R8IT0_$8&m4}#SGQ+Mto1Nz8i<= z9(m+~lwxhciGH12BH-MB)U&FcM6By?t{ORj9*jpIC?y9(e~pU!G?`nICro7C06k}@ zRumnz-w1!Pi!r_2uUR6TkO)atbdk6uEm_ogClUao?B*MPuiE4)yvvXYN^Vkn@hsq2 zLfx>PUNk|V@?OM`6XB28yjU)T))g9Y(j>rQueKN$O3Q-Mgj!1+i(TSoEF;)QHllD> zA4osAGqNxrCPLk-2^=bw^we6`+&{HKP}xm~2jwP)isrGzaSQM;5Q>B=&w~lVoN?Rj zX<@>H^r3*WC0TVM%#TSUrouUvj~u|n$6a$lU+<>Y^2o=s<{fuzaTlK%J}g;3PkmfB zuUMhpVqDxd<4t$=r_z!x8pfjfZN#5azz}hsK};Xo+!E9v7y{H&+#GzC|byS$I-=Ng^U3~>}0}T zr**5yhcje_pARdH64a7TvOBW6r0_&tGj|?Z#o9Oh5NC|{O`MNv-r=VK29s|3Xj;7@ zE?R(sKK)Yb5WvuuQ-|O--sf4in|=|TV4&UcqG+Kn>O?{R@`TAv(wMl}*1FqWT#3Fk z?K-tp;ppT;2HQv`LeCHu^xoL$0ym5)MRohY^1WO!!zsAT)^1DMvf1JUbPueC1u~pi zqey%6bJji3ok5qot$Gpc4sPoAX&2hS9>dlv%|T0)R^%y1><|biCQ@i+ltT-LKN6Z2 zOjI3IRfHj5s*}k2wT85M#Vr=W*M4-AHUg{Ir(32LRNR@37gy{x8VE||l;Jc&dg{*@ z00<*2DqX^7l_4mH{13Zyp~RZPP*)aja;MqymTeJZ%oqf>QN8{SbJRr(gT!piBgrGt ze*@RCpcZefrHd!R+PH`HD-JTSOnf>M!|nYPt@eVWVv?W+6(xkFebQIc_2%`np=J^Y z(8i6Zdf?q*U5<9{+^pa6p?KYe7AqWQ;NRiIyM39I^MH`JP5Rio32M9Io7rc88 z+E8Ah&DYYm&m)cXNwj`&Nl+_t0&(KqGtyYSfm8rgpljDIk9ONccAdHvUUXXFczoQe zkO)BZ4)J?v#td<>!RBxVY*m_+(R#FV5@Yv9LS?DVd^0J1x0uM%_ckSWL^#M8ZkRC3@Ax_=k|o4dtG>evc51v8iMp zxMJ?=K-|R6={i-l7PhLNg$0kr!zq5teOFj8D^`gv9Lb)xiuoCa8m+}{p818*E>ms} z#kAej;C&&(3CFp*WOLsahdK3(DcmJ_oJ0sa7u_gPn3EehB7at7MhVM$YzMSN5Au{n zv!_&_b0HOZjL*?<|O+ON;CX9%9tenk5e_~7bmMKm>V*#h?I<6=?w~i`K+8*AAMK4f1LTDD(E2aj- znApMu8SLcNt1{h9UvXYO8Ro9$M5Pf@zqCjq=1X~JURrz?Gr5Y8Lz@&i^F*&vo3UVs zF*fZrG%PEU23!M$l*3(b0YvPpf$${5ZanJs^7i=zn}=`O1LQJY8oN{}+0_%2SZvD$eQU=CFLc+s!A20js43d20_aXv)V81G;jSDb*lCo( z_&?Tk2j{L#w=~4bVr#ofsn}%_>UH-S?v9TN8GL9SRMAq`B0>Y`z1|q=YyoQh53&;- z_;rvwqSD(p)r^71Ikw-(k?1$K7@{bsu<ueNd zQgfV!c$d~fH0!h`FqercNWy(Wuvm;~L*{wUP-X(hG!twy=lA4_2Md6f3tN!^F>A#e z^hSn?)~PzL_E((ChO0Djv{1H*x>uiteHKnajEm|^s>f;=cT#8b(2vq?gDJSUn$2Na zgdQk$us?W=D`ih?Ctq1aO zSKNN|WOwZ0>C6K5C*+)2mpx={vw|P6V^EmO-}~$$DEQ!TWnv3z7V@mb|19?fp>bjad5o@?A1-zy0i&-)9k>7v0WVaq5p>P2G+t{#PGAyx5Wat*`sFvCRDM zV)uXk-4DO~^uwFq{_@iwfBa!;7{31QtGCm99i^Pq6+{Us~<`BCgkQZ_jA|=zxa_5umeKH%p`Q$K|n|F|dPKV_m zy)Nq!iGf~NHgCNeksjvY7z1anAMv@F?p6Ht;&_gHw;ls|E-EW(H=_Pq=zR+~C`XZB zTXCw!LpgYpBL_dipN`wJsE5wKLFa_2`Ju+GMMUTy^W2Cd^k0GaU>5FwNoW%Q4QS## zhEW(?a3o}B&ZiO9m`>a1S}bYP`iJVzrWGdMP|Q4GK`5@v2rn>aHjpeAq|kUhz_C1j(HnMJ^bvY1;XW<=do z%|s}li3@QH-1!8lr};B>&w-=Pol~uTl2}PJSXgGl$-JHNk1NFO*o25Z=Smep(7M%l zKJE|KN9ObxV%+PU*2RsAX_B$YGG4}{!DqtKF>M2iKKyCN%sFW@zx4>(sQ046XpAS} zcG?E8{ScN?DpmNNsepRKmEsJU*=H)?JilK89*jA2Pr9%D?t_dIABNCs#!8e3pq+ul z!PFEU04;BII5l{)46KyvfvU9l6IH2e7gtwU1{^UbhI0}0sb6vIyndoHq6rnD1k#Li z@|n%yaE|HcI&}(TDldG@#zPK9~~>J{Byo)re5ka*4RF`?fj}qGLv#sQyG1vX!ZLoHYu^cPQ`6Jp?Osq5SEsS4@CXrP#=Ua8cWyEs%qCqybTiDulHgJZtI8F|14L)z zwWzw?(o2i__8-3a2lsGhe*W_N?H>=9UQVIky?d*F%PI7Sw{PFS{rJ+N{?^yM@jw0c zUw`-SZ+`Va+Wph{?ysmt|7A)=fAjP2et12VPU?1Ve*2pb^9=gk`*&Y`_u(VmjPLMw zUzj|vbbP^hBNVJIr3x+-6+Y#fXpyB($h&|HTScI%3RUApv)n=;i4McXIAi{ZIrkeM z6=TNC<(bJQN#7r{%?5533xd(imAO7W>yJ~Ia=7-z)Wn# zg`ujMNNpJ_t>D^6SV>RApECoHSs+e*2ks6@41X%p*jkly*B6N@H8ivW`<3gm zl_M0y159pR`b`{v7}_}J!8HlmF9+A?>E<}>EnJ@C!^(O2%*%Pqy!kbRhn^0mB@oX< ziO>}Kt11+O^9p~KB)`QbF}j!R5=%0;$T?SPxZ(2G9b}ip7yIThBfYu%jrm^4Uu-if z#?1?W(hmzr5sb0-Rq8ZG8ywLK$OC*Zyi(udGI)6nD^Y(F^T(oDlv-$}AZJPM|iwTEq zCVdU}VgN86$<%^!%#UkHPp#IdQ!o9lu^7V_%%_3B-HQf+`! zUv&T?NVsz}^DH5Y8)$`Hx7JjP!k=l{T#<>ExO*8`3*nYezN=cq!#IkxPT`v{ho%c^ zB(dza7vgmUkM4u3VwGV8nXK%!1>Bb(w!9*6Q~xRm+-CgV)5@yr;Z^-u zZDECzD|(#zc|`XKqfRbB4X2ZpmWycDVeCV@U#^0*17}1n64fSm6T%SnmXe4b6VV-Y zma0fDt1xdTWYQShedap3W6tnjg8;ofMLD=U}=Yb3VPSkFayRk+sbS}z_ z75P@K&LD_(Hu`a5Y-GTVd0)g^4sB-E>ImE8%@UP#k>Jx>2TZbbNL0??T@LWU@2qbj3L@b?)@ zjkXP)48DCx5)NYIw0do<0p+khc-3FHskF|tk^8uxIeTLSq(6H7sKO$~;!H@aE|O#a z@C7(00tJ0yTg7CPwx&J{vD6E>l2irYr=1bRVl!k>akGI<35htBOP}bcge}dy5%RV4 zs*nZ9lOI-3PrZLUi_dpk`5v=jFrsoyA=`5H2L`>O?P*YdjU*wVGK10o{Tsm=U&~$T=qJLURz!YfM_4Hxp~n`r&aHFdu9yj zFay#e=Au=7o&6OrRnUPgw3gbU21cp^iChIgq3pXLL)}XXd%9obB=POn&wu=ioJ9Y5 z|K_j%`TuX^B=6pT^SOiZDfk|D`{EF`X?y6k#y*O5b0RpB{XvW?+NBit8q)MmaG24D zB*cyfvdXxCDku04#Eu6t30c4uvN5!?nYP9QnYeGYDNzB3^IRiVuBbwLVQ=-pbtBCe zja)qvMkKGMU}%`0-U&+!SKlou^G;vD>A&MVyJ2>Dl5N-o7{(U!(*_wD%`nXvH!-wF zuSi&kGQYuuWS2Z5S}gr;h(W6g&MU7r)ce~G0TiaWm+1qlzKLtm+89rtlAV|9MDBj=*>Wr!ujmBCmBJ3@ZC&S|B`Xb<LB*zJ}JqF;`e0UO88Cn*P zD0y87w!sNuje>FF&x1U#6`(JK%5@GRBSKRxR=^|NSH)YY#ntXh+55u@frcB3O8-?! zALPnD(3MH7L3y*!t9*hsxYAb5?QU748&TgfgY_Nv#$1M;1=kfVy*h^}j=Oa=aD8|! zOfLwg661VYI6fE^=dnR7Ph@d0AddTiV8}p$Q!$@EDpvd9z|N^AF0Qg#iXY_9_;89K zs&QCC7YV|cHX+$zD8}%sUdMjdP|KObi^XGX)5gd%=R*5X6t#lZ)q5R7eE~0cFh0jj zB&W^OT!A8AA|p@_laf;qQCp9Qt*)n$j~V?jz^dM`R&e@fEK4i+D*E4bMu@kit3eU` z!(1)P_ZE20F)^I07Lqce`TWvP9Jfa7pHr|GKY%$N!L@wU_ z{en+9n_>c0uZeogByB%9y~MR@Qct1TeSxlSmU}ux%7MT?eMsmSP&+auGZh~=1fD29 zP;}qg!P*|n41*pok`HKj;R5Y=VpK7iOe%!FIGtD`?+iStj5b%z!tDP_IeQp6PQeEw zRw7aMMeo5Li~3l%C|Bh+tvGew4J%)vv(vy4O4MKC8G6{r1rq0C&;pU2-lABwXrHj~ z8D@kxQr`vh$8qLq_$-2=6)4z++`K%q@aCB>xNfl3(0U}jYtX5veZ<&_KnqLMDy~)G zLT0N1!uUISW7oW`_R9K_UHo!ec?D^-Mf{n|&?I)FN0Fm?!+QC{7xE)dJJlYde0mgU zTS-sS!zK+6sgz0NkJg$H=t1}~r9JoL);$PYH|rU(W}qUSr`EDcL(?`K{NcrNa$-c2 zivTD<_^S9yTQPxygNN?0mbcm?@!YUOIn>#h3dLkg>)r$o)e+nab9%8dE&V>Tpl^oq z@VG5{!6z*|=wIG>oHLdNKrU*cUcr>tnws%MfpHe0zfF5k|E5iOCt|X;UQUobYDJ73 zjj&rLJk*m*NRFbolwMI(*POBvBEVDzOcL0z%m#CBKc6~oSf|aa3Pc_uTY@q1>PL@Pu{QmC2kkFB+vbHAB4Xx4mbzu#6QS*7Gq zB~pWPs(6d%0_4tyK#mI$i7C#yu5Y#*f9ZQfFTz8__F>~W^kY2EhL89A+wimtb!*K?;} zb|?O~h*HJW1uN%GG|5XsVBs~zy6PD{Q>>@Lc%3QMMx~+86l?oD>+SQbmr1K#?Yj8F zmc7R`-6DN);>MX{{W$CmQEYhTSg()xNxep)Jbc&~CExKjR2`o=)~*X6hG{0-wkS}x z#%1PbFmxFNFmFt^UZ$|uhnXzjNG)IMOiNSED3vhHWW^Vkao1;#wOHvViE)21lLh^_ zok;nY9P99!W4$mf@yxOI@g>JPm1mCiO7L1Aa2bw<*T>QDWAa+1ZjN4)V@(!rtExy8 z+}`}0-8pB7wVp}b)#mCgpbxAj-7l&_hnZsCBd>taQP+h+jA33K-Llqp7BtId+zvmV zM~JmOS8~dhP9m>}ld5l31Ljs=!eACKV9;Z!u5dAMA z{f2NFa@(*yL##VOF(z)F$H1!4>V?sfv_(kUW)noX%~9%TnXViH5qhSgfEb4&qnr`e zf`*Gfxp9vD?#wT6{}qF3Gy+qW=))_^l7rox9&y%Uul*V0w>Yp%s|3K7T?@t?6C-{K zuHLi&+LpI;i*!z}3j|^UlWkkn?+#ZiW3jLwfl&<6gyPApT%A#0X$RI=mFS;Ks4?Ez z`{{VSFeKeDRn6t9%-w0v*n9~j`luFZPzJa;nGv3O)hEsa`W=9x=cEB2*duw|%W!m6 z#jC21IF4#5l30zWSuQj`?D}@&GJx<~16&EIP5N=&?L_20^FClfAGgaI(E2o5wv(fe17rtAB%GnK% zKXoc0@#PlF~#vOgpFxYFWIdj#~g=0iX7HmmL zFvJU3C9oOd08S*1Xfs|D4alcP7i>7BC7-(9jkwL%BVdkNUjnMhr^el;MQr@abk1s6 zz^WT1Vi-Ecg90C_iwE=Cc)IYu1;MvYhN0G2aKaMfasHb)9=;i1^SRZ_<4(`mFpl+&io)4%IFdFd2Nd7M9XNB=@nl9tOm*TGNK!sU=txT&Zdw` zGEOU<&WPjC&~H3On$^O!*k0nNdzcpQq3Q=;M|R>AEF-P=qz*&ws)}jUVzJg}d9pdR z?*WWy?_mo<(w^vPVGq?E#KL>A7$I}|8!_@0Ai;NeVdSDPM!+535L*!6AP~un$8@de zf%vkxi#>Lto1eB;%?x7~_n2dLLIi@E8-;WwvGW#Qj#`XqnlMt)xcylX|mZZ$RtGQkkHC#1`O|NaUul$#JSy=|`-BKu*j=Bx7-0B%K5v&g0)lY(byNZ4Bw- z!R+?)91k(I>c>rLfmnxA$7r>vy&_tk@yaULH)FRzZ~Z~+mOWE!8D*@~_fu(s0qTbq zo0w_SAm!5_Y{zV0ol^8NaGh(X_~0dLT7b9BtZ8UZ}ry?DO zVUxZs2iv6XBFFb_iz$|M4m5M8e9Ze;CX!Qr_?WLE+)N$X$H~8O)1ppv&k(EB z7&d=IOH;OMz2?gjd3nf{PMl&7((5d`K8A5-V$o~b+S_lwZQs57`m^87;%38mHzJw4=c0+DRy#8SEo&cXk3p-aFmf4 zWBnxnB!1PIhY`jwr!R!@h+i*w2_Z$uL~3;M7_WFtu8>7P&dzrrKqf`&%SIb*z3tC+r5*9mAHG?niL#oyK-ZKjsJ>G zT_%ZccW3P`a=EaGGDq!7F-9TrBdYYziTbY3wGDfTrs3fUGYtFLDQ#++ek$91x(KM*=OM&&j_U#^oz$+?4DNN^Z8NW?%zue#T0%pJ-J%1dOK zS#EfQur^}ws(QrOQ*zoG3sUK^tyBCOcOE2{urnSi!`%oTLc6#k9}K1xXntSt zNeqsGQehCmZ9xm>yb-tYMXG0~Y74vuZ@bu4gT*>k%tZbdMtgCwM5 zCqjB5W>T(*5+`!3Z@zm^}S1WJn-_)Q)Ig2^>t z%a^)eue>mUi^ica#LG-$tWkhfG=_R2LfnHc| z;w&@mD9%~UR*)Y*-HRK^vjNMvkSwpNHNO&Q&K(@~*qbJ>dg!XHf}!E zPV~sNBi*K|gio*f<=F1760%q8?|KWqZTOI$Mei9>Vi^xX5Q}?BB5d!#sbeR6=Pt~K zVl-aF4P2eJ@EF~!B(HVc9kAdZg1##`t$I@)N0l8&EO5#4;iRTc2e%N?EgJ~J%y2wrgf z&J6*4O>KDZOSkM)yrE0xt!k+sn{jM#PS*FzjWX3(-_>#Bl3LVfX2bcOnXF;JuxLFS z(OuD|J0773k!r2=9JaZEEN0wVtJEZIX%W+Wl=Bq)DdV=Ai)mC)MlfLMqu&^43Dw9o@Aj^LBUI6@DQw?9aw^DDz@Z4;ewei%&k+7_F z78|F7d33&0Dk7u}s~(0s8lJP!oFv?uLv*eu^yhY;cS*kJTM5qMM$$d(sH+cXt@F(h z`P{1R`a1pG8)1B8H|-!bQqG20r)9{=xOH5c{#Z$38~D3Nq~$0SLP2jvgEHL>y?>R+ zmOP==$Hd5z0MixeQMd3L`2#@bT%`jWhkKhbuAyfEDpp*N)(phJFFxUYdq> zrjRZsuBo|`6V!fJfy%a{jBd;~u9w!ao{F~Mne?ahcF&lY)zTVOzdMB>Sacz*o4!L| zm}W<;rk95genuRx<=7Hd)T+&PMD@gh;T7)E*p|_?4{WCwy2WZ*U`*6;sKm2CkRWV+ zgBET*J9AFwC%XxIhZjp77v4Yr@hg@(Z@+!u&%g5L-{e34>4!i4^nd*LS8vb%r+MqV z|M2w}o|G0R61a${br%gcv z!Axo}7#v-cGAF0CqRP~rQ>Z-(g^JizW-m19lWOy8m zO(K|sg&k7_yIk%ijNm1Ufa9jeefo-k%5Ic9{2CC!`kY8~*Ool}xrDCP8k)ybzkM>N zq=k&g-0?gXHFS`dV^PQaNEeV?w3T)v^n_~G_8SYH(9UG~_L@aNNMH{3EC5(>{U#Q= zsYmXQ0NZ&ys(#Kj4bt8HaXPvYU^|%j@7xKC%rf9-%$4-?@@W^n3&HBC1z%qSY}d!> zs4>XvQSa|u2K&%`*QU@$RkKM+d)ZDO!+8j}wQ0Dbe{9xZzpoWd1iS^9F|=U(;Z#cX zzY6zm3r%Fd#kq-d%(u`kor#kXA7&B(S>pIa3{K&WITDToRVqhbs;%T37z8jcYTJq> zCl_ALWc@`J`y!I4@QoCWyiBnEJbD)f`%DK!UdwPK{`$A}MMQHPh$2WFo#nG?vlFK!+F+Tc-zrM4`#LSM zNwQ?QN~~!vFZITqyAv{d8n|8zYf&Rb?Lmyz!GS7M5D~iv0%%cYd#s~)MBI8`jW{vR zmEuV1kjOAaagOceawng6W~xdr{PGs-J5fT69xO>(4yD&HyC4@qTFXW1vp&zvk=?zY zn&9nt2x+-R7c&_YV$z9=b~N^@gNb|b3uh;_Y!rc&i+X|cm@E5Mb=hbi<8>g+tY^Tj z6QyFEad|Z^o}*wV6i-&Wy?D9;U_}T*i!OLbQ(T>@vOd9hN!HRH)gv~Gh?RPInzUx8 z26wImun-ET*8XkXyxf`@18R02kc7su3cxNnQeYq&N@e~-%P%(+E>S)0)aoYUjkDFE zm*o&FS|K(DJoRpu6CYcyFIu0@KZMf3W$_1J4U#vjM_j*oeUyphid-}ViW>&wcQxtI;J++S}#u31>G1OR88B3X;uKb(PLC=PtNI2 zo)AF5tD0LC`UvXPYFa9qinqMdyQG zdSduKFiv$No>phSm}99vZ_nR*Y5`8n!3MPSJFjAW9QCOm1o(h+X2O?HNW@p3Ym_LM;>24@C81v+|gNx>qy{MgXcN zW`*bkBg`DO^WnVZwP6+)9~a}VDXTl_jYLeS+gNeT5jGX&6mAt!ONSlm+svVM0sXyf zAV4)G&U50+#W(^cyrDpV`Dsrs_A>3sIVQnaf5D2BFQ}Vn#)Pn3+;k4%-KUtIXE4fP&vL$Xt} zME7Y-P6(KABU4bA2npttrzLqu>CEyQW(8dtB*~>{gBq#t{c*COq5(&;7rmFJ}I>ce!Ygw+`3~`=ws3Bnirkytvr||nQ0)Qxg zF!Nx@YBF$!ytSrA1TI8#r0Y11k0*A@%vg0nL;cmKR`k7;cp^SU4-OqGLy{t){Lvhh8N3z zbI0BUxz%gRAb51Qm59Xy89>%MvraIw-=c4f(9di3b)#Ti>+Wk>S3{d5uSx;qZLMR#5|3P$)OfE({@`Fy9QNo76^vd<~UFzEUKIB;&<4?42=ak$` zK`HX>lK^Kt^*NPh>R!mD&H&Vww5D(dSe+9w!vC>4FWx9Xd1*;5Ox@%44X{178;!=y zal#+8s7FSWr1RMOz@Jw{RghU9kLzv`oIMr7;Ev-=_CiQ){NuhmG{=zlIklvMo(2nt z8F`KPwOw`Dh<)2xeskQ(;TWjZd0Hf$S(M9ibQJ zGUqC3W+~%C-Ct~5^+Vg80fQlEpZPfh6mv17J*VyCer!7?t^S<(ia62+T;cY+aMZ)H zS7Ya90#gkA0E-x(7K!MSzMW%o2QR#*UpJHXRegggW^3+VI)64i{kqdw=n{L;f}7*^ z46qX9l;Y>}PNbl&SecQ*NG=Vsqfj_lzqN=}wpq)xKp(E2LlRFvahwxX4}$GNC@6we zIJxaZjG0Sa)D#(1BFah6d~+gXYW_P>9?=u0YRR4;V2!Kjh786R%zV}{mU8IF?Wf?3 zP_<=OV$?tHxA7}f8P#(=^*Gccp=^XNGbcd|$P$GvP)LlIyX~(&eyC@B``ItQcmJeb z_r#U&zxn3fhk3XC?xX(acOPDIZvNKS{SW2bxIh2#hhKjB^Y7pM@!x*_1P4c zKRzaM-hDkKmM#Bd{ayg~n|EL4n@0Ro3o7a7e?^xc|5bzFpCa!o{Y1M~;8mE*6zx@S zmq#4xxu0_kfB1w~%Tt&cu}&=rY^N}@UpLPE(}G{kP?*61GO+H|J5KIuuFuo|<2i)y zp4P9zHY0+JkjTP%;2|%Je%Xk zWiC2VQNc7Ep}=&=yPVF;?}U-fuqpR;b*9=Z;T#ugt3eJ zWo&6YH&j~q9(xUKdbLinIX)lS=N1~#M;g~|NYVZz%-kQsOp&iMo*i9gTAsp870L(l z%on{5zyle|1fj;Me}0+SUte^Y$WMTxg~^cUm~9plb^-((35$1m;YN{6QM~G{RpIP@ z&W@%NkhzdVKU6uhept*4YwW2GiVV)l{AuPz&@R{7763t>s z;Ns#qbM&%r<|W5eWm^@TQT7v^b|7AY7}0!Gy&b@%_2+`4dJ)ILH(Nixx_Q=Wb~kvk z&M+j5v~KmYbc}6Uw(G}2;m9B`5XX(rl$ind=)xFuLlGHpS*kG#nw^-+YT+cjxA(3t zc5phYN~zY9?ashLp8`$M^V{I+uGK*3fSI8-&iFa4zk+IT57FPYURu2RI0gMUM^>CN znLz42KEm6HKob{vHSFfi-9#fsUrSCl!B_nc^hGwB)mZovoOI9 zP8C!CJdtJ&eXZ!c%5E2Z%}&K5js~UXxlg60{%Y|OHBVGET@Y5AN+?P&YI-lWMik95 zNA=MJ6Wt^BRP;QlxEN_=I0{j;;}n|;NHu3Mv}(=7!!CQcsBH)`#8A~F5f1N3kH4w* zR>A9BH(SuA@*7FORIgPmbM&}qJ975J5*LZ(@=lDsWQJf)gWkc>5X47{OXRY0kcRpx zyX{)g+HIsS$CM3&l!-eEZ~{C5Z&qiqK@b{P@h&4x$#$2qwpf^CdpJ|to3ThOzM_?M z`YWVUJX?4_R*o{bLFLXNb6nOBf5oEGODIDWQohKU>2)USfmn~Q0$2qVk^xiVzvYOV z2@jd3kb;2Rcm(Wmsk$?y-%3BT4fm$z>zS>bSu^^*Z3xk9rR z15oj)(!}#c%Puk~)KhTen0cXAEN?}QT`A;|uKoUtA$`GCE!;Kg?|V^cI{kmu==C(! z*(D|IY7T6?c+Vx~G%w;g?v8 zDtryHH1un?zIfi^rhDU+xii^vAc6<{7Up9TaZCD{nHSnxCv0rz%B-r2ThRg)E%Eu8 zJ__TSuD9ay1L2HW8Pdn>MP#q5l30>$W106s&XNBHZdLi!x+=^1k~MRh^(J|saQH6t zpcWin82HF5+INwR61Fh-sk2Xn|vKa00vQFS<6a>M`` zeKNz%47L0bLDLu;PKY)m&Z`*iV3CcL^-30Z6=`IyUD!F+SNo{#JFTv7Kl|nPA62ye z@ri4{{_fp(-@KcX`<$JA`0&-6U;nx{max$`pVCJEi>?3l*HP{H!ykdQKmYOH{`H3+ z8RO@lKLc?eqx@(^=P3W*oAL3(E(u%_%M%+muR}G9w%VIE_=p&8O?>gr|16}sE|E`?GYw#Qy1H{JqcUxjtgksb;hKY ziC#R`vg6Fi2X0*S@5NUu?#))EXw?@^8l4Gx;m1-BxNR$GX@S_?6__Yo8mC2FaX4kN z$hLdUn|?0jXC~u}8vM{MXA~leTQRu4bF4rpc;Pa1Ox&Zj&P|Xuf{IDtz~9B@#1}mt z`o~4`C==m~)~{z)!3ur#Tq@lZBcUtv>R8vFwdl}875L~RAur)1q?K{YSAT8pxI`JN z7;-*7v)7*PY)3vm{nH_-#N zl{R)g+ifnl5&4MS+}=Km@C_foe)rige9Te82ws;}^aSq||aYiPl>Pp$%-C5eQoDz14(LP9v|m7*YQ1 zsZN<eq2n% zY0h@rjpJ(7J-T%x327=#lhA^3C37z!L?^Q5s{oPyfL7=@9~TqjY4qTpMh_xc_(T;! z?sdjxZx&lVt;bdC=M*B!B)c)djy;=J^SqWI4gg`wYNsK@yq0JWnQ6+}{i4Qk2gfsw z=acVv&F6+fx;-u`F!&R2Dt0>Lug?KKw=Ot9y%5Dbrc^}?B#4oU#H%M|ZYki39hJ&+ zh_4H63HdGz`C9ywaSt3%nF`krHDQ#~%W2c44t2byr{1qrQ8-*k->G=0IcjJ3nhS=Z z30!Tn06!H)*}r*zAFaz#v+ z-7}YD5pNVIJBb@VW*V3y*%-plO2mXEe!pC{KX&)A-@j zWZ(JeaspefpxS!#qmhM3nJMamC;wjG)^Y$3QQi-(kO)Q=-4iaJE^pY3&DJaW<-~0-RitApRj6biJ=y zwCsz}H0Q$1YBR@e_b9+PZz&%BZxJ3;w0f8tGL~Cw%wge{)=XVVWNvXia0KCg?NTR8 zc9}V^{1sIQm*l29Uxv$Fb%BIzsf|3h~Jd#}B*_F4tw;i&8oZH`fUK|vxfIS3!4f|~=ButBf4 z8@MQFAgDAB~(UR0+ygZ~96`k(tT44wl;a?)qKe{)%${~EZ(YY}z>~tYjEKaYx z$Ez^uxVil-PBq?wdu+!OE20-5z=?<`ehs^luDefFpP>i#AW~YKK(*bEskm`1TJ}x} zJC!gkX816YF2w%ClhuZU>s^5xT$OP&z*4Js-QCrQa z9;@y0v>4EaM5VVF78BiM#U5maG5yuOy_hE4cXIWyw9ZjHv1w8R5r~8hWiSUr*j>we zYB_g~Xm+@PC`_VY*vA3`01cMuTht-yOjTZdRU%{c+5*-HeIY!KD>eg2+FxgB$t>Ct z0AWC$zbne;da6^FO^ZRWnuCiob2ymM0Ebsc(nzB8-J z`H!|F>B+i)v6Fz;(Bs*4yDb)+4yBhxNv3n)yfW{rGC~#0(WhXWzE4lLDyqI&j6CAX za>syvI;|@?E-<$4HKDv>do{p8XWX0FdPC?9Ke98RvHY?iWwz2Ozo4dEX}@ns2B_+K z>>o~4V5ZOozA#$xLPaPjJ)#&))TriD)e{(mj0v$j$p0@Nl$)`cL!e)9=uvJn)7xFu z`1&T?78ZcoV4_{2QUGd0YG(>#jD5-v8xA>562Lx?eQ{hB#Whqh-LPAsJX{9%dZR6N z+$fv|d;mHM6p))0a__1l4hf_&)!US$%(>)w$;wpctq1DNs$f4)Gq&R~Aw8yeTc7e6 zN)-IjjukQE^5uYsS^doIa6xy#JSz>hGh0~Ks8GVlB)pfMnf$|b)jL^r_2oPI^YMzW z6AeWzea^X0Wi*FcCDa#0RdG|w_eK|-BaKB7|5EnEd0FchgM*|j$dQIel00Aw%2VPd zWD9S-a2QM&w~K<3whadw3aAuv3@|Wn%+Bgv*crPUxH9BTQV?S=)YmJ=-8)ndZ4O-{ z+7MV|XuF}sv_7_^E#X2bjFV!lC};}5o~SM@#&RfiYQ?B7RK?P);^O5lKnwh7)v>@G zVKhAg)q`3AwuhvEx2{WkFD%?XeR}ufZwU*3{`S4F@Lzk~-=yg#FxlI;|22(?=RLkw znGl{um~kLT7Itk$BqoMd4VH9{wzO8f3KX)G)~CmX0fyxo&t*D(DkTx%nv5Nv>QyPF%NHdc) z4PVbm1}do8gHP+@VOOTQx`J>Wz6duc2b|cK52ej__!O+c7`P&(sh|{X<6Q``Ww-ld zp1B^&(FP99DGjB!9^9#1<7`ipMgxUQ7@{KNc!fE0cWRH}EDDW!5qO|^8?3z*p3yCy zf9WFx{#r?gI}u5pvNo;Vg>T+C(ANfCrhnzl2p6(i+HkddxB8ma$@L|eRf}XR2jR#v zA+59*7+2f!7L2qyGz%IwVvHi&z15KQWET!K)(K6I{dK5u z=|QUQ{rXG;{ZUop&&-E&gqFVW`zwYkdEX&*O>Hv8x7??UQB_T$=mTq7m{brozX=hq z$YZXhTgQQ>d7z6c0V>cmZUFHEx9|l<)LWX3nTj(fOOG%*>S6_qTmN zG#%z{U2837Oz(JOXi$E*JBtVIfGNWjVAa^yn~H zTZfr)EHr3_IoIBVDmR-vF<)V?TLorqa8(g;iVb5U=_wZarOi8%9i!3#Uu9;Fe>aO#37W59S^g*ta+m3IlgvV|T?Ww$z4L*BF=b%UQH} z&~g2U%-W{I7Sv`)qMJ1>==DT&3!>4E-_Q z53LAvAYRP-^xH7b@DeXB!f{prK4U@0xflvx5ap1pYS`v7(Iewk~^jcCv#XVhf?nwwflu7r4;-stZVS^cCEu2fViiO(_t9z;3 z5h&+uFK|ZU;PR9G7si zp?Cu_uGWVe<6q$~xSmH=$U~=Zx~jY#mlUG_5QeIhH^sPUmNQN|ZE+^JG^qc+2UjcKUg9W-JXt%Us={NB>7 zx^ihjNMmizm@6tCD;ftpWZ{G#_-ddW2ZrT2X%90{9_|fMdX(d|7K`GVvQa!cJb0W> z%oH{brRXkM7>iN+Bl=Pd|M4;hW!n-EWyZ{b$ZPzWeF>Z-4y$tFsP_cVGjkJTfhV z7N=20V%kI-XViX{GF!31#2urI15u}X=VdfJ-%dpumApb2x=B-mg!5&nh0Zk&TNSTW zD@=w?dZg1fr|_asX0AGC>9#xJ;fC>+#Q;MAEMI$hTrw~OdO0&&d^91ICS-P=K5W>i z(J)Yegn&y1%(g)rzvE|5}oXW~L82`8iJ?HfSF+APB03pTl^& z?nFZoa9t9EdiVz`9|$x>gmYhQSLoreO@-VL*nt!rJi0yj&7!os>@!*bY5OCbR^jKA zAh3NR=!-_~R84ysYT!Ba#tPT61JC*qwC43bmtLvjq|=l#(>Bo2VZ|4zw={ga>%&** zHaqxBQ#H-+u`qMRY8YoOoIS$EzhnrSzW17E(TLJyCoUsTgDUsNDysDL3Me`D+zswug3uZX)KofieK zybouHkk%ZEOfw>$^*(P^g?bR~a>#@z^7vZtl!V^Bz>QK}-nwbRITx-D9`lOcu4BSf zM1hB!x@qByZW_`CF)zE@QuTus1}*2rt+`u8sgAa%78iZ=79ZWTw)(vLqWDICRFxXS zScr)gW(^t8cS4WD2nV1j`AF-cz_~I|CeWq#>X8{tCX0qsg7*5Kt@n+zZXuWmwQnej zVG-MFJYvQ{qi*nBwC=LLk(-j$sx4G5WZiLWLGW%e+A{*PuHo6EtcZ1)a<57`9K*F! z{I#D(Rf|GIU<8zdb3wMPbq8g2^&4(Bz6q>b1gmsKicNTnLb!uwcP}ww4b`9+oHi=o zSXCGI^nDiILbXhlq?SLx??4yuV6O+J_K!u#+%riVZWN40x1k8ApxCKhj2$*QZ^igCVoj(_w=&)!bfFL0;I6CQJuT8?D9{wMXgjI| zOId}tV1kRnU)7Tu_rqO5NvxINw^R4)R@&^4UbI7Cw*<2Y(`+zXreqs4gQ`qzbOo=p zrYIJjJ`A(0P^Qd+;JZVoPf#>3X)1N-<_Y=Rp;8r(hIS|rM8UU$hf7lm$K=`LF!i9f zu_{E3#X4OF^5J&MtSFQ+>Jr_{m0~iaZf!Zn3mLGmTZnj=X%)az6Ml2>dJrX3nif#N zlX(A%?E+RoXA7rQ8>S^ig$aouOcLNP#}p-lDK|Tt0`_Q<<@}2#8C?45@LaK^Q0R?m z9zpNAw&D;aOZjxTk+*x}Rj4!=Ay<7us9Jg|MvS8&FYvX{)a>Xx=o{WRPuxim6|zfJ zIBTgIZOV)-s5Yt)P>GBhloJa0a=15-XY`W$mBLGxEYSUIxF}-rrU;8=tRSl%Y(b}P z+NYnoMV-N7?G}$(jH;icohR^0(4WrUzi1S!bKcixCk|qLeZe%p-NSeZJ!<<9zvfU*Nr5W?jb5? zO_=h8|D}|_4xvM>VZHzDvrwZ#z!ae|bDGaVY9SmjQqnnaP~4vMmOa*kNyMau%o#LQ zISm4Ykx(#36#r7(Q(kt4vj{6#oEAU`Gzg^dX!b|#l>YA2-v4jkeR%idZ=BkH_uYr@ zzWMFf{WV40zx#%R_+J<=&pH0z{k8t)-+l8(=rO}%F z>h*-C+%R`NvC7(oYVy?bbF0E+QatM~WAp_AOnaQs+p}*P;?2U9v2ul?9mfj3NS^sDC<(bZSZp)g{|b+W{;n6YIwG{=!b(mue4 za$pFoa1}77SDZp{B!qgU)%z*Chv?PZILdx@Srvm3sKd^M`R9$Ir=udNz<|~>V=2GL z(tW(YHQ)X8>D`aN|H=I>zm0@`{OQwA-+q|X{m&mheEa?PpTGI-*L@RTyoQcl1(&#>sD_ew zhywabxcZwD`0?292vq7R-Aa7IHlg&ppao=xP?ms@X-gIuRk5H1n<-(-bQSV0#$2W} zxXgDYh!Y_ebjRVH!D90btxBmJltFkf`zx)ZdQ*KDppmlRe|48yYubKR)7gY zNth*;A8V~pq@7CoaI30?uE!A&$Xsc5SOYCY8D3~anQ|Xqt5t6m z;(bMdhQjH2M9@?TJM}H`O~Pcn=ob&CnsX7ZZ}-@|E;8j?cRgakSX(j&W@1(VH5@Z} z6@Q;uNln2yoGkaS*qpRolp0{p9Q53T`wgVTTfd?IIm%!`5hyb@aC~Xp6@@|sedAEo zkA#4!m#NlXcN1=mCk)mu1Vho1IcPLF-l_mvL8U>(fs_Vj1FLOg-tH(0nSjTaB8Gc;diU0&v?=Su0n4Hf$(vbj#xVs86hlV zkA0Z~0g`wKz7!oS9A3H_N(2E8w*)=p;F2i8G5LqB0Q`dlh;L z4b*hpxS92u2NsA2W4ZXn2sN9oPc95)Tdh{cy>6AQwzzZ$WHn9Ihm4-E&zj{9T|ku3 zdFfUcL(jR>yR{1%s4^{i^5*<)E%mm_QPhit2Jv-7 z^aA02T%W6=jnm%+;nQ-f2pC&Y1;p{zWqTS~a96OmV+x}U;%_rcqbn=!9jcY?xN4=~ zGp#~5(-Owu?M9oQy16y<*&uQw%CgRpvzP^%Gxl^TA&;OUZ&3*%a2lsG9xotx;_uZ} z9JQ1M==k0_vo-cv?isjsEixZT10*3Taw@PEeFMD?Iq8O~Q;RB>BkZ9z55d~oUwwX) zCBhM5f=03R#50s~n3}^5KBFs>Xw$@~ax&%EDgjK$Y7&d49Ud_g&)X{FxLU-4= zZO#RhsZv-!g@;2Vl&XZHn@sOdTQWeKP~D4AxrLM7hXAP}8X*RrRyb9W+vk1+g*<>t^<>P|VmfdGNfIR21P7<-01ah{%6O^h6-PC?(?7m$mV4L(lAV zN&CsGJUh_Wi)W~+QZL$ZT4$tBo3%o!JCC+`KMul)?x@cUT2=DEB?cvDsnop}b=}x&qc9_;BdywT!@9g7O0ay2i#Z zz1}(Nz843krfGqDk39`nr9xmqtL?5T;EKv5r4T(G#<}e&xUqYE=Y%?HzcI5uIF@>r zScV+7C|KEQqTS#TApxgK6cr2oz1=4s@FAhdI)Z*h*>9jU5|J5+jIz2x@^cIU!imuJ z1so#>UHOVGc`VwS3a#T_Z$|xYRei|w<%L6ogWkF7zl18;P}yE0axQw#THUOHs&IG) zr}&@%QgkIAyP&#cg|mWCJu^Hoi;=8CvH`vTh4s1}$hzBG`(&bj_30-RKqEk z4zwCh1nxOw2{{VD@}olSEjS!gX2#8i8PMsBZ%0Uref>29I-~_=MRv%sr=F=6pFrS^ z29`=As_8nm<4Og~O243W(~(U*EqytELf$%R!Dxx2!?>aKeq)O+)Tdm=;kZE!+pUWr z<$lglCsltcAsFA#L&ja{po|v?iMzge>yMTo%8SQz;toOvGnG31^D*wb)>?MPNj9g| zx$=ZrR^`$%7tE_{*ML5?Y11atgsDtJhhJFWpjlS6TXh*i6Fw+5b*0yM;|OI@_FtJ* zDujV0I%dG<4ZBHAcbb%a{nh&0-`75fpRYe*W}SGL`%<^ZMTvc0atZU zo;}l*zYYF|U)*F8@b`OxFRvJ;YlsTrydq9HZ=ndta|-dca^7*Ciose!MWDv)0q%WT zdNz0J2MSHrsd5)e(+yIrO-T3#T{z@G2Hy0D$d_5M{cQSM(Ao})Nw@QxLZnuu%D)k| zjr<#gnPIn6MdeGowsT2}{XT1<=a8>OA>|l(joI`<>CNKg?ghl+ksH;Q&5-%?s!SEh zWtej)Dwezm%FOq{6mGDpF-8vWiSzaT;oXnFQG$Q_`P0X5e*1NQ8*%<${`NZk-~Z|7 zKmX}JRg8c9@Y7FU4WR_;-eRA5>Gfg8TV{v${Xn>}k!V)W+$2^Af`lF2Mx*L?iCCD9 z=sAwDQwaPe*_dXxU8vhA`#nxJs2@zl#zA}RNJ|z7nlsZ|ViBQ7-Bl?HGpYcC%%6Z* zed7F!7SU8}>{GFEq0e%^ED#~u&{<2s!{>K*n z70Jdaz}%mSX`p+a6VvA&dU@jO)cX}6IPh(eKhy|hnu?d32}W|prN8-;LTLF=0L>=hai z*uUX$qbLcf`>e{vnFf`x#nP)OkP7ReSbop(tQ#b=`kaW8~mH9kwq8 z#vpQn3{FOG$Th#5-mGbdm7epa1lk*n7znsl5PUnYMQP43UEK*s=+2azf3H&MnA6m7 z;_YQf+3nMaHMqy;V(Nfylsvk{86>-eNn<>Z0h+=dc(jcEZZEsX;(ZhRK zM-0X5p=^u<^oBZHZw1e& zC@G-2ue5FpaTonGRi{^5Uo+P99osns5W;No=%#CHoVP>o5#azKJ`7v5Fv@W$!7N_+ z88nvfAZP(BYV$y+O({pA&inFKkQN7<&B>j#dSJjv)7T_3Ae` zp^fmr2q|T+?6C&6%(Ze`?6sRvVg^(PlPo16bFc$GBNC1(HxW)*rg*mBw4d7S#3O|) zq@Ew`MoxKp(mOlmFBw+VGdvSdeL#FUqEGi|jG`B`dd95`ubSqlSWOBZD54CEHRv*e z4fH4-fMQHdea4E{rj^jDU=Z!)|R6>VV*PDb4^Y4qdZq4QGNL(p6WL zzXetOt0(lq>H3_CbH@U4`_yAahyiCc{Tsx^r$yb=+qZ@@B8a*|??MM%a6pL{EB58s zV%NWJ`=&Q%U>d_71q!^pVGfS+m~fE`_5Yp$Igp6kSfn@r>CM zU3bG!fbbOpNvNt=Mc)hiA=S_2=oi{h0SVw^GA}GMNnY@{Xz@;JyEn^8vyd}$MZpPG zRjfyx0&IcPg6iA3RlyR-$JznN2c4iIm5&Q!0{R`duI0vDX<91Py>tjY`^w#6(?Rm{+zKB_%iE!rGZ%MOyc;1tpYhB3;z z(yM6n%WI*tqL7jGGY1n@C~_?|Tzsm<6=2WU`*d8j546Tj#>C|;G*wWZIs`QRbO(vl zUZ>M-ik!IP34jX-=RgbMjtbB=C0D#ELO+I^1B<(jxoEEmTThKeq}UHZa^_r47@=b< zwQ@YS&$Gf2RKCvLtE8qBTCSqqU8k%gVmCgQbhi9O)KSPzW!A2ZR@&Rp^AvUT`aD*a z($>nM9Ga{R-(3}0Cgt^ZB`vr0LMi&{+Bqk56FR_36byk7HHJmJ^`NobIEmn#N83x! zD!Qe4gCYaID)&ylYGrZmPVoM5FfLTjOMj(<{G3^TeeYZTyZYn1AAjAq z{KHS5fBO8*Z@=!F{(t?;AHNCTgnt(@o$8TiY=4VOdD{Ma{q*Vg0>Ga>fBu^4!^jP^ zYX}nxP|vjGrd^_&a;enV@Q7G11tW!51zRmRr;OR-5^L78ZBY-vg$SfNvZ9S$6 zI9eD9v99}#y3Q=Zv8ZT=x_%|qX1$p^+H~AXaFefgGt_h_;xqm(e0B-lzJrttz2oEM zs%?q+s)=BrkA2_roSfJ83i={KJ#LbGqOykLXxl6=6>x`?J;RHL3@RVKiSQswjH$No z_%OUd%7!%DxEK8h^^CEX`>l6e0Kvufg!Bv=)ElPOS)uwhT!~MXoyv7cLqW%6kkTu+ zpKA{Oix7{S8sLbY2x^_~B-POb2URX_GLX0=;*V;S+iplV`(UnLJ4;}z?(oD9B;6YN z0-V0JyDq{Kq2tbOY1r`QMm`d2foruSw z%9tROB0`=7H21IZWwMHi>urWpB|0Yr4NMybh_-mqbjd(M z7q6;A_c4brk>mhmI=>`X{6*z5hOY=A7{vufcSB8{H_gY^_tM0H5gksK1z}++QDqJ)%rqE7O z9spNxOr@%>m*^{Ke7@h9BMnJ^Yc`?PLem4amx3Y;&M-_lZ%hr+;>a7qR7t-E;r|>^ ztMwF`zKPR^p-JLY-{ zGN5#MV9u;Ku)$zX`UW{Br7Nw^?wzqg`Ju<-3|^7hAJ}nwrZ0BpSyf44sFjSagY+FhisJ)Yrz3Z*a+I-UIfFJb|q>A2>3{ujyrJHjptmOeNw))mLfp` zI*clXXCg8qBz*U=bqZ2gr~z4yq5|E7Nlrj~hgO&N?;M362*^&A|1`qd7xWmTRxrMb z$0(8cP2G9RVf)ZOPYBQq=da8=?*|865FAw5E{Z;g(4-qb8(%U9HW8aV-2?8*b~Z#O z^#RTmdu#>85Iv!lvpm)J1{xRsAZ98gO^u6sx~tL(z(BA!SoHb_93gRA*6m>Wa&dU{ z2&I7Q@XFJASK+RZQ+x2?HVh_JrXJvz3l}MzDFV+~%er99qiY-V7(iNrO3?ief_g;R z2o;Msroaol)eVN&Bozsc>a7cNXsQ8MhKwz~AWSc*_Se^@gI_X=*_k0_2H~|1tJXnm zc{%s^A|s_KG_3NC8%%7xn)rT(BK@m}xzZy%rV= zI<&wx-JJo)`q4WSUV%Q;;JGc}$UfX`_>T(UH1**m1+$@T%M>ukl*qWAP5>*^4Q4)W z)=(7LZvwdt7C~85tjQIPDHxJW7b^4u*Ul75SzU43k$K;|o-;0nn37`vr`N08Vps*y z)(#s^=u~?XIgb;ThN7BcT1A#r_&v8EY}(#vN*wvRL<3lnNm2K~rbGe-r^2#UeiR-+ z-hWY`KVg|0bnT}rCz8!JA&x%*>h_3Aj^k=RwL2Eo6jTnvsLPIy8fW<@H6cdf4S|s1 z_FP|rl6&56Jg?U3D`zc=1;`!*gX2dkJGNV^?K`Bl+3m37R%xTJ;Jn8oaYd3Pb)^mL zeVI%T9QZN`D}+mCDdD{D1LKM4T1d$D2$}0%thzHryQ`amQHJVg6BHM8&4y2)An){I zQ481;5~Uax2vi|;jTpgHmkfG#`BL7q99%2`{gIIbw=nfafM?^dB~zH$>1y+f%*c=a z`{Re}^Sd8^zlZIet7Ga{@Uw)&BA;C`5*q_kN^6| zKmF+s-~8KO{^1}0^p}7C`Jeyr&r?Y9yKg`L@WZ1d`MdwN|Ni60&!4_(a)R13^Wd|~ zIrfQ2F|20d`yw_d+2y???6*w4@@m>8;CY|Q1+g?mm#53Az!_HLapMHJqR$t0T5Wl!86RG}^X>7a*`_S{zP#y@E81?p!Sl0? z?jQ_prO!|p$JbhD=v*>|BuL7rr?$+xd@-i!VRkt&c|k#>4xrwONfMBhE~k>m3z907 zC@S4c(YDkZLV0`98N%5VDoA^R-`KekF~7jaZHhS>ec$M@P*TaJD`QFOrfyB(7o9IO z!b$tOY7DG|%X`NZu~Qd7D{p~4AB#v-u+xjTw^q0a;$jh`pn?!TQbyXkS%7OcR^f~mK z@KC2YiQ7+T)!_s^0)^qB6qZ$*WkD>S0z6c#bXzGmv#nR@PSBL0V#Yra!Q9}$bg(1C zYQ^B-(&m_Z)h$_IWfO3W`d5oUjlwQ`{*xi8zGCWVwQWxrtOB~%aKK-hTJ;Pd zzmWy7Sdfd?_f`mV(B~A(4s4^RR3sfoJ!gk;PZEZiO%|hjf$%jq)7quql@2DlYFDU} z96YSBuP{q&C;E}X6<3P!LOt|W@kCUiDAmTmO1FSpj;<2k0#>#A_qt*{I<-j5sSj6f z+l6!jV=IaY+I(gnm(aN{h`Gkh$e#P68@Y9khH#oSRpAKUyztm-Oj2cnBN*ULx0=hg zI~f(V2gce4=DNO{HV-D><84kd)?{=KkdBWB#y;BI%A><-pT!-z&=F8&Zu@nu-WVZ3 zYw)Y}Rk6lE@~V+jmaur$y$bAUG*tXfWQKej(5Vy-Ld3_@#4ynLxm`R{4SB7h+O1z^ zv16LYXicNGQnmB3kyDb;ofeSOuOgp-q1<_~^ zb%*p=hVZQRDyB4ADF}z?4TKKzU6De8uH3zrb4gl`k8B$T_a;@-Tv;9{tDCo$^H!D; zxQq(;t5Pb+=NiV{lmNv!WJZ#W3_5N$q zb>CB*Gr&PbnajB|sZNSCJ8XfcsOmK#)T4AW)m)in>0GUFx;A#lf2c+psbS1UDknEJ zY~HDyRASyeWZ1S;)hAkl`q+q<%*?XN>i(dW%DJ>HDRJ1~Hg?*H1;Qvm@*^&$YJU|J z_3ahQsk&K3ZixWNZ2~IIBv9uV(79JLP?)7vak6Pv5=J3Es}iQ;JVs zAE9Mku=jwZ%PdYU3KiH0-HSGjTeFgcZkm!_jTwB>g6gO~Gb@S>=7v#m26vaEct|<1 zt4J1DsXsE)y(OeG@??rnMD%^=k{dJSx;m&wh7)+iKtR=gdfv+|4s|dY~5PRnGTn z?cF)Fj7sqftTKIvz2cLK<84u$cxF`y7c!N{q!zcQnVczR-%urapv)N2kA-X6jW_!b}s_Z5=1+{UF6>L)IoARlu z>$!wEjf%XrKF1g&R<9jP=7Z z4?&@8j!vi~6%Y)_JDCGNhE*HmxP>a23cD5De$uf6WK26O+5 zF7hA0|NQau*G5ipO3ehuk>^lp>C;g}>q1q$GFXX--sAsnt0D$MMZ1=xLYkJjQY7>} zy&yS*-;3U8jksOX#AYTBiUj_(T8?{AUTFmRjiX}*GPO{$&EeLk?$pT12hv)K({E+VONqJ}C0Fsf#$YZ4T8c zH2+mH3-yFs5fp9Oz_rlk5G3W~o`GDXc~`_e(MK#6|1vE$CeH)`rYO0pNoB_D@TW9~ z3lG6N!2AeP7eOd3!bm=>0_K8XzOqd5&p_^F;*AcU`BrD)Ua8n2>P=>oQ@bHp&v4N#RzFOcOl`jH*7>Ud91&=(%20*c~x&MGZ

w~;X{L`16roVwkmr;o*M&Z27HnDvQ`(?HlZW^rY)h=sy`UFJyqW^5nPcC zp!#Qh9EZDZ74FbZJ7r~1* z=7zKaPh1uh7L8XdxSen~?uVu_$ZY~H^OPE#(==fmh10!k2t-2w_FDG(oyaijaSIRc z`dAbI+Oh=`0;+>Y36R`Y_zhb18NWRQH?*nfGcl%eDI^Lf9C$n^IOtKWN1@%jH6;ei zEWftQiI~53NAY>!3FK;>blq94p>?iZvmV!yZoZ`!9ZR8h!ByS+g5Z*>Vr|CzU{S&3 zWYlyB6dSl-u;MYNL~2lFpfZa#UY-mA22@Wr3Q!Bh8kEasOg`az8fa-8hk>O8w00FG z7(d>6DRSi=5;eYajHSIel0G2aDF_%<9fE@}kqh)jz@dN>5NJU4lUKrMBIn#zdu_D#0PUNbnz;Qdp z854Qhc}8aj6OQ_{iVK_K`ch1sAlp_*MkfYP4T6Dy*=BCNbJDV7Q^WVc*0Kwx`K&^- znZwSTE)~nbBs>VP+8=Nfj79 zA_D8BSe8iMoSAaaiR|o9bfEFBCEsbu?8v9K6jc~9mbU96cdakzld!8)q%3(;!dJc3 zphGDOg>wp*Bm8*s-czjXN_KoB3V>){-r6SH6v(@Sn0;6l_y&>-k zS)}+ld!|W^#|UFD=n<-LHd|Pir-dG%nym~8Ol$X(5zT242UU0P3L{3(JHa_PX@4WnV3HC7>MqboLxmkdQpK!>8HmEvV;Jy6v1gV{dsWO)l1F$YUuf`xlI>>o$Yv zboPW$u&2y0)T@R5&RS{j%i6!P_5>FgP&v!~+Vn_~9*C}!6k-y=*WI@ZG+ z?T5$N6M$r=pskQaqQQWE%N}0Np1`OxPi+O^mBIegLyOl5z21!X=I(8hI=GXkL#L{> zJAy=wTbxRCtUYO|s_0oyfGL0`tLBDIjnas|fImV$caBDbc`<|)w`=qMz9Be5=|vmI zls$&x_7b)2BFx-(^o^2sC6`fFr(m$wGRYbft3`TLXT#J}dmO*?HdV^Y`Or6}sV5@< zg2d5Y3sZmgD`}T`qXN-RuUhSs~e)4H5O_QD=9&3TB-vyNEzrZ*WveS1Y+#If}Z(<4Gi$1B=nnRbn! z!Z#1k%)O3B@mm)LO^xYR`HnUS3mNtMPcM*x^((z+6I z4B97SA@Ux0meUpFjAq=U(DP{z`X1?7Zdm5#?nb2o}493w-f2wHIn zoYJk00~^gTAi4;QWCgiCB_aIE_ekyWBU+9Phtl4dLvkjqcrl|}IXlTKGiAD?iB9tU z5OPsyX@X3`PI~Fz`}yowWBJh)pw(i8+~|Wr|}I~AEQgfaneb39+~#jLc;U+=m<`;k4CA>>QFX8Ac|S) zHy2HP`^Nm1y>Xe?e{s=7q&(v94lj3^E}G0pW7_h?MU!rAn=YCq@~6tT`dIxE%xxF& z`QBYwY@``lyTfT7Tbas)wo}e7Qw2zHOu2I{lfwg1S@95IK_TC|Oc_bxTRqZ>EalEj zaMpztxF*LD8Tr=pTUGi$V%s@x*wzEqn>`bpFwUnQZ+1HEc(cP3LW6j8y(Xw~X|r_O zYz(;84?X91gxmJx=XXE;2I2O{AHV(ao8Nxjf1PlvfBwnx9H0Mn*}bKA)F1Fhac+oM=>8U{yiEqVk{RyNigLuR!4RQ>Fb{Zc9)lXJV>bh8)cxLyPYCC5O~cmcf3o^$F*u-37svIcH4B95kY>Hp4MBf>tW`F=C`pJ&{cZ zd#kW10wKyr+HqsTG}SAJgwfoyUQkMPa8Xgp5i`_SI1mZAh6nr6t_9v2GHUBQ022T~ zX&4$Unx?ukJc!m`yx84CnK&lrmak14)aVyrknZ~qMF2hNT8;j=M?pZ{C0L1DA741P ztKi9kI&b}tgI#pcvBG1nYvW`K*>c@}g^_i7ux}`pk41H4Qt-Bu=Cv#Hy`Y=d?ct0S z=~9F46GXJCaQm<(&M4@%wB{3@Fotg2ktVfG*hz^Q0d9aBGD_;oh=FcrzN=-$Qv~ zEEC3|(|2n%?VLRCNVKE4jBr62i2nOkd)hTYDTe%NVbZT(*JAZNke@!i7LmRT!)Ar< z8JZ7Wsgd=nb)gJg^_QEhO8t51n`)u6Xz!>@kGKBZR-8_q);%*`!h}9^#&2@ey?GAy z>ZDNM=Cv-sB2aBPPt}IRkfz1R4Q@b-ZlT`_GYZFCkTZ3W<>Yz9;c-I}KERlAY8G~C zS9D2m2pyO&;Q4YYgz=|4&h+q?L(`41%QQ7Xt#6&y=j*1svSKuEaiXLYQ%*fdp@$x5 zxWZJZwR7-BmFGNsKfO<7QYa2+Izm0s=V@sz=yq{1VWu{fsg5R_BFyepd9H^*T-8QH z8I6!-@csZP@5z{iVJ^H4h0qd%?^?myJDgAZxG*#{k?9u`PC+5Q+NOos*>4bWjwzY* zQk}-?q(v1sy5@|Pww;8EVCuY`IMk>LVNy=1eS=V;S9T6*D`LZnvAclE;+RY5He9OG znF@1MSuiR<;jW(7jz`EI_sgQblwtYWP6IHSrJY(m3UNh6!dM|^LeeY;<>uc3Q2VHtWu6n^Q6)$}l~)xt2b7(mI2*lJls+8-QA_nJh9!-DD>(3mPhXKB)_ToV zVX;)*6D^yf-2@5iq{|wW+1j$7`{WsVH>T`%DYQLRP$DT>Co)F6Fll)!!f}jr?9kky zSS%hBO=iXHWLO}ZF7T7}d`h3^8#78XGPx(@(xCX9gYmQVUfg!v2;pKh%puB{_IO$@ zf_fab3P1vl5iexkGor&i464MdUChgtg{dX85BekdWy=yC?P-FWHqnOa%{%+Nv|=|C zw17|7;x=7buozJ!Q6OZ5fy||ytUshM(49er>Bz&+kg_~13+-3o<}^tb>*`Tw)N@g2 zKk@Z}BRrw;Byv8CU}5eH-;9&KUChtCn*Oa}jB?&57z0U(cush1uz0la4|rUJlDcRU zD1EOln|TOmZFRyR-D4eXw_|^%)&R&_6T+!5f(HgbgHfC@DZyW+)+QxbSA`!7rNxHK zW*({0AX#lL=sU%%7`eE6^~&i?=wS*ltn=^y^-90*T2^67PJ(0gu5}9TcL#Y(@pUN) zr8#CZ@NTkYhs!~UaYXt=9A5%gHZoH zNPEV)Z9M)BAU=J2J^uJ!j@pcm?|%FZIqGk}|Mt6Ye*1O*U&~Q{|KZ1sPd%;Lu#UKW7MmtN*T?gl;-lB)O_3J5{a6=F{gahOeyWwdnW z-C1w!k(F+&DM+QxLs6HlXH*THom<$DjtEB25$q#Aeh zcPrEUcC$_{}#Y)kp4@Gcw83~g7hL1o~#!Hdo3+ONvk*7zunmLVQGQQSL zdH-ZI37EXR*R5_03~%u<1>6p-5m=WN#jdBni4~9yzT8f+OsLl=B{9~r?pv4=)J)2Z9_EaXtThMb$Or4?zMfUv(6~iEs^;xe$wz282=gkA;58pzz)_^1*Fb?Q!QPEE7EJG_ zYnqTVORBw&2^a;QyP7e-PQMud|+7Pj*a zD3WN?VyV`Zddfk;!T8ut4_GPaUem#`FXL34y;FLU*Rz0>f_Ntu>t=8c!U=b1CEQvK zitcCMb)SR)wTP$p%@#ln7T1s5e6UgJVKSoxDBZ3o3F%cULNNmpP!JXrh~rQkQ5;;F z4x!yQmG13O3fpUnW=)ubIy)Xu`o5pD^^6XoN*}?gbDf^_4#%2;@mq)f`vSTGK}=N5 z0SWXP$S9}LbN#V6VluAMmd zPSa#XL4S4~6HeB+HljjPRPQJ378uKh;{`W;<*OnzY_J~mE(F-bIA}0c04o7)hDg7O z`XtV|w@FTd6Vu?m?(co1I|o$jq1=@eK;b)J@l;`30dpZ76xE}MGjQ6)qoN!8^nlxv zg%jfWryHuTU&~Q+tX@%XJVKh`vP~~YEiLL?k zgw+6pKzzTqxT6AgHs=__bk!eTKo@&mM)i+nx*YG*tz2Ip?147(I!RJ+n;3PAYnmcK z!s)Flf&2adT~+SruJp^rI86t~%1ESENi>Q^TH1>80tewIw>NC$aRlD}Q-|dB7;Q&J(dL71( z=P*74UupNYN42Zd?OmDGC}W<*GlB$qRU&u?U&GVwoySAIVvTevdhVPDzrk01m#MIz zuhg-tdNq45XKO@a0oJ1;kHbx6gzGGwP@A4c@0*#*NRS5>&qVh9Xm(Y2#3wWg&d_O* zHX3n48!8M`Ca56o)EiznUOV0{+7TvY+`YG+u>dQ*o1SCABv%))os?)O0@Cbl2CMC& zs1Bi1o5d)U4`zO|J!UsUm_C+U89h}~T6~lmFmKsn?W%6CM+Hm?pOf-=AY&t`NGql> z2DH9AtFUZ197~F4xM`5ddZPVjz!r(Ds@T*;{?HCos{4YoR z%L@iWIxnqV^*Q6msT+kys9x3P#(9P=N7;bkR)H*hxH;L}>#S;baDy=QmNIHje&S&z z*<-ejVTsxN$Tg@k54-Y7U1%K(_fN`b*fIW~S=$QD%d_6or)1Z*>bPbWJ)`?#p0ops z7pKct(o4+Js0zri?x;4DHag+?c=-`B?HOLjb{^ZaD+UU+&dBDD5|YhWVqpa7wrRu4 zprG)*FN(t4lrWtUk!n;bG>ev#0CM&*+LwewQ$1e^kLP2Tt;Btr%S1hbfl8S0aYrR= zXodNR4%dGG$odrA*i6xL5pApxmm znrcw6yR*>Mbk!8LDw|;L5(E#Fl{Y47{IuHTVPry@+cA~tN1W&B`)nR5XxUbVu!vry zYJRoMGJCz>iMKQ+jzR-dW#KgF`IF;k5>k*v367#T5sw>&$OQkFx<02i@-AB zWD5xej<2wLP2=r+Mz3QPosU zUiKR?js=u_yrE?JLKVL!M(&;tF$&1`=oua2Ly%>ors|g$MEoN~88X7pF+bq%z}5%B4MM zKd7V?*sZ(px9&f;$~`VNis{H2XiXTe2dQh$nCA-r_F@t2P|X3)R`qyk`XGIim6bO( zg!C1AXb`UkMG3b=?ZHiHWcBoj?6l;vgkzKTfYz8p*pS+d-hP`+;=TvuJI4~DVs%BW zZ}y0l0*>{{g-*b!Q0+P=8ll{2M;Dgs*AA*v-eFznSO(qQ%5+Z*@F#F=)#IM`j=G>j znNadC8AZGfSyMqc*L_g|f`6ExW7A5-^H3pVo6}LMJsLV~XF8#1)SAPlMF8(p5fiBg zr1w=F!Z^ZV6SS=v&4gu&vj^%>FpPcCxnKNNv>ASx|y{blw&y)GDQV|7j%9}MqqHGiWo?d zlnfSopzx}$urWf(| zpMcWl=Rf?*pa1pW|LKq4{L>%*^z$F|uYR6b`uiV0f0%L+MtAnZ$KU@S-+uVvyYIeg z5UZxm4RSZWr`o0hNCheI)AsZw&fw~4x$p`uN!td&(yscP%nPP*BUkx(QkFOmfe zjzH6RCb^d1D6q&PP8Erzt2FNd<@(j44a6w)bT2%Jb^5Khrg3-}uqw<1&J;8+t+KM4Jaj&S-2bR!!X5I=?O6tDJXfJ+Ew*w8|N>wW`l{x zl>z(aF{@@yXJ?G%6pYY@S8Zf0oFp8Z^RZcv8vL1ql3+u3=RkoMomDKf$II6n$N;-2 z(k6q6B&3aM8OASP5h&8yg{5E~A1Q8_4(Ouw&8`JsG0vQf!Z<#jU&aEC{9 zVzMU8l(1KJyE#N2f^HEih(0hgH8|BKlx~LMe3tvonLNguQ99P}^F4X!4HdLCl=Dq{Hk(&cD@ zX-Q?Rcx^l-{R`!mbH`i22ZO^36eEs1mQj^YvfefvHM8dx4^t{w9pBd7MYRV$&I|@~ z8U(##Ma{kH70Wwu39Z5D!HroQJQ!iy7tlq(aZ1=}&ufPnjD#wTG$CDs1_fe_J2PoP z2)qDvk*MM*e0m;f43)z0ED zJa<#Ra)i!?ery_d=6W{kPL-4Bi&1OSkT;7SSG@y(!<;PaOV7m@=J{ICU0zeZ1c8tu zG^*aTM^r0MdET*&#bn+1SxR7rtb4bncsiO1jL9cIaNcIzHw;%j1SU%_+rkQ7g7)m{ z6yu$sZ8E4l9@s(@i{9hLA$+f6=L{tPRg_iA0 z`l`^o-uJY(-s@(Gbu@<8eL;o{`|TjSUoJH7CSO9aMM-<*bfVmivmZ~#vu4JT{mzM` z3a_U#JUC}q(b_;`Cet7GZ}!{OD0XKC3LpogkgMl6V{eSI=EkR~~pB|tNv-VWycDp+s;ZW)wP z!d`Og4h{r&QkY***z;;wU)nl^c_Eq`r*fSKmLAINITv< z`hNUQ@O8pigm^!Gd>i%uwb%U?>0$l1fBECT{^QSo`qN+j?VEr6(;xowKlK01_<#TL z^Z)Ys`-y2ke*W;?PZQM6cYB-h|M>CacV8KCp8@E1>@;Q}2^*xt@0uWwRr`>H6*%;? zRhrx$2C7HPD>DeaEA*mFOJxP)A)_e+Ywma?(1cw#;lBNCeru;>X&LOg3~i%r=Rj^C zNTszaAbqPUo@&b#COe!5&K_seczrdEDIJx9eR|+4dTA)rlP$13Yu<()_SBS6-#8DT zS6kn_w-*H8CP#Q01;0&j1uZZIm^TqL0jV?Bq5>DI2M^B~X4V1`uqj@>2Do(fC(V?H zBD|e6ob7cgOTW|Qom!82wF>ZqzMKNJVvXKD>yDku{o!;Or-z8E_G$fPyWMAm`9)N1 zne$tN`FDYlt!9hR$*f0Wk99+3in%(k`W(@~QU&T%HAB2s z1Nx_`8tv{W;_}9Kc(l~)!wW{O{%a{-Vb*1u320^XM~hbx%xK$sWDzSNY2w;wr=8V- zqZyLw*gZfM!GLYHcKgFlE?x-5aK5)rs>42BR^2dWIIv|}cnjt59?@}IqJXb^oMe7S;G* z+^twtpboBizspqm8aWP=^IoIk?3kxt_j=J2YIJia$Xykvi$0@1BVMYx6d)(v0djDF zlcy|uDZpbW1TSbBm)(b+oW5SFff;R~#KKtHjRBO(0)w>_%{Re6pu7lis%|Z-q}Vp>6NIdUtx?O>6FJPi;Qg@X z18qF|*!o6IsT<>mit&R!%ytOU7(axGbhV6>-}PB(**p4x(?wAk*9>L6RUkfVH=-@e zFkUY;nkn^1U5X?Iv^-VdOPQj)bn3UxD5)@vzir2-G16Y@{%ViVC;Gs`rWj`9J*cp= zD0?#*sra*p`=;4}^OqJ1Mgs!$w=c(Wt()H04G*(53*H~6z`?cn*(5O)vBOr-7p4EA zN`A`-A$!URh1;l!&_^&>h7#PE&9i&x7%L?h@_Q;F?H22vr^8`Cb2=$7o9e(fi+Gr zihS3;IQFxr4NB{*S)=+dhK<&g?l;mH4Z$tdqk3NjRrDG;IlM-%Dv>j*mAQuO6vy1l znOvbY3o$S|ZuXwrB!R40$Bh_-)(-Ta^(E)8THw{G^!2?LY z6x8V9rDTa=59S@-F*RF9nfhG@zHfg`!f}Rz2&LYa#mAVH?o*#V?pEto9jEGc^e?EpPPN=JB|A1$Xth}992~}n$U~>* z-9Ed{VNu|#nQ^X|C)wBUadIHiM7lhZqg{3jPY;)A{-lk_4`k6&UJjtHRu^Pn<|WU1?zRq;_vSmy(|w@sU>fx0 zQXV*M8Af0ptQ)4=^6nL^qEa|Vt7Khmijj25K;5zG#&(57Mzk|+Tn6f1lW@gAb;`%& z8|VtU{e|d@J!+ix6ikb%6yK*i#iFQ%tAPGw`joGp?h_*GlqK|#r_036=?q$8ieR=< zS}J_mC6We@K>I})pTA5t{CBjiIL;sR;RfZx15wCRh}Y}>CFD<4IyseZ%0EK8h^bdv z6|r|=g}^CY-Wg&WU{@_$s~v`hhv2Tc_a(f;yTd``QiX%H5b{wdiS^2kzj?X!osR zJ9CJO&vHRj&|5*S$PK3br5ZbByPLp=nc&fQ&3DHk^PUwnB9qlBHsTFJ>j8`Fudnpb| z0)4n+nFhS;+h!#M6Y^Rk`5|gzy396TR%?A5mR?g^2MkEC)=0WI0Dx&Yp zW(1ac5$+U%R($g)03k;d9_x@Bs!)N~(zeHSdSxDt)9SpeDRlG2c3Rhyz$N>1t$JLi zRia=<;20gsZ?4n3f>2l<+v!Qmj^W-oX4v!|cJf;ATNEDDcD)hx^JBA^M<`U~hqBWXa5&0S<}= z^LAY-lzeAs;}_rQE^vbJw6c!C--JqQP(7t;YjEbc-x>a#;u01d*a+f1eVoFBSXXXK zwMJ#QkgY>P`ZQ5{=|&C^7a8`?2vIc-zK#(MEZ3(#SucolYo+Op^si4PKtWw|Z>p0} z#l|>v`dp(=#&H_Gs)Iw88!k55w+^N}3}V%#f3|Ml8y$u8$?D8p&~WzMr~k6n`QV zte}<7bYD5Ab&Ft|vT(My)|$d_zOPGgei7ar8D(bymK8}?Gv~mtha%%3N~V;7jD(}i zqn~fQ!h%XjPKeUI#<)3CT)t|#FGZ7NIM3B%(W(Qj-{%}gP~m~{L+m%cC#d3{Ru6Ea zO&X8sHjZKrYC%TmvkracNxVDti8p5vn8s`2X0#Q$*WN#4JZrQ(-N(QA6$p^zXNmvH zKQCYY;O#$ArL|DJDmSgwQ^l=*>!{4-DO>7GmJ)4KG#9+bk-`f2lHx&$X_MlFD(j->xMY|^XX@vf^vo1=ZWYV@WUP)BKZX_2a3GMN46A5R zI>5_RpE8uFTQ|^LMsVoWtSUiVw*phTGb(0ob7s5?h;J$Zgmd>x3r4HPDd;1%sPACo z-2@3@Ax?xM>@KZX2`_b!*IFu$$I z+U3TP4S!zrG1HAODG4Olw6(Kjmv=!yPIOdv!%xvZPZe^{Ho~GnB^2d_XkkgTOISvm zLPeRto-)h0ZBRXgoW6qi^ovFLey{XEVJxUT&zr%@=ZK^f!^x(~hM^d&OK$_u@>|6M zhmYC{Ovbf)Pkq5n5CUrmf=jD#u*HBWu3G;Li;hAy=LDh=$vciz$)#Awr)VJ&sSw=O zad(rD9gp!6UTaL$(2QSS3mFS{1i-(Xg@5|#`?f#Lz}JtzcfZq8e&MNaKY#xC{nQH; zwE6JucR##MPW{^Je$6|<{e_{azx>Z{7?gUHqJI9ferdWVeE3B}Pad$>C zlV*nMsK-3vWf99D@oqOWMZh`dot?s)rqvfy&5!l#kS7pvQ=4Fgg5D?Gvbj@@Jj4rcs&$T`q zhsw&!D4I|Q#Oq+gmU(8|v?}so5le%C;h}K5e<(kN+1}Cu*Tc|Dc--lDE7q$1-VzqE z_0cy}4o4?+490p#!=5yPlxbH%fDxs`Z$fAw>UA7_=J$j^woMsL`3!r=m8DL^u~ZQ0 z2hul=m=5VO=?^U`g_=wI=tIt>s(4j3ca}P_ppT%Q*~#;|uw#LieH~TXHYpJ+YmW|M zJ8M4B{uLNq6DsQyisbvC|5}oQ9oBGrVm-Xrv7PVgKkN`guVG3o{0Nx$wGbMBUsx8T9a?8G=xXONvfAbLZ5o8yfHW_CkMP zq@o{CP+!1^zKC89!>XToi&b2=N#UcWK(lu<|CJ)0)V+irsTfWMbe%1q&bk@Tk1r^r+`Hi}k- zK=@*a%wfuc-5=&WI&(}5eLUE`8%7s!iBEj^1V(W=6TZ<)s)y=6P9b6pqbnG7KKJQ4 z2%q7lt6HHXRd|du6ZAIb;4{UgJ`CtUN2VO+8iD`c<9XHz=t zdSDefsd;s}ib2Q@mdoCCAoXz(W1z)}{LnGui@G6Xpnoth&=-%Tb)0Xh{~bq4G1nEl zU>O$bG7lXm3@sRcqrn7w7+t}6Qu0}rO6&ZDE6SeFP~1d3kA8)&L}5Udg)>>;L@CJ) z6AL|U;`DC1UaYc}YEHdVjE?#;S`$@CChFnp`3?JSm)k`PI5uXjN_3TtLj9!$+gK_P zh2YH^luV0&ZS2R2s2i;GYqL?mwX?>d&@~;H`RV7~u>^;#SObHVtWtU(y*pQh3eX+Z zE6_394whMyKwVuYlPF4%334ypz|L0ZbvFZdjs~i&OGb-(&uraXZrNa9Tb!*NB5mEW zng|{vPjx?B6qW1Q=ro?nZ)GVN&OalzxNp<8Ac7Y5oAr-_GE9|d2kE~)dVy`Qq1dKD z#ePU)F{haHU3INcvd=?>2k+dZB!%x-A?(bIxtFA$J0e1-FlJy$DABU1wz@;0i#?z- z*Ar=VOoesz_3sR;>6BpzOVnZasN!Tr_1~3!63}2<1R3+3`XF5(49so|e%qLICnYvj z7ub?vC5=d>zDc=eRRj77l2_bmDzhs_ltay_9R8&*IRC>pfB#MR_OoC9_CvD&_+&@D zd;9k7ci#t4;j|M#EtXMXtkPyhV!7eMUY8hrJqKmYOLFaP|* zzyA2szyHmvKmH3c0Dt)74?q9<@z;O(_~XwXU;XaKpZ|%z;k=~Bm;BAEUxjsldH~`7 zpp_~F{OgcQ{Wtv&L1BHg*YCl?i%v1~^S9rBDUe#z)`X1M@O_%wt`BotTi4SvWBAhC z)+t7wii}FzdL0X{(+_i7KgQ^P&D<7!?lFT_ILb<%4|7`_Dn2u}W#f{JKg?~z|732v zvL`luqF(iTh`s}cZ*yBln@lXPGTd#)IK34 zBGjp%{JFU;NCwqzWn32h>R40J=f-p8MK}PH*iYuR9pQijEbO=a3v*j#Ma*qmU-g?I zFf86n!NKkecia8pZd(VIGq=0#m>1Pj###~zJ-R;uSKSDtr%o<{XXRmaYf6L`Fk^LF z%}Q7t|2bQ>`S~9`uyw5ajS+h&Dg%e-Z69W3q-ouB+~0J6=cnauds^O34>}c&ZiK=4 zN*z9xe^}lYlXtfiohPgtiv`dW9vGIl(>-VZq`wuIv+Hfnf5Gxrf9ZU3%=X*zc4{MP zCi57yqjG?72(2FhU&mZ(*6AItW%XfsyF-o_`j}u$T0CzR74Q~+c-|gaWyY|)RcP7v z=J6cW+b;FR^S18O)AV+%k3NJ2Slhz$ws%PWcqAzo>jo8^*3AAGv@<-)58vDH;(L4P zyj1-?24)f=ec0YMY;O@P7%R(4DQI6J2wxfmCpuNb{I-2&erqxFF`Glb1?JR}I!q3s zfwN4Q-zN0ubtetxw{A!aIE4A}yg+RelAOtQv@TPbhrj@8T+>jUL5P@{HFELX1|6S` z|B&e2$?TRxGv6M#EslY^esX1AbN`10o}MyAgPu7D9&Vm+GUH6sbcL@Sb3ZE1YpQbuF*=!VhyrtN6$2`~7NEO3}!Z60Y%RIDf?X;c4 z5$o|Wu|yE?xR_dPoAQz(u~4@lfK`^m^1kT-^Ru&Vil49Udc_}iA%3x`3;<$Lrkz{xS*63p~*6faAeDR+<^-XY^IP()dCVDAt;dx4-# zuRLMaJq&Xz+PI1fnW}8|%9RuEGr`(HpA|I&^zxLZ^!L+(Tf+dsLcxgFA}qqfOCM{Y zeqt~#5FEx}oMypr&Fy_dcM1n03^0die%~;y6Yk4dzz^friM>N42K30rlNO9L`V@*; z3b5>DqI1ccpS|uiiWaPba%2~sFt+Jcvas{x7TmX32W^X@0S5H+$Mi;ZiBlYYBRw)V z+tIcaFl38lU|*H9k)5!4_`UT6d5&t=V_6mv1H%lnvCQ2r)m(}sNGGc3WTr`tG#CmD zHrTNHpB-~`((^FU-06W$!!mbHw`FcM?7HbBrE)h?SP(7f+Rkj2LVi=UWdU?J=1wn` zxi}6M^R&!m5Qk$fl14*4_Afc+PA)FDKGue1Zun%G+mk=aXO6iBS7>Fbbh+Woxo&z@ zM|fD~Mr2;v#`e6~hHEYunx#*a3J~AC#>EV)YV0{2y3absMOQxPCkGRtB+CR7^8_>` z*xs|(XdUvO(=$ zhUm+ifB0^G``ItQLV$Yr?fYlb_pg23Uu^omd;OncK0n_o$1j6gicSSk}dkl#(!BNy!Q7G&{U=t3gB&>CahrW9U&T zf+-%eI$EZK4sf;@li?7=f~x8hw_FDudaLr*9yu2Nw4%a=5X9xoIv{Jv^qQ5@q0D{!_K;%cH8S#W^6!o=kk;Wm`yGq9IMExkJ*nG zyWP3midd>l&8|ycL9e?h3pyitLPX1SJr-mhkQP!vhg=mbDq3kSaKN*jUu3eL4PWG0 zAe-M76rb&lw$bn{!kB1(4t;7BSsB@I#6O^$p7b2_dUyPzlwQWps2%E9HxFvYC4fI0 zRGFbRsF#m^W;aO5)@#}hoEkQkIO|~pvaBu?9HiED$g>v)U95l1*I7d3eh9^K=ITWG z61|DQ?YreW`pmejH?NN@bW6#P0oSlz5T=LftBP`0^~PEh0!509hWm3QVUcC1VHH7E zL+{&cr_fP3RQ{Z0(HlcDk^N92y9J#ojh!V9bRHh!vGhKLN!GN?>?s|H`uRFUZJSUm z?9PZXIakR?3x0+h-Sk82{^3!hbAO&}hE}?wTR&UaJcbB$a*HtO_&*k#8dm_>JmnT7 z;e!GM8tN+X@~Q{I=G}~8qp(uWD*YOMV4aWiDF>B^ztzAa@Q zF1sNpsU4;0NiAKEFko4ThYS3UirAe%SK0pgP|R+HK4=AyBFnuM z+U^E0g{mF0Sb5RsNf2Um)i>)2`0Y$lW$Y&&)F>5lPD@9I{Zx&}*?ugA?tNO#Y;3yn z9+jSzYZFUJI)+xkEFe3n+qo}~YDaZftRco4T@ccn>JW4gGNo%<9EMSB;8neo#GFcC z@RrJQNr_=yM^_t5w|UJI6DYO0OJheq= zzzpGdP$*77iglcqKRc8te3yI+;?J>aW$AoqAl|YgP8x(*N3qZs3Wp_uw z?LaW}Pz9KDMhl<|w2Y4enkM)9=)T}8*3+5-=#D)MhdEex$)d=!cyRK{ZUFqHwsoZ& zZ_BaR!Uh8iq@=hbsk9sRsVYyR$Cos?{P0m&+>jl`k#|y97gExDp6_K`T{a{RhK*K< z<@Qk!&QnpR3dlY*w4lyFm8I{i<8y9wK-Q;-Rxuta+_0NN&uwplhgVxxVE~R-Iv0qdc?GP{*I~yo+{=((c8Gih95s}yd7@p23|VSr@HqvYs{xO%V}B6? zP-rgHeiZnsZIFwt`06D1tk}8>pVY(YWvgH)P+sF`#TPi?GxyE);}!y_27?>LUzk)7 zUgjx3fM(8J&xb4DXGGS)&>|q&=_nnB33pn^NJ9*{ zAm-xw?}_rAE*C4eX#UIz)p-7u@*fiGutD{Rbd_TxqE~^sW613E$qGN7=g>gLr4Q9- z5+&7u&gjNT-`QTT z*?4qT7>%d~aC$gtm%;Zkt0zvb#4#BR=1hz8u1(yzy zuo4zZSx5{m&91_}>_bZlRg*p~qiquF>HL;3$gH1XCB#x1H-C4xq$uL*VcUj>HPQUR zv0);->$1$c9GzA`SA=-!{ehTJpMg1!*_}R$U*~C1$Ax%qmJR!!*7V&0CC*U=DPMuYQ3~`*+GwfqUtvFlNcgnqk=a87tJjmlqz_m0ub_1}h#MjZG zHm;DyhPQCi39NxV&c5QJvZ1IfRfwK%*?p{&Vp-2A4~5?@q`P6pjWft_a!h(tdM@cW z3kqos1*n0WpemTb9*2tmppWAqMAP5e)tkYqF+O|Do;ti1_+7BaRX?UBMgU^cdsbqA zJfx>;oUNxyC9m>BAdFpk6;ggqN5VD5vNdO|!MQ?(whDjD4)zib6*(IkNm<}7`fbLy zt%fzP0p0LGMB5mW!x^uBaK>pZ3CmS|je^%9Ooq(F%FNQ!1a@sO&GA#&1k#kS3$5#R zG51J=fTQ;TyLiDhhQi!!M%Z)6w65XU&HN1G#Tq+&~-ZLC}fB@~Z9lCFs!iZCoI z1;=6G=)xO!@c7FTiz>woqs0rsRsB8s;cp#%ck{*-=5?$XXd}N?E|seFY7?eCwIQRA z(oR?zHVR)T7Y`Z@BDOZy2XTD&eqQpekffhzYV8OQiKIxn^Mg4a46V1ke*#SNO&n)V z&xYi73QRLN~wKEHg^-7zb1zyL>Nk=;3*>s9k+sBitpr+8{42U@$_>wgHXlc+ zgxfZ1qJv3;+|;Q0*h)U*a?EA@#2MGmOw}qR#5)9E8)#Dj%^^P$!@55J-yf%2cTA zjX?*bJ!RCLOk*LP#w1+NmI1*HF-ueuCPZ&fm8NjXt1e;OFc_zFE6rrgMaJVAl-S{%kn}lry82svvIb^iC^s?8pMd-tXG7|PlGkgZ6F@XxkY4bf5*Lysgq7l%y3AGYhEiJ+^6`!!s z9vyKXA3ehMu%DXm9wAMsI5vHBWY?y6K5XPw8HLHCj4&@og}!1=FtA}u zTi`r>ph`Qh({Il`<}1@&sAIMkOPp@jIR1-aPn&93cBM_Q!x4R`Zma5mly>n~JqFpz z8^P`<*&rBz8MF|KaWGx?c}v6n(?2?Y`q_0eSo-{eFdipZ2}%h1BVSIkdB{RvOo|0R zS@qN_4>>~?uXO%&2qrrBF);Y})b&GYa?G!7fRBOpb(rmu%xzE-x;X}joi-f+#b3P$ zA)a9D5LOOn)dN?WgrR|p6b-7l>YX8tKepxta5q5)K5w99usIa>KgY04iWZ~|OB2eO z+p;${&{*4{K%7>Zei@m{BMNLVSk~v*;e@xL&ILtZ@KLZ`k@5ryUh}r8VsmxEAWG-8 zDf|vjxIUn;+37u;@W51k)meGz`6*Z*ij3@NRFBzBM_Z>4!CP1<`$5mIY?+>)zOy}7 zJ2pG7$VRWQ&0^g!9>jos0VubU;BD18E@MVFclC-KE%@2Il6(Dhm?X6Xj65+3mUpH=-RJ1AFQiXeWtLp z;R@NQe4=-=#_5shJvK{sv8algMkB9}Mb0E#VvBBp%J{=xv`0oCZ@1a*$?9F97Rnwc z>wZc_6Y#UfJ?c~;+$o%+QqV7igQ_#8Zby2ZqOBBeCO6~?J zZlOP~>#ujK!?Ew@G$eL)Uzfmaf6nbwcaGu6x?zG>vA4l|SwEB>1tgoS;%PF&#%TmC zy$#p=qN3s2=*DG3+zI+hw^>{)_Dny?!EV{v2$`~qrhpN+ULG`k#OwEnFs+W*Apiui zTv+0;JC_FkR1}O5AGd-GcSBA{MnCO>g0T>3);FiAoG^(8=gc(OhgqrLguNptJx|Y$ z-0VJeFw_o3?CE;Qnw4LKp5RrM1rm7&bp#}0WNd;Cg#^$g2s$oXeO zPVwWSA-Bh*w?EaAm0njxuZ%QYLHd|kF}Yrd%x1UwEwL@!ww2mbPhm!@J#YHrVQmU& z1RK+N=?wpIbntCu37_Td=MHDk`ELSEmS&tj-{kLZTxX?0NYaNJhtAAqJqEAV96-E5 zMyzAK*RiAm2F1u%aNZokm-#fn-Up2=Qe%b~q=RaaL(R zUxo9DyM|X~y^QZL6glat#6%)ah}C7%ohJ0igR^_cpwH{NpS3_3yrY|KZhN z{_}s0e)PZZP{01>c=NYk45;_SGLDKg7U0KvIeljp0D8aZ_8CQ+it6R2vx7rY1j8{k z^wYv#-56gB`3vH&D6b@sBh^)I!yO!Jrqs~DiEt%k3nC0jIZl> zZ+Tv>Nf~8h$8;WB4XP*ng_yA*;}Ojk8DCe|Zu*i1n)Wfi)+4$4#7OL6^_2Xg(~f21 zpf3eo8{wOTk+h=i4v%OXW*pEr^(l_&_>8`!RHBcdx|sR(=3tt>Xdd+;l&{;QaC?kZ zwrHl~_IX-EeXeVkD-U!kv@LX+RTAJ-*ctHOO8M8|s&}(Z;60;@Q5uHaX-|Hv957cF zPF2AL(>xqqFDcJ@n)6Vesbgp@sH&HTIptO6g=xL&bb~=qNU3a2cqF9_AA_f?(F`eR zNI>{0Rbd9b(3z$-yW`MW+Zhn-RP~<%6KWqLQ_jpn87}pA(^XZ)6>prne~wcZaB3bC z>W6|o^J4~-UUj&lxz1&nr>u;4vF4A^#Q>_2W~&N=fKbV!7mjr-E%%`HP=TUoCCUy*<=9b*hzS&TYuhBe+D5wCLXgQVV-@O~JO} z(-etH)^vf?*`oQP-0VlKf9=ZvsSL84({WpM(sSQ*3g}`U4S`)f7d_xTW&gZ{Bet);AzVGt(v zeIn*E!`4+EX1271aXp%=(snCxq1Pj5s`p{Z`2tRu&%<9=^;nQmVm)E33L7+z+z_&2 znefEzz~g6O=BPsuv6@A#@x*LyqP?8zg8cy)xdzaqf;`MiKM0MZ&s#PKbCs!CQ=$&1 zo^G24+l3qu;Fjp#)67;dL(&Jm=b`#YSyWXt&0}G3D+pBx;7>vnPH59I)WHtD?-YA+ z!Lp+bJ^vl0;Vq0&^e1mp%!{yrz%UB~g>qcEUTs)2Axxx@s_VL1bI~JT+0}kRSGQ(m z+vy%bpHZM_rk2);;vJ4IuAXaI@uu)AFX{AgV{6VoCeSRf>nCWs5_PrZBy7_mUtx0L z<0TLaSzB-_F+@R>qA+!)>6RzcLdJ+{zondU$AlPy8PeX8RVhVgHH2XOAPye@f$(k3 zWmV`^wXKr~N91JOw`ARz;B!?KqN>9UZEbKX8wa{vAe>d#Vb-ggRH7-tt9TMB>jDpo zLQ(alMFHFx0a}l|)8->I$%-Nxvr3xGHBUvLfZ?owYe9_> zf4Rb6;U+vB6tnYcRmrt=8Pn%&KN0rQ+iQYBl zs~4*SMbAe#@j!&lF)5gbOBnu!^{A(6Y=nd|lwYTK;x`K)pk%$31aw_Tm!OT#^m&ds zvdV*4ufwuyd6g1xEh0LyPTzWrk!Sn|XB>2uZge6~*xE?)K~C12ImYTlbYnYgA&ank z3}`}@4RPPPsHQ)|G(amgwkq*zbT&QRQ=?dd$}fw9gU%a;{uSpPQv%`E#=}*9UZ8fC ztgxYcoMP2q^_i%={fGCT{qk!& zmEV8!{?*sN?yn))|GcF9o44P8={f51)&VZ8d8qDwYA{xMF({j2o_WCWRY5G&G_yXU z*pO7sDQ;uMR4cwNLkI z9TPrPeqLp*u?C$m-J{21osi3smTJ>=K}=$PyQ!KNfS#1*Pr%E@<~%F?c+V#Njrlqk zoIn)xn8OVlcGZFGNh{y7YPU?KwG|mi5K6#WLO%xfGDFWv|4X+9byJ*#43ufs=qS$t zE0bPI5FUvt)RKdqtw1wem<;oPb3>BmsDl^0xea~UOh*lsMWjlZ2IHZb+{)~&AzSaQ zATcF&L9)F@1TwK6S}W}&rQfQ0F-*1kE?B>+BDhxuDsE~xAa#|!7iA&nb5EmLjS@ny zIs(?Nmp(SDZSJyHb!laUX=uePP6<*eP*Kok{0<|f1-NB6ZLL`ckOplX&SA5nZJ&XEB788nBm_?qpPTNQb1R9tfb~?P-+hy zpP<;T$f01{yc3KMboAk)dPeAl?6%|P>CNIP8(-3`?R)Ea$Hcrvk-$`qc+pjczzJ%&aiuIjl=* zbVG}vA__)&&z7a-3vDZ5$o(XNP{vkk23f(fjg=8aQ6SJwPAXIc6?IUQEK=r-&KpFQ zphT#{_E^Wm;SsVg9w_=JV`(#5g;94Gj;Ke-6T2+E7J=B5R`wRwdcy0%#Kf|LG*e3C zO-cA1J_}`Pf>OyX4v9l$hBYhTLp`Z^W**ZI{UpnZlcQJBqCckeV5vS7S0_c5fS}@D zmovFY`i@S;n-HSzNEYa?5Cyj8l_H(s>xpcJQ0+ovQsF_k0pnF&x_n*3Hj}^!^$Iz5 zTG$28BK^UY-B|q^OZquaFhS5;f=Gey4tzshZPiV7j-+^&C$Y5Lc2!dcqx3+-&9Yvg zQo8X4K{)k-D0eHT3&34iOHukcV-}h{*8+8B_!H(~96vFm$X(aBt`3ot(RgHV!y3ro z%Lr~&Hr54u6-720RgX*XA$|D!`kObO{ctFZ3 zR-pOAPe1&8C(ZXC-hKc5@alg3_ivtF-S0lU{qRM@hZW$=xS-*d+J=w`M6-&J3I99t zi}7Fc_|3kJKcWAc+BW`e!?oNI)NTsHEn&kO5vDjTW6MEdXio-%YO-s(s$Pa3IGj{f zgLHvx72amvV?3$6w+sq{@OM_}N{Q+p6o!3HQO`zK!sbs5hPqBr7#^hEPZWlc zkxYD27-pX4c2gMkwk0@$%6!Lk6s2V>IaXDA`Lpq4`i~5Tpy%wrATUfUHCC49yRdBD z%FB2XzODeG?tj4_EcL-)NY)fgVg`X>g26D~jx7%cL$@ukRRRETK##vamRxkzIRcW{ zfcx=|EVcYCYCXqNAe!E61@0d!EWIXLHZBWSbeIZH*TVhK+nA31(&bRnonde5 zC2wdJ>wqM4Vr(#`lf$-xVMk^-IB+b_B^S(UpgTB=>%6+(bP6;zz4gDpkYu5aogA?#4*I%a}y zrA65fW|Peixxa#OvgqtvDq8kZ8Y2W2TMw~Qro z8 z-xYsdij~c`$@I~~*2@(%(=$TIgV8cFT`V)(Y}R0Pcy)837tDS53F^SKeF~$wgNn$Y z7x1BzqT87wb4fkA^E?;W2@bB1DtWT!890i1V31ugA5-WyE$ORcqw$I)rL_Su6gzkY ziSdANYQ}$k7o2qa)O*Ye$Hb=@ZZ^^b%JIggF_l!@%=+gV@Wh1NDTuWW#(<*bloy4X z8OlI^3?-{oR8TQD7z1`Jwx}e-JD}kPSp=HOA~d_D$q2d6J{WfpSj#my0vI|gh{Tx| z1l+DbXGZ{HZzra){7?#hdfNK?I|agHEv}*h?2S(r*W8_or;oijoupudY6dJ2wkvL` zs#E9#RUKWH-C^Ui73ZJ{Ec#o?A{bUF*kDYW>nD1E;`YNQ@Yr8GwkyU{@!AhGZ2b#8 zfFRpZ2`F}Sg!=TDM!wJk%H7uqpG_m{lOAxO>~t+l*Z<1LQW4as9zW|nDDvuo={Rk^ zC$D5P=mCc9`P*Zg^7TOv@I__Zr0X44e0FDKWqP+H_u;ec$3)UUy#nuvr0SUKg&r^= zYUlg*pas~Q5Ibp-8)Z4(SLV#Sq!hHAIh(e)tt!OpKY~SAE2o??P*F_ zr&YNM5CQZ!p_Wa zL?7*6g{py9Th(7GoHD2Z6I|J&G^hb>Py_C9q@WlA?5eM~c{t975exGRQ?|d4y}bME zm%mLmn&m}q8hgOe)%jNcQ_%6%*T3$o723z2fBgNAKmGLM*!BPYpa1oDY{&_wzW?yu zy#vQzVVB?j{`I@p?)95@-+p1joyMG4w>~C|+y(pn-YrZJ^pq;g)~68SLXdYtRM-_M z&g#jsG6~AU*k{*m4gXr{NHITXR3O5*Id=+VJmjYls*X`J&u&7SB{LD3G1WY%EL&*`wTRlmD*-bfw*)DcS+$tODi8e){4L_Z_ z&TPc)%D%Y@JSgSiuTqdFo3l!bX72vG z@)6*6?8d?GP;eONQ+R_Gkfn>4@eUu>fW_b1EU#|Z-!RR=8+Cj=lXdh3xr z=+cI5rb;or8G3NHFSfpcsVqMptVBOO0&}Z0_OSAqX*=T)ST>p;!hz<>cx(^%lokCi z%&;ejFAUqOlI}3WK2$ffdkQ&QlUwL)#;w`(yeg)4e5I^anz3yXVCgMw$tfzFS5^wd z+EIak*2kt&Q-y9TLbQ%HN>O@0?FggF{!>#FpEKSgI{8;VRhThsh#mbFffp9O)@81C z*t|meYjnaK&6X)xl{o9eAaL2&3{tL39cy;_IaP!yUFb)v3-L8mV395Jcf7eP168ck<#0edkaJIbyY!75Q;&=v8l zqP0V1R1kb&B&m1UU=|mlaup90^a!xcD86SL#C674o`f5>BJP66Sm%NptnF~q)2&0S zHz}=diYqMiY)T>rW;HuOfj$1vrhd~)XP2-DI?d_Y*ikjB5W@i1-4;#%V zhhmC$JBQBxMw=Cn%*|N*@D`_2-;b;xE8}aJlWL`l2{Tw2>%D!_Yi{U{>%HyV72O~j z|E(GQa<_sux+GE2?X;E+1{D|juc)`YhY6jWhT4tdEFA!gcF(a|{2VdT6XfcugVB%2 zg=j}qhY3DQpreQ~&9l8vGnrM6s#`QG=FFS!E7E1q47iFz&L=Syer@=piVEUOpaG_&Pu?M19S( z_tVfzC@G`mU_%$2`V>C~M_aZrH#npdQE|Z8Dpeyp0?J#;|5HQR7TQF}7HR^)(PvfDr;5~} zq|&Gb6|Nz@DJ9yoDSsFe*mTPd(t-^(jFq*Hr6t4x@8aPe9Es>w`Vfao?b67o$_IYJ zkboI~bw`EzY_iQo|G|g}fm(mCYmM>=b`1)}dKIWWt4uv6ifP^SsB|!&7@Y?kfrkLE zK1n9ZW)(v)P)E|EHSKW(!)%=?6b6iK?77kw7z9x05dkoyA6_r`VH&MU15}w)3p6;U z;6c1XyYLpDNbvRh@9ICM51;+=w^W%Ae0 zPy4;^-+p-irMe2vGeb$+A-g-Wf+{Ihlx7Qc#h$ukt;R8-bpdQK`19bH_Iq0(h{c3U^b z4iC}5nJqLOX%sdTL2BrJs$PFh5E@9iMZ|JDF zZ5k|zgl%lPa8HdrmuezQQ~nr^n+OSF*>3Sja==3Ij zx0Dw^-h6vT&nn{(XYhz{3~g2@J$?YgsR$CKRaf>n*w{6F*xf0u=_TN^EX;`5?^?&= zqW-Oml<1f8W1Lz+&UtMXHpiiCQ3Y#h79gKYZmX99GxBb#E8$YLuA)Hf4Sl?a7v$e?Xte%}7HiN=BY!`d%&;*4fau*QM zY1GRr3IM_8X)*d?koI9?NdQ3@tA#^Bh9NbazgCm-W3)wpNJZVoeh9nn%=A%u5rFc? zQtA5?R-CKC7)BDEm4urT*Esd6pDnXNyQaY$o%Xex7&esYc3f(d*YpJE(iP9(?s;W6 zT@T;aRZ+9kWHl)lhG__->;pEm6^v5gW1YHjtneJ?rANEc%Zw_bF7{k5T03)C0~%nH zDrh7j^pMv@DL*6d+B#rc$4B3iAh7mJH+^-{>NMul;v1`yJWt3;pQCZ;3Vq%=4;4}5 z3>RN@Vo-=)Q?i$;fkS1%iu?sAu3S3XMg^*nmLWfb{=8}>C23~6g0zv5zFvpURN6M2 zRTa{N7J!@+?m$S18$F%sU=vw<<(TRxST09LzfSiNnvUHEU$)^I;**=8w=!gM$j0d` zECr+`@TuZbX&vd#h{afIxJMOli(j%TtzEc$n!|qS_6!ScXd-&&m#3OTEQb|beD=<0 zz+5bP>0y|(D2xfk2&?HQ5MG>3w@Ggx(f$;efTi45l@bDDlrOC*D#f7$JvitvK_+FY zeLXH!Vr&giP=m`*$D@wyNTdj8UF?Aft#3PNiw(@7b*n>s?1Sm6Z>toCOwdIS5)fP3L5}#lRIwP$pHb zSK-F*^4wL?vpAs~c&>Wq`l=N{D+C)a<||Z+0%MJO58Aehhon-X!GovE-k-Pe7T4|>kq#$Fp7Tb5psfW%*0I5lu%U|7dXAV2BQQq zn(gdBQ4i^_RS4A^1`@#>_gkD#)F5UItBgTVoF*z$B>l@m+XV~qrWfILl3ic(mXQ7F z9?yD`w<3ZrhOn!{-87u~PCAR3B1bturCC(q$05DK!gtH5GFb0I(RS8VYuBzU317*; z@;iY^LpfNN>?r6SS`0tCzH91P2i&XL**UuigZ4BD%bXqpnsWGt_)$}e5d0HbV70hy z>xB=SV0YbOqrHs#AmvhU6Ka`CPFY{ovvQW*bVK+Nu9FVzsu276ZcF{{&1b*-%5KZ| z-@p0h)z`o7Rr~ipethL$`CmW&a#M_z;r>gDE$?2x{}1{o2rI`GJGw?!5IrhrfcPNT zHWXoxEu}+ftYksTwW?e_S}OB|CI%3iN&dlr9w!#ND(Eg1YR-)0{zDdp&UkXFFc8Y0ZjDLr(Xi5j;Ar`5YpMC=RbysSMr%eT#}x zr{bM5g=P_x;zZxyg=-Yi?0na9j_2G3Hxn{zR<0vgE*JbXCtNcP(seO7yrQ2N}x<{#-1+S zqe-F4TKyo$S_G>z4Apy2GO`3ISZ=CEkTIx)XmlU-f%dT^u0wK#1)bxwTMUke+%>jV zj-6{dv<^8I|D5!z?(jibnb}K8Q`i&3rd_!Mi)ur^ZAZLmJ!n}X9WFWgDL@)@Ni~w`kM~LcxW%x2%PCQx)Y{}pPBzh=T6~y0d0K! zkRdhE;&)eanAj35Wn|BGI6HJ8XZ`L0ufZa^2r!)2>=b+##a~E&5SA5kCPN`~=t^9e zzo{%qjJ43UJ}#AJC|?zYHi4y!wxwc7NA}bTS#6VU2QkSbWuoM|&N(gCrqX~Ao#si# zU<9Rer8%X5( zeIsh5XG@aaJl6B*!3_2>cWD8W!QM2^dNL4^fMeC zM?C=b1Qe-S17|9Q*)=GVMG9tp=U@-J9ttHakmzR^viw4^^VPSY+zZRm>L}@HSbUTM zrFLj&M^9*-8(ijxbo9+*=qOJxz@Jqk!+D>f;4&-oH}^L7rrHThds>IXc2HRWIjh2o zY19$+DJv*osECF3s*lnJk>2Lf$aHynjJr`49vUzUyaGh#(11baV^{$BqlH!P&YI%a z3$85&IuncV3boD-4H(AHm9Ol@*3&G|b_6IWVXT8fBiMspbV5^Oo%HXGR}HT3fPl3w zfg)bTyF;HupQR-oT>;X$54Az6skthUsT8gXy|BzwQ*fG+f}7&4N0rsJd(7Q#U1-%g zC**X5+B$-S%1;v`!;I;mXDty~BigosPUej9R5y0NmyGuz|H5ILABxb^YQv$BZ7zj; zP?o~xe8!chs%Jhnn^z3n>JaMcw=6UPRWD>(*>33gU_dFvFhCClT?#W?>=C`Ug|*Q+ zM1DSnp#>91{FEoBiWtK{ooMt(1xAm8gmG#rkxyX0YPyCp0EQcuj|0^fiqbw+R9`xP zx3VLSKH|dqml%g09+= zY5Ur}e*ELBOxxGrzxvC6{{KAF_J^N-{q}FabpAtIis5ms?P7;$Sn?_su_;cE!>Xoa zvsPD?y)omRAQ##$^91HHi7wvk+2wKDhP?X=)6N9AT7*!d7w&{3F)z$>E+Pm zfOYEHZRzWu8=2R9kHu|=g=@!Lp_&VQS-04;!LQqoU@TOL(xdq#6a6w4Z?K73)cJBO z4&w@EYh*#Dc@Z@2MOhrP@%_LoQ$<27U3Y@kn4o85t#wLmy|68VAcqGVVjE6?4Jnbq$Yp;55Ee21 z3qWKy!$oY#PtCp1+o&>5BV{{)$fORgTkH5YkeLq7j4r+?-cQ6`wv`6T8jHoNq4kCNku_>gtTor z=!u<2IWygKeWsvnim>pZm^52sl+n>6FyWX+Tw3+5v#RPQT5ctLjK3F zZ=k27KhxlND%MPx!=@NF8j=U%;kB`9kjhLQ=~+jk&)_TIN%7wlAhFQB4*mprjh?Nb z(mHQo;gx-IWZ+l*#xW;L|6vb8qpEe7;6u)IxXn(B>TbrUFsp0P+0>(D^>1Z|TiMJB z5Lvcbg@x!&&oD$C9(mnNk<|-iq5b9|hv=MY z3$*GpfQS3gIlPvx650z+=j0}Pi_!210K^NM@B+k8v~G3i-Gl|#$zU(mKh5TcCgR>! z+Alt+C=5d$y5AFHH~4bG!yQ4&rzoPJ?}h853QsH47Gs|Z15$*XRyX_v>#7io_0xf& zl7gy7c>_^Ip)>aN?Y;h~@1R6C_CIafQ~~Nq`6H=VOzqm%ajGxYD4$*_dXB=x1))c{ z7Q%+Y=>%NW1K}ZxsG1OFbV>{Mj74D2VijqY98^c47PGJxdi06$zH&r7;ErEHC!L*B zz$j&741vwdO43Cqs0`hS&9WMD9{aswP9?6e z;SnyPFyutK5dghGL`uWwnSN~V2@BZ7@ zC;#!|AAbMCPe1+muRr|h*B}4CSNipj|NMtve*W=?j{`P;_w6@tKD-7t@7IUd_q6|; zZ@+o{<+NY%&u6`zeX&tFsH(D20d-xM)9)OfLZ}W!F1lpNn5$QPf5K_Yid`%QUQG~(SE`y* z2!=1bR)GKov!EcRJP%dsast0DGu$~YCV&c`9&)Ju49ig}-V~~Jve|6#c<38mAa#F0!GDpNM|X_ltOd5 zs`_h7$DpAr{VB*DF%8O7)2$DxL6qYcv@&c6TV}$!D$GsE3u5Urc>+fe#u9UcpW{XbT*fWBaKSx&O^xct1iIsm{ zDoRmPG@@2n_4^wVqaEg=Z!OF~Ohe1S(Z} zbcMu#=C~4Hi?mk`{$3&G%Z}EQU_#c%Q6f~}pU{vwUH3kb7lEgP-ubDqFSh+tL4!Bf+msJ^U$TT+trt%mw1_} z3ZY<>plpn}tIoAqs)F6<{p;D56Qonmhsr2QD^<6Fj=bQFcSnrNrMEXmQbCb8dfkLI zf+baCnX#MYAoH!4o}x?RFIF`=K~AUPPJzhq9S6=`KNb69LVZ`%bJatrLYN1_h^{O` zn1->ln^vZAZV{vyEg-a{Y>b8@?x9Gigj0%h?2OcYJ8Z~$9y$`Lqm@Zj=AU#1 z6P;OQ$Ub4ZyDI~FhH5*7qKetGwV+I-ctf(zvB%`NQ6~mDCK*c*kV2$`(2E8|0~<2KwZU1nmc0d?p5?+2 z`-%dJep1~L$1@_-#!Dw4R>g$Sqq5TlE3RJjv{O+K`P|6t?ccrq?3Z5=-FW@(-M6p4 z{&lbZ?&GgN{O$ix&i(-lhnK|t)lB`LvN-$hi?l4Tm(W(}qoH++6&pad(Bc^pMyH`w zs&LX!ghQ@=+q#$ zgNL~Sw}TF}{8B)!#&X=tGcH(KHLLDHxX58te?T@$bST2;OODDSl+nLYyur)=e`6jhJ03pZFQm zgAlAUn-Buag?g6t1xQ;JUMnt2BZ;omswi{TqSW3bi=K&VB`)n3%(rgO!! zi*>3s2|sluGIpq`wP1Igb$Ap}ni{*ry_9CI2dTJE&o-6{UY*R(W{&+qDpoSx$W5US zQgQBj5ZKW>7pB4PU?}1ccSI2eL9nsb?3SGlmcB`6-iWyTXtZ&PbKjSSCDL(E8`teX z71-u$m@=q_LkZDt%(|hcHK!+_vtrrP8`H)~SUy2?bn}5yQAP1sc{V_7DlAL;PYh$l z65+f<>QUn*M&lDl=@fQ8KW3;c*H8W=1r?#GkX}lf- zi=D!Su=}Yy9!a7dePoE-s#yss)0LLqw**39?zrzjdq{vd1ta~a z`?8{EGn9dn-kZ?(&SrSSrbT6A1N$5DgE8|0S-| zv55rYM%%4lR2?dv4ebneFs+c5{-alk;*1K5#6uVo6|(!e?z3V!?5){9MOhd_?-#f-KKHX=jPz1~`F21HivOb- zwy?B>a&p0F*LD>x1>y76A1*x&&(|oMX*NDPd|Rn^V|%D`VQo z=>PPTOS+;9O}$LBj2W(yK?LveP4FbK33o~SZ@G%hY1l@_Fwd$2o$+$hO|k1dobLJs zDaDqaVPEO8OiFxna8^GBD{*ddh^p_%{NK&1wJ2sN{6H4pv&A~L=P}UT0jAr|4K&3BD|*yO^QgDwJ7l z?;hPNdi)0!dD~Zf3gN`DQ1577xpq!?o9%nb!`SS0?_i0?DTpGbtQW7Vo6SYHm|>8E z2!!&vyLOC#hM4k(ER+6bK>)Xher&p?gsNRd@L@Cmv3OD{4r7j<=DZ)%qNsKW0V`UZ z7n-4_AVg7OX7!{py+*7@$a`20UX@)z1j}@lCx|Auzsr6cL{t>IU4W$Wse{#-c+4=> zJFZ8H0jj@ynhrK8m}EkAU^@6j!{2Y;rhh!Y`|Ov$b^h<_Zysp)+i$-6@ZA{gzJ2rh z_4jYyzkc=guls8wUiahge)sX0k3aqN!>d32`FH>Qr$7Jt`sP*BWEkayYTCanp7i_`b|< z_rXcV7e#SIg&!uPg0MH-O@ry<&=6)>cB;odoU0D(J83UNdSruGSY#0cD+iHSQfB%sVi+G?o4GG<60H9jBB^1 zi`6oU+*Os5(CyY$;_!J7B%5Bq?PFTYzNJ?kuCi(?s*sg_u1{o>VHC}3{@ztaE%9h& zQ&>UW_~_xB5?eEZ2`sul$i{U;!a;y_6P7g?ayvg*_A8x!2Ca_&-t;ri_<-GVMhIJ9 z)j)z_a))|=!Qwm=TCxHT>!ynC&?DRMqNG7Pbc~)A3bdqT{ zxq(-cPMF@+%wK?<3e4*gFtEne=~luKKBDUll}3nFW$!*HCrWP9O>GJh2!dB)Wa;nT zl1uFACszGcYai^ZDDEqq2*7S-)o)KeH-tfFmyyK5aE=x39&;{=GZ>G=C4~$1>zd2; zn6(zO3Xn{SxB=}8CJ9x^Iz5TVCmP1E40x-;XsTh9;8^6_Z?u|?3jS1$QpoC5qFQ#y zXgT_x6q=cr+Li^!l>80QwuOt{?b;Lzqn(s;m$m66L&?sDX|uB&*UfIel)PkNggyD; zRDEruU~s$gp*dIOxDH=HN*9Ctg#8CgdZ z@tc5YK6T3I-YKJ8&f+hRoEcJbDoPfQN+92(Vzig1z^2u4=|i6Z!O4T}SKiUXnbD?F z!45TXw@L$pa;#Uwut9-AiP8iWkEv5hZXi*&ZNe0A;kPl-)ze@qYX{h3(MmPm8H6?4 zGI2KOF{4#7CaE1cyG&to!G=-%ToCrz<26XZdXSORgH+D+oTRdn#Nwqb$YB6SR^)Pq z6mpu^Rd7p(pkl`V^JD{83*I%!WDu~fmO zYZMK_s`@bm5_2!JJ{}%ND)m}N;BsehpZRTeJ%q(pzi`)_L9nJGed_f376BcEjOU8C z$C$1%qg8%S$`@mJtP08_x2O6?;ggP;j>a)(J*atEarC{I#oGq;9W|{>7o&__p@zk4 zfwI9aD<`w+CS=uI!dy;J6ze`kG6t4apF|09C`z&clP<%Sp#aqB*2eHs$#Zw8%olIR zOm-Rgg&L(UOtyp|nW^H3<(30Ko&tMoV+C>;e0VS^RD*;v@3IL~M=nnm8VssY?j=LN zJ4IE5p|YYnVrxSmhB@C*sMx3{mq1t)dpSSD`oqm4$Jz zLs|J?)fLg>qw37Um!5>k4nTEKwnm~^5e-fVdeJGNy{5BC6!MCZ^nL}|TSOLGcU7pF zwOL)puAEl#shZS9fdSn+=jv^=>pdQGhHsK$i9@ zFgjxdYxT3V=QuSEi#a?a*IXy%+%-eBqKy^wWKaoacSTWPf6h}uq=NbSsfX3BTkdh{ zq)$@HLF1hMt1|j|u=(zVB?WA*T=ah`%vjvkdqZUiVQYmX9rQ_onij-3#T_N@!s@N( ze{VUZA=S(|pK;5bU5pV`Q=R^8CIIT?tl8nkS8T~>yXq0)12aQ?^vu~*gV9GH)&KDG zxLxHYD2jSzZOl|XvXSss*;)3MZj}F=0rEDy|Lm7vVSv2;=9@RKzW#L(KK}NnAOFY4 zm*(s5e!OR^f~dcL_4}Xx{HI?({_|@lsDWZg-`5$d?I+D)re54eQX={p`bGe9!SQZ{6&cgd}Rq- zW!%ncQXkFPqAReP$so>qE9fkY86kMgL#q)8I<^fROgj}b^umsL5Ikx=bd4sa61Ktc zxMth*8FkZUl|ae>$F0mbaB6zlDs;m)j{PbX_|b2B3_cc|p>eG~EDcSC>r-G<@TG7R zh5mN;@Qu?S*dlBvWm17KCa_B63Q#MXbS66}-yYGA9onb9kRL`DVW?6Mea1Emlj}E- ztR7A}`W;p)^<7nr7rKtZtxSRP7d_P>n1cR8 z4!vOEx-Cb|pw?y&tV^rEssL0VB}Xm0q&YTz*24%c2UuX?~DwyW=a)FaKw z-(Ynfh{zmdq3cwripO#92684Xt=2{8Hf~Mnyhjz($MGO_G}K7C$q3OxXEW1b^?f0R zy7GzCQ7~iG6SqWEN+@)m!_D8gt&!PjFhUOkOxq?{y_ImJ!lJIjlDIo8Xp?&4tZh#N+Y78Rm{c-JP6f+GVk=14P_7T%j#-ZkueqZjh2k0n?mD%GkmJ5H zUj;lRG}KrP#LVsr!ne+D2MWY)W7krj0nvNmPPA zLOqH{lfm_Sfq)WIBaqMwhi=9HnaWOFm=j{AG&X08fq^M@RhZ0^pe(Y5x=@A|5b>MC zVk#tyHr~=o#WD{izR|W+eh6sjA5*glZF$qP{%_+)jr1*byA>-uv!UTY%q|zBx>4A7 z0Dw}>0KL-FsAA#zH56qOY?1GH z?%d(ft0cWV6?Fzk)Tif*%XpV4{W~6bA8NW|@SuyzbmgM zhb65hEP%khrd*h4mNblqRl2dbv7au^pQtETo>;tNk)3(YFd1X5Snw>l;R= z8SPzG9TC$<{%J?OCxh5^oLSBg+B*T$eW_T7%t%4&bE$|IUQ~!SxDCxZp(uyqXIT;^ zlMbRgQ^xTh+D&ZZp*Ne^Fh`S2ry`KzmFE(IxF+$%`(>ZaOn)~s<31lqfPqd05FBf% zET9HB(8Ly1d=KzA|HC)_?Y&U<_~mauB>Rs~@c8cS+qd6+H^Aff0*~LneuBrp_I0mj z2KvAL^25)6`sa_oe46RM`qQ8P`0G36h^Xk`s`SA}w{bjz(KYjeuuY>aPZ~7kso$tQ+=Jk6p=c1F+e*60EJK@~V z5$A%8oF@|I3>^cVSx*^C7@ZNQ+mz5yEljf$7CrSEOZ3L3$-f{}1Py7dshmdRZYVsq zrUF}dgH`O4<$ zRp|$F8H4VzLlBu98S2C7_(kAxZ~e)Ixo&hiu{+RU5#}NAxJA`tik=V;6lIQ05G36K zkD%vI`i}Gvra^|Ox4>h6aXRk6)0=4Z0x~oO#R2P^H>aj=gLWT*Wy$T@%$!#J- z*m19U_E*y_=Hnn=4cyxFofl<+cijv<1pE>Q%VkB7Q(;Nvnr^dYW8cOgY{o5}H(0ZwFzH44 zv15f&MtQ($7=VhAYMS~GREYQ&tosAYmgLYK7ur%P?U2a9%xE$G|E#^;mL<1!t$B~9 zs26Y_R*|eCFT)WC1cU$%{)}++jfUD*w>8==sU_Lt_&j~j53#eVsFvt6Y)j-|vY5GZ zZv?Q`TnlT?SspCAk;=8&Wm%cKO&gjEulWFCzEZhTsG#h;eSSe%%7z^}o#(DYNv1xw zEx7Ik=HdmfXTOy`Ub9$-)%lt9fEJ6V=ESk!&(ol%()CL8LKHQFp6D*yLevByP?!`niQ0|=taXOMb-Jt{%ulV3r%lA zNE@oGBYy-4sB=<4c`2Kk@-Endy$eb}7Dh7nQs_J{=VR}J+lZ$~!4hK&c!S+|y&Cuo zI<8!(3SxA-*;E7x(Z|4baGM!O8FS|h4+bf1xtLZ%*=uUDaC5C~qj#|Fw$LH0Mejvv zO|bY#UNwcjn1cuSPSAIK5b{$x>z=YhWas+Hm!{>Ql!56So2kP1$ zGY_I@q>-igX}M<7X*vixaa;irypoMh)>VYQ5LLmB76&9`8~0U@4xWub60(gcUtmYH zeB6X7du}EM#_YNIZ~FO*t7JXTMq{&dq;MzQWS{J@Juzp2U|_$R%35QuNQ1tIuGia^ z>-2uC=<5*fl+(wh;L+GVLqVKv%21~uT|%e|N=xQOaiOU=611S}#FTX9T0(f*sk+z_ zq9PDw5+k*NyzPv~hM8iUF)*Dw)z}%xi-=px`!pj7r~s6`#?wEt5m?6w+Zw$bb6JQm z;{G|NjwGGYUB^P`k;z?ZDHY;Xn`J{Q4oAtFI}q2c=)v+&z!q;iW0X;Yg>tD{U~ z&LS+;kKS}Z0+p^lXcU583XClk3WWHL@dLjLQ*xKhETxjLDvLZ2pVA)cPEo#2h)l^w zajwD`Hz;iz=Cl-;vFQfJPt&4Jg)f!Nf)*>1k!~87az}2N1j6WV%G!@<*@88pHaeb) zL^y^i8JD2@p{hc8KccU>&Bnn<%BKa~6{to#La@-J0e@H|;ro~L>ilx9BI<=1be+L8 z<0o3-K%-P&``zL09$$UmWfm(zA8}q68?wBS(ptTUj?9?@Esm5K+%y*Szg!)pLXnx6BWV>XRaN z6u5;MA98@qa?LCMJ|G>UXqRe0&)Au#-x?9>agdJMGWjcuOPx^+Z7$V{pb3N{&M8gF z$ljp>!k@aT;FgCTO}94gLgpdTA87Qq{9Fgo06V@iuN)a$2qn`XiYX1O#=G zReOe{^JGuP0lXfSo{gXFV=b~kdWicL$mc=Z?}em4{o>;dU`Q_A)fX(S<|nwcPF(8W5g{w{|}e8_8FJrp)r`Xp47`f zho$CgTxu8OWPIhusA8C>Ak^FaXRwr3ylYcSYynE5AEWI4S8yq?lrPcrbUNIgv3Ph= z<~V&)+#r@-nXC2sa=LlLrRSUlz)dpPSbdnVlyQVxm=l53P35IxsZDW$Qsfd8vI?NI zFGUM%cO2`Pc-U#AV&SV`W%`sRYVh{L9CRR*Y0r`fmy*xG{lCuAU&5qjR0RVD5EX}% zOZtshp#q0MDOf2W;cS^2%#(Q?-!LgPxw&qEQp`o(h5+Jt8R2lRY^Ngmv=Y?QDiBuA zFPPMv$PBMlAF9-2V{&RXR~Z5*?s3FnP61Zm!f@;2j(vGyQu78%iz0$mMIRQjLpW7+ zq4BxI>4#%cvxlZHw3P1a?m*IJkjZ&r((|wmuQmNJGcwnLF(ap za+!d%UEFKbvQ0p0w*vz-fvw#~%CHxXPuVMH01nrRyy(NoiQ0 zRA=W5bA%O0it=%1ppo$pLDE}git@6OQUQ}9p|{%4nACYNDUdWQ9>f-BvyI6}Mu;hr zOhh>KXvoq4-VlXQb+j~Ptz0elVeq#$*O?jDO2Mo`L-N$aQ&pqjH5A{&ym?EA7V0GJ z=L?l?icVM9=mG@%GF8vCeFv1@2cJ1HVXzV%toDhvo@z1}lCC4WoKMs|p&FkyT(dC4 z0*AJ#fgof9bELQsCW7P?{6?RW#?TI9x&=iRlu}fG!Yt8oP+bxg0DV+^bz~TY3169* zXs~1TUN(-m7El3%xq`Ax9ZJ-1F} z4_k=->BAaVK&9K|4y_GdxVYY+{O%_z75q5YED*_c!e>wlmDk?c6oqQn5Xzx6`ubY( z@AnU1efig~CEtJZ@ex4znV}gU+ z_TfLbfmR$}k>P?(x+erpStz+=sOgWX()&BheOq!bZa&!Bv4#y zo0=%tFC+}wAD<6qVJw+g$9|c2FgKQF_cW9F6&c-UfXTSPBGIq*_B zFkK@AZS-F(jk8QI=6H#m7?M^*qOKz@J-OyWbN94=t1c*Ob_`e;z&>}Zcy%6k<|UQ5 z^{9@H#ZIOQVs1_aUdd%V8g<9GHsubtxc#v7IlNMzHV)z^+i4h|L@ihwzSnXgrdp?M z_H}BJwdFd{;B!j|{Wu}mc}lIRAk&sf9t(zb2e(k?9HizZKwExiz(zT5?zcWYT(3JI zAZxf4cS_YT%v2)@VQV!NG_t^`_NCPmi*{zae%&f`;7XqGCRJJ*B>TNpB&dSM@i-af zfqudbiy#0{n~>@LJY`- z>4mf>q3%p78!C!$O9m~yj5jfNL_%AI_cVezVx0q&4yC&aDdP$i@Vsd!=tVa@c%^q? zkmOhZa6pg0Y)-IN)9(nC4Udw7D&4>!4G*}X&NGyIu@mx?2^nG;2On=6y&>eS_qJlM ztH*iF?jaUL3o=%jrl37(;0;x$wx+ykza(tn`TSPfFX&ZF6{2PALFr_ni>yz+aGy)9 z%uIwzNTuAO8bd#EtO|!-^`~QG5c4uxJPO?VWN)BMhEsdpG4w*(u+hot9Dl9iAPSsQ zX^%4BGN|Raj1X232;YUrwk7H`?aVwOyw3D*tZ?f}UZ?4Uz%O$#2GPE?wUwN^qw`zDl@%?~efq9C$4QW-(?Hf?IXKR7F8ELhG9;a$L6=Z_y)F zF03kC_H_ zeTr#C1~eT4UKGZPU9?)9$2CTwES@Q%f`uqG*Q^~gLM8_;t@DOjplVvxFc#M$T;mxC z#aL2DPT--=+fd%!B2cYO&z$Wtaaf}_mZ{UroWdd;jp=S?XR94?je(r{R;PJD2GDSJ zT10GdukP|U>iK%;`95(@Biryro8v#Av*jzFx}3iK_|=y`<5TzH(+^+y)cwVu`!DjT z`{um^M*l?APan`K5FXXqcBsaDAnc7La#Mn4HgyBRk{Pt2t|dOQKj)nm93y75 zt&vf<8C!7%CFRdInF9iaV*8trGB@B(Y3EF;t+!hlE9(EsN=lsAG`)Btp)sDuNQ`!U zoJz`b&@RkDJMWi-qx7_@3lqX7doN}ZMM537_Wwb5XIu3$O0H8$d3j|0Dnl-uWEj*6 z`7a#>(>@bLoFJr!2OX7h=o{P*I+Zqhi~rFj0rsU_;!ozbeQ(;08d6-<4vT08VNcWT9m*pm)UGnR(U@n(`dXYcyd zmA`cCg^xe;L)=S3`NoR@a1YhIx)P^{bi(jhn66I=WtgOPgpB*~NkQ@Tb>*0Db&K(g z-f43rI08F&t_UN|*@`0uD5Am{iTgW0S(e1Fmrt@ae&OcrbX-*mz@F1*WM9z74so56 zCN-;Yk8dPq)m5IGoPY;vMs}5BlnJ(p;awP$5Eu0+5zZYavOCBpCm5)yww?9M)!g|i z`keK?jw1NRCEt2r#8y$^!J1|IQ=e~g$(7LortRzzOe`*90vKONl&kDgnU@y;S$3f+ z#WLJjxx)ne;)-gS(Lbxn_hR*nU22=ZRE1Oz(Wi&HTzv{AtG*aQ>4G#x1;;v<&?4LB z7E`+oL(dA8A1!l9@rIu@eSvS+RvJJyt*ExwNg6$Gec-OLDrOVt#N@O4BXdnRa>h_HpPP9adGVZ-N~Rc(_{k za9ZEnBt2-AcWntpDPh_zDM3SUM~8xGHm`My#z6?k7aDRan%pXtCJh%CXpAW$L!47n z`CjT;7u3Kr(r2QpGmmNu=@B|2=CKEcriN0MR0?K zKH(dCorB6w9>n+0MM%I}QAKh8_eLK6l9F zjOeK#rc)T-n8qn|Y0utoT5Y&S?zQs}p{T-e8~F$*?lD!jfM<2q1EXrUKh2*BD>q(} zbE_a-;kTqM474?nfY38!%tDb3(gUAaZw+UOVtaTgE0345@~TfTE#h?kcTkO9d02#% zPlT1Xq_;h9;if~}a|`!HSD9nx_GksrFrdkFiKeVFvup|-2EJ3Mvu+Wl75s9M8xtnR z!C1aK2K1WtKv_M#ZzMO)?bwwc46@2Jmyl7=p3{PK%x*ZOf_RvHE`kk!%;8r6!L001 zR`t!O=85n-vGmby|01e9`M3JfHoj;opCk(Fy-F(mk~aYMWB&0MZTs}qm%rTqPH*T1 zz&?HZ@#Cinz&?BsD*E)z8vy%jKlj(TxBI{R@mGHUdHwNs|NN`pK0-4efBg1we*4>R ze)0bMM+@%zPv8Cc;RkTnw=dk)r-ga`JTykXuyN=ifCDO-8pFl|AJr=45{hh@%PC zth1SFH#djI{Ab$=Z4yLhrYSgbSvow3&Wug*fDo!oW2Z!|XRv?Z45rPBpvQANXYLo= z@_Mn1M{z*KLU}6T3^#?5ZHce1=065s1=N(yOeDeP=RXUh_0nb)uUc3@BZc|xHV78! zQvp)Z*i*D0?KEX_$AqLV;W>u5+P&we(b%vVwz2F&;t0VwcY=_G&W*DWqEErdA2V7CIc0hW@h*jh1BWm<*qvyNgqF zQW58%D=z2+xnHqGxMpQSVn)2D!|1T6DM2Wn9-i{@`f4x^{Sq3CMlZp;z=mQ|N#cdu z!U>n_)nDXZet{R0XRiRLFH{+hX5QMt9V-NreNvOs4_>x zFydJtaD1GYi*3t_u!VD02rVS7QF3X#uJD)!5w2A|;ym&g&1>x!AY2VcDOsoF$e1W2 zOL9^rp!1-_cckFwNo^pA3GlcRxDT zJ*QO;M=3j9ZG*(Df7t{#@wG+#=Gc@*4N%+5$vYVisZ zN4S^w>{IXTFzuFGm}mNr_>A!N2F~6ty^?mU-ZUUl)q2TxO1o%tO=*{A=t3ex^Vtbq3J0ppP)!rC?J#<3Snk1+SfTh^f!4;|W};W1Wz4q6 zem4q2ubnbc|GqrUzE8z{=K{3_WpAP1-^2k#^C+=-NCO(Ve}d z@HI!GorjXK9?z1ebSx7VM;6EE0x@1%vrAu0PhhMP~o5)YmPDJ*Yt@B z5{Nnh^egHlpPbrYZWUZ0u8ule!fR8CeW6NoERSKwp@*amacmo$6DGYBeK1u+9YiY) zrldXUF$C0SccmqBW7{#Qw7a%LfC#wOTS)^?4&)}VPMSWAf|N_F$V>}f?}|gaSw^h) z5@%2?3Z#1fdSxcAkxCoKHf6^WVq<0CbBA@|66i2+qph&)OHl<+Q$Te#cC=s6OpAWI-uG;&9%n3MLCHZ1h7_ zE?R^wb)cC3u6i*QFA2*2e!wt_?&w9}yfS38Up) zJG5;Tk}Lj|*(I~xaY3%aX|JnfpS^XftU?YK4BDF>Yl2_D>HYLM&$20@w2Lt&t`6b` zXAo~xRo6`4Ec-cDbb;uZ2;@{>w-}?aqoVYM%!1yicGwycbO-HUd-PSQM#YOBQt2p2 z3!MsF%DMn$CrDsx;0*HZNtcSJU1*dje z#_O<12M?jKJ)|kR-i0bs(GE?0&I{SL>X;Oh6cYDKQR*HYNv%VGO>tP8SHb#Pww0+= z?Z~Lz!;R+GgAwnq_g{VabA0U&-+%w^=YQ@$?b!ETb<$7h*-i_Q6ooKRR0S{z%;C!< z9x|)r<(4uh@m_8zNtJ|2$L1Kt)cMQ^2f+}*;$FFA!I=P^xzBDXX*@p9xTV;ra1q+e zE=5oub)eTAUYc#yee#+oJw(OGg1m?TcFJr@J2k5IjA~oHrU5Zm_TwRl2!Otb&9E-p zt!I6}hRDa!*^8i-Tov}|xq7hUIm3<0Wp@1i`nzbJb-F5EK-8-rUCIzZ*^fqB^qT@Y^G3jPGOp!^vCpMOqjl> z?GonL>r{(0pQixYhKzv@&w(ccME1ICEs)OG3TT_-D?9?UrClncKw-YK{q zlgfVmKH$3GHn;rDmnGqy$M+-*8z)*nqjtaV!O{s5c=P&z10N~DqhV>a3I(i(FNac9 zEwoyDr_~B%#{|`5=c5fF$V@jot3p2M-JNfyCj}m`o<5woOd~(s^gcp$#xnH;xn424 z3F_CmT~UQh$Kd`hL(Z7~bOJ7V2ll>h%e6;MMo@IN-KX)1^0byS;aRcx>%jQre6%C& zc699n{g$tcPmFad1m{vW9FOXl<|kDZ-AbPsLQb7sff1 z1~)xFq4pI?2`}6!P=h3vQxT^Vv+E77bz@gAw$xQg+Bl?D=(=3bQ+(`CI`=U}2$==y z^D-F)NNfzxm=6^?LdmCjb3kEYOb|-gyKwh3iYIH_A=6Z>HRaAnU1QV?}7$HY{-k;fO{Qu@w{ z(SCzzgEn7daBp(~cVM^F$tI}&a#{tU9=C)3@B!93J2Xxh!EaW$*uqtD&aL;nM+O-c z&an-%b#>ZF>Bc3*H+xq^4ImFA-AaYM&deo9m2KBKqh!oWMqqRc$^B_UEzIC zZrNuq7(GQtGj`?!5o53?kb1k!k!p)uhTAvwm3Cv zsBoHSESu#quZCVUFM@1Q%vKgaBw_;@R4uu-)@NstIG({-Sby;K?|%I1%U}MOPy63r?cwi!c>lx4_Y+&eX8!*BZ{Pj=&;8u}eEiiP z=@G+Z{?)I+So~A}_PakkI1458iL?H88$Z6<#UDR>_v43eeuA}xW4Nbhfa7>tjJ@4s zeqraIxTO7*RUY}puP$P1MoYOhlZ)LiofF7~%6qZG^{U)_C`(h|)oGcm5cS;OW8a{? zvkB4dhH?^j8%27W%9SD1q42UZ(6=cT2ts84jG$tedZ|WKP;_R*Tsc11< z%0lXID&}?G-wWWlGudTTHB)r>i1ps9mR~yVN>UE!I%E_ z&-FbWWkHTd=aD({hlyOKEuWCMw$&27YM47Q&B-@$!#by zDxkvk7!zaSr-U@GvIzC+QTue{3#zoH39`w12nXhG8ADrv2-Qw1TwdMe^UacvxoH9B z@jM&a~FBr`#*(+%)yXAtu@6}OKJ5{%36G6#FxOqKLRSL{3W=RwLHT)!x zp(0>;sg8puv_0vs?r6tp;qtA8M*~fmOW^EAe{?o{Pd%g)$H1`*&vg}S8}#5w+JH29 zHEfNwwJ-fy*q5M6oyJVTHe7pzVcrza*+1c)emji7k?Y=nAra%?1I3iKYr7j`qRIwb z3!dN^Rn`JhNoes_5z-k-Z}z%W8#9WW;IfXOw~hKc*K8r<5R#y#W`%PLoehebaEAhU zxpgoFRTRpFu;E6az0sy}oQHFKs75{o@&*OzNsp3gzuPFaVXL+-OT^vTLf79b3TSPM z2sJJ^P~(JVJvxzPrSOA*s2oh!ZwF0uhwQn2iAr@yjtK=qzfB{ru6i0(#VH&Iht<;M zS~0UgIZ2s%=_zW#nUPcZwOoi(?gtW)NLWWMKJDx$GcW7tdKl)zmbU7rwEvki@*AQ) z&X(jOzGNLq;~o&nnKuQsS!_PWaxA9iG({UdBc+2O%7)W}Qdmw%THjc??fpOuH1Al6 zhpK-ZB}Hp)_9NY3HN zRDf6&%@`x*d-UAv1@(|lkgBc>znMdnkD`=4w8Jp?M$V`9n38sn7r??|Js}Cm)+%kz zfFF4+r<>ycjSGOLQefMX)4@`a)3h5fwa|Gw$DxR!&9Gk{zlAc&T7>6SvvcYfte;i2 z34d+EXRBbp9_TW83Z601Lt&>DIyc(K+pVe)2kXH^UG*x$aD&?{(zlDC9m+T--on5y zy-K;blv<{fCgLvx6gVfW!v^)?L>ZVlV?^s|>~htpr=4x*Y0V~bMB2-7;eVXZ)#!?( zp+aIaDDBMI1Xh>3o!M7T%$72`gBIfo>n3s{PP~_q%X<9nj1@!^EE+Z`#H(y9$W*B? z>$}jWk4!I4Br4cGo5&k-Tm7o5iUqUN?6usyaz`|s86)Okj)x6xkw_F5j6C%*^qdYh zKaLRk&Au{VdX42q{B9g7QNw}q;+FP}lQ&{bj1?%}Zwxv!w8Nd+CSoR-vUKNa7gmJ*r-E!IIH5`n!5RVE*e0Ve<+RLuI`Orf$|U zeZO%7h*G11Ij)+g)=;>}K>Ik9%~YL5=6eH{9p}b$AflB|ZyC-oudU)i70?FXT2ITF zI9X^X+j&-HK_Sk%ujIo2?(QGH`toPw!asca_~W~u|GEFXT==I?Ka~sDirPM>GI|qI za|rr1n-oP+xxpS%Cuz%g$A2Da@D=gO(+Gbm=YcJhd&a|odfDhO*$GK0L9n<{aNUMN z`j(bmi>K#r9vjTbf#ND}+;%-Nvgq@6KnFTOIc83~kL?y>DN3>#o8Wp2UciA;qKfS^ z2MVRev%L+F`g@Kv2-10G3ReAQqz$l4n2<9gD95-ceZKA#L@?rdH98l%4GjSL=n#Yl zfGXsfipNIMx4qfuY%~ajm?9h~m0F36=iWF_KcPSwk34}+abqX|PcJA?Z3z4 z&?XfyM(3$xxt=Bi${SexI*xuRTR*VKQ=qF~OrhUgbQFhh&P)O6zA(F*pkk9vs?nG@UrK@BTE*glnY&G~8W9U1!{WKcaBj2~Xk; zklt^aH%Lfi#Q?=8b8v5b7Fs>_Sn`I7yaJbE%7$YYV!mJ4PQD?1_?jbKlUaTuG!7-3 zx39;l4U2~3WI#pXjX6R(>wap(^Ax5qK`XkI7u^Zg)&!->eR}PogGzsHQ#rIk@}&7R z>BTV$v^w+9o#>eD)rJir44+wV0p1>0reW50FzU=qLr_r4bErPeR?a9uR9MxXqFbBu zB{dG)$8(7aIE*vx_W{1i}U9$WwBFD2W=_>4XgmnHT!lyLW&iZ-yY zDr54u)%H{t*w3fM+4aCXJ~#TtOIv3umilKdVLh#u2J52k?)V7a7y$^zSp&tN5_-e3 zS>YDN5oE_&;iil6ybkT)=;+b6;HNXSX^XuMyQ3z02`vhsoW~kr5($K5SZZ6y4Pg&U zjM&1Zy%{bct?NJ`RRxUJXRl2=1MtR}wSWaAK!G^R9ImQi3gisIsYmRskQ_It0xa$r zf(v!I7~)a5S*tHOb3?pgvEd7HvSpfYRa(#(OzYemy|uXAC`t*LC@}{H(+5x#BXJ=| z)uqPwW_6{wW z>mf#kJi5>)S75*oO826gzwWtWM8aIqrXtv*bJe*B?KVyp zsn2kC*mGP2Pa|kWzCQdkeLwZ6m_;iCp@q>^dF|RSn{cpS@j_Z3Vz80`vQjbSvPGPA z_(X~%9Tjh{YC54^N`ahCOtfAsCGCIuNjv8Pm*9^4lSSx8skR3p-zq?(HCln=ft-2x zR_|5SVF5_(70G~ex)|%Z6HHXKR7m)E1uYR>qn*(=mExTX1DD-BK){O7O~Dz-T=r&F zGEk8wbibQzr{JL(prT(NdzsjAFw~)%g(zL=;jiNeF(MGJv=bFR{AI zIe_p8U;D>g=HR_``kv52N1&sIz?8Xla+p9!%(V(T>XF67TxHm4&+A^ZH7xOo#3#c_zi$AxotQG=LF{V%^SdBQYMjgx1keADx((BHJ8#g?;3eK*&LYKjg|Z zJDd>@3kAAsztFD~2F_-hc?;h5Ik1h@xYc8SgOMNd_lM0NzxwiLJs5xZ?%mJ-+<)9M z`QJ5S+!RW_dH>6Q{qX+74?lePdN?-0Z5D7xqz&o3><&9s@)MS2O0Un~34-}C^c~85 z`fsX1vJn79EPQQBRTF~FAge=Ju-*t2i508?K%g){?v@YXc?So=go74no0VEY50q&N zp5cI(t+a+##?t_umABolr~ldSVVu5Me^9JHj$rlN_9NeC1orEJKNS3%`X9xc5%2Ky zKk>2EX2fnu2~c>awa*lMsE}vpB;fP$^goqr-YEF5{-;?U{JGib;`qX!m97@0A7lWb zEd}4~Xn?*r_zc=ASeU}?(odak^slM~SB5Iwax=h#Gd1ATEt#V+BGa@@&^*($I8P(8lzkC1T-OvBr|C(y(|NAe$`R(t1`|EeV`yapg$KOp^ zq(A9f|J(n>OY|T9@Na+o6F%PmDcR8X-~IT*4?mHL7?1YD`gjsk_iR1ufZmBsR{@1h zSfFwp(n>!L?G$RBn$4Lz9@G~Cf`mjxSM53ho*cO4Ki`;hWsGS<%>8TEF5`;B%)UFK zWZH)|sxsY}pK|fmJ{4FK&?t}c!}1bZiUKoiJG{}(mp=V6%|qAi*>(y=SmC%`P%6^3 zLZ2S@rGWB-d+e1K_G?-dq}g`sPqv+-MK{~-O3hs-O-Ti}LoTXsyhAbeZd<&bjrXPU z=>nF_!#q3B_P32UyHre~GIob!SVoLFUkuJ;k@v_wz`{tw z9Kt};8B|3ghp>0mG-=%Ao%v?-$iPtULlxYetrWVdMPMvS*o=vVQjAUm_3DEJ5!%tg{hM21Gl#tL8$eYxvoRPwlCA zHlU)O;%YapUW39Z3VWUj?C>^$Js6+7p^)?WwNG2t7GnTgZ|LY5kqRM`Y|VYCGJ9z{ z=*f>h%O_kN&i$OT*KN*TGwzKYCrqh~vPKD2Wfgj1Q_q>M*Rj^Ax4h>Ox!ui=a06X< z-g|#3PO?c$*8j*bKmq72a_7!gh40OU!F{Kb*0v`lRmMoxj zhZ1Q`-syG}jccqrmJ{?6`>8?Nwg#pqmtNYv%+UlxK8GG6(?Jb+Gog$g4#Si|3!}rkoAcB{7U&vr z!{2feCRSQ=Q?y-m{t7@os~#b}TBN!Pw0;4p<1QDrrd}UNx#1#RbmdQ_a?cg6fTs-@ zw_?5rGBiwIBVV@TKdSXWyQ6GcbUnX&yJBKc|7J*nru`AB)Ap~Ap{JSDs*Y}`4p6u2 z4#k(-@mpsO3YFV=ykV)kWjF*-IGgf{iGm8kwp_*ALRVfN<+1e4u)+FS4#mpZ)^E>onzeAB`YndptcGmY$oeJbs>F80FI@H7I&}?~ z$|^=<^>8{Gm6>aK>aonoP&?Pl=Ss0zkTfl$c&I(g!yOz9>gacS268e&$}4L47zRNk zn|E7&w&;P#ssdJAnpBEo@3?wXeda2N`xVuhc^!}f={)NQAhZX;2|4`sjEi_Q;Psg= z3N169F1=ONvZ>$?sv|tX_8AvJ@xnT|*fe&&cJZW1Z`x(inN^nBDT)Ok5tyNg8@UB{ zFn5(>Y(&9fDG=8f13XJzhbc^ky2BF`b@KHK*J7vrRXzM2u-v5i@3)Aq5TkSuNOiE4 zK}_4%6qf#I;!g@8Zde#6t+eRd{%GPah-;2b72b))vOdCUDXT_fU?f?@$>tEmnNRFr z@!UiDeasHn`IO}4;$}@x27ehtouw_2+hgQ;?x>+SJdj^4`sJ-fKMIx)3JiH|Q#-|( zVPOzzPl1&6Q6n0LQwE!?k3T`-#uH~^#!9jke9%8Qhs6x00jyq&siTpS>h3FW$rPEf zvor{DuNL{vc@^JiJXCEzol+=^zzvTJj8HgcYpV`?4Ehh#x3iO>ICj%QsXwH`D=3*e z<6e#WF1*t4H%4_76X;+ATF5TN&+-oUhvi%Q-B(}!^2hz}lKU+0@a>NuzL_=FN63aB z-f-<-`?>#kjg@}=yMF-A{y)F^Ki=u<-~6Ay`@?U4^Q&LaQtQ+A-@X6w8-VM1 z|M<;ow&c^NZ$JHHwq!$%oovPBf1n&zT@!p)z`UU_D@D|(^QkgcVFAz3u>_kG5`)S6 z;XE1;xA4_WX<9hFs4EGWRm-kIOBtCI3MNVB`dWMSps5=61i(Y-^CER0zP!Kj)j7C6D-M6R+#sK=J;6Q+3pB4V)LC<``>L|bZD=fItU84VNVvp?ZuzF z;9EzWVkx)p?odKao_XvZ)7&KJo1_NUGrV}dvpDQNC05~@y2HX~+ErQmpHA$d7&{Da zGhsTo*+clQGGDdz${kzC3VBGZ?@8qVE~o;uxgJV&;M~iahwrOGB;jO)Ud~XFsNZQ1 zJ4KO$#aayGgoZ?Hfk3N#*6#f_+NFEuhMcUA){K} zzL@YbfUAgoV3xb4dQ!llG%dDXQo`>sMsK zUY~{71#h)Q^g>G+)87nHGkr?IP(9cj0>DA>BiVF#q@5R)8^S@vHDj9&l$Jilv~Apx zrE^8a+q+thJ*W`ZGP~&|AZ({%$Xaxg%T{jHM>ZryQfu#NQ50yY`*bkpIRYfAgtuZz zFlO8Z2Mou=?48%Wa&xI?6K1gKDU_QDHL|||i(Fri{)sirQa4$xy zp~$8pZ#4KT%DOjptLNnY0HG9#nAb*19y+#Cxc7U#^$RWoJ5~h>k=$Y`1YP_%6hpi# zn8zhSLBtNcB3!Z%0s>*nwWPfb%f}JS6}X4cFJ(h>(OVY+QvdMe;eYwVYo_xb{=mTJXF=^nQS;r0?>_$c z!@K|X?$dXF^WW=-Z~x}~qJLTcw!QoG%@6y?(fx*>i_WF1D)fwU=cD4(o=H$))MpZOOtw)w?^_^1J8w}Y(vi+u7%bl)SEDwE z$83huaC5_)b_{lPi2Ca3e`G&r+n~q0IIvzHS2-wc#j9^R85zl4&_$T_efzbOA12_vp#WxDep)R<+LA^!9$tyZp zRg(HN9ktD}9EbtnLh(qADwAw9)`IFk6xzQQaas)4Wll+BnO!J^Y(STbFudSpn+o3z zhq)E;VRX_lSz@eoS*@8uPLCjfatS74`p|m`bBk8xsPX7HIBmHyl~J+B z>ci5JLVs|2`ZdyNyD#*&wWE;u#(4PvTI{d^8EkfDvWk#$iiiPFqGX8INcbV)Euyc zp&U)U?{nF(mhz8K0OGs)vw0tn(wU?Ci$Lt2F^w8naxgT16&<2jPped^_-S!y!%n!I zD1|GH={+D5;F;;#x>A&$pn);6TfF?PI%S@Af%mOV8dg!-#s08DOjnd8F9?E7XXZ9G zXK;%_Fp;VrvBt+LtMz+q(_Ul~dZqy^Fu^Q$R-NdMc{Q;#qvD<3WYOPxPK&mp(zVJ} zd`$#_@w9>4T~u5&6tM+6`=T_Aq`XNh_b_15s5g12z`HBz19NCpg&cmnjMK#;P{?ri zjX(n^OJ{)kaHbjUI+V24mENc8}hf zO>}EFWyLK;$njRSs(!1oqktdpFwtMjn6xhAPQ{l{A^9v7{SswO`i%i~@yQ9==<_j< zOABYwF)6}nz8aEoM{4ykK3pK6Oucyh)^j?*aJw~|YYU1O;8^C8Y$;kWhKU&XjC^t2WO6HU0mJp0Y`OW%$MB|8yji*TufgumI! z)K+B@k`t@Quk!*pZP;Qb=k%PdPSop~9SveedOF5dS{sI_`cA|T%??#H;pz$XNv-!%f(??P@&!SimWa#X)-&=C~KstCGrQSr5K)E$>On0dUp zxj+Nten!7XA9qC@&sSx?)u8KXYe67Wwbi1Ca zY?~Q4h#;a06I7d}-E$VR!}FiQQ2`l*Bxv~(j_Ly<1=l3SsPYnk`AWPq{qG+?ef8zf zh{bIz6)w8hPhS$pVjE!ggobzxsYe*bDT*jA6megb_;!4>l?Qq3>Xx|l<1-` zV0Eg0Fn&q+?BdwmQ3K(Ce)He*p>X=Nyv;{%H1u`2DaJhBV4%O~^r-iAqbIQ&G z0e9hp>KCMMjHiD?fSvKn`WLPtu|ra^yACW~=GEPT#b1P8R$dk_3Zb-h<|JXPhzE{G z#?vU66AcXnum6)6rJUEp3 z5c2FeHbyQRwD^ERg?z>3?%(pN+r=^pq&jQ}w_Z_Q$LDbc|Ytu_NE1Q*v$P zSd;dF(w1Gqwxo=ZWviud?TDDM_JSTu9c>k4)0Q~KdFzc%C$!_au}rG?J&MnQkOrAi zzvAK&_BA4tD^#X8d1T~;6mLq5*NE2LjQHmOPguBNghS_<`&gQ*bKa$#x6UOj523@D z2b4kmUMw#gZ)3pPRwNo(JA3mc3VUoJAv?F;+83A2>%Q$+E_C?T8P|8W31TE$CHmo*J? zxfaEq-Q9|zC%4lU|1ur()o+T!hfti2>AADS?1I_Kj1H)N=D>qbW%TZjyWbtD8j8`N zL?;NZ^Cd{%ZE(=%5OhqOYRsnp4;_-Af>^e01uXKB- ztusS4h*xWglAgLq#dSuRW)pe{!-48 z_JExxgm)SzZhFK&!lz9STESNz@jf{Lt68V^DTpZ|Q#EZuksn%d@+M8-9GU2tt4M`D zNCH(z?RCv&Y3p(gA!iHL0u1}SyrfSN+k*;%j!gTS=nf|FOEDBa;l(c!tP5#J&++Cy zO51(kr@z!35v>PDb4s7S=tbC67sYV9dWi1z?dH;}oM0AHJ91Cuv-Bx~TQ(?)Yd6%> zKu_59E0nl5CNcDU5L`ok&f*X>8G!}PX~goLb&DemCU1kW_;x7SE*KJWZ`qiM!ZGEF z86iL-!<0TnmR%JDRMetSZ8 z4(Bh$5Tsd^Lsg5VDSw(KhSgF*P%bUs5GeW%k4qR%A4jFwEgh$qpITuIiAgT$*7Na?s4-Hyzv9!=1qJ2ETz-&u1i)OO&dW#o@oML?w#m!Mjwu==e^>I zv(;(07TAf-CXT=^iLtERf~MR zAlf=XFXgE|ce~1VDG}|A+swH=r)a_W;5<-+D`W(y^`@DC3_54Dse}N1V&-C&gC zqP=cNHE9eT0RfT?=g6MwB)==E92tQn6kQG+rLgMS4`;aX!~D8fJ#A%_-1pNSbe3pG z4Ajvvd&l>?LN{HnhK$xp(9qs)JKD-!TRS5sKd`aZK0I2smp0$c5N}mx^jpFV6DkTU z3sn$CKz)JQa$xJC&xpYS9v%*D*6U7JoUB$o0F;wy%OI!?uQTk*Vk-3q)15Y*WO1$o zu#3W-bHZD#O|x8|*Y)njHx+h)>()CNWuQPyz$qv|Afo%q89ItPGOE1TN^aAh85yH$ z5pmQpONupyIV!Ytg{jeM5`?;$Ljc+$4xJlTk6J>HQfE~<(1FBw0e^I5Zeb$7qed=l z3xHLbV_9m-0PO^vtZi|()*{bSaML4obRV_aI~HQYwlZ0a*z6n-g-?{N8hderFnv&B z)4;>cT)RdEelxzPdQ;KG{FY#Zx6>9!!MUB67F4)Y!C{@|9s>z%Zqvtn{O7`I(@lXG zBivGNq_>nN6zC2i4P=;!+Z5QgqbFJMSk?KaPitxr6g>u};#r~OM9@@Qj7!&0#6Xg!C&v%@2j%Mkr zYef)L+rl>9@f2c3QZO$%W6N0;hI&GXHR%Um<9U0fC%>M^6~E;D12Pf{#}Ok4gnWJ9 zm(?g@jS_vD+?t{HrHWD?ZQjk}muSZ3@u)d}Fd6!wolw2f0opUFkiTd+rE5HNDZ`BLi7PYYOHj_im01w_ z8@R1aJ0U@WuQ(vG?%xD?M(-171m4g_tDJJTW4m8bsye9k%<>Q$yiN zXfW4%_c%0BmOV_9H%srKddkcpB8aLlPj9H2wyFNa5fgR)lM$|+!;((7pO2+CZQZ65 z|E46WZQ-%`VGKoC>DcIRd2NxtygUN{=8*2!Dvd;Xe`oA6&tYJ&+!u{M^jpC^cQC`?%Tj zsGGIDS5>g6ilPDVi2tiFKKJYC_6pqgHc>DPdc6hX9@l~e2KMbSDOJVcxBzvT+phQ! zPZ~3b3>sqVn8NG@4C8*{+@uIA6uc|tp2xCEx!r++lG+nK!jPL&c;=hU@$${vNG^J-bA6C%U;kX7UfYgp)lG# z#|Nqlt3E^*B1gLYj7DMerkAoU7`x*+xGh2W={ze^HMI-*_gkblkpuqs8cJ0;8W8~zO`ol3*ooP*+6Td~!%-s+@RPCpjA~0n2u-8MY zvMZNjJzb#$=wz&Y7qr}j_I%931cFdP@sEb6HUfhm4Gq!mf^fdFgc;BS0uOTmDeGh` zNT+Id4%Hd~QQ4{NrlM)z9PwjI0Bt~$zf5F;OpNlfQ>lf`J^C%$Ta&<`wA1yDv@sVX z!%qDn?@l!seHEJpDz?*TYpZZwyFYd|QdErSg0x<6V{->1xyNxutiO>zw8B*`GtzKP z$40?F)j^}8oR6euLTRS+Js9&c(Ju53Zzaab6cJRS5R&+F zxfO;D*Ip_B1Icm1bY6%sFvvkq)#_AfAFgTZ+kPt)A)caO zrS%+Lk6g%DAVM#FV_&W4C|JNHjgBzYCaNEdbb7R(bmB?heb5IM0zyYh=M*=rT??wm z$TOqSagC`F+T*gK5*rYHog)p3gI3WpWYh*W7$iD7s^*a&hmk#YZDY(~O;TyQ?e<FOVzGg6h#X&L#kp<|7f1#CEk2iBG+mv5T1MQ3}z@; zGL+zt_O$^Pmwpa!n}JGOSx`G2YYiw>XV_pk6_CaU=?3S7`lSoJI7LvJz}qVL_6P+q zpSj`w&QM4^gb`x}wi5)EUM^e_h2!vSJj3B5rj}bk*GPyQxybC9NeZlZG)374{)%Ea zrKDbYC^1*e`4opLq|qDUtw&x;sBzUknKHyRnbR{(tzD&Lm3QQF1uSO=>^QUm2BM+N z0igV;YS+>Mp464HE@rlXnXwW!Rz}$q#*NdapiPCTu7Xq1P}q3toC@_au>Vk345I}5 z6gn-B`PDT4qZ=RDjxYi3g63CKco155H(SwKrY4LQBv4r@bZ2I0;Dp1XRFq5;`X3iX z_2s!N-?g&QSY1eul>1UGN4 z1+`zZDUFDQqOzinbxF{gA5kJ>#N}Xq>nLqvWcOqGu7CUb$1e|MfA@Lr_0#+J&)n;` z-@O0k+mDl{@)y4UUH+FpJ(BUi|I7W}uOPaWA615S~~G(L$=16<0ym4_Vd<@xah}pC?ez9F_PD0TIMlg{bO2zTIaQct08ob1Zbong|iRL?97@fz1E zRk)2J$erbK(_KhKs8`W++>FM}t`N7UyFRl`!anKnjItre?I~PU`mBwy44t1!wasa6 zP~_iC*q9M+V0-5LJo=+B#8aAw-Lw@>?fnDcG|Vm3mMffDKRUx zB07i6%CT0wvKXaCic720k;1McN58xNWK?IT*_HlcN2?s4fj6JLm z&2E<#7QQ+ag22LsIG5{DsY=OGaS$^}(^NVs_9R%z`>X4O(U#Cu>-tVFjHeB%2$Eq< zUlx~b%&XJLrs_Ct#nOw|EpswkMu8ePrji{!M-^8=z!fXhU9Z0hir!QDYXem9ADO9+ zX+MN%ruC068$5-8+9xl%-J#)_c7_TST^QceFR> zH7WUUdnxH0rlAz+RaF5azGiqb#we7xjz7C5RYXM`1D3owl5bp$C*_i%Xs&et<3V~F zQIUz@Ep#_<7#;dxT0e`EHzUO65d>Gh!c9a`Um<(s9Q40kP_3nTO`2zlJZD=jUOalG z$onwM?0_ksBDkw0#MV=#nFihPeVNy!)HIX6%NAHvh%~aKS888knKSOwBXZbnKbXBE zOAb0nhd^)+li=ysY1yYx^Njf=b0w{+;lI9rWF*ynV&))H+2 zMgSPwGthJta+y+Pb~RxGFG%QAIm0ecbh)oX$+hltfc{3aBGES1i7-RYLMbqu`oK{Y ziA7PaxfLUiw}ufnq02=TJ8)iVQ`%NbVKVKj>5Q`oz1%>5=YHv`fXG&SMIr2BTzNjm!t;zR*JVf_vFfO7=B=Wmtkvy%lC#Crh&mZZ%L9}KOQQ&qqM2I5|G-pQy)SeA~=D$=-*TV$&W zgNR2jw;qPswkhzvEl&pulL+`jI@O=~A(^&N#TQMbw4{T<(2BPoLxx3#Q2Q)Xf;!ob zjmAj+p@kGxxAVHR+XB@E4T-Q&!_g-~-Pyj$lpGeN(VNkERn|k5_`(HKo;oFr>zv(D zVoX*@T~Z`ao!Ho)bk{1gu)qm&g30g-P-9fOnl|T^_Q9>hv?6$;eXH0_kCOrVqS_(H zIbFQwtde%jdBEddu7-BPaY44A+P#qAK3+;CZ7P-EdbnOS;G--|X_Un`cUV36GG0n0 zn9LD*Dc^Cv**g~F$~O>_Al1WyVmO`=w~pUd+mH*tfw9<7Xd_+vk(KzZY@;7&`_$g# zs)E^F9<|Yyp}}xgW#m2SC|lu2oa!ctUT8!xbHI|Q0@ZzE#B`ma$yzHTP+wL7Y~-`f zRkd+N4g}@fjE(|=%rNoktPR07pHQz-`nmLpjLJbR9?Lz1;2eXgN}xT%D9v;v?KFL) z)*o&TpB>mT)lltafR;2>&NV40oLiad`U1riqbg{(ORhugw7nU)7;Q*=GZI` z1~Kxu6sC+-N3yjR54QCaklYto`jXLhj}L|2>)54glTR%Bjav*&I(bkqNy|8 z$(Oi~bgSmw_j^K9L39ORThNKlcD=ADhkCFVWemoT^zgN7ZsG?deZmn4GE-fQb3IfJ z*nH@%MOfmFKJO;*x@vpULeE@hA)oMavpH1BTHAMA^p<-sg6bH-UNqm<0w;l~WTOOs zz9#*I$+e^6Euf+(gK(^By^f60<}Zc`Xi~vuiQBR1XfMbeI)N}sAsr|*92cQ9I36}v z>`-Z8oGG?xL|JI?=`AWph`Ra4IFHmkm;&+0c=DrgU>=Vv!@L6O1WkgFaW= za}|0{!V1*5D?Uo%<1{aw65)bP`%q^qZ5Z0a*^JCGH*WNVrVBslu|k4&CK#9Cd``m3 zbXHVwQ8}(GXs4QZf1J+s?bBvKI98aUm83Ows=%_tb|sw(n*I%-Cad|-@&MNl(RiYrVANqzO?+g#^&!MnMjk= zq3=8;`}8+@&4jg#5KZV7nHVMpgssyKU0dI?GjOG%Ru!>Bywvj?nfj}bX=!hLN2Nrs zy+_gwNLXdF-hur*<@f&M_eUw;eD&oo|NcIY{?_*S^zq}j&y*iZ;_ttE|L*61?%!?y z{QbZE^Y4E9t9SqO>wo?AuYUcx`2)ZCJ&YAd&3%3U@%`-m=#PH*^zjiT`S9U~SMNt? z`{VaN5gS+FegyR%6-QM!3T*IK&Vl4Kz;$G;`<;|C_oT&g4&AfRO~uH@(>$QQ)xq4` z*)h$tVSQx8A$#^}kv7&EDp=}>p3}v~xXEz56pVBNxYTH>S$yp7Kza2I$-Yz^PpBVm z#pQtMKg3MyZ2xY8X;T!gqvFVvkZ@1L)Y#8U&X=6tF@+K;BcRQ^Y;17AMow?MR2(rt zL{3lO=Zv7>uplO_8fj3V;fvm^>C65Z$o2=w_LqqbQxo?~OYcz-*Ut3qF|naySBd-P zV$;rN?r&F$C}`=O(<3Z%Mve(&A1%F?ggEq3y76&-AbHm=GIg0T#@3sQ`C2_`HnODl1Wq9{t<>cum=7Lc}hvv_0I* z^sk{nRszyvQxTr(7yp_u?aLEBP}Badfl&U8u)=M(&fA-A9NBnM`_Yc1_jHT4h;MDw+2t zE)a3fJ}36sdsku2(1=M&`vzSqAtCH7oE1buKJPjiXlsMTCu9Z}Yr{7#W>qE+ADh~S zejco($|!M~0n~UL3EME(%E%q#i$1$$;`#Yo(_O0?s_DW}C8p)eQAd+it2>*s_@XDa zuJesclWW2WyGz@Nlg%oybSVeG79vy{BRoMmDN-pf_&~lS5$$ z2LB2m6VvU1OcC4L>(vh1&JfobP5Yr*2xER?I0|>_Bq-`svVyjD_=f>sa>tl;W9F|i z%z%}i!$Deke9dmENr_=i!)|s)LT*Fp52j-|ka<$Yg5|SA z6;f;67rGjpnknO3ys(fKw1d{9XMHmDrYC8KF4xwzn44jP5;n51ZLY=amDnN8X(?<2^R4Jr}ZA650yH9UkW zf`sno={02YltD+kw56cp5NRGvQy}WWJL|iC2NF-((8m=##@%gQ#q|Z zGv~yMA4**UQONcPlU_6Qk6~#PheAYF`ZwC_2HTsq1f<0J1cWabfoS6nLmR^!$1t>^ z$KZtWyaQStfNTzumDmHdwl4b|+boAXmm>+Pn=oH9S91CVtBi2OP(I3rP#xXCdmr)heJI6E#dE0slWN7g!x^8*3xm#tE z%!37y2Gt$=u(0h6$Ob0yQMUtf$oK(s-4R`c@8{0fI^FXC>597?yjE*W35FTF}Rf4)P4^)~b!Ajk5=ACcNyzR*y z{RJw$mVNJcM|JDU$$7Io1^ompy{a~(9-R+`@_pSG+`c&7M-D=pEQOLnBmO&z2ICcZ zb6lndDixBNckR$#QPvjbQyK|q<+dkI-VH>V#W{8PmC5O?O%K65PAg%^_%TbdD}hr8 zz)T!EK3x?j^KZwJhPp={YI$1Q2Eya+&T39(GKGFw6St|2SIioYHgEt@G*ryM(PlZW zgQICkz{by@(8@E1BYcE8VS%)GOnH(5kisiRlH0{;d4c|Z1vi-r=Mm)(Bo>&N<3Zd7&K>;2%0Jr-pvIU(P!&R_Z@mv8+ z4k_)p(_`{K*5 zbX&i9`|-`IufOg;+HHON@zbYwZ@-*4p_|k3Z9SG_LGEfrd>n_xdv>9&_gA$JD`Nej z61qc+J=|2hhvu`wgR^5uB^)u@Tyhy!H|Noru&%Kku`G?@oON_t4MQq9`x~Q%Rt838 zT4Y7?`3a*kCc6!#aeF&0_R(!U83k5=uGtEcT?M0sg-+XNrSW*rSH~x(#d%wIgF-;S zngFG7X0({h6|!u5QwFaNpAZnu1EZR|+sfG8VYX}PcenLf@>#i-C2-6T@#v7Q3HS4L z%vYCoDg)#rSXiwPJ|Kq za9TW5wk5k^=53xqD&Autqv=8inmW1&CpaJzK@y<4?gw)Nx+aC;p;Wa}lit14;Sa7@ zxh0Gd4EB1}q>XdWR7-<8kWkC|?Aoop(GQ@37tGXxn7k6AjRrbLx>BkqY+cJtJ0TXa z5`qyz9X1au?+0YqlIc7mWzU{ia8OhhV)Q+)*|7&k;a!w zq~30+XFZyBJ1(L+sM}*=h{(@c=A8;H)PY#1OG`ySp=Ac3HkVcf+s00zg{s8iVh>Gm zl=71nszTST^sK5_yXqbwn9Xr)PgvDFVO1sSMzo)rBr z?Ua7)aZXv#A`^t`!Q3RqMx4k|Pd4porxfWJ)GiweJgEIFR&Xe-2C8}5 zkp>N*)cH!S554(quEEXC4f8$hak@j9*heK)!-R>jp_vpKusXIKHx@1N0xYiEs6NO1 z3t*8tRJFVylRNqt;)e)oCdDs72uqKdyrW`z7}dhz=VWlTh`+~vPfd^Wef%&jf959T z$GmGLK4zwYt6i7minbesM|YXgLd}oUeF2e23$^KnjUH;bP&r0>M@)5IYCUdU;a9`Xw zqQz%rw<^G`9)qX5bs)zOeHQQ{7%{H`O^z|!u0O2wQ0eOrAgj_%`!GcyufUtKyF%|) z&dvyo5`9>(qVIT98&2|-l{U|y8kZBODpX`%r+lo?fEsO9LlW3%c zm%wupM0;+5u0CA1W{>hQ#1ySmN7HVZwb`&>tyKDEbU?$ACt+t@AjosCH`lFt=3-at z0G^0Tg!l|R4H@IsX|D8R7G&?wzY%J_+n?J5cp@ATkasydbknP%pb=nqPUI!;q zt0Az~6l_k1&i}6cPPoSoc-hO|_F>1V8#{+{f;u78xm^l7$ij3yqT6ynvp_jtISBm# zttSWFn^Ckw&j~Vc6&l)0+L?RqF{fd^yFGK>jIj;;Xl0i@^`~W=1I%v8pUL$~=^%jX}w?rT~;=Fk87{V#v~;m05U z^5<87{PDZL{9ga22m1caxBvCq_XCi=`S$g@Ps96WyxWaPKfL?&@r%}Hvf9_3O|6Q( z)d9s)7Z$Nd0wa##Dr%!Cy>MEzy$B*qnZtf<=^TM0LPe?L^sUFHdUS}DYu`ONEgr(K z!)Z~mQ{NTVc;U1-jJ~~_J(D1&?irWPrx9rt@xy6x&#l;s)8bUFR{y@!qNfQvj{E!V zw1~gM6JXu{QRr^OBYnT0pC-7|>#uv*kU>WIlsiiIga zTs_85WMlI%Tf9d<{>E%kk55q`Umio-ZYIodgSLt4{tktoV+81)4&E?{%TRfuccIU6 zJj@n3$KT32QN(Q~UYt_hk4k~+P<*t-q457g=*K)cEv||EJu-TOw`zPJ)9PE zV|F+-1PKpHkD>NBEJud-_pn;*Q^hvrZ-$^ZtU9tm@NHNvR#?GVWiD2Wl-owwKVmFA z%y?B3_b01Gch5gVQ)GZrPg&_O$2i75+>_NJ29gsnV7rFSePTY-92hy#dP9qtOHxfc z_<$62r@>?~W3rffhBIeCGD55lHF{hY9|j}}$}MXp!Lt=mS3cpM;Cm8vQ-xtC4u?3X z@n&6Cqf+cpVyACYm(^kXDERsCS)@2PPBUB<$6(upd*j1pu@09-RYQKbEGp3)Zm*|T z?&rhSrxX5-_8x<7Q|?-!ZQ3B8%B~5#-)=zqadZIAb zT3BaPW|&|=HJ!sfq4y@BpgVP9?RD-iJQi6am<-T#p<`IkGDeE26uq3&Y+JO#67$xa z@aQ99vpBdraIKYWjY>`%m5)mv7K`hRV~cRJ)(_q-0`r{=YcpA~+HH6&1`3@aS*1%W z>kE%X%nDRSW?{T3K(}mk?&mzLDf@7ebb)hW6bDp>dB%l0BRzED1C)-$`%fq~DwHyj zQ6f^^{oZ1#S5au<445nFKrjw6T&pp ztdDz>Mf=^_w6|q<30@&`ezslo{$i$GQP=cSMayn-R{#_`QuQA)sX2B}FEX?|T%;6* zu&sR9E*=SWQ1k<+;Hyg8+jo%^H9xgChwUPB2LhSTwu_u^>Fy8i0m++Dfob?IY7Gcw z4((bP>Bx7zuwA5O<6GI&5x=xuoF2Z5%Ze}0-*;RzUpOw-F;;Y~ zxL{HAAP%X7yVBA$568vCWMKiBmIZ^#1INXNkc)nLd;&9sC58A71bPQRIa=bdHJyGU z!Eu3{ns1bx4$n`;D15`?!*)@1wadXeCXP~mwp~O(qMcql#m5e{PuIBXzLKHQSMGz| zu78{_nWd_Zzj^WHKkjwDdHd$W3ufuxecj*fb^b5@m+$`gr|*CI^}qbTYI}Zq{q6fN zJnNFeQARq&%_%PsT=cy1ExV(HT(Cu=DZMaUyl+v34s&X;E8uYIo^JPUMMvgrb>Ed& zQ4Yt|wm{Mx9nIABCW|0t%LR$$-Aorl`+{UUvThI>tstyd1vo3#T&EqFG64JHMVqiO z|Gy2{opWOFk*213I253fYqn!&xOnt5D^iRdfmJwQY4u0A2ol0ecw8NMUaQx`zJ2Tz zYL*4fT|HHMV@lhe&)v;Kb_dD1DRBy^vJJ7EhH(T3@20fR!r|I#V9J@6rnV~~#$iT` zKS7TJp$y4L;@;+?plrofdJ|w}&dePFBRk;+cT%I{A1KI`roo=;&+gre0Og!v{&vWX z+CkbF$qatlS(OjCG(+3Qcoptg4n!RO60I~p?B~e{t`yXR&*4UI&<@E9E)9Zl$@!t{ai&J z9`XQfS7ib+@-^Q@p}@$jv}bM9@48S398}^?$psFKf}YBut2qLwB%nZ54wWL@Jq41i zG_6?QwBUqQFjMIig|q{g7N>`97OfefTXZw>n3~6JI|`g35pXK+san+%>+^~*(lArW ziSoH6W!RwFqn;e(B}f@bK@)0HtRd8p>xCeIe%&B~bLyBm7*UdM^~h$Bm1Z<_Rpk^0 zw1khLo@WTRl{$bKWyQ$4C+P47vH(Jfuv!hKbNB)%1$uOTR2yQ?K`$V$o>SJk-3)QW zQ$ik6T!KW}QT!1N(Y*P5Le7nPR{~bs&IAw@N(=Kos5G8)K19IaztgMc6hjwiauK9v z1l3%O7#I|o7KS|0PNln^Su;?cwlWDgq#esPro{ybg*F-b4yP%XQhGqzVpFMC8E=ew zi&C<_f9+>ICIt)SE05ea2lfV;NynYi9ag=gz?0SlALoJ<1ftYq>bt_;p+%zmGbiZ1 z#*d@l1`l{yW9u2&8g!JB!M#(DO_hV9b6NxF=#PcEu2T2>Ur7L!A+@cN^p4 zq_x6ekM1*7tRkkx(^vpdh?H8;>?xqm=L&6z*umMHU57F9!-=XkT~z*xiuad7bjoc) zi9eNiFp{UQy^CwGdSo8Thze9)hkmi(c{t)ZJh2>-5wy$;CkzFgsd8=Zfo!){=vXjN zHjXq74)#mZK!`hE4EUVy1)}IKXF>|L^Us%Lxl}!5mxzx6L)sIMx zJ9lE8?)K5ez;s&+#|VFLOo86ns)|;LsF*7vO}n9TaOoEsalykXL`0u zvce#fps-4a!I_^N2-f*dU3DM@$Gie^j;!HM=RshE)JT&^@yHgS#h9iVCk$b9YB9MT z=ZYLO>uZ4Hjy~FZ3jVvO7DiOa-)o-OrVXkk=g(42~4c>hwS=n|$+E zw)5gHd~_{C~BY81PKm$xJ=m(Il=OY-4z@18m zC1X)vJi2>KyCK(^7=5MMbPiS~?r>JSbeTAJD3vtwA)}G%W`G;MNXRG9jEh1c=bGeSom zzKBJJtqMT4lPtXXNitj*0;Z zo6gv$NmG77*$p4wy?ycJS17yRet7rotFOQAYklhfFW9;tKfU?%5~K*|G1ki*zQGc9 zS0+@o9?a13yw!@%GzORy)%-cMGGalhe6oIUvJO2on$!n+#S7LKaWtv3RTT;nF{4Rc z6*PtI$3R*P(@VJ`1#$ExQ7c+zzYG2yt6euvOpC4VYB5nzur(5FxCtgNP3m?VV~>JD z&-%L6inOvBNkcq#L&cF=Q2=Dm0Z~fkrD;;v{Af}ycavHWd+Gkd@(hiPVhbZ_brckL zk2)T8Qbn;Qw6n67{9Y~t!2+N7glh72z3ftN!CTOx!8 zl?;(F*b=%|Er#|eFTxl&)4gMQ`?wgpk3b9Ij5N3tdcH$&M5qMX8HW*`;RdKx@!>@j zRf#!0Je*V&d}E#zgcU0o0ZALGJsg1u$@r|*LcxhT5NBm1E>5?d-NvYkkcypl22`GT z6Nn$WL0XK%Epegez0n)iGHWwpRij1SnCuACp&~aNEI^Ke#$cVEZyGF$a^)-9;Lp_^ z!pcSX!xi1!n?+H}q`-;XKpm@Yxrz-Jhj__PCUA=6UcPKq)C{HjjLKvX%zLOIUr)fSa88OTWkH;I{d;7B@_s# zn7sstzI+vEI2SEI+ZIm5ic){z%|!ju4It`ofSdaR>Qmfz2}-d*N}OToJO{ zJp^C@9mC;s)Y>s*s}0mzF)L6>R$ww%)^72qJyq7V9;1*ab@9bO1F1IQQ{1*-qt-fW zg5!5p1p7Lb{mO?@XYj{?@z3gz#sp#}v=0tsdxXFR+i4;MyFv0}&hNN3PE>{rk&>%Z zz0|h@F$BehYpD+!FqTBHC$TxweP4D#Ky8EICfvM{qIc{d+XHat79#39VzNz$u|A~e zA38+ZUg1=P!n|87$_gUcNgjucp@4g`6jTLiIU=pk>6RE46TUwuMftw)b0#HRZtOq`MZORG6mk}FEB zIB<@ZxT~vzxYqQpH74}Fa5l#2Q&#Pym9vrrw47>Wvh&svLqZDW2ppq->>C}91BUq8$r_hjC@`0{t3w66dA1HZoe_~zrcZ${@EnfXs2pB%CO z(d+)FBWF7%o4@>k3g>r%xZl0v-wy{)V5@%3+xMdfZu_T45B%G=Z$EwdqPM2N7u%3Z z>R1?Vx7s{C;LRRFsWr^zR+}#&K`o;%?N7zjI2DAbkpsjkDUJhs&u9`ORB;%NwZY>J zyXt#0FsdM)N+)H4Ntrt0mnn?mTeVko`>qI=q9$Gq?i=dj`rcf#o?OPX&Y#b>ek zeoJbqo<=b1c3aRQ!E3~CmvBsm*PZMV=Sb7LF3)1~en@R8BOsQ$jmC8uLmDu7SF5NT zwS@bq$f+wK3tdwggVL%~n|aon&j#^wYFQ?EY38o_L^(o+`s|bh^KBU-wa|IP=!poU zGLNK`%*a{P1)hV=%Vcdj0ks{eS>-U#W#3*&9eH04#F#r!W@_uIpVvKKSEI+G>pMuv z0!^zbuD&X_2*N%5G&3GTg62Ig39b3=Ffijd8ZQc^62CJ$i(-NW!*2ORY!QwM#4QxI zw(AhaO9oAA5P;tLGuPrwWmf^e?Z>rtuLw3P9~w(VYx}G~uBC&ugS)jcacdleUsaN= zZ?|T`ww-OLY|;ibFI(h06$g}rlNR}f7@Dqn=badiRu&#In>ef}{5ed|5RTKEKKkUX z-ar;l4y%$hqKQfS1lciMkRCX8%0oa+NOs$hAWsMnFLn<5I_>#3Bqyi~tlmws!?MZJZ zxGDg@CaOdeyjBic0g7STjT=oSp%s#dP`2JEoirbnCl;^0Z&b`N>msxiIu7pHt-6tu zA`|B8+KzkW5kGdqd?m!2zI-C=_XiqICF!|M#Z%0+VwB^u1U$2MjFnaRHkK! z@PrzNIt6{vgGqb6p+%ID?@i=XRh^2O2x&xH4&02ikWl+kBF!eZp=F7nYD}E4&+r|T zfVW9ufIn5CtZyjza>SwC$Uco)jTld~gHB&nncEa{5RO*(Mlx*@eh3I_WxFnyYc~6e z^+y_2R@^E3d1Q+HRAY*4hj+;%cD8XcfvGf*a2z`+Pa@h~upPo=8GZQXIgjDIqoQ|; z<_uE9D*BP=vQ*F!a0u%*XmKqY@`d3T%ACZZ&<>8I_03B~<8Gh|EEDzuecqk+)UGw) zaNfSct*2EV0`3oy%491(mloy~Je;8U*q2T%3A24HU*V-g=L6j20TKrrsX%ltaIL z+A{*~8?}d5Ks_vhOdvDoh_v#Ct6l$cR;=#&VZz!}#&V+*uiXQOCF{eZoS7GT_3ese zTtQ`p=mTw$dHAH_IoBtjXXeFbOp5w(tG5??DThMkVD0L{(h#T&7_zXD{c<3^HR2eE0o8jvwB?d-LgTcwV1gKiCtm-@pF$Wy908yFbU6se-6QhrA1-)U_#K zptX3n=g<^C7~0$h3ljpEvg;ZzRJgX)A5;mtpStTIF?}gm7?Nt>Y>${!NM$N;B?y%k zeGLrQI=$AZPDhY5DyUi@feJbWTC6P00P3@fqV4dT<2d2aB?-T6^K>;uRF!3`w^u;~ zeTl+UPMAh(TRYUfV6yzT7T&)2@+(Z1*Ka<2diC|!{l_)ZUcdhK+b`)WjTx8}9!62i z?R9UEjE=YB8KaN}?c|i0!4sVK>zb}Q*_z$59-LLKUJ*fis-4zEjG}5f(Ao=w1Px=Q z)!XItmcv(RSV-*#7vd)9X3?J6cO~J2u7hx&*2NlWGma@dj!Ge{a8A-DGeb!0g9SZj zg}bAmI64?B?QSp&gL?A+cI+G6%s7mqI3cOea`^b4Foj1sZkH#`Gq~Be9R7g}JJV+s z!b;PhP8Vi=49L0{*qu2vj3gO*P(ePYBMRMa*FzD1A3pc3GH3iSIidn6bHj>LkB#V$-We7qW8vKp-E-(1?X1Lf(6z}^ z#P^~wRjyDj;I+b!6g1y<9H8q(`qyEKs1G?8X2V$4wcW+3;Wtpxj)*uwWsL5}`N%dG-Pb(qdiMiX?h`22^7I&90b{j>4+RHz z!BwVlZA}@@jmT4N3{hQ4uv`~(0Mjs@BdiIwO+)kEuF$s5b=Zzahgxseo*RwjjZ?Gb z5K3h_j}z=}RY0A>NRw8FU4&3ne#7gS_rVD`GdjpMMvMT2<#auVJ`iVU^s*~vY!( zR4&Mj0r6s2+G0xa9YLtN3WiPD@42j7xMlB^_*C|(#Lp^()`*nJo?w*^R4$mDj*Le4 z@O)V&%vSJtG<|r5Hw*h+3%6p1p-+Yr(~{A>QGnMKsYF~m@y65&svihglQOVrY` z>x#foL4#^#lrJ32Rta))6g#NrSJ4u_+H~%!?hYi}s**Y<=t8m;T}|{2RYooFof*fZ zAt(SF1mTpX5ON(7*bDYeD$bNw^nv*KRcj5Wgv$u(sSLiy_E?@O5d=pN6L!l~4j3@1 zd$4(dZ<0aj+G#7(9bOL>A5*LmQ~;{xu9O9#A4lH`rzt~GUP~Kd7t&Eww;Q8K`h;45 z3rj@#+rJYz5khI8yfOv!B zxgC?|a2YjeWVn#bgDKa_8u4?g3Yd6^Dle$~F$ZFk>^c>Fn_*YcyHp(8IUO|c#^F33 zdml}1NK5WuD2fKD>KF*4Vh?zq$1&AC`NWSida03~BLy?HMWmMo`0_EDX44ST?-5U2h=D@<# zqlk!vBVMO|Z3NsPQb z4hZcMrlxk_&Ephi9)Df&I1RYRK*rW0smoeM`;SHwt{mI7B{N$gc!hlJB0+`eobiW7 zgOg5pHEs8b-RG)nT~WW~41|dTx=DjlS^S*Kz-#`S^iS^f<6pmPn0h@cynhm$8Vc{s zw|#qi)&HHJe|7x)({FzH{ttioJr+iPujl&HpMP&aYz_aSpa1n={`%|BKfU_?|M<%f zKMB1(kqAti=U1vPfAj9!*WbSSUvE;uHy{4%rw{+-cK-bI@#8l`_TA;>cd!3e_f{YL z;JiIhrJzTue6$|XD(g7b4zztG>0K~awKU?Iw-pjxGGalGUa@jJVHrB)Zu{)?{i9q_ zb&9{LJ7QarL(oIHhD|ibn6O^Frv$eM|3A&Yp`dpnzfhT=v1b%me#kFe5A_ADe>Bs{vi=IDE4zU+lAJxzNgP@XxeJ|r?Fo5Y8B^kL8WP{ z@FW=Un0~__a=QXX(Bshkm;ioyz4p5klwg+JGh*5s#}_eCeJr<*g5Uv4CbYW_MZA=l z88;D=&yeQ@&2qqtiHxI-R*BYqvlj$?#QD}+w2Ou;lNl4DUAPn{{WP2mtKGWfL!n$y z@kKk7Gkwb_DOw06GWGy}p$k{209I}}tBTc7pzuCns`kKCp`pEl8S*%;4@{1ksl|u7 z0q6Clw{#5(Q-6pXY!50hj>UyxlNy-OK#prJlT%2o59|1V(2mI$BhxkcP*&%Z3?Fnu z#nM3eY?&9hPT|pMyVVVlT_BF}0aai8KeY`q^zL|QaSn9@j(8g-N5dcrebu&xS%roW zrK?nO%Yg)-9?CF`w<~T37{)7_pT)0cy3+bkh#ejV3Q$9cYaBz4gL&ot##CLvK(jq7 z#6lUEJktHY<;so!TB;wj3wpr80L!`;n)Piv4g0F`Ex%V*Uk1 zl#X?hV$FsR1nRnm*8)J1U{-l`7JH(ALHU4Rym0lDv`2NjL*6TMYf)t&yl5`p3{Coq z&hxzIHC*nPUGqL;WLaHoQ&92Z%7wN_u4T4oT|EZzW+hb)?XCOFeKsxM5~Uf2NiDmd z>Uycz)yKec6iO`PILt*Nf?y$@AZ2g}g+nyF)nK`$+K2+dyxS4h$ao}bu$$MX$Z4Ds zte5WZjP|BSUs^zX4~H^no;U0>rqcTA!)9u<4}5L)%(sa_e3IOP;l|TYF4+UZ4?ZlDR?V`WifL`k zTPl@0$iL@xD0=MimOg;@OG$u1HYABFdjXzpQdD`=Lk{)P0xlk!0x znp+*^gQi82g~e#*1YnTO%dB8FesxH{awngg zsLF!E3o3Kn&^{RF7kyUU_AGtCAj719majsQa%&$rjD9RM0i*B>(SDw&=OM>G{ zW&1^?3_^-_voFr$!}{Uvi!Z-&9{=Ifb7S=%z3$a-zyI~S-v|@_{2lg~PpI&2vmU?s z_4{A`^utfz{rE7x{LSxw{^?i!dtk}W#M6Jznf;shZ{B_S<|Rnv)Eo7Elidu79sPg< zNs&YhQ!%Z(bZe}}!OVo}gyBnys<`L1wwKPK@2^iUzWkbV=<844zWVy>{?OnP|9m!nNVs?Wh{21!<{zl6ELBXv<&anfP zcgo`8@Ib^!Y^Fu3tKYF880TAx{wjq>i*zkdhM}|^_46F`S388t>_bdf#djM+eU+iU zoLVu1HZSz2s8=Yvv9fO3&`*w`kC7nM0~j<&YoQ^NXp$=7(obiqk89yLcIXAdLsk{1 z$^)agf@_T~!YF1L4;!rYGvzVWx8E`meK>?pD+EJ95bk(c6^)i-E%;Fg$`eb`7Qi;N z82uD>39Eqfn86YxUoaiAfT?+8d^`NticoOX)47ytB2AUP(}&C(TJ#UPt`eyr-C9qk zxahGYK_L!Wom&!)#3m{#tHORk)So+U+pEGteOy`Ve-)v?*n)qxf`&DtJwp9({u-Rc7RwwBD8 z$Bis451u)M>4r!s|4E7hhn~FSo{oo|h_N{9RPI zoa=Eh?}1B9aCV&{_oUzShaLKEc=ALmEpm~*fPkuxC>8W{8-=)<{k2V{2ovGhU{$%* zdalmr?Ns4mZ9G*M>cV}`O=!$G3kRegJ1X2=DQbdu2F5F}uwGap3si@uCao-RO(bb*+B(PXcL* zJ$mSUIFp2CqLWnd{P{~+_`GmqsYYYr-v$j?pTJ!?aeI4AAO~D-JLZ(S4WPUH`+WP(3 zIK0C2pynmunMU(pi8Em>qGX_oO_^0UK!pjTHrS5h^J|uecN$ForP@xEqt&IbtqrY2 zNI7R_Q)wXy6{w`mQ`u1r_U1U5ir1n|_<$v9q(bkNSyu;7eOM->l^fO>=Ijjk4#ThH zIQ{G9x$5X_$YH?=Aq|H%1QD6x3&;;cnAwC$R9QEguf5S)+sbMXs2=4SV!yMn`7OD2 z1jK;#aNHTkAIC{+fVsOF;AGM6>o{8shmEitEM>|L?Zew%R3D?5f@qaK-K5m4cT}p! zUlaxC6D23z%d@Sa;-oaljn_Ksei#m{6!(P|m};I(7Mv*Csr2rcj@He=TJ~I+5At=z zZ`Cl~f&{A_OPT+*g+_i5iZI)zs;M%1$wl;SsBlEV3S8|Lc!!cWo%)u&CVm$tYtACq6YR7zd@#XK*rM2_G)vw=w`uOSXz}4?w zzyA2~(-U{#AHD8X{a*FNAHMtLudn{3D&(Jk{_%%D|4E?v=TU`x|LYIGfA#%O|JPst zG_Z2|t5EV^e*BK|;*Y=l@aOOE(&F96x35QOvCsd#ynXvSl|XO4`J${~r1fOb6j5ge zX-L2f>S6K>QHKMRPQX#1HjgKLYwJyvAZB4ikP#QGMLHhIt8d4!k#3wwx`M{*qU5BK zyuv-?37@DtWZWSNqDb2q2h$=RDh((F0o)f7i%{T_PvOH7y<4?WN^z50W-C0m^dS*^{cPH?o~rmA-oEzEpH~cu;jnx2@Ab{ zsh{8h8pvg*5lsb~8%k?!(-vA)_#gJJkM!s;!?TM%nChc5?-PP(6i5ZvJbMf2`5~ld z3v7SYKN>j<%T^SaQ#5fow`V4VDZy`ND zL{A`*!K-`{(o-~p{;gj)nWhA`T&SL42BOH6vxCqtfTj0Kyk3YJ*gyD zVO|fznY)dAP`>o28Cp^%5{7_lyXdca)X3kBwtj7R+Y2`6!DFNm%P}$b9uZlpG392r zhewHCQm{ojW2HG&=w(8ur^%Ow?f_L==+~yfychk zI~B;QszEH}Q0j+gQwCHCWE%aNNn>$c| z#;&pFyZTWU-uvwcO^`=Q5bu`da(GQGg9$LIA403^Lj2o0DGZd56s7$=mhu_@Q zXMJ0{LuJtEU2~`xuloIyD$_G647hV&=?WR2(ik-{@D7}y>5O4h*MiZyWXhDYq`+KO z63X*RaD5m-V^*z;xSCgHFkZ3IAMLuQ!~J;FJecGb|I1U>vW6K0gYfs7UV`KF}Cf--QrD2)!}jr~1ZY z@kAXop%kt1xU7r5At;dC$+#MWDWeY3HWMH(JTqfe~yyR;Ry6gHCHBEu-Ay9jq28;BL3p6+ewmJ^ybo~-^w|%HZ zo1lXDpo6w4-Ed5!4Xo02SD`g)Gj577n_G!fP4`f%UF&~Q5kj;>4xge9$;oSSM`Spf zS=YYI3!~1PE_skntQPj!9f~_^6V7*5|Alq>?YkFM=0b-YP3;RF5p$Zi3p6JTb{o#- zS^=ic7D*eNY|>DRN zh8>F#`j~apC-&p4g;Oy-6Xz?_T2aWhMcoB&XWebx&EZYhN4sfNS)&CxBN(ZwXN9tE zv8uFdXDEBoAFq$omML$jxga#XLlZOf64&7ued)0u!QaxGaMo3jl~GxSMIm1W2A-a7 zwc4?I=ZM x65Lwl1td=E&_JhpN=s=LNe3{XA3OXPA`UFzrEU03g8wt;;eHn{uf_ z54er8M_V8u6tdC&&|_9;n`niQkoDz@&VP9S&5JL;()s`9_3O8)kAKt(F zqNXWzMXw~Jqa{TemYoWMPE zS9yM!_u&ro;7xNVUr?g5WRYAMm^aS8UK|P_ zZvp15W`;`nA0ndW3qjZNu)Zp_(SpyQ7zNc!zwnrR57$EfcE6is^egldDRHIGt%z zYGa|tcT@utJ)@R<9JVAC;kiQ&S813gJH%EX9&zwOgO)Bj3Ju7nzkO7rGlTsxcHw*a9G@=%h z;PZ?viShX8{L|YT5`c`*F;O%OO_n}UNxp=)p2}4@1aiIZJ*1z4#2=Ut{Q(a9v?PR= zOqdkU`Hn+LTdA4pOv}%=A=>d-5|GE3nYk>6;T_aabhjfNkB2LtUSaD+Tg;`w7GBb* z!xBE@oJ!fW41#UJMuUwp#0z~NXc!mjAy#>fLCBst7^tWimJLN_Egz(&Sfm1y(=v>t zv92sgopq4@L5l&GlV#`!;7>dLf+db(buJ59v4#={%2`1>3(;2EhVgW3IC4XgQ%?XI zPtwyDLRJ-Zp*zAfevZ=y3qR?Hh>c1T>nu#A{EnowGLYUXof|eO9RW9COFeKj{%9pk z$^{+O4?X!=II%9{uOl?Z#sVk$+DiieF(}pN(xG2P)eYJ=%XC;0l2(Kk_Hyd^swO=_ znhFe+J1!Kftl+57v8#o60GVDD!anWjj_UrWHcaSYl(!N6mFcnm)5a2NKAjf8%5Pme ztN}eIA#k*rw6V1TRiG#rCD>Ti`*jH`9xu>w8Q6lRbs(0DLo`bU_kSh?B zkEQI^*U-CH^x7D`PzX>6L!lRIIHfy*!Hz7oaTAS_WlzKXgpTn#B-CLm>w>jEEqb)8 z%?v*%m>pR~+HzszCg_`$e(^5lxMx-HP@cq8(ld3+j3L;A5Nc@~@sEa*cf-Sdn`jzv z=XDEIbpZfj5QF!HA9fBwGQJM`o^j_p%X(!JCxdjyl!Y(LkhL-R8kL7vAnkL!0-?9S zgi3Z8J}Q~tXA8;zRuy;|r*x`_v<+2=4F77E&{|`2r)6-KI)Q1puUI4twmMWorl;ct zPLua_H$yS*g0jKkg7O4uN`WG&`pmAMbTn04V-^@DOQYAStXq@Qa&9J^sFPW&%_6&3 zf5qfh{hcBYNPzBuMsv{xS2fltiTt@B2W}7RtjgDdV*tV$x&dRdL=|V$XNQ-XnJD&| zF1Ud09DKLK;k3(hR+)hm6yQv9^rZc)_b4`Fycg|~17}RSPdn#%xcBJ-cI=vm3vILxmu{YP z*Iu2lCR%`7{nCSPX$XpMtU6T@1?pM7sZfJlUqd=CT+(!ri<`8+gcbxFk>VQX5?+-h z+R9ZR*yB66V#^GEU?gV1b1h{>bV%g}4i9QoIiXIt^>qw9>aliIdX!>1+KHr=1)>7e z-3pef@u#MBXF<4D*9JdcrP+fG-Uk&bG2+usBz4__ejWI@TYN^QL$_xyNelB(6>(F` zN=bSqw5xU%&d5h$e&!3I2vM07suMys%FjDzhU_F&E?O?iFv1Uz579zjM#Tm}h|I$d zNmX@3Jz>{Px2)q3+6lvw(42aBhi;~d)a};n9>bv+#5+V;kqtokPPjQIro^?{A-Nh5 zJ(eCz4=ZK}$mGLeZ_pvntcYxQAA>l`8Yh)$H(=+Qb_6GIn^rbPuDcqqnnt@_x0c=o z)`Hu-;adc3pE_#U$`N)!&zmVJ(Do|Ow{_~TZg{@eVg?S`I1JQ6wRCNkNn1YobnZt! zuF(NIF#9p16dQh73U(aOEXzRhB)`FKJ+$a1l!#i^=deO!`%rqfg0Qqsw}&aruvYMR z2%p$2D6!*$g!KUNZ+AF%R@~Ig^0Gs1U%z|t9LO zP~hG0SXKyP1b--T4@r_d*fR=IZr_wKIicqK6m!-?yAV6yG*J;9XewF&Iui=IKj+XS zS^78@3J-ve`W}7~X7r@H;Dw4iJEnE|iG5v#8mn!peTL{|+SYasC2n^GA>~2ZIkubL z-jC^twPPUV6)Z><80NT-xklJo{?IG0{krOrH$T`}WoVL^I$>Eh06KaSfu=MLMfiq(_S)!n=TK%+^5X_=78Wo`@XvcG6bmp-~ol(-Zn$kan(c}S8xTGI4ekR;J+ zu7SjJ7*)8bg(XBgT(I%N7?LCho;B%Qu}aE9kou8{xm=2tU=Z@fKR4E<2PYr{jWT(a z@k!YgC(w#JtX=dtvaWnnDXq+tPk}^z9IaDS0I#9U4Iih)GL-ZLhIXO67_v>XA%Wxc zT{)|+ZEfR(nlmU)f=8}i_Ce4oAV`5>Gdh+9AKZ1NT_iLr5Xtn4!knU+(w#n#w&9C; zZ2#tZ|KiK9%wvD}^x@5`ufOj9w|VSOpWc4yne=4AsY18L>pXD#UZR~DyF*@b-B#Um zh5tDv93LRjsFp28f$kD;M8ucbA3w~uv0Kyvi5>-IU(Rs3hRh`Ax^sZ)t&&q1q4vqs zC8?0y!f5mP7CTxBHMf0ThNsW0c&EZk#hgdf*FH(tFOy*ZydFk7VXOPX(S?$Wz}}jX zh-=xeJ=AW5hj83dS&q`A8-ASH?oPYjwO>$^F|Ih;|Leu)CcOTQ=Cr##HgAV@hMkxFV7Az!y#TJt+&H1{A%#2qDPfL*96 zdFp<+Ni}6qR+z6!iOnGUa+OQa0yCBB0(|d=W+YG^9lI@SSKfy+`pt~UFp{$RE2C8G zizD;X?`*mVB*BCN(D>2ILpm^YU7!g>eAhekz?(N0g1a?uXF$q6Cins>V>f(a1e+NN z3)bTs?R;Q5Vyg4*#)R}x0Iu4l&Dq}RexvV&En*#BcxX0+F(u2%OjHDO)8(0Y2zb;BzGuFu)*{hKd`^jl0c-;=W(L_gBmP;0@bpn4nw zv`8n(dL!ph#bjbQa1!;p;v~ zsAF793BaCFzpoZ}BZ5d5hiO$8<~zQs9I+k@@XUfL({ZP>z27>poUxjxev|6%qwhhu z-Pd_VSp5*XEF+zoqUeg{W$3`(>8ua4+zpAX!np$RUyJbOpiZ@2=pSts zl4ia9LuMl0XRM6rD-i9Rm}SS1Y{Ia!2g<+t(1n{fwG7wJ7 zPCIwcJY{oK&XMh=z0oiMWvbYy)9Ddhe~r>Ud- z4Ovs4+4h1p1DfwbJqdSc+DWu{(&z}lHJvl^m7}AS(JkgUXqmc&Qh+e*JgBMxvRbS& zM*!LdV>azpg&hZ~^Pn!9+=ixXQ(*W zMtxO(RfX6xB(*33g&oe|gm5}CIDK$RJ(5~Mbz(tckzcHL&~`0WpBcs?$CQG0T7-xf zaPn)$Nf~2n=jMDJZeWWFTdmcDc3eP~F+ii$4La!IQc#}o4k$4xAAZ4Mr_8g4b%<|E(sz#PJ69K$#WL8ZMe57 zBkoFr(X*PNg38~zT?kPqV^NiF6;#PF?fYEd2 zRJd0v8TgT#_PZHV=^cg_FXWL-FSV@*7`lymh`L|EJL4GM?u?59l<0YIN~lMADkkm< z`iR&r-OdcW;he888>0}TI~WQ^VTxUy z10v*9Q9eCQjd0}pEpasfftG_G3Rf0|D}tk92SUvjWoJ~b&?4aTGE=oEBEu#QFg!8e z%)$c>fh&%&uVEH^&tqwqpHmPd6EH`+f;P5Y`;g^^rHlcD(En^1UVU-S_+fkd;>)j1 z7`^%U>DAX?_n+mQ@!jhWUlw1ruC!wh6#qN)g4>eTv{`}aI#Gdk$g5v8t>Murg7^#m z`V?)+_#>kB&)kc{kkoSkuj*jf+rx@Y@fKt1?MaLYQICn~_co?h0)lnbUS%lb2z{f) zxn0{%sMRwbM7s5Q94gY4{M@t%h%q^YRJB0e4vbO+-qFZV^xoZ2n&=$Z4UssnT4lON zjkJJf3?FG)*nFeB^`10Rw(1At2q=10CUWzmX^|(Dk`VgsWmV%nmtgUpGy>%zLo+Ix zj56nw9MkApOzCFQ`7vq4DT1<;YTCYfZR7)?T5scd>`Jt)4k1;PH6x=&v<_7M+#pY3 z$X$6zBQjL9Rv6m0!Mp2p9pWv>r0;64akMchXKkA*X+ve@g#S*YMi)HDH;iJ|hA9XK zkjtsvFr&@H;EX<>HZ4sFVW=}Ahd5fLzzHlgpMl`dj@;X1uVv(1XVuW^aX`(Mntu(W0`b=3KMmJ@CU+5t5U2Pj`fMRC6`^L?}!2HvYfS$-$zIH8c>X8|{bz;UuzR}Sn{F1zc>Dg+nUe9WsT zsw#U6;x0h&vLnqvmzDY@)0eo;jhbS*#RfP@9LI_TGDx1 z&mfbT=w&f!WpCuC`%Air)vY@xz^vLvdn;eV{E0K`#9*QImqYzOYae+P+HUhI_8}K^ z&TiZ4fdkD7+M(ID*dcI5P=&(dHI*G8{%~ zp=hD)x|zD$NsDgpi^AIx%ewg03E9})Z-{UTdF`qj0+3da2?sCQ-74UmZudl1f=ag_ zW`xFxvOGS*9rlzX9+8i`0DM7{9?kAvRRKW9nCg(iWb#Oxe_Ih&H}+GT2l$z z7gR$J5-o$*Z2YV`>MTm1t>b2<5_Vac+%jN?bsobwM!y7m-H^>{edm{Gz15)+>}w2L z7Any%U5*2=S5L*o$&5)ytzkwtD{WW3fH@#^TU}0ID8`YjCn+Jxs|BR&0TFImmIK@5 z>MumrhhlX-9Ntmz0afqUI_C5^$Pun62x2KH+5>3oFwhfdH6>h;Q!7`>7|e{Qd*alq z8x|?pHZz=X;lFLG*WPrKz_Uw(G_UG#rk^}oQwmm!_ z6Jseu^n`$-rS8V;ns%KY+Q}(MVS%D=;CSYOvZl`h_s`%KfzCeolYm>4hEJ2zHjd}U z^v~)pzZeU-0Vdo$d~g}d=aj}=(`d}tZg_o`4G6j7lmW03&Mnt8fNn#M0^NZ&#G;SgzzCuvEu0GlG%A2ay)S|> z<|WMiAMO2%FTVnF-@bnP;nmk)_iux_%P&8>dY>zN@%`_9{Qb}W^7D@ZvH$YdKm79Z zAHV|OHBD82cLkJu%)WVd=NTCXM5ayub z4Qv~pjI0>=pPm_WI9X|1Z+%`^pG?u~d4meK3U^V!zI9U+)>ssMt}5Y zmw<=TD8DbKA;*BfYl)4)0WH?a*Cy=$1a8e^jJ{y+-SOBMyn{9TEnRL{1WZgU>Q*fH zScMtBTt5`#E8H>xd7m0Xbtg=%Z48Oj+Z$J~dY$emk>$9y66nw@>#9vsKzQ|sfR@mFvW6YvJ3_3A+a-%k7 zy_9jBvk{W!7WSuE`U%KOWsU&K3$#n`54}rsDp7eqCKQ+{HhSK*EyuoVolH#5IKhlP zaNePtw|3^}0lWQfZnm~Calf6=dS(>|zK=P2XnaDuG4HCJl}ImaytCaIr9?xT(c90X zBUNhz3n*y$<~mi6;Jwx!j5&yhdG*HzFLA*Xd<@Ui2@oXfXu!f$QNp(cU+$^VER7qJ z2nH~W1N}L}!qzQ86ujc#qa~y0num3OFs?szx!W}{JOYcScm-5I-)e?LsW#YoRIHRv zrIJuCJH|(_e-XY>B)k$zyn7hqBQ!d9B7x5#9#`pT%Xz&E@?NdN_{67aRZ>L#Oc@dr z&v;%|(8xEWg;sYmt+z5x*4;&AfOJ0%>0D6$rm21%3d7dSQ}Nni$>#mi!z&Ofwd@s7 z^wC!v(6GQ07{U!U2C&ceu74`>%zb*2DOEwB1Ta)m^;k;^dP2Kz>zv(w3J+nor~3U! z+rBb2jG^O%fdJ<(4FpG{5~)%OT}KTSS{;$ZwT#cYQ7BP<9Ou~EPHIwyTD7Y8V{NE} zIboM*x7`k|UKQ#PD(E45Tgn8?Wv9SI-aSB4?Y@pw%n%k%wl2Gn zSZZOSVa{v2g-mxGPE{2c1V($|TtBxp?TGUhD>E{$PR8@AyL~ox#ONIF)BQ)ApdM`Glc0eSTa0;bEab)P;tDeYjGeo zi!sq|nC((9_H_(7aF#S3m=5fb0V#{N|2{lb7Zk!37K1%& zo|x!zUNMmg|110T7Bt-+6ZHuR^K$NiIf`<5gsdQ{t;Cd?SAzlTfU*B$#X(a>^6O+8-c0M(e5rNLFZ!af`kIJF)8$H$=cl}EWY zp(&9|$s@#~yE?pts!`0ogvWDjoYt~QTE^ps#iD?xl22Rmpse#I3tla`CW9j|Zuiw3Y_v-7f`wvU+ zzkW|=`sJyii`zu%S4$Q|fNCF-VOjy;UgD8^j##<#0*PGjQP>A)dtK^C#&jn8y1sp zhR&Tb=C4X4ZZv$mUZxl>kO}u66%)Z5NGC#}ZH4BgZz?;kon9sCB9&=*)h+_a!XLUb zhi%SREsOh{f4YQ2+S$uGGf2Z!1yVyuvL+`82L4cG7A`8T+V!{ubt^?oJ@lw50_6@H ztQ^8otoFSw!?&R^8`w7r|HI1$LI8g0d7C?auuhAF+qtOX*cn?p58-LSr@1>-YUqGz zxzUKr^bk3WR=F(XJPwJcvc*%2*jvx_VY!R7J<0$=2bY75yp6OZY@*n&{5og-xItQL zI{UEL8qF%a#=1i|W*u_j%!-&J=p6*pfng~ltDuFbV$0iO!T{ED(1}4IS=Qhobe;E`DEb=8Jc zc=U=!6Po?~+2J*nje%&@?ZO!>?I9+nM?Gsv3*sL5*`u<5G7mjPdlYYTy3qM4r=@Xk zMv~^7VsILrf&ybM0NgmgxL!bR|`@lVpc9D7ho~% zkswYEp3u~M#uT1TCky)|$WUg@Rlu}roo*bKV}vz0&(W!8ddb486;O|p)-F6Lzdq}J?R!*Z5JqQJ!9ZaQJ+fsCiJ_ENCyq*lgEC{# zfYoDF(1H)XB@%rb8Y9|LRaxwSymU8!@zYr*I>6!FjazTg+2P&A$l8H-G}=%5GPmCL z|C_mYYxdkYu07xDQ}p9Z#Aw`ivL9ho0Vo$xuG=XbJSiADJQ5>l$wA4E(fRbVeue+u zy_+K2moqV8+7h?O-Z!8sb7khrwHVCyh^uQ4s%z-h8>9`^PN(b;Y_Z4{+rym=b?8Yr z_45k!gr!87yJ)z{Kpp`{(3L?&HE3pU%&eL=e0kc!$Co|h zzd&Yv^Y;JZkNr)X_&?DPe*gC4mzx^l+H?RE5Ogn7B&VsQQZ84icoD@L0u=3-(FSC5 zSkJI#J3Q38gez9I9R?WrX4RJ@+Azv13OBqsI;x>UB}9Krjrfs<>lE}@bX29-il6@@Ed7brhf|71grrGaNzvfQy;v#%J-e@We?SV6Rck4*9j5K z-LQV5^7lZKqRfSEpsi8q4i+wKaCe}4zvS6lj|4NUv#46VsZ3UtG%=As@M_tyl1{32 z*)fb!@3{Em6ar0(rcg)bo)vq0$6hx?W6KWIEIS;>hON{Fi&g(pg?l$B6YBVE&}XMO1mQ^g4M@n-~ymwAF-h-j~p z8!Qo;1nBER&l0K~MEl%{*fWZ{{Ww@m5xL8FZPOZ$g%<7DFnp}%q56aRgJYqXcPSKL>&DH zw!l?aSTRJhUa<9W zqU#|XrYp2=j}^ex-UG*VMwaWb&xDiga5gmFvokT+bW0=o@MshSbPc^C%av*UD2UjW zpL--@WkOL;7lfS&)qi+=&>6U`In(EnBjSvn6~O7?ZJ6?btwV~if|4MRu%Aw^?lWw< z&-lpT7#gV*kmc;^)5506Me0n8rJ19`Eq`(Gb-8`(26?e-xL4iJy+i*~z zExmztTCS6tzCUPk=utX7UIbGS?@(ZIHMaiJd^{-f1QeF3>|wVsWJQV39M&E>t2?4b zQNbH>p2zqIk(IdO!u^>qm$xYfj;-E;er>bGqv)UKczciQaP~DtH~4ZF7Cp}4l8*Oy zgIak#$n}^pna8Gt9#}qfRKwuQ`Stc5cPcHKs?D8xe%n#aXVI7aam>ddeBgL0)WWXB zw(hv0UwSDvPSGL>URYZhN`>fzU2beo%qm%6QA3-fWQ%<)OiV+AE(g4%d43(6K99-; z?jzE))ngYRlk&AWYw)b z7E9BQ9lfdxesL&<`b?`swg5p>eVo>PzG}-ShR+B^v_^-eE?yU5&5+TQg957$-fyl_ z%+U8h6e~IA%j_9ymc;a*F(~a*;NOd zU9a?3sqpi<*jqwxVhMXL9mxeNFqV4Tm!%DDn*sN3i6qk!y1FYvu%Cr+tLAYeaaI_YrEDDC8up{(a5L7pe6-%4# zl6G=I4bQW~v;! zzIIxg0_?e-7yP#U!Ea+ZraB}D?C?EA4rOUG8o88TTTw_o6kg3)gvDTa2bQE@&ngfe zsc#4FhD+IxT-UIb;VY<;L_o{3AqV{rgB_cYXH#LF>e{|^C!aD3m=%3%KP~-s7tFv0 zFf_t1$dUKhbBE&AZ;IR4i70bK;D?LYeLkikaJ}jk)4H|cG|19HakCGK+oo_(Zi<_S z;^y(Q81uM?v(A&mwaQpSrz5iw^>8Tf4~KF+C0(U(I(!L~sbRQH`@sY#^tmPd_MOFiIz$aEvd)%@ zMRkW&U@WX2gtxKSaa`=tfmaSUjCKU4JmXdYbW2^_)6v300~Z2%P_A5_m*hWwShjE9 zzxeRC|NT;ke)3%W=HthAV?g)j4KVfH(^ki?ecsn}B>wwffBe%QzkBtE@Bj7t@4kPw zSsb>C@7{j+@Xf2gd)4MQAKwgnMg601zxjBt%D;X4?LEGG`>nv}mx9PjWjc0f&bpL4 zCdgUnq#m~n@-aPDbQ|I{NW#sN>INkph3+9aaYX-MxUE>f#TIW#I3-wgs!5I5#3Yu| zLVa@5K8%~$p+8()L4Zz?Yee{gH(AZSF6TYw2P!G_j+o5H(YO-aG`?P+WsrCKLUH1; zqT6VC6@G(hIBBD=<^>#7g_;dJR9lNKECMnR-0F})Rs}m0C#DD9Y>(v)efgW;R#)Q> zVe^0@95Tp?Kgf8`Felr}*4j%MWXu6|a1{;}5>(Qftn}p5OD*K));4%0I`ZTZB0co)$1yh43t*ZT(pcnS~7{DZ%7xyYy|#u!!FZ>K{q}d=Ew#8|~xf z*j^OgT{ky&3%6FAi$yorFZ)^BhC4hY`<0=X)8lkSWk!v3&{Z7{j~L;*QuQ2ALf#Qf z+be#7H2)d~CZ3u&CUVVUo`EULCI#-AFweeZhwcOnUXK~qQVITh!60BrQ)(HbbF>{#TW(1(uXkd9*B zVjmtcC5_DmrThs8@D-C79p=70xo#6plEoCz%f;s)+g>!>3O z4y7et?n>7{rpgnm0O+wRl_)Rkzp(Wwc#R|yoW+u#|IBb84@%Xf8}lz zXN7hgJBCL{+m^#JG+%dRA5N}nfVAb<-3hjY@T#gxWjZho`%#>ps!FVR2yo$oxU)Tu zfeZWoOv10ACEM-#Y0aKjrkECJVB zBgA>Z_VmyQA@483zWEwrZlfusucnm1P)CJIcv49AoNz<#jkz!TzO3^gxE(q&^(yIv z7#j5po~Y`E5>+Iq;@B~2iOr^BjXO{rW|IsdH5yPI!|CiWp=_9gPh(dDnOmw$;U+;p z)gUDtoUlqXsdPA0O+%o?ja3N9>hTXP2|OVchO1i#v5mtO^&N^yM3!ZPas+SB>Cg)F z`bNJIal1UR-#9rc(0$LF$MIE{iDfvmM}^w!JbNs|KG-SjX1@t~#w`!UPj=@qSjC|FruVAS6EuDAK@TwP56`sxs5mj{_nrkseZgr)$VtFAcx;oDGg?^V z1$(Nnp}PZ;kV{5(Vd$}Wz;yT5%1;lNHet9^eu1WSc=D-?X8l-%ZYcy7p>uI#T_l#9 z*0xu(Oj(#e>|dBu4!vZHBHQez16rHcD-9~byG0#gn275;4_+G^z(?y#*kT`GR#+J< zN7B{X#U-ZdF)c}j5(jiC3;QA_Y#lUxbUlCQ2@DU=j7nEubPw^`@K6*7iawrQVgj;M z2F-dF$aS)UWqELC1-(#orj)xC^$VCbr#uT#l-729m3B9}4wu?2k$OBQ^|6tL(SDONiQioPPQsyfZ| z1Ep3SO26V0_P7x^&{n?D1IXvJcGKd#m zim+h_?+UEmjdiu8r^CMPFbXmLmR>uT9NaMwv&sk|NPSIm9qZ|=h%oG|gR=e%oA*!W zYy0uVhrgYu?w_=!zJ34h^{p-SUdZ|F>t}7LU-`VR!RG1D|NQ+=zyIOKAOGdguYUjI zcmMJ`{TLn`P{u$zxu_Q1`3&W9Os z<|ZTr)G9WJ&xG@F%Y@r&Lbw7O^Ux?ppZEy+k<7i81|gwgg1bMN;I7-vM>v+c-X^$! z%5ATn6s_Rk`ebsRd%1*A*P!I(bJDwG$&0p<>dhg`o`(spZa%$uGH&WZVVM?Q(=UxE zz;nIs@!cTObd=ej2?^{gCZ<=6`;-{6HG`GVhYc<>W2;9@e4axX+CE2CrPOKe9#L7? zxsyu$R$6F=C==NpZh0)D>2>ii{JbJe)b2_hi=tcQ5t10xY`mmbvmC2sjB59=QAH;0x27c#>yfPlkzv8s^nO0;Jw4$0Vb>YXEf8rKvBki!O%L!rvI zh5|lp6q|(cdN2w!&<_s%D4X(;PKz)OOs+uuyX6+x;hur6;B9g}?LK`AJ+Qs-8iL>1 z2e1lXiOmvWHcvk*DPu09g=43q6Dy$Jy~=SfE1(vH>tj-2e{MRJ9KD;&6*!G z1(;m!c8Lqbv~Ug4RLi!ca)4Lr*H4sm&`=@?!j%haf)#P#mkzvp{P^O-uQ>3&`S{_@ ztFM3F*TUU@##r~myZ7II_|gFjZ5#j$5-mzK>s*e6Pk}0cbw80|bxPe`^^ksJhK8y} zXanf2*unNy$lq2XqOO+kp2{s%!X7Rm6#|VK(4m{#lT?>$Ckjya+^H+SDV;1VKeY@E z&|Y=LE>`b%5q@RSZQm}x++(M`s|GTv6%|1RYE-!D)*gb9cD5CHQbF7EIBbel07sX1 zAF~XV$aTB9x#nr^1V!}P!>Kx-q^eu$5d=T@os=z+>eBBaV7Mk#4my20^yUh2*dbM< zjP|Fw)0nKfVN($M!nT+)gBRL)R?<6!QH_x1JYnd)4ofn~GoieD8PfdW?d%JZdkb@?JfHz|UoW}RN*sm}(^mlAQpx?e^e1SmOmr5r(Lib!D;3+h^wLuUoM{ux>?-@M(^&JkcL%MQUFRw zpzGK8!VihrjB$EPLa?xHm2Zhc3x7DB3bUx*=*1Cu1Y;77`qu9@z&dR6vXpz@-N3^Oh)O-Z0H z5tVvI2GeCm3t$%(-`J;`Xu*a+%__L3T5;XNl_CE|VH9b6!cIUhy&{>V@7W>Psn)*R@(~@}h?`Sm zp@{ZoKzBrbOD#N3yz1j4@ED#DNxhWKAd5UpxXr};8Zq7fl|=HHf)mI zrgEB&kkYQ=bnUuowvDpAP{|rs&np!86G}hapCzwXRX$KT)`%00h&WUk7}0b zN|gQrr%Y~i_LM>90HHu$zqpPCL|r*0Y`?KtRxp@Zqe?D!(pgscatH(nkzG?(b&f|c zUeT~$Z9G)1FdcKbj!|ybW1BAg?%5|hb+0{gFu~;uZGIhnWjYK&b*foETzJx~msw=g zaq`2DKu>0Gy7didiiohvWs1GBXT}4aiyl>Sj7?M}a7l(kD^+(+jkbu2gShTntHYR+ zmGLOJaFebAg54~{g?O?bAzVJ3T_;9Amibd<$DtKohsy@-W!}z4uS9X8)60k(ItCb5 z>rJ)5ekR0hds_gOPAAH)&P2qkRS>f-voC^c6Km-8=;z)lx;SAS{!0uikUU4)76Rm& zS-OuoGO^K>gQF&7oa_}RoXw{f_IwEdQ}SC3cGNwEn97a zX|EcJoeB)1=nkszzm}pZkOhIH`p2Grz>jTs51j!9kZNiDc0%Ag+p9CyLqTBYhUkjr zbH5M_UAINmwC*$Jue;#c0DN{Bh&6@YejQ2`m$KS6)X0Q!^+tSV7iRctF_;<(`NMmN z@rFJayP}G(hcGUb-cd_eVVxjwv`sDR5HE;0RwcTuh__!D)lFkCwe5cJdu`WC39Ra) zdJ<^AHI(+zc(8hDo6fwUF{LLSHX5hV^PG}C6y6rB6I9gOp+aeJZjbKkl}Vd=^T!qp zVQtF8auuaGAZ{JSvVdkwn|6dP#Y`y z7Aq1F6Uv2*`W&iH?pQXrqN}E|Vr^q2HDORas%a!t8+*eWcIql)F*lEKftL%;Ed~D| zmG-D0u;c-ONsz+g0uco}ODpWeH`cLGc6W&*szjbPJ8cLvn-x!#ME5v)Z1*W*P%u_k9jdo3i+zhR8GG`I`h1(vcjHXf@7G=YAz2qeiA}GBQ%Thi=XGos9 zRpex&NY^lr*cE+JRe(Q+fhYmiVmzy`sq&lasyZk7dhD#xPUQ&RnvSALACmje3uW&< zeW>%hPcJ?ki(%=3MBje=_~yesull6__4eJ4A@{W27!>N$GK9qRcEWOwJ(_hm zaZY)Rps;8h`e8yvPcx{r^}%`Ck;4ZW)Q5nWu82^~1AC$~j?N!3Yc>m8! zozCotjS5tsJ&Kgu~V$95yX% zbgNwO`=wtwv(UH26|PfL^cj+2Ks;0ngim3Vvu!h#Ar)rLu9S|KbpQ(h|F&T^&=7Qr z@Dp+cEEZK6HK*`}KA0&7s(sAd`_N0kwAZTiX1!1KF)quDC-Tq-Yx}Ja=5Kv4GX%o= zP)nFFo&G`_jFCs(!Z6JpGo^rkIr)&0rNYr5Ix$ab?42pDWTA}ylIg?|=(v~U9jcL2 zGEulMg<+l>RHwEbvBDNXffzAsr{5N%8vT%i<339$ znLhKI&`W%l1Jfy0t-M}Y(V>~L=6K72DbT=;rH3M*=<|>R(_<_9aGQbMGzLgZnRs}} zQ|&nBAtHeZyB=8zM|3rpFVw(%SvT6l4db9y!3!Pj-6?(x1~YTVXd3ndGzti02cq;k zB?3L(=OZBEs2^=*O5aY^nys55oZjqbIk4vK<d(?ob1Z^M<>xiu{EMmVW<1Yzp*;Zpp88NPcyrKYs3blnLUuMb&Od z3wJ`Fa6oK|h(zk~9u&s2%1PzDB|3b4n(+{utWF@!bEV*=wCdQz)A<+XVoiT|==vrU zJe0nWNU&*UXiKex5_lf=s7o(H=!>Nh?8q0-iji{L)-EcE1nG8H3iJ?~426JG^ssJt z03L(XiNDHN$(_*s>78vU{Yn}0Hdg)8XuAZHEFybeKjNTJO``-9=G6DEEO0ZW)2U^h zL?AXKRBE??G!Z2El*TJ>8P0?g_}Y2OLtu6s5c&Id^Ec;q+h(CI>ndPl>x_$920 zDv_tMZDV_}fX`~oZc7I5T>+j4iRoIp4)a)M*AKk8hfigDY-t@rwi7a4VRU`W(CMN` zRK{p|_*53Q0ads(SWE&rDy9@10xAW^y`VLr0k}2uQl~4IzhN;cmQ4{76MJ04rqTvF ztY~Lu)9Yx6K3GhGl>T_hVj2xmI$&KD^US#Fg-DlCbkUg_DqRY{O&4JC@wik}GTp1F zuBtlGs}7i7D>p&TNk{7{vP?vdU-#JGLR}9Q(;^VA)P$}L>tOW&*<=*DmKXFTGY#!j zWUApW`JvDS=MPg{g*DxWf`fV(0$m&;Z!pQX7D#qB<%xu8R(!=aZDbPd{=oGW%Wv&W1TF!qKzHtT$1 zrRdH;=}bP4`YoEOCf)3LqnD}Tun!_l&gN9YXu<_!QKmDb6ZXw@wn;^3@g>dh2`^!G z77ZK@Bwg7^uXQSV&znaN0JVwDA|hWKgwB2KXWMX!@Hz0Qu-l+uACf4_M<>wg2e$Kv}DF5-74!>d^E;V7= zgpqX0sKE6`8vJ?1WBu9H3mNE*HJ$E*S%1^H*?24ZR*H!UU)dPi&_kZQ(v^;{B4G{8 zaTLi7#D~zX%WiZ@cFce;U5?WAJLPLk!xg#_IN7n-C;|=o9eX>6f>P6=LrM>pNX6p$ zEG%T8NTh^_I%Y`cW)HRo<9@W*{gHxxl-|tP@wj?K|GVTAb+G$#3PoN)m?*U1!l}wl z$WJ zuYcaFzyJO(-~C2K!k@ll8RNN3xYsIv^SeL&@h|%OC?-Dlv+WPxsdD(sAHIL}hwp#< z;X8fGEl=^`+mElu$WGULfBojS|N8dzr*A&KdD+CCVpD~ckp=Z^Sr0DTDo~R$T($+a zmCzp4@Dy-2^>*DZy9)N{Q8tCeAgD(tnqHf|?M-1#w1<0=u2p8|PSIz*#o7{9>v+%& znQlGcOL<7J_{a$DJ7J3{&XZs9AoA!-?De8Hp@-dv7mS&OeAr5|6g*0|I1}7GY$zlb zT(+$rXqu58^vg6foRm(L;Avv(aO*JC+53((!XUGiu{`1XP`Hh-Jn$c5)~6VRrKVTx zGuOngAgBTD>U!#84>p^y8SH4V>LmD=bhCzmlE3xZ>Mcba1>t>wq<1)FMz4pMRJw*C zGodo7#?rAi*1=XmVcoiHL$S>aD%+53!$3)ZneC#Z#D%+cWtQ$2EP*W)F-N;%hjGrJ zx*Dd|Z8StTw$1b{^tyr_{z-bp?4w~3xa_SJELE(_xv1@RTQC@R8}yTl8b3A){ie=wpa z9L(VlMGSLQZwN+?1&X0HJyqRg$IvU|2g7`M7@1@6tZmdish2$Z&0n+x@XTZJNcYQrAH2LNciD7^suX|y|3R#qioYsS)HpRjJK z`yhN(fiadU>VB&35kj?)YYNLf9?K=Vs2O30(;V3ZU%>q|`o0KQt9UJ-9p$9Te(2HwarR-e`Dz5AoC(jBYucQrs|B zCRce?He)>mUjp_7IMrEEmj>s$xgp^`m1Pr*QyAJI5pHpC0M-*xnIWU0=P=fQs-B96 z+p~m3iQ%hj+sTwGQ{STXKWYwzewOchvq%~r9TS&(dqSaaLT616H}ebVW$MisA1N1t zN|Rxer}7KMy`dFzKN{7TK28fgzKZWBnt8%l8+uX#6J_5fr?RrKr{B*x<65dfdFX*2 zgZIS*s}DUhVS_^zhr+N^0pZsf>euB1z7b67-F|DD=?BNxL6ATPdQO)r8b;Pozn~k{ z<_-O7R{Sqk)dl2GFwGB*h*5(0$0EfQ!u;^SXxR=v#enfQ_X`CZot3tzT*Zm;mNcVZ zO=pP`#NvUmvy!!TejfuTLvI35I_bI~X*Sn|$qzJRiU9qa@u@<^EaKn_AaLY2RUfKB z*2O9y>4jIe>eo!a8tG@SwS}7DVRGr#Wq3=h+2IPgLt>njVyBLf_|S+@syrw`aHv+? zRkiLS#vtq5P*K46n)JW);F>|Hso=|_=<`rBD>MaMI~2X_wdrAQ6AHnD`Gsp?))O7% zFSE3pi8w@p!}A6OybR&xdKLYXRR>{gt0^8K6`^!`!OJ&@myU){9b30dt*$hlXdSaD z-2vs7rJ^3roJaq->fc5Eo5|#f)T^h_ssA0rJLr`=mq|&n!J)wU^>Fw8mVWzv=uHTb zo3ft01N!cAlhj^=qOC_C35_4?fr`nzlI#)UVZ)Zeo43NHy{3k@bH_D zufO1PS>dZgmBhTka!~9!*125MU^ygR_merA(;*cE4@*=HhuBI~INVH%8#IT?2Ab-T zjsRI2x;zbNIFems-Jxe;x2W3ahKPb#v*)-UNbuX6=74hAK!|2&kli$g>!vvb)`F<+ z2hHJLcX-eo*kUh9;0uQxW&WY(9$AV^bRQ9Id4UiWpI|k{K6u+o_~;++_(j2UF#A|` z(D#RPbleM1Pdo>eWpEVI1ka)B>LBfJY5NO~t+Y#FIy|-=rq4tN>;_b|hosvS@MFL$ zi3PPzYg%Ef2zs!Qq+1#=gx+*HNc&L6N%*Mubn?-(DRj{ijeQUu4zC-l2P4ceEyzEN zRosjVXYsvp-vvIgV2=9z5cIuuie4__PUg_x_vL0f2zOLrzs9<1hY!A2S5 zN(ITWk~j^yG6U6t(04N(Fx7g=bWqlOFdg`x!u1>MLhubTA!dL`l^b3^v%bs5hGAqK zCn8Mr*ufnW%c0y7S37tPW4+j{Ppb|(8u}uNddGgd*!#NeYz79!KTc6PkBY@38ttc5 z7)_?v>n!$WIS`6qIUGB?Jpn@f7bFKyUP?&E~f#e?0T z(5?{Pw_&I^M11pw`FjuMy4*b24d)OZ+i!NmRGO-g8kRgH%(@a|7(g=PY9=U351M(= zf>KHYcdMw{z&S|KhV|M!{5&DN71bt(CT~ZCeI|73xHhA^ob;ON(qK0LegrZ74uToI-hX26^CZ+=wf`AoF*|1_j2rY1DmFvMyj!Tbf8Fp%U zH&FPfn}#)0Ll#iCctKfTMUiep)-_dup`t2OeFun3Y#1EfhGz6x%VKBUx2hjvTLo7I z;%%Tqm6oOicM7yD*iA=8`62+6QWA)YkSys!$1juQM3r&B3@_?#gR8f?hxC3=CLZUN7YWz-`BG zhq?Py50=bSwi}idA9}q4x2h%&AwJwG}M=!1lzzy=3Hku~KwuNTx6MbAOPsL;jr68ob2d|f3q75;~+K?Y`< z9())CIhA<2XVxFW#;~G{qu$tO9eMrc%v+|2{74>n z<6~^5BGkr#Z56pFX;9c2lC<3nF2>FzK-FAQz${_J7#?v%4yi(YovD+@M*V)NMxf2J z7ow*!n@4*-Bd6<+piuj;nO`z$Ln<{HG^B+cFbfmn>SLc>aeH5jGUM}3!-nb-^65&s zm`423+Jkn{5%-|P!v^pn<2$(_vagDBf>X{W3bLoR z!Pjf~!Mm8A8>!#?!^eO4`)@zI`0%&$KPrGd!QnS=UVr)s9De-)W9>IjLTJDCd9St~ ze*cFb|N82uuaPgl`(NMv{VxdA{Li6I^SeL&_}%jgas2M5?_T}>cOUM>;kR$zef!}P z(3!9Bn=d=6={i`;*LlJmhx#-l&4`^>dNTD@M1`e+AJ~58T@O^3VKt`^=G|tkYz)H| zRlr}58forti^4uC8~4U=Tu_A)+Qg&Y7lX@b?aNT8(YG9sw?alhLW06E;Er^62UMhl2$(fty|7hNt{&m@?dZG>KUDimMH6d`I<8&N**oKD%l9&`r^h8m0(v9i~b;)=pMaJpg z?TzLlv){|T%J-;It+8*%#YQR;gwT!PF7CLMI!_#70S^<6ZK@}oPsoRoH zg)dTfJag7B$VQf)LO@joNx(G3WQ?%j4Pp_aMEIiiYxKD)QjgFMCwu7`pQ9zi#-a;V zSvR^=%sw30I&9r}EbWGNt~Z2j^^0DpV)Eh~FKiGj^goSr)X(hnL$Vk!wpyX7irhBW zFRbk|$D-aG3#_?RYZ$?dMX)^khxD$H)AbPCQ#BDl)P`)vF{lk%M5mFn2sy9~=$Qc=+fu#8Iqwp}8UFiNVSs z6Stum0~3RDfc~0rd{o7HBs@!x3Wf zyfz*AE1m~BY!0*gPUi?0gL+Q5e6B~(`C2Uf#S9r&7;!EbHtHUDCI1Wq$m#kUr^EACY6`) z#`KDq*67@-?y0vdqnYzq%nk8yq3Ij-7tRwqNH(A$tRvwUINd1qPP&-v8LoygWw+a@ zK&M)a-8Vr{=FfUSx|;E#fI1o;5~%H6&|#X#OTq=C#6Ycu1Dr4pD`RBp?(7+Y5^b}g z&;Hnl^J>CXfZa5=O#ERZ)UUEh;hb$amT{P}>19sG_TUhg1EHBxE@gbkl|jMm)X&Wp ziVC{emkItW_gHb#ThL^;bR;*Am^6w`F47lMbWjz8~VP&UkI1xU0Asso;ZO|m{rmQm)UDeQ=Y(DnDcG01ui>I;i3I7`y>rI`_Y6Xt z-rv#Ml{|EX@LAnvA5B@7g>iWkD zb-2x=fHtjj6m)hG@EWXP)Xn}#reJ%yk=rm2@$3q<%VwQuJ-IYQD$eLtfT_Yaw{08B zU(hxNos0uL!4=4KWbq9jU-vd8p2og8`>av9N_h)a*FYmy!QUauqhA&{q0mHdq?bga z)}zPfAR$l6E-HqN@Qp5i+v0@lCANAtXNWR98Owcv0yiOvsXJ;>08@72dGGq2X^Dhz zv2}PoTT8HsyHjqhgANa~ZQtNcp)A5=!GXREMW+DC^a7mvf4IFO9v^-MoWB0%n{Qry z{qz2P;Pl78eE8o4r}_%N`J$hTtbtu{dD>cjpiv>BC(f{&mQ$Bli5WB97KWk3!=TNe z+%VzLrjkAd4BFz8LEH4%pv}K9XjA@fgFB3Rn%jmUAWC+#;Ook5ryYxa4VK(j1~U(X zw)(^!z8kvc;n1dlc0K9W;8^4;OD}!K_iY%o%?F|b=$t(a+UkW)c6oMa(|<30z+1Ms zaUX6TqUN(fTX`~QV|>tIa|RsRsJ&6iePPg+`ZK(xNd&1e>NKC94cg4JLmNxu3Rb$1 zbOQC*E#$V*%pDu_9)mV~B?PEcAqoi=Gr@ZLJn-*By9SFkC{uOaHue(~x`J4JT_&ItZLn239*IY?=ZY4 zU>`!rr1n1*e3Nj(&yCr@uN6P!frObOmfN3Ikf1el9IRH?jGs@sP(oxp{L+*yQMNi3 z${^f1cVplxcxF~i+1e1UncS6g@PqJ~5`v1#t2r=|!qkXO3c-=I?d|XuTQ<`_>ncVn zhXaltw()tn$;J?ZpDfvw+;G)Z{S?lk7IK2&SbA5^d29dYH2{WRo#xQx-XrS!l4Ox$7<0 z;W#|Z*+v>!h0r16AICD9N~}O_869IGhm`kVpg*{Fz^!(Zn~T8Hf%ckkjVj2Y8iiH> z0A3ZU-U8Yqf;svkml1xt0$QLrtV%#Hrh9tU=e!w{25S(PL)OY4#et%U1jpE{HDrBBz3CfXT8xd9)3r9EL|*g-xmgenBut z^e#5J+8|7A|Z9)y%T+v7wQ^mbL2NH=>NkXaMGz1mcLM3uSeSQXL2Eoy^Ch3>X4fwJ@wpib-S6zJBQ9?ql( zhgI9cg41q>R~!2oYrw0mvp+z?R`32QiQVe;P~ic(x!5PY+10G1m(v{mp=*Qp4j<-~ zyL;gJ#350rV6Jz2wKYb6`#5D;7lj`i96b*lt>4dD_U#WnHdGrCjSeg$XS%@q!>et% zz1n88`Y+7d9=bMVgFJ&~->^SEAkj_hsp3V2b?t39BCclBuh24bKTw(vyxOMA&b6>H zlzWfL5_POymZOb)Y*n0xq?Z(t{WuVs27FCW;1Qi1(#qJi4fzy=*J;Tx9LV}7a2iPa z-5`jJNs4NdtM`|FZRes_wMTuNhP+LPf@t{LWF_{B{S_nA@KU+FeR%)k!>=fpzy0Rz z$5&tfy#FG~tf!Fe(2VSgC>Qd(%EHQ%7?+1N zoYCN(a^VK1)GvUiXFILirQ1&ex=oR*zJajDH1E$YZf!=Q+&qZ3!<-Y%NR_`8J3S>) zmYjnfj*T769V_CF6i+a1g}Mz^ZuLR6ow+mZ8Fd$qg)RWD$c(jj6$N?maA3HH2(CYD zksZ{s8+7+|26UGJKPKhVbh{!SI5yv)dqCi7Q2RcHx_H0b-BVW3s+WJM8tIj;u{Lf8 zAsLh5AyRIh1S1C{9!eHG+m6s%6y{QqTjJtwtq7FM&#-}nD*o3~0NJ1&0wHKh&FRouL$ zyVxxz!V}#GOIEQ%-xZ+GoDXg;swt9Gk)%J87pKE^r2!@_^41Dqn-1J6A<}e5u_~IHx6@ht=Q9mNdj`XIRmp zcg((C<(5wl{e;gV5_Ae3h58=YK5zbZgX3VKU_zglh39~DAM#oQjPERn3)Pg3-65x( zPZLyiUci2=+Rm!l;O3(2p|`=FlWG|O zr*KVUQ%|@IDPWd7^)3XU9rD5!URR`LTwEN2ktPXZpHaB4Uguc&8#)m}-g>Ky;T0HF zel0>wc0w_72=OZ1a%M+Fz~r*abfV^hv7~AU zr|*sG77Kx`v1sLnX{BO>ay50`&>^T*!5|5_C+Zr7SD`vQnpzv`ZjilHTRE$OJ3uA4 zhDA^%;jJN8p+{y4(-=jg^Cobkdy#Wv>oRXl&tL?p2Gloo%NY8DqZA3Pp=Ri`B+@WE z9s(4~un4)ZB8ZYHGRr!CI#$-6mnuOa;v>1~GPZm6sjyp5J&pPDgu2xYuo2(g@v5~5 zrNJggn6RFed9qW9aVlu~p~eZNA1PN%%T*$?3UFZrn}neC$MxU^fnhnI{jYOrV4$j| zWwAcsO${X{QHx{_Ri70>Pu0EanE3;LGprne?L{%HvLda7U&i%Qj$2ib>7^o9P~CwM z!>T|`w}ZZtbGO9&kZd*Ea#ptW`-)C6!Yf_Hg6^&^RZpwxlUS?}(Zmg}c+94yXXP11 zOfv}>KR~n3EF|jOQ!wi7KiS3|PYa2MKFs<@h@`D7$*t@o=v}qGt;=*bo@WG6REJbW zli7})0UYD(VV5D%y+8bojn02xGGK|M*zU&jK$yC`ULiswJSDmgw0LHgqsg2d;Qg~TV!{19kcx&UUFItgu~a&+NJLgRUeSFAXTlien? za8+H5g+!W$AvXwM8U71l^a3y=r(RHSCEze_RR}}80+Ek}6CAij+I9hE zeg9PKbK}|9)u5&h?QD8*fe%;{^|pM^r#v!pT%YtGKfU|(_SS#=`1;Ma-@Jdq$iMb^ufk)g>^F3nfAiIaviSX^G`qh@rUoeA06gzKD>YP>DEoZKD~a@P5zCL!D?>6jjXEjK zr$uox_^7ZKroqT{NU27>+&Bw`>B2bGN;Sl5y$mDb1~W2x{(qD#^t~~tOf+q(aFGhLBSiyg5{c5l^;F%(wkWFN%pJFI1@EziRdt7Rvj<8$ zkKC_*qHGpSUVKq$?CrHE$VXu@7C-f$)>W_V2bnDj+vc1UIaGxBbr!O8EB+#Z&Odv4 zig>d?rS<8sU>)m}pn}t3T@_%_`k5A_doOt0;abehL|-95Q9ij`PWmei`8s_mz3hYl zk5CJ8bsl5z8CP&6(z;Fhodvhq&J(uSZzA`86S=eUlCN_dZU1QzOp83U>F_FDXCyXzTZF}h*fT!%Pm&>Y{dr*9PgsF_;x!+^M8U(;e(&CWU;3p!`7%ZKJ&O6yI88t1yi<^t>Ejv`3Yo$@v8#k1??2W zQ9;_XsGvFY=y&0si?-KXoUPj>gui%(u4xUrKi6Pr;Ha*5pr7xG5hY1B!lz{#X3{NR zm{Apd9i1B9^91egnxo2qPMtVBnqfXJLaC`oeh&Bs7lQYgBq2-H-ExL-2@?szbp=Ub zMvQ5n1nI{q5f0feUHjeF3?kCaRdO1WVuVx;yYk`M;~IoRF8%g8G&-TA)fHnVdhA}M zVaSnTHl-$Pon>q38jgbcyhZ1i|1T)FwPEP(Yt^+!By{Dp#Opj&KKeL!B?2}cLHw-pkNkOsC$#H!<(LYNoT#3r64U#GXrf#ACig#aki@fo4m}Sg za?HXeR0s5GXpLTYG*9h9F3RCBc{xxbS*1z z(*qG~K^Q;~(X+hISmt6+Z4C~$-vDbapq#NcIIWFxB)WZ8&QnrXSUs?KcBt^G$h>G# zttD@ZCEnnv9;Z#UpwOSwn|3dIf9`ty;=`}G7Jl>b?W?bU-hUO>!jGTceQ6t`Vo>#J zQBlz1W7dwQ$PmI;q!c_M{@R99&|vtJbDymVjem6gpnFWq zQ`ZmOHAmGh+#B~}S(81e9|6PAnB1zEHlkUSSW@1e+3_dt*h0$ktTm^G`6Qb9p0)yGUU^fy-Ntp6n z9Gg>F6_mm@@-jk`t)FRwRZ=E%H~mJwrRk^hJRyR=6joeRB?*1fHAHEWhHBLnsjNn| zR!7vLpvBRiod^AiXtTvAD|VPKXtz4%y;ZP87Yq~;iQO=2RZVj4g{Au3Sed#_3ssv4(yOL58*DYE0(^y8AU*|s2bwUK+MZ+l&%TBf^Lo7((U=AB)!YTa5`-_rFG ztkmsy=Yc$O$V*DB!XXc#6XpmxMP-(5BeJN1F06B@?7|3~_B$NKqzj>kqG+-Uvtl!_ ztgRa5O_g%`-n6igq106#bmp-))u1HfQ(ht~#fVXcYaV-3NpX8uOrAJ?ERL&Wq;6Gy zjLHKD(z@gZ-L%isJwp$0<*?%$pgZtt7D!i&+ zYsUkVZCm|BQE_XsryF~No-WGT_S3gjMX%D(ob<{u7lMLQShpn=q1S~3fU03!6&6;< z!`LrGHxMIHJB%SOI?l>27tziYW{mVKOSo7p&q>DvYoYn}erXTy7o*!=PKRIDb?J2` zHw0_(enGF6Ir%6eqJE30XvNnYY*T3eMi+m%HOP*pGdUv1)ytBQoK=mJ*i|1IWc5&0 zz0exH>IhKL>?-*Lm%sFWIXrsp54~D6$OL=x?hl)PqLkU2qC$2?vDzbQWHu-|VpKMT99U$sAk>sHWGE zRWS!l8M=}SQzm<`Ehi|brw-fc=9=P`z51EjuE24A7&4fBFilajxY@vy!hB$+h=$;0 zXUn#JgO>nTjjJ5>5IsxB%{(Lk&_9{TG3->^$O5W7{` zyy*#?D$ugcWg+#l=RI2aFxNYbBZEWk%sW`oG2eY->n{%#y5l%lbVdCtuyysMI@WL1 zu}N`z{14?QgwCRp++bOu{}NC&?^rOr0L9z6ethxaS3vQ*Z(hF`i2vf}{rf=i&;QWh z4b7=P{PlnQG(hm*{rJ~E|LFmofBfN}|8ubT_50Ufj>Lmr?e>K=Umto#boQ5>)pe32 z+HY(Muh={LDkNq%wgXn%%T<*3hsFX6K7k!z9OTgU5V{t=!)7MlFe@%7$SmnHqwzaM z72vl3lf$=4*aWVm0BK06zT8cp`iYIBN1h~@2K#TAIY09i^;O5_$(WL|Li~iKbQW~6 zJzmE;?0UycNu3|V>UG=J>;x=x&{MGJxOQdBf?6Jgwukq#br@t{!4+NjqB?Lvd(uCK zqx*2!D{Sj*Rpp#uM}SSMjIP>Ux$J2`YG9GEuOl?&;z762-4jv)(&-h3G3?RT$VzkU79C^&!N z&%a9l@|W*)&cFXP9p~+@|NN)l{q+5Jum1IipT7U&pP%X3>%YGJ^qX&A{oSi&t@Eol zuRnbIaWJ*tzj>$c&0T52D*o;Vym|lW?VGn>XgsH^g#IuaMSdeug{kOr`xzm=tvXjH zb7q~DB|h;+&?h!)^D&39I%uITOt(PWdZ^@bgUthR1c~BSPsgQzH*#zl37Bfz%9@et zy-m3$Pi}+CgG1I3r8iLE(8|8 z5PHTzA?ho{zRZqg%SpI~(gLr~9eFl#n_-Uyp+}v(Tb@nGm^l?#ffcZF)RK*t}ZBtYJ4Eyb#5fPeH7*(u6 z++XNIf8t(Dti{-&Ajv97yH;f7+RXwPi;49_Eqt1OF4CrVo7s>!n0Rc|9FtQl4amn8 z1U3c>gkQ=9;T6UyXplUtL~oTg1D}P3={+zN7pC>g7?*H{?zKcF`qf^0&O4h;OzNy^ zlX5*I+8%a7%GsYQM#{el<;P91g6W(vxPMwmtRu>q1}#4e{#Q&qeQGQu3KQTcatLlI zNG@eX{4uf(js&J>Ln@^vD6|gu(2Z)bwM}>Lj&rJ1gjrL)JwrZ$0Bu!ZuC z8L}F>C2>(08(feBzpp&OThS#gcw?*N9M++%#iKaUkUX=h`8xv8bS3Bb_jH&u~0-bTXFHDo&~n z7H$jnL8 zy5n@;bQRGy)1ky=qbTTH$7C<~p>4@zw(>=lSd0>Boom`wTbEgH;JBX6LMPBK#<1tK zv6GQUkreR9q)K#~sSmeM%5uacM{py2J={Y3KBR9DYfOqPs#MnMsS*XQ4AB%>Y8IrN z%DT3((L^dl+Jvj8*_ zh!zmCVksxkq#pxUIo+Z%e9Eq%GqY#Cz@^tQbYlC?2!Wt4+?bUun@UDXMIXBzYSnyC zWk73(tZw37=;&V4Nu5{?=XLBQBFvBu&fpN#fEyB*R`aE=67fw^Dr^j=OC$SiDz^-4 ziEUT*B8=+Xw0kQNj^+$GB(J&oL8xY%P}R}o1C=5oM>-^kNU7+GzWLGzp&AFFEa2s4SfX?m6ncRI z+tLySMbm*DuXj&Ni6v}ph*hr)8wI5D6g+YyLVQ+P^72C`PD!5i#aRVnz6-@MtS@@D zde%BGPFd8U%nlt;Ft4}SP$;tSKd8a5TG}zF)PCPq2DL(;$_?2=15+4dxGuZ_lJS>O zCc7vCpua^5MJ#Am%o}bl^@>vUv9zsa)*4C>z@+t{5?%qYU9Gq5wuVEO-b~N>;@%B& z!fvk#VU=lN9cNPlWREcA3UopQa8*iAh!AWH6*plNzJ|`ih_b3)0)~3fY}szv`|gJy zF&25qOgeHe{5G5m1%*bn*i;~+QLQ+OAb4)LXIjML3nnf4*+Vr|X${ih%Bx*B!Ce+^ z>M$zPxl!@22Lw@ecL&0A7#J#BEBrdA5;oA%oWOn=e+?bMtZz1oSmpD)x)@>99hVB% zK;O66vm{zvW?7(8twSQf6oue54BzaO?$)kfYbD_pGxC$Sf;% z-Kd#$L;@0!qBMK>s~;^TC4Hra3Hv`mGZkDe@JX1Lhq~z%(I;yxzAok5_Td_LAU>#* zl(-1CL7NqTEJ6me5^EC_Qgm0PH!D$x$#xX8bBB-pQfcMQ$4@Ul{F>6r`)@zI`ugYn z|GCWi`eze16*0nqtn=4jAF=hn9kH3^<%li)8zZ*u9E9f&nd5(B#Ac>@#8%?hM{JQ1TmIRI&G;81wtkP;{4bB#0_A+Z zM{Kn*VlywL32$Eg&qiz$bEZV3hsMtzc5up z&3gYlR5Q<0wd-%DYKjt7zsifLn&6TiZxuLK0%F~NXjzAPPt{mSv`p1h4l`9tOx0HZ zVyZ?WVs@&kMwv?ApQ##QSWrvB-3_|MuT9mOY6pctVdgrSF;&~YI#ug0r)n?|9z!)2 zc<-s2N`Q(1>C36w^b1q9d#E-v(5+#r78g`M#M$rN>ll zeVVFG&r`LRLp8yfd#W~lF;xp=surC8o2lB%p_;j;YW2lbZF-)n)nAyZy&S5U&r>xP zjK4Zn%S_e0KkU;`%}}sZENGvmYS-tf+Vu0O8b8AGQ0?;Od8+0Zscv6R)wbuU8V0~) zswN~i&5xm)v0qHp6aZF+Rol;|YVCQd_Iaqbdvj0K_ODLWYIvv-rgeE9s^Rwb|NOC{iUgz-R4kV4%N&rPt}}C#1~UF4mGO?qg;9#swt9$d#dJ{s_9g8P8HgyeoWPL z;rJxg@iprT=}ttQhKcG+FVDElc>6*RlaX3Y0Ds|P7f)m(GoFQ%?qj6(n5fyuM9qLR z$4Je-9I5G`>lL{8JW^X62m13wP2r?p=4qrBl=c42k=pY_O}Ivdkhw={{@*iFL%K@o zb9$brnV*f+l4`&0Ve9ieQo9}_wZ6~cD8gh1cfsJA4 z(@1R^Ec&mF)R?H%&l5HCvyqx|&laCXY6>ctvwt3`{cNIUoT_^9vCBzzU}5eG*bK7M9uudNUgr) z&)b$izWDHK1i&|MzJ2xe&-*2P?f)<6f8V}&_mcjn+HqOpED-O6nS?$|F6UE!9t9CN z$r0g>=5G)1Sq0%{Rrc=Y2rdr&JXL#JZD~mB4gZu20kVYr?!ca?K~B3e{45BN7c9UH zUKIL@;X>s?p=~Q;(eY?BvC2HP;lrr-G8Q9r1Q$f8H;?u>Y7G`n&g^zNk2a znd6Zwad`4GyVb)k$H#^f*kbW=U-gg#Ns_`!xnO)O?GhX^XeVwgCOK4aE%j_$Pd$sY zz?R(mK{Hd4QDV3cX&R?+5HhzkkZ6Z)YBl8k=rdZ_-<&sK||r2ZUHYJMYd!N#H(}x z^SDNIc4HK^|C9n2S|44$6i_RRow7OcT9o9q~sn2J13OgP%x%N zG!{eWbF}b_o<&Y7`HW3{rtMS|6gt*e4#9bpi;_y@4cc)+ZJ&{oQ?Y?W;$G6k>}2p^ zP~-BAq%KUQ5TZA!ld&`H6|PZ0S25sl%v2E(w(Hc*C>XXFw8)(j$q;fB%vr3RA3}~R z?vVtt6P7(v_4Xc`OpGOUdd)O18Rgo5A^~!R$n~?+mi69oSZA?y&uPOzPT>4>>nDG+}3R@B&#>sLK5?>jZ&yFB+a;0hkfl zE{!)OKVtQ^rFIBj9L(x;$0Er$61_dvvUn*0Zt6>%Fn02j` z>u^%v8zQ}WFsMGm#b(^@7ME}ib%b2TIn?tiWA=Uq{d^X8Nd#Ss5RKr|=9H~z0k1$H zug8qqI7@7kz9NfiHpMb+3mv(_r0UW!)6adVu4~0Os{`v;5!iKZOKjXum_T}^^T6#) z@KzPA33u(C$s=~>mpu>cbI+=XsPv}qw}oqstYi3Fre??tAX>BGPo=oBuEfKW$zER! zDmBbb6lcR!mMo;BlYF6Srz66YMwLKd(1p@^y$gY4_ZZr4%Jxum9MY3Jj_I==@OeaG zNfj7(AuypBrZbcT1{JPO8(3e2u0@BXjfFEE(`!5Q(s9L34q+0Pbkr4B^cpbC>?nf{ z<#0uA!wqs}#k9R3c`2Nwkf#a-UtsjH;Bu}EPb0Ieh#LIxn$TS_hyb^=pS$Y2nR7_y zTvXZZ^nYqE!40#`-q5tE(5fapTxkJuNW4zrZMHfMQOKeK`06_2D;|GI71fEgVXh~N z{=&By6AErzX3x5Z38Pm9;j?E}&O4C9sX|?ku4LlJ>cL$Suvm-YZt^Tl7R0`$dw{~m zEbv$HjJiOF4v}<)r&@=~%eKvm5(+HBk3mI?S&uZUJf+7#UnS^~pqP8V)_47}FwA!7 zBEvUTI6Nk7L==byy^_7!J_Jdb=!B&2oM7(NYpY1Mu$go5W`^00Ahn7jo$s8Lm2FHa zDK|Y26`Wb`cWJ7!qTY+r-im<$LO^Idc4f$ka&@6hI0VL0kGj+}4rYf~#5y=nNS3NO~ZS~?8AIVk>#3hff{;;6*0z!>wT`< zShuaW^-jJ>`k0I>C0nCx)`$1bffq9?Z0(@oqC25ji~OZsaYceHp+wOV&a(%;4XFMg zlIm5mwi%a5m6r?3e|qR!qFJz?Va22!(J34F_*_HI$c|O^dDkIVC!~Y8w6dFE6+HAh zPlH63J&KoEKlmY_g*jk^Q=ph_D8Z{=**j9bpy@0%D?h| z`TnPyVU$7zs;0mG^uzD|<;U-S`r*4*zyIlnKY#z-K&tP*efRnUNcEWivAlctTYC2I z-+uvAhmYf?XPq*Qx8vsNOjfBT;p%`E|F+l_UAavqZ9`1@1k9^$cl$Y-;HowYIzbOj z$NVtqnTL<#-PS6@qi0^Q(VAClE_a*sBm`g-Fa#Sq)RQMo$DM}CfTOp#%>T>WyLDTR zV^@0b_!aSJKgf=Vyv8Go07x`Q7&n24XsNlI0AqO+&3r;TY}Y8v{3NNl>d8oGoUDTgRsqb-|uGVU$1tyTp9ZH*S)iYfhp=?LJA zZcW{tkW)Dsb5;mWgmgU{aSE4rv8T`cB%r1p&u)afBNgKDt~m`DgAJ@&?|yC zxfz+GPX)L*ot8N7uz0M}JCoa32MsHn@+wHSV-+3Zbg*$OmCQbv7THnuNH>m=qoXIB z@j<8@3~<^>Wmn*c{SY%zVhoRAMwqGnTRVE^J-FLFJAu*->%NkVZ@!3G~BA;>9B zZniWHBiD*k&-gqrvc!mFtnTZ6W`-nY7m&j1V069WOTJLuJ|>9m99bxYT|251>BY1@ zMuZ5(Uyh7nq&C-RH~v&gfYlo>tldN8Fikf~Ta03KKpZdwg4zu!$FhEk$8?I@Xa|X) zk8J8@&*5B&ZWEr|dY$bb80D0f_mGib(DGaN$3=4fFD8=r!8pYEIN7&Z^%k_yKGH`X zIH>6rsHN)x(vMCP=Hl1bBV9>M3BJycDE5hZ>3`g<*dp9P&|E;V=*%h*VS;;mq>GVH z<|^W59tTN`(_yX4vezjJl(iM7gXBc92n!VbL*DP4e%lEFOu~{~k+#!Ybo3mOCi`_~uYx*P>B?6^2G-=0v(zgzeIAi^b3YV7hl9FwCWU;Nb^o zqieywLfB9F)As#;eE;Uh-}=8*N_{D|{_xHB-~aG&LfDV`_y6I;cTXMs+iyO8`|+2x*2etlRi|kVa%qn> zd9bkY$! zizgZVh638Q-s^G-*IF&LQ=ryncOOc$x|$7_?DO%R+*xIuV~f@ z`e`NRj;iXFb(6y5IZ2^b+q89L$_L&ZIY&Ac8^b)i;`{Tb@z4FqY%XRbLp)OciVPg* zrCt&}^haEF>)K9VlTy4wcM_KF}lHZx4h%(g>3a@X-5|#*ha*H662^@ zwcr>MUyqyqi8D5VE#vO6F|3bC4Af-g^BMR#P}u7zM%eqJiD+t)-{@3v+AQQ`%@lQB zUxubRf7Ii2fpcc%1u=`P;Hi}@^kQ3^sh1E&zS*KFoI4lM7d?b6YVirPp!$`_ z?O-oM3$%CMS+6CWS_rya4$&U$>nWlX%f_c)zb^-%y+qr`Zx#qz6;+ zN}5WsM;!V;$bq;)RSrN7F(N;nM56>8n|Kb@4qT`>3{#pLfB?}op{Vl&d=%Oo6$+X* zU3n&|(8fO_29TjDk&6afWtX*UVe1W$lMdSC0>C#gM@h{O+|0{qF(R;{qzErwprWhd ziH+YKR^g!p9@XNoC68pJMJU=*caP$(^y%bu<`oPAA z-txwAVrC01C<;=nNvDu^P~@cPL%I9n<{rmgwXcP-^@!T3@H!7l+^pl`De<}a-QX=r z?>9!kR2l_qZ=7~!HwUvvoMF+5?=Gv`;IY%xg(Kus%%+V_C;aE`_ZOk@jB1U7V4FhA zoKUlC88z<;GXA&(g-oA1U(F-!uhKv4BKon5m5kbDY zXDF_?>NMBg0A%_VgcC$2Ira@PlvKj!AC8N9TL_uo+{{CiP8zuijQXTAx~>bgm{bkJ%By! z35Cn88R-t)1!c|KgvUjaxh6)$F_FBd8sgwwrcq+ybQp!@a?laBDk|x2)5u{g-+1oB zhGZo^T$HpAWV5Q*T@0vU2?z{N6GwWa5W6sD+Rc|Xj%{W5Be~h|PNfoG^seRfQk>1p z)KK62M74?LBQ42LmKp9jvQvISe6bR9^fmg{v@Ypp77V4@>Xq6HZC-vmgVA=?M!z^D zh?XWABoxKqEEEPtXffSg=mo?)9jE#Y3NcWYi|Bk5@p?KXhe+B|^u8yi2BGB6NN%}j zDK^Z?l|H22i!TAsH>^NKXzzyO*n;D6J;N{jBERoHy!r8KUChF>@4o)Je^nRr-~ZuH z$G@+OnRoc5CC}!t>E>W)!)H+UYCD&6VqL}OMbG1!_%qfOOM)@6u5!Y5-=@(;nYVtH z9-|n-A#p@0o~cmv*D=+N?V`AN=m05PHh=hBvg5q}1ZUUp6-fv26p~qWTw|(|luSf%RjuREJ z5!@7>3e#Nu1?ExP@j|Ia9W|K(IdThTkwmCv$645yrRv1 zMyoBnD3^;_WS)}9M14`<5%!=(d|=wJ^!-vs)*~)B+obsP9=JmAQp5|490`X{Kg3YW zI9)p%9V!i)q#T({v@0I92VE)kVD5J49^FM>Qm`2PVugw2?$?z3^JOcX6$|cGyPA0C z^YL~pOfza_30Ph=4%V?{V0>eaG7;NDMj1kIYhend7NhWq0~I#i#ZI|(7#Z`sSyWkQ zS|AYfAOQNn*Q5kt!YC+vb>sGR?|L$e%X?jRA(r*7Xcb!QwB&2S9;FHi-5k9rmle8zO;wKDvcD9RPoXRU zPP>a2(W-na5^UlmOE}$z9)6*h{a^YdI8WUMZ< z#oM%1v`Jw^;N2E&j2@RusEENj_L-0{hYY>1MavwF?^0#@M>(DDm%_yG&ap&4jhp(W z`6&BzNvunYbfg86tU#4OlrvT(*v`Y zK*fEa8_TTQ;LMl?E=yZT#7U)LZvc&{VqVLCxDPon1}Xe!H=yB z$44rqXiu!n&J1iz5rVcr#*t`mM>Ku-a<*CMOiM6F#g!2Tvj(z|0JsR>j&?_(k&V-O zJkuc*^R#|RT8H!wV}Iz;NkOFnL`V|?o-?{ox?}Y8&tj<^X`hP_tPWWKDi;c&`)(j^ zTJ@=7MWKhLvm?zx#r?vXjsk16xiVBV z7(gvA>LtrseclrOnpvdnQhb`qund`p?64n$4BflH7!@WeCUx7y@bw3JQ0$V8r%*&_ z!lvNW_h#+>X_ehVjywJm3hwkJY{+-J+s)$+YtW-c--N@1X+Hf+uSx%EHQ8njcRaIs z7^#cY8qO1jk^+6|o~d>r9)>&}g=hski+kKl4Hvh?XEu*UTbs;FTY|R!V>QXdMd)Xy zPFjSLl+FitPIO42>CJ3jg*?)fK*u&SPmK3Rw7&fpvq|Q#XlOwGQc&ZZU1x(sWNUmZ zIpO@}t-WaE&uDaD3b4g^QNrC`l$aI)DtvVHWGgPn&M{b3`fin$XVU@rt}EZ43N5-` z;X&Hqe4$3v(&JepV54N4uWAMrZv1jkD?oc=i?nY>twts@!ghadJ-8kl^}Avoi7^Wr zfQzN^YQeO|qql_Q7;2imh&C()rrcIwwIazhHhR>U#-dMt!PVO%SK>pbP;pY56{4$0 zP>PRHAEunOt<$uI)@>)eU=IBD6y=y7QLK5RSb|^){Z+b-5QL%kyq(jyri2&C60@HP zs%!7gLv7RtBMt9W_`4mmsmQj5Mq$6NLG2fBW88p-@XWa?mm#0l=RnHxI*3;=*C_!b zQGuTY!S3l^qtA{w?dZcfk`y}eBhKEOlY=o&t3gJ)cW{Gpoj&R%MeVWDDmK}BB3r!=jtot(VAYfuAi9kUUNuVRO_o%<5egQ_TTms8BK)2?vWQeK&mzp$(+IhRw& zK%7V@Y_!dI0md-UKXt;t1v!F_uK{zd=>4EkyMZ`@MZWx4htMldl6sCtJPiAG{8uQ^ zgY>p=Tw~Nt`!BVK8FV@WrnL{2L=(o+CyJf(;u0g2iZNsU{X7*C&5D&tq+_12r-@?) z6j6h*XL7gJNik<(k`h%hPr|DCz|e!{F%Fo|U0Y1QuGKiz7%^ZeFQa2yHCk$-0SZ-2 z^3vt=)EYShZ*i>LeDI`FROf)`K)#D%`|1zDZNa{sV&gJZHiB@;4 z`qlO=qRp8(=cACA72I9XLK6U-_TPcd(EgaPoJ+jUwZ(aq{tS>&-@seX5rU3{#7P>% zgj&~xf~mN}ocX08)xIcggnb^U@9-ZNr};NRZ>X;kJNWx)y#m zVbNptz1(_c@hLn~c{S8^7hG6yc@>>-9Jd|V&}rlAPm0wdl+$rlLI)oRru$7%n zh76G@3)E9^3S)8mZs|IYB48S6avT@DnUUT4UTPkQ9<-~9O7h1u2D8L}V0{pS5M zL-y_a_dkC3?dKV?UwPfT^>=^%^Upv1`Q2CDSC+s0m!JOp_doyP4}bm3yTAX#@BaFG z{d@gQd-vUk@Bf$YznjSN!}ssM{WOP_=KH?Pl70K}yC2>v$0_A6%t%@-6Y(|d=$Xk& zvlIGw>4bJqCv+4)6P}LeV{mV**H+ykorjy)OA^2dyh^KN+Z91DQPO)jMS^f_xKDkA?cOJlM>_$ zl`>So7zkL}(=vjfnpTe=1*4(zN~I{ScLpWVYiewF?M0LNscQfgM34yfENys>40k1$ z!ikJ{&#Bm<#jJ$7J0|n?t0Y}EwFO-{z$@t}9QB2kHtI-?y-`%Vui4#svomJnKI zr5h}AXm2`|ij+1lUy*na1h^-tif`DUz!qpVaK-KDkXg^V^akrOnQpCee2$$n)zyb6JYIVl%w18I-wx4Uv%y=XHY(73QZigI;s)(`W!d7J8&9hCQ&9_o3Y$C0hVjL1k;45A}wi~2n_1VdksX{sp8I{Bma zx`Nn7r}c*VrSK8-ai8>&c3b*Zr+os$F!YDgL)!ai{+Q`$M>>|?H-zG5GpzpVJ|Frx z9{YriNw_jzO;fdcLstB`Zx^R&YCc6D6CxX&?~6V%090p}!yD67T{Kmr{nkY*E%z<$ zN$*Orw`D+)r4p&Yq-0VLs=scVK0fqZiteF5o-uAbgu9xECw=y{gZ4-hxGYR*Z9zGM z$G7K5RVhVifPu*`b_%Ni9hBKQ@j?9`O^4#U2q>WZ@^YHvAKK|D@%pNW;kcpqS>aC& zjZB5ciy4yMiXxJtj!35&Z=_#DjnHAuv&rj?MrNcTs4A3Qx}Jx00(PSjY@#Ko3j=2m z4F0y2Hq_duK<1cqlLqXEZd$IdhS}Y2Cfn5doZ2s0>2(1ii8kx0?^rg{<&0Kt+90jHHtLLMesc*6y@exr#-}NUO zQ);MWLt1WqDas8|l$`cjdYR(k^@(>@5@JGQWBBi}DnjO>VInrQVSE!Ebw|7}<(R#L z_h}p2bDi$u4IeSYU8)mx6&*#H14C710bv)P+uUm}4yhyb9HHg-vZ3!x11O zp(va7*K7rC|c))!Z=OwIuaL z*xcl%E+$JKe2d}-bg=rzk6xY*9O>OzqUBiYI z&(;fX)pkA#F_6@S#wUv|q2)OiXYiI>kHDeqIICOpMBusuVg>QIFL$4@iri}BC{T&! zmWKDjglL9;>3=Ta#*SRl>=EMV9)Bq8GY34F%1xmCMG;0Uh#{@y53?tayrW=JDf`qV zy%oid^A}Aw%GvDv3JW^Bz>|=w^F{?+R?e zVk24TufdpWoC760Mz1))Um1$0Hn%TWX5j^m6C6jnOG?|S$H4JqMdRfFqH@r8Fmfw6 zk77wCunEo@hH$4M4_%Yv9u!L{6aySl5d&pZ{Co5ls1@{Stss(|&t!Dp&N&nkyI-S{ zThqc4r?(e68=|9UK1bp0ZQKyp3c4H`8bwi!J2Nxl$j5YQXIh^M-(C5vTEfr#N6>Fk z5}-MGb{sw9qNf?th{YB30f(Jc01^K!q6#|5P0Kj@6(6{a#f9TYTM$~Al6v_N#b*Ho ziU0zUbjK~+Fh*~WFbCtODFdB?3+!WwgT6OIg#!th<5Ys&0=68%C+=REP4*`~tnC-3 z43C0LU4zIx5;8PTmdK#!BO&ATKxneZ4_0th`M{!JuPYQ{R)K%xaa~6(BfkSw$0>m}^(Yh;=aJCW4fdVeYaCjM(Bi_b=;=tk*7zVsb3SBg?&8UZQ;y-3LKzxn3nUtf`s zfB)&zckllB-~azdLjIfYzWwwI&jqNfor5geOS*4?)@9$k;8L+ee{nXC(um!G5vOo3 z;tVJ5@P_WPMA*6W?51a2ZS?iCN+KQ43r+W@kaS0BQ14ZG4ULELh1YEBqkVoT7c46K{A59GX4N0VmJu_q(n?q0QMN$r;;X= zZg|0ZV@q9Lq4ePU9iRrF;z zv}>6MCDRydh_kHg=HKDAnM4%e4N1rFuF1TDF~@ct#vbLQ|keu^b;s-2MnwVCv3Z5N(e_@d(a~ z6eJw&>35L%e9D z^#|qbAc@q-=htZ5467 z!cq7D!;ftdiPOi%t3=c(_E4{|&_lc|Ot>#qiv*oxZ5;|NRyXX>KGJ5#w?q-&qW@xJ z#0X5e74k{h4TBB6cqnIDWE$;st#@f}@kIN`9lM~_z#kq}Bi%`+diG(j(}C_St1Fl%sp=)2XMi%0#7)q7)(CFc{CW=+9`?wXiN;*n&BMb|hS|tsw6J z4QWrJKHrQYsuTU!CzqXlg>vk14Wxa#)jiei6aqN)bv>wfXmi;q>B!Wt+u}fhwJqAH zoKqJf6f76FxSP1Rfg5S{nc}|yCpJ}Ei_x8r`MT}KX&>@=iVDo%9)gus!1}i6Q|P`a zI3Qkd3F_{`!kkkX@u)lbU2k6|9-duR71@9_wHK2z<;Nv&>sb|VmD!LxTw}=ERcB)| zKnwW@S$|Myqbfm%j9|M<9Ey>l7r#wW>L6OB0ItV4gew~dJamH>Mqia!w5s&bL~eao zN}6zZv-3=Bs`iZ8rmhU^R!HVHB^6HyN=SkUU7%cHR@qATt_jsE?4bO10!xoG_R}4~ z6}O9I?pY75t{gsUu_r-YPSu?v&@?qab7@G+9e6j>WpGt*8}5b5&!53CqVg9iq#TIR z>o*U?`t;=^z&S*PHl+*Qy(lm&Zme86=eTTJnc~Yi)NQ4mK%iAOhF*qtcE6O1-p1M# zxO?NYKws75I6LvftDvG58HP_246n@thP7R^d<(~92eLrhbqc5Jks1`2!4*Z2$P0AE z5)__t=VAEklO27c+IGKX=G(>pHTnT9#G@*-|F48jV!wGjJg=CoeYkio$Z{4+ae(o;{h<_iCJ(8ZT zKR2|esSj(REAuJNGMkj$$~<0KjdsIU7zi12O!TJ1D9$m_&&nsSQ=;^U0Bg^wkTLYI zgPxA#i2W3WsZWWxu6OsKxffU~OuRlFMkwJ_rRK*U$K*Nud z>!@uoexd%Y%)BjzTB`sk1-ET>Qz{lH3y=iG7W#UR({)+h~VzXNR) z*TpHapwO$?+x=*sJPy0Zb{{we2@UBBqKmHRE$CB3yZc@nIj+XNDiVZ7#rIO2bwwyS zFp+&|TP9{)uxDV<+SBh$3D`%}Ed+}d68kK_(7JKpHI8H!%Det^*HIRVHFX|=-cJEo zz(WyQtmjm4)+QS_2V=3d;+i7+PNLC`LEQr+%QU{gs^a<0;b4D@WEp%&CtXL{Nlb*2 zT$PdZG?1q|Pb1`dV&pZ@Kv;TUo^u&*I*w5PUiMi6UPw+>?7=r7hGm$i1ibHxsaj*Y zCseO@L27+TtDBfucmC2%~qsNTpx~bD5B|PIT+a>_ZYn(w4fnyn4o{+Oqeq&s&h2VE=s1o|@xn^CXBAN0jimaG_ig+ox zGZb*pbmFd(=@S>UNqcPQbGULBSSxDe)wvsP-fxd?_z|MFyVwt_c%vKtN0Ck(u;-=b#q||=V{n7Cm6Ydp>oUI^&cNq~s zUH9q~j!IVaJpCxx&+5t*6-v%kaFX(_s6%S=v^rA3&zE*(&2* zrTrcG4Yb9|kfck*$w#{05f(^R1a1f$#tFeE3r(@%*8M~=o0hWy^i_OvQ|i{&kV!OJ3fLrv7Uy9BtuFJd zEOd{_QbX7MFw`AU zr1H8%?5(G9(uS@UU2j9|#)$(5Txzhj?Pk6TAY1ATzN=t&bH z*Vkfhlmf0uG_`nr0*LDHrtMxy#Vg+2Pnc=O}0tAW3N|Kq10 z-hKUb@8VDY_$Tag|AzAI-+Z;7>)#>^{^|XvAHIFt%XO5yH)W{UlDjW$^+@Oz^9>;} zL%iX?TA~P48W^Ss`S@LANjue)BqkjXdhNvCbtl(Nz!6Qnn-YyUooH{ki_dMn=dtr9 zycVXefY~BMS18M^iy&`EIQ44J2`An69d`~;ab{f63U169=s)QKgz`2s?i4yIzUdgw z2QDpoBz;ghLOX?FX04S-`R!hkxauUELa>K%cRO%yV%LcBJ50{inPGl$XzzS7?C!&douqev33R7vELm4*Tlxzid3}>z= z5gZ&mO=PcBq8pd#z((acPCaQQuCByMLa{=?OfU(&({Melh{iT0YxH`G75>5yr3+UL zg$FwG>P1oMx*0OX10|Gh;=XO7U}?Fnx5~Ph9~TO`3T9bU<~mjf4e#K}6e>lkNQHeH z-r&NpDH(2CDzhn~oPZHLR$Xqv&t{cr)w)w*?`;;?MLan5Kw*bwDFkC|ME4Z)JK_7h zDefz_F&~C^4JwFPOk_$hidl*mnDqoR*js-&l%S~t3&e^%Z2d7JI*?~W!*40VK4-kf z>Zq6NO-v8=ONG6^RM-g~3pT$4J15S!5zZZPgNtm=v*N>c7!hP~SO!!%9~98?E*?{{ zhRnPLX3=AE`BeH%T53tl2I06@!&ay>qgYK@Os{dciVM9ux)cvB3(s)Mg4;0o9Md5N zY05z@Kv?0V4YiD2lx1{(9G2lFPgYY%Wo9z(IgYTS)Pa&PzJ^|pstWi+byC>0%I|Wg z0vZRA=iH;iqCA~@nWiqY2-rO*x9&N=$9(J0%5@-RIf$n3pxkj_9z zL$ePh27OG^-R8}6ictxU0`#_0QC&(;3MJ?k^l&RbXkXhD^sv^g;U$uaI7h>fLpv%D zraiQ1n?lJ-tuR?HRO3C;*-CCHDXeGV5S&1n3CZ3h;adf-`?@$;QS45h5J2@UIeb0@ z%IHVu-wTCu-_uQ6W%fo(O8>rX?{hTG(PwhpJq)E*>P^f!Xs^a_xkQlzyF|QG8LKf# zn_Bo_TyEFj=znizGfYZFBa=cF&0;iAN6KBwt#((C5PBi8YlTIpfD;s5QD_sDrrep9 zQqO2lB-_B74p*Tlu)zT{u3Sisc*9U8=pd#xu~}r$79B|iU4)H9nzYhrKevs!tC;)H z9@XtfmFY^}39jF$doJ(3PnbNhQ^4EBQpku50U2kR@%S(?)df!b4g#M-<^n z9wCyn)@4)LAsU2;|ER-`BdmL#l549Hkyb0(KB5G*=t(JU>F$hk6DqwGRu%jLk|V){ zD8MY#qj;-jsPJqfZQn6CciNM~6oqRcTUW0T?^AeUh;kisM9Ji!i_zzxR5d0ydZ{OC&Xiq4K8i|VAE>ufI|afcivCk|dwXf7(BeJTg0vJeEv+j{ zYP}a4{j?O7z6G}%#qN$XVNi_kO4{0n9t{|Dq!jz~i*ePCGF06jy+VZ@)u>-vez+1RPc_<3V7T3jfnX|*WFDYgt zPa$flAX~iP>8;?r)JK#MX9-IaoB;bd`^#w$5#gOP6x*Y$O(9T_mf>JREf!GKTSjE?7&@ZF^Ge&&WnMG zGDIdj1mo{C$dif&7Rd*_O<)#BzfiR%^3pp3FNyrDMK$eu8?m!ta&GUGv}RK(N?+O} zF|@3}-x8NKB1#Zp2uk%sInXuwhxV>~6;V!9gjE3I=!J@^)dN4bt1=qr+?ZOsPfNL>J5!?|o-SwHL=MvpQ z3m6(#ZXS`0rHN$WQL9Kv|7@a-Tz4}nZfn^9GqIEq!eKlUb3tTTah#+JN!de>PPg!; zKpbcOMCt%ZCjc~_d-SO+`@k_pw@^uP6??+t2a9D?)FP@|3RCwUZUup6qC$&^mNM+B zwScE~LTH}}$7U}rU9z$Mi(<0?l;DbX?|C+)jI8lfzP^dO3K87`kivKfg4_TP{4vJD zJpUn3yKs{#sKmP7-{*M=0{A(6j|CW*YZ-4mk@w<<2 zPIVqB&?4@VyS}<&;n=kq5EEBKYjj!EZBCJMjIhz4PMO$?U0M?oCaw)BP^C~xdCwGi zoH8X8tMS>RHKSu{6d#kV75&3IA67wRdxC(EVE0-1VxNmitpt zC^lEZgW`%7cu`WMD?bLTM}0d5Wygw6df-$$#v96UQl}89Fxpf0X4GTj z0D~hCOtg=+iD2JhU2AnWU)dq3s`uo)q%(Pr!w$x;RvANZS!*a%EQG4AW2deam}W#? zSMjHEx%Ftq@qbZ$o8EPSxenA&_%W|kD8q@Yr^YW zH%#y|C&lC}O6e5SZt~N8>{$^%N9=)SX#pjLz{9lua;HFy+3HGrN1$WiO31dsbEd3L zD4j!cEO{1xe<>}9NJYmPl%ck8JhcTsYYPH0@p$|l*a3_z=|(O}Zb~+2vy~}lt=BYs z>}PF(MoP5$$J$?O3$!$$E7?w32UjFBQMwn+06V377$NPaw$SZMZ6V?VdN*V;7v*{_ zi2PDo*eETm)VQD0f}wj4jl(R+*UE}8eZ$TNzr)*^o)J6C#?Bblp&&=5)6o^dZG~weGZV+?aMn9x=3acS2(WSsB3}mbII8 z32op|7>W|3soHsg{`{a_q|e#Ju@~RAvb7?>Aiiblc_X-bh#TX1KPTKqztcvJ6lc6k z@c6B8ii2u~fMHP<)FTvjUO4mYE?ihb4m$kBi}rTTBez*e7WQI|fk^MOZhJWNaPe~% zpS4bD|vWxpd-OaR_E+_sb! zY_uS9+|Y7cET@A78Nvm%Og;bQ6xXY4oOuEoMKKOTQa~X%i48FpJcOn7C2%yF1%b2* z*wN+2f%s+-{u5R?=a&$6h8bq3cpbDYgjlC7yIUFHp9O(L;R<;a6kd^E6OL7IKqok8 zxo!G7x`RTVjv0ZpR*DJd+FdGyyM!(6PQNY+pe2QC&{}(&A;4eCIYe?!1eX*CN3fmg zEXBv!Tg@qpwtf^Y z8p||;DeH-Blyy{p#=}w(P@1AJdbl~U28%!A%*9Hi;$>F!PQTNcmN<$xlmn16=Kz90 zeZMHxTl-W4Rx-=bmgOO|lxsqwgrPqwxw9T{C?S~}N$Gqvv9SP4yW?=TLauT2U=lor*Xw22q_F4}xjGi-} zrUgksK;b7o^#D3)l4Z>A*bzTXTD$`mH(T`efZEUsqiDeJZhz*^Gc}1UK7L2#HxK6B z=(>u14USs1ZlM!gRB$q!1)Tk!E#wpgs0R!IXf!yf2OP5=Ks~tJMZ6R5I8j6;#Boxp zS#9VdR#pr15XW0fo?ctC9#Efp03PvCYPV>AEJnd}mIUIJN{^)pJ)vcSSsVqqp{qj(z21UEi?+(C?{Y2n zY`4V@fYFn#IMw!J3ULpGUM0GYlr)?B2t0#rzfbE>;6+yyL5!`N*3R0zz|o>_@2g%K zc>O@c&nM&w31C*wn=|?5OG8t$416h#K6NOVExjJvxRs-jfPheGr=GBIkapG(-PJ?5 zw@0c$?7YV-Fim!fuzNhtu`INls|uEBKcCoyHx!RCL*$2m#*HGAu4^fHw;LsL1^CxL z>Jr2wmxU6!$QGh1U%3?X|G1Wa`BJc@RN&?iNB2M<9?+K5hiCrO=R6O?^7_+scX=-C zC|ua*%PfXJ^1t&}=T$HN+N-|JzwxT)WtxBHI^SN|S1-lT3F}USWEJM*KA9r4fN>Bv8bzT71e;U8F#`3zdXlyKUyb z`&!?uJ3Xr9xhcenHtNew%1ST2AX#5@-Ta0Ak72Z!^XL02C`FRs%W|1`(A0n7>3+FN z^WSrsT&1?`GA~v+RhKN6lve-`M_E$qW7hXI<8yX>Slq_(JPVV#4Zc@o`nVmBpm zX+ob7g#Ax0O*Hcw#X3O=v6zz3yHvvJ!sk>^&98Cf?P=EYfV-XguZ? z7L=ts{&XWLqLscogH5qzn3a+-CQL?UXUl~MPM;wl#=_}2B#M|r)lW;)#%7urn9 zh)$4}k;=q)=X1}_Ae16lfkRXjqd*bow24-zSJwajZ$H-d{?nTuf4ha>w7-2}{oj52 z!>1pn;`GO-it#E2^J}mBHOrLk=fC^ApZ@&QAO7&WcYpco-~Ig`{`!wU|M7QE&+E4z zzyD#XzIgqY-+p-i>6_W?`tgP4JG)l;>F4S5Au8pWU!3Dx$5l>_Ul>OhgUe^DUg<#r zoL*QL4RQ-J)!$wq)gH5TL#b4GnyK!m7gp#FLDcaomZ0qD6y*)#J`FvA?(xg1LK2}` zP;M5kL8n8h?OdiO^^4XX%utzYTaA(>t+1RgDr;7bzWRyWgJ6)@R?7DDkzv5_cv4f} zY-rl(>zGGuZ=eJdV!ibBCZ>F`0Caslo=#ZTrvqS9C?RXsxZcGyl4m|#7aRHI`SZb8 zJ-y%=qwBu1$mxV#(Aw()Y0XgKJf@KJXTKC!0AdLXE*s8W!h8dv3K2pvdWE9tm=aPl zpXCzJQ9ievFLX7}PT79z$Tn_wzxNZ*>auPZt=(P7)ysokdINwjQovRvuJwf__<>}Nb^`xnh|3h6~QlI*VpFQ`_V=awwt}N z3V6qCiDVuPyTS`xeg8*m04Z3Ybw;T6FM5NE+=#bw(9>fdn-M`aFBv%jvQa z=&3i8yc-21t*Evq3Vnn5hruZQ*#*ZPDa7r%O^@nz#P-zqj(g^2y`_=5F&T{X_3VbN z8`9T-o&d$+jl&i}X0&i9`&VmFW(K+l=rGX5O2rYK!m!$olH=5Y=uo@k! ztuIv&IEy%nS{aX`8%L#i@ygd6h6^NP3nOyWQ8u?sEF}H7PZM%Ih%$Q>4upQEjY`YP z@3ne;*DFAWlr6@#J3loSMnXZppay40)w*LI*%d<{OorQ+4V!1q8IUa7QmpxM(G6bf zE{mHB#*L1{sh|yWjNM=vqGuwmibukF+&6bMVgi=3 z2!Z!N@WQJO@#BLNdJaTIGTj+gT2&zks2)U4T#z+DxJnx)TOPu>PsEOYLg5Ii$pQ!>6x zXB7ce`smIjO^(Bi7eWKU^{y`%Y$!fp_%QvkX@Kvw(3nm$Pcs+h-qT|c$%AtlS{aT8 z+#5#?T!9zFqDRgf;#Ldos43HxKNYH&cSW>t)54t2g4(=$Ls5phNLp|WKI%?0 zXSa+M0X3FBb+nycsms^;yKlV0^v7eIxfHvbDg?JLqr1bGDXCk|f68D-E-S!)u3JU(haXh|Ortl~cJTV%@4ckKh%9Xp!PM zYzUwBb}Iwvb5Msn9(B0RkS*n3LAEFkur!F!l5j3$jj`RU8#%cR_noNJ5u7RXA!R2l|{5U87^dEWC_Qv z=d0{NpISmwx$Rd{(BBv|0jO2akjY(3t}Zg%ySaM0h*&5)N2q!lin@iqAF`;SSt9s> zMV*#iMhWzF%|q`_+@K{})aPzx@W`g*T^!CrJ2FI*1-A`QDn_W*_F+W9|Kn_QFmjh~j`2(2#Nh zL~tY!s>e}yypDw_R?g0?7uhgoVQHXUJV+R!y99O-F)>4dr=P18z7gy!+Eof*x!1RKpISY;pVonO4uvT}V%46`IejTGplh#+^;7GBeBtf>S?a)S z7~+oOvvuHZpP?{eSj9*o;WTH$#JU(~Qf`}WDyTIe4ZC4B?B8k~aK^V#D^;M}D~V9_ zP+#s4$_=kGVa!z<0gZ4#!?rNB4(O-Ry%mpK-0f*mMhdXw9N1rR@axftL3f%~e{Csk zjY_aV>)?t4nwF=w)74B{AVhRRWaYnr)Vwns8_`LO35g9a5e9`azSu$(_VrGJPB2hp_EP4yR=q|Pw)dOWEqwJ=9c^^}eJ2(Lp z9=tG*7#fEHRyoM_*t8(CyRQ+`Nqs=!$cX|dNgqqiN$5%IS;T#};ZX^j(guRfK#zTZ zx2gcPKBQ8|Qsy_|6ll`wIo7uA=u=K{Frs1EYoAz{W=1+(?hF4eg>UVuTJ!F;CG(sL z>zIpYthugQZ-LaLCwh_0Vu;El$2qSLaX} z?Tk{6jaE&+Pl*HN2R$HjX%VlOTNYiXUr;?h^o*Inzd(1 z5e`nb(ICl~n^i>HwC2rlwS`c0^+=TqO2%nh&(!=y*brC# z0Rtyl!&>qS=bT84;St#p_@M*&cIXFozlSW;g%8+absKgX4)$DJy-N(jk2&K_i&@up z0%?obuw^)qIpd5e&7k$fy{pmEwX`T0PJv^9cCMLx@SZwe@%-X z3Fl`9r@4t`7oQJCv^Z`W!JT@)GOgOdvI@A$n&sro@R9Oz<6aC{wz%n+9VWyZYD!RNTfN)R@}f5|*!>KN$<>2# zRuQJ*>}l$XoKIb{aO{pxSrZimJbK2sv15-MZl35vI3dCN3^uL}b<1YNU~YujUt9#+ zs>^}O=sxXQjOgSkk1;MWJ<RUgLX2P0N}U0zwpoZq5%opKYtVaA)1`M4ZJR2{+Vm(O?x=z+2AL@B&o|P! z|KZ#8-J2i3BAxrqx1ZI#f9-YuI_cd1^RGYu@lSvJ>D{0H>(Bq`Pt#rSAN8yM>wlwL z?)QKGzy9)%ba(x`v~xdv_sxf2w0kL?LrE!wQwe^tT><~1m_xtZX_3vn=oJ#hywW9{ zbSniFx8a^mF*pUqP8tGE%ThqIE>R3VFaBUP-XXAb4-O}I(< z1k;B?^Sd&2y<=uDUzqZ7bbNupOj4Rx<=lWSf&$rG{Tnl~4dYF5zIhPuwfLAg+t6V` zIoCJ*jwS|viovuFAfY5WM+;hWVbqeST4v1R!okYbgZpReU z6?>0B)TCR`rw$O5! zM(}GF!O=$uHZVt{{B`J4_7|D3ZJBhOa|^BXoUr$*H`DOcQFaiXnZ40)bOe`ahF&74 zV(I0dHvflVmKRk8yc@JjZ{>Kgqe_)vnsM(7uH!)HQSGIrK83>4j;0o(x>S?n=+tA8 z`Jn1P9-%N@`@LC2NAj_W%vH(<>!HQOKOKXR@E~jVK@nGBqJuX^H zEAzQD`6E+@&Vt3^Q!%I1y5GW7xPJ7ym~~llnL5)giuGZJtWDrI3H#;I{FMsZgtl8R4RwS2ktT9Q??DxdTXoXm<{NVw}u zm&~JL^m@T%T|29?uC)=aHhU?ZxQ-UaHeHtx;5Mh0DvP}l0ofidGmE-I2X1aVi$ z??K%i<8X)ir7PS~5ac?-8gzH?2ykLq6I_G)_5;=aZF+(uS?BcN2Q#nQHd(meOc&;g zS;~UjmG~9Sc~qWHI$;(Z4Y5SurVpfWfW;$f+S{zL!c7B9R<$E&-y<;cNJM7~UsF)e|#PHS&NA+Vn~ zX0~I>GQ>kTO0>n5x(eiEu!P9(c3nt1Szj||--iPKX0AdN*8;y!Dfl)+^hi|BQc8^i?R{O1 za6a5>!9f*&Xs{4Qr#r($z`Nr*m?ha=%KNz-vqFqQ>*XqD&KNA{pXob^^^Q~f(*%v~kDFKI3wi0fx2RwQ7$d)oi$j0MWvIvtb zSkz1tFG9ko)BJq8@-T2Yb1M>qifhRIYQsPhi3M#jUO=bq%C63>)V5wdOLX({VqakV zHeJjgSDy9)<9*R5D~0b0GnG<8UxPjLsb?FTAGkkp?uB2g_qRebg1np-Gl%B)!yp2^ zY-`O#{Z%!aU{j202C z?5F;}%NCtrp}~E;)~8S70x~~Kb1StBj&)&Xv7tFK3uRzS(IN&9m*uTVkN^1Xn;*Yo z()0cI@4tQb_18^lhtCZe4~&2J&Ab08wr~FD|8I`}ZH-zlHEm>AJl@cSSCR z(CROGAQ3k2mzdpj0!R1F-**TSK6FmyI;TaV+dL;HSx zeDmY4JG6gz|J`@*-+ldc@76#4!+-gmSkNEe{imP*Y2VC0{NeY%`S&@q&v$q`Goy5v z4y@3$cPzdP%2n;8j~eHIsGu*blewKCXi1((@we`mbegWaeU*r&bqwV>OhRwMpPlms z%w+J1n^J<)0q2opX`Ex5d!5_ZQGr8PTev|NgVQ=CoO; zW3=h9)kZw0`=T;l!j++|NbTo5orr>BYyj^wRC`~IVvskSBrF&1zT4$C1C3wlp%xUqb|&}&Ed|T$i_{BI^G9_4 z7-=V9ZSC#4NgqDF`SI7+&HInve*fX!*I)N;|M~C#v$pW$-gC$P^Ll|9FoW~}gxtZg*#?2N4WLkNqCane5CXvPY5+b;ow5=|yZ3TbbrXRHrD zP|p#qZeT-1HPDQeO67zZt=`YVgo?MuijqCfr#M7f;r6pE>~67D0ozVjjgr=;;@N0(3!kTKJnWbe?ZL~yC4<33V$`#5dje0g7Rq}`5H`4iIxeex|HjO$99 z-B>SYQ1zu7ivx>32{>m^3vIg&3u66_f;n!MV&%yvylW1(eo-du4pX{?nnI_(XX7)U z6XI+NS)9qd7RwHl32A!VKwK%a4|8M4S+_&<3%M)WOs))rekiy3qD**j6pSO7&=zOf zIN2kH?NQKR5F+I}9FGqwGRER5D41wd=%pg}0t$8>LEoS0^rbE3kB$I$N3~20A8%T5 zcE=&(_@bzNWvl=&3%Gr|`fMxW1P4{pBd44rZZtR}JFSn!h|||X+mV3XKxy_^kEx=D z2Wrfv{nCvFg=Y&cp;cc|Ug=#CjvmULxzYj1W@#WMxuE?k+NC6LY32HPxHP5C#PG7= z;0U`)k*{sXSVJ_BFRkSu27&Z~7zo->eeCL?VL)4wE9MI3Cuw5D`HbQ$+990 zu>|d*gs#LfkCaeQ)Uz14g+w%Jl2RAv6$(>y>uc4=9z-c{0-)fqA)g67KA72ZOT=O> z(`sZ5X1D{z!4WxJN=$E95#v~HV$eZQM+Ko@wPAi5#WKXTAjVOlF`l&80{j|ovL|EJ z$6X?(F0=OuQNE5rC{0!gOIK`X^bpOaU!@I2_plViY^**Xu>gkTw&8=@AH$hZ95$jb zQsq{K0Ov6vUt+lKxRkyGEme_V>x&jMdc}bQ2}BebM@LY(X_@HZ-&CiwQTVos1w}bM zx8u?i-RGD+nip8vLB{aA*Ai>!wV^0$Z^d}sPa{|#mHx%mTG%N9>1iBi5#c@N(UzUC zSR^NSOD#`7hwil?(W@N=5l_##rfxoGC9x=3!YCWjEK#>wF0YJdFJ&XnK+A1!<*!85 zmnc+vNsa?e)PxU)>l;=zB29Q!aP7<(Oo@m#aIYxJ#wOx0iuJX&bIJNtymn^~G?k#v zxj9Ey*qCR;9N}U)GiENTfd+eaC~_XrMFmQQ7+l`)mgameDdoFkr>GURFgit0uYIB^Wci8eZPY6ch|gCMaAE#50R;ZO{i5R&PF<<2N552g$w?t<;q zXJE*8cdb;nJWAH0FPko33}Px-V;f3tO4TTEWQ6ecfX^UI5^JN7ahBGiyJ@{ZF)_NA z)+PwYh6%|UD3_Ewro}z2O`TK7Lc&b6HYxZLaVpvnO9XjLn{!fIAm|?*=S#{bRT0r{ z+icZRWVV>mpvi-?i=At)F5+8F>yzl7(Vwp9ZP2A9PP**@9+Sm0QO;eow)A*zM&K&O zm$;`YuSev*6+J^`7^dRM)M#!RVfIo^@egR*xzs5L7($!JL4h+_p#nY6L|N?KR)<$i z+@`wrJSGx5YvB!tq$5Bwj7KCB>iYwuy@0dH?!<} z*_juxmbI}U{HypcW*89#t;?%=w$YQQj&dFqAxCQ`qqx&tadY;fPf`nlgY->XI&@_@ z>raF|4;r39ljx2!0d?^|K0d`!K%L%3G7T3O`O65ocQd3S4T6-1>z z@hY921e?c$P#G#uFY^Kvkr_R&bEe!V5P8@1K_?y_w+NLI@K!+uoo?F)qdxNnR09Jx zQ)uvwJD54j&Y@6ynxs0@0uA?Lx7W_05F)z>XUC8gl>4++M7bwlw8vK6!587|FlFjE z5~5m+W>C$u7o3`B>q>k2)m^kqTQ_xW7&MN{7%7!_3y$r=90%hyxV^Mm#T7HSw2iai zh{wQVMr$u8(=(OM;}@uOnU18XPCHw@^@&0qs#^FRTm(*jAq$f#$q`=gcguJrPPdm~ zJ2RmRu+(p_$2;ds+mp5<{4yBksI)YKQXYj@oL*40KXKdYNA|RACIN zcQ^Z(7-yDe*uBiWhve2Tb~%#@=zWgIRk0wB>K(Ex}ho4QF$ zYo%0as?%g0Of^qG>vR5l$Bv%LkeO;)-KEIN*oU74+?TsAUn?yhAzz!QAU6Z!EOUBv zFvI0WvvtrX)vMkTB_u1)TSjayVm*Ic%cL+6>!$cIDohu6aFad?V_m0Ykm%0~ z$_Rb!P%iZ&y+DIN=m^&&Aai}-Vzcc~0g8@(O?j=WEISbI2J_EMWr7AoX|HR(Dx&Cm`)BoCh&~D~x3XlCDg@rlX@T zm_~nN(c#HoPgGRA<(VvV1Xyi%mObZiSNP!7+Zf;B5slK3;X2Nfiivj41Ow!v_Xzb~r&G^jLT!CR9vI+^wI1YbriKVe!Bg}XYtz^t zVq&oB%?UV1o!c*{8w3)qF3t$-7%8VETCXH~NRXPs@IAZ|?$ z|7f*iEM>bdz}aAWWK)3EdJJfPuam&I8Ij=!g5&3ep7asX0)(lrPcT#0ABrK9Euh=J z)G(z@=Rk0Fg54xI8{4va*CEsBram+EVVdi=>23aER5(x>nUVWGDP(*xa(5`K>*K1{ zKY~}mzh4Xde&qn+_f!O}^FYAVd4{xDmDiQ;cRZ~iePE(8g?4QO8J>qCd7O++WF1utr3hT>#I*Uz$^8bjIJsA}eRL(6K1aZ^ zyV$EYn$kuZ2ji#%YD|urfNN#HBs+jhyhd@fNnjV?W-zu==j8Y7^24(R=T5uppVYy z7|gWrU_c0oX-VjQ?X30mo5znCs5Mayo+?IdUciq<0MvaPo=8lp zS)LK9>A3AL5GuA19mxYP6w~x69XodPP;tx7&KR-R6F!B=KSc_n10p|0%V~t`cj})z z5CIrqntfH~p-J9#-KWI;+EGwe71wkq zl;m!sZ`SBldpI_lR7I%96Cx4J)AyR$A=G!hf$Vnfv{$Ly#~_s56f-Z_!g}`@Ptlbu z{nW>22_MzRO6OhJXGKQ`Zyu9Aa+vL&Y?%)3hOz`S>#$DvePcTn`*9;#z5YDX#Ki4e z>9sihYi_e{ViRGWHucA-6;_4JH#q<3IAc5hP~kR2IE zTB{kaL&3IkqHK&DRfLouIvT+nd3f9Ep*N6|Uc#v}IH3PpT`-}>7};+&NtmD~r(~O5 z9uq#8=j8-r5tf1Mq6DftpjdBxaRp)EV{5JNrwW6zBF~dl(c&f04qZJ#S;2~R&HliN z7_c!YJg1m9Ea-)W4*|+{fw1&DB4$>h@hA@L^AZFgReu<12@S424va~C#?)}11o(6` z*+*&&1rI-6pakr^4%Cc-rm%HknQ>Dc^T2pm4I}%rH3k~NRJ#che=!lxYtsVhG zIi&6rGlYF#2EAO>Kc~_jdp-*ip2Ac@+%>BvfEYeTU8G~o!eCe$IXq?PuEdOGY`kGD zaQg&kuj|zUi>l~w@0;SQe!^k?-nTt>dMv6A_;YiG^bS~!m~n=`l)azKxdWZ?l#+R@ zwFgT`^_uExKd`6j)5D7JhPEn5RUmIk^$ycWL03Z=x+FrFtP+P6PEel*LEBc^4hu#l z9t<2E!wmgG!Ao$^M6(R#(3yMB8hWD;YYprmvI;$6m z93gN<9qs9-pU}1)u5z=G*@%~yzBNRTUAQ)tn5GDYKMDUR-{{o}8|kv*$lB*)3#0X;^pR-^ zRD4WU0+(uFz30SCGa{QyPaIsO=pV?gO1t_7Y-B3!DvuKX5{pKi0c}~5YB8wD4}7cN z|2Q{cUfBDQ!6TC?nyUuJD<|xlC#5Vs@Y{)d$CMCV=p9Sf1Ckt#1QoMxQi+7QqGvjy zqM{^)MHG1#sB!a94cr=cf1a?-$o@h4(bL7HIl$d#n-h~NYu4hAcFe*wde22w^=J`) zX1~23xIQ-G4zgt|24@@`_O6%&#in8_ALcE(pH9E(eLyMg)u$T zj1CPt&^yPhRL9ZJtO7xH3^arE(qIhWR0^*wR@@rLSg(1*h7*B7VOxEQF;qN*-d{yB77119xuIXE_y~!@ZSyJQ(?_VAgo|TNzt;WkdFAb+j=PDt_x+ zY1qkv73i~Ewv{?RZ>0vND{Hd;mZ90>Mza}4K;(M#e0 zTAW_>32Ui!VBd`01UxxzD{f*m<~ceDyM9Sue3)v9T*9@1*H*I-8t3H}J8KNRgyI7~D z3X2*2KC`HKEyG@~Ej|3WJ)cPbIipQgi-HY4hMh$b0I6SFD*JUF4~*M}FzM6-IS{&c ze({P^z?=*N824`U!q=xQ)r4|}!lFXG>L^flfO>Zmi35pXp4U0+>B3v>XticAdV3S!>GUFb2$Zlar>TGvb=0r z^+B}XX#zMW(6kB%jdY=QbOjNXaj2XezAxcY0KeM6z9w31jAeyc&t3Ogc%=DdVuO0o z1BJDsAMaVcadm3S`is7eikHct_NbR|=^Z4!PGy%_wQcQmH5I=Va+NhltN~R2q}cqi zp(e1_p)8nkv-%~dfcG~hgS*>V)~ghVO7040=nW}4(0{!20de-*`vB(gn`h-`#4`Yr zjUpD+X9NjCtliBYe5cPCa>SC`u^zh*j^%8IEGl}E5_}dEInlk+wVG_`+QP~VpRImn zi_r@TrAtw5tHVN*W$RvdSfK!e4j~&$WrfQb@jjwCkj{^diIyT()7PkYnZgrA-q$gyS`R6+{VFh{8dWzy81Ha* zTNeSx_>6s%A83FnG>;UoY^@5Tt^sd5Xt7YZCc^7OqXi$B1RCB{P44H=7G^O!8ZB%W z2bEBYUgJ_Xv?pO|QJ)CbE-bptU6AVNboa(u2b}Yo@$^;%jLSHoIk9epjD*nh*l{t` zebl{K^}RO`P(bOf4f=DP=qDI;VP;iVSJ7=A#idoroJ7}DBGkb4k)BNUy-WyV2@xNR zouQ@g{CYb7P|nJ7DDnwp2#&)P$B6(8avaq_hX*#U!vXWWV+BXoBp^d}ES~Ld+&pzx zR7+3u#`}dQ**LSvJka7Db}PHPKJ2baFj|Xurh7_y>5G18#ennXzLPEcgZn;Sy`yBU zx8}DQr`ee)*}+^QL;Nu|1$Phbd%(Dn2Fs!|(NmwsV<@UL;u@flD>cw%*I}*CYAndy z2qqP;JTx%{RKVfilzq<2FbZWVH10SSQYc-%vsriPF)lh=4c!!n!tEw@kjb(B4#c_L5(OjI$4sZPT<9Ua5XkcCl@Xgx1@LBa%b(|5~ ztShDydPEbqNJvF6SjWqoo#rMiKCK=P?gI~QRUx*-n)OriX2n}Z^ji=n+jf|3FU?Q1 zStRRJ;poa0|GdN+?j=@+I&}W-CDsyAd_gi89L&b5YHOvKbHw;r(Nh;q^_AkLe(f1e z1%-u*)kQd!K|abe|-Jv|N8hw|KRrR)tk59f7Bntyicz_fBI;w*>@j4 zzIkJQ1%LdXfBNp-GcbNDV7%w;hQ`}I3H{Q*VGOatde^N;kA+oh^hP&_WhvR*-sXXl z*?hbc6%T?fO9=TPT{x~^qzk)A7aG-ctjg6D|>)X(uM1j zbYa=?OoxepYm~skQq9G?u?*3LAx)4fZo#ArRetYi9ny84sc#A${S-xu%&>X zS+{+XE(A&%G&bqNUSKm;j*?>6#e&A5Pc>H@d%u=0JOEJ&T69tqM1JOT4GkCc!%;8P zaUKjFN1LXCj_Z?pVK?={ox7K4kD-m>PprqD#S6pm#mQT#m#L*nUj-Q5)3wm`?PHmj z`+w@v`6N&cU0C$%3^@x%FAG_mo02dRR8HQE=hZJg%&Pm|^%w4yb2M3WyVl9IHuN== zv!j+zkfdsCXy>5oSH`5O0H@$Mf5FD5t~vcNL6D&+?Q%Wcgwz-cDxsJ4!)YKt0FD|OX0cu>Wb5)w78 zZ^D5G9bkQ+3qLJIA=KQ_FFfcE ztmPaLemm-%w|L!7-Xpx)dDv=0`waSbqT77gh9t`1dLswRE;vJPRVNjL7f<;ll%Z@K zI$G@dJzY*`*SDupejYXG8W#-8RZsNl1Y}!mF&EXsrvSL_uI}41b4Xg=l9_&}Ku}fD zLr1bO?ZUsQE`H(QKa>jvsEoxjqP{o}LUq09)}RWZxD|KC;nZD=)6u(h!rh{DQFqL< z>AsL8Z*nT)xQc0q0twESI9aMtJG~%!=)E(lb~sF;Z?3b;pZzAZtG`p@VSA%O zo0LS`YIB*rUBX}UDx3)eUh#r2Xv<|_c)`F$Cvm>PFy>d8c^PSPW!TORsPHh%)`7ZS zSx-o-oI;daL)a*rWZ|)chyC2Yk}OQR0a=GK05?-%FS%g9hWE>f@-m45?V=0l+}D>nM$WS3HSj|Ia%O!{t} zp@|nD7Gyvg`G5yk5)@vz#c8a8wSKovD3jhBp>;Mt_lX5~_VOX+BUM=a1-Bk|0Hg|a zB{!wIt~y4sUuY5QIfbQ|2Y4UuG7_&xb|9991HsXokg|e4G61kz^x?KzLaaimWo4y* z7CgOW3RBRzD}WkfV+J%`^j-oq-lvVwN-w2v^W|=Z!Zs*ku-WW&7i}pN)44Y5r3)>$ zxSW_}&=Kxi4<;DA>YiPYx{iHVFN73@O=tg*DC`f3LK^V39S=~9T^C|P;n>o0S%ta` z_eN-kWj(7--gMEw5FboV3WdU~`melL2sMR5{ba$+F?8fiE;P9gcH{h&l8#Jn3b-yt zm9x6O-rAwGMiuAG(|foj3I*1d4dR1xJu{{iKul8tos9iK<7KM~?FQQjo%VAbMu-nA zgi=u80^sO=G9Os;g7K!pCnc~M3@Ys5$EMtL(5xEF*;~Jvl89#^RA7AB5>*c=Op#2e z#~^XN=!_t}B3OKxP~otm0yhUVVsE8FU@<%Ki>j{W+1=Z$Cd}R2Ed^;6{QibDwMFG3 zyQz*vGUVUJ2!#i_8!qp8f<32Ve#P8-G$t?9^razvNJm0H81hZ;$n(+9ip#bGxMdx5y}Qmk;@Rpl$ZZ?-(PRVdOZI3jWwwjQ= z(UwMNOR5~%4c`RiW}3`T``n$vHYVI!?%Rv$kI|Oc=kBMQ;#h7?CcWC|BGPef%^S8x z2~8#i1>Kau&Kwp~K_HgN@`{Y~7!D;VHs8_PyN9YD&z4qK_~~Tg@>-?NyR!|%RNCjRPFjbnhn@U zmrl>!xod2jjtgbdSkP}JzoXn!;KQ61i4gcO%Q4&|1QZ>C%0f3lEeC;;BMq0E3Buax zHD=}i7rK_?K%E4x7Su!~20E&<`u=%>02}L8crRV~wLmSs%cNn^uZyrHjjtEFmJb`S z2q;mR)Qa%2U=$OCda!hf%=>VwTN)<@igB9Q`|~J&m6}o6!erd3tZ=F``NGZy##tDz z4UO!$KWX{w4=tZ{xfqz;*t*~7Q0IHo)w}9^ zT@V3P7ZrgP7N1~rbE)E1PLqN=7}~JimKiOjf}mSZriO$k>pH$zIn>qIV2!Nx5|UMw z0u98r*>K+A~uKhACA5;B$Em{&jBLz_Pl)`XW~qwaG`f{LY@K*-eBN2LQB|e$P_v}-I-s2FF8xZI zfpFpn4pI~26h&1E(No9y?fRAvAcWs5NVzU1rd`k z9jI%;IbGpPAE99nxem;gIi3rnWc{*P0Qd{R$A8<==`mx=kv)CM~fksfc29-ss zZx*yH*J?sMXPsE?H7@|2ne2KzCd8g>JiuwBizqbWhgu*wGO!&HS}IW`6@zRiD1fd% zBi@QMSJLA}E1<>D(a+Ck8dlvd!nt0%&`iXER=3{iP&HqL<(j_Au^qZk$bzC*8Ll~~ zPFDFI+ht<{d_CfPx>68zrFcOdg`r8ms!B)J+v$fd1tv(#B*jZL;+YBq_l+W* z+540jvFmpe?AQi;i%W{0#dCho#1tr`%N!<0jFnQl5dLR}Y(8q4OwD{{sxb(AfiWlF zz3}wewovG?jBD8=I^#W~=ML=@Z+F2ktYFaQXb!^^U6K{XGd*Zp+3XLPp8E!88X|HX zgRfqfQu%rG*R!I|fV4`>Da>BTya`#u6I}J1QC7});Hj9}BIGeuHV3v-e#ApCE_%-< zsI#C*g3pO*43AmBa7INPK^>u4G*nU9L2&1ETxpMF*Fe`zCDIbzuQV zU+5?db=g>V+-)<{EV0mq1d$Myntq_$6INO(YJ8s{FQ`fm2OZm?b@mH=7KZZd#eo?>KemsEDAyM+rsGJJvNvEN&c$H)L;)@ePjaTR(y%wu%c z)q4Oe=rbE7mFj8e>(R=i-L@R@I4@B3F>O<#3m1!yyFsiCYKFU>3nZ3#4Pp6bgoVfO zekxktLU#h}gMf7r8ltfFao6QT94UjuVh`;P#)N+jA-E4`Q z`mOJ`>?IZthX5>EI4nWxT4aj(IH)jVvtfmUzg#r6Ry`GF5Dfd{jD3(3ggK_!3r`eg zk_E5Rpc57wZ8s7drh0lDBf8`&p7iQQSiMRx*!u~_q0$A{{H({-~Kui$$=*G9fO1K zzDbe!Kd>-<_wmEWPhSb*sQx$gNny_v4t(Y}Y8GAMOZ5Qm?pwZ^Su*BSw#YC=slKNY zhGhny`JjY+u6n^?$4ErLY23!^h&i=O2&B~Ah;EGQ3iDZXaM$5PUL|$~fv%82t0&dz z+ysE#hUvzol0E3BT-7a=hSS;4aw^;C?+*@s=02Ni@Fu{+=qqg1lNpn*^BOLQr!GTb z7HTpusH1>g{4nbjW6pfc>#`_g%}WniSLwoy6Si|$p+AI0*=ddw(#1=OIJqiY9#>Ps zXX{UxRXA_uj~fV9`D#^B7Jz@J4w;h3yp*Kyc6xK}OgiHx8ZghJ?pk3RkBO&ODi2tR zT*B@8qGQ{x3AJeiu|2Go)M6PfX(8ko!IF>r*l99z$7#Bv|gevPks2U>( zDr^V^groQ*7_{9oI=vrg&e3$$n@U-^ddH;o!na&OXh_O#bhPQQF!vU4c1p4nKHn;F zY@9aRV(%Dp_5#8v3mhuK-83A!Q_R!Y_usEW7l-97jQl@ zy3P@=!IGACMzjsiha*^|d|SQS^X(cPXNPghSQ*VtI>kw-;aY~g=K_aoHifAxt(Waj z+>A4X<N|F;x-kQa>3+j&Rgg#-dN#c`mz*v5BKbERT_K<8GHPay zHpDt3L4%v+3?D*;P81GRGM=lFUrg=TJgi?RB{*68eoxi(aQ9u5uF4ZOghqY022ft^>w5D@55P0B1m$zi;WpZhB6|cH7~Jq9!pS zax0{H#Zqw5JM`qTQ+eSB9Y|L2;;hpmY>c3(;HAy8j&)|wH%ApWo1THPg(Bi~K_pg< zv8b}kR6)9lj;6KFB(qOOMsV)E$@l52JQ`xz?2Vmb8I`4;%7Dn!Y@?>-$~wWjN+iEs zDU6e1QR`Q+LVNXoaxF%s?>z@S2JF9v7$@Wf1*lPsqVHNU=quBvBcac_D{8Ygfp+4W zBU`k`rpi@__ZTpA9H*)n&q9J;XsnlTeHMmJ)(6>5Dj>7bFC1Zx^e!#Sr6bR++V$%S z8cq7R`ZPK`%Jm9LRoDBX^{J$>J4S9gqxyC9T`od%PQ#V)ja)<2tKD@aJ3zwa<5;G$ z;&Y5N(dBZ8HLg>QmkMdUaRCrL?L`RFT`Fyr70_Ue_z0=Ue$V6`bXDCtAQ=%El772;Lkv~6D4YEXh~ zUB^WC5|X3QRj=uu$xo(WH6vg}|ND6+zv{1gx)t+m+j{H=uY25foe?t^gsy5cdDUc( znY@aPXeKH+TqQT_ST8p)5NNlVe8IBkp2<@uD<|mWFq6*(!>jP*InMyI;f~EfFsg)R zRxNlAUG-@oPsN6biUR72iHhRZ!a!ayQRgd_go4bfQa;6`G=WDch_hzZEe%;X1gr)+ zP1AC)2Ue^;$}_t1(HcyOwiE?QF=-9xSJ5Uwx2h{m#WbW-|IOmJjL;G$X1E3(0Qgl9 zzu~;OtI|>)Lz1d?gnyWSEXYvzaG1mV3&%isrUDQOv2598T?}EJeYf>0BWe1(A>xP8 zdP-1S;u96s<1f}!6g(*f9M8k{T_}9SL5`Nvfx1yr6ld>3*VwQ zy>%x*QxcSrRV9}oEW&&NdlVR_`@)`8DEFWpKTAwp7Eed%S`=m3P_6QvOZD0T=Cru;uW&WFKb1DTXl^u5{y-c^1i37e{}4h&c+` zcp@vWBP%2^<|G7x`h>1WSyVH{dZx)ppy4{69KZG~q_>eL0y@lO*(Wnpn%OB9N~+e|x3CLSeW zl!E;}T&kDvjjY*~l{Ql?-lp(a$=_3WChdLm%YjN-Gv7c}*gg+?Nw(>#3S;gzg&$e- z49!D_->&BCnGp%nl?wWe7F)&KwnJcU5IllDqzYM8FbgO#!p8|H5|C6;;K!o# z=c+y-m|NwBN^4b)kUY5pwbT$g)2$Va0@jL7#f_@p0b+q}dSWJ~M}~lO^TR%8Yy(jX zYPvxi?nZr91fp`PX;RwWOLdizzg~2@i_VKX6aXHxca@zAw`EZ2 zOD`+a;xZ2%!KvJtiNwB)HhixWU~p`xMtsrG(l;EQ`~ml9-6cc^a`UO0?$2>yq#c%{@+w`4=j-J8DTpk(phNP?hT?IKFdw{NNT-4*RRegOl-HN?#s!RMi z;Mq_MF43L1nwFpEm+Ge-G}fM_m}khSWEX+>VJQoA2vc#zCD-v=DD^7=dsqNS zUNL^jJNlY?(47gw(JBS{&Jq=$R0nF0m4)D{E2FT&u7o10StG3lgPN3tFcfc8tVU-u zj$zC~RU6@{qTU7XB%#8wx`vKhRD?0X{Port(Boedx()j1DtPi*JCJ@x$PXRakzJw2 z4hW99`b|(d9glLL!=vYr*t8R}S=`z?GsueT!+dG`M52PcP-q4DKf0rO8 zz@ySJYK`6Ov?3u6r{?gGV^K^`Y}Kd6cZ2Ma!!`?XJ4KzY$4j$rWc_d$1C$20{^(bnZO*D2T5KD=3RAI1S?x7G$M-#Mfel?B)WxS|;v=v?*({D@MJ|PkF3} zad$tre1)N{N(TyL+pZ9q@vK*j47)<@nc936ox82}O~+748R|mlTUm-{eR9B#Ebv1- zO&d5MJMJMfKU%NTmeV71BIlk8r~gtvD_Ca*KgB5w|DP;c>VhQo44;?)=gU}x~x;RT|XGaMrigpw)lBHNh-oY9j?$*@#Nik zEyW4#GzBjeo^hEcvv$!r(>w}F{!@DTh9Upo9!?c zWwyDnkb_d?xOG#mIKwsHlX|?^hkM!YdMH=y7@+v>woLJKK<$Tcz4eMG&tjW@sxOw? zi+y-3`=NTU9xt@j*e0?`Jr0x)Z8ak_D>%VNj0(`hW!@&}xW4dWN0kRcGkqc@{#g%E zzp8?XRZlU^`A`J$14SR4AgHOja!Sp|20w2;sxAAmoanK&Sz(TDsQXlHdZ{cn;ROa}!Eyj|2n_VtPnoZUtvG(~ zqT`OE#Vrclabm{+OR<%?wcFVO9~CoEU=>h76)Ca5czmHSk5sA*9FV&$>=&QNQ;r=m5iwPSdx3(Od~FZj=-I9{rPomyA9VQjX0`K%O0R=7L7T%HkM2m4^S! zile-lZR5%`P)*HgJ#9bwc)%vrq>gmfku}A4ZtZ6GRJu5US&ia zy4!jmPd%vO_X>38qw`qrt8SShwI|zs!@b^jY`Xa98M;{|vM@$y7^Uw4TLrdwuw2@) zv1deGP(ucD?4cur+KtqSEVL;FvsI!i1NWSD7(Zv#n5t9w#5K4Y1r(}7sQJKpB_I*L zBW#5gB@Q~MvKo1kEj&R=7%UD7&sMg)_^Xsb=x`~v;e9AIaQuYES;%DL=_uhkTwVi4 zDQL1%!y^e98neWqsZz=;WE~Vvm?|ZtGmu(sm{7C?QqnO*(Tl~wxj2V3{xt5wmM3c* z6LgW;3Gyh;2s}DSmhQyPehT--B27kDXf~+I*i^&lY$xTX8DBmeb36U_rVl$YH=a$m zzedW?w(E1Qvw(=z?e9Y(EIL6XfE{DzMT``U$8qB16KYQ-_XW!@A?NaWp-! zj_8FlhsqHoWJZX`f?IpW;cx34cQ7)}UGEH@kxESE3-%JCs!=pANfYicjm@!OYoib> z)VaYSPI(^Map4KM>Yrd69eTuL6$E2%mPOfRf&{j#b(_nqmsH1-We)fuWmqw#*5OfP zWK5+})4_GpF)>>H$OzTzBkU>{f%qzIbQP%m>po0+%FEG@x`$JxJK_|`C38_%h(Gvh zRl38K;W%3=?U{Wzthc}UflC?n%V};h<_Sy4)Nu}`Iggl#f+~xR$3Y-- z`foM@>ZFUQ8tj7g&}Qf;`wks)XNt04Q$x88xxP`=OUL&B6T{IshM3EAm1cUXBkE!! zv<9?0j5Dm9U_Ntr7`CAlj6VhG8X}>q)h!6@ve3V6FxyyOdw9s`5Gs7qO;%PJoyz)o zN(T0(d`!3+na3TR|MuDM@YlZX*ZRxC#z$*4yZ*|6FAI6(ft7Cub4dC@hT|M5~)YhR)r|P_ZlVY>4Y4a-W z%aw<|tv5kk<$XhSe{*N>DkgM;LUa?tkc!}nG@)&%?iI-Af?h6-1NH;6@W8`(Xg%4M zjrWm>Xr?I6F8W-4oshjzrkybK5+>V^VRQ(o+QN97ag|38y&a3fZeI0@x`~ED8^peq zvX+j;EQB!4!*$+Ldi$97TN`@(qBf$;PgOgcG&D-SLSk+U3#JXK;)i<%>L!5Y7UHEq zFe%@6K9mp#@`0*42&U7b3Vc^>ts4?{#!Jd#!p)`HBHm$}m}^sYgXPL-YvHceiflbH ztU`*aRbt?E3OWxCZ`rC-;tqZ2mzF{Qnm@nzf2xUs(s6n zZO^pcW!dr&6x?rD)U&6K^7qaXr9e(ha7f@MukO+ls@Ky@E8PTYve?5(lGchx8!|Gibi67!$@gkeVp{>;=LJ+KpqT=cMdRt9G5w zgkH08+Up8^3!^##5ZBLyy=C9^LW_!+`Ri(obb&hQZFbts&Q|Yb9;SY}f+m_U$DA0@ z2pHRhOI6kJ5L;0hM%##`desi;Y05QNJvMEq2rhO!4y(s#=PEC$OeqZYFg&FwLr`0& zKKcZD7-lfoY=f?y@dTn+LKLn?+kaL9>S402(rV1<9rqCdMSop&V80nTWNrmcs(9mU z*sLgQdgQpPj##+P6$;NSjO}iJaX~;@-9CF{m)D1>DaHECh#~4MFY}SevZDYJ&2}7S zpi8U`4q#pBJ4KUXK=8`3^38YZx0mU;EiR`kkC%QWbk5JvoQjP!L%&8WUEtTJx~Kxv zS;L9kGwzxfTLl&4XsmSz$Mc|?5g`|+ zgDXUx`Vz23>5wvMHqQWUy}U|$aRCoPCpXrh)2|)sbRI$$m#P81AKmC+zJxj$I#`=K z%8VOL+;GM0*_OFf!1wI7A*?|M8p-V|3Rbzm2o_+g`b|f~QH9|mqF+k~8=`eP-862{ zbq9}~J;PRvSy=^|RdB6Qa7M``6`BSSqKAW9ttwr08?v96O|3)07Ep;DWr~qyegO>5 z&B(_Jv)PO32KVap(?*r@XgZg5uX#l_&1D4Kti)iCZbVILw@GBDEz;?*s8~50_GkDG z=__bZtYLuN>?qpuj8@#Zz0?j@B_n+`lE_UUDFxz{DIG2MH*nBJCbpjRb`>? zXT0TAI9sRt!Ku>+o!8uoChj79SV!6^1?b>7j|!JDR7$y_ME^)*5? zo$hmJDx_4-Rn<<1@G14WZ_U76VuK|fJdjEuZTp<mDrh zC(P|f8ZIioH97){#ouk8Q`au`j1rOCn9Zg<_5f6mYrcvu(|{M|s#^4-w^Z2xW-Wb9LaBgD&lc^m zJ-K_1FbV0oB8)r^=w>mvMSa<^XMM|9KXCSnu8H|uwk3{tX@*#@?x>FCAfTOkJM}1) zGA`TLaZJoAx)E_wY}lTLO6zUSqNwE4rYKg2Q&)+h634B9!Y_9InmMx^>vUTKs)8sy z-kY*~nZ$`c*U%DT&q&0&6|YpmZ`647cVK7gS3kX#;6;%gI~DvV1ovyIzUpc7FZDYZ z@Sb(+j#I|~Cj?<0%%}yx%cjqO@+tbG`z@!Tw4q!@wiIUB^+>Hr-iJ$VllN7xW*pyZ2o`H zj`vwF^BmDk*p<=*HA^nO4P{32MM(3~%W--W1n$w;Q`}(RH-(tW?A`04VeW~fd_O%M zZIC9Nj1d~6;^3uY+T4k=b6MEQJ*Fiadn)EjwHKm&HUQYiX;6f;0YFe(yQTUjN4X%# zq*u2&)4CF_Ks*CR!j4I;Nmo17h&BMwn~bc}&`{(%>?oS7=({89&a?|Rlm*j!6>M{i zN*LEMWcH_&A_OVJll>pmXnYl{cZ;9j={&r*I zuYgTwnzNv-u15ygR84K-)qOycmbJfm5k7Z|nZp!!(f<=ZHi=w@xe;fKbW^I7e8}9R zp7xTz{BM8yUxjY|Lm&QL`dRc4bUg|keiE3o)r#Ss94r|)l+jURj*PVFLMV*pBRDpO zt#fTXD3`dD6`n>MnRb*^1${Hmtl%R23{n?Ge3lAm5(h}_UU>LA@ce+QQT74X77l?v zvtu@y&7+Y@wrlMKp=VD0pd9ECHw~C#B%=VI!#OTYmwiDdkHS z6I~Jg4CPdt79=)S0b@$#-KTtnjJlbUL4L5Xkh9+fr67bU5~qa*=79R7z@9*a(%H$< z7>cbMPjug}vyHcNOT&>H^KQ~LYcdG34~9((Dv^MVDCmaYS1ilHTDgucTO0ev$OP@b zS+68T$1-{z2VKL(BWkE3NQf~RJcUDpJ>hkEnySeI9S~7{Oy*rku0)#C$>KIn`gRby0=Zi)L|dz zadn5V=F*PrI0T$ZM?cWcUwSTiu;sp04=c^iOnz27#+_}ZcCmpD&fje-vZ7?qrYAe| zVUL5L4Z0@~buN6K&;caRjt3-Uopjol0?-e}71b9eIX<^6q^hD|#V1N-aM1lfXaXn@ zVI(h{bHcvT2~|y?H;HqNyL1=!u3GIFq6&XilDbkltPB~2382U5gU<;5F}E_=YgKP6 zQ8yxA43p!)BZd!($ti2+#;H{4qB|FKXU9cwwr|IY`uuEicJ!FAwzkOyEeEgqWo{uL zj>Zy2$WcGoIk=`rLrvvU{h|j}gh?FRb3zO5Tn4O&&qGDF3Vci+bzdBk1^DYJ@NWvP zjv|gGIm%YBHum)jO_@nmSZk=Tw0c6pI!wkiBSOR6RKJfyK0&qbWqR1=ZjRuDPD2|& znR>@dn6q*o>%ps)e#pNf4XUVCbhkHKnGc@lur^h8EcXrdVPZ%Fr6R|psHxvuAzcHZ^S6iv3#^(GvNpw-UV9*-gO?Raj;`;d1g6KiMFjsDUb^DV z!jOjfemA9UxzACzI@K8_2B?g2=r8IeLT=QPQdWulFoH?%J9447Dz?H@w25y}O}8V-wC5bE8>-1-w`PrMy~e7zu9}Xv z{oYM!->(}xw#VA3cb0%@x>rD4%YeC%$>dO{s-U?5K;)+6YegKNL8BsOY3HeAuk5i1 zhO-lf0M?=`m{=>sP*Jsp@q7SdEd>MSP^q9i_3j(;GoCF96CD~NQ5Po$j3yPO^Jo$_ zelaW^S%_@=85VX?_e6Vxxn*e`k)Y8Y6Z&C_d5Ca7%cH#iumAG#^@~4#LmuVz$7jcv zU;DamXgxrzpFMuGWBOM76CeP7utern|2{F=O`oV*e<-ZryPXY{n4w`<-opD`tj zVUE)+rcEPvHzka@$JN}m#~YyceUHC3l5;U60WWqJuEBNli|X+uRib7ay2EAzbN1#e@RFYKCI z1LNASm0bYkmbk2FX6%rf^iuOoe^W0*cs#{0p1aBlZ#~_rBQH=0?;5VG6AVLZ>$cf; zO3;V`Hr!xFZ-aD}mT{}sWfA6PqjALAK@k24AU_rrRsnr|@bvI77_JB=6llruuugzDr6Qy5;T0^*~9WcH1Y0aH2vjzGL2GEC@pW7V@z*jbSA z&=<39YF690-LR~&JM_y+=RLCFwVYtom zRgd~U8CKAFxV#~moe)|e9S)OznbL{9ZL{qh{o88hU^iM;H0?GwglU1^j^icL1i@-@ zCGJ*qyKb@Uq9=pM-omF~Aei9 zzZ>@M7&5sXJU-E%5w;fc()}rGrqEXGUvz~OtT${IuRTuoYdZ|zFSHhvrj?-(#As9= zM_OhyH{A~V2bpO|q+1bG5ORj+!H{}$Dl!&fNE;cclB5cudv}y0Am(-=DW~7h!>GBM zK=#REhziwSue|%%kJHa+u9vpy`p=sH8%~YA_sl2@6Ua+f@@&?YS3L3PZjTp)(AD;# z5CqekLo%9zM+g3j2<0Ryrs$xr>-{f@{nAswR^QzT?4YI?mfDIS<%&j$H=}GM33ciA z*;XpXOGl|xbV=5>4Bn(x)-B9T*j+@#MlpulzrdW;opIc;)Nt+iVvq>ge_*?Gol3(f z8{mZc{P@x*(OX>~k^)a&w|n1GSVD<94G*J4gG*0}+WNe0v4uixe4Yfg7dHCZ0$rnQ zJ02Iqt*EUtoSzi6{o&7Dxy9^XcSw0u5BYE`h_N}mv0I>f;)aI6HLZ&XhF8tnkVdCs zVNcgoiJE8Ssh7$*+dLxd$E19|4M_Va)paE5yTc@?36A$VA>em1qFHRIR0o@e(9v`T zPBbu`+lPEBV^lbBoxM{%wz%o3r=uz}Cc$$d6T#XGJas_p(@#>gJn}r?V1oue`(^rn z^dk3rg`st&NFiwb?Ipm<76L~!N8uPB@FO9ey>ssNbbnj?d$gRpQGm8E4mBUP!$5Dc zS4i+YE)>X$|5|~}b{I^7O!?L*aD%B)r~OtSLqIS-e84Z|B~(_=LW&UnMaFtXueTZ} zTdxI;6^GDj7_q-L>9&gz3L_ueVK6~$>oln9I?9rqU~yrAZXa~Iu7(4$4)lWy^dNTB zQ%C6*)E3mpt^1;~{74=uY0QG54`tUHy5@T9yZ{@s!d5Uzic)yS3`~y`_B;*u$k7;p)8CsE*sr@E_(Vv z4IyIoeO46${#p(lwoKDOmu^zx3^Wf((Hr%+9I-n;N@* z?PTS-&hAS~#Qk61z4+rdED>M7`|#$~x4-TmwnTjM?%k)aEfJ5aGt*%iK#7H2oy5|SeetU88xWa%I2Auf2>D8{dB5EvaofO=pkFlN;@ zOu&p;3pK+C>L|(KJ_BP_{|lMDCPahArW0?=FL%q?8@=rEG~egVA8dHD%R^Q-AdSrh zFtw!XZ2kt)LkqdjtG?+309OiYsCNr(R9wi6?R#r&kF&yZMTbH+0IU>k%xf%lMcE0> z3kKpr!BFA53$?FG+N>_4IWbn24G-%(2jsSuGM96+EnqC=LxYLh*>pmu8yLMAjMiO3 zzNiAD*@;u=zx0z4mbpksVomA%HjT&pm&@JSDX#rknV2(z9I zxgGuE3+-orpo{_iN;i3iD6r$SlW@LMWI#I+2b8%frXJVL^CUg zE2gd;m!3GW{F??OB=l5{gGSW4=?grPcZ# z9?OCq-tJQOSl?YjymU3Oz3UIohPl!dY&;86>;Py#9Le}5g3xh`3~;vHO70bnIURZv ziqcVovr*}}pS@lAV%xM0c&nIvwGjEX!%RYfTUDK~6QXAo_oIIYppCN;I}*MSh}_0D6l~iH)&_ikWu%GSVLhMbvE0 zvMO~{dg*jvoS zW;cB~m8+u>Hdt=N>X%%k2hNxrLb!5#WKP1#8qwTV#S=`?>R{P%v$j=4U=9&d9UKAN z7tZ6VxrLhUCUo2w)0j2mZe(fe`(7AujP+vkiym|w%$spD1U(`(v3LDb%QO(ujAoKI z1U;ItlHfGWd&uQgQFWM=XZfM*VsHtZ9U=d_`9}PQVHi@r(TS8ERUv*@}qE4fJ_3_1bDPWm;CteHgGxaeS;65-+lUIGRm+2 z>CHn%`ThG3pWc1tzer~GMY!XEmiMWd2ZyQ<@50%wwWR~23{Umg!oDeB;5Ac*ny9M` zEnfjC82#P5b*!-HX|_H@lv&N3o;kpP?mi%Pm7}R*@j4t$l1|4eW8tiCqg-?^c$+BJ z6);RGlUaqnSj`mN*IzQUtayl1m?Gk$K;zsMcj5AtD%~%z32C9WaX=~kR#DauULPc2 zIu}fv6e`ivy?q!lR8k3>&1|MA$(d1W!&SWCtP|qbB;Z?=1^OMT^|~e*x0zeY zW`VDYSPzsWmTG)mih`*QZ=)bJ76nW?U5|RU2ng&L+^pOQ(_yAOU}Bte6A@o;Vay6;T*X zX&AU?l!~PhiED}jt*iq1d$&%p0^I1a>WsE(p>Xiz9Yb#yRIBI`P1ad?&nxl8kZteM z9gn?Blpu99Hmtrf>rZY{;6N9PPoLAO_@gRpn9Wg9l|WC%@C9=Fl`N;DwZ#Xs7x&5= z#wMD@m57(Fp;F4VTtNtC@XNt~;s+FkWssHcl*KDzMhE#7Ztv)tkhD<7-mV>52W-}I zdndxlR0OrqBn*oJqe^`+?6RZ{mA<~QQ954hglEjSZ}iw0EFe)Rm`yv_BO{;mQfZCt z{(|4xQJSS)(=dR=#dtQWR3&EBLFifq9&{t6u4X5o-bwx2+dw)Z1LW@TWC`Q>@@j^SkqWFKz9wn&cU_oy@guy3}mSYQdVYgI(JLB)M zvgFA2EhJ?{$)+criqCl)2U}L$4{U*Up5tm}Cs_py9@dSe15{qSZs(CobvPuuz@DOa zx{@XbD~JO>KOcH#&12-FleAVJ94HHZyKYUtSb${IPq$4MqnMe6V2M?-^9C;#QyD!a zmIg1y4ScU7T_HUkI1jt=VyAH%C}OXjF6D$rHtSvbKr|`)ZT)v#D9T`WfK$~9H@e*z zYagCmP7qqz;uo6){M!{;6xyGgl&0Z}38!EP%^RIC16k1)b!~+k5nt9rzPOx3Oh_6% zQ}m?r)Pq?+3)AV7Drn+xqJl($W6SJ#>ig+>>k3B;^&U2W4*E)yQfD<`R#F<64s_HP z6*n+HRNv}Xx&k(gDl6g*vYOF=Zu9FEok(Uhp4H5Chi(X+JI71ddUDLFa2r84-rL&y zO^W3)-K1DV^|zr58C%8C^e*%s&&`de+vaRP5X#fM0B+^??wg%*dpF zTJws~icO2m;xbjXFk$}aN(ndV!>bk(vR8Csx-zSn%Dzs}VV%M~yUqpAEyv@gKsG0U z9SIdouNdm7=BxgwdSD|`Cg?98-RQ~yv8a?+ggW(fmx`&=(S@)$nR$$cup;x8p>k?q z4&8TWX0IE+WJK>(#GWcdyjL}$Xk|ES{+$2I@#*pZ{jgwH^KAY1@y(mt`VY_RPaogE z`ul(XRr$-GZ>ftv{(XS8{Oyl___tqv`tj9YfBxmC-~Z`(fNbvqRo^1ZE{ixRDH&Sfa^u=A!OHW-jw^NxN zOSvG$Dvx7r)PQqcXfu#n@eZ?9k~1na!X6JsTr7wV%_J=u=X44A*SP zi?f3RHq``P7-cmfY@6B(c`dX!`g*Hk+(Y~0Y6CobCCl3P>!qY%?~vZOa`Z@aLxq}D zC%;&~ve5tE#*&wHt7pk7X=qWJ1-5=|TfZ8qzHMyJ zeS^-qTySbV^G`SXgyONHi1$jgwdj@#Dh;OA)T?dDV28EOXEDH%_IkjR9zX1 zPJu~d+@{xo?_KjcY)!w$d@OtB2i`r$htqYP*>Rz!P*sp~Do74SkQ%ZW9q%_Lu`3MC zhKT{BjmEGa6>aM_?q=?Xq~bZ!Y#iIsScVj!;Z@ntUROmJNGXFQER(_T1s2$nnM1}~ zau6p>X7>86`bbG5R0rps-3|su8Ldh=N2UbGlc7tsh^H&G~JhzHqVFAQuIOAc(jKG~2EUjpI3P zNK{t#TRbCHod}(bwjr2Lq7-0iX`4{NIvdWJYwYZk*QSI#nnd-?jtBlo}=QE`usq( zLFsbRdlej~jOxs`8H+f@O%)^2BO$gNg>5y?q25K$`fAE61u0*Su$py~e(@MtePgEY z5a6ptfpy5nN{fg^LPZYvd+JifrK`Ac1YrFz2B8!@3b$L{M#!R; zO<-x%v8S)3*R0BNXlvg(%%WowwxAuYgQuTPzb)Fn4l2r7kAkd3D-In+#moaC5u@DV z=HT|@&`l(QWQeGZR3E0L=yJ^TQdNfUY#^vmH9H44u(qX=ZLZdAV_?`V8X6fMJGa_9$mkK;8_n^mP2J%LnvbD*sF$cithXLHD^V*Jq>COTpNd%T z23CYsK_$f`8$GV7v3G?lXtAD!P@QrmFf2T(LZ9HbDoQ-L_X`7G+v@fa$rar={e@=U z&ykJP5)}nTTyV2(0PE2{HQC00eg9AI=g%+x_`~Po|Lc?f*}J!I-+ugPO}0-0f$!fx zjj4a_>t2nh76{+{{!jn?r(Xbow@|^WKmFy8KmGFGfBfCgzx~^Pdi8(*<>%kCF!hK3 z_49xG!!K;^|5<knYYNpQUX@aFq>ufKweEc+ZjBQBKuyx{pfFDia@BdTu=a#!{{TQxppTbp4O z9X{bWluiG+FJ{v?Rx?>_2fHt2VM7}Amu@T1aT1Q$Ox!vO5W=4y+_qj2NM}>{@~&N3 zSM|JD*fqU(m0L(#L;k_H3>|<|!A3=$3W=vCV84;*1cz>}i2e&eC6$;*P|^(^_O?ei z5a7Bj+tt>g&)4j(Z8s!(sjfv_QW0cY6iT}H6BqTs$Vaysh@=16pi~~)J}4fo$Tzt0 zmcobgh1!E48{RWFU$j`yPvHVqu`&epT_4Mkh+qai+qkd;qmavT?6}3pI@ZHFP4Vu~ zj}Q7i=SaVA>jO(y*&D=MbLfo0Q!3WbbEZ8!+vGbwjH3x=?A^~3meB0U)T#_(h=_ zlH!*TFnVzoggBmhRo&yME~9wRc0e*dT3U|#TU|@rlA{u|1rM4 zGW%lVbC>Tiz1AbA@YE?YDrjOq3XSF=b-X>t+aOxO#3L|+a$TIQzvtQFS2dmBgyW)A zqX3Sr2H_66qM8YbAD{T7w<0(LSPaUt?Ax~|AvMLiW3`PaUY}CHP@xs3d$0CsFs$&$qcTuIVe%_&?#s@=)D@tidW3A_PBSc)KS`B4c z9Jzz7n7uo}#WFLGUK@&*<&4QMUd6n7qIDj9LnTqa4OXk&Dc`s0SYUJx0yHZEzU=Sy zssMi!%4Ib4&PzuQK4;DIdq|c(TsRvLB%S;U0x(Xqd9J*jHn+>B% zO<{puu_cBH{UOzko!*GB-MX~(a$&2vtHy&YLbcFnX}2$2P4-neXB6G49evxr=q2gr zv*t!U&kGkGyo{5z>)fu?%s83_+jg4rU}I(qRh77VMqrw%2yH$gS2QPkI%5up@ZM?^ z&3VLbDHLDA5K&Y-9pftkxe7G|9WFe;a#q9~@hTL!#0{e9ohlJqM?UHuU{#5@+=AHH z%4%*zqd8=Kd1ju9i?lMk;1Tn1Q>!c?2;Fqwgf;c^DjQ2xQKz+OjyOKgc#O@{!8SE6 z-}5awt=E8X@JJ!;*TGG~6Ap4~+)YZC!L@CtVdjBgr$5I@fU6N7+O-4}nv-g4y((ce zobcG{N~^C6x&Q~72&YmcqRA`%LWl6EY6Z3cXnqQ)Ko}f4g?z*!OxSl~>4Y#*_G5?D zVOrC=Mmsuzl+9!Dd7UO5dbe-G&V*JlR<-aoDH>iAQggd8EVupNX<}7ubC`JQudza& zQHin$(%_o4Cg_`$3WZ!(tOHqXYcGAC85NKFnN(#A=}8!%L8#CfLN(DTrH-bf#gSTD zV6R3&0v-}cZ5_ka{X8tOl^6=1qa4eq#~T?lr@1aGGcbiAea8htPxA`5W*a<--8omn!6u-}?nw`>F{#n7oi9&$XH~H3ZR}?BOqmTehl!Pv z+UfiW+X8>O$Ba3T;b?xSY|}e5(HPDMWbE^Di*n^BC$pfd#qRJe%7xT)+)R{fIPfEa zdq7>SGkF~wZCJ*X(JSI5hsQ1%mkdDmRz9(f#aDGh(rwrR&lCjLU%}0L@Q)W!*;i zla+A+4or(!)`t621nepdkh}Z2@5$VI@0BG%(81%Qw;l1BrYWHJ|8eh~&AnIE)I$>( z@6s_dx^b$v!xK%j+z@mdZ}(od5lIOJF&%)8g;Ika^x|mI*<;R-LcamBv=#rk90~$VU9g)>)BK& zcLDxR92g4}kN>x~v)Q#Bw~p{!PtlJMqaAmqg7^zkgh&w*l-Whx0WwJ21N;3`-_kxe zw}Hf?Afs;J?sJYdMK0F*sVeP&4RwJ9>d7hemw)j2MSudCS>$U&VF0otbnr0tvoW9< z7|_&XlPyDO!si!#0jrZj1!gkj5_I}KzO|#yl@HZ@VdRdyA!!*p?3q5loPJ4&VFZvw zGo0TYZhoIyskQ?N1dOLOBSd`Kb@+Py(tos8_L_D``&)km2=J8h5iYuqI{o9j+bi1W>E9DoOV349gD%PE zyc`>+ol9b7Ft2Z^)MNNN&Qe~(Uktkt1n4YiWH56b;W5Ks8_d-Gc~f*-k9$UPB(C3# zQyZmFtCe2eL&|EyQw?;N9>j+UkWgss=)2$-xnI}{XNZgqW9xP8Cs;GAPjya7kK4i! zsyUIMkC>ItK6TF&fyOqdqv5CMsRpMf#Mx!_c8}d0_Xey*-rzGvll~ zn*qQFk%0W&@Ha3gcPV`l&{e#l9NMk}^V6vN6NkoB?hfr0b;$7O>2!qM77?Q?ab$?j zXvpTeojYT;CeVek(>Rq0GvA>1a=~uu%)6X88>~&K@v3X^a5iXMFTHgK%)fSAm6;>g z^63JM*kvBL(IA_7E7?F`X%@vN=4BEj%2v6VvolRv{C+!QJ1m!5cZ%RtpCW0@(yEq!T z9=y1PI_k*yB9ip%x<2kf+1%8xyx#iNbpX#XOEbIQYQ}qTor`wZY8I^Unx;pujh08% zc{LB$t_`E*5UO4ax1eGZvW17f+Ecd$g*JU@T@SkavLbT9teTZk)>u|7KubJujJ%Lq z;=-&fy*pf58lD&m#^(9k&wI_xVJ6%$;(uA{`un-0cLdwuB zsDCP4c5M=b6$~l|bNqEC_HYBWUPhC{*~s;TfbMJfD_A+shYsgrid2>P!%Cx!`s>wc zQt2D(BG6h1Nh*Vb@W||6w`l=^%dyo3CniDTOS$o$iF)qVQDDU5_57V*CE^l-jbsYv z=W3R}uwGYFN%2@32_Fh^HLbh3{=Onw==v15DWj?w|6cF>9aZ9`qfAbj7~@}@F_;)A z(|Ap(hc-XnEYzCN-OMo_uZFFV!KN7L0PksV2@3FFJ}9Vs?|d_DdylsQAp+$Px2IA+ zW0`fSQ#p`3%(PgSuQGU&I=xfj7(UW^EdDqci#6-t$!atGfV9blRyv{rx=R(6^%Dma zyMfcFzN>CL#bO12b5hnmELc9h)FwOw-mw9#iO}4{^%riF;%kPcjAgPGd*bme=>6Xk zTDkx0pMLn?e00g?)B_0#Urwehrw9^#rIo@qz3)?D?k(jW zLLA4$TZ1qbBF4bz$6Q4}4TH#=q}F6~^ZGtOuo~~50ntMM=*G=M{|rB;AAxN=%2=?~ zSgq9i4iG55J|3Zc(ql??qr@}4<=wLZUK7WEeM(Q{sRI?K_Ra>xO^ElY4eK|`P7X_W z;cXC zLhI+Nex*Q$527)W6k)e7%o~xtMxb>SR%H|uM$(gyr6_To>rldOnF-QWy3xyHgtG9C zZ1$$dh1gFugepF~Wn|M}B6Xa7#+Oxw&U;y@sAgCu1^oh{=U{|>K|aLxq7AG+%bm1< zx`2eFbUM&3QWSa==Vnvf2I1lh0`1PGHk}K+LquB+q_vasjMxOSkgthD@D|An%igYe z=;l2t#9twln@L+`dfqb)ix&BCTMx%>!@wE|ruM>P=2N8wa=t$^*G8--_`F+DI! z_uensznu({IuB)jMv$Ao-2s2u%EABp0_kJ-Bz?_}cMfC+Hl=&83q}R1)1=f%~6>i3* zlthEDIN!QxCbeT0pshL$`&7ukhu`Sm2$;@lby2P4(mN=R+l0d>+^_ik7DWYiZ7%dG z%3tFTP6gM_2&=;PqBOYeGz$tcd+9?AHJxK^H%}^6wS&`=V_Wx=#$rdG7?vvo(R#Y? z^Pw}|dgG5EEKN2}a?-tBZz1*-#WJO*kB*hT?b*KOLjUET|M>aOKbi~u<1fGb^gn<8 z|7R}r4}bc@&p-cYRDe4aB)?;|xk|*(-hTX?%|BnDuFXN;7Gr{_U>ZD(kBM4pEy7?i z>2;e+?)@^@cW!vJfatFmvrEgubh~zD?4>CU9?J*Q0fCecxcbmdr4KN5&0&e*f@u%x z#`GWh`abh8`ug(n*ZsQnH9s?cHRqWerW88$NgT&tYlTUBM=v%&D)nyp-i?o@-lPjV zd>A-r33dd<*SafyJ?BN20`&}37C~?eMLtTQyPp_u^blf8Z#NzYmt%@}Rz+GTUo>^p z`j4Yuiy$28*ClJA%A+t2ghRTCW<5iyLU3D%*GIW2QwJW0Zo^*uQnKZcB#63#6@BpQ z?dH@+xD$vw^h=a`ogdzfa6r_*2QAU!qSAbXOAZc!7E_PYelM<1zuEUkx4wRL9s=al z<>gyhUP^aan7duRId)h(^2TiWz}<4wJH|6Z-!y}1CR^TTJ5!VF`eWkm%a)Wto)|`ixa$Ak+I2db)&6@M5EeaPa$wC2J z>Eykv!zHaRawQ;v^~vw}<|VA!m@J&m3`;Lv`HI9>MHBBzNI|CsH`h_QKpX9OZs-$7 zFoC#PlCG(OMrg6_@d>d^NwI#FuuZ%LEc4Ekj9`D%+wHn#7#MqwsI{Sbo=Y3pV8-Kl zj+zc7DbT7r6o894TI315|{B zoY31E3@ABI)-GzB{b$0$*d)x%3V1gC^W*q_USs^ z25%Vywn7F#rD>VPREPwIIO-KT1+@<}c0-9?NhsP$rDL9{|J$MfX)FxrTo@q;NhB@M zw3a;6dZ!M=q+YMToAnNK5YI;#QeleXFe2SdlttyY@e#1|PsyK_JPZe2HfMcX@{9wc zTA#2_uDziPpA};0$S>Ji@+Y{qguDxI>xkY^uhB$uT8Rxu?OWTT?yqVR<8fJs+ARs? zH#9jfNa}++U!^ISDt%yOuEfr2@$*p_57h6whlanp<;une)Xv_O)b7(e=6&yu1cWyC zYPNdl@uwA^CN11x&L2}If<74Y{B+=VSBbr=*IGW8URl`MxRh-8fXtD9R-6oIz3X@M zAGK+ zQl?m#hXzzCbD@2HDI9E{_IVZdUJ4AN>*FbfEC;<1*I;Q6|J6P}!xNFTypS9rnp*qZ z6y}s@zy0$g#PVfB73lseBJGOb%9xdC>mD(C zo?&S}Z~NS2j>wuOxfK%lvnUuSUIwk__~_~zOf1UB+6N|%l$jS9sFn& zr?9y~`f1}Dup$r%Sm$mqG1Pq;OdOl3nI-4$fU+Slaf#R#B-|_0X2n4CD-?S9%zFj6;;wq8hEE)*Bc(Mr#V$b_&KI>h0bI~5_O@<{y@m38NxCXw%AFhfWX zS_G6(y>ki~T7r8p7qYL$_921KCaF*S3o(UV3(}Mcov6Re{pi$(wZ~19;*UNhOEfL8u?KqwMo&_l*o9Canu2>tW~j>g?h$hyi*oern;?<-Y)JH5cE>%?AK;weZXU literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F0476910.fa.gz b/tests/data/fungi30/rhogs/HOG_F0476910.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..0b93a67a28809d011332a18342df09623799f7c0 GIT binary patch literal 10196 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

i5lUI0MhcbvvTE(JuC`5Nrw3|B$ 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 literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F0485529.fa.gz b/tests/data/fungi30/rhogs/HOG_F0485529.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..d2d7e216d9c31541575e0d3686e2f4ef687bdf65 GIT binary patch literal 391 zcmV;20eJo&iwFP!000021HI9)ZsRZv2H@RKp|LjU!Rd-Sx!IA<}p3@mHD5i`jC?pe}#L4@oXIT=}Ow$>({&P?i~U zR3=e{+^wOu9=sE1IN=Ibjc^L3M8$0@z#FG^yKz#0AtI>kMj9}}N0u5SA(d6+B{(g$ zpcQ~L%3ClXbVZdhu=d(3c^?)iUK1y!MYWEkA!jMN`>kWPn0{&ht(wfTBxB#_{;TS& z2zO+X3{T)e)wg&bR8{+_+Gu0B l{#5lr)dx*QtqrQ)lTcCt{!w*xgygM`J^&G;Th*%q005q2yP^O9 literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F0489395.fa.gz b/tests/data/fungi30/rhogs/HOG_F0489395.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..ed2f153594803096a8876441b55d28187d6d6a01 GIT binary patch literal 108417 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

r}*7_Y!g+ z5P$W1BCPWRnkTVXuFw+P-bhP*!TvEC4*h@rv?HSPbIonQ-zoHIr%F{BpMcry5!}p_ zFW~)kIlb~f%lilVcjwm`vXIZiLHK{E-21Ee|1wu+WCc$@_xoF#_C${750-U=;E}V2 z_gA8ow65*Yzw)arF5b!#Qt@gW>liMd8cSOY5MMDE%mgLsHF|tTjvj&VKsc++jwuC< zi=iY_bvVs0$gXP*$09s8f?lJQH-~A_T%xZAPK8si39A+yfsBS1I%jIV%0*xooz>sN z4o~U?4!Ww1Ro&Jo-sJFW;iYkq>@{x-Ak!1CaLsEiVmApD9d;BS>IDC!6n~`)H=h_* z6e2I%UAt`^f|tBN8Em3875U8)N6tJOQjtPZrC z`m6$?iyg7cP}f?d2pM=7^@S>2!A^oz_Otpba*dBRX>tDgaQa4W&dr#S%c_ z5rDbg5uRg~cV2F>=xSkAIT`ExZxPMUtABRziiTd)uE9~autI0)icj*I*?WU|u=w&k zrWUH;I%1nv6E#=Btrjk%wS4ZsEH@LHzA@JlXST&;jJ+vdt`Yf4*c%w~IxI58s~Z5z zrMJ>u4=COCu>03nGhM&zowBcCy^gmN9D-ZVcL>a}p!!yUmhgHFqCqu$Tlb<36W zkYgvCsm|q7mV4b6wb_kgk}@D5!#QLQb&PtGN2oW(_mtaJ$EnrNpHZDCp=RY@^K%GEc` z2Y@=S9Wg-K7eA$TFuc3Iv?KC&WuLTVj&;sNNQLmN6P*3j6vN#zOQ$+bCUQibSt1k@ z#8KuE>hTsm;;+Wi@*YI(T&a}$htoE8Fwc$4=P#K1GzXJ#QE1OtkcnUoNEEsSSJy5? zA(7fS-Ms!`=1PY~MGh^^)b!uT0n=_YaCHVf8}*e%NVKw;aG+&@qeh;Ui~By+D@DtF z=iCDMM$3yS2)eQVR&^B!booDAkCy68WF)jRH$UX68Q6}>>A|-to}gO8yJ2fH5k)a# z7Y!{rKpYqPCGu$_(;3wL?ypAgCl_YF#VO=@#J87bznze^!Ul8%f_U{RDx52+^Hj;R zW(%QHK=ZL@bvfRT7ogyK&}hL68x2l1t1FXDc|;$;TraN~vR384 z2%POfs7$-aK6kX}oY2kl!PWGAqtx2GtQC)5tZg#XV}8(i7-2f6C^j%6fIC-bx37KE zSfa|I@d8*vEuX2|u2DwVpJxrU&|;9!ep=SS?Xb~-3KtjOdwiS;u>?mhuPe12x) z@CUxvSSHFpW$LOyBA@2Cp@TMi!`tS>)4l0b>gV-knbgTQaOQt%ih%2ik!bX1>tW^Q z_|<>9*WGaTu=245Z37c#&vKflw?e%xu+V21!WYuNS1bYoY$rdhY$?fYRe6G!*$K5Nk9@$Bgj;^FM~IM%pX z#->pXvzMNPp_Qw@u>?Ck3q|TqzG0UC2^`rFky(A=kSDL~{qWWQ(8aUzbgQWh;Qpcg zFnf#gnvz$vi!F$cG*N#i9mZPf2TS0?JFjBF5r>thvQPDrFXlOUoKdDaVblJ(ZrHeoar%eYp)E)L)J*&rs%^v+`p z-aIJeHQ24@u&Rzj2xN&?jx@u&Y^Ovg?%VeFA zYh-5}s&ktdEmY`*XPq;WEqOJs84zC1An4aT&@7hoy9@J;MMQ2X?fC^UJ~4s>!?KS{ z;8tckj7AJ#-vH?iOV{@tA8Xb4+Un%x{uTPM#fd$GFcbLFD12jJ-l3*~A_+3ygXyB@5&{VOgDfNP%1NnPu4QDq9q>tm}tRaS?+4}qwV0Ux&YCnWoehI_$`)O0sZ0x|i5gLiOXGljrlskZ6uw)OM}i(ilwv8nIWw1jzfTL9MDhW!za~ za)9YpUx|iom8cqqS7IzZk1-qH5Y}xKYjG`HKvHW-sS3*4V19;K3uYn^d&6$ZjTp_% z4m5P`0Tex54KSalO>x8?Fpe$Cr){n7o1TzHo9L70&2F8Y`nMECn}g0Ns+NA(Ik zU8R)(u4W7P>Gz;jX`Q&94KDq~3D|BYc)Wy)JFYupCOWV~IMv z{MDtGtr)0oB$5NW zANR+5Dk)Vl&ehfJTUY%n3w#m=I@U%aU2zyitLLf{=976$86WmLU z{ya{?4he&S2SYtJZE40h)B2QE;=N!~vRd5Rds`h1NtVA_)n8nH*##p_+k=Y9D3wg) zh{uWSHn(Y^Y^>wOv}eTA##!Kuqc}cQikz{Y{<(Q}JE`!Bsx*TmOI zxp}M`*sZB3i(|PC)rxRG9I1>F=#$32C@mCo+QIFuR;X3uv;rgtz5r(h*pp$BPz63C zp$Qy^BxC1w#vGZoCdt)lz1pD}aJ^#F%EbnjI(cW`-IbJ<0Wp_|Nlx^dOIl}vBG^JInU?Bmbx%JKalCnRq`{nc!u-;-Rb{cc(D z$Ci4F^)VrVQb)F_9x`M{A4sbT(Zf{N+s4WVj)C9(qkDR9G{6hJpJ^0_Er1unu z__-Su@_T543-KFQl8(3?6!Lwrnb>~7nlS~Nn3+$jH>B`DX&{c2_KTF$;3pAM-x8%z(yoFdA^k-fd+xz9SOHCc7@O>WVWA$fh zQ<)U7JsCUU@tD|E|Nio^Bpk2XdayoD#IG#N(Lk2nNqvtvS?xpNbZHG-5BMO>F;Z@lqHOJQv2IY7DbC z1kUeCUaY@&iG)0i67Z~dOZ)fSPT60wf0PL(LvjyUa@lSnyQ6TRkVU2=5lsyPYk0rW1;`9$N}7@fm6{Y{K#k7`sIr=7o$M4eR(plOH$8uBt3#mNvh})s zIK0eo4lQ2@Nw;Nq&Pqw~j<#`iSivs1o)xuT!gR}J<&0XJaHmE`kpn0<=d@KnwjQAh z1}#**KLS<=4r6_O7<{Fsgq`;k(w-@smQvad45kMpyj!e^N)x+(JSH(4>E9@{sc+{0 zqKE_`R3JcIpIyn4PX-KePolwTdGy4gL5i!le#BE|p<_x6XQ|(=>e%LRLOWc~7DCft z?XHl=kG?IP)qi@_vn#y&%0R)0_Ey-06B5&Ure6cvhoP4Xy&m?(nl$I&vA1c3nc1>~ zf&E!$(x*cx3UsYi_SwMhIZCnPymkhMzMJSU@f!F>)}qGe)eAN|Vt>J1?eCwC=U~tr zSbCzZN3R|^${MSHn)xR`!sS^RW}#J zPPIbG{P^^<=W+AafaJZyBlm|)-oUG5XF@x-GlzJlOCtZ?ZddQ0=cvryq0oFg!PNYR zXV`}~DzHV@cV7Q5CVIOC@u1MS%owNg0Y6pzAUstbzG@GNK9r3hG;^MW7pThTseD!ybm$=`BRdLtaC;^y-q3lFe^V z>hOW_CY%;ga9WPp)|d3W6LSD0F2~29!!!Z$bYWE6rlJHxyF^6BCeqigW=bY5BG z0irD-Q)A#44BKH%)s5x?h`v#L5DU8ub%=~Xi;cZ^{tSU-9A^_h&W;#al?NjIK1f~_ zv%}^A3R`^Hl-H>0o@nT=MG5UiK)L3{yZ`(7f3>^4QDmVn2nU45aiLTiE?>M8HPGq_rTH>LH3n?!vQF{H?zN)l>yiAq% z+713eW@Zll*Ae62HhRB1esA^v`24=@?D*36|8|ry==FBYPFk5A3bW*$w#WZT_A)ooBa9; zH#8BY5%TxTjz3|_@Al<6bJ%*{`MO?$j1gRj%!JftyS(Xt1 z!7w&qGR4mj=0VV3OC4GJqvvMJU@fmJ)jN?2Kd?4)7NZ(Jh*OxyLzcH=X%CzH$#|l; zY+>j0tF&Rlabt;XjI2$@qrTED63mh5Z=U}T0p z9%A~)d(n+9tNBEoMZMS!t<)wv_sfW-p{v*B8uMj6Da3!8Z7bRzFu_J=soIGk z#1?$~Bk|P@5es$e;`S9bX#gfOtj~L+cVCfb$R;qrK_r#p|GAI7;Gm6fwVNciAt?qK zT1%+0EWP>|kr`%hKn zGS}PnjG8=1;tPkPx;1Kc<{m=vq1wsx^%e#(g4Ur)3Wn}V>9L>S*oUq*+A5B1EO;97 zI=vvA58rO?aiTd&z}SR~M@rD+j=_IEdQ#8|6H&?T%Baw1tNnkXe2+-`lF09~3VLcl zQ|RXmnMhDw;%ATJ=V@{!zoocdtoGot<-asf`^*i6SDk*;WtvaCL=ALcaA(wNOXo8J zdq!r*B((Cy2JZ`DW~cuD0f|6%zYhkA8E0*eBn^@dsR&i~Xf-DRm!KBfY6uv{%zKy3 zoWM^F)wDqtbkO|5Y9H$+f-<7o+(uwoJH$YAMjJw_nO$hZ#>6Dd4n5F9gt>PX3t!UI zBzVqG@>y*1)dlucgBJpFwDEWsp+CJ|2P+qVMz7w*Jpjz#Gq^+Jz?Fud^G1sZPj`nL* zg6!OyL=6%fC)oVq=k69}He=H?&-M~ID%BZT7aWKXRkc)9+m)8p98kCc{49QbYte_k z(3Woi8#T~T6iY`%^vsRgaLysXT#=%Zya#laK zS`^Az=H?*1rf43!e2h&yk#q&4$Lv>~wS^Djn|+)0GLh>vWoKEb^`hb$!Y=@QHec@OeyA=>4$QY|v=`NL8=Dc7Y^ap*nP09CbH7uA=^rF@?$M{L z7+qYJRuQC+v!O;m)t#x$7XKKTpe@W=jB^WGG04DdDq$7K)GoWup@CA9%m|EHc}vYF z0A^vYBLH%T>R86kOvS4?uhT87d`An9R=+@byw$(V^g!-S$g>L(cYv8_VPZavXAFdAlo&sl9WR`|UPW zIH2_y$HKxLUhSRKPY}?r-4a)Ejhw_fwE;v&+l?W7x~*x%s*-u7Feo3Z4sBDWjlnn7 zAZXNPY_)H2IyOD=sx}wT)4`)8rd`dn zQG;d`AT&3$pr|;)4=4z8zd|Q-Q-Dmf*Ix}2e(us&c^^W19aI=uy+a!$3#9Uv5&Y!> zjrL39_a!u7o7#eEIV-57D5sf+F%Wsmxs0Wsjrp`!y(qNDWSd!FVYFF>pnfT%&Rr$T zraW;aikP`Qw*Gg3wA7sRR#H;p!G{&glK$w^e+cf0bK{PoN~D=WfezLe*Iz0>wI6~W zmrqi|gr+@uio7so>+V@pWpTr{Eg!uYCWD#*!mAIyXUW8z4(0F&lO#{ zMfG#k=4DxiPH5&-a)-&<$N@E{%8R?}>NubPzWUw)Lba6)i(1Y}P_Vk~ z$%m#C9Nq{1X-kt?qJZ_l_%1`)wqUa^cWzK3*BNS4^F6PSsC=VJs&q3&Owk;**`ANy zEf7ONOe7acb53c1W2m*FS|rN8D-E}*$WyJ{Zu=-hJsI)cE=h3+=QpGz_f^1Cwh5J4 z<8*u#6#=0ehJ1?3Fjam{tQ!ClEv~_fa$Ij}6BG_b#xGvGEGfZz*g7|k0ay3ktY{4F zm?2XZn?knw?rZX>@x4#vr#(bUxz=l)yXCBy?+X*@l*XVo=)f2^GkS0Bro12p*Qrgp z)UR6_Vs6K3)c3z^!X*3}PouR5mt$JorD8KzTQ1fDy(5NR&M8HTj}wD%MMX7>>e1k; zDDqSZxDv~b5U;~68&&~RA+2h*e(h+=qk-^Hs|=z$SudMyb0@Z3RF$Z58bfM=(fWut_ilGan_)txv_CD@Qrq2`bw?k_bv>?Cn{e9b<+GXF zEfyv4@o3fIxGBbk-Ir>L=7{<*TnIWclA1gvW%0pvn2RvMU{}}nkDBJ~^ZUb-n&u-{ z{q^w=?Zc1Xe*fXC_douVbj&X-_0_AtlH2Ct*KV6XNB6vX`TXn8%J!{xnsX`=SQW@I z+MO*=b~632&fFevf)I#u zv?@1Www$ce5bEe*HW&trpW3Q&KZpOg0M$eHvibtryY$Q0Lj`%SXn<4sYnzHhhY2TU zVOygI7lXUB-9S}${a}@4*M+U;mP!howHQ6Vz;Vu+wHk$1ukZU9=@E* zE;^IGPR<~Oy|Wz1^IH@JS2~wkil4KCpvvOvM@P)N7x#y!7Wa#HZy$d9_=oM=pML&< zMg98^@4xx*vz(FN{_y?BrCk5@=RXg^ef{<4yTn*=b3e7hY)fKpVV>#kRl=d!!fjpd zwJBHAv{`B#P}NIL?Z}`Qz!NH38*OK!{kGH^(%cx9K$JoS+OtLIMCsD%5>b|!DdV-{ z@+uBFR5GDb3GGBE#U{$1Q{S||kTzbKe9yjC6cfp(+!`o9mYNM`u^eW$K)2!Lq)xXJkmUkQFJzE#)O@{wep;=VZUfpl5~gpwMyyYv|`jno17_2GxBo5Gx0q-IXSD86kS%J1)DP zPT3{ubIy9c!gx390Znz6)0P_&M0BjN+AI1N<9RV#xqxTSZPA+t;yA98x_`7ax=G9~bXe<#efGg{mXf^6IXk%4CgtcuGUPes^b? z|L*vY0h15^`iCEW{Q2P@-+v><`R6F5H*Y@A5)^I&7|wl$Qoe0itFnr{>bceK0<*KD zd!#gTA?t_s5X*{ZK)_?W-dcjHUQ?-oR{M~2?P5AaGN)*ob@~qFJX|09O7OZmQOvDu z<^0!yJ_!Knw`ugH8uVn9ENCbC<`*>tfnvI*%}bS0t^{)#&H%MbUXh!~n)hl7f^eYt zoIJcK)iW+i#faL72pX-Ot>t*Nig6qODFjOUclL{O$3+!`Dt`tHCO~kGZjnvw+LJ<6 z#VpuWQ3y2?S9u@H`bHBsWsjT?ryhl0RTJ2^ysUdw6IrC8C}pIiq5Lefy9h!vWrk*fBF=*hLAoOI>4Nhf@~4>+R&d-3r+>BoT4hXMkX6_xZlw zW?8%M0sGn#XYbO<+LRj-lmS)dFOwKg-o9swAFh0t0Qd`{q{6a#|Os>F14|DHuv| zRl^IpcM-GE`8AGB71e486gulw1a;35T-F}Q?ikuWPhQ(EjKE-l#x>_Nl3?Bx$;6_c-fp)X~1FjCX~zUfZoLi^?Q45et0l5>~rQ zD)}0>+b-gW5vdVDtbl}FMI*AQQClKhdT2q>I(vnS8SOrrHkh1pA!L*TV;=WCUer=K zHf_vo%n`KhiP7#6YM-Tg%jIgYLy}$XRFzh~vdfgM@^)7VmYM}MAXS2YVT9D-350nG zV_*ViOK+sHcR8(Q6^z-Mu)DAg)R9ZbZk_vgu9)46kt$QRSXm^8D!O2y$C;~SCMh>{ zXj@@Kc^!~yfYcFsEMA+GIJv)eXNTJ3>w{{@t%BK%2&;ym)?14hr-G#rM zh(&F<>r9o!P&=ihjtPzSHhY=Wi9EI8OTD$UK5xZ~i5$ zuK=ZL`MH~}%IUR5Ydw%O)hAgw$bckmwX0I^!Ed>O#?z#{v+EEOuPA_u`R&|mW6V|z zkk1+1*v39LZgU;60cK(=N9Voh9Ll{ftM#jV`MWB%wRJI<8qIY_D>gaLLSa1~yZjSj zdeqPZvw0fdwD9d7Q`v=&5Uo7KPVzXFx$X3=tygO8r7K`jrYU_a{WWT1586~wPFd7ey*jzM{mq1di$xC9KTK%}EYc`=sy$k*5c0C-^;v?#Uwsnf5MBOHz@#r;zxu3F8-XZIUinSTc5cXZ zW6Lvbso8rLU)$w2OmgMBZExD*2*$Z~bq=`IBsS3&X?uTFbu1{a3vVeDsD16{n#X3N zd6SIzqU@asI1rr8-C`TJhA@VS+O;3Ma?(Q#UfU+7xd|J8)NtpvQ)b1QV)ib*U9`b2 zBw?^XjQ2zB4$5S{ zx4dA<;O(U{!*N>h!;iyVw#4n#zTEFmc@d-E?@u+Qdx3#I8R^ss32 z1T|353U^i*%ApA9P*Pe@ zF9>bQsRmust>6k)4MsB4?r&`Yw1=X@dRQgdt0j-UWgSa94t>?5F1WsVeSdgD7kvHd z`J?~$*T+AYZ~pY%SC=3DU4GtQJ($biN{qsovqioVTw2t78U}^)?Bd!!5^(?W3n1gmNblLS5LsE z%_5bLtArfj+N%CUDj(I~ppAIv$^zl~xkH+^6P&w+z|dx{Z>#?gZ*R9tzSUv2_sG|sJYis|J z1lI3dbJmsq1+sr|#uX#=+s&2eo>k8aC#q+1I6%A8Rj(~T*pSdD$oe{B4Ju2ggU?TH z|3p8nPUlq@Oh$c2Bw{))kr`&%1ATz_Pi7-hI3-;G2%yEIkIAC!hMUGHTK-~KPNS7E zhOWV|M+zJi#*E1X9~H4qftN!26~!nRIdQ-Sl^6}`{8qo?Q#%n9A;5!Ssv6ZUT;8ltYYeOt8g@&4n@MXNaSmmmMy zf!&_M)8)Xfj_JeSxMTYC>FX=>FS8+2sJjm-g^_VqV~A)VoBo9_mG%gQxo zT0s1OUPguwHf3UpEwZ1zyX~tYv{Feav<%7;noim_@3(OCtYq1oJoG}6*0f(7oKtyM z6gVoOsww2%FiOnzFN$&2*n?yILc2xVL&j!Mek}Xm7UbMU`tS=B5Igzl&d@qsoja%? zbYc3Kt#e{>ZcyoTO99ao9XC^sbrd(F1=eE*AP*W18JHcpntUo`&h@03Fm#5WBL!&# zjc4yy>Zr`Wt9(JC*Wx96{_dpv}FAM@kYx6XL*8SO7(xO0lZ6QRE zjgbK`7e91(8cUxP7UcFkiBZqF1B&-HT-}m4Nf|-_K4-X(YKP$*&v22r_-Wn2UxR7y zr%nR%02_1LAgahXw28B~Iu^pvnQ65UwqT8Eon@>IX&U++KO+FhR?KRx{N;~zFQ z&5wWhw;%tc|Nr%eKmX>t-#`4}5C8h%ui8al9-m(I{*cy^wF={Gy@U18M=?Y33gG7jb`ZV5(G9aR9 z@Y%YqauheH-%<1m7JPwzGz8m%mGkwgC>hiMrbUzVrl+IjX!3&K;0!Y}nVGC6-?SMc zf;S0GoBJ>creun3g!%&nR&Jb88{6H!P{x`RNzq*h%r)}`*bM?_nDtiOgv7p> z(H<=nYCCNaUK`Ou=&+KX$7haJV`tczIWb-fKNzym6O@p3$Y{;gyNOniVyW90XMaYH zLD}qvh|t!KQd2(byp*8?MZ=aMrJbd@VAO7vTzx(I!fBNp>4?leO z+n;_VSM}-L``4RnSK8dtj!NB`ZnqFwUh>zsRepTgwe6@mE!)xDilTd4$~fPqq@W24 zir{yTx(MiTEL7j}6dEiIitX7YI@G;S%Dd&Y zJc6P@aowK%C0?ccX0gZ^Mi@fxVKc}j8Iq#DzNRZ%GyX1&VvUgRj+Rd+05hAXnF@4J zc~;q}e}Ji3dP_N{L;1PQ2q%3`T96}+vLt`Ypo9{XG0`Vry$GeaH~_c27OKb=Y{$0hEL=~9zWhp!?+o4YG4s^dI21+z<4 za!?|QAf!~vCFC}UVbQ`h3DGHRI(Z+tx;zbJ2%G^ z*a#_y^UFbLo-V*~fSR0OVbnP*miG*}WU}Mk&(ZENZmIhG8#&cVS*8I3&f4P_Iti8s zG%7YYiT&14qoYdKKuX=TbDe>vOycndw}TFgv`#U>2a}e(A5yD8GrPQ5 zb;c=PFOkZc(C+qV_$J~brBJDRI{5W06taC9x{M{vWvh4ub&ISHgatmc1Xd5c(d9++=KgVzyf3R!;BAD={ z$+BUS&P)J^qur}w?7i%#g{4e8HL#632Un+RY>21RFFP$EP_Pgxpk_Uf&QUllyekY4 z#C_UKQJLnxBAGfdra>tTM7OKO;1O`0>;IExL4^TRvC>5;t|K>etB!uM>C`yr2|*Xs z)9Q;OlQhgL`{0w;={h}=abP3S^eEciimp(un9ELv>ushs5x0z&CgYaFY?uY$0y<)y z2Zd5=LKfwC0UGyfRQ2_Q~=F#%Y-@VF)ptvgmHNOf~CMXUZPOvE@PQ z`G5sefA-I#B>(vF^XL1Iw@kz5chAV}pFjRBI-dW!Ir#YTwK^jdT?|HzwrqnInwD9h z-4@WSwyL2vb5+(e>jsz|!?);4dxujjz==oj1#4=Q`k7~yEEsyM@wS)%)bQ4m)@WXboflvUVeV-?S^m z4macv2bZkftrauqr7prhe8Tg^`qV$)f4p_EzJ9vT{roSFf4F`3!*723 z@4x$RzxnQm-~IS6|Ng^ofB$!XvFXoO?mh=}|M6GVq@EsMakwz2xJ1wd^UX)!Ul(d@=H4V0>|1mN2dCAs628{Ux$Ej-uTLeH_Iyh3Uk&dx&F z6rP&#*qWF3$e3}$}%M~}z){e_G5AeU~Lq+R1(a9=Gp$nSl{x!0l@gSy?aqMn$xLKxWnVDafeHzBqEechV>4__MUN03JZ393${PTJ@Ez+g?bG#|; zhd#3@XHI=+p04(;Z9vL1GdVKhQ&IBa+Ms%_i=EPlmO7<-MN#RH!#&c_=B(Vrpuf|U zdxgqF^#{y*?-mU5d(d-lqjB9za?B&{>(D_x9)fbpP?j-v0FN!?Pj&`Qsl}Wj4S0 zw?F>)yC47bY$=Doon zpS96ZnD?^fdYR#t7-i9C$km<3xa8~@@FB_pitNj%GZN|8L@VafxGB`XsjfvBtVamm zDI8ZlY+t8+&3J2ySjyV(9ZX*tpXXk~6%+dxc=xD#LT{uXW0etMQrJp@RtfcI3p-Ur zM6!dSiYd8-VKp)pBqp1+_cr2NXeo*4Q)aZ;GO!=Y`;>AOJ z+no(9x(R4s9~>0^lM%*xie(DVQ4r%%avBh8l88>@O4ozc2kqHd1EOBTf_egN(hADR zQK8&+#ujV@$HuPuWJIA&@eH!>T7v+K z?ey^$t$T3zy$>K36q7QI_WCh@Mge`{ov=t_<4oWe% zu*C7!wc&D~l9EGx4kcl_3|m_EKAr296#u8a%CDY^5tJUpTs+FirCL}LA&Mo4NT^36 zR&)Zy^AxtnX*nmYdJ@y7pr4>p9>YhSrY_Hj3>;HV`rLyY2}J!wkBa9RL6&vUD%gxU zLS}}jVq{cLK3^F=SE14tQFKLX`fhNeb{JXZ$LA^1sm2=d}Jge)?bV=}s4 zh*=aboI4aQc4X$!v$4IG6^e}22`h*R#6t$3rbKP{sd*8#Az5;y5!KN z0up4Pkuw08eqzjf9A`y)yFt+va}?{K>&c8R>7Mm8(J}Z_chg&;G(`bx&dcS_^6*1$o>!#PS!xuAJoKOZW@_dnn8;)x;6qhMVajZsLglN;sz=J-| zzUSFmE!s*m5`tV|UqK(!%N$J{!qRV$5XLlR6IhpVOVw&>jncu;l%8NquGxEC9UT zbNTt>e;p_A^y%H_pXHg_;+NyxX9m}ki!Kp{?sp-F{odSm;gBF!F0yIRBZCkNqpoO0=guq6HxM~F z4j{HVPqLWXjm;&`JBOH#n|DKmHx<;^oaQ+x4sHedw?YS*-gos1m(w^i7v;tfiOv|I z2dOcv%dJFQL(%nv3UXn{uy&`=kZd1Ln2i)2mApfZhK$@XSU#LpCs7Rt8g(L>KKc!o}$ehg$N=lvP zecg_;+~Fgz5?D9X^ge7;U9HQl1j9FNM#*#`9Tm`V4o}A{;jBG6C`yDEq2-LREA!-D zf19h!bVZ(u_yGk5`60PSVC}N#^Nw&GhN3HzJzY5${XY+j@}Lgj7}U+Fg&J$_N)UF0 zLzyhLF)7Q?9MwB3%!Nf;$E`z-ZZiscc&6NRrc(iRTAcw1wFiOlEC}{73C!H;QnjoK z(8b%3v;)T)W#Eno9i8GK@QjMVU;~WPq|LLiikD=FsgbD*FkHZ-m?mBz1T!p^BA;q( zJR@WJXvZ;`)S+u=%d*AgRQ{{2CVR5hI7H_mhb|pD|BdqCV$^ty!=QpNyF$VH$g83i zedsY|r5H0X=Mz$zlwprkB5-R+#m0b7&oO!h0kv?xQFBB`$tLB${qv@a28d5lrwrL> zR7^Ct=@~RdLCDgcND8E^2%{uzg`h(`oLuLyBqBF3Q^&MW*dEhuhtsNub<5hOaV;S! z4-baw-`#O4o}v0MDaPzzASf3YXZAR)*=7ZlV(o6<;ILC1yQe#uAf!f(U{kwlLK0F( zKPoa-Occ8UG#z<|Y!Z5Ztsdw{v@RzmIu@DY4A+6ylD-cH_V->X;AU92lx55WX41)bS_u#N)b zc-<%#VEr#jG=V3Ms5)<^!ph1}B$c(Qozt}juwv{%Z59~?V{tc0W6&AsErqFWDO?y*2jyiyM z>DC9?2H7fy!63Xx!9o{WsZhC1h#4`z7580H(Vn+>0<7Cm2_~i=lH zWdIeGYHyid*EIX0zh@Z*fTFGRs_1G#)_73*cq}c-3}xkueUc4}w{cu=oneT0!MtG< zvlc2~6|&T9AdA5?mjLw;|9J-JiD4J!D`fjalC4d^;2^M0UJ;MqY%~^`iD86Z(#i!H zRGSVRfZo>bY?q}POS9h%D7R7m$=67<7SC`YdWj0)Ph-=(-rBKFPeAC#S_HSPvE7g<3@c1q&^4pYNapZuk$!!5 z|MBJ`{qpqi%a4C>|1dv&`SAGg|9an z&a}chPRA@$cl3<6R9x9n%@`9>=E|QA*cW9Krg1mIOg3fl`=mt!DaPzjBs9+5 z2p)!UEe6u8t>3Am?(jon-i^Lt3!MZNwnPSU>RJ1$_-KOBIc_#+Y~!zie8V(8EnOmU z-2z3GR)GG7)T49t=sNh>^s8$cj5Z2&|kwrxp4Rb}lT8w3#bo!=v79#=&I!cWa)36q_Cm4Rkxd)1jdXoh$Hdxr@uQsRbc`m{ zXLHD7%djg|KmlpInAGJ|NkR+M?Q#yx#zL6~lhkO41-UV%BW3w_oA?}uz0hGUYd4=o z0SkOPsda6h-WXU#(&lHHItHHgM1|dT@LT{!v&Jx+H7N2L-?X)?om5eX6f0k!hb z6(5c?dv_}{c17w%!M%;hH(Pn5QZG1y2h%qpBdfc@JW8y7x1z2?|*@YBMHKgBS{ue*+ZO@F<&NwMmTtIbE;P(sge@ zZfMQmG_|Oj-VT41SLK_!%ea>P-lMmb$A4Zi&^P9Ag_yQ5a^Obb&EXke2b6%VEWaZ+ zWQNRG7OuWwxKIk7>L6tq6Tk^55NT(mVY~Y(xP*6*frwEXG3AP49Gz%yQ1O!nr?F@4 z*XP(gyR2xTYn^!{l#M1tPXlwM&&i~u45@MhEw?RF=IKUXk>Ix(TFPKOwU=O+mq8nq zOKV@cJOjkSzokNTDgeqOvBnKR*$mfP^ielEg9uctwUxq@E_qZ4D7e#Z8|D zo<(XU7im2!AX0?gam=~S6gX`f$(!h{&0dv@k|Iz%nAQvEwUmX#MFv;z=U0!%q6MI3 zvGm=jN1nUJ-}e0W>Hg!*J^$hJ!!JMnp??3<`-gw~Iep8YzJK`5kH7oF58wX}`>DVE z{-=lf`=1{F@YflHFCRa?Y9pRZ;2SFlGziwjWAqE=b6H8i6>_}50gECH!yaW-#>N#$ts^z%x^_9mcRv=zUOYHs&M!aVFD7?-t3# zTFAs41CgffqF?0Vy=h&V)Y^8*(5!co~xG7AR0)+l^ zNnPD@G7=w|9RfTd3~cZ_NVl!Nl&ND<>kP@U>J`OgZ!8rD6VVr|LKpWoM`=Y3&jj2CDIzyZ=GG+)_S>SRl>yGd{9|3OGI+RGY&k*L? zu6k%D{F-T{8F|4-bhlaLwqItRPj`04A%|9LycqJ*RW4voCn^MLG1<|K01CR|+?dOD zon6Q^ScC(d0tQn-1#?`GUtmVES_K~df^J$YSHDIl3B%Rk;!!Y%90P|}cOx`_R6#j_ zVy8~{fX*j_YRdN_aNgZmi=ey(fs%%aZeZ8K={jqSkbrkXE@{@G;=NLHPJvSZ97sUU z5cI5AP#N#gBb3a%HvK!9$1#_sG+mjZZPp+mQ7ElfC`uOO7TTff5hv8{5)h0uw{vz4 z`YLegBb{)0KPAn1bjLD=8)JP7ynRtiFz1l7P2B025#m$wC{H~@3Exb$I-wUbTH^`| zNCKqOL*-B*?2x5qDpkvKG~s0jIu_c6u1&C7j=_X@N-&=Q0XvKC+!Wi(+Jj4U{TSM` z(}kRGi*}I$gJqvl#N1ic3oIg%| zc8VVd(gKB|R3;|0mYFxLOy$BUv&oed`oxUE7?G}n&uZi4-Ry^riASas7U-SodBCZy z%>|GsjWPH|S8GY*q!pK!cEtTw@&S3vsI?ukBGTA%_9!)7S|4NXWJGe35cHy{K|4`) zYu1TZz-An)Nildr1(zBbRbIa;4yWqr927X&AV(#*WA-q|Igrpz>(#@S8wMCd=1@=_ z4$!wS*jodlM>e|*lx`d0CIy+H1y2`8*J@@mLB;^eZdr<>**r8OM5E0=*(mVFS%=pI z?7AY)0wkqT=I)CEIjtQIN$#O#ilo~1v;0fx5ML@w(2C>EYE_W^073lCOULy7{^Kn# z{q-9N`{$2;2;YDA)5D+s?Z@Bze}DU#@lT&We|g2vJsJu07U5&LZ71_=w@n+^)*yA- za?@qHU3i^q7`R%ZzYG?}Tw=podD`<(KqGJKH(QD@i>0*e){sH%$-^)qqun8}9Gk`9 z^c5@A;8t(~*f1?&PltJ?q)?W1 zj&(_TW959~bWYn5%i-$K{C-A7dZ8_*yBXz0=2@pl0dSpT*;9_EpBI~Bm0P_fB93M} zZo_slJ#E^FZH8L$WQ}G9oC-kl-IsnVNqPICD1A{-N~gNoEcQT>r^6wVH%+DWx^-jMtRM?;X{h$B+_rLw=8j*RhInKWh6!!Gt%d3u( zqM9?Cgs5d$4Bp%HVKbmXx;O2NfRVZiz=9Lndu{t6(B(Eo_r8ui8v+r1H6t_R3O69_ z%;L%@WYfi@EkB;;IE=Kz$Gdtmf76yc@r*{#XXzkAmB#%DNk3`W33_ET=#OJh%NRQVL1R1DWEZfH{I(8h1u>tTQ2t?VX``E{3YDOhc}U zV4|!!T~1EK$wZ&WS{DP1)AQk*l_j7!)~bt)x=q{AP0<;67wWAr8S}1FU)>Us{hMsK zclV&1^bF`qn4(8wbsu&hU7h9xxpLF+L6)r0THFmPy8fAK8=z906!yJ<7 zU-J@Wyb6q?kq1J=XMB9n>P5Oyh&7k8$}){kLC(~d0VY*PA1t+0ZVQwT0N4vO_)6$| zT6`zQOME=%&K^;w9+P(LF~BD@F-IRJgaWKjpiE2Qg2N@VCFfdPi!G8WE7i#IjS4gm zy|XT4clp4F$iyoo$=iZ(p}fISf=*iR&PoR@?iu;`!x+irOv^G5HO+l#VXaGaxhstz z$pbT0tTTU-lQ2oFco1Q1kf-zJ7}p%2d4>{kE~$b^yLuuBgzLCF;*$lv>X7ysK%S3t zk!x6dP?|Q>ONV?}ELZ$yg>UcfKi;y!Pw$@l1wViM!}x;#rA73~06_uW{nH2BkqM$H>o4WRq%Ix#Vs?O-fVwK&{T9|Q~Nm*&L3BT9^ zm_T_zh87tF9}E3bV}F^!#H{+Z#JW1y&YG8c>~X+xrFl|J-!m$8FeD)cm0=C5m=1R+ zB{a!`iLC;gP@)RW=GYY{DW7o#!YMlDN|W1mktZ54pO$W*_2`(m(K_&1YksAZHP}pW zjiIb4 z5AGbMXhzY|cSqw!xgn~MO0*+b8dDrSo|nrJpYA{2S}tGTKlea?{`jAVeZ z`RgktT|Bm@wpvKHQ`|wrQ4mKs85Y4x0$|kpiIUU_FYO8j?-(FaR=`CfEmJN_rax*Q zgG|;Vky6(`pnR2@?9QXX0ij!4h6;Uho%t3VV_3xq9rVKpG?8^92`owr0b86*O%dR2 zcHOl=P7)epwM0o)i-pNjZ`yFY@wUgl+-{3=w>mdp;eRWX4hL64iYFeO-2b4Fdzo`4 zdKx0mPD=sC=>tfJvb#gOW}%fX)3l7{7^z><6-SEq+aw28`=uPyOzvv%hkd7mtCR~h zRw#UyG_6c6!dxhKMe~l(kIE%dCmSlHt;uqaE651|S6Hcw6nesrQ89I&}GAVe=)KtMx9BabaEY76Ow#)E)ZR~o_3uM?P9rI zci<i$T zY9_|D0!1OZsY>Si=oAz>1t`q1z+(gzq!QclS=dl1i_-eX7dQV&%X5AIywRRMKRrF! zM*FPaK7M)s@b>c_LJJS+yK9%dl+b$?%)0N7kxwY<=?;m`hR}; zV!QCumyaL6d|?yvcJkNb-2UnD!zc9pUhKtA`M)bY8I6r{Tyoqmc1(KhjQ(VA{Z&j7 zLLkwUfHoy9!`O3224}T0)v_bQIm`Si8j6r=QXoKH#35C=Y5lZ{kVF6*Gf)B8L9%XT z$47>28WWYNYOwHR zjt+u9XOcoKlY=WL%f{%Cyb=JJdIYTHb=t*-O=}Nw4}bxYiOM}}(PZ@W9 zg{_@3<=v)2gHf}~v!8_eVbnT5SJa3vpkQLAL5bI<4U_`CBl{{ldQN&G(1*y04(X+^ ztSnT6j76tum?Fqo1?dni?a07143OMopM8zl<_M@NCdfgzJ`vb-Q=IJzfsYXt3r0I* zHt@GqP}Xr#KoxyQvdtt~Q=!t?EU7^X-YeDd6F4)P|E`$`4K>_KfmGq&0_#A7#4jt( zton)=m}8lhNSWE(cw-WK&z9Af-VWf@0t}6M_&!~Le?Nt#USc5B()Yp9yBq@rHV8E? z5v`^WD=I5lb@JB>{=s}Oeq08C?wGa~fNrHeMpdm(lM$qynZky4fAaF~$>#9y-%K-i z$3F5^OcwY0-Ad4tcF?g;@)?u$f^`K8;-LGvPa(LnT|LC0WucXzkG*RNG4@%k_5gQi zf*24=rU`Ua*Z(p*Ce>|R!24<=TD}kDZ@WHdEz`+(j zn$8nJpS+H{o9CpL&z=prL$Sds&%MH(7Sd^$PDN zN73Y5&%Gtz&M_R*w1TsgAsbc>XgYe(DJB3(j5J?gbW6s1aDD=UOkM$rl7t51b@KBtsh*}2OXw|5cLub|wdd>82 zCtBQNu-un_$ha&F`%}z2Mx`J!CE%3$B_d7?IPS(xMWT4=6wz*B<_IS6;I;0QSa(Fy zhePWF7LlDyG8)S|s?QCQK>bfgnbb)sOk3nNfmDJToKOQ8+9G?6P=VI9G6I5~rmTwc z!G@=%C<7f*fMbr#S83|j5xT7NK)5+A-LLyaBdtpzKhgSreOAa4tq)?eO$&GL<6UT_ z4JJ1MZmIU!__j=!Ylr^$%3kCN$)!*(ves7JaV5rlDaX4dP)9ozeVklPFI}BkQ2TEK z;{d`UAi|A;GP6B;ryR%=sGQB?d>C35{Zr<zY}%sN@R^yH&cst5wlnW0 z_$-_5oC!XM&@Stw!$cqijto7a`swsbqV{QYpX)yOc|{e2Fu~v+`jic30kY8vUY--q zC7|!fquL3)f)WKM12>GF)|=q+e0oLtR838q#M@www?SM_qOX_NSv-Nnv}xF~9uGqY zm*hP57xu1w8sERT`If!=^7Y-r+s}K@qL1|<|J_gD|M7P+Vn6)4vGd2zpI<8+xms5( z#iJ83v$S^Sj%}ga+*l*E<>X>@^QAX*O&r%Kqcaa@hUo4*k(NJOTSxTm4=M&UcC=DZ z{2+b?s$fOxa1DcvD23O*Y?yez!TMLMTp?3hS8WWXFKadwfDu&Inc)(>v)0U(Uu-!P ztB9Ea%qbYqQq6kRh!EC!GF?tlefQAP?t@$~$jZE~^4z>AGSba}N5+n3GhYV1<9QL; zCKI=%bv-bI#FR`!yn!sYw0Vzm8rz&um{iIPiZAaF`YMQ2l+h>>Dil&c7SmW_VU{2V zeX#MUQ`Y&3F19iqk?iBr^@BTj(#%o}j$>SL(CgY2{Ur-nJ(K#n2Fg*$8sRTVOrloPmr?|FRD!T31J3HW ztd${oK&lwIuR^xm6oZ$;F{%7q7P;S&6^9z@jPPdOjPsQEIAul$Z_0dLnyUTXyB9a# zFjeoLzJ7Rk`+5J{GW@6aAAU{~hfg$|&pGh@AEjnItksx-+u*j+Dfm zFly7HAg!Crv}kp1dFf|FnQaP99@fd<-e&n7MRPGnv}u)M%zdI)4&(epbhVse@~6B} zMrU`jLZ|?NKz_ehhPlk6&6?ll<>uGbhhr?$ZOgc+p@&lTY?N`@#Bnd~RFJo6lbR~P zyj|0F4p^4?+t%Sr9AufIc;s&L^%5}j#ExD4C?VX#N~K}YzE=klfxv7OGJVUtNd zqp?TxKmELJAGPE>6t_n05^q4N7c21}-hKV};^tc`@yqA04{ty3A^f-THa`6ExBvX( z?~TjwdF?%8?|%OyOY@I^>D?-I{9EJ@ZbY+99HoNj;xzN-Bol=LO z@daIrvbVlq7wP2Ta-1Qp1|wUJBgDiqF$#j3A=_kjI-)5{-Qky)PoDJUuCE50S#Zjd zOW*RgM8{w%#ZTTbBF22qdt1VkOs5@+iOp%jSixdUM9tIC*Bp&SH+E>h<@Hl8KBIEN zdmxTNW1+9Q(C5@CW%BPTh2Ge5c80OUJUERI*3|^4jEEu-%E;VJE z>Vqjz!Ps9cJgwT#dz-Y8_iiPGqR+p(NF%YXG)mJLja+_O9rb>S=6jx|BoAB^Y!;IO zKBAl-DCLtqwa)-!@~r5-+fV@U=fH%(rZ{*F+ofGaU>#!K3aqcQU+t@J-dKziBR?Fk zGO2Y`Zit8*y?nV{*mO+#M~RK`!xGXQ4MjHSWhWXwxU&vXhi`+AiMDbc6)HrfGg-?! z&G%`b=TdNed~x%QUH$3PHM{%9^WGX^`>Q?5i)}aKm;wbY!fH60s}Up zQ?;8AprCiXqcx>lT{ho^;VjvK;^G-K6zlm##b2b_D>UyGVrLRyW|k}Qr>U{&MTQez z#H}ss#IoDg)EFNEHGse(LVHT)bvGE6oV2M+Rs^F%(!mW%l3j~3YDQ$C^E}&FsTD}J zJB2ma_LFfZ#rO(;v@4P#)IANzOzbP;BfvP~wkRPfQ0ZSd;t7{IQLopn<3bqAeU;GK z*$1};u=pcV3fiQgnr-He|8+G0P;8y#*ASg2|3x@VWRXZ+nUqHwTF2y1m=Ws=+ntt; zE?9=9p3hd131o>(apUx5g$ILD@kJ-UX8kS6J@kEnsAg9nA)gwQQ|4X4T!0r`R+c#) zRHn|&!I#=#5N|Soy9?PX%BbO%3Uh%75EP33+l0*(E) z;^+!AUHU-ND@&OEpLZ{AzH!dKeEIVD@b>e5O-uOk^QWJ|AGV6;F9aYAR%J?CS@z23 za%z!-^-)Hq?YL@XFHG4Q@faM72_SN< z+!3$=#UgavybP7i1;_}v-N?qK;bi+DkV3|XX10^PPz22gur~ok>a}`9XEKWcI;8?k zL~-5V+T@TQK^RqS+GtVGpAqBOb}YT(j=>a$flKUnufeobfDCNi zbpVSZ_GRAnL1%dCJ2I8$3)-GG8o?(P>W*&~oIHmau{fp5m%_hODA1izg zo6oZTo9>&oAPciYR8I$KJIiFa`)#d8J+6J@m{~`f47CK%Jcoi!VmNo63`QT9f|(vz z^co8M_su5q4lWEM`6CR=mjVKayuqR3tZQmTUy^~gcSt`(&{BIgIA zmwW(ZN#OtTswm^qT9UP43~^gd!`F>zne@SLw+QS~pQ#U9IJ)91y?&ON4<5mo2nZ?k zx%9JAs3EjjtQ&G0b4NE%8Jj!fu$)>)itA_Nq*&t?u$e`dCemKFjJx@2kMCBA(*>TRptn(_9Ir|&OMTQwMY!F*0Us@WFF5M4s ztdBRIuQ!QKsnA>oZ~VaS?Av@OU5rQ$yR7_P@9AhQBU?mn1bO7*GeQPaG=toSzC`VQ zr%1$@S*XB_HW$c@b~%u}V(if;n1e>s7eQzTQ|E_jT+>)TMMKqS`YdfeJDe>i37xhw zQSb)a^=RmXN|Kkyfx`3EHSda&Pk^XrsOeeCZVR$=y5BR4eh(sOgq^x?)06!U_Tf?v zKS3^>TOS#Fqu0&EoYorT7V9;!iPbroZkGLrIJaIRUA%Td#moK!{Z+$>qRLeBv9G!2 zpinO}hk?H+d5}?e2S?`0>n|k%<<1kp8SO>pH(WDcn>AHtnKOQF6E)GT$EjQFf=nbV zSPZv!GK^SFh`=vY?sYKJe4CbO@TkYGv%=3Y?s?IYUzW4?W7N(@_;pGx2d0@6*95J! zihkj)fLdN<7_D=p0&x8+P6C10p4)&>4Yes=*;oaR@;(HjLqDo zHlVlc88<$(in~WGdR+Um28VcVO6Uvii^9dUDwvaDn24+)KAiecYATm7=7N$Ern1Y8 zq$Ny!T8;&(_AxGAmW_gtVh8xmlq)V{9a4;=pTp>88EWV^0Jy|S7F}WJJklg-I!RFI zdY;)Gxmnkh>vfp+t_&7RtDYe>n$~^N$CUX+%xvfhM5##DL`zdq((oS;1xty$#vyH(O6V;wiI*@GQKphS_@sVmnG-x;(Qj z8!`>kRWQ~6 z8v)skss$wrk2cmK^M)qJwjRo|lt~z6A2^^35@rH%3#!QXe|2(0o{Ys#Z;=B7N`xgV z10eX0#8i}4I9MgTZgnu0dCo7d%FxV9jW9LOud$Fc=m1S z6n}Q@3vDc?@W8P>y+UHy(Mo&f(jUu;AfN=-2{V|f!gY{_aWpwzrsXG|XhN{lcv<~A zhNX|dTy0Xc#ubV}Lf7eP&&h@WP}#;vwE#YyGKaP~WJM>qo)l_VM&hj-Jb2hR#>ED2 zW@N9~GYVi9r7KCE&qJ$G16K+?7n4ncD^UK(VhSg3tLr#}0PuvA`o-;z8F}9szRo&9 z>%?@pesq}k?cz@0%atBYNWaBmAVHb3PJ@Rr>D?|E)UFfBgv-|t$M9R$rSf`1$27K{ zm+?aSPmf`4il>jt`W)!Pr067+(Z;OO*yzm;Ga2WkOimGm^4l~5gk1YxeM5>Z$sSQE z-;qHksD*h?ndbxt^q`=iFiKE;Kk9KTGxPRoZ*HXlS8bBU(6q>b5r0K3Sn>q9!6Alx z2~KKd#<(aam>IfKEL~kQ72hz*2rh~bPfQlWRjbp*mIoYW+1IS+$@86VwMcO@B-B|= zl#-SZg2>6ps1+@NhE|Zrl+K{v8XD&cTaEFJxT3C?SY=%UDNXj)i>18)u4c z4IV0t{oGNl)P2|#!;zJ#uHbj-Y?F_r1HB2}5al$toBnbc`QAIQ* zc93})kJDi4C;XLgG5}Ce25sN&7+nyi%A=3x-*=_BZaYt{*x?)GZplK^=J zLT(r1+r(T=7Tv;XB0dsu0)!taAgKxLX-GSw5Sv~!Sca1 z#kd6v0yjAqOr!yK*}XJ-M?aj33ifo3g4%XxcIC3iO#5c7+$cAIl&yaSJp1_d@x{$I zcjlLm4{ty3;r0*Hubj_)`TDv}#LU%Qsa6-tSU7dnWxttXWi)Hl2~6__Dl5gb*G|<} zk#klPkz1x_sb zh4+>bXhGyIr&&*&<6^)er2@0h5#cNaxeFL1nUY);Y&X;X#f|JoH8}ic{ibm|wVN|v zk>M&dLJHC1E^l!6( zSgce^OQoQ2c(Z6f8jVZYJk(8y*Dh>~`myx#Uckk6@DEuE$(WOIl`G zso*YWZxvD5udpC|qW9Y&LEo0!lB~UWSp#?l?!c+8j6jQ3dm}4Q_s|o|@h8*lEQukd z73JwMD;>JQ+}?Y<(YmQf{>*^F(2-ATwVH#{Go^x=lDRLY`=y&MH>GbuY1UL0Jw`c} zyxw^Xvt<$fAcK=ZMPG8uJpdU6-6PL-Yx?-6eBuJ2W@RL5nD>CJ#EQi5O?e}9s)sgN7OqcQrqwH1Q=ez^NpXEVdsrRI? zBmR0AFJzLEvJs(C(=DHK$uuz>wQmSR3UKfheP6Nz^k=B2GaZoIj3XihDf{KK_dQ2s zb=La?A4-S!?#|8!AyDASI}&PTyIV}KxVb8sLgCe84SS}n-k}%VuSrd0ykn^_^vaf z#Z$jIo3=>P`r=fjl(d|vDJ!cTpz@Gg(H=P_v~{N`o=q!W5g{UqN*XqZH|2NNNuh%x z#5j5-ug9W%=}7wU6El|MM6DQdxDg0iOH@Bry_u1Y$QtFYm|;P&ew`J?FWa!t-P1Z~ zJ+$8TarUIJz>Q*t>~me9#GA?C*HQ6#X($_XU`>-E*i4C2`TUxe1J4-HkWZ(AdN&^J zkiT?t6ltB&@A2clO!_c@xY9s(m%qb3Ge739%tH#=?#R;(jAMTuisK_$vxIx3lLEeIn1_ch~HQ3s#7d-0> zPBsj#g*P?GJX;CVB1fqmJEc+a)v#qaf9OY@Xj(Yv9n*M8i0G>BbTv|r=J~31(qxRF z13GoKX~EaLXn87)T8vd2TA&fM*9JqP$K5Op4a>w;D_>q?uX^Xx;PH`y2y4A)a-ww3X2 zkfyBGm-6--jMSr7@G6_eJKNj)b+`keSGw~n2v#M}4Lt4aMy*7>fc7rw)|%aAK=go7 zj!V92Fu+2AkPzfXnp(fGN|3s2uVT{A?>@h{`KCYr`qH2O((@i}PvPkz&-hi{`qPJx zPp`;pHdrkvb{5BU4Bdlf^}AM!f!!#buWhQP>r0GinENHP0_TN7I!fEC5KBvnZv2n$yI3i+$UzY`ENs4(?^bVl!=HJ!Mgb0(L`=*&9`HIpq*& z5V+gLTqbuCkhq24a#M~^a^I6t;ui=r?Cey70m?gJ@yN^<7XYDv!s!(GuE!8FZ5KbR zPVCjx9Suwl_&Ls}kte}KAiFu+!}ef>7+tP7lFr?jZqwn4&}!Jpz#?+K%vrn?7m;fMuXE*aH9P?L(^9v_P1?7 zaaGYR-hhtg%KAA=IE{o`28d$3yjDYg8?-3;O6A;cuHXC~xz0dKQQlyaIf^g0{kG3H z~zdu&;{5hGGSGz6ym{`rev2Hkm1#{>xt zL@@lX7-EBF8h-dKQiihBKkP5RSUm%Albl~^7Y=K)p?N4Q$4jF|*#M6{gDF?&)F5!P zS6rms8y? z2_TP%} zmZ*Q}c@Oj7{qv9i=W8MNGQP%o(i2cfJ&ec6!C5) zYTvG?_T-7N5oXA!e{Wa847Qw|@JxrfYa0Rl(v9c*g2zA`h~x#D)iNhnRTh36MWcYC zH|2Djqu@hD2vWymt|s4vSJ)Qn7H$9!p;ZSJp*BV_tS+3qXrm+FQcbW_MhS!-6PL+l z#V)%j&5=%$^#3bre7GMLhqq> zNAaq=Tm~bepOxA!bE<9&Gn_i9&2yVicicLCb$yJe<&l_W0`}W`nk>q0(aV`1@u0uF z!J~utM0TexE2HKuOec+hzsdy4*hihHK%XMjX=uGD?j6ypmP753WflddGIk>*Tq$3Y zB8;l9OGT?`BS6$MWV0`NM9N4RhOcmXy;;-ZM8=GaM(;M$Lz@elqSV}FU?2zePWie* z8l<3Z(>UFhg3^6Rt3oT+`{7`vcN0V!CFxgR&xEMz*%VDEn^K^%oJjnbK>RreMN>t& zJlXxG7wRt3QDC}s&1p|MB}Hd$k}(|oc*^Vca&%_EW}9IkvneOE6f1O5bAuTPVRpf@8J6{kFTYV8}!byIkKj~kk{iXYd;aoDR*)vb_D(xccEAs zRF<31gE2!H4+QCE#qmidS9X0;>>nYJWfD<;x;4Xf(;-0C2`|R)^b7_Q%%Rac8kakE z8e@Zw#t!{dfy1qwW5{x^9+aj$93pAjsYZZZP3uTr2CnCp>zEnp8BJi-`UH?3mPMyK zw~+-+z8K`&RwOOjx);Ti$0$Q+?I0Xjqt7)PH`WY7FwOJJYk$_yFK+(F*ZxUS&`TiR zFFo&99Ta~5<>^&_zMArgBKrn8PTx?zqgnus{qC|>pFC-tF)8Nzi_-37Xwa zUd_a`Hkc)j*~3MVeT9^^L$=%fjFSGk=f$Qcz~B{|`Hdh74$ zZX`7K0htj7au+bB%49|@9HmUS-N|MdGS`u6Dzd6nhh+p1rx`)Vp_iw0;sE?N0d$u~ zlwHZnMU`Q@#aR}_*t}k1(UWStbba6$2ehJ_;LVk#qb^|x7Y8D5gOrBe9>ON;*vmC! zuLq7kxIG^fs~x6I?yd~Zmy^{yg8Y%crEz1ljEIpemf~;Yu{xzQ8(avRk46two1X@m z&A5-pviQ}WqHnJHjvM2KuF=#@nFjV)#?0Ilm6$Ec2$uo9U7d&qeW6ZRU-A@W&L$8R zlhGuv#Gxf`y5`{25XqRvs0_f#q6ZqMhRAPFDrt{w^Co++I5J+pq(B8r3&-UIC7F?} zc{CS>0B60TIlZJ7S)Rki_<{O3C1=_c4Ndc&sRd?mNl0xoOYDcUFS5lEfR0yiGEZ*T z>g(q?qi;Nc7uq0(3ChVbNb!u&$_6*P;_K{J4pr|qk4lzk!D?Y8tMzE@LAT$GN;(jT zE6%T}(@gPhAIi9*WFwP@x7&-CMF>F&a)upGp#*$nCPb6FksYLDGxi}U;*-@x^CX>4 zs|pyV;v(l)_fW;7i(u3x`j+Iuc zEb&3 zzI8AhGwj2P@sl0+W^IgAv+~hooMl>hTEHdB8P7Bm1`ty<#I}|@GzRoE(tdF@81=4K zQRD!$)X5$}wn^|leY2vsr+@7K*OwPJ|0zs=e>?3iUJxt7b%S=(LN{Xj51193 zaVBBO?#znvtH=t#;%bE~i~@)#>@69-kt)i)YWdRPlSLVnBWVLEbCa5b$-RBsO=giL#(4uy0>=mMR!ABQwG)BY|E7W0Y~9QqIhvA(*3xzCq||*$j%u5 zqiH@t27&A6@yvfQ#W601Pl1IeVT?y4TcC>GhDA$6y**exV5kigHW6GJs52tANCB+Kl8R*ui~i400JEyLs?2;_agFiwa*UgU`~ z6)hOXiEiC)_`&duA8U8!M5Bh&Ms7bNPSjK6(8j?kMt9=G3~{2abw)=8_%ytUO|LGC z_{^I~xeELjyop17CQckDm}-@CHYN6OtN3EPiO~08B8;XHS#(loWlUkL%Gc2gq1Lfo z%!%7ym=m{vOpRp!|HKfZ1U$1fxg|G2{wkLUBqG z<`go633rsAUUomL($C!+XsU(D+q3pVK#>~>xdp*v8JoVCxR^Wi%+OD{2 zRTQ3#svgM2Qrj4pU9q^eR+gkcx?8{11$FGYt^K^oqTNc=tIh4EKR4)frzzHc#@p6z z3Pf+77GdfKLmgve@COafF?Mv@mSnT`3yQaWnM?);0y8(A$&!|cc(_;oSSX6k;0hJ@ zR)#VL>JL=PmTrTS)Fx!CA%q-d)>EgjX+uzpa)VmJ1Yk&qi891+-jbqdCFFB)aZW|n zH!hC0eq6`J{z6+)ccq@ET6Q^hW$*RY=V^#%oi=h3nOQV*&jl&dHSM#u>(X7(&QW@! zB-ewNT&8GToQ*NPVVc^q*SIFD8>ZI+WPLLQ_7U0K}*V4I0ndp7cRaW{pM_F7YFAJ%l@>+MM=;IMnUbKX$u;^4bvPv6vyqMpa?J#J2 z0}-5T%JU*D*ulDj2q7+rWD=2p37&<{C)}nz4g1tnVH~qH1&Zlv#_ro)RDDi+wvjww z6}$yBw|Zsey8C|B?UYVdioM`C=BqzOMwyB=lC7%^4bJn=8Ag>LpFFfF$R9>#nZTs#w zPqLW5`|S^Z{;zxO4?r>#9i+!hX=d3bpJw3Nin$|X{0eSkJ%@9FBeG?WbOoq|jmb5Lmp2(sx3n-T6eaLS z=0a<&oKW7%!cTdqw2vqZngpzpDBCtl9>z?^rOeJ~gaTvTdqM4jwv#?1RJDycW5~2C zMzbGh;E@HOBrR$@tV**q2id&5J$y(gQ*I5$_*eF$(XhNXL`8w0-H^Ey}>_G%wWO3pjnQgMvl)Kdw?N%B)+F;b(ktn_x)xFo_~`eKsRf z3l;I(J_WQofP`Gaj9LMqWQK*-05Xs{F1l#dDDZ$HB*4Ew-}2r&%zn9=Ci5=i&d>qe zDzMmdO&c&1T9dlsYeAosQWIo4B_L&GJJk@rM$rUtZi47Zi(;Bb88Il6N3y0(Nsb#s zvzjRlr-4MQ@zA&_dMSoRsZ?U*d!5WUQ<#fl(A%`!iqa~%bcKmBm$#)1w?jUDT(%41 zd)7JUJ9UQka*aQx{ED znFB17W$fvkNqjD~8V2jE={y1=#(tix4mc>ZUOb|<%GrV42_+gqB6pI+R2W9xnT z{QgB{^%tM_@IPsLvn9)MD@*&HPvH;Hs)~8Igd8A<0*EF^2&Y&#vZz#4DXmjVS!SxO zs-ON}-==$nN47FdYRf;yB&E_hh!0*sVU4&q6 zl`)qyk-NACb}LHbbn$t#W-5~lh?Z`bF3f|lRWm=`FQFR2=w@9Kbl1QXy`9s>Z05pX zsMc3EcfO#QcanrV;gx7~B3NS%QibN(dy*w~>qK5f0dAl>5Xyz)3}H3FRp;&n7(%>P zaN^5cZmaOzN$#)C3=tpbJLp8u3@>`fQEn@ryDmXIQ`B|DzQ}KovaB|?8nIAlQO@1w zk?HJ=i-93VN$G{vG3#_7DVsZun9jIs6JY{SlM4g{nNWvw5c7J}dr!ofYNC6k&e1E1 zF9c{i623=9{=K!K_v^+fG+CowITnGYmC{|-{;0LVz-h3lGD{MR32LBk!sjS%mh}jQ zkr$Q$ycwu;ATVfCU)HiVo05+WeigS|7|hYH<&3C&Vq^+Ro=rB0?2ZwOk!hBF3`w_H z25z7P_MlL>hLFC1Sm&!(Pab|{^Spii_GxDCZ@uof&;T9=qOT4{ z)5kten1nHJ(Wv+bs?>IC*1;Aq7eO*@U1!J4uBGT68XNUsx~7R2MvfOq2nFJ2kG6HK z`;{)g{FI(NKXe&4#)|+q(_ymM2T$LP$^Z`&AC$Itdiud+kuLj7XM&e$ZJ};3nJ|aF zdfk~P)pcX?g=W3F+jEUt{j@Z(UR|4Fok|L-`stBjlZr=g`WV4?s@}{ypqiaWGSzHf zj$5bi#gt`67ED;D+QUG%7RL6GGL_oEb|~Xs5F^QgH6-ymLbH0}SfRS7n51xE65O-u zu*D>VZ^&2622o@2)(W>&G?b7t^HAH7Q7Sf7?JG9@Jw{?e5 z%dN=pB>5dnFfyaK)G|dAA(eqDOFEV$*tdidR)|gg!jwZmjg*4!VzPd9b%>wReC#LV za?mAT(v||G^}`|i7_kZk_6K~SE(Wk!P^v(&BlqW4ZPJMunn6waXcZyjgLXW>Y+*jQ zR#ZRX-QM9R39!#7{wqa+!Kgv^xpiNUwstuYY|Ki_Xy?g%T;nytYySGn*(!cq-yWjrwe|}9= z|LW!Yx37N2ZYKN;@J))7V1Tv!ii413YjvrV-{hfqCeFflwuf*gkc@7#pR?4cb1=Xg~7=X(QL8(}v)^j2{PbHU8wM4KTvk z4-GJj_EQX6Zc}P*)^%;!6JvRr(v6yX9L+?pzWc! zHdrK-;lM=+YF~VUB3O1Hb?CavKw*A4AYMD*o0`am!-(CB)<=LOM<%>%X5ULi;I=9* zKENV643ke_&M@c``?MW+F8A2>B6v!NhAi$u>&l_Sk*9@zksd5?zV*6d#m8}z*k4yk(J1l(qevZ7vgv0Y&$<(jI8DwFhl3 zrD>g5ZG5kV7MBf}olXTfT|ty!yj$D!MT?7WaVxZ}bn3V5Z?(9jXwB>b!<+82+(}28 z;leBrT`oiCF`FtNJm9kP%UJ3?d)t~^($(ZLZ9CI4Pr6*F4%4$gZwt2486)YsA6Jjd zYCSG(HL5_!TOtu~6&zZwE*AlhFPmKc?d|VgK6&^R+xYI;XF1Vdc-^mvCZE50^Zcn% z%yFKzUgg)CeD(qPrEJNW<&l_x>+&giOT{md4hrU=b_Lqxk0IqE5F7A-T8H|+Cj=Ck zp{1iv0bV<`#T$Z(mgm}PmL;$uvMKSr6GgLIhZlj^cxfkH01GWAZ3*c{26t$EYIzHy zWFcRYFZl$DPwG3)Zb;$ zw5W{%hxppCs=^bFy2Y+Fg-wQ`hN*Fkb8~q*;gF;FhjOhT2tJ&X-gD@+#oIW1J)vRU zbB7jIkRceWqOOPxgpiReeunK06%P)|Q*#w6qP)i}2zjaEXPZ}C5GTwa?J+H$U|4&N zw5nhrJzqMu>Y02LSgHcA0$_pQ3pRTF zq2|%~FyL;Zl8Cl4?lH+m%T)(0F#T*10BO}jaogNEZ1zKIO2;_YV3LB#NJ4xuIg_c$ zSi)A;mwEG$OoA&r+#iFKS*k%64Mjr)0(!>Oky1F&Pn=ekmfICkdz}C&g=1krlXzMS zKFPn}l(_T|<}5p0<3hUpY^p#ovbomIqvP1(d_YZ1qkTM~Hr<)Op$o~yG^#M}Ni9*3 zdZMjNX!H=iXldI$jjqk;$QtS~&>t*kXl{{<&(^g(3u)J7Lo_ekbWsCC%m;neW;Z1I(~_lnEgdSL7rsTCrwRPQ}URT0<&Fh=g>LMct@@Gkiiw6}EUPLW>L; zA8bzf5^a!)(M^SY)LYO1qH{{icb13I4&2-dLx!G5o>2A#r1IbZj*Ad1EF7&x=+)kJs7K5NhHin0V3g<}*{F_<9G zBrwASPxLwzVfI#YOA4y0gN0hwQ%l9|a~$YEW?xAz6%~P zF)f&LotSm$OmOK_v*MPlyTKfOvXMrCnAkR>3`+uB)d^p&a58B9Y-8Fo(UTur0)7!y zBH@J6|-W9 zF7zZHM&7Y+xiFHaNU^8FfCU5GZ3CbZnC;Ln0A_KydtT{goa<^V-R?o*xt;QU%QjVn zq+zEp+%j~kmK^KJ@|P?~a*!^`D5oW+oDp@ehd^rAeO90-qafhx5+meV2g2)gha#Ge znH5$$nhBmBR$-In)(%&!SDC0qdT-Fkk_*h<+CyXZ46Mtnbw=JXIcQ(a1H+$_;AcBrK1S ze5Q^QhwpUm8u26)v?LE;%oNO7HihpBoX4^$c9+Q$a6R`$0mH4}^5ZH)Dvuv4Gl5f{ z7vbqF(8`u0m(hlh_B^~y*G;SIenCbz&x%77-DvYUD#bwLZ8BngXgUPJAPPluAq@um zo5@#nT-i1TKY*P_cln-*Ag$jz>?Olyqg%%(Z;V~p+_?Rpoi&1F_!qT0v^3L^uTf(e ztZ7Fajp1p589A1G4oEy4th%Tqk|63M5gGd%?8>+RSYoJnOwhXpXx8OZg5_cZJ;b`Y z3Tp%l6<2S^eXaLH);+oVz~u${^~;uON}#5p&=bsJY&DXF=Q94KLED8gfhfYuoU@nk1I zz0;5ZwG`km&= zaJrfS?I`LWj#+P;y6Vo)_v=dkv%+tohIVNYLBijr%^O|9LP3~BB&@gsUff)osdXAG zM!^l)J{#Uj)^pw6wK4Wi6Fj1}MrWz`($bK$J;4hHF;E)eexq4M#?4dmCw_1W#2Mup zUN$F{Pmd_74cY_AA3Kw-6086`?nQtb$@8Ka+g>V%ESM*OK zU+*R!0wx`N4ziulD}x@&QM}KXOsl0e`{?E1?lUaGv91#%wkGVM*i3-zK?Tu;250V$ z+JZu?Bk|GeLljn%J!fOCo$g41L&1GJz-Wl!@fQ;c>tlj#^-J2VZT~87JTkA!IIIUm z5_2apfUuFSDu7sybh|`wHiX8G_UWy6o%3N7C;j3`K_#K%TRHK|z-b9HJmelFaV}bx zmX~<~DJ+7-Bu-p>AdxTv?N7uHi|O?3f&`Sh=s6z9kWk&yHab=V2QX+y@)k%=Y4iL1 z=`KM)9U+si@lsZxwLVXlXdG8eI>saUg(;GK`u&-4W__Tiw#as!Xp2g$gmXJdK8N*O zu4`#IIl?tToNm8#NX@E0MQdVRb*ubX;;D7Ac;PD)k?eLoepr0^$=6BPUs%}uB$IF5EkqvK(aDI`AVbOZnUp@j$?<#Xlm= zg^!)-$*0Mf#1CtlSo$&$NkRdqJT8Sxie^z@OLtLHkgb@<7~GaVIg|zuU^r16Ldk`~ z3wO_mU+6`J<&DQBvYb1$bW7rd; zsrL>B%y`qXJmrL+n(=q(&69^;GvjaHyubVU>wY~m{_fSwFPerf_(4AjtV@gWi^>B- z@l)EY7&$=GsK~&h(crdoEV3>NSK%z(W+yxi!(>>XoTYu&R%tVWX2q|WDMnhJk5Jup zgM9F}aZCrKpF{~-Fm$0)*<)rEh6&~fsgN^@vzud3EIHyV=z+{7l2~9_^dD!cWeB^~ z{-Cd(AyV4fXpgK*tM=P&?QL5S0Gt>ZHhyRBGjNL3PG63d@K>8s@uF;N+T(h#zZ9fk zA#n_)PeWEst6DME)hB<9#iO@-7GrHbQifgsU`)=#F;9PlfGu)8$22n&c8sbxXtb`q z!?L=qvJD+R#BSOG#Sjb4)r#RqH#wqqq-o5vvAPNI>j)CPc1$`62vVsl6jV07;W7Jt ztc$Kx-=8i=fB*8y!>=sI7f z@Jg^2A`0Efn_Z&NF3z{SRl(I;m22J%w=Ivf-11YsAPwEl8`Ewr8+$rrTo1!JT6^0s>9qw{)x2O1z(}Jp=3lI>4M=0E<9$ze3Qh1cGNQ zjtN1x<=nmb9*02Kj-u+pFd2g3wNUM$i`m8km_Xtk{hW9cU>zPf}r3=zD<vk3aAaKbY(%-FP^lJ?*EU@=40v zWr40?J!D3n4*42!E}fo=tK=AuiO~S0pm9Jtky1Qhy8o%c2G z^MGGuR$!dM{nL$i{L8B+55KbUnB2Yl`s?lvLDpZjiS*5@ckf?*S#FN;^p0tWqt3@p z`E1{ee#bHB;H-aAr~kmrsvqhpMqD?+IV+6Iq+->@uH(GQdHFmcaqFAkOrcR1ST;Z1 zJc)pt?usI1UD}#%lmRwtIz=asHbXL>`jG-#V#(u{TVG6@Q7&LHE{J`ekvoZdr`38B zu-p)^&?1@BMmyz+MW`9u2prbCAR}-x3yi`tYY~DE5=_ft(-?x+9K}>8n1PO)X>4f~Fu+d|4xU@6TE>AKiLh@S-3Z5tdIXUDV$<}($$Kua zAEVH*!^kM}V);#ZD`V2NzBO4prjUaiv93E?vX{vZq()Ongeh5jo$Swm12q~WF8uH_ zl_Z5@9&d#x5j}#k2$SAxwWdPnG7|{HwPD$?gG|WC&=Vf89O>8(3(Hq;6HEH6iN@K& z-Pn?4L^n(5Y}LVvgdpiQAHikQJuQ10W7T#l_kM5kNz~$_-qj2q6zcjo0Sc0mNjEvK zvbQvG2`Bq?t_adHHFl2J_NkRM`$O6qfr+$tbr>#t^9^8R%%uhOz}o zTYT&jXkiUa$E?staFHfHIZr{nDrAv1zb3S{qoCwjX7AyD9-%VHG*8+QGFRT;XgAUI zpJf^5NaC!`QE#c2Y&D}wc|ZJoo@L1bM9I&4Rv1LKRX;}LNWq4XtwNnrNZOT!A;N_e zkTc%@G`e9j0aheB!lVlzL%8o`!sg)nW@0bQjMFuZF06F|a{(dkCTJYrH`gdJD)YP5oc{0uDJrr9*^4+AgMiW+P*$U7w8s?_q%-lJxT#4Dt_~1g8G^1*Yu{pM#H0w?G$g>LlO>pp`YWByPiFjI8Tew z70^I9Ywh(6+3c5TKC%M!K+bqij0&zbvBt|qSm3tRFI~8eK)hPwnmN4#>0#ESu@=`* zEc1NPzM^DbZTtc*huTZmwuYQ4hSr-R)%hqlTJo~6CSCQ569hs5T+wX8Zur4*owIC< z+yF^=REcEZiVVKa$0;1X7w%f<@I!QMzR|+~rT&2y;|e8i2m+et$i4{2xf)h@?$C@D z5T&hrEpuUH4$*}m8<-eV4nYu#v1X`e=q@6*Fw>H~ECLKgc;pFs`XDnach=}}Q5fQU zR|FzFYAKMCy@xf87HVDHR4;nqqA+ffb=Dg$vc!EjT?V)6e1`T=lv`nF#M;|wx<)N601i4(j0!&4ky|~G80!imnoi&_8Pn9I?e_z~hpMTzWZ{NMQefR#^vp3J5eX1D!!t4GHlz0E#hd+G(mp^{{;XD2N{SP1R z{{6$BfBN>rpFb0Bxqg3t_x#!W*YEEB+1R(9zkT^nuV3(mzrXwKZ=Sz@^-N#XwA{UW z{r0`FatVUIc=`4j`}N;mKY#!GXYby>|8l^S&15-6Z@WpcCe`{1IG2$=_t>;lAo$j; z@@%(F7+@x;H$hf7)B0zf&T%&6?(5Be&Y#(~H4<4Nw73WB0c0|EqNh*W((hU?#R-th zOb-%r=yN8ctfm2os`tzwOfV|wlby@ZOL?5Qy@CsCns+FHW=|H8D*2yTe z0Pl&g835Wh@@fs*6E|Y}mbjSw?LR49e=NMz&(Z5p&DnR4I__euU!ere9j)zD!|eE4BU zY8mdHLq~~@2UIh90df+M{H$B-lRI*{2~PVngCWyeWn44e@$zZjrhj=&YgH&k!KlyV zcoupTk11`lyH2X0pF~xXj9zERMovMdYKF#0rg8;F8@Yi;9n;IIB2;=N%6R*do1mVt zeNq3TOhL!ELv**axdcJICR{{s0On4iF!eTexXhDm5=h+(5-+l>^mh#X2^1kS8o`*- zQLO;ErQmg|PR03AkGC;qs)JQeUx3w#PQM@=Ufs>#5ZMS}U0j&6jn3Ti)N)!{3FL^d zlqP+3Shl2Eca|m5f zH*IoSf}C!q6G=gU%yowu|-YpT;6Q+q10ba>}#ZCY}Itg=W~AizyHiM?0i3a?xF9VzeGML9D0;+zYiK z8Dk35%|yc+`pAd*6ons=Y>b008yS&ApYXs4cw3N&siXFe4)VFBdwM>i759+PrFm0f z{&^$TYD<=@6%N;Kl!58Evw2nAqRYO*jSSEDQm*7@%5@@+ZAmzV{Uev|_EqkE-T5mR znRUCZ*i2X>Z+8M*Ac`WzJjpa_%`>%NHIf8xsTR+??R3M#JR$c-y?STzI&|IIf$ECM z>M&HKEkM+TMVZ|K>7niZF*o_~I5Q&C(1+cq|=549{C&FZCIx#|-=1e=C% zq^;o^uvtfju)Ap%)!?Sv>X~*{pigJA4wM;8+g8hIbFH2IbJ$esL3M&U^ol5P^3%eY z3}xQh)@?D7F6=Yy23xz*|6oCSh>pQ%+F{zThm~+P*+Iy;7L#?S#{t?LekdQNTi6pa zfeubBOGPr7N=N4+P@_){uq3qQvAWbArkUEYd>VAp%XbP|QGqYnyuNbho9s4SG7ZMB z8If5nyw08ESd1kZ(bJhDS{Ov4{wK)Oj7oNLPv8IPZ_IUp7Rer-gZ(?{OT$&vcX#a*IP(Oa z9N=GvBJWo{lv4Ini0OeuIO zAIDh3B=b4EoQE&>kV9#!ASuI88?JCOc}nd+dPp9BJ9;Low&_$jLmf0k?u9;HE!|SF zZp{8Tvb+vTszMyC=v`mXLJTL|I=QmvAa_+@O&4gNi_at3P}y4Q@P=$mPKB!8MXS4^ zhljQ%bOt8h?kz(Z`_uKhxVKLper>%zfBpLI>#w`(zukWG;m04p|3=I7;~zdzJHGe_ z*Cp49DUEAR8*{?sn{KpjFL}wsv@5}Ks2AadNGKuaaOh+mnrG3TUriu`VF5+AyK#-| zHgej?4mx9`z+cmvu`^pT_z^wM)Jz!0!q-NlHNw2MXp#*eMtP3{H7az7RX9uVL@Sva zF(WqT9Q63~EXmQ#y$QIU9hG@ z--Ea-vwQ*^4W=PLWCLMpkHYgvh;3z^4Miz%&mmN;YaZF$dxLNzULU3_N&OSn%tC`i zM1XHH`QErVn5P&mq0$8p1E*~>#wLU#A1ly3jKwI>AP(zBoWL0n6C#hNjYOW%r6v!n zm@LOzKznM?c<-H&SaZACfZW*0G#i~YeexqxakMATH?Mb+H6X+}^v*I&LjNqYBO0lQ z-eWR#6zIONUGkiHHzm}88ftVwL3Mi?}iQWS*9QL?Z>)Z1Fp-gf;{K{T^@%*!I`GwcrZHvGAw?F^pKNM|$ z{NXX){_*eJsh>*f)x##4EzPS(~ zU<*hR9K`O5m=kkJW5~yHcM<0ijyM(ZC|X^n8=d=Df)t0Y86A=I;=nMZi@)8dGioh{ zdm&=B6cgz-%hb=In~)9+iY~(}jJ6&L4H-p{+7`Eay1NOi`?^G#XEOhVDQCS#kvdL* zma21i70h&!(di>^%UIUgG;D>8na7)>%R@yzD3~)zC*8-rGZWuYX%pgi7;}J5WC1E$%nwPl_g=1 zbd%1X?xL9r4@c#Wl|youfN;5Y_bFcOXOPaoLc3J@?ftz=lWQw_ku4&4CS0%Jw`RG^ zoDfBsi?E_TZ@=Ako5#Bb92j14l}RA>!m_Z5PeEVA+XqWL1b@oz=tseS5yl#pl-WjP9Ue?8_Hj}Ir&f5&x2uUxk}Tz zCI77(lE>1G#-8R`IA!HX9g`nA1O>@3UTga{6wxzrngYOpl!1fxMGl#%YIHO7={rR~ z1(NWH=fV`6!Zw1vjd9F+l7B>Vkzy1TutTws?h0HOi!8`N56?zJY93IoD1^x{TOMRF z;-U4vqpFC$Nk%+S;F*up;cBaNT@*+SQ>I`?Qwk}G)yW@GAKD?_Wn%GQf+D~%UK&!5 zjP~pL@s=xy3^ivIv5F83+K5qsyDvr>PqC~)<38&>kcS9bCbOr1Ss)l@MBPbW+&sZo zry$TswFd#54ue&9W>fmxo2%h+=obN#)nkehkhp_0>`<}m+&eh0Bax2b3_J)<)(UE(YWbTRG{J) zT?J33OtIRaSpn@W-E^2C-L0(AIBoSLI}9C=UxYCI1Q^(5MFbM`cRU=_;a5`hw4@nb z)c%lpqR_Hm2_M0j$&tuXP-RfV%`%-b2#Kng+~>X$#|XZf*re55mT3Hoj(W_**wygD zua@tJO+nY(q~AN(k)}tl7%ZA%=8lF}oVfr?Pl#F>40bV5P1~qj%@@YL!Ox)cpP_At zw`f?~uMYyuw=cX=d-LSs*Syh-S8wmW{<^#R*KfZ2_~D1UA3lEb@h^bJZ@&NG@_-M9biv0(F$x-J=h=4!kNUN=f&#ek+2zWthZ z!_4yZeFs$w6F~w^f`_4P-N=>9Ri=#vHPwbt$~cyBvpS5NqT*b+`nc4X=o~{GX@j)) z*u8byZfpuDpo(X$$CW`KM&3Kk`BC>T)Ubes$T5&URKU$-3Ufn8^MJd0+yH&pk0_uH!j9>0(bYjtquj*JI8o&IY9u5q3mRhbs2Or zTDN)85i(r~gDbOFmMfpE+lN)zP5UE|d(lU60h&HQ*Hrhbo4(uLWeURxdcwZYnL7D{ z&F?94B!_%&)21N-X-bIb{$|jz??Fh^LJVERCe*kK8;4fl;fj!hGDXLgc8o=6%Lb%c zUDFC8wVX_X1==`*NU-@-!f~~~TlP8Hn4Eqi;OsLK3#d&wVc1p}ZVwr{fX!2cb(1B0 zs&$}lRN?WdB{u>KhUGMasE_n zDxP|@KwW2F8AqG$3p)ThA0cv?HbI;+XCVZ4)0JDbo@<8eLRX%QB(?Yfm-!x;6l}NE z>y|+gjK++Da|J8~fzN$T@-l(IzO^&cvgBrwsQ41CP3WP_YP4U zaglCS-%wg2A0Sw#eOMbMoJbybfJws)hX?anhx4lrrLHmrJ55;=tFI)lb7sYD%_yu; zo$#}crb5H+1yE-+$7VfkzOlb^>T}RJpMrbVSCNx(TS9|&wEMB2mWR$|lgrncF&4L1 z)6tc)*0tO7eK!06`MF>qD47fVWL+7CKZq z>;&EP9NoHRl0>AWbuVjR`mG4Q#O#IM^gV=hIT?gEW<}DK^tSw1Fk~CrRB1@1$V#71 zWw?m05CRBC2X2Rq2&Q72F7!}*W9CdN#80$UVVs#|ui&rlP$rb6pzb^lmwPI%S0pI-w>+#(7T@ z;X6)i(}NzplIf`oGtyhuWHM%+*H^t-erLf)Ogd5{CD)H}_YskaTM4OUbB{6(%MORMzHt`BsT`kFuTXo^2am<1>&)BfGG3%e><=0D##jPm1n!ix z=uCXXup%ZwTB0m8uK;@8U@`b3zL6CU%g~qlG@AU;H`Q6(m55I~@KDUJY!t1`) z`TGyx4EZr@H$W+yQFV)6bn4-BNt^qWL88c|+lstWBAAgs(8lm#y06giQjt@js(@ra zx08S+Lj5@i$qu_H-t-UMm)2CI<%6E$^^~~24$gT-?pr%a3C4t=>HR5OE?0IeT}@<{f*l~; z#S?|8BQXk%s5k8wGA|L9924l62CM~S3Yq@i=}yy48n)>a%8x}S>|i7u`Ve%=VnQ(mlZ(6ttuczo9L!5=x&S21_GHg6 zcS4c!jZ-FS6L@H($>eYa=M?0$m&NA}OR5O@7h4LVKjIfhEu8i=IDbnFA1z6`lC zH}pcd033{ia@hW`+Q6_7Kmpc#pm?k8*pGWctI*mqhmpw*B1Jimq%bS{W}VS+cV&VT zSq8L%=`E3ANf{QqM7f3(w1dyk$jebLQLrXN~_))o!A zm#IYn;Mf(qV~*1*L@S?%yaw33teG*ZJUmGnrs^_6+ABXdAjrjlzLxwZ7)%>>-l@4l z;d*3eOWoQ!NvZTjW^z$9W6gd0zM_q!4JAwlh5N8HQ9-W_T6Nj|i3@r7n_`C~NV9Cr z_R?IoT{CkD%cjc!Hz4`J%%;F#%0KTD(A$_N^wXgC2&oGq32Y9Up|nSAhKV*{vcybq zRGVb5;UNXp2Dg*^!!(i+)XAZ7oBzlG$f ztU)FW?<{E_t(x6m{3r@UTlu1b`|ACZhhN#Puin3WcK7wy-R&R0vr^bk-{1ZC$G`sc z({~^5zWL$9fBf|S3ML9wJT{VP=s-0m2vCdmsum$U?8w@n@R6yIvi+D!*ZSC|7OnY- zL0B?8Pk-~wag}NtB@Fg|Sg76}7Aj_;NOQ<@RGgyiOZI%^X!0#e{OsHh1cC3fB5m`mA(207l1nv zjsYWCn$M5T6gbQTa}RYxmbg_RY60alLVOHKtp1rEI9wqskpa}wM^ozL$}U$60Odv_ zY@!`EE>PF*)tP?aa%J6IZ^P{ZV{x{ zi9GIz=WkvM3%-By@b~|EmZd-Lh_`Rvyfm%d=h_mlp1*r}_x0C(4cGkZe}DJ=pFiCF z@#Fvg_~GLhGP}=TzIgrm?cG1$_50^Tizo=%Xwp10ZbI_h#3NT$0y zs$i5{^9?&lhr~KV+m~x=Pw#qaZ=XE;+FgJ3;{Dy%U-x&kfByfGE++fjDixq z1yv(!_V$-chxgkDIk9uUdc9$NWe61~{n%%xjZV^CW=B6wWd5$HS2U5mU_xSUkV0Ez zToqC+yS6X73(3UW0P++jnH<7;%z>z$Ip9JeK=*|n$2479gb+5t>4avPu1uB*kc$!2 zfp>*5>SN5IozxTbzI_ydtfW|j3}ZHePEyHMx1}d2Kn&PSp-&(oK>AO0x!|{G$(G?% zWb6oEE*gvQu+l=XoOBP}`0WBQwvFYj)^&dHPC>xMgc);ZQktDOtl6AY&0OjQ?&pJq z`rLFpEiYkDnKYTTQA}-@&1Hdm#qL>4Kh!h3+dk@`AIHO+5sXj&pgs0t3qwMdOjm%N zbkXLQ^;4j;54qzbkdZ@0l0J1*HiPr9iMo)sveJA9+hU%^oPDp2dM@LFq0C`sw$Q@_ ztk<_Rcdh;r=1;xmF=?szb7|9k3Rkmv3TV~91p&2?kT1RFaaX`ZD0)=r#e9jNDMgUF zQgfJSccSaOKkYgX7P>16iq?E3$ekUejEX!-|71GrAqFBL)ATB|zN~Z089$;`QuB898 zF+V>Gs}F_XvDX_evz}|GbO5nnJM`6ULX=vyOY}Bn)BxX@lnrB^CSr~yZ z=Bns+HIfg#r$apB+?P#;e`fF!FM+ zBN1vC@TKaIZjj(~;rG2=_k~XB5#gq|op|$YeFAY}pI7fil# zS!O106qPie@aFnaSa*}-md}Hi+g$^RsA^V6wsvNSKOI4v8a-cTDCHt`ue8n+th4l% z7J6YIG+q6EjRo`Td{%`lWg{~J{^RZlmZo(>xOeuoI&luTy zOn_6fk=q$Sh7BytkCTu+g%jHp3(2kLNaPUCrXqXAx zi#*42T&#}a0>{%@VXJc+ii(!)AfdZ?h+JgE0>hsf?uUK#!$eqwEG{&g1*dihAkKpk ze8wWrD3=h?50T?Ws&<);%fg6dI*E&jC@FOpH^HtqH-^o-_PM-yfdOSVl3NT2ZRM*~ z!x}l>2#%vKO?OX*KSJms>>b8-Iqj&;&XHCHbir#=_N399CeerE?!mNv4$QAi<8 z8?DGf1kLyk=R#4n2q&PYe#8sCYF#O~551sJvlj%MciD;|%)K)dze8xjseKRC_&$vGl{T#Gjn3S}3JwFsae9yy)`yt* zE@KRaVK>D%Ob!k|I-){CTRL~Ig`7G}FYE)wR_r6L#5n2PfRjMzH8Ztms-w(ZJWNdP z0akipvN>k$CSC2LohwZ)LY5=fQ|o#k{)mnK^e{UH`;h=YC}RTe5{kJt9T_GQHyu}+ zdaHEC*r6Vjlc+Zp8&07bhJ#bMp*^gJ^NG?F3)?zsC@R5P&9GpCQxgvQy#id@i06#< z5kdHYQWXu}+cMFli$W$7nX*H&O3;mrrMIeezA)NG(@UHMUKy<3%9sJ9vtBakl}Du> zKKkAlQsW1d`?>^!j@TAQ$xJ?I%MZu~;KO7bkXCrTnC|jKs|S!#@D~WnJ(eTAXC`uA z#x*G^JAfjs7XTrplJ{v=*v<^isC`55l3a+aZChb>+2Er^2c{LI%!TG`s=QHV*0EDv zhFSR3niI%8Mg;G7+;sCdB+z9TqXj7X6q8eCj$b!Y5yo`t+CZz;9n+wMb`1#=T2toA z_w;eM0)tJOc>c0g`w(rU1)_H0 z*kuut|nLcI}CU#@rqL8yiU@oGW`* zyf0fk6sWb+BL;p7I-l2Y#9?{MNnoPT^CH`H_y{?%FeY?K6iH?UmAkJ%(SrIFUHQTX zXYt0TFzqJ8=jYF*Kvbj-V}QLfm$Zi&FoPHR!bulo^3%mkW7KF=YHY?vDcT{$^Y^f(kQ47{XtiAhK?>40EEMo?xNQ;=7*)=pW^2 z&naDO;GoEU{Yxv1>`WGjYgT7hsL`npXJ*qaRnPR`Y<)1h)vX{6BmdZe_Hzv$#-Zk| z&nME~;u~ra6O%d>2DN@6-ncfCJ0&rf+YPm;B4ZITe>4a$E3k| zz>Yx-Pn!0i7av+1nJ6Eb9Dv^}K+HjUHg?796Jr{lQ*_%c%Q2O_MpOb1?){+8f_8+F zyB!?$VUI8^gn#lM!J`=`Zzy+!q%FFEl(PceP^AZ>Q=is-ro!8(aW<|(sX^LuZ(g=m9=n`L}{bG1gYR6*L{Y( zXjn2d5C>F5k~HkZ<+x9cCStOm zr3!KCW8k{eFGVB_C z-8;Y;LrZ)!({e|5yZzSb;~F>0^|}{=3X~aX8X)t7PQw=FLY7~9(}gwCS9{E!CT#gq zyOl1%8x|F0uG(5Y3#-9T1jCGj#k;zx6VxU6Uxr6ZO3TSE_hzYT;mSwu0D_YA(Y+JFA^iR3MjQ+0(wym zuE=8390H*-L!NBJVg&n)%EH%!Bq)6&*;fxZ3V zZ?XUVwocbKdV=a<<&H7-30EsAl)=Ernq=W*9%P;fZNSW00vy!z@C1^aj78PidBmhX zz0M@z|JGMI5pi@tuMjT@*pn9di*=QWX=K@z3B=YUz?08To&iZ73^*s31DnJ`z zww6q?VK!r^U_xU)w)5DL*|WYj-Gh_b*@B3l+ytbGSbGMC5_~xfzMN;&D|A2tH70?3 zY*(Ac$s8fP9ou?oR>LU;f0(d8lPXxT6T(;%d(@sGhvLiu>W}HXK7NrNQY<+3?eX7F z-#>Rh5T`_nBXoDOv!1BK=$#?-8SW+@mMtB|?EJCaXuYFWMpVHaB@nsU#Sms&r$`OO zXtC^LKmChg`gDBPpY`!yznxmS&S-urotS!>4CJ{YQiXU2pk_58YJ@24=VPTg1X6w( zNf@!FeLaUU3h9y*Yf`bMH3dEHWMJ`FA&8=r;*2Z4nA_-dcyS5S8Dp4<%K2tPc7e}v z`UiC#xU!AB5u(2Re2O&R{_DFZ4}TeHK7T^`@k_7!8fO0oAf{mL7bWkTJB0zjV|z!M zfjXzFr?4aqD(n?~XVFSSlAYLO@w;qSmU)>5Lg=*X?X}DQ4QmDQFg5COED?4Uk4%L2 zl}V8>Ws8$Rd}~@V^c)`DRR&D@$*ea%j|g5s=yEfTmxt3k>or!a*ci^6jvLdxmB=gS z*z=|J4A}!m?rqT=r~cCKV=S6EE1tu`%g!NHXd1>Vc)CPEnC;9uLOLNgj)O55Sll6? z%t3qc@z)e}xnSp}S+OgG^!vpq5-d*%;N2H{t-p?l1;sYyNG6h;ItYl>;1Nbs#-`QD zS}Rs{OZ}W*DszwcDnu2>;8_w$^G~jg`(en_nqR;|NQR5U%%1+)IeT8fAddoUfTkH z{^r@M_qM|AO&@jFwYz@S)|GH}d*-y`mwQpJX}V>Eivm zLW%`mKH4rGW1$C$bl9TFSNr2hzWNIi!Rh*9g;&`>mFK{?Kj?KN9WCu1vvquI;Yw-i z8Pnra>8gBuX?kc5;o07vovvr^*7o7cjrxUAe>hw<7T-vEt&Q+1f`9^s6-p3;@iY(; zp=ApH#+ft;3)p=#Lkj${KSZlEVZXIai(|B$+GCkux(Q5=6|-U+UD}rR z2HXMt7%Oj71!SZ2{=#cA^}|A6ROYZ-Kr}m@ygWWWjF2DB91O*wyXWuQ|4Iu`ru@-P0K z9v>V;1IBKV75nH7cq=Q`BWm60$xxJrR-&+k;wyMiCS>h48wt^)QDEs4)OM*u3TvGq zmJlywzQ@^u0KJSE=&~2Y@d$Uwt-B=~`-YKdrz^J}(k-mMBK2BftT@`k^<-FaGP->t zw=>7jiFJXKAXv)84)Kx2KeXU(btiHY>|9aw4g;dP6O~R~a@125xsExaX>n8%>x!jA zn|pQh`Z=+VE+56Jv$gw_uEcr>=^?S6_uFC3-I+PEhqO8}GlOe%h8Q4!h5h==w7L#r z1bVqC3NxUceTocGTfAm$nlzq8!E2mPYY#cR!?a%;!2_LvgeXjMC|1$JC3T$`g+=>1 zSz7&yXN94!X(1!+N_)#*S7N|t9ZU?i&6#nWC_78R)l%(~<=XwcDSmgBYrh55O^uzf z_wgjv9^;Y&BHRuJl_h7V!wwf|TgS+E%e52V!RcaMA&We#mYdhk7?900dRLZCXfYwP zQw0uYI31c%Q>@&2;eQ$@x-*f$>$Pb~}f-w2q|5ppB?T zqxf?Ij;_QB{vP^0jKbQAglq-){dAsdyzxde)hgpgoa7a>V4Q;LNY=^9 zaIg^wHIDOW6bPbe%c6PGXc2vcQsYhCpS^tY@b_D&{{9h4y?_4t#nnmj`kC_ix`m2S4#n;r{pEJbU#rK6~-< z^{b!v#oDmYyd00T#{ekC1p!R*r@CLWf51l5@;4L!})9V+ky z>%?AXVn5U>*U#XoKZ32r(pbJEkQ0DT_ug3HqX8!#EPVE)nC_AB_*ChV?LIS z-dpm}7Bjv68TJfXGRUo;+kuf(&`x&^qmhR-yzWn6jzHs)n3BhFk;;)-ujs4J)(^N@ zAID+he!AH!9FY%T2kn8$c-eH~Rj!fDskNk1$+y{G+yk+Y(en1JBk}OYWl>fay6HF$(3dzYvEwq z*q;E8$9K7G~VnW5Ba+#r@4EO z$N4k*<2eX;%#XlhdWt-Hh9Jf#ghAu-#dT~5gA0El zj2Oz=h5H!rfuJyE`8@HxifOeGFrk+Qdv7Sz^c)a8T!FIa&H?j&3>qd`NyWwZHLs_qyHd0bW~ z%@xr9*+lJ0Ige_jae{rR0-tg5Y>egR+ z-Cgzl-LtQQi~8~VZ$1cH{OQAwKYjaOcY6Hoe|-PLpTGU^(Q-6zU%z_({%TJ>-#@!j zG_PL2fAR7Q%`K`uECK}%Mg=WBB$$6&zm}lsw+Omvs z`cxNr!&!lI@@Q=CT573>nr>6SKZQXQg=m|}@7xQPv@T~R*RtIgIQcU+HxK-DA$ozj zKv8c_eo6@iy}UCX(quGf_eq&q%|!>PYa#C=)H^x~Rzyhfj@6j0Go-ciOl1^bPyh}= z5nYnamhZxgjbTGWaXE<>bi$_kJdo7WC6Fa`7xRk{Mfb8k%So_%5qr$q?xoc&E#3aN z>Xj@99%rIS^|k$XTwhP0zEPh(`r_*mS3Pw_-;O1r_fs&?E5e9Y77V9W z#%3hCso=a)+)W^I4zgEqg}jkQk-Dy9odCIBHeDC63STU!Z?EKD zv{>m`CSPC9U9a+5Ii*?ah>exjtmue)ReUcUTAs{;)=PXbb>nqWL>4JgM1B5Ri~cG| z(_zZv%~L%n8q8>y!AAy-s-I0fP$*RxORx!|%#ul`(ZUf8lsXRyYJ_T(apFAd&eKUC z+{&<@Y;%Nr;!-xRGH2?&dGEDpM>Gd#Hqyy7~QIeIKcwSt4U1~0RneKFVGFS2}a}w5YgeUeifRdmRI?(Jkb*+a3YL}GX6&U-GCG1)dg6Kd zX07ViuhWL#4#b*j-%nZKbua~{r)Aw#Ei++PrY;oF?N}tr;Jlo_)z!DV!AlT zTwoZhnOUIKa3VKSj#H~{><~MSeHqw9=zxz!%LFCj3AAoTO6= zerdCtDJxA2+(QhS1(S7=c|1{ttmoLQ=nB!MjL{mM_F7zQ*=TV%ZT)RR@Hf=aWh!ez}j? z%@AQ#L8rxO-7n7T==M5=d0ksT;d&u>X+~_Q=jd6ZK(Hw2W)1sGT`W?jz>Tn`>-$9i zysU!1CM?#C&bh5pg&B%q(`ke#I(v6AoJkgHCc#X8W{->aSjF^gqmKEY@N^ zqn)}WcO`I7Mw5mvUZ68(B7;jqh3>GfrH6c3W`^Dt0GL2$zbpPQI!<;M_3jnvfpH^( zA?ecHL#|c+%A<+{%?9LMvjEt9+bvnDw?c3p-4=)o$u+r(Xw5t+iiamq;1Zs2p?M+Yt23b>g$r#-Gi7%2 zF@6fc1lQ5>Jv;Qh&dBPSTvbd^O!Lk3(*^Kp_Ud{Q_-IM4O&~=Qs5$MBbV{wz^ArdW$b}r!(NC7hQIg+@`iY6TB!1|tCfE)m88XfCL5gJ7*$M|6 z)Og3#>3M@Ve}M{A7yY(dLJs0rw@{qPydxSZWt-#J;qN}|O6ZfhXVCW)tTY~(c}e>j zYPEtP#xC+e<>YS1b#7=+ZBth8T;mzl`TF_Y*I)OwhMK?M7Cw9PGg}Bl?U7h3b-^gr z1x4UAs7oN`-iv}*#a044IS8;*WTdI6+>goSb=dmdncLS5j&ae&T%woz-tU7$`yk)6 zf(6Qw-hP~LsVfxmx^`UItq_Z5<5=#u+p*5)Om7alX99NeOfjdH5dn!tPZ7I(ahkL! zj}2nqacf54T7zFlxTR6G6OBI|mJ%P^tB7*=Q851`h9~WyG!+dzI&$d;!l71?&E)bl2Dp|9oPAs=9n*+i?KX7xM0v+%kE^d z#U(8W=kmFid}d@2gjs+Uq552w^XAH&^0e>wZC@$>%SaSq_0hvY&W$wcX(XSg%nAiv zS!rT&`WtN93nOv6qK%bZ8anWQy3?v^GeVQJTycAMD3?$7PzIMd-V(C0r&icPS0_|W zJP(!h#cCGKc|oF<DYtj&F&bQk%ov$2oz1uSwgBf@@+P z-Z6-Qsvs;W0!DHJ;B{wQPp0Thbqyi~d21WHkXxTo3*C3GpjCHtIZuqYb&>IN)(V=` zi?1}b!l%-a6k3*IRBH!p@`vSA`-3zl0$j%FK?lBqs2yb!cRCq91w{yZ^n$EycXOKL zXwl_E32*GK1YXPJ)`jI6dnv4d|bwGa)FKpXn?M8b8RNi(rCk^7X-em4U$Py zMLSR65~HCBud@qhh3RZz(UZ$^P+G@NBxE&OQ{;S%rR{Y#lApdH!XOi*SIQPThLxw& zG-{8uY>YYWfh&+r5R~^cDgu~CP6z>aZHi%R_I#%4K?TtX-)T$&W$ZA*6d|Zb2)0i7Yg3yCIpRm zi_3Olz@Zyc84;RsMrZ^Qw6#4&I*(tz@dj{zE1o*08D3|So760hq<}dpIu-mbDffGr zQfbB4oe{P_C==e6{h_ku1PIq=+G){rwOU*iZxx1%0^&+>4k*nC(r?Vx3Nz?75{T{R zQG{ay4EcphdSKK5j?QvZv`5xR-w(PxS+BcCYeN@muHE-kXIWH?Ywm|*fW=}R|g8DQdBjkNfM*Y{5DFeD4^%&jo?1ecN!RT88 z($m4|Qi)a3;h-5X_HhtCDO{)fvFnbyn~4ObQ88NF6XeOQzqg@x-;U3I>*ez|zx&tU zzIgKRXC~?OyLVR)_`7E^OP@GHe(800x7*h})xTghK79Oe_rv!;>R;;tfAjv$i+5O$ z-}--hOk%!x`QrKO_g@l7!bSzE^Uc^?ZgTr)UxKjQd7c$@nRXbt4f<$@f_a;%H!{VZ zH&TEbj8e2_YBAo5oOrLgmSfi2bZGt$@Z=^ONnc!WD-__9iS?nWGHahk$R4{fXw!Nv zlh*6OTtiSW4gXR=o0Oio;w(GvLy&P|a*e=}rT{JL_>doS;f7UnY~f3r!y8!@121DC zoHaFA1)&cD_VF}Q8`@mVj&7z4*LEWEOZ#=e!vKvltk?2G^J+2*Xyffjxg!vLV?b-m z^H_Ao=f%gEnHqF+g~1|BCXlk*Ot_AUa~A%BLTk&xlKLiN>_}6#bV3fW)6%4%N%8;e zJ?%0JbQ8Pm2)ez-RguS>-L04agRC^NflL(%HNt$&+(T11tAN_w9O}L3Yx%4o-H)78 z)TXA1<V(l{#rP34#c3CiG4aGA~Z3d4|`L@oPFjh0#w_;zyINX{pOD!Km6fW zG9NEqzk2cI7>QP3rWhZ$J_@=;+dbXlP>}A%LW-Wq7`p-$sA*+B^?#yJsrwVQ{nj_R ztB$N9oDB4ccp(I+nCEDk!TJ+qL}XHWx5`>p4DtW5_I6E@+g7&rJ%2@A&cq2v^!LXl zCP5MyfEbd1kwf1oG`7Z8j7D!Y)~Dzh?4U}NpQ*IsKV z*${|7`~~~DrBI-7)XlUCC*6e>w0k3-5$hTYjdH&ruQ%Ba z(|sGktjYT>1nhnASY@!V6_ti+wmo3+On#HDt%a-280jf4mNw~BFEwJQ#$K!!VScR` z)TIWn72AhQhyp;n3ZzBl^d9?Qz&n}%yI{87vM@?OPCZ~+yTi6zV7!NFEVPKNOhI%# znfwQg`*o&1xF{@@wgg=UBzbTzoAqSojDbcpgV&rV^K#f`NWFVj7;^z$sX$yXyHoVQ zJRnQ+P4{`Ei&!0!;WNJJMA**6UUm#^j934OPQ! z)Cf46b=e!M5KbH3c;j(oNPZV#V{AFp4( zdG+x8^B%~};;Rq8`9k31_3L*Zo*4TI<6liTV!oQa?6&#qx^4V-)`=E7Y_1H%7e+s^ z1gz9ehH0(G1hOSWvG&!Z1~h~131pg;R-5qGd~Euz9*7shv8_2sp)Luu@0Xo=t4zd&1%PmMX!Tc z5le}6w^>&`fLrJnICIN>1xjFP#d?}`ZY^%%$UXcX#(L0Mn-LH|RzF8=I{au4i$=<7 zpcyDYOfz%Ued;#gk8>dYZ|LMGxRM}bre&b(AG<#;X-4dzoBLm0^dWVqjeWtz0tNVm z3$f>6x?f`Dckk{VKDWd^y!r6({PUix#{Sxc_432(Hy@r5m(d1<`3JsiHmg4yTRvGc z1wLjmxP?oUgEfK4>a0MFPQWQWC?snmbO9p_o$xWQQ_2Y6g?T%Jn9#uXxFrE1)ei`e zjph}SZc}@3&gUg(B?!o*2!9-lGeVwn*u7~vW@WxQFIGTWMpm7%nz%j+>A!27|O{oeKda+*DS5oE<6h zE(nL#<)YO+Px?S@UJ%pONjE5;sOePUOYr{EIFCw(XB=M=Qnmc9yf5N`v1vn&_6D&f z8VCG(FkB=J;XNRKffYeC?}*j*Ga~AHV<}Wq11lAdr^CWvw@Lxc4S1VIg)!mpqK_Q2 za^Y#msx|C7(bgVNM`)zyI|>E#+vuMxu`=)K$rb%P)5abFp0jR4L)wm-rc%j{^sv`U z?t>7KZUU|&8~O$L3iRHUcq(&>yoA!7G-n011{F!kbH%I=>!EpIR+cXFPUa6`*}xG|!CM43#n&4acX#0i*-jQcvkouBF*ub?HnbL)b%ThT_Raf2ePh@{)P$ z=r^aL5Let_1s*2B6uBsC`q?innrqI4jUxMo%3sEYC_#*cJ}Mwqa7L{eRIkkZy7!v< z^@=v{j$5qW=D2G!tWVCd^~JlphtCF?x33?bf8Lh}GD@A_et7ppSrbLEpmVw-$&cM; za|eXooEt)9Q%QKzT$^RGiUooUsa>e756lfBl3O#{ZPh%<_t0_gT9{zN4{g0P=8x8> z#S)XQ*(|7(>ITaempkPb3~zR#9E%^LS}LlHvsIk+kTVd-*lcBQ-8hm1BZh`mNr8lp zoi$bSrkLRw{KmS2S`Hd(=%ktis}=UgbwJ+*Ca^JKq4zU|XoY;lW|SjaB~MEk+DJaN zy93is^DgYG#Bap8L3^vAkTog5V2?W^Uon|Lt|@gWeHE^xGNTj!*e{p04_P=ba~kh9 zpNjTop6}PoUSHlld}h78dHdpiz5Lws9)9=zKfU_r-(223{O8}k|Kr!+{R$SvuRp6W z1i4>E0l@;MlV~N^bvZ)lbFfG}GmC|%2F4g`(PBdvVp-UT!oFcpN>Ps0jP`;h=G6Gz zVJhV)d8~HI@DpG`SD>}_=;l1746=nvRcr>G5ZhDhcp6`Fz3d2+?iXcm+uASldQm>F z1wTTFzih{V%ndDveM&Rjhf&`iPr>Ld>BLfa1Bz%ln~b^HD1rZlTDRdEHft$UWj=g4 z<}wF`R_Iqo7$50{D+`NdDMB#9;Iom*izRPIowT&QJ~Y}t3-3HFJ8b!Nat9U63DC#``$r!T$pG);xJ;K#FNG8&Lvk}W1Nd3OOgMihcpZx_ z;-wvmH&=l%L@i0#Y{-v`Q;HDRFfj#Tc7Q^9x#EuutfeoC}m`W1u^wn0({%wBk3E9D{C=b`uhYmj7OuGLS3F9WJYMu(mEsTjWKb4$C8;1{ zkD^oG$7Mcs`b`7+%3VGXVL2{2FWV&>y3yLcCe(RXVMFb2T_0pJ5_#G-c51%~{-o1Eu{&^=C`S(A5`{%!Y`@{Fv z^83G!Extc~_ct90-~8~$Z@&NLFW>&1{#5FN6Xge1hT*!v-?#+2z~nVPcH8Sh!)pH21?hd#qDJw?gN+zDf9W z=7t_h|CEJ?1-%j@F)1|63sxLq$yNdhoIP&VnT1$*8GS!YlU+++2b-1EINmtmU_jYK zklE(aky|%!p5;*qhz=VBwGffL=={H=bkU;Sg@N`=xTro4Vy-Z+YF7QKv~eivo6d;V2uLxUt3GBPznU6*(lP~ z_=Mutojj(Lew`^c;6o8$du`1P)4|Wy3%k61{>3E%L$28NRDazd9Z00&b`Q%oxM&)l^q z%d!TglsbA!iADwxj$GT|j*ebF_;bN01a2e7^82c{xh*&h!60b(vpP7+ECeKFmNXAq z9$_m2Db%Hq>f)A;Pqtor^WyH|b6fBI`}+dH&pq#p6bRmY_y@-yW~}O!UZM?r*0ZHC z;&Em^WQa)V4A#QkYhp;Rg|kF;##sZ?jPlbECu4Vz0{3Z}*m)b26s}LE`lbkqV;b5EFd-MSff7W~DoU8fGK4%YF^$v#s(Fgi zA0oD{rz)S&0Kj&)f{L4`!t8T#x9Snq`+dL81(T&^*IIzK!MI0gk81QtKXFPgS5w z-y)@^Ac10c*sR}&g1=>ebfHbXToBzJKGOXSFK-mjOVGrf1dxV`1+F$}lw1#*5ESeCy zF8jvaXTpuS$>ySNgxhpt_^{(Y3QYvb#hR$k@QSFtdu`CZ`2+R6jwMpr#%0CU0tpd% z!QCSgg!Z9c(aa>$xC*@Bo{1QlTMgtmv%1h;-|$~ywTyZpolYdmt}Auo363dtrS#mb zwwc-{Q5bt0-5}l4ZDI8>x~xO2V_>bNr@VUW4d28nFxrPh)y<3GmX!q1O^hqb-J-8(>!LWrKZH3SU8#-Piu^{T; za!v% zsdWcqV%d?m=*^87OVV`N6LUg_^sa;pt&~Z}N)*sWbq9f2z3*bj$)*oJp$I|u%1_;x z8(Lw>O3Ar)p`^t%<#qcRP#gUQ20=C*VUSG0E~}Zpq*3o>9I`o3nt0wyry(xYgf`)Z zpMh~hTEnf2u8z*NFkXdzN7`*GC%9!C)niXqoAPAE%*lMZ&9zk7*I{ZnM>yvvSBu5- zF|NbD;#vT)#0;yMb385LX}@B&j*m&PD)i|zZH}blL3ADpjc0fWx|0VL3qE?Lqq-uy z(P3IB561HkVLx8e<^*t79m0%U!A2joqL8VBt1%f|Zw=)0O%z%)0<1iV0vjn=4Z~jZ z?RzjMTyMlIW=0(Sv6(Ze+IrHf9JGC}CNfx*kqul_W(n{(GLayRka&$sjW^$Z_JTJM zhRCKvjdFiwlwus80E6GYzkB#BFn9v*e(re>msej17QBC>OzJ7dqsWaMZ%8=2UV3Mi zu&}>(MVGW8deE~Tj(EZ;;(BUYx&lMHdYUoQ7!N8lim8Zl)8=V5sGfjmG$CjuP%y1Y zAW_-=7@m7&@FSM888%32+FX9TcAiU04SVm%qf*%kN&vn>G%*JA{>#tSZYsH*Y3665GeF5pf&ZUK?BYtYav8{WP_{?_Svmn1~h!7k) zo0cAIqy{+w#F%UWQu>-q;az(Kz5srRqtHPIKA0!@PLG4=~ zXCCHT27#8Xy?ebsC93dm7veop2q8bSZ&;C4Pdx~9ubPcoTvw5 zSex~iieL4K4<%?DzpXdz3`hIvFagqFlNe;<*UiL+3-dR;J?6Ubzlu!Od1NP;;yXSi zKbwshnBRjg<8}_hpD}jld1#OxPuP&JKioZhE@ZrW|Mube=Y5fG&Z~DX-ajEicAIEV zsc7@=!Bo^}&RuoTO$CAKy>WEneFMdVz8b~N&lw?$7BAx-EJIsq(W!9W^?P+FPGQjlvtUz7|^@hOGm`1tPb;d3|ZwA8QkwK@dL)6c< zd$+Z31?YmqPj{4qS6@cLPnkC###2m6mufhFqpvTpiAITV9L*47%g%D|G*X=9Zpmix z_5}%_NoamhaD|%cl{{<-!FyvH(9W;=*3GuBVhnBO)dYlt-RCt$pNGQo=*k(^S%2qe zzb!2uA^Nq!L_jwRFIlgA;X0LL*0HkGD~Mso`*e;S(WtSVgYj0gu>GsNwOEOjdc6S3 zvMhO1kg=`=1*l=sI$}a=aZtHzpnh5^e=f5r3NOlXmzl!xhREBx%nM&B`ghRp6Emjs z&eztdkWw$oCWsRYw)2Xy3lV)i5fC$Br=9LRAOc858?9&(vDpi>%yYE3q?Ujn~4e4YXnOxisPdO`pXKw10sfXgD179gZtWg<97>C*eJOl86WzVS@ zch?(tjS_|-KPE3d4ldzVL_k744GI*AB@#~9iHh}}yp3+yP>0YzIT?Mak%Vn-=H)QX zMsX3WN0GQACWk@oJ$v;&8v40&p+=WT-M)w_w9du^S=xRFFrnL*X!ot z8>rZdYT-nAg(ka|OLY?i>aFdp_v|MkFww|y*{*{!r6R=8Ic`@oaM6OzF|)QLG+fMkCI$GGV+M3o>zJX_x8ZAIOr*;lz8S; zcYMONSp-qcz?=54r?Yu1ieqTq&I!t0&_Y>Lfzm#WFqrcUV7pFx)P+4p<(huQon{~1 z;b@!X-S_ztk6poH2}*;vNcQS6G9%+-dPT2P#?v<7=t>NiJO$xpd?bx2$<2@5H@dTHxK%!4r({;)hh7~T8Pi54X zk32#09vGRV<~L5dXvY!8u2^|duweo<&DX=|^^oM0RbYy(^E6?v+%i*9V}J(k`<^!x z0h}3?Zi$1~LFy!`E(#A2xA6X>{;MliavI9U3cxFoTOwkh*`itgIc zt7UygUR_TSH{&~V>$f!dHVH(`lUB*V%z&bWQmapfxvxLIRm6UC_wcLfw|e?x7dn=3Jp_FaHaphOzF9ZZtX;5ZUr0dx zI<`HO$Y0MUZa?N}FNyXQqF%vQ1d`L(>nY-{w}6tPRV%a{$(!c`s)n|6S{}`^X2KVh z4eeJ1g#{eay2Rjh$|D>-o1EWzOR7$jEbRb@baHdNN6$p9vLCv1r~{N;$Dl&~bTK?R;&^Xadj3V2wDEjcD?(`iv__ zT!(Ow6d)%Uy5?##Zi8?}WyVCo10Sqqj5wz{lsz-kPqD2LxZR3D8dJGB$6(dU!!3x~ahfSz% zZ!V(9J;J-e!4mIeHp2BipV~=V9xExq0w&Nk>8-25JULPg)vG=rX*^>ifM1rZt)xK=3Dtv4#RK4d-pT8l-Vf>A)GY8ZL zyHRyoO7^Yq8%FX}@CD4uR4?0l^_#B8w9I-@VS9wHrk**qQXWFK%cwj6p}wQ~a)fYX zKPh@Dn-+jiTK8$H*tJKzq|i?r*A&KiFg%H`*Jz%>7{%9xM2m?p?JOMV$8<2nXzK8O ziC2MI9Ur9)6$L_i` zx>a~{d6O4v7Pfa|1Tbh05!j(gwFrQ?s_Tfu6!L{T^vgOl2==Ex7t?Ml{-z8nM0$%9 zi|ExXW`elp^P8qUGxx!+f*Pqa)R|Gm+;KZV&E2X@S#M`2J6+-!ic+vq?|&IPj!MdY zbYf&3?z#}VYCGE$KJALO$T8|Pu(|`Pq4Q=MqU$zR>QE-BI&^DU3q19`2!o9zW5}K@ zXYUcQ)=bQWP_SruAUuuyE`p{5ki(pKR{S~yrE+;J)}J>@k+b+tSErpWS`1~IE0z%K zE$iBtL(qFNG58(lI8KMOHl0M(%2C>t@DbzOYcPhH(|*={+_!?{yek14OH@;Ee!O`( zp${r(PK~}bq?>}yNg?g+80O$kWr>~PP1=^NUJdE!LLuJ{=aSQ!)2KB24S;pkZziOm z)E!OcdUdRX_4W;O2nz;gjF+s(f!vTe_z27|f?Ee9+m4jWxS6WU=B9OrE{;{yb{bhN zIG#^P$sXRFA}BiJyIw2|{*zJH{l7XGb=~otnnq<8UYF&Q`s@44hvi@M$GeALeO&YS z=o9S2B<||x=sIZ*TVDp}Fm3Y1OJi96Ot1`H8 zn65ZbN314SMDty5HBEn3UfqXgGoG33r*K~76e{Ah#YtA#sizoqK+3+=Adg!`ce@oT52gbg z{v=wj$}L)($cmNlq6y1{0KZS?Um@#0)w{1MAliXo^^s0xTyMetZ=_o!4@^U-DMnEY zF=OV_=4&<%0%L8uHEuuv*$OUvyGh~;DHyA{odJbvlTsvo-$dwCp53OL?srAJg!gw3 zpV<}f-oJnU@ci?>^sadI^4;4HKVc<#^ce%5-k$5IqrV|!fygF0)S2+%3jH3F$|oC~ z@B%G^E({4J3~=2^XbCMA{1BTChdm3Ik3o0etPjY!JY- z&`D?4VmgX=r&fqA{skSFMd`i~9ZRPtBBHdft~0_3z)jermCqeXP<*HtU8&19T?9i9t)Kmpu0n8H!?SR0 z@o6`L$~BEKUDl#!QjO9v;qzrkRV#W?K;6$NL zLe{TEy}>;=$#oFU(H%5)wbe|m#xm0sa>l>Kk)yTkbOy5-8)a;5H^Js+g=Fi=dbjwi z(eRaS!4kI=B!&B9{Iz>^_wbo}`%%&3;rZu1EPwxxvw-?+f8~F3n_qtX`0>q?F&6v? z7{)&R?hYJYAaWdvL_7IFoj3Yhqsdn#E@Jlvs$(C_=+s$^^H#uUnThYS-F0b&tiRN2 z5atTnDmQmJkf!bw^%FBOMcoB&@a(OgVjeNKx{2O~{jhqv@*(=E97AZn`hFH})*}|P zwF|*2H#&O+(DwCoi&2ER`PPhh(AXbFo#>E*=`5GCI+M&*&bNb~6ocMTXf!$WpW+qV zI-0mj@f`Z6if5B4DVh~AQ!JheJ~lTV@2k4&yr-*&iMa1LQxM+PbPRnx`JPPQt;&dR z&e@6`Na<6yY2E5E30I1hKfBwX>u~oCl(Lk`)6Z81UFm_DCom?xk%AXS>D5ITf_+A9 zFk)hjyAdTps0BhtOmbTH)0t-L3@2Q$s9-F0(98-;I9%KZWU6LBit+Dk`bEGEy<@Ei zp@$M59c*SLDNLQfvB4P;^#iEyIvX3P)$X^0c&=}=Vgp&CwOHsgYL_*24(NoMt0iK&H>38b zOb_v0C019RcyXH%W5VfZ44A)EHx6sl0T$Zo&1P$94o^u;DomF)D9^c~SK#$g;UX&3 zqLyTDl>U;}DOMLsjA=B_ZUN+e*sSV4>GGFp(~UqHWali_xdm^7MV-PZ_aN~(VNj*1-iHp>FB@*ZH5^rI51R%9E)kfY#HiH%V<+?%K>pn&npb@ zntcp_O#6`NP|a**%cnmL=UkU$>yBD7PQIwvk<=*Dm-Rv5yd8n=c{yd*H)eOxpln+-r#md|J*$GTGjms6IAX&xXrYEq zNgly7j8=6c15@D+eLcPLGU{?-oDv~3EpFV7{q!F1gAUY52V0>czhLZFgC(vDWziZ0 z9JuAp#@v)9=!8FDJ?SK>$AGK`^O;#6M$iiyRffaQ3BxE|(AAuEt%|@x*e7g^8mdxz z**mVXXwQ9C@eBOFhI?JVn~0w?%MSGY=sGm-ha(%!eL4T<&4SK_14V#r=l`P1a~5t; zvPDLR{k+hI8I<5trr)oh9eO^5x4->edvW*ht2zEl{p}6hy?yikXUX{N}swzUE7R{O)gm{r3B>PwT%ouaxVa4YA+;%ly^5 z8(e?=NxAgCBc?Tdl*f*kf9!~DX2tgp9kIdv%8pn(J7U2Yh9@y$9IP$&Ojqo=p4hN% z6I|kB{b^6EKGzd-ysr5kf9{ESocX$09DixkvMju;pGu_HDFf8P-s*IP%d{X$1UTvITL~$&53a9X{IN}XasN!hI*%`uH~dx3Z{rK>!r2o zTF^=9)-vRh8h!&oKeKu)p-16A=)2>H<7yRDuggxlu=v;wn}4Aj20{7~x8Z-?4ckd4pLD~z?tl4p-7u}Vp_rfx-LUy5-7xM8^--O8 zxCcLW!uH|%7Qp1t2&TTG`uEqD9?f4(i|aDltE#fGyl_A_m<`KN8M>9H;5#_QN~ z-;`!}B(mb{|DSC!pM$R1tu1Djqr*OL`UuN0SJSKEf7TT+qx`XU+yX!M#+boIH%7_(+!a|E_u2hpXKW=CKRaWU&Y1g$ z&KM%DYa2eb#vE?chM;wctTX27)tXyWNa>5M^VJzuv)sB~h9K9g*4n4en4>ec-gU+t z&O2vktf0(K8f~L7~RLTD=rk56Oh*%d5#%FdRPpXi_-Gs*+j$;6jg*z!)S(lI(K0Nd>W?xxPHuU-oCzj zXw0U3gMRN{zkB!I7*VfYy?FWN!|O*if?s;xudM5RW<~w*-PhlLYqh+0A76hssgf`L z_2sRW_vZZvq(tvUfvYgMc8wV@e+GjN)9g?5DD98(i5^uS(co}Lkh(*I{wW%4*pK}K zKT1gK6C6Czpw;xApuzHs9I4?aBq`-NKZggM|2aH3Jd&hF7_#?x(43m%GkB0`+#4V? ziqvV^jMnfY9<(g7r~VIkP&i_t5D0mqX1y5WJpTiN)H;xg-0)yP1@|*Sss_Qp_zxVZ z{WBsQ3=%qnglFwlXA@m$P+yG<7q2 zl;_W!L0EK;_;rkMZmo@FZn%)P1og}wT1Sz#zvA|ZON}(8Pu+R4p5#X)v-P#r$W=*s zbK{k_t}qN$YVno#v>K-?LMEm4hZrdnw-vW52vx1sGMYfBAYerFT>#}5LEvzsM8z4c z^ow}{pCE9Wp+tpI%X%_LL0z>u9)7a6iLh75gH@U~_Jly7^XcfjQKH&Y5C}uv&kR%l zZ!n;T5jB2hL`B1Z;WGxD?-)__=P{t4PYhVw9R~Dw7!U|Z9dCXL0>>K&96y1;;VC5w zMPgq}Y~cif&gOhSgFxuL%p(W^hBUNC5a@ma0>@^9Rl5D32vJs{f)Hg~qHP@n{T7Px zYcwtJd+ax!*e^E2ezcaJP@;MrPV5(cE%s|s*bnHJl)Da}DN)-a_A5W3MCAZGNy!Hk zQ697t`<3CiqeL0@V|Qj})1=)X+Tpk%x%Oe7`DZ6lt+fNZ7eYzV2Y-V%Qx5v>G-aSAtS9nq< z5S;ILQUF1iBxqY53%Jv@HvK;k8toLN>v1P z=WRF<;e1jwLUT_6;YpP;1F!i?JvkT_tTrDx4_8BaH>wow-6tM&KgEM)MiLg?Yp|fs zl;hxn;a+{ulUg~46~pYs+-ESzMKsRS4G;ENZ(B#%BTs4u4JtYoxN+V+Ql#cjL@DD* zA)BjoAKlzXB=#@chw^Uxc=zxt2BmK!DlcCkE%Mrs*c<)v-N#2t$S*zbx$gP;_aDFg z{olU(nvUupfBg1wS_OP(-PGmsZ~N=lU+Jg5eEp=8y4XpHV_%0se{sZBm&L8Sv@ zRMIh^Z*;ln<+t9fIe|BoRk3T-x9W{3OVQEXg)7>$UZ-BXqOAbNz70r#<++{8-(!MS z1Y}ZT?#yw1bjb57VCrPM=%A>rnAsZw;{y{Ej5?zB5w=SkC#0bsYu0^J$kl#8Y)7d> zLj{cr%6>YX+UBu&e#KTTEU&lkcO@guJo@lq*eD-h2T8xT#9UUqbG8ceWzK7`PP%G@RV=|Q?tQZNP$V(ZP!vsN=jNN084EMjb@FA{Pg{zz zZ)_qz4g17XbMl&_m>d_}c7A7$7U%82ubHga z`V4w~^i+))&>3vBiRbzB#o|I0F6?xgMK0!0M;8X)6Qd;slI^fA+Coq@aRpi!w>Ikf z)v@m8`&e>WUfex=CYHSZ@bcZm^UwPdvE;>vmrq$4JJL1b+BqVG);ZA8j=X4RV778W z45qX?5xJQ${*{Kfy|&%=|yxckHT z8&d_2G)13nGl@6Ug>r^Xz4bw7p?1QEdK%*tNjFwoDU)k?D%dDyM{nl{xfaGQtMPIZ zrG~Vbzk0=u)w?=go}3+Vet-Aynfv|r!>d;h&p+>r-0ycU-o1XBx#R0l_YS#2OE)zI zm7-I!FoLGEadu;*N38T-Fz>Kzo-9A?4E))|DlV}FdMX5n8S5r`*VF8ZNloeEPV;@+ z2NjWlL>oBBZFN!e{$4G6Up{3ruV zp`7)Ae&+il)E?{qnB1LU1s>@^=uQAs9yc*>Z;u8Me$VZFjes<785Q^JWfis(WkAFW4y*;3$I zZ@B^R5I(2Sndl9zF`uTj5hIT@HoQiA*TK!y{5blh_+uIuT^C(Nt-B$?$MGXV6YC~K z&xB}R$Z*=8BOY~deq%%fAJ4P4+PsiH=eP_wGFuqJ4hA=q01VCUsxx9|0F)VN;R5(7 zTdijjqL0Agfag;?alH<7Bo=_34cRPjW=Ul9PD@*EOm9S;or^Gl%PpBf(?7~8b65V`Ihszil%yZPX_6b$Vd2_=&1F(?g z<}%LAb>C&T|ya%f~Ng zPiA!F<4*bbw5EZCJR&l!l!yA=IiaK^T(5K2lR@!@bllyib{3h*flHR>)l!%C^@W<4h647z%zLNjdZNbS3ZH+t`JO0EIMj8aaL)Ptv=#q}_dzE;?d*CXzO`?d^wrYS1{6 z^z#-&^ns={C`;ek=fR~)mW~#fvh+<5U8|HUrffSI#nc3gm3*g!%MDwyF!2*RLx9@< z>!L_S|Ir$}oazw*U_p|5pU{>7GBM4E5Pj<=Kkuw7p&b+ZR<_m5ywHNzSG&7SI=S9S zB*5%YsDq#y1~m=}Hi*@&Q=3dek9nuhX?dfd(HgvKBFv_j9o*+%3+OZ~BOGoFL9exx z(mXQ`v0&ks@QN(HPo{-WGs2mvAg07Z_`=yS*nsnnP9Jw7$AQP!kQ3;AvD(4-r~y2XW?L%>A1XyGeqW6_=x)U0 z6-Rm9a>M6sU8V|ajH#?ad$(IliN;lF+u2o$Saxo@nX^DI<4V?5VruL#g#uQ3(IT1W z5GJE_(I#^7^ox&I~e~b-W3^EEk&zB=#WCd;WV&D4JnvqHS9QL8^Hu* zpT;NoV3gA;fWI>^i7*PxGiyG2Y#lHLRUeduC0yg*)k_W81cE z+qP}nwr$%T+qRRAJH``roG03Ozu&NrY8|iZs+yx_jd_m>4G)BVAm>NhO#9Z|-PN=P z!QQ5wSB>rc=y>~o)uVIE`E@_%>l66ae^&l})&KPqe#5}w`FJ&l<0h7y9XK7+Zm?hb z$@*~%iEZCXdUUL#RZ&eU8fn$sgZm-M@%+N;)diPF|l0wyGa>&Y#|MrhI z0;9j?rmyt1DxFsz=V&-JB1^G%r@Tn`Sf@$Ul{yN~J$Fm_f#tN27^ei&lRDKu)aY%R zTQZ43DLyacKRB}(ci4<^mz_m0#@LL8U>0|_=0UTriHo*X%ghIBS{M+LK zIEw#vJAhTf+J+_^FLl3Sr_{AX_-!TCBi4!dsy>CGE8NwDT&Sf7LNq2`sxpBaN4=1q zaF&ay*#qn# zSc^*ylX@PF%fU87VhLI^r?r!vwyUHu>Hds|n}^DE(A2wVU8R0Y%wi^7FDynjb;qZ% zY`+3@<~gFeMsc-@8lzj3w2LeHlYG^rM!4cO5;;c&H{|BauQj=>DXT?0+92WN!l^OI zQ2#$n1jGx4JyIEMGl!hE& zcQhZ_&{vPkhxP_MUma_M7eeLwPv=R4RG*%_9|XoyHhG-y*TieyetzGoCi3xQb*mfr zXP*CNTC`S!VUIsbQ(6saOKr_paXF4BSdt~VuB&mNrApm7K)2Oa@rhU8BX1$(R&qLX zD?3P-O{`*kuVxuEBESW#>qDml_jmnlj8G&OR$lo={~J5Lgcec`qAFu?&)SI6JGv5M zoe!k;!l4ye#GpIcEqQ|40J5SulijqWT-YmR%nwa0A?wUAVwf6~3YVJ|69q;l;N*$iyo*)tZk@kriPPV&tZVae$AlV5zrSe!FU7Zez+|B!?1hH?_2^@Ov z4j4NY)|}K9rqvmA8iEl*1IuVh<|+S2iCtqU-ZX6~hmzb8sRAW;d}o-qlwO9qhW9jy zyRiDRdkiu1dC_Ola>aHd;b;7`_kx`&Xx2q5)$q*2=KD;kw~o0OYgwtuA_SGDx=R68 z(&(>w2RtmuGCwGmHZ3C?nGa(UqUe#AwsW}-e6;7($i16lKi_ZDPp96)=dj-Rg+;-$ z<14U0|Dzz_bC#g*^`2wzfA&G(?OXp>n4PPN8W6~^_ud89s=GbikT1_bkb4nLkx~`4 z3(MEaW4J_VZdJvur-kS4Z%ltn`?tK%kApXO?Ps%Ea%M;$aT>d-8Xd>S13(d$T8!!4 zl7%&6a704M>qLetv$0Ugo{?&)dUL8V|K6egk0`N#X3VzLF@oyL;t;#3ucJ6k1=BdP zIpDTxX>U_!atchTa#2H}0QcbwjG^hnKmZU3>1%2>KX{3<0lLZ8oQ^e5tVROIJ?Cqv z$gIkNQf`I~NwmS|L(1aKc8YkVlG6%hP9mfDhugSeMJwV2$)p(st-56+Ls2dZSa=rL zSV-ho3}xprTISBHKQL~TIE*^_VzlK%Jxg58vzk(vIr)T{5EPZ|(cHP(S@}SkKid|c zq-xPpf_snoApHl1rLL%B^<1c4{lLVUAf_Sq42B}Gl7*Hb0hZF0q(RRYB4kLR4>xXAXVwfZxw3~94;Q_XBDst$9##i;Mh7PVoDf6 z?{xp5h>ue07HEq__bl&&L>@*jmhYPVe87}*Q!_yB%E`A>x9FxiRP;7SFFdj4`{E@#1M#AiGBWe*?yzH_kC^4@AdlvL;D`!>w~5C{CBd0 za_;E4r%kBnkvGKW-wSME)xg0o<0tTk_tZCb+;KKNaqecs+lV-d-xcof0JJDf@nub@ zwoLT~;-wWGxx1+@yKOO4<*Ug8#O={QhJNn6XQoA;{e!2O1zf_x6M;_r8(Jd~PCK+O zi*!O5xRe>m^u%#Pbko(;L;E%Qlkxhx`YK>Dl3t&L2SXpDh#U|r@NwQuSS@I5P{AwT zeUQL$rSywa+(@_`!dSV#R^!97{fK|@+#Om7O+<2&I)K9UuiZ${0b z3rd`0ME6iRDOI6WG1x&g0Sz%q>PMiXFm`N`Q9HT_AH!lt28jO;7fZ?}Qz9-rL~p2m z<*7-h5i&dF_zGPyPZ6tiSE5`b>}Eq$bxg_5Y*KE$oLp2$#-GqiTMb6#-ZlVA#3To5 zl`GW6cA;+aW%5ZC9ppw_t8_5}bM3f?CYs^wG4xX>(v;Ox=MpV67e`q$Jye54uWZz+ zLGtS+e)CQWU!9P(b>I8}OA}e3Pel$>ETD1#mx~q+#P}g%_iiw0HMSXi%c$3|ALK*F z#t3KM$88AacD^1TML-q%$Z77&`;$~-^FMbmb`Tr#X3 zMKsm-#0EbfTuy}BJ+OrkxUxl(M-08^`qty0hIZ*0)HqmV>eMpe-S7N8>*xg^+x2G_y>>Cv&>@+8}eiS(dGQ`B3G3C<7a}k?GA1{NKe@rmG00Z zt3!}BXi#DDkiw21QV43|wi#NVHdu;$zc?fYLu99M9mi~&$DDE(>$gd=TL`bbsoA8E zkspzt`6P2@y-%EOyx|Ip%dZQm>xVU7zJg{C<8sc;N>9i9g!JqStHe<8Op(b)2Wrf7 zrQSOXNPYRy6)*|A@qDh?6|B}kWi!cS7gxsi$@mM#fI7Z6M6y zt@7%u;`p9<@s}5;$!~^Z5#_MUn@$IwX7Fk?)oqY5b#$~HNX4ca>Y%;?m8*Y}gP;65 zy@{Cde1^)|h@DQ>I_oH}=pZ!@sQ|@XDy-!OVRsZ78A3*mt=wSIR2vCeK59}UJD@;2 z0KtF%B5=3Q%dI`o|H*6K=(j&y3j>ZdDJyor1ITbS9?At6dA#upM#bRku1VW4DH!g5`SR-_?YJmnWWa&sxojpw~}Z_J9%TN&K;vU-MyqQxo)yR$FPM`fNl zs1e|nQpJ9`Dvmy`=DfP|Rx{ zQvu>0Ip|+AtSq2VZyhXlVLB;y^?>Xt`#!A4IubeGEL%e++%43~7KvV0=TjoOLNa8YlrjSu9SYqFe zAS~5NxXQ52|JEzZ`U9n=p50HWAJq~AJTJ#(!OBVIzYHQ?l=JEce{e z3N1>$2IQ);BVMEKxTL=K)z00H$`)Kx;nv|a_F|gtykTkV0lIH&Z6c6i8ERE{4TvAK zk|o;5ZzaXNrfKM|zIz%gpe;&8A+L|A5`fPMZs?ik-jxsU#i;YI}ae6oXHKY9LCY=C33rlJMWPaQ5@VPR3p^CDG-x{(m z#wC2ZJ0@-xhFGapq{Xz4)&mI!=NI?1de2jOPyX22dp^ezQCcJ&&bx0S@G`U$8aK!A ziFn2KWv+_Mg?+i9X0HHO>+7?@;d@WvknnHBe=ObOqn7u>F1)_nU7?KC!6&!i%SEgS zYe7pH_{m0`O@TH#!|&|V2hSYnKG1=SF@wKGhuta9LW1Eimox6`2{x~IBbQUD)Q`_H zq+);a=FLsDFA{+mh*K2DPU=Ry zL+9#Xyw$1Fp(LR6;}I9P_B8}j(;@i{H~?n0Fhqr#8>MTUcG38!E2_r)Mw zw8n!=EQ5jDY?_TuQ&9=EvFbT761k*>yxKo#f(j8EEwI~!85)fae=AKXuric*yS}{! zeGcVX@x%iQEI+^a=|)kCrcUs5f;M>zCNqiJ(^J6iS+=lox+?zruk=U}CO>nA#pnti zdqu)jK8?n0E+}3KiYCU72|6)r_Pp6RfF{2h=~l2&yq+dZ(*|DGENIaQ338Pl`xDuD zRfLWxjiKU?S(*Mt{tO*e!3_##wW!*bB`@eR=SrxiECyT1vlw88QyG_z+MPRj1ZPvLwA?R~h)5*N`oqVRse{?D* z8>rlB$Ir=4cc2aS!#3E8-D*5H7fhA5j}1Fz%G$G3upR)~6t%VE+w$7*faxG`_AErf z9-ZuDQ`#04;74(Vt&i@uEOvCxGiDN@z)H>*xNfXoTyk!yt-zqr)krHr@)M_YL&art zocO$`Pq#Qxdk7}=}r1$#_Y`3MiH+)E0G2O=ghiap8>7I z`_}g`GhO<#!?kiqf!}V((;x=5V~^issS}SDtrJ?6=)(zfd6XSB%2cP$T3dyh3`$aL zTx^p4vfR`_EIn6p{RXA*=y3@|PO5OC(r;m%I81Prlyvd{4rZ|G;kFCgX_8CsV|A3$ z(-RP(x5p`a{d zN3tuu+_`kQNbUz_qPE?t16!^ekeUVY)*UKZm_w?+%q8@gY1)3y779P-wuVoyFC*HY z&1wsLb{UE<1G4?!feBw9v(Et^r(cU#e*aX13*9a3_VTVb{GaEukxDlcCYMr6iqs5q zALX1BXS9P5Gp(Wxnf61oAK6|3K6#o|Bld& z(!2YPwD_@8(`lcEGx7P*P52f_I3U#6nDw#71aRQ%Doed{0_T6CahJx28jp5-X4*B^ z2J>+{ZTt|Y4@x*x$P0`dmEyLUt~eel*HptJLd{JnWu$xn#Y%<9UiWKdTPQNZ=T-bB z3+WZoVt)(M2fsO9q{$_TxQY`k|AjhU$s9zGw<+Hw!pUO8E$3ARntls3m?Qh~)s(~| zoiHU(QBMKiPgBt*-qnl}x6VmuK|zNaJ={Nr0OxP%1rDkpG%R`e?j5se(XySqHWJ`Z zJt(YG_gZNg*NxN4W+!0=YCEG5nvc-mR!A9>vhtt2=d%NFrG-guxVqq~(&Cvp!e{Il z&QDyFdk=?YZ(477fd^?svcof!-dr(aU4~sFpls{v1a*yWT*lk6^u=Q8Ye=T)9bHa% zVEfGps`O9hPxZI2Xxv+_f@gPf>qk>&`j?8e<4sB|3sx`^d0GLf_-!)tDNl0JIgGoh zh1V1(2TbuI*a!jtDlLBz*}0|s{gaqFP0BK5&p%hPvsjd zDL~(=NrFHduFXB>Lh<@*M-TUMZnEFG1-ybgD8zq;r0<>uhLuT`JM(v;j0PQ1!Gv;e z&Jw=)@tmJUc6Ui*6`Awm9&XWD%z35;?%bGBZTN`2cREllTX8=ZrIo}+|Hw?Aeyg~I zBG1*fSb3ppD*}5lvy$^J?cPjwM7gkY7M$~fv)F=2fA`NpnyU|oJlgs_QK25aqO|?r z7J*!}MzEip)ALH8&h#-rq!$x@;~#l{sISFVB!H#Tz65cQWoYQJT(b-M;N*lIv?3;BK&r4OO>bn z)ya+e7KJ+9hHbgXqD}O-PO*@M?VGU+EEyl~EqBHPxOsb{KCORy;{~7vczM5iB0d29 z@8PEN6to0qQmP*>-5OJ zUsb1)vKUpuv7wGhw!wq|n(;Oow%z42iqJabFI1CE5-EdwN>18BXBXvt#J8vJWJJl~BtO1u(8-L65qgA?CQ20F98*7XH}Z#b(5; zE7hiucL0(f-9znQP9?HrBDuXRWhc$4 zxtF(u^4T=g#%iveaY3#>pGr^ zfN8?b=!(ne!NWgOX*oL;k;wgs@#)fH6y6cWFpUaff3C(qs^pO^?PNYy1QNLNcV`QLLVP(jy9Do2<_*zo{{|9F( zRx>oR%?C{@a%n`IY_GmLhetkgjp z(fqJ8ErpY7qj2k=cdkB$YreHY?MuQ9|90KWw^$H)`v>@XpLYoOGI$2O&l`Nbtbc#+ za1=bGn7q##e7?`#^sjRGFDb7v;eMSN1SDMzZLcg#WvLS#z!U&nk?q$vl_M9da~0hv zGJ;zdbFU}LUwkadAnWB{9p4t*T1L4!%$)F2XwH;$Ci);?Ns8sawsgrRT9YU(bkbBx zSVDyS)Ub1$8|?%igcJFRTq3aIt&Dy?QKa14ajN#{-pw4qJ5ARVwj4?hQDV~$;o3OEMRAb z^v`nX(K0;uC-z@T1ApVXK#|Mz6y2P*TFG0`iP6L112@y1d8MCF21FvHR)QHo^QNO! zM3oo#(k}43)gGG|pK)6rk9sbm;Yw@F=&)3`4$bSqm_);m6N5$isv9r6(QNU$Mcxf@ znB+d>r*2UM^d|w1M|Xx#+3(&Go>|krwbrm&)JDd|M$hYuYp$bdfvUH4bP;)K$w%5a zm$H$$z89-bThGc$JCYSFCOFlNrGR*VYZ3Tz-S(V`_{NI7A$YzRnKT;~np~B8l{?@$ zy6MLlxwsV0mS}VUOaaIBJO2_y?a*i(x>U>#@9;c4*zA-r>K>f_83moWit&~HMO?dj zAJ3wc2vk@YVrx*E0ljcEt`{`_Z3`6|OgQJhUkQ~`zWM!{@ll#cq^^Uogd?@oE7|$+ z1`4=~PI*Q9-sB{DuPDM`S?f2aj2N5U@8Fb@l;7Wo}f#59#TwNYj z$Yjx7@^^9^72lVLm09!CXi*83nbIZZC(;^p+DLu%@r6apN+eW`q$0VW21`4O)e{5m zVsY3jdb%ybWD%A#OKYVb(?N07_Ql?E##KlCTGehdN2W}?P)O=TN)itxL9;UsEZRy9 zXhUVCYpy!_&<<=rhhvf}KTAJ1J8O2 z!zU0nY_VGyvbS0RZqG2f&#%`o*VG`stuD6JLod+uUB=K0q+^lRb=8a8ZKtWu@eNqa z_^3XinhfGF8S-BKW$%bwj*4$?(WBrnpK*Gcly?=&Wd)D}7xh}IOt#|}HreR8NcT-O z6>ttNS;2yzjp*PHq?FiuT|`Je1xo~jpQL;B+s-q)=z9f?@lXdIO<^-!(Pxwd3aN)D z7tixO$okbF-ipvd)bvr$R3(cgrFdKjTm^@A9&xx!Kzr_CnZWHET@JU47wQdJSGjTX za*E_>h0}jG4zXKQvp|+_=(3mD(Tn# zE#$@eK#(mVlr^i%F*AM?-oQ|GzP&{Ib+`!4%_Zr&f`fknqgH=qJJu=zW}8;#GA8cC zz59}h8$7NZ?Dj{bY`KE1&ajt0K@4?z^9c0x#vTB(Ou zMiotxNgH{bWW^#r%?p6BM{m+$ys3i3&~^KHljHp5|9<`WU6zYCr!xqyxjO{jdLRh; zX1IXyT=(6Wzv3YDdCI6S`VylR(S;(l)@vCfYI3#D6l!c_#UMqy3B`9hiFme=8;zax zxj@i*=tZ+ViqieMW}?u0L`dq5*ykoDoAm5Zo{ac(vs`TzoYWGP?he6|78EwAc4!tC ztW@KXwl%^Oo2v0>Zw(6Dj)HYx~l-99{NtQ)%}`CS^E^^BMc}SGk~+fr(U|wD71JC}>r$V?m0;G{5}s&k-K-8i{OBbO%b&V&nCwSx zO`|@%Xva>LQvJ$r-!1KyeV0@SDh$8kV3z zn~btF=VM*0_O6DWGM=lSj&cjNxLP*yL1hS061OtZRj2UuPOI(`zRpZ6XPMJ_!c7GK zeYxLMlI9Y#)#$}>49>J~!8rlLQ~S5rhp}-GAt0R!moc^4*o!DuM>_K!JMy*4cm z<$#G0C&O~D8tt5k8{9SF`s6DwQZsPxpqeMQA@dh_MY=5xhim_^lN<1ku2XpMHB4hh zD1jtfz(`3Bb(%D}h>o!h653Ol^5*GNmxaaTVkd(TgAt(Ceno^K)?n}c(NC4XO7~Zd z4IH&+x+I=DG?a*@cHiAs2=R?oLncyxp01RT-!hGz&a1|v$ZP6eQhs_dF8=m>y>FK_ z#evt;ZdJ(QxLgHJu``=Ds7bO65n!@<9?AIQ+2_~oKj6;Wf66ITLwXPYKL#o#M!)at z#m5IWCER0-lh~v069#-#_(ceR`qtl6i|dX+`}`-&l(r(Or$ZrjN~M`)vbLYgO-pXr zrL830_>Z%niteGMS3NU$;LsJQ|D2&xg2zzb|0;ktxa4y()=`jJs|7)~x> z6u6s~k1O*XWeuw3&G7DS69;x}_SU%1&yJ>f%8kG-lhmLYb?6dP<4!xhz0|tqf&>8W zL(?)yqDrH&zCTE6i{>76=Lji+!mhX&uzo#Lg&V;_8~I6chsAmshc|(7VZQEy=S>_a z#w=Om{$#XK@rAcfBrpJLbkosM8K{~tLuO2H(X&yN)ba?3*Wrpu$--Ip70HL5U64Pz zfC>o54y8RTfduy<ucrE`}%&oIz9eD>;u>tuh@C)%3}dsCRwMG zQB3@7G}g@+H$MIl$V2A{gBdR3^kRYk7yW)+nn_!B_qg@-@rF7#@4@i3KaK4FIAQ*H zeYMqIz`xP{^$vVIO(5tqPYF2b(D<$Le)YZ{;Oofxb-em;coXpQ@7u7x_Z&>y@cGUV z@V>9`jhpTNy1MxUx)Q#6^uO&h2z(wZbSZq@y=i>oR0_WCDgs_-4gB94fFbrP-Oo1$ z0Z05hzJIm^dOlxX4|6I^`=-w;ytc?uK5?m%o+nqM(g~Msi!iA9mAm*M+jBv73Lm!_ zj?;HIGfa0pIH2{2cAC7-etwXY*a(q-DBE-8!CAkTZZF-Ky?0494vcsUp92eboOSPJ z5@}NUFfEM)QN8^X?X~c|bieB24aCUNumt>?CPzKrOo0Pe!)BVXBWOvd65s;e@Fd=k zTZ5Qw*D$(vzH@^28Ns(?&oYX?j%9M6ly#oS|0v^w>nw<(WhRM*WU!TS4jilYQMYwS zkgvboCJx)U~Amx`eC(0(UD@5N6uyM zFiPrTSykVL4XsuDATZ<1RFYeq$1zf6eNE@flp$0{TDlV{IEdO|yu~s_7&9&&lJdm0 zb`fIsQvqk~q_RAJTjPi<2K#m{uXw=P_@p{Hics!w4!5yu~N$mXS^P0vwba;ENA~iQi!z@4SL+rYwFWc|9x6 z5x4}7$qo;1~pfYyyB%Vv_bFkNwI>x$$9!Qq4_f7EWF2>f9L7 za&J;6pL52)v)@d9pp4Uco*L0|Mbqw!_&XOOxMwVLjBF9aYs_bS)74W-SOmXmg<$&o zzMm+B%?aI{c?%Ec64WU@BO?^b-E->KTj9cbPpbx2NOx4TsY;$ceyY})|FVYWFEAjO z5q_Cgs7_yWGv$ep(_hfvE|o33^=En)Jjl@TKUx0Wst>`Awb8*=8ywJ1YdE2&2#N4x zX@$uYh>iU~ucKIL_($_dLsIwe^ifNFFeS*^aE&|;0Z2<(StJH`PqSwn;l6@pfJq0a zXQTUz7gm%GK{pUqtlPucEipBN*xMvn$G4$cVCS8-|7*#$=G+r=^rEG({{S-&e&NYr ziHew_t89>gRoO%2uR&L7Arx%y5&b1DD!5rUUmFC z5Tq|`3JwFynS-bh#GuA&_Cc8-)yq+2ipW^&7GFBmZ%AA`NW_O>>}CA871kPr`Eo>O z`^m%`5~pedBY|F1WBJY@%Y@`4HB}HLsO;y0 z37wy?Ln1Fzfz>=nk1GX=g~2cK&!5-F^C99w8|?)8y}sMixNKiYl9luR&!yI;CBv}Z zmn5mbp+#$m3qTWbbh`g=<6`!Cb$8fA{g-N22Ei+Gzs|k0t8&PYy5y7-W>J<@8=5N zVHxWUpYsU`MN?bP1^fY@#-LGvSwF?vJN1GGuuzT;u-f7NOJ|RqWxvjBcMPp(9k)ZI zXG&F`A@x(#esR>%Q^cu6fagT_QX^K&vL$VCU{M4rxUI4nNd#w~Em>x$+)AG%-sX#4 zr5aNu{uO_E_Bwufk5ZAa;6_~MajV_$!FAe}^m)N}V;QwKVR3&&usG&;L6PE7WTddx z$5k~{bX+~T=wG}nWDt3xT)7ru zg`#*X6h~XcxBZ4+9cl`mG*SdNm3@qG$4&Nn7d1@8)3342-TO*n46CH$G=a<`oJ>wL zFKio%piyX8E59}{`FsWmGXQB+YA2>j$JaPH0hwnEb*_Ugok#VMgLy?h;FtO5MuSFN z{+iQC>S~Y)Vf6HqS+!wFku>CsTkNu1T1KrpcI09OT6T02IP0w7Gbs^Rk}!Wb)g7C- z6>)>{-*|CEM%o5iM>WlaVjV|>adLNQXKM3G7rH)Xp%!jlMZ_PqdmB(@ck$??QWs_KP zSEB3X0vc)msY(SWW&!~RrB7>C>+_h8O)7A_JA*-!B$=W? zpZ_|oIK^NHyEowL-!ArXlwdgbccPt&mfq?`=)1Y@YPUpTZb$sWis${-Xr>+6KEwjL(cF}pC6pah&q53Q z!)njiU(AAhJC(-rNH%gG+ZEJVAtXJH1SXQ&FIdV6*|yAUyJgj*_xMuf4yDIN7$hzW zIf%?C&jg3iUs$}fxOUO1HVnH`b{dSNYSzwra+#$$1L||mpX&WQMo~~Yw4ZE}1Zsk4 zcc~m@uAw;Wl-&F`D$8?Kp`|M7C6jQcjb9iirSk5R=a#H3%IC1o>T`~3`{ey3YeHkf z?_y;^*rI3TgdZFayUUDOl$fS;Dvjte-+#oR;rakVgs6TRCqM7nV#FwGF!Np`4`y1bpnqw>rzeEFV!szTZ0?BcrQ6;y` z!#1OlJ^n_;VX|^sS4r9W^aa*~1jP-WmEYuI4kOL+?Mo)}Wb0)ABH`9`UdOjFcRGs@`U`>vot% zpq-9e8k+iv^aL53xqm&3QRcNlp)yeFAJ;hR%4%Es6dvtaN%7lV4+5npr_$=+oZocv z1Wg`MuT32ay4Pw*GNRU+kN+XO<@GmDPSVx?`_s;&LU4NbU0GntKX)pg3k<$1OU><; zz}L$uK|p{T#@7pkq-utXa&ewW0TRy99>_Qx*B$qu%GwTqj_sRm(1ZIXPd!3u* zh&nc++1y_YC&vDizo?R_LjNL%Imx9K7=l6z{#XZNN$n5hK8Kbu4IT+27`Xd6`nY@M z%T>%aFX+v>soQSw(!nzaP1vIv4Y5um4|!aU_vHD^15LTAd8w&2hp*aB&Xg03VpoI^ zDR6RT5XGMCxQeC`>7gwa+1=IB%?R6>uBj4Z^eia166xd1lR9!B$smtd{eN*GM8>ty z7>-lq5PPnZn+zc3SNa8`tq4BYuJwGxB7K;WG63aI*8x4=sB;e9t!&Y2Ra422aO z3~dHkX(c!ZU$fs7sds{P&SpHkHBK6__E$`!8zw`Dvq~dk#gQc4*o{|cw5U?qC50CR zr$uMg(eQF7?_LtOmBCEfTC{l%ns9nCtQ;V+g^PJ;chsZ_B@zU~qpvWB)j&wI!i2=fqQd+7gL7)C}L z``^CR3>nVj_5GFx1HrTP*Q|hFkM-%>O#q0=~G@%_VIq%>L40atD*bB9&SEB|uc4F#lr1zgvos&5>%1sny4)_oW&X16>dC!(Sd zA2w*RZaVNR0IPG!!Q!H9^&gq5A?LkkZ~UHFX|Q`mi6&B!>_9a|6^{xLZC~@^tGH^& z*W1~_6EQM)T{clHL1^Dh`s#Vu4)TnWM9YAHOB%~o<5a>aeDN|@^sw+w;b zglI)2PNRZYliUGv<8*Luuu~+kq`dwQ-monwFrmBZb@0%D&TRp@J^tNZ-*YR!S7!*t ze7aUM`K!ZqTLP*9TLlULW{r+PLdWjt~5p0*Cf}hqVu=Pz6M{ZGz1Ts%W)$P7( zP+NkIhuo`Mi0L7JzV(vSU|Q=8!-H$R#m)s>u+(|#jf7t!#>IV^gGKWxt-{ue)AOC$J(9>wmO7PL6 z7`0LSOS04z%DcF*vR|a#4?b?pE;}08cX%I2m>g1WRoH&U9pg_QbF@W%GnPA=s-DB` zMR+FGShk9%tW$Sw6usO<20M{j_*iC(F~P@aHQO@cj&E1BuRYe5c3*CAruQvskEh3)dOp6laahF5`Mp9<%zxLA^EO?Mw{Z02r z@OvS(nb3`8x@T!vTi@sPFlo;Cf|?77zGq6;0V9haiWCY&tveMoP>U}$9X>NZu?!xf z6zUg)^hBf1jYn}#AUxdcu}O7aNG~pt9#hqKgl=6p(&(x+#!-*>*(M$jofmE25!K z1oQQOKA*11NO<$-`Mh3EIXg?0&=F7B(7~bRrtxAEb@f<*vxT-k-9q^{w9`V|SR&V% zI+*6qSJ<%2w1n`=XI%K|2s@W_{|od7Xz@Y_?)Ze5~=Os+7?& zW@cmpwGd|~S!6Ko(<2%K$|$V5W6dDgcC{R7Q~5M@xO`ebY5(B@xKWL77#5fJFWO9iT6OnqgXm;AQ3Z?8Dr=2+!PWjyBUxd;v#AbW zYottdgvNCgfwpjY3>KG-5&A7dl(qS>iT-#y47Pm(Xkl*e{|DKs#8GKPcaJ1-5K@G( zcTGtXjVvOsiZHAaWpkHqad|Tx1zMsev_93v?cOK`a*H3+0DCF<$P&pkkNl5VYYS1m zkgXFpOxRd4P9yVt&6y*IbIDuTyGOsb%k$l7Mw7pn2f{}I&vkdkT@Hgoz94ca4@|aS znKwqELZ^zACk1kG9)J0y&?VnJLG~y(+G7p zEB7nKTcc=emx_`8WNrv#lN76-jt3aJEOJqH$n`P9ReD7Xp-{nOivkG;gD(1 zsjM=}oj&KkS#l=B4RnxJs5Abw!Bnjs)2lRS*fWxQ#1D=lw(Y4%$i!NgJ1qrm570lo zStB>B3)tR_EBGRY9lAl_E-644-fVXnf{)cAK9XuOidsIWlh{-X97Ti);G&TUs+vv& zlWBJOJvYl3$1)y9ytB8e#@%49CU4@a;qZs~#npE;&tPAEOCb24%GbHuBVg(G zx(7aPRivVlwICfN;C4}El|W@#1Z|(x(7cvUK$4EIo^`fTwFd{f$#>^3Z-AiOB2zwG z4?XcOX3zc*spVK7Q)Z^+2Fo(}#{xDd>-8Qq;drw%SXaQ0zz@f zs&sPVG!jPt-hl`G(e|C!p&s@7JEs7~);NTBTK(SY^m@w}*o9*^;Y|K_V`K$;cvrh@ z$jl^kJSr*X$KNE9HMm+;mUAx0HZxq7fh77@^!0t}wuNYr?ajLR;JBW(h01;6-c#{B zVM%rLpz2~nXNj*ccZk;-<_3!blQfm9GqTZ<-&ADuS@aWDS=EUmt2>*|<66a(EX1;w zVZo1)r*nPLEk9t$pE?;$5BDeUDsKM4n$oHx{G?Sw<-i?diNG&_SM){B>@Yl2Px1%_ ziej=7e5~-r;PL15?cMYr-sgPxIIj8;6oi{k<9${GUUvFFZ!-)GVWyn;&u`GM1zRj~ z90V_9JJp47PL$1^0h7}Re@cxBy@m{Vm#jf(6#~}z(ZLr_xh^IzE6b-k$`s2>Oy^5S zXOA?E2KgvHD#5u@|K{P({*egtx$}=D%p1Dg{6TSij}7G9k^TK^l4hTL|H~<=`TQ{T zqs<1xi|;j;9+(2B+5gb0a(>m81}pgUi8i~P%DKoCey%PTxyLg>kEx$KrM1GB=#yEr3wO267s`p(iF*D!$;&HQE#GR6DlD?83up4-YxB)|pt};dwQl4Wge3Gt z@S$4(Fe?MrUzVh`DM_C!hZTkncBigo7qXlOD;3OAj$zWJX;;v>t6B>6h80mZWjZkm zQPaEyP6VJ$eQZNU30B(;`#-d8<@44yKP*y+BaTP12T`S&0zqyTm?td<2uw@gpJ)<= zb8x0ML{)TD3}w?@f=|-|l@u%w*opcZ*N<@RjEqOI^i9x4bu8L7y6je?t=K)XzafTWBW9g&O8!`AZ> zxaaSZ-Roi_w99CNuT17r;=Ynz!(>tQbd`{sv2G(?Ze$G01b>$HsxJ@H1rIH3yx!+| zV2pAhSx*t~Fx0&>EVnA+$*7=&WaNQH&8D+yx4>hv&`>q72B;uwM+D>xCz2x+kBt9_ zc0V#^^Eq45@-nN;KSKLG&_=~nO?|kS%kPZot0g^bZt%gV>hMC0x*@tMOTiV5MP>-P zmTe!c+Co!;qFY7VZjOpz>~gSMu-73Frt3Zxs-$av7agK7A|)5?>X`mPeqG;BV65m5 zRVas_a|?E(qZ(qRxnL$0slcD?Vm9@MnLYmX+Lv+>FeqB6g`uL|p0fjX@@h6Yh1qXA zEl6R0IBq^!CnlMsZ!D9dH;r>OOE+M7_w{HSj87)_7cY;;-!4QXvQ6kbbzF$g=BY+n zT8kiXq_VR?5fQ>XZGL4m$KHWhuFjHAn_QySrY3DQ%PU4C|Ls_t)!}YTJ-fx0Za!+gX zM~194+#8${CZZ^K--AX-ZueC8jc%NfKB7a>b znbo4WG3<;GyHzVZg|zqq-Q6f#Y9r!`RD?U56(Eq9(9Yx3=pn#yq429RRobudRw2A| zDZN?4->P^hE7VJ?(QlR*d}RVUc*tS3jzdREm*_v2&~qD(?Qk~W-jg=Uy{mekzTCZh z$yI%R(g6J2aj*8j`_(TH3%q{+#@ofGQRizP%UkvZ#RbclTDe(!KeBRy`!vL+f% zMiwnZTIaMtq5`Y^)ZI>rCg5F0Lt(nGeGD^=^r;C7!*O3JoSZDOE{}fO_Y<02#T5#? z_nguxM7ni(zO*m*h8hR0K{uT}01E&^gc|9?%-rPf$Cod@^g*_a!0&5{|exPj` zHbO&%XKQOU)gC#V4TY{9nTeBFieiyp82^yjIs1Cb7Mf0uRefWH z^mVE-LlgE3C3i@L5tM_>b2WnZ^8Hm+GFvgold{%}2(+*?Ikm{A*g zwPza9gx=xdQ+Us~k;&DeB}9KH*hn7}GHJRF-agtu>T{M|DfBeKDdbST)Z&vZZ`?$j zI%=WF%FZ%{V=!G=EuSzHJ*wofkj7_I3boKPQ3G+u5xnKJL z!)~vEyra|NlSMKmQSisTdH67XzI*wCd3g8w^If*!+2dZhKm4!1{z-=5Pe1(ehhP8Y zKMrI+e12jVw8HeQr%l(NwM}~w#9tW(Lwl)3g-Jzg+7-E!bxDF-#t15JsZi*q=Usil zKb7PO<+_lP5TQ{1UVXl8h@L@+f?kv2`)PDHgw@w)fa3Iaa%@B|>#Mne;0r47dUB!i;97w$j5e)xKNosuNM5;S1vJ z`HJ)+3L;N|jA7iSq;(%4UPlaUpm$+8Vqz2?L6#*oT6T?4SHKOM(3VX$C#Fk0tDZs$ zDJ+6^aGwb@1wYZM17*Do0@{pvB*IKRB0CLFlWexXF`Pm6UhBx~0S~Kut-fC6{(AmH zf6N*Rb=rDSS;>c;2(HLG?FVwWdPSadXjOQDP@o4JBWTRSVSZso?n@D{Ner3q6c7XJ zoHk0XqpU*>bEn{5U9rk-h$h(KXwEuy(U6F3d9?N+tvH?3B7Wux$`D5^sqFJkxdPDx z7?z;jDSpEX$usR+pP2vKI#XIqF;OL6WK<#?IW6 zdk5aoM4^W{Tr@3y(`WdzGO9`1NlW}(cSN0vtyK^yy$^~O=d_KmFBaE_cyF{meR_TO z@+G77;p4kkFCX^{l^B?x`p+#fOutZxA$=_|z!mZfl^FVea*1L7B}xqO|GyGL{C`nm zi2rqdd-w8%{rCRU`}_3QbH}}s<#69XKmTnLJ)b{4ZH{FEaLNeQu22mwc+wT=$GJjY zH7c%hl{)MK)e;n<398XqkziwtOXg?M%~;!Z6YyoaRZed#XYosiCqxcxbv~CAQJ|2; z(=JpTCT~hVsX_s*EQO|%UNQZA$dS_Hw+Y6airkrKrY(@>K<&#B4qL&G1R0}zS1-45 zo-U#%?T6}vkV~76y&gA4z{=jk+7-l~b=3~v;BD6WD+*yog^s0W>~uK_oHkaCCtIMX zbu?cQ`kEqHD#oZClBzfP+A|B#ws}IUI5v5?u%|HzyYDFpBkA0gu@V$7*L@cFuEN5R zF_C&!=urLIkp8t%y+x3`S|(PY41L+HVt{Q-58Je{YFCM08K6D z956V@pc1fXpRX1jF;U`;-+1SSF-wycl*cgvj31eKsARr-%s02+1m}fz!m(xYJ30Gu ztL_#Hd^^N*S(`u@gfURR&8g0=kpf+8XA8ldmX0U;DLVoW^+}ckfKUTSWwLn&`mn7( z7`Q6>i z7q<4t*I(|sx}H7mdo$awKhObuzn#}gZ^}l&h&Xa0KzFc^uBP@wC1;_M<J5({XMk9_J9sxS{Sl`XwQ2r8TS@O>&`dm(NI`yN8ih(oj!;*N2>-#gRz z@$ThId*|J|`|+{oj{EMtBRu*fnBECqD?|%%tF;#_Ws`5$?Jz@+-giUro54PXQ*Id* zG$@{&tANT#(`+2|!xhGredNtE?anl*uH$%7r%|g|p)@WGo@U=t9`?FUtR*;X7exv^ zmNVC7>csJ2N-DWwO-m3SDUr&iT!w4=9K#^|YtiHG_aoyl8&c4+>5wmb;@BDOHDR6E z!?U@>Lb;lDur@&CaaEM)?wk|_`910RWwdND5)DlU;m-fgb8jlo}?tqvERtFMUK#;|TM^J%?Io{`Tkhyn2+ z+QoE&8yhCKN1)7Y3u1C5YCR&SG&0y~C$&19zh2mHy48R_%eh@;B!ylBFm5w}T2knw zq^t&r5)QZZlzG_n6(9dXj>p+RKKapsCU7~tXlG3cIVdB@-V=n(J9M>-x9h#e%Lf-D z^u(SY4~afInU$)uPYPjS0grr8D{D{yLRW$56(Z-nF?%1FSuy?YL4i_2@Tgg(Oc)hs zk5hyHd53<5&(@QbKP-k-AkB70zV~#~_oY3!AiU{HfdB zj%$7BS3X2wkA4kmrk&h}ki>C4%hNg(;AN#a0H9d6D}ryHLU;3*Lb^RwVFx>3V;~AX z97l8J3B&DTG%t>kWo8_hy$Qj_FVE9JfVQs}D)jo%RCNZ+wGJ*4SHUEr1)&GfE2QUTfLedbU|JlGm&3AFE5glc}zSVo#;B5*>5Js|%uD zc~h9*(;OBOdsu=+2vUZSry@V7pV?dOcimSq{E^n_URYGZ)j<&)x*@vJv%_Dp!kfET zi;<~Q;EV{A->W}XwD`8wj{^NCiV0<6R)ugp_KgYWQKqg;19cOHqp~3ivRA>^R&pDU zvK(44=g71Ol?CmYARj-ThhI)=XqBFS#A9WQ3hHH03dBX&;Pm7s$1$aN3un2}J$}pB z+RX{fY$KAyLZ&Gh)XGH*Wn5e?vv32*jDSd9I~}{i7kOCOlyWe2qimr6`2 zE9&%GlBnJ<%W*nurd@3+!P;uk_hg!!m^`j^_1())#kvL$W%U|<`bWz-FN%{|JA*q~ zSD=?2>;c!&fw6PbErlDh(v7sj7-cbdLX>+g;iUXwmT*~x@F-g>W7;B5l*H=Ud#Ta1+jxe{thYPVlz+TO0($Zq_fLBmJgO#k(WO`Q7iX z?epEs7kAf}_pe?)?z?x_`?nvT_VU5egJP9qb_Lp{9kE~^o3J0c(h71WieJp&vjr)_ zj}fu0VL4?#BdqsiSahqx7=oGcQv6i(!kaL3bP9@NPH9R>I7}4%$9wBwxs**dTC$)JP1Zp9SH^n-29ijVWO#!JuZ(p)zAMEt$Xkp3zwh(H2( zped4J`34!cEl+3SK}ee+iKnOm{W9&ShLUFujc3B$)5WnTC-@7^XU}Iqh%RaO z$DAX=bFxM?kqjnMccBisw**^5?IgYy-Ld4Z5y@E&Y9mO{y&UM}WUPuY;-m$as=@%7 zdMKl;1{8HIy3^qxwJ5(DFt{?5y7P<@#d(!845sK6o711j!os(W`t)j`2bFsvLt!R4 z?W%`R<(HupHx^~ZcKWFn@T8c>21vAlT&*_ov2S%f()=(o!P=g_EX_2 zeByHZWr7zF)x6P^p$qfCOAaT~cZ}id42sTlmgKD=SO8+)i_1|EByyi(Ihugp-pXwF!TWk^p3Glc4JD;_6?lTe?7Q zR}plPRnQthqMb%AT|Z<_Cb%DQrR{M-V0I?Z-QC0)lm@Ktd(`z5}c0uciK^g7lx_2 zQ+^0R=EMtB$zF`wi3*g$kv3OoI@(W{A*(1Eap1h4s{n`JW+R~YX`nC=gvr-H?H`Ll zQj(s#K>Y=tTIlLvSX-XJzg2(r^#Hx@Vh8k2H*OoRN$K$tgERR6xrVw8%<{@5R2ysE0f$idu88pf z0ZB>j7hPeTfNX*S7&U!?k*Wpheq#jFnpx9QuA` zj0sepuzBsHKrkI0I*oUB-#L$z+UJ52~(_9QHsnljAsfIXYTl>p-}?BiE9l zi?jwh8acI86~C9}1%MO%K?8{@1!3S$8jFJ`CpIbK3YqFfPy{99z)XWKA#}JXXexnT zEz{)KP(L=Ct;i;ww)lP_LFaNeGMV@ ziQ07Q@)lm`pF|GR4%)Ft(T61@z=jrLq>m0+&VZoJ6uo!)t}*zt<8OtwWNdny1v`S* z_ANoqN9T?MCErv@7i(#>7GN}x3sE4r>)^1%HU({*&L_vYn6~a@Noh9?VMOGVY&!03 zlAqOWY1*BBrp!QRXdw9YRe`K9N=vy3M6IrR^og577JZU}Q=J5Phn`GViL)Uq!~ONp zbm?4GE>_ShT_xp#No_=vm_>EyFeWP`$tuqRkB&~$TnbDzaJz+BzO6U>(4Mv-rdhac zym{>92}w3=4!TC&BJI;LnHu(-p(u!F@tF*szC7qxv4ZbwILfxqTF%>e(C8@G;^QIY zl!TS^eaTcL1=S_&hww~o$exT^VQrdmhC;d_6?8ZmQvyCIw1_l?2vfrNY$;$GfUyc~ z>U(j60oZq`9aav8VT zH;a^=NsuoAq-=u?ikRR{CMUX9T1cp}Xrt&_<#1cr^O!HCBgg`LLk-NN+jc!oa-q!7 zS^vg*y?}~SU%3iyHjuxglW7^DD4`o`jI=o#Jp+IfupmHCw4FH-Qz3lCMDZ_AGIR;v z43a}!>d9G(;+j1poz*Dl8-b@{D+&UmKaS?X}4FLK(nc={z<~FDE92W%-fPp zw~WqF)F-3du=kZ#tu{~ets~S(4RNM_2kMck8??}mU~5gt3b@7)B`y=532H;K)~x6* zr)+I?U@H8dtogLY1AYx^xE##y2w6jg-nvaqq)S`%@`KZAo_S?x0XC~?>JxkeZICUt zDI5HDpP(jH;8j){-5|%JWa}up%2Q9%LGK`h{tMJ#`=B+VKQMo~$;@_ z(V5q4z=M|2vR3QV*)Po>dJ@)?x&S9wj6YyMs=_4%hc4Bjy^l-t?Hrey4lfvLlHP7; za!Dg3@CZWpngvJ4akB78K3XU2TZrq4o;~9u48pEap}cU85VYTF?hLLjhr*s^)73Ka zk3hTydM=MNKW07H9eNj@I$St%2*bW4IBv8WW+a;3L3(RXNSh+yxh<7~GqlKD3|*E} zJn{@9Ez@E$_xjJ%_71l(d1A??hwkkGKo-!HImXI+Z? z5$R$Qqf}<(uNs=b)mi6umDLCbo$lX@vX<(`VH`O6X)^T3W3*z#CPzJtnz%K^R{b2-E{v6?lnCmvdj_Par3y zjZS|V3C?!&e7ZpcefUhO?ueqU@FF#Ad@FU9S@jYl+jmu`50bV#(&qlknM)=5?nv8Ul>1OI4qud$MeBY8T zk^<>~7Z^9e#KmY}%(@NPJ_0gRu^>TnqIRa^s#a zZ){$=eXBP9s#s!kS5X_zXGZJwum-ba*3{&7(`;A@5E|XT6>Sv-8U+e@nEM^MDCS&U zKus?XG?Oxw!A;Gx=}aizu@q4bD-wTR03bzJy6Myg6r&>{*zAUUg_{X}Gy1Ic_@VIE zI<>HUM03nqdKypc&?<2hKM=y!@}!rDpCCrzuuYacp{={K1qvhCp(8>wq6;aD3xi7| z6*r*yY|k0iOhs>F@Kp$kMl(e%3xXi+*cfz#rFsdZbZ?Djx3Vdq9!WZoMy-kA8O4fC zZ%~Yt`nW0j(>6E_B>{efYi}NmI(`M^mm5+BXf8OxCef{qB{Q%i>$9=cqfwkgk zo3#<|(~uP{OL*)x@0JH04|yAJ+HMVDm=$8rD=z0hx%-MkSX$d^@J4*55YGJhzL|ta zpHUn_2huINf7CwDaW*KC*Zbq3S>N33cjyBMqEd^pTz>Rjq3IP#x=Ic;% zBZX$dlA9%$kus743p#%#!Cez^ABra08jY!+ee@|$J`L266bNk&z1C_HBXOUSKbS-F zrn0IXM{*qwC4$mL>#9LMfabc}5OGmhR$Ix&7udZbU*V#R*ocBYMa3%$NUP6O^IT^J z#Q8qZh2xM+K<``-8hP|$1ZfaI>9uui=q#i5ny>=my3Ag{nmM4?w*w<~SwaCAK}GFl z`vDD%`fW-wk&1IGqfN^w+s)L-)Os8?XfkW<@{i2G>ghs$MI52q-QY%SlZ6Y6>(U4^ zkxuF|Ap%!|I;oK~)L)^zFp&YDX}xgkeS&s+-9FvDd}*b>|8&>Z{OobBc6WRCx7w-8 z-wM9Id-a+;&cB>~QPqG8dX&rvm3(q1hY$ zurQv%uLDyAE1s`}dF$u2l{C$pU$w2s9xYQy^E@qmTuW2Ly1A({mm%OedDvri>aPpQ z8@ZCBXuFP)eI?sID$dQ?_*QHq>a~$|ljU_-Bw9sj^bmd@BcmI%aVYwW&D78#IRF~* zGQuX?^*c?kfxTzBg+<4iosxT1bTrm=!DJ{Xfj_d^Xu3dE6B?n`LgNGe@EY9WTPS?) z5JR5|4#!4d0s$>)cA1A!F$6K;RbN+BDic90#~jhJ_M|Icgq>#AlkoZ>z+>qIC(v*a z#pp>W4jQ?N9c8d9p3((P)9kI6xw-8i&%ayVROj0Va*?Fpdxv_WtjH+Pq2cFZLE)%3 zFQaVr2$3m= literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F0489906.fa.gz b/tests/data/fungi30/rhogs/HOG_F0489906.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..538c7da9139a420a31d5d19176b373b259a49923 GIT binary patch literal 1929 zcmV;42X^=$iwFP!000021Fe@^Z`(K;hVS(&bh!&`XC)uwiw^KbJct#=@>FWPH-VeF zsj+U{wG#{m=#Sr*a+12c+uqD3h)o-!NRbbp_sg#j$FEdT#U?zc=|%IV(R5vZ{rb*U z_?b_aSF5jI>#AB+)od}Hlt1rRzPtaj-`s9Lly}?v!{^;?dAi+v{CL=ZC{K@Hw#VDU z{X_lB>Tl)mpAP%&`J!!k`gC}>d%Q1C+kZW7?{Bx|+wi*CZ$2EpeA;dHcs(39<@?S3 z!)|lGDgSbMIBs_LCB>#G>uNQ>D*s+K*P*PJ(_iM3{DC#)^{aX{tMI|7w!E4zSAQ+v z{`R__%_h@jRZ8>vAM<*3Q!N%(^V0IyvofUDbak6(*vg%xzR3>M;ESBhdcC6g(f(yj_(Y#q*V|`voon6i5nN+Y^O{@95 z{CU6fw?FoW)3)55K;Ut6+P>QF{<$rq>OtD^xZRf@4xfS9tBfq(clUSYm*e4K3-U6a z=ySV0oDRpwQ~Cbz`Tgd0cglp#s(LZ`4k?E1wce7Dy@+ifNiCM64LZh7ds0LJ%wTJj zaEzfPs0)@0r`Cmuo{^5$vS4EXDWD+)hrd8pM-ZsJhoQrv(w2Gc zUEXdfT!6ZIZrDI>t+A#`QYs8%of^1}3=%`{4)QXP7t^MXDmCP6@(%J6kXPq?&kVGY zk^wt~&}Vt|8e13)ZpclDijVHXEj(Ax?$QqKvb}myS3!DoSBL{o7w%Fib2DUjWp37{ zkD8SVoqgG>pX7>8$l<%)eh-@N_M69Byyx_s*Na~k^AWIm zQO#D%5wJWU!=}cY*>XBvT~Zc0L}kFn8ZN#|NDse!OGy8cki2^eNLxte#)P!=l91*p zAz_kl2?_47Gh;%&1Z44DLK@}cb3&RkW!RS|${@&*GJQc=I#YH|NO3_K5>h==)|$XZ z%7h&$Q#|QN1vEvVERG48azZxeghZf5rETOEypey&M*(}eW{k(;zw%L?^AW&6vXVo9 zJe~8g$@vH#BYt&`$0Eo9E9yEN-99CUQ)~?aK|e#bvMV{Mrx(o|@h*gC$d=Q^VmZl> zO|rZuFNNHX`uza13y#F&X>;5?elAak{pNl*g0omnudXsT*VUVPe&zz-1$sS zp+OEdJwQ%fFV`{4DU%Z*^j28}YO>ntOpc0D;}qp13s?e1Zd-h@f z1>-2M1{7abnOxd>1G(f|)Rb<{Kjx PS{45WDg(*b9S#5hG;z3; literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F0848191.fa.gz b/tests/data/fungi30/rhogs/HOG_F0848191.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..9a682c652a51b011d116b70acd8cd71b62839901 GIT binary patch literal 120799 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 literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F0848294.fa.gz b/tests/data/fungi30/rhogs/HOG_F0848294.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..b02a83dcfc1f548d7b1ca4ce8b956bc34ae8b291 GIT binary patch literal 3972 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 literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_F1085561.fa.gz b/tests/data/fungi30/rhogs/HOG_F1085561.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..4e4d7ef0ce636b31b83e00dc7fdbb538ad873965 GIT binary patch literal 4259 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 F000SZK=%Lu literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/rhogs/HOG_clust12762.fa.gz b/tests/data/fungi30/rhogs/HOG_clust12762.fa.gz new file mode 100644 index 0000000000000000000000000000000000000000..fb4bf23e4499b829b4b15937b1b820ab1f378c05 GIT binary patch literal 11291 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 literal 0 HcmV?d00001 diff --git a/tests/data/fungi30/species_tree.nwk b/tests/data/fungi30/species_tree.nwk new file mode 100644 index 0000000..6efb04a --- /dev/null +++ b/tests/data/fungi30/species_tree.nwk @@ -0,0 +1 @@ +((((((((UP000091918:1,UP000009169:1)Onygenales:1,(UP000191522:1,UP000184300:1)Aspergillaceae:1)Eurotiomycetidae:1,UP000053789:1)Eurotiomycetes:1,((UP000094444:1,UP001059893:1,UP000001805:1)Sordariomycetidae:1,(((UP000266152:1,UP000736672:1,UP000547976:1)Fusarium:1,UP000007115:1)Hypocreales:1,(UP001322277:1,UP000011096:1)Colletotrichum:1)Hypocreomycetidae:1)Sordariomycetes:1,UP000076632:1,UP000481861:1)leotiomyceta:1,UP001161438:1)saccharomyceta:1,UP000002485:1)Ascomycota:1,(((UP000054845:1,UP000245884:1)Exobasidiomycetes:1,UP000242770:1)Ustilaginomycotina:1,((UP000053424:1,UP000027222:1,UP000001194:1)Agaricales:1,UP001385951:1)Agaricomycetes:1,UP000016926:1)Basidiomycota:1)Dikarya:1,((UP000789901:1,UP001234581:1)Mucoromycota:1,UP000193920:1,UP001151295:1)Fungiincertaesedis:1)Fungi:1; \ No newline at end of file diff --git a/tests/fungi30.py b/tests/fungi30.py new file mode 100644 index 0000000..5ec2a09 --- /dev/null +++ b/tests/fungi30.py @@ -0,0 +1,223 @@ +"""Golden-snapshot fixture built from rootHOGs of the fungi-30 run (tests/data/fungi30). + +The rootHOGs listed in families.tsv were selected from a full fungi-30 run because they reach specific +code paths of fastoma-infer-subhogs (conflict resolution, split_hog, MSA trimming, fragments, deep +nesting, ...). They come in two kinds: + +golden the per-rootHOG output (structure and scores) is compared with a stored snapshot in golden/. + The snapshot captures current behaviour, it is not a statement of correctness. +drops fastoma-infer-subhogs drops proteins of these rootHOGs (a known bug). How many it drops depends + on small differences in the MSA, so they are only checked for the invariant "every input protein + is in a final HOG" (strict xfail until the bug is fixed) and are not snapshotted. + +The output depends on the mafft/FastTree versions, so the snapshots are only compared in the +environment they were generated in (golden/ENVIRONMENT.json, i.e. the dessimozlab/fastoma image and the +apt packages of Ubuntu 24.04 used in CI). + +Regenerate the snapshots after an intended change (needs docker; runs the working-tree code with the +tools of the container image): + + python tests/fungi30.py regenerate [--tier fast|slow|all] [--image dessimozlab/fastoma:dev] +""" +import argparse +import csv +import gzip +import json +import os +import pickle +import re +import shutil +import subprocess +import sys +import tempfile +from pathlib import Path + +TESTS_DIR = Path(__file__).parent +REPO_DIR = TESTS_DIR.parent +DATA = TESTS_DIR / "data" / "fungi30" +SPECIES_TREE = DATA / "species_tree.nwk" +GOLDEN = DATA / "golden" +ENVIRONMENT_FILE = GOLDEN / "ENVIRONMENT.json" + +# keep the per-level pickles so the final HOG objects can be inspected for the invariant +RUNNER = ("import FastOMA._infer_subhog as m; m.keep_subhog_each_pickle = True; " + "from FastOMA.infer_subhogs import fastoma_infer_subhogs; fastoma_infer_subhogs()") + + +def families(): + with open(DATA / "families.tsv") as fh: + return list(csv.DictReader(fh, delimiter="\t")) + + +def groups(): + """families grouped by (tier, mode); each group is one fastoma-infer-subhogs run.""" + out = {} + for fam in families(): + out.setdefault((fam["tier"], fam["mode"]), []).append(fam["rhog"]) + return out + + +# ---------------------------------------------------------------- environment + +def _first_line(cmd): + res = subprocess.run(cmd, stdin=subprocess.DEVNULL, capture_output=True, text=True, timeout=30) + return (res.stdout + res.stderr).strip().splitlines()[0] + + +def parse_tool_versions(mafft_line, fasttree_line): + """normalise `mafft --version` and the first line of `FastTree -expert`. + + The number of OpenMP threads is dropped, but whether FastTree was built with OpenMP is kept.""" + fasttree = fasttree_line.replace("Detailed usage for FastTree", "").strip().rstrip(":") + fasttree = re.sub(r"OpenMP \(\d+ threads\)", "OpenMP", fasttree) + return {"mafft": mafft_line.strip(), "FastTree": fasttree} + + +def tool_versions(): + return parse_tool_versions(_first_line(["mafft", "--version"]), _first_line(["FastTree", "-expert"])) + + +def golden_environment(): + with open(ENVIRONMENT_FILE) as fh: + return json.load(fh) + + +# ---------------------------------------------------------------- running + +def prepare_input(rhogids, dest): + dest = Path(dest) + dest.mkdir(parents=True, exist_ok=True) + for rhogid in rhogids: + with gzip.open(DATA / "rhogs" / f"HOG_{rhogid}.fa.gz", "rb") as src, open(dest / f"HOG_{rhogid}.fa", "wb") as out: + shutil.copyfileobj(src, out) + return dest + + +def infer_subhogs_args(input_dir, species_tree, parallel): + args = ["--input-rhog-folder", str(input_dir), "--species-tree", str(species_tree), + "--output-pickles", "pickles"] + return args + (["--parallel"] if parallel else []) + + +def run_infer_subhogs(input_dir, workdir, parallel): + """runs the working-tree fastoma-infer-subhogs on input_dir inside workdir.""" + env = dict(os.environ, PYTHONHASHSEED="0", PYTHONPATH=str(REPO_DIR)) + cmd = [sys.executable, "-c", RUNNER] + infer_subhogs_args(input_dir, SPECIES_TREE, parallel) + res = subprocess.run(cmd, cwd=workdir, env=env, capture_output=True, text=True) + if res.returncode != 0: + raise RuntimeError(f"fastoma-infer-subhogs failed:\n{res.stdout[-3000:]}\n{res.stderr[-3000:]}") + + +# ---------------------------------------------------------------- reading results + +def input_records(rhogid): + with gzip.open(DATA / "rhogs" / f"HOG_{rhogid}.fa.gz", "rt") as fh: + return [line[1:].split()[0] for line in fh if line.startswith(">")] + + +def final_members(workdir, rhogid): + """all proteins in the final HOG objects of a rootHOG (singletons included).""" + from Bio.SeqRecord import SeqRecord + from Bio.Seq import Seq + from ete3 import Tree + from FastOMA._utils_subhog import prepare_species_tree + + recs = [SeqRecord(Seq(""), id=i) for i in input_records(rhogid)] + root = prepare_species_tree(recs, Tree(str(SPECIES_TREE), format=1), rhogid)[0] + with open(Path(workdir) / f"rhog_{rhogid}" / f"{root.name}.pickle", "rb") as fh: + hogs = pickle.load(fh) + return [p for h in hogs for m in h.get_members() for p in m.split("_|_")] + + +def output_groups(workdir, rhogid): + """the orthoXML group elements that fastoma-infer-subhogs passes on to collect-subhogs.""" + with open(Path(workdir) / "pickles" / f"file_{rhogid}.pickle", "rb") as fh: + return pickle.load(fh) + + +# ---------------------------------------------------------------- rendering + +_SCORE_ORDER = ("CompletenessScore", "ImpliedLosses", "TCSScore") + + +def _render(elem, id2prot): + """an indented, order-independent text form of an orthoXML group (lines list).""" + if elem.tag == "geneRef": + return [id2prot.get(elem.get("id"), elem.get("id"))] + props = {p.get("name"): p.get("value") for p in elem.findall("property")} + scores = {s.get("id"): s.get("value") for s in elem.findall("score")} + if elem.tag == "orthologGroup": + head = "orthologGroup " + props.get("TaxRange", "?") + else: + head = "paralogGroup" + (f" [{props['Type']}]" if "Type" in props else "") + score_txt = " ".join(f"{k}={scores[k]}" for k in _SCORE_ORDER if k in scores) + if score_txt: + head += " " + score_txt + children = [_render(c, id2prot) for c in elem if c.tag in ("orthologGroup", "paralogGroup", "geneRef")] + children.sort(key=lambda lines: "\n".join(lines)) + return [head] + [" " + line for child in children for line in child] + + +def golden_text(groups_, input_ids): + """snapshot text of one rootHOG: header line, then one block per top-level group.""" + id2prot = {i.split("||")[2]: i.split("||")[0] for i in input_ids} + blocks = sorted("\n".join(_render(g, id2prot)) for g in groups_) + n_ref = sum(1 for g in groups_ for _ in g.iter("geneRef")) + header = f"# {len(input_ids)} input proteins, {len(groups_)} groups, {n_ref} proteins in groups" + return header + "\n\n" + "\n\n".join(blocks) + "\n" + + +def golden_path(rhogid): + return GOLDEN / f"{rhogid}.txt" + + +# ---------------------------------------------------------------- regeneration + +def _docker_run(image, mount, workdir, args): + cmd = ["docker", "run", "--rm", "--platform", "linux/amd64", "-v", f"{mount}:{mount}", "-w", str(workdir), + "-e", "PYTHONHASHSEED=0", "-e", f"PYTHONPATH={REPO_DIR}", "--entrypoint", "sh", image, "-c", args] + return subprocess.run(cmd, capture_output=True, text=True) + + +def regenerate(tier, image): + GOLDEN.mkdir(parents=True, exist_ok=True) + fams = {f["rhog"]: f for f in families()} + res = _docker_run(image, REPO_DIR, REPO_DIR, "mafft --version &1; FastTree -expert &1 | head -1") + lines = res.stdout.strip().splitlines() + env = parse_tool_versions(lines[0], lines[-1]) + env["image"] = image + print("environment:", env) + # docker can only see the repository (mounted at the same path), so work in a folder inside it + with tempfile.TemporaryDirectory(dir=TESTS_DIR, prefix=".fungi30-") as tmp: + for (grp_tier, mode), rhogids in groups().items(): + if tier != "all" and grp_tier != tier: + continue + golden_ids = [r for r in rhogids if fams[r]["kind"] == "golden"] + if not golden_ids: + continue + workdir = Path(tmp) / f"{grp_tier}_{mode}" + workdir.mkdir() + prepare_input(golden_ids, workdir / "in") + args = " ".join(["/app/bin/python", "-c", repr(RUNNER)] + + infer_subhogs_args(workdir / "in", SPECIES_TREE, mode == "par")) + print(f"running {grp_tier}/{mode}: {', '.join(golden_ids)}", flush=True) + res = _docker_run(image, REPO_DIR, workdir, args) + if res.returncode != 0: + sys.exit(f"fastoma-infer-subhogs failed in {image}:\n{res.stdout[-3000:]}\n{res.stderr[-3000:]}") + for rhogid in golden_ids: + golden_path(rhogid).write_text(golden_text(output_groups(workdir, rhogid), input_records(rhogid))) + print(" wrote", golden_path(rhogid).relative_to(REPO_DIR)) + with open(ENVIRONMENT_FILE, "w") as fh: + json.dump(env, fh, indent=2) + fh.write("\n") + + +if __name__ == "__main__": + sys.path.insert(0, str(REPO_DIR)) + parser = argparse.ArgumentParser(description=__doc__, formatter_class=argparse.RawDescriptionHelpFormatter) + sub = parser.add_subparsers(dest="cmd", required=True) + p = sub.add_parser("regenerate", help="regenerate golden snapshots with docker") + p.add_argument("--tier", choices=("fast", "slow", "all"), default="all") + p.add_argument("--image", default="dessimozlab/fastoma:dev") + conf = parser.parse_args() + regenerate(conf.tier, conf.image) diff --git a/tests/test_fungi30.py b/tests/test_fungi30.py new file mode 100644 index 0000000..5b60fce --- /dev/null +++ b/tests/test_fungi30.py @@ -0,0 +1,92 @@ +"""fastoma-infer-subhogs on rootHOGs selected from the fungi-30 run (see tests/fungi30.py). + +golden families: the output must equal the stored snapshot (only in the snapshot's tool environment). +drops families: known to drop proteins; the invariant test is a strict xfail until that is fixed. +All families: every input protein must end up in a final HOG. + +Set FASTOMA_REQUIRE_GOLDEN=1 (as CI does) to fail instead of skip when the local mafft/FastTree differ +from the snapshot environment. +""" +import difflib +import os + +import pytest + +import fungi30 as F + +pytestmark = pytest.mark.tools("mafft", "FastTree") + +FAMILIES = F.families() + + +def _params(kind=None, xfail_drops=False): + params = [] + for fam in FAMILIES: + if kind and fam["kind"] != kind: + continue + marks = [pytest.mark.slow] if fam["tier"] == "slow" else [] + if xfail_drops and fam["kind"] == "drops": + marks.append(pytest.mark.xfail(strict=True, reason="BUG: fastoma-infer-subhogs drops proteins of this " + "rootHOG: " + fam["reason"])) + params.append(pytest.param(fam["rhog"], id=fam["rhog"], marks=marks)) + return params + + +_runs = {} + + +@pytest.fixture(scope="module") +def run_of(tmp_path_factory): + """work dir of the (cached) fastoma-infer-subhogs run that contains the given rootHOG.""" + by_rhog = {r: key for key, rhogids in F.groups().items() for r in rhogids} + + def get(rhogid): + key = by_rhog[rhogid] + if key not in _runs: + workdir = tmp_path_factory.mktemp("fungi30_{}_{}".format(*key)) + F.prepare_input(F.groups()[key], workdir / "in") + F.run_infer_subhogs(workdir / "in", workdir, parallel=key[1] == "par") + _runs[key] = workdir + return _runs[key] + yield get + _runs.clear() + + +@pytest.fixture(scope="module") +def golden_env(): + expected, actual = F.golden_environment(), F.tool_versions() + expected_tools = {k: v for k, v in expected.items() if k in actual} + if expected_tools != actual: + msg = (f"tool versions {actual} differ from the golden snapshot environment {expected}; " + "regenerate with `python tests/fungi30.py regenerate` if this is intended") + if os.environ.get("FASTOMA_REQUIRE_GOLDEN"): + pytest.fail(msg) + pytest.skip(msg) + + +@pytest.mark.parametrize("rhogid", _params(xfail_drops=True)) +def test_no_protein_dropped(run_of, rhogid): + members = F.final_members(run_of(rhogid), rhogid) + assert sorted(members) == sorted(F.input_records(rhogid)) + + +@pytest.mark.parametrize("rhogid", _params(kind="golden")) +def test_matches_golden_snapshot(golden_env, run_of, rhogid): + actual = F.golden_text(F.output_groups(run_of(rhogid), rhogid), F.input_records(rhogid)) + expected = F.golden_path(rhogid).read_text() + if actual != expected: + diff = "".join(difflib.unified_diff(expected.splitlines(True), actual.splitlines(True), + "golden", "actual", n=2)) + pytest.fail(f"output of {rhogid} differs from tests/data/fungi30/golden/{rhogid}.txt:\n{diff[:6000]}") + + +def test_every_family_has_input_and_golden_snapshot(): + for fam in FAMILIES: + assert (F.DATA / "rhogs" / f"HOG_{fam['rhog']}.fa.gz").exists(), fam["rhog"] + assert F.golden_path(fam["rhog"]).exists() == (fam["kind"] == "golden"), fam["rhog"] + + +def test_parse_tool_versions(): + v = F.parse_tool_versions("v7.505 (2022/Apr/10)", + "Detailed usage for FastTree 2.1.11 Double precision (No SSE3), OpenMP (10 threads):") + assert v == {"mafft": "v7.505 (2022/Apr/10)", "FastTree": "2.1.11 Double precision (No SSE3), OpenMP"} From 7abe2dc681692f691e3519de9524c79caf8661b1 Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Wed, 4 Nov 2026 12:03:46 +0100 Subject: [PATCH 09/13] test(nf-test): rebuild input archive without macOS AppleDouble files The archive was created with macOS tar, which adds a ._ metadata file for every entry. macOS tar hides them again when extracting, but on Linux they become real files: check-input then saw ._AQUAE.fa etc. as proteomes that are missing from the species tree, and the archive-input test failed in every CI configuration. Same content, with normalised owner and timestamps. Co-Authored-By: Claude Opus 5.5 --- nf-tests/helpers/input_archive.tar.gz | Bin 9973 -> 9138 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/nf-tests/helpers/input_archive.tar.gz b/nf-tests/helpers/input_archive.tar.gz index 5c5a7f0f09597c49350830315400b6870671b395..f3261ebaabb90062ec7e3ec758262ea634f3db2d 100644 GIT binary patch literal 9138 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 From 8c47c7e6ae02796ca24f6687caa86b45577ac5f2 Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Wed, 4 Nov 2026 12:18:21 +0100 Subject: [PATCH 10/13] test: pin hidden files in input folders being taken as proteomes/hogmaps Archives made with macOS tar contain a ._ AppleDouble file per entry, and proteome folders can contain .DS_Store. check_proteome_files, check_hogmap_files and parse_proteomes take them as species, so check-input stops with "._AQUAE is not in the species tree" (this is what broke the archive-input nf-test on Linux). Pinned as strict xfails until fixed. Co-Authored-By: Claude Opus 5.5 --- tests/test_check_input.py | 12 ++++++++++++ tests/test_roothog_io.py | 7 +++++++ 2 files changed, 19 insertions(+) diff --git a/tests/test_check_input.py b/tests/test_check_input.py index 9fbfed0..05ddc0c 100644 --- a/tests/test_check_input.py +++ b/tests/test_check_input.py @@ -29,6 +29,13 @@ def test_needs_three_proteomes(self, tmp_path): def test_mixed_extensions_rejected(self, tmp_path): assert C.check_proteome_files(make_files(tmp_path / "p", ["A.fa", "B.fa", "C.fasta"])) is False + @pytest.mark.xfail(strict=True, reason="BUG: hidden files are taken as proteomes, e.g. the ._A.fa AppleDouble " + "files of archives made with macOS tar (check_input.py:39); check-input " + "then reports '._A' as missing from the species tree") + def test_hidden_files_ignored(self, tmp_path): + folder = make_files(tmp_path / "p", ["A.fa", "B.fa", "C.fa", "._A.fa", ".DS_Store"]) + assert sorted(C.check_proteome_files(folder)) == ["A", "B", "C"] + class TestCheckProteome: @staticmethod @@ -58,6 +65,11 @@ def test_species_names(self, tmp_path): folder = make_files(tmp_path / "h", ["A.fa.hogmap", "B.fasta.hogmap", "notes.txt"]) assert sorted(C.check_hogmap_files(folder)) == ["A", "B"] + @pytest.mark.xfail(strict=True, reason="BUG: hidden ._A.fa.hogmap files (macOS tar) count as hogmaps " + "(check_input.py:91), so the hogmap set never equals the proteomes") + def test_hidden_files_ignored(self, tmp_path): + assert C.check_hogmap_files(make_files(tmp_path / "h", ["A.fa.hogmap", "._A.fa.hogmap"])) == ["A"] + @pytest.mark.xfail(strict=True, reason="BUG: dots are dropped from species names (check_input.py:91), " "so they never match the proteome names") def test_dotted_species_name(self, tmp_path): diff --git a/tests/test_roothog_io.py b/tests/test_roothog_io.py index ff2ae5d..b93ee03 100644 --- a/tests/test_roothog_io.py +++ b/tests/test_roothog_io.py @@ -46,6 +46,13 @@ def test_non_fasta_files_ignored(self, tmp_path): (tmp_path / "README").write_text("x") assert U.parse_proteomes(str(tmp_path))[0] == ["A"] + @pytest.mark.xfail(strict=True, reason="BUG: hidden files such as the ._A.fa AppleDouble files of macOS tar " + "archives are parsed as proteomes (_utils_roothog.py:165-170)") + def test_hidden_files_ignored(self, tmp_path): + write_fasta(tmp_path / "A.fa", [("a1", SEQ)]) + (tmp_path / "._A.fa").write_bytes(b"\x00\x05\x16\x07\x00\x02\x00\x00Mac OS X ") + assert U.parse_proteomes(str(tmp_path))[0] == ["A"] + def test_mixed_extensions_fail(self, tmp_path): # characterises current behaviour: only the last seen extension is used; check_input rejects this write_fasta(tmp_path / "A.fa", [("a1", SEQ)]) From bdb1b463e2c08dcb6b26959cb6d79742a6b994fa Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Wed, 4 Nov 2026 13:45:25 +0100 Subject: [PATCH 11/13] test: pin ImpliedLosses counting losses for complete HOGs _count_untouched_clades compares species tree nodes by identity, but the pipeline scores against full_species_tree (a copy) and every taxonomic level is pickled separately, so a HOG and its subHOGs point into different tree copies. A complete family then gets one extra loss per nested level (22 instead of 0 for the 1:1 fungi-30 family F0848294). Strict xfail, in-memory and pickled per level. Co-Authored-By: Claude Opus 5.5 --- tests/test_hog_class.py | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/tests/test_hog_class.py b/tests/test_hog_class.py index c213b12..1b1c837 100644 --- a/tests/test_hog_class.py +++ b/tests/test_hog_class.py @@ -229,6 +229,33 @@ def test_to_orthoxml_with_scores(sp): assert _tags(e)[:4] == ["score", "score", "score", "property"] +@pytest.mark.xfail(strict=True, reason="BUG: ImpliedLosses compares species tree nodes by identity " + "(_count_untouched_clades, _hog_class.py:82-86), but the scoring tree " + "(full_species_tree) and the trees of the separately pickled levels are " + "different copies, so every nested level counts one extra loss") +@pytest.mark.parametrize("pickled", [False, True], ids=["in-memory", "pickled-per-level"]) +@pytest.mark.parametrize("present,expected_losses", [(["A", "B", "C", "D"], 0), (["A", "C"], 2)], + ids=["complete", "two-clades-lost"]) +def test_implied_losses_against_full_species_tree(present, expected_losses, pickled): + # as in read_infer_xml_rhog: HOGs live on the pruned working tree, scores use an unpruned copy, and + # infer_hogs_this_level writes each level to its own pickle file + import pickle + full = species_tree("((A,B)AB,(C,D)CD)root;") + work = full.copy() + work.prune(present) + + def level(h): + return pickle.loads(pickle.dumps([h]))[0] if pickled else h + + leaves = [level(leaf_hog(pid(s.lower(), s, i), work)) for i, s in enumerate(present, 1)] + if len(present) == 4: + top = merged_hog([level(merged_hog(leaves[:2], work & "AB")), level(merged_hog(leaves[2:], work & "CD"))], work) + else: + top = merged_hog(leaves, work) + e = level(top).to_orthoxml(full) + assert e.find("score[@id='ImpliedLosses']").get("value") == str(expected_losses) + + def test_to_orthoxml_inparalogs_give_paralog_group(sp): h = merged_hog([leaf_hog(A1, sp), leaf_hog(A2, sp)], sp & "A") e = h.to_orthoxml(sp, NO_SCORES) From 880c83d957f9913340f123b0d635639e3d68960a Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Wed, 4 Nov 2026 14:28:34 +0100 Subject: [PATCH 12/13] test(fungi30): run regeneration as the caller and refuse mixed tool versions - run the docker container with the caller's uid/gid (HOME=/tmp, no bytecode), so a Linux docker daemon doesn't leave root-owned files in the repository that make the temporary directory cleanup fail - a partial regeneration (--tier fast|slow) with tool versions different from ENVIRONMENT.json is rejected, since it would leave the other tier's snapshots from the old tools while claiming the new ones (with a unit test) Regenerating the fast tier with these changes leaves all snapshots unchanged. Addresses review comments on #112. Co-Authored-By: Claude Opus 5.5 --- tests/fungi30.py | 17 +++++++++++++++-- tests/test_fungi30.py | 10 ++++++++++ 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/tests/fungi30.py b/tests/fungi30.py index 5ec2a09..d642149 100644 --- a/tests/fungi30.py +++ b/tests/fungi30.py @@ -174,11 +174,19 @@ def golden_path(rhogid): # ---------------------------------------------------------------- regeneration def _docker_run(image, mount, workdir, args): - cmd = ["docker", "run", "--rm", "--platform", "linux/amd64", "-v", f"{mount}:{mount}", "-w", str(workdir), - "-e", "PYTHONHASHSEED=0", "-e", f"PYTHONPATH={REPO_DIR}", "--entrypoint", "sh", image, "-c", args] + # run as the calling user, otherwise a Linux docker daemon leaves root-owned files in the mounted + # repository that the caller cannot remove; HOME must then point to a writable folder + user = ["--user", f"{os.getuid()}:{os.getgid()}", "-e", "HOME=/tmp"] if hasattr(os, "getuid") else [] + cmd = ["docker", "run", "--rm", "--platform", "linux/amd64", *user, "-v", f"{mount}:{mount}", "-w", str(workdir), + "-e", "PYTHONHASHSEED=0", "-e", f"PYTHONPATH={REPO_DIR}", "-e", "PYTHONDONTWRITEBYTECODE=1", + "--entrypoint", "sh", image, "-c", args] return subprocess.run(cmd, capture_output=True, text=True) +def _tools(env): + return {k: v for k, v in env.items() if k != "image"} + + def regenerate(tier, image): GOLDEN.mkdir(parents=True, exist_ok=True) fams = {f["rhog"]: f for f in families()} @@ -187,6 +195,11 @@ def regenerate(tier, image): env = parse_tool_versions(lines[0], lines[-1]) env["image"] = image print("environment:", env) + # ENVIRONMENT.json is shared by all snapshots: a partial regeneration with other tool versions would + # leave the other tier's snapshots from the old tools while claiming the new ones + if tier != "all" and ENVIRONMENT_FILE.exists() and _tools(golden_environment()) != _tools(env): + sys.exit(f"the tool versions of {image} ({_tools(env)}) differ from those of the existing snapshots " + f"({_tools(golden_environment())}); regenerate all tiers with --tier all") # docker can only see the repository (mounted at the same path), so work in a folder inside it with tempfile.TemporaryDirectory(dir=TESTS_DIR, prefix=".fungi30-") as tmp: for (grp_tier, mode), rhogids in groups().items(): diff --git a/tests/test_fungi30.py b/tests/test_fungi30.py index 5b60fce..f8f25d2 100644 --- a/tests/test_fungi30.py +++ b/tests/test_fungi30.py @@ -86,6 +86,16 @@ def test_every_family_has_input_and_golden_snapshot(): assert F.golden_path(fam["rhog"]).exists() == (fam["kind"] == "golden"), fam["rhog"] +def test_partial_regeneration_rejects_other_tool_versions(monkeypatch): + class Result: + stdout = "v7.526 (2024/Apr/26)\nDetailed usage for FastTree 2.1.11 Double precision (No SSE3):\n" + monkeypatch.setattr(F, "_docker_run", lambda *args, **kwargs: Result()) + before = F.ENVIRONMENT_FILE.read_text() + with pytest.raises(SystemExit, match="--tier all"): + F.regenerate("fast", "image-with-other-tools") + assert F.ENVIRONMENT_FILE.read_text() == before + + def test_parse_tool_versions(): v = F.parse_tool_versions("v7.505 (2022/Apr/10)", "Detailed usage for FastTree 2.1.11 Double precision (No SSE3), OpenMP (10 threads):") From 768c468769cbe06ef834a2bbece798e4b77f6c1e Mon Sep 17 00:00:00 2001 From: Adrian Altenhoff Date: Wed, 4 Nov 2026 15:23:12 +0100 Subject: [PATCH 13/13] test(fungi30): quote the container command for paths with spaces regenerate() joined the infer-subhogs command with plain spaces before passing it to `sh -c` in the container, so a checkout path containing a space was split into several arguments. Build it with shlex.join (container_command), with a test that lets sh parse the command for such a path. Regenerating the fast tier leaves all snapshots unchanged. Addresses a review comment on #112. Co-Authored-By: Claude Opus 5.5 --- tests/fungi30.py | 10 ++++++++-- tests/test_fungi30.py | 11 +++++++++++ 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/tests/fungi30.py b/tests/fungi30.py index d642149..89e59a7 100644 --- a/tests/fungi30.py +++ b/tests/fungi30.py @@ -26,6 +26,7 @@ import os import pickle import re +import shlex import shutil import subprocess import sys @@ -183,6 +184,12 @@ def _docker_run(image, mount, workdir, args): return subprocess.run(cmd, capture_output=True, text=True) +def container_command(input_dir, parallel): + """shell command (for `sh -c` in the container) running the working-tree infer-subhogs; quoted, so + paths with spaces survive.""" + return shlex.join(["/app/bin/python", "-c", RUNNER] + infer_subhogs_args(input_dir, SPECIES_TREE, parallel)) + + def _tools(env): return {k: v for k, v in env.items() if k != "image"} @@ -211,8 +218,7 @@ def regenerate(tier, image): workdir = Path(tmp) / f"{grp_tier}_{mode}" workdir.mkdir() prepare_input(golden_ids, workdir / "in") - args = " ".join(["/app/bin/python", "-c", repr(RUNNER)] + - infer_subhogs_args(workdir / "in", SPECIES_TREE, mode == "par")) + args = container_command(workdir / "in", mode == "par") print(f"running {grp_tier}/{mode}: {', '.join(golden_ids)}", flush=True) res = _docker_run(image, REPO_DIR, workdir, args) if res.returncode != 0: diff --git a/tests/test_fungi30.py b/tests/test_fungi30.py index f8f25d2..c7d202e 100644 --- a/tests/test_fungi30.py +++ b/tests/test_fungi30.py @@ -96,6 +96,17 @@ class Result: assert F.ENVIRONMENT_FILE.read_text() == before +def test_container_command_survives_paths_with_spaces(tmp_path): + import subprocess + input_dir = tmp_path / "FastOMA checkout" / "in" + cmd = F.container_command(input_dir, parallel=True) + # let sh parse the command exactly as `sh -c` in the container does, and print the resulting argv + res = subprocess.run(["sh", "-c", 'set -- ' + cmd + '; printf "%s\\n" "$@"'], capture_output=True, text=True, + check=True) + assert res.stdout.splitlines() == ["/app/bin/python", "-c", F.RUNNER] + \ + F.infer_subhogs_args(input_dir, F.SPECIES_TREE, True) + + def test_parse_tool_versions(): v = F.parse_tool_versions("v7.505 (2022/Apr/10)", "Detailed usage for FastTree 2.1.11 Double precision (No SSE3), OpenMP (10 threads):")