From d5d091793fc6319f720029e9fa2fd1641f4e3d7e Mon Sep 17 00:00:00 2001 From: Greg Johnston Date: Thu, 30 Nov 2023 19:55:32 -0500 Subject: [PATCH] initial commit --- .github/workflows/publish-book.yml | 36 ++ .gitignore | 1 + README.md | 15 + book.toml | 10 + mdbook-admonish.css | 345 +++++++++++++++ src/01_introduction.md | 22 + src/02_getting_started.md | 97 ++++ src/15_global_state.md | 402 +++++++++++++++++ src/SUMMARY.md | 52 +++ src/appendix_dx.md | 62 +++ src/appendix_reactive_graph.md | 243 ++++++++++ src/async/10_resources.md | 136 ++++++ src/async/11_suspense.md | 156 +++++++ src/async/12_transition.md | 83 ++++ src/async/13_actions.md | 176 ++++++++ src/async/README.md | 9 + src/deployment/README.md | 74 ++++ src/deployment/binary_size.md | 72 +++ src/interlude_projecting_children.md | 175 ++++++++ src/interlude_styling.md | 112 +++++ src/islands.md | 489 +++++++++++++++++++++ src/metadata.md | 49 +++ src/progressive_enhancement/README.md | 36 ++ src/progressive_enhancement/action_form.md | 100 +++++ src/reactivity/14_create_effect.md | 329 ++++++++++++++ src/reactivity/README.md | 5 + src/reactivity/interlude_functions.md | 76 ++++ src/reactivity/working_with_signals.md | 140 ++++++ src/router/16_routes.md | 144 ++++++ src/router/17_nested_routing.md | 324 ++++++++++++++ src/router/18_params_and_queries.md | 202 +++++++++ src/router/19_a.md | 155 +++++++ src/router/20_form.md | 180 ++++++++ src/router/README.md | 23 + src/server/25_server_functions.md | 150 +++++++ src/server/26_extractors.md | 87 ++++ src/server/27_response.md | 73 +++ src/server/README.md | 11 + src/ssr/21_cargo_leptos.md | 37 ++ src/ssr/22_life_cycle.md | 43 ++ src/ssr/23_ssr_modes.md | 156 +++++++ src/ssr/24_hydration_bugs.md | 161 +++++++ src/ssr/README.md | 21 + src/testing.md | 219 +++++++++ src/view/01_basic_component.md | 225 ++++++++++ src/view/02_dynamic_attributes.md | 262 +++++++++++ src/view/03_components.md | 481 ++++++++++++++++++++ src/view/04_iteration.md | 265 +++++++++++ src/view/04b_iteration.md | 278 ++++++++++++ src/view/05_forms.md | 250 +++++++++++ src/view/06_control_flow.md | 384 ++++++++++++++++ src/view/07_errors.md | 175 ++++++++ src/view/08_parent_child.md | 463 +++++++++++++++++++ src/view/09_component_children.md | 229 ++++++++++ src/view/README.md | 5 + src/view/builder.md | 98 +++++ video/async.mov | Bin 0 -> 210450 bytes video/in-order.mov | Bin 0 -> 269735 bytes video/out-of-order.mov | Bin 0 -> 267043 bytes 59 files changed, 8603 insertions(+) create mode 100644 .github/workflows/publish-book.yml create mode 100644 .gitignore create mode 100644 README.md create mode 100644 book.toml create mode 100644 mdbook-admonish.css create mode 100644 src/01_introduction.md create mode 100644 src/02_getting_started.md create mode 100644 src/15_global_state.md create mode 100644 src/SUMMARY.md create mode 100644 src/appendix_dx.md create mode 100644 src/appendix_reactive_graph.md create mode 100644 src/async/10_resources.md create mode 100644 src/async/11_suspense.md create mode 100644 src/async/12_transition.md create mode 100644 src/async/13_actions.md create mode 100644 src/async/README.md create mode 100644 src/deployment/README.md create mode 100644 src/deployment/binary_size.md create mode 100644 src/interlude_projecting_children.md create mode 100644 src/interlude_styling.md create mode 100644 src/islands.md create mode 100644 src/metadata.md create mode 100644 src/progressive_enhancement/README.md create mode 100644 src/progressive_enhancement/action_form.md create mode 100644 src/reactivity/14_create_effect.md create mode 100644 src/reactivity/README.md create mode 100644 src/reactivity/interlude_functions.md create mode 100644 src/reactivity/working_with_signals.md create mode 100644 src/router/16_routes.md create mode 100644 src/router/17_nested_routing.md create mode 100644 src/router/18_params_and_queries.md create mode 100644 src/router/19_a.md create mode 100644 src/router/20_form.md create mode 100644 src/router/README.md create mode 100644 src/server/25_server_functions.md create mode 100644 src/server/26_extractors.md create mode 100644 src/server/27_response.md create mode 100644 src/server/README.md create mode 100644 src/ssr/21_cargo_leptos.md create mode 100644 src/ssr/22_life_cycle.md create mode 100644 src/ssr/23_ssr_modes.md create mode 100644 src/ssr/24_hydration_bugs.md create mode 100644 src/ssr/README.md create mode 100644 src/testing.md create mode 100644 src/view/01_basic_component.md create mode 100644 src/view/02_dynamic_attributes.md create mode 100644 src/view/03_components.md create mode 100644 src/view/04_iteration.md create mode 100644 src/view/04b_iteration.md create mode 100644 src/view/05_forms.md create mode 100644 src/view/06_control_flow.md create mode 100644 src/view/07_errors.md create mode 100644 src/view/08_parent_child.md create mode 100644 src/view/09_component_children.md create mode 100644 src/view/README.md create mode 100644 src/view/builder.md create mode 100644 video/async.mov create mode 100644 video/in-order.mov create mode 100644 video/out-of-order.mov diff --git a/.github/workflows/publish-book.yml b/.github/workflows/publish-book.yml new file mode 100644 index 0000000..dee5550 --- /dev/null +++ b/.github/workflows/publish-book.yml @@ -0,0 +1,36 @@ +name: Deploy book +on: + push: + paths: ["**"] + branches: + - main + +jobs: + deploy: + runs-on: ubuntu-latest + permissions: + contents: write # To push a branch + pull-requests: write # To create a PR from that branch + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - name: Install mdbook + run: | + mkdir mdbook + curl -sSL https://github.com/rust-lang/mdBook/releases/download/v0.4.27/mdbook-v0.4.27-x86_64-unknown-linux-gnu.tar.gz | tar -xz --directory=./mdbook + echo `pwd`/mdbook >> $GITHUB_PATH + - name: Deploy GitHub Pages + run: | + mdbook build + git worktree add gh-pages + git config user.name "Deploy book from CI" + git config user.email "" + cd gh-pages + # Delete the ref to avoid keeping history. + git update-ref -d refs/heads/gh-pages + rm -rf * + mv book/* . + git add . + git commit -m "Deploy book $GITHUB_SHA to gh-pages" + git push --force --set-upstream origin gh-pages diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..e9c0728 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +book \ No newline at end of file diff --git a/README.md b/README.md new file mode 100644 index 0000000..8570b25 --- /dev/null +++ b/README.md @@ -0,0 +1,15 @@ +This project contains the code for the introductory guide/book for the [Leptos](https://leptos.dev) web framework. + +It is built using `mdbook`. You can view a local copy by installing `mdbook` + +```bash +cargo install mdbook +``` + +and run the book with + +``` +mdbook serve +``` + +It should be available at `http://localhost:3000`. diff --git a/book.toml b/book.toml new file mode 100644 index 0000000..cd7ca14 --- /dev/null +++ b/book.toml @@ -0,0 +1,10 @@ +[output.html] +additional-css = ["./mdbook-admonish.css"] +[output.html.playground] +runnable = false + +[preprocessor] + +[preprocessor.admonish] +command = "mdbook-admonish" +assets_version = "3.0.1" # do not edit: managed by `mdbook-admonish install` diff --git a/mdbook-admonish.css b/mdbook-admonish.css new file mode 100644 index 0000000..a0a566a --- /dev/null +++ b/mdbook-admonish.css @@ -0,0 +1,345 @@ +@charset "UTF-8"; +:root { + --md-admonition-icon--admonish-note: url("data:image/svg+xml;charset=utf-8,"); + --md-admonition-icon--admonish-abstract: url("data:image/svg+xml;charset=utf-8,"); + --md-admonition-icon--admonish-info: url("data:image/svg+xml;charset=utf-8,"); + --md-admonition-icon--admonish-tip: url("data:image/svg+xml;charset=utf-8,"); + --md-admonition-icon--admonish-success: url("data:image/svg+xml;charset=utf-8,"); + --md-admonition-icon--admonish-question: url("data:image/svg+xml;charset=utf-8,"); + --md-admonition-icon--admonish-warning: url("data:image/svg+xml;charset=utf-8,"); + --md-admonition-icon--admonish-failure: url("data:image/svg+xml;charset=utf-8,"); + --md-admonition-icon--admonish-danger: url("data:image/svg+xml;charset=utf-8,"); + --md-admonition-icon--admonish-bug: url("data:image/svg+xml;charset=utf-8,"); + --md-admonition-icon--admonish-example: url("data:image/svg+xml;charset=utf-8,"); + --md-admonition-icon--admonish-quote: url("data:image/svg+xml;charset=utf-8,"); + --md-details-icon: url("data:image/svg+xml;charset=utf-8,"); +} + +:is(.admonition) { + display: flow-root; + margin: 1.5625em 0; + padding: 0 1.2rem; + color: var(--fg); + page-break-inside: avoid; + background-color: var(--bg); + border: 0 solid black; + border-inline-start-width: 0.4rem; + border-radius: 0.2rem; + box-shadow: 0 0.2rem 1rem rgba(0, 0, 0, 0.05), 0 0 0.1rem rgba(0, 0, 0, 0.1); +} +@media print { + :is(.admonition) { + box-shadow: none; + } +} +:is(.admonition) > * { + box-sizing: border-box; +} +:is(.admonition) :is(.admonition) { + margin-top: 1em; + margin-bottom: 1em; +} +:is(.admonition) > .tabbed-set:only-child { + margin-top: 0; +} +html :is(.admonition) > :last-child { + margin-bottom: 1.2rem; +} + +a.admonition-anchor-link { + display: none; + position: absolute; + left: -1.2rem; + padding-right: 1rem; +} +a.admonition-anchor-link:link, a.admonition-anchor-link:visited { + color: var(--fg); +} +a.admonition-anchor-link:link:hover, a.admonition-anchor-link:visited:hover { + text-decoration: none; +} +a.admonition-anchor-link::before { + content: "§"; +} + +:is(.admonition-title, summary.admonition-title) { + position: relative; + min-height: 4rem; + margin-block: 0; + margin-inline: -1.6rem -1.2rem; + padding-block: 0.8rem; + padding-inline: 4.4rem 1.2rem; + font-weight: 700; + background-color: rgba(68, 138, 255, 0.1); + print-color-adjust: exact; + -webkit-print-color-adjust: exact; + display: flex; +} +:is(.admonition-title, summary.admonition-title) p { + margin: 0; +} +html :is(.admonition-title, summary.admonition-title):last-child { + margin-bottom: 0; +} +:is(.admonition-title, summary.admonition-title)::before { + position: absolute; + top: 0.625em; + inset-inline-start: 1.6rem; + width: 2rem; + height: 2rem; + background-color: #448aff; + print-color-adjust: exact; + -webkit-print-color-adjust: exact; + mask-image: url('data:image/svg+xml;charset=utf-8,'); + -webkit-mask-image: url('data:image/svg+xml;charset=utf-8,'); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-size: contain; + content: ""; +} +:is(.admonition-title, summary.admonition-title):hover a.admonition-anchor-link { + display: initial; +} + +details.admonition > summary.admonition-title::after { + position: absolute; + top: 0.625em; + inset-inline-end: 1.6rem; + height: 2rem; + width: 2rem; + background-color: currentcolor; + mask-image: var(--md-details-icon); + -webkit-mask-image: var(--md-details-icon); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-size: contain; + content: ""; + transform: rotate(0deg); + transition: transform 0.25s; +} +details[open].admonition > summary.admonition-title::after { + transform: rotate(90deg); +} + +:is(.admonition):is(.admonish-note) { + border-color: #448aff; +} + +:is(.admonish-note) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(68, 138, 255, 0.1); +} +:is(.admonish-note) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #448aff; + mask-image: var(--md-admonition-icon--admonish-note); + -webkit-mask-image: var(--md-admonition-icon--admonish-note); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +:is(.admonition):is(.admonish-abstract, .admonish-summary, .admonish-tldr) { + border-color: #00b0ff; +} + +:is(.admonish-abstract, .admonish-summary, .admonish-tldr) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(0, 176, 255, 0.1); +} +:is(.admonish-abstract, .admonish-summary, .admonish-tldr) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #00b0ff; + mask-image: var(--md-admonition-icon--admonish-abstract); + -webkit-mask-image: var(--md-admonition-icon--admonish-abstract); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +:is(.admonition):is(.admonish-info, .admonish-todo) { + border-color: #00b8d4; +} + +:is(.admonish-info, .admonish-todo) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(0, 184, 212, 0.1); +} +:is(.admonish-info, .admonish-todo) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #00b8d4; + mask-image: var(--md-admonition-icon--admonish-info); + -webkit-mask-image: var(--md-admonition-icon--admonish-info); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +:is(.admonition):is(.admonish-tip, .admonish-hint, .admonish-important) { + border-color: #00bfa5; +} + +:is(.admonish-tip, .admonish-hint, .admonish-important) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(0, 191, 165, 0.1); +} +:is(.admonish-tip, .admonish-hint, .admonish-important) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #00bfa5; + mask-image: var(--md-admonition-icon--admonish-tip); + -webkit-mask-image: var(--md-admonition-icon--admonish-tip); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +:is(.admonition):is(.admonish-success, .admonish-check, .admonish-done) { + border-color: #00c853; +} + +:is(.admonish-success, .admonish-check, .admonish-done) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(0, 200, 83, 0.1); +} +:is(.admonish-success, .admonish-check, .admonish-done) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #00c853; + mask-image: var(--md-admonition-icon--admonish-success); + -webkit-mask-image: var(--md-admonition-icon--admonish-success); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +:is(.admonition):is(.admonish-question, .admonish-help, .admonish-faq) { + border-color: #64dd17; +} + +:is(.admonish-question, .admonish-help, .admonish-faq) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(100, 221, 23, 0.1); +} +:is(.admonish-question, .admonish-help, .admonish-faq) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #64dd17; + mask-image: var(--md-admonition-icon--admonish-question); + -webkit-mask-image: var(--md-admonition-icon--admonish-question); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +:is(.admonition):is(.admonish-warning, .admonish-caution, .admonish-attention) { + border-color: #ff9100; +} + +:is(.admonish-warning, .admonish-caution, .admonish-attention) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(255, 145, 0, 0.1); +} +:is(.admonish-warning, .admonish-caution, .admonish-attention) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #ff9100; + mask-image: var(--md-admonition-icon--admonish-warning); + -webkit-mask-image: var(--md-admonition-icon--admonish-warning); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +:is(.admonition):is(.admonish-failure, .admonish-fail, .admonish-missing) { + border-color: #ff5252; +} + +:is(.admonish-failure, .admonish-fail, .admonish-missing) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(255, 82, 82, 0.1); +} +:is(.admonish-failure, .admonish-fail, .admonish-missing) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #ff5252; + mask-image: var(--md-admonition-icon--admonish-failure); + -webkit-mask-image: var(--md-admonition-icon--admonish-failure); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +:is(.admonition):is(.admonish-danger, .admonish-error) { + border-color: #ff1744; +} + +:is(.admonish-danger, .admonish-error) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(255, 23, 68, 0.1); +} +:is(.admonish-danger, .admonish-error) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #ff1744; + mask-image: var(--md-admonition-icon--admonish-danger); + -webkit-mask-image: var(--md-admonition-icon--admonish-danger); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +:is(.admonition):is(.admonish-bug) { + border-color: #f50057; +} + +:is(.admonish-bug) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(245, 0, 87, 0.1); +} +:is(.admonish-bug) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #f50057; + mask-image: var(--md-admonition-icon--admonish-bug); + -webkit-mask-image: var(--md-admonition-icon--admonish-bug); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +:is(.admonition):is(.admonish-example) { + border-color: #7c4dff; +} + +:is(.admonish-example) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(124, 77, 255, 0.1); +} +:is(.admonish-example) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #7c4dff; + mask-image: var(--md-admonition-icon--admonish-example); + -webkit-mask-image: var(--md-admonition-icon--admonish-example); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +:is(.admonition):is(.admonish-quote, .admonish-cite) { + border-color: #9e9e9e; +} + +:is(.admonish-quote, .admonish-cite) > :is(.admonition-title, summary.admonition-title) { + background-color: rgba(158, 158, 158, 0.1); +} +:is(.admonish-quote, .admonish-cite) > :is(.admonition-title, summary.admonition-title)::before { + background-color: #9e9e9e; + mask-image: var(--md-admonition-icon--admonish-quote); + -webkit-mask-image: var(--md-admonition-icon--admonish-quote); + mask-repeat: no-repeat; + -webkit-mask-repeat: no-repeat; + mask-size: contain; + -webkit-mask-repeat: no-repeat; +} + +.navy :is(.admonition) { + background-color: var(--sidebar-bg); +} + +.ayu :is(.admonition), +.coal :is(.admonition) { + background-color: var(--theme-hover); +} + +.rust :is(.admonition) { + background-color: var(--sidebar-bg); + color: var(--sidebar-fg); +} +.rust .admonition-anchor-link:link, .rust .admonition-anchor-link:visited { + color: var(--sidebar-fg); +} diff --git a/src/01_introduction.md b/src/01_introduction.md new file mode 100644 index 0000000..35d85d1 --- /dev/null +++ b/src/01_introduction.md @@ -0,0 +1,22 @@ +# Introduction + +This book is intended as an introduction to the [Leptos](https://github.com/leptos-rs/leptos) Web framework. +It will walk through the fundamental concepts you need to build applications, +beginning with a simple application rendered in the browser, and building toward a +full-stack application with server-side rendering and hydration. + +The guide doesn’t assume you know anything about fine-grained reactivity or the +details of modern Web frameworks. It does assume you are familiar with the Rust +programming language, HTML, CSS, and the DOM and basic Web APIs. + +Leptos is most similar to frameworks like [Solid](https://www.solidjs.com) (JavaScript) +and [Sycamore](https://sycamore-rs.netlify.app/) (Rust). There are some similarities +to other frameworks like React (JavaScript), Svelte (JavaScript), Yew (Rust), and +Dioxus (Rust), so knowledge of one of those frameworks may also make it easier to +understand Leptos. + +You can find more detailed docs for each part of the API at [Docs.rs](https://docs.rs/leptos/latest/leptos/). + +**Important Note**: This current version of the book reflects the `0.5.1` release. The CodeSandbox versions of the examples still reflect `0.4` and earlier APIs and are in the process of being updated. + +> The source code for the book is available [here](https://github.com/leptos-rs/book). PRs for typos or clarification are always welcome. diff --git a/src/02_getting_started.md b/src/02_getting_started.md new file mode 100644 index 0000000..9512dd1 --- /dev/null +++ b/src/02_getting_started.md @@ -0,0 +1,97 @@ +# Getting Started + +There are two basic paths to getting started with Leptos: + +1. Client-side rendering with [Trunk](https://trunkrs.dev/) +2. Full-stack rendering with [`cargo-leptos`](https://github.com/leptos-rs/cargo-leptos) + +For the early examples, it will be easiest to begin with Trunk. We’ll introduce +`cargo-leptos` a little later in this series. + +If you don’t already have it installed, you can install Trunk by running + +```bash +cargo install trunk +``` + +Create a basic Rust project + +```bash +cargo init leptos-tutorial +``` + +`cd` into your new `leptos-tutorial` project and add `leptos` as a dependency + +```bash +cargo add leptos --features=csr,nightly +``` + +> **Note**: This version of the book reflects the Leptos 0.5 release. The CodeSandbox examples have not yet been updated from 0.4 and earlier versions. + +Or you can leave off `nightly` if you're using stable Rust + +```bash +cargo add leptos --features=csr +``` + +> Using `nightly` Rust, and the `nightly` feature in Leptos enables the function-call syntax for signal getters and setters that is used in most of this book. +> +> To use nightly Rust, you can either opt into nightly for all your Rust projects by running +> +> ```bash +> rustup toolchain install nightly +> rustup default nightly +> ``` +> +> or only for this project +> +> ```bash +> rustup toolchain install nightly +> cd +> rustup override set nightly +> ``` +> +> [See here for more details.](https://doc.rust-lang.org/book/appendix-07-nightly-rust.html) +> +> If you’d rather use stable Rust with Leptos, you can do that too. In the guide and examples, you’ll just use the [`ReadSignal::get()`](https://docs.rs/leptos/latest/leptos/struct.ReadSignal.html#impl-SignalGet%3CT%3E-for-ReadSignal%3CT%3E) and [`WriteSignal::set()`](https://docs.rs/leptos/latest/leptos/struct.WriteSignal.html#impl-SignalGet%3CT%3E-for-ReadSignal%3CT%3E) methods instead of calling signal getters and setters as functions. + +Make sure you've added the `wasm32-unknown-unknown` target so that Rust can compile your code to WebAssembly to run in the browser. + +```bash +rustup target add wasm32-unknown-unknown +``` + +Create a simple `index.html` in the root of the `leptos-tutorial` directory + +```html + + + + + +``` + +And add a simple “Hello, world!” to your `main.rs` + +```rust +use leptos::*; + +fn main() { + mount_to_body(|| view! {

"Hello, world!"

}) +} +``` + +Your directory structure should now look something like this + +``` +leptos_tutorial +├── src +│ └── main.rs +├── Cargo.toml +├── index.html +``` + +Now run `trunk serve --open` from the root of the `leptos-tutorial` directory. +Trunk should automatically compile your app and open it in your default browser. +If you make edits to `main.rs`, Trunk will recompile your source code and +live-reload the page. diff --git a/src/15_global_state.md b/src/15_global_state.md new file mode 100644 index 0000000..57873be --- /dev/null +++ b/src/15_global_state.md @@ -0,0 +1,402 @@ +# Global State Management + +So far, we've only been working with local state in components, and we’ve seen how to coordinate state between parent and child components. On occasion, there are times where people look for a more general solution for global state management that can work throughout an application. + +In general, **you do not need this chapter.** The typical pattern is to compose your application out of components, each of which manages its own local state, not to store all state in a global structure. However, there are some cases (like theming, saving user settings, or sharing data between components in different parts of your UI) in which you may want to use some kind of global state management. + +The three best approaches to global state are + +1. Using the router to drive global state via the URL +2. Passing signals through context +3. Creating a global state struct and creating lenses into it with `create_slice` + +## Option #1: URL as Global State + +In many ways, the URL is actually the best way to store global state. It can be accessed from any component, anywhere in your tree. There are native HTML elements like `
` and `` that exist solely to update the URL. And it persists across page reloads and between devices; you can share a URL with a friend or send it from your phone to your laptop and any state stored in it will be replicated. + +The next few sections of the tutorial will be about the router, and we’ll get much more into these topics. + +But for now, we'll just look at options #2 and #3. + +## Option #2: Passing Signals through Context + +In the section on [parent-child communication](view/08_parent_child.md), we saw that you can use `provide_context` to pass signal from a parent component to a child, and `use_context` to read it in the child. But `provide_context` works across any distance. If you want to create a global signal that holds some piece of state, you can provide it and access it via context anywhere in the descendants of the component where you provide it. + +A signal provided via context only causes reactive updates where it is read, not in any of the components in between, so it maintains the power of fine-grained reactive updates, even at a distance. + +We start by creating a signal in the root of the app and providing it to +all its children and descendants using `provide_context`. + +```rust +#[component] +fn App() -> impl IntoView { + // here we create a signal in the root that can be consumed + // anywhere in the app. + let (count, set_count) = create_signal(0); + // we'll pass the setter to specific components, + // but provide the count itself to the whole app via context + provide_context(count); + + view! { + // SetterButton is allowed to modify the count + + // These consumers can only read from it + // But we could give them write access by passing `set_count` if we wanted + + + } +} +``` + +`` is the kind of counter we’ve written several times now. +(See the sandbox below if you don’t understand what I mean.) + +`` and `` both consume the signal we’re providing via +`use_context` and do something with it. + +```rust +/// A component that does some "fancy" math with the global count +#[component] +fn FancyMath() -> impl IntoView { + // here we consume the global count signal with `use_context` + let count = use_context::>() + // we know we just provided this in the parent component + .expect("there to be a `count` signal provided"); + let is_even = move || count() & 1 == 0; + + view! { +
+ "The number " + {count} + {move || if is_even() { + " is" + } else { + " is not" + }} + " even." +
+ } +} +``` + +Note that this same pattern can be applied to more complex state. If you have multiple fields you want to update independently, you can do that by providing some struct of signals: + +```rust +#[derive(Copy, Clone, Debug)] +struct GlobalState { + count: RwSignal, + name: RwSignal +} + +impl GlobalState { + pub fn new() -> Self { + Self { + count: create_rw_signal(0), + name: create_rw_signal("Bob".to_string()) + } + } +} + +#[component] +fn App() -> impl IntoView { + provide_context(GlobalState::new()); + + // etc. +} +``` + +## Option #3: Create a Global State Struct and Slices + +You may find it cumbersome to wrap each field of a structure in a separate signal like this. In some cases, it can be useful to create a plain struct with non-reactive fields, and then wrap that in a signal. + +```rust +#[derive(Copy, Clone, Debug, Default)] +struct GlobalState { + count: i32, + name: String +} + +#[component] +fn App() -> impl IntoView { + provide_context(create_rw_signal(GlobalState::default())); + + // etc. +} +``` + +But there’s a problem: because our whole state is wrapped in one signal, updating the value of one field will cause reactive updates in parts of the UI that only depend on the other. + +```rust +let state = expect_context::>(); +view! { + +

{move || state.with(|state| state.name.clone())}

+} +``` + +In this example, clicking the button will cause the text inside `

` to be updated, cloning `state.name` again! Because signals are the atomic unit of reactivity, updating any field of the signal triggers updates to everything that depends on the signal. + +There’s a better way. You can take fine-grained, reactive slices by using [`create_memo`](https://docs.rs/leptos/latest/leptos/fn.create_memo.html) or [`create_slice`](https://docs.rs/leptos/latest/leptos/fn.create_slice.html) (which uses `create_memo` but also provides a setter). “Memoizing” a value means creating a new reactive value which will only update when it changes. “Memoizing a slice” means creating a new reactive value which will only update when some field of the state struct updates. + +Here, instead of reading from the state signal directly, we create “slices” of that state with fine-grained updates via `create_slice`. Each slice signal only updates when the particular piece of the larger struct it accesses updates. This means you can create a single root signal, and then take independent, fine-grained slices of it in different components, each of which can update without notifying the others of changes. + +```rust +/// A component that updates the count in the global state. +#[component] +fn GlobalStateCounter() -> impl IntoView { + let state = expect_context::>(); + + // `create_slice` lets us create a "lens" into the data + let (count, set_count) = create_slice( + + // we take a slice *from* `state` + state, + // our getter returns a "slice" of the data + |state| state.count, + // our setter describes how to mutate that slice, given a new value + |state, n| state.count = n, + ); + + view! { +

+ +
+ "Count is: " {count} +
+ } +} +``` + +Clicking this button only updates `state.count`, so if we create another slice +somewhere else that only takes `state.name`, clicking the button won’t cause +that other slice to update. This allows you to combine the benefits of a top-down +data flow and of fine-grained reactive updates. + +> **Note**: There are some significant drawbacks to this approach. Both signals and memos need to own their values, so a memo will need to clone the field’s value on every change. The most natural way to manage state in a framework like Leptos is always to provide signals that are as locally-scoped and fine-grained as they can be, not to hoist everything up into global state. But when you _do_ need some kind of global state, `create_slice` can be a useful tool. + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/15-global-state-0-5-8c2ff6?file=%2Fsrc%2Fmain.rs%3A1%2C2) + + + +
+CodeSandbox Source + +```rust +use leptos::*; + +// So far, we've only been working with local state in components +// We've only seen how to communicate between parent and child components +// But there are also more general ways to manage global state +// +// The three best approaches to global state are +// 1. Using the router to drive global state via the URL +// 2. Passing signals through context +// 3. Creating a global state struct and creating lenses into it with `create_slice` +// +// Option #1: URL as Global State +// The next few sections of the tutorial will be about the router. +// So for now, we'll just look at options #2 and #3. + +// Option #2: Pass Signals through Context +// +// In virtual DOM libraries like React, using the Context API to manage global +// state is a bad idea: because the entire app exists in a tree, changing +// some value provided high up in the tree can cause the whole app to render. +// +// In fine-grained reactive libraries like Leptos, this is simply not the case. +// You can create a signal in the root of your app and pass it down to other +// components using provide_context(). Changing it will only cause rerendering +// in the specific places it is actually used, not the whole app. +#[component] +fn Option2() -> impl IntoView { + // here we create a signal in the root that can be consumed + // anywhere in the app. + let (count, set_count) = create_signal(0); + // we'll pass the setter to specific components, + // but provide the count itself to the whole app via context + provide_context(count); + + view! { +

"Option 2: Passing Signals"

+ // SetterButton is allowed to modify the count + + // These consumers can only read from it + // But we could give them write access by passing `set_count` if we wanted +
+ + +
+ } +} + +/// A button that increments our global counter. +#[component] +fn SetterButton(set_count: WriteSignal) -> impl IntoView { + view! { +
+ +
+ } +} + +/// A component that does some "fancy" math with the global count +#[component] +fn FancyMath() -> impl IntoView { + // here we consume the global count signal with `use_context` + let count = use_context::>() + // we know we just provided this in the parent component + .expect("there to be a `count` signal provided"); + let is_even = move || count() & 1 == 0; + + view! { +
+ "The number " + {count} + {move || if is_even() { + " is" + } else { + " is not" + }} + " even." +
+ } +} + +/// A component that shows a list of items generated from the global count. +#[component] +fn ListItems() -> impl IntoView { + // again, consume the global count signal with `use_context` + let count = use_context::>().expect("there to be a `count` signal provided"); + + let squares = move || { + (0..count()) + .map(|n| view! {
  • {n}"2" " is " {n * n}
  • }) + .collect::>() + }; + + view! { +
    +
      {squares}
    +
    + } +} + +// Option #3: Create a Global State Struct +// +// You can use this approach to build a single global data structure +// that holds the state for your whole app, and then access it by +// taking fine-grained slices using `create_slice` or `create_memo`, +// so that changing one part of the state doesn't cause parts of your +// app that depend on other parts of the state to change. + +#[derive(Default, Clone, Debug)] +struct GlobalState { + count: u32, + name: String, +} + +#[component] +fn Option3() -> impl IntoView { + // we'll provide a single signal that holds the whole state + // each component will be responsible for creating its own "lens" into it + let state = create_rw_signal(GlobalState::default()); + provide_context(state); + + view! { +

    "Option 3: Passing Signals"

    +
    +

    "Current Global State"

    +
    +                {move || {
    +                    format!("{:#?}", state.get())
    +                }}
    +            
    +
    +
    + + +
    + } +} + +/// A component that updates the count in the global state. +#[component] +fn GlobalStateCounter() -> impl IntoView { + let state = use_context::>().expect("state to have been provided"); + + // `create_slice` lets us create a "lens" into the data + let (count, set_count) = create_slice( + + // we take a slice *from* `state` + state, + // our getter returns a "slice" of the data + |state| state.count, + // our setter describes how to mutate that slice, given a new value + |state, n| state.count = n, + ); + + view! { +
    + +
    + "Count is: " {count} +
    + } +} + +/// A component that updates the count in the global state. +#[component] +fn GlobalStateInput() -> impl IntoView { + let state = use_context::>().expect("state to have been provided"); + + // this slice is completely independent of the `count` slice + // that we created in the other component + // neither of them will cause the other to rerun + let (name, set_name) = create_slice( + // we take a slice *from* `state` + state, + // our getter returns a "slice" of the data + |state| state.name.clone(), + // our setter describes how to mutate that slice, given a new value + |state, n| state.name = n, + ); + + view! { +
    + +
    + "Name is: " {name} +
    + } +} +// This `main` function is the entry point into the app +// It just mounts our component to the +// Because we defined it as `fn App`, we can now use it in a +// template as +fn main() { + leptos::mount_to_body(|| view! { }) +} +``` + +
    + diff --git a/src/SUMMARY.md b/src/SUMMARY.md new file mode 100644 index 0000000..be3144c --- /dev/null +++ b/src/SUMMARY.md @@ -0,0 +1,52 @@ +# Summary + +- [Introduction](./01_introduction.md) +- [Getting Started](./02_getting_started.md) +- [Building User Interfaces](./view/README.md) + - [A Basic Component](./view/01_basic_component.md) + - [Dynamic Attributes](./view/02_dynamic_attributes.md) + - [Components and Props](./view/03_components.md) + - [Iteration](./view/04_iteration.md) + - [Iterating over More Complex Data](./view/04b_iteration.md) + - [Forms and Inputs](./view/05_forms.md) + - [Control Flow](./view/06_control_flow.md) + - [Error Handling](./view/07_errors.md) + - [Parent-Child Communication](./view/08_parent_child.md) + - [Passing Children to Components](./view/09_component_children.md) + - [No Macros: The View Builder Syntax](./view/builder.md) +- [Reactivity](./reactivity/README.md) + - [Working with Signals](./reactivity/working_with_signals.md) + - [Responding to Changes with `create_effect`](./reactivity/14_create_effect.md) + - [Interlude: Reactivity and Functions](./reactivity/interlude_functions.md) +- [Testing](./testing.md) +- [Async](./async/README.md) + - [Loading Data with Resources](./async/10_resources.md) + - [Suspense](./async/11_suspense.md) + - [Transition](./async/12_transition.md) + - [Actions](./async/13_actions.md) +- [Interlude: Projecting Children](./interlude_projecting_children.md) +- [Global State Management](./15_global_state.md) +- [Router](./router/README.md) + - [Defining ``](./router/16_routes.md) + - [Nested Routing](./router/17_nested_routing.md) + - [Params and Queries](./router/18_params_and_queries.md) + - [`
    `](./router/19_a.md) + - [``](./router/20_form.md) +- [Interlude: Styling](./interlude_styling.md) +- [Metadata](./metadata.md) +- [Server Side Rendering](./ssr/README.md) + - [`cargo-leptos`](./ssr/21_cargo_leptos.md) + - [The Life of a Page Load](./ssr/22_life_cycle.md) + - [Async Rendering and SSR “Modes”](./ssr/23_ssr_modes.md) + - [Hydration Bugs](./ssr/24_hydration_bugs.md) +- [Working with the Server](./server/README.md) + - [Server Functions](./server/25_server_functions.md) + - [Extractors](./server/26_extractors.md) + - [Responses and Redirects](./server/27_response.md) +- [Progressive Enhancement and Graceful Degradation](./progressive_enhancement/README.md) + - [``s](./progressive_enhancement/action_form.md) +- [Deployment](./deployment/README.md) + - [Optimizing WASM Binary Size](./deployment/binary_size.md) +- [Guide: Islands](./islands.md) +- [Appendix: How Does the Reactive System Work?](./appendix_reactive_graph.md) +- [Appendix: Some Small DX Improvements](./appendix_dx.md) diff --git a/src/appendix_dx.md b/src/appendix_dx.md new file mode 100644 index 0000000..0b44659 --- /dev/null +++ b/src/appendix_dx.md @@ -0,0 +1,62 @@ +# A Running List of Small Developer Experience Improvements + +## Autocompletion inside `#[component]` and `#[server]` + +Because of the nature of macros (they can expand from anything to anything, but only if the input is exactly correct at that instant) it can be hard for rust-analyzer to do proper autocompletion and other support. + +But you can tell rust-analyzer to ignore certain proc macros. For `#[component]` and `#[server]` especially, which annotate function bodies but don't actually transform anything inside the body of your function, this can be really helpful. + +Note that this means that rust-analyzer doesn't know about your component props, which may generate its own set of errors or warnings in the IDE. + +VSCode `settings.json`: + +```json +"rust-analyzer.procMacro.ignored": { + "leptos_macro": [ + "component", + "server" + ], +} +``` + +neovim with lspconfig: + +```lua +require('lspconfig').rust_analyzer.setup { + -- Other Configs ... + settings = { + ["rust-analyzer"] = { + -- Other Settings ... + procMacro = { + ignored = { + leptos_macro = { + "component", + "server", + }, + }, + }, + }, + } +} +``` + +Helix, in `.helix/languages.toml`: + +```toml +[[language]] +name = "rust" + +[language-server.rust-analyzer] +config = { procMacro = { ignored = { leptos_macro = ["component", "server"] } } } +``` + +```admonish info +The Jetbrains `intellij-rust` plugin (RustRover as well) currently does not support dynamic config for macro exclusion. +However, the project currently maintains a hardcoded list of excluded macros. +As soon as [this open PR](https://github.com/intellij-rust/intellij-rust/pull/10873) is merged, the `component` and +`server` macro will be excluded automatically without additional configuration needed. + +Update (2023/10/02): +The `intellij-rust` plugin got deprecated in favor of RustRover at the same time the PR was opened, but an official +support request was made to integrate the contents of this PR. +``` diff --git a/src/appendix_reactive_graph.md b/src/appendix_reactive_graph.md new file mode 100644 index 0000000..b2c8277 --- /dev/null +++ b/src/appendix_reactive_graph.md @@ -0,0 +1,243 @@ +# Appendix: How does the Reactive System Work? + +You don’t need to know very much about how the reactive system actually works in order to use the library successfully. But it’s always useful to understand what’s going on behind the scenes once you start working with the framework at an advanced level. + +The reactive primitives you use are divided into three sets: + +- **Signals** (`ReadSignal`/`WriteSignal`, `RwSignal`, `Resource`, `Trigger`) Values you can actively change to trigger reactive updates. +- **Computations** (`Memo`s) Values that depend on signals (or other computations) and derive a new reactive value through some pure computation. +- **Effects** Observers that listen to changes in some signals or computations and run a function, causing some side effect. + +Derived signals are a kind of non-primitve computation: as plain closures, they simply allow you to refactor some repeated signal-based computation into a reusable function that can be called in multiple places, but they are not represented in the reactive system itself. + +All the other primitives actually exist in the reactive system as nodes in a reactive graph. + +Most of the work of the reactive system consists of propagating changes from signals to effects, possibly through some intervening memos. + +The assumption of the reactive system is that effects (like rendering to the DOM or making a network request) are orders of magnitude more expensive than things like updating a Rust data structure inside your app. + +So the **primary goal** of the reactive system is to **run effects as infrequently as possible**. + +Leptos does this through the construction of a reactive graph. + +> Leptos’s current reactive system is based heavily on the [Reactively](https://github.com/modderme123/reactively) library for JavaScript. You can read Milo’s article “[Super-Charging Fine-Grained Reactivity](https://dev.to/modderme123/super-charging-fine-grained-reactive-performance-47ph)” for an excellent account of its algorithm, as well as fine-grained reactivity in general—including some beautiful diagrams! + +## The Reactive Graph + +Signals, memos, and effects all share three characteristics: + +- **Value** They have a current value: either the signal’s value, or (for memos and effects) the value returned by the previous run, if any. +- **Sources** Any other reactive primitives they depend on. (For signals, this is an empty set.) +- **Subscribers** Any other reactive primitives that depend on them. (For effects, this is an empty set.) + +In reality then, signals, memos, and effects are just conventional names for one generic concept of a “node” in a reactive graph. Signals are always “root nodes,” with no sources/parents. Effects are always “leaf nodes,” with no subscribers. Memos typically have both sources and subscribers. + +### Simple Dependencies + +So imagine the following code: + +```rust +// A +let (name, set_name) = create_signal("Alice"); + +// B +let name_upper = create_memo(move |_| name.with(|n| n.to_uppercase())); + +// C +create_effect(move |_| { + log!("{}", name_upper()); +}); + +set_name("Bob"); +``` + +You can easily imagine the reactive graph here: `name` is the only signal/origin node, the `create_effect` is the only effect/terminal node, and there’s one intervening memo. + +``` +A (name) +| +B (name_upper) +| +C (the effect) +``` + +### Splitting Branches + +Let’s make it a little more complex. + +```rust +// A +let (name, set_name) = create_signal("Alice"); + +// B +let name_upper = create_memo(move |_| name.with(|n| n.to_uppercase())); + +// C +let name_len = create_memo(move |_| name.len()); + +// D +create_effect(move |_| { + log!("len = {}", name_len()); +}); + +// E +create_effect(move |_| { + log!("name = {}", name_upper()); +}); +``` + +This is also pretty straightforward: a signal source signal (`name`/`A`) divides into two parallel tracks: `name_upper`/`B` and `name_len`/`C`, each of which has an effect that depends on it. + +``` + __A__ +| | +B C +| | +D E +``` + +Now let’s update the signal. + +```rust +set_name("Bob"); +``` + +We immediately log + +``` +len = 3 +name = BOB +``` + +Let’s do it again. + +```rust +set_name("Tim"); +``` + +The log should shows + +``` +name = TIM +``` + +`len = 3` does not log again. + +Remember: the goal of the reactive system is to run effects as infrequently as possible. Changing `name` from `"Bob"` to `"Tim"` will cause each of the memos to re-run. But they will only notify their subscribers if their value has actually changed. `"BOB"` and `"TIM"` are different, so that effect runs again. But both names have the length `3`, so they do not run again. + +### Reuniting Branches + +One more example, of what’s sometimes called **the diamond problem**. + +```rust +// A +let (name, set_name) = create_signal("Alice"); + +// B +let name_upper = create_memo(move |_| name.with(|n| n.to_uppercase())); + +// C +let name_len = create_memo(move |_| name.len()); + +// D +create_effect(move |_| { + log!("{} is {} characters long", name_upper(), name_len()); +}); +``` + +What does the graph look like for this? + +``` + __A__ +| | +B C +| | +|__D__| +``` + +You can see why it's called the “diamond problem.” If I’d connected the nodes with straight lines instead of bad ASCII art, it would form a diamond: two memos, each of which depend on a signal, which feed into the same effect. + +A naive, push-based reactive implementation would cause this effect to run twice, which would be bad. (Remember, our goal is to run effects as infrequently as we can.) For example, you could implement a reactive system such that signals and memos immediately propagate their changes all the way down the graph, through each dependency, essentially traversing the graph depth-first. In other words, updating `A` would notify `B`, which would notify `D`; then `A` would notify `C`, which would notify `D` again. This is both inefficient (`D` runs twice) and glitchy (`D` actually runs with the incorrect value for the second memo during its first run.) + +## Solving the Diamond Problem + +Any reactive implementation worth its salt is dedicated to solving this issue. There are a number of different approaches (again, [see Milo’s article](https://dev.to/modderme123/super-charging-fine-grained-reactive-performance-47ph) for an excellent overview). + +Here’s how ours works, in brief. + +A reactive node is always in one of three states: + +- `Clean`: it is known not to have changed +- `Check`: it is possible it has changed +- `Dirty`: it has definitely changed + +Updating a signal `Dirty` marks that signal `Dirty`, and marks all its descendants `Check`, recursively. Any of its descendants that are effects are added to a queue to be re-run. + +``` + ____A (DIRTY)___ + | | +B (CHECK) C (CHECK) + | | + |____D (CHECK)__| +``` + +Now those effects are run. (All of the effects will be marked `Check` at this point.) Before re-running its computation, the effect checks its parents to see if they are dirty. So + +- So `D` goes to `B` and checks if it is `Dirty`. +- But `B` is also marked `Check`. So `B` does the same thing: + - `B` goes to `A`, and finds that it is `Dirty`. + - This means `B` needs to re-run, because one of its sources has changed. + - `B` re-runs, generating a new value, and marks itself `Clean` + - Because `B` is a memo, it then checks its prior value against the new value. + - If they are the same, `B` returns "no change." Otherwise, it returns "yes, I changed." +- If `B` returned “yes, I changed,” `D` knows that it definitely needs to run and re-runs immediately before checking any other sources. +- If `B` returned “no, I didn’t change,” `D` continues on to check `C` (see process above for `B`.) +- If neither `B` nor `C` has changed, the effect does not need to re-run. +- If either `B` or `C` did change, the effect now re-runs. + +Because the effect is only marked `Check` once and only queued once, it only runs once. + +If the naive version was a “push-based” reactive system, simply pushing reactive changes all the way down the graph and therefore running the effect twice, this version could be called “push-pull.” It pushes the `Check` status all the way down the graph, but then “pulls” its way back up. In fact, for large graphs it may end up bouncing back up and down and left and right on the graph as it tries to determine exactly which nodes need to re-run. + +**Note this important trade-off**: Push-based reactivity propagates signal changes more quickly, at the expense of over-re-running memos and effects. Remember: the reactive system is designed to minimize how often you re-run effects, on the (accurate) assumption that side effects are orders of magnitude more expensive than this kind of cache-friendly graph traversal happening entirely inside the library’s Rust code. The measurement of a good reactive system is not how quickly it propagates changes, but how quickly it propagates changes _without over-notifying_. + +## Memos vs. Signals + +Note that signals always notify their children; i.e., a signal is always marked `Dirty` when it updates, even if its new value is the same as the old value. Otherwise, we’d have to require `PartialEq` on signals, and this is actually quite an expensive check on some types. (For example, add an unnecessary equality check to something like `some_vec_signal.update(|n| n.pop())` when it’s clear that it has in fact changed.) + +Memos, on the other hand, check whether they change before notifying their children. They only run their calculation once, no matter how many times you `.get()` the result, but they run whenever their signal sources change. This means that if the memo’s computation is _very_ expensive, you may actually want to memoize its inputs as well, so that the memo only re-calculates when it is sure its inputs have changed. + +## Memos vs. Derived Signals + +All of this is cool, and memos are pretty great. But most actual applications have reactive graphs that are quite shallow and quite wide: you might have 100 source signals and 500 effects, but no memos or, in rare case, three or four memos between the signal and the effect. Memos are extremely good at what they do: limiting how often they notify their subscribers that they have changed. But as this description of the reactive system should show, they come with overhead in two forms: + +1. A `PartialEq` check, which may or may not be expensive. +2. Added memory cost of storing another node in the reactive system. +3. Added computational cost of reactive graph traversal. + +In cases in which the computation itself is cheaper than this reactive work, you should avoid “over-wrapping” with memos and simply use derived signals. Here’s a great example in which you should never use a memo: + +```rust +let (a, set_a) = create_signal(1); +// none of these make sense as memos +let b = move || a() + 2; +let c = move || b() % 2 == 0; +let d = move || if c() { "even" } else { "odd" }; + +set_a(2); +set_a(3); +set_a(5); +``` + +Even though memoizing would technically save an extra calculation of `d` between setting `a` to `3` and `5`, these calculations are themselves cheaper than the reactive algorithm. + +At the very most, you might consider memoizing the final node before running some expensive side effect: + +```rust +let text = create_memo(move |_| { + d() +}); +create_effect(move |_| { + engrave_text_into_bar_of_gold(&text()); +}); +``` diff --git a/src/async/10_resources.md b/src/async/10_resources.md new file mode 100644 index 0000000..08a6ad3 --- /dev/null +++ b/src/async/10_resources.md @@ -0,0 +1,136 @@ +# Loading Data with Resources + +A [Resource](https://docs.rs/leptos/latest/leptos/struct.Resource.html) is a reactive data structure that reflects the current state of an asynchronous task, allowing you to integrate asynchronous `Future`s into the synchronous reactive system. Rather than waiting for its data to load with `.await`, you transform the `Future` into a signal that returns `Some(T)` if it has resolved, and `None` if it’s still pending. + +You do this by using the [`create_resource`](https://docs.rs/leptos/latest/leptos/fn.create_resource.html) function. This takes two arguments: + +1. a source signal, which will generate a new `Future` whenever it changes +2. a fetcher function, which takes the data from that signal and returns a `Future` + +Here’s an example + +```rust +// our source signal: some synchronous, local state +let (count, set_count) = create_signal(0); + +// our resource +let async_data = create_resource( + count, + // every time `count` changes, this will run + |value| async move { + logging::log!("loading data from API"); + load_data(value).await + }, +); +``` + +To create a resource that simply runs once, you can pass a non-reactive, empty source signal: + +```rust +let once = create_resource(|| (), |_| async move { load_data().await }); +``` + +To access the value you can use `.get()` or `.with(|data| /* */)`. These work just like `.get()` and `.with()` on a signal—`get` clones the value and returns it, `with` applies a closure to it—but for any `Resource<_, T>`, they always return `Option`, not `T`: because it’s always possible that your resource is still loading. + +So, you can show the current state of a resource in your view: + +```rust +let once = create_resource(|| (), |_| async move { load_data().await }); +view! { +

    "My Data"

    + {move || match once.get() { + None => view! {

    "Loading..."

    }.into_view(), + Some(data) => view! { }.into_view() + }} +} +``` + +Resources also provide a `refetch()` method that allows you to manually reload the data (for example, in response to a button click) and a `loading()` method that returns a `ReadSignal` indicating whether the resource is currently loading or not. + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/10-resources-0-5-x6h5j6?file=%2Fsrc%2Fmain.rs%3A2%2C3) + + + +
    +CodeSandbox Source + +```rust +use gloo_timers::future::TimeoutFuture; +use leptos::*; + +// Here we define an async function +// This could be anything: a network request, database read, etc. +// Here, we just multiply a number by 10 +async fn load_data(value: i32) -> i32 { + // fake a one-second delay + TimeoutFuture::new(1_000).await; + value * 10 +} + +#[component] +fn App() -> impl IntoView { + // this count is our synchronous, local state + let (count, set_count) = create_signal(0); + + // create_resource takes two arguments after its scope + let async_data = create_resource( + // the first is the "source signal" + count, + // the second is the loader + // it takes the source signal's value as its argument + // and does some async work + |value| async move { load_data(value).await }, + ); + // whenever the source signal changes, the loader reloads + + // you can also create resources that only load once + // just return the unit type () from the source signal + // that doesn't depend on anything: we just load it once + let stable = create_resource(|| (), |_| async move { load_data(1).await }); + + // we can access the resource values with .get() + // this will reactively return None before the Future has resolved + // and update to Some(T) when it has resolved + let async_result = move || { + async_data + .get() + .map(|value| format!("Server returned {value:?}")) + // This loading state will only show before the first load + .unwrap_or_else(|| "Loading...".into()) + }; + + // the resource's loading() method gives us a + // signal to indicate whether it's currently loading + let loading = async_data.loading(); + let is_loading = move || if loading() { "Loading..." } else { "Idle." }; + + view! { + +

    + "stable"": " {move || stable.get()} +

    +

    + "count"": " {count} +

    +

    + "async_value"": " + {async_result} +
    + {is_loading} +

    + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +
    + diff --git a/src/async/11_suspense.md b/src/async/11_suspense.md new file mode 100644 index 0000000..e23f764 --- /dev/null +++ b/src/async/11_suspense.md @@ -0,0 +1,156 @@ +# `` + +In the previous chapter, we showed how you can create a simple loading screen to show some fallback while a resource is loading. + +```rust +let (count, set_count) = create_signal(0); +let once = create_resource(count, |count| async move { load_a(count).await }); + +view! { +

    "My Data"

    + {move || match once.get() { + None => view! {

    "Loading..."

    }.into_view(), + Some(data) => view! { }.into_view() + }} +} +``` + +But what if we have two resources, and want to wait for both of them? + +```rust +let (count, set_count) = create_signal(0); +let (count2, set_count2) = create_signal(0); +let a = create_resource(count, |count| async move { load_a(count).await }); +let b = create_resource(count2, |count| async move { load_b(count).await }); + +view! { +

    "My Data"

    + {move || match (a.get(), b.get()) { + (Some(a), Some(b)) => view! { + + + }.into_view(), + _ => view! {

    "Loading..."

    }.into_view() + }} +} +``` + +That’s not _so_ bad, but it’s kind of annoying. What if we could invert the flow of control? + +The [``](https://docs.rs/leptos/latest/leptos/fn.Suspense.html) component lets us do exactly that. You give it a `fallback` prop and children, one or more of which usually involves reading from a resource. Reading from a resource “under” a `` (i.e., in one of its children) registers that resource with the ``. If it’s still waiting for resources to load, it shows the `fallback`. When they’ve all loaded, it shows the children. + +```rust +let (count, set_count) = create_signal(0); +let (count2, set_count2) = create_signal(0); +let a = create_resource(count, |count| async move { load_a(count).await }); +let b = create_resource(count2, |count| async move { load_b(count).await }); + +view! { +

    "My Data"

    + "Loading..."

    } + > +

    "My Data"

    +

    "A"

    + {move || { + a.get() + .map(|a| view! { }) + }} +

    "B"

    + {move || { + b.get() + .map(|b| view! { }) + }} +
    +} +``` + +Every time one of the resources is reloading, the `"Loading..."` fallback will show again. + +This inversion of the flow of control makes it easier to add or remove individual resources, as you don’t need to handle the matching yourself. It also unlocks some massive performance improvements during server-side rendering, which we’ll talk about during a later chapter. + +## `` + +In you’re simply trying to wait for some `Future` to resolve before rendering, you may find the `` component helpful in reducing boilerplate. `` essentially combines a resource with the source argument `|| ()` with a `` with no fallback. + +In other words: + +1. It only polls the `Future` once, and does not respond to any reactive changes. +2. It does not render anything until the `Future` resolves. +3. After the `Future` resolves, its binds its data to whatever variable name you choose and then renders its children with that variable in scope. + +```rust +async fn fetch_monkeys(monkey: i32) -> i32 { + // maybe this didn't need to be async + monkey * 2 +} +view! { + + // you receive the data by reference and can use it in your view here +

    {*data} " little monkeys, jumping on the bed."

    +
    +} +``` + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/11-suspense-0-5-qzpgqs?file=%2Fsrc%2Fmain.rs%3A1%2C1) + + + +
    +CodeSandbox Source + +```rust +use gloo_timers::future::TimeoutFuture; +use leptos::*; + +async fn important_api_call(name: String) -> String { + TimeoutFuture::new(1_000).await; + name.to_ascii_uppercase() +} + +#[component] +fn App() -> impl IntoView { + let (name, set_name) = create_signal("Bill".to_string()); + + // this will reload every time `name` changes + let async_data = create_resource( + + name, + |name| async move { important_api_call(name).await }, + ); + + view! { + +

    "name:" {name}

    + "Loading..."

    } + > + // the children will be rendered once initially, + // and then whenever any resources has been resolved +

    + "Your shouting name is " + {move || async_data.get()} +

    +
    + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +
    + diff --git a/src/async/12_transition.md b/src/async/12_transition.md new file mode 100644 index 0000000..85db85b --- /dev/null +++ b/src/async/12_transition.md @@ -0,0 +1,83 @@ +# `` + +You’ll notice in the `` example that if you keep reloading the data, it keeps flickering back to `"Loading..."`. Sometimes this is fine. For other times, there’s [``](https://docs.rs/leptos/latest/leptos/fn.Transition.html). + +`` behaves exactly the same as ``, but instead of falling back every time, it only shows the fallback the first time. On all subsequent loads, it continues showing the old data until the new data are ready. This can be really handy to prevent the flickering effect, and to allow users to continue interacting with your application. + +This example shows how you can create a simple tabbed contact list with ``. When you select a new tab, it continues showing the current contact until the new data loads. This can be a much better user experience than constantly falling back to a loading message. + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/12-transition-0-5-2jg5lz?file=%2Fsrc%2Fmain.rs%3A1%2C1) + + + +
    +CodeSandbox Source + +```rust +use gloo_timers::future::TimeoutFuture; +use leptos::*; + +async fn important_api_call(id: usize) -> String { + TimeoutFuture::new(1_000).await; + match id { + 0 => "Alice", + 1 => "Bob", + 2 => "Carol", + _ => "User not found", + } + .to_string() +} + +#[component] +fn App() -> impl IntoView { + let (tab, set_tab) = create_signal(0); + + // this will reload every time `tab` changes + let user_data = create_resource(tab, |tab| async move { important_api_call(tab).await }); + + view! { +
    + + + + {move || if user_data.loading().get() { + "Loading..." + } else { + "" + }} +
    + "Loading..."

    } + > +

    + {move || user_data.read()} +

    +
    + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +
    + diff --git a/src/async/13_actions.md b/src/async/13_actions.md new file mode 100644 index 0000000..625dc33 --- /dev/null +++ b/src/async/13_actions.md @@ -0,0 +1,176 @@ +# Mutating Data with Actions + +We’ve talked about how to load `async` data with resources. Resources immediately load data and work closely with `` and `` components to show whether data is loading in your app. But what if you just want to call some arbitrary `async` function and keep track of what it’s doing? + +Well, you could always use [`spawn_local`](https://docs.rs/leptos/latest/leptos/fn.spawn_local.html). This allows you to just spawn an `async` task in a synchronous environment by handing the `Future` off to the browser (or, on the server, Tokio or whatever other runtime you’re using). But how do you know if it’s still pending? Well, you could just set a signal to show whether it’s loading, and another one to show the result... + +All of this is true. Or you could use the final `async` primitive: [`create_action`](https://docs.rs/leptos/latest/leptos/fn.create_action.html). + +Actions and resources seem similar, but they represent fundamentally different things. If you’re trying to load data by running an `async` function, either once or when some other value changes, you probably want to use `create_resource`. If you’re trying to occasionally run an `async` function in response to something like a user clicking a button, you probably want to use `create_action`. + +Say we have some `async` function we want to run. + +```rust +async fn add_todo_request(new_title: &str) -> Uuid { + /* do some stuff on the server to add a new todo */ +} +``` + +`create_action` takes an `async` function that takes a reference to a single argument, which you could think of as its “input type.” + +> The input is always a single type. If you want to pass in multiple arguments, you can do it with a struct or tuple. +> +> ```rust +> // if there's a single argument, just use that +> let action1 = create_action(|input: &String| { +> let input = input.clone(); +> async move { todo!() } +> }); +> +> // if there are no arguments, use the unit type `()` +> let action2 = create_action(|input: &()| async { todo!() }); +> +> // if there are multiple arguments, use a tuple +> let action3 = create_action( +> |input: &(usize, String)| async { todo!() } +> ); +> ``` +> +> Because the action function takes a reference but the `Future` needs to have a `'static` lifetime, you’ll usually need to clone the value to pass it into the `Future`. This is admittedly awkward but it unlocks some powerful features like optimistic UI. We’ll see a little more about that in future chapters. + +So in this case, all we need to do to create an action is + +```rust +let add_todo_action = create_action(|input: &String| { + let input = input.to_owned(); + async move { add_todo_request(&input).await } +}); +``` + +Rather than calling `add_todo_action` directly, we’ll call it with `.dispatch()`, as in + +```rust +add_todo_action.dispatch("Some value".to_string()); +``` + +You can do this from an event listener, a timeout, or anywhere; because `.dispatch()` isn’t an `async` function, it can be called from a synchronous context. + +Actions provide access to a few signals that synchronize between the asynchronous action you’re calling and the synchronous reactive system: + +```rust +let submitted = add_todo_action.input(); // RwSignal> +let pending = add_todo_action.pending(); // ReadSignal +let todo_id = add_todo_action.value(); // RwSignal> +``` + +This makes it easy to track the current state of your request, show a loading indicator, or do “optimistic UI” based on the assumption that the submission will succeed. + +```rust +let input_ref = create_node_ref::(); + +view! { + + + + + // use our loading state +

    {move || pending().then("Loading...")}

    +} +``` + +Now, there’s a chance this all seems a little over-complicated, or maybe too restricted. I wanted to include actions here, alongside resources, as the missing piece of the puzzle. In a real Leptos app, you’ll actually most often use actions alongside server functions, [`create_server_action`](https://docs.rs/leptos/latest/leptos/fn.create_server_action.html), and the [``](https://docs.rs/leptos_router/latest/leptos_router/fn.ActionForm.html) component to create really powerful progressively-enhanced forms. So if this primitive seems useless to you... Don’t worry! Maybe it will make sense later. (Or check out our [`todo_app_sqlite`](https://github.com/leptos-rs/leptos/blob/main/examples/todo_app_sqlite/src/todo.rs) example now.) + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/13-actions-0-5-8xk35v?file=%2Fsrc%2Fmain.rs%3A1%2C1) + + + +
    +CodeSandbox Source + +```rust +use gloo_timers::future::TimeoutFuture; +use leptos::{html::Input, *}; +use uuid::Uuid; + +// Here we define an async function +// This could be anything: a network request, database read, etc. +// Think of it as a mutation: some imperative async action you run, +// whereas a resource would be some async data you load +async fn add_todo(text: &str) -> Uuid { + _ = text; + // fake a one-second delay + TimeoutFuture::new(1_000).await; + // pretend this is a post ID or something + Uuid::new_v4() +} + +#[component] +fn App() -> impl IntoView { + // an action takes an async function with single argument + // it can be a simple type, a struct, or () + let add_todo = create_action(|input: &String| { + // the input is a reference, but we need the Future to own it + // this is important: we need to clone and move into the Future + // so it has a 'static lifetime + let input = input.to_owned(); + async move { add_todo(&input).await } + }); + + // actions provide a bunch of synchronous, reactive variables + // that tell us different things about the state of the action + let submitted = add_todo.input(); + let pending = add_todo.pending(); + let todo_id = add_todo.value(); + + let input_ref = create_node_ref::(); + + view! { +
    + + +
    +

    {move || pending().then(|| "Loading...")}

    +

    + "Submitted: " + {move || format!("{:#?}", submitted())} +

    +

    + "Pending: " + {move || format!("{:#?}", pending())} +

    +

    + "Todo ID: " + {move || format!("{:#?}", todo_id())} +

    + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +
    + diff --git a/src/async/README.md b/src/async/README.md new file mode 100644 index 0000000..84b20d7 --- /dev/null +++ b/src/async/README.md @@ -0,0 +1,9 @@ +# Working with `async` + +So far we’ve only been working with synchronous users interfaces: You provide some input, +the app immediately processes it and updates the interface. This is great, but is a tiny +subset of what web applications do. In particular, most web apps have to deal with some kind of asynchronous data loading, usually loading something from an API. + +Asynchronous data is notoriously hard to integrate with the synchronous parts of your code. Leptos provides a cross-platform [`spawn_local`](https://docs.rs/leptos/latest/leptos/fn.spawn_local.html) function that makes it easy to run a `Future`, but there’s much more to it than that. + +In this chapter, we’ll see how Leptos helps smooth out that process for you. diff --git a/src/deployment/README.md b/src/deployment/README.md new file mode 100644 index 0000000..fa6c204 --- /dev/null +++ b/src/deployment/README.md @@ -0,0 +1,74 @@ +# Deployment + +There are as many ways to deploy a web application as there are developers, let alone applications. But there are a couple useful tips to keep in mind when deploying an app. + +## General Advice + +1. Remember: Always deploy Rust apps built in `--release` mode, not debug mode. This has a huge effect on both performance and binary size. +2. Test locally in release mode as well. The framework applies certain optimizations in release mode that it does not apply in debug mode, so it’s possible for bugs to surface at this point. (If your app behaves differently or you do encounter a bug, it’s likely a framework-level bug and you should open a GitHub issue with a reproduction.) +3. See the chapter on "Optimizing WASM Binary Size" for additional tips and tricks to further improve the time-to-interactive metric for your WASM app on first load. + +> We asked users to submit their deployment setups to help with this chapter. I’ll quote from them below, but you can read the full thread [here](https://github.com/leptos-rs/leptos/issues/1152). + +## Deploying a Client-Side-Rendered App + +If you’ve been building an app that only uses client-side rendering, working with Trunk as a dev server and build tool, the process is quite easy. + +```bash +trunk build --release +``` + +`trunk build` will create a number of build artifacts in a `dist/` directory. Publishing `dist` somewhere online should be all you need to deploy your app. This should work very similarly to deploying any JavaScript application. + +> Read more: [Deploying to Vercel with GitHub Actions](https://github.com/leptos-rs/leptos/issues/1152#issuecomment-1577861900). + +## Deploying a Full-Stack App + +The most popular way for people to deploy full-stack apps built with `cargo-leptos` is to use a cloud hosting service that supports deployment via a Docker build. Here’s a sample `Dockerfile`, which is based on the one we use to deploy the Leptos website. + +```dockerfile +# Get started with a build env with Rust nightly +FROM rustlang/rust:nightly-bullseye as builder + +# If you’re using stable, use this instead +# FROM rust:1.70-bullseye as builder + +# Install cargo-binstall, which makes it easier to install other +# cargo extensions like cargo-leptos +RUN wget https://github.com/cargo-bins/cargo-binstall/releases/latest/download/cargo-binstall-x86_64-unknown-linux-musl.tgz +RUN tar -xvf cargo-binstall-x86_64-unknown-linux-musl.tgz +RUN cp cargo-binstall /usr/local/cargo/bin + +# Install cargo-leptos +RUN cargo binstall cargo-leptos -y + +# Add the WASM target +RUN rustup target add wasm32-unknown-unknown + +# Make an /app dir, which everything will eventually live in +RUN mkdir -p /app +WORKDIR /app +COPY . . + +# Build the app +RUN cargo leptos build --release -vv + +FROM rustlang/rust:nightly-bullseye as runner +# Copy the server binary to the /app directory +COPY --from=builder /app/target/release/leptos-start /app/ +# /target/site contains our JS/WASM/CSS, etc. +COPY --from=builder /app/target/site /app/site +# Copy Cargo.toml if it’s needed at runtime +COPY --from=builder /app/Cargo.toml /app/ +WORKDIR /app + +# Set any required env variables and +ENV RUST_LOG="info" +ENV LEPTOS_SITE_ADDR="0.0.0.0:8080" +ENV LEPTOS_SITE_ROOT="site" +EXPOSE 8080 +# Run the server +CMD ["/app/leptos_start"] +``` + +> Read more: [`gnu` and `musl` build files for Leptos apps](https://github.com/leptos-rs/leptos/issues/1152#issuecomment-1634916088). diff --git a/src/deployment/binary_size.md b/src/deployment/binary_size.md new file mode 100644 index 0000000..267796f --- /dev/null +++ b/src/deployment/binary_size.md @@ -0,0 +1,72 @@ +# Optimizing WASM Binary Size + +One of the primary downsides of deploying a Rust/WebAssembly frontend app is that splitting a WASM file into smaller chunks to be dynamically loaded is significantly more difficult than splitting a JavaScript bundle. There have been experiments like [`wasm-split`](https://emscripten.org/docs/optimizing/Module-Splitting.html) in the Emscripten ecosystem but at present there’s no way to split and dynamically load a Rust/`wasm-bindgen` binary. This means that the whole WASM binary needs to be loaded before your app becomes interactive. Because the WASM format is designed for streaming compilation, WASM files are much faster to compile per kilobyte than JavaScript files. (For a deeper look, you can [read this great article from the Mozilla team](https://hacks.mozilla.org/2018/01/making-webassembly-even-faster-firefoxs-new-streaming-and-tiering-compiler/) on streaming WASM compilation.) + +Still, it’s important to ship the smallest WASM binary to users that you can, as it will reduce their network usage and make your app interactive as quickly as possible. + +So what are some practical steps? + +## Things to Do + +1. Make sure you’re looking at a release build. (Debug builds are much, much larger.) +2. Add a release profile for WASM that optimizes for size, not speed. + +For a `cargo-leptos` project, for example, you can add this to your `Cargo.toml`: + +```toml +[profile.wasm-release] +inherits = "release" +opt-level = 'z' +lto = true +codegen-units = 1 + +# .... + +[package.metadata.leptos] +# .... +lib-profile-release = "wasm-release" +``` + +This will hyper-optimize the WASM for your release build for size, while keeping your server build optimized for speed. (For a pure client-rendered app without server considerations, just use the `[profile.wasm-release]` block as your `[profile.release]`.) + +3. Always serve compressed WASM in production. WASM tends to compress very well, typically shrinking to less than 50% its uncompressed size, and it’s trivial to enable compression for static files being served from Actix or Axum. + +4. If you’re using nightly Rust, you can rebuild the standard library with this same profile rather than the prebuilt standard library that’s distributed with the `wasm32-unknown-unknown` target. + +To do this, create a file in your project at `.cargo/config.toml` + +```toml +[unstable] +build-std = ["std", "panic_abort", "core", "alloc"] +build-std-features = ["panic_immediate_abort"] +``` + +Note that if you're using this with SSR too, the same Cargo profile will be applied. You'll need to explicitly specify your target: +```toml +[build] +target = "x86_64-unknown-linux-gnu" # or whatever +``` + +Also note that in some cases, the cfg feature `has_std` will not be set, which may cause build errors with some dependencies which check for `has_std`. You may fix any build errors due to this by adding: +```toml +[build] +rustflags = ["--cfg=has_std"] +``` + +And you'll need to add `panic = "abort"` to `[profile.release]` in `Cargo.toml`. Note that this applies the same `build-std` and panic settings to your server binary, which may not be desirable. Some further exploration is probably needed here. + +5. One of the sources of binary size in WASM binaries can be `serde` serialization/deserialization code. Leptos uses `serde` by default to serialize and deserialize resources created with `create_resource`. You might try experimenting with the `miniserde` and `serde-lite` features, which allow you to use those crates for serialization and deserialization instead; each only implements a subset of `serde`’s functionality, but typically optimizes for size over speed. + +## Things to Avoid + +There are certain crates that tend to inflate binary sizes. For example, the `regex` crate with its default features adds about 500kb to a WASM binary (largely because it has to pull in Unicode table data!). In a size-conscious setting, you might consider avoiding regexes in general, or even dropping down and calling browser APIs to use the built-in regex engine instead. (This is what `leptos_router` does on the few occasions it needs a regular expression.) + +In general, Rust’s commitment to runtime performance is sometimes at odds with a commitment to a small binary. For example, Rust monomorphizes generic functions, meaning it creates a distinct copy of the function for each generic type it’s called with. This is significantly faster than dynamic dispatch, but increases binary size. Leptos tries to balance runtime performance with binary size considerations pretty carefully; but you might find that writing code that uses many generics tends to increase binary size. For example, if you have a generic component with a lot of code in its body and call it with four different types, remember that the compiler could include four copies of that same code. Refactoring to use a concrete inner function or helper can often maintain performance and ergonomics while reducing binary size. + +## A Final Thought + +Remember that in a server-rendered app, JS bundle size/WASM binary size affects only _one_ thing: time to interactivity on the first load. This is very important to a good user experience: nobody wants to click a button three times and have it do nothing because the interactive code is still loading — but it's not the only important measure. + +It’s especially worth remembering that streaming in a single WASM binary means all subsequent navigations are nearly instantaneous, depending only on any additional data loading. Precisely because your WASM binary is _not_ bundle split, navigating to a new route does not require loading additional JS/WASM, as it does in nearly every JavaScript framework. Is this copium? Maybe. Or maybe it’s just an honest trade-off between the two approaches! + +Always take the opportunity to optimize the low-hanging fruit in your application. And always test your app under real circumstances with real user network speeds and devices before making any heroic efforts. diff --git a/src/interlude_projecting_children.md b/src/interlude_projecting_children.md new file mode 100644 index 0000000..312e63e --- /dev/null +++ b/src/interlude_projecting_children.md @@ -0,0 +1,175 @@ +# Projecting Children + +As you build components you may occasionally find yourself wanting to “project” children through multiple layers of components. + +## The Problem + +Consider the following: + +```rust +pub fn LoggedIn(fallback: F, children: ChildrenFn) -> impl IntoView +where + F: Fn() -> IV + 'static, + IV: IntoView, +{ + view! { + + + {children()} + + + } +} +``` + +This is pretty straightforward: when the user is logged in, we want to show `children`. If the user is not logged in, we want to show `fallback`. And while we’re waiting to find out, we just render `()`, i.e., nothing. + +In other words, we want to pass the children of `` _through_ the `` component to become the children of the ``. This is what I mean by “projection.” + +This won’t compile. + +``` +error[E0507]: cannot move out of `fallback`, a captured variable in an `Fn` closure +error[E0507]: cannot move out of `children`, a captured variable in an `Fn` closure +``` + +The problem here is that both `` and `` need to be able to construct their `children` multiple times. The first time you construct ``’s children, it would take ownership of `fallback` and `children` to move them into the invocation of ``, but then they're not available for future `` children construction. + +## The Details + +> Feel free to skip ahead to the solution. + +If you want to really understand the issue here, it may help to look at the expanded `view` macro. Here’s a cleaned-up version: + +```rust +Suspense( + ::leptos::component_props_builder(&Suspense) + .fallback(|| ()) + .children({ + // fallback and children are moved into this closure + Box::new(move || { + { + // fallback and children captured here + leptos::Fragment::lazy(|| { + vec![ + (Show( + ::leptos::component_props_builder(&Show) + .when(|| true) + // but fallback is moved into Show here + .fallback(fallback) + // and children is moved into Show here + .children(children) + .build(), + ) + .into_view()), + ] + }) + } + }) + }) + .build(), +) +``` + +All components own their props; so the `` in this case can’t be called because it only has captured references to `fallback` and `children`. + +## Solution + +However, both `` and `` take `ChildrenFn`, i.e., their `children` should implement the `Fn` type so they can be called multiple times with only an immutable reference. This means we don’t need to own `children` or `fallback`; we just need to be able to pass `'static` references to them. + +We can solve this problem by using the [`store_value`](https://docs.rs/leptos/latest/leptos/fn.store_value.html) primitive. This essentially stores a value in the reactive system, handing ownership off to the framework in exchange for a reference that is, like signals, `Copy` and `'static`, which we can access or modify through certain methods. + +In this case, it’s really simple: + +```rust +pub fn LoggedIn(fallback: F, children: ChildrenFn) -> impl IntoView +where + F: Fn() -> IV + 'static, + IV: IntoView, +{ + let fallback = store_value(fallback); + let children = store_value(children); + view! { + + + {children.with_value(|children| children())} + + + } +} +``` + +At the top level, we store both `fallback` and `children` in the reactive scope owned by `LoggedIn`. Now we can simply move those references down through the other layers into the `` component and call them there. + +## A Final Note + +Note that this works because `` and `` only need an immutable reference to their children (which `.with_value` can give it), not ownership. + +In other cases, you may need to project owned props through a function that takes `ChildrenFn` and therefore needs to be called more than once. In this case, you may find the `clone:` helper in the`view` macro helpful. + +Consider this example + +```rust +#[component] +pub fn App() -> impl IntoView { + let name = "Alice".to_string(); + view! { + + + + + + } +} + +#[component] +pub fn Outer(ChildrenFn) -> impl IntoView { + children() +} + +#[component] +pub fn Inner(ChildrenFn) -> impl IntoView { + children() +} + +#[component] +pub fn Inmost(ng) -> impl IntoView { + view! { +

    {name}

    + } +} +``` + +Even with `name=name.clone()`, this gives the error + +``` +cannot move out of `name`, a captured variable in an `Fn` closure +``` + +It’s captured through multiple levels of children that need to run more than once, and there’s no obvious way to clone it _into_ the children. + +In this case, the `clone:` syntax comes in handy. Calling `clone:name` will clone `name` _before_ moving it into ``’s children, which solves our ownership issue. + +```rust +view! { + + + + + +} +``` + +These issues can be a little tricky to understand or debug, because of the opacity of the `view` macro. But in general, they can always be solved. diff --git a/src/interlude_styling.md b/src/interlude_styling.md new file mode 100644 index 0000000..eaba342 --- /dev/null +++ b/src/interlude_styling.md @@ -0,0 +1,112 @@ +# Interlude: Styling + +Anyone creating a website or application soon runs into the question of styling. For a small app, a single CSS file is probably plenty to style your user interface. But as an application grows, many developers find that plain CSS becomes increasingly hard to manage. + +Some frontend frameworks (like Angular, Vue, and Svelte) provide built-in ways to scope your CSS to particular components, making it easier to manage styles across a whole application without styles meant to modify one small component having a global effect. Other frameworks (like React or Solid) don’t provide built-in CSS scoping, but rely on libraries in the ecosystem to do it for them. Leptos is in this latter camp: the framework itself has no opinions about CSS at all, but provides a few tools and primitives that allow others to build styling libraries. + +Here are a few different approaches to styling your Leptos app, other than plain CSS. + +## TailwindCSS: Utility-first CSS + +[TailwindCSS](https://tailwindcss.com/) is a popular utility-first CSS library. It allows you to style your application by using inline utility classes, with a custom CLI tool that scans your files for Tailwind class names and bundles the necessary CSS. + +This allows you to write components like this: + +```rust +#[component] +fn Home() -> impl IntoView { + let (count, set_count) = create_signal(0); + + view! { +
    +

    "Welcome to Leptos with Tailwind"

    +

    "Tailwind will scan your Rust files for Tailwind class names and compile them into a CSS file."

    + +
    + } +} +``` + +It can be a little complicated to set up the Tailwind integration at first, but you can check out our two examples of how to use Tailwind with a [client-side-rendered `trunk` application](https://github.com/leptos-rs/leptos/tree/main/examples/tailwind_csr) or with a [server-rendered `cargo-leptos` application](https://github.com/leptos-rs/leptos/tree/main/examples/tailwind_actix). `cargo-leptos` also has some [built-in Tailwind support](https://github.com/leptos-rs/cargo-leptos#site-parameters) that you can use as an alternative to Tailwind’s CLI. + +## Stylers: Compile-time CSS Extraction + +[Stylers](https://github.com/abishekatp/stylers) is a compile-time scoped CSS library that lets you declare scoped CSS in the body of your component. Stylers will extract this CSS at compile time into CSS files that you can then import into your app, which means that it doesn’t add anything to the WASM binary size of your application. + +This allows you to write components like this: + +```rust +use stylers::style; + +#[component] +pub fn App() -> impl IntoView { + let styler_class = style! { "App", + ##two{ + color: blue; + } + div.one{ + color: red; + content: raw_str(r#"\hello"#); + font: "1.3em/1.2" Arial, Helvetica, sans-serif; + } + div { + border: 1px solid black; + margin: 25px 50px 75px 100px; + background-color: lightblue; + } + h2 { + color: purple; + } + @media only screen and (max-width: 1000px) { + h3 { + background-color: lightblue; + color: blue + } + } + }; + + view! { class = styler_class, +
    +

    "Hello"

    +

    "World"

    +

    "and"

    +

    "friends!"

    +
    + } +} +``` + +## Styled: Runtime CSS Scoping + +[Styled](https://github.com/eboody/styled) is a runtime scoped CSS library that integrates well with Leptos. It lets you declare scoped CSS in the body of your component function, and then applies those styles at runtime. + +```rust +use styled::style; + +#[component] +pub fn MyComponent() -> impl IntoView { + let styles = style!( + div { + background-color: red; + color: white; + } + ); + + styled::view! { styles, +
    "This text should be red with white text."
    + } +} +``` + +## Contributions Welcome + +Leptos has no opinions on how you style your website or app, but we’re very happy to provide support to any tools you’re trying to create to make it easier. If you’re working on a CSS or styling approach that you’d like to add to this list, please let us know! diff --git a/src/islands.md b/src/islands.md new file mode 100644 index 0000000..ebaad67 --- /dev/null +++ b/src/islands.md @@ -0,0 +1,489 @@ +# Guide: Islands + +Leptos 0.5 introduces the new `experimental-islands` feature. This guide will walk through the islands feature and core concepts, while implementing a demo app using the islands architecture. + +## The Islands Architecture + +The dominant JavaScript frontend frameworks (React, Vue, Svelte, Solid, Angular) all originated as frameworks for building client-rendered single-page apps (SPAs). The initial page load is rendered to HTML, then hydrated, and subsequent navigations are handled directly in the client. (Hence “single page”: everything happens from a single page load from the server, even if there is client-side routing later.) Each of these frameworks later added server-side rendering to improve initial load times, SEO, and user experience. + +This means that by default, the entire app is interactive. It also means that the entire app has to be shipped to the client as JavaScript in order to be hydrated. Leptos has followed this same pattern. + +> You can read more in the chapters on [server-side rendering](./ssr/22_life_cycle.md). + +But it’s also possible to work in the opposite direction. Rather than taking an entirely-interactive app, rendering it to HTML on the server, and then hydrating it in the browser, you can begin with a plain HTML page and add small areas of interactivity. This is the traditional format for any website or app before the 2010s: your browser makes a series of requests to the server and returns the HTML for each new page in response. After the rise of “single-page apps” (SPA), this approach has sometimes become known as a “multi-page app” (MPA) by comparison. + +The phrase “islands architecture” has emerged recently to describe the approach of beginning with a “sea” of server-rendered HTML pages, and adding “islands” of interactivity throughout the page. + +> ### Additional Reading +> +> The rest of this guide will look at how to use islands with Leptos. For more background on the approach in general, check out some of the articles below: +> +> - Jason Miller, [“Islands Architecture”](https://jasonformat.com/islands-architecture/), Jason Miller +> - Ryan Carniato, [“Islands & Server Components & Resumability, Oh My!”](https://dev.to/this-is-learning/islands-server-components-resumability-oh-my-319d) +> - [“Islands Architectures”](https://www.patterns.dev/posts/islands-architecture) on patterns.dev +> - [Astro Islands](https://docs.astro.build/en/concepts/islands/) + +## Activating Islands Mode + +Let’s start with a fresh `cargo-leptos` app: + +```bash +cargo leptos new --git leptos-rs/start +``` + +> I’m using Actix because I like it. Feel free to use Axum; there should be approximately no server-specific differences in this guide. + +I’m just going to run + +```bash +cargo leptos build +``` + +in the background while I fire up my editor and keep writing. + +The first thing I’ll do is to add the `experimental-islands` feature in my `Cargo.toml`. I need to add this to both `leptos` and `leptos_actix`: + +```toml +leptos = { version = "0.5", features = ["nightly", "experimental-islands"] } +leptos_actix = { version = "0.5", optional = true, features = [ + "experimental-islands", +] } +``` + +Next I’m going to modify the `hydrate` function exported from `src/lib.rs`. I’m going to remove the line that calls `leptos::mount_to_body(App)` and replace it with + +```rust +leptos::leptos_dom::HydrationCtx::stop_hydrating(); +``` + +Each “island” we create will actually act as its own entrypoint, so our `hydrate()` function just says “okay, hydration’s done now.” + +Okay, now fire up your `cargo leptos watch` and go to [`http://localhost:3000`](http://localhost:3000) (or wherever). + +Click the button, and... + +Nothing happens! + +Perfect. + +## Using Islands + +Nothing happens because we’ve just totally inverted the mental model of our app. Rather than being interactive by default and hydrating everything, the app is now plain HTML by default, and we need to opt into interactivity. + +This has a big effect on WASM binary sizes: if I compile in release mode, this app is a measly 24kb of WASM (uncompressed), compared to 355kb in non-islands mode. (355kb is quite large for a “Hello, world!” It’s really just all the code related to client-side routing, which isn’t being used in the demo.) + +When we click the button, nothing happens, because our whole page is static. + +So how do we make something happen? + +Let’s turn the `HomePage` component into an island! + +Here was the non-interactive version: + +```rust +#[component] +fn HomePage() -> impl IntoView { + // Creates a reactive value to update the button + let (count, set_count) = create_signal(0); + let on_click = move |_| set_count.update(|count| *count += 1); + + view! { +

    "Welcome to Leptos!"

    + + } +} +``` + +Here’s the interactive version: + +```rust +#[island] +fn HomePage() -> impl IntoView { + // Creates a reactive value to update the button + let (count, set_count) = create_signal(0); + let on_click = move |_| set_count.update(|count| *count += 1); + + view! { +

    "Welcome to Leptos!"

    + + } +} +``` + +Now when I click the button, it works! + +The `#[island]` macro works exactly like the `#[component]` macro, except that in islands mode, it designates this as an interactive island. If we check the binary size again, this is 166kb uncompressed in release mode; much larger than the 24kb totally static version, but much smaller than the 355kb fully-hydrated version. + +If you open up the source for the page now, you’ll see that your `HomePage` island has been rendered as a special `` HTML element which specifies which component should be used to hydrate it: + +```html + +

    Welcome to Leptos!

    + +
    +``` + +The typical Leptos hydration keys and markers are only present inside the island, only the island is hydrated. + +## Using Islands Effectively + +Remember that _only_ code within an `#[island]` needs to be compiled to WASM and shipped to the browser. This means that islands should be as small and specific as possible. My `HomePage`, for example, would be better broken apart into a regular component and an island: + +```rust +#[component] +fn HomePage() -> impl IntoView { + view! { +

    "Welcome to Leptos!"

    + + } +} + +#[island] +fn Counter() -> impl IntoView { + // Creates a reactive value to update the button + let (count, set_count) = create_signal(0); + let on_click = move |_| set_count.update(|count| *count += 1); + + view! { + + } +} +``` + +Now the `

    ` doesn’t need to be included in the client bundle, or hydrated. This seems like a silly distinction now; but note that you can now add as much inert HTML content as you want to the `HomePage` itself, and the WASM binary size will remain exactly the same. + +In regular hydration mode, your WASM binary size grows as a function of the size/complexity of your app. In islands mode, your WASM binary grows as a function of the amount of interactivity in your app. You can add as much non-interactive content as you want, outside islands, and it will not increase that binary size. + +## Unlocking Superpowers + +So, this 50% reduction in WASM binary size is nice. But really, what’s the point? + +The point comes when you combine two key facts: + +1. Code inside `#[component]` functions now _only_ runs on the server. +2. Children and props can be passed from the server to islands, without being included in the WASM binary. + +This means you can run server-only code directly in the body of a component, and pass it directly into the children. Certain tasks that take a complex blend of server functions and Suspense in fully-hydrated apps can be done inline in islands. + +We’re going to rely on a third fact in the rest of this demo: + +3. Context can be passed between otherwise-independent islands. + +So, instead of our counter demo, let’s make something a little more fun: a tabbed interface that reads data from files on the server. + +## Passing Server Children to Islands + +One of the most powerful things about islands is that you can pass server-rendered children into an island, without the island needing to know anything about them. Islands hydrate their own content, but not children that are passed to them. + +As Dan Abramov of React put it (in the very similar context of RSCs), islands aren’t really islands: they’re donuts. You can pass server-only content directly into the “donut hole,” as it were, allowing you to create tiny atolls of interactivity, surrounded on _both_ sides by the sea of inert server HTML. + +> In the demo code included below, I added some styles to show all server content as a light-blue “sea,” and all islands as light-green “land.” Hopefully that will help picture what I’m talking about! + +To continue with the demo: I’m going to create a `Tabs` component. Switching between tabs will require some interactivity, so of course this will be an island. Let’s start simple for now: + +```rust +#[island] +fn Tabs(labels: Vec) -> impl IntoView { + let buttons = labels + .into_iter() + .map(|label| view! { }) + .collect_view(); + view! { +
    + {buttons} +
    + } +} +``` + +Oops. This gives me an error + +``` +error[E0463]: can't find crate for `serde` + --> src/app.rs:43:1 + | +43 | #[island] + | ^^^^^^^^^ can't find crate +``` + +Easy fix: let’s `cargo add serde --features=derive`. The `#[island]` macro wants to pull in `serde` here because it needs to serialize and deserialize the `labels` prop. + +Now let’s update the `HomePage` to use `Tabs`. + +```rust +#[component] +fn HomePage() -> impl IntoView { + // these are the files we’re going to read + let files = ["a.txt", "b.txt", "c.txt"]; + // the tab labels will just be the file names + let labels = files.iter().copied().map(Into::into).collect(); + view! { +

    "Welcome to Leptos!"

    +

    "Click any of the tabs below to read a recipe."

    + + } +} +``` + +If you take a look in the DOM inspector, you’ll see the island is now something like + +```html + +``` + +Our `labels` prop is getting serialized to JSON and stored in an HTML attribute so it can be used to hydrate the island. + +Now let’s add some tabs. For the moment, a `Tab` island will be really simple: + +```rust +#[island] +fn Tab(index: usize, children: Children) -> impl IntoView { + view! { +
    {children()}
    + } +} +``` + +Each tab, for now will just be a `
    ` wrapping its children. + +Our `Tabs` component will also get some children: for now, let’s just show them all. + +```rust +#[island] +fn Tabs(labels: Vec, children: Children) -> impl IntoView { + let buttons = labels + .into_iter() + .map(|label| view! { }) + .collect_view(); + view! { +
    + {buttons} +
    + {children()} + } +} +``` + +Okay, now let’s go back into the `HomePage`. We’re going to create the list of tabs to put into our tab box. + +```rust +#[component] +fn HomePage() -> impl IntoView { + let files = ["a.txt", "b.txt", "c.txt"]; + let labels = files.iter().copied().map(Into::into).collect(); + let tabs = move || { + files + .into_iter() + .enumerate() + .map(|(index, filename)| { + let content = std::fs::read_to_string(filename).unwrap(); + view! { + +

    {filename.to_string()}

    +

    {content}

    +
    + } + }) + .collect_view() + }; + + view! { +

    "Welcome to Leptos!"

    +

    "Click any of the tabs below to read a recipe."

    + +
    {tabs()}
    +
    + } +} +``` + +Uh... What? + +If you’re used to using Leptos, you know that you just can’t do this. All code in the body of components has to run on the server (to be rendered to HTML) and in the browser (to hydrate), so you can’t just call `std::fs`; it will panic, because there’s no access to the local filesystem (and certainly not to the server filesystem!) in the browser. This would be a security nightmare! + +Except... wait. We’re in islands mode. This `HomePage` component _really does_ only run on the server. So we can, in fact, just use ordinary server code like this. + +> **Is this a dumb example?** Yes! Synchronously reading from three different local files in a `.map()` is not a good choice in real life. The point here is just to demonstrate that this is, definitely, server-only content. + +Go ahead and create three files in the root of the project called `a.txt`, `b.txt`, and `c.txt`, and fill them in with whatever content you’d like. + +Refresh the page and you should see the content in the browser. Edit the files and refresh again; it will be updated. + +You can pass server-only content from a `#[component]` into the children of an `#[island]`, without the island needing to know anything about how to access that data or render that content. + +**This is really important.** Passing server `children` to islands means that you can keep islands small. Ideally, you don’t want to slap and `#[island]` around a whole chunk of your page. You want to break that chunk out into an interactive piece, which can be an `#[island]`, and a bunch of additional server content that can be passed to that island as `children`, so that the non-interactive subsections of an interactive part of the page can be kept out of the WASM binary. + +## Passing Context Between Islands + +These aren’t really “tabs” yet: they just show every tab, all the time. So let’s add some simple logic to our `Tabs` and `Tab` components. + +We’ll modify `Tabs` to create a simple `selected` signal. We provide the read half via context, and set the value of the signal whenever someone clicks one of our buttons. + +```rust +#[island] +fn Tabs(labels: Vec, children: Children) -> impl IntoView { + let (selected, set_selected) = create_signal(0); + provide_context(selected); + + let buttons = labels + .into_iter() + .enumerate() + .map(|(index, label)| view! { + + }) + .collect_view(); +// ... +``` + +And let’s modify the `Tab` island to use that context to show or hide itself: + +```rust +#[island] +fn Tab(children: Children) -> impl IntoView { + let selected = expect_context::>(); + view! { +
    +// ... +``` + +Now the tabs behave exactly as I’d expect. `Tabs` passes the signal via context to each `Tab`, which uses it to determine whether it should be open or not. + +> That’s why in `HomePage`, I made `let tabs = move ||` a function, and called it like `{tabs()}`: creating the tabs lazily this way meant that the `Tabs` island would already have provided the `selected` context by the time each `Tab` went looking for it. + +Our complete tabs demo is about 220kb uncompressed: not the smallest demo in the world, but still about a third smaller than the counter button! Just for kicks, I built the same demo without islands mode, using `#[server]` functions and `Suspense`. and it was 429kb. So again, this was about a 50% savings in binary size. And this app includes quite minimal server-only content: remember that as we add additional server-only components and pages, this 220 will not grow. + +## Overview + +This demo may seem pretty basic. It is. But there are a number of immediate takeaways: + +- **50% WASM binary size reduction**, which means measurable improvements in time to interactivity and initial load times for clients. +- **Reduced HTML page size.** This one is less obvious, but it’s true and important: HTML generated from `#[component]`s doesn’t need all the hydration IDs and other boilerplate added. +- **Reduced data serialization costs.** Creating a resource and reading it on the client means you need to serialize the data, so it can be used for hydration. If you’ve also read that data to create HTML in a `Suspense`, you end up with “double data,” i.e., the same exact data is both rendered to HTML and serialized as JSON, increasing the size of responses, and therefore slowing them down. +- **Easily use server-only APIs** inside a `#[component]` as if it were a normal, native Rust function running on the server—which, in islands mode, it is! +- **Reduced `#[server]`/`create_resource`/`Suspense` boilerplate** for loading server data. + +## Future Exploration + +The `experimental-islands` feature included in 0.5 reflects work at the cutting edge of what frontend web frameworks are exploring right now. As it stands, our islands approach is very similar to Astro (before its recent View Transitions support): it allows you to build a traditional server-rendered, multi-page app and pretty seamlessly integrate islands of interactivity. + +There are some small improvements that will be easy to add. For example, we can do something very much like Astro's View Transitions approach: + +- add client-side routing for islands apps by fetching subsequent navigations from the server and replacing the HTML document with the new one +- add animated transitions between the old and new document using the View Transitions API +- support explicit persistent islands, i.e., islands that you can mark with unique IDs (something like `persist:searchbar` on the component in the view), which can be copied over from the old to the new document without losing their current state + +There are other, larger architectural changes that I’m [not sold on yet](https://github.com/leptos-rs/leptos/issues/1830). + +## Additional Information + +Check out the [islands PR](https://github.com/leptos-rs/leptos/pull/1660), [roadmap](https://github.com/leptos-rs/leptos/issues/1830), and [Hackernews demo](https://github.com/leptos-rs/leptos/tree/main/examples/hackernews_islands_axum) for additional discussion. + +## Demo Code + +```rust +use leptos::*; +use leptos_router::*; + +#[component] +pub fn App() -> impl IntoView { + view! { + +
    + + + +
    +
    + } +} + +/// Renders the home page of your application. +#[component] +fn HomePage() -> impl IntoView { + let files = ["a.txt", "b.txt", "c.txt"]; + let labels = files.iter().copied().map(Into::into).collect(); + let tabs = move || { + files + .into_iter() + .enumerate() + .map(|(index, filename)| { + let content = std::fs::read_to_string(filename).unwrap(); + view! { + +
    +

    {filename.to_string()}

    +

    {content}

    +
    +
    + } + }) + .collect_view() + }; + + view! { +

    "Welcome to Leptos!"

    +

    "Click any of the tabs below to read a recipe."

    + +
    {tabs()}
    +
    + } +} + +#[island] +fn Tabs(labels: Vec, children: Children) -> impl IntoView { + let (selected, set_selected) = create_signal(0); + provide_context(selected); + + let buttons = labels + .into_iter() + .enumerate() + .map(|(index, label)| { + view! { + + } + }) + .collect_view(); + view! { +
    + {buttons} +
    + {children()} + } +} + +#[island] +fn Tab(index: usize, children: Children) -> impl IntoView { + let selected = expect_context::>(); + view! { +
    + {children()} +
    + } +} +``` diff --git a/src/metadata.md b/src/metadata.md new file mode 100644 index 0000000..0de45f7 --- /dev/null +++ b/src/metadata.md @@ -0,0 +1,49 @@ +# Metadata + +So far, everything we’ve rendered has been inside the `` of the HTML document. And this makes sense. After all, everything you can see on a web page lives inside the ``. + +However, there are plenty of occasions where you might want to update something inside the `` of the document using the same reactive primitives and component patterns you use for your UI. + +That’s where the [`leptos_meta`](https://docs.rs/leptos_meta/latest/leptos_meta/) package comes in. + +## Metadata Components + +`leptos_meta` provides special components that let you inject data from inside components anywhere in your application into the ``: + +[``](https://docs.rs/leptos_meta/latest/leptos_meta/fn.Title.html) allows you to set the document’s title from any component. It also takes a `formatter` function that can be used to apply the same format to the title set by other pages. So, for example, if you put `<Title formatter=|text| format!("{text} — My Awesome Site")/>` in your `<App/>` component, and then `<Title text="Page 1"/>` and `<Title text="Page 2"/>` on your routes, you’ll get `Page 1 — My Awesome Site` and `Page 2 — My Awesome Site`. + +[`<Link/>`](https://docs.rs/leptos_meta/latest/leptos_meta/fn.Link.html) takes the standard attributes of the `<link>` element. + +[`<Stylesheet/>`](https://docs.rs/leptos_meta/latest/leptos_meta/fn.Stylesheet.html) creates a `<link rel="stylesheet">` with the `href` you give. + +[`<Style/>`](https://docs.rs/leptos_meta/latest/leptos_meta/fn.Style.html) creates a `<style>` with the children you pass in (usually a string). You can use this to import some custom CSS from another file at compile time `<Style>{include_str!("my_route.css")}</Style>`. + +[`<Meta/>`](https://docs.rs/leptos_meta/latest/leptos_meta/fn.Meta.html) lets you set `<meta>` tags with descriptions and other metadata. + +## `<Script/>` and `<script>` + +`leptos_meta` also provides a [`<Script/>`](https://docs.rs/leptos_meta/latest/leptos_meta/fn.Script.html) component, and it’s worth pausing here for a second. All of the other components we’ve considered inject `<head>`-only elements in the `<head>`. But a `<script>` can also be included in the body. + +There’s a very simple way to determine whether you should use a capital-S `<Script/>` component or a lowercase-s `<script>` element: the `<Script/>` component will be rendered in the `<head>`, and the `<script>` element will be rendered wherever in the `<body>` of your user interface you put it in, alongside other normal HTML elements. These cause JavaScript to load and run at different times, so use whichever is appropriate to your needs. + +## `<Body/>` and `<Html/>` + +There are even a couple elements designed to make semantic HTML and styling easier. [`<Html/>`](https://docs.rs/leptos_meta/latest/leptos_meta/fn.Html.html) lets you set the `lang` and `dir` on your `<html>` tag from your application code. `<Html/>` and [`<Body/>`](https://docs.rs/leptos_meta/latest/leptos_meta/fn.Body.html) both have `class` props that let you set their respective `class` attributes, which is sometimes needed by CSS frameworks for styling. + +`<Body/>` and `<Html/>` both also have `attributes` props which can be used to set any number of additional attributes on them via the `attr:` syntax: + +```rust +<Html + lang="he" + dir="rtl" + attr:data-theme="dark" +/> +``` + +## Metadata and Server Rendering + +Now, some of this is useful in any scenario, but some of it is especially important for search-engine optimization (SEO). Making sure you have things like appropriate `<title>` and `<meta>` tags is crucial. Modern search engine crawlers do handle client-side rendering, i.e., apps that are shipped as an empty `index.html` and rendered entirely in JS/WASM. But they prefer to receive pages in which your app has been rendered to actual HTML, with metadata in the `<head>`. + +This is exactly what `leptos_meta` is for. And in fact, during server rendering, this is exactly what it does: collect all the `<head>` content you’ve declared by using its components throughout your application, and then inject it into the actual `<head>`. + +But I’m getting ahead of myself. We haven’t actually talked about server-side rendering yet. As a matter of fact... Let’s do that next! diff --git a/src/progressive_enhancement/README.md b/src/progressive_enhancement/README.md new file mode 100644 index 0000000..8a992a5 --- /dev/null +++ b/src/progressive_enhancement/README.md @@ -0,0 +1,36 @@ +# Progressive Enhancement (and Graceful Degradation) + +I’ve been driving around Boston for about fifteen years. If you don’t know Boston, let me tell you: Massachusetts has some of the most aggressive drivers(and pedestrians!) in the world. I’ve learned to practice what’s sometimes called “defensive driving”: assuming that someone’s about to swerve in front of you at an intersection when you have the right of way, preparing for a pedestrian to cross into the street at any moment, and driving accordingly. + +“Progressive enhancement” is the “defensive driving” of web design. Or really, that’s “graceful degradation,” although they’re two sides of the same coin, or the same process, from two different directions. + +**Progressive enhancement**, in this context, means beginning with a simple HTML site or application that works for any user who arrives at your page, and gradually enhancing it with layers of additional features: CSS for styling, JavaScript for interactivity, WebAssembly for Rust-powered interactivity; using particular Web APIs for a richer experience if they’re available and as needed. + +**Graceful degradation** means handling failure gracefully when parts of that stack of enhancement *aren’t* available. Here are some sources of failure your users might encounter in your app: +- Their browser doesn’t support WebAssembly because it needs to be updated. +- Their browser can’t support WebAssembly because browser updates are limited to newer OS versions, which can’t be installed on the device. (Looking at you, Apple.) +- They have WASM turned off for security or privacy reasons. +- They have JavaScript turned off for security or privacy reasons. +- JavaScript isn’t supported on their device (for example, some accessibility devices only support HTML browsing) +- The JavaScript (or WASM) never arrived at their device because they walked outside and lost WiFi. +- They stepped onto a subway car after loading the initial page and subsequent navigations can’t load data. +- ... and so on. + +How much of your app still works if one of these holds true? Two of them? Three? + +If the answer is something like “95%... okay, then 90%... okay, then 75%,” that’s graceful degradation. If the answer is “my app shows a blank screen unless everything works correctly,” that’s... rapid unscheduled disassembly. + +**Graceful degradation is especially important for WASM apps,** because WASM is the newest and least-likely-to-be-supported of the four languages that run in the browser (HTML, CSS, JS, WASM). + +Luckily, we’ve got some tools to help. + +## Defensive Design + +There are a few practices that can help your apps degrade more gracefully: +1. **Server-side rendering.** Without SSR, your app simply doesn’t work without both JS and WASM loading. In some cases this may be appropriate (think internal apps gated behind a login) but in others it’s simply broken. +2. **Native HTML elements.** Use HTML elements that do the things that you want, without additional code: `<a>` for navigation (including to hashes within the page), `<details>` for an accordion, `<form>` to persist information in the URL, etc. +3. **URL-driven state.** The more of your global state is stored in the URL (as a route param or part of the query string), the more of the page can be generated during server rendering and updated by an `<a>` or a `<form>`, which means that not only navigations but state changes can work without JS/WASM. +4. **[`SsrMode::PartiallyBlocked` or `SsrMode::InOrder`](https://docs.rs/leptos_router/latest/leptos_router/enum.SsrMode.html).** Out-of-order streaming requires a small amount of inline JS, but can fail if 1) the connection is broken halfway through the response or 2) the client’s device doesn’t support JS. Async streaming will give a complete HTML page, but only after all resources load. In-order streaming begins showing pieces of the page sooner, in top-down order. “Partially-blocked” SSR builds on out-of-order streaming by replacing `<Suspense/>` fragments that read from blocking resources on the server. This adds marginally to the initial response time (because of the `O(n)` string replacement work), in exchange for a more complete initial HTML response. This can be a good choice for situations in which there’s a clear distinction between “more important” and “less important” content, e.g., blog post vs. comments, or product info vs. reviews. If you choose to block on all the content, you’ve essentially recreated async rendering. +5. **Leaning on `<form>`s.** There’s been a bit of a `<form>` renaissance recently, and it’s no surprise. The ability of a `<form>` to manage complicated `POST` or `GET` requests in an easily-enhanced way makes it a powerful tool for graceful degradation. The example in [the `<Form/>` chapter](../router/20_form.md), for example, would work fine with no JS/WASM: because it uses a `<form method="GET">` to persist state in the URL, it works with pure HTML by making normal HTTP requests and then progressively enhances to use client-side navigations instead. + +There’s one final feature of the framework that we haven’t seen yet, and which builds on this characteristic of forms to build powerful applications: the `<ActionForm/>`. \ No newline at end of file diff --git a/src/progressive_enhancement/action_form.md b/src/progressive_enhancement/action_form.md new file mode 100644 index 0000000..25cf4d9 --- /dev/null +++ b/src/progressive_enhancement/action_form.md @@ -0,0 +1,100 @@ +# `<ActionForm/>` + +[`<ActionForm/>`](https://docs.rs/leptos_router/latest/leptos_router/fn.ActionForm.html) is a specialized `<Form/>` that takes a server action, and automatically dispatches it on form submission. This allows you to call a server function directly from a `<form>`, even without JS/WASM. + +The process is simple: + +1. Define a server function using the [`#[server]` macro](https://docs.rs/leptos/latest/leptos/attr.server.html) (see [Server Functions](../server/25_server_functions.md).) +2. Create an action using [`create_server_action`](https://docs.rs/leptos/latest/leptos/fn.create_server_action.html), specifying the type of the server function you’ve defined. +3. Create an `<ActionForm/>`, providing the server action in the `action` prop. +4. Pass the named arguments to the server function as form fields with the same names. + +> **Note:** `<ActionForm/>` only works with the default URL-encoded `POST` encoding for server functions, to ensure graceful degradation/correct behavior as an HTML form. + +```rust +#[server(AddTodo, "/api")] +pub async fn add_todo(title: String) -> Result<(), ServerFnError> { + todo!() +} + +#[component] +fn AddTodo() -> impl IntoView { + let add_todo = create_server_action::<AddTodo>(); + // holds the latest *returned* value from the server + let value = add_todo.value(); + // check if the server has returned an error + let has_error = move || value.with(|val| matches!(val, Some(Err(_)))); + + view! { + <ActionForm action=add_todo> + <label> + "Add a Todo" + // `title` matches the `title` argument to `add_todo` + <input type="text" name="title"/> + </label> + <input type="submit" value="Add"/> + </ActionForm> + } +} +``` + +It’s really that easy. With JS/WASM, your form will submit without a page reload, storing its most recent submission in the `.input()` signal of the action, its pending status in `.pending()`, and so on. (See the [`Action`](https://docs.rs/leptos/latest/leptos/struct.Action.html) docs for a refresher, if you need.) Without JS/WASM, your form will submit with a page reload. If you call a `redirect` function (from `leptos_axum` or `leptos_actix`) it will redirect to the correct page. By default, it will redirect back to the page you’re currently on. The power of HTML, HTTP, and isomorphic rendering mean that your `<ActionForm/>` simply works, even with no JS/WASM. + +## Client-Side Validation + +Because the `<ActionForm/>` is just a `<form>`, it fires a `submit` event. You can use either HTML validation, or your own client-side validation logic in an `on:submit`. Just call `ev.prevent_default()` to prevent submission. + +The [`FromFormData`](https://docs.rs/leptos_router/latest/leptos_router/trait.FromFormData.html) trait can be helpful here, for attempting to parse your server function’s data type from the submitted form. + +```rust +let on_submit = move |ev| { + let data = AddTodo::from_event(&ev); + // silly example of validation: if the todo is "nope!", nope it + if data.is_err() || data.unwrap().title == "nope!" { + // ev.prevent_default() will prevent form submission + ev.prevent_default(); + } +} +``` + +## Complex Inputs + +Server function arguments that are structs with nested serializable fields should make use of indexing notation of `serde_qs`. + +```rust +use leptos::*; +use leptos_router::*; + +#[derive(serde::Serialize, serde::Deserialize, Debug, Clone)] +struct HeftyData { + first_name: String, + last_name: String, +} + +#[component] +fn ComplexInput() -> impl IntoView { + let submit = Action::<VeryImportantFn, _>::server(); + + view! { + <ActionForm action=submit> + <input type="text" name="hefty_arg[first_name]" value="leptos"/> + <input + type="text" + name="hefty_arg[last_name]" + value="closures-everywhere" + /> + <input type="submit"/> + </ActionForm> + } +} + +#[server] +async fn very_important_fn( + hefty_arg: HeftyData, +) -> Result<(), ServerFnError> { + assert_eq!(hefty_arg.first_name.as_str(), "leptos"); + assert_eq!(hefty_arg.last_name.as_str(), "closures-everywhere"); + Ok(()) +} + +``` diff --git a/src/reactivity/14_create_effect.md b/src/reactivity/14_create_effect.md new file mode 100644 index 0000000..991074f --- /dev/null +++ b/src/reactivity/14_create_effect.md @@ -0,0 +1,329 @@ +# Responding to Changes with `create_effect` + +We’ve made it this far without having mentioned half of the reactive system: effects. + +Reactivity works in two halves: updating individual reactive values (“signals”) notifies the pieces of code that depend on them (“effects”) that they need to run again. These two halves of the reactive system are inter-dependent. Without effects, signals can change within the reactive system but never be observed in a way that interacts with the outside world. Without signals, effects run once but never again, as there’s no observable value to subscribe to. Effects are quite literally “side effects” of the reactive system: they exist to synchronize the reactive system with the non-reactive world outside it. + +Hidden behind the whole reactive DOM renderer that we’ve seen so far is a function called `create_effect`. + +[`create_effect`](https://docs.rs/leptos_reactive/latest/leptos_reactive/fn.create_effect.html) takes a function as its argument. It immediately runs the function. If you access any reactive signal inside that function, it registers the fact that the effect depends on that signal with the reactive runtime. Whenever one of the signals that the effect depends on changes, the effect runs again. + +```rust +let (a, set_a) = create_signal(0); +let (b, set_b) = create_signal(0); + +create_effect(move |_| { + // immediately prints "Value: 0" and subscribes to `a` + log::debug!("Value: {}", a()); +}); +``` + +The effect function is called with an argument containing whatever value it returned the last time it ran. On the initial run, this is `None`. + +By default, effects **do not run on the server**. This means you can call browser-specific APIs within the effect function without causing issues. If you need an effect to run on the server, use [`create_isomorphic_effect`](https://docs.rs/leptos_reactive/latest/leptos_reactive/fn.create_isomorphic_effect.html). + +## Autotracking and Dynamic Dependencies + +If you’re familiar with a framework like React, you might notice one key difference. React and similar frameworks typically require you to pass a “dependency array,” an explicit set of variables that determine when the effect should rerun. + +Because Leptos comes from the tradition of synchronous reactive programming, we don’t need this explicit dependency list. Instead, we automatically track dependencies depending on which signals are accessed within the effect. + +This has two effects (no pun intended). Dependencies are: + +1. **Automatic**: You don’t need to maintain a dependency list, or worry about what should or shouldn’t be included. The framework simply tracks which signals might cause the effect to rerun, and handles it for you. +2. **Dynamic**: The dependency list is cleared and updated every time the effect runs. If your effect contains a conditional (for example), only signals that are used in the current branch are tracked. This means that effects rerun the absolute minimum number of times. + +> If this sounds like magic, and if you want a deep dive into how automatic dependency tracking works, [check out this video](https://www.youtube.com/watch?v=GWB3vTWeLd4). (Apologies for the low volume!) + +## Effects as Zero-Cost-ish Abstraction + +While they’re not a “zero-cost abstraction” in the most technical sense—they require some additional memory use, exist at runtime, etc.—at a higher level, from the perspective of whatever expensive API calls or other work you’re doing within them, effects are a zero-cost abstraction. They rerun the absolute minimum number of times necessary, given how you’ve described them. + +Imagine that I’m creating some kind of chat software, and I want people to be able to display their full name, or just their first name, and to notify the server whenever their name changes: + +```rust +let (first, set_first) = create_signal(String::new()); +let (last, set_last) = create_signal(String::new()); +let (use_last, set_use_last) = create_signal(true); + +// this will add the name to the log +// any time one of the source signals changes +create_effect(move |_| { + log( + if use_last() { + format!("{} {}", first(), last()) + } else { + first() + }, + ) +}); +``` + +If `use_last` is `true`, effect should rerun whenever `first`, `last`, or `use_last` changes. But if I toggle `use_last` to `false`, a change in `last` will never cause the full name to change. In fact, `last` will be removed from the dependency list until `use_last` toggles again. This saves us from sending multiple unnecessary requests to the API if I change `last` multiple times while `use_last` is still `false`. + +## To `create_effect`, or not to `create_effect`? + +Effects are intended to run _side-effects_ of the system, not to synchronize state _within_ the system. In other words: don’t write to signals within effects. + +If you need to define a signal that depends on the value of other signals, use a derived signal or [`create_memo`](https://docs.rs/leptos_reactive/latest/leptos_reactive/fn.create_memo.html). + +If you need to synchronize some reactive value with the non-reactive world outside—like a web API, the console, the filesystem, or the DOM—create an effect. + +> If you’re curious for more information about when you should and shouldn’t use `create_effect`, [check out this video](https://www.youtube.com/watch?v=aQOFJQ2JkvQ) for a more in-depth consideration! + +## Effects and Rendering + +We’ve managed to get this far without mentioning effects because they’re built into the Leptos DOM renderer. We’ve seen that you can create a signal and pass it into the `view` macro, and it will update the relevant DOM node whenever the signal changes: + +```rust +let (count, set_count) = create_signal(0); + +view! { + <p>{count}</p> +} +``` + +This works because the framework essentially creates an effect wrapping this update. You can imagine Leptos translating this view into something like this: + +```rust +let (count, set_count) = create_signal(0); + +// create a DOM element +let p = create_element("p"); + +// create an effect to reactively update the text +create_effect(move |prev_value| { + // first, access the signal’s value and convert it to a string + let text = count().to_string(); + + // if this is different from the previous value, update the node + if prev_value != Some(text) { + p.set_text_content(&text); + } + + // return this value so we can memoize the next update + text +}); +``` + +Every time `count` is updated, this effect wil rerun. This is what allows reactive, fine-grained updates to the DOM. + +## Explicit, Cancelable Tracking with `watch` + +In addition to `create_effect`, Leptos provides a [`watch`](https://docs.rs/leptos_reactive/latest/leptos_reactive/fn.watch.html) function, which can be used for two main purposes: + +1. Separating tracking and responding to changes by explicitly passing in a set of values to track. +2. Canceling tracking by calling a stop function. + +Like `create_resource`, `watch` takes a first argument, which is reactively tracked, and a second, which is not. Whenever a reactive value in its `deps` argument is changed, the `callback` is run. `watch` returns a function that can be called to stop tracking the dependencies. + +```rust +let (num, set_num) = create_signal(0); + +let stop = watch( + move || num.get(), + move |num, prev_num, _| { + log::debug!("Number: {}; Prev: {:?}", num, prev_num); + }, + false, +); + +set_num.set(1); // > "Number: 1; Prev: Some(0)" + +stop(); // stop watching + +set_num.set(2); // (nothing happens) +``` + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/14-effect-0-5-d6hkch?file=%2Fsrc%2Fmain.rs%3A1%2C1) + +<iframe src="https://codesandbox.io/p/sandbox/14-effect-0-5-d6hkch?file=%2Fsrc%2Fmain.rs%3A1%2C1" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::html::Input; +use leptos::*; + +#[component] +fn App() -> impl IntoView { + // Just making a visible log here + // You can ignore this... + let log = create_rw_signal::<Vec<String>>(vec![]); + let logged = move || log().join("\n"); + provide_context(log); + + view! { + <CreateAnEffect/> + <pre>{logged}</pre> + } +} + +#[component] +fn CreateAnEffect() -> impl IntoView { + let (first, set_first) = create_signal(String::new()); + let (last, set_last) = create_signal(String::new()); + let (use_last, set_use_last) = create_signal(true); + + // this will add the name to the log + // any time one of the source signals changes + create_effect(move |_| { + log( + + if use_last() { + format!("{} {}", first(), last()) + } else { + first() + }, + ) + }); + + view! { + <h1><code>"create_effect"</code> " Version"</h1> + <form> + <label> + "First Name" + <input type="text" name="first" prop:value=first + on:change=move |ev| set_first(event_target_value(&ev)) + /> + </label> + <label> + "Last Name" + <input type="text" name="last" prop:value=last + on:change=move |ev| set_last(event_target_value(&ev)) + /> + </label> + <label> + "Show Last Name" + <input type="checkbox" name="use_last" prop:checked=use_last + on:change=move |ev| set_use_last(event_target_checked(&ev)) + /> + </label> + </form> + } +} + +#[component] +fn ManualVersion() -> impl IntoView { + let first = create_node_ref::<Input>(); + let last = create_node_ref::<Input>(); + let use_last = create_node_ref::<Input>(); + + let mut prev_name = String::new(); + let on_change = move |_| { + log(" listener"); + let first = first.get().unwrap(); + let last = last.get().unwrap(); + let use_last = use_last.get().unwrap(); + let this_one = if use_last.checked() { + format!("{} {}", first.value(), last.value()) + } else { + first.value() + }; + + if this_one != prev_name { + log(&this_one); + prev_name = this_one; + } + }; + + view! { + <h1>"Manual Version"</h1> + <form on:change=on_change> + <label> + "First Name" + <input type="text" name="first" + node_ref=first + /> + </label> + <label> + "Last Name" + <input type="text" name="last" + node_ref=last + /> + </label> + <label> + "Show Last Name" + <input type="checkbox" name="use_last" + checked + node_ref=use_last + /> + </label> + </form> + } +} + +#[component] +fn EffectVsDerivedSignal() -> impl IntoView { + let (my_value, set_my_value) = create_signal(String::new()); + // Don't do this. + /*let (my_optional_value, set_optional_my_value) = create_signal(Option::<String>::None); + + create_effect(move |_| { + if !my_value.get().is_empty() { + set_optional_my_value(Some(my_value.get())); + } else { + set_optional_my_value(None); + } + });*/ + + // Do this + let my_optional_value = + move || (!my_value.with(String::is_empty)).then(|| Some(my_value.get())); + + view! { + <input + prop:value=my_value + on:input= move |ev| set_my_value(event_target_value(&ev)) + /> + + <p> + <code>"my_optional_value"</code> + " is " + <code> + <Show + when=move || my_optional_value().is_some() + fallback=|| view! { "None" } + > + "Some(\"" {my_optional_value().unwrap()} "\")" + </Show> + </code> + </p> + } +} + +#[component] +pub fn Show<F, W, IV>( + /// The components Show wraps + children: Box<dyn Fn() -> Fragment>, + /// A closure that returns a bool that determines whether this thing runs + when: W, + /// A closure that returns what gets rendered if the when statement is false + fallback: F, +) -> impl IntoView +where + W: Fn() -> bool + 'static, + F: Fn() -> IV + 'static, + IV: IntoView, +{ + let memoized_when = create_memo(move |_| when()); + + move || match memoized_when.get() { + true => children().into_view(), + false => fallback().into_view(), + } +} + +fn log(msg: impl std::fmt::Display) { + let log = use_context::<RwSignal<Vec<String>>>().unwrap(); + log.update(|log| log.push(msg.to_string())); +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/reactivity/README.md b/src/reactivity/README.md new file mode 100644 index 0000000..29b7794 --- /dev/null +++ b/src/reactivity/README.md @@ -0,0 +1,5 @@ +# Reactivity + +Leptos is built on top of a fine-grained reactive system, designed to run expensive side effects (like rendering something in a browser, or making a network request) as infrequently as possible in response to change, reactive values. + +So far we’ve seen signals in action. These chapters will go into a bit more depth, and look at effects, which are the other half of the story. diff --git a/src/reactivity/interlude_functions.md b/src/reactivity/interlude_functions.md new file mode 100644 index 0000000..0091c01 --- /dev/null +++ b/src/reactivity/interlude_functions.md @@ -0,0 +1,76 @@ +# Interlude: Reactivity and Functions + +One of our core contributors said to me recently: “I never used closures this often +until I started using Leptos.” And it’s true. Closures are at the heart of any Leptos +application. It sometimes looks a little silly: + +```rust +// a signal holds a value, and can be updated +let (count, set_count) = create_signal(0); + +// a derived signal is a function that accesses other signals +let double_count = move || count() * 2; +let count_is_odd = move || count() & 1 == 1; +let text = move || if count_is_odd() { + "odd" +} else { + "even" +}; + +// an effect automatically tracks the signals it depends on +// and reruns when they change +create_effect(move |_| { + logging::log!("text = {}", text()); +}); + +view! { + <p>{move || text().to_uppercase()}</p> +} +``` + +Closures, closures everywhere! + +But why? + +## Functions and UI Frameworks + +Functions are at the heart of every UI framework. And this makes perfect sense. Creating a user interface is basically divided into two phases: + +1. initial rendering +2. updates + +In a web framework, the framework does some kind of initial rendering. Then it hands control back over to the browser. When certain events fire (like a mouse click) or asynchronous tasks finish (like an HTTP request finishing), the browser wakes the framework back up to update something. The framework runs some kind of code to update your user interface, and goes back asleep until the browser wakes it up again. + +The key phrase here is “runs some kind of code.” The natural way to “run some kind of code” at an arbitrary point in time—in Rust or in any other programming language—is to call a function. And in fact every UI framework is based on rerunning some kind of function over and over: + +1. virtual DOM (VDOM) frameworks like React, Yew, or Dioxus rerun a component or render function over and over, to generate a virtual DOM tree that can be reconciled with the previous result to patch the DOM +2. compiled frameworks like Angular and Svelte divide your component templates into “create” and “update” functions, rerunning the update function when they detect a change to the component’s state +3. in fine-grained reactive frameworks like SolidJS, Sycamore, or Leptos, _you_ define the functions that rerun + +That’s what all our components are doing. + +Take our typical `<SimpleCounter/>` example in its simplest form: + +```rust +#[component] +pub fn SimpleCounter() -> impl IntoView { + let (value, set_value) = create_signal(0); + + let increment = move |_| set_value.update(|value| *value += 1); + + view! { + <button on:click=increment> + {value} + </button> + } +} +``` + +The `SimpleCounter` function itself runs once. The `value` signal is created once. The framework hands off the `increment` function to the browser as an event listener. When you click the button, the browser calls `increment`, which updates `value` via `set_value`. And that updates the single text node represented in our view by `{value}`. + +Closures are key to reactivity. They provide the framework with the ability to rerun the smallest possible unit of your application in response to a change. + +So remember two things: + +1. Your component function is a setup function, not a render function: it only runs once. +2. For values in your view template to be reactive, they must be functions: either signals (which implement the `Fn` traits) or closures. diff --git a/src/reactivity/working_with_signals.md b/src/reactivity/working_with_signals.md new file mode 100644 index 0000000..e2b57a9 --- /dev/null +++ b/src/reactivity/working_with_signals.md @@ -0,0 +1,140 @@ +# Working with Signals + +So far we’ve used some simple examples of [`create_signal`](https://docs.rs/leptos/latest/leptos/fn.create_signal.html), which returns a [`ReadSignal`](https://docs.rs/leptos/latest/leptos/struct.ReadSignal.html) getter and a [`WriteSignal`](https://docs.rs/leptos/latest/leptos/struct.WriteSignal.html) setter. + +## Getting and Setting + +There are four basic signal operations: + +1. [`.get()`](https://docs.rs/leptos/latest/leptos/struct.ReadSignal.html#impl-SignalGet%3CT%3E-for-ReadSignal%3CT%3E) clones the current value of the signal and tracks any future changes to the value reactively. +2. [`.with()`](https://docs.rs/leptos/latest/leptos/struct.ReadSignal.html#impl-SignalWith%3CT%3E-for-ReadSignal%3CT%3E) takes a function, which receives the current value of the signal by reference (`&T`), and tracks any future changes. +3. [`.set()`](https://docs.rs/leptos/latest/leptos/struct.WriteSignal.html#impl-SignalSet%3CT%3E-for-WriteSignal%3CT%3E) replaces the current value of the signal and notifies any subscribers that they need to update. +4. [`.update()`](https://docs.rs/leptos/latest/leptos/struct.WriteSignal.html#impl-SignalUpdate%3CT%3E-for-WriteSignal%3CT%3E) takes a function, which receives a mutable reference to the current value of the signal (`&mut T`), and notifies any subscribers that they need to update. (`.update()` doesn’t return the value returned by the closure, but you can use [`.try_update()`](https://docs.rs/leptos/latest/leptos/trait.SignalUpdate.html#tymethod.try_update) if you need to; for example, if you’re removing an item from a `Vec<_>` and want the removed item.) + +Calling a `ReadSignal` as a function is syntax sugar for `.get()`. Calling a `WriteSignal` as a function is syntax sugar for `.set()`. So + +```rust +let (count, set_count) = create_signal(0); +set_count(1); +logging::log!(count()); +``` + +is the same as + +```rust +let (count, set_count) = create_signal(0); +set_count.set(1); +logging::log!(count.get()); +``` + +You might notice that `.get()` and `.set()` can be implemented in terms of `.with()` and `.update()`. In other words, `count.get()` is identical with `count.with(|n| n.clone())`, and `count.set(1)` is implemented by doing `count.update(|n| *n = 1)`. + +But of course, `.get()` and `.set()` (or the plain function-call forms!) are much nicer syntax. + +However, there are some very good use cases for `.with()` and `.update()`. + +For example, consider a signal that holds a `Vec<String>`. + +```rust +let (names, set_names) = create_signal(Vec::new()); +if names().is_empty() { + set_names(vec!["Alice".to_string()]); +} +``` + +In terms of logic, this is simple enough, but it’s hiding some significant inefficiencies. Remember that `names().is_empty()` is sugar for `names.get().is_empty()`, which clones the value (it’s `names.with(|n| n.clone()).is_empty()`). This means we clone the whole `Vec<String>`, run `is_empty()`, and then immediately throw away the clone. + +Likewise, `set_names` replaces the value with a whole new `Vec<_>`. This is fine, but we might as well just mutate the original `Vec<_>` in place. + +```rust +let (names, set_names) = create_signal(Vec::new()); +if names.with(|names| names.is_empty()) { + set_names.update(|names| names.push("Alice".to_string())); +} +``` + +Now our function simply takes `names` by reference to run `is_empty()`, avoiding that clone. + +And if you have Clippy on, or if you have sharp eyes, you may notice we can make this even neater: + +```rust +if names.with(Vec::is_empty) { + // ... +} +``` + +After all, `.with()` simply takes a function that takes the value by reference. Since `Vec::is_empty` takes `&self`, we can pass it in directly and avoid the unnecessary closure. + +There are some helper macros to make using `.with()` and `.update()` easier to use, especially when using multiple signals. + +```rust +let (first, _) = create_signal("Bob".to_string()); +let (middle, _) = create_signal("J.".to_string()); +let (last, _) = create_signal("Smith".to_string()); +``` + +If you wanted to concatenate these 3 signals together without unnecessary cloning, you would have to write something like: + +```rust +let name = move || { + first.with(|first| { + middle.with(|middle| last.with(|last| format!("{first} {middle} {last}"))) + }) +}; +``` + +Which is very long and annoying to write. + +Instead, you can use the `with!` macro to get references to all the signals at the same time. + +```rust +let name = move || with!(|first, middle, last| format!("{first} {middle} {last}")); +``` + +This expands to the same thing as above. Take a look at the `with!` docs for more info, and the corresponding macros `update!`, `with_value!` and `update_value!`. + +## Making signals depend on each other + +Often people ask about situations in which some signal needs to change based on some other signal’s value. There are three good ways to do this, and one that’s less than ideal but okay under controlled circumstances. + +### Good Options + +**1) B is a function of A.** Create a signal for A and a derived signal or memo for B. + +```rust +let (count, set_count) = create_signal(1); +let derived_signal_double_count = move || count() * 2; +let memoized_double_count = create_memo(move |_| count() * 2); +``` + +> For guidance on whether to use a derived signal or a memo, see the docs for [`create_memo`](https://docs.rs/leptos/latest/leptos/fn.create_memo.html) + +**2) C is a function of A and some other thing B.** Create signals for A and B and a derived signal or memo for C. + +```rust +let (first_name, set_first_name) = create_signal("Bridget".to_string()); +let (last_name, set_last_name) = create_signal("Jones".to_string()); +let full_name = move || format!("{} {}", first_name(), last_name()); +``` + +**3) A and B are independent signals, but sometimes updated at the same time.** When you make the call to update A, make a separate call to update B. + +```rust +let (age, set_age) = create_signal(32); +let (favorite_number, set_favorite_number) = create_signal(42); +// use this to handle a click on a `Clear` button +let clear_handler = move |_| { + set_age(0); + set_favorite_number(0); +}; +``` + +### If you really must... + +**4) Create an effect to write to B whenever A changes.** This is officially discouraged, for several reasons: +a) It will always be less efficient, as it means every time A updates you do two full trips through the reactive process. (You set A, which causes the effect to run, as well as any other effects that depend on A. Then you set B, which causes any effects that depend on B to run.) +b) It increases your chances of accidentally creating things like infinite loops or over-re-running effects. This is the kind of ping-ponging, reactive spaghetti code that was common in the early 2010s and that we try to avoid with things like read-write segregation and discouraging writing to signals from effects. + +In most situations, it’s best to rewrite things such that there’s a clear, top-down data flow based on derived signals or memos. But this isn’t the end of the world. + +> I’m intentionally not providing an example here. Read the [`create_effect`](https://docs.rs/leptos/latest/leptos/fn.create_effect.html) docs to figure out how this would work. diff --git a/src/router/16_routes.md b/src/router/16_routes.md new file mode 100644 index 0000000..e84fbef --- /dev/null +++ b/src/router/16_routes.md @@ -0,0 +1,144 @@ +# Defining Routes + +## Getting Started + +It’s easy to get started with the router. + +First things first, make sure you’ve added the `leptos_router` package to your dependencies. + +> It’s important that the router is a separate package from `leptos` itself. This means that everything in the router can be defined in user-land code. If you want to create your own router, or use no router, you’re completely free to do that! + +And import the relevant types from the router, either with something like + +```rust +use leptos_router::{Route, RouteProps, Router, RouterProps, Routes, RoutesProps}; +``` + +or simply + +```rust +use leptos_router::*; +``` + +## Providing the `<Router/>` + +Routing behavior is provided by the [`<Router/>`](https://docs.rs/leptos_router/latest/leptos_router/fn.Router.html) component. This should usually be somewhere near the root of your application, the rest of the app. + +> You shouldn’t try to use multiple `<Router/>`s in your app. Remember that the router drives global state: if you have multiple routers, which one decides what to do when the URL changes? + +Let’s start with a simple `<App/>` component using the router: + +```rust +use leptos::*; +use leptos_router::*; + +#[component] +pub fn App() -> impl IntoView { + view! { + <Router> + <nav> + /* ... */ + </nav> + <main> + /* ... */ + </main> + </Router> + } +} +``` + +## Defining `<Routes/>` + +The [`<Routes/>`](https://docs.rs/leptos_router/latest/leptos_router/fn.Routes.html) component is where you define all the routes to which a user can navigate in your application. Each possible route is defined by a [`<Route/>`](https://docs.rs/leptos_router/latest/leptos_router/fn.Route.html) component. + +You should place the `<Routes/>` component at the location within your app where you want routes to be rendered. Everything outside `<Routes/>` will be present on every page, so you can leave things like a navigation bar or menu outside the `<Routes/>`. + +```rust +use leptos::*; +use leptos_router::*; + +#[component] +pub fn App() -> impl IntoView { + view! { + <Router> + <nav> + /* ... */ + </nav> + <main> + // all our routes will appear inside <main> + <Routes> + /* ... */ + </Routes> + </main> + </Router> + } +} +``` + +Individual routes are defined by providing children to `<Routes/>` with the `<Route/>` component. `<Route/>` takes a `path` and a `view`. When the current location matches `path`, the `view` will be created and displayed. + +The `path` can include + +- a static path (`/users`), +- dynamic, named parameters beginning with a colon (`/:id`), +- and/or a wildcard beginning with an asterisk (`/user/*any`) + +The `view` is a function that returns a view. Any component with no props works here, as does a closure that returns some view. + +```rust +<Routes> + <Route path="/" view=Home/> + <Route path="/users" view=Users/> + <Route path="/users/:id" view=UserProfile/> + <Route path="/*any" view=|| view! { <h1>"Not Found"</h1> }/> +</Routes> +``` + +> `view` takes a `Fn() -> impl IntoView`. If a component has no props, it can be passed directly into the `view`. In this case, `view=Home` is just a shorthand for `|| view! { <Home/> }`. + +Now if you navigate to `/` or to `/users` you’ll get the home page or the `<Users/>`. If you go to `/users/3` or `/blahblah` you’ll get a user profile or your 404 page (`<NotFound/>`). On every navigation, the router determines which `<Route/>` should be matched, and therefore what content should be displayed where the `<Routes/>` component is defined. + +Note that you can define your routes in any order. The router scores each route to see how good a match it is, rather than simply trying to match them top to bottom. + +Simple enough? + +## Conditional Routes + +`leptos_router` is based on the assumption that you have one and only one `<Routes/>` component in your app. It uses this to generate routes on the server side, optimize route matching by caching calculated branches, and render your application. + +You should not conditionally render `<Routes/>` using another component like `<Show/>` or `<Suspense/>`. + +```rust +// ❌ don't do this! +view! { + <Show when=|| is_loaded() fallback=|| view! { <p>"Loading"</p> }> + <Routes> + <Route path="/" view=Home/> + </Routes> + </Show> +} +``` + +Instead, you can use nested routing to render your `<Routes/>` once, and conditionally render the router outlet: + +```rust +// ✅ do this instead! +view! { + <Routes> + // parent route + <Route path="/" view=move || { + view! { + // only show the outlet if data have loaded + <Show when=|| is_loaded() fallback=|| view! { <p>"Loading"</p> }> + <Outlet/> + </Show> + } + }> + // nested child route + <Route path="/" view=Home/> + </Route> + </Routes> +} +``` + +If this looks bizarre, don’t worry! The next section of the book is about this kind of nested routing. diff --git a/src/router/17_nested_routing.md b/src/router/17_nested_routing.md new file mode 100644 index 0000000..88444cc --- /dev/null +++ b/src/router/17_nested_routing.md @@ -0,0 +1,324 @@ +# Nested Routing + +We just defined the following set of routes: + +```rust +<Routes> + <Route path="/" view=Home/> + <Route path="/users" view=Users/> + <Route path="/users/:id" view=UserProfile/> + <Route path="/*any" view=NotFound/> +</Routes> +``` + +There’s a certain amount of duplication here: `/users` and `/users/:id`. This is fine for a small app, but you can probably already tell it won’t scale well. Wouldn’t it be nice if we could nest these routes? + +Well... you can! + +```rust +<Routes> + <Route path="/" view=Home/> + <Route path="/users" view=Users> + <Route path=":id" view=UserProfile/> + </Route> + <Route path="/*any" view=NotFound/> +</Routes> +``` + +But wait. We’ve just subtly changed what our application does. + +The next section is one of the most important in this entire routing section of the guide. Read it carefully, and feel free to ask questions if there’s anything you don’t understand. + +# Nested Routes as Layout + +Nested routes are a form of layout, not a method of route definition. + +Let me put that another way: The goal of defining nested routes is not primarily to avoid repeating yourself when typing out the paths in your route definitions. It is actually to tell the router to display multiple `<Route/>`s on the page at the same time, side by side. + +Let’s look back at our practical example. + +```rust +<Routes> + <Route path="/users" view=Users/> + <Route path="/users/:id" view=UserProfile/> +</Routes> +``` + +This means: + +- If I go to `/users`, I get the `<Users/>` component. +- If I go to `/users/3`, I get the `<UserProfile/>` component (with the parameter `id` set to `3`; more on that later) + +Let’s say I use nested routes instead: + +```rust +<Routes> + <Route path="/users" view=Users> + <Route path=":id" view=UserProfile/> + </Route> +</Routes> +``` + +This means: + +- If I go to `/users/3`, the path matches two `<Route/>`s: `<Users/>` and `<UserProfile/>`. +- If I go to `/users`, the path is not matched. + +I actually need to add a fallback route + +```rust +<Routes> + <Route path="/users" view=Users> + <Route path=":id" view=UserProfile/> + <Route path="" view=NoUser/> + </Route> +</Routes> +``` + +Now: + +- If I go to `/users/3`, the path matches `<Users/>` and `<UserProfile/>`. +- If I go to `/users`, the path matches `<Users/>` and `<NoUser/>`. + +When I use nested routes, in other words, each **path** can match multiple **routes**: each URL can render the views provided by multiple `<Route/>` components, at the same time, on the same page. + +This may be counter-intuitive, but it’s very powerful, for reasons you’ll hopefully see in a few minutes. + +## Why Nested Routing? + +Why bother with this? + +Most web applications contain levels of navigation that correspond to different parts of the layout. For example, in an email app you might have a URL like `/contacts/greg`, which shows a list of contacts on the left of the screen, and contact details for Greg on the right of the screen. The contact list and the contact details should always appear on the screen at the same time. If there’s no contact selected, maybe you want to show a little instructional text. + +You can easily define this with nested routes + +```rust +<Routes> + <Route path="/contacts" view=ContactList> + <Route path=":id" view=ContactInfo/> + <Route path="" view=|| view! { + <p>"Select a contact to view more info."</p> + }/> + </Route> +</Routes> +``` + +You can go even deeper. Say you want to have tabs for each contact’s address, email/phone, and your conversations with them. You can add _another_ set of nested routes inside `:id`: + +```rust +<Routes> + <Route path="/contacts" view=ContactList> + <Route path=":id" view=ContactInfo> + <Route path="" view=EmailAndPhone/> + <Route path="address" view=Address/> + <Route path="messages" view=Messages/> + </Route> + <Route path="" view=|| view! { + <p>"Select a contact to view more info."</p> + }/> + </Route> +</Routes> +``` + +> The main page of the [Remix website](https://remix.run/), a React framework from the creators of React Router, has a great visual example if you scroll down, with three levels of nested routing: Sales > Invoices > an invoice. + +## `<Outlet/>` + +Parent routes do not automatically render their nested routes. After all, they are just components; they don’t know exactly where they should render their children, and “just stick it at the end of the parent component” is not a great answer. + +Instead, you tell a parent component where to render any nested components with an `<Outlet/>` component. The `<Outlet/>` simply renders one of two things: + +- if there is no nested route that has been matched, it shows nothing +- if there is a nested route that has been matched, it shows its `view` + +That’s all! But it’s important to know and to remember, because it’s a common source of “Why isn’t this working?” frustration. If you don’t provide an `<Outlet/>`, the nested route won’t be displayed. + +```rust +#[component] +pub fn ContactList() -> impl IntoView { + let contacts = todo!(); + + view! { + <div style="display: flex"> + // the contact list + <For each=contacts + key=|contact| contact.id + children=|contact| todo!() + /> + // the nested child, if any + // don’t forget this! + <Outlet/> + </div> + } +} +``` + +## Refactoring Route Definitions + +You don’t need to define all your routes in one place if you don’t want to. You can refactor any `<Route/>` and its children out into a separate component. + +For example, you can refactor the example above to use two separate components: + +```rust +#[component] +fn App() -> impl IntoView { + view! { + <Router> + <Routes> + <Route path="/contacts" view=ContactList> + <ContactInfoRoutes/> + <Route path="" view=|| view! { + <p>"Select a contact to view more info."</p> + }/> + </Route> + </Routes> + </Router> + } +} + +#[component(transparent)] +fn ContactInfoRoutes() -> impl IntoView { + view! { + <Route path=":id" view=ContactInfo> + <Route path="" view=EmailAndPhone/> + <Route path="address" view=Address/> + <Route path="messages" view=Messages/> + </Route> + } +} +``` + +This second component is a `#[component(transparent)]`, meaning it just returns its data, not a view: in this case, it's a [`RouteDefinition`](https://docs.rs/leptos_router/latest/leptos_router/struct.RouteDefinition.html) struct, which is what the `<Route/>` returns. As long as it is marked `#[component(transparent)]`, this sub-route can be defined wherever you want, and inserted as a component into your tree of route definitions. + +## Nested Routing and Performance + +All of this is nice, conceptually, but again—what’s the big deal? + +Performance. + +In a fine-grained reactive library like Leptos, it’s always important to do the least amount of rendering work you can. Because we’re working with real DOM nodes and not diffing a virtual DOM, we want to “rerender” components as infrequently as possible. Nested routing makes this extremely easy. + +Imagine my contact list example. If I navigate from Greg to Alice to Bob and back to Greg, the contact information needs to change on each navigation. But the `<ContactList/>` should never be rerendered. Not only does this save on rendering performance, it also maintains state in the UI. For example, if I have a search bar at the top of `<ContactList/>`, navigating from Greg to Alice to Bob won’t clear the search. + +In fact, in this case, we don’t even need to rerender the `<Contact/>` component when moving between contacts. The router will just reactively update the `:id` parameter as we navigate, allowing us to make fine-grained updates. As we navigate between contacts, we’ll update single text nodes to change the contact’s name, address, and so on, without doing _any_ additional rerendering. + +> This sandbox includes a couple features (like nested routing) discussed in this section and the previous one, and a couple we’ll cover in the rest of this chapter. The router is such an integrated system that it makes sense to provide a single example, so don’t be surprised if there’s anything you don’t understand. + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/16-router-0-5-4xp4zz?file=%2Fsrc%2Fmain.rs%3A102%2C2) + +<iframe src="https://codesandbox.io/p/sandbox/16-router-0-5-4xp4zz?file=%2Fsrc%2Fmain.rs%3A102%2C2" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::*; +use leptos_router::*; + +#[component] +fn App() -> impl IntoView { + view! { + <Router> + <h1>"Contact App"</h1> + // this <nav> will show on every routes, + // because it's outside the <Routes/> + // note: we can just use normal <a> tags + // and the router will use client-side navigation + <nav> + <h2>"Navigation"</h2> + <a href="/">"Home"</a> + <a href="/contacts">"Contacts"</a> + </nav> + <main> + <Routes> + // / just has an un-nested "Home" + <Route path="/" view=|| view! { + <h3>"Home"</h3> + }/> + // /contacts has nested routes + <Route + path="/contacts" + view=ContactList + > + // if no id specified, fall back + <Route path=":id" view=ContactInfo> + <Route path="" view=|| view! { + <div class="tab"> + "(Contact Info)" + </div> + }/> + <Route path="conversations" view=|| view! { + <div class="tab"> + "(Conversations)" + </div> + }/> + </Route> + // if no id specified, fall back + <Route path="" view=|| view! { + <div class="select-user"> + "Select a user to view contact info." + </div> + }/> + </Route> + </Routes> + </main> + </Router> + } +} + +#[component] +fn ContactList() -> impl IntoView { + view! { + <div class="contact-list"> + // here's our contact list component itself + <div class="contact-list-contacts"> + <h3>"Contacts"</h3> + <A href="alice">"Alice"</A> + <A href="bob">"Bob"</A> + <A href="steve">"Steve"</A> + </div> + + // <Outlet/> will show the nested child route + // we can position this outlet wherever we want + // within the layout + <Outlet/> + </div> + } +} + +#[component] +fn ContactInfo() -> impl IntoView { + // we can access the :id param reactively with `use_params_map` + let params = use_params_map(); + let id = move || params.with(|params| params.get("id").cloned().unwrap_or_default()); + + // imagine we're loading data from an API here + let name = move || match id().as_str() { + "alice" => "Alice", + "bob" => "Bob", + "steve" => "Steve", + _ => "User not found.", + }; + + view! { + <div class="contact-info"> + <h4>{name}</h4> + <div class="tabs"> + <A href="" exact=true>"Contact Info"</A> + <A href="conversations">"Conversations"</A> + </div> + + // <Outlet/> here is the tabs that are nested + // underneath the /contacts/:id route + <Outlet/> + </div> + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/router/18_params_and_queries.md b/src/router/18_params_and_queries.md new file mode 100644 index 0000000..bd64eb4 --- /dev/null +++ b/src/router/18_params_and_queries.md @@ -0,0 +1,202 @@ +# Params and Queries + +Static paths are useful for distinguishing between different pages, but almost every application wants to pass data through the URL at some point. + +There are two ways you can do this: + +1. named route **params** like `id` in `/users/:id` +2. named route **queries** like `q` in `/search?q=Foo` + +Because of the way URLs are built, you can access the query from _any_ `<Route/>` view. You can access route params from the `<Route/>` that defines them or any of its nested children. + +Accessing params and queries is pretty simple with a couple of hooks: + +- [`use_query`](https://docs.rs/leptos_router/latest/leptos_router/fn.use_query.html) or [`use_query_map`](https://docs.rs/leptos_router/latest/leptos_router/fn.use_query_map.html) +- [`use_params`](https://docs.rs/leptos_router/latest/leptos_router/fn.use_params.html) or [`use_params_map`](https://docs.rs/leptos_router/latest/leptos_router/fn.use_query_map.html) + +Each of these comes with a typed option (`use_query` and `use_params`) and an untyped option (`use_query_map` and `use_params_map`). + +The untyped versions hold a simple key-value map. To use the typed versions, derive the [`Params`](https://docs.rs/leptos_router/0.2.3/leptos_router/trait.Params.html) trait on a struct. + +> `Params` is a very lightweight trait to convert a flat key-value map of strings into a struct by applying `FromStr` to each field. Because of the flat structure of route params and URL queries, it’s significantly less flexible than something like `serde`; it also adds much less weight to your binary. + +```rust +use leptos::*; +use leptos_router::*; + +#[derive(Params)] +struct ContactParams { + id: usize +} + +#[derive(Params)] +struct ContactSearch { + q: String +} +``` + +> Note: The `Params` derive macro is located at `leptos::Params`, and the `Params` trait is at `leptos_router::Params`. If you avoid using glob imports like `use leptos::*;`, make sure you’re importing the right one for the derive macro. +> +> If you are not using the `nightly` feature, you will get the error +> +> ``` +> no function or associated item named `into_param` found for struct `std::string::String` in the current scope +> ``` +> +> At the moment, supporting both `T: FromStr` and `Option<T>` for typed params requires a nightly feature. You can fix this by simply changing the struct to use `q: Option<String>` instead of `q: String`. + +Now we can use them in a component. Imagine a URL that has both params and a query, like `/contacts/:id?q=Search`. + +The typed versions return `Memo<Result<T, _>>`. It’s a Memo so it reacts to changes in the URL. It’s a `Result` because the params or query need to be parsed from the URL, and may or may not be valid. + +```rust +let params = use_params::<ContactParams>(); +let query = use_query::<ContactSearch>(); + +// id: || -> usize +let id = move || { + params.with(|params| { + params + .map(|params| params.id) + .unwrap_or_default() + }) +}; +``` + +The untyped versions return `Memo<ParamsMap>`. Again, it’s memo to react to changes in the URL. [`ParamsMap`](https://docs.rs/leptos_router/0.2.3/leptos_router/struct.ParamsMap.html) behaves a lot like any other map type, with a `.get()` method that returns `Option<&String>`. + +```rust +let params = use_params_map(); +let query = use_query_map(); + +// id: || -> Option<String> +let id = move || { + params.with(|params| params.get("id").cloned()) +}; +``` + +This can get a little messy: deriving a signal that wraps an `Option<_>` or `Result<_>` can involve a couple steps. But it’s worth doing this for two reasons: + +1. It’s correct, i.e., it forces you to consider the cases, “What if the user doesn’t pass a value for this query field? What if they pass an invalid value?” +2. It’s performant. Specifically, when you navigate between different paths that match the same `<Route/>` with only params or the query changing, you can get fine-grained updates to different parts of your app without rerendering. For example, navigating between different contacts in our contact-list example does a targeted update to the name field (and eventually contact info) without needing to replace or rerender the wrapping `<Contact/>`. This is what fine-grained reactivity is for. + +> This is the same example from the previous section. The router is such an integrated system that it makes sense to provide a single example highlighting multiple features, even if we haven’t explained them all yet. + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/16-router-0-5-4xp4zz?file=%2Fsrc%2Fmain.rs%3A102%2C2) + +<iframe src="https://codesandbox.io/p/sandbox/16-router-0-5-4xp4zz?file=%2Fsrc%2Fmain.rs%3A102%2C2" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::*; +use leptos_router::*; + +#[component] +fn App() -> impl IntoView { + view! { + <Router> + <h1>"Contact App"</h1> + // this <nav> will show on every routes, + // because it's outside the <Routes/> + // note: we can just use normal <a> tags + // and the router will use client-side navigation + <nav> + <h2>"Navigation"</h2> + <a href="/">"Home"</a> + <a href="/contacts">"Contacts"</a> + </nav> + <main> + <Routes> + // / just has an un-nested "Home" + <Route path="/" view=|| view! { + <h3>"Home"</h3> + }/> + // /contacts has nested routes + <Route + path="/contacts" + view=ContactList + > + // if no id specified, fall back + <Route path=":id" view=ContactInfo> + <Route path="" view=|| view! { + <div class="tab"> + "(Contact Info)" + </div> + }/> + <Route path="conversations" view=|| view! { + <div class="tab"> + "(Conversations)" + </div> + }/> + </Route> + // if no id specified, fall back + <Route path="" view=|| view! { + <div class="select-user"> + "Select a user to view contact info." + </div> + }/> + </Route> + </Routes> + </main> + </Router> + } +} + +#[component] +fn ContactList() -> impl IntoView { + view! { + <div class="contact-list"> + // here's our contact list component itself + <div class="contact-list-contacts"> + <h3>"Contacts"</h3> + <A href="alice">"Alice"</A> + <A href="bob">"Bob"</A> + <A href="steve">"Steve"</A> + </div> + + // <Outlet/> will show the nested child route + // we can position this outlet wherever we want + // within the layout + <Outlet/> + </div> + } +} + +#[component] +fn ContactInfo() -> impl IntoView { + // we can access the :id param reactively with `use_params_map` + let params = use_params_map(); + let id = move || params.with(|params| params.get("id").cloned().unwrap_or_default()); + + // imagine we're loading data from an API here + let name = move || match id().as_str() { + "alice" => "Alice", + "bob" => "Bob", + "steve" => "Steve", + _ => "User not found.", + }; + + view! { + <div class="contact-info"> + <h4>{name}</h4> + <div class="tabs"> + <A href="" exact=true>"Contact Info"</A> + <A href="conversations">"Conversations"</A> + </div> + + // <Outlet/> here is the tabs that are nested + // underneath the /contacts/:id route + <Outlet/> + </div> + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/router/19_a.md b/src/router/19_a.md new file mode 100644 index 0000000..ea38438 --- /dev/null +++ b/src/router/19_a.md @@ -0,0 +1,155 @@ +# The `<A/>` Component + +Client-side navigation works perfectly fine with ordinary HTML `<a>` elements. The router adds a listener that handles every click on a `<a>` element and tries to handle it on the client side, i.e., without doing another round trip to the server to request HTML. This is what enables the snappy “single-page app” navigations you’re probably familiar with from most modern web apps. + +The router will bail out of handling an `<a>` click under a number of situations + +- the click event has had `prevent_default()` called on it +- the <kbd>Meta</kbd>, <kbd>Alt</kbd>, <kbd>Ctrl</kbd>, or <kbd>Shift</kbd> keys were held during click +- the `<a>` has a `target` or `download` attribute, or `rel="external"` +- the link has a different origin from the current location + +In other words, the router will only try to do a client-side navigation when it’s pretty sure it can handle it, and it will upgrade every `<a>` element to get this special behavior. + +> This also means that if you need to opt out of client-side routing, you can do so easily. For example, if you have a link to another page on the same domain, but which isn’t part of your Leptos app, you can just use `<a rel="external">` to tell the router it isn’t something it can handle. + +The router also provides an [`<A>`](https://docs.rs/leptos_router/latest/leptos_router/fn.A.html) component, which does two additional things: + +1. Correctly resolves relative nested routes. Relative routing with ordinary `<a>` tags can be tricky. For example, if you have a route like `/post/:id`, `<A href="1">` will generate the correct relative route, but `<a href="1">` likely will not (depending on where it appears in your view.) `<A/>` resolves routes relative to the path of the nested route within which it appears. +2. Sets the `aria-current` attribute to `page` if this link is the active link (i.e., it’s a link to the page you’re on). This is helpful for accessibility and for styling. For example, if you want to set the link a different color if it’s a link to the page you’re currently on, you can match this attribute with a CSS selector. + +## Navigating Programmatically + +Your most-used methods of navigating between pages should be with `<a>` and `<form>` elements or with the enhanced `<A/>` and `<Form/>` components. Using links and forms to navigate is the best solution for accessibility and graceful degradation. + +On occasion, though, you’ll want to navigate programmatically, i.e., call a function that can navigate to a new page. In that case, you should use the [`use_navigate`](https://docs.rs/leptos_router/latest/leptos_router/fn.use_navigate.html) function. + +```rust +let navigate = leptos_router::use_navigate(); +navigate("/somewhere", Default::default()); +``` + +> You should almost never do something like `<button on:click=move |_| navigate(/* ... */)>`. Any `on:click` that navigates should be an `<a>`, for reasons of accessibility. + +The second argument here is a set of [`NavigateOptions`](https://docs.rs/leptos_router/latest/leptos_router/struct.NavigateOptions.html), which includes options to resolve the navigation relative to the current route as the `<A/>` component does, replace it in the navigation stack, include some navigation state, and maintain the current scroll state on navigation. + +> Once again, this is the same example. Check out the relative `<A/>` components, and take a look at the CSS in `index.html` to see the ARIA-based styling. + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/16-router-0-5-4xp4zz?file=%2Fsrc%2Fmain.rs%3A102%2C2) + +<iframe src="https://codesandbox.io/p/sandbox/16-router-0-5-4xp4zz?file=%2Fsrc%2Fmain.rs%3A102%2C2" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::*; +use leptos_router::*; + +#[component] +fn App() -> impl IntoView { + view! { + <Router> + <h1>"Contact App"</h1> + // this <nav> will show on every routes, + // because it's outside the <Routes/> + // note: we can just use normal <a> tags + // and the router will use client-side navigation + <nav> + <h2>"Navigation"</h2> + <a href="/">"Home"</a> + <a href="/contacts">"Contacts"</a> + </nav> + <main> + <Routes> + // / just has an un-nested "Home" + <Route path="/" view=|| view! { + <h3>"Home"</h3> + }/> + // /contacts has nested routes + <Route + path="/contacts" + view=ContactList + > + // if no id specified, fall back + <Route path=":id" view=ContactInfo> + <Route path="" view=|| view! { + <div class="tab"> + "(Contact Info)" + </div> + }/> + <Route path="conversations" view=|| view! { + <div class="tab"> + "(Conversations)" + </div> + }/> + </Route> + // if no id specified, fall back + <Route path="" view=|| view! { + <div class="select-user"> + "Select a user to view contact info." + </div> + }/> + </Route> + </Routes> + </main> + </Router> + } +} + +#[component] +fn ContactList() -> impl IntoView { + view! { + <div class="contact-list"> + // here's our contact list component itself + <div class="contact-list-contacts"> + <h3>"Contacts"</h3> + <A href="alice">"Alice"</A> + <A href="bob">"Bob"</A> + <A href="steve">"Steve"</A> + </div> + + // <Outlet/> will show the nested child route + // we can position this outlet wherever we want + // within the layout + <Outlet/> + </div> + } +} + +#[component] +fn ContactInfo() -> impl IntoView { + // we can access the :id param reactively with `use_params_map` + let params = use_params_map(); + let id = move || params.with(|params| params.get("id").cloned().unwrap_or_default()); + + // imagine we're loading data from an API here + let name = move || match id().as_str() { + "alice" => "Alice", + "bob" => "Bob", + "steve" => "Steve", + _ => "User not found.", + }; + + view! { + <div class="contact-info"> + <h4>{name}</h4> + <div class="tabs"> + <A href="" exact=true>"Contact Info"</A> + <A href="conversations">"Conversations"</A> + </div> + + // <Outlet/> here is the tabs that are nested + // underneath the /contacts/:id route + <Outlet/> + </div> + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/router/20_form.md b/src/router/20_form.md new file mode 100644 index 0000000..58e2b4e --- /dev/null +++ b/src/router/20_form.md @@ -0,0 +1,180 @@ +# The `<Form/>` Component + +Links and forms sometimes seem completely unrelated. But, in fact, they work in very similar ways. + +In plain HTML, there are three ways to navigate to another page: + +1. An `<a>` element that links to another page: Navigates to the URL in its `href` attribute with the `GET` HTTP method. +2. A `<form method="GET">`: Navigates to the URL in its `action` attribute with the `GET` HTTP method and the form data from its inputs encoded in the URL query string. +3. A `<form method="POST">`: Navigates to the URL in its `action` attribute with the `POST` HTTP method and the form data from its inputs encoded in the body of the request. + +Since we have a client-side router, we can do client-side link navigations without reloading the page, i.e., without a full round-trip to the server and back. It makes sense that we can do client-side form navigations in the same way. + +The router provides a [`<Form>`](https://docs.rs/leptos_router/latest/leptos_router/fn.Form.html) component, which works like the HTML `<form>` element, but uses client-side navigations instead of full page reloads. `<Form/>` works with both `GET` and `POST` requests. With `method="GET"`, it will navigate to the URL encoded in the form data. With `method="POST"` it will make a `POST` request and handle the server’s response. + +`<Form/>` provides the basis for some components like `<ActionForm/>` and `<MultiActionForm/>` that we’ll see in later chapters. But it also enables some powerful patterns of its own. + +For example, imagine that you want to create a search field that updates search results in real time as the user searches, without a page reload, but that also stores the search in the URL so a user can copy and paste it to share results with someone else. + +It turns out that the patterns we’ve learned so far make this easy to implement. + +```rust +async fn fetch_results() { + // some async function to fetch our search results +} + +#[component] +pub fn FormExample() -> impl IntoView { + // reactive access to URL query strings + let query = use_query_map(); + // search stored as ?q= + let search = move || query().get("q").cloned().unwrap_or_default(); + // a resource driven by the search string + let search_results = create_resource(search, fetch_results); + + view! { + <Form method="GET" action=""> + <input type="search" name="q" value=search/> + <input type="submit"/> + </Form> + <Transition fallback=move || ()> + /* render search results */ + </Transition> + } +} +``` + +Whenever you click `Submit`, the `<Form/>` will “navigate” to `?q={search}`. But because this navigation is done on the client side, there’s no page flicker or reload. The URL query string changes, which triggers `search` to update. Because `search` is the source signal for the `search_results` resource, this triggers `search_results` to reload its resource. The `<Transition/>` continues displaying the current search results until the new ones have loaded. When they are complete, it switches to displaying the new result. + +This is a great pattern. The data flow is extremely clear: all data flows from the URL to the resource into the UI. The current state of the application is stored in the URL, which means you can refresh the page or text the link to a friend and it will show exactly what you’re expecting. And once we introduce server rendering, this pattern will prove to be really fault-tolerant, too: because it uses a `<form>` element and URLs under the hood, it actually works really well without even loading your WASM on the client. + +We can actually take it a step further and do something kind of clever: + +```rust +view! { + <Form method="GET" action=""> + <input type="search" name="q" value=search + oninput="this.form.requestSubmit()" + /> + </Form> +} +``` + +You’ll notice that this version drops the `Submit` button. Instead, we add an `oninput` attribute to the input. Note that this is _not_ `on:input`, which would listen for the `input` event and run some Rust code. Without the colon, `oninput` is the plain HTML attribute. So the string is actually a JavaScript string. `this.form` gives us the form the input is attached to. `requestSubmit()` fires the `submit` event on the `<form>`, which is caught by `<Form/>` just as if we had clicked a `Submit` button. Now the form will “navigate” on every keystroke or input to keep the URL (and therefore the search) perfectly in sync with the user’s input as they type. + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/20-form-0-5-9g7v9p?file=%2Fsrc%2Fmain.rs%3A1%2C1) + +<iframe src="https://codesandbox.io/p/sandbox/20-form-0-5-9g7v9p?file=%2Fsrc%2Fmain.rs%3A1%2C1" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::*; +use leptos_router::*; + +#[component] +fn App() -> impl IntoView { + view! { + <Router> + <h1><code>"<Form/>"</code></h1> + <main> + <Routes> + <Route path="" view=FormExample/> + </Routes> + </main> + </Router> + } +} + +#[component] +pub fn FormExample() -> impl IntoView { + // reactive access to URL query + let query = use_query_map(); + let name = move || query().get("name").cloned().unwrap_or_default(); + let number = move || query().get("number").cloned().unwrap_or_default(); + let select = move || query().get("select").cloned().unwrap_or_default(); + + view! { + // read out the URL query strings + <table> + <tr> + <td><code>"name"</code></td> + <td>{name}</td> + </tr> + <tr> + <td><code>"number"</code></td> + <td>{number}</td> + </tr> + <tr> + <td><code>"select"</code></td> + <td>{select}</td> + </tr> + </table> + // <Form/> will navigate whenever submitted + <h2>"Manual Submission"</h2> + <Form method="GET" action=""> + // input names determine query string key + <input type="text" name="name" value=name/> + <input type="number" name="number" value=number/> + <select name="select"> + // `selected` will set which starts as selected + <option selected=move || select() == "A"> + "A" + </option> + <option selected=move || select() == "B"> + "B" + </option> + <option selected=move || select() == "C"> + "C" + </option> + </select> + // submitting should cause a client-side + // navigation, not a full reload + <input type="submit"/> + </Form> + // This <Form/> uses some JavaScript to submit + // on every input + <h2>"Automatic Submission"</h2> + <Form method="GET" action=""> + <input + type="text" + name="name" + value=name + // this oninput attribute will cause the + // form to submit on every input to the field + oninput="this.form.requestSubmit()" + /> + <input + type="number" + name="number" + value=number + oninput="this.form.requestSubmit()" + /> + <select name="select" + onchange="this.form.requestSubmit()" + > + <option selected=move || select() == "A"> + "A" + </option> + <option selected=move || select() == "B"> + "B" + </option> + <option selected=move || select() == "C"> + "C" + </option> + </select> + // submitting should cause a client-side + // navigation, not a full reload + <input type="submit"/> + </Form> + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/router/README.md b/src/router/README.md new file mode 100644 index 0000000..60d8490 --- /dev/null +++ b/src/router/README.md @@ -0,0 +1,23 @@ +# Routing + +## The Basics + +Routing drives most websites. A router is the answer to the question, “Given this URL, what should appear on the page?” + +A URL consists of many parts. For example, the URL `https://my-cool-blog.com/blog/search?q=Search#results` consists of + +- a _scheme_: `https` +- a _domain_: `my-cool-blog.com` +- a **path**: `/blog/search` +- a **query** (or **search**): `?q=Search` +- a _hash_: `#results` + +The Leptos Router works with the path and query (`/blog/search?q=Search`). Given this piece of the URL, what should the app render on the page? + +## The Philosophy + +In most cases, the path should drive what is displayed on the page. From the user’s perspective, for most applications, most major changes in the state of the app should be reflected in the URL. If you copy and paste the URL and open it in another tab, you should find yourself more or less in the same place. + +In this sense, the router is really at the heart of the global state management for your application. More than anything else, it drives what is displayed on the page. + +The router handles most of this work for you by mapping the current location to particular components. diff --git a/src/server/25_server_functions.md b/src/server/25_server_functions.md new file mode 100644 index 0000000..924eec2 --- /dev/null +++ b/src/server/25_server_functions.md @@ -0,0 +1,150 @@ +# Server Functions + +If you’re creating anything beyond a toy app, you’ll need to run code on the server all the time: reading from or writing to a database that only runs on the server, running expensive computations using libraries you don’t want to ship down to the client, accessing APIs that need to be called from the server rather than the client for CORS reasons or because you need a secret API key that’s stored on the server and definitely shouldn’t be shipped down to a user’s browser. + +Traditionally, this is done by separating your server and client code, and by setting up something like a REST API or GraphQL API to allow your client to fetch and mutate data on the server. This is fine, but it requires you to write and maintain your code in multiple separate places (client-side code for fetching, server-side functions to run), as well as creating a third thing to manage, which is the API contract between the two. + +Leptos is one of a number of modern frameworks that introduce the concept of **server functions**. Server functions have two key characteristics: + +1. Server functions are **co-located** with your component code, so that you can organize your work by feature, not by technology. For example, you might have a “dark mode” feature that should persist a user’s dark/light mode preference across sessions, and be applied during server rendering so there’s no flicker. This requires a component that needs to be interactive on the client, and some work to be done on the server (setting a cookie, maybe even storing a user in a database.) Traditionally, this feature might end up being split between two different locations in your code, one in your “frontend” and one in your “backend.” With server functions, you’ll probably just write them both in one `dark_mode.rs` and forget about it. +2. Server functions are **isomorphic**, i.e., they can be called either from the server or the browser. This is done by generating code differently for the two platforms. On the server, a server function simply runs. In the browser, the server function’s body is replaced with a stub that actually makes a fetch request to the server, serializing the arguments into the request and deserializing the return value from the response. But on either end, the function can simply be called: you can create an `add_todo` function that writes to your database, and simply call it from a click handler on a button in the browser! + +## Using Server Functions + +Actually, I kind of like that example. What would it look like? It’s pretty simple, actually. + +```rust +// todo.rs + +#[server(AddTodo, "/api")] +pub async fn add_todo(title: String) -> Result<(), ServerFnError> { + let mut conn = db().await?; + + match sqlx::query("INSERT INTO todos (title, completed) VALUES ($1, false)") + .bind(title) + .execute(&mut conn) + .await + { + Ok(_row) => Ok(()), + Err(e) => Err(ServerFnError::ServerError(e.to_string())), + } +} + +#[component] +pub fn BusyButton() -> impl IntoView { + view! { + <button on:click=move |_| { + spawn_local(async { + add_todo("So much to do!".to_string()).await; + }); + }> + "Add Todo" + </button> + } +} +``` + +You’ll notice a couple things here right away: + +- Server functions can use server-only dependencies, like `sqlx`, and can access server-only resources, like our database. +- Server functions are `async`. Even if they only did synchronous work on the server, the function signature would still need to be `async`, because calling them from the browser _must_ be asynchronous. +- Server functions return `Result<T, ServerFnError>`. Again, even if they only do infallible work on the server, this is true, because `ServerFnError`’s variants include the various things that can be wrong during the process of making a network request. +- Server functions can be called from the client. Take a look at our click handler. This is code that will _only ever_ run on the client. But it can call the function `add_todo` (using `spawn_local` to run the `Future`) as if it were an ordinary async function: + +```rust +move |_| { + spawn_local(async { + add_todo("So much to do!".to_string()).await; + }); +} +``` + +- Server functions are top-level functions defined with `fn`. Unlike event listeners, derived signals, and most everything else in Leptos, they are not closures! As `fn` calls, they have no access to the reactive state of your app or anything else that is not passed in as an argument. And again, this makes perfect sense: When you make a request to the server, the server doesn’t have access to client state unless you send it explicitly. (Otherwise we’d have to serialize the whole reactive system and send it across the wire with every request, which—while it served classic ASP for a while—is a really bad idea.) +- Server function arguments and return values both need to be serializable with `serde`. Again, hopefully this makes sense: while function arguments in general don’t need to be serialized, calling a server function from the browser means serializing the arguments and sending them over HTTP. + +There are a few things to note about the way you define a server function, too. + +- Server functions are created by using the [`#[server]` macro](https://docs.rs/leptos_server/latest/leptos_server/index.html#server) to annotate a top-level function, which can be defined anywhere. +- We provide the macro a type name. The type name is used internally as a container to hold, serialize, and deserialize the arguments. +- We provide the macro a path. This is a prefix for the path at which we’ll mount a server function handler on our server. (See examples for [Actix](https://github.com/leptos-rs/leptos/blob/main/examples/todo_app_sqlite/src/main.rs#L44) and [Axum](https://github.com/leptos-rs/leptos/blob/598523cd9d0d775b017cb721e41ebae9349f01e2/examples/todo_app_sqlite_axum/src/main.rs#L51).) +- You’ll need to have `serde` as a dependency with the `derive` featured enabled for the macro to work properly. You can easily add it to `Cargo.toml` with `cargo add serde --features=derive`. + +## Server Function URL Prefixes + +You can optionally define a specific URL prefix to be used in the definition of the server function. +This is done by providing an optional 2nd argument to the `#[server]` macro. +By default the URL prefix will be `/api`, if not specified. +Here are some examples: + +```rust +#[server(AddTodo)] // will use the default URL prefix of `/api` +#[server(AddTodo, "/foo")] // will use the URL prefix of `/foo` +``` + +## Server Function Encodings + +By default, the server function call is a `POST` request that serializes the arguments as URL-encoded form data in the body of the request. (This means that server functions can be called from HTML forms, which we’ll see in a future chapter.) But there are a few other methods supported. Optionally, we can provide another argument to the `#[server]` macro to specify an alternate encoding: + +```rust +#[server(AddTodo, "/api", "Url")] +#[server(AddTodo, "/api", "GetJson")] +#[server(AddTodo, "/api", "Cbor")] +#[server(AddTodo, "/api", "GetCbor")] +``` + +The four options use different combinations of HTTP verbs and encoding methods: + +| Name | Method | Request | Response | +| ----------------- | ------ | ----------- | -------- | +| **Url** (default) | POST | URL encoded | JSON | +| **GetJson** | GET | URL encoded | JSON | +| **Cbor** | POST | CBOR | CBOR | +| **GetCbor** | GET | URL encoded | CBOR | + +In other words, you have two choices: + +- `GET` or `POST`? This has implications for things like browser or CDN caching; while `POST` requests should not be cached, `GET` requests can be. +- Plain text (arguments sent with URL/form encoding, results sent as JSON) or a binary format (CBOR, encoded as a base64 string)? + +**But remember**: Leptos will handle all the details of this encoding and decoding for you. When you use a server function, it looks just like calling any other asynchronous function! + +> **Why not `PUT` or `DELETE`? Why URL/form encoding, and not JSON?** +> +> These are reasonable questions. Much of the web is built on REST API patterns that encourage the use of semantic HTTP methods like `DELETE` to delete an item from a database, and many devs are accustomed to sending data to APIs in the JSON format. +> +> The reason we use `POST` or `GET` with URL-encoded data by default is the `<form>` support. For better or for worse, HTML forms don’t support `PUT` or `DELETE`, and they don’t support sending JSON. This means that if you use anything but a `GET` or `POST` request with URL-encoded data, it can only work once WASM has loaded. As we’ll see [in a later chapter](../progressive_enhancement), this isn’t always a great idea. +> +> The CBOR encoding is suported for historical reasons; an earlier version of server functions used a URL encoding that didn’t support nested objects like structs or vectors as server function arguments, which CBOR did. But note that the CBOR forms encounter the same issue as `PUT`, `DELETE`, or JSON: they do not degrade gracefully if the WASM version of your app is not available. + + +## Server Functions Endpoint Paths + +By default, a unique path will be generated. You can optionally define a specific endpoint path to be used in the URL. This is done by providing an optional 4th argument to the `#[server]` macro. Leptos will generate the complete path by concatenating the URL prefix (2nd argument) and the endpoint path (4th argument). +For example, + +```rust +#[server(MyServerFnType, "/api", "Url", "hello")] +``` +will generate a server function endpoint at `/api/hello` that accepts a POST request. + +> **Can I use the same server function endpoint path with multiple encodings?** +> +> No. Different server functions must have unique paths. The `#[server]` macro automatically generates unique paths, but you need to be careful if you choose to specify the complete path manually, as the server looks up server functions by their path. + +## An Important Note on Security + +Server functions are a cool technology, but it’s very important to remember. **Server functions are not magic; they’re syntax sugar for defining a public API.** The _body_ of a server function is never made public; it’s just part of your server binary. But the server function is a publicly accessible API endpoint, and it’s return value is just a JSON or similar blob. You should _never_ return something sensitive from a server function. + +## Integrating Server Functions with Leptos + +So far, everything I’ve said is actually framework agnostic. (And in fact, the Leptos server function crate has been integrated into Dioxus as well!) Server functions are simply a way of defining a function-like RPC call that leans on Web standards like HTTP requests and URL encoding. + +But in a way, they also provide the last missing primitive in our story so far. Because a server function is just a plain Rust async function, it integrates perfectly with the async Leptos primitives we discussed [earlier](https://leptos-rs.github.io/leptos/async/index.html). So you can easily integrate your server functions with the rest of your applications: + +- Create **resources** that call the server function to load data from the server +- Read these resources under `<Suspense/>` or `<Transition/>` to enable streaming SSR and fallback states while data loads. +- Create **actions** that call the server function to mutate data on the server + +The final section of this book will make this a little more concrete by introducing patterns that use progressively-enhanced HTML forms to run these server actions. + +But in the next few chapters, we’ll actually take a look at some of the details of what you might want to do with your server functions, including the best ways to integrate with the powerful extractors provided by the Actix and Axum server frameworks. diff --git a/src/server/26_extractors.md b/src/server/26_extractors.md new file mode 100644 index 0000000..c854202 --- /dev/null +++ b/src/server/26_extractors.md @@ -0,0 +1,87 @@ +# Extractors + +The server functions we looked at in the last chapter showed how to run code on the server, and integrate it with the user interface you’re rendering in the browser. But they didn’t show you much about how to actually use your server to its full potential. + +## Server Frameworks + +We call Leptos a “full-stack” framework, but “full-stack” is always a misnomer (after all, it never means everything from the browser to your power company.) For us, “full stack” means that your Leptos app can run in the browser, and can run on the server, and can integrate the two, drawing together the unique features available in each; as we’ve seen in the book so far, a button click on the browser can drive a database read on the server, both written in the same Rust module. But Leptos itself doesn’t provide the server (or the database, or the operating system, or the firmware, or the electrical cables...) + +Instead, Leptos provides integrations for the two most popular Rust web server frameworks, Actix Web ([`leptos_actix`](https://docs.rs/leptos_actix/latest/leptos_actix/)) and Axum ([`leptos_axum`](https://docs.rs/leptos_axum/latest/leptos_axum/)). We’ve built integrations with each server’s router so that you can simply plug your Leptos app into an existing server with `.leptos_routes()`, and easily handle server function calls. + +> If you haven’t seen our [Actix](https://github.com/leptos-rs/start) and [Axum](https://github.com/leptos-rs/start-axum) templates, now’s a good time to check them out. + +## Using Extractors + +Both Actix and Axum handlers are built on the same powerful idea of **extractors**. Extractors “extract” typed data from an HTTP request, allowing you to access server-specific data easily. + +Leptos provides `extract` helper functions to let you use these extractors directly in your server functions, with a convenient syntax very similar to handlers for each framework. + +### Actix Extractors + +The [`extract` function in `leptos_actix`](https://docs.rs/leptos_actix/latest/leptos_actix/fn.extract.html) takes a handler function as its argument. The handler follows similar rules to an Actix handler: it is an async function that receives arguments that will be extracted from the request and returns some value. The handler function receives that extracted data as its arguments, and can do further `async` work on them inside the body of the `async move` block. It returns whatever value you return back out into the server function. + +```rust + +#[server(ActixExtract, "/api")] +pub async fn actix_extract() -> Result<String, ServerFnError> { + use leptos_actix::extract; + use actix_web::dev::ConnectionInfo; + use actix_web::web::{Data, Query}; + + extract( + |search: Query<Search>, connection: ConnectionInfo| async move { + format!( + "search = {}\nconnection = {:?}", + search.q, + connection + ) + }, + ) + .await +} +``` + +## Axum Extractors + +The syntax for the [`leptos_axum::extract`](https://docs.rs/leptos_axum/latest/leptos_axum/fn.extract.html) function is very similar. (**Note**: This is available on the git main branch, but has not been released as of writing.) Note that Axum extractors return a `Result`, so you’ll need to add something to handle the error case. + +```rust +#[server(AxumExtract, "/api")] +pub async fn axum_extract() -> Result<String, ServerFnError> { + use axum::{extract::Query, http::Method}; + use leptos_axum::extract; + + extract(|method: Method, res: Query<MyQuery>| async move { + format!("{method:?} and {}", res.q) + }, + ) + .await + .map_err(|e| ServerFnError::ServerError("Could not extract method and query...".to_string())) +} +``` + +These are relatively simple examples accessing basic data from the server. But you can use extractors to access things like headers, cookies, database connection pools, and more, using the exact same `extract()` pattern. + +The Axum `extract` function only supports extractors for which the state is `()`. If you need an extractor that uses `State`, you should use [`extract_with_state`](https://docs.rs/leptos_axum/latest/leptos_axum/fn.extract_with_state.html). This requires you to provide the state. You can do this by extending the existing `LeptosOptions` state using the Axum `FromRef` pattern, which providing the state as context during render and server functions with custom handlers. + +```rust +use axum::extract::FromRef; + +/// Derive FromRef to allow multiple items in state, using Axum’s +/// SubStates pattern. +#[derive(FromRef, Debug, Clone)] +pub struct AppState{ + pub leptos_options: LeptosOptions, + pub pool: SqlitePool +} +``` + +[Click here for an example of providing context in custom handlers](https://github.com/leptos-rs/leptos/blob/19ea6fae6aec2a493d79cc86612622d219e6eebb/examples/session_auth_axum/src/main.rs#L24-L44). + +## A Note about Data-Loading Patterns + +Because Actix and (especially) Axum are built on the idea of a single round-trip HTTP request and response, you typically run extractors near the “top” of your application (i.e., before you start rendering) and use the extracted data to determine how that should be rendered. Before you render a `<button>`, you load all the data your app could need. And any given route handler needs to know all the data that will need to be extracted by that route. + +But Leptos integrates both the client and the server, and it’s important to be able to refresh small pieces of your UI with new data from the server without forcing a full reload of all the data. So Leptos likes to push data loading “down” in your application, as far towards the leaves of your user interface as possible. When you click a `<button>`, it can refresh just the data it needs. This is exactly what server functions are for: they give you granular access to data to be loaded and reloaded. + +The `extract()` functions let you combine both models by using extractors in your server functions. You get access to the full power of route extractors, while decentralizing knowledge of what needs to be extracted down to your individual components. This makes it easier to refactor and reorganize routes: you don’t need to specify all the data a route needs up front. diff --git a/src/server/27_response.md b/src/server/27_response.md new file mode 100644 index 0000000..05094fb --- /dev/null +++ b/src/server/27_response.md @@ -0,0 +1,73 @@ +# Responses and Redirects + +Extractors provide an easy way to access request data inside server functions. Leptos also provides a way to modify the HTTP response, using the `ResponseOptions` type (see docs for [Actix](https://docs.rs/leptos_actix/latest/leptos_actix/struct.ResponseOptions.html) or [Axum](https://docs.rs/leptos_axum/latest/leptos_axum/struct.ResponseOptions.html)) types and the `redirect` helper function (see docs for [Actix](https://docs.rs/leptos_actix/latest/leptos_actix/fn.redirect.html) or [Axum](https://docs.rs/leptos_axum/latest/leptos_axum/fn.redirect.html)). + +## `ResponseOptions` + +`ResponseOptions` is provided via context during the initial server rendering response and during any subsequent server function call. It allows you to easily set the status code for the HTTP response, or to add headers to the HTTP response, e.g., to set cookies. + +```rust +#[server(TeaAndCookies)] +pub async fn tea_and_cookies() -> Result<(), ServerFnError> { + use actix_web::{cookie::Cookie, http::header, http::header::HeaderValue}; + use leptos_actix::ResponseOptions; + + // pull ResponseOptions from context + let response = expect_context::<ResponseOptions>(); + + // set the HTTP status code + response.set_status(StatusCode::IM_A_TEAPOT); + + // set a cookie in the HTTP response + let mut cookie = Cookie::build("biscuits", "yes").finish(); + if let Ok(cookie) = HeaderValue::from_str(&cookie.to_string()) { + res.insert_header(header::SET_COOKIE, cookie); + } +} +``` + +## `redirect` + +One common modification to an HTTP response is to redirect to another page. The Actix and Axum integrations provide a `redirect` function to make this easy to do. `redirect` simply sets an HTTP status code of `302 Found` and sets the `Location` header. + +Here’s a simplified example from our [`session_auth_axum` example](https://github.com/leptos-rs/leptos/blob/a5f73b441c079f9138102b3a7d8d4828f045448c/examples/session_auth_axum/src/auth.rs#L154-L181). + +```rust +#[server(Login, "/api")] +pub async fn login( + username: String, + password: String, + remember: Option<String>, +) -> Result<(), ServerFnError> { + // pull the DB pool and auth provider from context + let pool = pool()?; + let auth = auth()?; + + // check whether the user exists + let user: User = User::get_from_username(username, &pool) + .await + .ok_or_else(|| { + ServerFnError::ServerError("User does not exist.".into()) + })?; + + // check whether the user has provided the correct password + match verify(password, &user.password)? { + // if the password is correct... + true => { + // log the user in + auth.login_user(user.id); + auth.remember_user(remember.is_some()); + + // and redirect to the home page + leptos_axum::redirect("/"); + Ok(()) + } + // if not, return an error + false => Err(ServerFnError::ServerError( + "Password does not match.".to_string(), + )), + } +} +``` + +This server function can then be used from your application. This `redirect` works well with the progressively-enhanced `<ActionForm/>` component: without JS/WASM, the server response will redirect because of the status code and header. With JS/WASM, the `<ActionForm/>` will detect the redirect in the server function response, and use client-side navigation to redirect to the new page. diff --git a/src/server/README.md b/src/server/README.md new file mode 100644 index 0000000..6259057 --- /dev/null +++ b/src/server/README.md @@ -0,0 +1,11 @@ +# Working with the Server + +The previous section described the process of server-side rendering, using the server to generate an HTML version of the page that will become interactive in the browser. So far, everything has been “isomorphic” or “universal”; in other words, your app has had the “same (_iso_) shape (_morphe_)” on the client and the server. + +But a server can do a lot more than just render HTML! In fact, a server can do a whole bunch of things your browser _can’t,_ like reading from and writing to a SQL database. + +If you’re used to building JavaScript frontend apps, you’re probably used to calling out to some kind of REST API to do this sort of server work. If you’re used to building sites with PHP or Python or Ruby (or Java or C# or...), this server-side work is your bread and butter, and it’s the client-side interactivity that tends to be an afterthought. + +With Leptos, you can do both: not only in the same language, not only sharing the same types, but even in the same files! + +This section will talk about how to build the uniquely-server-side parts of your application. diff --git a/src/ssr/21_cargo_leptos.md b/src/ssr/21_cargo_leptos.md new file mode 100644 index 0000000..05d6676 --- /dev/null +++ b/src/ssr/21_cargo_leptos.md @@ -0,0 +1,37 @@ +# Introducing `cargo-leptos` + +So far, we’ve just been running code in the browser and using Trunk to coordinate the build process and run a local development process. If we’re going to add server-side rendering, we’ll need to run our application code on the server as well. This means we’ll need to build two separate binaries, one compiled to native code and running the server, the other compiled to WebAssembly (WASM) and running in the user’s browser. Additionally, the server needs to know how to serve this WASM version (and the JavaScript required to initialize it) to the browser. + +This is not an insurmountable task but it adds some complication. For convenience and an easier developer experience, we built the [`cargo-leptos`](https://github.com/leptos-rs/cargo-leptos) build tool. `cargo-leptos` basically exists to coordinate the build process for your app, handling recompiling the server and client halves when you make changes, and adding some built-in support for things like Tailwind, SASS, and testing. + +Getting started is pretty easy. Just run + +```bash +cargo install cargo-leptos +``` + +And then to create a new project, you can run either + +```bash +# for an Actix template +cargo leptos new --git leptos-rs/start +``` + +or + +```bash +# for an Axum template +cargo leptos new --git leptos-rs/start-axum +``` + +Now `cd` into the directory you’ve created and run + +```bash +cargo leptos watch +``` + +Once your app has compiled you can open up your browser to [`http://localhost:3000`](http://localhost:3000) to see it. + +`cargo-leptos` has lots of additional features and built in tools. You can learn more [in its `README`](https://github.com/leptos-rs/cargo-leptos/blob/main/README.md). + +But what exactly is happening when you open our browser to `localhost:3000`? Well, read on to find out. diff --git a/src/ssr/22_life_cycle.md b/src/ssr/22_life_cycle.md new file mode 100644 index 0000000..0d20d9b --- /dev/null +++ b/src/ssr/22_life_cycle.md @@ -0,0 +1,43 @@ +# The Life of a Page Load + +Before we get into the weeds it might be helpful to have a higher-level overview. What exactly happens between the moment you type in the URL of a server-rendered Leptos app, and the moment you click a button and a counter increases? + +I’m assuming some basic knowledge of how the Internet works here, and won’t get into the weeds about HTTP or whatever. Instead, I’ll try to show how different parts of the Leptos APIs map onto each part of the process. + +This description also starts from the premise that your app is being compiled for two separate targets: + +1. A server version, often running on Actix or Axum, compiled with the Leptos `ssr` feature +2. A browser version, compiled to WebAssembly (WASM) with the Leptos `hydrate` feature + +The [`cargo-leptos`](https://github.com/leptos-rs/cargo-leptos) build tool exists to coordinate the process of compiling your app for these two different targets. + +## On the Server + +- Your browser makes a `GET` request for that URL to your server. At this point, the browser knows almost nothing about the page that’s going to be rendered. (The question “How does the browser know where to ask for the page?” is an interesting one, but out of the scope of this tutorial!) +- The server receives that request, and checks whether it has a way to handle a `GET` request at that path. This is what the `.leptos_routes()` methods in [`leptos_axum`](https://docs.rs/leptos_axum/0.2.5/leptos_axum/trait.LeptosRoutes.html) and [`leptos_actix`](https://docs.rs/leptos_actix/0.2.5/leptos_actix/trait.LeptosRoutes.html) are for. When the server starts up, these methods walk over the routing structure you provide in `<Routes/>`, generating a list of all possible routes your app can handle and telling the server’s router “for each of these routes, if you get a request... hand it off to Leptos.” +- The server sees that this route can be handled by Leptos. So it renders your root component (often called something like `<App/>`), providing it with the URL that’s being requested and some other data like the HTTP headers and request metadata. +- Your application runs once on the server, building up an HTML version of the component tree that will be rendered at that route. (There’s more to be said here about resources and `<Suspense/>` in the next chapter.) +- The server returns this HTML page, also injecting information on how to load the version of your app that has been compiled to WASM so that it can run in the browser. + +> The HTML page that’s returned is essentially your app, “dehydrated” or “freeze-dried”: it is HTML without any of the reactivity or event listeners you’ve added. The browser will “rehydrate” this HTML page by adding the reactive system and attaching event listeners to that server-rendered HTML. Hence the two feature flags that apply to the two halves of this process: `ssr` on the server for “server-side rendering”, and `hydrate` in the browser for that process of rehydration. + +## In the Browser + +- The browser receives this HTML page from the server. It immediately goes back to the server to begin loading the JS and WASM necessary to run the interactive, client side version of the app. +- In the meantime, it renders the HTML version. +- When the WASM version has reloaded, it does the same route-matching process that the server did. Because the `<Routes/>` component is identical on the server and in the client, the browser version will read the URL and render the same page that was already returned by the server. +- During this initial “hydration” phase, the WASM version of your app doesn’t re-create the DOM nodes that make up your application. Instead, it walks over the existing HTML tree, “picking up” existing elements and adding the necessary interactivity. + +> Note that there are some trade-offs here. Before this hydration process is complete, the page will _appear_ interactive but won’t actually respond to interactions. For example, if you have a counter button and click it before WASM has loaded, the count will not increment, because the necessary event listeners and reactivity have not been added yet. We’ll look at some ways to build in “graceful degradation” in future chapters. + +## Client-Side Navigation + +The next step is very important. Imagine that the user now clicks a link to navigate to another page in your application. + +The browser will _not_ make another round trip to the server, reloading the full page as it would for navigating between plain HTML pages or an application that uses server rendering (for example with PHP) but without a client-side half. + +Instead, the WASM version of your app will load the new page, right there in the browser, without requesting another page from the server. Essentially, your app upgrades itself from a server-loaded “multi-page app” into a browser-rendered “single-page app.” This yields the best of both worlds: a fast initial load time due to the server-rendered HTML, and fast secondary navigations because of the client-side routing. + +Some of what will be described in the following chapters—like the interactions between server functions, resources, and `<Suspense/>`—may seem overly complicated. You might find yourself asking, “If my page is being rendered to HTML on the server, why can’t I just `.await` this on the server? If I can just call library X in a server function, why can’t I call it in my component?” The reason is pretty simple: to enable the upgrade from server rendering to client rendering, everything in your application must be able to run either on the server or in the browser. + +This is not the only way to create a website or web framework, of course. But it’s the most common way, and we happen to think it’s quite a good way, to create the smoothest possible experience for your users. diff --git a/src/ssr/23_ssr_modes.md b/src/ssr/23_ssr_modes.md new file mode 100644 index 0000000..4979eea --- /dev/null +++ b/src/ssr/23_ssr_modes.md @@ -0,0 +1,156 @@ +# Async Rendering and SSR “Modes” + +Server-rendering a page that uses only synchronous data is pretty simple: You just walk down the component tree, rendering each element to an HTML string. But this is a pretty big caveat: it doesn’t answer the question of what we should do with pages that includes asynchronous data, i.e., the sort of stuff that would be rendered under a `<Suspense/>` node on the client. + +When a page loads async data that it needs to render, what should we do? Should we wait for all the async data to load, and then render everything at once? (Let’s call this “async” rendering) Should we go all the way in the opposite direction, just sending the HTML we have immediately down to the client and letting the client load the resources and fill them in? (Let’s call this “synchronous” rendering) Or is there some middle-ground solution that somehow beats them both? (Hint: There is.) + +If you’ve ever listened to streaming music or watched a video online, I’m sure you realize that HTTP supports streaming, allowing a single connection to send chunks of data one after another without waiting for the full content to load. You may not realize that browsers are also really good at rendering partial HTML pages. Taken together, this means that you can actually enhance your users’ experience by **streaming HTML**: and this is something that Leptos supports out of the box, with no configuration at all. And there’s actually more than one way to stream HTML: you can stream the chunks of HTML that make up your page in order, like frames of a video, or you can stream them... well, out of order. + +Let me say a little more about what I mean. + +Leptos supports all the major ways of rendering HTML that includes asynchronous data: + +1. [Synchronous Rendering](#synchronous-rendering) +1. [Async Rendering](#async-rendering) +1. [In-Order streaming](#in-order-streaming) +1. [Out-of-Order Streaming](#out-of-order-streaming) (and a partially-blocked variant) + +## Synchronous Rendering + +1. **Synchronous**: Serve an HTML shell that includes `fallback` for any `<Suspense/>`. Load data on the client using `create_local_resource`, replacing `fallback` once resources are loaded. + +- _Pros_: App shell appears very quickly: great TTFB (time to first byte). +- _Cons_ + - Resources load relatively slowly; you need to wait for JS + WASM to load before even making a request. + - No ability to include data from async resources in the `<title>` or other `<meta>` tags, hurting SEO and things like social media link previews. + +If you’re using server-side rendering, the synchronous mode is almost never what you actually want, from a performance perspective. This is because it misses out on an important optimization. If you’re loading async resources during server rendering, you can actually begin loading the data on the server. Rather than waiting for the client to receive the HTML response, then loading its JS + WASM, _then_ realize it needs the resources and begin loading them, server rendering can actually begin loading the resources when the client first makes the response. In this sense, during server rendering an async resource is like a `Future` that begins loading on the server and resolves on the client. As long as the resources are actually serializable, this will always lead to a faster total load time. + +> This is why [`create_resource`](https://docs.rs/leptos/latest/leptos/fn.create_resource.html) requires resources data to be serializable by default, and why you need to explicitly use [`create_local_resource`](https://docs.rs/leptos/latest/leptos/fn.create_local_resource.html) for any async data that is not serializable and should therefore only be loaded in the browser itself. Creating a local resource when you could create a serializable resource is always a deoptimization. + +## Async Rendering + +<video controls> + <source src="https://github.com/leptos-rs/leptos/blob/main/docs/video/async.mov?raw=true" type="video/mp4"> +</video> + +2. **`async`**: Load all resources on the server. Wait until all data are loaded, and render HTML in one sweep. + +- _Pros_: Better handling for meta tags (because you know async data even before you render the `<head>`). Faster complete load than **synchronous** because async resources begin loading on server. +- _Cons_: Slower load time/TTFB: you need to wait for all async resources to load before displaying anything on the client. The page is totally blank until everything is loaded. + +## In-Order Streaming + +<video controls> + <source src="https://github.com/leptos-rs/leptos/blob/main/docs/video/in-order.mov?raw=true" type="video/mp4"> +</video> + +3. **In-order streaming**: Walk through the component tree, rendering HTML until you hit a `<Suspense/>`. Send down all the HTML you’ve got so far as a chunk in the stream, wait for all the resources accessed under the `<Suspense/>` to load, then render it to HTML and keep walking until you hit another `<Suspense/>` or the end of the page. + +- _Pros_: Rather than a blank screen, shows at least _something_ before the data are ready. +- _Cons_ + - Loads the shell more slowly than synchronous rendering (or out-of-order streaming) because it needs to pause at every `<Suspense/>`. + - Unable to show fallback states for `<Suspense/>`. + - Can’t begin hydration until the entire page has loaded, so earlier pieces of the page will not be interactive until the suspended chunks have loaded. + +## Out-of-Order Streaming + +<video controls> + <source src="https://github.com/leptos-rs/leptos/blob/main/docs/video/out-of-order.mov?raw=true" type="video/mp4"> +</video> + +4. **Out-of-order streaming**: Like synchronous rendering, serve an HTML shell that includes `fallback` for any `<Suspense/>`. But load data on the **server**, streaming it down to the client as it resolves, and streaming down HTML for `<Suspense/>` nodes, which is swapped in to replace the fallback. + +- _Pros_: Combines the best of **synchronous** and **`async`**. + - Fast initial response/TTFB because it immediately sends the whole synchronous shell + - Fast total time because resources begin loading on the server. + - Able to show the fallback loading state and dynamically replace it, instead of showing blank sections for un-loaded data. +- _Cons_: Requires JavaScript to be enabled for suspended fragments to appear in correct order. (This small chunk of JS streamed down in a `<script>` tag alongside the `<template>` tag that contains the rendered `<Suspense/>` fragment, so it does not need to load any additional JS files.) + +5. **Partially-blocked streaming**: “Partially-blocked” streaming is useful when you have multiple separate `<Suspense/>` components on the page. It is triggered by setting `ssr=SsrMode::PartiallyBlocked` on a route, and depending on blocking resources within the view. If one of the `<Suspense/>` components reads from one or more “blocking resources” (see below), the fallback will not be sent; rather, the server will wait until that `<Suspense/>` has resolved and then replace the fallback with the resolved fragment on the server, which means that it is included in the initial HTML response and appears even if JavaScript is disabled or not supported. Other `<Suspense/>` stream in out of order, similar to the `SsrMode::OutOfOrder` default. + +This is useful when you have multiple `<Suspense/>` on the page, and one is more important than the other: think of a blog post and comments, or product information and reviews. It is _not_ useful if there’s only one `<Suspense/>`, or if every `<Suspense/>` reads from blocking resources. In those cases it is a slower form of `async` rendering. + +- _Pros_: Works if JavaScript is disabled or not supported on the user’s device. +- _Cons_ + - Slower initial response time than out-of-order. + - Marginally overall response due to additional work on the server. + - No fallback state shown. + +## Using SSR Modes + +Because it offers the best blend of performance characteristics, Leptos defaults to out-of-order streaming. But it’s really simple to opt into these different modes. You do it by adding an `ssr` property onto one or more of your `<Route/>` components, like in the [`ssr_modes` example](https://github.com/leptos-rs/leptos/blob/main/examples/ssr_modes/src/app.rs). + +```rust +<Routes> + // We’ll load the home page with out-of-order streaming and <Suspense/> + <Route path="" view=HomePage/> + + // We'll load the posts with async rendering, so they can set + // the title and metadata *after* loading the data + <Route + path="/post/:id" + view=Post + ssr=SsrMode::Async + /> +</Routes> +``` + +For a path that includes multiple nested routes, the most restrictive mode will be used: i.e., if even a single nested route asks for `async` rendering, the whole initial request will be rendered `async`. `async` is the most restricted requirement, followed by in-order, and then out-of-order. (This probably makes sense if you think about it for a few minutes.) + +## Blocking Resources + +Any Leptos versions later than `0.2.5` (i.e., git main and `0.3.x` or later) introduce a new resource primitive with `create_blocking_resource`. A blocking resource still loads asynchronously like any other `async`/`.await` in Rust; it doesn’t block a server thread or anything. Instead, reading from a blocking resource under a `<Suspense/>` blocks the HTML _stream_ from returning anything, including its initial synchronous shell, until that `<Suspense/>` has resolved. + +Now from a performance perspective, this is not ideal. None of the synchronous shell for your page will load until that resource is ready. However, rendering nothing means that you can do things like set the `<title>` or `<meta>` tags in your `<head>` in actual HTML. This sounds a lot like `async` rendering, but there’s one big difference: if you have multiple `<Suspense/>` sections, you can block on _one_ of them but still render a placeholder and then stream in the other. + +For example, think about a blog post. For SEO and for social sharing, I definitely want my blog post’s title and metadata in the initial HTML `<head>`. But I really don’t care whether comments have loaded yet or not; I’d like to load those as lazily as possible. + +With blocking resources, I can do something like this: + +```rust +#[component] +pub fn BlogPost() -> impl IntoView { + let post_data = create_blocking_resource(/* load blog post */); + let comment_data = create_resource(/* load blog post */); + view! { + <Suspense fallback=|| ()> + {move || { + post_data.with(|data| { + view! { + <Title text=data.title/> + <Meta name="description" content=data.excerpt/> + <article> + /* render the post content */ + </article> + } + }) + }} + </Suspense> + <Suspense fallback=|| "Loading comments..."> + /* render comment data here */ + </Suspense> + } +} +``` + +The first `<Suspense/>`, with the body of the blog post, will block my HTML stream, because it reads from a blocking resource. Meta tags and other head elements awaiting the blocking resource will be rendered before the stream is sent. + +Combined with the following route definition, which uses `SsrMode::PartiallyBlocked`, the blocking resource will be fully rendered on the server side, making it accessible to users who disable WebAssembly or JavaScript. + +```rust +<Routes> + // We’ll load the home page with out-of-order streaming and <Suspense/> + <Route path="" view=HomePage/> + + // We'll load the posts with async rendering, so they can set + // the title and metadata *after* loading the data + <Route + path="/post/:id" + view=Post + ssr=SsrMode::PartiallyBlocked + /> +</Routes> +``` + +The second `<Suspense/>`, with the comments, will not block the stream. Blocking resources gave me exactly the power and granularity I needed to optimize my page for SEO and user experience. diff --git a/src/ssr/24_hydration_bugs.md b/src/ssr/24_hydration_bugs.md new file mode 100644 index 0000000..c6a8c89 --- /dev/null +++ b/src/ssr/24_hydration_bugs.md @@ -0,0 +1,161 @@ +# Hydration Bugs _(and how to avoid them)_ + +## A Thought Experiment + +Let’s try an experiment to test your intuitions. Open up an app you’re server-rendering with `cargo-leptos`. (If you’ve just been using `trunk` so far to play with examples, go [clone a `cargo-leptos` template](./21_cargo_leptos.md) just for the sake of this exercise.) + +Put a log somewhere in your root component. (I usually call mine `<App/>`, but anything will do.) + +```rust +#[component] +pub fn App() -> impl IntoView { + logging::log!("where do I run?"); + // ... whatever +} +``` + +And let’s fire it up + +```bash +cargo leptos watch +``` + +Where do you expect `where do I run?` to log? + +- In the command line where you’re running the server? +- In the browser console when you load the page? +- Neither? +- Both? + +Try it out. + +... + +... + +... + +Okay, consider the spoiler alerted. + +You’ll notice of course that it logs in both places, assuming everything goes according to plan. In fact on the server it logs twice—first during the initial server startup, when Leptos renders your app once to extract the route tree, then a second time when you make a request. Each time you reload the page, `where do I run?` should log once on the server and once on the client. + +If you think about the description in the last couple sections, hopefully this makes sense. Your application runs once on the server, where it builds up a tree of HTML which is sent to the client. During this initial render, `where do I run?` logs on the server. + +Once the WASM binary has loaded in the browser, your application runs a second time, walking over the same user interface tree and adding interactivity. + +> Does that sound like a waste? It is, in a sense. But reducing that waste is a genuinely hard problem. It’s what some JS frameworks like Qwik are intended to solve, although it’s probably too early to tell whether it’s a net performance gain as opposed to other approaches. + +## The Potential for Bugs + +Okay, hopefully all of that made sense. But what does it have to do with the title of this chapter, which is “Hydration bugs (and how to avoid them)”? + +Remember that the application needs to run on both the server and the client. This generates a few different sets of potential issues you need to know how to avoid. + +### Mismatches between server and client code + +One way to create a bug is by creating a mismatch between the HTML that’s sent down by the server and what’s rendered on the client. It’s actually fairly hard to do this unintentionally, I think (at least judging by the bug reports I get from people.) But imagine I do something like this + +```rust +#[component] +pub fn App() -> impl IntoView { + let data = if cfg!(target_arch = "wasm32") { + vec![0, 1, 2] + } else { + vec![] + }; + data.into_iter() + .map(|value| view! { <span>{value}</span> }) + .collect_view() +} +``` + +In other words, if this is being compiled to WASM, it has three items; otherwise it’s empty. + +When I load the page in the browser, I see nothing. If I open the console I see a bunch of warnings: + +``` +element with id 0-3 not found, ignoring it for hydration +element with id 0-4 not found, ignoring it for hydration +element with id 0-5 not found, ignoring it for hydration +component with id _0-6c not found, ignoring it for hydration +component with id _0-6o not found, ignoring it for hydration +``` + +The WASM version of your app, running in the browser, expects to find three items; but the HTML has none. + +#### Solution + +It’s pretty rare that you do this intentionally, but it could happen from somehow running different logic on the server and in the browser. If you’re seeing warnings like this and you don’t think it’s your fault, it’s much more likely that it’s a bug with `<Suspense/>` or something. Feel free to go ahead and open an [issue](https://github.com/leptos-rs/leptos/issues) or [discussion](https://github.com/leptos-rs/leptos/discussions) on GitHub for help. + +#### Solution + +You can simply tell the effect to wait a tick before updating the signal, by using something like `request_animation_frame`, which will set a short timeout and then update the signal before the next frame. + +```rust +create_effect(move |_| { + // do something like reading from localStorage + request_animation_frame(move || set_loaded(true)); +}); +``` + +This allows the browser to hydrate with the correct, matching state (`loaded` is `false` when it reaches the view), then immediately update it to `true` once hydration is complete. + +### Not all client code can run on the server + +Imagine you happily import a dependency like `gloo-net` that you’ve been used to using to make requests in the browser, and use it in a `create_resource` in a server-rendered app. + +You’ll probably instantly see the dreaded message + +``` +panicked at 'cannot call wasm-bindgen imported functions on non-wasm targets' +``` + +Uh-oh. + +But of course this makes sense. We’ve just said that your app needs to run on the client and the server. + +#### Solution + +There are a few ways to avoid this: + +1. Only use libraries that can run on both the server and the client. `reqwest`, for example, works for making HTTP requests in both settings. +2. Use different libraries on the server and the client, and gate them using the `#[cfg]` macro. ([Click here for an example](https://github.com/leptos-rs/leptos/blob/main/examples/hackernews/src/api.rs).) +3. Wrap client-only code in `create_effect`. Because `create_effect` only runs on the client, this can be an effective way to access browser APIs that are not needed for initial rendering. + +For example, say that I want to store something in the browser’s `localStorage` whenever a signal changes. + +```rust +#[component] +pub fn App() -> impl IntoView { + use gloo_storage::Storage; + let storage = gloo_storage::LocalStorage::raw(); + logging::log!("{storage:?}"); +} +``` + +This panics because I can’t access `LocalStorage` during server rendering. + +But if I wrap it in an effect... + +```rust +#[component] +pub fn App() -> impl IntoView { + use gloo_storage::Storage; + create_effect(move |_| { + let storage = gloo_storage::LocalStorage::raw(); + logging::log!("{storage:?}"); + }); +} +``` + +It’s fine! This will render appropriately on the server, ignoring the client-only code, and then access the storage and log a message on the browser. + +### Not all server code can run on the client + +WebAssembly running in the browser is a pretty limited environment. You don’t have access to a file-system or to many of the other things the standard library may be used to having. Not every crate can even be compiled to WASM, let alone run in a WASM environment. + +In particular, you’ll sometimes see errors about the crate `mio` or missing things from `core`. This is generally a sign that you are trying to compile something to WASM that can’t be compiled to WASM. If you’re adding server-only dependencies, you’ll want to mark them `optional = true` in your `Cargo.toml` and then enable them in the `ssr` feature definition. (Check out one of the template `Cargo.toml` files to see more details.) + +You can use `create_effect` to specify that something should only run on the client, and not in the server. Is there a way to specify that something should run only on the server, and not the client? + +In fact, there is. The next chapter will cover the topic of server functions in some detail. (In the meantime, you can check out their docs [here](https://docs.rs/leptos_server/latest/leptos_server/index.html).) diff --git a/src/ssr/README.md b/src/ssr/README.md new file mode 100644 index 0000000..c696ee6 --- /dev/null +++ b/src/ssr/README.md @@ -0,0 +1,21 @@ +# Server Side Rendering + +So far, everything we’ve written has been rendered almost entirely in the browser. When we create an app using Trunk, it’s served using a local development server. If you build it for production and deploy it, it’s served by whatever server or CDN you’re using. In either case, what’s served is an HTML page with + +1. the URL of your Leptos app, which has been compiled to WebAssembly (WASM) +2. the URL of the JavaScript used to initialized this WASM blob +3. an empty `<body>` element + +When the JS and WASM have loaded, Leptos will render your app into the `<body>`. This means that nothing appears on the screen until JS/WASM have loaded and run. This has some drawbacks: + +1. It increases load time, as your user’s screen is blank until additional resources have been downloaded. +2. It’s bad for SEO, as load times are longer and the HTML you serve has no meaningful content. +3. It’s broken for users for whom JS/WASM don’t load for some reason (e.g., they’re on a train and just went into a tunnel before WASM finished loading; they’re using an older device that doesn’t support WASM; they have JavaScript or WASM turned off for some reason; etc.) + +These downsides apply across the web ecosystem, but especially to WASM apps. + +So what do you do if you want to return more than just an empty `<body>` tag? Use “server-side rendering.” + +Whole books could be (and probably have been) written about this topic, but at its core, it’s really simple: rather than returning an empty `<body>` tag, return an initial HTML page that reflects the actual starting state of your app or site, so that while JS/WASM are loading, and until they load, the user can access the plain HTML version. + +The rest of this section will cover this topic in some detail! diff --git a/src/testing.md b/src/testing.md new file mode 100644 index 0000000..bf9f50a --- /dev/null +++ b/src/testing.md @@ -0,0 +1,219 @@ +# Testing Your Components + +Testing user interfaces can be relatively tricky, but really important. This article +will discuss a couple principles and approaches for testing a Leptos app. + +## 1. Test business logic with ordinary Rust tests + +In many cases, it makes sense to pull the logic out of your components and test +it separately. For some simple components, there’s no particular logic to test, but +for many it’s worth using a testable wrapping type and implementing the logic in +ordinary Rust `impl` blocks. + +For example, instead of embedding logic in a component directly like this: + +```rust +#[component] +pub fn TodoApp() -> impl IntoView { + let (todos, set_todos) = create_signal(vec![Todo { /* ... */ }]); + // ⚠️ this is hard to test because it's embedded in the component + let num_remaining = move || todos.with(|todos| { + todos.iter().filter(|todo| !todo.completed).sum() + }); +} +``` + +You could pull that logic out into a separate data structure and test it: + +```rust +pub struct Todos(Vec<Todo>); + +impl Todos { + pub fn num_remaining(&self) -> usize { + todos.iter().filter(|todo| !todo.completed).sum() + } +} + +#[cfg(test)] +mod tests { + #[test] + fn test_remaining() { + // ... + } +} + +#[component] +pub fn TodoApp() -> impl IntoView { + let (todos, set_todos) = create_signal(Todos(vec![Todo { /* ... */ }])); + // ✅ this has a test associated with it + let num_remaining = move || todos.with(Todos::num_remaining); +} +``` + +In general, the less of your logic is wrapped into your components themselves, the +more idiomatic your code will feel and the easier it will be to test. + +## 2. Test components with end-to-end (`e2e`) testing + +Our [`examples`](https://github.com/leptos-rs/leptos/tree/main/examples) directory has several examples with extensive end-to-end testing, using different testing tools. + +The easiest way to see how to use these is to take a look at the test examples themselves: + +### `wasm-bindgen-test` with [`counter`](https://github.com/leptos-rs/leptos/blob/main/examples/counter/tests/web.rs) + +This is a fairly simple manual testing setup that uses the [`wasm-pack test`](https://rustwasm.github.io/wasm-pack/book/commands/test.html) command. + +#### Sample Test + +````rust +#[wasm_bindgen_test] +fn clear() { + let document = leptos::document(); + let test_wrapper = document.create_element("section").unwrap(); + let _ = document.body().unwrap().append_child(&test_wrapper); + + mount_to( + test_wrapper.clone().unchecked_into(), + || view! { <SimpleCounter initial_value=10 step=1/> }, + ); + + let div = test_wrapper.query_selector("div").unwrap().unwrap(); + let clear = test_wrapper + .query_selector("button") + .unwrap() + .unwrap() + .unchecked_into::<web_sys::HtmlElement>(); + + clear.click(); + +assert_eq!( + div.outer_html(), + // here we spawn a mini reactive system to render the test case + run_scope(create_runtime(), || { + // it's as if we're creating it with a value of 0, right? + let (value, set_value) = create_signal(0); + + // we can remove the event listeners because they're not rendered to HTML + view! { + <div> + <button>"Clear"</button> + <button>"-1"</button> + <span>"Value: " {value} "!"</span> + <button>"+1"</button> + </div> + } + // the view returned an HtmlElement<Div>, which is a smart pointer for + // a DOM element. So we can still just call .outer_html() + .outer_html() + }) +); +} +```` + +### [`wasm-bindgen-test` with `counters_stable`](https://github.com/leptos-rs/leptos/tree/main/examples/counters_stable/tests/web) + +This more developed test suite uses a system of fixtures to refactor the manual DOM manipulation of the `counter` tests and easily test a wide range of cases. + +#### Sample Test + +```rust +use super::*; +use crate::counters_page as ui; +use pretty_assertions::assert_eq; + +#[wasm_bindgen_test] +fn should_increase_the_total_count() { + // Given + ui::view_counters(); + ui::add_counter(); + + // When + ui::increment_counter(1); + ui::increment_counter(1); + ui::increment_counter(1); + + // Then + assert_eq!(ui::total(), 3); +} +``` + +### [Playwright with `counters_stable`](https://github.com/leptos-rs/leptos/tree/main/examples/counters_stable/e2e) + +These tests use the common JavaScript testing tool Playwright to run end-to-end tests on the same example, using a library and testing approach familiar to may who have done frontend development before. + +#### Sample Test + +```js +import { test, expect } from "@playwright/test"; +import { CountersPage } from "./fixtures/counters_page"; + +test.describe("Increment Count", () => { + test("should increase the total count", async ({ page }) => { + const ui = new CountersPage(page); + await ui.goto(); + await ui.addCounter(); + + await ui.incrementCount(); + await ui.incrementCount(); + await ui.incrementCount(); + + await expect(ui.total).toHaveText("3"); + }); +}); +``` + +### [Gherkin/Cucumber Tests with `todo_app_sqlite`](https://github.com/leptos-rs/leptos/blob/main/examples/todo_app_sqlite/e2e/README.md) + +You can integrate any testing tool you’d like into this flow. This example uses Cucumber, a testing framework based on natural language. + +``` +@add_todo +Feature: Add Todo + + Background: + Given I see the app + + @add_todo-see + Scenario: Should see the todo + Given I set the todo as Buy Bread + When I click the Add button + Then I see the todo named Buy Bread + + # @allow.skipped + @add_todo-style + Scenario: Should see the pending todo + When I add a todo as Buy Oranges + Then I see the pending todo +``` + +The definitions for these actions are defined in Rust code. + +```rust +use crate::fixtures::{action, world::AppWorld}; +use anyhow::{Ok, Result}; +use cucumber::{given, when}; + +#[given("I see the app")] +#[when("I open the app")] +async fn i_open_the_app(world: &mut AppWorld) -> Result<()> { + let client = &world.client; + action::goto_path(client, "").await?; + + Ok(()) +} + +#[given(regex = "^I add a todo as (.*)$")] +#[when(regex = "^I add a todo as (.*)$")] +async fn i_add_a_todo_titled(world: &mut AppWorld, text: String) -> Result<()> { + let client = &world.client; + action::add_todo(client, text.as_str()).await?; + + Ok(()) +} + +// etc. +``` + +### Learning More + +Feel free to check out the CI setup in the Leptos repo to learn more about how to use these tools in your own application. All of these testing methods are run regularly against actual Leptos example apps. diff --git a/src/view/01_basic_component.md b/src/view/01_basic_component.md new file mode 100644 index 0000000..1f0c39a --- /dev/null +++ b/src/view/01_basic_component.md @@ -0,0 +1,225 @@ +# A Basic Component + +That “Hello, world!” was a _very_ simple example. Let’s move on to something a +little more like an ordinary app. + +First, let’s edit the `main` function so that, instead of rendering the whole +app, it just renders an `<App/>` component. Components are the basic unit of +composition and design in most web frameworks, and Leptos is no exception. +Conceptually, they are similar to HTML elements: they represent a section of the +DOM, with self-contained, defined behavior. Unlike HTML elements, they are in +`PascalCase`, so most Leptos applications will start with something like an +`<App/>` component. + +```rust +fn main() { + leptos::mount_to_body(|| view! { <App/> }) +} +``` + +Now let’s define our `<App/>` component itself. Because it’s relatively simple, +I’ll give you the whole thing up front, then walk through it line by line. + +```rust +#[component] +fn App() -> impl IntoView { + let (count, set_count) = create_signal(0); + + view! { + <button + on:click=move |_| { + set_count(3); + } + > + "Click me: " + {move || count.get()} + </button> + } +} +``` + +## The Component Signature + +```rust +#[component] +``` + +Like all component definitions, this begins with the [`#[component]`](https://docs.rs/leptos/latest/leptos/attr.component.html) macro. `#[component]` annotates a function so it can be +used as a component in your Leptos application. We’ll see some of the other features of +this macro in a couple chapters. + +```rust +fn App() -> impl IntoView +``` + +Every component is a function with the following characteristics + +1. It takes zero or more arguments of any type. +2. It returns `impl IntoView`, which is an opaque type that includes + anything you could return from a Leptos `view`. + +> Component function arguments are gathered together into a single props struct which is built by the `view` macro as needed. + +## The Component Body + +The body of the component function is a set-up function that runs once, not a +render function that reruns multiple times. You’ll typically use it to create a +few reactive variables, define any side effects that run in response to those values +changing, and describe the user interface. + +```rust +let (count, set_count) = create_signal(0); +``` + +[`create_signal`](https://docs.rs/leptos/latest/leptos/fn.create_signal.html) +creates a signal, the basic unit of reactive change and state management in Leptos. +This returns a `(getter, setter)` tuple. To access the current value, you’ll +use `count.get()` (or, on `nightly` Rust, the shorthand `count()`). To set the +current value, you’ll call `set_count.set(...)` (or `set_count(...)`). + +> `.get()` clones the value and `.set()` overwrites it. In many cases, it’s more efficient to use `.with()` or `.update()`; check out the docs for [`ReadSignal`](https://docs.rs/leptos/latest/leptos/struct.ReadSignal.html) and [`WriteSignal`](https://docs.rs/leptos/latest/leptos/struct.WriteSignal.html) if you’d like to learn more about those trade-offs at this point. + +## The View + +Leptos defines user interfaces using a JSX-like format via the [`view`](https://docs.rs/leptos/latest/leptos/macro.view.html) macro. + +```rust +view! { + <button + // define an event listener with on: + on:click=move |_| { + // on stable, this is set_count.set(3); + set_count(3); + } + > + // text nodes are wrapped in quotation marks + "Click me: " + // blocks can include Rust code + {move || count.get()} + </button> +} +``` + +This should mostly be easy to understand: it looks like HTML, with a special +`on:click` to define a `click` event listener, a text node that’s formatted like +a Rust string, and then... + +```rust +{move || count.get()} +``` + +whatever that is. + +People sometimes joke that they use more closures in their first Leptos application +than they’ve ever used in their lives. And fair enough. Basically, passing a function +into the view tells the framework: “Hey, this is something that might change.” + +When we click the button and call `set_count`, the `count` signal is updated. This +`move || count.get()` closure, whose value depends on the value of `count`, reruns, +and the framework makes a targeted update to that one specific text node, touching +nothing else in your application. This is what allows for extremely efficient updates +to the DOM. + +Now, if you have Clippy on—or if you have a particularly sharp eye—you might notice +that this closure is redundant, at least if you’re in `nightly` Rust. If you’re using +Leptos with `nightly` Rust, signals are already functions, so the closure is unnecessary. +As a result, you can write a simpler view: + +```rust +view! { + <button /* ... */> + "Click me: " + // identical to {move || count.get()} + {count} + </button> +} +``` + +Remember—and this is _very important_—only functions are reactive. This means that +`{count}` and `{count()}` do very different things in your view. `{count}` passes +in a function, telling the framework to update the view every time `count` changes. +`{count()}` accesses the value of `count` once, and passes an `i32` into the view, +rendering it once, unreactively. You can see the difference in the CodeSandbox below! + +Let’s make one final change. `set_count(3)` is a pretty useless thing for a click handler to do. Let’s replace “set this value to 3” with “increment this value by 1”: + +```rust +move |_| { + set_count.update(|n| *n += 1); +} +``` + +You can see here that while `set_count` just sets the value, `set_count.update()` gives us a mutable reference and mutates the value in place. Either one will trigger a reactive update in our UI. + +> Throughout this tutorial, we’ll use CodeSandbox to show interactive examples. To +> show the browser in the sandbox, you may need to click `Add DevTools > +Other Previews > 8080.` Hover over any of the variables to show Rust-Analyzer details +> and docs for what’s going on. Feel free to fork the examples to play with them yourself! + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/1-basic-component-3d74p3?file=%2Fsrc%2Fmain.rs%3A1%2C1) + +<iframe src="https://codesandbox.io/p/sandbox/1-basic-component-3d74p3?file=%2Fsrc%2Fmain.rs%3A1%2C1" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::*; + +// The #[component] macro marks a function as a reusable component +// Components are the building blocks of your user interface +// They define a reusable unit of behavior +#[component] +fn App() -> impl IntoView { + // here we create a reactive signal + // and get a (getter, setter) pair + // signals are the basic unit of change in the framework + // we'll talk more about them later + let (count, set_count) = create_signal(0); + + // the `view` macro is how we define the user interface + // it uses an HTML-like format that can accept certain Rust values + view! { + <button + // on:click will run whenever the `click` event fires + // every event handler is defined as `on:{eventname}` + + // we're able to move `set_count` into the closure + // because signals are Copy and 'static + on:click=move |_| { + set_count.update(|n| *n += 1); + } + > + // text nodes in RSX should be wrapped in quotes, + // like a normal Rust string + "Click me" + </button> + <p> + <strong>"Reactive: "</strong> + // you can insert Rust expressions as values in the DOM + // by wrapping them in curly braces + // if you pass in a function, it will reactively update + {move || count.get()} + </p> + <p> + <strong>"Reactive shorthand: "</strong> + // signals are functions, so we can remove the wrapping closure + {count} + </p> + <p> + <strong>"Not reactive: "</strong> + // NOTE: if you write {count()}, this will *not* be reactive + // it simply gets the value of count once + {count()} + </p> + } +} + +// This `main` function is the entry point into the app +// It just mounts our component to the <body> +// Because we defined it as `fn App`, we can now use it in a +// template as <App/> +fn main() { + leptos::mount_to_body(|| view! { <App/> }) +} +``` diff --git a/src/view/02_dynamic_attributes.md b/src/view/02_dynamic_attributes.md new file mode 100644 index 0000000..c095b6d --- /dev/null +++ b/src/view/02_dynamic_attributes.md @@ -0,0 +1,262 @@ +# `view`: Dynamic Classes, Styles and Attributes + +So far we’ve seen how to use the `view` macro to create event listeners and to +create dynamic text by passing a function (such as a signal) into the view. + +But of course there are other things you might want to update in your user interface. +In this section, we’ll look at how to update classes, styles and attributes dynamically, +and we’ll introduce the concept of a **derived signal**. + +Let’s start with a simple component that should be familiar: click a button to +increment a counter. + +```rust +#[component] +fn App() -> impl IntoView { + let (count, set_count) = create_signal(0); + + view! { + <button + on:click=move |_| { + set_count.update(|n| *n += 1); + } + > + "Click me: " + {move || count()} + </button> + } +} +``` + +So far, this is just the example from the last chapter. + +## Dynamic Classes + +Now let’s say I’d like to update the list of CSS classes on this element dynamically. +For example, let’s say I want to add the class `red` when the count is odd. I can +do this using the `class:` syntax. + +```rust +class:red=move || count() % 2 == 1 +``` + +`class:` attributes take + +1. the class name, following the colon (`red`) +2. a value, which can be a `bool` or a function that returns a `bool` + +When the value is `true`, the class is added. When the value is `false`, the class +is removed. And if the value is a function that accesses a signal, the class will +reactively update when the signal changes. + +Now every time I click the button, the text should toggle between red and black as +the number switches between even and odd. + +Some CSS class names can’t be directly parsed by the `view` macro, especially if they include a mix of dashes and numbers or other characters. In that case, you can use a tuple syntax: `class=("name", value)` still directly updates a single class. + +```rust +class=("button-20", move || count() % 2 == 1) +``` + +> If you’re following along, make sure you go into your `index.html` and add something like this: +> +> ```html +> <style> +> .red { +> color: red; +> } +> </style> +> ``` + +## Dynamic Styles + +Individual CSS properties can be directly updated with a similar `style:` syntax. + +```rust +let (x, set_x) = create_signal(0); +let (y, set_y) = create_signal(0); +view! { + <div + style="position: absolute" + style:left=move || format!("{}px", x() + 100) + style:top=move || format!("{}px", y() + 100) + style:background-color=move || format!("rgb({}, {}, 100)", x(), y()) + style=("--columns", x) + > + "Moves when coordinates change" + </div> +} +``` + +## Dynamic Attributes + +The same applies to plain attributes. Passing a plain string or primitive value to +an attribute gives it a static value. Passing a function (including a signal) to +an attribute causes it to update its value reactively. Let’s add another element +to our view: + +```rust +<progress + max="50" + // signals are functions, so this <=> `move || count.get()` + value=count +/> +``` + +Now every time we set the count, not only will the `class` of the `<button>` be +toggled, but the `value` of the `<progress>` bar will increase, which means that +our progress bar will move forward. + +## Derived Signals + +Let’s go one layer deeper, just for fun. + +You already know that we create reactive interfaces just by passing functions into +the `view`. This means that we can easily change our progress bar. For example, +suppose we want it to move twice as fast: + +```rust +<progress + max="50" + value=move || count() * 2 +/> +``` + +But imagine we want to reuse that calculation in more than one place. You can do this +using a **derived signal**: a closure that accesses a signal. + +```rust +let double_count = move || count() * 2; + +/* insert the rest of the view */ +<progress + max="50" + // we use it once here + value=double_count +/> +<p> + "Double Count: " + // and again here + {double_count} +</p> +``` + +Derived signals let you create reactive computed values that can be used in multiple +places in your application with minimal overhead. + +Note: Using a derived signal like this means that the calculation runs once per +signal change (when `count()` changes) and once per place we access `double_count`; +in other words, twice. This is a very cheap calculation, so that’s fine. +We’ll look at memos in a later chapter, which re designed to solve this problem +for expensive calculations. + +> #### Advanced Topic: Injecting Raw HTML +> +> The `view` macro provides support for an additional attribute, `inner_html`, which +> can be used to directly set the HTML contents of any element, wiping out any other +> children you’ve given it. Note that this does _not_ escape the HTML you provide. You +> should make sure that it only contains trusted input or that any HTML entities are +> escaped, to prevent cross-site scripting (XSS) attacks. +> +> ```rust +> let html = "<p>This HTML will be injected.</p>"; +> view! { +> <div inner_html=html/> +> } +> ``` +> +> [Click here for the full `view` macros docs](https://docs.rs/leptos/latest/leptos/macro.view.html). + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/2-dynamic-attributes-0-5-lwdrpm?file=%2Fsrc%2Fmain.rs%3A1%2C1) + +<iframe src="https://codesandbox.io/p/sandbox/2-dynamic-attributes-0-5-lwdrpm?file=%2Fsrc%2Fmain.rs%3A1%2C1" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>Code Sandbox Source</summary> + +```rust +use leptos::*; + +#[component] +fn App() -> impl IntoView { + let (count, set_count) = create_signal(0); + + // a "derived signal" is a function that accesses other signals + // we can use this to create reactive values that depend on the + // values of one or more other signals + let double_count = move || count() * 2; + + view! { + <button + on:click=move |_| { + set_count.update(|n| *n += 1); + } + // the class: syntax reactively updates a single class + // here, we'll set the `red` class when `count` is odd + class:red=move || count() % 2 == 1 + > + "Click me" + </button> + // NOTE: self-closing tags like <br> need an explicit / + <br/> + + // We'll update this progress bar every time `count` changes + <progress + // static attributes work as in HTML + max="50" + + // passing a function to an attribute + // reactively sets that attribute + // signals are functions, so this <=> `move || count.get()` + value=count + > + </progress> + <br/> + + // This progress bar will use `double_count` + // so it should move twice as fast! + <progress + max="50" + // derived signals are functions, so they can also + // reactive update the DOM + value=double_count + > + </progress> + <p>"Count: " {count}</p> + <p>"Double Count: " {double_count}</p> + } +} + +fn main() { + leptos::mount_to_body(App) +} + + // passing a function to an attribute + // reactively sets that attribute + // signals are functions, so this <=> `move || count.get()` + value=count + > + </progress> + <br/> + + // This progress bar will use `double_count` + // so it should move twice as fast! + <progress + max="50" + // derived signals are functions, so they can also + // reactive update the DOM + value=double_count + > + </progress> + <p>"Count: " {count}</p> + <p>"Double Count: " {double_count}</p> + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/view/03_components.md b/src/view/03_components.md new file mode 100644 index 0000000..481e22c --- /dev/null +++ b/src/view/03_components.md @@ -0,0 +1,481 @@ +# Components and Props + +So far, we’ve been building our whole application in a single component. This +is fine for really tiny examples, but in any real application you’ll need to +break the user interface out into multiple components, so you can break your +interface down into smaller, reusable, composable chunks. + +Let’s take our progress bar example. Imagine that you want two progress bars +instead of one: one that advances one tick per click, one that advances two ticks +per click. + +You _could_ do this by just creating two `<progress>` elements: + +```rust +let (count, set_count) = create_signal(0); +let double_count = move || count() * 2; + +view! { + <progress + max="50" + value=count + /> + <progress + max="50" + value=double_count + /> +} +``` + +But of course, this doesn’t scale very well. If you want to add a third progress +bar, you need to add this code another time. And if you want to edit anything +about it, you need to edit it in triplicate. + +Instead, let’s create a `<ProgressBar/>` component. + +```rust +#[component] +fn ProgressBar() -> impl IntoView { + view! { + <progress + max="50" + // hmm... where will we get this from? + value=progress + /> + } +} +``` + +There’s just one problem: `progress` is not defined. Where should it come from? +When we were defining everything manually, we just used the local variable names. +Now we need some way to pass an argument into the component. + +## Component Props + +We do this using component properties, or “props.” If you’ve used another frontend +framework, this is probably a familiar idea. Basically, properties are to components +as attributes are to HTML elements: they let you pass additional information into +the component. + +In Leptos, you define props by giving additional arguments to the component function. + +```rust +#[component] +fn ProgressBar( + progress: ReadSignal<i32> +) -> impl IntoView { + view! { + <progress + max="50" + // now this works + value=progress + /> + } +} +``` + +Now we can use our component in the main `<App/>` component’s view. + +```rust +#[component] +fn App() -> impl IntoView { + let (count, set_count) = create_signal(0); + view! { + <button on:click=move |_| { set_count.update(|n| *n += 1); }> + "Click me" + </button> + // now we use our component! + <ProgressBar progress=count/> + } +} +``` + +Using a component in the view looks a lot like using an HTML element. You’ll +notice that you can easily tell the difference between an element and a component +because components always have `PascalCase` names. You pass the `progress` prop +in as if it were an HTML element attribute. Simple. + +### Reactive and Static Props + +You’ll notice that throughout this example, `progress` takes a reactive +`ReadSignal<i32>`, and not a plain `i32`. This is **very important**. + +Component props have no special meaning attached to them. A component is simply +a function that runs once to set up the user interface. The only way to tell the +interface to respond to changing is to pass it a signal type. So if you have a +component property that will change over time, like our `progress`, it should +be a signal. + +### `optional` Props + +Right now the `max` setting is hard-coded. Let’s take that as a prop too. But +let’s add a catch: let’s make this prop optional by annotating the particular +argument to the component function with `#[prop(optional)]`. + +```rust +#[component] +fn ProgressBar( + // mark this prop optional + // you can specify it or not when you use <ProgressBar/> + #[prop(optional)] + max: u16, + progress: ReadSignal<i32> +) -> impl IntoView { + view! { + <progress + max=max + value=progress + /> + } +} +``` + +Now, we can use `<ProgressBar max=50 value=count/>`, or we can omit `max` +to use the default value (i.e., `<ProgressBar value=count/>`). The default value +on an `optional` is its `Default::default()` value, which for a `u16` is going to +be `0`. In the case of a progress bar, a max value of `0` is not very useful. + +So let’s give it a particular default value instead. + +### `default` props + +You can specify a default value other than `Default::default()` pretty simply +with `#[prop(default = ...)`. + +```rust +#[component] +fn ProgressBar( + #[prop(default = 100)] + max: u16, + progress: ReadSignal<i32> +) -> impl IntoView { + view! { + <progress + max=max + value=progress + /> + } +} +``` + +### Generic Props + +This is great. But we began with two counters, one driven by `count`, and one by +the derived signal `double_count`. Let’s recreate that by using `double_count` +as the `progress` prop on another `<ProgressBar/>`. + +```rust +#[component] +fn App() -> impl IntoView { + let (count, set_count) = create_signal(0); + let double_count = move || count() * 2; + + view! { + <button on:click=move |_| { set_count.update(|n| *n += 1); }> + "Click me" + </button> + <ProgressBar progress=count/> + // add a second progress bar + <ProgressBar progress=double_count/> + } +} +``` + +Hm... this won’t compile. It should be pretty easy to understand why: we’ve declared +that the `progress` prop takes `ReadSignal<i32>`, and `double_count` is not +`ReadSignal<i32>`. As rust-analyzer will tell you, its type is `|| -> i32`, i.e., +it’s a closure that returns an `i32`. + +There are a couple ways to handle this. One would be to say: “Well, I know that +a `ReadSignal` is a function, and I know that a closure is a function; maybe I +could just take any function?” If you’re savvy, you may know that both these +implement the trait `Fn() -> i32`. So you could use a generic component: + +```rust +#[component] +fn ProgressBar<F>( + #[prop(default = 100)] + max: u16, + progress: F +) -> impl IntoView +where + F: Fn() -> i32 + 'static, +{ + view! { + <progress + max=max + value=progress + /> + } +} +``` + +This is a perfectly reasonable way to write this component: `progress` now takes +any value that implements this `Fn()` trait. + +This generic can also be specified inline: + +```rust +#[component] +fn ProgressBar<F: Fn() -> i32 + 'static>( + #[prop(default = 100)] max: u16, + progress: F, +) -> impl IntoView { + view! { + <progress + max=max + value=progress + /> + } +} +``` + +> Note that generic component props _can’t_ be specified with an `impl` yet (`progress: impl Fn() -> i32 + 'static,`), in part because they’re actually used to generate a `struct ProgressBarProps`, and struct fields cannot be `impl` types. The `#[component]` macro may be further improved in the future to allow inline `impl` generic props. + +### `into` Props + +There’s one more way we could implement this, and it would be to use `#[prop(into)]`. +This attribute automatically calls `.into()` on the values you pass as props, +which allows you to easily pass props with different values. + +In this case, it’s helpful to know about the +[`Signal`](https://docs.rs/leptos/latest/leptos/struct.Signal.html) type. `Signal` +is an enumerated type that represents any kind of readable reactive signal. It can +be useful when defining APIs for components you’ll want to reuse while passing +different sorts of signals. The [`MaybeSignal`](https://docs.rs/leptos/latest/leptos/enum.MaybeSignal.html) type is useful when you want to be able to take either a static or +reactive value. + +```rust +#[component] +fn ProgressBar( + #[prop(default = 100)] + max: u16, + #[prop(into)] + progress: Signal<i32> +) -> impl IntoView +{ + view! { + <progress + max=max + value=progress + /> + } +} + +#[component] +fn App() -> impl IntoView { + let (count, set_count) = create_signal(0); + let double_count = move || count() * 2; + + view! { + <button on:click=move |_| { set_count.update(|n| *n += 1); }> + "Click me" + </button> + // .into() converts `ReadSignal` to `Signal` + <ProgressBar progress=count/> + // use `Signal::derive()` to wrap a derived signal + <ProgressBar progress=Signal::derive(double_count)/> + } +} +``` + +### Optional Generic Props + +Note that you can’t specify optional generic props for a component. Let’s see what would happen if you try: + +```rust,compile_fail +#[component] +fn ProgressBar<F: Fn() -> i32 + 'static>( + #[prop(optional)] progress: Option<F>, +) -> impl IntoView { + progress.map(|progress| { + view! { + <progress + max=100 + value=progress + /> + } + }) +} + +#[component] +pub fn App() -> impl IntoView { + view! { + <ProgressBar/> + } +} +``` + +Rust helpfully gives the error + +``` +xx | <ProgressBar/> + | ^^^^^^^^^^^ cannot infer type of the type parameter `F` declared on the function `ProgressBar` + | +help: consider specifying the generic argument + | +xx | <ProgressBar::<F>/> + | +++++ +``` + +There are just two problems: + +1. Leptos’s view macro doesn’t support specifying a generic on a component with this turbofish syntax. +2. Even if you could, specifying the correct type here is not possible; closures and functions in general are unnameable types. The compiler can display them with a shorthand, but you can’t specify them. + +However, you can get around this by providing a concrete type using `Box<dyn _>` or `&dyn _`: + +```rust +#[component] +fn ProgressBar( + #[prop(optional)] progress: Option<Box<dyn Fn() -> i32>>, +) -> impl IntoView { + progress.map(|progress| { + view! { + <progress + max=100 + value=progress + /> + } + }) +} + +#[component] +pub fn App() -> impl IntoView { + view! { + <ProgressBar/> + } +} +``` + +Because the Rust compiler now knows the concrete type of the prop, and therefore its size in memory even in the `None` case, this compiles fine. + +> In this particular case, `&dyn Fn() -> i32` will cause lifetime issues, but in other cases, it may be a possibility. + +## Documenting Components + +This is one of the least essential but most important sections of this book. +It’s not strictly necessary to document your components and their props. It may +be very important, depending on the size of your team and your app. But it’s very +easy, and bears immediate fruit. + +To document a component and its props, you can simply add doc comments on the +component function, and each one of the props: + +```rust +/// Shows progress toward a goal. +#[component] +fn ProgressBar( + /// The maximum value of the progress bar. + #[prop(default = 100)] + max: u16, + /// How much progress should be displayed. + #[prop(into)] + progress: Signal<i32>, +) -> impl IntoView { + /* ... */ +} +``` + +That’s all you need to do. These behave like ordinary Rust doc comments, except +that you can document individual component props, which can’t be done with Rust +function arguments. + +This will automatically generate documentation for your component, its `Props` +type, and each of the fields used to add props. It can be a little hard to +understand how powerful this is until you hover over the component name or props +and see the power of the `#[component]` macro combined with rust-analyzer here. + +> #### Advanced Topic: `#[component(transparent)]` +> +> All Leptos components return `-> impl IntoView`. Some, though, need to return +> some data directly without any additional wrapping. These can be marked with +> `#[component(transparent)]`, in which case they return exactly the value they +> return, without the rendering system transforming them in any way. +> +> This is mostly used in two situations: +> +> 1. Creating wrappers around `<Suspense/>` or `<Transition/>`, which return a +> transparent suspense structure to integrate with SSR and hydration properly. +> 2. Refactoring `<Route/>` definitions for `leptos_router` out into separate +> components, because `<Route/>` is a transparent component that returns a +> `RouteDefinition` struct rather than a view. +> +> In general, you should not need to use transparent components unless you are +> creating custom wrapping components that fall into one of these two categories. + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/3-components-0-5-5vvl69?file=%2Fsrc%2Fmain.rs%3A1%2C1) + +<iframe src="https://codesandbox.io/p/sandbox/3-components-0-5-5vvl69?file=%2Fsrc%2Fmain.rs%3A1%2C1" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::*; + +// Composing different components together is how we build +// user interfaces. Here, we'll define a resuable <ProgressBar/>. +// You'll see how doc comments can be used to document components +// and their properties. + +/// Shows progress toward a goal. +#[component] +fn ProgressBar( + // Marks this as an optional prop. It will default to the default + // value of its type, i.e., 0. + #[prop(default = 100)] + /// The maximum value of the progress bar. + max: u16, + // Will run `.into()` on the value passed into the prop. + #[prop(into)] + // `Signal<T>` is a wrapper for several reactive types. + // It can be helpful in component APIs like this, where we + // might want to take any kind of reactive value + /// How much progress should be displayed. + progress: Signal<i32>, +) -> impl IntoView { + view! { + <progress + max={max} + value=progress + /> + <br/> + } +} + +#[component] +fn App() -> impl IntoView { + let (count, set_count) = create_signal(0); + + let double_count = move || count() * 2; + + view! { + <button + on:click=move |_| { + set_count.update(|n| *n += 1); + } + > + "Click me" + </button> + <br/> + // If you have this open in CodeSandbox or an editor with + // rust-analyzer support, try hovering over `ProgressBar`, + // `max`, or `progress` to see the docs we defined above + <ProgressBar max=50 progress=count/> + // Let's use the default max value on this one + // the default is 100, so it should move half as fast + <ProgressBar progress=count/> + // Signal::derive creates a Signal wrapper from our derived signal + // using double_count means it should move twice as fast + <ProgressBar max=50 progress=Signal::derive(double_count)/> + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/view/04_iteration.md b/src/view/04_iteration.md new file mode 100644 index 0000000..4756500 --- /dev/null +++ b/src/view/04_iteration.md @@ -0,0 +1,265 @@ +# Iteration + +Whether you’re listing todos, displaying a table, or showing product images, +iterating over a list of items is a common task in web applications. Reconciling +the differences between changing sets of items can also be one of the trickiest +tasks for a framework to handle well. + +Leptos supports two different patterns for iterating over items: + +1. For static views: `Vec<_>` +2. For dynamic lists: `<For/>` + +## Static Views with `Vec<_>` + +Sometimes you need to show an item repeatedly, but the list you’re drawing from +does not often change. In this case, it’s important to know that you can insert +any `Vec<IV> where IV: IntoView` into your view. In other words, if you can render +`T`, you can render `Vec<T>`. + +```rust +let values = vec![0, 1, 2]; +view! { + // this will just render "012" + <p>{values.clone()}</p> + // or we can wrap them in <li> + <ul> + {values.into_iter() + .map(|n| view! { <li>{n}</li>}) + .collect::<Vec<_>>()} + </ul> +} +``` + +Leptos also provides a `.collect_view()` helper function that allows you to collect any iterator of `T: IntoView` into `Vec<View>`. + +```rust +let values = vec![0, 1, 2]; +view! { + // this will just render "012" + <p>{values.clone()}</p> + // or we can wrap them in <li> + <ul> + {values.into_iter() + .map(|n| view! { <li>{n}</li>}) + .collect_view()} + </ul> +} +``` + +The fact that the _list_ is static doesn’t mean the interface needs to be static. +You can render dynamic items as part of a static list. + +```rust +// create a list of 5 signals +let length = 5; +let counters = (1..=length).map(|idx| create_signal(idx)); + +// each item manages a reactive view +// but the list itself will never change +let counter_buttons = counters + .map(|(count, set_count)| { + view! { + <li> + <button + on:click=move |_| set_count.update(|n| *n += 1) + > + {count} + </button> + </li> + } + }) + .collect_view(); + +view! { + <ul>{counter_buttons}</ul> +} +``` + +You _can_ render a `Fn() -> Vec<_>` reactively as well. But note that every time +it changes, this will rerender every item in the list. This is quite inefficient! +Fortunately, there’s a better way. + +## Dynamic Rendering with the `<For/>` Component + +The [`<For/>`](https://docs.rs/leptos/latest/leptos/fn.For.html) component is a +keyed dynamic list. It takes three props: + +- `each`: a function (such as a signal) that returns the items `T` to be iterated over +- `key`: a key function that takes `&T` and returns a stable, unique key or ID +- `children`: renders each `T` into a view + +`key` is, well, the key. You can add, remove, and move items within the list. As +long as each item’s key is stable over time, the framework does not need to rerender +any of the items, unless they are new additions, and it can very efficiently add, +remove, and move items as they change. This allows for extremely efficient updates +to the list as it changes, with minimal additional work. + +Creating a good `key` can be a little tricky. You generally do _not_ want to use +an index for this purpose, as it is not stable—if you remove or move items, their +indices change. + +But it’s a great idea to do something like generating a unique ID for each row as +it is generated, and using that as an ID for the key function. + +Check out the `<DynamicList/>` component below for an example. + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/4-iteration-0-5-pwdn2y?file=%2Fsrc%2Fmain.rs%3A1%2C1) + +<iframe src="https://codesandbox.io/p/sandbox/4-iteration-0-5-pwdn2y?file=%2Fsrc%2Fmain.rs%3A1%2C1" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::*; + +// Iteration is a very common task in most applications. +// So how do you take a list of data and render it in the DOM? +// This example will show you the two ways: +// 1) for mostly-static lists, using Rust iterators +// 2) for lists that grow, shrink, or move items, using <For/> + +#[component] +fn App() -> impl IntoView { + view! { + <h1>"Iteration"</h1> + <h2>"Static List"</h2> + <p>"Use this pattern if the list itself is static."</p> + <StaticList length=5/> + <h2>"Dynamic List"</h2> + <p>"Use this pattern if the rows in your list will change."</p> + <DynamicList initial_length=5/> + } +} + +/// A list of counters, without the ability +/// to add or remove any. +#[component] +fn StaticList( + /// How many counters to include in this list. + length: usize, +) -> impl IntoView { + // create counter signals that start at incrementing numbers + let counters = (1..=length).map(|idx| create_signal(idx)); + + // when you have a list that doesn't change, you can + // manipulate it using ordinary Rust iterators + // and collect it into a Vec<_> to insert it into the DOM + let counter_buttons = counters + .map(|(count, set_count)| { + view! { + <li> + <button + on:click=move |_| set_count.update(|n| *n += 1) + > + {count} + </button> + </li> + } + }) + .collect::<Vec<_>>(); + + // Note that if `counter_buttons` were a reactive list + // and its value changed, this would be very inefficient: + // it would rerender every row every time the list changed. + view! { + <ul>{counter_buttons}</ul> + } +} + +/// A list of counters that allows you to add or +/// remove counters. +#[component] +fn DynamicList( + /// The number of counters to begin with. + initial_length: usize, +) -> impl IntoView { + // This dynamic list will use the <For/> component. + // <For/> is a keyed list. This means that each row + // has a defined key. If the key does not change, the row + // will not be re-rendered. When the list changes, only + // the minimum number of changes will be made to the DOM. + + // `next_counter_id` will let us generate unique IDs + // we do this by simply incrementing the ID by one + // each time we create a counter + let mut next_counter_id = initial_length; + + // we generate an initial list as in <StaticList/> + // but this time we include the ID along with the signal + let initial_counters = (0..initial_length) + .map(|id| (id, create_signal(id + 1))) + .collect::<Vec<_>>(); + + // now we store that initial list in a signal + // this way, we'll be able to modify the list over time, + // adding and removing counters, and it will change reactively + let (counters, set_counters) = create_signal(initial_counters); + + let add_counter = move |_| { + // create a signal for the new counter + let sig = create_signal(next_counter_id + 1); + // add this counter to the list of counters + set_counters.update(move |counters| { + // since `.update()` gives us `&mut T` + // we can just use normal Vec methods like `push` + counters.push((next_counter_id, sig)) + }); + // increment the ID so it's always unique + next_counter_id += 1; + }; + + view! { + <div> + <button on:click=add_counter> + "Add Counter" + </button> + <ul> + // The <For/> component is central here + // This allows for efficient, key list rendering + <For + // `each` takes any function that returns an iterator + // this should usually be a signal or derived signal + // if it's not reactive, just render a Vec<_> instead of <For/> + each=counters + // the key should be unique and stable for each row + // using an index is usually a bad idea, unless your list + // can only grow, because moving items around inside the list + // means their indices will change and they will all rerender + key=|counter| counter.0 + // `children` receives each item from your `each` iterator + // and returns a view + children=move |(id, (count, set_count))| { + view! { + <li> + <button + on:click=move |_| set_count.update(|n| *n += 1) + > + {count} + </button> + <button + on:click=move |_| { + set_counters.update(|counters| { + counters.retain(|(counter_id, _)| counter_id != &id) + }); + } + > + "Remove" + </button> + </li> + } + } + /> + </ul> + </div> + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/view/04b_iteration.md b/src/view/04b_iteration.md new file mode 100644 index 0000000..8af1aa3 --- /dev/null +++ b/src/view/04b_iteration.md @@ -0,0 +1,278 @@ +# Iterating over More Complex Data with `<For/>` + +This chapter goes into iteration over nested data structures in a bit +more depth. It belongs here with the other chapter on iteration, but feel +free to skip it and come back if you’d like to stick with simpler subjects +for now. + +## The Problem + +I just said that the framework does not rerender any of the items in one of the +rows, unless the key has changed. This probably makes sense at first, but it can +easily trip you up. + +Let’s consider an example in which each of the items in our row is some data structure. +Imagine, for example, that the items come from some JSON array of keys and values: + +```rust +#[derive(Debug, Clone)] +struct DatabaseEntry { + key: String, + value: i32, +} +``` + +Let’s define a simple component that will iterate over the rows and display each one: + +```rust +#[component] +pub fn App() -> impl IntoView { + // start with a set of three rows + let (data, set_data) = create_signal(vec![ + DatabaseEntry { + key: "foo".to_string(), + value: 10, + }, + DatabaseEntry { + key: "bar".to_string(), + value: 20, + }, + DatabaseEntry { + key: "baz".to_string(), + value: 15, + }, + ]); + view! { + // when we click, update each row, + // doubling its value + <button on:click=move |_| { + set_data.update(|data| { + for row in data { + row.value *= 2; + } + }); + // log the new value of the signal + logging::log!("{:?}", data.get()); + }> + "Update Values" + </button> + // iterate over the rows and display each value + <For + each=data + key=|state| state.key.clone() + let:child + > + <p>{child.value}</p> + </For> + } +} +``` + +> Note the `let:child` syntax here. In the previous chapter we introduced `<For/>` +> with a `children` prop. We can actually create this value directly in the children +> of the `<For/>` component, without breaking out of the `view` macro: the `let:child` +> combined with `<p>{child.value}</p>` above is the equivalent of +> +> ```rust +> children=|child| view! { <p>{child.value}</p> } +> ``` + +When you click the `Update Values` button... nothing happens. Or rather: +the signal is updated, the new value is logged, but the `{child.value}` +for each row doesn’t update. + +Let’s see: is that because we forgot to add a closure to make it reactive? +Let’s try `{move || child.value}`. + +...Nope. Still nothing. + +Here’s the problem: as I said, each row is only rerendered when the key changes. +We’ve updated the value for each row, but not the key for any of the rows, so +nothing has rerendered. And if you look at the type of `child.value`, it’s a plain +`i32`, not a reactive `ReadSignal<i32>` or something. This means that even if we +wrap a closure around it, the value in this row will never update. + +We have three possible solutions: + +1. change the `key` so that it always updates when the data structure changes +2. change the `value` so that it’s reactive +3. take a reactive slice of the data structure instead of using each row directly + +## Option 1: Change the Key + +Each row is only rerendered when the key changes. Our rows above didn’t rerender, +because the key didn’t change. So: why not just force the key to change? + +```rust +<For + each=data + key=|state| (state.key.clone(), state.value) + let:child +> + <p>{child.value}</p> +</For> +``` + +Now we include both the key and the value in the `key`. This means that whenever the +value of a row changes, `<For/>` will treat it as if it’s an entirely new row, and +replace the previous one. + +### Pros + +This is very easy. We can make it even easier by deriving `PartialEq`, `Eq`, and `Hash` +on `DatabaseEntry`, in which case we could just `key=|state| state.clone()`. + +### Cons + +**This is the least efficient of the three options.** Every time the value of a row +changes, it throws out the previous `<p>` element and replaces it with an entirely new +one. Rather than making a fine-grained update to the text node, in other words, it really +does rerender the entire row on every change, and this is expensive in proportion to how +complex the UI of the row is. + +You’ll notice we also end up cloning the whole data structure so that `<For/>` can hold +onto a copy of the key. For more complex structures, this can become a bad idea fast! + +## Option 2: Nested Signals + +If we do want that fine-grained reactivity for the value, one option is to wrap the `value` +of each row in a signal. + +```rust +#[derive(Debug, Clone)] +struct DatabaseEntry { + key: String, + value: RwSignal<i32>, +} +``` + +`RwSignal<_>` is a “read-write signal,” which combines the getter and setter in one object. +I’m using it here because it’s a little easier to store in a struct than separate getters +and setters. + +```rust +#[component] +pub fn App() -> impl IntoView { + // start with a set of three rows + let (data, set_data) = create_signal(vec![ + DatabaseEntry { + key: "foo".to_string(), + value: create_rw_signal(10), + }, + DatabaseEntry { + key: "bar".to_string(), + value: create_rw_signal(20), + }, + DatabaseEntry { + key: "baz".to_string(), + value: create_rw_signal(15), + }, + ]); + view! { + // when we click, update each row, + // doubling its value + <button on:click=move |_| { + data.with(|data| { + for row in data { + row.value.update(|value| *value *= 2); + } + }); + // log the new value of the signal + logging::log!("{:?}", data.get()); + }> + "Update Values" + </button> + // iterate over the rows and display each value + <For + each=data + key=|state| state.key.clone() + let:child + > + <p>{child.value}</p> + </For> + } +} +``` + +This version works! And if you look in the DOM inspector in your browser, you’ll +see that unlike in the previous version, in this version only the individual text +nodes are updated. Passing the signal directly into `{child.value}` works, as +signals do keep their reactivity if you pass them into the view. + +Note that I changed the `set_data.update()` to a `data.with()`. `.with()` is the +non-cloning way of accessing a signal’s value. In this case, we are only updating +the internal values, not updating the list of values: because signals maintain their +own state, we don’t actual need to update the `data` signal at all, so the immutable +`.with()` is fine here. + +> In fact, this version doesn’t update `data`, so the `<For/>` is essentially a static +> list as in the last chapter, and this could just be a plain iterator. But the `<For/>` +> is useful if we want to add or remove rows in the future. + +### Pros + +This is the most efficient option, and fits directly with the rest of the mental model +of the framework: values that change over time are wrapped in signals so the interface +can respond to them. + +### Cons + +Nested reactivity can be cumbersome if you’re receiving data from an API or another +data source you don’t control, and you don’t want to create a different struct wrapping +each field in a signal. + +## Option 3: Memoized Slices + +Leptos provides a primitive called [`create_memo`](https://docs.rs/leptos/latest/leptos/fn.create_memo.html), +which creates a derived computation that only triggers a reactive update when its value +has changed. + +This allows you to create reactive values for subfields of a larger data structure, +without needing to wrap the fields of that structure in signals. + +Most of the application can remain the same as the initial (broken) version, but the `<For/>` +will be updated to this: + +```rust +<For + each=move || data().into_iter().enumerate() + key=|(_, state)| state.key.clone() + children=move |(index, _)| { + let value = create_memo(move |_| { + data.with(|data| data.get(index).map(|d| d.value).unwrap_or(0)) + }); + view! { + <p>{value}</p> + } + } +/> +``` + +You’ll notice a few differences here: + +- we convert the `data` signal into an enumerated iterator +- we use the `children` prop explicitly, to make it easier to run some non-`view` code +- we define a `value` memo and use that in the view. This `value` field doesn’t actually + use the `child` being passed into each row. Instead, it uses the index and reaches back + into the original `data` to get the value. + +Every time `data` changes, now, each memo will be recalculated. If its value has changed, +it will update its text node, without rerendering the whole row. + +## Pros + +We get the same fine-grained reactivity of the signal-wrapped version, without needing to +wrap the data in signals. + +## Cons + +It’s a bit more complex to set up this memo-per-row inside the `<For/>` loop rather than +using nested signals. For example, you’ll notice that we have to guard against the possibility +that the `data[index]` would panic by using `data.get(index)`, because this memo may be +triggered to re-run once just after the row is removed. (This is because the memo for each row +and the whole `<For/>` both depend on the same `data` signal, and the order of execution for +multiple reactive values that depend on the same signal isn’t guaranteed.) + +Note also that while memos memoize their reactive changes, the same +calculation does need to re-run to check the value every time, so nested reactive signals +will still be more efficient for pinpoint updates here. diff --git a/src/view/05_forms.md b/src/view/05_forms.md new file mode 100644 index 0000000..2b7ac21 --- /dev/null +++ b/src/view/05_forms.md @@ -0,0 +1,250 @@ +# Forms and Inputs + +Forms and form inputs are an important part of interactive apps. There are two +basic patterns for interacting with inputs in Leptos, which you may recognize +if you’re familiar with React, SolidJS, or a similar framework: using **controlled** +or **uncontrolled** inputs. + +## Controlled Inputs + +In a "controlled input," the framework controls the state of the input +element. On every `input` event, it updates a local signal that holds the current +state, which in turn updates the `value` prop of the input. + +There are two important things to remember: + +1. The `input` event fires on (almost) every change to the element, while the + `change` event fires (more or less) when you unfocus the input. You probably + want `on:input`, but we give you the freedom to choose. +2. The `value` _attribute_ only sets the initial value of the input, i.e., it + only updates the input up to the point that you begin typing. The `value` + _property_ continues updating the input after that. You usually want to set + `prop:value` for this reason. (The same is true for `checked` and `prop:checked` + on an `<input type="checkbox">`.) + +```rust +let (name, set_name) = create_signal("Controlled".to_string()); + +view! { + <input type="text" + on:input=move |ev| { + // event_target_value is a Leptos helper function + // it functions the same way as event.target.value + // in JavaScript, but smooths out some of the typecasting + // necessary to make this work in Rust + set_name(event_target_value(&ev)); + } + + // the `prop:` syntax lets you update a DOM property, + // rather than an attribute. + prop:value=name + /> + <p>"Name is: " {name}</p> +} +``` + +> #### Why do you need `prop:value`? +> +> Web browsers are the most ubiquitous and stable platform for rendering graphical user interfaces in existence. They have also maintained an incredible backwards compatibility over their three decades of existence. Inevitably, this means there are some quirks. +> +> One odd quirk is that there is a distinction between HTML attributes and DOM element properties, i.e., between something called an “attribute” which is parsed from HTML and can be set on a DOM element with `.setAttribute()`, and something called a “property” which is a field of the JavaScript class representation of that parsed HTML element. +> +> In the case of an `<input value=...>`, setting the `value` _attribute_ is defined as setting the initial value for the input, and setting `value` _property_ sets its current value. It maybe easiest to understand this by opening `about:blank` and running the following JavaScript in the browser console, line by line: +> +> ```js +> // create an input and append it to the DOM +> const el = document.createElement("input"); +> document.body.appendChild(el); +> +> el.setAttribute("value", "test"); // updates the input +> el.setAttribute("value", "another test"); // updates the input again +> +> // now go and type into the input: delete some characters, etc. +> +> el.setAttribute("value", "one more time?"); +> // nothing should have changed. setting the "initial value" does nothing now +> +> // however... +> el.value = "But this works"; +> ``` +> +> Many other frontend frameworks conflate attributes and properties, or create a special case for inputs that sets the value correctly. Maybe Leptos should do this too; but for now, I prefer giving users the maximum amount of control over whether they’re setting an attribute or a property, and doing my best to educate people about the actual underlying browser behavior rather than obscuring it. + +## Uncontrolled Inputs + +In an "uncontrolled input," the browser controls the state of the input element. +Rather than continuously updating a signal to hold its value, we use a +[`NodeRef`](https://docs.rs/leptos/latest/leptos/struct.NodeRef.html) to access +the input once when we want to get its value. + +In this example, we only notify the framework when the `<form>` fires a `submit` +event. + +```rust +let (name, set_name) = create_signal("Uncontrolled".to_string()); + +let input_element: NodeRef<Input> = create_node_ref(); +``` + +`NodeRef` is a kind of reactive smart pointer: we can use it to access the +underlying DOM node. Its value will be set when the element is rendered. + +```rust +let on_submit = move |ev: SubmitEvent| { + // stop the page from reloading! + ev.prevent_default(); + + // here, we'll extract the value from the input + let value = input_element() + // event handlers can only fire after the view + // is mounted to the DOM, so the `NodeRef` will be `Some` + .expect("<input> to exist") + // `NodeRef` implements `Deref` for the DOM element type + // this means we can call`HtmlInputElement::value()` + // to get the current value of the input + .value(); + set_name(value); +}; +``` + +Our `on_submit` handler will access the input’s value and use it to call `set_name`. +To access the DOM node stored in the `NodeRef`, we can simply call it as a function +(or using `.get()`). This will return `Option<web_sys::HtmlInputElement>`, but we +know it will already have been filled when we rendered the view, so it’s safe to +unwrap here. + +We can then call `.value()` to get the value out of the input, because `NodeRef` +gives us access to a correctly-typed HTML element. + +```rust +view! { + <form on:submit=on_submit> + <input type="text" + value=name + node_ref=input_element + /> + <input type="submit" value="Submit"/> + </form> + <p>"Name is: " {name}</p> +} +``` + +The view should be pretty self-explanatory by now. Note two things: + +1. Unlike in the controlled input example, we use `value` (not `prop:value`). + This is because we’re just setting the initial value of the input, and letting + the browser control its state. (We could use `prop:value` instead.) +2. We use `node_ref` to fill the `NodeRef`. (Older examples sometimes use `_ref`. + They are the same thing, but `node_ref` has better rust-analyzer support.) + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/5-forms-0-5-rf2t7c?file=%2Fsrc%2Fmain.rs%3A1%2C1) + +<iframe src="https://codesandbox.io/p/sandbox/5-forms-0-5-rf2t7c?file=%2Fsrc%2Fmain.rs%3A1%2C1" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::{ev::SubmitEvent, *}; + +#[component] +fn App() -> impl IntoView { + view! { + <h2>"Controlled Component"</h2> + <ControlledComponent/> + <h2>"Uncontrolled Component"</h2> + <UncontrolledComponent/> + } +} + +#[component] +fn ControlledComponent() -> impl IntoView { + // create a signal to hold the value + let (name, set_name) = create_signal("Controlled".to_string()); + + view! { + <input type="text" + // fire an event whenever the input changes + on:input=move |ev| { + // event_target_value is a Leptos helper function + // it functions the same way as event.target.value + // in JavaScript, but smooths out some of the typecasting + // necessary to make this work in Rust + set_name(event_target_value(&ev)); + } + + // the `prop:` syntax lets you update a DOM property, + // rather than an attribute. + // + // IMPORTANT: the `value` *attribute* only sets the + // initial value, until you have made a change. + // The `value` *property* sets the current value. + // This is a quirk of the DOM; I didn't invent it. + // Other frameworks gloss this over; I think it's + // more important to give you access to the browser + // as it really works. + // + // tl;dr: use prop:value for form inputs + prop:value=name + /> + <p>"Name is: " {name}</p> + } +} + +#[component] +fn UncontrolledComponent() -> impl IntoView { + // import the type for <input> + use leptos::html::Input; + + let (name, set_name) = create_signal("Uncontrolled".to_string()); + + // we'll use a NodeRef to store a reference to the input element + // this will be filled when the element is created + let input_element: NodeRef<Input> = create_node_ref(); + + // fires when the form `submit` event happens + // this will store the value of the <input> in our signal + let on_submit = move |ev: SubmitEvent| { + // stop the page from reloading! + ev.prevent_default(); + + // here, we'll extract the value from the input + let value = input_element() + // event handlers can only fire after the view + // is mounted to the DOM, so the `NodeRef` will be `Some` + .expect("<input> to exist") + // `NodeRef` implements `Deref` for the DOM element type + // this means we can call`HtmlInputElement::value()` + // to get the current value of the input + .value(); + set_name(value); + }; + + view! { + <form on:submit=on_submit> + <input type="text" + // here, we use the `value` *attribute* to set only + // the initial value, letting the browser maintain + // the state after that + value=name + + // store a reference to this input in `input_element` + node_ref=input_element + /> + <input type="submit" value="Submit"/> + </form> + <p>"Name is: " {name}</p> + } +} + +// This `main` function is the entry point into the app +// It just mounts our component to the <body> +// Because we defined it as `fn App`, we can now use it in a +// template as <App/> +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/view/06_control_flow.md b/src/view/06_control_flow.md new file mode 100644 index 0000000..b3f1af6 --- /dev/null +++ b/src/view/06_control_flow.md @@ -0,0 +1,384 @@ +# Control Flow + +In most applications, you sometimes need to make a decision: Should I render this +part of the view, or not? Should I render `<ButtonA/>` or `<WidgetB/>`? This is +**control flow**. + +## A Few Tips + +When thinking about how to do this with Leptos, it’s important to remember a few +things: + +1. Rust is an expression-oriented language: control-flow expressions like + `if x() { y } else { z }` and `match x() { ... }` return their values. This + makes them very useful for declarative user interfaces. +2. For any `T` that implements `IntoView`—in other words, for any type that Leptos + knows how to render—`Option<T>` and `Result<T, impl Error>` _also_ implement + `IntoView`. And just as `Fn() -> T` renders a reactive `T`, `Fn() -> Option<T>` + and `Fn() -> Result<T, impl Error>` are reactive. +3. Rust has lots of handy helpers like [Option::map](https://doc.rust-lang.org/std/option/enum.Option.html#method.map), + [Option::and_then](https://doc.rust-lang.org/std/option/enum.Option.html#method.and_then), + [Option::ok_or](https://doc.rust-lang.org/std/option/enum.Option.html#method.ok_or), + [Result::map](https://doc.rust-lang.org/std/result/enum.Result.html#method.map), + [Result::ok](https://doc.rust-lang.org/std/result/enum.Result.html#method.ok), and + [bool::then](https://doc.rust-lang.org/std/primitive.bool.html#method.then) that + allow you to convert, in a declarative way, between a few different standard types, + all of which can be rendered. Spending time in the `Option` and `Result` docs in particular + is one of the best ways to level up your Rust game. +4. And always remember: to be reactive, values must be functions. You’ll see me constantly + wrap things in a `move ||` closure, below. This is to ensure that they actually rerun + when the signal they depend on changes, keeping the UI reactive. + +## So What? + +To connect the dots a little: this means that you can actually implement most of +your control flow with native Rust code, without any control-flow components or +special knowledge. + +For example, let’s start with a simple signal and derived signal: + +```rust +let (value, set_value) = create_signal(0); +let is_odd = move || value() & 1 == 1; +``` + +> If you don’t recognize what’s going on with `is_odd`, don’t worry about it +> too much. It’s just a simple way to test whether an integer is odd by doing a +> bitwise `AND` with `1`. + +We can use these signals and ordinary Rust to build most control flow. + +### `if` statements + +Let’s say I want to render some text if the number is odd, and some other text +if it’s even. Well, how about this? + +```rust +view! { + <p> + {move || if is_odd() { + "Odd" + } else { + "Even" + }} + </p> +} +``` + +An `if` expression returns its value, and a `&str` implements `IntoView`, so a +`Fn() -> &str` implements `IntoView`, so this... just works! + +### `Option<T>` + +Let’s say we want to render some text if it’s odd, and nothing if it’s even. + +```rust +let message = move || { + if is_odd() { + Some("Ding ding ding!") + } else { + None + } +}; + +view! { + <p>{message}</p> +} +``` + +This works fine. We can make it a little shorter if we’d like, using `bool::then()`. + +```rust +let message = move || is_odd().then(|| "Ding ding ding!"); +view! { + <p>{message}</p> +} +``` + +You could even inline this if you’d like, although personally I sometimes like the +better `cargo fmt` and `rust-analyzer` support I get by pulling things out of the `view`. + +### `match` statements + +We’re still just writing ordinary Rust code, right? So you have all the power of Rust’s +pattern matching at your disposal. + +```rust +let message = move || { + match value() { + 0 => "Zero", + 1 => "One", + n if is_odd() => "Odd", + _ => "Even" + } +}; +view! { + <p>{message}</p> +} +``` + +And why not? YOLO, right? + +## Preventing Over-Rendering + +Not so YOLO. + +Everything we’ve just done is basically fine. But there’s one thing you should remember +and try to be careful with. Each one of the control-flow functions we’ve created so far +is basically a derived signal: it will rerun every time the value changes. In the examples +above, where the value switches from even to odd on every change, this is fine. + +But consider the following example: + +```rust +let (value, set_value) = create_signal(0); + +let message = move || if value() > 5 { + "Big" +} else { + "Small" +}; + +view! { + <p>{message}</p> +} +``` + +This _works_, for sure. But if you added a log, you might be surprised + +```rust +let message = move || if value() > 5 { + logging::log!("{}: rendering Big", value()); + "Big" +} else { + logging::log!("{}: rendering Small", value()); + "Small" +}; +``` + +As a user clicks a button, you’d see something like this: + +``` +1: rendering Small +2: rendering Small +3: rendering Small +4: rendering Small +5: rendering Small +6: rendering Big +7: rendering Big +8: rendering Big +... ad infinitum +``` + +Every time `value` changes, it reruns the `if` statement. This makes sense, with +how reactivity works. But it has a downside. For a simple text node, rerunning +the `if` statement and rerendering isn’t a big deal. But imagine it were +like this: + +```rust +let message = move || if value() > 5 { + <Big/> +} else { + <Small/> +}; +``` + +This rerenders `<Small/>` five times, then `<Big/>` infinitely. If they’re +loading resources, creating signals, or even just creating DOM nodes, this is +unnecessary work. + +### `<Show/>` + +The [`<Show/>`](https://docs.rs/leptos/latest/leptos/fn.Show.html) component is +the answer. You pass it a `when` condition function, a `fallback` to be shown if +the `when` function returns `false`, and children to be rendered if `when` is `true`. + +```rust +let (value, set_value) = create_signal(0); + +view! { + <Show + when=move || { value() > 5 } + fallback=|| view! { <Small/> } + > + <Big/> + </Show> +} +``` + +`<Show/>` memoizes the `when` condition, so it only renders its `<Small/>` once, +continuing to show the same component until `value` is greater than five; +then it renders `<Big/>` once, continuing to show it indefinitely or until `value` +goes below five and then renders `<Small/>` again. + +This is a helpful tool to avoid rerendering when using dynamic `if` expressions. +As always, there's some overhead: for a very simple node (like updating a single +text node, or updating a class or attribute), a `move || if ...` will be more +efficient. But if it’s at all expensive to render either branch, reach for +`<Show/>`. + +## Note: Type Conversions + +There‘s one final thing it’s important to say in this section. + +The `view` macro doesn’t return the most-generic wrapping type +[`View`](https://docs.rs/leptos/latest/leptos/enum.View.html). +Instead, it returns things with types like `Fragment` or `HtmlElement<Input>`. This +can be a little annoying if you’re returning different HTML elements from +different branches of a conditional: + +```rust,compile_error +view! { + <main> + {move || match is_odd() { + true if value() == 1 => { + // returns HtmlElement<Pre> + view! { <pre>"One"</pre> } + }, + false if value() == 2 => { + // returns HtmlElement<P> + view! { <p>"Two"</p> } + } + // returns HtmlElement<Textarea> + _ => view! { <textarea>{value()}</textarea> } + }} + </main> +} +``` + +This strong typing is actually very powerful, because +[`HtmlElement`](https://docs.rs/leptos/0.1.3/leptos/struct.HtmlElement.html) is, +among other things, a smart pointer: each `HtmlElement<T>` type implements +`Deref` for the appropriate underlying `web_sys` type. In other words, in the browser +your `view` returns real DOM elements, and you can access native DOM methods on +them. + +But it can be a little annoying in conditional logic like this, because you can’t +return different types from different branches of a condition in Rust. There are two ways +to get yourself out of this situation: + +1. If you have multiple `HtmlElement` types, convert them to `HtmlElement<AnyElement>` + with [`.into_any()`](https://docs.rs/leptos/latest/leptos/struct.HtmlElement.html#method.into_any) +2. If you have a variety of view types that are not all `HtmlElement`, convert them to + `View`s with [`.into_view()`](https://docs.rs/leptos/latest/leptos/trait.IntoView.html#tymethod.into_view). + +Here’s the same example, with the conversion added: + +```rust,compile_error +view! { + <main> + {move || match is_odd() { + true if value() == 1 => { + // returns HtmlElement<Pre> + view! { <pre>"One"</pre> }.into_any() + }, + false if value() == 2 => { + // returns HtmlElement<P> + view! { <p>"Two"</p> }.into_any() + } + // returns HtmlElement<Textarea> + _ => view! { <textarea>{value()}</textarea> }.into_any() + }} + </main> +} +``` + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/6-control-flow-0-5-4yn7qz?file=%2Fsrc%2Fmain.rs%3A1%2C1) + +<iframe src="https://codesandbox.io/p/sandbox/6-control-flow-0-5-4yn7qz?file=%2Fsrc%2Fmain.rs%3A1%2C1" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::*; + +#[component] +fn App() -> impl IntoView { + let (value, set_value) = create_signal(0); + let is_odd = move || value() & 1 == 1; + let odd_text = move || if is_odd() { Some("How odd!") } else { None }; + + view! { + <h1>"Control Flow"</h1> + + // Simple UI to update and show a value + <button on:click=move |_| set_value.update(|n| *n += 1)> + "+1" + </button> + <p>"Value is: " {value}</p> + + <hr/> + + <h2><code>"Option<T>"</code></h2> + // For any `T` that implements `IntoView`, + // so does `Option<T>` + + <p>{odd_text}</p> + // This means you can use `Option` methods on it + <p>{move || odd_text().map(|text| text.len())}</p> + + <h2>"Conditional Logic"</h2> + // You can do dynamic conditional if-then-else + // logic in several ways + // + // a. An "if" expression in a function + // This will simply re-render every time the value + // changes, which makes it good for lightweight UI + <p> + {move || if is_odd() { + "Odd" + } else { + "Even" + }} + </p> + + // b. Toggling some kind of class + // This is smart for an element that's going to + // toggled often, because it doesn't destroy + // it in between states + // (you can find the `hidden` class in `index.html`) + <p class:hidden=is_odd>"Appears if even."</p> + + // c. The <Show/> component + // This only renders the fallback and the child + // once, lazily, and toggles between them when + // needed. This makes it more efficient in many cases + // than a {move || if ...} block + <Show when=is_odd + fallback=|| view! { <p>"Even steven"</p> } + > + <p>"Oddment"</p> + </Show> + + // d. Because `bool::then()` converts a `bool` to + // `Option`, you can use it to create a show/hide toggled + {move || is_odd().then(|| view! { <p>"Oddity!"</p> })} + + <h2>"Converting between Types"</h2> + // e. Note: if branches return different types, + // you can convert between them with + // `.into_any()` (for different HTML element types) + // or `.into_view()` (for all view types) + {move || match is_odd() { + true if value() == 1 => { + // <pre> returns HtmlElement<Pre> + view! { <pre>"One"</pre> }.into_any() + }, + false if value() == 2 => { + // <p> returns HtmlElement<P> + // so we convert into a more generic type + view! { <p>"Two"</p> }.into_any() + } + _ => view! { <textarea>{value()}</textarea> }.into_any() + }} + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/view/07_errors.md b/src/view/07_errors.md new file mode 100644 index 0000000..375fcb4 --- /dev/null +++ b/src/view/07_errors.md @@ -0,0 +1,175 @@ +# Error Handling + +[In the last chapter](./06_control_flow.md), we saw that you can render `Option<T>`: +in the `None` case, it will render nothing, and in the `T` case, it will render `T` +(that is, if `T` implements `IntoView`). You can actually do something very similar +with a `Result<T, E>`. In the `Err(_)` case, it will render nothing. In the `Ok(T)` +case, it will render the `T`. + +Let’s start with a simple component to capture a number input. + +```rust +#[component] +fn NumericInput() -> impl IntoView { + let (value, set_value) = create_signal(Ok(0)); + + // when input changes, try to parse a number from the input + let on_input = move |ev| set_value(event_target_value(&ev).parse::<i32>()); + + view! { + <label> + "Type a number (or not!)" + <input type="number" on:input=on_input/> + <p> + "You entered " + <strong>{value}</strong> + </p> + </label> + } +} +``` + +Every time you change the input, `on_input` will attempt to parse its value into a 32-bit +integer (`i32`), and store it in our `value` signal, which is a `Result<i32, _>`. If you +type the number `42`, the UI will display + +``` +You entered 42 +``` + +But if you type the string`foo`, it will display + +``` +You entered +``` + +This is not great. It saves us using `.unwrap_or_default()` or something, but it would be +much nicer if we could catch the error and do something with it. + +You can do that, with the [`<ErrorBoundary/>`](https://docs.rs/leptos/latest/leptos/fn.ErrorBoundary.html) +component. + +## `<ErrorBoundary/>` + +An `<ErrorBoundary/>` is a little like the `<Show/>` component we saw in the last chapter. +If everything’s okay—which is to say, if everything is `Ok(_)`—it renders its children. +But if there’s an `Err(_)` rendered among those children, it will trigger the +`<ErrorBoundary/>`’s `fallback`. + +Let’s add an `<ErrorBoundary/>` to this example. + +```rust +#[component] +fn NumericInput() -> impl IntoView { + let (value, set_value) = create_signal(Ok(0)); + + let on_input = move |ev| set_value(event_target_value(&ev).parse::<i32>()); + + view! { + <h1>"Error Handling"</h1> + <label> + "Type a number (or something that's not a number!)" + <input type="number" on:input=on_input/> + <ErrorBoundary + // the fallback receives a signal containing current errors + fallback=|errors| view! { + <div class="error"> + <p>"Not a number! Errors: "</p> + // we can render a list of errors as strings, if we'd like + <ul> + {move || errors.get() + .into_iter() + .map(|(_, e)| view! { <li>{e.to_string()}</li>}) + .collect_view() + } + </ul> + </div> + } + > + <p>"You entered " <strong>{value}</strong></p> + </ErrorBoundary> + </label> + } +} +``` + +Now, if you type `42`, `value` is `Ok(42)` and you’ll see + +``` +You entered 42 +``` + +If you type `foo`, value is `Err(_)` and the `fallback` will render. We’ve chosen to render +the list of errors as a `String`, so you’ll see something like + +``` +Not a number! Errors: +- cannot parse integer from empty string +``` + +If you fix the error, the error message will disappear and the content you’re wrapping in +an `<ErrorBoundary/>` will appear again. + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/7-errors-0-5-5mptv9?file=%2Fsrc%2Fmain.rs%3A1%2C1) + +<iframe src="https://codesandbox.io/p/sandbox/7-errors-0-5-5mptv9?file=%2Fsrc%2Fmain.rs%3A1%2C1" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::*; + +#[component] +fn App() -> impl IntoView { + let (value, set_value) = create_signal(Ok(0)); + + // when input changes, try to parse a number from the input + let on_input = move |ev| set_value(event_target_value(&ev).parse::<i32>()); + + view! { + <h1>"Error Handling"</h1> + <label> + "Type a number (or something that's not a number!)" + <input type="number" on:input=on_input/> + // If an `Err(_) had been rendered inside the <ErrorBoundary/>, + // the fallback will be displayed. Otherwise, the children of the + // <ErrorBoundary/> will be displayed. + <ErrorBoundary + // the fallback receives a signal containing current errors + fallback=|errors| view! { + <div class="error"> + <p>"Not a number! Errors: "</p> + // we can render a list of errors + // as strings, if we'd like + <ul> + {move || errors.get() + .into_iter() + .map(|(_, e)| view! { <li>{e.to_string()}</li>}) + .collect::<Vec<_>>() + } + </ul> + </div> + } + > + <p> + "You entered " + // because `value` is `Result<i32, _>`, + // it will render the `i32` if it is `Ok`, + // and render nothing and trigger the error boundary + // if it is `Err`. It's a signal, so this will dynamically + // update when `value` changes + <strong>{value}</strong> + </p> + </ErrorBoundary> + </label> + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/view/08_parent_child.md b/src/view/08_parent_child.md new file mode 100644 index 0000000..73d96c6 --- /dev/null +++ b/src/view/08_parent_child.md @@ -0,0 +1,463 @@ +# Parent-Child Communication + +You can think of your application as a nested tree of components. Each component +handles its own local state and manages a section of the user interface, so +components tend to be relatively self-contained. + +Sometimes, though, you’ll want to communicate between a parent component and its +child. For example, imagine you’ve defined a `<FancyButton/>` component that adds +some styling, logging, or something else to a `<button/>`. You want to use a +`<FancyButton/>` in your `<App/>` component. But how can you communicate between +the two? + +It’s easy to communicate state from a parent component to a child component. We +covered some of this in the material on [components and props](./03_components.md). +Basically if you want the parent to communicate to the child, you can pass a +[`ReadSignal`](https://docs.rs/leptos/latest/leptos/struct.ReadSignal.html), a +[`Signal`](https://docs.rs/leptos/latest/leptos/struct.Signal.html), or even a +[`MaybeSignal`](https://docs.rs/leptos/latest/leptos/enum.MaybeSignal.html) as a prop. + +But what about the other direction? How can a child send notifications about events +or state changes back up to the parent? + +There are four basic patterns of parent-child communication in Leptos. + +## 1. Pass a [`WriteSignal`](https://docs.rs/leptos/latest/leptos/struct.WriteSignal.html) + +One approach is simply to pass a `WriteSignal` from the parent down to the child, and update +it in the child. This lets you manipulate the state of the parent from the child. + +```rust +#[component] +pub fn App() -> impl IntoView { + let (toggled, set_toggled) = create_signal(false); + view! { + <p>"Toggled? " {toggled}</p> + <ButtonA setter=set_toggled/> + } +} + +#[component] +pub fn ButtonA(setter: WriteSignal<bool>) -> impl IntoView { + view! { + <button + on:click=move |_| setter.update(|value| *value = !*value) + > + "Toggle" + </button> + } +} +``` + +This pattern is simple, but you should be careful with it: passing around a `WriteSignal` +can make it hard to reason about your code. In this example, it’s pretty clear when you +read `<App/>` that you are handing off the ability to mutate `toggled`, but it’s not at +all clear when or how it will change. In this small, local example it’s easy to understand, +but if you find yourself passing around `WriteSignal`s like this throughout your code, +you should really consider whether this is making it too easy to write spaghetti code. + +## 2. Use a Callback + +Another approach would be to pass a callback to the child: say, `on_click`. + +```rust +#[component] +pub fn App() -> impl IntoView { + let (toggled, set_toggled) = create_signal(false); + view! { + <p>"Toggled? " {toggled}</p> + <ButtonB on_click=move |_| set_toggled.update(|value| *value = !*value)/> + } +} + + +#[component] +pub fn ButtonB(#[prop(into)] on_click: Callback<MouseEvent>) -> impl IntoView +{ + view! { + <button on:click=on_click> + "Toggle" + </button> + } +} +``` + +You’ll notice that whereas `<ButtonA/>` was given a `WriteSignal` and decided how to mutate it, +`<ButtonB/>` simply fires an event: the mutation happens back in `<App/>`. This has the advantage +of keeping local state local, preventing the problem of spaghetti mutation. But it also means +the logic to mutate that signal needs to exist up in `<App/>`, not down in `<ButtonB/>`. These +are real trade-offs, not a simple right-or-wrong choice. + +> Note the way we use the `Callback<In, Out>` type. This is basically a +> wrapper around a closure `Fn(In) -> Out` that is also `Copy` and makes it +> easy to pass around. +> +> We also used the `#[prop(into)]` attribute so we can pass a normal closure into +> `on_click`. Please see the [chapter "`into` Props"](./03_components.md#into-props) for more details. + +### 2.1 Use Closure instead of `Callback` + +You can use a Rust closure `Fn(MouseEvent)` directly instead of `Callback`: + +```rust +#[component] +pub fn App() -> impl IntoView { + let (toggled, set_toggled) = create_signal(false); + view! { + <p>"Toggled? " {toggled}</p> + <ButtonB on_click=move |_| set_toggled.update(|value| *value = !*value)/> + } +} + + +#[component] +pub fn ButtonB<F>(on_click: F) -> impl IntoView +where + F: Fn(MouseEvent) + 'static +{ + view! { + <button on:click=on_click> + "Toggle" + </button> + } +} +``` + +The code is very similar in this case. On more advanced use-cases using a +closure might require some cloning compared to using a `Callback`. + +> Note the way we declare the generic type `F` here for the callback. If you’re +> confused, look back at the [generic props](./03_components.html#generic-props) section +> of the chapter on components. + + +## 3. Use an Event Listener + +You can actually write Option 2 in a slightly different way. If the callback maps directly onto +a native DOM event, you can add an `on:` listener directly to the place you use the component +in your `view` macro in `<App/>`. + +```rust +#[component] +pub fn App() -> impl IntoView { + let (toggled, set_toggled) = create_signal(false); + view! { + <p>"Toggled? " {toggled}</p> + // note the on:click instead of on_click + // this is the same syntax as an HTML element event listener + <ButtonC on:click=move |_| set_toggled.update(|value| *value = !*value)/> + } +} + + +#[component] +pub fn ButtonC<F>() -> impl IntoView { + view! { + <button>"Toggle"</button> + } +} +``` + +This lets you write way less code in `<ButtonC/>` than you did for `<ButtonB/>`, +and still gives a correctly-typed event to the listener. This works by adding an +`on:` event listener to each element that `<ButtonC/>` returns: in this case, just +the one `<button>`. + +Of course, this only works for actual DOM events that you’re passing directly through +to the elements you’re rendering in the component. For more complex logic that +doesn’t map directly onto an element (say you create `<ValidatedForm/>` and want an +`on_valid_form_submit` callback) you should use Option 2. + +## 4. Providing a Context + +This version is actually a variant on Option 1. Say you have a deeply-nested component +tree: + +```rust +#[component] +pub fn App() -> impl IntoView { + let (toggled, set_toggled) = create_signal(false); + view! { + <p>"Toggled? " {toggled}</p> + <Layout/> + } +} + +#[component] +pub fn Layout() -> impl IntoView { + view! { + <header> + <h1>"My Page"</h1> + </header> + <main> + <Content/> + </main> + } +} + +#[component] +pub fn Content() -> impl IntoView { + view! { + <div class="content"> + <ButtonD/> + </div> + } +} + +#[component] +pub fn ButtonD<F>() -> impl IntoView { + todo!() +} +``` + +Now `<ButtonD/>` is no longer a direct child of `<App/>`, so you can’t simply +pass your `WriteSignal` to its props. You could do what’s sometimes called +“prop drilling,” adding a prop to each layer between the two: + +```rust +#[component] +pub fn App() -> impl IntoView { + let (toggled, set_toggled) = create_signal(false); + view! { + <p>"Toggled? " {toggled}</p> + <Layout set_toggled/> + } +} + +#[component] +pub fn Layout(set_toggled: WriteSignal<bool>) -> impl IntoView { + view! { + <header> + <h1>"My Page"</h1> + </header> + <main> + <Content set_toggled/> + </main> + } +} + +#[component] +pub fn Content(set_toggled: WriteSignal<bool>) -> impl IntoView { + view! { + <div class="content"> + <ButtonD set_toggled/> + </div> + } +} + +#[component] +pub fn ButtonD<F>(set_toggled: WriteSignal<bool>) -> impl IntoView { + todo!() +} +``` + +This is a mess. `<Layout/>` and `<Content/>` don’t need `set_toggled`; they just +pass it through to `<ButtonD/>`. But I need to declare the prop in triplicate. +This is not only annoying but hard to maintain: imagine we add a “half-toggled” +option and the type of `set_toggled` needs to change to an `enum`. We have to change +it in three places! + +Isn’t there some way to skip levels? + +There is! + +### The Context API + +You can provide data that skips levels by using [`provide_context`](https://docs.rs/leptos/latest/leptos/fn.provide_context.html) +and [`use_context`](https://docs.rs/leptos/latest/leptos/fn.use_context.html). Contexts are identified +by the type of the data you provide (in this example, `WriteSignal<bool>`), and they exist in a top-down +tree that follows the contours of your UI tree. In this example, we can use context to skip the +unnecessary prop drilling. + +```rust +#[component] +pub fn App() -> impl IntoView { + let (toggled, set_toggled) = create_signal(false); + + // share `set_toggled` with all children of this component + provide_context(set_toggled); + + view! { + <p>"Toggled? " {toggled}</p> + <Layout/> + } +} + +// <Layout/> and <Content/> omitted + +#[component] +pub fn ButtonD() -> impl IntoView { + // use_context searches up the context tree, hoping to + // find a `WriteSignal<bool>` + // in this case, I .expect() because I know I provided it + let setter = use_context::<WriteSignal<bool>>() + .expect("to have found the setter provided"); + + view! { + <button + on:click=move |_| setter.update(|value| *value = !*value) + > + "Toggle" + </button> + } +} +``` + +The same caveats apply to this as to `<ButtonA/>`: passing a `WriteSignal` +around should be done with caution, as it allows you to mutate state from +arbitrary parts of your code. But when done carefully, this can be one of +the most effective techniques for global state management in Leptos: simply +provide the state at the highest level you’ll need it, and use it wherever +you need it lower down. + +Note that there are no performance downsides to this approach. Because you +are passing a fine-grained reactive signal, _nothing happens_ in the intervening +components (`<Layout/>` and `<Content/>`) when you update it. You are communicating +directly between `<ButtonD/>` and `<App/>`. In fact—and this is the power of +fine-grained reactivity—you are communicating directly between a button click +in `<ButtonD/>` and a single text node in `<App/>`. It’s as if the components +themselves don’t exist at all. And, well... at runtime, they don’t. It’s just +signals and effects, all the way down. + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/8-parent-child-0-5-7rz7qd?file=%2Fsrc%2Fmain.rs%3A1%2C2) + +<iframe src="https://codesandbox.io/p/sandbox/8-parent-child-0-5-7rz7qd?file=%2Fsrc%2Fmain.rs%3A1%2C2" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::{ev::MouseEvent, *}; + +// This highlights four different ways that child components can communicate +// with their parent: +// 1) <ButtonA/>: passing a WriteSignal as one of the child component props, +// for the child component to write into and the parent to read +// 2) <ButtonB/>: passing a closure as one of the child component props, for +// the child component to call +// 3) <ButtonC/>: adding an `on:` event listener to a component +// 4) <ButtonD/>: providing a context that is used in the component (rather than prop drilling) + +#[derive(Copy, Clone)] +struct SmallcapsContext(WriteSignal<bool>); + +#[component] +pub fn App() -> impl IntoView { + // just some signals to toggle three classes on our <p> + let (red, set_red) = create_signal(false); + let (right, set_right) = create_signal(false); + let (italics, set_italics) = create_signal(false); + let (smallcaps, set_smallcaps) = create_signal(false); + + // the newtype pattern isn't *necessary* here but is a good practice + // it avoids confusion with other possible future `WriteSignal<bool>` contexts + // and makes it easier to refer to it in ButtonC + provide_context(SmallcapsContext(set_smallcaps)); + + view! { + <main> + <p + // class: attributes take F: Fn() => bool, and these signals all implement Fn() + class:red=red + class:right=right + class:italics=italics + class:smallcaps=smallcaps + > + "Lorem ipsum sit dolor amet." + </p> + + // Button A: pass the signal setter + <ButtonA setter=set_red/> + + // Button B: pass a closure + <ButtonB on_click=move |_| set_right.update(|value| *value = !*value)/> + + // Button B: use a regular event listener + // setting an event listener on a component like this applies it + // to each of the top-level elements the component returns + <ButtonC on:click=move |_| set_italics.update(|value| *value = !*value)/> + + // Button D gets its setter from context rather than props + <ButtonD/> + </main> + } +} + +/// Button A receives a signal setter and updates the signal itself +#[component] +pub fn ButtonA( + /// Signal that will be toggled when the button is clicked. + setter: WriteSignal<bool>, +) -> impl IntoView { + view! { + <button + on:click=move |_| setter.update(|value| *value = !*value) + > + "Toggle Red" + </button> + } +} + +/// Button B receives a closure +#[component] +pub fn ButtonB<F>( + /// Callback that will be invoked when the button is clicked. + on_click: F, +) -> impl IntoView +where + F: Fn(MouseEvent) + 'static, +{ + view! { + <button + on:click=on_click + > + "Toggle Right" + </button> + } + + // just a note: in an ordinary function ButtonB could take on_click: impl Fn(MouseEvent) + 'static + // and save you from typing out the generic + // the component macro actually expands to define a + // + // struct ButtonBProps<F> where F: Fn(MouseEvent) + 'static { + // on_click: F + // } + // + // this is what allows us to have named props in our component invocation, + // instead of an ordered list of function arguments + // if Rust ever had named function arguments we could drop this requirement +} + +/// Button C is a dummy: it renders a button but doesn't handle +/// its click. Instead, the parent component adds an event listener. +#[component] +pub fn ButtonC() -> impl IntoView { + view! { + <button> + "Toggle Italics" + </button> + } +} + +/// Button D is very similar to Button A, but instead of passing the setter as a prop +/// we get it from the context +#[component] +pub fn ButtonD() -> impl IntoView { + let setter = use_context::<SmallcapsContext>().unwrap().0; + + view! { + <button + on:click=move |_| setter.update(|value| *value = !*value) + > + "Toggle Small Caps" + </button> + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/view/09_component_children.md b/src/view/09_component_children.md new file mode 100644 index 0000000..0da9e64 --- /dev/null +++ b/src/view/09_component_children.md @@ -0,0 +1,229 @@ +# Component Children + +It’s pretty common to want to pass children into a component, just as you can pass +children into an HTML element. For example, imagine I have a `<FancyForm/>` component +that enhances an HTML `<form>`. I need some way to pass all its inputs. + +```rust +view! { + <Form> + <fieldset> + <label> + "Some Input" + <input type="text" name="something"/> + </label> + </fieldset> + <button>"Submit"</button> + </Form> +} +``` + +How can you do this in Leptos? There are basically two ways to pass components to +other components: + +1. **render props**: properties that are functions that return a view +2. the **`children`** prop: a special component property that includes anything + you pass as a child to the component. + +In fact, you’ve already seen these both in action in the [`<Show/>`](/view/06_control_flow.html#show) component: + +```rust +view! { + <Show + // `when` is a normal prop + when=move || value() > 5 + // `fallback` is a "render prop": a function that returns a view + fallback=|| view! { <Small/> } + > + // `<Big/>` (and anything else here) + // will be given to the `children` prop + <Big/> + </Show> +} +``` + +Let’s define a component that takes some children and a render prop. + +```rust +#[component] +pub fn TakesChildren<F, IV>( + /// Takes a function (type F) that returns anything that can be + /// converted into a View (type IV) + render_prop: F, + /// `children` takes the `Children` type + children: Children, +) -> impl IntoView +where + F: Fn() -> IV, + IV: IntoView, +{ + view! { + <h2>"Render Prop"</h2> + {render_prop()} + + <h2>"Children"</h2> + {children()} + } +} +``` + +`render_prop` and `children` are both functions, so we can call them to generate +the appropriate views. `children`, in particular, is an alias for +`Box<dyn FnOnce() -> Fragment>`. (Aren't you glad we named it `Children` instead?) + +> If you need a `Fn` or `FnMut` here because you need to call `children` more than once, +> we also provide `ChildrenFn` and `ChildrenMut` aliases. + +We can use the component like this: + +```rust +view! { + <TakesChildren render_prop=|| view! { <p>"Hi, there!"</p> }> + // these get passed to `children` + "Some text" + <span>"A span"</span> + </TakesChildren> +} +``` + +## Manipulating Children + +The [`Fragment`](https://docs.rs/leptos/latest/leptos/struct.Fragment.html) type is +basically a way of wrapping a `Vec<View>`. You can insert it anywhere into your view. + +But you can also access those inner views directly to manipulate them. For example, here’s +a component that takes its children and turns them into an unordered list. + +```rust +#[component] +pub fn WrapsChildren(children: Children) -> impl IntoView { + // Fragment has `nodes` field that contains a Vec<View> + let children = children() + .nodes + .into_iter() + .map(|child| view! { <li>{child}</li> }) + .collect_view(); + + view! { + <ul>{children}</ul> + } +} +``` + +Calling it like this will create a list: + +```rust +view! { + <WrapsChildren> + "A" + "B" + "C" + </WrapsChildren> +} +``` + +[Click to open CodeSandbox.](https://codesandbox.io/p/sandbox/9-component-children-0-5-m4jwhp?file=%2Fsrc%2Fmain.rs%3A1%2C1) + +<iframe src="https://codesandbox.io/p/sandbox/9-component-children-0-5-m4jwhp?file=%2Fsrc%2Fmain.rs%3A1%2C1" width="100%" height="1000px" style="max-height: 100vh"></iframe> + +<details> +<summary>CodeSandbox Source</summary> + +```rust +use leptos::*; + +// Often, you want to pass some kind of child view to another +// component. There are two basic patterns for doing this: +// - "render props": creating a component prop that takes a function +// that creates a view +// - the `children` prop: a special property that contains content +// passed as the children of a component in your view, not as a +// property + +#[component] +pub fn App() -> impl IntoView { + let (items, set_items) = create_signal(vec![0, 1, 2]); + let render_prop = move || { + // items.with(...) reacts to the value without cloning + // by applying a function. Here, we pass the `len` method + // on a `Vec<_>` directly + let len = move || items.with(Vec::len); + view! { + <p>"Length: " {len}</p> + } + }; + + view! { + // This component just displays the two kinds of children, + // embedding them in some other markup + <TakesChildren + // for component props, you can shorthand + // `render_prop=render_prop` => `render_prop` + // (this doesn't work for HTML element attributes) + render_prop + > + // these look just like the children of an HTML element + <p>"Here's a child."</p> + <p>"Here's another child."</p> + </TakesChildren> + <hr/> + // This component actually iterates over and wraps the children + <WrapsChildren> + <p>"Here's a child."</p> + <p>"Here's another child."</p> + </WrapsChildren> + } +} + +/// Displays a `render_prop` and some children within markup. +#[component] +pub fn TakesChildren<F, IV>( + /// Takes a function (type F) that returns anything that can be + /// converted into a View (type IV) + render_prop: F, + /// `children` takes the `Children` type + /// this is an alias for `Box<dyn FnOnce() -> Fragment>` + /// ... aren't you glad we named it `Children` instead? + children: Children, +) -> impl IntoView +where + F: Fn() -> IV, + IV: IntoView, +{ + view! { + <h1><code>"<TakesChildren/>"</code></h1> + <h2>"Render Prop"</h2> + {render_prop()} + <hr/> + <h2>"Children"</h2> + {children()} + } +} + +/// Wraps each child in an `<li>` and embeds them in a `<ul>`. +#[component] +pub fn WrapsChildren(children: Children) -> impl IntoView { + // children() returns a `Fragment`, which has a + // `nodes` field that contains a Vec<View> + // this means we can iterate over the children + // to create something new! + let children = children() + .nodes + .into_iter() + .map(|child| view! { <li>{child}</li> }) + .collect::<Vec<_>>(); + + view! { + <h1><code>"<WrapsChildren/>"</code></h1> + // wrap our wrapped children in a UL + <ul>{children}</ul> + } +} + +fn main() { + leptos::mount_to_body(App) +} +``` + +</details> +</preview> diff --git a/src/view/README.md b/src/view/README.md new file mode 100644 index 0000000..5ddc6a4 --- /dev/null +++ b/src/view/README.md @@ -0,0 +1,5 @@ +# Building User Interfaces + +This first section will introduce you to the basic tools you need to build a reactive +user interface using Leptos. By the end of this section, you should be able to +build a simple, synchronous application that is rendered in the browser. diff --git a/src/view/builder.md b/src/view/builder.md new file mode 100644 index 0000000..7eb54d1 --- /dev/null +++ b/src/view/builder.md @@ -0,0 +1,98 @@ +# No Macros: The View Builder Syntax + +> If you’re perfectly happy with the `view!` macro syntax described so far, you’re welcome to skip this chapter. The builder syntax described in this section is always available, but never required. + +For one reason or another, many developers would prefer to avoid macros. Perhaps you don’t like the limited `rustfmt` support. (Although, you should check out [`leptosfmt`](https://github.com/bram209/leptosfmt), which is an excellent tool!) Perhaps you worry about the effect of macros on compile time. Perhaps you prefer the aesthetics of pure Rust syntax, or you have trouble context-switching between an HTML-like syntax and your Rust code. Or perhaps you want more flexibility in how you create and manipulate HTML elements than the `view` macro provides. + +If you fall into any of those camps, the builder syntax may be for you. + +The `view` macro expands an HTML-like syntax to a series of Rust functions and method calls. If you’d rather not use the `view` macro, you can simply use that expanded syntax yourself. And it’s actually pretty nice! + +First off, if you want you can even drop the `#[component]` macro: a component is just a setup function that creates your view, so you can define a component as a simple function call: + +```rust +pub fn counter(initial_value: i32, step: u32) -> impl IntoView { } +``` + +Elements are created by calling a function with the same name as the HTML element: + +```rust +p() +``` + +You can add children to the element with [`.child()`](https://docs.rs/leptos/latest/leptos/struct.HtmlElement.html#method.child), which takes a single child or a tuple or array of types that implement [`IntoView`](https://docs.rs/leptos/latest/leptos/trait.IntoView.html). + +```rust +p().child((em().child("Big, "), strong().child("bold "), "text")) +``` + +Attributes are added with [`.attr()`](https://docs.rs/leptos/latest/leptos/struct.HtmlElement.html#method.attr). This can take any of the same types that you could pass as an attribute into the view macro (types that implement [`IntoAttribute`](https://docs.rs/leptos/latest/leptos/trait.IntoAttribute.html)). + +```rust +p().attr("id", "foo").attr("data-count", move || count().to_string()) +``` + +Similarly, the `class:`, `prop:`, and `style:` syntaxes map directly onto [`.class()`](https://docs.rs/leptos/latest/leptos/struct.HtmlElement.html#method.class), [`.prop()`](https://docs.rs/leptos/latest/leptos/struct.HtmlElement.html#method.prop), and [`.style()`](https://docs.rs/leptos/latest/leptos/struct.HtmlElement.html#method.style) methods. + +Event listeners can be added with [`.on()`](https://docs.rs/leptos/latest/leptos/struct.HtmlElement.html#method.on). Typed events found in [`leptos::ev`](https://docs.rs/leptos/latest/leptos/ev/index.html) prevent typos in event names and allow for correct type inference in the callback function. + +```rust +button() + .on(ev::click, move |_| set_count.update(|count| count.clear())) + .child("Clear") +``` + +> Many additional methods can be found in the [`HtmlElement`](https://docs.rs/leptos/latest/leptos/struct.HtmlElement.html#method.child) docs, including some methods that are not directly available in the `view` macro. + +All of this adds up to a very Rusty syntax to build full-featured views, if you prefer this style. + +```rust +/// A simple counter view. +// A component is really just a function call: it runs once to create the DOM and reactive system +pub fn counter(initial_value: i32, step: u32) -> impl IntoView { + let (count, set_count) = create_signal(0); + + div() + .child(( + button() + // typed events found in leptos::ev + // 1) prevent typos in event names + // 2) allow for correct type inference in callbacks + .on(ev::click, move |_| set_count.update(|count| count.clear())) + .child("Clear"), + button() + .on(ev::click, move |_| { + set_count.update(|count| count.decrease()) + }) + .child("-1"), + span().child(("Value: ", move || count.get().value(), "!")), + button() + .on(ev::click, move |_| { + set_count.update(|count| count.increase()) + }) + .child("+1"), + )) +} +``` + +This also has the benefit of being more flexible: because these are all plain Rust functions and methods, it’s easier to use them in things like iterator adapters without any additional “magic”: + +```rust +// take some set of attribute names and values +let attrs: Vec<(&str, AttributeValue)> = todo!(); +// you can use the builder syntax to “spread” these onto the +// element in a way that’s not possible with the view macro +let p = attrs + .into_iter() + .fold(p(), |el, (name, value)| el.attr(name, value)); + +``` + +> ## Performance Note +> +> One caveat: the `view` macro applies significant optimizations in server-side-rendering (SSR) mode to improve HTML rendering performance significantly (think 2-4x faster, depending on the characteristics of any given app). It does this by analyzing your `view` at compile time and converting the static parts into simple HTML strings, rather than expanding them into the builder syntax. +> +> This means two things: +> +> 1. The builder syntax and `view` macro should not be mixed, or should only be mixed very carefully: at least in SSR mode, the output of the `view` should be treated as a “black box” that can’t have additional builder methods applied to it without causing inconsistencies. +> 2. Using the builder syntax will result in less-than-optimal SSR performance. It won’t be slow, by any means (and it’s worth running your own benchmarks in any case), just slower than the `view`-optimized version. diff --git a/video/async.mov b/video/async.mov new file mode 100644 index 0000000000000000000000000000000000000000..51eae74e1b61e7819ebe1ca583c8cec7b4ca2cc8 GIT binary patch literal 210450 zcmeF%Q*b6t_$cr<wryv_jkB?B+umej+qS*2ZQHi9v27>s`TnQQ<vEw<E?rYKRXuYt z_3NIeXZm>n006p~le?Y06EQL1zxIF5(5}BtOaWjp0@fymPXE*Y-M$6B1-=Eo1-=Eo z1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo z1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo1-=Eo z1-=Eo1-=Eo1^&MZ5JE!WimOR&>c|N5CtVMr@XQI9f&eEcfuMla3=Ka3fa;l|l^6<` z=61*eYAyps&V6ICikbwCebFih#D>g0E;c&?PjE8kj&m$1PPO@6aT*Z1aWv5p?G4eR zU%xjhOY7&98gi50+H)9|>wL!K2Vk~`{Q<j_e?tnQqK6En6w(&3)|`9$1_q*FH<a?) z8Bz)byA)CN+3I|`8fE$;7<)`I_kEp(1cAPuw+F3q&7;k`+bhy1yS}Pm_Re1v7}W$K z>&guAiIQqHqB@4NY-}$bM=Dz%<^?mv*C;{e;0cs>w?r0#2m#UATKKYEu<?b3wAmtv z_0Yg5hwLc7s<a>%Fj9R1I$xYmaA#WUD!$<lRv;@(Ydfkvy=&tyn_?&PM*JxVDYnSW zZ)(0P;TE3-04A}!`dq!yH)ek3*km8+on`F4f(hR*A_;J-_^|N1)lCPMhr1F&vHLAQ z<2LMh5=D=DKn)z#K^4H*(;HcM@CdaQT1}xK-#-eMQA}A;Os3;Z!^bmBta+6XckIUf zUTNS```{7{xu>J^QS9-H(bjWAkDF8>fJTzb1xQf~0&ijY)#nMuiUIwtjv&nW`M)FC zSz%Vq%M|Q{S#(f{jr$vtN7X4O6t#YRvPqVsnaI<F>rI!2rMOB2egOb%3W{o=^ORS= zpTpS&5deUyX2Sve9dS7`xtAw*27CK5b1e5<RH{F?Zmxcv|CVA6w3C`HiK!6GmMpZK z&|SdlT{2O*@tex`7~Jd^)Okym4&|qCE{pyS{+p>+bjPh7Mo6CQK*~h7XZ6D8-(Its zIM@~b`P@Pi<de9XUtmeN&^Ws>Ip<jgOT&x)@9S{ekR&Dw`u<dvBBE(7#H%Yss4E`a zW1PAF(HTGf9((QAWt>DZJX>_$%EJ?yCW9mSi4drbmZ9Kkk1!xhjH2b^Dp!T*8UrJZ z>@BN|aXZAe+ioi{nP+mF5$ee{*Y<9%N$-jw(8RgTG%x7V{TFc)(w(IEMZ%9|;}+Eb z`yTU&SK(dA*B&X$c<q~b0K|(_6T0V9F(&H(2#)R6AK9xKIq0|AJK_5gC_iI|Dmt+G zq^gg4uKQgT%QWJ%vP-yeY-XYbSDsV=zhK1Ur7i@Mkbi1=lWz1#oTNOnN_DmWoEm2X zx~oQDZN>$+x8^k1K{hS;64J{@WX&b9Zf7D<+D}F!C1Vovg6EKCGezE^R&Sx7_~t7k zhwH~O{k!*t(#r-3p!8>R^ztIJ<nOA3l>MB83T!$GbYtyth-%TPI+_<QM^{w#$okKa zE>dA3bq4d!c0#NKd-{g}T+NntF9Wd7sw7SWE?c1pyQlXh$yiR^266O47rO}Zwn5>v zpxTZ{h=V2zY+?Ak4rxp?cWubqv}#In^y6H|xjP$U0*#$VIUG&QbergAs;uI8+k2;- zQa#krka0^NY7E@!*!WBJ%gv{H0={)~+My4nO5Dt<LQea=8gZKQ72-r{S!!XpJqca$ z2Yy9=>DE}mv<y&0%Lqt<7k=#-pVa4Gg&6AUdN9a8Tc*x$sABWBA^G<{MiX1|cR#k2 zJ$-4&c@R~qi?ZeL_x|=3+lEVoKA*wg6)<W4T%L!?Vi8%F^z_b|B6_Cnwi=A+j!8h- zXsF3~7~Gd!=7TWPi%u8=LK6K2eNFXvvw>$n5Yne}u)xY2H1<KML=d>xz0LngdBa=| z(pjV+6>(=>>6^x;d}o&btek^+Aw3&gop27eHSifRcfx>q#?NsVa39L2@x?efE-glU zV|{&2h?-#7`I<%P%GAc@rW;yuL43QlOmpFJKFN}pT|0oG6R0|e#L{#S?Rwb1&89~I zI*@#3+`&d-$ysDW_1h`@Eir8-U2dyZkS5FQh(G#5&{%V9?^76p4G&vF&Rsf0@Gm0F zF!YA3)WM~3z(1c#`I1;hM(@m&07rXsyA&$%bh@<CpC3)6knx-gds;AL&xg9Q$^nEs zk7g$&O{;FWs@{9@X40}PhrT$vAR<?fF2dMOV&Em$CF0<Eynj@Xiv=fhfK8UjJn^fr zs6v&I;d~%p?SdU*){4$HAZvTr03lA?L!aHfU@=vlWa^3sj=1x|3Vg~|>5jJb+4ymk zn#k#E@P1*{^u+!VE*orGhct)s2UyjhK4T(LK?t&XO^@7tlbeXe_od8pr$4>su1eby zCQ;hu`;gKgmPJ9NMl?&(on(NA&?qD@AemI%4Dwn&uTtSg7<fP_0dN}vlRLN6VtZp( zm|K<BJ+`9P4b*y@eX#|$s#6|6n$!UW8QO!G)qo`Hn$s|F$w`+}$B%rR^*Jzqw~UK5 zV_Zozpc|&<7eN6SuEQUGj%ecSOj>at!~NE(bjI3wZCHi_Rq_XZl}NZK(ypS`y=D-I zcpqWVTWqcR{C}cuIs45@T&U7cqf@tmcvcMp><-PH*f1m$(1MS}gv%k`t;^wq3pGVl zcgWfHecsZCQr$a?Tp&R6aN=wbbQA6&;Pt{+gjm#7;0xHbdKG9>2TyB50ds;ya63D` z%)a|Oh$XajYg}26h@t0goI<1Z(}acNb+cK})W6mdwzYIL;sznU6iS3?_{RVe|5#w! z;jHmADormY<lC1F_+%Xol3BO$tK#!~dsFtPTMxtjqV`o~JYB-|zAWt)XMF3k3yk4L zb7j)6M21tZS&E;~u|XE7PiT2vst4_#aVbD@szi;SDbH<Ep8-7CvY<snZEWtSots!f zlY4FV!w?h{8%%<5pjD<3hS3(fA-4R%J~n0v1V_S}2Cxn`5KI-+(U8x}N`*xurKF-E zF(7^07C%_16@L<}Ep1%fDGcCGdEb^t0iV55UIg)uS=SW!@etc}ZZuR%e~Sh&2SRT! z(fk!F1-)odia~6C;OSN9^|bQmn?+aqq12zEO`5%?`rdtSX_zE%%)l)hoKkm)OLe^K z5>opjh#|FE`Q8*k`|KES_{hk7b@}8GHb<kpl26J`u}d_^Ny#v)0(t3#Yn6d+Xz<KN zU(Y~%ivszVjkwW?Cy7;WSKYR&&UywFEal(6)po1yf}n^%2dRdLZ!qy#%|7EKB8W3z zsVp8y`rp{V-)1Ni1KbWI#S!@kB>uQhp099MlNLQieG0Lj^CZWffnzO|Z2=PU!cQAU zZfv(2QZ-p$x?N;$s0`t`RPNF}%>KhSzOn9|kQaXooCqN$p95GbPFPiVc-#e4vxwmv z^1tFu2P)`kjv(~Qn>aNu9Jn+*Df4LoTK4Z6I@ea)0X`nMYQkzoAwnu*yPz?`4$>9E zli{;U;WVrZ3kQ11K1~OmS0aYnpqiiMN*xp6Ro)8qV|}4>35jUbr-t>fmEvjQ#4+{f ztOgkRbFI>a<9W%|o_d%v1`P89u?t3DduAEA<}|?*9c7(qY+62CKU+_%@NIZSv;?+D z6cy5Yqqd`y>XmE@$O(Tg{w}Cr?IT<<<Y9&RNL7D@V(y+DO9^n+z*8%`YT!&@i}sj- z-Plc#<m2l6xY(9FmQWNH!1!27RMK)+2TuG(T;(p!#XGI_7i4|A1G{9#?upo?xJMCT zxUY4h$9b*vmf;tv(yn7#2kKyOX_wJ?g2rWK8o52#?&ecf{Bqe~R8{i?53}}45LTb4 z9&HER6;m#dz$iO=^&04Q*%|+|rv3FfWuKpt;Cc(Qk#Bvx)-mMpgUEU5bi^xL1L9Y> z``h{95gSu7Zl!#W4XiZ95RrR-p592=dkc1DOkkj3sOi&#yFI_KbMr8YH<%RG-G1*v zd)^t8oed#}I2*fZELzPfJ&+RP<@gNPyWUrny*naJggoq;vQ`SiBqK^jTD`l?OC`Si zD>@hAP$jcXrlpI=F!p*|@u~}~Op=u)cMLoImdt92K&rt(I`9)b1&nQOUzS?yN6T}N zih+a}V$s~_`X0!{5gH)H$8s6<f-7h@%OH8y{@2KCwq=68obi2|xHW>rc=L*&@*#Fj zq7g%}3p|9vI_{zDJ92`PY|&C3A^tw&lX4aaz6^*;jT3a^iI!|K3l#cuNnes}&Egup zOS`uG{;3^Wy-UBqnukA03+op>Zip>`q)-)E!R&~29}Z59$E!&7SVXOjOXrOX&6VFi zMc?+#@{57s5C+IASxTu@=aN0k*AYda5{znHnw$C{tm-a-RZ3uPOb&P0W#mudx1({1 z7b5Q{xcXe7!;<YmpV)iN5-UECIE7TJT(oy-T7R`KMn{}cMqxcHTdViBt|}IC+`t;Y zQlukgkHEit%!GTJ8$3T4IKl%A&5b>O$9{#!sY0i879k2Q7s*`ffkf{^u#csxznw-X zNtoAl?o8wpSf2PVuN5$X88s~S{DQgC9o8vS0EK=n_E|^ZpXW9(BKm^8L-iZNcI`^b z5q@`Ic?*{n74<rVlRddE3<p<Q)v?)zUn@Tl#7P6NNn)>$-YEp1lGf>?n9~?z=MEzO znHXp)<#`rhggP~FtAQhf)$9;6r!Xjr&XCn9zYH5cIj)@UxqP(1bZ^l;V9MD+w|l50 zu0kgiCQl8Jr-tF^^2?YP3$HfM+{}n+lc;?Y2(s$m9>#v=@WC^AL$c(KH4U+yx+!m4 z*;`kqA+)-w+%s(tAq)Mi3Be#~0=|+~@Q$pE7cN@)A<5{(SPrdo4`(C{z#+%&oOR*o zD@H$TJbnzr`r0iz>%%cLylB#&H_%R6=pTOd*=$O3^J7-+Cx1k9o9?V6)I{v+E+8tu zs>PA^zK?v#ROF#MDuz)B%Z*k!8j4nyOs(fKX?pZ$nXnsW<x6{+{Ya|srSQYnB)jJ@ z`}=c@8E?I*3~QUjnj@RqT8pH|O<vYV!~$KDf4(#C+IouGmBl_Xh>ZKya^C=(4`}u5 z?m?=LqZ;5qmaKeMdREQ#Kq}Ul>W?rl!A&B@Z5c{O0FUPvUbwD1x`m=4zB540Ju2fz zb+TXE#9N-4z`QiHE9=xatQ+I2F2n9;_ZLu~y6SKuq2)E_!tbl3m~oz$K!~@gaG?{Q zq}@>S_v07vJ+;7C#E9fs63m^_;&k980b^&)v~u-0ND_FK4kCc9jtSwE^@`AtnjMVs zengy-RRRWg=9)@Im3jDf6>g6bJVzHY4rW7Iv|e|NLztZFd?-lw$2`ev@;ZPEIkIpo z@fx&+Lbd*yEUBw4>Vt>R@64Ig2Ds0^J~Mc&fDJX5>^5-&kp>sP#9)^}7KY+FqDJ}~ zc0V6^FRQ#tJ{X(>6<7Tr&yR${$w<W=`8;KcpSFql;L3QcsO5?BicA*LxLbaZ2<t8c zOX<fYoC6~Zyu+LhqRkj}jhlmI4X6<BY`C_s&{IhqSU}JO(P)9YG|(at#gxeymJMc; zX$d^_x`ImBy5|cVIlEFA$7~&q?^dy99&uNCNhaN<$|iZsL~L0Q#&E5njdx|&%bDsA z{W~3cJ^!bB)%*Bbm67xsh`IS}hs}@|8MU5Wdv(6jBL#;r78f6x+%t_r(?ZV@Jn`mL zkA7AJO+P11=kM(}Jx@b1RmiiCh^V7BM*J%htTF!36#m{RhmDKhv@v*Ef0J2qzo_&O z{o&|Pqi(Jb8oH@e7juZIE!1vAfXl#JGx3kul|f>?Fd#$VAlGc?(<5bUp_ni4*FV~i z#V}+y+SF{%&jrTUJ>}E$gKU2hINKs{!`as)EDK-vZS@`Zy-Zu`<mi8(wMwpSVvpUB z&?vVJ_l(6w8;t+Fwg&VovN)rPAsq|1D}&!o)`In>8_J*CM@W^hjq(sqA$<E#-uz?X z=YpNc1+8XBmEv#u$2$-0?kd-1$ay~ek)T$>^4@i`3$Ice{Xgr|<@~sm4DolWy!k$| zz!jZ2__@t;ufdW8YsVPXYOJ2qfG~{r4JbLpm4AvSt~9mk$7w>zYqf^Zk}7xC2|ahI z9uUJIT=Wzfmq1C&A*2SBfi#eVAoXD$`u3eBlM;IS<YZ2Z-Mhr8*c4G~(lA)nJx`_^ zZuNeEl=N2~A_&-2rGCL7ZN@E(xz!VY1Ar%qi3!NWZ#lIO3pd*^tNZ4m9N-<?00006 z_yA{t<X-?H$^Y&#;VvquXN^cLg#=t<-rY}JU%$%Niq^c$@w={xUgi7=kS55=bmXH= zS&-Yk@?Z*MVAEzVbs;O<kJ@8?lELXX(6f-!_dC_;Pt-4ilYsuGE&V_Xnz*Z;iWhab zZxa^eE{?JBV*5em<8ypDVQ9J)Yg3n_Gn5~DO}5KOnmrh<Rg)d;1Kroc@4xLE6t4O| zPe+c<e>Bw;f#OVypQp>w-6rr)8>vwS`Mq{*0~)!{{D^C6y7c<!Re++1ne1c|a#31z zlu1z}>xxhH=q;p$EEgUhg(#E&X0bL8y?3C;gP)rQF>#sbg*R~ibAS5x0NjQa2l=T1 z?d4sLc=a(6GM*I>OnLOv8C@qe_Q;<(Cx?hQ<wAJ|Jnlnoo(LQ3NN+>byTKQwpuxHv z_!62UKkyu1orc>JX$sP%s1rky0G`d7W^>M!_FxOQHazl-fcnlG9EwTBYP+ug%+>rm zoq_c*84<z`RtxN%C-|=Zq|Yy?OGL`gYNS7q3!^y<>F$y@&m~GRS^tip0JWZ`y%p?l zE1eP-(XRn7tMb&gk}=fvo<p)CE`zTXa9|)#ml|p+s<+ooV)szBtLcRNNsd2HT)TLX zYK$dE4`%jMO%($Hmi{j%m~j!gKS2qbKfIvaZwzV(gn2w<dOkQVc^dwXy2}>MK2Huk zsGK~8Q@J60$!`<suUML5II3^I%TdUetFfZCvC8)v7u^XzCSh8mSQ3-@40aAg6;-?H z9aca+ChU9tEG+4ow@zM(T+Y#K*p-b{;$(1a5L*O^4GM@#Mq_rfI&4_EubyvD4n)Dz z0KeohV*Ffzncl&8DC6)wpC#%oKY&D-2n+8Y0_}3BelE|yY@`2)#NN3VaZlT3ho=;q zAc(T{O0Eu7Q7Rh=-6HMgi8;w|f%Ex9x-*k+kCjP$A&ilq1ZAkrNyhZd=cM3xTmFFF z=t}^5?I`i5Mg!w>gDrHxOx6+XQ{e?fz8)5q0`lk6<y(WBF6T%YY;P-ZwRqQ9WJ(1r z`3P)!-|=CDsrHmlbE+qWSCG#d3U%V+f*C)-Ml^?cZK3+|-Tuc-Qlw(<(Fqi?3v5+m z6LU;3G>SJ!`c1PTT_%?gv8|GSZ(AUxqz9nKiYM=PfUFQ2(kfKXkE#9+xIN=%frnrT z;i#X1z_$Wx4|v}Z{V@au;T{wA(LyvM11i#2Y+9qF)^Iu8B-yacQ`=250H?e@MxL1d z4;T#z5>gYY_f{~s_Ybt;)0EfgUl2Aq>M$}k1~e`sjDV77t4io#3O@X{n8NxFtgqdi zx489^;pV5}9qo#eFOk}KyQ0*OAkHc`+FIRmFJgJ3qj~J&dvZRJsZ`*!>kvr?SvuHR z5f=IpyY2RIol*3Z`*s6V(J(%D6aNL{$bKNOclNDU#S|?*2<j~&jb+2G!F`mnMhIUv z0jjwd6OUr}dXvG-^F+fa^aFlkA=qtp3Ba09ss~jHxEPvUE7a_;If9PhUeu(1)y1qe z+kPJL5EYFm&nL=QDQ;#_I@<{Oq?qAXy^XuC(Qy7(liESmj}v<N5Oo2hI~lRKR4N3q z&On&a0Qy#PqKSbEmBN~aorl@!A;65HXLYSrFgm&+VlEmUCr>X*On}r26XG1njMvgB z!N&bmQ9k2fmUHAIEE%k1Hw}R7k`;#Gh_sH`%55_-*TzAQFW+C+7I4wQS#DUi7nKQ} zC`(OLQ`jKw*!?ejg4JIt)YhGi2+7A$p^vtY=~z5v9dKdK+*bHhcmMg&XAOJMxeMNx z?z=scClUyk6nCkFta|KW`#L^$V3kJv!hNS!)at*)jr}7F*uRp_?{Fh=a=(b!xB8)| z9`2Z1^CtX?^f$q;E1I@Zv>rwJd~3tE@ksg(>JmK1WiWgfKC$Iq?G)P=GX@11(^Y!I zXz=UT7}_O|>HtZDkwlQhV8MrQF!mmeO8iBG5!@66FlK4neR_%=4Qy-+n_;(;Q}%;$ z<+|(yeo!Iff+5MiU}r4OK|6`~Prt1TZQf-9oQK@~vNSaW9!?=Ct$LrWo*(vhBy6WJ zj^6pN(OCcCG!<y-$#YU_kDY=KCXK<>S+;6RFd;2g%Bv(dmR@1n_XmTme9z~!Zj}o9 zsPX$<%zi8VpuoYWs;Pe@4FxT@Dic0z{n@?vBc_6BWQKXoRP(14B*ioN?4zA!(d+a! zk+8x42(|M})g52z+@7d`*~n!S4q*s;7owNAG;&PWDW4CWMat$tlt=D6$>`xmbh~A; zXEwZUQv>Lak7keGIUNWEFnWjHu9CMdWHIlknriZvnf%2g7cN_6zT5J<ng*_S7f?4D z)&6IB``P^vwF_CW@rwd>sK?4aw0s-o&oCF}dTA409KMhb-3>;5Jgg(jU4IK@RP$*W z6S=Si?O4?QVT3&~xfquIp8cJG#{}1=fuqQTiB|vx4Xcsd2-zUYwNe&s^3vF*l})8{ z?*N;`HVb-{eu1*YKa$z#0n_t%C6BZMqw#)b<k9(NY6X$X*9#sNtgy=*i3TG}g+Q|X zWi%I2uONv>Wa2GOM+98KV4b@8L^_r>jiZJ&!FJXYZ~0|caS_kAXxWdVInM5)?gv={ zZglZRd04p6^9!B|n39GS|6cFOliclbunKaNvd-n(eh$DtNwxbUQODb{_oB2I3W56Y z@?d?_4Bn-*W{g=m>i0;987!aX1hCJOL&_sb%ixvszRn1O^_XEIXQqo<Czfx-i;VYO zIy<rZ7`Sykj@Slt)#nRI-zyL2TC%#7(Y9mbZ&!CBPya=X+@HDG|13~9a{*x(3*Z|_ zlKg79{kQJDRJNgR1w0LV#WDWcw?%5alH%Fk0NHqop573cUxOk3b-yE%0GbumVIg+{ z{=0I})7;wQCTYPwDzokk2r5wDv};esuSR}4(}rp7hTg?VZZW+%(OYF;{|C_y>8D6G zxiReSv}Uw_p_0a=zo{wLIK4FeCWc9F>T(q;Vi@G((7#+A2=V4X31~P0Z|+nmJ5V2H zA#|fds!)GIUCOEJGg|zQ9~`wJ;iIipc;{_jNL#tBeg1<A4PH17zvFHklK4(S%bvZK zN?sn3&=6{rEShE>X*YmAcPQ)VBq0U|PyH^fHJK6Sjs2St?8S=0Ldn1fN1V(}{r3Ho ziL5NV=yv66-=zcAxjpzFCqo%zJewc27h|KaadX@Fwo>B`bS382{@p$6e8^^v688vG zaiASBh`pfZBo#y-xA~q|m<1TUjK<vSxq8%K*EQVa9xbRGBfln>bRI`mNV5`J17f}= z7f#;|b{^c*%Suom1z6K4$pmGHR2RoUX{}#eyrwSa_<wPXp4C<gjVYz%;?J|r>$K0k zw{w{e7j_qZIVomVmTI~C9gMyz>TikNK-<R=$ZRZK`YLf@<~#|pbm-I%n8YJnMS~~@ zg+cHXDX`Q$=sj6mxX0pmZ+}`HzN>S4{~H<u?*^3y6K7)jbyK6i@fP2{V_(*N+NePt zs0C@K?KCB|W7pA_N23PMR!Tlu0)+v{O>4c)VT48y+nL65z|+$-mi|!1mJHooCu@Mx zDs=jC6BDr4QK-G)PPTjNi#Xq{Wp}F7;kO}>_D<fndDyzr)1r8irhH>`{{vgvZA16# z40(|JfZ2ZqbR)H-rmb`KsxQReNWZPRbmbH?npN&&f|N1Kw9*^Kp}DE0^5l1hAQvGQ zJjLdGH6sc|93}9qpx8O8vkY|$iNIV%2S4Ch*9nOiSoT;!?4u1q>|0VzqcM<zCiA0k zm!Ik?aS>QfvBSqok17(N)W@n>&aQx+_lxkIA&UlNs3xz*xRLyN2{KM9Le&2ur2OHM z_H@drxw`jlN!;+6Yrqtr0yES<2;P4n;Y0Mg5X0LZRmkrFe}6F6kc%fOnsBxUrU?xs zg63$x`eP&OJSe<?PrpTZ@kLruroNvc?T<J0;sQAHFIzdz{Ma*q`)r@5($=jFSLt;l z@u|G^m^@4{olNb=e1gKc>Eb;7ow70L+Kz<-FJ33|E1qIwX-{7kJ+A3Wd-a`QW94u} zCD(HlRR(++?A2>w9EsFjeKxbIMCdXm9Q0oJzoz?&r69s7F#bt$G<aRvjuzLiTRRDp zsj7<_3@UJxTmrD|{S4X>WKI1kn5-qNb!L=tZmq~}H@CQCwXY<hFbXyuL;kE-%N6A# zDc>KoO301v%{`dxc~Vh-eGohf6%YP$rl|<`$?7XDay!OpfYs>yJB)R=Y2NY?31_H- zMdx~q;Qg%Q@h}ki-8x}A(O7WI!nb24t+T2<6lFof?yX0qsUjN1CQNOv9`|05NOVmP zp=3U+0_kChU{h0(q{P|rXcjn^w}20PUeQ9F*`Y02(#a7}326^X_bg@Q4ly}kVof2b z)FHXoj30J4dI=W6=&=aK60^{)w+X5HgUa74K;am_6|Z!TM&JD)*^J4Q$1^mZX}ahi z8fd<cyV<dNG+6IRL<X=Zub^b;Mh*a*bPhB#cw}$t%+U|3$~!;y;qRl=9*|jwvu|oT zeHHT>Y&3GvVSVu5&2O)GgDl8SaeTw^n48~|EN|vl@AbXl#PZq8bAo#{9RDQ%zGEg{ zur{E!i6?z>BjpK|ur)DAXig=O{!=6h5sNdAEuC8ukHTw>YW!H<sli?7q}MC=*)fMM zQp`~oh=$Z_C7=T@tnN@P%^NktGLK{km!-Yc=RpncxWHGx%0O|7U(=O(R?Xs;*!PG3 z%OvL<G@_qP6;V0rPG2Mm?AKWXtv~F=KmJB+bK+HNR!Xrfw1pOHooQxvwTyQ&C++9n zLVmEgFJ@iQ?Z8x{xS;fi#asF*5wUTNSJ}i}w93x8+7$<l0Q0(Hwx^J0D_7*?kyc8< zmqrh4BqV1%ec(!0mjbGF$4q#}VIf?IrlHiNnvAUXe@VsxQ&6NB2BJfj*d!DT@X0{? zOji<=_G7cZWJGKx9l2B=xJGc?%Cx(mMm}({*7#mix5NgUOULa87B;=P0JINFPc|rD zeZ)nUd2}a!ID}M?h--o9Wewgd99z4ZR9)f_Tg-W4;T3)L=Z7I$_4aM0I0uBhyHiaJ zv{E{4M<^=7zxAWwY(z+tgVY5B8>E)@7k<yO9ITocS3zG>sTqK`D`RmI<SSGRs7+aA z#|AgYbjVh5LJ^dZS|3FG0;&b&=H0Sgr_l=-f8bN694d-Y7bfCL*@bBI;IWkKcu1Z` zp$>u>R&QTt&&bMhCx#mIGt(Dx(CXxCJ<Sv@lAl5B5|pm6jFy5V7Fap%(~Ti3*B$<^ zVZ%TAU}@|SKaa?^OnvoMuc_n;k$Ff8w!(v6T!kiIvx4pMe;k&^I3k|#GW%S}ExH|O zzVsHzm}mX?fY5r4x**SfCmYhuNISmzd%PoD=(DtVXa@^QC_2pmouMfI4!LU$F5VvM zF?)tbWGM@j2hFD*^4z}8xJw({2S8KCkQ4ct?c`?61l44d9)9o^5F|-RRD5*1@ib6I z{Xw$C=|5cUw$x6^#!1vY1v$t4P3hZs@iZyfwH-~Wj+70ziT@E_er~T1nw5Q0eXbuz zzr7T|?YgwU;^~i;USep{ic48(qj{y1KFR{6NXIJw_5_@MM&sy1u=zK0VwNm69$4(3 zVnpwHpv(1)fQ*zd`xmBMmZswC#H8db-^x2shXbw_YIE6m@xn(WQxt1~ur7r;ha9xp zk~w(&Fc-0<-+I$L-Q`5n-KA<EEp(x=XkZwl@Zc&n!4;GIt#O&FYXStmj73LXWqG#g z#~X?6KUxYzb#9AX&vM@nT~33CcSqAzqP*&-bzey&q^cWM(Np!Q_mKV*@PZ#2&$lTz zad$NlaIsNqG@7n^snidv3zC&R8u-+yFZynMUGb&5ap<SJ>UqyXu|_SGmQ7JOH1aQx z@r?&mA8#2gxu)<C^w_B^pV(gWBF-RFiE{maU)bs%O5Un!$pcw095WjNiMjC$KV%Ds zEe<18eiJqcNUpl)Iy8pY`h0n)szF^`!7@iC_<S_MIMG)f?-i-PJ#1`sK&<+qt^k3s zA+k=}-sIZ~NqQra-VegS&nvPTqFG*#aW&QuIbORVn0p>4eu$qZ+(wDciR4Rq;tJev zn?^QVL{2g~YU3EkyL^{_u4}a0q}E;G#XNpTfZC^nS%x&7K&zh0HK#fO{}q(5TEVIT zrUH^K%C!qhCTNJ97Zeg{AzTA+m!!h>?w%7_S(R2aqtza;q8#yc+fb=_`~p__;|Ft7 zjD|vrN9Qy;@i;|LUq={^1iY<sL4|Rju6}-X>{aE!5$@ezFQAp^W9Ut(1Sw*<fYciz z7N?7*RVSvK7j-#yM`N0^kFH7JkGKSb^Fk><9ZS@oUvqqn<dc~B0*e}vieYxPdGue{ z{*EhD{6(7qaVPI%Sh<BfI)H)kKq8`Kcyd()KIlpbg<EDXcaEGh(3qcaN1+sr<33<L zM}O>)3WwYgm-HMW5>_p+jJL`rSaJ}n`vDpOt`(g9WU0lJ7Io^@1mSm>zet;WIj;?4 zLdaPBo2l&inBax}5{BABn2!J@=J_t!EHX~i?MkMtNgzFPy6s2^(Le`cz_K{K`eGj< zrvJU(Tc_3(L{YZ&kG!b!2HHG0b~cW!bpltlP#7SMdw=`n&@}8pwb2{D8x964`nKRD zgzr^dXX9@8&HuyqYh8s&iUnz7IV}tNTM>OqCq*x?slP6_WsXK3YKrlacqWzDdS2(t z8D-0Mbb%AFvXu4)7~b$bbY3&?f=N?;ti6As6;Z8d)whMq%AKlGK79RW6Jdc3Pun{O z!f&#{>`xr8FC6wumTE2`l)u>8j%+S#C1HNgpk``Q_bEC|-zK&-6Kjz&XTBp2$_W?j zUU%~NLPgLzF#TMP4s$}zq{IZ0oX{FR_!i9H@+2pXHPl-@-<SU&I`}lD&%iCCQ^+Z) zk~Rf$2Y~%bbwG6a2k~LPZA{)Vunoh-Jx-`a%*sEzJhb8rTs9m7B*Po>FIIm#6+ZA7 zeZ7wMSf~6heQI&{v%4u@u^J5D=*N$baq~EJfa0|^>-v9brQp5`DV?W|u}euMW#T%s z$BI?8bgz9geQuHw0x`E1KOz-hI#vmd=<(efz3@^TLy_@~$&)aGD8cJwv747uZ*PNK zrH0}E$~!zrd*_<SpVD{~*$*nO&>oFV3KKyqCD$j<iod>!qlaOPOizhsFv-h<ZH@5Z zHzwLL{pv>KXg8+!nmo;44~q~<r{~Zk4;Jlk`lHt6g-S%in%+qI9qF~9Or+NeTYxWF zMfFN&(wP&UUPF!-lH}G&H>|qG9}63Pt@TzDM>Nu%55NtiAN3-39oZ1}h0T&w2G_tx zJKxW~@}iZ*7S#6f=Nx7W*K;8cP?Z9#Y#FyI&=)p&Ft^`udiy%L*1H%zy;u+b6l&n} z=B$6~*TRO{p5HL?OD#6)DW;dmdMvDFxUw`!)r%aEcZtGHf}))|{A92mo8IOeNd?b{ zov6`VVTl58?Whw7uLfmaA>Qv31&swL_RH#8cd5yqqp=4n<g*?aaL8Y=G{4A_oe=-e zuI+yZbYs{!A#`Nd`+6}O_T4RMMA_+t>Hoe40TB&s27sjO00>e5;GcdVVE{nB0pRxz zK-~bKEdcoME@uHi831tR2eJeJaRGpS0HDGEh<*SHVt}C^$PWP6A^?^OKnMWn_<=|O zz&`*ewE)Rp5N-ejJOI@IU;+S113>x#u>1h-0FYq-v;=^r7cc>UAkaYa*kLDPNyuqK z91j4Wmg{K+e!27&zS#~l%fgWXW9($eWBASXo@XRw%O7yE9!y=eH?wGz{;O&P12K;q zUc2d*;;g*fk5+!4p$Ori{6(}FZr_Ryr9zJJKmh~*p#GBVLW=+^*Qud`DSQ<&V=V|t z#eaEZ+@bHuq1WVd7jq{E5A+g!wMQvVi2DC!m+dCZsC(>a!@1HtwG2WTx$2HYcXIQO z%g6k&+^2_vN(0R%OgG_Yc3Q+3or$3ILxyG4Hqe>ml{09aQb*g)YI(-`VbNx+@p&4H zP0l>Yckv#6LP#NE9J8spNqw_<iFtx|Ru{eI1v|JV^I{t4<&<s-i`%H~ej*+|&S*NW zuk3k;em<h3R8w`QV1MC=*At+MA7(o@NJz=}S6*gW3d2R8P^Z}ECv17M>v2zxzE-*7 z-6v@!t7IU@pL%XD{UgFOS&dz1|Nj1Im8QFY^8rr*RXy5h`bFTH`VPHNj7==*e~Ou7 zAbkqf?~EKMsH&{KjHpI3*k_FRi_(b~jHvs0V}tCN3-l1ZV2OuvuywmVIE)HFU|%@D zV3&g*1x-UMIN<XgnhR9&{y9quDm9s9XqC-W&vB8EGx;2Ez(5S&ypS#D1-(Mec7|UZ z!4@>D3^h~r_x9gf3g4#iu=sp@`ddp=<V1$#M3&QbOBLb#r9~?{cg*V#S!Uj5o@-cS za1x(gCioQ}R#<s=J7r}jQ8cRj4jpTcxwI4hWTL4T@G8zk<U5KGG-65Vyc~OQ)|tFs zX$XyIQ0{S$sj4)?l8quOBn84f`+^OIlu6#8_iMTL;0@UU#{{8%JQ5FzfzbJhm%qFk zog@Vgat3$3bR%b8JEzCIdBP>MFV;@K6kIcAOiN3x4h`u~7C*V{Oq@kC9wQhRXkP!M z5ETeAJGa+f6(UVRz4b(gqwq=;2{{&Pi>um7v5LXL+|skdBPE6@skl<wZqqYR0OUmL zY#_C%h_6&?AO|f{cWj>JUAKDsbR0iej3iP#DvXY5WAOuW1OXDeN<F~&eNxdh@J5@p z#F_!FoVYj633W!{GdPsvK584Owwm){v|HfT`QHRd!1+N+&<tE7$P)uro58{zoGf;F znK#{s<yiDOq!P*g`ATE8E@I!ku+XZLwZU|;*#d<LnDM-lK>gX%or$%QXlG;s%=Pw- zUPwmiHXtX7O6%nrX-K?Sab6vy<VGKwz~PUYVd4_^sSy`OFXoFFgJ5^y$YARMJ4YsS zXYXxG;FpX+%N)@WF$JfZb1FZNS_9;X(3E4g3|3S1RgH0A<-$|)F~0n&8oV_xPrBW& zs?;$k+9doedz?ujP=iV@M+^pltv}r#2p8M&;CYVh2J`bih$w;@-dcZ(Pr__nrEFS9 z{-w*xD=i_YV{bug-_92&ZHx2Unw9NY!HaEJ?@k<-{uB<9F;kV5qQ)lbF6kj69?<8Q zxckVmkH{*sCy_Z)5M7><SSJi_V-xM7YN*qqAVHXI+emsFw%U4rshcqErIaBezbL(! z1JPFq(Zk5zk^^QhW#7M|?cm!oJwJbg5LjYT6x`){i)1(JY({)Sq*iCA7Y<6l&Iv63 z_?0<{TPwPWcUN;vE6KS|UOkFhkkb}N=CwH5O;#ps?uxf!5Y-?0p<lllwrzY=0>=2^ ztQCY)KEa>Z3MI48(|B_xWS3P!X|}_=(wJeWQP%QK3tlNaIK$NZm*zw*D5X!rP|(~* zvmkkq04|X#9wv!S{ooF4rQ6esamz^`B6!}R^i7hfj9bL#Dith|loiVUG$hw*E0oVV zvKG~FWbC(0!WxW{QJ#~3?2*is#lPzdCTT|bz}on*dQ3vB!9h;PkIoCug3)Rw=T2N} zL;2jQ1eNpa(YpEq$d_6TIFuu>MekwdWQjb4WK?q9Oy^L}pCnae`nXk#(S%+nvEh)% z6uq@Fm_%YK(lA8VnX4*hS1qfW#DJ99ba*H*Fbh`!58(M}M*vH$lQXT$iYhe}*(XRu zHnD_AzZ_k>*91-t2*9pd*Eol}pCnBxls2AqEmWCYzuW-%#DQ^|F^glBAp7#FR%m~! zz|HL>BFMTv$s^z=g7Eo&sRoKd1H*EN@hlR*Jmh#OXM%O1l)LE=oHaR5{AH9S4oLkS ze7c91&N(=lb5s_Je*_kZOrEJ(oe$Bs^PP)LK*c@dEEbACB8o_2x7Sq-%O7`G62ze| zlhD!saEJ9>m_B~X+~vGeJk|6I-^a72M3P#!B&wC<)Xg^7pvS*tysqAf5*aqeJVT@Z z0@cp&SKBNiJb?9$UNW_n@fMp}ngAR8?13@Bojm#37-L~NXFFJxB@a4fHb`G?xmPGN zPWWMCR3r8;HmRV-mK_Ut0fKB{75D(BMw?>lCE%rQRbhH-SxO&x)<za9CCo2$ousI_ zmOMTaYcfg`=SC~aDXBhiEj#Nl{dddW+s@@6Mvn>oa;;EE2#ELB(1hBKfmx>`jg_Z0 zAb#8Xxu=f5RMy)+<}Ml!+?FBk3MZ$)oXHL;N{kgg`8=nR%5a|Q>hM&_glMX#qg{Of z{hrY0G(-Jbun<O3Qn-SkZml#L%bA+^V6OMLkZ-f}_y~+R`tK<~;-m2Vftv-|9ZeZ5 z*;xllJaiJP^=aiq7CnurK1PhJoz-pMK}JISXkw|{%cz^Ee>i$n9Cjty>t>Jf2qOWi zxU5!};tWi~PGaf5WgK7&QtBTGJcn{3$5#FE-)IPj&EY(aaceKT4yuDaI=7s4#%~0d z__WV1@v{D&kcXxWS?S=3)6GQ&6P}Y<XbvUz?`r5>J?H|1zKek#Wu($f6a&ja>_|XZ zxme^xSJrn7oso9t6KaA_eo;V9nt=uYz|~0hkVS#YzJM0eI*|r@B@=Uqs;xEh2NNxm zsxNFD5+KJ>YQGR>LCtIzxrxCE<6W(w@lTwIQqUzD!}wXD^@qW*3wE5vL~KdHLph@C z^wsbmGGI$FPU~aClzX&Q423AHX40EAPdH_Ur>{0a;@lel1jb{mXe4>vgVhx0;T0z7 zHr*cQ)G}Pblg06>YSF9|-iBHoEd09RyZ%mWp~SY3Fk<#y7U-KG9uQgzBh6mw;@8N` zH%B+L_$g;ywK##D%7=$V*daciN4Y?Cqu6=ZGJh7WWZJk3-J?c!POjRn)Xk7xJocO} z4V=?zBYc`W4%ld1$3uqcLH-PY6~JHqZ_%b~<f)QMX<faackccxLb8u1lU`z5v!`gb zuVogLWdkuL(r$O8m4LxC6hjt~3<?E<sbB=p0j}P0J`J;&rGcOakDQxDYY5(&<=dt3 zUJN2a&AcFw8M|tk;7PCC)B)CILL@0-q=*8)KKIb#GIN?lMBKdp&X>kb8M%Qmk~!c$ z(vQD#2Sra=P9v<&AhkMFi6ckbeYA)CG1|cMx!rTF%M~6Gz{G878={i9w1XAeCqS_< zS4h=$NSqA$!s(B%;)UMPEkCL1)W58SSvj}a^+ZRL=Bxtf{xgbFH3Lo&@TYfYRyzTq zWFV|;gjMof`ezd!a-wZO_#=}N#!XM5maTr1;0u_4NG=m&U`+=3qmk9zbfa6-@0Gh< z*=%ep0H$8)DS+v=Eae=i5w`ZbIn#s6XYO*B7;}FqM72=>QWe^}e!g|TuGICv4GsqT zN=c(YCI6bhB4L+QAr5Co$2OnXxaD}my&q5Z6FKx3J=DBsjs+SvATA+{r14tRZmWDx zD@<d0*lUyyZ@YajJ_{rmT2E=X=j3Kti&Rg)pU4g4JqI$Tr&hXXZ|eWijQ#Q81OF?! zLt-^^Fsd(bn3y2LtQ3<)*ID&C_@#z4KD=g1PiIfNsrlOs&HF8%tIJl>uj>Z{>OK>K z;793hj*SoYo7C8(bKEpV*-D!m&TPOqPK`7JwxtsJ`y6BB3tU=Xn>8};Zo!0F1Zt_! z9*9+z+#C7gE|FMEa|1iM-LZ#MAPF#w=Z`TrB|9|*dmL!K7dM?}{Yhz7h#0gqsyf^s zMWp1TLcK4N2<0AmAn-;>K5g#Ad?p?lN7EVWEz{c3MN$H_f)Lt88TPuB;K#vSs}ntN zsWs{5I@GjJuzb%Yh}M6*u_XW-1qRh9C7|rQn~p(hNV&pJdHm*Tudp%ZTq%E7AJfup zKN0U@x*X|ZXG0MaZgFmwXJw`@1HPbXu>~e|JPsfmM2@^8jROM1h8Se}xKaBnG?vPH z1RbQ2Z&n~^gh6JI{~R+^9loC#+DWT1W@@F#%vEb=iZ|7q$^+&_1sBtm+F^zZeg+HE ztUHUy`X^QJ3WPFYdX4%emBbhZ6KFtOU{pSb=-#n%)vN@|(BeClWlpsqRqubnEDEG_ zAl&z><wPq_$;e-Xdn#p^sadVrk_Yho>-U|DB|4&r6uUpk-`QeCh-NZWV!g)YR?ZE0 z&1H-ZLg=Hn(Y{|{v<7pSY=mv1Kp0x=uxy&k#Ix$zoP+m0<oThy`FfHfUpDLYuYO$8 z*kwmcxQz$GkF?Fy8R3oId~Y#Np1;)VVtQ@7Q`6+U%lZHSXg$e3wkS|_)r6(~PH+#G zZaCWuhg?n-!5uI>83?kO#%<#8fJ*X!%brWRO>|jTgHTW_>L3qPK7;_V(BA|aEd_u< ztxZ77X13Gwoi%6ZsHJ9VK*_Cg)9aFEnY`6<M&!;X*lJU>2{U6)arrUkDmB%ejECaX znKo1Dp|JRiNl-`L6aFB4pktWd&*99G(5Rmfn)*`{g(ZMxUVb{d>!3vtXEA4ix_K50 zU~`3gho3vr1``2T)#UG`yGI>_c3U4nC2tL+2L}p3JwcRGdBZQ?EkT`+S;+swBsDAw z{l^5~F+}F2GgS+RoC&gwn+0++l?-mjw~?@p`w2>0@busB5{TCTSS{zj8&?eDM+%L5 z+FX?yXtVvFZdO2i;}c%|<bEFd0%DLIs)PzMrJ8EXbF_e|ux=!$5}qbvw)WHqTaE@% zH1bXrNXv9$h+pOgZw$5&Bp+^^Ww)-ObytQ->29C;#mIRD8<pHP6YJK!LnE|Li$e<{ zYSYu`VVkxR;HgRPtty%u;ePQx$f2u9d6e^-wkozZ5BH6R5NKi=Vd?#{Mg#pn9Px(; zli!`f>QDj^4`rgJwXhF1`r*;1q34_KL@(L>e~#f*ejrzNm2;HfBbCEeO%k{B2<AV> z)F(D1P*-%d+2Rfmuuk{214;6GN4HLMPhm69=j7pbH8uhW1Fx=3)1{vW2C*1Mg{_vR z-=IZ}kW4Mf<j<(lzb1!rrO}MN5QOJdi0|XUUOnX*e-QYJ)KQk-Vx9<bd2S>9K-asG z+B;BzRdqIcm8eehkO;}<YK%4)J!l^ssnlm%`NKq8J>$xL^LdORoBvE2$zB%mU(x}P z%d}_etvIWMxas%VRXl|-T2iB2k;^a#DtIf30}HlLK8o7OCN~TZa+K@rhr`Gd8o{6a zKc56?AY~BYzR+{7B#WpMq8Cp{uD)N5p_KMv@k}9j0*9|M{`;w@QaFDtVcdLZ(cq%H zRxM_4dZ-my;E~A9UJ-dyVe}T6-b;O!8RNh-n+Oo^4p?>m6i`VJ)O*`3>&liP!4x^2 zG1ZR}VkX0bkgyO2O`l_-j*e=GA7-}*SxEJ4?GCC0YKjA<T-<i-9%kg71-mWmvEAn< z0RWI`k^^E<V5oEwpvwnke!Q7iRB5T*x5Qi^6eW<c_!;maf8iJVyqkB=>H$V}^}g|e zq8NNW*H!alC4gm*zEX}?2{z`p?*!Tmv*Y}a@)!kfRL0mHNYyDJUe01NjWOoFMBYm^ zrtH$VtN>)gg|}ZjwY*nUBG3_E4$Y99520<`9SGt7RdAQ=Y7bfY=!^!{rX4pTR#;v2 z6mNQBy4zlw+k9zzGriC*^kI!BD~;26k?j1e2how=djiSnm58g1{%;t2Ky3r^BcHt- z74x3mHRFM)%>Naa;V??MDAR90+5csj3n)jcjbL)f5VT*N8g2)K$U>%XTNWjW;V!F( z%+$*?pcF`+OaZd4@*l$JQ{ihD0|$O@(UZ4t+N;Mcaoh=%lPna;ElFlKHbHi_0IjeC z)B9uv_w7dU77HGQY<&?r*s*6`R8ka82u;iOM`XpQlo8GBbp`muDZo%tX=i>`HGN>W z88B$JNY)?dL-U|55cpt%lUujyW@KEYx~^%}I+Hrk8)U+6ot0rbvZW0b&yYd`A22Tl zTV(|vp;CQlIdDtjOMTFtrd;ButN&0j@}RW0hk=~(j?+-f=l-Vq+Cb1rWXL?~Hoo|8 zw)KLPiT^j-oSTW&qyFT(_Tq_(?^SqQ2R^+N<AyufgIU{LDE7&9-`f4WEmT@sy{6fE z9Od7uM};VT(zOc+gKh<b;oNzpw9lN)XX))DzW$2h<+w4fBUCr!dSFF_)7&*T;86K< zHHcJWPw@|w9+rVT+TEWqGzK?R3fffj2bM-ek@LR+RBLj#onIeR)j;CPP#lf21Fa|u zxx&n35U-#X)30>*-S-;7M6U;b3N2kyH#*cGbxB^dewOvn?nvqX#raQ?L#qGBtc(fJ z%bVNK0KN@M{!2A$wd23P6oDe<CXBQ)893sr>E=*JI1HJsGSzC^cTj!vOdoWVb3PHT zkv*f{bE>@c8|?frV-a^V88b}Jv)a0t7ApB!1p89T!b}5CB{1C2ZvWVOl(Ja5stqB= z9TGd}FpBdYIWv+Z=Qe%o0$aIY0!4GAFfaxuKR&1lx+iIHlav7+F+vmqX^zj60_f!- zb<&@yz7#OJh8nHT816f);Jg4~_Dq(3K|#zKs`F>WlZKE4f1F+ejanaeto|qNHoPG( z6Gv|vsHT}>{r4#Td=Rs}e~(pjqbxcjrFEJpf>HKb5qgJ=m_Pk$au;nxhk3F{T>!{C z-%t&b2X!|QibhrHM=N4^H(=n)&W_8c8V&%#o($=EXrn3M*H?N(xvfDdQF<GOX!hx0 zsNT+Ck4wC1*46BoGd{z+;3mpp(pz|xcuSE~XG`j`4gTad;Yr-uc>@L34py?U5fC`4 z!Oq|-otbe($^=Ud!^|Dv|F=<6#U^o)V`|sb{(OPCODO;|e9Vh!1eZAux0Z%FF$i5~ zD%g%k`Mj*hi5ROZFu@2_M7Jx7wbH!_I(Yl`d_2TCOqaK*Dq<A#PD5m7!f6pk;R8W1 zrk=O7_75eP>U?Uvsk&Y4k3vrMzz=W+=%T1;y0)55c8bB>J+7~sEjNvn_4?uhUc%QO z(mzgYm<(zH*CY|W9;lsv$DPBMMSx3-ScbyU#6L6$IbZ_rkoO7xQPWu`6yw6%@G+Yj zDKR8PUf%RN_x3d(4>@gXOAi9mie#~O_d!=k7u&qpdH5Cb|J7dEyvh1b`~WX9x#QXU zL!IAfPpPre=oyL1($!VbDXBSDc$Msvl7oql0G@cd)vEcmXh7>QEuBr|E|N+gEbq;w zlvXF36S+!hA*s!lwKdAOmD}*DMT%J<{B=CDADmrQ*aI6dfaaE3rPV1eLYIHou(zE} zsKm>l;;az!QvY9A?gS|d|G&S)^*Dlj!E%P!e`_D@BE2zJsr|!vJ~`&Z+bqaG(R_jV zl}S|EA?}=g@ss3^+(G#8<x*2%_?Ed|88HR;NQ(_nU&Edzlaq@P*4tMPscDU)rU(b~ zA{5xBRzPQuk!$7c=Y(jJ(|@~z`M06i@Sf<h^hD0*=@>uH;uY}*g=Dc&9&_Zg9b2)5 z3vZ9eV9L(W*0C4NzZB=tLVz?@qg5JYF(v9|FHFoJraoq6;u$J^Xi-J$nvZ?8+6g#H zY#I~OmzrUgn(-ZZ>&h#IgjNgj=;$$8Dt>fvQqkefNvXfq3m#I5<~YKB?EEkG-my)y zAYIf<8<n<g+m+6&v~AnAtxDUrZQHghZD*e9?tS$>GgBYt%<gYf?+;k(x$lU00&lE{ zt*L$pr4>oyPw!LN!BsJ0JUWf+iOVbh<eu`SxmvAIZJ^n6^(10iHU^kceG#;nZzyId z1abSZHQT^?RwVc`xuZr(+uJJI>_9QVS6{!<OfiLOy{@$NwL-QZOgJ6+kGxw7DlyH{ z9~zj}?S<jj+tt4FhE!wO5x@8+kOV!eOlk~tmM9tNHhHNy&}qN<{Ti#TFB2KFSuP`< zpSeTpv;I+=pgJg||6XKlDjfueGOl6q&jj|5fivJM!4dr*6PS57!sBg7-rHi3U2-}> zBMRJU)a(2yPql?KVd4c%eoav>{!R=3+1It5@y9)gmPcw)nk*M(WGF7p_xJ)N9n~?> zd8|7kF(s7F`t_-NPR6zkLoh@Jz>{yZPnovs<5OHE^bLXUJ2o^%ZKU$WIZWN=UvWy# z5&f!U;GO!rzf!T%dHi{~N5$_GBqiE7>+e*;d~H3ALG2Q}Py9{UTDdlO?2sO1LPqe> z{mUAM&tv+BR)hx{*M!#%v92b5ToV~_i$+~o1nk$vx%q|<`2^$Y;(dcNRQ_^c+biLP zbE3q^zMfLvx^{F$sDj*XSZ$?Gt*l`GNyaZH%Ueb6aO4OG5D@W-fpis*wg9D`NktkL z-4bv%eaSju3UJcz9?GILBngK34Y2F5Y?FJhFkctud+Gk7@)}_AoRzOB!I3hQ<H*vE z#%p$g?n0ME8KAafa#0pnhc$U?W6(M(1mk7cWoos>xH21*&=nt(c>@$e<}j1_Y<5FJ zXjD)*g(VhGzxqYJAME~8#XUT$=-C0Qu3yOq-(>$|Za@kU_uw3K<j;dRTF3OORE2D6 zEww0|__{JJMHntA2#>@ka94!VY;Hp`zgR41#<zHe-yIk~Hx!iG*?8&du6e8IWdH8a zKL%A}fTiRA-Fi3dt!L$)%eLBgKDvmge#TO7l2M#4F2>~dZD-q~$aUp*fcZ*Bajm;$ z7D9B@IjQ(26`nkTu&!?m)Z}Y|W2y@7D}22VCP9TEQwXRkhy%?A!X|c<Xoy;}t5`N` zoo4K5o}Pe8Utps{j1?_1wj`9GRp}H2W%cT^jPhzy(r>p|2}_UjF_?WduONK`j-LDc z2swT9ePEqqG>mG2Y`NQR$8?|^&>i>0=eVihb#jIhjQtYB`F2;9Pi{vmk5n1{n(|H( zBiu6QIMo5A&x4NrqY#!a0!M(s&@PGkMKl0Q#2+(IvhKitaD9&?Vku}J3NwLD04h9v zlBX|-!ks*;7!{aMPAz$59@!qW8k5F|d+$AX<gz|aymgQmk>OrM*IP=aJN?Ad1*AE| zpjKdJQi<gGrp=ZCYP={=UYXr2FAJxT;tB$>dSeTi-Z%g*TTRc4YbsvA4Em=5T_}Gh zXhwZ`B>kom9isS3zX_216dR8eNe+Y%Rz8d~*3os#Ck(j)->3tlWTbaN*lT_C#bCCp ziKkgKQIW_I427cPU=#rfkb$7nYHSqthIA3MeMjrDAlNSpmyKfI-=%p;aLoS4wj6?y zps=CP-T~XRaoToa!!D>Eo*s;v1~y2MZ*|VK17~9f1wHOrXH^uw&7I-092Ai))yRzY zXr^T7#<P9Lhd2y{Ag6nm5yguS>i<d1cv*cvN=MoUoP#DwT2M7(AA*1QT(!YX&nm1X z9)_cXlQscg=v&-_(A>-TKBk(-N_n?D<4NY|sx8E*yLkL=n9E9Oi;up-FXJUlb!NP< zaEW+vWf3d0B9gs9^rexOv!;_~yh0(tquTZz;y|@R59|8?vYDQlNjLnDevY**qEp39 zK)d|A#hUWZqz;;MrPU1!u)yo|X%U9L9WUy`l=5=jx;+WT1?JAp@8MsFL9s3P`@?N{ zGi?@>K6`!Ekjm)b#vEDN!W34Zc&5KN1%7`bL2ImZ&4VkDfY^W1Th~I6M7zFBFxBFJ zD!cqp{XsD>*>fr=FK7H6itOS@eio$1_NaRe_fS#ZBHppc_lJRCCyO9(v>j-mp2||B zE^L_GCLpAW?KPN-LGR>V*ztx7KqWyV!;(dOE+0oc(uo%h+)5gfh7x|WFSM`@NZKHD zv@y%evHDHqr;nwk_XxYU+Z&%8Bc`|D6kEQgS<T5Jq`j-aJKJCwk=?tda$W097HaYD z|A_$r`~b^f|J;7z33Pl`mNBEqsb+pXdTFz(8+MB)R?gr^lKI7(`Gc#jSU!;@64~s{ zheAlZ`5&wVX{68*{_0TymM|~Y0Z(K}-RYn7xBA(xSl!vY8@?dto*SI#RA{Qhm~?o= znr*i31is0qVR`?%+5uz|obdm-+QG7q2%%1X*g);Kv%xe(fy&7(Q&rIyYU3-?9{3mw z3RIGxBH#d(j=54$fyH%Rj%Jn^tR9@VM);rGr*f#{tB#Y+K30^+#B^17Gg7{nd{d^c z&jPjvE|wL^aRsm~;(wyI!KpF7F@YG@%*mtWK_L{`LP^m|qC<<kWYIPUD*=pTv;7_5 z3t*Yd|65D`Tpi^V2DlLNitkC675dfgTiE8ghVVA@zc*R=yusKld+jwFr1SW>EgW)_ zA4&VGe6wzVUd>G*oAJV%cYj7*njx%WEAcp{TfZ@ssr^wj@)KXY1j}o>MbAc`x<R$C z#+kdUTa8>rOEa*XYHRx)#^@1~ZP$0q?~`@=EAbt&P;m3Kg)@KHFsl;gc1}`FgPJBx zb*Vv%rvVTRaM6T@0}`&R>9EiDbLaPN128HU=e8Me!1fkZeqR<TmuN@!b)99@v*J@T z=0)xat@_{aY6PcZe<~eXNP)dRe~@(Z>v%P=c_lA(e+9fjcPLFZT&#(XW-Pcea~M09 zNo|2p!ItQN`0d`GnXrLulrK96da+k|5WOqWJ-;6=1XvdLZ?n3wLT9>tx@@$q1&wXt z@4;F=UkNH!t{hscqm1*`sWr*5aKDB}_2c_%t`(BK`G{rYp-Zz=9{%y1aDrd5e+rU6 z_(Pg;csKfUv2nkOTV_s1HWLqde<k70?!5?`HW(a#XJyF_(?ePfFx(8(If_a2yPT`F zw#BcPLNmtE2a&g52Z(y*WQX-><+)ShjgxWR%<mhJ@{%idCm)^prr9Lo+-^e+pEl*1 zp}2yB_+Wy&LFm7u(FH7<|2I{B?H!qn0w)FV9&8LU(r5FcQ#mc0p>qtm$20Rp`61=> zH_FEJo;b?Q`h8A3c(<GFt#sqf`r*fHBR_!!8VUtCEn-o%qg1Dg?k57$hKbvbB{b9D z?{FqKQ~eXM0JjCIU$9^qq%W;ITZ=-jE4UT5@Z!O^_$;afRCE${n-UalJgjFF#|}gQ zzh)Y5xD7Cg%P0sKn21A9%7$295GjWs7=C3;*nN%Gv{6>eZlKHb4z?(+!|SLUJx9Us zHwy!nqx_pLXUB@KNk+aW^BQhTH0G-L+$>7u4&}tjgSQ%+hEV`#OVLi07err={*Ho# zJ$s$o4}ktwX#$vo{vVnM&UOEUz?-81%6pYF69L*T1C*rfpa)64ts6jE8qMou2vfE= z<|tTekVs#(BMK&0M9p}!0u%1DAd@*Ym}R`H=`x+2A%X$-${xuP`j0gNA;5B#e+T<N zs9+HU7p8xTl|KaWX(3i)0{cZLan+OPE&j&I%pMJg<&o<NUpeG!_#Q^f?S|hFSo;_R z$pFwxIy2%RcyUtTsXQt6dYtW_*(rLfB9M{#J#!d~M3hyu0X4el?h`91-U2}_Pk7C? zM#DKvY;x?<n*-gD>%^blnW*MBmIz>Z>c6q_{`Ya$|1)p@&PXMD(Vh?keR@ao5_Wt| zZa@Hf2jwYX_PW2HlumGI`$sVUs2IzR;}d^}&)5wCL)2)E<-l==9put>dRqw9m=EPh zQsAE)00SZO!z+VrHW0}BzHuD|dC=~)VhFvnn&b}I2d-@jviYPu$kaw2XR`W2LEDj} zZ*}_bWxo2TY6{THJYK9AK_NB9;U#M0O0i1*{+U@A)<s?bd-NkNvmpGDqW=i*H|Y9* z22_pU%Jom6|Dilqf%ES${|D79kKo$(PeJmhB<fBS{zSUrS&%!{oi}Ps5IebcHfE5& z{KPXq^n!M0taM<mdx6WH%xOdrT!i}Z*-#@R+1esMrv-c@afT)jxqIr(xy8VCwE9#C zzCwNETpRb`^>z{wp*BHU#R%_db*(_}kOgejNr-`2=e7K$PkKTA0?M*#l;KVkR6Eb- zYlp5k159$=7x~XZsnGd1?f+%rjXTKe%RtkdIj35%eD%R~*DN05@-{!5<C+KwG9*=; zV&HT200J;1zDgHk)c5z3@(6B1|HS(p;0@fH9)M=xxo1is%Koxcl-slR*k1D6Qv}~f z@(H0#&5nRJ=hmHN&c~MItst=K1*_<VG9xW62+U$9C*F=)cs@}!Be7w?>X7vqlFbAI z=Y&jGT%($%ZRCSNZamq66wqu0_BBqmr@8OK>}sN`y8_1dK`7deF)41h^d!&g@AM<C z1^uHQllcGQ&HXoTflE)q?}f%0^?xih{-5$D5!}Z9k(cYrmG^4e#+yv&W#CL+xN^AJ zr;r*E6`*brwkbNIh%Slsh!GbkjR=A^DvfgGA%zuRgVZI$W^`*2J%8~WrYkow(mV1d z!ek!nX%v<(MH<*}_C;GdUTVrR=J}HqT)p?RKb)yH5r>Ih`CkpK%jf^z&?@%-n{mTl z`u9w(0rej<x&PCQl0$Hp@@K~9<x<R5?O__LgeG6gb3x^)**SX_f6Se0i@1ZGkq$35 zOa|ER)(1oztkoJ7L*B>c<bf>QfyBR$xvAy~=g4rDGDvg64UTrD7^WB#WpPTG^1?8m zYuQBkH6ln1KdCD$LhjJxBjL+bJFq(%fU>HS$LUoJ4JPl)3bRpl91s^Q*cD0$qR;iu z60Icp&(Nk5+~@q6_6<2O_<{WHVp5<5Ivh*R7bfa)%!MfG=MTnxjD(OmV!z|GL7hOY z1K*4uSp`=8i?Zz^M{tq4w1U^`-N1qzQK9-m7Kn2b^h#rvY$cm%VhX&qIyeo1GI#8S z6wOsa`E0mtMSlQLWRn8$+pt@;kD(Qf%(3=MyeR`$c>u#MbUELDftviMKp#r}4EmLD z@_{vF;IsbmQA&W&@w`5~(`c=aH7~^a@XZE22B1>~c209~c8q+j*RLGWCuw*q*-pYc zr}(4I+#OG$dM(pV)ZnKfaoQ-hQx5{uhM3j`i{V6*f>IjcJ{rdkmkzVzir%y4X!^I% z$Y!CkzGsG@bqjYDhr7^zg1uN^k{h7^0xkW|fW{F#*8CZCw|43apJ1D!RdL)_PJ;vV z3um-3jk+-vmt|53+C3peAbMdXkJp8bS?{%6=QKw7xQLPlzRN%>AWD(+EhbMmW!D!K z`Z>0}$$Yrgyr|UIZcfX=(2VEqu9okJCH|;(c#T$D$aP84;piU~)*m7GA7e_%J<xxZ z<Jo`X{ZCTRPlBhGKjLk;mH_+SeO7P<Up=luoGoO)8*+#LxD-t90{DEZSJtSa2g?aD zhZhQWsaac-FY92C$)2{M2n9oKG(ePn4FvkViGLsEs-W`sm%UC=YTz{Vi)FsP{Zp>r z!koQXO(y0U)t3n0gd!U4%$lM-d(#s)-v8Cp>z@BtPhUmzpCJq*c<%Wl;j)4kUXa;c zbgRvjkKIS-;Ce~s_1F?<W4!c=tGoWa3KQM2$oj<n5%f3loo2ZJRdF<f_{X7H^$8Q+ z$i`?fy-gOwj7B6ye)bo-);b}AS4Tx``n3iR&k#E_K9Z?o3QjBtcNItA(Ei<RA%uWh zoPX8JDx3cdRsg}v$e*zkrzA9GI$t%=P?3`Jdt)1Fkwl5q8fPOUHxsxWRTBVH$=BG% z`}!7s;e>ubsvKgF7}I1c*lbks3boaFs&|)(`u!Zlbww)8^4@-l1A<4NA3S^Dd<FAV z=ZH9g{zEy{{x{J7q@(a5c%Atp5R1N^sdKPKs<SjfGkUIc$U;~p6D#_RgPjd6?om8( z>5>5JV{JD>v|6-I-;R}`eeHeG2cqC*wXzCS35#ZbI)-REk<qlMRO%Vr4-5cSN-{ZK z7cSI)3}m)>UG1<v|Mzip)!lyv#+l%4<xemIdD>&ydW^E|u)D+*H#(7o2Esx&pg&Z- z`6)!_RtZYxdkPaXRzyT6fE5H18A7Hi{1Vk$twWuu?TfHze%VpbD3OI_1q^b%F~3lX zzs>X(-+3<n_;!m+LC=T>^Utj-!hqE*|IM&t^m{(0tl#+mVLoO{@V@hB1dZU4`43ly ziBh7p0QB)!0(G}?z$xN>&|*JHDvp}Sm=v(007?V+Of_K2M*Gcg=c<Q4STz>*<kib$ zka)nuT^`MD6%(Fv17wa~%2EgpxaD;XdH>Zv{SMycKN7qj!N<uTga71QeHkaIH6s|a zVm(k8!7%%ll4nvev-e&Zs`|sl;WHx4R`ad>=UhK~D|Yk9>(a<R#(iNW;`iFda$=+M zv;tR*ABx9*5P813u87kXU{rN@LQa~=oEdchmNcy<GjK#OAzt5v;0B!knWd{+|C{E2 z(l(L^KCl0TBZ!4u^?^_2eSU=w_=}8kIF)$QKrwN06F31kOS?Gm2qAXW2<LEYi_r%E z4RSrJ-;U#9G52oo`&1yQ)CuMti6U-Cb86d!P~y2wRTVvld+n4uV3|aQY=6fpdKE@2 z`!8lTI^s#5Qyd8|z_5sE>fZkv4F8^y{a2p;jrsTY*T7!`e+~RK@Yld!1Ah(tHSpKK zUju&){59~`z+VG@4g59m*T7!`e+~RK@Yld!1Ah(tHSpKKUju&){59~`z+VG@4g59m z*T7!`e+~Tq+<*vR_1k}Bw;1CRNy|3?(XUEzZa@t@3I3`b=P&B-3t4-W>Co92Rr@~f z;{nJ9BbO&6_4{|wXV(7fc-X57?UY6XXU6R|fx&R()hfh@z2T?z+v4PQnpYAX5T5f^ zAY>p&WeuS%FKpBs$joio*mMGk6F@`wv!Nj-uO8#)>4WuVS>~HP;)M0`V10)%N`i78 z46Ca7*b7(tdDEb_1Vy`q+?MngMBuEhFFOT}dgpy>B9>=v9^p*Up5!!+F*n=w#aCm& ziJqL}BeZ9@M2NfEkjdN8LSX6W+vOKWdz%g)d|MOxnK7~zcIs<|YP#ZL;kW5EVyZfL zBiZiyOCvxxKO$1ek=&h)@jA-x)of*A2;zGB09COe&OkW%wqcT-ya%_(uYg(o6KK!D zl|S6DrMtV%Tj(8k8i;!S>u}}Y=PPpp9N5^iDm+RyJXTYNoZ1u6e7Xos@8@CRp6Wwk zj0aoOp}yOKR3j|)bd?}m^ITq}#InRKe=w}u2CA40ymJdr$pQdi@Pus?#Pfg@ZMns| z+<-oAp4RmexD#`gH$N}p@`ZNuqbI0SXGq#_tNWf!Mp?5jr#&U4PY%XnYyjMI7RJTG zVCZp_lci}jt;mXW5pMD}6w_=!t&kcp@*nzb)+CkK=5_XG*_GtDm-ienXI7xIhGf<U z{MfVM9%0E+^4NbtrRrrkpps$~+O8612WUX#?G8yC1Icb|&xr>=85`sZoG>1KcrBHA zN7civ;CQ!XZ8eu~j#!&N<M2^Gu>caUKYI1+^1Ka41Qxm<sI+BduKf1d#IjsL<wDjS zR6`cDkF7RmmhS*s?(5FK;(ObEBy2cpn#K03ZW{;yFpM!eEEkH<)CSY6m{oz)X(ABV zc#+x6D;G1mw*=72*h0WavMykgK-n=X2CQmRR-|3FEBp7|-o()+7Ao5?u30WWe@ghb z*&P_D=gW2*(-SneXbxn$98`y6Fmx<d+O9cb!!-h`HU=z7$e8ZP;PfzUSwfnghu0sz z(Ibgc(-)RlW`-}UYqdJo%%*^48!N+A6@d7wQ)=SJxqJ@Q#6)8r!7s6)BDe?Idjav! zo~)?6lqb_c4i7#e&{iz2P?yi`*9&sFXgt1n@`U9!==Llm*Eo1}V;={iYb(Z%jz3}t z@Z*^5szA=+58Ql;c?|Umxg*JtY0Oz~O7LeFsGQcs=Sktd4LPFa1>YgwR!~iJhZOfd z6L&bnRJaTYi0#{<Wf-+Xmr?}NBa$Q^(H6C04ebE9d;WlY>D9ck-of#Plwuj00c`}6 z<vwQvs<P6|tK_X{Cyj}UZbfuDxsH!DjnEy;JR_r`Xh&JNl>U$lL)OSTW5Ziy*g0BG zfa7+%bBBDH-bOL4BoQ!7-AT7L-XnI6NgCH~eY3qjKxcYab@vR2tsy#l3d3KI;BJ{g z3sFDYDVK951ceO73$EeWR@M{lfs_f9S`VnY*ggfp0_g<eTG1y}dL)u;a*OZW)n0h7 z@{?#47&?L+Gb;;SNGSIJ0z1mT)Nv!!unHQm1hPNAmW_6@obh0u3(phTa5TuNjL@OF z{^&7QN|3k2J6o~fke#|RQ5TjYWK7N~)42pFbKw~xEfxwv5h$A9*B&9q056#=>!ibC z0JeXgR+v7-<YC^YO9Nc9{edtD7;kquuoaXH?!@}V8$a80VxqBr*EIp#{bQ{~Wzi?b zA@9-=^ghk|sCUq_%0STblp};qoJuUJTop@4D^=8|gi~AOxrw<QARj5kXy3q`Up4Ku zL!h!#jmI#}2SW`{HiU6iawi^5pHyW)QmvyJbVJOo*~l}CtB36Hp<TWXxq$TL?r=I8 zdF*oNI2pYTeMzYz3+{ayh!qO-SA7X%=Sx}B%9H@3w~|qWocCS)cYg;-p{}{+8!5$> zp6;E3uSfM_e#?+OF@>Vq0LT`4dLRUyHag!UB|gh9m-1muzON2F>?l-ibmCF97~aHu zq)4J&x`Ulu**Di|)^>c^9&46Q^L8(pCw*tqTl!6)b~(tz3yqJwmDn8yx;Na`wRkYk zQqa518cc%^k2B6W@zFs$)il3@-Rpy%)ZW>1Ku*nb%QOo?h4o-Y&N%A#H1IatjP)Wn zFD0@ChU?_<t8aa9Bi-~uiFuz|fec>jpefx2VtJBR4+9ltWq^Qj$u7nbjB>=8Q!xus z_SkV#z~V`vfLuth)YgQTeK+DDfvOUX`;3#;n(D?OO{xp-d`ou<Q}1Rh+N$6Bn*6@! zh!Nxqr0<(qZ1*##Kd&~^5S1xu5{<CKwnc7~$%#6;RU41BC%JpqScg2=L}J7N?lzN0 z9W+1`h(g|GNXL#3)6_J3c^%A?uou(syrqYcSJuDUSu{mf51vFR;X=th^)yi19nlNu z=K1;PC1!Zl<WRpA^vjg8kXC#Ob-xz@$N1-=x8?4Y-EBrnG!U>pvS&!@Pl7`Fm*@x> zJX#%#=C`vp*Owwq<jLmOZgYF_PSP+|QelKKywC#VIVtDVa$(WwBI2@AuKW<1FS)*^ z;w#jd3e08l4?M9BFc&_I+l!D?N|KGZb4iog@gxH3!N1y`;D3a|#){kBi?`{@td3N_ zP=x68gT{5Y$ZffHK#HzJ=J;h!*|9DB5yAM7O+DA$)s3TA<9i7ladjiVLy5LIO-X@_ z^Zl;wVGv(9B<JJN^s6*IVB>MXIkG?9n20o^RJ`q>5wgW&o=c2T)D1g=sj4>qdk7X+ z;1sWM9gURcK@F1Zk9k~rfgKB$YDo|=9k;H<OjK+VUIQr4RVIxu9ZzsQ;6D1#27`kj zEmn<Qr$<G&Y2_c5C}$F*>;kl%fEOSwo0C^P;fGA?y59JpSq*9|itR}@l|6S#(?AS> zi`ykZvz62wmX$ml%qZjQr|3$>JD5}KtR@@?>Q_;jony#8P9i<1Gn9QD9^kXgx)FZJ zoC$W@nd$0a{NhSWTN?f%t4dCylZLxKpT0G}oajE;#~7{DSBjDgqfiPDev(;OD`=#} zwvZ1+OL9wNR@02h=wzDVy$sZ@J>F9udn!mt<X`+GZja&9P39Gar$grhw=0tI(WtKt zypZh89WtxP0Q{z{UopK-K$j&}DAnzJ0b9uoHUg!S3^NZ&({mULaDD7gz>H%KpV7-t zIqb~+VYzMI$#=0(u0kCuk0fj9G7bJ6mRc9gx2m$y?XwRtIm%|1Orw+L=F+m;BLLA4 z(TzX)iM&b9_*cUhX+HRy34~>9qF)_I{8$)D&@cqlHVKl<>isaxXv@O4`dn&qNqti8 zq_FAR_-uS%S|Z4AG#JPO=nVR1t}6z|2N%p=->qaIGCT-6pA;$rrrDYg&S3q@qn?;E zG`kk9iRme*RsFTBF-3b^FjRogGR@<jZrvb_<@y7>6Sml?LUhesP3)AF>eKUYPp42k zo5@_yhP#X3e2l7HJL01Qg=^1^`unU6tRDzl8W@`a@jKgc3Nmi(zUd+p14*O^ym6Ee zMfdcVen9ynp9l4usNy|HnlP7C8^j<^2Np2kbjx2E=grkqQm=0~Ad)3#uk#|Ng-!Uq zB<_cmf8pYKa^)U&nr?SBx07E^gJI4&n|jJy*a HLed_h(IBxf{Th&FV1F)^NFX> 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 Lg8yd(0hIn1{23dT literal 0 HcmV?d00001 diff --git a/video/in-order.mov b/video/in-order.mov new file mode 100644 index 0000000000000000000000000000000000000000..7d407b9d5c2f8be72bafe94c83bfc30aa9feca9f GIT binary patch literal 269735 zcmeF%Lz5s(kOttkZQHhO+qS1|+qP}nwmEHc+BWywi2VzD>%3G%9iPZLROSl+0DxlV z>|yWVOh5qeU;W<+;bv)K3IKe){>Q}7`G4<!>sR1c;8);R;8);R;8);R;8);R;8);R z;8);R;8);R;8);R;8);R;8);R;8);R;8);R;8);R;8);R;8);R;8);R;8);R;8);R z;8);R;8);R;8);R;8);R;8);R;8);R;8);R;8);R;8);R;8);R;8);R;8);R;Qv(s z4-6DbTuo|AM@E=G`DO%>XF<3e@Mn7Z2MC}&Q^Owsz<rLiodEnN-Tjyu$Xo`Tg!|TF z4JjD{<FZ}u2LmksU#Zy%NTRbbcf3<kX_~EN)mdQJ=E+o7j1Op^e&fNoEVaLLTIg+I zd*5+*zRNkIKLC>h6gkv#;VluMiXH;EQfNoudTajOJ20Sv{YdItcW5~{)N*9aSG&vA zTC^#72*!kD{>KJ0AuMepZy$2?x@U(^uXmJhPGe2c{C$AvPjm~QtQ!;P7h;<AnCb-P zim`)qJdtc;xHseoU$X?Uqt}nThZTYlXegl0&eFHtlC2*UnC%X3oTmnAC0JMGb+rYF zfRXC!kIUu76nEAiUB!2t;VJ}$S#2k^=MQb16;q59-bkCG&{B)6!j{(iGH&sC0Dx(X zo&h%>l+8K1JlmWTz4OfdH(=q1zwiRwD!$D8?hUg+l@V@u;B5XYFIY_nUidMSp5Q|# z4d6wP4zxxVo;*VB#nv;32oF!f6{IuPq|+IgvoHztQ|sPk1YP^_ma9!%YM)%9p${}P zzKVVRvD$j>DDl%OxDfDi`2bRsf<Jdq{OXIi6Quxy?M{G9g@u+;Y%Gv#<`oL|!pu5| z1jd6+DdXy7Q;J&bU#yaq$R_f%AbPXq;i+yCLEiuXtO|;1K#OG8mM;-(g0KJpHLZq2 zID6u9W^%939`p_l73Sz3`A8HtSnh8A-P_A?2HMFjR|FKWX3G{@&M2<HjjmZp+&C?j z2lVa^OX|F3%g6FFm{%pa!`pL>iXK??qp&H{UGP~b4lLd{{JZP6Q%C#4bT4gG!M;gr zg+*3)OU?6}(+gfTP*l7q+uz5#hJ>-v5D#anq>(KPq24{ILOlr}o|8<2PcAqK4;bt0 zSMd@lFsv~JtB=pfn)FU2r$RusT84saeZm0QVx(=K*ZC^=H>jxT#P8V^47;Irz4kjv zDLm7=4B*dp`F8gUEqd4VK_)I8rUk)Q9_$1y@b{A9mx<&n#%-#B4t?fRZ^HXvZ+%i$ z3EH;_0HCi@Eht{krD!ZefS7hWHnP`sauDzJ_recj;Qq#rH8jAD$u*yiTo3yyR_O%i z6<5%c7)<y}ZairK{DP5BSGu5#LIG(RExIvd@sjdPDz&u%3u>HAC~g`-^_iF4KAN+@ zM>*6W%kZzCQFT`Yy4^|m>2wT6O2&ldMK7VPW{SKc?LI<uIOeNk#~c4-2KOI|rB@6R zfoRVcXyrxbNj_AE$p$%x6<Bo?XeK)2;nZT%bTltrPp&B(5cFTbT&2Q88w?g*?1flx z5A=@#ur%8`y$yi7Ymzw)xa@=??VmrECF3}Co5WFyUF{=DI);VQgX_DVK#y81Foa<W zx}?#}JhZ{?(rd{`Q2ymRE!^80<7(_Z$zf`uW!T2FQe>AV*gZJ!mFppeg-%-eQletj z#wA>-Uu``%;__{nQ;&QqRbyq<6mvQ}Srb<MBmQh{W>ELHnrY{lxX$Zb_Sx0#oS2|N zo5sUrtmKSAU}isGn5wQFj;YVeMx7SAl$8bq$f1LrM-;Up4P}s^AUCGufBE-<>gm>; zjm0>a%`{#PCa>YadygIbsb3fpn>w{ET|py%P;dCQN1x%@R#F?w?<%<FvnE#Uu`edx zH!MBX6gC>(p4HE_h&&OZAQgH4r`j(l8vCzd_0GXSQr~{5am8~^h9KD2mE~lR9YujZ z!w2>(A;Y30*k^IG5j@z=cf&p<4W&?7CUB5lUqtmMy!x8pVNbQ{+S96YFTtg1m0t-{ zR3RQqsITydbx5yOw-jh-axR9emC#=&sV%v8Ha@H*)um}v@OnY2Y_k*o7_^oVslVp2 zezhqdn_ndx6Z1$3t0APr6i6~hk>&ZbeQM-OW9b-tGgEZyE;xcR`Mk7#l)wTzS_!}s z*=KjOAPHivy_8!7235<ref~P3JD3_BQZiDcUAtq1Dhxs0{6$(yDFgAydeiCnW~_I@ zR<kPZoJl{=HA3L=>D*uAstFF{{iF|wlI3R0=xTeoxrD9(72~VaFYqW-NE=5Lvib$X zVS1z*FeQV!+p{adu?jKXdTy?ANLba=xoDhA_Fa`4jG*fIO4Vf07_XpRj>Sq-%i!4L z!SZYchwWbwfTQvL8{<<Jj;xwtV6DTMMkB1@RjPEi(ZGx7Z$W-<SgNt^p)&}wC}dj# zB&Y(1-wF!1KkMW{L-D8PR>eMn3*un12A?MzEBmT#5r+xIazca!eIj7dAj~=cC}6YR zdK1ohn6EVh)N{ch3#k$+%}6w;_c9+GHW=t1zy*?>$~M`Xd;b=emH4eELBo>P7q**j zPhWJiH%%BL%h^8de<En2A2ATefmTt`{#7^sMx0j2vNV#3?rCOh?P5Mpm!=-@PsFLW z$L5Uczt8-NvB;L?dY6-D^Vg?)-4%jcg3<~T;6KAKK+Y$M4)g8$a_Ac$TF9CA1MoR> z$x>@GPeXH%oy7!b6B`WKvg0?P6@+a=LTSpjasW?d5_{cMV+-T^Ftd>9VcO=F1D(mh zw?L&I9_ScIt>-XC|EPvXH3++=n7j^Y^`r0N5_Hj1y#2)F!Q_rFt&;rP9r?{G+Iv2M z)KsOX+^2xtM#fJ18vGPQL{d&kG5RxuqqG;{XZ!=FWaXv@JKQ%81$R$m=@WQHc=N%= zLG9^y;XVc&n>C)Y+w{PLFN4oxU}8mdKHwb^pw>9TFxpHv#GW^q#Lg@U_dr-}4$8?6 zl)jui8sxD_sibuH7m;X4Txaj5895`loaqtPYC6-)4*xE%6(;g)nnrc;Mirq)u#ZtU ztAScH@G=AQKqL~od52E7s3?6o4a3OGh=r$eK(3pvDn`R4s)Ztbx$%Os%Un99e>UQe zUr{dWWp8L6KOev5$VAl0L&kHgw{nFPRQ@&-VNi$48uZ}2tAI1-0QM%d2SUq5$K986 z1Bw_<fZ|L|dZKVB#6|f&j{pKj1%K6bbLe}HTtQ_tFv5IY?pSQ#${Za0U+DTVl<5op zMGnlN9U=@jd&_B^McQMNPCU(PjD(lLU{0g=*<nq-Z3DxM*?oJ(vdby^xdpCUOQIe; z&i|;=rzs%qW4)KTWh(asPLqEw%)+;wxcQQc-kP{-sg91^k&0BKXk*|8%=;*GulIN% z{$@jQq+<xp=YF}d9GF``H6GN(BY-cM`KuHeBK1R8?FFlM&xxReGd6^eq6xvMNVTQ6 zIZsVJ&)=yM{gDS@ATdSeiAKS5WM$)<$+z>}LGa0PWITzt>i5GJ%N}Gf#Yn&l2K)$? zvoX|T7w-!9>Gx11eH+zIrN_roD+%Dd2C~(pHwpHh_EL_Mhi^$T15`OSch<SN8{%eu z&h;%0lggCU3{7E9n0uxjMpT`UO-2CBdintd)7-PPxM3W(cH0&<F8OA|=XG6aw{J&G z!|V2qkq+UBvxt<Tas<FJ5!C{1eZbOAE7>j1qVfG;nQGpx4(!W%kM>eyptUz|ir$S? zf^S+P&K@&zkN@5Zu77DD`WRNEv6KI=ZB0z6*we@RB?vD;5{9pkwb66MeRq5jrNn`2 z$E)&>f-=tktpAN!jB&YNg03G?VEP0IF;K14=sCJY@n8-rk|R0WHkm=RwLK{L)>XT; zqt@9Yi9&utsC^eGX<N0XfXiCRZ-HM|##d0&+VVK&>mDo+jvGg_o7?Fn7I`~>cpcG5 z%%M=rIi~S>1ewsB)oM@f{b8&d`ATMIrm|l7=rT{(dJqTi&|Oq9`*&q7Yk=2A)EXfb zqYIVG^SDzxMU#oQ^DiB4d0M~hCH@ajnQ}?!qP}uLd@)TOH`oEj58|0t$jB^c!j~UL znR{V#g)3DU(q*lfl<Da~SS)k#-z8SZ4DgF%$7R%ApB3{@qPUtPv?f%<lcoc*W}ztf zo>LND_wo%Hx}S-L)btjMw=TXeYQ3Mp>H~V*n{v1oAdhG+9}EJP7*&^f=R>nGR%Dqw z$o?>2<J5timoa{!KJF6DRXTJpx@PM{d%r5UL!tP7<1KWEMkD~SYvvf{amx5m=g+(} zPDtJw(WR4!g)nSj=JSh^90#z&!fvH*n3jNt8!pQI+x}{1`;oSOqbspYZrW(Xdj&ry zyQ0=rKD2F_d|9TN!L|O47I|D3{xOZ!>YKml;Ezd%Rl`;3?tEuZ6c#{z;bklWuub}R zNL7|zLK1a~_e<MbVb1>R6`tLXI)F_yQ_tL~Lo`*wd3PfpV5(K^Uw!{J2F<0NAJgV3 z0gECm=~X-=ZV<^-<}5Eo6k?XO>=Ll(es=zX*TkN@@P5gNYbM#4O8>J3SEKo(*>`On zgVLPT7p|j=Y{$2~2B$o5SX(E@eRMwj{4*rKs!z{Y5jlCKh4Hb`@Q2IbqX(pk5c*ll zPSmIj6JPwJusN@q=HMM8@UXcJ{zh{qfSq)gXH!?UfK-UHqKU>m$9KT)jiEkMUosGE z1(tpxD#toK#6gwHN8r?uj1m*o4eo7CfidQx<|h>^f|W=?>Sk{3`|AnsVxB8GNtg>J zAtDcntw-^1?*?-tj6`C;Sx1LQ3AM=c_ibb}B*ehqPEKqc0Z#8h1Ejf4txT_teU7P- zcxN01*mL9>%hpDC>b@MRzwSgeE%PdGV$?@#QD-?pfGTXE9m>ALBss{IE;iy}9MinX z{{X~=2<j_r{{g1>e@0~l7E>?nO|mZtt;#<H_>kW{wnMIS8xq*`2*ht@`k}=Lv&R+} zs3k0%8n^C6$56ot{fwF0WtqM|?Y#8$`yY}H?B1@t8VHV{0=^NamRol(J1~ErkcPv6 zp?&v0h(Q>E29MOn^Y%cpEr8QT(Gk2KE{?zA`$R)G<_jH{?GF3KJ!qC$^8v;yq*>=9 ze@IgYsC_dyVU9D1>-c=^eRTBHFcB@!H+~1_ohW+-<?=D%9c*p#kaH>|23Y?y_J+ml zHH=q<NbN3x6I>~wo2>&Fy$j4TnF3A}T7Zj1LheD1<27$_7Pzokz))?_JlD?(exW<0 zQ=$OO+@{wH*~mM?t!J1P0cj`L1>M1$Gb5k>-irP%R8myLbHmJhbXyb&q_m-ZEeo|- zb|i?N2EZzgmOi4eCW+S=Q(?(SgN{}(f?zY<-}sB?m5%}3T+gE(k`O|(UBsN|P6BtX zsZP~p#MH@o2-hD<sx>+U(xmAy57)IqtrCn{=r?JScq@5KNRD2QtR?=ZEV;QrSaFpS z4PX2=#$Ee$2=5>KkWHT8v7p0c{mff0syf%FmHOIdHSJ-xOq)XA?N7~rk8h>#heXx9 z{rycPGsYeWn>t}eqf6X<NlC-n2nh#Qy@>jpvA4swFMUA%8Y{L6Y68TN7YmN#e8w&6 zvu}-dGlJawU_CD8C!x%y8|z;6Nr$@AaMF)z5roX<@6SYvGf}J+BPgWhI%=&AMN9HC zw+a|Fy@qmh=(IwBq+RszeX0gXJuoz8tvSrn$U2#@m)Z#A&=GAJatUpv2>T7>S>1RP zV?^1<GH^fM)?%6yJ4U+@b6;vL8(@AMTA!PIA?aO;200O@DnC_h<zbx=iM6CV!X_U7 zG?M6S8{2j(uxKTiSTJS!XMV5<&6%bLWIQM?jw@nVi_*QARy)dBZEE^d!`%5<=sX;9 zKbmF0>g<V1N!A>ilP`mlt}~PHkXJ;{VIotMtINY~=+BSiqm3hs2;Uij9mxzXhaa-& z@Rm1V7S3%1Kai(qIWW{gf2~&@VXNaqePN&XFtT~_o}rK2{gElM_n__q9T7t(Y5cl? zku#iH{aq39;xJryIcZGfeOyM)t+)`PbJn8it=ds#tL~9wS{tJQc-TCyTp8`|d)bHP zYtA_^z&leNrY}HifDu>8HL{2U5S_;Puq>gDvk;DQifY9TK`@iB)MqjS2uU-7R2&hm z<9gY#Q@c0pv<FM;_waVNW&X6=#B0#?x5D7L$Y=7xR&>coVLQ%tqO#uY(dJ=c^{2<J z!z*Q!d~zQ2PN}_e2mbz=i!dx3Xc(nKk@5O8PV!T-8Fwd6hx2Wok+hIF`m8(!5)98A z6zXB&pjFOCw4TFT9#11r`26bTSQ6Zut$3e_xtY=nQTxK%B%daTY`}u0Skaf&{t1Q- zewmh$XMS7@KsGc3Ega|PwMEAYVxgbHm0miZ&1hWe33$%=4q=HOg!}9H6sEe<4H*l| zzWtQ3{;AA8@S|E)ie_AWaRDS=T=CW8b5A0(3c3FX$Z7&2e`egz;=km}G5(PUj|dru zI@4f{9H@@lL#%TZ=P<6%BdfyY=5paH`N)Q;TZ6z@KIVr)9Z;asOM^dCcuS;1#Wd@P z2YIyQu`1_6NdI=+QuK``D;3v<yYS3<$o=BMf$I+HVYr%0D^Jm?a#t|GKE}B+b?htn z5f?q7V5J|mN0RtNiIV_~d!Ks)!Hq=j49Tx41Q%z8=&AafUYI*z!vKujcDCAC7l+tR zxLk2~&0rzIymbW-8^=jcu6p@gOY{k;r0wN?&b$fKw5mS5S@c_G!t&$p=cdT|L}XYO zY*H>@*f?rs9@qpK4fa*RJEX_nWw(Wn916pLt8QQU6zD>OUw!Eo$<fq$3RG$5zDjH^ z)c)8P`oE%d+Ow*rZFP<ET0Se&_I|d8=Pi0!?ei~2CG5RXdiU~SY9&f5_BBuO4oY%R zvrs5^U#p$+HetaxhRjLcb8OEAKv9tf4q@_qj+b5zG$UV3c&fI;zWNtt+Ta7PQG=7{ z1i>gZp~)Z)gL2Ti?3f9&<-fv=>=RKwcCXXY3=BIX%_bb~;I6SQb7e0?_8K#7G<A=Q zsh?LNU56Ibx@STUUmh<>b()T!(Vd-DL0~Bd9>FtsJRfMT>8xRxAu5&;sh3_@EEG~W z`?*+(%Xj>XRXAKuBQE9=td7mBPw#H=8v0l=q9VcH3S4_K8gCEMG<dpXT-omAN3@iw zG`|F8_jQ&C`|BHUv7yf}=TTC__vM!?ra`JK^9s6Su5hl6L~{}JgET-vMeqU=TfSMx z>(Jhg<~FgIVpZmy5FgZ-r9#*Q5El%xr_)u?RT$#EWi8V@Y!Q|pW;>}fNLU0|LAjbp z?99r|HM6GSe8UD`7riwc!ss2yZt%FIk(yX(YX$05g-zM`p>TrF3VV72$t_lO%P`t1 zBkkG+T%^&(u3HwAr+OY$1T{kZkrsOkIAxltj{*c1^@M6Kfr%ZLH7H2IQMVmN=-KI_ z>=3{kYV40vkrq=h0dVLeU6NS09(h|EJ0=1Raa8SPV5kvCI^U1kBLFzdx%H>+=OnZm z000>96~YXfQ2tYq!V0<Lw(l~tU-YMT9NfJvt#Bz}6DcqBod4<8_ofMZn{OQ?m7A08 z#9N&PrC~VT$JQ-JIf|Bz9Yp<nP7w8c$l7}M#W<^fpmK6Ff8~k`%7YNctNsrb0sxV5 z)}K1O<8^J>dIkUh(Aa7ZRr3c*!#>doJkIBJNx|ZA2;O6z_*89!{a#yH=rORC5aR@U z^w(&M@9sttb!NwDx&E&OLNqrq%<Vl(hHJemh3<`zRsp&3)7;UfQ{U$^UV~m>f?)dX zHJH}{dqX&#wB`}__g-(uYll0)*1n4x*9zMyVDl~iQxw`a-nAGUh)mHy@^s#WlXN*V zXdk0c%AC!Tm~h9`)2?RwdE4)8nkLU%jDt@BnO1qA!(<M<AwiaI>>kPJGr?e0td4so zE9M&_X0(rnR`1eU2KO{Pt0M*Xy#X#O9)RT}$_Jt}`S@!ewzg4QAJgI`za1mSF^RQ% z3+5vhm!vTX!a2V&pSk$4kcZ0m2i@<!ucu3!UdG7{nSlhgOhnO&>gi)X4%O^DrPRaE zi@X=ef~mz7Eo|Rdl@`7wjd|n!pIn0+HMh3J!!`##y`AZ~QJuSeq&uDLGwKsBo*ogE z!ZYCkAhMZq4XVXH*$eHcv8o;VO;vuYi)(iHKiv|2)qPFs+|{SrqYkN>Ax);aJ{3RW zj-zzAbYsE1i<`j-I~M-{&|%Vmk8^3Pezt&mQ^>)VXMilNIspA%cPFnJNSGVK@YeOf z=gZFNNlu)_=rAPHAR!I!C5X6pN#fJuNEhhxC`ura)(rsCllZksFw&J>Em1`z?MEz1 z0N2!-XIF<a=_27gl<ovx0!qj4&+g#u$OX?Xv%sp0RrqnUl3?PzqXV<+dXGX7-<#Z( z8mTOy`rGjxh=c+?rxp%Kv7s^sZw|4^*CTver^tFjJ0t7V>B;X!QIlL;vV@Bas(jWK z0rW-Lz|NS)NBcH2n_^1plAS5|r|V#rT;pxBzD3&udZfUCPGB-f$BBHAB26GAD<Hi2 z4e&nm*r6`zBOF489;t+IjEwVsmeEeU^}aBN-c>=kpM`BAg;RHc0_hX{v?-;-llLn` z)_6W!y{PTLDfbJTDgK)^Q$u`6WWeGA%60pELvgfBdH=%>Y*Pr&E@fvxWy)lG`@FX{ zfe0bx!|8Z~y_s72QX_vNZs!hdeJ<V8t}6Q$sZWS~jbF#O=5(j7*K>^~kjFn+#3+3r z;S-r#{Tc2$BkUs106s54M>%1$djJIACi{7V&)$quM`^S2TQiIs1OHGjcnT0qmJ>t3 zKc{M6_%k^3k07%L!hwxPUR$jVYp~fws44HJz%Ua3mRV)-Vu595mcZm~k5>SSj4E@6 zXlB#HUf8)^9Fc-L!D?Kfuh?zk@uC+M;WIOSbn)|>7hFe-$rIMdw@}w}sP@XcXI%`T zli#k`-2Ba4j4R42g#g-S-qv&M<8y*Wl<{Y!5q69VQIuCnk!MVDYCE$DoZWx_kA$AF z&Xq`XJvIsBey+)M70?Jl1<<h|52`Svt7sWo1Nh0KD~0tkJXsmypN7r9=rqw6=AntK zI$qKia8p5C+suF+5MUXMgZEaG1euE7M4jBgjA^HhMfFWh(mv`oBw7;GF?dVap+lJ8 z9IVQC2_HUR4vgBl3f-3Oe7urJMA9b=Q!*Q=rKKRnFrU|A5e7wh*``#~8oEWSmtY1s zJ`>J*Sb7rD;ZKnCjV`FsZJckr#r!@d3H(+=Qs&ojTnK`n1hbe7DR4I~knWYn1*HfR z+<vUK9&vXT`}nUH8!0npz)s!?d`lym_t<PC;UW=}^urvAv81GucvEcR6bAaQSGq6R z)yRenJUK0nwb(<+yMup%zjFPjMIoz2(7E0SWir4?+gNJqE#wb6@zx32ikEne6nZ3c z`jGJY2cSJ4`$s=DRL?jjUo?9~yx~{|^9AM1H4&v(LEa4`N6AJ5YMd1CLy(!tor?xC zfiU*S(c0yK*NIcH5`!@SWA!0g;mgZN@W@;K*bczv;I=Q8`tBSJ^ZTE0Gr<gC!{Q5# zDoIkpviTskif&HZE?7IOm*bt@Z$ndc<&9{MHOPOShDcH-v)G{<(OV2SImCIl-IN?t zW%0kpRqQ6p*kXVUxHLN^P=YmtPP$3Y#u*<GS)-%Xk0w5G`(_-&(JBGo3I{KtJEr;i z@D6~CIQa}of(9^#!2#-=E#0T6gz;cre+w;cP+$OnrazRN<Y+hu%Gzbv#Ru$Rhsx94 zD!z!W>@w3EPWsS!ti&U9`LiPt&Kgg+FCWx4uZVq7=d)xk#Ta$WQ>tP{Iu6Za(zMsI zgo*Lfp0Zno>6fJH<F@YNwc&5rs{`Kt8DR_X164$WeS`q+kbDg^yz4-BK$rNLrsv8? zA+%|Ug;}HrRVqCekOZkt8r>K=WXah7rh~uqz(WXh)^$#7u#erE8$qGR{!!T-<8!o; zuC<6Vy(hrnH`@_L{7_p7nbFv{FgvfaB0bMI9TKSah5gYZxwMtG)x^GQl-FHo-?-wK zxLNM-3@kn)g;)YR7xBudJa=PD%Ypev6K`j<U?TVFE*1oUA+rezpzq51Q34TL8hP~I z>b$(f8kNOySpTt9w}>7&HZe+@1u$_!Xca(M+J|wx{O#JH>YUWLGIaK^YU)8#(*q8g zc+LKiimw%q7PwSSg^^E_G#;p%4khqs_9=hr>NXS)xzMlt>$4ktuEpM^I7=f4@=_?j z(S;0$PoQ)ectowV13k>LB2gJ_EhP2`5*+BVe0Be2@{C?rHC6oQ)qZzW8vZj>QC%#7 z*&(kY8K9!w1Eo*)R=u^0<BM$f!nsZgS{5jlB9rE5SwS7(!=oyj!LO^->c)ibiId+x z8^XeNyiqvqDH>%vHjdnB7e$V3+ee)TF|*h;+Mg#78MgSSB6S!Qn&~l=-2xp@@hX22 z2x!CCvHvvcZIQn4Ei4Gvf&Y*Fqh{7wgO5k`Lur-N7XdvJT7c*hK}vFqjVNqzd2f>d zYd~VyHo`kj^&lkDR-kojp1XsXy2Jb{|JQwD+K+2_8EXLUIalJHoT?+J+mRpPp-n7G zJ^N<*^v;%8@QYxtqrENLO%$qcRZ)t@Fj5JQ;ZkLIyn`*f03&aaQP^_g1b{HmM@}m! z)Q^6yV9f9=;IQi3Xowk=ATlScIRA|m$7fmfr8>Ysd|9~tya@afLEf<Q+XYL%DzmE7 zD!$y&8>s`Rh)+tw_4UBO=>xN}99c_T2j@?G->%PL4%z*<wBZK8D-Ou#)*;c?K?5|Y zl$O7f#7f$qK4uS*)6}iv-r{d(#Z0IDd&Mb{@i#^NozU1g%-BeHH8RG;;*S1V!nNQC zoW>zJN@>Y<IOWJI?U!c*=DPUKnw|VAJWgM`H<y#71<TY;Rcfw<1$lAlm(#>pxk$U@ zy}5wV(oeoAWffQpGH}6TzllHRbzs328VoDB{)^efD$}jeRyF&IFW+!j0HF=2{N5^V zw76Z!VnY_O)3{a%2XFgq4h}#e{x5DujdIVl<Y5@<0c1VuaL0{LD&5;>J)0}&+Lx)a zj|TT^sEWbuch~kanW=D2=;5_owYhze55iqw*e#U4C!Iz5Idt3s+z&M2gBGa`kED|u zD|JY)rIsM4?xzfCp4XtR08IqqWvfv#7nmMOq}_OI4?Wk4mNy5dcwRrs7pnJ{B2a?B zitfV=VKijv@=`2?j~csLhKt1{d@QsGkz;G{%<-GXXZWBIE}gI|M1UiXiS)+JBsVK! z-Z^u-rgjXQE0bPOhJzi6OZWs^c5~zP)nndFpT$Zc0`JUH3+<X<pdKid2~?%g9YeeO z9`Y}3G3`OagnC&O8GQ)L#|o8gSpzOSW%Q>7|CA|yFkFoY)>6ipK#)oy1%k()UFPW2 zc>4J_Lq5alSJ4Wn=IZ=0$MMMENycxa-f~Wu#UtY2l<P;PVZQdb4HX(;bp_%2{;i-g zi+G?kQ{wujq}5F7D#Uy-=oNBH(}Bg7L|&2lEbwmn=(hKD&?*Kb%`eDV_Z(&&ZM?v@ zZVCSU1g(od>xl~jCYTR^d|@rjs=7RzP}n2qu>Q5yvz9UFlvc=%h}4p#t40Ys=ifus zm2Z&b!R!MPT8Ir=FnS>YrQHPh9MCSWjiq+N7ZK_$#@e`M!_tGko+Obq&upu3%v|<? zO?f)06mi!Eo*1jI8(i0X8>|`Cz%woBPRhrwf)~w>wpA%+SH;!=UcLIUt^N4KuLZRm zEHQt}4>VQ6{5;iP?r=&$`_jyRw6O7~%bL+}v(mE87}yJNm_O%%hcH*LaLJ#ni9pf_ ztxrEtvI=6JLLZ75(NY$n=wwz;3CZt5GX?l21xT3{_Y@V#C3`(TKqZM@+<Ec?&azdE z=E3Gi>?nyHV?$0_>y?F#e{cM7;A0m{BVA)NgIBiJhH80PYv1YXApb-%?V4}8ZF%x@ z17!?0y##guF_0k8R-(2pMA1mtAdUV^SRT>g%;D3Q&GY&Z(sH^)h0fQXolBG!8ILOD z#TyT>v3ukd4<udVm8Q}oc;FNgnQ$aA!0VWSte)5;B11S|4wB5P-x}(r69XRiI_S6` zZy$f!y<_<JT3rc#45u+nZd#ju;2}{G)_JIXh8{WbEC%@G{iv)NqxRx!Sg{*Ia?dUQ zafc<f@<J87<Vy8*)?4EaVn3fIv<1n_uY89-X6dGVBu2$CeK`A2XO50Z3F%$WLHoL8 zhi;k`fl00@UwoM$!5cMd;gPOjKtbGfP&RoLxu7RF{18zikSCAnb*%5)l+`Sz8)L%; zW^ze`A&!;g^?NPpo%_*liOqSRFuqI7qoGs?{b>okKDNcM$rrpEIs9y`Y(uf(&lFoQ z=ekG4u64CMV0>WH?gWY(C?zn4W$MLWA>S()TNs<(QUZgW(TA!P3%vvd0OTJnE0V;( z7=AKZ4pwzvIbzcRqig|U|L^x6_jNzm>jM*r*{v-R03t5;6YC#Jche#(B{<FjKG~v{ z5S!odXA-2}({l=+;jcG8GeWZNA1i0|um;f@h5Q8*mG=**21}NcRwIqzU?I!B-P|V@ zGP;@lS(6Jy91jFB7^gVJ`{)o^xy{fL(Iw(~GVq^`TOJ9~$VUxgy|M;0b~yg<Dsp^4 z$OU`WbbVm3`yYHety@(M;;pe)A!K9bz40m*3qF9#J`^eiv4g-siFRCtb?YF=f>nY2 zUS?>cSDb-LN;gKl2kQ6dF%KaZf`ENkye%2>p-wdO=_Bg!eSTUIr*t>Lv!oXz*P<~( z`B6|TW1fBfJ*w4da}Sc6bvz!KzhnH)FMMCP#Lu;5)cy(xOmq(JB8!oJYwXZwM7)b# zD`5(2A4=ly?x=`z)H^TUtI4C}7yyDS4g_Dq?4TekPN}(nqS9`k!(9~#i2|A4_U@-M z8SAB3FSsXoiNmgf*ID4*iou61i!;8Lnl>51UVK?1boiX+?49n#s%l2Op&ZQ%yJ~y| z+PsmaR&J`y%(HsSm}Lhi>{(<rw(7PznB&dh3N<Y9p00j!uE`t%v9`PN<|nCQQov<_ zX@<3K#yefEfe7$P3wV%K5>?f|<|pKrMWH^xn#R!e>(8KhN`#Lm*dpmmd5vjI`6NJf z{+dF!ObOuH1#h;`F<s3!-d|~lF~XNwN{2;LOHORl6LDBIcCMfsWYk>vH+>Z|kLt_I z<6UGKG|?%|CRagL|0{u`Nw7kP*PtUrh%f_9?sJ3Rv`3DCoBZ^W4)PAh)@nE@eW}*C zPo`ONHj!GN=8`k5vD3*Ii0Vn(qd`yNXt_VC!7`dODEgP~=2?fEBJ((X2h%rhMLbP> zxHPo9C)0xu5IAw!B5M?y<LyL72s|riP90EH<kL!}f}5Lpa)KCDVEiDgiTq=~svZdr z2F1_U#UkO>ngyLgKpk&NS76s-_(63m$Ec0@n11}CwVlKS_Ax<At=-%-D+*d;gU~~& z+D*Iz@zv_rlp7E7=edp6SMqai6s(=~-eBlF{jNC=nKPVN%B;`Cf6InFDn6Y$F>uYD z%?pcdT+Adsru*$>?9u!1)q(!&eCe_ut0-9aCT`y6{SSycg)0$%wB8;Fx%g{ngDr~{ z0Mh7&d{sotBOK>DZoF=Jx0_{B!HE9~0xf0(4DmnJv(EN16v-p$v$!B>MAVJhtvTlB z2>27|phUv{yW!{S2v}FIy`)Db4z2do??}YM#jOgMmUwk2UrgQL#lHj0ZNuE~*UF<? zALl-#Wp%;rTuYWaz)OgEYYO$;Y~2YPo%*O>4SS!7|9&P!_s-xdkqJZJ(LFOb#aLs{ z@6<hHa5I|K`i{7}`=CwRJua)x#w392&h^}Wf=aUna0aj&X}xHgQyyQ)3a=@{RS7VV z#uR{xO?Duvq??t%;s{<E=hXj@0X^-%N?)uX159h)WhKXdLiU|Oet+BBBOO5vN2K?0 z5i4Z+LPHAfFc$#cy3pBArZ<Phlq&yVSsijOcw?M=628nYD58__5y<u8I-N7}3L)FU zTY(LBrMTxBUK9WVjfe^Tt@>Ai9+DgGJ6GYz0@F#_>QE)$yToE2RrPHiYFJ@$#|SV` z2|zRo_-5?QLTF1$KQ8LlGfg$Bl8_k<=GPAoFT=#p(5HMJYu1L3j43oG>3Kd4^A{-j zT*jryVe@Buu=Sh~c7>8wJgmv6#hoYOz|d)IvXHX2QcSgi6{s0~KIj9U#?|2O%yZA= zDS;s&l!+~9Iy`=Cw^DTt^jh~hBhA>V&3NBRAwk|ByrdYZ;}g|-EF2*<@ys~78!ka1 z3anl??ZQkjV5m3tOhzBa1D>T>lzag8@L0u?XyAQ|lpkQ8x$gGhJ*5}*i3$N~F#*?q z{$Opffl=761k&1h{I3<5Ul!Z|fG9P@QJ@X_lNIZN5#U+EY0NF2u?M5XO=CXlg@?pY zs@IQG2K79$rP(=()KJF(Z9f@dc4-oz#eb`1sk2kmaUW%n`S%BaZtt|fT=S#@ZtXR# zKXFArG(2E+@5>#uI`|Yh(_9>@rjW~1hCY0(MT&Hwh=Z5~7MXT~&;b;0{;=E+L@B<; zKa<jV=_*cuPI2UB;`mrSqh@v6(?nDX>J1F<ECjIR;7`FKp%L3{XQLNdfoUi*fk^Wj zftw(N-6(eRap~)8P@t@{VFNzng(EP%m**~lL9PuEnp|Sh*d!+!s77#W<|t=PV>Pr7 z(8%-<za5CADAc^u)!*G)af}My^2~mC!a6o$eiS7b6>Dw~C3t7X0&}QPcjg&2URxIM z(Y2Bmu5lCT&5-r|m``j{6aT3!Xf;SV=7}E{TbBnGUE!bM?L>wTuA|Q+qoZH?vEj+B ztr)y^MjcIDCn*Tw|0&%5Ifr2s>dt9TSz+&z1o5WWi<^?PR%_ZfKd98iVRpwJlF-`O zckx7T6do?PlI66DpTrHH#B?P@Soe*`aM60suTEV#r|sb=J>tHoA^-se67r!riX*A{ z&O=Vw+$29WyijbQ-04bg1_FLRjQeD7$qjGa(Gejc^iTl_0*#N81}zK_<yu{TQK&8Q z=>6M;erK3F3XNrJTj23pQWFJ0NyQ*-F)p03)c#eRD4u*HywA+@_u4o#==GwM8~XE^ z7GEgQws(%sjcT^Bwn~I7eoVS3CE0L4wHY;)P!a$)RL={qinln^OGQ9`Y}MCG^4uIr zGY;-a!4suMC523v-vt2Qtv33G5IR$0OvV=Pb`W^03z#`9j26qSvrz%2^t(XjT^s5K z3Mb6}rp<Sd-79LObvDEBe&R3Cy}j+c_TmdpRk@C4LFlG*^QA(eH?5%pb+0TqCrnxB z627>3sKI}8asU99H3=Y?&wm`k=Ly{99_|UEDo=p3@R+9;<Jd0{rEo;U7Bust_!TZ* ztp(S;{4!d`{wD?nh}kZKv>9i!nVVd?!?G6df;&!Uodzx~1W6KFrLdjssL|E-IHzsr z?ZNI-joN=jIP!O3IWLLPCy+Hhh~t3RjnnXrCXmM>hW!Nqh`nyA&Ong_@#|^A)bpwL z8_6rt*47ujHcgg4&9K-xZH-ti|DJDEsax@&e|?UVafSzv6^xxZXzZ^3o8FsfA^5?Q zD$oq@j#5h2MP$lx{(dThWa9w#bf*b)eGcCdy3It;bE}6iFygF}fRy$3rmEXUQLT4s zf7!gqFuj2PJF@lQfg&7k?<=m|TQ@BTo-nE_)?ze2W)U5)1(`c&NDhT~IQVDF$krt| z2<>{*1>QdO`eP)&3p{BiP7|$>Q3j9trounAOI2Atxw+9p(U=m%NJ|jy?~S;Eyso&} z`H#sSiZ~9Bo=JGnCu&I7?v_u+K&j~zJPOIH`3VwCfBEb|_#18AGmU_L(&jbH-GWhN zm}0}GAy#bh5}Yvgi1%X0jMoDxEVglzx!PPUipf<Y{Vv8XJ~z+P00eJUVaU7}XB;UZ zZ}=?}B;@c$8kb&`px84lbKr>C8HG>kS=7(x#ffmYN>ja_`n{s_COh3!;JRQMaRuW; zr(~Q$%ITjrQcf$n#}&=hB~_LHADDrbyc_TSco$+b&1r{#1y2YJ>dsuLKTWxRUHl#s z1VoZNx*3G1P(f8&%2v#mk!i0(Cm^O?SAYyGdfH7q`0@Xxkxb9VLb=-l=-KYP4WQPH zk&gIK0}WhA#9EV-YSc+!nFgJZDet>pMyfeieE;=JP`)|Jmw)&<PI&aULFv*-H6M+% z<schWh+BN<=>UqLL!M~(h{(#wM*LSybrndnOThRqxTtvy-(@5mBNbk5Z=q7W*ody2 z=wr;f@;;<{sx7m>aha|oOeZEYDc*$5uG95X^iNck($N`;@Kqp+lFHg#@eA}}eSj_J z5|CA_;QhZ!<c^dRC}?M9*>*ejqwl0KGD2o(cj|>X=(zHE*%$}@VHK=ovf&eL-r(ZI zmfPyOE>ei-<AL4>%H<gMxV(#p8cErd5OLf!Yi?Q!R5r=^`yVnLdudX8_GMi@osM&3 z&?d@<h3FN+(JycH0_M_d#}si_&9?L|ep8(}tkN}HSV`6u3L5c|_~XV#h;33?>gOuu zHu+n&?oU0VIGSfxTl?%&A7Dc@p#HnHQ-Oc!x&GG+af6Y6iBp)2k4mngw2i^A&5?su z#*j|GbtJiGg8?$!Z@ZiP>5w!ioUiQtPEPul1Q}LZIc=b&0sgT3mF&=XS-f=2EYP<) z0G(zg*90P!AV$g}djo2?Ycc@cPJovfVZr9NO0e>+#wN9*hh#Ry-(cqI;G%mj?0x}V zn3-axzPmRhn1+hJMpkKR=tCQ0l;q{pJ1fw?HYnCMI-x*+=W38ak9;d}pu{|Dsv$9) zkkBxB+mQm8+Gc>PRG4+4;z-sZ#zvplZmX_4@Iu@(LEM^o^I-t)t<Ks=Kp6f>91ig8 zWaBO|02Opr?vfO-LI)Vv&|<?)DgS(brZpg)k+^hU$T3ReO!nV!y_4Al8Hk$WjE>*+ z>I4~9?F+@PIKe9G=lfXkYa$kJ`f#+ra{UNSvHF&gb8$aqwF`$JM<?YlsQPp-%$<1g zr|EZHyM_n+9BFMSrQ*A-%fDvmt=B8=Tj_}~WF}oE&L=whsA9&a^z?c6s7LD`)hdGO zXLc+3*9zH>ap;MpY)N#wmQd<4S-1Toeg#e$bJWHl+hXeK40TrY0un&y0X^RtUo5&h z$(Oy5X>^s~K4oD-7fU#vr-gRY6wdf6aXo;?xP5A>-vh1GcyhtVfjP&^jxO0;ZO_0# z&NRVWoEx7`|F!PMXeC80BOZh`O?h`Z(g~E_a^S@osV>T#O}2bT`#sizvkJ~e(O8lU zKbBN?8r%aC!E*x5fxQ^LJ{snUFTqrTkcs*RHT3pDsXD$1OP&b9%U+YF$K?{VejVuH zO<0w)8B1H|9~>B#-Ud`~`MuJAkrK2F$Z>h-Qn8sAYduKtY0VI*moHW;OQcIhZUf=S zYFMeNC7?a$O56jz8{UGl7B1j+@1e#7!^*V>a|mc9YWQs<lDvS=UT7OD^r<;k_u;P1 zg%AA-#}TT7G2<YZo$`<`FF4sf)a9*&D+HheEowSrWZe-}L50Y1+^b8tLywW!v!Lq3 zcp=p@C6}!es?bMz(|KxEqc;pDsp)>5SEGV!eJbDX*dgB5MBAr()cLc&qlXTK<7ARR z+WWJa)_c4(A%%m1*0;4@dYkr9mw@p)R&^jhJ8{nyb5mWgeQQlsPNy9AzWsT-S~a0N zI&Lnm1>DW2v0cS(lKY8hd^Pd5@XdsybA0+)7=F~!A!B8>_b(Vq!Ds+Bm08s}*TjFs zcdH@Noy_$*i<&!uq0C7)!@n&Y8C%YC1Ca@^UMQs^!z8Jb?G*G#r@fnfZ9HA8mvXrr znPPwzc5AjdUk&AJ>n+{0e;dcvBH7R*8BX2_m$e~Hf#b+GmLsz7{Y|y)o^D0sK%J@T z^WJ9p{#!c#hli?uA01+4tMb`=yTWr|I@2SqFxkpE&_SKH1>J-u^dy)Bp$!GNmW_u| z<;lSAC*23N718SHY;E!zTYx(2_{`!~OhjceQ`P^u4fjxi>bQS2KfM){8ew{Uwu2Z9 zu^KoKZuMEhBWBYQ6xG@98PfUvbD}tMs=yDtAw(DQRY46qLA}m<JhMIV3UzF$`Z3Qp zgl{FVEIW#(N!9Ubt`wM7%A+RQPX2(7YPo!_#QlK^^l;H*Q@3RtXQ7;ks@~h0djOaz z;W*==p*_)MUjFd5)My;wpPR2Dm+tu-(wRT(N^cNUGQ2W3Aa{?_{mM(;K9dk1JMEuK z7j5It9}fgfV4i~Nx}txYK1fGo>BP6qnNS$4)2o2;TyiZw^YZ^K*Pu$WU?11;n_AhD zqBYE@o{3pZ|EbfXt0fS}b>OL5AVsk&A+k}FFe8)Wh6l08kR}J*fazF}_U48lX36JV z-l&cA5WNpdG=KTl`PyXjw4Qh(i?1L(jf=WGjv}Z9uZVkqk7B__Q40ORR&QGrd&U&) zH+<^NH9~hz?;_*=FTj0ymgAGLT-s!}d-aAyqKKj3i-&=o_TVAxXn41d9tIdtX@PoS zi!j286{>;VW7G3b%5!L4`sZ5;+>Sy1zgU+TK2B-GxoH>d6}dHLpkAkKDNipQGT$kr zF}8XInkR%ogFz|0LECo<kpvXJL~5!Js<9`0NTbi`WHs(ebzbM#`GqI>ngF_z^pM4z z_KEDjO}5BgoK#$cpxx&+t4#VNkf?cm^iC-~e(QoAYN~}F5H}K0EiTnzQJH_{$Q%s% zjNfKCc)X3EA_j<|Ig#5ATAp#6Je|mb*ibF}(m*GJq)q>&LMuwhuT1Eb)-wGDi|dRv z{++8FrqQ}BB`(4`(kz3r(ByC6rm`Eg?Avm=NX{_1;aB7&0~)e7-^EU6MU)AaSDHzx zWf`yjyBeZ4YEzZeeJ#B+8dXP%G%Y;hQ7oRSq0wOqM;Ue}hsPLJ5f`KDC}sAsV<+Ps z3Af2kMi%!*1vxkk<qT`yq5PEc&fjF?Krac0OH+;M9X{{j%V+gqWTA5>`)^KO>0`&* zcgj`HK}S(isz6=8GMrzcSy#-yq0cHCKr`_D(x|m3+;r#_Klp~adg`=CoOoOs-gG-* z@|=SiS_O%JPxlvx!bZCQN#trt2EuyU8H4Q|9)$zXT0gIE!orhrn-6sor8=%(is4>I ziJtsPQ$I(9b4ubC-$Yx-9EB#e?OqsUU7)b>{bm=59pkMI?v~U<NgyT$qsh;C#LJnf zS{eIqem;^t?aiOZz?gyhHkS=A#`e(DUMJT%R{o#&QNQi|s*h!y!R4xcTLNH#<#t)$ z=kK|{R6_H8V2+f~tdAiiXBmDT&suQP<?>ky(WkR35zSW(;fKTOlBjHPvLX{6x*fY; zlc(VRe_HpjKWlGSH<H~I{-z@hn$*b!3Kq~WCn(G|pNir?qO4Ceo9jh?wa7w)Nx9)6 zuWBp<G^jzdFhk}z_2$suqh4&t{*fn~1>&;iXr<@rz}{VaXld5U5-^*mJ0j)lY}$GQ z$r7g99W<q1;(8@{=85U2at_;BI~Uv{5~`mb1ArYi?2)VfH?(qou#zKu!VTmin<=F7 zQ-18cw|)!28dL8$1Iyktsn|jdB0L8TQ8iFhconEQt&Go*K)6Vr6FbPn2NJ+JYJR)R zZ0G(IpaSj#ZJAZzM3QDe4^g_riWrKUfll$_V2WGdbS&`Z89@f%N(Nao7rlwVF7T8& zZghK0CJX%Zt@vNa-eMO~q;kW|)-i8u4aAMKzhb(X6}3r)5htmgN`RX8YKL$nAzyBq zs7jQYHFQd*9K0b2#CCc~PvtxrCgl{2;fR1^YQ~tJX+%|_lXy103}5WIFAlMU;4!#} z!u3V7wJS|JcT~{CbH5LaU61{asF>R``6E#sh^0^s{Hun<10MdOT|s{sMC-rCSR<!u z5>xbv;X2MdI$}Z<A~ucxHX1*?B*X+bzLP+g+tIajm7Z9p;w9P78sol^3J23Q9v2=9 za6~`^L*CN4dFzo*YTCIdPsRoY#_z&j7lUY-^acc>{(CNN)&Ow=E&y1l^J(x>G)IwC z@s!I$5D^NiG^v$8oPS@T`nQ%&IYS=V?6Fn&Ek#K~;F6gz1_o9(`WxT{Uc5jSNqF~# zswhMX7y#y_X*>YhUzbA+>_TBRfsm>EYnP=nh`;uOy3>bO5UcA#dli@>!1A>}srm$_ z-kptZvZACi+x%56=ONF-Il8SZ#qO0nM2%@|VHYu;*g~uk`saqH7$KQkyw`8KZ99e2 z*q@##L~4X;e|hvr1Wf&hr+w*pd3z8Hs-<W#`g=LcwBNGxLIWxlspPusuauOQa9;Zl zO2lDgP9If)Z?&(nFn2=cTjt>{_G#t-VkJUp!c?d3zC4?aJH9FV_V#FN_vaR6RnM#x zMQcdBnw#W<qp~zpy-mLTHIhHnr$9;_w3;e6Q*c{|<Jr@e_`)ZPs@ohvLWQw*Ic?5q z`Bd-hFoA0z02!1GBWE2i=0~S*YR6(g7lK#CkT~h1#50;j{u}UQWSBPd$ch(B@FS!u z{+6v4WPE-G3mF9cDJi7?(PUR0<$)jJ)jUER?l)M%V$%zkuO_-pB&niS+EmU@JXEz( zF1ky2adzvG{7X;O-PDYm11Ulv!0W&?_>OTky8q96*~F;@7cTeB_(cDy_jJeRqF9h5 zS|nX$-F-iC5af*3o0}_Q{dI}xq&s;4${9E*D^S{k$AQ|*_{`!VJ<c3eW<cK(qUU6l zLo-KqQ#sExS=3sak~2yU>&WPwEQBlnu!SM#;E2rJs&zKNV(MxMnC75SCGXsf*51YJ zp7-(*c*K`VqY9rteai@DEPV43n+0C-=Ug(gxY$^5*H0Q?o#j;a00{f4*LW4O2tb<8 z_5{e<{dFHVSOY@vL$T!&WuA=$Wm}!FArTPl(40<G)^kJ)w=vd^E&HaLZ12pTLwCmu zd4dj>6GcXmV6?N=$$;(!B1WTN8(0J$T8Y@(=Um4fc#LX%X}}?76smM~wqCATw{N27 zc>?D)a&4XyNEX!6bEd9*2G(r^2D9-W5k+5`4+m)hn~bS04zR|5nT_XsGl4OWHDE?v zeLroA`9_oiWz!!CjomR7v3a8e%og>n3|vgB&Q>{EC**eSp%9cL7<^uEw*65Ik9x{> z2BaXXyQA0ok`YT8UnyOco{{+gqC8+qBOt>MgSsiuHsNqb)b7hga3n!<-U$BDL7FB) z8yDB{ZsLaXEGOU}g3hcZvrsYe_mivTo*EZ!OEi4YJ-1Lj-S)hq)ey)OcdAGJF4YQ0 zBUDAZz~L5<5+^mU`cuOa8Gh_`cT*Fo>?C@*IqcJ}Ely+TQR}WGVz!?XzWeInR=bNB zZ$$kH?Pky@odyz%KPoP0i7LdJ8V1_$@LtD8d>(!xlVzs=Egd~1C<kFEYGN9ziF&=u zQlna|Zi%ExGhB%H16kCd7JJr5v*Ow~@<<#CpGqV*I9xPNoUn`<(cq?(uCU92<QqNZ zt?xgRz$}|wge7hWb%cJHul_tOERyQ$Y9qG>p~H3smnJ`rGONazh&(KnBcNw!9%f|g ztJygU5#3CaWKs~y_cH)B62D~sOzbIaLRRo12Mc^;irQCpNIEuUVeKQO+HBWbcZJsS zM|*8O7xd3aPv<{r?BLdPUnBf6)0u}NiQ9x`*!74C?p)`Wb#XeCa&jytlTkUmIcfo^ z!0aH)R}9F_8+$D$;3yO?PL|ACeGagHbubiq7t>C>+<ADj=L0N`2#Q|L7n+hl&A&BO z#&qp%oDq)v9{?*r)W1nw%0VB6Itg;Um&;sj8oIV(e|h~2L`F>ybfjPC;{!j~!?XPh zq11c1ecjI)y5exPu0!+^AG7frC}Q=u`eV+WU<y_&R}!62Nm?*>f=RA9LB<m6pQwl( ztGV&PM1bH9N8b{Yb{|6qu$^bfoytJOa+gX3(lOL)mCrrfSd93y<DTfyZ~iRYsj?B@ zg(6-$id7_aO>3ee<OhV6z9BBTdsT*JUYICX<h>^)#|EDR_3mWmyx5MHwL2%#H1p`V zI$r<`@Oez$mMxZBAN1d8X(A>IRk|sF>MUP0MJ()9Q8JL@OG3{UYw?nSbR3jqQ|7B% zMMILoYZxK!8J^cQ!#t1zkVMe?6HQ&NSO;S3k?UV7!k{%1J!XxE@Cg8f1H%~T($SG! z=R_Oi2Ln^&basw`?x$Tb04}^J1L=pdYT56kHw)>HZp|yQ$PPOve5^X%!s}i&F^v9% zN)3~avbz{P@~979<WpVj(hr)CuP4q7KovhzRtwRcMqJk~lsBySQT<2+0>8C4ok`gl zfmw%GdLvy##0a(-2-4bm^#0n#?le~LWI1hXCCJSjLUL9kks}|`eM!AMWZ7|L-rMs| zb(B4gN8{OS54s_wH#}Ai1JRFNf8HUytpNEaF*bjb`cOt-t*A~&#p<^SV&a#6b&yUy zwIwp0Uok7ObKB<GVb|dijZ$YZ%NtAAn_DfzY&)*Os*@p|75By(hT!v`SDzuZQ4P@+ zUVWYz<t1bP?EQDlR)Z?j69E!ul`92Si1->me~?;nHH8&9W&t@uKB%{>O-VbX$5iII zZsr6fT+bi9fiEjp@x>`G151Q5{*{xZi6qPXbzUClSKquGBDGD2CU4ppiMO-WbC3YI z#k$<PaPMHSn>FfL*%v-ntRx0d)ER`6VcHNf2Cbqf|GsHDncVOCL;eJR^GER8_=T<3 zng6Wh)pCFJKkw48{XoX^@c?(6oga4?bR)^O9|=mZ_(H*nfgbq6<?>R}fi<&w;Z4f3 zw3aSv6+U|}ua3WYy_IRD0dns<!8Rgrl`GtZk_*dKdJgQ9m+$}D%Gfgx4hN_%v68?o z5s-(q14&8*KDaUX=PNp$sH}Oj1%@M~GFR=o)pdtB{uaJrsgxlVfSSGx+t|#kU24i= z!ifBgGa*fAm>~BAxWm&IRHJ`jjtKCILnwa^_)xu#C0q;)QbijE>B`5(2FxhqrB!we zXNQgy3iq4W&WMYG5iC?aLyvUpimBmVAS3V9OhqQpGf4%LrJ1%P<79(A2o1P0(2C*w z=t%AKVmgDLyK!FBKrK|_#Sv;!7IA2#*J&~*3R32yij8>=&O<I_N4LsYx6@TOg*AaZ zyMabrTtR`x@6xV*IlIg?1#dqDCrbk8b;dz0bJHsi7dcAz6viWEz=sHeT{8cf*>ZGx z`uMp<$r9Z&v4(&}b{QN-1Z3AcWD&QwQKXx9h=ms}fLb4%ot78>V6iH-i6O4@4t#Mh z`)Jo4zGoe!ZYus(`j4gp|Er%D_e33JZF|8zWA5HM1>2-90At5HT-f?Q1U<TXBk<Be zg`e}W*5!=HfGp(2DfG=ezfNYthV2)ZH8(VWA7vKx1;@K01o(Ob>hZeu4M0wQp@92i zDdi>_^R`*l_gSp<5ZJcR%QKs9q9{$qts~aShf+Ejzcf=~{Wy3v<BOQ#{NF7w`2jx4 zfUlQos%9Ij{;od?qCb0{dhhsVr*3arRJ1=YT)j(LtxN&4L|0@!%O1KIUG(gXHGD=v zd;e<zcY5NAf2~XdNqi?<I~ZQP|0U^u8a<K#iOV-o@t!TwMWzZZP|LaG#Tqzpc0iMc z3vrM3#6*GodJpX`c~#gLd=9}Ueh8gM{jYcQns;$~1TGb-mDD%}-z@>Zhg6U<wNo#P ztxSWr!wkkgjz*6(t{+GNb)@?_QJ@mhPx{YCVSGAjLzO8-RIvkb&U@UGV{R+3ww*qf zKYkd)w?}%6Ea?seZR=@56!2%=$sZo{DES@GotMmf1<2@WD+UUKjyEmT0sG*5%r?=J zAi^tzCX>LznE@+^`L++Gp&|g}a2QPZk8-ZRk<8E5wh4E)WQ$<^)Q=oWYQ=rlBPyE0 z&#LzSg5UJPo{9Kt9)mOPt-=l%8R{p9oPX7j&ss@8Kx!iscOlLAb+^r~J-O%fft^40 zi4$=fS^UQ0u`_pe{?5LCVLpm;GUQg}=Hel+@y-6tA@&M7^7S=?k&tR5zwlZDd!O$e zXmAz_9RUv;kSSOf`!=`8AzBHf2aPIVeZ%2GIv@QRDWA{g5}owj#2i&`lyD$53DBUN z+U0gBqF6A_;XC4BlXa_g5ut3Rp*h^k>R@gVnDjp<(7PCJOG^TB%QI|60rz=H0m#Eb zzj`XWrlalDEA_g#u4!E;+>ht-=80n=y|ip$gixBU9p()lg_z`g(&D1O0W<%>z~jTl zxNn)zU2xWOH=JobZxmxqlI~e<cAIwB3n2T6?_7|&79{@mci7xgd6ORqIPMr^+wmnI zs0*8*I=p+;tE10?dL_`>pLJWh!+@<&PsdR;_(e0{KUb70u~Y%-LOa*kPM9iMe@k!W zbYsoa?HLZkh|FF$d2=|N@J_1mTL_I{X4Bg^dV&vg!2_klUD2Of?<Gm1jm-i*h*79A z!54!$_gH>~4Wn`?(Goi;VfqDyA;P7kgvAK)w#;qmNTav;pkl#bE(Z`HoRe`%m^gaa z+FPw^I90*bvG0_^4+y~BsnnC3UuKAwB=D+vB99tz_Hl5|vVc6%h8gQRb(e#@AD=8f z@1dtfsBycE8OVK#OCQoPd7O<4PyUq(;raO*_$B>BEq+i<I%+m^w@Xpmp`{)HB%s5v zcarPjpKFXMoX){5DIAvuM%((JP`ydV*z%f}%Cr!=CxiPyT62%YjBks|GjIl%vDM0+ zbtg-~v!X&}i~E8!vq;JV$R1I|$Cteej9zJ4o-v}8SGr|6sfDYA7r}ocGDYiwa&y>G z8S$w*fH2qlJ1ooDfDRetnpu31jW$T5+IR(aHfYgS9GFylpJqu5;`upZyXcYN>lp-( z!5@~)-AM(BgnBO8K6P$grz|x77u0!f?Vdh6!CE}wa7wqkSqCrWZGbK_d0C}xT$19d z3cJdx&HOjE$G0*T4`8*(^ffaF&ePkwkK5PRnYtI<1>N?QQ=+HS@gE?|5vdL@<p()7 zGi;BpDeS6SDx&s;Tu<CK2|LS8xvQZzvzV<RkVEPky5@6UG9z`lS$DVFpo-eWc=?KY zH^H!E2S~wMTXOQ)8O}<tgLS?Pc4TM$`KZEOqm|$wYx#9U@3gM&@;5kb`b_%{0va(Z ztMqmt7D0)Op`I)JD0!|0@n>G7iNS}P-hRaY|NZ$tn>%S(Qzi7QUHI^VHZnmqSjLD` zpgAt-7%cy=&q_BwIguEtS!wiw9*Qeo{bxU04bn}-&)X5Nu14<RKkI9do@q@B7?o+O ztRL>AHQQ6HltSE!#CMpL;W3*r*!}P)i>DYyed&KwIr;>j|JU&MD6I&89F%rvUK`7H z_Rg{B<>Eo+MK!bY|LqZ-X>b#))uNbHmZto5U#HxDs7>ATp%4ZVV)p$tmmi$5iOJvF zB_b@Ibd`Z9Vt2=VmJmf;JW{YSE6{>grlX!~JXs(zt_ICmQihwXHQ0~UTVkT{)hf0s z#0$nYk;<yTpY(bEc?~g9)v+nq*}qrNbQ@9bI)WdRsxkB9<RUl0>)6YA<yl2@ZMi(H zlXZ5*2UZjA)z4ccl^xIanJOU70Btr+g)a<hg2W-UIl6x7Y7J4voSfqFHNfN!Z9XYB z(?jCC_C~Rf4br{xd^9O~#JlRM^c<5T^PQ;Km-5rXM!tmFvW70K&KP>FBS;SmfkQ`% zWEuqw$=i2`MHrtw{?Z|QKCZX%qy6#(K#ZrJ-v9Vj-;p&!(?8@B_~5MBx%>k#(3o`} z4`BpsLilkGtmA(NZX}Kq=l^$PwoMz+0FO$Ydd`SL`_t>v$HvRt(u=*NPEzPu!r)jE zM#h(F@_~Z|NB`RSh1-%_I!q1KH<Qx1L`rNbx5G=Z-biShjo^Jz-0I^&A0;G81p`Z> zsvDY~{dZd@Lj5y%5uBxt%+3i(G@M)b&CM5ytxnMt-%2dlwd7TX(E<B{vKWMi_=%|a z(d&ZWc>gv8@9HU`wK+d+Y6c_y0LH^>+5$}QC=F9lC@@>|PZrbw6F?w*v74~8ZE>oJ zl&=8zshoR;jQF%h_wBpj5#*gqlp4$zTPy+kvHB^y(ChY(2}|hDZn`BAz2=}-q_Bnu z;PvDTlFu%;f76S6(I5?KuZrk`>3C5F4;B{>(LRUY5$RL_{&VuW#Yb9FL?H)Xi`K&1 z_#tzSP9N<r+qA?ix!P~(1DLb=G-Eloa63TA1RyH?0qdoKg}b*Iq(`vO#v1$oC5NRW zFc@X%(7PGu_bpQhIg9e}#2F&$u@+{7)gnU}c6Tp?DB8ALJU|o4m|rHz8xtnh0fej@ zhv;R&DAI$R2>H-0*33AuBD{6JZ!~weK1^1bA4p7={QRU&`AQpZzcvCibo@l|YCnYF zi+^z@_sx7lZ~9fVTR6Rv(Tuxz6Sj@}kX3H|>7(dCd_Nj0%9f0CgNyA=%V@6Oz_=`2 zD&fxU3EU=<j(G|?Zo0V=4q!CEnVx75+UVp;+=9Enkq*C=#lI1fMZab67f|(ZTY>ES z&CWfR!_YHreEEn8Wtqh&rxuPL9U~NVNJB!~{z-HH<z)ePhWr7i>uKiDl<EK=TJB1z zQ)JwVGzXJxJ)mk8edSkI+v*q1IFAxBa7Krk2SRJbZRf65l<NgOgnwR$wp-eFBnL&! zSmpcK?~dn#aMC9Lp*wlb1}-o{q=Tdyr^WTqU?8qVr~OSq2vma<bx_?o0%F2p3pX~c zs_w2NSO0Mb@wKG>bv&GA^=klTgnQUwz_(!%GEAvLx79`q9D<$6VjHb)<zf;rP(qGN zL9yzK?eXUPHf%$LX~@hNOl@(P1q{4P^fiPR1)ajsAxc25OnMxrtX>IdC{YBa$t)f` zN^(`Vj!<cX`t_P22~c!RiNI~HfK(-JznGzC0jg%86`YgvT=;&H4{bf!JfO<st6IDe zCMAgR*L@q^puZNKtEis<lBp5|a5@jllbG6)=P&+f{c0MlAXu9RW7>(b9tu+{SgX3f z1}c;EUK(p%i*(s^_0e4x(GQ`^HOs+f?&KbA)n_DfjOVK89(@*`h+uAq338MQyzIYy z0-}xE;tk;g`;BjKZP%nEOQ9<4>)7By<AhMq&0h#U&$Zm6U%d$;iFgjj5*ww~)If^( z6u5MN@}={begV|NSA|#T^xKsK69@`}Pe_LT5Rc6C5w290A|vT-*Da4RnZv!XIY4&# zp?-OWp6gfMj0A_pfA3L+z3L8XK(N$##WqDIaIsaxRQcV(h)o9ovt3=8({3}^Pc&~f zeF|orPO#&186|E>J*EylIYT;Y!+cTrqO0Ay`_c>kE$ipvNo2zdc0qcz*Wseyy9P#^ z%2I}1!}xOg@HVYZGieny<B0K7M`)RL$X2k-Z&U#kAZp@P2%@aFJa%2v_DinH?ERk5 z+hPk9%(Su6V#Ez5P^-oPZ;g+3L%!>f=Cz&6eXvm0zIo#1@5;4&U3vD-L)fa{Cb>JD zYSr+@vP@{7XC)6Tu%Us{K`jEJSbsLd5Cj9|xN`kvGm3H9%rmCAgF8w_C!Lb8&n06d z0PWE>M-;bTu(O|kH8=a`2fqnt0Sd7-qLFqxF+1*;pQVRnA23IisXAoglcm1;Zfc1T zC4yX)GH&$m^po&DF1IFwLR<150`L24iHvT))Qq@0Cb~5HOaZdDB~?K*d&cr4870Cw zep@=7!YOaZ{AKtdjs9GiFl~6Is!t|6e~4JeqRjC8<6sWa`bA>Ry3c&B+(^V&K<)gn zJO)XAz>fXB=^yqD1rJ;jK$DF=54}_M=7X}9X?MNXz+EYPy7kN!208x;5ZS)Fhz%4C zK_M-Tqq&XpOFa1rttaqr7Gw*pc|Fct;4B;Rn!By@ziHMucg`iFGzUCFnKITD@YM_F zYkl7+b-;C-!P?W4MqFnDE?{@Kvftz4lMg+3h@X=CP&=V0mG}_(yL^YRBXNk(DCxQG zf2k%!kkFEzyG-}BB_e!TPHqTsv2-{5M)##myP}oL;(}zO{(`#a(Gex7T*LQj=2UQW zyAwHk8z5v->_om~5ps})ethrp!o~=36+rhCyk)Ul>W=$TBb%mJX(v2^esR=9E=+~z zs*ME}($f4CuBkX5#AG$!i6BR$V0BGtv`<lfP2eAsv8#`CY^3a(xwbZW?MAlT87loL zseeRxy^=&`q3-Q@bz`<+8LC{JRS`k2q7?Tg;|BVI*({G)`l)R!<7$%fTM(4rnZk<o zDC3xr{V2qT;EAj}t#@xtcA>WEHC!b<A1Hlb5CBMb>8Z``aN3HyUwoIqd6P-($6kXX zjL>4(uwt!NOMZ_q#+cs-3}4T%KWe2ut8Q#yUo$@FlX9^81J!D&;LZ{A-O643R>^UN zL-d4_LA8F65!cbZ{EUvQ4k-q5+y0F$Vq`DpDRAiznn)?ZI?B;B?xfzUr|dU!otz<z zD9OET53ihoVy_oFn_oD*f+s{Em7?d>{OVV-eFJ@@x5}_fhIaWX5>(;O{=Vx{55z&S zuaVOg!vj`jSPCC)Qg{0t@g%4~?2eI63y*_sRM6b5zgYC@C7{V8m4C(;d1WL9E!7hI z-3xh{NgtDIUhj$|=34r_68ez3S?|BIhKCDm>>4o;hzU{+F>X$OOTyXIx`70Dx%7$J zC8=bgBC!G8zaMku`P(MHd#%@XIyWj%4`f(r))uU(0Co_CvGA-zGzhJi{rDu`zZ>cz z$ba`7@8zAa1;Pgojihj!#cU~KVB=4yJT(pZLeAiIK~2wFTb#NC>apf>@QfuefiO$R zJq6ibo-e%Wyx?xj`uAnM8m9)isWGBzUAdt_qp(!1<b3Oh!i=0@kLR!PyVVp9<0Ub9 zTR&&ALfzI$s{%@O$Hj()3lhK$#fM}khHyV%aAP~j4V9=o9rygnDa5$CJHyI2pXKME z__TnZp-rV8vmN>v0F$KD#)@!>{2<MZ%aIL~onoQs9kml_$-T*48&H~;{z2_F!-}^? zPPm@ry}7mogNI^y)_r4FEmkEr1?}@2XrpLAL#A2Pj(2%Jr1YX7X3X9e?OV*w0;^l< z*Npuw@i!Y=Jh#t8ty~|%`&!~<y%!|x;(D<9;smZ>Ge=B-r=bsJYe#hwSXdSmqg<|Y zB#fvTm#zz-%ZC4ul;?^uKCt3%Q62R6;jv!$nMP_<HG&J@Hd}!I26Z$!^#<uiQUf#D zYAkK+9fY$>ILfwH%FuYjwx}VfD$m)Hf|^X!0b(m~N&lx%_&<P-m44okpPI}^zh#PM ztJl=s-{uFM-!95d5}ztl?B5CEF*RYnKX4jqC=yl=g+5cKDi60r&m&@b4)LqGUu-c~ z$s8nA0k2u9=%ZWnm=cxZ*bydC4hqGbZ=%P^Dn6}CNshKn+qD1x?2u}odtv8j=N0ey zewLatKFlro1=jZc5_nRyF%sDhD_P4C;n=~ru0+O61-eeK-E-vz)r*5lP(>DK)d=Tq z7Z3SFKUEpN{6}JoKgt(+{21_37DhLapP+qx6KcY6y3e9i-XlHQ-N0f!1LWlW)x|Jj z=z5Ps>_TWozEauJM#GKbZSCt0(!pDExVfc!^_eB77l1PWg2{$F0@7r4((2S46^v<N z#uE#S7fpH0;NI$_2tWM;6n5Dxg$M=EU1%y1Z#0zxJp1U_h-@v4yQ9G#_gI+JlI?$+ z#Hux8LCW)Khvh$ffPhrkAzjO5C`*4c@4CKC0qW3ZD*6((Zz0=1+D^_Ly^8<<0{}vh z01Bku{M*qKC?V5hWf6nWh!}I7t1!zwKFqjBgD90v{RXn>n7{2xmlNcK1bb0*1x=!G z5cF;r)nt3&uq(>-7P(9hPZAjTIx<hqC1&lg=TPp>1U*D_Q(wnTNj&dk#h|JL<)D!i z3Iz&zP|jQdER;tf^GNnX*!=9|`F#6=5NuI6!j^6l@D@8uf-()>v>vs*U$U74EV&yu zmU(Yi2EC=er%g%^Oc6t+CuBc<#1J!+I9c2dzPiip{#?Uzx##tC9c1F<*7&<nlk1OS z8OCk0a+>SBgaAT5Bmu=9)yz?w-KsqU+7JEox--C!ra2Oh&VoR)15L?w2QUw1cQUgK z(TEB60?*J^V}0RthzIKW+Uke;rdt~IDE{8>y2@akGxOPJ{j)IaT~au<I5`uNOEVI( zUX$;nVJ*!4fU&cYM>eBsY5B}@f1LcGY(U5eVLlc#cceDMmy3KlFj60^HQ-nA8LqwC z^qCylIi%*2DJJ1&LcxE6qz7LPgS(^V1t`nrhH!XG%-IlN2r2)$Bcj^})DrAR)ge!w zx6L}TH8(fLlpNpQi5ZsgH9XMlS^Vh_phVx?8|7fm)v+HWcxW|{@gph)@-Dk<e|lwo zcGyx;v>pZW0Zj>GICu_OU+t5_^{MV=P`B9JS<OGQm#bkA*No`}yAT{`rnja=#fIJ8 zJZJd`wxWjh-&a^hDk2=S?ze_LfM4e8YGzS?b~GY86d%q5Ih6*+POX!yc5c758KguC zJYZ-$c&}Rl)eHaLc|j4A!u4kZ+`8UDHc^2JP2a_J8P$@zSJZ<T|3)obmAF3I@M#}h zFwXi1$_nP}ngt){xv3>iY~|n)LWMW>VhxE6Go3DOn!`@O?y51G%L!~2`;AMQ%f@Sf z5sIKK+t`Gj)uyfGi(&tyzdw)MCOU#oQ-$>;%QpWv;eidu;Jq@PXSRT)s85nz3b*3A zWiM*RjB#UJqn#@<`58-;m0G{HU?3Eva#*5_I!N9mE}Y@?d<y(8^B&R^S&;&wucZZk zI$Ki6{N;vA=uvqGg8v_cUT}y1?D5jsw~nlJT!hrRmbw{B>P-QITy$TeM~8#k=WSbC zFMV7U>^K54;6;^5)DMwRHIHW2flVqr{5@bX7~@Ykak0SY>Juh<91Ia4a-U82&<?M| zE}qx`s|p~pc3!w!?XJ5{gLvTtas-Z~cTxNYxr8syz(n*kQx~HD1~F01%FDjQca|FS z^XE!yZ0h?(S7X_cH}GA&Wg7|l1&6rF44o*k!hsBzA&mrEbs6q`Q9)8y@uk<fYbnc% zbjZwd=Punq&H89MAz~@Y)Xp1w-gfn(4y3o@iLgqD*hW=V8~`wIy>>Ms;S=kFRI9jC z+;7I1VkHSJ3s;6rJFa*HFh7_BWa#Ms3JAObKRe_8rt?3CMck8`9n#iYIH2mUegRN~ zWBC6qM`CzvwdZDJXXE#XQJeP#)#3bVW6oNWVqp#b*+HNm$c%&Oz?cO#gDw6s0Mq#Y z|L}NAN5r18XYpw@GJHYCGN#(2DT+79!Wg4FBwX2kH%t|e;9_DKWktqBJq<Zs-C$E? zZZUSA`oLq~QaxE9;t@`nb<-%lhss}O^H#+YSI?c#w-yZ8i>50@7y%EVUb;w7`aurp z#4~ffD?w5=o<`6Hj99)RcL0$%9F%pZNm6)S4Adn#8A0GhQ_kIvf2imM>**+80L5{o zvy81s_zWEMCH8CqK?eVSVObj4%Ai~M%jkehGzx{bSImx=GupxR7Za+x-tnILUs|sJ zqxsX3od@K(&O&-Pay=BXf_gW{)XFvOmSb#yIhgIJ6vDNXYnOri@218oiifoZJ2mzj zd2#+sptH{t)Y5}DH8vlUz9`ek_Cjf8SJag7A-FtB@^uoU7FU%{g4he~c5TJxK})>X zI{$61i9{VN(P*O42Hni_*K1Jmv{&TO*jJc&39xIjBKa2~1PNRDwWFO(737+G#;m%d zGn$|-yUH5s{vCvYnCK(nE?8|r^yEd#*s#q9V$FsY=C^j^KD6)u{_}Ry(dB-+&Yu<y z4m$2RB9}Aq_!p^_Xs)SD0ebdatd+_dJvs81#B~P!VUo4Yp7nzrD8U-B=*1*PT+|na z7_`+9g?10t$)1_s&@UFdF66)f6O?*ty8&K8AUez+dGl*w0ZOAMTU*0^FBf3zT&#;5 zM$3#6i_ALLN<i456yyD>FIAg5p18XrihQ1liP!;^yKMqvdkU`cu-w&y&P=$(ND3K~ zLysvi7uQVAg*=s~Be4dnxa(~QF^CV<35})Pp}4-^G9ap-O5X?CiQPfswWSpiZb3Iy zQE%iquHMgg9z+g|b%G-lG(=hSdx?ljd#qZ|+mgI1gp$jqJ10dLWe6s6YR14^+l>_c ztBgg<P2$f~{Z8qhpO;CWXmCmo8puTs#dieP$7I%#hZP+SpmFm5geJ7QH%-sj>2x{! zCOIgFyXis7z2Y>%L_-1d!*AhIn|?UR!>&mCqwrlXE`LK@S|Q{HyH~%Y_XJLk#;_Mn zB83!*@zFh@7+^_@tMiPPs2JNzzuOGQ%=nASno_Q)cne+sjKGs1&t{GqS*_UjMrzUd z1Knlx>&)btFZZNW0>NpqyTI-dHKq<?-<|4Ga+q-3t<T`zS5tOvP%zM_!s6k|1<0N1 zKh}B|<2H{0S+l+Uopus<+;6&3s)1@7LvLNYC0Rf>kq>IKgiGdU8B3e-4^K6K8w;+T zJj}^l7L~j4K8)RXC9K1tBse26r1DM~wYs>VO@Tr-VoeyouEQ)*+?q3&47Y^)HY?9> z)KKJj(qNCI_@xm_LW~p5nX8q;0dr0*Kr|~nw=FAkMVuDBo)58@;v8s1V;_X_%hqWf z3>Aw8lMQ`quVYlZFVszq!q(}Xq}@=XZw>GFm3iqh&!%`I_2rEubA6*@12|ecZ=icf z0@5+)=%w{wLj>qym$Z|h-xVP04lvWNxfDg5!rL&yrfCk8vH<_)oH`h#Wo6kCsC-i? zn2*gn06<<P<MK|s^K1hqHskzr=`<F__4x=Qz?5^0MjZs*^#L@cFZXk2LEk%Tdb5(z zIP?p6SARS>CR;ia@usyPvsC@n$tVGnfB*ouzyPs;0PPyf*w1MR_wiPGkMbjJ3D@q< z?M{m*nY@dRc)$oU6zAGcf8(Ki&ni-Q^J9-r`{L~}3JzcRhJq?7#__F#T@$)HM<FLB z61PB5I@0B0C{C#W0!CXI<jO|k4p3`oAaNV=_WP9bm1^m(Fc%krA|8_g^Mz|qQou}o zr-3-H1&b5*(-gFJUg!AS#~V2RZ{Y()gP`hb_7-WG9mF!S?NSZyQ`_6Vq{0{^GY1h2 z);a9vP%GDbr;G}Az-&KPz4VY}omj04#&xWxFaX3fO-5^xQDZCgQ8w^D6ZxUB9eMa} zqg2HEh+G^CVrk80siAovH;$72Few64-x86#ILLK=7<FhE1Qq4P(pxPpd1gngz>Nnn zW4)DC{ec))Z4gMtXr@O>I7+}ITXMV_379gF!w=iwDf{*k=)^dwdpDqv2%ae5!+78p zzt4>z=m|4_WVp<_1Kk$Uv=F}uxZhPi@xk*wXkDpo@5B!NUs|8xLJKjN_eR!L2Cws5 zUEbMd2F-+%o?=9OY8JqiIvkuo5W^&R=v9Zk%sFNvH}4~<oQOMBS$(%K$N&(r*k#n> zpq}yG!r1iTRrlNf*gEuJ7|D<R3u@?k{eQXiZshle`4t`1RKM>a$FSdxxri9y&Rw7r zR<xI)(~gE$4m%%|?#=h^rG%^s1Av65`}4~Q@af{h&bvfA01J59rdUK34aFbP#BjRq z@*V90OjnR9vC2{h7T{ncjbgMc&t{peOu)E&ionEqKj%Ai#p65T4=;u7X&t>Z9?UZi zS%{7M!MkAZvZnJva*3C&yINjA`nyHnohOF4e>Tb$ORVT$vi>TgttSukM$8$6a_)Rw zT-+?LT7uI?uCDWyqL3glK@?c^w_J+g2BwUBic$yNBjf0*PzU$v!<p}yt34%8?a)US z-gYQy7pf)K_(9)_CiGHy4&PsBjAzgXhLsq-ESqBQ$%!f*?Vv0>Z)m8A@JSEdvbB<6 zGAdqVY3RDwMja)~V?k_afy_>`o!4TSl;pQ!|D`GNV#*`|6!ck~1#?rcb2%ZW0w|?? z+6^t{FGoq-r0%=jHNU?nkwy^j2|3~_L%E&wXHyX}f>DM+AG+qtL`v)PPTmSlL!HI0 zAqXG1W(^uh$#dwb@p_JH|G)`(c)ic}Db07{AOeBY<L#5rUjO8JKTW3>P^3s@^)kYZ z5x?l$Fo>l-pa1f_-`FT!TqEE_=;!9$!y(Xe&D!nE5#axt@z~x&_dA(mX1{^}JWRPo z$pU$zGJ1{y^HYqVB8ba(ppeVzK{3QFOtubh<0D9H`ql^!?@RTOKoFw25&Rkc2k#L8 zp(Q@IJbFh6%^n)GmZX+tf+g^Rt=->HDRP(CVxAFjuXwJJ^g8$Puy}uw)0GH8|MKCu z<|Bx}cf7r|tgB688cX&<f`Zb4wU375=6@sJHE-B1D@s?ihz-U+QtOkr;m?gyVcmgt zprLfTaSlqXS)d?^#{P+R<7H1hio`#$CeN9esCd(jTMhCMrSEHX$rZ0|h1T6-i%{gk zoP-EL1!TR3TE@-L&Ql*Sj6c@%A6uE>?{UcRr+Xo?!65%z(NK1LjMuCI?1@aaP;%c~ z+cIw{#TD9ARa`;=yz^SpzDB_%<d|9)M{MP@X^wN|c;l?8{Uqb~Inu_hc{5e_=yCq9 z*rma_W=MkLNyg9MkH6~?f16L~1yE;yXuL300OoUcZnx)UnvdThY-ScronSJZoW9}a z)Tv@0iugeJJ^$o+ujf1||1JyjMNy!)3_v(RQ^xd<fe06{cHgvwQm6?^m8o~|FP{*2 zEr^Se17=BU-m8Qa%|<4ejEi0fM~cG!Az4D1Kkpi9!Tt#YwL?r@bU@ZCXpAnsQJ4m< zA!A>Rc@FfUHPyJB#X=Ii8MqRD-!zhZZQDBRr(oUUu^*yF1&r}HJ==yOC3R=Q;Rd4N zH5D!6%ad!Wo`8xoOvOn5{nd*hWYDD~2sicrDu$qPPG+`B$NdLm3QuF8F%GR`5>>t? z&$Q;r(p>ADFAvktx#tOK^OP3)5^6X+>!{^pI*z$hm3V>vENf_r&x$b_-Fg3Su}j^i z{E(^0_qY&pX2unrE>z#iX|J);P?cmAj@#pC_M~>Yb^TM3L_hmOE{9SLPxK!OM5iLD z4*)FpL=7X>Jn9UEWRWKD01@b$0%4N>>qOMoQOayi4DaWcuYRb}WVj7N1|pRRk#5nA z8({A1ve=s(Jfo#G#ZBwgt(7%z^g^Bygt)OHMe|bM1BV;s?o45D9)%C^!<z3!z*IVT zr-}}0AIjRyd$GoHlY0Mbvyyb@T(mcnV5<blB2cR1BcF(^<^H>o0N!0q+t634KzOsW z(1M3l#jwj~!96G4JwKy6v;`F@Ja+rrQEXi+lj=#6%7rYOXfyd5nOM;jKoB7VgeG)B zI(Eyx<imftquiO=I#KBFcZa=#qWdA;C_^X}DwHX<Mm`LTv%l_BffJ%+hMy}sC0K$H zbKO($xW#h>0f}^fZO`=AQAAJ~$T?yOvuH`(j|=t@@rZ+X4_e-nga_|yT6=cT5N-FC z56{I`zDEd<tUh#$y~`daE(K1JlOcb1g$tgV6XJxon};=;tMqf{SFWfj3vEMrds40) z3AS`qWz8YETGs6?Sup&c>#FDvL}(1OPdU45jGszCI{r{UddfecddX#Xy{2zj;=UDD zh>Q)c`qzjS0tw<f*iiK(y+-1st({K1uZP_sUA+2<-oMHgbEd8pQIe`28Gu%?BdhrJ z43L5~kL+fYFn&OCA{^}X_Wo8xA)dtSU{rjb!?B!Xg<cYW|2*B8z_t3i;PFl=MWDWG z>|Vi-lLu=2K3=jbwb4RGRk-M+_vYs<4UD2ZSGY1TbRufTPVQx-TS7pm6lrixa5jnG zi0))PbDfj6J<gp7qpdW{Yc~H?;6PV4JZVXD)3v(b3MnVHMo$3(Iai=L{dxbdXc|!6 zuP#n2TPu#p>Lx5sYvhnnaY*g8Psew2miAtJtIZeD4F!x}mVI5%e|uJH!`8Z`zC63X zRNeERbwfoj>@=e&%ThbKZ8Eue*qy+UiJ9mIqu0b6LB_25Wj|hR#2%mNEG_iR4lR#q zv__>S>j+a;!!=&u%g50kII}{_W65=bC*$;1HhIM-uB!GEB^U%}T;^eOZ--^gVsj_( zkw4v2)%b7nLF^pP4~Fc5&8+f?&ubK~{ydOi0%}F6-F5amfEFQa6(txa?4ZZ<az3U% zB&8qioVN)Sp;u);gT2rq#btgb3VG(`No5GLI7rS;&^+?jp|B*O)pOYN(@aVQevt}Q z_5#^yhW>$1JW;9hwxVC@m!3P$niVi8GdH;i*VNCJ+msDapXHml&qm#*cYhH57yd_G zt-Y?ff&$cVYsLca7)}LfMSy>(`lgx*@@CT*XwZwBP)`fY_@JAcE%;Tx@E>)Z2=id= zafF1kGBWc@{2|K9ZZlgr#z{x?wSe8GsN&juFHdUebw7oNhJXM?J4ZK6Z`j2hl(Q$e zTb7jFlG4a^L{Xx6M`&M)69-K}js!91;R>gp<Z0JJ#9f(-L8Ad^nbHnMOBxYs<qkqd z-a8|mw`ef5TFJrr{rKf5_6ebn$a*RwxZ^uB1mu4fN0l>M4M3po;br2R?-)~^^{{+R zdEyIt^o4+}uV9gO5<}N@I}`?L7$467kuTA<7WW{11ja_axjSqHr&R!%yM%vvX%lFc zJkmEc-~elww$T<{|F+&et^cQ?Rsdq>^hYg-+QEI-ZHUWn5&<D;<rft|&^4ZG)ZO@0 z9WB*=fk#I$=|&QVD55j}2KGHf4X6lBnwT~Ji61jhpV#_qZ~QrQY>tw!%r+^OmH$%) zt`j%oqtC8NElxI}`UyD(n}_6scz}~zgT7pjX~tq2igDcpRJA{e)B%uKo+Y|LveMc{ zty~aG$xvGcd%5fgbokW&fYP<3$HFc8R@TUiF>;dI{0Z;vZR>*M8Lm8>0ppcOTLnm1 zyJkDXwPKWMr1uif6Cx~oPZ1JX$fyudDLt9<Kl>Uu870xIbl+{f&B59iCFyfC)+JKE zb2RTgO~-bHjzPOjLw8^NLaK1tDs^38KQs%bLQjpFek$~O_j<BDc*-@M$;}ot8$!^Y z?*KFiIZ&m@RdKQ1utNJ?`$`zD0JQ)=PLgWrioBIzfcGoBw%H?J4gfgIzXLFMNlcU0 zN&TfbanW5r(A*ECX<F2${MpcCOiS_*9PmuJoBX*^Td@Zk64#inY{CyWV}<AnQRIQj z)%DQ|DQR!iHUg6b{D$tNuTu3qe~bV({V%`;2<;EQQZY!09gE2FRPvjGHr7f*me9?y zNqYbJ<gPPASG9r{!u4@3htnqW3AT|R1zizBAdfd7HXr~kZ4kfcM3>N~8Rwrwx^(of z^*cWqpBn?E2kDo!YeSG5oFpZ}_+g5BzNWuYsPp?iP{DT4DChNyRvrZeWriG^dS_jy z*)RO<|Ls6I#qk#sL6jpTqBdD+;}9NTI^e(h+}FG1MJi}qH%@$_L?}%MV8>2}txO!@ zhKhpx^cPA+wKLaVWzNUGU^*Z%%G(CV!=-Jdr6cM%5vj0C<ou|KnOtoY&r67EY*^9r zCffy$F}I?>5y)x-*fnwZ)JHMz1Qyo{P;s#va*2<~$n)y2lUVMSVi(71Ib%Z6wRYLd zx}Waaap~H*<%oL?FnF~0VOJSQC{jgJh^3{YwAke}#33K%h(>gkG}*tsINJ-{kH&QA z*Ttf6m}{*RazmA~G_$)CXIDc};H+i(TW<EQSoQjt8Y98vPd#1h1{Ui)vVm7d9<Z_x z<m6{iY)WWyrrvzdMig3v^@>>oV_(cIBc$!KP5&n5NQ(TdmMrX(j)Jq_bMwtqAxcJH z%e+Pgvb1kI91t^-BZ5XWv51J=D^Ne+v?+edqR@Z@zxjt?L=DYvATl$%Ew&8GiDkD- z>IYrn$|RG71yO|bB}SX>N&`?MH7ijqfFG_T5<)`CeyfCDF^dao1Y?mSl9aa9>$r9n zt}h?@pnU-ZvsiN0v`<aeT=sv%lL@M~8aOTyRXPU>E!W6>8#+<eIY!#mRs{UTNiTxS z_;sCQ86iWOL?2tkPbKU2b#Um~Mp<Zsli`BoE2i0&^!{?f??juJbO9s6f6w%^<e%xt zlo*(YSeyDz^?ttx>1`|g7^T)FOVhWx&6}s~ianm9%0+#uLKCXyCM^hn)QEkip5}@B zdJ~_OGO39|C$E3aJVMhvueUt#dD+<a{ZWk8|DRIFEPllr2!o6`W44|edKX^x>(sz< z0u6_>a`^f;Jqv+o<b!6vjcn4>4KHCuw&A07{im785VYI<u8n~b*HzQ*IiWuE+W%ww zLv7-T3leIT-}41V3gHwC7EyD?_l*lwM2CEp3tP#QQGzJ<d>csO&z+pJedJ{xGOuXH zdJz3ca>l|#xbpjzfEe)~rQ?0`^95sL&@^o*1C<Qb0}?!@n&EXrmpgA}S!5jC@}>Sa zjc+@3LMTi^YB@F-;D$1hI-o4kYSXgyx0HYJiL^Yfn_>Z+B{IRl0WI=!7n+Ah$KI)| zE9WU3M7P(+A-}J3%@yJk$RVAIM|O>~KSO;Iin1g`w!Q=qU-qx;tMVYvAwLQK`LT<j zh<JT2RMt|U{jx-8)-M`?WbN(ln()07;bfd${`rHQOt?M#ZhZNcXzf$cXQfiQjU6C1 zY?(80em>;}S`Ih?NE>=WREE$c9QIqt7tyS9OTE}0s>kbGTELI=blTj{@3!P--;v4D z+TG~w8pp^?F0*=q_!Pw`n~3mpd0OKGkqJD~djy{+ciDUy-^H8F5G1A};)a-lXiXys z_IDfVc`~K7_qh3S^c^Ni*h&f4Sc0Zf5BuN_BNX<LU<rqYgioARH#6PYZK~{(n$QyN zM#$tUb+UpcdLU9NzV#=o3F*%}tb?i7B|6sSsi1*O${)-SKX>&}?|U#wfC#=J{EE*G z-ZpOKI<5!P7ZC@X?T$x$+{N;0x^o{AI%4B%mf?!>jFL{ISbXoCq|Z8+Ju7OkUX7a} z@`Of)l;@<%3$A7DmK*w4GJI9<<bdE_V3LWhH8(s)VpF6-5ou+<wRb+w&CS7bVj{w= z|IvSXkdbsiKmR^#SM$6G4kvue;adOyIPPxl{6D8bQ4<coP`(?l`{9p^bdK9^74$LV z=l{c&50BkvuoiA+Wm&Zm*8wy~K5riieo8Ck)r$}u`k4a}F6&TbsW_dDg|LfK+Mjp= zJR?EDKdjCcmrpqJx|@RHw$pigD&~y<PBzihfPRyjq#L;j$+0d{m5A0$y+v65S%=CZ z7)~lx;H@OfqaUZmO;p0L*SqbhNI<}Hvu{Bc#Dr0u1XfroZ(+oMKW8P8%sFMt5??O8 z4aK6xy3`Es+EBjc&6^+Pz_8p<a+*9jS5bbo3AYR43-a`T0{;bb(9lTNugfycNKsNZ zWwRc01|k4=rpT(NRf3$|!gE2lxEX9HI!faY13eM+7pH77G$`G;iVsRCuQu-1c+j4O zhZ;82*aX(?!F*mjQtYg%a(MDdwdD2F+27!>fERs#i_3*s9-w7RsR8xEr}n2AgTS_O zD9H1}T8+}jTV|*81SSd;!t>c$Uv))pPlVWP;czQvnE2U6hQ&i)Yskcpc7c&m{XC1L zY>F-xyCYNHPVw_8E@;pMUi(jeoQaHA<hiHO0VwXDK?IUZRKg-7e|w}GE-;zei+IeW z8}Hx+m|BHU=cg@)m8*vRn*LFnpAiTpcP8WdPx6BT`PRWKfIkv+lvr32F{HfK$ejw& zY8f`Qt<^pomjEcS3c2!NC_Zb19mMQkf_r$#Ny9coh`d1ebG@wAp1%}Z?+`68Sb+nT zlSDj9)90FC+kk8gjLZqC`WUm*C67ZYMb0;}PSsytSxEblcX1(Q_cS~4w8<(-LyNfV zOo{_mDS+5Iy3Q>^_w#PmsFqvfmlNQpGL5+MI<=t)ysT?<#!G=Mk%(mz@((b;;(ml* zbe;4a_lKHbxjBPER}guyb1>}k^dFmum)*S5%O4f#;`cd~_9$u$dR9mvXW^!pifsPN z<p{8uNYV+R)9<*f6j^{e=mGjd<kWjRqrT_x3Mo!c32K|lvI2~5po{Wd<OB40;+|SJ z_y5`oPntiPyk-jrEX6G4>PVtHKW=z;1Ra?BZ4T#7a!fHEM4Oc4mS@u+1L&55Z8Nzz zwj*Q%6s}r~{bW0d!GFYaXK;Z7%AkVSxyC)DNi3T7E2i`#l7q8ALfQmV+=1E?-+(s6 zPb;Lw=qSLn60&osZrLM<3aCnKOWi9*sbuq$f7ps0RTK;E78awd;x47D^0hUfYK%s8 z*UO47r&N44ZW~JtXnFag>^-nzmgDXn9YZA=*J3hZLjk8krN`)R6zQV8O4uU*n!u-u zZ`RDE92-h3rOV#;IqeH6^M^ttY8~nZB1&j~&AQ%`&8bRDGnvqCo42AZsbZ_t{Ctr7 zc+oqdn6E_(37wc!I1_^_mncJVmhhMWC7=cZGi{|_WZ0I|fK)=|rq7FZ#6MIp==_n! zGl%D955T-#%HO`A+2x_@tQ)@JfBdegtRVNq(%FjTLfc=gQTTBSlp%IOROfo|Vm|@g z%G1@^81L(b+mXr|Dt`e|n!gN)TKa|_HD&}Fz|j0p-DJ$MLZ4FF6xt-UxfRnMSDTG} zhl4i+RQKx3*YW+|<%k_+SkR|$Z-#zdFgz`XScPKf@U(6o0iugA%T{+I<CTWF;#vqP zoC-CqkrXj(SO5P+0^4Re8$V57bZv0!WNpWH&-#peodxQvzdwtbY7<JZR?AHh%q?#P zVOmTK*G{o|uw3)URq@n$Kx``(El1mPhP6;5$Voj7bokn~`K+yQMi2e<c7*Pmb-#zA zSi-02v}y*rnN~L`&h-@&mE~CNUH*zf2<p)?01;?^y#nZ`+oXz#4p0{^zIz)Ft&BT8 zoq%1ulQ!999xnhTofzjcYi$2joj}bh{Juh{vV>$#-*sT9$T>Ck2z1+jNf^2n2AW+G ziPY3Ya*LxL=XT=y6Mz5!Fwg)8E&vRW026=!CjbB)AOJkT0D1rc7XSj}00_7M8Q=g- zzyRg|10(<mSO6n{0Aqjw{P;V`ZSIVCz4feGtn`@H$vSU;*uA5IpyCCTCsP0ZdIGI2 zGDtCp0rNqu000932oj{z6o!R$dmZ)`lXfAjT?;v56n3`azJ(fPz(=?g=sy4eAOIoZ z2t@y^+9?NxC4W$xk7ynuM>l$!@)Y7u6tAK?raP5|!@wW@x{OiFMS-3+O}-wQvGu#T z8SYu>YJ?HT?!Jo@ba;V~q82CC!Cny(DhM@0EX#mq>7_7@n+;MYOf$%DgLNVKIfU9K zTw8E!*3WJ9)NaYN_s$nJPG^*V)bk9>LQsmz7PYpuSKPMMGRr;CT@<hQ7=^E!?9Tsu zbeU=j8njn==tqglFlEYLQ+x6h>&IMDudVV>aqM#&zk*d9h;Pxv9wsoJPfXTI6?R`9 zT&8|53aYku=f9s{TB=d<{UWS1NrO0SvO9cV<{p?$SmAYn!oto}wesE4g7$)~zgrVu zr36`Da=-^LwKJJ)rZSEOexus*Vsa%kNl*?SSo^mlG%KL9S)C9wjDPB6=g_5nG{EI) zfYPb)W3T0-dZqTbD5tEl9M)1X9mmiuO%py>6;&A0iL4wT+AoK$p3b8+tCxk;l2<&} zTE4pLJ+dvPeJ6wUQe@*dIEzzKXF{u&ick(jm~0pNPnFg{IU906wWJPfl1KqPJeAZs z$U$<!?3F?keu8yYEvfnAj$9}yUP$5i!hK0W#7$D>l_e<&>l0Fv|4U64NTLA{R{ulR z3%EJ7$vW*H@I8H>h@5Qc+|8o0m&~vo6rXNKKQ>KR^hp3)XWf_;v1{Yl7Fftv+3*QU z&g&Dlgq(tIm7F?0J60;EoOe{Nu7v^YxIpCW(Jp<gc6vL7xu5W_VzwZHZOfK;JeNWa z>XaE!MlNN#pex3mtm4J&Q#}+EJr_WF=W(eIX0@orP@$N#)u0?qQ-$EtJhcG2Rs!9c zkc38lm${b(dM-L2JjsR}<UGxw&Rmr!slL3}CVz1^FH&JvQ|2`jli*mqo6X0eYpV`k z+5!~G?q+tt@%pwomI1n$JIwoJDlrUNRr%fV7@%(UY;e$Fiq&~EVIml-RTrO$sC5YE zC*)|}IbQrwO^}}U)Y(K_!W&&b&f@zmD0XHYYaBlt5WAhxNm0%|eDQJw!G}eAU-9Uj zq|ayxW?N%2xJx-RPc{f@GXQlZOYqa4CN01tX&B@wR`m#@BWjUKGnrGg{x^aNL}r|% z-1Lpv+QeFTL@k<>3`waQ2og~r+-^&(p6?5wqt5Sls_Rj)36G;ZpocmhZMbFevVshW zmJDtxAykg{dRDJ^h}<-0HAkdYZp64hOx35}6i4*2bW8s1mMIG%iA9mU&9ZT}f_brV z0y{=Yjk(O0A6my&CpQs#{qAj05?bUdQTz~$f2@B<nYt3n501<3^H5l8>4}8BA2e5| ziQ0TYnom#Gd=mw$S55W5Q2$$vu`Gyx1QpX0Y_5xjf0-g%{Dcz#atb$Vv&218HU(pr z>>+Ta1!yKViEd|r7@b+nI$^mPaVp_wRM^Zt?e1{?zdr7?YAdthOnM1?=OyF~-(TZF z=vh)(Yl7$pG&TNJ;C0NGL_1x4ED|XwZR$YL<x>bg0xYVhSfq!62IlvA!x-VT%uv6A zerp8p2ucvNxXV0iDSSO)V9W?&Mu>p??J<6*Ozn=@K7-?y(u!w6g5y=EBBl2sqVJEm z%Lg1ilyO-yZSzulP2cXqa9`IVL1kkI+zwYbkDXX(V)ucppRi~4*C^pFv+iwZ-Y%q{ zzf!S!c@=v5;lv!JZRnHHKtn+}6l#mTx9yz<-xLM^FJ8Lg{`LYG{W?dGhv?3qa55!z z^v*29I~^!(tq#4)TVf<QbnWkv7}O^VkeT=JjWkKpR$<s`bUi}^%3et|fM9y7q_`y= z)%$gz$Zi@A6J1z8)duN0H{LnVWzW2~1jqr6FqQS&S@;B^g}xI1?JAos5^-fK;eQMP zcN?7EG6=1~Mh5LgwRyd*lA$k;v5_~_SeMT*@f0e+IGXZ#>)#KJKh3S>n31y8Y<eM! zy0Smw<I93}my~<6lVv+@GQ9is$C)qLTV1@nO1Ky4=L)snl4?a2RaG9E7qg;!IWzQe z7YE95kQH|#znVx;QzxwW0#$9+n}Y<SK>pvS<gSk$)+6{cm7SyVHn^{81lT%*+OA(d zn3A{rYeaKe6=reS*nwW?6ney`BK5%Gu;YjH%Uk2;4m%$mreRT<;phm6^8F^^4Xbip z(nfqfibVNyF^#j+nR`JxUS_x#Ac|eJ1ES|?{%zigK0hHc`_YAo4Rm$<{FO`6N#yMO z2r$tY-kep-5-`q!z0$CtwQC=q{vRvmr_8`Jb>r}vGMSRAvdM6q?5#G_ko(a|mPmmu zuk8R+k3lryu!CFPTgw|RUR(ca6$c=_LjjwEKZR57MusD4wbx-s+st;F2+y*n9ml7~ z)Z)xHu5R&d_5eaay}uw|DN3>pEIH#e-oK$nB2WzXEaSSS2VqsMM1@llEl3o4rOpqW z*>@7^Kz{#6m<{Q0<He8w)j7uq!oAO_s(FS^A?Am&yF`mA1^3rsb%B}Ec!<jsu|o(^ zdPAIT>F>>DN}cVAkmwV(dL1VFJ?y^p9JH&2?o9o}$KzmAozb46`zdaZ=<7FO{(<(g zpg2RaD5(~De3tGn>IfQL!L*O3p!l71LZSK0pO<Pc6e1W?VoTfd4<+Q$)c6}LO*-S} zEgarI$IsOrCZD#1Hnr{DwiPi`EG<J07RTGh1?{7M-4HaRvZiC9;ZQgbUO0Ds>NzSK zXZ3)HgLh)k5LiuqTz0W@^tlk!YY0FGI+SG}$BKMZXnyX1-fBDRc_*dr26+mp3^yEB z6XfwHY@H5D&pH2v<N}T8RnwSLq?mve_pN&k_V0<4!$JLH5jMICoH$}77+I~5{w^FU z993PxAH<xK0TH|0iuo4ZrBec(={IdTk<vDn8Ptrj4W}}lFaMYUvU*B5PoR`_ZoRed zRi4gx&j1US$3znr5c_JHa>Ps|Xsfh@FdjNK_P%Sb+GleF58eV%aHM91R-POBRI)vn z%uHHi163p{o(^wsYXDd-(LIHbg=#BbyAJ&wG)Qvd$izO0hGCFr@xJtgC=wW+3Smvu zjw7C;ogY1pt9S=<Z0eL=keK^?e9Wo$l5vj8Briniq(@$W03u1V#Mr;#>zp~XU<UE^ zk$@NmeU@0K3>o0PEnaA)nl@fQF+BYtpPESk+{mWQ)Q4}^J}O5O1Aq^s#nB=i@{=N8 z7;u#9Zc4US6Ol;=3Nf_9O=ECkcnTue8{`qBG->28V8g%~ow#}4Vk|k{R+P2lsYsH& zoSKb3%OWB=?bK3XE&i)>_|0kWu=9_Xb=l?!N5k_DRE3zJ!j5~GlU5?aspN{5S^y59 zl*FgeJzdRRMR#RA`5nyz>%Qj53A2~t?oj_ZIzq1|$;d1x7+CrAa<TIQe(Z7y4eVC- zl4#Bx#~QGG3fimY?pM}2;PFbuL4u^vVl5l&09lE+X~yo*JJ7H%!%Jf;Lwokj+Q>7G zt&DeKFdQp~J2%O_lImo$9#+uta?Z6n<PGiN|3I!IJOo;1SqT+hSzcT`&MmcnV%*yF zw#M7}g!jJnKkur-#&pJ-;H8Ffemv#_mbvC@gzWB%*d!}G<fUvIS5o27Twa{Os(x|Q zppNpTp{kM;zdP%EXw#ZwX=wH(_KsS=q{H_=-sWRd1E{qv=IG=V?|H51eK(|p)q)q^ zeuORc^Lb79ume-~vsleuBnU3DRX;}p&stx7cY&b%S#6VS4|ZI9H8OSOQh3m2mf~?p zzzI|}JJ{$W@nVoQ0w7dxqalyV_ZF}7t=~@0W@duVZox5K@j6&NITnCeln^FX>GX9V zH&;Qa#>n*2t@RlGI<hZS$&^sTKo--GG3SY$cLxbqLPE#%lxx_(QD7#}92(lL2#ca} z%l9CSj?~l<y2MexHJ=^LjxAh;BjXVX$VOUetCF_TO7j4YW7Qe_H=(c4)nuluZpEgS zq%x`97AfnF$!|y6JtP)XQ$O?t8I2Lwtfe~}(im*)o~M>6$dD}k@hMqC5xSFDRXYpW z2Yu@ELFy@%5sRX*LOtSp#(nQGRsESpco7z+2Hw?SF%$i@#tC@>6@9PE1s}%o09_<7 zB19EIj8oHdwQ;wkTh{m_Nk6b%2ccvyjHy4-ne;^!jXTW^%5$HTjyv<oBZNoHt%fBf zvx%xh*Bqx{R<0Txaqq<3A=+?jrc|*53GZ`GDgiFyF?|jj!SMEz2!OQl$1bN+NLjP^ zPoU;yp~5-@tra~I#sj!T;-Y*}%zdEr2c6Nf+rH0mZ8)RKU-N+rt>!mG+hW{^JTZ4a z_j5;F;V7(3N8$GyutTK$!O@Vhoh5sSy%3Ms6TvProVlU85ki1_R*o}vbK#2{-6X9X z*kC`_^z2db>gL_OLcwh?2IknYO0zS^RKrbtDwK7A*RWtN=6S8$8@mXlSgTzIf`z3b zCwY_JsKuM{i}V%kK#;7X^5F`&2{CU91W2f95oxex4){x|AaPGFYA5FnTXM!>Yatny z)p&!l5@)J!t7=OvOR>%`547=c@wxC2`RN(e<>0Ws5vEuFe`~RPY=W9WBG%S5fXRiP zl6?+;-l0>13g`D55<%%5bYtms>m;)EC#X@#du^{oBI(6e_9CwbKTu9Tn+UEqJ+cG4 zZY1G@MgydJokg@3b}FD;;_8QJ*ZH22IN;=4c!*W6x<CY=nbU@`*<)M=*n#C)i7~Q` zLX}+l-yAj;d_>Xl_+y;pPDE~KS#BZ9gY(vEd(l7?xxT^amO8wOkRsJh3uT=(y)+3` z1$XxP>ecM7TqXi-I@(R>(jQAENxrgrV<RcyLl`mn`^PY&h#ssa_t^x97mj^}3_d?q zz(%W}w-Cq@VhRXV;4TgDkGWyk7XFV>%rD?$noG_;QfTx^)V4s3woVIqCM&(Bpb+Y2 zi8(h;V=tWTLd1p;K$v>Mo!}||st`fAHYuGPv=M%vFTj$3_5O<ih@b}WJBg|{A|T%> z)L1BtNAFU1P6$Q4J!SOaY(h>AhuOjryPFX>;l~8whd2sT-U_C7QI6@a(CDG_3rI2O zT$1?Vfj4!Zje)zdjK-ruYRDG4+$6B(gj!`NRoXP9psI#%q_M1$==twd&IUXnK><$- z1Z?Zr&SOr}Cl;e^DIGiJ17cSG1<k-d*V`=Gfyd?OJ*`m!NH;e9?m#;+P2*SyBG>@= z2d|VA@#^}BNbRC$))vE{LUPzv`bMtL7J5BGI?@o9k$&p4Ne2f%SY*zPIq<chv3wX5 zYQm#dNZSvUSEh0`^)5!VE$bV^47Zi0z~;$)U@)MVym#G%ww7h321(Qb=zK+eist$Q z)r&P+1p66lvQGw2seniFZ}nn-?=i<IccAF%oMO0Y2uOxmHoF@#cGd<A^bFV5c+naQ ze+zMav~O-EW(ei4P2-g&93qTYEJ$y%<w<-|D9oV1nkpHq0ZJ_?*~~6v?@?{pay7H0 zD5wX#qcyz;vN=S96WFeFj)=y{wDg&vGYx)v|8Zu7$=m;bt2;HbU$^mbrU$G)h~~y4 zVv8qL;T4vE|3hmadA7@{ZOhT}wXG6t+*?l2S$Ukp->%1mq+Etv=<4MJ+P_XV2jcYo z6~i3$k=@#Q^f%2CzsLYHrO)X4agdS^v-Z#cTA9*#t<0N!e=j8!RDV1_CFSGSU%WU; z2FxbouCjZDPkr)%hXJ2qaaZ?hypPHNt^lAaBWDTn8y3^Ljjk4}-OH4$;LgLCmm$cp zh2ltT2#ElhSL#J3LmiE#;GyWHYyYC!Qrmm|=i~jr&G*4y{}Q?xsBYgd@)L^fyCmqN zD-U423vIa`xc7tg%Ed^O>Qnu=!oMw;9Bqj@EUbMrSe(1>OB+hsS2LE2LRX@g*a-!l zn2=sDH9zl@yDFbhVd<bXB1ysrQ_KF~dC+EfACVW5tKOWoG56Y)uD~75SG&u`V1L0B z)iTBu%Hv9T&LMKOUH8~NfT}Q{Y5FTwJZuB;$=x<YBO$v8fJ+HwbDKN-Hay+B^D{Nw z@*I5Qqb}VeF7LmQ4^77HRjMnOV(;6!RH@Bv^RUUx_7Jg^9X-zh1rbBR+TZWCPnG~) z>ZAI?5=H~2zV)3jX6i%WchbJC*rNX>)tAb0d-K9FvzUA$nY&bD9>-6VeC;aQ=xOsj zuD9QzX@}0MLFx6GprdS9zt%8h58oPa**pvqpBKq4<{pXWP3IHM0tIX*HLT1Jow|Mv zHjlGHe3$Ao7Pv77lQ9b{h9QIgGT~BEZ!)d(y54%&$F~?tGhHV92QP6Cfp-=^%Zs&d zun>kWEwD`Ii8OuD>kjF+%P2o`?1E9U1!;J~O;$HW3hAyceqMVBs@e_EpN|z?@IxeQ z$nRKt_!38qY7@^AaEq16T#&?j8?@j_>PFwSd5a2io>AtTvQGzH_Bv;h(co&|ed}Cl z95sgRK`=B4xcGm{hVEljiT0*P3PtL7me!sI$`&z`A0jDc$%NQ~HDkJ3qaRD}X+GjM z7XEG4!<R>89I110nFZD|Ed4bg9vCw_Cw8BcVgz4AlTUgep7faidKJ|ZO2Zpo)f)vR z+*pEdwqA*@C=B8y3?4`8kIB9Cdm3>5i3WHKbr^>8ejVMT)m-*V;yg==L(^VDzkrYm zmJK?h&*|)8$)sku<a<s(Z<&xM)`G9E&-*bVr?RQ(xnAmwH?6{p?)1FneZ@dvx`!&v zVV4tNTtNMEWwsTLrcf9es+oA9MT&Vqt5deweC$t7{>r2*vf7lO@o)XDS9H6_S+@;C z^Z>yMCD4-&(ALs-8J-k~zJ8^d0Y%j>zd$a#p?Eoz88}up$b>9LqyN#I+ZG36HIsd{ zcM2U4lAOH*2GSjLA-*CIc)d_3N=rGt;XxXk@el$|Fli8f9oF0ktZQHPBYr%VX2C97 zkq`$_Dg?g<EC>pFXI9m3BmN;2G~<2WXT1%6p0`LY>vQ4)`W1Yo0Rz3KQ~g$iz7Z-R z(^<9*g4M`@%ndvG)^ls@EX#y!;BmvZ24ugmYz)TJ%Fp(c#ea)0$-1pLiAE*w3xVNa z=D(qe+EV*vWXsh)!Jj~$O*aL6c&8~GjcsWO9k&;kX`DPZjkhf_XWWAF61i)v3H<3< zlcqBvXL9*Ay?!rBSCltT5Uz7nZC1!AosBp|LgQhY$a@`|VP_2DNc0F<dKrYd+uEl1 z3H?@<+@c^p-Zz?*BnSrgUT_isqWn?V+;Lp=qBaQW9S=07Gu&ut5n9KDoH-gS23z+k z{eSY$?vSeSs3^<l0eb&wfFKD~Y5Gw(e3nAUR_w)?Q#+q%vs;@zb;Pgcp8ZCwU{P0g z{F?GWb>oxwP$-6nfEIjY;Ys-Yuhz42K(GabDK9y?ow&-(CQ%2gEKeikP@L(u#;$Hi z+3fU?Xt-)S$uW_jh&$3$Z|~K*S+rd{rDh$*G+PaM)<4p+sxv9>L#R;bi0T**?!FmM zeuyI%AZLS<;F$zOmdfGBH`rt;OKEhlm+z(qQ-ch`d-GD7t|n`+QmcRMq`5s|(!X1Z znzGF9SLG9(V-MFlxEcUp+W5^uZ!u`0;AEL2R2fa`ij3`m9VhxqGt7277TS-6h8s5x zVCv&#)d=-AATx&ET({H%_;7`ZNaJh5PgpE40W(`YK7q$jKDaih9&yXBBAv?SQPB|G z3Decos7omU%LxTzPjJU<7l;ZORLJjYllxQ42rz4g;4n|8xGUB{CG$#Xjh>CC2A;!y zr^!DZD|1^s3FMA>0g23Sy%@gF+v&qJ-Rmgo@{n3m5#+ZTeV@2V(^q;mLC}1X46Mrp zA*EB5&`${H<;Z+h$+;y4QFl)pBV?cSe!Wo-)XKPv{XpUv<rM_aTn=6t(*l;Z*jzfU z@2(^hbld6YOEK<Z_6owsWx_%%^@Z-pE(RyrTp!du0-I^J*mUPO`>wjUHi5-ZvU6+h z|HDYjHhYrY?8j|juNKk^_n<TEUZPRCo7LV8!D@X%9=w>u6K8AIX;s;uy6fsm!cS#* zr20O^v9vdCeAEDW*5UW<imkx4p(&OmXGI^}^=QhV+~iy+u@Y~q3dL5TjX+NzTT%b1 zH<6FsYgm)0pJ}PL-COZ;&ym3_!una@ud$~VINiQ;25WZbN2WoUawre-nZ+e9q51rC z<XiVtQEBC%JB(uEz78FLpaxpR|Gd$w<M8P3V<d?369wXHz+-cfQy>*ThqF?CEgj!w zqZGqTyaB?>Kjmd`NQ}IikNC#rvZ}rSk?Y9;S_<Y4;w+M%aJJ6u2^Rz?Q?WUkU}NJE zaoF*t=Iew?S-u-3l`c26!9QHj;MQq=1iSnxajE$@Lj!`knuaHs%yEVlm${&)mQdz; zcLB(>Z3aDAuc<4@t4{KQ;92dj11MLCk8DZxoGDg?@>V!I7ypx~OoE(RJ|AH=`%x(~ zSYxALcp}%$y~5{XLU`h%^YVBsBii1c-4d#@Oto3p<L0>wb-6M_xD;>cq<plXzJomF z(c;N@l28WJ%s6ZHj@7s|;;2{hfp0H~T~Y&|hWpA$p1xb4CS}9B*BOH<RXn|Hfj4w0 zzufa6-)Q->s3vq|esTq~iKpg?j;RN{3ZETHUF02_9<K=-knbAF=>169Il)SoF9VYB z?<7Ra@yvIm8vus8cy-?{Cp(C_N?Y2a=uAK-`FJ@p|LOmVGSbZ2M>R#;^F8+1j7MDN z^F}bPBS6=Sk;&A9OH5j%lh3oDvnVcaduR|_@CF;EAra4p9b4FanoM-UxEh=>*i3wz z_Wm_Q@{pWIG|CwZ7lPz7W8&3Y`mAKJ!`>6$ZVS)JX~02&st7BB*EjRH-_MP=2x2^p zl;zKeXqfx%k0jrQo}JQBcN32g+Bp{--y{5jtI!_Cs;RgAG<edk@7!gm1K8e!)&3{; zX3oTrlI8g_BWAY<Ni7SYnP*qjfo98L17D|*acqCwoRJO{$Oy@d%PM;4RmSOkgCuN1 zcWnA*6~sKIFN)NOp124CZ%P0-0!Gi2gMp{l#KDuSK}{m|7z|^wD^~C2s(I54&z4kn zzK}wj7SMs@%+)6)(!4f`1P3aX?mEl|14k>Yd#y_ZI5n#9*W5q2{cmu$rc}@SlkxEK zAX&F_MZdg063{K51>#Fc!I-&hl<|{oZ*^&vi}tTIm)Y86n!yXN2eGEN!Y~*Gm?c`S z8JMGzHj6IB3TXP0g+qSYq{22XZEYvOS2*-gXb0$?{G`LB@Rs@;YRb2o;KX1P;%O`` zh2a;y3gIx;c;YCbryI|?QFK`0rm)My&C+bMY#HA5Q%+>&Z4<!yC8M`3y;A-&WU<YZ zqDs!#s<o_6ZK^~k3~G6se)`mlLF5Cm8!->c+WRSeYekJntt}KY6v&aSpIhT>Q%qU- zZ_{;7eK$*2vii8DZ_MHZ=?_K3O`P+Do9KPl1!VMS;g{taHZqaHx<I$~<V#I5F|*rD z4C|-Rq!X9SNsneqmM$TXCBo+N>YK^`A+iO5Mg`O!-3OtuS$%WRIl1zAN}YTCDQ|bH zpvgk|u`MqxHzY@$(JgZ=W`~84Z<z`L7Q|4L3)`h=+wYgWQ^YO2FbvBXHujQ|o;%k7 zR_|Iwt~Y7fUr)$(>E=XU-V4HIgB>8MHKtEVgl}WbHw=IVIop4_jw~H01u8PzY)vzC ztlhDcXce}ik!0>&RR%>@j%F~%n<<NqrGcp4h9E()=0y^D8_ryObJF#oUdzxeBNXZx zQ-LsbE{pnC^XBt8sKoG6`>ei%Ez?N>rNH|A<MpT1H0#F-4gNhVjlUI?YagPM=XT-7 z?mks8e#+0O3iM5bh^W#aHR$CtAK{YsGezCNP1qgE>dmk)Ze!HRIO@dzBhFH_Y-=({ zxIF+%6-RpCf-1NUX1y}&1>FarZcdUj(eX<Dz68`(V#cQ0*UWPqupvj1d0ijMowx-O z9x~oy+?_{JgGfD&>hTYZ%}a-vNIlvkAe8TY0bm1P9pQ~y7^b2Y<v&>bb!LnYPPRB< zC`*v2GcundX`aKKFwmxQ3J*eZN)rY}n+>2_=PMt5b`fFTC)dLMx9V))KZweFvkVqB zW-C5Q<OBWz(UfHX&T}YQr00=_R`BbI%!MxE8yuZC5{0w**F;lSlvzm*iX>GJIF;ip zvRW&r>2smRpwo<4_#0O<428?|cx1lA0w_<sWqo8KU=zq=g>S<;G1Kck0mb!LF??QP z%bCyF_*$49Db>tdcGy7WN=Jet{nqR(x*QUX=)&?x?qIRtoDyxpl5CPA9;pY)&Yvsq z-wJ&9I1(Sc>lDb)Ak7of(a$+qEdCzyd)eK4J6Yg3d2T)G*5*k+V-f#C7N<#GuRZ)~ zm3}%TUxq3{HD|u$73x3kC(6xi$by*9G^hXrQf|wcuaWh_v$^l8;IfTmgU&B;i+meX zv?cV3)d)|Ww7_XbE6)rd>+8x&kUY?yJD!;w0thkWNJSrcKrhE;|LG*Y*N7z!+<#S> zgPCO!Ff*f32J*4!)04QD)MwG`bA$!Ji>a|T^Yo#oXOC{cqqTA@te0g<*#Byg@=ix8 zlfP*oLZqV$SRDdX`7k@j3^4blY*2SU<A};3<^FA0i-W2pO{dPD$1?l3Y;?sYlbuwh z12$XvyE*cY*`=SdPr_JoJPNu@BnA&7*bESR`!1opOr5c(6gV9eWyU1sFwjqL0iV;T z=YF&U+r7sJfrrvYI~L>%UQ%IA;SGLJps*K8If7*R*)3iL7(GYq0R_hgo=e&~h%$TZ zvDojpnz?N^!cMt;z}31_JaxzbA0pR)03iU{@U^DNO7YYg@&FXg0e>`c_khhGT-0jq zZ)$@Tfe7FwoT1x8I|Yu{IZdXC-%MY3XYI969kYA@00RC2sDX?B>j!is7*!|y@)tvh zBu-X5=v8F%I|qhda2qxYaVfN?<Jgaj*=|1XP|(%moBR#-ncZUN1MC{tN;fo&ro@Z9 z-In$~a04J+)`9SB@M@f|uYs-`4r>lnt^i7(560xN2B<dM<MSSoI{=Y292a#G5Q|-+ z)^;4%di4dpdR4DGTKu2OKzVx+sx{lxna?@aG~OGOLusA(4d`C!LNhdL<0rPK%wPm9 zXdMkv@l}G92lE-s*t;HUoS;<VsoxKuQ_vAtaj*~2Qn7?|bb8?Y#OQ2ruRdeuZ-0w| z8x#XJTTI_S6PrY7Ng|Ha6%2BY8Y`o$S>%*;m<hN%RXf17(Iu{uh!#e7+`()v;?gK^ zhS%0&m~cSpiDqV3TMs25YFp-gW{o=^iK4EfZ)r=_LKL)`%5FyDo;fn%X5qN&)pFd= z9%P(2*~%fM*{u(3MtT{?pm{l>kc7gSOExUi@nKp3Xio#-EWR>-ztn}y;2C((0(Bbu zL(=>6At2Cs6}s>c>oZAe_$6wz+|ZZ~ii=ra?EC?4<HBKj6Q(7?a&%7Bs=_&L0xF~O zGA#rcNLa0_19Hm^B)<@sco1X#Iw$Xiamae|nmD^{-u`4Kq)&$~hs?__YAFhO;tU%V zwZR{YE~aO3AmYjb9IdXi%7WJsp9f2(-o>I~qPz&5;8CUoV6%JrabA|wz7vzwut@Ai zz^+&|<xE_=B?)5;PGy!OWmp{SBak>8@#gPFGE0W?j$_@i0>W+~f3b+k_VHKCeT2*4 zk(TprvL?`&W3yty^%UOosEbnhy8wgPcN4)eR#0F@N+MlPgQfR@!7)tTrf83%H+416 z!>kAM)lC5SzyQY@Hq}7d>J!+`D=EFN83L6cPipckH*(5EQNlw~g1e-uAI$b~rFFfm zI8Yin7}Z$ePQYW~f-@bbOTST#>!0W4r$~McqrZvt8`EedjqFiryr{}Trpj_cucm!L z#KI-syuVU}q?)~&Di9Uvklhs*x&QzeFd^a)MgLQO0JkEsM6+>HWM>7f-q|GdWLjjT z$z#p74zJ1Z$27hY5TeL04pK%&w}qV=2rS{YKuN%D>}ZpyLib*q2Vo&Y(*Wyrjx0X7 zA?cloj(C~S!9Pu`oMLV*I@0<K<;?q#GF-zoEIlv4@sb_Y=rrOzjb%}WR2&fI+&TyD zD>vbEN-g}DpbuZQEzSyU){}Wv8y9t!)>ZQfOQZ8>g7j0q^tC{&wMXCi&2<WCpE=D3 zN|}*)v54sb6+@>x6!I`x2z|0f)Zj2K0gv`%n9Hno)HvGoDA7ck02;!BK#uk?-)oJp zp3OEmwaNP(#7V67i~5Be`PK@Nr`SmaCroY=_YV9KV1WLG8-q);k~w>BcXu`sKEGvv zg>kF`sPm9)1*D5LJ7s^0jIZG{-14;y`8>C2_R@CQ4qK>^`al&MbwV{a);e5OOEvVr zI_9;#0GuD_71RmomNEDysbh@}K(52UHqgbPpE@cF!GpWzL?^99olFAJ5p5}0q7;Dq za~?$vS6P{^N6!q9liHWW?^*T;plAX=tCyuBBnVITfQ|eEv$s!VX8q^7bMtHSd}Bc` zm^oTkW`gxQC8mkV5@sjN=vt(F@@+tCplD>yYx;K*_@Ou0M_(658}t=JB4k3%Z#+`0 zNidL$T_e7UFGlO?+6NrQ!VbuXdHgmyi>@0;P<P@lMvYHE0P*$Gxc80RD4HOOdN~M< zf*hcw>_`6ouX6bH`W<F`YXLBdMiQaHT&K&R?)cI%@49q(pO2se7kW81s2tf$O$Udw zPvYWlv_CMz((_rTOsT>$46-~Pj8Qm$xfI`$X#ki$aZPktNi;wI>_5^{Zt^;egMoOE zRAn}aY^C;pVP-C%gPv%^H;kqzWqT;=5Pv101eZLHcAU!+a-%&QTP~;SDF7J7RUblu zW~1b50cP4YIB)$0pw2s^lo-Y&%9Z}_JezEag80KL{X-yE!#AAu1{IP0eL>GuEKl5H zLoU)m%Sg=^_eI(woA4%*?q~seA4F-1BTc0OkMN{^W-0C{vNa>$F1jR>M|R}|dE|(E z*#*f?gEhjNviJwQ9i<7DcwO+?rGc?@2e)B<O#v(%Gjo*Sgc>t*D%IjEEE=lG(%0wd z);&l{T3~j)<<;;)r<f-d)&@?4?KGM@axBTPXT83m)S5oN>nL_%t2lo>|LoQKIok$8 zqkegB^o^;u*%!*waB69Hb0tGlMiqU!UDm{7@jLALeE^~o4VO0T>n$FYX@<xS<@)1h zSAXad$lLKsz5-j=ndj<O>Pe}`>-UgVAIls-$4ki?Mb*o5i~gbP=~*;PBWg^CH?jxL zm6rdB^vcbSD8Ow?G9WYWX?<S5nXF`NOa!4BAND{J_6WCnnvR&wGfzLxUn(Yi#5!F^ zV`_!d=q-}Lm7B_msz3At_nM`0!AvVb3Kv3Y`a4ricpdq=C|$QWKjwLHU6VxE-4$QV zI!xbva^kJs_4M`P<~m`4l{^}^#Q`WX&s@TK(C^SKYWZlnR*zUt*jAqadD>hZ^SCLs z|GF=#K!Mp5Q`a%gt|xq7TCy4-(`#_6I)#JE<v5pf9uYsL;VhX~Q_D($w#SvmQ*B4m z`}{RubN7+2V<Bmx9mAf8GoPu-p%}6Qh|t#b{lWR5%9T!~@>lFrgz`|dDL5aKVm@*C z#jWQ_ppW)06db@EzUVeGh>0k|+3o_9ZRxIba5-@FhrXjDaI){^(n#WRhg=5zl)3&{ zMLd-}Jm<!kGMKt_&5LhnuF&?$EUx2MZR9u*lFPyS&iO48!L3vcD0CLqFpE8rXHd>| zRahzj=_l!Mq1)fg=SrDZJ@d4B5nRWKXI=uPtQQxV@BL%zFtPVoyWN5UNa?Q4{lZ11 z558jZPiBtMZfv&{k~uUbzn$l$OlPlgH;Vg0n)Td)F(@Wr10F){CpB@m4m{#{{Pw{; zpzcpOae_W?%0Nuxt-9ZA`ZBov*Z;8#qLstF+dWuO-JA6v4PYcKT}Y@XAhPZO+tym> z8Ujxmy^Z5WKoc(nX|y{PXm{<y-UQuew@Yieqt3z8SPjXjDvG2z{P2lD2#`d08MJ#) ze=%6n<Aj=dd&Q9E8Z?R?=EnK35Np4GWU%0;k2~=dP<>u*VFUlo&mY(5KOm~neo`O5 zL3r3(6iZR#8KDrN|5?|U?xyS%p|bIBcb1GV<k%gX&ASeC{)L?*v*3}&+!N;mb-7{A zSo5Op`EDwY46ca^j#cwT+8spF^0hA-$sTABK*a3r)lU2^%>X=_<I07}!v--VU$1)> zR8kVJwAQ}XnZslN13HB17WiyHh!Wf<COf$;FN3_H3IVZ#stC5Cxvu%NND^pL;YN!I zB_yc(V~xyM>&^C^=`G2>bi<pD27n^ArUHUmCS1P2JUhGB6d5xuQXnH{tnPXDb~~If zsMUn*eAsvIt%-qpoag^6lr#C^N&GwYs)uq3hlYoMbSz;#RM}#4r=5(qDqxDSG>F0< zYFM$^qW5fUov|w|kDnOAM_4F`ru{f&aV_M3phm(j^c7roxL*hUCX>Z)*q&&6kLc#V zYR7md-5{dl47ZzJAEnevS^=IB$;?}AVSD<Y8$ZRs;^QOGM46ICr&eLd`upa6;9Epn zqNx7R+8j}I`}Y&m=24*6n~QqDZcNLj@7Ok<wwmv$sP(hP*bgZ-D;l7>IXu1MnWRlf zRBCbRO@KH20!T++$Xk|^T79x|a$xx=*MR>+!zh9gH1_xuB`!3!$+$$SzIp@V9F5BM z97uc{jG+hiweST1(fRDx%FcmNH^}1H3W0D5KQ`N*!7CUZYT+ne72dTq`I65?k{cuQ zi2?g&(LouI%0x*W1PYw_j(!yPY_jNEK_xAYekSOM41s(4PJ?2ZP@y{8s*T`oWW>(Y zg3fb#?RV;-%VJHx;vn?CU=BN05gWts4GtGE|1QRJ(Eh2m_UUL^sSUg!7uI8)c-H{U z*~Ya0g=4S?OYV8m9(!y((Y#BBnJBOU<U3MPq|8Xq4Xd0MxtIZA+#ObcUQg8AU{HoD zI=m+rV?YqDdLeYrcm)*B8YR>kO}68hth}P>QhmI;#Ot<07iRn$uXgfU2?5U|J&EbN z(ajJ@ke0J1z|Nn%<=xBfpBV*nyqHF3)C_Up;=^}0*jHzf&c56wX$Rv1I%Njx=@{{B zA(gs=@xqE+S2(=q60;mawXxZyEw}cwJ0ksmQFX9TT#U);)Y*LxFo#ZEfPhzBpMsLb zAYy_kf?BzUHPmb|X++IrGhfU(ZwrYfSA_m3erybFhlv=oNUqO4JzI(~x;F(jwH^po zVuSAN^8A<08awaz@fg3bueDk4Ve`CXCo%BZ_Tvg<mILf{z@_b+e1ZAf%}(s)Ei2T< z#ej6nUd%2eo||F2Y%DYF;tq)p#N^iJ=U39xS(5GL^-lmp<=HiHLm?vy@!FJvI8N4x zg1B14CHW2|u(|{8#$Ndt4Z2(vZ}H2ES2E!kN>1#9q?$&*um}{!RxYN&QZkY^kKZt~ zq&|<<*#lHb5nA<~UMLGtc?ubM2qJEv*{qV##*Ij`c~5r;x>x0MuN&Ab6XVY$aIXCj zI`^Q|(UUMhnt2^n(nGcp6&V#CYyQcMOvp_7z1^@?{;Dfx{bI%2V@4cv&U8#vnY2BO zfCo-rzp=nL5~dRzVExdJh+L&O=`goBYD^vbDg{$1|KJa*;(KQP(y?-jnXNwPzalh4 zsje%1<&mzvCDi(OwU&&%Oz#jGoXVXg##nn(TQ1&rMCwN^^LOU2vK4@TW+V>WE_?eT zh3MsytLW0@s2e02nMm)T#@n-}8S&OC+YZ0x!1j0IXS}$UPP5JE39U0OQ0B$`?~Z*k zcn+`#MKcwHAgGy(*RV0&Fm5)Em$sTL!hUWV+<h7LKYoKJA(z^&(WJy+#3ce{#jN$N z$+PO5&(+x2$P76IJUJ|EA-7M1@ZE<ShFENfWT;}EMYEN?XaBXFHMqORSEZZ#+&fn8 zf!@QugAf1W!ky1r>MmOEXLI6chBXg5Sls9DeFGHBQiTlr$23er_fpn%O62sW&ZfMK znnOLGb(6CV8`v;chkxW9U2MX;0!hM;k{eohsr!rjU7x(Nu}c)e<AmnWB7y|mP=>Yk zsR?1IKQ${uml_!{wehtQV$K|EtS_A<Efk@8t`dFE&X?|u>6sP~HU-^_=5l<TA-Q6e z7MjlX&PYL;rXr&QfbL4Pz1bxRCj7y|+i3r}`J>&wGJCFpv#r*N<y|-;ZLsGDvxyOU zp1u}ZNjbIKUwiFyOsd^$bEHA(F)IKs01<{<w3g)zU-h{NV#P-A0D@AHzA0;|*4=;r z00dhIhb_gKGmpJRTQ3VTO7ac>BxaRE2i#iWEC>JqO5NNF3Kr9DoIR&#YW;;^00fGt zx&ib^FgP)fY<7L!ko2mQkA?&zWKLbUiap#L&IBVvfB*nR&P!^dX*HGvA5_V=5?o83 zFabXNN1$wKM9SCz00RP!x4kb)!DK3Sk_M4{{#CFA+y`ICNP8$a#3mpB0MkO_K9SJ) zW(Yg`4Lkq^)0dLV(tG2;001kOFk4=<Nou9HkRD9LOaP6yc0Cx#7OUDQ5j?q$ev3~X zow~SMuRo<Cgu6HtP7@COM?YVHl^Z3{(fO}l$Qr{~lt&C=L8eRm$t@U0rMA7Wbz}+e z!dVoKd`?!0nZr+!@SwtrtDo=!wGK_;=C=i|DTHshc(3j&tACOi=cQMgy@+g0yrvTX z2&)Mo5%lqfr5R57Or+y_%|nVV0E@<2w2T%)N^dh`*42rggAVl~(=#`d^goyY13GS& zCO$;0;lKCnssI230$lZ%XRmW@@iQmlj$sq#;3i+^dNz@@66~OO;kS&BJ^%n5lkeq^ z7Y?tgl<A+m9Rbs_01C_yNexO^8}4!)3$w7>fY~s8Mkr!$fdL7BuYhI6NcK~B79%_| zFF*bSRR)o-n+pw%3E#am0dxgvIY5`%R<V7xh8K|$r|9Y(qld2fsRMdZybqvm$}*}u z$_DC8IW1x~Ernv=@&W0I4aYDxpLCO)h;cZ6NIHZM`yo#88#mla4Jz0S1JjgpzipmA z>lxI_G}<93A!2)!5`edE3UnvmlU#dQ1PH)gOdc)@dJIR*VmSUFiwhbskbI0RYXACn z$p?eB$q)bl4~*3Si^S^se&ys5YEx@soj^ogae#K0(?Exh{r9xMsE0SIfk1$(T}{~p z&I-khc|xs9wV4};Uu=UPvwveHI9Xb_Jqe8HrGi`rNuSpJlX;>PY=6KI)g>DG8N`{p z03c0pbVT!`hX36>-j1VqbO0K~^F0{NHkkL5@j1GaK@4>>001CS_472^3N;HCq2tN2 zLbQ*5pf!*<x%7o#YKZz5sX+}@-onMQh^*sZ?Rg_fkM1`tRhTHr*UUt8qX=S9n7veI zF#h}RTK%^&0S2STe<iUXX_H<Tkf1LK*K>oxdMn?M@2u@R)6eFKH^sQVZ0cJ#@IL5d zDJkc0o6v(FQ`jbXA>`FZni-j7_{qL6H7^u8)Yh+P``s-^P85dhUOP8o_0)=HPOz$- z?+>_?u&8Nmr2f=Njh}RGLJgpV%btK<UsY*-8lE&Wc6GV71L{rz_QB3ElHkO+G*DYH zQsmFsc&`Puc6kaEq_A2UV#!ioGQ57qzsWURDf`cD77W?GdtQdExs~9?3zWY-5a>?R zFyW|m=*3)Rfu)-<#o_WbLV@IDpqV}?<?FcH=r&q&iLu?TJ=CuhGA1H1cmJ?U-3X%u z-hj6HX;nf)vt8+K(lpKhiruL6Mop=i=9%y>Jr)`QtW<+<R2Z~%Ao$CGsiJmCGD$>E zY3`<NEMS%eee6olV~f{-3lhRC>k{H=!y`fB)!%#2Luqs&`fdsN;W<R|FsVVwV`NKC zZG_Zv>g|~jX%r%-jQxH?Y-oA8(ZFc?DAw$`Ml6Sfa6hlmhkihuCOT)f1KG;jHRO@G zNwtp0dwmKz-dFR~4b720H^i$Ij>${OFX)w%v9K5N#KuzeVCb8-l;YOEWhR@nYulg! zJ9*UpW;2vMNfUrF7g3!;2CX-$|NhAtYU-_g76Gln31EM%(zPc&H>ZHS?GQ5vPM0B( zaS&sb&PQNoi@%vlF~P515G8I$_SRt~d6PVF3C?qEyz^6%&PR!mnCYRI?T!r%7`e95 zY<JNtO|)zxcYN<<D}GJ**$}FPk_3Kh#q1-&?&8)|-+$*e3LmkUUG|p2tW*_Ob5iuU z&VNgX1(W^}GL_RWqf%HunarcKiiLOaSpt3L`fc$?%KQmq>r5kO-Rm`P)djVP*`C$w ztct#l@srTW^Tfr#jDL%REv28|om0A3NYu7)rEOf%oUkiSEe?p)#Jw`Xa8MRO(}nwr zxRXV)Eb_x|FH{FkAV=SUdmrJwN8Y;~xHcMPOj6j)>FSRq)bP$i^u}92CB*Lyna%V4 zd<ZRm_~9#P;zb5Hm@oZQ0Yh30Af+_0H)5v{UXNj}O(zJ7;B<A8UJJ;wuaOk_ezqV6 zf-&V{>6zwsdYn57eQ&48BeAAVo^mbgfM&WS`~Mjr<ORl9+W1oxzbf%6D}DmeQ5b$m zq<-)RB7@%eO-E7>F^!$Oxgn+P>CzL3vlRACM4`id;0i9v!`TxLjs2V|w;}46$Nc%O zJL|PYHr$q9FY_s&&hxQU)b)I>cFT*k2aueRZ(?2rDCzbIb?h27bHV@Iuy(x*8Cnvn zWf%{D0%)o>jd4UxwLwx9jkt`2WgCp#oEXHGDS%3Nr3TOIH?UrK?n72PiI(n<y{1B^ zg*^=s1c;TZdDM@}7#Gh_f=nnPQFPP#ifMja<L$`9J9A!2Nl!c7X=-QD!k2uDFz9%) zM40kbk3;DR!fyJ;dO~gZ>r3E4g302bD3J`Sk-^gLJ%HORy<q!Z=|g*rF5vNo(z9ty zjjH<k7Deu1cdm$V#k)c{*1ca6R!3R_<~cpL{Go>vj^BR~i|8QK4F>g8jDph9;P~tQ zGf-*bYr<XUVG%N%L59R03TKj^SuZNkf&n6c)aL#=J+V!atIh}p;Yn$w1K;4$mgsi( zu!Roz7->;UBRn1le#uKk)3Ld@>ZhsO>w9wMeDK$TCeQWtj82F~$r_jH1T4FX!$3cJ zm2+H^j^jRpzvE)!LHakLw#dLvl&L9NLRAxb9k@%}9yza#=3s`#eo@p#?=9o`CVLP- z-2%b=`FiY;Q{aY*JZWp(=shz-4Lh28KW9IN1>Q4U!HX?Sn-uaUo_a(Be9LHLm^=Y> zkPZhZl-j&^m6~MW=$Z;)<Mb4&6>l-Z$Fgvf#-~PWo2-Qxn-sFCqq*h=R4#G{#7V!n z<Uv#5sVg6%r_)R}<kGeHJFJilcO;?557>}?9q_I+_d94NkKsl`S{bKVOZ8ttBT4x7 z#C@JCPd{{IOd;Rk4%u>Sazzg_XdC;JDG?li9$c|sIM3PB4>HDw@p7qa$A09DMI3v^ zZj}m}bteH*nD{Ns;#cJz(2Y);5%;LbB>0^tgBb=YP&~Two8x*>b8;q;B6$iISnYZW zF~E#&q|u>VI@z0`QMXysKexhfI2<1(iYIv1|0?^43*X;jeyEjPIU3^Tj}lfc@szx- zn>Xa?8lW3%;5^6q4`H5cEe0XMT_1D5?*BBjdoA;vwL9(30Bv?xA!XwHrdH=aUl{MO zvW%_~^|A?yFwT+`J^Tc_NEo6(=3n#gS)mBqr@JC11ma~wlIil2>4Fzk$Bj9h3iArv z5hJ1Ut%!lMQnFhZ{p!O<Z0bphu=s^bAFVD(=dcpr{3JoKDBOX)%$<FNS{NNYGh0@w zpx~=RF(nt`z$}T^ATd`~VsVC)6Fvh!vtDn*@Tf9@wR()7TxYCCm2ps$HI#1)L(V>? zFcdP`$1#-6(Q)a#r7x8VuhDfO{P282xAapzTJddB)1BNHsg#7EsfF^#-pC5#dOiMu zN;T+`_Jwn%Gq!tH{NC7EG*_vzR``>%%PymKns%^{6=U*De3IQZN3^ou3Z2d%yVoR7 zX3-rhGAROjH{yhR_)C_An;?gaE7;EmOYik#(>+eLf5padeRrNBfkxK2?)2;sT9z9G z!6{|3Vc<e&(;h-w|G&@dl#n!=`%)&jQ~gR2&;S4dYXPXkiGTjL=vtvtpx2ebhgFzb z!IRH=1`Y=0M>u8ia+rQh=^`9T<X+XLR1964WnXX%2pr83BWJ^d52Yye8{uCmx^hXV za71H3<F!Nel?_}7)Zd%ij==0+kh%Hm;ePWSN5om+hr5|evYp4wK6(jsbyb=h$3O;T z|FI#^ZQM9!O!*NFGm>?(S&4}VF8cfeiMco{IR*ob`<C7HrDgrMt4o*Y=x;e}M4f-q zUgf>snq6?VR7Hg}d#e2e%`8myQLi)shU1*Wa=XVdP16^+xaLvBrUF~sn&CgE>a!Kz znb7A9nxYAnIMBEDY!5~vHTrkH+r~SmU^F&(!bN%oaA#Lu2g~I_w)@8ow-!Q$x-*{! zP9OrUg%gh7O77;Y@?>&<F|PXc;L#_XSt38NU&776!tc82<DIB`jwzO@qdh2Mn4a1e zhXfP1qZy#e?kN{5{d*4fCgznHX=e2oXO1n;P8dOG000VsA>$ZE|6(r?vezn762Q=> z0}aarP8{E%*wSyMkg4D&1nIQs!EkBtwUaR3`X&eTS{fPX9Gv6G*ztCmT?=tqv?g58 zXu%o=J2q*e1Q7E63CZZsjD-1t*>TkYN#4EM{!tQ0Ytzbqg6R7QIkRr3ALxqQApH65 z40WF`t#ywZG1)I)w>v@Jqr-7i5cdeGQ3jVkyE}5RwcZ2A?S_VZL;<G9Lb`A6B7DXG z#c*p!c>)M1eLdyAD;2ws{=OZV3E&J3@9I9G^N1aFci<OIv`A}GIu=)bpGA~=?DHNs z`GaS0Ya7-BuBe3N=Vzq$cnMlR6u0b;SOzm*c97pDUX00$F66s)8JbFD<2<WjD;ZEh z5~kPd=+%@S5i#?Kpw-~#Xfu4dFcA+of}RAa2HK;HZ2e!_8*+JeBT4$x0vYL=826D9 z?e#gEj9p}sWLP?*0(+w0B|UFhB#6kHsfkyorbJQDPRYlR4f_-7CWgeb$n3>9gq$Fb zubD@DkLX!2?B%J75KH+?ks&BGZyv-|?9D8paMxaV_62ZpAH%L`5KZjkmPH>{#TSdI zU|zJZvo9E0IjlaQy%Iop1sZUkH4aNeTo4-g$a^hl&3-|EPz_WfqG0hHlL;u%It_<w zSHJpgt;NtS$b--f|CJLlvGb_QF80lEdY1E55CIP2#E+V)gwO|^ys)i9R~;NpxQmqo z)#ajwM)~Nh9WI~JoBAYzYHhvbJn$ob$^t-un6u5{sSEGsyPkRPH&Dtr%Fm}rV{pdL zm<BOvfMXZ!2ino+vl;4-UaRW!0CPRd5R+Q-UD5m75L95<^L!rt*ddVAl1S364V=ui zcf}9@X!9(T1FM9?59EAT?F+G-@E?OQc`lLhE(GF$FXoOn35-Az54tBNJp^>1z~jOS zLd~xbmOUo+V$QU+bsgGr4JZ50qgZfnD`1y-ta?D#7W<UmHbbsf#X*EyW@HKadg)T* z^<pOoJGEu6!s`GHME=lx(*j9jX!kI556M3RZU=$)-;=S`cN9a(*ha8tg4d7!VUFBD z{3j2sb38rc{uu|YNi!)qUL&lcA0PX{F!fHu{E5glBALT?@NfrsA-!PTIS{IABUGsO zzI6T4jP)n?TzC17OMmSyG4Be!iV6O#b)hGGFkBm8mNP2Xen$+Ay#6Pg97TU*uJo3! zC7+2jG*Lf^c4fgKl56D=b<o~Eoy~1gAI8yGfKHoaPcm08>A2&lO@uqX=7E58`jxDL zr=iOdIG<{pHw$7D$Z47zPE3i>r;SyR5UNd92q=@l8K=)J+<>xh0B@7W5I3zIooO1k zlm1N75adP*sgmt1p3MY*zB8HvR#*ke1KLvfF2Ll}CIuCt&hk&mYB}C$Kq4deG$5$T zF$HmNEj@blPQXrMKa3*W-4jz>;aMit=)kkcF3Vt%+a?X$dg`tL(5JGnYh6r$PPW3$ zSO6PAU0f=8iJ9DJoNQ-vcQ_tQ;NVI>TRter1PwCe4{>Zs5_E9*0EXu);&=`NDVj6w z<V$kMYh#XX>OX<nkQ9g9<BiEL`Q{>lb!fP6C7W3V$|aIZFrem25S$blG7EJz9=9_| zSuCTP#&v0U{&nE{vbC9Ku}7Y-Eia46nR=EyB0R`Gri0t$K3+?fE)(6*Z@|?$?P)ES zM&d0JoMY0(hIXfk6cMK?^ZQE7E(6Z$2KS#WF#lx5rM=M!cARUmY}%#|x0k^|BteC9 zH;9D2AN>h6i$wtIlC`W9o@~)huB@mzjs@v2*LAzR2m$8&!>|qSJ-6^r=aUJPax_mH z7*!K+1&6yu%yR!d^Pf%Qr|2trX=<Qg8^@>TnvDRMXyO+erM9rx`x8Re)=S=l@WD}q z_nqqH<ruPT7`&a<3B{KrDDWgm#du8IA)=YC!A61*yeq|Eqr(UYkxNhlE|xk>k!Z;+ z_(`D=+;xfQt=GvF!2Wvr>A#<N9JV+Q^xivNfPvSkTup>=#s;%94krd?G(Z5M7}C7$ z{XlJ>Mz8-(p9aWQ=*vOc+WK@2Co||ea#IZ<-JGr*hmfY_1V(b^S%F1Ksm6$;N-<4| zx$#Z8TAO5N*Kk#$TqvJwt@i?guZQdH|4D>xJu281w=lPG<UtsKW)R+Ak<TPW)pe*g zd8$gW@R2ie=LHZwuuPY!f>=_ThZSwUvJyzvB&OlNhM8nun~;PAH87hXMeYgP(~=Wt z7uIL!+<9}1aBG$Z;pZ;tpih;by+lKQ1l=rvR>W&#Q@lmIngg-p0wE&scwE$4EH4Yv zy8lNRjXf8a)53>wnAjS@;i=Feg!Mgp)E4g!qt^B8T7lA0i_oio9h+*XJ3{m&LSOL^ z)h<zjr<b6MM-xhq1Ly8y67n|SNlQ$JQD)AW^Dny|cpeE!20P|AH1Z{yH6pfBQ3PTt z<x!ha-wKJhb?ktl=d@G(xdAYd*se_7ldhEDyWvjlBKgE7Hinj1Udy3ikx&)p@@7bl zx6jk21}zTmdS7YO!{c84?fZa#Z#z<3E7};ldBi~9vy>A1N$|28GSBP12)4J>7mj|d zHwgH0N&t2AOW>e_$1(%HNxv-Vz4UTa8m$mbe#`7El~i+Or;)K+N%gCFWK-twmtuwS zKPTci(D`FqK{vhRPYyDI)-@$ab#et3f3`qR_=%#XNGU&h7d6)b8P~|={5h_3ta((m zY4?5cvq9lyl`VG{??VAKp;-ZU)x%1@b`TEC!8lfL^}{Y-LzVxP+*md-ASr$37$sP~ zq>Z+TtUI#njr3NH;?cSla@@s8+|-%uKMpV)nS2Dz0~N7jIU+AG9RF^>^fRXKqf?B* zO*%2^m?~k1Y+!I<dcL8R^5J1~nO)<oLN0<s((5#f68<}usbgeVHDv<1P?MxdS_#BT zOFfTc5+0C8s%!^I<i3fc&I}kQuXC-An7wFeH-x2rv<}{43d?QFv@+E->kWE)Y~H!9 zXnoKGU$H8*r>Fy$4E?HE%v`nhT+iHk)N%(ru4F#}i@!<jcs(};x5UKwK4CSiw}Kox zvj1w6aXfV*zc4H(D%aVpYgkPqa0grpGKR{GgwLtcT05#RD`h>gm!z4uDT2mD>0Oo6 z*zI@^njONc6$@w&Oe(Ym=2p%K|2RK@J_~5R>jIR7R~J$#FG3Z9f{5*1(L0-?Z6NCY z7O5!1n4S4vN94yF9E|*(snK#0Y%HU%wP?B-B=;s72ErgD?nE8xLj}fwYCx8|5aPVS zjP}gc%MYZRuuzw~p(LBev4;U)VcfP&IUhE;6T-(;3f*t75)QG<S}XC$NYLdPcjscd zJgH;J$Ik+s@yihKfr3!9`G#924?4l2vA43=z1UXotH4F5yR(uT-uakZK<=##V{Z~9 z_z%3C%XHlQhJCH$abxT8q{xNm6AhF!9$U(rn8MiwcXy)@s)+#Rj|y+-%Tf#f)ht=~ z`{9!LS5A;Ax1!J{`EcODk&6(Ei;x$Ve-$RHl%gi<YzqtkUMJjPIcmI~;g+a`i?r(I zV$(p#?t3602+{S$fb67uV)_E;*Z=?k>H(<*iT~zR?7j1orrWlrowjY;mA0Lg&Pr#c zZQHhO+qP|0+P1CEvv<cA`}A26Uv#fu*ZT*|7}tHjb3S8ocyiXvQy`={Q)t`?0)b77 z0+nK>82%_EB)@m82h@OmRkUb4K@C6Fsq5_*U9ArApk1d|YCKMo@J7Ne8+C#3jKY;q z3{*ZwW(3BT-P4I!;5y2Y-UFup&<PG>pUwXg8OsYGQ&($AaAXUj&}6XWZZ59J&SXOV z8XN&xoPg2gWDGB0EuDb2ugak)6bnAfPpO>$Xv$Lu&7U=QJkKxxm^qACz>rd)YUWgf zj7ByZAA+W+`hNY2M-r4(3jFsU!GKD_ylx;Rk-7&#{V3k^pQ&-0pjPNZUyedL4EV17 zI|Io&->cSXg!=@dU;8?%4s>NXkDd1eu$rOL9y`%LBw0CxZiTpUvCXjbvkYV)mjpU! zZOhPNQtP}>eTJFIw4cQ0ZH8kGjk)DA&FT0ImZz>|Zb>h#4)fV=wR|QQdWIrrdjTCE z>a~A%oAaLF8)*#okJJcDy)=p2{c++=Y>9}q+;=vqe=-#?M8N{$6I-YKt`TiIwy^^; z3Zsh@;Z=i$3=*0{PHyAo*vj*S1g&ORPYb+Ru7=q6N-|fliMwyvUVvX#z731}y74kk z?(em3=eA_py$m?0ebyFFgTE$|!GQf%tp6igb^N%K6`!XXu4Sek96ao2(P4`MP6t2s zTeG$WA<CW)WgYMXRwqkVDIRIj5jHtdbMZnwV&LqBKchQ_AxHBc<?gx?Cm!cFtr@v; zd1@nVjl7IJxRX)o)AN>S&dCJ#NL(%00zT%ary@XJ9N?5V8RUK4a6ALH&_ls6>H7WR zaC<UEZHjneiQef<qjI@*SOvKv-Mq5l8sE;q7f2(oiHGdN#zS0@E`gE&{%sI)2Pu?1 zH@+ZQzMmxgqHFvI+pVlRZ!|08n`8X4_@2ArvL*%&_ke3ST|WM%uTX(gSU2atAGJe= zan;TlOV<LiY(R{;^hRGTmEc=WoGL7yB74nQ+(&~jNe+07;K%iE)PenN@DJjyrJZgY z{bDCJDJ~m)vAA@y=Cydiw_?ahs2U!SrXN(<m^%$GZ!hz5YV^Pt$>5!Gb6@#f>FtPz zK1godR&;aM!+u_niK^TV$77Vy!B?(vgbKifv&YF#kJna^KOpl<RI%c773FXp;_s2j zab?HzDg`HQzVGm-{=Bx_m3eh(b;BSVpu<UzxESiZu8Ac5u6#6MQS2C(9Y6icjm%x~ zN0lid4RZoCc8)iJLeMiC@X{51Ik1Chj2t)-Va~AyU0*r7ah|X43zWkiGYS{3`>|zn zqBx~~3+%X+|3YdsD<ar%JXKhXAl6u~N|AuC$1^(miPGb<-<TWAgq-}Od!=L>FC_5i zy1NtoK_|?Wtb%Uwqe8%Hyli32vAW#~iwcD054|yQ_`sr3oDulSxj2fHp`1h*1u%Ez z8p3Q#Z|YlEXml*E<3W~w>p3y~45(jqv9CiLZoMaNjH92$T^JH{d{Uy8q0BG`9EUQ- zJnMmLF~p<iHF8C^8mkdyi5YPp{5i8HtSDd-;6^#6Kn}U2;nxGxP+pTlzW~^-zsDkL zz*4c$FAlmX^xt}}ppe^M06pB^KRWH!=2axUKbcouDwN!==|%A&&Q;_1;dCF!0%N3@ zlD+P|5#Nx5$Tl%(1GqpZsJo@Wu(lfVK5m2-jERueYRwu)+R{CXEY_<bzQ5C*cG2Gp z4j4rOa5&$)gMhY#2NeI`fN;asK0#Y&bc(y~$qaJ7rcB(lxjUZj!<*j~6bB17J~H}_ zm0yVvt&)t*UIb|nd1F(9kxhF#%`vzwnkQJax%_DPyr!u)@&!$qMr&t6glr-|Ixc#V zeH_KeGs~nNdfkgD$~_e%++#{5x>LtfDK}FQ^2q<pZf4CXOl>M$V$?JvKAT-D{>e+- z(ZDE<`t;RVDcNKVR_M+?_nEL`cTOhO2<@;lg}h&Ug2~mA;!oK_u6ymmwXaDtTd%H~ zz!q1?W-3`zzrQU{e=BOy2-zi;-e3{x@76}GwYNRu@)`>N)xO&@4>y|KjlpFiByy@F zq~D3x-JmYlreF8w$T!Sp>l$s2pRi8C<765B6K=(_s&D01OL^e9eE!$`F@)nP#+~d- zaBJ@vdOIFehl_D6p`AAA?)Fc=E-1Pr+`XA>*|$OiCve0bmPV0}ML1zOsJe0Pxn?`x za)Myk=P*7^-)^68pG5&nL;p{oolB8WoaMUc=<$g04nVx3L2|I{(XsnqH-ypvb+vG5 z5p_5`s!A+C%MRG+*<-o#Acldy?PDc8WcWYrJKFRl;YUuVrt@F(27i+j5}DyYSidQB zC;Hi4i6PUGfqr}Sk-fD0TQ+ZB+3{3KkjJkr{kJky5U{%9U5KZQn3nsxu@|!%_lpF? z>iUDPxrbWZO|_o{x`){PT|QZ-5a;GNNe{r|S=58-$HSxtD1dP3?z*Nxt_sdq0BXtS zru1jj*;gmJ_w((+6Wqkd%$B%TrX>O>B)oOHm3&Ld1$}`o`ulQGYW4!5k9rACLacOv zv0E}!skeVOdBU+g$>sAx2xv|87-^-G-p^?DnB0_P-?az@Utjl3r$nk(VMcSg^gx^4 zMi$o4FnwqLn^o9}?OMi$az)Cr)to?0p(C;7v!DE*#26<-Lmkhg`_|Xy$KZjLb3M=f zguC&;WZ=yI<$)?->G*&5pgXG~z@(_qcjjT4KQ;Lhp+F3!u~Z5BjB!Qgkcj=~X$Bt= zJ;l_81wa%F&NM$~Q!Z%rBrm&As4Ee#3)A#`r}yRCsfz}|ciTsVN9=#$3hAG9fGStZ zBl7L989zds+0f4c<B!=r&NTfIASJa&fU6HTdbHbAx@=|<_>Z;dNT^l`S7m-6rr!&) zwRDr4IspV)aCXcilsk8faEl~yyj(vDas_LGF{Sa^#IMpTH-{y77=gknEW9^$jMzL0 z<=X`htjA5lo~ib?7<Q_BTSpvmp~h3osQ{g_SWdK@{hf||T7rxVvprySNF#GLLK-61 z`lhzv-Br9lS2I)14yMB~j=S$OElJDnZqgT|ozQi_RChF%wgnkRJgh>95&tWF5(X@T z{c9OFX#S90k(PjvfZ?)LxnvTPBzghx$mUkhmS0o|+g}G6p|0i3@_AU$vL1i8(@A*D z|Cf?|@4%|e3oU_v`P7ha;_5n^H#g7Ccs<b}!h#_Y3_{*{vY118j-1)611>3paUrc3 z-rhPcU7y#`q{Zk9z@M-`e%}o_QpPb@<QsHRXO1Vp!%>l}h<i}+nV9r(W|fn6oizA^ z<+zIrOB@*tqg+z|e$X)ts5#v66x5Hbzf*wcK6IGUQ!Qf=(ns1Tk);$HJ2994+YV^Q zqH0SB_}QfZU<8wI`x}5CuuS$Zg>Y8d)e(oVJqzQ&>$RnKkt?wgoA{mCuHn^S_W|$( z*Xck_eKj4V*z?^+4&jOTUx;8ivMk-TwZi|{+9$p;wy@nucxU7U>5>^>`Rr9_C7=T@ zgpU<qt1XyT$OEL@?bET&s``F{lp2@OxIao2i)>T8H_^uRGtL6If~=%d)U|O$$%KPQ z;DR52a)lxl)#m%<bl1cw*{uvaXf&8?@+Lysa`Y_h%dZ%E8P3SSu?s~I?%*(fnBaaW zhVK{!0Lx-Sy@gS_VChM;sQ;jOj%XUQbSnB-vp+BXyrFWGjJzhuyFN37-FeMrFblH4 zxx9RmUwb$H;oyW-JT>X~FVJGbQ@OtYC0&W6GzLkZy}Y!K8jzw<>QdCWhC?iP4r|6# zXhXk8m(gV4(U=TbMS~UYvu~F1Se()Vvr_>)Uzj))V#6}U6Y52<_w*8w@xu&o9GKC) z;exKhMsxFJ4H7UVoc-pVXeCd4IXw`(jiC*bUF)zz{)6C8UPUlj2LHAzr|DOixg6lg z%3Z>NVZf)LW6(<=_ix_$zs;LVc&7SSyo(VZJ7284Eq8oRc&3aqNeI8A_Tt9u=w}=D zNhR=V1)yuGBJH-i(E+F`3I<)kGNzbP0tUCVA12cn#6q5`W)weN+*xVj<em@b<U0Dz z8v9{pl9C=-qnIax90M8f>~dbj(fY~HqBtN=pPWWAd*EBo?}E5a?s_p0E&A3H0dInY z2J!z0?F3@{i?kf|Z<A&bp6h(C=?C@29VzvtpqvE>L%G%Tu^Lz<vl+$fJMW31N!H%Y zWY{-^cS!fVHGrd@%_|y0*;QlENwSW^QYOP1=y08h`eN?8Mvkr=_92KB8Gr>g)%Ol) zRunr!O(e{PPajsxmoD}Zk$uJ7j=G#KOwdIU@kC=2su)wJ>2dbR89WbQHj2)BltITR zRjxrtm9Qnk5qmDaPQWA&K>Zt2<!@ug5nh=5m7z1YKUR~NoYhsSf(_%5XL+PM>id0z zgT;p<c<IgcjTMd@h<WDQ-s@>0XO8l;y;G)hN|1i;xo1RuPxD-I{U#y&9Bk!QMJQI6 z=NXUsbGP3^TJ%ryH+}E+Vj*ht)Ode@%@}h+Uf!%vBPbdK0WQt()r`30zm9k?<o_Ej z^>3qv5MJ8+1zONRuyPeMfa8dHolp3iMj?`um<hC9K&MPp{q}3LXz#U7^3O7AG)B{} zJ&KE6)*d*Y-Mkyxq9ydg!GVyYM#>^1c2;JtWO6{ou}UHzFM37Id;?eBAIX;{pLEDf zXsQ&HsXIPxs^8BSa4P^9@M6gO{2OTPZv)v8Ub*~FAdkbbG;F;T@vZ<zMSjFL7D-<L zUn0s#Hm8en7P=RC514(gOZ4AR!o*9@eMhQF=!vV_iDP0-vHX1KrB(8E+}Rl8Pt4xv zkg4G`C@2%xJz6x_=Ztui0F3xB6g}Ue^8;4k{%7b8+pE^6O8nUS9OXI$f*A@W9uO2A zoGU^uUL`-Va?`=N+B+AVzAz`WaDz(k>a~>qYd(-hc<u8)Bljd-lD>F*U%<m07Ftci zdD-&gH1&4maD9B!lA%sx;c547j&7kJaHHwW$vfPi4k8edy%UXbT-eYcC_$b$au<$U z2Ts6}>rgat9P0O#Cyc#d#-ChvDhj|e<hP5aoswPcutPwd-H9c0Vx@$-hw4Gz@0zw? z<xJaRV~^rLI%8neiJ|zHIThOfN%;TtB`71j3Hb{|5-MR8N{5yve$N*LMxH3&p-P~A zolmy`SKK?B2(zuH(``xTp&umqN}<0-)aTgSboxfHgoffNU!H74w7;OowFhyKsq<Ao z;Vs-2y$5er_Y(+k-wj1>nYJN^as|~8WzG0MttRBujWvRThRc8Mf4mJ7)N0$TAQ>B* zp%2PMUA+L^@0F}+RxL6J{kINQk^8ri8whV>{sNiW5qu;qszqNo-#3tsTTz-inaEqq zCF?`s`lu~KJ6tR-1ZvfO<v`MEKg~Lt-|NK!7C2A|;tLnKyDJM3H3JUDO9jl8wH$!s z$^U-RRBV6YfXk-XT(cai&-h0fxZX7tG}r5H2zx<H&0`$=K|gN<Ztn_vSmvNT^6eH* zV4$_Pfy9P?n2OO0cKQy{JXyK~w4}Gocg7rjMtI#9@o&HP{x-Z7;a$pKz$>|iAc!Xd z#iiFQO8N@I5>e7c1P@-3!u`7=o;3ffBR2Hypy<w=9*p)V-Ij}IXNNB=QH0{jw%}oX z(lR%1#t{6@aKtuGT+M-Sg-7whgbzZ|`3{>8u#)sY!batKpp=Q)yoHNveIOTcOb?g> zO@SuU*JQo<f~LSZuAG6<4?az&k|L2T^Dw`G1!n(lqKWW6=P!bOeksb)&Ete~>aJKm z?xeA?5R!vo{HWDTm*H%}2|p)%J1%G8(nQ;)QFC<hMzoC@0e>i85mR(XH*LG_Jz*ci z`ZyOYqH;CHX1y7|C6lr)p(=?zqL{czCf1g~jE<TBg&t$|TbIv4izC6C_kHit|0!LG zOogb}Q<dknu@~c0Wqlsv=h%?6>Jo}n2MPpP@ta?>0{*{^LIQx5#{U727Kp=T)%98o zuxWc!mb$BSnuxtEAhPpk47>k9P-hWlnPX$)GQatGO7HlbMK&|-wAkkxzm)Ky<S+2E z+PVEh_v}Pmn5nX0QdDfFU%kA{IS>{wd(ch-<py~a4uQDw<u8c{L%0)I3}~r|P`31X z9!OR=x$FlINPCq%(9?Q4ah}E^4+o#CpbH{3L4YNy@MuoyD}ER-R8d$Gm?pztgrAK_ zMkw8U+g&xjP))HMCL3Y6rqn4D(D(`iX>!h>UZo8FhzXD4t@gj|{w6N{+r)K*k2QZq z+;PRsF}q>{t)UUlRf{dlE*C!hQh2=wU!MTcz~m*)06(VR8!&^r4H={UnZziCN0h%_ zx#qq{8Kb*|fOow9Zs*?&qs-a-K$NsNBGc`GVi!^RTntSU7XjREQPN3l);Kf@=u8B8 zA#9oq2N@nrdOf;)b4%)^=URk80|_UaLc3bVF_kg#3M#o#3vuf2vA!z;oL$i~>c^k+ z?bA2<+22MlBYbN4EA&n^)zufO8BFmj&taQiMAY8b3smQ(00og)irY;+0;18)r0Og2 zNDxuw<*WklC)im<Tl*6%v<g2xIJd-bzX)wA4<&gu-crUB46g<}>%IqM9G$qpbEe5E zW+fO*#Aq|cpCdL_TUn1vM8&SE!Y}TVKLm6r?Y#6EmM%<plCGZH?l+24{^x*PMf<mr zs|cTa{tCH^XKzsTl(zfn7NQ3n_U^7fiY|Tc#Yo7EhzH|r<infN{%&Ctsnf*9+Dez) ziz=I|xzj!VT8MXB3P!Of;Vibb7gR<K6BR%tV@aJul;)jtv!x)2m#f0DpKj`~CC`Pb zfPtqJ_@y250c8EXcvF6|CG-w5N|3XSi;;wO5Ul#QPYaMu^6ow3B+=ejFyau-hY{FM zB+!33U1j~Zv2zJuM*a%Bxt5y|s{HFs+ThGZ7r&#I|2>{v*4uBo0x>G?()Jww^Fe}f z1~JREqxD8f$2x6S2G>R;E^o!QwMpKxwW`@J!u~lPsz~4PxT{XCz2A&wfJH!;u=GL_ ze^Pwv3U#xP|2CR-Mz*BlJIS~_i2dP%Z@+RX=y0~*)lwLdbtkvFU-kZ<Nk&!e-zF_2 ze4Y89q+Z}2JXUJ&_#wQfVpAU)liv1rrCKV-apw;pROAgyKW`g+0ps>#drPVz$Y#wp zOdj83JVb=d5#Z?8f$1cznphF@xXzRa6SHuwP3ENV(bJ&NZ7k_pmP4otn0ZPg8F$*{ zWl5?q(sBO?UQQ_Si05^1*OANsR=M+t^<;Xa2;MU;DQX-ZA$I&XU+?}lZ3f}n@?X$` zE<H5;^eKolTABT>YTl5Rt;^aZY=j#+lXo2-NetT01mpXH>D?^DVHrRR`oLnq7*!~a z!_>N{=x7$e<Uin9OOmXElZz^{mCj;CSON6{2X7|#X*f`K+vQA!o)BoI;MKYplU0NA z!cz-oDd)X~6lj1-?X-^`%>r8`d4u9r4@?FL<nymTZ#B!`hD;!Q-~LO;W^@DiUDkVx zKT>&<<QEQJQtGK6;f6Ojy0^6(Tvf#+QODsPzv{dbecrWXp!`DtdLs|Lo)cJeqV#87 z2XbA5=FG#Vf&K{HtrpDF8Dwv13MB%R9w<}tf7y;OsI2`F4&2UJ^m1_&dP47;U5;tg zqJfWK#H0AE``>B50ARKA--e4K{5bxfaGn_pxXvtffPH<WJx+nt;FW_IkLVIHDJY<| zM+Pd(YzTPSmD>r}f<_H~u80S|*pn(ZO^-X+e@f7JzfYvjHKXYbp@fn*0(i6OZtYIg z_EIOrTKahh(kpu8ea|d)Q_PD=ph&A{YNQnP1Q#7@cp3g%;#=MNpIAX78qM0C|97iC z@Dzlf*MEVvu|Qx*L4~K;ec{o+2AumkoA$OmG<tAV)z7rLXXauR!J?2OXZbTscXGBp z*f&6@qzlZB&k?&ClnC)0Lf7UT3JRIlM)H7oO+0(+zf!_LJlO~%>|Z=`o&+35qr(ta zE5t-`p(*sB3SHU>L|Z9Qd(73T;XD8}$XJrwJP7MCJ=c7nqbb|h(_zX}Uw;IW5ShZo z{<N<5eK~vF0;_v;+mMgYJN$UlzeI^Ca-J@#rqq7!DQnZz_zd}txVvEk5?VSg86#+p zHYsJhgg+oVBa*=rlvGHcl>JVo;i#-|@^iQuhNz*aV(+$i>D{adau9!jdjQPur30D4 zUj-=01=^vhu7i8qgGM}vqIO$WSxFTEjD|+_IFH-bLyvZ%Cgx4^eOKrtLdY%Q`{_h# zTI8eKf%(fnU@5SO@Ud6z7Cw)<6u#P@zghe5sSxZCSrTYqhpHLjekPW2jzN7b(`#Mz z&QGgM$ukuGa$UQoQ>c*Cac*HIE}=_#ZWhORIaKX9^&1Ua-*EVKfSAt8S=G5yqw;8w ztN}ICL3aFG_02E9T6u>=4Qd{R<)uk&08@@8J7ebTViV)k9Y54j!dpqa4X0i+joMGi z0A%@vm9DB!x&fQ1+$5nTZkRb_L&Q~MD=r5OnE`PnPV;ay+qDor=Dlcs106QxZlWwe zuMSA1D<iLG?ZgZmM9<`Fv=3(>Nmd$#{kK0$!{pa+ty+e~3-^fL55m&^tMW$ES|efK z7(4G8PmPSK%a3hw(mFpBVH|29PzG>tpErChVi)K+1O-3IW?_}MY&dwI>Ie7Ij6JP7 zBi6QEW2{QP6pN=*I(Ukv)pqYGPz)P&P~_||a_TpEd$P7?=elEBL!)KX;9_3=nsILh z0ETv1H-Yw{e!6|?OLs%n+{JPjABI{z8Rol9y~~PIb^zo{1TSZ2aJE_!4@rTkkc=u0 zI1YhKwXOM2`Ms$r>^(Sg8pW8Ek0`Zw*+iqqj^O6B4v+g$HSV>CcjcnP6_OQ(5q~#b zVI3(UcsdNpTXr-F$cfpU{j~*c{oR*=k7;Vwx9u}km!{i##u(-nKA@+pt&aCd)<+E2 zV{c;D=a6E$_v_;5h#!<}Q|=)&oQm0)M8xN_kBjwWfbxy}0qnh;O=PJATu&-yWt&Sw zJ@lr-m?Bs9zR|a_@og}|Il*s>iy2s~Od{~MFilg^3^Ni7^5jvX90@%%P=o5v2aV3_ z{eEk7&+h@YDXR+h=$jaU=lV6v#`0B$a~!ro)7J{6r~+8pg#f-MAl7lmZ|V+G8H@CW z4y+fm44>bH<7HxW<bLqD_33|_`nPru;`9vx^i1{t;tZZQZG_SHteJH((=~cX`+7UQ zd*SHNnpG-QF{&>6UJv;oL3jSt>#Lk!G70Zd3BKFh63x}ew0~0QwQ&(iw@P5HT$;1g z#Ri9LVt6Ps4v~`yb&!PM5Iwn($$9Y5dP$KrcB7q1+UacFDoMxQ*NP&QmTU~nV=nQc z1CptYn6*S%;l+qz+_=Wx1NEJsHT3hA<T-ftL-Wij*E@CeA@FBGU!oT@Jbn3-T3RSh zjK0!k+tB^m-h^c^AI<S7{ws;=E|=JT%Jt&1M?lqL+5*AAX&C>gFQuf0aZZowXdd0R z(m8pf-vgJ1)$47G{~0PRWuovy@AC$Ha6Sud;^%B~CwjEZGruBW_v<l|>g=T;s!nNm z%fqsF<z@3^#7HN{8IEnx3_d*<P+N>aZ7cA>VIK9_yGv`=o#+mEcZ&%E+ixw!6w%(z z_LjDyN3cZc*XScuIK&%L0N4WH_ph%nGtk;!h70R*b6SkQI-VyejTI!wEI$+y1s%mo zTzD5`RG1Y(m`Nk}?vUT5$h6Nct4EX%mNxlGez0Ad3CCI!jgo2S59uZJMcCt(cu|dC z)4NW3mQU9?oHt<9^UQ3cK|UQ`wAB9j!Q`CbOG_CgUYf0u??awY;=?!dq{nhE72mi@ z^ipa#7+MhyW#gN>f^ArA$2`9M6zao2(h>uy49poC6KjEqf$l^+U!ZB{bQGfCUP8yp znsu4D*HOl_@{=TiuEQjqze6ZXj42H-{m&3w)!msY9s4$-h(=h(o-h;}`Y%f#3po5p z;fqZPOK78dBeQhWb0qJc$M{aGk*?)b>j$JVDDu!D29jR*q@q^;;I#*<mwJ#}z}xOE z7f}<=Vq6FA4ykQnb~QfPX#Sqcdre6E33fRJ^4-Ds!Ep(EV_eV&j%}qr6u3M(wFs+Q zjjQF!$t6`5J_hFq51gFuv!awua%pHH0vaP!Ul7wB(&8wKa;9LAKN36{QEDhtF9;@E z7IwLrw-*od;z=ojei+qT@PljMgV*8I<g%n`6Zh30o5d6F_-bn^w>&|G=m4>@11|l5 zwZKQgOCk4DjW_R4CabW36|oRT%%)YOt}NlOWJ;$hhx)#O?9ljK7eqe0U`TIekT42r zbw{)~8ArZmGP>@HX@A+{rA}%mF^Y<)MA|#La7wHY0P~J~p_2m@A<3XKE_2v`@YXb? zsn!nL;x0R`oNw6Dk~1x<6zoXgov3him{n&xVmdGg=}$rgYoS!#r%M_B2{y|!qT`~P zG(h2~NNa5N5f=ODlCtHisuijMqvWSO!_fvE_>@^^Yy0b&?;JB$s@m4E$tnijQC$T$ z&$J}mQr}xyE5@1EJnvFbv$5XLw&#v<>A8!?kFvb6O5DO{!hBM(siU&nQ@pXf--L)? zqWni=Kd6ruM=pI)K9Ec<AjhGvIiq?QrnM!}Z%35~dw}&{$||-o&Z0`B;!?0Ssy1GD zZ034u&S6|_g39ks@TzuWuT?=|&|htoN$=1@3I^A?_{Hj^7Cb7?H5$zUMInGfp&B~y zoKAJb{{ZCod%zG^LxBuqb_!)!*R26@6q#Ik%C*7+UHQQf2yQcoTi<oI{my(pO8}rS zxIghnq#?h(?xw?T@c->$dwJ&DRDYQ<+3_pCO}BdyLi+uAlE`6^#PVyN<?R{<g0E*d zLyUrZYsx25TBW;vwZ!^~*=-`&tQ#^QB7n0UT3U><ai=mm(xq>VvK1<md|-C+Z5ZXJ zz8ym8{6LI>@hMQ!)yc9e3XmpV;}|F6ly?QVa+tN^JlP{xs2T5)LMG4(riq&2`0-7^ zHaD}ckgngxk56z5@(JEWWn#k4dHGmBE5`OY!1J8|`5>70dhSxWwB?3k708_%C?u*W z#drC|RvlhVmC753`QXmNhDHOvbvi|Bni;Cq5sbatuU|!y9ev-MouNf^S4N}GQj#%0 z-YUr;sAHUADdOFqXM<WJvAXkjWs!)8MiBfsPb}|xxPOrk<LjoXeq|AlvmU`~N$1gl z;~NkNFf(q(q*mbEJgsfUbgWKrKBe$)$R2GV|8ZcQ$Bs<Mh<b!Y`kd=64~?xhJL`qc z5%4OJ^S7{FfQ(-wBr8F^@ZUq>s+uRu?t$6izp|_yk4+mdV)S8n574I5<K2qNYG%=c zA|=bbc1d)2Q*rewFdZ&Z@$Ag6VtYUzYQjjM!YZv-W<ygco>#he;Drq~P{>U=pjaUe z4<d8X5L<8?YRziHE4`1$Ql&CpSY-FTmFkIWM*++ww!mJZQHwt*M-+cJv<G#PE~BHs z-qCkViRiH4p6pCvC0>&LF89thK(FkZW!m7kS{3?1wTmeBF-dTvnr%5W6Ws7Uj|#}v zjR>h?_L&`{2Fu@^TgX}251#J;L_ej`n|uo+d0wdd&1a>+`Jqsx!oz{=Fl;$w@N56e z9dv8;u@d5g8pL^7yF+cLl0(AtwkB$(Z+LI~3uQCRWI7%Ss2qu-5angJio?F%VG-nA zc<*gn%+Cs8CCV&wANAG^w!fV){|o_a!SWSETh6`#ZjV}csWL5wh=CHR5B0a#uQY9B z`<k~RfL8yaOj5?MSmUf;Mo>MAXiEp5rBOHd012!?Xs%m}M@4Mbq94z$!Y5}*;O{Hc z&%~LalgRRHER=#>fEt*j0#XrVG3jj{LpTgXs-R$o+sAOadk%}T51h3Zo99$JGL$~0 zM2h1Iw)&fCd~Q}cMi$Ph5EDzde_k95$b;V`=V!_cQc_6Zm1^h#M<kC>%jX=tVe{Cr z0cMw6>N2EDw2~2#Ifk*S6n>Yw6R`sYT0Ra5j5?RSM(LwA2u~|ZQh9%%MQ-DQcme=~ z*}iTe8i`_vH*eE&z%KNzvh(!bB@utF@E&n|?54Ln^&}2ro~RJqy$05v5GQItovTZ; zT|VJDR-2IiyZ}89TUKt@h(0f9$cZF$t6IM<uTGi2xe+mxBI)^>c|3Z7TTeP%qr$A$ zfaT8>!u^Z~<yHq6jw@kGckv+Fii4}Oue~X4ee3!OA3n3GyDJSp5d{(IKA&><_L#M( zFW_5>3<<U`r}I+1VhJWOoF|z$M+n_Rzf81)CP7z*=coE~9&_j<eYun1dEgnaZ3uSu zF$|8p6mL+B{9WtzHOUpBuPDpe=u2^Nd~VI!g>_Lsn4-#P#xVMMaeD)}vJ0=Su)b6P z^A!cb$ouk9CX%K-i?2kX9%PMN?L+iW+g+8cn`~qdP@S&dn`3+$_Vbuhguh)o>zwPz z?X`@h24G#WUA|{UQmV6T>aQDpy=s-22#;qOT8ebQM`GR4#=!b<A?nBCU;V_Udj3Xz zx^vm3;y1%P#d7kJfWqsky4Y;EmOtSX4F`j=fPY{Vr>ewPt2bgd2-ngycZjw);vk14 zUfxCPPF3?S8Mg_tI!nAVUhA%EdrN%vqHczSF-H(QS|eh-fCA=T0HR3GJtY@ebcun{ z^GJ_t)S<Ezn*X7Z%T&I1h@)yM8KM-YAs<Lz-4l6u=bS7IEHHhK=+}A60^~_6d>T~6 z;-zNvC!HO<X>Uxtd?>nxI{H3p;&p`^B?Pj(is$|-53xJ;y4_@sN&KC!P`P!~PL4P8 zFrIR&>vVr{50l#6u?ztl)`R2M+iTv#r)unOCRfYoRFbS@=lmKn)cTT6^U#9#7n1$@ zkSa<3Y<T|n{*0UwaKuLH;DT_Jr8nuLrvfJ?MfKf6){tJyEc-F=@5BJ;F#2*zq!HIK z+t-@+!J<43ltv&FIYk5~oMEl}$5S%tmzwWIl7D{xDDaO0|0wW}0{<xRj{^TF@Q(uj zDDaO0|0wW}0{<xRj{^TF@Q(ujDDaO0|9=X|0am~L$EB>D1#3OtZC{jzYNV8$lm#7f zY7v53(Fbp-sM~Vuvj!(zGoSA}@&M4Kf3RG_raxO*X`FAgVPt;yaprW>V@EKY9s&UP zy^*#c0BjWm{Fbip+5pw#ept+?;-XMi@Ax&bDDpWJ4iqRd;l<gE?bc-7hKeQO-(U!X zqtl-Ay2<NR<kZ51QGENJ#cOzl=Xo`~yoqI+Lm#kMhDznQNnsNlye*X56d)_`Nb?|r zq&%xEC_`r+wBW^^Xz~h?;f<S50ak{<wCaKqczhm_T>zR2Cc+DD8$3bdr`l}MjsKDB zm8DIpl7`8oC?Aa|3<aMFZTYKjsWd%-vj99Wq=86qROXg1T-vuHb4*=1GCA3@{iA=C z(}MOPszm_i*YS+v_i-<Y&@hZOzFr(C#pUJDRjHEld(u^1YN-jiT%IliY0?{NY%~*Z z+)zU8eGZj3#QtQf^dZiW4&551d++@zJ86%5P3ntwf~AX=JgVT#LG~B>^M%Mox9$sT z`xuqY0PT$51!^w(3k#kjx54fl4`{a9Y&^Jd)7wbDN9KNoP#DuuSnb8&3-PZ5fx<}2 zx`Z=LApuWOCb(Bvo68=%v|)Yw1I5JBaYxWqJa^b|ieDqPACKETR8k)U;rLpr@sP0L zdeVj^0lC|-mGrp4H$UxI;w0vm*v67xCMszJSel<IvZN>K8!*8a3tqyB(<?0YMu_H| z)LN<sz}!ZTsY+S9FzKM$10dYK@Xl@;V=@#b7$Ywb^P<@~9{$w#QJHe`Mg}L>S%ZSt z?ie{PS0x4cgPtXJhwUr<C)G@k+Qs3{IMfBOSo?-?t$q2X4akxZ9$xAgXqSN66fWGO zM|EicXIZc**~N|K1a7&=@x%VhVs)1y^E$<4oLBS&EKQpk<<R%hSxvVL0E(0*P{R@H zWbsY5#VMx2xiko4Lw*2YwU$n4TM8Rb#4rE?%>Z(DD)%iI%g*A>MNjY$+22P9Y{-tA z(tuKKsJA*+OkjI6*bZ~}58)*vsU$XifqNVvp`EX8@jO@65j5K%abVjI_Go%VLSliM zt7Mv9ld=xM1EIS8XL`;Qt_Hp;%SNUMizmMmAG)o;J9KFUUQQNI?jy|)_ZPtXzp4VU z`(UPiNM+s&h~j#180#sU+#N1ix2u$O%7I|cc9_$63<rW#!v`@Wd6|r-1eGln-Mp1w zEaa~Y3tP5u$uU_Sw+s%wS<k+I_1w7Y9*u!XL}rl6=gO9&WNcchjQA=p4wj}|<Q`Hv zazV;l<hf1#W;^bjSe)io1W8rLnnYjdA&g?rk2LRmOe^De2q{9J&u`RzWJ3kKfy}rQ z$bXHl=v4s;J^!kh>L$8A+hV$>@hGp+Q)LdFEM-C&yY|oHv$rYVgnR~_I6tkANwx-X zRS#$c&f>oXMO22v-YHT*bi%#_k|Gyv!OYD>n&(P)&IY#cR&;~RuayVEhXTC9&`8ll zW!9S)YG-xJchYcMgX_N}*?&8I31U4dxK_h@SMl7{4GUR-ne7be?CKW#<rX5}+g^k4 zr*$YyS!%gv9jGf37_*Gb^<>w60B+@Gdk;i<XA7~ZmpX9nV|SkP_;kT0Q>j5gIcZG3 zQnN2Vf5{bz`iJa<{RJhv#~|ZEi>{ZAKNM(?vV!Y5a|FD>j0(C$NRjNh*KVH!8(3*9 zGY*p;6)O{@#La+Nz1Qj}(PofV(wT}~-J~8F8rt;IA6mc6Dm)V=IS9Ww<3fx<z~7M; zitP0k;{x{&R_r#lV|drl5$4bp@v*g;gUgP_EUW;x>OEvNTD*$!o@PT_M$T0%dqg`c zc7&v-v+5t|><b2kcG(oa(sr)aBRU=^!EmU;2Jn5dv`=LLAQ_5`ph9E@B<4Rb&Du-2 zOYUJ<_E`X4NDY($1PGH1Lm!>y5|CTmB2!<<7xT2bOv;*#qY!%M#|~!j7-BM%GFMW^ zh-grf<L&+sIS)G*C-P7zxxm$J_)r+-=VA%%gXRRW8E49xR0D^RF-EkIDziYchKu{l zkPWG}A{CGUiUfxB&*&24`^eRqcxE@e2#c0Hyjdsil`Wj9chmr-SV&8O8v)=KAA5G~ zJ{{#o@Si7kt{Z@1QLarI>DfD>@>FHAF-|3wgFLUPz1Wd=oQbw?A?~N))&I}~^pQBl z%jWs{{x%=mTP7FzV;c1<%Y-=ZPy_WXqn#o%Z(faEny5Y_;^E}IvZ9-W?g2j4Z7rz4 zVpuB7&U$zSbs9`L`_2OsX>M!BJFp!$8jsMM9T)gQTDp|2s3nj+Xkj{)M5h@!&U>&` ztgX*VHan96#B0(p2SO|dv8G%Z?y1krep_&(e@gu%tfW~ow^IGQ=sA>sQP(qyLOJ@V zO{DeyCYfBxP;iErHr}}Z3*xbd+>q%vpXTBV|La>u6wuC};c!VS_))=Hw#$zUMoPvm zqk91nEWN(Et3eS$#sT=yTk$al2z_@O$R~;#UCmEr-^HI7$=v`&_iwnC0%iPxCqhK9 z8ZDf%pSpaZz_wp+2}}@$#KnxRzKuNUJOL9icuS(ltdy&MhYkRMg1_x*kAolxV`Ybe zDWCIH<P^Y%&L&d8#0GFz0&!QPnkFr-fkJ4GBg(zgwKOt`%H+!WxE3Pd*`N99#_b31 z)pl*}9dG~CH-YbZC3K{b<rYHu^mtFn)g#qahQdw&dr3m4UP}k*(yh4UN-KB-kA2h# zc*X_BAMBiMs_@^NBp@CaflXx5b6DVk(}|^~GjDIWpZc}uH^SxNN#8}dha>?zst*Ba z)p@e<X=2+o7+CZ9N~Uqnn1o^$P*gn#y$KfAEASLp&VSbfV_Q0>yP}v{gt<14kk8|< z8%7^%K{Y8OW(d9zVb=Pnf7qD!mcj^dy#wDj`?R?v{MhBWCxSet?l=@GAbx6s+B8^Y z#xbgi#eN&`ur=qogKjSxOoTq|p8o*_+w@2M14P}whHJZdKCf%y$Axnn2R0nAS_+f9 zRkq{$l_#rw@6xZ%bkV)`qjYYW=1gj0#4)Ca2s?5i_Z^5r1GZMu!ZQlfw2G6J#~UJm zl-(xt<6n^Sb(m`b!+0dWERJpX5wIP+p8QpHpStYsKNCn<*fS8I?;W%?efelKoVBGn zI7?t1t$#3>BteH{)ItH8<d1CGS*0jTTPiiZ0))1wY~-uSiLpWMygu-Dwr;o?MSrkY zYb1OhjpubfIh8AzKmExf-?k#U-fPT--r|c17CXb-53fdZY4TW=JgR#`*^#H%l!_vf zbFCslx7*483dohdWIGLwCQ&?L;JWOVQtv(Q$j9AQ)9S!NPg$F{aHaeBfbM<lA#qTD z-RBQ{p25Agy>HmxTT9OE{ICeRHin#^9wY8=HBL=S|0BY7T=vTtnxAnJt>L`m(+p-r zlhsB13&vChrBmBb-4<o&?ggMR?!fJqVKQmh#-i2Y^<w`8su7I}TMScmW~e3Pw6uW9 zVx(Sqjh0$E1Q^T4T62S>Ix?=MvX~fv{3$?GQ-mA%m`?*KOG-E&6S4Y2=j)577V~9R z@JL*5F$E}Xg+G%{p#5pM9bg~VROS7~iwK^ctw52b#lqX^l%0Cr6%amjEPfZqyhQso zRV6}(a9R%f^Ugk|Zlr=(una|haU}jBzyK0ZUkRKxu5rON9j6Vr=@<_*O#-7rnT}up zWpjG=Ytb-7_S7NwcPkXB_%=gUmaLHowGd2z#x&u5epkR0QQyyDPX{jduZ7IsV&rT- z%Ay)s<)}L%{}r?J&6eyTMk3B=%0dddVr8Mo2iy%(hu?kY$klWmuOEi6yUgM{o8jK0 zTaR+|3#4nMeNKNg2uzAhEgH>%mpKxIkrF2E5zuXfAjaP!(pC**eJ0RdQObKWN`g}5 zb_AU^pP6U!veh9y;NpH^PR?TA<HB}caiw!^u)G~Y>P?RhojooKF?7AM0kH$noW1HM zzP9q8tQsVUp2d5u2=ZL;m_J7H5&)q|0cJ68+RB(Bq*N&_#C76%$y(d?3HF!z^O)#E zC<P1Qr~!3D5u`%xp(g$~Vmj>XXaGvdpT?)Ov3~igGmJb{iI*hPeoa3nPJiu-%?irH z{XQNk>*O0+(xchsYfG`4ELjL0VOzTqfzQ)rH-6-FkgQI#TXtLMDL>yH#ytYfk>|(Q zTZ+4ll%R%dli2j;<$A8PDkAk2bMfneit3(cs*LTsfaz^=9u!x*Zp`(R`9iPk!kEkv zk{fEsBV7nLf{SC1|Cf3)iA)6UHcyFp->_<3Q!0kKT*-_xZ-GzkRT?eCnjY*fM*2@- z1haZNU$c;VioEa{nKsZ5LZWO)v_t)11TM7C-ppY1I~g+W3{@ncCZo+z)i<gE&Rw;r zm3xqEyDopWPq54#LFHl(yfL#`70?ClAaa&q-b7iI2LfGezYRq{FmpL?NwOYN$RaSE zy1PCX2dynY=&P(RDPiqRGW)p>qV@jF8vNAZ{I|JDnLMN=lw25Q6N2VpaO~<3J`;au z==qOz1PL!#t)L=8Rg7+h)1}QICe!v29+NIDaWH0nbFQooBXN3}1eD+QT_4XsVlX#( zR%{EmN2W;HSk6I8Syp2vf&d0>mGOJD8Oj52-KE*XL#6n~w!2Ss&pcha8_F>2ju#|9 zzMgt%m4-v;pNrGp(z$YU`HU=+>US~)b-AbvuZe8TXVqN4@BB(|0T6{^RIO~LH!so# zxoKoCsSPX#ef@f1){5TV=(*e;bwTktEY!LPnbS3$@h_vngV_L`zD@$epYLNN(xDr2 zAfUA6rz7qYnqJixq`0MyhyV`&oxDoF3!9Q1k$kOKp|Cccru+HpY-ByB0qiLRzGCaX z$va96jBE>q2vX;M3oZF+&qI(>UR{>G3^uZ3rqMFFDqMR3GII|YLcJtJLNBSZVF_wA z=uWCl+|mvis$-JQvcC2mC?SE=G8&Ee`TFTd9?az~cgR_3Y8Mf=?WhDiSTj?{sS9Oo z#taFYlQ7`Q%UnDBPdp5mfmuc6qSypcXnOivbd3}eq^YIAs4~f}Ky!;AYwn<$EEc59 zK|$pgWYSl!b6X>oobPE!bN;WPz#=<R6oWfO)Lw58FwgPK1dX`?WaQ$Gl#!0zk@fji z9WVF3#n*Fkw;#mT%G5z>O;9D8OWN)jibA6Z<YOlOIkS;m9FFSiX4my9O-ImMR$hc< zpBHfVd+>)wz2OrRi@3Ujr+JB~8_t35`(!~wpz@$r{XGu~!izc#(kF6bwI?fA6wDnF z)q{??k?9uVJ-Lq;Mr$G8_t{ulIlP>__$1rShN0ij>W@TEmN$9$rVmPio5cC}-ngaR z;IjRtZ}Bgc$=g$gy+V}D5Sm>ELDzhyshMx9S(d(jJtw1;A5n#cSXiaod2dQxS@xeM z@TrYf?5Y6qy2OG@zBnh|o@EdXo)6<a0M^&UwZw<8SM*R~T;+cj@wVD)+Ir<DQdWU+ z<}yVNYU{(=8u_4Vg>ViVS4%N>ICgrDV`&X?dLFTrNZRv2rF`a`zK`On=NbBeI@2_M z#Ge`G4@^~O04o{HQ&7Bf+gOs=lal|aT9A}s^i#{h#fP|*w349Bz^2^DHGpLakwF%9 zn|%hFtD}^hbSQdbNh{HfMFNH-9d)OZofSYefmC}Muj0Ol@-^7KQ{y}IZ_*v_0-~@+ zzU0cvipCU*7VEex#NVJ;DsrX_e8E9w(6zE9>DoTSXW#~^DtIjF*l`ry423d8DHEx^ z5p98=*<7Ny_0|axK4#XXp_$r3G}J~W$Z4#IznXCdhew=`zngr)K5fpI8^C<xT|7Mc zeFT_nXWy^o-wzyvZ=nETAxf98ul3+e0WcK>^JrcG_HueR#&3b6p4Q!ncg8u^r`bfv z$zD^xMa{L`yOfB2mWGEUCqq6w@9Rb#-HQO3%_t4ENTs-M)be#`(m-k^@OT(0G?H9n zaGN#%D5t1LY9&l)!14|a<t>PVlRfo=iL&;^kB3=H>&Hp2OJGn<+<gIK61O~Ep6yZV z6p!Vnd$~;xiCd<`C#0JR4}r5RNUO@`ZCQr-T&{l~7VDi|Uyd+&1QXwqOEF=8>kx;$ z;U?cf6fg<&_XBaFm?Zf~J}{am?&7|b7>5IBN%Wf`A?#f&izOP>kcqp)p<Y-pl$xhG z65{%b`RlMQ6XM7Oqh%my^9Lq+9qEv&qD5moa+vjGO9!HW)^9~0opzu(q3E6TG4a%j zBJ$B{>hr+$0*#=gXB!oqW=1QK+5Y>p3jKUFk-<uyO*t9kDs}O~iU-zH#crk8Jeb=f z$Q1iL`2YhUWBF{Y`M-S@zSzDxVKS2Q!<$}u*gam7Bb(n6gTi#<F;>ITO)@q3HFVq~ zU(JoqOe|tiVM&r-h<s#-S!KC`8gtutqgpj}Jj=EL9y69vTZ?1z3{sxMLu9sV2(%v# zu1qa5i5f+hn|2vt`KmD*;k@7vLKl%6F48b#Z!9lzC`3j(+Q%gMFX^7MX?5&!r}yO& zm&2S|yMoP(Fsuck@31#+_JPHPOXx_-2?EP6Hj5~J$(ukCIeO;y>~#&yr=Pt>|Ju%~ zD%H>=%yE&TvNz}%RM#wV98`GEfY)TKrK(jk*aFV;^?%Vt8&O3Wy<6#ZCPzMHM&0~~ z%mIJ8SIKxzb`TcLP!w=@Yy<z=bDQ5x!7V$g96mms=kh}EUti|Z;kjuZD3vW`UzQ29 z7UxiEHXdN7g5WabcHNG>4zA=UEREK;`T5eJ7P`FR1qs!ZSJ=R>!{3ZIsSg&)Gc0RX zWvIpX{9DDMiRsalEjR4b<jN1@a1{8b3jCy%Hemf$ZTswf&la06GsvXgndK*Z-{e%a zfJjP&w&ywVMqj}p!n@DZ9Ma;f0}RCY&MMkL+!SFEY6RJ1k#EhLcs>K@=d6XV3Vr^g zdtDvfR-rnmew9p*Q4=>pq}O3_G~4S$+(@Aw4oFhIXHu+g>Q$qOlUOqygalyfZ~3mi z>i2BIw>3oqn@+X#IOMzKQ7<mWp5rFlC(95+<6lxgem4REG9X}m&Vn~~&zN%21YxRW z;=eMp<5k3^Pl*E{+`&JQz_qVh8Y3(Y!(wYwF6J6=*ro!&II3vaelWz`@~|Q`weP?L zx3S;PvE_zuBeI|cYGgXk6}wRSN+#9GAFXI$!$}<iPV4JesFyMOG9?!a9&5p5qEpbW z%7M^}1M$c0XBZF{k$LSXKG!X(E(3t(${J|RPeC~$@*zH*d`JcS(Vv9bRlLq9?NGBH zanoP(dO)?JeNDO`l^@s!xz-p|yMnd>d~EGz1sxRuP%_GTH-r5J@y2B#WUE+yYu5}T zcZsK-O3W10n1|`#QCF(oO6TvRYDs|4e6KrcwAfnL=;B#1d><j&-LaF|&o=-tlGe1c zgM+$k|Bf^{aE^U-MN-w&l0ZW_03o8{(}?8*gw{zbB&3S;p_nVM+ovnnhnj_YGhN$< zWda-W_2w2ry9wW3)nra9%rYA6*}r8n16p!o3%<zr$vmyhHmW7m27%5v5?K#QTRmo7 z*Q>l*Kkv-6>a@mWwHvyG?cpzSes&m`N+{0Jffnigo)i;rc+Z}I7P)?Q*eNEWxbl1U zE{zdCR~05ZhwmoB=bWdey>{IT#;@}ykA4;;GB9hxB7%Eq_@-JIC)QwMP0M_WTAW&O z;NXyB5Yxf0#CuKvl*q8H<8u)ND}-Sx7k1?K1j)y}%FoM1-Jh{cFJOnGf~S3q(pn5N zVLE`kZOyU@zsDj<{PEfWfW;?S2+XaB=aB+ReqA$@&Qvb@7lN|%jAUA7Y6%TkH)<L# z*8uT!Ho}&7WQ(U2$j4R}q5VE)oYOJ-EdmRXw(-S|IGLT2?I<f&#*&YxY6%vGS(<wF z@Q%xbkF!Ep&*E^0PudU|^^rMb24;)QwDiij*oFMI;gOEmx-bmc+{y5@-&!o3FR|vr zNayDalrV~?CS3Cq9q9hcbj#F;rdtR5H}$P<Zy3snRo3JYou>hWT9e?!<T=3P$LS>J z`fGI!nz|)x0?R3Kb=IOQT3Nz(y8M;EL^NsE=nI;!#EDabH#rM~Bh#H2WpRs!jcpOm zK67GWXL&Fd>U9))#5EbUOdWkJfsUb&s5EcOQQWvs5S8g``F8&F3W*pkRSL7tww+`V zy%|5_HJ7~A$0;tJ63{<0tMf}R-fM@<XY#^%zb=&e86kV>-m_T0_JQ>PcxJCNDaLsF zmn$oklnumF2hVq@U?1j}eSbdmSlY`+ez`9!go_~beJlU#W}eD*9<n`SSH(<hM~}4w zQ~b6xn`?D_pDz(sl7vV6wVBuaT&QiFbNPa&Ua%6FCCYy0+ra)JkiBZW>74aZf%%ot zM&~@aF(I=HB-WzZ(^`Sp2>Au?BTtEFZnup+B`KA{P>%9FuX>p6(7vEs&`AgxWG0l; ziSoXATx~u~%b$c+9N-yZff3fVO?{s=t|P$#Oa1Myj#vZ}vEXXQOlsXXD%oMmjxh6I zUmwm=Vg$fGIA6)}yXd3X#!<^LxWAT=r;52JRSbt`l9I^>-LaZ7F_fA0nssoe6U;?_ z0y+e|G{M)LlqPMQC5tD6Tw5k@&sssK!<FJl4?4--NofwViYMi2uWe3SzsmcCZ|P-k zY(^T6I8S6TlL<ZVGly2D8fhAq_G>Q|ADg4@_HaFQdn4WU_$yJOmPAP`ox%~?Q{kx5 zIvMnh{?I|qD%nJt>yW1(;9YN~L4h{Z2?~HCHUiM4_#B4^efio0SM%2auaz-ePbJ1@ zPE7CHgTJ#vf-pajj7&PLv)(o95#%a*ElJ0al@iVogSA$LCOt`~aOFD_0@3^WFs1O% zc3>3oU0va$WiChyYn0nB`rY}M+f6~0JSE5L%^C8e1=1x*d#ZHRCOv&sVTdKYRACs` zQWauO+ZOsu?HsX|5lOkdq{OE;7I=!G61&1!)p{udar5E4=n}nj;|v-`=N%WGo}=Ix zTwR8TcHTY8aWBs=tH~~Q9n|b;XNs@49jzja;$cYTqhfJvz<q_#G2ZKSrN>=jz^d3s zDemiih3`c_`0kkML?b8{vj62crGv59y;=Qe66%2)_~Cy6JwU?0jf`c4Sgs%d!l{VQ zml=f_8>-vN+?kckm}uI9l2um46i=@(8Zl0*y6VB{6*3?6gs;Edc&4TQ_^1D-MuH~{ zXWv7(^2$L+JW1bpaGDc0%w1=rf<Xj=HA&AO{2ajPh5PO*g;Xxu_J;RA|GQB#?qN0H z000))>RHy2`;?vNdMHmSpv(eM^of7jNb7zSHVOb_OHgC3L%T4FAvM#BU;m`rnlH|h zKi_9o__xI_E^1pRDdD77+bC$q$>@x)Q^fq@Za($?`OZsTsO2Ox%h$V=k+ghUFb3rn z`W&_c;_wDUG4fo#Yxi;700093cw|2=LK8fJ^#~$ej#buj-q<O!JFJo+7IA~5`zvh5 z9Q#j&M4<ydysZttO9Y0@X9mBHv5r<Iy!iU5&Oo<Cr|S084as~Krgpv~=c#LdKx&S2 z2HO-a<Ck>5T-@xYQyi=LW{Rp}o~j3uUX=wLF5gl)0Ycheq%M<2x)#^V&Q~HO5F5wB z8Zt0}p7kGIb{GsPehH54g7IxNVGs3-Q-^ijdl@|6+!dyR`}@3y4Tqt#OYMd83(d)R zg12UK8|ntVXVXIo6rjuS$+~UF*%0?sX2VjXOuzTouf{S!1s={PKxChzgqiUX6kn!@ z<Wqo%JW*QpQ8bRM6em+&=v`Nj*KC-zX!w-;M4v6k!-X|IS&HlIY+z~&5U;}88r03g zzT~Y7cdl&Fo+TkboT+g5v({*q0W7$QYuDefj|T^W2a2l3z5w&X9HBy!nWhsw@$T*U zGNS;2eqf$Uslso|6RXwu$mmgMBAy0!ghRHWHMAk+Z>vFZ!O?vm*biUArxClN`{bgF zV`ovihZnkt`I0xHPkT}nN*>$l?#>()OO7t2InZfjSBps&p&+LN>;lhfa^whCY8Z8* z{F7Ajn28j>$i&jRHRAt>K)Qk0rS$tXHUIzi#TxGBlIY;YdhV*}ZhIumbaKp;w55k^ zM+nqf05>*3&d_*djD~reh;gjlrBc;)L@1m8qm)nYqIMn>rLDLScJrFOT073uh}JtM zMJuTbX8$B!9QttCV>!8TYRkpSu#|X;2O}tdrtN9u)>)mMw0w~Pdp~?V-Wtn4O3Xv_ zaz}=Pyb)%aJwZdFtAfQX3j)9o;erbs-y?uC=RjYkoSD>pfBKyL!sS?n8xr=@2VDCS z>KS|nSo+{wk;oYN1PEU+@yh=)hp|D}R9J@4^dzxZ#Tf))n>#EJk;wLMKJZdM*YVZ( zwec8$f{KVZ>cGCk(*vJBjEbGxe5v*pg*TUO=ZO8uKHeIRR-3K26M<L7Ci^yN!rkcU zV<f>S&hs1MV~7U!swzyXFW-8zEfG?XdGd>o@x=@Byq8g5AE5sqC+mWtoI}n(|Nr=! z>@pIqopn;!WSc#6#8S+=6k)Zwy93nQK@GHverweB8;oSnKhkJ9bLy#xn4Ds{pMgmP z*k{{6v>3j^3b%uM6X6o03zn~XJn6-g{F_H<58eDZ|Ar!;pC<TA+u(TW2y3%B#(W#& zkU#a9I6mqcenK-_uaf1QoAFnj!<4ts9=*AG^WbYn)bm|bI-J2#JYdcYR9uC^2EHwJ z0okMRQlr5cKw9MjMv)Y{MnNN3UFjfEVd>hBM-BQb!7neCh`B}s|NsB`PQ2@`U@G^h zzT#Ea!m`bIdI&ofc1vrJUK1NdhTkCOoU0*6O_Z)waqQds$QD33jx0w9-6H>u3xEIr z{n>hL&%WG;zStGqY6yV(ng6Op4K*fee%i?K;^KFG9KZS{<V>*5Ql7^H=vF#e&lxu< zZSv7)Dyc^_&TyS(q5B!k&OxiEE)Tf(Kim6D)Dtl9ts8B=yVhF!rDoZ*%Hqw|yaU}I z#y6ks<!%6B^u^d1tG(s(<eq0WZ|VGn5q^$2#^Z1lN3!jRsDq5UY4P>z9ieh?X(v34 zFbi5r5?uNWK(OTm%TGwGn(FNl&+x*=Fw#KreLJ=|><AnR*^s1KpM8R<Xe07x7!Lap zNQ!kH0#cLiWG@SpN^^kK;7*I5{Z~2Y(W(kWBZ*3418^bwso_g3rxt#z-yI0M?R>x4 zBZIk<V3a8hN#~H=pK8E|i2m?Z*A2aW)Z9+ySu{{MSkLg*A-14-j=Dwz{+PudVy7~p z@kiNdZi{v<9Lq%OTbu_Y4H?gtgt298!qhfCZ73cc1Sxu$NP%+KmHe_MJxMoZ6K&gb zzrxs^JfhmM07qeq^utPKf)gtR)$r+B_Cd<H_NU!Wxpk&XuiodITpY{0_7bdGVJ49? z8F@U<aBTJtIuaqqT^Zy#3uO(!{W&G_w<`<lWnSgrNJTw=`GvHq2>Y!%<o^eGok9Od zL>RPsXdX*E@HHP>L2l=hn4m?ytCXI1)De?hOML2Z5ft^14L$x&7#Saq@Nc2IsCA<j zC{bko=umKAH`7s(OP2mzOzp5ue8CpOioPAT+SAIQ5oM_Wzt<4Z$$Qdua72CTc%Gd8 z1@r0s1+^h6#&Z@VJ+5V6L57O^;7TJpHxr1qUq+DI7Wf*N&`K#5-3Fq{$_0lwxGR5A zz)49eVkgUm^alY2=BcTc3qOVhIDCd-p9O%$(5xI9PXx&7zCQT*f@Nycjc;Gw6l$)P zFO@nTapHT+_7D@qnZT440=oy;`5g?YVLY|@y1yAKB2H$xKU|yYcY=hH4yl8NMr@a? zPBZW(R)&ow)W8I_=(;DwYV=5Y`BqH!5ipF;Cn)@pMu9GmB9xftFOx7$24t=eBhOj9 z9be;g(TQAR0fZ9<2rZeg|1`Xudnowsm&EG0F*RV-nrzs812@@f4T>`71<8<#_F`py z(@N%AREKj~NK>UnMNeVaaG&DpkCvPlp|DEm=_0rz(R9M<wJzo)5Y=Zi<FO^dvhVV@ z)4~k-9<27EJ({hebQC;C$upj**eGKXioB{w-~*r*7_g3%xdZPtAc=YGx>SNE!*WJe z&JM5+J)YPf7=2Zz|GpZBK|yj|NL~2LB2pOSWEAmo{qo?Sc3}fS`H(E~5y%VK)&Kd6 z=JT-kq^TD`-Ig4C(xld-ZvRXEupZ~<-2l;}-kanRZz}plrz?668}5F87Poh~kH#;N zvIjfyAmD}Y04?w?|NETynz14!+8~k{0&C%fauAc*xIypa7+VH0aUK$ClEnm0Px(i} z;5H@)A8D42$*;zz4XY3P?D!J}6$>i=68TSf#<aLtGPlf;szcb&2Yl-JGK^dR@;i7( zeNAf9T9{e<KhiFA&aI9EwwGqcZ!USDD^TW0$j-MYtU_BHP;TJ1oAR<*u{L`D{S0+L zj8~&_x2mo$@{6yAWh5BFb=$5pwxudaojd>k?{Xyse{&04_@A*9kyEtR6HXKoYT={x zKZ`gU6I&AVS`DcP5o!)vT<Xq~@7)Om|IuhZOB+nzn7Ke@)+&=f|5DnfPI_OpLi3Gp z{P#FkVmHx1#PuhD?a)`PmiIyL2!y5<K@9_=o5y(P|2`d8Ts|f&0nm>uQRFIfl*aa) zwl$a=?84{98)%Zl^-_{u_uWL_AZf{XG3Mv_pWg;3f5m%UVQ4lX7{~8MpnW)Zd#wBr zi$J`0Ty}RCLN$<??nnAS2cKcmiF?@^YgU3(@6Z1*@5L^)ss!lJVa2dGyn4<yLN^lJ z)(2HAtBTXcXG^t1tNaRC+?eTk<8(BML4ISQq+JQ}S>p5BM#}@zLYpP=h0Pc^$dq@r zYNA1baE(t@S&o`9j08FT*YSPZ;7*m}^AJl2+n%s2oxQ<9cMROEwB+-5aa^(ny}u<| zPg!~r6;+F?YFJc%@0@x2<T=OT<-npdA8JCnfLo?BUQ{A-crOaEgs!79%<DTLncZiV zVdQ1ba*t7b2pMk$>2rT#sDQ$bqna)(Bn0jVkz9gDh1%wMpmrXk+lWSbYtR@jycGwB z1M9zT{>rY8RWZmaJ{7iJV2skjy9(bgqbUakI3d5*p;iru(=1Jge5tC2uI(n_l24Sr zEl2*IsgnG_2DWHahW)(?TZrXgw%V;Cv9*IB*Et$=pE`%D1Nm)P9S@6^-Zpm2Ist(8 zjKu~s?i$rG`M-i;Pa~6>oHVrfq2aUD7%S>+qluOE`cBvxv4l0GmOuSS@`ada#i@jE z^#-1mLTKap<TdES<wLG5F8;w?so5Q_g6xGqJ<c9db$j%+|KT%fRI*8N@ncl{0`cX# z9fEN^QWqy2;DEU>u%Ma-ptUoM&mY$Qq+_bGG+5;PC58nXxXtcpmx@5(MhE`fvClv} z=z86AFYm^>L9g-XUf(-bztxW4h+M)F7w~Q*%@RDPC2<DfhDtq+A`{?$l_jmw@0_T7 z>$0Dx<3IoWh()!psjABO&>BZ7ooOjNZSy{C23A0zl;LHdlD!IQ>gTH+-kZtYEodH} zQUjVrsMN?x4nU}<&}yQiH>}kPzw5eaHqap@^4U}}9{-g9<(ymn=NM49TsfhfmRg&) zEdJJW=Y@1i64LJyv7XB`(e9go`Ct&572f8kGqfM~COw9qh(tWW?$Uo%OGH<&0x(9; zBLx`P0K*X6*UXIgM1lEA*F_Zpv+Eq=ABxQ2-hSQCI8|l}J_;pLaS96>FF~0YQzKPk zdeHUS{hT+N356*D|IvYlXIW<ii_U?${-E}z07-LM7NwEg<ZO>|BOfj$h+?x=vra<k zjr6umK#J0;1;JNyr<n5Y@nA4ikI{Nn`eMs5`mYg{Ew!q^+NqAj5ZExrLI`+YhSrhW zPl8JLNxWa~nrIl`t{Sff?+f1vCzMD=U$z|=lU>YK3#_?%jix=O|K;qBv^QHMw3bMG zBiAJh9(qc}@Q+oIJopFd%}`&*zci^M<e>|`0bQzi1!cnLW<9lITdVe+?ja1YGZdhV z-aBS@14rpLywN9bFY*aA5JTw(9liY>FHgR6#nat5Ra{tGj>ZmminN9)o|11W0JP)g zVY;ua$2h#HXE8n?6%S3ZZfc?lu~kQ`zS2M=SK3669BT@ew1|ekUdW#B?+6wSz&=^T zPbNs)x;aKzh3SMYn-0cPdE^4pH~uFy#~b*OShR<HO7vE;A5W<_uKU_HZpcjYaSr~a zOa^v(WY_?HA2bLMs&BahB&ld2<EpPLPm19cB+9`5N7`cI*Zuz%`*W$LZwY005hs+^ z9$&@_+ErMRQRsGQP7Pl#YUz+n57_gW5+mDXZNK|o;xE7iYTB9*Lw%=}YwXZ9f#uEB zCDAX0#Jm@A+TLJ&MEW3&Ti^CK02h<nQ0`)RkjsF9Z_>Wa-;7*R`B}}mqeV(2Mn-xR zmAJqtW>rvh$l-Tc9<=DY2a%50pp8T2sx|^8_SP@^d0Xr_ZMFYorRs(q;`wY99Io+H zQ6k-pyAWbBkGLBKLeN&Ig%w2z4~-QTPa-vhaPac?W4@aM_w8E5KaX<XfX&RM<njDB z9GpNZ<({B37NH~zVS&|!U=&yzkj2Xa8u9as`*0G|L7?(Lo8Hck8|WZ6THp%M9uUGd zMXw#<`<9G{^bPFa<h~MR{Q#RSbi3*_Pz$895fSIB2If-;&oG-?ML#K9#x?u#+zN|z z6e!vZ%U#}!QI+ri{q^l63-hDY!}FL<H+_pcQ^pzze}7(pH5_sDU3g!=TpGDC;b_Fz zPbV^5*S|s*H;d}*eH~gWz0#%ebNe2&-kW-dp}+evbr;~@SN)sn&@7^i4v(iJ>vCY@ z#N2yD^qR$#Mj2~qe2rKB@`Swp;QCH}Z)U=n$v&_Cp-AJdeZ$@L&W+S8qk$Kpm(~xa zS<tR@IF@iu{Nr_FcGDbX+$gZp3JD5{L=9N>2l!4kcIdib+cPQJ3Gy^brI(N{IVi_) z8|+|nZwH%1xJzrN2nle|sH<mK0v;|V|Bw~xV?sq!;fmh;h;PZTj%7Vo(I>Hnd^c#n z*dOU!d>#-v!nBeVc->(WfFfbUkFMAkWWT9L@lV^R@5HoLC>Z<7C=Ebe2A0dLBe11o z?VL8*=|C$Cv9a7X(dXm>n%Qi|*j*N2&d5Ask^xZ>CgXOlpSsWlqjE8rl?q1lM>+O} zgiO0uIH4(lMI4i9&-nSskh`Nnm?KKfTRJ3B(pk5*)F30&yAuo{2+Sk<<ImA0vC^^f z^&UT-U4esJy?$S6nzfe`mpMcGFWx`Lm1QM>EF&)U{@Twm3M4uLjtoQ&eoFk<udi9A z0C2Imm+c9lDqGBn`(WTCHNlwS=DPUnMsny^KkEQC@Orqj!g4vMQ5yQ-t7En)h`Vk& za@a+mlhCDq(wGWdAm7tg7UQem$pfVqVjaP0a>av>WNV2d=Ow-wZNfJ16KVZr{kGN$ zL7qhEt{nkpKQyk7YGT4gKO;h3KsA2{X2<1OA0+a=r_VW~j{<$kbMfNP{;i`2Iw}C6 zJgF(*F*Po^_uR>E2ML01MvS$xE`Q1_*`${Zwpf4R*+|lK2X1wQYP8>cu1*jvz$84g z-Ur%BLmE7_Lt&8_*N4-rg+(@y!TBx+70P*5r}@$ruuff<U>R)42a3b8X=uhE4$jDl z2S1zp!$xELtuitN%>V(~k5ggu+<neH=tGQax6@vrEV5ucDSL;oQ*z1K9j-Zab5gAp z`E?rY>m7iGxVrX;#=)!yP>fr%F)(!bb9HZqHQRzF(|FVj-HEYepLY)g1QwO8-&#DO zsP%xhOa>(Dt{w+=kYJ2Bav2ravH3+)|B~lC2_XKrsPN^DUd`^_al{P*A#$TFM8nml z65r?;xEfb3L_Syl;x2~j$%8-W$$fqRh+vDii{byWjPHal+(81e$UDAeXvfa*O1^~% zGPjcniw<@oE3#3`K-Y0m*jYsxArT38ap7i~LbD_z@Hrm8yJSzuNXJOSK)w<|j9qUe zSN~IE75-f`RN7kvDBFx3BEzJKcFnA}mRZzvrQGE3IEk$c;^ZJ;#H|5`M_6jPVcQmk z=&f-(GC^y*n(Mhm|MG-R^|Jxj9#dRY6}<ddNXZ*$$KD4ZbG43&{qN{NIkcyw9$v&V z7d-3podVn&b&Jbr7MHF8_N8P5v1H@y1K5+YrF6n!E>9`U3=%#E7jb@Q1b*gX%fkmU z%exkr-K;ZVikKw|7C$E4zU?PaqWGDhJ}Q?(?=~^j<`x{=LJuz9B(wK&(^nhU7)jt4 zvbvS{m9pD1Fq-YmC687Q5ViQ3h42n9D>gH1t&<Hz>oX(c0Eqxw59%&8!OI4s`Xs2n zz|c*qwR3J%FheN2^X^y@g@Cm-*prZhBBT;gKrmo7K+mo40_rC(hk3?@^t}Oz@NgTY z0%0YgcZS0KD22sBo-P}H-~>sF=Elh34frIK_d~%tXe`UvX)S7KifYH!J)gNDLB;wQ zAY9o-C;^WF`8G|GLU<Iu33K9OU~XZhBD11%zU8>odh<AE8aFk|J6>~z^X+p2i(E9@ z+tOYY+enYGugBN^tgv)jMNPvGKp?6W$0R-ZkK$oL2+tB;B{0=_arEuaub}9nQM0YB z-Tiy7V52oYcv-JR*{kFJtt!<iQyYyF<d^=^z+B^w*0?pF!Uu3{CVi(B$99WY#=b8f zrZ#=vt<wFz2UF|4sk6ALiBl7R{G(YO`k(h$TH+~cU>hl$M+TB0q2DCLm1bbNT8YMv zv#Vs+#(U;$vF2rXtmzaeDLA8b`tXoXfQI{9mtK$uB5M$*GDVRS0Z07tL!h>OTKF<{ z4yBL^1#MzWM-~lXL&Jq`Q|^!~mO#gJHi_1Rg#(hS3&r*xl%iH{PCu7@>k7IM!xrTm zk`$>(v>^RFJwB?_ef$TBPR;APxWY{efnckjmEUB#7Kk8KP}#8H=rAZV%$5x$^M%|y zA&8RWE;eTqbtcdmSjv0oF1s*Y5sy1up~9+46}**`eCBS*PG2*r>-WxrM}bWGO}1>e z&yg*CxlTSr>g_nM1Pp7MdB;n?`P7iH*xljgL)5ZMB1n-gAdL<ZO>~s?iEhbh07MbK z4i5EDbt7w0aBv^iRQ$vfP>%SFG5Erxv(A<yB;ngv^4no()blD-!I}$72gRVu0RMmq zh)c~8PKaVKKKsfZ9NnvAFbM^f1|CTh&6|!3G~~+AkT%hy(d8ojo31QnxBD}*wMjFZ zn_zi<pv0{lJ2mK+1rSpB1_<|RH~(3U#u^iDkZydjh^~Ia?wT28&HzR&-RtWoTXAbe z`Lu%}vzyhJ!r`vnHseX$#i~#5%SZ>C9$e}#YV3CmrYy|F>aK}BfZ)i65qpzeV_=U8 z@X(`NuzOulh-lI&blKO(<r5UM(}s(>I(GWeaj;vgwWkwm)mmv><y1RA6WK!kF*bHc zk%!EQ(N;Vx@!@x4{r4Hs={S*pIp}xir?4ps{n|62<(E=s>uIb+uf&!a>=ff^a73WA zXAV3CrtbLlBO{V2wPlM{p2zG@4?vcTjl&VacnlVcULnnaf2GDHmL>4F4=trym{Kp7 zKmV#tg(5YwBpneYI)derf4(v|hluaC&&-PTwj1-l5~=}+E-*R{FDOc`VXZBBT@DBP z4l&vBpg<ovXa3H#HB}mi{aO+80y5%KQ3K0&S?J6an*4}6fDX4O8r-xOWObDNTF3w6 zl7;P(X<f~>ZHKZKErZr>;967}7a%FoVcpEv*#O1OFF@|v!qs-A!ZdtgF>fl;EI}CX zJ!!x&cNX>Z-`+#CUla*FG#iAdvOS|maSI|dvd6)>=;`>nP7!KW+;g{x7Urn9&HFI8 z@1g1kQArD<<reZWES2x&v~(EpBk6xhf7Zn!CqB9qx2ke!y*##AeE4sN3<=7tg)Atu zo|vEi|8E(nO00nT0fX0K*DfJfPeK^SAa&tPW_LZON$ta{X(}L~{&%;D%`CWZh+jtT z75F=tAu;vsH}CXEBM-ZC0CW9_7NZcxId^QIrexX}&ic)NAL3-(h<2X(QcVJxG(ay- z>k0DSn8<KbLCz*5^J+IqJ!E)^u^=HG&B~oJqJnT-4ah5ROezsuXNQO?4{<sh9!VSo zAz?+U(E1dx=tEDF-V()prEofXB}8e9#Qm4SwTYf`#}ZTOAo}sZijFQ9arw1fOVdi> zOQ>u=<@K@A5UzFQ&fLq)x1?3X0>Gl^Vt=*AZSjdIPyhe>K3(8=0Mk^Pq2s8g{l2{e z`Q%wOj|gYpw>}=80&|uTqgFvLE-Ue1s(!Mpw5a>=yQmz0O49A9tS`5|qDJt-3Jc=+ z(g`*VW&fJCci*9rAWnH1sg{y&uu{oFvZ0d|n1PzU9e%;nK<Ggsk{Wya4|M<5(LAP? zT(_bAmI?8LMFrCw4`({dZ#^;7`NlS<U^F7{^J(ZJOKGSK_BX;10009300RM*+Nk}! z0JanA2=!2(WZKplH}nQ#o$(DdMmIr;z=nS+G<MjxRgg8AA)1Qq-ujG1xVnsnr|H3+ z^lCjYge<?dZxWDs{;eNtSPCU)?OcptLWn043U;yp{8u7{o=DK;r=_T%$F}o<qgTp@ z&_oHIDnW*wbXTmDl5SK~Ziz(ZN=@OOk^aiA*?x$(?gbs*Q}WJzZ8k!Wh_9H-_+ofD zd1PWB02PQ*F~t}l*D?DQ{6P1*%Y6NvqshtMT=+JpHgN}BHAFpCZsG>EDZhF{zIFP1 zMXudH+Zd$q>mN#lZmXJ}@-sz%6)EfvY)2FAui&rJ7sv4&lWP#KSrCvxlg=jH)FnQS z(XU+0(NB_8<nbADu@g=Ja-nLJ6Ss37cg{|K{<EfVeAqiSH^ma)f;ldtfd^xF-;0su zSHAeGp$nzcmf2R4ae<tds*_)}03$t1-<7~B;wHU2*&jG*!T`G5BX<|~)p&)cC-UtP z(Wq&LK)%Bjb_n=-<$1$FSe1fg{9xpNCaA^1n-?GFI$8tH>d3Cr-vmfZ@Ix8qon@P; z?jYP#*G5ORcezIS3ihPNQ_Y&f{K+lud4WxGQdDHp?EjAq7~6&i=MR_3oVDN<32^S> zf_pYQ`FH&T2|(Hw?Y<;R`YXJ<)eEH|+`-=`8nuEFJa$>jXO=|0y4Na#RR6ys=&4V6 zDc*!bYOICE7-43UEA5W@NmuRHb`MP+Y>wH2*^(nvG){~s41>xokl(`5R5gmY;W@Kx zF--zHE76YIhsuFlQBF@>RzJU=Yi&rsbHV@RZ>zp3^>I4UQ2JM!H_$9sjdu7Y9~m@Z zl|}VocC$<DKwTWAJ}F)6WK41t`}B2}j14NrACq!m5JOpFe$d#fQv)uf9VSQf*8N_! zA7vI^eplP<KrP;wBX*TRh>%%FBaW8%PE9SE`4_b7WYI2WRLr*!^D{n-IW|_>puQ}m zx&=7v*hqM6AldLozIYdcotR;jphU8v!!08y2FMuri;%I^xfppBH!^7f6r&Sg9h>)_ znG6oj<h_c-PPZvjt}mQLWtZuCLab&vgbqPQWT)d;Nl8xt6(HyuRf}WQC}!2R<-}V@ zT8*aTm)$)B`1%PR2#w<5Y-tmvon!oy@&*-!o>WYQ%gj?k5e2!#%y`E9hn+G-kO+ZX zj3(TMRK>B5T|tqBrTuq3bYKwk_rd-(l1w$t(bPg0fDWw7ljyQ?%jbq=Le*!{9KKU8 zDUJ1y_5|4K!7gHMWM%R{YDeY5iW*`xA~`0C29B`6QZAWpexJhOHlGwD(aeEBll;^o z7^C|A5F>o4W6-*RY9TYT+_A;|8&k@D?)nL1`_MsOfdJ-Xc|%2j;P<5DyJ#%+>}<br zkc7v);=8F#c++fksyu)xG6fZeT{%B-_D|uQZgVJaqNEQHpwh*twq)uM@GfdgD~9u* z%uc35ClthNxr(LqI}4MZs>WdS?mxoEdy6hgnGf|x&p@AqvyEBPZ<*O-%xB!+Z36a6 z*8H55HPJ2mm78IDQ6lG>3*pfhnTEAV8$C4udi#Lj6k`T<IB(!R;q?f1>Zo(c%xacX zf^5X74X_{z8vec4LixhsfT#JiT4eJD^}n>xFOw1hUXl-8GJ7f7lRaoU8%qV`8UfxC zHJ>#UBsZ2$ClcRk(U@Yg8JC*ogO|$f^X;CGw`0XWfECN6zIH9ddfOBE5v&Br=be5i zHV=5$;9i}IH7Axr!cr>(IVXXFX#!cx!75&aLu#yr@tp+d!oWkyXfp-p#cWcb?AaZ% z@BdQv`cVq-oHh>-wnKjlMNrl%-U!yYu*Eb8?5{>UVl6v)c^>8Mx=BL&vi+_v`4{MP z<UZKBGT&_Yh22zymSG}2f(42G7{!DxrzU>&XBj}YE^0=enW&o|*Py2ozlQMkUObv^ z{*mEza=+j23}D8<{3ecWW3Rd!yU_NrcijlYKD-!;KuT4c+bQS)BhdWh?n0QQqr|iK zib3E-WP$#Xi4cIvx90V?ugLURbV@>v@M-h^&ero4ts)azd&oX=8tjJA)7_YjSNjxt z*YPfvIpfUOM;Lyjv3rw44+CBQurSfwA1PZJnON+1OXK2Wik;HwgI~W3U;L9$XzaJx z{23Hwy%<tc-q*J1B$`(2Ljxn3jnO5YsUZ;I^ZWz@wS*lysnmeK5}7W`IIgZ^nks4_ znMh0dN2Der=A~KRQl2LVx2yp9rJN)VXCU+*sOS;yQ7xB{pMFLlkb#s`H@B$@v9#ZN zz|qVe-B?FsI!cO9H8ftR!4#O%_B2o7Za-Bn)*x8Uqq}3q$*GymXZj?AXmDV2^piI+ zOi9ylG%oyOUm7_18TXONs=;XqB{pe~?qB39A?j9G`?fr<OlYXeKo`_mzOCuH`m>B8 z3u@0m-(K4tc#3L491RwmGrvFv(t3YV3?S3OkR(mwe;SLdI}}g9|DZT`AOhLkOI0HW z6#!+$5($K9!(lW~&BWeJWcDr8q2>M48vh5Sa_wNTL{{C3{z2zv?_X~@=DN5Z%bpb* zMxNorqI9|MK(c(j_-+7X8BGe#2uuBx=&Q%4jXEv&gkE)B-HH7-$KZINX=Zr;eaFwR z6=h@BDBO<Byy2Xd4;7}3PHK$Sm1p^&m$^51>^HH7+b%Uzm=fyk39O<%%%r(F{u&s< zQSUXP?-p;#5UNee*Ac1TKliuDxtJ%Yv$YZrZw0si+Uon(&c05b1xWgFMZoUpgM0jj z#@kFfsm7dfbP7auz`?nSCiG-0qyQ9+&gerb4GKwxqm$QKUvfAt-^6YnP1ZKNlVDs+ zcJ8glBPUDN#H<RYC=F@NngvI8Do_N9YW9Uf<Xl>^`U=d=-f62DWI5+1hnGT&q82WO z&8-THw}-Qo5qR2)TuXjmwL<`dUB%mZNjm>&X!lV^E+Ep;@zJe;E0!pBy!3LYGxu$d zaCnQk24U07Z$Y)6xoD_jk52F+f~Pg|L={&q2`MBEHoJE@r_rpmIT`MRD~Gvlq<{js z+&o#BNyqjcCDUh@Y@kThNDWi-9nqJ_bFE#e3uL9QO;5~(5yT(7TwTnGnZ>5h!|C)7 z5x>vY@x0sJWQ&`Gx9j{B94W3%j{6@>06JFHpR71v;RjWu4ahEsiK+1X1gB)>A%eHO zQIECx_GbV4JKqR8+oAe7ebG~tA7Kfy<w;h-iz-3g6Vmkc&HZX7b(>dwddX`UZ$St< zlhRcY%*zcpi?ihJ)B04!2P?2q(<Vu{N%jR-yjgFetfTwy2PM3a_;VChNSU`3Y%?U6 zEs0dHzH(rYN`mBL1(GCu?;|pH<5&8?54!$Hw6tA3X341)d)d%BrBRDn8h`k&@r-sA z=H5$%E^hu@O=>d@Zn{KK2@xqCS)Xk*1rzaB6-$!a972yKEnCB{nPv6aR0SB|jI4#$ zbq8qB_<A%fJ|{4DT@`PMg)yq(8X}|-&Pb8IZ{a4rAxqq+9}=fBE|Ox)Wj=GON)PW0 z{br@?z5P@DN`(BY$%hxi;HsdJp*|nByklIj5}6a!bK@dnn&iEzeFr}S&i%d|0*}jK zWk7X8Myau|Y}T-az?n5>05Jp)KN#$o6p4Co0_R&;5V~Kfy{#hrbb>p|e+as6AZE#y zg3L(g2H1-q@o?O=5~88V{C>i`fNmp`R*3(vFyJ!Y4N;s=ooDj`@DIRW&sk0}M^i1{ z|1AH|KX1d7z=zKsqr@1!Lg^_`CM3l$k8>L*<U^^<;@#Oz{mNI5EfyC&PwQ;P``rpw zmDHjLc?}9p)2?<*x&CeXK9=^&&VR7wS>^`2R!W)?*^E^<Z>tVPu$U#cOx~@!rYoW- z_9HG-5TS)Ji}o9wjRUWWhjrv)NVDdS@T%s(Yx<GT$xS#CaFBMcq9tcE#NDy^F^*IM zY0xY?x>C!f^?J>T*lPQmD02_<7d%v!allKEOVQ6p=z?tOPKz={(U9%7bc;f;vZ+^s zCaMkg>!wdE!qOYwPslo}OTu^?yQ1U?y(8>7p1ElOT&hGL^fN#bdX%6e_5+K}wUWt{ zAr_8KX9P45$P%&hAP#Gt${Ir1Di%Id<~n6mbR~#S&h(~$)tf(pvMYxZcR-f}S>OZ- zg@ljd5rvM}6c&m?P_lusuIBd+Jr|L(XWCFwu8k@e-)X>TfCr$#>}g##vyeFYt+3{N z>u2+?!Oc%S$OePG;yAREjhR_%nxdwNvGJSqU?v}~n|V_Eb_s)2G&hUAhZ4$Ox&KD< zd>$&iDR&hE#prOD86|04czAz|jIavBhua4=oy5X!0?-8(ouaZ$?!yw#jTS1wZ|+&- z;Q||EhDW~7h5P)%YK^KDKccx}U`gt-*`im*oG}s!Dj9^Q7C-Mevv;P*t<oBK0A!rq zY2ZvI)Kws#!>afPKJt15=9!Euy3g*jmP@}a<H?Q$oIdi6k6H}`sPR9dh(9~sUxVg0 zB4H)%;u0_dm<R-q6LMNMDb$xXul%(?7xFSbodb%^nRG-$qY_#?Z4>dmkvk2BuhG<N zyFl6J$5WuT%(?FIr6Upe6QWDjx*XFOOnTt15W+;14$mjbEO$wf-^5laO<1}B$oP63 zQoO>`{Ou5zoGxny4eh}Ucb#<+hZEpO4W}M!=(VpD(ky{&?kb+JHnf8=+(tE7El!J^ zoaK~}Jbo8|R4&R?+!Rn=jk(au42k}$!IpW-Ue-1UL^XQ=B3&XDU-5fxKNIJ*R?GD) zYd&%gmv;8D@1MWP(hd*RZu}<YD>so&&OW6%-WU%v$+0_E3(a5ujMFD#GUx*C`h_9X zcU}bOjV>h8#d!ZDB$NhwS}ZkWH;;G@Neh2~vE1qA<qkWF22tJqu&SPd@lR&RkF6X| zhN6o8J*rjll)8RjbWFJq+$@2vyQ!5s)dGI`eVtqfzGv@pQRxiB>2LM$+8jYM)ku0b z7KLnenC7}HN;VMI57Q}^pGCkreOQF*cHuAE7ru2a9sb3Za!z7BN`PL}(fznb{i3bS zeG*xb%n^l1?AbS8ot?_4s4<2p6p0~35-Yc*C^W%Kqdh6!*1IpO6aLIwSHSHR+E_pE zQ&V1%A#MEKKkX%#g(<B<XYB;n+i<*i9mQnm*V9?}2Zk`XMLlWt)k%sm`09@p&k11h zrMZ(J+|qKfm0H93NoqC3m4R5icynlM!Y|K&zT^BSOnn+_J8^IWylBL7S{#=6JOE<~ zSMP@F?<z~h)tIi7j&I6=06Xs`k!G_UJ|XUks)_9xW)K(!$l;ndl6$xizmA$wfWOT8 zIvY1-zxyobn=1x6lPOjY+Ulecub}?}VQRQR^jNk1FwNdtJvS5<#QBQfSvEiFIFJK; z(Tl6OAFLkT+mx}ZP0_$Y<hY7kig9z)OxzV^YRa6^6n~pH>;^>uaZX|c@g@7AA|eql z7C8PVcfAc)ClZyBO5Za#{x-h*oyQEwem33l3XmIbBV33WQ_WMQ8B14R$zwl^6>+qM zKI}bYKenykzzTUCqB@Q%;u6>U6m}KA7rAsgJI(TMpdOV#&r7|cGVA7>)ibKN(>$-V zjFFLlxDQzfyB6XM2a4`$WhDal!S}7<^~1~A>-GOa_J&1<H$qun?u_*zm|nklnKKC> zlu-5^G;uIB{J*_20(DRC3<E%%Pn4|HwUoC5wv}N2*7*2QGL&Ol+_VFFN}r>Qy4C-E zH9&3z$fdhrjoVVxq?Nb}Dn2(1c7_8d&q!^P!%?2c{1t%&O@U;sgzvt_vSbsTldh>T zY6i0iFhtoT{~!O!kh7FC<GfhxfWOpvEot5o;*)zoG}}rzoBJKGJ_bia4&=NqUVT;L zVj-tS!Wq=)EMsmRUF90X#%zoczEPsS!V4gCa~y-9DgngXhXyNpR5>RSyt@fnjoc3F zOH@3k5DZ`zqEVpp+ibAhow)9w?sv5Dl{37i$}+tU;NBvOm}KL<hrcZFiz<&XOpHOV ziuE67HK}(+sCpYpOWjsfEj>RA4sBL&FRH~O>z1CKxM$?HC`gAWX&V@E-A(~gF&v<y zfO?>OGK-kxc;pM|PEH<#xE4(Rc1%=I3ch{{J$6m79A+5KZCkjYS~_N|r1YG)P%gJR z7sxs*mE>Mya@G6cUvc}OWIhm{cjkTNiRW}{u*WhH+}oZ<TH4JQ;`<`Q^2Y2<KL+!5 z!C5<6j(g)Z#$shk`fckPF|3!t(gbiL$x$-&KlpdlWn<472$hkrPna<`EgzE4`{1~D z>x{Wuf91h28}h4D{gGT&gj6`VlyXSAezV5yB92~CcCw!atJK=0$NJ%E^=r*r18n*q zTP`8gNh%s)UcWg-l}*Z{|66q>G^B1B^&Mr4COvW^PzdT~ILhhQ#^Xc+74NxMCRMPN zSojl^6TtF+hmX@(%Y!6{LmLNZwkHqW-Y5V={nY*CINhB--<Zyxz<UzBeYa=AA0m6~ z`C@I?L(eJV`pkT#KJo2VcAogN3C}t3niPdf7yQaN)T7I@Ajuwz=d>&WSVJ<IAVO4d zr8DdfzW1E<4IFw5<RKq1)F?2NS)Qet>JhIZD5q|aB{9s`BfWVqs28wM_EA|o(|Z?M zNGhwrl3Rr7`vdkSCZih{;TcKfVvVLQ@Au0ZEEI#WOQoK{7J+=@oU>Y~T;m(tzQ<cW zyEgp1-<j&Fb6*o?s<RbHxQMs3dtJ2tc?$ME6J4lfeYGNW9mUZ6bX(TSM6lf=!D0UO z|3rtUG5LRzd3rg7f;FXG_mV$Lp&*rWG9g}6pgt8UgcPJ<<VVzVA?>1HnxwzjO+5_S zzqR|mg;$7W7r;yD=%>(LIpt(aLANI3ob<82UqZmkHgx^r0%5c#saIX}HqbBqme3t1 zWWJKez|(;NhnRr1eTK?+xE(m|g6R%TdA}F{dJN}Q=~6I&ml8Z0FOEoIj}K44PkDg$ z4F>WWBr6eW=8dpXSjjyCjG^%Q6>Af;&Gp{RK-@#P$)l{P&#@@5(cD)wrG&Zle`Lt3 zz6SIvPtt<;wmdiKhWc3kF7wH&35V@teD27`R3BKH#7Q8$s1t@kY^Ex^<c;ocn~V-$ zkN4G`hx5p$7NRhv#Rge{Io&N|$caBGg}x33=frNUVv?J>IrakMnB)P(XrqY}z|^=c z^v^zSi*L^LRp?x>Bn5~Cw#w#xJ@<7cRFV#5Gn=1D7otsHnzJxZQ;zAnQ0hC+F8>(} z&n#id_l5J_5@7crJn#9HbJoRt^M#6`UAL4s6Y+5~L>ZU-lR@Ly2SET34N%GIN(7v3 zo`CcBBB3k<<7hTl<)yO%<vgP*WMk=K>eEhwge7RM5vt*1Hwk+_szByF%k#O;A{t0J zPIT;pDSl8Rw4Dtmyl#^Te$?4%i{Du6gghy>WXZ}j?4Z{<UP4y_OoC0PuubPMfF_Zh zBnnl)G1oB~tR{@4jrD&yB?^l3=SEX+PdHQ)vs~~nY?O@bE}9Vtkh&J+M<1s1H2KA` zmlR6}NN|5QX0gQpos({s!~Ardr-Q_kJdoM-^QqrPo%OYEp8d*=-)t-sE%&}IL()Y5 z+>FIXr=U)JE&3`(%UrZK_hJ<$j6C4j6r$^=OR5$jI<}%mh#ZTF?OTZLMg1?_dV!Z7 zrJU5cGNauV>Ig4uZb#U&<)jE(`QO%i@5Z^>d*l#xCK91#<46&dn9YBF^|g6q6#+it z=2%a6!xAAm+T>ZG;Cg~8&e(IN7kh@_MS>9@J^HvcdefgBF5Ll!c<v~p8I(<C93Tj( zs(R<-Xo+!fHinR-7~Z8?D(0Sjh&?1u^|nAo-oy|S=7_C`v^iM6x!6H~dE;b#goCFJ zkQKz6&0|yF3!rjTZ<9t)rXQAR<#-ori!M~s53oAw;^Dp9o3&xFv^R)AZZ@_Qi)BLU z!@^Ru|6$COmzge2n3{}YKuGJd^!=d&K>$(W@*!sRfaJ8qJud<rU3naXP2$j(RFyQf zo39$5K6mMv$H+bQl7qGsdKYvl`wGaH+7|Qu0XwKQ=f3@vpwGqbG}EV7B-H|zJRgT6 z)joNALDT!dH{jaIstn~Ig;5?B*Eqg5GXAnZl$jR2rdRnNb|t&9Hw#a)=e3Vm_J;um zDIoySkRhX?s@O?9A#^Q>LfBP+3e_LpS}L7MI_z7?tne#Q%(?9%ff<B6y}lAyVtXWo zrdm7m%{c&4w(xU2g~t~nlLC-hZ41NdY-ji@LnkB8f<Fv<KFEm<orA_j|9gfNuD>dI z-n4Q98I;&91`MdWZwMd&xj97Gw~xh({3pf>@ZoYd;}`DqLcLIQv(@0(j$Ua{6xKp+ zw0YT#!myIIQtUB#<c1f@=4W3l%xDRUw9jq@YmNe+y*=n(XIf<>V3<WL8ifzgf^Y<S z0ir^>X8&1ZOJajISc*bNt2&6HqN+N!$G$*kb10mcbl)YtosS7WC?18SI@S&8$o(Ec zU8b+~@yNT%>~aX&b!#MW{N8Ln$bgPa-m@afp<@=ZUI3Js-zKy*JtVaYJ>F4ue`^NL z*t6?&Y8l~Gs(rOUc!DiIXaR3v6Hy)pfWhlDRYv8OkPklR2jefxKN_5K_n#`)IVgj! zHxba1f$q7;qt+xdRADbwvg~|D(7_lzL7BdC9%pQSZcNw|c_Xrm7_F5@7LQyQmb_01 zRA9WK%UaAU1_~)j1KlLL5nRkNxiPXtOZuNlKNXm%B<+)Hmglyg{%y&nJ`ASWHQ8)G ztL>rP%i^BQP%CfkQ7%0wCJWKu;H#WTtsiAgmM9&w-yc*hh)&U7DX+1|Yi#b{nx7@^ zQ1`kQ9q+`DcZxoE(FeXyaSOlQ6jkl}OPZ+>NqB2gs;X{7g)kHU|F|!;`u~H-#7^}& zk!P2H46HDq!bHezbV#KRZH*cjeS5xsM^_e!(qg75%XtJ4t;xk7a#1*0ojU3^M#2`z z1oq37e-{F5f$l;tS>hOyJAk;%$LcDq)4{J&ZO!d+tc+PM;A&I#b(r2>?dt{m!#rbD z_@4dn7K?*7kuJG|{JY@$Xi6`L-8F(~_qd>gZkZ#=+vHxk*)voeXr6u-lCsv;W{jys zsj?GwwJ`SLhR`?;9OOa6?BYAD5eFjTpp<}!Y2aat;uA&5T#Av30&=B3is4Nae}aiu z@jIBRM}WYOTZb1s1@LNPNHtsG|3-D8w*BXsd!1uO@|JzI?-&<~eVdUIe=lCEl(cJ) zmdlcK2gJCfnaQa&+u%;f`?`*+lU|>h&k=k;rN&U~-F85ugtWfLQ4EL8Hls)KFPg|d z=p3D9^$W7C9$c!<=0PnB`+0-wxz_4I-TSLk)`N4(+B30`Rp#X%pxdYYE1TiJCB)|X z1W_Sg;0@!g%f{}sf4&2N(>}tK9|N9GWhM3yQls@LHht~2Y-6|A6c&E7ur<~zBg_ha zPyQ(sx8M6*MIscS;2*+iI)s<)$JT)YBkIFIoB4q7XW6+CC-U|yz7t7fi1C9HEPmDb z5kkfPfHY>0{VVhzDjvxKd-m`-N=zJC^ccab?tNjAQ^@GU4OpYE<JR*n06m{=_A~W9 zYSm+pLg98yrBD5#BImlo!bvzb=RVX&kEG^Ds6w}t<C9a<6pc=9*l}?Bzdi8V;M;tg z%Z8TU_rLvD5oV|fK$Ad#du}!++Dk_d0?9&(Vc?20{xg*gooVhGG}El|-ZZMF`9A^- z4%YJuNq_(U^Ui*;2Wf!aS0@nH`n0mVELGFtuKOyxkRnSY;++(K5Iyh4{R^MPqE$sP zaOppPt&|qg&OtfU(U0DR*^<6$uBw_v3PPR~qi@18!1q3@24}NAF&(-S8QT=X)_IOq z4K1+iktv7NQ`C>!4n%tZPw;=sfswKXZgBgJmPK)@P?(Fs-nPjR_ZoVJiAylC3fX}7 zGeMyDcj96-gKOlp#h=B+Q58X#Y{l*8{uN|{4$we_2h2DIm#Gtr0wKOCZ1*AYa)~5` zsg;xOZq(CJCoE8QUK}DmA}2LBJ><1=WGEFNoYN5@j)%V#Xhf1Z_elQrIpK1P7QR-X z<yE<WlU)`(PBdU3&ic+5ceQ@|b?;2{x?eMOO~7Z;!>s)OE0Sp3vegk`e3GRAAUm|5 z-FKKEQoj3jmu^ekuXldYPbj{6La{ql+4snJl`{p+$y~C#8B)Z!VH#Rn8Bjip@I5Zt zSI~fNYHLTb9vn5CV7~&r7m%XEd7V}R`2H(CQ&wO)PU|Vw@+Lt9xWi7+QM61*qbnaD zybvU$?y9Ng>UJo}fBRQnlycVux%_LUXN$f<gcQzQ@^ftR-`n;KF&Hr~_muA_T^gGa zatTB^i{vFg?SuW+YI{z*_yOw`aH+6PFHJ-}Gf(mQJV?^OSLYGJAQxl)2Pf?JW{r<b za@wp4-`^AP5LbHLB}o2rs(a4D-1ms)+!F12TjBkE)xO%sN}X?JiyFtKUFPt3YIS3w z@3+}3X2by_GHdkjod~G7cmry<F_5u_SNw3S?qAH5>Zi1pp^Cv`X^D*FJ5(O+(!mG0 zSh&RIrnnBCgZfaIhLbq^{_=gKPWFml?j<}{4d-wuULHBEk`m3jp(J`=jlgm)fm1|Z z|B4kIyZMRWGMYcZ#IzURX#2hiPMp@8c-_w(ZA^;wq~}l94!HLjdK#ZzOJavlbP#D5 z@$dYbAS^PQ%B2rZQ;c)_S1w`omqR03a9ej>g~0;vN#qM6%zUoh?3KIerTmQM%X{7^ z9*dPa((iLf-P+%2`^#<XMFz4mABL_ZLje(RZfX~dT_~3x_W=T8GItVe|62`1=5K@P z2C+viX=g<v!Um$D&`3Llj%7maKZThn?&SxJ*bzJN_M5M3_cV>|t*6y1dhT6v))AxA z>`FV>VXZuH<zJ`*e7%u{NrXIzAEhz|zvL7BqSz)`4Ey%zuoB4YK1g;$AN{MNTW`?! z-7>fr3bsb@Qg?-2yjot<q=XOw8&sS65AJvYUm=aDh3C~Mz%!WD4vvF7BQt$F%Z~m- zXSq>n0*y6qcDuQT+rh@hyHS17JR^0hTv_>1kVxL)YaX=>AZAlWSXgNeh{v*aHPfkH z_O?ytdzo<e^PT^}<uD9xvRN5<&wYcH_=N;%zLmfXV@;u}4omthEi>Lpnm`W%N%J0; z0DaWXZT?8LqkC<<hd=nDlIF)fDj@E{VYW6SIDx4=i*9&Xfl8ZV10(odd$A6JD)*5e zvC0MGH@J|eeAwbdXJ?1y+imQJ?9$rbbvuHv*$V0}NeoCJrB(1svO8G~8=b*(hQnUf zX=ss)DLi9U-T>`M=gw)ANut~F=xlAvxi7^2o#OdNJ>c+@yDAKutBNWR=#4}7%oDs` z{mg^_@zFX6S4TWF<#i(Lf^9m;em@pP{C)|$faSO?2{-lgu}{9547viYCl3223C+a0 zK~^9nIqZ7C#*q$Zq^96M#AmVN;iLH>W{=EshU^R~d>KIx%7Ox1(|LKDEL_rM9AsDN zW&Zs*%7Xy{gEf|CLDQ-i(%=X*Al=Encme5$K#;Ma1@R&R@6JZ*H&udODb5AG?ds_W zOx`7$n3v+)<_NW3fIat_P>%mr;tit}Yc_mLoGH62T^}7E081+r>sA<ioX1m`_=lGj zeF=qhsqyoEh;g4(+hnJkg>gBvbTVm|zf4=_W(aiuzF=koNPy(97a;w|gda|)pK<#- z;J|+Se(X0i?#G{@_|#wE=Y}%*VHOzgEiYWP^mhxA@IX`pr2x=(HBlKpH{wX}QAl~Y zUv}KL4Fh(ee(Lh8X_TX^@a9-|h8o^qo`rAo@yfqI$C<6eR@>*3H#pMD8&|xr-F=H) zo;4%K1ymL$ICkiPdT~W(HZiw<`1n6VyGOdK^ZL{4w^Le~1eJ#yB#Q{jy*i5CP{6N5 z=p?6DshOIB$;HW`;yCBXUvG47W-i7?kZGwCjr7Z0f$%euyRBtSk8AmZD}fE+vRFbD z@_y7$tFGh<t5oj||9BP@bU*$l*k;^oni!jnX*ZKQb4H{D)~+Cbx2I%I1A9wE(2^&h z$;h<DO_008I8a~?qws@$82E+&cZr5I7LVbQ#-?ursK>~5xpfr&uz}O*g4bL9g3hR% zJ0{C@z78+PH;#p5IrWhh{wZV~oC<>5k@otsq>OG~(<suP-YP5IzVW(EOaQ-1Ks3B8 zM9rEodPkHxl@pAc@@+4Ce+2K?VS!11LvX2J@8zcQw>(<~ztr^p&1&HHPtG@cVG78d zje)6BCJhw_T~lc1YY@#D9OAt|zSfp9AO8n&Yw&i+Cug|kvUCKbfK-uf-!3Jnyea*c zsn!w%5mg`ChhcMgMMxBpxiFt34bLYr68@jz3E11_wfVNx%*-M?o&{7f!smDUP1axf zKLA`nqrXUM+HPClw}IYHfI*C!!yy|pFB)+l-(N-_Iu5sIfHx?EAx@!^F9VEX!8EmK zc&vp4a;(TrpXWvoX5Kd0c(zi01bUvUX5BIfr_HjZ^xKBmPR&;iVJn~BPD4F7Ax#M5 zL##YJS*XY`t(Mo^u}}t_37n#w155^Ih&qtPL0y(xEDR3W^uR&nar_xZ8g0cjXSCxS zDVtdRB|HV6deWtKHC5V`vxAF;D9q>iAjf-4%ce}Ni->gzsu~bpNdOMq>o3%bbIKH{ zk`uMTM3Hp_{w+Gzkw;RP3?Shf0o=11XATWchx|#vyM-&P0+UTon4@=7`(#PZ>f$zx z4JS!-zX72HAk~4UE@loi+3xQeX3_6p&AWs$#wA+H>FDr_yZ*0k1~@LhT*$6f&JO&) z<))jg5vm%KDSVN-(u?<Zp}m_K`1kBAv0T69iYDhcRmoGDY;uDS@HmUx5>Wn`8A(E` zfb1kUu~av{e;mufC`d&-$5e028gju8(3_#2uj%XakXb1i3~nDX>2^ub_3V@~dyA9l zZa)?@qn|%CO&}A#?f@~888e@g*rW7Y@&2~kp7GN9jMlgf9a%uCt8bIbv8;UQrOeYI z8>1wzG><%YCKo`@2Ud*_=#zp)8K#J51lnz*tuTsz{tn`G$MWBz3%;fh)-=rQ5smZ5 zWX)5HZ^7RdFoNZUUnyXVltIE3N1Y0UmwlO1k>(C1;)|R<dV9c~FECQH?g5<%zf9~m z!0g1}xS{hBw|i=~RS1!2Zq>5gg_E7^%tTLmKs@(rtx7XMb@V?>dR@^x%m8SYIyM+x z%uYd9qu8J&t^VFC1_tS=4klE4W_4hzI`@*&jpll9@S6-vk(d&@i#Pp*jtPBd$u<ln znI_u5(m5DO(9=S0Tw&4%EdZ~@N_P*vWmxjH3u8yt>&*~4v=NF9PeJ!RdUT;UA%BiA zb8Jp)AkPA_`<`hU2UB-ZHryqZXGzk*4dX&{xq;gWRKEuOU?}%RpRsZx>P5V>6w^L= z{F991zTvU%3~O0yoD>@QUogI-<`k$kNNOLN`E-2^Ga3=QJxf~Q(F;76)KdBe8X8)u zZtZ$K^r5jSBx)7mX5iMRtJWpP4Vpl1uyN17RPBop$H=fv_|%v2=uJnrtO~~H`O&AM zQzM)#aPKAh5Eb@U3|!fk{QDVv?vK=-!xlJl2Nirs5I{jQgu8S}^FVvd))J8BEN=T; zsFX$iDytGyI2*K)6fP%u{(8-mQS$b+rL$4Y9(|a09bl4J8bv(K4@f506vHBiVe-^{ z6%VR`P;1YUM7NR5CTwCNcHr{0`SUPhu6bQT%B_2DWdr&CUwqvsvRKHEt9-T=UJ17G zF__!E(lMvXLgU^;Xu}o>B=O~sf&2`l0=DP(vq=h3i$F#wCzrp%JKJ(;SGa5*4`&GQ zm9wa7fBuqUCtBb3dDmh)Koe=Cyttu>fZXRR$R&uj3igR@+SZ&$|IUWqkfPUlZ{rAp z75x499CcRX9bCUg%*8@#opZCyz`^2|nZWb5<jxWBHBz|dtJR7_TX-^(zz85@2?SEi zB%7C#Ri+xy%l1lzjeopJSBQS%C)aW=I9L~9a4<(Ty(OBxEh_4Cb>@-(F()LqtlxAo zNgICD5IF=CZ*~NK{a|HoToho7ezTtbXw(l;oaQ<hm?ie$sJ^esZzTauhaFRO-On`O zMP|e}mf_`2cDB@hY2;O74Jy={<UW)71IuTci)Xob^yKcN?X=d@s~eHoj7q$7XqOap zp9al;eD_=aQx5+gS1G!rqW_DA77MirFdw9-<Y#HW$8a{d*LQDzf0CzMcb9YL$T=Wt z)r_)}pvp4dQNr3g=ZLbdsF|-H=d_p%fR+2_rc@@cH2Ntds%~BGKjJOkX%#tSi~ZLc zw(J-+JN^_{`r%oIoTdzTRKEy$UCKZNYhBN+KYt^giOVwlU7G$M(%1Pl9(nW%qJZ_j zr{<a~qiVVQ-jRQ@RJZ2t-0R13eY-WfO^>ZHfDGAI19Y$wXOgi=fL|l2eSb<m!P(Wi zjB>wUKE_~Z=>&=pL4?SZPZ4aOX}CN7CZfX+y9)-HDg{IW(U!f=kN)2fOVP94**T^z zg{D&x5w<9o!~`K)DEjHYuwLV`I&LYjg1+lv7G(Oyl~d~@l)huZR5l&gRw`Gus5_EE zodK~0E;)IMajXK;KKlY7ZTI8sLZLJ4hDm)CLV1?yFh)Hrd5ew;x1BLN!~x-1+O=SF zZA%h24$w4lT82><llLLw8zS8vCZEx9-S|cjJh_&#m@{uQd5h00pTtpX<}^33&DMH( z2D1;prII(~I`U@43OJfo9mQYWyzUF<gd4zu%(ZB3E{IANX5kcl%i8N}#u5QkZ`=fy zAnbC5%Tl1&7nAl}zx%MF_p(bt5Y^=0N>k#SA+7bUD9fI?vb0QV-SJi35Lq6dLd}8h z%8-Q*45zE?D|`|DSuR}IalcSBwN=Kwf6*o#1rl=>Ip%mmHk`^~t60yEf!+D`yqc>3 z&pRisaRG@z=*FyHL;o~Ei?@rOk1Zdh`VT_9<~2K5*|efMRJuxVHbC)T@xFCdBi@4} z)a`RMC=}t^DWxn6iz?d3r!O^v^tBz5SNe;SSjdgEK@rp^P=d&5kbWXZ2JX+|s1Nr; z&u2jxWAT9r23d(%E%yE=jt9V0Ka~(=<|T@@3URTN4o;+)1>1`v8W~k*8fJOy;cJ<? zku6CNm_G*aX4%`O=Z(z^MuAn%&UT<eFLE}TyY$1&TOi2jIS8-fSN5b}Lb{^sKvP7{ zU*Osx#QAfZv&u9Fz<q51YuIebViy0V-&$Oi-PtPG88u-ec@{SxL;M#2zyUMh$=Sa^ zr)GPSaWBTuU=3z$0M}wn7_&bPiC|v$4z!74d(_`GOzPy<px<tKt@iM+1x~`CqP{g; z!AAv|Nmtp!R`@|Omp_f#S9CT~wHON&kmspmNU@h)iCIrb<ciq5xDVO_Pyeh=NX<@o z|JwEzMC;i}F$oL<#Dto$7V>B(YF>zCJ6`{aNB7pTzfY4E5HM=6X8vbf<sL$UI!o`` z09z%$A1rQJpio!0!w^#DWCFb!AV#{e@+o=@jD|UxJ7A;5H$3VW=aF6|mV}kWrY47o zP)4r$Wb%KdTU&W!cg)cdKjTV&crD#$1U7dfcS$Bnim3t+5yhX(Cd)_6S{R?4WMT*~ zOxlr|MDfhZ7Tr)rynu74C$VgFQKY0vY<my>L{|gkq$eP{$B%3fqWWbJ$7<{L5V4=` zFbL{X-F6OGAEDu-&kF}jO1Ga!H!@5P6dsMqE)YBd34z)3tq{F?>1JNH_*ziwZFyk! z)wh#3+df>C7=gAdYoI2$V6OsQR*D)eoTBEEUoz6+7g^M!FwLFU(!SkPd0K;80496^ zAo|>FC)Y~!W#1v;|K4NC5gH;eNFv_+8T;dkcC$sb8bBdv?wH$u_Pst`4@>k@MJ62< z+lLj#0A5~LGSX5a1qSzid&O5}##j>KFM}zRqR_^rE5O>NgMh}}J<xGCl^l5nr%UV_ z@Hcs6g<Gy?WT8y-WsvfzK)@)gH_EcpP@I(nN#o1T4S#%Xpm$PQuCkH+!<8HZ;i#>W z-bH(>wL)1bd&?25)4&h>R;z$Gc%L?}^2Z?C+Pi=@*L#WcnXE!%$(;*7owyZ=wW$td zF)uWa!07r%vS-r&mU50NjOlK`B#{V3Ud$K;^y?NcU>9;e$)lv{Tt#8u5fsi>`62j& z!U4EQGx2<sLhf=6E5&R&NuSVIg?$605(feI;|;#P+m;^W?0lIo^~2k70<a4A`fr+5 z0|h!<itGPCiAZXW*ha(a-{OXwASpnxv#_*l!VaEqW8eR!(AX(IVwF?K&`tJMb`Tfo zrMe29p-Y%Jg~h-fnUm`Av1%iex|uX&oUQLDYzM~`ptd#T>T%?3bMv^E_x-^%=v?cQ zZH9~KTsQ`9A;&{1IZU7^&h()bm^0C=9UR|#+^}5?Cdgpf)FUUFFn>XkRCUNo2X_rt zBBCeo70O|D3Fq@AThmj1G&F}P!HON0fe51k!`?n9v?S&fzWKeKo$!9nQAGt-+*FFm z!~4SiXnxAYKX1W4rXrcRMDZgjZos8!9;zI7qC+>bnpxe%SSYf2onx55Txj*JBju5$ z8_6OU{lP-8skGW|FmO<&f-JO0S&Doj#TXPW>7VDc@#E4av1VdDezJ*boL|r}aY}T7 zltcpX(ii#@+{|M!q<*5PX)w+5e_^dn4N0)k^jrhb#KY?;^1^?fVn3LjDXwj|4IXX| zNh$D4r<04tevR%Z`}JzyVgZVhRUmRTn?z37frEu&w#l%ZHU%}F@yCU>46WQ8D~1r* zZ9a2Tq~}x14o;90#GlZ*$#rhP<|cY6Ys5=Y%kz_!5?TgdTfp=yI)s5i0BeV2s3x`} zEjHyGTjBY6)R7pnnF`_um|N}kcV2ZWL^ciUEK+SrD4KhAd#HH#Xeu9s`->gBa{Vqh zwqE2Sttx@PSCI!q=PDtjAe`s`00RJ;fB+8Le(xIEvNx~t*M>WWR>1FroTl|eA(I)E zbAFY^!Q{Cw137%-_kzD9!z&T`Q0~#dJ|0HMYrpa)1(zhy40l<MY#{G}91sT!U<`Eh z)fA%`lkL`o80Nk}Hxtk1@2-^2F_SgnV3mU#`EPk8<Q)m+ugt+1q?QmON$7%lbq1C& zO06BO-RS)T_#*;<kd1G&`9RrSg&F>%%axVrl%1daN-PkW9-)m`TJDam^*%m?uB0WQ z%C$IwyeV<Zk7~bQxQiw_mp;f?7cL*qcX=e~5iI%zT*;I*QJ?HV#!Y{UEJC;74PROy z#Am#UOiLQuHDvI1!0^aW3&X9i{*Bd9YHfEuUq}LaG|^U?o&XgR{5Q$J%HarR%?{s; zK)_B@q(`R@Qdq_6Hf_qNSBk<f!N`3*Z*uqlm)flAZ1gitIN3T=hF^t5FfB){=lgBL zv38T?<<(d8=@J7cN6@hB^{FYZAekvyoy{*|a%@_UU|d?@9ix|fF#8SfbNQI<VPDik zhcwdpg>HxJYa&IH-2bDk51;YYU-jJg?3^mdZh^coN8?NzG$b%8Fwcq@gFf!I>yBzE zlaAbu8+Fm-V}>r<W~vVp-BDvRNO7oiR9uZwO1L(Pj8VwXREw32ku9nSMHEVvkE&-o z;k|YwEspV(Gjtn}xmN@|<^HL)2io5LBTX;~R^<}`zqoGZi_vrbnG4~5I7Ri1C+CF0 z(K^fig^Tmi%cJ^HqkmUr+XKZretV5}41^Qjnpf(lkXAk*`F63k(e-C8I!qV<ew}*n zkyocNyb%#mzcw1`=(V7z_@`|4+7XN1>tS9jRqn!I%gJnc&{+z618*9ik6V=G+ZGGB zeNazUuD5)FYWvF2`PO_Yy(A43!c*%5XNllg{;H%ytgp2^@VE$8)*Ru6WT$(661B5y z!mn7l9EsLx_RBF;XDTOU(3)F^n5>$)34x?<BC_{YJoLHh{bmlFVAn`oE@!cDu$}S} zK_MGIZskQ?xWI?kh{kJAOQD>F!FDWv|NqG#Y7g;9{13b{x%J1NG<R4;$-%6EvUACt zj{jeex+&Hb@M_Aeq-vMa`!FWp75eGg9MkO$`u5!3NB-V&A6n>U5-Lf30yXm<pkHCg z$SJ%-Beh9QixStB`DcE$Gf(H`w%CjUuzxbAOhSC_BxjJbGAJ<ItM`x}=8#-vB>6*@ zwW4FVeQOYSJtbi(-z@{fW)abJ2<s3Mp-}ic7slH9yN!TVZnuf>7ckQdyl;C114(Z1 z<YJrz2D_OvnMg_hVK*-|v&i*i-MS(O!07PJRAzC(tSc=k)fly{7e7`8gA|copjEv} zTClTW;0`WA#FS5?Ar@T%bhzZDy7GWz<J42&xjjJ>P6}w1%UEy7aA@SkY(l88x~X)S zW-17N|H&A;ahQG*GpV2*Uxsr9ChX!*|2!4yM(th~_F1u~i#8ynOP6Ob8Xjf-`3S^L zFV&lRA#O@+2e4gX8d9lse6s;F7%2=6kn#2v=aZe?mA1g4ADvr!8qKlEHyqUv`%=7r z8Aif<Vc85-4j%gG;PACX53G@SO+QSYtT5`oTO>WO&*}8>EHkLfn@Fu9#wX{ucG=IH zow^nwMQq0>-}Od&&K;RO3}-0UF!>#DinJn^C|wb3%WMjN6h)``o3Q4VDbR{<P1D)% zMtEMaU3_-cupdIAH>-)Z=4XIRQ3CJ^gxY6-=)w4;r8<<Nz$c+Vl6z>OA%CazVfz(a z{&E<p{^r?~gw5*aiVn_n8Bf6of8a;(5o17!#`(sj6rS?a%1=n=fw+f^j$Tgkbft2Z zY6?RzNu-~6a{`$nR-AB~=A_MU{<Oj7);Vsn`#NLw*N2qNft1P6yY~F%hTiCI#~I!p zg`{zpmhw<<OK9EN)NJA~vawY*d~l=mZ?b%5E&{*>5s>g}&#xXQG1L7UHdN`I!QNB7 z&T=I)aYWRT(PZ8LGbus0XvMCJDKR{2oI!rOGbFM=!27M^q}sZyGo2f~x6FHs9sk)v z2CQ9P#N>uv(&RVFPm#-n)`dPXbI7Mxc?ekzD&f$}7B<|2Vw^t1<26Q4$)fSJr+P<a z!=QoaKIQR4I0j+1Ahv~14jEpew}@Z5ty`ikCiW*u6ll1W<39`XZo_8U*|J9m9>W;7 zAYOZT21l4HKwSZxVD8|(v{7@D#QAGYZj@%c79PYLa%;4}e=d(y>7Ppf|Nr&_J6cti zI`^qm5}$X;5&$bcSNJpls!xI1gwlE|UMMZvJ1=wZc1hL|^u2PQn-G_ihVmo*_>$Hy zypPJq{6l00;$r%BDH3BJ(5-4i<w!JYr9S+vFHH`uF-fO;L3S$_A{k;VqX2$j1O30k zTG>3=b>2ADmk`l&awT&h*TXt^HQOmAHa|{#X`#3C=|Cs_z^KWl-@BdjS)r&d_8;)) z^VwR_Oy)HRGWZo`N~3aKpfwfS;KugKU#U+YMb7OUda)nEZ!JMxr8N|kxLz~dBCBPl zZ?NEwE{beS<_&Xd@u?7vX?r=>A|ecf?_kV)`jC->Vy@8}35p_f7jFqNS)mSHyuWv@ z3Vby5jH`NjyONoA@==hUsSH$HX7YU>x_|~>a}YV5*crFqvHFe&dn0FXj*bVhE}jc4 zLWV{uZFX^?rE`O%bafY-w-<WGI!^D3uMX8!dp2@uT+$j^LjSp<1NKb0j{J^nZk9%i zv~yl+)mXB~SD$OB-G58S7AsZxax)$$S2sHROJa-x{l_vgK05WUlpTwQ2xsphmp?na zxvtT`SdRUimi;}g_cr!oji($9rmn~;c~h(F%MPd%){6y{4G?(2u!4$$X~L2AG0uuw zi%wW&%U-kb3VSrI`m8f35LZaet^Ie-7B7DdhC@&-f0h%~QYhLbo#4_}jD^5T6ZQ3z zw=X;-)!PUDGuW5a{h_8sDcDCI|GWO5$+o)p2(H1*w9D4yKSH$KBGvE(gA#D7_eRip zQ)WSV7@HWkgaST=MTKIF)1*KC>;8Sk<)XKqg;S6FxU$1wzOv@TD4h*YFCOw9=x(SX z{)v50$z&%x#^awJB|`i}&>Wb{pF#BYe>-Cp@Q*<KXnR$ixndU(hh7c4*r3p83a&>0 zLbc6%M_?ncAY_huY)x*p_4(i57*_l(PLfKl87!3xFh91k^sCERAb$xovrDaFHV3<> z2G{Gd3zculRSi6IRBVg&4pR=_2mdY=Hc(43b3$6~E&oIMf<9$h7N1q@uS;AmpabdB zK8r&xos_<Qf#}Prx-Dag`l29g;=lLzogvu9CKk&9H7d+ALC~`IYvmt+(ufZ_<bLzC zfifW6*})tPH1?imWUeY;-dm@8`e<#Ga~NdQ0$7L&qHDw!)S+Jc{Qe$WZS)!5W6cOF zvqLjNaCvQ&h~Lo^!K{KsY`kM=?}kmMykg<g73DF=+jmc!5+`#I@Psw-Hjhm4SQk!x zeniYtnObdGn;}z>a$4m2cH8S1E5HB$zYRZ1DrQ{(==v&>7PRtJNb@qi&%Vn**5xZ& z^*mAkkth#ZPjJ4;$yGpSBS+Z&$b=qSmyi%9v_|Gl9D=1KUdFzo?wOf3iQ9!7X&~%E z_+X4Qa-}^>>(uzAF@NI2e1Rby!pYe_NgJg%gUJB8`keIsKQn*L=F6DqW{b-C@Yj^A z@0R2jOu*@EFCHx0vI2_$@(>EROu%nUGTV@+@u=8z(w2nMvWGkzX?h;FE#LhhSuyy> zq8ug{T_0{ssRY(OBWfDj^Ozjy=E!azl7U+gPjW7Fz;&EgX@WP_E>$jdUHEi9)0D!9 zcMJMCybDc~3K8lc0jGcf0It9QsDJ?D4`3_OkKUPMICuxpI$0Ftkk_j~p55{oAaos# z$dHApi(*K(D`WQV5^=x(_hyp03PE#f*0s{T*GdfSn!1zc$PY*}LC_xaYSMk4Ui^5C zL4slJfpG>&4~iQ}nLg_kQbM9KWPA!(+ek~LRu-Q$mKI6h00JEhjd$cGX=LsV8<l8^ z5@zP!L8Xk6o`fwyOMl3#+Vlz|1uox1#^3?6vK&s-%E{^s>NPln@&NwcE!W7UhV&Q0 zBe>&>o6J{)_O}rJGb{L?wqfa1MW_||<rYWJXeq_(h_sDMfCHVX7o3tC)s#W1cK4u3 zMF!bsrZ_L=gw}?R;6=?y8;YOj;(e!TiQLhMV*5Ra;C}!Jz7WP+w{ci(C0Yv-L5Lz8 z!({!{!v}P*@fM)ep+VwBLwjg}2h{u-#2W0{IKpQ+Ea%zfj5x}{V3|q71$!6@4jjcr z*xg|iw-~RL_>gkprV6`#s1C}zS;4ak?N#-DoE+QfUtCft4*d5HX3vXjeb*pCo}9pq zV7`rQ6{=cQN0sa<vP_#DA{;)CbBCC#2mO5mV)_`MNq^BIHO{pBG$c#_ef=&;LOIR# zeGk_^X)O;8iUt-;(u4Oz*5!0V;nb{g>l#`84_&*$Qazq<$PQ{B8Iz~P<iP6QQ}Y-- zDjKzhU}wZ^PPR-{H;%U!91mlTmmvP1+!rIzsCbYrL2IXvE?=fPaDyQWwt&Z`(cZ9k zD%GF>g^t55>xiY!zWXxwCeeYenA%)74;f2LT0)|LQ<tCnYYTqCZ)dz@RyCZDarn$l zDCx)&b>~b6W$ecLC&keS(V-m%6lzY7)WlKE;*VQ9^f)Z1To2CIsXH*c?0Q=n?1fxt zy;WSDMULj#r5+<P^E+zSiCJ$q%B;`Ba>4zGZ^B5m2{GsFmB9{3*D%9lzVff>>Pm_8 zJptqc<ar=#iSWDOireu8L+-{JpqJyl4rqz6holSesn@`PrZf@=nh^LPn-M$#Z*SR_ zhIrFD!fZ9p?a!DHL+dH*H!Y(#R^|us4`ht(0>|<NwlzP-`rr?`=5)lkq{SmpI@`Qn zQ|y$E5>AMUVr9Sw&roc)W|_c3I@Ju>RBJsFmRewucr}IyffNgZzg4;kr+jYdN0ic@ zc>45wF45L`JBc#J%FSamv&Kj}@kRD%%C-Cv>_rYS*_CfJcxpJe9mS7bkw5*36(kr& z%=sw<+ToPPDv~e>n)!@T3MR4)mM^=c6Zg-^HHQ3HrN5{V>QuA);xdf1wltCTZ|lya z5{`M~Y5Qk2>2>0Vb}ZDBL)@@d3^ejv{+tM+ozbIsDvZx$jI2=%hZX*)oaOqq=l2=W z38eT-^nQLfw5kQwpg#aCDtoG%J~8GXL`MIyX4b0<%zNItJ@zz7ryXGQ^(4su3F9a8 z6r88c%Cf~6g{~I)d3v0Nsb|EB^%AB%j<$E_5(KQeCDo4mpSGO4vnj_>^7g+rywp5i zt{Bc#5SAZ>>h}{7x`J{4|9bx_mZyQJ*k$J7BH{^FV>133kBWpZ>ND6Rt4O>^(z&fg zPfPq#EOczP=&c}Bcg#=M_22X~5eZ=7&|q`Mkn#npVN^KClyvF)V#Vxsv#kf3hmzDK z3UuJCOi&D!d~q<K?Xa^dc)W=q9?-BSV<qe4pZ|+8VS~mmg9~#Ze&o)WFZEK<ho10t zu!(jpEq1ut{grd!p(GC`@^MTM(3Jnb8IC1pI=-(NR@|8nUZXt3+RME7hvZ0HW1j&G zDU%6m5#qdgGOKL&oR9fW6Zo!L!1Nz|&1Ue=8^goj?;Mm7`2s$@U&Ovha~s^2pgkQN zwM-19Et#J;3lC=7CX66J-!1};5GVuROq->CfU{HwiqIZKy5>H5>n>y`62XyycVdw` zh$~-@ml3KOvBRv>NvLZ*%3}|s)zobCZ3#ux1p6d&FD$<_BRZ}Ics>CF13GnF_V?t_ z{RI-#ikr@yr!O`~^6)<rAnOPje0@@!^9*E`-9dHoAlx)9O>r5=WqbULVwV7bVxk9n zIXyF#{?Depw<TiG#ctuo2Y29F*(e_x&K+6~NtU^A9;rQ{a4%A9HL)+1Go4>0SRon3 z*WMSoF3$D@^ku7o4<VB7y6D8`)ztHS{O$|d0<{#%7P)Y;`PLR3Gu6rMe;aw@pL&(f z0>g#y&t!zdLCV+(tk<uDT{=UEn;I-RH5MAk+Uq;Do5;V)UrOmLPKhow&7kovW=945 zCs4LMi;iC#n%URx)=!X)pYOZVZ|lUp#(1Fh$bPB)Nv2P_qJuD7Y3MMe7oJ=;_5fS9 zGMSssR0V}s{i^6Efa#lihzwmCo;WNVi5z}QclHXLk+md3a$nz6jFt2YWKyC(eRJEL z$x%T!g+{`c79;#e|MGu7{-LjQYQUH`-5Pt6d*3R8V_$2Dgui@a<h!ArU_C7S(Lum~ zNv%t2)vF&zRA(J=MB;B*<d5@JVdC)Zl=|8gv>xU6h^F5Mc?I;*_F036VJ`UGCx+Z7 z+A*}0Af9U+7nY@rnrk6nqp=1&FO~L1yFR=)!bThx#t>}iGkdd+I-1S~3-cG#%6)dd zn}(k*Z-q_%nR~ot+{XAbF2LgV*smrwDCYo_bjL7<LtT6S=y}UHYlxxwx29H#6v6-) z6LG7qopG_*Ewu=+$BV)<i09yN1)KFC!3R5v2XCy=Nb1N)Xl7(n{7WeuxTZ3&fQF0{ z*5E3P0fhC6q>1lK*z{GnXDGGdjI9qRZ(7&J<v#yhvVu3@hOzOK7q-OBb_yc3$*q_O z$ut;Cg(JEuhUo)vLe4$d;$C+BhPa-PnLuz6m2Go6{~$8$|7G7R%>>MM)T_k9E$)YS zf{~_^(NV|ZETV^SQ9H;=Y==x`00#p;nh0?PGjH-B52ztJdpc={+C;I!b=1#-8#+S* z0c|Yp7OXb8(hM3!gKOjGjceT^y6+-)j%xwEuV)ULzbQ%Dx=;5w(%(+ew;?oMoFDAT z>fo;RZNp2YI^_8lw2g-FkaupLwtfV=SJD7|3}^$n37LgdKeA*XlC)|TKa*y~o#aa1 z+xJv1J=M#_X$x2ZoR6UE!fh^TcEvzYDN8t(;l}sEky2oPU-?p@=I0kNiVqJ46Suq7 z<xdj12|pk%RvcoH9neGyCAVqq<rZ#*t4(0D2KUpjg@!->zBm?^^_w3f0HF?r3^3N} zQtuB?P0Dw&pQbTqT;>Hl)BSzBZ5gQ8YELRne$qYSXF<HtB`o!^^@{+SAlS`@2TBJ^ zoka@OUM}IX#dFk6S{7_vj!q+H47q2q0iEXS%B`hwWl|X4nCC%Eln}7cB}*P}zp&&r zUM^gSMNiP8h)eJs8Mgzdv%3fsD^h!<v>>a+S`tF+@sls4m2?NV_%06Q*|dc~j?QjF zTKP)ZrOZlep{OO=-g{N)nvgcK2vSGrtFDwlQ0iIPF$`b{qxh192}`iuv9*sG4_j*v zciHn_C1UTV%Mu#MU5wUV;L-dPVlv@dY96xp?D}Z$1>V++s!ze<TA1h7n*$SJ5XGM# zCmTUu5=&hPv>CsM1dB*yJ|!(66LW*q{pRL&jM;Dnzbwu(%<9;6yL@!F-vP$=Sae-g zL`{XX7yeoclyn)hhF?YsJw3JHuPb7=%K0I(-{UY6wV0e2P$n5BB_Nlw!JZ-R!00~_ zYT$LnmG_coxxfT9oUE@3jYk<UusJA2Kov8T5!_By)DY&St+>}6v+T~1Rz7avi6H!Z zM7$4R=5dQi|KZC#Wf~bh3P6|)BMg!-%}xgGodH=P63Q!%%jNK(oHB;c+aQiNUlGnn z<^ga_Ug!)t;v9>4+gR${$lT;rvLDJN-vzhD}IbW+pk@pE}TkxTH;5m$X7CtK6Vb z`7P;5bnkkGHhz$gKQbp;K>uUFP-bt9$Ll|tL_Xv*MF0Ib9`^xt1G$5lMJOAX{8fJX z_St7ixGnrw*MSDi0*TTr1O7`{n)+)vYHEic9EhGt8}%HWEgY&{ahUhx9ha(%;seo0 zMk;%R0gc^r_e$DQ|GXRYTFqMVS!o85XK`_?tf9=y_?}s<O6a@h6VVLprbexRV`9VD z9Gyv`?#*&vqg-cGDUV7;gcJ+lAy9|IR>lre4{>pcqoDn~t?O?paql~92pSwG_2Dqq zMdM&tS47e!yDp_PTSvllX<;TvEBNhD@yO^4osa_cov?I_b;<>msUB|fGp^MFk<(om z1cdQic|MUR#^phEjOxCi<HM<KPrSuf6=%fij!`;QPw>*S6iW&9e&a%np3L?!YLJ;E znOT&TE9YN3XhG3#kov}cprk5@XbQRrxJ8mqMsEgqpkBIjAzQEjr2OyMpYE6iqAbP$ z=xB>pp`txL`@N6KH^@ob@~6M@JZ1?!fB4sQ%dNC8!$WR6OA>k4UAbBO{OcGM5unb= zBPzxCk#nmOg8q)jl!}q+6L)29Tm|2uwz6}-_vC|QL1QlUiXXO5=$suHvT_O@HmA-< zmxU3E9sUcwG1vE()dR9d1sqeQ6)R5UxQK)*509xRwEKH~4@aY$*{P~T%)GVq)*s)? z^;n%e6`^k#_ANj-+k>v`D;1=;ZxkO$GhBD?@q0Ub(Ex>9T*86zLg&;u9=7W5aLv1B zdQ^<95;BPLO`XXeR!Ut8J<V&(oE8O($7&kE^(1kG6^m~u{fi@hAd)YW#9Y05_|xW{ z=c%~^PPX$>dGM0jtW36aX8&>3WOy0FtA;C<?g}SJZXK@9|H(r@c|mB-Uh?^Yvd8(( z!dFGms`^D$6j2)!%K7U%X%J`L2n^P)tjhpD;#GP*<r*)w^Gq9yI@o!#b`8R<g-`?> zI*>rP05q3?`nfJY1qNP5?iH@_1ZqdxhC_!xf2CFibjSV8>Ofw%8x`PY>Yzt^ez0Hr zweBC5j#P`1jAn3hM!=M1DSol%=ch&6VJ(Iy-yMhWx^Q|AHbx0vpv>WB0>b(yKq?Z> zT|;is+}_8xB@Mz=LiSHU6o3E%B>)3z00!g$4afiskN_8;05m`VbN~S!00J%m26zAy z5CAy90G9v)761qk02tr^SO5Vm00h_o7a#y$fC30meKS4-Wf0Q{dKorjJ-*e*3}eV! zWT=HxWKy9<iQ|;_WZ73n4tml0VK)E(0{{Sq8(9VSRW*~SuriWC&7t3+3pd;$pvICs zjQrqxz*bMg{y6`zLv(xq00Y<|;Rr_m<Y3<9Esx+DI2{n~Ma$9*0009326z$*7^FJ4 zH-Z)0Q#|>eSsVmK0Pj1YuWCL<)%&(;_-Q>zla*faQy)hL``)^Pl(z6HlzkC`h1>{< z(jl<0roly3(ML0RngXLfQa%&p$}o-@28s1=#otm!!{i|P2*t~jxi{aU)AU8h^E4=~ zv|0ULoz%~l4lgjh9C<=rpq5@O^zf9U(jJaxy6(2PY2zUn%Jr-XgI`$m5wfT|ls_>6 z{ExoS8_r3!xLmkV&NLfV={Mds;tKp0TizX>9#yJOI4|;%7nfZ{2>QQYcVYx<0P+2= zXmX6q5V<DjpG{HVONHw4em$0|uuAb=1Fo+*gt_IWila?q)@c7W32gpeh3XxI>jMXH z7sF3_Ux<a-*pEO<n!3m8(T=2X1w?FTi%Fh)iR6Sl<Qk+s_onZYgZjg3F^2l3s%VWC zWM!jfr<<xOepp$-H0?(Fgv!dG7ETbCB$3`v6kR4~>74vb;>U}n*>ESzzDs1dsK<Gs z2=&r>N;U>^1cHD3J1$%&98jUq5~}yC4;pbNc&l7Y=0uH-_hW84RM6xGWbJ;y$JEzV zV!C|H%b-rjm16u;`Qr3mSK+FaMns10k)g+NToo98+6{Zljy?N%YcQQUN_*5cXI8fI zMTNgn|JS#OIU*$FaDUADnR{H`fb@AX5~HPM1%KOcZd}K%4aM8@Hwqz8IAU=J{#MeD zB^Ag3Z`r%{^|S%B)m$s;?$uKk`-`xiFO{yT=OH>pTxFjnB{R`&CCN_@m`lFc8^@QA zVoIhG@AmyHs-><zy2FtY2yd7!7K}&3a<04{+{V6uV43w9H=%Xrb@Cy!$chcgy<23p zD`HP~>Zrnz%KAGKw!;YOdF^s!OQXT8ALGn^4jYrc(N;wpfm={k*Bf2nQ26wOiKs`z z(b((tXB=aB+n&<=yzkmQ&0~&uivxGZ6{f;ycy<J4rij`7J(udisym|`@YnDj0`V`) z+kU}U#ZQg^R<i*sZC4|ioI`T)EQWXC`UP;eP8UUci><zjRxZp6>LCB41z6!Rf91`B zk;E=w>O&@3;%AIg9=9(Rqv}vVlCGWCT+1<+-7+(DF3qS3_yCt5tqvOa)fbZrZ)BH9 z+hky;5v7hl@3dsecqUUTxb&L;ZLxxJ?eB`^5$)5(UI%F>yGbTlqc;{~#7f!8IfX|Z z7X6SpG7rscWMnsie5I|~)!KJ1Fp;!>gX1>cZLq%NK0)3Lf@1(!qRwm{a)zhP0hhSM zKL$WPjIGm6ZZKe7Ps^kL004jisDX+9GBZFuI0Vg%Jiges4W*U{-2j;|CP)#*sDpC; z*L<<Zd$gg8)a|TN8L4z4s)mz?2+G_$-=jUYpoX}b2mU}eG14Ux&f-ki$&OF~GWes) zr2<Gb3&p%sceoC!Qnb!cM_v>m<u;Wiw`|-3K7ThUF56(dklmhe^LgL^00Yw@;t)sw zY7J-=`cygiLs$V9p1Plxv?exfus_tyQd%bAKIZ{o!0l)v+gwN<`7oM|AR-FonS%~A zesyvjNh$sdf|H^X7&FUUQ9V*Vse0l>^WRz&usL^^VKmKf<3*C&@+5K)0N4oh`tdyZ z!@k7F_K?^mIUg9VyO4v2b^xwVNjJmyR`8?L-A5<Vsd)Uw@iTm53TjAv6P&d-RN6$V z?HT14ZXrCX9J<(?^VqXn=K~+Wr@v@L-e8#|O_`WZzvxJ=9gU(f7b*mdr->!9nOwh) z28zE<q6b+_Z~VWSv4SY3H8XLGgs{*mQ;&7p*c@}nUHI=(2Sd(jv||G{DgLQR>AnYk z-z;SIEFOOdn~#mu$u%Oul;q2ZO4WFMl*A`SzZZh^QYDWYjrNplSkH}nrv#82+QdJ+ zM(j$HrTI~!8$F9vn!{_h>iqZ!nfR;HV&MCjNY$Y}FfhkK*!CakBj6kp4*s4uLNsf( zdK_lgJ4gRHK&btkSxK=HM|SavW2Q5+@m5EyD&YV>+x9KGX@Y8UL$a5s7Td*uwJuVI zB|lJ}YQxAeeZin-#}YB2C)n;U`K&zL2jr$%7a%<ZKsXnm-f+K=EJ|(*R^MM?Yc{d6 zdM=!KQ9M5xQQhW$3)d5vlAKQQ6LyHsBd7ZHSj*FHZF7T%_#dg}?S^9QVLv$wk_jwi ze=JB*jak0#yyX0)6e3iGI{1Vox=zQ>u|i>NZ4+%zK37E3cyr63<+J0(Oo32>+5nXF zQw}^r_1p1|ktf7R9|l0QLTn9TL~|!CzxCobZOmFMUqGXg|KyhJG)J|p4FX)yYM$eH zagBJZC?#>Ibw(HZ<Adbl;&s@eJa5<x8=!^$>fcSERNPLv@nA%fb%);6tQCB8V*`3- z!{WYxCL!z@D|PW)L3|r&CgvoQy2)|Vkax83CeX4fD9}chGMHBU(L&r28I<Qu&*`w4 z{1BZ&-hzp~ESF<k6^^L|41oojrd5J=qES-(eSLscFA!6@N30EI0fU6#0bt?WdsrC& z+97OS)(OZuZ&5<;)FYiwaRUME>U_H<#Euipym2^u{#yy@zknPd4yr-}a$c>(>hXk; z(NOzyfkko{&6T__!Z%h8$Cd0y@`bvavr<c_v|A0-H?C7c_$PnJIo9Uc3U?RZYc9UD zXIbpZu9=99T;l||a7IEa?2umx#Lp)tq1R-5zNdGm@`QJ(0+J4*S0GsPagyxBX;x*R z!cEdbs#bhVB%zW7sry}G;VhC#I<-e+iSWJxLBhg1to#?kX@CF#0ImV3!-$^+|HK$p zVIa>$3d57yzLO%LyycGs1I{uSeJa_?Sg+_h6F(N3$aKcB?B|dRV69wi^{B++73jbp z5jVa%XcL63)F-piSlVIDM`}-mpcjyiW6(H40)0{gu|9?H^*T2<U>_@B&O-Lb1(cuD zQxE_%+NO46Xke>666fZi8Rw)Y`G8;!2&(2aLL7>5E~DN5-D+s?X4$Fcb8o4;;Qkg* zXQ(+h%?<l=000QZA>$ZAKXQY>TEqShQ_$$V4&Nl0FM^i-x*+jhRD;94SY>Loi=D{x zz==O?*0b9_z@=8>VO%Qap{x?}9i!R}EC@mfm{kGZ!EQjdtfq8$;Kw9u4cJYsrBiVK zJt4{6ddRGA<s{5kKGui%w3`CV9u-r9vOI0=wc_Ow9y+xWt;1&vjS)hZ+Yx3Ve$nm} zOEIU{d^0}X`aT%&;|y-1lE<&~Xh#CN@0ij&)+RwD4Cu!(G-d>b7ruhOo~Ujh7*d4q zM1#8qzo9L|j?xtiS^{c=<YBD|@c>)8F*B37;%g^gVO@T!1Cg6HPHbex=`ZO8AA3u+ z?Wmwgj|2MqeTkxn*4y2+cc457_(2du*e)ghIjp1BqsJ~;eN=HYx5J0X)eySpKI}WH zNTz}FZBtmrE3g&qz2r*8f2UJDWn3x9v#MCs_?Hd3DL9F_?ArxevJYhX1Oq%%L~!&c z6039u2*hj=v^ep<j~sCzO9%{ZFIE^30*#iBP4oJ!5Bui0CVfbwW*-$#lb=mS5rl;A z8Dc%g3Zq5S@vF^HD45)LhiU_>m1t4yng3ecNs?rq>SkbzSTUl(yim~?*M_V7IP>^C z=+R0Y(!DYRKM4NNLUi%%QpZ`!hTsXEh0sqx(EW^a|CU=T>$N^a^eiY7YRdX){iAx7 zRQ*AJ5m>Y+#HW*cUb*`m-mXoX(yHit|8jBvhY<E|D3<k;tFCUaBqbm?w~XGL#Q%Yh zX7=vFO=XW2GP^=H?bZB<xYQPS$3%T*_lBnc_7vKlV*R~{i=Yc=iVlVgP<dFM9fi5@ zN@uu!!q32;j^qc{l~Vbfr1+ZnQeWD5sL~kbCjahH$*x(v@awb=vUY6}Lp1T|$H}(H zv;L8V5FLSOw^yCXGBLUA9v$$j1g@>$1qKbvZEtx(<>sAebl@nzL@%!CK*NxXQc~}n z8nkENwFfePQD+9^JJvSg00G@?^Z1xTNdK@#(M8@Xp3p==TOS55dD5p9ihU2i+4ucJ z2RVVQ>V71}plvuuInM{mSU{*3!;|FdRT@7|SSk*bBWg@Y54zO`rdr!4yoL)*J5R1r zb`uE(qD2W-m0IU_>kz2>{ERAKtqQ2U!~a%?xE$1|$F9MTX~c;4_>1Dk_|eWOie-ob zIJ*J~`SPs{0Qa*p1v?IDYzbq9f8boAMk;e7CPm`s8T&Gj#hPseL&C-3#_k`rD2(RX zLfA3aiUxQ*xS7_rc4AlfjON`;7Qi~=%Xt98xq=IeX|!8Bk4g#zRo^Ke)D8nbRJSo9 z3&mkOqZ+f<4{cf<9w;3B02$bPVPl8gRcE&!?VJMEtpo@%vns-Vy8HKuHmpe$2m4W? z>EKE`(`FkF(qN82pKMSo%Dv21q(8~pMEnYFkyx2&0^H4dWAYY=^Q;iqa!@tJ&;?Qx znj||@K4rg(8&aZ%APkh3erz!D$Xx_yAMZVo5G{PBCMlodq3U$?o5I*&wDZnkSH#GP z;y*f(u*ke;Aw!6xLs`6=rdLq3JWLz~TbTXL&8945&Rcb72Ju*8MHPplE4!uiiw|*{ za^d+H8?*9S?0lVW28l?_YhzU^?*7b85K{Fs_h>hlT~xqIn0qvcjF2Ou!hLPd=He>M z`Sj!c&F}IE5!J(LBf~7uuXjr+>RPv7-Tv`2*;F0JF8pP0?(6Bt=SFILV+seNzN>Rw z$Vc*c#4G5UF=r7BT4C2!+p<~LzAK336-aO%6#pt~%vTWJr@W3ZCY2-BK=Ym*uCwsT zz{|oTz6d9Q|I+QZZd2Iq6pN&Z{X@H@@NaCtoJTC}b29$)&rSjD3q>r<XpSMm0A<C+ z>n-y5ho%=J^<Pip#O*Rp5|nFYVGDvLNri92=fUebk%78H97LCP|2`aW#50R5U+x#Q z%rsq!n(M$s8m)<%>lAycpym$GFgcnppkaVF{`HPCC-PIq_H7@&6j+w<ud%`Z3&KX> z1d?`z*nq4-2tU0nbYH>8h-b60`yRBkWcu)@x#UI1k0yb47FnlVsfmpO7>L+Nm)f8# z1F3rJ1+T}${R3Fzd2mx`3N6o7&b<_Uf)H!1-L1{E+V<$Mg>NQ6IXixJ+8t;{uPKN3 zPz2o;>b(1~z+kEmsScDMoqZ7g%1b~=TK>qO@c*g6OzYwfzY7@9DX@Yh5!9{q7<^k> zrmBRH5H0^WVT!%BsH%0?qyDXLpuU-+&R)$H!JBRUXBoM)Gld_i#lrM6hEx3uET+l% z^Q)p0J1*!NA+Q&-HU(A%9tcrI6%!@4`EJj-sD>wKhF-gx)yir6QZz%CxT2CoP?*{J z{m-1bEbNo((X%{y8<cm;FU)cT@Qq8gn_g8^xk!-INtCv;X$;z(ESDz5v!(7XE4oA{ zB1{K-U2X5|y-eU>veb+AFsA88Ap~8JHkYh=@ick&K8%~+uR$q(!rr!)r4@>hkCjEp zeeD7Rfe-ojb**>xEI^xdRFf3#s2_d8U*!-#d%GtQ8Z7;>maniM8l*AH`xa|#aYaOf zYsRYA5eqPp0huA{JIODx41IUTZEwl7`jF6+^*#dzFesMkYQHW64sPfH;WGdgJho*S z?!v8UiOdEFB{-*pIpKaIsv%Kb)(oP&WjLPJ$EhT0=KbxZoiU+sHp&i_y#PgiX1fGR zqZCPGkD5w`nuGj#TVUHI%p$yMaS(fx;>{{L$1t~J3|OER)i=I@rm(?YXly|567`@! zQLqrZhJeWf?O=UkrY}@1<l^{>i2u9suOtb{Ubc&Ws{n;!nMXBs2dPMXEz&0qghWx7 z?L|*PPk|XrI_)i`kA+$b3>1Fprwy%FyM7w9Itu91O(O2s#xgRKyq=2a7XjgSj#Xdh z3t1ncy9Kq@s?|KpinkFiD+bO(W-}Tq609Yr2bO_FcVbreHvSF{j%F~z8}94iV5d_N z(J@FOd?*8YghY#756-4bVft>ofB*mh*a4{ph`;kYPn7^ql{DZoBs!Y(I3Q=26_Ka? zXiEU@qXs+)(X-22e-xPt0d!|qPM3AT;LV+jd}#)xe6&oigF-O9FHE;oBZ6BkbQo{| zqruIuKo9p1ULuRG+LY~3aT9tznx>*DqjveYl&mEyMytFy#cOqTB;nS()bm(V4GKH? zq4>PuT9Pt<eVN1{e-qpZS-;+6%Lu2Kt-*Lh?(zptlASO02i*R!dHw19sAB=pyM5p^ zQS2pLMiu~_u8Blqzf->WfMs{99{5-#li1LYI5*7^SO5SF>>=bJLVs_qP|wm7k|w+~ zE1l-N6dL%oO#uNZ+pc(o#KAd$26U71Y(I;SCXqf82HIa6tRStz;~Pf&xnhGxZ5i<Y z(GH3+*J}u_e$+hShA8ksVqEwuwR17!_EJnYhA2^QD(MA7ckXhQUr*!Msj3T!wp)SR z60PYR4RI2C$xpcC;~9phu{XuV4@_;Zhhn)3A+zP};=X}WL3v#`<?T)r>5xqc&<yGy zWt${7(nI_<VWM^e4L|<>0ZE}C8IgwQtOCoQkUdMoC(7eD8X=k3nR8`nYs^+04_rZV zhAXUN8U-CoWqSt#Kuhro8A=FxY5-r8gcd%#o3q!%C@1i_JlFtu`f?$JT?)(xJgnif zk-nh-_Bt$^yfm^e<N28Dvv?+kKq3nq08YyOPlUz8p_*p(U63%~hip}NHPIIK3Hxso z6FTl1ii@CafS?Ar+aw1pYCv@K<-PqWu@!*%G~6%-MWz(cpezyegdYvMC{B`c@$WKv zEtFj`C^=byhE8PZ^H&FZt%dNv(^}W`fki==d5tGBxQFn0htX0BH>>F5_s5m@jRV1G z|C#Nq$+p?zv@w7V<6BgCdR<bJ*6XH4_|1x#GXjg7$NBqZQUSNtn?VJ~LU9BEH}s=B z_Q^ii7C8Jg#eVIz%f?-TI#jE^RH~I<I591t^I67X@r&ChxIRi$#Rm)eY-kOnXaQeT zDDb@6H1%TnuHntUL-M9LX{nYTj!e(;StzbxKOQ19-1d&eGi?BAtgLKa*4eN0rynYO zZAY26M)Ck<WQL<1!&!tyQEepQx@r>0O-hJ0&90X<8_V4IDu_Am^*)Wcw`#XlrNPbI zw8d{>*dmwYMATfHd3S~+U`64pHR^=(B;Mi2yNwhUZof550}`RuP&N^WA>E{{Mk7P@ zW-aKh+dANETdexJ@)Z1dj1~!WmV`QdIPlAGiXU;E2^n;!*mOZ_pR)V??ZqPD=EtvV zx)TDtba2@-CtGUEi}+gFM3F({)1!4f6>e4~6L$*0G*(tboXPwazjsOnqvr1n)B#E_ z2ObYf%d@A!7v+(Hrh&&KUQ>X-NrD+-z=bV7Y2<VR4({76w4B?u4pY3q{2&9Ib8V3* z`Lpco&Iu;)!uf|EPCc=8^9LWn_*8U)9dIZ4;L%;8Xk;l+NmCGk=Dp`=CpzjY5Kz)( zSSW;hlO&AX$=Qev7pUw>$lrk9PPs%+UM+2jqI=;Xdd5Uz4!%;5KCLlpOM^Byk!W0o zPH-w@o9=_DH$Jpt;y4s5<Rhw5#~tteX&vi;hxSFGPSH49+w0nDhVZf)Tt_z9Je0w4 zk1HO?>Qt)4PS$CwQGsQuN;Z*aD~~rWV)EEQ#HV>3XI61iL2I}trN=VOyxD*kT;iSg zz3pB`V+;L>&9zOhTa#Iigpk9X-B&^EyIrrO`B`I~L2oIf;i$UI(AttjP1B>Vd0Ec+ zyPj4OcCBE>=So^(&lqwRaI?$dInTXEX~fwu74%R+2*^?i26hTTwZGB^o!aIp1;7xx zhHTuxGleyG#P$0?+5@pcT9Kks2mH)!yBChYR35&yCB0|Tw)l+NOrd}}#;E9ww}lrk zmfzqlfuc9v7h;!O#WfqDB8zyEb<(_ci&KubPwXRq`8H75+m!pDl8d%paxKghv*O9? z>LWnSvgF!nuL*o0qawnH`b!ta_ZFqv091N?*D{KYG77VHAMdWp*~YFXpC`|P6|^$A zw$dvvJ%+CG!ZeMEQ~#BZY~uSN!h^xcbb*Lm(^~9+Zihu<bw_?3qXIg-4;TcnH}P_# z<A*eL=C1Z{bnvqh1SQJSp@=dv^_ic!xJHxG+jG_DLMzU*T?OI>8!*SFvOQYv@wmLb zgL`G$wy&L8u~D&Yn-$wm#kQ@AZC7mDcEz@BJE=Hd*4pQud(K|p-uv!*pXdAubGEm? z{nz^Fqm4q05_zVHeH4-z@+PL%8IhRXFg9V|e2v0@llUp(#juD7A?nch=*Wz5L((_+ z1T-JM>Y)~_5~&{q^y*f0)!y0bIgT1Gi!Mn6ue6;O^G+Sqy<`@SR<nT%{VFgR%MC>} zTXWpVbF14Sc(~;?PN8u8)QIPPh9&qe{YSHpS8RqPn>#M05N-6xxEj)~%n%%|l-K2k z#*{kb-C>hCPYYVAcwmQyh}!y816;0-1v(?K;el~nAMC1?iVJzz0Lb`peVF~z60E)w z_n*>1PT;<?S)0rJL6f|Sc!eJJ1)#VLY?ahoKNVmurS-DeJak#lFd^#v9@i>yu;>8~ zw}h<_32biUfYS=*c<`Z)5E6Ur#~-$_#o&>PFD&*zML%`Y#SH`L1R?ni(tZ_Nk3eRr zG*}KGw_#%uHuLf(^?c7at6}5f+S)SMbsGC_JxtmU=?FSqC2rJze~(mElNu?NZX5Ge zhutb~4)JBU-;{q)t-@#6T{5Z(zh$rhdV6#d)THVNSmrvq*ReU=oNewA|FEZc;%5>6 zUC@s-yASd;Yl^P7wLVp)d6qo9SW9SYLVj%aBNqLL<&T*8_+JV?nUGe<mklpkB!cci z9VAo|uZ+g@WGiMShu%k0c?C4Iz4@BFr{2PEqs5%vPnF*dBxg;J%SZepS=OhU@^!$B zx<-9}5Kf?&!5>V>IX_R8kkB|$*kffJgqUDaw4kx-AmGB;2&K3E?pGKok-qkbIY0NR z3tcr2tm*djR!(9)87x>p7rQ-{6f0FhlC%19g1KDozxwf>jVS{|1NU_sBr3vpF0?IC zKBeJp(IWV=H)8be1;B?)XdGFysx&Ahk$&6nD`|8^-Njq|tW?|j%8BY9!s>E8sxF<w zOFYJ##FwdTqOlN=Lf*HzHz662D-6U^o&!@gAEkSW0Xi=iO2=|&1hyqCGxl{y`f)6e zN^%?V?y$sMaz-D#b*9D>&ukQJ?+d*<D~=<$mYo2KewjCHAKu;0)Y@wX?qPr8cugSt zD9E?3f!ofQ%{?gAU%J+p5vd?NOF`+m6Pn1Z?S|}ZA}`t;Sy3@_fR!KSHCXOVVQu`n z{5#r*-ibl@yH&>`q5?;4<fC`AG|<UPTBxhZvvZU{krLrJCI}<CPD+8QKW>>HNtN;i zj1{OLT(G#j&*_8p6`s=K3bPMaugx_^2nviLL)SZcRc-Ha;V%V_IhB=ED(Oj!XtcX? z@kQk-7;|vpjE-KXpTE_YA^VbtF~u%%fmjY<>>EpK4T*EzGUaJo5|3Ni`G&b4%r#4K zp`y^5>a|j7cvgja3SRk5#yk<E&XPE&DM{+6x7yYbX;<p>rMmhm*PpG>{j`)VY{=}r zP(GWN@)Kc#Z=lOUa^L@r%5p=MSJCq(e*=w}FtPz$Hc?2}Ct?k0pB=DM)V42$=gFmq zpxT|?F#GhOWq|Oc@EzNTQ66ZHa<nbmW}h4LvVzN-pF{~O$n_(6n2N!kNSRrfX(=Fk z1V_1wze3QA-Yo?$xlCc;cPr%g1)oD{+c7gU?D^w5X#3Qv#MpDr{2UU^VL_t&RwBlS z^ZJ~$9wbD$KDM-Uim&dBYJSdoVrxekxrv-28tSuBo&~OSkOh5ky67~J!AGRzA^t1N zWFuQNK)@oJJ)w>Ys|}Un*IevGQ#uVQjxg|;4dsX|!8?$rp;lc3VoR1G*Y`}Vh>V$f zG*s;RTP8P?g)QUjC+=-F)yf2x<^A}G`tm)e5&+*(_IR2wUNDl#sk(tT2e8~<n8!X3 zl{yDsKDteedZ)#SQk&-GB@XU-Z-tR2E;rzXI0N8?!pU8Fe@nd1IUC{{>qHWwcbj?C zn+7=fHk-k92sA4bG3OWB>-x0$D?@z{Z&3Szz5ZmF?fuGSm<i-YS4fGsAk8iF>iC>| zRnkr;N5fR^4fyzV?jA+fr$!o|7uH73;X}}s@s-Kqg{{0?W%_HEz5d8CiBQ-)Ey;K% zoI9%1Ui5Fy!PmszE*TP2gSK#mLSt~gNgsCHZmd~BVmmiVN%yU&RBUGGl4Jw9ppQKo zOCypVkeZ?!$eOPw7ZWQQ7Y~MTeQe*T)G$QtyKTt!p=fA^PDTaeeIM>%!N2}yBy@q2 zThNl1(i{6NeuSysWluTc@`Hzj{_E89AwdHy<vgzEcD~$V<qhn0<*1l|PMBA1r`q8_ zRPe81h-N?p!SE6N^6n7;PibvP-{t*fa>W8H3o23!yaA)?am<yx%Zw&#`$z(wNT+AV zi>1U$ClKlGPC-k~*yy9Y!l%xxH~)ifJ?N|n(aD)lR{8YKfdr^BQZmD-kMAHVy|SA2 zK|~L|9%u`YQO4b>9Md)%rhJ2Rc*i@VkBO_3A3n5jFM}4}vV@;^5Xk`GdVsd>u+M0* zM)5<AKX^59eKTHHNi;4v0uQZdGFMqj?&Zm$;Ip}S0XG!?i6>aW`@Y{=EaoQgjjbq< zwiue~9WAmO&)pn@CEAhpOVV2P2s*|?OR;;G_SR=FHw`Ee{j-<r!e6)_feIf>B_Gbh zS$Y^H#NwS`8MHrqLCSN+wjLw>a%Ms#A*HEvJ}SrQji@);q7SgUt*}7qFzUhTTY?Lo zGXuJlfYZBloqYFiExR@~nV`2b{w7aZJ&3P|PgF}$#EIKz7*bsaS8>ycl3ckTi{Nx? zKvYnS9STcC)Ze+2r=F<c6as$cS|6+Y1A<cEI=VI+i`4U8%b0c|o_Acd#+yfvXk-S= zliv&Zm5V4uY2{>hE=2<6>-}_LD44r{yqnx+Q`#`e=Z^xZA=oDu@V4bPRgG0(^<ynR zA0ew;6i9{!CS#NJd6{qdvHxx#rZY6Zis&bZwro@XeEUj<!pY)G)t$-5wUC&85iNA8 zfEH>4`2`rpLzxf4cf;g#i@@Y=0EMsbn~>|5SOr5&oj0K#%gpA|ZN=n+Z=<o!s>vtr z-+>oJ#uANm@<z$~KMZ_k_>n)`%n2N-Eg;Ku^tq?w<V{d6gm`k8?xQ@oqkN3U^VSuq zV+fMou9Y+eoewHCFmP~jVt4P1+-<X5b%kD&$R_VZ*3cxL^&`j1E-65ehKnc$?CSCE zQI}<4@s?MH7~j%YhJd%9cwJaT6@(i5g9hxV6PTYbrH^Uqd=p!wFqRHT1o)e~Xdf!V zYj~w|Vx7PUldBulEHO!dG-p+)lVYRygcHZZ8G6>PBRYZed3@bdUcuLmaH2m;A7moL zYyz?T_U&D`5tN9fvD?S6?X>m)9(($zyV(gnSQ`CchF?o#0oJ^Tqq5gOhi?MDZT<WT z57zC6>LTg|JOo|FA|3?xosx{gbN)(C2e0DU!!%B$k(%20RlBe*P5A`E-74C615R6L zTin|-m86$dNIT~4gqjj%Q7r}m0k$MvMG2zx-Xz25#9kC6@DM0Ie50eA2UBqRZ<Tb7 z)BAE-B`cD1d9@ltz8!*Yefy0Q_6Urur1BYdkHSn&^@d>IV+@a3*n8|6{R8jRFTqr5 zx^F9oD2JK*OA%i$)=r{@*~L+SMYa{!0!WfVjcGyv;2lEQGB)z{zEh!?Hr%UU=_2Uj z5eEtk4~olvk+geQ6PltL^W$2O@8;}N3|}pM#iX|A8{MWeLYYl&kx>KQ%;8cT?<Gg* z*z)%*9T!RST+bsH-_4?`AmL>ARj6~SVx_fM$HUS(174;o!D<eiLg8c>!>~I)`nGBB z$OxbAE|@<e{awcVL%a|#-<2$nYU^>5jy=e{@k{6_>%duwjo};XLJWM@R76g@p)A4% zCxKC?Y(e^(c>UI$byL=`Q&My9vKB026=Ei;#%>?UmtzM=GLtl<xT7tw+zDwF?otjX z89<M(TEP-&OG&9uFfhD3RL<u}*U7ET!S{~TTt($>q(!K5;XP7^o<8A$Hrr@fj-|d% zsg~=?y!1nyeK)Qju|%i1GS7;04uEecPp%9I(4lQdeP3J2OMA9{YATLFD1rof(nbmw zs&zfCP+a?7r9}LYp&S~*bfc&y*k7tv*4pO=`=JcZko)4ByxbCt{rQ?}s#03?Q5rfR z%d02Nz)dbS$pR)ZOk7fnQs1?Eng>EwAf5Ay>`5R1G;ib!FJrzjmT1xw8eChxc&vql zZT^Y?iTSMh9840#a#O4tmliE}0)S!~PA{t%C0KVDxD=lMObPy{+QE>*{!e-;L6e{$ zZEEDz=5`y)6pt;*T=u90h<K6LXZ-DuDUCwI=Xw)9&QTool01>$(M#Gt?xDWQ$rrAA zDYieP3*mpIx>T)Zte!ot8a#X$*e9lj;S0h46)FNZEE{ebXF-GW3u$LyLwxW{qQe%u zLnxaMDP4_(II?Y)Ojoo-epEj6Q`BCkxbW6Jm*d{vN}rBt>|G@#hq#5cd(Wqd`vE1P zAzh4Pax5J&W7$sPPP>>)TXdw|ur@LJKrIg1;%>*X3TFCSZqf9u>R9%neqre00i!VO z;)$TY21+|#Va4%U(3;G2Nfx5P@9+f$i$e!Zchr#BX$`CO9$9lXDfZi)Pwe~St*H^b zEy^z?cAgnY5T|P-iU)gbh2)HoZN*0w$<#xZ+niiIp0{W?_nMa5J{}nce{5vdE~EY) zjP7SV8E1ma=X<@QI`oapBOhYC^KSCxcTIoT)gBi;oe=5_iR=af`m#W9Kri5Jr?-dZ z+q^Vu3eb0F7Y<mEd4)9ZMHHBL@<rMSs#!+2U8PeJYqinKUt!T<0qIa1r$5_j49$@Z z*Q?fXj@_x+cr7;6)y@2v+uF&!9(Wr?&7b(@j6hd~M*9pXoT>(1DkV%Vu;7-D%_y$J z$!Z>j0>i_S5oF06m&k#e2t)^8B<@6`9yzA2NNG?DJ)E|QhZ-A@YTD|IWh$$jNP*S5 z7^l*0C@Lvg!AE+>IW<4J5A${d+t9vdxcC|nQM28eG|{v-g`+)jn=PGJSi$BpmhAXG z`2e+|GaX?~((XG*#lPa*dup?<aj0T`=9c$$(nFkJT=U0+`t((A02g`}XLNgL3lO9e z=%t-EQ@rV5r2LB6rSrY*Ft>~8VD1G5rG`~CPFZS%yNhCJZukk?SjIkAfF7a+@i<z| zxf)n%(>odS6#<SOCrVVMZ1vd|Bo`G3Rpih!az2-flsgACkl*h_QN*Iy&xr}}OJOZK zk(BoUG0ZQKljcY6=5XlYH&$J@<Gng-XxEjvIm+4UU_*i{$(!5u84O~Q3M;7{B3%YC zw8{rhG8(EIP-<md<2Z*PQ$s#J;jAYZk`}mA?#QYZdcfUk#NHmhOz*21YJFecijO~n zB*8$m+I=yNT=?g?$rgtPexTMMONO2i4DoBk_=-;v{1(^kBEt&l5KqC{fRVUo0uH;R zX{SD~@j#u!78^+X^6@KgCYL$e%<BWeqa|jlg(>Z#`t~kprL^dDy(yO!V69ay7iQev zv@atQXtevyO-61XYXYOHzRPFT+#$kTPWS=4mICZMOhC|-*?~uTCnxrk_Hh3Rqy2h9 z!%i3vAaoa<)C!d!=#Dph;T~r609dh!Nw=6ffRQfqFm(~)HzvB}yLGl)=r5Oq?eWZ3 zNJ+RF5tTc;Ktv|<COxI<;#2KXRj|lYsc5orAz$B*-IhyS2Ca5gi_d$FK*fNP(f^|* zYQ0j8Kz_2Yeyn_4@?@Yfp<wPE3V*+7Ogz<E0M>1If=&eozgt{)E?EDBB}iB#8i50S zuK%-cJn`DYKGkm07X=NZVU&!Wu&u2w2VVqO!Y-!78bSp&+wPk(zpr|W?voue?U^ab z{np&YGKa@-*71$u5j*>AgZ|a!0oH*u{pTu_A~<CKT!lKi7W9o%UuN!X!y$Du-b88; z>MEOl*c&=^z!z(`u)(tGiCuh7ewegAr7$Tsv=q!4)?%qV*)m;OHQW5y9M;O0TSCtE zadC4}4K}svvM&zSiMu$|<J_IGSbDfxIimiqk;p9`b7-fcmCI-{{A+M_X57|N$N(-z zkDmD0(<K}pw5e7>lE0XZn4BYNCrzO>oG#I<E2|wBJccsYMw!HH5Vx@$ZI72~jWIv^ zRNU~1ZX$1H-@fCU0vx=*D@C&4U9Uf=q0sdUctdTVrNo{?A<5k^P`jAI+MYIfC@pW{ z_BmI(=s}fhu<AEwybQfO>c!(_dh?e19hp&s@ut8&RANT*Q!W?T$lp8)-RtreLs+*r z!q{M9E_3!i{wYMYaO$x>o+bq7esTmos;`qtpEr~AIrEB0Nf*x9Kmx;xH}lz0IL%#5 zq09&kPcqiV1)z^kR`6_YwSIiDN4cRpPqur|dv0g;hH4F|WxPEhnmI0LWBjgukUgJ| z+e8%QE3=L@y;O$jxCif#(5|LXv#3<lbbVm2vV5{ym}D2Ft|#Mh)EL|6RW{I3<92&k zdiG0lT)*qwcE7}$G5T)bzrj(CU6f6aj!*}N{C%!UO4g7l__UL~HkkQR5z+e~c+r)m zFZ5hG0K}y$x;|C$gGahcm*82e0?+g+Mymr<R+71zc3uW=COcKLvRH{;L#0p30vz$= zxt+q(L`eijD*haa-V*iDR@TF-vs+tJIS^V{n;Y6()UnbLO`DYfSG#BY_S5P>nSfH* ze~bO2ae{!Vr{M9g=Qjr!JLq7}luFep+j`wAm8QyzUkY+VQzQIUj57rp@Wy#>^?X_M zPt-b+W}uAE`dVdp<l!N-PceTIM}DtA_k^$;_ZTzW7=1<Rn<D?^myYM!^z!3nQ9D&_ zUvDtP>vya`T=^&QNCZcG|AKhKF|k==<fv^Q@Uw@D+9db>N~l4>xYiKHKKd=yr^k<% z2T+F2H3n`ph<l-!{jXr`J>TfCj~(TsOh8L~sJ?b}I}F@&woS1;+we!7zH!Og?lHWx z<=}%iP~TlU>U1`T`o&0ma~#aw9q{Ks){njcY}Rx3_CG7}yqUrEk_ro#x-u|}oiASX zm6Ja$f<?dGRt$TWUW!W&6r$JL3*>q-yqjBfV6Vm_ZMi#U&U&~Gb8A;$RJ2B>hD{4x ztx6B+$X8V$v2x*B^-;_htnba7C$_Cq3(^)h?0u#)$|y*O1JgIKSR(04h+2^Vbv*1? z&TBMrR#9oeW2-SOFuAy9jBT#(4+I!8o0tCI_`YsfUzGMfZ#L2H>8!fM9}p!WBL+HW zOuMfmRP@Q2j-Xf5NcqHEZ1v*2h+gGLJlrN14gJ23z-PoM!eRC5N2yAS`ylU)WoD=V z1Hm_2b$3xOwxK;Q85H_TjYVJ{%|-j+m9_-bWOra{J&Z6)WhW(Uz7(+$(pBQAhDO@i zK9yiX6z?rXhvc>DyyRiZWR-N)##p2Cy~RwT96LxbE4-L`WhiK+y}t}x->>2EyAbUJ zLgNaS$xU))eMajNgP`V@HPbig72nvWt*|FQl~j64sAa($bY$eS`zBea$}$6=Pj1rz zrLzAPx5vsu%COXs+xy>c{4<n#W|Ckzr^Nw3l$22(qZ-a)@jct6)y5Ib`&s}mfEeWm zh>HaRjJ$Tg_KEs#q!TA&L0MJndug4tFz%?3te_3CxTdTfT2h})oTiHi1s8Y-vc_$; zu}^5P1!5Gp{-pL;>|ao;-3R`6o|Yl{^t2F$r=x2j#ZAV?2c6O9u=%ZgarxIJVOK59 zM~yu5u}$qs%FjvH$qFSjb3B0qRT_G|*U*8T;aMG!Bgr<3A77I(OH=7C{L9LzlT~N! zt@k(=*7u~fD_2b{FOIMttVVKsV$WuvF*rQyXDGHd!u1zXb45G*>Tb5Ktt*V41ye4f zTztTsB__b#(;=@kNrHwQ6pc(hlZAeQ?>IihZh$h0_CYCP*CF&(PDfcW@2x)Iz}=9T z+dZuJcIfK7%hTl5rR+D*Hj&3m7CbX24ubSD;iNbPFA$depzLoRR!LWBA$=dXWG7Xu zpE=)A{N~n9`=cNnH$d@qq*9|-r-|)mmL_kwJ`r|q%k4R|laV)pjeBiex@T-TywF4M z>gu<M_kk}Ku4?5tYk2qB>?qCxQkqLWwY>UM3q48%C9pDP%@f|CplGP7tOsmU<O{Br zrVJ`bFdovG%e>@KE0jgn6;Wb-NiYLSR{FTPf0w3(R%la9GjvL7fB=8-yd>Grk_YNn zw0!?Y6|H!|-3<ZpTr{W)<a~oUPV522U++h+pBL9%YeTd=v`VdD>z<@k)n(Q#(Q_&R zCd=N6&e;aZkg7P?60;(p{2Jt5f?xbHG8>P#mFF#OKdDUxl*ayB)c)1BGF56c<liln zVFOfYy!|lSYPUw*LgUR5<CF*_Gq|^?l2_!&Q9Hi5t%L+(1HV<x1X2t`ac8#gig*P= z#*p>nRscGx34$4CE0|$qr+V!$5P>gu0`ZHwKbZv~IFb7o%o<q^{hetQf(7Fm4ITp> z4?Fvzrb)S^0vk68EN?yAQj%=dy<LbBB2HcMvdj<79L2Xiw*s1(;^*#-)|F_5zZx9Q zCqBZPAaW7<V**()sALyvg*B?RGvzaTg4i8$x@b;MPxL$q2z6?D%}PZn@PvLLc86W! zk`fzSyrf<MNhHL(^C%?SU5^re2`MHY@DupS7%TxIZu?F;X{Oa)q%E5SQ>f=W*B=xS zZ&pOQS@{EFuPu^i&_fDdE01qqPJjP0i4f-xOdno9F>PhSPH{5i((t$o?r(y7Qw*CV z<tt$<bO}mHl@$7@eYh%kNTNw<%Lny}3^&w5y)}e3y&20lB}VzJs^=*zO%^7nd<(fE zT(v^}3k2qWLE4PVBSzL0VaT8Q`8@%w4jq&KgmlX4Fas8sM2qK)b%O-8IY+VDGPacc zt_`PCVk5MF;ZoSD^L~jqX3sTuG-7^hv*H_doYe_X3emwQrG+`a=@CzUq;1X4@UK$Q z4rfoNH4#rk2f9EhFr4>6uUl#B&->R%J-4FDLs$Ry4+vU*Eu^X-vu=cuTLfxi@A{<F zFglsAQ#Y|N0?MyZ?llM$l#9n|wzsTw>C;_*xOMiQP-@i-+gDV=Tw}}KWTggy>||km zR~m{Llmv2hljX)gQL1|^36^1+@6%aI8TKlw{va0fP3!pPBfgPR)91}+i1G!*#R4H> zdV^ovL|qrsiL;KNsI1Aouxh*?S5!#$mkqJF#^g2HS3aAl)!!l%T)_cfS3id|3GsS7 z=7>>TeR7IGaH{q%IQ<71SV&kU&nRzf;P>sLu+fB}xCiCLqtLl$e+RKPY)g+y2fg?F zgPy%Q`p$*u(V-T=TpA&c1YSvS!$-Sx)HUdP*tO%UnNZ!tbmHY*PvW~WXN{RR<Cx+2 zofnJeTcw&CO#3#YpHwVel8(Y6@lCR;W?Qy1fj=SY7vadIPRU0t=`JKk9!4fTIczJE z&hUEu*SVDyjt)|i?%z*5g}*~y7nA!hN_9{Y`RJBl2G_qKDG4|ou5fz%q%A}H*%m)) zdT#7`E?F@`Jahb`i^Q&nHe!%e%S2iK!1`W)^&z9;lsn!7&m|q6VnrS7nj(vP1G#gi zKXi(CC-IpTA2#D}%$f}fS+V1K<=R9<Z%^!ErIa*tq%qilN6_<4I-0zjBG&A?@79>M z!;N#-tm{!UxmErV2;u>1z1b}CWq1q_SSF+e3#Ig<?cpz6P(SJnBeg@mM;p0kwl$Tx zQ&~OPmnJ(Psw28DOsU)tG%TgLAy>Dg6blh!Mi7jFxM%5K0Nlm6jEt6<xoAyk6ncgX zIUZa6+%AMz=MQMqxcs=k_9qCO=EvB^tnw!GJLR7*^n_t<p}G}51Wk?C8Cbzny)yp5 z2w<k($b+sD1UO+^JZh;7{%O`Slz)#|<CtF6*Ix&r4^Iv-*D%0bC}gVTs0q{!r9r(^ zNnJg#TFbUZ+<n6h5W|!R1rwR51!Gp^$k5tZ+~-09QGoZwV}XRdKwMdEyF6ZjfT6ED z(JDS0O9;PG%ob9?$d2^bBSL)tGYvoxoaz1xV*gQwg<>Pjn=GPaGsg}F$ZBCZ%+{dz znyE>_j$_3tEnFB6;8h_e%gY<KrdwzU|71W{<q9*-S0npDb+Y~=dl1<IyEnN*DG>9E zk4fETmKK)EbGe(Q-*%3C6^Yi}ah+_r(Ed%GzM9~ADH>P&K0}uvTzxE4ooYy6aW6$* z*w^z@sJyGgE9Zf&v`{F`X9B`llAilAp1g<aIM=t}h=mBl)3)R0?SZs}=Q5p@&#Lf@ zCM%D@e~gf7aG&<7g*fI))BZe~QN{iWG3IQv;NgZcx?P64Bt%k#QYjT&C-L%?pCKbD z^uy?U+u@vAgOE)O>J0}~m6PUR2z7ctgTHc!>Y}puF|1amT(br754{es{};VBW&9Vt z(!Kpxy`~F*Ef1GCl}0dLA|>?mCvTs{mU5r9;q+L$f4APP^zM#4u@EO1x)$MVsiK8t zeykO5Dl=c<8&5q1mUaNsYCNxgxZ_-<*>*P4SGL@1Aq~-_YF3Diwvo|3HNQnI#|bvk z*88#224){jZk08n-#X)bs@o513vCa1&t?uL25Os^7piXBT})*JKcp+CShujwP1#xz z^`~9SRR29v|7YzAAUHSu7p(rH<O+J%0#7fMN7gup_ro%~yw$QT^Z7O4gU77$BvzdS z=T(lW5TlS}XAyKBPw!ABz$amZ&RUmMw;|f8gOGHOCb=B5>HNkhqkC@r$h;^wAQY)* z^ESr5;3j-Yl3>dDOy*k_xjp1SV=?$XV_WQIlnUWy2_dto*^Y0HH^bx#rzQ()SfmAH zs4WYJq<BW0BFoy@Q5jpm9X%8&NaA`c4lmPYgq8-JVLRf@VdeHMRCjvIO&?bdl8IyM zW^D6Tyoi20t<k+6#E6rAG0?m?zI9QD{Dv)eky*iNU!mu%tHO&U$_3BlEoF-hq}SSb zzRs%XPw;cT7KU_!gU6xkr=_R^b89%`F>Q7t7zCy@-u8Q*n1nOtj->z00N%Nkz@lmP zx>V>&V5KY;jRe4!dvmSxA{Z{NUv|2-EtiSZ01E~yCyt;86-^|KuN5Rx93d4@ONNs5 z4Ae^Dp(-VUX27f#>98WD-?=+vYg+I-h;eFb&r<Pg^N^$wnpJHJh;R#rC6z>gLgNkk zRfl&*2%Kz@R!#pKqk^{{f~LkRkEp?k?-<`AdNEOL<O3ITd|IPeUTOc<UZn!cQvN+i z{|9vn_)TzO`!5jv{|~CI!6LuBvougkmF&H56S>taoEaCHq-Q=v9fv#uAF2$PcV+su zo1H40{Dxbi$rLwb5V)rBvB;^ecgA0!UCf(q!7J7_vLg%R+>l&<gP4s__mbSa&ipI@ zi!2kHCMLUy<UJb_GVv&?T-?(yDk}#+&E$9?;&K<c&bd{zDt;%1DCksbe#lxKaoTqE zkuXxWl2U@gV0E`j-Zh!dNNJVb&-hytMcWvgsiAOcAIjXSlP9ieD@DYx{8LSux{3wi zvGEXQWusv@dQhq)W4q8eZkqS3<If(d5GCtC*?!aE;ox1}sNT)k{yq-srL4M>up~sR zQZpproN)0RS<es5Baio%FEW~H4IVfD>*fF>{x~~LTjWMn-RoL1)Bp;gG}4sgb|NSm zsWS5c%jT;y4&r}?(*ca|JVtmz#{_Dj{EB`Clrp*YM6frrYr}XOxu5mEX)F_9X*k?% zR;zlO1DSDf%io=)!Q!+@{+B(i@&Ch~;dNer*pm$P@5prc`G-BlLH?;dSN}aQ|3~c! zI3>7r{TFEdgKYW~Fd`?SjayW-^E6K$7(hbt7P|`@^dti1HQa+|;+gfu*}TUq&81DG zv$HquVH0Mg6MLUUU)*k-Idn%7M*FC*k!qR7poNYZIY-oCKMxeaAYkO8mBSBjD`@25 z$fW;!b8%5hc}K5hqhxBDj@Wg!Fs;IJaDC=AUK(xyqb^;-ez)SoFO~;|ePi2u)1+cN zvxlr_PPBXA)Lm^#q&~p{Bs0e@skr8?WKx4V+Pp7ska{TkYvnyMG}!SC#3_ngzl6uX zm}Wg_Z=ijf>9=!H3{yQi@?mw<7?1gE=!f0Yh+}T=zj_+F)tl2fu&{wM8PnEZ2SH$5 zM0|{YVdbvUR-r-jT`o%EDkovRWLe5>xcy(AG(AD^ZL~MnGS7o)>&!CIlWnw&Et`gB zIA@Wduf-?|tfn58DE1N!1KVMwn=~uxkCSfCx78e*BSeA~q4?92Lwui}tXers#oM_5 zPfr$({D&uh;X?l5Nu|!eqme)QPfun&{4-CM<NSL#{!e<+i{Q#ffcIIS(i00$7W_G; z@%DOlB<pk5q!%x85)M}JLxA+dVeNGmg*v70Gi>!YYf@7Lo7!7a;0(-TgGj}=s%Q2W zzZzUNJp#-k2J?p~x}}*9`Wiu*QVGDoi%}F&KpOCclYgvpTSeLv`SI?Hu`#~2O)yq& z!+~RKw=%S^f4$am%m}9w>hg&3;oEtFr0-Jf71C7~X^LMhs1f>|Zt3ggf_oML)6P5_ z1i|HXcrsZoxo5;regD?}TKep=ICd6zF}5f%N?q)^27CS4g$x8E=cGuP+t0%!^<Zpe z3DYTayn|V$wce}BTf}NCM(7#<y>>CmqBOX?m5{&4Hs=>HPw<CIyyMpQMpj4Pvh6dH zzGh6*A?jQ0PR*4GeDXLZ%m)jd-mv6LOra(fZF0XDc)8csmKwp}qupMac*H@%z9h6s zx{USC$ZwDe$)g@oJDFC})8+lP0`nz?47&B2wN+ShjJ}}wyU|fZZq8suEXy12fNeR> zy(^#3u$KTR*ZC_S@B+%wedhP7y_{(<GCyA!dyQ1p_6b_}Py?7hlzxYZeOGK1kk-vs z13f2DL?-5#Fa-4$_2WniWx;D?SeUhBQ4V%%xB!PlN2E9P-c}OA+ycs=7K06=)rMxh zE3=V?f(PeSMY{(7etA=6K-|ADT#4R~(L$i>ZT&{SiEu9k1O#9vxDNRwLk%LvA;-{X zgwL*(<0zV<h~cWBH(Y`dyc;IIosURe;2GKOqQyIzU~hI4-1X;uQ#E_ZyCrg<?*0-% zX|A2(ht2YAgYoSJ=aqTh7oZY?>nQuV1yD)oIg{IkyMf8&YG4Oz0ygQ^NMaFRpR^c9 zn+gZ8#WXq2-oPAkFnhkr7?|7_=sS2_dj>?_`=R46-%tt%<<7Y1Eqt#ZJs*6$h5Le? z^Qh#(sNnlgP#w@0SQSTe1%`Lbm>Ja{Lt&~KL$eR+M!(&!bIO-~+sX9UsSV6DRMjf1 z{U|{Z8}~LnW)dT|CqdTk<|q6SP#*T<hb|{bv110lT`~_k7=0@iNviXVPO#9RsF5vX zC^4Ciau-+h3`Y5xqZS;kM{uOic|NRXO`92pn>7KtA=mxZXFUY~<vAf;pm>u<l8v(m z)UFw)r+^I;)L8eLaWtfR?g;gQ$g>-?LD?PgV2t?>UZEdz%ZH`x=f!gLWy0w7!P*_A zpHu(@2ySBj?%zK~Gkq7Zyg+%8kKtMMbZGPZR@2YKA06VIKNB7LzJlEx``yYzH?bs} zLG!Xro(zU|(|g{DO|BP|gWN!m@@uBakFb%X3djz$0!u<~$8Wx|5PBShjk$%8VvtRQ z=8809LE@<C0A;!<iapomf>|{!(8D7)kcju8?M-s0IeW}gU`1P&WXnwU{F={6YL8eD z_tclD*;cEhsajCH^yADIh^iIZBL|&3z+WLfRtMtnEM_=Iek;ch%vg{Ak`tu5DvpdU zmZ_rSs2pK1QTDz(3S1=Gl{A(Me*JKmYXsypgx8B2ppb!LdvM<go8r%2L-}V*cvyg4 z6T%A2FFfge=VYCJg&GK_-@_C|lPIvT@?i@Yp|lX<(}H8TSzrZjjA6MMIL|lQZw}Cl zxm^7G7lA|p<-32Wg?V+yT1Jgok$(h9d6))OV$3f0@yr1HB&b0(ypEDC8PrnQzSB3I zNL7lKoW9UE1ZQ@H&w}g_+$R6;U3+)Ie=+|MvWsf?rsM`7_G>xkvP)vKO}6IiJ0XY` z!84igdJv&<E6T<po=2@J{+>qEp->in;$tiC>YXt`#vl~IJ<GCW@<>b`14{RnjKsu? zw(KB;^F+1O+w9#VzmqGOY+6LgVq{s0zcu#6{#Z+`UC*Wq{n+jpB#gUP(W0vc{L*|x ziMyg<sE1vq-$$goK+Zcd=pLUe5_wY*sD}my4NnOSglu-TtfI1Bu{#O7w-#>-1?qa& zLvKDnhNl+I3x3qBj3Rq_)<p5}gD*MdT62U}^Ad^)^^1WEmZgCyidwyto6M`$4F~CY zgZIn4g9L-O)Q@K0M{c5qICS;Y_sBv%1AehH8fAf=UcMagX;~}0F!VYJCcTk`3>qr$ zIpOkvOcz7pU>{eHde-Hav`I%I1Of1l{&_Yv%l<e%a^`j6q)XGx*$^T>9-N8wIkeyJ z+$6NkCT0y1>~PfP=%Q;6gV)I~jfGMEh|;kVTogNZYqzmU2V<oN1?LX9d_M(l$CG7U ztfW9FKA!4+)!cfI1!m$b4~TwL(^b+4FOQW?RFTg)uZPNea2K1mQvunAH`&h;<=xUQ zN>ejHJ5)1|78q04#H>+OWnvF&%=F5A0wV#aAo)9BAV8|`L6tfJ`-ed?{{RMcrgk<` zW1jYNq@k&n19(0K8c`?x3(fiFL&c;`=X+<y;fG7ltw{DKGr<IR+5dnUwB}#SwIz2I zFAW%--aEnlGk9sQO|10bs@6Xlkyqrs1#w%>wQlCO=|hPu>@~f4SraI6=^qh*0muE> z<c&T4Y>Mkd*k5?NA*{$UsJOH-FuB!mt*kx|`tL>{TjOXs!{x>RV4jd(g$)F!HX2eF zDH9K#Cq3zfwlXnoRO|Bg9{Tv}+~@tqd_j`ZyQO&yM*I0EqfX}N<-J@!Gxb^>ZTxbJ z{28<)X^QKS0(-!5)6WmyGZ9Pn4Mo!IbNw+yAa{Gt29^88lQ5b5?Tb(zeh54lv?Xn2 zzOrzj$XuuP>j$GM>HOG;M;8(K{>Z;oDmv{r;CWfGBVdzq-#y07dE;!el^Sb83Laz^ zjkvWZTaJ84?DZ;k`0d*{pTZZ=@sW7RzSjU#(42x|QxC%#oTlo##^8ZG?{R32b!g&h zgK=@r>5o?>_b!Z5TjZXvH3;%x6+QL?A}ud_-T>o|z9xkXNlCl0p$S<5pQQkj0aTd$ z_reCKb<aofv76QB^>k$?H7t*=5O3F-%WO?0XiK2d+aD~wX!e}sdXWz;R?W?61);Z_ zH;zM>cWEctQzSrr7B`gOzWBcy+KhOU5u#yJSISq<sVo~MxixggOQEZ1_lKP<;ymHh zT3z}{1iKP4EB6y_masqWAlJMyRDpdl@h+F?x~d!W4I?m2E>V0WC*9{eX0@OvPM4{a zKoSyAxLdU-=w-GI`%G3EzMu1Zey1ly3ZhcP7Lz}E5vM8puZ9wYY#mz5dEXYfJHzHN z941%}?kY7GKUrg}T|!g}64#oN>`WE<3TZ&nVbwLim<)eU9Pm*-p3}V90l_DXo946= z76p+VBHCqX>KQ^u?injvwIQGglzqe69Kbe3cO``mqoAMQK^|&nYXJ)W@@84r|J~_x z(~mvmN@*HgVDt-<KTjM(JjTtcH|=B-1LD9m_86i3^*#^O#37D}nxmx8x<d*>gCeSj zWA&@o0Cb8HdiBxc!vW<>7#<b8NPi}>=0(?XJNjP#jxgs?$+r2r{taZ&aF@xPnF|=i zS&qm1LuUM=ke0<SwZr(=@jYWLbwXls#3Z{@t&UP}%|2f2&+_sEDoXxac`x`DODA~< z?+sFENlx6*8zixo_voUs`r_f3%HF*~UP|gFmF!mKvh`HL7(Va4dnkWabdunq`X4OU zKNMdd|G8Z2Ul4hB@P$8@>&K;x11GMwRZ{BrhLNlZpvZgV02p0Euysz5DiKt=v@;y5 zvLPjFh^}1IP7$H>Mpinx-9k+~QB~__K~eqHVxJk1CK->fG$UmvwMdu%vfmB>Z)E2% zEuY}IqagTWW@W-xJCaDCoS*C`WZe#oKeW|U1t4h&o|kf-4!mn*uWnk@9zbTcs_3Gh zW7Gh`6}3MdOJ<lwfQd6cq@FxSkMXeh5$vNuT=a-dx8o+pt6DtaWjUltH@2y}5fWVQ z`Boe3GrZpD_~wef)P}6!-Ir9I8rv$gEuheX{+!(i6xcogd}u*~yC#F)E^Rg|75r`Y z4U+p}DEv$KN<{jC*TL<!GyUIu?mSPm2b4YQgsRa#@ig3r*n=B&bQ`HG`|2v8Wjiq~ zJ6){InAmu`s3UQ~<zI`UNY8-Wd1f1W%m5UuF*8~hH(~vfUC{*TNXOj?V#&83bEss; z>TH#$`xI06tBrja$eHFeT;ACMnH6mxGipr^y(3eJMH|J3U3j&{JZXhZ_7)cyb9vMM z8943w%cPV64b33YR|;N8zE3V>0Triz;bKAHFcxKFRu&vx@;h>)D%}_cM+qk-7YWp$ z;Z7Rx=c-@vLe6ZNn??ef(Pae2^f+`Y-N$2QkLAto{iI}#;CJ&spyUs!|1Ai}ryahN zd;SpwL<dvq0J5tMM|*^#pr2RUNEOA<bo*Np4veScxLNZdc6n`wTc#7Y>7oTCJEbtI z^y3oND|*-|1LD{LL)QZEJc4pD1SZF)o#cy$PDh_FQn6{NkLEF`y3l~FKC<WiOrMl{ z+soi11o9S!lrz2Cflxz*>m849F6huDBVhm7ncs__Q!-4u(Fz{~H`Qpr#O&Mn*i^d$ zMK2x5uuEeO9U<w9z?^D??ob`62Vn4J)GB{z;3*W9+DqYbhPFQzEy_gQoU(UEUEmZ? zL((;H`B}`y-&LN=9v>jJOeJ;;O4R}E-HfUu>y82)ZG6TD*6h<Np9ZH=e{5b-h#oRS zK`|nvj<?*(WeuAHW9=gS5yC8zidlGyz0Jr9iXwP*vwp5}E-1iGG`)6_VBWB~+eLU9 z<ea-ci<~=95aJE5>_Ttp!(TjcVGvMbJ>uFyEx2dYQb)I5ve9qVVa$=JGDg<cSagVQ z^SZpPt2%h-GzoXMOZ2e~y-479cAz{soREUEbwkJ6sq177TD16yj9H5C(@#qqRP?}> zB}}84I#jhGYm~)FIKzr#J@QXvBmk8(e?jK&RI*>c`ErfV8nv9cTi^hmw~S`rsLg}6 zbb+!Y?KJC!mZ2p`4qc5}{ijnNyZ;F-e~kbRT$B|aQnf#$XSg8Kvjf+)>pGQfmG%ul zRJE?VwOL!i?y%Hr8kCiMhNA~Q)&se#6Qc_1I9Av+V5k7Lw-t<n@qk`bBtXb01CK1# zE4czlOc|;)f=0!j?HJVOr%U}NVgUi^)J_a=0dU5$2Xg6$m}7n4GJ8w2Pf_yH^oKG@ zd?~7aOZI#yO!|;FG%8%g6N`k0<On~Pab__-iz!YS4rzqwC_k)?WO7$X8c6zIO(>Kc zHcQfjP|9h$iX~<8>2xkUr21c~$YXH6N=(m3_<|~SXk2W4pXWJJqWwl%4P>zj*|#0u zw~)cSpY6_<pg5bmB1up*v;bSIjFpLe34-sjrlshje3yw0McK5o-!=}7{kJ3$SwC-a zIp`(4@OqB!X@X!pDzC#6K3BP;DsBdXP^dW|=oTO=9s=gLAt<4gY~iXLXw_lOk*It$ z@eEF1CB+n4S7$JiE12wekeo>j-i6zO#AZ_?f;CIY$a*a2)^LlizHAifsMVHKteWTe zft1Zqk@3iz&C!KGeK){3vu4l07=M-U35YbH(&jIK{GT`_!!*1!<Q)ej_VKD)GxHD} z3G0sk;**gjf~TQ>!bmQ1)@N(+pGF}i`ZS8ffT`m`&BsU9JwO7*wH@d7P2kwaVbNMD zR#!ex#?*l&gVYLa#q}CNY(tp0^CXkTYCRL%xxG3aC4qYXp)FU9A4-~cxW;snE0`7D z=PpzWKl%e#9HosZQR4o-s?d{!C7pqmuAHTSqcoMBBP?}0?Z*Y8hNEp&7wd#xEukmi zJy|58?X(EhqT6d^#)mwkQRuQZ#fod%3gu2xbc^<$jq#|TXSuAbX@gSV@fV3jXa--= zbDX}rOXj8Tu-VTRa!P}ol<?Q3DhgJ=+K}xu62mN!Wj@M`BhrHI+Fp;IVoi5ll)U@) zN`*f|r=;ki*|lXYSrG=J0Le)5dC^G#1;;vh1cL9Sos;we$|>$AEGAp~ZL9n%K>@a+ zc`a)V{wP@kUc!qo=gjw;@WYXk2p<`x7vEu1^Gsh`BA<=gJ{yX>U$JO>{%_9tV+Obq zV-A!RxsxtdB0sA)pXz!;*yqKpI@tfP$qf9THc^^F{KF<Mm;co!$yQH4Ek1(&iA`$$ z0?YrkO$G>_r~U~ke<qaw-B5hovpTSc+<hA<GJwC_!3=4FXyIft0P68`lkjve&%Qr} zOkKJ9#gzo+Z!t-$o0sGN<Ag7&b$aIbkg03q`&ju$^t(jLw(JiQG0jt8uGu#|_iH*5 z6%j(Uun7{zfH4~5`QT_)CI&-xN(bK)Xu4ixG$Kw4R<jxTZp$*Ft>d!YxA`(4dG~U? zIqmuoZ1*n_<Bgu3S$7C!S!XmHj?>IyB`JNVG(T}^WW2sJ@^D?d4DH>;7$zv^OpOg_ z(~i#p$8O`4`QAy3Sso-aWaqapq~>qw*~<Cf12e3gpp%3KVON;VN@G0|Ln`xdRun>O zZ=64}27T|?cEKRXWuBU6bDmS)?#?aqqWy2dM5Xi9WlzgxVunfDj$5h$)!~m|LR^GU z|I$91Jk<SXFtLNQ%9V(RwSJ_pXsQ@wEN$OX`1v}12HTv*1vc&D7_>SYHNnV-6Yjnz zw%*w{!@u#_k5t|sERN|}7$vbxJ71_5ltj+HmX-gbM)Ol5w}0W{|3xB`1TRbf1dYGO zl2l)*X$bqG7f^CV2P5s3X-6{bi{nMJ#sq>MzB>;2{OGTYG8Do(s`pZp?8$BJRVska zm^jt_Z&kcq+<iH34$`z6jtIY#CpQw0HaQc6-?GA$ZCxL3n}%yb<O=+4CMgsNEan3_ zqACiOQh4n7d~_ji+Cd8kg)`?!zA?j~X6#Uw%$4CA0@=}ZMJ{60i8bAI$tKc3>;5*% z3xY3zU}$VFRV7xYd|q$Tt}L|>4?w<MEJ*$WOK-zNEE$bY_pzUG6IV(_9tFNlC90Bi zwtd3);Yy|~#{b7*#L8s4b4#s+TJoQV5i~&|Ga$K{8K^Ukqy#M6RgRRA6UX^m0q`E- zrPehXt3<l;%3WwQ8}rt4%zqw6tR|pWd2!v)HXWL+1-q6~n|}wtx>vQ|y+_0Sh!AES zMLjDDpQ(Zqe*OY~zmmeS=0;^VR@$f__L>~^3)q@;5*&Dem#fm%#RLQIy}I*{eWo^d zU8;C!HPt#Y?|<(zDZF?o&aKWa(RWwcGZu*qMiD{VTAo)25*tZKK7S^WDwe-6@_+4) zZi3gXe*(x~lZazg5$@irHM>lsncJq&#`?JN0H6kWNU1w&MjJSR@(sO<a!DO(IS@mB z+(y$)3Gys;dW4Q^DKj?srJe>VUkrzW4=mCB^DBHK*03o@^@}Ute;s6}263-xq}R5I z;vh+Jwc#SjUIdqtSrZwCrQ4yBNEWKuhh=ni)^9;EC`WRJ%Of&o5A=v>P85xG2BA0t zB%9z<M8Z)xID1_im}Ocn0!tik7x$CDAX3}@0fjC-kW?3Dl&Fe4TCcr&&HQK%sN}fD z#m;|3k0uc=EgFy-`d^6^oMsa-cfRCBMZ)#@`i0>^9aE)j+?0e6e7~Dp3opu!x!IAG zZTd%DQc*eB{XVnlI+j`K;%3xqc*WC-EKMc;cv5bs2U>|%KYgL=DNpbyFYEy#4=Fwd z1?_2qu}+&4Curk+^MSJJ2-gvIZwLJZ>BM+_Io{upz=!wZu_w0P)HiRt1jfnGz`znc zpl_%h#XM?rp^>W+IesVMGtl6=^5%2!!vB68VN}q(r*A~I{YN&H22{EHg^2$LYd|6s zydC`$DE=BfQq=_s<mNsuGp30+$TQ{6Fh$_&AUvx>$*zpdc0Sk}OfBcY@O;*DT^Cz) zW5EaspECF5-Gm^4-vHHZ!L@2^;YrU8+~k_2t0al4XH#o24n#(^KcWrD8r)bCG(rl! z5(0yV=yUStLoO$xGP=4yNnrXUVI#^MMTVo8T{-WH^sL>k7i3lFakH0pccR2gr}J>+ zs;@ME?(V3)4v0S={;)5`cTf0Z_s~haB{4y??)0np^Fnh^B*@2Yk+Kkf?^X`@5S9<H z#`8Y;crcZ^V-t8b1WlsQ-60`e6swNb^R7TBjdiaef@vf(i}b=hqoE}fW$^ZYNfrk` z@Nt2EX?X6Hte_@GdXutH`@cJvwUp*LOgDVm!7S<14zrm?R3Cou59;;AX`r<RDauxO zZEY5~J77cEyyY;EaoBxm%zfARK(7rX_EDZA!yJt9L~UKCp9fkv8op-te{3LDT3$x0 z3K=nL?;{Zvgnr7VftJ_x?1+S$=r}y+kj3lf9TovLQ|Ax1I{3I+oPcN@ntCf8>j=I9 zCDPa`Cn!>teNMEF32RYZup)82_=RF$%30<9xQ$$7`}$NJf1HXANPkQz|NR!`9k+Co zgaBmWLy(&-;tuFBXG}Kg*@)!u)f8FPR>-bO@rt|k?KM1XPjPbiUTYwj#Z7%_PWT0; z{ADqqi#j$W5H&kKKx!txI$8<WN$p9y$D*rp?l-f?n_i(4e;xFJbCKdkg?SWEw3}bN zTLwQS<*uh37fXi{egrV=V;WVqcM(FhZQiBAcH{(+wn!hvdadozk*<(}e~efy&n8`x zA?;L33C_6$L0$((0-~zJNL6z^Ui(FA3p}E*vD<0|i4(U|uedxg8w3;pKJ$&6M}E)D z*5Hr8bJvSkW5{}n=S;E<mkSx~oC`b=%$Y+68CLN20^5e&dn_E0-Exa0@&vN2P}e}} z8FjN~kiZr=M&3kzOSF}F<uVrSbOou~JJnXO__xLv40-}4f|H8#c0){xDNU|X9WtBZ z6l!^GGeLNIPhi>BaXvX^qi)4>_1|rfES@ioK7x}k-?e|*-4GZ{Lc^0Qu^MM5ZKDjt zW~viW%mHIfbhV893hjI|(Tp?y;jo5`TuSovru<;P_oEIIoKoyk#dWIcD=Ta#Uoos( zHk_($f2{rUKpGkD#-*T0*}djm$cFVC`<x7&g1E>QVD?we)9w3#J;I&$hkj9vT|tx) z!f~qV%jgV)*nKU`IK8*f%Fh@wrO)T3`ux1jC&BC2AyGk@RoaZjwU5J3XJ|6Lz}X2E z*DQi7vctUyN3@=IL8&k-v@LF^E@wRJbd=tmT1w-LPEzBNQ2P?xU!4t|)bEQ0$r6l{ znnR*Wd*joWh^9V-!;_AA{MO51SVwPGGHG*&50gip;J`@(9#Dr-kA8=1hB*J+Xpx=N zI~a@WUL7(HiWCeL={pTsJ0tIZ@f@oFm5LKcD_R86J%Xh92E@D;uvoFwi+NrH1ppWP z(V5g~EDvIUTB^vQ&@YWG1U7zZsug(9o5irwLQCVSr#jVqr7$Ko!=@0Wm?Tvt$U_?{ zZh)BKi}gcNrNG~BcK!>=_9j^;X^Aq1>U*Oi4lt_F*hyX{7wruh;VI`DB0tKRsvJEL z0(*ok!JD*Rgk_cE;=}{HEPuvKbcN(-hRZ(gXyHaK#)br`Bzw3pnCyjzSsBL3@mlc( zkJM^>P3-wq+~m^4hUEw4x(odmRZXvSmAVg$1I5nPi7H+}oLrWjG@xB#NPtmbUK9@k z03bT_s!R^r&1WA(fX<MhDE&)#Vt0XaQSzmoBn=A<zL_sle8@jzB2W|(dSu(iEHXCP zwI>t5nM%1cDQ*g;R5ZOi{UwX|h|=$OQ+QUx3H0htpbCu*lnB1Zx4uAnid#i?XNLJ1 zz3uU95`aWKuD5JqyRF3m(bW<%=SaPOGawrfq&Sz_t<<_Vlp$8I9uL21VziiQzAv#u zMn=YbBT1S}v|D-{E}L*c-9ij(`?G>DAUPkVs@G5djpW6Q2PP(4M2ec(rsS@Z?$l8a zNH=-(SjUQC?<*OB9gNS<6xI`<0*2^bI?J&|@8@z#Ai91IQh_KR6Ke}9^b<s*FP#Al z&=AM`SSZtN8?tbT4X8mHA#t=8Xyt5I73a_JyfTw_n}IEnaQRstU_||UpW~FRJ_xS( z=4+)tpY-A|7MRTrm><%JF8Y6defBZ&!a}nb7+2i;y`o2R@s%AY5k%kWv6kN2k=d)5 zCHvzt&&wS$s3bOoPB@@~Y~0f+`yP#I>;Gf#p0+eux-|foZQHhO+qP}nw(aU-7rJcQ zw$){u-|qh&_TkDA7m(vQh=`Fh=X}TMrGI~K6e13ra?>$r;HD0xrPy`;GS02(dW?)n zL3hBH@^xt^yf-GtaiQ#5S)06*?+nGJz<zO}T_zl?In9~n$@!(z_tk2%g#a};h;MO` z>S5a$3%;8Qwr?$C7jLxCQZJK2k1TRY?+5O(XI3B%TW$Wxw*Xsw+4s3zR+TPAI!3~m z)W`wHU^O*zzK;!`%O;p-gmZSp8m#!MqtO4k?s;#iLErITvs}H;iz0FY<oMR*a_MTp ziH|o^)Br!0+1v1ilfzR+x!ZyY29bQ28|wDV#^(V3!B(Ce1IT_yrH=nAgC*3XIcc0~ zN-*$5!7J}EF;KD7BmLG%Z`xbk7x#^y2jlHDNW{`fCKPSTZMAL(_2Q(?8|6KcUPw7~ zQRvD2yNOPt^+n3jg=LXXtd=NRX+B=AFvpbdjzX6lCtGkXu^l)u28b;&`6-`%r^(DB zViHMhKxn^$ivX=HV{T=(doEcrJqx5H&dBI>LQTWDrLh>eCO^D=Lxz*wQA}g>m-p`q zZpGVSzBx95o)c8YC>z(Jiw@73fD*_uF62Pa3>5`RR07+*2rZ@^y0MW-zE6yBUMJuM z`vaz0<CyiiPn7h_3J8vOv%NpwMInE5H|6iUY_p>nTihlL)iu7V)>uQ%l0L76lNBv; z)%yDGy6wYtul|bDj&Qi7aE>c1Wm~m7OoR1ETg0xoU7~Et`jY><Xr%$ycSP-h>8=OS zZdrpGs_Bj|fgel8L@p_9APZSZrr?qg5bH1)_i$hy<Y#K&Qu6XbWxfDAnZ_{uQn1(O zR04>ndfL7$)=jTHOy4%T4*069tD9+L*k}bk()y&9AxXHTro6Bb;Mxm`N4yMUm(*Ei zwV+SN{4e_i2oxk1r%qiZI2=-OyNmOoza;-p(WBCeqtn0l`tSKq;6H)?1pX8FPvAd+ z{{;RM_)p+Jf&T>l6ZlWyKY{-Q{uB65;6H)?1pX8FPvAd+|3`sJdGdB5V8MnhsemWn zm9PL8%I)ICMoQ{&X2n`VC;jde&|RDKvxZT@7rm>)1J|`7jYV1r^9VbYlJZAf6>hYm zre3E5IpIzmAof8(n@a~H{Q2HIk#%Cl23(As(sXXTs(Li{#8dQ`O5RK7GOP$_a}Z-A z-gag4tlwNQ&#>yEGN?t5G3uV$oA%Cwp3sB{NQZ*<f(PAT;@Pd85LGd<4Z<XKB$y{W zo;K!}!l!8?gc*lGfHQDl%%-s^>`%N94_5ValD_i{c-qSn`nI$=A0yqq15KmAc6wmo z7=+f$+v%s5!L%uOydVX}Zg2NhEdxIi?8WVbx9>IZV!^0(bM2U+6(0!k<ZaZ?A7|uc zIMUhkwoTP@q^MV)G!X)+-W#j7K|toA0=itNEd>jJZ62N@%#sd}x!_4Yy=;T}`?)f) z2u={|%E45Q@hsO|&d{l^<VLstyaoni6a32ICZaL9@V0Y+cn-Ew-_gvqSOPC*biBd4 zl?IJxG_#u~WN22<=tx3mng(7PY|@-cpuHWek)KZcUNMO$vd*=wy>YlA0!QGxS4ciQ zVsvG{lb|s;7WZ&i=b~3U|K)8ceb<&WnA_iJz3}1`U93h0{}m%;KBOe;UT^%hODh_O zef362pyCQC;@>a6|0}}$ZxL?TQy5(5ku6+oa_|IWNr{~^yI|A=uy5`hNxMjR>n%-y zM&Sm7Y5Ng_Q*e$~AaC5vGUDZG^tIWK!=WE{ZFz~f+)syzj#5bS^HP8m0Riz6AhL94 zf>_vkpJagHsbj8uwC&2_wv3k%Chi@n1CwgmTh!4PVs9`&u!)7&yM8h-S%LZ;zI0e4 zV1n!poX&L)4+TL8R{M+O60py|aq*oj4g<T<f@$zlSJ^j3T(?<`@h2Bva28?+52G<d zgr-)(-itsBOZp{lK!Srp?LFA$c3+O(P@+y?xNz6VE~s>32-P&O7{a}uj<^rjfu!tR z#(cB?UDrPGC7gjxn3NUq^%#jQHy4xr*)^5)|9QxH!WzPxG^JEDD-wdH$1K<|_BMu- zijSWqHzJ;hCXQDblx0Inq~#<W)9**0l+9GVh`M!jdyT>I5@U<h*u}Q3xWap5nD4kc zVkthsyrrBmC7+Ju>dvQ8iInNpEF-xDy-*S2KN=PI{iKzEU}2I$KDmh%jP_$@_Km#H zBPA|)FqXtlp12WHnGT&Cy!(C+Zk?=Bo(1(y0veC%yh@S4(K61y&vW+UyT-vfMNj^R z1&O1T(roFc4C^`7lHJIT-ZIVNl`pwbUOXzIAUi)s7AV-dJc!_I0<jQBJ&zz?zMzyS zhzSURc0^Uu$IaR<Pd@D=ZZ?=tQ6L2!?SQ332Xoo;b1{dCVVYE?uQ32fXQPxeQmX{3 z)BV;e=1ie-Ly_ZQf@`?vH7;SC8kFwZ5L%e<;0P*NU!v%#aE;Lt01yH4q$0bVy&)&b z(o;WPv&(;QOz0q<_sRp!%ih3q@wG+S3M!n4QXk~Fk8<_Sbw6cNxWcfefr@B!fp;JD z!xaMQ3fTt&BTB~uBC6UiqfitC<Gt5BsRTkKE})y?_QeP0SC*xqM#hx?145@-P~=>2 zSl5Rye`{Te;KJ~!en$&GaX3v{<?jssw1n2C)eoMzHP1Y{^B3S1M#;x|V0P`Pu^eZP z)YQ|lTciA5J)wc#j54(jKj5MuaOl$aDh}KDP4e}Spg?C%8S}?n4|y`q5Tf55qm0L$ z(mT3_5p1{$e@_Z*Z_L1Cz`bzOu7S4iRQ6Bc%bkTh^JrQuCKj}6`@1^@oD5Ttaat)4 zi@3V_aOWG^AC6mw-aeiiRGqpy1KN&g0XJepUVnEf=Hjh~-oC~ed%LgsI}LU7`c(~` zDZZjTm)!GsRNe-(!kjhZCe!rF4jH-z?Wh~7Swjd(uR?xd;UFX~;t`2TB`dYlaSBWX zojU<0FivrAWd%9V@Gd3(-JdMGS-2P(4w?qnd~lZpQF+_jNLEo8idC3MS-<o_J_5&( z&O1ig04~N>8Ae9g4JBj0nbXe%u*&W9c11)vwKb<?5gFqQ>N}8I-41JHF_I^0urn(^ zW*<&X?078gv#H2K#~Nq$&xXd%z{O;1#B()G6-1X12;E^MkVDbfJ|mKKK05s8{Z{SB zP(tQ*JBhpRQ+X%?veVHd6nVa6{U?L?D-6s)5X%hS{Th@LE^zbAlWi&yQKsCF5ufxU zNL&2bitfK-z#?i+mkFWfR1xC_e`6)9?EMsHI#x}te($V5IlYWG>6GB7sShc#$;6Mg z4|=@}`M)00LSVb@dmBtT(S)L^i#*BcaD>gM+IL9C4_(=N6%OB})mEkqO(=`5+Slp9 z?vx2?S-p$?LY|*n<(s%jGs<CXaDI!H^@V_R24W-9<szm<VE7uF)ZBCSuFBUdDJyQ* zq;Z~Tf<fE5gvZ{ZM*oHO-9P%5JQ2U@b*~F<?d@s^wJKxYhni0TN)CR@aTp~MHDkHY zQ#IP;X|QM}_12-nxOB*YRJIn1`g}|)_Op+`O3vRSsy+vm&5Fa*^;9S6SuxtCs!hq4 zeLOf{_W0BDxSTNnVnJoUhn@@<a3>R&@x(goWL4i);ij-w(o#h_citdG3WI^kJbPc% z=041Q(FWq;$7ALy(FsegzmS$Xj%cuEF|+J+r_&gn?4v`mcqw%Y$!#Sjwt<~z8bBwg zIL7lAd@5`=bN)e5;ewp-ThSvi-uY>I1@<A?X2W+QyAu@tHNcMnYlL!YAYsPWWdSh! zMU~vIMV0KR6u|p~0E$4X$3YLqknRyj??NFhd5<U6M<)EYV87|1?mN^sEH)@cQ4EW@ zCd`3Qbwbp%=lQMbfQIq=M%>GnvUYJO=MGm4NRdI+i2U=0V735VTZK+D(vJ!1g)UXd zfY6KQSDYrRkP<pU=84F3Zcu~mHr9qthJrjG`<dywCrl2|IXch>i=%I3cCg1`r{-XD zLENpxY!Jl$vmMp)`az+=ZX%%~T+SNi&H%3%g;nRL(GfwoyXMvHTw6drvX?B?VZrrY zndaxqH3Rhh799Z_?2D;r;GbQaB)j(x5(j|Vrg+C;7EVn->X%Kde$6-5!<c8f^r*1| zf|2qE%oQpP+e*ZcYhd>*w!w9s4F0~#eBVFfSZJG}6!cfizgK*0?z<45)F4UHAY-`w z+Z8`^)Xr9tk&lrBSWdurSZvJ(fq>(?lk&d8Z%@l+iG)e_igMt8j`*=Xo9y}*s*6)D zA{i_M>;Yq)bWx>%^{x7gidDA(uVgmhyPdH0ZT0Ppq8i+&#~pmsnCq=qYkEAS)0w`S zp+mm|#g}{&BgA00y5InrObwsDXxWvH9H;<PwS;OBn^GcVxp>s{i+g@j;%cG+Jeua0 zB-A76Z5kjJWo>=0&Nn1^7TjO=#|`?f!Xo?-Sx8-?n5+IqSD9LZGziL6gPONLLX|It z%mt?=4;ZQI*&V(NS~AxO9;WD)+;1OvtLAC?Gs4z|g}nB>-`ZL&Xykd<xVkD}pnUi^ z#d#=dB;Js5N=AATC4zI(XAx!EVbH4c&eeN63mm0^RJ_cQ)KnzsU0`w-&Kjh!40gC? z$HOq@b0lGcqOhSxsgr5~Jr#e@-dv%TnZqD?AP~ei^P+iMrdr&`ew+lbe3awyw}4O@ z^8<gk7~@Z=;`hn=rd!}?6N`LO(8i<U&x>a7QP1AFesiooo{PT8xny*#(itTtsfz0@ zOgQ6Hqy`rSa#k+E7`JN1b`qKz<T3u&H!O;Ui_N;CN--E^U+dBPwIne<2VN6$55`@W zSSWkwW<(!g<c6eK|A+SN<9x?Ls*y;+{jKu?{WyRcSSK4+_>4)1ttqVvkE{ieVeMvk zX=yF<&^I-Jre`<bt7%O9NcX3QP~5hUX-eXYj$dkj@f9P%cZ*~q?>Qa=O`^q=j+?`L zCh&g74KGuNyhdZ3`@_6?gLsqMWao?#MO+KJTH;JM*mD>thb$_@y!>gzDhNHG>ZFw_ zKXFcfRWb)W#qK>3-O!L77tRzf63Hk;nnkR2+1v8fMl-cY^h+tytM)9Cdv?S&-h?|d zv8vs<d&?{WR|LJLbWCb^Ku>|jINX@>8?%Z&?7*@4eZB;S&=7u}bpy&O`+^-xle9Y4 zq~21+-6zW?l=3r~ZuFI+B;RZ`NUdueOV;8GIDEs8H&Yn2b4!lNYi^}rim=Pi{4&Z} zE|-Y)osx-1>=kZn8yTh-6cFkx3WWFl36aN*5D|;uCuuu>b><o!#t)B4vvszGZ@g^u z_v<s23G7IFvvAdyKgW(+0aNn~Qu&YYFJ+cO>NOhwlwzMn^QldI_8`O4Y2GhaU0+`x zvO&$=6VnfXZ@6a?i?ubgF-!^z0GpdWitcK&5s&_b_7eMaLm7Gu(n&|nc=Clltz27z zk~4z=imyj*e4OR3bZKDTBUR8au>yrZSOs+rLl*GO93!v9n%lGDeDs9uZ%p#tc#ZxD z#&0bVzhP3MIR!x%(I&7ScwdgF6_WJ6nI6C-X#pIr)@ZhOo7XqLuVjY8_ZT5&P%79M zQT%DyHQp;u`0`z<nDN5KBlO9y6Uehg7~#d)EE(p!tzh$<btCqB2zekcu-LLT8Xl%G zq`)pBuEPy1-t>rc#~LG-Iz*O)V`7OZ*PhV6nm4(TO<D-yj>|s^<dG0~Lq8361ul-n z<`XwW`ObqxprP@njO0U8FB2DGK+o@nm7pj3PEQsoF)5Y-ndyaNCk0EE0EC?A$=IcY zB6rjnyc!yum2LR)n$~-Bd3iWtMHk)}>}0^^MRuq6kOkL&AmmA&bQY3_TL5X83}>K~ zV=*{FFl1gku&4pA(KUduf^md0J@NidjRLqfGz$7mv?|Z^a>ax0p^L{sm{zj8)a7^U zhXD)3K+b$dLh4&@pFt|Jk;*d2m8$j%on0o_d-YUHDq*1bZwy=-!%PkIjzZHGgpYCD z9LWqn*53vmTuqvORBZIECx6e^I&WE$p&Z7i_*UeCOtb1Byz6-Y=o-A+u<Snr*Q!c0 zq+b0RCLL~NC&^roLA1(?vT*UC^S9DL;2T-bwl~M%W@dm2qxiD6*sHbAJ^<iDi)pq! z)Qn8&J1>c4Bf+Bkv7SOkL=EsamA259ARDTHqX|bDiQv9mV1&kMU<l4m|D5y;no7EQ z(&1P_dPodZSov2y1&u+Co259Ga2jX}{@>a8_)gD^-%qf4C>ep+>ubEbUs};IqEdA{ z#4@xn6}Hb(u|K=fG2SQ&cvMqli=i$!OBcPJ3o1!cw%zR=e4{LYFAOt&!2EaJ=l}`7 zyt7)5abWiJuhE-o*YWnT6!KZ~%OmtZ1>%eW4_v>4aPGS*TRogKpkA8mX829MM_MF) zLdSpV$*8VNMu+i(VNcEA|L#8PsCYSK?-m#~{{?MPMnuuv?9iIU8*-KLtrN#fWujF1 zibN=G2>Y$9SV#8P{$BGr*%DGqB|JHAL%<DF?cnD(3#TV!nYecL{`h9^nf6%}fuYQp zf9T?^gER?zEmMqxx1a5$5UUX*W6y<X;DTVi+h}S^`;LJ6v5i@O&z_y22Ck-z;T=){ zxFcP9_*8RsBf-M+91Rv+_3E2nkLs+oMQ{GOiy+~FdQFw6a!tx8fQ*bW!Kk=&CYnC0 z%wqHp5No=^M!qGqcD)auZ=sUaYKo)iC#4Tpr6%_LF*~%OEMI=sl?9z)Ee5AZNSh+p zqy3<we(5Err)p8EgqOuWKP=*cFs^{Nj}F!P7u+wOzDCmeofVN-v0T>mYxMyAd_pU@ zmvK4*#;n$7MBaRf8Aj7&V_}SKS&41Ry%04E))~7uA-aLTw+~z;izoR2Y3Go1Z{Vr7 zPt;YRnLR6LHU=~2hb?@BN9ZNch|)KAFx;f#&a`36IjU6zr}yZK^}b%6TXE)*4Bb!a z+<t#`<LGSbzUX0Upq!OgCX2T?5{a62%U(D6ao8uLtFWJ$?#5k(JB>0^f9aR8j;%&{ zf_NB8-7n$Q+-O6GWpZRm`VTVm!R*Tjj(Y~By7nx@T*J5af)791ni2?SiB)H(L0qxL zGc|VF9E6s{`nq~7<qS5NwgW5^qODwuC_|(q6eH)C-z+On-iifqDEX&a8r@ly)T5=* z;2-Ucvl!wdF!hI^qd)ASPS62+%z8lXAMGGHT^@9~aC0-+%)`=vri=z_PkndcgK9?6 z56fR%;0hw&&gG_hJMqW(Agg*1jRLqitJt#qL2u5cXvJEYn5fI7H5ZwNMbF+RRe|<g z%j1WT1BS1MMPp%F+%1TZMZEUgzXHD=a-$}h<|LY(P5{?Z^}qp!06^Oi;OF!!?R;C* z<TZ0`fzI8Nop$k$@#blo&jBysut<xp0=T$6!&WGN7nqy}&Yun@o*Y-fw$>)>OLtSo z`M9k?_jqG&eaXyHXR_}7hHl6L1j0^%wnO|H#0T00YAmysIXHNXPVPipJOYUc(sQU= zVz$}G#uyxNGjfqJflncPXyt*9t7IhCka#n-Wp?0!EHJ4h7F#O8-n(@qDk{h!^*U2w ziR`ZyK%0z`cE-RUM=jQ4MT3P{=l5sFKoW^m+wH^W7?<ta>POG3QR3~TjDw$1D<q0? zEWdxGgD!YGqbO~N=<gCFgm9fjRJOn-gx~hKqYpnHY6By}WHrRSy+Sb;rPXy+pmBH* zDcC)kp)F|%m7ZK1@S_n2%}0|H+52f7z<R*S2*=!NsVR~uzou#r!9iz83j%zCZovt$ zt#j>S<Zeafu(;B#+VKWO#+GQz(q^l>MSER?L}?i0T)sbMJTVizf0)v0#oq6YGiN{( z{QvDnE`>dt2)-11vY;sEf!|0GUv<MhSDmZ&v0kBsL|IRM;;Cx8d2?b)=n2Xx&(K-W zm~~_*zV=$4!8`6O>RSu?R$4N33ee*ek{_8CEy^Zdrv(^k+ovBslHOa2(*f2^h`%f) z0kaN;nlDhXMs&Jt3kXojPLk)E>k-0dm1e^N$*+*)fBavK9$)k(CwEMZaWUx*7rMdh zrEFM87Mm6{#SdKdm==7tcOB2b38Fy-+Uz4H+C=s`AREFaQeov05CSC9%V|<|o}sR| zCDFX-<bJ_5nm0+BqY-d*t|wl+)qV^{jzc-7&QG$W<NAG#tT(k^EJ+*VGn37p$F8!t z={liwnlNuc(9R69&b(I?`GcnJq}`7(Xw1V>iemmIwu<@<0&W!Tv;x()A~bUaaX^Er z(PQ#8cZN!9oz$#3O=$He#JE#ZFVrgN$N_7mFsMxGxio#faw&XbxQHd@%h4rbt7XT` zWEa-|dGbMA24qR2L=zV^`{;nIq*a9TjTY7Q732koH9~r?#7!HTW8NRtf#5w8ECOVo zIKARumw*}yi3~b+g4sS(gCBu6C5+m|7AuHCSVt{M7x;bl4kgsPL$-goMk6MBf?v`Y zj+9L4{aNFN$O)WvBKW`#glZFfk*jFh?-s!>5{0~d(R7^pW-WHGRN#h!ow!>_#YI`+ z&w|Q9qctR5uy3@Hgu*j?fPVq9lAQ;LTgA9uRFx0eNaZLtS2e8)Z>;!h_d&B*lsJv{ z`n02$xz>47pXK}h`D%$$gu3%xT`cBCk%0i@BS_KPEP_1UI+-Snj~?6RedJ#jQRLis zXZFAW4arQ+l-1vT6=BG{>cK(C)t;<Gj8VEC3xxZ|(9X+e9H*d6w|Qc#D7GOQ6pHur z@hUIS7E1IBWm-OH&h(E%qy{WQ4AvtmiXRS+sh1X!%xFxX%~`F*tbR8(pWUMR+b&J) zb5Nzvs+nLiSg_82yum#~gptql5J(u-7Y_UFp);t--b8)$5uu#sD^u`_g}YfD93J*B zCdL;u)(f(eDWwKYv%;K8$2#jVUE^qqhky%gjkh9iP!n)^w@Ps74#+M3H4GxZb+IzL zG)#u`#HOIH27ou44w4=-ks>ZN3K+VpFc(kzSp4)(%h)7~J}UZx<uM!Bf@x1iW{@w; z&4z}Hp-}I$iwxu0RQE3kl{!B4RnMf!I@*87M*~f8=a)Q5MbRkpPBdO`M&K&Vju~c> zGVoDcYym3~CIJ&s1CT#|5~!Pkoom5)E;@91(K}wsNTl6MOoS-i>wk@~?{T0*Ft2A= zl$c&CsS+RG<vv&3OuT?|_HEm`OBVfAvQ{%@NBIPKwpExPnJ~OGi!<(d+9TY}s<$e? z%dM<8+yFAyPP4?15kL^%a{3s-!iWYrHx~e)a7IlAERTpWDyWK60yMA4^OIs&#Zh6$ zgqAT=4sl{$l8~(Ua-qU##1cPd72<svfvWk#G)5?9XXVmxS?@g`?$)7ahX2&uHn@Ze zpS>Fv{{4YFtC3)m<F-xVDstokJ0o08(#FXu9?dB!O>$#BU=PBo?J-j>F#PJG41@#I zVqzqp3$505c<8tVQD`PTu#e2|sltzBC-w!Ow2Bf{hl8(-K}ip6W1Tr2qPpzE`Yj+M zIswyc70?Vap2(?9>u=HdG!A0X3>|s6q6)j?Gcqp;)Oae4*vn-_Jo=Y^v;5$vCbhnR z)o+YDq3O3<?*roNEfUE_Y4)O?pZt=~W+ZZ}TrwTQ*^JfgecDx52Gxu)Jl!hjlx|K% zwv3b!?NU%2{%`XGmxt0uYW9sVfq>S~&_H<e0z5Gx@$lc78QBW4jj+k9E?dxSc6OZ{ z;KgkKX^m*}8)={>t1#TnIVEhX(X8AAH6;-F*Gou@kDa%_G3J%d_r`Wq{#NrX5Lh-H zbp+wflHot1mrn}>y~mcpkre;(Co{KzdNN_2rPy_h{CKVt?bk=@a1-9-ydJy)@^m%3 z*_oEk-}y~+&f=b`IXj>=fbnBrPx=)-C7vy-oMg$FsAosppwb&m`sGQH)(~T>J-6Dd zP2Gk({@f{Dn`E<K7HfM7UU)xz&WP`*JvW~G_LYizs~%<y{G2+4A>S4LNQ1%Yl7=Qv zG$Qvm3gG?BRQ>g*ruROt>izZywN4GJKZ(PO$Frh&O3ebbE>b24&8f>YQ!NWJw`F|g z)9nn|dtg7jsh+>%N?x3qa*`P#MbQ#5|0yY{ZPFonKJF}B5#7wS>G2QfoP((uGIf7Q zQ9s}t4z(x726VAw>}-4Pg$x@n!q7!yItcdg!eSLlU(Id4#3KyeXD#z{k1YDwn>e<} zhyg>QeU`M-Tmh-SRM%iBmxUML*L}#-xOhy-&{_=cLQC7}-zRhs+6Vu&tZ#3COvD1& zUN%D(?<-Zd@VUuW8vij`n394~n@f2vOX_-)5L7>~0Xxv)iMjoAgE>|7zIftoi!8~w z7vKrr#n?&Yr)vi;0G_K06x0fC5<e7QeHe?DNF(}cwZrGRMbh`n;s?0pq_iy|7R(Rd zx4OQfX9*pqx{zeO=AK$MJ_qY=>4<dvy95+NW52zA1rNkw<Jv%qI>3k;AxXi!dr!xL zpj0^i+QB89;OO_fl?Go1==>55g3AqPNc6%R(pdQC_`4*mCjaqR01X(k>R`|PfuY&s z3dos;|D5#P%2mIi26qjNhpg2xcqaDH%1GGMSEkrN)MlZ0X#r`Y{l$D!59v{Fm{+kE z7YAR4oeZ#@0}k?d<Ws#vr<yTd<mem_23n7V6Gc1BNr4fJRsoP?d}`Se%%*l#Th+Ag zh{j%xG04ecVp)ir+Uo(;-NG9TymX{mm7+t%uM^)5Bcbp!tRUu0w?K33A{pAqH*Icq z4_OwI33YAqo4;HIzGf<<V3mPW$5b~$W{ivsFCkgEhGHvvC=ESJMwg^aY_p|``q16$ z!vq!}q;x_KPR?q<@5>b`-nT_iANq|CuGBz-9i~iAsF>d1ilWY24j*?&%@Bi+5v@-v zK)ZdU-@)SLy->O)bLY}B(hyucQUZPe3L(BxdFxJnm7HsYZZ~_YH*3<nir{@=NSzjn zvoOS3#fq2qpqxdFaLs03uc*ZB<LUH4*m~kWZl9R=<VQ+K>#Y-XLzNNy-t@VzfVNyJ zaH4ai#1ai{hA+H&e^Og&kB~-f>fi46gAv>4R4s0~e?lfQ0hcuJ|E6K>#(~t@J;jv9 zgag{+)#Pd8KnIf<y)!WcesQIWMv_gEK-*H*K13Tef5u1v;iCY<9q49fEi3IAwnGRx zRhhrw&-FuR`i-MU!Plg`T2fGTkv<&Sw@=rlTwIBmKi1@1NMLzK`#7>_`t~9Kf@Rp3 zq?wsZv*skZ@>uF<#ijj)VPz>`i=0<bQJ^<D9*OnwB<NU&eglbw%MHN;ZY9?Cl7$w9 zFH+VpKZLs|n`~zTC`{Ff+2!=BG88V>=y{Fwv<QFY8wxxmv>@3<#I96qAtrPdg2|*P zkFsw`?#)(aoVWrBd`!Uk)&p~zG899Fd&mr}9dB~EOA~U!niSQd_(qsBbrj@NN-&NA z&jx$O!qV9_r-VjF`N}Y_Hkk-3JWEGP2-=~*ln@ug5$R_bB#V7GgCDwr)<XA3Y}TkO zeqxxaYM%Dvx?=%<odhssQ!$*8FWLst?Xv29L{@fEsIKAQs0Q<JT?&&+Z+JD4VPUrA z`92#0e$I!JYe5R_R7K7~E?(4^Y7WJmiBO(PtL#(TI1JBx1Mt->5d1@fKWcu4MYZ-3 z{Jmxe>6sxrEvWR`W*PQJfCX?(HY2I`zSh}$H;{Hp`)T9DC^%&_xwF@84oyR)K9ct$ zVusEg`o;gniA<3<V52F-G8pA=VYygs$jrv#TKri6BA`ea?+rJ`wg2-hUkEik#4c+u zgKSJq*8Cz-5`)T`$;3m?Q?NV!UgC=Wj+3pe#M@ci@ft&`TEl|`bU_X5A`3A5c0-D) zi8N{m;=b{UdGzzl4j{3n)iJ^;1=#N0Ys59bCI&RVpU<e$INOMAFY2erZV3H5u|g7Q zd->IvF6L7b1R-{}&w6T^XmMBjSq3vp<tX@my~KRl0e%E~?b?M96jfyFLo!(SrFLEQ zvA!0XrGq9fY3;`phE9F*g6w%%1HUIwZ$8WnSO#5ZSl&B!hcrxb5N$vipn{z|x+|xZ zH&Wm;fs_K#NHDiMa*T<4dzN)opSHwrOYkBn!5MKgG@Qko5_C3+f@}w=R_CjQ`7<pm zvY;r;WUr963_C`A!%Mr4-!Z?tVv%91wTKXN=keTA&Mh8#&*pWd)#aN7841*k!e;h$ zt$NSIq*8!6!Z}l=B$2va!J0k)2I=<9?7KJ{30aM?LH+jbK;ersAyXrfLJ7jEKj1w> zOUARC<=1lWV`;b^+J2rUpF)ht+Ha;M083Ug%fSJsf15Uklhy}W4hQGHoyKf-giiU+ z`K$UA9(qYNdRVsAj4H2-kYQ0{WrV&I)kUp;yt81-I`P3Em|_A|?aa~ap_P%*e`KP3 zPa)|LB&X*mNbKwlY0u`_I15{#SV1Jq`hs*GO$liZ_LE*G^vJBsIM9_GoGdLaq<sKE zgF|l5T&$>C=?&sCAzj$MV|(gERH+LcU)&A&5go3~nN|bxnfmG_!=C*k6dr)0p%Edd zU+8Oi{I`XFpjWW!^IA0UK?FW`OdI_r`O6eoslMu}k`s1zb(b9ZPVbMtWc8zv%_S>G z9%X4njKPb$Ol^97Bgu4$7C{r-F|XH<a1N9}{cwztSskBq;=C370DKenI09uspiy6W zFr{>J<H>uf_Znb7u!W=JE}?FaHM8L9hWJBrp*}ikVz~naMG{fXlb21ZD0ITJxp2Dh zE`Bh#^2)?tMrZ(`%~8t`g)x32_73%ylIqp*J=*}|zH=05T8G7^TrCiO28YZ7Gxfsm zpa=m(qtM2Z(VF9gOFUj7*P@$MzDDBD(-_FLIPb^d<rtyjeE^O20j!m@flpJex<F$= zdDv`Gj67OqHHZPC2|BbyghN~*CI)Tve7?`m=CDq54AsH5=8^095GpEMofe&$H!c6$ zX~`n-y6(SR&2{dxY5W$akVxZnyHK;?X=|8PG$Dv6#8rBW7<gOWFaRi$xhxDjb}J|D zCkP)kn&$7)s&l<nrIbM|+|YMzg@<PGjbmZOiB6D}Pmh3yI~Wm4iTvA{@zEW({ljdS z=-<&hb)Ytm3T25vJ^F-0L3;H7Juki4f_uPFYL*7}cS`SqKG%BfVe!tNM%xVl%gc_3 zRfO{+6SfxFg98WmqD$zH3trK)jb0$&)u%xL?&n!eQWL(P_e*fx=%t?V4v#L-E<_eT zXTsI&JfI1I_}}m<dVQ`fr~7{een5lm&>9*N5D>V-;HA=}!H1cV{c=1DS#o*|^w&%# zl?BLDOc1KktWAT8yr<1Ff<#pg`WruRMf*<&6_&hYaa==+8b10RdOC&u76Q}r>)ljU zvU&r};&AJ9kA)rdiPe)F83$%@YQ|le<Ej|w$JKZDdORyzo*@=LA^F|<!r5Lq;?2@m zhkqI@(|`zP2y%YlZTTF}fQXF~sh$U2V98Hp&DHBV9Jlb%8)K%cZtj*b6dss>#<rYB zAHX>|7I`P;9qa+$Zc~M){0~$0Q>5{ph#`>S2Q4!zAHXeVn4ukp`<Oz5w2@W{^>`-I z=$oS-2Wx08AIL%J0-`KS$DYAVt@>9y+>Iu=S2F}IG|;Gqmg$X4uXh&ikYdvqUVkIc z$URMC?iIN3c?t4-sa|@mk7kN!uEnBvD|o7GvikjVp0A?@nWp76<hKx}&0z@$zAmCa zqK*wPEVa7*rYM(x(vrqs!<_?1J2jjnDDcK-XAaXprPjv#jIG`>q-=)7ApE6Wt@smM zRl>IUdGp)mMs1eCIQiq4QQq0kU660kf?>6^g>TOo(dbFUf-xlp?VedODVog{U<!UY z-7RpRHCC>=IAXiaNpQ|u@I=%OV3-i{U{`gR@AfrY68F!Id#!h=nZWiN&QSX*e1(8) zgA?<0+p%>?XUI>0DKd@${V!CcI=O!2c_q6!utv|Z%;LgpGwB}I#iX$r*)ULSfWwHq zJERNEN^8bDIqZRb@=dA^$d7r!Y2G*6<}?JV>B5c*M9Jwjj>=e!wm?biM4Q7%<Mw^u z_F36MIe51}bxW7U0buUEtuybw{ug616I%qSW*8c8ZV7tYSE~|IzW;vXM$!gx=AAH( zT_V<LDD=(Ju%E<X%AZ{t1^=$h5#><ojM-EEAL$eP9mJeYZafS5Z@O&hAyHNu{m5)@ z6%p&*G9hQ{<)iVo-6B8wpZYiuLR=LEk%S7Q$D3D@#>o^Fpk)$wt)HoD7G2hQrW69I zlK|<qC$+g^MN8q-ygC8IB`RSe^a8`=Vc#}-RYVHUiC|-9tu}XEn&>G)&@3or#+stB z@O+Jga>fY^eO(DJ^#H6DA<>p1E`>>{%41mCBuPo>Y*jzp1|hr6Dfnz~u%;mvooCzr zoSZ#SJ*ex2bMZaE=?hbH@V&E5^N@OWbwz5JtRyx4;p$SSUhD|aORlzabO0hPJ4ed= zjgYDVm<#r`WORJy08tHji;a_V%@D%e-)zsM<L^a1pB*U7nENdHS!X!&{P^__DV1o_ zI`_N<oYzRM!je%iED^wGjZgWf|MCRX66Sp&5~NSx`)8khN}D*Ns>hB$SFGMrwH&$k zU3|upMtQ_@eHT$i!EKTzmXFOBk^e5ueVy~k{0T#@-Dh7MbPC{N4u^&A<Pj;R-37dO zo3d7Nvj+pU^nCnc;``uQM4ZDEHcSI%5y08-9h-|pOQl^6d#|Y2=*>vZ!AqJrPQ)5? z5lK93x&80p5)dN2f8ojQa(ujZzLa)ELos`XZ0KyyfUB9wLT&81&YUF<f<S6GVpZm_ z9f(qTA9G&nJyaXuLvMN9mp_rpno8-OD<_0gKJi{X{+1`3MYs<~Vc?wzfSd`Y_BLfX z*ERlv2EEN&d2Bkr<jTYY|At6U<Q_bdJCejC`_zBz3rB(d8rZcR0=}j1!RsC<=AS3v zl%o&1rX3S0B&?cCbr6@mco!Bz*f$2w1&=s93<*4w#kyq6xfzGhS1V=LdY<6FRHb@% ztvXk%&oQ#=@n@qxK>ndV>VDiITF(`=;=_kYLulDiz~l;@D-2i=%I?)mNAd9kNBX5f zzA4|*g%E%K@HFt6jUr^3_9$3E-CI%~trnh&7hD<VJZi<iwf;ToS=JRw8;SN6Zpgl; zRZzB&mWUwGBvpBzB{Y4F_H@EB+B1c;(=#q2Lm4S1Q(o?>XQ{-#d{0&%4KRrIn80I} zz72-m+!@#FJWfpr|JIT%x$0|cN%&Bq$vG%StfBZrc6`~TX2)^{%u#4&eL?PTahvl8 zbg~a0xch-KJbv(e_ffqQyItb|x2TjXPW`R`GOCTDm>>ML!pyO081SZPaTwJO64*wH zrs5P^?~Qa+`^vc4NKrT9Z6_sStEFpwSLf~MxdcD_`^u<<sqZ0ejK<Dpw@+#x7mf^g zIp@|UI1f*n-ZUg#HJ))4t;F9+3vGG-p!@M1^OPXEx!2WGrHxxT@nFl7AYaWd5^&9_ z1NW=o>pCuy<MjEQCSJu}FD~F!cT<g%A~E^Zo^rrswfMNdkbhTZOUFpSw<xjv`gMz5 zSkQLI^sj`aI`c8c$8$W4e1V=x&K6K1{u$U^cL=q(SEm2HiM>&rl1Ai@5c(9E9D%`~ zhiLU~zcvVI9OaO3Fbd`2tG_{aM2a7Vkcv9=NBEyMK*&yyd>=_lZZJxS?${`ouP#>@ zJFy|JCEb1C9VIIe%FGkE<92+3lFV;|w-tYPz1-j0Q2+YTr*=xi7*h%{KmR3VaQ2sw zULQ|oXE>^Z@@1agJAlE8@-)~1lIMkd$M4B6M#{p2y$+>Hy*VMW=^51BSAC5Mi_=|! zeJeY5-G!HU%RFX%i9Vi#+LXg;n!8`h-w>P34ZGNCIb<kCID$>JI_;qL5DAdj71SZ5 z|2vHGiuKhWN`g?Q1islQIExy(*4lJGoy#uO0*xXQo~UQf!31*whLUmYntkdwcj}Hv zOe<5x?dAhBUNZl^G-R%dN0(bn?CE*&&XxoDs_PVQyV2-z`ZA2qchx~k5%nT@4Asx3 z#84iqDtt0JSx_L<QMQj!k(pxxV8FG7$;HO~A*WQvN?^RBR+ey(<6D7KUbR=DUsANN zsE5P!L#vX+oHw?MFo@J2lXB(%o@ROk<lB)K*{Z3dRa40Pl*D{76bVm<9A0coTqg>A zx6ulx<|qfep`O#M&C&gY6L<=hxEjpXS#-UtvZ|3U9!Y6)p|-cNyt(XDJi7QjY3~bq z{kn08UT)njy`16WLt9_8r~9PRYMg=-N#gnC52`~6*8gM?Kj-Ww?z@G_x@iG<43|42 z^-Q32`TK*@@w)-n>0>hY9n!_(<J<6Qe_gPHQZp%oD}H+8xr}GEF=zM^5)mm~$$u&R z&rWZudUq%$c_3cq>yrskO^Dfeiz_8|4lM&X#RyISLTzotWiMx(V4}sdGaN*;#{w3R zoXJ&>%~7K@#IZ+Xpunz`w!Jd1KQe=RUg)M9IF6Wx)$GjzrK=WHS^)C>Q?rdqyjp$N zU*29_N4eVj`6Hp33^?`P!c3ff@wR1k`o03I=$o9<Gb4uhVC%~jY4f=YFO{x@E3<ww zKIv;FlOL21B%281cBbpvm`10M@n=aqS8yQ!0Pu{6ct#u$qj835lPqcLgkxfUTCR0` zcQ{A6yVaU4;0(GPZ?rm0ly@%S?!3g}L-o4_VPu=Qmn{7EmBwHr{!@L~d^PxF-)+oD z-i3;1DhX32d8fU{(pzkQ%JSrW>u5rt52NeR3~Wd131UKVjvLPw_fLYAd@qa$M4``i z{y`LR&-BMrh4aHQa23B7)MJ6;f`tKgtcclt$dFJ?9+(WVNWXp+^2oi-Kyxht2LdH8 zVp}oM7QG$pG`1*ZK3j!A+_C|lj!VBke_gbULQ#@jPvJvgmtYUz^SW>{Sa9e~qJBRZ ze*{TJ*HI;ExA}{&^qf?zi2pC$p*KwzBFZ9n@%>?(#N~;Szr?=As*NuQN7QwOc*%9r zC?IO2PU$;Gy!?VTtNHROy^JgZBz~f`heTQ0;yP|PK%&-#fRw{bzi^>f&;fC*T%6Xc zVUry{O-hwYFE9LIxI{lSqQyDLzwF+gEgxd6JwRG&K@|ipef?(2sc~(flx$SjFDKZD zy0i;wbvi7Qykd${!Jzjei4#SPIcUv6J{5&fk)&}CMYyGJx}Qmj1Ks5irVP>32bz~K ztHpK2=IP@i&m0p8Y8kU{853O7o}Oc8JTsczdZz$}^?q8Xdlx~S!G!*a@Kq*o^heGh z&=}E#D_)EU2uOcfvC-m4O0`VS|He5h>=$qE3i*K5qF~_+Z2tp?MXjf_sdIY0@`@RJ zc&Wnj;=A-%`uok1?O16;2eWL39iqvG0<6+WOc|{PDHwTAp#A1u>yLRDwS7_RDfJ!3 z(hn_xL1JFqDu4j@G^IBb7)giYW~V`s+r+7h`QkF_v2`u!m*C9Io^YdW|9C9;hlH}= zsFGRv(<Ibb*A@x<qbtJqb5wyU4JG_#%v}4~2xdcvZgQL3<B^1A{eq`);6$--YDpV) z>|Fm9q0a}Bcuoci-q!UkAQy14(9e;Q0Lx>~;oed(^6cu$^>09b^OiAY2&o)U!oD1z zMAX#5UqQK}XDc`-v}s-;vH>wXsgY><p<!R1gspMY&o|WmLRC9ILK6Jh-hl$)iKUCn zCrjFu$aWgRSB7S0o>gj3zzk)rpc&&I5m&3%QN88iey{rsT8fw3`FQ_7muxm*2(-Um z;)#P-npE@ytS76_HEP#8xuM()jn0K%lMu7&HBo}9o%uh|?3oXOwHwv~`@{_}k*N#x z?_Zd&IW9rI4%9g#TYE+a?~Ij!9})>Y2~lA=6>uYK^1^5QE(%tRot_O2^mA>l2?5^^ zRhPS@&o-v;0$aaAboIJE#Zh|j?F|GQ0N2|wO3nt$NNPQ9UUY2-d~bh~*8<M}eUXR} z;zV-Y2asxB%uyXVJnde;yI!jy)(T-CW!j4A(=}^*=N+ChhFdj8-I>xnr%*2~FelOx zIjGlZx!oqX8TrMP@7~&C6;+GLYZN4NIRcAJ9|5jaC7~GwTss_xzz4ugRfE^&sG<d; z%1<I3N%(i~JF`Q16-BrU>zzq6Gm=54vR9G8bq|>+fb4yA@3poBM0Bm*#e<l(DW5iT zK4{!>?i-0{SJ=;$-`^Jz_NR18O<@o?#%4q1OHYq@tNuCw|7&KTgdpXjd@P~nfz`My zLGPvW%S+l~FOLAkj+F|6T)To@J%|T{=^9NfE1y0=P1h9WwQ<1AC`koXd0322J^s?V znN<j$r8?lMHN(nzk79{tVj=}f?tLMF#3?$Kdl%BjeM}gVHW$;_r<hH{6yW(1$oC&A zeJo-|e+^bsD@F37uk!9_A;>wu$)o8IX~%JqaMG#s35(WqO4rLfK>FJd@1h<ZS(7Dw znk12(8dw%(SwM6p(X~Rg0#&feKac0@EXs%D%}7Lf8Esz(JG=J=(sf?h4E&g?4_Np0 zUiMZ`P+~V@rq)?v#KU!VIhZ^P(cwI$MUEqhKIYHfMhyOx2_;TKby^q_Z0)u}W*~1a zG1-vxE}w4TCVv)~>Bzm@q;SLw9GPi&(GPr)FBgtgONAXP3_bttu%L&c(n6JS5Lo>r zid)Dh$BtnZ)1n5kv3ILL5Qt=U*iSSi@>_B1r5KIYEO0bqnz#{Z2kF*$gL9Srlj@V- z<rZ!Ub^a41%OFN-`5;|DqP6g+)ASq2qjoRSI$P1BDf4f?R=@9ds;wI-a<$jVN2C3O z<BJ*ld(jYn215`}6!4<+?ich1J`gX(r8~C4kaxw9GtyXT6E|k+QGuu5<Y7@uXOyZ& zy&RQh`C^VNHJ|LI>>DC+ww<I7Dl~}!w;*dnQ}D&1u8I4T!P;vOsH#?%fJ-Mv48tMZ zJuP{ILe_8RVAD`?&ObA+Lt@d#ey>@*UC%6%RHQ&B>?sW}F50c9%C+F<_;c&pyt(EW zt#{mMibHZvC@GL}Q;Iv)UVER?QmEY?{0_x}n5Trh{c<8$=UTPn{y;ts_81VcuAZnG zD{b_AZ_`VdU#>S7Xhv^=S3d$yWe5~<kzQx_VYOb!tOw6^TUotDMVB|q?!|uIPY{!G zzKnr#5%YgtpGKvwC!#HMY^9G+^qT?LTmFnrLA9-#9R)Q!o@}{5KMVY1kHX7y%n7~T zJuHeqjhc_^>@=-7s*BS{3fr$t31-}=#KtSYv0!|bI##(`6t!N_ymj3v0;PmAgGIcP zJ+2|2Fyk_@az*G7+0Po~8GlULi!0(}c^zj)Y9M5DS<<Exe^5OMxJBM_or?WXlkV(# z0-(d{4{IqpgP;%I`0SxYHl0U8U$NvQZ{kD^x+%*wLo9dUwu1s=ctr@<c)XECzlrA% zDxfWkhjYg6zuGw~iX`p}M~Lq)&p}`PkN%Q406Ri@tXajZ#q&PD!#7#Eps`S=BS3!0 z<Pm&`Ripz=`=f@gYd9@&%!pT3D{>JD7eM+Zv8^#8(8xO5a|BG=0;2QWz6~JPd&o`k zEEDz6i%y|OxMwO>xA@WEl^AV0OwWIX0)CpIh`IET*mECB51^#B9WtzLqtOalOgAq3 zCd_=Ps09ewo0{f9(dU}kusz6I!f3$^e{_H{Z$P)XuMm=U{U<w@`Tnx>dWix()N{Dm z#F$YEhgJD``uA1h<}m*lEkP1S#g&UgMz~`b#s^)pd~O$Y!M4sz{YI~shqp}&Z%8zM znh7T;m}GE3q%Z!+nG)#aa&A^N&`I=p^O!vWc&lP;9@w_WQ0bjWh(lDmAa$%c;*E9X zKX>ow5X}5c`vl-AqJIBsnqo*46hdobLgvnlw$@y^B`jJvZ{cslH%##UdaU`;aWhim zMfWXmN0)jNVfSHtv<u}4rTeiw*K?rdHAKNSz*q-{3ys|Q<8eCp4xy7TMJbP{JsSaR z(i}3ih<;&VR`bGvo_~z=$lv|^`dPVNGdiiGmJ{X+d-8QEM@LH|m^-KjRkuEUg9lxm z3;xq>*aN!gZK6y<E{uGgGa+v&VrYhQpQid#G@MqLTEMpv2_B5+<xb<h$~GIi1pXq% z=WT8N!^T7@##~v2%^~owz{v!s7!&a!0OW|4+7T4ST#^L7U77$Vp2(*L6_9UNzhp-F z8Rq8vwt_f=!FMSO|GUCdGvL^0X))Sq20&abI(t;kH?lDULzeO?e$2=h5<1l38OevB zg<k$R=L)r(I?i3BBRCc;)SbDO#otD|wsds=Jk`n=Ri>>JH}f!{490E>_x7lDJt@D* z&B`)bdtF*@DUB&vCcnseKLT;IQFm?<iB+GNe-g2o%Zt&U?hC<Lr433QV@YHp-PYt} zz-cgRmT>==%u#7Jk=%+2`1(=&cST;cx1Au$GzbeWXZB(PH1aKwM-Oh%*^0r--cpyB z9qq#owa74pp7EbNeS>e7o}~$mGm;ysV0Ok>!fbB1kALkzS!appG$*=NWS(?<0|0$S zLJ;KDusKbRe)xV)>bedc=O2aYqQOS|+!Flsx4_=p?fs~yyW@x;On>TM{)S74c?O#v z%)1+|qD(#XWa3IWDJggR&bj!@vU1io@8(DK0RY>JA@w{r0BxO1L!;;I2RbNtaB!Ej z0^H$UmT8hjoB_}&Eil1R-d|}k5?NGCpzOS7D8KA4s|NsrNel`{u8sdjKy$$8cb{jh z|3(t+lz(apns+RKD{8h8Vr`3|iPW1k(j|nC>fW0f7&XnYosWEyoiAalGC=9eV2=KT zu$YT0+s|c2e6Q8MBa=*zuS8q&Z=+L-(w*^<g1m$|_W2#zf*fQcrn{_B9%5cUT@m;W ze@UuiHD1N;!Z+y9UR0f=tOhgG@!FS$hW-vacV~H6xMN*MZ1VWGdXoP-L0gJlz7Kx^ zB&;ZjfoC}MNgMneB|b|bDmp@!@EVLTz0+Ax3gUB#xhMl3BdU&T$mNy0@Ui13P>IN{ zDjxoNG`Tz}ecGtHM2NKJxS<=asRQau$UjPR--zHF<vub1W%;LX3-E2iG|RjOd5{9? zfh7Ah2Ck+#ABq~D&;fz1Mm(|iP@#}6uT&wr9V&W_XJgR6hD~l-m`sbh2rx*dR#lWN z;j1#;oNIhW!ozY`)bJFPhQQo7@_6|sWg^7$9~j%pykEc@sz7lG7l^hPvA(ulWp#tK zFxMmBE2wIS=6Z|YT<2JNt%ofNmCRv}oZPQs<5ggEkcrwI-reI})JSMM-)p2##^DzP zm9pdC&(Urd>v#`#q^T^cy_He;lP!amqzE;Hs9QB*3Vt_atlW6TR^?ZYk54sRDzPEc z_<hvo4ngD|$ZmUHVK?<mL2_vfSyJ&<t{{Px%BnGM$f~d9yHAaOxi`*jQJX$e4sDZi z3%wyO<kwIt{-Z5W^-F?Nu2>s`hE0Pl_Aqg1g^57D7;USmv*r@?$zFfQg59&>#X}(B zp`E;SNZmt?*qDGBdf<jUl;xU;V^WGDYf|UqFrjZ72SL$IOUfuN@KAxo+D$|`!mdME z`8!wC_u%?5BHq*quH3LQaF~T(!H2wRhlQkOUwN4vTgBs^jX%D#=`gnPXP^lYt6r;w z^<Pdas{ga__!39yYJkCpok!UyC;vBD&jZYptR6&yoZFtkAY&g(60sKQ5o|#+OPAL* z;l_(~I<(V3474-bAlO%83--(K9VV!hD_={-!oJlHZ?u$YXhN_N5}Ttkj>h43-D7Z4 z=&2RR3Fm<LBT;HDc>ELQJMs~#g(8O*dGFrpik}F`0rpVJ77>B4YarBNyN2_eH5vL! z>A<&V^Od?@%fzg%0>%FUG(gM0c_sxS`Uz(oUnO+89!gBUp+r)Xs5>r`$!u{#bd^WR zz9G`wv6v!5<xQy1cNtV<b77+HdVk-0kWy%OciBvG&aJD*>NBIC)jsl9*2x*hSA~r- zG`J9iv7M>D*{*Lkq)e$7lmJL=SB>~QZCvpvsule#n(pl$-Bn7z!s!j=h3y+`Uo=o! z^y^xIB`v-?oa*_c!Z7hips;%GviQIgYoZFdy6L><#c{-NrZ6O2(V%I;-<2QzZc5HX zfRyzrP`~O=Kah-}U;axleam;2<$MA8r&VtQ#0}(sN$5EE^W%g&q{sgiBQm&@H1_1D zS|r>S&|}83o{I?u`UU|zLh~ouyYwozuh@xGMQc3qsGgjY`7*1%CauD`W7nHCWU6f) znq#|JuZ5ti?TRxUv(XU8UAyOY)Aqz5csF%YhWg0T>LOkI(z$WiddINP(Z*JIpeKhJ zms@32__lA@0Z%UazjBJxs=cl3NVWiHyOdJ#TU?#t5Fu9zV)n?3?*f$oLFOT=6Ywjg zfS-=l&7w-UgbLHE-gN@zT@nAh@_A8;pXM(7IkI&@FdSN;ttqI@&#vAs(Ag`lKDH(R zB@V4%kC_YWJ$B8zuT=aH00n05eT}dTrNvzzy1*xp8@sG~<tT{w)gknya-TKxBN%nK znGW@5)b<&U-|9@=jnK6*(@bO&y?^AE<%Oufxr==W;_uLW@wlIF-rgR#<ZBaiy(2X_ zH;57GE5fUaDI7b!XkD!}kKmGrH;4cK@7fCE=Sl-S<t>@3?D_9Vu|i7#hLC2{s0(h~ z<@P3*oMrblx;3NhO#_2!)MEQZRnj%wUEL$9>=;YMdd$ia5o=e!bx6t_0Q-;ToNNBm z?#YS{F|8G)#CaD?htd!VL-|mt6<pQd?lCb{uffETG(R_zN3bL6;$s1BHTY>8@L4}J zKE<opvA#R=HtPSGuMC3@^^aluT7%EHxUX&mWZ2*T{YIL9|Np2yjL_4=m;LRrbWQ*8 zLIvTkh=Pj{d&-2=<w!0NlFRM-I^T0+frno@rZSR0mPu_l7zE9ZMWCaYXYDn)T?D== zX{i+A_HOyahEURM0GH>%(vg4e!bJFv&vgBV6SlIk@}t(co7xE7Is%?MoS@FRmR0~D zbp^avtZ~;P0ru~mJl|t}%6I~VYr7@s>mnnXZLF`w<LP#7<0O>RoO@K$v$9AgE}`6z zbGNft3IDQxAQI%wCS9NyU8W{;btsVmwYo$hT~I}?gxj<UF@tTHxWqRm!c?B|NF(K8 zTqfHha=c#?ZtC4(C<0~@j66BYWcU!fR&#whiVOjR{^l}YtHhgweAY>mxz;bSs)Auw zNAt&4MstSbu!ALercQOKN()8QtQTIIQN|sL$nTfw6!K;f6gNj&lVbnK(EbioCq0|w z{b@Y>J}PlUSpIUhCh75>v8izDl7+1%Clzcx!RX)^^sdvY9k;?c0!lhr7Y6N$%9eq& z{LVK;#tyd&CGKhe-WRT@Lb<Nlct8LE0{{S;!ym(5LS6yhJ|lFW#jZ0}|2BWuGKzP^ zHmF9+no$ORah>{GDEKXCq_*K4QeWifC=Yg;ki5Q^KVGv<j&kW$dXq`DPHrYI6o=KD z#cvbs=1VE%Y6pf1J~8C#<BY(ZcTX4;zLyMlr09g{OL%pi>Zhs_I?}wb9|-Vx22NHG zw(L{RUbpk0L#JE5Nb09XIS|DW4GRU;7ADiIeuijk98@T*k$Fj|*(NErMu%B^;jFSr z9TlM-1#<R@000Pn7{9}35BB~!W!(a77*Y2Fid=svC4?%~kaGv+KbVWl?O;G^#e0|b zflhyw7c`}ME)vANvmEJi!G(4sTC$?W!+Z=frcI*Uf%Q47A9hOO&L<!sD>xVLUADpO zG8u3A`AfUEN)<Q#XS_SyF=`Ve1b+fSN93e;j?y5Ijr}VoKWu29eWuuWWeddexC%N9 zq^|||Dg=p2t{wX1F!tACSd8?;<7j_C@IjSAKAo38>yvd+L9h9c0jl_2NOo9Qi}F?{ zdts6Sh^>82S2Nf`kK=I)!sh+LBG@!$C%>UM<~#a?Gi?(LR0?$KhGuN^=~f`4SY|zy z6gv>V2F21}l)A^n>Ih2ijFH=ESYxf+$Mhrz-m7QU6SUUxJbeBRvlrnln{=5EF1Q0W z*7A`nLXJ)*fmLqz)5e5#8H?q5zobE|@s_}wEgfo6vf~6MQySQpGv(V16f-y*sLF%T z_KDS7ox{vTdP9G4ca7|2phTWf9l1s5VM$MTSsKyK5Hjwi{s+&tv29w4+6`pbb}vl8 z^hn_0;q<1mG>9~8;Dmngi0+Rpn<!f0T+8lhm>#nxH?NdZyF|37nAek`cPb5~7Ukkc zJLpx@YUf*#)4V|+5K~5tlXyEB#iU{+S1(N>*l)ouW!@)j61H$HCSXtqrrw>I8M&p$ zJ_cWEG8(sx@01Mx>R%y91`Xin>X?dmbKO%KWkS2!o?H+fBr^`J<72BKt&N(%^MjJq zn!|P6qzgRCKfeR({Ssfd;$)X>uV!^Zz;0<%Mn;@vKasVEbyM;ZH&?X<>%`}7jlEw# zFoSm9#P4(T!N27wAp9)Zp~$i&JI~!nf=vU7Q^L_q(}p!)Wk^ouzN7)JK#}-jC5*6C z%P<>RjDt;z7Q;K*NIFA6t0Y&EBgPc-jZEjoPce|O81pLBQ6*8OX^yZbUm!UA;uCrK zr7(Y?itBlzjBcjlSTu3a(YZl&Bb67vas)&fez)auuqD{+fpr$IalxWy(7<Er9nhfN z=p;H%8Jec~vi~(~l6lya;z$<yj_85o?4NL@M|Oz@8^R;JVtnHwH!9MdQGkQj{vKze zll{J=CNE2Yg@Za82~Fq7A*(VBk8W6gniT82W!-#TkyaML&&LkoWIwj_;)@J>JlXDu zLlJt$^Is_6_IY381-K03`m9x&hXa)dfiM+a)$|5hl${*_G$$E#g{0+{{}+ZH7xu3U zsFYs(h3g|$lcpGXgnl`18>{+51f5hoUj@>4X-dS0C3RBZ*8E;n;L@mr&(10oN2;JW z`;OAk)4Wsmb%`axng(WB2}=l681NbOnlD}tJXCvT@pdMV*2iSql1~s)0f-t{Nchs0 zLFfaKwFEk|!60lVVSZ?S1o%z*p{fI@kmmLbw>-x#_ii@+fyquX59UYPjtDAF=n42R z0T1OvsXS~Vf@~n>(+l9ycLamiDGlZ>WdR~K08KpCzBN5Ik6yz}o;O=SN}efy{IgqD zIQqBk3c}oIk-7*AXcs28d9VoxT$X_qA{c%v7|jEn+uU>&-Z)(|hBdmd`$IF#4k{63 zPwO8yry0$3%B?*6fE>!wWK0o<k|=I8AkBDRUYQt!-E_ExcxVdR>SS#<Q-w>HJ0F{= zUv+$eff39NX3D=yiiE<SAEx%X8nw`=paUh=z0I@{9G}+vD-!~%+Dj)4c`|fY8r2kp zudguA5rSeZ#H?2hC#@t&)sxpoAry_lu_9P8^-U1^7mvU{1F|QWz`w<U@#|>kE#9A; z3wwOO6e46EaeB<KLO*y!cSn>)$`-g+GW(il2du+~Ti$;~8q|Wg&C@`~`oT*X560Ah zJUwGIRJL-Iu>nP>hpdLyTug4l>d^0kL<$m=z*S&$({<gF@y5e%tRH5=Br_3Oj3YM~ z>v#49pF@Tt!QmzZ#1KWoRwd0yI-$UdEA!p@7$eebEyaDqYC+PhN*mjKLe%0^JBwy& z@_gU14wOQ*i_qAI!?C=M#m>q#b5`jg78Ec0o+o!{d`!KpcTV#vZC1@j#}N+d&81dT zlB`BN(A9Tpcb;dOL>*&t0}(M~$Qxml0tNb{cbBeQI09VO2?Y*DZ#qu>3gn18J)i#4 zBRRMT9@5J8tH?f#iqn>Lydf$g&$)>n$Kjsj4`rLf{q>7ZO#t<rY?jZV=~S}7%6B_^ zsWG^;KxwAjVXMK{KP0QEj~^+_)f>08fmZw|R%(Y2x-n6x(9b{!`60W7SJm%<^qmyw zdQmZSvRV~;cqh07tY>atXNgMd8`TsbdvJ#>F3ef}`93RjPSqw3O-+>+5+r-=8GOtR zuj|xzLd`-ZHyz4Meg~nOE}`}xFpC@C8~%^<kPetpm&veX9HYP~mGhod0a9=-Zdg$_ zTO!qBfqW(DK^J6q9%N;RLhd-h1gF5Xm~c2gS0;w&%u1&-E#4%kz4IOYbyWbirDq2Q z+FQ4OZcp(?8wulg!xO#g$@<Kc2FKL&)V3fMOL>Ya0rJ=T(9-YfkbFQyP<7-0obZ-k zi>1-&%wH}RT#dKU#(Rwi))?vj@@Dw32bjrTKILy&H;IQtwp=iX`=n#&R32Xx&Uq6$ z02BVyX#d(Z;67*LgDRJ4j^gx^r#3B$RMpWw`*tIt#KLHH4B%vH%`&?`HzimI0$_z) zpUwd;qK<U5^Fp;4J9+8SpgjT`9B=?BdxO&D5!&@VuwE6q5z<sICsbd%Bw8EKcE0#o zp(SAn1SQaV`y4ZJX)g!-o>z9K0MyQA@BkKSIF#^ttLQL5YFgBqoi8Uv`n_el@PHMH zEHdI1)olSjU!*n|C#7GQw2A6^0kA6bw}J-DZN=c#ofVaGcgCoFq;mr+3_Ac?)-5at zd&Ox0sG6QHl#IoXNyyn<f>jivLj^IQyKy<;AAmgv_fzbbyved5d0MT}vtkXK;SaBD zI>cACrmkyoHU1(qNqZ=37Du>Qn<1~O@nBK!PRfsJ{%<7KRZv`}g<<`MvWwKdpduD} zuaO3E&Q^UO3R)O$wFzcnK=JBY<c#rG!lw|vrY0X`j~w2Z6LbjQTk-^I$uJ&kK3fdW zmy|g=P*$-vayF<y0cvo`em*K%H2N%D60qe^=8(Q%o3PcRa(~{>r0b=o*|m$P5s2Vm zM%Ax!M@bF(sNgY>*S?WDut<Ls2j$bjDQ^@L1oK)0WZc4)yer3nqBP&9YOeuWB1$7> zD)z4M)7U9Rci<`k#k0@@{L{(2IhcCDzVt%O=F%dcINpp^*XfQ&>)gdNF;C_hTvIek zaBlGD%+7`klkHj%)<>xCJultHb8l2EyBJN>;&px6_-CQZaONb1sxJ1-?xKH#WA2Y^ z5%(CUtC@ej+y71sAg6pnQ7c2zT{!lT8_AP>3VF~j9?)~UTJ<-EJX(%yxvdsPoRHTq z1OeHQud0mY1LS?GlzK)qj;90fJXHrDf2kxXqRx?Lbz7=wuzQGI`jd2kR2${Jue|nx z3(7yHasZCU;|ZeV<TNI&m@P=5A7TAV{h>v7DA8Qg*HbEb0;%O@*nE5Flvntl_5?|+ z-H(6?Aa^NeJX1fA>%XF7-i2jMvNvGoQud73m>Wu{nf|zR<0l7SER0iR8rU!LdUR<; zicMe4n5=U0BTq9{UagCsKGX%{vR$8_OF~`uvE%!M1H*NX@4H6(!ObB8Sf_iL=?KNy zbC@bOh}N(DFSC;++`MFVxK}O3#QD1C$ESPFPp%mY+Al^vk~iIDySBxzk<ZuWkq7-! z-ghuJOI8-^{eXcekm;`_z9~=uusqS4gH`7s@b>ydI0cg;&k_15EWJ=`tNTwWg^?;i zQuKPk=>Jm%i#2KUTOm@L;-eiq7Ne*JiB}L#NBuKs&)9@N<Fso`KHEK2_{f?eKOU|) zqhnljTL%rHOnKet21GaD_D$GhiL3}*s?0tX{8oM8tTbU}6j*l58A}d3Tmq>tiabAE ztPI0M--OzX7h|BEqe+yvW&ct0x7<PYHiMIfh5j>Y42D*;SBk2B<0|wR*4@}?K)&%4 zmi0;)%;>9$GaP$g>8Ft^FFgiz=zA8?eq?vyxwz5kPXc=;93_T2AeBO86LtfY{feP? z)O7|>qER_goQ@iB-NH49H>j}^;=GZy0+#&6a-e4?C@moE>L+L5gPK6hJgRjZTieXb z57vF#eg~~Q1^@r<HWB;?EGyHvwli5y^$pqh!@D*wr!j!p0ECbpkp{r=RzTD#kBkPo zJcTdUfOqBm(cKLCv287(v50?@`dV|d`s4HMbT|v-uGyR-DkJ#P=RrA1%<-wfQ!jhH zR-~qS)VY@1G;3a@sGowZAX-b2)&ghkc6_R8Vf00r{|KK*3V?tYo!7jHy-0Dk5K-`q zNX<Eg+RT}IJGfu<iY}oRD2Nns#u>ftuh+pj!n;@XSu%uC|5jm%902lM4?Cb7U-y;o z+d-0+ZS?AKebp664sN6VQ<u#BiFnzm{XHl1{4T{6b>b_?q$%d%h<vfrd?yM*kmdx5 z0-2Quk12EL<FgnL$Vh%=*AjK!!m!Horo+1KXy?$e;EJ;uPAi1@EGYv+$`19ij-r$_ zfa97)rGji3j-J!c)N9iG=(DFIFrbgr#6g$PIZN)Gn(Y?d>9+(!=Sdx(2gk+aZHHdK z!*lw_yjXUNrM+x@W(`QPDU0@(;1qs$RiI-7a8SJsKdrbBlqdf~`h`2@zc&5L%(Dhc zvxtfME*g$mCcvLGm5Lm(787V4`xB9Gut>re1cbMxkKjQ5n3BgAH9t_o$T7ZR>eyh2 zDsOrksL=H}QegYHyJ}#~{$B0@0IO<rnQd7Qx35;@UW_n9gAOOsTEX;`!|@2wK2No1 z-H_w}kR03sky{mwL5Kr+BWTSAChU>Jw<0t$KWr!?Wu!cezzIY!iW}RsN_(zRaFqcm zOh5PSG6mTzQg4spo2=Ua-+OY<+5rN8>XL={@zJKf9;BiPRYjQ@lv?XMpT|l6*Mxx7 z+q(~3{rL{jCR>3CHIs+dR#%k_`$-3{K~v2AEQ1m<021-c`PY^?+{=leN$&fGjur_g zBL`zjQ#SkDolDdG?MO8i4zm^!B1=dA7XDKY%#711Nf=$9YvY()Sy;1Ruz>!Rk0rBn zl0v0mBwdM>bN6%;T!CsrGWQcEm+{a|@Cmd3w=()B7^WaZx<gE71F|LGSi53<UYAuL zmxVymh{1$NL5ZMwY}AzU(^R?}dw|NHBE_|NCd_=Pb)Mhw*n=_)yYpX>y0gHC^YS!H zk2{XNeF!A!(>gTq*F0cM&P(<y$bb-m{~<VbmL$4~rCxRX6S6H+MPnKwCW<1cCImj6 zHP+2wlxnMzk!>7%K9UV2yux8+$@bgyNx<5`LiHzHz}H{o1fLzU)l&zdQDQxzB!UuN zcD0L#;DI6$t4N9k;n8l&x69cG3#(SUmx0y~EqYM1sfFfoXNDH3&Z)2Jg%V0>CDNVs zD)=;`hRjtNQ!K`2lTbD+n6cfttU_t`^ux%#cW>Ii4m$qEv_|&ROp1von5NJI8~c^7 zLgd=`B?`%_mhSfQ3EtS_%HQXy#7&?v`*z5U*d{OXN|ts}iQhk1zYqRJwrl!t(>vBj zzz`Jg?KVV%fN~(_Q8D)XWqLo2W(=I?AQ|X0>No-uAcP_W@Y`sq#pYX!{FOVQvf1_+ zKC9tYQfL{Uhhxt5#)AQ23qmN+nESt-uieS%*`^&oyR;v~19I*9+thlE(gmo7^Hh1# z2c`Q$0!?0q*FNSV&4O)G$izE8y0&&#j?@jZSn`uhNiUM`r`T#UY_i;5bmDEVsfa_S zmKlTAsYJ2fa)JI^vO-594q2O#$ilg0@7ziHO}M92FOAr!y}25ac4}wLMdJKUwE}|! zF6T1S0VcC~?M+#f$2uTwJs|um$ijZ(mo$BZPJYx35nEy<G~E02C`LO{WC)WvWMT;$ zZZqjjMZcN`$~WLPx<{#dkdv>=2W~t>N4p(P0BMHxnmP`NpDPZ^#E5ULf!2nlW^ufp z01h#y4^TsnTfdILJr46P=$dGd2vd2W|Bo6}lW@QHJ9$1x#e>5~eh3LKo6q(q!STr} zbxY?=nXyE($m5cBVFDQA>4K~9BAJoTPQV$}gqdNi_3MclFP0IoWXGuLRxbM>Mp90p zYgs@5bg)v8i%JYtRStQZu6ffMoYzSsW>(Nq)X^>uuMeQ2zZ@+3Pae2dM!j7sEamCQ zg0!AufmFo?XLGNc8j-0-esp6&C+Z>$$%oYvj>uifWnE0>O(~x?3L-Pp`I!-y13hqT zF-&Keh8y5Cd!gUsy1dpU@g=L}Jj`B4?j8!vaQY2N$J$zOGhTctto{1PN0N));dK)S z_ia_4(!j}V-Yh^`lQ`DO6jclQhqO^tv-7}bmOYbrOx-`VRpDMlRS^VWEOwU8w!+ps zRwDb0Xv7hMU;4h70Ck7Hpv467B>|sdi0%s_+!251)=gOF6UOOgOC7b&^$?s>X%?pg zQq48Qu)bId5!27X{0}^2_FekQAf;y6f#)x(`cb75I}2lQz5BXUvz|QFWN0aP?2Oc@ z_~QAmnW~!_n3vxo+-ksD8CTNRftxYeDkj6Fc#0FPYPXyhFm5GqX=@`lM!6iS?CqS^ zXRe7g9{Zl#ss-S#8!tU<M9X)mMB#EOr2Lmn_&H2<Rpn~>Uq5JQa6~I5$dW{ey~D8Y zpRClt?6BUU^?wSk5HS5CF&WVGZXd-VBTw<h6bOw+48CU&Qt3?g5;QV~<htAeN*gv4 zt_FaPSVF-hOd1=)K4Wvo)I?vPhBVV)D+BX>@6SH<4_`NDETzDH=Q{NuW(Ad&C2%yp z>%KvPr<eyGX-Sn7WPV=w)y$;U0!|0T&@Y!4Pw75TcZvIw<==W**i`c-%yXC_CHI-l z5u+V4B0U0=mo-}1x`EXf?H_H(phE7AA2xAg@40mt2h!W?S3$r&9I~i+?kl{n1HG0o z5?r+4C_`Dkt7>Fu9DnrspFiNE0AP>NBfr*4nod#f$cakEtBCZ%yG%MpV6OJop0BBw zq)?imU<*0Ddeo`^G!q1-XXNot!ob^S)wzIUykeEo08a3lAS&OP2iM{D_SN1y<sVAS zkn!{Ez~Z#_k36xsg7z-yo^2Ty+DrdsG(WZ5Zc)wfSkPo1ud~St-1G}y{qhJGeZiji z;CR&K5;k>sKmTGU*t<I30fs;$$v05OdIDME1c%@Cr3?Erm9XV8mPjViTsvlA$nzGS z#7bzeua$G22WU?-z%_A#LD&LILXlF3?5sqp^^oisiIHNTR8g{Hn))z5^E3qnS5HE| zDllc`^3PABf5BmFLVX8JRPHknEf+SD-MFX`&o3A{4>JR$R*^9?xoZty4yC&j!^MgN z@PO2V;cZ+z(mQ+dz7F`e6ZomYgCJ07bRUeqb#iw2jXruSwB@(kWu4|Z_^oLHlkrg@ zm_JE_E0&~|e)%NhxQ(;ZEh-1OtLlSX+IJeMz1jr*JP!$?ptD+$7KGM8^iQ%;W=i9i zej~N&)<6rQkP1erH)3!lgr*$6yq-FKeD`r(_xMkzn2%ry0Vqt7`e36Bv;hWa^a0PE zqFDe*%`khbLw^s{Q9$#8i_Z$0c~TIsDG9EnzmV<=gHb7BPtkqpy57!X9&o_MV~M$k z2n=2GqkXioG`m;>CiGpCb(74R`S}*OC}=t}S{7;8MEew6SKh)Tp95oo40xgUr}`F$ zw=8Jfs_RM1JeTQ{H#|$9_&MH`C1D6j>O7?s>Aco-yreQ)ftBv7C~nGxKaNyKEU+x3 zRQ9ZS(b^Olyt1$zC1QQMZrehq8OoU=p+}YIDUH|AjQ-3WWx_3VnrDX+-V^gIVSVnl zUQDsMeEcmzgf}2->E;adlz)H!5c`0e+QD^DY2=g~O}-u`hCqa$?L?`^vR+MIE~hlQ z(J}0!jac*-dzK;0JXd}1gt1nto)O>PhfjAK?p9%Q3hY0?;CTyI3%eWJyAW;wG4XJe z8Yqm@v_>}jaXbwHjPxn|sKpGOCj2aH!2{|ijdN7GDm~bZmrv2oI6)l9V-a@7L2nXu zX4%_<%ARwXC2Mz&@0PlXa%TkdsEuM&bC1+Hl!4$_zw+P6kYhdCYiMtGiBoMPTgb7E zq&a2yZh~TR)j<PTON3U){MKv-%V5Tbd*8lfdzB5@J_@|T1g~*ry{3PL@h#;(1Ep~y zV+r`_MskQ?0R_E1wnMci*neG8yN1Uxt<J4%^?{w75^--$>-52Mgq`T5#LV&{B<w*s zc%zaQ_6*@yn-qNd!}zHXDNuDkZHa5)$b35I1$jUBFJerG(h$qwj4BP=Hf%VrPtzfR zTO5rGFwvovD$z!!5@BTRGvHMp%y4jq^Gkkvnx@zicybutMTL7!*dnXvg5%9FnU8M^ z<D?1Y=xf@S5+=qsa_%$#bKyGqim@FMZI9~*z)0g}Ski)wUM7S&$pfLgs{dG_m*cgf z@<{q_k1&J{@soCxUDy}<0LM4~EP9{x4>d$F2dXEH+*M?vf`y}>q!-+4Cyc$|9tOZS ze@3Y4a(dKHe*n}1Q1BqCm^#aBAq)t$OO-yhdIMOQ;ZAO^UPCZzV=)8~SCt*y^n-NP zMfv?@6f1tnHFc6fh$dt673P(=qC;8;#MD$ag&)UL%jihcU%Do)P=-y+X_rfA!T#uI zWptcaN_bo=3eRjqjiTi81kZjZjZ5C8B`8vE66pvi(GDI8$8WDleSOOs12d>BU%lq; zfT4jnwu3F(c=B{oq9w2SrS898OLQDP{Uk_g%a2SZOoI^|1s``>kj=z`nan#qRZ$<> zQTQ(JX@G>!PgMxfwN$cDgj3yIDi?)ktrhwU;zZEHcIvO&_n^mbh&F`tA{FIs$?yOe zJb8Vj?|x8R-i7thEz0emrQo`QUPeeVI3K*qZ4|4Ml@--rR#CojExa~cA6uihf<CS2 zxV|#Eu?rWMM2#r3##?qfdyOTB^<({NyMv(nujy=z|D2KJZIfkHl5w{w5UY4R?rg?B zovnpj)`OisI_3$*@`T(BHQu)Bwlq^ZQb60kD;JNga<%)fAdD0Re`KcxkGlW%Kg5TV z#Tc&h#gti64y!<Ew-cj>t$DCNyP5>sT!Tit!v8aGnNJ}2sVsX&ZbY_v&T{!+FxmNh zebR^q8}9&%2<Qi^2**R+C0!#|2g0PU&sFoO!LTAU*coH6?`1jX>B3oI>w91JkEo{Y ziQ;u4$veL}%4b#j4c~6ldC}u*>jc*k!GDBc|B~deh?i_$OT4nIC2RM1xQ<ub1C_7J z`23Ub%i&+@5s--KCbrjMt~H<?Gsuqj<R}Q8@7LeyVC`Mik4WM_kT5H_`!o<e-xZSb zkNCSq4K1N<m{Aq>p!5c9R7TzbvJ~Cp{;I;^Wr*>mrCVO_ah&xP%|R%iSeH0QaTr?k zEZhqCTUt%gP|Q=h!atB4NfPTwsp#|nbcRkelEbY&7|u}F>><S4lBThcV!BUyp2l{M zA!<d==B?OldC#h?2BqN9#2W0<gC~68rtr1g-M??6np@+u1HQq)-FB_B{ZZ#WD^z9J z*{&WJR|C#Ak;iUQN^OHxyFvv{?=?Z&gTmvHcQGMBE}?&}ITRzli`KBgss}j7r9CBT zoBxiIRM10JK`KVE<ezlEfx#q$Ky{Dcb7v^r08T(oP)OAbUgdQ(^o(<}ubv%|5E=U6 z0`o?=(R+4|6P&b3+~ttijekyt7_U%%9^A9Ap;#L!0zP(1-k4~ke=b|tw0w5*<Ku4~ zqMD2KbSQ135MVnGHW5GnoQq9Eyv3?V$Ei;pd!O?icPhKYNO-^g(_F>MZrxAULQeAx z;NI{Ws~u0VyUL6qEAFM=M@pb2d1Q2q?yCN$2KnE2Ir#nZhq*l3c`+gpBNpO9<A6D! zmh+c??&Dw`94l}bf4^<(9nqYKYZLyY9e+HG<#tMndbOVU`0N>M*}g%Zjd=IeCtWdE zxXguHIUA|JimLq4i!2Uze237y_JUva7<2B+NjL8D6T^xRZ>}+M5l%J%%iqf~baY<{ zcuDWUpKb?5Ci3_LA4yIF9*R^0oT6+*(yMly{^5#VmE11xBK2$`>-c`*X=~~D@+bIw zE^MVHPuCI9K~V+bG5#fw{TqALQR?lJ?83>A8DM7j+FO)JikF)4h{W7eTJ7hx(C?rW zaVg{fRKd_MXC;YQ=gd8Rt&e{n2|BCC8`F?gkYM3tq=u*t7qGrv#H^AzKT_sycq*y% zs0#4oCE;gW0Ma)vkGqM1((BDbNfTf7>!tvNwn64Z+74%Aw}>zaUBB`Y{N_LJNbW0} zhMWcVOFgaO<aJn@t5FZ8$yi#TvJVREur<0p!w!gXBJsCU*2yB)ncpd07&~yUg5XHw zLo`VYx#HJ82H>_ApprEW{I*;nj~aXw4TOGWAG&g_?1^^yRDo&LRskXJoiidcK<2+u zkd;vwOBCI!Nf-l;w#D-%*q1kqgFZ9uiBj)p#xLLNS4~eP^7jK>P-j<AJudoXw;Mn) z%Mjb|YN2)t$2=(M+ew!h4(rQZix?mOLfQYdjvcR0tA&`~+u0HRF%goje$6OKhun^w z-_cz!+QA3BSnqcZp9I6E&l7XVuPlrE^en}Mp?j#npf&I~&^*X<eo|dk8S`6NsMrP? zUak?92aBxDXh8BgMi-=??tDzjDji4mEm#kIB;V)`Q`CA>JD0Y;f6Aeb9cdmqQZ9ZO z>_RR4L%SojXIi?*eCj8;ke|4u-biM!wW~M0VPsAb`%i2sfiiig)rfg2DlAXSF$>*Y zk({woP3hAEl@J5H`CL|@IL&?iUcBf1tky4ot_8}Dn_@ao=Agn;QP#T10Yg)2%A^1> z=T{d=tG9*}P*Pt~%$X?@U|Xb1&d7d5Xe&%hMr>e_IPfnjd^fD&$OFyaO1JQJ`6mIb zMpT;7;Gp)FzDb8A|NI&AUVmY<vx;qLFCPeQL&<}9<*xMP8^+sb)ZiOx1A0jS0kMA7 z;Wcq0q-|cQ&@)kR02-o8;V||=EXLEDNS|T~D>x;w)G)wO1<VM8qG-A0eN3E<75lCQ z$BuC{mqH2Oy0UgeZ!WHbVo?Mj<eJ_2^Wm_3jGLtdfaqMDXjqG7n5C;o?tVGJo4<EP z-X?hL&Fz5zd}?_?O-OJ^w1<Bogo^w8A)YQsvQnBCTcS{kPCB~a?8xe2Gb$rZ9z<&r znl@cWw{BtrLF^il{alB?N_&ncZfgIK_%94@;BqL)+xSS`Q)Y^)>Bhb}bO%Ee#y4x7 zJnDTq$hY{>he{4RqVjQ5EKaw%0C68@2+XEx;Es#8BzpRf)Vk+1yg`dKe)wr6a=n_N zuTKG6Y8`wYzWc$S^wis9V&&a{!7{LZpyYYY%@PfYoqu_yl;eAXUG&sjnU)V;^c3r! z9=y0>N_uoz#pQqAFpZtWx#A*EJz`yehRD%b39TIaRqW#6GR%L-k?ieTu5TrD_Uc^< zap9+jvUWZe4BxR<W`8Jw&f|@aXfaob>5@`bq6|%&f4>P3X2Y6rfm5&~H2+zpfYw6) z|60iI_UPO~IOWc{hSl_+r_HCfGb4SNPpZH72mgt;XL?;1LOsc~5v^sQXz0M{iE7|3 zBplgaFy{?`&-dt-L+aFAAf7?;1MnwKOd?qjBKzr8Ahrg!ae&+xCI+zuJ?)yugx6aH zHmZKhladweWYhCRK>tEZB#6$SxNjUxdQW>d5<=GAvdGn$y{~-B=)oK1R^KZxKZBrR zQF`4@_3+RRJ*N_MWr2lHYm>JVHs1z&GXr6NyaI%aq9-=%s~E63kW?^+K+4<`Rr{M$ zM)=|i>J&|i>E@dFo`SSktw?xO!nJE>g2z*~l3}Lz<tx@(H?Y0=1$9L?#|ynIgT3?@ z18?8blPS5;R_yw}C-^n$Bqe3oK-i^kE6dGRk$`37f>JIAtSfd1jUCC|H8pT}tY8$| z;g>-fF6F#4tiI<}_*#h@dtOiLJ8SOyzdf0kyl7hS2wIL`OQbd!b%XDt&eym~tk<Gy z{pk3HFCGwhDDy~Vrqd`#BGz5lMQ<kQMJL(S1H9y%4QdSnW=6{lqT0wfxV~6SboD7G zmBJ-uq+86>G9niKpR}mH9qEW=BG_ot(1`tMl*h5&VOO7Mp$yp<lyRh+AJ{hq&{JA- zIW=K9*!52(T_oYMCkF@u*MQLIR{5Xkgwuc>+f@`CT5n1oB@|0A_3+~uSd5==Ao@-j z0Fk2Ijg2u{5%NnEVW1Q&;kYcy45iXjSL&VcI43mCIGN#|;U@iZxbu>&36MRtqZ>cs zZZd`jGWb>*aYlPPJw*`}w1(_1PX9Xx)K7Xy%@bt`vhNtx2J;G+TMy)>RSRpim}=wG z!D7L&N2@(@L6L5JeihQiA>$X}iu3^+Jzx$q!U5%L4nK0{Fw2Gaqujn&hIH<5zfLyb ziH1^#@IFRD^|cxet1tm{5+2oooaCOfoIP+`EG5qUVMvpmbJ3=+b#gCKxP#W|;~+&0 zYDGBQk$LB+j0^>NAlgmu7D!0tqlAr!)C%w?EskHbU;E{_Vd?@`S(v^z(tSNV(*>;O z#e;tp8PE9O7TiX6XH^ndT|}oS+aVkY=Q`~XH|a=4hr|bzU%(0QE_-u(CTcitQT%pg z#p@g^9?%*RH@aoo90L_MdR3tkcAS$J20;xF@(@BP9X=B_L8>%<mTzM4kTYzdMp&wt zQqBW!ZfdG({mP?TB3g%1${)FGBefbj{y=Ol4O`5jHkF7#s_a>n1eW$AkO9Np!Z}xu z%2Dy#U_4E8WMs35G>$Uyi!3IkE|1x$3cBqh7x^$COQ{42{|FWBc)6xv_?PLbz`zWy z2tGRvR-u)tfYi{_FXZ0Cs_l=VH;;u&Lu`WQdT>LX0oRSulJOPH`eB}z+*L~|rlX;k zOseNlPWWo|>5HnfWEA}H)GYjihKIs0K(viOe0dh>o)tT!DG7*ATpGex`EdbMVrSl2 zchw#Ue?kp<ee0kzS`}oD+VX$sF?lhfUt&&dvXo!0C!kFB=RItk;>(PHBdB2n6v<|G z_D%mh-d(HGR509&y8Drp88Vjb3r|037L{M^{6tx`!gf$c7Qn%rj(dn7I0<Hzf}K{8 ziai1;#}f1qU_jgA?@mJuPL<1vV^n_lHnlyW$Z|@D)Y8)@TugdIqP@D^Wvg^KIc-Qv z@93~eY7pNPdFxD}-C1=P-?J0jHEKLu0P~4<RNs^IpHO3X;pIXEYRzdKJ`(b;_@qM| zqpL+j&b*Lv?Azkt0fH{a|IwpW_Nds=$_;)K;?+j8gh^c#yWhnk{6o~P1aE=XHd{?Z zur88x!tG}%;`3<M^D0e!*0K*|kOF0_K>4N)z{J%8Aj-gs4zm0kxGay+VtXO>w^zJz zQbzJD$o(@?{>U)u7UuiCJzY&%qaHgX(ZMCS1@?F2=PzaFb<Bpj-{DXhh#s0>zxJxq z+g9*e8*Cw>j<v1?tUh+&zDYW5n90x1Ld@@6JWy)8Q-AVl9v1*6k&uOTAwrKBtBGUn z;RqWiE<V)3e_v;nIF=kF3=L~DOw~9(CHc(Bl-{yd>~<=tOg%{*&^GNNG{b#Ub;_g^ zf@v}VUZCSTp%>MHynka9wfiSYJ%vgMhc6{`T@6KgO1iZS)++lkZ<2hGK28s>E$I1k z^{>^}E|e4P{lHU_RK%w8K6xG~^+dS367yc+BaE%wZ=xY@W1;{5>&|-c7p0G@%heR< ze?9+;e_a}$ESr0mpX&A=w59FgZhy|878J)xy6&A5hx(>qSoi}9;LGdfIrkG>taVSR zY%Kjw758hUz)ZTk?TW2RA20=+((yDVwW{y2m@9M!AOZ*~$u4%F{@EkhvNS2ZmZ^mg z0bG8%ocRYwMPDw&mY*4m@}A@YPE1@_TFIgbzs<yhgFO)-xRrE|83jOXgnkeh6AKr! zwMTkk?FdF?ecQblp6A%Je9H9+R5SYp$<#(SxG0qi7~*SCZS;xYM*Rqn>G)zp663h# z4;CD^<v3esQ7{JiNq%0{C-<PPh^~3oktAI*bI)WLbrDa4S*O7I#w%HoY*D^+8k~Ni z?{0j`-*Ab=_vlTAjGrXawz3j-Hh}4T|E0eJi4aG(y8E)ouQno{WKEkt;Xkw`A&Z_S z=)E$Q`6?Q_;F)iW@L%^m1tN=^4z@~5ct^CtTwh$h!EWlG`Q0HKxc&P!+D?BRfpb$5 z9Q(NSKb<2zB?*<IfqXTZfENckJui3gV$e!_jQQQ&+JL;JEo8F7@;lOW7B;PIizHb& zqEuDt-&jls-}#kIDU`<UfuWvxe)P=d{<B26h<9jpE#aU^-LG%BsvnbKlNlO`u86A9 zqJVp;_JaA2wVJ<9t*H`teL#H#G7aeh2`s({xiXvSNrejo#{ja1D<FTjH@QLxx4!PL zvV=ZEo5T-fqPTq@OG!h%95G}9+bINML#mV0f3j%04Z(G5sPIZ)ZCG{?l$~krt=dk_ zBzGx^MWar2e&cKQIAu+MY*6+BYe5DA?}5Izpo|_^^y<J7AuN6n7Mh(@kX;sMd5P}r zrtRtl5%d9AT>tXcF;BNrnA`e8d>0&`+Jh9ku5R_4Jm+in_B%HGW%{Z;^-m=ht&tL< zd|&(7GJ*k}yxn_9jhsE(`Z6*qK0F%j)8vxRB~{J#j=?swP-7j`Qf!D!mVy~5cWBc< zAhW>2*=R_-gF7>vPUz5)l*p`Ee=X~!6%&|3-Dc=Z42WcQPw$x*5JpJ4pt8Im+j#7u z1NftnwfnZQifv6+hf>j;EZ+^J0%IFM>71-$l3(gu=8}x%w;i&}E<ypT4YR)p_f5`% z@305mv96At2plf0OMg$%o2QRdsO8lxCa?3|-x2jJ(aSj7b8z3_Qve(XvrP$1RXzD1 z$gTJ!^#6*vU!JdDLi))}dkIIU{-BS)y?=^|4x_rlifHqTiRGL|J}uFwpqG^<#H5#9 z32ydgea=K?mz&)lo+T&(OII|x<(6tD?!BcIY4Gc-Rw>8ojEdd*KioLW9QqTTa~V2i z6?=UIzZ(`-VHUG+{0X{w@DWsdx;Hy?AbVd)R0m=2!&o-t`9!k#HQk9yMvolNAZLbg z_elvusI>wCJ^mYUqeb7lb7ZNdcYUHC7jAt{RWDTb@C5iS(+3}ZjtM$2Q@rJGw!4@Q zqO`PO9}5|HS?>o`vQh+Ap_G(zw<^TwzleOuzQZu@Zh&UKcw1pctK7zWXpvhH5(l?h zU^N(DC=!0bFt7)cyFT}81fmhQg6NlOhQuO{uzGOz9nvhX+L%+nJ_7j`<lf4pVt%7z zslcA^9gb8XH48{hex_?%&%-1M>}z95Hak<A&bHx0OUz2yjIyGvQ_T~lb}7f{&X^S7 zJMk-krPZp1d^^4Ey3P>f{&=o|9O6*qO_cnu^?mUch75X=6lZ$qHE}aeXH9+*Sb_dj zmFG&-zs5Y3@<nSiSa(+~l(z;d1>#&u7X$NrUgOLJsybdFKy0)f^H{t%u^#P6FBkU< z9%JZkF=q@N`tc8eB7#^7f%iy%XF6{B|HknkC>~41)}q;;#Nm<T2h7lv-P*ZeV2NUm zvg1$^qX(q0RU5o4Cucu;3Z%mrj;vOJVW&&hkvwekX?#T==<JBEK$25|%i3PF=BP=Q zmAtQ)v_vl@3<kl{XnjIj9adF02HuA>;vy0kofT7xX3h^7UvtPnz%l=JIGTy+eei+m zUt}S!{urG={26r21G!&hzsnH|_3|ChLZm$uPJ#Zn?eP~PBWX<CfpkCkh2R-)%9>IU zJbWb)<`!4%P`dS98Mgx+pg2I>9$|Gn$?9|$>GQ#fc!nj}!Rz{n*`VY4pbk&WF4okJ z8lLSjHqzB<pvwwt^!d88d^EF9O_^251^^D^m0eWaNxpEh`C&2-?7Mr1Q|8nqZI1K4 zo(FhB9Y$b~aQzawPh=cT)uGz;6gI=`fJ**GQ$<DixwQJ&N$acfe%XbVtzF(7e(N1# zApnX%PgVIht_Q%ER?z)EXZ``qlhjdjW2P`1#^G_nLP8~kTVCL88;qPUhSgUs{(pHf z>v_i9Ij<We>5E0bZlJ{BJ}{a6{5_+`94(A~+;A1%FHHHa$W#%epr66N&~?@5toOXE zD{r(W4PbX>>0l7f(9m6!KCykFSaseZcszYRuhx%|wHv*>V&$&&R|t0H5rpE(AVLYY zUc4^iE4mF$LX^QJ9Z}r;nk@%Z`u^1tE0TvIl<-W)hh*N9c1@k^nDT@^6Ioc?X{^HX z&#{QR+8EtYW%x0G!<Tc{Qg8<S_4#(pDl?btRYPy%b{qV)!0tdc$!XmPB;Wgf09Gc) zZT<0ff{g!tvxh*XvdDBJuM;+OST8m#Q)E*byqq=<o6@05?uH|qg+H&?G+aH;623Sz zlImtN%S|{u&D~&tmIhT~ks~e*>4QQ1ICkng%PrwyB|_WYa9k9=N1%^L!Zh5bz}Wme z5?nf8EH_k~zA6j{+1QO-6V8Ip?_cPvM1u3V)Q@eGHpTpSK8`8{hjm%T1?MzVUkU+j zT-rQgDMg1uj6M{<L<OE6j}9$jbTiO3XXi9HXMorHji<K7Z?~DE?J*@}vuou<)37&B zAC>Y|7;4CI64!P+!(y!<$&AKRNVa38+4HQJBUIO;0B-mnE+3Ovc#31AK|TjChG)fb z%2urD_xb(UbQrrt#4o`=3`MX8Bp<)~A}?otx1;mLYMO9<=fA7&{`o7OFG|gqxs00G z<8e+Hgm?w&KQ3MM^F&4@Zl}~0EB58WPnEI}iE(Z9;A$|Y9Y?ZM2|JuX9mRbl;#QTB zybh=6v6)gK<1?;fudb?^70iL)r%KVH(hl6fElH0uRgssu<?PiZ)RpH&f_xf9o>~)X zh{uSFz3r{}d;#mx8_7BfAR_1>C3-+qh2ThUnU9=RK^;erd!rV;q$!;kgi)S_CE0GI zY=!@J(~bAjb2oN`1g(1V2v%W!iIAtzBA46{ZJCbxyhY5=J~}_dnOHIqq2Uw<PzHFI z7AxKRVIU5F|MU^|XZnPK%qR{h#AnA8Wiy@=PMu|;Bqdb~aQ;<9+BAPOQ(Aa6q|)`B zK3Dmo<x-kL2bExr?vsF_2inGcV&vPYdhS=4`g^rN9e7p!d9_)2K_y21svCb!9DY!O zwS?8EI3JQ>o-2^E7J*??n&O_g2U%_&7pYood6dwxF9(Gy!J$wrU%Lj_>KqnCzNi9A z<*|Itf1WJ8P~xc(M3{vP05vvxsCm{C&Lt_38N334Fta~@=G0MG6_n>hYy6^c$ZTJ4 z1M6heC_c<?=p2sYtT;{9?y9y?E9IH(XbrG0^mK#ysMIhB60TU}Ya!xWw`nh-LtU$d z$2XZC1c@MV!EW58r8z&wfmXiX5MK3IxdZQR*fl2-bFhI~k;obc<}&ucF_NzdZR9;R zf5EwMM)i^;yQ~k843umH4p-_Guit+9NXh`QdGrHQcZ?>k`A7giIT|*mXi`I=+Hl+2 zN&<S(?A|JnF2=Fat7JIG)0WbiXZCOI6py8G7{=o&EBKSYb~^DtPS;8j2VQ$H3>6C# zAOca&?~4~iL;ebI>qEo=WvbFu`s61<kw05Fd?qn)1BmFf`LiwV$UMX+m?OPzXHqK7 zU~dWk@mG}@`ZWdUqqw)udnG({js$4aE74YlpO~WT3r!JL)4y`d>H94?c<}_%n3^6T zE<q?o*M-a0w{dTkqAuk%(SQ90P`vf)3@U*rB1bw))<XQ*ri7Q9{`2pmW%T#REFk7h z(4;6Dt5#gh@LZtKr*e@Jf24?$xRxgxmy*KJ6mcFOYqPWe^w=AZP9;u*QhU~Z(KM56 zHrqN!h@k*=gs6vOFuHELU%dUW<CayPgL?(Rr59@B7XW6B%ghN!(uld{+Rhp@_B!x^ zAb4J}U{D#37h-g~Gi`>y3ZzGa%i#1ZfvopJL}f5kEpToKaZ5AVy#e>bIz=vvgjP=@ z)IQ1_be6T%I>)0o3YzpdR<JGbsL0yMZmsZZ_JV&JL=%kz%)5?kf<6g%+<o+#fX#ka zxK%y+2b2*Z9M25}-A_+hESMp1s*17!oOM8?4w{p4O8I7;lUR=L*P$7alm(Qo{b3yf zXT*8JYV~C_wXE7}QrO79-a?A@+tfXYe`Dx~@^_#GzHmxSz)zV6rlE&O=G4HA*QSW= zZ+!%>Alb1{-;mQ~ZX4nJ){6<~xDS0kFMv$<nPn>n+6+E6b#r*O&iQlh5Fmk})Wtp- zFmhYoI-@duYy}GY@6X<bS`nTGhn~as?z_?mel7LEpTS=u*uPP5kr&P`=d%WvNXzx3 zHB=q%Z!pJ)j%E%}HK&4O2scXP1HC;1YcgK@(RgwgmzqYNSPQ`nq#XT><z|vbKD4qm zaAk+|UU6<)(Ty~a{2Uy6sJ`GUrNLlfXzqDkj9aGF;mazh0h?DqE_XaX=1KX}^EpW| z*Jwlta_>wV(GU4j&G~KdqM7dcT6fk3XI=xd)1lR2C8)wa05Lvf3J=K>ds_nmJDk^W z0S4M<cKDC@c?Sl1-ip7xMIe$az`-@8=8mfiuU=E|000M#p{a{#MSrd7W5lKlmH2o_ z^4!(lD(dB8H4w`xC?}CAPtG>7#8l05H|;3D!1(e2QQio)vR`ZfwL9}SrO8tn%ZmjQ zt5O)HL;22@9pR&gK@>AozTE0P>pfd$5rL6(jUGtYtFAr_A`k@rIS*6@+&Sywoqys5 zi>pP{>C*<rr`8mBaZLZg&dC3BnW4{wHT(ySn=I|wI`7W*VmDT8U*u;;oA6+56BC}A z>Jazl%Elw~BHhjvw4%ah#UAM>jmHo;zx;y@#Oj3r-#p;isb5u>q6k~At<@i&=(-gf zgt06t1Xd3)0L9UL`f%sL&`#6_YH~`g03nAb?3Jdt4j*=7(`p-4ouQgW4q<dzNBvn3 zGK-edaepLfUk|BaD_ITQ3YhlhCNJPw?oYtc6}Bf}P$B=(DHaT?&3|LWUBYgZakX6f zg-Yi4KA^ZIszSn8l1(yq9}F!MHU*$tDiT2P^t-Gio{`Z7b%yT*Mjd6k#1s)%Fp|=B z;GfYxy{k}(qBC3mitk7&?~K5?M|hXAmUb24bYcB=pH~BGHGw>MA?dCdqmS|;ZISD; z+R~9g<*`eHs5qYK{(0%w6WRCNn~iRa0u;hKLYy}5Mn=aXjUm2ErTY`%`y4@b2sO#8 z$&>?Jy!^>kiTC{pJ08Va(a9^c5gy{aH^CgH)GlbjUByh^q{+|Ll=k9fDP1@<D=r0Y z&U(_)$Qkt8`Q+ONGGH-zgLA-lHaK{iBxWvXRhWWIw9C~mt$+Xk52N4#fjqqA$;%<l z1{!kU?9*)!WB&VX*uLF{?1h~j?LzW>)v>JmBa)j-_@4ELkryE8iT6Fxfc8H(DrqCb znGf^X+-BMECq#-p$Vwb!L;_0k%AEF6U{Fj;&)~IuXEJStA_MRRpTeW66@t`j6*cM+ z{(r^v@ZKeD$8!CcfBNyyU`C@i$fZT>FjgCK3c{fv8RuO7+J_Ka&DpMtt~5Cxb(tg2 zMZU9BqhPsE!V*-vrl@yU)9oXHFma&G<HgyTl9kdvsL*rkL#uOd^xW;w>fPXO!21iP zfAI5?;D-~?AA(z`7HLm9mpJrtV83B`igJbuAB_l{98+2rt`i=5G|AF?da~|h#;e$n z<qlM!ey!z%`eCI>XZNyIs`}6n0ss(D_8aFjP1B#u%5y>NWJ4DvU|s+I*3_wH8Sz>D zVey`QXflsm%x-cIu~-lLyU=2aM^in@CgG{O6&o_8SM=&Ff%664P&BB{BtDH2zvAI` zz{Ff_Am^$a8}iNXy2@ZsbQa?QsVrp{098P$zxllob&E<LM;AA#eF%>huq~sS-$SF< za*qrDpZ}5x;7Q=$`A;{xuajHz@qycJ#dgF#*oC)GMb%<}Y5ldbJ(ZV>cj2RiM}7cR zBK}j9WyKqTu`*rw5^E-5XJJ+Rr<GM2<*9yjL<sIqYVDPo%T+~vwyAe_CK^%m{r6HP ztn(4br$&>^*$`to5V~8&=`HMxJx`G_c)pyVALc3ro$bXZ2UBTuhqO6S0w@3J)<j6A zJXE{)DhCzj+&S&HAr8`rf4y`t0O&k@@hkw4dkEwr{sJc;$H!Z-r|AW>^5x$}AJ)oo zgk<Po6O2H9S8?V8`xF&G(Z%4QpYO&#Gy+K_bM7Cqd`!y?tuUck=RG8B=BX2ZN-Sz4 zwuVLxScwcm9?z_!cI}_&SgI>oypYaZ73X(XAW12lRIJ3zyI3nyI}tfmLbsn8c-}Oi z;|}ep|IS_J-x_}_M_N0p<H+t%sArt~<9%jmO6X!+8~j7P$AHgxb@%E>gzN|2VmfCv z=B<Z<S<`!W4MK!k)Cd@tP2aHJ6;TcPO7+tJu(ozIRXy^#C?&Lcg$^zKT}eVOdBN;y zjkbbtv&t$86YIUv*#H0k|JeBCtS?Qno3ZjakVE)`&Zg;;j?BM4(mXoUYS@um!yWyK z3bDN|+wSoutWd*XJ!~j|o!X^{x}L)27s@6_$&s-G&HtsksqgiLPuPp890Z?4V!ONG z;ME2Oy(JUzA=~F_z4d&tR%ObkRo~&IAd{oO*7B)WR6b}Wen4*a04*{RLAou%igxp9 z*<_}{Y@A#w5h+-+3(8US6-HdL;!FCV>Am8f50hxd;A^?{n+i6^jI<?-%NJw!=sk)G zEyXgcU3Qvu&A<9K!XMg4hy5?fbMnE(?Z!Q|(0HTMSf{l`!`gcyCJdj<6%S!;LbrAW zN@e4MIg(Y>U_#uK?FC35tc={4#+-C6YUtMT!KTc5IqS={_7K_!F6Jhjdw9|revN3! zFUP(a+0~n1iPzWOdt8~|d`)DtAY||F!R@~rb*><E-`3p;yk|+zWN2!$r>AGn&7`Fu zRin+Uh>K~ld=K5S?1E6_=Hn{6!6Mk5PmoSavC>|ugsgw9#Qn4o-jHC>IY14*<y4(H zwl?m7aflu;iT9%OK7!P`6TpP}LBDk@DonN3eDFXZTli+#JNX1DQ?+~dN`e#o{D0Iu zE^p3T>k0YmRrBcfpw1hyyo$)eAojmYm4=mbymV_W00%B3O<dqP*(X}>61I!J7ib?Q zF?{Aqy!AL@$bbdR4%oFEijyFH+6E<e$rijlwhd?i@dEBPLa>c5=WgG=3+|c7$>XlX z3?9<vRvbRw<S<Xj&nY{7a#gW<f-U@jLfqJAphy(TfB)Y&W5(Ys=tBdGRt@7J0DUfC zJoh*G;a(iZ1Z8Vz4x~-+PjGa$6+L>0^cDaQH2oM`$1<3>=ywc5nOt;^7)KoC<yiI> zf}^Zl;-9$SFEs+GH7vde=0SsVME{LKK)2~XV{#xLr&AxpwLjbGjVPj9FB2pRrO>6y zerla`TNeG0pu+N`pZ||HXp7&TICy+Vpws&$W5-xa2_sQOFl~k2_WfL>JRO%|eN7O+ zTO~>#Oxv-9z^cgo1R%IG1Hk1)G@?!XJ?T~D2RI4>v7)*BX19mOx){@V0l3+e81HEg z`$9>?|K3DI^)_v+nfR-O<d-ApJy;zgc=w9s(0pnewET6b?;494_~>-J{;8b~@+^R2 zpK2G|sVf3BpiA+!f#P7mUrre_rIXr}nc>>}9n93~W_ubz*K^`1_~SLtgYEwd-+UER z7>EwQ=HIM{2Clj~<o-pms)8;BGIRKK&TN1qkVP*{7B_1L)HY12!4c@Ny!H#pb%-er zY}F_ViH%Wu?P$h~tHgyK%3=w+86gs)$G-o^CHb;y3g&aNy5=(lD#B27TP^Vh<0J)? zuvTt-1$>D9Gb2!65;!>nvD>Ur;`d3f_x^qBsj_S%N<s1S6d1WFc$hk$?ETW{jPO-l zo>FRXO}pbw*Qdm#&qOUP|NER#yhzhR%?KS2@nrPp$U7nH`?Jtfg^ESE`L9OV0XV4{ zgpGbwRzca_QKM(ilM|V`0oO*+tHs{C$BTfX%f_6_A`E-Bk8mnqv1YjQy!veoll}@O z`)j1R_m$lYzWl#2K#J?pDeEX;>00JK<~!Pt@8rAGJ>2v&e^;hN6o#ViiI}#2XL%|8 zxVQz7_NtD8R;9S#)@~~3l8*r66TOL`q0fmZ<!XDAVJAppTO$)O?C;hzM%tlXBHx0V z$1R8t$?4u|3pYaq!u9!mnWrhAh<g|0IG5}wE&4}eT1AaT=4#?l{d?N3jKOW(tFg3} zoWV&r0ALRDDkGqe=ld87?nqFej|h%jxl?2il#Zm}aFQsl3}H=ANIR)Qi);REVe)r> z6oXqB46sQSZf5HC7GB`Yh*AGOV%UQWJT3}`Bf5Kf-6M=;WKh80*c|Krr&9Q9u~=Nd z->XP<N1AtsVXH%Yf>ri*OK~@zkaJFAuY*b;6XSKF!HY*(an@}%^<qNq#uEG<8J_$X zHrRkhJGll=BnU&RtP1e{Rr`kwHk1#a2E-0+1nw_|98WutjI(8Fx}Y8LptpF~=LQ~G zrFzHJo5remm5`GI+vI@-bd1{QStG~nQ_GLWS;Rx_`<bk+tUZFK@Fi*0)_uH8;mdyh z<JheVI=7{nhH9ow|5p0Hv^Hpt>OP3Ld#Gt5K4%1<wS)92O7ee%vh`as&Hn11(kzkp zb)4&iSu)^T4Ikvv#~r)inc|KYW(+x4PZ9EetnZwdl)}r6@D?@r((*bhANGiMfl^aL zHgdS>+k=@;;egCIe)yo$VlJ}fl`6T(_g2q(RT+B_gJ!WE_{&!QVy)azQy+>K-4qn# z?Bb{YMtEfzhopb-6V$iH>=pXpb)uaq{`3(s{&~Nxo|*fOG$#B$W^*hDIm4~H(jbD= zMyH-Z*PZB*`4}2IC3iJA;|~Oq?;OiU@$$J=r&FP>QHRho-U{LM$DS)*rQ$_O)lL2J zZz_>KL@p=*COlfpy7Az1q99$Z#&13hyyy~pVZZYnwx|;H5R(4U!9X{kC>zpmMw{w5 zC$g~S=b(0RrR1QHu!K$HIzG9yBVe!TBkL-I(1)n{-6xdDK|XD##+pqZ=TEfuiUp@0 zE!eaelR_Tc7#SMj3G6FeDhi{G*yJ}R3Upy&i53AtGv;j)uy4^@)5KF7N|f5h>^uW; zp%iXu{f(W^y%F;RkdFTt%M?Z{5nWroAY4#+ZZ1M87oSbX5AVY3J#MV2?NP{ov9DLv z8-qW$Z6wDhUmQFJj+dUgD=8QNpq`cDgjWC%gd7j~B(TQT1+g3|tYz$JzQy3jS`pTP z%>eIwD>_Bh{yA9D#{dn0pOsKRXLA{|%#b+}D%i5}*8PPdHgXAtbJfC_*YExVTeuKR z*(R1*sol5{Y`3}#!)EegVb(DRRFKvAd%yyiX?e>gl#@h~R9KU5KXAc{_LJDV5U-*A zItv<SRFF|V)MyNW>XHcc)xW?Db8EquAQ>p~%mIlaSV1dk8$`I1xF8f9Uln;m)Q;9v zngDw{P{DBx|Fy{=DK8wyYiuV9Y;GH{7AkTj>9eNXJtj3u0?en;?y#yEO-*yBo<iL= z^T@>#(~S3<k0f5bi{ZWhJ&(fb2j!t{02#Od01E5?31|Qcb!-NH5^H=rn!j{Kvc4!5 z0b%e*4++cG%x9fKa}S(S55HC8pGr-@XXD?f-{da5kN@yXxyJF31KzJX9Nr9nKmfH| zt%7a_d*VIj)vRmM?moy;v;aX!X9QRTSeVV+D~)IOiqb;RVcXO`eYe%J%d9ztQjhxm zCQ}M-q2xz^1b|r@@5nvVZlXNlul+0@*`@^@<hD%DWCz<X!1lZ78d6$GjHhaB7E2}b zqOl=3LAP&ezG|i6n#-h=&s;9Zg4a$Tm!0k-;cW<1l(v(i;R0vd$-bV5Tg4YvpTQhf z`{6rpCKMt_UpVA-!B3``-<y#t7c<t>0nCr6|EQ10(UQq3tD0mp!)zjsU|J?Vs8UP$ zwydI&%2U4zuBvL)R58eP4~eptoC_(puy-@Jx>_h*jRrg@#<<GD$D?J)yO9&pQUbxW z^$09ty2lk|eTNH*%rjeW81i)jpx;{q&4;xsIg=qe_-mR@pS!j0M41YHG<b0Ysv-00 zE%GfkNeb&*GUsfEWoXC^8~ldM<w`gSJWj~^ll@m9)5XJD6;f;u2$3S&F;nd7)@&=f z0a8g)(yBcCNXGW7ErvhyZZ^2C7bTnjR!&SSN**&mKOCa?%#sW>QhhpDgXr{)j(nBS zqD*L&Dm1!7|EEYf+v0Gzkdq|})=fdEj<svup_7g{!1H=%pz8|bU(Ktn_J3Z3;TptQ z(hGDGq4&bB0`Waof!HO&K?$h5{GQgAy9gR0!M{68FZM_FYCla<JuKFbs9E^Pai5pd zPXRU;Gx|}qNKLvLdcz2m(&%KyN@sWALARM5f1m=s_LkUr79~1A<9W=9Qd-#8E^$w& zwV;`O@(B5Khm0drn6HvWqQMHhro5f*)1=^t2HYsHy3Q_KZqi`c34`T$M+*GiOCt<Q zcTZSA$J<VWbSAmocLOe&b57>fgRK%b|53UKA|e|%BHj*rcOs3JAZ@8q4c#sz+<oQn zTT|snH0_^kH;oTmAqqja{=Oz~T}D?|R9jI38Vjb#GqtSKhVdbKoW@R3_`otBk&^Zf zpAcFlsRa6F3cpw|0?^Jv(msIU1Wo-eIjBV4r@#OS5%0Zif62OV#4(2amg)H~>H`YG z+LK8?APq)!tXZE4F@p&-0-jx-FGEqN;nNQz#*)k<(#`)32+z7TZKm&}GgK*(mk78? zx5!3{AK1C86yXmuL6j3H_MW*bSSyPE<I~V8lpjArPJBlyP|#Sm9~+Lm5K`n{!2}@i zr%69r<BXYKD<RmULj<VJ18d=^%~6&UmIGcap0|_UBiGT8o=qGt4EYR>(V{8)jQGu? z2`5&BLL@&8(8anprn(Sq%;r&zdc$1}>Pp^vUMXjd`;|T%C{Ip^wqJ2e;70lYG*(+w z;IR2F=<sJ}jCse>nT4{-IOO%4Wuwts12iYd-)G|VddY4*v2!6x(Cp)48gL?tfLdmF zpEUhND<V$_;yr^#CCH@0aJ#?XaWW7Kiq`#*d_IDyO=vnSTVQ_NPQdi#fBGez*Zf!h z>0Gknwbc#N#!HW(g|T|ErEBUgo9TL+^(FtuK0zj`%!hvF76k)cXZ)jugfwY!n7tPT zlo|u%swi$6ZL37_Jr%?U@%G8+Ho9g*eYVsB_|^xxC4Qr)%LP=4N_%%azQ!pLR4<Bc z|Nq;2u`n!xo84+m4SDJplpO8Gw{F{x4kkI~yVN1EC7U8Nar{u)zVWkQU-n^&*c=u5 z?}yJ_oP9B;z@kii!T@)Kd`4TnK~B-m7f`Eq%H_`?W|6WpN!to801X7+na3dP5_IQu za+DwxT$Z$&h7=Twiv`IiLV8KW52v%#O^CU=xmkP@t4I+~o`5OTLL5i(yteJ%EU)Jk z!H+}c@^#*S9ULJKbH{V5Kn8~C{d)<(a}~>r_=ZE&zt`Vw2%JL5DLM#xjT{vV(`vb+ z(Y#n3g^|ls`dz1>Hx&v0I)MI?`6hkDSIys;L=HdC+TC!!zo7v#{GZHBO0F&Hm8nh> zcN5aMczeC0zhL55QDv9Y5Wnt5XV%(E>|2{pq3}899TiGe+OXZO$05qa?Po-)c^48B z2sps`E6AQnxJ+VmN$xj(9bN-%f@7Jmgm{I^B*C^DzHy&3e0Z<2^~U3La2JpU&{Jvg zf7!|U3X^r}kQ&lKG^sof*~~#^xkPrx%8h`QJbmb^j#=H1^4T0F*Bl4o`k?E+J6_#W zMFXEv0q=Ja9UlKtF2|^B9L-0_DT)+D-6l!ku+Z>E{k9PdBi?ne1L-ZsKV?9g_mFl7 zdER5vuU;bUTlPYi6i)#&--LSAS$)A?VoITADx1;o54g*}n!=`UiBPP$UFeEBeayF< zEf!_RVM7=O{~y*(%M;St)9bm{B8AmMi`3FOn+FRB-eOjA;9|8PMM=lUB|IE8RiOF+ z11Mq2_lgD34c#K31DDli46^$8tJ@=f0Aks=j?X<ndwujtxI18{>}E<VgyP$LS>FgI zCl@r&8|_CIB;0df<@mM==ptHfEBW$9`roG)c0=~>;i98I%R%uhcrntoK6`DLf@ys0 z5Rs`>_v{aT=vaaNJKF@L4RB>zhB;WCR=B!dlTdR);th-NAVKo=Cs9^m2*A5s+RuUS z(2GfB<hdDlTsxJJSqERLabN?Y-uEdd|L1=u?7-q~VxK_8x%N9KPgY;ffBXr;#err! z4&uO>(WTth0B&l*s}B#(Y8J%zB@X6R;e0zX^?yCB(N-4{?<mP!PKbt~_$P>;XM*<s z_EnC`^1o4%wc)yN?T6V44ifRXm-X5s^_=HTDsI<h;lZ6s({{LsJg}`=2ckLt6_>oB zbhDxklcEM_{q9bgzHrAt!5`k}r@f#%^L$1IkXcX^1Pm?^Wy5I%NEg3g8JB9$J3xLp zuB3zrT0WGUoXoHr%lJXNj=0|~!-FOHWugEa`4r>|AVZOqXvJeHM9lvqoyKZ7!emoJ zec_2iO2R?IvIY34M!*J5K2hSSQqrYs83Bc&8gdO^AoF=S4LS)HIZbU-Wo!Kzkvgj9 zu(mSPnC?e&9nH{v;p3{ISKKIIAo`f>XUGC1u%Ts_uYENQ0+&Tz^ICnhJdE@Loh$}k zRQxCzePs`kAIC7;I-`MVyfC^IYpyKCOW5lHO5mRPgM;sD^1uEZAI{QIdXZ@iax=Tx zhl5JsKoLC1vG(Fom+@)sWfN(@Lgb2lVXWWWCNusVMdnP2%oX3@Y=>sL(Zz8cJe-!@ z>chE!r?LC_*L>8B-xmXMUQP1G6Qfna+$-VlFeHw<&5qMuBURPI|LxpkYk^12JxFvd zE>S2UrmL5Zs`>h>C~}DWv)+wGu?sSt7gAo7O8nE`X)-3Ij3NEA5K;hr3}>fGo7M|= z;J9oJ`Q>Kp@zJD)`<#<+*?l`i98Y4j`3aS~ah?ebkz*VrXDzJnNOS%OY9LD`xH98| z*B_hE!+#6VvCF_=R>9#HlHt+5ByIk4Ch2Mxh&TI%%FGa{13W!2M#$2yub_qhheVha zI9&B6fYk;I0h>rAI6VROj#B8hI34J%a%QI@+O*vp`9O1qt1<e<YQC5V9yC^UdY;ij z;ok!rvnvw5I8wm8s+Kxp1fcTKugRv7zO7(ry$KK?njXK=kiVN62IFptrU+&c(}Ajp z_*Wc(Pd2uz<5g{Gz}O`DVOTQ?t}8yUZ)5pZ#2%PT<1f?8G6=BVcy~j^+Xv5PpgQs7 zJS^HIV0TRJkAk*yQaPf5$fW4~4aVIl$AvH1y#D6(d9U{w6t`y;;m@ReMY6(c4^x1B zG6@>S@2fHU5Bxu51(HkDbVkv+04M&d6tSTD43^{-*pKy!%GkD$wc?37e??^4UaWHs za@_9rMb4T}tYHLMZ*r?g0p`FAP<yKQ4pCurHXea=r|e_WWz*Ie;$G{ar2qmyI{5Cb z>kZQ#2o!OEe=_s<OZ5^4VtkAR{34!dw1VTaQ*e*HoCS#wp%~ks9p958F(Xv<{{jjs zpfvcD@FNSPcZ8%r%%(yz^)dVsLpl&A@15RLt^Vzo**NV4V=Ki-om}!u+9(yjw?_tv zvvSnyE%eNATkF59N?TC+lLuNm9YwC+(un)Et_cUzHmt?%Hws~CY@npqbG4&x3!;@~ z2tlU&7y<Yz2p~)TJ%LYuEcK1pmgNSU>1CQ{JIz-8nc<Yd>>SP(_4U=Xd;gGf4=V<& zUI*7o@sNVGD(vuGZcq2W?>nNTJDc=q_g~$V5BaxLV<6-2{Y5CX)=#Pd*6;PjJffXH z64BmAOAu58zRa8IuL=S4dH_(q(?qS-aSlZy2sKjV^3>Uo>*dpH84+!w>Op(&54?^I ziFA%k#VGI~?Sl}GL^`_-H|hu!8JwLpbL~sq4)FwBnwS2<2f@jV`9pJPd{hE^ckM*p z>p(+o7wyvFL;}n?<^{#_Pw1yKEJc8Sw5>g$b)LOwi+Z^e{{I~eM8&Rr(HbGFt7!w3 zws9#Pvd0WpiaUSa$LmvO8+S;JBAdo$N5VyEeWKJ-0uHb{ceoPdYGF;UOcQ=6yYWRO zr0-C}jtTSt0x9T5n#Zyv9!I*g;%Wrof^|9-A>sF0HR7rO;gj`^0O;D&fdD22LeBdk zLa=j>Sh)JzW<6p$o$Dh0i@xjHMewS~(Cm2P^@7y8t;++XZzIZe4JzT#jTct~oO4Ya z?@4Ns{3mS8HyopE%ykq;?zQGw&mqi{hi$fRko#ln+@J5zD=}Sj)0)ZZOe8_Mf{Tlv zh{1^~%p3gY*E$R>3t}el8@b!!rNFvc_de;qqRW?@bP%sydx$kYs^;mC-#2(O)>E1d z$jh3+NC2n4xiMZK0SKhLnfV(qb;L$mB8(X&<DC^=&-m(Qj$I)<fB*C!zATm5+GMzt ztze`47d3$2r2FJ`jxoKmguqkJ(lNP^qUYethZ3SSf_`C85$DN(*&}xhu;xM&0B_GN z!^lV*0C%%IGihk`{}TqFxWD65hMjJp5?|YSrqg9k_yZl^Qa_r9w8l#U*~NnuDFAIe zs&%<fV9F<%fXk0O<auV}wOqu^dbKh!{|=L4{kf6Mj^uF6j_>d*)^<cawU(<_Kq3n9 zJXiS<B*tC6koC;@#>AlMSyHo3G;7p-8yS8r5J#CLQCEh-`D5bvX08XPNP=Xo&C>rf zLdUdZG)?Y#p6ozIb{LXUP(BvQK7_elsawKe98-<Kd7iPGPrw6^hU|MNdEgKo(A1O% zWBGhVy2}<^-*dVwu>?F6wT0D|OreEX{@tu?`8}MZ=Qe_D6sG3?rL2s#kaF}(MpLWs z;p~Bv{RgK%hJ>N|V=k}@Q))eQnb|!4sQ-&2ndOs`*v}fBc{XCquqFYBben_xj5@w` zh(EQQ&q4Op9`8SNTp2b1K@{~+(TDup0e;SB%l+O}-EG=NQA!8dDS!msSTvZak;%^q z(4Ye43ARw>;RTZ9G^O2xaiXJwQk5_N*+gpZN}M05T0@{Dg^L&d*!k%^-^)hy@)8w- zDDke?u$&gIl%gdRtXsfxcyW}IhHs3Sv{UK^37oj|TnJN|*)p3fEs@FJ%8)(aIr_eM zKBsOlEW9GidP;QO-~&Oj0XFQpL%s0u%pqEVo1k82yx|B43cCl`-Y;WNDkMr*Z(SB# z;?_oa@e$|YCTWP&#aGKqzqED(_!e>n>JWkl9w<YoWF^hc14!yU{Q99Lg8(0zH+@^^ zBI0a91>s7yN*WkBHVaceA0^@Im^DzB`lZGVGGBBp_#Myx>oKKQlW9l2d@hR<!Mkf* z*|znv>(O@gsqAj6=dbYU8!4;Tjb?{!Na5cozA@kJYB=VdbZB!?rWsWwb`$}wK9s<V zRxlu*@LFJeiP!o83IJbL_y?X=IQAoi^v;Ee19~e;Hm^Tb2i-x@fyKh@8J*zy$N3<1 zu!8w#^1IUiBo2h|Le5R#Iq%SO0FQu*#f%PjOO9laT@$9_^a82JH*oPWeWFa)a=~AP zpioF!&~joZ%aaFQCLe+Z<@F~X$fY?=uw52%lmnB$y0BPZbgHZT#mF*Wrcd7vKlL&+ zWEKe5QO)7&bMc1~*Xnt(-7X-Z!Gir1=&LDmd9rA=hDtl&8y@Pucw+UNN0_wW>*25S zvuyng{_t3}haNyzJCN#r!NgQVvRNw`YMF&{rgwGg@;#^+?Qz;T4l+B42z>Et(OwZ4 z-enHYM)-KE4jFY>o)81rLmH0^t#D|nlIHz}%o!zmeiBY_UwI&zoFecO<Hpz%{STCY zDmd`GygM;Gkq*{`#s>42sr#pP8OfR=dLq>*&mf6?ui~Zt&51jvI-e~QXzK`#B<TR4 z{SVE?cX5wson&HjETBJY^@Y8S0V~O5kKmebdXN^q=MsA@XR%@H?l{!g<Hsd;#*!wm z+0p!u@5<sBVaW6?djOGxXFVVqfBKB7O5%SlnXhnnY&wBidnT9d{aW|${3V%zlqK!N z=m?qV`|_64iPN-#*&jXj=892<#yxfCC@VhpkzPD^Zl})M=KYrIqI(wZd>7@^EwT*Q zfSlYxFxi^Rk0p_9(PG;wph&&uUmggic)0u|ZFg5Um=hn`7+dt7XTw)QeNRTV5C8tw zGQl2;SKlEzQD9{SIbi^<?)WUHSBytY`odg)EjM1olSM&g{Pkw8t0%37Uj6WQc!hmw zlc*jtueNiw`kc=Hxb`vj`?_f6dUT4|v&*y~8L3x3&(hzvo@Bdr5lTP7pg9}`!X)u6 z!iUuK-n9p^_r9tn`yBV<d>Z6tIJ7f>;2$6rat%iB(s}e}4|Yl+(`>4|q=-{7amN30 z{S2&2yYP#k+pNlGJB;L;vzw|<2^$fWL%bWLm^(#qO&4v}Ith7h?<`*PA6E2Pzlynd z2{h0wmyy|`_!I6;+H|u@by80Mg{FT%?3w_D!v?c@>yQq#QrmK`wXKsKxg1Q2f){23 zIeOUm*r{MUzTXUG66PPyOFS!G-G$0~JXdGM;Y9ARu)qVHv_+4p(Os#4_@Wpdb}EsL z%LQcd!zAbQqO8%(J66@3pZnrf#B7!jO(`(Jk5`g3YxD3ALd8MIrv#3I$KYsRebe!5 z77R?$@R8tTw2?7ty7f1+*&OH>=Du`&IKN?*tcCdF|EW{@+c`<o|BRqOt|>vLqYTFs zN=c6;UWfc?e@xtDzn}{CkWGEpt3<pGo9>4d5q1JT;TW_;jE(-=`ss~q_gWU)X5em( zF6|m@Duf#ClPmF3yc`i<zYdMMKJ!m<PL<PHd>O>)S##$-z(7~2ggI2fG(mwzy7p_+ z`n@C-8``eOJi~7C&4JNkST6I0L`ent%6mIm`~z0Qs=s@^GifaF`N@82T_Cl7J>YA> z$*cd9RVMW_gXo~_5w7Slql@Qmn-8Z4*TM(?(>EmIlhUq72acGWgdyg{4SDuTP&k2) zB$=g4OtuleM4yokvg{Mdar&>XI!7~=_lioDbs4>l%yRZ1X5-rqNXcF9C-FetIAmD7 z0fR|8!p50F9sdARq~?=z@~z%!8P4KkfPPpacqnY1|M?<Y-N72JRQhs5pYky5AiD#g z=FfK0zO6PwkG=4bw^Q`ByjiTfA4Z;LtO|Izu3>{PMIC~clYK%nxA@<eV`CJsmurU> zFY1jR3w`;_`vqoKu7vFV>1s@5Vf(PwGYhWo>xFeN^R6Bi*1StGOXX;q-Iu48*035t zpDu*;=h-cSyl8@tgSqlEX3)|O`jbxN_YpMq!)D*Pho{6p)Zs@drTNQSbdS{L69O1X z9y8;#OYX|7?j!$OTQd?$9I2nmd~{Pbf_Ntcpt2A1*D+(9bS+Lhj39ZmHlR2GBM&1z z9rr;+-*t&q>eZJq<i#;07F;0Vki2%j>o@{%!_4amlTNkl_;E^yaY#G?ysZ^H=W%|1 zr-r%ql1xEIY*ZzO^Y>240Gup6!r%19Y!f0fmR(5=0inMU<ah{;*XaO#VZ68{W)uYQ zpfb5_0+of(5|KessSj`w!I#V%zOVM?i1mv(<5u)$t_VsV43y!I^FpgzDn|o(x}7h< z)t_2>R-u@5h*y`bStfBi0kg~r44pmyx9*o{4)xrg@t@4V<>m)q+YAu2k<3{Rmcowf z{CQujtDeWurP-V-#K2IAVSjB~itKX~lI<2gt{48qSFe=`AfF^r8;{xQ<t2mz=qUKF z(=uB9lj*;8PiFoekJ=C854mAnaIH>XVek>|ZJ!JFboVL~?lnBy#{R+8*sOXQG6ESD zDAHN>PS2kiPAFmx1sKu9PKLJxio&HlO0r<W|1CA&<nFqYD)&+CsXX>RccYmCxC3+l z;TzW0M(%^Op_F&pn35RdrrEfqv{R*Y?c$@=gib)*`UXx&+vEW?7is0R&y}bPTXl3& z^S&E4VwDK5&$3^!^?L8B&1fAX#j2!#1CS3~T9tY|6sm9d7pP{%fK-=t#|o!Iso%5B z`XS#p!ErxV7yq|I>>309i}o8dY9zv8+SpEfY-=G^ICIi+=u0gQLf@8~K#A=6V5_x* z(xd*(wzSPHZ}eiC6XftY>;}Y-9Dm=iUPo&_hO5^=a7`-p?7s7Jr-9aEELCsmqI5ti zFun#S>;~ps0BdrPxo2tR_0;X_e4zjQH+NPreauYj-gy^zE*ux#I<;+AEcjA8#H-pf z*V*eb@RM@E-UUr21`ALNS0EweE)qS0n8cz3r{|+>QV;S%KW2{xwP86Fe`D^jzQEyh zNVp-7Rd6NK-;19YuR&J4rAL}IE(k9jowwwJ*6s_5?{h&;0j48RHLt6Gtzo!=AKNT9 zfoC^_qQG(m!al;I<1o_sT<v-DiCfpI1*PsXOZi~L^n2e(EbwOojuth>Z#+5x@x)fS zFID`I5l;548a(6@P(--H>B5pHY@Z<zdE(S(ck3eWs(MzWdq4f8&w;B<N2%R7{+yZ- z_umKHElV+&hkZK9dtn2S%SigsPL`k=PU;V)aGXACOh-XH3KDi5_c63Js3vZ}l>W?O z_yqfi7UF5Zu+rREaVOD0d({27EyK9VxA8#qLm(s}nlO>h93s9&#_gWKw)eSygoEa& z>rleFI_LK}MmZW9J$|>;AQTb^W@v&=Gc_I~)6-w|!%oyRN70DMqzv@?eZBJPDz{=O z?V;1xqQ75JIdx2WYoWhz#is`kyv=1o>lSx(tphFR8$Z^}OPe{aYbAWTMD93qqQ>gN zPp*t`yE+`mr~+x3!Gf0uTuT{#pw}3+v7++rZt}7ia;MF%rhL>kHLHDscJWM7o!GTV zoM!t8pZ$eGg<3YPeF+{8fO-aTMXNt5mIk^J^5X^0!<@ZQ;5KLSq`q(t9I5nm%-XV$ zkUVu`^LbIFT)5aR@0n{+L!>a#4|zyKOEhEKjzFRxhRk${-Z{S;u#=?Oa&>Aa^|v@S zKBoN@nP#D9LU=RizR}>-3wJ&}S2j<C>B2pfL!Lu#k}{U?A4&(fUucJ^=M`t(u3;Dn zom^kgF?K_kfY44NJewWMYw?3+1p8Dcr=TGK4Z0DuZPp+%6NI?P-w4~S=fEXqp$X2| zuK`AX8B}#t{YTOsnNfeZG70$)wl&%kDoR^xo0X|l5Lm?7Ug%mhl@K*jthw`8`#St| z3TJw`fW9mer$M_1pW6o5+=+b-tc5k6^Oi*oBx`z3IGtmPU?rB(YHRs4i&b)JTS$W) z{aL@i^$Md{|0xig>`I!G`*MdRM}%U3$4gG5OUeq*sRTs0mhhF(>-yn*OP*y`Ll--# z#Cr1<b{OAV8kWGsq#*Q2E|UvjZkPET5_i+P8aiaX(Y7vR(vdhYTE`4wP>2kmU6m$v zcx9Sb#)>8NGNU^*Rem)F#k-Bq0RLzMVY*LbI65m%10^pHHabAX6&eAce{RceQj>@} zzmE2ssoF~nF6jj*TVWa#GR|fMO2A-d<#dxfk*&IS5>@neNrhiQJW*#}y-Vn(Bh4N0 z`P{!{>OAs<VITn!L(^RpdPT{f(L`5Um}v&g2{p5HmbS?ln?b7;bN`nrPNw>W4s`nE z{Gbb`Hr|wkvYhAjkS~{qc3Vorah-6T;YFfD^q2!pv#Ej+xI53E&Um|Y#hauaRLmF6 z)0IHqW}Aq=A0=9Mo8kGw_eG&jIw;ri8)B&`OBok`bw~5Emogu%_2C-SDHtx;5_%M{ z=a~07<TK)L^VHH4qGrCSP2vac?XrP6cZB-=TBn<>Iv((<USyEQB#NtvC+s%#xb+Hu zTLy_+)Qw%f+R{U<#W<VeKkmQ@68<|^oeKt<(s2$s&JnK(&s;mAc;OWf9Z6cFsh;HF zn4ois5`h$va?PcT{FpE@;DEpYcGe$_QUox=?v}*XK~xKZegB6+O5>tgR)@j^KqDa= z_};^3*hq#>Ws%<USieSjTck3DnP}vPM!1oy`b<iuAGB>T$#cfB(I*rmC&`*}o1=A` z8lEj!FCAsRc4Cp+6VJ-p@5d)9G$1%O)N{2Mwyl`D4w<v^=3Bru4I%&l0|EqE08an_ zn}7gjfB?S$0ipl{ga8M?01<EiGr$0YfC0t;1h4=QumCxL0LB0UzyJwg05l&5s=irO zq9!2gc3<W~tKhbo+JY0&sI{&EZ`SS&oNst{o=Y@eoL)=MJ+upA+yDRr016qyYN->y z!P`ag!~8^Ra~7&BGHX^N0t-G#z@~204N>M$!d-b}gN<R{000YKA>jx@e{jqAGC~^S ztYw?$OOrskQifNP>{Z7?|1}&u|KXvrj``CN!b&#h<jUUHu&_pJ(1c>&5U|B}gJTw@ zd{z4HR9OWryo58)zz7W*YY3I=c<fpQ=mpruNST3l2;{2LMS!+@lwrv%0TIa{0j#WO zRvd5){AfH*>emL3A@D}3;qq8rF?7qV2sug*Vp87lY!b9`ysrL^y2#U&D#IWS(HAhn ztn<;cL^1NIfNTeoWnHp5$7x8fV1msW)`;>cR>Iu9ILqPnHjR_h<ERB>fi4Ahs&Q0_ zK9YUgEF$+9YeyxOzjVnB_YvIufz60&3PC#o?jXrhIN@{}0wN71db7E~c<>>Jhh^)n zIllLh96B@Hl8fz^XJUB#r8Kc!P|hKYvURgpM<-&LD68m@_}CleZFY$+^0@BN?WMuJ zRyuf1FR*7>^^76>`wEEmr2fjq<tTAt55;=w;|I{R^ELL8_vWW^N9sl;xa)8iWW4fI zW@`q~UJxSTBKyv?G{#1-ED=CNV0s49K{KCWp<`qsmUZ)Wg!gj=H^QW(L4t}_>dtwH z80GpTSZ_eu-G97XJAYGi1p4h+_pPyuN0(p*F2ork*!u8!xHB0qdW882-fwcPQ>qAS z2}|sn@`!-Da8RHaiLF<49SMH_rzQW+)G1SE`B(BJ1>LWWfw$UB9hVCQ79ZCe#|zc> zG*=GVIhEq`aEX0(?g_?==_%fHqH96|5e4O}2GG6U+F0MN_e(d#*hYwOQ7C}7FNI3_ zZmQ0ot_hsck$B_LWd2tZw<^AXfCljuJw%x_HE`rxRXe}@6K6V~TWJM9xS89|v1NHf zPei#HF?M7S=Qy!ID)>;qm1Z&UKz}VBfb3d-XUT4#RHCsaHPhSoZJitfa0{V7keC0| z4A|T~JlmTKWt{5rGq<x{jlLTP4!2x6dV|%PmGYzZ%J~qK0_djy9Q`GDX<d%IZxa9J z#QDTP#z&pqFL(i<0*wsV9X6DBHRRbzEJI!0DR3=WZd~GB;%D^IV_Wgf(UaIqUFo!O zV6Gz~;Ym@(v4#Bq<p7+^uQMhEiGjYZ9R`re+5e1So)*Em!FX|t7f%IjF-nhL;#+TS z_NN-zd^V;zRaUEfq3~$=T>XTafYX0e{j?Ff$j1LRqOG1hS7W=0O?PT3l81Zs_{$Xz z>Sj^D#zr_3>d4uT2J8Xz|HOP#(F|Y5S%z?)l|BdaaGYnkwVeJ>fsIzARJt0BQjqYY zK5!9(63n3rqJfVUORzDjh>!N6RoUL{ZA`U~`$aD+J4ACZZJ2RFkb_ebq8fsR6dd5| z#Vz!lM;;3SIe-9YWS?pk7dZvxG#MwRGX6Y)7u^+DPs|6Qhve3J`*BlsIuvfDW}>5c zU`Y2xgQ4o^owXT}dj1c5iNo3OXAy#X^lwVWv>HUhv<xNLkSiAwb??>Y^FxU>QOCcF zdAn#pGD=Hu?FRhb^hm!gW7f(^)i`>6l(e#sCh?`0ry;@R<a|M<?T%hYqPb?jj$lMx zU+*;qbSEYJQZqI&v;V@a>KJGS{i}ahKdd0GJ4#he$dpbJ5XGJ@l_9<Oj2bZ$Hj5O` zBUtXall(Bedg=P~aBm7^YovvWVpZM$CxCIp1Kd{!&eJ93<`>&H_Sq~t#nbmSde$Es zJ+$IqcwN(gCph*MLsRdj%7==tjg(~I0r6q*?yb>H7nDCMZm@OP`+tct?STTRqpPfR zaOX+qIBCLc>gn%rH`t0pDs<_9HU(Gjj!U;4EJ9@!geSg75Z~n6P3**9;fINHfdr&A zQdyOP2CpO7sb;N2F5B#0yu3S-C*}f;%XiDIMSJFhoH581JUtb`OJoq7H<kVkXoG2) z_q2DW)aw5YKR5Cl@K*5Pm+%WPKcKQd|MQ+CfA=!w<2d%Z`+xuNQh%jE!Xa_^S~@9z zvYkV3T(xYMK{EPuKo{5*4-=7pmod_H%ei7bLV>*!d@+6>cd_>ieeU=DPtlQ&l~594 z3?@8yvL>S@n~$H$5j`V<cn>s_1JmtHhX*dEQwa75L>RTjO&Tru>81U%kA+w{Eq+w$ ze^D3RF6<f?$6DmwHt6Fuc;l`^m}+SU2iJj?As!uP4BU7AXqdkVHix6VVm#DdfHn3p z3;r1Pj)6)q4Q3stg$_(f-(rRs0h_bn7ImF_x#9^it}yR!#R1VXOFTEb=oE{3(5%D` zBz<e%E?PmnUdV$P?pK8cl4bT09i0Ly5%)Y@$rBV5m9r+oc<kZ*y$=dBV&;Wc9tBJ0 z;i>qNjz$5dc;od<zRCF!%FdoI`T+ESyndgd#WBa(!bCA}aOk(}HrXGPJhSg;(T0?N zqIFMs)+3e=tNXIG5R?RM63Lpt<cU7xYk9ey9U_sr06v;A3J1m^@|o2UFGE<9CiuEK z5k$K}y{`BB;#r!;qV7!pfd<O)NgYcLKv(kG8idKj(yO)R6wM$Q^gf}e4&^JmUMg&4 z9At=FCMoI=K5$L-ET<Fc_2A6<l>w39Z^_(fG&xu7HYgu*1eVqS@b^Hjr}6+%Idkdt zRmb`>G+6XQ6%EvK#uWyhHAuRHXywthjuNzr+Efqw_$KpRHgQ4<;Xz$=&!gU)eg^+| znpn8^u|5rG)kFEvgFEevrq!vD5j|t?M6IQzi9vbZ=X9-~=jWeLj9vj;gSykRi?1is zmxX;+u!HdOeC|K*(C*-&8N7G`Hy(R$Wk&93kD-Y7O&iA-p4=TKO+^R^tt=ci7<{^( z4N57>$13KD+;mEmSiqhg^?t$;L1xe};*|4HBvA$T6CcJF!t7;*eSBAt?rO`8BilK3 z?6oT+b&f3dfozvIMDFBfgmpiiTSD8EXZDt@k=;6OJ~O%&*0!^!@Cz!gDaRF<=O!b^ z_|&d8%{cUa--?_nU%%{I!ve14cmhj@bz6Khakm(<G`e5c27vE9wVDJ{Igi#$*LW0~ zZOEqaUy-AL;DkM4MHj{^KR*Cn>_gP*;7SoQ0@ylabAJ3$L((FXqu5Q$T>#UUm~w$w zFZ+<3@w)f@64O<PCBJAiOq=J}l(;O2{aOw&?Vm6ved1f9Wpl4#Gf=L(Rp6Y+(;{SF z;laS3De(kajYPOG{rD@?4aqfV<rnkRAr^F=&y{jnc`^RTTcqV$JC%6ZTUD|cg8r9S z|Memh%u~v+4I-rmapS`V3obcel)BNmBXM$RYJ0N4(WhO+TGVM~N5M7bjS$oNI06)K zt%h^!D39(piJc-X{R=HZTi$*wdRXHf!aSF-TmV+K>FNP{B8tKA+oU6(L9ai=dxu<y z#D!6v&_SF_`nbJTUqsm@OLdXo!ux_I<p6vXylJ%eMj<x+%gk88-n%04nUBH`M4kdu z;xy>a-nn)eI3OWy83AyZw?`THpdw!h$PR^%PAKjXseZ(im()|FRV~YHN1TdR0SP3M zVL(^?vw|D--9KGnPk=<IsgUCL9q;OclUQmz67rjAT_?TVK<_|>d)$xxfy#ZP<Zbj> z0AV+jU@Vn*P}B8K-Pq2q;Du*aGIv+@4}$YI<UD%Upd}iTFyVf$Kb4-_;CSJQAJpEq zD-T!kS@h_0Bd`%W5bu~qI|%4W(mHUYcg+4u`bXk?b&nvo!TxEswpFoCp+-#$K%udp z4lMeK`0a6KV;EoS#D){6U#(AlEx4!H5({AQ#dGGdUD^J*<m*(GUgMA%S@>N7lwk>_ zqUdf##XJv6J85i*rmyS%gc6#AoTKBMCJpY=m&l<$Ip`U~Vol-Pqeh6(dOZAe0TPze z!!@Frg@q<XA)|_n|F$S_mn*SP^8*hAPGXdjW|YYJ!8G~?gv<Z{0TltLfr#HO6W#il z%h$ls_Dm~^?sr=?<;9ILO@e$ej{T-IGYU%87Jlg4rK$0AgNbJpIw9#}GMY|MkmZnJ zD|HUFOsH$KsJ@fT^_rG%F0og)m4VK&Jdl(%jot2M#FrAbg)Q8V^_4~Y4$RMM_Z(MO zDyc{Qpd~U&aH_NlNm;m#5~7%xyT_IY0kUBd&f&OYHMTGZX!)L;mi_eVE>+)ZP&eTC zgkM{fVg!$VDVx}q7<>kBGWzJV-rriW;p&^PLsmJ5$`M7I`wK&W-r;EulB4R6^8t#O z*nP;jfS;Q%EWq=nb}^&XPh8^zj1YiJZIn4$yPcm*0^#NUhLih8inUZgP`U=Bne*@) z;xI^{(na6^012oe;t)cAakG*ea=N@J;Y2NrO;9?2{*b)~5d0B@p+j0w_3?LV0|{+a z1U&h58eF4%Uq6kWSL&Dzw<mi85XloTF2J_ZEcECi;}O7bN1rV;Ygm_Wev=;LyCA?> zZtiW1sD6|N=L!gR$4;p=CBVDkSIFdd?)%bUXcToDfe>Jd&0(K}6=(F@&Xvfnh~K~- z>-Dz^@e<AZQXL%04K3*3`o^X3d|lHL!K16;zmVAS#fk&Mbhv0r(&`=k^F&#eCsxQm z3mR>3wC#bckl2H?BRI%vN^pZ30Hgs3SM~$J7F#{+hn)<_{wntLoyBtEMC7N|JtSz# zSxE9qzl|W%YwA>A0F#aJ$yjaP1NkFvVt$m8{A+It=&ueux;~T;3qtBZt3|X)@Ub4y zvZRun{|~x&DzK!qz5PCwB^h$CgjN*(M%Gu~n<zqw7h=g$wpc-Fte`Dwrv-dyeGGij z9&6af-O138+Ya=Ha|?D|biZ863(4UOU+lO%dMrB&cmhI!eBG)I{C@}G411IF0x{PO zv66XU7eJVV{@c^5LQ0N-b=XV7>fbzycKAlCVM!y?wir2bjH$!bZCV!AcylH3k6;!Q zWi-4Aye^Qg5>NJaa`syNulI!?K%if*h~IkDFp4xSS-y&}3w6Y&Mc0+~(Xlyx5h4se z9E`6>z$vyyX*}|fP3Ak8Hi565;?kWQF#v&_$#Ya}e?JizPtgKkXS8jV<~6&F)l;$f zl|b0n(=pZu<4s9g*NWa=eqS`4)(bV9)$7Wt1LA4aF-|yK&QYTiW1KHut~I*w;9rlH z*q&H9>$TNo{I^KV+qLml2vevOSaMNxI-vJ8PSPD`%ULp?W_bh3gMqilq&}hVOYETG z{pSfb)hTmr*9v(>uV~-?Qd21V^fjCsx(Bbk(n(54F|G5XY$P;AezpBdpsVevPSkgB zRmwD6Xv6BeV_LnjB`ouvWLHnYe(G10j*}dI#zvM)_G2mf4+_v=5cQN$%LROK?6S{` zI*@44Vq?xn*di0+wUC3Phm$7kIQf6!8vwewHCX#*C$^}k*Vb1AMD_<T!3c5kx|DNZ zB5getsmquvAED8J&Su<1t)OI3UNTyL-ucyDU?5?KA&jS;g(eZAi{W1j4iq1B?-?{( z7nlZPT-vuK+(>w-E(hnLG{?no1S_5Qn8V}Zp@<mA^?6W0igf{ZYfT4ieOE|g=M6Zt zOivv)MOku5r`OC|hnRQ$AXCef-?dJ!W?Jh&{S33qbu-gNXPXGwAW1ol6iS%pXMLE? zo3L!~V6;SM(k2fM2_7>kIeu>zSnhnv-y`JtE4bTBKu;*o#ujt%ZlqQcKSZWmW-}t8 zGb=Nmfh<*RZ0#DR&g_G6p`$jQQ^BLNBcAG0Ye@{RNxbLuHELdFx324^J!j>8z8$Bw zsSz2ubI*HUA7#tf@MtSeK8ipQw6OTU+jZ6N@a+)tpyNvYC7bwl%c@~L^(nqglfWN! znW>vB;IPJ+@Z#!n+Us{k&BTvKhe9kKi9)ziOWx*Pj(`9E`g|oxGyQ4|Krr-B$jC6q zNh<mD?AkU@?M^7EC~LDvoz#$DOc~5L6;)}KMp*Q^7Zyc(+4n4SR!AC?nM-uv!%K<e zTLh3kA#(J35)dg@+#bw3ST>res^=qwyGU*$UdS2hit6gz;}cz3yG0UtJ|wSwB0YXV zVfA|7vy)KzO(;oa90mL4<JfK45a<{d*NAi(>?|?ekBN4u<!rAyo>DsulO2E%wso#6 zAfxtLs6s>8`tK7TH+mjhkp)7v^_YQt^U0O=pAmC)BVwYa+VKIy`1ul04e-=F8WCoV z)C3bbD&w5oQ?hEs(jI>Txi)TKtHH*%75&+O+7qd&nIrSQNg7R^Rk=D@ieK{@mS?pV zg`2!P={YrlahN+i?x2lEp16O=mk8(Zz!V6QD&hI4<^e%buXfNA2H5X$Z`%GyLIZ64 zKGQcz&a3;x!@PTxqz3AZ%uP>|)Zxq)bur0$4U1{J4YIXOZRZGIdS=id1!9CAn_kyZ z`vrzhPH>iC2<hpbmB}~97g<R?*6~0d|2TdMKgPpj-!Ay?N!Pq~&?`G%;qgxJ$XAnm zc$|%%^I)gMy8!G>IJ^)q1ff{#URm~GnHm<69cvSPu`(Z@21Un<5bIHelW03o3pX3- ztC9&wzKbOLK7>C$wCJ86n_j*or^4tz^Jd~ZCMI+tdLdhvtOS%Z$3~v|Nedj1>zfEs zz0W7j8b7;|{X5HMUuLbFu))_8TMVbXzt4e$gy#DNySH#~j$LZUvN3)`_KG%-*4ujz zD=jHHPSJaJyxRb^owrp#0h8Pic8Bt%B`_(bKe7AsPd|HD*B${wg(=Fu4}|FTP{7w| zrtpghpLG~v+)Y*CUu!$S<t0d~gB#{oGet3iejSZlj#=;6N(!sSjMjV5S*_PVeaGml zyRkWX-7scTA>S`4Iu#2mFzmt}m^@V@yrGbY!Ib3%A-+Nzg0^k}#w6}ExO@M9VH=lE z|FI<g_h}#h_u09S-!?6K{8`_jOU3-DQ+2C^Y}ieBHxjsm8DG%=cV|}!$+14M4@}(v zfPGe}Zbtp^%HTwaz|R7@G7v|T#Ts1V0pfZgCaVMzVr4w_r6CwX$FNKv{MN-$N2qmx zByG<0RnBA3iROGpSCiwGud>x{OLa-`^I<jK?6O!Z(Dxev$9x_IXxod6;u~sx)UP_% zxl%WwXG3U7SAwJ@zTQh@yhpxCS(92Xj^wj&E#ld~6-;8_J1L7`Ru=*|{YF|QAB`@H zA2J|}{jd;<IHO5EOgrW3L{h5V>_X@DzBdMV41z*3KyUAE)%!>D6lne!vogasmDcj) zRMkX2EdcLaS%cx74+cK|qJJn_+IryUZG;KyWEoMmrrR*qPjgD4@eOIW&_6eLkt0O6 zs!?g;Kq>E_PAlct|CCcoqqp;eDH8z?w~}2X(uu&}*dIT;qKo;W@5~E6e3>`r4^o*} z(F8e#Wsqt^qZZhh3h^&$%idjAit13*Dx<v^L)8ib-$+lxcW%`pfvcj!B&0^37MjB- z!sl>b#x}EDbr-`0s3ibYK&!vW81t>_%hvETvQ$SEc#I4V6NSSAaHkGBVAvUl`XdN{ z`k?l*{s>u6x3zeQM}8VvkLspSl78`^0(J}#et(uo1Lhb<|4_7+?l>svOuTV23`&-x zrtV_l<(pxvF^5#5umg9FTH}_{4g_+`{PVOT6;Orv+ERc6zZYGp9@!$&0006T0jR@> z-!5dp42el&wa57$8tdsjru}y#kK0ZNYj<HJQlq(tnK(bW@4Ook;mh0V6{}y)Yym<@ z=+Yt=zd!#S7E<@c!n;}WG>hFIwSYV&F$n&oJ+6f`W{(pC35;dZwa-(qoA!}|dMt&3 zls4h97fFHqMVZj-mL0<!{b9HKNn=etS~GQKIKF8z1`)1t{iVQOQ)E>k6Cn}l?Om~| z^QZqITI~J6e!(}Xzm_cu0VHx$sApoQMbbFSF?h>vnu{w6T>f+0vI0QUg>TEg3s1b% z!_ml)2e!*wRifywP7hYVkkmu@1g`P~Lv`OnUzRc!Nze0#@wd@SE>R3{<i5l@kcoAE z=dbwoH}~5&`w_#|xQFZ3y{{8`O*5%K-ekWvXB*x7%q9PSIq>$r1S0i8(3m|Gy)RSG zbE+9$b0o~5>ksTQuXj_;=|(Dq-zx)7P|b7K(#LX7^O~d66IOW{R^N~LDN@ztA`O_V z@3YXA@Fel%)I+TqcR2HwCyMLWo}-BWBiG@u6mQ%gwY@MS;7fC6jozPGt`kL};-mB+ z?YMnpFNeT)bvp-tO~JjPce5D?v}idar9|C|j;-mki^-W^FER1bb)n~KYxyL$XY>QL z35Zt_D~{exr{vjw^FwjS+V?5X^Y9UM)n~*af{=La4ldXlZVjQGHqSS(RIoc?cSw@0 zGnfhS5YW2(#1GWTgyVq#01Ejb;}}AJakG*ea=N@J;=SL|EnqVu!T(9ftU^&%Y+-s| zqq5B8(cC|1Eh<}i2xgZT-xd|svC9>KehtwUJ`yHiU4d<+S?SP4zH4!_FTEW^>PZL8 zf;G#D{&c{DX>{$?KeD4Kg4s>xNcGgP?OKU`M1;=4FG%0cKP15%$&{d#c!SWO^)Vn| z>JhA+GI4%ub8DCV`Y{?G<~*<k?+@oQ$iffeQ7*(IRWQE;hxO{0U(rMM2T+-a;<iQ# z8MX)#JhHZD0133TV?#i8F0MlVroubIi0Ig3js>>^QZ4%t66RE3{^~>fs-tEZvGi)Z z$S}OoS~tvuafHx7Q0(k<%m~1s9t99vru;e+1$laFbQu_%(%tp3tMEW2oYy$l+Jy&l zj-uy}gh?MLA{B}IBz)(a;5Lx?$1aE)LzgIzcr=cu4Pn%EmJa#rzY`vW{u|N!O-!-& zlY7BbGFd-RiUqMHK$JUl_G>iU<KDO@v?@TKSV#`~8*EM92Fit|I<=fQbRTeBj#U>K z1?hEY^WL?PS@v#VANUVd!lhX{0*Pu$ECxa+#6!Z(HYX|k*9>OBK|Q>Tz}E=>o`PY{ zQMgyqe$MM4l*2(<5Y<J1gdfLRSp}%mL=<!0$i}W@zPJ31#c4>3ygH5X7b%NgbKP){ zOl>r<>hq<Vp-6Az?ul=$L^B1{c2!S=p++dTugHS8(|E=Za+SpN;F0CaTXE2B#N2dM z#S|3eH1@bZJ$#HU1;HDV8X%{`Am`52wXyy8w^W+eWa{N>m5=LvKRicbop=2_#Gq&T zP<j*x7me`g+X06*_QDsXj3a1{2Tmax{2XdnEHg9=t&<@K_^Pch+SWt1wP!)$!zX08 zh!at}blkirz^FedOx{RrpMdNo0*LBQlhe>?30Uy?0Kq+~5DKi==L}uinF*>L<(0c? zGynK8;u1>z5?zJ!^+SiAj_&Kx<|U4>TKUIIjP3fsY^+qkM44mu9L~vX1-T%d32=r> zUXZwbsPtwaYET81ntfv6QP1io_)u2BIx6o8cAqi5ddEYX?Jk|Uk~EZmJ>*zu?9hi) zH<$=P1Yi^}E!qt2e+#e1nWU`Ln264(a`hu`0=BIe7#2pdhWSX`4;|Xi_h2?2U$GGC zL}@_BvtTm#A*&d3&MHrIjE9#HWmF)Z4CPBUTRC@h16bsf5Bgm!TBEAahl~BSX<UHM z!`7uE<`}AqTtPqsx_)U#qvHp5eFQceA}3p_Fyq3VP0pE41dEF=B2?^mhdffDdbMId z!!(iL9rBJQxqDWBZkKAK_WblsPO1=8xE^`lpu;aUe{}f)Og|_R!hTE4gW38=uT)4t z%{^gbKeRuFyb>t;5iR?dp!5JSR*J+hh|XoVSITuCF0rC&1cY*cTueJk??)8yr53r% zWQXIR?h}=x)__a}kY8_VGJcG36`*9~ue73U&GCVrTt3aMN0UY_l8)R<>2X-i@wa^b z+4-`h*e$NPY<g4ZNOT8`3H#DUbm%HYoCVSKwuBvw5n`O-`>0Epnqymen-3yq!HWpk zWN$<K@T4wUIEz3PWsW-T?vYI|Wx7F+Z+%#O81EBBYWtRn+BrH1Vf#Repnlp<303cB z0RWm4^b{`qEc)n56eJRXE=bq{5)`Mfh_`S4wa-m@3``_4$1McyePt$V@K|x`SuK+s z_qF)IFvo&RMphQ=t*yc-FOV-ng@AtR2;e-Vm@i@hqoK=x;Xjk{%D7K%1VS|d*~9aq zSpJ<pYE#zdbEcqnoNCR^=Tc#M2pu+<#IQRK#al6~%>8YD1MdP8b1%Tn_qv#IVg9m( zS<b_vVJNK<O_~E5Cf_{CUv_BjQ1oS4e+a~65PRKqXUu5{wBt`DGq|Il?>>^G$yUMz zL+xW@>ASZZ`g;kJ)E#3iC3AZG<q*||BR=wu6y{d<pUj$0G&=^apq+ce4wdhb1mqGY zYR*fMW6Gsc+yWAxGNStG^#$e1YfYLHb=fP6B5wAvTCeh-x~BB>kQ78HPp=cu2k&c% zktNMTPR-l2Ff0gb5LMCOKfSe&NYHp3q~AWU_^K&xhh|3}r!QI&A9@1i(BnVIdQEbD zJJA5!ekkM58?t4%Et}9^<$bapkwt)P5><|^J^L8)>edx=n1VKEri2S6^f9J{8>Zk{ z@LgYFCENR?2NE*GQvMb>F~Pf!J4l!eMc)2*!N?&o7Vc$0Z*^3p9Y)y_AZ(0XBr&aO zvFnPV%kyvXVLr{0&9bUduL+(nDx!oQnj<7|Rwf;ELCQQWk{jaiIY3^4SIuT7$`nPp z7D_R$0CFF^CNXnWf12uWOk8T~SSMQuNcc?3)=XAl<d8qt&C^+v*bVqs^Q#bLtC~3F z3m&#X`9XPKm@q@^h5I-ztvl#echGXwLH?oy0t0t!#`Qz+7sIxjlCAw`VfHFUNNa^3 zg>gtn7gm!8;y(wiV+TBr8N1P)x9QJfJm3EZIG|lh6~|+Orua?L4!mRx0!-Lo)HH8L zo1{!!CMapLfc*@xE+Mr0JbHZL(grX6IxnpBCE|e%v2qqTCD|L-Y7e3jMS6oXHBzBx z`VseguiR-=(ZN{vm|4^(3Z8#SkCnj4yRcn#f3#P`v)T-BsC1oY%01J}UCGtDVd-zC z`D)rm<zlbBtHX@DzvKFncfNMjfch;6t?~zqrS19QDGI{21EI*?MQG`8CP^$kwVWvo zMgz?@HC09pajGI;CuV^<U^+uE1af>VNG~?4(k2`QfK>apl(UVMg5C1ujD~ob4Hx17 z%VfB~V#(X%lOmPj?@Srnsn6I)t4Q&Fk`)&*wdqqfw(7`$2xJ`lurDfPV)KFFdlcj{ zSKha$O-wyeYKl*ZJ%i3%8GlheijE-)Z$cA;qNz*v$T7G%FTN$a50C&_bOBUO@Nw;T zK~xbIlr!!(gI*zk-Nf#X)_o7dS8c~)=&LRj^2ax?Uu-8#GOwzV9E6<Y5aAz$!&9h- zr~=<qe<p;r@7gZ!E3E|HzK4+u&z1R!Q{yZyeijl1iW=S1SUYhfUz-dBHmh*Svu!%B zrnW5U2T_SO?$p&?E}TZag(op|dx1~se4FDuDjr_lemTih$>Rrk!Re}DsDiUi^Z5o* zzTSE@)hNIC$)Y9fYE#{#S7VUb#+==ehW6RN0$@OXr6%M;-)&uq{j4?-Lk6e*NE^pk zscG-6Y*%Nqr<GBmnoVa!R=O<$V%i&<Ai(P~hTt_k*5u&M6<wtEu+GMej%WHLcn;sG zvZxz&`&s(uw&=_FY{&M{^2_j9T{LN)|3N2~Vc$Zwm${`XnSXTw!y-AA8zD&h&r-En z_maS<QGJ(3dYlKW&M@XDE$1UR(Z9S@a#<QY2@9FnkDNB6f<EcF4&T_91NsXJKM(!> zr}O@@isNUc!433o{6Nhu9XwYr%IEb@6Ntr>cNtGyaj~sH=fp!foGzExtYfyI00AKU zdIkXwL7Qm+6zN09@hmhOUKe^lE~$a4LE)eQk>maFSp~;-^w%wnzMu8!7opx+F^1^N zLXqifO&wrG#@_K7qFYA<_qio{=cn8=c>3!Bl%rx9rfy;ezh_l94YDxbf7N`9J0`R; z@{aC$z?z~d46KDt8&UwD6(w`EhLwsGDUU!tb-YNPnY`gP6a7%-8niO6(DM^Vv^B}1 zuC2tZdaJnam@qU~*N^<d<G+Z!0006u0jULu-!5kI7vnv-&=h|Uz};to#{}ih5eGL8 z8;^4Q5erUk(B(Q_#GSbRf0%~D+$Bag56PraT)kAVZ5ZJmcnytpL3wiu+_~BB39O`) zYT2i>%7w26+BR9|G(dMc$DZU4d`x?`q{Z2wmS0h`b|PjoapB6Hz(^BLe>qu5uB@J5 zr>4L@h8iD}(B2BHS58E@LZ{&_LCT))+qKw-K>M}&D5?X{U&!ycdd-M~S|V}fy=oGh zCg|rCnH*9;kCM|!SPT3<p+Q%g^}}1Ptu;yjnP5PrF{RVg!V`xMZDUG$4AaUSOfsp? z^|&UT=UNK$Op%g&pE{TY*qb3r#-LFZ(5EA+evT4Bo0_?v>vRc;Oldx&x<$#FU|ppM z5*qPu-ll$2<9+q)flCZ4F(7WtK7Hh_DclV{(cb0JRocob$ybB;mjY#GaD~?Tdb~?< z-;6i_j`t)5J_HvH6kc0%!|dl)L#d!P>bo5Hv>Gr}zw=LUF}^5PKz@BXzvVi5qdN$7 z40pS$_%!4CKe)uoZni9}a|pS=n!B~8$N@Tkd0(F*T64-;&)@p-E249emfoMhswQO^ z<$#PUF(Q>=>)iU{$y7iID5IvwHmQdM>M|%|ev0S*vG{2jS`iMB1)+J(ZlkAgux1)w z1<?{ZAp$---SIn~HRq-R)9`_~$%Pc1(w)<E$3V4U=zIzqcq>Vcgi;B>(^WU{4=G$N zt%ic~lixp6eDNkJkqStUcgg?&5MLqWAVR-)ceMzrm}cDNFxNPXWjRgk?-`rPqCYN- zG(0#BFGtt%L;n=AJn~dP#Eb%0;toNb;_+YCsGaiTqVe+TI`<@IUBX}?6Y|%coI1{x z>%J~#+rYW}me&y`(M}Hhc6~UG1A3-KSq>sxIz+sh=kaTD<UD~DBu|-g0`aoR*dx7{ zME~^}D%RfDHq@f4%svv7u++EO9<`2SMxv}D;zr=>HFl5?a#UWuTIv)Z>W>-TP8#|A zVdr?CYW#QlC=ziiwHX5vC2M|Q8zKA42G}l>B@*A_%hRhTurV?*GO9`;JzY)OC~0Mp zYzj%91H*sxXSF_SSo#M9N1oC-IEvbhz(ezV3?h(u(fn$SM9LOgHVX%CC+J|n6_U-j zWoqFX7!31n2mo{yt`KMXrgG2OJcF3&Rl1R?;H11c0(bQc4-Q6`ynv2x1`(YBDdGR@ z){b{9uG9#r*o^QGaKcxjRxZVtkd%(69g=zlm~MyCCxX>Y`OO)*kOenKHM?9Og=TFG zx1;oa$fEVNxinurRr;R=!b`v>TohQyj$ssd5++tiDS!Zn2@@aF!HG^OEz8K(RNME) zuM0+Qw=aAGd|TFx-GRTp?~8xtqRk9OIEcqk>PA0oX|sGS>3v^`&fVCHGr$a`B(&OZ z->c6yH?HmX65k~Kjk@!%J0^i7j_ohN<REo}^(f^((3q!%==vxRFpqC-dNm|l#^{6R zTUbFi)|oN+Y7;ujs4JrFU2HT?|5inp^>!1Z9@_oddBh=;=)(%?mOXNtV<ps8KKm6z zlM_;T9r#p064pjEtYn6+weOqW_kQ6cDRc^$8H@qtJa};05k~j0pZ^vxXqxS@E|l!e zk4)3mnBp1ie8F`-Vz>v51X2yxhaS60PAH|iMHdfbyA@z23oE`mNpJF*!R$*qfOEuj zN$uer_THYuC;j(zrcZi{p}!z(PauCXCJMknORH)MMSW#S1I_*k-8d6%C72|k@0tLe z#(=!p={cUXE+2EcqwRUyMT{~=dFH@|5Yoc}Y~{5$@v+L+F_^4mwS6Rj9gRelg)lSd zD|=M3T}_#uM@0huuA}Hcxn~juFI};arX%AlRzDhx0Ez>ChP>W#Tu$7mi1|lq!Bu)d zFqp+<Qa@fpyE^H2U`<z|fgHI)(9v12N1&2#V;shGA@VM8@f{WB+sd^VY)*9F&6x%X zWz_tOL*k<F%Ue#DEyNAwVJ9}gt5q*$%S<}<)&iv0DX$+bz(+Ff56?;lWT6kT0w#Ob zWY1aJb0lO?wiFTRk?#_xR+9K5!)e%KEJft5BGe~Mx4GjJ*}+aTqz4DSHDTgjpJC>J z;T59=c8@G*2PYALa9Ng0sZTLF`v{J$3?a1H&{vr^rSY(MU7L>sR+IF>c2%zsM9#`^ z@hy)7y~^H-i&$$JIew`E#u)tRXL%fxI#Q>8ZTz;N{HF7}G7idHJ&59WX*|vd--Loq z4p*qWFGF*Hcd@BvxDdvs%0MyrNwyT&@f3D3qZbb3TylBsjr4l1XwEHF;er|XAX^XW zs2&`AmL_9Zi2icmi~02|A(i`8Khb^`DXwqD4mw0ZgvM%*3q2Gt1?BscLj;L{pKMCM z34(72i;i2)sg=jhQ^=gtp@#AYS`Lnrye&N6HIK|8MXV;h{}S^Qn;XjtT7w<XmK3O| zAY!wxjyeXxGtWUUG}i<@{2Iaa3nje+0L6J+gO|LqI}OR(o9@6qM7wV=<!$7@)<BTn zJ|3cAUFKuvzv6AqOO_3E#$Ch*SBZ+%D2Bl_c4<I>bq}4<8MX{)K-q=J`WW#VG+@a8 z-qM15`Fl`9S$V|Q)y8a4y3*=q)>73S`O#v^%(RPzjrJ<0YY~*&o%o_D`COm|lvs{L z5P>5A%;IipzFZFsa~A|>4b0X%M|fBOxbQN+IVkz8_doaqQlFh@CYt64g^X1OzI^CR zmik*hHqQ%cT_mn$R0uz=sO&1<y>N51B5t7NwR-rU)Pp9=NWs>`^9Mg$E@oHtB8?m} z?!P@#mgrT6!ccjLybb|Q`tcd8vA;HZZ*(IgEg`}jHIz3E6kFHmNdii+a5Nx?z$1*+ zU+)Mh7Ux^ysGq_ym+W5mhO`F4)kvsa55mv(z|aR4Pny1A-0!3EL3w}8D99|l-4M|N z2Qk+Wenj0~VgnrM@jfL$4QIaAQr7<IOO8&WlMzN^OlxSL6gT;OmeMvcM?B7<7Lh@4 zd69lzyNwu;otG5?cB>bu)i-!M3b^9Y!wfLq6^><dgQ<EX;?)8WaO@~M9*;K<rY#I> z-{->d6fElC4e0z%VP7PHPUgpwwk1s^iIDlVcM)~e2vnSJA>Ek1{oz*hZOW!jT~s9| zzhm6+VPyDO#W%I-_U4a0Q_d{OctTt&Q-5#;hZc=Z%%n=M<e7$)rqtRFfNXvU8xhzP z1z)M}ob^=wPyZZKxsgMw@g7k0{j(8DR}mFK=!hP_PxWig^KR8*!8kYSf;$-zxls1W z!iyiCP>Z?$d^S31v&@3(D5Hn=@mM(w%(8_xP*Xp)!l}ZG;@Te!jcw2jS9TKEi<%&S zoS3@zyi@(4Yi4#*udJwrTkv$^EK0>4AjVO=C1M>1RVWg!aR*S*_pHH1a`N!I{O{K< z=lsSqCq3rGJU2HPCMV<^tm1>q+y!@Tch1;S_E0FLZq?gP7tIe@WMcv993$>wgOPJ? zGpJ=LAhZxoIW@Je7Yi&yaX#M+m`T24x^6e3>@YWxH>ST@a^2Ik7@U5VFaiA0mB(H! zpNsyPf)9a3E!B^>f@S->+NvZQs8c;{?<;{m3plKDMVfA-fgI`RyCItuI{lm#dhgY3 zv%vWg)ug)???o5m@C8MudsKqbAxNbXbc-|0_GzM0UIIvQAjYt7^!z22h=5GE_c*ta z)Snvcwq+>>`NZcY<Up;dSg>&vL;1bT`{b(bT8j`i$*7>li%(qPTUuL7a&@ER7_yQz z(p}j&T@YQh{0jDmod;?wNr+sH3)u%l-$D<5TtP>5j@ORBL?agU=cf|Yzp+xV$?DkF ziak0@{s!EbSVC0ms*hmgFC%}bQzy{>!oh77+aZ;!CZDlBRHsrAUZgrPYkmy-WHwN( zi7*-FHIh}l03!uv!a-gW;6jT^8v9%>&luc0aP2jgLYn-hTw}7!^AESg;bTTLGL|+n zFKCg_0L?4A+1tQEe+9WAa)hK;<TklWw{?q-nvjk}U9agNX8uw`?b<FWP3evxL_g8Y z|Bbm%Y+4s;MVZ3Q*u`q`c^qLjG9l9j1fT4_pWO}CIJ?%PvRp~;!TKn<I?>+Ya6220 zq(+`i(c@24@smuHD{c20v1EXM{O98&kOt6$mj9l#v7R%rQKlqxnpI>ZB>Yy_S(n~3 zG(`k_{*Vl)=U(|~!pizc*@JZH<F<IHmeH1(i^enfz9DJN+(z|trRM^mF!n0Ii8y<J zv4X{N8TvWcnwld7Wk(ORw1n}oNeem>j4hp>gSsUCB{92>%BJbzz|sp~&7&>+ToPud z>t~ezv{O_`Q+cMNj0$u)BOL^M<82AAO4r|<1q<4mWkb3fWXGCx;6l>;1mLOM>B8~> z$t5mKxe>EII;_noH3U&|r%{z&6?preEatRn!fMMx)_Hsrf!z5EEZqO%Is9^7%wbBL zN#}Xn8tCD-c#Xf%Hv3=(QxmIsc}v+qVl8T0rmu5FWZ+tA(^=v-mdB?O<{D^fqSh;X zNEKVh!3;gv=7797cAju@@JxM&PRu=HoH)mQWlmA4Sdba}T_49iX#We;a@}*KGF8Sq zO_+gv!s<U=D4;3)LLXi>oXS0y9ZP6K8I%$qCH{8l@Q5FQNOKRN76tgD0SyM?VN~Ie zIj(Y6Bii{@2DUf&w#6GJJi1l|9)_Jp1bh(icylB9!ADsf%hEG$G06fXR!9SLG<&Tv zzY4Kik<X9cG80#h184Qv<$$}THxXh;vFh8t_GlUYFgMG<Txa~$e4MXjqg}{Txu8lk zG+f6YGZ4!J0J`G=G-`D=kbqM_4RlAvSJj655!B+*?o*IO0@e6(D>cVOGz%0${JMl* zob-Q%Sq<7g0d(CMI9lgIr;0;MF*BYAWMHjH#N{fdX9XLz=;jLSM(Y}nWmi1Vv6w;F zD}&RzSfHb)n)x=lK<dy`s?zQ1?C9UR?AjW~)xn<wX~K(<GNny@5_AND%M$I!CbG(7 zQq0w?8qwpv47fDP9k3E_Cg9LC#Yu}Owac7JG7}P-1{A$7Cyi_uPfasHs!}~%;h`NV zJ2!3=rCrBe@ms{B!HaVR|M(4c<F}bFgri-l_Q|sX-*=-$y`++en=-l`=Jh=jKCvFM znQ}ALj}m4`(~t&Y`>*t5r(k%}O$Zy9-%ccxWGa)CL<2uX=#YK2TW@*w%OvB-DHMVg zefp7hKgVbdq7x|vj#Q@K7~`#&F#m#0&W(D<5;Tpaw4gry=86w2G{a`2G6UI4q<_(9 z&(W%9v9*@f3-q^Vtm7>g6}qjd^5L|wRU1yRQ|W+o&TStsAe5{txHQ>Z`J^sy!O`LT zg3`M-)F|eDZQ8b4^uOM@rVpV*Z)G6?J)vw_-U)pcKfMW&Y)pHdovR+iql}CD5u`{z z+q_(e_nM9~CvKs5XAp2^)^Bv<)v*#kwl^jT7ne<drQQUn{Qsm*Z;3_ud#QdvP8V40 zAMPd!z+R@lKqvAjw05?9idY;brakTS`fvAV07%*~Rj{8LW}<$G@^#>T8tMc_eMUbz z`@B~Nkuk%_GPU#AbPR|3xd`44&DDQAWUn74F0?<raQn;9!FML+8uX`26P}Qivq%Im zc!~o5c0c?;+0(k*Ac+P&&$+k_<M-e*j~{PNR;DcjpOKk5)WHDtO1xypMGU?JMx9m6 z59oY#$uqskCZ}TccKQ&P986~u`$}skfG8@j`0(f&828wl(VqP#p?UnC<(JNQQ=(pp zGh&A^yC7Dz=a(LfdGsn-(Ti^v1l9s@)0iUw5`9PrSfx9{XOs)M{xzWjJ)s9}$3A>l z6-xq#Hw}r1^GJ-R;Kyxc{tq1_em^V+?AC6wcfs)ZgR0UzMJtsrKgxgSg2A4jg?az+ zxmgvTfNFnKT+YPe(_!DTP0MIh)k&sZJOZ48wg?BRoi`XUP3G)zZ%Mw$^Wm1vz18*$ zrE6KymV=+n=a1a@mn_T&)^-7Ah}e&Bww&W`c>u~Z=dA;kwkO{D9J*~e9G($a{Z?!3 zw<b0*OhR<+L50<>Rxj;}-7%U9sq|0B+8cty`Y^$iva|()9?T(!2Y@P?;T*gD`&zU| z#g0bbtoqhX91)uA<%pJ_=$!&1<)lumuypUxSw_efeA0NoB|ptn4st`PqjmS|$C@5z zNOY9(z*jajiiPVPd*A=}N^LvoN>YL6Eq9DIEJ*&&+QJtC`pmyG;0bkXxSmYV!zzaf z<1JWkwM)9zRcu?kAa3YJ&*7&FtN6n$Tn^mGVVp=?SD?l)r#41lYf%Ca%<a+iLS}$Y zjsO4xD*>rTi2oy+zP@r7rTe9R8bQgRJz0V(St;yBUESNCu)Q4tNSJARNdz@5>6E1j zNo!4~Wp<=)zf?u;$U+y%Bme#%R6L)y@s$Z-cc$suv9v<+xh=Tg#)fN)y97{v1)^BW zy>GMs%(@#EfB^R<fjbGmSqPiaC3$7&>A%p`{{r)vmTfq&=3PWbeabE>6<E??q<o+q z0BpCf1*`gs4t}o9Bk&HSXY(HW36;tLYQR@BG$4;`3&6$yFa}_+j%T2tJreBd6>(c_ zK#N0S{98&gvm)mm3K%`C71Sj=rh?QeD6*0|L<#%tw0I8yZ20Bt_Lc%<%L|i?8kRh! zTsWiQ!viixirnGI$G|7}>6ZhpPSn`TPu;EuMZ@%EGLxZSMet-kC#|lBZy{aS^74>1 z-pKkWT^=w<u0z<dHP6CNimQo|TQ@BdaJyE`Wr+9X3;Wr^&sjvQe|5o&Jf9#MJ~gj? zulJW?FzK{oNM%&J$wz(K^hM$tWw#~D6<1svOR1I_Lqcn|gO|I!nyvhk=r%!muqp9g zWHTIY6i!cDG5Tpz2+Emid22sm`zWft$v$=Zd0yzFB#WLW)h6+#-ZZjrV^NN;rbg8h zM#Aa4OJOq0n<v^8bxn|A6q)<tc$HqEJbI+G#<v)nAH!mH=i|m(Hu=#zX{`Uy61F=$ zU`qCiEI6$#x)S$y<}lw^@&ACdbFHdQ{K-)Ks?)fsdkFJ{f${r*000%KA>}AS|9^Y9 z1r+G}-E@uDF>fgqV)r(F+O9bJ3TZ!0mL|s!?wjTK%kYkUl>ht<XJb_=E$UDa*QadV zVn9$o_L$UKsmV{T_emi2&(gfx82VwhY4D1XVTn*S8d;)R!QJHIgmcjm14u>yB|(Ab z`#+s$+by)DQcw{g+&9+j(=<6$<u1A%T=!V-ibE%7mntGF%qybTh>Hz+@Nx(LeJVyn znG*vGK0!b~56|{Ze%?kBJV1B-tOxGj>BJ2lq{FZdAv34;F<toG6~!LW<{xq%uM%uz zRLDf^wYFYvcqs19&z^O$M!E1+#tpB^vQm{&B<bx<V?^f)3|YoF@Cqi+G#9-_Zd^s^ zyJC|^qz;;M+wrU}w1o;vpQy-J`5&2jNVe#Rw1B&({qH2n0x#TB4Bm|xP_DW_vJfwA z5TOb*RGboyiT)PPbxD%@tv9C{ea`c(g#gcb&o|HR9EIwCDL2#z6@XP9FeOEiGux6d z+XE&1j*(Fqmcd?(AAEbwAfV{@Rj;93sE0k~D<1n}?_O;o2ZP2qt3UFJnV(!vbX)9J z+i$qiT&w&8;^F_W2Lnr(a<GlP;#}#<SUFsWlNS{N%o~1?*UINp-PX)e{2e}tRM0!| zDf^9BK^%XFCLEhO^y3A4cA$EQ@YX3qJs~0ea|=!TKJQ<2{XAnlm^R#snhzO)a@TV{ zWfM!Vt_YDd9snLw>n$Of&Oby`%@@zI?M{gK_X{e<E%(EKAHb$%;*&6rrBR)trw?1_ zK95a-?JMyop+V)HN-c&)GrhCDQ5ReVH&nb+>@w-8)jqgIn_c-9co+`@L?dt6{+AC8 z>V`KPgqd0wtz_-HdoK2DDdp7f<0?DxYTwLXKRf^fY`mv?u7<RfkTjpsZSkDaG9ti} zZAR*KS9F*U63pJHT14SOaZ9coFp=C!$1B@;(u-3*id7HFZT}f&AwjJ~6GS=he>I)r z{e&%T{8^sRzM_&SZgat_3~7kud^nHW#gqoOTcM|k>kP`&ZL`>4#*-k0k${VrtynX! z0JlGu#`0Jx{+vW`{rXvOu~KfZYjkB4WEhZaO|3%(9FQ`S3~yOx_VVbd;P`_mxj+6Q zije&9BZ~*&UpciZjN4=C#EE&1@F(@!If<o4OhQ4y=_S&O7qqyswuF6r!?DZF|1e9- zInxlHFlO57%Z$>j0d484xf3EXNF&rsaU8arae{3ogN%++P`VNp56ZCd|LALU__<ya z*1M$9=KR~Hw@i4o%Q^={$@vf=tw^78dty5gsJ(8gNeb~8`Kwb;<7G8b@MeRDsvys} zLcz{7SQt~)Gm_=pG!8oTnjyqYX<&+ebCs8?FYQOEA30QA=>#=5$dUQk74MBCY}+vM zS!ei_IKj^(e07k*%U~CqR96IX*KK>pH0P!~q1sL)X2aWRuiaI5zDMZI@pE`=fw4g< z=g2+9qFug?EPX&5^ay9r3+W*W(z(RS0T7Pn1QP9W^NZ^NXOadoTAkpzzK%Ek?V`3z z+U#~W44=@BPm#|zU|r9!qIfAPVkX*t6e=@16`;99&8+(L-Cjym!(M|{xV|Tsm<*vy zn<{mZyEh|?u>kKPQKzXD=Zn+Ds~^#=LRCRX4Nv1zx_iakLY!K3`4l_VuPu02=NfiX z(j6~fT*?ExF;&f_^TLU=eYM?oG2LZ#OlM0?Q?Wt(ewm0=mx+~8Dz*3ErcDAbASBtL zr9pQk=it1hCN6AnS~h}G=Vd^G;N^phzXUa0{0w?SX9bJvtx29i{~1D3l;8k`XOQ?* z-Kp%+$cVsFg3|v#xB?Kg5|xYDg6bH+8F>FCKmOYGvM;I^WtDf)){u5zxbmal<GFFi z@L-fxEnJpm?eWP3ps>RF4RxdN<)3_6xaAvHe$(JS>H;iC_Oakm6`aEAI#8sW0ca&L zp9RxFY%=owhNhd)3c_h}t!r)ucyRjq3CO2`nz`JxkAo;aAn{>G`MDCbgJ5`y90^rG zt->CM38&AZEOU9eK-!ro;~q%KS<b|A$iNxfy$^`^I*?fDp6-I%6w(bx?t;)7!GZ#i zB-o5FIf{<^v+Ooy;dd`E1S;K-n7pEYvttFwboZB&S4SMA6?||J=9)o8?aZ_&m*651 zN9K<$%6w#Vv$;yaljM%SXb<wbF`F4BU#~i#M&0_ZB?W9OXJ6DETi0&nmL~764>-Z< z8^&G{s1~=58kMT|_zJLx%+5(n#fmvx5@84OI3t&(ZR24Fk%9dWZiD<DFX`xoAP68z z8LATGVrZ$6DXzPz1)b(?2v)mu8!Fnm;F?h5tD>M_gBRsQ&iiZTm0SG7L>hQk;rTTE zMYFgT3SKR7@*<sZ9s4~N-(EQX2WJcXd0!)+v<^m8*2H&hHHT`^km;)xO4Z7vKcnW9 z=`Jyc6Rm~gX9E=KUVrJw|KJk;|9@Hk|D>4Xjr^7G`uLDReJx!w-X&mXzgvGLT#6HE zTgHGI5Td=uWaxu9GlGaS*F?S6J?j-w(U=M;O>fG<WIv{DFjSF-CSd7AoTX9EwQB4| z+ry`W5CvX-0@}2<ch0l_QwnfyJZ7PPkh@MBh_8I%09dM|$Nd4;s>3}AIgooQ&d#Xj zNm=Wvd{07s#Qe6B8Ht%dZat6-QE6wqEof}r4|{08FA1OK%akXQU*82TPva|vd;!ZM z;nJ$-O_aYi1Q&X}c@lVWj5hmX(=U|=RKK<Z3>pbVA=V$*NORN!mYuU*;l`G98Ze3C z^S`8d%YnrZ+ji{M*W2nZef^&Z3FvvsT5W&imKyacO4FgO?cJ1i^%hJ|m6$KXU9}<P zZ!M>bcej-`%(j>)+oJ9zEzuQxe-wfYgeS%1onvi(mcmk3c@0F}Q){L*k5%fm)b+;} z9ldR}!Ag9V^vcxTybLE@DLn1(18vOd{^G*v!edJ^zj$XR>uMr>y~tP2$KV=V=`_dD z%#MMS*W+t*>gi#{>l&H?p5m~XL9hc1xC$p}|Eq$Z)p-##v9qxEWWY<5TX!NJe;@4W zwaEGE7}h(jlQKTBMT<}a0V<W?^r9s^w+|YCuE(0COimEl8nFgL*~3t%K6vphg`6!; zp{Bl{I(32Q6G!&!1{CLCQ^QhDd_MVI@%^+R1J^Sn@&x|!8M-uz?p(Ls<(DVvbl0`A z8`n9a&ao*K78}z?wl|E0<P58jjbKSw7_Ua`vycaN#8|#j?(Th6p9EavDXTYH+hV(Q zIoq?qz{aLLEgkp)Q>Ffns$<Pz*(uPRSz0#fDci*WE7#48w1ciPG5;+ZrXy}s->XTS z+bw9y>`LrQ4{<YFU5yNEDG<peWrdmiO6sX!Ec-_^xyZ|;nOcPanefebt1{Mh7X_qa zl6c2YsRYPd=ms-hB^R)3e8E1mlyPMQQbwr{pw<ci(N3A8_lqrIAgAYWI0zzJS5vcn z&%jx6JX>Qw%ZnV=48pTgO}m;4?ujpeHxaoI={AqIXqKqmziigotsBXBueSnK$UXjZ zykB~%=VxMIc0O%}wF!*c^jQAT!!Eh%?Y;EfeIqZI+9EzwZLA^#2d2<fZeKH~2h_5? zj;dD;7hOjkb4_Khvfjs))sXpB!752b@TR&b3h)O;Yf^%Z$l_&-s<|x8Ub%K``;{uf z_91G36-A(Qjsw3j1AI;tNNKq3LtKp{+#>ea0HEHa4i~p+)0^8IqLrvwd8u*^x-e%Y zlL)};?q={BTUnLvT&lbJGFbG2fbGPeT&smPJ<HrK_B@vGpr9Pt#UvLYD_3$uo$@XL zf{AgGSQ#ag068`LQ982IO$-pfDEEs|{Ff4Q$Xvq2^2(?Af|E@7v<+}P9TIe09+<L? zDeldpCUxuDZGnqXV{tJtgnqPCFoQPiDIuYSit9xDv?@YR%EtDS<)_Lb3)hs<xWzmG zmX<4hW*3?hZ0vBK@Hiefa1&HvMeW)SfZa8oQYqMC*2Di&Gk%j)3<E0@9D--}XC;a0 zh?5E#swT;{r=#mN2=7{ImY1h7ROIw4!pdjA@~oqQoH*>G?LRypP&BvKg5G%2W?PJ9 z3_vr{X%0joc2Tb*E7;yY>XdC<sn%D?48JP!HVqtnuY>TnK;@DIl4ukz1`VI-QTiiX z8Hs1JTZ0#5$(IW=8oVX;>+3QHxY8IM7(I;CV!Pq_U@-!O&1>wN-x2g^b5mfJP>}dP z!D6x7<`ZNUy7R$5u3mJB=)JRsdurnhPpi}-(anlqN-I0(@Ip^GipB}-ZdaJ7p4NS6 zSH!Pj$eL^B9wBcgu5N^L)n6XJW|1lJ0}D2feXV@IcZB-~)%D*dbUvv&!v!)$R=@bZ z!`{5F|DaJ7C=)$2FR%Eb7)~J5MZn9V6B3`n@mqN3`~T1FBKC|cU*s;Is<4UxwDgx> zuzeE^Mz8n1KJ(o4ar_KoJve#3+pA)k(E~O{bsBTC@hX3{BUWi+6NtF75Y^?L;fO1A zMxmq{7a<uu(5tyDQ^yT9)ut!o-gUDpUWSR=0iq1UinLON_ed!y2=(47ZLtefNVtz# z)ya2T#NC;Spaodcg;UvQE7QNMZ}YG@j?yXhQhfrXV?(BreP+;)*GX4Dln-y=tD9Sh zG@axk*H>Hz^rl#pMpZ-X#vY0rOq{j0hE@spXZ*E}Ij`BX#|tL!(Kiu%pNDYjoIm0Q zDsLGRM%_Q%2v3FA9j-4p%P{hnRVJkyW5onR_&?vteHrk`X`AJw_R7Ho+wN~@$VmO7 zoK1RmCLvoyp9IEXoK5QcQ}~b@uQU=%;^@CQSCF*eYi=j?nyh$|`jD*;9kViA=toV0 zrBSY9$i4X^;$n*w86$Z6HpJ}uX$Muk#qjv`TblH?M8P0HZ`Zk8MSV7Wxpv$c@i6pm zYjAL}`1V;cB$G{C9xE1o$#9%cgs94zTiMZdJru-U$>R>aRDQ)v&@WH~;j$~cLn-PT zKP`o^nee~SakN+Oyt;-f%^!c^96o&$%UBOT73=RDL$9X$)@E)G3`fo;ztp0cK+uML zZa2?&Eg$Ks?vNceHADe_Ozz2anA5m^h)jXNc9+(>TLZ1V;LlP}kN8b`kigMNHjH?N z10C`J6`pPr+3_h-weynTXj|J^eT9c45U$l*!-xPtTqH&`PHFLn+*W<=Jr8q$%K&j; zmIeOFcrIU&wJCg>N+FcfqpQzqq4x&pk8}Z?mW#CAWV+lZ4JuYv?dp-y8(J`bzhIF; zEACKsg>QP{Z4YZ<Vz<6@N*636cH7%u-ZJE8h`sjGrT$r;V=I?Vu{g#(@U%7#u|^+9 z0NohrUDX%PYUisSnzfLug`xs*ov)?rXfzN94_!Soxpc|Wdhc6T&J4%0T=|;@k&;F{ z+VcTodK-dPdzv;KB{Hi*(Ye~e0FZ_FK>#L$e+&3-PrlZ57Z|e}QQOj&^Xl5R!Qg6` zJb(Vz@cLul88xSPUybb-A2)z-RL<UM_nH-_n{;D}<XH}Q@S=S_<ky+`z1)h2ZT03u z)wyKrMG@R{8*AwVg(vkBAuXdz=CJz^4!J_3Vy-V(4JKiAK*cgyP;(u9TsSJ>KxypZ zCy?P~Pit2a&ZTdLX1GQbzW?@FBE;jbLAL7f=nFU9Y+=j1z%wEmjov@q#=lc}S@W#5 zz6mf;O0%0;d5hUi!Np(!OQ<>yMq&wTsNmBMhGlOq>?lZAk1jN!T=mQL61?j)5O%J{ z_Lt&K<_p8NG*-8~b;9I?nb;>4lIja<vikH>w}fS0oEV0%uPNAYsI6m7n%%34fP%o- zYu#lXmXyy#0@zME6fCMJ7~}~P7x3{7WlL#EN-q4s((l$?w;E6!BYJyP|C>#=7<gNe zJ^&mgU-zBU+Jz)LF3G0WJ}N9@Qi#JhxN%h!bXEi1f9u+7)*T+m>HV9o9pOdfo&lB$ zhQkGU<_ZLBr30a+nf9L!&VU8@v0y%)HTLsK*W(snc`Dc}j=0fGDfr8s?Ri`r^@Uln ztSPVGK(?qwSh9wZ$UKkk2todk+nR4ZURRB_;`uOuZBjL88%EiURJM9ThyaMX5I>-6 z^PDO(_Wf|;Pc}1Pcs<v#fm0bJ-e?4Q`LFd66Uh)-Mbj?e<OKP=oJJj@(n{%u*<M^t z3<O|-H{#~rJz~D;>s9eq$D7;O*Sp!jV&v`4-01F?)qYQX&P}{7mlC5nZ9)wBFU+wE zj}Re|%eh~a_5f6Whns;OgFFhEu9gLUzwFh<t4~xPT?>wy&dO6(0{`dadraGV;nm7D zxYy`WtiJlV)U&E>(aRJ}E`CkM_XhJW0=9q=48BY2$<b(TX5F6od6g;*8J|0Xk|40# z6uX(cu1uYthE`1nt9#s}nUls5nhYVAgyq><nK8bzo|fUl#`7gnbdc=K+|r`f8j6oK zqCr)<h3lXq5zHUTn|V1)5WW9y43J!-WefD?qin&)3OIPVEBwd3g5sMxlv})vMx%)Z zRMyy<PZ9u1U|HVG4?saC%nis5im$PcZYjM_)SKVnPs?PtF{KRdzP~^q5urgQjXv&* zw`$(JQfrZlcU61c_*?VDBmm}#&V*$7_hz8GT)9#LH{~C$3e4}~oEjNJURRE`$J-o> z+`QoX%G^e&=v1!*qm6gopchYXzSJkJ`6~_&=t6D$Nn>{aRLlE^QeRb^q_Tz9FlAlm zuV;*cx@b@)|C@?S42#I4C^4K@YAR2NG9-+58)EDxmpmUP<yB&Y*mf`GLqfZ})zhgW zIM!}|Z^DgN+`!VrkNt!KgVDCgt$8noO~)G;iUwT)OkP>deydfY`cG#DhH)@P)4fUY zn`aU#)_9jfCa?grD(sh7oUk-gW}l>n@vIlBf!SZgMcgOb7at);3Ax|g_}DOp;e-8> z&SGU*0B_;5s4jvQSefud%7Tl_HJX!x!2F)qRDuZMRXO+&2zDED<dub0+EG~j_^rP} z`+Qjmjz$Q3tWznCoXNMN?NcS*w4>^|P=`OJ$%nD5ltiCJSjdQBY^Fz~6;4I6Ix0LJ zQJS4ghL5*#?6s{NwD4xzc$trdDP-*zAPXtuL|(D1BlR!vn<bfI0W%WZO~r?r03q*! z28SMV>6A9!mw_Sx5JKxgZ)ESX<FAj<BYGx1AlQ5Y8B1BlmHpR=k~piH#zNjhhXe+K zHTo97K?5rYa5QngrYEPCZ!X83h7z>!e>We}Qm}YTp88$Q@D>g84%E#Up||E|7;9P( zUi{hJ!c~c-re4Mo>0gkc^q=Wrl4W+134@XRujoAUSx-~Bv3F)$Xo^hOp=HF#fZJ-n znPiVF$+0Pzro<>HFE30uMRPONKt$=O7XSbQ_5rDhh)4hRUcBhhbSyTn^MxL@4JVE? zjy5@uA$v?mED<?T@a1F;zo})2(*?{0a1eJH;}_8J)9a`e{n6yV*d-crrs@t`*3}jm zoR;LTl2icP$ZT&lX2!Z=zqYw1NP)h%n_`|@4}S@lON-}12QJK1!T!;2Z?%J*7NfA1 zb=^U(n9wpDrDU<H7n9l2s-iPLfl1jM6KzApvSn6QftKg+g}?9IqT`$puHGyPjQ-wo zv=Vpn)Iw>!ut0Nr;ZMx8rs&`3rNB0eDTosCrtldHdDq=h39l%-_-ON~qQLH?gtk6( zrs@5Z1>PO;QPYtff^xTWuY}Wyq(nh!F##~wc3ikpHff?#Mj0HEyT<W9AwLr?K|lTE z%1oB$Np8b{v@HMFQQw46Zh%!Tz>3)vei#K7x&fUm!&rXi%vOE(X3@M~jcX76u1{+c znj={fm#$<o*U9x_aHNqN@Rgkx%UBFtpptS?X!5^HU8<?%%;-Nlh#UoSfEg=dlbl=0 zJsLIZ2~xVdge3^@kCRUn!!y3ap&P3s!f}s=6#l!bCsUyzT8Fq%j}K=hvDlFHg!d6Q z`Q0#>5ZBRskTnLqGmrTH;aJoQU<MZOACw{ZkQIT{QBPs@#-3ORHBTY)Mjtc9VHA;a z<BACdwb**v?K)CsyG02@Bd*=$old?g8(Dlyf3kf#SwJ)1|L>B1u5G;CMB{Z}*Wwsu zejYd+Mbiil%7mHt4jIiii+D5t!32sCF;O0gD}%qyLU%13VH(s7s#!_|!S%ZYbc^=L zUqZ$w#UqF+Rc=hYMrLhlni79t&-4Rv0j}^**bkgMeP8Tt59XK~(wZxzfTbc%trs@l zTi;e#!<T-Z$uLn#+EdCbOo&quv*Z^IuL`2tn%$0e2->X|$D`~knwlwH*!7gHJ}GEU z1GV69;zIaSVs4U3ByAK75%tM#N%(hncRFi8Vcv*9*U?lyux@D9(0q(@XTyW8d`<>K zF@yiodW6E$+c>E$EidTgg?;>=&)uhQ3RD_Uq8tF2-U3*R2N4i9bAD5&gd*D(a$2>V z6m)R)TTwh8-kGCot)QSG==p#rk938HauLU_Vm0T_Cpd}eO=`oj{JuNLbAs%6t%NA% z&0*O4+RI3xY((9+{T(yoY=yc^r%!!9%e+qEB*y=PVP^bN_EQ{?OOsdsjXlVydmNvu zD{}`Ck8(&??!XX5uhD=0D3T+X%%emInc~J}y32LeM=*yGRy9gNlUl7`=I%Y-c+m7G z`d4DHX+8NKodme(Lnvj;v`lv3wyKHaZPUA;ZlPJ?p413Qa4RIU#@0X5#I`|;CAe1I zP?=Bw03UlH<}gD)f@2`aR8?;pmYIJ>BI;<x-J)iQi<m^$YRc?_&|nUb{WRk>n}hJ5 z+hlxy9Q)TZvWH=qFYN!~-zVcCX&*R}H^xvG&38g1&Kjxa5myQZXMRBLa}x+cPVbi~ zwHN@7arWA+2KWg#$yk;=Iy09YR2oN`Q3w!pL{3aT!mpkT^EZ98rB?LQ+?r-Tjw9t0 z2#7u{p9SeY>{r-Ld8vT^%I9`@ZXQHF@Rx?LIC6yOZa$#*P76&m#HQaA2gqH?D|@q| zP5J9r7TQ>wc-N@oViB#{-`4zWSMaY)s%XIGK?Z*=|MPv;TW9|Dr+8g*@_+?oF*!yv z`AjS6L2WjV03}(-lFw|#?Hy&rbIuyrs%1LvgJ`lo2Z=$#x=f_w>4)bAku5`_`7f|X z<Dzz-;BXd*&S|SHl&7284Az%)UH=u-Ht6ja;3rrEds~-m;6A~~zZr=h?3v3Y^F5QA zb9edY{9^xI*P72B`E+j?x%<0$eZ@TpKK}->f@+V4W=s{28!R_}3xr#sNSQN;e&ZRu zgRp~HE2|)G8ZPH-?rIiP`v-}}Td}@l<%4*b+2O85?DTr|Fu`l!RwYTr_gRn|4lUzw z%camaHfA>eqxk=P(kw5}A*srtZ{J4$^xezpUK79=tiDAJR+@l%n-v9N-QUi><VS7m z88F=J)*o!_OS)4f$9LUgl@K!dJzU~CF65RbSH8C6uXzHr^06bkQY4%FsZuFafCaWC z%sO(4p11r!sZkBzm-!PXGOo)mLDU0@gI=JIvMy6lm@qJR_~+YjOAK;hpLKAd4s}~A z9q0}U8ZO`bsoKN-6z1-jU?5mNcQK-7nSDv%l5M<s_Z8>am2kED8DY|3r?4R(zAQs1 zP-o~d!>5r0iLeR%_KLA9L6j9b4;fVkK@E9Ii9d8`z`9Q|z%Ilrn@MOP*)CH-S)_To zUiecOebQ(Jzv_=eDRB7?|ML_9rEn=OWCIJkJOvtrR1gm3BaX^`2z>-~z9y_!9t9`I z5`nx|&VKT1R+bS6<-PY5&sQ`k%@KQ{K(n8CpJ|{p{hYugM%__(zQaIHvu@}nTY_X) zB0ulyJQf%fsrhaWP8;^3@j<k|N2}k9h+^2q>!<mjipM24Ag`GJ>`L}Rr0K32Y)X#@ zKB<Ql-)@@nsVSmpqEM#hvs8NB*RDvFMBC*HcIG)R!%96Coq;_Ih1X@f;{l#(s&2WC z`067i6ZiVcZlag^-voi*o!!O@6TtJ^M42G|WRJ1kwTRcbq89-dhUJpEH9qoritQIB z4w}}N;o#Ug2mXJ^t1tr>Zjk&Gcbg}amjj7<J2H;hodY34=7-)7+em7$DS_?@6n9q3 z6swVwlQ{aMcXEt&h|9=8(lKpnVKfzqow?p555fIiPj{FIA8ni^TD;{<s=~f2=avjY z-E5EmPe8E0cjm~MP0swS@3Q7)OeU`fJM{ChV;}BNO%Ov5HaBab?KD-HYc2KX4-6pm zAk+BJeCK7JZRQ(+;XKMa&Fz~B^_q?tXYySZ;k)_O3@E8Ev#uW?pA?SJil+y>M|F63 z4_vo>+VGxqvLShqGcSax0kJ{~88HnDCcMETGm(MM`nMZAiPp9~>1!}CfUk)-r#hBi zYb%PC>@6oJ!t6TZea&O_Q%!`fY9KvekN(s5ZRR(af*fEmr)G19YdkvW{O8*}A=R&z zEiMMVnMI)Ubd_pJ3>iT?Ohixu!Cjx&S`YDlD)JHh@)wDY9gzQM0!P<fZxNbI(roFN zpwNf?vw_M*M}S9Wo7YTPp6O7DNKC}9Po(}{W{Y8#_!dwl@6EnMl(?MtX?s6!Q-|Y0 z{}3@DZCK!`^yf58Ios6uk>nX6t;f`r<cJ~v(Z1PrZQeNHHzru&1$qaxBWEtQMW?@$ z8Nf>_7AH;i6TdQb8_*FDdR`|_{YomNC)wITIG1t6D9PA?jus3##sdofcR&-1nG+7% z5d;-Ivm8L0i~d`*QVr+~Az*pB<zT9&!uq`ZDtCE!$jVo29<vOEZ)O4W5`JoDYSuNK zV2k??M;KnHeSNuec!a#zKc!AtK#WMRQAE#%5S#CV0K&FSU5A|OuIox|0yKe2*w8lG zZGRvK;dXuOkh>Aj05SY<3NHD-f2;U&r8MhsWE5Sm;Mjsb9F-f2a=Y#vkJ)j&$8tNN zg>?2!dk_0W<hAB?Gg!^3=V_hs!Z;hkd|II}(IWr8O@J`@q9bW()M*I1fDA8KPywBX zDD%Dd_h&yRsY$mfDEmCmz~z#usAGzc8%t<7dy+bZmX{7M<N!O~)DLcHx@E<@1*s}e zQ%T1M3zBQTKfS%l*vI9_gdm;+2zw;~U16ogHHkwpIL^BEKB4E0cDo)k(xFn2$#a-S zjn8rc^8<x-9tz+k0EzHBp3!|YE8;p-O2tCDb(CA;bt7ja3THjqu`V!k-*V-)5Lawc z3VWw1S%#{T`^4ccko_o<GibEVVU_X($Oozv1&OnO<YN8I-L8&RT#Z?rIG%xoXmphk zO5*T4vJoC~pIx|cw`qFsC<Go#u!^@!^n>Y=zW;y%bV~kcOt~L_P}%zX7hi0z9u&bO zbRQE4zA&Pzb(ReOKaxTRG%;vASYZu#rBe!df6jLJX>WFs5{d#y3niV74m!{L%#?AL zyWmXPs`|QeRmli>YkY;=T7Ss?q!60VWw|B60q#{@g2bO<?JCyo4oV?(6ba;VL>==8 z)mG1K$0Em1QGj<$O1Gn=X>jR<)s`@oijYLj&jjXn9CZ+(O*>eXVsgS$f%le;Wuy(@ zj*LVi*D~kYD&usC4sF-ny(3jC^R-98esI}JmfVz<`}QfaHE1%d1|#Fb@-BV}UH%i` zZ5Ao*bkS^*mq}3kew|k;LN-L9xw21gB2i|}|IH30N{tm5%z^51{mUtdiP2J$XqC3J z{w+D-<!nW*!FgUZN^8KWeetk5J>VG?o3ZS5!ZG_(h0NIN9Up?x+boTiQ==F&gpU+( z;Ulub|8fw>!(CoJ!-L3?J%$30$+Tc50inisVCIc&(`%gF`yAvkjxJk*{|lf>t5TFK zTx8(!_dU0}Vig+0Tas!;Ei$Ttr+IPi`G_b0osK$sKx5_2o|GDKc=KODbP4jPVpfmE zLish{R=Qp@DTjzuS14z&yd4pP=Q@C+qw#8(2{~630>^s*W)~$kzRbDOW>I=ZzV))B z-YLW%GDfe%E!SMI9lEn1u{bR_?)FQeU_ESADr7)hk7;T6OU;v8RDAAmU-TAB7!O-l zE;V1+lDCdU@iG3|?3ZsluDqqNl5CoRL#zq009(qp7l<!%Wm+CaJC_0L;rybSanXcN z)18ezJ_LkiB<#%8-V4)QKSTj=AtM#viM8&4F#qv|>~bOd58!+rx7nHd6CU(#fZSAT zwpi<FzX(w5o|V!^El|LCmBwQu9H5sJ)<b-yQR{#jkBFrZv1V?2eTk|A$dLodv>Q?I zqVbLMhPfM`p$#BlYRa5H1x0N(S*2RBcrlaueg~xMBMBr@t}-13aInRcljwq~5Wg_T zy#rs3d9fNx-+Zr0pBSf{Wu&aaywYn`_v<OX1B%BOPdi=N9)mh9&T7P$TY&I!;p}oe zAKj=xsYmdKBR=QEbo8{THkrJn-|ECs0IMis#KaVUeP1_(RF>_wC(;%-ZYDpkc0dsZ zt%4+bKkEv4_$+K1cN^u=gUIZH7b14J*V@8y-g)%dh5>X_K=5FH#gi%0gp@55`O>no z#Um7+Ri7hq8<_8A@Bz`F%@^V>U*WS>Q7*}A{DZ{bu4seYfRlI_6Dv}%1{mvRxVSiZ zrOd(zq`6LAud<D^%E*<7Q^`Hs!wnpWGtMtPSc=~c?`pd0VEd(wFZUN?T0P4A7s6XU zfN8~eTmrm#fH&c}f20K4JK-xE%zvn+t6f7l37z0BaCp?~_wvR?zp|~8CS!iOV1lJf zXfWu*5>m|o{oW~6+Q(c^L&>N;*<?CT+&RKQXV^&-$<f?kZR|iX(cgRd6$`<clT%QA z)txUcx+$+r_*som3PUj5m_5EK*_YrJ6bVI_OL#$SYwIszt2yJ=KI-+h?j)n@TT}xC zEX(rZtwyjnct{pBVTjh{_WN)a7S6=XhK$$Kjc(W~)8mz1at5b);)J}a9m3J(6M7~; zqP?uFXPpOR*Lm)NsS`B$2|zcbev8om?POfV87qmIiZ5^K{Z(ky!J_bK#Q=E3<m4{h zqat8-P-J%e&0TOWY7iegdPITEXbrLqdrMb?>nXca(RLJ@Dhi+S!hstcDuLBGnjl6# zMpaEEJQAl0iVK~afT(KGLSq4(8Q4hmj@Y*Uec*hIsDARi?e&mx6xgQ4SpReXdzjC| z$`CU6w7c%QaSFM%b?rnLN>-mlY7yUQKc@L!J$XYOM43>|fZeyjwwMn0^aDZ0zYAh7 zcx{LvxrFN%`x?~*M-v$Q^;VA;fbD#-urK0tLb$eh=3U$?w?F)p>xKM-;W!*XL7qt= zqWB_RL*>=$pw6XRqgb;L{U-neSi-zi_TRmkFgZ}8IS%w+u_axdX5?9^<?!fAv|>0m zeE_=9!Ki(jZNW#lKTmavJQjed`sOW6AKI?X2UJEKMp^>JaF7kVv?2tc|61;xR{nuF zVgd~US-Sd{(9vlAP_aM2Fqe_lKLPk5Y;-23%-Vq(?QrL*1X%pZ*Io&-#TIq-@~6D@ z0}Z<!QU0I%ryoe_62k5c%CBRGs8bCHC(VnM4c?Y}m@1mFG!Qa;0)-vu!(_c_kx$)> z9;URjtj&GvLkehS7F9R4pEC?WEeNq9;`)SfafKT*+eI*R61H&urNz&YF2T>lx;gJ? zdgk25Q#y<KD2yTc&MK{2R7>Q07x7PN7ZtjSZ$>M{zf}S$j#efb8U@&Cj&^SmI4&NC zcw*Cy-!I8_5HBdwKWy9}DctB>O`S}9^Cnt^FZX4vMA;$sv1GNtYcnB^@4)lzlW|Rl z%ip5a`>17NPQ*$J<S3SBW)({Glp9PPS4B-=EaY-balpafY(<HwPw)>{Wipg1Uq|Y> zuf}Z+>b{r2HOVA`K;KTGKp?wo-;H7_;E^V|!eU(7s3obM6O3=VwN=+!<7<>_qT$0| zpI9or$26Z%Hz}jV<>-oE3t0(9F2FJW;xfHJy2gEpNQNkP7k7i!Hw<Fi7j{_6?nKY; zw1q&aP8``zT!UJI*yxI{M2Uksd8RY;Ugovs5u1B$`n<5@hkemELaP6XnZBPJ>U6}R zL>cy`36PgZRUb!Rz-_b2e^Z^lvs?<W;YpuBeZEqj+rM9k6Mipi78^|iIf2TB^B5f7 zFq6PZ_42Z2x(`R^Mbt204sj;wdIs}QM`O}*WpHXf?@~XZx_>3K@!?&A!`)@ZvJZ|# zOQe8SO4QC3%hw9eoz*zOxwQ<r!aj3W`pLhI*VkhW{HM8;^2}-J*Z}qMNG<(7UOqVV zN8W7p`N;)stjz+u`J`}X9@XOIW!0rZ>brejNFeaTvP3543#N>r(>@i4|0O7W>%mir zr8C8z<-36*AAT3KSu)9!1<s&0u0_xQB~`6)Rr3M08gGnniOR>BL@yZ&5)DK2Yg&vC z*53VcxbtNATiiZnQ(tE!H6(=AmD%}6jT-@oaq-(tAmn_fHfjVlRNFHyAB)|R^HD_E z=+FL{Ia&4Y0s6gVD+nN3_4=3d0L`)8eT$?+8TMq>#r|S)EQc+k^L!RenT~Tf)f?O8 z-J$5z1TnI{#b`svO*gOaQur}z#D3xz3K)vytTK0HOa`!6IUu>@8kqNdre}oF#e}Ul z@I2WhcZTX}ev8x0;8N`1`A7WGktbs|P!t7*ToYpxC2p|<bj`t{a>)cb<y&=M5u*+h z)t^+^abA($VtUJ+Dw+=aY%m?JMfC7;RP#R*w1afDyU@>8S(1_fMc081ZchzsY7U6v zJzd?!WZ<JVDdh+(7<g91kyQO{d9?9Xgi!Um)gMS5x1Ze#INbl3pEnu|zmC8|&a10w zq{6+L&z$Qkp_N0=;<gU=#ej3oxu^~{oz`)95s#k|ky}amfJ))XySPyf?upF@iq44Y z5oa=5ZP9wYOEr+iGmL0KfX>ahNYw2OJ!D-!5Iz6nQ<LHh9Cd;0{7SKg4%G)KE#uYT z=pQR0o&C)WazOaScAId^*iW$U(s}bbq~Mr{g^%1Y*zu{7f%1ULd!MVvIN5)>$nEst zQpJ)Z(T*T(NSEVj10maYxvq57dtu6HQ%=a|pLSamX^-C9PxN=uRsFV(1-YU!vzKYQ zgBO*+@HxSQ?%>qzx0r0>#Itu7MIFj;ZIq9gvA-mL?U^ybQlG4~Chrw^LQ*1uYtmj+ z#qc^m<y>gVr+s31vU2N~-QoHVY7ctixz|1cGJ*M_<{2FPg@vT^;90{2PZxt`5AGIK z!h5YqI=)cD2pUCUzwk7Z_Ar(gHAM~0ory#*`1gj6a?hvkWET_ITwC?8s;^{VCe-zG zGR&<|8HBA$VVBKHf}Q}-Kh29)VUAp539bCo5VU6sHm|`RG#UUJ7zN@t!LkkkZTOk5 zvDjj0?dbjqnT2wrK||Y%w_!f8j-v!?*}*r4kGPPM0nX^8rA3JLcPzAKS}2_7^&oI> z)CN}?qGVHHN&%iGc};UMDWb@KA#?i5hlVvZpFKLtxP#<2a2LL<ps+bYs<~95S$n&w zk^an>J+<S0qLRuQH%qSO&^>v&8)sF!CAqeVZtEh<T9PMa#8=c1)bdHCvRpJQaMK*F zN1_b`lq3Y5%u3<i!pZ!ZCrUKmOVSMlq@f;(;T3kL7u|*?2I2;;{_jD=8Fb|Mx@Jbh zCqguw8NYPi7n(OR`hooXUr2uDMu7xh@NWY`+62GgE2>wq;+B70BFBOJf2YbAfyj=- zq_v1j==-5TAKOyN)SBx%j0PgT7l7gF^z65pU-T!kmtAZVb7OI;CWXeGH-fjN%!JR2 z>*gjFMZPSmqDUUL2|-q#nd#NwUz#pLwY2nsiQ9&nIyq$g_VWI~ln}&)rnNmbVgmj= z38cef%@E7LQ1>t+noz4A(%K1{n>=7f`%}~rj2n%JEF|{&<WVA<38+pzJNgqp)w}`z zS(gICkFd&bHXj5FN&dhD<|6Ww#_&Vd{nnTd<l(_0_yX-!p-o|M{ioKan0xrqXbPem z)l)ZMF`7hO`0nFwRFPBtX}Fx_v&pSs?UJ_|VK1I{PJvA2x21}2W#B63y&3b8Z~Y&c zOG>a95vg_cCG0xQ8Y4W!T%K6~5i9@r<!JHh1X29nLsiVoEIieQ?tNB^q$p@heaCuF z*a4&ZT5Xs8CqY2X8e*G!>W}Nw9dwgUUkpq;Ksdj;D0$>kmsPMRiz95beNxU_$c)#v zwSgg@`ERdkzN)ID`L2v~HaI|@AYN`{*Z^#@S1@5w5XTlhJDGXe#JB%bRnlvvCW958 z@cqC-G2!ejIwFK)Mk~PdiB9+F)k3mJ2WRGDf|?-%yDjzn(A#lq3Biv_Dti_y+OUWi zBD}1fJiKV0h0Y<*Cky4SbX=nYMRN;es%%_YW{l4JwR{l?WRohP*BQMkosg9R{yyT| zr=m0O<Z6cNmH&^1I^b(j7HC4mUiwdkC5XB~N8DlMa#!KdOII(G{k-UPzNvm%jR>(6 z6nO3B%#OyjUoo2py=SMp50p(aijf!n?o25o^%@1JP>|Oeh&?tPmcjze6j}<5|FGyA zvt1gJTROcgTyc{ln9A0A03>iKax?4h*;*TH=9%zBF0%d}Ohv~{6-X%lV}dVpjQ&!a zZTL!W#EKhf&_RVHkFn>|x6{z-dsupQrD0c)Y>+gm<Nh(CksX0<f~&@pD2En?ONx4X z==`uEi&ivBDI|f$=a4>J%lShoZj58b&b*KA-5pS|1iy?O=1T6r&M(Je9Kpvq>>@a8 z6aD`5$@;ok$!+Z>&XQFgn+?^3uU?rL85)XfW8tqdIj6nh=0G}0NT-P$^GpVRb)^_6 z5UA^%W~<XoEvjsz%mm6ob?i|H_m2pIi7%5~S^!(Mg<{0N7x3}0j2hvsw*VcyyA&GF z%7Zs;&<BZc<Pq`@4G45RbE;al00*0$&Rdtq*wR-exg+q>fd>~ov;u9qTH7#SCRf6F zy0L@NSK>{{sTt%^-^=WA732cYkCkz~JKhYmV%^Nkns)omTYPvT7=2-SFRfrOC8_Lm z>3%p&Be=iV$2=yPM~ZO|zZenI@kdXU?zf3GybkO2zCM7+iC#btul}{^?8)Au93?gh zwpL8$g0uoM%Qc^P1|SP%p__R_)?idjK1yBnfrFd!s8i=84%$6m-v=zJ1z_&V929A{ z#OKEBcaXJxFV19H;7u~+(3YuP@^{-LS`hRSODL%uJq6X9f^lIATPu}QX|>p?!k?MU z=~X{94lwj>0|vQ~&7rg@Wmt-dGJmr=diZb@)K~aerW)5Lb!F*vKjJ{U`DvkT<jawU zenA-nM>)RokF-ZNY&ru9%v4ORoHXp)vjLFac{T(z&HP}*Ithc?s!VqB-5Mni21OgJ zqmIV=bg)LI$&+v~?a&4kt^4eve?IEOAeW)}bwW0uXN<AV^{|aDF1pMpO^dzvM(zOk z<F}mtr)q(_z$S%bKe5#7lb9@ghm1%WppuqZ-x@t`fj1SVDF+`KXB{HdrP4-1Vga?y zDBYkB0AMvjtv~6y;$BDD%*YA9iVM628HKAEdT^lnx;W<hMm)M~sF_uNIpUokLZfq< zhUS+DD|#c^2QZzt>2drZD6@l1$2Ig^`^?&e7Q^s2*i{T#&Uqy8f7k>|#0#qFs^xf} zm`pQ}VbA0qYv*|$l;as*sGGNyPHXY-UAU3;zJ}?Pc_-N6ixC)!bIi6iv*3;x%4u?M zwIs4#);>U2<%JdX6^2!<2NU7l5``k5mz#Ojl}n_gn4F8D{Dm(bU@)mYJ?=e$=e-IC z1|)4Fm&%asH;Wf#==Wk@sx_qBAXu~ZABLdGbRZv#2}LnnJoBJB18|MYZ;$r~)PH|i z4c$?5Ke^X|4OATv`zi<bG5ocXl!$o*nAarml=h}i+N->dOsU}zPaf#3#(^Ibv`CJ6 zl24osSUzkv9j)L~*8UW$%Yr)>UAfwX+e!Gp&8Jba7QKpVezWYgL+dj6=E8a*+0e4e z^t6AK4UFFBVujTh=cp*|L6vjbN!S$pv)NX--ZpOPm1&ZGAlMuyhZ<7J4URIX5G@Jf z*F_Q_!(!X!hL;LJHq@9S+FkWHR&|hgq=nA|KfOB``f<c12WFJBS;+f^B(CT$WSjiG zX77;NDtaFfx9MnAKDFz#S+7J<<a>cxBMfJP6nvDUFSm?*_$Q4|QX>p2fGrd2wW%>o zP*&6JlhBpy^Zceh+-}CkH}X$V(-w}OmzJm`ba7xR3Y&po^8iB9hl9yiXBO}AOnI=Q zFB>foRxz+`0J3c!!ZCj`x&fbShf;`}RRSCyo7ay1lcWg;U<sZ1NJ~3Q8auqhE?_(m zS{QU$Syq~x4L32JAi~3sE^OA&Ak>86j{{MyG{e4r4fOX5YOQ|7S=jhkFbw6lHDURB z;)HtDE|)D_J&fq6;>|X)O^+-`zMe;+C6$McnY5ou7PCDqTJ$sebwU-5{I9&x)!uhl zY@Weu4U!W*@l{I2g7VV3*r$m8Q!E2`rD|BL3_=4ewfmkHnB_*4SEnR@aVEUTbW8xw z<ZllEna#365bnVX4Vq=kXmNzjy0c0i1K_rXA1g>To}YRs%)VXf0vwS`lxyS7G7sN4 zVnUU1+;_nTqmiA498<lNN_bh9G^d%E1y<b=FtE{9E-%$`?6sg3DC^<R-xCe86*T5K zx?&m3DXgUk@%bc(cQZgcQ-t%?&;^x0BZ-oDL){ESD>ruEp_<8dhe0jCNRj`*58wam z4L1KMQ!541V}}AabWeB(z14?dy2jgr(>TTZ>nN7f0Qi*|KjE>3(#QYFBK_0vnAE|B z+3Mx88%Z*I101pz9fzDja_x{yLo!fv=S`s?fry|}Z1P5gh-c88nf1Hzm~dO+1>MR4 z!}VVE*TX~kYOSqeful-Tv%|PLc)gfVZ3Tm-*mFKLce{cl-rhoR*8Z-2@Y^!`zqe7^ zvEs}_OzkITwv8Jew!K%L8)No#>lQ+ZPAm~e8!)6<<OO`+jvMxwg*1z3o1)vRJxM!W zFYw{dy{m^;Oy#))a#CDg<34=G4?Z%`XHRIJBlaaX{Vi!W-u#ta$+QJBDFPlO3ZO}y z$h7g?vZNh-#Jr)mlG5-sa}z(3H|XVQOZ)kinc~-)r0r3hY-=ZI%!{i~e{K1(|BQnh zYd$#(oFgij`UPknsct6y-lI)023)JVuM5yX2Fh4jqAx+w^uHA!-=YFa9!@NtoJy7z zSo$KWaU>6R8xdNpWvOU8$oWO+!8fkBNbvQJ&7g)NSQ~b)|I}2i{E`*6cq9CUwDH<D zT+izG(_LoZB;TQ5xa5Lwfb4GW<X-J8XXC^<gM5q1=YZR9`-<7<4IgwyESaTWGhB_O zP{n=y?;88+m(FV6Q2my~$tQfm)}-rM{@#%tooT9dZTLa&1$n%Rc<vx?7XdcF$jI0} zu=>XJc*GI_n)2`f00bfdsmq8@|Ni~S44g60rtF~99W2d;U8=w;v16=1EI?cEXBJ;R zz;aSH`y#VQ;S(lyK;*`}DtYmwua&{8I{KonD35wL2-q{r+<OF^oPC|4%aOL5_LoZg zCx<|j`M&=ir5d+?A<{W!@06a)dVBx=`qT~Qh+_~NaUcV5#4I2_#!53nYxC}f38%!T zzQuml1c%!C^|^~&H(1prhKH*DQrV2USG81#v4cKj3}KUqNSt?%YKRej+$?Ak#=Yhp z(u3x<9Yo8=pwFSPT%!RhP5MkmIPM;mJiR2Wh9Oc-YM>*7Z?)+vDR$@I<mxg>8{G2n z1}UzuGC}zOP#F==`ZvF|*u$)j-}7Yeo=8XHr}P4^N&);Z4bE5C9*jEa%OT8yD72S* z<<r!)r$k`vDSMi3IQ3A<!MmL>sEAO)i*cz%%BTD*BGK$P^n)f|p0mF0bKH18PLOvm zoH{d)s1{392_m<lq^H!5a<8$w)@$VY9`=RWgdZ015OsKos>Lo3Z?+XUju`hWkYjwf zKth@@U&a{~2Zm%!;O#iaxYnb0)nau(nnpd(eBvFlT%!y@Im{}hj2ptYb)@>VvJ@EX zbH(X==|GP4T*}2fXCFL?wbk|1?TzU);5^ix_q#8*^PZQq{eIP&WVATap^)E~Rq6V@ zIq|r&bylq3&L*=H#N)P(#u+6@+XdE1Lp2Q0lGisnC-=+zTlY`qX}{d)p0CjtNmNvY z8V!U*<#Lyf63C1<JAT~``;Ex`n#ogRWk{vHLO;AN6n@tjhl^)e8f4Pr5t_Rt@gN&# z#u%s$JD<`Vn#r+I&SP{Jj=N_}9e6a!=&@0@awiuxo?ph!XWY~K(HBUo-|ucRlx8}O zj6N>O6^Dmg@K<Rf(rS3jSw(wmi(bT2+WbPz@DWlP*b9EJP9dn~c2FOINHBm_%Wwlc z0?18ZrRx|fFh=~OZhdlh*WL(10&Be9(d2jiVH$%vP|LrJLt9ye7jGS&#xLPs-M7Y= z!M9<wD*DZ&8bGPPj^}rrru8R7kR`Cta?g6<tnkPCa6mq0dyF6B$pIXy;BX3F8lHyP z8dI1r<gFseaDQjp_t3@ughcdTG7-67=MTr;jp5bsWC*iV+QFHpmSyj^{qeVVe*{7e zA%z!ke&6YWFpu$YhJN55gFk)ROTgX^M8aU~GHU1u+&ocvhs9FysBjQ~2KqeSmjc|x z=dotQ5NL-CEXU^LS+Wb2;3!8D<46wxNh8?pJ&n1UcigtnvkCR7p5Fg<n;Th#8NCAL z!qbb(VyM{I#bS%&PXq<Z@v)!4s%Z|64ydS<m17Wzy&yQ;^K0%trb?UqQ@Gm9r3W*c z(%zpNUCF;iPN*X5_>wnF_5@j4Bq)fB8Iq|5b{A!S2mk;Vjv?nbLqCFJAjw^?514ka z=+SVxjHYmE2uz06qQIWkoNZ-&7PqG+^&xWO$5Zn&Zwmm&W(-{)@oQm%Z&fM(sf(j( zC=WUrd$Bj#Yl%NIsHag3&isNA%<$-L{L@Guuiw2G$LCF$$1xIblCdm)UD5^fX7haU zuaWE9RAXI-*Y#W0C05RtgG+N&mZ`HUTZ%yNY*m%V#*0g&R0~>&(Q_g|!jxb_i285@ zNC)EF_5>-TQI5UZ`4$~(fBNkc0$Uw5Be01D=ON7xT1<67EgQw2(Y+3<RgkJV8e5z? zIeQXuT#5zDR<^kwhd2R<(oBw9taJ`N2+w4Bw2;E?5#0Fq7l$fPT=bRR3w)x<DX?ex zvFN@|gyQ`zMcib(wv@U88iaIGEc#JhKKv69xa5E+FX8h8%<D3{NsT}mEfpN@Ef<?t zs0aKebUw{kc~RO#8>q6wdWn5x6R!FLs_dI&EUThW0j>y1SQA>dCZLBU2M75hXE&M# zcYBF=qJ$W%_b47q!dEMYj>^RS$Ei=$R`mRU6?)b!9CEe?QIq7ef|XPmnn~M|6J}5v zmvGTuvuq<HRfeNM33zap)0#9(yu{KY#Jo*6cnq=Yy_M!o59Y1Qsf9Vy$CTyGVUbIN zGtK&U&Sk}K#f*+O2id8B{zGfx^de+AnwU;sWV^1PpT)rG1(&jPsOWtWMut;=$%kiO zrPs3Q|GlJ>C~HFb;*2a!6v8q<TfSw9ve5X|Ef75wn&5aAnr*G@^)WxJ0<{my_X;CR zJMyjU!t&y-(td9Q_h+*hsHGGz0K8X>v+`Mpu0)+M9j7Qy91e5`c+n1*!mXDRhw}W5 zkaMTYqwnm;7*uii1LCjVy+1Emw>%Sz+&mpEm)`-m5(4?O<FNv=*Sq)0G6-XAW1$|w zp@I39W}5~7flO$+EUpoZ9ej&@H9<7YXfzcO&h7}YsHy2Fti59gZf7eE`G~tc<hL)K z^C27ktwl~6z|^x2qh0Fn+2}O7o*$iYpXPAI@$w3b;lU#HDJQP$kU`dfL_miLr%8Jd zWIv+V9#hkqqX*ZoGmxqs?N*J*baV&F!kd06)u`JE)gXCJuItA{GZ!SRT-_*x7jv3! zUGXxJbsLm7k5?a>Gcm<Ed600`V2?;Q*yiRpehHhWFE%PAn5-#dkix$NEsMK>yzxDu zit*$*egFzM&)Yv|7Eq#&Ey)SF!Y8kcQ_dBqe=*5aTZEprsBR>l?5Gp#Noq}TF!>A) z_ciIsBFFO--H$TffyD@#Lf~6!_$=4{J{}8~M|Uvv&FrnX$9IldC={h=V+RGV2Jt08 z=U<GMeMjW4c-t#vXfY8=WL3Yn#1KSaHIvz-kJR*ZitSpWX{JX*vh#K&?hhEjFSP|+ zGh}@pAiX#V*n1pHpG<=oV(K$<ejCD%rCvP@+ID5>DE@#DeywmN*8_VjcZKY?bH`jF zLhC5!K6cOmdWd~m9@y@=S-6n25RKF(`?cQay++0-q7NUn0)_=g;Lq3I8bv{E6IKbQ zYb;^`_M`K&A4X?>i4JH6WeFbp?2Yc`MsLpSeR32xq{FM|e`d`YZa6m#Jn|mXm*C`> zRklHA77fJr%vwt0vLlbbhL|U;++fvnO9l&Fa;PD)YSBM2(w)>7^1j4Is2#6DkC=7z z1+;2EVsk}0e%u>H#p{uro5yeUyxS}ujN0l*_@$3C4=vdZnOiRP%WVo1w94eFo~ZRR z`Q(Op94Vp)s;TIXdh|DVL+<ngNU6nam2j&myX*5PQmYxgH<p6{oESy^Q&KtrwL?BT z$!uM5+xup+Vs8wXf!Ocfxap99V)X+#m&tTOKFCXy8mc!ofq};d4l;;1yI(g5B6#g) zlJy)-?B`ZwiYNrD4e26rSOuO-HW@r&^9kE|a7?yekQt&=1mO#*GT&r#P5@8nrtLQ# z=^{bV>F9q>v40HL!5zw%D%%vJYxnV5<4gtVtkP~upy#q;J!9c8>fG<m4|{a3XM+K4 zi9d+o4p`?x=GUdRCdM15kcGvFA@<|XnOU)C@|sLPN&qF^&2K%a4gj^G{$j&WoG;J! z6Ry=UxCEo3PR{BKvO+#dbmRIZc5yz@H(l1X%h<5aW$XYuE`-8esO|5Rrtu1@M8yuX zJ!irXSPtNo+uPrG8R0D^Kl_mQPrEtZ#LG9oWdiUsu?02=5*t3S(`*JL)|4?0$7nPf z&Qc6>P`s8gGl5kI@)zVabTx2G=ff+vSUay$Wz|8MuqW<Rs*6+UkEW}skRNwOb^7Ie zDJfm{{M%}K8r-bZ50>3&M~^OH*k~3CiuNqb@@m-(&|nno#O)@siM?<=o@A!H=ZS5N z8UE9rZiorne9}1}pXGAi_8i4ak9LDOZU&Q*KZk8_pF~T4p2;O(t+o6Vc4KF>Go>Sm zLXRnx?O)=Us-`A*i4op>cWR%k*z^liTI6WG=U+qUWXUb&iEw8kB0w8(M??Ee3->7H z3cPtLCqvO@^H5*siLT{Ago`)fP~iBk{%ESco|F_pTj`YOZ(Q7NCYYyMq&42SU~cmR zdU$6a6w@8`OI(!1p55#(R?HD#liWk0A4&WZAu_LJX?WYWv`ama-JxuoIkITR%mGu| zzHLaV*cAcsw8W0^--y-ice!+@XhMdZ#)BHGJwYmO63W-evK)%TNtUuvWh(FtV&3KM zQ7VK7`PS-{l=TWZQ~wcP{cq)Oj$NS7$Pl-~WDD%9woBqy$c=y$=u(YNa|1JLmKzZe zvm7>5@xdK^+AGRv;>vwwG6Nbv;4;)iNuN&&0%G>$R^hcOcjj!ScsX2;pG^UabM5}N zxtagKs>c;pBpXFkzD%?_-t!*|Ku@n$V6cdoinA97J#5T`ggEH#^Wj83u(T!4Kma1C z2v1MA;Ix5$bL@1z+g8>9SHFU%=~DL|v1N}5du-v8<l^ML3!EHUwUk>-Xj3#ClRbRv z$J_^jbp%=CytyspKR50N4An629<QVi9grruVK_tYD!Y2-B&S_6ycYh5z2z}~3VFie zj4IE#)EsfV>ODs?fI-o8!d07)gR4f{L6gzF*l%m|IDgCXgOmUmWo1nohm>eo#&%He zX+$}S2N|`Gn@j9wNVAQU;3Tre$sD1|9jpW8+Ht?A-ya@YBkiQ!OFJDC^nSlE9u7|= zB?LhtX-bGG^!gOe4tyv7l5Cw{L_FUVXSZ{(+NKyoqs90g8(0gZW$KpZP;&WeK(hI> z>dg54yx`}@+uY_lWo$@rcmF*j>eEwYmYRXDSx>0b0H|<Hozxx_o^mdR-Ta0%L4c0o zX-<vSIuk9DiBKS<rH63nr<MzSJArPqDmt<e1etg=3w7O89@z7E`fNGvPL8>9Xy*Ma zDlecpXO2~5Fs9l8|Isz`ok@8x#~tpc)>gg6o;qgxA{+o~o6cmVnK`zD$X|GJjC|j| zZ8dW$gk7_<VoOEoCZmGef*ZB2%~d&*zon2_s0LA$QK&Z0pPE4w89z<+=|LykvQjL$ z-dh)LD{iA=sw@X7EOC+`$}+P)P%-=Qn)v?c$VLw87xS}>A>LEklxCp=nFEmMdMPN0 zwo3hUT6aIo08XOyAA|EBRNDAZ3@t8km<~?F43tnHtrZL8&U9gIACQB{qVan*8j?ql zKpMvxBg1T`#l=hfgoQ~5bpA*ZwU~F>w>p(_X05Sa(;It9=r2BNv0~<kki|B(0<_S5 zN+6+K^`9QUtE3AD;cxUQD#v>;CB!AnF{!BWPz21jP|zwy8PAf`OdwLvpnoTz((d|E zz{I6Vv{^@+d`N~DJC+24W076wjnAt0b<>VVKxdX6@qmQa|I+ZIiq{E6LEurUGjclS zZw(#GGpn&N!RLP=@?v^XP|o}3&|soXrY3TYp$$EnLuf!XC!gl()GfO<S?yAYx^z25 zXaLlI@@EMGowI`5x&hk}1}a8Fn9XBXHEwB`!l-MC?AP{n7;skpi<GD496l-b6$i=r zEgI)P&DE$|eAD7vv0TR6a=&t^nF-h>@H@zZbDOYl{8^YK$SafMH;zz?>D8th`L0|h zu$%TmT++CTZ;LfY5Wi*z=X$D25(KYpF57F)XNSG*g;NCS7P_k9aq-{THmn9A;jr2^ zZn^8?XykY{qH)^a{IiT=bjf&K&PSdaXwEJfMfW|eJnQy#;IBQ-!z7EV;9L1gyI1#$ zT?7?mAyD1v;E}&mfu$puF?SnvD2s<X(MAVSl-BC)JQa~@{Q%u444wJ1!?S@W!9{b_ z-Wzguezk0j85G_k?GjHfcDnZ1>5SocnUBGd#3`~nnPf7Qfd7jTl7xuedBBmK$NRp6 zdrhbo25Vfqw~q0;`mb<K#uR@Y5msF<b%gtgsVP||C3%apY<#M3%Esn!Q*<5qdwf;& z;kb2MUeijtW`Z<FkFsHfU2WFe)W-2JAc2<|wxu@HUw6L=!Y4`(NxR27j>$iVEppea z*zSBHW~4(i-}!s^iPT+=4iz0V$2!Cz3D>qAYO(!Ilb3_8^&>vDPR)~wW*K_mVkq;_ zySGuz9MmMI;Cr(MrZVjog_774rV13PlJho=U6N@Vaaq%s<k1`@X&!~eBprx4HM9rX z!sq2gK3_)kl3-^sOz=v(a~_3$ujyck*AS^1|LqXQHa-fudRb7~F1t|Sk4l4=KEmQ! zCE1rJ3@@DP_t;lDZi^Xd?tgL;jQn9?a^11%a)&E~h19d9LoznhVnWr<_Y7@Y+i(Y{ z#F>EjtiIpf@AzTW$4Nn%CdS8sv8^DVc2^})ax=FMTNbuTP}CAlER~`VQ_=?j>*MAB zrF_NcaNUG~{8%IXSvC55@My=CFQ(EP(tGz9*y=AsT9OAcm3;+Goi_Q7?_(CBrmMPa zIw0;X|Jq8pIBAASRtaD*fBlJf<HS-~(rceW9F;N#%O@9zl|zWy<jgEj>LcL@39;Dk z=B<V9V77>7J*&eET;D#e;V%y*$y3&N3H-(M@R$SM?4~rT=!J`Ln}nxzKM#z~1yO)V zO^Rcg<yc0LmSsY9dUQbVmh=>z3!=OT5-y|)JVri*{5X@hv$jkDBseP&12oXg!`#m- zBWX)*&~qJ{O-+sp%vqVEn(a?So8uSOXmBE`zN){OUPN_--^39wMlvgCk7`v*Iz(4C zVPc`x0Go_%v$|VInWeY$djlNi&$0MhmSur$O4QkaiJ6UEUtXrFM0IbS<x=M%G^646 z4K||%wgpSiV1RYv4MaYBILXI>La(9(nacc)dD?xpmj5fT`va7KTBfgI8Q^e22K6O( z%usAJ0?z_gG)dbhiS<m`lB2s!S67m5VE{)NbcZja&Z5$liFgG6Nsayo6Oj;$0wZlk zccg&8dH&a6Px5<-gY)3=0^u*&tDAD9x`sh-S&iZPEN|0i#{sTwdu6o<BCleW9(7WH zk|-l5x#WC;=|}jASM>ZwN8**e=0vX3AHdtg+ra44-i$+4Io|<uGhi#*M%C670FqEY z<C*ErCjI9cZ^~~D)vzJS-LH%J#g7m&;sBfbiiK|~d2*U_?ZMQ)|L}q4I+a<kYE1V0 z@bn)N<U5}(e;YI|Ec}&F=6*$DLu3|#kLKlk`HzoR>WuGIuIj^s%(4>vDAI{Y%ECvw zD=4+OS21Te7t+qRaIA##!9xND2Pt&WU2WZ62#gg_4EO~nLvpb#^uX51Bzg-l24}XK z8#R^}eOd&DE&}04yW4;_vXqac!%gMM#%Nlv!XT@d6Je!Os0~)IMZxq2cGt~en|=Ed zZry;bfQj`b$wQhWATvAzVPcS}yFKj}D8`#2EJRYLPWC$%zq6RCM4CT71XY0cE+T~W zYqtg=OX`z8l1Q&K&@q!9shV6(+fL!$l`kE}UZib7E?-M+aFIx_m3_jnMujkQ*{_qR z52*jnL7582jNltFKD^QAC@@mLCc`5Q5%pWa%kjirG0#a=pZdHeXSKG^(+ZtGJj=@p zGM{H%#Fl~Kg)9H2hkov7lb^s%i~fl-Pi3>gzG!bp=#}QaS4aOC=SN+eA4i~qJR$<6 z6~%5b2}hq1_v-|(Lc?7I)V!rlGIP<<w8(e?u$5rPL{eoGgu74!TMDm=&~Yp_Rr@9h zo*q|bj9RHOi;8Vmx3$d@C1Xe5IJ7c&)W4jwC+QLvZ(J?d<49u3@{#RFkw0Yc3HlWD zPz_|@G=sv+1G4o?9*ihAE{b1QWGcCfrO>Wj$$mT+JqPAn0OuWi2D{(uZ+8AK)SPQd z5}LWR!Epow9CHn)TvNK|nsN1l3PzECb8v?!1!k>4I~`U6_3sYhPFBZMg^x1h(Dhtp zuuY|L1Bu~6IDaJXIOQrneD?3MfrL$@Fn%msZZ=k>KH-l@JaT-9gB#em2e<5f#Xs>3 z7s&O!S4xbboC?D@ZweRpIo`sgsXAF^02QfU>kuFbLEu9@S#IX>qnnoESJUo*5=rjx zuOn}LCP#K3afEzVtY)Xg3_&?esk9=4h4Dsp<ODrk{4ckrPhh9JN$@v+=dJ;vyBsdc zL)FpGH12y7Jiq|#!%Prbz-*SoDj<Nn_$O>wTA+lOQMne78&9OIs3}2`Dz(Vy1QVP~ z%|o%g>0KwiAnz9x8ai&=2kK*mYTd!nQE@%MDOhIlE-ecI*AIw4;ac7cfeK3>*caJ4 zeY<u5t}Hh=1GBuQ>+N3FhAlw$6;|Ch%WBE|?@SY}eXJ*(LvlL(foXg>y!k+<0?vlG z0(9-deSTo*uxD6^b_MS<HpxK3rvJU2fhO#eBRks{yUqToEy4S@_bu&JqiR!|qYSt2 z1<_zObFq4iR6bpjn%mDE#dkAtj$L!nIg)orL*mOPpmU<fLLm=T*M{>vm6mNJ5LsxP zCOlKgm||xRXS%;8#y0tfAI`}_@+9b6EK$QIrQgF>w>*&g)*OYET`R40MUeVd>z}s3 zLhN_|An~HoNiK=3j=hHE;!#Sc=G25|mmS?2^5&QS)3K+HYy}F&S>5LKE;n1w``py` zY_C$~=MA)4DNvtkOxP`{)_vwehG?T;^J;rpca*7U>xuUvSz-X|mV~#v*`vcQoDRrg z9HYg?+S7kTC?<Theo5-jZ#LhZR{!yUAp5N;r}75O@CXGi{u!6Dv*Sn`=flwpQWmx5 zWr1Smd6ikZh7WL+RUQ++H6C}7ke7*_-$@5)vpMMXmF?C036|&B)2QlO$c{hP0EbfI zC_;JA5q?d-125~Yl3!y)bvb>Ekl)fZOgr_IcZj%6??f=c=pji#Ifk@P$9Z!6BhAZo zG`BZPX6C26IP45u<jM`rifbGiCP)J<#Hc*+@CmaM2{WuG((&=;*uBWEUNIL{rslM8 z@s$9&h9wbp`&n++b)p-ML`4Vc#-~T3$A8}WoVg=h0IWb$dqr*4S0xU}G?|(fIU3~{ z4+aynjx4!o)8R06JvXVSM7&?^#!t{9zwk?NIWrWxio%kDmr#bOc+;h7umfR6W+)?4 zodJ%W54q;QTtB_lV(<y?h5on%>9iP~C-a-Bm4&Z05>M5wc4Cho@kt}Ye%gVwRV@YY zH_-MO52)Cf$h;CDn;JNWcM|dTm2173Azp@UYG~orLf8l^WW6qr+WW^%uMW1GS8xU( zppZCE^^U8s>aYG!(O#FKF1>3XxN<+~&l#`S)Qur`^qOB32fctb)oUzkI+DNngQ<ns zT_$wwnvY3_Vse<~^<nT&SJ0&Nhg)Q9>&?_Da4%?(w!t0QOeukWVG$uP7m|BTd?-#@ z0zg^X@Aw_r#VgMBpR(S`ybv}l^vjUG+8^;O?1<|~s7tOncqu=z0lj!FdJmt)^A?t_ z8;GICV64Yic6Cqu3x{b$m=nE&Gzz!=ifT__y1kb_bKSUW_GL((P1+vI41jxVTzh<G zSD<BG64*=u+e;O`s4&6I0)*e&3^mBvK}VSM1GylsOhkYH00bxjstt%o|0e#A4exFN znuJ&$YoyDtiWeKo*_CZeblpRpueZRuz5nSyI^E&$@pY$osXA=|-5Wzs00096@(_+u z=Z}fMOy`}vqcxr06c!oj;}u3fdvpk3j*b25Y`bZQRw8nMJN<S^slBK(jFw;F`nB)G zFAS@mZF1Gew@r*7r;HKF=-R#ClE7sBIz;@+k=YHg1em6S9dVyv>;NaeZ^9hsW%V3( zh>VL%CES@~W1!T#^v2V#ZRly4>|0YN@U^C_i9bYt1FJ)nrH}M@4vlKXx(Rvop)M^; zn&4EKm$fTOZhfAo6IfT*H^Sxli1>oRlxNcD0=tU5`DE^#9Nee>bA%P)S3{6^vwvZh zEql?EZV-HQbO_QU!VrzGmNOO=9%<({!NkPG;Aa%9cU@i+|AbZf)lmhNboiznTck(d zne^xUjBP95UW{KKJB4oaQ|S2+lIlFSX9WM6%8F^{W(924%iJ-QV3{Zxdu*HMWX(eb z&txn=wA&NVg}|!z=P+}5Qw4cX5xuSSwP1o!N`ymc*P(o0Rc8IEF>F@zVXw15J|J8! z>rC-EI6zf-LFDDEsODb#g=lk$_1QT1?{byg*!vb+e%%rEkw4bp+UP_V%yn%96ss=~ z#Fp1-^^Bf$y`3UfAV6$|5W<Op=-^OJRBNT*-Lr4Ct|Rc(OWi)*Eiu2B0HY_%LRNp- zFYSxH^|ZpHstvSg{y#EPway2WsnIK3Vm0pN#Xt0sMaPYzt4|oJQwpyaT6A)QR*^j3 zFlo>X7dIq0x8Kq&%5^!!th4=;>uf~>1P6c8Fj@jqi1+8R>O(n<jm^ZJWV3yTmIv9~ zz~tc91a;%By`gYWxwIBxkfxQtJ)UqUwQjHsf<m~9%jTj(kstl8u>4SSa{`PP@a<?? zja82YmBh8o3t#|hK~`214}ebkT9l|KxNYY^YHMVtDgK1a_k$2`dnz9-6KeOHa3;!> zwS8Qw1gnU;wb$qf+I^Q^TiI6!?@Mw1my(d1-1BY<9EI`(dT^?FM?ciRkLMMB!MDa6 z;9*0+fVqcDb-q#&{Vz$zPEn7ycIXXnd)tDyDaXavPM!R6xI5kj)os)%n}Me4wl*_9 z_LIGts1)NPIFeJ6{D{wA=(bH?*pd3Q`p|K^1}COwZet0=PJq|;w(fN!amc*X!m8ip zCbIa;NfNA!(H()@E$;UI!WHh_-t6|eEdGv+My6PXxqxDsEBH~z;HD}E+{km=O!P+C z<jw>R1+_t=;ZsNRKeIg!ow5$lI#lV8LK%Wx+=6vmIBDx(<<?vA@ar(-wMz#hY)^v> z(C73#r&?C8voQQC$v_8(A*?8Mq8XqM8}*BJfB=)U?`N>KHe{f+>El}${OqDafZ~=A zf^fW%J0A${gvNjX02G`d=s-h1f@2`aRHF5`0FPD<ua-<>P<TJ2S7ATDmY9w&$0t)- zj!^5Jemm};vnIHNtqd_y&g{1aNB{MZ|HLF|-ZU#~KJ+e#ftlZsLM#hSaKq(i%suAt zo55GlAV{MY2bGCq=E;^^bx>@|ivCBhY@M!FA6|d|Sd|vKUJR)XR#M)~wWb*QfcWo& z!)fT2krXXZ=eY>)&h2`-;wQ$eoeq=6ou8mP7Q&g!3(?wi%s1}01y;n~u!+5$ImcH= zZk~+0P3E&A9ke*kZySfpKo7#?iw>WGtajN9(mjm)zmxLUf&WniqI{P!69&FHRN2+w zgi2hl#^pK3Xz4v3{Qw%iUf2cM=`d*3xi@g{2tkL6e*!_2yEEIPL9MfLl3DjcZz-nO z4v|HYOO4_z(rGYK;nM@wc;Hq@w--BVFEl}8sgfAZZ{8Q$+u-5g-)<uU4Cy0w%p%AR zYrnpkhsb`wvGU>3LEZ8R15L<P$+~{_@L>tP&_;U*)k^>BK2Zq0Hu22Z*8ZbQ2mk;G zb6YS)-8!ORB<JeD=_&~A^INW)#+)uK6m5l|sxg*xyWgtq4cXt@N$FQGHcpJ@@MJJV zGN$>>_<0pE(B5VZ-9bTQDHB3D!X&UYYN`NS+PGcif6#co^i&Luj)$(!J@g+};Fr4( zc)JqgJ)1LeG!xjziT!p8dF^Axb{$3*L|bGv=pti^VpnV<(!y|!@5XkM2HIs!;kOPD zU`}Uk|Gq%Gf9R0U{Ih~SXgh89#|v~OJ}>jBS`!c;WR^v*Q`x)==%9Phf6vt&6SJ?i z_HT~6O3Jel%4@wKy~nwMX*F1VzlIXzJnNHNuz{em1|}Nb%IpR3)4`Nt^=maJTJ$*I ziw9d-`L(m<m$Q)^r{R`DA}&|K$|!ff;h)`pNtnF_Ouug7O($Z*-lHXyH|SijiJFQD z=0jjQJ3~jKgzA$QVfg2u*H<Lke2U=k6};iC=Us;nX{_F@gI_fp9AJql+>|8}X%~_% zIXnwYYCm98up-q!L01it@(NZ~lyA`|nyVeQBL#IxnJ;x~ipr!w=#nx;V1Uy79{isk zbpx-h-BU^i)D_@9hkWal=qJn&6=gxi$jtj$!%r@fXGKGvAN7k2e8p`$W*29<m)j#% z@454{_eJi;N;u<cuwx^Ks~)CGC=QYz+7mZz2OvM%MEZZoyp>~;EeV!yTY7@`uxWMm zwXKaUr;A&y^MaF0^0!wP9`wT&Ad$zPl|;Yayce1z6Y4TDS+3IkLJ8g=;MnW7s*`)n z-<D>5tX@>)UO>m?qsL^(dy2g|;K8{DL~P7w!FsBcPA7`iojB%k%eb?f6T=yNQ?q6n zOPIe+Jagp7%rBJ^>s*e;j|`4hiP-)Z;;3A65+Hew7GGbe<GF(TRd*o@t?_GDZL;C! zhyuZ1a@V9aJT-?~cNS_h5*PI**qG=Agrp!rhqpPG4H;~}{FJ!w^f2+j$4u}VR(W}7 zIYCBT0v@e5E{TQL&$w_Mmgy`t&FS^g^v9>JIGndMhNsoGN>K95AMnyWlClvNHw+#u zFoGN}9No$<-jpr2Q5WuAV!BYUM=d3zI>!Znx-c53tId^DWu<NXpf4-4cw)A4QYmin zh6rXlQp4r)3;o{yj7P>eL_5P5*raO5Y|_1<6jg2t^qIIMypVL7GzpW6La|1BtlEcM z-O+`>#}$+Pp>X|KYaT-+n_I=JYqiH@;Rkma%-KZ|sbwDovFw%rd_aT0r0veq_j9lY z@(xa-i}8P}82eCCqaaY4^SW?a?}fo06YSkq;Am{yFUmW;<2m6Kw|VomYC7~s`PQ=Y zDrVLPmHb>Rm!F~WX07)$G(NwuZ;wu4o^8jIWzmuvbKE28*S?)><BAF#FJo!rRfwVE zCbeJvIHp7k2$-h_^`AOx|K@_n(2d0RzX3pfuGbDs$uRR{6yS!v@kwkz-AJM>HjuoH zHAvI*?+bWtt=Gz~ua{z^;S{2XnSo#%zk3}nEP|xpNJB$(d&BNTPI7dQSTyM?m);0$ zUZ`*mX+SHXp~u9Hl}6!=3ez$nxM&7doPp#WF748`M||Jh3mRoxE$KH^Fi=e!!VU>~ zgsK|c{1+oZVBW=FH^R2~x4mg6g1!8w{N8>08KC(@`!{WjKNl&oFWnUSD1qzDBjJ|| z8zRPoI~WlhR;ecPhqks~i{Phz6sn^aQS=p>#%0d}y!A>YuVXC?fb9d&0rC)fej?vI z*|*sx6F!-pWN~`T<?zr}6R@rF@WBzB)I?`-*J3F|<8Je6KKh+MkMCu8_L%;ZtQs=9 zgYJGnCQHK7%;OAS8kY(dc_P&f9WEM@{MgXa|JDq!T8l&gQ*w$|{p0OMS}>KxY3u5l zYYN5`6N8E>-g{F~-!$6hq)-ZW1fj|lIC@>LKBBJdLd>AeFG1~>{rg1KUylXu7b8&z zl_PN~PWFC*g$(ljl%b#Ll6a(J=9?qtzRCLXb{kY#z0gY)SE+=su`*M~++nw4@)uWq zv1RM<$8|)CJPwhr0r)EATOT(NX?KZAK(XF({HK8Z!e0Bl+?Y6T^vjdD?zx`6Kyx~5 zwlS1?sU0218lIbQ7&n|T>i};gG6gXwl*kj^_sy~u{K?M7WHf1R<Cix<=qotbM>fb2 z8QR3`e#gR<%w(Te)P}uBu#hP95Tv1B$t1d3dEldI6D!HNUhZ-~Pic=Cr3)}*_|Fln zfnZSQrSbyToa}bPWRHcoQTKXu{1TIsx-Li;A-To@p2cX~x>?5mgvP(G<JpfjsZqzb z(Tqt`Zdyx;t1tym9Ldp_+~aQTDLo;yatPuN;b0JjS2XKl;7@1;F8iT}vfFB1TpR7! zq%ParZ}XK4&byVwmTu%LEcd+IFgHio+<V1;GZ5Qh=Znwf`&IUE8=dm&Vs5Q2BG;71 z6jd;gt001Ojn@YDJjTW2U7u=8v(id74wYtV=SWLAqPoi#_m^-8Z!cSD3q0B)HbZ#) z@?s^6HO?hn=$YmP0Hrrhm3fu~yl;SII$h8J?Zp!KGo{1Y*>)Y53~HCI=wHoLqp@lc z*gpu$kGXxbIo(SPx`3A%QY@ESeGo}A0@6MeD>E-pyA!nlxAW%6T_pEojYn!!w~vwX zXbfnsn6=~Y-6%J0$4~z2fXV$Kwi15`Xp`wNFBES|ApY&d1mk~nv}UCOm5A{EW`tD% z?Mp;gB{R5^Hjmi-ese(aa0wMx?W`&=?RT`a4G|JZ5uR*Sqlyh7OOAYeqn>~W-DNem zZ0=(#3X9D}+sD}Z{{NU?ho9s$^C0z2qU;+grtIaBz2Q&sMMtF~EBYe3<$)pIg}(~_ z1f`ky#2;b$jS_MARUjZ_CRxW_y;JhT2~)R37TF-*&1uQJY_S#Q>LMtj7ZO2{?dHU2 zMd5glu#na!F9fWMac@~whPiu<>QlBX9%jMM#DWFPc)Zy|_&8o!#V;Bd<Jja2oOq{4 z(px?A&)=8^b?}JWv}u52Wbt|4-81_Nc@a48Pk<|dgqzg4s4i}u_c@RwB(5#&)4J<4 z-4OZ4_;LR=OMRh+>uz8&2pbp1c@m93vKubQUkaD%^qgmmLe=J<nas0?+g2pAMYjjH zxCOxj4dO;W<yH$)==A3g&*v5mllRF)VC`~>)JCAoXszns)Y-**5G$8H{P3QBL7~}M z=-{v9!-Ss(gm?UO*yFo`6=)~iwHWq0ZFFNr8>BGm)eL)zh+T;e@c9SAS^X7eiDQl2 z&*Yu;yEBW|7R~}!enQ<$#ynknrWBz4`(;hb&3PIK7q~T81Lk$<kROt@tGh6YisL1n zu>=?6*DwlBRkS#VV~@+5qK^h-6tcdE14Yw?)Erx9a&Eb_v~0lt#NVS95qUn7#V9H_ zcJs(1^1(!YXRp}IaA(1-4N?v{5^X07!ivtV^X6Z<$#%3$TC~2;{~#J1wyMGp_st9r zPgArFDG+tX3b9-$=G(~778@q;L?xHXd8M9=wRHv^`KRH63fP|{-<O<JNKwlDAA?)z zMUEN7*gWy9-VfMZQAbra!<~4<qP3;ZPqJ6U?x*PN`zO2@3JS53D~rS+(NL31V_3mc z3a99p9uHSVIBu{BWwfi4!ykqgbQ4a4XI<TmE=a^b{tom|cmoS-LfpLGSp;0nA?>Hw ztS<PvVYgM4lq`4#wMsjHt0E7K-P;OG7o+B!0C=Jo$I=5_IJcp0kkXjkZ++l+5qdsa zI=Zvw<IP-QT{wUL4BLYmg%5xVzzd^NIswE=sO4P3Q}r`06}9Ia{zZt2?j|FUvEa() zN&VZ1M4kZH>7)Za6M)BVGj*h)2H{~IFxyBx02NEobM>IFqo<}?Cue$KUXBzwUgSD) z;q0}P<E$JA6kWGTaz}XtECtZ&ry~afYYv|LeLWL^O(*+1dF$MBsPYug3YJ!(p!IAM zA6S>=Spo7Q+5Sk%6qU>x8)JV~EARaJR8at#F#Ss9#V$D`aSSeKfVZXqH_^};cTUvd zI4Am^#~eVZQl^&C)F4v5T$Nr7a2b6jSq&XCb+akF>^*j>{^NV(7w~?t&@vgDr%b6& z*8XL~ZAI49PRv$n-5m_R+?67*ri)jO=Juzi1%iyy_E-2T5Lk(~KXX~eLGqk#>u84K zOtqD!gGuZ7E1}gP#TG>B_Q)GvN8!PPzgJan2yOTHdAc9nd6o|*xc;g(6tTl?s>p$e z5dtYu3(SsLEq(Z}N_T#A05<u_%MtI)hFfi{g+QA9*#u5v2~9x>pOESU%k{$t0nR=i zymdN&yu)xIn*Yrj%(N`SH2ptZHG)(+&Mj9!7<1~300mY%OK{}9JQn7GQhor_J{njO zZ8&lf1%1O&sTNSk@XWl<-P5`nU~p^w073`^|D2?0lckP)Bhe+ty;b%O;B-b9*BOlT zq%E_h&no4&uv+>+RtI1V<r4Ghw9GS<7DNCDR^n&8-U6Yd_dJhw?UGp@?&~B+bSGkk z%22^FEEDbs4V(R5evQ<tiS3#Krfy&i*K@44tC<mL!3eg%tmw2$A-GL+w%dv?V{mSW zy$s47i@mJ=*a=|o|NryT_fH{kJ~y;qfGxwn(tQA8KQ>gs7Sv_xvXv3*oPXslUd?8i z7*6S~&75yr9g9GG`u2kp`IbAY;#kat5eJt){`4GYg--zez0p)w+&dc-a6x(d0=HAp zR@We{URif-^S|y*i1fYF)&@(bfo*WQF$_L@$G};&HM_lFjzk!eI5KeltE)u91H?PD zl}f9LZHmLkr|4SAAIja9e?&b~zL76UxBd%ECeL9MX+;9i`xs?T&$Dm6^d<7GFSz}* z&V_6^C%<C-RTJzP%k)U(X!^#vy82&%WyWc`0VBL;WWHL&+<?YVX;UvKVjTNu<Rfct za^rGBxvbEz(V@1i*AV*n3GeL!5VF2X25QrScJ*U@6zT<d;Pin_d7SI%KVLh{xc^$I zC}#k!Tlunz9pDjlhQpCW=llG)qRi*b!@Rs%!dt?p+xQDpZ4V4Y#TG-&)J5L+p1xd% zKtsy-7OALq5XRbP@w5&-djJ3Uh|5v>UXW}%^%dyYa;c(MYK$++rkH+j3d1e8^%JD> zM*;2$BaUYi0wGdXT`Kw-KIB;E=<zm<B}v({IgR^=GIYdkx#e}{LNkY`|KsLFp!dvF z)zgj<SBXfCs88&fFT=8w@Hr_rb!|1xt6P5iCc)1ZJq=F}?wqhmlj<y#6%<$m*Y%{( z<$4I0kYC$d_bq=^7HvjBDBo^ulC0kAj5t`tXNTd6QQx7Q-1<Y<0k5Dz!03fn;#Wt) z$Q{uv-&d8ubZv^rYR(MkdHM)c<MC)nsu3Y=XemuX1WB3;(xd{>&+G|DslG<8cm&}W z$&UC7gDq?va~8aH2Px5tF6Kq}CUgj5G%Edj;cq_FS|PmbISC4CX_dZX`m+FV-ZT=V zUZ<1)%|A8&p9=;exEd}7mgTg6{a8}60|Yhf#Rez8@3UEku@4OEtjkJEA3&6yKfNqj zG7I#oTBqC-$$xcFIU#^-57{NbMLDzus`iCHi3v<WwidzD&y|7;FP-{#`0r~Ub34Yh zcEpT(;MYro3@FzC3p>;dzjZrS+6rLMykp*cIZ1~CbjMqZ6Mym9^{a@dt?=Pq;%d>N zDqZ7Q*-YHum~8BCDBP}#i3{)S&ZF-Be7|O;2qUtF*M15zQEI7ZyoR7&X5rK{U3@$W z0!uRhrH?t;Bx6ZCJ-`1mhurOVXC&8hp*N~8GZT?X*`$93i6Fu08omm6GuD^XjG+00 zi$1lUr+AMh%0})Qwrr#k;a)J~mbREm1beq3-J#zt#ulXG>y^Ct+*rl2Ckd6i!?p#G z>e*6on{uN;bue~jGeB&H_JW(O=aOJLD%v=}^UoK4mFlU*0vet5lEm4++Po=xa)@I! z`;f!7!9W`u+s?i{&=EZKoA=A*G3_(U{sQa#7S4XRTtPudxy8+7@ly64T#UeUP6gL- z{XwWqV}1Bck>`dJjJcHtzF^iBb#&j@J3~J@07ZQdB5Bo#1JA>RSvo^MtM0D!g6u`K zPluB)O5$uAiOT9>1o!vDsyaI4V*2*-60;r_6n2CQ=-+Xl6g$aZi|`9eh-`Zu-Vd;z zmZ5ugAcL<IYL?+9OL3{qQD~FFvuxoNPdNwlf0No+vIFLkto$Q@Fcoz!{;H$_;o+01 ztFw!o>g&AU<KJr0*b?mK&OxZ@%z{Aga|`(9VKo9i2R*B}djADXu237{)JqyeW|v(j z(6iHI`YA71FkyC!OX`*0Hviqpw+uep04OSw7%fZq)8tGIl%>4bk$AC41O?huapg0I zzEul?;MH@!e+mUNqG;Zgn{n88_9O>%F6MCo6eSlmb*_D_*B=UXnQSoxt~~@skf;bJ zL9Y?P<^m&1(<e(+^+$z(Kx!v-_^;pq<58d!0{Vh8F+C_(MLY@fuM@ez000640jf`k zNB;@D>Gqw%&nSt|d#xUP*!WF{-gg21{I%|Sy8X+2l6OvYaY(i8u(X~DgKw7#l_jxF zXnor;s`9BA%o6liWgvZ%i!MJh`t82~?Itg|+=O*22V&yV+(4(zPchpeid_E<CVXXh z=m0FpXd{?z8;L4YRA{RW&56ab3xeED{Aiz5@>*sRE&?o5#DS^|U2i%tc42^`Zs^RO z1O+viiNcYI)J@Ks%p9*LpXEbYJy<~G2hABNxWM1D9JSfXaf!luniMPp`F-dq8`#!3 zhawMCS$teV&OQ3i$UOc~;zVt-yBMZcaRgUuYBGGHo}7taU>2V{F9UbMH2%~gEuBPV zDbFR^k=TfzdLqiCKJw?8$p{AK@2FYuI}A@Lc9Bi43hOtlLlSlM@4Nbh0#V6M0+qQM z_hu>RFwN+mLH;5V!)s_cpUE%338#TbIN<d!p%;Wi=okh|_^PZn{}xuZhlph6xifWE zhdJbF&lGT7Y^I20=s8a-98+N2B{+Yo8`HExZ1`#q{x*k$LLxjnIJ<V2`{JI0QLMNk z`wJR{M)06tg+k<7an}C>u^<+XdnJvoLCYuscRi+H-6Qr6lETUBLR7c{N;|At**P6X zrMs%!9kCRcVm{(AIkO;6RhTb=qLyorEfI3h#&jHGLtRa8E*wS}b$$Q<6B{AvNJBq@ zV<5@&0?7heW&Ie7sXy;A=t!=@e}6489AA!3rez%EVRdF?FyO7*k@GzVL~6PJ{bWD! z2;MS$?oOcxsD^XS2d1?OUq(CFLPoJr4HjsDEJMA?Ml262635MxEV$~R*_9Rik6zh3 zT&zC4|NgNmEp)sYQW~tKy_suFG4%oQ-v@@%(Jdk<TA|N!5#OEK^>xHgjafPxz<ayH z^9dL%&t)pH_RfCP5y3by#}CX3^&owR+VEgPhaIG0lRHx4b^-{RYtgq1^3yZF^_QYI zznlQXM>ipWh!^{cHgyUSZ$LMpOKfa_aBaB}1y~jR8^mHR>{(}qhu?lD+5>mJphKt$ zy>?W-0nS1l7jco_{tg8Qm*X|J0r7~5Z=BDE(jjX#t}zN?+f<|$qJWR-P%jh_K1YJX zLP)11&hhmE#y6!(%Ve`@N|-ukjo$$Htc<V}*=RU$MRGV(+opmH0J;m7`XMFHE|Lc0 zYs~L#@*Fh!)#1)PnP3%}%m4rb0XNNDXq1+Y_Y5Fdbq$3F93w!?E6hu*gH8X<DH4o! z&Ie6GgAuijZlarkWW3>o*2F~PllB)3G2;pCw&pRHSFEQp5{ypQ`V<*Y&?`wp$<G^I z{VYf#ZJA!+Xov+7OMK?)^KX+$ImBLuIa2h20oa;)et`fzZc?=>>*5|>O=4ZM1vOd{ z?4+s;V0yHY4i4-TS+U*WYc28nNGU0abt$o=*gZ9a)@NL+h`IHK{hSSX);A)0{yb~l z@o;DA!3}3*?gWZ(kqAq=+fxiw-ZzV@HuEFUQ}P@gH5Ro@Fewyd*m8Qf+>L7q10eCe zm^-NA^AKch1m_26S5Q5yU*$o)J_ntlR^r?hWzp&lPT^OK*LXfA3m#r_+hTU#4wxLH z<ZPOR;uNg^wUc!5*7+Abp7%-Xge;|KnpGKkZ;mKX$**~SKKnxB`fNa^T!~v4#M0kn zvD`kdZ%Lih`@1pqXIavddlQoFxoR|3%YrQHb-2(Tx2x&2-BAbHd~iV+tOuWdAQ$j} z?e_0ih8b*{8jMos#ByaFjgpnyujQRCC72=<Uvnm>EdX4jvNUA^Lgro@8Xnz3(OKr` z`exY&(CTA<{{69WeB!(VC1=OJW=23p$`(6XY0p~asljZf12)BK$!)%6?pE_Ti`-(q z6XstTj?(c*X9&n8aLVS&xC5@J%R^8K0}`11Vtip<oJ6H*p|UnhGo@yMzf^z|tJ)F# zVYXy1X9p&DaD=On6MxVoYLw+ehx2|wqZ5FE$)8%TPauJhnO5HG%x*H)+u{W0l}!Cz zVRB^KgfgdsM;L_Kp-;q8@zVp46^O2EZT2h76~BG3q?cl*Pnp~V=l`;QZbgwOX*lkp zVsFy~OVudF#Y3ydE>KZ?A=!&*esu=kcSSXS^F+jHUdp2}<6;d4%D1-1OkTk=y;J9; zKds?05jY^P(0NEiy80wJE5^tTCiQ$|gN(JUm0uQX-5<W98dS@Xu&Zz2uhgsBt{DUw z-0t~QTzns8zyaR(KT%;oWGo`_;QOj1S^A9~G|{))p7DI_pC=$>l!vl3-y)UO7%4%l zqT7`#_Jc9AIyQB{D0U=+95M<bK$uS89STFzDK76JdA0#^9A}}QH6zQ7P5*?u-c*@X zt#^bcCxlr+2j_U=eN8PiAyu^f+J1b3bPE7_Y>Z=$6y7=O%@~uZ1QyC;sK;+am&F-$ z$<k(UTg*o|Drz@Gjzm4n>la$oq?$(iPXlxSB>wq||7kXppGOr+?JJbTtkLkr92(-= z!8m{zG`QiFs$Z-lB-{0ehB9|dcodoIaXaAipXQjlgFDXvZ#C}u^8k=Y8@p2jPE@Q@ z?hu%m+^6xf*S2%w9*s^h`V5$dX8^2W2Bm>rSs&RQ_(fvu`-&uKVxHFF<e6?!+%Z}^ z;uR7HdJGuhDpE&BeoCJ4bR*A6*u*hF{O2!wIJ>}J-oCtNq9%P!@V4y>iC4ia=d1$o zA)WwSBmq=XR)pl|2p|fg^}E75nXj^TDNiaJ&=@|QFjBPaSP=@NxQ$5VFmK6d5cly_ z2luSGlxc~LtxJmh9Lm?df#8Q05uKZl&ORR52@sL`W0;rWclb{+M(_KtP!pDZxeLjp z=cc@Qblta*_F*^CiPNRdmdcNk4Ib=s`(dF>nmUw<)hy&yH5E-by}O-uqKLU3)9AfK z5={ks?Q&ZMs^^U;WhEmbY+$<q=Z6FFum*<{c|OK5C>d{45Xm7-!PdI3R~eerPWHMS z2X_Y>aM6nkAE(nF1_|&TB5U0M1&qT%Dwr1fZg*G(kJy}$)9d(u95XARLXJEScG|yb z`7{_J3?bceff|}!lv`+rcBNfbHWOb1)FZH2_g!vpwlU}ucjbN4j+#>c01*FzeWAu1 zdg8QzCI!u(`E%2@!qagt05g?$`O^J&`2GFhZ6Hsd{N9IotMV_vK3yCL_N$Pnc4zf{ zD^ETm9b10u7uMWppIu!tBP2RyH=&rC;P$HHz-KR{HKCH|-CFG^jXpVw7%ZrSIQg^- z3#rT?#{pdyuww*$3I+*^%tuA@w{!^vy8If$;M`q1m^NM57maYDAPC@29SxvF&E?37 z>g?Qf=8<F#9gRm83d`T6=^~r;zCfDbD&tvK<wdzpfl~;;XdEnvtkCNucAl)a=n&Wb zm>bE3`H*WUdzdA~J8=g(fET)kiY35hD;T&^=V!Xl0TBmZI$VbvNaL?Tz5!f{QuR17 z0YGbT06(yjA>Em>rc%k{aZI~*v?~&|&W+Vtwu3hEinKXi5Xu#hQ<VIoV0OOW!jT6= zF>l;onaAsJ)Jn#08a&%t6<^^HY8Mv1o|HCIv(Micr)X!y?KJxrf-}c|yyvgqWUKWw z;WUPU>72q-2FJ=)dR?k{<v3t2-=f3hb9@7=x^rKq+__L$gt_30A&|R*a@E)-(VHa6 z_+td?{fZBTQc6uyR{ZD7FAE6<J>Yavt4N)<a!U+KE5*~p<2N+0WsTPuzq(syc3<jR zYbL;5qCM6}CQsDiZQ{MYO;NIMe9Ebfid-vDFiY5)o+tFSo#SL7*PMkc3W&!I)Dl^~ zc0iY^7)9tnszs|tkW)O1;Lj~nY3(G7Eh$VPHR!qe&{!hD-jAkna;<aaAb<4`j<}xM z)#UCuDR!QOl?kR}GlteiN+v!NZBjGGr)rs@12}C%lJp`A#BXN%nH;kAxaxNh_`brZ zlC@Pvm5W<LgLj_HVQXA`!Qc+3hXH^UP-+c8=;b%Hce2q|g5xg&D(Sy(0kFl65UhWr zUQ95dfl6l$U3eo0aG(Gt8hg<(AlQy((L<y!^3-Rp_D0|7Rs?Z}uJ7eO{pF#rP3foB zSF?V@7MALh&s6hGkEdM5cjTYeBv09oD!KmU9WuWcVilyF6Ly)Qb?^q+F1&6(??<kK z6}c&&=IYcfyAwLQu&@tj%!3v|8~X?=kwgj%sG>f0DIQ4js+0vV_A9z{jmox^tLns0 z?e{ax;B#hE>?iHQM~cOgRW+INzVaE;x|vtjAfGd+cz*p&xUAKr0({~d^QOoz*!GwH zW?}S7JT9ES1}+s1kTj~XFW34Wyu9A|@lHbuH*7>AhtNmKEoRt+Z~0&EGu0v8DGJG) z1D2hz8q&k@7a*EY@Adt$pXXD%)0cE#ZTZ**Yx3|P8Cs_c?EFBfL?51|Hk2!fLIf#% znzQe%xbCRC?PBnCOoN$gk$OZ<uk^%V`);q^r#5T6%JlboN)|sfuDab3Q45a}^o7ZE zELvd}d>pY=@r;xoVN6yDAt&&Q1ZZX7XR@dOiAb;oL{M!YlJJo)A@dk<hcHY?G-`kh zlFLlF`3Ov5O@=YUY7;*JBS3adR6+l<l-tH;P)uJoqTfu^a#zm(1>KzE_-s)oF>mwk zG$wW&N9lOfs}z+OCjUn9&pv6Kw!~c;=0H_ZQ3+e`KMO~tWW-X<3#*vQ0t6VA2z3qb zXNjnIuNV40)*TJ4P#u_tx=Enl*3$nf<E7`e+J%D3W!C-N&0tPxi9Nd1TRQB%uk~UE zNzl+A*bt2nw}*FYcDdA*_4JbrYYp)S*#>+Vhhu(K!gkFT-N#@V$?!3@SsUIrecklJ zovDgq72KE%c$y_tPtczZcbzmFTsW9`IwpolM|xR$K)M=~>}^(U32dULGr5cHZEt5q z#W)5YLNXNLA9yeyUqa+dK_FUxOz~?t`v%vPUXyzJ>cb7vB1X{Km&`N0*s6Wn_g@v! zSY<AQ%HjlzeZ_e@tNQ0=<@F8Zz)&*(C3~`ESm$ZuQNzVLLQbP7epZKoJKV1+RFJ;L z(bs*3AEIeOR4nyzUg>H?E<<c)+-DUk8Q0ZQNr{9ED;(>`TR{BirX|NQKONn~{%8Ah zS;eNT1SbOr(&3<x`YvTbd;;6uGMY7{{M~MOj$RA#UZSc|@BBp%lyCq59&g<5<(F%| z{;1K{{|-~VZgK(%2R5Ip++Cb%`7n<LS!-Kot=2_q{_i08AWW^!MqlTy8&o94D-Z!9 z)!%Bv7-50#%xix5^HKd@xGib+M-_q2>?F83Euqt`sH61HhG!)26|CM(z5)o-rRfM+ z2FAS(T7Y&2Y&1ej-7Wpmv5*I5X2bL8S<0jc=7#WSK{7qjlikW>i$}Ze$s`>K*r64& zc&{ZoUqqjH)e+jEBzv%2pY^@z5Co061lJ=C6Ku{#Y`A@WbPlc#k=c{J!XO~wFuZ1a z>XP_K%R&42zh)7S68{_hSpNLeF3T1!1i4uK7CVOx+8a1pV#fgi*Cd;T#~H79=!#_h zfkYSFWG5ZY`kCJPcU~Oq^0(o^I6?CR&rJ6wNG1V|Jq7n|(_J1C!^8OUW{=9IgF{o( z8pT~gPO#=t<<g)7d>>@w3NKS?;jpL-((@q5V$OiWo12_W5hyLh2?&}fI9uN&Q@3a6 zj{1?0wAkQoza%bN5Y!|et*>IKHF_61c$srqY=>hotm7#)*QP-D!8eIfleVPT=_z-T z2F!$&xgtI(%Pph<#Uv4iGjg1vv@+$(dqSY7IwGQ_?z+I>c)J7#r>!G%RP1W1&qcB( zt9Ic#a0RXi`T2!?4GSSd<tp<{_Sm7(k%G6fJ2)wV$*gg-#k_)GHLLP69D<95P04sg zd9IdZSk`qitg*pwpMKifYC8_Rm<MU%WSMcc%51sRkA(z<vsw|9jr=Y_Xz8Rt!)QZo zEMz{CxlI50>@w&TMUQc@wMVjDhXR5i+A9yQ>>0@f+X382*(cz&zE;s)D*b#{=Lfb= zRuX9v$3(;Iq&3a}_Gu|cFQtw}!8iSU923snpXJffn&Vx8t^OQb0>_>L!MGwaUc)IE zX{#OV;HKoNkZSY~_toQah!H6Z*gkUZ2z648(7Kp!T%L-W*o5~=MNPHkx-<v8dFV?u zALP?~^2jYc(Qs>7xxv%h#ie*VJOK`(vTlsJCH+Xb0a+{luB-rzs{ETnTdhjta~25{ z``g`U0P^n}j`<^Wp9w6M)6h~=3@~B!lV+s=s<r>LQYdJzKi_*@IpSXFCgcIsaIdSR zQ4)8Fy@&XtbJJsA7&iNbJ8fMqO&y$}{sxPjOE|YizZkU94lS<zZ0;(|S3&FD!Jg;= z!U)NX#wo0t7*~CU$Ol{y4|p6YJCfX;2Db3(5<9t;vr#~{>=3dtaI8T)(6>w1>5~f~ zdG*v3EU*nAq?Tyv(!M=92&>U{nu0!HC$5f9YC<7-_O-$XgU-ZLeeqfl95OJy*Nby) zLEd}a*;Dgk`o*z4%AM6!=9`D+&K&b|dwk(FhjDBmv{W$Zh;Fl$W>X)bg(*5;S6KK! zeTmyCp2;u3VAw2lmPQ>M#WoVx3zjqzNW#yt)F$D0Bpdb5PyXV7<H(OCMvu~9B{>?D zhiuo9Z7SM43sfB;eW<M&I;bup;4xgcpoVEfU-JFrr3wFEsvB=$1&K5%t4mX3<dj26 zB-Mz6YX8zw<KpCr*a)Kb!#t`}XDA}q@VbstX`ka>{JnKrWWD4X*L1OqPw%DV1@>w7 zvRu{uom9hNdfdk!GV-Z&OacyD2?9%flR6|S`m}YY0f@~{wM{m?ztPO?Uft3P19sA~ zt~b0eII8+B9y<0qJ5x+RLLzr(8OFn+Mn@Nj0eJ#z{aEFOyucm36@eoSK=K)yS|Fc? zYn{z#IYx>>5`E+59*rr1IgRQ!N+x}k&`pv4yk0PF)<Qs+4}<4Odll|eE8(nry!N0% zsPu=w`imQFLAZYSszRRv3mdy36ehI;>O```h0Q(*#kB!sv?p9Rk>@?dHR*NO9TtMu z6U9?n5MQpTVHncg`=gruVLGAs9tS>0<{EuTReL&Qlenzivl2-6PGrOF-w-ry9q@tn zc3GNECy!d$)JSRH-bpMR!>oW$Bg*pN^QOu=DK&c!j!0N~Pm^c`K?v4avp6uwqyPW{ zI034Wh)4e;dmRcp@1MyO=Y2znJ;{auq6vu!YHJdR!c%u0_tGZ*L5Py$tKF6TJ4`ow zwp@K}B|VRXsj%z2X#&8}Aza(z$`d&e#&8m+hN*T=_uR#U6K2N{;G9Tmj(tf<=~jhs z^d#p6R3B&&v(wYYXvL80e4kNc?JH&JT#QtAHaa1lJmfh72Vhqt!>PcG`l(CVWLtj* zm48Vp$KQuG3vd2{O<o^uEGD=HLi#_GR1a+LTlU?7G%2s3%;A(<+y0$uJxu9yB=Vj% zv%lNv4-sT@q3n`tRl{TKGri2z8Yo=qL4H>4?P6lo5voaiMga>}nSk7c+)@xwXDRh9 zoRv<bQ7^Tn=Q!;rgm4^0c6p~6ni#A1^n|2iL6|B~j>+5jEm$0z-IcUTYkmH|mD=*R zCS%7}6;q-Nd#mL#u<L{Dc~}yrJzvH@iwLcViJAD|GzX3lxRI=9my)?Z*A^GRfh$F5 z*Tj6TH}Szz{3eELpA44u`s1YJX_!4}f@YU3A{J<EfPNDV)i`;ydY1MLgiq}SYj7xJ z>HFFv!q|*Iq8q&Ix(a5}v!CZ#ax&1%^o_-Sd$z&tK_0D;ul_y45)yZ&hw++;z1Q27 z$|UH?ZRoaN%4cW_^f`Wf$>9HNSP2dHl%6rPl|5Or=z~{RoEI!LD6ZEx<H|=1&5710 zX=79!rD8GZ+Ml4lr|f2f)m!+&d^cWRdc4zu@(bzPnp2YHw;>!bkUy~XGGKV(t^fcF zEFtPpLjQj;0Stg#9noXeissO5>hAV~k4Qif%iD1Fw)O<}O)(|XCn`r?di(s(eX^iU zmsE<h%lt(UV(5Gm)639v55Y1NNgr#ooK$%^7~Zl#Ifu2K`L<x(%w&}xG0c|@#y}fT zJs))9poHTr0d)EVJIKqEH+Cu@qEO7&TH6^H^VerLbqD2@Vz~qvrRzh<&I0On-siyP z8oqYMHl_MF^C-TH1bBe$8pe+Md9UpAVaI$)69B-=8zJswAGLT=TAoXs;}dbxcC#CO z>Ypr+3dJJIm7o9z?bcg3DetS)Jn}!-VuDM_#5q<g-(-XN(~Ezx?suX7x>VNuEslRt zE33+=u);hVu9L<5ujpBf{BB?H#{|gY!);@z&h#Tm88i`yn;=_hAwNBrysP1)>;bWH zgwPZtM!A%Z^e3O^DEl@eu}fGST?>K$nTV%ZcZRit*rF+fsZZu*x=$g_tmX0yY?{I~ z_miAewN&jM0Tyq%<tx^L6*Gxf9rwv)fG!8a(1ID2-K!M6ZY4>G#1!7k+821r5%!{d z8x-19D}l^R7WNb4SZJCqbs}2Ojn2jlbhr7|7^iXLdxM`L0^Mu2^<}=F_jXuK<*dAw zie8q*CV>aAi%?2Y?--QS5$iYwpZt~OP^y%Vn<gCR+MD|%-#@$iHzOV95X`3uxS8X< zay@u(CIcNpbmV<W)w7p;8nZs>LxxziJ_Doe4l?M5V;)Yr&*qK6`M10RENwg~RCsMy zXT^w;V_Wx47=C9N(%404#__NY3BwAQ)Xic4v(ZfVIGjcud24y$PhzL6(Esbk{R~?| z|7DiZc_{l%@S)~+hgbUe1g&sVI*-3f5+yRwT4fuO@Pg_nj>i*LMORxXt=G81U45MN zS~`cVGOhiFj~QSbJXrWB=_#?BFHrT}A_4+g>>G+<V}QgQYPNx+!4VyrURfee0>Odq zM3uIe{qx~6yd$^r0+FP=Nl_eUJ@asr;6u&W?R*P}38?$qqLE<Nj2rLb7&`8*4$_RE z1OyE@BXfBg`uI(bju5{ysrE{gI)mK}EPgxI_HykceN0C?MOG9g%u2>gw{2MH(&i=p zy3Y<fa$BuA24SiftKkfeQeV!DQxjP8p+7Vb5m=xpSP%Q+K4H{h_?NqKSdl&xwBda{ z@rxK6O)Z#!sPMw_p4+%AYcowbK{j^VH!)4=)~MwLWd}141`<;i)kgkg2m}DB;Yb*` z<@flNGqaSdq~E$u77mdBigYnhmK%{B_x*~51h930xdckx{{=G6*2oiUo0{{M;bbe- zY%rt==eF=Y)N*n$*F(1(M|#EYR}tw<?0NO>162Mr`|}hTRQKWL+t!z+V{_|K$m*Fx ztX;GbX^_cTa9|X3#>E9%LAW4O_bDs~?r#0w33B-f`$f&$w)?X#jJkjWE5l==**!9S zzR=TNm62`HB~oT~t74an`E+$;3jJeUHc%0{$AJgk>;VP3JTwiEagfx3bm~A}x;i*e zDEIZnjpUezhVG?v$`v1T`sUExIM>N=fx^5>_xRDZ8(+oBOiOXl3(|?c1nS7lzH=c9 z!_WJegkID)&3x@Tw$*4$i^^=EY<7tjAqa<avc;VJE~3dxAPay4<=*e5)x(%Lw*D|* z@r0jeBsJwJ)~&d?-i|U;)}t+S1Wt8ewSndo^XyV*$q0a^+8|E8;(()(SEF$Bi~6O~ z_LK*%lNv1<bIb!9d;9|}C8?%{mvj)g4lH)KYG_W6Hsn|S4JSG@B!ChOEN*7<^`GzB z?D98L6@2~5)e88U3UA$nWt>`;n)aI>OO|V^Xqap8(ZzNqs5>h|266Lon_bO!bEyK6 z(yZ|>WAOw}T_vc16I!(sQo&g?!4s01%@~EbvsVKmj9CqutFJ6al4D}l`|f4!RyHuo z%3Xp!aJ)1LpL0(Z`qaRCg2Ym&SzBpUJ+aQR%@DbiC@ruPT^Pg}sG2SP-4OY_wfP^m zC-`7cQA}`i2=cm(zPI<>f}W1>`0nT}zq^c^NJk_1PHfXU)%K1Z_QI5jl+L?M*n7mK zWs96ic}DDxc(-I6Yh2y8{vRKXqy?y@oB%vm7Lch3fD8T3)w>qVRh{kUTnB5~UJsaU zdgr7u@FWykOj9{?@6`8e>Z&b8J)a7NnUf*b*3znbV~r)6v7(oL6u*#!GiB9aaxmYv zOdGCr`WmJeM^F-e!`G4iaUzR)@LNyQ0l_wxx;VU<Ovl$$r6!y|8M0V)HC&o9-D}=* zAMLz~$g)<Epe04kgz<@&Ev`5Rf%*t~&DEH%V9OBiu<;xIt3aV;vT%c(2O>h0X(d(v zGs^$!yiY%ZfP5NBD~SwWeh?wx^C>W(l!TQ(2DyR@{$(lxu%|dwTaHww0lO)3ydkN) z7B_O0XM1_py_zi3dceu~-T(z14nGaTg1_N^@<<hMqo?f26O2M_7rG?(Ck)NLO4qqf zM&uVj*d?_!1TX{etPK0^VIHaF1q>~qrkngsL7MC~EQiF9*Rb2^u3S8~^v;kn<+-s| z78`zb(U16saFq(GDY`x9T4<jwk)MGXBqb_HgVGr?)4%OMhcWnSHzr?MWcZUwb6TQ^ z{Mv-s=rf<^_8VWk2s^Z|&B1x7j4aF)+M9-E-z9Q{nZ$_=6KU{h@sX;`m<RkAktt9X zi?IyjIsVI>sG!wS@4pBhFyt&ak<U7IOj<!YQR1QxvJFXv*t=AYvSDrUFg^j<}4 z+>?dSBz#nyf2Q!Gt^xos){&DTorch!Vm1i)wfdU&bq+~}W!xH9Tuc_}WoxX^UBz_$ z@?WPYZ3S5-1MB~oyHdAmnNNnl4b~?<$(AsY51<x;tKsYZ0$fjgtW8uRZ-HW=kjkrU z0|^XKorpHK+~<mix7rlk+Uey*J)nAFFxr9Tgtjce07~{1hJ&iZa#|zGQm)VWzgS|v z*=$@EEHPuXIlQhz{gwCn{g+GeJ=MsE|Gbfbg3{s4n9Dlf<y~8OwV&754v>sY1y;aZ zgA$dVxzhq%fTg*Ul6d#T1(^smw%VohA0FL$$)v&F82_5XNNNAx%dMuMQAGsDiqRM; zd|7E-JG4uX@-uyGAtm6*;jO&s>X#dod3u>-6%<vc-h#BG08a1jA-%xcG;z4uTdXyn zC=IWIAB}bzZgAot?a(ohtnbz~K9o^=)+XgV8I8<s*O?JWxC`t@B)c<GhM0*ivTQ_I zh(`r9GfP?2WNvZzb5p#$S=o#~>yrHS0DOrBZ?wVaTS00$a)VO_PCS<2_>pBJ2K+XS z92wBKC57Uud){rGn4{-r<mG}e)#}*HW($1I=y3VS=pYS~^g?Ltt;_fdA)p<wLmnQb zsOgvz!SnB^Kj8x%XxuZmrA%}l>N>zovJ;8l2%lWOeWK-MajEJ`$yEw~f^IT~uX+p% zf*KLgSQtfew|UB|dw_AC0E;hF*}I=+T1k(^Nm}d{48=ka{@3J%dy2Mi=1>)9!qCee zJCm<69Ooy`>54%ql@FFedS5I&^`jQ~^^tV48Bo<v0=%%DOtX;Ne1|A@haPb^={Y5Y z`;(FLF;+eaHZ?K5<y8TRRD_BitHrw+xPq$I|9jCmM{s7?aTkhLskfy3A=oJF$fKrt zJAcZ_swbR?Ay}|-xTeK)zy1B2^K4esYFD5@IQ_71BZK0l)qWh7<<aRM11^*i2ky^s zWZ&$8MxMP4(p*V7#LqZ>c)suY?vb3=#{n&{kIe)GBH4YQzuD4iU}Qf`!Qr7+Om0Dv zzyJUNIRUEEh)4g@0dQpAi`IfjJz7m${7>Xsj~+`+vu1g->(ot=F2`f3i=Eg3(7_xr zm8+(hK+Qb*kTgLkpUV3w?eR&_3VH*YHN`Gg(gM?GH^*sDQ|jtbMY0{B%s~;@6*@;2 zOc(Ogg5UYxMA&G2k8E?hzI`bh9eA`kg4?EDHVKFueX3;54f?ETX4@th$*oGh_6sm% zl)R!cz1Oi*|DTcLAuIaglAwQjuT!15xh{5aTp=k_-wPRzU1Ju{M_hSXz-{P9p7gR< zG;sIf&wE`_;Lg%~_HoPO5GWS6vS2AwjBRdUP019#U(Zd>X})%3yKY+`t8+duTIaAd zjus*Io5TJ19~X9|M}N)pQnAy`v?|9%9n>0rC@NApLBf|yvhY#XP*ZrPLZJ44Ac%@& z#eK*zRcrtN2B0D9SVI4QF#!yLxX*N0($~DX4ZMw6I8{{z5RMVeAuAt^i_LnH>rz0m z$YC-7<{yG&D3U(cXE><xaxuMRfM_9YP)}uY^5zO(G~K)<n*d3pz%|P%vzk}*b|4fO z00093WzC{7AOa5K^GN#uZTa_02t7`^35CjJ010A<%ZEXX`jJ6NxQ)!HcdP&arSru_ z9?5^)J7S_=+Y2n^-{IOmELbvfR$#M*++6WhuA*N51YIIpb;~i|uO99CG~ra-MGaf! z_`em`ZowuFF|_Xnny=YFinxw7uyIqQ3(UYkiJ90Lr@0H7Hlzh{TQhAy00sCmVt~ZP zQs@+Rf-U)lvSk()rtZNI9Lw+kCW}2%=#(`N6$<l9OUb{l;+cCO!5Bw)2r+3s8GwhD z2g9F1!){WJJHm4#@rb`91AqkSXj5J5aj8^Xpg4Ul3(K*mKv$pu5wUpu+tao(Jd6xt zPO;A4rWx6^Lztcb0ZhU{E)Jqfn+3&9UG%d~iw)bBlZ_<+Q*0b>HlMTFomzJ#5uB#1 z44FCx<ZHU0^3iGd1J(}%4$+-BGs~q1xQ5~o>&Iv?HN=k0IqL(^Np{sYP$5n(or!u> z&_X4nMbp+NNj8^jK^h;^kbROl>gqhQnLx19#o-D|Q!-h<)whivR$Qkf3uFNha!NzT zL`c-%%RWmB<yT5J9Vi>FHzkhhbw}g$USct9^crajZ;sElKJoU5^Z%!n8z#kf+yOAR zRslp#WcZBxxC?TwH|@6ZT!dMGt_F3pf8Mot5ig%(IY;(p8n>^56{$T7U=XcIO$l1F zpn$y+xgDl9m1_5>e@K+>najxi@B{et8R$<W1mmlLrP;_^p$Yl>Qrm<D`7zj$a?AvJ z@^mlSb~z0AIu_}cwQh^w>LjY)-yUyQI7sRx;4pVdo!?b#0X@Lo3JZ`66BK4S#Kk4u zViwX{W1zcbi|PU+5+U>?MSG}wd?)Z!>WQo^Cuyc6g)8^zWXE$6ILA$AYd)U2wfyM; z5dNdS9Rk5XXF+1sk0Pm=HfduFS|g3{BX>9e3{UjYF6dOCUM`JBy)<g*00U7q^hXY~ zR_kbqgNm6PKXb(oiEw)u2mk>{EV3p4AQ2T_!IQ6f48>~t?@@36S7m)r025x3nnhH? zoW3*oYeJMIz5oM^PHdL_M0l2(ug;6(GOYlJ6b)gB0G|&OV4l#v*6db1Y3h5Q4W}!c zv{r-wUZO{I?pfi9p^&H(JBrnJrY-`)q5uG-p<7VDhJ0=JNwI~$1scC4|1l(+01hC# z1`5mj1Wt^pf#qVogzi;Z#NOl=kZL>~0PH7)Wb~g4M+{-vIYR}%Nw<dYAhZAtvY6On z_2(>b_=Q2hMELy=>faRhNE|MZ05}j0evb|{5e6YU4gdfP=qg6T+787PRy>r*W_!t1 z00OFlKm~u<@oT8sv|;Z9$=~?PDeR0u02~Sa6lgr0jqp$|9<}_7(Bd46{b8#&OaKKz z89gqj20aGCW9bO$!T<qJY}qtVME=Zo8W^&T0z_eJq+wZQ^=oET(MTwm41+GM+sB0L zXF_!Wj;wsn8AV>vP1nmofFkS=1o?7-|22|Lh1up3Vu{Q8eR`~b0EQr_bz7I<0t{v| zd*E8hbTF7O0vN3{7a|31kQLfTCUNGk@K>6*zfJ%vR>N093=_GKfB{r`W<Y&MmN}RJ z12?dmFddJUFZE$ia*CB3f880VG|pwgfWv3_00723000{m#)&M_Sq99H@dW!b@khv3 z9!wp*14<nfP*uiF3bt$t0)iDEHlgKdeOGkELJ5_VxecEqB5rt(al+YX=rg<?L!Ur; z;j*-Jg$g^hHh+At{CQoZ+#dssEsL5VD=ve;EyPz1_qYY2L_-d1AG@<(;Jt&%UC;aA zn%33X0$}57QBw_5_u8i40u7^{+HzK3G!Gy15B7M3K!+FuM(|Aae!yz*mESt@y-v8~ z(<`D#4mXdM(}~6U`z9VHZeGi4dgZ|B!$j;oO9<?yLP{RG2o!>X<%oAfCXB7cf^^7a ztG^%!ewy%Pu3^<YSCbB(GXyA3TH8)KJ`3%7PyyY$E14RX8l*xnAdp5&oeuh3-Z4H} z+xh<wOl9dN;xe)o_1WUCw7h+y9}+Dd&MJ2tp9$HXDKBXKaneU9h22=UNhIF#o$~f- z{xR=DR0CL_n9qwd3>(y_C@qjHcKm$)aJu%vpTBWBd=O9>0%wIi+2{ZO0O|p&6^KXw z(gAQ}-jS<{=Ws<{;K{qnA}aO&nqp2RjCC_#{n0u>Dl+kQ<+d?VJgWzx%yFARzhCI| zRu->N-s`1gG#$GQP06K$*BpEwMR2&I?$CMGQs_;ZF^9F8-kb%{jzuX{hSFn1;NpFz z=m%%VyIKUP@TfAF`AB7}s@qHsV7#_IzW>bMI0As9{up4g3*|%Ka4IdT+t4-)I!TNo zeMEyEzay6l{)quj=+2=G_;H#Fa+R=G-cMQrh5)=-!`@U?{0*r^pjMCa5RRBNelZJS z;zLGt<V|pKs_((XZ+$S{{e!%40008IA?#p6|9>$7452_>7Bsc*E<<l4Qem}~D)35` z7QX}(#*|BWfxD9@Mu?+kvdLqL`@_8mA<-u8w<ECqWuM-|Xu^>aYxbWO;iSyPOOT0_ zN0A?QCD0S?t%K>MsRcj!l{5Xn%dXW-{ykiaSm0fd)C|CD`#w4;L0}6A(Qp*GF4KkW zSm+F;;bAVTcrACSN3N#)Mioc5!x<44qPCr2>`=(p2NN2S2tWj+A#N#pB5+;?`s`8a zxVvR+DiO9WNu?t7eO$}At?H5}vJ&=8FDnwvzuZoX3PG_vsSpRe+Ch-r^D4!ztASB0 zUhSoFh)Jn+VfxQ&K{1z89v4p^&@t;<O*bdSaaA}YE;1GKvT#Q8E{br?JWY#gJklQy zSyZapRsAHo(GXZ%DJn8`w#j>@OztCNx^8P**0zBuhilmTP=nl3VPQG2;A2?vQ%qZz z9aaG!tuQ%iU!7hZNJYFaDzTJ*GfG1nNt+LEdd&F1oTX#ihpf}+-PzmQP1p3>jH*Mx z;2#g`M{-U}Xv1i^RlE6e5;0!;(@CXHkn8_lgVp#)RM8BgR}+osW;8rjM%cBTwtuE` z=N35%@3_MLz%$)g6W>#&?tWiGg^vFc=z73JoQ7A=Ys{CaDy>ABh%l1+F#EsO>Enme z%4ALUyJ*iy823&nZE0kfN)RNZ7RhSH@@bq|O7PUd)(U3z(6H_`p*vCk@S}o7>n{H< z4~KRkoYNeN7aOx=^b-?Y0=7OW>#>RW^a1sy@}yg>!@9_JeT3C5zyNJ%k5DjtF>E6o zl2S=4!J|3~3~vH5vKebCbCyL7iB-(zBo<%+Y5hPw!F`q9;zBBI=J#cIoe#te8vuAm zWqf1`m6wU3A13R5wi8oRh-&EhUWu@`l2wj?OgoWWlb)@VjtolN?8GC6Lx2DP0LTHW zSBOXd(gAQ}-jU<r`1Y$%qg}Pnhkdy`k{AQ)p|66=<0jN>7V%qY>HxZ&s}*F`qWv3u z-D1g*b~!RMAO@7wHM>ON7ov&J9boo=BJmb6V8@TUUMEa(+FEYye^kkeQP#`x>pJI% z+VcdfXmlS7hvYf~LIN-q&ji%Iws(rwA`M8iI9Y(19GK;xOWA3e`pyc^^GX7~A<coI zIBo1PFz-ZGu$1{+uHU;Mk$oa$I5MpOFv2K%XPP_cAsgRJH@slznqU9`0!1P1XhQ#g zF#!yKTpiJ4OJ4HiJ7JzDxPWi)6t_b?H{e3SmS0`(IFUqqAEe82A2U_@g6{c>v!W&t z`zAonN5hc?eOg()IFIL-xHMP`<8#MApj{FHjNM#Sly2QU4nVaZz8F2g-$e>b-EXw) z8x2*>%;2As$ZjcnBXWx)Bh%~*vP4wbVsKDTy_z)LwK~NUYaOalqHXNPy(Td#C4=G> zo%%=oj>5#+9~U;wT$O`5KCA8M=wI|{bR;x1yiJR@s=w@bps`RfEC&iMIwIV!59`J! zv1MH#Vor#{fyVcgm57z+623Y`-Pi>*l&aZwbo|6;23ssWZVpvL9JqgCaQ!O$+S2Cf zZnNNk+7DPr-#EDYzMZ57x;_mEWeJkqU%Yl^W5Tt0Z@f^MH>GfcI%cjP&D7AvTE2O? zrez7<U>u2FAS<n*3mtXr@@i(qdAN1JRBHS&f~Hsph@MORHkJ4>EfOOJthcCpmi@gD z^iv~2^p$|i0|1luHT5stzoJV?{W|t$Oyhal1w$lzoz$C*KKj66NaIy3SroMgm@y!5 zb>8fIK|`d-cdJOe<e%^%fJGdI{R#ezp%4HHbLSr!Drov0w*eDX-R}d~QdpS`q{D#C z7JtI*1cl8Lia8HQh5IbC7#MN8_-TF5lnz-VwMo13^2dt(G)wezVd(IICa;r^ldn5F zqb_lei|pz=ExL_3xa8xh?R^DURZH9Urc+?kNJ}aqpfpIA(p`eYMvyLPMM_W_k&p&K z>FzG+mJ*e2X(UAWXDgm_-t)che|^{Yzvo=<|6R<!X5VX`H8X40GtbPr=V3PMwv|vw zSO^-|O`mKDUg5NDF5ciUG>*06@QhG~0+*R|VtKo)>Wo-0C`u4=;(iT^=RGwYI;VC) zn$5Y{5g)#2MBv5veJnoOvsIL`U}$mm%@G~MQOVR}`--6OgnhJ1{`y%%yzHc5(J4id zZ}<>*+q{tka2S&0dOOxUyQP%0<eRg?d5|1VJ@SP*3i?@4Z%{o%>rQiz$Z;UQlyYXR zc65s_x|~43P0agZoZjIT!Ku+f6<jq)P1Q@LTMnlkt#u!|?(;=k-m|)_xf*Z=_1bHB z@)f6LAG~b_k%@N0?oVq&oN+oG;#q`-M)@$zwAD9CWe1Fkci{to&J;cXv?sv;$kyAN z{4oF&KL?jQx&{Wo3)P(hJM%jNOpg+uh*mM2PPuOSESZ53AjU@_GZA(CW$9%-$LF4; z$e7*`!|XHSvZE4Siy~w#@;-}P2|}Ht!dlHMFYQr~xE@PN*s$g^m?<Sxr{`{7&rhoF zTQ1_ww)-a7lodWeC5N}<#d#O?dzD}$pMpwnNL`Ip-xinBa>4yM>Rz1tF*U2xvn1CY zQXyS>WdkgG8nX@%@RM8vql(w5Q7TkyO7+h)Y>c$G_}5VSZJ?pc5=_P6vZIOnmckp1 zQERVf$+#wOZ=DpTJS>swT=;q!b=ZHLC<yvuYDijjU0A5b*bBExs^~h)qgwXnk*}lr z4LcKZjh|mq>S?Z8t=U56*bBAZr?UGECPysf*|3G!qXdNrdqcC@8Iq4}JMWxiHS`F_ zFeznIeuDBze7=sic~791oB|g20`=fQaEHsJuIjbrS&_R;)owNx^_&G-V_a)A3LPzK z8;4&^svG+mx8M8bKEG`p`;MD4)@|ilUbj$CECyj(+?FX6H>>)TmZmT#Rk%`&myA;{ zcZh+LadW{=n|QOnwNOaZkG+{|HrXq4?9B>g3YQL58Nruj|7GNe%yBHCujO|H{4_Rc z>&s59LW3t`h1F1`7@t{%1r2?Es3Z1(hj@SnSa>Ny&WHbog`1BI*KI65gm^l!EO5M5 ztsu#2;LCW1zqeV6xXt~}tK)-&*o*5rUfUlp+tVvHx_OeaRz)C%21ScnHQ*+n5{~6x z_MQ}|8ZW$U=^>u8$2Ak8t~_n3B}X%&jWpfn_voYP1OtMuS%GZ1n~Q#3v^^D@5AJcf zKWSm~QJREpER|M*|JWjWV5YnlsUYrHBQS9a+D+F#k*#v{Nz;59@)OL4C&7E4pJ1Wt zc)8ThN<r6cqS!h-d!-4exp#VDt@5;A<)0)xY9KQ^Q7>_~r}1T#QrE_sr4CO~W>?7h z5JnzZ{8BF~wSx&MD2nT`0b%!}NU{eF1v}|IreWAS#lZ~Nl;-+m_UHk%x9tb-%?!HR zCt$PA6b<<jhwMqvHaf=yOi13b=_L*QT*mWG4x<JkgC?$rjC2X#4_58ho)Q_6Y+giH zi_V74aP-AJ_)|<<9#0O=oC_C!K;G(^z#B}clg+mNryL=zW;rh<4}}x0mIq=GEMfaS zSG4B&$EIqq9xp<w?HtsHbx<-f7uW_;IZZ&$VSvQ6Dr2mfnP42Z**jN-ad|mmL5(2# zb_Pm%8oO7N{yF){6wOCtcd#R0&D~apo#Eh1@@P3-e-%IfL>%p_`fRTB7_l&OAv&6t zM6=G<_LI!D&jiDFg_VM88mev5{nT~`aXz>Ou-qxYIKu&U9p2%Bi=Q#ASu|uZAWl=y zch4gvJ0RKC1&dre>$AgT-M;6RGV^M~!;sfJJtpz7y<B^VTCi76zPcyD!}y#2;!$IC zPsgz?g%*ur1S;EgvsWfcaouXSH)|}GVb#Xxknb~^DRcQcY3(#CvWeU6M)2kXH2f0U z$ZfZQl6O*a_f;O$wQ!m>^xku5e@}UP0xFmGif-1a;^RwY-4Op$^dEMeOZm&LBYx4D zaxxbi^=@sXl`5OW7<YD3Mm8j`>nnzPX!7eMnRv)C80?4njLoD0RkD|bUdN6nPwuUS zAR2j32^nUig-Tjf`zPSLoZ7C|W4pXyl|<=J(!4==rIb2Aq?*f(j-h-$yhK7XQ++zj zd4*I76Wv8ot=Tip`pF_<Cat-r3(OS*o6(6jB|CE9X{o6jhilgu-necLd%dgU6&kNu z8G7Z)X<*kRv|HZ)cIraR`5Scs6Sp*36xf4(`qQeDo8P2;!LHI9MVHvA<eG(Ea&=R6 z6aH9A&muTKV&#-#o9=~IuS^O1WG0_NULqBa=T`h^M9Fg0d<ai|5!(g4WoUKoexdSJ zNu7qmh)>AG{wDUq9yXbW^_uUErfe8|C+~ebz&*3;<?@!Ib|bq^v=wQnq7{)ku{DP& ziiR0p`I}ASmdDymxq}@Ds_{xpmyo%$cbN2>u4*F|>n*!*=|+ccdF@=^34W^`DQ~Rg zCpTxqwa#|e>2UFiV)bi6{!#%|-|L5Vk+haq*lMT7=rQp`inEA}c`A!mq`XB1s;Th% z%Xt@g4GxpyS5`e0{J#%7Q(Q^Tz4mZY%>U6{R|RTwDI(2VdN)3_W@=zyRXgDYUJoVq zK+0$St}zv%R};j&@t&CY`4{X%>TaV+HLG_1x52~L<=#KksgUI^=;-BSKUBXeEQ7>} z*%aTn=GV&12aC~HAe*2z#$p~N*1e1p?e2VBBMu|{X3bOOExVOqY)k4cXv~F>avY>2 zK<v>b7bl~F`O~Bg{8Jbxna}=-N#`Qu8vZir{|gy8pQ@3>=2pTL^4Ha@sb39VrMy0Y zjuW$T->ah(djeIEte7fkArvNrf=i_d>mQ=>L9?ECZ`v_{J6>AGbay@I6KW~0W>leo z$5U+KPCA=z2q#H@oVUEUXYw8H_q{r80qNL|#jdE(2dJBD>g_LNh=`CM>^|?d^==^S zcs7S-bPW71h-9?ef&X?EB5)!@SJxkV=Ck3nzhz5hHOaSH@hH0ZOkymC?CWe|freR$ zUvMy6+Oi)dwae4Aln);(f^p5T$n;6?&*J!aG;)?BLCge-C2V?eU`h8T=}ipAa)*|P zVy6{HY0#}2U7N(SET{G7Wn~YlY4z?`riz?V1&l-rgf}oReBVW8c)^~gZ-k-oP&QwY zJ4q(6EQ9Dp`RM~(Wn;|5jnAviYMZ2^SF_D-c^8^~E0PO;%fEuo<kjo=flKGxaFAhJ z?#p<}`qUdzx9-yV#Ee>E9Bk^LvZj2zkId7Q60JmG(m8e;#Z3Cam)GTnyEBNsI!@w; zZn+)!DP9YT*P26gK9&!8i?{=0?)}O;cW%t8Xd2&kok-I}g>$?JvB5voca7ul^(d3Q zUo*nS_&il){I#+;Q9Yk0?iaV`x0li8T!c38Yx*vqNV8w<Zx~rILv1nR?C#-;8&b?E zrmUvTdnB#)Os0jFcR49gmbtbEh2MO~*G7B4_Tx|nDKZu@iaY<!ppo=U`?*VJNdqHB zP1Q2y4_Jb4y(%JY>|d{ajS%G-y3;HmputXNiDp#moL+1*zkZ4EGUMl!xBymsJWeBD z1W|7=KNln9rv5d?tm$~h0i}Tn6mUM}kx*ulF_56>RB*hT_$WZ1Gy53@_OliG%g-U6 zq=jK0a$nJ>S&FsY3GHWJiz&{hYbz8x(;P@A#&5VOYrTuqwHsc2(gY>!{LQ3oX?Mc^ z-K;~g0opMY9Xa`AzgO6keBc#N=q<HdYT@1TE{~(pa52HFr5@;d;T*=;!St_qAE}m< zA6U<tO!y|;nY>&Q=|u1e^7)Ll>G6WfrJ9>!%^FVcr2XHU#qj06LwtDM0Z~-0*>5`W zsi%N5E#0SOf6Ljq<+D!V#Hc-MWy;Y7!tRc|3>^hjZdER;2>k?0p)jbW?6s@bCnHo@ zLF8GKM*|vuS)Vv_)zo{uu-UWsy~iltk0QT+!7YAJkrnqnYS1h!6xkZj(wIX0xiV%s zA9w1Nmt=kzBVUX;qmLJs5TZ(!5va9L+1eSlf@EZ`Q|BITtoAJ;rWA*`pE%y0D@nXl zg-U)fEg&qV29++B?Jm_s-nJkvF`=%}k@x`qef)jH0Zcsvje-M(CVL6AZF#{y!qMzW z2A&Mv;?TS8*d{kz7;%zDT>Jc@){DmE4A5fe*M%hR6*$=}%-*hL-NUx9!}Yc?-V<v( zbz7XFplK>O;&8Q$-i)2?qETKcz>~UsyGkd0Pej!-UqqqiCYxmB>U#s?&9^g`#1#^o zj}M72-9X=aVYOP!<t4)N&LqeXI%DT5Y!FEDMooW(K=NCx*j%N>vh37tt5D5>!xr_g zC$N4tJAV)I9qVa{;o=QUgkiof0R|<_1v&MxXm0WjVn{Ksrw2BLsMvTt^V>$m#X~0x zYV{PWp3+k*p3-FYu>F&PQiYH^_iLd1g+zwgpc=flaO<nX<<R(T4y3*nj_=>Wo3N9R zL<YDrg=nt^J29Lb`8%EYJ#)*$>?nPqY06PI5a=^FD^2uC!A{Y>Ct9T@nWOq>rYG>p zK@dfR_#7DJC~~yBvHxZ^llX`(qB4h}3~4Ri{g5}6$C~0KXGQP&p0JyJRAiC+{$*1| z^NzX?m0bByQO`7;4<6-Psq61b4X|%)iW(Sfe$VMM!@TF$VLg%BMs;t}FZW5aO=DG? z86QD0e>gs(B80JZT?l132!rZCl0`p;TK3W!%Bsey_(}R}L;nLt8JfU@QS%p&{9SGf zH>xY6;p(a%j@}3ti8*LZW=rBHyS5i8sB!L5;gnxCMqOQ(o)bA5-eaaaSX9O#LEA-R zAy}%HLgqbl&o-39I(_(l`33cHzaB20`Vls|%8e(X!XFgtLUi-=oe27En2RImRMdPv zj!b4Z@r$d>(a>Fnon@h3j!TK`j1bzxu}qR6*$QdnZCrfiEY12o6$z)mh&O+6tE3JM z&HkY9s?Ugau$ub-sc6&9r|Elyi{cq(L6e8}T=rGof$vBl)W~b1JZN$iTI(f5pIl$` zVl|J%d?F_i$R65kxT;$2@K#GA*C_lkDjrAA9KT<5=R5RnNBknL*^c4za3dwyl{quM zwwpoiMFqhe3qjOo(Ti$x&A7u27#1l!h7{H-Ni9Yu0>P3JwRZ|`*o4TV@7%FZd*y%c zOjk0N){g*zV!u$$b8xELAkGHyW>M<1<~i5VxqX78LBuKk-Mi3j0$b@s6i+3Q0M!L7 zHFxQ!>JVT1TRMh$svKdjxl`A9C?TIoDw?oEI8}DtV1`3MyL90<c^VRHWY(O`de82t z-j-Fp>^I82vnA+PWn?*`mAFLXa4*@e-<f{1!X5R|Bbt^1Q=8LQUmV{fhV^d^I@-rA zH@WC_`7>=H2i%INM&OijB~()qZ1ucybTIGzq>Q)Xfz=aJ%&a07vzO1wvcLL$PeJG? z02_(FPma3Txm&&79whiClj}<D(7!vqwe@0*p7%>9)?9Xk14?bLl0y0S_hDoH1YvWy zh$v5PQ@^SI9<4KgL)mo8<`n<NioOl$^C&8>!G8XdS}rA#T`5{`imC~9OWeEY1Sw)A z&nV3A;H={Kvm}`pX54nlXjJopS`r%`Om%4#56wv(Bl14ZOs^x$9==aq(wF&)KTYPK z>!g6nkhP%W(;JS-!a7xZDayH+2X4$3MzZvCf<k?UrLhH}Ybn~JtZC3CZ!@0E<qFq8 zobL8-n-)mlZdxaxQP31GZV;x1rIgoYiN5DIR$-fshZUtH+S*Qh&iZbNy!V_k(HWV# z*NSc_udKZee=*+E)gDs+6$u$~SSJ`uPNwbonAqFGumkhBKv&i9^b%vsUV+B-%md{( zY21g&8xo1Kp=j4iyN`NTwa*k5Barnw#u@VLT1T<dJJwmJDskUEJaAgKS2OkI=q!%& z-dph_Ozt<B^$ifOQhM`tpwu3J*z>aid(;c_J=ms-_(YbUHAd*%VFFi2usA<iEXwGq zn;kBJkmfl4$TI6P^5ZCmp}0Hg<VHMxQnpL%YNtZd`8>92mf5;yOU>)t-14LrPLI!A zoJ)5DwJdW>Kdvv)v9@~H;4*}M&XE$k*D+UQE5f|KuTZkBDmF=<lyzm0w~;&S4ar!( zANsec{9L}W$yoMBYtmtr+l*NzI`uQqS;S*UpAeOIsj-<zsq4v?vWZ)H$qz$Q;<B8> zovu-Z-A!_8tm2hlsXD!ak)r0St)kaItURBACgiU;N@}4WY4OcW4}zX3hOQ>HtiHah zSP3XoH9{W4uP4D@!T$%p)o2z~o6O747BHjIYwZwze3uv9HA>7jY9nUk%x4;%**y3_ zRfI<C2p!8Uj?=o`Eesits>PvD{kZ-yRdtL{-UP~OdSM#xC5;`3)t?u(rnGx0fB$Mg zi)n6Pi}?nsMl&;R^pc?M!%ynMu`F+17$y70V{Ah5$FUL8RyzT8;@`~5BMm?NjXM=V zB+QV8G35je5tqcpW$Feor@psgoE`4*4ET=tAIS(D&8vK>x3`SpRuC+fa<I?c5t7QI z$pbGMQg#pMj;J0M)BNpefO4cG8JN8@bQuc`d!g^ZP>6boB4smQ<gG0~J`&n}2hrCP z6-8&S^us5(&OX-(D7`|xdc)s`J9oq~P86p9DZ&fuN$vu4l=8v8XtPny*p~0(_QSc` zR=TDQdo~h6;kU!0os?h+CHUp-`gu@lwS>8vjBgbiXYz;v+V}2tZA)L{Hh-${Bta({ z{f08v?m>pe`f)R3LZjjK_l&r2jkY?T2#SnY$A=4dtE1xN@VVF8G$(C3lG``&$Swt! ziskMLn<==+t|oMj7dyNzmF-)P^FF~<{J4>R!+_*q=`p{pb#2VtY~YdY(+t`%1>ID^ zX(r*Vb-oSvS+Xe0LRWmE3<U8>9*Yf5o;TeqEa@Hgq77HGV_*06Cr7Ai7wDls=DPpb zn-u$=94`v99LdMdn2JIoUMEz(O!oe?jj6GZAEhXr;|cJc+Dk?rv<Y3-p5mb8YaV_| zzlVL(;qA*tL?&f%!a;W;L7`#rBMe9rLf-wqW|aK4u(+W|YU{&I6h?E}Dpa84irFS4 zy0RuL>x&vb?DL`B2alNb9SQ??b%CyXq41)L?=0er?}w*dC1!>NdUf_?cBZ-&OtL86 zybKZwth!g&HGE{sR$f1RLrS~X;_(%y-3Kh41!?!+{O#+Et}YB{gmda2))~`C6Tb01 z3YT<xbirT=ID2`o!~9La$9S5Lbq`F^#aB!2BxssE5hSTXprQXLZlc&yPkECsV$(^y z{Eof&<N2gM;M;tIv*y}yxE*rsOdzeM<`kmk7GGKmUuUrGg<Ps7O7J1ibYFWGf&AM# z1Mb_j*YEV?;y*D}xOLh7<)fzw7KWba4*7*V1wnzn?`N4Z$EVEdwb*QSIG=Yj_l|L4 z_+}ooa!sa$j<aCt$1iz4l@{n(vv?#JqcU^6qA=&)<*RQ~pYon1(!-74CKJ7OV6ru= z=D~EUBm(kW$F|Pf{0Q`tJEsO#Zf__#$J<TYHlu68o0Oz7PUb~s5b-9;WY`VOs!kc{ zTtkSLrJ}N^+zUF|mK6%=dftl?j#0MVLzd1(x7gwcjJkB#RLz^oag~0#QK`}}U8>}G zhUpFIa`*lI{_tmB)`CW)3uNQ9bRlmnJ%!JXc#R?}h?P~x?iFewt|VrsSaMn?;btPr zPfaO&Qgq*X;3d}7b(j?v%$q&jNd%iUXZJ0}<Wd*7vwxkIlm}N*7fZ{TcdIO0i+(8w zM(2xPA;^h76Fv>bKm$VF+h1eguUj*i;WO^6mWqh=&8qN}v`jt`r)*-1_winMj2fD~ z$mnB*%*We}qgnpVEedQ)WTw@OQDA}5h7k+vn=@5~>0<hK*dLS@DOQo^gt5lO`f7AH z1UCFwYD*4-5pa$6YvJF#av*aguqgCaj{SY*u!FGvu9_$K#%3HMv2Im)R}bM4M)-#k zi9kFZhleA=mZKJq&wA{bOdV<HkrS-GVvM_DW$oY#Zv<+#v)>9QAI0h#m`oAO8$^pV zz)rS1+sqwiM!389VCeT}g@@^VI{sGmK!#h}A;$5UCd<O5Ee~l|M*TRi5gqfQxk|CW z8I%$?%j-JaA>9^unT|e2a32LxX~^ORosJ=9w5mI;_Tqg>9)e3=r?|6DbTU2M+bW+l z1~|tk7bFSwUGY=*`d69~O~WZ#uRi=Z_o{D<za{2dexODcWFqW(+p&{HhbA;_w?N)F zxsv5|FYmRZ-6`ILLDQwpz)<AG>}xWuD<3q!bL`%sz3<>b@;Hut{!shy77k;}lTXhN z5Ou7sXrsn5^sTX<+CN4oyP|OIK0lO!eOV7pU*zyeddN__-FAx}DdQy)cd=!VFY)`i zzS(C<EJcrabUM0O${xfamNYL(6BQ6JfmeSyrcSbkTR)m<#lJ<V_CbeIWlSd_1^Kqz zHR1;2uIPDcp1S+-*E`JFzK}c>O06@d{0C}Of{?fN%i#YCYSdwW)Z{ahD)#Eib<Fw7 zYcD^q%VvI^cudT9YYxR~Si4Z)VCgf-{Q6{z$ae-ySrJG<%;8}5-6+xP^b%#PcF}QZ ztP@J?nI<UJuK%!4;VSJx<=@YV%*xRJLp-EEXL*~e_|EODdI;Eqma@rTvd20g+?@-} zh8dS4O0}5|1Fo8GO46!7Ybu>_uzTZSGvPVJ#*cOLp?yUPw#XbAo|4<=%TG^~9P(-- zWzf0XHz_`y5Mzum;>gNKb6heqJ`q!t**+<}Y2dsPEPX&sJbh)su-G?XH=Z>Ss<YzQ z!O=1<+edK^b5D|{JL=gZ-$%*UpVxj%$gOG%Z_;>aOI9dcd8~%oL|CC=6!z{>&!Em7 zm7qRJ$+&uGGaIti-6s^W0c?IIXL=@C4vI}Z47n>`it)7UVJJ4z#-gDP&9{%UPT98z zn>g^z7H37XEl1R3_j>E`Xb(5ql$;fvH4PXYmI-L1ip9n?U%R32hg|BV%_4K+;iBrA zPuRE0urt<NGNYy7q5zY68A3kWUt{CH6B|y6#WWn=B_hTfM@HI7FIsx*X5^lR)n3(; z9%UsUslMM1eO4yZ^khvJ9j0%;Z#fV?4l!VZY@zc$qK>!ER-vFP#bv7(^*X@||MqEW z2A^37zAui2_OS79Co`QEd6fStPE&fiJal7q2Bu@mX*}KCN0hol)Cmsd5(AeU-0WhO zV@Is<<=9(|Un=g26Uk<}>o~;kpU~tqN{3~<(LpMC_M*sxqFs{UlS_N*cY>)LTl$Dz zv%#8oybUNm&KSOt(7|9NZS4j;wTP3)td~d<-A$l%ZT^+$Raz@4GqsD)nZ#PESsrO@ zWfLb=#)WI8(W2_x4L6d1H*jGZeK#;NAmx-c?2-wiEG!8m%yAUW|I&36=AGmk4E+~o z?zlwv(Vmk@-!lmx({FyDpf#?<e?DCE?b-9%Yhv=qaaENOoJmzL2L00QiME;ON#Aa~ z?aS_N?YoO;QkGpbCJ~=?BXc}=*Zy+jM=bpfr}*7JZ$zs=$hZAv=YK7EQ6;-VNs-X> zAf0>dLsUy|7}b%IZCwVrk^v!J67vQs?(>~>56DpE+Sb${n**ubvV=tC7YRM7?V+dy zPdTLgtj;S|Z}?{p`emu_t((&TOJ|}z>iC;U%Vkp@^#2HVr_qRWD)#LFTy*74sPR~o z;{8a^8!v2cjq{voF~wj!3LKRlq`|Y}N*Hpd#mrFI$AK!ipW<mu)5-Mtu?|l3=+5CD zo?H3ez*|6BBAP^?{~asuPx@iy66w_}Ng9Ky#0iTNHCF@UQ1zdxEt2nhl63AD?Q!4e zcT<TF3PdjGAByFfVW`Q$_K`9$d)`$YtmtrszIQ7WYEEaojy~TCwp&skf1nhM7#px* z3{Lt$i{e78tT}H+Z8q(6rZsZb_6eo%MsdxQtn}sheZs*#476o@WjUHZOy<m^C%Mj@ zi*I{Y%2|YFPS)7{M<piy>vqcmg#4mkR{j?;md1zS_jKd-HXazD#$n0VHh6a|&7$WO z7RA@^`Iw9k@uC*j<2bxePo34hE=6iZV@$b-A(5>f?;-EnHJaohZ2unn==hZSck8}N zdpz*>vlT7QhW`)`jyv4I{pzH$?2(BZWrjv?lZ0z}NjnGRE3xB$r+fakT|=9b^mSAn zp1&#!*kab%ocg5(wkumY&!#fbK655v65HY9(RVl^GV2j-Js-)(t;p-Tcrab4n9AWG zF2Lz+iA6Gt=^zre@Z<+0=dCQPKp?sH{RIV_kuQ(--$@b+plX)3n}htA#S_#K$WJ1g z9xGLKbtl|aeXGIyZdxJw(uzDe8q%%&FP$wLh&l^w(oFnNe6vFt^ipWiLu3bI(sF3n zck9r^cgenJ1hSpQxN*lbeF~T-x6}B$p)9M(hc%76$c=KZUIn3DEl^RQBMx^(p@|fG zmb99%np-QsFu*AB0@=6d((N7S+GX;12_>#&<9XrePX5&i+3D82z8-NtQ@)>UW%sYK z@4uL>T%-Lq{<pK0t}c#<|1j5!G1_a_BFjD;_p%HYNre5!E!;oYN_mDgzUFsh&O1!- zd0b7Hwd&VAKBUfyFwv&N|MbM<3dW}3obqYVhDJrCZ2hNi$XZy?lSEIY*~Awnh@Lv$ zA;I%U9!yA5O9pYQUCyw4A9jsnb3R-Cw4SbTD8-S;dY7G&zI+GEB!w?K--G8XwZ%{l ziZa!&yMq&U20M)sO!%i$ml6=zzd`n1^WVZ7J-epf_hTM6fL@E)-ulBlF2e8Kilv@K zZc39f!o=wB@^zJBAx>dm>E!N=%Cmd)y}hkL!Ta(rLmkO|if{50SeuMBS<)<Fa$Lm} zlnz2O{u(_`H_F9(lQre;K<lyxOQhrb;)tdoy~J2QyAHr@Ar%M(+`r8H|1+|}KzlO% zH<J}Ihl;oVNgkF13^Z3{;#$9nB)Oe|psaCp10?+<eTHKS6mm(|<!Kmy2Aq<ouTot3 zMadJ<b<;~?t8Vh}2M03MZiYy#q^kJ}bYA)9u@2Q|mDzFL7J2qiB^YDd43XzX)WUiK zoROQBTz&tt8Zh#oT;&E^x}+TgwPYIo53cgc4R93=)ek4PT&@y#rA+rdf2$nvxRRh- z7{4+0BfE?7UdO!olSulZOveZ)qpi<Yka|Oyw+tigb0gBT(eagu_Sz%9Sn0ZO&%Rn6 zF};WkF5iUWhI%+5C$ckyxm1P+zvdodNWbUZo<$n=j`*5Kwqthj_Kg_PXxX=_<LjzJ zwSMmH(u-6rYt=;VUMt*7!g^OJNTaJJ0%fqD0vj(tC~)~@<Ntq974~9lTib`A=~mVc z%}oJ9rcKmaL3{^+kbq$;sSiN_zdwhc_!a&k0fc`_i~h>@&k+#<!A@~<FtP-v^_?t# zTod>AYyPSYT=&o6PuKaC^H(-eaDY4nevJLIq@<IPof8ldnpnZi;CcRVj?m7*_P@wr zHvdIN4>NUg1Vt%eR*vwx-~qJaN837nULQ-`+SI}b$Z4!i|C#=z=rvk@l;bovwQ_(T zS({rqJhU){8QIx^AE*BecoMb_Fd79IsES4toU?^MFjuTCY~YO~d}#fnVgv}-4F>;! z!1t>%Q&5?am4)LUD<k<sWs*itMl`ZUHl|iE_{Hf>f7VH1>hM!3Kn7PUHoT6X$C&nx zPR8(tWjH!HngWCec%BzV4^23Kr2e7HL4QIJfpUS`Wx*jl!UF<|EISv^&7X;X`b~Ov z2IS13RtW?J2+i3H1j+<3=N=Q1E!0sN5AU+5Hv)LA_=b=-$cJxYYvo{LVr2r_0{{FB zq>fHMItZSE%Zfk*ZAOVT`CSf|{mKtV_&p(<ot-6|%P-RZyYvCN^+$hS^y@{xUX1tu ztoe?{#L?<Le1L*rdOiok$0-O>^x%sEJagdBA$ULn5#E2dKy(AK&e7BfzK(#<;F12% zKmQMf|Hnl^o0-9lnZO$l0{n>yzcHb6gx@It&tt@Kkk1_){|eyY<+=}U85!sUlp_TX zR0KFV@CO+-fGi0hP#A(Uz}o-?0K)mt8i?>maTAD=AZCCl1!B%QzCOpab9{M@!RH8P zgz$3k`r+l^+eP3A-&_SpIGK<DvHConcaG)f_$z<$dHUD&-kzsZ&N22JBYz?;D?oJ! z#0O9Vq$zOh2XG7^s0Y0hAdq2i0elbmTp2(hL!1Pd3s4y#xF1AffGOt)+K&kTjT1ag z2oRpeK2M|kOe1{znMT+=Px}A_?Ly!KC=C!q$Q^)-02Ki~2dD}#1fUeaVSs7?rvbvx z!_z7N;q8Z~yUx>aIXvC^GmSwC5M1XC$ctqR<YW*C2K+v#LH~XS2>KEa*bL%z2!sge z7wH%Rp?(bRn-MT`pf6;gE5a0T9u>T*3Y0+<0`+i!dW6BhJc9T429VVQ>;WhTumT_p zz)FBL=SU8)5Tq#qg1$p^1Xu?Mlmb9d7SSAF8$c0&Edbd8!s}rJSOpNY4N?OTUT?`C z<nVlO`PH9t_`o&+cKahBK_H@_nIIy92!TXe!<>u&Uin38;X-TEA2Rsi?}5(}<_2#e zJitc~Gd!1xtu;HG{=(Spoh?i(oh+<j>~<EeFe_7-jiZGVeCpt^_{ray&&$!60$L1? zsXzqb*UA9V0#ut11nAB`u8s#WbAZ8qWV!gd(7=TTE;MkVfeQ^>Xy8Hv7aF+Gz=Z}b zG;pDT3k_Uo;D4zGpf>+)&qU%MJQK)39pJBl|J*ZSZDa}eDA4}P^R}iiE0BTyUuAH# zHFI(?a)4LzFWny|4lpAp3tJoD=78tRI(L7-ojh>23DLRx13^QL=$#ncbpnLItMtP& zN%hB*3PvX4wziha4z`@UtehYR@Hzc(%+micm$i|Jk{S)?4R$VeP8wz|E=e9fxZel( zq9AZxF#j<x7YEl3HjbNYoV@Cs+ydO(0yp_Uk^|(u@U{S5U4#n_Txj4z0~Z>&(7=TT wE;MkVfeQ^>Xy8Hv7aF+G!2fm)FrV+XpmB15xt`xF++6{Wrtp1G2;k`d0LDWGApigX literal 0 HcmV?d00001 diff --git a/video/out-of-order.mov b/video/out-of-order.mov new file mode 100644 index 0000000000000000000000000000000000000000..0bb964c4eda68afa74a4cc47edd88e57d697107d GIT binary patch literal 267043 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 &=E-OEc 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 YU7Soke%~y_T>*)}W-SLcFmUvL0K3@<$N&HU literal 0 HcmV?d00001