From be5b6cef35d0557aa6faa196ff894ecc52d912da Mon Sep 17 00:00:00 2001 From: Yan Wong Date: Fri, 6 Feb 2026 13:41:33 +0000 Subject: [PATCH] Make a nicer tskit demo notebook --- content/data/demo.trees | Bin 339828 -> 339812 bytes content/tskit.ipynb | 1030 ++++++++------------------------------- requirements.txt | 4 + 3 files changed, 216 insertions(+), 818 deletions(-) diff --git a/content/data/demo.trees b/content/data/demo.trees index 6537e0d286ac08566905185d3eb1f3406332859f..c460c3de43337068ad73862d13767e88ddca0208 100644 GIT binary patch delta 385 zcmexzPvprx5y4Jx$6#JADK16^1_nDIPT45f&%+orc_EKEC&OD7pa=s4%jAX3>XSKm z1sDY;OY+(?CQOdxwP!5=$xgo*%c4B_0IvjN#pIhnsffvveD+Ki7$z%n$xk$3pWMJF z!FXZvOrV&D090%ezXYSlWJ!K|MuW+bK+>UkCV%@(enuc>0%GRvGx=E}&oG+Onz{=Rn%E(;L z*wnz(!Wg@Zk&&eZb{P|ML(}bfZ&@BWsu-Ij8nCP0PStRSGnIxO&rkI%|>zZ1a OB&H^%B_<^%83F*v+i3m( delta 413 zcmaEIPvpxz5y4Jx$6#JADK16^1_nDIF4-v9&%>BLc_EKEr@&hlpa=s4%jAX3>XSKm z1sD}3OY+(?7EF%hwP$Sr$xgo*%c4B_0IvjN$K;zpsf@{zeD+Ka7$z%n$xk$3pWMJF z!T4bEOrThV090%ezXW5%WJ!K|Mu*9fKr*0tCV%@(enuc>0%GRvGx=E}&&V3<8SAB_ zmYEr7ryC|(m?at*8S14N85o%wm>OD6pZ$VGX}kCxmMX68YoD{tm z%Qh&-aJuCy7GGk_S^bLTK2%e2)KVS>h6#KO4C#Ul3_$D5bPWu34UIz#jjRmKtqe@` zEX~YJj0~~Mm|L1!VwEvBFg3Q^9`}~zk)ukQk+Gp!lBuz7nxR3mZc1WuvaW%tMWU{O PWn!{%a!OjFrI`@`zTt7q diff --git a/content/tskit.ipynb b/content/tskit.ipynb index 855b2b2..5748f6a 100644 --- a/content/tskit.ipynb +++ b/content/tskit.ipynb @@ -2,7 +2,7 @@ "cells": [ { "cell_type": "markdown", - "id": "4df88319-4951-4846-80ea-b8026c0eb096", + "id": "19a48cc0-ae22-4840-a9dd-2a73b665f32a", "metadata": {}, "source": [ "
\n", @@ -11,13 +11,13 @@ "
Interactive workbooks
\n", "\n", "

An interactive tour of tskit

\n", - "\n", - "
Note: This uses the tskit Python interface. Press \"shift-enter\" (or click the toolbar \"run\" button, ▶) to run a notebook cell and move to the next one. Repeat this from the top of the workbook to work gradually through the demonstration code.
" + "This tour uses the tskit Python interface. Press \"shift-enter\" (or click the toolbar \"run\" button, ▶) to run a notebook cell and move to the next one. Repeat this from the top of the workbook to work gradually through the demonstration code.\n", + "
Note: For static worked examples see our tutorials site, which includes introductions for population genetics and phylogenetics.
" ] }, { "cell_type": "markdown", - "id": "19a48cc0-ae22-4840-a9dd-2a73b665f32a", + "id": "0969a7e2-ac66-4d98-bf16-af2a5389bd06", "metadata": {}, "source": [ "## Loading an ARG in tree sequence format" @@ -25,8 +25,8 @@ }, { "cell_type": "code", - "execution_count": 1, - "id": "ad71f199", + "execution_count": null, + "id": "07cc7710-49f1-4e90-98a9-f0ed6c1f476f", "metadata": {}, "outputs": [], "source": [ @@ -35,7 +35,7 @@ }, { "cell_type": "code", - "execution_count": 2, + "execution_count": null, "id": "4961282f", "metadata": {}, "outputs": [], @@ -48,701 +48,64 @@ "id": "058be451-3ea5-4833-82ce-230d53390585", "metadata": {}, "source": [ - "In a notebook, we can show a tabular summary of the tree sequence file by displaying it to screen. Note that the [provenances](https://tskit.dev/tskit/docs/stable/provenance.html) listed in the second table below record how this ARG was originally generated (in this case, initially simulated by the [msprime](https://tskit.dev/msprime/docs/stable/intro.html) command `sim_ancestry`)." + "In a notebook, we can show a tabular summary of the tree sequence file by displaying it to screen:" ] }, { "cell_type": "code", - "execution_count": 3, + "execution_count": null, "id": "1a896cb8", "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "\n", - "
\n", - " \n", - "
\n", - "
\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
\n", - " \n", - " Tree Sequence \n", - "
Trees1 811
Sequence Length1 000 000
Time Unitsgenerations
Sample Nodes80
Total Size375.2 KiB
MetadataNo Metadata
\n", - "
\n", - "
\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
TableRowsSizeHas Metadata
Edges6 979218.1 KiB\n", - " \n", - "
Individuals401.1 KiB\n", - " \n", - "
Migrations08 Bytes\n", - " \n", - "
Mutations98935.8 KiB\n", - " \n", - "
Nodes1 33736.6 KiB\n", - " \n", - "
Populations7454 Bytes\n", - " ✅\n", - "
Provenances34.5 KiB\n", - " \n", - "
Sites98924.2 KiB\n", - " \n", - "
\n", - "
\n", - "
\n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - " \n", - "
Provenance TimestampSoftware NameVersionCommandFull record
13 January, 2026 at 12:17:04 PMmsprime1.3.3.dev60+g1a86a021.d20250519sim_mutations\n", - "
\n", - " Details\n", - " \n", - "
\n", - " \n", - "
\n", - " dict\n", - " schema_version: 1.0.0
\n", - "
\n", - " software:\n", - "
\n", - " dict\n", - " name: msprime
version: 1.3.3.dev60+g1a86a021.d2025051
9
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " parameters:\n", - "
\n", - " dict\n", - " command: sim_mutations
\n", - "
\n", - " tree_sequence:\n", - "
\n", - " dict\n", - " __constant__: __current_ts__
\n", - "
\n", - "
\n", - "
rate: 5e-08
model: None
start_time: None
end_time: None
discrete_genome: None
keep: None
random_seed: 123
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " environment:\n", - "
\n", - " dict\n", - " \n", - "
\n", - " os:\n", - "
\n", - " dict\n", - " system: Darwin
node: Yans-M2.local
release: 24.6.0
version: Darwin Kernel Version 24.6.0:
Mon Jul 14 11:30:51 PDT 2025;
root:xnu-
11417.140.69~1/RELEASE_ARM64_T
8...
machine: arm64
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " python:\n", - "
\n", - " dict\n", - " implementation: CPython
version: 3.12.5
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " libraries:\n", - "
\n", - " dict\n", - " \n", - "
\n", - " kastore:\n", - "
\n", - " dict\n", - " version: 2.1.1
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " tskit:\n", - "
\n", - " dict\n", - " version: 1.0.0
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " gsl:\n", - "
\n", - " dict\n", - " version: 2.8
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - "
13 January, 2026 at 12:17:04 PMtskit1.0.0simplify\n", - "
\n", - " Details\n", - " \n", - "
\n", - " \n", - "
\n", - " dict\n", - " schema_version: 1.0.0
\n", - "
\n", - " software:\n", - "
\n", - " dict\n", - " name: tskit
version: 1.0.0
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " parameters:\n", - "
\n", - " dict\n", - " command: simplify
TODO: add simplify parameters
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " environment:\n", - "
\n", - " dict\n", - " \n", - "
\n", - " os:\n", - "
\n", - " dict\n", - " system: Darwin
node: Yans-M2.local
release: 24.6.0
version: Darwin Kernel Version 24.6.0:
Mon Jul 14 11:30:51 PDT 2025;
root:xnu-
11417.140.69~1/RELEASE_ARM64_T
8...
machine: arm64
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " python:\n", - "
\n", - " dict\n", - " implementation: CPython
version: 3.12.5
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " libraries:\n", - "
\n", - " dict\n", - " \n", - "
\n", - " kastore:\n", - "
\n", - " dict\n", - " version: 2.1.1
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - "
13 January, 2026 at 12:17:04 PMmsprime1.3.3.dev60+g1a86a021.d20250519sim_ancestry\n", - "
\n", - " Details\n", - " \n", - "
\n", - " \n", - "
\n", - " dict\n", - " schema_version: 1.0.0
\n", - "
\n", - " software:\n", - "
\n", - " dict\n", - " name: msprime
version: 1.3.3.dev60+g1a86a021.d2025051
9
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " parameters:\n", - "
\n", - " dict\n", - " command: sim_ancestry
samples: None
\n", - "
\n", - " demography:\n", - "
\n", - " dict\n", - " \n", - "
\n", - " populations:\n", - "
\n", - " list\n", - " \n", - "
\n", - " \n", - "
\n", - " dict\n", - " initial_size: 500
growth_rate: 0.0
name: A
description:
\n", - "
\n", - " extra_metadata:\n", - "
\n", - " dict\n", - " \n", - "
\n", - "
\n", - "
default_sampling_time: None
initially_active: None
id: 0
__class__: msprime.demography.Population
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " dict\n", - " initial_size: 500
growth_rate: 0.0
name: B
description:
\n", - "
\n", - " extra_metadata:\n", - "
\n", - " dict\n", - " \n", - "
\n", - "
\n", - "
default_sampling_time: None
initially_active: None
id: 1
__class__: msprime.demography.Population
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " dict\n", - " initial_size: 300
growth_rate: 0.0
name: C
description:
\n", - "
\n", - " extra_metadata:\n", - "
\n", - " dict\n", - " \n", - "
\n", - "
\n", - "
default_sampling_time: None
initially_active: None
id: 2
__class__: msprime.demography.Population
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " dict\n", - " initial_size: 1000
growth_rate: 0.0
name: D
description:
\n", - "
\n", - " extra_metadata:\n", - "
\n", - " dict\n", - " \n", - "
\n", - "
\n", - "
default_sampling_time: None
initially_active: None
id: 3
__class__: msprime.demography.Population
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " dict\n", - " initial_size: 500
growth_rate: 0.0
name: pop_4
description:
\n", - "
\n", - " extra_metadata:\n", - "
\n", - " dict\n", - " \n", - "
\n", - "
\n", - "
default_sampling_time: 250.0
initially_active: False
id: 4
__class__: msprime.demography.Population
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " dict\n", - " initial_size: 500
growth_rate: 0.0
name: pop_5
description:
\n", - "
\n", - " extra_metadata:\n", - "
\n", - " dict\n", - " \n", - "
\n", - "
\n", - "
default_sampling_time: 210.0
initially_active: False
id: 5
__class__: msprime.demography.Population
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " dict\n", - " initial_size: 500
growth_rate: 0.0
name: pop_6
description:
\n", - "
\n", - " extra_metadata:\n", - "
\n", - " dict\n", - " \n", - "
\n", - "
\n", - "
default_sampling_time: 400.0
initially_active: False
id: 6
__class__: msprime.demography.Population
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " events:\n", - "
\n", - " list\n", - " \n", - "
\n", - " \n", - "
\n", - " dict\n", - " time: 210.0
\n", - "
\n", - " derived:\n", - "
\n", - " list\n", - " C
D
\n", - "
\n", - "
\n", - "
ancestral: pop_5
__class__: msprime.demography.PopulationS
plit
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " dict\n", - " time: 250.0
\n", - "
\n", - " derived:\n", - "
\n", - " list\n", - " A
B
\n", - "
\n", - "
\n", - "
ancestral: pop_4
__class__: msprime.demography.PopulationS
plit
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " dict\n", - " time: 400.0
\n", - "
\n", - " derived:\n", - "
\n", - " list\n", - " pop_4
pop_5
\n", - "
\n", - "
\n", - "
ancestral: pop_6
__class__: msprime.demography.PopulationS
plit
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " migration_matrix:\n", - "
\n", - " list\n", - " \n", - "
\n", - " \n", - "
\n", - " list\n", - " 0.0
0.0
0.0
0.0
0.0
0.0
0.0
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " list\n", - " 0.0
0.0
0.0
0.0
0.0
0.0
0.0
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " list\n", - " 0.0
0.0
0.0
0.0
0.0
0.0
0.0
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " list\n", - " 0.0
0.0
0.0
0.0
0.0
0.0
0.0
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " list\n", - " 0.0
0.0
0.0
0.0
0.0
0.0
0.0
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " list\n", - " 0.0
0.0
0.0
0.0
0.0
0.0
0.0
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - " list\n", - " 0.0
0.0
0.0
0.0
0.0
0.0
0.0
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
__class__: msprime.demography.Demography
\n", - "
\n", - "
\n", - "
sequence_length: 1000000.0
discrete_genome: None
recombination_rate: 1e-07
gene_conversion_rate: None
gene_conversion_tract_length: None
population_size: None
ploidy: None
model: None
\n", - "
\n", - " initial_state:\n", - "
\n", - " dict\n", - " __constant__: __current_ts__
\n", - "
\n", - "
\n", - "
start_time: None
end_time: None
record_migrations: None
record_full_arg: None
additional_nodes: None
coalescing_segments_only: None
num_labels: None
random_seed: 123
replicate_index: 0
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " environment:\n", - "
\n", - " dict\n", - " \n", - "
\n", - " os:\n", - "
\n", - " dict\n", - " system: Darwin
node: Yans-M2.local
release: 24.6.0
version: Darwin Kernel Version 24.6.0:
Mon Jul 14 11:30:51 PDT 2025;
root:xnu-
11417.140.69~1/RELEASE_ARM64_T
8...
machine: arm64
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " python:\n", - "
\n", - " dict\n", - " implementation: CPython
version: 3.12.5
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " libraries:\n", - "
\n", - " dict\n", - " \n", - "
\n", - " kastore:\n", - "
\n", - " dict\n", - " version: 2.1.1
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " tskit:\n", - "
\n", - " dict\n", - " version: 1.0.0
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " gsl:\n", - "
\n", - " dict\n", - " version: 2.8
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " \n", - "
\n", - "
\n", - "
\n", - "
\n", - "
\n", - " To cite this software, please consult the citation manual: https://tskit.dev/citation/\n", - "
\n", - "
\n", - " " - ], - "text/plain": [ - "" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], + "source": [ + "ts # Running this notebook cell should display a tabular summary of the `ts` object" + ] + }, + { + "cell_type": "markdown", + "id": "87010aa7-6f8e-49e2-8910-2a7f63d7e773", + "metadata": {}, + "source": [ + "
Note: the provenances listed above (in the last part of the output) show how this tree sequence was originally generated. In this case, close inspection shows it was initially simulated by the command sim_ancestry(), provided by msprime version 1.4.0, then simplified, with mutations finally added using the msprime sim_mutations() function.
\n", + "\n", + "Each [node](https://tskit.dev/tskit/docs/stable/data-model.html#node-table) in the tree sequence represents a (haploid) genome. *Sample* nodes are the (usually current-day) genomes whose DNA sequences are known. In this tree sequence there are 80 sample nodes, belonging to 40 (diploid) individuals.\n", + "\n", + "## Mutations and genetic variation\n", + "\n", + "*Mutations* on an ARG define the DNA sequence of the samples. These cause sample nodes to differ from each other at a number of *variable sites*." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "d4d4a32c-28aa-45c2-8a5d-dc8cfdb3d49d", + "metadata": {}, + "outputs": [], + "source": [ + "print(\n", + " f\"The mutations in this ARG define {ts.num_sites} sites,\",\n", + " f\"for {ts.num_samples} sample genomes,\",\n", + " f\"over a total length of {ts.sequence_length} base pairs\",\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "3ca91e59-2c3f-446b-8926-ec08a60ce716", + "metadata": {}, + "outputs": [], "source": [ - "ts" + "for v in ts.variants():\n", + " print(\n", + " \"For the first variable site, the allelic state for\",\n", + " f\"{ts.num_samples} genomes at position {v.site.position} is:\\n\",\n", + " v.states(),\n", + " )\n", + " print(f\"At variable site number # {v.site.id} (at position {v.site.position} basepairs along the chromosome)\")\n", + " for state, freq in v.frequencies().items():\n", + " print(f\"* the frequency of {state} is {freq}\")\n", + " break" ] }, { @@ -750,25 +113,19 @@ "id": "4c94268a-94b0-48d6-9321-05687cbc33f3", "metadata": {}, "source": [ - "## Analysis \n", + "## Basic analysis \n", "\n", - "Below are a few examples of analysing the loaded _tskit_ ARG. Feel free to change them and re-run the cells. Documentation for the methods is here: https://tskit.dev/tskit/docs/stable/python-api.html (e.g. see [here](https://tskit.dev/tskit/docs/stable/python-api.html#tskit.TreeSequence.allele_frequency_spectrum) for the allele frequency spectrum)." + "Genetic analysis using tree sequences is usually incredibly fast, even for huge sample sizes. Here are a few examples of analysing the loaded _tskit_ ARG: feel free to change them and re-run the cells.\n", + "\n", + "Documentation for the methods is here: https://tskit.dev/tskit/docs/stable/python-api.html (e.g. see [here](https://tskit.dev/tskit/docs/stable/python-api.html#tskit.TreeSequence.allele_frequency_spectrum) for the allele frequency spectrum)." ] }, { "cell_type": "code", - "execution_count": 4, + "execution_count": null, "id": "9c518928-5a62-40d4-866d-0488616b4461", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "AFS calculated for 80 genomes of length 1.00 Mb\n" - ] - } - ], + "outputs": [], "source": [ "# Calculate the unpolarised allele frequency spectrum\n", "afs = ts.allele_frequency_spectrum(polarised=False)\n", @@ -777,21 +134,10 @@ }, { "cell_type": "code", - "execution_count": 5, + "execution_count": null, "id": "f1accb0d-cf44-430d-8ae5-534800e72663", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAkcAAAHFCAYAAAD40125AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAABW/klEQVR4nO3deViU5f4/8PfIMmyCLMlSCEhuiIWAIXjcDRRNLQ00Qz0m32hREC3EJdQWtE5FpkB2yC0VKkTJgymYkgRZIpJbZobiAhJq4MZ+//7wmuf3jDMgQ5pA79d1zVVzz+e5l2eGePcsg0IIIUBEREREAIAOD3oCRERERK0JwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEbU6S5YsgUKhQHl5udbX3d3dMWTIkL93Uk1wdnbG9OnT73m/CoUCS5Ysuef9NmXdunVQKBQ4c+bMPelv3759UCgU2Ldvn9Smen9b4q9s25g9e/bA29sbpqamUCgU2LZt2z3tn1qvd955h+83aaX/oCdARNrl5eXhkUceedDTaNeEEAgKCkL37t2Rnp4OU1NT9OjR40FPi/4m77zzDiZOnIjx48c/6KlQK8NwRNSKCCFQVVUFY2Nj9O/f/0FPp927ePEirly5gqeffhrDhw9vsvbmzZswMTH5m2ZGrc2tW7dgZGR0z49cUuvE02rU5qlO3WzZsgULFy6Eg4MDzM3NMWLECJw8eVKtdsiQIXB3d8f+/fvRv39/GBsb4+GHH8bixYtRX1+vVnvlyhW8/PLLePjhh2FoaIiuXbti4cKFqK6ubnI+VVVVmDt3Ljw8PGBhYQErKyv4+vpi+/btGrUKhQKvvvoqEhMT0atXLyiVSqxfv156TX5a7ebNm5g3bx5cXFxgZGQEKysreHt7Y8uWLWp9Hjx4EGPHjoWVlRWMjIzQt29ffPHFFxpj//DDDxgwYACMjIzg4OCA6Oho1NbWNrk2+RiTJk2Cs7MzjI2N4ezsjMmTJ+Ps2bPN2l6blJQU+Pr6wtTUFGZmZggICEBBQcF923bJkiXSkbmoqCgoFAo4OztLrykUChw6dAgTJ06EpaUlXF1dAdwOsPHx8fDw8ICxsTEsLS0xceJE/P7772r9CyHw7rvvwsnJCUZGRvD09MTOnTsxZMgQtdPCjZ3K1HZKEgCysrIwfPhwmJubw8TEBAMGDMCePXs01qZQKHDs2DFMnjwZFhYWsLW1xYwZM1BRUaFW29DQgI8//lhaT6dOndC/f3+kp6cDAF544QVYWVnh5s2bGvtw2LBh6N27d5P7uaCgAGPGjEHnzp2hVCrh4OCA0aNH4/z581KN6ufgk08+Qffu3aFUKuHm5obk5GSN/kpLS/Hiiy/ikUcegaGhIVxcXLB06VLU1dWp1VVXV2PZsmXo1asXjIyMYG1tjaFDhyI3N1ca88aNG1i/fj0UCgUUCoX0vqjek927d2PGjBl46KGHYGJigurqakyfPl36nGjb53Kqda1duxY9evSAsbExvL298cMPP0AIgffeew8uLi4wMzPDsGHD8NtvvzW5L+nvw3BE7caCBQtw9uxZ/Pe//8WaNWtw6tQpPPXUUxqhp7S0FJMmTcKUKVOwfft2TJw4EW+99RbCw8OlmqqqKgwdOhQbNmxAZGQk/ve//+H555/Hu+++i2eeeabJeVRXV+PKlSuYN28etm3bhi1btuBf//oXnnnmGWzYsEGjftu2bUhISMAbb7yBXbt2YeDAgVr7jYyMREJCAmbPno1vvvkGGzduxLPPPovLly9LNXv37sWAAQPw559/IjExEdu3b4eHhweCg4Oxbt06qe748eMYPnw4/vzzT6xbtw6JiYkoKCjAW2+91ZxdjTNnzqBHjx6Ii4vDrl27sGLFCpSUlKBfv36NXivWlHfeeQeTJ0+Gm5sbvvjiC2zcuBHXrl3DwIEDcfz48fuy7cyZM7F161YAwKxZs5CXl4e0tDS1mmeeeQaPPvoovvzySyQmJgIAXnzxRURERGDEiBHYtm0b4uPjcezYMfj5+eHSpUvStkuXLkVUVBSefPJJbNu2DS+99BJCQ0M1ArsuPv/8c/j7+8Pc3Bzr16/HF198ASsrKwQEBGgEJACYMGECunfvjtTUVMyfPx+bN2/GnDlz1GqmT5+O8PBw9OvXDykpKUhOTsbYsWOlsBYeHo6rV69i8+bNatsdP34ce/fuxSuvvNLofG/cuIEnn3wSly5dwurVq5GZmYm4uDh06dIF165dU6tNT0/HypUrsWzZMnz11VdwcnLC5MmT8dVXX0k1paWleOKJJ7Br1y688cYb2LlzJ1544QXExsYiNDRUqqurq8OoUaPw5ptvYsyYMUhLS8O6devg5+eH4uJiALdPWxsbGyMwMBB5eXnIy8tDfHy82pxmzJgBAwMDbNy4EV999RUMDAyaeHe027FjB/773/9i+fLl2LJlC65du4bRo0dj7ty5+P7777Fq1SqsWbMGx48fx4QJEyCE0HkMug8EUSsTExMjAIg//vhD6+u9e/cWgwcPlp7v3btXABCBgYFqdV988YUAIPLy8qS2wYMHCwBi+/btarWhoaGiQ4cO4uzZs0IIIRITEwUA8cUXX6jVrVixQgAQu3fvltqcnJzEtGnTGl1PXV2dqK2tFS+88ILo27ev2msAhIWFhbhy5YrGdgBETEyM9Nzd3V2MHz++0XGEEKJnz56ib9++ora2Vq19zJgxwt7eXtTX1wshhAgODhbGxsaitLRUbZ49e/YUAERRUVGT42hb4/Xr14Wpqan46KOPpHbVe7N3716pTfX+qhQXFwt9fX0xa9YstT6vXbsm7OzsRFBQ0D3ZVpuioiIBQLz33ntq7apx3njjDbX2vLw8AUC8//77au3nzp0TxsbG4vXXXxdCCHH16lVhZGQknn76abW677//XgBQ+/yuXbtW6z6/c9/duHFDWFlZiaeeekqtrr6+Xjz++OPiiSee0Jj/u+++q1b78ssvCyMjI9HQ0CCEEOK7774TAMTChQub2Eu3f248PDzU2l566SVhbm4url271uh2Bw8eFADEtm3bmuwfQKOfx0cffVRqe/HFF4WZmZn0c6ryn//8RwAQx44dE0IIsWHDBgFAfPrpp02Oa2pqqvVnV/WeTJ06VeO1adOmCScnJ432Oz+bqnXZ2dmJ69evS23btm0TAISHh4f0PgghRFxcnAAgfv755ybnTH8PHjmidmPs2LFqzx977DEA0DjV07FjR43a5557Dg0NDfjuu+8AAN9++y1MTU0xceJEtTrVXWna/i9d7ssvv8SAAQNgZmYGfX19GBgYICkpCSdOnNCoHTZsGCwtLe+6vieeeAI7d+7E/PnzsW/fPty6dUvt9d9++w2//PILpkyZAuD2/z2rHoGBgSgpKZGOWuzduxfDhw+Hra2ttL2enh6Cg4PvOg8AuH79OqKiovDoo49CX18f+vr6MDMzw40bN7SusSm7du1CXV0dpk6dqjZnIyMjDB48WOO00r3atjkmTJig9nzHjh1QKBR4/vnn1cazs7PD448/Lo2Xl5eHqqoq6b1Q8fPzg5OTU4vmkpubiytXrmDatGlqYzc0NGDkyJH46aefcOPGDbVttP1MVFVVoaysDACwc+dOAGjy6A9w++jR4cOH8f333wMAKisrsXHjRkybNg1mZmaNbvfoo4/C0tISUVFRSExMbPJIXmOfx99++006Bbdjxw4MHToUDg4Oavtg1KhRAIDs7GxpXUZGRpgxY0aT67qbO9//lhg6dChMTU2l57169QIAjBo1Su00nKr9r5yapnuHF2RTq6Ovf/tjeefpMJW6ujqth7etra3VniuVSgDQCBHy/wCr2NnZAYB0iury5cuws7PTuIagc+fO0NfXVzuVdaetW7ciKCgIzz77LF577TXY2dlBX18fCQkJ+OyzzzTq7e3tG+1LbuXKlXjkkUeQkpKCFStWwMjICAEBAXjvvffQrVs36ZTOvHnzMG/ePK19qE55qdZ3J21t2jz33HPYs2cPFi9ejH79+sHc3BwKhQKBgYEa+/tuVPPu16+f1tc7dGj8/+H+yrbNced7c+nSJQghtH6GAKBr164A/v/n6K/s4zup1npnYJe7cuWK2i/iu/1M/PHHH9DT07vrnMaNGwdnZ2esXr0aAwYMwLp163Djxo27hioLCwtkZ2fj7bffxoIFC3D16lXY29sjNDQUixYtUvs5bmpfXb58GY888gguXbqEr7/+utHTW6rP9x9//AEHB4d7/v63hJWVldpzQ0PDJturqqr+8pj01zEcUauj+sVz4cIFjV9CQgiUlJTA29u7xf3LrwtRKS0tBfD/f5lYW1vjwIEDEEKoBaSysjLU1dXBxsam0f4///xzuLi4ICUlRW3bxi7kbu7dL6ampli6dCmWLl2KS5cuSUeRnnrqKfzyyy/SnKKjoxu9Lkp1m7q1tbW0ZjltbXeqqKjAjh07EBMTg/nz50vtqmutdKWat+o6k79r2+a4872xsbGBQqHA/v37paAhp2pTfY4a28fyC3qNjIwAaH4+7rx2S7XWjz/+uNE7GRsLbY156KGHUF9fj9LS0iaDQIcOHfDKK69gwYIFeP/99xEfH4/hw4c362sP+vTpg+TkZAgh8PPPP2PdunVYtmwZjI2N1T4/TX0eVfvTxsYGjz32GN5++22tYzk4OEjrysnJQUNDw18KSNp+No2MjLT+LLfkWjtqvRiOqNUZNmwYFAoFUlJS4OnpqfbaN998g8rKSowYMaLF/V+7dg3p6elqpxw2b96MDh06YNCgQQBuH+L/4osvsG3bNjz99NNSneqC6qZu+1YoFDA0NFT7D2tpaanWu9VaytbWFtOnT0dhYSHi4uJw8+ZN9OjRA926dUNhYSHeeeedJrcfOnQo0tPTcenSJekXan19PVJSUu46tkKhgBBCIxz897//bfRoX1MCAgKgr6+P06dP63wa469s2xJjxozB8uXLceHCBQQFBTVa179/fxgZGWHTpk1q88rNzcXZs2fVwpHq33/++We1sKG6W0xlwIAB6NSpE44fP45XX331nqxn1KhRiI2NRUJCApYtW9Zk7cyZM7FkyRJMmTIFJ0+exIoVK3QaS6FQ4PHHH8eHH36IdevW4dChQ2qv79mzR+vn0dXVVbqrcMyYMcjIyICrq2uTp6JHjRqFLVu2YN26dU2eWlMqlTof6XR2dkZZWZnaXGtqarBr1y6d+qHWjeGIWh1XV1e8+uqreO+99/Dnn38iMDAQxsbG+Omnn7B8+XJ4e3vjueeea3H/1tbWeOmll1BcXIzu3bsjIyMDn376KV566SV06dIFADB16lSsXr0a06ZNw5kzZ9CnTx/k5OTgnXfeQWBgYJPhbMyYMdi6dStefvllTJw4EefOncObb74Je3t7nDp1qsXz9vHxwZgxY/DYY4/B0tISJ06cwMaNG+Hr6yt9/84nn3yCUaNGISAgANOnT8fDDz+MK1eu4MSJEzh06BC+/PJLAMCiRYuQnp6OYcOG4Y033oCJiQlWr16tcc2KNubm5hg0aBDee+892NjYwNnZGdnZ2UhKSkKnTp10XpezszOWLVuGhQsX4vfff8fIkSNhaWmJS5cu4ccff5SOmN3rbVtiwIAB+L//+z/8+9//xsGDBzFo0CCYmpqipKQEOTk56NOnD1566SVYWlpi3rx5eOuttzBz5kw8++yzOHfuHJYsWaJx+qhfv37o0aMH5s2bh7q6OlhaWiItLQ05OTlqdWZmZvj4448xbdo0XLlyBRMnTkTnzp3xxx9/oLCwEH/88QcSEhJ0Ws/AgQMREhKCt956C5cuXcKYMWOgVCpRUFAAExMTzJo1S6rt1KkTpk6dioSEBDg5OeGpp566a/87duxAfHw8xo8fj65du0IIga1bt+LPP//Ek08+qVZrY2ODYcOGYfHixTA1NUV8fDx++eUXtdv5ly1bhszMTPj5+WH27Nno0aMHqqqqcObMGWRkZCAxMRGPPPIIJk+ejLVr1yIsLAwnT57E0KFD0dDQgAMHDqBXr16YNGkSgNtHtfbt24evv/4a9vb26Nix412PhgUHB+ONN97ApEmT8Nprr6GqqgorV65s0f8YUCv2IK8GJ2pMQ0ODSEhIEN7e3sLExEQYGhqKbt26iaioKI27Y1R39Xz55Zdq7ao7kdauXSu1DR48WPTu3Vvs27dPeHt7C6VSKezt7cWCBQs07vC6fPmyCAsLE/b29kJfX184OTmJ6OhoUVVVpVan7W615cuXC2dnZ6FUKkWvXr3Ep59+2ujdLK+88orWfYA77labP3++8Pb2FpaWlkKpVIquXbuKOXPmiPLycrXtCgsLRVBQkOjcubMwMDAQdnZ2YtiwYSIxMVGt7vvvvxf9+/cXSqVS2NnZiddee02sWbOmWXernT9/XkyYMEFYWlqKjh07ipEjR4qjR49q7Ivm3K2msm3bNjF06FBhbm4ulEqlcHJyEhMnThRZWVn3ZFtt7na3WmN3TH722WfCx8dHmJqaCmNjY+Hq6iqmTp0qDh48KNU0NDSI2NhY4ejoKAwNDcVjjz0mvv76azF48GC1u9WEEOLXX38V/v7+wtzcXDz00ENi1qxZ4n//+5/GvhNCiOzsbDF69GhhZWUlDAwMxMMPPyxGjx6t9vlvbP7a7oyrr68XH374oXB3dxeGhobCwsJC+Pr6iq+//lpj3fv27RMAxPLly5varZJffvlFTJ48Wbi6ugpjY2NhYWEhnnjiCbFu3Tq1OtXPQXx8vHB1dRUGBgaiZ8+eYtOmTRp9/vHHH2L27NnCxcVFGBgYCCsrK+Hl5SUWLlyodlfYrVu3xBtvvCG6desmDA0NhbW1tRg2bJjIzc2Vag4fPiwGDBggTExM1O4iVO2nn376Seu6MjIyhIeHhzA2NhZdu3YVq1atavbPd2Ofucb+O0YPhkIIfqkC/XMMGTIE5eXlOHr06IOeCv1Dqb5o8K/eSfcgzJ07FwkJCTh37pzGxd5/hUKhwCuvvIJVq1bdsz6J/gqeViMioib98MMP+PXXXxEfH48XX3zxngYjotaI4YiIiJqkuq5tzJgxzf4WdaK2jKfViIiIiGT4DdlEREREMgxHRERERDIMR0REREQyvCBbRw0NDbh48SI6duzY7D/7QERERA+WEALXrl1r1t/dYzjS0cWLF+Ho6Pigp0FEREQtcO7cOelP0jSG4UhHHTt2BHB755qbmz/g2RAREVFzVFZWwtHRUfo93hSGIx2pTqWZm5szHBEREbUxzbkkhhdkExEREckwHBERERHJMBwRERERyTAcEREREckwHBERERHJMBwRERERyTAcEREREckwHBERERHJtCgcxcfHw8XFBUZGRvDy8sL+/fubrM/OzoaXlxeMjIzQtWtXJCYmatSkpqbCzc0NSqUSbm5uSEtL03ncJUuWoGfPnjA1NYWlpSVGjBiBAwcOqNUMGTIECoVC7TFp0qQW7AUiIiJqj3QORykpKYiIiMDChQtRUFCAgQMHYtSoUSguLtZaX1RUhMDAQAwcOBAFBQVYsGABZs+ejdTUVKkmLy8PwcHBCAkJQWFhIUJCQhAUFKQWbJozbvfu3bFq1SocOXIEOTk5cHZ2hr+/P/744w+1OYWGhqKkpER6fPLJJ7ruBiIiImqnFEIIocsGPj4+8PT0REJCgtTWq1cvjB8/HrGxsRr1UVFRSE9Px4kTJ6S2sLAwFBYWIi8vDwAQHByMyspK7Ny5U6oZOXIkLC0tsWXLlhaNC9z+OyoWFhbIysrC8OHDAdw+cuTh4YG4uDhdlq3RZ0VFBf98CBERURuhy+9vnY4c1dTUID8/H/7+/mrt/v7+yM3N1bpNXl6eRn1AQAAOHjyI2traJmtUfbZk3JqaGqxZswYWFhZ4/PHH1V7btGkTbGxs0Lt3b8ybNw/Xrl27y8qJiIjon0KnPzxbXl6O+vp62NraqrXb2tqitLRU6zalpaVa6+vq6lBeXg57e/tGa1R96jLujh07MGnSJNy8eRP29vbIzMyEjY2N9PqUKVPg4uICOzs7HD16FNHR0SgsLERmZqbW+VdXV6O6ulp6XllZqbWOiIiI2gedwpHKnX/RVgjR5F+51VZ/Z3tz+mxOzdChQ3H48GGUl5fj008/la5d6ty5M4Db1xupuLu7o1u3bvD29sahQ4fg6empMffY2FgsXbq00bURERFR+6LTaTUbGxvo6elpHK0pKyvTOKqjYmdnp7VeX18f1tbWTdao+tRlXFNTUzz66KPo378/kpKSoK+vj6SkpEbX5OnpCQMDA5w6dUrr69HR0aioqJAe586da7QvIiIiavt0OnJkaGgILy8vZGZm4umnn5baMzMzMW7cOK3b+Pr64uuvv1Zr2717N7y9vWFgYCDVZGZmYs6cOWo1fn5+LR5XRQihdlrsTseOHUNtbS3s7e21vq5UKqFUKpsc437TduQqJibmAcyEiIio/dP5tFpkZCRCQkLg7e0NX19frFmzBsXFxQgLCwNw+0jLhQsXsGHDBgC370xbtWoVIiMjERoairy8PCQlJUl3oQFAeHg4Bg0ahBUrVmDcuHHYvn07srKykJOT0+xxb9y4gbfffhtjx46Fvb09Ll++jPj4eJw/fx7PPvssAOD06dPYtGkTAgMDYWNjg+PHj2Pu3Lno27cvBgwY0PK9SERERO2GzuEoODgYly9fxrJly1BSUgJ3d3dkZGTAyckJAFBSUqL23UMuLi7IyMjAnDlzsHr1ajg4OGDlypWYMGGCVOPn54fk5GQsWrQIixcvhqurK1JSUuDj49PscfX09PDLL79g/fr1KC8vh7W1Nfr164f9+/ejd+/eAG4fgdqzZw8++ugjXL9+HY6Ojhg9ejRiYmKgp6fXsj1IRERE7YrO33P0T/cgvueIp9WIiIj+mvv2PUdERERE7R3DEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkUyLwlF8fDxcXFxgZGQELy8v7N+/v8n67OxseHl5wcjICF27dkViYqJGTWpqKtzc3KBUKuHm5oa0tDSdx12yZAl69uwJU1NTWFpaYsSIEThw4IBaTXV1NWbNmgUbGxuYmppi7NixOH/+fAv2AhEREbVHOoejlJQUREREYOHChSgoKMDAgQMxatQoFBcXa60vKipCYGAgBg4ciIKCAixYsACzZ89GamqqVJOXl4fg4GCEhISgsLAQISEhCAoKUgs2zRm3e/fuWLVqFY4cOYKcnBw4OzvD398ff/zxh1QTERGBtLQ0JCcnIycnB9evX8eYMWNQX1+v664gIiKidkghhBC6bODj4wNPT08kJCRIbb169cL48eMRGxurUR8VFYX09HScOHFCagsLC0NhYSHy8vIAAMHBwaisrMTOnTulmpEjR8LS0hJbtmxp0bgAUFlZCQsLC2RlZWH48OGoqKjAQw89hI0bNyI4OBgAcPHiRTg6OiIjIwMBAQF3Xb+qz4qKCpibm9+1/l5YunSpRltMTMzfMjYREVF7oMvvb52OHNXU1CA/Px/+/v5q7f7+/sjNzdW6TV5enkZ9QEAADh48iNra2iZrVH22ZNyamhqsWbMGFhYWePzxxwEA+fn5qK2tVevHwcEB7u7ujfZTXV2NyspKtQcRERG1XzqFo/LyctTX18PW1lat3dbWFqWlpVq3KS0t1VpfV1eH8vLyJmtUfeoy7o4dO2BmZgYjIyN8+OGHyMzMhI2NjTSOoaEhLC0tmz3/2NhYWFhYSA9HR0etdURERNQ+tOiCbIVCofZcCKHRdrf6O9ub02dzaoYOHYrDhw8jNzcXI0eORFBQEMrKyppcT1Pzj46ORkVFhfQ4d+5ck30RERFR26ZTOLKxsYGenp7GUZaysjKNozoqdnZ2Wuv19fVhbW3dZI2qT13GNTU1xaOPPor+/fsjKSkJ+vr6SEpKksapqanB1atXmz1/pVIJc3NztQcRERG1XzqFI0NDQ3h5eSEzM1OtPTMzE35+flq38fX11ajfvXs3vL29YWBg0GSNqs+WjKsihEB1dTUAwMvLCwYGBmr9lJSU4OjRo3fth4iIiP4Z9HXdIDIyEiEhIfD29oavry/WrFmD4uJihIWFAbh9GurChQvYsGEDgNt3pq1atQqRkZEIDQ1FXl4ekpKSpLvQACA8PByDBg3CihUrMG7cOGzfvh1ZWVnIyclp9rg3btzA22+/jbFjx8Le3h6XL19GfHw8zp8/j2effRYAYGFhgRdeeAFz586FtbU1rKysMG/ePPTp0wcjRoxo+V4kIiKidkPncBQcHIzLly9j2bJlKCkpgbu7OzIyMuDk5ATg9pEY+XcPubi4ICMjA3PmzMHq1avh4OCAlStXYsKECVKNn58fkpOTsWjRIixevBiurq5ISUmBj49Ps8fV09PDL7/8gvXr16O8vBzW1tbo168f9u/fj969e0v9fPjhh9DX10dQUBBu3bqF4cOHY926ddDT09N97xEREVG7o/P3HP3T8XuOiIiI2p779j1HRERERO0dwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZFMi8JRfHw8XFxcYGRkBC8vL+zfv7/J+uzsbHh5ecHIyAhdu3ZFYmKiRk1qairc3NygVCrh5uaGtLQ0ncatra1FVFQU+vTpA1NTUzg4OGDq1Km4ePGiWh9DhgyBQqFQe0yaNKklu4GIiIjaIZ3DUUpKCiIiIrBw4UIUFBRg4MCBGDVqFIqLi7XWFxUVITAwEAMHDkRBQQEWLFiA2bNnIzU1VarJy8tDcHAwQkJCUFhYiJCQEAQFBeHAgQPNHvfmzZs4dOgQFi9ejEOHDmHr1q349ddfMXbsWI05hYaGoqSkRHp88sknuu4GIiIiaqcUQgihywY+Pj7w9PREQkKC1NarVy+MHz8esbGxGvVRUVFIT0/HiRMnpLawsDAUFhYiLy8PABAcHIzKykrs3LlTqhk5ciQsLS2xZcuWFo0LAD/99BOeeOIJnD17Fl26dAFw+8iRh4cH4uLidFm2pLKyEhYWFqioqIC5uXmL+tDV0qVLNdpiYmL+lrGJiIjaA11+f+t05Kimpgb5+fnw9/dXa/f390dubq7WbfLy8jTqAwICcPDgQdTW1jZZo+qzJeMCQEVFBRQKBTp16qTWvmnTJtjY2KB3796YN28erl271mgf1dXVqKysVHsQERFR+6WvS3F5eTnq6+tha2ur1m5ra4vS0lKt25SWlmqtr6urQ3l5Oezt7RutUfXZknGrqqowf/58PPfcc2oJccqUKXBxcYGdnR2OHj2K6OhoFBYWIjMzU2s/sbGxWo/cEBERUfukUzhSUSgUas+FEBptd6u/s705fTZ33NraWkyaNAkNDQ2Ij49Xey00NFT6d3d3d3Tr1g3e3t44dOgQPD09NfqKjo5GZGSk9LyyshKOjo5a10lERERtn07hyMbGBnp6ehpHa8rKyjSO6qjY2dlprdfX14e1tXWTNao+dRm3trYWQUFBKCoqwrfffnvX84qenp4wMDDAqVOntIYjpVIJpVLZZB9ERETUfuh0zZGhoSG8vLw0TkFlZmbCz89P6za+vr4a9bt374a3tzcMDAyarFH12dxxVcHo1KlTyMrKksJXU44dO4ba2lrY29vftZaIiIjaP51Pq0VGRiIkJATe3t7w9fXFmjVrUFxcjLCwMAC3T0NduHABGzZsAHD7zrRVq1YhMjISoaGhyMvLQ1JSknQXGgCEh4dj0KBBWLFiBcaNG4ft27cjKysLOTk5zR63rq4OEydOxKFDh7Bjxw7U19dLR5qsrKxgaGiI06dPY9OmTQgMDISNjQ2OHz+OuXPnom/fvhgwYEDL9yIRERG1GzqHo+DgYFy+fBnLli1DSUkJ3N3dkZGRAScnJwBASUmJ2nceubi4ICMjA3PmzMHq1avh4OCAlStXYsKECVKNn58fkpOTsWjRIixevBiurq5ISUmBj49Ps8c9f/480tPTAQAeHh5qc967dy+GDBkCQ0ND7NmzBx999BGuX78OR0dHjB49GjExMdDT09N1VxAREVE7pPP3HP3T8XuOiIiI2p779j1HRERERO0dwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkUyLwlF8fDxcXFxgZGQELy8v7N+/v8n67OxseHl5wcjICF27dkViYqJGTWpqKtzc3KBUKuHm5oa0tDSdxq2trUVUVBT69OkDU1NTODg4YOrUqbh48aJaH9XV1Zg1axZsbGxgamqKsWPH4vz58y3ZDURERNQO6RyOUlJSEBERgYULF6KgoAADBw7EqFGjUFxcrLW+qKgIgYGBGDhwIAoKCrBgwQLMnj0bqampUk1eXh6Cg4MREhKCwsJChISEICgoCAcOHGj2uDdv3sShQ4ewePFiHDp0CFu3bsWvv/6KsWPHqs0nIiICaWlpSE5ORk5ODq5fv44xY8agvr5e111BRERE7ZBCCCF02cDHxweenp5ISEiQ2nr16oXx48cjNjZWoz4qKgrp6ek4ceKE1BYWFobCwkLk5eUBAIKDg1FZWYmdO3dKNSNHjoSlpSW2bNnSonEB4KeffsITTzyBs2fPokuXLqioqMBDDz2EjRs3Ijg4GABw8eJFODo6IiMjAwEBAXddf2VlJSwsLFBRUQFzc/O71t8LS5cu1WiLiYn5W8YmIiJqD3T5/a3TkaOamhrk5+fD399frd3f3x+5ublat8nLy9OoDwgIwMGDB1FbW9tkjarPlowLABUVFVAoFOjUqRMAID8/H7W1tWr9ODg4wN3dvdF+qqurUVlZqfYgIiKi9kuncFReXo76+nrY2tqqtdva2qK0tFTrNqWlpVrr6+rqUF5e3mSNqs+WjFtVVYX58+fjueeekxJiaWkpDA0NYWlp2ex+YmNjYWFhIT0cHR211hEREVH70KILshUKhdpzIYRG293q72xvTp/NHbe2thaTJk1CQ0MD4uPjm1jJ3ecfHR2NiooK6XHu3Lm79kdERERtl07hyMbGBnp6ehpHWcrKyjSO6qjY2dlprdfX14e1tXWTNao+dRm3trYWQUFBKCoqQmZmptp5RTs7O9TU1ODq1avNnr9SqYS5ubnag4iIiNovncKRoaEhvLy8kJmZqdaemZkJPz8/rdv4+vpq1O/evRve3t4wMDBoskbVZ3PHVQWjU6dOISsrSwpfKl5eXjAwMFDrp6SkBEePHm10/kRERPTPoq/rBpGRkQgJCYG3tzd8fX2xZs0aFBcXIywsDMDt01AXLlzAhg0bANy+M23VqlWIjIxEaGgo8vLykJSUJN2FBgDh4eEYNGgQVqxYgXHjxmH79u3IyspCTk5Os8etq6vDxIkTcejQIezYsQP19fXSkSYrKysYGhrCwsICL7zwAubOnQtra2tYWVlh3rx56NOnD0aMGNHyvUhERETths7hKDg4GJcvX8ayZctQUlICd3d3ZGRkwMnJCcDtIzHy7zxycXFBRkYG5syZg9WrV8PBwQErV67EhAkTpBo/Pz8kJydj0aJFWLx4MVxdXZGSkgIfH59mj3v+/Hmkp6cDADw8PNTmvHfvXgwZMgQA8OGHH0JfXx9BQUG4desWhg8fjnXr1kFPT0/XXUFERETtkM7fc/RPx+85IiIianvu2/ccEREREbV3DEdEREREMgxHRERERDIMR0REREQyDEdEREREMgxHRERERDIMR0REREQyDEdEREREMgxHRERERDIMR0REREQyDEdEREREMgxHRERERDIMR0REREQyDEdEREREMgxHRERERDIMR0REREQyDEdEREREMgxHRERERDIMR0REREQyDEdEREREMgxHRERERDIMR0REREQy+g96AtRyS5cu1WiLiYl5ADMhIiJqP3jkiIiIiEiG4YiIiIhIhuGIiIiISIbhiIiIiEiG4YiIiIhIhuGIiIiISIbhiIiIiEiG4YiIiIhIhuGIiIiISIbhiIiIiEiG4YiIiIhIhuGIiIiISIbhiIiIiEiG4YiIiIhIhuGIiIiISIbhiIiIiEiG4YiIiIhIpkXhKD4+Hi4uLjAyMoKXlxf279/fZH12dja8vLxgZGSErl27IjExUaMmNTUVbm5uUCqVcHNzQ1pams7jbt26FQEBAbCxsYFCocDhw4c1+hgyZAgUCoXaY9KkSbrtACIiImq3dA5HKSkpiIiIwMKFC1FQUICBAwdi1KhRKC4u1lpfVFSEwMBADBw4EAUFBViwYAFmz56N1NRUqSYvLw/BwcEICQlBYWEhQkJCEBQUhAMHDug07o0bNzBgwAAsX768yTWEhoaipKREenzyySe67gYiIiJqpxRCCKHLBj4+PvD09ERCQoLU1qtXL4wfPx6xsbEa9VFRUUhPT8eJEyektrCwMBQWFiIvLw8AEBwcjMrKSuzcuVOqGTlyJCwtLbFlyxadxz1z5gxcXFxQUFAADw8PtdeGDBkCDw8PxMXF6bJsSWVlJSwsLFBRUQFzc/MW9aGrpUuXarTFxMQ02k5ERETqdPn9rdORo5qaGuTn58Pf31+t3d/fH7m5uVq3ycvL06gPCAjAwYMHUVtb22SNqs+WjNuUTZs2wcbGBr1798a8efNw7dq1Rmurq6tRWVmp9iAiIqL2S1+X4vLyctTX18PW1lat3dbWFqWlpVq3KS0t1VpfV1eH8vJy2NvbN1qj6rMl4zZmypQpcHFxgZ2dHY4ePYro6GgUFhYiMzNTa31sbKzWIzRERETUPukUjlQUCoXacyGERtvd6u9sb06fuo6rTWhoqPTv7u7u6NatG7y9vXHo0CF4enpq1EdHRyMyMlJ6XllZCUdHR53GJCIiorZDp9NqNjY20NPT0zhaU1ZWpnFUR8XOzk5rvb6+PqytrZusUfXZknGby9PTEwYGBjh16pTW15VKJczNzdUeRERE1H7pFI4MDQ3h5eWlcQoqMzMTfn5+Wrfx9fXVqN+9eze8vb1hYGDQZI2qz5aM21zHjh1DbW0t7O3t/1I/RERE1D7ofFotMjISISEh8Pb2hq+vL9asWYPi4mKEhYUBuH0a6sKFC9iwYQOA23emrVq1CpGRkQgNDUVeXh6SkpKku9AAIDw8HIMGDcKKFSswbtw4bN++HVlZWcjJyWn2uABw5coVFBcX4+LFiwCAkydPArh9ZMrOzg6nT5/Gpk2bEBgYCBsbGxw/fhxz585F3759MWDAgBbsPiIiImpvdA5HwcHBuHz5MpYtW4aSkhK4u7sjIyMDTk5OAICSkhK17x5ycXFBRkYG5syZg9WrV8PBwQErV67EhAkTpBo/Pz8kJydj0aJFWLx4MVxdXZGSkgIfH59mjwsA6enp+Pe//y09V325Y0xMDJYsWQJDQ0Ps2bMHH330Ea5fvw5HR0eMHj0aMTEx0NPT03VXEBERUTuk8/cc/dPxe46IiIjanvv2PUdERERE7R3DEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRDMMRERERkQzDEREREZEMwxERERGRTIvCUXx8PFxcXGBkZAQvLy/s37+/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yeooNjYW/fr1Q8eOHdG5c2eMHz8eJ0+eVKtpy+tLSEjAY489Jn0Zm6+vL3bu3Cm93pbXdqfY2FgoFApERERIbW15fUuWLIFCoVB7qP6CANC216Zy4cIFPP/887C2toaJiQk8PDyQn58vvd6W1+js7Kzx/ikUCrzyyisA2vbaAKCurg6LFi2Ci4sLjI2N0bVrVyxbtgwNDQ1STatY44O6TY60U33Z5aeffiqOHz8uwsPDhampqTh79uyDnprOMjIyxMKFC0VqaqoAINLS0tReX758uejYsaNITU0VR44cEcHBwRpf2tlaBQQEiLVr14qjR4+Kw4cPi9GjR4suXbqI69evSzVteX3p6enif//7nzh58qQ4efKkWLBggTAwMBBHjx4VQrTttcn9+OOPwtnZWTz22GMiPDxcam/L64uJiRG9e/cWJSUl0qOsrEx6vS2vTQghrly5IpycnMT06dPFgQMHRFFRkcjKyhK//fabVNOW11hWVqb23mVmZgoAYu/evUKItr02IW7/TVRra2uxY8cOUVRUJL788kthZmYm4uLipJrWsEaGo1bmiSeeEGFhYWptPXv2FPPnz39AM7o37gxHDQ0Nws7OTixfvlxqq6qqEhYWFiIxMfEBzPCvKSsrEwCkLyZtb+sTQghLS0vx3//+t92s7dq1a6Jbt24iMzNTDB48WApHbX19MTEx4vHHH9f6WltfmxBCREVFiX/961+Nvt4e1igXHh4uXF1dRUNDQ7tY2+jRo8WMGTPU2p555hnx/PPPCyFaz/vH02qtSE1NDfLz8+Hv76/W7u/vj9zc3Ac0q/ujqKgIpaWlamtVKpUYPHhwm1xrRUUFAMDKygpA+1pffX09kpOTcePGDfj6+rabtb3yyisYPXo0RowYodbeHtZ36tQpODg4wMXFBZMmTcLvv/8OoH2sLT09Hd7e3nj22WfRuXNn9O3bF59++qn0entYo0pNTQ0+//xzzJgxAwqFol2s7V//+hf27NmDX3/9FQBQWFiInJwcBAYGAmg9759Of3iW7q/y8nLU19fD1tZWrd3W1halpaUPaFb3h2o92tZ69uzZBzGlFhNCIDIyEv/617/g7u4OoH2s78iRI/D19UVVVRXMzMyQlpYGNzc36T9QbXltycnJOHToEH766SeN19r6e+fj44MNGzage/fuuHTpEt566y34+fnh2LFj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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "# and plot it\n", "from matplotlib import pyplot as plt\n", @@ -803,23 +149,12 @@ }, { "cell_type": "code", - "execution_count": 6, + "execution_count": null, "id": "47dbd599-86f1-4693-88dc-9c8fd457168b", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ - "# Calculate windowed genetic diversity\n", + "# Calculate and plot genetic diversity in windows along the genome\n", "genome_windows = list(range(0, int(ts.sequence_length+1), 20_000)) # or `np.linspace(0, ts.sequence_length, 51)`\n", "windowed_diversity = ts.diversity(windows=genome_windows)\n", "plt.stairs(windowed_diversity, genome_windows)\n", @@ -828,23 +163,80 @@ "plt.title(\"Diversity along the genome\");\n" ] }, + { + "cell_type": "markdown", + "id": "bc775623-ab88-4cb0-b01e-f1cf440e2fbe", + "metadata": {}, + "source": [ + "## IDs and underlying data" + ] + }, + { + "cell_type": "markdown", + "id": "cf85d30e-78ef-47a9-b311-6e119ca70c31", + "metadata": {}, + "source": [ + "At its heart, a tree sequence is just a collection of tables. For example, genomes are represented by **nodes** in the *nodes table*. Each is referred to by an ID, which is simply its row number in the table. Note that all IDs start with 0, not 1. Here, for instance is the first node (ID: 0) in the nodes table:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "580fb9e1-e87b-45e4-9b32-dc4133579c4f", + "metadata": {}, + "outputs": [], + "source": [ + "ts.node(0)" + ] + }, + { + "cell_type": "markdown", + "id": "3611b3ae-0f14-4802-a4e4-97565fd86693", + "metadata": {}, + "source": [ + "
Note: The fact that the flag is an odd number indicates that node 0 is a sample node. Nodes that are not samples usually represent ancestral genomes.
\n", + "\n", + "Here's another table (the _populations_ table, usually much smaller than the nodes table). You can see that simulation defines 7 different populations, with IDs 0 to 6. Above, node 0 was shown as belonging to population 0 (i.e. the population named \"A\" below)." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "37d9d7de-bfd3-49d7-8f1d-363622da2405", + "metadata": {}, + "outputs": [], + "source": [ + "ts.tables.populations" + ] + }, + { + "cell_type": "markdown", + "id": "331f0ada-7af9-4802-aca7-23631ee386db", + "metadata": {}, + "source": [ + "
Note: It is not necessary to define or use populations: they are a tskit convenience for grouping multiple nodes together. In other words, the populations table can be left empty, in which case each node should refererence a \"population\" with ID tskit.NULL (-1). Similarly although sample nodes are commonly paired into a diploid individuals, this is not a strict requirement for a valid tree sequence.
" + ] + }, + { + "cell_type": "markdown", + "id": "52b473a2-656c-4c4c-a826-d5684f1fbf41", + "metadata": {}, + "source": [ + "## More complex analysis \n", + "\n", + "_Tskit_ is designed to allow users to write their own analysis tools, but also has several sophisticated built-in analysis methods.\n", + "\n", + "### Principle components analysis\n", + "\n", + "Here is an example of efficient principle components analysis (PCA). Each point is one of the 80 genomes, but the _tskit_ implementation scales to millions of genomes. Here we using `mode=\"branch\"`, the default for PCA analysis, which means that we don't even need mutations (realised genetic variation) to look at genetic distances (see [this tutorial](https://tskit.dev/tutorials/no_mutations.html))." + ] + }, { "cell_type": "code", - "execution_count": 7, + "execution_count": null, "id": "981b617f-8de5-4766-81ac-cac0f22a371c", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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XXpPIiIiki6vBkPR0dGIjo622S4tLQ3V1dUoKChAamoqAODw4cOorq7GoEGD3N1NIiIi8mM+kTPUq1cvZGRkYPbs2Th06BAOHTqE2bNnY/z48SY7yXr27IlPP/3U+PPly5dRXFyMkpISAMCpU6dQXFzs8jwjIiIi8l0+EQwBwPvvv4/evXsjPT0d6enpuP322/Huu++atDl16hSqq6uNP2/btg39+vXDuHHjAABTp05Fv3798Oabb3q070RERCRdgiiKorc7IWU1NTVQKBSorq5GRESEt7tDREREdnDk89snii4SERG5nU4LnD0A/FoBtFMCCYMAmdzbvSIPYDBERERUsg3IXwzUnP/tWkQckPEikDTRe/0ij/CZnCEiIiK3KNkGfDzTNBACgBq1/nrJNu/0izyGwRAREQUunVY/IwRL6bPXr+Vn6dvZe7+y/cDxT/S/2vs88ioukxERkTR5Iofn7AHzGSETIlBzTt8ucWjL9+JSm89iMERERNLjqcDiV/PTDZxqZ1hqaz7DZFhqe+AdBkQSxmUyIiKSFk/m8LSz80inltq5eqmNPI7BEBERSYfNwEJ0bWCRMEg/4wRrh34LQMRN+nbWOLLURpLEYIiIiKTDZmAB1wYWMrl+6Q2AeUB0/eeM7JZzlVy11EZew2CIiIik46rate3skTRRn9MTEWt6PSLOvlwfVyy1kVcxgZqIiKSj9oJr29kraSLQc5xzu9cMS201alhe3hP0j7e01EZexWCIiIiko20n17ZzhExue/u8tedlvHh9N5kA04DIzqU28ioukxERkXS0j7XdxpF2ntLapTbyKs4MERGRdBiXnFpIora1u8tbWrPURl7FYIiIiKTDZMnJSv6NlJecnF1qI6/iMhkREUmLcckpzvR6xE1cciK34MwQERFJD5ecyIMYDBERkTRxyYk8hMtkREREFNAYDBEREVFAYzBEREREAY3BEBEREQU0BkNEREQU0BgMERERUUBjMEREREQBjcEQERERBTQGQ0RERBTQWIGaiIjIm3RaHjviZQyGiIiIvKVkG5C/GKg5/9u1iDgg40UeSOtBXCYjIiLyhpJtwMczTQMhAKhR66+XbPN8n5quAQffAHYs0v/adM3zffACzgwRERF5eqlKp9XPCEG08KAIQADys4Ce4zy3ZLbrWeDg3wBRd8O1PwFpTwLpf/FMH7yEwRAREQU2byxVnT1gPiNkQgRqzunbJQ51Tx9utOtZ4MBrFrqh++26HwdEXCYjIqLA5a2lql8rXNuuNZqu6WeEWuLnS2YMhoiIKDDZXKqCfqlKp3X9a7dTurZdaxTmmC6NWSJq9e38FIMhIiIKTI4sVd1IpwXK9gPHP9H/6kywlDBIvxQHwUoDAYi4Sd/O3arOuLadD2LOEBERBSZnlqpclV8kk+uf8/FM6AOiG2enrgdIGdktJ0+7Kum7Y1fXtvNBnBkiIqLA5OhSlavzi5ImAg+8A0TEml6PiNNfbym4KtkGrE0G8sYDWx7V/7o22bkcpztmA4KNcECQ69v5Kc4MERFRYDIsVdWoYTlvSNA/njDIfVvhkybqn+PIDI8hKGveF0NQZiuQai4oRL993tJuMoO03+vb+SnODBERUWAyLFUBMM/dabZU5Wx+kb39SBwK9J6s/9XW0pg7kr7T/wIMmms+QyTI9df9eFs9wJkhIiIKZIalKot5QNm/zbBIZSu8O+sTpf8F+N2z+l1jVWf0OUJ3zPbrGSEDBkNERBTY7FmqkspWeHcHZUEh+iWxAMNgiIiIpM0TR2UYlqqscSS/yJ2kEpT5GQZDREQkXVI51d0VW+FdQSpBmZ9hAjUREUmT1E51b81WeMA1xRodSfomuwmiKFoKLem6mpoaKBQKVFdXIyIiwtvdISIKDDqtvm6O1WTh6zMg8497/oPfmWU7V89wWbzfTaZJ3wHOkc9vBkM2MBgiIvKCsv36QoK2PPSFZ051bw1rdYEMMzmO1gUy8EQulQ9z5PObOUNERCQ9UtnK3lruKtYI2E76JrsxZ4iIiKTHX3ZNubNYI7kMZ4aIiEh6/GXXlL0zV2Vfc7nLixgMERGR9EhlK3tr2Ttz9c1Lv33vjdIBAY7LZEREJE2t3couBYYZLrNt8C3wVumAAMbdZDZwNxkRkZf5+q4p424ywPKSnyVeLB3gJxz5/ObMEBERSZsjp7pLkbUZrhYxsdqTmDNERETkbs0Pg638L7D/JdvPk3rpgNaQ0IwfgyEiIiJPuLEuUNl++4IhqZcOcJZUzpy7jstkREREnmYzsVrQH68h9dIBzpDamXNgMEREROR5gXrgqs2K3NBX5HbmENtWYDBERETkDf5QOsBREq3IzZwhIiIib2meWO2LpQMcIdEz5xgMERGR/5DQDiW7BdKBqxI9c47BEBER+QeJ7VAiCyR65hxzhoiIyPdJcIcSWSDRxHEGQ0RE5NskukOJrJBg4rjPBENVVVXIzMyEQqGAQqFAZmYmrly5YrV9Y2MjFi9ejN69e6Nt27aIi4vDzJkzcf58S1nsRETkcyS6Q4lakDQRmH8CeOgLYFKu/tf5x722nOkzwdC0adNQXFyM/Px85Ofno7i4GJmZmVbb19XVoaioCM8++yyKioqwdetWnD59GhMnct2YiMivSHSHEtkgoTPnfCKB+uTJk8jPz8ehQ4cwcOBAAEBOTg7S0tJw6tQp9OjRw+w5CoUCu3fvNrn2+uuvIzU1FeXl5ejSpYtH+k5ERG4m0R1K5Dt8Ymbo4MGDUCgUxkAIAO68804oFAocOGD/tGd1dTUEQUCHDh2stmloaEBNTY3JFxERSVggH21BLuETwZBGo0FMTIzZ9ZiYGGg0GrvuUV9fj6ysLEybNg0RERFW261atcqYl6RQKBAfH+90v4mIyAMkukOJfIdXg6Hly5dDEIQWv44cOQIAEATziF8URYvXm2tsbMTUqVOh0+mwbt26FtsuWbIE1dXVxq+ff/7ZucEREZHnSHCHEvkOr+YMPfnkk5g6dWqLbbp27Yr//Oc/qKgwT3y7cOEClMqW14AbGxvxwAMPoKysDF999VWLs0IAEBoaitDQUNudJyIiaQm0oy3IZbwaDEVHRyM6Otpmu7S0NFRXV6OgoACpqakAgMOHD6O6uhqDBllfAzYEQj/88AP+9a9/ISoqymV9JyIiCQqkoy3IZXwiZ6hXr17IyMjA7NmzcejQIRw6dAizZ8/G+PHjTXaS9ezZE59++ikAoKmpCZMnT8aRI0fw/vvvQ6vVQqPRQKPR4Nq1a94aChEREUmMTwRDAPD++++jd+/eSE9PR3p6Om6//Xa8++67Jm1OnTqF6upqAMAvv/yCbdu24ZdffkHfvn0RGxtr/HJkBxoRERH5N0EURUv1y+m6mpoaKBQKVFdX28w3IiIiImlw5PPbZ2aGiIiIiNyBwRAREREFNAZDREREFNAYDBEREVFAYzBEREREAY3BEBEREQU0r1agJiIikhSdlsd5BCAGQ0RERABQsg3IXwzUnP/tWkQckPEiD3r1c1wmIyIiKtkGfDzTNBACgBq1/nrJNu/0izyCwRAREQU2nVY/IwRLBzJcv5afpW9HfonBEBERBbazB8xnhEyIQM05fTvySwyGiIgosP1a4dp25HMYDBERUWBrp3RtO/I53E1GRESBLWGQftdYjRqW84YE/eMJg9zfF27t9woGQ0REFNhkcv32+Y9nAhBgGhAJ+l8yst0flHBrv9dwmYyIiChpIvDAO0BErOn1iDj9dXcHI9za71WcGSIiIgL0AU/PcZ5fprK5tV/Qb+3vOY5LZm7CYIiIiMhAJgcSh3r2NR3Z2u/pvgUILpMRERF5E7f2ex2DISIiIm/i1n6vYzBERETkTYat/Yada2YEIOImz2ztD1AMhoiIiLzJsLUfgHlA5MGt/QGMwRAREZG3eXtrf4DjbjIiIiIp8NbWfmIwREREJBne2NpPXCYjIiKiwMZgiIiIiAIagyEiIiIKaAyGiIiIKKAxGCIiIqKAxmCIiIiIAhqDISIiIgpoDIaIiIgooDEYIiIiooDGCtQ2iKIIAKipqfFyT4iIiMhehs9tw+d4SxgM2XD16lUAQHx8vJd7QkRERI66evUqFApFi20E0Z6QKYDpdDqcP38e7du3hyAITt2jpqYG8fHx+PnnnxEREeHiHkpfII8/kMcOBPb4A3nsAMcfyOOXythFUcTVq1cRFxcHmazlrCDODNkgk8nQuXNnl9wrIiIi4P6nuFEgjz+Qxw4E9vgDeewAxx/I45fC2G3NCBkwgZqIiIgCGoMhIiIiCmgMhjwgNDQUy5YtQ2hoqLe74hWBPP5AHjsQ2OMP5LEDHH8gj98Xx84EaiIiIgponBkiIiKigMZgiIiIiAIagyEiIiIKaAyGiIiIKKAxGHKBqqoqZGZmQqFQQKFQIDMzE1euXLHavrGxEYsXL0bv3r3Rtm1bxMXFYebMmTh//rxJu4aGBvzhD39AdHQ02rZti4kTJ+KXX35x82gc5+j4AWDr1q0YM2YMoqOjIQgCiouLzdoMHz4cgiCYfE2dOtU9g2gFd43fF95/Z8YuiiKWL1+OuLg4tGnTBsOHD8f3339v0kaq7/26deuQmJiIsLAwpKSkYP/+/S22//rrr5GSkoKwsDB069YNb775plmbLVu2ICkpCaGhoUhKSsKnn37qru63iqvH/vbbb5u9x4IgoL6+3p3DcJoj41er1Zg2bRp69OgBmUyG+fPnW2znK+894PrxS+79F6nVMjIyxOTkZPHAgQPigQMHxOTkZHH8+PFW21+5ckUcNWqU+NFHH4n//e9/xYMHD4oDBw4UU1JSTNo9/vjj4k033STu3r1bLCoqEkeMGCH26dNHbGpqcveQHOLo+EVRFN955x1xxYoVYk5OjghAPHbsmFmbYcOGibNnzxbVarXx68qVK24ahfPcNX5feP+dGXt2drbYvn17ccuWLeLx48fFKVOmiLGxsWJNTY2xjRTf+82bN4vBwcFiTk6OWFJSIs6bN09s27atePbsWYvtf/rpJzE8PFycN2+eWFJSIubk5IjBwcHiJ598Ymxz4MABUS6Xiy+88IJ48uRJ8YUXXhCDgoLEQ4cOeWpYdnHH2Ddt2iRGRESYvMdqtdpTQ3KIo+MvKysT586dK+bl5Yl9+/YV582bZ9bGV957UXTP+KX2/jMYaqWSkhIRgMkf4IMHD4oAxP/+979236egoEAEYPzDdeXKFTE4OFjcvHmzsc25c+dEmUwm5ufnu24ArdTa8ZeVlbUYDFn6n0hK3DV+X3j/nRm7TqcTVSqVmJ2dbbxWX18vKhQK8c033zRek+J7n5qaKj7++OMm13r27ClmZWVZbP/000+LPXv2NLn2f//3f+Kdd95p/PmBBx4QMzIyTNqMGTNGnDp1qot67RruGPumTZtEhULh8r66g6Pjv5G1P8u+8t6LonvGL7X3n8tkrXTw4EEoFAoMHDjQeO3OO++EQqHAgQMH7L5PdXU1BEFAhw4dAABHjx5FY2Mj0tPTjW3i4uKQnJzs0H3dzVXjt+b9999HdHQ0brvtNixcuBBXr15t9T1dyV3j94X335mxl5WVQaPRmIwrNDQUw4YNM3uOlN77a9eu4ejRoyb9BoD09HSrYz148KBZ+zFjxuDIkSNobGxssY1U3mPAfWMHgF9//RUJCQno3Lkzxo8fj2PHjrl+AK3kzPjt4QvvPeC+8QPSev95UGsraTQaxMTEmF2PiYmBRqOx6x719fXIysrCtGnTjIfaaTQahISEoGPHjiZtlUql3ff1BFeM35rp06cjMTERKpUKJ06cwJIlS/Ddd99h9+7drbqvK7lr/L7w/jszdsN1pVJpcl2pVOLs2bPGn6X23l+8eBFardZiv1saq6X2TU1NuHjxImJjY622kcp7DLhv7D179sTbb7+N3r17o6amBq+++ioGDx6M7777DrfccovbxuMoZ8ZvD1947wH3jV9q7z9nhqxYvny5xeSuG7+OHDkCABAEwez5oihavN5cY2Mjpk6dCp1Oh3Xr1tlsb+99W8tT42/J7NmzMWrUKCQnJ2Pq1Kn45JNPsGfPHhQVFbXqvvaQwvgt8cT774mxN3+8+XO8+d63xFa/7Wnf/Lqj9/QWV4/9zjvvxIwZM9CnTx8MHToUH3/8MW699Va8/vrrLu65a7jjffKV9x5wfV+l9v5zZsiKJ5980ubula5du+I///kPKioqzB67cOGCWSTdXGNjIx544AGUlZXhq6++Ms4KAYBKpcK1a9dQVVVlMjtQWVmJQYMGOTgax3li/I7q378/goOD8cMPP6B///4uvXdz3h6/N99/d45dpVIB0P+rODY21ni9srKyxd8vT773lkRHR0Mul5v9S7ilfqtUKovtg4KCEBUV1WIbV/+/0xruGntzMpkMd9xxB3744QfXdNxFnBm/PXzhvQfcN/7mvP3+c2bIiujoaPTs2bPFr7CwMKSlpaG6uhoFBQXG5x4+fBjV1dUtfmgZAqEffvgBe/bsMfsLIiUlBcHBwSbLAmq1GidOnPBIMOTu8Tvj+++/R2Njo8mHqLt4e/zefP/dOXbD0teN47p27Rq+/vrrFsflyffekpCQEKSkpJgt0+3evdtqv9PS0sza79q1CwMGDEBwcHCLbTzx/7i93DX25kRRRHFxsdfeY2ucGb89fOG9B9w3/ua8/v57PGXbD2VkZIi33367ePDgQfHgwYNi7969zbYX9+jRQ9y6dasoiqLY2NgoTpw4UezcubNYXFxssq2woaHB+JzHH39c7Ny5s7hnzx6xqKhI/N3vfie5rdWi6Pj4RVEUL126JB47dkzcvn27CEDcvHmzeOzYMePWyh9//FFcsWKFWFhYKJaVlYnbt28Xe/bsKfbr1y8gxi+KvvH+OzP27OxsUaFQiFu3bhWPHz8uPvjggyZb66X63hu2F+fm5oolJSXi/PnzxbZt24pnzpwRRVEUs7KyxMzMTGN7w/byp556SiwpKRFzc3PNtpf/+9//FuVyuZidnS2ePHlSzM7OluT2aneMffny5WJ+fr5YWloqHjt2THz44YfFoKAg8fDhwx4fny2Ojl8URfHYsWPisWPHxJSUFHHatGnisWPHxO+//974uK+896LonvFL7f1nMOQCly5dEqdPny62b99ebN++vTh9+nSxqqrKpA0AcdOmTaIo/rad2tLXv/71L+Nz/ve//4lPPvmkGBkZKbZp00YcP368WF5e7rmB2cnR8YuiflulpfEvW7ZMFEVRLC8vF++66y4xMjJSDAkJEW+++WZx7ty54qVLlzw3MDu5Y/yi6BvvvzNj1+l04rJly0SVSiWGhoaKd911l3j8+HHj41J+79944w0xISFBDAkJEfv37y9+/fXXxsceeughcdiwYSbt9+3bJ/br108MCQkRu3btKq5fv97snv/4xz/EHj16iMHBwWLPnj3FLVu2uHsYTnH12OfPny926dJFDAkJETt16iSmp6eLBw4c8MRQnOLo+C39/52QkGDSxlfee1F0/fil9v4Long9q42IiIgoADFniIiIiAIagyEiIiIKaAyGiIiIKKAxGCIiIqKAxmCIiIiIAhqDISIiIgpoDIaIiIgooDEYIiIiooDGYIiIiIgCGoMhIvI5s2bNgiAIEAQBwcHB6NatGxYuXIja2lqTdlu2bMHw4cOhUCjQrl073H777Vi5ciUuX75s0u5///sfOnbsiMjISPzvf/+z+frff/89Jk2ahK5du0IQBKxdu9aVwyMiD2MwREQ+KSMjA2q1Gj/99BOee+45rFu3DgsXLjQ+vnTpUkyZMgV33HEHvvzyS5w4cQJr1qzBd999h3fffdfkXlu2bEFycjKSkpKwdetWm69dV1eHbt26ITs7GyqVyuVjIyLP4tlkRORzZs2ahStXruCzzz4zXps9eza++OILqNVqFBQUYODAgVi7di3mzZtn9vwrV66gQ4cOxp9HjBiBqVOnQhRFfPzxx/jqq6/s7kvXrl0xf/58zJ8/vxUjIiJvCvJ2B4iIXKFNmzZobGwEALz//vto164dnnjiCYttbwyESktLcfDgQWzduhWiKGL+/Pn46aef0K1bN090m4gkgMtkROTzCgoK8MEHH2DkyJEAgB9++AHdunVDcHCwzedu3LgRY8eONeYMZWRkYOPGje7uMhFJCIMhIvJJX3zxBdq1a4ewsDCkpaXhrrvuwuuvvw4AEEURgiDYvIdWq0VeXh5mzJhhvDZjxgzk5eVBq9W6re9EJC1cJiMinzRixAisX78ewcHBiIuLM5kFuvXWW/Htt9+isbGxxdmhnTt34ty5c5gyZYrJda1Wi127dmHs2LFu6z8RSQdnhojIJ7Vt2xbdu3dHQkKCWcAzbdo0/Prrr1i3bp3F5165cgUAkJubi6lTp6K4uNjka/r06cjNzXX3EIhIIjgzRER+Z+DAgXj66afxxz/+EefOncN9992HuLg4/Pjjj3jzzTcxZMgQTJs2DZ9//jm2bduG5ORkk+c/9NBDGDduHC5cuIBOnTqZ3f/atWsoKSkxfn/u3DkUFxejXbt26N69u0fGSESuw631RORzLG2tt+Tjjz/GG2+8gWPHjkGn0+Hmm2/G5MmT8Yc//AG5ubl47rnnUFlZaTaz1NTUBKVSiaVLl2LBggVm9z1z5gwSExPNrg8bNgz79u1rzdCIyAsYDBEREVFAY84QERERBTQGQ0RERBTQGAwRERFRQGMwRERERAGNwRAREREFNAZDREREFNAYDBEREVFAYzBEREREAY3BEBEREQU0BkNEREQU0BgMERERUUD7/0BhPJBBm35qAAAAAElFTkSuQmCC", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "# Calculate the first 2 principle components for every haploid genome\n", "# For a more conventional PCA of diploid individuals, use the `individuals` argument)\n", @@ -856,8 +248,8 @@ " use = ts.samples(population=pop.id) # `use = ts.individual_populations == pop.id` if using individuals\n", " if use.any():\n", " plt.scatter(*pca_output.factors[use, :].T, label=f'Population {pop.metadata[\"name\"]}')\n", - "plt.xlabel(\"PCA 1\")\n", - "plt.ylabel(\"PCA 2\")\n", + "plt.xlabel(\"PC 1\")\n", + "plt.ylabel(\"PC 2\")\n", "plt.legend();" ] }, @@ -866,28 +258,19 @@ "id": "e431618b-68be-4142-8af5-c0cc5b5c6593", "metadata": {}, "source": [ - "_Tskit_ has built-in tools for calculating coalescence and cross-coalescence rates. Below you can see that there is no coalescence between populations A and B more recently than 250 generations ago, suggesting populations A and B split around this time, whereas C and D probably split more recently, about 200 generations ago. This could partially explain why points from C and D partially overlapping on the PCA plot above.\n", + "### Coalescence rates\n", + "\n", + "Built-in tools exist to calculate coalescence and cross-coalescence rates. Below you can see that there is no coalescence between populations A and B more recently than 250 generations ago, suggesting populations A and B split around this time, whereas C and D probably split more recently, about 200 generations ago. This could partially explain why points from C and D partially overlapping on the PCA plot above.\n", "\n", - "Note that the \"inverse instantaneous coalescence rate\" (IICR) is sometimes known as the effective population size or $N_e$, which is often used in population genetics" + "Note that the \"inverse instantaneous coalescence rate\" (IICR) is sometimes known as the effective population size or $N_e$, which is often used in population genetics." ] }, { "cell_type": "code", - "execution_count": 8, + "execution_count": null, "id": "d1ee91c9-3eba-41dc-9a74-03b202405c86", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAAAloAAAG1CAYAAAAhoVogAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMiwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8hTgPZAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB0sUlEQVR4nO3deVxN+f8H8NdtX7TTIq1KU5Qly5AkkjK2MWgwlrGNkbFkGcbYl4w1a8YyDLOUdRhjyxpZJqVhZBeFyBJpX+75/dHP/U4qOrlHyuv5eHhwP+fcz+d9y9XL53zu58gEQRBAREREREqnUtEFEBEREVVVDFpEREREEmHQIiIiIpIIgxYRERGRRBi0iIiIiCTCoEVEREQkEQYtIiIiIokwaBERERFJRK2iC/iQyeVy3L9/H3p6epDJZBVdDhEREZWBIAh48eIFatasCRWV189ZMWhVoPv378PKyqqiyyAiIqJySEpKQq1atV57DoNWBdLT0wNQ+I3S19ev4GqIiIioLNLS0mBlZaX4Of46DFoV6OXlQn19fQYtIiKiSqYsy364GJ6IiIhIIgxaRERERBLhpcNKoKCgAHl5eRVdBlGlpa6uDlVV1Youg4g+QAxa7zFBEPDgwQM8e/asokshqvQMDQ1hbm7OrVSI6J1i0HqPvQxZpqam0NHR4Q8IonIQBAGZmZlISUkBAFhYWFRwRUT0IWHQek8VFBQoQpaJiUlFl0NUqWlrawMAUlJSYGpqysuIRPTOcDH8e+rlmiwdHZ0KroSoanj5XuJ6RyJ6lxi03nO8XEikHHwvEVFFYNAiIiIikgiDFhEREZFEGLSoQhw7dgwymUyxdcXGjRthaGhYoTW9DzUQEVHVwqBFkjl16hRUVVXh5+dX0aUQERFVCG7vQJL56aef8M0332DdunVITEyEtbV1RZdEVG7J6clIzUl9J2MZaRrBohr3+yKqChi0SBIZGRnYsmULoqOj8eDBA2zcuBFTp059qz7v3r2LcePG4eDBg8jJyYGzszNWrlyJZs2aAQBCQ0OxcOFCJCUlwc7ODt9//z369u2reP7ixYuxYcMG3Lp1C8bGxujUqRPmz5+PatWqlTrmn3/+ienTp+PSpUuoWbMm+vfvj8mTJ0NNrfCtM336dPz00094+PAhTExM0L17dyxbtgwAkJOTgylTpuD3339HSkoKrK2tMXHiRAwaNAgAEB8fj3HjxiEyMhK6urrw9fXFkiVLUL16dQBA69at4ebmBi0tLaxbtw4aGhoYNmwYpk+frqjv2bNnmDBhAnbt2oXnz5/DwcEB8+bNQ8eOHQEUzipOnDgR0dHRqF69Oj799FMEBwdDV1cXALBq1SosWbIESUlJMDAwgKenJ7Zt2/ZW36eqKDk9GV12dUFWftY7GU9bTRu7uuxi2CKqAhi0Kpms3ALcfJT+zsetXaMatDXKvsljeHg4nJyc4OTkhC+++ALffPMNpkyZUu6P2Kenp8PLywuWlpbYvXs3zM3NERsbC7lcDgDYuXMnRo0ahZCQEPj4+GDPnj348ssvUatWLXh7ewMAVFRUsGzZMtja2iIhIQHDhw/HhAkTsGrVqhLHPHDgAL744gssW7YMnp6euHnzJoYOHQoAmDZtGrZt24YlS5YgLCwMdevWxYMHD/DPP/8ont+vXz+cPn0ay5YtQ/369ZGQkIDHjx8DAJKTk+Hl5YUhQ4Zg8eLFyMrKwrfffouePXviyJEjij5+/vlnBAUF4ezZszh9+jQGDBgADw8PtGvXDnK5HP7+/njx4gV++eUX1K5dG/Hx8YrNOC9evIj27dtj1qxZWL9+PR49eoQRI0ZgxIgR2LBhA86dO4eRI0di8+bNaNGiBZ4+fYoTJ06U6/tT1aXmpCIrPwvBnsGwN7CXdKxbz29h0olJSM1JZdAiqgIYtCqZm4/S0XH5yXc+7p5vWqKepUGZz1+/fj2++OILAICfnx/S09Nx+PBh+Pj4lGv83377DY8ePUJ0dDSMjY0BAA4ODorjCxcuxIABAzB8+HAAQFBQEM6cOYOFCxcqgtbo0aMV59vZ2WHWrFn4+uuvSw1ac+bMwcSJE9G/f38AgL29PWbNmoUJEyZg2rRpSExMhLm5OXx8fKCurg5ra2s0bdoUAHDt2jVs2bIFERERitdsb/+/H9ChoaFo1KgR5s6dq2j76aefYGVlhWvXrqFOnToAADc3N0ybNg0A4OjoiBUrVuDw4cNo164dDh06hL///huXL19WnP/fMRYsWIDevXsrXrejoyOWLVsGLy8vhIaGIjExEbq6uujYsSP09PRgY2ODhg0bivm2fHDsDezhYuJS0WUQUSXCoFXJ1K5RDXu+aVkh45bV1atX8ffff2PHjh0AADU1NQQEBOCnn34qd9CKi4tDw4YNFSHrVZcvX1bMNr3k4eGBpUuXKh4fPXoUc+fORXx8PNLS0pCfn4/s7GxkZGQoLqX9V0xMDKKjozFnzhxFW0FBAbKzs5GZmYkePXogJCQE9vb28PPzQ4cOHdCpUyeoqakhLi4Oqqqq8PLyKrHemJgYHD16tMTLljdv3iwStP7LwsJCcc++uLg41KpVS3FuSWPcuHEDv/76q6JNEATI5XIkJCSgXbt2sLGxUdTv5+eHTz/9lHcjICJSIgatSkZbQ1XUzFJFWL9+PfLz82FpaaloEwQB6urqSE1NhZGRkeg+X96r7nVevSwpCIKi7c6dO+jQoQOGDRuGWbNmwdjYGCdPnsSgQYNKvSWLXC7HjBkz0K1bt2LHtLS0YGVlhatXryIiIgKHDh3C8OHDsWDBAhw/fvyN9crlcnTq1Ak//PBDsWP/vemxurp6sdf48nJpWcb46quvMHLkyGLHrK2toaGhgdjYWBw7dgwHDx7E1KlTMX36dERHR3ObCyIiJWHQIqXKz8/Hpk2bsGjRIvj6+hY59tlnn+HXX3/FiBEjRPfr5uaGdevW4enTpyXOajk7O+PkyZPo16+fou3UqVNwdnYGAJw7dw75+flYtGgRVFQKdzXZsmXLa8ds1KgRrl69WuQS5au0tbXRuXNndO7cGYGBgfjoo49w8eJFuLq6Qi6X4/jx4yXO4jVq1Ajbt2+Hra2tYmG9WG5ubrh7926RS42vjnHp0qXX1q+mpgYfHx/4+Phg2rRpMDQ0xJEjR0oMlwTg0TUgJ1faMdJuS9s/Eb1TDFqkVHv27EFqaioGDRoEA4OiM2/du3fH+vXryxW0evXqhblz56Jr164IDg6GhYUFzp8/j5o1a6J58+YYP348evbsiUaNGqFt27b4888/sWPHDhw6dAgAULt2beTn52P58uXo1KkToqKisHr16teOOXXqVHTs2BFWVlbo0aMHVFRUcOHCBVy8eBGzZ8/Gxo0bUVBQgGbNmkFHRwebN2+GtrY2bGxsYGJigv79+2PgwIGKxfB37txBSkoKevbsicDAQKxduxa9evXC+PHjUb16ddy4cQNhYWFYu3atYkH763h5eaFVq1b47LPPsHjxYjg4OODKlSuQyWTw8/PDt99+i48//hiBgYEYMmQIdHV1cfnyZURERGD58uXYs2cPbt26hVatWsHIyAh79+6FXC6Hk5OT6O9PlffiYeHvOwYDuRLflFpDHbC0KByT68GIKj0GLVKq9evXw8fHp1jIAgpntObOnYvY2FjR/WpoaODgwYMYO3YsOnTogPz8fLi4uGDlypUAgK5du2Lp0qVYsGABRo4cCTs7O2zYsAGtW7cGADRo0ACLFy/GDz/8gEmTJqFVq1YIDg4uMgP2qvbt22PPnj2YOXMm5s+fD3V1dXz00UcYPHgwAMDQ0BDz5s1DUFAQCgoK4Orqij///BMmJiYAChe8f/fddxg+fDiePHkCa2trfPfddwCAmjVrIioqCt9++y3at2+PnJwc2NjYwM/PTzHjVhbbt2/HuHHj0KtXL2RkZCi2dwAKZ7yOHz+OyZMnw9PTE4IgoHbt2ggICFDUv2PHDkyfPh3Z2dlwdHTE77//jrp164r75nwIsp8X/t5mCmBd8ro7pUk8Dlxd978xiahSkwmCIFR0ER+qtLQ0GBgY4Pnz59DX1y9yLDs7GwkJCbCzs4OWllYFVUhUdbzNeyr+yh8IODsF4c1mweWjrtIUWAFjEVH5vO7n96vKdQue/Px8HDp0CD/++CNevHgBALh//z7S09/9/k5ERERE7yvRlw7v3LkDPz8/JCYmIicnB+3atYOenh7mz5+P7OzsN657ISIiIvpQiJ7RGjVqFBo3bozU1NQiHy//9NNPcfjwYaUWR0RERFSZiZ7ROnnyJKKioqChoVGk3cbGBvfu3VNaYURERESVnegZLblcjoKCgmLtd+/ehZ6enlKKIiIiIqoKRAetdu3aISQkRPFYJpMhPT0d06ZNQ4cOHZRZGxEREVGlJvrS4ZIlS+Dt7Q0XFxdkZ2ejd+/euH79OqpXr47ff/9dihqJiIiIKiXRQatmzZqIi4tDWFgYYmJiIJfLMWjQIPTp06dM96MjIiIi+lCIDlqRkZFo0aIFvvzyS3z55ZeK9vz8fERGRqJVq1ZKLZCIiIioshK9Rsvb2xtPnz4t1v78+XN4e3srpSgiEmfAgAHo2rVrRZdBRESvEB20BEGATCYr1v7kyRPo6uoqpSiqGk6dOgVVVVX4+fmVes6dO3egqamJtLQ0TJ8+HTKZTPHLwMAAnp6eOH78+DusmoiISHnKfOmwW7duAAo/ZThgwABoamoqjhUUFODChQto0aKF8iukSuunn37CN998g3Xr1iExMRHW1tbFztm1axdat26tuFdU3bp1cejQIQDA06dPsXDhQnTs2BF3794t8UbV5ZGXlwd1dXWl9EVERPQ6ZZ7RMjAwgIGBAQRBgJ6enuKxgYEBzM3NMXToUPzyyy9S1kqVSEZGBrZs2YKvv/4aHTt2xMaNG0s8b9euXejcubPisZqaGszNzWFubg4XFxfMmDED6enpuHbt2mvH++mnn1C3bl1oamrCwsICI0aMUByTyWRYvXo1unTpAl1dXcyePRsAEBoaitq1a0NDQwNOTk7YvHlzkT6nT58Oa2traGpqombNmhg5cqTi2KpVq+Do6AgtLS2YmZmhe/fur60vKioKXl5e0NHRgZGREdq3b4/U1FQAQE5ODkaOHAlTU1NoaWmhZcuWiI6OVjy3oKAAgwYNgp2dHbS1teHk5ISlS5e+djxBEDB//nzY29tDW1sb9evXx7Zt2xTHU1NT0adPH9SoUQPa2tpwdHTEhg0bFMfv3r2Lzz//HMbGxtDV1UXjxo1x9uxZxfE///wT7u7u0NLSgr29PWbMmIH8/PwiX/N169bh008/hY6ODhwdHbF79+4iNV66dAmffPIJ9PX1oaenB09PT9y8eVNxfMOGDXB2doaWlhY++ugjrFq1SnEsNzcXI0aMgIWFBbS0tGBra4vg4ODXfk2oYp2/n4A/L/8t+a9jN6/i33vP38mve8+yKvrLSpVAmWe0Xv4jbGtri3HjxvEyYUXJzQQevz50SKJ6HUBDp8ynh4eHw8nJCU5OTvjiiy/wzTffYMqUKUUuOz979gwnTpwoNYTl5ORg48aNMDQ0hJOTU6ljhYaGIigoCPPmzYO/vz+eP3+OqKioIudMmzYNwcHBWLJkCVRVVbFz506MGjUKISEh8PHxwZ49e/Dll1+iVq1a8Pb2xrZt27BkyRKEhYWhbt26ePDgAf755x8AwLlz5zBy5Ehs3rwZLVq0wNOnT3HixIlS64uLi0Pbtm0xcOBALFu2DGpqajh69Khi498JEyZg+/bt+Pnnn2FjY4P58+ejffv2uHHjBoyNjSGXy1GrVi1s2bIF1atXx6lTpzB06FBYWFigZ8+eJY75/fffY8eOHQgNDYWjoyMiIyPxxRdfoEaNGvDy8sKUKVMQHx+Pffv2oXr16rhx4waysgp/aKSnp8PLywuWlpbYvXs3zM3NERsbC7lcDgA4cOAAvvjiCyxbtkwRjoYOHar4Or80Y8YMzJ8/HwsWLMDy5cvRp08f3LlzB8bGxrh37x5atWqF1q1b48iRI9DX10dUVJQirK1duxbTpk3DihUr0LBhQ5w/fx5DhgyBrq4u+vfvj2XLlmH37t3YsmULrK2tkZSUhKSkpFK/B1Sxzt9PQN8Dn0Gmkif5WIJcHRk3x0LIN5R8LG11VRwa6wVLQ37inkon+lOH//2HlCrA42vAGq93P+7Q40DNBmU+ff369fjiiy8AAH5+fkhPT8fhw4fh4+OjOGfv3r1wdXWFlZWVou3ixYuoVq0aACAzMxN6enoIDw9XXFosyezZszF27FiMGjVK0dakSZMi5/Tu3RsDBw4s8njAgAEYPnw4ACAoKAhnzpzBwoUL4e3tjcTERJibm8PHxwfq6uqwtrZG06ZNAQCJiYnQ1dVFx44doaenBxsbGzRs2LDU+ubPn4/GjRsXmZGpW7cugMKZv9DQUGzcuBH+/v4ACkNGREQE1q9fj/Hjx0NdXR0zZsxQPNfOzg6nTp3Cli1bSgxaGRkZWLx4MY4cOYLmzZsDAOzt7XHy5En8+OOP8PLyQmJiIho2bIjGjRsDKPwP1Eu//fYbHj16hOjoaBgbGwMAHBwcFMfnzJmDiRMnon///oq+Z82ahQkTJhT592HAgAHo1asXAGDu3LlYvnw5/v77b/j5+WHlypUwMDBAWFiY4jJunTp1FM+dNWsWFi1apFiyYGdnh/j4ePz444/o378/EhMT4ejoiJYtW0Imk8HGxqbUrz9VvLvPH0GmkofuVhPQyKL0/zS9rXsZd7Dy0kws6+MIO33pxgGAGynpGB0eh9SMXAYtei3RQQsAtm3bhi1btiAxMRG5ublFjsXGxiqlMCpF9TqFoacixi2jq1ev4u+//8aOHTsAFF4ODAgIwE8//VQkaL162RAAnJycFJeYXrx4gfDwcPTo0QNHjx5VhIL/SklJwf3799G2bdvX1vTqcy9fvqyYhXnJw8NDcUmuR48eCAkJgb29Pfz8/NChQwd06tQJampqaNeuHWxsbBTH/Pz8FJfIShIXF4cePXqUeOzmzZvIy8uDh4eHok1dXR1NmzbF5cuXFW2rV6/GunXrcOfOHWRlZSE3NxcNGjQosc/4+HhkZ2ejXbt2Rdpzc3MVgfDrr7/GZ599htjYWPj6+qJr166KNZZxcXFo2LChImS9KiYmBtHR0ZgzZ46iraCgANnZ2cjMzFR8Hdzc3BTHdXV1oaenh5SUFMUYnp6eJa6Ve/ToEZKSkjBo0CAMGTJE0Z6fn69YpzdgwAC0a9cOTk5O8PPzQ8eOHeHr61tivfT+aGThhE7OTSXrP/5JNay8BNSW3YeLTOPNT3gLWirpqInHko5BVYPooLVs2TJMnjwZ/fv3x65du/Dll1/i5s2biI6ORmBgoBQ10n9p6IiaWaoI69evR35+PiwtLRVtgiBAXV0dqampMDIyQl5eHvbv349JkyYVea6GhkaR2ZOGDRvijz/+QEhISIlrAMu6SW5Jl7pf/fTsfz9Ra2VlhatXryIiIgKHDh3C8OHDsWDBAhw/fhx6enqIjY3FsWPHcPDgQUydOhXTp09HdHQ0DA0NRdUoCMIba9myZQvGjBmDRYsWoXnz5tDT08OCBQuKrJn6r5eX+P76668i3wMAig+x+Pv7486dO/jrr79w6NAhtG3bFoGBgVi4cOEbv6ZyuRwzZsxQzDb9l5aWluLPr4YomUymqO11Y7w8Z+3atWjWrFmRY6qqqgCARo0aISEhAfv27cOhQ4fQs2dP+Pj4FFmHRh+gFw8Lf98xGMiV9jKlA4BDmppISm8CQDkf1KGqSXTQWrVqFdasWYNevXrh559/xoQJE2Bvb4+pU6eWuL8WfVjy8/OxadMmLFq0qNgMw2effYZff/0VI0aMwNGjR2FoaFjqrMx/qaqqKtYPvUpPTw+2trY4fPiwqH3cnJ2dcfLkSfTr10/RdurUKTg7Oysea2tro3PnzujcuTMCAwPx0Ucf4eLFi2jUqBHU1NTg4+MDHx8fTJs2DYaGhjhy5EiJ4cPNzQ2HDx8ucvnvJQcHB2hoaODkyZPo3bs3gMJPRZ47dw6jR48GAJw4cQItWrRQXOYEUGTR+KtcXFygqamJxMREeHmVfpm5Ro0aGDBgAAYMGABPT0+MHz8eCxcuhJubG9atW4enT5+WOKvVqFEjXL16tUggFsvNzQ0///xziZ8ANTMzg6WlJW7duoU+ffqU2oe+vj4CAgIQEBCA7t27w8/Pr9Sa6QOR/bzw9zZTAGtpl1gkXY+D1dFRUM3mzz16PdFBKzExUXGJQVtbGy9evAAA9O3bFx9//DFWrFih3AqpUtmzZw9SU1MxaNCgYtsxdO/eHevXr8eIESOwe/fuYpcNgcKg9uDBAwD/u3QYHx+Pb7/9ttQxp0+fjmHDhsHU1BT+/v548eIFoqKi8M0335T6nPHjx6Nnz55o1KgR2rZtiz///BM7duxQbC2xceNGFBQUoFmzZtDR0cHmzZuhra0NGxsb7NmzB7du3UKrVq1gZGSEvXv3Qi6Xl7pgf9KkSXB1dcXw4cMxbNgwaGho4OjRo+jRoweqV6+Or7/+GuPHj4exsTGsra0xf/58ZGZmYtCgQQAKw9imTZtw4MAB2NnZYfPmzYiOjoadnV2J4+np6WHcuHEYM2YM5HI5WrZsibS0NJw6dQrVqlVD//79MXXqVLi7u6Nu3brIycnBnj17FCGzV69emDt3Lrp27Yrg4GBYWFjg/PnzqFmzJpo3b46pU6eiY8eOsLKyQo8ePaCiooILFy7g4sWLik90vsmIESOwfPlyfP7555g0aRIMDAxw5swZNG3aFE5OTpg+fTpGjhwJfX19+Pv7IycnB+fOnUNqaiqCgoKwZMkSWFhYoEGDBlBRUcHWrVthbm5e4owifYAMbSSf+c95lC5p/1SFCCLZ2dkJMTExgiAIQuPGjYXVq1cLgiAIBw4cEIyMjMR290F7/vy5AEB4/vx5sWNZWVlCfHy8kJWVVQGVlV/Hjh2FDh06lHgsJiZGACDExMQIVlZWQkRERJHj06ZNEwAofuno6Aiurq5CaGjoG8ddvXq14OTkJKirqwsWFhbCN998ozgGQNi5c2ex56xatUqwt7cX1NXVhTp16gibNm1SHNu5c6fQrFkzQV9fX9DV1RU+/vhj4dChQ4IgCMKJEycELy8vwcjISNDW1hbc3NyE8PDw19Z37NgxoUWLFoKmpqZgaGgotG/fXkhNTRUEofB7/c033wjVq1cXNDU1BQ8PD+Hvv/9WPDc7O1sYMGCAYGBgIBgaGgpff/21MHHiRKF+/fqKc/r37y906dJF8VgulwtLly5VfE1q1KghtG/fXjh+/LggCIIwa9YswdnZWdDW1haMjY2FLl26CLdu3VI8//bt28Jnn30m6OvrCzo6OkLjxo2Fs2fPKo7v379faNGihaCtrS3o6+sLTZs2FdasWfPar7mBgYGwYcMGxeN//vlH8PX1FXR0dAQ9PT3B09NTuHnzpuL4r7/+KjRo0EDQ0NAQjIyMhFatWgk7duwQBEEQ1qxZIzRo0EDQ1dUV9PX1hbZt2wqxsbGv/R68zXvq0uWdQr2N9YRLl3e+8dy39S7Held2x58V6m2sJ+yOP/vmk9/Cu/zaXY87IQjT9At/pw/O635+v0p00Bo0aJAwffp0QRAEITQ0VNDW1hZ8fHwEQ0NDYeDAgeKr/YBVxaBVFjExMYKBgYGQm5tb0aXQB4RBq+IwaFFVIyZoib50uGbNGsVi1WHDhsHY2BgnT55Ep06dMGzYMCXNs1FVlp+fj+XLl3N3diIiqvJEBa38/HzMmTMHAwcOVOx91LNnz1I3TSQqSdOmTRV7UhEREVVlom4qraamhgULFih2tCYiIiKi0om+dOjj44Njx45hwIABEpRDRERUeWg+uwHcrybtIDomgKHVm8+j95LooOXv749Jkybh33//hbu7e7GNIEv6yD4REb2HniUBmU8kH0bj2Y3//X5fwh3bn92Rru9XFGgZI1PQhNXRUcBRiQdT1wEC/2bYqqREB62vv/4aALB48eJix2QyGS8rEhFVBs+SgJVNgbxMyYey0lAHLC1gdXSktDu2//84t/LSgCfx0o0D4KY8Hf0LpuCXHg3hUEPCGa3H14AdQwoDMYNWpSQ6aL38xCEREVVimU8KQ1a3taLuZVoeSXfigWvBSPJeBhcbF8nGMcp6DO3TEzEpdgHwDm67K9RWx8nslsgWSt48WBm0hHSU/x4M9D4o102liYioiqheR/Jd1HOf5xb+bugg6VgWAHaZ/YnUnFTJxngp5v5VzI+dipn7oiHPvi/ZOHVlCfhLE0hJz4GpZKOQlBi0iIioyrCoZgGLahbvZrBYYGlAA9jpl3z7LWV4dE0DOA6kZeUxaFVSDFpEVcSxY8fg7e2N1NRU3vOP6B2pbVoNLiYGbz6xnG481pasb3o3RO2jRUW9ePECTZo0QYMGDeDq6oq1a9dWdEnvjQcPHuCbb76Bvb09NDU1YWVlhU6dOuHw4cPFzrWzs8P+/ftx7NgxyGQyyGQyqKiowMDAAA0bNsSECROQnJxcAa+CiIjo7XBG6y3o6Ojg+PHj0NHRQWZmJurVq4du3brBxMSkokurULdv34aHhwcMDQ0xf/58uLm5IS8vDwcOHEBgYCCuXLmiOPfChQt48uQJvL29cfr0aQDA1atXoa+vj7S0NMTGxmL+/PlYv349jh07BldXV6XUmJubCw0NCT9mTkREhHLOaN28eRPff/89evXqhZSUFADA/v37cenSJaUW975TVVWFjo4OACA7OxsFBQUQBKGCq6p4w4cPh0wmw99//43u3bujTp06qFu3LoKCgnDmzJki5+7atQvt27eHpqamos3U1BTm5uaoU6cOPv/8c0RFRaFGjRqKrUVKc+nSJXzyySfQ19eHnp4ePD09cfPmTQDAgAED0LVrVwQHB6NmzZqoU6fwU1YXL15EmzZtoK2tDRMTEwwdOhTp6emKPo8dO4amTZtCV1cXhoaG8PDwwJ07hXv1/PPPP/D29oaenh709fXh7u6Oc+fOlVrfs2fPMHToUJiZmUFLSwv16tXDnj17FMe3b9+OunXrQlNTE7a2tli0aFGR5//yyy9o3Lgx9PT0YG5ujt69eyvef6U5deoUWrVqBW1tbVhZWWHkyJHIyMhQHF+1ahUcHR2hpaUFMzMzdO/eXXFMLpfjhx9+gIODAzQ1NWFtbY05c+Yojt+7dw8BAQEwMjKCiYkJunTpgtu3byuOv/yaL1y4EBYWFjAxMUFgYCDy8v738f6cnBxMmDABVlZW0NTUhKOjI9avX684Hh8fjw4dOqBatWowMzND37598fjxY8Xxbdu2wbVePcX3z6eNNzJSHwG5mSX8ygIKcoGUy8D9OHG/3uH+TERUtYie0Tp+/Dj8/f3h4eGByMhIzJkzB6amprhw4QLWrVuHbdu2SVFnuURGRmLBggWIiYlBcnIydu7cia5duxY5Z9WqVViwYAGSk5NRt25dhISEwNPTs8xjPHv2DF5eXrh+/ToWLFiA6tWrK/lVFJWVn4WE5wmSjlESOwM7aKu9ea3A06dPsX//fsyZM6fYZrYAiq0d2r17N0aNGvXaPrW1tTFs2DCMGTMGKSkpMDUtviT03r17aNWqFVq3bo0jR45AX18fUVFRyM/PV5xz+PBh6OvrIyIiAoIgIDMzE35+fvj4448RHR2NlJQUDB48GCNGjMDGjRuRn5+Prl27YsiQIfj999+Rm5uLv//+GzKZDADQp08fNGzYEKGhoVBVVUVcXFypN8qWy+Xw9/fHixcv8Msvv6B27dqIj4+HqqoqACAmJgY9e/bE9OnTERAQgFOnTmH48OEwMTFR3IUhNzcXs2bNgpOTE1JSUjBmzBgMGDAAe/fuLXHMixcvon379pg1axbWr1+PR48eYcSIERgxYgQ2bNiAc+fOYeTIkdi8eTNatGiBp0+f4sSJE4rnT5o0CWvXrsWSJUvQsmVLJCcnK2YjMzMz4e3tDU9PT0RGRkJNTQ2zZ8+Gn58fLly4oJgtPHr0KCwsLHD06FHcuHEDAQEBaNCgAYYMGQIA6NevH06fPo1ly5ahfv36SEhIUASp5ORkeHl5YciQIVi8eDGysrLw7bffomfPnjhy5AiSk5PRq1cvzP9+FD7188aL9AycOHsewuNrQJZO8S9IvgC8eATsHwukJ5X6961E/78/E7SkW4tDRFWT6KA1ceJEzJ49G0FBQdDT01O0e3t7Y+nSpUot7m1lZGSgfv36+PLLL/HZZ58VOx4eHo7Ro0dj1apV8PDwwI8//gh/f3/Ex8fD2toaAODu7o6cnJxizz148CBq1qwJQ0ND/PPPP3j48CG6deuG7t27w8zMrMR6cnJyivSVlpYm+jUlPE9AwJ4A0c97W+Edw+Fi8ub9b27cuAFBEPDRRx+98dx79+7hn3/+QYcOHd547sv+bt++XWLQWrlyJQwMDBAWFqYIOy9nrV7S1dXFunXrFCFg7dq1yMrKwqZNmxShcMWKFejUqRN++OEHqKur4/nz5+jYsSNq164NAHB2dlb0l5iYiPHjxytqc3R0LLX+Q4cO4e+//8bly5cVddnb2yuOL168GG3btsWUKVMUtcfHx2PBggWKoDVw4EDF+fb29li2bBmaNm2K9PR0VKtWfMPEBQsWoHfv3hg9erSivmXLlsHLywuhoaFITEyErq4uOnbsCD09PdjY2KBhw4YACtcfLl26FCtWrED//v0BALVr10bLli0BAGFhYVBRUcG6desUwXPDhg0wNDTEsWPH4OvrCwAwMjLCihUroKqqio8++giffPIJDh8+jCFDhuDatWvYsmULIiIi4OPjU+xrEhoaikaNGmHu3LmKtp9++glWVla4du0a0tPTkZ+fj27+3rCp1xxQ04KrZ8dSvwfIzgHSVIGemwE1WennlSTtNnB2CqBX8nubiKg0ooPWxYsX8dtvvxVrr1GjBp48kf5WDmL4+/vD39+/1OOLFy/GoEGDMHjwYABASEgIDhw4gNDQUAQHBwMonGkoCzMzM7i5uSEyMhI9evQo8Zzg4GDMmDFD5Ksoys7ADuEdw9+qj/KOWxYvL52+/OH7Ort374aHhweMjY3fut+4uDh4enqWOqMEAK6urkXWZV2+fBn169cvMvPm4eEBuVyOq1evolWrVhgwYADat2+Pdu3awcfHBz179oSFReFHx4OCgjB48GBs3rwZPj4+6NGjhyKQlVRfrVq1ioW//9bSpUuXIm0eHh4ICQlBQUEBVFVVcf78eUyfPh1xcXF4+vSpYvPgxMREuLgUD8ExMTG4ceMGfv31V0WbIAiQy+VISEhAu3btYGNjA3t7e/j5+cHPzw+ffvopdHR0cPnyZeTk5KBt27Yl1vuy7//+ZwsovIT+8nItANStW1cxawcAFhYWuHjxouJroqqqCi8vr1LHOHr0aIkh8ubNm/D19UVb79ZwbRuA9r6+8PXzR/fu3WFkZFRif5CrAKoagKkdoKVV8jml0eR6PirZree3JO0/KTMRuv95D1HlIzpoGRoaIjk5GXZ2RX/wnj9/HpaWlkorTGq5ubmIiYnBxIkTi7T7+vri1KlTZerj4cOH0NbWVizcjoyMfO06okmTJiEoKEjxOC0tDVZW4m6poK2mXaaZpYri6OgImUyGy5cvF7tM+6rdu3cXCxeluXz5MgDA1ta2xOPa2m++rPnqpUxBEEoNbv+dpRk5ciT279+P8PBwfP/994iIiMDHH3+M6dOno3fv3vjrr7+wb98+TJs2DWFhYfj0009F11dSLf9d75eRkQFfX1/4+vril19+QY0aNZCYmIj27dsjNze3xD7lcjm++uorjBw5stgxa2traGhoIDY2FseOHcPBgwcxdepUTJ8+HdHR0W+sVy6Xw93dvUiIe6lGjRqKP78afGUymSIglmWMl7OLr7KwsICqqioi9u3Bqf1bcDD6OpYvX47Jkyfj7Nmzxf59IlI2I00jaKtpY9KJSZKPpV3LAktzn3KH+EpKdNDq3bs3vv32W2zdulXxj2ZUVBTGjRuHfv36SVGjJB4/foyCgoJil/nMzMzw4MGDMvVx9+5dDBo0CIIgQBAEjBgxAm5ubqWer6mpWWTRd1VkbGyM9u3bY+XKlRg5cmSxcPPs2TMYGhoiPT0dR48excqVK9/YZ1ZWFtasWYNWrVoV+SH+X25ubvj555+Rl5f32lmt/3JxccHPP/+MjIwMRZ1RUVFQUVEpMvPUsGFDNGzYEJMmTULz5s3x22+/4eOPPwZQeImvTp06GDNmDHr16oUNGzaUGLTc3Nxw9+5dXLt2rcRZLRcXF5w8ebJI26lTp1CnTh2oqqriypUrePz4MebNm6cI569beA8AjRo1wqVLl+DgUPo/z2pqavDx8YGPjw+mTZsGQ0NDHDlyBB06dIC2tjYOHz6smPF9te/w8HCYmppCX1//tXWUxtXVFXK5HMePH1dcOnx1jO3bt8PW1hZqaiX/UyWTyeDRpAE8/AMwdcYs2NjYYOfOnUX+Q0MkBYtqFtjVZZfku9CfvrAfIYkbkJaf/uaT6b0kOmjNmTMHAwYMgKWlJQRBgIuLCwoKCtC7d298//33UtQoqZJmEcpy2QsoXL8VFxcnQVWV26pVq9CiRQs0bdoUM2fOhJubG/Lz8xEREYHQ0FBcvnwZ+/fvh6OjY5E1OS+lpKQgOzsbL168QExMDObPn4/Hjx9jx44dpY45YsQILF++HJ9//jkmTZoEAwMDnDlzBk2bNoWTU8m7Nvfp0wfTpk1D//79MX36dDx69AjffPMN+vbtCzMzMyQkJGDNmjXo3LkzatasiatXr+LatWvo168fsrKyMH78eHTv3h12dna4e/cuoqOjS1wLCABeXl5o1aoVPvvsMyxevBgODg64cuUKZDIZ/Pz8MHbsWDRp0gSzZs1CQEAATp8+jRUrVmDVqlUA/jcDtXz5cgwbNgz//vsvZs2a9drvw7fffouPP/4YgYGBGDJkCHR1dXH58mVERERg+fLl2LNnD27duoVWrVrByMgIe/fuhVwuh5OTE7S0tPDtt99iwoQJ0NDQgIeHBx49eoRLly5h0KBB6NOnDxYsWIAuXbpg5syZqFWrFhITE7Fjxw6MHz8etWrVem1tQOHsZP/+/TFw4EDFYvg7d+4gJSUFPXv2RGBgINauXYtevXph/PjxqF69Om7cuIGwsDCsXbsW586dw+GD++Hb2AGmjjo4e/4CHj16VGQdHZGU3sUu9ElacZL2T9ITHbTU1dXx66+/YtasWYiNjYVcLkfDhg1fuxD4fVS9enWoqqoWm71KSUkpdTE7lY2dnR1iY2MxZ84cjB07FsnJyahRowbc3d0RGhoKoHBbh9IuGzo5OUEmk6FatWqwt7eHr68vgoKCYG5uXuqYJiYmOHLkCMaPHw8vLy+oqqqiQYMG8PDwKPU5Ojo6OHDgAEaNGoUmTZpAR0dHEYReHr9y5Qp+/vlnPHnyBBYWFhgxYgS++uor5Ofn48mTJ+jXrx8ePnyI6tWro1u3bq9dg7d9+3aMGzcOvXr1QkZGBhwcHDBv3jwAhbM3W7ZswdSpUzFr1ixYWFhg5syZioXwNWrUwMaNG/Hdd99h2bJlaNSoERYuXIjOnTuXOp6bmxuOHz+OyZMnw9PTE4IgoHbt2ggIKPwwhaGhIXbs2IHp06cjOzsbjo6O+P3331G3bl0AwJQpU6CmpoapU6fi/v37sLCwwLBhwxRfm8jISHz77bfo1q0bXrx4AUtLS7Rt21bUDFdoaCi+++47DB8+HE+ePIG1tTW+++47AEDNmjURFRWFb7/9Fu3bt0dOTg5sbGzg5+cHFRUV6OvrI/LESYQsXYq09EzY2Nhg0aJFr12XSUSvl5ye/E7uFWmkafTubpVUwWTCB7Lxk0wmK7a9Q7NmzeDu7q6YNQAKL+F06dJFsRheSmlpaTAwMMDz58+L/XDKzs5GQkIC7OzsoCV24e57rqCgAKampti3bx+aNm1a0eVQZZabCTy+ClR3AjRK2NLhP97mPRX/JB4BewLK/OnbtxF/5Q8EnJ2C8Gaz4PJRV+kGuh8HrPEChh6X/KbSf17+G9/9PQhzm65HJ2e+58U4cPo3jLsWjIV1JqF9896SjpWcnowuu7ogKz9L0nGAwvXGu7rsqrRh63U/v18lekare/fuaNy4cbFF5AsWLMDff/+NrVu3iu1SMunp6bhx44bicUJCAuLi4mBsbAxra2sEBQWhb9++aNy4MZo3b441a9YgMTFR8b92ksaTJ08wZswYNGnSpKJLISKi/5eak4qs/CwEewbD3qD4sg5lufX8FiadmITUnNRKG7TEKNeGpdOmTSvW7ufnh4ULFyqlKGU5d+4cvL29FY9fLpDt378/Nm7ciICAADx58gQzZ85EcnIy6tWrh71798LGxqaiSv4gmJqaVsr1fEREHwJ7A/v3+tPtlY3ooJWenl7iPeLU1dXLtQGnlFq3bv3GW+IMHz4cw4cPf0cVERER0YdE9L0O69Wrh/Dw4htmhoWFlbhpIhEREdGHSvSM1pQpU/DZZ5/h5s2baNOmDYDCe8j9/vvv79X6rKri5eaORPR2+F4iooogOmh17twZf/zxB+bOnYtt27ZBW1sbbm5uOHToUKm30iDxNDQ0oKKigvv376NGjRrQ0NAo8/5eRB+M3JzCm0Vn5xTeYqcEgiAgNzcXjx49goqKSolLH4iIpCI6aAHAJ598gk8++UTZtdB/qKiowM7ODsnJybh//35Fl0P0firIBV48KrxZtOrrA5SOjg6sra2hoiJ6xQQRUbmVK2gBhfcKTElJKTYdb21t/dZFUSENDQ1YW1sjPz8fBQUFFV0O0fsn5TKwfyzQc3PhzaJLoaqqCjU1Nc4KE5XBzZR0yLOfS9Z/QtqHdTsh0UHr+vXrGDhwYLEbL7+8dQ0DgXLJZDKoq6uX+f59RB8UNRmQnlT4exXb2JfoXUt5kQMAGBUeB3n2I8nGUdG6B127wvFcTCQb5r0hOmgNGDAAampq2LNnDywsLPg/RCIiCSSlZkJ+T7pZBa3H6Sj9duP0IXqRlQcAGNeuDlrZNpRsnMjb5xF643/jVXWig1ZcXBxiYmLw0UcfSVEPEdEH7WlmLgBg4YGruJ5tINk4dWUJ+EsTiElMhaYgXaADgKSnmZL2T8plZayDepbS/d1LSHv97bKqGtFBy8XFBY8fP5aiFiKiD15GTj4AoG9zWzSq11KycXKSdID9wNRdl3BJkDYIvbxUpKfNJRD04REdtH744QdMmDABc+fOhaura7G1Q2+6uSIBK1euxMqVK7mejYhKZaavKemsAmRGAIClnzdAdnVX6cYBkJB2Fd/9DZjqaUo6DtH7SHTQ8vHxAQC0bdu2SDsXw5ddYGAgAgMDFXf/JiKqKA41qgE1pf13SEWrmqT9E73PRAeto0ePSlEHERERUZUjOmhx93ciIiKisinXhqUnTpzAjz/+iFu3bmHr1q2wtLTE5s2bYWdnh5YtpVu8SURERNLSeHYDuC/drao0nt2QrO/3keigtX37dvTt2xd9+vRBbGwscnIKNzh78eIF5s6di7179yq9SCIiog/Zw7Qc/CvhvmoAkHI/EQBgdXQkkCvdHldWGuqApQXUslIkG+N9IjpozZ49G6tXr0a/fv0QFhamaG/RogVmzpyp1OKIiIg+ZLqahT+mN5++jalHT0o6lqPWRcAOSGsxEajjI9k4D/89ACT/ApWcNMnGeJ+IDlpXr15Fq1atirXr6+vj2bNnyqiJiKjMklVVkZp2G9CU7lLHree3JOub6HWMdQr/Xo9r7wRLa2mX5txLfI5x1wB9cwegZgPJxsm9Ew8kS9b9e0d00LKwsMCNGzdga2tbpP3kyZOwt7dXVl1ERG+UnPUYXWpZIOvsFMnH0lbThpGmkeTjEJXEykgHLlLuqwZA5cWHtWP7uyI6aH311VcYNWoUfvrpJ8hkMty/fx+nT5/GuHHjMHXqVClqJCIqUWpeOrJUVBBcbxjsbb0lHctI0wgW1SwkHYOoNLcy7gFP4qUfg5ROdNCaMGECnj9/Dm9vb2RnZ6NVq1bQ1NTEuHHjMGLECClqJCJ6LXtdS7iYuFR0GURKZ6ReDdpyOSb9uxr4d7Xk42nL5TBS5wazylSu7R3mzJmDyZMnIz4+HnK5HC4uLqhWjd8YIiIiZbIwccKuh8+QKs95J+MZqWjCwsTpnYz1oRAdtJ4/f46CggIYGxujcePGivanT59CTU2N9zokIiJSFkMrWAw7A4vMJ+9mPB0TwNDq3Yz1gRAdtD7//HN06tQJw4cPL9K+ZcsW7N69m/toERERKZOhFcNPJaYi9glnz56Ft3fxRaetW7fG2bNnlVIUERERUVUgOmjl5OQgPz+/WHteXh6ysrKUUhQRERFRVSA6aDVp0gRr1qwp1r569Wq4u7srpSgiIiKiqkD0Gq05c+bAx8cH//zzD9q2bQsAOHz4MKKjo3Hw4EGlF0hERERUWYkOWh4eHjh9+jQWLFiALVu2QFtbG25ubli/fj0cHR2lqJGIqMLde5aF1Ixcycd5mPZuPsZPRO9GufbRatCgAX799Vdl1/LBWLlyJVauXImCgoKKLoWIyuDesyz4LDqOrDzp37OOWrcBu//dTJiIKjfR7+TY2Fioq6vD1dUVALBr1y5s2LABLi4umD59OjQ0pLuxa1URGBiIwMBApKWlwcBA2ntXEdHbS83IRVZeAUICGsDBVNrNmV/e2PflzYSJqHIr170OJ06cCFdXV9y6dQsBAQHo1q0btm7diszMTISEhEhQJhFRxXMwrYZ67+rGvs/uAPfjpBvo8TXp+iYiBdFB69q1a2jQoAEAYOvWrfDy8sJvv/2GqKgofP755wxaRERvQ+v/g9yRWUDuVGnHUtcp3AmciCQjOmgJggC5XA4AOHToEDp27AgAsLKywuPHj5VbHRHRh0bPrPD3busAfVtpx+LtVogkJzpoNW7cGLNnz4aPjw+OHz+O0NBQAEBCQgLMzMyUXiAR0QepRh3AxKWiqyCityR6w9KQkBDExsZixIgRmDx5MhwcHAAA27ZtQ4sWLZReIBEREVFlJXpGy83NDRcvXizWvmDBAqiqqiqlKCIiIqKqQPSMFgA8e/YM69atw6RJk/D06VMAQHx8PFJSUpRaHBEREVFlJnpG68KFC2jbti0MDQ1x+/ZtDBkyBMbGxti5cyfu3LmDTZs2SVEnERERVSEaL5Kk3cLkpQr+0IfooBUUFIQvv/wS8+fPh56enqLd398fvXv3VmpxREREVLXINfUBAGbnFgCn5ko/oLoOEPh3hYUt0UErOjoaP/74Y7F2S0tLPHjwQClFERERUdWUr20KAEjyXgYXG4k/Wfv4GrBjCJD5pPIELS0tLaSlpRVrv3r1KmrUqKGUooiIiKhqyzV0AGo2qOgyJCd6MXyXLl0wc+ZM5OXlAQBkMhkSExMxceJEfPbZZ0ovkIiIiKiyEj2jtXDhQnTo0AGmpqbIysqCl5cXHjx4gObNm2POnDlS1EhE9MG59fyW5GMYaRrBopqF5OMQfchEBy19fX2cPHkSR44cQWxsLORyORo1agQfHx8p6iMi+qAYaRpBW00bk05MknwsbTVt7Oqyi2GLSEKig9ZLbdq0QZs2bZRZCxHRB8+imgV2ddmF1JxUSce59fwWJp2YhNScVAYtIgmVKWgtW7aszB2OHDmy3MUQEVFh2GL4IaoayhS0lixZUqbOZDIZgxYRERHR/ytT0EpISJC6DiIiIqIqp1z3OiQiIiKiNyvXYvi7d+9i9+7dSExMRG5ubpFjixcvVkphRERERJWd6KB1+PBhdO7cGXZ2drh69Srq1auH27dvQxAENGrUSIoaiYiIiCol0UFr0qRJGDt2LGbOnAk9PT1s374dpqam6NOnD/z8/KSoscpZuXIlVq5ciYKCgoouhUgSyenJkm9PAAC3Mu5JPgYR0dsQHbQuX76M33//vfDJamrIyspCtWrVMHPmTHTp0gVff/210ousagIDAxEYGIi0tDQYGBhUdDlESpWcnowuu7ogKz/rnYynLZfDSL3aOxmrKnoXO9C/izGI3leig5auri5ycnIAADVr1sTNmzdRt25dAMDjx4+VWx0RVTqpOanIys9CsGcw7A3spR3s0TUYbR0IC+3q0o5TBb3LHeiBwl3ojTSN3slYRO8T0UHr448/RlRUFFxcXPDJJ59g7NixuHjxInbs2IGPP/5YihqJqBKyN7CHi4mLtIPk5AK8BF8u72oH+pd4X0X6UIkOWosXL0Z6ejoAYPr06UhPT0d4eDgcHBzKvLEpERFVPO5ATyQ90UHL3v5/lwJ0dHSwatUqpRZEREREVFWU+6bSMTExuHz5MmQyGVxcXNCwYUNl1kVERERVWGzyVcnH0Hh2A26qqqjIeVvRQSslJQWff/45jh07BkNDQwiCgOfPn8Pb2xthYWGoUaOGFHUSERFRFVDLoAYEuTq2Jc3HtiTpx9OuZYH1T+7DtWYD6Qcrgeig9c033yAtLQ2XLl2Cs7MzACA+Ph79+/fHyJEjFVs/EBEREb2qYU07bG6/HXefP5J8rMs3j2Dzk19xP/0ZXCUfrWSig9b+/ftx6NAhRcgCABcXF6xcuRK+vr5KLY6IiIiqnoY17dCwpp3k42g8u4HNTyQf5rVE31RaLpdDXV29WLu6ujrkcrlSiiIiIiKqCkQHrTZt2mDUqFG4f/++ou3evXsYM2YM2rZtq9TiiIiIiCoz0UFrxYoVePHiBWxtbVG7dm04ODjAzs4OL168wPLly6WokYiIiKhSEr1Gy8rKCrGxsYiIiMCVK1cgCAJcXFzg4+MjRX1ERERElVa599Fq164d2rVrp8xaiIiIiKoU0ZcOR44ciWXLlhVrX7FiBUaPHq2MmoiIiIiqBNFBa/v27fDw8CjW3qJFC2zbtk0pRRERERFVBaKD1pMnT2BgYFCsXV9fH48fP1ZKUURERERVgeig5eDggP379xdr37dvX5EbThMRERF96EQvhg8KCsKIESPw6NEjtGnTBgBw+PBhLFq0CCEhIcqur9LJzMyEs7MzevTogYULF1Z0OURERFSBRAetgQMHIicnB3PmzMGsWbMAALa2tggNDUW/fv2UXmBlM2fOHDRr1qyiyyAiIqL3gOhLhwDw9ddf4+7du3j48CHS0tJw69YthiwA169fx5UrV9ChQ4eKLoWIiIjeA+UKWi/VqFED1apVe+si7t27hy+++AImJibQ0dFBgwYNEBMT89b9vhQZGYlOnTqhZs2akMlk+OOPP0o8b9WqVbCzs4OWlhbc3d1x4sQJUeOMGzcOwcHBSqiYiIiIqoK3ClrKkJqaCg8PD6irq2Pfvn2Ij4/HokWLYGhoWOL5UVFRyMvLK9Z+5coVPHjwoMTnZGRkoH79+lixYkWpdYSHh2P06NGYPHkyzp8/D09PT/j7+yMxMVFxjru7O+rVq1fs1/3797Fr1y7UqVMHderUEfcFICIioiqr3DvDK8sPP/wAKysrbNiwQdFma2tb4rlyuRyBgYFwdHREWFgYVFVVAQDXrl2Dt7c3xowZgwkTJhR7nr+/P/z9/V9bx+LFizFo0CAMHjwYABASEoIDBw4gNDRUMUv1ulm2M2fOICwsDFu3bkV6ejry8vKgr6+PqVOnvnZcIiIiqroqfEZr9+7daNy4MXr06AFTU1M0bNgQa9euLfFcFRUV7N27F+fPn0e/fv0gl8tx8+ZNtGnTBp07dy4xZJVFbm4uYmJi4OvrW6Td19cXp06dKlMfwcHBSEpKwu3bt7Fw4UIMGTKk1JC1cuVKuLi4oEmTJuWql4iIiCoHpQStZ8+elfu5t27dQmhoKBwdHXHgwAEMGzYMI0eOxKZNm0o8v2bNmjhy5AiioqLQu3dvtGnTBm3btsXq1avLXcPjx49RUFAAMzOzIu1mZmalXo58G4GBgYiPj0d0dLTS+yYiIqL3h+hLhz/88ANsbW0REBAAAOjZsye2b98Oc3Nz7N27F/Xr1xfVn1wuR+PGjTF37lwAQMOGDXHp0qXXbhdhbW2NTZs2wcvLC/b29li/fj1kMpnYl1LMq30IglCufgcMGPDWtRAREVHlJ3pG68cff4SVlRUAICIiAhEREdi3bx/8/f0xfvx40QVYWFjAxcWlSJuzs3ORReivevjwIYYOHYpOnTohMzMTY8aMET3uf1WvXh2qqqrFZq9SUlKKzXIRERERlZXoGa3k5GRF0NqzZw969uwJX19f2NralmujTg8PD1y9erVI27Vr12BjY1Pi+Y8fP0bbtm3h7OyMrVu34vr162jdujU0NTXLvRO7hoYG3N3dERERgU8//VTRHhERgS5dupSrTyIiIiLRM1pGRkZISkoCAOzfvx8+Pj4ACi+zFRQUiC5gzJgxOHPmDObOnYsbN27gt99+w5o1axAYGFjsXLlcDj8/P9jY2CA8PBxqampwdnbGoUOHsHHjRixZsqTEMdLT0xEXF4e4uDgAQEJCAuLi4orMmgUFBWHdunX46aefcPnyZYwZMwaJiYkYNmyY6NdEREREBJRjRqtbt27o3bs3HB0d8eTJE8W2CXFxcXBwcBBdQJMmTbBz505MmjQJM2fOhJ2dHUJCQtCnT59i56qoqCA4OBienp7Q0NBQtLu6uuLQoUMwMTEpcYxz587B29tb8TgoKAgA0L9/f2zcuBEAEBAQgCdPnmDmzJlITk5GvXr1sHfv3lJn1oiIiIjeRHTQWrJkCWxtbZGUlIT58+crdoZPTk7G8OHDy1VEx44d0bFjxzKd265duxLbGzRoUOpzWrduDUEQ3tj38OHDy/0aiIiIiF4lOmipq6tj3LhxxdpHjx6tjHqIiIiIqgzRQau0/a1e4s2liYiIiAqJDlqjRo0q8jgvLw+ZmZnQ0NCAjo4OgxYRERHR/xP9qcPU1NQiv9LT03H16lW0bNkSv//+uxQ1EhEREVVKSrkFj6OjI+bNm1dstouIiIjoQ6a0m0qrqqri/v37yuqOiIiIqNITvUZr9+7dRR4LgoDk5GSsWLECHh4eSiuMiIiIqLITHbS6du1a5LFMJkONGjXQpk0bLFq0SFl1EREREVV6ooOWXC6Xog4iIiKiKuet1mgJglCmHdeJiIiIPkTlClqbNm2Cq6srtLW1oa2tDTc3N2zevFnZtRERERFVaqIvHS5evBhTpkzBiBEj4OHhAUEQEBUVhWHDhuHx48cYM2aMFHUSERERVTqig9by5csRGhpaZAf4Ll26oG7dupg+fTqDFhEREdH/E33pMDk5GS1atCjW3qJFCyQnJyulKCIiIqKqQHTQcnBwwJYtW4q1h4eHw9HRUSlFEREREVUFoi8dzpgxAwEBAYiMjISHhwdkMhlOnjyJw4cPlxjAiIiIiD5Uome0PvvsM5w9exbVq1fHH3/8gR07dqB69er4+++/8emnn0pRIxEREVGlJHpGCwDc3d3xyy+/KLsWIiIioiqlXPto3bx5E99//z169+6NlJQUAMD+/ftx6dIlpRZHREREVJmJDlrHjx+Hq6srzp49i+3btyM9PR0AcOHCBUybNk3pBRIRERFVVqKD1sSJEzF79mxERERAQ0ND0e7t7Y3Tp08rtTgiIiKiykx00Lp48WKJi95r1KiBJ0+eKKUoIiIioqpAdNAyNDQscWPS8+fPw9LSUilFVXUrV66Ei4sLmjRpUtGlEBERkYREB63evXvj22+/xYMHDyCTySCXyxEVFYVx48YVuS0PlS4wMBDx8fGIjo6u6FKIiIhIQqKD1pw5c2BtbQ1LS0ukp6fDxcUFrVq1QosWLfD9999LUSMRERFRpSR6Hy11dXX8+uuvmDlzJs6fPw+5XI6GDRvy9jtEREREryjXhqUAULt2bdSuXVuZtRARERFVKaKDVkFBATZu3IjDhw8jJSUFcrm8yPEjR44orTgiIiKiykx00Bo1ahQ2btyITz75BPXq1YNMJpOiLiIiIqJKT3TQCgsLw5YtW9ChQwcp6iEiIiKqMkR/6lBDQwMODg5S1EJERERUpYgOWmPHjsXSpUshCIIU9RARERFVGaIvHZ48eRJHjx7Fvn37ULduXairqxc5vmPHDqUVR0RERFSZiQ5ahoaGJd7rkIiIiIiKEh20NmzYIEUdRERERFWO6DVaRERERFQ25doZftu2bdiyZQsSExORm5tb5FhsbKxSCiMiIiKq7ETPaC1btgxffvklTE1Ncf78eTRt2hQmJia4desW/P39paiRiIiIqFISHbRWrVqFNWvWYMWKFdDQ0MCECRMQERGBkSNH4vnz51LUSERERFQpiQ5aiYmJaNGiBQBAW1sbL168AAD07dsXv//+u3KrIyIiIqrERActc3NzPHnyBABgY2ODM2fOAAASEhK4iSkRERHRf4gOWm3atMGff/4JABg0aBDGjBmDdu3aISAggPtrEREREf2H6E8drlmzBnK5HAAwbNgwGBsb4+TJk+jUqROGDRum9AKJiIiIKivRQevu3buwsrJSPO7Zsyd69uwJQRCQlJQEa2trpRZIRPQmNx6lI1uQ7sM4N1LSJeubiKo20UHLzs4OycnJMDU1LdL+9OlT2NnZoaCgQGnFERG9Tkp6DkwBjAqLwyUJgxYAaKurwkhXQ9IxiKjqER20BEGATCYr1p6eng4tLS2lFEVEVBZpWXkwBTDO1wk16jSVdCwjXQ1YGmpLOgYRVT1lDlpBQUEAAJlMhilTpkBHR0dxrKCgAGfPnkWDBg2UXiAR0ZtYGWvDwdKgossgIiqmzEHr/PnzAApntC5evAgNjf9NoWtoaKB+/foYN26c8iskIiIiqqTKHLSOHj0KAPjyyy+xdOlS6OvrS1YUERERUVUgeo3Whg0bpKiDiIiIqMoRHbQyMjIwb948HD58GCkpKYo9tV66deuW0oojIiIiqsxEB63Bgwfj+PHj6Nu3LywsLEr8BCIRERERlSNo7du3D3/99Rc8PDykqIeIiIioyhB9r0MjIyMYGxtLUQsRERFRlSI6aM2aNQtTp05FZmamFPVUepmZmbCxseFWF0RERCT+0uGiRYtw8+ZNmJmZwdbWFurq6kWOx8bGKq24ymjOnDlo1qxZRZdBRERE7wHRQatr164SlFE1XL9+HVeuXEGnTp3w77//VnQ5REREVMFEB61p06ZJUQcAIDg4GN999x1GjRqFkJAQpfUbGRmJBQsWICYmBsnJydi5c2eJgXHVqlVYsGABkpOTUbduXYSEhMDT07PM44wbNw4LFizAqVOnlFY7ERERVV6i12hJJTo6GmvWrIGbm9trz4uKikJeXl6x9itXruDBgwclPicjIwP169fHihUrSu03PDwco0ePxuTJk3H+/Hl4enrC398fiYmJinPc3d1Rr169Yr/u37+PXbt2oU6dOqhTp04ZXzERERFVdaJntAoKCrBkyRJs2bIFiYmJyM3NLXL86dOnootIT09Hnz59sHbtWsyePbvU8+RyOQIDA+Ho6IiwsDCoqqoCAK5duwZvb2+MGTMGEyZMKPY8f39/+Pv7v7aGxYsXY9CgQRg8eDAAICQkBAcOHEBoaCiCg4MBADExMaU+/8yZMwgLC8PWrVuRnp6OvLw86OvrY+rUqcXOXblyJVauXImCgoLX1kRERESVm+gZrRkzZmDx4sXo2bMnnj9/jqCgIHTr1g0qKiqYPn16uYoIDAzEJ598Ah8fn9cXq6KCvXv34vz58+jXrx/kcjlu3ryJNm3aoHPnziWGrLLIzc1FTEwMfH19i7T7+vqW+TJgcHAwkpKScPv2bSxcuBBDhgwpMWQBha83Pj4e0dHR5aqXiIiIKgfRM1q//vor1q5di08++QQzZsxAr169ULt2bbi5ueHMmTMYOXKkqP7CwsIQGxtb5tBRs2ZNHDlyBK1atULv3r1x+vRptG3bFqtXrxb7UhQeP36MgoICmJmZFWk3MzMr9XIkERER0ZuIDloPHjyAq6srAKBatWp4/vw5AKBjx46YMmWKqL6SkpIwatQoHDx4EFpaWmV+nrW1NTZt2gQvLy/Y29tj/fr1SrkV0Kt9CIJQrn4HDBjw1rUQERFR5Sf60mGtWrWQnJwMAHBwcMDBgwcBFC5m19TUFNVXTEwMUlJS4O7uDjU1NaipqeH48eNYtmwZ1NTUSl3D9PDhQwwdOhSdOnVCZmYmxowZI/ZlFFG9enWoqqoWm71KSUkpNstFREREVFaig9ann36Kw4cPAwBGjRqFKVOmwNHREf369cPAgQNF9dW2bVtcvHgRcXFxil+NGzdGnz59EBcXp1js/l+PHz9G27Zt4ezsjB07duDIkSPYsmXLW+3ErqGhAXd3d0RERBRpj4iIQIsWLcrdLxEREX3YRF86nDdvnuLP3bt3h5WVFaKiouDg4IDOnTuL6ktPTw/16tUr0qarqwsTE5Ni7UDhpw79/PxgY2OD8PBwqKmpwdnZGYcOHYK3tzcsLS1LnN1KT0/HjRs3FI8TEhIQFxcHY2NjWFtbAwCCgoLQt29fNG7cGM2bN8eaNWuQmJiIYcOGiXpNRERERC+JDlqRkZFo0aIF1NQKn9qsWTM0a9YM+fn5iIyMRKtWrZRe5EsqKioIDg6Gp6cnNDQ0FO2urq44dOgQTExMSnzeuXPn4O3trXgcFBQEAOjfvz82btwIAAgICMCTJ08wc+ZMJCcno169eti7dy9sbGwkez1ERERUtYkOWt7e3khOToapqWmR9ufPn8Pb2/ut94Y6duzYa4+3a9euxPYGDRqU+pzWrVtDEIQ3jj18+HAMHz78jecRERERlYXoNVqlfRLvyZMn0NXVVUpRRERERFVBmWe0unXrBqBwC4QBAwYU+YRhQUEBLly4wIXjRERERP9R5qBlYGAAoHBGS09PD9ra2opjGhoa+PjjjzFkyBDlV0hERERUSZU5aG3YsAEAYGtri3HjxvEyIREREdEbiF6jNWHChCJrtO7cuYOQkBDFxqVEREREVEh00OrSpQs2bdoEAHj27BmaNm2KRYsWoUuXLggNDVV6gURERESVleigFRsbC09PTwDAtm3bYG5ujjt37mDTpk1YtmyZ0gskIiIiqqxEB63MzEzo6ekBAA4ePIhu3bpBRUUFH3/8Me7cuaP0AomIiIgqK9FBy8HBAX/88QeSkpJw4MAB+Pr6Aii8AbO+vr7SCyQiIiKqrEQHralTp2LcuHGwtbVFs2bN0Lx5cwCFs1sNGzZUeoFERERElZXoW/B0794dLVu2RHJyMurXr69ob9u2LT799FOlFkdERERUmYkOWgBgbm4Oc3PzIm1NmzZVSkFEREREVYXooJWRkYF58+bh8OHDSElJgVwuL3L81q1bSiuOiIiIqDITHbQGDx6M48ePo2/fvrCwsCjxBtNEREREVI6gtW/fPvz111/w8PCQoh4iIiKiKkP0pw6NjIxgbGwsRS1EREREVYrooDVr1ixMnToVmZmZUtRDREREVGWIvnS4aNEi3Lx5E2ZmZrC1tYW6unqR47GxsUorjoiIiKgyEx20unbtKkEZRERERFWP6KA1bdo0KeogIiIiqnLKtWEpEVVO955lITUjV9IxEtLSJe2fiKgyKVPQMjY2xrVr11C9enUYGRm9du+sp0+fKq04IlKee8+y4LPoOLLyCiQdR0XrHnTtgJQXOXAxkXQoIqL3XpmC1pIlS6CnpwcACAkJkbIeIpJIakYusvIKEBLQAA6m1SQbJ/L2eYTeAF5k5Uk2BhFRZVGmoNW/f/8S/0xElY+DaTXUszSQrP+ENB3J+iYiqmxE76NFRERERGXDoEVEREQkEQYtIiIiIokwaBERERFJpNxB68aNGzhw4ACysrIAAIIgKK0oIiIioqpAdNB68uQJfHx8UKdOHXTo0AHJyckAgMGDB2Ps2LFKL5CIiIioshIdtMaMGQM1NTUkJiZCR+d/H+MOCAjA/v37lVocERERUWUm+hY8Bw8exIEDB1CrVq0i7Y6Ojrhz547SCiMiIiKq7ETPaGVkZBSZyXrp8ePH0NTUVEpRRERERFWB6KDVqlUrbNq0SfFYJpNBLpdjwYIF8Pb2VmpxlVFmZiZsbGwwbty4ii6FiIiIKpjoS4cLFixA69atce7cOeTm5mLChAm4dOkSnj59iqioKClqrFTmzJmDZs2aVXQZRERE9B4QPaPl4uKCCxcuoGnTpmjXrh0yMjLQrVs3nD9/HrVr15aixkrj+vXruHLlCjp06FDRpRAREdF7oFz7aJmbm2PGjBnYs2cP9u7di9mzZ8PCwqJcBYSGhsLNzQ36+vrQ19dH8+bNsW/fvnL1VZrIyEh06tQJNWvWhEwmwx9//FHieatWrYKdnR20tLTg7u6OEydOiBpn3LhxCA4OVkLFREREVBWU6dLhhQsXytyhm5ubqAJq1aqFefPmwcHBAQDw888/o0uXLjh//jzq1q1b7PyoqCg0bdoU6urqRdqvXLkCQ0NDmJubF3tORkYG6tevjy+//BKfffZZiXWEh4dj9OjRWLVqFTw8PPDjjz/C398f8fHxsLa2BgC4u7sjJyen2HMPHjyI6Oho1KlTB3Xq1MGpU6dEfQ2IiIioaipT0GrQoAFkMhkEQYBMJlO0v9wN/r9tBQUFogro1KlTkcdz5sxBaGgozpw5UyxoyeVyBAYGwtHREWFhYVBVVQUAXLt2Dd7e3hgzZgwmTJhQbAx/f3/4+/u/to7Fixdj0KBBGDx4MAAgJCQEBw4cQGhoqGKWKiYmptTnnzlzBmFhYdi6dSvS09ORl5cHfX19TJ069c1fBCIiIqqSynTpMCEhAbdu3UJCQgK2b98OOzs7rFq1CnFxcYiLi8OqVatQu3ZtbN++/a2KKSgoQFhYGDIyMtC8efPixaqoYO/evTh//jz69esHuVyOmzdvok2bNujcuXOJIasscnNzERMTA19f3yLtvr6+ZZ6dCg4ORlJSEm7fvo2FCxdiyJAhpYaslStXwsXFBU2aNClXvURERFQ5lGlGy8bGRvHnHj16YNmyZUUWfLu5ucHKygpTpkxB165dRRdx8eJFNG/eHNnZ2ahWrRp27twJFxeXEs+tWbMmjhw5glatWqF37944ffo02rZti9WrV4se96XHjx+joKAAZmZmRdrNzMzw4MGDcvdbmsDAQAQGBiItLQ0GBgZK75+IiIjeD6K3d7h48SLs7OyKtdvZ2SE+Pr5cRTg5OSEuLg7Pnj3D9u3b0b9/fxw/frzUsGVtbY1NmzbBy8sL9vb2WL9+fZHLl+X1ah+vXiotqwEDBrx1LURERFT5if7UobOzM2bPno3s7GxFW05ODmbPng1nZ+dyFaGhoQEHBwc0btwYwcHBqF+/PpYuXVrq+Q8fPsTQoUPRqVMnZGZmYsyYMeUa96Xq1atDVVW12OxVSkpKsVkuIiIiorISPaO1evVqdOrUCVZWVqhfvz4A4J9//oFMJsOePXuUUpQgCCV+ug8ovMzXtm1bODs7Y+vWrbh+/Tpat24NTU1NLFy4sFzjaWhowN3dHREREfj0008V7REREejSpUu5+iQiIiISHbSaNm2KhIQE/PLLL7hy5QoEQUBAQAB69+4NXV1d0QV899138Pf3h5WVFV68eIGwsDAcO3YM+/fvL3auXC6Hn58fbGxsEB4eDjU1NTg7O+PQoUPw9vaGpaVlibNb6enpuHHjhuJxQkIC4uLiYGxsrNi6ISgoCH379kXjxo3RvHlzrFmzBomJiRg2bJjo10REREQElCNoAYCOjg6GDh2qlAIePnyIvn37Ijk5GQYGBnBzc8P+/fvRrl27YueqqKggODgYnp6e0NDQULS7urri0KFDMDExKXGMc+fOFbkPY1BQEACgf//+2LhxIwAgICAAT548wcyZM5GcnIx69eph7969RT4IQERERCRGmYLW7t274e/vD3V1dezevfu153bu3FlUAevXrxd1fkkBDCjc66s0rVu3Vuz59TrDhw/H8OHDRdVDREREVJoyBa2uXbviwYMHMDU1fe32DTKZTPSGpURERERVVZmCllwuL/HPRERERFQ60ds7ZGZmSlEHERERUZUjejG8oaEhGjdujNatW8PLywstW7Ys16cNiYiIiKo60TNax48fR+fOnREbG4sePXrAyMgIH3/8MSZOnIh9+/ZJUSMRERFRpSQ6aDVv3hwTJ07E/v37kZqaisjISHz00UdYtGgROnbsKEWNRERERJVSufbRunLlCo4dO4bjx4/j2LFjyMvLQ6dOneDl5aXs+oiIiIgqLdFBy9zcHHl5eWjTpg1at26N7777Dq6urlLURkRERFSpib50aG5ujvT0dCQmJiIxMRF3795Fenq6FLURERERVWqig1ZcXBwePnyIyZMnIz8/H1OmTEGNGjXQrFkzTJw4UYoaiYiIiCqlcq3RMjQ0ROfOndGyZUt4eHhg165d+O2333Du3DnMmzdP2TUSERERVUqig9bOnTtx7NgxHDt2DJcuXYKJiQk8PT2xZMmSIjduJiIiIvrQiQ5aX331FVq1aoUhQ4agdevWqFevnhR1EREREVV6ooNWSkqKFHUQERERVTmiF8P/1yeffILk5GRl1UJERERUpbxV0IqMjERWVpayaiEiIiKqUt4qaBERERFR6cq1vcNLNjY2UFdXV1YtRB+ke8+ykJqRK/k4N1K4sTAR0bv2VkHr33//VVYdRB+ke8+y4LPoOLLyCt7JeNrqqjDS1XgnYxERUTmD1okTJ/Djjz/i1q1b2Lp1KywtLbF582bY2dmhZcuWyq6RqMpKzchFVl4BQgIawMG0muTjGelqwNJQW/JxiIiokOigtX37dvTt2xd9+vRBbGwscnJyAAAvXrzA3LlzsXfvXqUXSVTVOZhWQz1Lg4oug4iIlEz0YvjZs2dj9erVWLt2bZH1WS1atEBsbKxSiyMiIiKqzEQHratXr6JVq1bF2vX19fHs2TNl1ERERERUJYgOWhYWFrhx40ax9pMnT8Le3l4pRRERERFVBaKD1ldffYVRo0bh7NmzkMlkuH//Pn799VeMGzcOw4cPl6JGIiIiokpJ9GL4CRMm4Pnz5/D29kZ2djZatWoFTU1NjBs3DiNGjJCiRiKFd7XnFMBP6L2tpKeZ+Pfec0nHePQ0Cw6SjkBE9HbKtb3DnDlzMHnyZMTHx0Mul8PFxQXVqkn/0XT6sFXEnlOHxnoxbImkp134IZmFEdcwPztD0rHqyhLgrQnoa3PjZCJ6P5V7w1IdHR00btxYmbUQvda73HPqRko6RofHITUjl0FLJFM9TQDA0oAGsNN3knQsrccGwE7AtJqmpOMQEZWX6KCVnZ2N5cuX4+jRo0hJSYFcLi9ynFs8kNS451TlUNu0GlxMJP4+yTiTTkTvN9FBa+DAgYiIiED37t3RtGlTyGQyKeoiIiIiqvREB62//voLe/fuhYeHhxT1EBEREVUZord3sLS0hJ6enhS1EBEREVUpooPWokWL8O233+LOnTtS1ENERERUZYi+dNi4cWNkZ2fD3t4eOjo6Re53CABPnz5VWnFERERElZnooNWrVy/cu3cPc+fOhZmZGRfDExEREZVCdNA6deoUTp8+jfr160tRDxEREVGVIXqN1kcffYSsrCwpaiEiIiKqUkQHrXnz5mHs2LE4duwYnjx5grS0tCK/iIiIiKiQ6EuHfn5+AIC2bdsWaRcEATKZDAUF7+Y+dERERETvO9FB6+jRo1LUQURERFTliA5aXl5eUtRBREREVOWIDloA8OzZM6xfvx6XL1+GTCaDi4sLBg4cCAMD3uiXiIiI6CXRi+HPnTuH2rVrY8mSJXj69CkeP36MxYsXo3bt2oiNjZWiRiIiIqJKSfSM1pgxY9C5c2esXbsWamqFT8/Pz8fgwYMxevRoREZGKr1IIiIiospIdNA6d+5ckZAFAGpqapgwYQIaN26s1OKIiIiIKjPRlw719fWRmJhYrD0pKQl6enpKKYqIiIioKhAdtAICAjBo0CCEh4cjKSkJd+/eRVhYGAYPHoxevXpJUSMRERFRpST60uHChQshk8nQr18/5OfnAwDU1dXx9ddfY968eUovkIiIiKiyEh20NDQ0sHTpUgQHB+PmzZsQBAEODg7Q0dGRoj4iIiKiSqtc+2gBgI6ODlxdXZVZCxEREVGVIjpoZWRkYN68eTh8+DBSUlIgl8uLHL9165bSiiMiIiKqzEQHrcGDB+P48ePo27cvLCwsIJPJpKiLiIiIqNITHbT27duHv/76Cx4eHlLUQ0RERFRliN7ewcjICMbGxlLUUiVkZmbCxsYG48aNq+hSiIiIqIKJDlqzZs3C1KlTkZmZKUU9ld6cOXPQrFmzii6DiIiI3gOiLx0uWrQIN2/ehJmZGWxtbaGurl7k+Id8Y+nr16/jypUr6NSpE/7999+KLoeIiIgqmOig1bVrV6UWEBwcjB07duDKlSvQ1tZGixYt8MMPP8DJyUlpY0RGRmLBggWIiYlBcnIydu7cWeLrWLVqFRYsWIDk5GTUrVsXISEh8PT0LPM448aNw4IFC3Dq1Cml1U5ERESVl+igNW3aNKUWcPz4cQQGBqJJkybIz8/H5MmT4evri/j4eOjq6hY7PyoqCk2bNi02k3blyhUYGhrC3Ny82HMyMjJQv359fPnll/jss89KrCM8PByjR4/GqlWr4OHhgR9//BH+/v6Ij4+HtbU1AMDd3R05OTnFnnvw4EFER0ejTp06qFOnDoMWERERASjnhqXPnj3Dtm3bcPPmTYwfPx7GxsaIjY2FmZkZLC0tRfW1f//+Io83bNgAU1NTxMTEoFWrVkWOyeVyBAYGwtHREWFhYVBVVQUAXLt2Dd7e3hgzZgwmTJhQbAx/f3/4+/u/to7Fixdj0KBBGDx4MAAgJCQEBw4cQGhoKIKDgwEAMTExpT7/zJkzCAsLw9atW5Geno68vDzo6+tj6tSpb/4iEBERUZUkejH8hQsXUKdOHfzwww9YuHAhnj17BgDYuXMnJk2a9NYFPX/+HABK/GSjiooK9u7di/Pnz6Nfv36Qy+W4efMm2rRpg86dO5cYssoiNzcXMTEx8PX1LdLu6+tb5tmp4OBgJCUl4fbt21i4cCGGDBlSashauXIlXFxc0KRJk3LVS0RERJWD6KAVFBSEAQMG4Pr169DS0lK0+/v7IzIy8q2KEQQBQUFBaNmyJerVq1fiOTVr1sSRI0cQFRWF3r17o02bNmjbti1Wr15d7nEfP36MgoICmJmZFWk3MzPDgwcPyt1vaQIDAxEfH4/o6Gil901ERETvD9GXDqOjo/Hjjz8Wa7e0tHzrUDJixAhcuHABJ0+efO151tbW2LRpE7y8vGBvb4/169crZYf6V/sQBKFc/Q4YMOCtayEiIqLKT/SMlpaWFtLS0oq1X716FTVq1Ch3Id988w12796No0ePolatWq899+HDhxg6dCg6deqEzMxMjBkzptzjAkD16tWhqqpaLCimpKQUm+UiIiIiKivRQatLly6YOXMm8vLyABTOAiUmJmLixImlfqLvdQRBwIgRI7Bjxw4cOXIEdnZ2rz3/8ePHaNu2LZydnRXP2bJly1vtxK6hoQF3d3dEREQUaY+IiECLFi3K3S8RERF92ERfOly4cCE6dOgAU1NTZGVlwcvLCw8ePEDz5s0xZ84c0QUEBgbit99+w65du6Cnp6eYVTIwMIC2tnaRc+VyOfz8/GBjY4Pw8HCoqanB2dkZhw4dgre3NywtLUuc3UpPT8eNGzcUjxMSEhAXFwdjY2PF1g1BQUHo27cvGjdujObNm2PNmjVITEzEsGHDRL8mIiIiIqAcQUtfXx8nT57EkSNHEBsbC7lcjkaNGsHHx6dcBYSGhgIAWrduXaR9w4YNxdY6qaioIDg4GJ6entDQ0FC0u7q64tChQzAxMSlxjHPnzsHb21vxOCgoCADQv39/bNy4EQAQEBCAJ0+eYObMmUhOTka9evWwd+9e2NjYlOt1EREREZVrHy0AaNOmDdq0afPWBQiCIOr8du3aldjeoEGDUp/TunXrMo0zfPhwDB8+XFQ9RERERKUpc9DKysrC4cOH0bFjRwDApEmTiuySrqqqilmzZhXZ8oGIiIjoQ1bmoLVp0ybs2bNHEbRWrFiBunXrKtZRXblyBTVr1nzrTwASERERVRVlDlq//vprsRD122+/wd7eHgDwyy+/YOXKlQxa75F7z7KQmpH7TsYy0tWApaH2m08kIiL6gJQ5aF27dg116tRRPNbS0oKKyv92h2jatCkCAwOVWx2V271nWfBZdBxZeQXvZDxtdVUcGuvFsEVERPQfZQ5az58/h5ra/05/9OhRkeNyubzImi2qWKkZucjKK0BIQAM4mFaTdKwbKekYHR6H1IxcBi0iIqL/KHPQqlWrFv799184OTmVePzChQtv3NGd3j0H02qoZ2nwTsa6kZJeqfsnIiJStjIHrQ4dOmDq1Kn45JNPin2yMCsrCzNmzMAnn3yi9ALp/WekqwFtdVWMDo+TfCxtdVUY6Wq8+UQiIqL3QJmD1nfffYctW7bAyckJI0aMQJ06dSCTyXDlyhWsWLEC+fn5+O6776Ssld5TlobaODTW650svOeieyIiqkzKHLTMzMxw6tQpfP3115g4caJiA1CZTIZ27dph1apVvAHzB8zSUJsBiIiI6BWidoa3s7PD/v378fTpU8W9Ax0cHGBsbCxJcURERESVWbluwWNsbIymTZsquxYiIiKiKkXlzacQERERUXkwaBERERFJhEGLiIiISCIMWkREREQSKddieKIPBXe7JyKit8GgRVQC7nZPRETKwKBFVALudk9ERMrAoEVUCu52T0REb4uL4YmIiIgkwqBFREREJBEGLSIiIiKJMGgRERERSYRBi4iIiEgiDFpEREREEmHQIiIiIpIIgxYRERGRRBi0iIiIiCTCoEVEREQkEQYtIiIiIokwaBERERFJhEGLiIiISCJqFV3Ah0wQBABAWlqa0vtOf5EGeU4m0l+kIS1NpvT+iUqT/iIdBVkFSH+RjjR15f/dLuJFOpAjFP4uwfuIiCq3jIxMFGQVICMjU6k/a1/29fLn+OvIhLKcRZK4e/curKysKroMIiIiKoekpCTUqlXrtecwaFUguVyO+/fvQ09PDzJZybNOTZo0QXR09DurSYrxlNHn2/Qh9rlizi/LuWlpabCyskJSUhL09fXLXEdV9K7/PpfVu6zrfX2PvU0/5Xke32fS4ftM+veZIAh48eIFatasCRWV16/C4qXDCqSiovLGJKyqqvpO/9GQYjxl9Pk2fYh9rpjzxZyrr6//wf8AeNd/n8vqXdb1vr7H3qaf8jyP7zPp8H32bt5nBgYGZXoeF8O/5wIDAyv9eMro8236EPtcMee/6+9PZfe+fr3eZV3v63vsbfopz/P4PpPO+/r1+lDfZ7x0SCSxtLQ0GBgY4Pnz5+/l/zKJqgK+z+h9xRktIolpampi2rRp0NTUrOhSiKosvs/ofcUZLSIiIiKJcEaLiIiISCIMWkREREQSYdAiIiIikgiDFhEREZFEGLSIiIiIJMKgRVSBkpKS0Lp1a7i4uMDNzQ1bt26t6JKIqpQXL16gSZMmaNCgAVxdXbF27dqKLok+MNzegagCJScn4+HDh2jQoAFSUlLQqFEjXL16Fbq6uhVdGlGVUFBQgJycHOjo6CAzMxP16tVDdHQ0TExMKro0+kDwXodEFcjCwgIWFhYAAFNTUxgbG+Pp06cMWkRKoqqqCh0dHQBAdnY2CgoKwPkFepd46ZDoLURGRqJTp06oWbMmZDIZ/vjjj2LnrFq1CnZ2dtDS0oK7uztOnDhRYl/nzp2DXC6HlZWVxFUTVR7KeI89e/YM9evXR61atTBhwgRUr179HVVPxKBF9FYyMjJQv359rFixosTj4eHhGD16NCZPnozz58/D09MT/v7+SExMLHLekydP0K9fP6xZs+ZdlE1UaSjjPWZoaIh//vkHCQkJ+O233/Dw4cN3VT4R12gRKYtMJsPOnTvRtWtXRVuzZs3QqFEjhIaGKtqcnZ3RtWtXBAcHAwBycnLQrl07DBkyBH379n3XZRNVGuV9j/3X119/jTZt2qBHjx7vomQizmgRSSU3NxcxMTHw9fUt0u7r64tTp04BAARBwIABA9CmTRuGLCKRyvIee/jwIdLS0gAAaWlpiIyMhJOT0zuvlT5cXAxPJJHHjx+joKAAZmZmRdrNzMzw4MEDAEBUVBTCw8Ph5uamWHuyefNmuLq6vutyiSqdsrzH7t69i0GDBkEQBAiCgBEjRsDNza0iyqUPFIMWkcRkMlmRx4IgKNpatmwJuVxeEWURVRmve4+5u7sjLi6uAqoiKsRLh0QSqV69OlRVVRX/s34pJSWl2P/AiUg8vseoMmDQIpKIhoYG3N3dERERUaQ9IiICLVq0qKCqiKoOvseoMuClQ6K3kJ6ejhs3bigeJyQkIC4uDsbGxrC2tkZQUBD69u2Lxo0bo3nz5lizZg0SExMxbNiwCqyaqPLge4wqO27vQPQWjh07Bm9v72Lt/fv3x8aNGwEUbqY4f/58JCcno169eliyZAlatWr1jislqpz4HqPKjkGLiIiISCJco0VEREQkEQYtIiIiIokwaBERERFJhEGLiIiISCIMWkREREQSYdAiIiIikgiDFhEREZFEGLSIiIiIJMKgRUQVYvr06WjQoEGFjT9lyhQMHTq0wsZ/V44dOwaZTIZnz569k/FycnJgbW2NmJiYdzIe0fuOO8MTkdLJZLLXHu/fvz9WrFiBnJwcmJiYvKOq/ufhw4dwdHTEhQsXYGtr+87Hl0rr1q3RoEEDhISEKNpyc3Px9OlTmJmZvfH7oizLli3D7t27cejQoXcyHtH7jDeVJiKlS05OVvw5PDwcU6dOxdWrVxVt2traqFatGqpVq1YR5WH9+vVo3rx5pQlZeXl5UFdXL9dzNTQ0YG5uruSKXq9Pnz4YP348Ll++DGdn53c6NtH7hpcOiUjpzM3NFb8MDAwgk8mKtb166XDAgAHo2rUr5s6dCzMzMxgaGmLGjBnIz8/H+PHjYWxsjFq1auGnn34qMta9e/cQEBAAIyMjmJiYoEuXLrh9+/Zr6wsLC0Pnzp2LtL148QJ9+vSBrq4uLCwssGTJErRu3RqjR49WnJObm4sJEybA0tISurq6aNasGY4dO6Y4vnHjRhgaGuLAgQNwdnZGtWrV4OfnVyR4AsCGDRvg7OwMLS0tfPTRR1i1apXi2O3btyGTybBlyxa0bt0aWlpa+OWXX/DkyRP06tULtWrVgo6ODlxdXfH7778X+fodP34cS5cuhUwmg0wmw+3bt0u8dLh9+3bUrVsXmpqasLW1xaJFi4rUZ2tri7lz52LgwIHQ09ODtbU11qxZU+TrMGLECFhYWEBLSwu2trYIDg5WHDcxMUGLFi2K1Ef0oWLQIqL3xpEjR3D//n1ERkZi8eLFmD59Ojp27AgjIyOcPXsWw4YNw7Bhw5CUlAQAyMzMhLe3N6pVq4bIyEicPHlSEW5yc3NLHCM1NRX//vsvGjduXKQ9KCgIUVFR2L17NyIiInDixAnExsYWOefLL79EVFQUwsLCcOHCBfTo0QN+fn64fv264pzMzEwsXLgQmzdvRmRkJBITEzFu3DjF8bVr12Ly5MmYM2cOLl++jLlz52LKlCn4+eefi4z17bffYuTIkbh8+TLat2+P7OxsuLu7Y8+ePfj3338xdOhQ9O3bF2fPngUALF26FM2bN8eQIUOQnJyM5ORkWFlZFXv9MTEx6NmzJz7//HNcvHgR06dPx5QpU7Bx48Yi5y1atAiNGzfG+fPnMXz4cHz99de4cuUKgP9dGtyyZQuuXr2KX375pdjsYNOmTXHixIkSvwdEHxSBiEhCGzZsEAwMDIq1T5s2Tahfv77icf/+/QUbGxuhoKBA0ebk5CR4enoqHufn5wu6urrC77//LgiCIKxfv15wcnIS5HK54pycnBxBW1tbOHDgQIn1nD9/XgAgJCYmKtrS0tIEdXV1YevWrYq2Z8+eCTo6OsKoUaMEQRCEGzduCDKZTLh3716R/tq2bStMmjRJ8VoBCDdu3FAcX7lypWBmZqZ4bGVlJfz2229F+pg1a5bQvHlzQRAEISEhQQAghISElFj/f3Xo0EEYO3as4rGXl5ei3peOHj0qABBSU1MFQRCE3r17C+3atStyzvjx4wUXFxfFYxsbG+GLL75QPJbL5YKpqakQGhoqCIIgfPPNN0KbNm2KfN1ftXTpUsHW1vaNr4GoquMaLSJ6b9StWxcqKv+baDczM0O9evUUj1VVVWFiYoKUlBQAhbMzN27cgJ6eXpF+srOzcfPmzRLHyMrKAgBoaWkp2m7duoW8vDw0bdpU0WZgYAAnJyfF49jYWAiCgDp16hTp79UF/To6Oqhdu7bisYWFhaLeR48eISkpCYMGDcKQIUMU5+Tn58PAwKBIv6/OuBUUFGDevHkIDw/HvXv3kJOTg5ycHOjq6pb4Oktz+fJldOnSpUibh4cHQkJCUFBQAFVVVQCAm5ub4vjLS78vX8eAAQPQrl07ODk5wc/PDx07doSvr2+RPrW1tZGZmSmqNqKqiEGLiN4bry74lslkJbbJ5XIAgFwuh7u7O3799ddifdWoUaPEMapXrw6g8BLiy3OE///w9aufyhP+86FsuVwOVVVVxMTEKMLIS/9d1F9SvS/7eVn32rVr0axZsyLnvdrnqwFq0aJFWLJkCUJCQuDq6gpdXV2MHj261EukpREE4bWv83Wv42X9jRo1QkJCAvbt24dDhw6hZ8+e8PHxwbZt2xTnP336tNTvAdGHhEGLiCqtRo0aITw8HKamptDX1y/Tc2rXrg19fX3Ex8crZqdq164NdXV1/P3334p1TWlpabh+/Tq8vLwAAA0bNkRBQQFSUlLg6elZrnrNzMxgaWmJW7duoU+fPqKee+LECXTp0gVffPEFgMLQdv369SKf6tPQ0EBBQcFr+3FxccHJkyeLtJ06dQp16tQpFvZeR19fHwEBAQgICED37t3h5+eHp0+fwtjYGADw77//omHDhmXuj6iq4mJ4Iqq0+vTpg+rVq6NLly44ceIEEhIScPz4cYwaNQp3794t8TkqKirw8fEpEjb09PTQv39/jB8/HkePHsWlS5cwcOBAqKioKGZ/6tSpgz59+qBfv37YsWMHEhISEB0djR9++AF79+4tc83Tp09HcHAwli5dimvXruHixYvYsGEDFi9e/NrnOTg4ICIiAqdOncLly5fx1Vdf4cGDB0XOsbW1xdmzZ3H79m08fvxYMQP1X2PHjsXhw4cxa9YsXLt2DT///DNWrFhRZMH+myxZsgRhYWG4cuUKrl27hq1bt8Lc3ByGhoaKc06cOFHsciLRh4hBi4gqLR0dHURGRsLa2hrdunWDs7MzBg4ciKysrNfOcA0dOhRhYWFFgsjixYvRvHlzdOzYET4+PvDw8FBswfDShg0b0K9fP4wdOxZOTk7o3Lkzzp49W+Kn+0ozePBgrFu3Dhs3boSrqyu8vLywceNG2NnZvfZ5U6ZMQaNGjdC+fXu0bt0a5ubm6Nq1a5Fzxo0bB1VVVbi4uKBGjRpITEws1k+jRo2wZcsWhIWFoV69epg6dSpmzpyJAQMGlPk1VKtWDT/88AMaN26MJk2a4Pbt29i7d69ifd3p06fx/PlzdO/evcx9ElVV3BmeiD44giDg448/xujRo9GrV68Sz8nIyIClpSUWLVqEQYMGveMKK7cePXqgYcOG+O677yq6FKIKxxktIvrgyGQyrFmzBvn5+Yq28+fP4/fff8fNmzcRGxurWEP16if06PVycnJQv359jBkzpqJLIXovcEaLiAiFQWvw4MG4evUqNDQ04O7ujsWLF8PV1bWiSyOiSoxBi4iIiEgivHRIREREJBEGLSIiIiKJMGgRERERSYRBi4iIiEgiDFpEREREEmHQIiIiIpIIgxYRERGRRBi0iIiIiCTCoEVEREQkkf8Df+Mr4WCq5m4AAAAASUVORK5CYII=", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "import numpy as np\n", "num_timebins = 20 \n", @@ -909,7 +292,7 @@ "plt.yscale(\"log\")\n", "plt.xlabel(f\"Time ({ts.time_units})\")\n", "plt.ylabel(f\"Genome-wide instantaneous coalescence rate\")\n", - "plt.legend();" + "#plt.legend();" ] }, { @@ -917,26 +300,17 @@ "id": "93a395f2-2fdb-4f2d-b9a0-a763510b79dc", "metadata": {}, "source": [ + "### Windowing in time and space\n", + "\n", "Like all other tskit statistics, we can window coalescence rates along the genome. Below you can see a burst of coalescence (red) at about 170 generations ago around 0.3Mb along the genome, with an absence of coalescence information (grey) within that population at more distant times for that genomic region. This is indicative of a selective sweep at that genomic location (particularly clear because of the cleanliness of simulated data)." ] }, { "cell_type": "code", - "execution_count": 9, + "execution_count": null, "id": "deaa639c-b4d6-460a-a1c0-c8416eb38d50", "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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", - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "time_breaks = np.concatenate(( # NB: first bin must start at sample time & last at infinity\n", " [0], np.logspace(np.log10(35), np.log10(ts.max_time/10), num_timebins - 2), [np.inf]\n", @@ -955,6 +329,50 @@ "plt.title(\"Local coalescence densities for population A\");" ] }, + { + "cell_type": "markdown", + "id": "657053da-0846-4eb4-ae4b-d7eeee2d8d2f", + "metadata": {}, + "source": [ + "## Information about a tree sequence's origin (\"provenance\")\n", + "\n", + "For reproducability, the [provenance table](https://tskit.dev/tskit/docs/stable/provenance.html) stores information about how a tree sequence was generated. The amount of detail is down to the tool(s) used to make the tree sequence. In this case, _msprime_ was used, which stores extensive provenance information including the simulated [demographic model](https://tskit.dev/msprime/docs/stable/demography.html). This can be plotted using the [demesdraw](https://grahamgower.github.io/demesdraw) software." + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "021117aa-a70b-4bcd-a955-baa543a6465b", + "metadata": {}, + "outputs": [], + "source": [ + "import sys\n", + "if sys.platform == 'emscripten': # only needed for jupyterlite to load demesdraw\n", + " await micropip.install(\"demesdraw\")\n", + "\n", + "import demesdraw\n", + "import msprime\n", + "\n", + "first_provenance_entry = ts.provenance(0)\n", + "cmd, parameters = msprime.provenance.parse_provenance(first_provenance_entry, ts)\n", + "assert cmd == \"sim_ancestry\" # just check we have the right (zeroth) provenance entry\n", + "\n", + "msprime_demography_object = parameters[\"demography\"]\n", + "demesdraw.tubes(\n", + " msprime_demography_object.to_demes(),\n", + " colours={\"A\": \"tab:blue\", \"B\": \"tab:orange\", \"C\": \"tab:green\", \"D\": \"tab:red\"},\n", + " log_time=False,\n", + ");" + ] + }, + { + "cell_type": "markdown", + "id": "f2e63d6c-6881-4860-b226-4ff7dd9dd94f", + "metadata": {}, + "source": [ + "The demography explains the pattern that was seen in the PCA and the cross-coalescence rates, where populations C and D split more recently than A and B." + ] + }, { "cell_type": "markdown", "id": "6de5e1d0-2e10-4a71-a1ae-6c90bed6c103", @@ -962,33 +380,19 @@ "source": [ "## Tree plotting\n", "\n", - "_Tskit_ records ancestral trees along the genome. These can be easily plotted" + "The tree sequence allows fast extraction of ancestral trees along the genome, which can be easily plotted" ] }, { "cell_type": "code", - "execution_count": 10, + "execution_count": null, "id": "904b74ab-8fd2-4d52-8e18-5371e4ead31a", "metadata": {}, - "outputs": [ - { - "data": { - "image/svg+xml": [ - "Tree at genome position 0" - ], - "text/plain": [ - "" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ - "from IPython.display import SVG # only for starting up Jupyterlite: normally just bare tree.draw_svg() works\n", "\n", "first_tree = ts.first()\n", - "display(SVG(first_tree.draw_svg(size=(1000, 250), title=\"Tree at genome position 0\", node_labels={})))" + "first_tree.draw_svg(size=(1000, 250), title=\"Tree at genome position 0\", node_labels={})" ] }, { @@ -996,34 +400,22 @@ "id": "ccd74ad8-76dc-4836-b3e0-dd3669cc78ba", "metadata": {}, "source": [ - "_Tskit_ tree plots can be decorated using a variety of styles (see the [viz tutorial](https://tskit.dev/tutorials/viz.html)). Here we plot the tree at position 0.3 Mb, to see population A really does have a cluster of coalescences around 170 generations ago (at the dotted magenta line: it does!)." + "_Tskit_ tree plots can be decorated using a variety of styles (see the [viz tutorial](https://tskit.dev/tutorials/viz.html)). Here we plot the tree at position 0.3 Mb, to see if population A really does have a cluster of coalescences around 170 generations ago (at the dotted magenta line: it does!)." ] }, { "cell_type": "code", - "execution_count": 11, + "execution_count": null, "id": "b81ab065-37bd-41f7-9ed5-2b9c34d4e54a", "metadata": { "scrolled": true }, - "outputs": [ - { - "data": { - "image/svg+xml": [ - "KeyPopulation APopulation BPopulation CPopulation DTime ago (generations)017050010001500Tree at genome position 300,000 bp" - ], - "text/plain": [ - "'KeyPopulation APopulation BPopulation CPopulation DTime ago (generations)017050010001500Tree at genome position 300,000 bp'" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], + "outputs": [], "source": [ "from matplotlib import colors\n", "styles = [f\".leaf.p{p.id}>.sym\" + \"{fill:\" + colors.to_hex(f\"C{p.id}\") + \"}\" for p in ts.populations()]\n", "\n", + "# Making a legend can be done, but involves some hand-positioning of elements\n", "legend = 'Key'\n", "legend += \"\".join([ # The legend lines, one for each population.\n", " f'' # an SVG group\n", @@ -1032,7 +424,7 @@ " for p in ts.populations() if len(ts.samples(p.id)) > 0\n", "])\n", "\n", - "display(ts.at(0.3e6).draw_svg(\n", + "ts.at(0.3e6).draw_svg(\n", " size=(1000, 250),\n", " node_labels={}, # Remove all node labels for a clearer viz\n", " mutation_labels={},\n", @@ -1042,7 +434,7 @@ " y_gridlines=True,\n", " y_ticks=[0, 170, 500, 1000, 1500],\n", " title=\"Tree at genome position 300,000 bp\",\n", - "))" + ")" ] }, { @@ -1050,13 +442,15 @@ "id": "39364361-7095-4029-8cc0-f4b825fd307f", "metadata": {}, "source": [ - "## Other analyses\n", - "This notebook is fully interactive. Feel free to run other analysis below. Tutorial material is avaiable at https://tskit.dev/tutorials/, and there are also other notebooks in this JupyterLite instance: View -> File Browser will reveal them on the right if they are not shown." + "## Other resources and analyses\n", + "This notebook is fully interactive. Feel free to change the analyses above or perform more analysis below. \n", + "\n", + "Extensive static tutorial material is available at https://tskit.dev/tutorials/, and there are also other notebooks in this JupyterLite instance: View → File Browser will reveal them on the right-hand toolbar if they are not shown." ] }, { "cell_type": "code", - "execution_count": 12, + "execution_count": null, "id": "0460fee3-4520-4827-9d63-fafdc491a78b", "metadata": {}, "outputs": [], @@ -1067,7 +461,7 @@ { "cell_type": "code", "execution_count": null, - "id": "e13bb919-0491-4d33-bfb9-ee2d60c68a79", + "id": "3323c1ea-62f4-4bf8-a228-6fdc1684d914", "metadata": {}, "outputs": [], "source": [] diff --git a/requirements.txt b/requirements.txt index 099f238..e99dcdc 100644 --- a/requirements.txt +++ b/requirements.txt @@ -27,3 +27,7 @@ ipyevents>=2.0.1 ipympl>=0.8.2 # Python: ipycanvas library for Jupyter notebooks (optional) ipycanvas>=0.9.1 + +# For running tests of the notebooks +demesdraw +stdpopsim>=0.3 \ No newline at end of file