From eaacc5009cb2ca103c6889578cf6c522822f006f Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 6 Sep 2026 20:35:38 +0900 Subject: [PATCH 01/14] test(strix): require consolidated metadata admission --- tests/test_docs_only_pr_runner_admission.py | 39 +++++++++++++------ .../test_required_workflow_queue_contract.py | 16 +++++--- 2 files changed, 38 insertions(+), 17 deletions(-) diff --git a/tests/test_docs_only_pr_runner_admission.py b/tests/test_docs_only_pr_runner_admission.py index 8b2e6e8ee2..4a21d32fd3 100644 --- a/tests/test_docs_only_pr_runner_admission.py +++ b/tests/test_docs_only_pr_runner_admission.py @@ -85,19 +85,18 @@ def _on_block(workflow: str) -> str: return match.group(1) -def test_gate_job_is_byte_identical_across_the_five_workflows_apart_from_if(): - """The `changed-scope` block must not drift between its five copies.""" - normalized_blocks = set() +def test_gate_classifier_shell_is_byte_identical_across_the_workflows(): + """The shared changed-path classifier shell must not drift.""" + classifier_bodies = set() for filename in GATE_WORKFLOWS: workflow = _read(filename) block = _top_level_job_block(workflow, "changed-scope") - normalized = "\n".join( - line for line in block.splitlines() if not line.strip().startswith("if:") - ) - normalized_blocks.add(normalized) - assert len(normalized_blocks) == 1, ( - "changed-scope gate copies drifted; keep them byte-identical apart " - "from the single 'if:' line" + classifier = block.split(" - name: Classify changed paths\n", 1)[1] + run_body = classifier.split(" run: |\n", 1)[1] + classifier_bodies.add(run_body) + assert len(classifier_bodies) == 1, ( + "changed-scope classifier shell bodies drifted; keep the run blocks " + "byte-identical" ) @@ -163,7 +162,7 @@ def test_gated_jobs_keep_the_close_guard_and_add_an_output_dependent_condition() for job_name in job_names: block = _top_level_job_block(workflow, job_name) close_guard_block = ( - _top_level_job_block(workflow, "admit-current-head") + _top_level_job_block(workflow, "changed-scope") if filename == "strix.yml" else block ) @@ -177,6 +176,24 @@ def test_gated_jobs_keep_the_close_guard_and_add_an_output_dependent_condition() ) +def test_strix_uses_one_bounded_metadata_job_before_scan_admission(): + """Strix must admit the live head before classifying paths in one job.""" + workflow = _read("strix.yml") + changed_scope = _top_level_job_block(workflow, "changed-scope") + strix = _top_level_job_block(workflow, "strix") + + assert "\n admit-current-head:\n" not in workflow + assert "timeout-minutes: 10" in changed_scope + assert changed_scope.count("timeout-minutes: 5") == 2 + assert changed_scope.index("id: admission") < changed_scope.index("id: scope") + assert "if: steps.admission.outputs.admitted == 'true'" in changed_scope + for output in ("code", "deps", "admitted", "target_repository", "pr_number"): + assert re.search(rf"(?m)^ {output}:", changed_scope) + assert "needs: [changed-scope]" in strix + assert "needs.changed-scope.outputs.code == 'true'" in strix + assert "needs.changed-scope.outputs.admitted == 'true'" in strix + + def test_codeql_pr_gates_analyze_head_at_step_level_not_job_level(): """`analyze-head` must gate its steps, not the whole job. diff --git a/tests/test_required_workflow_queue_contract.py b/tests/test_required_workflow_queue_contract.py index 48035c2c40..e23b2c735e 100644 --- a/tests/test_required_workflow_queue_contract.py +++ b/tests/test_required_workflow_queue_contract.py @@ -426,8 +426,8 @@ def test_strix_serializes_provider_evidence_per_repository_and_pr() -> None: strix_job = workflow.split("\n strix:\n", 1)[1] assert re.search(r"(?m)^concurrency:", workflow) - assert "needs: [changed-scope, admit-current-head]" in strix_job - assert "needs.admit-current-head.outputs.admitted == 'true'" in strix_job + assert "needs: [changed-scope]" in strix_job + assert "needs.changed-scope.outputs.admitted == 'true'" in strix_job assert "strix-security-scan-${{" in concurrency_contract assert "github.event.pull_request.base.repo.full_name" in concurrency_contract assert "github.event.client_payload.target_repository" in concurrency_contract @@ -439,7 +439,10 @@ def test_strix_serializes_provider_evidence_per_repository_and_pr() -> None: assert "cancel-in-progress: true" in concurrency_contract assert " concurrency:" not in strix_job.split(" permissions:", 1)[0] assert "queue: max" not in workflow - assert workflow.index("admit-current-head:") < workflow.index("\n strix:\n") + changed_scope = workflow.split("\n changed-scope:\n", 1)[1].split( + "\n cancel-superseded-pr-runs:", 1 + )[0] + assert changed_scope.index("id: admission") < changed_scope.index("id: scope") cleanup_job = workflow.split(" cancel-superseded-pr-runs:", 1)[1].split( " strix:", 1 )[0] @@ -690,9 +693,10 @@ def test_pull_request_close_events_cancel_superseded_runs_without_heavy_jobs() - assert "${{ secrets." not in opencode_bootstrap strix_workflow = workflow_text("strix.yml") - # Strix admits the live head before same-PR cancellation while cleanup stays - # outside that queue so synchronize and close events can retire old work. - assert "admit-current-head:" in strix_workflow + # Strix admits the live head inside changed-scope while cleanup stays outside + # that queue so synchronize and close events can retire old work. + assert "\n admit-current-head:\n" not in strix_workflow + assert "id: admission" in strix_workflow assert "skipping stale evidence" in strix_workflow assert "cancel-in-progress: true" in strix_workflow From c5d4686250674a06a782f50fb347914e4960755f Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 6 Sep 2026 20:48:12 +0900 Subject: [PATCH 02/14] ci(strix): consolidate metadata admission --- .github/workflows/strix.yml | 107 ++++----- CHANGELOG.md | 2 + .../strix-metadata-admission-consolidation.md | 76 ++++++ ...orcement-github-actions-permissions-v1.pdf | Bin 0 -> 645793 bytes docs/product-technical-gap-baseline.md | 14 ++ scripts/ci/test_strix_quick_gate.sh | 7 +- tests/test_docs_only_pr_runner_admission.py | 218 ++++++++++++++++++ 7 files changed, 363 insertions(+), 61 deletions(-) create mode 100644 docs/doctoring/strix-metadata-admission-consolidation.md create mode 100644 docs/papers/granite-granular-runtime-enforcement-github-actions-permissions-v1.pdf diff --git a/.github/workflows/strix.yml b/.github/workflows/strix.yml index 58ed3dab8d..56f3724828 100644 --- a/.github/workflows/strix.yml +++ b/.github/workflows/strix.yml @@ -104,74 +104,20 @@ jobs: # Fails OPEN: an unreadable, empty, or truncated file list scans everything. if: github.event_name != 'pull_request_target' || (github.event.action != 'closed' && github.event.action != 'converted_to_draft') runs-on: ubuntu-24.04 - timeout-minutes: 5 + timeout-minutes: 10 permissions: contents: read pull-requests: read outputs: code: ${{ steps.scope.outputs.code }} deps: ${{ steps.scope.outputs.deps }} - steps: - - name: Classify changed paths - id: scope - env: - GH_TOKEN: ${{ github.token }} - REPO: ${{ github.event.pull_request.base.repo.full_name || github.repository }} - PR: ${{ github.event.pull_request.number }} - EXPECTED_FILES: ${{ github.event.pull_request.changed_files }} - shell: bash - run: | - set -uo pipefail - code=true - deps=true - if [ -n "${PR}" ] && [ -n "${EXPECTED_FILES}" ]; then - changed="" - for attempt in 1 2 3; do - if changed="$(gh api --paginate "repos/${REPO}/pulls/${PR}/files?per_page=100" --jq '.[].filename')" && [ -n "$changed" ]; then - break - fi - changed="" - sleep $((attempt * 3)) - done - # GitHub caps /pulls/N/files at 3000 entries; a short list would hide - # source files behind a doc-only verdict, so require an exact count. - if [ -n "$changed" ] && [ "$(printf '%s\n' "$changed" | wc -l | tr -d ' ')" = "${EXPECTED_FILES}" ]; then - code=false - deps=false - while IFS= read -r changed_path; do - case "$changed_path" in - *.md|*.markdown|*.rst|*.png|*.jpg|*.jpeg|*.gif|*.webp|*.bmp|*.ico|LICENSE|LICENSE.txt|COPYING|COPYING.txt|NOTICE|NOTICE.txt|.github/ISSUE_TEMPLATE/*) ;; - *) code=true ;; - esac - case "$changed_path" in - requirements*.txt|*/requirements*.txt|pyproject.toml|*/pyproject.toml|uv.lock|*/uv.lock|pylock.*.toml|*/pylock.*.toml|package.json|*/package.json|package-lock.json|*/package-lock.json|pnpm-lock.yaml|*/pnpm-lock.yaml|yarn.lock|*/yarn.lock|Cargo.toml|*/Cargo.toml|Cargo.lock|*/Cargo.lock|go.mod|*/go.mod|go.sum|*/go.sum|pom.xml|*/pom.xml|build.gradle|*/build.gradle|build.gradle.kts|*/build.gradle.kts|DESCRIPTION|*/DESCRIPTION) deps=true ;; - esac - done <<<"$changed" - else - echo "::notice::changed-scope could not read a complete PR file list; scanning everything." - fi - fi - echo "code=${code}" >> "$GITHUB_OUTPUT" - echo "deps=${deps}" >> "$GITHUB_OUTPUT" - echo "changed-scope code=${code} deps=${deps}" - - admit-current-head: - name: Admit current pull request head - if: >- - github.event_name != 'pull_request_target' || - (github.event.action != 'closed' && github.event.action != 'converted_to_draft') - runs-on: ubuntu-24.04 - timeout-minutes: 5 - permissions: - contents: read - pull-requests: read - outputs: admitted: ${{ steps.admission.outputs.admitted }} target_repository: ${{ steps.admission.outputs.target_repository }} pr_number: ${{ steps.admission.outputs.pr_number }} steps: - name: Verify event metadata against the live pull request id: admission + timeout-minutes: 5 env: GH_TOKEN: ${{ secrets.PR_REVIEW_MERGE_TOKEN || secrets.OPENCODE_APPROVE_TOKEN || github.token }} EVENT_NAME: ${{ github.event_name }} @@ -213,6 +159,51 @@ jobs: echo "pr_number=${TARGET_PR_NUMBER}" } >> "$GITHUB_OUTPUT" + - name: Classify changed paths + id: scope + if: steps.admission.outputs.admitted == 'true' + timeout-minutes: 5 + env: + GH_TOKEN: ${{ github.token }} + REPO: ${{ github.event.pull_request.base.repo.full_name || github.repository }} + PR: ${{ github.event.pull_request.number }} + EXPECTED_FILES: ${{ github.event.pull_request.changed_files }} + shell: bash + run: | + set -uo pipefail + code=true + deps=true + if [ -n "${PR}" ] && [ -n "${EXPECTED_FILES}" ]; then + changed="" + for attempt in 1 2 3; do + if changed="$(gh api --paginate "repos/${REPO}/pulls/${PR}/files?per_page=100" --jq '.[].filename')" && [ -n "$changed" ]; then + break + fi + changed="" + sleep $((attempt * 3)) + done + # GitHub caps /pulls/N/files at 3000 entries; a short list would hide + # source files behind a doc-only verdict, so require an exact count. + if [ -n "$changed" ] && [ "$(printf '%s\n' "$changed" | wc -l | tr -d ' ')" = "${EXPECTED_FILES}" ]; then + code=false + deps=false + while IFS= read -r changed_path; do + case "$changed_path" in + *.md|*.markdown|*.rst|*.png|*.jpg|*.jpeg|*.gif|*.webp|*.bmp|*.ico|LICENSE|LICENSE.txt|COPYING|COPYING.txt|NOTICE|NOTICE.txt|.github/ISSUE_TEMPLATE/*) ;; + *) code=true ;; + esac + case "$changed_path" in + requirements*.txt|*/requirements*.txt|pyproject.toml|*/pyproject.toml|uv.lock|*/uv.lock|pylock.*.toml|*/pylock.*.toml|package.json|*/package.json|package-lock.json|*/package-lock.json|pnpm-lock.yaml|*/pnpm-lock.yaml|yarn.lock|*/yarn.lock|Cargo.toml|*/Cargo.toml|Cargo.lock|*/Cargo.lock|go.mod|*/go.mod|go.sum|*/go.sum|pom.xml|*/pom.xml|build.gradle|*/build.gradle|build.gradle.kts|*/build.gradle.kts|DESCRIPTION|*/DESCRIPTION) deps=true ;; + esac + done <<<"$changed" + else + echo "::notice::changed-scope could not read a complete PR file list; scanning everything." + fi + fi + echo "code=${code}" >> "$GITHUB_OUTPUT" + echo "deps=${deps}" >> "$GITHUB_OUTPUT" + echo "changed-scope code=${code} deps=${deps}" + cancel-superseded-pr-runs: if: >- github.event_name == 'pull_request_target' && @@ -340,8 +331,8 @@ jobs: done strix: - needs: [changed-scope, admit-current-head] - if: needs.changed-scope.outputs.code == 'true' && needs.admit-current-head.outputs.admitted == 'true' + needs: [changed-scope] + if: needs.changed-scope.outputs.code == 'true' && needs.changed-scope.outputs.admitted == 'true' # Large, actively-growing repositories (e.g. contextual-orchestrator) can # legitimately require well over two hours to scan -- this org's own # standing operating directive accepts that central OpenCode/Strix/Noema diff --git a/CHANGELOG.md b/CHANGELOG.md index 1f535e06c9..02425601c5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -56,6 +56,8 @@ - Raised `hourly-review-repair.yml`'s discovery ceiling from 50 to 200 while rotating deterministic 50-PR deep-inspection windows by hourly run number. The scheduler hydrates only the selected window and stops immediately after its single dispatch, preserving access to newer PRs without quadrupling expensive review/check/comment work. See `docs/doctoring/hourly-review-repair-single-file-consolidation.md`'s 2026-09-03 follow-up. ## [Unreleased] +- Consolidate Strix live-head admission and changed-scope classification into + one bounded read-only metadata job before the security scan. - Include merge-scheduler entrypoint, core, and regression-test changes in the existing runtime-quality workflow's trigger and suite selector. Scheduler workflow edits retain queue checks and also select the full review-repair diff --git a/docs/doctoring/strix-metadata-admission-consolidation.md b/docs/doctoring/strix-metadata-admission-consolidation.md new file mode 100644 index 0000000000..0605abd161 --- /dev/null +++ b/docs/doctoring/strix-metadata-admission-consolidation.md @@ -0,0 +1,76 @@ +# Strix metadata admission consolidation + +Status: **Proposed and locally verified**, based on central `.github` commit +`5ea1cc47ec040fa4f6417136f059be637666c2a2`. This is not hosted-run evidence. + +## Change and metric + +The required Strix workflow previously allocated two read-only metadata jobs: +`changed-scope` and `admit-current-head`. A valid code-changing pull request then +allocated three jobs before completion: those two metadata jobs plus `strix`. +This change moves the byte-identical admission shell ahead of the byte-identical +path classifier in `changed-scope`, publishes `code`, `deps`, `admitted`, +`target_repository`, and `pr_number` from that one job, and makes `strix` depend +only on `changed-scope` while requiring both `code == 'true'` and +`admitted == 'true'`. + +The verified source-structure metric is therefore metadata jobs **2 -> 1**. +For `opened`, `reopened`, and `ready_for_review` code-changing PR runs, where +cleanup does not run, total jobs fall **3 -> 2**. A `synchronize` run includes +cleanup and falls **4 -> 3**; an exact dispatch includes the status publisher +and also falls **4 -> 3**. These counts do not claim a hosted queue-time +improvement. A +current exact PR is admitted before its file list is classified; a stale PR +ends successfully with `admitted=false` and never runs the classifier. Direct +push and schedule events make no PR API call and retain fail-open `code=true`. +Exact dispatch validates the live PR but has no native PR changed-file fields, +so the classifier makes no files API call and retains `code=true`. Malformed or +unreadable admission fails the job; empty, unreadable, or count-mismatched file +lists retain the existing fail-open full-scan result. + +GitHub documents that a failed or skipped dependency normally propagates to +dependent jobs, which is why admission and classification remain in the same +successful metadata job and the scan reads both outputs. GitHub also requires +step `timeout-minutes` to be a positive number. The metadata job is bounded at +10 minutes and each of its two steps at 5 minutes. See [workflow syntax for +`jobs..needs`](https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idneeds) +and [step `timeout-minutes`](https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax#jobsjob_idstepstimeout-minutes). + +## Permission and latency boundary + +Both former jobs had only `contents: read` and `pull-requests: read`; the merged +job keeps exactly that job permission set. The stronger admission credential is +still scoped to the admission step's environment and the classifier receives +only `github.token`. The `actions: write` cleanup job and the scan job's +`id-token: write`/`statuses: write` permissions remain separate. Moazen, +Ahmadian, and Balliu's *Granite: Granular Runtime Enforcement for GitHub Actions +Permissions* explains the general risk of steps sharing job permissions; it +supports keeping unlike privileged work in separate jobs, but it does **not** +establish this change's queue metric. The redistributed v1 PDF is preserved +unchanged at [`docs/papers/granite-granular-runtime-enforcement-github-actions-permissions-v1.pdf`](../papers/granite-granular-runtime-enforcement-github-actions-permissions-v1.pdf), +SHA-256 `5d1dd7b26176de6d5347885867156759928641c8e7415a09869cbfb00cbeb07d`, +under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/). Citation: +Moazen, M., Ahmadian, A. M., & Balliu, M. (2025). *Granite: Granular Runtime +Enforcement for GitHub Actions Permissions* (v1). arXiv. +https://doi.org/10.48550/arXiv.2512.11602. + +The tradeoff is serial latency: admission must finish before classification, +where the old metadata jobs could run in parallel. That delay is bounded by the +5-minute admission step and prevents stale events from spending a second runner. +No model, scan, cleanup, or concurrency behavior is changed. + +## Evidence boundary and follow-up + +Local regression shells and actionlint verify source wiring and syntax only; +they do not prove hosted output propagation, required-check publication, or +queue latency. Live reads found no separate admission context among the 12 +required contexts on `.github` `main` or the 17 required contexts on Naruon +`develop`; organization ruleset +`18156473` could not be read without `admin:org`, so no organization-wide claim +is made. Project linkage is also unverified in this turn because the project was +unavailable and the Mac UI was locked. + +The pre-existing workflow-header statement that Strix does not cancel in +progress conflicts with the current `cancel-in-progress: true` expression, but +that text belongs to the independent #1938 concurrency hunk and is intentionally +not mixed into this repair. Track it as a follow-up documentation correction. diff --git a/docs/papers/granite-granular-runtime-enforcement-github-actions-permissions-v1.pdf b/docs/papers/granite-granular-runtime-enforcement-github-actions-permissions-v1.pdf new file mode 100644 index 0000000000000000000000000000000000000000..27e22e7f1c1e4bc0f6dcc88b722b35aec4e8351c GIT binary patch literal 645793 zcmce92|Sfs_rFADQmIg!3}tp^Q^-u_DanxOnCBt0LWnfTP=t~xWk@MgktvxhgU~YSr{cEM$22haODdv z3V}qpSvk_~-HQ;_BzRleSbAF`FyN*hLR8Drh2Vw2k}kB}39fS1-VScA2poLJ$J^P# z6+D3_UF%rd5j5Rw2nbO_FM{^!m!i;ZFN7HB83TWJ@Vx@)#M#XbAtOUeaJ7NDM}x0d z$&mB$ws-SH@M*d^dRtmqA~fAB0|>5C2ssxAPZ5MBLeAdB(#F9O+|l&$vh=h;$Xhx) zJNWQ}c0CD}-q5R-o(CO{AXEshfLVkopEtn|?QUZ$i4()4kXE*){NPzdZ8Zd+y|=f! zm!znujhlmro2Q*93MqmW$KjBo#0EsrI22k0g~B7z-~|l_Yl5p6f%Fo1#~SL);RwOn z&Bevd)rP@Irw906_+XgF=V{ z1WzwWsu&Rz7KM{Q<8c^avcri_i2yo4h>M_b#IFn-yqy8IFJ7@U(PyC)glFl`Wlt zNJ!#RQ~WMaOHV(CBSeu{T6u|nm*WvY=J!#D^lWw1^?j_oiOO+MQv-BB{P;~FMKuVn zcHZ^~6dr?y-uLnb!grzFE9>WOY3)StMpzN-99*TjrYfts5DqrdTt+xeq^7$9!QMeN zz>}aKpk-hk;AAaf!zC+2yVp#o5(M(odSp5@;bo5`2bki*g}|k9a#t zbHRe-lA%TH^#m%U2Na6*7Pyk;f)ohog0HWyh%bhuLJ|@ZqDZtT8Z8W-5ccwS^|tgA zcJ<=^)`TL#%i7byoj8@CCM~Vpe7vQ(xMcR)SW9{n$BEQ~jrF$<+-|JL;67M zQ*@PP_~shsNCd69f%u7A;v53X_Q(9{6FgS=mHE+5d?ykn_OE8+rw4wpBHzCyGE3|S z;t{6wcewlmW`2+e0(9fSNJzfqrz+O7oIzR)q>P-IL_WhPny?m@33D(|!F4eVj!rDtjLGLf3`KHTo z55F&)f1+!vwp-ECn;^{vc`jiTS{Q{hK%yjZC`qgY@UA$V7*Y_4ltdzbB^i>Q126V# zJqKR^J;(f2&%tfURX_O6e8YYa>V-J1ffWaSK=hj&E*Su3Me{(T@4(k zK*7+e#{!lOD8D!{u=(!Opy24+69^N81o3-OWe0DB8A4PaA*$kL;I_sGLc!DO^9pXj z86!|w;8z_yy}&0V>17Q|=mHAWKvYI@jo;#{?>$2y)?Zo@Lx`$7*mwalP*8-Whd_}+ zJJ1Dm1qdRwMvBqCHw7`Z+SF4@7Lv z1Q9$xX#0C}kPKFvlXG=-Bff?rg@h=Q08u14p-CL0NxY&-M59SWqe(=gNra$DgrG^S zfH(Y6XN0(03S8D;QEM7*Z>kZ|o?zxq5@S3^9ZuwTU6Mi6OO#CAA3{ z*Cc@GQ{K%FJPF;y1JQ~}pdn%ESb9R?6D(^{J%X2;4~VHi4E@8{LDF6$9pWf|6AuDQ zB3D$4;OC9Nl89bynMAE9DVW2OIQcGSqK2$#h{WPw-qrCW96?}zY>33~nuZ_}RvRKI zCH|Wx!QvnZ2TQubk%WUIv56yb@LeFJ_WwrLh${Jao#9CQ<4COHNF3ov)Z<9a;z*SI zZf{UaKlXq4W7gep2Q8F#0{QA$?tXpQM%d=hd1KTDB z7ChiD8Z5EIC5ZPWzyN^fzbyqc99*4NO%%~?terKG#C{^x*$b>my}TVLxXDs4*U@Vw||#RqSgI1nL5CpyXg~LEj|AYnRpCX%%X{8iX#D; zVn`8;1oqGAghuPvbSf$-$Z3Hn1M_dl6bJDHkm5IKii?Y2fEV~)6NIlHTmz>2#NTW$;4vBMIh0^BaQ`=9tj-dABz(5IKLio1$#?ROKWd} zr$fNMlO_fOHYI>F!(!1QU@Hp*T|m0Pkz#Qukw3BS#IWvfXf;w2!=Tk%t=&95flK)} za+Ls99SL+4DFMtAnD%jFiwgq>>-O+6Qvn|AJT?3J;7C z&`Urp4l+_`$T$JX{wcA4?~)*5@e*n-?w)S$gnwi2aaf=QVkE&5X~hBC1OlEvrIi@R z|5^)NftOb}pafZbtOQyD+Wq{e(+h(V1CqodFp$ZDEGk+;1Os#z3q>e@pa#U{#;>Wh zBL+_-dT|&e5)UGhT+w~wcTx4*ipo3As$#*QFw=|%V#WUs0$S`4@X;Ivj%76bx+ zrUJioTC2+hvEQQbZz5=DoI!|(76Xm|ilFg8u;O^cA5-|V(*pC{P*08Yzi%0wzu$C& z5)NRAqEB4S7y%auU216}_-q}#1B5k@fXUUR2^xV0fj$zA1hFcZ9bk6~(Ef7-@O`07 z+$mVq&ea?R6576T2F?`xbq2d%Akv4jV&E-!FUc=e@D({3*?Y2}pEsC@n+~fj{;HYP zR0s$P@N3)bFF2$gKY~A3wQST$ur_AqO?Hc}x;=og4$QIMv-kA{g>oi7T7f5;acp6e zcY=DKRV6R+s_xIS<@2$Em)eqvjmusEw))Vi^vu4*oJeA**6Jy)m2Vabr~Q zol`SWL6=-RxQ_bC?7d5I^sR>e$N7tmnyC?b?2a87^BwJTU42((az_`p+sO?`D=%Lz zu^X7%=ZD;I_0v?8QNpvt;4VC4Vzul8ON&ac*QsQ(GGA2_lwK%oK@mL4hW0en?amgZ zUT*)=f6-{ROzrAIRQG3B_GkP7mqR)o;&}$JnjCoDyP9b4<%!vau^Ih994m7q(UC&h2PwoahT%_$gYa~6)xsYAOD>IG5_4b5^JD}sj~9L2wrK>}zx4@2H0K7piuD_ox;uSvLdizX zBXeIb`O>kzQX7dP_sW^ZpF#J(vA-CVcXPJuV;X;8_Sq~$wrb~d&(Dhw2ir5XrVH6~ zh)H-1-ERDHk{MNU%rxui7sr-i6c59OTt3X)yS};kW8=%5RUuz@K2}I@xnh5vuG(Om ziP5R-VTT=*!7b0k5jSnNdf8^Z)Jno1Zl`K72p-KIsJQnb+D|^yXzP5&H70F)hm`dj zsRHu`CT!K#oz}lew_>$_BGt#_{^z`xGk({~^xpQ^KbsHhXkp1``OrTXpz*k+d^tX& zyaP+;Y;ErJLO!6*knB;8W5B0AtwXP#Z{D?^u$eBplS;)@Wr^-q?mL;4O_9;6P20pW z5yG_X``FWDU2mGPCAgTGR4Z?|@o;*fXTED`_Z#&IKkYYuc3*KDw+SYh<}J)$*_rc% z$_VGCzSUx#x2^q>qL`C-dS=G-j`2%uI?paUZgJlCcI)kf=swuUq&6?Bk10kQCM_Q-3Y~h>3V;a8eJ{lPVK9w4wY?x zO(V^Czz(I(cB1-XfXGuGDJ3>j=l{Q!Y3kvT<^2UTV>fl>d%(Hx+CGB z`PlvU?4841xNXXP>*v&!oLowzWlA#m$~w4p#T+%lsN2HOHqXv~a<{!2t-y-8!pz&u zA~F9t!qg6}%eKL!Gd=MQf0K!NOk+jmC{MMfv6*ARQM z1ESMh?zs!cUHPpH1B`NmDGaVJBU`eo##Q(9U*_G}ytF6D;N^4^{?__hTg37AygY*R zt!nw351_Q}P%})rWi1On*>gO!b7SwV`DbpmB_)%tyBpF<+>d(h?rm#&(bvn^;T?VL zIp>8(!Po2})wd~NZ)CjrIHh*pBx2&&4Py$OJu@`8aP2qu8uQeb2YhB7Qwxt|Qj7%* zC1U6ML>tHE2TV%!jpaV^xK7$0k(uSK-u+QAvFW(2jl9vLiqdPWO-5%#FYKqp^U@8e zeh~9H-{m%NDpyCj#!hmFslL|RMFS7PEK>uGi|GxR;o_$*ezL~?XO`8vAAQuC=6S;x zop%{8i!P3oKy0~qG$H78m^xF*j$N)_&7JwY$1q>*fzLHZ9tcjMHxg z*C1k&kjtzgeWIoI-Aa|viMSz+rW5hr5?dOmv|eyss0t`>96q{zXXF{%5OO(d-O%Hm zQdT+4%Vz^d=+iu{H1Av{ccsIfR?JsTXUxeB?_9qj<_dyN!J_A`h{LXm%oOF5FLSw? zpU^OFRXB6aygNuK=~h^3P4`Fko{L&ybnQ*kWgUt)<>(ulM$cU+UDleqD|`FGQuPK8 zY;Q9DV^{QPu2Kb-PkbynN9=P1j;Gj6A6eieqs^pn2<^aaroMB0U(r@FLt|-)OtEqQ zIpd|Pg!+PM4ZC_p(XO!MWi8VM<+K*ZLwCkTc@t1{G-l5tcq+Hat=lC(@EF(jUb*(z zX@#Kk%MaTdh6_?p-sE5$e`+I_{#**n@-{oW8K>V_%W|XJL3&`MlIyl_l0faNbd#5q zU4=?&#s_x3GI+D}s8VA232tQOwYd%3RiOuoqgKb0xr+8457^^-$I-^MBHTA!D~{bi zvOR$!Mqa6nB6PxhV_AOKvF3NmD4tX2TlXBk=wt1hw4JZI3-S3VCzp*ol~VuJ@>JeP z;ZA1jsaI}Y($WXfYCG;MAe)x#Z@$5w77%+8JNxBgh{~*u)JR%o1e(ITL9G=n)3wF$ z>n2;vn{B?PCyiI`wAC;p$v<(SwYPhmU`4ZC6CQv0NhiD_K+BSqWGd39BWhl9cl12>dO@LT=s78%gG%dc=B9%YoNI%^v z+dQ5Z^?UeE-zh&b+rLZmC4X*B;{NIlmr%KJyW?`tytw;zihndeC1Ym^UEF2MRN12G z?GLBv4?mWw-x3(2qHeH@C*rBuE^O?R`nc4Cc#U)NFXo~xg2QrE5|0N}F-*Usl^CA4 z6;1UNqJM9jF4^OzC-k&PNp!}JY@ciPr{G(uOid?w?uvaakwJaUP)?sq+jEsdt1xQ| zw~rz9?s5T+v6z594(~;Ut~i};TG=CFr{(vG=~^DSRnMaletv9Z>xH8-?|ZJkqK{EB z(L?g6E9|l5KRzIO*E&mJ2YH~jhZ?1dvlvIOh`6Od#G@n0arL%7GY9i96rqg++?B0e zQz?5>-sm3ADqm#wC1;{{;aeIi@MSQXciC^!V4R;kcRZX-zvn>4t4X!(&D#$d*sZ&h zvv(a|#VNVO_4^da!|1o|yR6{mV7GS@!MFaIOU~Ghy~kY^HMP|F)m~r)$$g6n4JJAw zd!B0zFN!X5r%{=QVZFAWj$q!3Ws2BIpPHq+U=e2*azgF4jqaUOcjc8I?8@@P zl3r)*+p9BtR_Ej5{_!YfW}oBl?Phi`N>a6zU$*8) z`EL@>c$Ojm{&HEEsf@wPGdt93*_kES5++Nh$>Z!(_MJOwu-ue1=QV9Xe6=0)nS^mYzM14c-;chH*dh zWC&SzZ7G$%>E2}dn1z66)%tAISYpbnTgGiuo7)5%tj(hb=6kh|z3a4#2=&}^i|Mq2 zity{v><>}JB}0PmkCa7}y(k{Vv)(`VBw9tOy|92q$Q1E#Jjp%$qT=P!f^#=EJjuUS zpYm$U6J6}59E(e|kC^pOFmqq_%{r!gn)$Qhqumyh1+(czy^*x6XT-`L(F8VTmXe>i z#gN>S+)g&AR#h~&a+wgnb8el2LB(dbp6ti=*VOXws5@eB3wB2sY}pbmk1bZ<)lIfB zQk~EfKONq}aJDO8B#SchjLth6^sP;<-dp+FT17@xl8(fCOg_)daW17ZN6U25hcq=l zW#p}W-#22>%hbQbcPsH8esRKDewU8YAuL^C(WqmMhJ&L~!pS_|uAP*k4Jsn;g=Fmd z(LLJR6+|Xj)%RdG@bH|r+VXZtXEOd}*6TF($<4>OxUGa1Dw_`IWnLjG+pcN*nAYHuGspiH?Ki_nzJKl`~l^}0~hyQJqvMzRlTRQuy^ zEbExul+oWWr;*1vvnhhh>v(W9*A~|12X=Bb>J;krG+tDiYWdEK{R?C_$}R^U)mzwM zyU+dcrfQ_)-C9IG2P5kZyBOwiU7y&7+Ldd*3lqxkdU~+R3R0C42X33q+TH3)+>m(q z%G^lGsZEc~-^(Sd7N>X?TdZpzcqHL!_|%>OV>x0gD8GC>6x(|UWu8_>eNOFh+?nk~ z2P7=%KkSvOvpC9HBd-5~r!nQQ?FARr;KWkjCb2l}q{ma`Wij=pGQ%zz4eyf47kM`Y z?>!IxA6X-mk`(o&Y*XzCBcU>}O)DzS-l;2DmM^@Eo zmok}-^chWB%RY=}MsxdaL!p+nsV*yK`J#pe?b~Z9UvVlgdR}B1x}Nd$dNwbspM6cL z%Tn|)1x*+IeC@3-(|k91hSZ}DJxVdt^zU6i`1o$qNWsm3Llk0?ljm7zZ6Dd_T9`Eq zFUwHWq_G9LJTQ=cF5bs-vnP;Zd@#uM;PxA3O9J!FA6SInEFk*AeWHCG^K>3>V?3+M z7tD(Yk~eu%UkMdCb(9p&r2@MAy_2h*=l2bA3e?g z*yd5E-#XPLo=Nit8TVPlP5RmT{4rAxTD{XZwG!*oOiLCy1dJFrov`n0cy{!l8L!ci z{yqjb8;Jmehm5;Il%gi zrNgf3B7uE(rru3>xbsTAacpU-JG9{jeNUjgh$=!*vu{r@xz6Sr^t@3woizP#3Ytu8 z;1t&zpjY$%QtNS9UU(GQA?9p+NOg>kooT3{EauGKu(UnHu27cIA4dR7f!w8H1;p$4JX36-`cPzT)tSA?d4*e9O4paWN5>&{E%l}%!FQ^ zXVbH&m*+mmUnR6BrP-9?Qlm5Ojh*z}QMy2eaYIi#kJj1`)%r|q)w1{WV@3@Q8VlLcpr!Zi|PNM!qs*p)T-_DTe zH*zU>n^Z^jVO;qZOAb^}z^Ai;Vu>}L(jy0sHw<)XaC+N#s*o3dT$o`UmOdM9`NYED z(`1+2lwGAsZp8AAo*7XYx-{PFyQa2Yc*__sV11-FLu6zRo3XkR>#S^_f#YVoiIJFf zlD8SB{devU7vOnaV*6U}PagZJCTpT@q^V@|z07+EE4!tR^ynz%ti4&;a0J_&(`81ErJzEBP|!apI!2I zRHNSPs2O~vQf9?uoVw|b$4Py{8=5c!tyA?g$CK)5g6}!y=i&WpYTflJMk;rPR_gm~ zxRzs4Zem^igx%f$r97>k^al+g!Mx_D`#*`Q<0u}TrIu#Wd>vmxA9gP;wEONO|NXnP zjKUN)XlW!=N_-tux^~Mh-eCDkyY83Uy5XV{k3UwR)6ZSadhv4lcI2r1_PLeW*=OsR zT?PDOlZQI?c=|8`OW_y&0i}wr|?V zY=3T&h!Xjo?Hd%>%3rf1)UOm%LtAS>A3hZvQ+40=VqsdC-$um`ql<1YEys6rgeV0c zb-x(Kb6j-ST$T@))C_hWb5*^KMA28uBSL7eGnf$=t7BW{60XrQv9moWT^he|q(rSGm&wUw zx8E;#TAOuMaC3I^)CZ_r0s`ziLbw`HB|mQ!0RQm@cSukPQDuOoA#S%RqmbeVuvJZb z4qQkeKvn?00I(M^5)?vI83mv#VkAHWbO8W0Fl0noTnr&b!bXTHOMo{>011GA0nl_| zJvSFiSA;kT=>To(=~#M$eK&9mCJg|=tn~pr*aUn9fV-jw5T<4=GKmPbSsgC`by(f{ z{4t*Z$pm_ch{jocS`Hx&vr9tA2%}eFTOb=t!-9Wc!x9hf;i1ns@E2qlp!;~}8R$OY z8_php1HR_~zw;{qA-2{eB)&2Hw>h{vN~l#d z;VPUE#uK7oKp_f76ausni3b={h=M_dC>T|Uf?%%E zVno3(Mih)=M8QBt6pUmYu zNLdoa4?`Fs=mqH-7C($)M8Q}@6bwd$lJlhJU=sl25r1F}1}FX_USKrh-|({5DSbCj zaD0J+qY4xpM?k;=BCT-rfPw=D6dW_4;CKNA#|kJoK0v`i!4EvGy72$5Vn2`1s+<1~ zp?P%CNqG6W@ zrTQTqLL*7EqhXha1`#UpKJ4<=@`PRuc>ck7pjRQ`zt$C~)1P^Q-7AEmBhf^XI~sP6 zXxQbUVV8$qh0w2J=)ZyJVOgxg=vQ&{t3diyB>gIseicg(yCF2}hS0DZLc?wd4Z9%# zz#-8GyCL*1F!ktFm-63bM`~;hb{-A8mS5{K(a`-YJJ=1OVK;<^-4GfE*P~%KgofP^ z8g@fy*bSj!*Mo-L2pV<`0Lw+<6?P41*fpSG*MNpy11N2QpM&)b_5*0xrlVmyjfU+s z8n)AD7;KJ)?KB#;)1WAn)E;c7(J*Wr4cln|+ai4r+gUVhI|2Fvz7Nj>*meTk2z(!= z54N3X*mj~}+lhv4CmOb$XxLstfK#GQ!uAXe+cPw5&(N?vL&GZpGyr%LpNDM>0BjMj zf0$pez4;BB@w1M=HtKJ5*q)(bdxnPX85*`>XxJWs1qG322p$CSf`M%e z1`gXXu#LgMHUqC)*NKQOR8!oW5L z1KSu39JXU%8v}4gzo7NE{nAh4gn@0;-;5KaRI9XpTS{PHd-hNC0t4H?zv&O6Z?!+T zNCN{e5HPT{#K6`P16xZ77)Ts_*jj>7{9a$Nwh)R4|6GfnU%TxOp+_Wa*=vi ztzv@hE(W%{7})Oq&@-{O9{|yOpcKN@$Hj`^DFUEu0Oj;U{}2;@?SHj0YPB>9w&NJs zc0)*bBImGe{h|LKIs=<0KlF|Tp!^?tUmJg{${n`U7}!z+Kpv?#*ivI)OARU>i1+`t zcP#dY-a%o!#9w+}8$o>Q9UfKK?qguP53r>qDqy=0V1fUscYw(Mp>sT_Z23#)Pj@p5P!8X2qQ_{NfgyN zsH7pUBdDRN>E`N&LJI29h8{^ z@F`KkqR`G9@gZp4|GnM_vY=r9*TBut)q#lF!@zzRwjU&Fj2vvh@e80a(lD)|eyu(E zPW=IW9c@JeK`jRtD<3bgWvS&Rp&<+zda!l+oqm#9uc05>PW&tRBrRP-KG4ViNIuDY z|C)T#=&vCkBH?G@%NiF!DM{pB2h!`d~}ueHyAME&Yc0PbG~*VO-2e~7I9JcHLJOTL>NQ6mReIae=-Z#L*>GKhO;M4kOEA)?5B zGTcP&S9|`RSAbm7FVYIc)x+x3a!?5y$t;s{BqXj@%a&pP57#_Hpl2uuSwqiSqYJeK zn>;uzvHChO$MS8*hIq&d240-3X=|+ogxZ324NmX?V@0aV$H2=Nq9p@$7qIUkl8;$k z#{42LvPujoFM@#=Eo=J!X2Rek4@et82@H_8ASF1UgbtMCfD;+ecccUloag{q6k^f@ zBu}s)$w5p8frp^yuu!t&r^FC=2JnXT!9kv<2 zkOHVvAr1Gc7=9YkZ5al&Anh4QK}So@lVO3_@EFG2%fz7z!-^LDcqJ zb<;#;{fX+;Fb@RJYexF-D!U z(*BmhA9e9hDa49k!6d|h3My!62r?@oSg_o|h+{=0{)ED{3)OEUzbeBYQ>lMQAy!O8 z9LNwV=z;P+&?t)m8DhX$U{Lz}w`KUFRfG%qRc+neyutAsgnv~W50V-pI1tx>4Gs|` zpa~=sKzS-C^#bD#ZHWCgjXzpjh{n~@9#W(MA2&y=_W54u@8ag;C4vQ2imoDF z)(!+$Yl5gJNVyQtHiPSZ{`N=$;`szW97zC5lf=R14XE}J2m60uFIYqZh+G`h(1WG! zZ*%j_b^|`X=>&0I4k~NG>1~!aE)M^y02CBe0tbe{fI?~@eQ+Fsh&b4!fGXF-!P5P= z>0BFQexvh$bZ!C$s4pHYTfu%IsQQD-=&&Mqu%<>!fNC%h-~Bd`Kf0E+=TQ8Qgoy$K z0_j2JXjrhNgF}PAVDsyb3H|1(){gqx-H_iqkl@!A6*`Cj%07ZEbrC!eCpei<1j?L( z?P)Lre_x!y$NkEr{*MM7IvxSU7YJ~w2e7IVfJ$frK@$n8trYw1K__7&elq-Pg^Bt% z{s{*i;sN#vK=Mrl2R0&c7z{Yf14E=6oJR5obpFyo{g0#x9qEAsn_R&B;DDQlPV~Tm zoi_=H*59{ABrM6QEdNs-A<&~A>j>XT51bxQPMTVxy~n_AUu)t3cqc~Y4Lj$0B zMwbSI_!Vy)J6d$-B%djd{3m0+ZAJK#ocC_NKPkxUU+OY^UNiW%0oTX(%^^|Qtu3q{ z4Ew$Y9~Ac0?AgY?;dVpD+vX~VsiKz;D@R9tD{l&vRb8DmH0&-llD+qdZR^b~wLSV< zKi+ZZX{fpyXwODzZthm5!{TpZ%^Bc$Cn!pSNqzePS|pUQTUC@QZUs;lq1sdo)+7oNR4FcsyD_?yqd#f>BvWI=td}p7$)L5w{DB4fmWjI+U$?y= z=gdSruN_JxYb_}{?{&BKfI;}hyWwh?h;{q6Y;>L8br`4cSSh1${SKy(uV(h8f)kUATH~=TVH7II6F$(EC2$86 zyW79pY%QtgCo8_vcHZGi(~^p4ENcQK_gIH<=Hl1w-mlgx8u0{iEJj_&eu!Cm^xW^o z33-+PGhLPmj+U4_ics|PWscsk>x^xdS7(xH@cm^ePfq%<-J4})x8=Fq+IDQS04s8{ zEz+$6Uso`yu}#z3`X$@duh-fpZi-?LqZJfAeqlt`UNphXJIz%k^E{4=@}h6>@U|A)N{V{n**k9z1a}yugsljqEk#l|sD!wyFW_W&Jd1;e8%@%SgzgQpn zUaDJ+ca*!ID=3T4exli|Q^^-dUYh0Q`hwTRf3f;}Y2`&xvb@)lMLSeW6meGR4JY^O z2k+J4TZn4rBlFu^!f=-A^ZJ{Iw^1=<-}@49HRa~icKN||zT6(EJ4|ZVDQ>bcj`QVS z;j*|Y7E#E(^+7G)`RSUZmc_enc%|1~OQ|Qe8&YRRDsd(~ux^afz090Dm*$|+^|WPK z=5Telj{K&r{p5=KEN`c2hD=h?cQL%%ny66qK$oC=jY4o{{quz$PbSlYLyz;w4`q$h z7-X0ltn1hjlk~>_xRu>?s_}cY>mS?kPZMa^ir7xk9K&9%Dkj4mYq;^)X^@o$aeh)k z?H2n-P8mmO3SO`6w{XXnI`A9X$h$;_tv8k<1V5U4ZXrA9;O1`hik)HTkq0gJiS`K5 znnN0&>POr21$8=|SYo?wbS$B(yC-UP9<6p&w~0fBzb^EcEt?nGU7K7$!A5wLxR1(I zZOramV@e^9(=89_?qevv`038xBVYH#E3T9I(0-%Z0T#Z^U992sCZ$SZ z2CeTxeT_Z@8yaLc$k1oqN)xuTso;ybx2f&&iN{+mr8%Cw-n&2S&fo@#0JEE>#|{}7 z=44$grnw#}(oM19YR~J?e9M+3O1jdH15>d|-YqFp56J3nqCN@HJ$9L{YEP@QtbTkZ z$v-QuiEbB9$>-h)Oej}s$g?Cto{~_;M8*4KDjSWnRrjj%uV7UjN*%0XwRuP4=kevC zE0WjtCn^o+j5V8>3OyALk7bEPw3Qp%Acv+mb7;8qz3!cFH+Wrv6{cV28QHW4FM*}q zyiKM&%r>I3<29MMhG}MKl%&!KUUB(CY260*3uXLP1~|)<)7NP_^7?Be^`uNA=9Dkr z6j^v(P0PT0FZ5HwtLl~$Hx1UM3wwTAXgGvnBa^=q@_5GwdVe>s3QKX_sSj7nXHqWN ze-wCC=PWgpv-3Vj|HK!(@(1Ji$XQdh{Yrczry9v$KaMr6r~05kC&IiOmLuR~MMnP4 zduN7U@2rB!XLLe=x`VOS9@@rs)uwhq&l1yO>>klbUz>!;C zz;`f*Ypm16lsnrpJddgFbIeZ3cbm4KZLeZrP`5}eI+d}opshQXT{4os6@FrrjM?s|NeuQb~qujZvX1k2P$0B3stNY<>?n6Bz(^7 zk~a{#e=z!`bH?X`(|q!!)Hfr}Dvsqah#QBnImN1#ya>G_tKcR(^W{1v-mzT6K5V&+ zmXG~~hZW|@RnuE1_hJ0(VL0~y(x`%c+OaHAGflMqSTV# zi1pN;)I74Nu#>w|nXZ;XtE>*InmY$)Xydh4~WaCbB3k}ojS?}@l{l{r~Hv*SS@ zlhFx{TYGuNRHns_Y^y0BqLd_~$)|75Y7-0*ci*_qQKHw{Veq(7}PDBOnt9 zrdX;>p+-LS(ctNqqbI99nae-XAs;sfSX8a+J!$>C8-?q*Fira~wUp|9O!e01helG~ zdw5#UH>%#ZaPxV^ELX}fR^xMc$cwlAh62y)tGLAM(5~1-nnl*(S6ON5MqH_Wbnh>Q zxl}R8R`GlF%%#|LWRkC^UwLfzECk~l#8qpD=-YiPGZZ&7wqv(~(&mUz6g}E$&+g-j z?KyAD>#1u`NpjuPB^zlwkZbjNsTA3FqoO>#&F#AFBhf}`-ja|fvpanhqFeR^iZMpZ zZZvmKU~YM^i{*axeC!tClo#ur1|My)FAJUX&MJAj%h8M}3v=bH_suK&lzhpQ1s9{k zusTvAJ}!|rxDh?{*cVkgQOoW5y=8-W83QbxG#e!7S@x5&o=ZF6eJ_u!Pi%{+>3VIh z&0}n|8|9;1?+M}+ls+*?k!`-+@7^xbWz%0>thtS9Oa5hfwROp@yEQ2EZ}8?E6dsl| z-QFPhp~;7da8{hFvyw0M(T24*wbk00dd)tUqtCrrB{d?Z3<`O~m1f~_=;G<(Q z_sW}2DTU^QbK;|}%u9Jc?P<^qw5IfXQ2cm!MMtrT+*SAN6KT3vSMHgW37V%E?k?NU z$}g*tsgy4-tCdZNIyg&F6%)=A5qRz)-<4v!eH>!PJy!UbQJnWSX3UT+v+8a#UGVmC zqp!H`-M=&7=(saoq8gk3vs!l^?0rMmyw54k>;hs2Rhgc_t``h=hQ*B3x91;sioG7; zd9+YM=t-qaWfsq@Ow^ZTvHQ4eW=zqQnbFA;8A0}nwL8j0aAuEBpWE;>P)S{MtiSxu zv`oUL%L9~&&bWJT$~vBOQohy9@td@`*QE{W2&dm-GWhTIKH%w1=I|Tf(or>ez71h) zTzYA#d#2!dQuT)pi**WF^mjjMH)tp9We>SR_fjS61m{MP^=48P?}yFWO`YSXDf3Kt z>xVOv^xV=bq(27PT}TzUA74(`&SQ_vt?|od+;;HTk*bcCYuAr%dX4oqb2#+rgF%9{ z2Ln0*<-G#e4h0xkEfl7YJEf^`Ex!H=m6y>7te>`pV_eBrTH2**CDI#%8km z-Y3Q9FNEvKO@j_UpgAZ&L%&6&ds#cgcwb%7)=svh3^dZ_{Z{HPrwiM=v@@}W?q@ud zR1i75gv>AKCT+r>Fh8GcPmy2nF?Qef4H}g^wfjOtmEt(FjD=2z zpV^3!I!&;!4NauPup_M}?xnq4AKCXd_(IbE5r1H&1Q+qwe?K3?pfIR-h-Kr4gE7NkFS-y%60YZxF6|uJI|}Q z>v*$&bT@6a)JrFaU6Yj&UyM3FzAJB+r}OIGAsngB;-~!3w7B)Ns$(p*N0K3T5QE@@ zQO*QIYebX54%S(PTjOOM7Y#?Y*v2DgsbkmqsBLU)e4=uq;W~Hg%PwZyBS^+VU*DLx zXMDH9TAL{JUdP3lwz4&Zq#oCQYRX+o*&4WR)|^b>lxqatq74IQnxo&$6RR!MnG=Z} zK3?fke%9Sp>6aRCDv#nM>^xqm#94YQiJ$bEWomwD{7NNb|4~f8pXr&lm&Pwo3dIUp zBz=lI7oB|?bpMjO)oS{C_ea;CtlaLK#gKEG2E#n^;6=i7Mw=AIOx={X6Xyz@o3|Q# zX>e>hd%EzR$fXZsgU;F1o2stWJl9YUO*z*rop`db&v$UBIzCuiN7DLmsEt+cf@dfT zi{0aG57o)1c*`ThPkW~^bSc@HUTpPrd0Oh_A~Kp0-J%p|u!*`qEyLa1Uu-7K<7N7e zS1ExmTfg|U^YHqf&uz8eZ<}kNki@Mpvu?Ys)XirYF0l#({~pDSYOh?LNh{l{Grt|G z9i`MwMr2XDsq};vUQfo-*2Qn5@>aGth1$L1);VWGHj_S&_KnSHNkb;Y)i z%051@p($AvY4{-5a=s-k>Ftsdw--pyJ@F5tuJVRlI8+-oCR8rY{}xg8ki-AXM%yP| z_f*=au;FLUrtqWJB{X}!VMtV`^Hh1=rrNex>WyJeDj&OGUU_n#`wb;`9wql)efKdX z_XNr~rBdl<-qlHNMN4;*=PECH7wuN)v8}q*$ypVZPoF+ z4>>-?%I&?Fyz8jw=}CRrukFrmU&t3%%nzlnyn2ymJ^omQBQW@V?S_@SoHA_om$z!N zm-YyMoy$5pm0q&t;dKW^s|P{jw=3J9>wb1lFaEsV|G|v*<3*;otWLhlA;$|nHofgh z6*>ZZ+NHGXp5=7AuHRN{AtcqVPh|2o+mw}!t}~)2mvtMZnwosIJNJ_K;nVMKo!m(f zQc(J0yl=1a)U~7Bm$27zE1K1KtatWE_bc)5xEAf2m30NPbHt@U)y?5vd)~8ArxIVo z_Tsx2!nVfc3TcbnO>ksP*Te}Hx*FH?O(FTxPcFrB0vbTzn{-sMpAJ z@yTGU>Kv=8%304?)C0R4`@*N6?RDpS(%a;W5%Vs%bW-CLq2b~?=c=M>Ttk^>UvKK% zcYwOVku37=K;2m;|Lu&yTdS}0Z>bD(2+dyNn6?5Rd5?YF zuNQ+4WEa_$@9jFOTOav$AHnu%YO|n#QAL~afm3Qx>`r&GXPgAw3f8q=5|Hljh^%(F zqomfBGE>lZ;4bfgt>nw0*wNjWlr?f|oLS!XO9`L13(pF$`65H*-bi_>$YzGW_>yfr z)8Jv5E>FF@rP$)Mpt1{v7`*jVbxl!E*$$1xf@^gAx9+(==%$2Usn&SAPUiX$$L*^pqxi4D7boFPx zx{P+-Z*58)Jm=sbqxy=8g>w<_s-zh?ZSnwf;O*=7OJ?|VBa^tjRj$JV=}||SKR<6t z-jnj~{PObS=a09sKAz{|-f}e6-jh$(Sv>BP^t2szDLlxICB(u_sQpPK)8^FZ-LyAu z8CWftE>>k#W^IZ|iIOZcs9wJ0tbI74P-rU3Y?L7aCD3-&?j1#T!P&zqCwVp~OPu_o zNVU@E6jC6S=8`Vs%5MJ1k5P1-dpiqgYM&DNYJe{b@;15AR)Mr4mpA@47D3TXRq}_k z_}!M-rA*R4oN4mYD|kfq+2z)Y`u!Km-8N1vE~sR{0a*)w08FSX9knBM7xCQ9hc;G6?A zPV=3S&@66B>JU^*<8@6Jow!h@^}^^@>M;6p{@mQP&71+v7FYR7L&L)`T1IDt2QqB$ z)39F_HtD`MYbVoP8Ri+!EytAR>KVh}&hAiO$=2wRp^!U#Q=i-VOHsDkicf1`UdOwd zc(!=+amC2ctr1)jIn|%pZmHp}Kk_|moN~d`2P+ZhR-oUmiw`*NJ}*+3^*MC^BMgDr zyHzlk=S_3`?iVjVKfiXj(dLbjI?coE!`zo=>!iM1rM1;Ks((kbjdgwT%!SRab!49y znDOKYwN4HNSXW@<2CM@Z{A( z<00*t>`2M+76;rkRd7k+a*AH18lsrtOE-mT6B~ww>+%3|8W;WMO7z(ilqTC!(E(Qj zT(4k4y@bD{P!aAnQhjltOXzYrJg(Sr?+f8VhvLOA1!ugOmA(2I>JILSb5Yme8h9JY z<9%cO&hdcrJqgD+5oL~-q(VZ9zR)1!R$JwX*@z7NZq!i*G*T}G3oqsgt>t{;4=veTNQ zIZ{1n4E1_g#KTr*>fjrp)44SG_}(}ROwI8EFCmUL%V@nsS1ro|BvqCd)n|Q$SQWK- zx!j}IRk^jlIx~m(OL!a2y{F;a?R0na$f!!);C1mQ@@H7-0(kAccEsL0%h|Re-Y&(N z>Z_?|@>i-mwVzvmE=(pBJ+5wY|Np2=1{?7h7#QYT#11z7%=iT zWy}AlL>WcIldp35zs}g9p~FN$)dFF}MI6BPkBRY~UBXM4(~`kgyjAa9D_H>>pA2%j_pHOH2B}D@{vJ@Ox73&Y-~k zx2XN~iOoP6L_oF%iwC(JP@V=(5(UW|fQ$gb#)C3|-xumH^PvBuOcSVI1TqCDUxUOl zgf&KiBRfGZ2n#Y!5XSuXiTv+5&>vx7e+G#VLy6!abOFdNf**`QfP^g`0HUG8c|ij2 z_o*aSSo}x*L<6k$Kh{rB!3V(JAYTWD7%B`!NdN!`sJ4NQXNL-Qe_NWwYL5R%C+6SG zBQ*GlJ8_6k3`ixTzn}eZp73X*jRoKm@N;qChflz{ zvB1<~0k{OJ(gLs@5eXpA-Nx+WJTg`s01^O{arKPb z{xlP{_>l+2RTD;YZDS`~X$9rRyF)nCxJC627Wh&1z2GCa*vz)^c^$f7zUb%@_?^04 zG182OPvqz4-}4mx8*%y~9?^g%P4D(K#u^qn{ykl7Ujc;{; z>_S8Kz~I-}C8{f2n=(FqMD^zmcdS^K3^5_|Mq7V9boQlQr@yWp;R&<9;;VN$J%b*K zI~SCC254JT<2tW8zF+?=aI>V8$g%e_A5yHp#yEBeoMW`Y&1AdG?5Z=jcFODxye6=2 za;q{k8@l;nl$MT~)}WZGO@m%uV@t!wxWXKyl=&g6hhoClBU6nctc+}2Y9^SLBuB|V zJc%kho-2BP*x{2`lE__Jlgn2`RLc}(HM3gIT&DIN_9c9kHcNbgP^uEuT#m-09q&&R1x;L4 z7DI4Fo?BKFr)tTp=s0Axa)rgTJC)O)jW9}h%SPEGB8q8z+QRKkYic6&z-%U$Wh1v6jn+#2hCI!WHX z&0DPd1Gh%r{d}!_i_0FHvto;d$7$Gna<5$DV9KeRl%vdRr(G{eVP$?tse8mz(E&}P z9~RLOYPz#;1wW0~TM~|ZlcxFZcp<3t1 zL53)DADkAsXCC0Il+u(@_?R{^D&vtLuTV(thbO&$$8-ykLuv>a zGBNGFP5c&?adXFtTG^<}ACYNe19`1&$&Ou@7*)5lLdAFvv04P7`R;E*Y*shMc8$3T|m3l$4rS*NU>i~rl6N}(X? zAr_V4i9DM&6+}LHkka$b?yi#d(wof1jk^1;hE&=IdnHU=sq16#K&Icr(hMbLOkBh~ zPe{zOSdM>7DIk@1t6$p4TllcP)O`9w0{UX9*X=4<`#mZ386p>NZZ%h{)zLh;Zy{`> zUEMXbw<}7&-Lk}Outj;Jw)|t2uEb!E37!+NM<$M$Co4$GrAA#7P0rNyq+VZpU1AP_ zb*$fLQ^Mrrn6GSWTl4uyl3iC$nCiNu1MIT`4hFbz>g%cG?Xi1#U){9kH`&xK(D~qY zTL(_d{X}N4{E>#)ys@o|TD0wSHw@NsCR}!k#MdS6tFt~Cn81^nevpwylNxv7Z1D%9 z4%#;#&o|pdAdWK3f88?18S=9F>85h4L+_7Fb<*5FnNh+P&z4j`D_~6Lvy=LYLqQCu zC_bhnLdoP-&3&toT@UX(6*g|1FyVZ!#=}5Jl%h|N9*F$B(`OxRXwbuEzFQolkIm<| zKa9YyBM&-V6vxCKO?FUL%KK{^W7Gxg$Ja+(DMF6yZ}A?yT-5h6GUMLpK-~Tcy$s5; z>=JW=?2{h$KAX)n&gELvVl!ncikuDmtv^O44K>oMKsd* zSq?Pco>^xUtEVwFeMG8|^G5o^yAy-FUvt?x-@Oq_Z+ZDuas1NL^K+aI<%Kr>%t}(I zPrBSs&*A0r*=tYqDUvNoixx-}H70RWH|-L6-JCo8jB0Gg-HkHFBI6XE{7Zx{qfS}8 zo3GxiaX)K~mK6i<5NqT3=A%B>MpmX`Ldy2O3^Lj?(NtLXD9ELyN_4S5dU->Z`kr;q zI()W9?5Fh6-`RR);0A-?{o83;Unksr-|}eOiQ7hVM7C}6qLZZPk%zm+*^DU7u4->P zREf5{xb;NtUeRKf0~=&i*GElo%{dF^CkhO>RN7mLPg)guu+l5e?>FPTKKk)6>#2#e z(o&0lnUi**as}ula*7?aZ$mPW$+=#;kVAooHlF($>6WC5ly^3%x&F?{#p1P7*p=P~ zAsctmB7NA9vG}(kq6(20HwJVsye(-+j}raxVj+1}=CC+Vz;Yr=P_?bmyeem$%|W$}xkh(TseBc?ilArMuJFr-T;wgj zlx5-gshIIaKdyVG?WfV%c<@}pBuf>2)HUz29L&*E zwyaaU+xHz#E?|gV7an-cYEBNRq}eLs>+M`T8F4WB?wQQ_cd;x!;Oxbk3Qy7Wd7bmD zjY^^I7EQwyI>+Wr@p_+h=cMFj}3QDP|*XaocW?u$Q1d-tk%WBV8vlxFxGDS5tJ*K$4!>5+R*Xi*w%AAjV z7;cV8L7@-TduVbSHffwl)7tvM`AmDMTg&-veP{udBa42v9S!(i1ZB!rY#2sygXISP z9mXrQaaU_@MA4ThhnWuUEldPyore8~BM+2rQT6d+?Jo0t>{)O)ypX(TwoPdl7<%8;r@Z&|NhIEnq_p@UNUT8bs!SD%XEaWo>okxzDE z{a!tW((|pZ7z^WjXdcIW_w}Ef)i+=tsBatL7d(0C-mO|>-@C$ky77FrLDgyFO`9r} z{L(+XxgvJrnA8C=rrN16!sT;+kZJ|&lBd(!+Ggc@3aH?$Mb_L zEjoI(X_e?W8*e{0ImM?+lX>&Pi|o&uSmRo*goUI^u6KQDmK<+l>~m1A{79VaLi8lh zv25kRJw|LEvi!c+!r6_x!#8}Q(Ur@e(b9V{w#lXBYn$;M*}l`|)G4awA5Qz|J-M_$ zLS*#+@%ENMd8U7wHWu97-QC^Yoj`DRcXxMpcPD6YcXt8=3zp#SvJXAm^Ul`v%=_={ zsr>{We|5=Sa2<7=XN{#Sz34LbHg?rCl-`PDa(u`$A2 zzFE?x{)w$Q{=-P<>Ki*XyC9cGg}n_OsP0@y8dW%&QAXsSSfenNrS{kejiitOufi`H z%j{c&R1uueUC6FqP`^`p{L10PhBartC*E--q@W`;a7;kXAH|_^iy6o@DvdJlATt`q zW`ZXLL3%cFq=qLgLz3ARfG33>+W)-HnfSTBu7O|C7UbXvS0^}S!-VO5??Kp6q z-$LeHF@h{QEx(f`<3((m2_d;4{Z>VGLH5B?Iq$8E!Lq^gty9!q>j$^+?28shZqAG@ zHlOV1&Z;-tNta<@VRCY-EkVsTL4-e0zc z$flLsN62e2^G@!F*-%^Ri_D`6-w!#O{{-}?l?`|Znap1_L@-nVuetq@D3 zpEAQLPV9`iqV-6Yru7AsmlYe6m-44D{)^(t$_(GgFSv1GEe^CS#Qi50A#%^&#R<_~ z_(kpI)GbV%EcKFNB7Ul=f}J)T{4_k5naiE1MF9^7^%zBlIBEl_cg$0q&?R-;v*w-} z+gAo!fD9DR-*6ZdJT#>q3?Lx-LDaD<^`$}5Ujz1$)T>gQp!#8%ib$VLg77yoSGqKv z)(KRN*LE6XJwpbfcx|FwdDm5S#MwE4uWxF5SsuSMMPIbcO4)Q9Th<(G|NeB5X>BvR zFp2F|VFu45`Uc~H)Y^T6Xx0=2`%ulA?JHp$8Q3q^)_I3iAIwnTxxZBnuQYAa>MYO}#oBW;M zscpK#&5M^}nazi)G+vjG9?7rCh*>@U1M$Df>noUOuv&KdpVvc~e5guxj%kEiC)v9x5V+W$m@!G8$s#IKtwuXLJiU{Hy{1cV-5+*OXb-D( zm)Esx_nMZ6>Aq0re2w+70&#~;q08_fX~s2K%U*@ogLq#HFLF}=g$JB1uLFpZ}7%(SAN1m|SCI4d6xb6b=%@h~$ zr|<=hUkXnS4{}jBfjn4Mn{i!f%Zs4sKYDyfF!z3f$W;a8Tf&2{xybSXS4o9_UxQ;p z7Bs2)`W%otuxH@s{~g6BG*gglI(O*ymTq%SxmI^C^rbVEU`DA~oWAefJN8Q0Zo~^r zdFMDjNLcTCIfTbZ8C{EdG|HMge|}IRExzdGK<`^+QV@9hsmKar^H|O;Uu>XgPMf}S zq%@8!>;c0@d3XFMac-+D)=a~^wkG0CDT8sfbf7!^gg?A?*&svsSU4As={RD-*;NU8 z@p981zS}zizx0yzM`y*OxrQNv* z_??=!BC0D_DNxyV?1HDcXx}pOfFvibDSz9F62pX9C6HElk?{G_C3_OYU6BP42??P( zTVsy#dK2@5cheNew62P|o>0v9?Wv!37Ib@pr0b5!6wa*#(&&M^=*-D%l>fvy|KxUt z;%L${%)!gF!IG*?YF1^r4VzBseyoJdsMj!i@G{!MT%>tHf|ekIw*7UxAmkhSt^rpn zW0Y58g0ycCuQ(&Hj)ZU`j)Er&Y0a8~$F-)q$*DI8H%^E1Bx<6r(X_fx5~_V8c@&D3 zB_bM5Q6F){kUN__cf}_bKl&IiLYb!+n)~ziB@R--Jv%$OH3hyy6)o1bzT6+f^vR>{ z1vg!=YPa8sfmSY$UYtGgLY{DBbUgX4`MU$SGJhoMG<^0YshA_{Od@S;u$!><4C2BX z!F~Xf&o$SE;%8ge7nmLr;Dv16=BOUZ%W4eO9S%Aexx<}eZLUG4hyQUd5&pBR>@dqz z5w#MkPibMTlM^MtGDPkSXd8>i78ev{$P4t^i^FFP(NdeR2??~RgqpYMi`_v|jtJ^+ zmLRI}zISjY>`(M5;md3qUofV2*(vci(Uoe$QJO*8l72WtULh3a1QT4O%mm_m<9R&~ z@6AlmF5bDZ!9LxaRhE%YFLU?8!3=#;Xg^DZ@)Rb3bglWS0MtB^kr|1fMhLr80dk6wH{DZg70I)p%H^ z+7g^TtPTqnH>Zu7t)PII{j&q{*U+GV7HMqAq5ImrXQ|K;ygbh?qY|elV)n@|urfa_ zXpDPslQs^Vf;ZjvjNgnn&)^lcb42|}v1t&bdt!tzVQxhX^f2@f%A&n1@7b%rjQi^c zuON&MXbg{bm#&CQOH(KshrVltXl~xB!jgKI`NytDw6R;y zlQpVb5?|KfVx47a(Ss02iL6%&Yvxi>v!x2M9X6EKRDtDS z{0v9P4!rOPJ@kSXUh^YHx+=PE#?TlpiQhf#sD=b}M}ia&5?N389`Z{Z*bff&QPjx^$Orn@C;YDn%Kt={G1JF7emwoM1B5|<{K^FI z96w&zKbqM9AmCpf^1mqw{-1I3nAib>0b)G>VQuuRfM7E~@FQTu0gfKPdIO{Z{p*8% z$aH_+tbgaFe=xp(>tO^`2HIFSIRW}ORXl8+4c!09A>{;M6abb0@W>Bp`k@bgWNH3g zTkDU|ssA+c{}2oKXbSy6Cm$CFKq~;=8=xl=FeDqmDrEaR7wL~ktp9Gxe{z@pVI;T4;QorppSBJ z00i^Db5{Se0}TjX_#d@~0lXBj`OF`J>qn;{0Q#~6HXo4U2>7c0jj!k*xo7{~=KmAw z_vhw+(8-TX&ObN*qmGg3Z%z3h`Tl>0tJna^;{OM(n$p%vT4zu7y|0_qDyNPBX4p2l z8*}xvo*AqkIU_~DTS3(dZpTsy7FIsHv_19PassAQHg=O~u&UCNyx4a12i+cM6GU#z z%1H0>B!}N*pwD}KaGODCGFwpF2x$fwzuTQP>$dYn8v@s|nT+*}=P{%d`<@C=TmdANCV^v4LA z;_MpsnKw^xnE=OAobZ;1`DDF2>Wf5Vs<;6K5DuxJFSNWX5X5v92-FjYGFvc(qmNzm znkF5W>MITBP#htiO4x16rQa`>D3~UQt_fInz#Dm}TQfYAw#PXGow=SLPV~CS14*4t zlJV!jP!SD&urc8VU_8~r3X)5mct-3Y@iNHp-3L3BIc~!DOsQ;*jpta3qhLuVa1ulw zuq4Z({MN2M>~>zZT$)bPMHK&;JDDJRvPa7AV$6tNhZ6%EeEhu0R}{g^5iV3+e;$ey zXHru2S?#oSHzC}xY`E=bw#K9(M@R-MjOx>L-mVD@&+GK`Z&kAMT^wH; zooVk^b_gW2@x*-dnwEAdO&!1eb6YT(-;W8`$lo!ls)HvLAEvc(Fpg`DYtgf5D+Mf| z8GUkU_zyK#NS!p?k#~^v>PpQBk?Co<(t$`vkfIqfN*Xn%mI*J2TJWLqQ>)OtYge-ZV4R>YQd`sGS$wrzuXdJE=hnN!i;(OFt$P>GQ<+# zWD~$bn5In|(K@`2Yy!(D4Ax2}NqF=#VTF$QpSvf_pAd`B!m^yUn42&0&vy{YW3^2q zN>T=Ag&Q2U!(BpdF^UrMYH#TRb$Mjh-RSIufp(`|3v#dCKZ|VN%NCXN;Iycuj8PlI?A7j1u8hxu34;sS}>?mT6BgvENX>T8_T6Rv)=+ zTNp0s+f(SP+3A-VF8S|QXe{mW3{z(tbwI~u?ZFpL$BR%3hnDN+nQP&~D2NDUgDddm zp0`wDpS8pkhWHjuntevE5Emmj20lb98x<#fC!6*rC9de{WK=8nE8p`-4GD%D-u)=uGVEQjMlh zE+gD7sZV0*&IHHs?0~PVEBUxuNUPvCwK~72E-A?h8kx)o4L!Gm~!OFcn(&`QB+6+$ZTw=Tznmzt>72>4Y9tm?`*Zi5|a8oB*Y3mRI~!cCWdVTOYJ zB=ksBoNt?1RBO`&Mi*j(G$QP{1$01EyQJNQ>jXD1KVUxQoQECLZmVdR&O zz8CxhDzDoRBz$o4p59yA_!iDfI}yz*vohAGfed295pH(Ao{yNVH%k#nEu>!?^N3sW zhrdR$kwd%FejRP>+Eu>m+#TWE;}K0b^csAY z%`1H(nYj+Xhj6WYBI)TP**xUgM=JXseH6&aF|uxcDA~Ve{;Hc}T7(C=%lh@m;k5#0 zbQNd=yQd)~Wr%Oxj-e3ZJn5w43ebp!K!Ns5RS*>qb&%t7u#BBE#VngMRcjq(Q}IyM zf$a}(YL3;M*mjt27)XGX27=NkKH!v5B@lc;gNr>sVOXC(w(OjKAQ z32VD3a24c18BcU%93AS#TE?zrnufIBBI@;0!F&zRWyaZW+-2BxfSoSqQVU)qwxo|_r$~F(RlM+iU zum=}H*-V#L>@+frw$G+~ZgWYqUlAbkEgrbWIl^b1YhAjFLa2hi_eIolJ}T8{gbg{q z1#Z(Gcn3*cI{6eB{OEK$a%&xKB<@iM9J#FpvtTPKV5fiTuMDDG1?lq$^CZ zYV$H%4aUp3=aM*IYeggUK`e)By71x3OD;5rJus>zHmBc_RVEf;S1?tdqCp5qOmU;W zW2l3uENji0{0RrmEuwMCB@8y(7Av)+K73qeMo-?B|w1rsO{ViT$ zeL1WlopNDANRU*$pGYB^p`3L>LvhkFeACi{M%75m29DwQ7HlJ67!wbZ(XCSP^WaW% z1+@dpLfOhiP8$Rw4mT*1$gubG3Z3PG^E6QeUt~NGHFba6IK_e6(@7}*0M$H%^9+b5 zB((&@uiSu}Z`gz|Ex=+;jeO~PFBI$B)f*7oL>xCf-0=3cD!)-p+N^-IwXUbEfRO!X zy^SACuZfhhIJtpL_%uPd()wP_)(x{W0-cOWfXPaGWlK9D8Q%{JcP@z%h7m+{_YlGKHQQrEq*=#%1}WU3EDft;+b?)C8pONTDu zl*&JJd~%d#bT?jXog@^SZWetgxz%>HJQ0$boQ*VWe zKHmL#92HEhe1U`VkY;7GPI~JSCGB~UYUejxw-TJhQ;!>MA5CS z`!Qj^-rHUVYd;!{Ll*_R050=~9Oa5oHgBg^1$Bk6gCQy zhRoq3HUT~^BnwlCP6|r+4DEL@dz;`syZXo<)n{Pj-| zh*oKZ6vjYiSx4Rn_O0Jdi4cHH;GrKkOXiaBZv5vcbiG3FS#+h(EYHIZm{iM>62>4jD}?QpW~!g!T>=VIeN8<>FE{pE*yB&WqZ@y z5keN)YGH#1NmhIc+=nR|;zI(aHDrjloPw7<)c;asXw{D<+HuvT5aqR;imI!S!(yDqM)B0K+vVpv8d z+w?egOUa$4rY$5|k5YJPG{xIRK$!sT>~96t!TtNadVve(eCUwV{zbEOn=go(rPewq z3GzrC_KbZks3z!Y3CHD;k#O2Rm39`l1#_3jP2?-dm6I)9+AceTeTHS!i}Q0O=x0^mSn$}B&To| z2fv$XS>nXR1Y|@KYtb^BzQSD{Drr&uv?Q}@z{JgtgfJnd4uwUE8_ z`<~J(i98e?jD~k)?$RJUv&@BE>bH0)-T@wHDa`FSeIEqE?oxO;Q=fct!}t+|0pFbU z31d@pGU*A{5V>95I9H9hR`J6m`@q(nDNDmFx zy_We@UxgKJ@xJ>wnV~3h0%7)Hil(VQv2vpgm>O}e%{8*loU`x&nNOTAs$yn%kl}1S zM&)+kmt=5q^+e=6cP;uyUetmrJv z5gk+7sGcNPai`-eu(j4}c!+}{&rU$Kc|cwORUfo$*}RmSB?s%*$oebAp>@zUzIe7~ z5Ut<*sK+q8YGX&Ii2i`o#Cn4d`Rn-Rv`9l+PMFm4DGq%R+?>WB3Uu2kZZ=n9k+M{v zd{?z|#$Bo5{Cc&x0$ZZ@&cr7QDUl)TSPe3%t*|S+>;m0wkCPk;o3w6l2lqnR5F^W_ zW$cU_Sr1s?e&CMv1JttKo3}M!-;DU+ODlaKx(*9j>1(g5xejJRIZxWB0<7rgSw4?6 z5uOuLG4<_f&2>qh&>eLhXk`WHVSEZ3(oYhtucEPl~vee;;UWiMIXkm?Y$$8iD!(cL_Q2i zt5^TwQaeg|D7MWe*}`AO{sPgKQ87qJYJKL6=zBC6k{t?~U+xL;Hd4}cHO7I2zak3b zzUYV)o1w*P9u0{Js@xD_033UeK(cWF@<3AqonUE;FVWdq~#8m#s(QS zC5N*ydU{McBQ6&3&H|H(R{%ok(#z|^04D&!sU992)mg@DKe#VWGd_Pb%F59S8gx0t z|61D}D&P=t<%q0w9t&jp+eO9!M)F`73rN;MtnEdt2eGJ}%3DLmmskTtQgDK&X%nau zLGcGFD)mSmu(0Btr=BmV*`zxuB8LwG=x@yUEa*eUbUdF+Y>b#2oA|_vA9lY9s?kT= z=-Gziinp#Y^})qfcHkt4YDIN3E>7Ew?s{fKzI*>d6G23+;ENZocf$id%a{zv!t8cx zre<+EHt9=YPGa-#kI*PYb#7+AnN;o@+$I$SA)t;XRrS{#$*10gA=E2f;c93Ffq1R> z!gm*{lF{Hjivj3IuO$YugU;Vkce@{o%09e{AA;?6ZQhRa!pl%k=6h4g>l(Q#0KG#x z&wu1YJ}0+GKu4~FE?R(H_IMXi5Jb!9)F<5FJfg>Zh}*!*YX9PoQFEG?k|23Ga)XWG zL8+21-7i8qkCrRxEQ8>P;Fl!-Xp&Z#k+z(KyJIsdHM^HZU%-_z#VAfWsY*NlA@dwz^+Pa*3Ty#z*5!d?VlzSLeKM(ah57)0Vbm-0P+8SC`=!(+8?2~EC6)$(U;$menemblrVZO02OBC_z21c97_Nl z=K5R5@-H#bKlg(^P!I1mAyab^K5F<_|O^BBf&D z_|dB2^e-LCzvkUM_{0L+E+85No{(SrhwP$Rm_$g3fO4>OMtA=W@qRi-eE*hKf>!8qYP_o*@x zmFn(Nw)1)$0u*FPM`y$O^GZ!s)keo|j@SJ@MeUp4-Njg$o_nsBL{Hd&4(cXZZqI7y z+s44#8BZC1^|BB)r&u$?XWzX}nmeD*(AB4tC1Om@_)%x7svy&Q=Odoqpmoehn!{8I z%C8hiav59}Ow=fra>g3F*{aS7-ej*ey*9N3 z-@k04xs=qzl@SY2bt(;Z?I37+Bp8i98Qy_x^3fd%609gXVLnciS+(~!-76o<`_PmW zj^iXXi@Aty6rmU49ktN8ihaq?@`raJ3F+k5%k=E>-f7#OiO@de5qR(&fYcqtOvr+q z=0H=__Pl+xHh1BrI7XdcHi@fC)0B{FMmNDK7d_udIf#xtgzc?O^)yh=>^+WM)#PjM=fBhYA8y$>uO84w5!af*wlPwjvHRsM^L@u0^kIHLj@sAfpU zlOw}Y<+84enx?4oeoX0^M1Vahbd&wy=|Zy+V{$+2On+O`=>2@F)?+Q`^sSV5V?)hI zy%6u$GBFYTZPE~JB%__A#G1}j|8{m!on-`bP5FE@?XR)P)J4RfyiIFkSiOrnS3}6jnI$h07Vqb&E3K_85 zFC}_iYUm7!Krk6ze?rl1Za{Gd@qJIg#n={Plc zHUhU>Tq$R+W(9f`lDifYorj(&oD4<5*8;%+eHsRr*n#+|tFAEdMezHW zA3{_h9o{3>5R?vmapdP~I7!G8m<*qfAz?lbh>J@x>Hx9E>tM1`W!BsJ57^q{X{zku zEy-$LCZv2>ryZ*&vh2GGb>KeCN^iPDVS4?tb|)sXVCsWe)+zabK_XMGhrXfyD(^3+ zr&gRq{OjaXis*)D@mL))(x=Xo0-nUE4B^Y^+ip%?Cg37Ly@P_OHIlu6Yl!$+1< z108uhc>9~1BrV{R+&u!`-~>rCWhBfD>nE;t9I8v6 zUw$|7imUfAuwu4AKAP&;Q{tN4T%&%v_i|Mt@p(yBmvdKbUJpnPv{%vnRG=pN3!f7A z3(1wvP<2#c(Tus?{n=ELRpdy2$UF|W{D4XRJbUo19u)H1Y2c9XWx{KZ;0d${yvrsH z{xf8O-@b7|He-4;+gwR+b#5a#RsB~ggkysomWvj#r|e7?oL*k?13?wvwuiR*r86wPJ4W{hx>wO@VO7ONTA^BvSc)J{y;nj=1(>7x z(RFhXy-cNQuEMX8X3GYJK0%2_J%UkC%QP93-p0`-IY?v$GXMOMOpaz%Lv#i4l?X45 z7Tj;_jF>jto4q1b)Xn+AyQI#>wl_Im6$8|%;yf7K8l~?j8Q9SlZsXipFuJ&LgN%r4 zq{?v8MeDEYG5UPf$_e0SL|a(%S>N$GW09%qi?Ob4+-Zd19>?M_%&z(1T!tgVf?VJi z*6V=7`S`cB4+%mo-@Z!q=vlI+Yz@NvqC8i*i~9eDokHa zUa3l)pW1{)kykUF&0c}~oi0wFNLp179mfKMacaDu3| z@d-7T(-VxeN-%e6M=HOvxkPH|XBR7+1CQnR74{Y+1QzTZ;EH(cuFU%Y7)4Y1ZJ*gz zMOwtX)+|V1B~Raq%h})_SCmr5-Z}EvMXM_?KiH!A!%epG{EJYpurnQM)Qg~a-i4)1 z)dPd&xUYfEz0&jXLm?Nuhdrk5i$_DbBGBN*MHJR#xfH&4FF)wog9{qJfEZCwydYNk z;c%h}@c3f;zEva2NF1AE49`3~4$dUz-GX($f1M+alUTpPDB+#HcnQdZ6Mz%&`)M}w z0Algjmd$l}<;SA7AA`?;Qj-e!&mQ?pSnoQRmgY%K^>tR3OG`~woW>k?%tZ~=x!SxW zanN;Klm~k4Ysc>iM8@4ig8)Q9(tK_d&4u@8GF_c5Z~yl<1W3cH3a4C`shNWehJ3y= z$1}(hX5XQipjaazql4v&4yDZ5Jsra*|2NRBC}s3~v&_v=$~}U2gEyfbPfBGtyYw|a zfvPyhlXov=sZ2wta1}qC1tCUwSBRv@pg3l#c>de$TM6t)%%5y1CsTHT`s=}B?lRMd z+;Yv@4sFkpdbk}N#Dcx7Xtx(K?AD8rePQOoh}>Rsd7xG(B9#^1+gCXBIKC~gzuUC0 zoCAD4WVfAdDP_SOSxWb0Ga=gFFosp!foPz4>YF_j~?9q=>8?mzTNz+`SW zP~-RWMGO<0LBJi<{rM7g__TwIBOs7V5D)&4*79D6l3I+^{pdn)+Ru>S=Ig}wRnn||q{c~=J9 z>jLb8Va-cM^VODJO`x7dO$)(_W=+tPi}lRwDEh=T|EzJ$X)bmp<65wkw*=0f++G>; z8YYdzB=PrO7Q@WjeBeoTp!nE*&GpOP(8!IKpv3ZDyP`mm^=Fc#UYczuZ@y|PTcbPB z5rEwE)w}ye!P0VJ5AUq7?`(6tMU8tp54MT=PEu*CVkx;+5N~pbAD3Piv~;rx5N7-i zJ5km+K$O|TOCQ1v>%bC5fX$sQvGFI;H-V~p%OM%#B+kYciB&-mp6VdBx8fdZ8ic{x zycxzOPu_`vrFTsrsw;BN7hpUr$cykE^E=ZJ*%RXz=8DKZ_DT|b zFHdbed=tYXA*Q|-dqi#t{j@01Q7*kH$DY=5QtUVi z&M7M#g&9n(092FJZ#l)V4Itc9M{?i<1DtqPIB^or+n=He$2f7QGZZoicb~825ldyF zP4}^JEu4U!J%{6#y)o4nwrQnoJUel~6N0yczI#?i-K|#8BkqGmX|j5WN9Rcf(n9x}X|FYxCRjKf0I!x=wG$xTDX6*9JL2V!kC(LwwqRG*Q6B^Q6i6Th z6eC;;u*mrHlE^NSa=tkPcJu!lmUyScF42$!S*$evc!uiEH zv`5m^(DrI~4kFXcDWwaaeIz2pO<>>2hdBb222^g|{O9-aW5HHOCdD=$1Li~u~el-0%s$xvP2cS*E$rL=Zb>$l14y2 zc(+f$f!eJ$gj|&#s5SvfxwxzJlBcL#1erT969h-8p$rPYU#A>WYRya7f|)Boe%+IT zSWH{!8>BJ`mki>jI9h~)UT3{?kZcT^5ArMW7!(-?5u^r-lInDSjZFC-e{mWj68TOS z(!~`5rL-_nVNk|5D0)HI>^kP#V(;WY|7H;?TW}rHM6s3VjvP0vM0@{;LvlwO-a7UOx*B;FOuB{fi0mTq9<9vW%#Kud#rp=}>wZE_fp+{h3R zVFs?d-}Z?;^a+W|R9~x(8_))S4~65Lqjxdygr2&+VjjX7 zTgi4f*5B;2HR-6>Se&!LynzY3N_%2-K7nJm^mmG2JeX(L8nAb9x3&gKKTa3F1Qfce z96C|QR@^vJfrWcI2~k&aK=Ppp)_A>p%ED2~I*=$M5?N3e#biM?>dXo;DEL@Zu{RN-M!-AoqC$UUcUPr2z2K+{lws2#nnJ3f zQ7Bv`eu}Oev_<4)2C{2q4-wedFv*L1(s$#6t%Quc>McLx>7nnH6q^13UAUlJX(ph@ zm~g=Zx*Y&@*Z_s^HCVB=z6Yx#-Q8Fa1tC#FZSqDK;Fs2OQ*Is58L?1+Ia-?c1qHDuo87tjUhU0K-IT5d6vpvcRY;s*jV!nGzEKlfGZ#~cXVBH4dk{@VS8amEjP?bL_qW^pX{C`hX{>vb~|2xJ4KsJ9Nko+kO{gd=9 zCV<+)#0lu^16Tt962-&{5QYGX6FZlFNL8$C;TTBd4Qa#k1i)RF2H1f z#5zE5-A9$v$H1(AXTU$&y#G89|Bk8t9Pl4CpA-yiWWk&mf` z833RCBiaM#zyqKNz=QzLh6A8Y0OTurEO#+{*zs12Gk3F z@G&kxSRJ7M@S|Vsqv#$GH3{(9{suPtqtNs}P51|+u(5Eqv3Im{_xJ~hf|VW6AO_H? zSOEqYGk~dlz@Cp9dRD-S0+Q?g#!CJr?D?NUQh>%TKnEh=HUoMt0Y=?NfFctBq#M?~euiNcRNL=s#M;KBOx457zS$X7{&7{L7ZZ|FDq%L;+*{ z$V>#3^8WAYGd4iKB;aHDcU?L_4(tE-_5Sa06oAYz{U120L`%zVZ@AufOOFWwViXcH z#)IN;&msL(DOVZhijuO@SUJg-^uSs=N5lf);go)Hy^7j{2}Z0Jk(SS zpVh^lwuoIDiuhWrHQ{DxIUhAc=7aTJ%Sy_ae{B9fq z8-5Zn9k;Jt^h6`uVeUMOK0MA{TxUvgE%#;0Of`K#rN4OkMxmjUmR}VO6VRu<2u11h zoODw--dZTLgu*P>Zb2dsye+bvR1vuck8JV8klUfErm~BUdxKmG;Up5R}YNT4KSisY~I{q9f9r#HhDgX>)*VGatKRBbn-Cs&ZlhRi`T<2yc_9|VC1WP zk?rXfiKFw`zbVk+@j^x@VOVBiP*fQBm|Gl;gswsg58+tXN>D}LBf&&V#SASbNg+ciEb6oz9PqM~oO~Aa zu>)3g(!hNOt`|yRJI&e^GtP1aDIs~x#n*C3Q|8Jq8IP;2*M2fq!^Yn+>m3b z$c7?=A(pzRdrdd8>N543oRQv3{Yu5wAhV;^;=qgAnX_MgJeG4kO#`W{fDJ#L)vU1U zo1uxOTyHzk5vNIgf@GbjtJ;Nl5T&UJM>lt}g=2xv`n4_c-7q+AA8DMFdlrmbK)u?< zpF)1uL-Onh4&|clL}8v2!yoZ?O;nFyc_-Gq3X59$V6_?G$$^@NL`>xn0S(5tq8=B+ zGrOWKyx47X+58Z-yk0~LXt+|J=m8j`PhoF?Y7F>61P)n{DlJY#zS`8Rz=hD!dZLVC zfjK}CEfQ|4GxgjW$~q|C+c;N9;ed|1I`#;<3WYOHpUKl+5r#S6x0(r4+5gB~Xz@f$ zl}>1;SUc7uPo@S(qtS3@E$S&-2JiYT>l=L1aez5Ym+;os@*|cZ%T16K&M1W1+)}Pn z%8CEz#?zbQ<1e2vy-IR*?@exva+Hkyut|o8gRA;>oPC}JU)qd%i%AglMI}VL8b0ZL zH)=_xw}ybsieA|&toMVV&2=}uc?e>DX}*RsCf0~NCI0J&3Jz#9!s}YANM-_uap{OI zZU5wXTb)MDpEzj3Kl4-K#fd8ErQQtk80JrewdU}f9I1GPg$uZ9qG(Y~RYBf=@N$Cf z=8JzB9>Fp0BW(w>L_jM)&x8Q>)ti@E{7lFspKirIJ=4O(3ArUdVqE3ajEELGR(w}Z zo5;M%PkE-vo4G5W)%N5n9&FcuM;~SS9(x5VbY2@+^I-$41r|;FbCi-UxeX)K7(&!51^&5DVx`z&u zimo7_9t~_b;OOVqHglo($4iI^{slp*V_c);M-cH%F`SZus2B3G6zSUf!jP&A*lN5z zH*1+dq>~{aa|M;z!F~9JBNFaa3ruQBm_g?2P^mY1G)bUD)EC1PISbIDHn=mnpWHYK z)nd6tU!e_z4d?m4>)(^F!W{epV`uL`F_F)&8$V0D7p1Lf$>oglVg=DfYz{(S#cK!+ zTnC!{A{9Pk28Te^2}3!c2|qkc4PVG3kst#1oEBwB2r02^bJzg1>`K^ZINUAJt;ZI^ zc}X`|L7cV;d2MFtL)$uZq_4cbI+aiDXz9ZhO3Q&S<&!Gg6@TwM`1`Ks?NMQVh;_@i zC#}D(hyFF?elmYiV-XFFe#)fW*&~;ak)hc%Gfh{88Hn~uk0^&R6H#*sZhj#3|*zv;_5o z5+ntvEy@wJO&A?5_6#*-0$h=~+>yRb0>RQrTL#nGEx9)kujnWtMWTGs zJ7hpygJ=yok#Q4b8SN*f0iPjQj_kuz1Gqd6U_7Gq@fDA_5vONE*1O|uoX}s)GZAmH zzx4xmi43C5HPA^9BXE+FACsk7x-kv?+8JDN{oKEXUh|z%XvZ_gTmb_j30ATsg-xeh zyBY~e6!&oe0vEiBkI+h6TZ0o%La1FH%f7lPP%0dH!F-S@QIk+6gif)r`%{N5-8q8u z_;Vf)h6QC=y`+DOe*DqxWI+>@6&jtD8Ze!46r;!yc_IxJ*09s^7K}0UjiSkoLUS7< zy>wBosF<-Frh*cJdh&gwM2TU_w_pcdD2_-Oq?xXM^Mg)D)YcQ30-){j_T%*(+BfQp zqZHAVn|(#Fek9<6eM3bMzCIuxqH##Ulpfg@Vjoi3nE3`cH{7mETXuYcZ3YH-UC&W6 z=u@)BZ3E*F<^ckTS?S`$tP?+AEgYgvXqvLr`y?A1Ppd{h1G{OoU%2Vz`ahj`{ZCHV z%F0;`1|lif;|a#QT$sbRWVIrW!GrO9NL`|M(9#J_94Tz`CERZ5!qRZt?V6SjW&VD(ds4B-(8L+cY;TurP8LK({zkwnt zuaw=inOue_RmfPAM|mv|6Z+23aA@F(e`+vVOt;5X#-o#==p)KSL!&4zy5Nec=*ig3 ziP|LaluCIGO6PJF#D`lKD%h}2Mvw0yDTy&-;!cV6kt5FDMiK%k1#UA5B6?Bzv2~)O zX=YPZ8GJlZjeX4x(odkSMJyqEYS0eA5;B^ zP3FoU5b3=pB~~3IdNS9q?aY=*8mY`<#JqtQH;0QStXJz)Dovuu7Io6ehrLvbD*$P8 zmjrZvas>1`5fitqN(0@|{G^l9)WzEFrqp#5T~QP^Ys%5|lO@_hjX{-WDC(ro98`8d z2$#A_YIn6W3*v|^DWRbSKdX{f+A3vcKw()_F}f1iN*TS*BSDuI^qn$v-GF|QHPO5- z%;7E);dgd27|n^x(oUpe4wA`|=$F=HNS*-8O%m-q?_p)yK#Bvqb#3I$Yy6~NB61)D z@PW!JEZCn!QAydM(AMeV=CkZe`8CPKqU@gQW#|wGIXZ?oS*+%Ls>a)P`pg(!j%-IL z`J|7AA>dJP%#r9Xx=QH145Pi%`+w|6Hb+O?)};n(-$+UsWvi>T?tMk_L&yIL5)5M~ zC1t{@Uvz;M#3N9({X6o&@H^Byd6%%uay9Q^5?DcIS;~?uRjyMNr8Lur{Ky=IoD;(VDT=VpLM&1 z4-ohCMvFs}AtIoP@oDyoTZtQ*gJrbEg8W*~F0!QMyr0iIM;cYvLy~=K&*SE;9aT7h za%Ig#HX3uT5yY*r@I@^i)YEotI;;|lo99i8Zb#dw$GE5f{_GmFmh!_W`bk;`^yPZ; zmiU|E5wgrNJ)5%MEZ^A93{w)sd0CR1i_5S16L0(@Wz;1rerI8;lPd{O8Cs&9XGKlQ zESrcJa1b{(P{t&okyC7o(o-L@)WNp%4ym|G!9CbK1_r0mTLO9sIKi^dOJyq~QU8m! zw~Web+p@LM;O-8=-7UC7aF^f~+}&M*LvVKun&9s41b2tvZs9J@sj748ySwT;`|he= zv<0obj5gMsYr*V&JY8-3A{vy&;#yOx-3bYaBR7tq_e3El%{GhH!}}b+lJdqi62V&I zbj;^&C}o}V?#|aZ`N{Rp_V@38O0t@B3iyN!t6ey_W| z>Jg{7aW+HtgoK3y8QQiV`kJh2)92TzB{n5~dJl!`CCqZE8}k#NGAiisvwHU#x~6sw zmWs4g7;|bLnxf(-taxiHrv6`OJ}Yx{kMgx$W9ec10Yp61&8}gMdz3D2lW4U_`id#= z7-e*HlnC0$Td&)W68SIUdutgI{weiCbEJzdR$q0To0D`qM^!_Xu@k<>QuwN{>X65u zhnPDXW>9;)^!lAzxn(CPmaR7T1(jK<(c-P^xK&mp3l1sP#k1DBbE2CfdU1*ejB8nt zF)T0p#kciOJnV5`CR(3WC83DNvFpf z1LyXPF8++*3{R6sKyB`~YFgXFEJALAhkl>Y^w86{;Ho#&wLj3TU;qU}3|>GH-UB8^ zTdy78nN6sjpSMrau7-N9U!I?`=)BW}kSslO`zY>ki2_q-xz&&m17`87?Df;eBn|(F zkWPU>-F^4T8FFGH$%nZH(}>K9ELzf^2{P@nlsDVY1~_Utb}+Q$TZjVfX80csqOr{V zCJZ?Ywxa3BsmL?LV$-z1#CFV(UP{eJe5*ZA#ZH@A`|3WQQmJ6rgpTiO?pZjS@jf>g zN^XP&sz;~b`U-efH!wAkyXK0IEIAp25Caj_EML zk&fH!m-t!1m*H$v$w5YjuVqjT*PEXu?&D94_2$DurUYZM^IlKTlx1=YqyC7`d446i zI4v*&Q3IcP@DU4VRgSZzz8{h6&X9o;T7SH&ccBR$hG)Q*G?tp{$d>65MyG352MPl3p;TA!JS21Pk~GeS&oM}M0k(X(NtUp(1+ku8MA zi&kq>8#!RSLXrl0g#Lk|0yw4rafV-_{s)^!2nv*zkGtu{x)j!f1RiT75>}A1duKAFC9<+@mL27Fbea=R$^lT4)%fS zSb*d7H?|TRD<=czpQ-W>m56_?lKHQ65{Lld0upH0nArZ-OCU0d3s5E4n1NxGKU3uY z&+rMLByj(QUa|wy1J_&c-tIUcNw6~m*e~E@`cL2S|7!T;A9tMduapU3w3q-P?ClnF z1GgODr~N&q22k>VnVElmVg6Tw#6QaXE3-U+R>!~saI;u}!*k}heFJn8V3YlA4FK@Q zf4$8A8c$|z>tSwXWuWjT@rc;k0I@I5MozX4|59)Ncp&91L5Br6@MmTQ#71CR3XmdM zfQTYy7C;2z{1dVnAiex!)Bkq@02dc4_kR)qc6E*u@CNK($2-8J3TYZ?PA%4u3Nyaa zjj#|bqf%2m5VxQrH?#(Zfk%VLp=S=iW}Rm38}3Ip@`z*7deC8Zq-Gu-9?p+mZ!P>X z>^IdDFp$W`ue9p_oDreREWj#rvvj`*aCnz-W* z{x<3N;NW>xC_Qc4n-=j`(mGt6`z1xG%GkQi5oifvJ@GY}A~5s1ty&k)?4upMO0ZMj zypkvLr>z8>xpvp?`vv_FgxUJ&5zWH_)-u;osa{le$WNHfaM0GxYb?3P#oWhj=s(pm z(Ww%^PcYcx+ABNRx@U#9x|r{Baz`#EQAs-I&rIdBW}FJ75JdtR$j_R#xrXpfgZo~O zpLXZ0=s+flbkn+7gC?O71v$<^*|G=Y`R3Ub1UF_f31&e2vu;`>G+54Ffc87Ol_r|5 zzL|={+NaOQ!|~-=_Ug{cv62Y&ST!=Y&E3-*4#%mW2)`i}sq#mHK#Y97>0nkmug3ko z%#G)Ic5+H_IfwaSXVeIfV2Z3c!d7B)+5-loMl~BGDie|v{3}w(vut1O5_V=16RVvq z+g}m_Ckn*GVjd&uU82@Fc(xtAxjUg^9tqWhWKS;TcRc;7F75TthK^{_cZgXhk>C$A zY~MP39(L;11Kh@c{n|ZFtz!~oW*rCLwYa_Xx_x=xO`W}3J=!u{$b8w|Ju`ss*8h}y zT~0L7n1z%Mp2YWXWO7P(tLm(}oXV6`3BTtaw;gf0XunQN(uI$!@(!{LJVb@H-(S*f zo|$hMp^mbO@|KAgdNmNM8fiO80x2{EYp1i5&eX<#jMT;*HB^&^(&t$d)_L^Hg2J3! z-xoDR!LwZ z&^Kg?3v6oFLYZiUe<>A0&igD%wE#~}NVQ#|j@)!ZK%HINq^jKY2XRECSP5{eQGTbj|&rn+EXNE(b_j7dYw zcb+r6!4`aqfu)HQbk!=H0GFW9l7rsG{S97d1EB)n;9Y>*zRq+ov@|?k;#VmgRI5pA zqgjm)@n%e#e(%L#wA8*+M)s<^*WSPcj(1wlonVonpn@HNnC8v1r-&z~%hRQtSDA_6 zV4+N3NAriEq&-2kNE9-sG$`nCwi;2z^pSngTl?j5@GMELz*(eQ?P0tH5w|0Jk*SsI z#}hLPqfwAj4PtdHO4sp;@*}BorX-sjUm)07NC49mvH+MIaAbVG= zdbLX%=oM{rE4Tsz=0eIa&xW8`qS}F!!U-O#T1!Zf$x~K3qhwyb3qtDN66a3W?j9Nx z#Y(zcsHo%&w_U-S;DRyXFT9}cDd9WR>mR!W)xtCrzd_0N>((DN4n38kWP3i%PRKn& zBI}t|spXni<)M&V=mzM!AQwbB zggxz0xguRMnUl>VRPt+4l9Of~r2dVVQ0yWD%7Tc5ezcX+NEq>wU3;i$CA#w(xY{-X zj{3tLB@8BJ;a@|ZaxzIY*l1rG$I!G`2E@~DwH=YYuzA2?Vv!;p;Gtdw>zOsGn03F& z2+AqQA>5;DG!$J{v-q2sD9ECJCUR27W_|T=zF(D%JZi^t5vWY+`K?i46r&nC*SQ_r zY$4-*P~EK@un88rodwkZ)@0im!&B-NoG102sR{oiO`(lN>7JR!`V6Py1(}|nit4j= zg5lRS@shK)9JgW%;y`D;^{LC1EZ%kP^EOcZr2fk^GRXp{#{&Mq`EW7Qoxr+;&-V(PeM={m?h4s|3S1 z2<}GMS_uS;>0&OSDKIwEOvqHcq-U~D>nY3QMT}KPeU?2e5R6MPabxpKJ-vaB>KWlf z$CTm5c6A@QM`cH|-_j4B`feW9Eb`0A*B=!>qq?gHK8!?FBQZwoVqY{C z$muPa>W7%m!V_5Q^seQWOLyQW4r|6}H+`4YOLFhqXN~4I%?7v;%V_h5FW-HDxf(F7De!21=Dm zOF_FTiC+-Cpet%kSUMz$eGx~8^h*nDnLZfS4r(%FQv~eC?+TtUz-gR>8Ls}(`wL(_ zI~Bx2C5NTL;+<-J85l~NnJl**OpBpa*p#vDnk|AQ(KpCQ_9IW@j>H#Q5v{md-94hg zZW5qd8$dWh?BDvr#=ravsU@9OqmVJp5GTAvmagaglM=O%YUXXyyb_F%+C(S%tT44- z%bLcgAXJpFim1xH3c*AL%bH+ip>1fYeZsq8$u{D`ErVbCqV&LFNkYmmdz-KPuH{ zp{411KBD}9rMX6y+9RtUL;3x1!`QK?GrrPgc}#Wto-EEKLZfJ^VTXlaSgipJeboUb zw{Q!&$4xae-!GP_)cOgZoEN$~Kw=R|TSXd*0U?H7$YRn$?z`Rxn81|6%ec!JH&ooR zC7c?v_$3UjazDtBlb)YE8n_fXb|l1cAI)rNxcae`sFdgT;0?*7por_|bpyvLh(o`X zWB(vSFB;S!H%!3U)j#}-ASC|_atqu@L76syr5-;ndlTDC!`5tsr6I@OK<4;vS~-|J ztz-^P+uE`+&0HYpmGx3W&?I~>^*dYsCbsv1Sq@5E8Y!8KwwcxTIsN8>Q%^LG;8$_7Ok zZN!NA${YHrww1)4yuhCC^lKsPh10?pamm0beHinQ9)llE(28SY&gTS;5}S3gzb_U? z1VS!tU6-@hHcklcLAvBE2er3cqR{onqN$@Kfky>kSwJ& zCJ*_uKw$uER|2esFG&rVfXzu$%ePLaoqO9V%h2|t)lk6WE@s}Ts!;7sBCH&R2cqAIim$`zEb9V^7*^OWLh zGhUKKWyp|L`pw-u>}%9xDSKfNm~-QK^WPoIX2*Q ze`fVAG$a%=w_#Z_>vKrQz>2oQuFNO?&En*}@com9kvmRNW<50J451}b+tB@%96+FNivmykQ8->Y5k{S(0 zZy664DI1`=y%Wqz(^V!Fs+H|onj?zHkvb{!&(qMJ zh`zosXdiN>q0cR@yRtbIdW|$HK+;1NW{v+V2(NG036UC}34M=7HLRxAbmr<~n0v<> zJx8NkKFEFFSP_bD0Yf>V1SVf}8EuaRg09y3rxaql4B{5g#3Tcos;JidJ(h~kf~C=W^EKHq3aK_6gsgLhyn zdfF-{Eg-GtLUkLApK=x~oRh;qFYYzMg(g;@vkr!qAwsM|GFA{~I}=rjh5f4E-nqMj zNCuI8pa4q(qxqAKGPaeW_X#z*3`Vr~!=BZlJ_Mw2(&m((Y1%v~ThzDfIGo81z1c6k z&60A*d=!WJyMC!)jd(Ym_mT!>?~9%`#A}kHzVE4!suCOMbZa>;;8T<`4kX4DGAXTK z#0wN5ZzZKn8?-d1Jq1MvG35u(Avb%T?Lco1r^mrNc$vd+=33zFz+&O$p$f@}g|d6n z2jbwu7>G+KrA)n-D2;)YDu^s#LTTd%>sg=?l7}}tKa+%JWw)kQY5di1%m=+jNE7^y zv+KfIXoc1Mqd`d=O)R=DW0EZF_S-o=&AimHbQvFYRMD(YRUB!vU4D%B+|7V>o8>d!bZUeG2u-27c{ye zTF(+~u9A>XvF*ugvmj70hq7TWaIh$?IeNU@G)dm+E&r4l z{dJHNc*PT`l7C6rDGEBj}+s+K9$c+?HKAsyTb|oY@kUE)G5aLgcE= zKr5T&xA>~O)njH|*87t+E_&z3OvDL=uW(+W5HhsBO7A;8VNkLO>T*VpVd%_Me}C2R zTl{wa8-XyFsz-D(Aad)BjcRw4K&@KwA;A#D4K}>P+5f3Ut!B_K=;JxVxU_4iytT^j zLe`BZO+(O7eQCezJ+aF$&W93gzRVSgv5(J~2Ae5+18(rNDuYqo4SYf9d5D5G%$Nyf9Zo`}SjQCjtoknB z-0s80tO`fQzE99`y=zP<3wfYMI-{>wPUAMgDowMmHk(CFf3bYoMWApOWDk2VBUQ8z z8YV#~I)+~9yI_J5kNg!9iqi>`@a0olf?WbEF4F7e$sn~1{LIDHu~S0}^e@Mx%Pfzs z#sUH`7~xHXb`Ys!-~8zNVk&B!`~Iknx=S2bEqULMkHH<*T^lg-pBy`8*0q>u!@u3; zB@WCo@}k5wMsYq;la8CQY8fF0rx)TLK1b_14R%m#*h&s?lv7BQVTH~lUa(0ZWc8VQ zL~Lg<>Si;UjT%QVx-uQ(;hoormm#Be+9D?R*xbx-KHtX05b+SY<0~Z(IL$j5MYnlQ zGOGCFl8;%8vT>PK%kM^E@-7fgIF$+I`#j~ES1wt~I^u|VCOOM9*Mf<;D=g`GR^Rh; zw#|V^D<0#8`@QWjqnC!UtsY0O>kZ@R9=~BXhrw#@N0PSt<8+;ytMpWHi6O>&5$BX| zV@?y(x7W7nSez{>Tis9RI9Iy-NbBtj^o*O!m$Aq69Q&Jl0^|7Uwyw6oD|Th8Jnc-p z2i_aX00hah#FZBlnLlfJ{TDT;4l94hnzgSMX!gN~DOYQcv7Q+Z$ZVl0SUG*@3xAIK z@>TjxwJ+|m=(Sg)E@H*vF7i~gNvglrOntgHb~~id$b2h#LX-9 z6@#>B>u9@l3Lt+wzw$lq$KR-HF|fzhg%_v{aYgu;+kc!co8$N4o^{5mZK+om!fRJ~ zIv|A>0SuB%@C@rSZV)&m*i@$%26W7%%SXbkhVa2>qKWTW1Gj4FJ=M!}hRXJYJ;?@+ z{=ITkbUnm3s$9{hTyCyM$A6CBVZj8*?X=E@WM(|VF$1q-R-W)GY zZlYM+JM)l|Vt5r?yCFkIEME+q8vg9nQ&?^+#!cxQ|1h%on4(rgpTC!5uREUX z#5c)KY?oOWyL%G!gGmk#}W3ACC5()OO9`(q^der$OfZEA{!? zitWjF#GGGAb<{B~ZI&vC$I_;AV)av!A$45m_{Q_i;$-VX0!4dPeb-Ah+;MlO*z!Cj zr1H{pn7~%C_q0NR$C5tbW2!hwV3f?7?CR)f0?uUbgJb--RYH%rbryqhWgwfY>m^Ndg`m@se>@U1*C>#OCY0OBp3MgS_!S2^-wG4nL72URy3;pGzJ+o1Z&GKUq8Ll>=yj^JF!<9s z#5~RatK^CzqQS37*B7%u~*q-Cqvlm+6odLh~E7V@Qal#_H` z3brB*_hx+9RCQ4TLbDAQQS?MCB20{tm1kevXzx*!*l`|iLxEltA6yA1X~LDkM4cID z9%sZNZbTZ`OTnLL_l=b+OB0NE{%Bh&i;a%Wi*2S_s8_^$9VD;KMNjOjuav8{2fss3 zs}6o+tRgwB%7(H1c1e;>W0Ojtm}=qi4ntSXgy^Th)sK#~ZBc#z@T#w|*xK z-f9EmE^-I1!#N{9xRQs%EjAh<+O%A%nq^;&c|hmsu<&9o`?#F`b?HfTAL_cA@#Em4 zlvY@rVD+XOU-9wNPuRUHsYZ*N=Q~wV%)B~*A6X}#GS>IQS;@B3j2B}!S<&0bcGz`_ zRdCRfh|O-~zC&jCK9_E9MK`goh_~P;abYWGP?>12tyRWO%9-6|%UQ{;I`*MsMpAsp z5Gk~3ImqE}wL#@byU?FrpS~#)zHO+=PcN6IKh+MKs{QhXs18{q6z4OXRd?z0oNFpm zFs_#t&)(0M$mS$Id%SJ`Ukwd(r?M-MO_jG|YICQ9dmP2qryaffr=NAUBamYk4m6OQ zhz!5;k*ph&CB7?ewJrf)k~sJ8u<);{rCBuF5WaSmn_oAnGo!_ok^Z>&I!BgU%&q$C zWxcxsI)i54Xx2W*ZTs<-U34AwJjODG7+>rVCWKO_>ae-^m=go_qq@`TwDWtudyAWy z9Zn5PWkxFs_?@cTZ_e(Dje3yMw-a|t0$u!TN$gEsF*PPHVVTBwrtDQZz`XWv7rbST zlA>LSk^O8(TLO9X@*ir|hytp&0Ft)01H*qMyW~KCR`GTm4aWWq4aP_PnQBzTP>DqD z3qgKU=*@EYp6*}_+Aj3X2p`f@kV>~$U!x5^^hs4YG=Xr?@(Vt7)(pChOd$*8BsMf8l1 zX{nU+OlQ4v&ndupKa8w*@8g7^eu`vuDh!K>Bm zgiyfR8ke5xc}el!8AZMqZy!DeLGQ#{2D-PnU|(?Uc$qK5x$GC$%W9Ar4~iKz$1jaI^6H$=R)3=7L)v~`duMjdb{tfHTHctvEDzXz11=~TZ^8o%e!hxl}_a{ z;qDAJLvffCB?H~s`7R0)~sk?bJ^<4-ix}r3G z`ru_)x%G59XDE>I8HAP0QEa%r+()Q_{QWmNsa)=M(hmu`3Tc-2EsZ32a*0;-&!~>w zO6~aM^+WN;?BfN>DZZ|OO(t%7pVg;rOSkm;X*5lm@DONUzvjX;_%3B3y&ygLX6!W@ z9PVz~tq!90=6!`I&F?{=w$$k6lhYt-_d;pm)vmmq(QY_Cv2g6%;TSUdorcbAeoaT= zflt0B^gu6afEP~HT0GmbYbR@-aIRsMt^Q!ovXdh>=+U-{!id%4=%#_qtVb|C_71ix z@1EEXCg(bQ3{IIn#!S*~v;$R2V-wQ{jl%)1qqWtF41%zMghWt77jcA>i-}%&E4u{k zb;nC6JgQvwJ}U$Xa(*{irj(fCcbo;i!DG-bv5Csb^U5v9lyT zg)A6|J6V_L-Y<0yd8A^p`HcF;vz~cIp#$5Y(p7wi4`tVi1m~vRRGn&K&f?D0caGQU zm|$Mlt{B}S%hWhkKksMyG8Gi0?OXFnTW7a;K4Pp7;WxIDfC;{)9?a&p#VA_09j-dhd+c^=1(znl8R38* z6&CT@R|WodXuhd7(|Y$UAZEh)yUC+YQq>Zv1M#Dd&$W3+_->BQ2;S{l63?qgb~vYb zCy07JJE!J7orZdG(zqumzkf^@Z?->PoG84LQ&CEdEPWWN*c|iG=s0C)@J#c7aCvB8 zjTy!GZ2AVPGo0kPa~V`1~MF_KTF=YJKGei4f<4 zlE=qviO9VuiW)_`W#fH4b@8?2t zpFLhdvQJqJlvFjSdFW||`uwseK81}5r%7;Ms;#XTk=ON*MmEAl>`f)9eAos3_=EDq zwpR=2kXV51Yy!x@9(SS*{mD%Vv`D?9cekAL^UJFw96ctYND4$h5u@&L+$5^9N+0gJ zpM!OkW`6Lg7YH8T zq6}+HGDCzH8(g7p+cWceiB!umqR7(Grw*Qj*GlqzvoBH?62nUp$~(L(pBR>)!X0@K zv7wbIVZ6>c?ht~i^#;SW4IU={ibI|p;>YN7a;kT0afW8LLbKp@bwD~U%KgrJQI|2k zFIBqy4|*Rcp05AE49Nb^BdsFJ#EhaQZ}e9s31MPJDPq8RV?xXbd{@Q6z{b(e;Ent2 z4qUn00pFHzuywY3Gr5@97{3|e-q6keaL4>F84Le2^ZLJ}GcbxX1B3f)OmFr#CE~X$ z!2iYc<}>^I)tg`G&Cd1rD`4y!02BQE3P>{quHMW^Z$D!JM%USZ>E^#*{Xc};GD=w+ zd^Qnz^F?XM8(NqcIT7>n0RUi65IV^X@T56d0h+|0VIFh*p&jyXW!u;q zn^-uC+8X_pI{z&U^>1|o_v7EwQ2%_Le`tvOTb*KVc2>3yKxgItR`6e_7HH~Qj4%ff zImr$9A%UK9GL-Xf`0IlLa70umJW=Hh^pbM2!No``rJ!(-7b%{6QQ4 zw{{dWH!}khJK!q@hy$#^6NiNfuyq3X1r~sF!u)5d{zHG{KRKZP3bcV0*xpP)j5Iqy z5P#!K0OSkcnwTBP8U{Erf1) z1(w9WY%=Be=eOH`)b~HsL^f`KYR~=V(Pjcj7eK5qaHoL?17Lx^;o1L8mH+(S{EsUC zwm>D!oy?pKfmG?g@HAorY}o)!g@xcfd{^6b8JDz2?EK<*dqY1H4H*Fp#6V9F_+vHcp zeYU+Dk*SkS`u*iTb3#VD5?Alirq#J;x-vOVO@=DBAofOb&#aUEu~6EDrjK4JLlbw4 zADc$9FOKWdTdAW7dJLxWDz!pA_2#)Y6t~y2)pZ+Z$7t;0gu`Ac*Ua}NG#gK12AU5G z)LlKXKP*e=ay~jII`=hhSfCa7dl^R%+z)&IWagTndAB;$*gnT&v&zRzkq~#YxiA|F zc2PI4CBPxMV{~B|fK8Q<{1QEmVL$M=kgVC0X`{#1GRAD#Oi9T5E4ik6{h?ucO|{cg zy?v2K@ErTXeUQJ3*Ol7MR9hHZT*tBD(fI?jNx@yXq;W| zby$3U)TG3oD)JjJ&uu=!X%Dw?_$W@R5&j(aLV>V&j{7jL~2 zRWl2!&d)TRrlNYX79081shw$vsHbB3Eu_N`|iDX zNN}f+bTQNt+8@+?T1&UIICw&1pM0%3tBTlerBETW2?2x8Qwk`zyWGsY=2*+BM~v%U z4`VF`r~NTKyJKz~acJk8qQ5Vn<|r%xVaoqk=d%|zm@*n?PJIcZx+pAf0xZS)!hp5ImRUVl2$9udD_^quES zAUB?4gt>M-p7%0Y$LKgh_|~1?oY%2@@ub_f-2Ql&2sHp+(IM$gc^)8!T`afN7x8?4 zbeqt!0E)=fFNGPyc3OS@e&WK2XlZwAZ_XDdBK0zBdiFvYNzI;s5d#xXg`4ouwb@g& zO@%WX=lt6yEn~RSA#;)Ehoh0FNMTBlIJuSLFP58b*SIpQ^rlyIxl_r ztb>H6EFWC&UJ)d8o=?Wh%>9{>$oYi=A<>h6)&o;0p3CN%$8B$R8JErWD?hEGOtO=TBaf#NnfW{c*cVi&H9TRIg+qYXw-koa_3EwcT5m>)Q7UniZ;c_HlA>Z;)ioNd-~Fv z^spxg4aTBN+{CR(d7p#~fjOpv9iAv62<3yobPLWxdK>l7D`Y%^yl?=-9+>v$NGz;Q z?di)#V-I45ICTqQ!z6<0*SDFv{bX?~juDeHh4mEcTd?hPiX#o_>@?UA`~>kkZGQ5| zMsA}s2Eo539HM_esM9~2c%P7++aqjrsot$*a;*VAhp{*Kmc?6m6h{Z%0K*LQJsn5% zSZ|zgGKfE#t_5LwfIxOJ$+?vH>Q#d7xaC|2x)vq}o6SBR%KA*Gkf^YN=bXw2X+Kvc z;a4VC(zHWx( zC|s0RmC!mW;YyW(|DxxEEZOwb^+DV+97=X%T;N6xbey>|~oE6XY zD?v|QF3Si##PZl&haF?4uLX^hN5wtD>UYmpmRhOQF(9NP&?DH_cqTafe#WW%nyj4) z-J7S0k!VDQWBKxn5eLLwoQxK5=~wMSG)iuQV18pTt6eKvUsuuwNHFLhIj((aQRXLV zObSp9lGt5;Rf)i-?(OS}OD-+v45Ynb59ML7&bIs(2VmY!Wf@}XcC-~F|-yo z&CE;&8~g-9tPDp~6+NyCbZ!qBKU%x-;C+Q41%8OO^E26DNO9x@l|!O=vjN zafgErdQJ})L{v+9+A8S&@m$q=^_3g?3blOsbI2C(BUL3(0{S-_PyNJlj@*+&X6C+w zKEzbEM{1KSLpz!68vfQ;=>5}}B*ckH5P^X(X)i$nFy`#)T<8zEX5Y!PVu0;Or~@fi6Y_tm1@gWP}_Jk0KY|t@owAL}r_zn8Yskk*|(R>hx#n1XKc=zQ* z(a5m%p0ZfSC>8dsl4|m!X5724X#314#hfNq%E|D?S)gW`_+RAoO@^4tZPo5pMaJB3 z$+%TdewQpMq9S*Ye^^YOeWgsPGUcv-s5pq6Br#4GWu%+i+I#U;%gukk*S~k0 zh+p^hY#w-F0opCc3$qU_) z+s|EAPf=UmXtQA1uvlJ=mk~e1!3qStLm(ckr_ZT!vBY7vgvzjQK-3EQLvPOBNVUCU zc)%Xb2UvfwX`O<(06%r4>7hz4yl5)6e){|eND$gCReBt?FZ09DwV5o_sOjf|6)XmX zK@oyA=>G2=b`-NhFi^sN5G%cVuL{AtPWfJn5aj_cQDFmzG-~HAU>6Tn*RT69&NyCI zqO{3&X7S_{j6a}0l$z)p->^dh{7#ahXL>s>W zZVL@^q`V=T?et+N4+V02yxOsymC(=T(+EMd-Y{k$h4_1eMRBpNx^+2n!YleorWOAa zaiS3!SmB=7jU8;1E@xdUoUGecW>^TOXCvN>nut&@^jM^L zN1V{`ECg)+YA5AGf&Nj$e2^(<2x;|QNkjYyuB2p~0&Fu3E6xoJcZi|T%Fn>T%V^}c zz`2P(G7&``!yU}1DnxxDPJa;Z7kp&=&QM?q%tn^n}p1K+=*k&(beXNP$nXKEP?M4_E~8RYEuq44I5ui%@H5vt2(uv(uqOyJ5*KG&Un&_&%1Wg3df2U*ANDMwq3#OP}Q{Vd?py$~Tf z{?hyD_c9z^l-^#TiH`M_6U@M%b8`@C=XnEZqfaUp_2g|j)>55xmNhiXoiLpEX~YS= z!U$MNvVJs;)S+$duhMUNrx^RiM2d8h%1zu#N9(U3?qN!=u3;j`;avB=VO;l$*lj6X z5TJy5N1I&;zMJ<-!FfWlSe{d_&&aZ7_ATK;!bIUMxQ`>P^O_GQ(~q6<$Lqc+U9Yb_ z5O7Wq1maN8zFmP|R!ts+BZ@ai4kIDt84<$zx_9MgPfNd*t}3-8+(xuri(w;Ck*e+l7#%+H91qFtp_&+&qsPKbv?4@TvIPbOvBgC_7<8`bd& zkjMXU+a~xP&GBR=^YL>zLW#inR0h#z6{6 z7}u?$Q?mC9`MQq#itlh-GjofsV@?vz%-z}C3&IMpI~{1ll;vscI2AC;HeBso2~Vb3<;CrW(-dU<7#*~I zQaMyAo}?V?*1kIL-DLEfIf?@&LJy6o8;xD;vYW7bQj@k9;!6qf-* zpqiC4Em#w;!fKMgMkNxQU=tbLb4eszatp9&`bxhNM^kG4!v{HC zA_k0w_mIZcX+w}m?F{IOYxvSSk_AO4*k(Z;B?p+{Uu1sJ=MCo;5{tpu$$Y0wm?m`+ zV((b4G#rk6f7x?0rsgBOGool9GCXu~`4qFx1W|VoP>!Rja;HrxCun0OV3o_W{xyK8 zRzgHAtj_MaJekBd+c}dT|KVN0Wij6Vdb4qhfmwd3b|?;`B?9u9f#D_RWpWR_)UWDG zWO$v^#E|}g|O*7 zBH3w7ZnB#JH0i{LDFVSb-0PL&yiHSGPHp!%y^OAV<$1On#>5}JiArlLiC_yV^i;Mq zZ0$;h-%x}Qp?T%$N@U)HGfexxls`T210m^11;xUSKR*s>BD#*X<)ZSHSA$mA4%stf zoJfvZ4!3jj$CL=+rn|>4%kXOqi2Dd^Gz*`hujJ{(bbqNvJ9_U&3S+k7FL*kLyq94=X?i!kzb;2U|JrLLTkMQW|nOX-MOk=&KT>} z0#KmYY=a4bROnuC zk#HsQopT*f+-jLQ(GSV7t!u8n9BQY`?wA><_1Vg{9}P!tbU;W6R1heX|Is&g8a$an zA-fX%U{XKq)AiaEb@9VTz4E4|!eNuUhI@ga7lP+`L@n7jlC}dZR#*G(B%G6|9?Ik{<|EgB&Mt)W@Bt;Yi{H8S28x8MLYR6vGd2TryBbUKNPY42MS~c8pj4i1_L;cH^MkG0Gwe12tmvM(&bMP#yS5` zulgS-@NEIUfqFOq@rU^>miGG!wzh$w{+`&eJ%c>X!W-`|5rB98w(u}|K2n9blv|y~$c{MEpNh z_aDkwj?RYvj+qC3&%Y#Ny*=`n-ufl^=0RapdNWOY0zfl>`1cmT%>^u2Ko(|YV&DRF zRUq>mP`Ccf^XZ>utp9kT{?C;OEK_!%ovc8>0AN&L1G3GzfsM`zM4dDJnKHTl`Nj1g zW&U0K|0}WPZz?6QL;-yos1FeT*#VOR8^H4ca@c_a|3vsYuoeH{IsexSeAD+?fprLE zgaG>-*zc^sI%EN0J%C=x`ey*vmXV|W~@@Q^Z- zfuI`eevnHml6xw2abfkgd+AKf(dkF0PEct`*L%&xBUZ|@8px_q@9cV6vA4r!B*eVf z8o;V~_Hn)2O79?-YW4GVZ4tA;F zJiIJ*S%w<0UM_P?&ppYqt#!h&Zy*{TBW)nmZm4=}x4^Sm{2JIIHN6Xt=;nHd_RB1j zEUrT5hV%IAyk)gxUu_F$L5Fj96HIvLZVI)+%J<1#(Nz;m|=jknw)-c0yZ z=H93sXF7>vg&y*O*E3N0V3dJ~Hf74$1nRR?@&vq+icEa7c5TAQdwk^>x2{o68@V(mo=fUVNLBx= z^JzhX`txfqpQ3xF+hTXYs`6aRpizqk8LT2~pb9Se z(q%RLWK#ddCDej)E8Q`vb&dd~XnZ#lM%RV=!m2D{1hG^^AwJCSNxK0B13t4ggBisC zL)$w?M;dPHzOjvtZQC|GNe3Otlu0FlvHZ4OS}f1f$Z!h-1vAg^Mt~MVl&;^mb`6AzX&1RiVbxS6q>^q& zyV|9SJU3DBzb5Zkas^Mtn~C(vUVqsLzu+>ax{NyoN8KndluPrTy)SOU+9sw~UKDzm zAzBJY#L+>_ zoDo5Fi_OsroT%XAS;@j0jZYkKphcx3HI&yHh1)57+@Mlq%sciZ9X9{6FVx~2hHDD_ z?QI96Hk*&%?*$a_zt?b`fYFANA4~5V?EL``wB}0a z!1<}=jzZ~JjYY*k`L*kY^>O=9mKw>rCZfqEa@EjrEUf&ym zcW%UhT9cv&)CtH6rPp=lkeZ}Gqd84^$capW^ZF8_tL*EdRKE5X9$3X&_3oXaR9=Fs z%EZ>mpGVIhvOb>^-dTsRhRT{Ato~4%jq+4mH6FpDp$%V&rw14pd|wmr-)hjcUyDcO zv=?rv!p_>H2TosSt*Xg|q$+m3`iY(;@l)$Wn=T4zQGsvgYViSQ8*#@)%NVvlXP2)! z``)I|Ii-c`aw!>hYfr(NR%vP9464-&#*d2nMCH-5?N2{}Z_y;)YNwx!*uiU}lX-zP zDaAV8>LJ{;!lDvgQi+OhZ?tiND(jClf%Oi_93ZU*$%x2^2@LMV*xCVuI`12OU_5Uv zg)0pEf^c4KUOJ@rpieK%#P|W*<)OnC=5S1t5SEn2eBWxI_btaC#j)ROc{S(5G0qA? z%166F;irF51~#HX4cY1~|KTXv;hi-24v|O64BLT<1gkv5E?qGRtd~dpGqpE2Ivk^I z=J8|4eh{q*xNc?!b%phlAerNB0FBO8E`AvIjBzBrC6QJ^=8qUK{T_kl39HDrKWI$g z7;1(N8KmnrbkvY1+iRh0vfqroiC3e|ycT1daIszU&#LEc>~|>(BYO~IIjLa8#(^tc z3wHCSVNnO{W6cZRR?&VW^}~=yI&3o$eq0#f^Bv1rZVwK7a1j|r{Yu%NaH>%ZW^pOVX*BR=5MlT^~h>ILi7x4g=0%{@mzbFB@4#Bk(LOI#tL6QP`Nya{F zKT06ATs=3hQkBe`bz=J9%7@C80QH0B>z)!stY+Z;>Eos6P)0||Ii1%1xC$Fp+w6rq zB%MvTbOX~|N0s7B`vFrQ_n!MoU!N&K^LUMiS+UJFnfGh`4z8ko>DTf(mX3hdO#ad~ zd1M&vT-XW{+zZGv%hKj z)Zmx0X*nTe=PjCtaars{QfH9hKDO!u5a<~?`D>3Kxp1^ETuvhSU+9<1X+>&7O14%> z2A20+T}gU1AY1v*P(1~p$g)S$HWHY3r5i_z=k>#I1MgIW`)M591ePQQ=uD@&I0JzV z*-{lL8)mS6pKNI1Be6;9m9w-YTOt^TmL);hRKaCJUMfHQxRVg9`nSIk{pbuXy5O%s zmft&~Orn!Bg>nY}T#`lJvmH5`VdFaI82T{TF8Tu^s|m6sU(@1Uh98v)hNsfsRb>jo zxEKCrstH7`Zxy3}+^dfE_J9so^kdu3h+RbJ*h+4uDGe`>v_`lh}Z0%z2<8FPvt>yLj?|F!bbB5 zY!*DQO-g1q{r$c=yv5TLuYZ2BdVnP9DX~Lut~rcCmO-Q1p@cfE{_+>)493A;f`zM< z3#ir}V>CASmOF&qJTi>2wl2NyD`c25Rv4JlGwx`$W6DP?ji3!Zp-D*tK`GzBBb0Q( z54Tp%ri8wOybnY7@+RD(u4IfPlpsD2k){ZkZyTRz-hKNLorPt;{Nn*ig zWKfxq{M3iB*Osc|KWfHfJj4~kCZ|0iEHO}JF>lA(z|w{{;JkPrsC29^^d0S_Y`hX= z6GC`EvOffEh?ry099~|QVwcIF-3<>{!tj?{v(iCv!l;217Gky)437$26MPj~J~eHg zPH%S~60(V%-X8>!WGtZ_}1{SpC+s`kEaXI$r2NxFHiSjzZ|AZte(8EhiL8_dj!lQ zu#HV#ku>QX96iKk{px9%Ua zW}&-ator868=%57d5z2q+`k8ngX0E;9(aI-4qLYvIvn`O0^bN-VKG9eSB{=+hLW8_ z`rV-S1Q}0=Hd{eYdY3hF8!Pv%)?J>#pbz-*jNgDN(zt3!3~?r`>|QWCwuu-|bVGhF ztU8y6J^89(8R)0iR6#8h9u!6S8hmFNq2!{(m2r^yaVpC6aKS)rt~RoT`ya??wmmHt zFo<{{##b@GJ&dDM1w{fwGWJ04fH?(fy)r+uDUjlM9i}+zWdf>RB)1`yCcH+ z<~*k53XjRI0YNc2zf)PZrH#q+=vAtSgz{RV`e)m5I$eAXSCK{2)9>GeX^iv_#7P7J zx!#FlzM+7D6I41omgP!NK)b&!x<^av3`>l{T2`v{a z=H)b(C^-R7e0%9Q?1F0&@c5RY@XtCT5#ne0iX+?6M%uH60%R+)SZbrL75m5ZjwDFo zr1o?BBcKM?Ch)f_bA_jpfvSc9Ol$-@TCb6Y8U7#>eS>~E(pjF0 z)>GiBEcjXh5I4vq%M$jI7}_#1dY9$D0bAn5O=YN^BJijmM{ z>C#%;%IkQvKq+XPNe5|y)1QK=mTE$;yHym>NxC*)u;)wm2i9>Nn%XriFcmE+nzVBe zmQ*$4%C1T7;*JLDqquXMXsbYD7=1kV?7KpezXyB>v`)|?p6N_IugaScH`(IbhB zb-Q0P4f6%R$!lPCJj4bbFC3LF%iuvJ$=R~{z zu-He=#kTx$Qe%)zE*fqkYbeke9piJr<@R1O+oQDSK?LNxN%e%8ecCcf3msU&(+n}b zFa8YzX=~05O%g*Z#-!gIsIQw+ifde?D_W&VyHBx%7TISf8fF^TegU>hsH)IoJP99+acdghgrfRtD{B% zOtt5Zwlr*UW{&K5}lE@fv!$)xumrq{gfXBQHquiu&H2NJQsBcb_BUrL$8j#0fM zGq{1i8M-E8(h?nbc={j-7BWBYv z@77vNQWosW(u;2#$wjHz)E|--&0Q!{W~>#F#U}lkHa*wVuIy+^v6>z19$o$N36Bn4 z^MA5eGmtp%B4;=+bIYMkCZA#Pd+9?$?C5~S&V_121NHtOOPW_E7_TaK)$z3&lrr7K zRU)*RR@Rutfd1)8b+ywT?!*0~E4_YjF4NkmZ>coP0nCXKxIg7J&1J*z$P|Uyz1>&i z-A@e1k9+1uM*v;}8;bV~N`0!pT(IS|puf$m4OaqRaelSV#&Br8g6js)x3OJpT0Ul2 zU91W7I|?dVZ!`|v%u-<)8AjgY|TxN#+uW3n;xbbo;zmXX+ol7}lSW0J z>J!yHd?8PVvHqNbO#QpaOvx1an#nOrlvBF-PM0%mAICGk?pA}R?W6(}$y%qpS*F2E zLzbBtxhZJC*jxxe(~a!!_GmsU!-mj?!2Xa9w^eeaAUTw01l|NfcE(vN%AQf4%LX2% zdO+SrgG~Vj4l>)pOaY@(Y7P5BxoC4FBOa0WrE8E_A1z+GCi1kEq{|h|U(Lmw{S)A! zZEFXfJd)`F*LCryy)VnG3a*c5Ep{{HXKqJbq^ZlBvt8$pLm!<5h_}5%ro3=9gD|jV zZkrw6q3;-$N%tw6%$UOUQ)-a3Dg{+NR9Amp2km zofe+j(dwNu8cHUO8Z`c^8frb%9V=vO=3c_ZOMFv*=C|z!@&S}BngnMrr0p)tzT0k% z1RAAiV8|Qrf>JJW-D=28E$Vd3T*kr!E492aln&@DEvo>38+5TSw&p2=pG zU1YK*eOd)cGoB-YY0IdF&(<&lr1VA!s%hv7_^FTGF|zy|cDIN0ONjg; z5dn;c#!ugbq@lJ!SxOZff|h|bNHe@vA4WYI3}RYcN%~bbI|>oTxA{No1QtzcD@;zd zwZ#Kx;<)3RblyF=6O)c zUc|WWw6IiVx;SQyW~$qvqfeZfQSo$Il?)fSEZ!*UmjRvirMC2qbwLg2<)_X5*m;;b ze*PESdGyn{>xjeyE_y#gFiO6jW~FS^D5qTIXdQ!x(Or*fkF!|I2DZ1#O=kqMDKrCv z4k3w@9H+Z;dPG)9-iXzXTe%;1N8-O;e9C=(|wULO$1F9CS*u+e{_(gNb3|JSJYzg?yM{})LCn34al8vk=3|9?zAVg^Lh z{!M&f0dQl?06p$M6CVKF7&Cwr{g>qinM?%)g^$vH-LUfF8}t_7@=H0#pjf zqWCKuu>%AdfYkA?SNKn@dpXhJ~m!+b05I;I@y%S|kQDrij4!bt2{>%|m_sHV6PpPF>NfzXH? zc+oQFO{UF!%yMSBE+HgWbk8w9cQroAGV;&6yIoh^KlMf4>nkUw__|DU@Bw$-KRe$)dE4cUrjB_>j&^y< zeHxn*>6?MCV!8tTx&?*CO67>_dL(z3iTAWM4Vv3OY?`-|x!(%?JRq+QZ@jyY7uydd zl`@;EzZWIMu*~I6yiWR1Kp(1~xVjVB^y*L#XS`3oI;|gHJ2%1WCigOLZnv(>&#k@q zbGR8w5b@;I@fOFS5?SZ+@OZf(pbK41p9zd`-vzlJU(-yeS(P)W2-6%1-a1>qC@UK=&#~Cqy!h&kVIM&gv;|9l8ej+l8Io zCfz^@fc7Ahl@g#+iqbgy1iR7l!>L9UDwHwXDRseh%KKzqfFi-Pu0&t-`nf~2Ul?Sf z^fBIh4k=GYjPmqOBy>^&RAG`7tG(^OEgvCJ$2PigU-@ol?)Zisk|ZN(%x_v+ct zX9QsZ85i_9>X&w58!>ot6$&0hVFFDq*t~~;pSISS0yV7&m9WAkcdWD?)jQ)ngKgbF zXHcOx!z0_XPTRh`{PE=MArl?@nnkeW)EIkN*M9wQ@x!0-sj>&g~PqZgk!$Xf3i9N07>WS2?|$ zb0&&u6EY*Sj3B^QY%&~}Bbu1Za%f@|iod6MHA8k^XGWN3%8%!cWk@ubw%Iig-9yF? zz4W9D>{-QoL)}|;YxXL6>xav}4Wp7arF6)L&v{X_3gtX-5v=o#|mKe zV#FN@K2!JL1!(uw5w2tK;`LT;yCQW;J3#8I-ts~rCh$S*49$5VuAGAwHmzBK3eu+s zm(nx0t4oTOcMIpM;7Ty;ANvl}37}7P`rY!}ocFn%W6!mBGF)+FbMnu1h}Bix8S-GQ zT}B-0w+WEUYY`R)o2q{DTJhXc7`_2^+)9_Mxv!DN+W% zg>NmM)mvywpyzUd3!&#|TIulO+ED!lfo6LZbrfAU4+2`ZCIrn^lX)}a^|z_Q9RuR_ zUvPIJ^Ugh*6rIJM1C~^K4wJu669d>(-;0XOrQIc9^>;mKLw27H+E)le z@EAafWT;Z?Si{}|MGcR=R|EAym%mk3h}If^so2mmVGUf$9_BU+pc3V&6!eZz{yvxz zvDf|FPu5S4JIeXn-Y`IW75=t&0MK4aKzoA?0PRHsv^Qv1MB|cZZ*uHcnr$o0t`apt z1dAG(*Zuf`Gb7F<5Y9t~-OpZ`*7CMhI#=KSqR3e*SwUvWG()+G%wPW!8$$)_!c-daO5oA zxBN7BN_8s-h|eF9a3CSQUbSIyV;pKbVzP^>{+uxiUKAmq7h>93+E=BgUUU45>W7|b zS*mS!DUkc0ya5CiD13ZXfR%<1d%nz(+y?G*A-@1t8Ua|T-rtoD0#?fS_d+&Qy=@QS zRd`ermHQelGZFD-DhmRS6Z6}I^CR)!K5l8V{y1;4)YyLe#rLqr25gC9s9RyK>!K(h z^tmkIkG+jEu#sGMxF(R%oX8#ZTjEwm&lwETYxkvwg!B3(U*Og32B(*99&d+%Xan6w z%d+SLQfb$Ic zo#gXkrozvs&qF+*$D@Yn$)7~2_qZmMBD|jwTdNWgO1?Dw+?g;oHzfL=`R)WfE>ziO z9bV{dzdTw^y*#PM%7cFPSey5~KQbAL$6KG3v#nceFx%T|gxB*H27`KTgV$*o7O)_g zH1$PmtKiaJbs114{kqE6-p83oe}m+=|pq!E^L`gO5zs!49n| z)OH%KeFuHeM_@*9hSx(&kaGvX4L+j3nEUCi=g2Kp*S}7fnzW@LC2?mjj&k=;ft|L` z$h_WzRHNR~I{l3gl{WdA7x)h!Y&>Nx-_vlg;Jv7u3grWH8^6m(7K+gG&rl5ATMdwH z{XT@edLQAk<&~oZt4C59Kc(vV324|akq(+EO%9iQE5 z4v!I3lW?NTZ^RaF-hxv~O(S%niAy7!G*nK1TLi3N{hju(x7n@U^aOya>ZywM>qrm zY5w*Au+b-x^hDda64@y)wliN8&yLMjTx`_A*EezPD+0|_@D~NbsUGk&Yv^WK+h=ML zVXnXTLfD3(P$13WqYo<;g>yJiQ!P1R;POZ31Y0CM4Jx9LnUj383OcjhL;A=ODMV#8 zc9u{b_ulsuy&Xv?upxE0qirRoZfS;$!S7bLi`0kf50t)h_$rTnj>dsM2DJ`-F4xSN z;b87PUh^_aj5x-@Z1_^l6_RM#rEf`g6%}vq=pG$CR8B`8);L4D4}pN4U#w_!BT#`O>CfUeH|p_NwqlL{<1&4pis+?sPntu5?BrTq+9 zL|h07_VY3I*?5q(D^DcGLIK*`!M^aMs4bb_V$+jFF5cq`e~qB%>x(sroRhrZSdbZF zgBXJ%Rknx+MT%-3*(r0Zz4|s+DJ)2)E<@DobdFG#I*1$%`&>Q( z(R7TkZPiO31 z^1E5?Kjv}#-f=;NKN^*9LB@QIUBV2XkPgM{mvs$N+yyN1#5{HLv`Xm~a0J8$KCMF%(+Tk-L5Z#?oqgxIz6T zYNeguit~*btMxc9s@}lL&3-@{b}zBv_-6#G`%ljE?fIzci!tl5U-d5MGr4$XZDL3d ze243i*0l?PBbzD_Sn7d0Ff>FwOGO8B5#;$|?6l=pcfnO)Kt=`Y2!mP?Ts4lLc^6Dz za;}SyBRy*@kSO9$>(G%Hsppq5h8uVew)RT|g9f}7muJ~I7^Ko6_B}|078q$h{K4e1 zU5`0Pt1O3_zWfOntHhP!VIdSlIYy+XWC@h9(W5tdpdw_tK<%*O@xy5YZy;2g2K)M$skk<)? zG2e-!n02wIxQlB&PAsWf|(HzG33PDpGucwd-^ahMZ#+pXftdi{>b3aY&Gy27&NtZqI8}wgYzU&(BNoWP|CzuL$W;+FgWb zXZJ_?eTQLD2PeIsK10W=h~PYFJ%Sr6W%su4tnI7A{VTc28)tbt&iaoxpP@{9yyh@z zkkjJ(Z!U(O)Pe*@7}3Y>{Y03gE3ekKyR9u=lBg`wXh`E?)yi3$ZK!>=fj9@^l1`gu z&*bP#h{oa~qWBxsMgdCOo%ZoV$V9yX#RomgJifrAlJWQEpwATkk9Ft-y3_I z-KmG&a^yzbcOA20Hw_I3ao>mBt39G64Dl$mRfD(~>rH~}VeB1R@JJf18pWRwGtw~p z4_<_!ElbAHfV;wy{K|VJ)rxR=-NxHGE+)y(omjJD=*(QtanQt4Xl-; zYH#}7y=oMJ5cF=aiSYlIgd(N$)O{}0N!51+fw#*kqNy;w)ADEHHwsm}r;Y`JB zR6ulC6gUN9XUTf0W=qF^WZDuYgrlVy`(PI8(n5o_*o-KK*KqHdjeru2|X|vV9+_k zl74+5iJB9HKfbW3e&yTmts2hxu>`HacPrpJ|CTEz2+h@n1tZ%U$?Ihs6z$V74VyjV zTms_(U7D!#WcFqvv6GuodC4X}>co5Tq&}C{3Eo8w(dn*j$+tAk;Xs}{US`k@VN2gZ z_wxsXXCC|9(s}L>oBK@^UwM`Cs7?Tps^p<^@o$e2Y}@kT0U#lMeCfSCU+jl+U$@D+ zS(dginMuxit{38-Do`Ix$;O}oR?Np?0Ir3mQP}DRo zpg_MqlAYb4 z#*lOp8bM{B&U$ixJd9fKwMo@3uE1--l5ydL?ZFhZrL_Ng*5<@>t>Fwt-v9OTZE<+x z7WNKkvfJaXx8bhGpPL`M@%vGbt9#2>(|a6QKZ)BFAF!L1Q4}tEP0uD{@HZF9n;9&s zyI0BSP|#rh4W;HB9g-bKM50D=3OZs8qP#1WYVl*FM|22AN;>{)F=nzeD+2r_t4-!+ zbvO5?(=T8GjVGixw~_h>8PTEsb5A00Y>6@L~k`J^qtX`ajr*vHu%917Ob20RRI2;w*ntr~x_8 zfSLN=Ok#jz+`m2t=K80n@c$n)!@o1~X9gIsaRD}rnH2!D0L;Re0X~eZf9Kb1tN=*l zzcBL$5C{KcEB~*7`oBYkFafvmeyu+eT_cQ&oW0B)*;~nkji~i&1YOEy4g-Wwy2W%kPv6rfvu#AVs}Qrll8QYjBbUHJ&brh?nOMC)l1eV(>+_tZTfL*=vyf7lWxxp{kd2K63X^! zSNVc&&2v2G5D7+g0lxrB4DQ>_xcG3Lts4SO5}+|WwDM{7 zY&1Q@PZK_GK5~~;tWR{e^h*y5k1!=+Ot@`8BsG`PSvHnNC(7`yUj#R1sZIS1U0Xn7 z3K^Wc<#SLJ(R|Yy*BNpu2q89x*tHs}gzl*=${bAhE7j=FNTidP{~Y;C@d+?TF1`6=XTmC%B*!s!Hv;v69e!Jy>NJN8 zU;Q25yJ9?{cg|LlG|cFg#|W2^A}Y2JRKJH<7ukofuA}SfHpY#2<1k7I>ExK|e!G(> z>ooe*0ekz+p7UvnTSJr-9c~RrCc#Nl?$*Nt@rOm`eAS{He;zbfF~t}gDr_9C{bGIN1g%Ef#4 ztH3*NUD^wlHNplkNJKHIYSGxVF6$eGf+TDWPef@joC_&Gc+K>#+LrH%M9i?d=yEi^6*&p5SXHM(#{wM))VcHTeCk_qwDxZ>X1beQyd>c9 zdHaHM>|aok4#FryD>u{o95E09?|p>2ie3+hGe)U#{)zEz;IQQ=vbN2KAmjZ;Z@xQCO_}C3TfJH1kr(v2Q8o_oYg8^^5AR zOo9SjOh}w6!6XMQk;xrTx=litGKmlGwqkYE5${Lir1^Ez?iNTDhEh7PK%{%oi?V25 z>AEo7b!=@+$dIf#U8!_WX%HkYS#N$2nQu20ZiRVSzHW$-W>v4gteNYJyTCD5*J;U& zdgH6Lk{nDqNSkqdO{_?7KPAf~zPj5hdy4d(tQ%ET>4?8JRP zHFo;mH6X|h=zPJ}f-Bey*4BV$6F9cM&JS40V7jUCRC<2PKoibesRlpY>Y}YYM?BO&IGJ@iRuJqC*jH|hu_7=1lt7lGe*fuD{w&~ zVhQ2ca|MN8In+MW6T2|?`)9uTazFI_(S~H_B&9-9<=M1kN=m&+E;V;`hleQr&iMgq zbA^^Zcm;oPR)lS9Kf|wpd`f`ukmPu_w@0Gq-aS!Zpx$YXI8f_K2-g9#P5gZV$r&3O^;mY<5_%d@?f-T2s|3vcgZ)qRP2ksjU2e= z3eFO4_U69e>2^ytsuUEDD1mD+I= zF9BQ@yp5Jn<$mp*V4HLgaKFhli*6cevKTp9e)-!0;=dQ2>(J88c?OQNIC zl*qqiW1>Sw1d~-4`uY+wpFe9iZE7InzwxPDwDwk5O*7LCYfyao+v;gMszpKEYHnM% zm~Vbw_uczLb(JCayRT(56>_u1%iQi(4Yv{6+;9^d&re8j+k zG6;D!!6H~AV&i=f{9#|GzHQ>YQvbcXi%J89tsL?vupbnFMe_|5Cb)6AHbv0lboBXz zuyKnwql?Z;4Rd-I+<&L(XByqw_!zV0QoTq@-z&AEM_Bp+>1DKuKWe~6#HP3?sQNtY z7i&<0SmPH3{H!&CMEEdd&=5HPfwox!L$t3W2p;{_2x$R*0*p_TX+hY$@UNqN?Z z&t<^)@^~y6KB|T3?hBu~=eug><*^;uZGng`*nZn~Q2gtmd9(Y=NOrOWa=l^g@=QeY zJn6ptB?Owj#$y9rllRjfa5*k}SjW6R_e)R%HS*N^7A8*?2)3Y9n{+!m5N-SBQYW?~MGA)K!I*5im ze()t|CzWCS9Ljqj92XpB-B`Ll>0D1-b|GcuCy8W)moO$yiYt(q=_y>WAA#5?fm6{^ zcR*($82)MP%gqV`v~BxG3j7@k!fnZi%Bs;x0jBI^ZWJ7qpWKm!6G5DaYXi($R1OhxDb{$ifs6TW`**Ji+^OIG`@EpGuf=Z#Z-DXIkf9eb$V8tQL zN}Muw6EoRhWk^sa=rf?RKofWeUygmVGG9Ovdxlk_5%lbyv(Ph-3f|^6@ZFx%?c7p` z{zjv`4PBcQZa;4LiZ7qg;LW=U*%lQ@SnHH`Dg3p!0bc$O!SVeo%SeFXhjO z1?_RX&lK9MEZD`k>vTx$FAMn)l=`RHfXdMWsOX?xV#^?dX;h|$=~XnW2B8qs((9G5 zWgCCpNLTfZ`zM3~kktq7&Y_+Wb!tAd)wXXx1iovA&y27e+LKEja`*sUF|D-17H*Fz zm-5%anL2|=kY`{B!w*;T&s;ZN{P%iMWEK-0aC5#Huef%_TGf^`o)KdTNT!;Sk5&ep z$=W2Pts*vVxiPn?!%t=8Z(|}GgyJ%^g(C6n5=Dy0%v3w)+8uOn!Vn@P>PU4tF0f#K z9&r#^troHF@U1KCavNf%dcLSyVh%wJ9Jmv=*Bq{T{3)bt%RkECpQq=lL>Q(QP>JD8 zdM3dNmkqX_cWd^A<2;Cth(|noI4GkTa~V=3B!Zb;{C>QNo!jTTJc9F+k6=*824$CR zz)amMR@`HM8#5lID&@t$p+CcA`O`vq<=H?$A^6%=jGwubnN$dO4t=IOMovTYN8^cKL_ z+?qT!+i$VQ_-oog>$A@v*#*R)@t}NGin`pXZsL4GxS3RC^&v24AYKcL#*{c%mOMw4 ztYxHUED*V}VAOPMCH>)iqA!OomtubandXG!J4M&VbWhIfxWW*wHni2<^iKC2*@j~7b4WoS zuT&*c1L3iGkSE3S+8~W^l75Rgl}v8?AEMT~q`SUJz=@TKKL%$>LT9;>q3KDw_ZjR{ zTNK6hBdEdQ8;4z}h?!3T7Nky@c^JyE65tPDeQFAx46ky$N^*7mlDWP#iln_lS>SB) z^^Q4u-IxiGJ#-a4pW4t+@T~LVB^3${rEE= z93vOmMv^n)XxTu@sZfq(_B~nh2#yl#1O?Xi6m~XLcf=1XpVA zb=@j$IM*kH`ZIM@Qz0$4{4s+F0otZ`Z1I7hfL%{qUy# zLu<==uC|HBj$iId9nh#utLZ}K9`ZoPLtOrgkb zi&-#6!_7e`lQU!B!W^)=!Bfj;*sqX{fTf34(dn(1$ZAg!i_aOl`lddiB)LK>5qgzK z2)#Cl4nT4d3Gzx27m(7>DMHtV4)Tk1$Xtv#k{+n9fSqL&abaa?>1^0X7mA?ZeM}QM zq~G-)s=DQFw*X`%wyb90=s{7VIT0`)nQxooV)tM@p&_q2_n9tPAsWgJgK+`CbF{8` zlt=VpJt~Z}IoENX!8^7r?04jj3^T+bMMEeUGe@$ql9RYFh-2zW`gc7~$cr&=&`Fy< zsKAwfW;v;PmHkhO)nSJjCp7e=f9Y`d%wt~T^(d^A@udYy)E-y&4_gA^!D%x_rgr?~ z)K|11g`pT%Ef1BA1rY_}WD!GA2W*oLKVX}D#kTxSrN|i}i;(mb;AP1Zj9S2)(a?(0 z4ni5lk6{%Os9RLJqkF}GHXMHfi$iI<6?U}f8z;@EQ_)2K6zPl~ z(V20$5ehG1y81K3u~&@LamfI5Eewrp0R064eRHxPznyj>*lK&uP=xVJeyAb_XY5I8 z&rZB954wXOeFS`u6aX&S0bFR$o)F&JA~8}J*)I{ge3>tHcNm^;*<=ZVIFRoPX3?{< zv9f;DJqO<+v*eSsHAFyCRqBU5EE5Z=z3rKL&gYgv8Q+HD?%W8m&31hu4o6HXJy)KUS$AIVUmR4&C$ zcD8GzW5D{U(FW4RB4gL;xPh&QpyZ^bQp+CvO|)Ld2MWkTQ-oXnmHrkDXU80a@{mK9=_mPZF#j#?>LLpsDWx8h_WU?us+^m)u`TG~l zQ=^8&w3VjYaYeEZjzi#h5yX<3T;b~qwsdHUX-lE+`9k%7B>TYV`-ou;RTN{Vnd>kp zp$92h_P>|huO47(M1$yP*fq)GYewB50qfb_jGLWV!TmD8YAN&-*}IJDN7vPmOXu7~ zZmq7UQA91&XQpzzABU6GrNy4>=fu>*a|!l+=&EZr3hqR$i~!`0=fa{ZPe@{A9{EV& zemAOn*ANQ&!yLtHX+JzvBLC2tW-IwaX&2E~&eUeUUu#VF1P0#_t5P)Z#Uw~f?+ma{oZ9)<}@e8XO0k-c&ySe0$84{p?PhO z`F^yh92yDOCuI%~fm45m>e^@`L$m!jef^hJ&e4#3Ka{z{>V@Q-7H=|Qfyq3qNiy(6 z-jHJ!Vw6*f0>cg{ox2n2GbVxEfgf-y3z9wlz0VJPPIg&?_HOR!yFH3s-`Wo4G3yf-(RCnNynNhVpAKFW}4`5;-q>mR#$plc)X-r78QXBhP zH_it58R5eqnH5>e#KPAW+?`*8te&|Jy@A6B6Y5!J%&WH=`9elcevyse53sU;M1i)a zb3SQb0;oWjF_rGiZEcTs@47ZdK2rrm>M(KhPFBThR7SBgt|q&ADF)wADTe1sU+u=Dd7p9I}0dA{x^=E7gL?}@v&lKB<&v6JU2 ze6tnw=LxwJGJUt9qLwXVgqxHCs3+uqdldCp_EuS@;ed37Ana|mdOkBuSrkd;j{Ru~ z!8q&7TV#EPqBf7U^b6ivtJsD5=)F+)xCPVgo%$rS->;mpwttRb65z(gD#R5F6QnNy zr@$eY7H>)|eev`x$Pa=-Vt%;k#^QFG`1K)lRu`Nb9L%xv;~9r9w`r|f?qZFj9oh*g zTXHH9a)aQCV}aRCaFf)PQ~P6*;3(LYU3@0O0H^%%Db&E&JBGiXU37AC4`&{hHz-4W z%W~ZGCMW1Pv7EX2Ah1UeWc%TxEGg(2B(LL` zxdfOOEvLC)M>PbiM=w@cs~Li|2rK0N;0*3+)(NK&U2gGSn^^@uq?=yP^L|%jkfaZr zfM*Q!5y(PKk{E`}*v4s+qx_6yI{bjqH1bBmoGmshS?e%1a-O})YKOPOHEuXJFgT1j zg5%cCLa$W^I}SIM4CJKaVTj$`L2KoSqP9?OzZxt2cguI4&lop;PJ-_kb|~LTiqF!K ztRUbM*U<-k!HXqQf`9qX4VrteE)&2Y=$Ri~JWuPFoJqVCFr~dTQLp8#vihcynF63# zU~X~WH9{QB#$jg^#4Q2|hiHLznntof$b*~kz+4ZY-M&kQPIPW9=nLWVtf4(aIB^Co ztjip|`5Vu{G&Wv{oLJ)do_3cuU+{M}+>)(0V;`cm3*89ujo)tH{G|scb)f?DR@3HY zjtNdqSV*#ze{t+W5;1Ng1ZR#$kBczH0o$9Psm(xUD70IT1*X@Uc{FaidN9F=86FPl zOJ!MQJlK~(z|(`{soVKA>j_3UB-*K);zwYeY78ptEY4x7-t7Mm>b^Rx>TPS6mXK}< zQ5t~-YtbMfASI!sf|3hZ(p}Oi-O?$DfTW~?bO}gEgLEh;sequ~xjftbdG6W!yMpJt z_uN1BBeM6ipE2efbB^(w?>pWhEkS>`VnRS>OnR_F+#u~{gYnx{5eS>wjKZVK`0rjs zbhb*UMcZR9T=DiG3yjpnPx_o!dV92J=!KfYJI0W@Nn^WRE8iOLu}=Bkw#I|{$9O{% zkE8NNme#HZc%Dl^OTPYG+{Y1L;kLQ_JDS*)FBUTVXM=RxkF(;!2y6>ca#qcVRlRnI z*chcV&9B-O&==9&)kTX~BjQ|D!fZL4H(3>y1e1B78)7YUh{_aX^=P$xk#VjszrAa{ znTq_&lqcR}cWoBEuTvo+dLyrK?+3l;xP;=k@(h<*y2n_S=+eZ*S0Z~A2Z2o#BJ)>n z9Q)Ja=ihEhhw|h~pRr!MMNH0*I`aiv%gs|E*N7^|%0CsCe}jtui;K~qepuYmdV&UP zc7YmCV~1}jkF!qpx)wg8SUHP~YerURq}2KO2@4s0S-}i73_;gq?@#J-X9u6_(ieKZ zTy9mfci!TmW23vb=j9c2>*Xt{BAXCZ0>Q zg{X4fE^3+BLa_AR%)!Q!kqQm5yhdDLpo>d>n*p}u*~B(FoJr7J;rk@eh~P+C5w9`iM@_^yr6~ik^hUYb4%Qb*Uku@(QlzJ zB4*=!t{sSX_%+6;1O@ z+@d=A62<9 z4u~?0h}ie+W5&QfIPYI&(cG=bx++=XaC9LmbTP5gME}OjldCyVG7NiMU3{I(v04IK zzCxnKA9aj*b6$KqSn)M6!x{!FWY^86*O z;@`$u;00U-(D=u|j}#6B0+zf0Hx>dE0e*ldLje~5tFSCk#QiJW_@|Cf4I2x%wTg}7 z@95Ve85Ky`P+%E1KOb@|8yIg0Fj_D>5a=}iI?4?NotS@%a{mrb1b)h+7CL0u4k$fg&*IqXqO8Ffy1AskVF~d;gMx@dv-=w>TK!_y_}wfMV#M zD~gm`1p#rg1^r73#-G9YI|m4135|H8m+E(GRz z@&b8cWIsF%7$*csEWAMJoA(4{7AWsuW}ojyDmvKO+qi<^*7l}0_Ev`0#=mp1!vG@< z9Fafm1*2AhB=jll{W%N$x1HX|A=W>WZ=UD^8C!u0ul>@2sd){2VWwt_3?tUa#Tm=A zw#q7}o>UQ81u7f?*}FJHaow$7KMhm*P~uc{E^16jm)RNS4$d6ZqXrhuaOgF-Q)Gzg zPm4c0yb#)=Szh0uD=SMu7NfI#oi<+KdHqbu8@C$myseBE2XB`XAVUL6Xs#=d_dmVc zpL$_8%PC*BFDgMw|Fq}grsx5U$G3+sUJx(yC)m8*{HAgn?*r9?y#49RbFZ|$^dy-H zc7_w!vIQw-hvdcH=`OKtzZrN**x&rZ0iQmV`&-tF7dqC)`EoLp!-76Lu|2b*65Bm} zFVYVX4<7D$Il|hFJhsg*$OgvjzrQvlR+)*vInBeF0x4aogw{ zOVkrB&#B8kv<6k)B?LP?kU;DP@7v9VH8a89!P(}eIRno!1yLh&UO$_0(Qb+?b}#X0 ze5*M%hk|(5a2V2H66_t7-qI)lO$jaq|mfZ}w#O+`QWGbEDFWzH6y{cUtx&(cTYuAMs{CZZ7tV{p#{; zWN&AxX!)UR43-^gCHDdtF_*@#wPZ(xw(iCds>!PD!ZQeC%w$Omu!|0}7hY7J+N*f` zQE)%~9dn8Yy_>FEd>=)=Gv>O*(<_7)Geurm?Xsi3ugD~VqO?Eo_rzs&$yrNL`d{?q ztZ{Y&eZ4O`A+OAY!YVksdK^Y`#MtOx-o!9^wL>~ud}Z2+Y2e9=>krW~=UF?dY_~{* zr0$3(X4jrIlv1Vg`*^XaQEH0rGrc8Iz;Y$j>xkFc_ETO@?b1YEc-Z{;+!VYRZp~d- z?6n&Q_O~+ZHCGtA4hC6b?@NZ<>khUoA<=;8OrUSIu54{{s5BI+kJKk#i!tZ)&T=00 z)V>M3d5BXCKPP)B(>05@NJ68?W({%>BBXM|Hd1?zJ7P>;miz0CnwaG*xc<681+*(y zwJw6cw$W<18M6_oExH^%u}ceDdCE*ZVLL-UzdP zS2*$BBp1uGQqzSn${C&Yo>(`2?;(nVh2!myL)zB|4=niVtGD5mM@E~r9679R!NNA3 zE3UQkeI2Ztm8rdB!hXz|-uD@k9KOiNAx)1o=k!YUIotn> zgXi$3D7*hYHbD!<^p!Kjx5kcceL*aS7Wg!6uyGZ}t<6)%q8K%)UO=-V4AE}*qBIj zB#CXCfxT^-`t!Y{PIn5_3hoy}mDsMgP+mXPJ-jnJw>WrbIUtzTEkT&jec0Jv-DwJ9 z&+sVLH5NU&($M#vZSmCIb?w`w9|o{|tOYrPFC9Xa^|p@r`(@%Uvc;)O_4J|i92mUE z*4%pO`7*Yf^>d=Iu5KQoVk-W~j`_9R#M|D~7JK^^o|V>9clR%w7u0i#tDi)im4gIE&EzHwF~iRSVPX;+z# zJ`}`cPG=U9uFhpcow?4JB)i*$sI4D}b?_0%94OGIepM5y7Q%ddXmtq?8|L?7^;}(& z@NPa0qI(wid0aquCE%S%Z+fPu6&cpf@B-{378kyu4K5F(6BU78M3VgASou3P(P{C4 zZU?8lx-0xH6|JUbvkylC6H6KH7;Y-{B_C+@3-$O38SK0$!QE+V>FFz5fPG+=sGR<_d6bJekZ1aM{#~zwvdKeMIp%vcu*&0ye>lblX$Z?bOnz1wK8VeN|L=n%>7ipQP z5-=AWJo~Z2wy|3t=&Gp`_dj6m6}xOHaARE*rJYdEb0bkG=rK7olJ51qj?z=l8)OBC zZ5#aOu5yYstn%N`j*%n5N@$X<_j&|6S7FnN&KBQfKWZ`Bz~WnsK2b#mWdR zmjKb;Ym!fL$OtP?EE1--JjRbFhH(-vQxtCVC|o05nZq+LkKpn-WOpn)bJw%jQk1 z9aDu|lquCUi!mg*PdGsGOFpv`=R(1T;uo;iRi0Y=lpo!&y4JJprsZpL`3R=U{_qLZ_I%dYTK0iZWmUdZ zPhl;c_MB0lYJ(SBbT5_Iqp$S7#vP~{apx`6Y<0|2wg`@EdKXl5=wP~m;mqa6M~76q?9@cAgnE{=jut`5MtbnS7^I$e?iH0X3`VANKbbT$7dpAL)L&YZ$IDA z#W|-v>1mGIianLXV34ha2o3LjSpWXv4&%zfhu1fQY!ECs976X=pT#OOnB*v@sgbK) z3O=Vp9pmKtt^l1)rxSu9JzrO|BHh-Y>>S%S%o=0Ovu|x6d8@*Cl3v4Hv`SrBQ=&sl zVGh1D^MN@VjjgBkx)U4R%WCW?Yi9rt)m~zDjrKE7{BIuCCXIA%0<-#fQvvVdPs9_yuk@bzCr^D z9>IgF&?QD!Y^LldN296Dw$E=i3ty@+d4YhQd)C&5OVZUMXP%c_ixMYeelW3#_~!p< zvIAefTJnbemgHj;{VAin`t$V*mjc}9_QkjGpi-~cZ%(IQ*x;&hBRtp4jN5jDSap`l z;i{SC0H5rd=l`T(l%J;eD`eS%~qbujv8?XeD(YcftV1z)H$34M!%~$^diQP zYLa=_XqTxze}2t&?zC}l_l4x`uASUcjc#6xc$uKeUBJ>y^*;m`MF`*opW zqKG`&DJtS_<21D8!1$P^j1-S`#yZ+}(@;BF6MwU#h}HyO%!7|-Uyf;;GA6^ZqEW6_ z6_?iCv#ANMma5w>i6MTyVx}o!4i~AX_~ekE?6Yb%+%|N3jJ|ens&t$G!6?bzZTn=t z2wawQ|8_=KrTFE#8(a@Kl}Vxu_A&jN-37RJ3{h`jJd-R&dyL*9uo%6XU8^LVHpWEJ zf}M_|cevDl<;*0?TW7`&o`A_Me%(=ViG}x~AJ4q-+$3<9bG*;aq|j~GrjeO&`6<=} z4TiH##f`S(OaTjimZFsTG6BiYOb2;S>18mnbV8Y+b*zpCJ*9hZbEb~5`} zaT=9gyx(n-1s<9n##=NKzF4Dl2FXr%srOWB%J|nQ61!Z4g`}9`Jz#at;-o%q0_PZdgjE7N0vV!*oya%Ng!Y)K7MA zCZ)I|xMUBA+Js1XB41xKVU}8;ykO} zZ;YV1u3mG|1@l@UC`|3HZKlS3+7#Q??|hIOuZidI6%1ii<0&CkG`N2b;;e?Dj4aB^Sr#yzDIk z-LvOnA`l;pa6~m9jApn6ZgDO*S@zp={pS@an=)?qX8MF>!yy3!ej)%Sgi|25Y z2mcXzUJ^mP4+W;)7rou#gi7i9+erZ=C8>tz&S<50lS@9jFc9zEI~R>2+&OSg>t??y z@nfUpZ)j*xF8|xMeeZ8lQP~$rDBth3xx*iEztX`9Qv3Nr!PySarzuI;0(=Hp7Qznx zo7@N@Iz8_Chh^0oe*rw+4o*& zW#cdcVsCam$)?F`uDCwd)d82k+t)=iTNQGqDJ1P>2rTYpRt_=ClUq$p{cOI~3%FxL z&O@GO=9dj%@g<%y`)I^+l*f{m`E5I4R?d)&X?p$&SUYY|rH)bjRsW{&r%cX?kW3SsssaWYb6=rQt%qhjIJm zuGJFjP0uai&ca!taeUX1ZEm#qh^GhboT7;Q$@Sevcts?kn|3 zt>u#CJb8_7XSv87>WpvVxT*nq?y`&@`UcFTSUu+~zx2-#J%Oif#{k)#xb5jJtLX>O zXApP@$1N_a_4d5;h5VI#=zNjy*RMa$bxfoS^~>Sh*sKxGOJ2#F3CY$=V&JPn5OZ?Y z+V-t2mDp zx&Ruqenn74l{_gZH|)+K=EwFs<9z64XFOhYFbFB)C&^sYNM^dZ(pW9YrJ{LZ?$c_x3;+{Y>cFaOcEDwzLm^A~B(ckSo!W$(BR3M@Dd3CSG+0p}Xk?6uj?lZqYEW z4nnHKsftFdS~Fr79v7BB_$>4!A%*s)^MY|%$7ibIJZTCh5u+HTxwG0L-QgaJ1`xcS zBn4+b8E2Kk=VI)%O)9uA?-3JXrN{{%+@`E8FW|*~_Zk;s@QAd#fuVQ`v{D)Dd;G1}O)R z5_6tXGG^O~8$KkV@Lg?YTI+LsY~}$)bLAl&o}*EI!*3NR=lSl{_6JS+MVtrQ3Brum znOX#1E5vPM?5w8>UR%Y!7?rqvZq$7IdUtj$QSnME`mDr<-sH>`J>UVLNe^ zDqq=RM=oOHNv=a%qnt1%|CKiS;HuRvyuuG1nUVEg0`Iy&sU5gXG3z}zZ?iN@uTg4q za3i*K?0xfWHx{+UGdxOWb9Kn}Xw+SS%qvh{(+FPAE*B5zGu~CaIyL2I9XjKDi$~(F z7e@_V_usxYB)*&RZ6^iKHPdfb*vxGT`673oC7)LNU%^%=@6Yhr|4eWCzY{|R-JE{` zru~FXs=@7lsX6_xU)y;BW&wi%U<&jr^8?{jUgVffD012!(0UdAbv0Tj?_UCH-|dt) zv^RlU-*B?F{w-6XK-*Oiw3owR0QLo@LP683AP~WY@quR76Pfz=n3|D|sD%HT`>}Oi<=d%#fuu=R;fKlJahHbZ+er{A#<8IC+ip$8<=3-CZ*KIFVjfCmET z|0MDSP=L(--A#JS-0-)e5j9|86a%Wv+o4-@lbB zc|qzyPI(44BF_vIXv+%%74j1s`S*!PTEW`E77XmQ`JL(m218Eq{x0+Z@;IPv!9cl# zoTCf_RoX9eWWXl;-BKDOtPQPftbb#(ky`jL5cquH+5vnRK-NN1&Ge^6!!P|M+JnyT?bIfTOk}AelH4;QZPJ1Afp4>DR2t_ zDH!DVXTUNP0tLuPto{3BgtS)O909j9f&LcJ2Z+=VB5YT{t5^^nJV8Y1vsThFNcd{-2 z`^2PW=zy>^v_Sk$&50aM4kmZ}X(y7|hrG9-C${tF)b!tRx`5V|&_8jy^7M2armCyG zUX>2KOjhno;zK2RE+&FVP3N;39(NE~t@X-c)-jTf!G$O^cz?M=8GVsigkmOH3xz_G zQ*ZS1XrSY9yXidSP2)~f&zN8-w>L?Pep^^-aA17nBct+=fW25rZtKx7-Br_Mw$*nZ zgU>%G8EVYE%*Ocsp5B|8=c{JYkfujAGio9{xLy*2o2pxv(q^&Z_1E@8y}a|@2r79M zW^%4PHi>Pj#i77GA77rn)C%27|CalXzi+>!sEDns*gGZd`2F5erg>s3ZeIF!(Atd1 zmw-q1fhy10H1M?Vs)l`S^Vwf~!+D#S$=9LkZbikM`Vs#Ob(-;o`4CMuitf1>jw#D) z?daae^<<64p+Q$!eb1y(l+b;tRtziV728qOKjJ^ee)%CPFC@KqBGIZ9y%Bax^aXF` zU5lZQhHc*lu;-57b*5_T-@%C{M^5f&&%mWHy!f2$PO)>T_2zN=x%xK{Nn46p^Kt77 zGE40wg@+5DM>e%O>KWrWw&O!64LKW{#-3+KSv6F>{C3b?vJuy4ZCZ?kMgJ5hu06joNY`O>U7N*ym*!of-%F~$bMhXvu-kF#B3?N zr74F-CY=JC`lxaD5t%rf2Ai~Q;LEoKz9E>}QT%LbF^(AWJO#2uSdp9UI?9dWE*#Aao#qK(x$Zi>udY8DV*+1C7!63j==5_ORuu;E!!@0MII%-DH8K(Jko2_Y>R!js+M9FupwA`6*2 zcjnH$77f`uOd}505(po>@7zu17?0O_7jWqsW3E{pnifX6JL(uwKbx3o=ulqV>O&=2 z9KHUeN1JaCgfo1JGRRn=bh(LLt4UZ=bLm?euRg%!=Nwfx$(%D~URi5|H4Vp5IVh{~ zcCXZ;j`KbCfAh|fWAwu=^!78vhzVi9-69;z?JA9LXLV!8jl#BCy1)$4%XArGTnrPC z&cr5(v~H|ogok$>$JmO}haFx$Qv>x^m=CrUP5oZlGFLV&hpda)Ciji_y-a$0%{KYv z(=!hkOLm*!0@`@o#`&v$N-}fMCHAM3L1wuxlh*6jE;bnF_u#cu&ck~hS)PZF2W1fr zZ$Tf!5mWK|N^eE25=&LpSV$C(RVA-_F z%6OJ=IFwRfp5?$j9xX-YRnsAu?ghRbs$^Y$x7pb@y zGy!Qt3f9*J^2H;x{e(gvjR>P+v>I@(Royh;-x*YoPTChzP3Mn?XqnLk2frU%maZ)A z@$~FIw{BfM^Qm9sO>Wh54Y#OAZpl0Jeb85lQ3R%uToNmv14<-tsEeP=RrcO^GdL8O zu;viIAM%!VnQj|{-i&62F=IF0rHvf6Jg_hXq zT`246?N|yQCDv6m?KSkaAP5Gx4^XBmB0)X8^fig2Z&zey6C%8oyn2t83vuTm?AB14 z{A$vAvAmhMc37lwK5WpAdzhXssf5#n{TFLcNuJn10DNV zCRp@tfM{vu(U7P9=+uUNm2#M}+q+70_Qgl{5_w+7r;RFUvmSgplXc@J({(iN6c>xJ z9>P}d1Kyya05l(+jHh^CjB)1RD6i1YKaVm>sIi#3Ta6eV;Y8RJ23Jhxwd3M&*adyS z^=9yGtw?$4SOq;|X?XR1af>rOgwTt%xJe{(lY92KNxy%ivZ1@O8(2A)!2H>=3g%KQ~vM!m&6l(cpryi+-sam;3F*GJE}mx947@G-HXI_z zBI}u%-l^h47Z1XrCkmgPZ{A+iYFJdN!#pEy=j9(~e-ETI3oVz|y2Nj8+kTu9(6w^wYBZ|q8g*qGKh$>HTtQc5 zG=tihFSuINA4vxGM^eU+(^z}=-6&Bb77j!Zc*u(Id^@tkA)2>4N>2}Y$owP~&)T`d zt>tsJUKM`{O)iUGAQn?SB$Z1&XuX+UgmR-`GN;=)=y5LIqxK22ExLL`N_Kiho*Nzs9T~n%w{2Yx2a*=z5%6~cHXBU5$&BQ3jH-q zd7ax$EZ&K?Ty~4!8zenk;CROUs0W{deujzc^}qvyaa5tMU^x*|rj4Rzi>fq9=w9G% zRUhwG{VRK(ule37_n`MaY4~Oes|PgpM8mFYQQ!`;7AX{FZG#@twr9H5^S)SfG7G-- z<=9ekto(Je%8?Ld4a`NtA&?Jua%gbo6vh6Q(a=A z%`C=Jmi##Ll!(y^l}f6{Z}+!uFY+M z@{hroZP6GF`FDl(c+1UFt*V8OXKf)C7z0JcD;MS;mU}t#&t*=G=-J|#1-+58eli%~ z8>|(NPl}~Nvi}g%h003`K35+!9xD9~YV*vb&DAZSi;;3rB<1GJsDP0{U1hc`(5Aq! zE>_wtmY$@c!fqTtez(L>BEN2kPGhP$8Z{@k!6K%0Z_7Q&TXFD(n!7E0_yct~367|l z+NbB)UUT>n=v{^u+D3YQ{J7Zm_9PI_z|z9B*j8S)-1fS{E%eXI7We~J_d3bf(*tt^ z)8(y(&Mv22o9wckPdBU+h`6a-%X*MaC|Y-O`$4()MIYtHuKM*>XudkiA)^FV%4O35 zhII~ukKcF~Rtl31dZ@0B%hCI?5D-1vAsLUB(J$nC|7x1uQ(nWBF>Jh1gyan!rDDOBI+4+CzV&s*i1}XQO#V6@c6q zur$89um|{j96@9}xOUNct!eyBo&(K+%kLU)mfWZz z@5#O#L?1%DZ+r$)BV0sUBDm3wh4LO zi@8A^F5Ak*@s#lykbSWANaYc8)1i4g^ffJm zw4BN`3*Ql0{_*uj3LL-PvH>Y66cSuxE-nG8_N-@b9?g)h_g+OOe?;QxIK;X;NIfCI zw&Y(JmRY{w|Hktn;@$EAywSgYT9E#%1KI%02|-ZzV? z>euqkb!{eFw>KJDfcJ5Q?WienEo-Z}Z9=BX9#coUv&3GyBos1@rP-iajXKWO-?r9S zpG+k>gGKdH-9XD8M{!(ZqNl_7to(3H!YAG&wypFwHbV~c*or4wuCe^;1V-UeygL)@ zmJBkjZ{jr#?RB`4J=U1D`%TZQ3=5;WEe@fT#`YX`Yb10R#&^g2M+=-GHo6K4c~5$q z0B!i0=T$rws&(c)759ZN%S64tzTH~slp$mUMr{}F-;dC&Kaa+tW*Mp~wE6yH&aBsC?SG z!Qp%^x{O;Pxwe^wS9p9$N<@6#1=r;3_8S7T)&LJ!c7cCyZoUhd>(-dTS(In;I!%>t zrPVibk1xdM`umqVIy?7{I6o*s>zb-tuxH6rV82yk4VcWIvCo8_;MdCchKRYjNAP%QrX*&?#a%~5 zp3n@2WiNbK0^4e7``YegIqTGz{h;CFJnX?Xp2~dt4CxGBKZ+DF89hc6UFrws+%|^B zegVv}o8noqAD!!V1rPc-6U}F*ACILN>{-6fuxInO6-mG%25@wj90nGQ9g0WXK( z?KJGl3+@p5<5rX;1t+%$uI$%`gwe}C5?6jEDj}5KW1WcX&GqxSKbKNOg=M7Ri=m45 zq};`>S*D`|g|Q;t}y-}%XT!^DiJMyp6Km2W;l?{*23G^|w? z!D0^R7QGc(ret`Av|2TqKovy{6GN5f;n=M(9VxSHG{YB(Sy2V~VidOY?3$sQF(~@$ z`AP@!Pb}|He5RjsPu^uD?V|LraH+EsVrBHX%RJinSae<_S&wUAYgpn;?1XnfE@9N; zXK@x0MU&g|M|W}jUp33ok2@SIga{@d9&E3Sc%wQkP=Edl-Vf|&1m?uNA7KX2x{n+% z0lCTx8cP9|_QzlNK!@sg{f1M{o`Ays6>d>yfN0)O0D~$(hbjX^>N_y>k6*EwJ387r zh(I7FHpULzW(Y@fCnIiS8!HIh8Upwg06GBAp2)G+S8M?1#vY8kKtd(oM-WJV{|i8= z|E1#=jG{nNfCRv!C(r-@egB|$9Z;AA00{s*(Ed8W0dyq(cO32)JaKVx;dU@az(EtP z3Bn$rVBh`u<2MjPdq;$^B^+XlKtR-ac!5oTzy;r-yLHh ztq!+G9y`cCehV}Zoa_;fZcrG+)*cT2Lr1`ZvayC(IoTUp!a;}piTwo^$#*>jUcl!7 z=j_LM1N=g8(VT!=2#8bvKluAcxWd3TBi%)EFoeMU3HSmhboXDutzQUNfU^ivKSU7Rl;)0BfZTM_ zvx@XXkO$0tf+ATXNR^_0F36a*4 zi0HK7G zl( zkdr&e2Y5m-FlB8NdDy#>b;3IY-7Ju=Pzy0@pQ zR(|pp`RL*dH#D&VTln+OCqIxdKr0slDNX>qO&~wg`2lYi`8Xs1HkR)MQzW4Rrz%x` z^2y53-U9AuYiVc<|DMKAak~I+G)M$|3<7|53Z^IiS2zOB=ZVBFf#bh-yZjrR`4MgW zfKrQeh7ULe1)`Hk=T7F#sfv=nf9iucIsyJY0+2ExhE9&=;ENq$Z0HE*aslsxT>scm zeMh8pDWj7E=x5>r|H(i7nhRmgWys}XV{c(d*| zn}xB5|9B1iaULAF46RML{&-b~{P-=GgBy4lb7lOg`a1c+`7=JiBwiTuuK%O>;s^X_ z{uABxrz*bw6tQqJ|HU+8?u!kGs&zJr!I(ChW*kp!2{O2}zmNp5G>?*m_tKPuiIf91Lh z4vWM0!}7?D*<>i73o&1O(TWgW^9#YYTA6fVPQ3fLwU64KX zzg#l`*2*a^yZ_8Z`SZYlcJ6;#6tGAqTa<1J~ zkl+Cy2*~*%Nb~?X%;sc%oT}2Y0#q?4tM5cHWcGaFL?N450Rt*q=#Ts+xLG8=tJXIm{UsWqNfU*$QaBDM5z;xqA z*g&|91$p5-ru+b<;)9-i>-a&E;{p6rUZfhtPnQgmTqF#XLVkJcz0htQvdH(TwGnh<_LI+)j|{Ixa0!q-UT%%tS>G26B2&0t9p~)g%K&p&$(~Q%74IBf z@-k9>(^%nnw6ZdCoOwlu^uWbIaC=&T!4hWwzPrzUr~AO{_DEn#zh0*x{i7D>&H^kd zmQ!UtkHhU@ehaKogF}~P;3Vp<>WW%kFfhqP27TfyHYS7{#@o*YaBmwES}e z?CixQglAr~uq2Ql@6_|z5%8GEk{U7w86>|?$=Gt8ud4UYl`$_kD~?53QviP+)W=7mAx?E`xZ3R4da8fwp}Y31ikb5oO{ZPL(#>vvIQ^JKf+mUK*%Z6s8T*t@ z_sg^tPeqk>#UE>xbyb~(^^eI7H?@#+d)8wscM`BxhLqM67AhaQi=Uqm)Sl4Wc@l}@ zn*qNklCQ0yM2~w$9B!&xy&pXBt>fnIr50YUsj;N8PF_397P}IQv_c(Ix#<_lSS8u> zl%bG0k&Y1!?7^neRJX&bXhja*^nRkeFK7kdts$1#e>*w+sbsi5_ zuI0;KNGcR3rn0qKM0+VDAu4Jie{*)5)-|Uq#Ds|_o)vA8=~c8zx{o}CVYV+upab6X zk|l*8J$aL&Yt>3P$wCgFq95@O8hvB+t`S>5HnFqAq8psn*==T(R>!|{%SDhzy_J?w ze6;5FrfmFTxVnlG0X^*@9==IoMQN4d@`mX-KWwED=&IXSsx{hme4C`?O-=VUl!p=Q@H+C+l!ywawA(YP_sE=7Y9Q}2|vOR?xe zZ8aSS;dg(iPCx)r-jIq&7p}Ci{SUoJ+x#JQz;OF)WGvT z57o($)o#d%T`t9Q_Y!+p*WxGez+c<+Ev2hRd|BrMUmJ5pLAPM5!*h*;M74_MXU<_0 zZkQiDBD{&qv=iJ7>pY+$bX84$xFeuh>PBsm*o?Wl+u7O49$kF11BYY_%C4aoQ$HA8 z$63gvGIB4DX*ZDh9;GAu^F&Oh4juQ%*ym;s1M$ut-{FqCLBBnhj&;YEIg4-ON-Ou4 zNb={x=4-|Shgqw$T~|nS>u&jR?z}2>lOd7!>aM)ka9LjE!rYTWljFK2)C#65nuI<@ zS9cS849C}aV2p6t5Z9}YOGIyOEBH4NEBG7SQ@X>GBTF&G&ynxm=Xb8u|NWJArx*=g zdfxO49idB79p@Bd7v528&Yjit-6{@Q3NSl@kdS>n*lm<6C)hiRwSdar zIHGQ&k)K#t7|Tcxxt8J0I>vCrFf~Yj{iAk4^}Od;Q~Qlfr;^o@<+~ARh^5=zdqgE( z-Z}~MrgB@dlhkttb&63`_K(fH;x17*R zy^^Db=uN)?5gNhsYJa8G{uvfqJ`_jtL8UO6LZ&*KG84XS)_^hb?pA^##datJbD!LI z%n`DBMVbe8zec20?F$8uy*^UabA8CZH*2 zIY-)4Zm9Q@D>eBj6WIgS`_d(AOTJxfrU`do2^}Ni87?s1$Q20+9y>>Uq0c=ViTsDmo#o)yy3d{DBnOv zi<+`Kf5`8}$Q##d9db|K(HW?o^YV0z>VluQ^}@V{=_jFud)eZE9U~{UDe)Ta-1Sxp zczc$wQ%F{})0&0<`Kd4_3)|Pk`QRntGRY#D}rJ>!QHEC*JNOAdg zMyOXk3-=O~yZfV?iBQ+2t5M?fv6$n;ue|hV2^Dr~Id_Ey33zTHXlX;XXvR`+d3-^6 z5xtFT-Z1c7Ny&#?&+1Za3TpKEi2^v<%fXKMNI5JCG1FH~N8;U#jd*gnq_+gaa~^Cd z3iV&YtEUSIu1C=hdOjJFKu|5AOve!YP*3@?vB#yF$vR7My`v!p6mF>qOO2`#mda7F z0Rlck$v11s79%k;%LPWpQiKAkXyOZ@PYakuu1rnhSiLuG-a~ydAY_uBuowGY)O}J> zqS5Qfu3V0;$)V9|+ShtiW3;1)DEy%x-9f)cxYnBZc*1n)!0>X(>qz3LE++qKoJs@l z-pTX4&(Ld~X}A%6Wlb)f<8+jw&Xw;M7dCc|^`E<%nGc$qMa*A$TDG@WXvwDXoiQpqaT>cXVF%aOcrtHN-0CVT z$PL#U7w^!oEuJs!kSb70VAj8-6{b)TtBd9mmnbGpBt1wUkNQ?$RaN$fmoKEisW%H$Ad>MX|%<94uSS{1|HO16XZyrF-xx z`Cf;7p>tYHAyA!L!gFnLl4Kqac0GrE$+hhFy=$X#J)OEtAH?`kfW3UYF6)P{Ry5@Wah~jbC)c5auhM z{falfCgz5zf|6wPaLVp%t?~yLLF9rx$($qZv_x`5j8`v2L&mTG zqs7Lph=c3Nb3NpR%?80Nc5wd>4Nkjx#Y;q;N|>*$%y1Nrh3^&C6^_1jeK=j=+tYaA z26x-At23t}wt>GZmi~MGsQ$)iln^J&SLJAnyz?3%Hurj=fiUJf1-Czywwqg}YuG;is%`yxR7hoXGwG8IKC`uyM zo)%I$LDsg~I@CLGhV#;{xSXE&UW3i#@IB9^C5Fn~vXt5st#I>~ z$yl024YvOJX=Wjbx12kaeE$Reru2sJRl`p6$vU4I0()ERE^4Bon)x1@_K_&_8-7E2 zT~9wNB5uigQ@HWa+7=Bz`aJW}CNZ&LitqMoPDRHdqOj zp$X%Ph0(#eNb;5(R=UyfZf?IK9(Z`gc18YpF%Fo zoE3;Po8~FtZ8UI;lgY5U^`vwc4Sho}7>CC8hObGNuv!vA&Fn>x-cqtk_Fa@gf{%PQ z^YR<^5dS@9Jf`^&|7$^&qZb+{zrD^jE_jhPUhMGYkemKPBpzdD%FS2HqgJpT|CNt^ z{w*QBlKia!yT=Y4E3So!`*%Bru=F*xrqTLrOe1E5Ha9j5Fvgr>Mg8TbrAg=%u&FYX zBk_+4#ZKiJ}MdQl#;df^*_EsjlXN1zYPeevkU3l@jqvEcm{? zc>VN}Jz2pOpSAkTU{PHEXXPLA33_E%5p>J+}w1PT(95q>kHBu6rWd~ta9-`-ShK;3D!j4bvMp3_PGX61$cfu*tf#e=PKqCG{9JD<% z(BnH-EK*F$uTEq}l-v297E2S#eW|p5KM`z|#&*K^Ok}N1w#eAiis$Oq=hxm` zb2;OWb?j!%;j!f#mkxgji8yC7QZhFhB7kSECMbXTp4alpD}nWc5pu*vnQP8HZgy&i z3ryV#VtHK@H6vJqYPg2ko9~v7f9tSIe}nmWen#&Y9JWkR%ybN=pQo>6zF2f*?JC{M z=iJF_M6I@)AB|V;*_>~%BxGZLsiG(+n&_zVaMi{BrYZg+;cfBYRoV|x`uYw9^wU;i zOouidKH~UKd1umKUwAd1DQP?>F&YE*eQrNZc_ZC)zN@p)&E!DLN2&{t}$_euBiQ?s$F#ln5{Yw>0uM2N)m zNP2=C7=|5J1BfkTwv0m+H7axq`Kb}9I{j4T)d*(SJbt_Ja?v)|j|)+)p76Ng^d+Bw z05bpPCq_qF^P(T0qHDD9Er^OwDIg zT4$8hSL!b@^i<$QrKRn=CyLf%XC9T{54W0)k>^xMNOW-K(fWn*D_P_E_LSckXmB{d ziB%EVbwF@IIr(!srNdT1jPH-jpDXjHjNZOmx$-i0Sb_@w8Fu6v%pj_+E#88p^sqX- z%l)E9U1dT-?m>6Y6$ZJ_L06x_R}_Vgb5wU|!dv1-Oz`xFj7(2A~KyBbC zPan4oM?hFw2i|s}rf1RX7#2pB&zP4z9K8m6?`UVTrd}}{CjHiQui$%ue07-KAQr16l_%KFoA+{9NG{2IG0?vj*U%PD_j z)~6(G#Brf=8usEF&C6vTtp<$D_BGkSX$PTC>1u2CDx!xBPuXmAl|8hijad{rFyo3@ zTW+hmjf=aq&DdFDQvOvm?buw_+9@lNSM9!eM?`R{K7|@{Sw}lWidmeD+fr5XS`g0a zXr3Y1KIMCsCZXb@ZkcgqJiDJpM5}jp+c`y?a|6lvJ#~TIUmtY2SeqE@BW~*icU^4RH?BHN(L@y(KH#vMw?AC#Q+0MSswFmo z#znbVYC*vE&H6=2>H-g;u?(V1vllpLSTK*O&ReCnSarlaKIeT-3V(g*Sj*u~*-09X zG@84L)O?aIq__l10Io?FPr zndfn-g z2M9RdH{a2-1 zI=ksSaVGBLdDbr---Bk~UW?|VC-F%+;8d?tLL(Bzx$Wb?{@JlPBEhbdM2^(g$)Doxonn3e2eE_(2D5=u`gbUbUsHt zk=5rZ>pDHob4b9TLLl?STi1ZpZ;>3=Hf>_=om{o>%n*5`Fz3a)u{kyfzq)cSWxW|b zBofDN_a>!-lPIUK-BN9>`Gj~tEB=FvX1L$$l@Iw2ZXY0|ioyO(h7u6(`13gUe=kD` zxETUB(*xWtK?E@%iVwK_{`(t|-DpXE;M4?)i-0KPokSh{Lcp(^_g_S} zg6O>e4e{`U$Q-~~UVZ^Se*XWEcLbHF0}8={{9sXuI`~1%q!0*_|L5ZQPj_?s#KS8f z#073EctKGv5TpN}#RJv!f@U2`JbcjQD)2%3=j8mSi#W8EK*|%UzXF0-fxo>asLQeI zPxkLA0;LSVz3@)W5Xi@r2l6C?{7*n!$-nV21@PTk-UT|S2EQFR}1asl{I^MjBwUMTs|zv2S=4c|ZB9h_~PjX6ybZZN1G4$KX3 z{y)rT5R(k$iUG+5KpqFMfLN~1W9(nh^PiND|8;tHXBgyu!UvT}gKCcfmj)08`Y*}( zPx{9%ZhL5-hgI_b1;M)l2LFLP9w2oY=rWK4#J}-) z05yaD3%zK&f`mB;Pd0%;bz^LuIh-vlLGhS>yOi*PrBM(#WTJF`P^l7pdmvH8ztsJC z!Lsuor1$Gm0!r9$af9s^c)arQ^Md+E|C%0DS_;T@8K^F(ASD6d-!1en5^wN=G?YK- z`73`EUOwQVi|&u|==h-9Q0YSTmDDn|Njby1cKhp(2UI@36m&``RiQT`h`ptj-qH{? z*FQo<$ap$~5p|o&;KQXRx=S1ImACz6&vor-8tG&n4u#(CluaFr=XSnO zmfMx&IJtT)a{HN2B@6v~WvqU|n(};i#@yC5Ur|Jjy;An7fSb*U$ z=xt)1qY}M-d$!Rn&3mV4Mj|6_<`6|X-)=EIA%Oj9@Oo|8*e$B~MSasxLC=~dt@WCh zjvdo#wo&e3UeM6)ls?&7M9FMyD$C`wiVTwt~Fe2DrpaB{9~N{2~Q%s>XKD9AdM%&P7j}O4-Za z?1HOyqD%f1o*{YmXNvgc{8)Q>52p%+#I1g>W}R0iX;V8w&v*PhkAD)m%c`L^++ewM z6TZI8lyDAfmTZl|sb=yEt!PF;Fhf<;qd8g9TN72OUxt-ZMUGC}<=9cy60Axsy}VI) z^f)GC+Ycf{iVANPCC%973=j6rGx`#95%|h5e}bnk($$?0S+5T9b1b(Y{G1cH1jNI* z@jf0=-{N*tBe`xLJzODv;8kSrLX^qIv&1ChP60E-eHM-PQEDWf5=pBA+zYe$rz)hI z_*Dhw4I926b9=+ic$DR7Psd5M15QW%78X?;R=A~Haa}bDgrwX=KXz4MCn-1R={(n| z;QPQzj92+-AY+VcWC3&HpuaVo8n@%-V(DPdA>5^9cTt&9s%v&0rLu=Ga7?m|`(5ia z8Bg&sWm&fgre(QT<@^xn)Z99wshomMAi}GhJ@C|=46fFB&P-}rL4ndU#N)iSD4yDt z8PT+eFhWAgv`ZQa42r^q(tPzcmzJAqk}tyY`Kjo)~5XxWLGpF^t4 zClBMshq_>5O00A#YNDXA)hAjj{*&B^$2hP8yw(DnJd?%n-b9``>=hj0zJ7{1HiMRNnUl=5FH6NSjx9B(<8uVpeeiqXQnpn%flWA5lKoc5`*!0E9R5kn zn@2=mS>Ni2$zlt~y=gmE9kPu><4majSh}tZE_vRIJ|*5V$67tTB02mmchmtLomEPq zd!+J%UM(kJxKUMS%9wI%dxr|io*$sgIqViRdxAvzDKq`7{*@mTU4Ct2k{2$MS@uTx zN&C-7HK|%NHHYPPW zZq~p0X!qu**tU3FbCW_ z?t?YYw5@%LIx^1kr9m>YQ1*R?><>@vObu({$7L$;YxDWrE7HFa>1v5nkzw6gC@>$9Vq;y}mVsXbTDG@!vrebuUZk>dx_`sbD zD$1vytCl@!l_kmbT2i{?%6Ube&%$e{1lwM$KF=U1)QQ zEc0kEOuGUX2)j>uHm_J-xA0QW(_WSNh^E(AwYjv32QWn{4tIPxU3&X-d(H^-DcjuWExJCkBL-}NiVv2W`=IV~kw8=SFBy@b1^68ab``)tTO!y7*Z)T1JOZnbB(Q=|HYU#Bi0Uym5c#~=1JFymNmmIqMbGl0hxWfD{U_Xn( zsE+O9xS;ofgtJzU^MoxS|S}Nvwx$p;$C`qY;IRTn;4i{g{gnno>3|;SzPr@y= zS7_g$vbLC8^|53od;ICH=sK10xn8Q{bQKhQ;_q}K7oMJStyh0&S8aYxw*OFs-{Y?> z@efS;dF`I+&57cPXjO`weV8-SC9!^H;~qkEBFU64`NLe#T1#VoUT?J$K}GHvzgQVK ze_P?igQJ=vW|Xp2I)gf?#8z8LWDh)oZB1=f9S$rv5J_^Kc_Lm|mllbSjjJwa=Hl4{ zKY1s~$kbdSx3OZK?|Iq08mv0aD>(IP8eTE!1Nhsahnsw*hnim;N;ZS_+ss?WueEYG zou9YOO~;gg-!7PzZe=Asy#7QdgIQ1~fQcBfMWSUIH_Y`!*(^rnw(d=%a#xA4v?_m= z8T?dp)!Az&gSMK<8H==BaO)n>RUOU=h0z+lmoYX|D&u;q0v%lf4IY!#UDp$fP6-t#I|bjNZ{p zOZij2&NC4l}~82D^4-j}6YIyqY@5uQEVvmFS~}HE*Xjrl$6gD^xe5()C=H|L23)y^bzA z6%-a&1Xh@^H-2uby+onK#(odN5MH5bsgc%LxU;V>+8%o@*BBT*v668@e>713Uf~MH z%*|CTf2pyqCFTC7_|C~J{M!EUhUvT32LtLO!Ledk^KY^EO=axLX=}bHJ$S;OH2M^5LQW zr>;bXKDWQAPE{QZU@w2BOLm~KQQ&~(T^6g-D8_rclmiq~Ja#vp7)mFw^w*)KEv0fNfu# z!-#fPwk^-ACzfhekC$Iv$?L*iA*IhcMr&-4+#(Gp%%{Y_G7E922)Q7V?ETQ5#Ll!w zq={vU7mgXrW}8ZRZb`1wUvIRD>s+9!OCPnWG2BQG8>c~Fr6jOX z&+E?fP*HOVrrpQ$wjb#bFsOO^EyAP$4`cGUWB765DY7}+L&U?@qmpIxnhtvHgyanv zyaBhB+6+ya=VaCnoU)WOAunQXtDwDFqdxzhDj?yeK-1ZiUPISa?y;Rs%D=vRft%?e z|F{=X0nXxPf811-nh(?aM^%{hCAJ3a!N<6C2)+)o7UZmdar*XQ+MPd4fA#hY+M-uu zWN=;*LlbNL12@V$QZ8nFl>2-|=K;-$Nl;VJ8!oT50ho zLl_4RCDt7{(0p9y$Kqnp;Sjw*k~W5_p|B~TZr8T@z^VILG!)@mTx#?62)nP zaniCgX{g=Av%{s}J|ZjdjXM8BTW3N;CoL=A(0XOQDf$|IQ9pQH#UfAYWY>+t%cL3} z86)!+ri&c7%3W@aspI8Ap(T5&QvE3~}V`BmAENK*4h z3pJy#j!Jip=7BpG<2xe!ZWd}@6$`HNf>m58mislq`PiBZYV(#7AM z)9d_jkBSj^+|s5f^A^}>C%tr!wlufdm}Ru?+wJHgsY_a4Pl|E9K~z1VpLZ$S{LsHp z{=G!hjde<5o?VAo?3U|O@z}=do1YvfO+04=o(p4mtY9&u`06$j*{pz0x+dExH->rr zx`l2lmOPbvBo=0+Cq}bXsn0oZp}b^D;>q;YtrSLscUueR6g||*_TLeLBTh7<@88}L z?kQaGKfD%%Ds=xeKX*k7dA3P4i|JBD8~Q; z6%RB(<^^yS$pcPiKpGwfevmpFWITmV_n{KZ{7}FRsKfA&PpClb%5QLVF^1b9I6;1q z|BN4$j02p?Lix`GL55Fm5D)~;oB8;GMGwwQ{yBR44>th|on7G|xeb)inG;;e{SUC@ z0a;j~wEy6S09?a?6xAT5Gl-#sqI#gCoqvwz{zFTErkSO=E676)uGjuM8=;)pATSJE z+JJN=+~714N}`6~D zkZ$sy&kFRz!M{3w5(Kd;b*IqHct9;0fGW7Y;2On%+IxkeXMCP2Cz5KZ&NB{T-a^27PW#3Qw z(ZB1s!JyFXA-baF?zA}2coXLylP~wis``(F1lZG0dAf=`x$fy0lZ>l_q6h=alloMK z%+@co-;$oR{`6Emjk#(iqhDM9?M2$u+Lxq})1%%xjj}Go+OkVu`68Sy^K|uEDBZU( zkbLT1?H;Svf^FP8cv)Me@2R2qtw8HnJ|8YUjC>zmL^8#vrhZb%t#1rraU*9z_97!} zpgzoq&f>hKb#J(KMd*_=x*Hec#$EL|qfCW)Rq~`iSzH+nf6f>hmP4V)|I$+{R)*K& zK38sawru5_C5tHvpMuEGccaf+Yj^l7zt6KY$u*RU9eRJVaDM&r@sis~>sK-ZG<8qp z*{g@RbcBNwC5l?5rolk1*aKwU$x*&?^F~3ImsLXMYb4+SfsOk@Lx(hACB_nO+5v28v%M zqP^HWY1THQ8Nnk?f9l|Klfc($ZxZNUzDN#T2t6#(LmfyYu{G?opjfp18G&7*_JvZZ zw9y3T{ZsWm4c)khL@pMJ6O_pfA#M7DEkhsF>mD6Xvj4dQlHPs-2gf`X=#?D#d#)GL2F6>!i&M?vjf2 zn3IEbL=8V`(r!#Aci)kvl*91Sx#>FUENe9yRB~CgXa)1pYVGT-k*`K?jDp@w@lCAS zBo@bY@O3OL*PAk(Ek8)#61gnU!9Pzoq#)m93O`kuf3|8PZ|>8_ar#iL122EK*P|a; z|J%JDoOb`NVi9y&{jXhs!1XfPKKfVRI&f6j`>{7%0%go)V|`Z&M!WN$Y8_Y~j;zv) z`Y7Z$qkG5Pnk@nMdI0k&^6XnZ9-_~EJ1rL}4p23UN0;m9 zRZc6O?27(=S^nteosPVSx!J(E*~wRluUd4LzZJ^+VpIP!~D~;5*0g{4Ugj+dxw6(e~aZZOWxfL4NiziWDRAW^2J^N_E z)aQLuhM$x6Cx+sbW{F|k>otvtEAqX#(>0CCSDJH3(y^^a2UmNGpC_y1(etDpIen_- zwT8pl`y=PpXWe-!Fg93ze0s>?c<%PyyU*bBp28L0%U`KZvxj$uUb|d+^0X#dn%bR) zi&{>SEU(`rcr9Q&uno<##nX$45jgTF+vja*{pym}<|IkqT4Qg!O_^>%2EBmmB~hEc zvV_6SO}MLp(fz!o(}HZ@Z*kk@Sx_|!tH~_s4IMLQrqHsZx&JIjG+lc-m5rahBE6#J zWAPdr{1Hiab2wYLcbYH8j5&tsHg$QA-iRZK$t zJEzGpTf*s*q9u>1^W->KSk9jlPu6ha85(Z?n)!W+=uRKJBv)`-zb8{E+4~Hg&Y_KY znCUYwtP>;=B9d}Gl9{#3k3Uj0ah9j_Y$EdJ*5@ZGH5S9x4w%1Worsm!dVH^SaMR}P zhH!jh1DBI5W{%S)Hrv-@c9ajx^@u;3afc*)V)*07^}qi?SJz(LFyZAYwrS$lf=9~r zWZp((NRJ6bme(rrw@oK(q-Me#UP3POC z**8nF??byHcpV9u{VRl?Z8a!UTQ0V&gW>&V0z^u54RQTDjKYpbB{f`T3 z-<(RH1-CgCvYFkm{1LFx%2&d-u=GPGo_m8m_vNL<@zTp2bY1^MF-R8x80 zcT2)|y@U0&*E+rm7WdA4t*II8>rOapR@b^DRb8ib174i`{#_@X$_GnLj1oB`gzMBvI=c*ZpJ}(s|&k20#?YSltf4`U2tfOq{hkBc+(g|^`k}C02)GO~q&90~t zzwM8HxV$u;;v*((^-q6tuY0W|BrL6YJ*yn*ab0bs)QKQ^&6}igJ<}&k+?Z2pD}lRpsyoJ)^g6*{Mw1Q43kRl6&_CrEi*=a$mpw>AWmmc|vHqN%D+2!zXoW zFQ?Zb$uuRYEV#CxoB#IbLL5vZ3YPAY@9!JG%r1IW58JvY40b6tIrZ2jkE>phq|54xUeH`2 z5j$P1o}Orhc(B5IYaxq6OxQwEHR|n~=)ls&@xT4)*%mw8^7wj#7s0jp^R8Ozac1jU z1elJqgZ&#xGa^>oDjBVxim$=?hO#$TET)-Fi0N9rSH6}9HezY9;d7guWgF}oSCqXC zqm4UE^6uprsnFU~2hJ94hBjk;R;j)tAJ)yc&C!8w3*%WyqQVv|0I_{P8)wGz`UIEg zhfZ%v5X4H($@{tfNH0Q+5O3^#~bf&-t6D@Vfz%m{w;O* z9jtVy!K>H%d8nISY;_Ed*sGPJ3Nm_B2WdEFQm{8a72uP53l~00&BdT-X>P=S@#D~w z;8Q&q&1LSCcyJ01c821X^QT(W*<4sZKWV= zMENu*Zq%DeAvH|yfZQ4KZZDotb4-hruY}lNc@DDUnbrHBV{lMx&yH0#z|UtPKh?k` z_3*HSr^emur}bqPZ>(#&(6D)lv0?KCz_nU4F=w<1iW*;LXAC}?=*q=I*vb4DT9pxg znP3`FM)UA>0U_yQd9jCFq)u#lANBmy9>Z%tU=MJ=xGFk^9U@p?a^3dOSI1)taWBG6 zkN9x;dM~f)hO_!{Ih<#`-Omx4E@7SImnbQbZ#(qkl+u&eZ%4H-zi6DlG$ej2h4j%& zR-8`uV`iyis=B9{dnv|U)xt=vFnLsy7Dv0MS4=;SX?}#dP`@E|5vK5L_F36t^ig}EM=>qpq^F@p zo*9yOIEEa{-7mwGspUj|K9kx@p35p-y*j1@)tBTY%&#(We9N~?BtGJW0Ng4xRlD7ag@?^CoenG9{-~ zwyeay3g@Sy{KH8HA zX0^b3-qfBfy5@Jw0IyL7!S*JAe8T(Pyi#)Gn;x+DIR{2 zp5o4_U|snoE6@Gp7cv^kZml~nNFEBan5hz6Gi+7=Y|AyF9($jrOShjqnt-6*$l`X~ zheyg67|9tp?&wK0(F&2bzw|uQ8H_c}F4A&{(&V53U(saU$!kDMIS^`~ziOFj8X)tHDzwIVK^ zjA(pbBU`DWv1mZ?29AB&%c!B*`BpYl`;7{Xhge+Ksg7K`-+p>#TGVB3fM<%F-SXuz zZcBA~-SApG#P?FXbv9MzwOIKWmdLm`Dn(iIw3qoKv*$(MU1toEEls=E-F-dI*`k8w z^x*ahErvp-Am;D&>og%%15XrQ2xSQouOH{mqCR!|Wb`WHz-(3YXpcaU{FfFFjol1Bq{ETr4ca`5oYE-(8zAZCfem7L(rq}dC1MYz( zA`zZ=EK?WH+%)=uNZqqZmJTI+*O{Y^4hy~y((J;prr}&VCDy0hXvQfzsyCi;!`%o@ zIiy)BY2U@Fu*lZ%rz41;t;Z+{q!El}EubO@SKz~K691y4)N*hx?P*kflznCEv1%9V z8x`b{MCJx88DUN}O1x`S-hJ28P8!}A2q`iRn0|Ut>`uv*GZWOzcnjxCuamw#h9jPM zL`MFg|9v{*1a%X?H?fK>!F0!hN-o)y8GKwDHY-NFD$^&8j=1esz#MUX7BN}M}kdBiWG=qw81`*jHmvX!r#=I*$D=8_Kcqf3wLm=l{PN{4Plow?D7V8dK&XV`F&vAHLy z!yw=o-1$&ZnsJrsmf(e_wQVgH?+pB^awTzYhJ~c!>Ex!0pU@Z5)eXnDc_3&9H!UGo zQ7%5*J#eJZ6Mj|to|{jcR{5JF>cq;~k8X#@V=v&e&$ieG;*8xp{n?xFxTKhib>WnB zcwk*zjd)Noj^#{F(Z>mSDRnkX)nsxm%9wW(e(hUTBOkSkURL8|up3dXm^E)VxKmeE z|5y#}w^wEMFIY~B&^cOgxkmJP`HUy8$-_X)EV`KIiCuQfAxHTnFMil)dH#Sqk=){p zaqT7p_P`+R5f2YT&dRrZjbdk5$9)%)v`>z$P?7?#1q%P zK04A?$M?1EH0|nmX4zLn#bV{e+^5yv^(&RPKRgxCfpw3fv0t_}G06DwLA>d(tW(ud3=z(fm0dy- z%$(;`(r~U@GvNrH3OJ1spJ|5c63$ATNUo`R^99XwzFS_r1xy%K%-YEps=Hdr2|Hwn zQVG1QxHwyc=BoHN2Wc!0mmkT~ZcOtCT;BQQ1}fe*0iPMQ8?EU4|XTLL)IZ@ zQx|5blglEdT6`W;hsAJJ7{*<}h zGi#oH)oc|%F{}G%a$h%&Gv?XHhjWBV?US2^I4`~wU*r!DluXOMZ;??ZUydX6Fba?5 z8-`dWne=Nytk}@cJ;FW~iSnBFi*X&S4mxwi%!itt|1RW6vg~ovgoMOw{6pQbZ3ziX zVJV)4Fj<)M!1_I|i&>#H@ix3+f>Q_l{Y<|`y^dlajT7hU=Kb;UUEe5EqQCfgj~nNM zPTb1<-kKXBdU@c?HvQz$&Tli5t>3X`Fix;De?0UAw`Sv@nONXp{k`{nm5revF%+-8 zeP59^!+29Cch+v==EU%*9*7i{goJ+2v&UKr^>__9nFlj_=k^aV+Q0}8c<3xy{}7gZ?gf)m*S%EB|$*nO7X$_oTs!fnD7q-U?c zP!yaZG?Kn)Bf*+f8-&R+EUYK@z&5dZ^U>Dh!$8vlEz=Z}4`h$5xw zyxskQ<{MnIbL0Ms^5!UU6YMBgbJ>IWt=XclWU|DGw$r`Jj-Jm4Y<(i^3;I_YY^wuC zNAeQNhE5va?3^xI*cPNsL#&R~JBd}EHcNQ_qFTzS42J8O<^J`PFz4aAquXiU`wCxV z`+Aqx*?(W!^r?P3i%3qVU*uMOGgxzK$!}QWIJ2jU*x`;WmKWT29UeuQgk_MPd_x+; zWKJi#bjVp_P(g{npF%1~J}&bXcIS(%yPiz3+^Rvm6X6cyky)o3s?@2zOCOCDo=H?D z4?a7U+bi%*x|o<$72~#f*fDw0i0C`h!+ejdCME+uz%ShJ{NcW}y^O~+y17zdn7{C` zank;B@|CZXv^eP+T2~kZ>k`I23clQ!@9?gcjIXe*@zJfU6ew;?kWrz%x`+gC(Otl~;rznzn9?hPX zQ}>??>Ee6MZWvs`vX~~1(TXKj>zRTpgs)k^8eApsnTU(KAheQy%1bhGvDcENBTy^! zBh4hfs;ERyq;s27+_;#d3WeQmCDylTL*0j$E*&2z7^!(j|CT%_+Cp6XX*PFxz*?|W z6b(Kn&?dGAPt!_eYbT*}XdTgA_VD@q$ml|0T8 z*P6iqGbYPZW;b(e)xD#jm6y^`ZxBxw(?K{>nw2#ZN2~l@m#!3}qh6qP>htl7h?KHi zeo5SO`cf_qXL~7gGRvYwK2SdvA+Pb6etgHqW+Q+;eNg{vR5wolRj$$?n}!0nZ&w|+ z);3l@d4B)YKBOt(5d7gh*I1-LY7O|$a*kSk;40QcH$9zTf>(V8f5*gj_0Z^zckhQU z7wXSV&(=@`&#u*fH7@oYP@zt0m`%F&WV6Zss9o`sils_@-!&iD(U-42e+Wpgi_SZH zEva-;PWOATk=EAWV3|lxir=tmMOXQGoZC3fw=a!;yk*RK-JUsYzDW4ODWh9s_z^6r z7oF(?u4^n@&n65M?_hj93wIVEI3!GdSAZ%oZIPfw!LC1a{7=j@q0Q}f}5u`cpPRz z@XyP$g(!wUKAB-YLwVfEx#JYg70vUy?90lr53eL?I4_iXY=2qFq~SJXa`2x2B6AO~ z$|?UF{8O0vrO|}a`Fs{^+{;D@KH8n!$qMR>AjU zu=yC$0QGp>3bB0Va*^nvtU7!SDqlJ4^_!lws(nyBj4c93q=NxpW_lO&$IB#e1^ew(UDQwk?xShD+BJU z?)?Pcu53nHZC5)yU!S}Y70aYGW(zF5!pmyYO53*6#lu5A@EKdHt{ST2Iq#Dk&-U;GcYTcPPU0mRn>*XyX?@f(ebDeFt(5^;sOF@euP1z=TJj69i(D33U zd1gQj>B)O-bRl*@KMKD2x_*DJW#v)x*+M>nWq|C4r%826&;6~+Uh^wcb|tyXHBw)% z`o37djiYK@mam6PE{jtyl)N4)Zjm|e;f}{z!ZRpleY4`w1DaPB_bGxM{0gsRkYU}u z^pu!2pNN%{Mg8(4E|WgC=N9kJFYDQxXmELuHMkmzyY#Nj7#NoLdP#kxm4EnpX{MtD z*XPj~+aCJbbr=(@0R4@+L6A%(9!p5Q0xm zM3|?|_7+Q@G%Ztb?t13`-bha^L*}8Bx@rGPp!<_`tZwi7>;oAqILl#AY%VnrXBBJ= zOqrbcOMX&LYfD96Q+lwZSIz1$o4I=VMo4)MPjc3D&*XB+lk5MYI$72Zug_3lYOZOI zHTV5WGU9X4p-}ox&Q+00j9Ixb`zJ<1LLXu-3L53iIF$y@oF(E^xhVPQ;K9qjyr(FR zrp#EmozE*J=nt(bH>-NOk{g{nNHos*LjdR0!Rn*x`a^?Kg2kOR&FwR=?)W^#x0GX# z1mf~T;>qS2RPB{S7_48ZHI*roj``1ol;Rq<$W^FN-x_c~ojyBx`|&EA+uZGL&%$i& z>`bw}gNTUU4gc*t{lhcEcKRm^1c?r5zxt~B!TM0GG8S8e9c7fS?mKb2cUw2lk-B{v z!K-|4OE+0LUwMt)rt?zK25GZYwSVVIaql~^`)6!8=)dt7=Wg9AIR&%byrx1NDfXLd zHV{Ag(@Et2?KK;^OO28xD8%9noMBj{?M*l|U5uSvPBX9?I{+sDQ%es{3Dh5wr=dH0 z6=Pe(ubn}iLO_`Yx>F7aO$1TEze0hl4j(d_1oYiM0MrPv=(mj$P%DJ?Z(9Lwd`KT0 z4S?g%lmfgw=zcjr3Ee-o6d>6II5}`iXlm}I^S6DW!driWiZp}@$c+TF zBF6*4Mcmwc{IGqIkbI!t;m>Y7!b1E4AP5MAQlmkU$ntUT@Odxc=pH{m2}ceoC9Py> z2XZr@NCsiTpq{(Dor%4Z6YvMxOa3oUfL!-z<4ehFBAnbTO%ToiGvxF}ktHQ>2SurZ zs*zC3uH1Isr6U8%k;{01Lc@^j5!4I`>5m6Nvw*NXRNDxIA409WoJKvo7gat`!U%eJ zFY)MpM86Uba{PkABM2u;FHorx#R6FbAl=f*_;n0fnn@Ut@?@X7m0gtDcJrMa;Sayo%L9q29g z7RI(9niSB*hb~4)xSAH02pdx#=$i(0zkj}MNAQ4GyEV6=c63IgqsYg%!{xoRAHoev zs3I!L0Q-erbys6hyVcASZR$f+cy7^l~c~QpB)WII? zIgs#yALdWK?Q}sVtU&xx9}Vh+{uTXECk`|qYfhuk_*255GS<)_dszs<{)B~gmd-9a zasn}|AU6Vvbx?YE;3MnmWa;9mh$@^eiL9Hxk9qsw!3T2m|D<&%xE|Rxuk;B6KLQ+M;Sx_BRlS83xwl-w(NS{ zLY%O1b^!$qpt%M4TBFnbvlAb(nkW#=E(mmlicTQW+6D0f5VB_F&t7~GX!r9%8wFAx zk(CiaPc$&}PGq&gUj+*>b3X-WPlBPL7umVm!a=z{kgS7iFCBZkf-)yNh@*j#nC@~P z4GgW`yE(7WF$GHupWyDNuxDHdzB~W-zyUsdg1=eikelUiN&895u84jDep%r53^1u;eFCkua$0kH)*G()f2I|U)w z-%tsXMeV_h2T+1O75AV9I`e@nHT!V}b(;7<`m6m7AlVTgsG+#80m+u#d5k^;4U zS&d()hw$PP{@wBe;q%u-@_^Cy5(xvHbkQgYHx&KYPKw_ZM%5NF~Ui`>BH@^}I;q%u-^8UKy@B%{qj7X?6KX8=aM#1if2G9M%`ltqt@84~^*u|RU%HSG5c4v7(EgQLF(lH#rfzL&t?Ydz?X z?iC^rCqU`XWC)26WzGM51qfS#;JZ2vIvkP*%790QL*m%A+|j7xfr5PaQT8=@e~3%F zruAOxey_ZsKMEL$HU#glD$Flk`B8Q{IvmOKeM=1}ZU?YJndd+I12{BsckS~%V{;>) z*tgUmk>cOAnD^56r>f2FuF4AqZtWT4PiH5xD?iHoM#mT8I?C=wheKRP+1%)GXm0LW z+IxnE_=K{I(fdPlbJs53OC7Z2{nf_@l2z`Z4&?Ou(**|Emmg(j{~R7X1BOSL*n8lR zm{7L$o(AL-`=&E^6EvSuM(~~|pb5Qe2=68F?^GM`(!J{o005$Y{{ilFhLRHfvW$ZU zNLVPtdJk%lv{1(No(4!vXa zMkK^#lzELlKBRQjC%#w>aR#C()Biw=h-_pb4}heC)~D9aPQKay2D zEB0Oj|4yd?X>s?^2jYSMoIZ%}D2o<-bcpR}X6^1$4T4S~_`cO2)Qp4R`<5G!R~CZr zQwxzO@eA%u>OIsUzuCX~3_(rfJ=6&xSG3=Y580O=&A9!842bFbty}Oe2)=Jd132{A z?pn8K(gO|96Z@^v9ju`0%g`#fm%_i(X27$6YkNllV){LaJDvIWTeqMAnu+_ZThIVa z#r@VTXn@$VYu)Z0ADWE&tx@mKzxrYRRfdqE#yuDcdUVA`3 z1BA)Co1}p4SHlF=K>%eV{?QRgQvhWj{sDxTgt86)00J%upl)mb07Ar~jJQ955W%|! z++OT|uNVCB9N-Izf?o+h?<0V^*xdy}tEm9W07Stc5>Un;3I~ zfFyc%rlB<;F%j6kJl#vt?>G59&w`ik&3^${wudZqk|7LGcHW-1K)grUd1wt_X@?qi zcltdI$XD%d^?MqSuiD+~_cTDV+%?YjP>Iw8_iy$)IY+?wtbb%5L8t4FW&xC8w*x`q zwflYVK#&OSvV8}F#ANpi-+@4L3T1KaK%iA%*VfvLE&9eSZE0qPa6*8aX2_ES*u5}> zhl!1`Ed$Ka72E=w!fhA;b}&Ak0vI?t+cMU5%5a zvo*L$WB^&x!L=&`%)-;b0$~Rp0WJ2X3@~RKV`mEn7`QdDXMow;AsApT?%*#M3nv8l z+sxk83H%$}hJv1!9^hXHH|S{ua$KORgV);F1AsHa)^g`hpmoC#j;_Ww3@~%({tW?M z;OGj<%>&N{;4BJIlwg2KGQgx5VA2dQ83q_Ad~pGlgGPY?rU-6m8DPr5t%d=n3IgUC zfGz^lKqfl5$N5<{E=cOZ-irFY!ve7B!CdW35l+s) zlLOFzWabW|059MGeZW(IFQ5^i3%J7ovt)o-F~F=DV1NL?et2CMYQ{=9 zn;`65z@`hND`o5;x65SYPvCI@RSIE+Nx&pw(l8mAEbIbI4kiy%fGNV1V9GERm?}&S zrUBE0U4&`DbYXfhV;D;Qfa@^$4o(n?XxPC_b_57B-JM!6#ExutL%wl)q zz${@_Fl(3%%ob(`vxhnSoO(NdA!**7TrkHSe(%7XV9wAK+L>@Lmz@~~O*WV-nuuU- zFn5>-%oAj`kw)zBgM$aG+b~%hV{>N)Fpp*J?OY@!?LEL}!U0`GbMS(FNf0bK++5%f zz-_1l$diBoU)|1fgM>g%T3|Nm$|y;yu`4Mn+uPZ5b8%=O%w3@m3MTJjY-4F60qT?^ zfa(F$bV1l^Gl1K=UD-kJgz#~)bO8Q4VD{|_2XZ+<^Q}S}kSKBfRjvkMaJr11m&G+k z(SGPGY4FM##SGK=XAa65eYsqOx4aJME&88gedc=d6hEnA$QjteTq`fH%3O8zrI%EZ z9fY0UcV8yBUzyXfi=(S&+f3;#b4ccNrq^D|+&o=TVVSYzL^!q}9K=Z2UpaYm`itn& zim`gx(j{j>y4V$UZ^32QJw`*VZP>zxRj#dABU;yWQs2iDW7D6?&&W1j`v%w3KE4)O zzd+`CEjlYs=h`?$j4#ReRjx?-nAMb$sBkx$>8UW!j%Iz)?4{mM-NrO#+!=JnyxiJE zp}x1-*Jf`XCcHj(rBhL8I8s%!=zY#onaB64wu13RpQ0@u5@Yd*&go?m_itY}Ke>3} zJEXZ34P`TmHe}pxnB3&fS{e!Qi59C$4k&W59k_Ik=!5s$731NXos5H4)tW>3L(IlB zTh5*7h6_JjdMVX&6*tm3hnNkl;Wo}ET_Q{{1&c$DAe6?{$P=4Vvr@9yPAXx@5MjB> zUO(1|t!-Iu84+!Z<=U;m^s2d3M!uDqLqY$p%V`$1H@3G%>A0it7e8C6q+GyNr4@|i ze)YV=@@Wn6@b~vQ&QYv)X2)($##O_&4^9nUQ}J5Xt95P=KO|aDaaB>ibC|ID`3uUeq$drADgz&j zM}s&lgE-bijBivszo4`hHa--hGH^$B0DhUp=EESqLEEPwjtSQnl#dgiJlaA&7pw}i zDa=1w`ueKzq3WZh^JBpry#xkrUxPWOz(1=#Q>?M7bY|aP&=h+ZN11ni7x`G%UbbNq zm~eDLH#gS(hm1LP4sbWH#M|Ns9k z4=zDsfLP9pJQG8$se9EVuq~K@?b;0JMqtm~IgD|(G`9n3%#aEWayx|?+X7w3+1L*3 z^T_RgXIuWcaqX&4yI|Cw37|HvV7LFjpfCC_l&YgC(3P`8`YWg>d6}kbvt5^wuBOElvYUk%3#Y*ZgR4esAlq+qR&W?J8npi-& zLg`V+=>oK=Kh!8BHM_(?>Xao?n+9|CFEuM@h5+>n=;ME(VnLkvscIqhD@Z&4Q!Q&( zwLYpSVAUu0LYw1vAmYuMYW z*b6IhC?ib4SNdBGiyN3qf2U#rg92T}LO)yhD-}xs=*{RVmhHtlJCKi}`a8w2)T8BF zuR_i%QOGcnrqh(>#aos1V<&QIV1?b1+V-7n7qTqVKP@pfdEe8X?v>!V3!*0gzRR`q|_dlRr4 zyY6v#-RE?g=XoSen&*+|q(LZBQm7mW86p)j#4RKV8Ot1!gk&z`ks^dpgm5I4Idcf# z+V?pPp2z#VzxVh3uWz`nx92&|-uIr?T6^ua)?Rz<`|N567Dy~o%W~g+e(HGgXv*>UaByB zriTCa)cbM)-}9y(ERcM-?fcJ%o(pfCkKa3KR?c`wykOj1{qcL?-PdTmC<{955gxB{r6$3>veHs2%+OjZTSH89(4hg( zl~ONf(2B3U3U8~b&>6+5eC15d^rkw$o-vbF$DUUnI6!;omg}0fZV;WjW{d&L{$oY_ zo7Fq|r_L`Ar=2KH%-uCZ>6sC{sY=IFKPumQmQJNhac7#9nx=Yc^o&ZLp7-sDPK89v z%Obxg159@reQcWXu_QIgYEh+N<;vaiZTAPB?zd&&mL8D+-_x8z$JBIfgAT&AE0lKFW5F8rn@? z9bZUlPq}z(|D{5)rQ%m5E|k@&e7hV~7;!bDa#XzgqU+TOJv=_WU7;}E{8+|Z>(;e% ztUnIuqj5cUWZE>rz>OBy-7YN%5?qmfx8g>AQnN?sf^RKP>f=iyC2D4CHs=X+(xy@K zeg(WN%o_IiQ+~b2~(u6o9%^*#_MQsV7Ogm8-8M~b@ z%&eg2-X2|<b_tbZNU4@Gq1q<81m5RcoiM_#bIm zq0_A00%0sf#>pY{ZvAHCbYz6yk50=I-yVyOkal;O(4qG4RrcSNHaa{0L226~12gmO zh92nOmA25M+C^!5j`SHB+W#*~n|Mb4h0?|oy?>{(k>k4PZ010?-Gu)?rL$v>-BtZJ zIy>^A(aF0n%D0~U5LhzcXToC%7Z;zC+)<*uJQ`Th;nmiz}>8J*2rD)qzh{mg5vgTFsMp?aWZ#sSw)SvrFQ z?)EiJIC#v2_wdf_S&QEU+kUE>G-qf+%>6kntZIt}F_U34f>+EhzwyFPJSXY-cxX*bd!;bY1blCK1`hvts z-;(oRetxrSmU+W5C8v|hZR*BM@6Ych;qRP%$x&W&mc5EEhjKCfQ>tTB zFXSv&Ids-F_{Tkk26pR=u-q1-bwicEedzTq-0SoP&+&2nF9k`=k2Q|$G1&OJ;z6U- zn5{>Sm@KZ@^iDTO?!#uuT{?{lh8NGp^$fdlcK?~aD!-O{?i$b_SDNggF}OI!ex=ig zgJKf~-}LFZFiLaZt}T;)Onz2-E}>ca$0_!LoyHgE4X>Bg-v4AG4jWaq z_j{;TjUVe~mwh`u%k9!U?HOWn&QC|)85^47wdmQRF;Q=%eni{dEga|DXyvxebHa;~ z%+Ld6Nb5e+`i8vxixNj zN%+Aoq$Brq|62PZ1xzj z!j$1uwLc@@j-(!WM(T>{lX~R37GZ}@Q-O)lX&2z_rUKcZcOFwXGubYt!awb$+m9*8 zPC5)t1mXS}&!@WVod3`6mGP`gsCdb7*I!N_$i8^?-xRDJIZXQFse>J|nw32&H9T=Z z8})ArRv2i}MZpdV8SX#S?+*%=?1_I@vQ~KVE;@Z6rkL>L=wF^b;Lg0OnkAB>eU|=7 z&AQ+u{|8&+-_&ftsR-N}U#dLqa^qsCM>n!Hj;u2}S@Ytu-l^M+n!PI#8j5OGzEJNi zQM2>so(^8+6&m|6zwkrAp^2N{rLJ*_{WP=Sq1($}11!GWKbnPV_T_{xb8oF$y5rD= z#q+h7-MH53EA{x18LOHTxTWo?+@-w9Z`YO7j8rL_`to#d?l-&aIdh!)$lP~{?UN+; zf|JftDLA>;_gp<%EDC|AlRZ|xDVq2tq9`o?xyl*$l^1$XJ|&f>!06eKyBZ_JrVUB{ z)u`{u=-CIsE}Op0pA|RhTWsN~FE`$v3GRV!ao>CLzTWqUXQ>h2U!*L#Gw7J<)p3IR z-?q;(*{~+-hnvfe@IIF=R93E`o$A*tob5>;Qr*0++nDT1Ny(di8+rxUQ59)}C`)SD zj-=}=5>xWj@2OkvSeL6*{yc+P%jWu;Ynd46d#$o;>W133Ikb`!rV>ccw9>*2GN(~} z%w#{C)e(i7IoS}MWsni2nK;wn&V&gC9;X)0gLCrBRktm+AJ}g}WdAIuvdLP};<8=M6}H+f-T-AoETx+$^Eot*Ld0bohuK zXWwb5Dg0=9F{FFn@Nk>%Up!}Mi=Q-am9HNKj~CoNxoWad&%QnJ!8pCf3-zpyZQ`Ha z+|EP?iu5edY0&uc6~tvpio3QGjW5YtX;&CI$h;**EDH|zt-EKH_7dPM!4cQ z|4Pr25&pM&mW)R}q>uIw8P5&JB|4D#bkVb2^(ARXbV|D}CGfRxf!phmZwCH$y-V~l zsYjmUvv#^LbVGeb-dsTHlfK*WCS#B^`R=MONt%4xpLf-t?QI#FW54a~+TkVNvR#yrP_>X9SK|N7<4JU>@&@{9Ivs2qRaI|)PPx`_6n!@Yb% zL;fP#iNo_BMLYh8?Z1`n7#h%3ws-Ys|EIEjGncqMA9&?92$D2pBMq)9iyMBeGD+W6 z5UO*>EJ#-Jsn^f5AI9IAet+2Eo3F->f3*3;)kpK@-XDDUK@ViXI$aTPtRUI_v|AVacst}lh<6z^I|Xd9{A{J&4ZGeS^IzWJWx0J zc4RPr*VNH<2M2g``?5mMc@rSHI^i^n2b$zh@Qkdrl6V zYbxF8_jE_U=Z{Xm=Z%l=9p&Hde{G%JSN@pJrq3Y{BgZM7?(^lx=0#$=7d;EAdBc4e z^Qil&UBS0)5|U3ZnEiIE^z2ygAvHB`s^6Nsyt*H%VR(;^^VbY8oU55b^lnjYEFbk_Nc`NdYti|SrSD@ zu`(mlZPUk8l`jh$y=CwGx8m=qwqBM&Ny=ADrGCuTi@2+Ja9pNV-OWSQ3rCMy7Md2k z%%RL;S&xxTul7rgIX2#X>97lJCZ)}(UoWJ+8&W5A=g5%B2XB-u7+V#ie9yCZT4Sk{ zM!>~GMc5x`ypx zc_TU~rs!uNck_y8WxT-_k&U_^CRQss)@Do|u_{7JUT%Xz>avoaAJ>+LpW2|c@kB$C z_}0Bm{pP>;@}K!V=X@@%-;$v3p&&_v|!-JFW?n?hP?_7lS(EZ)63KX)H z6BGZmhiZ5Jk7DE)k!2n7tV_D9Tac+kWLlR!Mu+VC%N~Q&CH30dka|SU5!uAZJK~!B z2ieyl6GeKaU8a$5W{*MSDYkF_bd`Nw|DKT;C?RI6m;3XkwT?H>WTI&$JOyrX2pbI0&n9+rYS;E2F zPpz0}GRFDE#G47Df$Y2;o%%75*?D@lLn!?A@nOF4r@Q}duHzo%UzqETs5-42T+p7k zC$Yx%B&PCru`Z1A>mt?%c@GH~ig7{{@p3%g@}H3~%r0O|B1VV(@e~UQ^zSTn49e^x z&2c;TKeN=`Fub;_rM@KO>eMX*6(4?3+q%Sfg5AdXe7G5t`$pWz=6z;t#KYH`_vP0} z`0_2=zB~^ucfDB?a=4|~b=cN9AI-isUih+f#p{cEitM)M7At&6+IYX{-RPA~4UKu) z53ZWYUcIY$vMS>7_3h?AO~%kAA!`F0#5YF?_y%PhQs7t3P}V-X9trIkxQaR-ccG3tAMtzYNK4oUhwg z=F@p>?!90BC@|d@u~Z{<9hR#IJfPi*^`v*-E_S*wizaGxp()e zS=#Hz{oi$KX`LzG@Ai@U^aqDzK76fBeeQaCakR}d&sUopGZ*jpexvu1RQEo=-dL#3 z_n#=QR53w^rJQ+s#R-J%Vb%<|Q>_qne}Z#i6{N3(kP49r#T;Uk_C4NKJg0!ss~N_R7M9e54g z>tzix?F9xrsx|{wD4t?xI?&XJ#HoAdPfQfkRd)5^rcc%Dr@M5R8dN_qJFpXf&8T%9 zB?DT0>W}6{x|g0A2f5uG4ydxT!K$_GgzCmu<=X zX<-Y+KR7xiM6F9brt`~Z@4$=aw;viJzimp5%ek-@uF81hBBEL~+hgbjX5niH3 z?GbjN>xBq%JOM+R*r9(5-(w_vj&~gF$cKR!w=b~%cp5Q_7M3Vt`F0N=j5FZh9 z6M-3=EK~*BG8eyZ;&@e5kDRIka$*d&#KdWAT&nE z@#BE4$ZcB&dc=b86LBLFxI0Y?rt5Z1{<~>GV!1^z;dV#~n;DE6{%6C0xeV6c-9K$g zT=AC0U)0#7r?#pOzgsvi?{~`2aM1j{i|NrRmfv!$E=*AwHBoMv-joS9&vn-`J5*_V zbb0FBRd4!y*%AD;@$S_J1_w@U9oaH>U}R0z*6#zY-d}os`BaJ7$rtm6y>87NcHqU! z=PlgGZ-sM$4NF9O61~$C_gyF%emDP@#JCr`CPqlU$b2yC(}d|UGYh(J{_LLdv%Xl* zW3y82?4&wNQ~Sr8-{m;WmpAE^GEc=*_TjV|1w7?Z{IxBpVBz5dAKs)*l$bXAdA8+2 zhgX}Azp;s3tC!j`&lf{8Y_@$puyRhU-~8{|zBB5Me!o8IK*jrz?($=QjXQbn!-gBl z2fpR~&_D6`8Po>qhb&9^ga2YW>{5b?NoN!F6ikzZ7a@b*@9xR?#qj4u~;MO zzCbnBs0WOpT8uRN>u20#DY2|1$5Y;t^7=(^$Dk^`!crnn!_;D+M6O`a4=q^fm`y3s zN#e94$LuL5Z}9o7ffCVztJ$2m)mq~(8?d7_Jud9NQo3@x*20MOs^X#JLbgAMv{>X8 zptU=$Y0+l!>sc*cJq?4b55C`}euHrJ!iW#fP(HJ>vS#yxy;A zPm5ue!jq!ft-Cy&zkjj)TDsM1du6)O)1uwSrpviItr-{QdSm~JeM7cO&S!Py{JQFT*<=0Y?vOoZ@FHnv*?qyX09m<=$Y2Yl>VW+X^Ar?qM zV^+z;nvVyLpei4@3D`XT1 zDimkDSMH2&R3X+W@ktS-L+(2gK}6o_M?P+NH-mf#EKYcli@fuK@g1T6h`cJ)kth-( zT(R69?>9Rz^-y4;(sDsX=!Ece5nNq;KfnLLEOSk&%g^8vG7*{Nz}zooq|^9uD1tmA?i=P3N(M!|Wk=oyx|IP~r8w|x`J z?9YC?Gi6UMq5ct;jy;_a7L4x@jz12^ARmNP}z3wJ3JZQAoq!F29HZh#2o1ibAjYGQKCLF43ix;5ii#; zyhE~Gb}`J&*LLxby`if4Q~SX9aWgwRZ|_ZbHKS{9cT+G4c&H3J15PYTr>XTtaW96LT3^7%&g%O>PqykgmD(Vv%#jF z=EAC7DbwLq6fF_N0Fh)q3`GbABGw};*^aHl7*U$k$A=wMBFlzQfv~NJIwX&$kizGL zg$Z>?9c;(2G|7vWrHfl9Yom$O$q(fHg5(qoFMWB97~mNsy20bxd4Z?nb``P67>f8# zjK?<^qE7-1GIS06euKwZ^g0O}e+)`uDlzxAf@ee}GMBZ8Hw0s!hD{5Ziuc;0k^fO< zGTn9_$?4mKPK-{BNni|WQr4BS9Sa_vIGxb<^Ya?uIYb1#eNjl)2B!ZL^k~)n z4SLZVEV@9CcDBtwK`&ZOe}rBb5!4m>u41JV`hV#a=>XqZ^acx?PU55C{#WqP7bB!) zC-KSU#(x4|#MgfWU+BH*1RojikF4YE7dBw9pM_UI@CY<^J0V09{cj+W<7{TSJ3&N+ z^^YKmaQYL7OaN3@{%~Y&xVOuIP6~VXALt!6(1I|l=d5uF(_+Ut`Qk-PtKex-n-G2&|PJACl*6SczbyV{Dwt8 z{K53-gg-1-Vm~k-c9{>{A^jZ_5eIb62Rdv2X+A`+9RMQo_$vjKSL<$?D_9)Q;C4KVX9DLaB?XGqyK zEPF@FoUlxtl-+rS<)^WXRN}oPWdZGF&aVM#Pj)Ti-IfRX0G2~XS?y6#yN)t?99B5~ zMpTLElPOz|kN;2>cAO0~Q$_}6+HJsr!%A>q(m7McyN8hdy^Qw^A9s{7op-eBEE|rn zbe56Mg+O7S!hs3EOgpBG^w|j%DI*=g-^-YRJIf5PlH~&m_*e7*il#^aSj+<8AI97( zd<>PrIPhskUg%6G`BP3>=80 zjE>f4L1vbzKY*>GRtiAX#vl~{Sx?Oc0FHYa#gNE-^SS{%+v|=^4Oh*U0B*`o51f;t zv9~DTrb!RQrj0y41ywuaRWU8do(kZ-*MI|%;oPVV5RvYPX|EN_!~qr-492Fei>8YM zch{t02!Z9;bP6)}4phUY<(gvv6!%48I>WY61K?vpG&cPpV}j|Lf{_Tp*yV>fz&#}$ zicKq{#v=r$CSlt4h-Mf-=0Rz71m3b$4nTE(8iByv7dz9lh{C1`>2CPM%wilukQvnv zn_epzf!!prfZn8b6er|e8K!e4a;$I$o$WRQ=uaMpX-$8BV}Od0<75D~kSV+}{2mLy zSJ_YspniBAwqIT5hyR{cJAo~`*{#Bs(~Ye$t%;-54-CgqY@?Jh{j31fwyD|Pi04Uj z#44l5MMZ$cg;fOD9sn^B2XK^ZPg#AEF2VG8MYbeBeCQh-fGPw0w{HC@?C>+xFK0tV zL^-M7*S|YJS|myPD%{3}vNQA@*1UP4nF6|5?F=Hvr1j_c*dSORZRY^w%$4ZGy`zI4IGV_CTjM=X*qifF_qOzMc&Lk_z^J`r3om_q(A*+(qDTYq`y=$JlqQX zhM-`2>0@!;##z#i8T(Kqkk-GX;8EX9$CVz!X7d%mJtZf03!+8FESf0MqMcGYy%wk4 zYw3;)HWclml(=#%0zf+3PJxYKzMh1xu&;9zbn9Q`KG;Rr*G~$jJoNnRdKWR@aiQvo z1n@1Su3XxI>`VIEBf1z#1zN^n(w-iBC z3`qk#_1ua?*~28O-zCdiw3Hi9mZ8^DTn9=1=O>E5-L3|!%wml8;9?`Q^Y^UfyDGnx z=A_@EX%g_(%n!MPa7s%6)v_(cKYkc4%0FiL$_g7B@)<7pJ`=ERJO4aZg(2n@Mop^1 zA^)Cr-zzM&O+P`M0cKfDcnj$T#M(JpDyAdd)6rA?r+& z{^u+_3Kmu-%#5--X^5wxTY+e#{eR2)W9fm8Qh}WhlV#@ZDobF;S=ew?G>x6v6bakJ z;s~l`O$s-jM?oyRR=Icv#UGU3i)06|dChS@SOP81jD|`Uy@tZdOR1KOlwR>DE#=sn zy}~OX$;(sQ?KseLs8`bAS3w}>!(^wD%G;?HI>kCZp5h+G6hz_*G9HiSutuF-*Lkg_UQp1rNpC8YJ1^?2I^Z zB(Ep;-lH6;IX$8xTk^DsO>1M*Bo4GlrW~LCf`ZBF{Hlc-6#s$5nv3rw zAXgHbvMIqCHfgGdO_6`MSR_;2rAQ@QhD|8%ctu`7#8zWCim)_AChZ%6X#>OvCFoET zXS5`agEL-@k`>cLYHH3v>8IZhSB@xcDr}lZno0|sP9&00T8u0n{!ttjI6@Fen!8X4 z!fON}P#>uS;C~85ZlFG6Mljv{i!N!F5Ssf08Wu%xvnAd9t1eZM3}_qOF2q$RO#cVa zFpyn8tM?m_U3=_;lL$Xv{QXZQ{}RDkOGSpRBI0zUyJD5YW$2nc6KRa;?=#)iA?c2i z?R80#mDP)sfR-z}Cg@5Fp<2a)q&G^=*I7U)w)6ym`!`cv6ctF!n>q&pA{QjC+}>SS z`HKfgLiI|I?hGw1JW~LBIRA9J1Ot5BYc{RS{oMM5%vJW`=}qh$iNL<|X9#H<-U|9s ziXJ}`ggu4!fqa%x=5}3SPkj`i6x13NB!pRG1-Q?Z{CY+>>v0#@v^!Vk>j@!U>RKR2 zv8vzvDZ-v`Wu%EUWS-N;thAW!?Ea6?T=r%$>>$jCio;gg^!*?<%^IpNsObIvtUdT~ zyjTCy0@XAY)&J4zFUu&ddCu~-8^{yFDrlkRsAm!$5jC-ad`|A_?VU}K4Q=&Tv|UE3 zs!F=PUwL|!4BDsph70UFo}kKz5l1Q9Uc*KPHc<;3T*QI1lgnQ{t08#=WXeez{j$X> zqCD4FT9_AhibisUxZ|1|av<%!kT!f<@qIt&>s0yu9MggB1P(l-ec!X$xLgSOn3t8& zzN{dNGsjSUi=;|4>Ze1(yRZF`lsn^|-`*W~L$LUC+@d1&NpY59V9V>G>Pan=QP@@dQCNR{MZ;JW*bUeHO!Y101*HiXaw zkZ1bIKlmNf+1CP0B^=ju*X)3O1jTjBS>49(n5-MpaF|-r&|O?q1<4w{=;J2^B(n(8 z!#ER)U1uVT1J`Kodz}tOLvtfWyn6LxP0?hbLgza8jXr1BF$ywG3N@o)Naxgy21Qvv z!bPIld;6V5kK}59-H1~|km>I6-nr*rnDcM^yq@Cr)K71_)iI8O9Q2}m8nW84S$!g2 z0#?&Rs)?4s0gBs0e`#B7M-$|^_h8lV7@IKsZ6go&p-01)jxN63q_{fzL^O-Ic@_k6 z{PaECIzYe8rj5A2T5q&-)k`+rjoa2*)6wJy8}!99`}~~Q!OhbE2Ew(cOHrl>d;K8` zIaFZp`E!vW$O0JqOrE~meecsIlocY-LxG;vef3kxj_F0~xTStqtgcu`w?kOaZO*V2 zDip#-_^!{DiTeP0?;2(mxz`)_HvTZ zc|xf{_8E+3#6=}40t1G7s@cNrNE)+5gRz%4HD^#K5>gNDBifUYs>FwJ(_#*)V1s@r zB2ZB)p4q7ZiD{B3xX$C|^rLwsRP`{xr7wY7qMQ4YgjM&>YN4Q^u$}|CSar{%dsy|& zl?cc*Fc8}^X989&v6w}1)6*2=UTjSUI9gc8foi5IYX7Q}BT=0ilB$=m>H&*Hio2p2 zt3Ct($%ysHwcbnVMQ?Evz-;ljnON9D3Y9~jv0xKZsEmbVFIZ*NOH6lO78ZUR{+LBu zt~L+|PNCIMb)sG!t(zdREy_83&jMBBKOOLl=%}pUkK!0epr0dT@wAFL>uj7EYMR}9B zSNde!k6wBa2Hbo};Vf%})@UE@+aHob-h3S8V0s8}PgW?$DHP+T zIJzK+17aDL)E8QZjcx#gV2XQzDRjYIasCTch|aL5La9QuVaH@Cj zRD~*sD`IuxZxB-(|2UylP#e9%~;gjMyaUR&1Qiq};Yb^xxkrQrP0B?I<7+(z=XGc_Cg?{rJ;8HUhTLQ2^JCy zvdu)?$G#V@>xms{V@H=%<%@%`BQ$7=bXDAFoL9)$3G}t>3Q7Z~BijqjcDt?YH|PYi zUCe@+Q9%;6krd<33`^Uq$CpEVE)D^{vwsUc2-j-mHlRbY8>ug{Xn3Q4Yp(4*HgTm9 zH)L3fS$BRcHt-z`d~yFaS_bE@ax>7MvVKytkTo@(DL7>#C00CB=$o`WJ4{i~i1>^( zL2sz>V*WF1Jl-FjmxE*$e#gfCSxD?G16H^vHnyVRs`XH@;xxo3TnfSxo*Tqz;HuxD z3`I}Z_%gmhlYzib8Kg%|HNuhC5H}$`7ilEB2Iw;z{8^z$qih4*vO z1ir?zKcbu@Mi?QSI7p|6f#u=FD#iP8s7gr)8#A#de?152iAqp(Iw+7Hg{0eMz%T;( zn83>bcoU3w!>CzE-K9XsuFqkGM9bFHuy$CnC~*{xVs2jGaHH)t%;;{6ab!f1KxKdK7^u# z$#Vz(tpUp@Yc3**qu&WwBO9l}g6!u2Q#Kye5)4G7#!Em^xbj5$r4oROF7S5b-ho$- zDDX$IxWVs=TwE**G;gEdc;#YU0XiXVvv6dU=e_u^rGa-0z4eAhpOJe31S)8LkiTZe zmkf||1Z_I}qsbP9{Pp^8h5ypwzx?q3{D#cjI zmiq6a{jcz1WYquXgt#i&7gxogt?zO_sFFi{qy;TQtfVO}YVD$#z#n~Fz=r3z(NPm4 z=Xm<>C@5M9{KqF~Hkc^@&xxWvrtc7kQq->XdT_4cuq;HQqj7^8Ip3pA(GPfs1s>1W z$iS5Q6uh#AmVMSofIAb-mt~Y-d&Dq`t`-NrIU9Xmka-sm31dL;E5e=9&%>c+Nbpyk z=COd11Nxab{do3jF}Q_W01J6&yD4J`4fc4Ptp}|KHN3zt8bN*oEwgNB;HqQ)&nZFo z(I0UGg8e^Y!-8+Pc~+7I`n3ei|7W=H$bg|pCT;AbXYcoDWxfZ z5lL@`T4hOjP~3&-5;kwBz7u5bKx1h(ix;YI4~jXMUclnv9aYHOhUq0N-dKH0;3l$w zwvwiIFU$q*R80Fw(`OcD12+cK5z=(c!VKU>VS0u%uvk!Lj3DGgn7*F`L}NOv0BU=r ziG!Fh9cGB>T(s_L_W?P%Hc$rGKO8Jo(0C>3DWRA)V!?Z~bu7c+l}Z@}rIq{2zGVeWG7zJPrpJh!vARa4OM#3wtjAU4>j}V`MFsJOV;KxO) z@(qW7{CuSZpV&?NN5d2y*?CZg23;*5!d$aILq%U?poLUXg6(T6GZ{6iu`IoH(NG29 zL3}BM_163ZlBCj7s%WNd6NPWxCuiuq54;Mt{(D^D`!wOIgjYAh%22d|Dw=2egvvw{ zk*CAv{o<9f_1|J887=}jjT=jG{awAA;H14{$hnHX5G+Z-Jyd%ai{O2K-d)zg=PVFTAIbK|mKK!xjb zDaeW38ObUw^^@RU?BPhkNB=%5Twl%S&?>cNJsORBN~QF*GZH~;%Q`Wra(5a6J9yjJ z`VSinftF7HDaB;k5R{xW^PP~wx0T>eTj`HgeQJh+884fye_zZ1=%9kttn6Q@Zm=^z zl?6Fj1$m$#zu=Ob{@u2l*fwX<9=LdRfIJKt~OgBBJ#@4Lp*e4gh5_5OScVva~#(W|jg|Ed`7uzMZoCzIWT zg@^s|%qHhf!7)fJxhbcA)msN((t+_ZylkC^P+@;l9CGeWIu0gSNb9eijHsQsV#Qm7 zg_8Cq;y};eSI5$P>gz)5t4u-=ip{NQt*KMl`W1_{fll97&&qz%=-l$$t~prJ9?x&- z4f~$4GzIwR*Tt_TyOI3x5SCn+wm_f*>}85;dg_|{-W@rjON2sXI{!i2Wwg%`+i=NL{-Lm>15dKx~Qj!a@X{X zwhdhp8^iuGK8qbMS7!mRE^@bq?FqS9zQ8`NPAm(h-|o=o9P-5WSfy^3XFAgG%ZoFR zdVHCjuFi;+mC12i(YrMFQzXC2`4IKtO2c&HIut-3BhP4%C+Cao=haCoAw3@L`^M6| zZ{i#`CCJTN;{tB-xNk#}DX#}*;{N7_73FaYNIxN?fjk*|MK#_fyc@u<(KQuiAyy(~6r(er52Cu@pPBjgKfWDjm!GpN2m*oM?#=dHcju%@_Ymo_(}dzJLGmI5d^ z_(FykwYiqR{flejmoho@3w=TqR1n}wV}~mt)BE5|BqItcI<{FEW})Q|(JM!4_)k&M zsWe`THSF4JV4H5+2c@pxS3kVV;Eii$KPxC!E|h~(`9$1l^2@|!jSa8HPVZi)0@2;` z9k+QfXzYld^u%5;2P8eKVo%Qj0)edYBCMwpE(^ImVqClRCV0~yvs+#F3F{?8QOT`SrVI>>Ry?K@IO1?#UjM9bcG^henctZN{@p7;ecPB))ZDeYBn(uv9-9 z*k~{q$JoEDQ@QkF9+kNxM|(EP2V^VXwZ8^_Dcjg7q1SCGl^e!~P;=Tz z3waGWX-Cr<*MOxmv?k|u#bzOZTPyoyl@09`j+R19|8ABHa#Xp@t{ZN>@PI1U)KB<~ zExzt~Q>v?XPZ`>X!@0aj*m##L_wEHLthm_B)GyM4UM814^ru~f!lkA#s%i~Amv&2O#0 zxHysf$O+PhRU5rkC2O8ismx5IytDhu(S97K%e{p(D61T>=WWauGcZsSRur$ao0>7O zsosrE`}qiaLq@pbKd8yN^z^u{!%iH}>y_BE-k-|clf%I0%*&ZRc6=}SgPLg236a1> zvvK^CUQ?ACrGCTKY3=P1y(K3|)9wfgAq%y3h0cZBW=ZEjf5^?%?jgA7VMXZTug~N5 zLq%{EKEcJy|Fu{0!w)?RC{;}~I;h4UZ3QlK4z4=55olW<;dG&hQ)=9E;WA6#-_sK( z5WD$RU{E<^=~@mqJ0+#z7^`(RN8n3+zP4VagF)nIdCStaL{}jj(RGf8C|-{R$+17g zpv?5X60PZUh*CUd;D2FyF{BNxS_!i!MX~w)1mCWkOG8EAFhe+x5AAynq8VGC>uJWyJ+Mp;WO}@OU~UfjeTJq(bm1~N zda>G=`^y)Ja}!g1#rz@>dUfSHOG84@n%yZ+RgA_5@61crspB%O6PqEKS!&`8meKnT z790Y)%3Fh#S&k15hb-P}F<2LtNu?|5uMU_3VHLw42T!A5`Z9Gf{dM>tdY|O&kS)DY zo($9HI&Q9oqRaz*^FFg6MfryWmx~W1hb!gnc1=c;*VKc~M(*MD2ub!oZI9w`k^-HJ z4;1$s`1?$k1I3j&AHV=bCcR|XC*zwFAW^nzCWxItWc<{|Tv;ZRmJ*7O38=XRH`0(& za-Nr|%%}LkAY}1G6K#3urUOkCEW~vkzUwF#b-Qe-5cl zyB|Y=f~GJ3Ey>xcjgcm5$cE>`i(=Esr~2V$;I$n6cob6k`^?8^MnBMjb0-kY(rRKa zqeUys4O?txL^K+0wGij<^XvO)q91pGpK(aqR}YfCa62#!+MXadenG?x#*M!yrzKY?4j$MV8l>J^(o+H2);OS)4xh@nav{ZXP8=qP^Fre1kI*&{b5Wc`P3+nN=Lpi`dNe0!Dr>j)M2uYB#GkB?lvcirK zTuljqZ`8NrxY4NwMEf#oubl%$Xe;{1Bc~1=t%;jWZCFr@26al%;E9F|rJYh{%Y%&B z^WKQK2O$I6^xgwaMTq;`)*yp+PmZnA-NN;1C+Gc+M)=# zyRsFz3BKKW1B~m2y zsd1Yd{qcz}-_7!^9zH8rZO7SGGC`hhUOlyNv2*=As!TdZd*e_6YPnh7n@2sV(6vS{ z!BIm8W(4k=*7BJaTQ*(bR7t?=3YvAJ&Ot)4m!wl{*;)ziVLBz6yKurAY&+d()2Sz~ zwph|}l&aBfDfa|0TIrhLqPu-9N6{Lq^3CEZE>%g~53MyEy~~MAcbQI-_OWFb zB)G-&c05gTDxUZ>d997Z+BRHh9s6?Y(Of_y*>!O(hw&Xc* z_>Zmg2l%Qm*yea9O*BLW{gw4|RfY*eyWEV1_#s>NI&d;==uOd%3@m%? ze>6Bmd6qzQdPFO405XTD51dt8&X= z(wY)6LQ(xFZ!~MuwwlptUD{TlJ#5xH7#rsgXjEq4o9F3QVuhRNG))wSgr3~9ex}6q z3kD^2XDy{6QeiijdO5vs`mhxIyu zGdNMMhw8nQQ?=T^rwEYLI`zB!L+D)M_P5_E>P{9dY%w(5;wX-2YWdp&pv200ksIib z0M6yR^;f`M;+vH6?S51dRhdQ!B%kkvG&KP@Qkwo;Ru2XjPB zuRkt&#oYQ-*C-H^ZuT)zV;TqfRu%WOUKT8#X+j4@hb_dlv2L~fn`LwBbEsUY93`#c z%)lwWWyMB?>5Ie_jcMQLNM;O4?XM}$_4}zz!yI|75lpoT?WUKw_gbmLO@ot}dpQW* zVc)~WJ>F!fNM!2M2GMb%g>a~TPO-DR9ybL>W}X+)U~07V{j>xL?mSvLdL~n?CBEJ@ zVAh3a(?3EAyJ~^IZ42^VuUlofZQRnAu7-8py=2LpbDPtYadR0@fwy?h*X*%EP?U}; zg|lHc)oayIal)bet2dtt!lg7W2SBDOT{T*KK}SBxn|33~Y0JHjpv_CAr1 zF~sXU22d4U*@vmvSI<}8M`!vm;Z~4&G~38#%UPmxaF?8tg<{0dc)*joW2oysM%HMY zPQ0N@uM%Htb8toR6m+tjnPZdm9Hm*3vf|27c_Nk%s`u@SCPHoobsr?InFyXQLTS8KO;Ca_c^pVR?O3l_3nvX zp_AbJ*e|y*+UVv01aOX1WJ~RtMBw%y*`yUJloD;cG9v9*wx5=_fn)V&XyjzGaq|G zZxD}_^cJ6!Z1d4xR+_AB?vS&g*&GRWRN5+=joBEJ7ueJN{mwFtbWa7?v}`+ug%2AM zqMpGT(haKo9n}H)3}3~$&EF>h>r{4g@G{KsWgPZ-%s%r*E0(*chIgLZ@&d!&-d#W_ z&^?i|QBcE%E6YBk`|Xr@AOn`Z*HL}->ok+_smD< z!MB3L(v6EwC_ujHCUlB#D%hK1_T)7i%+u}B6SA@(FU1qHbo$O)*c1Bkc*B!^0_~xF z0Pn;&g#?^0ZfT>y%I6S9q73{LWb5d@0JwvOPQwZDs~KwRf-@61tgR8-qW_RLCmY?V zk9GTCI1?wt^SrDb@>PV-1H6snzJ7@906eqjh7O&JGdnnOu+!BIRC;18E;J4EQlLZ|HUNrG85(a3vfz7+)tL$Ae|!-6~G1Rm8GG4T-#iY(Z_c8tdWRFcvu07`VwS5+2lYA;y{lZ4?2uF$>T6 z+?K*YajW&xlD}Xl#ew`FY!OY(S6*QT+#T3LU8ZGjOb`W=)Ud_qh26bANCWo>7Bot? zgvLyw;2Rdq98Ul8JR$>ChY{2wR-2UeXrM_<-S7}W_bNp;R25@EF01W_);LrW7+~{B zRdDVGmkmeJ>po>SESP7a1GKz2gV9}w$LPsLX)$FdoJ-2ng`72rD#d9nad-ppP!`GE zlkc&02YT~!DX4X&=0EfI0Ek82T5iJczQs-wVx}S**3{4Y8QwT^^1$yW)v{;2I}2hG zNhl0`&S94_aL;3~O@u^C@9{}kkc?d8MSIw&AU?Ja?PNkF$8 z{?XUZpyyS)9jROKp&F?!FO%YRsTqVr6<7l2Oy}=Un@-k) zaPui~Fb_8lt@wU`FVYxsG8v7_$8W(ky!I}Hg#omtW5G<=Zw@f;Dw{S;)sy34n6cmm z4yJY70q)@D=Il!_lUIBrfKL#u2h8(cHO_QFhQtfT}2=ctV=-VW@3Ai#A)XEQnkE6H=fbxqhV z_>A^lu^I>lM=fQA8DOPwpo5ojq-iSO)~WsA;TPy2%3PiAd?$AGTEl{{4jTnlQK0ogjZmayr$y#ePRTx~#bG^z)y7LgQ`BB<%Hl02L? z+K>%}7Q=hcGq7#30|*|;(_^tuS0@l$jFMu7AqawMgnGHLBo7T*8V{_mTRQ90R#@NF z6$H1Ueo(IDof?bSu+r*IcbZsFc+Ty5yfzu$qmjKu58|dBYK6sUp$T3Ay>@xI1df8p zDo9kby8|$UZsl=~1{>d13s*m|ijQAeA=j6>@l= z;2UE6ok#D&Jh2hDuB0&$q)i9=_o!oDhBcIJzj7#B~%VR%yaV<70EI-c0ugalAYaqKx$xw+qW z;vUztW-wLseZK>&w*G}XqG230Sbn1yTk&~mci;y21aOKzy|Rbd)}L`xJ$!u#>~}vU zo7r?0nYAi3WH`L)yNO$G_QK4db7fA~lREG{{Ud+O;S;nb8~SeU&W37i=EPz@$u zH()O=*@A`1H9V^5=@dH{V~qrK3^P^-nd|E8%!YorBkP0ig`$U8IKcV|4mvJm1nhUV zkj-qsU_OW)zL~?1JW>iqB`CG3#;c8lS56kP+>EO@Ly04osPlucu&kJeqZ|mCOcmXH zWy8%FgbZ9g@|rs6T>HsVd>W*Oo0OUS@g}3&-d%x?+$IYN%ZF57; zZyLos`}ltQ(2utlmKBvi?g>C>o`=j?vHcRq(&mY{u+F1>U*empzs~kd4I2fwM$vee z4C7x?uX(YZvmDvNM(BPkiLGpVuOGDE3Z7e?K|aPn7Kg^0)aI)R>|3MekVXY(!<`}? zv7(nBGpeCJ*wbgpi>(YRdn`-j~NyxqWdT^PDMD#v*fuGnqLE$&iE$MGBR%%tD4l z5{YD<=M+K_nG;cw$QVkQmCSSRK5pHgoJY6M`|tbSKlTo?`C3xF9^a_9JksU-3OcUMzZ%r&59l|9^VTQN48V}^N^&?>sEQK7!Ow>4;|JpNgOae{CQ3%dqGOF zGh50{f55{CVTj$7`GY&Z&sUt?AI%f4>`Vsk^eMi25V!~38gG%0*%qk^<&i?0B;c! z>v2a;Jq;!2YP0}dSS$lkACOtFa0s=49p??f4g&Zt1(Cwea*oyH z|HzAOp?G>sN-#He?7@rH)&%4cEQ`-a2*WRaBE?+sG=gF5bi7{|E~&itGo=5=Yz8nL z*0wvZ3h`~VF-8BhCMN{Tp&C14)!hHTMz|NX8Dx!*U1{^(Xu_rloHvA@d(-#wr| z3Ty8J4!aJASmgli3h^iHEgns4;bA;LE~v6R|2vo#B3q{X^_^*(J51@A$QBz;z%E57 zf!`&y+QJ-6IKKxE7gp%0M>&n9{&C@tyUZn5?9^z(s7i_h$!?Bpn&iB!+~sBpA(K zsyP95YfPJEVRbrNvl#Tf#w|I{!dEWR9QHXi1G_%-sgc7j>=`?fPGUG4L-@~{(N~P` zI|5Q%zH;H>u#B{4_}FoN0Q3DO&;AnT$&P@Ls@~ZmTmi$@aH+NyzM?(*lZ4Sku*V>u zMd`^@Kz&247W@v-AqCA31~A?I3P!0}WE(}&8x4DJh+>Z16vc7`ym>86(0fOGk&S~r zJd%zQjOr;E=Ddz~=%dn^Prf;O&u$U_6ikP?Ell-TQ3CBL-;%rMej_W;s0P+?8f$VB zK!;*J80b@*duAygG0YCH^1{5B1~bfAtVS(pez6&rBABu__Pl~T%$nJEK&aCD0|n)x>^d>%!M@-!EbNh6g_`5n^%)bRw{u)%|bZCnk}Ez9CdVmw$F5Q8MhO z`@&$m)A9ZQ4p~otz$07R6d0sSkMMqd>g+mB3S(l0*%^V25W68I)BgK0WtF3#N<;}( z)(zu-wY8^pIgtJ%Wosvz1pf46qM>wU>>j#W4qi?Oq5AddepT2s7C813Nd5OfFxCF= zfd5F$dHs*71ti;4^)z2_*@IuxK#V#6&(3=l13P8A-6miU=4Af|36`M*8}JDq_&8u2 zcX1%8c?y7xL)a}F0Kr2qXVObpO9Nw03IF`aK}c zfE_V2x~-2!5kE)a%rU?nnh~r_oBIVCw6L!TfEJVWJwjN*B=xP4u%?mJH%Yh^Y%n}{ z^RXJbA0`NE+(-a-G)cJ*;Wenntf}M8JjF}dAL4us?}iqPsuAcnNe1SWo&=rm3}KrS zIMTK8}!|VExW>KW=%OUY52{zQx+)*hVsA^yf>G`5uOKI zZIz?7lfoZ5hX-cjgq*bR1)>tJl_@vkn)CR+aN+4nNv_j)ds98@dK?L7Tws8HBfty5 zqu^JH=qUj60Uw4kob|NF)ZmXPE%6j@ke>Ml1J>Cb*oS$6KM`)Y7*8;y48!0(!IwpH zS%Hf!3No-}1>Z#*CU;9rJ3hZk3x3a4!a_693qx{K7Vy>4JD9~`f(y$a)$1B?j1|+3 z560G~03@#3^TMv2#SDNOEiGx?H%pvA9K?AnZGZ`Ub^i|kBKZKgX6^#U8uJ-IIO@Rg zrA%6eZE%7o$Qn<*>zkOQ3gU!7CXoN>7nzDNI%&~Le%-Uw_ zqTNbPY6@e&XoPPPX9W(QYC(15TfgB}KSON+(hge~3(*wrU^52`I*=f|ps(dX-ed|x zT{K!ZP7DNxt@utvr2vSGV6^C}O`Aaiba|`|`^^+l2haD(N3XyE^2&pV@jk-vN|<$f z(eh*EP!KSo%QL@n0%o@48^?1MyP*O}sixqY9*P|GPhEMjAb!zta-p4%jLQ?RBg68$ zP3%6P&IkR{`7CUB2Bp4!MWz^pZPJw=fp3bKbRwS@j3R)Gec>TkDvH1rkOlwlH!zrB zp24^lUJtlV5^Q$5%N;}n^Ncekh-Or%v2tYMK#&0#7km?5xur@b8R*gpeF2cG0*z?R z#u>JOw+`+f{kIWn>m%S$rsv%rkH3761lvU|DscVn_8#x{Vti6lj9NrZQfD}bI3`X+ z%1gs)!6hKMm>R}>DX{2jMXCQ|aCLmoQ%)d}94#1`#DJN>myRG@tODyg(8ZJyGl74< zfM)UeJ#Z-AmkS4jm`i~jL{xVI80hrojDH52CqS+QG}@*TrGA@&%Mow-$R1CdbP&0@ zy=Uul=gB>u_P4-+o$4YABq$U9ZVXN7^3QwIPWiOdUfdlwKhqhL`GQn9!40ps! z;+h;_)`Yl>AYz(gUsayS*SpHkcp(DDWUO;_B5B5b(hm}$pSkz=95+u$O@Z)YjK(ht{i#F&cBZ+;v zh;+QgIlyO-&F0g>=TgDj%aLlQqzV2i%F$fiI1Bm*phUdNHJ zOiCOa-uWYqGkahbyuK45$FZN|G7K&rfgLAH>1=X(cNPt-aipQW2KI>-6M1JE9I1dc z!okpQy;<<&%`FKc@P}4hH2&FxyO{xvr;nEcO~88wT48|sI_%!gps(P(InoHYHB_No zPY4?VHHqf9KNI1>?y4RH)&sXgP%6M%z?|zqU{9+Hrq?W(fn=3IaJ0wXFG)ZD(i0@E zZ}#$nzY$Z=Zj+`7sF0R(3D^W&8VPI$KfVxLB@e`b8zQQ=?`4BlsKM(<;02P1k@hu&=SEgAN1X*;+a5{g3Q|&C_Q<< zA|Xz?8svB#Xa>1}CgtV%J#)=q%BMI0Q#zkki9Vq`#s~h88r3HRXinwiTU2-w0}S(h z?jX<)+#8uKrCk^Xiw50y>=)qX2$sRLoZQ$oO;7}wl^hDjP6z z-~tGEaPe9JSm#3Z*s<*nEx!WO;4s5+An<$`xVi&l*vkOmUf-5M6bdt^Cl3Ukq?Y#r zgQ5Kx5NT$5m;zkt=+nc-T{#u20)Zx)NMNQJR6y$i?0m@sX7XZL(ZL6QY+xH3gZ=pl8}s}Zw-o`!{&FkYI`kPl z+xmnJTmFmNYJBV2R^$IZ`&aN*E58fgdWMbQ4%q;nuwnB(d~P7JiB0$&w>$VY5hcRmu?;7JRXG3a&!OE?N&{>Ce-*|)E5i!LJ{$VgILsIctO2qLuzwra z`VqGAe}CkQZE36V|2=z!)ouo8{_nFlQ{YFE&wk;s&kz9TTMz#E_gNXZjRqp-dq7kl zG~hc2p4o5VszHhb{4sCX5Gggt5MZATgX<^sV7>nT|NTE?ff}2tt}aqK+!}63P+RSP zbs`RPnQ;9q)L>|242qzEI%{GgQlRjoy^F0a*XeB~hLB>|AO0#Zfdzs}Z(AiEut*6p z5o{q)5o{SXTqr2;_&fAhJ)ysVVyi1{m-?&R5*CUO2Sw)K2oVWT@C`!h_G&R$g||xu zU6p_%MZ_Vy3JP=V5c;!r2Ue&QK%qe~R0$CYXz=#3C_BZ9OGyH4LAg9Jpfxmndo_}s zaG*7)a4Lc=q6g96?G-?FB0&{u5h+kS6^TIY2H#$TV+)QoJ*b(1?KBV!3W$neNdO^u zC#8PXuKG1ba4`uHI4If&0o_Te?Zb=ht%QUK8q|cvMS|LcJI3gDb&-;A5frGZ1cAh% z6t=0K9mP@#iAIP>0YxC7IF#BUR7_Gt43tBKK;lqpn^3HE#Ze*%P#P8jiNmMgk>Zj_ z5d^5C1cAh%((gz(5(VZuWIu7J^g9v(=qrVmfRgziEJ7f~M3A8VB80YoViA@KC}3MD zNF)x4e%BTamjV+ViVC3kwI~ByyC=n!>>9`#QrHgkU zcL+s`gGB;V?Sp{+2a7v$Lz`mfICI3~V2NM#91L2IcT@`w2Gb9ms9A#ZEOzFkwL9R0!msXatZ* zFxA8$cVi?Di+=AXLQEWNP*9@+N>cw(TO`VVqa3>)Z{x2ROfhQ^j zxi@Y3U%#~MI|@_IO@<)94>9+FLrEppESUM+1*Omu7Xn(Tnfr<1y0lMNUTs$*;fP(ZQq?- z0?W_8ek&aKtO&48pu~}2F@%)7lTRpY|9`r@Qozjy)wQu~gq{OiB}KOnE(+U`UrsYP z)gZQta$`?`5Ho12eCT%c)`qVNZq>2ej^2Lq+!`p*X-QDV z5dylCSzAl&FSUWWkw~y$K$?52{OES6zv@l@IuC*64Gy_?Y?T=O4Y_TgfPH|UFCqc# z2chmxUV&f#&&ohuP)Z%FsgOP0Nv!Py1e!sEc>wB+LkZoqd zTg7#^_ZA9{21gAf7-QTnZ`BEO$`wo$D2(bl{a>3&KN4-?{ri!^K5Vki6b1 zH2R;)i-TDq2`PQ&;sq&P44l|O1$zkPcP?O1a1?fGLlXRd1?xfmR_uWv5)M2hG?)qy z(svRL8ZIs(AqENm8`hyDK$rvp3E#PzK}nYolLB!EDAsM2ApNg_LxCfl1X!tX`~F)g z`dv+j0y__+w+6yDzi$Fi%AeSAWx1cun7D&>yRKy zDGqgHMg3N!c{kG`QQ%Mpbv{RdV(Nb(9U%!^FUY?C4eO8y;JE=`1!Ca-hIL3dTm&3~ zq2PbTI^Y8#Ku`)-I!^Q*YQ`bOKnw@!9D+S2{I}`QQV8I@L6H^|fd6ke0_#A6MHNE% zzhNCh3Ir9QPJO@|{u}8aREz}P9fb71S?jPTA|xn}4gvog)*;ZloW)SUA^!{0fv_kF z>a2_cVVM7hqa{Jy890^@%Kr`P&>%jKfI4oVaN_e&tV4s~0s^?pxYEIB{)O^rY)S$W z{x_^cg99nZhd@c+$-3W;4L@CCBsO3Gl@P(Yn!hU#2?r6RUEn)e2MGr|>@M(~tb>G$ z1J*$+zms*4aFEg21-_GYP;l&g-vz#tb&zo2ltROC0{YtzZNQzw9%bMlV~9jSMCMUA zF?|TMI7rm&g5JqFC^T4RK|B+e?+6^mVJE=PgX%BE!AW2j(Kv*|MT67ZZfG37L7;(O zu#0RQxsnAkZKuxeFSHYY=D& zFj1lVjl(qvG}upfLE~@@0u2sryP$En27v}Ssa?=GT!TO(z_A6g-&>2|f3O7(+|OOm zf5A04h-U4A##z>IHAhJ8#%)urflO>TpsGP*@Z=T0n&UP~d>S zqtm!*qriAW8XUx={u_)vPC_}FI7tR5wXxUwph8a|@9^J};UGl-X)v5c4WiH3`-osv zaE~-N`2{Gw!Sn=CdMGpw$slB7Z&5;Bw?j$(70E!L6*A-{iLG{?y; zK=d1pz3vCOu;8Q?pwQs-jR40DT$|%$79h|lkbXo!#;ZWG;=joPZp1-`n{d(!P@=)^ z3zdsPft2QdO9saRsOtmZ`q>UJcKCiSC}1v2fCB*%>YfBhjqLz}$@`bcKk@6&GI6+t zZR#(y1vj&IYWtV{M1!dE@7CRZLHAGEqQ!PDTwC`;{z}`OT>9rvE9KsIM-ym^v0YJmQMDFC!c6aHI z{lv)tY`=K&XCw}Xw%ZomX#jU+#NZGYDX{tS9gN>@A?)3MaP)#o^?-%>&qy?IG7!+n zogDg&@z`6H*sCTGn>6<3%^$Tzf*d{^Dk%qU3jYTZ99VWi?&Q#R!h;)3AdQFyBZsra zp#K=y2c&>wb2(7H2pT7*zdg1KkRXWy+$V@_4Gj)1zZ+=l*5WV1V@(S#;6ZI^V3*#B z+(vk8;sacr7ZHcb6{B&Z_*iQEPbeBVY-p%FFZP9n9qRsWTx>_7+!i!^Cxy0-@;^ml zwG{_Ukc3K2qro)zUFL6V9~c(w4IGgEh8WPD9QtkT1J{+n0Spaw6#(3;-yw6yfFeL( z2LW~a1C1M}-!`+iIto&`(39nlLHex`#in&2ZG?04{_hezAYyY;FG zSU4oGAwS6V2wcPdolD!-dTiQdaM2PN<>x0jc(n=zUd#LW5xYM9{9i7Fm>4jzyga#+ zv!kWC9l3jNNrk0hg2sE)En@!)<$Z3YLwjmJ95ft8eif-Dqw%k(sF11MFG=VY#8vxo zG9eaR7H?f!swhh_s(A9i_;KEZeL#esdergf9dDTVFOoP~Sy-O^NYwPQrO$85(1=;z zcSHoO8U{o2GBWNVJbF}IE#*#eCi{{8CYC0OA=f7`{y52N%C#KA!m^}yVFFyFW278N zB4$t6XTLY9)*Oo%16b%=GtA33FJs?!H<8Iw62_YN`<4vRh|73Vt7$kfAqx3spttIv!5m&Tys_vMkFIq_?8ZHjs%~X;Lt7GS1?yA7%GJkb6Q_X zg@G$GEhj(YXbYkCgNd^a4x`HsB4_VgPv}y@F4GdB$Y46x@VGMb?=P<9?V}+aad-pM z(IL3~BcH%^on1sUl{YQxAx~}dy5}C4fv-^8+n2L$JwHCG5?K*1D^syqk6bvvb`lR3 zdcC+3G$axcnV2pWS^3&*y+c?y5oYfi_8ycT=58ZijusQ)I#HPLhOx%y z;BqBDOiF{EtBGt`=1BWjvujVz2-GT`shAslUZW)WweqQ)YCwAW;vQ_oeY_|$)w1IdDZatyBpQY4@#-c(<2HUD$_NH zcg5dl#U0lM84&nSB|SEk<9{SQ31)A4+5WO;+>FH!hR|Rga#+-^?s`QxAFXA2SkYKl zNk8=Xo_=>ORS%g$X)fOLZll%Dd`9VMqX|k6EP29MSy_FF`ZMUbPKe8xn26c%1q{vx zoA|ppK5?2qv#H>1M^)rR;IUy=5qq$yW2$sEOJwoY1eXR0Q%cElb!9DYfCAbn1>s8s za|VAPKub8rCweW<?0s`HgArwKYvYMN7EHBsfw!Dnt6!br{lT*8M$xwZ`1r-zijIyw7Q=XAL~;AY zgu11!vHFkvNcLV-c+7L!)^_hLTR-Fvq46K9EIr1(?(5N`Kin_i`#5DDFLWwF6|E$T zYw)RSxTWMqWEKZEm?z(RcpFa_bg{-4D zC@$m0sQgG-f?0i6xIt1Q{9WRc6`q*Jrs4ybRj$Gfs+#qW)MrV=G=3_h(@71giO-x7~C*erivcwhYk+gXdzr4J4#i5D&J~UD?74T<`(+FzPRPU$9{S!$@a#a1f1lHZLDQXlj&*FUc&W0R7VDX{D}#VInY`X=n&*K*+@ z89xSF5})-^nT;QUn3YlKHMNqQoWu$yZW2RsRo6o4{;3Dmtg$Vl)k<2M3+^*rE`;)^ zAJ=>aU&FZC*f01OA|1}xG1*3SFzbF2x+9@auJN+oSvQP3=O8^v@m=Xo?Hhbal`6!0 zo2f4>9!qa7ja;kA`xZ|F6YNN%eDTD?$Y#Y@+{5m^@H4y5Lf?tp1DDs_%z$drMMxD`K2-+<9c3D#D(&^NmdN-YaA09Jn zEVS+)|xPNEqoViGl*@<)ncfa%Lwz{W#d*&UaUYlAvdm1V^C2;6#7AX4CG^nuj zAhPe!vPy|wUaIPme{P&G zr4vl8~a zVj4l`zXX@0ADy=`Eo!`^zoZcgU2#Vy<&wf zf5(47%vxFP;2QhH9FqCCLo=F;4=a~m*AkT5f{gv5a6|49UIevsW7BvmgMQiU%ynE@$ z%m~9?N3-M8tU6`d^e8-9<0l)po}Ugd=6>7vWwKyVN9fQnf$RdO$iibSksrHFLccW1yw+MOadcw8|5iuTA1OCgiURcgM>q|Uhf6QR!+&;kcrLd~zO zUR@YAaTckIlGr!yXGCRH+3)nx(=w{4mCWF@8E>v=BPr>_3#2Zbndhnwf7Vk`t888} zpZbz_aZ;Pp9TUUnX3-f#tuDpm@nF9r%0~}=pIze)lazvBXDT;c&()f#jF|An3g@%) zg3PyXO!5|nk2Gt3qPTt;Jr`Xn_?_wdCp4OMxx-z5SVd{T=Fr63Q3i7sV!Pmreg_Ou z&Ij9hlPpJy=X1Z4%%qRgt;As%jl#*NUQ?JSF|NmpxIb0tVtYC~3|st`7VT+}nS7m- z?_*FYA-}I=7D>@!W3lqsxAi^!{XEG7`_8!+4=Z!woe+_jr(Du|lX(4zny6;_w+Er4 zE9F$SD{)hK?am3_6*Tlg9fua}qy*=`7%?>J)n7YSy}weO;P_`dkE6#9v%jdW8YVo& z?L_s3FEenQtLby^$HB{996VG7d>Z7zF<+^R2R^+fqf0sQeexx_I{)_tTh#+zM@+4i zl2^Zb@srD(bs#nAI`Vv|b>W>3x&7mLR>sLywoTuMJV8yyl*ZpaeNmTk!u{i5Ev2f=BXt)r9 zTJ(--k2RTtw7(*BzJ=!J-wKO$MU<8}cKc14NVcvq*bvE_6U0|roUAZ^qO^ADF+*fH zeob-CMs{PcLCxW42N_NckLTj1E)x>61_bqYo+6Fp!z5p7CoqcKNWOdXVTH`a{^5ng zK{G^z&-k0EuOB%{JMPC$ z>=G!yP*i_z{+z+`?5b!EF-wub&Fnt$8z14kt9VTKWuRiAWKQ{tezDox?7;`dO6XVj z&dvGwQ1N|FVKs{2tuJ%;czMZ2bwO{{%PbFbaOBO69+gL2(yn-3O|N`HUIypYSzo6} z^}GdJeNbPA>}j8w8~C2Rkm^TULGD|kmT`lh{^! zgQ&T~o~>OV?OCQ$ruT%W=(Secy4i91a6?{s?|GD7u-%EZ6y)3j`)x8IuGvWUhn98M zj7!K}nf0`_2WHC_5*5dyda9mob~tdM_2eJW-VrGy zJ{rMg&6?$o#vETh0k=*W#ZgC(&v0eoAcGqrX`LvT z^JTvxK_zCZX17W1ruY*E`FQ5UcFX`i&1pqt%PjWfhT1& z>vC$<-;I#Fo|``HJ=j;WP^BWOA2pWe(ilW;E!xKBfSfx)mmFwuDmlMVoqb`JRWV1{A4I}{8L6+$i~Ha1GCV|>DS)*o3#Ct)Vd2_uEo0) zq5SGfiIZQs;1^NH%?Ed*?(B7*+Wbq{GR>6Ju-x0=@H z6Xwp@sWl{o=Pi_5Ri9LvKKjzhnn`Uzn5NYc!MqAKnTl3Si!c3B!d;`kX`Gs7o!{G!{j+KR0#; zyWvxnm9_Tzw%nlw+hM_tt6pq52jwk%`_rDh9UD5=srR7s!CvB!y&is6K1;{EoD-6j zUw0VG5O(zu(~ZeLl==JytZyaK(tPLrB!Cx}6X1N@ZfShSZ8%E*~ZIDC8wk(HX+1 zT7SR4MnM!x({$y<BvSjzv#y2;#0 zJ@2C-+42l36*Kiim^ZT?=M^=G>7qU`S)#5I96#{=vzkLtPymaiO3a-O;)H0WVJ<6q zYkpyw4PRl}*sq_0E?Fqa{pdaO^dhyy*ye|N2J$drWA5A``NdlzGbV$C?Sk-A6(-4) zQD*6H?@`BDHq~*=Cdb0_)MoBDs%b_u+Tk~4emPhwA#h>sSm_A;Qn;BbyL9GhF1nZs z(~FC}P6YE$4`@EV5cYO_v0v1cMzE@On$YHK^P8`PngZg9RMCQ3wl|M3cn{qqIz6Zt zVQmYpV&{C^?_UUi8~9nj?85ac+3}i& z;X2`Od@tE4icEvQXDCzH8j(KyYI!E_R#}SHx=eiSiIUd*E2-ZND{Mo|qfBKeiYNwK zcTx{YCwv$~}*rk#~QPpOU*JbUQ#-WA!=VhdpYijwaEheXR~z zeCHGHbMriJrd2K{&C`2ag>gD5Px#(ts;<7`xYl>ZE63DFQ~ULS!-+5WuRig&JbIGJ z5Pq|JX}S1Jg_}k~Eb+6suAJAe^_A7?te)_%ilz}BHZSNavhq3dfMr?R5C1NqN!Hy| z!ir>RKhDDg5%pCRozFeT9(7A`9a4OpAU;u_?#O6sLBr&-e1NG+{j-97dAD&QyW4Oq zXH!QU&-oK$R)QTp3UtKAr`Tx)6-&}P>0GX>dCwT^dlil`xDqoF9PnP}0uLsuuD(g; z!!%viUBM3d5AHJYPc~2W%)UJ8sJeFC&yW*;1UY7&n10Ev=%~x*^PK7zv)wn6v_(r_ z`$m_R&=0uNOKXo*70X1oYYCRLB9iqzW$rnhTD)vwIW%+Zy0H9tqc2g{qc&P*Le1{1 zrilbl zhRV?897Y4qJv=@Gt_88>mfctJI=@M!hOP#l8lg%>kr4z z_V#7p`lG9znpetK%1vkHIUVf^@0Q91wQC;zLioDH#}=(wtyv#4opUz0#U_@2&HKp-KV8$ z4EyLTcP&!*NuK<0Vqwy`!*qKnZs|?*vb}rv{hfffwKCc1WNXE-X%2-k!&h2SFP zjg0~l;riaqrzs9nJhl?$x z!5}*yqDrE`BErY5_Mmslmp*t>a>SmZfzCq(YcEdEgmN;`UMR99TDoZPhW4uT(2FR0 zt(Sq~gW?&I(NP@UTH*n`x*jRa>aE|sjbgZ-ol(5$%0YNvs?|Au^qyjQ@l%4Yk9a6+ zg}%JG&QkQcrTpcgK+~t*T9;$vXJ!sCu*O^8i&qvty~0J;gg>7|8X81Fb|XM-n2HX; z7|b1ZLj|5zTGwxS((~PGYu@A54YU*WVH+<^NoOupPsa*XuO>?E(T&twmk%i)NpD94 zCf(C0=M0$Y2rAup865vnLhH>E8|glpv(nSy^SQ+;#cPL4NeD9qHuB{atY3-RR@5&) z(7f*1ap;|wL)a~^DUr;o zjU|D$)})HVJC=>&z~PRy@=UWF-m%zv>U?6Z_c_lv8$aV)T8y20{U~<)Eg$ka^=8_F z>TUEh>sN_io*X_rP%SMwHE1lXDecgCvFC87^RoAuFXft|d&Pi5n^8?H`$+7?enpBF z!lt*E6d5(?f@P5pj}qOM>3aFX=XRs{nK_GIQi^jbtq1hQHe=*OR#R0y%{umr1?%#B z7Ahi}61$LR>FHAzZfo3P;%_YyzzkoOu6<&eJC{&IakNA3;%C*_kZReh`HU#N1%r04 z_ui)))&%cfKAAP8k?#;e8A!`{xxIJrA-dp!HV^H<`&6Nnxkc%(*H5UtC4P{lUbIR1 za;WvP#tR}j@mp*Nd(1b&2}6ssr3dEKjWq0OyZg_MBhMur?0Q+rLbd-TxwMWqtwE7^ zVwJ$NVozb_jM)qVM? z7(?07xacBd6HstCZ`hEG_`Rr2Zox?%9ohao`WzOLcjfFK$|zfw>hEVLj~ZBywR)c) z(>7DezUg9T64hljag|Gq#p~+N+!to{;Op54lt!^_K)?GO7XI-j*BBREL(^8?aFME z{A0w~e@sXo$#)UTBzokTM{K%U;{V=oxmaYM^m^;}$GH~nuooV}S%Jg&0hL!pCsthQ z7v81U?Two=T-~F5r`b->t;AgAnwRidN(%eqeb0D#EkAUn(A;*}!x$~35^4HSSC8&( z{ifd=&fI7nfw5>R|4X-Q;d%L-ck7i1lBg?lOw-|K1D~f1DHpT_BnerqOEDJgHGU@+ zX(fM2!otU3@SIlPUJBjxR(z#f2+DiUBzbiPAN{bVMjTbJ4^BL!RrRK#`m^aG+ZaZl zZfF`g9uB%ZuZ2>1?k2?tMf>2K6y+xdvuS6p)IxP7x7FCuT;p{ zvZQB?o97~5=?8S~Z!}?7;&QscKsI{#Q~YU9VINJ7^gk;caFXQAKdqCa z9UVbQ#s9$j+CziIk*Ovo`|E~9hGRZ^m-kA4Ha2?eVm0%)iOA5Jkkjexxcw4J`rcs#RF3}(_MYc?&32(*5{r_^Cz=wU0PAF;oWwn`}E zTK}42^xbB-6_rC9_a-77!@W=-oL}V+28+M3eWxNC0avwi7%qdod?$` z?rDcs@z~VSI1^PnClM6gnU!)UIfV!ct- zy_8s+-Y63M_&SZ!?%H(r$1zkR1s4;4KtUX7X-M^?c;S0D?3@Mrg>A9TL(Y$wLw5WBI|+G9=hs#^={Vt z93A(s3X2t`HI}$9@m-DceOG_dA}Zy;WXsj3;ScBfZpD0^4K^REFFKyLuzs%0QRK2; zlAfL3M7_GMLIF}%OFljI_jF^$jY}0zFI)Igi#C3kPqlHOW(Z#Y*rcOK7oL+Iee&)ohcyw23|;F> zSj1&w3*Ythi2^>t59VGk=zva@>%&}f0Ybt;bXr^?QuL z-HHB|9Xr$cuOYMVj`BFxi}SqUTmURf%=9*F?r6fA#*zF`9cfr1z63 z_rJQv-y5x1I%#Vk_3*VYVaw-Bg%71$2Dx~sk z&K>MR-IF+Y|Djo-t4I3*0Vmrer8{{hp3kHMxND~Ti%7J-2WxrWoP)Jj*}vU@QW z{y9?h>nR?pY|l`6M!)yWi9AM>#R3AKwGRCl5h!T%zT;Ay5Y6L~>u`D2)Nmq8mNCkV z^No|#mtaosfv?Ykb)~EuAAZRfzEZpT@EW7n_oVE$BDH%np-n==4OfZO$wPEcmlz`0 z;FAN9A3u~HuA`$Lrj?-cyQiWgI9s?Xuf&EQml`AT;7r@6fNKxCDdR4AQ5d`tb4dN#uaM2`^nI$Jb*DQZGE?ZABlldr8wg`0{=xRoO^6S~<&e zUsmpA%xwn;MA)J_fLAnJ;^^Yx>7NEGR{Awg-a!+Khh<_W6{E3zl5VdTEu!6T1@swH2cU6&^3O1~OOR_1M( zHL!(JBMt{r)xgMfb)zmT+B`id2gPx{fzA2gg2q2|u%!CD)sb!@GekH!jtH^frsCU zA=!rC_J$sevwD*+{nh^Q(x#ZFT9FccR-t@l8wus*_Z3Hrrd^M}c2Bja@aISBI6i#A zc*tZHdHLNK^QGt6_9W9JiYLasy>&LJCizN2+an2flZ zTWHqM@VWRKu8&s&y(xn!Chw%*{IvFUoTNjx51Aaud?5SNofCofQFZYlwcqWXc|8y^ z=9qnhksDOyhJr*R{_UzHwCQt4{k`31eC2JarC5WtER*h)c$9OgcrERZP*5Gn`+DMb zlJ;YL#QL3BHY0+I$62FUzqy>hqWxn*cqZTcg_-l)dk(SqiiKy9@3JYY1-fouhj4zG11cNA3yi;FYtkV#d8H&%3*OoMxriNx1W*ZC&e<@pA3Y>O0fBW;bZW8NCA)71x@LqC1#VJgN%qWV?C-5)!%p(38z0f9kTJ!zV(45YtjmY%zlir=<&JywJ?x%edZBSWw z`H~M!1tfLo9I1{=N#J*}1IM52&!K>hKLdHY^;6#IZ4C;hq9Bg`2m5kV{W zggpOkWVT@#0Fqt)P?eQ&e@Z`^QkcSTAkNnOy0l0;ShJl|-qECPcJdvSqjz zWK1P7>Ne1q^nh=K^U3!SlzIK_9JQ-AQti!C9v_oAsiBNvBv87vd7AGX(M7I@r8h5o z9${-RxTm zBc~-{eYn)1`o?Qhbai%hl6LCss!~@C{Y%PlR;kYPr<%j0-|yrP-d4X$@bFk*w~xiw zyFyKu$Re-Z-Z#9dGABz^{c+%dnbO!h%j0YH?{zBdtPk8oXq%IK=bpZNg~Rl6hh3a4 z-G_lgeT_V>Yko7TZAR_l_}#QjfarwI7RSFFv7J8|<-YkbzQXod|rG9lg){iJ!FP*hp`4 z=c+u(SobR`mRFy%NS-*1r1suI2T$F4P-&$pHJ)`qHb8THv@*9WESo!>e#&%qc+4we zHY8Eap33iDTSIB~ckjwWx;HmezE#8$9EcE;<2n23#dZI<>o!X-pI#s|i9qKjA9{b{ zw6@EKHF^~{vcenkj{VkIj5+-q{V@dgu_um{M{fV!eJ06HY zE3!S$>SB1dLWX8L^t{RJ*(RmFwr}Z0VJrU!pM9U9&&B5!su;2os;D~}+maF)sjuty z8sQCjT-$f?^dRf;ce*;OV_j)6VdlCBZmp!qKq2&_Y;=D#sqks50r`b*vYRE5YW_lI zb$jUDUg-H1b|ra8C!Ci^zVo!Y`ecxK!@g^$HQ;*;ofA@rV(@19 zl%v_%wCkIXHha9qBRkgHrX|T=SQfNU)OH-G@xA3UWbwQX{~J}^-VbY+mTS1U-fJl# z;?~9*(cHQ|VGbD*ql>ea)m)!erHW3@s;%3npL?yV`fj`-2`|l(q0u}fUUz>@B*8o_ z;xtKR)cd)wrPR0bsOQeF^ggG$*uwWAmHpHWucH#&YIllHj`k~_Y>TmeqC8x%c~`Jk zb2^8@OY6yf76@(Zk}>>G?Zonm?Q9S{6(CWVP2m>K!^OjN&U(AChar%Ssy zz$j$Uc#8f`e8>IzTYavi1*t4AMyCyq88A&>|FE!>bNW-EfzZT)Ev5ZC;ZrmU;qk8{ zOrs*WOZS9kn3Fc-G@Hwu_m?iW36P%%s%`SxJj?-8PL5j{S-ZVXm*{%3-N9x;=$lJy z%<|a6DxoW13KO4eli#3nPp-?%U{DWy5koZ5nfPwy4RgOsJ&CTxv7p>mu@hn0Auj?W z;8OnfA6n5gqoJ6d70G}{!jZ_3L)W|nIhy53g+5H^IiB2HR8;D7^^X++g_)+_RCjwU z=yX03oNM&0jN^l&bJz}~ub1-^nK-A#4nb@ME!fnOUoyGJM(a%Qj&f%`9%g+R z`sMvepHKS=rSb;lRJ~hB25B14#}iMHb-p+>)i~isz4ujSkLE1V6mjG+hBt$EA_NWz zPlPUd73dYeeC6g6tTT5dH{h$;EPNg9EUEf|^!oYwf&RBG6MHAzv;1^TNA$vi-?N_) z%1q6^5q^1Cqet0c5L7isPen0Qf=J*Vn|FbXXg1X>?px<|$nwi``yITaZB$~F(vQFY zNP{Xxy7qr`iek{G>M4F$GFixTmpN!}*X6)cbKU4de!2QVC6op-x9{x4u{56MocnOu z@!OVd4&t(V1TLA~bQW>(IbtzckmGh^bif(^V^4z0=O^FiJhOQg8~d-?F_t2a$zM%< zDpq#2M#bBnM*Pz*~=Op5$ZRTGB@(3W7EWCnKkS*WNmee z6R70#Z+xMCbcdPqX!GS!`hg~GVR;s=tH(aN+KR?EpLB?w&MR3iuUsj9(~O8S3R0J5 zBp*?(NN8d@K1OJ2roG^xTb8)ub+N_zxsuY=UW92QVPbZyEaxDtD9bICo5ja_8e;J@ zr`dHVjy07ZY+11GBQf9_@)f;S?m>X!E@5(=ok@B&@g8Nl%S`^I~n6`QE0M-`?8h3+wKwb9pF&XQjr zYdoiL>mZ|GmcChnlR%cJm&p_fKWl|NiL7-OR~j3!*4*bLhIzM|W<$#nqpOULVsF*V z?R>_aH6;kVU&e4;8~H_Au#d67+bZ7Kg!iP@j$niWI zjJXk?ZWK6=pd^`15dOH55v+Onj89M>>-?MA^PA}mkLSC{tjEtqN;0lL8aX(A$UFH; ztx(`0%I;uQqADKV1u1Z+WZdt*dd`B{Wik!vo?~WLUhu;y%?uiqM=n>rJaVj)G>Lgu z<3gZJp!IQ@3QY&T?77#*sY8QZCK5}YqsUOgopd1{c+ISDu^{x}wD0;>F1gJzdLWq_6U|&;T!wM7D>8lW%$iDVHp3 z%_cA}m+a+do9r2vKBt}vzC`C^H)il*=xzbpM6rr47BigH7Ro$X64nvHEt=TPY<9Nt zqlO**J*Pq98rUOxX?jVe!o>O#6(a{#eHAq+lzb2M^Tf zUzOf%E_CH=Fq#lo@NeRT-TH1M~1O=GBSjn zfalJxd1uR|*ACfT^;JdtoJ*4R;9y-D@9RMkEgApMHVctq#Br{2nDp3ufza>hC#o*11RxOQV%&7W9_xrfFZsNr2(-`)V?^u+Dq!?m6s8O-Ze6A zB%KQxxeC>>$RrP9kV+f=W~50(9mem`3GuD8k5NPYWAezUU1~4Njpd%k&rCq=R@ikW;|`h%En{ zpbmSMDLT_#yuuPVqk)T&S>YYYd-qhj+v`{AKNabgkJRG0FPgHY9=(9T)mU7koFHFM zExIjd5S_TZ{NWTnloPqFzPuC@Gk4hwb^qQIF-nmat^!mL=U&*k&zLONol+@|1F_e| zZ7Jl9X}FsHgWhDxqfdydV7rsn_xTEH@nCLZ_5(>0*Q1!7ab^WwU6&1az<2V68lh}6 z$~KX%HW4u{wp{V)3AEMxk9YD-k;jZ+jJ77=A8Kg}P< z{79M9zSM?4<}8)=#oAPJ)x=f?p8!e8%WmS8}>?q@5qk+>6s&CGJm z(+dRLUr20Bi+UMNiz418B{E~zzrsRcdmUEeX0JS5EOi}J6Ily%0;L2uK|Ro!)5fmO z5sph*Mwo4D6F)@0RHnp9dw!vX+ZZyBIr`YR2zbe~)4;q!6e|l1|LEn7ieD_B({$M} zb8s?&m2&k(zx+h(t*xGH)32UqW#^j{_wTjbDR@KBvhZ3_@^k!nBf=)_Luaw&xEl3T zC0wni7y>nWYLVQK$&_S%3-Y+lyNXq`V&U7L8VN$C5Ano%>G;>+H9A6sr(0@*72XUn za!oXKM(9yjCNN7&P7!~f*CSS%6WrL9AspDJ%2LIhV$Fv*i;|h*d@aTD^S7+tbSGJH zKNK?UsY786v-V<7!zOmIMXl(C&CazRjd~j~V)L2c>#r3kzJWR?EY-An%7jGj?)Du} zFM0Q8s1Z-?>kwI7tF0t-+xWzlB}@^P&-2rLUC&KExKm4o==2xgKPVK5EJ}nvn}%g^ ze1V(vryx!t>=0k;TCVcbllRb`7p)hKCl1e@S4cm9yx8`jBh8SCPL#ZOC{^*2Fi%rI z4`nqEtnqUdb=QgL&5+nu>_^_Y>?z}mcq4%1QhA*yX{qhUlVZiuiHNHEkg^ndAm#k4 z-WcWS^XZBNZk8iuV<@2}N+;~_l77rruX#pkowsps?J3eJ=rw_BE)XGc$T-imM61|3 z1Gh^n1HN zpRb-%vG*D3>Q@q~$(vd-%slw+fp!fCyeU95KT`$bTt(8ZUO5`Vu8D?X&&h4`-RP&| zPc<*Z-s;iXHa-wZ53D?C^cs%B+u_>Cge{AVHqkl+U7QVCCJ^Z&xDB?qbfP@dD$66R z2{k`hJ%1@ad_69pcmwTAA2Jjp7&QF(8&R{dv+E5nQ;izOia=u<^JPRbm2EonL}%-g zn2DJ}qNB+c$G$&XQm&IX&#@0yjD#=EuS9n7-fTSQ;~qeB5zPq%dgE3G>xsqt@@TQ~ zy1bwlJf?$G>E0+t6CIl6ou@~VcVY)*XVj#J!8@;aMh72aU2kLJs!5D;S7}ajWIz5q z9ciW16wxYvoIwwa*Ud7e`HoueHA9^Z=PWVa><;%vPBq4Q)@fVeCr(F>Rj8?o5$sl^ z=r}IdW+c#uy|*REuHlCjvj5iWFI?@)mQcDI$uf6Kev>qvGJQz?y}IW%iuay!{--fS z%Z$OnQbJkvo)y zNGdOtecyt0+_-|53Fg!ry3DzDVLK)rJ6V*d!)U-=m#U3ReLtl@$v%-2H`#Hb!o#{) zN!s-N<-I#sS1AXdHuVa<&BGhKLRRDSw{Om{ab6}}k@(ioE}(lY=Z!xoT*N71%T#hg zwLGmM?+J27hhBNsVM1i|VJdNW&s?zoZ_Q+%H<7(NioHga#kJgJXL%)F^Os{ZlG zJKEJ$LNn$0Mm;Y~D&6UbFBmGv^g5LzA5S66$LPj*p5l>ymqy zZn4;Xja)%Rp0J;h`7@K(<8Hi|K- zKwY`2&*BRtJ!|#F`ym6SLwNh`TjHMP?1=4VWkim0v7O=Ck%nHBhoSMJmKY(A4~(1N zTliAC{fVL*PiFHxMiP411AR(%MBXkeKKaW};WR_{MTV1yzB8TSDHzEIv$@%_Qno21fyR7*tPy~76$0e(5E0qjO zx2*0}ua-hd0nOCC*}aQftzzET6|QBmthMIMW7ygs5*TjFXA#ZfXUg@OBa)yA4ne&R z(@hVm)!ZHK7=^pBbrS<>konFJm_lyxA1Mw(-d#{;ZDY^*f4OZwcJ}0w`Q^lCEQ^?& zpL4oy1xe+uK&#;hUd-2m@AE8OaRyNj6+wdJ=&IvptWNC{-rr;~F zE(kNvL3}sE=5=|6wv>b8`LbQb*cbicFi$qW(3QVL@o}a)^E&R4VW=K0sot42A!tj+pe zUrxc!XQLI{y5~5oluNQ^&q2O47TRt+n~-vtaR{E5ru}#QKr-5tx{D@0%TQ2|_Kf+0 z+y(bp!viX3v>(2D(NmCr*w_^y*d~4?*0@!J0W~v(M;W=C!bz*Pq#n;)Zlbbaw*YP~ zcu2D`9!==0%3an@6O)E+N%aL2oXtZ|J`%Cf`{UE1uh3=;np$+!+7P9NkC6q$G_=>Q z>r2Xr>=&HR*-<^gwKNp)b;_DQ@mYpktb(5{@cip0JW`L-&LDg@ixO5(0aiS1N<+g=P->!t+H$@Sv1nw?3D)T+OBhPx^ z>Kd&y+t@P3$aXrxmM!hDsvRmghs0AOU;8GMWY6)W^JTtByoM$Mdzac9!Tn%6JI zw3|eB4WCLH1 zaP%>1nVh&m&r!qseojfdWd6X&DwdCYNY9o7Et`~Cj8>6oL;~2hy{ksP4#%q5Y+OXA z8*T4D(s5WQs~P}O~ebwC}$XG_0U84BH$(F~xq&3sMH`v!Fy|tEM`ZePUje)PN z+1~<-l{B$PIIRC;YQkwpXk=dr{Cg+oVqmL-#oMzJ)-ew_u~>M%mF^(;#4RGRe9Ges zyex5{L@pRN>m1xbzd$MmP~HCblYsq#eDG$`V@w9-twbxtnFrH?;! z_G6XEBD0o&Pao67p&8Mw-k3goNQZ+&knL1!3O7@;ujo3B`jR;n)m=x~$~M^(`1Akq zXL~8HYGYid&!wxfKFbn%m6#QtexLg!&epKUO2zH@XLx=bn7%VLLMtWV=6}>QaVH}Y zPGsT@d3SE2wEhXnD3K18$`92C~K~LVZsB~o;GoD3diyn+s6!n!IshDya#_#Q*Xc8 zn|HMl$Y1oIB%P<48U;)VjMIko@y}TOb+o0#CS&axTYeOva}K@B&;p^hQW(eVIjkj# z(+`J)PX#hC8>Rv>Zl3Z&MQPON-xeawk($^H$z6nC7+PCuyw^5xKi<#kHnBb!vp>^*+!m~{Nn93(;mXWITsI+#PfC2nVX=`WN0pMOH)5)CU4 zAJX5)D6-rc#U`2{pYd(2EId?861Mv;DQ(n+E4sGMk*^0)tnZqr!+g&0J%>=hB(U*| za2?yg6sP(D0@^^wf)RXsB8m64*LzjmQ0+7oo7*-zr5{{n0w1S+rEvqiQXL#b*Yp82u@r|cZ-pHj_%0;Dpp9A7PP92OU@GgGpEN?ZU{xF#T$ zN}oE^yD8KiRlIn=mcw((mWJkFkPdg=O{`aOv)%}*XuroRpxyOvI_`^IDJs$C%EwJT z+J*v^PDm!SPT|*GXC!A%;EdE1p`6$lL)+ngNH26m3~xT`BJs!`gBdh^v%0-@>04)e zV&w3Re2XGZMRC1q`3Skz$2Q^krYc8Gd(|w~b3Ny0^k=SqT}OwnSiZ_9=0<95G@MFwr$(CZQHhO{;_S_tf<0@ZQHi*?Lp7_ zCC*xBus>z?jbxXh6m*Bv+hC#wN|}E&htX6|iSa>A!g!pPky}&ZH+mH>;`F;~HCi8K ze4Qfu^@ud*h(1n%bT*3UZPh5!#b6Opffm&ba~By=)p#q221eB-C!bOp^!JvQ!OHY{KzyAmLU(@2Q5ZLWfX%G%@J*GoWN@fpM&G;+S&LE2I)3j< zL}1KKC0niaxJ+75AV>32W0TJXK~EwmuFrJ-ce99U#++KoN87j61QM6&dC* zQxYIeQqLqdOO^;FaR03SB5RwAktn7eQOxr#JK37WdX*C&4?lTFW^;k!^;K{Jmslp1 z$$|~N!)I0o>a~^G-IGV>AwU;n^OH5{R`fe+mnUss=7qdK);lbp1sq=7#jMFTRR=~* zX1E(NW6T&7*oY?OghZttvd} zWCm(03{Q}?HS)nSyqU<4tKX+$0lvidB67dX##$h?Q5L? zqJl!p`eXpIhy-zVoUSWqTY4Kz>3dZLG9)-Dk_~YGoC`Z13j_O!;WW`}6~=y=;Iyxo z3UKaT_RuYQ@RLu~AcFGFw(WWwUbZ<@!ze7bfs>E0HOW~~hI$ZY{4AWVPMZCDc_3Z`oZc{{k{o@&88#U)`h-B{~^gn{xHc;&Tn$h-+5mg9yld?B&oP>@cb zwiGO@9&$n@6h1~Sx~_y1UwKWVtj8HM*wdfQS+b=08ja{-k(0jfx_18P&zdVro0En~ z7A`-qQh_b=BOXs}-#vP-K5Hj55o&>PinL7j-oGyUnjk=9utLHll$_74y!_v`ZEDtn zQ?XWA3c&xSQJ{alr z>DrsyA^X-Eyz2JFM)?LAkWyOU#U6C1L(DG-f9NVSKe)&CCpRG}$u#*v3Md))B{TST z*)fH>Ss-{kz;its5tbU}Giqfj*RWh0_58Y5Ym1yfK8r%V6M|SY?qqgxRF+XG-+s}x zcS~KOcgvnfSDs~SjbHxUg+w*{(1S{Urlr@YDFxyrFpb)gbW0niKV2;d?A{}XoB|x! z=CYMBoi2v*m-XwovhVu$V+kL4l)Uw@8`Sx}Ik3~#aL^dgy@6=l#n=A!JUSF7L2q+7 zZu4zs+f{yVky(d4*4OA#Uy{D8N+(0u(^E{_s#U;5IfDzB2Q&7G>C*(~&9Kv#g{AV> zO?M2XAf+#wH1hxrF;Dx54wMIw#TjKhu8XjKf?cE}ySP=b1oKFjx?XpjN7>qm8)<|e z^)H*ZijMHro~x>Yt`Z7#+%vd(60A6;hKzNf2#n7;CA8AzVPE?@zH)GvYXWaGh7Vh_ zvGsU9AD)KjN3VaONaawZTtp~0ZRVN%hH$wP6+54OWQ@dmRNz9Q!|vVuicQS_??_Y6H+wkY+|ZVVfE>?6%N z+B6~W3(!ZCrq;tPbi-z3!MT;+b&gbzd7CQOR>Be0A^h7$A!F{2aa9-LK1a(Lj>P|nQUE<{WAK>itLPDyY(a3HjOERN;I z2e((R)67_+a7rGa*b;6yxqV4rmYS>b7G=F5B^wkd04J0jQ@2F{Gcv$n9mo#bK3@LK z(#NdZT@ls5`;KOiDFAX&330VZ8TNM@vgv0PaYAreI{!N2A9xCJ<&Q#Ic3*9L@&C5-qWO zgiPFGUcT4u>z}?8%B`1wh&q4W5sc&Lz-s$w#XX*GAn6>=xZUa>2GqK@8C7b5kz4d&Oog zA}jFPM<5%Agj}aNpQ+W_ggMc>gAN*ml7Hfs$n1Q)TpBMvfUGQgAR=s-WpRrRxWw~) zEwy!D!`{IPUuW!@RYgE44kYC$Aug~JLv!dPL#_)$`@ua$O0C^DX<%jHg*cfG92k~^ zx};tD!ARw>x3j6=irZrkQPH8yrx0c>PVVxH`-d}G`OZLIb@iF)o3)xmWSX-^S zPe+Z@l}*!Qjt5ppm@*Eh!-RNn4!2PoFz>fxq7TS~jBLwU%Zu*1v2BLMPUH;! zK^xGdXq8%(eZe+|Z z2wkHXWG6R2wvi)|s|CaA{qwG#Y$q>MikDSj9@zMd5epVjIhG@bES%mt#CsM{Hen=;H;Ufn3CPhZvP#bb4x^773g;~n(-bKmh?0FYZkJ~Xh!B5L1m_PL zNe)XecJCt6fZQ`^9tQMIoAgvGnmfRodYJxny!Aq=&O!(?aFclLgq`Dc1QwQFvPpYJ+<5GtU)Yw5 zyak%Xnwv!%41Nmk-T2sjpg-idwX?Ze4wJ9PEO8Ewc>fp?z4Lx!+_z}uY2_PIQ6HRm zm8=HjcB3k(M*|M5-oO)PChHBsY~b+ZJ#YP#_XOSiN-=~5_=Xg~`La10Xp*v{q@Eg& zyEh#)UgM!37EsdD?GcUz86SR=*|(J<4FGUMRED!mIk3Bov!f1 zJ=Cuv^ms4Ucitb~RPdK zClsrVsi3;~Lk&b5l5VltCRNxnqGu|@hZ{@{d{_`UQ{rF0bS7!y#+2M2{SneAXQR~c z$ijT&Z;OYkIW}WB+^89NQkvZd6(sL&pQmT1%67G9AtBQ z>2SZ%Zy8C1l={DpS=?kekKvwI=mp&uws3+a)6^>CHj=1+igr?MuH{Tq z1A3G1X`QY5+$ML#L0}|H0`v@OG)yR?gsqmyk6`p-PDs5n-gyz{ub z29+d>v8X6OzackOY~9L3-RDR z3WY4-*EOmwm;+2x2K>~@{!TEcSwJ#Yr>EF5{g1_V&3StzT#j~`t!C@^ZeK*sOe;`Pzs>Z z;GRGL_46lFnc<1w`8%U)TV$^j2SiVmZO$!ykB5rLdEjHx6ksyTxevn*9k?*PXt>AjXG3exIB^&-XYt8;&0`j-6X|Jt}h#&o1!B+ySpVLQ^;7m|3 z?8qWH*ox(LeC{1vr;TMEbo&y*0g9h6!1AtQ{i;|q< z2rTM5i`0mrHV>LLs?RSGLl$Ua09SiLQe32h!*X(m_7>&w1l094eIpo>kd_2u@-9Zk zZuXq#O~t@Y+X_^~qirO3!qOxD+s;8-@O1Fwq!Q#Y-Hp12hD`9Kj7A%JY1Mc>~pBC441Bg=4;szl<0enlAmBY3Lp$i(^tZx$du0i&Hyohpa?7 z#x>hpY$5-v?)eFKm~-8%{NyBLKkXJrNVbpbh1JgHQ(d80S=M8fkK6xMEEa6ne%0sF zk`1;9A!>7!DzP!cH*e(Ix>rL!$grlM1pp1O&KMj=A za@acJhP8sp>;SF->c!$Udez3&)DMEU%}NC)TR$;X$ypT3uimCoVR{Nb!PAC--+ zqKR7vVi>_3RK;Nu1x#K*aR!r(sELVPpf+zJB{vgV`0u}w*}hZu)$~L2qQ)24)>+0I zO4v4b+7$%{&H0)|02@_4hTALu-N383J;;?A1s(60qzXD ztd^jC{G@dX2#~ZyqgXSdO#MmJEl9T<@iE%NM`-Yg>ek_~5kkpI%2~`K$oxZF8O$RH*8}h7LwH5!&t~HVm zPVaoz32qrabj4)?@pcC+T4EB=nD!*%*<;o;HZ4nHsI@>(?eif85VcT)*zFy%MA^S+}IGU%Bj{ zyn8>;zr@TJ;tKyyJ*jY;V;5i(OeD-L{*3|(GV=wJ1oX~39iqm%CVrIx=ZU<15JN+P za8sdp{p$|;c_3xWlJBJxjM@m6Q5dY|PCsQQlp%$eJ;uv?$g`L88`c;+^k!trxVGO% zP!41^a_ehYIfBvXUy|0d8q7VfaJ9H>xiOk#ku6i}YV_9Wgxcc&M4Bz-G+Q+nmiDdk z#+dUn{>x@kI`HbAed+EdA|{L4%v7aJB?pa!2Xbqb8@sP3GPU2oL#kk6KP&a; zvd-)*tIMN#Uo9@O4lTI5jsH&iY9qF!SKXHN-Ef!RdwYJ*qgl=DY zOa6I_!_mHqdbsy#ys-eA9-^MBbZLG?Hgz`e_^K-8;-4TJ)?1%Tw?-;QtAoOJSYVay z^DEmzC6A!m5-+6|c-)?C6u@w(b~GpD*C!Dx@ih;mN_plIC12IzSg#$h;z2iWeuJEL zAC3m4y)AD3m{qa~i>rPDnG6Cx4mAPzQ<7=pa$oo`o>P7g+w-r;-Zc_)C@U93nRidkHdov> zOR>#6Ma1Bz;)?9RL?3k{o9?|Ggb!^opy`=c*+ z*oMBmT7b1sTpT^}$>vSR2<5S_J5P(`5R=jUvsp@vg&An?xUP?&k$spB!WVk%RID z*hog+@NQe73E3<%25l%9q<`)x(s^kNi9zY=JIA0SvnOTh#k*9lwL85vIFn90%r|eD z5V$IVD?z0*tk7+ESPTjM9Aa3QriR5<<;HfaChAY}vd6q}iG7r7q~Co610eKinbev* zffT*!Tp^Ab^zM-W>*wl|sAX^{{oofo8-E_cr9LIcQ)yDQQ~pcpY$QioE(X|3D@_)+n1F90ko&m0$)6eqz4k>L~(A6wiiA3pCJX;Z}K zH%WT}Qw{amz3pXG`RrXrf{}j3mv)=5GT+KK6lm@f454mfWiOuU3--@H?x&?lj*LKE z;+J$hK=!N%4ABLT*O#Y2dKrXIISvtPthd z-C$(tzkFz0VI2%8Aiku{WzrvK#20*zNy1tIbAAyXWXg9tn~kznK{f)9y;HiDL3cV$ ziBl1k9Q!l`CFF#c_JOD$#ez1DGky>Jh@`MC`9^G~7 z^W(i8-vDIaIU{EzBw!2M%ePj-vjtz+)#Q&a=LfFcMr?B(7#GC!Y1Pxbp0(?S;ASuV z;A!)5$F6(dV-Z|B0SkJ1BqQXD-IDt(6dbC{Q+d>s31t7{nL}6({N}#5%e25? zKaH$0Y5~cO(ukiB4$sc9yj`=c5_3T&%FH8Fx_ zrS&I@fmU685so@5${;o8pL;o&jJw$aA3LX~SW=Ca zZG^94-n{Z7A*;BTF2q1y(C89W2|*LF;|+#~{W+fOoP@{4&k|(J+QFOo+QdA_=l!9f zNvqv3C5yV0A?&~J6_95ep^|Du6)g8O6vj1#gLr+Yd;Vc(c%cK1=FF-};p@`SM^Yw% zWP$zPTk6l!tXwNh;C*pVc>2N-%7;xFs`I+meH5@QAnmu!&B&IoY zw67trcc0l08+!bnNgcF&?OflJ*GUN<(cQplfj8dniretx4Xj3nznNom$RRTXVOjl8 z)Wc!x;QawxuQv*W9#j@^RtTwQO^Hn-IMVzI>SjYU3E)0*uKz%H&!iadKYUbCcMh*mC?fCsDi_JHgz5ow9vsU=1T7@C1e4j z5k*u^eCF!}F;rZPTQ}9wC41%5BH1)5lD%YX@S2EcLi=dwAb*Kt)jj!2MwgooJsA$L zsmoM>5Wjc@BP^8t-xqPP`u)qgp1~c_7CB*RkCtd()!7B3`E~*1Dd5{cj7pC-(RV_y zA46rVM~cEz6bI_Ps0IGq$WQUO$7_ymv*$;AgBD4pRNBQaN_A&;Pgf~FMuPjVP=YdQjrktCtcRz$yw+zf`j zQI3D61LbBHwA zIZL+7RSf(3n|UMKAH^Bp!lp0EuJEUV#c#tQ1@B;p@>@i<*T*6qg!rl~ulYgxL=nUKq;VctC#VAt{=!^#iQn6J8Isqxyp_G4 z5kM#4vIKpv{kcaV8Xl+4xF=IBH;Bhb!-u=O*={jLi++5d5F0D9@G^f$x`;ZX@@^OL zzs5TECD`1r>#^LTgd^k$6fCh+n|Ve?ru49kX$2a)JNK7xLXHTfCk$bj-MiaoHlV&w z!2wce=NF!{8v|cbzxybNv7*$Mh6jCTJ`bi7f;GmAr>oI-?-5V+6L^Cr4P133O1}G> z9#adXDLk*htx>L3&E<~Gn9dogx@FAOwdol8qwajCn4L}9C(NB~_D&vtBSTlYNrR#| zb?kwBf<%J`#*-D$`qy53q7qs;_8dZSWKsg~H}w$5#&8>dnCW8q+Z ze{C|x=bC9OyWUAoy$$es`RfXiiQ@6=LaU54YgNu(P(Aj9vYa84;$6$G!~_uGHX<&* zC$+F@?~^`pCb{JRvfXGBNNm6T+6YYpgsW}7WVaB{D;a@Z#_66DF*i%uE;t>*=~V^> zUF(tSL{Yx&R0v~Fx>L5?$lFJOrJ{T=HW5oGuDy)aCVd(o-fMwqF?vds`2jt#MmFsW@QU79I3~{EwKbtN9*Ci^U8mT~@ ztA`l%hEjj?q8^GIefgtK)-5?Udsi%3zn> z=wo(zb&mv`CYR{ICrvS5qRv@2l4(BhUt7GsH^CcE)A=C?By;RzgETyuk`@O+SJt)X zHoH*=Ekme8<+Cj+8;ewyeN;iD|NB- zOBxeC@ceYX=$Z=!mp6ARzU?tiomJegYR74kv>O*H>2^ldY!Uc>kg)oD&B~#Kugr_C^^mVH+^DX25e1_XkH8FeYb&F&EPTv>*Mlhxj3$Hv^@X;XaMojaavpl1^$74oj*48a;RWUTvylt zP2-7QyD82qCjwhbY3hPm^Gy}KR{xf|@5eO*GvQH~97Nc^Gvr_cm$0i}TL=?{x{qe4 z1-%7-PyVpSY*zRL0^KCxy-nqrC9XL20`d1@!;249|$g!|Py(@Nn?CM^sL z{&4!kUEI_ZikQ748_pz_u=3X>W2q5bryg2bS`EbH!dD*_loJaj4ae{_l1KrjZO>zB zxrqJMk099lhJxdQ;tlRoJTS2VFYcsp_oM0F9vyJuUxU@6Cva!!okjd_t~hy=p4|xD zq$-sqU2^#*<@#Z0*L`f7qq(w3Q(Y?}{_)IOZ9(M^kn%G8ocD6=r@jG%;@DAaKL>;|`mU1#O)OP;W^ zI?!rzAr^zm@T(Xkn^W^H!2}I{%|lilT0wvLp;7@?fEuk79T5^6bQN;%#j|4FdjLAt z)@5P4Gc3d+d6CtgW912JpB+;WX5?k`#8T3`6~gS6*Zm~2+6iyl`4F2pbX&(Qa}SZ(`^v|v7^ zRj(wS0wME>3xs1IM@ou56kJBVWbGu04c!{DqG&Co2o{Vj#;d)VuZc%m!jb3zc{niv zq4s5cs8jnGZwxHIO`a?7scfg+IV(kU5>$k!oG!)iUlcWSQ5$8463?@_=PftBzRqQw zfNJXJYM|#8l42-)`R1f#1vl`EiL}^g*k9a#myihpXvcpPe^iZe*{ZQW<@v*r3h%HT zEE4FNhMl+3jZO&&hx*suf=xYkvA?V-p>$Qc=X?=i@oL%p5D-0Gc%cX1r9t)8aj1VH4*-kh=++x+p666+4^hMGhZu zUZI~@#C)EAkW>|_AjFU~-N@3BC^|qS;OX(zXUBy)6RHOI#5|;5CE(%DaPhd16=Q+) z!^ZTFPzH<1i5iWc7V4%lymR!tzEfkF`|O&R#0<#%!*HdLW*hezKP$x{zK^FmaNeB) zluw4hl&>??iOaF@+qoG}3A!y_sl~cp-VL@Yi+avWX5Qy8Z@w_U}o^EtbD$6f#V&6&^ zfhLmWX6A-M2CfkP?W0?w?b`Hj8kk&FYdc;hF4Knmn;g#{n=iRX**#LIPq@XmYw;!L z&0vybXPqeD4s}9=qDD=rBu=q#6~FhZ?S4j1T)^`?U?vl;bBuk2Ia*zESP2XWs@lTv zIvJ{^->*bFTfXrplz*Bm$)S;GUFrhzdj`hNJT&O+no)I96+vD{0@#IOm@vIK9g*_m zc0Yoyc3GtG1>$}1Nf0Ymp)sUluH_S}dVHU%fGS9kemnVs@Vi#jK?*kVIzTL!2*+Y( zLg-MnQ;Z`lNAgRvI!au%`EwX`KwntHjYfKb;&YTPE~w3{<3{223>wGMKdyG-caqp2 zy-vckCM3!ca%ImQ*SRbY)gb7-H~4Cu9CE8VdNFEzY8}NIiaGcPH6GlgSr*bV7qOJ# zc{tB3!gKB(I1;|S-hQAqXtA8(EFBAldQL{+&#9OJK8u|l7wRG{$SJ+0nyUopu)=|;-S^LS#qGd|m#FY^rR4CPG!i8c4 zP-2c|K z!=_VTZ7)&bCw3(~;F?&)P^Fr;1J;TWP_6^0&R*8DG6YZF2W9L|8|i5nMW1m7igA_inycfXx3d? zCBwn)YxZn40!_OY?WUg!X%N2~C4%M3MyzxUMQ$xU={da#qse4Rs(FiO;($F^P4UP;%SWts+IC+4J_hJ+F|_;X+8AA@QKQaz-*YM z(zQa=MErg`=@{`frAUMD@?J>wpzv_K39i*n^V(Iul!J zgyA{h;v9xZs|-gNSJC^%&mdC1+7>yW`*@74oaW~dg03j7?t=ZdYf_7}#Vb%?F#XSw z;_`%y54Y)_uE|omWLSFzMDumu(mghnT^+`7{v!Qr`LGXIhxFzjWwd6**SJiN0Gtfz z{Lj%ZeeKO7Pbf3fAx- zX0jQY21s$HFo2`ohA}r8@X|jQp#*#v#O7Ut%wlXhe(Q3?34PQze~EVv@gN~fqYH0m zTVUu9oZZcdvF6Qi7+~+Z?sil(h*#YH&l1Vw8y192H4zn^p;s1*K;OMsheWjV13=L_)bYI@SG_dYxHb~KLyztcOEJ@}q{CR?#kMU#rr_~37VSN63 z?B4g)Mj4a`2f`f!q)5rXAll6wtYR2LbL)hh4Qxdw%5Qkbkj#&=BSNCks9Hj z|7I9bfo%ei|2la;l+S{Lsy-6Q48bBL8uqfSUB-K)Ll4RjlrU#R0gXlaov@o3yeEFi zQn=sOXbs^U?S11oeAyhxn>@wv1OvE8bro|}(YP3&cFfqJPNz=VZYJ^o6SSC{1+s2x z!k2W}G8jLTw4x}E#x3gY7K?LMF$ch(>7bD-QpK5-A@i(jVDFK>m^t&+0DxcsH?n?k zBpYI*3J*5m&O04_Ht0^Fste}3+zj6I}HbW@oqRuhz zo3LajMXTn1#DkU29oaJR=QhRhARuQZl_VI?aNALDQ!wwaH;r(+v_ra)Fv-f^1D61N zVY5>_1Z^cUD5hAj&Hc+yWKbZ+*y?h@f6o_DlN>k*ROj{KZ;7omDiiPyJQ1X^hh5wHu$d-bYHT3M2jSif>K%V%;WwDz-op$>V939!93Kp}%+e#(RAjY+7Dzvn80 zKJS%^zIc}CtO%k(aiUbkWuCePZ~Kg?tuoNp+?S}6XK);CN2-Req9*Ceo9a;trZOMc z$crIeKe+v*(X&yOe83+eIy0U3;j9|awQ2a;MHTl^IvstezEMm!+sh*YtkjiB3!0I+ zG=JB1&;~L(FLvjMulNESaH*{GOe0hePryay@uON9?oWRneU5O*iD6^DwK?C=h3;*C ze*gp^WVINR+Uc{j40e5q_QBcn%7N*1D*Q-&lVKK`l(6tquM$34bXD*=8~8P{L+14n z_(U}nxxM;PAv}l@ThY(**KC+NrJ(HTMed9^V^r3~eQ$;YxMJeDPWp0L^G8_3#on4v z(EQ`TDoAABbM)6HCxQWI#in%E3L@!Aw$pIj;HHH!5b_a%5G(4(nZ}R45E5`QA{9YC zr4I|a37{l);HAkI(INH=voFLR3L6XJHx6fbbb|-i9*~RGsmGJG;1^bEu%_~Lh}hDy z5)F`2`iEh=0FLD&4s?IQ_D^cHUk5OvQ8fDTaI2I2GKrCxbo7I3q3-}i2q4L55>^Lw z`u!QiqCQo8=L_6C>h0Xb!k#7;c9XufC=*0-_+jOs)Mk+yY4=i zNarv2{df?C>LrqaPiT2bort{Kz&|sKA6?3y4TRfSOg4D;7tWmVOI*OryP;HGMEI+_KT~W~COoQk5IF(KxgQfJ2HaD_$P=+N^ z*9I||8TfZ&k!G~lV&a;X(kTV~Yg=Ez=CK418Ge{D?tWSz9nb$4vHh+a;q6;3e1BQ~ zI{IIrtBU2zo_FLhkslJAeeJ~}I9 zoJHpwroehLPOZZ7lUMUINyyVt4bJXH1~jiS(9TR(9>a$8-{|?Y@tZaBn_GRzbszIh zIBdva$ZdN|6v$*jkCwc>2Y^hrCa}z>Xd*TVvovSkcuFIZG5Ihxm^Vs0A&M^wd-{T}*^3>9$#URW0Y-DpF$-w$nxRpDxwc#M zZp2W}@ria(C=CE|N9MDIzOAN#eLzwGtf{+0m*5A%sI?-G^MrZQwT&v}(;wi=Bkm)V zsh!FHVX6LivNy7VVq^KAgy{b-w3YFH^O^rIw3YEc&fWhL+RDhm@E-~Ie?nVp+KpXI zZQIFkw%U@TY*lQwX5%`Ii;cFbN{qJJa-(d^jof+fwtVH{pI+X|zrNRvYrG$`p0eI_ z{^Kf9RWd)00p?I&CdGgOV;E_(gcjX()oMu9|{UP7M?wz_pXBS10U$9`n~Q53&-HiyfjNU{{XmCRH>dWF`V$q90|L>+1e&!0 zn4k3<{*L{YbN^|QPyDI%HWnAxp7r*oPWG97u{>7P& z{qZIJVN?9t6TbI{?*6em{ZWhmZIS-^_s;#XwuDsI)&@21>;b;N#SwmVo5b8m{@!9D zaVGhr#a8e9jgPL+POd)v&0X|sSp)sXs*Mb;UiV*?=*IlDiLCD)($h}IO#h*2aY}1= z0!*jW=*ZAYPRH8*y|YkN2um8JOn4>k>1LV`S!=WL~XKd4- z#I$URE=RoY8+=B7T#21R6!D#2Q4}{*O<^3YspM7O?XgN;<&U-usFR9zbgwM?e3+Hv z6D5}5*BZHP)R5U|JvHf*TZAk!b#RD8C?VuaZh?7Jt~Z?wvHq`jO}m(k_+tOVLP6-w z2QreySgTQ$o2+NOSTx=w^iJEe2WF+2+kTaxCR-oqUBBOd zpGmGK0Eq@|W@14X$zO^f8i-0G7zRIMZv+%#3Kt<2m)ydWW|dRIrPFXe2`0xxyTHsd z>$3rztBN1JkEhg7TsFpA1S19EzHZ={f?p!yJfp-JZDm?~7%X#Tg1JXt4 ziArc!P00orKW_U$=$dbIT88;cq#zSKi`rBCdXe?JOw-K4ZPo0O^aB zL?hqT3)@r@+vweLmwECyLygleUDIdpzF^y>+jDfXAnJ`}SMKC~%ueehxF12L%M8SH zG2l?{Y_>RaFP=Ag<2EoSp_>W82uI#nB*RN{@-)vPmYzUD8`?)}xER6e22oMhn9Ft6 zmFD4&%opM0fyKldL@^X{Jx~_dwP9}>ZZVAte!=u>-nSN9U+(jL^KSftabWY;^fY_G zz=eILzCLjb<~P;sf{0ny=^Q}+wHMusbbk!EiTe`ehOlPYBvs&|psuobOxOvlgjOpr zeS4@V6E3-LuBng~59k;p=@^P~jng2$)jwHZZ{cClC1?S~oYml#>=Ak#e`QQlt@J>X z`vG9(#rcGtT=Tda-^fiRGeXl_*QNHGLneHY04DKv4k^ZZK0|Jsm1cT;9&(NsP*?s6 z#w{<$#+S;p+y^jAEG7Vywt8z<{5xN={bQWeK8%DOlEH)rTZl7xs1n7YpZKhjZWy&J z_O7m;+)!~+WPo8Q19_g;#rB}Pj3-Q}_cAV(OTt&Frml_RDZHrJ{?zB5(Sk=E!Mee2 zs@vq9BjJwY$MU1JQE6))KbjNxhT~k;TO38Lj_$_Gf}&WM-g9&c-vRJdp#WzY zR_;D1QKTyd_(E&E^kcyNBdb5T;UOpcCtO#cyT_diAr zjf3Ar$`saJE5>1h2)BQ9CEOcTKRVyWs}ZnO}p77b&{d{)TOY{Jc<_{8qj2p=J? z_cOW*rhC-UTLej;pi*%lTG;Bnq*#WQ)>gkSY>M&r?(62sMxx6rlua=w_o%&^HLUA0 z{bcfmgCZ@^QI)!Tpei-PMssLW4j3;=*KGM^X)2<|r}2avja2Z`@5<6?E_by271sbu z_NV+Tdt{HzMQ4pUs&Si`OP6S8E;Y6$Mn8(*7^rAg`x>C8tBK=Cx^R%P5Euu9iPa|J zI*yjgTRm&I>^Hy>?EXHrg*cR;Angy$_K|FjJX1w$uQ==xD6`YFRs&vksFN}BPd+$d z{Pr7<`am&kilh!gnrpn-vsN;QH~mlGCOfPTQz}0eLVa{#9mE!e)yx$p+(dO?@vulC z9VskI?UfvtoaVe~u>C_AD&CuZ!k|*;Wo~128Ce#Z>9$O)gGg-WKQumB&RcZV_-#p$ zEw95cqcD>zeNL+;%%F}Ojj%S4^6-6%ncC=;Rc1*{DA?LWI8?f<2&xofy!krppm`)C zuQw`s=6N@acF7BLH8q(SWr&IKe~%lLmb7$Ha%x1V&m@Xd_osKkJ+dNo{z zY0QN4!m^kVHM75)?o&%Xo&-3bR8i$(Y%~eW7wA^~kH!G~P^n8-F+AEG&L}$E|3Pya+cd1|ZNeZm;4s}TEm3H;3Lrv@g1z4zT1 zPY`;8+8)awxG#M1d&k`fSa_vu}ZIRXA<5(-Gin3KzN7M-csCDIJIYfpL(edNs#t<4Q{dH!~-s3-(YD>WAr; zbhL{6R2%R0t?hed`p%3YhyQ>+JHd=lqR4u*3A`%k0_okwLLSE3wCfwe?Y&tpgSz+l zByBAQ3kV!ksyEkS$G3dcWCK?@TAMP~RTI*wg#Gj17K4LE>&f+GSM^JdX%rm-S^go> zBI##&^}~-n2sz%foI(?LxX@XyY@#JLN1Rfp)mQ#+SF?1S*Lm9mIU*td(JD-yC_ZrM zzq5^BZZDFo4wcPR{8lhJJ&zU`&s=8Ik0?5N-u-ZX3a^PD+3>pieID;jG77Kd|?eOUZ|CIgd~P2_Yh}ZH`kD z%=$}-3FHiK=&)w_iK7D9(TS^ctOvQtv#}W+LbvrHO4aq0C(~iwHg?PANi@1C$^|Ga z=lxiqSlF~$=bi}H8-CXCWX?THa=+y}z?FdL0wf#v+DN&s3uP?AZ76eiH)R2w`0WK1 zE#A}Juv(nlJcap)Euy3jK@hqb=XDNryfm2WDVQK*N|t$!ATL2}TyxCu{=!^s2fmgy zy)XD2;DnSl?`NdNx+Iby%o$^|Q*6U5dM-$n{p+;*U9h>ir~1eO!3?3Kqy)y?xrvCj$9Df z^YVN-mA7{CZ~RRebo^INznfT=Yu{6iDaiO=ua6mC&$sAq1IMn;py~Zkj+PpR;^D-LYzW2We{Grg=7P@!oW?Oe=*KF65qpi@eE+WuK%t7x636 zGm4@qb%#fQ55t@YQDK(Nx6#Xj2dx=aYQRWO7a!#^8iVA8%bLYj`Pa)A$tdnng6;Lu z#9L9rA!O-JU7!s?z4nxrt-dJ7okxEd7eK{#_<)@u@~?<5Kr>jmi3P||&4txb*#066 z3{ab!DT!947n%K`My^&tX5Jep`wC(?5GGR1yY#mSSza2rgx820DzXMm1uXTA2gg1ZT?5eA110Sf};E&+FU3$9RN5xHXcvMpUC zu6R(wp?g0@cr1(!q2vjs-lM6?Z#cU}<_^asxdUo=6sYVOjXzn8zDySJhtJYSchC`?9U4rY#@F&4z)!aD(+&D8rlj)6&N$~^}4!S3=0y;kmAKH9$SiB zmm-_5Xe*HeWb<-OBNNAGkc2zsr6`ykg9DYt**EbaaLk|evPV`+Re2qmkgk^AY;sM$ zTq}!fwmcPi1|V5h%?yV=x6~FVCJ_qq5UNJ1lo6}Y&ahk4YtVeFt$BgqKD6Y8A2dox zvG-hz{aFxw-ekWrB2eZ5iwYc zX#ga50~*N=L3?W^tArcl2&X<%a~?&fTk!GaPo^_XN(!Hx zvcrAj^INfX5d~47 zP@P%aKfX$_%t->1S)s+cjm+ctx7L*Ww(FJ#p?3#UTY29YBTNuk|1IAO&%BU@2b~yv zjB_8nYq{usi$oq7J2!rct-TgqSdPMt=jUfylXJWofXr9Vp{KI-?R^@L%D9`Ab>@U^ zTe8;08w_n&aLyaMiYb%v!0$n0NbE7WJd-piF)YJJ3sQ-=t&?ges` zH;+Q>(vO)9{otFZA_*HJng*q~c%jRmOGxpI$o;q2Z$LH?AIOsZdmWeaPT|~9KV|gH@DMM6tpU#n6T$`PNU0N0Jzl;K#bCQ0QoX?M zNVedEyb7WIQ|O9HEr;<}zl8i};Tk-u&@C!bC+_VwCr+1!R|CJQuP5P`AJ;l@VEzOZ z&-$yIx{$0jHJ%ULnBT9b*NR_hi`dz+rEVT^qR!&Se9$a%gtAMxG%>m)CRGKOzsK@C z5GZj#pZ!nZ56&D+5$bO}smb>`YnIm2JAZxU6^06L!tR|43xB!|8BhA{N`bIFrp1>u zpyNRO-ICfRR&UIGJDXD1y9DKh0a@pdfQ`AhqZSbTmS|@qyu>!@AtT#|e7M}f^3d=) z4t`{MVN*SSv{c!L{=R%68e?*SlS?`B)^Bw98Ndv%m#=^6SoO2Lp#p7k6Pak4#&0O_ zUUFjYutPD9IV<<^l=Se};jZ%2*&7j5e?MFXxN^ss)VYwgFcLhr>T?(7M5^=Y9Ei4WAO`cb5+B}lKETdUfTi_&V|D|lhAdo~49sne%QCK3rkqAL6`4mz1uYp(jWS>?F^_Hp5tIyUHfDfj9e z{5o_nc_Rp~NF41RrIW*;w9XK_PiXp!L>Qw=Q;La(6(~*%)7h21-~Olhs%pGC+IlkH zG}kHEyl7szRyYK8v>ES!2>j4gJJt+z^V)dJM^6V{AGIrEN5zwQ1D#b4_#MiowHS(^s^ zki0~eps{2$+`j}Co}p8E=pIfREB-eCEdLhOv=pp+7YwRJiq?H&8$&Vl8?&N!Y9jiONehh*ZFEK`illA^$MGC8D-=T?g_v<$T;qs(v0>|Na#qB65PT$Hy zC%tA9eljQPpx4bI_Q5HH1!)Z}?v)GFggDj#q zuYWyvbqQbiCx#c*{fL=}`7E_X07x{~Ze&{WVc9A$6Y!uRV87H~Eq6!9*?b1iTqE}% zk_qC%B_h9~8{vMV#>i7&LOhwmrQ-oMkNBuL5q5*@8JLvJqbMJCVwVnyuX-D!fgZUx zwu7o}NsqR;dy7eWcm&vG5Bdd0%5FKE+dhOX2T&V-Vk3T+z?D*Ywj8)3crpsVe2Aj!b$&24WfUOoOMOXDzlj$ zFVmpGyn!5~ji}ZkmoO7eb^#qk*2=}biStYKlCa*I*{$btZY!GkK}~BI2g9F;EBCfJ zyFE32j%&OU9~=`c-^L0M+Tv58XYzIUlLsN_=%8%%LMjv@@;tP3S-VqSs1{JzQDnej zU}O^i4wlx3n2=8-8D=6_hJA*&BfXhEP5*389v1<+;||l39s}klh)UEq>P0?;2%{se z_;J8PG1*~}Rrfuzb?K>r6LdEqtf=7Vu!^}+$#rFAJ@b;bCCy21>_3(dz-5M@>iKrj zw*eJ9cGPo!%p!BtKZgS3HTE70ft_T8#F&sVu|qemg>mGF@yDA@>i#PS%UfpjRcXt) z|F+|oi7n)e(xEeBewx{i>G3NM5UYFg9_x=No-$dA=JYZV@F0Ou7OO%aGtI{Jeb*#8 z1PVXa>FF);>6^TCXYpzhDv(&sqaFD(;Q0@pt)dyOrfTozj@qu*JeG!o$7@wPQn9y| zjz9gpuxccG=t$j6?^HQDSs6I+*3L3kO3mQl*Vi?-)ui9{lc_BuH^!bV1^(63&Ueom z6W+3WRL8e*2;F^e8b9?U(I4p4Y+1!c+$Q){tE%1$3%PM+uGXLNH=aJsWxO=Y%TrzU z@0Ibv;IlhQK$MF2Fx_PNjNWk(pWLed8^}7F&mF)9tMLv<=b*4#GSU^xpqF!7PO13g z-z7F2{@a4b<|diBZ@5*wAL0<`Z>*Gd!-6y}fQ`}a7KnA^x5>cm`4PC<6^{wZzf~>5 zl9LE2iz`8-Qi(jG1ib$^^AsxJGwS!4%$}t?9n4&HB6TdPDuBnkP=`4ikvNd_2kx^6 z_+WWf!3PZsx5y_sFCQpfwv<(qhd1gaXr~O(_Rc|%G!5`wNdD6c8`&3B24ssv2B?e| zDrz3)AvsY5m>?#J#mns3qw_jUvPdI z1~N70c8CnJ*9eL+cUQ^gc=CFO_-W3}Zb({#ynzj@9O`w?q5rg^Q~{+MuqL4~wqXR( zdVBG7$ES+Euy%pieLiy4+^MI@=NUa&u6x8~aeXJ69BReoc#Rrb-;p{UKrbFA#Aj`R zHRQ|HB(3sa!F(Fboe2urj`?qtAX+r?Cis*bc8=T0C8%t6yVYL4n9<<=xx@P+JtKv$ z76*L?QUNMxQ?cQG2^3IcnQR2V=1kdr1Wk!0CiMs-;l}#kROnIYyuOLpE!g(%s~Q4d zu^bDKQ=}u+$ECBC|8wcLHy+|rl)I9zAg(@De)AI{nt_1LK{@=+Bv;o(oOP;vP3pV&p1IV zD@WBu&B};zft%dUN%Du?x6w2#?3nA2)2M|_8wuz8pDr?JPq`SL9V91Y((x|O8_36( zCd#^GNXEFWI5=~7pPiOTLBO~>dhM`pDQ_c6QdAGi>HX9XW{g;jIwDAM=*%jBz2h^N zYoDkx&K=LN)jOHhq@#dKrJ#B%{K|SO2>n5EeOwfJ=6mY!ZM?#nqg9AdP26e)a}h|V zvN4f^;eyH$IqkV(mRD@Eg| z&q*?QS?SKj6D3sE_$Z~IN=1$l2JoY1d)Q5m{ywp*fIH;_U~y0%3s+=)o@n*4Zh&_Q z?cga$l=hXIv7!VF6(Th%pP;5g2us)T?1m}oQ~!uLhuYmzw)GV%@8To(PQsxMQ_S7O zsnoPSqj+EQ@r0mCodxX9f1~G!iBkw%eEB=4c`#3TSV~;Y*Y5%|V;gxEt4#A-2XRlr znTj8?mypb}p9Xt`3{Ch|>uK zb21r@5}6G0T7%!I_+m+;Fx=d<8rDD!ed&CSWW3b()&zazd&n17)ZmWpI9B=HvN~Mo z&aMMlP4LFflS$3rH=uTzBnNfH>9Sp$O+4#Q@Je?7x$bSA?2&t(9n;mlvX0K*uy%>x zg3K)*jhp+2sw}G!(^r|YLX_z|ThmpZUq#c8TsNnlVn&a@r(L0vj}K@*hX0{Ta$d-_ z@0SQU9>MY^G`JuMs+U@g4zsCb*aEol=?nhnPQQKdtUVI+D@GVgY${Fy`uDV-9+d>& z?Tkk*8KxxJ30a`*zediW3`)$S_2x7!{~^#RU;K?Oz0n^M+cwQp^MSUe(kw7^(&MoH2^OB^ zhX%=4luqWqiGf}FWbvb0}xhUEJrHvYkgO5f;m#W z38p>;j`Pe8z2;~PHtd!ktFu5 zn_g7-*P)U!-tH)u?{9Q5Z!Qbc%KW?7glRW$QkZ(39s#pjBvxFl>8LBYaL6)K|uEF3&7)92^;bN7Re zr8;<<1w;KAc^8g-KUmqA%^^usS+63Kf1hv>S3;>&B`bq%VjAY$_tSsz{?uZy8o+LlHmlszLrOG0du}rg z0LsHMOyfv2zDjOv3P`LwsRT!9iU}+rAaW-M7R|)=P3_u)WN| zia#6cVY&sp$BK18d%WBm^&K0Ubbep5NE!4%h->uT?m|6;zJkqI-rjz%;%`&Ad2!bJ zY26u#htvt^b4j>3gj;x1hU}LfFb3$9K`5g$TyqXFvg3B8E7bs&DRz>!aBSr1^Zhfe z@@qxKqIz|p=-Jp})^DiWhm=$w>as$c$~IfiQ26kfRC`Iepb_xpng4m5d)Mo>3!ju$ z=JU^-OltA+nBw?;W7zG93(Yg+VmDIeVe_Pe0Jq5OW?Ri1ieJx>oNU} zdh49dSNk@q10PLK^{Nj3XYHNE-_^|;DUv$CP*~!!QXDoYj{GlskO-Wc8_T#2Raoj1 zQBFvEGzxS{o3GP9Ilc)enRPkbnP&G$u7>OVvU?kj~vsfK(D%S5q%B! zmEyNtd~QR?1=Y{I{Ot!l4dIR<3*+mjL@bDBM9EM5YWad@>cy@V93*%(%yIx?uOtfr zk{)xtZ0W!^pAjRWb#+8|M)onE*dd82GkT z-|UGL)aA1MORxlCHZxZr6@*Dh1YF5mJEbdylzxlot`tV|rly;M#_Y&!3tp16!fabR zz|)J{XN`ShMomyX-^yaXD43|BQ3>-PmyqiZR^7@_w#$t$2o}enj|ttxrv(dR+5s?9 zPBG6~zM8<=XIiXSp5qRkoVt!d?@792j_;7cP{fk31x+ zXfo_WDoP*T`Ae0QHyriIgKb9vo?1-EIJ?IAPe^Y+7jDR>(Kqcv^c^*xe|<#t>~Qti zxPXJ{o44(L-iyhlo!|g>uxXk{&Eto9uMO~QT0vsytc}rV2w2~TS5}1N=cM9B&ZpEyKV#u8gSJ~gLqkH7E;{s44 z_K0kaCEbiRhvCIs?F;$9&54Y@AKK>Pz07I7Mx{!&6*V_)%uCxF3L} zRlZC~eE4HyMnGhtCHz}@e+6#l_!Y13-~szCtI>`OtC8ol#=BlGG$49e0xmohzA!KZ z%>lPQ2C$u16O=1soy6LU=-MP=NZ!b1G-lK=ShmuYj2o8gp*6s?Wo=*t% zyBNIwv9W>({v@QNNKE8%?N50q8RBhMR1vy($HQXXsn|u0k-%=g3wZnrkaln*)vQse zuuK?LI+Ar9c^P!%BGZ?P_=Vm#C-=oPkvEdb8)gK&i6d1xEH!Mh8Ngx1UJJRFdU@3T zyrI>H6GEn&SVQ#O0@MppTaPO|0I4>%(NZa$H;c>6!3x=$K-745RhO#j-121@+G{PL z*|tiQh~@ZB@I^926$}fCGeo*X;7$j|EP{K0lIu9>e1wxpnxN*fIz_c%QdR(Vj=+5O z8>L|13ng~wPn342t_M36|5f3A=2>Q@tyk3I8+YzczeB#(Fom;Wi>i=Sr~O`y_6eVj z*9tL59GGjT8rr^k6iG;Wo$vwgn)hA(J~TP>!ppKpIHQ{hiHu6!h#;%PyAS-uF|;%d zw6h1R?S+yPHT0%^6DW+`><3J%4@RrnN{!rQ8B|d%SU^fXGl~mzWv6D&Tbjk&fA#Sp!&RiCLHB2r<#13%V~PcXBAYpk@n*~{tT$m%8_)lX z6pPq7mU`%D3SP#yJ9ygY9LAoiWbUD^Js?3+8RqvI@@SggH^4qzu93lh0_PST+?V-+ z8AP?ED*uyApEltGUuxL05`#e-BBjkm3~iv3wM2&pg@6}ey4}+)Q(h77j^|CY*>;qc zjLjwpxT+4V@EBQxK@EW}R|`1P%WQc5GTb9qF=E>vAsnZz^@^90bn>NP z8o@s62CzMeU2}dvjy?xuXYoZ#ilb|tHDydEFozt4a4LF_%a0}u8*f7yAgN%V3l4{% zQ6cr-=aV1qV(X6Zs;Y&!erQux58q-pPnXzyF$V-d3@(zj!x`ono0XK}m9j*|+X}wDDKwiG@ zEH(u+t%#Tr-je9r5?vKx@##u|njaV@B1TvY#-b}qRIMe01zBCpL(JjWOv$;n_8@sQ zYyfmq-_mu7SMy+pbzqwc0sqMfagx8@{ohu(7PY4mo1d!CAo(?($QC?G0}$M2UBk4{ zAajTD=PvSFmR&tu-jD44T;fh;>D|=^6?41fa%~Dz7rl#8b{c?-7+M7p?P7&nAtKE_ zhs~&v;fVi5idcMTPTEfzZAJy}w2qX1-V!lIiJK^Narw1se;UOAI${i)f#h!fKfa;3 zrD(Qogv-n6WZ0-zf44bVzG2IW1LXB~S;hR+lI})(H2)p7k1YEIb{%)7KXZyjJSx@i z=5Nv{0I$qd(tE)g1L#QQ95^8YN#*te;XN z8Mf~wJu^TEbKI5}hYr)~po(R9{$wmI_e=hii?wh}L0bCD0=oyrTNEw$$(AykQDJ0Q zRAF8!fOz+xs-anK*)XNdO!W~K>QyKt!rvcNSTccaG6R%+^r17zefpY?2r0zWNrE5* zM#FcTmQ1vhQfbmXN)#oB*PZ-=II4>Rq8q;adOX?kTGY?8Oq44J+3k3um2hdyHXQp{ z@@&_ld}+NTA7pU;{j4%2=OYn}mc%etEJeb+rrlMGxI$O(c3+vN2H08u1(UyXm<-KC z{Eo%omLmpx5~Mi^fy3ER2}5=g&VQh=?PCO_;l$je zcQ=aE6ShvKj`wIVI#9>+I{QrPGho%67cfG~hO3s$q^8q?B`tAXO0`TSiCDRN^54Fu zbt*mP<%>IW@>L82(X?9tSiicmG}mv2Bjs9IxUh-o4_;Y&5^DjFg#S>*9BT`XoCl~~ z3u6-vZDqDc^7BLJOupb$A<8L!Nds9swmcv;}&^*5FZaZ7{W8BOOacyd(2qjEBZc8IgqA z{C$f=Uha5lNj%5L5m$Sspcb6;A~4ETuMs1h>rhihnb(=MSZL+HWa3_$cG?h7<6=TO zD;bDPrC8&b<&LragW%il=SY%K$pFE%6m%UVRoUa?#R~I!sPt&ROfg;Tr7OBg!I!Jb%+COxqYLzvK$Qc(T9sGJ%#&0pSq0zL*kt zq*jOf_hBbdSwRS0!=~eK$k_@P7{_ohMZLu1{lz~1)Jm1ZZY31O+C6hhuG|)VB13?F zsFPXokbWlL(O^or*0)L1*<%#f&!G*%P zDO@dP2?F!h^MOnmzc|UXwd6-AB65QdjAG&nljX+=JqS$N_8qDF4#Wzre4qr}j5o5n zy4oxm>ELJ}bn0)QF1WVrosy+-)hG&G zZF&XI)B}8V8C3yKd~VGaMzV%9dzw8hV5-`5YK(uEj7*VT`%)6B)$o*H0#d5J#HPQ7 zJ%-zDeO)n&YO&Dmij;_rBam&WgD82e+STcyZIqVvh?=kBEydPHTUeyGoXM8H?E)I5 zZ#Hh^15&UHF<-GNW;(lXOOtQv+OMdqp*7Op0U`?UnkRz4r>H@`$+!|S==Sk@z_?bv zNI2{&=3u2VZP=p(7_w?+VO|7%n0^ABze3qjteq9vY@wgO*ziq}MBE?r`GuWp_4qMH z%$c3080icZ zSUC*W8+*3DP2gS0)7Gz3SVHE8TL_CT(M0AWfHJ~K!XRh5td6Z35yMm964}0;vBv%9 zb0y~c_R5ADPuM=h=oiVGh8rCByosD+qF}qWw4ubu-v!l{kuC7sJZvK5y!#&5@XDKUuWK8V#;PuWDfKKQYZI0|%Cf6s~oTWX$xLW4%=v@kf zdhk1wKnVo&Nk0Nd+C<#DfB1p z28=)EM^`QNFr6Q|N2icNDm~fy!Kn5a_tb*$b4ULD`rJn1G%y5$?GeW}Sr^lH>jJa( zVf;^9Duo6&;}w;nH{bOEsi?lG0BmF`8U{?k^$79A26ORv_}M#7gx&}S4U@5w(nE{s zZ-?vQtf-kC+xU&rtc{;Sq_6dL0bb}tY+PXq>VpLRz;;Z)Hy>gYyRk;>B9B+#rhVUx zK^6{+7VX)4O`{@OzAdff!Clr&L@gd&%Jok;@gh-Fu%%7U35~Wqr8EVVa8c19rAsuV zfOgU5Ji5Vw|A3jHu1G7fmFK_^Y?B$l=sa7LX?N%di7DD3D@`8sqFIZ=@E=yGTt}ibw540V(}b|oY9}h( zQ-a5O;Y5bt?VW2+%pQ9|R1jJGRA5F+$sye6)|rsW!IAY=h|nsy;e;k8sa_`#U=`C? z7)`V;)p|d%hO%>j`?k0&bF{02dGV6IMf?g{h8^LPyVsdp+F zII!`Zr{GiZ87yL#(EvP3hbMreLk_380ae=L%zTR8MM#GoIq!DAV4F3{Daa}esN z{N2wCNt%SLBFVf}&5PZnm2iyZZ>h2yTWb$DAwyjy<@05*_ja(9x$$>*UBrJL^mZaS zD7N}-`Y|JBIn=c(dy*e{B*mGAD5_37UUdTw4MQj2{Ej@tLOU=7qb}XlfxCOty(J$TKJOa2x3BVO@xRdh%3w)p8G!&ynT7b>90B5s;?*6EC8fc#g4j}9|- zTI{mdRW0NGNCtZ7IgoHMRVf$cgq#!`3x@kR(YT*ogi0K)kUAOMbdlt|ozQ`T7mvQz zTD*1++MLyMx^3m72J16AZdHW@M4^ZB!6DgSkvOt}fI3pjcW|_YKr;1$>M*VX5li~L z!bs&Vg3fpzL2%rOPX2HfCNt>Vtkx^F+8`F(#CUljRQ=*l*alF`pzlI?3K|u*P%eFI zg`*>-W6gStStUjgZO5E*pOp5H=^j=x2_KfPILPF0@^6RHOw4NW>4{ zMys9)>u<#IXph^#P?dwi$yS0p^qOZB7(0wu9UL5GYe~iKg|t}6Csm}jIlZ(_LP=u0 z<*o!vFG2ey0D>uHragQ`{jC$VzwT%{vC^^szX-dh7*WFT0K;qB_F3Duy=V8VZQHhO z+qP}nwry{>Nt<4@NiQdp%*{+P$^U(MUM8x%^351qxC)*`@-R(vszdHcTToUiN@|cD zZwFwl$9ZOVB4SGyj*uW?78gqf*xq75n_GJmXPfluwJ*WYWUnwv`E5TxN@OtDIh`mm?BQVO}LSLg8Gv57wt5&FW<7I z94tQ__5s}YN$e6oA1-C_(Ol|@;3UXNe%`>(Baz2!L?s%V8NOKq50XX5 zhJyM0uu~{Ie+1AQ+^f#vb(K=H&4>gq!=;#p@R*xbGj2(;w+|>Iq7mqdXR$j*XYPp{ zhjX-9jgS?Ap>n+vW;NC+tjWam8W>~gxd%>1|G}ks!eQQaZ}52b=^$1QUr>#fT|*z_S`ev_zgBLp!L&S015$3s7DY zYS!$d0&XNa>=TGZv?7ZaazK_*rJ$AaeGPe1xN)N#sXN~CDgw_$(hZFu1#_kxZt2S? zT~rIyRY8Tbh~%A;#^Vxg{!MD{Q7v!3 z6LNeIuy;-6!{g-9BW>S06>bXoA?l>1z_$KAfMZbC&JI%{dkDeM)x zyH2CsiG)A>sFFoiaRabh=AXDan$u5WCq|H=fTTir+8GC2)}sV72t(B0Zo7%Lh5iNr zyRqQX6MBA))Hq#F0HkE+NLwonED`7!kC6!uUPESpj!o|s zU-!G4XKyAQC#T3G?XSi(7KK@5sO=g-mGUCa2umops<oH4pdy&;o!ym_t{Lz(wPxBS$^q$#PxaBN(iAbY< z9EG7mCZOm==`Y>C7@6qEHW|iOQJ}pP!Ro$orJp$a;G;=uww_uibm|b{EQ7mHa4C{sw7gcZu zg7r3Dlk^9*i(}nR$p*;kDVHikz8X}l_!gA3g!CrB|D2erQabOXIe)LP8l301pyRl* zIrn-1kaw|Fdui!EksgG7TQ6^cJK;nK7R}_Gt31i(aiNX;Z5T!+{8g|V(B_-J!8Et7 zj4fx2;j{350EgzEu_ZAQ{%Q8_S?NQKjKvK^67x&*8QAq~uv3!{Tx-t5xBd1%D%jiF zGRr9J54YV-Q10<^9PI+)R|Ad-!^QH)33{HU^kZrjY2?{i&maU$Mw!NN{v`yh%g+*) zEkDZ8cQa{-M!G04+75`S-RUN+ny90oas=I!mloF`XX_Y-N$i#n-t2OJSbO`~r|o2! z^r4jjCx;8W)ZIocAycBium*D|$b1&=C#-_(uX>fLZJ*A2kbLC(>ft61vm8m`K8(bZ z(`J$a?j}Y&Vn9_rj}9eVU$FVb16_#WtC#x*LY3r{phaU9M42eZQpeeA+1iFH7q%{e zP(Zb?g+w&f?Krlf?P7^3t^~ytlum&Z@y@=SCcv8Ki&_4f#t)8zT|+r9Jyymz(@}ml zlzRzS1hMS0D4izRCn?0=AZNYd*wj;5lW)T5Dtnq%su}|{`4NA448+l#+Snrm{HhA< z1S#xc5K5L$wbhy2G7ltI6l^4xh|V;ax(vkO=c`_X^O$SXV$XD4$R269y^6q5M1 z+GOZHL#>n<#2Gp5~9+5NL*$jDWZ3Q3Y~q(I5Ip0~{LSu4KkKb+C&f87@Rd3A<#h z=WUy@uI0sDH{i3iyoHQ9?Du?pf*7p;jN0SzMINMzQcv&h+RIKM=7Fe(2E(6hdv?Ti z6acO65+c#zDfU(r^J?CDJxF5BTb9t_btNEortfB03R2Se-F`O_ob0wm!|QEzBAC)8 zPhYrc-?)6OS7;7@s;O(4fbS+vsJ2`F1J%9_;96KJ!vR6jskw;b_~Je(^|U7@JJU?O zRPEq8XF`OA-lYjYb{44Y!I6e03D-1puzJ-NU&Y2DH=#kJ#M_ zQ|kl>r@6^`xUd^g>fcs0A^F&NYwom=O~&&Kq7e~d!3-Dp3pkEu3#UR=;z@(5D zqou9JPEkEjm4_?+7ghtt=EAR1e@EP>9$N4u4|3kWa8CA$HgWYPy%H`VCcNlKPb+!ZG4rN~VJ z0HK(e2)m*jNx-o_HXQC*V^jVq8dibH}r>NUQo;QSCTj0!~_+l4(TJ)`oK z&Q`&GihSICADG-f(YT>A~X3~PptaW^%r z{>JF$&{e%IZim@u=cPv`b}3Z;ⅅRV@r)9OvtY>JgEEOr9)7JfsD; z6+zab@BkD0Wc@jL7s-)aT7djr3pnNjHURV2dl&cT+9TY+-@JvkL;cA%aCA%nCaupk z7(UGbbT;PYT@&7PN&*)bz5^*E%r`S}_l%E`VAw6qK||k5@T&VmhNoz4Teo`zTEyH4 z`Mni1{=^vYgE&$H2KckLz&Zd}f`>|pSllajvzI@Tuo&;tnyZFk5{R=>uBf>F5s?KHsI(m)U{m}!flBX2 zZ(OP9W)CUmboPb>r-fqMI796p!myYuc+1lKbytK30Zz4zWc>MZ=fZ7C4<;2Z^zL=Qq(%W&wlRAPi^sCV!imp!J&( z_pqlYFKtFzhk+QSQ-NY5Tp-2VZ|o0Ls`x(ta9GrD5p1hUJ~^oG#;m^{rPR7J!xOEf zea%gOZmi6)AEXG&E$8nHOd6z9I27kS@wXj2HWH`Qq0hTH;oD(VlO?${EI zxYr)64-ORP&zDz{dKHMM!*7_J_@A2N+IEnyBUSg+S-W*NV@t6zA{|vR^>bPVwfxz< zLWe+el>GCr{@Frl9Bv*!=`DkE%B0re;wX?LKg@V}mfc)_!!V)4-3~_uSo2f{Gq{Od z3jPMWl{%&+Bkz7-l^kp#k-pzeWVq>1ms-Qef69?XWqgsVvj-PiOaaJafG1mDN8b*D zgd^-ShWX!B~L)mOch?US>=Z1MKMs=Vq zv7&vxul@bN1P02X!Q_qtv`r@osvO5nM$Vi6v6Q)av_wiA{RY}rz3?QLW`%7QYu{242dAncd(i@>`vdeYjfe z3E7>ENR?x@xD!TnGDyr<>p4H(BITvpxQwd;_q2wKQz9i8;Iqwdms;zd( z!V7)|zy*;%;I`aZ_V^vIM|eo2Gw1H7Ak~~cC5yK5!#6mc#K{yjauj0e=i_=0*}Qpy z_d;@1Zf*tb;o(HlnC-P0&QthLcbi_ECoqo^q#MnQJ<~h@BMA-=kGh*7s zW6LL{KG#cjDj5Q!YXL$+*) zM+)Obb0vWEL2bQ#SPMa4y-WU1OE19zK@}0x_u+WjWn34W6LZ5LZteZQWE^G!dV>En za=5t(=>8uWhl&1wWE@6%1`g)`zWh&J=fBJx0!9XUX8Qjn;}mPP{K469zOIcAkK+38 z;5GI?y`f($Cn3DYeY-_22k+$Kd%??F(?HWhk9M+Y1tY^>SRhSyc5r)CX>xlyC^{@V z4x7Nl%;NC8($I#=Waf`hiJ|#5)GL)qKtV2oGb4**U1JL}gCoNcSZPK&fUtBF;N&C# zDJ?B6JCtv2S3pTZQCkqSujD_8tn}dEXTCo_sQ{7OKSB?`XO8omaQtsCBU6jR+kMN6 z(?@iJKTQSoWfZ+b{V2M|W(H6Q$ttsniOAscVH0IQgECjrSuj=rP}QQW$-@AcQU;1# zCW_|1XYQ9Z zU*M{oz>`@pSDN3?y+e4qW+s*g=J#?yK1asSKa!(;W8XDFzyCZPdQcA&bQ1$IDRA`O zol+E+oZe;u}#GGQn3DDGf-P zJPpShob6-q1L|N~|EYpiJ)P`){F4Sq(>u1fIXgBuytwv8H>q>!)Bcd-1oWM94vULp z$^CO=^+Q+jlNL}E(NGqJ$%BLZu#-AW>tm3ivEIk<$wU?JZ2SyBI_xtcqlx=1bYgt| zSOcc;#l*DelR(d0*V1qYlA4;{$1u9q@d*o=``%-a_T3Y6_yZRHqXF@4llSrywfQqX z_hTRSqjU4%6NKi_R2Rq8_{9bAv(4b!BQ-n=ck40(Ucgkx&HA|6#KgDg9Ia?c@2&;(XE3=Q|HSlm0|T*GJ@KjqR9yw{`L%_r^)_`M#VV-anC{ zTGi$OFYog2$(YwOvNJ^vAu&Q_H)6=Zs;oQj3(`L5NU!k<@Mw9~3eFC*IG_xtNyNt5 zr6aC7bmN!&rgco^xK}b1lxIm@LWt9j4eWiIe2U<)ZK$BSv3wi^ZejlQ`o zC^^#iaK7!rtcI+$EM~xLL zd88HX9(z4B9Y_g$!&muCM%r}*2N3!&?y2epWAbmEGx~Q`Sl>3{%!pcSe5HQrIR-q=F66Fn#hQ*hamZ42? zP4umYj>r-IuGrGdBG9WP)sx9%Rjgd?OMwh*fd8$CXV^^j$m3@lwt$pHpK!dyd)gfx zAScK*Lw)`tI);4zR~F9_?UMrzPi<8JDphK}UVgl?ibcZgBWj^ZXWrHEcmoWTtg>mV z6h^awrhknw<{9ph^P$xB?0vP}4WrOZFbL`$u$GXAc2>`WF>}ly6V^=?3uUI-&E5vY zx2#kZ0beLm@IIG}rhav*n6+j8nMs@1c==8K{DnfG$GUr#j%txJAEnboe+90eDwfDH zFSuz6oW4kMTEH8?Q81OJlm%vq46s^-8dYGm{8&OSxrj!+ZR#|mbL{2*8>@nqp2DXt zTK8(mT_8-4@81Jh9+{%?pvWWWK})#IO))(q9(2lG;zC8yaOhSV$>Uhib6AF@G$E$x z%O4zd?{AHk=Ya)6(K1S}QK|a})iY1LGbJ?S{vkmsc309>1{35CBflO}+@ri1SgCHX zsFPo&M5qq48N$2`6|GOj^ z1(z{=2x(CmQjCwpMn?evYO;{udJ8_k;QO3HBD*^GS>*7RtpYcqp*t(&588!xWbTR9 zXE4W3E-EbbPLX~XA=JUj_P%ajDXtC;3GZoPruBB3bm=sY_ek8R-RqXO(YJZ(a=s>6 z6aBp4GJkM(A{-fyGHTWqeeA^dWMG)5;(!mfv)&60UWe&tK&zPCQex-sa^_F z+j-smghUbH9ar=Uj8oK-tVDDT&xWIuJxv28GB{W5sd2-F&@RjOlGZ0tN0Kd8B9>2Y z8fb!Y1SvF*CF6X!uQMFF4NJOFwO>^56e-7m%~UKfy_CbODWme=Nw^>W*cjYC z!^dOI67q}!>*{ky&ewkbZ`Pe$nCH{2m4A-NV zG*wA_G3-7Aa~(CJJ;#xE4Omx_AJ2sN5xw$}>{MoZm<5>Ep)u3-B66wDu^d^6XKAl- zzuyb|@As8ET>@-jIQ2ay?dTnNozt6t-Cd5T5<$AZAnKxi1oEqbnC5rMpqoFMB-nAe zMOf^}kP4CSL=f2Z`F|^8Yg*I)yiER_=fG#Gi&Xj>Y;6UISj0H`GT#>3!tSSDfRZj1 zs)_%Q*S6-G(si--haukv#Fy$Hsi5`CBa=tiU_qPFZczJ)a=eK9}RF3y!gu7c}vz0@B1 zk%bvg6es>ItW?p|kM+Bm#wpKPKzTS&G1l6YO|E zaMl=nzbknbOd6hnFOuA{(UU+%xz+^2dQMsu{x1CjuP8B2&Jns~u1(!Yp9bNGmWuCZ zmVrM#m`5hI^T{?Murp7M)>|Uh$5Y_$LwwBS{i3n1(dr$|iigL}+;m^OZR*wKdP9Fh z)iLOi6#g3{;Txr?ud0x+v3WwoMl4}bMt;DmOFXNu0H@-4ewg&TelRALFw1SwSc=Nx z_$u69HGJ@~AY%y0zrLEl3FEOp7Q+N+9Xf_ky`Tti_cX1CG~s}9fsP_0scflVBMXDK zc@+jAYFMR3U`hrhcR{>Qesiq#@S+l*JKC_Z{Kbu1bu)Twn1@wqd5FiSFaeZH{W$yM zxLn4*u-_{sxov3cRL{bz623|M9Goa9WkDYxBcb)37(L+ER1o@YFK>tJH$%^X*Z~V} zLOQ=>5K6I?^DzAH#gkH%)Z*#$cLIKHFVA*BE$LH() zis`j)sSzAmaIy*WV?W^1y6OA(-hP23xdK;6b{((HcWxLvOQe3$9~{y&{X@jatFf`I zf9SigAU0d7myV=kCB%b9GohRIoG2aATL%D7H}GD*@$j7wYq4^J*Tga5ON@V(HmLLA zkG;ZZ6eh^?+RJMYAaF?!Bw3&q%Aue-W^oUyns&`)P8tIiUxU_(+bu&3<@FNK!Z+q% z+7^#i2IMampoq%Lh$c3!=v4>w5LLr#A}DJUhYg2!Y@wNBESJ`+VRCEr>(RiA7{HWFAK zM3NksM)otJclX$Ptf1vm(qI=7LI8(S#5)Dya+q)vV#R?c#i%_*ceENAtC|l2Nx&-n z4rSUep%quQF8*e;u2X(S3u^CNNDXd@Sr-`{wX(jPm?pveNxfvnh&|)d3ThcaNQZN< zU_Xm1PJ;Lj3a;kydX0AbdW4>=zZ8H8Weu!LHnEG~!ZLv$y$*aK%$@J6J0XESHQJGIPhIJ0<`ToN&2o zKd`J?R;3~m%eB#7!CAD4R>k^8^&pZOV^dkNX3RRP-z+1F#Wb+y07bJi48CD2w&F4f z$9g4BOkR-I?gumPOri7M&SQ2M+e6@#_CmN3y$>&8VqCFQO-hSa(e@GRzRm1x5yVG& z7!c&7umlt+3q728_NeAK-^!C)FDF^L1;5S(e%Q&bfaCm%3qLV1!yd8hQ-#4m_njn9 z1!!mQY=-d?{|`4$tKcG6)ikOL1I@tz5<0o@Tz1w7fOxffF07N<*7j&*jErcpMY}2^ zw|0(O(hr}@jT+ndvbDQReRdKfPK_+s9D`KSVfYUiegUc@+ewaEg~B1^d-qia;2E$5 zESkzR_ ze-fQoyGH+`C;q*D^aCwuhV>P4W}|iHkhUi10)j@Eh1|zpDzdaH^Pjjf*jzi+t=UPy zQI4-V2y)UqJWN!mftSZZ3GmI=fgw*58ETM7!?H}+b>Svzl^>OBzS{QyvPYa|bE=Nx z2(_VJ0sIb7XGJ~xDT?_3YA7X(12Fnx8s|W~|j1XIP{oU;{VH}!&t8MF+k`UR> zK(uD3sEPD;!nGA=3e6vyk$59;P#tHyVHh>3F6qhqHsvO(E-2pQ=x?x}@@r++$mI3q zguTu?HBF@XYQ;LIxuy@WJ7-+L(sUf%;L2KoA?qgvib&4Jt_e;*1JrtJ%rZjrZ~;qz ziIsXM5<8#VIrWaDXp(cjZhHieMJ$?^6sE`Z1GtY=ZJ>Cf4sZvB{6(&uiDjpjYr1(BkE4T{z>wjg#cl+NML;@KP z|M4u<@pJ@L)?Vqy9DxJH{+{5{1$%P;-8|S$?d?=*8L&Wtu8os?v_c?v56N29RS{?) za=}3Bsfz|84MiI7*K-_s;G0FB$b4`vPF;~7D}EK?LWT?aeUub}*Kcp_u!?8Ttr{?p z9nsvY5C!$o3Gzt7#y-@T51~+6GVc(=9^+k5J!Q$Dn{QpGpy#D1ls4rF>;iz4#i5edNMBTP8&lYwLE?VcXbOlEu8+hYxvbi)R3t! zjWvMKNp>tg=iQfpE^hItfFF6_3ind^LV+w!`4VKd6X>IHD9#Fgda+5RmRGpxzN+SU z1|!As)KNF+Qdt^r)CAfizu~kP#g^!b9*=2#` z2%7;CZ%mRb@{BZ^o`YycQ)8MX2;dzlye}FX`@Sn9SuRan*c;5H16?2|mSnh8NiD7e zHs02wf`6kwpw$zd8X^%!rYdyBd(dPmmG#2bGGfo86JK*2I!~o$*dxsz#;xFh31v&JEfp ze9_`Lm>rUG@~EK27FAGHkeXKW-dis9pM90meas#MWhpV8(D=g;E6O09Z zlit@e!^TO1PkdXs9;?xhz@>W-U-USPainpk1`2(WTM!gJU!T zigOkwKYerQ7GAAf?vXyD&CPcH;C7au#}F>@K}ZaRuM%=nnfRgi7lR`H6SKp>dbXaU z_CL^h=x5Vo7S�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�((K9IOz+a({i{$6&kTKYg(Od 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 &3if>#IAUx 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 1; total jobs are 3 -> 2 for code-changing + opened/reopened/ready-for-review PR runs, and 4 -> 3 for synchronize or exact + dispatch runs. No old queued-run snapshot is reused as live-effect evidence. +- **G-04 / objective 17:** this is one bounded workflow consolidation, not an + organization-wide completion claim. Hosted queue effect and Project linkage + remain unverified. Design, permission, latency, test, and evidence boundaries + are recorded in + [`docs/doctoring/strix-metadata-admission-consolidation.md`](doctoring/strix-metadata-admission-consolidation.md). diff --git a/scripts/ci/test_strix_quick_gate.sh b/scripts/ci/test_strix_quick_gate.sh index b9b1c43de3..e38c31537a 100755 --- a/scripts/ci/test_strix_quick_gate.sh +++ b/scripts/ci/test_strix_quick_gate.sh @@ -199,10 +199,11 @@ assert_strix_workflow_pr_trigger_hardened() { assert_file_contains "$workflow_file" "branches: [main, develop, master]" "strix workflow scans GitHub Flow and Git Flow protected branches" assert_file_contains "$workflow_file" "pull_request_target:" "strix workflow uses trusted PR trigger" - assert_file_contains "$workflow_file" "admit-current-head:" "strix workflow admits the live pull request head before provider execution" - assert_file_contains "$workflow_file" "needs: [changed-scope, admit-current-head]" "strix provider queue waits for live-head admission" + assert_file_not_contains "$workflow_file" " admit-current-head:" "strix workflow consolidates metadata admission into changed-scope" + assert_file_contains "$workflow_file" "needs: [changed-scope]" "strix provider queue waits for consolidated live-head admission" + assert_file_contains "$workflow_file" "needs.changed-scope.outputs.admitted == 'true'" "strix provider scan requires the consolidated admission output" assert_file_contains "$workflow_file" 'strix-security-scan-${{' "strix workflow coalesces by repository and PR before job admission" - assert_file_not_contains "$workflow_file" 'strix-security-scan-${{ needs.admit-current-head.outputs.target_repository }}-${{' "strix concurrency is not delayed until job admission" + assert_file_not_contains "$workflow_file" 'strix-security-scan-${{ needs.changed-scope.outputs.target_repository }}-${{' "strix concurrency is not delayed until job admission" assert_file_contains "$workflow_file" "cancel-superseded-pr-runs:" "strix workflow runs superseded-head cleanup outside the provider scan queue" assert_file_not_contains "$workflow_file" "format('closed-pr-{0}-{1}'" "strix cleanup does not need a second concurrency queue" assert_file_contains "$workflow_file" 'echo "pr_number=${GITHUB_RUN_ID}"' "strix workflow preserves independent push and schedule evidence" diff --git a/tests/test_docs_only_pr_runner_admission.py b/tests/test_docs_only_pr_runner_admission.py index 4a21d32fd3..119e6fe766 100644 --- a/tests/test_docs_only_pr_runner_admission.py +++ b/tests/test_docs_only_pr_runner_admission.py @@ -25,6 +25,11 @@ from pathlib import Path import re +import shutil +import subprocess +import textwrap + +import pytest REPO_ROOT = Path(__file__).resolve().parents[1] @@ -85,6 +90,219 @@ def _on_block(workflow: str) -> str: return match.group(1) +def _step_shell(workflow: str, name: str) -> str: + """Return one named step's dedented production shell body.""" + start = workflow.index(f" - name: {name}\n") + try: + end = workflow.index("\n - name:", start + 1) + except ValueError: + end = len(workflow) + return textwrap.dedent(workflow[start:end].split(" run: |\n", 1)[1]) + + +def _read_outputs(path: Path) -> dict[str, str]: + """Read simple key-value outputs written by the tested workflow steps.""" + if not path.exists(): + return {} + return dict(line.split("=", 1) for line in path.read_text().splitlines()) + + +def _run_strix_metadata_steps( + tmp_path: Path, + *, + event_name: str, + scenario: str, + expected_files: str = "1", +) -> tuple[ + subprocess.CompletedProcess[str], + subprocess.CompletedProcess[str] | None, + list[str], + dict[str, str], +]: + """Execute the production metadata shells with a deterministic fake GitHub API.""" + fake_bin = tmp_path / "bin" + fake_bin.mkdir() + calls = tmp_path / "gh-calls" + fake_gh = fake_bin / "gh" + fake_gh.write_text( + """#!/bin/bash +set -eu +printf '%s\\n' "$*" >> "$CALLS_FILE" +case "$SCENARIO:$*" in + api-error:*) exit 23 ;; + file-api-error:*/files*) exit 24 ;; + *:*/files*) + case "$SCENARIO" in + docs|dispatch) printf 'docs/readme.md\\n' ;; + code) printf 'backend/app.py\\n' ;; + empty) exit 0 ;; + mismatch) printf 'docs/a.md\\n' ;; + esac + ;; + stale:*) + printf '{"state":"open","base":{"repo":{"full_name":"owner/repo"},"ref":"main","sha":"%s"},"head":{"repo":{"full_name":"owner/repo"},"sha":"%s"}}\\n' "$BASE_SHA" "$STALE_SHA" + ;; + *) + printf '{"state":"open","base":{"repo":{"full_name":"owner/repo"},"ref":"main","sha":"%s"},"head":{"repo":{"full_name":"owner/repo"},"sha":"%s"}}\\n' "$BASE_SHA" "$HEAD_SHA" + ;; +esac +""", + encoding="utf-8", + ) + fake_gh.chmod(0o755) + fake_sleep = fake_bin / "sleep" + fake_sleep.write_text("#!/bin/sh\nexit 0\n", encoding="utf-8") + fake_sleep.chmod(0o755) + + workflow = _read("strix.yml") + changed_scope = _top_level_job_block(workflow, "changed-scope") + admission_output = tmp_path / "admission-output" + base_sha = "a" * 40 + head_sha = "b" * 40 + env = { + "PATH": f"{fake_bin}:/opt/homebrew/bin:/usr/bin:/bin", + "HOME": str(tmp_path), + "GITHUB_OUTPUT": str(admission_output), + "GITHUB_RUN_ID": "9001", + "EVENT_NAME": event_name, + "TARGET_REPOSITORY": "owner/repo", + "TARGET_PR_NUMBER": "17" if scenario != "malformed" else "bad", + "EXPECTED_BASE_REF": "main", + "EXPECTED_BASE_SHA": base_sha, + "EXPECTED_HEAD_REPOSITORY": "owner/repo", + "EXPECTED_HEAD_SHA": head_sha, + "CALLS_FILE": str(calls), + "SCENARIO": scenario, + "BASE_SHA": base_sha, + "HEAD_SHA": head_sha, + "STALE_SHA": "c" * 40, + } + admission = subprocess.run( + [shutil.which("bash") or "/bin/bash", "-c", _step_shell(changed_scope, "Verify event metadata against the live pull request")], + env=env, + capture_output=True, + text=True, + check=False, + ) + outputs = _read_outputs(admission_output) + classifier = None + if admission.returncode == 0 and outputs.get("admitted") == "true": + classifier_output = tmp_path / "classifier-output" + classifier = subprocess.run( + [shutil.which("bash") or "/bin/bash", "-c", _step_shell(changed_scope, "Classify changed paths")], + env={ + **env, + "GITHUB_OUTPUT": str(classifier_output), + "REPO": "owner/repo", + "PR": "17" if event_name == "pull_request_target" else "", + "EXPECTED_FILES": expected_files if event_name == "pull_request_target" else "", + }, + capture_output=True, + text=True, + check=False, + ) + outputs.update(_read_outputs(classifier_output)) + return admission, classifier, calls.read_text().splitlines() if calls.exists() else [], outputs + + +@pytest.mark.parametrize("event_name", ("push", "schedule")) +def test_strix_non_pr_events_skip_api_and_scan_by_default( + tmp_path: Path, event_name: str +) -> None: + """Direct pushes and schedules admit without consulting pull-request APIs.""" + admission, classifier, calls, outputs = _run_strix_metadata_steps( + tmp_path, event_name=event_name, scenario="direct" + ) + assert admission.returncode == 0 + assert classifier is not None and classifier.returncode == 0 + assert calls == [] + assert outputs | {"admitted": "true", "code": "true", "deps": "true"} == outputs + + +def test_strix_exact_pr_metadata_admits_then_classifies_docs_only( + tmp_path: Path, +) -> None: + """A current docs-only PR is admitted before its scan is suppressed.""" + admission, classifier, calls, outputs = _run_strix_metadata_steps( + tmp_path, event_name="pull_request_target", scenario="docs" + ) + assert admission.returncode == 0 + assert classifier is not None and classifier.returncode == 0 + assert len(calls) == 2 + assert outputs["admitted"] == "true" + assert outputs["code"] == "false" + assert outputs["deps"] == "false" + + +def test_strix_exact_dispatch_admits_without_pr_file_api(tmp_path: Path) -> None: + """Exact dispatch validates its PR but has no native changed-file fields.""" + admission, classifier, calls, outputs = _run_strix_metadata_steps( + tmp_path, event_name="repository_dispatch", scenario="dispatch" + ) + assert admission.returncode == 0 + assert classifier is not None and classifier.returncode == 0 + assert len(calls) == 1 + assert "/files" not in calls[0] + assert outputs | {"admitted": "true", "code": "true", "deps": "true"} == outputs + + +@pytest.mark.parametrize("event_name", ("pull_request_target", "repository_dispatch")) +def test_strix_stale_pr_stops_before_classifier( + tmp_path: Path, event_name: str +) -> None: + """Native and dispatched stale events stop before changed-path lookup.""" + admission, classifier, calls, outputs = _run_strix_metadata_steps( + tmp_path, event_name=event_name, scenario="stale" + ) + assert admission.returncode == 0 + assert classifier is None + assert len(calls) == 1 + assert outputs == {"admitted": "false"} + + +@pytest.mark.parametrize("scenario", ("empty", "mismatch", "file-api-error")) +def test_strix_incomplete_file_list_fails_open_to_scan( + tmp_path: Path, scenario: str +) -> None: + """Incomplete or unreadable changed-file evidence keeps full scan coverage.""" + admission, classifier, _calls, outputs = _run_strix_metadata_steps( + tmp_path, + event_name="pull_request_target", + scenario=scenario, + expected_files="2" if scenario == "mismatch" else "1", + ) + assert admission.returncode == 0 + assert classifier is not None and classifier.returncode == 0 + assert outputs["admitted"] == "true" + assert outputs["code"] == "true" + assert outputs["deps"] == "true" + + +def test_strix_code_file_keeps_the_scan_admitted(tmp_path: Path) -> None: + """A complete code-changing PR file list must keep the Strix scan enabled.""" + admission, classifier, _calls, outputs = _run_strix_metadata_steps( + tmp_path, event_name="pull_request_target", scenario="code" + ) + assert admission.returncode == 0 + assert classifier is not None and classifier.returncode == 0 + assert outputs["admitted"] == "true" + assert outputs["code"] == "true" + + +@pytest.mark.parametrize("scenario", ("malformed", "api-error")) +def test_strix_invalid_or_unreadable_admission_fails_the_metadata_job( + tmp_path: Path, scenario: str +) -> None: + """Malformed metadata and admission API errors remain hard failures.""" + admission, classifier, calls, outputs = _run_strix_metadata_steps( + tmp_path, event_name="repository_dispatch", scenario=scenario + ) + assert admission.returncode != 0 + assert classifier is None + assert outputs == {"admitted": "false"} + assert len(calls) == (1 if scenario == "api-error" else 0) + + def test_gate_classifier_shell_is_byte_identical_across_the_workflows(): """The shared changed-path classifier shell must not drift.""" classifier_bodies = set() From 726b601e8dc93a4a8fbe8bf0d28f73900ef6d827 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 6 Sep 2026 20:50:31 +0900 Subject: [PATCH 03/14] fix(strix): preserve admission shell bytes --- .github/workflows/strix.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/strix.yml b/.github/workflows/strix.yml index 56f3724828..24d5a27af0 100644 --- a/.github/workflows/strix.yml +++ b/.github/workflows/strix.yml @@ -159,6 +159,7 @@ jobs: echo "pr_number=${TARGET_PR_NUMBER}" } >> "$GITHUB_OUTPUT" + - name: Classify changed paths id: scope if: steps.admission.outputs.admitted == 'true' From ee5567f7b15f0441a61ec2435415603b9518f1c6 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Sun, 6 Sep 2026 23:44:24 +0900 Subject: [PATCH 04/14] test(actions): pin concurrency group keys against comment leakage (#1970) The contract asserted that expressions appear in the concurrency block, which the block's own documentation satisfies while the key says something else. Slice to the group's value with comments stripped so the assertion tests the key. Author: separate session. Verified independently: mutant controls 7/7 caught on the branch, 7/7 missed on main, adversarial helper inputs leak no comments. Merger verification (this session): head matched the verified SHA exactly, 0 behind main, merge tree identical to the branch tree, tests-only (2 files, no path outside tests/). Own discriminating control -- collapse the group key to the repository alone while moving the expressions into the comment beside it: main 58 passed (misses it), branch 1 failed (catches it). Full gate on the merge tree: 2958 passed, 1 skipped, coverage 100%, interrogate 100%. Merged under the standing chicken-and-egg authorization: the required contexts CodeQL compatibility analysis (actions)/(python) cannot be produced for a code-touching pull request in this repository -- codeql-scan-dispatch.yml has never succeeded (0 of 1931) because its actor allowlist admits no identity that dispatches it. See #1929. Co-Authored-By: Claude Opus 5 --- ..._codeql_scan_dispatch_workflow_contract.py | 15 +- .../test_required_workflow_queue_contract.py | 132 +++++++++++++++--- 2 files changed, 121 insertions(+), 26 deletions(-) diff --git a/tests/test_codeql_scan_dispatch_workflow_contract.py b/tests/test_codeql_scan_dispatch_workflow_contract.py index bad19b54aa..2439d2936e 100644 --- a/tests/test_codeql_scan_dispatch_workflow_contract.py +++ b/tests/test_codeql_scan_dispatch_workflow_contract.py @@ -19,6 +19,9 @@ from scripts.ci import audit_central_required_workflows as ruleset_audit from tests.test_opencode_workflow_shell_syntax import _extract_run_block +from tests.test_required_workflow_queue_contract import ( + workflow_level_concurrency_group, +) REPO_ROOT = Path(__file__).resolve().parents[1] WORKFLOW_PATH = REPO_ROOT / ".github/workflows/codeql-scan-dispatch.yml" @@ -94,10 +97,14 @@ def test_codeql_scan_dispatch_keeps_current_head_language_shards_independent(): """A current-head language scan cannot cancel its sibling language scans.""" workflow = WORKFLOW_PATH.read_text(encoding="utf-8") concurrency = workflow.split("concurrency:\n", 1)[1].split("\n\npermissions:", 1)[0] - - assert "github.event.client_payload.target_repository" in concurrency - assert "github.event.client_payload.pr_number" in concurrency - assert "github.event.client_payload.required_language" in concurrency + group_value = workflow_level_concurrency_group(workflow) + + # The language segment is what keeps sibling language shards in separate groups, so it is + # asserted on the group's own value: a comment naming it would otherwise satisfy the check + # while the key had lost it, silently letting one language's scan cancel another's. + assert "github.event.client_payload.target_repository" in group_value + assert "github.event.client_payload.pr_number" in group_value + assert "github.event.client_payload.required_language" in group_value assert "cancel-in-progress: true" in concurrency diff --git a/tests/test_required_workflow_queue_contract.py b/tests/test_required_workflow_queue_contract.py index 48035c2c40..9724d67ea7 100644 --- a/tests/test_required_workflow_queue_contract.py +++ b/tests/test_required_workflow_queue_contract.py @@ -21,6 +21,38 @@ def workflow_text(name: str) -> str: return (REPO_ROOT / ".github" / "workflows" / name).read_text(encoding="utf-8") +def workflow_level_concurrency_group(workflow: str) -> str: + """Return only the workflow-level ``concurrency.group`` value, comments removed. + + Asserting that an expression "appears in the concurrency block" is satisfied by + a comment that merely documents the key while the key itself says something + else, because the block's raw text carries its comments. That is not + hypothetical: the block above this workflow's group explains the key in prose, + so a maintainer quoting the expressions there while another change collapsed + the group to the repository alone would leave every pull request in one group, + cancelling each other, with the contract still green. Slice to the group's own + value so the assertion tests the key rather than the documentation beside it. + """ + header = workflow.split("permissions:", 1)[0] + block = header.split("concurrency:", 1)[1] + value: list[str] = [] + collecting = False + for line in block.splitlines(): + if line.strip().startswith("#"): + continue + if not collecting: + if re.match(r"^\s*group:", line): + collecting = True + value.append(line.split("group:", 1)[1]) + continue + if re.match(r"^\s*[A-Za-z][\w-]*:", line): + break + value.append(line) + if not collecting: + raise AssertionError("workflow-level concurrency block declares no group") + return "\n".join(value) + + def workflow_step(workflow: str, name: str) -> str: """Extract one named workflow step without parsing YAML dynamically.""" step = f" - name: {name}\n" @@ -234,22 +266,77 @@ def test_privileged_review_dispatch_coalesces_superseded_runs_before_admission() workflow = workflow_text("opencode-review-dispatch.yml") header = workflow.split("permissions:", 1)[0] concurrency_contract = header.split("concurrency:", 1)[1] + group_value = workflow_level_concurrency_group(workflow) assert re.search(r"(?m)^concurrency:", header) - assert "opencode-review-dispatch-" in concurrency_contract + assert "opencode-review-dispatch-" in group_value assert ( "github.event.client_payload.target_repository || github.repository" - in concurrency_contract - ) - assert ( - "github.event.client_payload.pr_number || github.run_id" - in concurrency_contract + in group_value ) + assert "github.event.client_payload.pr_number || github.run_id" in group_value assert "cancel-in-progress: true" in concurrency_contract assert "github.event.client_payload.pr_head_sha" not in concurrency_contract assert re.search(r"(?m)^ concurrency:", workflow) +def test_concurrency_group_slice_ignores_the_comment_that_documents_it() -> None: + """A comment quoting the key must not satisfy an assertion about the key. + + This is the negative control for ``workflow_level_concurrency_group``. The + synthetic workflow below is exactly the shape that defeated the previous + contract: the real group is collapsed to the repository alone, so every pull + request in that repository shares one group and they cancel each other, while + a comment directly above still quotes both expressions the contract looks for. + Reading the raw block finds them; reading the group's value does not. + """ + defeated = textwrap.dedent( + """\ + name: Example + on: + repository_dispatch: + concurrency: + # Key: github.event.client_payload.target_repository || github.repository + # with github.event.client_payload.pr_number || github.run_id + group: opencode-review-dispatch-${{ github.repository }} + cancel-in-progress: true + permissions: + contents: read + """ + ) + raw_block = defeated.split("permissions:", 1)[0].split("concurrency:", 1)[1] + group_value = workflow_level_concurrency_group(defeated) + + assert "github.event.client_payload.pr_number || github.run_id" in raw_block + assert "github.event.client_payload.pr_number || github.run_id" not in group_value + assert "github.event.client_payload.target_repository" not in group_value + assert "opencode-review-dispatch-${{ github.repository }}" in group_value + + +def test_concurrency_group_slice_reads_a_folded_multi_line_key() -> None: + """The real key is a folded block, so the slice must join its continuation lines.""" + folded = textwrap.dedent( + """\ + concurrency: + group: >- + opencode-review-dispatch-${{ + github.event.client_payload.target_repository || github.repository }}-${{ + github.event.client_payload.pr_number || github.run_id }} + cancel-in-progress: true + permissions: + contents: read + """ + ) + group_value = workflow_level_concurrency_group(folded) + + assert ( + "github.event.client_payload.target_repository || github.repository" + in group_value + ) + assert "github.event.client_payload.pr_number || github.run_id" in group_value + assert "cancel-in-progress" not in group_value + + def test_required_opencode_dispatch_does_not_wait_on_merge_scheduler() -> None: """Dispatch review execution directly so polling cannot starve its producer.""" workflow = workflow_text("opencode-review.yml") @@ -292,33 +379,32 @@ def test_required_pull_request_workflows_cancel_superseded_runs() -> None: concurrency_contract = workflow.split("concurrency:", 1)[1].split( "permissions:", 1 )[0] + group_value = workflow_level_concurrency_group(workflow) assert "concurrency:" in workflow - assert "github.event.pull_request.base.repo.full_name" in concurrency_contract - assert "github.repository" in concurrency_contract + assert "github.event.pull_request.base.repo.full_name" in group_value + assert "github.repository" in group_value assert "github.event.pull_request.number" in workflow assert re.search(r"(?m)^concurrency:", workflow) assert "cancel-in-progress: true" in concurrency_contract if filename == "security-scan.yml": assert ( - "github.event_name == 'pull_request_target'" in concurrency_contract - or ("github.event_name == 'pull_request'" in concurrency_contract) + "github.event_name == 'pull_request_target'" in group_value + or ("github.event_name == 'pull_request'" in group_value) ) elif filename == "opencode-review.yml": - assert "required-opencode-review-${{" in concurrency_contract + assert "required-opencode-review-${{" in group_value assert "outputs.admitted == 'true'" in workflow elif filename == "noema-review.yml": assert not re.search(r"(?m)^ concurrency:", workflow) assert "github.event.workflow_run" not in concurrency_contract - assert "required-noema-review-${{" in concurrency_contract + assert "required-noema-review-${{" in group_value assert "outputs.admitted == 'true'" in workflow else: if filename == "codeql-pr.yml": - assert "github.event_name == 'pull_request'" in concurrency_contract + assert "github.event_name == 'pull_request'" in group_value else: - assert ( - "github.event_name == 'pull_request_target'" in concurrency_contract - ) + assert "github.event_name == 'pull_request_target'" in group_value assert "github.event.pull_request.head.sha" not in concurrency_contract assert "format('pr-{0}-{1}'" not in concurrency_contract @@ -425,15 +511,17 @@ def test_strix_serializes_provider_evidence_per_repository_and_pr() -> None: )[0] strix_job = workflow.split("\n strix:\n", 1)[1] + group_value = workflow_level_concurrency_group(workflow) + assert re.search(r"(?m)^concurrency:", workflow) assert "needs: [changed-scope, admit-current-head]" in strix_job assert "needs.admit-current-head.outputs.admitted == 'true'" in strix_job - assert "strix-security-scan-${{" in concurrency_contract - assert "github.event.pull_request.base.repo.full_name" in concurrency_contract - assert "github.event.client_payload.target_repository" in concurrency_contract - assert "github.event.pull_request.number" in concurrency_contract - assert "github.event.client_payload.pr_number" in concurrency_contract - assert "github.run_id" in concurrency_contract + assert "strix-security-scan-${{" in group_value + assert "github.event.pull_request.base.repo.full_name" in group_value + assert "github.event.client_payload.target_repository" in group_value + assert "github.event.pull_request.number" in group_value + assert "github.event.client_payload.pr_number" in group_value + assert "github.run_id" in group_value assert "github.event.pull_request.head.sha" not in concurrency_contract assert "github.event.client_payload.pr_head_sha" not in concurrency_contract assert "cancel-in-progress: true" in concurrency_contract From 6e014c9bae22f1e6d8302a4f1cc38f4f6a114ae2 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 7 Sep 2026 00:20:33 +0900 Subject: [PATCH 05/14] fix(actions): coalesce superseded agent mentions while they are queued (#1964) Move the concurrency group from job level to workflow level in both agent-mention dispatch workflows so a superseded mention is coalesced while it is still queued, instead of holding its queue slot until a runner frees up. Co-Authored-By: Claude Opus 5 --- .../agent-mention-noema-dispatch.yml | 17 ++++- .../agent-mention-opencode-dispatch.yml | 17 ++++- ...st_agent_mention_downstream_idempotency.py | 17 +++-- .../test_required_workflow_queue_contract.py | 69 +++++++++++++++++++ 4 files changed, 110 insertions(+), 10 deletions(-) diff --git a/.github/workflows/agent-mention-noema-dispatch.yml b/.github/workflows/agent-mention-noema-dispatch.yml index 5bed3e8963..ad8abc7b25 100644 --- a/.github/workflows/agent-mention-noema-dispatch.yml +++ b/.github/workflows/agent-mention-noema-dispatch.yml @@ -8,15 +8,26 @@ on: repository_dispatch: types: [agent-mention-noema] +concurrency: + # Workflow-level admission, for the same reason strix.yml, noema-review.yml, + # opencode-review.yml and opencode-review-dispatch.yml carry theirs at this level: + # a job-level group is never evaluated while the whole run waits behind the + # organization job ceiling, so a superseded mention keeps its queue slot until a + # runner frees up and only then cancels. At workflow level the older run is + # coalesced while both are still queued, which is where the slot is actually held. + # This workflow has a single job, so the group lives here and nowhere else -- + # every workflow in this repository that carries a group at both levels + # (strix.yml, opencode-review-dispatch.yml) gives the two levels DIFFERENT names, + # because a job requesting the group its own run already holds would wait on itself. + group: agent-mention-noema-${{ github.event.client_payload.target_repository }}-${{ github.event.client_payload.pr_number || github.run_id }} + cancel-in-progress: true + permissions: contents: read jobs: validate-and-forward: if: github.repository == 'ContextualWisdomLab/.github' - concurrency: - group: agent-mention-noema-${{ github.event.client_payload.target_repository }}-${{ github.event.client_payload.pr_number || github.run_id }} - cancel-in-progress: true runs-on: ubuntu-24.04 timeout-minutes: 5 permissions: diff --git a/.github/workflows/agent-mention-opencode-dispatch.yml b/.github/workflows/agent-mention-opencode-dispatch.yml index b27062ae37..05461c9551 100644 --- a/.github/workflows/agent-mention-opencode-dispatch.yml +++ b/.github/workflows/agent-mention-opencode-dispatch.yml @@ -8,15 +8,26 @@ on: repository_dispatch: types: [agent-mention-opencode] +concurrency: + # Workflow-level admission, for the same reason strix.yml, noema-review.yml, + # opencode-review.yml and opencode-review-dispatch.yml carry theirs at this level: + # a job-level group is never evaluated while the whole run waits behind the + # organization job ceiling, so a superseded mention keeps its queue slot until a + # runner frees up and only then cancels. At workflow level the older run is + # coalesced while both are still queued, which is where the slot is actually held. + # This workflow has a single job, so the group lives here and nowhere else -- + # every workflow in this repository that carries a group at both levels + # (strix.yml, opencode-review-dispatch.yml) gives the two levels DIFFERENT names, + # because a job requesting the group its own run already holds would wait on itself. + group: agent-mention-opencode-${{ github.event.client_payload.target_repository }}-${{ github.event.client_payload.pr_number || github.run_id }} + cancel-in-progress: true + permissions: contents: read jobs: validate-and-forward: if: github.repository == 'ContextualWisdomLab/.github' - concurrency: - group: agent-mention-opencode-${{ github.event.client_payload.target_repository }}-${{ github.event.client_payload.pr_number || github.run_id }} - cancel-in-progress: true runs-on: ubuntu-24.04 timeout-minutes: 5 permissions: diff --git a/tests/test_agent_mention_downstream_idempotency.py b/tests/test_agent_mention_downstream_idempotency.py index c9b6ab86ea..85974a5719 100644 --- a/tests/test_agent_mention_downstream_idempotency.py +++ b/tests/test_agent_mention_downstream_idempotency.py @@ -33,10 +33,19 @@ def test_downstream_workflows_claim_artifacts_and_coalesce_by_pull_request() -> ): header = text.split("\npermissions:\n", 1)[0] job = text.split(" validate-and-forward:\n", 1)[1] - concurrency = job.split(" concurrency:\n", 1)[1].split( - "\n runs-on:", 1 - )[0] - assert "concurrency:" not in header + concurrency = header.split("\nconcurrency:\n", 1)[1] + # 109d79b7 ("replace unsupported queue concurrency") deleted a + # workflow-level block that used ``queue: max``, a key GitHub Actions + # does not support, and parked the group on the job while it was at it. + # What that commit pins is the absence of ``queue:``, not the level: the + # group is back at workflow level because a job-level group is never + # evaluated while the run waits behind the organization job ceiling, so a + # superseded mention held its queue slot until a runner freed up. Every + # other queue-bearing workflow here (strix.yml, noema-review.yml, + # opencode-review.yml, codeql-scan-dispatch.yml, + # opencode-review-dispatch.yml) keys its group at workflow level too. + assert "queue:" not in header + assert " concurrency:" not in job assert "github.event.client_payload.agent_invocation_key" in text assert "cwl-agent-invocation:" in text assert "source_comment_id" in text diff --git a/tests/test_required_workflow_queue_contract.py b/tests/test_required_workflow_queue_contract.py index 9724d67ea7..4055bb5b9d 100644 --- a/tests/test_required_workflow_queue_contract.py +++ b/tests/test_required_workflow_queue_contract.py @@ -280,6 +280,75 @@ def test_privileged_review_dispatch_coalesces_superseded_runs_before_admission() assert re.search(r"(?m)^ concurrency:", workflow) +@pytest.mark.parametrize( + ("workflow_name", "group_prefix"), + ( + ("agent-mention-opencode-dispatch.yml", "agent-mention-opencode-"), + ("agent-mention-noema-dispatch.yml", "agent-mention-noema-"), + ), +) +def test_agent_mention_dispatch_coalesces_while_queued( + workflow_name: str, group_prefix: str +) -> None: + """A superseded agent mention must be discarded before it holds a queue slot. + + Both mention dispatchers carried the same defect + ``opencode-review-dispatch.yml`` carried before #1958: the group sat on the + single ``validate-and-forward`` job, and a job-level group is not evaluated + while the run waits behind the organization job ceiling. Measured on the + review dispatcher over the 39.7 hours ending 2026-09-06T12:41Z, 23 pairs of + runs for one pull request overlapped -- the older run was still open when its + successor arrived -- and none was coalesced; the five that ended + ``cancelled`` were cancelled between 0.7 and 2.9 hours after the newer run + was created, which is a sweep, not concurrency. + + The group moves to workflow level and is not duplicated on the job. Every + workflow here that keys a group at both levels (``strix.yml``, + ``opencode-review-dispatch.yml``) gives the two levels different names, + because a job that requests the group its own run already holds waits on + itself. + """ + workflow = workflow_text(workflow_name) + header = workflow.split("permissions:", 1)[0] + group = workflow_level_concurrency_group(workflow) + + assert re.search(r"(?m)^concurrency:", header) + # Read the group's value, not the block: the comment above these keys quotes + # the very expressions asserted here, so a raw-block assertion would survive + # the key being collapsed. That is the hole #1970 closed. + assert group.strip().startswith(group_prefix) + assert "github.event.client_payload.target_repository" in group + assert "github.event.client_payload.pr_number || github.run_id" in group + # ``cancel-in-progress`` is a sibling key, so it is outside the group value. + # Anchor it to its own line at the block's indent; a comment starts with + # ``#`` and cannot satisfy this. + assert re.search(r"(?m)^ cancel-in-progress: true$", header) + # ``\s`` also matches the newline before a column-0 key, so anchor the + # job-level search on horizontal whitespace only. + assert not re.search(r"(?m)^[ \t]+concurrency:", workflow) + + +def test_agent_mention_router_keeps_its_two_distinct_job_groups() -> None: + """The router must not be hoisted: its two jobs need different groups. + + ``agent-mention-router.yml`` runs a per-issue local route that supersedes + itself and an organization-wide sweep that must never be cancelled midway. + A workflow carries at most one workflow-level group, so hoisting either one + would silently give the sweep the route's ``cancel-in-progress: true`` and + let a later comment kill a sweep that is part way through the organization. + """ + workflow = workflow_text("agent-mention-router.yml") + + assert not re.search(r"(?m)^concurrency:", workflow) + assert ( + "group: review-agent-mention-router-local-${{ github.repository }}" + in workflow + ) + assert "group: review-agent-mention-router-sweep-${{ github.repository }}" in workflow + + sweep = workflow.split("sweep-organization-agent-mentions:", 1)[1] + assert "cancel-in-progress: false" in sweep.split("steps:", 1)[0] + def test_concurrency_group_slice_ignores_the_comment_that_documents_it() -> None: """A comment quoting the key must not satisfy an assertion about the key. From 9aad23c09da468716a788cfed65cd44f7d84a284 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 7 Sep 2026 01:13:45 +0900 Subject: [PATCH 06/14] test(actions): parse the concurrency group instead of slicing the block (#1975) The helper sliced from `permissions:`, so it raised IndexError on the two workflows that declare permissions first, and it returned a folded key's raw newlines rather than the value YAML produces. Nine of twenty-nine workflow-level keys are folded, including every required review workflow. Author and verifier were separate sessions. Merger verification (this session, independent runs): head matched GitHub exactly, 0 behind main, merge tree identical to the branch tree, tests-only. Exact-match against a yaml oracle across every workflow: 29 match, 0 mismatch, 0 exception. Seven adversarial inputs pass, three of them designed here rather than reused -- a comment quoting `group:` before the real key, a job-level concurrency block appearing first in the file, and literal `|`/`|-` scalars, which are refused rather than silently folded into a value YAML never produces. Two-way control on the live hole: flipping noema-review.yml's cancel-in-progress to false behind a comment passes on main (2961) and fails here. pr-review-autofix.yml's deliberate cancel-in-progress: false is preserved. Gate: 2964 passed, 1 skipped, coverage 100%, interrogate 100%. Bypass basis stated plainly: this change is tests-only and does not itself unblock anything, so it does not meet the narrower 'the PR's own diff edits review-pipeline files' reading recorded in docs/product-technical-gap-baseline.md. It is merged under this session's standing instruction to fix the queue, which names verifying `cancel-in-progress: true` as part of that work. The required CodeQL contexts remain unreachable for any code-touching PR here (#1929). Co-Authored-By: Claude Opus 5 --- ..._codeql_scan_dispatch_workflow_contract.py | 6 +- .../test_required_workflow_queue_contract.py | 154 ++++++++++++++++-- 2 files changed, 146 insertions(+), 14 deletions(-) diff --git a/tests/test_codeql_scan_dispatch_workflow_contract.py b/tests/test_codeql_scan_dispatch_workflow_contract.py index 2439d2936e..71fa43541f 100644 --- a/tests/test_codeql_scan_dispatch_workflow_contract.py +++ b/tests/test_codeql_scan_dispatch_workflow_contract.py @@ -20,6 +20,7 @@ from scripts.ci import audit_central_required_workflows as ruleset_audit from tests.test_opencode_workflow_shell_syntax import _extract_run_block from tests.test_required_workflow_queue_contract import ( + workflow_level_cancels_in_progress, workflow_level_concurrency_group, ) @@ -96,7 +97,6 @@ def test_codeql_scan_dispatch_workflow_structure(): def test_codeql_scan_dispatch_keeps_current_head_language_shards_independent(): """A current-head language scan cannot cancel its sibling language scans.""" workflow = WORKFLOW_PATH.read_text(encoding="utf-8") - concurrency = workflow.split("concurrency:\n", 1)[1].split("\n\npermissions:", 1)[0] group_value = workflow_level_concurrency_group(workflow) # The language segment is what keeps sibling language shards in separate groups, so it is @@ -105,7 +105,9 @@ def test_codeql_scan_dispatch_keeps_current_head_language_shards_independent(): assert "github.event.client_payload.target_repository" in group_value assert "github.event.client_payload.pr_number" in group_value assert "github.event.client_payload.required_language" in group_value - assert "cancel-in-progress: true" in concurrency + # Same reasoning as the group above, applied to the flag: the substring form + # is satisfied by a comment quoting it while the key beside it reads false. + assert workflow_level_cancels_in_progress(workflow) def _run_validate_step(tmp_path: Path, env_overrides: dict[str, str], pull_request: dict) -> subprocess.CompletedProcess[str]: diff --git a/tests/test_required_workflow_queue_contract.py b/tests/test_required_workflow_queue_contract.py index 4055bb5b9d..512cb6bef5 100644 --- a/tests/test_required_workflow_queue_contract.py +++ b/tests/test_required_workflow_queue_contract.py @@ -21,6 +21,18 @@ def workflow_text(name: str) -> str: return (REPO_ROOT / ".github" / "workflows" / name).read_text(encoding="utf-8") +# The workflow-level block is the one whose key starts at column zero; job-level +# blocks are indented under ``jobs:``. Anchoring there instead of slicing the text +# before ``permissions:`` makes the search independent of key order, which two +# workflows already need: javascript-coverage-quality-ci.yml and +# repository-metadata-reconcile.yml declare ``permissions:`` above ``concurrency:``, +# and the older slice returned nothing for them and raised IndexError rather than +# reading the block that is plainly there. +WORKFLOW_LEVEL_CONCURRENCY_BLOCK = re.compile( + r"(?m)^concurrency:[ \t]*\n(?P(?:[ \t]+[^\n]*\n)+)" +) + + def workflow_level_concurrency_group(workflow: str) -> str: """Return only the workflow-level ``concurrency.group`` value, comments removed. @@ -33,11 +45,12 @@ def workflow_level_concurrency_group(workflow: str) -> str: cancelling each other, with the contract still green. Slice to the group's own value so the assertion tests the key rather than the documentation beside it. """ - header = workflow.split("permissions:", 1)[0] - block = header.split("concurrency:", 1)[1] + block_match = WORKFLOW_LEVEL_CONCURRENCY_BLOCK.search(workflow) + if block_match is None: + raise AssertionError("workflow declares no workflow-level concurrency block") value: list[str] = [] collecting = False - for line in block.splitlines(): + for line in block_match.group("body").splitlines(): if line.strip().startswith("#"): continue if not collecting: @@ -50,7 +63,46 @@ def workflow_level_concurrency_group(workflow: str) -> str: value.append(line) if not collecting: raise AssertionError("workflow-level concurrency block declares no group") - return "\n".join(value) + head = value[0].strip() + if head.startswith("|"): + # Not represented here, and on 2026-09-07 no workflow uses one: a literal + # block keeps its newlines, so folding it would return a value YAML never + # produces. Refusing is better than returning a plausible wrong string. + raise AssertionError("literal block scalars are not supported for the group key") + if head.startswith(">"): + # Nine of the twenty-nine workflow-level keys are folded, including every + # required review workflow, so this is the majority shape rather than an + # edge case. YAML joins a folded scalar's lines with single spaces, so + # returning the indicator and the raw newlines would make the helper + # disagree with the file's own meaning. Blank lines and more-deeply + # indented lines inside a fold keep their newlines in YAML and are not + # handled here; neither shape occurs in this tree. + return " ".join(part.strip() for part in value[1:] if part.strip()) + return "\n".join(value).strip() + + +def workflow_level_cancels_in_progress(workflow: str) -> bool: + """Return whether the workflow-level block really sets ``cancel-in-progress: true``. + + Anchored to the start of a block line, so a commented-out setting cannot + satisfy it. Substring assertions could: commenting the real line out and + adding ``cancel-in-progress: false`` beside it leaves the searched text in + the file while YAML reads the opposite, and on 2026-09-06 that mutation + passed the whole suite (2958 passed, 0 failed) against ``noema-review.yml``. + A required review workflow that stops cancelling superseded runs keeps every + earlier review alive on each push, which is the queue behaviour this + repository has been trying to remove. + + Kept separate from the group helper on purpose: ``cancel-in-progress`` is a + sibling of ``group``, so it lies outside the value that helper returns and + cannot be covered by moving assertions onto it. + """ + block_match = WORKFLOW_LEVEL_CONCURRENCY_BLOCK.search(workflow) + if block_match is None: + raise AssertionError("workflow declares no workflow-level concurrency block") + return bool( + re.search(r"(?m)^[ \t]+cancel-in-progress:[ \t]+true[ \t]*$", block_match.group("body")) + ) def workflow_step(workflow: str, name: str) -> str: @@ -144,7 +196,10 @@ def test_merge_scheduler_uses_native_auto_merge_after_required_checks() -> None: assert "github.event_name == 'repository_dispatch' && github.run_id" not in ( concurrency_contract ) - assert "cancel-in-progress: ${{" in concurrency_contract + # Anchored, not a substring: this workflow's value is an expression rather + # than a constant, so it cannot use the boolean helper, but a commented-out + # setting must not satisfy it either. + assert re.search(r"(?m)^[ \t]+cancel-in-progress:[ \t]+\$\{\{", concurrency_contract) assert "github.event_name == 'repository_dispatch'" in concurrency_contract @@ -275,7 +330,7 @@ def test_privileged_review_dispatch_coalesces_superseded_runs_before_admission() in group_value ) assert "github.event.client_payload.pr_number || github.run_id" in group_value - assert "cancel-in-progress: true" in concurrency_contract + assert workflow_level_cancels_in_progress(workflow) assert "github.event.client_payload.pr_head_sha" not in concurrency_contract assert re.search(r"(?m)^ concurrency:", workflow) @@ -406,6 +461,74 @@ def test_concurrency_group_slice_reads_a_folded_multi_line_key() -> None: assert "cancel-in-progress" not in group_value +def test_concurrency_helpers_read_the_block_when_permissions_comes_first() -> None: + """Key order must not decide whether the contract can see the block. + + The earlier helper sliced the text before ``permissions:`` and then split on + ``concurrency:``. That works only when ``concurrency:`` is declared first. Two + workflows in this repository declare ``permissions:`` above it -- + javascript-coverage-quality-ci.yml and repository-metadata-reconcile.yml -- + and for those the slice was empty, so the helper raised ``IndexError`` instead + of reading the block that is plainly there. Anchoring at column zero makes the + order irrelevant. + """ + permissions_first = textwrap.dedent( + """\ + name: Example + permissions: + contents: read + concurrency: + group: example-${{ github.repository }}-${{ github.event.pull_request.number }} + cancel-in-progress: true + jobs: + build: + runs-on: ubuntu-latest + """ + ) + + assert ( + workflow_level_concurrency_group(permissions_first) + == "example-${{ github.repository }}-${{ github.event.pull_request.number }}" + ) + assert workflow_level_cancels_in_progress(permissions_first) + + +def test_concurrency_helpers_name_a_missing_block_instead_of_index_error() -> None: + """A workflow with no top-level block must fail with a sentence, not ``IndexError``. + + ``IndexError: list index out of range`` names neither the workflow nor the + contract it broke, so a reader has to reconstruct both from the traceback. + """ + no_block = "name: Example\njobs:\n build:\n runs-on: ubuntu-latest\n" + + for helper in (workflow_level_concurrency_group, workflow_level_cancels_in_progress): + with pytest.raises(AssertionError, match="no workflow-level concurrency block"): + helper(no_block) + + +def test_cancel_in_progress_assertion_rejects_a_commented_out_setting() -> None: + """The negative control for ``workflow_level_cancels_in_progress``. + + A substring test for ``cancel-in-progress: true`` is satisfied by a comment + that quotes it. On 2026-09-06 that exact mutation -- comment out the real line + in noema-review.yml, add ``cancel-in-progress: false`` beneath it -- passed the + whole suite (2958 passed, 0 failed) while every push to a pull request stopped + cancelling its own superseded run. Anchoring to the start of a block line is + what closes it. + """ + quoted_but_disabled = textwrap.dedent( + """\ + concurrency: + group: example-${{ github.repository }}-${{ github.event.pull_request.number }} + # cancel-in-progress: true + cancel-in-progress: false + """ + ) + + assert "cancel-in-progress: true" in quoted_but_disabled + assert not workflow_level_cancels_in_progress(quoted_but_disabled) + + def test_required_opencode_dispatch_does_not_wait_on_merge_scheduler() -> None: """Dispatch review execution directly so polling cannot starve its producer.""" workflow = workflow_text("opencode-review.yml") @@ -455,7 +578,7 @@ def test_required_pull_request_workflows_cancel_superseded_runs() -> None: assert "github.repository" in group_value assert "github.event.pull_request.number" in workflow assert re.search(r"(?m)^concurrency:", workflow) - assert "cancel-in-progress: true" in concurrency_contract + assert workflow_level_cancels_in_progress(workflow) if filename == "security-scan.yml": assert ( "github.event_name == 'pull_request_target'" in group_value @@ -497,12 +620,17 @@ def test_pr_quality_workflows_isolate_concurrency_by_repository_and_pr() -> None "${{ github.event.pull_request.number || github.ref }}" ) in concurrency if filename == "cloudflare-dns.yml": - assert ( - "cancel-in-progress: ${{ github.event_name == 'pull_request' }}" - in concurrency + # Anchored like the ``true`` contracts below: a commented-out setting + # must not satisfy this either, and this workflow deliberately cancels + # only for pull requests, so its value is an expression rather than a + # constant. + assert re.search( + r"(?m)^[ \t]+cancel-in-progress:[ \t]+\$\{\{ github\.event_name ==" + r" 'pull_request' \}\}[ \t]*$", + concurrency, ) else: - assert "cancel-in-progress: true" in concurrency + assert workflow_level_cancels_in_progress(workflow) def test_central_semgrep_logs_every_finding_and_distinguishes_engine_failure() -> None: @@ -832,7 +960,9 @@ def test_pull_request_close_events_cancel_superseded_runs_without_heavy_jobs() - )[0] assert "github.event.pull_request.number" in concurrency_contract assert "github.event.pull_request.head.sha" not in concurrency_contract - assert "cancel-in-progress:" in concurrency_contract + assert re.search( + r"(?m)^[ \t]+cancel-in-progress:[ \t]+\S", concurrency_contract + ) else: raise AssertionError(f"unclassified close-event workflow: {filename}") assert "github.event.action != 'closed'" in workflow From ad0779bee66624c3997947d7691f4b0dbb973be1 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 7 Sep 2026 01:34:33 +0900 Subject: [PATCH 07/14] fix(scheduler): skip review dispatch for a head whose merge tree cannot materialize (#1973) Materializing the PR merge tree is a precondition of coverage-source-tree, so a conflicting head can only produce a failed dispatch. The guard returns before review_dispatch_admitted, preserving the bounded admission budget for a PR a review could actually finish. UNKNOWN is deliberately not blocked. Authored, verified and merged by three separate sessions. Merger verification, my own runs: head matched GitHub, 0 behind main, merge tree identical to the branch tree. Against current main the diff is 2 files, 206 insertions, 0 deletions; the production change is 29 added lines and nothing removed. The guard sits at line 3691 and review_dispatch_admitted at 3706, so the budget is preserved; 6 call sites handle the new return value. Negative control, removing only the 15 guard lines: exactly 2 tests fail -- test_review_dispatch_skips_a_head_whose_merge_tree_cannot_materialize and test_review_dispatch_reads_the_rest_merge_state_not_only_graphql -- asserting merge_conflict against a received dispatched. Gate: 2968 passed, 1 skipped, coverage 100% (13196 statements, 0 missed), interrogate 100%. The cited measurement was corrected before merge. It read '20 dispatches across 80.5 hours'; two sessions independently recounted .github#1529 as 27 dispatches across 100.8 hours with zero successes (20 cancelled, 7 failed). The original figure came from a run window that silently truncated before the pull request existed. The comment now carries the corrected numbers and the window. Authorization is this session's standing instruction to clear the queue, which lives outside this repository's text -- as docs/product-technical-gap-baseline.md itself records after a 2026-09-01 correction, and that file is annotated '(not merge authorization)' at every entry point. Corroborating rather than authorizing: this PR's own diff edits scripts/ci/ review-pipeline code, so it cannot validate itself across the pull_request_target trust boundary, which is the conservative condition that document records one earlier pass imposing on itself. On this head all 12 required contexts are unsatisfiable: 9 never reported, 3 queued, 0 passing. Co-Authored-By: Claude Opus 5 --- scripts/ci/pr_review_merge_scheduler_core.py | 29 +++ tests/test_pr_review_merge_scheduler.py | 177 +++++++++++++++++++ 2 files changed, 206 insertions(+) diff --git a/scripts/ci/pr_review_merge_scheduler_core.py b/scripts/ci/pr_review_merge_scheduler_core.py index c4e9d28ebd..cffb52cb53 100644 --- a/scripts/ci/pr_review_merge_scheduler_core.py +++ b/scripts/ci/pr_review_merge_scheduler_core.py @@ -2927,6 +2927,8 @@ def post_update_branch_followup( if wait_reason: return f"{head_note}; {wait_reason}" dispatch_result = dispatch_opencode_review(repo, workflow, updated_pr, dry_run=dry_run) + if dispatch_result == "merge_conflict": + return f"{head_note}; PR merge tree cannot be materialized while the head conflicts; review dispatch skipped" if dispatch_result == "admission_deferred": return f"{head_note}; bounded admission budget is exhausted" if dispatch_result == "already_running": @@ -3686,6 +3688,23 @@ def dispatch_opencode_review(repo: str, workflow: str, pr: dict[str, Any], *, dr return "already_running" if dry_run: return "dry_run" + if effective_merge_state(pr) in {"DIRTY", "CONFLICTING"}: + # Materializing the PR merge tree is a hard precondition of + # coverage-source-tree, so a conflicting head can only produce a failed + # dispatch. Returning before review_dispatch_admitted keeps the bounded + # admission budget for a PR a review could actually finish: measured on + # .github#1529, one conflicting head consumed 27 dispatches across 100.8 + # hours with zero successes (20 cancelled, 7 failed, and all 7 that + # reached coverage-source-tree died there; 2026-09-01T08:46Z..09-05T13:31Z). + # UNKNOWN is deliberately not blocked -- an + # uncomputed mergeability must not starve a reviewable PR. + print( + "OpenCode review dispatch skipped: GitHub reports the current head as " + f"{effective_merge_state(pr)}, so the PR merge tree cannot be materialized " + "and the review would fail. Repair the branch and push it, then the review " + "runs on the new head." + ) + return "merge_conflict" if not review_dispatch_admitted("opencode", repo, pr): return "admission_deferred" base_ref, base_sha, head_sha = validated_pr_dispatch_fields(pr) @@ -4134,6 +4153,8 @@ def dispatch_draft_review_only( f"draft PR review-only dispatch; current head has completed Strix evidence; {wait_reason}", ) dispatch_result = dispatch_opencode_review(repo, workflow, pr, dry_run=dry_run) + if dispatch_result == "merge_conflict": + return Decision(number, "wait", "draft PR review-only dispatch; PR merge tree cannot be materialized while the head conflicts; review dispatch skipped") if dispatch_result == "admission_deferred": return Decision(number, "wait", "draft PR review-only dispatch; bounded admission budget is exhausted") if dispatch_result == "already_running": @@ -4246,6 +4267,8 @@ def inspect_pr( if wait_reason: return Decision(number, "wait", f"stacked PR onto {base_ref}; {wait_reason}") dispatch_result = dispatch_opencode_review(repo, workflow, pr, dry_run=dry_run) + if dispatch_result == "merge_conflict": + return Decision(number, "wait", f"stacked PR onto {base_ref}; PR merge tree cannot be materialized while the head conflicts; review dispatch skipped") if dispatch_result == "admission_deferred": return Decision(number, "wait", f"stacked PR onto {base_ref}; bounded admission budget is exhausted") if dispatch_result == "already_running": @@ -4464,6 +4487,8 @@ def request_branch_update(freshness_reason: str, *, suffix: str = "") -> Decisio if wait_reason: return decide("wait", wait_reason) dispatch_result = dispatch_opencode_review(repo, workflow, pr, dry_run=dry_run) + if dispatch_result == "merge_conflict": + return decide("wait", "PR merge tree cannot be materialized while the head conflicts; review dispatch skipped") if dispatch_result == "admission_deferred": return decide("wait", "bounded admission budget is exhausted") if dispatch_result == "already_running": @@ -4879,6 +4904,8 @@ def request_branch_update(freshness_reason: str, *, suffix: str = "") -> Decisio f"OpenCode review exceeded {stale_opencode_minutes} minute retry threshold; review dispatch limit reached", ) dispatch_result = dispatch_opencode_review(repo, workflow, pr, dry_run=dry_run) + if dispatch_result == "merge_conflict": + return decide("wait", "PR merge tree cannot be materialized while the head conflicts; review dispatch skipped") if dispatch_result == "admission_deferred": return decide("wait", "bounded admission budget is exhausted") if dispatch_result == "already_running": @@ -4929,6 +4956,8 @@ def request_branch_update(freshness_reason: str, *, suffix: str = "") -> Decisio if wait_reason: return decide("wait", f"current head has completed Strix evidence; {wait_reason}") dispatch_result = dispatch_opencode_review(repo, workflow, pr, dry_run=dry_run) + if dispatch_result == "merge_conflict": + return decide("wait", "PR merge tree cannot be materialized while the head conflicts; review dispatch skipped") if dispatch_result == "admission_deferred": return decide("wait", "bounded admission budget is exhausted") if dispatch_result == "already_running": diff --git a/tests/test_pr_review_merge_scheduler.py b/tests/test_pr_review_merge_scheduler.py index 2cbda7f85b..8b924291a5 100644 --- a/tests/test_pr_review_merge_scheduler.py +++ b/tests/test_pr_review_merge_scheduler.py @@ -2330,6 +2330,75 @@ def test_dispatch_opencode_review_falls_back_to_bounded_discovery(monkeypatch): assert json.loads(dispatch_calls[0])["client_payload"]["required_run_id"] == 999 +def _dispatch_with_merge_state(monkeypatch, **overrides): + """Run the OpenCode dispatch funnel and report what it did.""" + monkeypatch.setenv("GITHUB_ACTIONS", "true") + monkeypatch.setenv("GH_TOKEN", "opencode-app-token") + monkeypatch.setattr( + sched, "active_opencode_run_refs", lambda repo, workflow, pr: ([], []) + ) + monkeypatch.setattr(sched, "discover_opencode_required_run_id", lambda repo, head_sha: None) + dispatched: list[str | None] = [] + monkeypatch.setattr( + sched, "run_github_dispatch", lambda args, stdin=None: dispatched.append(stdin) + ) + admitted: list[str] = [] + + def record_admission(component, repo, pr): + admitted.append(component) + return True + + monkeypatch.setattr(sched, "review_dispatch_admitted", record_admission) + pr = make_pr(headRefOid="a" * 40, baseRefOid="b" * 40, **overrides) + monkeypatch.setattr(sched, "fetch_pr", lambda *_args: [pr]) + result = sched.dispatch_opencode_review("owner/repo", "OpenCode Review", pr, dry_run=False) + return result, dispatched, admitted + + +def test_review_dispatch_skips_a_head_whose_merge_tree_cannot_materialize(monkeypatch): + """A conflicting head is skipped before it can spend the admission budget. + + coverage-source-tree must materialize the PR merge tree, which git cannot do + while the head conflicts, so the dispatch could only fail. Measured on + .github#1529: one conflicting head took 27 dispatches over 100.8 hours and + produced no review; the 7 that reached coverage-source-tree all died there, + and the other 20 were cancelled before they ever started it. + """ + for graph_state in ("DIRTY", "CONFLICTING"): + result, dispatched, admitted = _dispatch_with_merge_state( + monkeypatch, mergeStateStatus=graph_state + ) + assert result == "merge_conflict" + assert dispatched == [], f"{graph_state} must not reach the dispatch API" + assert admitted == [], f"{graph_state} must not consume the admission budget" + + +def test_review_dispatch_reads_the_rest_merge_state_not_only_graphql(monkeypatch): + """The skip honours REST mergeability, which outranks a stale GraphQL value.""" + result, dispatched, admitted = _dispatch_with_merge_state( + monkeypatch, mergeStateStatus="CLEAN", restMergeableState="DIRTY" + ) + assert result == "merge_conflict" + assert dispatched == [] + assert admitted == [] + + +def test_review_dispatch_still_runs_when_mergeability_is_not_yet_known(monkeypatch): + """UNKNOWN mergeability must not starve a reviewable PR. + + Negative control for the conflict skip: GitHub reports UNKNOWN while it is + still computing a merge commit, so blocking on it would defer every PR the + scheduler reached first. + """ + for graph_state in ("UNKNOWN", "BEHIND", "BLOCKED", "CLEAN"): + result, dispatched, admitted = _dispatch_with_merge_state( + monkeypatch, mergeStateStatus=graph_state + ) + assert result == "dispatched", f"{graph_state} must still dispatch" + assert len(dispatched) == 1 + assert admitted == ["opencode"] + + def test_central_progress_ignores_required_workflow_checkrun_placeholder( monkeypatch, ): @@ -10695,3 +10764,111 @@ def behind_with(nodes): assert "checks are still queued or running" not in resumed.reason assert sched.has_in_flight_check_runs(behind_with([])) is False + + +def _skip_opencode_dispatch(monkeypatch): + """Make the OpenCode dispatch funnel report an unmaterializable merge tree.""" + monkeypatch.setattr( + sched, "dispatch_opencode_review", lambda repo, workflow, pr, dry_run: "merge_conflict" + ) + monkeypatch.setattr( + sched, "dispatch_strix_evidence", lambda repo, workflow, pr, dry_run: "dispatched" + ) + + +SKIP_REASON = "PR merge tree cannot be materialized while the head conflicts; review dispatch skipped" + + +def test_every_review_dispatch_caller_reports_the_conflict_skip_truthfully(monkeypatch): + """No dispatch path may report a skipped conflicting head as a dispatch. + + Each caller's fall-through says the review was dispatched, so a new funnel + result that a caller does not handle would be reported as work that never + happened -- and that is the same telemetry used to find the treadmill this + skip removes. + """ + _skip_opencode_dispatch(monkeypatch) + + stacked = inspect(make_pr(baseRefName="develop")) + assert stacked.action == "wait" + assert stacked.reason == f"stacked PR onto develop; {SKIP_REASON}" + + draft = inspect( + make_pr(isDraft=True, statusCheckRollup={"contexts": {"nodes": [strix_check()]}}), + allow_draft_review_dispatch=True, + ) + assert draft.action == "wait" + assert draft.reason == f"draft PR review-only dispatch; {SKIP_REASON}" + + strix_done = inspect(make_pr(statusCheckRollup={"contexts": {"nodes": [strix_check()]}})) + assert strix_done.action == "wait" + assert strix_done.reason == SKIP_REASON + + stale = inspect( + make_pr( + statusCheckRollup={ + "contexts": { + "nodes": [ + opencode_check(started_at="2026-06-25T07:00:00Z"), + strix_check(), + ] + } + } + ) + ) + assert stale.action == "wait" + assert stale.reason == SKIP_REASON + + coverage_retry = inspect( + make_pr( + reviews={ + "nodes": [ + { + **opencode_review("CHANGES_REQUESTED", "head"), + "body": ( + "OpenCode cannot approve yet because required coverage evidence " + "did not pass. The coverage-evidence gate reported that required " + "test/docstring evidence was not proven." + ), + } + ] + }, + statusCheckRollup={ + "contexts": { + "nodes": [ + strix_check(), + { + "__typename": "CheckRun", + "name": "coverage-evidence", + "status": "COMPLETED", + "conclusion": "SUCCESS", + }, + {**opencode_check(status="COMPLETED"), "conclusion": "FAILURE"}, + ] + } + }, + ) + ) + assert coverage_retry.action == "wait" + assert coverage_retry.reason == SKIP_REASON + + original = make_pr(headRefOid="old-head") + monkeypatch.setattr( + sched, + "wait_for_updated_branch_head", + lambda repo, pr: make_pr( + headRefOid="new-head", + statusCheckRollup={"contexts": {"nodes": [strix_check()]}}, + ), + ) + followup_reason = sched.post_update_branch_followup( + "owner/repo", + original, + dry_run=False, + trigger_reviews=True, + review_dispatch_allowed=True, + workflow="OpenCode Review", + security_workflow="Strix Security Scan", + stale_opencode_minutes=45, + ) + assert SKIP_REASON in followup_reason From 49eb9e7035a6994fffb5b24bf943156be27a02fb Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 7 Sep 2026 02:08:57 +0900 Subject: [PATCH 08/14] test(actions): anchor cancel-in-progress contracts so a flipped flag fails (#1979) strix.yml's workflow-level cancel-in-progress was guarded by nothing: its own test asserted the string as a substring, and the list in test_required_pull_request_workflows_cancel_superseded_runs did not include it. Authored and verified by separate sessions. Merger verification, my own runs: head agreed across three paths (local ref, ls-remote, PR head) after the author hit a push/PR-creation mismatch on this branch; 0 behind main; merge tree identical to the branch tree; 13 files, all under tests/. Assertion forms: 24 helper calls, 4 line-anchored regexes, 19 assertions replaced. Two-way control, comment out strix.yml's flag and set it false: main reports 2968 passed and does not catch it; this branch fails 2 tests. Gate on the branch tree: 2968 passed, 1 skipped, coverage 100% (13196 statements, 0 missed), interrogate 100%. Four workflows are deliberately left uncontracted because no test states their intended value, and writing one would invent policy. One of them, scheduled-security-scan.yml, does produce the required context 'Detect CodeQL languages' -- which strengthens rather than weakens that choice: its cancel-in-progress: true with a github.ref-shared group is what starved it to 228 cancellations and 0 completions over 2026-09-01..09-05, so the correct value is an open policy question on #1800, not a contract to fix here. Authorization is this session's standing instruction to clear the queue, which lives outside this repository's text. Corroborating, not authorizing: on this head none of the 12 required contexts can pass -- the CodeQL pair is unreachable while codeql-scan-dispatch has never succeeded (#1929). Co-Authored-By: Claude Opus 5 --- .../test_agent_mention_downstream_idempotency.py | 5 ++++- tests/test_agent_mention_queue_isolation.py | 8 +++++++- ..._agent_review_runtime_quality_consolidation.py | 6 +++++- tests/test_bootstrap_codeql_pull_requests.py | 6 +++++- tests/test_close_empty_pr_queue_pressure.py | 3 ++- .../test_exact_artifact_quality_single_runner.py | 6 +++++- tests/test_noema_review_gate.py | 6 +++++- ...est_noema_token_lifetime_stale_run_contract.py | 5 ++++- tests/test_opencode_required_rerun_capacity.py | 5 ++++- .../test_opencode_required_verdict_regression.py | 10 +++++++--- tests/test_pr_review_fix_scheduler_source_pin.py | 6 +++++- tests/test_repository_metadata_workflow_pages.py | 8 +++++++- tests/test_required_workflow_queue_contract.py | 15 ++++++++++----- 13 files changed, 70 insertions(+), 19 deletions(-) diff --git a/tests/test_agent_mention_downstream_idempotency.py b/tests/test_agent_mention_downstream_idempotency.py index 85974a5719..cb3c31763e 100644 --- a/tests/test_agent_mention_downstream_idempotency.py +++ b/tests/test_agent_mention_downstream_idempotency.py @@ -1,5 +1,8 @@ """Static contracts for downstream review-agent invocation idempotency.""" +from tests.test_required_workflow_queue_contract import ( + workflow_level_cancels_in_progress, +) from pathlib import Path ROOT = Path(__file__).resolve().parents[1] @@ -54,7 +57,7 @@ def test_downstream_workflows_claim_artifacts_and_coalesce_by_pull_request() -> f"group: {workflow_name}-${{{{ github.event.client_payload.target_repository }}}}-${{{{ github.event.client_payload.pr_number || github.run_id }}}}" in concurrency ) - assert "cancel-in-progress: true" in concurrency + assert workflow_level_cancels_in_progress(text) assert "queue: max" not in text assert "^[0-9a-f]{64}$" in text assert "^[1-9][0-9]*$" in text diff --git a/tests/test_agent_mention_queue_isolation.py b/tests/test_agent_mention_queue_isolation.py index e93ae61aed..d751076661 100644 --- a/tests/test_agent_mention_queue_isolation.py +++ b/tests/test_agent_mention_queue_isolation.py @@ -2,6 +2,9 @@ from __future__ import annotations +import re + + from pathlib import Path ROOT = Path(__file__).resolve().parents[1] @@ -68,4 +71,7 @@ def test_interactive_queue_retires_older_requests_for_only_the_same_pr() -> None concurrency = _concurrency_block(local_job) assert "github.event.issue.number || github.run_id" in concurrency - assert "cancel-in-progress: true" in concurrency + # Anchored on the JOB block, not the workflow-level helper: this router + # declares no workflow-level concurrency, so the sibling helper would raise + # rather than read the block this test is about. + assert re.search(r"(?m)^[ \t]+cancel-in-progress:[ \t]+true[ \t]*$", concurrency) diff --git a/tests/test_agent_review_runtime_quality_consolidation.py b/tests/test_agent_review_runtime_quality_consolidation.py index b0c90eb707..4592cfd166 100644 --- a/tests/test_agent_review_runtime_quality_consolidation.py +++ b/tests/test_agent_review_runtime_quality_consolidation.py @@ -2,6 +2,10 @@ from __future__ import annotations +from tests.test_required_workflow_queue_contract import ( + workflow_level_cancels_in_progress, +) + import re import subprocess from pathlib import Path @@ -56,7 +60,7 @@ def test_pr_concurrency_cancels_only_the_same_workflow_repository_and_pr() -> No "${{ github.repository }}-${{ github.event.pull_request.number }}" in concurrency_contract ) - assert "cancel-in-progress: true" in concurrency_contract + assert workflow_level_cancels_in_progress(workflow) assert "github.sha" not in concurrency_contract assert "head.sha" not in concurrency_contract assert "github.ref" not in concurrency_contract diff --git a/tests/test_bootstrap_codeql_pull_requests.py b/tests/test_bootstrap_codeql_pull_requests.py index eb20c3d1e0..12fd1d8b52 100644 --- a/tests/test_bootstrap_codeql_pull_requests.py +++ b/tests/test_bootstrap_codeql_pull_requests.py @@ -2,6 +2,10 @@ from __future__ import annotations +from tests.test_required_workflow_queue_contract import ( + workflow_level_cancels_in_progress, +) + from io import StringIO import json import subprocess @@ -67,7 +71,7 @@ def test_rendered_workflow_redetects_stacks_and_pins_every_action() -> None: assert "pull_request:" not in workflow assert "github.event.pull_request" not in workflow assert "github.event_name == 'push' && github.ref || github.event_name" in workflow - assert "cancel-in-progress: true" in workflow + assert workflow_level_cancels_in_progress(workflow) assert workflow.count("@cdf488f595d80d6e07e03d4674febd5ab45fa938 # v4.37.9") == 2 assert "actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0" in workflow diff --git a/tests/test_close_empty_pr_queue_pressure.py b/tests/test_close_empty_pr_queue_pressure.py index 331a604631..6da88f63f1 100644 --- a/tests/test_close_empty_pr_queue_pressure.py +++ b/tests/test_close_empty_pr_queue_pressure.py @@ -1,5 +1,6 @@ """Regression contracts for close-event runner admission pressure.""" +import re from pathlib import Path import pytest @@ -29,7 +30,7 @@ def test_closed_pull_request_does_not_allocate_a_noop_runner( assert "closed" in workflow assert "github.event.pull_request.number" in concurrency assert "github.event.pull_request.head.sha" not in concurrency - assert "cancel-in-progress:" in concurrency + assert re.search(r"(?m)^[ \t]+cancel-in-progress:[ \t]+\S", concurrency) assert "cancel-closed-pr-runs:" not in workflow assert "github.event.action != 'closed'" in workflow assert evidence_job in workflow diff --git a/tests/test_exact_artifact_quality_single_runner.py b/tests/test_exact_artifact_quality_single_runner.py index b8711ab7a5..9378e2232c 100644 --- a/tests/test_exact_artifact_quality_single_runner.py +++ b/tests/test_exact_artifact_quality_single_runner.py @@ -2,6 +2,10 @@ from __future__ import annotations +from tests.test_required_workflow_queue_contract import ( + workflow_level_cancels_in_progress, +) + import re from pathlib import Path @@ -68,7 +72,7 @@ def test_pr_concurrency_uses_workflow_repository_and_pr_identity() -> None: "${{ github.event.pull_request.number }}" in concurrency ) - assert "cancel-in-progress: true" in concurrency + assert workflow_level_cancels_in_progress(workflow) assert "github.sha" not in concurrency assert "pull_request.head.sha" not in concurrency diff --git a/tests/test_noema_review_gate.py b/tests/test_noema_review_gate.py index 5fa23dec53..e8a0dd6f59 100644 --- a/tests/test_noema_review_gate.py +++ b/tests/test_noema_review_gate.py @@ -1,3 +1,7 @@ + +from tests.test_required_workflow_queue_contract import ( + workflow_level_cancels_in_progress, +) import base64 import hashlib import http.client @@ -60,7 +64,7 @@ def test_noema_concurrency_and_live_head_cleanup_preserve_current_review(): workflow = Path(".github/workflows/noema-review.yml").read_text(encoding="utf-8") concurrency = workflow.split("concurrency:", 1)[1].split("permissions:", 1)[0] assert "github.event.workflow_run" not in concurrency - assert "cancel-in-progress: true" in concurrency + assert workflow_level_cancels_in_progress(workflow) admission = workflow.split("\n admit-current-head:\n", 1)[1].split( "\n cancel-closed-pr-runs:", 1 )[0] diff --git a/tests/test_noema_token_lifetime_stale_run_contract.py b/tests/test_noema_token_lifetime_stale_run_contract.py index 77a64cabdb..108647907a 100644 --- a/tests/test_noema_token_lifetime_stale_run_contract.py +++ b/tests/test_noema_token_lifetime_stale_run_contract.py @@ -1,5 +1,8 @@ """Regression contract for consolidated Noema quality-run retirement.""" +from tests.test_required_workflow_queue_contract import ( + workflow_level_cancels_in_progress, +) from pathlib import Path @@ -26,4 +29,4 @@ def test_noema_token_lifetime_quality_ci_retires_superseded_pr_runs() -> None: assert "github.event.pull_request.head.sha" not in concurrency_contract assert "github.sha" not in concurrency_contract assert "github.ref" not in concurrency_contract - assert "cancel-in-progress: true" in concurrency_contract + assert workflow_level_cancels_in_progress(workflow) diff --git a/tests/test_opencode_required_rerun_capacity.py b/tests/test_opencode_required_rerun_capacity.py index 431d3a8bc2..c85bc24e3c 100644 --- a/tests/test_opencode_required_rerun_capacity.py +++ b/tests/test_opencode_required_rerun_capacity.py @@ -1,5 +1,8 @@ """Capacity contract for Required OpenCode dispatch and exact-run wakeup.""" +from tests.test_required_workflow_queue_contract import ( + workflow_level_cancels_in_progress, +) import json import os from pathlib import Path @@ -48,7 +51,7 @@ def test_native_cancellation_runs_before_runner_admission() -> None: assert "required-opencode-review-${{" in concurrency assert "github.event.pull_request.number || github.run_id" in concurrency - assert "cancel-in-progress: true" in concurrency + assert workflow_level_cancels_in_progress(required) assert "live_head_matches()" in required diff --git a/tests/test_opencode_required_verdict_regression.py b/tests/test_opencode_required_verdict_regression.py index f29b97a663..5c5325d1aa 100644 --- a/tests/test_opencode_required_verdict_regression.py +++ b/tests/test_opencode_required_verdict_regression.py @@ -2,6 +2,10 @@ from __future__ import annotations +from tests.test_required_workflow_queue_contract import ( + workflow_level_cancels_in_progress, +) + import json import os import re @@ -86,7 +90,7 @@ def test_opencode_dispatch_uses_the_same_target_repo_pr_group() -> None: assert "opencode-review-${{" in dispatched assert "needs.validate-pr-metadata.outputs.target_repository" in dispatched assert "needs.validate-pr-metadata.outputs.pr_number || github.run_id" in dispatched - assert "cancel-in-progress: true" in dispatched + assert workflow_level_cancels_in_progress(dispatched) assert dispatched.index("validate-pr-metadata:") < dispatched.index(" concurrency:") @@ -621,7 +625,7 @@ def test_opencode_review_trigger_reacts_to_draft_conversion() -> None: "types: [opened, synchronize, reopened, ready_for_review, " "converted_to_draft, closed]" ) in trigger_block - assert "cancel-in-progress: true" in workflow.split("\npermissions:\n", 1)[0] + assert workflow_level_cancels_in_progress(workflow) def test_opencode_review_concurrency_group_is_workflow_level_repo_and_pr() -> None: @@ -637,7 +641,7 @@ def test_opencode_review_concurrency_group_is_workflow_level_repo_and_pr() -> No assert "required-opencode-review-${{" in concurrency_block assert "github.event.pull_request.head.sha || github.run_id" not in concurrency_block assert "github.event.pull_request.number || github.run_id" in concurrency_block - assert "cancel-in-progress: true" in concurrency_block + assert workflow_level_cancels_in_progress(workflow) assert " concurrency:" not in target_job.split(" permissions:", 1)[0] admission = workflow.split("\n admit-current-head:\n", 1)[1].split( "\n coverage-source-tree:", 1 diff --git a/tests/test_pr_review_fix_scheduler_source_pin.py b/tests/test_pr_review_fix_scheduler_source_pin.py index 7958ba5163..0f9e0adb1c 100644 --- a/tests/test_pr_review_fix_scheduler_source_pin.py +++ b/tests/test_pr_review_fix_scheduler_source_pin.py @@ -2,6 +2,10 @@ from __future__ import annotations +from tests.test_required_workflow_queue_contract import ( + workflow_level_cancels_in_progress, +) + from pathlib import Path @@ -88,7 +92,7 @@ def test_reusable_scheduler_retains_least_privilege_and_bounded_dispatch() -> No assert "pull-requests: write" not in workflow assert "MAX_DISPATCHES:" in workflow assert "RETRY_HOURS:" in workflow - assert "cancel-in-progress: true" in workflow + assert workflow_level_cancels_in_progress(workflow) def test_reusable_scheduler_bounds_both_oidc_exchange_requests() -> None: diff --git a/tests/test_repository_metadata_workflow_pages.py b/tests/test_repository_metadata_workflow_pages.py index 82aa4462f7..5c05dfbe3d 100644 --- a/tests/test_repository_metadata_workflow_pages.py +++ b/tests/test_repository_metadata_workflow_pages.py @@ -2,6 +2,8 @@ from __future__ import annotations +import re + import importlib.util import json from pathlib import Path @@ -40,7 +42,11 @@ def test_metadata_pr_validation_cancels_superseded_head_runs() -> None: concurrency = workflow.split("concurrency:", 1)[1].split("jobs:", 1)[0] assert "group: repository-metadata-reconcile-${{ github.ref }}" in concurrency - assert "cancel-in-progress: ${{ github.event_name == 'pull_request' }}" in concurrency + assert re.search( + r"(?m)^[ \t]+cancel-in-progress:[ \t]+\$\{\{ github\.event_name == 'pull_request' \}\}" + r"[ \t]*$", + concurrency, + ) assert "github.event.pull_request.head.sha" not in concurrency diff --git a/tests/test_required_workflow_queue_contract.py b/tests/test_required_workflow_queue_contract.py index 512cb6bef5..8bc0791631 100644 --- a/tests/test_required_workflow_queue_contract.py +++ b/tests/test_required_workflow_queue_contract.py @@ -402,7 +402,12 @@ def test_agent_mention_router_keeps_its_two_distinct_job_groups() -> None: assert "group: review-agent-mention-router-sweep-${{ github.repository }}" in workflow sweep = workflow.split("sweep-organization-agent-mentions:", 1)[1] - assert "cancel-in-progress: false" in sweep.split("steps:", 1)[0] + # Anchored on the sweep JOB block: this router declares no workflow-level + # concurrency, so the sibling helper would raise rather than read it. + assert re.search( + r"(?m)^[ \t]+cancel-in-progress:[ \t]+false[ \t]*$", + sweep.split("steps:", 1)[0], + ) def test_concurrency_group_slice_ignores_the_comment_that_documents_it() -> None: """A comment quoting the key must not satisfy an assertion about the key. @@ -721,7 +726,7 @@ def test_strix_serializes_provider_evidence_per_repository_and_pr() -> None: assert "github.run_id" in group_value assert "github.event.pull_request.head.sha" not in concurrency_contract assert "github.event.client_payload.pr_head_sha" not in concurrency_contract - assert "cancel-in-progress: true" in concurrency_contract + assert workflow_level_cancels_in_progress(workflow) assert " concurrency:" not in strix_job.split(" permissions:", 1)[0] assert "queue: max" not in workflow assert workflow.index("admit-current-head:") < workflow.index("\n strix:\n") @@ -981,7 +986,7 @@ def test_pull_request_close_events_cancel_superseded_runs_without_heavy_jobs() - # outside that queue so synchronize and close events can retire old work. assert "admit-current-head:" in strix_workflow assert "skipping stale evidence" in strix_workflow - assert "cancel-in-progress: true" in strix_workflow + assert workflow_level_cancels_in_progress(strix_workflow) def test_merge_scheduler_owns_empty_pr_cleanup_without_checkout() -> None: @@ -1043,7 +1048,7 @@ def test_noema_triggers_preserve_standalone_pull_request_review() -> None: assert "github.event_name" not in concurrency_contract.split( "cancel-in-progress:", 1 )[0] - assert "cancel-in-progress: true" in concurrency_contract + assert workflow_level_cancels_in_progress(workflow) assert re.search(r"(?m)^concurrency:", workflow) assert not re.search(r"(?m)^ concurrency:", workflow) assert "needs.admit-current-head.outputs.admitted == 'true'" in noema_job @@ -1360,7 +1365,7 @@ def test_fix_scheduler_cancels_superseded_cron_runs() -> None: workflow = workflow_text("pr-review-fix-scheduler.yml") assert "central-pr-review-fix-scheduler-" in workflow - assert "cancel-in-progress: true" in workflow + assert workflow_level_cancels_in_progress(workflow) def test_security_scan_fails_closed_when_dependency_review_is_unavailable() -> None: From 5c60b5d9e8fb8461480d6a30b0b5f149753afb12 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 7 Sep 2026 03:16:17 +0900 Subject: [PATCH 09/14] test(concurrency): pin the cancel flag as a value for the PR-keyed scan workflows (#1980) python-security.yml and sast-semgrep.yml had only the presence of cancel-in-progress asserted, so flipping it to false passed the whole suite. This pins the value. Co-Authored-By: Claude Opus 5 --- .../test_required_workflow_queue_contract.py | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/tests/test_required_workflow_queue_contract.py b/tests/test_required_workflow_queue_contract.py index 8bc0791631..4ab09b1d0c 100644 --- a/tests/test_required_workflow_queue_contract.py +++ b/tests/test_required_workflow_queue_contract.py @@ -905,6 +905,32 @@ def test_strix_draft_transition_cancels_current_scan(tmp_path: Path) -> None: assert "/actions/runs/100/cancel" in calls +def test_pr_keyed_scan_workflows_pin_cancellation_as_a_value() -> None: + """Pin `cancel-in-progress` for the two PR-keyed scans that only had presence. + + Both appear in ``test_pull_request_close_events_cancel_superseded_runs_without_heavy_jobs``, + but in the branch that asserts the key is *present* rather than what it says. + That branch is shaped by ``pr-review-merge-scheduler.yml``, whose value is + deliberately an expression over ``github.event_name``, so the loop cannot + assert a constant for everyone in it. Nothing else read the flag: flipping + either to ``false`` left the whole suite green (2968 passed, 0 failed, + measured 2026-09-06). + + Kept out of ``test_required_pull_request_workflows_cancel_superseded_runs`` + because that loop ends by requiring a ``github.event_name`` discriminator in + the group, and these two key on + ``pull_request.number || github.ref`` with no event-name term. Adding them + there would need a branch that asserts nothing. + """ + for filename in ("python-security.yml", "sast-semgrep.yml"): + workflow = workflow_text(filename) + group_value = workflow_level_concurrency_group(workflow) + + assert workflow_level_cancels_in_progress(workflow) + assert "github.event.pull_request.number" in group_value + assert "github.event_name" not in group_value + + def test_pull_request_close_events_cancel_superseded_runs_without_heavy_jobs() -> None: """Close events should cancel old runs without starting expensive jobs.""" workflows = ( From 74224b2091701a754b2fd1a539833c7a6d50b79e Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 7 Sep 2026 03:34:54 +0900 Subject: [PATCH 10/14] fix(scheduler): match the run name GitHub actually sends for central review runs (#1983) `active_review_run_refs` matched a workflow run's `name` exactly against the review workflow aliases. But eight workflows in this repository define `run-name:`, and that set contains every workflow whose runs this matcher looks for -- `opencode-review.yml` ("Required OpenCode Review"), `opencode-review-dispatch.yml` ("OpenCode Review Dispatch") and `strix.yml` ("Strix Security Scan"). For such a workflow GitHub reports the *rendered* run name in `name` -- the same string as `display_title`, e.g. OpenCode Review Dispatch ContextualWisdomLab/.github#834@e748ee61... Sampled 2026-09-07: 100 of 100 opencode-review-dispatch runs carry that form and none carries the bare workflow name. So the exact match dropped every production dispatch run at this line, before the `event == "repository_dispatch"` branch immediately below that exists to read them. Two consequences: * `already_running` never suppressed a same-head repeat. .github#1529 took 27 dispatches on one unchanged head over 100.8 hours; each new run's creation preceded the previous run's cancellation by about three seconds, so the previous run was demonstrably still active when the check ran and did not see it. * `stale` never populated, so older-head central runs were never cancelled. A first count of the live queue said "20 duplicates of 45 active runs" and was wrong: it grouped by repository and PR without the workflow, so runs of different dispatch workflows on one PR were counted as duplicates of each other. Regrouped by (workflow, repository, PR): active repository_dispatch runs, queued + in_progress 33 codeql-scan-dispatch.yml 25 runs / 12 keys / 13 same-head duplicates opencode-review-dispatch.yml 5 runs / 5 keys / 0 duplicates pr-review-autofix.yml 3 runs / 3 keys / 0 duplicates So the workflows this matcher governs show no live duplication at this instant. The harm this fix addresses is the historical chain on .github#1529 and a suppression that has never once fired, not a backlog visible right now. The 13 duplicates all belong to CodeQL Scan Dispatch, which this matcher does not govern; that workflow also defines `run-name:`, which makes it a separate lead rather than evidence for this change. Reviving stale cancellation is separately safe: of 163 non-terminal central runs, 49 are review or dispatch kind and 4 become cancellable, all of them subjects that no longer exist (3 closed or merged PRs, 1 moved head). The fix is confined to the run comparison. `OPENCODE_WORKFLOW_NAMES` is unchanged, because its other consumer compares a *workflow* object's name, which is genuinely bare. `active_review_run_refs` has exactly two call sites, OpenCode's and Strix's, so both are fixed here; the Strix side is pinned by its own test so a later narrowing to the OpenCode aliases cannot silently reopen half of it. This is one instance of a class, and the file already contains the stable form. `run.name` is compared as an identifier at four places -- `:1250`, `:3198`, `:3254` (this one) and `:3783` -- while `:3060` keys on `run.get("workflow_id") or run.get("path") or run.get("name")`, which cannot be rewritten by a `run-name:`. `:1250` in particular feeds the REST fallback's workflow-level policy boundary and would see a rendered title where it expects a workflow name. Fixing the whole class means moving the callers from display names to paths, which also touches how `dispatch_title_prefixes` is built, so it is deliberately left out of this change; .github#1941 is the same root seen from the `display_title` side. Recorded here so the next reader does not rediscover it as a fifth instance. Note the new behaviour this enables: while a same-head central run is active, a repeat is now suppressed. A run that never terminates would therefore hold the PR, where before the check simply never fired. The existing fixture sets a bare `name` beside a rendered `display_title`, a payload GitHub never emits for a `run-name:` workflow, which is why 100 percent line coverage of that branch never revealed that production could not reach it. Developer experience: the scheduler's same-head suppression and stale-run cancellation work against real payloads instead of a shape only the tests produce. User experience: a pull request stops accumulating duplicate concurrent review runs that cancel each other, so a review that starts can finish. Co-authored-by: Claude Opus 5 --- scripts/ci/pr_review_merge_scheduler_core.py | 19 +++- tests/test_pr_review_merge_scheduler.py | 95 ++++++++++++++++++++ 2 files changed, 113 insertions(+), 1 deletion(-) diff --git a/scripts/ci/pr_review_merge_scheduler_core.py b/scripts/ci/pr_review_merge_scheduler_core.py index cffb52cb53..e535025a86 100644 --- a/scripts/ci/pr_review_merge_scheduler_core.py +++ b/scripts/ci/pr_review_merge_scheduler_core.py @@ -3254,7 +3254,24 @@ def active_review_run_refs( for run_repo in (dispatch_repo,): for run_data in active_workflow_runs(run_repo, statuses): run_name = str(run_data.get("name") or "") - if run_name != workflow and run_name not in workflow_aliases: + # GitHub reports the *rendered* ``run-name:`` in a run's ``name``, + # not the workflow name, and eight workflows here define one -- + # every workflow whose runs this matcher looks for + # (``opencode-review.yml`` = "Required OpenCode Review", + # ``opencode-review-dispatch.yml`` = "OpenCode Review Dispatch", + # ``strix.yml`` = "Strix Security Scan") is among them. Exact + # matching therefore dropped every production dispatch run here, + # before the ``repository_dispatch`` branch below that exists to + # handle it: ``already_running`` never suppressed a same-head + # repeat and ``stale`` never populated, so .github#1529 took 27 + # dispatches on one unchanged head and older-head central runs were + # never cancelled. Sampled 2026-09-07: 100 of 100 + # opencode-review-dispatch runs carry the rendered form, 0 bare. + # Accept it -- the workflow name, then a space, then the suffix. + if not any( + run_name == candidate or run_name.startswith(f"{candidate} ") + for candidate in (workflow, *workflow_aliases) + ): continue run_id = run_data.get("id") if not run_id: diff --git a/tests/test_pr_review_merge_scheduler.py b/tests/test_pr_review_merge_scheduler.py index 8b924291a5..b653efea18 100644 --- a/tests/test_pr_review_merge_scheduler.py +++ b/tests/test_pr_review_merge_scheduler.py @@ -6178,6 +6178,101 @@ def test_dispatch_strix_waits_for_active_target_repository_run(monkeypatch, caps assert "target repository already has active run(s) ContextualWisdomLab/.github@9350" in capsys.readouterr().out +def test_central_run_filter_accepts_the_run_name_github_actually_sends(monkeypatch): + """A ``run-name:`` workflow reports the rendered title in ``name``. + + ``opencode-review-dispatch.yml``, ``strix.yml`` and ``noema-review.yml`` all + define ``run-name:``, so GitHub sets each run's ``name`` to the rendered + string, identical to ``display_title`` -- sampled 2026-09-07, 100 of 100 + opencode-review-dispatch runs carry that form and none carries the bare + workflow name. Matching ``name`` exactly against the aliases dropped every + one of them before the ``repository_dispatch`` branch that exists to read + them, so ``already_running`` never suppressed a same-head repeat and + ``stale`` never populated: .github#1529 took 27 dispatches on one unchanged + head, and older-head central runs were never cancelled. + + The neighbouring fixture below sets a bare ``name`` alongside a rendered + ``display_title``, which is why 100% coverage of that branch never showed + that production could not reach it. + """ + head_sha = "a" * 40 + stale_sha = "b" * 40 + current_title = f"Required OpenCode Review owner/repo#1@{head_sha}" + stale_title = f"Required OpenCode Review owner/repo#1@{stale_sha}" + central_runs = [ + { + "id": 9500, + "name": current_title, + "display_title": current_title, + "event": "repository_dispatch", + }, + { + "id": 9501, + "name": stale_title, + "display_title": stale_title, + "event": "repository_dispatch", + }, + ] + + def fake_active_runs(repo, statuses=("queued", "in_progress")): + del statuses + return central_runs if repo == "ContextualWisdomLab/.github" else [] + + monkeypatch.setattr(sched, "active_workflow_runs", fake_active_runs) + monkeypatch.setenv( + "SCHEDULER_REQUIRED_WORKFLOW_REPOSITORY", + "ContextualWisdomLab/.github", + ) + + assert sched.active_opencode_run_refs( + "owner/repo", + "OpenCode Review", + make_pr(headRefOid=head_sha), + ) == ( + [("ContextualWisdomLab/.github", "9500")], + [("ContextualWisdomLab/.github", "9501")], + ) + + +def test_central_run_filter_reads_the_rendered_strix_run_name_too(monkeypatch): + """Strix shares the matcher, and ``strix.yml`` also defines ``run-name:``. + + ``active_review_run_refs`` has exactly two call sites -- OpenCode's and + ``dispatch_strix_evidence``'s -- so the exact-``name`` match blinded both. + Pinning the Strix side here keeps a later narrowing of the fix to the + OpenCode aliases from silently reopening the Strix half. + """ + head_sha = "c" * 40 + current_title = f"Strix Security Scan owner/repo#1@{head_sha}" + + def fake_active_runs(repo, statuses=("queued", "in_progress")): + del statuses + if repo != "ContextualWisdomLab/.github": + return [] + return [ + { + "id": 9600, + "name": current_title, + "display_title": current_title, + "event": "repository_dispatch", + } + ] + + monkeypatch.setattr(sched, "active_workflow_runs", fake_active_runs) + monkeypatch.setenv( + "SCHEDULER_REQUIRED_WORKFLOW_REPOSITORY", + "ContextualWisdomLab/.github", + ) + + assert sched.active_review_run_refs( + "owner/repo", + "Strix Security Scan", + make_pr(headRefOid=head_sha), + run_title="Strix Security Scan", + workflow_aliases=frozenset({"Strix Security Scan"}), + ) == ([("ContextualWisdomLab/.github", "9600")], []) + + def test_central_run_filter_ignores_malformed_and_non_dispatch_titles(monkeypatch): head_sha = "a" * 40 central_runs = [ From 2396ddcaf4b6c50785548b313ccddfa1784915a2 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 7 Sep 2026 03:39:28 +0900 Subject: [PATCH 11/14] Revert "fix(scheduler): skip review dispatch for a head whose merge tree cannot materialize (#1973)" (#1985) This reverts commit ad0779bee66624c3997947d7691f4b0dbb973be1. I wrote that guard and its justification is false. It blocked every OpenCode dispatch on a DIRTY/CONFLICTING head on the grounds that "a conflicting head can only produce a failed dispatch". The run object does conclude failure, but the review is published anyway: the reviewer reads the pull request diff, not a merge tree -- "Coverage is a separate gate", in the review's own words -- and only `coverage-source-tree` needs the merge commit. Measured on .github#1529, the PR that motivated the guard: the last of its 27 dispatches published a 2404-character review at 2026-09-05T19:40:58Z. That review body carries its own run id, 33969161561, which concluded failure at the receipt gate nine seconds later. It is the only OpenCode review that head has (4 reviews total, 1 by opencode-agent[bot]) and it is why the PR now reads as reviewed. The guard would have discarded it. The pattern is not unique to #1529: .github#1555 is CONFLICTING right now and its current head carries a 2019-character CHANGES_REQUESTED review from the same reviewer. I reached "produced nothing" by reading run conclusions, which are roll-ups that cannot name what a run did. The cost the guard claimed to protect is also wrong by two orders of magnitude. Across all 27 dispatches of that head, 109 jobs: 27 were allocated a runner for 0.24 h in total, 82 never were, and the rest of the elapsed time was queue residency. Blocking the whole chain would have saved fourteen minutes of runner time. The repeat itself is a real problem, and it is fixed at its cause rather than here. `active_review_run_refs` matched a run's `name` exactly against the review workflow aliases, but the central review workflows define `run-name:`, so GitHub sends the rendered title in that field and every dispatch run was filtered out before the check could see it -- `already_running` never fired. With that repaired, a conflicting head receives one dispatch and the next is suppressed while it runs, which is the outcome this guard was reaching for without discarding the review. Developer experience: the scheduler no longer prints a skip reason that asserts an outcome contradicted by the runs it cites. User experience: a conflicting pull request receives a review and repair guidance, instead of repair guidance alone. Co-authored-by: Claude Opus 5 --- scripts/ci/pr_review_merge_scheduler_core.py | 29 --- tests/test_pr_review_merge_scheduler.py | 177 ------------------- 2 files changed, 206 deletions(-) diff --git a/scripts/ci/pr_review_merge_scheduler_core.py b/scripts/ci/pr_review_merge_scheduler_core.py index e535025a86..4df4dac3de 100644 --- a/scripts/ci/pr_review_merge_scheduler_core.py +++ b/scripts/ci/pr_review_merge_scheduler_core.py @@ -2927,8 +2927,6 @@ def post_update_branch_followup( if wait_reason: return f"{head_note}; {wait_reason}" dispatch_result = dispatch_opencode_review(repo, workflow, updated_pr, dry_run=dry_run) - if dispatch_result == "merge_conflict": - return f"{head_note}; PR merge tree cannot be materialized while the head conflicts; review dispatch skipped" if dispatch_result == "admission_deferred": return f"{head_note}; bounded admission budget is exhausted" if dispatch_result == "already_running": @@ -3705,23 +3703,6 @@ def dispatch_opencode_review(repo: str, workflow: str, pr: dict[str, Any], *, dr return "already_running" if dry_run: return "dry_run" - if effective_merge_state(pr) in {"DIRTY", "CONFLICTING"}: - # Materializing the PR merge tree is a hard precondition of - # coverage-source-tree, so a conflicting head can only produce a failed - # dispatch. Returning before review_dispatch_admitted keeps the bounded - # admission budget for a PR a review could actually finish: measured on - # .github#1529, one conflicting head consumed 27 dispatches across 100.8 - # hours with zero successes (20 cancelled, 7 failed, and all 7 that - # reached coverage-source-tree died there; 2026-09-01T08:46Z..09-05T13:31Z). - # UNKNOWN is deliberately not blocked -- an - # uncomputed mergeability must not starve a reviewable PR. - print( - "OpenCode review dispatch skipped: GitHub reports the current head as " - f"{effective_merge_state(pr)}, so the PR merge tree cannot be materialized " - "and the review would fail. Repair the branch and push it, then the review " - "runs on the new head." - ) - return "merge_conflict" if not review_dispatch_admitted("opencode", repo, pr): return "admission_deferred" base_ref, base_sha, head_sha = validated_pr_dispatch_fields(pr) @@ -4170,8 +4151,6 @@ def dispatch_draft_review_only( f"draft PR review-only dispatch; current head has completed Strix evidence; {wait_reason}", ) dispatch_result = dispatch_opencode_review(repo, workflow, pr, dry_run=dry_run) - if dispatch_result == "merge_conflict": - return Decision(number, "wait", "draft PR review-only dispatch; PR merge tree cannot be materialized while the head conflicts; review dispatch skipped") if dispatch_result == "admission_deferred": return Decision(number, "wait", "draft PR review-only dispatch; bounded admission budget is exhausted") if dispatch_result == "already_running": @@ -4284,8 +4263,6 @@ def inspect_pr( if wait_reason: return Decision(number, "wait", f"stacked PR onto {base_ref}; {wait_reason}") dispatch_result = dispatch_opencode_review(repo, workflow, pr, dry_run=dry_run) - if dispatch_result == "merge_conflict": - return Decision(number, "wait", f"stacked PR onto {base_ref}; PR merge tree cannot be materialized while the head conflicts; review dispatch skipped") if dispatch_result == "admission_deferred": return Decision(number, "wait", f"stacked PR onto {base_ref}; bounded admission budget is exhausted") if dispatch_result == "already_running": @@ -4504,8 +4481,6 @@ def request_branch_update(freshness_reason: str, *, suffix: str = "") -> Decisio if wait_reason: return decide("wait", wait_reason) dispatch_result = dispatch_opencode_review(repo, workflow, pr, dry_run=dry_run) - if dispatch_result == "merge_conflict": - return decide("wait", "PR merge tree cannot be materialized while the head conflicts; review dispatch skipped") if dispatch_result == "admission_deferred": return decide("wait", "bounded admission budget is exhausted") if dispatch_result == "already_running": @@ -4921,8 +4896,6 @@ def request_branch_update(freshness_reason: str, *, suffix: str = "") -> Decisio f"OpenCode review exceeded {stale_opencode_minutes} minute retry threshold; review dispatch limit reached", ) dispatch_result = dispatch_opencode_review(repo, workflow, pr, dry_run=dry_run) - if dispatch_result == "merge_conflict": - return decide("wait", "PR merge tree cannot be materialized while the head conflicts; review dispatch skipped") if dispatch_result == "admission_deferred": return decide("wait", "bounded admission budget is exhausted") if dispatch_result == "already_running": @@ -4973,8 +4946,6 @@ def request_branch_update(freshness_reason: str, *, suffix: str = "") -> Decisio if wait_reason: return decide("wait", f"current head has completed Strix evidence; {wait_reason}") dispatch_result = dispatch_opencode_review(repo, workflow, pr, dry_run=dry_run) - if dispatch_result == "merge_conflict": - return decide("wait", "PR merge tree cannot be materialized while the head conflicts; review dispatch skipped") if dispatch_result == "admission_deferred": return decide("wait", "bounded admission budget is exhausted") if dispatch_result == "already_running": diff --git a/tests/test_pr_review_merge_scheduler.py b/tests/test_pr_review_merge_scheduler.py index b653efea18..ba47b89c8d 100644 --- a/tests/test_pr_review_merge_scheduler.py +++ b/tests/test_pr_review_merge_scheduler.py @@ -2330,75 +2330,6 @@ def test_dispatch_opencode_review_falls_back_to_bounded_discovery(monkeypatch): assert json.loads(dispatch_calls[0])["client_payload"]["required_run_id"] == 999 -def _dispatch_with_merge_state(monkeypatch, **overrides): - """Run the OpenCode dispatch funnel and report what it did.""" - monkeypatch.setenv("GITHUB_ACTIONS", "true") - monkeypatch.setenv("GH_TOKEN", "opencode-app-token") - monkeypatch.setattr( - sched, "active_opencode_run_refs", lambda repo, workflow, pr: ([], []) - ) - monkeypatch.setattr(sched, "discover_opencode_required_run_id", lambda repo, head_sha: None) - dispatched: list[str | None] = [] - monkeypatch.setattr( - sched, "run_github_dispatch", lambda args, stdin=None: dispatched.append(stdin) - ) - admitted: list[str] = [] - - def record_admission(component, repo, pr): - admitted.append(component) - return True - - monkeypatch.setattr(sched, "review_dispatch_admitted", record_admission) - pr = make_pr(headRefOid="a" * 40, baseRefOid="b" * 40, **overrides) - monkeypatch.setattr(sched, "fetch_pr", lambda *_args: [pr]) - result = sched.dispatch_opencode_review("owner/repo", "OpenCode Review", pr, dry_run=False) - return result, dispatched, admitted - - -def test_review_dispatch_skips_a_head_whose_merge_tree_cannot_materialize(monkeypatch): - """A conflicting head is skipped before it can spend the admission budget. - - coverage-source-tree must materialize the PR merge tree, which git cannot do - while the head conflicts, so the dispatch could only fail. Measured on - .github#1529: one conflicting head took 27 dispatches over 100.8 hours and - produced no review; the 7 that reached coverage-source-tree all died there, - and the other 20 were cancelled before they ever started it. - """ - for graph_state in ("DIRTY", "CONFLICTING"): - result, dispatched, admitted = _dispatch_with_merge_state( - monkeypatch, mergeStateStatus=graph_state - ) - assert result == "merge_conflict" - assert dispatched == [], f"{graph_state} must not reach the dispatch API" - assert admitted == [], f"{graph_state} must not consume the admission budget" - - -def test_review_dispatch_reads_the_rest_merge_state_not_only_graphql(monkeypatch): - """The skip honours REST mergeability, which outranks a stale GraphQL value.""" - result, dispatched, admitted = _dispatch_with_merge_state( - monkeypatch, mergeStateStatus="CLEAN", restMergeableState="DIRTY" - ) - assert result == "merge_conflict" - assert dispatched == [] - assert admitted == [] - - -def test_review_dispatch_still_runs_when_mergeability_is_not_yet_known(monkeypatch): - """UNKNOWN mergeability must not starve a reviewable PR. - - Negative control for the conflict skip: GitHub reports UNKNOWN while it is - still computing a merge commit, so blocking on it would defer every PR the - scheduler reached first. - """ - for graph_state in ("UNKNOWN", "BEHIND", "BLOCKED", "CLEAN"): - result, dispatched, admitted = _dispatch_with_merge_state( - monkeypatch, mergeStateStatus=graph_state - ) - assert result == "dispatched", f"{graph_state} must still dispatch" - assert len(dispatched) == 1 - assert admitted == ["opencode"] - - def test_central_progress_ignores_required_workflow_checkrun_placeholder( monkeypatch, ): @@ -10859,111 +10790,3 @@ def behind_with(nodes): assert "checks are still queued or running" not in resumed.reason assert sched.has_in_flight_check_runs(behind_with([])) is False - - -def _skip_opencode_dispatch(monkeypatch): - """Make the OpenCode dispatch funnel report an unmaterializable merge tree.""" - monkeypatch.setattr( - sched, "dispatch_opencode_review", lambda repo, workflow, pr, dry_run: "merge_conflict" - ) - monkeypatch.setattr( - sched, "dispatch_strix_evidence", lambda repo, workflow, pr, dry_run: "dispatched" - ) - - -SKIP_REASON = "PR merge tree cannot be materialized while the head conflicts; review dispatch skipped" - - -def test_every_review_dispatch_caller_reports_the_conflict_skip_truthfully(monkeypatch): - """No dispatch path may report a skipped conflicting head as a dispatch. - - Each caller's fall-through says the review was dispatched, so a new funnel - result that a caller does not handle would be reported as work that never - happened -- and that is the same telemetry used to find the treadmill this - skip removes. - """ - _skip_opencode_dispatch(monkeypatch) - - stacked = inspect(make_pr(baseRefName="develop")) - assert stacked.action == "wait" - assert stacked.reason == f"stacked PR onto develop; {SKIP_REASON}" - - draft = inspect( - make_pr(isDraft=True, statusCheckRollup={"contexts": {"nodes": [strix_check()]}}), - allow_draft_review_dispatch=True, - ) - assert draft.action == "wait" - assert draft.reason == f"draft PR review-only dispatch; {SKIP_REASON}" - - strix_done = inspect(make_pr(statusCheckRollup={"contexts": {"nodes": [strix_check()]}})) - assert strix_done.action == "wait" - assert strix_done.reason == SKIP_REASON - - stale = inspect( - make_pr( - statusCheckRollup={ - "contexts": { - "nodes": [ - opencode_check(started_at="2026-06-25T07:00:00Z"), - strix_check(), - ] - } - } - ) - ) - assert stale.action == "wait" - assert stale.reason == SKIP_REASON - - coverage_retry = inspect( - make_pr( - reviews={ - "nodes": [ - { - **opencode_review("CHANGES_REQUESTED", "head"), - "body": ( - "OpenCode cannot approve yet because required coverage evidence " - "did not pass. The coverage-evidence gate reported that required " - "test/docstring evidence was not proven." - ), - } - ] - }, - statusCheckRollup={ - "contexts": { - "nodes": [ - strix_check(), - { - "__typename": "CheckRun", - "name": "coverage-evidence", - "status": "COMPLETED", - "conclusion": "SUCCESS", - }, - {**opencode_check(status="COMPLETED"), "conclusion": "FAILURE"}, - ] - } - }, - ) - ) - assert coverage_retry.action == "wait" - assert coverage_retry.reason == SKIP_REASON - - original = make_pr(headRefOid="old-head") - monkeypatch.setattr( - sched, - "wait_for_updated_branch_head", - lambda repo, pr: make_pr( - headRefOid="new-head", - statusCheckRollup={"contexts": {"nodes": [strix_check()]}}, - ), - ) - followup_reason = sched.post_update_branch_followup( - "owner/repo", - original, - dry_run=False, - trigger_reviews=True, - review_dispatch_allowed=True, - workflow="OpenCode Review", - security_workflow="Strix Security Scan", - stale_opencode_minutes=45, - ) - assert SKIP_REASON in followup_reason From bf0bf0ab0c9ebcf4cea05f8c9219dc093f9ab351 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 7 Sep 2026 04:08:50 +0900 Subject: [PATCH 12/14] fix(audit): stop a ruleset drift from disabling the CodeQL coverage detector (#1987) Two unrelated audits share one job in audit-central-ruleset.yml, and the ruleset step runs first. It has exited 1 since at least 2026-09-04 on owner-configured governance drift: ERROR: exactly two approving reviews are not required ERROR: last-push approval protection is disabled FAIL: ruleset 18156473 has 2 governance drift reason(s) Live values on ruleset 18156473 today are `required_approving_review_count: 1` and `require_last_push_approval: false`, against the 2 and true the audit asserts. Both are owner-configured settings, and this change does not touch either them or the audit's expectations: with every session sharing one GitHub identity and unable to approve another's pull request, a two-approval requirement may well have been relaxed deliberately, in which case the stale side is the assertion rather than the configuration. Deciding that is an owner call. What is not an owner call is the collateral damage. Because the failure exits a shared job, the two steps below it never ran: the CodeQL coverage detector and the backlog-38 bootstrap that opens CodeQL setup pull requests. So the detector that would have reported a coverage gap has been dead for days, and its workflow was red the whole time for an unrelated reason -- red status, wrong subject, and no signal about coverage either way. The coverage step now carries `if: always()`. It builds its own repository list into its own temp file and the step above exports nothing to GITHUB_ENV or GITHUB_OUTPUT, so it has no data dependency to lose; the job still fails overall. The bootstrap step deliberately does not get the same guard, because it opens pull requests and running a mutation after an unexplained upstream failure is a different decision from running a read-only detector. A contract test pins both halves. The detector also needed a correction of its own. It accepted `default_setup_state == "configured"` as coverage, but a repository can report `configured` with an **empty** `languages` list, which scans nothing. Measured 2026-09-07: life-os, aFIPC and inkspan all report that shape, and life-os has zero CodeQL analyses of any language while codeql-pr.yml still runs on every pull request head. The control holds in both directions -- html4tree, naruon and wardnet have non-empty language lists and do have `dynamic/` analyses for exactly those languages. The audit workflow now collects `languages` alongside `state`, the predicate requires a non-empty list, and a payload missing the new key fails closed rather than falling back to the state alone. Gaps of the two kinds are reported as different sentences, because they need different fixes: enable languages on an existing setup, versus set coverage up at all. A reviewer then asked whether the newly-unblocked step could run and audit zero repositories while still passing, and one layer below the fix it could: $ echo '[]' | python3 scripts/ci/audit_org_codeql_coverage.py PASS: all 0 repositories have real CodeQL coverage exit 0 The calling workflow already refuses that -- its sentinel check requires known private repositories to appear in the enumeration, which an empty list fails -- but the script is directly runnable against a JSON path or stdin, so the guard did not cover every entry point. `main` now refuses an empty payload. This is the same vacuous-pass shape as the `configured`-with-no-languages case above, one level down, which is where it was found: a pass that examines nothing is not a pass. The step's independence from the failing step above it is established mechanically rather than by reading the YAML. Steps can only share state through `GITHUB_ENV`, `GITHUB_OUTPUT`, `GITHUB_PATH` or files, since each `run:` is a separate shell. The ruleset step uses none of those channels, and the two steps' `$RUNNER_TEMP` paths are disjoint: `central-required-workflow-*`, `ruleset-probe-*` and `stacked-opencode-ruleset.*` against `codeql-coverage-*`, `codeql-analysis-*` and `codeql-default-setup-*`. Developer experience: a governance-drift failure no longer hides an unrelated security-coverage result, and the audit says which of the two problems a repository has. User experience: a repository whose CodeQL setup is switched on but scanning nothing is reported as uncovered instead of counted as covered. Co-authored-by: Claude Opus 5 --- .github/workflows/audit-central-ruleset.yml | 33 +++++-- scripts/ci/audit_org_codeql_coverage.py | 62 ++++++++++++- tests/test_audit_org_codeql_coverage.py | 90 +++++++++++++++++++ ...central_required_workflow_ruleset_audit.py | 39 +++++++- 4 files changed, 212 insertions(+), 12 deletions(-) diff --git a/.github/workflows/audit-central-ruleset.yml b/.github/workflows/audit-central-ruleset.yml index bf24e36c7c..2b72f21aab 100644 --- a/.github/workflows/audit-central-ruleset.yml +++ b/.github/workflows/audit-central-ruleset.yml @@ -105,6 +105,18 @@ jobs: python3 scripts/ci/audit_central_required_workflows.py --stacked "$stacked_ruleset_json" - name: Audit organization CodeQL coverage + # Runs even when the ruleset step above failed. Those two audits share a + # job but not a subject: the ruleset step exits 1 on owner-configured + # governance drift, and on 2026-09-06 it did exactly that ("exactly two + # approving reviews are not required", "last-push approval protection is + # disabled"), which silently took this CodeQL coverage detector down with + # it -- every run since 2026-09-04 failed there and never reached this + # step. This step builds its own repository list into its own temp file + # and the step above exports nothing to GITHUB_ENV or GITHUB_OUTPUT, so + # it has no data dependency to lose. The job still fails overall; what + # changes is that a coverage gap is reported instead of hidden behind an + # unrelated failure. + if: always() env: ORG_LOGIN: ContextualWisdomLab ORG_WIDE_CREDENTIAL_AVAILABLE: ${{ secrets.PR_REVIEW_MERGE_TOKEN != '' || secrets.OPENCODE_APPROVE_TOKEN != '' }} @@ -165,13 +177,21 @@ jobs: printf '[]\n' >"$coverage_json" while IFS=$'\t' read -r repository archived; do default_setup_state=null + # `state` alone is not coverage: a repository can report + # "configured" with an empty `languages` list, which scans nothing + # and produces no analyses (measured 2026-09-07 on life-os, aFIPC + # and inkspan). Collect both fields so the audit can tell those + # apart from a setup that actually covers a language. + default_setup_languages=null if [ "$archived" != "true" ]; then - default_setup_state_json="$RUNNER_TEMP/codeql-default-setup-${repository//[^A-Za-z0-9_.-]/_}.json" - if gh api "repos/${ORG_LOGIN}/${repository}/code-scanning/default-setup" --jq .state \ - >"$default_setup_state_json" 2>/dev/null; then - default_setup_state=$(jq -R '.' "$default_setup_state_json") + default_setup_json="$RUNNER_TEMP/codeql-default-setup-${repository//[^A-Za-z0-9_.-]/_}.json" + if gh api "repos/${ORG_LOGIN}/${repository}/code-scanning/default-setup" \ + >"$default_setup_json" 2>/dev/null; then + default_setup_state=$(jq '.state // null' "$default_setup_json") + default_setup_languages=$(jq '.languages // []' "$default_setup_json") else default_setup_state=null + default_setup_languages=null fi fi @@ -187,12 +207,13 @@ jobs: fi fi - echo "CODEQL_COVERAGE repository=${repository} archived=${archived} default_setup_state=${default_setup_state} latest_codeql_analysis=${latest_codeql_analysis}" + echo "CODEQL_COVERAGE repository=${repository} archived=${archived} default_setup_state=${default_setup_state} default_setup_languages=${default_setup_languages} latest_codeql_analysis=${latest_codeql_analysis}" jq --arg name "$repository" \ --argjson archived "$archived" \ --argjson default_setup_state "$default_setup_state" \ + --argjson default_setup_languages "$default_setup_languages" \ --argjson latest_codeql_analysis "$latest_codeql_analysis" \ - '. + [{name: $name, archived: $archived, default_setup_state: $default_setup_state, latest_codeql_analysis: $latest_codeql_analysis}]' \ + '. + [{name: $name, archived: $archived, default_setup_state: $default_setup_state, default_setup_languages: $default_setup_languages, latest_codeql_analysis: $latest_codeql_analysis}]' \ "$coverage_json" >"${coverage_json}.next" mv "${coverage_json}.next" "$coverage_json" done < <(jq -r '.[] | [.name, (.archived | tostring)] | @tsv' "$repositories_json") diff --git a/scripts/ci/audit_org_codeql_coverage.py b/scripts/ci/audit_org_codeql_coverage.py index f9fb2eaf17..9051c67568 100644 --- a/scripts/ci/audit_org_codeql_coverage.py +++ b/scripts/ci/audit_org_codeql_coverage.py @@ -66,6 +66,27 @@ def _is_analysis_fresh_and_successful( return parsed >= now - timedelta(days=CODEQL_ANALYSIS_FRESHNESS_DAYS) +def _default_setup_scans_a_language(repository: dict[str, Any]) -> bool: + """Return True when default-setup is configured AND has languages enabled. + + ``state == "configured"`` alone is not coverage. Measured 2026-09-07: + ``life-os``, ``aFIPC`` and ``inkspan`` all report ``configured`` with an + **empty** ``languages`` list and no ``schedule``; ``life-os`` has zero CodeQL + analyses of any language as a result, while still satisfying the + configured-state check this function replaces. A default setup with nothing + enabled is a commitment to scan nothing. + + A missing ``default_setup_languages`` key fails closed rather than falling + back to the state alone, which would silently restore that gap. The audit + workflow collects the field in the same change that introduced this check, + so the key is absent only when the payload predates them both. + """ + if repository.get("default_setup_state") != "configured": + return False + languages = repository.get("default_setup_languages") + return isinstance(languages, list) and bool(languages) + + def repositories_without_codeql( repositories: list[dict[str, Any]], now: datetime | None = None ) -> list[dict[str, Any]]: @@ -88,8 +109,10 @@ def repositories_without_codeql( # CodeQL going forward (like a scheduled cron guarantee), not a # one-time historical scan that can go stale -- so it does not need # the same freshness check as latest_codeql_analysis below. Do not - # "fix" this into requiring a completed scan. - has_default_setup = repository.get("default_setup_state") == "configured" + # "fix" this into requiring a completed scan. It does need the + # commitment to cover at least one language: see + # _default_setup_scans_a_language. + has_default_setup = _default_setup_scans_a_language(repository) has_fresh_analysis = _is_analysis_fresh_and_successful( repository.get("latest_codeql_analysis"), current ) @@ -98,13 +121,30 @@ def repositories_without_codeql( return uncovered +def _coverage_gap_reason(repository: dict[str, Any]) -> str: + """Return the gap description that tells the operator what to change. + + "Default setup is on but scans nothing" and "there is no coverage at all" + need different fixes -- enable languages on the existing setup, versus set + coverage up -- so they are reported as different sentences. + """ + if repository.get("default_setup_state") == "configured": + return ( + f"{repository.get('name')} has CodeQL default-setup configured with no " + "languages enabled, so it scans nothing and produces no analyses" + ) + return ( + f"{repository.get('name')} has no CodeQL coverage from any source " + "(no default-setup, no recent analysis)" + ) + + def audit_codeql_coverage( repositories: list[dict[str, Any]], now: datetime | None = None ) -> list[str]: """Return one human-readable error per repository with zero CodeQL coverage.""" return [ - f"{repository.get('name')} has no CodeQL coverage from any source " - "(no default-setup, no recent analysis)" + _coverage_gap_reason(repository) for repository in repositories_without_codeql(repositories, now) ] @@ -137,6 +177,20 @@ def main(argv: list[str] | None = None) -> int: print(f"ERROR: unable to load repository JSON: {exc}", file=sys.stderr) return 2 + if not repositories: + # An empty payload is not a clean organization: it is an audit that + # examined nothing, and "PASS: all 0 repositories have real CodeQL + # coverage" reads as success. The calling workflow already refuses an + # enumeration missing its known-private sentinel repositories, which + # an empty list would also fail -- this closes the same hole for any + # other entry point, because the script is directly runnable against a + # JSON path or stdin. + print( + "ERROR: repository payload is empty, so this run audited nothing", + file=sys.stderr, + ) + return 2 + errors = audit_codeql_coverage(repositories) if errors: for error in errors: diff --git a/tests/test_audit_org_codeql_coverage.py b/tests/test_audit_org_codeql_coverage.py index ccd2cd9c42..20d623aca5 100644 --- a/tests/test_audit_org_codeql_coverage.py +++ b/tests/test_audit_org_codeql_coverage.py @@ -14,6 +14,23 @@ def covered_by_default_setup(name: str) -> dict: "name": name, "archived": False, "default_setup_state": "configured", + "default_setup_languages": ["actions", "python"], + "latest_codeql_analysis": None, + } + + +def default_setup_scanning_nothing(name: str) -> dict: + """Return a repository whose default-setup is on but has no languages enabled. + + The live shape measured on 2026-09-07 for ``life-os``, ``aFIPC`` and + ``inkspan``: ``state`` is ``configured``, ``languages`` is empty and + ``schedule`` is null. ``life-os`` had zero CodeQL analyses of any language. + """ + return { + "name": name, + "archived": False, + "default_setup_state": "configured", + "default_setup_languages": [], "latest_codeql_analysis": None, } @@ -89,6 +106,60 @@ def test_default_setup_alone_counts_as_coverage() -> None: assert audit.audit_codeql_coverage(repositories, now=NOW) == [] +def test_default_setup_with_no_languages_enabled_is_not_coverage() -> None: + """A setup that scans nothing must not satisfy the configured-state check. + + Measured 2026-09-07: ``life-os`` reports ``configured`` with an empty + ``languages`` list and has zero CodeQL analyses of any language, while + ``codeql-pr.yml`` still runs on every pull request head. Before this check + the audit passed it on the state alone. + """ + repositories = [default_setup_scanning_nothing("life-os")] + + assert audit.audit_codeql_coverage(repositories, now=NOW) == [ + "life-os has CodeQL default-setup configured with no languages enabled, " + "so it scans nothing and produces no analyses" + ] + + +def test_default_setup_scanning_nothing_still_passes_on_a_fresh_analysis() -> None: + """The empty-language setup is only a gap when nothing else covers the repo. + + ``aFIPC`` and ``inkspan`` both report the empty-language shape yet receive + analyses from a repository-local ``codeql.yml``, so flagging them would be a + false alarm. + """ + repository = default_setup_scanning_nothing("aFIPC") + repository["latest_codeql_analysis"] = covered_by_recent_analysis("aFIPC")[ + "latest_codeql_analysis" + ] + + assert audit.audit_codeql_coverage([repository], now=NOW) == [] + + +def test_payload_without_the_languages_key_fails_closed() -> None: + """A payload predating the workflow change must not pass on state alone. + + Falling back to ``default_setup_state`` when the key is missing would + silently restore the gap this check exists to close. + """ + repository = covered_by_default_setup("PolicyWeave") + del repository["default_setup_languages"] + + assert audit.audit_codeql_coverage([repository], now=NOW) == [ + "PolicyWeave has CodeQL default-setup configured with no languages " + "enabled, so it scans nothing and produces no analyses" + ] + + +def test_non_list_languages_value_fails_closed() -> None: + """A malformed ``languages`` value is not evidence that anything is scanned.""" + repository = covered_by_default_setup("PolicyWeave") + repository["default_setup_languages"] = "python" + + assert len(audit.audit_codeql_coverage([repository], now=NOW)) == 1 + + def test_recent_analysis_alone_counts_as_coverage() -> None: repositories = [covered_by_recent_analysis("TEPP")] @@ -269,3 +340,22 @@ def test_parse_args_defaults_to_none() -> None: args = audit.parse_args([]) assert args.repositories_json is None + + +def test_main_refuses_an_empty_payload_instead_of_passing_vacuously( + monkeypatch, capsys +) -> None: + """An audit that examined nothing must not print PASS. + + ``audit_codeql_coverage([])`` returning no gaps is correct -- there are no + repositories to have gaps. What is wrong is ``main`` turning that into + "PASS: all 0 repositories have real CodeQL coverage" and exiting 0, which + is the same vacuous-pass shape as a default setup that is configured with + no languages enabled. + """ + monkeypatch.setattr("sys.stdin", StringIO("[]")) + + assert audit.main([]) == 2 + captured = capsys.readouterr() + assert "audited nothing" in captured.err + assert "PASS" not in captured.out diff --git a/tests/test_central_required_workflow_ruleset_audit.py b/tests/test_central_required_workflow_ruleset_audit.py index 77bbf53305..cec0d2aead 100644 --- a/tests/test_central_required_workflow_ruleset_audit.py +++ b/tests/test_central_required_workflow_ruleset_audit.py @@ -517,13 +517,21 @@ def test_audit_organization_codeql_coverage_step_has_freshness_and_credential_gu " exit 1\n" " fi" ) in workflow + # This pinned `--jq .state` until 2026-09-07. What it protects is that the + # audit reads default-setup per repository, not that it reads only the + # state: `state == "configured"` with an empty `languages` list scans + # nothing and produces no analyses (live on life-os, aFIPC and inkspan), + # so the step now fetches the whole object and extracts both fields. + assert 'repos/${ORG_LOGIN}/${repository}/code-scanning/default-setup"' in workflow + assert """default_setup_state=$(jq '.state // null' "$default_setup_json")""" in workflow assert ( - 'repos/${ORG_LOGIN}/${repository}/code-scanning/default-setup" --jq .state' + """default_setup_languages=$(jq '.languages // []' "$default_setup_json")""" in workflow ) + assert "default_setup_languages: $default_setup_languages" in workflow assert ( 'if [ "$archived" != "true" ]; then\n' - ' default_setup_state_json="$RUNNER_TEMP/codeql-default-setup-' + ' default_setup_json="$RUNNER_TEMP/codeql-default-setup-' '${repository//[^A-Za-z0-9_.-]/_}.json"' ) in workflow assert ( @@ -540,6 +548,33 @@ def test_audit_organization_codeql_coverage_step_has_freshness_and_credential_gu assert "python3 scripts/ci/audit_org_codeql_coverage.py" in workflow +def test_codeql_coverage_audit_survives_a_ruleset_drift_failure() -> None: + """An owner-configured ruleset drift must not disable the coverage detector. + + Both audits live in one job, and the ruleset step exits 1 on governance + drift. It did on 2026-09-06 ("exactly two approving reviews are not + required", "last-push approval protection is disabled"), so every run since + 2026-09-04 failed before reaching the CodeQL coverage step. The subjects are + unrelated and the coverage step has no data dependency on the one above it, + so it is guarded by ``if: always()``. + + The bootstrap steps below it are deliberately *not* given the same guard: + they open pull requests, and running a mutation after an unexplained + upstream failure is a different decision from running a read-only detector. + """ + workflow = (REPO_ROOT / ".github/workflows/audit-central-ruleset.yml").read_text( + encoding="utf-8" + ) + coverage_step = workflow.split("- name: Audit organization CodeQL coverage\n", 1)[1] + before_next_step = coverage_step.split(" - name: ", 1)[0] + + assert "\n if: always()\n" in before_next_step + bootstrap_step = workflow.split( + "- name: Create missing CodeQL setup pull requests\n", 1 + )[1].split(" - name: ", 1)[0] + assert "if: always()" not in bootstrap_step + + def test_codeql_gap_bootstrap_uses_trusted_opencode_identity_without_pr_head_execution() -> None: """Backlog item 38 stays on trusted main and treats installation tokens as opaque.""" workflow = (REPO_ROOT / ".github/workflows/audit-central-ruleset.yml").read_text( From c9052e607e5f3cc76e73207e7786b21500721b79 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 7 Sep 2026 04:20:08 +0900 Subject: [PATCH 13/14] fix(audit): count the repositories examined, not the ones supplied (#1989) #1987 taught the CodeQL coverage audit to refuse an empty payload, because "PASS: all 0 repositories have real CodeQL coverage" reads as success over a run that examined nothing. Reviewing that change, host 2 fed it a payload of a single *archived* repository: PASS: all 1 repositories have real CodeQL coverage exit 0 Non-empty, so it clears the new guard, and archived repositories are then legitimately skipped by the coverage loop. The subject set is empty again, by a different route -- the same defect the guard was added to close, one input shape sideways from the one it checks. The count that matters is what the audit examined. `auditable_repositories()` is now the single place that decides which repositories are in scope, shared by the loop and by the guard, so the two cannot drift apart when the archived rule changes. The guard refuses an empty examined set however it became empty, and the PASS line reports the examined count rather than the supplied one, so an organization of nothing but archived repositories can no longer be reported as fully covered. Developer experience: the pass line's number is the number of repositories the run actually checked. User experience: an audit that examined nothing says so instead of passing. Co-authored-by: Claude Opus 5 --- scripts/ci/audit_org_codeql_coverage.py | 44 +++++++++++++++++-------- tests/test_audit_org_codeql_coverage.py | 38 +++++++++++++++++++++ 2 files changed, 69 insertions(+), 13 deletions(-) diff --git a/scripts/ci/audit_org_codeql_coverage.py b/scripts/ci/audit_org_codeql_coverage.py index 9051c67568..bdbc835491 100644 --- a/scripts/ci/audit_org_codeql_coverage.py +++ b/scripts/ci/audit_org_codeql_coverage.py @@ -87,6 +87,22 @@ def _default_setup_scans_a_language(repository: dict[str, Any]) -> bool: return isinstance(languages, list) and bool(languages) +def auditable_repositories( + repositories: list[dict[str, Any]], +) -> list[dict[str, Any]]: + """Return the repositories this audit actually examines. + + Archived repositories are excluded: they cannot run workflows or code + scanning, so a lack of coverage there is not a product gap. Counting them + as examined is what let ``main`` report success over an empty subject set. + """ + return [ + repository + for repository in repositories + if not repository.get("archived") + ] + + def repositories_without_codeql( repositories: list[dict[str, Any]], now: datetime | None = None ) -> list[dict[str, Any]]: @@ -102,9 +118,7 @@ def repositories_without_codeql( """ current = now or datetime.now(timezone.utc) uncovered: list[dict[str, Any]] = [] - for repository in repositories: - if repository.get("archived"): - continue + for repository in auditable_repositories(repositories): # "configured" is GitHub's own forward-looking commitment to run # CodeQL going forward (like a scheduled cron guarantee), not a # one-time historical scan that can go stale -- so it does not need @@ -177,16 +191,20 @@ def main(argv: list[str] | None = None) -> int: print(f"ERROR: unable to load repository JSON: {exc}", file=sys.stderr) return 2 - if not repositories: - # An empty payload is not a clean organization: it is an audit that - # examined nothing, and "PASS: all 0 repositories have real CodeQL - # coverage" reads as success. The calling workflow already refuses an - # enumeration missing its known-private sentinel repositories, which - # an empty list would also fail -- this closes the same hole for any - # other entry point, because the script is directly runnable against a - # JSON path or stdin. + audited = auditable_repositories(repositories) + if not audited: + # An audit that examined nothing is not a clean organization, and + # "PASS: all 0 repositories have real CodeQL coverage" reads as + # success. The count that matters is what was examined, not what was + # supplied: an empty payload and a payload of nothing but archived + # repositories both reach zero subjects, and only the first was caught + # when this guard counted `repositories`. The calling workflow refuses + # an enumeration missing its known-private sentinel repositories, but + # the script is directly runnable against a JSON path or stdin, so the + # guard has to live here too. print( - "ERROR: repository payload is empty, so this run audited nothing", + f"ERROR: this run audited nothing " + f"(0 of {len(repositories)} repositories were eligible)", file=sys.stderr, ) return 2 @@ -201,7 +219,7 @@ def main(argv: list[str] | None = None) -> int: ) return 1 - print(f"PASS: all {len(repositories)} repositories have real CodeQL coverage") + print(f"PASS: all {len(audited)} repositories have real CodeQL coverage") return 0 diff --git a/tests/test_audit_org_codeql_coverage.py b/tests/test_audit_org_codeql_coverage.py index 20d623aca5..0ffc8fa749 100644 --- a/tests/test_audit_org_codeql_coverage.py +++ b/tests/test_audit_org_codeql_coverage.py @@ -359,3 +359,41 @@ def test_main_refuses_an_empty_payload_instead_of_passing_vacuously( captured = capsys.readouterr() assert "audited nothing" in captured.err assert "PASS" not in captured.out + + +def test_main_refuses_a_payload_of_only_archived_repositories(monkeypatch, capsys) -> None: + """Counting what was supplied, not what was examined, left the hole open. + + An archived-only payload is non-empty, so it passed the first version of + this guard, and archived repositories are then legitimately skipped -- the + run reported "PASS: all 1 repositories have real CodeQL coverage" having + examined none of them. Found in review, one layer out from the empty-payload + case it replaces. + """ + monkeypatch.setattr( + "sys.stdin", StringIO(json.dumps([uncovered("trivy-sarif-repro", archived=True)])) + ) + + assert audit.main([]) == 2 + captured = capsys.readouterr() + assert "0 of 1 repositories were eligible" in captured.err + assert "PASS" not in captured.out + + +def test_pass_line_counts_examined_repositories_not_supplied_ones( + tmp_path, capsys +) -> None: + """The PASS line must not credit archived repositories it never examined.""" + payload = tmp_path / "repositories.json" + payload.write_text( + json.dumps( + [ + covered_by_default_setup("PolicyWeave"), + uncovered("trivy-sarif-repro", archived=True), + ] + ), + encoding="utf-8", + ) + + assert audit.main([str(payload)]) == 0 + assert "PASS: all 1 repositories" in capsys.readouterr().out From f162c6b7f31fa3d557c2ca5989d2b2d637ca0db4 Mon Sep 17 00:00:00 2001 From: Seongho Bae Date: Mon, 7 Sep 2026 11:47:42 +0900 Subject: [PATCH 14/14] fix(strix): reject live draft model admission Co-Authored-By: Codex Signed-off-by: Seongho Bae --- .github/workflows/strix.yml | 5 ++++ .../strix-metadata-admission-consolidation.md | 28 ++++++++++++++++++- tests/test_docs_only_pr_runner_admission.py | 19 +++++++++++-- 3 files changed, 49 insertions(+), 3 deletions(-) diff --git a/.github/workflows/strix.yml b/.github/workflows/strix.yml index eac6109136..a09aeb074b 100644 --- a/.github/workflows/strix.yml +++ b/.github/workflows/strix.yml @@ -154,6 +154,11 @@ jobs: exit 1 fi pull_request_json="$(gh api "repos/${TARGET_REPOSITORY}/pulls/${TARGET_PR_NUMBER}")" + live_draft="$(jq -er '.draft | if type == "boolean" then tostring else error("Strix PR draft state is unavailable") end' <<<"$pull_request_json")" + if [ "$live_draft" = "true" ]; then + echo "::notice::Strix model work is unnecessary while the pull request is Draft." + exit 0 + fi live_tuple="$(jq -r '[.state // "", .base.repo.full_name // "", .base.ref // "", .base.sha // "", .head.repo.full_name // "", .head.sha // ""] | @tsv' <<<"$pull_request_json")" expected_tuple="$(printf 'open\t%s\t%s\t%s\t%s\t%s' "$TARGET_REPOSITORY" "$EXPECTED_BASE_REF" "$EXPECTED_BASE_SHA" "$EXPECTED_HEAD_REPOSITORY" "$EXPECTED_HEAD_SHA")" if [ "$live_tuple" != "$expected_tuple" ]; then diff --git a/docs/doctoring/strix-metadata-admission-consolidation.md b/docs/doctoring/strix-metadata-admission-consolidation.md index 0605abd161..515d3f247f 100644 --- a/docs/doctoring/strix-metadata-admission-consolidation.md +++ b/docs/doctoring/strix-metadata-admission-consolidation.md @@ -57,7 +57,33 @@ https://doi.org/10.48550/arXiv.2512.11602. The tradeoff is serial latency: admission must finish before classification, where the old metadata jobs could run in parallel. That delay is bounded by the 5-minute admission step and prevents stale events from spending a second runner. -No model, scan, cleanup, or concurrency behavior is changed. +The original consolidation did not change model, scan, cleanup, or concurrency +behavior. The following admission repair is a separate follow-up. + +## Live Draft admission repair (2026-09-07) + +GitHub timeline evidence shows PR #1706 converted to Draft at +2026-09-06T22:59:11Z before automatic Strix run `34068478185` started at +2026-09-07T00:01:03Z. PR #1150 converted at 23:46:51Z before run +`34067942252` started at 23:49:09Z. Both were first-attempt +`pull_request_target` runs with current-head identities, not manual scans. +The live admission tuple checked state/base/head but omitted Draft status. + +Reuse the existing PR response: require a boolean `draft`, stop before path +classification and scanner admission when true, and fail closed on unavailable +or malformed values. A live false value follows the existing exact-head path, +including `ready_for_review`. No extra API call, model timer, permission change, +or automatic cancellation is introduced. This prevents future Draft admission; +it does not prove that existing jobs have stopped or that organization-wide +capacity has improved. + +Six executable shell cases reproduced the defect on owner head +`402aca1392c829f28ac975d27b68c49ad0495c24`: native PR and repository dispatch +each incorrectly admitted true, null, and string-false values. After the guard, +93 admission/queue tests passed in 20.70 seconds; actionlint and diff checks +passed. Existing false-Draft, stale-head, malformed-event, API-failure and +non-PR cases remain covered. These are local source results, not hosted checks +or protected integration. ## Evidence boundary and follow-up diff --git a/tests/test_docs_only_pr_runner_admission.py b/tests/test_docs_only_pr_runner_admission.py index 119e6fe766..73bd3c2004 100644 --- a/tests/test_docs_only_pr_runner_admission.py +++ b/tests/test_docs_only_pr_runner_admission.py @@ -113,6 +113,7 @@ def _run_strix_metadata_steps( event_name: str, scenario: str, expected_files: str = "1", + draft_json: str = "false", ) -> tuple[ subprocess.CompletedProcess[str], subprocess.CompletedProcess[str] | None, @@ -140,10 +141,10 @@ def _run_strix_metadata_steps( esac ;; stale:*) - printf '{"state":"open","base":{"repo":{"full_name":"owner/repo"},"ref":"main","sha":"%s"},"head":{"repo":{"full_name":"owner/repo"},"sha":"%s"}}\\n' "$BASE_SHA" "$STALE_SHA" + printf '{"state":"open","draft":%s,"base":{"repo":{"full_name":"owner/repo"},"ref":"main","sha":"%s"},"head":{"repo":{"full_name":"owner/repo"},"sha":"%s"}}\\n' "$DRAFT_JSON" "$BASE_SHA" "$STALE_SHA" ;; *) - printf '{"state":"open","base":{"repo":{"full_name":"owner/repo"},"ref":"main","sha":"%s"},"head":{"repo":{"full_name":"owner/repo"},"sha":"%s"}}\\n' "$BASE_SHA" "$HEAD_SHA" + printf '{"state":"open","draft":%s,"base":{"repo":{"full_name":"owner/repo"},"ref":"main","sha":"%s"},"head":{"repo":{"full_name":"owner/repo"},"sha":"%s"}}\\n' "$DRAFT_JSON" "$BASE_SHA" "$HEAD_SHA" ;; esac """, @@ -173,6 +174,7 @@ def _run_strix_metadata_steps( "EXPECTED_HEAD_SHA": head_sha, "CALLS_FILE": str(calls), "SCENARIO": scenario, + "DRAFT_JSON": draft_json, "BASE_SHA": base_sha, "HEAD_SHA": head_sha, "STALE_SHA": "c" * 40, @@ -205,6 +207,19 @@ def _run_strix_metadata_steps( return admission, classifier, calls.read_text().splitlines() if calls.exists() else [], outputs +@pytest.mark.parametrize("event_name", ("pull_request_target", "repository_dispatch")) +@pytest.mark.parametrize("draft_json", ("true", "null", '"false"')) +def test_strix_live_draft_state_blocks_admission(tmp_path, event_name, draft_json): + """Draft or unverifiable readiness never reaches file classification or scanning.""" + admission, classifier, calls, outputs = _run_strix_metadata_steps( + tmp_path, event_name=event_name, scenario="code", draft_json=draft_json, + ) + assert outputs["admitted"] == "false" + assert classifier is None + assert len(calls) == 1 + assert admission.returncode == 0 if draft_json == "true" else admission.returncode != 0 + + @pytest.mark.parametrize("event_name", ("push", "schedule")) def test_strix_non_pr_events_skip_api_and_scan_by_default( tmp_path: Path, event_name: str