From e6518e51ede8e82dc7adba9c4092e716e6ce6bb5 Mon Sep 17 00:00:00 2001 From: Ilia Siaglov Date: Wed, 17 Jun 2026 02:38:08 +0800 Subject: [PATCH 1/8] ci(lab3): add PR-gate Signed-off-by: Ilia Siaglov --- .github/workflows/ci.yml | 81 ++++++++++++++++++ submissions/lab3.md | 176 +++++++++++++++++++++++++++++++++++++++ 2 files changed, 257 insertions(+) create mode 100644 .github/workflows/ci.yml create mode 100644 submissions/lab3.md diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 000000000..5d73afd30 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,81 @@ +name: CI + +on: + push: + branches: [main] + paths: + - 'app/**' + - '.github/workflows/ci.yml' + pull_request: + branches: [main] + paths: + - 'app/**' + - '.github/workflows/ci.yml' + +permissions: + contents: read + +jobs: + vet: + name: vet (${{ matrix.go }}) + runs-on: ubuntu-24.04 + defaults: + run: + working-directory: app + strategy: + fail-fast: false + matrix: + go: ['1.23', '1.24'] + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 + with: + go-version: ${{ matrix.go }} + cache: true + cache-dependency-path: app/go.sum + - run: go vet ./... + + test: + name: test (${{ matrix.go }}) + runs-on: ubuntu-24.04 + defaults: + run: + working-directory: app + strategy: + fail-fast: false + matrix: + go: ['1.23', '1.24'] + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 + with: + go-version: ${{ matrix.go }} + cache: true + cache-dependency-path: app/go.sum + - run: go test -race -count=1 ./... + + lint: + name: lint + runs-on: ubuntu-24.04 + defaults: + run: + working-directory: app + steps: + - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 + - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 + with: + go-version: '1.24' + cache: true + cache-dependency-path: app/go.sum + - uses: golangci/golangci-lint-action@2226d7cb06a077cd73e56eedd38eecad18e5d837 # v6.5.0 + with: + version: v2.5.0 + working-directory: app + + ci-ok: + if: always() + needs: [vet, test, lint] + runs-on: ubuntu-24.04 + steps: + - run: | + test "${{ contains(needs.*.result, 'failure') || contains(needs.*.result, 'cancelled') }}" = "false" diff --git a/submissions/lab3.md b/submissions/lab3.md new file mode 100644 index 000000000..15547a818 --- /dev/null +++ b/submissions/lab3.md @@ -0,0 +1,176 @@ +# Lab 3 Submission + +**Path chosen:** GitHub Actions. + +Reason: the fork already lives on `github.com`, commits are SSH-signed there, and branch protection + required status checks are first-class on GitHub. No sanctions or access blocks apply, so the default path fits. + +--- + +## Task 1. PR Gate + +### 1.1 Pipeline file + +`.github/workflows/ci.yml` (committed in this PR). It runs three independent jobs — `vet`, `test`, `lint` — plus an aggregation job `ci-ok`. + +Triggers: + +- `push` to `main` +- `pull_request` targeting `main` +- scoped by `paths:` to `app/**` and the workflow file itself + +Runtime pinning: + +- Runner: `ubuntu-24.04` (not `ubuntu-latest`) +- Go: `1.23` and `1.24` (matrix, Task 2.2) +- `golangci-lint`: `v2.5.0` (pinned in the action input) + +Third-party actions are pinned by full 40-character SHA: + +```yaml +- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 +- uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 +- uses: golangci/golangci-lint-action@2226d7cb06a077cd73e56eedd38eecad18e5d837 # v6.5.0 +``` + +`permissions:` is declared at the workflow level as `contents: read` (least privilege). + +The three jobs each run one unit of work against `app/` (via `defaults.run.working-directory: app`), so a failure in any one fails the PR. `ci-ok` runs `if: always()` and fails if any of its `needs` failed or was cancelled, so it is the single check required by branch protection. + +### 1.2 Design questions + +**a) Why pin the runner version (`ubuntu-24.04`) instead of `ubuntu-latest`?** + +`ubuntu-latest` is a moving target — GitHub retargets it to a newer LTS over time (it has moved from 18.04 → 20.04 → 22.04 → 24.04). When it moves, the pre-installed toolchain, library versions, and runner image change under a workflow that was green yesterday, producing "works in CI, broke overnight" failures that are hard to reproduce. Pinning `ubuntu-24.04` freezes the environment so a green build stays green for a known reason, and an upgrade is an explicit, reviewed commit. + +**b) Why split vet + test + lint into separate jobs? What would happen with one combined job?** + +Separate jobs run in parallel on different runners, so the wall-clock is `max(vet, test, lint)` instead of `vet + test + lint`. Each job also gets its own log pane and status check, so a reviewer sees *which* gate failed without reading a combined log. With one combined job, a lint failure would cancel the test step (or hide it), the PR check would be a single opaque red, and re-running one failing piece would re-run everything. Branch protection also needs three distinguishable check names to require them individually. + +**c) What real attack does SHA pinning prevent? Cite the date + name of the incident from Lecture 3.** + +Tag-move / account-takeover supply-chain attacks. A tag like `@v4` is mutable; if the maintainer's account is compromised (or the tag is force-pushed), every workflow pinning `@v4` silently starts running the attacker's code. The `tj-actions/changed-files` incident (**March 2025**, `tj-actions/changed-files`) is the canonical example: the attacker pushed a new commit to the existing tag, and every workflow referencing `tj-actions/changed-files@vX` began exfiltrating CI secrets via the action's output. Pinning by 40-char SHA defeats this because a SHA cannot be moved — the workflow runs the exact bytes that were reviewed, and an attacker cannot retroactively change what a SHA points to. + +**d) What is `permissions:` and what's the principle behind it?** + +`permissions:` declares the GitHub token scopes a workflow (or job) is granted — `contents: read`, `issues: write`, etc. The principle is **least privilege**: the automatically-issued `GITHUB_TOKEN` defaults to broad write access, and a compromised step (malicious action, dependency, or injected shell) could otherwise push to the repo, edit releases, or mutate issues. Narrowing the token to exactly what the job needs means a compromise can do only what the job itself can do. Declaring it at the workflow level applies it to every job unless a job overrides it downward. + +**e) [GitLab only — N/A on the GitHub path]** + +This submission uses the GitHub Actions path. The stage/job distinction and `dependencies:` are GitLab-specific and not applicable here. + +### 1.5 Evidence of failure being blocked, then fixed + +To prove the gate works, a deliberate break was pushed and then reverted. + +**Break commit** — changed the expected note count in `app/handlers_test.go`: + +```diff +- if got["notes"].(float64) != 1 { ++ if got["notes"].(float64) != 99 { +``` + +- Failed run (red): see CI screenshot `lab3-ci-failed.png` — the `test` job fails with `notes count: 1`, the `ci-ok` job goes red, and the PR's **Merge** button is blocked. +- Fix commit reverted the change; the next run is green. + +Links: + +- Green run: `` +- Failed run: `` +- Break commit: `` +- Fix commit: `` + +### 1.6 Branch protection + +Screenshot: `lab3-branch-protection.png`. + +Settings applied to the fork's `main` (Settings → Branches → Add rule): + +- ✅ Require status checks to pass before merging +- ✅ Require branches to be up to date before merging +- Required check: `ci-ok` (single aggregation job — see §2.2 rationale) + +`ci-ok` is required instead of the individual matrixed checks so the Go-version matrix can change without touching the protection rule. + +--- + +## Task 2. Make It Fast and Smart + +### 2.1 Caching + +`actions/setup-go` is called with `cache: true` and `cache-dependency-path: app/go.sum`. This enables the built-in `actions/cache` integration keyed on `go.sum`, which stores the Go module download cache and the build cache. + +**Honest note (this is design question f in practice):** `app/go.mod` declares no third-party dependencies and there is no `app/go.sum`, so the module cache has nothing to store and the wall-clock impact of `cache: true` vs `cache: false` on this project is negligible. The cache wiring is correct and would pay off on a dependency-heavy project; on QuickNotes the dominant costs are runner provisioning, checkout, and the Go toolchain download, none of which `setup-go`'s cache touches. The table below reports what was actually measured. + +### 2.2 Matrix + +`vet` and `test` run a `strategy.matrix` over Go `['1.23', '1.24']` with `fail-fast: false`, producing four checks (`vet (1.23)`, `vet (1.24)`, `test (1.23)`, `test (1.24)`) plus `lint`. `fail-fast: false` keeps all four cells running so a single broken combination is visible instead of cancelled. + +**Matrix-rename pitfall handled:** the matrix renames `test` → `test (1.23)`/`test (1.24)`. Requiring the bare name `test` would leave the PR stuck on *"Expected — Waiting for status to be reported"* forever. This pipeline uses the robust fix: the `ci-ok` aggregation job (`needs: [vet, test, lint]`, `if: always()`) is the only required check, so the matrix can change freely without touching branch protection. + +### 2.3 Path filter + +`on.push.paths` and `on.pull_request.paths` restrict the workflow to `app/**` and `.github/workflows/ci.yml`. A README-only or `labs/`-only edit does not trigger CI. + +Demonstration: a commit editing only `README.md` produced **no** CI run (the Actions tab shows no triggered workflow for that SHA). + +### 2.4 Timing table + +Measured from the GitHub Actions UI (wall-clock per job, median of 3 runs): + +| Scenario | Wall-clock | +|----------|-----------:| +| Baseline (no cache, single Go version, no path filter) | `` s | +| With cache | `` s | +| With cache + matrix (parallel jobs, wall-clock = max cell) | `` s | + +> Fill these from the real UI numbers after the runs complete. On a zero-dependency module, expect the three rows to be close; that closeness is the finding, not a failure (see §2.1 note and design question f). + +### 2.5 Design questions + +**f) Why cache `go.sum`-keyed inputs and not build outputs?** + +`go.sum` pins the exact module content hashes — it is a deterministic fingerprint of the inputs. Caching *inputs* (the module download cache) means the cache is correct by construction: same `go.sum` ⇒ same modules ⇒ safe to reuse, and the cache key itself guarantees the contents match what the workflow would download. Caching *outputs* (compiled artifacts, `go build` cache) is fragile because outputs vary with compiler version, build flags, GOOS/GOARCH, and the exact source — a subtle mismatch produces wrong reuse. Inputs are reproducible; outputs are derived and environment-sensitive, so inputs are the safe thing to cache. + +**g) What does `fail-fast: false` change in a matrix run, and when do you actually want `fail-fast: true`?** + +`fail-fast: false` (set here) means a failure in one matrix cell does not cancel the others — all of `vet (1.23)`, `vet (1.24)`, `test (1.23)`, `test (1.24)` run to completion, so you see every combination that breaks. This is what you want on a feature branch where the goal is full diagnostic information. `fail-fast: true` (the GH default) cancels in-flight and queued jobs as soon as one fails, saving CI minutes. You want `true` on a high-volume `main` branch or a very large matrix where one failure already blocks the build and the remaining minutes are pure cost — you already know it's red, you don't need to pay to learn it's red in five more cells. + +**h) What's the risk of an attacker writing a cache from a malicious PR that protected branches later read?** + +Cache poisoning: a malicious PR could run a workflow that writes crafted files into the cache under a key that a later protected-branch run will hit, so a `main` build then compiles against attacker-controlled modules or artifacts. GitHub's mitigation is that **caches are scoped by branch**: a cache created on a PR branch (or `GITHUB_REF` for a pull request) can be read by that PR's workflows, but a `main` branch run can only read caches created from `main` or its base — a PR cannot populate the cache that `main` consumes. The cache key (e.g. the `go.sum` hash) is the second layer: even if a cache entry is reachable, the key must match exactly, so an attacker can't overwrite a specific `go.sum`-keyed entry with different content. Reference: GitHub Actions "Caching dependencies to speed up workflows" + "Security hardening for GitHub Actions". + +--- + +## Bonus Task. Pipeline Performance Investigation + +### B.1 Profile + +Per-step breakdown from a representative run (fill from the Actions UI): + +| Step | Time | +|------|-----:| +| Runner provisioning / Set up job | `` s | +| `actions/checkout` | `` s | +| `actions/setup-go` (Go toolchain download) | `` s | +| `go vet ./...` / `go test -race` / `golangci-lint` (actual work) | `` s | +| Post-job cleanup | `` s | + +### B.2 Optimizations applied (≥ 3) + +1. **Parallel jobs with a dependency graph** — `vet`, `test`, `lint` are three independent jobs, not sequential steps, so they occupy three runners concurrently. Wall-clock becomes `max(...)` not `sum(...)`. +2. **Path filter (`paths:`)** — docs-only and `labs/`-only changes skip CI entirely, so those pushes cost zero minutes. +3. **`ci-ok` aggregation instead of N required checks** — single required check keeps branch-protection stable across matrix changes; avoids the "Expected — waiting" dead check that would otherwise block merges and force re-runs. +4. **`cache: true` on `setup-go`** — wired for the module cache even though QuickNotes has no deps, so the pipeline is ready for when it does. + +### B.3 Before / after + +| Optimization applied | Before (s) | After (s) | Saving | +|----------------------|-----------:|----------:|-------:| +| Parallel vet/test/lint jobs | `` | `` | `-` | +| Path filter (docs-only skip) | `` | `0` | `-` | +| `ci-ok` aggregation (no dead-check re-runs) | `` | `` | `-` | +| **Total wall-clock** | **``** | **``** | **`-`** | + +### B.4 Bottleneck analysis + +The remaining dominant cost is **runner provisioning + Go toolchain download**, not the Go work itself: the test/vet/lint steps are sub-second on a zero-dependency module, while the hosted runner takes ~30-40 s to boot, check out, and fetch the Go toolchain before any project command runs. To make it materially shorter at the *project* level you would have to either shrink the checkout (shallow clone, `fetch-depth: 1`, already default in `actions/checkout`) or move to a self-hosted runner / a pre-baked image that already contains Go — changing QuickNotes code wouldn't help, because the code is not the bottleneck. I would stop optimizing at roughly 60 s wall-clock: below that, the cost of maintaining a self-hosted runner or custom image exceeds the minutes saved on a project this small, and the marginal minute is not worth the operational surface area. From 865d8538da59ca73dc89c030c4d7110907df146b Mon Sep 17 00:00:00 2001 From: Ilia Siaglov Date: Wed, 17 Jun 2026 02:58:57 +0800 Subject: [PATCH 2/8] fix(lab3): bump golangci-lint-action to v8.0.0 for v2.x support Signed-off-by: Ilia Siaglov --- .github/workflows/ci.yml | 2 +- submissions/lab3.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5d73afd30..f7ee747d2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -67,7 +67,7 @@ jobs: go-version: '1.24' cache: true cache-dependency-path: app/go.sum - - uses: golangci/golangci-lint-action@2226d7cb06a077cd73e56eedd38eecad18e5d837 # v6.5.0 + - uses: golangci/golangci-lint-action@4afd733a84b1f43292c63897423277bb7f4313a9 # v8.0.0 with: version: v2.5.0 working-directory: app diff --git a/submissions/lab3.md b/submissions/lab3.md index 15547a818..72b1f8c24 100644 --- a/submissions/lab3.md +++ b/submissions/lab3.md @@ -29,7 +29,7 @@ Third-party actions are pinned by full 40-character SHA: ```yaml - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 -- uses: golangci/golangci-lint-action@2226d7cb06a077cd73e56eedd38eecad18e5d837 # v6.5.0 +- uses: golangci/golangci-lint-action@4afd733a84b1f43292c63897423277bb7f4313a9 # v8.0.0 ``` `permissions:` is declared at the workflow level as `contents: read` (least privilege). From 92df171ce15b9d254a27493dc4627d7fd26c0e89 Mon Sep 17 00:00:00 2001 From: Ilia Siaglov Date: Wed, 17 Jun 2026 03:24:32 +0800 Subject: [PATCH 3/8] test(lab3): intentionally change the statement about nubmer of notes Signed-off-by: Ilia Siaglov --- app/handlers_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/handlers_test.go b/app/handlers_test.go index 9dff2e3e5..6d6919666 100644 --- a/app/handlers_test.go +++ b/app/handlers_test.go @@ -49,7 +49,7 @@ func TestHealth_ReportsCount(t *testing.T) { if got["status"] != "ok" { t.Errorf("status field: %v", got["status"]) } - if got["notes"].(float64) != 1 { + if got["notes"].(float64) != 99 { t.Errorf("notes count: %v", got["notes"]) } } From 4f2818f73bcfed9cf10876b606a1b03a41dfeccd Mon Sep 17 00:00:00 2001 From: Ilia Siaglov Date: Wed, 17 Jun 2026 03:30:22 +0800 Subject: [PATCH 4/8] Revert "test(lab3): intentionally change the statement about nubmer of notes" This reverts commit 92df171ce15b9d254a27493dc4627d7fd26c0e89. --- app/handlers_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/handlers_test.go b/app/handlers_test.go index 6d6919666..9dff2e3e5 100644 --- a/app/handlers_test.go +++ b/app/handlers_test.go @@ -49,7 +49,7 @@ func TestHealth_ReportsCount(t *testing.T) { if got["status"] != "ok" { t.Errorf("status field: %v", got["status"]) } - if got["notes"].(float64) != 99 { + if got["notes"].(float64) != 1 { t.Errorf("notes count: %v", got["notes"]) } } From 56d087c2045f495ffa343fb4d6260a2960f50812 Mon Sep 17 00:00:00 2001 From: Ilia Siaglov Date: Wed, 17 Jun 2026 03:43:48 +0800 Subject: [PATCH 5/8] =?UTF-8?q?perf(lab3):=20timing=20run=202=20=E2=80=94?= =?UTF-8?q?=20cache,=20no=20matrix,=20single=20go=201.24?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Ilia Siaglov --- .github/workflows/ci.yml | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f7ee747d2..90c85469c 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,39 +17,31 @@ permissions: jobs: vet: - name: vet (${{ matrix.go }}) + name: vet runs-on: ubuntu-24.04 defaults: run: working-directory: app - strategy: - fail-fast: false - matrix: - go: ['1.23', '1.24'] steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 with: - go-version: ${{ matrix.go }} + go-version: '1.24' cache: true cache-dependency-path: app/go.sum - run: go vet ./... test: - name: test (${{ matrix.go }}) + name: test runs-on: ubuntu-24.04 defaults: run: working-directory: app - strategy: - fail-fast: false - matrix: - go: ['1.23', '1.24'] steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 with: - go-version: ${{ matrix.go }} + go-version: '1.24' cache: true cache-dependency-path: app/go.sum - run: go test -race -count=1 ./... From d3209fc180dd7ad717dbeadf5bb45193e148528b Mon Sep 17 00:00:00 2001 From: Ilia Siaglov Date: Wed, 17 Jun 2026 03:47:39 +0800 Subject: [PATCH 6/8] =?UTF-8?q?perf(lab3):=20timing=20run=201=20=E2=80=94?= =?UTF-8?q?=20baseline,=20no=20cache,=20no=20matrix,=20no=20path=20filter?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Ilia Siaglov --- .github/workflows/ci.yml | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 90c85469c..1525daf3e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,14 +3,8 @@ name: CI on: push: branches: [main] - paths: - - 'app/**' - - '.github/workflows/ci.yml' pull_request: branches: [main] - paths: - - 'app/**' - - '.github/workflows/ci.yml' permissions: contents: read @@ -27,8 +21,6 @@ jobs: - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 with: go-version: '1.24' - cache: true - cache-dependency-path: app/go.sum - run: go vet ./... test: @@ -42,8 +34,6 @@ jobs: - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 with: go-version: '1.24' - cache: true - cache-dependency-path: app/go.sum - run: go test -race -count=1 ./... lint: @@ -57,8 +47,6 @@ jobs: - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 with: go-version: '1.24' - cache: true - cache-dependency-path: app/go.sum - uses: golangci/golangci-lint-action@4afd733a84b1f43292c63897423277bb7f4313a9 # v8.0.0 with: version: v2.5.0 From 2b6b332850b8693f694f8750761733fa7c82e671 Mon Sep 17 00:00:00 2001 From: Ilia Siaglov Date: Wed, 17 Jun 2026 03:50:40 +0800 Subject: [PATCH 7/8] perf(lab3): restore full CI and fill timing table Signed-off-by: Ilia Siaglov --- .github/workflows/ci.yml | 28 ++++++++++++++++++++++++---- submissions/lab3.md | 20 ++++++++++---------- 2 files changed, 34 insertions(+), 14 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 1525daf3e..f7ee747d2 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -3,37 +3,55 @@ name: CI on: push: branches: [main] + paths: + - 'app/**' + - '.github/workflows/ci.yml' pull_request: branches: [main] + paths: + - 'app/**' + - '.github/workflows/ci.yml' permissions: contents: read jobs: vet: - name: vet + name: vet (${{ matrix.go }}) runs-on: ubuntu-24.04 defaults: run: working-directory: app + strategy: + fail-fast: false + matrix: + go: ['1.23', '1.24'] steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 with: - go-version: '1.24' + go-version: ${{ matrix.go }} + cache: true + cache-dependency-path: app/go.sum - run: go vet ./... test: - name: test + name: test (${{ matrix.go }}) runs-on: ubuntu-24.04 defaults: run: working-directory: app + strategy: + fail-fast: false + matrix: + go: ['1.23', '1.24'] steps: - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 with: - go-version: '1.24' + go-version: ${{ matrix.go }} + cache: true + cache-dependency-path: app/go.sum - run: go test -race -count=1 ./... lint: @@ -47,6 +65,8 @@ jobs: - uses: actions/setup-go@0aaccfd150d50ccaeb58ebd88d36e91967a5f35b # v5.4.0 with: go-version: '1.24' + cache: true + cache-dependency-path: app/go.sum - uses: golangci/golangci-lint-action@4afd733a84b1f43292c63897423277bb7f4313a9 # v8.0.0 with: version: v2.5.0 diff --git a/submissions/lab3.md b/submissions/lab3.md index 72b1f8c24..b4423011d 100644 --- a/submissions/lab3.md +++ b/submissions/lab3.md @@ -69,19 +69,19 @@ To prove the gate works, a deliberate break was pushed and then reverted. + if got["notes"].(float64) != 99 { ``` -- Failed run (red): see CI screenshot `lab3-ci-failed.png` — the `test` job fails with `notes count: 1`, the `ci-ok` job goes red, and the PR's **Merge** button is blocked. +- Failed run (red): see CI screenshot ![falied-run](image-1.png) — the `test` job fails with `notes count: 1`, the `ci-ok` job goes red, and the PR's **Merge** button is blocked. - Fix commit reverted the change; the next run is green. Links: -- Green run: `` -- Failed run: `` -- Break commit: `` -- Fix commit: `` +- Green run: `https://github.com/fleter/DevOps-Intro/actions/runs/27642905853/job/81747422451?pr=1` +- Failed run: `https://github.com/fleter/DevOps-Intro/actions/runs/27642421944/job/81745768854?pr=1` +- Break commit: `https://github.com/fleter/DevOps-Intro/pull/1/changes/92df171ce15b9d254a27493dc4627d7fd26c0e89` +- Fix commit: `https://github.com/fleter/DevOps-Intro/pull/1/changes/4f2818f73bcfed9cf10876b606a1b03a41dfeccd` ### 1.6 Branch protection -Screenshot: `lab3-branch-protection.png`. +Screenshot: ![image](image.png) Settings applied to the fork's `main` (Settings → Branches → Add rule): @@ -119,11 +119,11 @@ Measured from the GitHub Actions UI (wall-clock per job, median of 3 runs): | Scenario | Wall-clock | |----------|-----------:| -| Baseline (no cache, single Go version, no path filter) | `` s | -| With cache | `` s | -| With cache + matrix (parallel jobs, wall-clock = max cell) | `` s | +| Baseline (no cache, single Go version, no path filter) | 39 s | +| With cache | 68 s | +| With cache + matrix (parallel jobs, wall-clock = max cell) | 50 s | -> Fill these from the real UI numbers after the runs complete. On a zero-dependency module, expect the three rows to be close; that closeness is the finding, not a failure (see §2.1 note and design question f). +> On a zero-dependency module, the three rows are close (and baseline is even fastest). This is expected: QuickNotes has no `go.sum` and no third-party dependencies, so the module cache has nothing to store and `cache: true` adds overhead without saving download time. The wall-clock variation is dominated by runner provisioning (~20-30 s) and Go toolchain download, not by the actual vet/test/lint work (sub-second). See §2.1 and design question f for the full explanation. ### 2.5 Design questions From 15b905f1be9841f5d680e284762e0fbde4426dd8 Mon Sep 17 00:00:00 2001 From: Ilia Siaglov Date: Wed, 17 Jun 2026 04:01:50 +0800 Subject: [PATCH 8/8] docs(lab3): fill bonus timing tables, add evidence screenshots Signed-off-by: Ilia Siaglov --- submissions/image-1.png | Bin 0 -> 84250 bytes submissions/image-2.png | Bin 0 -> 42086 bytes submissions/image.png | Bin 0 -> 91236 bytes submissions/lab3.md | 43 +++++++++++++++++++++++++--------------- 4 files changed, 27 insertions(+), 16 deletions(-) create mode 100644 submissions/image-1.png create mode 100644 submissions/image-2.png create mode 100644 submissions/image.png diff --git a/submissions/image-1.png b/submissions/image-1.png new file mode 100644 index 0000000000000000000000000000000000000000..632afde569b6ab08df506a7de23c561919cab591 GIT binary patch literal 84250 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 Wcs#NKPdgS3m6YW*mVwlS1#TSO za@$QU#ZsHfD0wZe9u{YLME47EUhy}ft}`o_NL-ZWqEC>^a$7QD`?efYokzBO%tX07 z&UwNvIjRzycykc$k)BAHbRsx%VgLK3ntFZSi1}?*DLgg$Q#fh(e_n@pp;J=-e!b-+ z(!u@rUU5H+EENB}P3l=tHqXDeVJAQNe||?U?*{AKdey!*dw*>mxt`(wj7`c`Q&%_W z)LbbdHQI`&`cTXWOQ|Ovi|;=dgI)8+`@2~J5;e`gU!Ob1QvNd&3W$={|K3EyN&KWV z;@=zl-?CRf`_IPzz2kpBIZ3|<^+|i81%c&t7S`jgZl=oZ+JwZ=rW;QW!dyI%Lm)iY zlaPSUAT1RSc0&(^|J*nC%!{|fo0`0COx@9f>4NU!26i#^*ZGcUd#L4FcSio1a3y*r z!EVmFXi0NA?GK_z{EOuQitf5!(wI5<6StKdot?Yn+1i5RXk}^W1Q0ehHdd+sb##~X z1Sw`|R}Fk8XSRr@<&~X~>lI~MHa@~0tD5@Ma0PAe@0&uJ6y4qpV)LEzJ;TE<(@V!3 zzi@e#qX$o1TUGdeWA@y@|C;xWmg70f>#ol3g)_{G?ce4n>Q}JB_^pu03}4N8U#*CR zHp({w0y7u)n5(RRO(bV-r0W-&Qv;cZuyBt)1k#|#N+#uU)JU6MbLr%tjrUUbReI_2 zY5t=t!nF0GKXmsip~I)47^IAct$CY6>5;Uuu{0X-F(qkaZ_Uit&VE;2T?!qwPmL%E zH%p5yE?!-IR?ZUkMJ43o3Ta?{`qXG`+OX@_FEmKS!7b&-_|HKz_qRQ-xpPU2{q=^1 zx_@}kE$W;kbe#TLki4hm5+X&3h?r@1WrBr+L*Hyo?^R9;F!Z~}_h(wO`$34p)^f+G z_EUYP$)3`uxg{Z9P)1Lk z+DAqvgFwJrK%wz3EPkUbi)S>Ag!30;vn(anO>oxag;n^CVhgY5ZGPU}->*zHaP3-I ztEd{pq@?ID;Gqtsh>$XAmEmFXSxuGvzB0ab6DA=*G^aODN==1>3=It#EoH;qob903 zjih&ft9hfZPtG_nm|a)^fz&tFn>@T;x%xB6)+4EEXo#sOjR3Z(YUra2d3#3@b0Ho{ zmxjjH)p=amj(=08JlmVbyr{K(#K|fJ_v*tASAK47K8bGYV$}Kh?o?Cton^a^Ia^uyrxHs zEe@^+!P1cgq*3($7*S4>;c~!xZJbIx)85c_$tDJ6)=#XK}bbh2xfeyy#?=O-N# zvJ~PbCa_>O*)7JXhB8FvjBNZK@P|_Q2*Edyx2G}Nj%GtbLlMvRccNt}y@!nUTa0d^ z=$ALAi0L05NOfy%2;6_!{yEQAtpD;k==P|M(s^r?(EYD_9@kgULVeqH<9Z-EVO4|m z7I(a5tu}OuTvi}5RY${vigGLCb<${Lx+1W3C-y3cS6(1iVrT-Z=MG7~HKly{a&yA}pWBk=cs=aFA zc)QFqNw&w^Zb^9jjg6V}+oOUB3nNQQln@DOik}Ksfg${Ecl?}HRdLDb(USfT5d}Qf zQBx?HBm|*LZiiB8Rz)f?>-*QI9@agREs~~}M}3iOE%1fvsJcQzK7W4D_YeH&NV!}> zs=hof#kZ$s6*Z{eTpHkK*6}&OZ+id!eZBwk3w0~*8A?*7YGrgZNfR}kpFe+9uE%Qy z_jQG0!a=UCuBe#k`VfXBG9o4Z7OXNrhP9JQT96ts0#$B9v8HcVjEb9;3K zfrO${hBCK&5|zutLBgO2h_B(H@H(b8R{HBR8*g`ZUwU*X->K+pgxuVC@e2s7B=!UE0-#~T5REa=39Y&qH4Ff}zbFBKJ~B{~t-*VlpP z$1wCg$KMpg#{ggcTC860BY;`PTIR8{K^N|Ez;i-}9!0^0IKs->KQPjJk?Bw1jwUx@ z^^}f2x1s_IqGF&K8XS!FQcg)GLI<7F-rlF>9ap|WI;wmjzM7hvikccMrm`}#VJjJz z`3R13Lm45nE?}f~!^o!d$NT%NdF)S=>*0?&AfB-RiG&+%}Nxcg1Gj?_? zN}uCwEE9TqdRitfTnvmD2RBEVhj^c-bkDMzOP)Yfw6(*bLw=|lb7(eIzp{H&P)blHBZ#?vfJH{{Hbv!Tq6edoKpaPl;S zv@hqC&M=*HCHHDWha1~TW)(?$QrYCvOH*nV3UF#j#2&6_WzZ>O;%H@zwm(u|*}HI) zkdTb!dSlLuZTkhCaFUYZ5#Sl=%;X-Qp7(SjpgCL*yqnS1UCR!8q7{gmN=v~XK%bcw z5f}*DOh_D2FjSJOe{UO1Xhqvi$ zb)PZq=j?(4WPfr|W(u0)v$IaqUlc*nH9Stv&K&k5WLMWWCg8;V{q+{rN`H2KeLKFf zE~l}eJzdswj@Yma}s;GEj`Rciu=rz2Lug`JMR%UK~J|elGOMAO` zQ1Cydbnew{t=;6tVpUYEs-+c1F63r(SC7?9aguU82Z@P^QDKZv;`bBojiHFvc=SVh zmzO8;J1H(#rlY3@mpeW_+{>N^x-DBWboo3S`6)e}@nFJm(pkHd-p>b3iOvxCC`!UW zdNTz=zbdN3BYr$Qy!H;&m{#9%eVwqsDas-1X%}JbZT$tKH5JnhSNGdp3Obri6~y&c z7(HUex1A~UA$1=sv##fz<<{-mZuGzKSF|oFlFl*l@)Fpy8rrE0NEWK+G!~%}BqVIl z))aSKfgmgONP?cHh61@Vy|g0}o5EujYHBpP3dio887Pu7&h6^$m2o*5hhuBLg3WkS z{gTKuswN))DGmy-LX{%@_g+j5z@7Ib8gzn~1;S0lpr_|dn|)>nk-0gc&3rvd#H&{` z4Y!z2P)R_xhT~IXNA9;&GiX%O+IoM}+4CF0)zvlp+MfI3XbIEe=;Wx$EjvG7#s_sV zGOGJ>t`;Ts@@Oe`zr+R-@VV;q;>)#AbW#jbYwNFhc`Ji#t&nOu#fOJmcwo58tNVfA zkROzB8P-vOPoxohys-|QoBeHkyxhUg#}}qnD5aqAB#Q+XxBPy;-rcz`E35cD7lcf} z3$J*|do&AuR*}p7U^XIGHU<`gLHU3yEgb?J%=Uak75kygk-jbu!XrgNNm1wFl0TuJ zU#-pWsQG4LZ5^E)_oKyvq9O@NQ@E0^YVb%%9Uu#U91o6)p*EL9$e}Ui-m?qPpq>Vv%Y6ur#h*=;i(>9uxAXc2&o;$` zX|nDUbYjX;UUM2mXu81#^D$TG8R-|!@ixCx9D4B;FW=HHj35;Gx$3>e+eFyABr(X{ z;UV%YtE-qmjT^B=FSY)IJ}A3Qv1K5y?$axyV< z^q0~4H!eI$%4xz8bmh&kArkLbS516Qt_dX=%1!O;Fp^7IY!3E~-qA^Gnmr>Bt0FS= zd1&b1=U`)F(|)6y3w*(kAI}ke(b3TnV_l(f?$3h8OwFx(ny5Fy4@*lTeupd%?MOYn z)Wx7h-y4uY$nv}JRM6p|Jl$kT6mxWR6}Po5RSCNDIs+DjfuWeWcCyw-DvYTwV$H?X z4hjVRZ(t>xkEUT$>{(k_1jxL8Zifizw<+_}v_D&{(crtZ`>6A#qj#3%(Q6GoX!={R zGD}<%$bXvR99Cd~p+6HnhG39Cpo!T&64T1Y;3)qtDjHza*4ECFL_%^T{EIs*Y@`gh zS0AYqPp(>)88b@+9%Ku8yB;x`3QOKQ_*udyuq>d*Z^4&D`8>I5-AUnK^oCco5GiT# zYIVCiO9*-k*C*QboozK+2GIl>Gj6nPlY}uvUy-8Ar6Ip}J~mNE=rc{f@Y=(uslFP) zyw_JNj}g*D9L2sdZhGLMacCWd=eCV2#BU~IlEmltLz6GX+L@mkYrOejY{BAM8#tP( zxFP0LXI{rtL4dT(x0@R)*4uO>Z35Q$_VRMTPziGyzaOlIhHaY?5)u;h+G@)%cr-Lt z?Os%mXM^j6#~`Ajps9D+!6_=XHnKGh^1HX!7YJ@_6jc9`n48l~2E0IcOib^7GFPSR z9>Iyq`o@OI&DyWy{T%7~qzsHpyM+otE7#OccZh|Jjg+l^dVNDOFr&3p+c|dc3o;My z+Z+&FBT!IO@_1~&k5M$<^sh>4Ip4T7xIF*%+Zk)xww2g!v&EX}-fMN0miCketSey- zQ$*3*v)Aiy&ASHVJ}h^1T-`;EMo*nV0TC81u9shHD?UCqvfM+JZ&DIITsPiBMN5Xo zDYX4H07pa9I2hH_+>i2+axOf&uiH0NeLORJ=W@r?(E#Cvs}uu=)13_>mAfTRaI2T7 zgO9uLgcCy9gP)6#D_TITFkDzJZVkF3os#hFHo}(IsX2M1tuekQjmeZ@X-hhOrq{VA zPZOep&%Iqius`# zb9GR+GzKa)YSTWGt&zv<%4`E+vN5~x>5j$4tl@Dj_Zo)97;WVavb+ zrq<1E)fhHfCg>&nQzm#cca=hPn&!ZA>nkUI07(a{Se9D7hX2$;cr7>$wSjZ4D>d`W<+?u z6ariCKtDA!@1opBsIqn3kt3eaa_SzgQ#S9JbfRvgt-hUHzMC=ECP24sD@Y4V^7D)} zhoyQ-k&gedIMU&VLp6n1eLu|kyYZGLbr;k3!m4O?))x96V;(alXk~D1ls?1lB#;j} zcRXQxv_~`8oYtfu&g9hBKc9itY*#0^U}4ZwU_dJ3ejG0cVWQM{ZjEHd-qvgoe){y; z@#f4DTBaYB=!CSlzgTGoZ^oycpMK&ntgQx%a^$H+hk*P(viyw^UU>}?JR#@B z`%JIgJ0V*h`ip~uqrPNe{nu>Kwb%vO2F7qJ{K?sw#MX#iL0Mr(UYgKVA_6dkxfdpO z2+pJeLqm3ZhSP=QLqkv5>*BcT0W3ob5AHs;w07MYd5cD;dz`$qN^yC@BUVg7adE!m zepP-go7&2$0$N9n17-D=KQ?C2hVANcL+aq93TZ@r4&r*5jNJQb5;t7^%(}kzMtkXG>ugU*0!ASVNa0Luf=cAHgKV$roayLQD(*jg<-7pkLPYLeB&!B z2AC6a*7E{#tni>POxouH#P%)c1cLnh(84{H&lVOk^Lx&CwHxKivkzm%OYCUoy{PYP z7Kl$xZijfhPi=m9$Hj#|oNIwBxuc^4TR9|*_M#o;?Z!G4_{HpVLtJlV&9{VdBrUUg z*Ki85nm*cC;lQyml@lyTyJ6U4XU9Df6fUBqq`a%YH-Gw!&Uit~Q2beyczVIxmuhM> zyL)@%4f2FGv(3avnB<**@a>89jZ+g6LI>o~LArgsD$fQTb}`LTga@Wce3wyy5V zj(JAM@6#>pCV#P*O#YZ;E_3}V*6*MstG#~gJJ)sO*2V9{4-c0x5Fa1kNb)gXvrWulqmZM4OY*ehq{gf4E^xA znb}9}x`#_VPI4S;q_RMI8cs{UB;gz(^{_M8MIlC{Yb)<7`0dUmQ1;L2bIUyCqWFQ_ zUQJ*n+Z4vyN}^_N!0{yKJe)7f1#{bz=Zk0pGJd0J(jrgbv+dIEsRZdbB(Z$L@LS_Q zXAr9Ai&BRy3-Z9FphFtO%okKdcAGQHANyYTmeOL&kMw&enNkjKjPR^{3GwBzCY8wE#A_)$ z*2hcR7V4TB;@K)$ufHi>`EDtF4d-=)4={A!Z?|u|M+C5CNy*oWifSoWom6 zPIe3N)6l>NbwVs*hCc?tYHDg+9o(Ek>+1NdtgKIT6`r)-Ug(~v^L-V$EGzvYN7wrJ z;EhK}*ahIlDPG=!2|t2d&2pKE-O2uufxwUufkxM(m=XO(s>`2rHna6mKn)GRaM_xK z9Y1~$w|Ffe(bJp1HGj8~iz)U3?A7VYYd;(O~x$sRFbo9r9w^@K^IaEGkwIsjPV*}NKSM)!{`UmoCWpomiyd^ zG%W!_1f*?a{syYYV%FNf8VjGiid(En;kC1|Z@|x~Wrw!fK9IWJU=jttcBJnf=2Ot? zYb;fJ@O^01dh>b5>+v3w-S%dUftk6xxV+g!?fv?ep;fph-jop9-~({yh<66fbUUlaeun1R*l_7 zj{3x;HB=G5UzA`|%(=HwLOxQq>08*NF-h~C`Rt4J&*FxtO=3G4|4E83N94^Z`I}DF&xXnR&YzJ+Jbn&*5QnN)8>Qq9=i{l$gz3& zGOP567#n+hA-C`>OfSB_J>@W5==)Ed%!%KqcCn4QYYgT=7b$mE>V}0f!jRoC90laK>vEr>a!zcNa$W5T9x&IUu~UoKd4Dz2ar ztUiid!#BDeATlvMCm|(O1&xubtJm6>8;SfL#{pM(AW6^hPpb`{YWzvH@kTB;yVSW| zy*{iN5n@qL9Jo83he%!O-Cyj0fowgs1g2P+G9tLUQ-=r*;+kUe)R!=3H%9?{9o1Ue zox1;ESpfc!8vEt_j;A`|J5*y%$O_3DZ%taU2f{4!cZy~B>~(lLy3ZRsE+ft>J_^9* zT)R3G(BHvqy^obNF^(R9)reeazN)DW1)b#ab5NakCRMJ1)*RhoNDkO9SatWx31kC&atoTS5`;rREq>*w*m?sNE=m<(}jR>`A$Fd3!DjLp_?7d!=VSx zO=;>x2I-k**Z5xEhE!+^w>|7`Om(`SxOVHHmNtpi!+Of{&2j=VWkBE4G6qeLl6x-=h|yb%)~@}(#S`8^Nh%h!8^ zh&=S6IhCe{QbsiOmybuJ0TzD1HE7ScNo{82`wLHMBxF%N(9bj=kxazYRyYQvdsBV* ze2HRf8-LPlU(BDQmmQI@JkaQ5TA7j~MM zXivg?!FcK3?*t1@10l3cDTDG64LArD8H8+bJ@b5zvf9rZiKCz`eolNb`$w38`p+|U z?#fjfQ#}&bWcU{c3qdBT7NtvV#`lSczV0M{JN`M|QFaKm57|tPD<{W{koM%7H89l@ zyBCQnhPuyFR;CI|Ro3nvMa+)pad=1A86;P?xq7Lt?20imB*)&Jq4m#J=_EBVui2ll z!%Zm}6cjUXdzJo-`dm<68XRw`^$&Ux_i7Abw0BnnE`am!DR0T+pOpKXcajP)|22Y_ zj({<8EDSUP=Ts~3@TR2IJE}i@Dq`(IRMH7kq;}b|A zDjt4>`;8ZbylNAUn4b6}Fvi0p)B1D0KXB1qHTuP_;mEwB`DVh$XAmOuO<4UR)eXSLj}J4XS^~_X=ba-H z6z$ouRGu38%g^W!*6zmxrD)IaBeLcPyY1^4|Bp5Fax*Xg*p1Do1PLm})hCCC+l}2F zha4X_Hzt?q6tr2_Q^H^`kOSvXC5#L`UL1;LK`{Z}y(w^9t9OmEhehoqkH?o$;oF*W z%33HeH9Dm-m5s9O)LAaI)LA@@e1 zb%5bQ0s`9KC;bfqBx$*iN#Td&C6@niZr%ny-PHW3Ez~{~wWpwMtJyEnBnrWblF#J@CLRkkFJuw5!(?vK;mU z`*itpH8!ObJuGO}Xa((N9Wy*>a;nJ;x61%N@=jm!Z_^OKOSv-ETFOjoO0`7Vdsf<@ zfp`oKN1Zr`u4zu{sz9g>_ku==E?)fbr}V7{^PR|`gU{t;{A8bdA6$ni_S0&t@pL1* zccyg`^98>Ooe9@BHp5eoQe|>z;3Lkhh$~n_+BHuU?@Dy18_ABT;n!=K4nc`N#3u>ejKtHlA@VWWm_l zJZ$~zR9pJ##Ys;UTXWRM6Wlr13?-FgBL(!-P-kMmrv-x3|L7cu<^++DQ`7HUZ zeY%|Rdll!&dPxIFr-Nlo>m!@$V%hRVMBxZWGObTUS{I&$DRqn)(>gGUD$TnNf_COw zNTPwXt?jVleblx;hW*rix{yCiXTC_xp@=X5h+B3}|90KuEU)~z%;6xSy0?|}Xk)q& z3wxse-Au|f`gwt2-{|KB-DSKQQ2|-z3Xisz#wJGSQ`;lS4?4(lM1bSrSeo!x-zQn! z_$|HH?aX1AU~*yh!_E$?@Hjzkr)rQB~K~bX3xwk8T*z zq`R@c9;HQ-&^gzqH81_QmGJDDL;H&tO#?bZfPC?~D<36K((m^J?Zj+=poo4RIjwpL zFC$n4OtiTboIf$Q5?h0k6!evuM~e5cxs6NMr$k)(CvT<~%#3s#uuWV%G37(C7I-gx zENm@}-~Y&tZSU zSjY>7GmMt1{)vWqHwn)-o>lm#|7wxgJAN62fe_YESGQiTpoOS-gB2QNB&0vdy*OUE zbC*D7Sg!jv3Hh;~ff?oe*WO(C+8>lz6(Q7LA5pu^vjgP$4*V%1dmMvAX&N;SucL`t ze0@09e!PLM4lqHv^`v9*_u9wY5Thq9xz)D~EBd-fy95Ynk~t{E5AI_g}`!?%&i%3Q!0 ze{i9a8QdhFKy>DpY!MTLaUlW_4VPd8UmF^$a^Pq$@8qmQBwz~j=zvS=*0)XglossY zc8&N`?KL)T3mm0?1)^nPp~q!9ez@MbTh-(Q-}eEM*|AFZqt<$dhm!ied?>5Q;~iN7 zOEebj7>8*e+QuulqdRn5dJ*Jg1v9MrJ-JNnH*X}(%;_^~r5ha_4fiP}u5k?w#XN4W zB%XaXUi}K_W?S|WhN`O6;O;Yi(Z0S4;*o)q(tneXv`zj}Ua*IuNM z2_kHbq<4V7LdVr#pA?g}&#XSJP8wX`*K#OnU{Hp&-_+85-h~vuL8)jXS_uvf3MC@Z(B_WlU)}3F&f~T(!g_w-Y?ai@Fbamub zri%#|{q6A=ea#UDm zJkIwcfQ22ee$rZ*tfGIY@sX~g8Uuih+l3oqP04xJWJ3S`K6G;>CnqW!t0z9x{}4

Rh|MyIr1d;F9R~yBM;Zn3~9v*K&8+*~MTgjPKZsh**SC^lUi3(rNa( zkn)sHb{Gae8L-qk%cp%ii3ktm7QyGQPwCMPN>NZLqCn-81a7Q>h_}hRw|IxAN728X zx7Hd64GB8OFMgK#Oj&UAJKx}Olb|b+34IXn2nwNU3kwVDNJItWp>`X!dvQxAt0@zD zoC0;6&RZkMFz({wq8Q}!Y-z=45!o%5yEzhoOqjhibBj;uu9l>Hd3Of4GCNCh*Lvzd zX2C7dmfoUYeAx|rKx?aC=a%~2;@)P%Xj|;|P%&7xU6^yN*c6lxr&NM&`^W&%TH!g{ znZq3OV=b~SD&IrPtM$o0+gYr_?TbMz-j987B?1%Kd8@ChYs&rNUxYv1Vr_kRz=O15 zgv+sCS`?Y7@FNEW3+Omd_Tv}a6G=;7XgFa9O*5NcYs)=e z)UFtR>K1b|&qmz3GEEuhYUn}^upu4Bbm@>Nsf zqoM9=Q>>?TQttlcdLy{*`iTjfOpJ_y@e^`0;on=*($cVR`qiZ#Zz7L>YcSwBd>IU3 zd+lO~rN?wP^^KKL!c~zc3%!Lc{~KENrSF696N&W;ivzBAQ3_^gLb~1x80j=o{*FJ2 zKQakQlwBggKr?@U()d}`kbtDNf5Rz?n2_d>cK}3jiVOqDm<>X0tGpIoQpvsh@<6{Q zvf5Ga_w!j5k^t{*r zLR2~pm%g?opRQ$|zv<$5dUo+Eax8w88IMXjz-m z+QUFNtpr>+GsvS$K=Q(iqqApq_5sc|Ss`@Gz^CEO^SIhZCjrcK!3LD#mwllM7PXFx z(a;@wqsZ-D;)}p!B_yalp%7HCAm#OW%3N9&IyLR(2SU^K#E)SMmbYM1gB88?Jmwei zcb!6DLl6+a42DHoe=}qHI4Ak+Gqug^S|_8)iC);FFfs@}S2s7rU*sDS(6&ZNCJNo0 zoO;9Ka(lXF6@)VtbP1bF#T%3C&a2CsBb1cf2tZC5g`R9Qwn(Bitt4@cxp4Zk{3ruN z%Fa%SV9`Getoh&SZttfop;juBE3Tvzqf(symujRCsZ-j^Hs>F#$J)1DNzGDLPr=0s zFHe&o!I~&Z?EZaHV@k^9lC$o6r7pGI#Lh$m+8-z9?qT=zdHKYTaTyqZ(mY=3?G8Af zIl#Mq!6RH7+IbCn7Fex4k+DJ%v$HxUcrTUYq?FuvL8;=%C^}-nKa*E11mMCCU11m` zL&ktg1dugVJ-w*)uYhRky1xw%xI@&hBn9Mjc3O*yf!_EaVCwYe#!|n%lL8Ag(3nnCSLINSXTE*yV}Sqs8C_}mF*p?W3pefR}5OM zD#t3pO35F4x#!`I=%OvJI#D z`uf$lLSrIPCp^}zjg>IlC6cJB@1JrK{q4zS>a;xkdc%*RAFLUkKeycA(m)2&6r(ia z;qa%c)BO6bp$fF!Xq(%>SdlZCOaYGZ&&#fSeqKI+*kQ@{;rRGW0$RIsy714>3!3(i z8GD>n_Jw?+x;42p+Op?ZeIDK)Ttjco`+sg_oMCQ(0!ZLAL*lHw?Jif23FIk5hR56> zw0g~1#Vkbz1|pe)y4B`tS3cM9C)PhMc3dp=FII4Te2gbyWuax-2TDoN!>1EghaXKeE!VUNyysSIwMAO_b)fY^JBy51*taf_(Cb@M2Hyv zO4*k2yuDf-_Ai$>TJ)_vNG*L*QvM61#nAKvblQj!|BDd%%&I2kJXdCs+YgD&>D2#nk^z8m*!Ijk4%fne+!Z#O&&?+R%Q|f4wHm0OQk<@i4gl zcY$^2l2r-p!%aij{Wx@F#+l1--;?JsjuIl-9aYI)t323u+&_bDrE(7FK1r>=~VYZ-NGj= z192cB!1?@%orhUrUhxqsk|IzJVQYWAf(F%2^(?r@18q_qkSKvp9M$2!V7x|Js8kE+ zT~^H?0b$<=q0Py#Z;ADh;fK`jPpdBs4%xoIS~3A4kk8^-TiLSL@a+*T6FriDU;006 zorSuIv<7EK!0q~4^b>mUp?w=Dv+>byi+pDGcSKlSf8QJ_rT-rkz>QcjG0SJ44he?0 zxx2CUuzIXm1kx>_yAa=hxLp@`N8Guox|)0sG1|VTgqm!5g&*! z5S^El*60=5+1egHw8cBttw#m}0Tl6bOUC_$I!vI?da0x!0T^6z^724F^_KmxJv(To zWeYRt^aug$K65k77akeg2Xt%9hpm>Htxc$XN@?v=_N~~nX2U7bXecQB50?>h52x~f z7fxLwn3HuU0WS}a4^0q=Q-dCV`1YdfoTPPKMcDyHiR;%9&Fu#lWyh*lrqSv4%JYN9qVTK*domglSrKP7C1L7zIO7iy&!`S}yjSoP6 zIGIysfGb?Uz!sLD0}EN+UHx#a9I`gZ)`o{E?dvPT4ay1zHdzf<9*{J0m<MTC8}Mg)VN31@KrjL4b#d048!KYQeqq4w+l%YqycdP*{}>HaV3AEb zyw_g8p6LM%(Ea67Ea)z+e1cXuNzB%aFIYhrlv;5irpY%Dy9UtVLZ}_-ZwJD%lX_6*FhChK;n@2 z=(|cC_~DP!{>{BR&@fe0R|iXEV_{l81D$pd$YwJrNBUC_JV=Hsmor- zo#r`@27|2A#hqt!jY$amGr(T8Q;S zX;fEE&$K}$DG^clEfR)Qo=nhvWu?UJL( zS~Eb#LN=^WNs{H8t^v$E+uH{usGJ+5tEswYjYtbqV>%r3((@BJop9IvSDg63xmP%Gl$f&k`EY>}2@g~3 zj(z_?hzbaG-kQAy1db;_71;BkZi&E3W-lo@)%3(Ua%FETY`2JUVtTsk#}AZIW`n36 z7Mqc+wS#DlxFZ^>EU}`ZqROpUkyUEMP6}T<5pS>T%1Ue~)h!>Lv|G|H;^%ixD1QeW zeDhPj+EbRw>WTosvVf`?H1t^xc`L4fj&|1?d;4civ5MJO=ftw48w(<4K$ht`(Vj8g zUTETDWE_Y~N(%q;os(ZsaP>!WRWKWpx}{}*y$3d6u|uhpR#uESIIL9k^hkh9d9_DY2q9wr42cjvU%30fEN#%IAtFA3q`tj4Jz)zoWJUqNiuK#Q#0hyMEoI)Buwutvd zFu0D!uRm>Mk1U z6aM{|7;xSKlWU zv6HO5O^QY`CR(%QO}5IXH(QOsZRmEH=^LRRCvDov4gcXw4@>qpmEPn!TykPtX1YsxwN<$RIKfqz1k=H8C~C z7WCxAVSNfP`;ATLv4WK{qGo2ahtjx^06qw1eKCOrUkRx9m4&b4($b;;;~GlU47vu? zVKQ>Eg(4*803OR%UR-`^|kX&wO%5t zJSF-~1U!?IfNI+nLoUSbr-y71>!EmM3jvZq;A$1f#3-OTtRnxmAi!SCwi)VI&0Sud zMM)WulWM6Wfo_9R%)O-GKYjjG@ovye!OMt-)zY7ddPM@ZHx{h}mn$Ew?G4tYI~gh} z>hdy!>{9DAYbhYxL0|BY?M+w#POK_!*um;Pr16MV)&EPO-B01?%^^_;!$7x7<9<6y zY3*p_+mgy#t7T)uyr|bYpY;W*69QyKW@eW08f&ef6F?>nf8Zejd_%}_-{AtkU&(WA zH#gUgV{F>s%6N_VPMNUi=;-amTqFaJ69nNZi#YaPB5Nk5mrrqkqsdZlf<4y+dbuvB zn+4t)iWMZD{;BX^5)I-Q8DX8Ncf9e<6`o zXuvqIPM0k9m)a=D7T2KBT2V3j3J)y+#)yk+!I?w&oz56E+b%Q2Nvl)M4rgm{Wn;+@AY`I<^dCN;Qpdd<1DL<@ zeDq>dtrhBnh{_v{kcGBK*1J2K-`|NFJUu};l>#zyz~c=G?M2jnm4}Rh5eUK=WH}MY zK@We_6sTJ=Ffa$_g&?G*34Zu@V!8{uBl)K|FNbtl{a06a0|73Ujd*>&4Q?nIS&C@iT3;-m2SuaTl$jX- zX7e1B6cy1&G6ZOar>4iofOA%xe**dVTkpPPaT_>uyTb*ln(u)?p!sm#ONv;otd*%l z!_jxRz>6>pjQ@H@MB|{RhgZ$5 z#pe;!YK~b%DCa>niLgXV?Ws@6*rK|@TY+cpzl7*KDh)ibXtzkCC?h>f()!c5M(c`BDe` z*X>5_w2W9V+U+MmDjwy&6xj_{8I(Mp{N@dC$?!!*vwrEoUqMG~t50rKRMfo?V38{c zMvqL!{z6#FVdp2Ey4Ez*i{IZYH98^xtr%oM#R1kJHaU6pZ!U9_y(yN}Y~ay*&iVk0 zQaaLsLxlWrq0!iNVwX4M2m)28%r*)-I&pBlxyViwIJp;Fb^AE@JZN7DH0choCp9_>_ zl#`3KY*77fuN;JZNTs3*E&wM^Db^m*e%`&-Lmqa@3H zZ$0Hr(^ms>_mU?Wv}avz_tsL&KA9*Mvox=nJUBE%86ED>7Vho6DEO*G`Tr3U4&usn zD+0A#s-3P1CYK$MIRoJiG>J++#fKb(a%>`0^B5(`kAvPMUG1Ezi+e}_ZeMI}Z7sn<(`7pvTQgNPR2r6AU36xaz193<#1 zI%*Z$yyILsFI2bWcfH{T#O3iid&;47F+-xQ&CO8dhf_-7%ezxA^QHPd@PL7L#>Ves zyw1O3k_!jRHzZQU%W<5%k3h^k2j$et9*Zu!%Z!RbhA{DK$`%r(KJY-3?{1%!t&2Aw zXPmzXao^%}gNNg!3pHgo<|8J8I`0MwgYf`+Nt)|7HgnT`Y*ach0y=_*=(G+%OxCBz z=2+^JJlL7ujK*Noe;#x*Kz`?L@juhIl_e>2nAw7y?O_V!9@>A9!$SzJ6hIVDwPX2DD6yF`nzfti5=ot&S?wz9H%Bloq)^UTBiXjN!K z2{X#ZhMnV@cx-0^54c!NuRgCGFC>9^1YnyHCaUwQ%F23YrzZ%Rl?;fJh6a`qn~{^N zYg$GbMO{ntWVKZtxq`jqu+P>3F`qryB4{`8!aCk$eu7xp9s=&wsdQ zH6^4Vpzp0JzOS*!YCi5A_q$GGt7swx0ljS(QY0MlzgJ6lW7I?s4S!_coNU`Zw;|-t zwV?g{IhUga8UNxoBRBSMdqAr<6|d|y(vOdh?F&9${=Rd1#Hc&G-S!AE`p|K1d4KM6 zSKaXiBGG*&m<1#DBna$-tXFIocTN7B_E8W$#7=TQ%yt6Nb&p7sM27JPJ$C|%TZHS0 z8<))E-<93F(y>p=Atubp;4rx5ar{Jy+>i;x;8R7wU!b9Ya`4|RD|~Dx+0}OHn=A5& zU74Q5QK!5$fTqvnWivSb^+|(0M4bNv z=1J>R2N^PFJW++sufr|Zy1!(u1w zG0d~4)f7a50n_a|GQPuPXBh?>nO724ibtl^Q|z(2nAhDdUbui~hPq?u{lQ`{xrn5c z{DEsQG0CH&vBmCp`H=$VY*pgOmeJ4}{lHIER!7%cog$ex)#s|fdC722?)8S@75Kq3 z0K^K**SrL6e=(hIn;>hf(0QR!y@imubxe#C9*(vh&qnbP5OFuj!zaBDSE18oGsFD( zy%kqkQR{1i8M~~qCm&v}RW#sj z@rTwI|H2>nsl*IK1s90S^27e0NLX3#FxANmX8y-}@8q9=LD#;gf~a@CR&@iI8Ni4L z&I+uer(^@}2bTyLgqcMBp*EOjZ0pUBtjMO;GKtu{n%)!L+KKjLieZxmm7J1~`#~p` zCikktUjX8;g)_{4@n#Fc1oeZE4SqcEa#e!k!iK5w7_Kp@kqa|th##~frY0p;*cvME2u)-(|3l=x|%xTVH;rrcK zeGkkY{7tIr3IQlNNgW?m-;CzN>E+VD7Im5V32b5;d>tZ&!GDNyD6R;J|MnGH13Aed+wBr)SC zSv{S^{YgI-1jN{s$Lwh-;lV~7b~qZ-LbY|DYD|ff`_RE9MVj2CN5r zHy~8F;HVY(M+yTc_+a$zb~yKc&rV&LDgu4_uRt*Z6yRYS9!l@K9XU(b%xVp0#eeS% zWx0O{xnc9`JB~oHgD@aa?co!IhDyW_-31=2g)L9=kuAQjX*96cziP^NcfQ-5Dfyar z3LX^W7gxCMUA54)oM9>%%ldMTy!Y$~lj+@rY!3lN8U5?Z%mqdT;QH8u&Tt%7y$idm zYk|>O9z}l?|4G3Z7J1L|h`$5_U6T3-osx_=9G2A_J-7u2^GNln4>Y8P9bg?D*1|$JW0|3wJ(Qb^tNm%RP~^0n(E0~LnPM7s zqXeXwgU}d#N_(pe=R~AQ)Tc5%tbvYSwr;>7dl9>{!1cY!Y_Wl=nxI3#*%L9G!NF*r z9=1JNJWV6rT)YJPKp16PB=MEVsW9o0yTg}`vz4SzZB)bCU8(t`^9-5BZHj}Xm_X`FTiIzfAcu`$eiKz z$B?#1##p~z{GLjaTZdT60Rylmx;n}cC|K7zW?H!g5y`5*Fi*2EnqvMeF@QHaLN!lFi zYd~($QMg@eK3apPjnXe~uQC@j3Nq#XIH)ok5pYh00p)1Cy4AW`yaH%$Zxl z@%~EV{=h9=a}!qClP!B%aS08L>J(}8Z?jTxxeT_Cb47CemFK6ARGuc^sG?5i84Y?3 zmnqBs-`vexVmS@f`mge%$Kkr^^8tzBCs^Py`q95#a&IsL9yFcd844XbUT3d;j9l%kX@Zv}Rf9uB>kL=bt1gI0h?63LT zvsC!jt(Zdsp1qHRKm_FbnCbWCZUymIA{}hRAT;Q&L1=^EVR-QTc*9>E&SmM}eifA! zZ{-!;(`g8HG=ZS9O9LdwFHO@MpeQGRFmnvA#p;}#-32)6{}q#B3a%u-I6%nFJHsXO zE)}qhn@Z8#@Hncve-7(r-ur?3s_A+Fe)&G2oP8m94imo_*^nJUG<+~dgUmu+6|UbY z!Ee1qI|g5$YTCod@WXdEZrWY9btAIl?;c}8UOgA6AXMDI8GUf~1 zFLjA{b)(C~c!ucM%x+(W1C%X@rQI*uKRY&QC2jf`!C1tPs%_H$%ZhpIQI$(SfQ|@c z3Qj@=tEF%xg*U1#X2o0ewSQtbol`_AqEylr^n9Il{apO>`Y|2>Gs7s?6ss!(cP%7i zoUZnWX~JRKa?)0lgUaV&LNyZ?zs#tc>c`?@$@xBR`L~Dcm*wOAdJNi99FuDA$yT6j zZEb~X_60G{6SY?IWNim2`o>}WlqmDYn6wByiD6^LAh^W zV6?9*=yY!V`Pf9|79}E5oF8vOS5fJW6BYX{Un6-NaK>+Y3pH6>${13Ove2yoT+L-{ zE*u&Q*e${%$`51}_Y_o9Dq6?~A9(YnvRbRr_*jx}2)t8bVz3(<#gcEXf9GVboPmy# z<*a7XtvI(hRA*y#(Nv0G0V+aIDd&iX38U*@r{`d$Lrk;s#d%kUwZ^1C!c;(Eeo;_N zPhI=xv-u-1i~wE%R!E|vqp7#M66#Q3BD@aN0fIaYcpU2$PnKMIxB0^DxPb;i6vD;S ze8+2!^x?!e3O&iJ7Aj;tkj-Xk(>yXLxK}NnuS|jarmKd@5j8WLwUoMCI{C zPEm5xF6K9*c?(6ZcNE%{g9Y+wyMa8xPM1vO=2BaG#$wt79D;_rn(m8v*21EqhBB*i z{gc?FnMv=H{h7Ulp?%LKMI|+M(e%3@>H7-%ilak&p>v z1mjR5Iv0Qc^U@u{pwL8mBd8m1sBfkj$gu4n>@;ROr4x6bC#+zE2Jo<@jgON#B~C&0 z+uSauwW=e%@yhkP=LVu^{8(WC&QEt8Ii$CY)(y|KI-*pkWT;jO=(53L{0jZ61)XSGI>{b?EnS4)z zMN9&pK>WLV3=H2^^Hy&oI$#jCH%JCF0@{cO=YM_v+}WDFFA)DSoVP+@dQYuwXv-XI zS3Vu!MZ`y4{3JFmTB`=LOT_VXd|VWPWyh-Qn@ANpTi@6)e@iUb=UddSE70Kr*bgz0 zE;I?}ujaRKu4^8&1>tt8k&ahhf=FV#2qp6j8*b8*FlmGJ)2xt}_~RO5Db=s`Ybfik zyH_2VUFVV6{~p3Et;Avku%PwYz_&>wUHBWkXSaDLj2g)b6CR4}WQ|*By6dOZt_A-@ zUYJ^$32~mn(=#&*IYslv>=LhY3qKX<87l_ElSvq-$`5b<)$jb;T;B$&lJWw$@mj84 zO3}I=3yR#S#u<1v5`6J$pTz|gPY`H#?^Rf@2vjV2{hAf0JC@eh{f6eYK9RA>Ao!Ru zbc3^DyvuEY70Y3C5|xA(0`r1i$DItQ3}AtDp5a zwUX%FrB~!!zuEn~8EzVM$^%67#1>~BIqv!QF){6*Yfm@#5ZGuh&Wh<8A30Bt&^qvy zfCIdAoOtTpu56VC!vqW`V7=Jb%Rhd>W0sZOsnF@eEgM+r06i{(O4$rPm;%OW1AK~M zM4D-P#R7u~X!E(E*nZS(@yo|=Gd;WU^a=gid4(CE`*t-Nu>TEx!Fyu^iwFD=@s}hJ z-ZubZbK@;OA{HML@+3Wk%})fIK;+wClmO6YSkERg>`0i2of5;*B1dW{$BG~)@K3~@ zELQjg?QlC2gnZ$r$Y>T}!$U9l<0&{?1pxTcD1ZPHTwIiJ&R)BTDyoBE9gB^;`RZ6T z-dY_DA&m@iuV4rv(KfhmQ^Xw$FM_9w`FH-R9wB0G-DL5ncm`{Oe)oxR3bw`^Rq8v( zJCox>)6>a3YFwsH_Ee_ehsmE(zZzFkkBRivlmldX7uXko*M^sC2DLIvyGnD+*qnB@ zDFD>qY@6Xt#6W@4oC1b+iWx>Q;`?rjz~Y>VL)Y>OJ>u)q(?$Ddq#mPbd}*@s(u^L;9cW<@`Ld*^s!5tc zwG|cVE(3#8k4gF#Sv12sHD&@ovsOvk-?RGOVvxiv-A{kofQkrulNEMvH(@Y}+&`R8 zATCJV0dN=oCXieg0_}xBSn%1ODt;;>n3(4^9X(yV5U&`% z@HT;7TXXY@inR1p%cTN+VEexLRK?AL%-WaW;@Z}lFMwFd(7aFx5`Z9LAr7;-(S5iw zXSc70hW|#yzJD1kTVMP^I!kWY$cKl!`8p~J8}1;E0SwtV?i`;#OSqaLa&(}=fOqkR zo25og?SFLaYOp(c;I!Hj>u+6BV`umj$gs|M(et382LwwW#OuuMYg1Et>%WykL1V?V z-5#G`N55wNl%dxoGmUU-^;!U77B1>gUXXNM>%Z#{U0cIk5V`(WL zcrl$N_Za(m2)S0PtOY~s0aIMRuI&Aq!Ed%no{T+jRkdp40~yQQS%pR6p4u%BAy8|h z+5Go%#^e)CK&*5IDP=7VyPfd9PtZT|L!BvGf_6x)Pf%LJed zbXQkbGIBn5ysR|5!_`|bGR+#!N?;dw(uq0r8B<+RW!E*~;CqwF2WN_7$goYMbthLR z^_&YWTbV!9r?+nlifbuh_#@yu?U|U@1KQd~glK(}`04;JF+l#ZByftjcz9ETOQQRb z;R02e1+Iquo@)8xp>*jj9cSks_MVm8Fy?_u&A)%78*}Q%)3*|W1YIcK+FI>8pzjbD3HV0#;O`i zyYyzkKqo=5hw}PuOk|alJMUO{J)4cfl=5C4zVhTgWzv)YiV5pr6Q^-H+rKtjjm^CG zo>X4t{}TK~;XeSCO?S1UP6|a4QqbAIko-;Z-w@uL?vOUaEpLhLa0agHf!f{Mx1OET z4D*W_TxvWhrs8$@)T8`iF_i_PVR)S8xl=5L)?XKvRMDvGEFGk$XQV!1<4-G%NC3j{ z){4!Pjcb!bS8r)J96T&^t-X9^?-CyCaeE%2hX^hr!o_}A_nM}!S+xDg{o#akWiOM zb0nKTrcU%|Fr|y_ znwmtw1F-O`t~QHlSY>qB7_Lp)Lstj8n}(IK*O^&G=q(e3kll>+jg7mp`K#<4*IVCy z&qS(5(7}H*BV(&e8Yofb!iMs%;W6Z z<9{L%PwIbxWEY#n=+Kh?s|YnLc1A<6F{tC-YA$|pmEa@;2J8l1ptyjl_x|YU^SZTT zMugxWm3MrTruho2Lte&No8tkYFgxI_kl7_G_wwJ@3$D4v0Qj^1i7l&oZag;dXEybxb%r8H;U>5t{p;)h@bI$# z4VUtNIiT%7@4@ffv(1X9$C6e}tQr1vY~;UVajR;^D>b8x2z~bJ zIRY;Ue4(xx#FSVxzqER}YGrhEwD9=bETS2L6r13`Qq`b&%&Wm_FX1WE@(qQ8@d*A8 z7rueL+L+|(J>(rHbPeq_fJH;HwdjfRV?S-;LORatH&K4sdV15AhgfRc%f(Jt+|Uwn zb-eC&iE^&i<}|NPgabcf4!8!q)9uh zcHv3Io3|Wa?U|X;XzNaC5{Ip*%H7Y<0YV|J_N;Sy`P|N6Cp_fsTflWdx;1{o$)n0O z%M*|kR%RZOxN^(8y1K~?qvhZCaY)xY3hJh<3`egWuuP@L>PXAJ!*$(T@eMEM|A#bE zQCdKbNx-&jP-RtSk+ zeq{(JCLwX|6(Bo6OI-MKRaT%9;rZ=dMvrCOv;>Rs@95FI(IFMl8=afaTs?&IWAOZ{ z1D3>+S?vEMk7{yljR;WnN2(gWfd7C*S|UYJcVPL4TIGv$r;10A5!6aFQa;mD$Soiw zh#1MDbe})RJR+p;&Q!3fuwT6>n)eNn?myBd1gl$AeSZu2RuXPotd0i4Hpker7EkLdp-<_i4|w3M^m6Y3H~{7QpDr5PHeZ( z+cL>u39@U~y;XlG^scIx4CxC0X***luuI$gPf$AInZ|wumyAR}SGQPla1AUgq3!x} z1Cw?Qn6w+IU{GrFBnOx1=L|%NL?v+X8Lw^6hn=4&|9)t{#C=hK3JKqWxS97jGcfJN zfED-cl|cpJPjA5)da86#$2T&P6hIsjQc~Z*%MW~9W3N-)v}O`@I&;^ob-U}PUY(_M z1-OjH!8WWXjLsOr!8pMBH6@GtLKJ|xZ_&YlD!0|RCj1MQWF0Zk!c!uVH^rI!4DQQ3 zzD0XJ3%rS5aT-SP`$txwF@HMxp#1Y-+${vmU#&ayK(uS zPY`+?_3la(tDx(t@VI)B1QjVbb!)pVAg=2`nNCG2h=SUjaNyIKXmU*;z@vD8gf;S= zskG|#Oq&%95rB*Q2|8Bl$z&G?&4^B6{$X6pm5+O7t|O$VkLw5$?9XP9vr#^^Lko4xC=xvBX6R=)KEVXJj-bGqqQW+qomxTd&C0_=0xT8)tId(TMmRczS-rgxHXAGmCvSV8L`L?j`|7mnrL*?^vq03cGjKp)zw^! zzhlPAci8ullGgj^lo0{!gov?m5k-Z$aEbC zDkbbMQsf%5u12S(vz8IIqMWKS)5hr8oHf+HnQpMDJBpva++qwY3u~G$sLuH2KaD2*S$LRF-4={X(apde9k% zKXAndFbEliJ_*`_%s#|KFPw#SCbj4G=S+p9#-)OqfO?M;k{b?JDY(@AK6N-3mX%3Z zTYq2NThB~v1hh*Lg0J2!nj*Z{Oq>7YOt@%cyr8YMry?}KkBW}LH8hZZMROh;fV!1bSQcygk>3RnQu_?D zvcU3#A8^qIz38Mi_m4Dia40Vz)LY^k9NLddDjRCVm)iYK*&g>Uu=>GW8f4)g3 zl($2@fvyO|(ubu!0(Y5gc)3)5g{XJwG`dgpcE z{v^M8rXkYTJFelL6Qy`SOin*p*M4@fcB1To(0%c6T&>NMG%iR3HcjpC*!V|7TuQbD$NET(uuqvLs{>yC$V3-;wQx-j_8DK z_+8e9KXB~t-2sWO!`W%|`c^Rrgn#~;MbZ{v#w`u$0yH$Vx|gC^1O%`xEiF-yJ$w4J zf^9JMae7K}Au%K=TEAFiU;RU|rdG!XW~x?)-}($|T``EOrj3lPIO#br71gKV5G*wN z24e4CxWe*(jNhTjNLVZdk0$llF(i3`Iof^BIV^uL$|@9@6hz}>-H}V!*L&fo?M&($ zJ#^UhV9za#?;_`19l7PuQ#dr zL-H}Vf+N|G=+0zCc13Vt;u1ZRz@D`S?J;w4sefJqJ%l~)CQch~M}1xA>P zUXY93q1{gQr3<#pr|$e0u4{S$ zp#&zl^(jrBQ<*Db1`tIv&7q;J{Pa8?9-iI&r=&J)KW)QC z1b=BKi@0YIcX~kv+=!zqaoA+&s5$12JFjBt#fpO<(Sb#p}>` z8_MxdS5yfFl+p|=CIFjN88$2Wsvx|+%D~XelpirmY&GZ(_=Y$NKXTQ%HC^H6Lu`!Y zui$k&)L+{adpB~?4$rIjln%4N;Oeit4^gT1d#7x=QmF00N{An6Yn)_h#$M~P%<`S1 z9w25jO@jc^ShlF3ID8+o5}v~A!qz9u`f{R&`v#wmv@ZsPQ+WeA*Z%cOWAF@{qH_PP z^(S9nbRgRmHDFNxaK(n7X?VUn#TOl>3B*JsnpJiCy5*Nj6 z8_@j8`2bv*t6VFwwm-FAF-y2XcjiI+5yb>qE~Y0mL%{;kN|=y|vvJ>LyHkcmpU@EX zg0dncuvEDmwcozew3{I)a->PnSRk4t1p$c?>`9dbv^&4Jo#-1p)|J`}x_HJWrJCIs z!*jAVj4(?GlacPlM!cmJy|~CAqnmy zNN{EXI6$=qxNKP8sb<#3a&`5+<>=@LY!Z|!%$!T639C!?>-A`4KXnkiA7GhVQOpFj!CD=dGV1OvVG{?U#xWwfjUV_ye@s`{te0mpIy zc~4_QEU!jndglI5i6}DZ@vED!=$VVl#GzP!84~9s0_)wOjACdID}$Jn(7we7>>xrh z&T;klph8E(gBk1_prDej^Eg@W{GbdWU1Xhj@Sj^;S2?bE-?;v8p7hC;=%HdqF34k= zf^wTk?2ys|O-xyIKSNXVy=aYN zuKB!eO}%ciTN3>-i$1sPAFVG8WBvMRr7PtY)$hXJ?wDu1{$;Ra$^7P5kr&VT*-%_| z?5|$+)?^-@_3lEpyiC4<(r$J6X8B{4b$fcN=-OIq2VdtpRMZ@CaO}m;V197uL z$(kkekLZN$uw}yOoBV=FyN8EeeeR&f#4Xg=2^mB~kA2SN0;U9&U46P-Y@x-H3d+kj z4gGnS2eHob_%#NQYF6{u^h%YKmQGC^?FN%x*qv4Q{CQ|=HgyZ z6o%yF_s(`TuIg;u)O2;>KO;MhiVq!)*Tkp2g}?Rdo20pUt{pk5{&ka#^?JRyW{nFu z8XDTr+r#sln_EQ-zC=v1BPo)-H!g~a5vdkvx4;y!(0=3=a_9vGS_UPJWfc`v-@e@* z8ve3AZKWgO0WKT&JV+t=QxHTmdS;wWFEf)`7e+PTGYWW-P9)VAc%C%dAF;%eQKseP z5dgGPb56-XwktZhxR^ApEwo`5RyfjC491TShN9oS{PIN>pONRB*+8!NZaCX(k4aRm z2qcQNHG^5XbX5+m{+CkPEZa+$pf2@=-82d=4}9l?gQ4BeY~WbfTI;zYDJRG2xPP_c!kBjV4xHtK3r51Jtu zwjzpQxX5Bm&Kxw5w7=oOWus}#Hcgr%#xo;-HEc)X^FpoX?8Cm;kyD)}i~cS2pihIV#(I}(w;B9&a#$OfeuC`>J9cS99@;67B@hig1_LqyhkcqHfQ$PdEO}>eA z>3`9%VxG+_hct6c&K$kg{lSTj@~7T4mH|DGJ1!otW{8!8Tg*g$$DT2yr1|^!#+|>825^E zXE@4EVRT63>BZM3SLw*}wR-)1KI`pGJ{#EUZQ=J13&HQ?)#Sd?IYe{;9}1=EW3iW( z?1h)NcIL#a>KkP!Q-HM2(ROahJ@>iJYBZ?Qc8)~^e65mPWN*ut-#0d9Kixe&QVgRD zKHH0}n>?vIc~FH5y(dD?V(oUa1F4Dw>tvl1>#~w4_$rU=h)PyZxN@Bl`)x0&NBA+hp$SLD;}=S|g`Kn@b8OMF1I))WLKM^pL3^D0 zP&SHCYp^5uKFEfAhhr=in~T*v>oDU&116&$V-wS$nnF6D^h-eGr??$ zQH0+uHv9g$L?!YZ|3=*z8l(I6YdetL8yi#K(Ir5oWpKev*u{$CUb*DZ0IkPDCr<8K+}1qTe$j-d(?>La-AJ5oPRT84&l{}`B}B|yWhce-Z#*XKperR8r=f#x9dY~u zSuQw#7kP}iEXzKKw%m=BJ04q$C^Q$8l?&Mz{oa-AbpnxMY>7@6>J$z|XyV?jS1ae_ zk6?iSdH$i%%H(COXHg~R4xYcjd5ThQXJsF)JxBj-r*~?kmDPnDMJ3YK5MP%aJ#ZRQ z4kTr$9Y_NhmL&}=9g84)g8b(3X0 z`}Uk%{d;!|oW$wUM%(1-Dh`YfTF?kg&HdEfFT~xlY;N$KkmUy`k)>)0|6&P+y6?>x zLs|k0EeVQx)SLZ8=D7UxIhp(RI^FiY;}1Yp&-*B~!p>RI>rJOn=jz>-BzRmk06Q9O32}$|_)p zmQky`V7v3tQ!mNhsLs11>TY4l$Gf%jk zGbOr1p>EQzx1IcGFv?Gq)#ZMtj-?HDwG^sVd7doJo;Erz*t|c)&8zv9e|NTs2svNv z0y&vmDe5(HZbYbqq|1}0w(d!7l%g78hqgS{YebM9l}ekb$o@VgUoNLV2{&SX^}CMo z%6rAh=;n(XCrMBKd6c=w&q`m{Uo-XK^E=OviGQqXpS@H0c0T@a#8+Tv{OZlYDCprY zm!quX-HZa%!h{?5w2im+Le@&17mNo@xJS)!QIoQtAMq4odL2%)7M7GX6?$)5G9>?c zcOmL@!p!U0*^P9z+~out=Dh0Z%(O}dzQwMoNfOg;q2Vu<7<9rCk5nU=uhV92ovDYw z=O)j&@TpQZs@UhfSTl9y?OZuRSLdVb?$Hcy{b=qxQ|)*4j`1{(y!rt_x9th^huv<| z(#v&0s}4HvSMLD$abq`g=flT*QqN#TpU@K%Oz%=Vw~k+7mTC3zYsNIRwdn~IzI}^@j5qjl=WiGQ{+7!En3-> z);#?fsF7K7KVl>C%YnS6g;l`U&sw*Ciy+F0|Hg?izt3kv?<8exwN5hWWqwWEtNtUb{tcGO z?uQb~yaK;cO`L-)UEkSroUTS{J0(X{LPie?R*q7uqe41&pF2tKjd9sPzZ(*$oOv-o zxX|roS5}%_T3cOLBG>NY!HM)Y_H${6=8`vVn3LQdiA$-D;{1ILQZ<4|d4BH*y(KYo zRjqH7s2YOgRjO3B+su{hPPMQ}1}XikIG2)~u_;p*ngO^w`r?kLBL>_Q0z7cX8F| zK)5zxmO3%JF>3zTYb?L!h4=*~i%`ciu20mof0&`=2c2PaSPwx2-GIGe-!g%Auy@FQpVFWb) z<7NCz`nHgIddMnG-aEYZv72kJaC2>9e}i$^;KGHU1!-W5B>=1+Tw?AS``ZFuQ!khg zrsU*2se1Dj(tOx%kJ$IN!1Rms*|LJ9^q~jJ>$VW7#w{x!m7M5&X(`FSw~_@O$^M-& zOWTTU*>9mA-!e{Co#H zhZ2W!3_X8@X(Oc>(7Jz({ThcfoSW}`O5hD78Z($)JTIv*S6zGv3)L^zT=692ryu+2 zbbRvur=ZBiwrYQXb=UrCxb?C}nzF%@FAh;!8gW6E7oH%BtAD9{wj&?2lQ{|U;Gn<( zKLGlFud)=3=P)`G=Bb2eWeY);*f{c}yQy?$K)MgdZl(auYT(4yn1X$fcobDIbJ~>0Y2v*%2YJVJ3Hs-Ts zYGl^NnWz=K9+cfKxWhU;GLjyLjsi6?T){L56z}Z3^3}um`opBdM|2t+%d*Ee9BPLg zKbz(9Km1VqzIvfWjENXLl`fa;2JHOdl=i)Kl zHilcFKcVWH-gHNyP(;+}Txa6vyIKhpDSA&PK`3V+Lnx=(KjRz0?ixR`gC2TGbBajB z=k-DLy0ZrXDmhi!KjJCFygYxcC<#F#$I~sX9;U8u7G#MYyUz0Ows}E`Ky9LPMms@& zJ1C>|GCug*=Z~{hjxyxsS-@HPf(@Xgq;JEUuhIb)8s)n7k6BdME`enU5q{ZPczzMd znxzwMPUMA+)qrvyy~c~p&7HCN4yqeO*v*_!V`giZ1%>kJ=af0-XA9O%yxbthr1)q2 zl#+UW?~S4jw9f_NWYyprCQD|pDS-gCN9vD9&Ca!H3(H8<@dl;5#ojf!s`yzWDD zUY!d=#;$HB$en&E@`;Of7t8VRJK%x|4q##73ocL5madUe;L6!CMjZbsJyxBFm(^)8 z5#wpsWn)vb^tkQ&DN3oOrRQ%a5Y~E}whOto>V7KCBUcY=)%~FhTga@eCvj;0rF~kn z*CT&O>h)e|3+NA;fC5OAl7y4xYEc zYZ+j!e(Wfb(|-;Hp42V_8$3f9{9Mi04Yt$zPWJ+jrYouNSZ@xEJc+Mx>8kf2QIO)d zY%j;!*x739Ti9cs+vcFV?R4ihJ_>dlDbBo=j0|^8MVLy~u<_!~#lB`Gp(ZDQZ#;q* z$)-rYM>y`{lgVC!Dg5;N+tsS=mrDq3?Cp7nH=BMu^-oT=!5j$)IH7w{DFWTXr8I(g zm#qY4fV{3fBkBh zPJqv`+r}x%G~MfZByd)rY!lJ3LUMs7pu#`I zMJvvGlxtxFdZh5yC|;qXb@PnEb@A=oAJeuUzAxafhO4A4^bbg%4c}j@+5WVRGwAqc zmiuC^6XxqjJ=lo?kId(aE_zT43yTn(V#YLcN!~M7D{#LatP>C%>4BO4n8Sksg}K)? zRCA@h%h&S`Q_SV7fe<}&Ina;BE#S@2fzxz$I$Wq*6_*?NXkm)P;ClSoqbu@{bkZ{4 zrlDcXLi80wYq}gIL96zC`NpiCH19<1K^X#dZ#AZy=C~#5*I*>**T~Nl#cJ#QUUl>= zGc(2HnAGX2tbZe`V8uB`KPl%svCi1%cN#ITV2snAJK8c)D!MqmHhYz^X_iadfs{P zfDd(Nb<&GcN82BYaJ7SJxrmP0UM+$k*;yYP(#uowt0oKGK%6aN+B;Cda53GyVSpX} z=4Jca;^y6pI%`L`#dBXF+4*J?MP;_m5vp1WXoY(Ds*g8CnDL&IW)#d4ej(luu24>pIb3Zfo(Gf6UOR31h zW_!iBWWVM=gFR;$nv+B8c5>Wu!guSYe$R9p8p`N}fg3;Nop=?A6tV+|HvIDYI;FU8_Y;co+!nifU;k4DM9R;(Mu|KjRne zztPdl=#~cOx&M`n4=A$Z)4E2**r}>a1d+zoNe4F)MT(@e9?~eflhpgK46TQ=USJOk&d8uSIB>?M;n&tQdY=;~prWS8bbU<$?nth}Lvi_KH#iVI z_ZPUWSPJ!#a?@7(a_HL_Rhb^bIB*fx!Wo-HNS?GXdBP=xgfTGpyr*zPGw)3Cr89}L z%jD3VHzLwj7Qe#G^aH_%Q~wAmkwNX8Z2!mEWNl$%T=ps%6=G9cz>lr0SnPMzdWvU$ z51t`>MR=l33P~~;n3%y`+1ulIN7RhMk3P=w!P^fNop`qF!A-(8GBSc?t!Y6(DtVLV zDvd47==&&T(Va84arTyvX4;xf58#2_)X*dTX#(C}8r|-%Dx%bnd-(o^$7ZGK&)#Pu z5gx}n?h;vAs)J+KpH1GZa6?1=UPhO5WOn55BF13%+en;*HkcDxi>XhoNji2NZj+^{ zX=DE@LII9^f3J+;s#$d3#YJdsU}80wY)F4` zWAnL!+FFWLhD60H(eMWjdxftkg+scks-eH10Dh+;EDaYQPOW>vZfLVXI&^2Z71~45 z+4h}y0T29~oew$X7GplVm4a#sQS2&%?_{$Iqg6U6DanKPY(uNDhDV0+eSX$r5AMBC zPPa2wJRDAfD6X&4mmf-*T#5d2zG#a=w=1@~nTrd=4e?~S8y#d*cs@)16Ne=<1nMK| z-ih5unkLy)F5yIp#>6afsdYwQsGv$A+uAO2H~!@Zq-bl=yzs&nXNP6Ok)XLZHHODGo&w zBfhr;Rk)K1*ZcfCrP)6ONC<`_i1NCkV(TYh#cRuFODxg~8(kn(*2@jUy6x~%!> zDJk!`EK~_$1Y!Ev1!uRRp6TIMN>OSY9&XhYJE_!E<|uRS_QZiGu@Kz(2k`>LSEBLa zm9H4{(ST|Nq;2<9d43FBV?=5!WK8VegfaqT0C&49HlQak0Dp&$tKq-IsRSWnr@Mng zL)`ORlu%rLYim1*n`bhAl0T5RlcFT?oRxH9El=E|TJGM( zTq5e*N#x*2$j4E)$Qycm*Xd-VPKQ^(=x;kbfyWAn{2`Tsn40_={jD!R`$F}O>drYg z5^-TlWJP3vEt3gT$6)8zwpml#L|ev;tWB!4??wm>yS~3gEDO__q?^<6aE6rK68=GV zRZ$UIAR&X7{PU2BtDcw&!sOu#dtLRpKWqz+-_9l5ImB4%_uW(FkN+$}P^n4y_G_6c zmB@loB*7tZ8x+?DlB}ktA7J<|+H8pp-6dlP>QIihwxzwK^13tBgE(JWqNCw{OaqOd>uFjZ7=VYh$opsJKgKr z_qQuWi(FM0|4!+aEM66*C~~a?oOhyP8^CRsH;wV8+Bl=CDu2;Q;Ckie)>iZHrzucO z&7DW&a9iKG)tx^PdD03`EF~qSpqk-7#6Fd6M>parNG)cx11kr z@u*nRQju~oPnuQ5U0p+i6)Fux+8r@*#3*27L=O8!Q&2SydLRk0bO6=A*|Nrm*F1XS zPE8RLgH(Z_+Z}aPSIH{Afrf%fN;40~iM{_;E+m#nWJ`@U-kqK!N)#Xw%=D0gypqk% z#0E)QhSp_4Tlm%XnG^8WVQAM`_{?1_t&WBrRVGimKDGf z?@@YIW}evm{*KJ=k9_j@fQKpqt>7!#xwj(k(B`B!_g(>aiT%B6{+RK}vpHhXSAjj9 z88Sjz_vBxux7;&Untofk>YKBKVGYZ>*&iD!{=b!#nJ~LpN)?zHzuOsUNdX(rZtFMi z-pvjy_j+Vrc2#meD!AXn9uOMYDSP{W=7xDbY0ZTPg+JsTtNZv_QhBf0ujjxy@cZYD zL%HYrv8PYves=6nP|dXBVn1bzibWOm%8M5reSYeOsWLcAFS@;a=~C9x(kS4#L*wlg z7dLF)Y<%mRGSJ@tUtg;y0=qtM*7!{BI@R%Fd8*g7oQEq4-cHgJ@!{LeuD*HSbiHM} z=KvdI%cuQgtKN5~G<<6qD3`=T8 z+5+_i=*1Zeb(8C*%$BGqE8FsxM)3lBc}|Cy9RLJP)T?}xn z2=(4DBk*u>`I@Qv`&fYa_vItT-@v;6A+R7=+Wk`f8Dzxv<)hoc1^q(r_x|oHF$9fP zfdKC$#MleiqFqaUPR_CvRE9`{$eFx|@evo76f=~|sct4fhN&R~C~2sBgodt0@X9}InH+iFTU@&I?uDua){qDSlSapYV}WlW2gQMt(}^4dq&;~`n-4NS<*}^$Pg#Kbr#&89dLKJ> zS%7&tu4T;s>)5fQ0U>>0wW>sq~$|3G6nrwc*{-^SdlYf!!-{F5X zp0Io1*^?^oJ*Rswq3iAG`m9)#ohqeQUeal~dADnOZ__`%zu^zy!2a{M5nkDrJ-Kw| zUclOOy>uBpVPRoc2xQ0_+E73rBPhzQYk9!_?`wf;{fzp0CA&UQys@#d6l7Ftc6L@? zb~E=E>;GQk`Fv|>q%p5dKtMpf(y8~{LM8J5dHNY+gWA#C>j%?`Ut3?74rcf`5gtu) z{_g{(nv0B(KFc-p3Uwzk0+(yJq+Js$)4z)U?-k$PK!c{QJup#HEXdDaxJKD||NlOp z;cT}zN=i&fm|lV%m4TLbJ%M*LINYvS^qnvoNW7V{~O~=cL$D);sM8rocgIU zp@5%HaNNblzU_8Ze$y8*W&XW20bRh@g@lE*PM9Kg#^Gi_XF8k5s($?;V>=EXKHA$`xDZ z#H_f|!9ml28Bh1A=_HVtn3${Ui~iMC4QUw}1zGuAhVP``=g+#c?ALN1$k%8a7$ghk zt~jP{!C)9PT1(T-%`{-)Wel&Ihx@*Q zJby}+NF}_Z4D<^1|9IN$<8h=iWXf%1KkexYgDJ>HroMgqr^EBJhRZ*1aH)7Dp5s-> zx6Mulo)8^y>N0G}QpOY&d7%Ea3dUf#3gN^*jJ$xJDvuZC?`P&|pBvAZajTS|P&-$R zqz}H9xvi%oV6e7FaQOR^?A@d=qeALqhk}ky?Tqwq(Fwc3%4xljx{JZto^>~y=@E^U z^G6SxdyWu2%m0K<>}INf*H1Y4#riAp0Bcf2P*77CEv#@5B`HPkwCm4PkDOWc-)y~B zMnfEJ`*n167|wk@+rU_Kb9Ht$g)@%fWC$YOPf-2F{fTjLxnCvTiR=X>Z_z1bcsy)~ zNW|3EYJj0#o%uI5JHM`^IvJQcITd!mLQpYVFsIsHfm;GDOVz8|k01XiKANpPAC!RQ*@PSm~ZqL$2G|n z3VP<%n@sY9(HJwA>3+|i z?+?5f!bFQ&=n8c+oBRAq`xifTXVuZn%#7v?Y2aFnEym*1+ODPhFj5{Cpz_f;oZjj1 za1r4#w0&C)^?RHMw<4@7U^6(6!VzMiihK;1ugLBOpVQ)7Q5EmkR@T zfK@KlILyMV(Bf2p(e47HWtoPx^pHZ#X-j9Q(Y$kVbvN%l|Mg^cX2yB=*JSPUo>>KY z)k7SfXCSwOtT16w@a^qo=|Qu0q<%p`0j8#0{i@5=HMp|2mOiLuqQSKYYU<@xdy<_8 zH986(8k8xjsj)4Ly;>|agJ@eeFJzpuU73DpPU0htuNdMObZdlZ3j~)LzI4(o7yQ7D=@Kti-OWjx| zy4v_I%8;Y3Gm{*gSGyP%(W7L|w(0BY;sQhMjidJ)dD^|l?o6ymx`Y042ffIYIj|By zJ(sI{Q^j4}pVhP##R2E*UdWxRH@_0O%StW1he%#ZKqX6zuvxRm59-&8bk zDM;DcYq0l)P1bN_B%=p3W<&#@q-mV(G|{w9@bWsj@N4pbOBtRYZ*swR)TNM`7kQ_j zf|yt2Qf;(29o`RWg5{n(dnJcmWycVWM!POd$2F;)0(LOCm?Pjo&gg@J$wu5*Gz>NM znowyH9vXesRg!#Mt=tg$oK&9``FoM`J|;4d2JdH*~bOn|iNH zNE4(MyDD4V`fKbAjlEtgg`ZyI=U-&Cle1QDX&G%i;1;-b3zM7sCBQ;rz;=@G>64+P zW7iK*6T_@KOPjviFEd1}js2|e0ejS$lVJmRTTfV9QW}PjD{){mlZy@T zt3PxQ@EXklg;2Mliw285Eq?NK{~8cHUp0eiK$BUL-8_lKnC8$-vPY4Mm&M4N+9uV# zujs=@o@MW`Qq^&%@jI%3tkG`uc+9(@v87WO!StfW}NP5?=}w9jJ$Bs zddSc&w`%ZmX7HRd8@H07mR6<$(Xen2uz1qq&Eg_0>BEeXwI(t~+MMQZl2qXx zFa3P@7#nXKy8a7V!Q+$Z82&I@L6J7QiSMM*6KDE1sCL9=cGaR>wNU48zb1Rs6mQ(A zUATEbrW|CpMqew8I%}WrtD*6pdAn(^u4zD>({^TDJ;Gs9R$19LI=U^B>{(F0THQY| zkV!VeErttj^k;*Ced8N{hc>4!WCw$Sa7EjxY;u3G7*RXS=FoapKgu zK>=^a;+!Xm7cM9(!1jykU5)hhG5Xh1bGu%F1q7N@!Q8j zHigVm>%D55<~JMUi)(%@1Ckkq#6VQ>2ZJiV{Ffr z@y?F4!P>OE6f?{;kRI}UFnIWgq&%;XoU%Xo9^!Dj;^jBbu0B) zJkeZ$pZ_~8sUBPwA0IDm-|8b~Q*~cnUY<+NBWK-k@6pqzPYLRFo!`PQnps#}`N26- z$@(XeGO+=+j;TshzTe3U}n-+yd#yiCvnrkUa2&0gh6m1|gS zz7DZb(C01NeGsd`fGhE^UA0`tVwRN*p$8W>u4@|>;-93CG-A{A9O z*lL|dui*=w+xF^)e3Z=0H0wv3nk;#P{O>1ejt-)A=_A(I){lP{6wHgG*7I|{;VFiN{|J(jCA`DKD!AQ&^p?Qr3{s@I=O!T@C68Pd(>iTPG7tw zS64eTp7j-aRySKhtvJiSe?&|RQ#3riN5e)$D38{=Bve}8i)<>{{l6K>=kSE|UINz3`V!Ft8FfGZtlo*2hrgIjIDaHoPrW>^e&dgT0A_Sc z8g#KU4i0_;Y=mZZAmm2kBeusnrtk<56|JRUMY(NYT$^THa3Tq}xPfwY8c}IjZMDM% zl5UuRxCcU4l8e@U8c9oQ2X2{Sa6`zhR{crd-bHS$lWqKq70@MRH9|Kzx2hg)wAo?W29C$w1h7zRhl(xrMIE9%F6o89o+k zYwHcFVD`dLGKu>6)j^Nc53C3HX!6BClCVjk%hK@8p+QrfcswLnM|!9gVUVhz2Yh5l zcejb2p6~rT#tq6n&I@!2ivgwWxqFx1P0L+<1m}HJ+mN|w>9;E2oq_%bc-#7ZQZh;2 ztujq4|Z58Uj`H~Y8_0tU>bWeF}jpNzD%waxT=8xHpw zc2YutVWUrDUV(IpA$Y`V#WL_Ss9z$=YRy zSYg6V?(}mO+6o0UEG{e=Iu(+xPtwes3PDG^*-bwro50w$HQU971rMGO(+uUqvrftG z4V&gpAOcUo%y|l;O>dG=C@xZ$mbMs{9TmspB1t5-R1gW-rhOq>$GdAWzCngJP);s#yvdOMC6g933v@1~9C zNRP2{(_HGskVAqXJn-zmbp0S&dh`HLdwpPm%d{P6R5$9g^cbV<{suhc=6T(29`2aNFMS;W{+PYiT={-$n=2Y%Y zIC$Fb;9?|ig+a`XnycFS&O???mlxM< zXGd$N?T3b>oxlGK%2aVI0q@X{z8CYeao>Bm(sWdAY}_yX_M5HQl)<8};fycQk%=FHn5ZoVNKA}?Eg7f-l=SrI zNzt1iEge4ELpM6);6g9dUst%N`H^1loD2`AnA7E$Y$xUPccJys>&kWXr5_4WD=4h78YeK_xCG&d+; zm{WHkly^C7;d*cTvt_?|DqRff(wu%&xCP{K3b*NW`e?c8%SW}Em>=XJ2B&ECtUAW{I zr66NmV58Rlgy|^!1drO6l!sc2Lk>b`+9n-423;8QyyH1(X|8k%p*J-~F>c~ioV&Pn zxtKDan)J{Rqg|~ts<$??ps^Q+LfryP68*vny|V7UBsVR2S60>l7+iBexorf~KY$&L zWR>}vw|61jwD+<{y~%_lXZxkL zp+K1<*V1k`4fqS%eozgV(_;dmi_t*}Qtk40I8X@Q`4Z!Pq!FW}XP4rm{|zUz`BN^G zt&I5|%e>)`&6Hv942!ug}cHltB%3bc*juRt`}&ztgn(SEsQUWw?!= z9=)T3C-3z@q-oIH2;dS-H8n#oT)a3mG9p|?Dh8}gfZyLVU?;3YRh-m^)XWU!m8WC%-`SVPFPws18$C`RW_Hyn)N3+7Ei9;x}cExzYUy5_cCnz6DJQOhxQ z&D0vY4+*fbs&>zIr4iiTc{e9~t`hJ4u>`eUTsrv>a3su_+Y-0Q#*D8-gzlm|2+ZV; zzO%sBuu+&S9o!oA@;cMEWZa(XZqfi&Dh6Fj?8sKd%#)O+70)+9I<4U$-IBE{Spto5 zhOC@5v41IzWCjo|&vW7*jsRYVdArA5E^2qV8Q6m9Y0J9*ES69;>;eKZ%@6mDC`A>( zCn4{Rg&7r7;82U2DWf4%(B2uTFkYh1fjR5+y1pa1nPEfI*7L=Ifj2=17ZTCAPOWlr zB}VOAsq!T%#mW+KjqWF{M;BA8Ykus4!&}AT{hiaegoe==rt`bv*Jb6>g=)en3?G%OpuN8 z)Iw>AsxRKg$6rWFNht#ANkFks7;q}!GEh7ST(;2-1?SJ?KX-WkTn_qhJR<$;3UFFS zX-&)%Tfd;PIZGuYlzlD-<>l5r>;n>jwi&pXC|-5}lXpQmJqevrqN~@?SEK%xhr&Zr zpU%sBW(ESu*9AUF!l$&Xy=+S3Q>dn?H894>wTm|MD&_aAypxp*L8_yLZ=~_|^7RJR zL~K7U7dzO2vn_Gv1rXzYxy|mNnv;HhV6^M#M!!T~w21io!>+2`E5+!Y- z^}xP9sD+=oNFWO|_ua%Q*bL;X+18oaQF3Bp&IKs(1SnM;5YA@@Z&`9lJgYuwxTCyz z>Cz=1>zCM~1vob)iy77~ow?vDvM^zt-?tmDO>m8q98zOteJ@`()loh5jDB0p6Sl4I zU6~duTU=vlY@F7=*6Q3*KyYcf<^bP3gvt?ODxeF3=|`BtJDk>^^3}kbd;^KjY zfi@v|0ZVW|Vn%#ve&TVFks9lj#_hNc*s{5{_WK@{!1#(vZ{L!`YU6lg9CQVo6vRMx zXzOf@wDA`2uiIi2t;*Cw&lNW|8gbKk9L{wO{H!tPZ{B@tDog4^Qw?@t78bDv9 zSGK|1*!aon=V`4EZ3#Kzy8EyDCHqf!tww!?Ccc%-^eTx^V0EwlGQu&#JKyaM%RO~Q zBi2YQxWUyeujYearp$!mqvlZdzF)bi9r8{wmzCErTT(jO9i+tcLmlxu9?KWSkT?%A zf;t*L5}#jd0RGW0e=#wExuB_s(~mnz>N+819Cn_|u^#)|-o0)UN$a?2WUPQzuPUK6 zIqaQ(?S`v2WF3N}9Fe#yhQfm#>^XeG3xr z6uk1SG~Hqs{hK|9OwG`kwNEkE74ngqF-7P`Fg7~c72dPfnW zx~I(p86n(b_e9Tf(Qv(s$^9Gcdbf$3GQ?F|RO(24MCm!G2-vLyOcQ?+XumkU=j5m( zLNuF`sUwZFT~I94oZvLQWLr+IA7`Oejg7l^PQM!47_82_61C+kLdkJj$t?CRwZz6d zYIP915J8WQ$NsEQ{b6#gqiQVeV~u0>gdIWGn^k~%rs31Tg6d8yd8>h+i~_N9)odTR zecVW@^QG%nF4TF3JL(-cVaJ`L|DinPX=5E7xFd|UI9ll$3rc>DrPT+LZ`%4CDKs>Z zRLwS>%2b~5L^@QJ9<(?HJ|Zu68P^pNQNG#gw`J##QKbni%Ns18pm87cK-V z{h&}cbI$srnPcw4l+N4^stboN*HBep)dRdr#B&D+TUE`r3~}Dq3#jxdl8ywCTXmy#{La?K0X-T(*CB^hoh0$Ce5{r(b+qqJ* zP*pR}1qAqoq~+C5oH}dz>|uObx|OM4mHyr~ec;ubQ>G@?$cleDpfj$KCmN2sh6@(Av^!^;zChr^=|(rwOV|VF8X3U2u)Yze_sHBiUB+ zStN~;;iehQ2UsR~Ltyn^)&)l*k*5sCJlBvpjGGKXNK4);n} zeXv8Sfl2s!M%Y|ddf8GfS!DM)VKEWgC&@`w1zQwEZoD=>gb?_J=_Qu6Lw>K~FLxQQ z9@84d60*rTHKg8q5y^DLjXHJF83mUe27)-cohGop_WI0TOJo%TW!Yh{W?+`7N(!0~`$u$3 z5UqSgr2r*JzM=dxy8F_c9x==ehlj>XwpjOm28La`tjJe0sD~Y50vP(m>0jx4N zy$)P_8C=#TGo&LzvRc2gLU5<0Ao}~0Sfv{n>SI;IqBu(vpUTRj#b=B>LErT#5z6dD zy+?tJ;v&nJvHGG+_2g5R!<@!TYk&pfn>(kl0=*jB-Mx!Ao%S`b%a506ubP&ZMzKov zY;ZrM%A`8k>b}`b3gi?y>fNHX_iym}BCOA=6o*MWEJ`t}TfpUGj`U{&MEcCR9?0!- zp@+lrz4CPjE!GmH;&Lk|=7S|*Hb#caQ{b#hKk&yfJ0<1I#J|X;DoyTn-r??zn=o?u zjC-*679qohmv(Q8x|NIg)SL4o{f~MmmU5+}_k|wX=B{g$wvGyEvO~ndX}$=9vGU#A zT-<;U5hqF+_H9YYvX30HSNdP6CAqplOf;PeFDRYn`k->3D%`HEqiu+(*ItE*DEA?& z9trmipc7~QWb1ki(y&UqaPdN7d}2xB41fC=npuh`4Ka(xKGf(g5<77?(sXPCw|u5JP;^V7j$!lQ!K=#RmD?7Dyxm>q z?P*4}K}kb350h1^ANYz86LY>|2W~d_&);@PF5TjMEr88f|0F}yYB34obp75#%#}_+ z;+H@11C=CKn^k}MZ7T9>S-z8O2ueXqn+q9!bW;oIdlWBfnsH0IiSV#e|L8SJ|KN42 zjZ0LAo@nhu)mpXD9U6O7-rUP)-BrDy zc(SAha@}u%inxcW&4N!mA3Sd#646gEZFr!1m?q6lIFfPfwaL%+QSGdIez?<|)*sNO z$;+}oM3lWU_9BMP{)oAVem+{D)@Bg5h==9tad?EW_-r(3=B4)3pL!~yIwA*mpFDzq z!AZo4b-R0q4noM6i~$IyCq1t?2@$YAG>=$bB@0BX4er8Wv z_6v$a#!^VghkA>QD&DVEzfjge>SG|V4Dp}@NN|A~7xy^_;dU1haY{keppP^G zU)0cGoAqZbKe_>_Cavj)gC40!OUqK7$wmO4AR;Vm6n@$m?uDs1b#^f4)d}f;q}7Gv zPv)b9_>|Sdv-AZ7ZwW~YShk0UYwPG4FD|l7;O5mYP~1W;x8o;GH^eVRh~gcsT@l8jvzF%2vx%6c%CbJ(d|LX)rX0e)1h)~&yHs~>8+V-PKdYXh$>#VA>W^BC^1jqcyM2UXe z-86p}f07YUm1B_|&k6k~&Yp7oa~kG=86d5v{%%74eDoX0 zcm+wDmN4;g%&J;f*1XYY^w-B1$oK2r7a6%*xQH%wyMUMHx>;>A+(F<`8 zYoePbI=_DM3!i)N7UteJA=l0gZ`Ojv-YRkcOS;P0klPts=4dO+ie-1+)6Pm1ML zz5Mryz9$F&JOiq1l#EN#m*CQEsp{_lLZW=1`ze z^`SyiGHGE|sBhXx+bdq7fqS&lk8mMAp{n;fM@DLV$tvHvFP(zWQEgba+pJVPG86qc zUc#XR?K9w{k`u1qJVR^>M|emJG(+62NnVo@qv&L=}p-8J4CgJIIofd2xUr@}qKv>&UA^b>&QVQa++u_u{$$Hw8t4dM5@X^ncB& z7)CEI@M!k!Ts2Ga7GUG@tjXuB@}i#`($W^K*Hs<)kwfNf$mKY?*WMKAO`nI)GkR@Z zjMj~uvTs1{^P6ZTJBJ>GtddEArWIWjh()gQ93*N+K?XXSe=1ou2e8VYqHA}mC*Qxk z!gRsd6&xq zkIt#PK!5l))3A!$I8qn#{3u3qvSuMQ0qqmv8yvtj5O2z2Xb2|ysdr6rGZSwAW@8J5|iDotscW8fZ z^QoClpT(bF4qV+Jahl+OdaxF_0L72SV%6!~+>1*aLT*3rNAsHG>?U^;2R)IAWMgF4 zoXBhy@6fM7nasF^ywh(6Hj>JB8OtT@wOcFVeRLASZhHd%xTTQIXs_JWw@L~6+Obkq`byEl2PBU}U(fRDzRtLoMTYi&K_=B~LiG!F*#eu@@ zH}X!4GS29lIrkrw=kt%jvcCAuSDA>uOyWp4P~J)U7&NyOgSPG!l{rMZ$KnrKvRupy zYV;vL>}n)}*IId@rs4dvoV1Fv$KFTF*JpKH4}WqT4A&>JZ>6i*vqs=P{qUQ7aEKkg z%?jdOi@kS_`iBGi-NWMD>VVskg>FREgGb^GAoLtexb8_rDWg3bH@gbGa&6hOhC6%7 zNa_|4HnFg@29Mf>$o<9%lpPL!+BxR7(%&L8rEQDyRWiwt^}sFao9Ne1HwDLRH0oiw zj2y@wvknB&8+oa^x6vAxmQ!OV?xTym9?INyvC?n5|5!1mm=2?i_eL9DA&8eo>>Kw! z@mTLZ{|Oin85O2|<9ICVRCgjPY8Q1GXQMPG^w4KBbp|6%J1;;Klb^bDqqzevQ&4 zH2PUeO6+V|^6n!eofnpt68SUzCIZqV?BAmdjw&?H@|M0ibq+u%?%QP@IusNZ79%T7 zw6xldHS10m+!7iZ%hPg-8Tz^O3WHWETB|S)2AgBndONES02)X%FFy27I7gBx$}h3u z4f*v7wz99wW)`|Zk8Hw}>8F=0Rq?Yu)-%r2bS)|ad3#r$<5js`25J;WWybJGYh+or zajyvNYiRkI$XlytS;%8Q%Mr zGH+|23j9h46#&$6`Q4Sgf;BTx(pqKmzMr+AW9Ih3J>&ICl+&8BoObsFpCsC4XZ^w( zNGLf*^mKWrGC+80#)%BnzS3COfT78GO*PK8%hKfQM@9P{ntj@Jh`>5`uzv&bqjrE~ zDREpPek1OjnV+m}Rgj4l2*}1P=4EXr!R-3{#V@bX9=aP?u(bJ$No8p>n(fOW#S&`j zP)+0*$&^l&8YzD!?i%W?h<%2s6%K2Q1cAYvrg!O!WvT%!88Bs1#;X>~jo=oU*Q&(P zv1r^40yNOtOcP@oP-N@^y30fCi>pdtXNZDLe{47D=5wVk2HU&3;= zwbq1~Sf-1M>kIdx!{$)mB8*j=_1I8WV(Ec&G)B%8i^ORT8QK=SI?c_Mk(Sfhq@u&; zT`48!oilnZebCU)v>l)fuP9rcKF#CnO=3i|0@+hxyB8BAPQ#bW)e=x04 zccXU-m(`fLO~?>Ge$T4WEo)?im8Q8QAq1(I?2>`KUK__tZ)2eYX=7c}pV|-mec`U9 zxL#*5n^jvq-T1*qwXv-De9@|3F{1nGvum6i8#3#Dcr;oY$Jo<`HI{m9)d<@`CP*%6 zUUUVrD^{G`$Oek4SZr&tM1zs0WmtW zc`P^SzunLo4o1C#@<(tD#*eZFQliO6S6Cy6HIxlpuBGx% z@x$!ji;_Z`tjL^Eewm9SdKRQNDKw0~gPsFTrT`+h*J5RNS?veTA935&6%(xL~vC01w&LFAeU zF2Lc;zyZG1YhenC3P3NaG%@iK6M1dd(i$}bm$ptvb4kLZlz7k$SlfU%6+R`6V4O5g zWDEzCgvE@g%LkYesHtYh{etK0M$a5el}>m`c`UeaeNfcJ(laqwm6C%x7-s7;kMDI= zjAvoAVFf{L(HW%eRbgym;!Cu2(wg|e2k-3kYZom8P*;G_yu|s=ZvN&#!!E53arVzM zPQg9N;1Ky+Efip_Qqd=&c3K~SrE7BSf0 zd1%?oz>{-$k6hoBgWdZ$;I4b;>4(mB_@F9-QxyM4$yprL6RTN*_{BFcE%g>IG4$FS z)zLdT@mmXRB(Wc(22oSc!zy0qmfF}ZUzn_0OH)_>f|ORbfYn~vQ9f_-siharyr`O{ z;Zia$gya;cdXHq|Zr%=E9)QfoOX+fo?H5d_TA;+N@ot@4_aM7Y_Q90ergsvr<+QUE1)dKZ_nro65T z$U;i7OB+A1klsK#@WmOii2cK|9QkRe{ z*gx3*HgLrhpU^nidj6IM;5*DdV5`GsJJ`2#g;Lf}Y8DXbNa9jx`&*|xO?IM*l<+lDH@OUBYsq<)8^mr~#75q&1G(^}g7m{u9#T{aORp}XMR(zoro#0ExfXphI z^tj<%QtCsYvYgL?N(Bk*g2QpECp%7 zx#FFYXB?cfI&GqxU!d+o4&LV94~&t}UdT3;y4^LF3>;|8_NVM z_nNAP@1CDC9b!i^r9h&(0Fb2~)tizV0O}#F_hL`eLiqsmKjv}o6DJJB1OWa@0CiCn zS0qU}l@Z^9!TaO}y=-$QVev8>#fSSQSonap@>aV)xqeLxaPV5nTS(#fG1G79JTk;Q zvD)$Bp8dMrlHUE6-oK)EmqAiJV5R8yjXNHivJqfP4K;b*80WD+ig_avP3k${ul1s#bD)s6blma8} zu}rCf`0xhm=0;KgD#ff4&4yVN0{!w;<=$yXRT&wNJ^Ts8Bc`bSwU^~6aLVFA4ffJ4;LB?-=+@~Kj`oOtzS=wntPyC`NOee>D|?I_p`8eE~X zvRv{53Wlp6t*_BA?k~(H!v2U>UVp*HBct1_8Ds1Y&H`BEStFo+%OfBl=(fGAto>N` z11P?2+UVg!fEd5PUwLwWGL*L%UEUsWaq44RLgKP7OrsgVZcDqNhk)$IxQKn{@!;Si zm2WEj(`T6sJe+DE4v%@YXIWeChT$$E8afj9{iQ9eXBVHLnYA25;cbXqHPq@LrLQ zOz(ME>ge|6-{Sr9idU7}iV`p@&)YWwWdQ8 zyA%(+l4JSM^eR&?rWYM8vbXO|_9fXe>VskBiQFFx00i#xlNoghd-}nQ@(xs?f<+U4msU6%Yn3<}xX1psuP8_W!!gz|zj9ugV z@Ado4XZkIO+SM2WQEEU#CO|HIAdR8*p@k}pU-n|vPve-XqSjW8`R)bWZ|Pw_fGRC6 zEfV=+m8SMqs;{hydc$KT4&TA2mskND;Y^^ytm0*HB1SN4X|<}Cg@uJ_8=4?(db7^Z7&}V>jD9pwciW znq@_sR$(sL3m*YSO<9Do#Zmm(MSSYL2%|$rAh3F@jc?xmX#>J?pii+79eauxdp3jb zW8hlh6@4rPXj0?1WE%DhK~d+*_{%^OJ^H>?enOIxCcrIjRhX`DyKuaq5!!{ym7@Ik zM5Xs&=_9u9Jw~ISbqm<86uq6{FJQl(Q!;+t_m%)!Qd)1~_?r#z2pH=>$8sIRL}>XS8}a{RUu zexZBXC+0I2==B1t3Z$<7?$C2WNe^JFSy+%Kwnl))<6&)pw*}wJdE0=3Lr<{3iQ<^V zC};WSFgxa&lB-c)&(MNe3VyTiywaywItchHRbJZpCQ8$mohcY^a&2N?)k)-8<(+-Z znYNgLvaCY`r!x!2a%D#z`0z)iknXOmuB9v5Rk4-7>CvmJ*Q9^bfGdeiYTKz7ptEyH zU$GLJEZeB+%T!N|+6LSF?Dnm%(EQ)To}VP~`l|z=xM|8PTjn+(?_kXlM+*k2D`4~{NVXL=L&9Vx4DTV6#*<>fzS;B zHC!|V1C_%}Hm`3+9t9Z#ga^nvuvkG+5n#K8(I(y9-HbZukt&^B2LgE1p61wy1o*d= z_Mcy7*{fq1*x^b|CN$!kNoI8qZA_LiCKRQ}7i z=TO3C^6h6F-Cot;Uo7N7DFK_azG=$y#@)5Qif?Ef!o&g52=nAS_STq|ZRLG9wo#C_ zxLBPsaz5;qTVk=a>jBWh*wLs^BoS7`Zw3bwQ;>|k$TTi{1y{GKGHKd=w*3 zybJk6NtTr4VEncw9{AcQpYGgbm4EUw;AM z(imRG)bz@`NkhI6psDLa6-chWoK$D8`+y!&b02y;ErW@~Y3%*3XEACvt#H5KfU{?~ zM>Mv=%CFN!wN9N|B1LE-Fkj23eO4+?Z4P$`@*URsjl2=LuBb1{bAUc~eR!q*%(45x zcJ{jkv`hSkJJaOgseoNacVUOA#Lx-a!h#_Lf<4@m6<>JbP@tgD;OY)QF$p;+lz9P) z?Z=1Q=2^4X7cR#8E?FcP58O+PSGj*$7!B0Q(J}%eH{{h^PI#FjN^CW0=}D=n$dZk- zxWS6kOg^jV1BnOOecJI0 z8%eQ_xw4NP`@0PoYnh$$L3ZuI$MmSzK5r2OidRC&<_5x;>2E!;fGV^thI_z1_8_!A z9v~=9?GUej>=@7h#1Vx+b4oom^@Nnyj0f3&nhj8ZEG{{Nm=J72 z6fOjG*mh9?w&dT1@{bWX(`+3utg%Sug|?8^9tLD4WsxwWG0g?#kW! zfCiAUmR#tzd!jSx!%w4$pEhhf@qz*Miwi*cV7iZ0d|y9Z#+?|)X9ftjWB6ha5~BNX zMa85Ke^*AvMgSaWfTCh1xnT>?YOrAE6<0cT0bNtl@!+_K=igT5^wKweuARyt|2v|m zRQBKUS-E-Lix(~?WyCKnY5b+t-cVO2)3oaZ30dz26tS6$E3`=^LMEdb5Kym8!!qTR zYivIPD;kZ*n;(@wD*z-(1fQiHiKOM*L(8^x8@RF%GufkGj@^502vc|c7-JLT!T$c6 zWhBv9rr5lZwy7OYDrO#OSLYTCJ~Tdl8`x#Gw$3qe7F>Zkpuh+DwhM5&k!v}J`umIC z{uz5uQWEDm?WkP7s0C<>7l$S6&nz6?a_mh6Aa6iN?Ey&rqN0wwy1IJ7G~bQE8(ZN` zAO4NW!vaTUoNWk7C@uRnRq-l=r#0~-FC8*AEJ<& z1KbriL-(S_X4~iro^Y?ar5IB)>TtO|V>@tpD2AJNVZcDe42WOdn+{+H2NXNh1Nk>I z(wct}@OTF5`4+t4IMPe80SvI3$iHse^LtoZrvtS3Ah4N7ZTJlFV3YW{mHh9w#YhV& zDq3ew=tIc0dY!!fhRj6~hY_JTY{>%i%7euk0TS_^z&C#u=4mk z-WE~aTWuRMUV5=mkkCo}{N)Y6*J=BWhlFbTEhhpIxEu43N2B6Cv#~YC_0l2q)*`!D z2|OunvF2YL95avA43(Jm28S-XaaB?Z zFkfcq4rua1K5sRY12Sk0#%~w=vM6l(_fG@Fd!qnRc0Ztbmj{OV%=A^vb(NVVl^goA z+nbNG#$c-FjyoN9WR0k*7xbo>xC}|7|HSzVu)z5jI z0F(?G4`k&nv)%%p=N4vwX7=z|Uil$lp)oP~zVPU;P++)LR#t<6@q}L#bS0H~(Z~D% z{Pn<${dVAE)%smcjFOK9@I`(+#!VM1zpkv>vnd2Ed}xiiwxZkeu6(+c_A6ISA*AF> zYDDdSx^I6Q?nmQUWNi%k{{1zJM|%I2G-Jz(2jV)kIWhzAk}M{DsTY0n*K!tViy7#P zQ~y8FF74X_m40Rxm`bMi_BF#T*KLCjrZ|t#2YXwzg+3%k5pH^~5QZmiZ^B><;D7WV zTmJk3LnBWwg`}sa17Z~Z042s0XHyZdH3ujv!?!cpHyCcvB0L^XiQT|`EBPg=Ri`3u z24rUuy%~SYHa!9+&UiKTV&aDnIm}-$7?7~n`?3!}-EbhmTn3T_Hz}8|BX9sK{e$rz zv8^aiFa20pV^)@=n7F9Xvu77t>^Rk(varC9FC-R0PBT0hxpl;)JM70y0l30wR#e6y^j6KxP3+fB;cu2q8d7 zLK2ePite-b?sK|5`}^-c_kQ&}@URwZ)mp3SS5?31eT$B+$pMT7x2u7KzVNEz86Weo z+HdeC{6GR6Bk--^2&=S6J6K5I_JgvQfzsHCMdUss3Fi?z((>*s_pOFh*!`E8k zo_pb_wGm(?xU+nvn%l?yk{JPb(C8(_BU{Fu(LRmv39-zSQ6Uvl#PRr{Frl$_2#}~NYBzzUAw;-I!QEH0B(Zj;knlZr51F$dt0k< z;=LmwZ+c(=P5O9Y;kOMkM@(Ie!FXbA=;QV_v|Su}-v}_K1z_0f01z^E)~o88!nQJ{ zXMjqiySuv)*k|(cum+hZKt(Vt9+#klbmXFdkM~Q5>(&5D9|g?7`42t1lNo`zo+ zcWwXG-pnpb-XfGW&+`pL@x^QnAmVu%q~ZEH_-5?T(jfN&M98F38x}yxNOlAf8!*7| zM|K$udh|d6K4Z>W_j>@(DQUH$vX5Y?^K4}X%txcuh#(pd?IZw6(h{3aG`Khj! z>_0Z_NXAW{tS~e(u|nCUn3|fUrLZd4?Bjs&MY}5V4Ve4SH#Xk%xM@1jAuX$EpUbPv zY-=5AYvd8+=;Qc-$6|Si9`-v6KZvxl0+1H98<+4!MMYxx1%R~#=sY&OaL(NHT8wE| z=ND36HXgst>9=zU&z^%;D#hb-OA9RIqO8uJe+=vxGc>v;Qm(*EtmE9|_4f|9d-_e1 z?2x{GzO-lqxjBJo z5Re=NwrWMErKF5&&y9-n&45+=Y|EF4Xz@oG8TtE#7F1N6Z;+Nw9T42BS^Fr~XwTUb zPl6Oef8dz)U+lLPRT1K!7k*%C2HvMGi2b}0#2miHMiC_4{(&tJRBTOP=P=G@)D5L+F#Fplk#!_J}YtJ z=pBMMHhL-5`gYeLX%Me^4Oweo>E~yj?e5|3ei;o*E7qQ|KD&%|Cf-dUMl%UB{|TUr z0qSa%PCW%r$Pz;Z0Za?`9Rqsp{tl*IA5rWIJ>S{79w#wTrf1ab7k_iK9kSt5$Sr^g z_5nW{S9{xS+8<-x04&+ThG+~h#V4s1{j;f$(m_Xw9clHE>kpRLF?vB8#{thlp<~#+ zb?=w1ta(&(DI@Pr7r=P`=mcAUP7~uu#RxSt=b)Fzph(i;1*VFdB5likBWJ_D$JSs1 zv3Vp@xPPgrp7Cp`q1}{B3CO~Cc}YzKUfV{k1Fq>kMN#&JPY6X93$9;NF`72?(DbJ1sy-kF)K)k8!{| zbclbHRQT)p0QrB|o;?vV)wQ+{yJHGN`W5Xv&Mx8l8w5hXEoNJUNMh%4em! zVcL}`t{3V=Ko)&KYFNqqc+^eGHj%__WdMy5U&efCasZ&nGzexKDY;4!5aeR(Oo`w^o;|fbt)N#x&^@#K}AgQ+H zpZ0s4y+0>mlh6T;NKqOVcpdWBvFYbC_Zdm>}U<`tN_Ak3q}@*5F`(x$;#EIIHKSx zJql{i*Bai}!J{>vq29wYt<{s7HM|Zz+5X>yf``Sy_IMM{WUQz&F ziI?38@hq5gr~KfOt^8o+HNnwhEBL4Ti3(-$8JV(Ss&TPSBD;d$$H&(0*S84?q&-OV zz6hsX?*RjUM-+AXhMu2q-}c$W0?YFq-Ki~)?uM-XkP15zogV#d`j$HHs9^T770bAB zJaBZE%Teo|1WIUqq*5o4`paN|TMGNP54b`L-D>>u$z}%)T2<`*E1uA%%yX_?eB8A~ z56#*czBIE)ys*VS zna8{X4jQwSKYz);FnS@fqjz>wdrj=g2u;}Az1z$*RQfD;AF$)PXsgC-3pyQJwAVFJ zze*=aDSNAtVh3KPJFKB1htG<@uA364nv9^lF8ccV7>q#)uu_(l5n`uE-)0L{bjs$K zrkSQqtdq+5ts9#0XCLWu$lIgtQ?0!lLnefm#<$&728F-t8Sy8-N4WS=R2nEk|E z*ASsqZAFqX8?IwRNb8UJ&i&Hu)ZV%DI-^!UAK2@P2O3A=_~pu7D^+T8q8#{19!vGs zPQGOofY$23%`O9jFl3XDcTMf3{Cl2QO^df^Mb?D%tFV1ec^(ZPc#gT|I(sJ~Hq~4g zylxa`CZ4lqWU^f+14A2@&TL1tJ-RBQDUP!fQe*@WOn$1WVSBt`UBY~3?(J)6{8d zcXD8+yzlVHSG{FdWf0rYqt=AAf>;)e51g4dz|z5LeFF_`DSuWIYy zC}#sdYTtX!j_abVO5c}n$`}~E^@JDadwu%~gF}w2$e)=1I{q|@!Z&|C{)&RXYqv<2 z^Y)Ob)`wZOzk8lbg=GvYJoMcSrhm=~OnFq6+F6+SI?QI>F=Y;pyO`fI_`Gkl_}QV{ z+reMakU*H`xFcP7yP(H|r9GHpkKZ5=O2VhjHuXXLX=<`W#3QifBVJ+i# zMRQDQ*>c2hl?S6XSO4;Y$!u1c(3D&dUR~R#96p{t;uoZx5s_29y3bNEcVa~Y?aSiT zM~YN(q}Bmcr}_%G_t=fEm9n@bYT9XN+uf!1y?jpC4CnN~3r_=%7Ipn;DC0h%$_AJ5 zl%|@(7{HTltQcE_98ZyxgTqV_kYKWD?4xT-iAIcn61v) z&D*$Tp{GxdKjQ%MF;8J2{uI4gZZ{QbM$hys*daANE+<|?K|13rr0uvkY{d6ZL{|;A zkPdtM5auAGxSJhC8~TQur$2W=6Z4V3R6o#1%*>be6*WWmF1&+LSYL=2jxyO8{yD|U zzJ8A?%N}?`Op%N7`XCUhixbs+=A`4%ar*}6Qt{JAAq~m$ftZ1#uk9+%G+f-5mUS55tMaL3t>(~b*rHHum%{a?Kw07gtEk=32+Fr$U2vPKT zW6o3BK_NS9)+FX^`&%QBj10H%358aRPPhZU2(ZSpsw4O{iqc2^>A1H*S zsuj00?m5HtuoX3`6 z1%#=ROJ|jd$TPOp;#^;APFZ$kWdZ{etVDns_4+bsEDO@w!)2Qt=7}Z;X6HytPDO1- ztK4NssJ_E6JjZYHB*nV~Yi-3%&xGl&iHNn}wCjw}+8b?OM#M$tY23}fyz)i%hSpX! z{W-rff_;ShR3#R_-e57RVoqA38lzh3GrUV)8>|Uo>aUGWAFFL}wJN@TW`2j_c`XCz z8{!GdG()Ag*a!2u@zW&+d@jq)#q~4XO0$gUsfR+%JY}y6f=FjKvmLO8Oy-BcR*>Ih zQrhe?`4m0XTPO1>srgi@=fr+MhL)(G)fHOs1ar z#@TtfchcXa6?GHo$-g_b+izP)`*<5;T5Ec=ed;D=dA3YFXXcuSZ)%wxKciv5X=k*S zanAj;oR4x_1IxUID+}mx(pye!A&~F((IXQJ_%T=Xu zo%{%2_N1gditxbwotEH+Gv1KYlXC?Aq8ZY^=`A*gc0SEBdy|jufwB{3sB#DRwU>_3 zFZYMBMh)Kkuh{(_9-m-?a86O!14w=jeSLLy#M0F;8a+Z^fZi~T$rTcvTizaf7&#y`Ug7*>SMX)ol= zXh#FB7B`5Fs5{r~?R*$k_OH zF458r?%eWr%WQc@^=^Te)eRxT%_=Fgv_FK8?qYMN7o*!=YU&F5eF8Eb-I?3DUN{%c z8uZAQmwg`*D@!9MQz7>28hd*~7u;(7W4ik$4*Ka4U{;cib2T=$#{wQ7*CI}o|2ikU zaWRMLE$-;Zy^mXl{ZroP-g>camK61>jGaO*uvmzrYsc0sQvAShZk4>a6Qs#9c{tYh4l!B2Whk*(Ypk&z|orfG52I8I+8I&tFs(5K~_o zrJ+HU!An&RsbV7K6S&mb_c)f4J!`0$rKE!E!XMI~8wN1$Gr_xq-rd*`_Ugoh?a2Jz zh{^eRgA}uApTdHQ?BopQo@(k#_ZbD1P4Dmd_Q~EnRHCVb-FY`llz$(%`Zek z*puV$y?|Gu#PjmR-^EzGiK( zd*!yiLu2C>RyfMjvmfq6kJq4PG;<2{rCK;hKI%rTsXW$8agL5JE za`_W8l0?xdN#sEG<_&v0A^sIbQJp2(e4lN1J_rcCb>kp9NHjTfy?dwN$b`Ywn%feG zF)dfn`irYzq;>RM^V&y#Wh)Yrj?6T8_^^aG!m&~Nn2Y!I)KSi(sZ#e{L~FU#PfXY^ zaiwi}EL{|sox>ScXds*Kftte|x7b5%IHZj0cuREQjBGavm!`~XlKhc;Vst)J--FVN z@pN^UDx8h`Oq$PIEfSXM1!4rIvOQDE$)Ap^|NxZXi*#Mk$%v^V;SD)QU=xz;^^;g^Tc;cM{ z!!7ie1vjj}CchR!8_cheUN2{ARP8K~tX&!ne7z-lGYEUOVP8LCjfOe`{<34hr}Ew4 z^O|{|$@oXquGFq(Uf70#Vtq~`qPyZEW4pqs zh#}u%fTGle&V9)`C+F=g+y2(2ZbDx@BW!ubi}>f8UkhX7^mKzoS|ME06IEgO0rH zJU+Ktu)oDVGI9+kd2pNYVlO^vXFO#?p(U9SBc*mcD#qNY_*L}*+eJ8J@++1;lbH&FRG(dpZ-4Wr#FquC zS$KO)EEtuH{dMA6!rV%Gs3t1VlPH3F+l?~X`a(i{<#q9zNdy;rc>P%oA z{-M?94BQFAsf3L9NxKZPhSvms(D`kgxBh{KBfn?mgd_kK9~Ue0I^O(;tB^^VsgYBF zmGJE#1c2&EJo?Au^zeZ)tZ(rX6=TzphoA7b<5uY;j$ATU*qQ0`Fw0R|&OCMP1c(-Ex zY`sL?OKmM3zx)Fz`dN5b%_6_4na0bWkin;;9au}uLWMxTaCEC}mks{pFQl(`?1BFX zAxp*L#VM(HBYKjqjMYS?jicI9lVqRep#ultQZSBDYYB1$gxeO|rPl-vmAr10rc>f9 ztZpu;BfE=bjLgZ(S)-D)PVL~_4YY0F9ncylL1$Vi6KgkE^m{%r?68`Tx;A?eLyEX$ z7Mip||D8{10W+b}dAZhfbi>5mO;Km_eOWqhX*adUnRUO{fAPS|PgGtPh1M`1TqB1^ z@2{7>QO87C`nV#I-hO8-@>QTazipdIWkh*&32ieUrYV%aFCF3+KP&iMSH|aF59U^b z`Y1esVOAeFsR#3r(Pl$-U2m_}eSIh3gAf?=@R8LK_yX}?`Hz9?NVp00V;qfOe;@(!e~L*mrX6Zelq#8qjR=pG%<9OmCH2|@R_xW3wGmA z^SzBdC^quFZf*4PeO?C?P%D()NJja{W&(%7X!eejxjWtFlS#e%l`@QTjd1#|hQF#q|cg%11 zA?H&CSGT@-E`1TE=i;_Ikgy7O-q|btSrLg|eXtXgXoonnIxT#i(BR4+hz%t(cyDrF z=hXC*H`egrJ?{frd%{rP!nZ|)R~Tn{H^GfQS4P3|vk=CzlTyu`l9>#IpV$Hwifb9Eg61|Ak!@_PCm5#N92I$#XA(rCJ7k zLhJR<(Ie5n&(o-EXmIveU;HvVfE!$e!V%-B^lA|2BGdB^ETQHZSV?5iYb&dR zoh_&A#w*GuUlzBL#c0O!yg3A9dtLX-=F*{!j!v)-H(FuBhYmg{T5}uOqD{|?{k)?? z2F6c`P|S^e<c+||3;%7f3f#%*l~3tDvcMW>P!fbH zp{xxBmaXvoy5xIq9k`awhHb8~fC(=_p%ECQ*?sW<4suU?Q0snlM+eMobJw?mrXIY``eR*WZc-mEek z49^*0hFO%&eZx{kXv9%%@~^)I9pa2tlwGSDE^58!Q%(zE@1^l$1xOI&Bey>UXruNG z%rJO7FGG=N!6k0&?4ZQ_dfp1I464Xx+KVmQCb&BRi@a8*&eqn zFgEeGzM$Z@8yz|G;TdmxUxKkUE8R?wXJn%Pm~YS9g!{IM z+92N<^~1lws346`)QyFo7u&5#zTb_|y%zb5F|p4NOt*ygt{G?NTXDMjW`wc}Dg^5D z`)i^mzJB|q+oRl0m3jR_9dX{WAnsMDTqnaYC1PkQrd6xF?1CNMO$-z3G+Up&AKHkC zRzcqke{S(l6j(23aDgqC`SHzT=;!$R20pW0rSG7>JnC7eJ5SuJf3YUG>+cPO0aC}I4dA-Oa%23;_ADJo^UYtTKQ*{WpX&4i?T*glnx zdM*AiszOmphIX>PKO#0F*FY9=a}YWysC{q#s$Hr9&yhfNSPy@>+Hu{HZss^(B=Yv_ zj0Boa;EH+R`}!>15ZE}@7>v+{&$ZD@KZhOQfJl5AY?olZ$y;qET-9ezw(Y{(bIR)R z4oArBQfHNNu=sexs5jNRIwvG>qZW4f&C&+jsUWD{-RaDRZ2K!gk!Np;19Ezz z_lLHwnfm641%z3pXJkgJqv-NcEwN8Y%=b3aWnm+#$5spwFuUGZwjIf4_*PNrh=od3 z()D2c7kh=z9G!C8b^DJlj8%-6Pjf$%czK2AoQrrWSXIgtzu?3SDuJsf1(*x&4FP_b z#q8V?kqzU3uGVGuBXIr;5=JffwtTLX{IUqfwK1AnYLcJvAAF)(KEF5Jdz)WDyHD@B z4;_Uk%;j~_2eCQh%6;e|#N0KLwjuNly1lQae9=X%JVQKT7 zxs~^)r`-}Dkn$s#YJ_N`=j5(K^loXQ*fY_FQ9WoTG)m&RewLE;58JnfNQC*_cwAq- zb-`V4n!zMVC@e85>W{E)M^LeHp%yq-0~o%jxQa`-vw!m4_vJ#q69YAKYI`ov)J2KE z@ftI9Y`xSDk-Lk)jwb%#vSKuOrcuHJ&KrP~7Q8fWZ8hz?b1W-sM`jSsP<>+3j*#Ds z@hIr$CvUq*Fja!9T!s}ti%-K16+el~u+51fTTSFZS@5xR%1l=mqdT_(W@?+g@WdRpeqcU#tnlqhi4nyJf zGc59litG1R4U}&X1=g*ond#XkUSU1}PIZo!_V8V`rg!v@cr|pg-A1(d{Q<|di5MXQ z?7XSMI1|GdG1%POtkJUMExwE`1{++K+3YoMn|0_1o7&aXOHj?qVb}xkYvsJ;AeMTL4qJE3mZ9&CFyEZ|DV*P>yBEO!<=ijcdklm{`}X%-ghc z=KNm%ut!bkOU$pV9j+16Wun?lZSlMWE?>3uR55sNa8nbQqjq6d9R*hCEpI`Wr7d_z z>CEI)TW^0ro19$CC#SfrhK+M9QCBr$$VcyqQMCten)tzEoA~R?Oi3d3dwl)4Z5GFdR%>^e2)h6wSQy(D+WOnCyA-aqhWHqJG z;EKlTGtnKkEAiARg(w)jI5^c&gmu!zEN%{b8$zUFjf@~9iEYF`5aII^6~r${2=P>% zt0~it|x)e=b*C}2Dn3ZiIw-Z2?#X{V3| z!usKJRH56qN;EH8Zex&Ka)@l&z4rF>TPep&0CzP=D341)Yz;^Y7*ye_(^d@w&)53x z1)6?t(PB-c2#`Ka)>b)Qlp2JrBP!t=s9$J;2;ZV)vgq+BTbCp}U4PEm>rT~oblc^} z#!VfBDV4LD!_=L1S#!F5R`}kWmyLu4a~+_xU(bj1+Az9F`@afjb*Ii8c6Rs_pPbU& ze{~^i!#PzzBob=rpbIk+{r*<`eSweOs|;DbzWn$_k4elf`y7vNU~4zCE-^PY*o(kL z@f9EjS5rIwCM&Bq=@c?iA#MdpH^Kb<4ZQ11Ev;A2d{=TJc6|Ca8Rq#GljY#QPncI`OaczGa^om;Qf|w-=yue$v53 z0W=9Hp1XqzJj-u&nWYVAJQmCh540%*r6YFmf96`2xwQ2B`d`V5o1_RjK~K|#JizOn z`bro$`x+}?Dztfgzqj_7i^yx>!M+~m}YpB*JFYVhd>6{ejY(U%4VUjL>?*V>e ztb$2;H3|w28e{z#-~gPT5r6{)lfjw{aG+qJ*B8E-XgQh`|C4e&+r349DX^gF)}#2J zRyWdE#SuSKCx8?`&6#qswBw~x4dTCqjq-(Lj&WSVRsAK~I2VAR_}kK#h(97TCvz;P zBy;ay_0?Yw6>jV<$ojhoP`UHZWKS<#RU~Z3p9#9LNX3Qf3=Vz-&r+iC+$4W`8{x^Y zsZ;}nqS0qPobdMpk^P`73F8vJ=)RbNs~Y1MmFh$I`b!UcusP!KsWqOs?}8 zG#q8iHj9D>)Tk5VxRW!e5ugeCB zCcC-Xd(30s)?hAmKy|()`-i!&8BS)n?-Wb3RzUudhFwqpdPV!6LQ%4P3`Sn`Euv?{ z=-QtZ%|0+K3e78>d2WdDzHdvD_{Bch`CWiCN5bS>%tj&0Rd$JDwhITJhX;RhoE!oh zzcT+htSPa_F!U*P3x^_0iHD#3%S5^H>N7a?(lOKw_qkx`FfmA=t%%{Dhso?_^wnP- z6j_&#S5Y#mi8bsUO!OaT2vvf{(22iT(Ec<*2=tI%?9e`9*36yD(*@cSDl6>dF;3wN zrGOR*QqXmmD16yW^LHTpm-yk;f-?skveb~oOxRw=o9d5)9-osLRqhajg1TNvJAEb5 zDxlF;cVs&1W|cWEp*oKoug&8R3nah%(!Vxg>9H%$uIA(@5}Hf9H}6j?jqzXLt-LFU zTq8d*e?$Jp${E819Y6*A7scJ&PLvzKskWooA|n?{B{62j2K$S@>NwtX0aWZR0s)pE z>gEVjcqE>3)7;zVvw3B#6LVaxnnfMSZ5cRfyvvl4|1Xi}e5j&TV~1YM5703y=E;%L zZgNGa!2;;elA65Q7eAsk-OLL9x+~1ZRfwzXg`SataPO=c*bC{WN^w;mUay3ZIV}zE z3q@vD?WR}fLMrFU-(Y%N<$01WV_L!=BUU3MexhA0H70S=QY4}!N{N(DaQ->!fC`m7 zD#R9uz??Hcr^58M{jTGDvDfA*zCpKnP0@Uqi|C|N)0YGS%3q!D@6Ro4O_2#{@h`)` z$G?9B#6$0Epgs5+2=T|jZBRsNWA9WGi8MhYM+3PoiQ)16t$s+tcg5zr?(<#q2|6Rb z$%@YhLobYYD{_JEjBy$CJB;Pduo=pb^`N`mC22S6jtiHRWw9K8X^KiWVlQJt;4+qi zct+UrwtnV5je3Nqr%H(_wUxVuVXQ>7x`)%La9ygGU~CS}IA6o4(ivuyIti-_JAw)V zDEL;Fv2#vk&Bb+WwR;J64IXms2#Hl5NcSpxBUW;N4g;6YAXYPUb2;w(HKVPRVDjpu z7-O>J7#{owsjbKK>+xV9B+5Y|o3IS8PSSu8gtBo|?pdev(tKG}VypEQGWz26^W>h$ zny`l9lL#~n=Vcc}Nl9Sz>m5E0;de7z)odah9h4{EB^3CgWcexWoB6};OGFXz)F6bG zpoOId=vYo;bkLj%CNI7>J+F;|(1YUkKYPYHJK*FXLP#WX$k!Si=h(58$G>t%py`ho zaGKh6SrNr#s&5UcQb#14Fh0NJSB1If&`wL}o5zz=1-yc4R!@a4CZV9TK+WCfA%788 z#cRDo4lPZqtI+*xRm^L_Q9K!Y8L~a$fIZ--i8k~~D}06-?4c1lcb%K*2b>k@lXcu+LgzQfZ zHYHb16KVajV}9d#vlzbvw0n>#K{s<{B%`kzd6PV(GBqnoq(p!!nyI9#wD~>f@B7YC zpkF?d>Ex7Ll|#ZBx!-(I_t_YOaiR+yLy+s~dtOK_Bz;oDm*LX{Y_iYdNyjR%(}H}I zP53QsW7zCzx-IcbH34LD&(%8_RW01B7|^uB9bt-R0?3q+1!iqIygs;Le>^XWy1#tD z_hg*ITfB_8X4}01uj-21t-jqy<~f)q`RbTq$z4L3&7K(hGTy~F72(T`qCpIQJ>*zq zO_0Defsd%(7Js3$iqOE7P;BPCoC)MZTN^aL2;7U(wd=<7JeTYb;dyjQFPp=mD7WJa z4La}B(l`webIV0{?^alXpkR@2a?_x(OwEVZz7$1a_^)=u41oDqnD&lGxkX_b!N0)v zjxlLuGA(s(oECCRUY|YR$fwg=cJK3s3`78x%!t zlfvdhdT@y#EeC(}xQ}QrYEL^S{R^MuUZRT&3gEN&L)^d_y1#GT6%qZwLE-%-w+3)0 zLJj1I3Y=wgSV2TYXw#kuU2>q1uOfQqZIUnr?Mi7+^h%7%C`?;WXR@p`gh4gWktxt@ zPmFNWU$5H+Q2c`?e@Siff-ja!>nBipFo$QjgY{y|0O@m01|Ccx9b9}_)FgTyHnXnZ zA*QJ4%>t#Dv)W-0M(vm^W|YB%#g+3cm?`Nt?Dj=65V-<#mGGDm70a3NnW^N_I_w3dC zLVSNPrXLp;jMU>)T4(b5aN$<*ev@%|F~TkOY~=^(pUWl zdV{qQDl$0SW!-HftxK@t1hBWo$RPHoK zsP?ADVKTB8jP#bIUr!Cn{k1+m^tzs{6>6tvuJiUQh|!{rb|QrP!151c|49Q%E>JnH z)TY~<(&Bp4Kdw4&UOZH7sute6c`Lh9gfXw?Wo>u1jV4&;IwVQk_74aF`-q__=}LrJ zS!LTn>l#23*sOkRB9oZ^Ym4}z&d-PQ)kr`nM3BC{#BRm}!sF&v-W{C@pn7{gmKV`ld9Mezw@w{V*7;hVFBpg zVjJ109E{EZO5iu;aTcy4CF6J^8U}%U_dER6(yXTiR_1Douq~QEN+!5Rs$s%b0#Xiu z#D~J#u>xP^{OX}$Q{~rCA-|2syf{FMYndz?n1PPZ*`)@cMAoz(7`u#gyG{C5;8!8b zLeX0e^Z4=&iGFH8(AbPY`1@Dh+F=Mx?Od;x8a(qC3W>B~k&myhoIxTONA;7V1SrQ0 zvfSF1DA{Y+hH2}SJ&RW#_;%baYv-wOhFKgwN;b-5I|t`wKf_-G%kY(HReLBv@ca6n z^T&g|7iP*LDExU-gTb4!2vdG~p7UVkjCa030JSgw5dHzR)Ixv5mXUvYKk`F+FC&-_ z{8B&M5T_UZ<&gQ8cOu7gaA=xw6El7ejv{2uoH#M(zc5|PdxbzW10w`RSv%k1Y&Wdl zR}fJn60ZTG-o28+7ZC&ogM*a5tw}Bzd_E7{H=3FS>@}gd-H9A)WRBS**=^*-66B)5)(tG&ddsHqtiVK0`|hF z4lX-C_dO^?zZNR1;0zLE-WI;-C*Xaq(BP+g0n;f9iAR99YD{8HifR60+02onB z7-lI9FiZZrTz0S0K{7hCoue*&81(m<#hLK+d0J(N0(E_%C8oq!4N|l7nM7}WrSYck zHY+84)ZKpGH2YyBlfj^VAq<$pu3|L!a~NBn zNmN&Vt;UGnNjury?`eV~eminZfAL|tj*Wa=@h`OB%9=Up*cbTCmAjB4T=?du(*|u4 zU`P)$oU5Kw7}YyPam`9NMo&ZKG$T&bgHB-dPzN7QamtRjRfoG0+CAA-I+&$|;SGW5 ztEi&8?h{Lb%GZlJX@q|3D$Y9Z2M97Js<;%AfWmwp9u5lTY2R0-4l;CC)X@6mPNhIhsh6c^_q ziLVMH)gEjZ>w8C_Gssn=rli%>jXNLj@L7ta-o z^pIg|l#DiL*-MuTPLC&>=~6hHg3zT5@fy>O6x^RF83paH2krc7N7FitDQi<&fVqDX z=)wl|#P;4_P2cH3d;X^%Wi>^bh=1Z+0+cHu%H-y^)k$xtypk~rsg{Lwp-^`|)?$M# zgbGSUK+PbpcHZ2SwR=WK4nwRE0F7(?XeXer%2gYCWZzicPmb4AZVy29E4N3NF*1DL zNw_023?&Flr_l%UPGanQYtrZG*F9$#0v5}*qV!$$Z+75`Qvyb+oR4US{2#5Q_uUix z8<4HhiNF>|&=W+pwl$(~&G%NFvc;n3M-kc-VKW)mecy6PDYM5p|Ip4L6xyq{kPa_Y0B&}81c|(a+&+@&oI0xb@S{C=*cQ00VVXda8acp9F6E97N;Z)Na=Rt#$ z{FJ%UJn9#OM9=(~bdwVfj?CZ7r_o9YI*Z(046$A4he2g&4^o`MELovXh z%5d;0+4H67(J7mF)@@MljluOL?QNl36_>ORs!wDDj}Q9v98w@XLtI7$&RM za?&V_+JTMnk7yROU7@bM&Nu#MpRUWGViFv-i`GnPkBuf&XDY4pp9~pVuO>>GRc1^g zl+C{}{F4wL{m`O-mTP&1q$%yb!axE}lsbpGl*I6Q>w#NnQe#Jd;m~A;G1)|bv*OKM zL9|-!K#;M4cB~NU@p-X7W~ci5%IX{(;ZlgGxY=Jv`~h6C3CL(CYm)PSt*%k#ujz;4 zdy>lN^ceLFC~3~NJ>$8WBR#>fu3j3i^2{Z@~U2PX(ulxmC)qJCR|;Ol{cw-}yFcB8r8=_Lx^Z5jPn@P#MlAVot|= znT5jrTRF$&k_IOCQw+-n1M`aW>;QSpBL;CLc~Q*{?q-?VXb{i&HTt`cXIKe&v9bDe z7z{X)erPs-IX6+!gTTu@Ana(NRE$z3l2(>l*=gF#-X^uOLqL!&&9|BTNT; zvE|~(ocJuH|NEEb1nO;*57w>7xj4_0KQDZg_>-d1H1}wFqg~F6vJmR3%po_23@hi= z$v?RvQN!{-aZZ0c67KlNJ0)DTrBkol{|);5$>tnN{EwnM*M@pNcEo>;HW(AN#Q(HM zoV|W4$Ico3B)A|B(`{P;eDU+vj*+MT_)h}VKiv75F;R2UMCF2lq3OPuzYGcg$%8JI zLUE8R2-<9ra%717MyIRuC#Ak5qW2N?xn`E^q3;pkf7~q==buEQGk)WKkH)?^_SZAh zKh8GniR^s@w;{Xa9sc=s`y%nHqI8amT=0K4BYi)AB<%Yz{8Lx{w*$~)g`3Ljaj^~3 z-aA+P$B{C5NL)}j=p0vfNf+|}NyMCQ^Ph*~e`!5HzwxJd`_Efjc>U9NMc6Vc>8HZC z&kMx!nkx0|LVkYTaj%lSw@0G6(Bhv(rS?VI>=au(KaVBvi~Jsi(;+1eZ~A9O#s7>y z{kOCWko@3SSdSZD=;iqNcK=8V5&yokU-~V_zYRMm6|Cw#f8gJ_s31FZZ#^o`BZp8Q z-1#r!O>oC^>WkSQ#I@gR`M-2l|8FPlYKu*ZW%&95vc?64$sIeIT4i3gv>XH*o&&Nv z4fP*ffPz#q&BDmLSXz3@!VG-|@Qb%y1U3>-C=yzTckus@eeu5{Z2$z6PUt9UB21J#9g?UK8AJ25twSFqMd% z7S9389KDxSA>Jd@_4|FEzXQtN&*`v?yy9Xrc>_s}u4SHvFU69|OIry44ZJLg@MNHE z>yLK~na=AeNUeSch{QazmwkP9T1>mPpj{Dg+T6E1Ci)+*G6bpz$EFnl?+{KaYI7fo zN!}*>!LCi_R#vosuzcn`udK9na(33NTK>;^a=`{c9)JQ>%tNy5j@cz|Gr$qt3CLbO zo4yYoo-E*<#gYG6#UEly)`sEfU+$P~{9oANE_(%j+fm74*YW1&Lw#xVFc!xf=jrjC ziu3!o{h_~qX}6*+< zRdNBhE3QYb_-CrzqG);mZErrFCK9PXd080#&b%UrE~WD_}Yp9ORF z7t|J*-E}j^7Ij5;f+P`}T)NuV@j~+Mh&;A_HTSIh?~h9_#fEP3J&OpbTl;S9Uaa-r z$dvuj6O1TTb(f7RTmE=GLF3+TIbDuLv{khEwxzz~wy-Lel|WYz*Y?#M;RM{P+`M_S z^wDDuF`&)InaDF|9>mDW(z(4$I{)=O%a*z4cw2LD2aC3?xX8VFGZ|b^@M7-6u|2_w z;y)ifauDw=k1t5^o$TCuzB4C-4fi;Jw_H){PKV4q?i8iIDcts>Ln&J`B$rLxm?>es-F9Htu6MRyUV^P_YniI5 z!JFUa>@y~Tnsc#OV+BR%eEuZr<-B}BD>u$18@ESRQSY^SnTI6|mX?#oAK!I4V%cn| z9rj+bw1s-$vjghged1*1AEn%P^WxdshxHP%dul3tiw8e7lAg3U+0I_81b?#6Gp08# z$bsrgHHq^jcF`3VLZ3+RUWNWYT)lTZTjBdRu0yptbg9~HjTTk4YqwQ<6I6`U9w=lmhbiC4~j?sMJOc)zdfy4_J_ zWEYU-w%h1~$asY=az%kU+fKhTuK0g`mX5CWJ}|lO18{4_FoL{NBcFmSSS#7y#hntB zr3Osz^73-<1e}5(6L4LD7*&B!;oz&1j|F6KVCUX~6KszJCc*#5986W7J-BlV27_gd zH;5Y^jb1yOB(#{GAU`pzi+)^zogUb;&hm?3!g}{kBnBm1C4zo;b%JeC&?HG=-#Om_ zAj`F+!L`Z(JelN%)1EDQmlzamq-{P~=x*Yy6T@iI;CL^6vOu7=Cq8e268yinaO?4D zV5XG_>$_#E)b~QKggUSFz-|9uM7TM@6FUAPg@(F&wnvhvvs6A>#DH-_e5?H~Q zSQ4G4&?ScbT%c&%z4HhFC#-Qt$`=&%|e+pU8*VSvX*X^t$4i&J95wXh~33X zjrq3i`~96JPd>ChhSotC*C%a@1ccJe)Q>dL~c}-NzB5vd24IEXhzB)~El1Zs17c zuE!T|q%SyLSZs_AFMB5sz${Jd<<)>&WMWWz$FB^hN-(YgEG z&KyBNnRo_*I!s4pdWv*&r!+n?YfV0P64#>422jtcai_r=N zmk)XWsT3eb*KIH1%83u}-)|Ingz$9upMe58!o==@(UU{>%#s6jK$jQ-Z(COnGg{5# zfgL(#ss~;}+hptPvEFGz61Cx5;9|QdQ2B4ixRKsKc@x3e>-J^@7PiJ zBHzD13mAIDFFno{QDx0lV>+1@ChG`e;-=uH#a zZ;fzl3i|!tB#E1y%FnAVD2X$4aRIGvrwB%LB|@zn$>9c-L1Aq(HLPB0iPW%w@2}I3 zJQI?x%gm?P%#fd66dWJhO8YAFS<=&}-fme>^{-sn=6O2ls*k$MQ_ac1!uSpze(<05 zLAF_i(76e^w`+l$m-%$qT~SMme^;#^4ARSzf`HMF$7qhtm}hxbk&I-Ka@&ZuXC5*sEzxm%ecxlxC{%%w2cZS zk9t<PE4oD7fq~{=A;os*(4?oW4Bk8WE^O@R4 z79|BkuH#1m71$>oSf^y9QOrjV4c&zH2bEIg>eFRIDjzBl7WD@C;KM%)!s|C$q`=M# zNn-ZAV+D~hmFcY@zzn&&;7L^{>6}i%^8?MJB>dMbpaxMUWzT=_r#kc2IouT#;?wX~ z-7y@>R|PxPJDj}+?0Vqqo7p%Wpd8i`e;rt)vi^<3;Hg8CHPK4L1i%PEIbWG*nN^z6 zGj#hp*`{HU7j;I5goAubR?5ANdgp_T4GlyPR`Yy8z091D-v)_zEu@I4MsDq+%~TGz zS<|A(;8{Kh+A__%yDT-r1q81&EM)L^CPl|et&bgH2SeuYs#EL6I5qoJ#*ixgIjULq zKLM{*JlT3YUZo*GImruTM;zOIPDPNb8?aGD#L%%)$!r8iVM>9Q$^{Y6sQ01w3}PGI z7|&yI)rBwlcpr^S;(86Oa`rn#E7jWWErp-dvSg?Y%8Iwivx{Rb+;41dJM~#raAu}& z&Ju#5^hZZL{chJNr#qMIYOp3gh)a?dJ;JxcSX-t3C^C>p@!wp%c?+HQDf60@Qm26- zzB1={4XOSBcrUngbLrAsp|yaZLsb^U0PXa1;sT(V^MU1xchi|o@?G|hkcBO|3!kBz zdNDs~dp)Rivs|y=kKCnVF2spvadIay_AI>m18Qc9+Golw&%X*KX`gvM~{Tp>%>X{{tFV?)#MzkU>}qq zN#UF4l&mrT=p15W6rWHre=4z|<6zI)4YDwqTt;rPmGPNoXy2DR6y@6nS}*ON&&Q?L+n7VJ#O=3s3uv1@&@F=a1^u z0+`cOb^(35@!ytrdM3*QHOaw7KWZdeUS}BLr3`IiAa3W*vu8tyqS^P225%@WxlncV z+dX#oVgu$Gz~Y1OY3)R1v9P$PrVfE_uXM@4)zOiXKZ{wa0#Ut~#5#fx=oeem^5;as ziOK^+DFBUtLL; zHdIaI40(CyT|}My{}i?8Qj|M1ZnVUAWvmYjV@x{ zAeG%ERWql|L4_nGK~O!ffVNcs>a99*c+qKZF3E;XB4X#)nO>>dD z8FP=fpbA@O=6|=y#ffs5!yTId0ZY%D0`?oW>@7~8|2ZM?h(S2>X7P;wBV%}(#VCO{ zUBN)y)LkFvA-gG?&m^3vQ%g(VjKIJAy0SZ;L%R+)3LV3Y4J90L#f`0rX$Ff zDxKI5BF@7})$Omp?!M5%#oAx{yJ%f-F_G7NWlj@P`$Pa&<8Bse*y$L5U7*8hb{{UF zcfrs@Lr{1`h+B)T*@Ax3YH084r%Kpv5#Pls6(LcQadS{_2W!y}m0@OlHwj9&WR@Sg z2ki|mkNdVvG@iYMP%HS8ZIvq-b#Pj5Jr%t(IH)>-*B8(RxI|i1`=waWn4__vk_lQo zTcc7%XfqXmpV-azjiQ8^*X!u!#~(g*^VYUlY*gBQ6dq_)C)mS3TR^a8+nHldld3L` zK0wC@%1DHKEq%@K+~&v_nxz4)d)bj-Jh z=#Dhh4!qyTvhWX!?sz*L#4DA&D9pC2|1^s$+K&^G?U8feeJddhkscj=fy4#1x78^n zn94EZguuIJyK5|vwaJZZEPibPVc!SYW@lk;V;q`03B}#k$pzrVbt&OxqCp`eUO^*% z#|#B+>bCEphY|BTLaEncun_@P+t$0!dM*Cao@$m_HrQoM;-+R#HayTFzepbpB@=&S zeJmRF01SvJ9j?VG87Kewz8dD?Xtr4UZ|!EC=6qUHUm;z)$Ob%JCG_a7W+gj0B>Wv> z!@sRvh6#3WhA{bLP?O#LtzkdMRFUKY^6?Il-#>3V(3GP^__Qw#p|$61%+igWD|X)K%Oz7u4XhtbemIW4+8_aFqz< z1OE=wXGNjGwDk-6Pq*&zU7)Rgv=v z1wZX{%ts!I3% zp@@W(pyuw0&sbGMH|G{y4<*Tl0j{OdnJ=-E%~Cp$xa>EeMD0U?8 z)oa=>QIg{0TMJ(+O%yGk@oAWF>V?p*@$JTgAcgYeM>E{{V=1>aJ3rMFhpK6G?xTNY z7^&f73=OyL#pumC$X*g(hhkc6(j6Mx#iSgf#h4z&;MexD?|o-E~7NzkHn#tzjrm4xcNH~PyHvUwh0fr>)c0#42~Lp zp8cUj*7IWg>;+d4>#5^^H>0GQIvE{M5hJM-@^xjho1cpBD}4x!UNJBLU|z7?^f9`msR0vOsOBU zV!x4JVdl}`aQirxdQ5GQQIr8ZmO71_(4{lUhBET9R`I^xgsYrg99#qWypwDu=b!!5 zsl<6yX9fK@%bOuUNlfDKN@j7|4KWSt9s874^b{rHNB_mc`# z1p1bN@`tUE>fV$S{0Isum=mUHSbawEx1g&YHVEqw>wm;2a`ZGD4asAWx@6NZ-vS3Y z@^*3+U-zeT?0SANQsN|&9E-*>IpgXXO~d9$X>FWKe~Pg)H3NpGb1FC!llcqnlo+pr z0GChu>)QHg*7R@h&d<4}HBU3k$N1hGXIm-lHC-4n1=$Erv@Dtli>|NFxiXv9IcTY| zor~yQW^x;;zKGuCb}appd85|9%nPoafwo4cX3%T3=JPe`=8HYi?F2B5RdOVGPk;z6^gdA#5<~UF)dj9XvfVKxw$R8C1AJYhSl!ir(oNsXg*c`SX+yZZXzFva!(uH4r&K83!>A zm$0mm*yoh8N_qT_B;$^J$Xc4mEDv~dxOr(t%PM4^4cOKdIL==9r=36R=B}Oo^!i*J zm!L+2zHwOg6vkz+(Cy}w#p zXUIg(;0!%o4I%Nc<+*ANB93&hz*{_>~a z3q~HPM0BZtr>Z_A)U&SPv#P)hv$Z2|3pCi&La|4>qXraeb$Io@kVMbe49?X}?oYyX ze(G3qf`6s9%48B0>_fEI0{i4loxM3ZCt)Cg%`Rq^k6qJt@1>#Ui97=EECAfHxAcBw(OSk{JJ{XjhI`P&T2N#+>E_4vi4g)Pe|dw z*EEf=MN2)zh$~GIZrvZ*i|>jr@WA#a^Guyoh>My5%^(6bq}qyGka=BV%m=c~gK6Ez z@-bj__Ly<2d+W<+tX}*8_a|Kwcwt=fRmjVE?S)|(-}}vYt0f!pjWGcKCG*i&$!j&w z_Hi%F-av)*mEt0E6k9RLY-RSS;o@TAHJSrUIx90L`O3R-3#hG?A>2qHV46}WKt}a;rF<&e8*>WJ#2AiNJY{ZhIPlZntgIJn#)sl| z8tPW_tsD<5sPi3V&>bAn(7e~iRXQBJwRf{OB%oMRcT_7^YMeU*Sva|SuX`)}B)1uZ z@yxAG2Yh+NRmmRr&o15AZ5m8)|GA+^<5li7^j?Uy>aCXEp}iWb{i1v0`Rzd8R?WYl z6b?PiM(cwu$>~}2WW zeav?;o^sJ};<~A4<8Db!z2mhtbfT!;ptl4#RH|3}&Dwzs&*~Dz2yNzL;>NbkWK=5$ z*IIc)y(#X_?qWRnG;;LE{%{P*K}iTF#MI&R>pkFh1y@FF2v!eX^gl=;zL8@i<^AvO^a6(1M{mGof2+Gh3T4w831xEb7Td_@fHmVsh8Z{)u<8yEEIdVWNe83vP|LAnyl=di^Q^v_tutb zhTnCGfhBd^6>LZ@SoSt@S!PE)t6#E}psot?NRkthtJ~qUnl>705SCgjjt;V@&fk35 zSIzG86L#37IUTNsb3QCEU>oy~zVVm!gt7TIU;F3%K~dm}^&4e<)1~5Qz7vKw_}HAY zls%_BV74Lw3+7 znT}V|YWNp`n|r0DP9RE8lB2eZeUTe@S>rt@)Hn+5s6-P-O|vT*mnuM2H4QV0XcQ*! zoaVTI#wg}`Ls*_y8Y|26OMX{ewgt3GcIPF|CyVr$uTwE3x5mT5UGSVXY8cz+YEkK* zG`cvi`Jr~9OmZo?Y_va!oK-ER^WoF6pAsN^`h?P9YNVpX&?|l#H&3q*%%DbSPk3oA zM$iw1XFJ+)=-n-7ioxv}8%g%?YZwb2W(rjx?$XJsYxLK3NNbo0e2@0cce|s#IR_yX z-QqmRsBCYHJ^KE}#aV3ri@NE^UX`Bl>ZO5bD|E%FbY0Taoqp_PM1hJ-+Cu7Wmg4c& zPJ?%Pb5O@1&xR#R46diFI6B8j`9q{R+p8D-hz}^oYUx{~Ls`6^E88x7c>iO;*I}%K zd8`Aa`n=Ipf@$LKbJ1$hgUX9wh3`A^8u2;``Q~RYx3-whXKNT%$0wzbIg7{5W|Ne4 zdip#%e@OI7O|u|tF-8?a{$9_Y`z$S&R?||vJeIcAD>;y+`zPkCDw@luo&ycWtShx- zeOw*CIKQ%wN~n6iAOJ5t#A2ArE$F(8Se{yrwQO&Onbi#!E?vMXW^ItgSnHN?GvSo6zyA ziJMua>#bSH#di)vm+=t-?uQQ&xu){-@)N;IZMhFM`tl&oPojvunp%E0O0D9jxtvcQ zNTq(~3Qucx%I_k^q(YWLJxPeIQ>d&({S?5EEjgyGS~-qhvnv&Pcs~p1XxJ}c9UlA)kas3JA1|Cy93+r1``B7Hsx71QVkP3tI4y@!` z9dEO567Lh%Mc0N?JC}tKEq5Tq^wja$kv;mV^)If&X?cPgpDHIUAwVnm8@}R5mO>Y} zbMq$Ohhm?E-;7%|%kZx}U$!6p5-40R6Sexj9|ZFCt&hJGLv=Y^2e&vJgHFG|SB~4z zc%H8h31x$=2GnBjdEzUwtrfnpDcPO&G0Hkft>H$%P^_%NYDZ4tqj;npQKVX;qbX6) zew|#@h*JEBvhcwcgt4ePFA(d-+2j$t8V>!vGG>-9!iF&R1M=1e=`PW%ekzP7$7nc zVXCqIg-5)BRvEwSf@LZ55fC=0(BICzvu?olIzu4gahEbyq}8DJSR=xPYC}VQn|SzW z6r+c;6>&G}6e#vu3w$e}t!vD}e6N3Ek4+{D@7()(n6Ys(cScI156tY5QtGTo$YXty zX(S*$XDV1C^&lR&HY2pe6qRjTGtTKf#aToV=bOmFK8H@Rj{$>s9v3X}M7Dgz#`KZA zxw=iW2pMi8VUqhuzXmjo%erAFV3_#Lq*c)@uD8p?8oP8;7SE1pHnUCG3VcN@OB*#t zEL${>Ox{)tjo@gWwiQFnueu43c#(;VbNNN7gf)qQcts)8ihhOm*5zo36YYv^*>#6# zGB#NF_O0|R9A-v(cPPlW0jGEF@bJbM%q(Z0DOBxzO;Wendb4S_S!p~50xpPQ5 zMnvN+fPbfjw_l**nnY3nq^K0>+ivF3^o}ZLS6gqT^?JtipTMz&zg63*cM(1gj8ow} zhfipQd#|v2X~*2D#%_#+%lcT z==_nJ&Bf=Z-2fWKR@Jgib(}lP5p~I;)z|H4j-!qIQPVq5!tWFIg!>JE*}unU;(bFH z_eGAaG)zWW0+pKj6Icp5&X|5ix}4^nm}NKNp{aTwl!`F8 z!X}&mSaM5Xw7-g2ECy;Nr=CDG8idx)k>E{|rAalRN>|F9dV44=z(se=D*UeQ(7&SN z6M#Oc6cr-RJw@GK{FkGKQvHYR=EJY$ro3r!N1Z>c@ld)FJ>OL-fisiD{dS#CE1~mj z)R@juUL$qeevc-#u_%J{+m6*zd&H`wsjt0*_JJzOl~Z`oX$)^q7~M6sZLs`rT;dZdS%Z3FYrw+ zHD&W9X?j*Uw>}EhEM^Q9)@YF1R0Hl~jVvkwZ~c}Z0nX;CE;W7dd71S;7kSL{&nj!9 zB`hj$U>AYAKK9}Osod2dxx%Z%aXbI~Jpiyr#r<>nIupBD_$;wEq`Ol{>G@kz+@-uh z!Jp&K8%LDsT^uqtJ^Ih@(tR;ifB7u?m*V&j9TEQB5a<8j-ZfY}^GH&eXJ-4VoXl)22X#qbgW4=|RyJm3}GyuRLBCz?bBXHDzXZ5koKZ$sc?x=k!2U|k- zSu3F0qL~db)w6l;a2NnQ2iUY+(8z)LppcHrnDaBL|SD%7VcY;<(K_y0Z8w9WZK zJs7FW9vGPy@B$B5GJ<+FZk;|lP@JGDTTI>C^QbNSjZS$r zS09mlgV1oNt+FmVKH0QmGg5lu{>xm+*`rq4R zmw<(9+&Gc_8BH(37PkUtDUdaNxSd-0>V+S-Q;$;&PtYp*bq3eDGZeUNU$ zP|@<#Cv~E`1m9O8yi+IHVz%F#fg4p=EIHwgQNCF#7=rn^z4d(vpv8CHpN9&eg_}@<2ap!{{^AK z^?@o7D|!EE+(EPVz7ITLa|*`vZ(Hrh=2dZ_#`N?U7l(LdAXx$+o8~*ZjI9hxDdp

yFc3BfwzW)2Ld97TJ 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 literal 0 HcmV?d00001 diff --git a/submissions/lab3.md b/submissions/lab3.md index b4423011d..bc346e3e2 100644 --- a/submissions/lab3.md +++ b/submissions/lab3.md @@ -115,15 +115,15 @@ Demonstration: a commit editing only `README.md` produced **no** CI run (the Act ### 2.4 Timing table -Measured from the GitHub Actions UI (wall-clock per job, median of 3 runs): +Measured from the GitHub Actions UI: | Scenario | Wall-clock | |----------|-----------:| -| Baseline (no cache, single Go version, no path filter) | 39 s | -| With cache | 68 s | -| With cache + matrix (parallel jobs, wall-clock = max cell) | 50 s | +| Baseline (no cache, single Go version, no path filter) | `39` s | +| With cache | `68` s | +| With cache + matrix (parallel jobs, wall-clock = max cell) | `50` s | -> On a zero-dependency module, the three rows are close (and baseline is even fastest). This is expected: QuickNotes has no `go.sum` and no third-party dependencies, so the module cache has nothing to store and `cache: true` adds overhead without saving download time. The wall-clock variation is dominated by runner provisioning (~20-30 s) and Go toolchain download, not by the actual vet/test/lint work (sub-second). See §2.1 and design question f for the full explanation. +![image-2](image-2.png) ### 2.5 Design questions @@ -145,15 +145,17 @@ Cache poisoning: a malicious PR could run a workflow that writes crafted files i ### B.1 Profile -Per-step breakdown from a representative run (fill from the Actions UI): +Per-step breakdown of the `test (1.24)` job on the final cache+matrix run (commit `2b6b332`): | Step | Time | |------|-----:| -| Runner provisioning / Set up job | `` s | -| `actions/checkout` | `` s | -| `actions/setup-go` (Go toolchain download) | `` s | -| `go vet ./...` / `go test -race` / `golangci-lint` (actual work) | `` s | -| Post-job cleanup | `` s | +| Runner provisioning / Set up job | 1 s | +| `actions/checkout` | 0 s | +| `actions/setup-go` (Go toolchain cache hit) | 1 s | +| `go test -race -count=1 ./...` (actual work) | 21 s | +| Post-job cleanup (`Post setup-go`, `Post checkout`, `Complete job`) | 1 s | + +> The dominant step is `go test -race` at 21 s — this is the `-race` detector instrumenting the test binary, not module/toolchain download. `setup-go` shows a cache hit (1 s), confirming that on a zero-dependency module the toolchain cache is already warm and is not the bottleneck. ### B.2 Optimizations applied (≥ 3) @@ -164,13 +166,22 @@ Per-step breakdown from a representative run (fill from the Actions UI): ### B.3 Before / after +Before = a single-job sequential pipeline (vet → test → lint on one runner, no matrix, no path filter, no `ci-ok`), reconstructed by summing the measured per-step times. After = the final cache+matrix pipeline. + | Optimization applied | Before (s) | After (s) | Saving | |----------------------|-----------:|----------:|-------:| -| Parallel vet/test/lint jobs | `` | `` | `-` | -| Path filter (docs-only skip) | `` | `0` | `-` | -| `ci-ok` aggregation (no dead-check re-runs) | `` | `` | `-` | -| **Total wall-clock** | **``** | **``** | **`-`** | +| Parallel vet/test/lint jobs (1 runner → 3 runners) | ~66 | ~50 | -16 | +| Path filter (docs-only changes skip CI entirely) | 39 | 0 | -39 (per skipped run) | +| `ci-ok` aggregation (single required check, no dead-check re-runs) | 39 | 50 | qualitative (no PR stall) | +| **Total wall-clock (per CI run on code changes)** | **~66** | **50** | **-16** | + +Notes on the numbers: + +- "Before ~66 s" is the sequential sum of the three units (~21 s test + ~22 s lint + ~23 s vet+overhead) on a single runner. The measured matrixed pipeline runs the units in parallel, so wall-clock is `max(...)` ≈ 50 s, saving ~16 s. +- The path filter does not speed up a code run; it *eliminates* the run entirely on docs-only changes, so its "saving" is the full cost of a run that no longer happens. +- `ci-ok` does not reduce wall-clock — it prevents the branch-protection stall where a renamed matrix check leaves the PR blocked on "Expected — waiting" forever. Listed because it removes re-runs and human intervention, which is the real cost on a team pipeline. +- On QuickNotes the gains are modest because there are no third-party dependencies to cache and the toolchain cache is already warm; the dominant step is `go test -race` (21 s of 50 s ≈ 42 %), which caching cannot touch. ### B.4 Bottleneck analysis -The remaining dominant cost is **runner provisioning + Go toolchain download**, not the Go work itself: the test/vet/lint steps are sub-second on a zero-dependency module, while the hosted runner takes ~30-40 s to boot, check out, and fetch the Go toolchain before any project command runs. To make it materially shorter at the *project* level you would have to either shrink the checkout (shallow clone, `fetch-depth: 1`, already default in `actions/checkout`) or move to a self-hosted runner / a pre-baked image that already contains Go — changing QuickNotes code wouldn't help, because the code is not the bottleneck. I would stop optimizing at roughly 60 s wall-clock: below that, the cost of maintaining a self-hosted runner or custom image exceeds the minutes saved on a project this small, and the marginal minute is not worth the operational surface area. +The single step that dominates the remaining time is `go test -race -count=1 ./...` — 21 s out of the ~50 s wall-clock, i.e. roughly 42 % of the run. That cost is the race detector instrumenting and running the tests, *not* dependency or toolchain download: `setup-go` completes in 1 s because the Go cache is warm and QuickNotes has no modules to fetch. To make the pipeline materially shorter at the *project* level you would have to change QuickNotes itself — split the test suite so the race detector runs only on packages that touch concurrency (the store layer), or drop `-race` on the non-concurrent packages and run a separate race-enabled job on just the store tests; changing the pipeline alone (more cache, smaller image) would barely move the number because the dominant step is the test work, not the environment. I would stop optimizing around 40 s wall-clock: below that the dominant cost is the race detector doing its job, which is a correctness feature you don't want to weaken, and the remaining seconds are runner provisioning (~1 s) that no pipeline change can remove. Bonus target ≤ 90 s is comfortably met — the final pipeline runs at ~50 s.