From 8d4628aeeddd94270ff38d9918ba218cd4f7db40 Mon Sep 17 00:00:00 2001 From: ZASENJC <1585463018@qq.com> Date: Fri, 16 Oct 2026 00:05:02 +0800 Subject: [PATCH] refactor: separate native platforms and automate signed dual-platform releases --- .github/workflows/build.yml | 178 +++++++ .github/workflows/release.yml | 470 ----------------- .gitignore | 5 + .vscode/extensions.json | 8 +- .vscode/settings.json | 4 +- AGENTS.md | 217 ++------ CLAUDE.md | 165 +----- Cargo.lock | 55 +- Cargo.toml | 5 +- LICENSE | 21 + README.md | 179 +++---- apps/macos/AGENTS.md | 10 + apps/macos/Cargo.toml | 26 + apps/macos/README.md | 12 + apps/macos/src/app.rs | 351 +++++++++++++ apps/macos/src/main.rs | 25 + {crates/ttree-app => apps/macos}/src/state.rs | 14 +- .../macos}/src/ui_helpers.rs | 0 apps/windows/AGENTS.md | 10 + apps/windows/Cargo.toml | 26 + apps/windows/README.md | 24 + apps/windows/build.rs | 17 + .../windows_app.rs => apps/windows/src/app.rs | 20 +- .../windows/src/app}/dialogs.rs | 0 .../windows/src/app}/ui.rs | 2 +- .../windows/src/design.rs | 0 apps/windows/src/main.rs | 14 + .../windows/tests/repaint-regression.py | 2 +- assets/icons/128x128.png | Bin 3512 -> 2053 bytes assets/icons/128x128@2x.png | Bin 7012 -> 0 bytes assets/icons/32x32.png | Bin 974 -> 685 bytes assets/icons/Square107x107Logo.png | Bin 2863 -> 0 bytes assets/icons/Square142x142Logo.png | Bin 3858 -> 0 bytes assets/icons/Square150x150Logo.png | Bin 3966 -> 0 bytes assets/icons/Square284x284Logo.png | Bin 7737 -> 0 bytes assets/icons/Square30x30Logo.png | Bin 903 -> 0 bytes assets/icons/Square310x310Logo.png | Bin 8591 -> 0 bytes assets/icons/Square44x44Logo.png | Bin 1299 -> 0 bytes assets/icons/Square71x71Logo.png | Bin 2011 -> 0 bytes assets/icons/Square89x89Logo.png | Bin 2468 -> 0 bytes assets/icons/StoreLogo.png | Bin 1523 -> 0 bytes assets/icons/icon.icns | Bin 98451 -> 77499 bytes assets/icons/icon.ico | Bin 86642 -> 10046 bytes assets/icons/icon.png | Bin 14183 -> 18239 bytes assets/icons/icon.svg | 11 + crates/ttree-app/Cargo.toml | 33 -- crates/ttree-app/src/main.rs | 394 -------------- crates/ttree-ocr/src/lib.rs | 7 +- crates/ttree-ocr/src/{ => macos}/image.rs | 0 .../ttree-ocr/src/{ => macos}/screenshot.rs | 0 crates/ttree-ocr/src/{ => macos}/vision.rs | 0 crates/ttree-ocr/src/postprocess.rs | 9 +- crates/ttree-ocr/src/preprocess.rs | 28 +- .../src/{ => windows}/windows_capture.rs | 12 +- .../src/{ => windows}/windows_ocr.rs | 11 +- crates/ttree-platform-macos/src/lib.rs | 8 - crates/ttree-platform-macos/src/selection.rs | 497 ------------------ .../Cargo.toml | 2 +- .../src/autostart.rs | 0 .../src/hotkey.rs | 0 crates/ttree-platform/src/lib.rs | 4 + crates/ttree-platform/src/macos/selection.rs | 201 +++++++ crates/ttree-platform/src/selection.rs | 64 +++ .../ttree-platform/src/windows/selection.rs | 230 ++++++++ docs/design/product.html | 9 + docs/development.md | 62 +++ docs/images/product.png | Bin 0 -> 972991 bytes docs/images/workspace.svg | 21 + docs/releasing.md | 74 +++ scripts/branding/generate-icons.py | 41 ++ scripts/ci-install.sh | 8 - scripts/community-release-notes.md | 10 - scripts/macos/import-certificate.sh | 36 ++ scripts/macos/package.sh | 97 ++++ scripts/{ => macos}/signing-env.sh | 4 +- .../verify-signature.sh} | 0 scripts/package-macos-community.sh | 242 --------- scripts/package-pure-rust-macos.sh | 117 ----- scripts/release/checksums.py | 42 ++ .../generate-manifest.sh} | 9 +- scripts/release/installation-notes.md | 7 + scripts/release/metadata.py | 46 ++ scripts/release/publish.sh | 53 ++ scripts/release/updater.pub | 2 + .../validate-secrets.sh} | 0 scripts/release/verify-assets.py | 30 ++ .../verify-macos-assets.sh} | 9 +- scripts/tests/ci-install.test.sh | 36 -- scripts/tests/package-macos-community.test.sh | 71 --- scripts/tests/project-invariants.test.sh | 38 -- scripts/tests/release-secrets.test.sh | 2 +- scripts/tests/release-workflow.test.sh | 130 ----- scripts/tests/release_test.py | 88 ++++ scripts/tests/run-release-tests.sh | 13 +- scripts/tests/signing-env.test.sh | 2 +- .../verify-macos-community-signature.test.sh | 2 +- .../tests/verify-macos-release-assets.test.sh | 2 +- scripts/tests/verify-macos-signature.test.sh | 8 - scripts/verify-macos-signature.sh | 8 - scripts/windows/package.ps1 | 27 + scripts/windows/smoke.ps1 | 59 +++ 101 files changed, 2165 insertions(+), 2611 deletions(-) create mode 100644 .github/workflows/build.yml delete mode 100644 .github/workflows/release.yml create mode 100644 LICENSE create mode 100644 apps/macos/AGENTS.md create mode 100644 apps/macos/Cargo.toml create mode 100644 apps/macos/README.md create mode 100644 apps/macos/src/app.rs create mode 100644 apps/macos/src/main.rs rename {crates/ttree-app => apps/macos}/src/state.rs (99%) rename {crates/ttree-app => apps/macos}/src/ui_helpers.rs (100%) create mode 100644 apps/windows/AGENTS.md create mode 100644 apps/windows/Cargo.toml create mode 100644 apps/windows/README.md create mode 100644 apps/windows/build.rs rename crates/ttree-app/src/windows_app.rs => apps/windows/src/app.rs (99%) rename {crates/ttree-app/src/windows_app => apps/windows/src/app}/dialogs.rs (100%) rename {crates/ttree-app/src/windows_app => apps/windows/src/app}/ui.rs (99%) rename crates/ttree-app/src/windows_design.rs => apps/windows/src/design.rs (100%) create mode 100644 apps/windows/src/main.rs rename scripts/tests/windows-repaint-regression.py => apps/windows/tests/repaint-regression.py (98%) delete mode 100644 assets/icons/128x128@2x.png delete mode 100644 assets/icons/Square107x107Logo.png delete mode 100644 assets/icons/Square142x142Logo.png delete mode 100644 assets/icons/Square150x150Logo.png delete mode 100644 assets/icons/Square284x284Logo.png delete mode 100644 assets/icons/Square30x30Logo.png delete mode 100644 assets/icons/Square310x310Logo.png delete mode 100644 assets/icons/Square44x44Logo.png delete mode 100644 assets/icons/Square71x71Logo.png delete mode 100644 assets/icons/Square89x89Logo.png delete mode 100644 assets/icons/StoreLogo.png create mode 100644 assets/icons/icon.svg delete mode 100644 crates/ttree-app/Cargo.toml delete mode 100644 crates/ttree-app/src/main.rs rename crates/ttree-ocr/src/{ => macos}/image.rs (100%) rename crates/ttree-ocr/src/{ => macos}/screenshot.rs (100%) rename crates/ttree-ocr/src/{ => macos}/vision.rs (100%) rename crates/ttree-ocr/src/{ => windows}/windows_capture.rs (98%) rename crates/ttree-ocr/src/{ => windows}/windows_ocr.rs (97%) delete mode 100644 crates/ttree-platform-macos/src/lib.rs delete mode 100644 crates/ttree-platform-macos/src/selection.rs rename crates/{ttree-platform-macos => ttree-platform}/Cargo.toml (93%) rename crates/{ttree-platform-macos => ttree-platform}/src/autostart.rs (100%) rename crates/{ttree-platform-macos => ttree-platform}/src/hotkey.rs (100%) create mode 100644 crates/ttree-platform/src/lib.rs create mode 100644 crates/ttree-platform/src/macos/selection.rs create mode 100644 crates/ttree-platform/src/selection.rs create mode 100644 crates/ttree-platform/src/windows/selection.rs create mode 100644 docs/design/product.html create mode 100644 docs/development.md create mode 100644 docs/images/product.png create mode 100644 docs/images/workspace.svg create mode 100644 docs/releasing.md create mode 100644 scripts/branding/generate-icons.py delete mode 100755 scripts/ci-install.sh delete mode 100644 scripts/community-release-notes.md create mode 100755 scripts/macos/import-certificate.sh create mode 100755 scripts/macos/package.sh rename scripts/{ => macos}/signing-env.sh (94%) rename scripts/{verify-macos-community-signature.sh => macos/verify-signature.sh} (100%) delete mode 100755 scripts/package-macos-community.sh delete mode 100755 scripts/package-pure-rust-macos.sh create mode 100644 scripts/release/checksums.py rename scripts/{generate-latest-json.sh => release/generate-manifest.sh} (84%) create mode 100644 scripts/release/installation-notes.md create mode 100755 scripts/release/metadata.py create mode 100755 scripts/release/publish.sh create mode 100644 scripts/release/updater.pub rename scripts/{validate-release-secrets.sh => release/validate-secrets.sh} (100%) create mode 100644 scripts/release/verify-assets.py rename scripts/{verify-macos-release-assets.sh => release/verify-macos-assets.sh} (87%) delete mode 100755 scripts/tests/ci-install.test.sh delete mode 100755 scripts/tests/package-macos-community.test.sh delete mode 100644 scripts/tests/project-invariants.test.sh delete mode 100755 scripts/tests/release-workflow.test.sh create mode 100644 scripts/tests/release_test.py mode change 100755 => 100644 scripts/tests/verify-macos-release-assets.test.sh delete mode 100755 scripts/tests/verify-macos-signature.test.sh delete mode 100755 scripts/verify-macos-signature.sh create mode 100644 scripts/windows/package.ps1 create mode 100644 scripts/windows/smoke.ps1 diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml new file mode 100644 index 0000000..fc58133 --- /dev/null +++ b/.github/workflows/build.yml @@ -0,0 +1,178 @@ +name: Build and release + +on: + push: + branches: ['**'] + tags: ['v*'] + pull_request: + workflow_dispatch: + +permissions: + contents: read + +concurrency: + group: build-${{ github.ref }} + cancel-in-progress: false + +jobs: + metadata: + runs-on: ubuntu-latest + outputs: + app_version: ${{ steps.release.outputs.app_version }} + release_tag: ${{ steps.release.outputs.release_tag }} + publish: ${{ steps.release.outputs.publish }} + prerelease: ${{ steps.release.outputs.prerelease }} + steps: + - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 + - uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5 + with: + python-version: '3.12' + - name: Validate release contracts + run: bash scripts/tests/run-release-tests.sh + - name: Resolve release metadata + id: release + run: python3 scripts/release/metadata.py --github-output "$GITHUB_OUTPUT" + + macos: + needs: metadata + runs-on: macos-15 + env: + MACOSX_DEPLOYMENT_TARGET: '11.0' + steps: + - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 + - uses: dtolnay/rust-toolchain@4be7066ada62dd38de10e7b70166bc74ed198c30 # stable + with: + targets: aarch64-apple-darwin,x86_64-apple-darwin + - uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5 + with: + python-version: '3.12' + - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4 + with: + node-version: '22' + - name: Prepare Metal compiler + run: xcrun -f metal >/dev/null 2>&1 || xcodebuild -downloadComponent MetalToolchain + - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + target + key: macos-universal-${{ hashFiles('Cargo.lock', 'Cargo.toml', 'apps/**/Cargo.toml') }} + restore-keys: macos-universal- + - name: Check and test shared libraries and native apps + run: | + cargo check --workspace --locked + cargo test --workspace --locked + - name: Build universal app without signing material + run: scripts/macos/package.sh universal-apple-darwin "$GITHUB_RUN_NUMBER" --build-only + - name: Sign and verify distributable macOS assets + if: github.event_name != 'pull_request' && github.repository == 'ZASENJC/ttree' + env: + MACOS_COMMUNITY_CERTIFICATE: ${{ secrets.MACOS_COMMUNITY_CERTIFICATE }} + MACOS_COMMUNITY_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_COMMUNITY_CERTIFICATE_PASSWORD }} + TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }} + TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }} + RELEASE_TAG: ${{ needs.metadata.outputs.release_tag }} + APP_VERSION: ${{ needs.metadata.outputs.app_version }} + run: | + brew list minisign >/dev/null 2>&1 || brew install minisign + scripts/macos/package.sh universal-apple-darwin "$GITHUB_RUN_NUMBER" --package-only + scripts/release/generate-manifest.sh dist/macos "$RELEASE_TAG" "$GITHUB_REPOSITORY" + scripts/release/verify-macos-assets.sh dist/macos "$RELEASE_TAG" "$GITHUB_REPOSITORY" "$APP_VERSION" + python3 scripts/release/checksums.py dist/macos --write macos.sha256 + - name: Upload signed macOS assets + if: github.event_name != 'pull_request' && github.repository == 'ZASENJC/ttree' + uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 + with: + name: macos-${{ github.run_id }}-${{ github.run_attempt }} + path: dist/macos/ + if-no-files-found: error + retention-days: 7 + compression-level: 0 + + windows: + needs: metadata + runs-on: windows-2022 + steps: + - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 + - uses: dtolnay/rust-toolchain@4be7066ada62dd38de10e7b70166bc74ed198c30 # stable + with: + targets: x86_64-pc-windows-msvc + - uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5 + with: + python-version: '3.12' + - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 + with: + path: | + ~/.cargo/registry + ~/.cargo/git + target + key: windows-x64-${{ hashFiles('Cargo.lock', 'Cargo.toml', 'apps/**/Cargo.toml') }} + restore-keys: windows-x64- + - name: Check and test shared libraries and native apps + run: | + cargo check --workspace --locked + if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE } + cargo test --workspace --locked + if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE } + - name: Build and validate portable ZIP + run: ./scripts/windows/package.ps1 + - name: Launch packaged Windows app + run: ./scripts/windows/smoke.ps1 -Exe target/package/windows/TTREE/TTREE.exe -Output target/windows-smoke + - name: Record Windows checksums + run: python scripts/release/checksums.py dist/windows --write windows.sha256 + - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 + with: + name: windows-${{ github.run_id }}-${{ github.run_attempt }} + path: dist/windows/ + if-no-files-found: error + retention-days: 7 + compression-level: 0 + - name: Upload Windows smoke evidence + if: always() + uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 + with: + name: windows-smoke-${{ github.run_id }}-${{ github.run_attempt }} + path: target/windows-smoke/ + if-no-files-found: warn + retention-days: 7 + + publish: + needs: [metadata, macos, windows] + if: needs.metadata.outputs.publish == 'true' && github.repository == 'ZASENJC/ttree' + runs-on: ubuntu-latest + permissions: + contents: write + env: + APP_VERSION: ${{ needs.metadata.outputs.app_version }} + RELEASE_TAG: ${{ needs.metadata.outputs.release_tag }} + PRERELEASE: ${{ needs.metadata.outputs.prerelease }} + GH_TOKEN: ${{ github.token }} + steps: + - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 + with: + fetch-depth: 0 + - uses: actions/setup-python@a26af69be951a213d495a4c3e4e4022e16d87065 # v5 + with: + python-version: '3.12' + - uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4 + with: + name: macos-${{ github.run_id }}-${{ github.run_attempt }} + path: dist/release + - uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4 + with: + name: windows-${{ github.run_id }}-${{ github.run_attempt }} + path: dist/release + - name: Verify transferred assets and updater signature + env: + VERIFY_MACOS_CONTAINERS: '0' + run: | + sudo apt-get update -qq + sudo apt-get install -y minisign + python3 scripts/release/checksums.py dist/release --check macos.sha256 --check windows.sha256 + scripts/release/verify-macos-assets.sh dist/release "$RELEASE_TAG" "$GITHUB_REPOSITORY" "$APP_VERSION" + python3 scripts/release/verify-assets.py dist/release "$APP_VERSION" + rm dist/release/macos.sha256 dist/release/windows.sha256 + python3 scripts/release/checksums.py dist/release --write SHA256SUMS + - name: Generate release notes and publish verified draft + run: scripts/release/publish.sh diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index 3766c3b..0000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,470 +0,0 @@ -name: release - -# Manual runs build and verify temporary artifacts only. A pushed v* tag may -# enter the separate publish job after the same verification job succeeds. -on: - push: - tags: - - "v*" - workflow_dispatch: - -permissions: - contents: read - -concurrency: - group: release-${{ github.event_name == 'workflow_dispatch' && github.run_id || github.ref }} - cancel-in-progress: true - -jobs: - ocr-current-macos: - # Exercise real OCR on the stable newer Apple Silicon runtime. - runs-on: macos-26 - timeout-minutes: 15 - permissions: - contents: read - steps: - - name: Check out source - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 - - - name: Install Rust stable - uses: dtolnay/rust-toolchain@4be7066ada62dd38de10e7b70166bc74ed198c30 # stable - - - name: Cache current macOS OCR dependencies - id: ocr-cache - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 - with: - path: | - ~/.cargo/registry - ~/.cargo/git - src-tauri/target - key: macos-26-ocr-${{ hashFiles('src-tauri/Cargo.lock') }} - restore-keys: | - macos-26-ocr- - - - name: Record native OCR runtime - run: | - sw_vers - uname -m - swift --version - - - name: Exercise native OCR on current macOS - run: | - cargo test --manifest-path src-tauri/Cargo.toml ocr:: -- --nocapture - - - name: Diagnose native Vision if OCR fails - if: failure() - run: | - fixture_dir="$RUNNER_TEMP/ttree-ocr-diagnostics" - mkdir -p "$fixture_dir" - swift src-tauri/src/ocr/tests/generate-fixtures.swift "$fixture_dir" - swift src-tauri/src/ocr/tests/diagnose-vision.swift "$fixture_dir/english.png" - - - name: Save compiled OCR dependencies - if: always() && steps.ocr-cache.outputs.cache-hit != 'true' - uses: actions/cache/save@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 - with: - path: | - ~/.cargo/registry - ~/.cargo/git - src-tauri/target - key: macos-26-ocr-${{ hashFiles('src-tauri/Cargo.lock') }} - - ocr-macos27-compatibility: - runs-on: xcode-27 - timeout-minutes: 15 - permissions: - contents: read - steps: - - name: Check out source - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 - - - name: Probe native Vision capability on macOS 27 - id: capability - run: | - sw_vers - uname -m - fixture_dir="$RUNNER_TEMP/ttree-ocr-capability" - mkdir -p "$fixture_dir" - swift src-tauri/src/ocr/tests/generate-fixtures.swift "$fixture_dir" - swift src-tauri/src/ocr/tests/diagnose-vision.swift "$fixture_dir/english.png" 2>&1 | - tee "$fixture_dir/vision.log" - if grep -Eq '(apple-default|default-explicit-cpu|rev3-english-cpu|rev3-chinese-english-cpu|rev2-chinese-english-cpu) software=(false|true): OK Hello OCR' "$fixture_dir/vision.log"; then - echo 'accurate_supported=true' >> "$GITHUB_OUTPUT" - elif grep -Fq 'AppleM2ScalerParavirtDriver' "$fixture_dir/vision.log" && - grep -Fq 'fast-english-cpu software=false: OK Hello OCR' "$fixture_dir/vision.log"; then - echo 'accurate_supported=false' >> "$GITHUB_OUTPUT" - echo '::warning::macOS 27 VM lacks the image scaler used by Apple accurate Vision OCR; the independent Apple baseline also fails.' - echo 'macOS 27: accurate OCR cannot be validated on this VM because the Apple baseline fails and AppleM2ScalerParavirtDriver is unavailable. Real-image regression gates still run on macOS 14 and 26; physical macOS 27 verification is required.' >> "$GITHUB_STEP_SUMMARY" - else - echo '::error::Unexpected native Vision baseline failure' - exit 1 - fi - - - name: Install Rust stable - if: steps.capability.outputs.accurate_supported == 'true' - uses: dtolnay/rust-toolchain@4be7066ada62dd38de10e7b70166bc74ed198c30 # stable - - - name: Cache macOS 27 OCR dependencies - if: steps.capability.outputs.accurate_supported == 'true' - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 - with: - path: | - ~/.cargo/registry - ~/.cargo/git - src-tauri/target - key: macos-27-ocr-${{ hashFiles('src-tauri/Cargo.lock') }} - restore-keys: | - macos-27-ocr- - - - name: Exercise accurate OCR when the platform supports it - if: steps.capability.outputs.accurate_supported == 'true' - run: | - cargo test --manifest-path src-tauri/Cargo.toml ocr:: -- --nocapture - - verify: - needs: [ocr-current-macos, ocr-macos27-compatibility] - runs-on: macos-14 - permissions: - contents: read - outputs: - app_version: ${{ steps.metadata.outputs.app_version }} - release_tag: ${{ steps.metadata.outputs.release_tag }} - env: - EXPECTED_MACOS_COMMUNITY_SIGNING_IDENTITY: TTREE Open Source Code Signing - EXPECTED_MACOS_COMMUNITY_CERT_SHA1: B8D254561BB6CAD78AA71FA18D62A32D10F50C08 - MACOS_COMMUNITY_SIGNING_IDENTITY: TTREE Open Source Code Signing - MACOS_COMMUNITY_CERT_SHA1: B8D254561BB6CAD78AA71FA18D62A32D10F50C08 - steps: - - name: Check out source - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 - - - name: Install Node - uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4 - with: - node-version: 20 - cache: npm - - - name: Install Rust stable - uses: dtolnay/rust-toolchain@4be7066ada62dd38de10e7b70166bc74ed198c30 # stable - with: - targets: aarch64-apple-darwin,x86_64-apple-darwin - - - name: Cache Cargo - uses: actions/cache@0057852bfaa89a56745cba8c7296529d2fc39830 # v4 - with: - path: | - ~/.cargo/registry - ~/.cargo/git - src-tauri/target - key: ${{ runner.os }}-community-cargo-${{ hashFiles('src-tauri/Cargo.lock') }} - restore-keys: | - ${{ runner.os }}-community-cargo- - - - name: Install frontend dependencies - run: npm run ci:install - - - name: Run release contract tests - run: npm run test:release - - - name: Check frontend - run: npm run check - - - name: Test frontend - run: npm test - - - name: Check Rust backend - run: cargo check --manifest-path src-tauri/Cargo.toml - - - name: Test Rust backend - run: cargo test --manifest-path src-tauri/Cargo.toml - - - name: Lint Rust backend - run: cargo clippy --manifest-path src-tauri/Cargo.toml --all-targets -- -D warnings - - - name: Resolve and validate release metadata - id: metadata - shell: bash - run: | - set -euo pipefail - package_version="$(jq -r '.version' package.json)" - tauri_version="$(jq -r '.version' src-tauri/tauri.conf.json)" - - if [[ -z "$package_version" || "$package_version" == "null" ]]; then - echo "::error::package.json does not contain a valid version" - exit 1 - fi - if [[ "$package_version" != "$tauri_version" ]]; then - echo "::error::package.json version $package_version does not match tauri.conf.json version $tauri_version" - exit 1 - fi - - expected_tag="v$package_version" - if [[ "$GITHUB_EVENT_NAME" == "push" ]]; then - if [[ "$GITHUB_REF_NAME" != "$expected_tag" ]]; then - echo "::error::Tag $GITHUB_REF_NAME does not match package version $package_version" - exit 1 - fi - release_tag="$GITHUB_REF_NAME" - else - release_tag="${expected_tag}-verify-${GITHUB_RUN_NUMBER}" - fi - - echo "APP_VERSION=$package_version" >> "$GITHUB_ENV" - echo "RELEASE_TAG=$release_tag" >> "$GITHUB_ENV" - echo "app_version=$package_version" >> "$GITHUB_OUTPUT" - echo "release_tag=$release_tag" >> "$GITHUB_OUTPUT" - - - name: Install updater signature verifier - run: brew list minisign >/dev/null 2>&1 || brew install minisign - - - name: Build unsigned macOS app without signing material - run: ./scripts/package-macos-community.sh universal-apple-darwin "$GITHUB_RUN_NUMBER" --build-only - - - name: Import pinned community signing certificate - id: community-signing - shell: bash - env: - MACOS_COMMUNITY_CERTIFICATE: ${{ secrets.MACOS_COMMUNITY_CERTIFICATE }} - MACOS_COMMUNITY_CERTIFICATE_PASSWORD: ${{ secrets.MACOS_COMMUNITY_CERTIFICATE_PASSWORD }} - run: | - set -euo pipefail - ./scripts/validate-release-secrets.sh certificate - umask 077 - keychain_path="$RUNNER_TEMP/ttree-community.keychain-db" - keychain_password="$(openssl rand -hex 24)" - certificate_path="$RUNNER_TEMP/ttree-community.p12" - certificate_pem="$RUNNER_TEMP/ttree-community.pem" - cleanup_import_files() { - rm -f "$certificate_path" "$certificate_pem" - } - trap cleanup_import_files EXIT - - echo "::add-mask::$keychain_password" - echo "keychain_path=$keychain_path" >> "$GITHUB_OUTPUT" - printf '%s' "$MACOS_COMMUNITY_CERTIFICATE" | - openssl base64 -d -A -out "$certificate_path" - - security create-keychain -p "$keychain_password" "$keychain_path" - security set-keychain-settings -lut 21600 "$keychain_path" - security unlock-keychain -p "$keychain_password" "$keychain_path" - security import "$certificate_path" \ - -k "$keychain_path" \ - -P "$MACOS_COMMUNITY_CERTIFICATE_PASSWORD" \ - -T /usr/bin/codesign - security set-key-partition-list \ - -S apple-tool:,apple:,codesign: \ - -s \ - -k "$keychain_password" \ - "$keychain_path" - - security find-certificate \ - -c "$EXPECTED_MACOS_COMMUNITY_SIGNING_IDENTITY" \ - -p \ - "$keychain_path" > "$certificate_pem" - - actual_sha1="$(openssl x509 -in "$certificate_pem" -noout -fingerprint -sha1 | sed 's/.*=//; s/://g' | tr '[:lower:]' '[:upper:]')" - if [[ "$actual_sha1" != "$EXPECTED_MACOS_COMMUNITY_CERT_SHA1" ]]; then - echo "::error::Imported community certificate does not match the pinned fingerprint" - exit 1 - fi - - sudo security add-trusted-cert \ - -d \ - -r trustRoot \ - -p codeSign \ - -k /Library/Keychains/System.keychain \ - "$certificate_pem" - - existing_keychains=() - while IFS= read -r keychain; do - existing_keychains+=("$keychain") - done < <(security list-keychains -d user | sed 's/^[[:space:]]*"//; s/"$//') - security list-keychains -d user -s "$keychain_path" "${existing_keychains[@]}" - security find-identity -v -p codesigning "$keychain_path" | - grep -F "$EXPECTED_MACOS_COMMUNITY_CERT_SHA1" >/dev/null - - echo "MACOS_COMMUNITY_SIGNING_KEYCHAIN=$keychain_path" >> "$GITHUB_ENV" - - - name: Sign and package community-signed macOS app - env: - TAURI_SIGNING_PRIVATE_KEY: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY }} - TAURI_SIGNING_PRIVATE_KEY_PASSWORD: ${{ secrets.TAURI_SIGNING_PRIVATE_KEY_PASSWORD }} - run: | - ./scripts/validate-release-secrets.sh updater - ./scripts/package-macos-community.sh universal-apple-darwin "$GITHUB_RUN_NUMBER" --package-only - - - name: Clean up signing keychain - if: always() && steps.community-signing.outputs.keychain_path != '' - shell: bash - run: security delete-keychain "${{ steps.community-signing.outputs.keychain_path }}" 2>/dev/null || true - - - name: Verify final app signature - run: | - ./scripts/verify-macos-community-signature.sh \ - src-tauri/target/universal-apple-darwin/release/bundle/macos/TTREE.app - - - name: Generate updater manifest - run: | - ./scripts/generate-latest-json.sh \ - src-tauri/target/community-release \ - "$RELEASE_TAG" \ - "$GITHUB_REPOSITORY" - - - name: Verify packaged release assets - run: | - ./scripts/verify-macos-release-assets.sh \ - src-tauri/target/community-release \ - "$RELEASE_TAG" \ - "$GITHUB_REPOSITORY" \ - "$APP_VERSION" - - - name: Record verified asset checksums - working-directory: src-tauri/target/community-release - run: | - shasum -a 256 \ - "TTREE_${APP_VERSION}_universal.dmg" \ - TTREE_universal.app.tar.gz \ - TTREE_universal.app.tar.gz.sig \ - latest.json > SHA256SUMS - shasum -a 256 --check SHA256SUMS - - - name: Upload temporary verification artifacts - uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4 - with: - name: community-macos-${{ github.run_id }} - path: src-tauri/target/community-release/ - if-no-files-found: error - retention-days: 7 - compression-level: 0 - - publish: - if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') - needs: verify - runs-on: macos-14 - permissions: - contents: write - env: - APP_VERSION: ${{ needs.verify.outputs.app_version }} - RELEASE_TAG: ${{ needs.verify.outputs.release_tag }} - steps: - - name: Check out source - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 - - - name: Download verified build artifacts - uses: actions/download-artifact@d3f86a106a0bac45b974a628896c90dbdf5c8093 # v4 - with: - name: community-macos-${{ github.run_id }} - path: src-tauri/target/community-release - - - name: Install updater signature verifier - run: brew list minisign >/dev/null 2>&1 || brew install minisign - - - name: Recheck transferred artifacts - working-directory: src-tauri/target/community-release - run: shasum -a 256 --check SHA256SUMS - - - name: Recheck updater signature and manifest - env: - VERIFY_MACOS_CONTAINERS: "0" - run: | - ./scripts/verify-macos-release-assets.sh \ - src-tauri/target/community-release \ - "$RELEASE_TAG" \ - "$GITHUB_REPOSITORY" \ - "$APP_VERSION" - - - name: Create private draft Release - id: draft-release - env: - GH_TOKEN: ${{ github.token }} - run: | - set -euo pipefail - release_dir="src-tauri/target/community-release" - if existing_release="$( - gh release view "$RELEASE_TAG" \ - --repo "$GITHUB_REPOSITORY" \ - --json isDraft \ - --jq '.isDraft' 2>/dev/null - )"; then - if [[ "$existing_release" != "true" ]]; then - echo "::error::Release $RELEASE_TAG is already published" - exit 1 - fi - existing_tag="$RELEASE_TAG" - gh release delete "$existing_tag" \ - --repo "$GITHUB_REPOSITORY" \ - --yes - fi - gh release create "$RELEASE_TAG" \ - "$release_dir/TTREE_${APP_VERSION}_universal.dmg" \ - "$release_dir/TTREE_universal.app.tar.gz" \ - "$release_dir/TTREE_universal.app.tar.gz.sig" \ - "$release_dir/latest.json" \ - --repo "$GITHUB_REPOSITORY" \ - --verify-tag \ - --draft \ - --title "TTREE $RELEASE_TAG" \ - --notes-file scripts/community-release-notes.md - - - name: Download and verify actual draft assets - env: - GH_TOKEN: ${{ github.token }} - VERIFY_MACOS_CONTAINERS: "0" - run: | - set -euo pipefail - release_dir="$GITHUB_WORKSPACE/src-tauri/target/community-release" - downloaded_dir="$RUNNER_TEMP/ttree-draft-assets" - mkdir -p "$downloaded_dir" - - assets="$(gh release view "$RELEASE_TAG" --repo "$GITHUB_REPOSITORY" --json assets --jq '.assets[].name')" - if [[ "$(printf '%s\n' "$assets" | sed '/^$/d' | wc -l | tr -d ' ')" != "4" ]]; then - echo "::error::Draft Release must contain exactly four assets" - exit 1 - fi - for expected in \ - "TTREE_${APP_VERSION}_universal.dmg" \ - "TTREE_universal.app.tar.gz" \ - "TTREE_universal.app.tar.gz.sig" \ - "latest.json" - do - if ! grep -Fqx "$expected" <<< "$assets"; then - echo "::error::Draft Release is missing $expected" - exit 1 - fi - done - - gh release download "$RELEASE_TAG" \ - --repo "$GITHUB_REPOSITORY" \ - --dir "$downloaded_dir" - - ( - cd "$downloaded_dir" - shasum -a 256 --check "$release_dir/SHA256SUMS" - ) - ./scripts/verify-macos-release-assets.sh \ - "$downloaded_dir" \ - "$RELEASE_TAG" \ - "$GITHUB_REPOSITORY" \ - "$APP_VERSION" - - - name: Publish verified Release - id: publish-release - env: - GH_TOKEN: ${{ github.token }} - run: gh release edit "$RELEASE_TAG" --repo "$GITHUB_REPOSITORY" --draft=false - - - name: Clean up unpublished draft Release - if: always() && steps.draft-release.outcome == 'success' && steps.publish-release.outcome != 'success' - env: - GH_TOKEN: ${{ github.token }} - run: | - if [[ "$( - gh release view "$RELEASE_TAG" \ - --repo "$GITHUB_REPOSITORY" \ - --json isDraft \ - --jq '.isDraft' 2>/dev/null || true - )" == "true" ]]; then - gh release delete "$RELEASE_TAG" \ - --repo "$GITHUB_REPOSITORY" \ - --yes - fi diff --git a/.gitignore b/.gitignore index 9774dc0..255ba0e 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,8 @@ .env.* !.env.example /target + +/dist/ +.ruff_cache/ +__pycache__/ +*.pyc diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 61343e9..d78e3df 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,7 +1 @@ -{ - "recommendations": [ - "svelte.svelte-vscode", - "tauri-apps.tauri-vscode", - "rust-lang.rust-analyzer" - ] -} +{"recommendations": ["rust-lang.rust-analyzer"]} diff --git a/.vscode/settings.json b/.vscode/settings.json index 2f86c50..25a13d6 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,3 +1 @@ -{ - "svelte.enable-ts-plugin": true -} +{"rust-analyzer.check.command": "clippy"} diff --git a/AGENTS.md b/AGENTS.md index fb8adb5..bd41387 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -1,176 +1,71 @@ -# AGENTS.md +# TTREE 工作规则 -This file provides guidance to Codex (Codex.ai/code) when working with code in this repository. +## 任务边界 -## Project Overview +在本轮授权内完成交付及必要验证;明确的只读或先审批要求是停止边界。已授权且范围未变的步骤不重复索取批准。发布、对外传讯及服务变更须有覆盖该动作的授权。 -ttree is a lightweight macOS AI translator built with **Tauri 2 + Svelte 5 + Rust**. It is designed as a hidden spotlight-style app: the main window starts hidden, global shortcuts show it instantly, and the window auto-hides on blur. +选择最窄的适用技能。一般分析直接交付结论与证据;需要持久交付物时再建立文件。不因通用模板自动执行全套测试、定时重跑、提交或发布。 -Core features: -- `CmdOrCtrl+Shift+Space` by default toggles the translation window. -- `CmdOrCtrl+Shift+S` by default triggers screenshot OCR translation. -- Translation engines: Google and Bing free web endpoints (no key) plus OpenAI-compatible streaming chat completions. A 中⇄英 "adaptive" target auto-picks direction by script detection. -- macOS OCR uses Apple Vision via `objc2-vision` (`VNRecognizeTextRequest`). -- Settings persist locally through `tauri-plugin-store`; shortcuts are user-configurable and re-registered immediately after saving. API keys are stored in the macOS Keychain, not the plaintext store. +## 当前架构与目录 -## Common Commands +TTREE 是纯 Rust Cargo workspace,Mac 用 AppKit,Windows 用 Win32。入口分别为 `apps/macos`(包 `ttree-macos`,二进制 `ttree`)与 `apps/windows`(包/二进制 `ttree-windows`,发行时命名 `TTREE.exe`)。不要恢复已移除的 Web 前端或旧框架命令。 -Install dependencies without running arbitrary dependency lifecycle scripts: +- `apps/macos/src/`:Mac 窗口、菜单、控制器、原生控件。遵守其局部 AGENTS.md。 +- `apps/windows/src/`:Windows 窗口、绘制、对话框与设计布局。遵守其局部 AGENTS.md。 +- `crates/ttree-core`:配置模型、语言、消息校验、取消与布局数据。 +- `crates/ttree-storage`:本机 JSON 配置与 JSONL 历史。 +- `crates/ttree-translate`:免费翻译引擎、健康分流和回退。 +- `crates/ttree-ai`:HTTP / SSE、本地模型、HY-MT 下载与进程管理。 +- `crates/ttree-ocr/src/{macos,windows}`:平台专用截图与 OCR;公共预处理和结果类型留在上层。 +- `crates/ttree-platform/src/{macos,windows}`:平台专用划词;热键解析和自启入口共享。 +- `scripts/{macos,windows,release}`:各平台打包与公共发布工具。 +- `docs/`:开发与发布说明;图片只放 `docs/images/`。 +- `target/`、`dist/`:忽略的编译/发行产物。禁止向根目录堆放截图、日志、压缩包、临时报告。 -```bash -npm run ci:install +## 修改原则 + +1. 翻译、AI、配置、语言等业务语义优先改共享 crate,避免在两个 UI 里复制规则。 +2. 原生控件与平台权限留在对应平台目录;共享 crate 的系统实现用 `cfg` 隔离。不得让 Windows 构建依赖 Apple 框架,反之亦然。 +3. 共享行为发生变化时,检查两个调用端;若另一个平台尚未实现,明确说明,不宣称已验证。 +4. 保留默认隐藏、快捷键唤起、Esc 收起、置顶时不因失焦隐藏等行为。不要重启无关应用、模型服务或清空用户配置。 +5. API Key 当前保存在本机 JSON 配置,不能在文档中宣称已使用 Keychain。禁止把用户配置、历史、凭据或模型文件提交到仓库,不打印私钥/口令。 +6. 不改变 `com.samwstu.ttree` 配置目录或历史格式来完成目录整理。版本唯一来源是根 `Cargo.toml` 的 `[workspace.package].version`;UI 使用 Cargo 版本常量。 +7. README 使用克制、简洁、以体验为主的中文文风;插图标清实机截图与示意图,不用虚构界面冒充运行结果。 + +## 开发与必要验证 + +```sh +cargo check --workspace --locked +cargo test --workspace --locked +bash scripts/tests/run-release-tests.sh +# 在对应系统运行 +cargo run -p ttree-macos -- --show +cargo run -p ttree-windows -- --show ``` -Run the app in development mode: +修改 Windows 代码可在 Mac 上先 `cargo check -p ttree-windows --target x86_64-pc-windows-msvc --locked`;它仅验证类型,不等于原生链接、启动或交互验证。实际发布必须通过 Windows runner 的编译、测试、ZIP 验证和启动检查。 -```bash -npm run tauri dev -``` +验证按影响范围选择;不为低影响文档修改强制运行完整套件。发布变更须跑发布合约测试。不要通过删除有效的门禁绕过失败。构建失败先报告最小真实错误。完整说明见 [开发指南](docs/development.md)。 -The Tauri window is configured with `visible: false`, so the app may appear to launch with no window. Use the configured global shortcut (default `CmdOrCtrl+Shift+Space`) to show it. +## 自动发布约定 -Frontend-only development server: +`.github/workflows/build.yml` 是唯一构建发布工作流。 -```bash -npm run dev -``` +- 分支推送、PR:双平台构建与测试;其他分支不发布。 +- `main` 推送:双平台成功后发布唯一的 `vX.Y.Z-dev.RUN.ATTEMPT` 预发布版,不覆盖 Latest。 +- 推送 `vX.Y.Z` 标签:必须匹配工作区版本,双平台成功后发布正式版,更新 Latest。 +- `workflow_dispatch`:只验证、上传临时 artifact,不发布。 +- 发布 job 必须依赖 metadata、macos、windows 三者成功。先创建草稿,上传附件,再下载验证签名与哈希,最后公开;不覆盖既有 Release。 +- 附件:Universal DMG、Mac `.app.tar.gz`、`.sig`、`latest.json`、Windows x64 ZIP、`SHA256SUMS`。 +- 保留旧客户端更新签名兼容性;不能把纯 Rust 应用描述成已有自动更新界面。 -Frontend checks and build: +## Mac 签名硬约束 -```bash -npm run check -npm run build -``` - -Frontend tests: - -```bash -npm test -``` - -Rust backend checks/tests: - -```bash -cd src-tauri && cargo check -cd src-tauri && cargo test -cd src-tauri && cargo test -cd src-tauri && cargo clippy -cd src-tauri && cargo fmt -``` - -Production app build: - -```bash -npm run tauri build -``` - -Build outputs are under `src-tauri/target/release/bundle/`, including `bundle/macos/TTREE.app` and `bundle/dmg/*.dmg` (productName is `TTREE`). - -An ordinary local `tauri build` is not proof that a distributable macOS build is valid. Before release, the final `.app`, DMG, updater archive, updater signature, and `latest.json` must pass the community-signing checks described below. - -## Release Process (应用内更新) - -The app self-updates via the Tauri Updater plugin. Releases are built and signed by CI, then published to GitHub Releases; installed apps fetch `latest.json` from the repo and update in place. - -**When the user asks to publish a new version, follow these steps in order:** - -1. **Bump the version in both places** (they must match) and commit: - - `package.json` → `"version"` - - `src-tauri/tauri.conf.json` → `"version"` -2. **Verify locally** before tagging: - ```bash - npm run check && npm test - cd src-tauri && cargo check && cd .. - ``` -3. **Tag and push the tag** (triggers the release workflow on `v*` tags): - ```bash - git tag vX.Y.Z - git push origin vX.Y.Z - ``` -4. CI (`.github/workflows/release.yml`) builds a single `universal-apple-darwin` (arm64 + x86_64 combined; the runner only ships arm64 by default, so the workflow explicitly runs `rustup target add x86_64-apple-darwin` first). `scripts/package-macos-community.sh` signs the app with the persistent community certificate, rebuilds the DMG/updater archive, and verifies both containers. -5. The workflow creates a draft Release first. It must pass `scripts/verify-macos-community-signature.sh` and verify all four release assets before publishing. Manual `workflow_dispatch` runs are verification-only and never publish. -6. Watch the run: `gh run watch -R ZASENJC/ttree` (or check https://github.com/ZASENJC/ttree/actions). Confirm the published Release lists `latest.json` + the signed `.tar.gz`/`.sig` assets. -7. Installed apps auto-check for updates on startup and every 6h, hitting the network only once ≥7 days since the last check; users install from 设置 → 通用. New installs get the latest Release immediately. - -**Updater-signing prerequisites (already done, do not repeat):** signing keys live at `~/.config/ttree-updater/` on this machine; the public key is in `tauri.conf.json` and the private key is in the `TAURI_SIGNING_PRIVATE_KEY` repo secret. The private key **must carry a strong passphrase**: without a second factor, anyone who exfiltrates the key can sign an updater package that installed apps auto-accept (RCE). The passphrase lives in macOS Keychain (account `updater-signing-password`, service `com.samwstu.ttree`) for local builds and in the `TAURI_SIGNING_PRIVATE_KEY_PASSWORD` repo secret for CI. To build a signed update locally instead of via CI: `source ./scripts/signing-env.sh && ./scripts/package-macos-community.sh` — the environment loader reads the passphrase from Keychain, while the package script withholds the key from the Tauri build and exposes it only to the updater signer. If the key was ever stored unencrypted, rotate it: generate a new rsign/minisign keypair with a passphrase, update `tauri.conf.json` pubkey, and ship one release on the old key that bumps users to the new key. - -**Community code-signing prerequisites (configured July 2026):** the persistent certificate is `TTREE Open Source Code Signing`, SHA-1 `B8D254561BB6CAD78AA71FA18D62A32D10F50C08`. Local encrypted material lives under `~/.config/ttree-code-signing/`; its password is stored in Keychain account `community-code-signing-password`, service `com.samwstu.ttree`. CI secrets contain only `MACOS_COMMUNITY_CERTIFICATE` and `MACOS_COMMUNITY_CERTIFICATE_PASSWORD`; the expected identity and SHA-1 are pinned literals in the workflow and release scripts and must never be secret-overridable. Never commit, print, rotate, recreate, or replace the certificate/private key. Losing or rotating it changes the TCC identity and forces every user to reauthorize Screen Recording. - -### macOS Code Signing and Screen Recording TCC - -This is a release-critical invariant. macOS Screen Recording permission is attached to the app's code signing designated requirement, not just its display name, path, or `CFBundleIdentifier`. - -- Screenshot OCR must keep using Apple's native free-selection command `/usr/sbin/screencapture -i -x -r`, followed by Apple Vision OCR. Do not replace it with a custom Tauri selection window, CoreGraphics overlay, or a different screenshot architecture merely to address a permission prompt. -- The failure mode seen in July 2026 was an unsigned release bundle whose executable only had a linker-generated ad-hoc signature. Its identity looked like `Identifier=ttree-`, `TeamIdentifier=not set`, `Info.plist=not bound`, and `designated => cdhash ...`. Every rebuild changed the CDHash, so System Settings could show TTREE as enabled for the old build while the new build was denied and asked again. -- Tauri updater minisign keys and macOS code-signing certificates solve different problems. A valid `.tar.gz.sig` does not give the `.app` a stable macOS identity and does not preserve TCC permissions; both signing layers are required. -- The current GitHub release mode is community-signed, not Apple-notarized. Every distributed build must use the same `TTREE Open Source Code Signing` certificate and the explicit designated requirement `identifier "com.samwstu.ttree" and certificate leaf = H"b8d254561bb6cad78aa71fa18d62a32d10f50c08"`. -- Never publish when `codesign --verify --deep --strict` fails, `Signature=adhoc`, the authority/fingerprint differs, `Info.plist` is not bound, sealed resources are absent, or the designated requirement is identifier-only/`cdhash`-based. Run `scripts/verify-macos-community-signature.sh` as the hard gate. -- Gatekeeper rejection by `spctl` is expected because the community certificate is not Apple-notarized. Release notes and README must instruct first-time users to use System Settings → Privacy & Security → Open Anyway, then grant Screen & System Audio Recording and restart TTREE. -- `workflow_dispatch` must build/upload temporary verification artifacts only. Only a pushed `v*` tag matching `package.json` may create a draft Release, and the draft may publish only after asset verification. -- A development build working is insufficient. For permission regression testing, install packaged build A, authorize Screen Recording once, then create packaged build B with a different CDHash but the same certificate-backed designated requirement. Install B without calling `tccutil reset`; OCR must work without another permission prompt. -- Migrating users from an old ad-hoc build to the first community-signed build may require removing/resetting the stale TTREE Screen Recording entry and authorizing once. Later builds signed by the same identity must retain permission. -- A custom ad-hoc requirement may be used only for contained local diagnosis. It is not secure against bundle-ID impersonation and must never be distributed or used as the production fix. -- If the project later joins Apple Developer Program, Developer ID + notarization may replace community signing, but that is an intentional identity migration requiring its own user reauthorization plan. Do not silently mix or switch signing modes. - -## Architecture - -### Tauri / Rust backend - -`src-tauri/src/lib.rs` is the backend composition point. It registers plugins, commands, global shortcuts, tray setup, macOS vibrancy, and the blur-to-hide window behavior. - -Important backend modules: - -- `commands.rs` exposes Tauri commands used by the Svelte frontend: - - translation (Google / Bing one-shot, or OpenAI streaming) - - AI chat (`chat`, `get/set_chat_ai_config`) — separate config from translation - - screenshot OCR(Apple 原生 `screencapture` 自由框选 + Vision OCR) - - show main window - - get/set OpenAI translation config, get/set appearance config - - get/set shortcut config, `set_shortcut_recording` (suppresses global shortcuts during key capture) - - `get_pinned` / `set_pinned` — window always-on-top + blur-no-hide toggle - - chat history: `load_chat_history`, `load_conversations`, `start_new_conversation`, `append_chat_history`, `clear_chat_history` -- `shortcut.rs` builds the global shortcut plugin and dispatches five registered shortcuts: `toggle` (show/hide window, emits `trigger-translate` on show to reset the frontend to the translate view), `ocr` (screenshot OCR), `ai_dialog` (open AI chat), `selection_translate` (capture selected text and translate), and `selection_ai_dialog` (capture selected text and send to AI). All are optional. Two pairs may intentionally share the same key — `toggle`↔`selection_translate` and `ai_dialog`↔`selection_ai_dialog`; on collision the selection action wins (dispatch order in `ParsedShortcuts::entries` lists selection actions first), so a shared key runs the selection behavior when text is selected and falls back to the plain toggle/dialog otherwise. All other key collisions are rejected at validation. Startup uses persisted shortcut config; saving validates, unregisters existing shortcuts, and registers the deduplicated set immediately. -- `config.rs` owns persisted config models (`OpenAiConfig`, `ChatAiConfig`, `ShortcutConfig`, `AppearanceConfig`) and store reads/writes through `tauri-plugin-store`. Translation and chat use separate AI config entries; each carries its own optional prompt (`translate_prompt`, `chat_prompt`). `ShortcutConfig` holds five independently-optional shortcuts: `toggle`, `ocr`, `ai_dialog`, `selection_translate`, `selection_ai_dialog` (empty string disables one). **API keys never touch the store** — `config` reads/writes them through `keychain`. `save_openai`/`save_chat_ai` validate `base_url` (must be http(s), rejects `file:`/`data:`) and after a successful Keychain write they also delete any leftover legacy plaintext `api_key` key from the store. `Debug` impls redact `api_key`. Window size is persisted too, but debounced (500ms) and written on a blocking thread because `WindowEvent::Resized` fires dozens of times/second during a drag. -- `keychain.rs` wraps macOS Keychain generic-password items (`security-framework`). Service is the bundle id `com.samwstu.ttree`; accounts are `openai.api_key` / `chat_ai.api_key`. `get_secret` returns `Ok(None)` for a missing item (first-use); non-macOS is a compile-gated stub that errors. `config::load_secret_migrated` does a one-time plaintext→Keychain migration: if the Keychain has nothing but the old store key still holds a plaintext value, it copies the value into the Keychain and clears the store copy. -- `history.rs` persists AI chat history as line-delimited JSON (`chat-history.jsonl`, a separate file from `settings.json`). Append-only writes (one line per message, single `write_all` per round), a `static Mutex` serializes all read/append/clear, and a single corrupt line is skipped rather than aborting the parse. Conversations are split by `{"type":"session_start"}` markers (`#[serde(untagged)]` so legacy `{"role","content"}` lines still parse); `Conversation.summary` is the first user line truncated to 40 chars. `read_conversations` returns old→new; `read_all` flattens to a message stream for backward compatibility. -- `window.rs` centralizes main-window show/hide/focus behavior. The app keeps the window hidden instead of destroying it for instant recall. -- `translate/mod.rs` dispatches by `Engine` (`openai`/`google`/`bing`), owns a shared pooled `reqwest::Client` (two instances: default, and one with a cookie jar for Bing's token dance), and disables redirects (SSRF guard — OpenAI-compatible POSTs are single-hop, so 3xx can't bounce an `api_key`-bearing request to an internal host). It also defines `ChatMessage` and `validate_messages` — the IPC-boundary guard (role whitelist `user`/`assistant`/`system`, 64 KiB per message, ≤200 messages) applied to both `chat` and `append_chat_history`. -- `translate/google.rs` calls the free `translate.googleapis.com` endpoint and parses its nested array response. -- `translate/bing.rs` calls the free `bing.com/ttranslatev3` endpoint. Bing needs a one-shot token (IG / IID / key / token) scraped from the translator page's HTML before POSTing, so it uses the cookie-store client and a browser User-Agent. Unofficial endpoint — may break or rate-limit. -- `translate/openai.rs` streams OpenAI-compatible SSE responses and emits `translate-chunk` (translation) or `chat-chunk` (AI chat) events to the frontend. -- `selection/macos.rs` captures the currently selected text via the macOS Accessibility API; falls back to a temporary `Cmd+C` + clipboard read if Accessibility fails. Non-macOS returns `None`. -- `screenshot.rs` invokes `/usr/sbin/screencapture -i -x -r` for Apple's native interactive free-selection UI, writes the selected region to a unique temporary PNG, and treats Esc/no file as cancellation. `commands::screenshot_ocr` sends that PNG to Vision and removes it afterward. -- `ocr/vision.rs` performs macOS-native OCR with Apple Vision (`VNRecognizeTextRequest`). -- `tray.rs` creates the menu bar tray menu (`翻译`, `设置`, `退出`). - -### Svelte frontend - -`src/App.svelte` holds two pieces of main-window view state: `view` (`main` / `settings`) and, within `main`, `mode` (`translate` / `chat`). On mount it loads chat history + appearance config, reads the current version, and kicks off the update auto-check. It listens for five backend events: `open-settings`, `trigger-translate`, `trigger-ocr`, `trigger-selected-translate`, `trigger-ai-dialog`. Screenshot selection is owned by the native macOS service; there is no screenshot-selection frontend window. - -Important frontend areas: - -- `src/lib/components/TranslatePanel.svelte` is the main spotlight UI. It handles Enter-to-translate, Esc-to-hide, engine/language selectors, and the dual-column result view (web translation + AI translation shown side by side). -- `src/lib/views/ChatPanel.svelte` is the AI chat view. It sends multi-turn messages, streams the assistant reply via `chat-chunk`, and surfaces the conversation-history sidebar. -- `src/lib/stores/translation.svelte.ts` owns translation state, including two web engines (`google`/`bing`) switchable via `WEB_ENGINES` and an adaptive target (default) that calls `resolveAdaptiveTarget` — CJK-containing input → English, otherwise → Chinese. -- `src/lib/stores/chat.svelte.ts` owns chat state and orchestrates history. `sendText`/`reset` drive the AI-dialog flow; `recentChatContext` (from `chatContext.ts`) trims to the last 24 messages and drops leading orphan assistant turns before sending. -- `src/lib/stores/appearance.svelte.ts` applies panel opacity to a `--panel-opacity` CSS var on `document.documentElement`. The opacity min (0.35) is intentionally kept in sync with `config.rs::PANEL_OPACITY_MIN` so frontend/backend clamping agree. -- `src/lib/stores/update.svelte.ts` drives the in-app updater. It checks on startup if ≥7 days since the last check (persisted in `settings.json` as `update.last_check`), re-checks every 6h while running, and only re-stamps the timestamp on `uptodate`/`error` (so an available-but-uninstalled update survives). Download → install → `relaunch()`. -- `src/lib/stores/languages.ts` holds the language list, the `adaptive` 中⇄英 target, and `resolveAdaptiveTarget` (script-based). -- The `.svelte.ts` stores (`translation`, `chat`, `appearance`, `update`) use the `.svelte.ts` extension because they contain Svelte 5 runes (`$state`). Do not move rune-based stores back to plain `.ts`; doing so leaves `$state` uncompiled and causes a runtime white screen. (`chatContext.ts` / `languages.ts` / `shortcuts.ts` are plain modules with no runes.) -- `src/lib/shortcuts/shortcutRecorder.ts` is a pure utility that converts keyboard events into Tauri-style shortcut strings. It has a Vitest unit test (`shortcutRecorder.test.ts`). -- `src/lib/api/tauri.ts` is the frontend boundary for all `invoke` calls and event subscriptions. `Engine` here is the string union `"openai" | "google" | "bing"`, matching the Rust `Engine` enum's `rename_all = "lowercase"`. -- `src/lib/views/Settings.svelte` edits OpenAI config, chat config, custom shortcuts, autostart, panel opacity, and exposes the updater (check/download/install). It temporarily pins the window on enter and restores the prior pin state on leave. -- Styling is based on CSS custom properties in `src/styles/tokens.css` plus global rules in `src/styles/global.css`. - -## Runtime Notes - -- Screenshot OCR requires macOS Screen Recording permission. In dev mode the permission prompt may refer to the terminal or dev binary, so dev success does not validate a release package. Packaged builds must keep the certificate-pinned community designated requirement unchanged across updates. Selected-text capture is separate: it prefers Accessibility permission and falls back to a temporary copy. -- OpenAI translation results stream via the `translate-chunk` event; AI chat streams via `chat-chunk`; Google and Bing return a complete string from the `translate` command. -- When the window is pinned (`set_pinned`), it stays always-on-top and does not auto-hide on blur. -- The Google and Bing endpoints are unofficial free endpoints and may be rate-limited or break (Bing scrapes a token from HTML, which is especially fragile). -- API keys live in the macOS Keychain, not the plaintext store. The store holds only non-sensitive config; the only trace of keys is transiently during the one-time plaintext→Keychain migration. - -## Current Caveats - -- The README may lag behind implementation details; check `config.rs`, `shortcut.rs`, and `Settings.svelte` for the current shortcut behavior. (It also still claims API keys are plaintext and only two engines exist — both outdated; trust the code.) -- Rust unit tests cover: native screenshot command flags, translation response/token parsing (Google, Bing), SSE parsing (OpenAI), selection text normalization, message validation, chat-history JSONL parsing + summary truncation + conversation splitting, and base_url normalization. `scripts/tests/verify-macos-community-signature.test.sh` and `scripts/tests/release-workflow.test.sh` cover the release identity/workflow contract. Frontend unit tests cover the shortcut recorder (`shortcutRecorder.test.ts`), chat-context trimming (`chatContext.test.ts`), and the language list / adaptive target (`languages.test.ts`); no component-level test suite yet. +- 固定证书 `TTREE Open Source Code Signing`,SHA-1 `B8D254561BB6CAD78AA71FA18D62A32D10F50C08`。绝不打印、重建、替换、轮换、提交该证书或私钥;不得用 Secret 覆盖预期身份或指纹。 +- 固定 designated requirement:`identifier "com.samwstu.ttree" and certificate leaf = H"b8d254561bb6cad78aa71fa18d62a32d10f50c08"`。录屏 TCC 依赖它,不能退化为 ad-hoc、identifier-only 或 CDHash 要求。 +- 每个最终 `.app` 以及 DMG/归档中的 `.app` 必须通过 `scripts/macos/verify-signature.sh`(deep + strict、证书 Authority、绑定的 Info.plist、资源封印、指定要求)。禁止失败后发布。 +- Apple 原生截图必须保持 `/usr/sbin/screencapture -i -x -r` + Vision;不得以解决权限为由改造为自绘选择窗口。 +- 社区签名不等于 Apple 公证;`spctl` 拒绝并不能代替上述签名验证。README/Release 须保留“隐私与安全性 → 仍要打开”、录屏授权及重启说明。 +- updater minisign 与 macOS 签名是两层独立保证,均须保留。更新私钥必须加密且口令至少 16 字符,只在打包后的 signer 步骤接收密钥;编译阶段不得暴露签名材料。 +- 本机加密材料在 `~/.config/ttree-code-signing/` 和 `~/.config/ttree-updater/`,口令从既有 Keychain 项读取。CI 使用已有的四项证书/更新签名 Secrets,详见 [发布指南](docs/releasing.md)。 +- TCC 跨升级实测需安装 A、授权一次、再安装 CDHash 不同但同证书的 B,不执行 `tccutil reset`,确认 OCR 不再提示。普通编译或签名检查不等于完成此实测。 diff --git a/CLAUDE.md b/CLAUDE.md index 0b80145..0244ccd 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -1,160 +1,9 @@ -# CLAUDE.md +# TTREE -This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. +先阅读并遵守 [AGENTS.md](AGENTS.md),它是项目规则的唯一来源。 -## Project Overview - -ttree is a lightweight macOS AI translator built with **Tauri 2 + Svelte 5 + Rust**. It is designed as a hidden spotlight-style app: the main window starts hidden, global shortcuts show it instantly, and the window auto-hides on blur. - -Core features: -- `CmdOrCtrl+Shift+Space` by default toggles the translation window. -- `CmdOrCtrl+Shift+S` by default triggers screenshot OCR translation. -- Translation engines: Google and Bing free web endpoints (no key) plus OpenAI-compatible streaming chat completions. A 中⇄英 "adaptive" target auto-picks direction by script detection. -- macOS OCR uses Apple Vision via `objc2-vision` (`VNRecognizeTextRequest`). -- Settings persist locally through `tauri-plugin-store`; shortcuts are user-configurable and re-registered immediately after saving. API keys are stored in the macOS Keychain, not the plaintext store. - -## Common Commands - -Install dependencies from the lockfile without running arbitrary lifecycle scripts: - -```bash -npm run ci:install -``` - -Run the app in development mode: - -```bash -npm run tauri dev -``` - -The Tauri window is configured with `visible: false`, so the app may appear to launch with no window. Use the configured global shortcut (default `CmdOrCtrl+Shift+Space`) to show it. - -Frontend-only development server: - -```bash -npm run dev -``` - -Frontend checks and build: - -```bash -npm run check -npm run build -``` - -Frontend tests: - -```bash -npm test -``` - -Rust backend checks/tests: - -```bash -cd src-tauri && cargo check -cd src-tauri && cargo test -cd src-tauri && cargo test -cd src-tauri && cargo clippy -cd src-tauri && cargo fmt -``` - -Production app build: - -```bash -npm run tauri build -``` - -Build outputs are under `src-tauri/target/release/bundle/`, including `bundle/macos/TTREE.app` and `bundle/dmg/*.dmg` (productName is `TTREE`). - -An ordinary local `tauri build` is only a development artifact. It is not proof that a distributable macOS build has the fixed community identity, valid updater signature, or verified release containers. - -## Release Process (应用内更新) - -The app self-updates via the Tauri Updater plugin. Releases are built and signed by CI, then published to GitHub Releases; installed apps fetch `latest.json` from the repo and update in place. - -**When the user asks to publish a new version, follow these steps in order:** - -1. **Bump the version in both places** (they must match) and commit: - - `package.json` → `"version"` - - `src-tauri/tauri.conf.json` → `"version"` -2. **Verify locally** before tagging: - ```bash - npm run check && npm test - cd src-tauri && cargo check && cd .. - ``` -3. **Tag and push the tag** (triggers the release workflow on `v*` tags): - ```bash - git tag vX.Y.Z - git push origin vX.Y.Z - ``` -4. CI (`.github/workflows/release.yml`) builds `universal-apple-darwin` without signing material, then imports the fixed community certificate only for the signing/packaging stage. `scripts/package-macos-community.sh` signs the app, rebuilds the DMG/updater archive, and verifies both containers. -5. The workflow creates a draft Release first. It downloads the four actual draft assets and re-verifies their checksums, updater signature, manifest, and pinned community identity before publishing. Manual `workflow_dispatch` runs are verification-only and never publish. -6. Watch the run: `gh run watch -R ZASENJC/ttree` (or check https://github.com/ZASENJC/ttree/actions). Confirm the published Release lists `latest.json` plus the signed `.tar.gz`/`.sig` assets. -7. Installed apps auto-check for updates on startup and every 6h, hitting the network only once ≥7 days since the last check; users install from 设置 → 通用. New installs get the latest Release immediately. - -**Updater-signing prerequisites (already done, do not repeat):** signing keys live at `~/.config/ttree-updater/`; the public key is in `tauri.conf.json`, and CI stores the encrypted private key plus its strong passphrase in separate secrets. For a local signed package, run `source ./scripts/signing-env.sh && ./scripts/package-macos-community.sh`; the package script withholds the updater key from npm/Cargo and exposes it only to the signer subprocess. - -**Community code-signing invariant:** every distributed build must use `TTREE Open Source Code Signing`, SHA-1 `B8D254561BB6CAD78AA71FA18D62A32D10F50C08`, with designated requirement `identifier "com.samwstu.ttree" and certificate leaf = H"b8d254561bb6cad78aa71fa18d62a32d10f50c08"`. Never rotate, recreate, print, or replace that identity. It preserves macOS Screen Recording TCC authorization across updates. These releases are community-signed, not Apple-notarized; Gatekeeper's first-open warning is expected. - -## Architecture - -### Tauri / Rust backend - -`src-tauri/src/lib.rs` is the backend composition point. It registers plugins, commands, global shortcuts, tray setup, macOS vibrancy, and the blur-to-hide window behavior. - -Important backend modules: - -- `commands.rs` exposes Tauri commands used by the Svelte frontend: - - translation (Google / Bing one-shot, or OpenAI streaming) - - AI chat (`chat`, `get/set_chat_ai_config`) — separate config from translation - - screenshot OCR(Apple 原生自由框选 + Vision OCR) - - show main window - - get/set OpenAI translation config, get/set appearance config - - get/set shortcut config, `set_shortcut_recording` (suppresses global shortcuts during key capture) - - `get_pinned` / `set_pinned` — window always-on-top + blur-no-hide toggle - - chat history: `load_chat_history`, `load_conversations`, `start_new_conversation`, `append_chat_history`, `clear_chat_history` -- `shortcut.rs` builds the global shortcut plugin and dispatches five registered shortcuts: `toggle` (show/hide window, emits `trigger-translate` on show to reset the frontend to the translate view), `ocr` (screenshot OCR), `ai_dialog` (open AI chat), `selection_translate` (capture selected text and translate), and `selection_ai_dialog` (capture selected text and send to AI). All are optional. Two pairs may intentionally share the same key — `toggle`↔`selection_translate` and `ai_dialog`↔`selection_ai_dialog`; on collision the selection action wins (dispatch order in `ParsedShortcuts::entries` lists selection actions first), so a shared key runs the selection behavior when text is selected and falls back to the plain toggle/dialog otherwise. All other key collisions are rejected at validation. Startup uses persisted shortcut config; saving validates, unregisters existing shortcuts, and registers the deduplicated set immediately. -- `config.rs` owns persisted config models (`OpenAiConfig`, `ChatAiConfig`, `ShortcutConfig`, `AppearanceConfig`) and store reads/writes through `tauri-plugin-store`. Translation and chat use separate AI config entries; each carries its own optional prompt (`translate_prompt`, `chat_prompt`). `ShortcutConfig` holds five independently-optional shortcuts: `toggle`, `ocr`, `ai_dialog`, `selection_translate`, `selection_ai_dialog` (empty string disables one). **API keys never touch the store** — `config` reads/writes endpoint-bound records through `keychain`, never returns real keys to the WebView, requires HTTPS for remote endpoints (HTTP is loopback-only), and compensates Store/Keychain failures. `Debug` impls redact `api_key`. Window size is persisted too, but debounced (500ms) and written on a blocking thread because `WindowEvent::Resized` fires dozens of times/second during a drag. -- `keychain.rs` wraps macOS Keychain generic-password items (`security-framework`). Service is the bundle id `com.samwstu.ttree`; accounts are `openai.api_key` / `chat_ai.api_key`. `get_secret` returns `Ok(None)` for a missing item (first-use); non-macOS is a compile-gated stub that errors. `config::load_secret_migrated` does a one-time plaintext→Keychain migration: if the Keychain has nothing but the old store key still holds a plaintext value, it copies the value into the Keychain and clears the store copy. -- `history.rs` persists AI chat history as line-delimited JSON (`chat-history.jsonl`, a separate file from `settings.json`). Append-only writes, a `static Mutex` serializes all read/append/clear, and corrupt JSON lines are skipped. `session_start` creates a conversation and `session_resume` appends to a stable conversation id; `read_conversations` returns least-recently-active → most-recently-active. -- `window.rs` centralizes main-window show/hide/focus behavior. The app keeps the window hidden instead of destroying it for instant recall. -- `translate/mod.rs` dispatches by `Engine` (`openai`/`google`/`bing`), pools clients by timeout/cookie mode, disables redirects, validates language codes and IPC payload sizes, and caps upstream response bodies. It also defines `ChatMessage` and `validate_messages` for both `chat` and `append_chat_history`. -- `translate/google.rs` calls the free `translate.googleapis.com` endpoint and parses its nested array response. -- `translate/bing.rs` calls the free `bing.com/ttranslatev3` endpoint. Bing needs a one-shot token (IG / IID / key / token) scraped from the translator page's HTML before POSTing, so it uses the cookie-store client and a browser User-Agent. Unofficial endpoint — may break or rate-limit. -- `translate/openai.rs` streams OpenAI-compatible SSE responses and emits `translate-chunk` (translation) or `chat-chunk` (AI chat) events to the frontend. -- `selection/macos.rs` captures the currently selected text via the macOS Accessibility API; falls back to a temporary `Cmd+C` + clipboard read if Accessibility fails. Non-macOS returns `None`. -- `screenshot.rs` invokes `/usr/sbin/screencapture -i -x -r` for Apple's native interactive free selection, writes to a random private temporary PNG, and treats Esc/no output as cancellation. `commands::screenshot_ocr` passes the PNG to Vision and removes it automatically afterward. Do not replace this architecture merely to address a permission prompt. -- `ocr/vision.rs` performs macOS-native OCR with Apple Vision (`VNRecognizeTextRequest`). -- `tray.rs` creates the menu bar tray menu (`翻译`, `设置`, `退出`). - -### Svelte frontend - -`src/App.svelte` holds two pieces of main-window view state: `view` (`main` / `settings`) and, within `main`, `mode` (`translate` / `chat`). On mount it loads chat history + appearance config, reads the current version, kicks off update checks, and subscribes to the five backend trigger events. Screenshot selection belongs to the native macOS service; there is no screenshot-selection frontend window. - -Important frontend areas: - -- `src/lib/components/TranslatePanel.svelte` is the main spotlight UI. It handles Enter-to-translate, Esc-to-hide, engine/language selectors, and the dual-column result view (web translation + AI translation shown side by side). -- `src/lib/views/ChatPanel.svelte` is the AI chat view. It sends multi-turn messages, streams the assistant reply via `chat-chunk`, and surfaces the conversation-history sidebar. -- `src/lib/stores/translation.svelte.ts` owns translation state, including two web engines (`google`/`bing`) switchable via `WEB_ENGINES` and an adaptive target (default) that calls `resolveAdaptiveTarget` — CJK-containing input → English, otherwise → Chinese. -- `src/lib/stores/chat.svelte.ts` owns chat state and orchestrates history. `sendText`/`reset` drive the AI-dialog flow; `recentChatContext` (from `chatContext.ts`) trims to the last 24 messages and drops leading orphan assistant turns before sending. -- `src/lib/stores/appearance.svelte.ts` applies panel opacity to a `--panel-opacity` CSS var on `document.documentElement`. The opacity min (0.35) is intentionally kept in sync with `config.rs::PANEL_OPACITY_MIN` so frontend/backend clamping agree. -- `src/lib/stores/update.svelte.ts` drives the in-app updater. It checks on startup if ≥7 days since the last check (persisted in `settings.json` as `update.last_check`), re-checks every 6h while running, and only re-stamps the timestamp on `uptodate`/`error` (so an available-but-uninstalled update survives). Download → install → `relaunch()`. -- `src/lib/stores/languages.ts` holds the language list, the `adaptive` 中⇄英 target, and `resolveAdaptiveTarget` (script-based). -- The `.svelte.ts` stores (`translation`, `chat`, `appearance`, `update`) use the `.svelte.ts` extension because they contain Svelte 5 runes (`$state`). Do not move rune-based stores back to plain `.ts`; doing so leaves `$state` uncompiled and causes a runtime white screen. (`chatContext.ts` / `languages.ts` / `shortcuts.ts` are plain modules with no runes.) -- `src/lib/shortcuts/shortcutRecorder.ts` is a pure utility that converts keyboard events into Tauri-style shortcut strings. It has a Vitest unit test (`shortcutRecorder.test.ts`). -- `src/lib/api/tauri.ts` is the frontend boundary for all `invoke` calls and event subscriptions. `Engine` here is the string union `"openai" | "google" | "bing"`, matching the Rust `Engine` enum's `rename_all = "lowercase"`. -- `src/lib/views/Settings.svelte` edits OpenAI config, chat config, custom shortcuts, autostart, panel opacity, and exposes the updater (check/download/install). It temporarily pins the window on enter and restores the prior pin state on leave. -- Styling is based on CSS custom properties in `src/styles/tokens.css` plus global rules in `src/styles/global.css`. - -## Runtime Notes - -- Screenshot OCR requires macOS Screen Recording permission. In dev mode the permission prompt may refer to the terminal or dev binary, so development success does not validate a packaged release identity. Selection capture separately prefers Accessibility and falls back to a temporary copy. -- OpenAI translation results stream via the `translate-chunk` event; AI chat streams via `chat-chunk`; Google and Bing return a complete string from the `translate` command. -- When the window is pinned (`set_pinned`), it stays always-on-top and does not auto-hide on blur. -- The Google and Bing endpoints are unofficial free endpoints and may be rate-limited or break (Bing scrapes a token from HTML, which is especially fragile). -- API keys live in the macOS Keychain, not the plaintext store. The store holds only non-sensitive config; the only trace of keys is transiently during the one-time plaintext→Keychain migration. - -## Current Caveats - -- Check `config.rs`, `shortcut.rs`, and `Settings.svelte` when behavior and prose diverge; security and release invariants in this file and `AGENTS.md` must stay aligned with the code. -- Rust unit tests cover: translation response/token parsing (Google, Bing), SSE parsing (OpenAI), selection text normalization, message validation, chat-history JSONL parsing + summary truncation + conversation splitting, and base_url normalization. Frontend unit tests cover the shortcut recorder (`shortcutRecorder.test.ts`), chat-context trimming (`chatContext.test.ts`), and the language list / adaptive target (`languages.test.ts`); no component-level test suite yet. +- Mac:`apps/macos/`,局部规则见 `apps/macos/AGENTS.md`。 +- Windows:`apps/windows/`,局部规则见 `apps/windows/AGENTS.md`。 +- 共享业务:`crates/`。不要复制两套翻译、配置或模型规则。 +- 开发:[docs/development.md](docs/development.md)。 +- 打包与发布:[docs/releasing.md](docs/releasing.md)。 diff --git a/Cargo.lock b/Cargo.lock index c7f18f7..c9e1dbe 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3123,12 +3123,21 @@ dependencies = [ ] [[package]] -name = "ttree-app" +name = "ttree-core" +version = "0.2.0" +dependencies = [ + "serde", + "serde_json", + "tokio", + "url", +] + +[[package]] +name = "ttree-macos" version = "0.2.0" dependencies = [ "anyhow", "global-hotkey", - "lucide-icons", "objc2", "objc2-app-kit", "objc2-core-foundation", @@ -3138,20 +3147,9 @@ dependencies = [ "ttree-ai", "ttree-core", "ttree-ocr", - "ttree-platform-macos", + "ttree-platform", "ttree-storage", "ttree-translate", - "windows", -] - -[[package]] -name = "ttree-core" -version = "0.2.0" -dependencies = [ - "serde", - "serde_json", - "tokio", - "url", ] [[package]] @@ -3172,7 +3170,7 @@ dependencies = [ ] [[package]] -name = "ttree-platform-macos" +name = "ttree-platform" version = "0.2.0" dependencies = [ "anyhow", @@ -3210,6 +3208,24 @@ dependencies = [ "urlencoding", ] +[[package]] +name = "ttree-windows" +version = "0.2.0" +dependencies = [ + "anyhow", + "global-hotkey", + "lucide-icons", + "tokio", + "ttree-ai", + "ttree-core", + "ttree-ocr", + "ttree-platform", + "ttree-storage", + "ttree-translate", + "windows", + "winresource", +] + [[package]] name = "typed-path" version = "0.12.3" @@ -3663,6 +3679,15 @@ dependencies = [ "winapi", ] +[[package]] +name = "winresource" +version = "0.1.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2bc6d36480b829272a5bdabf08e6dca8004761c1da7e35efef800540c66221b" +dependencies = [ + "version_check", +] + [[package]] name = "wit-bindgen" version = "0.57.1" diff --git a/Cargo.toml b/Cargo.toml index 60f8cad..7e308e1 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,11 +3,12 @@ resolver = "2" members = [ "crates/ttree-core", "crates/ttree-storage", - "crates/ttree-platform-macos", + "crates/ttree-platform", "crates/ttree-ocr", "crates/ttree-translate", "crates/ttree-ai", - "crates/ttree-app", + "apps/macos", + "apps/windows", ] [workspace.package] diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..517a26a --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2026 ZASENJC + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index 30a0e45..4c8c71c 100644 --- a/README.md +++ b/README.md @@ -1,138 +1,87 @@ -# TTREE +

TTREE 图标

+

TTREE

+

让语言退后。让想法向前。

+

翻译。截图识字。与 AI 对话。
轻轻唤起,接着思考。

+

下载正式版 · 探索新版本 · 参与开发

-> 轻量 macOS AI 翻译器。快捷键秒级呼出,截图 OCR、划词翻译、AI 对话,多引擎流式输出。 +

TTREE Mac 与 Windows 界面渲染示意:原文、免费译文和 AI 译文在同一窗口呈现

+

macOS 与 Windows · 界面渲染示意

-基于 **Tauri 2 + Svelte 5 + Rust** 构建:窗口隐藏而非销毁,保证快捷键瞬时召回;macOS 端 OCR 直接调用系统 Vision 框架,划词捕获走原生 Accessibility,零重型依赖。 +## 一个快捷键,回到心流。 ---- +阅读到一半,遇到另一种语言。选中它,或截下它。TTREE 随即出现,把译文带到眼前。按下 Esc,继续刚才的事。 -## ✨ 功能 +默认使用 **⌘ ⇧ Space**(Mac)或 **Ctrl ⇧ Space**(Windows)呼出。窗口隐藏时,仍在等待下一次需要。 -- **快捷键呼出翻译** — 默认 `⌘⇧Space` 呼出/收起窗口,输入文本回车翻译,`Esc` 收起,失焦自动隐藏 -- **截图 OCR 翻译** — `⌘⇧S` 框选屏幕区域,调用 macOS 原生 **Vision** 框架识别文字并自动翻译(按系统实际支持配置中/英/日等语言,截图先规范化为 8-bit sRGB 位图,失败时自动兼容重试) -- **划词翻译 / 划词 AI** — 选中任意应用内的文本,一键翻译或发送给 AI(基于 macOS Accessibility,未授权时回退到临时复制并恢复剪贴板) -- **AI 对话模式** — 独立于翻译的多轮对话,支持自定义 system 提示词 -- **自动免费翻译** — Google / 微软必应无需 key,健康服务轮询分流;超时、限流、空响应或服务异常时自动切换,故障服务冷却 30–300 秒后恢复尝试,长文本自动分块 -- **OpenAI 兼容翻译** — 流式逐字输出,可配置 base_url / api_key / 模型 / 翻译提示词 -- **双栏对照** — 网页译文与 AI 译文并列展示,免费译文统一显示为“翻译”,可分别复制结果 -- **固定窗口** — 置顶且失焦不隐藏,方便对照查阅 -- **自定义快捷键** — 五个动作均可独立配置,支持「呼出」与「划词」共用同一组合键(有选中文本时执行划词) -- **系统托盘 + 开机自启**(可选) -- 毛玻璃磨砂界面,明暗主题自适应 +## 看得懂。也聊得开。 -## ⌨️ 快捷键 +**文字,从画面里走出来。** 按下 **⌘ ⇧ S** 或 **Ctrl ⇧ S**,框选屏幕上的文字,识别后接着翻译。Mac 使用 Apple Vision;Windows 使用系统 OCR。 -| 动作 | 默认 | 说明 | -|------|------|------| -| 呼出 / 收起翻译窗口 | `⌘⇧Space` | 显示时自动复位到翻译页 | -| 截图 OCR 翻译 | `⌘⇧S` | 框选区域 → Vision 识别 → 自动翻译 | -| 呼出 AI 对话 | —(可在设置配置) | 独立对话模式 | -| 划词翻译 | —(可在设置配置) | 捕获选中文本直接翻译 | -| 划词 AI 对话 | —(可在设置配置) | 捕获选中文本发送给 AI | +**两份译文,一眼对照。** Google 与 Bing 提供免费翻译,遇到服务异常自动切换。打开 AI 翻译,还能在同一个窗口里比较另一种表达。 -所有快捷键均可在设置中自定义,留空即禁用;必须包含 `Cmd/Ctrl/Option` 中的至少一个修饰键。 +**顺着想法,聊下去。** 切换到 AI 对话,保留上下文,继续追问。翻译与对话各自拥有模型和提示词设置。 -## 📥 安装 +**模型,由你选择。** 连接 OpenAI 兼容服务、Ollama 或本地模型服务;也可按需下载内置 HY-MT 翻译模型。模型文件独立下载,不占用安装包。 -GitHub Release 使用项目固定的社区代码签名证书,但没有经过 Apple 公证。首次安装时 macOS 显示“无法验证开发者”是社区签名包的预期行为。 +## 两个平台。一样顺手。 -1. 从本仓库的 GitHub Release 下载 DMG,将 TTREE 拖入“应用程序”。 -2. 首次打开若被阻止,进入 **系统设置 → 隐私与安全性**,找到 TTREE 提示并选择 **仍要打开**。 -3. 按 `⌘⇧S` 使用截图 OCR,在系统提示中允许 **屏幕与系统音频录制**。 -4. 授权后完全退出并重新打开 TTREE。 +Mac 的轻盈,Windows 的熟悉。各自使用原生窗口和控件,共享翻译、对话与历史记录逻辑。 -后续版本使用同一张社区证书和固定 designated requirement 签名,正常情况下升级不会再次索要录屏权限。请勿安装使用相同 Bundle ID 的未知构建;从旧的临时签名版本迁移到首个社区签名版本时,可能需要清理旧权限记录并重新授权一次。 +| | macOS | Windows | +| --- | --- | --- | +| 原生界面 | AppKit · 系统毛玻璃 | Win32 · 系统明暗主题 | +| 截图识字 | 原生自由框选 + Apple Vision | 原生框选 + Windows OCR | +| 划词翻译 | Accessibility,必要时回退复制 | 临时复制并恢复剪贴板 | +| 下载 | Universal DMG · Apple 芯片与 Intel | x64 ZIP · 解压即用 | -## 📋 系统权限 +![共享能力与双平台目录关系](docs/images/workspace.svg) -首次使用相关功能时,macOS 会弹出授权请求,请在 **系统设置 → 隐私与安全性** 中开启: +## 准备好,开始。 -| 权限 | 用途 | -|------|------| -| **屏幕录制** | 截图 OCR | -| **辅助功能(Accessibility)** | 划词翻译 / 划词 AI(捕获选中文本)| +### 在 Mac 上 -> 开发模式下授权对象可能是终端或 dev 二进制,因此开发版可用不代表发布包的权限身份正确。 +1. [下载最新正式版](https://github.com/ZASENJC/ttree/releases/latest)中的 `TTREE_*_universal.dmg`,将 TTREE 拖入“应用程序”。 +2. 首次打开若被拦截,进入 **系统设置 → 隐私与安全性 → 仍要打开**。 +3. 使用截图翻译时,授予 **屏幕与系统音频录制** 权限,随后完全退出并重新打开 TTREE。划词翻译可按需授予 **辅助功能** 权限。 -## 🚀 开发 +Mac 发行包沿用固定社区证书签名,尚未经过 Apple 公证。同一证书用于后续升级,以维持录屏权限身份。旧临时签名版本迁移时,可能需要重新授权一次。 -**前置**:Node.js 20+、Rust(stable)、Xcode Command Line Tools。 +### 在 Windows 上 -```bash -npm run ci:install # 按 lockfile 安装;禁用任意 lifecycle 脚本,仅重建 esbuild/fsevents -npm run tauri dev # 启动开发模式 +1. 下载 `TTREE_*_windows_x64.zip`,解压到固定目录。 +2. 运行文件夹里的 `TTREE.exe`。窗口默认隐藏,按 **Ctrl ⇧ Space** 呼出,也可使用托盘菜单。 +3. OCR 需要系统安装相应语言的文字识别组件;缺少语言时按应用提示补充。 + +Windows 包为未使用商业证书签名的便携版,首次运行可能遇到 SmartScreen 提示。请核对下载来源及附件 `SHA256SUMS`。启用开机自启后,请保留解压目录。 + +### 几个顺手的动作 + +| 动作 | Mac | Windows | +| --- | --- | --- | +| 呼出 / 收起 | ⌘ ⇧ Space | Ctrl ⇧ Space | +| 截图翻译 | ⌘ ⇧ S | Ctrl ⇧ S | +| 发送 / 翻译 | Enter | Enter | +| 换行 | Shift + Enter | Shift + Enter | +| 收起窗口 | Esc | Esc | + +AI 对话、划词翻译、划词 AI 的快捷键可在设置中配置。点按置顶,让窗口留在身边。 + +## 给创作者,留好空间。 + +一个 Cargo 工作区,两套原生界面。共享功能修改一次;平台交互在各自目录里打磨。 + +```text +apps/macos/ Mac 界面与交互 +apps/windows/ Windows 界面与交互 +crates/ 翻译、AI、配置、历史、OCR 与系统适配 +scripts/macos/ Mac 打包与签名 +scripts/windows/ Windows 打包与启动验证 +scripts/release/ 双平台发布与附件校验 +docs/ 开发、发布说明与图片 ``` -> Tauri 主窗口配置为 `visible: false`,开发模式下启动可能看不到窗口——用默认快捷键 `⌘⇧Space` 呼出。 +开发入口:`cargo run -p ttree-macos -- --show`(Mac),`cargo run -p ttree-windows -- --show`(Windows)。完整依赖与检查命令见[开发指南](docs/development.md)。 -仅启动前端(无后端): +推送到 `main`,自动构建两个平台并发布预发布版;推送匹配工作区版本的 `vX.Y.Z` 标签,验证后发布正式版。其他分支与 PR 只验证。[查看发布流程](docs/releasing.md) · [查看构建状态](https://github.com/ZASENJC/ttree/actions/workflows/build.yml)。 -```bash -npm run dev -``` - -## 📦 构建 - -```bash -npm run tauri build # 产出 .app 与 .dmg -``` - -产物位于 `src-tauri/target/release/bundle/`(含 `bundle/macos/TTREE.app` 与 `bundle/dmg/*.dmg`)。 - -普通 `tauri build` 只用于本地开发,不能直接作为 GitHub 发布包。社区发布由 GitHub Actions 调用 `scripts/package-macos-community.sh`,用固定证书和 designated requirement 重签 `.app`,再重建并验证 DMG、updater archive、`.sig` 与 `latest.json`。手动触发 `release` workflow 只上传 7 天保留的临时验证产物;只有推送与 `package.json`、`tauri.conf.json` 版本都一致的 `v*` tag 才可能发布 Release。 - -## 🏗️ 架构 - -``` -src-tauri/src/ Rust 后端 -├── lib.rs 插件注册、毛玻璃、失焦隐藏、setup -├── commands.rs 暴露给前端的 Tauri 命令 -├── config.rs 配置读写(tauri-plugin-store) -├── shortcut.rs 全局快捷键注册与分发(含冲突校验) -├── window.rs 窗口显示/隐藏/居中/聚焦/固定 -├── tray.rs 系统托盘菜单 -├── screenshot.rs screencapture -i 区域截图 -├── ocr/image.rs ImageIO 解码 / 8-bit sRGB 规范化 / 小截图边距 -├── ocr/vision.rs Apple Vision OCR(有效语言组合 / 旧模型回退) -├── selection/macos.rs 划词捕获(Accessibility + 剪贴板回退) -└── translate/ - ├── mod.rs 引擎分发 + 共享 HTTP 客户端 - ├── auto.rs 免费服务轮询 / 故障切换 / 冷却 / 长文本分块 - ├── google.rs 谷歌免费端接口 - ├── bing.rs 必应免费端接口(令牌抓取) - └── openai.rs OpenAI 兼容 SSE 流式(翻译 + 对话) - -src/ Svelte 5 前端(runes) -├── App.svelte 翻译 / 对话 / 设置 路由 -├── lib/components/ TranslatePanel / EngineTabs / LangSelector / ResultView -├── lib/views/ ChatPanel / Settings -├── lib/stores/ translation / chat(.svelte.ts runes)/ languages -├── lib/shortcuts/ 快捷键录制工具(shortcutRecorder) -└── lib/api/tauri.ts invoke / event 封装 -``` - -## ✅ 测试与检查 - -```bash -# Rust -cd src-tauri && cargo test # 翻译解析 / SSE / 快捷键 / 划词 / 真实 PNG Vision OCR -cd src-tauri && cargo clippy -- -D warnings - -# 前端 -npm test # Vitest(快捷键录制器) -npm run check # svelte-check 类型检查 -``` - -macOS OCR 回归测试会通过 Xcode Command Line Tools 的 Swift 在临时目录生成样例,并真正执行 ImageIO 和 Vision;覆盖单行、灰度、16-bit、透明图片以及中英混排。 - -## ⚠️ 说明与限制 - -- 免费翻译自动在谷歌 / 微软必应之间分流和切换;两者都是**非官方免费端点**,同时不可用时会提示稍后重试。OpenAI 兼容接口需自备 API Key。 -- OCR 保留 Apple 原生自由框选;截图期间临时隐藏主窗口,重复触发会被忽略。中文识别只与英文组合;截图经 ImageIO 解码后绘制成 8-bit sRGB 位图,小截图加边距。识别失败或无文字时用旧版 Vision 模型在 CPU 上重试,取消框选不会显示为识别失败。 -- API Key 存储在 macOS Keychain,不写入明文 Tauri store。 -- 仅支持 **macOS 11.0+**(依赖 Vision、Accessibility、screencapture 等系统框架)。 -- GitHub Release 是社区签名、非 Apple 公证包;首次安装需要在“隐私与安全性”中手动选择“仍要打开”。 - -## 📄 许可证 - -MIT +免费翻译依赖非官方端点,可用性取决于服务。离线模型需单独下载,并满足对应硬件与模型许可条件。配置与对话历史保存在本机;当前 API Key 随本机 JSON 配置保存,请勿分享配置文件。纯 Rust 版本目前通过下载 Release 手动升级;发布保留旧版更新客户端所需的签名附件。macOS 包声明最低系统版本为 11.0;Windows 提供 x64 构建。MIT 开源,第三方图标许可见 assets/licenses。 diff --git a/apps/macos/AGENTS.md b/apps/macos/AGENTS.md new file mode 100644 index 0000000..fa8954f --- /dev/null +++ b/apps/macos/AGENTS.md @@ -0,0 +1,10 @@ +# macOS + +继承根 AGENTS.md。这里只放 AppKit 窗口、控件、菜单和 Mac UI 状态。 + +- `app.rs` 负责入口、事件分发、窗口和菜单;`state.rs` 负责控制器;`ui_helpers.rs` 负责原生控件和 splitter。 +- 系统划词放 `crates/ttree-platform/src/macos/`,截图/Vision 放 `crates/ttree-ocr/src/macos/`。 +- 使用 objc2 的主线程约束;后台任务经 UI 事件回到主线程更新控件。 +- 保留 Accessory 模式、LSUIElement、隐藏而非销毁、置顶与失焦行为。 +- 发布必须沿用固定社区证书;详见根规则和发布指南。不要将开发运行成功等同于打包后的 TCC 升级验证。 +- `cargo run -p ttree-macos -- --show` 开发;`scripts/macos/package.sh` 打包。 diff --git a/apps/macos/Cargo.toml b/apps/macos/Cargo.toml new file mode 100644 index 0000000..c0a4455 --- /dev/null +++ b/apps/macos/Cargo.toml @@ -0,0 +1,26 @@ +[package] +name = "ttree-macos" +version.workspace = true +edition.workspace = true +authors.workspace = true +license.workspace = true + +[[bin]] +name = "ttree" +path = "src/main.rs" + +[target.'cfg(target_os = "macos")'.dependencies] +ttree-core = { path = "../../crates/ttree-core" } +ttree-storage = { path = "../../crates/ttree-storage" } +ttree-platform = { path = "../../crates/ttree-platform" } +ttree-ocr = { path = "../../crates/ttree-ocr" } +ttree-translate = { path = "../../crates/ttree-translate" } +ttree-ai = { path = "../../crates/ttree-ai" } +anyhow.workspace = true +global-hotkey.workspace = true +tokio.workspace = true +objc2.workspace = true +objc2-app-kit.workspace = true +objc2-core-foundation.workspace = true +objc2-foundation.workspace = true +objc2-quartz-core.workspace = true diff --git a/apps/macos/README.md b/apps/macos/README.md new file mode 100644 index 0000000..54b0e2f --- /dev/null +++ b/apps/macos/README.md @@ -0,0 +1,12 @@ +# TTREE for macOS + +AppKit 原生界面,翻译、AI 和设置使用同一控制器。共享业务库位于根 `crates/`。 + +```sh +cargo run -p ttree-macos -- --show +# Universal 发行包;签名材料沿用本机既有配置 +source scripts/macos/signing-env.sh +scripts/macos/package.sh +``` + +在仓库根目录执行。开发构建不会证明发行包的录屏权限可延续。签名身份、首次安装和验证步骤见 [发布指南](../../docs/releasing.md)。 diff --git a/apps/macos/src/app.rs b/apps/macos/src/app.rs new file mode 100644 index 0000000..1be2b8e --- /dev/null +++ b/apps/macos/src/app.rs @@ -0,0 +1,351 @@ +use std::cell::RefCell; +use std::sync::Arc; + +use global_hotkey::{GlobalHotKeyEvent, GlobalHotKeyManager, HotKeyState}; +use objc2::rc::Retained; +use objc2::runtime::{AnyObject, Bool, Sel}; +use objc2::{define_class, msg_send, sel, MainThreadMarker, MainThreadOnly}; +use objc2_app_kit::{ + NSApplication, NSApplicationActivationPolicy, NSBackingStoreType, NSColor, NSEvent, + NSEventModifierFlags, NSMenu, NSMenuItem, NSStatusBar, NSStatusItem, NSTextView, + NSVisualEffectBlendingMode, NSVisualEffectMaterial, NSVisualEffectState, NSVisualEffectView, + NSWindow, NSWindowButton, NSWindowStyleMask, NSWindowTitleVisibility, +}; +use objc2_foundation::{ + NSObject, NSObjectProtocol, NSPoint, NSRect, NSRunLoop, NSRunLoopCommonModes, NSSize, NSString, + NSTimer, +}; +use tokio::sync::mpsc::{self, UnboundedReceiver}; + +use ttree_core::{WINDOW_MAX_HEIGHT, WINDOW_MAX_WIDTH, WINDOW_MIN_HEIGHT, WINDOW_MIN_WIDTH}; +use ttree_storage::{HistoryStore, SettingsStore}; + +use crate::state::{ActionTag, AppController, TabMode, UiEvent}; + +struct GlobalUiContext { + ctrl: AppController, + ui_rx: UnboundedReceiver, + _status_item: Retained, +} + +thread_local! { + static UI_CTX: RefCell> = const { RefCell::new(None) }; +} + +fn with_ctx(f: F) { + UI_CTX.with(|cell| { + if let Ok(mut borrow) = cell.try_borrow_mut() { + if let Some(ctx) = borrow.as_mut() { + f(ctx); + } + } + }); +} + +pub fn on_splitter_drag(splitter_id: u8, delta_down: f64) { + with_ctx(|ctx| ctx.ctrl.on_splitter_drag(splitter_id, delta_down)); +} + +pub fn on_splitter_drag_end() { + with_ctx(|ctx| ctx.ctrl.on_splitter_drag_end()); +} + +define_class!( + #[unsafe(super(NSObject))] + #[thread_kind = MainThreadOnly] + #[name = "TTreeActionDispatcher"] + pub struct ActionDispatcher; + + unsafe impl NSObjectProtocol for ActionDispatcher {} + + impl ActionDispatcher { + #[unsafe(method(handleControl:))] + fn handle_control(&self, sender: &AnyObject) { + let raw_tag: isize = unsafe { msg_send![sender, tag] }; + if let Some(tag) = ActionTag::from_raw(raw_tag) { + with_ctx(|ctx| ctx.ctrl.on_action(tag)); + } + } + + #[unsafe(method(handleTimer:))] + fn handle_timer(&self, _timer: &AnyObject) { + with_ctx(|ctx| { + while let Ok(hk_ev) = GlobalHotKeyEvent::receiver().try_recv() { + if hk_ev.state == HotKeyState::Pressed { + if let Some(action) = ctx.ctrl.parsed_shortcuts.action_for_id(hk_ev.id) + { + ctx.ctrl.handle_hotkey_action(action); + } + } + } + while let Ok(ui_ev) = ctx.ui_rx.try_recv() { + ctx.ctrl.handle_ui_event(ui_ev); + } + ctx.ctrl.poll_tick(); + }); + } + + #[unsafe(method(textView:doCommandBySelector:))] + fn text_view_do_command(&self, _text_view: &NSTextView, command: Sel) -> Bool { + if command == sel!(cancelOperation:) { + with_ctx(|ctx| ctx.ctrl.on_action(ActionTag::HideOrEscape)); + return Bool::YES; + } + if command == sel!(insertNewline:) { + let flags = NSEvent::modifierFlags_class(); + if flags.contains(NSEventModifierFlags::Shift) { + return Bool::NO; + } + with_ctx(|ctx| match ctx.ctrl.active_tab { + TabMode::Translate => ctx.ctrl.start_translation(), + TabMode::Chat => ctx.ctrl.send_chat_from_input(), + TabMode::Settings => {} + }); + return Bool::YES; + } + Bool::NO + } + + #[unsafe(method(windowDidResignKey:))] + fn window_did_resign_key(&self, _notification: &AnyObject) { + with_ctx(|ctx| ctx.ctrl.on_window_did_resign_key()); + } + + #[unsafe(method(windowDidResize:))] + fn window_did_resize(&self, _notification: &AnyObject) { + with_ctx(|ctx| ctx.ctrl.on_window_did_resize()); + } + + #[unsafe(method(applicationShouldHandleReopen:hasVisibleWindows:))] + fn app_should_handle_reopen(&self, _app: &AnyObject, _has_visible: Bool) -> Bool { + with_ctx(|ctx| { + ctx.ctrl.switch_tab(TabMode::Translate); + ctx.ctrl.show_and_focus_window(); + }); + Bool::YES + } + } +); + +impl ActionDispatcher { + fn new(mtm: MainThreadMarker) -> Retained { + unsafe { msg_send![mtm.alloc::(), init] } + } +} + +pub fn run() { + let rt = tokio::runtime::Builder::new_multi_thread() + .enable_all() + .build() + .expect("初始化 Tokio 异步运行时失败"); + + let mtm = MainThreadMarker::new().expect("必须在 macOS 主线程启动 AppKit UI"); + let app = NSApplication::sharedApplication(mtm); + app.setActivationPolicy(NSApplicationActivationPolicy::Accessory); + + let dispatcher = ActionDispatcher::new(mtm); + unsafe { + let _: () = msg_send![&*app, setDelegate: Some(&*dispatcher)]; + } + + install_standard_main_menu(mtm, &app); + + let settings = Arc::new(SettingsStore::open_default()); + let history = Arc::new(HistoryStore::open_default()); + let hotkey_mgr = GlobalHotKeyManager::new().expect("初始化全局快捷键管理器失败"); + + let pane_layout = settings.pane_layout(); + let ai_enabled = settings.ai_translation_for_request().enabled; + let win_w = pane_layout.width; + let win_h = pane_layout.translate_window_height(ai_enabled); + let appearance = settings.appearance(); + let (window, effect_view) = + build_main_window(mtm, win_w, win_h, appearance.panel_opacity, &dispatcher); + + let status_item = build_status_bar_item(mtm, &dispatcher); + let (ui_tx, ui_rx) = mpsc::unbounded_channel(); + + let mut ctrl = AppController::build( + mtm, + rt.handle().clone(), + ui_tx, + settings, + history, + hotkey_mgr, + window, + effect_view, + &dispatcher, + ); + + if std::env::args().any(|a| a == "--show") { + ctrl.show_and_focus_window(); + } + + UI_CTX.with(|cell| { + *cell.borrow_mut() = Some(GlobalUiContext { + ctrl, + ui_rx, + _status_item: status_item, + }); + }); + + unsafe { + let timer = NSTimer::timerWithTimeInterval_target_selector_userInfo_repeats( + 0.025, + &dispatcher, + sel!(handleTimer:), + None, + true, + ); + let run_loop = NSRunLoop::mainRunLoop(); + run_loop.addTimer_forMode(&timer, NSRunLoopCommonModes); + } + + app.run(); +} + +fn build_main_window( + mtm: MainThreadMarker, + width: f64, + height: f64, + opacity: f64, + dispatcher: &ActionDispatcher, +) -> (Retained, Retained) { + unsafe { + let frame = NSRect::new(NSPoint::new(240.0, 240.0), NSSize::new(width, height)); + let style = NSWindowStyleMask::Titled + | NSWindowStyleMask::Closable + | NSWindowStyleMask::Resizable + | NSWindowStyleMask::FullSizeContentView; + let window = NSWindow::initWithContentRect_styleMask_backing_defer( + mtm.alloc(), + frame, + style, + NSBackingStoreType::Buffered, + false, + ); + window.setTitle(&NSString::from_str("TTREE")); + window.setTitleVisibility(NSWindowTitleVisibility::Hidden); + window.setTitlebarAppearsTransparent(true); + window.setMovableByWindowBackground(true); + window.setReleasedWhenClosed(false); + window.setOpaque(false); + window.setBackgroundColor(Some(&NSColor::clearColor())); + window.setAlphaValue(opacity); + window.setMinSize(NSSize::new(WINDOW_MIN_WIDTH, WINDOW_MIN_HEIGHT)); + window.setMaxSize(NSSize::new(WINDOW_MAX_WIDTH, WINDOW_MAX_HEIGHT)); + + for btn_kind in [ + NSWindowButton::CloseButton, + NSWindowButton::MiniaturizeButton, + NSWindowButton::ZoomButton, + ] { + if let Some(btn) = window.standardWindowButton(btn_kind) { + btn.setHidden(true); + } + } + + let _: () = msg_send![&*window, setDelegate: Some(dispatcher)]; + + let effect_view = NSVisualEffectView::initWithFrame(mtm.alloc(), frame); + effect_view.setMaterial(NSVisualEffectMaterial::Popover); + effect_view.setBlendingMode(NSVisualEffectBlendingMode::BehindWindow); + effect_view.setState(NSVisualEffectState::Active); + + window.setContentView(Some(&effect_view)); + (window, effect_view) + } +} + +fn build_status_bar_item( + mtm: MainThreadMarker, + dispatcher: &ActionDispatcher, +) -> Retained { + unsafe { + let status_bar = NSStatusBar::systemStatusBar(); + let item = status_bar.statusItemWithLength(-1.0); + if let Some(btn) = item.button(mtm) { + btn.setTitle(&NSString::from_str("译")); + } + + let menu = NSMenu::new(mtm); + let action_sel = sel!(handleControl:); + + let add_item = |title: &str, tag: ActionTag, key: &str| { + let mi = NSMenuItem::initWithTitle_action_keyEquivalent( + mtm.alloc(), + &NSString::from_str(title), + Some(action_sel), + &NSString::from_str(key), + ); + mi.setTag(tag as isize); + mi.setTarget(Some(dispatcher)); + menu.addItem(&mi); + }; + + add_item("翻译窗口", ActionTag::TabTranslate, ""); + add_item("截图 OCR 翻译", ActionTag::TriggerOcr, ""); + add_item("AI 对话", ActionTag::TabChat, ""); + menu.addItem(&NSMenuItem::separatorItem(mtm)); + add_item("偏好设置…", ActionTag::TabSettings, ","); + menu.addItem(&NSMenuItem::separatorItem(mtm)); + add_item("退出 TTREE", ActionTag::TrayQuit, "q"); + + // 点击菜单项时如果窗口尚未显示则自动唤起(除了截图 OCR 与退出) + item.setMenu(Some(&menu)); + item + } +} + +/// 为 Accessory 模式应用安装标准 Edit 菜单,使 NSTextView / NSTextField 原生支持 Cmd+C / V / X / A / Z。 +fn install_standard_main_menu(mtm: MainThreadMarker, app: &NSApplication) { + unsafe { + let main_menu = NSMenu::new(mtm); + + // 1. App 子菜单 + let app_item = NSMenuItem::new(mtm); + let app_menu = NSMenu::initWithTitle(mtm.alloc(), &NSString::from_str("TTREE")); + let close_item = NSMenuItem::initWithTitle_action_keyEquivalent( + mtm.alloc(), + &NSString::from_str("隐藏窗口"), + Some(sel!(orderOut:)), + &NSString::from_str("w"), + ); + let quit_item = NSMenuItem::initWithTitle_action_keyEquivalent( + mtm.alloc(), + &NSString::from_str("退出 TTREE"), + Some(sel!(terminate:)), + &NSString::from_str("q"), + ); + app_menu.addItem(&close_item); + app_menu.addItem(&NSMenuItem::separatorItem(mtm)); + app_menu.addItem(&quit_item); + app_item.setSubmenu(Some(&app_menu)); + main_menu.addItem(&app_item); + + // 2. Edit 子菜单 (支持 Cmd+Z / Cmd+X / Cmd+C / Cmd+V / Cmd+A) + let edit_item = NSMenuItem::new(mtm); + let edit_menu = NSMenu::initWithTitle(mtm.alloc(), &NSString::from_str("编辑")); + + let edit_entries: [(&str, Sel, &str); 5] = [ + ("撤销", sel!(undo:), "z"), + ("剪切", sel!(cut:), "x"), + ("复制", sel!(copy:), "c"), + ("粘贴", sel!(paste:), "v"), + ("全选", sel!(selectAll:), "a"), + ]; + for (title, action, key) in edit_entries { + let mi = NSMenuItem::initWithTitle_action_keyEquivalent( + mtm.alloc(), + &NSString::from_str(title), + Some(action), + &NSString::from_str(key), + ); + edit_menu.addItem(&mi); + } + edit_item.setSubmenu(Some(&edit_menu)); + main_menu.addItem(&edit_item); + + app.setMainMenu(Some(&main_menu)); + } +} diff --git a/apps/macos/src/main.rs b/apps/macos/src/main.rs new file mode 100644 index 0000000..ec3c0e0 --- /dev/null +++ b/apps/macos/src/main.rs @@ -0,0 +1,25 @@ +//! TTREE macOS AppKit entry point. +#[cfg(target_os = "macos")] +mod app; +#[cfg(target_os = "macos")] +mod state; +#[cfg(target_os = "macos")] +mod ui_helpers; + +#[cfg(target_os = "macos")] +fn main() { + app::run(); +} +#[cfg(not(target_os = "macos"))] +fn main() { + eprintln!("Build ttree-macos on macOS."); +} + +#[cfg(target_os = "macos")] +pub(crate) fn dispatch_splitter_drag(id: u8, delta: f64) { + app::on_splitter_drag(id, delta); +} +#[cfg(target_os = "macos")] +pub(crate) fn dispatch_splitter_drag_end() { + app::on_splitter_drag_end(); +} diff --git a/crates/ttree-app/src/state.rs b/apps/macos/src/state.rs similarity index 99% rename from crates/ttree-app/src/state.rs rename to apps/macos/src/state.rs index 73e62e3..4243667 100644 --- a/crates/ttree-app/src/state.rs +++ b/apps/macos/src/state.rs @@ -1,4 +1,4 @@ -//! `ttree-app` 核心控制器:复刻原版极简上下分栏排版(右上角功能区 + 上方翻译输入框 + 语言选择条 + Google/Bing 负载均衡译文框 + AI 译文框)。 +//! `TTREE` 核心控制器:复刻原版极简上下分栏排版(右上角功能区 + 上方翻译输入框 + 语言选择条 + Google/Bing 负载均衡译文框 + AI 译文框)。 #![cfg(target_os = "macos")] #![allow(clippy::too_many_arguments)] @@ -29,7 +29,7 @@ use ttree_core::{ WINDOW_MIN_HEIGHT, WINDOW_MIN_WIDTH, }; use ttree_ocr::OcrOutcome; -use ttree_platform_macos::hotkey::{parse_shortcut_config, ParsedShortcuts, ShortcutAction}; +use ttree_platform::hotkey::{parse_shortcut_config, ParsedShortcuts, ShortcutAction}; use ttree_storage::{HistoryStore, SettingsStore}; use crate::ui_helpers::{ @@ -1723,7 +1723,7 @@ impl AppController { mtm, dummy, "开机自动启动", - ttree_platform_macos::autostart::is_enabled(), + ttree_platform::autostart::is_enabled(), ActionTag::AutostartToggled as isize, dispatcher, action_sel, @@ -1740,7 +1740,7 @@ impl AppController { let ver_label = make_label( mtm, dummy, - "版本:0.2.0 (100% Pure Rust Native AppKit)", + concat!("版本:", env!("CARGO_PKG_VERSION"), " (Native AppKit)"), 12.0, false, true, @@ -2254,7 +2254,7 @@ impl AppController { let tx = self.ui_tx.clone(); self.rt.spawn(async move { let captured = tokio::task::spawn_blocking( - ttree_platform_macos::selection::capture_selected_text, + ttree_platform::selection::capture_selected_text, ) .await .ok() @@ -2279,7 +2279,7 @@ impl AppController { let tx = self.ui_tx.clone(); self.rt.spawn(async move { let captured = tokio::task::spawn_blocking( - ttree_platform_macos::selection::capture_selected_text, + ttree_platform::selection::capture_selected_text, ) .await .ok() @@ -2635,7 +2635,7 @@ impl AppController { } ActionTag::AutostartToggled => { let want = self.settings_ui.autostart_chk.state() == NSControlStateValueOn; - let _ = ttree_platform_macos::autostart::set_enabled(want); + let _ = ttree_platform::autostart::set_enabled(want); } ActionTag::OcrStripNewlinesToggled => { let want = self.settings_ui.ocr_strip_newlines_chk.state() == NSControlStateValueOn; diff --git a/crates/ttree-app/src/ui_helpers.rs b/apps/macos/src/ui_helpers.rs similarity index 100% rename from crates/ttree-app/src/ui_helpers.rs rename to apps/macos/src/ui_helpers.rs diff --git a/apps/windows/AGENTS.md b/apps/windows/AGENTS.md new file mode 100644 index 0000000..f4fcc07 --- /dev/null +++ b/apps/windows/AGENTS.md @@ -0,0 +1,10 @@ +# Windows + +继承根 AGENTS.md。这里只放 Win32 UI、DWM、对话框及 Windows 交互测试。 + +- `app.rs` 是控制器与消息循环;`app/ui.rs` 负责绘制/控件;`app/dialogs.rs` 负责系统对话框;`design.rs` 保存可独立测试的布局规则。 +- 业务逻辑复用共享 crates。系统划词放 `crates/ttree-platform/src/windows/`,截图/OCR 放 `crates/ttree-ocr/src/windows/`。 +- 保持 DPI 缩放、主题、滚动、hover 重绘和启动隐藏行为;不要用强制重绘掩盖残影。 +- Mac 交叉 `cargo check` 不等于 Windows 原生验证。发布必须在 Windows MSVC runner 上编译、测试、启动便携包。 +- 发行时 ZIP 内为 `TTREE/TTREE.exe`。不把用户配置、下载模型或托管运行时放进 ZIP。 +- `tests/repaint-regression.py` 用于锁定具体重绘回归,需交互桌面、pywinauto 与 Pillow,按需运行。 diff --git a/apps/windows/Cargo.toml b/apps/windows/Cargo.toml new file mode 100644 index 0000000..35c07e6 --- /dev/null +++ b/apps/windows/Cargo.toml @@ -0,0 +1,26 @@ +[package] +name = "ttree-windows" +version.workspace = true +edition.workspace = true +authors.workspace = true +license.workspace = true + +[[bin]] +name = "ttree-windows" +path = "src/main.rs" + +[target.'cfg(target_os = "windows")'.dependencies] +ttree-core = { path = "../../crates/ttree-core" } +ttree-storage = { path = "../../crates/ttree-storage" } +ttree-platform = { path = "../../crates/ttree-platform" } +ttree-ocr = { path = "../../crates/ttree-ocr" } +ttree-translate = { path = "../../crates/ttree-translate" } +ttree-ai = { path = "../../crates/ttree-ai" } +anyhow.workspace = true +global-hotkey.workspace = true +tokio.workspace = true +lucide-icons = { version = "=1.39.0", default-features = false } +windows = { workspace = true, features = ["Win32_UI_Shell", "Win32_System_Com", "Win32_UI_WindowsAndMessaging"] } + +[build-dependencies] +winresource = { version = "=0.1.34", default-features = false } diff --git a/apps/windows/README.md b/apps/windows/README.md new file mode 100644 index 0000000..b005079 --- /dev/null +++ b/apps/windows/README.md @@ -0,0 +1,24 @@ +# TTREE for Windows + +Windows 10/11 x64 原生 Win32 界面,支持托盘、快捷键、截图 OCR、AI 翻译和多轮对话。 + +## 便携版 + +将整个 TTREE 文件夹解压到固定目录,运行 `TTREE.exe`。默认隐藏窗口,使用 `Ctrl+Shift+Space` 呼出,`Ctrl+Shift+S` 截图翻译。也可从托盘菜单打开。 + +开机自启记录当前可执行路径;移动目录后应重新设置。OCR 使用系统文字识别组件,缺少语言时在 Windows 中补装对应的 OCR 可选功能。本包未使用商业代码签名证书,可能触发 SmartScreen;请只从项目官方 Releases 下载并校验 SHA256SUMS。 + +配置位于 `%APPDATA%/com.samwstu.ttree/`;API Key 当前随 JSON 配置保存。模型和推理运行时首次使用时独立下载,不在安装包内。不要分享本机配置文件。 + +## 开发 + +安装 Rust stable MSVC 与 Visual Studio C++ Build Tools 后,在仓库根运行: + +```powershell +cargo run -p ttree-windows -- --show +cargo test --workspace --locked +./scripts/windows/package.ps1 +./scripts/windows/smoke.ps1 -Exe target/package/windows/TTREE/TTREE.exe -Output target/windows-smoke +``` + +产物位于 `dist/windows/`。Mac 上的交叉类型检查不能替代此平台的链接与运行验证。 diff --git a/apps/windows/build.rs b/apps/windows/build.rs new file mode 100644 index 0000000..333cda1 --- /dev/null +++ b/apps/windows/build.rs @@ -0,0 +1,17 @@ +fn main() { + println!("cargo:rerun-if-changed=../../assets/icons/icon.ico"); + // Resource compilation is a native Windows gate. Cross cargo check on Mac + // still checks Rust types without requiring an entire Windows resource SDK. + #[cfg(windows)] + if std::env::var("CARGO_CFG_TARGET_OS").as_deref() == Ok("windows") { + winresource::WindowsResource::new() + .set_icon("../../assets/icons/icon.ico") + .set("ProductName", "TTREE") + .set("FileDescription", "TTREE — Translation and OCR") + .set("OriginalFilename", "TTREE.exe") + .set("ProductVersion", env!("CARGO_PKG_VERSION")) + .set("FileVersion", env!("CARGO_PKG_VERSION")) + .compile() + .expect("compile Windows icon and version resources"); + } +} diff --git a/crates/ttree-app/src/windows_app.rs b/apps/windows/src/app.rs similarity index 99% rename from crates/ttree-app/src/windows_app.rs rename to apps/windows/src/app.rs index 1823e95..43f91ba 100644 --- a/crates/ttree-app/src/windows_app.rs +++ b/apps/windows/src/app.rs @@ -1,7 +1,7 @@ -//! `ttree-app` Windows 100% 纯 Rust 原生 Win32 + DWM 桌面端实现。 +//! `TTREE` Windows 100% 纯 Rust 原生 Win32 + DWM 桌面端实现。 //! //! 架构与 macOS AppKit 端完全对称: -//! - 复用 `ttree-core`、`ttree-storage`、`ttree-translate`、`ttree-ai`、`ttree-ocr`、`ttree-platform-macos`; +//! - 复用 `ttree-core`、`ttree-storage`、`ttree-translate`、`ttree-ai`、`ttree-ocr`、`ttree-platform`; //! - 原生 Win32 控件树 + DWM 深色模式 & Mica/Acrylic 云母材质 + 分层窗口透明度 (`SetLayeredWindowAttributes`); //! - 系统托盘 (`Shell_NotifyIconW`) + 25ms `SetTimer` 驱动 `global-hotkey` 与 Tokio `mpsc` 流式 UI 事件; //! - 完整支持四段式翻译面板(含可拖拽高度分隔条)、AI 多轮流式对话、内置 `HY-MT1.5-1.8B` 一键下载托管、 @@ -13,7 +13,7 @@ mod dialogs; mod ui; -use crate::windows_design::{BoxRect, TranslationLayout, SIDEBAR, TOOLBAR}; +use crate::design::{BoxRect, TranslationLayout, SIDEBAR, TOOLBAR}; use std::cell::RefCell; use std::ffi::c_void; use std::ptr; @@ -35,9 +35,9 @@ use ttree_core::{ WINDOW_MIN_HEIGHT, WINDOW_MIN_WIDTH, }; use ttree_ocr::OcrOutcome; -use ttree_platform_macos::autostart; -use ttree_platform_macos::hotkey::{parse_shortcut_config, ParsedShortcuts, ShortcutAction}; -use ttree_platform_macos::selection::capture_selected_text; +use ttree_platform::autostart; +use ttree_platform::hotkey::{parse_shortcut_config, ParsedShortcuts, ShortcutAction}; +use ttree_platform::selection::capture_selected_text; use ttree_storage::{HistoryStore, SettingsStore}; type HWND = *mut c_void; @@ -138,7 +138,7 @@ const TPM_BOTTOMALIGN: u32 = 0x0020; const MF_STRING: u32 = 0x0000; const MF_SEPARATOR: u32 = 0x0800; -const IDI_APPLICATION: *const u16 = 32512 as *const u16; +const IDI_TTREE: *const u16 = 1 as *const u16; const IDC_ARROW: *const u16 = 32512 as *const u16; const IDC_SIZENS: *const u16 = 32645 as *const u16; @@ -695,12 +695,12 @@ pub fn run() { cbClsExtra: 0, cbWndExtra: 0, hInstance: hinstance, - hIcon: LoadIconW(ptr::null_mut(), IDI_APPLICATION), + hIcon: LoadIconW(GetModuleHandleW(ptr::null()), IDI_TTREE), hCursor: LoadCursorW(ptr::null_mut(), IDC_ARROW), hbrBackground: bg_brush, lpszMenuName: ptr::null(), lpszClassName: class_name.as_ptr(), - hIconSm: LoadIconW(ptr::null_mut(), IDI_APPLICATION), + hIconSm: LoadIconW(GetModuleHandleW(ptr::null()), IDI_TTREE), }; RegisterClassExW(&wc); @@ -952,7 +952,7 @@ unsafe fn install_tray_icon(hwnd: HWND) { nid.uID = 1; nid.uFlags = NIF_MESSAGE | NIF_ICON | NIF_TIP; nid.uCallbackMessage = WM_TRAYICON; - nid.hIcon = LoadIconW(ptr::null_mut(), IDI_APPLICATION); + nid.hIcon = LoadIconW(GetModuleHandleW(ptr::null()), IDI_TTREE); let tip = wide_null("TTREE AI 翻译与 OCR"); let copy_len = tip.len().min(nid.szTip.len() - 1); nid.szTip[..copy_len].copy_from_slice(&tip[..copy_len]); diff --git a/crates/ttree-app/src/windows_app/dialogs.rs b/apps/windows/src/app/dialogs.rs similarity index 100% rename from crates/ttree-app/src/windows_app/dialogs.rs rename to apps/windows/src/app/dialogs.rs diff --git a/crates/ttree-app/src/windows_app/ui.rs b/apps/windows/src/app/ui.rs similarity index 99% rename from crates/ttree-app/src/windows_app/ui.rs rename to apps/windows/src/app/ui.rs index cfafd8a..a0a7596 100644 --- a/crates/ttree-app/src/windows_app/ui.rs +++ b/apps/windows/src/app/ui.rs @@ -1,7 +1,7 @@ //! Native presentation only. Keeps Win32 edits/combos/buttons for IME, selection, //! keyboard access and accessibility, with the same restrained surfaces as AppKit. use super::*; -use crate::windows_design::{logical, physical, BoxRect}; +use crate::design::{logical, physical, BoxRect}; use lucide_icons::{Icon, LUCIDE_FONT_BYTES}; use std::collections::HashMap; diff --git a/crates/ttree-app/src/windows_design.rs b/apps/windows/src/design.rs similarity index 100% rename from crates/ttree-app/src/windows_design.rs rename to apps/windows/src/design.rs diff --git a/apps/windows/src/main.rs b/apps/windows/src/main.rs new file mode 100644 index 0000000..52c1ffe --- /dev/null +++ b/apps/windows/src/main.rs @@ -0,0 +1,14 @@ +//! TTREE native Win32 entry point. +#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] +#[cfg(target_os = "windows")] +mod app; +#[cfg(any(target_os = "windows", test))] +mod design; +#[cfg(target_os = "windows")] +fn main() { + app::run(); +} +#[cfg(not(target_os = "windows"))] +fn main() { + eprintln!("Build ttree-windows on Windows."); +} diff --git a/scripts/tests/windows-repaint-regression.py b/apps/windows/tests/repaint-regression.py similarity index 98% rename from scripts/tests/windows-repaint-regression.py rename to apps/windows/tests/repaint-regression.py index 4b69d2f..b03c9c7 100644 --- a/scripts/tests/windows-repaint-regression.py +++ b/apps/windows/tests/repaint-regression.py @@ -1,7 +1,7 @@ """Reproduce hover flicker and scroll ghosts using naturally presented screen pixels. Run on an unlocked Windows desktop, for example: - python scripts/tests/windows-repaint-regression.py --exe target/release/ttree.exe --artifacts target/repaint-regression + python apps/windows/tests/repaint-regression.py --exe target/release/ttree-windows.exe --artifacts target/repaint-regression Starts and closes only its own TTREE process. It changes unsaved controls, never saves settings, and verifies the original settings file remains byte-for-byte intact. diff --git a/assets/icons/128x128.png b/assets/icons/128x128.png index 6be5e50e9b9ae84d9e2ee433f32ef446495eaf3b..2187d02b08d9fc5dcaf7eb652956a976962c327b 100644 GIT binary patch delta 2039 zcmY*adpHyP7yoXW39)`mE5=-YE>Ui)$Tfx#%CzLxWkl|!D4K1^k2fum<$ir*ZgVL_ zNRLdpOfHj}TUg_jcPX`8;??tepWo%2=Q;nJ=bX>ybN=|8r}DQEscK}=i;i|Uu=Oho z+se`bfVbG=j=9~)U7DB(lYP5a^fNy<3kHiMp!QYO-67h9x+>#zJv@lZ_Z?QH15drT zx>GT3OR)Hd_UW*S#@(*75>G1_`@KF$Xw>cZu**n2i8L2yn;oZWzVmA{BpwTDdKM(} zDa*L6<8E5d4R#-!+?T~`wMf>UjQD8tHT)8v7zM1vloJrY%6uHJp=fh+)B6HS(Juup z+4-;<>p~0X zm@jT3Z@AoNc@dkAzyenL&;I6}1W0QaYQ1`~MfUoTG>t9_iXdix|@Oy+|J|7K7sO`i z!1G;4IocI2lAU931F(ucQc2%llgK|+q?a~kqRk~ckIYD>`apuYu~Hr0Z;gD#V6o{czeo_m4gLB?FGaU^+~$D?Bo1RF^?r3? zE(;?@doAk#qeR3OKaNd;x~}VdLDaTyOu@Yu1&5E7yG1wp)aZr~WSjAwWW8JVr8HUE zhxN@tM)50jFG}9IOew8NPg2^J^J-&YGf=z@0YedWZ8Iv4FOPDGx@$bc3w(x#&H`b@M7d8(Z>zp!ABjSLS*(7(-5baiy5U&O&~WH<4!ypmrK07wm!?F= z+?-l=e`!U3ScOOR#mGp)b@}Eb({~Lao^yl86$}jxUH1f%)z#JY^!4vs+ja47PL{4` znv49;&TRnaUZtC3kNu@Z;c((zeJ2@fYirF62l-7BD)DKQK=J)jWYx`wbb9#WXtg_W z=yz{mYip}#X0~fshi&n5WntJT=6h9INKlj*N>TCP2pdl6{Fk&gw=oi;ITNqAKZZPX z5X{}#rvG0pPb4gNE3KSd4Nr-LWaj1BR1@$MEdT6&b#{S8P4IeGi%MF&M>T!k(}KC^ zz`0AK&9Ls$re;&+mk8jCjV$Ot1+aFIHwrMzi1&Fg-;hg})az}p`U=KZcdQG^f-@81Fv~~Po=p{@RA`~ezmNGJHY)9c5}%sN(D;Kp9xcsu-3eFl zAKo`5yu#~2V)wb$eD9ToVf^rT{E8`9Q2amaYjUXuS$v3j&AZ@>!NHOb4|?}7O8T$! z#4!ouE_-@L%iYS|!v7$TX!&skJ;3XEtXVxv_>*a@L>?Mo&lPD)L;TsfFL=EV>mvAU zjZwEsj+NJC?G~ma0ORc>&+8H{x0$9pQdds?t+o)j5e0q|;<r{@f8Y`DMrkV~`y1a;^3tN$f`fkH<^&J6j2SXeM-DJF(>!{>`v% z^d1uc-UK#;y3;xE=|y{1`beIqyZaBDG-@&wfThUwFuLCotoF#lwq>T&MVSq(>r-&j za_Uk53~u{m@L7T`CG47>w0)BP;cbi70>_4okM0DYjdln!dU;3|d93M}bk@f>{YLc! zl+ZLx0X@lZT&nIOkw~gmNfIF6CCItH$i;}Sq0pV&%F!+vMot@66M|y9X=pOyp3>DV zx%uSTC#0Tj?RqH!6B^zrXz0YGXM2qBPapQG3yN3+9iw+0#(oj&C@|tbk5th3R%7D7 zHnT>hQu7-c!W#roBglD_7SqV38FV-S{3F)|^gDSId*6MO0eKW^ewnltfJ%h#CF+73 zkdBAoL6Km8U0nCQi7lB9Z{?S0_GkIZiLlBy*n;&wR(YZ|SmO`2 N!`{Xj$Fw>h_ZNXvz^?!R literal 3512 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 diff --git a/assets/icons/128x128@2x.png b/assets/icons/128x128@2x.png deleted file mode 100644 index e81becee571e96f76aa5667f9324c05e5e7a4479..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7012 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 v_9d;g16WgPx#1ZP1_ zK>z@;j|==^1poj8V@X6oRCodHRzYssP!OFlQPoAOkQ*2U(sUKbqDfRKkP|dLLC6W} zo&a+K$O%GDkn{wYE<&;ibk(X5;hrEw$|9}6)A_am``g9_mVfP&!1nk2dGF7knQwr9 z9SAFen)x(eCO;F8y2C~0FD1YxRTPcyPWVxkUYmeuz}Tv?7&Fe-!UE{)ZW)Mb;H)^# zeHDv$`dkZGguJz@^MA!ZNGAUqt{|0HpZ7Ch9S`q5!>R%}>}62!+(T^evyO+ImSo2w zpu)su4^3nw5`PJ>ohsOb>3)-r#cnlbj>dCp(*cW)I42C*PJtvyDI)A?UUh?Am*dC< zn5@pW^_dT>gxWy@hzQKfXtxwWElgzFH6A`)+!;a@^m`K2OdmtLh zj2x-n-_ITO-f#Jw+k0%$M-F}0X-K5uVfTw)kTPpbh+PQi4FT`@IfuP0?)lod-`_fg zCE)gtfq(lr#A0Vdwh2T)?F`Zra%LZnX&hVgk#PEltA?(^Ox6Me&!hY#E`)St?!Ps? z??rB)LZ1j>$U>|4dv8J=b9vU8wCp~byqIbt0UVPe8@oWCbI}XLNk~E=iT%S%wbR)! z3x#QN*`;Z>VDcPF+`1zg+1xTj#h-~4RmZZAt5O*^2Q5}Xr z8Hy@c`#pM?kc?hFWxRXr*mUfUCXf4ka5DD~at6d85COB05l#(P9*cQZ3EC8fVdS~? z&wq0ErgypaJRaD|oB-iD;4c|1d;LR$7>IL&(EegNCbWhlYjgn#5cxfjz3o+4h(6PV zjWMOF=0V1kh)eF7QJUKF=h*#Tb~OR6h#E8dSC69aJEtO-WuAqpl1IJ2mrL9|W50;x zNJN4YmK5tWsxvMvKw!K5T^(b}4s&3|A~9hRjM0myv#6?AS%4R!1d-O)#XaHU<1(cG a;l*EM+I6PbFB;YW00002T^I$?x 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 Y2S8W#vM)6=T>t<807*qoM6N<$f*y@n<^TWy diff --git a/assets/icons/Square284x284Logo.png b/assets/icons/Square284x284Logo.png deleted file mode 100644 index c021d2ba76619c08969ab688db3b27f29257aa6f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7737 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 diff --git a/assets/icons/Square30x30Logo.png b/assets/icons/Square30x30Logo.png deleted file mode 100644 index 621970023096ed9f494ba18ace15421a45cd65fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 903 zcmV;219<$2P)2 z+CUKPMqaqGiH;zb!R4$B-WXS^YzQr=@UH>k4?*L)&R=zYjBrZenKdc9|JlS$SO*RJ zKt8FSTDAdk1g_WPAO!p^V!AuL;Lm;uQyV;zKq)J3i(;q*;k+pD%f3eltU`PYdy9(k0&%` zuWAPcV6|-y?|?7O1W!KSK}pbk8#~!|FA@(VJkt^V@0lio{afoAeo*f&$W2s6${5!1eKvAGD2$GZwSB98L2ZVS- zKn8ENRkZ*sb!@QugOrQNK3(sy1v%J#m|rpB+h|Nkqa3FRT>74xSs{#&saU2Lf!_Iq zKmuKAESh`gs!fneGWn+nf}l?7jE$HW!Af&vE5=G!QU)U2v&HLIBGXKk4nQx{hsHjL zLPMAo5=*uInFbq7(aa`Y2VX5wCmaeqvECOFv)a>0t>ZaEb*cJccER=BB?KFZhV$c^ znL*l8x*UYZv4WK|j?~Jt6~~F%{pk~z5A*>^M`?r5m9@RJ_x|uEtX(6Vk@Y()MVto* z93wr)%3m%|#OZ~srm>zF(JvDuTq*@;d&^>_BJm5hOU`3FjG70L#Vzv9I?`<7$T@

jU?lMi@tgxr7CqX_r3uw^y4tVU3Pm0sw;|1WSUO%?=bG`*Kmz6u4{#ti;T7AWIBAEh!(Y zz>O01&#X?Ds@L)Sb{CkG#Yz4$3o d@96)?#cz^xWoA}>B$xmI002ovPDHLkV1l3&k#zt7 diff --git a/assets/icons/Square310x310Logo.png b/assets/icons/Square310x310Logo.png deleted file mode 100644 index f9bc04839491e66c07b16ab03743c0c53b4109cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8591 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 JPDHLkV1lm|RXG3v diff --git a/assets/icons/Square71x71Logo.png b/assets/icons/Square71x71Logo.png deleted file mode 100644 index 63440d7984936a9caa89275928d8dce97e4d033b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2011 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 V15>LQ0|e+Qepn5tp9%MO;lKZuzLWp} literal 98451 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∓t$dRJGIadE?vc zx9WD#yZ&gK=iVbgW=x8$s!dnTwR z$LA6KX5PB94SQsTt@_0w)Wp*>DZooc+yn+wArY_n0v(5fU_{T9ilTv24DWI$xV`nc z3{+|u-7xq9YO*)nq&|JG$+uorM!36j`Y_YDq7b@e;EE`e_kBn+VeD__Tpy`5H};b8 zRl=EXaa0(9Hf_7B3FT5hA>o%w4iFCnvaX(!)Em=eMd*2R;xj*67fnoKFGCuh8wdTk zJU$%WZS+#OOBT>vfumpIf@qCCyAu5Sng<@)D@i~a<+9Fl)S9-Ht1*o<$A3(PJoxe# zwee^q>8J&|+KY>%tnSK1r_9$)rHMkq4qA;{5)nhIz&lAFKGQ-^W4D-MG4%z&s504giKVGtnX*-@y{u^)!Ca)GbmhT#Kgf*P!v zb&~2|&D66J&D&xpn@0t{dVG%uvL4|!at=KB{%h>IFcI7?0XH7?oCWF(8)~*tEt%Iq z3#PbMs{}U~nBbXz?lhKHsp^P@HGZd2;!@Q-^@X}wp`UsZ`Up<9OA0;h14Pme)lJ9CQR9oDm<~vvW!%9C9n;!y{&=Q^l{eXx8X3O{l}Yddf$f!uZMP z8W8CbIatsQ%(2v;T-iWXu?8OGmC+5ULb9L~XBuvrdy@M3hNdwPY2IOfz94+p>WDv` zf;xTR?o5D12Pnh!^T_A7hs~+j5KAUsFqgY|EDwM^ur>SM+J}Vgc9ZIL{VF*2{T;Vk zmb@u{8W7}RPh%16;Ywm0IaVV*OH%r-JvMmLJ4H`;faq{4;oDhz?Xt*0^z76*+6511 zalExG1Q}-Y&H3edzkkSdd+H4!ed(@%M*G@IC{TCM@j3i-2?0vbuwPo`xPrlIY;hwj z<0Z?-S;f(<#mIe*;X-qTA}+lD<&Y~5^A6w4QddrePX69G zTQ^F`TcXefc_cmIt&}01K%4CSzh7H;;U6>;#xt}THDa{I_OE?vASq=H zt8>y%5W_1KEmSu4kLK<)`Gct5EyY3sb%C*|ZGVhlOVbeV~h)3A9lIQkd^lOz$t=Ltmo8ga4=s-)5 zD2Y8$H)=S8#LkY{hNVQ&}g5#RH%qCRR;h%7eG z5)p<%pi5e0{J>IC2&3WPZ0Fc|?GeF4)bUWIT9za3ZH&b~axrIv9J>zg8Vx6NjIch& zmu(?9UX{ z8OQVBu<3MEN5F6#jHzF!qX)rOqdCl)G(|WO3)}vE3Xp-56hvY}_h*gT0X{hI89Hhk zE+jok@GYOb$KPtgoSXKd)G zPTbudXYmXC$itH9Z=2ax2nf!%O`}d>-fwQZZ zas7L2#C@h~dV#@=6={aVZ;K_St~#+xmL{UxdFZ*iZ3exc_rAq2^2EH?k}R1dwM{Ud zxq%bSGG^WOYFrBtgz)y27Sp*`264>AKpEHQDy zqA&r|(Frqr5w+YUF1oJJ>bL&od-Zhp9XCl|fQ^S~`w}jThG;hQ@gcKx2$k)$Ebu9W z6o}3&f$mP4IP`1=_%&;?@~}B^KVKKUC%;E}Bb!Q8)FAzw<<)#g)Ve=ngxEpgmXg&V z?2{}Pc^Z&&c?czfkP$5o!5G0}2x~W1pjTpG`~Tlv#2!c!YN+lbFxNyOHd=UG+=3w_ zublxk+IP9o0<;qCevC!@<9-G}c-m4F8p98JwUMBWh;ttAqP$@Tz~wSi03O+HZAgrC?JJbEDez&8C0 zlAR=R34+-3vTfkIUg)Y++d>(|t_$rwsptG01W~enA*0hPq;bZEA^S0G|6KiH2jSUV zpKRnGC?QT`)=|tKm|^$V3${pOR+_J#Kr-+wBhkw3VdKD=O4h`%((EpQaQS;zJ>k0Y6wqslbamifF zR}G5!BukwvOhLW`4cZyg6RF3rkw(Y^q5L1e#+RsS4K-NvDo~0L2d$GroI?5VmQqTd z0Eo0>9=adrHV(jdieYh(t_>D^0A=klCF3cbtYYMN5l)94yef#xmt1wa_&u5V_EFFU z1+VVtuD}TLcK$HqP|V~G+E$sh`aI($GJpBCz&Y+gSB+aJ3gz(r_v!i6V`6J!YK0X% z`^h$n^h{Y6`v+la8Q;32$H(;9cWyV3Nj1!+d!CED0(gkhe7!?I`AAwx0_HcoaYsP* zGCc6D8lW4=Zom(CZ#%RGVl!NT=J;Mg}#S4E`EpKlo~A7Vm7QbLsW9XDTl1P8X@z; zpACB9JIgW+GfAop*XjW*A@hOTw1=;2Vr;ty@9nf5R2)P(Kup_6y18H)K)L=MkW*{o zqmm^f(^+^!!>n7{>~NhaHhh?c9>M)r!w?{-Kr4%IMU+NWYv_DqH?_N?Tb6=natf`& zh#eZdhsqB4-~N%ubmyhyw~dzPyfDJ~+rBvQlGi5L0YydWbysJb^-0|e7p_!vC;W|p zEFRp}f>jfxd1d@nTUlko=A#rVh+Hhswy+B|nU#LGZ;na`EPUvz5`lc;=qaav(GTRP zzhX;x-PV--K#W;@m%76w`8JdO8r0M%)imA^BD1bKbrAW%5ShomdRYzK1QmqAMF9b} z264Pnb|P$Y-yrQw2@UbCP^+^Z%7>HlzYbJU0v7nX&1=HY54NiNC8INJ@_VVs8HGDr zbV$X`%b}q$&-Ma1{HcMqq!GOt<0ox$y9-fP>C(V)M(FLlSniJJSDxPxfM=6RlawT{ zXYlGL_Nc;`RiS8BD{Y@PG0@S&v8IBu?@3E8e)vc`@NFx5U8?wN{d#PT(GDA=m4%d; zf-7oeyr9U~z`@*U5)DIFOA?5R<@BZFS|*G)Q;Ob@K1?4!V!kU~8&3TXw1I3D?CVz@ z+FxzVCqiCnrSK2##?q~#Xvwn2x&H3nMS8&QJzW?WZ5ZB20~d>B^%G&Gi5$`8Pk#H z$bc~*4<04-u4Nebs~NGP>vGvd?mJM@Cly0Ua-rrzZr#{jUc=9G@~j+SYi2LWc3>XQ znRsWae3v&lM$&#IK%N~&H}vX@@a$tTt~Q@oAZt{ba7P@JH2`RQfX2cOixk=M5+cii z0gEr>5DELrMt4Gf^n0+jIC{k-aCK9jva!pkwwt!fMSMpRhalsk6j|c@t$@Ho?2tJ7 zcqN0Oh#6njN1O5tG&QS75*K->%$0}-2oFjY=Gn9!L#rx6p11U=7W`DuS<9z zq^s+}cm>Z5xsQD_E867gq=m$`@APfN^{DXfw`9t08DI*^KOY{+pYo%HZmHsTy33-v zAAKGiou28R+Z__hZ!`*Y}s{m!|)?FA^>OQp{rS zv=hq(!J<~*X0LRIdwxklFVIn6=qZWw`Q{L4C<=L-_mvV?F4!QzCeDr;<%BOMwRYjqBHLE;aoRW-g8%xXWqI1GtS`(&sF z-+5H~OTtSS3F4`dSfv_CDy-0Lh}Vs#vT4To7J)DU>B=;q>_z}lW-xZN2+`Uc?kyto z+3DWfJyke9e9K2F>Za7QD%h(39Tg=rWEu6wO`KlNd1`#QIphq1z2L&oim(^bnowjh zRa*f(eb0|qeBFKd-}$G0G4q>0HSRSxQ>g2PpQ=v$KNWE_-y789JKZEJ+jfHw~-Xb2bf_x*1*S9&rw7lt-ypnPW`tM@aNbuWJ7`OEMXZ~hqb0a znpg(Z;A^kRTz%{*KpZSFyAC>&TzkS(&V#-L0Q}7cv$+9tkBI?wk$EntXh&}1-{Jv# z1ZS6oY@M?;I*SYFkAKz7*Z`;Cx$@n&yq~{rqK?q4_;noWY_u>}v3NN4VFLawsd22e z0B&fB1iDK=ASrDGS==bieF$!w7~cO=a$)H5C1j^C-BBpp3)(Ci0N>{VxWEaI!0zK@ z(vN=d%I=hVvF(^h$<=qqF(2Y?nc?dkZ?JU+!wB&dya2t_3H1~&7`s@Yqqs+@D8;35 z57C3nt(wF>9q5gVP{O1}=(V$^IL)mEhR^Ej(#j?<(?=?c@W2 zS3M|e=^hSh0O|5tYwCk*bd31?<@Sa1+r}CTx;f14ecwohucvQSA%@PL{C5WFptzld zmU&Mqmb&@*9ajho6+*XJ`esq+azQcDo>nIEvUt2wB+>u1_8HmegxaQtDDG zE^sz+0XMlf9amxC1GJH<@QaWlZdDlMFR{x+m>uu|2INv6(*}#yHi zwRB?0c>ggB=Z%BjUY+$IH9}rO2yNIknDimcX6Mp=sQK3j*sfNdwkS|SgQ>w4g|c&` z#)V!r{lz2ce{9gBQ^7<$fh+akbD<3}LYIr2$7dM?y`OWuB(J2x48z9$vBT|C5=DF! z)4$NnpFZ~If>(M_r24#H7h5K#1g80EaUMes-C+-oyKjeyk9z!i_a<{om1cn~byBZB zQ~ye9etyay4Uy^1@`$>U#{}>p+DO4#x1KPXQSiro*T7I%==i+5+{4x^a)J_yoBpxx zPaqed5`pKT&7Olmfly#ByvbS+e*u+257WnWS*I`uUc*1n|1l5iwie#5cnS#|^fvO90mh5vrN zrlDuSm);YE%b<3bojo%+ZrG9@?BqB#=;2pXope{KEEqHR7{4-F%;COl2nzH|?;Da0CqzE7D0E zrKjE)FupBqDKx{}LrPJm9AmICFlShkEou8yll293_re-0C23G(mA2Wo@w_q6yhse{ z$C`p)dEvOM=<8D}4fln&l0RUn{>=(OfQ^8~&e@{FM)zDPUWJkOYG6)D5B>T7(CO>I z2XgBXt)~wE;g3!;(|qEJe!907dW4;)jlZb9e01@$h!d0X^b;=PL{VGYS%C3GF=qPS z)$Ur;#yBCb&Iu#L@ z|6a$nG7HA`I-bs%RY1PFdX)5^wir^Ej|=0m#s8k-vaG7AO~pSw8N=9OVxW}@NPxx= z(%{K##^(eQ;oi3gRE-@^xDS~o{H>fKjHemq4ulELA;r|ix{iJm5ieOg@Ir@tveq*a>~PD~Vr!doF2m?J64g3`{MeF@FqOcDM%~SP z&6ruH3$7Yk)h7N3k%EvP8{WDHutF*3a}G&dC_s(o4s+{<`g#IKC^!zBGCL}y#0i>0 zGw6xiv9~V~3|T~#GF2_Lav&qG_3Oly*yltV?r~k9Mu5EDKC=D<{1)IX;~1L%nAy8F zZ< zbs_3Jk3}R@Rf;43biBfLyS$OLFIS}e6`&@|Z1zxHcg)HAtRcmfYAmplZ zDt%L7Hp#p*6*Nc1Xn+YY@ZQ0J|NE8K@T;X zkdk_b1vU|bai%u;BF`VgIMdgPv}gugMF6iSB>**LM?(T^s9@!23szn#(e|xkC_`P- z;^}eCYN;JtaY~}nvR4=#kc^9cU2h33I3>Q607kn#HfL+96KGdxeiwUvA_d2QmHtWy z=mzB*s?*p$%F6aXwhvbea2+#3Bdf~k}%?5eM8-FqA-De%-A+M9C zNinC4dX-(#B{D7fKr7qo@2jX6R=;%k=Y=D7^LlDht$D^$r zf7@Qee9Cg?arg_YwPR4wTYd3*7O>4XeU;_|&*js697))y@q3Y5-Bx2{11*|J`^3RT z+X*L&U%K>JdMtKH^fj?R#enM%>8ZoUVZYkL#lamiZ|PrpYM8S2V;?-T9r}psJ9oMv11d~M zX6&b!+k4LLs`J&JzwC1Ws1SZ#z`t5zRezc`{w`~{P!!) z5v+BROI2wl#2P$@SDXMS+7-NObUsq<0fP{|W zP)84se0uI3prYQSqJ;?wqzgvQjYN;}Z(dfbH(MN=NYdQf8?nGK>;8%vD6yR!8aG|> zv@rt9NZi%s+P$bxg&E>+f;7QH;4WmKT5Nt3+hNK>G_UwOe=`y1dFMfT{7|OQpormV z=GN#4VO8v+Ai&2?Fao&C{*!@#{YF;!b;nbb0c7TWQEg%Y4=|g2_we%eN6XmiKuF73 z2&vw93TG?(_`~8H^i3)A*Nql62|rgkSYs^k)5lwSugTRY%j07|?(REjQTD6?kFD4@ zPba_kP$zp1Vp?ulU;|vsFggtP6W`|R=~6ghA@v&uqM}4Nd$H~G1VFGbpQP?gP;gBv zG1RWILIvf>HGK-pGS;)czs0$+m(gu*c*{)uWhL&5 z1rs75L!n@le)em$3}b;;V;i~k)#Vp!wDHt0NZPAFeeqRP#blp+5+6H~jw|Fh?pJ$$ zBeo;~vCHR0kEx+)Srf*p=+X+77JqMz%`{UXe%f-)}jreB~7L6+^*0ekKroQUlBuCu^d zGn@I)5}7<4penxH1fD!=OKv%M&O`X?w-Te6*Npy&qt+%nA%S*;a+sv!m8$-V3zvVJ z3wIw8P?md6;oUn^nbwr(Xx&9uB=|6@==bfTFVy`j<*Yex?m;PF0#CP%$2cBjMhy4R zY(w)~XWVLe5Xc0u>lcbep|^J)^iTeT`x{!O9>~PA+1CFM;4>^~6g|s!t;Zu6%mIWL z;3Ql`QB13yMLmO#L@1Z#Iie}}osRV~{vNEdb_(T-uxojTK07%05ZCn^x4%7ZUn&CfrF?QMA2 z?|Gcosc`4Zvo*kOKCA-y*C<2U_Is%{x#V|J6)ROfaj}tDfBHg>apU6F5JUPT^UMXc z8C}~m)P#o;{ZYc4vB)_Q%F%&vHAhK)sRb*@d&>W9%c*aqa2@;${DlXinFup-!MWx{G51^j+sdW2Q3=Xhq>xq8fI~E;k0r6{n){k zPhgtn^n41(5VPqm8{(2R6g1oc*x0E*DqVS5%MT75?29`6>aY0KyZBAig$#6V6_WOk zyP~Y0S8Ii>*=Uc4HAL-3m(z$2{BW7KTJE#Gg!!w7xb1IFh-C z*4_Q>Nk=qoOt5nln@A#LQqe;{|8^1ls~3^^i-7ae6iForqVolJ?W~PVyL%$jJ(!$~ zj*=_zE9*%D;FW|`(lbq=B^cs;>@e_#Wn2{-?jnRWf&MS^j3(>X<51h?u2}Z-Ls2(O zta#O#G4#C8M40h!msMQT=0d;w=~X-N5c{$zkvT$-7a;_hAuGuN6`~u>4J4msXV)ET zbDBFs0qbI`=LQ`Y)5QDV+E`gh;#l?R@vz&N6MR9zam*tR)>#{qCue*-U3|sPBwo2T4x|lhNnE%jr zd#G!84y0S3CTX*Qg_|u1_AGfI*BD}2U}bu3wpi|adhe#_^q z&44Y=W1)3&H`9;yP_Oc5D0)&|U8muPIE-*jZ1taT-P6I?;Mp!n!l|ei7@zv?16g(YFZsSjgX{s(%4@il{r}5dpoFZ@sztr#yi6 z!bgbBRQv1{In@EUgWo;)ke$~AX|>bEoNN=X;w$6|)!APtLx9zMRt(CK?IP`as*uLU zaw}$I<@_MAOBa` z2Bdl1NaqULrF;))C8Es`(nt6Q$=fTDAMStEoH&(StvG86X|zq5WCQ2nkPeWT5GY<{*3vDg}?ySgop^}$kv4$Tuihu^h&MuSqmaMozb zF0Y*F3<7XGdpOTVohz zT$-zXg#0BWX&pH~m;-BB=u4Txlz5*3?)J22x+eatXD~Wt8G!LQysFJvR?(>FuWcjX ziUdP?K)1BMpLxSA>$LX>%#iUcWlfTKwYOF26_&k~HZ!Tg<5kjq$}MLIKnRcrs^oF- zmkfSKx_1ywVolf3Jd26Eep2ZNAEr=a%!GPXU;Z`5T^h~tI#Cw$usz!IgE}22Z3#$o zwGL;syU}g}oEmF!e1B&rMTd?SYr52sT#eb1S9L6?NaCk_7})ow#BxjrjM<)U86BO1 zwizK@7sMymSW8!)b)jdplZpOd6qNGaIspcKfg{9*9q{R7eVEd9f}G@=V60}rNh9EK z95LeT-J$(H>u;xd!jFCk-#Dwm>Jf13)o`_NH~3G!9s7^>5A*lG@4S`Sai0MvrW>zd zw|?CrxZbB`VqHa%mWi(}a{1HZXf1{3pdv#SWYt38)nJjIq@7aRsRn{|uGeoP*z+a- zyNv{?%}YUmq+nonN)sfX(1Q5%6wqV*{>FDpV0F+8_6R{+#SZ|2@1elWkflfK4t!#C zp{S{U@sGefg_O@%<4FIs{qxhlR}jDEvJ0tD%oT7wu5svI0WVusy`O}+*ak)iNbSR` zO10nHV=mDEaO;qi@hdELet9wVzU~K7W?M7kP#e;Z_AlZ$zre!@nc#EZJzD{Qm4>-- z!&~6&tM>^m;Eg6kdSpIBA?y(SwcUCk(5BpVKNIEsf%6kg>XbfyNe*on+DvjR}3idg^aoxMn{v=b$Rpp$+( zyVO9Rb<%ej4%rZq3edzhqe!Br03Cg)QNl^{SfhQaxYE*jBwT=x;5G0t&gDSOy*=X} zrQY5$6Sj0JA&SoAxZoYe#h#$PAoTOEc6`cJ2&71t!@?m)!kU#;<&PEL55Dqv2&5yJ(qZ~NpKdDfPnNO^~MZQfKoATdvB}+sHeS6_+CGw$`%6Fiy4xP>jI4y0x{~t%! z9Z%K&|Igj_UYVB=k&&5jFB)cKXWo*^%0;r`-b+PfluhOOgzUY=y~;=f*<{=hvSqJ( zfA{E!fy4QpUj`WNvEFfF^fUOXkzVoB8b=RMv?DOm4 zH+j61c#g{PYEJpb~tpANn%782DQ~naray^BQ4GRY6dzRzvInDEgLTOI*sKLU*@B;U?wVzM9(z}Ic;yx+(E6>sD092}_~syrUxU0Wn#2UT zWrDu>?@w6vp11ars@i3R$Zhx7@7U_*?JN0;O{TnbTWe|kW$)8=k{9W%Ty>NR+QrV(0Of`QVaI-S!v@}p;Rp>+k${LDa9 zN(eTx831#VDePv1MtOp@@;H$EqhEw0BIg@}(lAKM4p88O9+zJ4pJ{5x5rJiPZUPV|Fxdc^gU!?B?2Ueract^A!0yO-u-?u`BZpZ;@1i*w~=ct&AO zO%x_B7p>G`75>p(Kx8)Kh3T&edgTSkaHt(eYY?2#sr6oa?>?U`=@vF?f>xh4{7Qo~Kfx zo!V-UJDuT6%>`0|dSq9txGRYXZ>J9iYu+~SuqVBdupj-Y*vp5%B>8x&fIaY*@|1X^ zCLZ%v^gb_O0_@VfYFQoOg_*Bcc#~eMOyTPF<6pjgnVAJtUHp`te<_I;-}T*7YvIiP zQzo?tS3h<_?T{YUu<^9X9=}_8zJH+I#qFwe=s_8E-?)G#9)}-V^(4oWZ-Kt2G+v7= zZrr+dnU>GTzMKkvIGYw#k1?kmmv)(7kdN${!Bgvf!>fxGPWZfL#e{@NkEi&DVpnEd z0ZLXQL7M9+BI_~l2wh0ghT%)oG-zZ#vBzLd9!OvqTYq}vSN90WOYMp+lT%8}Yo^w6CSnK}F7nh3~a93yrPUH4?N@Gi8s{~evoA$s;6ZVo;s-wHz8 zw$Y-8C*CFg5(Qb$nXhqa@~|tJed$<@aJ9N zTBXyD$?~`firlqeO`f8S8-(QqIJdHS|wbR8omZv*`3e<%`;qwYesj};(A~lc`(6yLA8T~r#f z)v9-vV5sUIA+6?&&HH8Qz2XeNqPg%`s|jK0^=eRRPLL zM=)qnq?$N`aYz}-@=J;@I;_lx^Qswb>;jU2l0p#b*{=W_XFHOxvRPb=l-V24OX2X7 zOI*Me%uPuo0@N$()&c@A%>}B8U@PwsRUbTB8jT)8n}YN7_=kA<^}mz9V9*~EvJQ(% z=>F5^pLXe4$&v4!1q#I4{9uJea%8rlm_yowjGg;+z>trN5bZLN?!F0L)*3p>SHSUn zl+s70GIf31(Zo)-g}HFIH4N`(jo4t$J*H|MjvA(-wR^(So0WfWOuDOu26l}buW7lc zb-AmFh+%m(j@Gj&Brcjln3?Jf4kcXZu@0)vsS~xnXhggMRIGep<*RqWZ&+bc5C-5_ zBLQ!Fd%@9xfk^1?)md=ih9thg)%$125xAnl6xEqGogsNt_Dql@Yx$$ahVBEDCorR>l#nnHhG^7nin5mDM!wu6rHbRUqyKHL} zbt*XuvQw}RR;aAsa73&qd3`F)Uh2BX`iRf{aH9I~G+pOc+QgJMcZw|0W;&#%<;FF+ z@-_BNlH4_LVH{eN=*^j%xo{;-lE?WC(Do@o;6X!a?isFs8vzrj=>$f?e0H~uFeKe# zDoBcz5F!6f(r4PqC;>so+SvMw-~;)}0-q5?zW{Ym%zqYAORQCdAtklJu*GLWB}x~} zvzzY;F&cH;-h6UX8+gPcysSp4=n13Uv6}w%?`uxIdt}orx>kV0xd0G@Y}gxN*6rh# zh42uF6gZYqpXbZ%GaA&~j@&bbFFLzB=E33RkEhhdE&3k@1Rkx~tMd___X*0x;Bw@k zcWWaGYe?fA+UMF>)KvMassElMf*pjAbzC!VSi_zRvi;s5`hf`2<<@;*awm|t%Dod< z*y2w%aDSf>}ET* zAj11!_ePUEA;Sj0##o+`!6fj_zY1}`ic_0Seua>mp{o)14Ic+*XD(ccVkTfhqJ}LZnv#GU% z-uckKUpHv%BP7xp*gJM}Wa@e;h-25a5&7jmll({g1!uvUKG^91i8`=kB=QC5i5m$2 z6>rAb48>x_MuiQ(GHm_`lOet@Kp$j0d-%~E-^^_3c=ZF6*3(BZPGR|O3|0^0pcF_0 zRl0zsEM>D`YXZdzo?nKko@H90v=={Hy1!gf?FUt0xMwPY_lugyKUj)*3D|LC1|2{t zafrs%zoMH}QUK{re|HDn1k`9h{b zg$8)KqBzp+m~3Tz8Ixwz*mQ#MS)RU^@@}sp7|b{VhzZ+oUWk4VBXnu=Ulr8jz}YER z3F2BucHuxePzJ%QWNJp@+q2KYHOY#=1FnPaAMb}8VqFp2CryE-j;_=Yr`@~%3#E?0 z$VvzE6mxzTI>GEzbu&?pVMZ}ms|i^xTWywf@SH8FO}N8yM_zni1F26s5--5!E}2MkAQGozuU zo#;CBMi0R#NWmcpUnO9uKoIu=dCM7MZcjbpm8dFm^%U1hex8E{TgF1;r9k6gr4M;d zXa?}h%uPQXpn1l^n3%AWyKrLpNJpB?mLPQ)PmbUY`f76$~|KSv1*2o6ClBnA9O?D0?g^1DD8+bMgg4D@us z09?rnM1_98iY$xj_Ok4nt5^z?ol4Bkxu30a*$%kRT6oPC{2hv6Git(fK)(>Q>;OYg z-Zz$F$a{|m%ygD2W+QJshi{ceT%ae=+w!r*77Vk*?m{9=sd`(}rfq(4`0M&qX%8wD zYOxmn?sa?cY>tK~u+OkW(2Yd^YwsSPxf?*uccAVE13Z;+CwHT zRWpEL$K49>(cNmu(;ZUoCCw4+`M+6AnV<{?mYMWF>+r_>0s5W);Vu|U-)vG3_JYYC zzjM@D%;e?!$Ou$kb-$ABthv2I(F0}SE+&qLjEG6`Tgs)Ykmkje^c1ZIRWlZ!D+ zT2tCb=>f-6LpsxJWHoUHA{$eC$ZHgN7eRLM!=OpSuXI)&T`P(2G;)UsjfU!A>n+`*Z*DO0UoneM%4e=;1Q~c$brTFiB^l`B;^npC!b-X{LymO`;os_}} zv^^32!|oBTlpa8(68lImJ_Xr=rt)~3Vlvw-N7!{&0|gH5yRl+zG-6mAm-|w+=3 zfYn*_zwAL(JtRZi0}jbG_IU}1gL^WpRbtaz98r-TPF^Jpv-W_3n$k6n2j`Le&=^aa zy+1)7;*^grWjuaFG85eLb)OL_KI)&T*^iwz@TA^1N>nW6ZlJT?lA9w$tDZ$Vg#Y0vu2YoaFh)*Rb+=?Du~T8guWathw+6RHq=>s2(UC zeW9XGxJl>J<{UVw$sO@9qI=<&y6 z+ zTNz(No~R0ah?AnMhyRUUFafi_f-Eyt1|GvUyI-c4+_)NUZ5fNH2x=ZuPwfftxpveS zxpB1)MA306N9~A~z%D=-mDYg_rS1_}lJrD~JgoJ>W)=Ir-0@%l2|Mj6Spw__rj;A5 zwp&w<%^9Imu&d(S%*`ava4LO4gMJki)b9EfV#+#yOHd34v?5Ta^pG9o3e@J7c(~Ys z;685uqU}M#{2Uz&JQp9#o+>foiKGlEVoMtAvbk}9sF#hv?Y$fgX$;@VS13|KHV|k; zq7^1wml*_Bco^^79t|aLXXbLe1 zn^rM(r2VxYk(pAV3v`UPAh?V`@Ca?+n?FP}SUnf@d`e)w=eZaK4A}TyxMl*9Uqh8- z1d%f846_SX*3=N1389h{8&ZDk zb=@2CT#`5T%zh3|JSXd@|Lt-@jNN_NSG0H$^995PXW46iM!*ZBzul&Tu9njsH%4#H zprpW$G9#|3*lbW#o`2N+-Qw^A$Bj5S%y}k6RRUgI7Pcfudjl^l9MTO%;4tZioO{gc z-}zhgtpwk@2@q5hSeH1VJo1`X;FueES(jm9HLYcQg{Q8oCkwnk^_2#g{x=shW{Ubx z0bu-YrAPhJn;c5qAjR=8T*Qsg{-~au|NYu{%{)2_{4*L(>eb(7r>j-1#CA!{D5dOh-D$^0!Ihr;1kLLitVYO*JNLSX||kKG309x zPHHH2(g0`XGd&~OaHmdGy=H%TTbh0iSV^1=ijs1>m{JUx^~71C09iL={#Iw<3+Pp! zx$nRV(^$~{Bg>QRKN;j7zKtg#p1%TI=HF8<$pO-^F>n&NH!kB%mHH)VIXZ|dgYk?V zN5^rdyVCCo7Lc7H*%2nGPfleMT}BoLiXE6z56Zc%w_dxB4e?S#?|^B0)3FK>ouk{B zNO1n~m=KENq~P8om?S>z{3S|nPGkhOB)9i7&s_q?!9Q{g$J51|VUb9J_Qyr~c!U$b zJL!kMp>;T4dp}hiVGsx&VJ2M!pNpPo8N z=}odGK@PC!?Qa>9@?W{oQ&7wq&7E9Yjc_^8*kInIzjl&3Q{xc{{8PS|bdkW;`eCK$ zv6MTwqZ*7=2c#hfsbJKqFDmN$k-9BVF?X`>G$+Qg!AKYWM z%q(hlV(Uy~+wSS*GE}fH1L*oR&rJC1=F|sRnXo=a&KMi3m#?mS4v0y-twh02$1=K~ zVq^rxyp{(ZdoS?!5xhSrLk-IDSApaIw&b|+m(ExR&QM#VlEfrHJHDgqh+us86@VM! z%}K=csljH8X?ohAKnTV{%u=^%1+&hGCG#|?mIEC8!kSGxvLHsox083w@OeGi*};E< z3|HPtN2L5VDM2l03 z_=|vFkbecsz~o9@F?(g~i?Qelp!^|FE|zqM)6h&d|4Q;%8K)EGeN%xlG5kymv|z(+ zqBZ^u#}_axC|L^K;MR}e2N)9gi4O^gH&4FG4B{*+G2!ziaa|Rrz=&SnYf^?le=&YD zVzl?gIgs^AHy`MuDCF_y9n=Tsa=d(pF?_Jkk3y394TkzL{&o+50gUz`?dG@A$zRJw zbkRzD+)Ap9387?(a@a%CSdhOTC|HOG{BHtf+V=3Zx)Q_>!XYy@^+W^_UXJ9DWn_`Y zIga8OBTp->H=dYq9Pm5Qnwdtq>HFGG)c&05!t-TB=4_yz23@r1d6r!KnH;Bi)O9$W z9Orn6bIfs&bQT9{ zCJSHO=!{c4&2`6zT_8+BpQ}Z9{_AeTIVmSSMx>mF&%Oi~@k)=1cuji)xQCHleP!L{ zcr#~ddyY9SC5OLXVeBjBnik?%rYwq}{goz)fNau0XJeqjU9<$OGH19~_)?{V!047@ z+P;_^=W1Fuvx0+GGKqA}%F=Q5Fry_#3a9wykaT?ngZtm146ttJLc?E09s9Jull!m| z172jKT;$qp{2j|<^eb{k>2%wn#gWYr-M>Pr`sFPQgmzNo5BJ^3W(|HLkY-UwP;YQQ z1dLhK!}{E-R+6Nr@zL@}vve^MV+Jgms5|Ff1#pyhSLl%a3hcLI2VpIQsdHeb`|VXa zkWbO)+TIQxupY4A0%rx0+_(7|W;>do^{te1;of-8N;rB;L`&I{0vyDgH9JVH;OEFXUdi(VrGY(RKoC0UV?7&C2RHP1(tgMciBo?@Cj6vB3QceLZ+ zF=c9GXpsaq;p*OJEvC&K71ap*J)ob3pwjmHKs4q9__&nbgF&#BdKZYd)k2X~+{Aoe zxuBWAeR~NcFH^M!POIwhkUbT$Pz{nXBLBrJZ|izT_kF%!*=24NWi6P|+N5I7@JK)X zq7}06NQ_kfBv~h^#zfHzwDS5xml#`@q;dKsi*)G+fBOH&Uct=tv>2J(yH<691LhGACMT6hmfbUuR zWA}g0k@$pc=>VJ630lE9U;+Fvg+1R+{b1h8e(l{J16>+K9>!%aRM}v~@D)x0Bksd! zA?`BB&Hf7wh0D&qw;Z^DDv%s%f2K^0-sz}C_gOGel5CJ8|HHREFblbu8?gAttj^RH zokWcuNtA%1nXJ9m6>|ze$_ZiZTl8|vehjd< z*sT{qM?>+Vwp|@odUl#G)CiDpyH&X5?n)fG`Dpjf<%lGi5m?N72qu;e!gdUR?v;4LFNnO*r*T7TBeOy->M-AnNn3LZU}UrI}fE~Gbl1Td!(A7S=Tk=Y5NZh{2Q zRuxk1t&k5<3JhMRA2b}K`hiR3JWF~JOzZcAfL8x2z{nX2A|6+QC;iyR9cPE_Ka0H2 zdLhkF3+c^F$Yt<^?4Wf+YbI>lEi~vc1$rUXW{ihn60AJR<$Nyw()yEpKU4ZpF{5Mo zZy7AFkfV;x0*8~=tVBisT@rra30MH>S!Lrlmf#?5+Lub>6=ln-PS7SuagYV?eR811XtL}#zTY^s9fT?mhZMOmfzKogZ?fSbqOv0k3 z4r@bb32mr^@<=tL2~h!2(;tp!XYm^C7(MD3@e+G|}g9k>Uom zew$(}1w!$Qhz4ASN}^N64<9re*~#VJ>L2R7>Exez-c)erbvKsf>#u3zkl83J-tTky ziU;k{8B&9xQ_oD*$lB=27W+5gq+h{4Hjh&@Xo1cZjWVXF_hvr^5qzgp&**8!=EC`7qm@gMRm%brm1^Ej&q(H(ZDIS|VSw zK=(#QJ!8nd&Q>i;m&yuoTlwE^HQt9SbJC9Jl70IUS+5cF%k~Gm4RoiSP$*y#boMKr z;gQGlXQtW=n{&D#r$Dqf<7OT}ySCrNNN%o8vH>DNYMHb`IaQDKcwTd!7zi6& z`}mCtg5aXvM%*2o6X*=MC~GHmv5rL#Z<0Rtfb2RkBCP9QGTpYeb2U6&+TqpENcw51 zg)9fDyX~}G5xvA!7?X|1A@6P$jDyE`k+(Ry8~{@cGJ#b|64PBi=W{r9L2*#oGRyBy z#7g_A`lpZTHy1Q;ope*Re;ph7NO{IFw|RUUf~?r9{mb+4F}=Fqj$k=4>mczht6?RP zk`6MnQ`*n_k%mpc`8VqJR{w|{$9-uVuo{%Sn*@+^^Av8-9^z<1h;yxk63!*M$pfv6 z&R_VJrui?3Tbz2!^h%xQ-OYXYwAUTksTnBOr%U@JLuYuMa$GWewFY3 zP=ZKz-QU3OSkv}l>rOd8_m4%-h~q)g=U_*a)8e*2*XprxJQ^I#zzznbw)iU}b?QS= z56_a%=CtyEzq`pZDTl+51z$$tV?kd|09Udr=POP&*UOa&na6h$}rM?5bTTB1u_Z(kD zw%wuPm=5B+#k>=Rs$zwY250ORx$I_a0TnQkpG`fi{xlt0^O_+%DWaTt<1igz0^}!(V&*NaZ3LvJX zi?fgO&`1#VLY)Bm8e#C{b4c}>(u=agbZzgc=Whp>oT6urFZJ#SiN}7;dti@e4?iAo z;&?=o1I9~%;{hQ_uVwu2LC!P1hHpX|BdEma~UaCBh31#`h zQ(FglD6I0%BtU`fB)VEzbJL{kBSR*zrfedn2oS|oA+fIry4BBb0SuGMeh<{1O!-6w zgJ>azNP)gx-G4Vyad`N%Q9X(~rhjk!0X445e1yepS!6b@RD+|&J6QUTCJK7sg z*Z-xn^j51sKQh#NpCxn9)Oi7B)+V&1kmA_R%y;Lr7_q1Mpmc$269>lhlup9#KIr zUsf6gye9TOb#Y;&7v*n_2%UJquClFKg=rXe<0DbPItIi*|3`eQ&F~R%L#xW}iYlK2 z-X>V64K$N%<>2jE#^i zD9F+k?+voYQ{oJdTpcvG$QaE=kTdq2j%q(7RqCrFO#{=r^^&H z_w{Z#pHBv~uW=NXid+hI-v1R>=yA>w;FEvNOy;?(B>!C%>X07ysAy8-9mMN}FxD2- zET+JACE$U00GXkdt4l9Z^&hS<4#V`#rB*m%=ulMSA8rbo2`B6R9Aj3VV0@lB_~Ppe0Q2i1=1X2E zz=)_p-kV~#Zn+VG=9zR8)R{^TGk1oh@FFyRupY!t>K2KiqpSMJ zk0%g#b?_%+&w4-}{r&1oXTw1bhRBN#j~4qTFRtuk%?Ma5Q8x2@PtsoBAM$MA*wv)h zHyGI26eOSa0B_&l2?Q*?K-eirw*wpgZ+0VKrQR4i=T&dY-!3mCUr^Pz;+ng|kKzXB zc*e~I>vMn}el%N-M`;o)OTg8F6fzm3!^+fwF?Vee1gVTTt-k>#y14V>;7UN5|5Zzp({z43 zO!LY7$gQ?$FD9NRVhZb@@K0XyU?Wtsq-9{^*k9=5ZX$aXh(pp|ma6v&5MyR|$r%}9 z0yl8Ndm!(sHkyK~UvgUc{ES4Y?zI!`dA>ZIkp$_A(DaNaF)Apo2i*Xbc$NG{rP`kI zN3@@N?cHm!UNxnZKT5VAdqiJB=^KZ{?V->bZsE8!ON zrZa9`1veZuw2Qz3cI{!D^FMU+_f~F?LxSHQgK%nE(t)s!VkWN5^hu;TZ~y7<#hmQq zQj@F6A>Vgk7~Rj2UW0+?)CKW}ZU60ijGg2>WaQ}48$4J*HHzq@y7yDlp9B4IMs+wV z)_(TMGhU#)n6`u0I82F%dtHYi_&F z_ULmuLOnksaIk^N{(=L$%Q^4f3MXA;gu*wYzmR`VJdsVJ91LUGITl*tZ$DT16Y7r3 z#f<0M{^}|#eafUsnUG7zK?ruyiO-4ocT(>RTs)xB7r}!1?yPmqZ!mteVst+x-KpU5 z+M6=`72`Aj7E#WsECr{}6OMlp1-wOKI^h;IZ9Eo@G5B_{nM^z6@o>xVgyO0FW5&CT zorlL}m12O?W){*VE^n7A#Csu84y29B^e+f`%~WVjasdp$p~wVs>*YshN7%_10>XAd z{eDH4#7O#2N%Q}`e=Q<-$jKI{t zJvK|kj)pzUbUaGKr|h8Z5i7nQ|4^s%Bw^5d%;d!mz!(2Ahy@5g}PflQnKppN@7k^Io&Yb)&EX-f^Td8CwD zQd`C6-Y|^F1I8P3GbXU8muloj26;}b0!U_Lj#2MsE&&)tQ>`w zdHG$+6gM+w!adQXDK>8 z+8F4T2MwtrF4d_n@^KTyb9CcjF|etQk^DxcN+AG&h*ZPS{g|pJa$X$u`mY++EPAdm z6_Xmz36R|Ny3X1$R>a&V<-MF^6V8;uDM+KW3~gXjps-XhV=e<25Rt8npjrm`0b^kO zxKnf`(#|vnkJ~)6lbx%oWVTxqU~+S3F{?R;mRM0@XB(R&2@r?@@G}1_f6}|q&i!1k zrcVx_i4b>9QRFqSDI6_Nw~_M%|FP)Nw5Vn<~7KdHF!?3UW+A!66?9`jP_J*8_?$HTjt?1k)=bFU{>=h7&gY zLcn3=k?dyniev{!%=1J-&RNK0$>YDz;uYR@m9P10j6RK3wBFo4JP8!&e`AR?&2qd$ z_{Kij>Zr5xky#?**l!)63OEDE#>^sG&RIH)s4_uc1r$oala5M8Q|N3={`Knny>Gba zXq>5QkkdO`5am0dyLSrRmFy0#OTcTAB8L>BhIld3+!-`HGGh#XO4_k%dPu(bZD`VW zedg8Z$FZX$kv#`Y0|>X?8lK;_UMzQHFm(gN8xybRp|k5}!V7Am)U|IY0lxT|yb&8` z0@52)>7aWTVY=UW1z*R|C=amg(YdznSGrbbaMVEJnw1=gZUyX8WH6`;J%9yRI-k}5 znPXSjnbfOjunoI$8aMjS)krk$^<@AClOyQOAMXE0Q~vU6 zzwnzV+?x)xK(lsZ?~)-A!yKd6xdH74)ApGM$2=zx35q;~^6NuHcqIeH>pJ8#Z@;SP z^8=cB@T^-HS_HA5#E{3wq-Dt)blTvG8~xC7dz7vzZv40U0nOwpkQc|az(2|JV!1AWc8D7@<&XjCmoE@Iwm;Msrn`kQ-qM zA5ViW5a+!KW^5+~&uKflWz=EE6kTkNYofA<7cC;&$RJ=P{zVS6(=$z=<=w$?t0R$8 zhT+=8%+&HgFr&k~Dph+{RO~uR;gmTGw;6JU3E9t%lSV=g_WyfH4@uZ=x`i~rj$xO^ zd0$XkQ9Tmo7eY^gto@P}c-OVq*P=HPtq-m%%(ZZ32F*&M#m4v5-mhh&$O5uJzabrq z6V=fS9?%2=lGP>H$o8PG-*Q^Uj9$MW=C5=!;k7wH4+K+Y-zV1_*+BV!s*nNgVM$=e z2dQfC+|(SDd;xRPlgZ$%Psy21AD)S*E8h56hBzW_nMjU0g7HXuR0ydLmIM)0B*VJ> zq$=_+)(C9MjMwGp3AWC#S;-B|7tv6_Zf+>}ix$U~U2E7!h^Yyu>dnl&p7Gf~FWUJ9j_Z@g5f8gxmg2Vrp{I2IxHM z5xvGCrcg+w#{xI$pInaPh9+?KvO@Skp|oC+L>;K$82ioO3SOP{lTOp$$47W$x>(Hp z`_xlO6~GX06Z|C*1%3}3Ep+O-?1Uq0bs;X7Qme|o8Jm;fhYB+qI8{!@hk=d zWkA^y0}}H%22OMhvCX~I-@uQ*&ctn)t$N-LX{c$g+co%E%f1}7f_*x9UXZpXe38=# zzeW3y2DqrprmsCsyu7X%_QBT9Zmr4O*Yq#-`>&pzx=aV?*T1fQCn|0GrT-4NdtEmI zip_PW_8MH}Ap#MCwM8btv4_ZOP}#3w;A7&i=b&2UqIk18!jQbzgWlZFBzQRMbizy@ ztKhX{G{SSUnq75ZFX)yD;aB;ZVwDUA<+{;gB68RfZPT>)zBtp{j!s0ldu3XNLOOyJ zhmJbhsO@g?2hFg3{sz{N*LYpO=zqEu5fKs^-Kyr=aGVwIKAwQM%rkkgJO7CTJoPAK zb;+;&n^MGEiHuIB3MJE%s}37RF>|Ib#>aA6c0#X)Fb^+54M zD8|{mK!dJ8Zu9QZ*H_N`sO7&a;Wv_}T2iUYyPmrVzed+C14CP3KlLeOF}Ru(>plJ2 z`uOPR+MA~@0z@~vi4|uN)!eba*eYzdeI0T>ynPb;_~Nsf=Er?H z#njagDQ!nN)-~I~Hmh1Uir#j+r?}K+6jJv|jyAZR(7L^%M47-*A048v<-Opt_s1a? zwS?T}UnGx{#*QoX7G}V~BU87^?m59IO>HqWTu@cCsVY&;wdKcylZP*lH1X1_hrZqA zQp^(xzu||5o8^x$Z;Qt01+@vf4geGa1J<&!N$+B z=mN><#;UJId*t#Osl@j2S|#gS+jsw1@~dqyRAqIw?NPCl%fn9lA;ZGj{q+Q!xhT8j z9F-L5m^tujt75z9v;*gA3ETTVH@8|vk;C7_*a(ecT+Ti3ez!BpuYJvTCgP}BrAW52v~1P7#C5Djq5DI@ zlZrnkf+~Tm{iiRx^5V#Xm>*fqDw%w2*myozR^rITezyxo?~N>y1FgM`t3>T<+J=|4 zevth5KyLjdPkWrXb>6!;TkZaEz3C+uLOQ?qq%@HIZV6e_Z=y|hy5^{jR<``h_vZ4K z-{`q*g)`=x{pyeyv(Q?ZMJ@ae+6`9OS@z~oOdd2XMbwJJUorg=;T8DduSo$;$;WM5 zSDG!@Dc~UpMP)VSS7^y+s0)S6?wzK5R6PsvbleV0*8w&h%Ur{P0JUScIDA9O(E6Hw#b?HPkrx%ZJ{h*l`0Yp(?5sudcwp$*_J=0z9XchVmuY~-5vz>A@usF2b z79IzQ07BTL&X7n4A=SMfn9fgi!XB)tz%bxHriH=&pW6l_e+x%xKRr012bY6}nW^9g z{53yNma@X9&?l42(_uDsi^-mAQMiiOY*J~K>?N7UIqI#ieqH>cLY#RrFJ`^l;A`i# zaiC-4d`vGU_TMQ?cf90BtO5rkvqP#8EVut=bxp*mjV8JKihQiY9&i6|~Uf{;ktiA3>WM6pz{e+7# z8G$pPtn{;@_y0yXet3qUm|XBlVaWJ`yACZaNc=(Dxol>O=InxyU2NV*X`VGTq^mlt zmEcU*ChAmxM?D{1$1Zt4lLB-3_1E7XjGcMdwLa16TDO4vV@i8Vo8ba`QM;jJnGf)s zv>sSx3Lmf?TLzTv`Cb5Vb0d_(DNGtYzL#x8%7e7m#%XOoLk)T>nkaW{TuvkEn(L8+ z_m@LdkbRud#6EnD1UeTPtaSSmv`BcRdkY*7Yy#8dg)sD_%H0RQ7r&5%B7rjV;lp#6 zeXMGrz(_!MT^;-(&A|jdO&b+Cqd9T`!m~rd#(VBfb2{W$a7dd{0jfGfDwi&Sn0giE zf_}ecw68*Tb)=sFX!ABmg7^Yfg4T-+7MA06C}rx}NbJGiI~kqkqSPK!eh$i5RC?-> zh5}s&&++4(b1ovT3VX)O6+=gWoKat5pU0`N5k8Rcn0Z%n-fxvLO4+*94zI6!(Sd(>Ewuw%tS2%9}-R0i#38 z@ennrHGF$|r(mXvxtkF!59G1xL)c~iDCYAl>wn>0zQOkfah~nUF(c2}@cy04whF-+ z=M{n*2l%x=QGEiHb;DOiNqgJHSq?Rg7%MH8&Ct!Cg93P$0J)MiTafY&pCo+ehjKpI zZbF+mE#EWEvX!amq;CFSz8fqV;68^&u|tU(5zc^Xe(i>)Ah!dbrVTcbq;7{Q1>te* zc4GLW?QmXnt?2Qo$2cXUAAFSqf-$Ahb^{gJanZ9(io1TJNr0?6k>lbK9y;Vz5~QwKj+;C{=&isT0ZK=|i@-xlEZ%}8`3+43gRF4v zV9GzLcyHre@{{(+iy~H32WEFp^Hhe2rz@KAyF5fsolTx6?q2F;q7*C>O2%~#}XFjHXi63z1+5COjxl&e# z99ZZ7zxK}huc`kJ`)5gaN={NrKt&LQ4e3%8>6(CqNOx|80+I$uhaaR%r4<;8AcBCj zgqxs*w8UV8?cVqP3+_MQ-cS4CJkIub=Q;1!bv>^H4OaaZU=HV#e{vHmSeX~M&0o^$ zuRV@EE=IVS9SW(WY|7i*75-%8-frb=v+3JlUfN+d%@tBwQzLBg+@hnivo$92U8oHa zb$hduP{T&O8SpVB^Ji6%#s{LveD{&3JB-=O^vzk*bf$E0!|kMI-wP!5P$AzNPoBaG zB>@_&zRBmtcjf2r)E4wyf{`{V%iU}K-~<1w znVzHfm9azWOTE5p@qtBDC-PQ3sM?CI!BtB0mMI`%f-{E=**K>mv=Eo{A$%Y)kh%UW z_SCrAeSFiR&zhE@#;v*{mwvMLn)L^{bq9w#da4AE2cX(f6k`bY&G zxo<2%Qw3kwY1w0bSVuNY-(wE!)_c*ae7+vzYSpgoDgaqjCCP-nYl0{gTDD~HN>cO^ zcDyBRV+{9KeRJLQ|?ybnL!X6RX7dB6?ih-8Awd`nbQ=1`# z9xJxqyj<2F;t~tFRG&gU9(IOrM_gX<_w)0Q+ohc!^x})( zmDUrt^(6lItpy!lp33sIZAtVu zs0B46jMzm$dG}U2UsnG*Kd}Jzr-JoMQzISrN^}#wzkp^2OLE@nx5#B8W`u}*cSz91 zb+yJtO(9C#X1paIz;G^s)U9jpPpRkksc%WtEk8S}6)>OBdr%rvX-qL#6$gz6jgtNg zJ6)S(++9l7nmO}3o?^+QGc3xLyo2DNuhATQ-tYgk^u=N4IX-C=1eCD69*c?NKVSM> zB399?)OBVerj*mwY`F24U!A)E*Hs>cH_K1b7p`(_KzgGm^-xA1n0==v&n>M`kJJ^a(YrfR z_0!iAa`Q`K9%>9!^AJ1>H-1Yt+J(;(dXsX!m`n#j#B*2uhXQ?mzBG=CFyV^a)LaE) z5BK2=;58jS?FSsV`o{(wb=Oc%b{>oT{gY4P8yRQPK7Zh?QZ_L}2k+)H?&_8OP`(EW ztA|lrm+V!gc8TxyK+InJnlkH3rEIv8VmSjP!ez=_d&A3M=LY5J+$dp}u@k-zQGs#`Wp-|D+@ZO#$<&6C!c(8JJ<(IE|i;iRb^fkazPpM_okkalCz;NGh zZ1(YCJLvm<$v!s|Wof_AvpMG|pcTtz&;wb3 zO$A4uPpAHyzr$)rkAEJldv9M4oUf-geP8vOgWrl>v7TxuNtUAPOczW0jKQMjwTOtruI z(L`RBrMeZCK(vkZ-($Uxb3L|KG0orVr%prS#(T3muDhJQnNL5u_4TGSm&#)a<2S(1 z`<7KzD%fXW0RvnMv|{ygg_+O8!jEUrJKiW!b>_&dFl7jQc&n2ZW^}oS{vh(hBQWY3 z?bW5~!j zIQS#5T1BWXqn`?FE!MATDCMBN@*&v$&%@1yQgx0IQ>~Mp^#8KGbr^?SU23a#M7<4M z;~YsW2O1Z~tkbv8R?g!x9p!+i{B>Lhz2|$+n%iXMdyIp+rU%MdX|Ts1iFBZ_l^C99 zHm28`U~!!0YP=$t;On1SBmUZ%hdq_7u>AIuZyDaSiguxkUp1#|{F6x6VsjlZ5GYrB zSr(8<^)~|n!96q@W)m-VP?Sv7-dA<$JdGK>+g%bg#AA$6c&de)6i>xPZtjm2Y`-%m=s$q)O`Qirjm2R%hPThlb%uTf=?Rc6S zsLyhY2tW8mX9ZeyS0bi)-)Bk0%0-zC*rkPg)h8(5OZe(ghPYmAY+yX>UFPswYs$-W z*Xh~@iUY`VSLwJ)!cXh1mT&}*-rHQlyS*%^;A0~Yz4J?p+F|>z>ObRA0u2uav0Xe3 z9+10`L=x4*F}$1fMwEIF+09t7K5XAG_$2!%P2BtlLndOXemQH6n5uYcWJ zj-~_)x4_L=STVfbo0DR|&@3mdMwtUef(&X>Z}-$vZwm0keW#>`IZGQC62E#;V_k&K zc|JlKw8(X4?onMud(Pi$<;aLqnfG>lJCo?t7+)Uyz1bj|m7=+~Vd1QyI?`^F8E?kG zGypfi#$Sl8ocd(*+r?p5E4(mpxzMg;H@rNDKGN~O(f^t<>nk!Fls$K@-b8n@7#vR! z!!e}d2c&vQ)6`YBo>5TraEzXU<+G@v=dASq#FyKzGhgr!%oih|D zxje9;Vw~?IcJT|%9er4E^kdX3GJ;wEf4YPWX)qcHwjbr-? z5`L_ZY_N2<>B!mB2h@eWnPKnONY{?dI;69Qf#Xw01mVvz4~U~xL2_lQczamzy1cTF z5B7OzNnJ7dxuRudaZ~LYkJ)nv{ZN`WXO_NKc z^-bj2A=m_^ax`w;O!HM14{jQkt7RkT0|I`Wr0v+NnxHtX+2z6GS5L3i{Q310WG)Bz zv2D|VOG?)=FWMlLpf`J?dXS{(VOby!6ZNg^!(HV?w2n+Jbtrxder(<{KhP@6pf^ZQ`QnmrefF zn#8>dzs?Qa{c&d|1lhzh^3li>W$H(r_ld_m(1waz!O`;r2lKrVZ3=Bsnl-+DO{;c3Tss z_r%LdwMbgY{4GCvOBCF1wrOKZR?Vlr^`>qe+q!^`U~hm)Mj#0L2CPOqtN}-#wa&Bc zv>yykGonN1XrhBw6{Y|Fq$(s9wO~nMF<)Okh(`JWwoF$VCIp(@J_{5|!m2FgJjuTg zz(a9<^~Pu8PJ)%l+g3w3BAYN&d!jafm&beZVAdvz=pNJ`CQvB7jNut#;@TR!nL`6V z&7?aSV7eTsVe6+!r_+xg@9ZT!8+3dy>uJSWMA549SaNAtZd#yvO3Cg^8x1PjjM(ml! zCDBvoZ@fF@Qowj|=1}V^uDXP}zpIB3kmm<|Zh0r%m(3<72_cpea{^lim%8T1R^B;d=Cbo@@~ztG#H3ALv5dsO z-sFhHAgmDW9=!L94skX#BBc)R2TNQBcrJjW8~*1>>PNp?!zNMH46jJ^^7Pcjza{;g zC|>5cQ(Rv+X;Hm&R?S5NKCQ<*r$Dmp;IOgCYtF~81_>m!d-6j~0-UDVX z!HX)8Mh}c^ggKs8ReoA+O_M}OG76JV19n0IWxHNH;{3-?@P*Ef;*c)?Fd5%C!~ z9^~;#x=XI$nEmRNFjgSE{WyfK6k%+C#(Ez%)($)pdBW~6cI`XXxUrtM4B542SUyuz zgcq#?^7pnrv9m1e1UIpz3wjDYy?asW)l}r|P;klt5y!l`Hqz#m-&BdwZq}__oco&M zIlL59;c9)^t7i66U$+4zEOK-!rZs?nOH*+%w`9$#Hi;Q@yr||{s@X`>mE*eH>h7XJ z7dAt@d)V?Zq#*wtK_n_4i<;dZm|qB0%VB|EF`0N1^>6$69dMsosTDhu zfiA2E6$JC2e&aHW*bXR>f_B0UBPiVQZoY zTfG)G720?GwQ|+acW`icXEVxl2rSycL=TO}#c?^VVz`X#H%vRzCs2zg2qh-N=Rrom z7?}RkCxbZQOq$*fYWE(NJeLVlB9ifm4j=`ks~}}hFfoP9YG8BP@oK+sb>6pD6C`KY z(#~^{et}v)rc2v#Ytb13crPHbr&li9i-JD3}GcQB7ooB0R zW+8{Yk$R+}`TEA#RO$U%rN4OZES8eCj25GviRpX5vwFrgDFUmTfL{cC^mkp21B6@W zx{8w5kt>*6OyJ=u0AbWL0Uh!^C#H{gZRq2JltB&-U`uKs@ zKBXlEI9f1oIux>W_BccXBaKAj4`gk+BCi|frQpP@thpL(N_?$nb5U5he8+{;JI*E| z6)QSQzoucnmH!p(4P?a+Xr1i+JwZ}jEE^vxURay)seL2DK`_JyCXTkl)>>^sfs9i+ zIUE%;6-AjaKpuUzFFL~5=>4O-IlWD|WG%;tbzeUdU!WCBL@%$qC3L6bd57+5>Kj-T<1ak)F+BMH;N~y506R z);Iil2FcqC{6%`WP3aEsCOMvs^#Cu*9iy!arAq?+K-pcvYSsO>DU}9lH!O&TGK9-v?+72)-Yi(f7RPr>t=4?es`#+;XY|AgzCgx~K81{M znqT_XTv>iW6i6}9#pz00E`^qa5e!MXgQ|iJNyryNFr8P`Mi#fbSF}EtrlzziK6Tu%P)dfx zT=_Ll=s|-$PU{xSm$5_Sah(#yan8Ae5>ai8n4HGQKt;i zAmJY;4{A4L_mHLAZ&pw$&o5@`gPLB0RK~n6y(Ygkl6?<@C07# zKz*oCjSX4VTH~3zw|y;zOyA&#dix-lHCH#Zp>CS}WLmZ1Dl1N0I?pkhsW;?F1L{;I2!!OUZ3_ZDk}77)x=O<~p#H+SmbGu0zx}QXhtF?~&GxiVg7LY7wG8}(f z;`t{nei^@RI9<6QfHP_zq9T$|G_( z3%&k+qT(c}i^r(;rzqUb*TI~RQz|t)ck%)-`Tq58uEaS2*hC3=DKNgi;S%o(R=UQ* z2&?v82<}?tJkvsL4*1^K=ZK zlNAR3!o(tSp;y4yj;E!aYZ}78vsKd-2H!C+KvmmJQv0*8qYjt>d;D1x=2Y2@gk;vk zxX@~}yeB=c8F1$EfDLE?V!5QRO<+{p9+$SJ2^=95mN16Gi0Q|lVTR{Gbt{=>UB-t} zv;)w|3t|QN)&V#kKK3ebAojFjM0#VtH`Uy=0u=E~s@CX9Zkv?SMW6|KF#PFG0?%vG zI<`DmNo8-M0tKqRU3N68HP*?{z(oV%uRkgD|K`1`@@d6eNavTz&EUp(u{$+#b2>vB z6L4+rHI+cv_l*pY(0d-nsn0TF2fDy*s&F}hO#^-#g=Q~UvT)Jx&JO*Sv>Op;pRiA) z;}yN}*Cj_T+6i?%I-$H`dkJ>e19l+~&~NXTl--25WAJh)89yHL4DN8gEOGkz(1#ZI z*pnWMTM;8clOshM;7fK0c2Tpcvsdd`h!7P27*su5eRMM)SrY@F8 zX|wxH&5;6h-T=8!ZUvU@4)FHLd|2!eX!N+4t{@}s3S!r@4?4S3+zD-U3_a<557i|Y zD1+i8v7V8PW*JV;^?gCtd!snbU;H#S&%)wv5T)hPBRRs`9&KM~x+=+N*)JXgIlZ>T z`SFUhpyds@?|vXv)Fa%Jn_~9d?_u3P1=ro`9OlVPzfP za#(YUd-bC_B%UI*ollaDEB{-pUvV1$d+Jjl+gj?_+42BOSE%px8-2*MIPlbY>|Q(s z;^qDXb6?%`!VRvjE>S`!Uv^|04#KQ}VuTjwy=a-VJ> zq}(rFF5T0;9d*b2ebn6Xagnd1HXzzw_*wgpQtVJ9eik#?axbM;GfJPt4|P17(o-!bm0F-^jb07pn4_-J3t zZpH%jAGg|EVv^h!@Sivto0n?~RY#5NGEMmv1-l?@ujGyS>bJb~i;7aZqivO%jNfO1 zg~wDLjhx#SoCzzD3#l7xDLZ5--^mf%446dLg9w7e;53C~(B4M$B7Cvqo_`;*FY&^i zcTK;-q zC@j{oe=MkPGcTXLCuUFX(#cY2bdG06!#r4Th}uDknl*~15g|rzwTgc;Q;iOsd44hK zIxFM#x!$-Vx0zl6f=V>W7$;1}IF42zv9=lfVw9nq)R7LQ^OEMfz%D;Nk0we7UBW|04+0i5C%OybMKF_8uAv! zaPER*W%TQADG9^g^>suH7chU;zCD$h)GCT)k+^GSeuIAr)SUH`XkK}U{Qb)BJPHrG zS}w&aZiq`fx&I~?tHKknB?&4aCH0U7iKkO^zJobQ2Zs}!LIS{$q=41Ds%nHRi zH97$<=D*nTii`#w>m(;Wnrl0Pp#Gqa;MGTi;PTQ)Z}?Yw23dYEX#B$=$b*#-FaR68 z`n!W+94h>Sx%knmH5aQFti|c@mm_-1Qi#;upLu6q=1%q(+gTgV833M2=!D|^*87U5 zz6i%J3fSng%&1wWw<}Y zeRVAvb7x$LUR>}6)p>n)M}^;5p+^xe-+w@Feg~mPofuTj9fNMMU#SUQVmoW7ss3yj zP5(?bgzknKyLlNub_6p=8z$4fq%(?_6c)ODIb(QUJr}&yPLRjCyUv z=K?GfX+)m1t09?HXcs~~j~++6BDa_+|3P(!C>QMJoX^|tUjgn-tUX^zCl z7a+3>e%;H}qn!?p0e|+VbQIgsV|}8Km`>#3;Xpj>Pw>axmoeKU`=6wIKFYy-#Y~{e z60x!T3C8}%4#t!Nh!#(B09{dOdJWQhLyXz!ns$S4UiS$bQ|E_JzBki07UaJC2Cvc? z)XKLffSZHx0CeyG!cIj>LECR2B-p*0v2k3LSpEZn*1G{OH5MH|2}t3kO!r^$#xc^p9ek&5!tBx)7X%`V#D)L+92cj* z-)K3rep~h4DJWD2^}G!C7svBfd-X@^g7sN0;FZQLF^;!SFuZxaJvMs4Sl8-}V6{Jw zoL587oqI>x#6`3DhL>4Sv4{&(wJE<`Z?P-m1j5k0=kr8RLMo9*{y5QY)nDq(nWJ!e z#{l2b3o>~9_f?obuP7{g5o@s38osW7Jbwi*M!vXXQIGsQim&S4iM^np^jScOV?^*d zc7A6rY)Y<}IF2ugr{0@bzomDFvT#__f$OPfr3sHf*a9ynFDo4C0XiW8Y~~J>(*;(? z9UOY5tV^S7=o>Z{8l=d+X5wImB1pC9Rr&)9Qw=Ktjncd9+&1(wm^UGs6N>BBxGkn1M#C*rf&Dij+Nr29GxAwpJeD^G7HSftSGjO%uCQUwQ`pD_-7M^ zEBHyrJ;4R1PHh$5ctS^mxn-lb$n&Kn1;`VVp}TJ_QO_R&If0iYfP&NX!pn#I7;-kU z{9?@XJNaD*`mQnS5iMEd#b5A)J$_Rb*1jEA-*^ZS-?nN%dnWX*?78<1b|xI^6Kj_5 ztm#Hl4U|8oWXga67kVIr4%YxksWb&c2H-FOspwJs=@ef^)M;D&jdTEVG=KOsCr{+{ zPf(#v8}1RCpdM5LBmGl973i(ywGVm53@nHj2lJI@FOm=yHcKdJ_maPl#9GdXYfZ-) zGXh3@s;uTrOH{=W%-cpsWnMv@QuY1dt;<}w(SBv6Y%I;okxa?Nw--q1Zg*|O0SI3! zKzNWr;4EGBa#gs?G3}IvOP*Fh(2&XJ89BAf-v9#lW6i^EqYMZ40<>lG8OFrR^y98* z2YRO2ie65!Ewz>Xs$%jFE!=Vx^|!m;AcaIyb4J?3Ii5g^%CkwYZt$M`AU1 zRdL9vV?}bA=$%Yj8&0KE7IFf*|o}HuBlmD^9F&B6JY7fYwlN%Y2M2-BaBG`s3a@t(z?m9N+B6Z*uT=v&O zV7bJ8mZnd21>0|9)bp}KEPXI*)YEsO3x~S~ANVukQUD^wbLdwWv1(;*wEAxsri^uy z97!UeRQmT4ja5Xh%Phxq@Pmz^yNP}~I?qFIPCCeisPvJ;4kzCen?-u)uE4*P+MzS` zCS?7Re{-8H4!!jF_UCDg8lE(EBJ~E-uZeAoL!|-H*7YX0gxWW*Y@CddR}$3o-WU#W zFWgdxuZLv!J3ri{)6G3c-PQc5cRr0c8&+A&#|{`Xuf1i{cl**V@$&jQ=OJOhspclN zBIymm^xMweDEX-Qle24MtJ7xiZqY`_uIhR${8V^Xus#WXmJ*9W00Uqt5eq0*98xWT z?)+fZ;*-!ekJWzNYF5(3APE{mK{pfr?PXT|T^7Ad*YN&ogjoM`r>}0j1q*1}3%Gd3 zr>Ag6_Hj94!7Sb+^&c}}Z?v&4j;k)}pNjXK*G(p~vTjDnBtTF|x!phsoEecJiusPR6^2B^h3-Ps$YN|@{N1<<1|*!^Cz(T0s%D((Jx+Jc+UM_ zL=f@iMK-t{D?4C=ywdM#*G(6;f71C^)xl+31BSUdu_Luxv5{!#!m32D*j06>_(k+z zp4v`|c_&*C{4F*a@JD6fGg}0hIk1iRkX1`0MHBgNqkq+J{LH+shmBNlQ53w}MzmBq z6HT=VH>I5e!<8762yD7EmXtrm@59OZ;eRE^C9OMl>j|4u(%{ziZ^86Joh#0hbH%r0 zyH=O~;(A-O*_~eSV9BRhSM|*r7CLSNjAHXNv$f^^j-yHW`oy1`2^T-`pfzz(-{V`N zYYqn%fNHE<7wgkFZVUAm5wz0F?dsoFOLgepw?o|YS_WrF$7*Q|$YYiiC@NBs0|p_n zMSg6nWfIw6OR)Hc@c@RuseN;L(yzEGL6edJ;;OMH@PfY{xRQy}^J{D~Cz)~7H^0fq z6$V@u58@FND@mAq*?s!-eF-_fWM;mt=pu-E$p)4den|;^j{jdr5ZA$V-^3R?IY(vP zON2uHCQ&g4eu9Oe_V5Q$@pH=m&VS}8=Vb78e)w~su_?W{=f}!>W_@|Vjr%Ogwt&mB z+|=B-;4SFd`n7=7M=h}sVEyPE*{z{e^wG zM2SI)2wx+}gPvuVuD7uG2A$oDi6H4rc4U%x55F*t-j*(m>ZXgyrfDmnKS z%={E&l``CX)7hYNG|M23aUmD+Yc=~Yd0vdp?utM?%dL@MAp+) zn9x==l8!U!*&S8q#=qXk#>sAtNs7HMkF$Gj7w3h$&rt z7UT5mN^}Z60K%iB0f0;4M5ciw%e%_FJE0*NMO!@knbi1Ud z>tzZ7BTu4S1{os2uJWK9cF!&rLtM3D%!w*3lBkuF19*pMLFAey_(b{nz9cR#U;KNf zU^M&tlGpTPesS{7UL^ZF;iFF*@9IhlXCIDuto5}7XkG(m*$T%a*+rx0WO4={MiGo) zY-=h^|7s^Z{FxcDfUsmBO%n8G=bRWzTg=H&Kc1Sg?(*m>nIwjMho!z@CglO_xXRn5 zu7ZOZ{OCP~TxmUjpAa5XN=bnhCdsU+1cbS{f6M3)vWuKnrgb^=hEjqg zE_bueo91WE4~Y5Sn)qHiGwNgZ5HCVa(ThM2jV0{G%70<#(}o6Vx~S3e>-3TL1P-~X zJmAr!YsRuy#c_>#msEC-jN*U9T4jmOdGMM=I&mr;wXZB>nvQx1GW|WQ+99-#>Huq$ zeK`DMcUbI6XB%Y{fAYKs^c+b`amq*5@6zE)RH!t7jXr#rocOl)jsxJ$GW$Rm1wQ@G zi&X}?lVkXsel~gcvt!@nfKwzM^17gUf6ALc&+Ee<8)Bi)bV|}~!D>ool0d2yXfLSl z^A6$5u(69|_ap&ls{jg)^=z8?9|LrLnPj9?` zd;D}6-E@od${s(1&A~}#3pDLKFuqe-(y{(Cp(Jv{ zkJ2khj3vah$yOdtENRJdZc5X(4~Jj0u7`n;BD$OmSnG=yQ4AMBmyara<0h`P;jCJi z%~=xSNe&m|^w{IlpD-CpfZyekTz3Zg_=iov!^*9-E!s^3a~N3=fGC{$jckr#PR(lzwaZc@{(#A<+8nbb^6}I?38kB?0p8BL2gq$W-58}Z&(@6^(XdldAO~F$IE^J;h z&W01^2u8Eegl000q}MO`qzjMNTz^FxyJJQavP_v>c;iC*lM}SsVt?JTFLWqp$J+Kr zIGL-WqQlj*2T(=vWO;mC3eLQg@F54wA4iLc#l@4<2cW}&lxiBez&GZODJpN*UMuKZ zPyT~gs;B7s(GOh5nSSKS*|WitcqBVE%^?qvFNER(85x?m8c|UHPQ-Q9ics7jo?OUx zPpoOG4m3%{LuBEEjJT1UN(IgOIzPW2hjZr1&AO$7|#F1$d7X`fq8F4lHY7rDH z=m8@XYtW3s;O%ZAaAnL1DHE*I` zJFF_SME1@KPTw93=vrGob+bYWgn%E%ev0ga5)J_hU1pughm)hO9m=j>*DuAQyb@Tf zsSD?di!oaI7qvt=_(`gBEqNavr>2LGKIYu(@mgUvu$0xX`uezIcj) z=-KQl*r!K$z{l8`{6VNp012mr77OvMy^N#%{(r2L>Wd(o3@Afu(7Y0dc`oy&+D6@g zyenM0E)#(5mop|*p8@WmXx3v3l=@VN5_mU>5%&6GWxP*K)cMed{P`<^8>NxO#TS!fY;ve33IW_#mL)&Yd$3@uQ^|K4C#YVxetWH=_)9pxkMEj^NjyM zvR)L2{O^_&U}6NVQbAuu^iu_;d}_DSrMSm@?swfWB;3q4}XaMRkw|u)!JA@qQt8R~GT$4RNf1a=1MjO&L-xxDVb2cIWBG!qB3iXw^1d zl^9}P2#6w2TkKVKT`yY=E1(9kzeNBstTuiWlfjH@C1`p`u5l&sU*nfxwtegNL&>O~ z%jwZ&4BdhLh1vHV36N;lDN9nA@VKgC-Z6+u+l3dt{|d0&lAx)lj!3eEXuk&zv>8&A;r=kzw5^YOVH+) z#2bDP^zBlVF&uTr2$YAgVfWCI9xk|QU-m>;&Ll@Zg-Zpr`z5F?=lDcr{T(NvZQnqB zP4FoeZ@B%VhoRrH8!D*iaCgJJ5cndWSQ?{5z6d$Ui#O$!L6n$6{|S#iyPsjC&T(o< z_m@i#C>DqFuciB=Z}k*_ueV(+IC<&$@Q+E;i3G1SI`J8HJFedP@w8DnkoXJ|me%V6 z%DvJ)SvsihSp4&MYj273Z{?X~hqn&{;#N(-A^RWh_|ugk@S4kJipOliLGEL!Vlo;h zH$`Fwp=hq5I;*(tvTb|1;RHc(*e{)i=gncJ0>jWxPm?2{QdbaS!Fk)Cy81JQVnn9D z8)eUDj3(HR7D0%%>){J0*WcKm>U)y}dD3=-OP$926{~r5JKAC~k zv#aVE(^0aQ$`!|a>T)>^T`lZRg}VI}n$=LX#ir?o<<^0sg5 zN|-@JdGY{GL;`XeNW08l_wf?EikSl}`;3gBb&#N(&gd_jOIhFp{l~`p?&+8lTDK}l zRR=(1F6Br(ybl7u7*)p4+<$%-TPb#5`hFH({TTy}b4Z?TSuDBNMp^fx=?&C{@;~ya zMF)H_j;;gOr?;1{&&2z#9#xLg$7W0~6W#ogS0%ZyuDXv!w)N~--?|OHz2?TdrO6fN zYVahQA)_b-@h6UkEc`P|p}o4O2m9)9jg5Jfj}D9||9S7)Tahm&) z1wC&y8OS?qtK3u_g%(G~OnZxVet5e2CV6=z@}g@=*NcsplC;J!QAkBFq~>pWtW2ARe Kx8Vjl{{H|h@<;Lj diff --git a/assets/icons/icon.ico b/assets/icons/icon.ico index b3636e4b22ba65db9061cd60a77b02c92022dfd6..830059329bd5046dc77f8780f5a344845d6eae49 100644 GIT binary patch literal 10046 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 literal 86642 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 AKmY&$ diff --git a/assets/icons/icon.png b/assets/icons/icon.png index e1cd2619e0b5ec089cbba5ec7b03ddf2b1dfceb6..645cd90bddeba549fef495144ffcf41d172d48d6 100644 GIT binary patch literal 18239 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

5l#v3A#xI3*z~1~fvo9Q(N^(==!|_FZ z*duZ=+M1~)8E|otX8KNZlr?qels#x_1Xq@9IIw~@9uAREJVH)Xw^}UclF6327}E42 zT)E&?U%TK?(+K7%R!`H5oX0i)4Qn5??Iw3p5J~6_u+aWehY{DSn}3V2p$bgjnAu?o)v@iC254fXeMv50$9YrpU`N?u@QIWs)T?SP|fa}(|9 zqAX+!7`cx=4)cCBg5h~pu(?@9`)aCr#oyz$ld=#RFxYCNZCZls@4v2~*e-t6PEVvV z&bbK3b3wt(Coc!ufAbXXC<**#HQ%J9k`New6iG<5RjtO4XVO?dCvwxD{kJ#tfQr(X zg^NTwF-FwAeS_{V4bfel8l`~NbfrTR2s!G>WduFWxH(t~aK4q=6rEE^$+Uox>gJO2 z{L<;6Q6nHa5#ZEM>H58not!)z(6*_=^~8}jWf*IG$AUKVWOZ4?)GfF z+BM#*wKKmLFD7E~W3U!$IVm$k_k1f&Kz6WV8@55P?r~bcg-Za-!rvW?ns&)KOGT2~ zlkAyqhQj=P$Eg3w#K~}zH@J5bo-BfHjInKSz$@?+Z)NPD4pHj^_Qxmi`UqoTy=`sV zLVxrXGuBr=QRm|}wg75yetQQK4fY3#P_~J}zEfPnb2C4Wo!E(d*(cA;b?7$g2in<( zPn)ghX}nzJPmb6(3Dpeg_GW~Hc}Lt=lgsSZz z!5QXyz7KaR;D`3Ee}d`af{H>WWZ|Io1QI3~4Ll_`g1(cRnhLK73Ro)7zPCd={1W2x zRp%Xlvv4>!<2@}$hz|!V{T}_eHx2xkLl^hQoZTCnsjCl|W_@5Fx2(+j0ogy&Y+;L- z<)G$*CiN7hOm^s!{U>1F7U=iNk{+u~dAC!eDz%=|glFW0jEZU1&o(G_c#wTxUjnG} z#cg3>jEpUi#Mlq@t?Msg_#geK^Lx@DyHWf7=AS5vVyM7YOjvUVCfcpVR<(+5!H?9- zySI6s>o3m&*zr||=wcPGyBkQV`EWJl@bH8qobjOp+sXL*)=&yX)8aAbf~tGv?a2SN zu^Ddo-z?DWk9h9Yz#5p^NU#x~wYSd?H@w@!2Gb4G)6-utEMV~~M85Br5ff(v5O1|T z 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 +TTREE · T 与 E 融合单色标识 + + + + + + + + + diff --git a/crates/ttree-app/Cargo.toml b/crates/ttree-app/Cargo.toml deleted file mode 100644 index 7debb33..0000000 --- a/crates/ttree-app/Cargo.toml +++ /dev/null @@ -1,33 +0,0 @@ -[package] -name = "ttree-app" -version.workspace = true -edition.workspace = true -authors.workspace = true -license.workspace = true - -[[bin]] -name = "ttree" -path = "src/main.rs" - -[dependencies] -ttree-core = { path = "../ttree-core" } -ttree-storage = { path = "../ttree-storage" } -ttree-platform-macos = { path = "../ttree-platform-macos" } -ttree-ocr = { path = "../ttree-ocr" } -ttree-translate = { path = "../ttree-translate" } -ttree-ai = { path = "../ttree-ai" } -anyhow.workspace = true -global-hotkey.workspace = true -tokio.workspace = true - -[target.'cfg(target_os = "macos")'.dependencies] -objc2.workspace = true -objc2-app-kit.workspace = true -objc2-core-foundation.workspace = true -objc2-foundation.workspace = true -objc2-quartz-core.workspace = true - -[target.'cfg(target_os = "windows")'.dependencies] -lucide-icons = { version = "=1.39.0", default-features = false } - -windows = { workspace = true, features = ["Win32_UI_Shell", "Win32_System_Com", "Win32_UI_WindowsAndMessaging"] } diff --git a/crates/ttree-app/src/main.rs b/crates/ttree-app/src/main.rs deleted file mode 100644 index e483987..0000000 --- a/crates/ttree-app/src/main.rs +++ /dev/null @@ -1,394 +0,0 @@ -//! `ttree` —— 100% 纯 Rust 原生跨平台 (macOS AppKit / Windows Win32+DWM) AI 翻译与 OCR 桌面端入口。 - -#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")] - -#[cfg(target_os = "macos")] -mod state; -#[cfg(target_os = "macos")] -mod ui_helpers; - -#[cfg(target_os = "windows")] -mod windows_app; - -#[cfg(any(target_os = "windows", test))] -mod windows_design; - -#[cfg(target_os = "macos")] -fn main() { - macos_app::run(); -} - -#[cfg(target_os = "windows")] -fn main() { - windows_app::run(); -} - -#[cfg(all(not(target_os = "macos"), not(target_os = "windows")))] -fn main() { - eprintln!("TTREE 纯 Rust 原生客户端目前仅支持 macOS 与 Windows 运行。"); -} - -#[cfg(target_os = "macos")] -pub(crate) fn dispatch_splitter_drag(splitter_id: u8, delta_down: f64) { - macos_app::on_splitter_drag(splitter_id, delta_down); -} - -#[cfg(target_os = "macos")] -pub(crate) fn dispatch_splitter_drag_end() { - macos_app::on_splitter_drag_end(); -} - -#[cfg(target_os = "macos")] -mod macos_app { - use std::cell::RefCell; - use std::sync::Arc; - - use global_hotkey::{GlobalHotKeyEvent, GlobalHotKeyManager, HotKeyState}; - use objc2::rc::Retained; - use objc2::runtime::{AnyObject, Bool, Sel}; - use objc2::{define_class, msg_send, sel, MainThreadMarker, MainThreadOnly}; - use objc2_app_kit::{ - NSApplication, NSApplicationActivationPolicy, NSBackingStoreType, NSColor, NSEvent, - NSEventModifierFlags, NSMenu, NSMenuItem, NSStatusBar, NSStatusItem, NSTextView, - NSVisualEffectBlendingMode, NSVisualEffectMaterial, NSVisualEffectState, - NSVisualEffectView, NSWindow, NSWindowButton, NSWindowStyleMask, NSWindowTitleVisibility, - }; - use objc2_foundation::{ - NSObject, NSObjectProtocol, NSPoint, NSRect, NSRunLoop, NSRunLoopCommonModes, NSSize, - NSString, NSTimer, - }; - use tokio::sync::mpsc::{self, UnboundedReceiver}; - - use ttree_core::{WINDOW_MAX_HEIGHT, WINDOW_MAX_WIDTH, WINDOW_MIN_HEIGHT, WINDOW_MIN_WIDTH}; - use ttree_storage::{HistoryStore, SettingsStore}; - - use crate::state::{ActionTag, AppController, TabMode, UiEvent}; - - struct GlobalUiContext { - ctrl: AppController, - ui_rx: UnboundedReceiver, - _status_item: Retained, - } - - thread_local! { - static UI_CTX: RefCell> = const { RefCell::new(None) }; - } - - fn with_ctx(f: F) { - UI_CTX.with(|cell| { - if let Ok(mut borrow) = cell.try_borrow_mut() { - if let Some(ctx) = borrow.as_mut() { - f(ctx); - } - } - }); - } - - pub fn on_splitter_drag(splitter_id: u8, delta_down: f64) { - with_ctx(|ctx| ctx.ctrl.on_splitter_drag(splitter_id, delta_down)); - } - - pub fn on_splitter_drag_end() { - with_ctx(|ctx| ctx.ctrl.on_splitter_drag_end()); - } - - define_class!( - #[unsafe(super(NSObject))] - #[thread_kind = MainThreadOnly] - #[name = "TTreeActionDispatcher"] - pub struct ActionDispatcher; - - unsafe impl NSObjectProtocol for ActionDispatcher {} - - impl ActionDispatcher { - #[unsafe(method(handleControl:))] - fn handle_control(&self, sender: &AnyObject) { - let raw_tag: isize = unsafe { msg_send![sender, tag] }; - if let Some(tag) = ActionTag::from_raw(raw_tag) { - with_ctx(|ctx| ctx.ctrl.on_action(tag)); - } - } - - #[unsafe(method(handleTimer:))] - fn handle_timer(&self, _timer: &AnyObject) { - with_ctx(|ctx| { - while let Ok(hk_ev) = GlobalHotKeyEvent::receiver().try_recv() { - if hk_ev.state == HotKeyState::Pressed { - if let Some(action) = ctx.ctrl.parsed_shortcuts.action_for_id(hk_ev.id) - { - ctx.ctrl.handle_hotkey_action(action); - } - } - } - while let Ok(ui_ev) = ctx.ui_rx.try_recv() { - ctx.ctrl.handle_ui_event(ui_ev); - } - ctx.ctrl.poll_tick(); - }); - } - - #[unsafe(method(textView:doCommandBySelector:))] - fn text_view_do_command(&self, _text_view: &NSTextView, command: Sel) -> Bool { - if command == sel!(cancelOperation:) { - with_ctx(|ctx| ctx.ctrl.on_action(ActionTag::HideOrEscape)); - return Bool::YES; - } - if command == sel!(insertNewline:) { - let flags = NSEvent::modifierFlags_class(); - if flags.contains(NSEventModifierFlags::Shift) { - return Bool::NO; - } - with_ctx(|ctx| match ctx.ctrl.active_tab { - TabMode::Translate => ctx.ctrl.start_translation(), - TabMode::Chat => ctx.ctrl.send_chat_from_input(), - TabMode::Settings => {} - }); - return Bool::YES; - } - Bool::NO - } - - #[unsafe(method(windowDidResignKey:))] - fn window_did_resign_key(&self, _notification: &AnyObject) { - with_ctx(|ctx| ctx.ctrl.on_window_did_resign_key()); - } - - #[unsafe(method(windowDidResize:))] - fn window_did_resize(&self, _notification: &AnyObject) { - with_ctx(|ctx| ctx.ctrl.on_window_did_resize()); - } - - #[unsafe(method(applicationShouldHandleReopen:hasVisibleWindows:))] - fn app_should_handle_reopen(&self, _app: &AnyObject, _has_visible: Bool) -> Bool { - with_ctx(|ctx| { - ctx.ctrl.switch_tab(TabMode::Translate); - ctx.ctrl.show_and_focus_window(); - }); - Bool::YES - } - } - ); - - impl ActionDispatcher { - fn new(mtm: MainThreadMarker) -> Retained { - unsafe { msg_send![mtm.alloc::(), init] } - } - } - - pub fn run() { - let rt = tokio::runtime::Builder::new_multi_thread() - .enable_all() - .build() - .expect("初始化 Tokio 异步运行时失败"); - - let mtm = MainThreadMarker::new().expect("必须在 macOS 主线程启动 AppKit UI"); - let app = NSApplication::sharedApplication(mtm); - app.setActivationPolicy(NSApplicationActivationPolicy::Accessory); - - let dispatcher = ActionDispatcher::new(mtm); - unsafe { - let _: () = msg_send![&*app, setDelegate: Some(&*dispatcher)]; - } - - install_standard_main_menu(mtm, &app); - - let settings = Arc::new(SettingsStore::open_default()); - let history = Arc::new(HistoryStore::open_default()); - let hotkey_mgr = GlobalHotKeyManager::new().expect("初始化全局快捷键管理器失败"); - - let pane_layout = settings.pane_layout(); - let ai_enabled = settings.ai_translation_for_request().enabled; - let win_w = pane_layout.width; - let win_h = pane_layout.translate_window_height(ai_enabled); - let appearance = settings.appearance(); - let (window, effect_view) = - build_main_window(mtm, win_w, win_h, appearance.panel_opacity, &dispatcher); - - let status_item = build_status_bar_item(mtm, &dispatcher); - let (ui_tx, ui_rx) = mpsc::unbounded_channel(); - - let mut ctrl = AppController::build( - mtm, - rt.handle().clone(), - ui_tx, - settings, - history, - hotkey_mgr, - window, - effect_view, - &dispatcher, - ); - - if std::env::args().any(|a| a == "--show") { - ctrl.show_and_focus_window(); - } - - UI_CTX.with(|cell| { - *cell.borrow_mut() = Some(GlobalUiContext { - ctrl, - ui_rx, - _status_item: status_item, - }); - }); - - unsafe { - let timer = NSTimer::timerWithTimeInterval_target_selector_userInfo_repeats( - 0.025, - &dispatcher, - sel!(handleTimer:), - None, - true, - ); - let run_loop = NSRunLoop::mainRunLoop(); - run_loop.addTimer_forMode(&timer, NSRunLoopCommonModes); - } - - app.run(); - } - - fn build_main_window( - mtm: MainThreadMarker, - width: f64, - height: f64, - opacity: f64, - dispatcher: &ActionDispatcher, - ) -> (Retained, Retained) { - unsafe { - let frame = NSRect::new(NSPoint::new(240.0, 240.0), NSSize::new(width, height)); - let style = NSWindowStyleMask::Titled - | NSWindowStyleMask::Closable - | NSWindowStyleMask::Resizable - | NSWindowStyleMask::FullSizeContentView; - let window = NSWindow::initWithContentRect_styleMask_backing_defer( - mtm.alloc(), - frame, - style, - NSBackingStoreType::Buffered, - false, - ); - window.setTitle(&NSString::from_str("TTREE")); - window.setTitleVisibility(NSWindowTitleVisibility::Hidden); - window.setTitlebarAppearsTransparent(true); - window.setMovableByWindowBackground(true); - window.setReleasedWhenClosed(false); - window.setOpaque(false); - window.setBackgroundColor(Some(&NSColor::clearColor())); - window.setAlphaValue(opacity); - window.setMinSize(NSSize::new(WINDOW_MIN_WIDTH, WINDOW_MIN_HEIGHT)); - window.setMaxSize(NSSize::new(WINDOW_MAX_WIDTH, WINDOW_MAX_HEIGHT)); - - for btn_kind in [ - NSWindowButton::CloseButton, - NSWindowButton::MiniaturizeButton, - NSWindowButton::ZoomButton, - ] { - if let Some(btn) = window.standardWindowButton(btn_kind) { - btn.setHidden(true); - } - } - - let _: () = msg_send![&*window, setDelegate: Some(dispatcher)]; - - let effect_view = NSVisualEffectView::initWithFrame(mtm.alloc(), frame); - effect_view.setMaterial(NSVisualEffectMaterial::Popover); - effect_view.setBlendingMode(NSVisualEffectBlendingMode::BehindWindow); - effect_view.setState(NSVisualEffectState::Active); - - window.setContentView(Some(&effect_view)); - (window, effect_view) - } - } - - fn build_status_bar_item( - mtm: MainThreadMarker, - dispatcher: &ActionDispatcher, - ) -> Retained { - unsafe { - let status_bar = NSStatusBar::systemStatusBar(); - let item = status_bar.statusItemWithLength(-1.0); - if let Some(btn) = item.button(mtm) { - btn.setTitle(&NSString::from_str("译")); - } - - let menu = NSMenu::new(mtm); - let action_sel = sel!(handleControl:); - - let add_item = |title: &str, tag: ActionTag, key: &str| { - let mi = NSMenuItem::initWithTitle_action_keyEquivalent( - mtm.alloc(), - &NSString::from_str(title), - Some(action_sel), - &NSString::from_str(key), - ); - mi.setTag(tag as isize); - mi.setTarget(Some(dispatcher)); - menu.addItem(&mi); - }; - - add_item("翻译窗口", ActionTag::TabTranslate, ""); - add_item("截图 OCR 翻译", ActionTag::TriggerOcr, ""); - add_item("AI 对话", ActionTag::TabChat, ""); - menu.addItem(&NSMenuItem::separatorItem(mtm)); - add_item("偏好设置…", ActionTag::TabSettings, ","); - menu.addItem(&NSMenuItem::separatorItem(mtm)); - add_item("退出 TTREE", ActionTag::TrayQuit, "q"); - - // 点击菜单项时如果窗口尚未显示则自动唤起(除了截图 OCR 与退出) - item.setMenu(Some(&menu)); - item - } - } - - /// 为 Accessory 模式应用安装标准 Edit 菜单,使 NSTextView / NSTextField 原生支持 Cmd+C / V / X / A / Z。 - fn install_standard_main_menu(mtm: MainThreadMarker, app: &NSApplication) { - unsafe { - let main_menu = NSMenu::new(mtm); - - // 1. App 子菜单 - let app_item = NSMenuItem::new(mtm); - let app_menu = NSMenu::initWithTitle(mtm.alloc(), &NSString::from_str("TTREE")); - let close_item = NSMenuItem::initWithTitle_action_keyEquivalent( - mtm.alloc(), - &NSString::from_str("隐藏窗口"), - Some(sel!(orderOut:)), - &NSString::from_str("w"), - ); - let quit_item = NSMenuItem::initWithTitle_action_keyEquivalent( - mtm.alloc(), - &NSString::from_str("退出 TTREE"), - Some(sel!(terminate:)), - &NSString::from_str("q"), - ); - app_menu.addItem(&close_item); - app_menu.addItem(&NSMenuItem::separatorItem(mtm)); - app_menu.addItem(&quit_item); - app_item.setSubmenu(Some(&app_menu)); - main_menu.addItem(&app_item); - - // 2. Edit 子菜单 (支持 Cmd+Z / Cmd+X / Cmd+C / Cmd+V / Cmd+A) - let edit_item = NSMenuItem::new(mtm); - let edit_menu = NSMenu::initWithTitle(mtm.alloc(), &NSString::from_str("编辑")); - - let edit_entries: [(&str, Sel, &str); 5] = [ - ("撤销", sel!(undo:), "z"), - ("剪切", sel!(cut:), "x"), - ("复制", sel!(copy:), "c"), - ("粘贴", sel!(paste:), "v"), - ("全选", sel!(selectAll:), "a"), - ]; - for (title, action, key) in edit_entries { - let mi = NSMenuItem::initWithTitle_action_keyEquivalent( - mtm.alloc(), - &NSString::from_str(title), - Some(action), - &NSString::from_str(key), - ); - edit_menu.addItem(&mi); - } - edit_item.setSubmenu(Some(&edit_menu)); - main_menu.addItem(&edit_item); - - app.setMainMenu(Some(&main_menu)); - } - } -} diff --git a/crates/ttree-ocr/src/lib.rs b/crates/ttree-ocr/src/lib.rs index 255a29e..81eccb9 100644 --- a/crates/ttree-ocr/src/lib.rs +++ b/crates/ttree-ocr/src/lib.rs @@ -8,16 +8,22 @@ pub mod postprocess; pub mod preprocess; +#[cfg(any(target_os = "macos", test))] +#[path = "macos/screenshot.rs"] pub mod screenshot; #[cfg(target_os = "macos")] +#[path = "macos/image.rs"] pub mod image; #[cfg(target_os = "macos")] +#[path = "macos/vision.rs"] pub mod vision; #[cfg(target_os = "windows")] +#[path = "windows/windows_capture.rs"] pub mod windows_capture; #[cfg(target_os = "windows")] +#[path = "windows/windows_ocr.rs"] pub mod windows_ocr; use serde::{Deserialize, Serialize}; @@ -108,4 +114,3 @@ pub fn recognize_file(path: &str) -> Result { pub fn recognize_file(_path: &str) -> Result { Err("当前平台暂不支持 OCR".to_string()) } - diff --git a/crates/ttree-ocr/src/image.rs b/crates/ttree-ocr/src/macos/image.rs similarity index 100% rename from crates/ttree-ocr/src/image.rs rename to crates/ttree-ocr/src/macos/image.rs diff --git a/crates/ttree-ocr/src/screenshot.rs b/crates/ttree-ocr/src/macos/screenshot.rs similarity index 100% rename from crates/ttree-ocr/src/screenshot.rs rename to crates/ttree-ocr/src/macos/screenshot.rs diff --git a/crates/ttree-ocr/src/vision.rs b/crates/ttree-ocr/src/macos/vision.rs similarity index 100% rename from crates/ttree-ocr/src/vision.rs rename to crates/ttree-ocr/src/macos/vision.rs diff --git a/crates/ttree-ocr/src/postprocess.rs b/crates/ttree-ocr/src/postprocess.rs index 46d1830..648f07f 100644 --- a/crates/ttree-ocr/src/postprocess.rs +++ b/crates/ttree-ocr/src/postprocess.rs @@ -133,7 +133,10 @@ pub fn score_ocr_text(text: &str) -> i64 { score += 3; } else if ch.is_alphabetic() { score += 3; - } else if matches!(ch, '.' | ',' | '-' | '_' | '/' | ':' | ';' | '?' | '!' | '\'' | '"') { + } else if matches!( + ch, + '.' | ',' | '-' | '_' | '/' | ':' | ';' | '?' | '!' | '\'' | '"' + ) { score += 1; } else if ch.is_whitespace() { // 不加分也不扣分 @@ -151,7 +154,9 @@ mod tests { #[test] fn strips_spaces_between_cjk_words_while_preserving_english_spaces() { - let words = vec!["这", "是", "Windows", "原", "生", "OCR", "Test", "engine", "!"]; + let words = vec![ + "这", "是", "Windows", "原", "生", "OCR", "Test", "engine", "!", + ]; assert_eq!(join_ocr_words(&words), "这是Windows原生OCR Test engine!"); } diff --git a/crates/ttree-ocr/src/preprocess.rs b/crates/ttree-ocr/src/preprocess.rs index c1aa773..9760dca 100644 --- a/crates/ttree-ocr/src/preprocess.rs +++ b/crates/ttree-ocr/src/preprocess.rs @@ -127,16 +127,14 @@ pub fn prepare_primary_for_ocr(img: &RawBgraImage) -> Result Result { let defringed = neutralize_cleartype_fringes(img); let factor = recommended_upscale_factor(defringed.width, defringed.height).max(2); - let factor = if (defringed.width as u64) - * (defringed.height as u64) - * (factor as u64) - * (factor as u64) - <= MAX_OCR_PIXELS - { - factor - } else { - 1 - }; + let factor = + if (defringed.width as u64) * (defringed.height as u64) * (factor as u64) * (factor as u64) + <= MAX_OCR_PIXELS + { + factor + } else { + 1 + }; let scaled = if factor > 1 { upscale_bilinear(&defringed, factor) } else { @@ -309,12 +307,7 @@ pub fn sample_border_bgr(img: &RawBgraImage) -> (u8, u8, u8) { ) } -fn pad_with_bg( - img: &RawBgraImage, - bg_b: u8, - bg_g: u8, - bg_r: u8, -) -> Result { +fn pad_with_bg(img: &RawBgraImage, bg_b: u8, bg_g: u8, bg_r: u8) -> Result { let canvas_w = img .width .checked_add(BORDER_PADDING * 2) @@ -389,7 +382,8 @@ mod tests { // 外圈填充应为纯白背景 (255, 255, 255) assert_eq!(&hc.bgra[0..3], &[255, 255, 255]); // 中心文字像素应被反相并拉伸为深黑色 (0, 0, 0) - let center_idx = ((hc.height as usize / 2) * hc.width as usize + (hc.width as usize / 2)) * 4; + let center_idx = + ((hc.height as usize / 2) * hc.width as usize + (hc.width as usize / 2)) * 4; assert_eq!(&hc.bgra[center_idx..center_idx + 3], &[0, 0, 0]); } } diff --git a/crates/ttree-ocr/src/windows_capture.rs b/crates/ttree-ocr/src/windows/windows_capture.rs similarity index 98% rename from crates/ttree-ocr/src/windows_capture.rs rename to crates/ttree-ocr/src/windows/windows_capture.rs index d513ee4..44df925 100644 --- a/crates/ttree-ocr/src/windows_capture.rs +++ b/crates/ttree-ocr/src/windows/windows_capture.rs @@ -256,7 +256,12 @@ fn normalized_rect( let right = x1.max(x2).clamp(0, max_w as i32) as u32; let top = y1.min(y2).clamp(0, max_h as i32) as u32; let bottom = y1.max(y2).clamp(0, max_h as i32) as u32; - (left, top, right.saturating_sub(left), bottom.saturating_sub(top)) + ( + left, + top, + right.saturating_sub(left), + bottom.saturating_sub(top), + ) } /// 执行一次原生全屏框选截图,返回内存中的 `RawBgraImage`。 @@ -575,8 +580,9 @@ unsafe fn render_overlay_frame(hdc: HDC, st: &mut OverlayState) { st.frame_bgra.copy_from_slice(&st.dimmed_bgra); if st.dragging { - let (rx, ry, rw, rh) = - normalized_rect(st.start_x, st.start_y, st.curr_x, st.curr_y, st.width, st.height); + let (rx, ry, rw, rh) = normalized_rect( + st.start_x, st.start_y, st.curr_x, st.curr_y, st.width, st.height, + ); if rw > 0 && rh > 0 { let stride = (st.width as usize) * 4; let row_bytes = (rw as usize) * 4; diff --git a/crates/ttree-ocr/src/windows_ocr.rs b/crates/ttree-ocr/src/windows/windows_ocr.rs similarity index 97% rename from crates/ttree-ocr/src/windows_ocr.rs rename to crates/ttree-ocr/src/windows/windows_ocr.rs index 7ae0c09..2bb7075 100644 --- a/crates/ttree-ocr/src/windows_ocr.rs +++ b/crates/ttree-ocr/src/windows/windows_ocr.rs @@ -24,9 +24,7 @@ use windows::Storage::Streams::{DataWriter, InMemoryRandomAccessStream}; use windows::Win32::System::WinRT::{RoInitialize, RO_INIT_MULTITHREADED}; use crate::postprocess::{clean_cjk_ocr_spaces, join_ocr_words, score_ocr_text}; -use crate::preprocess::{ - prepare_high_contrast_for_ocr, prepare_primary_for_ocr, RawBgraImage, -}; +use crate::preprocess::{prepare_high_contrast_for_ocr, prepare_primary_for_ocr, RawBgraImage}; use crate::OcrOutcome; const MISSING_LANG_PACK_HINT: &str = "未检测到可用的 Windows OCR 识别引擎。\n\ @@ -134,8 +132,7 @@ fn recognize_encoded_bytes_on_mta(bytes: &[u8]) -> Result { )); } - let stream = - InMemoryRandomAccessStream::new().map_err(|e| format!("创建内存流失败: {e}"))?; + let stream = InMemoryRandomAccessStream::new().map_err(|e| format!("创建内存流失败: {e}"))?; let output = stream .GetOutputStreamAt(0) .map_err(|e| format!("获取输出流失败: {e}"))?; @@ -149,9 +146,7 @@ fn recognize_encoded_bytes_on_mta(bytes: &[u8]) -> Result { .map_err(|e| format!("存储流数据失败: {e}"))? .get() .map_err(|e| format!("等待流存储完成失败: {e}"))?; - stream - .Seek(0) - .map_err(|e| format!("重置流偏移失败: {e}"))?; + stream.Seek(0).map_err(|e| format!("重置流偏移失败: {e}"))?; let decoder = BitmapDecoder::CreateAsync(&stream) .map_err(|e| format!("创建图片解码器失败: {e}"))? diff --git a/crates/ttree-platform-macos/src/lib.rs b/crates/ttree-platform-macos/src/lib.rs deleted file mode 100644 index 20449c7..0000000 --- a/crates/ttree-platform-macos/src/lib.rs +++ /dev/null @@ -1,8 +0,0 @@ -//! `ttree-platform-macos` —— macOS 原生系统能力封装: -//! - Accessibility + 剪贴板回退的划词捕获 -//! - 全局热键解析、冲突校验与内存级 O(1) 分发 -//! - LaunchAgent 开机自启管理 - -pub mod autostart; -pub mod hotkey; -pub mod selection; diff --git a/crates/ttree-platform-macos/src/selection.rs b/crates/ttree-platform-macos/src/selection.rs deleted file mode 100644 index 949fc6b..0000000 --- a/crates/ttree-platform-macos/src/selection.rs +++ /dev/null @@ -1,497 +0,0 @@ -//! macOS 选中文本捕获:优先走 Accessibility API (`AXSelectedText`), -//! 仅当辅助功能未授权或焦点控件不支持 AX 属性时才回退到临时剪贴板复制。 - -use anyhow::Result; - -pub fn normalize_selected_text(text: impl AsRef) -> Option { - let trimmed = text.as_ref().trim(); - if trimmed.is_empty() { - None - } else { - Some(trimmed.to_string()) - } -} - -#[cfg(target_os = "macos")] -mod imp { - use std::ptr; - use std::thread; - use std::time::{Duration, Instant}; - - use anyhow::{anyhow, Result}; - use core_foundation::base::{Boolean, CFRelease, CFTypeRef, TCFType}; - use core_foundation::string::{CFString, CFStringRef}; - use objc2_app_kit::{NSPasteboard, NSPasteboardType, NSPasteboardTypeString}; - use objc2_core_graphics::{CGEvent, CGEventFlags, CGEventTapLocation}; - use objc2_foundation::{NSData, NSInteger, NSString}; - - use super::normalize_selected_text; - - const AX_ERROR_SUCCESS: i32 = 0; - const AX_ERROR_NO_VALUE: i32 = -25212; - const COPY_KEY_CODE: u16 = 8; - const COPY_TIMEOUT: Duration = Duration::from_millis(320); - const COPY_POLL_INTERVAL: Duration = Duration::from_millis(16); - - #[repr(C)] - struct __AXUIElement { - _private: [u8; 0], - } - - type AXUIElementRef = *const __AXUIElement; - - #[link(name = "ApplicationServices", kind = "framework")] - extern "C" { - fn AXIsProcessTrusted() -> Boolean; - fn AXUIElementCreateSystemWide() -> AXUIElementRef; - fn AXUIElementCopyAttributeValue( - element: AXUIElementRef, - attribute: CFStringRef, - value: *mut CFTypeRef, - ) -> i32; - } - - #[derive(Debug, Clone, PartialEq, Eq)] - enum AxOutcome { - Selected(String), - EmptySelection, - Unavailable, - } - - #[derive(Debug, Clone)] - struct PasteboardSnapshot { - entries: Vec, - } - - #[derive(Debug, Clone)] - struct PasteboardEntry { - type_name: String, - data: Vec, - } - - pub fn is_accessibility_trusted() -> bool { - unsafe { AXIsProcessTrusted() != 0 } - } - - pub fn capture_selected_text() -> Result> { - match capture_accessibility() { - AxOutcome::Selected(text) => Ok(Some(text)), - // Accessibility 已明确告知当前焦点控件为空选区:不合成 Cmd+C,避免误触蜂鸣音与 320ms 轮询等待 - AxOutcome::EmptySelection => Ok(None), - AxOutcome::Unavailable => capture_clipboard_selected_text(), - } - } - - fn capture_accessibility() -> AxOutcome { - unsafe { - if AXIsProcessTrusted() == 0 { - return AxOutcome::Unavailable; - } - - let system_element = AXUIElementCreateSystemWide(); - if system_element.is_null() { - return AxOutcome::Unavailable; - } - - let focused_attr = CFString::new("AXFocusedUIElement"); - let mut focused_value: CFTypeRef = ptr::null(); - let focused_error = AXUIElementCopyAttributeValue( - system_element, - focused_attr.as_concrete_TypeRef(), - &mut focused_value, - ); - CFRelease(system_element as CFTypeRef); - - if focused_error != AX_ERROR_SUCCESS || focused_value.is_null() { - return AxOutcome::Unavailable; - } - - let selected_attr = CFString::new("AXSelectedText"); - let mut selected_value: CFTypeRef = ptr::null(); - let selected_error = AXUIElementCopyAttributeValue( - focused_value as AXUIElementRef, - selected_attr.as_concrete_TypeRef(), - &mut selected_value, - ); - CFRelease(focused_value); - - if selected_error == AX_ERROR_NO_VALUE { - return AxOutcome::EmptySelection; - } - if selected_error != AX_ERROR_SUCCESS || selected_value.is_null() { - return AxOutcome::Unavailable; - } - - let selected = - CFString::wrap_under_create_rule(selected_value as CFStringRef).to_string(); - match normalize_selected_text(selected) { - Some(text) => AxOutcome::Selected(text), - None => AxOutcome::EmptySelection, - } - } - } - - fn capture_clipboard_selected_text() -> Result> { - let pasteboard = NSPasteboard::generalPasteboard(); - let snapshot = snapshot_pasteboard(&pasteboard); - let before_copy = pasteboard.changeCount(); - - post_copy_keypress()?; - - let Some(copy_change_count) = wait_for_pasteboard_change(&pasteboard, before_copy) else { - return Ok(None); - }; - - let copied_text = read_plain_text(&pasteboard).and_then(normalize_selected_text); - - if pasteboard.changeCount() == copy_change_count { - restore_pasteboard(&pasteboard, &snapshot); - } - - Ok(copied_text) - } - - fn snapshot_pasteboard(pasteboard: &NSPasteboard) -> PasteboardSnapshot { - let entries = pasteboard - .types() - .map(|types| { - types - .to_vec() - .into_iter() - .filter_map(|type_name| { - pasteboard - .dataForType(&type_name) - .map(|data| PasteboardEntry { - type_name: type_name.to_string(), - data: data.to_vec(), - }) - }) - .collect() - }) - .unwrap_or_default(); - - PasteboardSnapshot { entries } - } - - fn restore_pasteboard(pasteboard: &NSPasteboard, snapshot: &PasteboardSnapshot) { - let _ = pasteboard.clearContents(); - for entry in &snapshot.entries { - let type_name = NSString::from_str(&entry.type_name); - let data = NSData::with_bytes(&entry.data); - let _ = pasteboard.setData_forType(Some(&data), &type_name); - } - } - - fn wait_for_pasteboard_change( - pasteboard: &NSPasteboard, - before_copy: NSInteger, - ) -> Option { - let deadline = Instant::now() + COPY_TIMEOUT; - while Instant::now() < deadline { - let current = pasteboard.changeCount(); - if current != before_copy { - return Some(current); - } - thread::sleep(COPY_POLL_INTERVAL); - } - None - } - - fn read_plain_text(pasteboard: &NSPasteboard) -> Option { - let pb_type: &'static NSPasteboardType = unsafe { NSPasteboardTypeString }; - pasteboard - .stringForType(pb_type) - .map(|text| text.to_string()) - } - - fn post_copy_keypress() -> Result<()> { - let key_down = CGEvent::new_keyboard_event(None, COPY_KEY_CODE, true) - .ok_or_else(|| anyhow!("创建复制按下事件失败"))?; - let key_up = CGEvent::new_keyboard_event(None, COPY_KEY_CODE, false) - .ok_or_else(|| anyhow!("创建复制释放事件失败"))?; - - CGEvent::set_flags(Some(&key_down), CGEventFlags::MaskCommand); - CGEvent::set_flags(Some(&key_up), CGEventFlags::MaskCommand); - CGEvent::post(CGEventTapLocation::HIDEventTap, Some(&key_down)); - CGEvent::post(CGEventTapLocation::HIDEventTap, Some(&key_up)); - Ok(()) - } -} - -#[cfg(target_os = "windows")] -#[allow(non_snake_case)] -mod win_imp { - use std::thread; - use std::time::{Duration, Instant}; - - use anyhow::{anyhow, Result}; - - use super::normalize_selected_text; - - const COPY_TIMEOUT: Duration = Duration::from_millis(280); - const COPY_POLL_INTERVAL: Duration = Duration::from_millis(12); - - type HANDLE = *mut core::ffi::c_void; - type BOOL = i32; - const NULL_HANDLE: HANDLE = std::ptr::null_mut(); - - const INPUT_KEYBOARD: u32 = 1; - const KEYEVENTF_KEYUP: u32 = 2; - const VK_SHIFT: u16 = 0x10; - const VK_CONTROL: u16 = 0x11; - const VK_MENU: u16 = 0x12; - const VK_C: u16 = 0x43; - const VK_LWIN: u16 = 0x5B; - const VK_RWIN: u16 = 0x5C; - const VK_LSHIFT: u16 = 0xA0; - const VK_RSHIFT: u16 = 0xA1; - const VK_LMENU: u16 = 0xA4; - const VK_RMENU: u16 = 0xA5; - const CF_UNICODETEXT: u32 = 13; - const GMEM_MOVEABLE: u32 = 0x0002; - - #[repr(C)] - #[derive(Copy, Clone)] - struct KEYBDINPUT { - wVk: u16, - wScan: u16, - dwFlags: u32, - time: u32, - dwExtraInfo: usize, - } - - #[repr(C)] - #[derive(Copy, Clone)] - union INPUT_0 { - ki: KEYBDINPUT, - _padding: [u8; 24], - } - - #[repr(C)] - #[derive(Copy, Clone)] - struct INPUT { - r#type: u32, - Anonymous: INPUT_0, - } - - extern "system" { - fn OpenClipboard(hWndNewOwner: HANDLE) -> BOOL; - fn CloseClipboard() -> BOOL; - fn EmptyClipboard() -> BOOL; - fn GetClipboardData(uFormat: u32) -> HANDLE; - fn SetClipboardData(uFormat: u32, hMem: HANDLE) -> HANDLE; - fn EnumClipboardFormats(format: u32) -> u32; - fn GetClipboardSequenceNumber() -> u32; - fn GlobalAlloc(uFlags: u32, dwBytes: usize) -> HANDLE; - fn GlobalLock(hMem: HANDLE) -> *mut core::ffi::c_void; - fn GlobalUnlock(hMem: HANDLE) -> BOOL; - fn GlobalSize(hMem: HANDLE) -> usize; - fn GlobalFree(hMem: HANDLE) -> HANDLE; - fn SendInput(cInputs: u32, pInputs: *const INPUT, cbSize: i32) -> u32; - } - - struct ClipboardSnapshot { - sequence: u32, - unicode_bytes: Option>, - } - - pub fn capture_selected_text() -> Result> { - unsafe { - let snapshot = snapshot_clipboard(); - post_copy_keypress()?; - - let Some(_new_seq) = wait_for_clipboard_change(snapshot.sequence) else { - return Ok(None); - }; - - let copied_text = read_clipboard_text().and_then(normalize_selected_text); - - // 若剪贴板仅发生本次 Ctrl+C 一次更新,无感还原用户原剪贴板文本 - if OpenClipboard(NULL_HANDLE) != 0 { - let current_seq = GetClipboardSequenceNumber(); - if current_seq == snapshot.sequence.wrapping_add(1) { - EmptyClipboard(); - if let Some(ref data) = snapshot.unicode_bytes { - let hmem = GlobalAlloc(GMEM_MOVEABLE, data.len()); - if !hmem.is_null() { - let ptr = GlobalLock(hmem); - if !ptr.is_null() { - std::ptr::copy_nonoverlapping( - data.as_ptr(), - ptr as *mut u8, - data.len(), - ); - GlobalUnlock(hmem); - SetClipboardData(CF_UNICODETEXT, hmem); - } else { - GlobalFree(hmem); - } - } - } - } - CloseClipboard(); - } - - Ok(copied_text) - } - } - - unsafe fn snapshot_clipboard() -> ClipboardSnapshot { - let sequence = GetClipboardSequenceNumber(); - let mut unicode_bytes = None; - - if OpenClipboard(NULL_HANDLE) != 0 { - let mut format = 0u32; - loop { - format = EnumClipboardFormats(format); - if format == 0 { - break; - } - if format == CF_UNICODETEXT { - let handle = GetClipboardData(CF_UNICODETEXT); - if !handle.is_null() { - let size = GlobalSize(handle); - let ptr = GlobalLock(handle); - if !ptr.is_null() && size > 0 { - unicode_bytes = - Some(std::slice::from_raw_parts(ptr as *const u8, size).to_vec()); - GlobalUnlock(handle); - } - } - break; - } - } - CloseClipboard(); - } - - ClipboardSnapshot { - sequence, - unicode_bytes, - } - } - - unsafe fn read_clipboard_text() -> Option { - if OpenClipboard(NULL_HANDLE) == 0 { - return None; - } - let mut text = None; - let handle = GetClipboardData(CF_UNICODETEXT); - if !handle.is_null() { - let ptr = GlobalLock(handle); - if !ptr.is_null() { - let mut len = 0usize; - let base = ptr as *const u16; - let max_u16 = GlobalSize(handle) / 2; - while len < max_u16 && *base.add(len) != 0 { - len += 1; - } - let slice = std::slice::from_raw_parts(base, len); - text = String::from_utf16(slice).ok(); - GlobalUnlock(handle); - } - } - CloseClipboard(); - text - } - - fn key_input(vk: u16, flags: u32) -> INPUT { - INPUT { - r#type: INPUT_KEYBOARD, - Anonymous: INPUT_0 { - ki: KEYBDINPUT { - wVk: vk, - wScan: 0, - dwFlags: flags, - time: 0, - dwExtraInfo: 0, - }, - }, - } - } - - fn post_copy_keypress() -> Result<()> { - unsafe { - // 先释放触发全局热键时用户可能仍按住的 Alt / Shift / Win 修饰键,防止合成出 Ctrl+Alt+C - let inputs = [ - key_input(VK_MENU, KEYEVENTF_KEYUP), - key_input(VK_LMENU, KEYEVENTF_KEYUP), - key_input(VK_RMENU, KEYEVENTF_KEYUP), - key_input(VK_SHIFT, KEYEVENTF_KEYUP), - key_input(VK_LSHIFT, KEYEVENTF_KEYUP), - key_input(VK_RSHIFT, KEYEVENTF_KEYUP), - key_input(VK_LWIN, KEYEVENTF_KEYUP), - key_input(VK_RWIN, KEYEVENTF_KEYUP), - key_input(VK_CONTROL, 0), - key_input(VK_C, 0), - key_input(VK_C, KEYEVENTF_KEYUP), - key_input(VK_CONTROL, KEYEVENTF_KEYUP), - ]; - let sent = SendInput( - inputs.len() as u32, - inputs.as_ptr(), - std::mem::size_of::() as i32, - ); - if sent != inputs.len() as u32 { - return Err(anyhow!("SendInput 发送 Ctrl+C 不完整")); - } - } - thread::sleep(Duration::from_millis(35)); - Ok(()) - } - - fn wait_for_clipboard_change(before: u32) -> Option { - let deadline = Instant::now() + COPY_TIMEOUT; - while Instant::now() < deadline { - let current = unsafe { GetClipboardSequenceNumber() }; - if current != before { - return Some(current); - } - thread::sleep(COPY_POLL_INTERVAL); - } - None - } -} - -#[cfg(target_os = "macos")] -pub fn capture_selected_text() -> Result> { - imp::capture_selected_text() -} - -#[cfg(target_os = "macos")] -pub fn is_accessibility_trusted() -> bool { - imp::is_accessibility_trusted() -} - -#[cfg(target_os = "windows")] -pub fn capture_selected_text() -> Result> { - win_imp::capture_selected_text() -} - -#[cfg(target_os = "windows")] -pub fn is_accessibility_trusted() -> bool { - true -} - -#[cfg(all(not(target_os = "macos"), not(target_os = "windows")))] -pub fn capture_selected_text() -> Result> { - Ok(None) -} - -#[cfg(all(not(target_os = "macos"), not(target_os = "windows")))] -pub fn is_accessibility_trusted() -> bool { - false -} - -#[cfg(test)] -mod tests { - use super::*; - - #[test] - fn normalizes_whitespace_only_to_none() { - assert_eq!(normalize_selected_text(" \n\t "), None); - assert_eq!( - normalize_selected_text(" hello world \n"), - Some("hello world".to_string()) - ); - } -} diff --git a/crates/ttree-platform-macos/Cargo.toml b/crates/ttree-platform/Cargo.toml similarity index 93% rename from crates/ttree-platform-macos/Cargo.toml rename to crates/ttree-platform/Cargo.toml index d354c31..eac6add 100644 --- a/crates/ttree-platform-macos/Cargo.toml +++ b/crates/ttree-platform/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "ttree-platform-macos" +name = "ttree-platform" version.workspace = true edition.workspace = true authors.workspace = true diff --git a/crates/ttree-platform-macos/src/autostart.rs b/crates/ttree-platform/src/autostart.rs similarity index 100% rename from crates/ttree-platform-macos/src/autostart.rs rename to crates/ttree-platform/src/autostart.rs diff --git a/crates/ttree-platform-macos/src/hotkey.rs b/crates/ttree-platform/src/hotkey.rs similarity index 100% rename from crates/ttree-platform-macos/src/hotkey.rs rename to crates/ttree-platform/src/hotkey.rs diff --git a/crates/ttree-platform/src/lib.rs b/crates/ttree-platform/src/lib.rs new file mode 100644 index 0000000..7b69d31 --- /dev/null +++ b/crates/ttree-platform/src/lib.rs @@ -0,0 +1,4 @@ +//! Shared system adapters with isolated macOS and Windows implementations. +pub mod autostart; +pub mod hotkey; +pub mod selection; diff --git a/crates/ttree-platform/src/macos/selection.rs b/crates/ttree-platform/src/macos/selection.rs new file mode 100644 index 0000000..eaea4e3 --- /dev/null +++ b/crates/ttree-platform/src/macos/selection.rs @@ -0,0 +1,201 @@ +use std::ptr; +use std::thread; +use std::time::{Duration, Instant}; + +use anyhow::{anyhow, Result}; +use core_foundation::base::{Boolean, CFRelease, CFTypeRef, TCFType}; +use core_foundation::string::{CFString, CFStringRef}; +use objc2_app_kit::{NSPasteboard, NSPasteboardType, NSPasteboardTypeString}; +use objc2_core_graphics::{CGEvent, CGEventFlags, CGEventTapLocation}; +use objc2_foundation::{NSData, NSInteger, NSString}; + +use crate::selection::normalize_selected_text; + +const AX_ERROR_SUCCESS: i32 = 0; +const AX_ERROR_NO_VALUE: i32 = -25212; +const COPY_KEY_CODE: u16 = 8; +const COPY_TIMEOUT: Duration = Duration::from_millis(320); +const COPY_POLL_INTERVAL: Duration = Duration::from_millis(16); + +#[repr(C)] +struct __AXUIElement { + _private: [u8; 0], +} + +type AXUIElementRef = *const __AXUIElement; + +#[link(name = "ApplicationServices", kind = "framework")] +extern "C" { + fn AXIsProcessTrusted() -> Boolean; + fn AXUIElementCreateSystemWide() -> AXUIElementRef; + fn AXUIElementCopyAttributeValue( + element: AXUIElementRef, + attribute: CFStringRef, + value: *mut CFTypeRef, + ) -> i32; +} + +#[derive(Debug, Clone, PartialEq, Eq)] +enum AxOutcome { + Selected(String), + EmptySelection, + Unavailable, +} + +#[derive(Debug, Clone)] +struct PasteboardSnapshot { + entries: Vec, +} + +#[derive(Debug, Clone)] +struct PasteboardEntry { + type_name: String, + data: Vec, +} + +pub fn is_accessibility_trusted() -> bool { + unsafe { AXIsProcessTrusted() != 0 } +} + +pub fn capture_selected_text() -> Result> { + match capture_accessibility() { + AxOutcome::Selected(text) => Ok(Some(text)), + // Accessibility 已明确告知当前焦点控件为空选区:不合成 Cmd+C,避免误触蜂鸣音与 320ms 轮询等待 + AxOutcome::EmptySelection => Ok(None), + AxOutcome::Unavailable => capture_clipboard_selected_text(), + } +} + +fn capture_accessibility() -> AxOutcome { + unsafe { + if AXIsProcessTrusted() == 0 { + return AxOutcome::Unavailable; + } + + let system_element = AXUIElementCreateSystemWide(); + if system_element.is_null() { + return AxOutcome::Unavailable; + } + + let focused_attr = CFString::new("AXFocusedUIElement"); + let mut focused_value: CFTypeRef = ptr::null(); + let focused_error = AXUIElementCopyAttributeValue( + system_element, + focused_attr.as_concrete_TypeRef(), + &mut focused_value, + ); + CFRelease(system_element as CFTypeRef); + + if focused_error != AX_ERROR_SUCCESS || focused_value.is_null() { + return AxOutcome::Unavailable; + } + + let selected_attr = CFString::new("AXSelectedText"); + let mut selected_value: CFTypeRef = ptr::null(); + let selected_error = AXUIElementCopyAttributeValue( + focused_value as AXUIElementRef, + selected_attr.as_concrete_TypeRef(), + &mut selected_value, + ); + CFRelease(focused_value); + + if selected_error == AX_ERROR_NO_VALUE { + return AxOutcome::EmptySelection; + } + if selected_error != AX_ERROR_SUCCESS || selected_value.is_null() { + return AxOutcome::Unavailable; + } + + let selected = CFString::wrap_under_create_rule(selected_value as CFStringRef).to_string(); + match normalize_selected_text(selected) { + Some(text) => AxOutcome::Selected(text), + None => AxOutcome::EmptySelection, + } + } +} + +fn capture_clipboard_selected_text() -> Result> { + let pasteboard = NSPasteboard::generalPasteboard(); + let snapshot = snapshot_pasteboard(&pasteboard); + let before_copy = pasteboard.changeCount(); + + post_copy_keypress()?; + + let Some(copy_change_count) = wait_for_pasteboard_change(&pasteboard, before_copy) else { + return Ok(None); + }; + + let copied_text = read_plain_text(&pasteboard).and_then(normalize_selected_text); + + if pasteboard.changeCount() == copy_change_count { + restore_pasteboard(&pasteboard, &snapshot); + } + + Ok(copied_text) +} + +fn snapshot_pasteboard(pasteboard: &NSPasteboard) -> PasteboardSnapshot { + let entries = pasteboard + .types() + .map(|types| { + types + .to_vec() + .into_iter() + .filter_map(|type_name| { + pasteboard + .dataForType(&type_name) + .map(|data| PasteboardEntry { + type_name: type_name.to_string(), + data: data.to_vec(), + }) + }) + .collect() + }) + .unwrap_or_default(); + + PasteboardSnapshot { entries } +} + +fn restore_pasteboard(pasteboard: &NSPasteboard, snapshot: &PasteboardSnapshot) { + let _ = pasteboard.clearContents(); + for entry in &snapshot.entries { + let type_name = NSString::from_str(&entry.type_name); + let data = NSData::with_bytes(&entry.data); + let _ = pasteboard.setData_forType(Some(&data), &type_name); + } +} + +fn wait_for_pasteboard_change( + pasteboard: &NSPasteboard, + before_copy: NSInteger, +) -> Option { + let deadline = Instant::now() + COPY_TIMEOUT; + while Instant::now() < deadline { + let current = pasteboard.changeCount(); + if current != before_copy { + return Some(current); + } + thread::sleep(COPY_POLL_INTERVAL); + } + None +} + +fn read_plain_text(pasteboard: &NSPasteboard) -> Option { + let pb_type: &'static NSPasteboardType = unsafe { NSPasteboardTypeString }; + pasteboard + .stringForType(pb_type) + .map(|text| text.to_string()) +} + +fn post_copy_keypress() -> Result<()> { + let key_down = CGEvent::new_keyboard_event(None, COPY_KEY_CODE, true) + .ok_or_else(|| anyhow!("创建复制按下事件失败"))?; + let key_up = CGEvent::new_keyboard_event(None, COPY_KEY_CODE, false) + .ok_or_else(|| anyhow!("创建复制释放事件失败"))?; + + CGEvent::set_flags(Some(&key_down), CGEventFlags::MaskCommand); + CGEvent::set_flags(Some(&key_up), CGEventFlags::MaskCommand); + CGEvent::post(CGEventTapLocation::HIDEventTap, Some(&key_down)); + CGEvent::post(CGEventTapLocation::HIDEventTap, Some(&key_up)); + Ok(()) +} diff --git a/crates/ttree-platform/src/selection.rs b/crates/ttree-platform/src/selection.rs new file mode 100644 index 0000000..e8d3955 --- /dev/null +++ b/crates/ttree-platform/src/selection.rs @@ -0,0 +1,64 @@ +//! macOS 选中文本捕获:优先走 Accessibility API (`AXSelectedText`), +//! 仅当辅助功能未授权或焦点控件不支持 AX 属性时才回退到临时剪贴板复制。 + +use anyhow::Result; + +pub fn normalize_selected_text(text: impl AsRef) -> Option { + let trimmed = text.as_ref().trim(); + if trimmed.is_empty() { + None + } else { + Some(trimmed.to_string()) + } +} + +#[cfg(target_os = "macos")] +#[path = "macos/selection.rs"] +mod imp; +#[cfg(target_os = "windows")] +#[path = "windows/selection.rs"] +mod win_imp; + +#[cfg(target_os = "macos")] +pub fn capture_selected_text() -> Result> { + imp::capture_selected_text() +} + +#[cfg(target_os = "macos")] +pub fn is_accessibility_trusted() -> bool { + imp::is_accessibility_trusted() +} + +#[cfg(target_os = "windows")] +pub fn capture_selected_text() -> Result> { + win_imp::capture_selected_text() +} + +#[cfg(target_os = "windows")] +pub fn is_accessibility_trusted() -> bool { + true +} + +#[cfg(all(not(target_os = "macos"), not(target_os = "windows")))] +pub fn capture_selected_text() -> Result> { + Ok(None) +} + +#[cfg(all(not(target_os = "macos"), not(target_os = "windows")))] +pub fn is_accessibility_trusted() -> bool { + false +} + +#[cfg(test)] +mod tests { + use super::*; + + #[test] + fn normalizes_whitespace_only_to_none() { + assert_eq!(normalize_selected_text(" \n\t "), None); + assert_eq!( + normalize_selected_text(" hello world \n"), + Some("hello world".to_string()) + ); + } +} diff --git a/crates/ttree-platform/src/windows/selection.rs b/crates/ttree-platform/src/windows/selection.rs new file mode 100644 index 0000000..9e2996b --- /dev/null +++ b/crates/ttree-platform/src/windows/selection.rs @@ -0,0 +1,230 @@ +#![allow(non_snake_case)] +use std::thread; +use std::time::{Duration, Instant}; + +use anyhow::{anyhow, Result}; + +use crate::selection::normalize_selected_text; + +const COPY_TIMEOUT: Duration = Duration::from_millis(280); +const COPY_POLL_INTERVAL: Duration = Duration::from_millis(12); + +type HANDLE = *mut core::ffi::c_void; +type BOOL = i32; +const NULL_HANDLE: HANDLE = std::ptr::null_mut(); + +const INPUT_KEYBOARD: u32 = 1; +const KEYEVENTF_KEYUP: u32 = 2; +const VK_SHIFT: u16 = 0x10; +const VK_CONTROL: u16 = 0x11; +const VK_MENU: u16 = 0x12; +const VK_C: u16 = 0x43; +const VK_LWIN: u16 = 0x5B; +const VK_RWIN: u16 = 0x5C; +const VK_LSHIFT: u16 = 0xA0; +const VK_RSHIFT: u16 = 0xA1; +const VK_LMENU: u16 = 0xA4; +const VK_RMENU: u16 = 0xA5; +const CF_UNICODETEXT: u32 = 13; +const GMEM_MOVEABLE: u32 = 0x0002; + +#[repr(C)] +#[derive(Copy, Clone)] +struct KEYBDINPUT { + wVk: u16, + wScan: u16, + dwFlags: u32, + time: u32, + dwExtraInfo: usize, +} + +#[repr(C)] +#[derive(Copy, Clone)] +union INPUT_0 { + ki: KEYBDINPUT, + _padding: [u8; 24], +} + +#[repr(C)] +#[derive(Copy, Clone)] +struct INPUT { + r#type: u32, + Anonymous: INPUT_0, +} + +extern "system" { + fn OpenClipboard(hWndNewOwner: HANDLE) -> BOOL; + fn CloseClipboard() -> BOOL; + fn EmptyClipboard() -> BOOL; + fn GetClipboardData(uFormat: u32) -> HANDLE; + fn SetClipboardData(uFormat: u32, hMem: HANDLE) -> HANDLE; + fn EnumClipboardFormats(format: u32) -> u32; + fn GetClipboardSequenceNumber() -> u32; + fn GlobalAlloc(uFlags: u32, dwBytes: usize) -> HANDLE; + fn GlobalLock(hMem: HANDLE) -> *mut core::ffi::c_void; + fn GlobalUnlock(hMem: HANDLE) -> BOOL; + fn GlobalSize(hMem: HANDLE) -> usize; + fn GlobalFree(hMem: HANDLE) -> HANDLE; + fn SendInput(cInputs: u32, pInputs: *const INPUT, cbSize: i32) -> u32; +} + +struct ClipboardSnapshot { + sequence: u32, + unicode_bytes: Option>, +} + +pub fn capture_selected_text() -> Result> { + unsafe { + let snapshot = snapshot_clipboard(); + post_copy_keypress()?; + + let Some(_new_seq) = wait_for_clipboard_change(snapshot.sequence) else { + return Ok(None); + }; + + let copied_text = read_clipboard_text().and_then(normalize_selected_text); + + // 若剪贴板仅发生本次 Ctrl+C 一次更新,无感还原用户原剪贴板文本 + if OpenClipboard(NULL_HANDLE) != 0 { + let current_seq = GetClipboardSequenceNumber(); + if current_seq == snapshot.sequence.wrapping_add(1) { + EmptyClipboard(); + if let Some(ref data) = snapshot.unicode_bytes { + let hmem = GlobalAlloc(GMEM_MOVEABLE, data.len()); + if !hmem.is_null() { + let ptr = GlobalLock(hmem); + if !ptr.is_null() { + std::ptr::copy_nonoverlapping( + data.as_ptr(), + ptr as *mut u8, + data.len(), + ); + GlobalUnlock(hmem); + SetClipboardData(CF_UNICODETEXT, hmem); + } else { + GlobalFree(hmem); + } + } + } + } + CloseClipboard(); + } + + Ok(copied_text) + } +} + +unsafe fn snapshot_clipboard() -> ClipboardSnapshot { + let sequence = GetClipboardSequenceNumber(); + let mut unicode_bytes = None; + + if OpenClipboard(NULL_HANDLE) != 0 { + let mut format = 0u32; + loop { + format = EnumClipboardFormats(format); + if format == 0 { + break; + } + if format == CF_UNICODETEXT { + let handle = GetClipboardData(CF_UNICODETEXT); + if !handle.is_null() { + let size = GlobalSize(handle); + let ptr = GlobalLock(handle); + if !ptr.is_null() && size > 0 { + unicode_bytes = + Some(std::slice::from_raw_parts(ptr as *const u8, size).to_vec()); + GlobalUnlock(handle); + } + } + break; + } + } + CloseClipboard(); + } + + ClipboardSnapshot { + sequence, + unicode_bytes, + } +} + +unsafe fn read_clipboard_text() -> Option { + if OpenClipboard(NULL_HANDLE) == 0 { + return None; + } + let mut text = None; + let handle = GetClipboardData(CF_UNICODETEXT); + if !handle.is_null() { + let ptr = GlobalLock(handle); + if !ptr.is_null() { + let mut len = 0usize; + let base = ptr as *const u16; + let max_u16 = GlobalSize(handle) / 2; + while len < max_u16 && *base.add(len) != 0 { + len += 1; + } + let slice = std::slice::from_raw_parts(base, len); + text = String::from_utf16(slice).ok(); + GlobalUnlock(handle); + } + } + CloseClipboard(); + text +} + +fn key_input(vk: u16, flags: u32) -> INPUT { + INPUT { + r#type: INPUT_KEYBOARD, + Anonymous: INPUT_0 { + ki: KEYBDINPUT { + wVk: vk, + wScan: 0, + dwFlags: flags, + time: 0, + dwExtraInfo: 0, + }, + }, + } +} + +fn post_copy_keypress() -> Result<()> { + unsafe { + // 先释放触发全局热键时用户可能仍按住的 Alt / Shift / Win 修饰键,防止合成出 Ctrl+Alt+C + let inputs = [ + key_input(VK_MENU, KEYEVENTF_KEYUP), + key_input(VK_LMENU, KEYEVENTF_KEYUP), + key_input(VK_RMENU, KEYEVENTF_KEYUP), + key_input(VK_SHIFT, KEYEVENTF_KEYUP), + key_input(VK_LSHIFT, KEYEVENTF_KEYUP), + key_input(VK_RSHIFT, KEYEVENTF_KEYUP), + key_input(VK_LWIN, KEYEVENTF_KEYUP), + key_input(VK_RWIN, KEYEVENTF_KEYUP), + key_input(VK_CONTROL, 0), + key_input(VK_C, 0), + key_input(VK_C, KEYEVENTF_KEYUP), + key_input(VK_CONTROL, KEYEVENTF_KEYUP), + ]; + let sent = SendInput( + inputs.len() as u32, + inputs.as_ptr(), + std::mem::size_of::() as i32, + ); + if sent != inputs.len() as u32 { + return Err(anyhow!("SendInput 发送 Ctrl+C 不完整")); + } + } + thread::sleep(Duration::from_millis(35)); + Ok(()) +} + +fn wait_for_clipboard_change(before: u32) -> Option { + let deadline = Instant::now() + COPY_TIMEOUT; + while Instant::now() < deadline { + let current = unsafe { GetClipboardSequenceNumber() }; + if current != before { + return Some(current); + } + thread::sleep(COPY_POLL_INTERVAL); + } + None +} diff --git a/docs/design/product.html b/docs/design/product.html new file mode 100644 index 0000000..b13616a --- /dev/null +++ b/docs/design/product.html @@ -0,0 +1,9 @@ +TTREE · 产品界面渲染图 + + +

+
界面渲染示意 · 示例译文仅作展示,实际外观随系统主题与设置变化
diff --git a/docs/development.md b/docs/development.md new file mode 100644 index 0000000..03b367e --- /dev/null +++ b/docs/development.md @@ -0,0 +1,62 @@ +# 开发指南 + +## 一次修改,两个平台 + +`apps/macos` 和 `apps/windows` 各自拥有独立 Cargo package,只维护原生界面与交互。共享能力统一位于 `crates`,使用一个根 Cargo.lock 和工作区版本号。 + +| 需要修改的内容 | 位置 | 联动范围 | +| --- | --- | --- | +| 语言、提示词输入、布局数据、消息校验 | `crates/ttree-core` | 两端 | +| 免费翻译、分流、回退 | `crates/ttree-translate` | 两端 | +| 流式 AI、HY-MT、本地服务 | `crates/ttree-ai` | 两端;Candle/Metal 实现限 Mac | +| 配置和历史 | `crates/ttree-storage` | 两端;保持旧格式 | +| 快捷键、自启和划词入口 | `crates/ttree-platform` | 两端,系统划词实现分目录 | +| OCR 公共处理/结果类型 | `crates/ttree-ocr/src` | 两端 | +| AppKit / Win32 控件 | `apps/macos` / `apps/windows` | 对应平台 | +| 平台截图/OCR | `crates/ttree-ocr/src/macos` / `windows` | 对应平台 | + +![目录与依赖示意图](images/workspace.svg) + +不要复制两份配置模型或翻译策略。改变公共接口后同步更新两个调用端,保持平台专用依赖受 `cfg(target_os)` 保护。 + +## 环境与运行 + +Mac 需要 Rust stable、Xcode Command Line Tools,以及 Metal 编译工具。打 Universal 包还需 `rustup target add aarch64-apple-darwin x86_64-apple-darwin`。如果 `xcrun -f metal` 失败,在完整 Xcode 环境安装 Metal Toolchain。 + +Windows 需要 Rust stable MSVC、Visual Studio C++ Build Tools 和 Windows SDK。平台包使用 `x86_64-pc-windows-msvc`。CI 的 Windows 2022 runner 已具备这些条件。 + +```sh +# 在对应系统任选一个入口;--show 显式显示默认隐藏的窗口 +cargo run -p ttree-macos -- --show +cargo run -p ttree-windows -- --show + +# 编译和单元测试(workspace 成员在非对应平台使用空入口) +cargo check --workspace --locked +cargo test --workspace --locked + +# 发布脚本、签名失败场景和发布策略合约 +bash scripts/tests/run-release-tests.sh + +# Mac 上只做 Windows 类型检查 +cargo check -p ttree-windows --target x86_64-pc-windows-msvc --locked +``` + +不需要 Node 前端工具链。Mac 发布阶段使用固定版本的 Tauri 独立 signer,仅用于兼容旧客户端的更新附件签名。 + +## 验证边界 + +共享代码修改需检查两端。Mac 本地测试与 Windows 交叉检查通过后,仍需 Windows runner 的原生构建、单元测试、便携 ZIP 校验与启动验证。CI 保存 Windows 启动结果和截图作为 artifact;这只是启动检查,不能代替完整桌面交互回归。 + +Windows 重绘问题可按需运行 `apps/windows/tests/repaint-regression.py`(需 unlocked desktop、Pillow、pywinauto);输出放到 `target/repaint-regression`。Mac 签名和录屏权限的跨升级实测是不同证据,见[发布指南](releasing.md)。 + +## 工作区整洁 + +源码在 `apps/` 与 `crates/`;文档在 `docs/`;脚本按 `macos`、`windows`、`release` 分类。日志、截图测试证据和中间构建放 `target/`,对外附件放 `dist/`,均不提交。 + +README 图片放 `docs/images/`,只能提交确认可公开的界面。API Key 当前保存在用户配置目录 JSON 内,Mac 文件权限设为 0600;不要把它描述成 Keychain 存储,也不要将配置或聊天历史用于测试样本。 + +## 品牌与渲染图 + +单色 Logo 源文件为 `assets/icons/icon.svg`。Mac 安装 librsvg 后运行 `python3 scripts/branding/generate-icons.py`,统一生成 PNG、ICO、ICNS。Windows 可生成 PNG/ICO;发布前仍须在 Mac 更新 ICNS。Windows build.rs 将图标及版本编译进 EXE,窗口与托盘均读取内嵌图标。 + +README 产品图源文件为 `docs/design/product.html`,按 1600 × 1080 CSS 像素渲染,导出 `docs/images/product.png`(当前为 2x)。这是基于现有布局的界面示意,不是实机截图;不要用它作为交互验收证据。 diff --git a/docs/images/product.png b/docs/images/product.png new file mode 100644 index 0000000000000000000000000000000000000000..5fc355adfad3b582c351b8e77e8be274f1b7d974 GIT binary patch literal 972991 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 z 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

Hs}R0p8vgRMAMZrvbk$or?Zwe8k~`GJFQQ@ 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


ak%)wE}Ic0{2^&`=?~` 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

UxlW<5l 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

g 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

7j}TwRyCrAGY$@S@SoA$ZHo-&ab% zy?!b^*Z;o|D!Nlg67>Bm?cL9}ujvGI`p=o&N%37g=C%(0JZd-`{l$6>vFWdYbp*(H zXJ1fzbvhVsPNFJUEl{N%;?;F~EIK)T=BcXu7<8jZCx=e9k^Do~$=J2;gRg^u;QaeX z;86ZPKrn1;-34svL3+(qwJg#&$vvkMpj71kFl^)o`B@cg&x5BrJSoWkMy&7&jWbMX4i5CSu8y>z)1kokq^(MBfqNDHh5fPXMN|_ z8XWWR-QL-OI1^{eGqFh$4N}Y+K+0V`ldaR_O4yEyqWk6{lWn~6Dsn`Y?3?2JJB?2= z(a9{Gp9hwX%JV4N64iLqnr+Kf^-OHfdTJ^Bai)qGU;iIf!1zv_UZFF%SNu5Rj!BUH z$Eu4vy;D;v-{J!RDWIPRYXCs{zr!ZEtZZ_$Tsa$ey_;+mwAU{bvKMdl<9IH>yQ*bA z;9*tEV$ti{Y5KBhDcLyhIB~C9Ho1Jfvrr?=F}l4HIYrwU^0qnJ+?V2X9i{96hSZ>S?Hl$4fiSBKPO{SxU#0rhv(i)>Wk!26paY(9 zqe?-@>~dRQ=SVz^V*%*i2M+KYL_JVQ=a`B+Z|)WWK9~i>yq6BiuLH?4FqDt+QDY-5 zQ?KCJ^oL&>OqVwIurp6hWW(2q!hZm#oiDZ*{hCY^0em=zsrS(~(D(?zJW2utH;$;F?9l(S^B>pWrBsRx1JfU8thARc+Pgp7N2(Rh z0CPdSVlbk*ss-`iE5~Z}uVH`?J(CR>cr(aYi`z<3a6bC^Y_{XC$*#V^IZN>vZ-C7G zHP@9dg~3_tkNjOz<`nY%fcQc##@mRb(!1s?)RJK=BuZU(hHWn8KSsR2+`I?G-%}@B zKxJwRAe$x^ojcoR&0N1T?*`*O-qk-kvi#gNuygpTB5WSaN7Ee^#LXKAnG~4+?pIVc zPtC__Kvw*Df9v9Q=jYGM29_T>_o}=#Q-|$!HATf*-hVUmu5TEBagtYwvFDU*6B9lH zH!D`*SsS`hVuLC14R;}B@zXUX*C(c*hZ$d?MSh5ZlZcg8^zDWoJ}Ht&!d!bp!tCC4 z8n}VU_TIn`pN!NDtb$Rpy zMK>FRL_JvD^S^i5efpR&#n$TUdNC+ykjV7pSnJ58_zU}r*t4f!1^GrLO>7>=2WfIL zJRg_T!WpzLgwC0x-0t6M36;YFt`?{=;zYKj-b`|}%WlB*s%oLc*_-Yze$D;|qGE@i zFHY4IJF?ebH3Q!6G@Wg_a!>85n#M>bFWccf;%jwFt*@B%MbQgEB+4FB^U~N|b}urB zJ61hux7z`&I(-kdDKBqK&(->%#f78+74q4m&lekxsurv6MeFT7-t@k|%;{k?$zt2(|2}e$H$*t~YguoB3$^)UC4rHwXXYM{ntkn_kH&Vq zTAdY6V0Cvgm5kd9*y~lH(tI-CGEOi_JoWlErn!lqakO+^lBi*GX|fSflT++(|Fxv% zy-mK34SM5(Q=wy}A)O@V`fH_t^A*5rCOPVg&z>!F%;-;EAITigmAv(Ky4-tn%%aW~ zs#WYSui@i|b9be#bkTQn`I4?t8;kB>&BGVzG0BiZhfF7=p%Kw_EfafUXb}cHtNSPh zolny0J6A91p=kec`RT*!iHyQ%@4Z!yQ??J2#cD`XA$)?LmiNm5|Muc|9sI!jyF}Do zCI9twPeNM34OMBa8UG$84#@NJc2CgMKmc3I7z<&UUHkjStexl0R@`K#{?%5lF0Ws! zz}6)!TNf;);EM5iXi;m{W_(t25GVJlX#rT`bv1!@ypNyX{)c`x?B$BDNy6}0@u z!fr3bzx#U4RxZTT3RyNeH?2cBvC5{swDAYTzcO8QiioN8CFA*Yu_4|ReTj_hvl6!W zV%(Qw)+nCIsEjl)mm^;wza_Ce!YvhwwxpIV)Qkmb06t(b+? zyB|7ut|;>BC4iZ_SmIVxk21C+V#?vsz@JyG0GF*|aS}R~P?Jx%@~!T~)0L=HI*@y? zUV_-M0w3@BIB}fefZwfOq5z`r!VAQT!6q4I_3w(=rrv%=gPd?B>A!^O*!7`17&)g`inb}$8 z1g=F@s7J?~m>-4T_k^Drcq?_er(#erc`ubyJvBoMrrEX7`D@osRnq|F#tr-Bt3*ci zr?pSkN9N~scd?S}OuHLx8;~;0!kzG3(+R~s;Nv=z!IV&`7)%L{i%H1DOJBkUsTD^F zEB4otovbBLb-qbA0j;!5eiPAKuVnIh#`C1SpBE}6d_2tNdM=Z`f!`E?W497#A!?mj z4W>OJcc-#*)yUj)PKKo}&mE^(c56j7%-M)y*m5T+1CfVP$~Nfhbi&r4AGJH*t1|Ac zW{EpZuJ*?(V%(BsJr{j6A0c_s1Z9w4FEdmV{C{EQvvfXx(eIOLHR`#S!YS9brL-pf zA8Eb@<7uw+78A~y!eG<#Z_6PI1Y5+$3oj0q>#&#=+biMnG1C?$v-}FubKvA{EzG?DS^*fdBQ!_Cp(cd|Uw1 z8(P;XyJ;lV0Z7kvH-RzC0eETZBGb_F8!5%VY-A&(F}-K+t36i_P1uww?R|AUDZa7F z!A49$@G^K&+JC#GPh-05O-6~Y$-qcb$1BTu2A&?LxuBL@bD2>|jIiZ_MUlokXBU|j zi>{!rfIXc7P2i{9?Wt0&`_jH+c~bE-0;{pYT7aMohVo|q)dTh%G0)o4xeZ0L-R)*$ zy9q%JtVR6!NPI=oi9+g4bjrFkc4K#<0BTqgU&K~V5GAXw7de#{TDg+y38OEsiIJEU zzPsb`!)oM-t9rgnC`}^N+KcouuW32aDKEFk~4}gDm zgIzZ;z@5c?yq9-ZZDqSn<(1UsiTOo3a)ycG+b=-dQ_JeQ;CpXMX*}i74#nnAyI%Tj zPZi!$Gx6I&T7FW8?sH-^Sy>?6R6UUzgwuv>v;*ojfgWzl-QeD6(senHFCSMFqKFXo z>(A0pcMcx=AKZz_yX5xb9*-WUW}diBPv71EX9DwwZtBh2(fx%P-z?#ROBsLx%NDJR zI2V$El@xoW_+qv^E^;Cz@z>)9jMYt*#FN6)l|JqJue% z3q`6ax%4$6(>v(|>an9Q&a7zUfZS|Q@ichQ)oi5ac~D$%Z%8&iT+`(T4~Yy_p-@vMl+!4yzsc zs>DNdxuu!v-eiMr48z-VIP5yX-P+)io#?{1HyooAOD8pbm_t;UPhyv(GA`x1P3gm$ z)i^em^fVkdnNce2t^<>ZZC|ZT@0}P%z;PqNSkia8!&emX-~K`7U$-g&oz^>xYtbz{ zAY^H~%*wixkXDF40fy2hpX8t@t8_p{uK9xg6>=PGBp!?S8`B3QWZ3jvtvJ(4bnGA; z{C4~zY+}i$kE%*Oy4=^e18;i}i&KUZ4bX`UT`+!7GyaHAiLD6(o9_R1A$VQcs%S`KT@*lwuS#wCGH#I-MGN+W<>d+~iR&Rb1{|0`)Pdk+Se z`{ZY_lZfq?nB{B9Q6JYbOS@&rGqRLQhkZc#Vw836A{8JrRwmk_yevXgQCl825j$S2 zf%47!-A?A9Z65m<`4~%z7vL+7u|4ovA~`jx`V{G|L~Q;DS>)cA!Pj!(ID37efq5PI zcd3|U1N5=3i!#~vmFeKHM=v*UFdrMGFa@lwgcuzfKz%y?jb@gQx`hLa7n>D2HiX#O zcAG*@GEs-#izyr9oEtS9Y@@fEvczlyEoCO}b0#y%dinJFi+89X9Nt6oeGaB`H`kC- z#4RMbAUGM(?AMk=`@RT83USY<#%m3&f^H{mkN_;hyZ#XUS7UtzI3CLMbDWPLWT04X zBg(s?hzPi~4`qz>7JGZ)Odq#7aW^9_$&JfTYB|!liySDW&5gX3%!%Fpm393@;TP5L z-9v%P1r@^V@nre2_7vnM?3WXplKK+%=1sSHB39JZtNVz_jMMH+A2Uu1?&P52+Z}6d z!`QK1{J@kA`B|YwzBqk1TB=;?WSO@_LM`=Z`_9EHYBev$7SB{lt4zGVCap2rN?uH(KeR`{K9(B129HPQjZ@XbWo& z<8yqu6vfm0AgDv#g}*eZ8&AH0-na7-D+rupme@i>!HNoKkPF4nRSxEwgTE;Rm)jea zhVD?S2+?VcW~t`sZeHnf*^zeU%MM4}bSTccV@hLJQgNx|h>lt{HXg5oRb_HMji`Sv z#Zt5|>piPx>h5SV1tke?q=dUE5?jH@Aha2{!~fU_XcaK*vPJ`mB4bhgg0x_6abDV7 z>aC80A(lak3k-|7>dF`fQS)x$Jlb3I)NEmWqd4>`Nj)f~0LE>bG_d`r1prpkDw8dX z&tQ|IqrwHZu4eL(C6u@3)igVu8gswW!iT)F$cv1%@!Zag-F?=hm4nPg1BPuG@C{nW zNR#TuZvI~5SE({RA3OE-pDkRa5rC#gny2x~I(gG>S5MTBk3-Kz$PO%Bwg)q`ztdR(~u=WoE;Ll2?iEpA+-3WMq!tGZbG#*Nlxf1F@$1E`;&h*#?oB zmq)9XCo8%XZK6Mx_nR}5IH^uQsZ8x$pOYeH9kScIjvf5>Te%CpSNGyo+7(+(p9rdkH`$9DYi*>CFtPV07=R}VtGSj$lv#@{@i!~2`u3g2v|s8WjE zRh3A71tTqh?i@*2aCLOkdy+%&W_umx$pyg_F&?tb;<9x!t%OCTeNwVhxB)wu4xRDu z9$1Ew&&*`Rwcnc%e))KC8E$!NHlZQax{4+KxoHBQVk?ukTg;B))(eN=UQ66SHn(6a zS7OUts7qZVBva`kHl8->xvQjNJuF2jO-K1}9^}{72)$Yk_c^w^U)jJu;C6Su(T^VA zWyFggx5IFH-dyNvwn_iIgI2^!WeQG`wI&O6b`?9qf~be#B5q&1d4xdab0=(~CnDx# z;QgunKn+jWeJrZMP@kl7zI$rV79@wJ zQwlwH@__YJ_+%Mlxb%9`v{hR$tQe(TqlVRm-A7i$ar1YU(?HWfDXl_d)|fT{7n=c* zuu%~xRd1Y3HwWhvz*OKm!+qf9Hd>ZvI|>U}+4>~=7{P8w^EArds{i<831 zlA?5A^yd*fra%gP|F}LaXdxx#j<|nLua8;DH;qPLKklR*>p2;Ql6b086b{t{h$12p zx{A;$p860NszKpWi?Eo>>grZlx?MNjeBEVhY}4bQ!gm#gQmd=<*11c%R5tKyin536k{dNc1#n#OA?lg_ik=ZP zN~Ue6n>F(eTXOU2tDe(}7Waq$x(77DAq}+so8qtwWJT4n=#i13V*NHI5i)bp z>{(HKmbbksL-??Et9$(tTS69xEj`?|-!G@+JJ{~1V4i^j`nJ9P#8%w*Bmv^~1Y9xB zJ>z`|+wqeD!J2;Atiu|ZqAk{-cLgi-xkltL0k?37EWTqxKbAzo_*?zqbiEVs59WR<|XtI7c5xU&*4B}aPJCY zfz=dO)4oSd-_&ES>XI^1MXy8$LpcknYY_h9Kda z{>_mw;rAqR$Jk361VF>KIH~+2T=TCE^=~g423TEY)s`GSZh}#JFwWsTJyy~*k`-x2 zR2Zrz%xJd^@}MQH4Hh`yd{+2yzKY02Ed8pSw5%B@b~rfnO^MEv4cqESv6fWF1!|=& zWxQ}Aytf1Rfngk|xeKUW$n1WFiLGVtQ&;*d=~_1?i<3WAZ-DM3aP<9+Bxqys?e{dz zWS%HzL#xtOoUgXm@9EnKv9N$e(kAE#U$%3+iHK;^y|rvOzzVM=!PcytYNcNZ6P&vL ztyW?xdPMWaC(tkfTr?H4XBpk3FTD#xT1<<3G6>N^9Yht`rF@@K?HQV?~g9fu#y*rEwEy|mA0sm zK_YB7GS(>>0?AF4l{Xl>naGXPiWa(zQT){`^ay^qrct+}E!duPNzp_DAWVRC?4%h=E(qvYI-0oo5PAg(HiRzY4L()(prR~)dI~S;6ACWPy(j;b@TtvXd z1kW1g{7o19(((7r{dvM$QUt9HVvAv%VRS|HU-9>jQ0A1Bwi~`zF^cu(4rR7FDc&cf21Kg1c7kn1S@nO!i3+H$~r4SY`?Jz^!E>W zYZ|ISQf6{vycwd11Sw_L4YO~7>>$|OMh`RVeP8^QWc=Zp4|$=5dY5+K>|y$s%;FZR zsqRCJL%`XLBHn5G3OW5*{7hzq7I13;qUj9y=xrvlNY=rlJ5BI({+da8c65a@CQHSN znD$oYE2KfC4yirpUGVzaz45mYXFZ5>m&#IR0AagzRhJr_n&Mld@DM@KiRaICK7S~p zZ)~qsvoWKs>gsutMTuajsxS$@l=CN2`a`z_8-ZWet3&TdU!Ql+N0ZOGRolo#>pJw@ z!$^H>q}@ML|~TZ}mo#9+q>#FsoT zg+&ff6G&?b^Qen;#qS6l>uO8Qq@Fi)O}5LO`N_g9V0V(9?ao|m{hFM#>?!Ibeu#@L z@d7=(inL&XeM;DxCOf$>#KyB1oSCh(dT~t(PcP<<6=hdNY!>t=wA-n$wdB$7!hx(B z`2L?%VnTpGvD8QecTAB?K1ULcXNJp4qU)&6QWV4N#XbT`qVr*Gw6=%<4+}^5*JeDu z5z(8cIA6Kpll{IDS3TdqhysbJ)(@e=o}>&tymK$>E$FLBlO=kiG=m^K3dhBU-Bgs} zD?V50h)6vC8aT+-V;c*vZMhe2YE4!SmY_uA{KmDdVuG#4zmhR@DKFWz&HAf(v1q2r zBJe5D8d!Yj9^MO3UOy5N_vyyOpyHoDP$WQIQC_=aO>m`goz zq4ov82dN`CY< zD0=o)&Ss}@w2kA640s_@zF9i~RD`Rc1!;MNstt|K+(HiZYzm9qWyqip%i(Q=jGOT~clo&dkDNq;Wf_CX7htej&qjLee^K|V>naa~-%nMNJNz3I~*s7t+&5Awg~dIxhgIKM%VXQLEATd{g*~?yz4$xkJ=B8wRQ%p2p_YY6 zm5punO11WWkZ0{f1@^EnX2ws~H`Y^l5O@VFqvpVw{BF4(f<(sr1gxm%^9C%bR`^2~ zxLX=}%uQ2M^MuKiSh*a~41BxTkdRiQE6yWGZNh08dwQN-+gw7@IRB_D{BH5K{?z;G zu!vZa;qT2g-iN&Kl9^_xw$(WW_NoFoX8u=h6Oai}ks#NP^eG0fTH{9Iv3wseS3}U) zyi6DnC6tOn5~V$E%T{y}j#8_34`EI@aJ zA&Fm!hw!2whrQ41v5B0Yq{6Zdr4XEAylhX*LBMVBAFEbf2#9ttq#+sT%f2>iTG(AV!1LV|<%7$a zppht9Q%hSz1Eh(fvjMC^8GGnGB?IcUl`&ER(#=2_=KBG9(;AeuRCc6kRQRtYnJ9wf zR0DyRMFHHWeUp(qg6yt$8*)ToOiWQsn{z6>yKZvI+gnaeLjfVHEVSiUG%%Y{m9=PG zr9qA^9k126@G8gzaEJcHCw@@aNq_oOx&VPSVUHXp6 zr9P<~ws9Ys1X7L3`FSJoAG+`s!@pK0AQVEs=}s04qsC+i=!Bj}eJP+?Yr`k=W9;DB zEUYOzro(SG4U^l=6+TZ7O=bBA>~9%rW_pm?v$Kk;)+I2G*ymdyB$U1(ZbaslUA`$V zO0INzF^!L+5y}1w_zr!cK7Wgffu<)h0(Q-L+fUs>q$^lQ zVk}ihlpIqL!bcdkDm~X*&dKEcx*2E^?d@f5-vc_R^mK zOkWPa9$jv@Bk#z`C__i^I6>(kLeYlCN2O1#%IhJ8u(Bm=A%oX6vC`x}!1yf4(?{72!B6f<~8YkB{MISy%T)Lbv79Vig-XjHd+`a5#(P#VA%tS)|HxV|*|Q3`8o)l4P=2>yN?OIOmOam)6W4l=WEce;*P@64;n72cLZ;fxr-5*foY*lPd?9{lf?kVyC>`MasPA2hlr9#D_e=pVqtAl?uu!}08 zz)l68Fyl1q%X^Y=Pz+hB!!E80te(3k1X+qf7pK;*malQgJQf*#wu7@Dkj<~FLWUlQ zZPRsx3)G>^V?k?)sJTo!5{WlV>OKQT#6n&98)<1Y)$u6`(~)t8ty1bNt;%t&#U~n` zDV2tfNc+&vpCv;G)aUQ%I{dByY$qXhPn#lU4Q}elIL*p1*5b#{Clo0zvdAih)B1dh zXIJqH7ZnoYV`?g%<~m~ksU-bIUz~TSt!80a^(RIsutfO{LNBhQaaxtOZNmrTKto%# ziv(+*{d_)>rs81`;+J;ah&Wl-$YRl(yp$KQ{nHW+Dz@s|N!5MF6#srRzv=l0M%{To zvZBY^D5RoZBq^7PIkFnyK(OI9)dhG?la6?!`J9{IIHLOo4!Kij2*oP>6)~-Lfp0>+ zLelyXBlW+zfbDgh5d>ED1;;exPmz`<{ zCjb|$|G|}y-?pihKJ3G|U$AGO*%J-;tBSJSJMeU8q!tZo1me{} zNaB&*21n5LgZBfJ;FK;tqRZdyomBl3M-crox_-=?+q|_^=IkAhZzX3(#Wep50pMt4 z$Yp)#aVTW+2qy;W$Xbi42VNENhD9cq9zauU1T*ianmwanAMpx2xS2IKQm^<4y*sRS zQ&PvOAZwh8^;sMv4jMZ9>ISY!mp8>Q;XVq@b-C79Y_P4M)w(rMG>ZSodM2}BCq7Q zr?(-D$PmQkT$EXIE`)lu4~>4{V7UlK*apa(QgK^gbKg(B;sK5SU5mF` z(p$|8P~_uGJ@?YJL&#T$g8(T3x;LV@Q7fOfkYAanDzWOVh->jG=mm{8BftXrv;16Gm`3R(EbbN|Js7DgwS^(ArbVAy}|9lwV)IvY< zPv%h=&U=*{=u>SF1oji`$$iBI!$A|nVec^Pplpj~YedcH$Zk`czed`&e{oX{*BOm; zRMcs+3DLj%@&!bSctYO|CUkM=J+%I$kCD~;M2Seri+I+H$M=2)$!t}8Kn;*|8Gs{x zBg^0H^Q^{dSq9SD;)hep;qka2jo}ew%m*uJY;90g(EfF7(Lgt?eoLPE(^aJf=r{OA zBcW(RN9bFL+#3RPG~ApZXxILV44cBy27@?F-sXoe9lfmy#GSQl6NC#>J*Mgu~xz_%<$ zUQs4AQ{;pYmLq_#*(WEHXkx3&K1d+NggwR^9C5mIYH5h=oF1ApUabpa@V>wX7xmTT zzteoQ1A!yUKYVUz4rEVEXs0(D&lbf=Ohy=UIp#?}g;<)5lY`|NE=-}+1ZQ}t*SV)ra#KKMn&|B|Wz&q6M=uRP5{X-QF=)Tsb$3ns_qaj08* zEHl|Royo|z2FkNRfMHKEV;8W=VKqjNiH9DgQIGQz-zf(1h{HItq;<(fYDiFXe3pff zuM!bBE;fRgs_mFMdE9`k2~LrlOu4NWzK9Ncl=YXBXdV zF}Ag&aI%e4OQQAyX$sZAEv-VFHA~*rv(aXP;-s1_tH6LUq|Ue`pM_q5K5p&26J17x z+WHrUZi3prDRs6DLrhabipZ4s%?OqYQ41r~}Uj2&P|BW>Z|TRz}5 zI&iK>02IHhfp?5+y9TqXV-usA8DK21RakN5Rav1K(fDW(!DSGBHrBdd+`CaNt!=2Y z+|I0_*rrZ7mZOn_D*lPcLyhi!u@uBXufaY?$6vIwV zly8oQ{;LWc8uADkLiFo*JZktuiF|{Fn8tCky!)ZRrUarHz%W#jzD}{XP@yEX-Am_R zogO~6+?K^TOd;O396rLSd_VJ~{~=a>4MBHWmekYJAXp3Y&^sEYAtWR&#wIqpj;zw( zLyw!&0%P2av!(i(UhxHCOUes?jDzz)?^XWY|2#23zr4xa+~pGwSixC2-{gF2uH~{Y zAeiDAku&>J{@A(ql~ILKD%Jker2C<#PAWQgwM%y)+>DYBKmZ*1cP^DJxlcXN^2jCp zQX9bzl5cHH6^JPJxUSVcgRxg^G=R1nfP-=VaDl&o@MR^^C-eNO{6&>u`Iv6`eF6K8 z25jy!92Cl=&ksSdA80}~gmDnEIU&4U#B+SkXt?-sOdMwtYnLEgnjacMx#>DvueE?s zi*B3{DqRdYHFrt27e#94*Hi=}Q9+$8gOc5UM`3MnciuYCMZ;f|b7ueY1fyx{IVy5; zuw?5ig!ujk(EZ5+QMJ#-L;!>Kum>o^Dym(EM^>Iv{aou%5gt(mc{vWFaCT$wikTN> zczm8wGjWa?fA^q&u3Q6oIfjKU6NxLRV>Dk^V%-Gd90U;==!|k*gY?_$f|wbk zvh8vp2-{Jz{T-~5*D|7mcvnDLrdbn{9NNOt+A2d2$WUgWp?8;>LgjDZ=M=0TARXk@0-A!FNU=9u5j_Z=>B>(egoChrtEGvvK;I3a?3A{5@rOxeVwNHoKRE6>Vt@r$Fw~4 z7-hTG8;#>4U1II5|1DEuJXs{izkKm9?l20p`I-Um^ zL6{P}<#bzPd4!w|EZOc#E-Mw$tqwxvy2?0Wl;n>%C5bBPvn8m~em)C&u@9V&)t%MM z*6{R1qp+y7k&rNu5|IL!z+|ZexZfmM-n7{ih=H zO&k2u{&&a$s|M9q?h)}NsB{oN9cEBu?3*$#{NiBZxkMMJxACH6&9sV)ftG1UhQ9;Q=vV3J5F7>a9z24s`-!Y*rZV z)LU>liNz1S!xwP5%TSq1aaYl~ToZALTMZJ&JwT{;a}(s|UybF)bKxxxRXT1Q9joQN zLeW}I=m75;HOlrSJLOfe1dbVVNk%@h5BHdjd$w)!q*sRV{ zitM&I1vl2`{AgWJM?=LRaq%D}M&pru=V^s}beU-%jhEaT`9}=6c2HbBTq1q;D{_DO z0;-Dre=jOrNEcpu7CN230c^E9Z)pK&%_pGHefl$>L40MWIj~8bX6(KvlFTV3wOu`O z6E-;Ati=mtY)yAsAkdmc=Qm)3XOMgoBrZ8OJ2;Xmv9lko2h+$1cyTZmD8M|JTEs0o6CJRRE#_V_3SKt2lkh(36#DzLkn`&;x2{Y z?#~Njt^A-DEe_$XzHSPEr(d%KL+!v4@)!*wrb>u}7ugL#q3$8T1XqN@V*x1N5`kwQmtcd=|x^iP<@dWgVvTRd`6ZEQckd zA}7(E=JMtJQ*2|(3Ew(|84bbz#nx4aRlPOcLx)mQ(j_3>T?Yk0Ql%RN3F(rCgP?*) zC|!ay(%mT`4I&`j-QDo*!@b^mzrTF+QGV{dXV0uzYxWFGnCBtH*}CMR#eXYl;B2bi zS7-qVtNk8fJ}oz13w00KP0aBLq9`2xvW65rR zG{Cu^2KFA|y^!}k9z9JS{a7?J!~I6z&V@yLnmdh=<$3@1tH00O6~*bbm$GkL2@e_A z`Ty^Oh;dYz$+ChtAf{|@(f4;TOiaEe{7@iZNQnM(yvCQP!4TH`8cNgp9n-bnu%|zW zDh*TgCBN!(><2mOU%r@d8@|QOw)}=i77Z6he_I}m8J9U({!d!aI}19m^(mNoNGc4~ zBJWQi83BMKRP^>RW*}#4H(k=|L!|fX3!$G@P~w<0>4|sx5JfAYG#EG6i|byapPA}g zzWGSc!g@uNcPz1M((h#N*wnsNhavt&-%F@M1+@Ooq}PCi=v<7<8;AabI*;!rvZk{} z=_H_8z7e&fHRX1bk_cgn(2#D)4Dm-LAiiByM*oC9C#pdI94-%Q7jX6GFN-}%=bnj0 zIl=RNK>0+Ls~O2ohPLF>J|t|AY@HShrqQFRKJkW=tas(HOH8bvtlm1q&t7$i^kWoN zuHQlBFAX+}30AH>N5BNy!to=IgXEeu?ez_o#>Ap7fk|W1WMnMF<6zyV{Ftg4#W)z$ z7H1D});hGbf1ZK!Q!T(1YD{kaK^o%=62T{M1sb(Ac|9yFS{JQ+VYig4doakBsCkvx zZ@WzXP=MYmz{(t9lc!MqdpCX~O<&3{&?`5UUo3hSFijXpVwhgQ36!u0etbA_VfUXs z!3U`F-Z-EuRM^sE9x))Ca6eXeN=NJoO&2iaD=?BnNsg{Jg+(cn4?k8MYq#qQAd7HbvufcGwml3?vJBclds5S=vQS*=A^iv7Gn*h1jLhFD@87+ zMu~@a+7$fTv{5nM=KnWg`3fZ??Emo<+6T&?mIKRC;7nZ;1Ob36anvwfh07C+4mF7d0tfAkG`=R!n>xxUYf_F^ z{DI*-oRP25%$|oOrilHvcPNz_R6zdsegh~2S<>x;!&%&CqYz&{ynrOFYGRVNFDOsn zh*_{A0?%$H`Qr}cS;j{q`2~6n-w5Hy&kC_m9Q`74QD)RIcTzBNUtmQMRbUuC*Uq%P zO^cdOM2-C$#PxF!^alfm=r2~R@%~INvh|;Y4TvZHuB5rAVMbr$WW-0qqYPROqnJ?$ z`g$UV$^~xxx@7@^*m@+=NgvwI3?k*dRQ4HZf4=Z1Cxr?HDMn1uP5ifcYZg{ebMHQY zL3)OVJvmS!(tbygzaYw2P+Km=X#a;pUjh$5@O@q5dv@lK5P>~;^04BN1_457Nh^$3 zBBshsfm7=?XCOP~Pfy}(Ti*-sE>uxj#FN6?SUb<7zKprOFJ#Ys%+jrjUv&5qYXnKw zLm}sX4iyd;oqQ3Yb`E9~QebC6d*nTkKf&b59L-Ki<(*3MmIaH_rtppLFy;UP-xs41x@HE)Jv*_#;!ME{4C=_Kgr zV?-gD>3{F;pI10}ouL1tdmiGzs^$tc+;``3Ljecr8^M)<`mJrG43(*ZlO?yk$WI74)ZcaV?=>ROc6|b{i!0; zZ%g_!Ie;EBC#U8hda3)KjB2gW+0X_^YJ;l^t}K(W0*xq-;mdd#n(1&10*(D-0;SAx zbm%VXtMLW*%|?)m7EC%XGGa$~V4U_N^u@s#pBnbK?6ZzmIOX0~d9B(X>|8qb;*j)- z;lv3+sk@vuoazP3O$MLj`3onV6(B-8S3hCVw!^8XaCqtssHeiESVTBT!tBBIifu)) zE^FqpL{6?W4c=UgeNFfkkzv3RS)xi4b0-_aGL5+Tj+fk++~P0(R(^77Srk38mpb1N z)?ftq$q?)K&qUxI2>7ZDOLF)>%NMETeVYgG%R`%``XLrc|M~7-Fe{9gHt9Z;i;;D< z3)wT)XweWuRpIuY^8lzD!P2xQATu9fLCDf1*-<`tf%sWLbDtnVmvTh3!{pPpP_UGu zX{_$KVWN~RaY0;1z&#z2igJF$2*17m@PF`|W&Q+WUDoE9&PhA@0=+j4ob;OrzNI?= z2jSA<;?Ut!hu=3v(&yFr9*uFrZ9S@uw7|G@JiK;KR8tMXGHH8ZN5*UxiIz1^yhXr5ndxhN90Y>@ocm2q^b%#p_;mS+QGrt(jUW>e+SYalHyPPL5wRM=g+U68ig@@!ih3y296RF5 zL?zs+*_DuLLYv4A*DmjQqJDInqT1ir_z!~7U(vRQ3kRRFZB^tol#}c0|aIH{P?bQ?RdBG9y-{&HU4B< z(2621DO9b%h3Si)+C1%cd{T$drIJM{gY>oG9^_iLG5(h8GX(V6Os3pZd$z7Uqe)Xz zb-T!4aifSC))^^FfBKDsS13+be{XL8G=ZJjYonXEOJYpX+<*wk9dst%I~cq49zz6p z*KxG>&Z8nxkvtu++JiJf6NJFSq6EIiQ0$Z451cT@3i44alm|R4gj5L$lByUpqRhiT zcyEHddl91WU!|-!zQXr5%7j~rwIt9dfMh;5lZ1V9WrC$(3MpYMFvj5Y+L#4ACoJ|_ok;AhrB#vhi7+aP;knpR@$At=XE9xx*klz%1-ttn!<81>$SPl!6E;#O=0E*^ zzgZ7N3bazTgg|P4UgLby@n_N?&OQhTCCR5E8P?VrR5LbOUMS7hi^NySY4zL8A*V|B zIRh?=V`{snmQ!viDmgk?jwFBd=>mQm%b{V&!|YsIZk%=0e1~5S;VFdYFA;5ggf_8br3C^-d{JH#f^u>P(-Bq(Si)epOVtw2}uTF`d?|2Jx7NZ@=a(yMiSS zJ23OT8ok}OcR0!(ZtYcBW|^QxA*d^cESpls(+|h!{Tc-Qn|~ACH||c|w{4$;OmYJ5 zcEhFT)w6KmRx29p1oKQ0MA}Iy3Ihx6utkN|pdyZ`RmE;@@>GF?9CxAbZ!_cUSG7-8 z6`oNt0llLu*ysyn80Km{6O;l!OGmN0C2zO_=7Kt-Smu$6 zJlTyg{6S;Z$k8w3fx9D91bv_(v)iqg3qea6nWO))q#Hbui3r=S3VlI44RVuJxuCwn zu}V0WXc?4cY!N|$1w=P>H;dN(ib9TH`0 zuS~fW-rEw*^ewP@cBI{b3W=*!L!inDYQ$Eq(O3WyJIDUqBt(3r)k6Fjp49%57tSj@Vv~baUr9Zkq+I}tWo<>Vq4)04`Q5sKh_AP+qeAXTUbA= zJ_8`-EE}=gLFmJR;}vnK5REjdT8Z== z*Se#5NU@YHJ6HPOD{}vgC`<=D&Wa4EH#?YkX<0#a#7YRh7{R@SkdBX#aT0>>AfJBn z$=8V?jPf|KbT$@qs1w34^7H;Kr1KsEuz{+l?5X^Y*vOWM)n%?Fl%%<%@8b&oktINJ zRG^t~x*uG-u&>Z>tA;Fn{0NRmm;keP#yw_>y=BKbZO>YPJUs;T<4UP==%H@LGQ?bC zF+uX&2s{TEk`|#@@lZCm!E0>Od7!zUA(GO=#PeRhgl$k)SO;Oms&o-cGoxcLNn?huZSO)%XUX@*giLq|_x4{VXD z=R;Q2f0lEDKh01&lYC=8u&dnWTuuYLGrax)?i8nC#h%0L(a-P5g)~RxBRp}}sWyG? zWlI3Oq4K6m@~8&(lP`!*xG{!1yib`UEh`vrfZ26U#HlC0OPq>TQ9@q+3}@7t z;mjLYl40I$1H(t0IM=M)zCW0{-$QsKDTgeaV6W6{$mQukfQuGKgOy8E`I^3iFsnj3 z8Jo0EDGUc^uss(`*14%!=hu9H^SohCpc?;)Y@j3#_p@v>ob4e2vKFm>1h*zjT$ZXCWsYkLL(X9xu|6P|V04gcydYH*$ zDzz>5z}jGCcOH^5J0dU2pmr|*n)OfhWnkl0`UWFp)0|9}ZY}%pFBt#ZV-;xpCRk|F z+~A-{>X)1rlAIZrU)ZN_O>w+txdXbs30A2{)DQ<*Ej{QP)(nVM@%xNcBepz7i8doE zhUn84hdNfX895}?zGPjj7ylzlz&{o7EIB$nHC#p$4!|OBvVJ*|+(-qQx;f46+}pjS z4*3j6yf@`}F5>LhRrNqgM{^rM)86Kc6M#Kn{BbR)L197bfJ8o5DE zxBE;uxoQ+49j`ypodvh1pk~FApno`BWciB;0yR{Th{9UGu^o8n_W90Rcu5hxF#ILP zEnw-xhIy())c)vcwFqj(ouMl9NGny2ImKdiG%^58zO6$(h+`CfV)PZ_e?NycH?jxw z6gR|z+0KZXjbFu}rPMTR>>&(tLk(F!g$DiCX>6)d3+I(!)8b3s25(aCA%n&RHw%Ib zNsp1_G9$>ps5$k9XX#^QMfI}66gxf|<(Yg+b>xh{ji8&R$d*G!&B;Ul#B!YXYt*JK z=E~83KL8%tvfxUL-16!NZ-mB7ZY0D`(%i_t=Z^q5pSUf!X!?V%A`@N#=C=7UD!h8; z&Cjni%tKr<_Y0Xg$iZI>;uies%Ysz>R9S}{8yB+50A(2Crepg{xA;3%1y3!hmkGLG zeHoB?;#WEVBn(;PY|}z@8e(#xyLGz!hTL6?X+^%t*tmigxf#z3hgC7~hQr>QK6~mt z58D$eBjG0gV!u}wa^z|%_)(h-n}QAHyWc-Fnm^4N;Nu?5gXr1)zFsR1AV;Fgp5Mm3 z)h}g8Gt{kqKN=IA1~J_=$k#=C8^ymN4bk$~-0f}*{jg7|gFw~Tpg ztmUO&+dE?vjlevZphqRpRfFp7h=#IX!NZ9;BPJ3G~Z=CL4YIW2tJV5&EJPw zuJNkde1P-eCdy=X`m@2RkPnbi|-ft88B$-ouxVVvXl9+gdMBP7<_#pVGk8 zc-dRm;Izv9`@t1DVSoA`Hy+vm+UyjUWl2XpJ{r~fMGrpg4{!pnaiMxSqF`|c22mT^ zK7^U!ksqW-JwPsd(D4RnSsOs~cHbjv^I$%y!iLZ=qhnbT-WhyGo$!VYy+3@)5SIz{ zr>gHO=H#;9zRY(j1>W1!v?or)<7h%Uh^Rof>e){~xJ`IX1WrUwe3{6rTO`Taw+cj@ zvqv=%`tc3iANZm4kmcYJ0@67E%1rWvi;Ii2KTbHXI8ZH_AM?pRK5w5|vI7bOqLrx3 z`vF5XqO1)ES0oJ_+!TkrsC(=>^rmf>EG$y*_431PEb z^@bMa!CUZRD(ZP&0#-j^0ZTGpDkO596Auz9rS|iox!R{eN9qLmCsDt{$RDs7o_A`a zM6v7fJ1&vy|IjfGrXjN`+)~%EF8_wD!{VO(kA0b_syhnI#xF>Q+A1P+yQKr_!S_vR zi)R0q2Yle7Yl8kWF*-CHv509u5uUy7=;mIB2HkS71EmTW3Ph@L1P^j}ZH(_Q8sVy; zFe~L2m71B%HcJm?_GyFWePJ{YhYfrt*(xTiK%4Xsx@Bui@awY!ER?zJy}^tg-9p1J z%lk4G|HcuZ_IolxyZ|P$Udm<;YAbrkZV9X2N4dE=epqx8P#S1NyUr zVl@uVVVbXUt*M&$qqGVPX|1NF^pe&pl>aJIg!-sME9zXB3Y}Jqs~nddd*NFG=HH0A zAAAQbnH05?OFCxT>xKJjMeO5+FzbO#zCqgOB`a52hK0xrU4Ml*56e3a< z{K#9c!!a4u(^26@GQ14Q%T_T^8v(Bh0M-!LMokXV*MoMUBE~VHKm$6f=}J2Z9q?(M z<6;wAdprp0$=kOgN_WVSkmNM4r zLw~Tp5S=D@56X*8?O)m)#bMA(C&Xf1+<_`uKKPXPe*ZS2CxcaS$6MMNN8{1r7r)hs zzsxrau}%)*Gv`}SD9t6?75q@}AD=#n0dA_rlEE{1^WnWmKZj&}o5>1kGlc8(5t3gN z@FvGT>qeoL;)$azHGNO8_@ITF{JlKFUs~U9_~F9B>9U2WWaNi6Ou=t;pF)~S1y&O& z5>2-FikCuKhp>N6$#*5KPZ+Ml{9tfIDzeTH2ay(DNv2Q`71xcZt0|q9u`BnDF`r&1`8_ag^?h~OJcDx;C6xV?@Ie}aViZl%I!NZPjNWTKp5+W|GBcuV_e@VvnGYX!c-7j+{ zsBp^|=#1-jd--ERyCYfuBf>1EMl+NoGS9cHTE%HZYH%^(>?2}z_TLVnKM~UeJfar_ zp%nKA3K7=ig60iGeTm9hr~Q)qmbq58$?7lRe!|oiRMiS4IJu$}vZaksz4Zc8YQ?H) zsl==FRxK_E&$Q%;Kj$!?dnYtY z=CeXX8{(SD$#()O0zE1SNjywllBt2z#6MmTCF#hcqExW{s$M%Z%yaklVh9>S+Z&eq zNOsFD!{Z0(y1=72_Erkhm$0t3HF`SqJQMw#m5H}bcKYPTptq^jR6C85+15(R{G088--geakU2DySoC5VJ=+1%cq-BxD;R~SXC>%GqnGBY>P?;z zCbK-srYh0MEAuG^j^Lc{hzwz+ni#3Svk117(-fC{D)(g!o$dBPDZN11-PuRH?7`}= ze?62qFhG%-vU6Dgtyv!_pJ!$6TjYVIk567cGPt^(OSK)22?Y2Vv{hds>!&$O@B$2U zi#C`kON$JeoCZLGm3Y2)0-+eiIY~p!+Uf-c3E@VB2+`gcr>sA9#H+g8quKdfsF62e>Q)0 zUR>?)Dk94B?LBfVTKGev6=9SE!hcjOO@4(PC*7Xn(EZOW*D6(5Y0I2j(xcAjh(Qp2{EEgm?;c-tBRh07&fzKzVB# ziC>v1^F0SG4m^u?W*M5Xr&Z~E=h9qY4Q885?A}JDo`OX8w7+Bvi5C-4OR->P{Djt} zbMpSL9(?)0cdF>4d^9_S$g7E#z;Myb8k3G6>-jal$@8&4YRq#q3hGanbg0}{J`%F1 z^GfV@f+?G z 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�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 F{{RDM7LNb` literal 0 HcmV?d00001 diff --git a/docs/images/workspace.svg b/docs/images/workspace.svg new file mode 100644 index 0000000..cfa253a --- /dev/null +++ b/docs/images/workspace.svg @@ -0,0 +1,21 @@ + +两个原生客户端,一个共享内核apps/macos 和 apps/windows 分开维护界面,共同使用 crates 内的翻译、AI、配置、历史记录、OCR 与系统适配。此图为目录示意。 + + +各有风格。共享内核。 +平台交互,分开打磨。共同能力,一起向前。 + + +macOS +AppKit · Apple Vision +apps/macos +Windows +Win32 · Windows OCR +apps/windows + + +共享 Rust 能力 +翻译与 AI · 配置与历史 · 语言与消息 · OCR 与系统适配 +crates /  一份业务逻辑,两端同步演进 +工作区结构示意 · 非应用界面 + \ No newline at end of file diff --git a/docs/releasing.md b/docs/releasing.md new file mode 100644 index 0000000..31ede67 --- /dev/null +++ b/docs/releasing.md @@ -0,0 +1,74 @@ +# 构建与发布 + +## 触发策略 + +| 事件 | 构建验证 | GitHub Release | +| --- | --- | --- | +| 推送 main | Mac Universal + Windows x64 | `vX.Y.Z-dev.RUN.ATTEMPT`,预发布,不改变 Latest | +| 推送其他分支 | 同上 | 不发布 | +| PR | 两端编译/测试、Windows 打包启动;Mac 无签名编译 | 不发布,不读取签名 Secrets | +| 推送 vX.Y.Z 标签 | 同上并执行发行验证 | 正式版,更新 Latest | +| 手动 workflow_dispatch | 构建与临时 artifacts | 不发布 | + +唯一工作流为 `.github/workflows/build.yml`。Mac 和 Windows 同时成功是发布前提,任一失败都不会发布单边版本。 + +## 正式发布 + +版本唯一来源为根 `Cargo.toml` 的 `[workspace.package].version`,所有 package 继承它。先更新版本并刷新 Cargo.lock,通过验证后提交至 main,再推送对应标签: + +```sh +cargo check --workspace --locked +cargo test --workspace --locked +bash scripts/tests/run-release-tests.sh +git tag vX.Y.Z +git push origin vX.Y.Z +``` + +标签与版本不符会失败。不要移动已发布标签或覆盖已有 Release。脚本先创建草稿,上传后重新下载实际附件、校验哈希和更新签名,再公开;失败清理此次创建的草稿。发布正文包含双平台下载说明、权限注意事项、GitHub 自动变更说明及提交列表。 + +## 附件 + +| 文件 | 用途 | +| --- | --- | +| `TTREE_X.Y.Z_universal.dmg` | Mac 安装包,包含 arm64 + x86_64 | +| `TTREE_universal.app.tar.gz` | 同一个签名 App 的更新归档 | +| `TTREE_universal.app.tar.gz.sig` | 更新归档 minisign 签名 | +| `latest.json` | 旧更新客户端兼容清单,保留原公钥及平台键 | +| `TTREE_X.Y.Z_windows_x64.zip` | Windows 便携包,内含 `TTREE/TTREE.exe` 与许可/说明 | +| `SHA256SUMS` | 全部五项附件的 SHA-256 | + +当前纯 Rust UI 未实现自动更新界面,用户从 Release 下载手动替换。保留旧更新附件协议不代表新 UI 已实现更新功能。 + +## 两层 Mac 签名 + +社区证书固定为 `TTREE Open Source Code Signing`,SHA-1 `B8D254561BB6CAD78AA71FA18D62A32D10F50C08`,Bundle ID 为 `com.samwstu.ttree`。指定要求必须始终绑定此证书指纹,以延续录屏 TCC 身份。禁止替换、重建或把指纹改成可由 Secret 覆盖的值。 + +CI 复用已有四项 Secrets: + +- `MACOS_COMMUNITY_CERTIFICATE`:加密 P12 的 base64。 +- `MACOS_COMMUNITY_CERTIFICATE_PASSWORD`:P12 强口令。 +- `TAURI_SIGNING_PRIVATE_KEY`:加密的 minisign/rsign 更新私钥。 +- `TAURI_SIGNING_PRIVATE_KEY_PASSWORD`:至少 16 字符的更新密钥口令。 + +旧仓库内其他身份/指纹 Secrets 不作为可信预期来源。公钥位于 `scripts/release/updater.pub`,从原发布配置原样迁移,不生成新密钥。 + +编译步骤没有上述 Secret 环境变量;编译完成后临时导入固定证书,签署 App,随后仅独立 signer 接收更新私钥。退出时删除临时签名 Keychain。 + +发布硬门禁包含 deep/strict 验证、Authority、Info.plist、封印资源、指定要求;并解开 tar.gz、挂载 DMG 验证容器内的 App。签名失败、ad-hoc 或证书变化都阻止发布。Mac 包非 Apple 公证,首次安装需“隐私与安全性 → 仍要打开”,随后录屏授权并重启应用。 + +本机沿用既有加密材料及 Keychain 口令: + +```sh +source scripts/macos/signing-env.sh +scripts/macos/package.sh universal-apple-darwin 1 +# 仅编译,不读取签名材料 +scripts/macos/package.sh universal-apple-darwin 1 --build-only +``` + +Mac 发行输出为 `dist/macos/`,Windows 为 `dist/windows/`;中间 App 在 `target/universal-apple-darwin/release/bundle/macos/TTREE.app`。Windows 本机打包命令为 `./scripts/windows/package.ps1`。 + +## 验证与证据 + +Actions 保存每次 Mac/Windows 产物七天;Windows 另保存原生启动检查结果与界面截图。正式附件从这些已验证 artifact 合并产生,再下载草稿中的附件复验。 + +TCC 权限延续需另做物理机 A→B 实测:授权 A,安装不同 CDHash 但同证书/指定要求的 B,不重置 TCC,执行 OCR 不应再要求授权。签名验证通过只能证明身份一致,不能宣称已完成这项交互验证。 diff --git a/scripts/branding/generate-icons.py b/scripts/branding/generate-icons.py new file mode 100644 index 0000000..10f421a --- /dev/null +++ b/scripts/branding/generate-icons.py @@ -0,0 +1,41 @@ +#!/usr/bin/env python3 +"""Rebuild app icons from the monochrome SVG. Needs librsvg; ICNS needs macOS.""" +from pathlib import Path +import shutil +import struct +import subprocess +import sys + +root = Path(__file__).resolve().parents[2] +icons = root / 'assets/icons' +work = root / 'target/branding' +work.mkdir(parents=True, exist_ok=True) + + +def render(size, destination): + subprocess.run(['rsvg-convert', '-w', str(size), '-h', str(size), + '-o', str(destination), str(icons / 'icon.svg')], check=True) + + +for size, filename in [(1024, 'icon.png'), (128, '128x128.png'), (32, '32x32.png')]: + render(size, icons / filename) +frames = [] +for size in (16, 24, 32, 48, 64, 128, 256): + path = work / f'{size}.png' + render(size, path) + frames.append((size, path.read_bytes())) +offset = 6 + 16 * len(frames) +entries = [] +for size, data in frames: + entries.append(struct.pack(' Privacy & Security and choose Open Anyway. -3. Trigger screenshot OCR and allow Screen & System Audio Recording. -4. Fully quit and reopen TTREE after granting permission. - -All releases use the same certificate-pinned designated requirement so Screen Recording permission can persist across updates. Install TTREE only from this repository's Releases. diff --git a/scripts/macos/import-certificate.sh b/scripts/macos/import-certificate.sh new file mode 100755 index 0000000..85d05c1 --- /dev/null +++ b/scripts/macos/import-certificate.sh @@ -0,0 +1,36 @@ +#!/usr/bin/env bash +# Print only the temporary keychain path; never print signing material. +set -euo pipefail +ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" +PINNED_IDENTITY="TTREE Open Source Code Signing" +PINNED_SHA1="B8D254561BB6CAD78AA71FA18D62A32D10F50C08" +WORK_DIR="$(mktemp -d "${TMPDIR:-/tmp}/ttree-signing.XXXXXX")" +KEYCHAIN="$WORK_DIR/signing.keychain-db" +cleanup_failed() { security delete-keychain "$KEYCHAIN" >/dev/null 2>&1 || true; rm -rf "$WORK_DIR"; } +trap cleanup_failed ERR +umask 077 +if [[ -n "${MACOS_COMMUNITY_CERTIFICATE:-}" ]]; then + "$ROOT_DIR/scripts/release/validate-secrets.sh" certificate >&2 + printf '%s' "$MACOS_COMMUNITY_CERTIFICATE" | openssl base64 -d -A -out "$WORK_DIR/cert.p12" + CERT_PASSWORD="$MACOS_COMMUNITY_CERTIFICATE_PASSWORD" +else + cp "$HOME/.config/ttree-code-signing/community-signing.p12" "$WORK_DIR/cert.p12" + CERT_PASSWORD="$(security find-generic-password -s com.samwstu.ttree -a community-code-signing-password -w)" +fi +KEYCHAIN_PASSWORD="$(openssl rand -hex 24)" +if [[ "${GITHUB_ACTIONS:-}" == "true" ]]; then + echo "::add-mask::$KEYCHAIN_PASSWORD" >&2 +fi +security create-keychain -p "$KEYCHAIN_PASSWORD" "$KEYCHAIN" >&2 +security set-keychain-settings -lut 21600 "$KEYCHAIN" >&2 +security unlock-keychain -p "$KEYCHAIN_PASSWORD" "$KEYCHAIN" >&2 +security import "$WORK_DIR/cert.p12" -k "$KEYCHAIN" -P "$CERT_PASSWORD" -T /usr/bin/codesign >/dev/null +security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k "$KEYCHAIN_PASSWORD" "$KEYCHAIN" >/dev/null +security find-certificate -c "$PINNED_IDENTITY" -p "$KEYCHAIN" > "$WORK_DIR/cert.pem" +ACTUAL_SHA1="$(openssl x509 -in "$WORK_DIR/cert.pem" -noout -fingerprint -sha1 | sed 's/.*=//; s/://g' | tr '[:lower:]' '[:upper:]')" +[[ "$ACTUAL_SHA1" == "$PINNED_SHA1" ]] || { echo "Wrong community certificate" >&2; false; } +if [[ "${GITHUB_ACTIONS:-}" == "true" ]]; then + sudo security add-trusted-cert -d -r trustRoot -p codeSign -k /Library/Keychains/System.keychain "$WORK_DIR/cert.pem" >&2 +fi +rm -f "$WORK_DIR/cert.p12" "$WORK_DIR/cert.pem" +printf '%s\n' "$KEYCHAIN" diff --git a/scripts/macos/package.sh b/scripts/macos/package.sh new file mode 100755 index 0000000..5ecf072 --- /dev/null +++ b/scripts/macos/package.sh @@ -0,0 +1,97 @@ +#!/usr/bin/env bash +# Build first without secrets; sign and verify the exact containers distributed. +set -euo pipefail +ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" +TARGET="${1:-universal-apple-darwin}" +BUILD_NUMBER="${2:-1}" +MODE="${3:-all}" +VERSION="$(python3 "$ROOT_DIR/scripts/release/metadata.py")" +TARGET_ROOT="${CARGO_TARGET_DIR:-$ROOT_DIR/target}" +APP_DIR="$TARGET_ROOT/$TARGET/release/bundle/macos" +APP_PATH="$APP_DIR/TTREE.app" +RELEASE_DIR="$ROOT_DIR/dist/macos" +UPDATER_KEY="${TAURI_SIGNING_PRIVATE_KEY:-}" +UPDATER_PATH="${TAURI_SIGNING_PRIVATE_KEY_PATH:-}" +UPDATER_PASSWORD="${TAURI_SIGNING_PRIVATE_KEY_PASSWORD:-}" +unset TAURI_SIGNING_PRIVATE_KEY TAURI_SIGNING_PRIVATE_KEY_PATH TAURI_SIGNING_PRIVATE_KEY_PASSWORD +unset TAURI_PRIVATE_KEY TAURI_PRIVATE_KEY_PATH TAURI_PRIVATE_KEY_PASSWORD +if [[ -z "$UPDATER_KEY" && -n "$UPDATER_PATH" ]]; then UPDATER_KEY="$(cat "$UPDATER_PATH")"; fi +if printf '%s' "$UPDATER_KEY" | grep -Eqi '(minisign|rsign) encrypted secret key'; then + UPDATER_KEY="$(printf '%s' "$UPDATER_KEY" | openssl base64 -A)" +fi +case "$BUILD_NUMBER" in ''|*[!0-9]*) echo 'Invalid build number' >&2; exit 2;; esac +case "$MODE" in all|--build-only|--package-only) ;; *) exit 2;; esac +case "$TARGET" in universal-apple-darwin|aarch64-apple-darwin|x86_64-apple-darwin) ;; *) exit 2;; esac +if [[ "$MODE" != "--build-only" && "$TARGET" != universal-apple-darwin ]]; then + echo 'Distributed macOS assets must be universal' >&2; exit 2 +fi +cd "$ROOT_DIR" +if [[ "$MODE" != "--package-only" ]]; then + if [[ "$TARGET" == universal-apple-darwin ]]; then + env -u MACOS_COMMUNITY_CERTIFICATE -u MACOS_COMMUNITY_CERTIFICATE_PASSWORD cargo build --locked --release -p ttree-macos --target aarch64-apple-darwin + env -u MACOS_COMMUNITY_CERTIFICATE -u MACOS_COMMUNITY_CERTIFICATE_PASSWORD cargo build --locked --release -p ttree-macos --target x86_64-apple-darwin + mkdir -p "$TARGET_ROOT/$TARGET/release" + lipo -create "$TARGET_ROOT/aarch64-apple-darwin/release/ttree" "$TARGET_ROOT/x86_64-apple-darwin/release/ttree" -output "$TARGET_ROOT/$TARGET/release/ttree" + else + env -u MACOS_COMMUNITY_CERTIFICATE -u MACOS_COMMUNITY_CERTIFICATE_PASSWORD cargo build --locked --release -p ttree-macos --target "$TARGET" + fi + rm -rf "$APP_PATH" + mkdir -p "$APP_PATH/Contents/MacOS" "$APP_PATH/Contents/Resources" + cp "$TARGET_ROOT/$TARGET/release/ttree" "$APP_PATH/Contents/MacOS/ttree" + cp assets/icons/icon.icns "$APP_PATH/Contents/Resources/icon.icns" + /usr/libexec/PlistBuddy -c 'Clear dict' "$APP_PATH/Contents/Info.plist" >/dev/null + PLIST="$APP_PATH/Contents/Info.plist" + for pair in 'CFBundleName TTREE' 'CFBundleDisplayName TTREE' 'CFBundleExecutable ttree' 'CFBundleIdentifier com.samwstu.ttree' 'CFBundlePackageType APPL' 'CFBundleIconFile icon.icns' 'NSPrincipalClass NSApplication' 'LSMinimumSystemVersion 11.0'; do + /usr/libexec/PlistBuddy -c "Add :${pair%% *} string ${pair#* }" "$PLIST" + done + /usr/libexec/PlistBuddy -c "Add :CFBundleShortVersionString string $VERSION" "$PLIST" + /usr/libexec/PlistBuddy -c "Add :CFBundleVersion string $BUILD_NUMBER" "$PLIST" + /usr/libexec/PlistBuddy -c 'Add :LSUIElement bool true' "$PLIST" + /usr/libexec/PlistBuddy -c 'Add :NSHighResolutionCapable bool true' "$PLIST" + /usr/libexec/PlistBuddy -c 'Add :NSScreenCaptureUsageDescription string TTREE 需要屏幕录制权限以完成自由框选截图 OCR 翻译。' "$PLIST" +fi +test -x "$APP_PATH/Contents/MacOS/ttree" +if [[ "$MODE" == "--build-only" ]]; then + echo "Unsigned verification bundle: $APP_PATH" + exit 0 +fi +WORK_DIR="$(mktemp -d "${TMPDIR:-/tmp}/ttree-package.XXXXXX")" +OWN_KEYCHAIN="" +MOUNTED=0 +cleanup() { + if [[ "$MOUNTED" == 1 ]]; then hdiutil detach "$WORK_DIR/mount" >/dev/null 2>&1 || true; fi + if [[ -n "$OWN_KEYCHAIN" ]]; then + security delete-keychain "$OWN_KEYCHAIN" >/dev/null 2>&1 || true + rm -rf "$(dirname "$OWN_KEYCHAIN")" + fi + rm -rf "$WORK_DIR" +} +trap cleanup EXIT +SIGNING_KEYCHAIN="${MACOS_COMMUNITY_SIGNING_KEYCHAIN:-}" +if [[ -z "$SIGNING_KEYCHAIN" ]]; then + OWN_KEYCHAIN="$("$ROOT_DIR/scripts/macos/import-certificate.sh")" + SIGNING_KEYCHAIN="$OWN_KEYCHAIN" +fi +REQUIREMENT='=designated => identifier "com.samwstu.ttree" and certificate leaf = H"B8D254561BB6CAD78AA71FA18D62A32D10F50C08"' +codesign --force --options runtime --timestamp=none --sign B8D254561BB6CAD78AA71FA18D62A32D10F50C08 \ + --identifier com.samwstu.ttree --requirements "$REQUIREMENT" --keychain "$SIGNING_KEYCHAIN" "$APP_PATH" +"$ROOT_DIR/scripts/macos/verify-signature.sh" "$APP_PATH" +security lock-keychain "$SIGNING_KEYCHAIN" +mkdir -p "$RELEASE_DIR" +tar -czf "$WORK_DIR/TTREE_universal.app.tar.gz" -C "$APP_DIR" TTREE.app +TAURI_SIGNING_PRIVATE_KEY="$UPDATER_KEY" TAURI_SIGNING_PRIVATE_KEY_PATH="$UPDATER_PATH" \ + TAURI_SIGNING_PRIVATE_KEY_PASSWORD="$UPDATER_PASSWORD" "$ROOT_DIR/scripts/release/validate-secrets.sh" updater +# Only the pinned standalone signer receives updater credentials (no frontend build). +TAURI_PRIVATE_KEY="$UPDATER_KEY" \ + TAURI_PRIVATE_KEY_PASSWORD="$UPDATER_PASSWORD" \ + npx --yes --package @tauri-apps/cli@2.8.4 tauri signer sign "$WORK_DIR/TTREE_universal.app.tar.gz" >/dev/null +mkdir -p "$WORK_DIR/stage" +ditto "$APP_PATH" "$WORK_DIR/stage/TTREE.app" +ln -s /Applications "$WORK_DIR/stage/Applications" +hdiutil create -volname TTREE -srcfolder "$WORK_DIR/stage" -format UDZO -ov "$WORK_DIR/TTREE_${VERSION}_universal.dmg" >/dev/null +cp "$WORK_DIR/TTREE_${VERSION}_universal.dmg" "$WORK_DIR/TTREE_universal.app.tar.gz" "$WORK_DIR/TTREE_universal.app.tar.gz.sig" "$RELEASE_DIR/" +if [[ "$TARGET" == universal-apple-darwin ]]; then + ARCHS="$(lipo -archs "$APP_PATH/Contents/MacOS/ttree")" + [[ " $ARCHS " == *" arm64 "* && " $ARCHS " == *" x86_64 "* ]] || { echo 'Universal binary is missing an architecture' >&2; exit 1; } +fi +echo "Signed macOS assets: $RELEASE_DIR" diff --git a/scripts/signing-env.sh b/scripts/macos/signing-env.sh similarity index 94% rename from scripts/signing-env.sh rename to scripts/macos/signing-env.sh index 982cfad..da1b0e3 100755 --- a/scripts/signing-env.sh +++ b/scripts/macos/signing-env.sh @@ -3,8 +3,8 @@ # # 私钥本身不在仓库内,统一存放在本机固定路径(见 PRIV_KEY_PATH)。 # 私钥口令从 macOS Keychain 读取(account 见 PASS_KEYCHAIN_ACCOUNT),不在脚本里硬编码。 -# 用法:source ./scripts/signing-env.sh && ./scripts/package-macos-community.sh -# 或: . ./scripts/signing-env.sh && ./scripts/package-macos-community.sh +# 用法:source ./scripts/macos/signing-env.sh && ./scripts/macos/package.sh +# 或: . ./scripts/macos/signing-env.sh && ./scripts/macos/package.sh # # 密钥、加密标记或强口令缺失时给出明确提示并退出(非零),避免产出弱签名更新包。 diff --git a/scripts/verify-macos-community-signature.sh b/scripts/macos/verify-signature.sh similarity index 100% rename from scripts/verify-macos-community-signature.sh rename to scripts/macos/verify-signature.sh diff --git a/scripts/package-macos-community.sh b/scripts/package-macos-community.sh deleted file mode 100755 index 6f8adaf..0000000 --- a/scripts/package-macos-community.sh +++ /dev/null @@ -1,242 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "$0")/.." && pwd)" -TARGET="${1:-universal-apple-darwin}" -BUILD_NUMBER="${2:-1}" -MODE="${3:-all}" -APP_NAME="TTREE" -BUNDLE_IDENTIFIER="com.samwstu.ttree" -PINNED_SIGNING_IDENTITY="TTREE Open Source Code Signing" -PINNED_CERT_SHA1="B8D254561BB6CAD78AA71FA18D62A32D10F50C08" -SIGNING_IDENTITY="${MACOS_COMMUNITY_SIGNING_IDENTITY:-$PINNED_SIGNING_IDENTITY}" -CONFIGURED_CERT_SHA1="$(printf '%s' "${MACOS_COMMUNITY_CERT_SHA1:-$PINNED_CERT_SHA1}" | tr -d ':' | tr '[:lower:]' '[:upper:]')" -SIGNING_KEYCHAIN="${MACOS_COMMUNITY_SIGNING_KEYCHAIN:-}" -UPDATER_PRIVATE_KEY="${TAURI_SIGNING_PRIVATE_KEY:-}" -UPDATER_PRIVATE_KEY_PATH="${TAURI_SIGNING_PRIVATE_KEY_PATH:-}" -UPDATER_KEY_PASSWORD="${TAURI_SIGNING_PRIVATE_KEY_PASSWORD:-}" -unset TAURI_SIGNING_PRIVATE_KEY TAURI_SIGNING_PRIVATE_KEY_PATH TAURI_SIGNING_PRIVATE_KEY_PASSWORD - -contains_encrypted_key_marker() { - grep -Eqi '(minisign|rsign) encrypted secret key' -} - -updater_key_is_encrypted() { - if [[ -n "$UPDATER_PRIVATE_KEY" ]]; then - if printf '%s' "$UPDATER_PRIVATE_KEY" | contains_encrypted_key_marker; then - return 0 - fi - printf '%s' "$UPDATER_PRIVATE_KEY" | - openssl base64 -d -A 2>/dev/null | - contains_encrypted_key_marker - return - fi - - if [[ ! -f "$UPDATER_PRIVATE_KEY_PATH" ]]; then - return 1 - fi - if contains_encrypted_key_marker < "$UPDATER_PRIVATE_KEY_PATH"; then - return 0 - fi - openssl base64 -d -A -in "$UPDATER_PRIVATE_KEY_PATH" 2>/dev/null | - contains_encrypted_key_marker -} - -if [[ "$SIGNING_IDENTITY" != "$PINNED_SIGNING_IDENTITY" ]]; then - echo "community signing identity must remain $PINNED_SIGNING_IDENTITY" >&2 - exit 2 -fi - -if [[ "$CONFIGURED_CERT_SHA1" != "$PINNED_CERT_SHA1" ]]; then - echo "community certificate fingerprint does not match the pinned TTREE identity" >&2 - exit 2 -fi - -case "$MODE" in - all) ;; - build-only | --build-only) MODE="build-only" ;; - package-only | --package-only) MODE="package-only" ;; - *) - echo "mode must be all, build-only, or package-only" >&2 - exit 2 - ;; -esac - -if [[ "$MODE" != "build-only" ]]; then - if [[ -z "$UPDATER_PRIVATE_KEY" && -z "$UPDATER_PRIVATE_KEY_PATH" ]]; then - echo "TAURI_SIGNING_PRIVATE_KEY or TAURI_SIGNING_PRIVATE_KEY_PATH is required" >&2 - exit 2 - fi - - if [[ "${#UPDATER_KEY_PASSWORD}" -lt 16 ]]; then - echo "TAURI_SIGNING_PRIVATE_KEY_PASSWORD must contain at least 16 characters" >&2 - exit 2 - fi - - if ! updater_key_is_encrypted; then - echo "updater key must be a passphrase-encrypted rsign/minisign private key" >&2 - exit 2 - fi -fi - -case "$BUILD_NUMBER" in - '' | *[!0-9]*) - echo "build number must contain digits only" >&2 - exit 2 - ;; -esac - -case "$TARGET" in - universal-apple-darwin) - ARCH_LABEL="universal" - ;; - aarch64-apple-darwin) - ARCH_LABEL="aarch64" - ;; - x86_64-apple-darwin) - ARCH_LABEL="x64" - ;; - *) - echo "unsupported macOS target: $TARGET" >&2 - exit 2 - ;; -esac - -VERSION="$(node -p "require('$ROOT_DIR/package.json').version")" -TAURI_VERSION="$(node -p "require('$ROOT_DIR/src-tauri/tauri.conf.json').version")" -if [[ "$VERSION" != "$TAURI_VERSION" ]]; then - echo "package.json and tauri.conf.json versions must match" >&2 - exit 2 -fi - -TARGET_ROOT="${CARGO_TARGET_DIR:-$ROOT_DIR/src-tauri/target}" -BUNDLE_ROOT="$TARGET_ROOT/$TARGET/release/bundle" -MACOS_DIR="$BUNDLE_ROOT/macos" -DMG_DIR="$BUNDLE_ROOT/dmg" -APP_PATH="$MACOS_DIR/$APP_NAME.app" -ARCHIVE_PATH="$MACOS_DIR/$APP_NAME.app.tar.gz" -RELEASE_DIR="$TARGET_ROOT/community-release" -CONFIG_JSON="$(printf '{"bundle":{"createUpdaterArtifacts":false,"macOS":{"bundleVersion":"%s"}}}' "$BUILD_NUMBER")" -WORK_DIR="$(mktemp -d /tmp/ttree-community-package.XXXXXX)" -MOUNT_DIR="$WORK_DIR/mount" -MOUNTED=0 - -cleanup() { - if [[ "$MOUNTED" -eq 1 ]]; then - hdiutil detach "$MOUNT_DIR" >/dev/null 2>&1 || true - fi - rm -rf "$WORK_DIR" -} -trap cleanup EXIT - -build_unsigned_app() { - cd "$ROOT_DIR" - npm run tauri build -- \ - --target "$TARGET" \ - --bundles app,dmg \ - --no-sign \ - --config "$CONFIG_JSON" -} - -if [[ "$MODE" == "all" || "$MODE" == "build-only" ]]; then - build_unsigned_app -fi - -if [[ ! -d "$APP_PATH" || ! -x "$APP_PATH/Contents/MacOS/ttree" ]]; then - echo "Tauri did not produce the expected app bundle: $APP_PATH" >&2 - exit 1 -fi - -if [[ "$MODE" == "build-only" ]]; then - printf 'Unsigned macOS app ready: %s\n' "$APP_PATH" - exit 0 -fi - -cd "$ROOT_DIR" - -REQUIREMENT="=designated => identifier \"$BUNDLE_IDENTIFIER\" and certificate leaf = H\"$PINNED_CERT_SHA1\"" -CODESIGN_ARGS=( - --force - --options runtime - --timestamp=none - --sign "$PINNED_CERT_SHA1" - --identifier "$BUNDLE_IDENTIFIER" - --requirements "$REQUIREMENT" -) -if [[ -n "$SIGNING_KEYCHAIN" ]]; then - CODESIGN_ARGS+=(--keychain "$SIGNING_KEYCHAIN") -fi - -/usr/bin/codesign "${CODESIGN_ARGS[@]}" "$APP_PATH" -if [[ -n "$SIGNING_KEYCHAIN" ]]; then - /usr/bin/security lock-keychain "$SIGNING_KEYCHAIN" -fi -"$ROOT_DIR/scripts/verify-macos-community-signature.sh" "$APP_PATH" - -rm -f "$ARCHIVE_PATH" "$ARCHIVE_PATH.sig" -tar -czf "$ARCHIVE_PATH" -C "$MACOS_DIR" "$APP_NAME.app" -if [[ -n "$UPDATER_PRIVATE_KEY" ]]; then - TAURI_SIGNING_PRIVATE_KEY="$UPDATER_PRIVATE_KEY" \ - TAURI_SIGNING_PRIVATE_KEY_PASSWORD="$UPDATER_KEY_PASSWORD" \ - npx --no-install tauri signer sign "$ARCHIVE_PATH" -else - TAURI_SIGNING_PRIVATE_KEY_PATH="$UPDATER_PRIVATE_KEY_PATH" \ - TAURI_SIGNING_PRIVATE_KEY_PASSWORD="$UPDATER_KEY_PASSWORD" \ - npx --no-install tauri signer sign "$ARCHIVE_PATH" -fi -test -s "$ARCHIVE_PATH.sig" - -EXTRACT_DIR="$WORK_DIR/archive" -mkdir -p "$EXTRACT_DIR" -tar -xzf "$ARCHIVE_PATH" -C "$EXTRACT_DIR" -"$ROOT_DIR/scripts/verify-macos-community-signature.sh" "$EXTRACT_DIR/$APP_NAME.app" - -DMG_SCRIPT="$DMG_DIR/bundle_dmg.sh" -DMG_PATH="$DMG_DIR/${APP_NAME}_${VERSION}_${ARCH_LABEL}.dmg" -DMG_STAGE="$WORK_DIR/dmg-stage" -if [[ ! -x "$DMG_SCRIPT" ]]; then - echo "Tauri did not produce the expected DMG bundling script: $DMG_SCRIPT" >&2 - exit 1 -fi - -mkdir -p "$DMG_STAGE" -ditto "$APP_PATH" "$DMG_STAGE/$APP_NAME.app" -rm -f "$DMG_DIR"/*.dmg -"$DMG_SCRIPT" \ - --volname "$APP_NAME" \ - --volicon "$DMG_DIR/icon.icns" \ - --window-size 500 350 \ - --icon-size 128 \ - --icon "$APP_NAME.app" 140 170 \ - --hide-extension "$APP_NAME.app" \ - --app-drop-link 360 170 \ - --no-internet-enable \ - "$DMG_PATH" "$DMG_STAGE" - -mkdir -p "$MOUNT_DIR" -hdiutil attach "$DMG_PATH" -nobrowse -readonly -mountpoint "$MOUNT_DIR" >/dev/null -MOUNTED=1 -"$ROOT_DIR/scripts/verify-macos-community-signature.sh" "$MOUNT_DIR/$APP_NAME.app" -hdiutil detach "$MOUNT_DIR" >/dev/null -MOUNTED=0 - -rm -rf "$RELEASE_DIR" -mkdir -p "$RELEASE_DIR" -cp "$DMG_PATH" "$RELEASE_DIR/" -cp "$ARCHIVE_PATH" "$RELEASE_DIR/${APP_NAME}_${ARCH_LABEL}.app.tar.gz" -cp "$ARCHIVE_PATH.sig" "$RELEASE_DIR/${APP_NAME}_${ARCH_LABEL}.app.tar.gz.sig" - -CDHASH="$(codesign -d --verbose=4 "$APP_PATH" 2>&1 | sed -n 's/^CDHash=//p' | head -n 1)" -DESIGNATED_REQUIREMENT="$(codesign -d -r- "$APP_PATH" 2>&1 | sed -n 's/^designated => //p')" -{ - printf 'version=%s\n' "$VERSION" - printf 'build_number=%s\n' "$BUILD_NUMBER" - printf 'target=%s\n' "$TARGET" - printf 'certificate_sha1=%s\n' "$PINNED_CERT_SHA1" - printf 'cdhash=%s\n' "$CDHASH" - printf 'designated_requirement=%s\n' "$DESIGNATED_REQUIREMENT" -} > "$RELEASE_DIR/signature-metadata.txt" - -printf 'Community release artifacts: %s\n' "$RELEASE_DIR" -ls -lh "$RELEASE_DIR" diff --git a/scripts/package-pure-rust-macos.sh b/scripts/package-pure-rust-macos.sh deleted file mode 100755 index e70a918..0000000 --- a/scripts/package-pure-rust-macos.sh +++ /dev/null @@ -1,117 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -export PATH="/opt/homebrew/bin:/usr/local/bin:$HOME/.cargo/bin:$PATH" - -ROOT_DIR="$(cd "$(dirname "$0")/.." && pwd)" -APP_NAME="TTREE" -BUNDLE_IDENTIFIER="com.samwstu.ttree" -PINNED_SIGNING_IDENTITY="TTREE Open Source Code Signing" -PINNED_CERT_SHA1="B8D254561BB6CAD78AA71FA18D62A32D10F50C08" -VERSION="0.2.0" -BUILD_NUMBER="${1:-1}" - -TARGET_DIR="${CARGO_TARGET_DIR:-$ROOT_DIR/target}" -BUNDLE_DIR="$TARGET_DIR/release/bundle/macos" -APP_PATH="$BUNDLE_DIR/$APP_NAME.app" -CONTENTS_DIR="$APP_PATH/Contents" -MACOS_BIN_DIR="$CONTENTS_DIR/MacOS" -RESOURCES_DIR="$CONTENTS_DIR/Resources" - -echo "[1/4] Compiling 100% pure-Rust TTREE release binary..." -cd "$ROOT_DIR" -cargo build --release -p ttree-app - -echo "[2/4] Assembling macOS App Bundle at $APP_PATH..." -rm -rf "$APP_PATH" -mkdir -p "$MACOS_BIN_DIR" "$RESOURCES_DIR" - -cp "$TARGET_DIR/release/ttree" "$MACOS_BIN_DIR/ttree" -chmod +x "$MACOS_BIN_DIR/ttree" - -if [[ -f "$ROOT_DIR/assets/icons/icon.icns" ]]; then - cp "$ROOT_DIR/assets/icons/icon.icns" "$RESOURCES_DIR/icon.icns" -fi - -cat > "$CONTENTS_DIR/Info.plist" < - - - - CFBundleDevelopmentRegion - zh_CN - CFBundleDisplayName - ${APP_NAME} - CFBundleExecutable - ttree - CFBundleIconFile - icon.icns - CFBundleIdentifier - ${BUNDLE_IDENTIFIER} - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - ${APP_NAME} - CFBundlePackageType - APPL - CFBundleShortVersionString - ${VERSION} - CFBundleVersion - ${BUILD_NUMBER} - LSMinimumSystemVersion - 11.0 - LSUIElement - - NSHighResolutionCapable - - NSScreenCaptureUsageDescription - TTREE 需要屏幕录制权限以完成自由框选截图 OCR 翻译。 - - -EOF - -echo "[3/4] Signing $APP_NAME.app with pinned community certificate ($PINNED_CERT_SHA1)..." -TEMP_KEYCHAIN="" -cleanup() { - if [[ -n "$TEMP_KEYCHAIN" && -f "$TEMP_KEYCHAIN" ]]; then - security delete-keychain "$TEMP_KEYCHAIN" >/dev/null 2>&1 || rm -f "$TEMP_KEYCHAIN" - fi -} -trap cleanup EXIT - -SIGNING_KEYCHAIN="${MACOS_COMMUNITY_SIGNING_KEYCHAIN:-}" -if [[ -z "$SIGNING_KEYCHAIN" ]]; then - P12_PATH="$HOME/.config/ttree-code-signing/community-signing.p12" - if [[ -f "$P12_PATH" ]]; then - P12_PASS="$(security find-generic-password -s "com.samwstu.ttree" -a "community-code-signing-password" -w)" - TEMP_KEYCHAIN="$(mktemp -u /tmp/ttree-signing.XXXXXX).keychain-db" - KC_PASS="$(uuidgen)" - security create-keychain -p "$KC_PASS" "$TEMP_KEYCHAIN" - security set-keychain-settings -lut 300 "$TEMP_KEYCHAIN" - security unlock-keychain -p "$KC_PASS" "$TEMP_KEYCHAIN" - security import "$P12_PATH" -k "$TEMP_KEYCHAIN" -P "$P12_PASS" -T /usr/bin/codesign -T /usr/bin/security >/dev/null - security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k "$KC_PASS" "$TEMP_KEYCHAIN" >/dev/null - SIGNING_KEYCHAIN="$TEMP_KEYCHAIN" - fi -fi - -REQUIREMENT="=designated => identifier \"$BUNDLE_IDENTIFIER\" and certificate leaf = H\"$PINNED_CERT_SHA1\"" -CODESIGN_ARGS=( - --force - --options runtime - --timestamp=none - --sign "$PINNED_CERT_SHA1" - --identifier "$BUNDLE_IDENTIFIER" - --requirements "$REQUIREMENT" -) -if [[ -n "$SIGNING_KEYCHAIN" ]]; then - CODESIGN_ARGS+=(--keychain "$SIGNING_KEYCHAIN") -fi - -/usr/bin/codesign "${CODESIGN_ARGS[@]}" "$APP_PATH" - -echo "[4/4] Verifying macOS community signature & TCC designated requirement..." -"$ROOT_DIR/scripts/verify-macos-community-signature.sh" "$APP_PATH" - -printf '\nPure-Rust TTREE.app packaged and verified at: %s\n' "$APP_PATH" diff --git a/scripts/release/checksums.py b/scripts/release/checksums.py new file mode 100644 index 0000000..a0c5baf --- /dev/null +++ b/scripts/release/checksums.py @@ -0,0 +1,42 @@ +#!/usr/bin/env python3 +"""Portable SHA-256 manifests shared by Windows, macOS and publication.""" +import argparse +import hashlib +from pathlib import Path + + +def digest(path): + with path.open("rb") as source: + return hashlib.file_digest(source, "sha256").hexdigest() + + +def write(directory, name): + paths = sorted(p for p in directory.iterdir() + if p.is_file() and p.name != name and not p.name.endswith(".sha256")) + if not paths: + raise ValueError("no assets to checksum") + (directory / name).write_text("".join(f"{digest(p)} {p.name}\n" for p in paths)) + + +def check(directory, name): + lines = (directory / name).read_text().splitlines() + if not lines: + raise ValueError("empty checksum manifest") + for line in lines: + expected, filename = line.split(" ", 1) + if Path(filename).name != filename or filename in (".", ".."): + raise ValueError("unsafe checksum path") + if digest(directory / filename) != expected: + raise ValueError(f"checksum mismatch: {filename}") + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("directory", type=Path) + parser.add_argument("--write") + parser.add_argument("--check", action="append", default=[]) + args = parser.parse_args() + for name in args.check: + check(args.directory, name) + if args.write: + write(args.directory, args.write) diff --git a/scripts/generate-latest-json.sh b/scripts/release/generate-manifest.sh similarity index 84% rename from scripts/generate-latest-json.sh rename to scripts/release/generate-manifest.sh index 5d81dcb..10ac2b6 100755 --- a/scripts/generate-latest-json.sh +++ b/scripts/release/generate-manifest.sh @@ -2,7 +2,7 @@ set -euo pipefail -ROOT_DIR="$(cd "$(dirname "$0")/.." && pwd)" +ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" RELEASE_DIR="${1:-}" TAG_NAME="${2:-}" REPOSITORY="${3:-ZASENJC/ttree}" @@ -22,12 +22,7 @@ if [[ ! "$REPOSITORY" =~ ^[A-Za-z0-9_.-]+/[A-Za-z0-9_.-]+$ ]]; then exit 2 fi -VERSION="$(node -p "require('$ROOT_DIR/package.json').version")" -TAURI_VERSION="$(node -p "require('$ROOT_DIR/src-tauri/tauri.conf.json').version")" -if [[ "$VERSION" != "$TAURI_VERSION" ]]; then - echo "package.json and tauri.conf.json versions must match" >&2 - exit 1 -fi +VERSION="$(python3 "$ROOT_DIR/scripts/release/metadata.py")" ARCHIVE_NAME="TTREE_universal.app.tar.gz" ARCHIVE_PATH="$RELEASE_DIR/$ARCHIVE_NAME" diff --git a/scripts/release/installation-notes.md b/scripts/release/installation-notes.md new file mode 100644 index 0000000..3971bb2 --- /dev/null +++ b/scripts/release/installation-notes.md @@ -0,0 +1,7 @@ +## 安装与使用 + +**Mac:** 打开 Universal DMG,将 TTREE 拖入“应用程序”。若首次打开被阻止,请在“系统设置 → 隐私与安全性”选择“仍要打开”。截图 OCR 需授予“屏幕与系统音频录制”权限,授权后完全退出并重启 TTREE。包使用固定社区证书签名,未经过 Apple 公证;同一证书用于维持更新前后的录屏权限身份。 + +**Windows:** 解压 x64 ZIP 到固定目录,运行 `TTREE/TTREE.exe`,按 `Ctrl+Shift+Space` 呼出窗口。包未使用商业代码签名证书,可能触发 SmartScreen,请核对官方来源及 SHA256SUMS。OCR 依赖系统对应语言的文字识别组件。 + +翻译和对话共用业务库,分别提供 AppKit / Win32 原生界面。内置模型首次使用时独立下载。当前纯 Rust 版本使用手动下载替换升级;更新归档及签名为旧客户端保留。配置中的 API Key 当前保存在本机 JSON,请勿分享配置文件。 diff --git a/scripts/release/metadata.py b/scripts/release/metadata.py new file mode 100755 index 0000000..69efd71 --- /dev/null +++ b/scripts/release/metadata.py @@ -0,0 +1,46 @@ +#!/usr/bin/env python3 +"""Single source of release metadata; no dependencies or signing material.""" +import argparse +import os +from pathlib import Path +import re +import tomllib + +ROOT = Path(__file__).resolve().parents[2] + + +def version(): + value = tomllib.loads((ROOT / "Cargo.toml").read_text())["workspace"]["package"]["version"] + if not re.fullmatch(r"\d+\.\d+\.\d+", value): + raise ValueError("workspace version must be X.Y.Z") + return value + + +def resolve(event, ref_type, ref_name, run_number, attempt): + app_version = version() + stable_tag = f"v{app_version}" + publish = "false" + prerelease = "true" + release_tag = f"{stable_tag}-dev.{run_number}.{attempt}" + if event == "push" and ref_type == "tag": + if ref_name != stable_tag: + raise ValueError(f"tag {ref_name} must match {stable_tag}") + release_tag, publish, prerelease = stable_tag, "true", "false" + elif event == "push" and ref_type == "branch" and ref_name == "main": + publish = "true" + return dict(app_version=app_version, release_tag=release_tag, + publish=publish, prerelease=prerelease) + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--github-output", type=Path) + args = parser.parse_args() + if args.github_output: + values = resolve(os.environ["GITHUB_EVENT_NAME"], os.getenv("GITHUB_REF_TYPE", ""), + os.getenv("GITHUB_REF_NAME", ""), os.environ["GITHUB_RUN_NUMBER"], + os.getenv("GITHUB_RUN_ATTEMPT", "1")) + with args.github_output.open("a") as output: + output.write("".join(f"{key}={value}\n" for key, value in values.items())) + else: + print(version()) diff --git a/scripts/release/publish.sh b/scripts/release/publish.sh new file mode 100755 index 0000000..9f4663a --- /dev/null +++ b/scripts/release/publish.sh @@ -0,0 +1,53 @@ +#!/usr/bin/env bash +set -euo pipefail +ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" +cd "$ROOT_DIR" +: "${APP_VERSION:?}" "${RELEASE_TAG:?}" "${PRERELEASE:?}" "${GITHUB_SHA:?}" "${GITHUB_REPOSITORY:?}" +RELEASE_DIR="$ROOT_DIR/dist/release" +NOTES="$RUNNER_TEMP/release-notes.md" +DOWNLOADED="$RUNNER_TEMP/published-assets" +DRAFT_CREATED=0 +PUBLISHED=0 +cleanup() { + if [[ "$DRAFT_CREATED" == 1 && "$PUBLISHED" == 0 ]]; then + gh release delete "$RELEASE_TAG" --repo "$GITHUB_REPOSITORY" --yes || true + fi +} +trap cleanup EXIT +python3 scripts/release/verify-assets.py "$RELEASE_DIR" "$APP_VERSION" +python3 scripts/release/checksums.py "$RELEASE_DIR" --check SHA256SUMS +if gh release view "$RELEASE_TAG" --repo "$GITHUB_REPOSITORY" >/dev/null 2>&1; then + echo "Release $RELEASE_TAG already exists; refusing to replace it" >&2 + exit 1 +fi +{ + printf '# TTREE %s\n\n' "$APP_VERSION" + if [[ "$PRERELEASE" == true ]]; then printf '> main 自动构建预发布版。正式使用请下载 Latest 稳定版。\n\n'; fi + printf '## 下载\n\n| 平台 | 文件 |\n| --- | --- |\n' + printf '| macOS · Apple 芯片与 Intel | `TTREE_%s_universal.dmg` |\n' "$APP_VERSION" + printf '| Windows · x64 便携版 | `TTREE_%s_windows_x64.zip` |\n\n' "$APP_VERSION" + cat scripts/release/installation-notes.md + printf '\n## 本次更新\n\n' + gh api "repos/$GITHUB_REPOSITORY/releases/generate-notes" -f tag_name="$RELEASE_TAG" -f target_commitish="$GITHUB_SHA" --jq '.body' + PREVIOUS="$(git describe --tags --match 'v[0-9]*' --exclude '*-dev.*' --abbrev=0 "$GITHUB_SHA^" 2>/dev/null || true)" + if [[ -n "$PREVIOUS" ]]; then + printf '\n### 提交记录\n\n' + git log --no-merges --format='- %s (%h)' "$PREVIOUS..$GITHUB_SHA" -- . ':!Cargo.lock' + fi + printf '\n构建提交:`%s`。附件附有 `SHA256SUMS` 校验值。\n' "$GITHUB_SHA" +} > "$NOTES" +FLAGS=(--draft --title "TTREE $RELEASE_TAG" --notes-file "$NOTES" --target "$GITHUB_SHA") +if [[ "$PRERELEASE" == true ]]; then FLAGS+=(--prerelease --latest=false); else FLAGS+=(--verify-tag --latest); fi +gh release create "$RELEASE_TAG" "$RELEASE_DIR"/* --repo "$GITHUB_REPOSITORY" "${FLAGS[@]}" +DRAFT_CREATED=1 +mkdir -p "$DOWNLOADED" +gh release download "$RELEASE_TAG" --repo "$GITHUB_REPOSITORY" --dir "$DOWNLOADED" +python3 scripts/release/verify-assets.py "$DOWNLOADED" "$APP_VERSION" +python3 scripts/release/checksums.py "$DOWNLOADED" --check SHA256SUMS +VERIFY_MACOS_CONTAINERS=0 scripts/release/verify-macos-assets.sh "$DOWNLOADED" "$RELEASE_TAG" "$GITHUB_REPOSITORY" "$APP_VERSION" +if [[ "$PRERELEASE" == true ]]; then + gh release edit "$RELEASE_TAG" --repo "$GITHUB_REPOSITORY" --draft=false --latest=false +else + gh release edit "$RELEASE_TAG" --repo "$GITHUB_REPOSITORY" --draft=false --latest +fi +PUBLISHED=1 diff --git a/scripts/release/updater.pub b/scripts/release/updater.pub new file mode 100644 index 0000000..6292d60 --- /dev/null +++ b/scripts/release/updater.pub @@ -0,0 +1,2 @@ +untrusted comment: minisign public key 8FBFCC04F00CA414 +RWQUpAzwBMy/j3GFuJBQJ5enRuHFy0q2HJbXd0/cDxNxnPqagCVtt+yP diff --git a/scripts/validate-release-secrets.sh b/scripts/release/validate-secrets.sh similarity index 100% rename from scripts/validate-release-secrets.sh rename to scripts/release/validate-secrets.sh diff --git a/scripts/release/verify-assets.py b/scripts/release/verify-assets.py new file mode 100644 index 0000000..b20b775 --- /dev/null +++ b/scripts/release/verify-assets.py @@ -0,0 +1,30 @@ +#!/usr/bin/env python3 +"""Validate the release asset set and the portable Windows executable.""" +from pathlib import Path, PurePosixPath +import sys +import zipfile + + +def verify(directory, version): + required = {f"TTREE_{version}_universal.dmg", "TTREE_universal.app.tar.gz", + "TTREE_universal.app.tar.gz.sig", "latest.json", f"TTREE_{version}_windows_x64.zip"} + allowed = required | {"macos.sha256", "windows.sha256", "SHA256SUMS"} + actual = {p.name for p in directory.iterdir()} + if not required <= actual or actual - allowed: + raise ValueError(f"unexpected release files: missing={required-actual}, extra={actual-allowed}") + for name in required: + if not (directory / name).is_file() or (directory / name).stat().st_size == 0: + raise ValueError(f"empty release asset: {name}") + with zipfile.ZipFile(directory / f"TTREE_{version}_windows_x64.zip") as archive: + if archive.testzip(): + raise ValueError("damaged Windows ZIP") + for entry in archive.namelist(): + if ".." in PurePosixPath(entry).parts or entry.startswith(("/", "\\")) or ":" in entry: + raise ValueError("unsafe Windows ZIP path") + with archive.open("TTREE/TTREE.exe") as executable: + if executable.read(2) != b"MZ": + raise ValueError("Windows executable is missing its PE header") + + +if __name__ == "__main__": + verify(Path(sys.argv[1]), sys.argv[2]) diff --git a/scripts/verify-macos-release-assets.sh b/scripts/release/verify-macos-assets.sh similarity index 87% rename from scripts/verify-macos-release-assets.sh rename to scripts/release/verify-macos-assets.sh index 39e6192..d557558 100755 --- a/scripts/verify-macos-release-assets.sh +++ b/scripts/release/verify-macos-assets.sh @@ -2,7 +2,7 @@ set -euo pipefail -ROOT_DIR="$(cd "$(dirname "$0")/.." && pwd)" +ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" RELEASE_DIR="${1:-}" TAG_NAME="${2:-}" REPOSITORY="${3:-}" @@ -70,8 +70,7 @@ cleanup() { } trap cleanup EXIT -PUBKEY_B64="$(jq -er '.plugins.updater.pubkey' "$ROOT_DIR/src-tauri/tauri.conf.json")" -printf '%s' "$PUBKEY_B64" | openssl base64 -d -A -out "$WORK_DIR/updater.pub" +cp "$ROOT_DIR/scripts/release/updater.pub" "$WORK_DIR/updater.pub" printf '%s' "$SIGNATURE" | openssl base64 -d -A -out "$WORK_DIR/archive.sig" minisign -V -q \ -m "$ARCHIVE_PATH" \ @@ -87,12 +86,12 @@ if [[ "$VERIFY_CONTAINERS" -eq 1 ]]; then EXTRACT_DIR="$WORK_DIR/archive" mkdir -p "$EXTRACT_DIR" tar -xzf "$ARCHIVE_PATH" -C "$EXTRACT_DIR" - "$ROOT_DIR/scripts/verify-macos-community-signature.sh" "$EXTRACT_DIR/TTREE.app" + "$ROOT_DIR/scripts/macos/verify-signature.sh" "$EXTRACT_DIR/TTREE.app" mkdir -p "$MOUNT_DIR" hdiutil attach "$DMG_PATH" -nobrowse -readonly -mountpoint "$MOUNT_DIR" >/dev/null MOUNTED=1 - "$ROOT_DIR/scripts/verify-macos-community-signature.sh" "$MOUNT_DIR/TTREE.app" + "$ROOT_DIR/scripts/macos/verify-signature.sh" "$MOUNT_DIR/TTREE.app" hdiutil detach "$MOUNT_DIR" >/dev/null MOUNTED=0 fi diff --git a/scripts/tests/ci-install.test.sh b/scripts/tests/ci-install.test.sh deleted file mode 100755 index 72735d7..0000000 --- a/scripts/tests/ci-install.test.sh +++ /dev/null @@ -1,36 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" -INSTALL_SCRIPT="$ROOT_DIR/scripts/ci-install.sh" -TMP_DIR="$(mktemp -d)" -trap 'rm -rf "$TMP_DIR"' EXIT - -if [[ "$(jq -r '.scripts["ci:install"] // empty' "$ROOT_DIR/package.json")" != "bash scripts/ci-install.sh" ]]; then - echo "package.json must expose ci:install through scripts/ci-install.sh" >&2 - exit 1 -fi - -if jq -e 'has("allowScripts")' "$ROOT_DIR/package.json" >/dev/null; then - echo "package.json must not rely on npm-ignored allowScripts" >&2 - exit 1 -fi - -mkdir -p "$TMP_DIR/bin" -cat > "$TMP_DIR/bin/npm" <<'EOF' -#!/usr/bin/env bash -printf '%s\n' "$*" >> "$MOCK_NPM_LOG" -EOF -chmod +x "$TMP_DIR/bin/npm" - -MOCK_NPM_LOG="$TMP_DIR/npm.log" PATH="$TMP_DIR/bin:$PATH" bash "$INSTALL_SCRIPT" - -EXPECTED="$(printf '%s\n%s\n' 'ci --ignore-scripts' 'rebuild esbuild fsevents')" -ACTUAL="$(cat "$TMP_DIR/npm.log")" -if [[ "$ACTUAL" != "$EXPECTED" ]]; then - echo "ci-install.sh ran unexpected npm commands" >&2 - exit 1 -fi - -echo "ci-install tests passed" diff --git a/scripts/tests/package-macos-community.test.sh b/scripts/tests/package-macos-community.test.sh deleted file mode 100755 index 84f0d3a..0000000 --- a/scripts/tests/package-macos-community.test.sh +++ /dev/null @@ -1,71 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" -PACKAGE_SCRIPT="$ROOT_DIR/scripts/package-macos-community.sh" -PINNED_SHA1="B8D254561BB6CAD78AA71FA18D62A32D10F50C08" -TMP_DIR="$(mktemp -d)" -trap 'rm -rf "$TMP_DIR"' EXIT - -require_text() { - local text="$1" - if ! grep -Fq -- "$text" "$PACKAGE_SCRIPT"; then - echo "package script is missing: $text" >&2 - exit 1 - fi -} - -require_text "PINNED_CERT_SHA1=\"$PINNED_SHA1\"" -require_text 'UPDATER_PRIVATE_KEY="${TAURI_SIGNING_PRIVATE_KEY:-}"' -require_text 'UPDATER_PRIVATE_KEY_PATH="${TAURI_SIGNING_PRIVATE_KEY_PATH:-}"' -require_text 'UPDATER_KEY_PASSWORD="${TAURI_SIGNING_PRIVATE_KEY_PASSWORD:-}"' -require_text 'unset TAURI_SIGNING_PRIVATE_KEY TAURI_SIGNING_PRIVATE_KEY_PATH TAURI_SIGNING_PRIVATE_KEY_PASSWORD' -require_text 'updater key must be a passphrase-encrypted rsign/minisign private key' -require_text '--sign "$PINNED_CERT_SHA1"' -require_text 'certificate leaf = H\"$PINNED_CERT_SHA1\"' -require_text 'TAURI_SIGNING_PRIVATE_KEY="$UPDATER_PRIVATE_KEY"' -require_text 'TAURI_SIGNING_PRIVATE_KEY_PATH="$UPDATER_PRIVATE_KEY_PATH"' -require_text 'TAURI_SIGNING_PRIVATE_KEY_PASSWORD="$UPDATER_KEY_PASSWORD"' -require_text 'MODE="${3:-all}"' -require_text 'build-only' -require_text 'package-only' -require_text '/usr/bin/security lock-keychain "$SIGNING_KEYCHAIN"' - -capture_line="$(grep -Fnm1 'UPDATER_PRIVATE_KEY="${TAURI_SIGNING_PRIVATE_KEY:-}"' "$PACKAGE_SCRIPT" | cut -d: -f1)" -unset_line="$(grep -Fnm1 'unset TAURI_SIGNING_PRIVATE_KEY' "$PACKAGE_SCRIPT" | cut -d: -f1)" -build_line="$(grep -Fnm1 'npm run tauri build' "$PACKAGE_SCRIPT" | cut -d: -f1)" -sign_line="$(grep -Fnm1 'npx --no-install tauri signer sign' "$PACKAGE_SCRIPT" | cut -d: -f1)" -lock_line="$(grep -Fnm1 '/usr/bin/security lock-keychain' "$PACKAGE_SCRIPT" | cut -d: -f1)" - -if [[ ! "$capture_line" -lt "$unset_line" || ! "$unset_line" -lt "$build_line" || ! "$build_line" -lt "$lock_line" || ! "$lock_line" -lt "$sign_line" ]]; then - echo "updater secrets must be captured, unset, withheld from build, then scoped to signer" >&2 - exit 1 -fi - -mkdir -p "$TMP_DIR/bin" -cat > "$TMP_DIR/bin/npm" <<'EOF' -#!/usr/bin/env bash -set -euo pipefail -printf '%s\n' "$*" >> "$MOCK_NPM_LOG" -app="$CARGO_TARGET_DIR/universal-apple-darwin/release/bundle/macos/TTREE.app" -mkdir -p "$app/Contents/MacOS" -printf '#!/usr/bin/env sh\n' > "$app/Contents/MacOS/ttree" -chmod +x "$app/Contents/MacOS/ttree" -EOF -chmod +x "$TMP_DIR/bin/npm" - -env -u TAURI_SIGNING_PRIVATE_KEY \ - -u TAURI_SIGNING_PRIVATE_KEY_PATH \ - -u TAURI_SIGNING_PRIVATE_KEY_PASSWORD \ - PATH="$TMP_DIR/bin:$PATH" \ - CARGO_TARGET_DIR="$TMP_DIR/target" \ - MOCK_NPM_LOG="$TMP_DIR/npm.log" \ - "$PACKAGE_SCRIPT" universal-apple-darwin 1 --build-only >/dev/null - -grep -Fq 'run tauri build' "$TMP_DIR/npm.log" || { - echo "build-only mode did not run the unsigned Tauri build" >&2 - exit 1 -} - -echo "package-macos-community tests passed" diff --git a/scripts/tests/project-invariants.test.sh b/scripts/tests/project-invariants.test.sh deleted file mode 100644 index dfe4ebc..0000000 --- a/scripts/tests/project-invariants.test.sh +++ /dev/null @@ -1,38 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" -DOC="$ROOT_DIR/CLAUDE.md" -MACOS_INFO_PLIST="$ROOT_DIR/src-tauri/Info.plist" -TAURI_ENTRYPOINT="$ROOT_DIR/src-tauri/src/lib.rs" - -grep -Fq '/usr/sbin/screencapture -i -x -r' "$DOC" || { - echo "CLAUDE.md must preserve the native screencapture architecture" >&2 - exit 1 -} - -for forbidden in 'CoreGraphics' 'SelectionOverlay' 'selection overlay' 'source ./scripts/signing-env.sh && npm run tauri build'; do - if grep -Fq "$forbidden" "$DOC"; then - echo "CLAUDE.md contains obsolete release/screenshot guidance: $forbidden" >&2 - exit 1 - fi -done - -grep -Fq 'scripts/package-macos-community.sh' "$DOC" || { - echo "CLAUDE.md must point local signed builds at the community packaging gate" >&2 - exit 1 -} - -if [[ ! -f "$MACOS_INFO_PLIST" ]] || - [[ "$(plutil -extract LSUIElement raw -o - "$MACOS_INFO_PLIST" 2>/dev/null || true)" != "true" ]]; then - echo "macOS bundle must set LSUIElement=true so TTREE stays out of the Dock" >&2 - exit 1 -fi - -grep -Fq 'set_activation_policy(tauri::ActivationPolicy::Accessory)' "$TAURI_ENTRYPOINT" || { - echo "macOS startup must use the Accessory activation policy" >&2 - exit 1 -} - -echo "project invariant tests passed" diff --git a/scripts/tests/release-secrets.test.sh b/scripts/tests/release-secrets.test.sh index 8189e4a..1a9a97a 100755 --- a/scripts/tests/release-secrets.test.sh +++ b/scripts/tests/release-secrets.test.sh @@ -3,7 +3,7 @@ set -euo pipefail ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" -VALIDATE="$ROOT_DIR/scripts/validate-release-secrets.sh" +VALIDATE="$ROOT_DIR/scripts/release/validate-secrets.sh" ENCRYPTED_UPDATER_KEY="$(printf '%s\n%s\n' \ 'untrusted comment: rsign encrypted secret key' \ 'mock-key-material' | openssl base64 -A)" diff --git a/scripts/tests/release-workflow.test.sh b/scripts/tests/release-workflow.test.sh deleted file mode 100755 index 73e0b4a..0000000 --- a/scripts/tests/release-workflow.test.sh +++ /dev/null @@ -1,130 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" -WORKFLOW="$ROOT_DIR/.github/workflows/release.yml" -PINNED_CERT_SHA1="B8D254561BB6CAD78AA71FA18D62A32D10F50C08" - -fail() { - echo "release workflow contract failed: $*" >&2 - exit 1 -} - -require_text() { - local text="$1" - grep -Fq -- "$text" "$WORKFLOW" || fail "missing: $text" -} - -reject_text() { - local text="$1" - if grep -Fq -- "$text" "$WORKFLOW"; then - fail "forbidden text present: $text" - fi -} - -line_number() { - local text="$1" - grep -Fnm1 -- "$text" "$WORKFLOW" | cut -d: -f1 -} - -assert_before() { - local first="$1" - local second="$2" - local first_line second_line - first_line="$(line_number "$first")" - second_line="$(line_number "$second")" - [[ -n "$first_line" && -n "$second_line" && "$first_line" -lt "$second_line" ]] || - fail "expected '$first' before '$second'" -} - -require_text "EXPECTED_MACOS_COMMUNITY_CERT_SHA1: $PINNED_CERT_SHA1" -require_text 'MACOS_COMMUNITY_CERTIFICATE' -require_text 'MACOS_COMMUNITY_CERTIFICATE_PASSWORD' -require_text 'TAURI_SIGNING_PRIVATE_KEY' -require_text 'TAURI_SIGNING_PRIVATE_KEY_PASSWORD' -require_text './scripts/validate-release-secrets.sh' -require_text './scripts/validate-release-secrets.sh certificate' -require_text './scripts/validate-release-secrets.sh updater' - -require_text 'package_version="$(jq -r '\''.version'\'' package.json)"' -require_text 'tauri_version="$(jq -r '\''.version'\'' src-tauri/tauri.conf.json)"' -require_text 'expected_tag="v$package_version"' -require_text 'Tag $GITHUB_REF_NAME does not match package version $package_version' -require_text 'package.json version $package_version does not match tauri.conf.json version $tauri_version' - -require_text 'npm run ci:install' -reject_text 'run: npm ci' -require_text 'npm run check' -require_text 'npm test' -require_text 'cargo check --manifest-path src-tauri/Cargo.toml' -require_text 'cargo test --manifest-path src-tauri/Cargo.toml' -require_text 'cargo clippy --manifest-path src-tauri/Cargo.toml --all-targets -- -D warnings' -require_text './scripts/package-macos-community.sh universal-apple-darwin' -require_text './scripts/package-macos-community.sh universal-apple-darwin "$GITHUB_RUN_NUMBER" --build-only' -require_text './scripts/package-macos-community.sh universal-apple-darwin "$GITHUB_RUN_NUMBER" --package-only' -require_text './scripts/verify-macos-community-signature.sh' -require_text './scripts/verify-macos-release-assets.sh' -require_text 'shasum -a 256 --check SHA256SUMS' -require_text 'trap cleanup_import_files EXIT' - -require_text 'workflow_dispatch:' -require_text "if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')" -require_text 'gh release create "$RELEASE_TAG"' -require_text 'gh release delete "$RELEASE_TAG"' -require_text 'existing_tag="$RELEASE_TAG"' -require_text 'gh release delete "$existing_tag"' -require_text '--json isDraft' -require_text 'Release $RELEASE_TAG is already published' -require_text '--yes' -require_text '--draft' -require_text 'gh release download "$RELEASE_TAG"' -require_text 'gh release edit "$RELEASE_TAG"' -require_text '--draft=false' -require_text 'id: draft-release' -require_text 'id: publish-release' -require_text "steps.draft-release.outcome == 'success'" -require_text "steps.publish-release.outcome != 'success'" -require_text 'TTREE_${APP_VERSION}_universal.dmg' -require_text 'TTREE_universal.app.tar.gz' -require_text 'TTREE_universal.app.tar.gz.sig' -require_text 'latest.json' - -reject_text 'APPLE_ID' -reject_text 'APPLE_PASSWORD' -reject_text 'APPLE_TEAM_ID' -reject_text 'APPLE_CERTIFICATE' -reject_text 'xcrun stapler' -reject_text 'tauri-apps/tauri-action@' -reject_text 'secrets.MACOS_COMMUNITY_CERT_SHA1' -reject_text '--cleanup-tag' - -verify_job_env="$(awk ' - /^ env:/ { in_env = 1; next } - /^ steps:/ { exit } - in_env { print } -' "$WORKFLOW")" -if grep -Fq 'secrets.' <<< "$verify_job_env"; then - fail "verify job-level environment must not expose secrets to every step" -fi - -action_count=0 -while IFS= read -r action; do - action_count=$((action_count + 1)) - if [[ ! "$action" =~ @[0-9a-f]{40}$ ]]; then - fail "third-party action is not pinned to a full commit SHA: $action" - fi -done < <(sed -nE 's/^[[:space:]]*(-[[:space:]]*)?uses:[[:space:]]*([^[:space:]#]+).*/\2/p' "$WORKFLOW") -[[ "$action_count" -ge 5 ]] || fail "expected pinned checkout/setup/cache/upload/download actions" - -assert_before './scripts/verify-macos-release-assets.sh' 'actions/upload-artifact@' -assert_before 'brew list minisign' 'MACOS_COMMUNITY_CERTIFICATE: ${{ secrets.MACOS_COMMUNITY_CERTIFICATE }}' -assert_before '--build-only' 'MACOS_COMMUNITY_CERTIFICATE: ${{ secrets.MACOS_COMMUNITY_CERTIFICATE }}' -assert_before 'MACOS_COMMUNITY_CERTIFICATE: ${{ secrets.MACOS_COMMUNITY_CERTIFICATE }}' '--package-only' -assert_before 'Clean up signing keychain' 'Verify final app signature' -assert_before 'Clean up signing keychain' 'actions/upload-artifact@' -assert_before 'gh release create "$RELEASE_TAG"' 'gh release download "$RELEASE_TAG"' -assert_before 'gh release download "$RELEASE_TAG"' 'gh release edit "$RELEASE_TAG"' -assert_before 'gh release create "$RELEASE_TAG"' 'gh release delete "$RELEASE_TAG"' - -echo "release workflow tests passed" diff --git a/scripts/tests/release_test.py b/scripts/tests/release_test.py new file mode 100644 index 0000000..58f4480 --- /dev/null +++ b/scripts/tests/release_test.py @@ -0,0 +1,88 @@ +import importlib.util +from pathlib import Path +import tempfile +import unittest +import zipfile + +ROOT = Path(__file__).resolve().parents[2] + + +def load(name, filename): + spec = importlib.util.spec_from_file_location(name, ROOT / "scripts/release" / filename) + module = importlib.util.module_from_spec(spec) + spec.loader.exec_module(module) + return module + + +metadata = load("metadata", "metadata.py") +checksums = load("checksums", "checksums.py") +assets = load("assets", "verify-assets.py") + + +class ReleaseTests(unittest.TestCase): + def test_only_main_pushes_and_matching_version_tags_publish(self): + for event, kind, ref, publish, prerelease in [ + ("push", "branch", "main", "true", "true"), + ("push", "branch", "feat/test", "false", "true"), + ("pull_request", "branch", "main", "false", "true"), + ("workflow_dispatch", "tag", f"v{metadata.version()}", "false", "true"), + ("push", "tag", f"v{metadata.version()}", "true", "false"), + ]: + with self.subTest(event=event, kind=kind, ref=ref): + result = metadata.resolve(event, kind, ref, "10", "2") + self.assertEqual(result["publish"], publish) + self.assertEqual(result["prerelease"], prerelease) + with self.assertRaises(ValueError): + metadata.resolve("push", "tag", "v0.0.0", "10", "1") + + def test_reruns_have_unique_prerelease_tags(self): + self.assertNotEqual(metadata.resolve("push", "branch", "main", "10", "1")["release_tag"], + metadata.resolve("push", "branch", "main", "10", "2")["release_tag"]) + + def test_checksums_reject_tampering_and_path_escape(self): + with tempfile.TemporaryDirectory() as temp: + directory = Path(temp) + (directory / "app.zip").write_bytes(b"original") + checksums.write(directory, "SHA256SUMS") + checksums.check(directory, "SHA256SUMS") + (directory / "app.zip").write_bytes(b"tampered") + with self.assertRaises(ValueError): + checksums.check(directory, "SHA256SUMS") + (directory / "SHA256SUMS").write_text("bad ../outside\n") + with self.assertRaises(ValueError): + checksums.check(directory, "SHA256SUMS") + + def test_release_requires_both_platforms_and_real_pe_executable(self): + with tempfile.TemporaryDirectory() as temp: + directory = Path(temp) + for name in ("TTREE_1.0.0_universal.dmg", "TTREE_universal.app.tar.gz", + "TTREE_universal.app.tar.gz.sig", "latest.json"): + (directory / name).write_bytes(b"fixture") + with self.assertRaises(ValueError): + assets.verify(directory, "1.0.0") + zip_path = directory / "TTREE_1.0.0_windows_x64.zip" + with zipfile.ZipFile(zip_path, "w") as archive: + archive.writestr("TTREE/TTREE.exe", b"MZfixture") + assets.verify(directory, "1.0.0") + with zipfile.ZipFile(zip_path, "w") as archive: + archive.writestr("TTREE/TTREE.exe", b"not an executable") + with self.assertRaises(ValueError): + assets.verify(directory, "1.0.0") + + def test_workspace_and_workflow_use_current_source(self): + self.assertTrue((ROOT / "apps/macos/src/main.rs").exists()) + self.assertTrue((ROOT / "apps/windows/src/main.rs").exists()) + self.assertFalse((ROOT / "crates/ttree-app").exists()) + workflow = (ROOT / ".github/workflows/build.yml").read_text() + self.assertIn("needs: [metadata, macos, windows]", workflow) + self.assertIn("scripts/release/publish.sh", workflow) + self.assertNotIn("npm run", workflow) + self.assertNotIn("src-tauri/", workflow) + for name in ("AGENTS.md", "README.md", "CLAUDE.md"): + text = (ROOT / name).read_text() + self.assertNotIn("npm run tauri", text) + self.assertNotIn("src-tauri/", text) + + +if __name__ == "__main__": + unittest.main() diff --git a/scripts/tests/run-release-tests.sh b/scripts/tests/run-release-tests.sh index b391f3b..d9825aa 100755 --- a/scripts/tests/run-release-tests.sh +++ b/scripts/tests/run-release-tests.sh @@ -3,17 +3,8 @@ set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" -TESTS=( - ci-install.test.sh - package-macos-community.test.sh - project-invariants.test.sh - release-workflow.test.sh - release-secrets.test.sh - signing-env.test.sh - verify-macos-community-signature.test.sh - verify-macos-release-assets.test.sh - verify-macos-signature.test.sh -) +python3 "$SCRIPT_DIR/release_test.py" +TESTS=(release-secrets.test.sh signing-env.test.sh verify-macos-community-signature.test.sh verify-macos-release-assets.test.sh) for test_file in "${TESTS[@]}"; do bash "$SCRIPT_DIR/$test_file" diff --git a/scripts/tests/signing-env.test.sh b/scripts/tests/signing-env.test.sh index 1b0af75..700f54e 100755 --- a/scripts/tests/signing-env.test.sh +++ b/scripts/tests/signing-env.test.sh @@ -3,7 +3,7 @@ set -euo pipefail ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" -SIGNING_ENV="$ROOT_DIR/scripts/signing-env.sh" +SIGNING_ENV="$ROOT_DIR/scripts/macos/signing-env.sh" TMP_DIR="$(mktemp -d)" trap 'rm -rf "$TMP_DIR"' EXIT diff --git a/scripts/tests/verify-macos-community-signature.test.sh b/scripts/tests/verify-macos-community-signature.test.sh index 72099f9..264b814 100755 --- a/scripts/tests/verify-macos-community-signature.test.sh +++ b/scripts/tests/verify-macos-community-signature.test.sh @@ -38,7 +38,7 @@ esac EOF chmod +x "$TMP_DIR/bin/codesign" -VERIFY="$ROOT_DIR/scripts/verify-macos-community-signature.sh" +VERIFY="$ROOT_DIR/scripts/macos/verify-signature.sh" EXPECTED_ID="com.samwstu.ttree" EXPECTED_AUTHORITY="TTREE Open Source Code Signing" EXPECTED_SHA1="B8D254561BB6CAD78AA71FA18D62A32D10F50C08" diff --git a/scripts/tests/verify-macos-release-assets.test.sh b/scripts/tests/verify-macos-release-assets.test.sh old mode 100755 new mode 100644 index 9d0257d..562af3b --- a/scripts/tests/verify-macos-release-assets.test.sh +++ b/scripts/tests/verify-macos-release-assets.test.sh @@ -3,7 +3,7 @@ set -euo pipefail ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" -VERIFY="$ROOT_DIR/scripts/verify-macos-release-assets.sh" +VERIFY="$ROOT_DIR/scripts/release/verify-macos-assets.sh" TMP_DIR="$(mktemp -d)" trap 'rm -rf "$TMP_DIR"' EXIT diff --git a/scripts/tests/verify-macos-signature.test.sh b/scripts/tests/verify-macos-signature.test.sh deleted file mode 100755 index 176736c..0000000 --- a/scripts/tests/verify-macos-signature.test.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env bash - -set -euo pipefail - -ROOT_DIR="$(cd "$(dirname "$0")/../.." && pwd)" - -bash "$ROOT_DIR/scripts/tests/verify-macos-community-signature.test.sh" >/dev/null -echo "verify-macos-signature compatibility tests passed" diff --git a/scripts/verify-macos-signature.sh b/scripts/verify-macos-signature.sh deleted file mode 100755 index 4b92ddf..0000000 --- a/scripts/verify-macos-signature.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/usr/bin/env sh - -set -eu - -SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)" - -echo "[codesign] verify-macos-signature.sh is deprecated; enforcing the pinned community identity" >&2 -exec "$SCRIPT_DIR/verify-macos-community-signature.sh" "${1:-}" diff --git a/scripts/windows/package.ps1 b/scripts/windows/package.ps1 new file mode 100644 index 0000000..be77858 --- /dev/null +++ b/scripts/windows/package.ps1 @@ -0,0 +1,27 @@ +$ErrorActionPreference = 'Stop' +$Root = (Resolve-Path "$PSScriptRoot/../..").Path +Push-Location $Root +try { + $Version = python scripts/release/metadata.py + if ($LASTEXITCODE -ne 0) { throw 'Cannot read workspace version' } + cargo build --locked --release -p ttree-windows --target x86_64-pc-windows-msvc + if ($LASTEXITCODE -ne 0) { throw 'Windows build failed' } + $Stage = Join-Path $Root 'target/package/windows/TTREE' + if (Test-Path $Stage) { Remove-Item -Recurse -Force $Stage } + New-Item -ItemType Directory -Force $Stage, "$Root/dist/windows" | Out-Null + Copy-Item target/x86_64-pc-windows-msvc/release/ttree-windows.exe "$Stage/TTREE.exe" + Copy-Item README.md, LICENSE $Stage + Copy-Item -Recurse assets/licenses "$Stage/licenses" + Copy-Item apps/windows/README.md "$Stage/Windows.md" + $Zip = "$Root/dist/windows/TTREE_${Version}_windows_x64.zip" + Compress-Archive -Path $Stage -DestinationPath $Zip -Force + # Validate the container and executable, not just cargo's exit code. + Add-Type -AssemblyName System.IO.Compression.FileSystem + $Archive = [System.IO.Compression.ZipFile]::OpenRead($Zip) + try { + if (-not ($Archive.Entries | Where-Object { $_.FullName -eq 'TTREE/TTREE.exe' -and $_.Length -gt 0 })) { + throw 'Portable ZIP is missing TTREE/TTREE.exe' + } + } finally { $Archive.Dispose() } + Write-Host "Windows portable build: $Zip" +} finally { Pop-Location } diff --git a/scripts/windows/smoke.ps1 b/scripts/windows/smoke.ps1 new file mode 100644 index 0000000..706bbcb --- /dev/null +++ b/scripts/windows/smoke.ps1 @@ -0,0 +1,59 @@ +param([Parameter(Mandatory=$true)][string]$Exe, [Parameter(Mandatory=$true)][string]$Output) +$ErrorActionPreference = 'Stop' +Add-Type @' +using System; +using System.Runtime.InteropServices; +public static class TTreeSmoke { + public delegate bool EnumProc(IntPtr h, IntPtr p); + [DllImport("user32.dll")] public static extern bool EnumWindows(EnumProc proc, IntPtr data); + [DllImport("user32.dll")] public static extern uint GetWindowThreadProcessId(IntPtr h, out uint pid); + [DllImport("user32.dll", CharSet=CharSet.Unicode)] public static extern int GetClassName(IntPtr h, System.Text.StringBuilder text, int max); + [DllImport("user32.dll", EntryPoint="GetClassLongPtrW")] public static extern IntPtr GetClassLongPtr(IntPtr h, int index); + [DllImport("user32.dll")] public static extern bool IsWindowVisible(IntPtr h); + [DllImport("user32.dll")] public static extern bool GetWindowRect(IntPtr h, out Rect rect); + [DllImport("user32.dll")] public static extern IntPtr SendMessage(IntPtr h, uint msg, IntPtr w, IntPtr l); + [DllImport("user32.dll")] public static extern bool SetForegroundWindow(IntPtr h); + public struct Rect { public int Left, Top, Right, Bottom; } + public static IntPtr Find(uint target) { + IntPtr found = IntPtr.Zero; + EnumWindows((h,p) => { uint pid; GetWindowThreadProcessId(h, out pid); + var name = new System.Text.StringBuilder(256); GetClassName(h, name, 256); + if (pid == target && name.ToString() == "TTreePureRustWin32MainClass") { found = h; return false; } return true; + }, IntPtr.Zero); + return found; + } +} +'@ +Add-Type -AssemblyName System.Drawing +New-Item -ItemType Directory -Force $Output | Out-Null +$Process = Start-Process (Resolve-Path $Exe) -PassThru +try { + $Window = [IntPtr]::Zero + for ($i=0; $i -lt 100; $i++) { + if ($Process.HasExited) { throw "App exited with $($Process.ExitCode)" } + $Window = [TTreeSmoke]::Find($Process.Id) + if ($Window -ne [IntPtr]::Zero) { break } + Start-Sleep -Milliseconds 100 + } + if ($Window -eq [IntPtr]::Zero) { throw 'Native window was not created' } + if ([TTreeSmoke]::GetClassLongPtr($Window, -14) -eq [IntPtr]::Zero) { throw 'Embedded TTREE icon did not load' } + [TTreeSmoke]::SendMessage($Window, 0x111, [IntPtr]901, [IntPtr]::Zero) | Out-Null + [TTreeSmoke]::SetForegroundWindow($Window) | Out-Null + Start-Sleep -Seconds 1 + if (-not [TTreeSmoke]::IsWindowVisible($Window)) { throw 'Translation window did not show' } + $Rect = New-Object TTreeSmoke+Rect + [TTreeSmoke]::GetWindowRect($Window, [ref]$Rect) | Out-Null + $Width = $Rect.Right - $Rect.Left + $Height = $Rect.Bottom - $Rect.Top + if ($Width -lt 300 -or $Height -lt 200) { throw 'Unexpected native window dimensions' } + $Bitmap = New-Object System.Drawing.Bitmap($Width, $Height) + $Graphics = [System.Drawing.Graphics]::FromImage($Bitmap) + try { + $Graphics.CopyFromScreen($Rect.Left, $Rect.Top, 0, 0, $Bitmap.Size) + $Bitmap.Save((Join-Path (Resolve-Path $Output) 'windows.png')) + } finally { $Graphics.Dispose(); $Bitmap.Dispose() } + @{ result='passed'; pid=$Process.Id; width=$Width; height=$Height; checks=@('process alive', 'native window created', 'embedded TTREE icon loaded', 'tray action opens translation') } | + ConvertTo-Json | Set-Content (Join-Path $Output 'result.json') +} finally { + if (-not $Process.HasExited) { Stop-Process -Id $Process.Id -Force } +}

O6(`ykD>9^Dzfa_?PoG;YHk@ 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%0AfWV0ARw`- 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%0Drud zhR-OI+FjKqqOP7+Hd|0niTOPVe7>7GnMRHEfeqxuY|*ljlc0hsMq^YIQPFMb--?%q@pOs6CQ+T|R@3D@qN4>3~_l_(-JjQc_K*FvHxL3JC|c3joJx1v7(h0?}}AWI>&zr^v=)! zp?7AX#3jS4yR1N?5eVd$aAo`MaD8Sp`v1-lK9eb2h>a-JcsjE3tq91hSUpnFMm6Lt z!|(TBxd9kjt~%O&zZyPKr7346!T56os;A17b8tsRbZB_w9p%;-?1-bin1wyP6;u2T zvbuXA&H2-zC*@Cvo=6_;9S2HMkBJ(fB&?{Vnrog6xs?F!H+VXfTK8ae$U-(3PK?W^HnQxKOt+0X*app|L zLHaOHmh0I{^%BlDR|5WETOl>6$!*K;3(chC28okZFR7xI73g`I=nc+#WFT1f_&cYD zxhimAn{enJD=iNK7lelaWKHlYKv_z8#5@_$uf$#Tp$bpTVZr~y-aDq?QdtEyF?Q}f zR1o4?-7S0M))R<^;s2w>Xw``z)`f3X-U@r+H3cp*guLKxg2kz29K<$A`0xA_`*+`n zIQhX}pV9%p@rA8ZhKLX0;-30k@@f6TO;ANqD+w;D%tfo3>)yclmpUuF6Uk#K5)fwX zybv#WypZKpN`!7}B+GFVWeX(>t}+cD#X@P!y0-QEGp-%3F+tZ!jUUOMQmC@HNR{-# zor~A|5bB8hsj+I#8gTwSDUq5D3hDvTfLEIAt&{zpENGw(vXodo7pr1vxqCkqt8!(t*BQ3N1JA)NnksJOK4fl5${U6F* z%k*2LLQ6~>s8iMiWNc)i`0?T_n2I1=0g~V;^{q*TOR0l$mt%#!$O%aW?}Dk6c!3g2 z;8+wsY2YTA<{VdD4sWIN4!K=|%DlThM{prplC8jfhA?|C&fpkYOWa~;FGQAF6%?5z zN|@r+4?MbTzllqNRP8LYAF357?F4cK)>ihR{^k0dqpW3x`ivGNNWGMp=7OmAPh^)e zzlX4pAzdVBhMZL0hmJ)epQMnJ7R6{5$|lJjpZGFT2@jo>dx-hG3(AD>U((aWNEn^? z?av&d*1^?v=L&WbFjHgV{~q=_mxDXf8_9w$sK>0srdJTIWY0km0^_>m$hhv+G-Q}T za~e7&;(d;m@f((JY5tpX38oFeZVUX6IMA)^_CxsO9cDRy0Y`v+-BJfu&KtLI1 z=2Vb`Ss`*1aA0NYUzD(YHF%&++UM@$)uLspRBV>E*I3d2^GswRO-td~j0pLEUDzIt z5*Rtwe;pz==!lk$q3gr5f3^l1D*>HB{~Dtp$tqYjL{xr?uMh~F+X`&eRU8Is^e?B) zezFi@U+Qz@mgA<8WGa~&yQO=WNA?OUxK4orW3)`plCS59mG--|sS)I$CM6C(ry>L+ zrDV7fXBpkAxs;Z!%}9OrVePz8*yw{WkV@MitsbgR$j-$zl^9X+9np%4NXV zSCeL$9HIHBAj1((PXv4#nMunpc-G}roMvQ^Wo1zB0&1m)ne5Ria_m&h2-ihyRhWd@ zrOYm6dvMbFffJ9bcu({yPH&EO$9m@@HhaC(y;go;YE5lRt7o6jrCOFu{n#TNzyLyx zboNMDS?KfnR<^eGhY>R9_{*lUo(RaUMb3wk3y}8V_qwMUqk$|wZW#6M9=#B#`2J7( z7O2u^)Xk!%$}$<^S**HkTG<|-N+j4xMJlfS=wiT7N9$>K|^2n7c|W;QWy6j znXv!Cg7^oRo)QW;I*2%XryEDW#s^VbL>eYs-2JI7cF5p; z^KDJr_UicEUmM4Fpc5QVmtzd~{*ybQdS;XFfd>meR5ZdqS2Z16|cpC;VW#E z6QMUS*03JYrLu}?Udt+rb~R6nxq==-{O>ettb{Y>4z{Z+>f~e(Z#-Y3cFWfdf*<>! zNH~d~)@Hjr-fx!s)L^@-@5dOLry^#)vlF%NfF=cYn6AAVV$v9n!PzGOFPF+nwv2(Z zIP`>iKseMtY%(*lI{=a;ehz}fQKBo+%VK~~^($5b*)Mi=f=Oz(bj zQL1@wb4NDxzG{8bh_@d|FIxyfsc4oR_~Gd{mxhCz448ujpfF$ zFGGEa{xlCat!Oo3V6DYO50g@AjwGsqzbT56{r$f8jzs-7fPdVFI3>_;p30mr05$!# z3U2+L;LCVyv>pBwv zl*r&QsbgF5z9_!4w{$${i`+&qU`II$LNWi{b%{r`8on@FmB?m)=R#GhyF$nm$a@#5 z0%hIa`fkma&m1h?$ATI0uSu$mSg&sY)N^&b+#AnpF{|)92f@&vwdjRnjQnBv6j}lz zU-c0=rxxuUX!62uASWaf2m^v@iE1Q#bG-|=FSX<_bLs2CMOmWzS!qcf%!H5b(d#d& zrGP(+E1N?PPXxJ&tH3quCNpW0_Q*Q=QFnn-u7D}jiodxb2MFJ3seMR&d5l}TgpR~H zX+N_e6g812f)3ucyC9gN!HzmX(yyZF5fr+nWZ98W&f<15VIg{)2|+SDaT{;3u9?klGWdWn%;S9es)% zy}H<5u&l{pWhQ7kfr^r5HybpmoS|C4&0_En&k?XkYyIDJepSp*O>D@BQcn95=PUk~ zU)}#L=C6pbQ(hGCWVGoBJY&oX2k6*YAZu|Y&-EB;0(eE0m#oW5_*xd?BYyWw*5TVx z(4gy$228k)YKv7?R6McM$rKn_qRs@IGv9O1R&y+OC{S+;%MGOSwt#O8k$9eic7WkB zbUm}+Xa|i5A&o12zuZuP*V2QjOM&wD+R=WYrR;*gT;mW>^gSQneg!0o=TId70$`0F zH>wYpc)v?IfP390Tn{BqN0(&wioWre=kM8c=SY3p`|&egqWBov`?{lX>G+4x)}{HS zI|EiQa1pWI+7vw$6Zy`8cd}65-Daxzlh?=f30bJXk1?s@F28UKZT$40Pa%PSYxcaV zYMvqb_H5#K_q_%+qzZQZZY`rK2%!E^1cUKsq_?HFt)4bk(nGw{r^WaQ!IQL-*o`eO zmc8K9Jr-w5AE@r_`JCjOFQ7`4-cuyiYztL6Om7BW1RWUNw*jf{?9-1&_Y!7-R7Hs(TrHT__M5(!9J zygob%bq2BwkfJMpZLj#f#9I2~^_~|bVe4R@Y{B&U>7)+Gj#Vp84S=)FJDmW#BEMgR zoH{uqQezP5Ll=JHA5B5R~|ND6>plgg7sn1X?cxB;Zv1q=F;JLsL!BS(mS?AgMv3UGKTf zD7!21PTbV_%gPuop8fLwLK*x6Uw44oW=Vz;RXV>=;RVrY&wnFuxjDJR$osept}^vo zrdkTs5U>F4k&59A8#4SVNcz`dE4PKM=!`kaAa4oslWicI8|`KuNn?F2Fg0K;{GARcK?L1>f*^Oxl?M?zVga^X@e3}nkzJ@<-U zqldrR&fKpKbBEpOl@W3bS@!gu zIYLK{#;2tQ)%Xuz)_uVJXT3D9R*Ga7@%+9bBgu3;-hA&eT^Y|B(efFNYmP&t=ML|P z_9d{$m18brjuixq3!Z(-iEeWXCuSxO)sD^o7e$ z1D!BT4a_E&RBk-+Cwc!e@ytmWPT{A|F1p%R;3U3FhVVLH3LbX`3R(J|N5BL|FY$yU z`gCT`O-)~h;`El>^C>e93TMT}6;?MeW>qxS}+r?Qw6;FtBW zRp@qeo4aks7`eoHjpB!Ze%CM4oYt}xc0Ueb=Y$ho9MqB5k=_i|zA#0D=>>dT?gs(G zuB&5fND|v=5sZkyv5b)Oy54@_z%=pK#^fAKZrJ+2ARS1#lst#{gxF|GKZc3=B~a`B z`W*AR?OTV3v6vbF2LhtfioRWK-&y% zJLax0uRNK&o;(k55lKjTn~n^0B$|K%YM!tFdF>wDZ20eC(%N>%33IO}p>6CF%%*-R z?idT;O$B3t5%a26=$e9a(FnMLOB!~K-iDIRW3$?T<3h04JR)=6nvcq6wp?!C`WU1e z@SlyMASBG8bkxD!^A5~nwy&aA(zib)h>aLz+R-=BGiTyOGIa~`60;VRNGFrJbsHYI z{;nS<*W09b;<1X;@C#k-$%+E*Jv4;uRr9kxj7k(Cc5)Cj6NaLu z;xf(o9tp*$$`RdvDBJ=OJAbcG0ZO5^@-jQW&JqC5aqV1@xfefi+ei0HrLF=TaRp-R zSOiampOoW@&cWh?1}=}>?dkw(%r-G4k6#d|IEBPND!ufiEZwKdphr^4KxXGzE` zF>8QHh%sO9LYBvWSW8PJodzMT2{$tVdplCiWf8VfEKNK`#3`&bb_dUjg>h@90L*KzM`Oi1^>W$QKDk?X)AfXZUPyFrd!z^0a{AYP0U7Zk z{!KVoDdj1Z-B5~9MTBofX^RuxPBRqPS9Ts z%oihLpHREl92CQMF1h>T3kEj5&0~l_q<^iCc%2ryK4v2Ga0?WVrav~`F9qWd$u6X( zjHggL459Y6$AM*PD~p+KY@xXX<&RzXXIWE^MYCtAWDo@VHjB~G(GWZ#e(I868t0IN z0iZ7}-zL1LH;E~E%o@Kz$maO&NvV#_6?1c_)EI!q9JK>v#Ap78@tzm?+CXsM?EUFk z4TF2H)tBUBhp!ql4cQGpuG*!tGHwX{5f+edqih+S zpfS)BxX{@~6LLTR zMaMp?I~Z18*E?djVjJhH&~-8Ja~`qQ;_A5zsqaM_T)g5%EY&DW7CQ{HgqwMiD)cVR z>IP8NWw19yuNp96*0RiTDDe*m+I?Gd++=za$b12LG$B=yyF`oK-(8)i*|;LJx9+5_ zY%*qw#@+J+!H-x<_!^hHU3Q{VnjGr%L~Gs<3(_XV zKUnKhX3!MQDu3K7*sJxTmG{aSF=8XV0J_jKviN1l7ctlsA5e|fGwG+LNW5_qzLLyj z7gf15WSGUU^CpkrO2>opy5Y!E$;>)x?Rg)u^Jotw=?VmzuKH4qIdizTPCTan{zq`~~_e3!qp$7=NTWnYs(|+LmfqaV?i}?l?TsNb}T?mv13rcz2$k zBS+BY9e6)vhkWpOJyvnfute8td3cSf<#Y4^r*`v=hki#`j88#de0!|q{zpHt1C?^9 zXI>x93qr+O7=e-1@#h$RzziIN-;%`s@FycW`)7w+ZVH>oZ>bHO=sNTY8cgI~;L`pT~fR+n6Wal61Q z?MOjY2 zVRbSQw=vsJ6ykK-na5)xq#+faBk`CuYQ2e<#8x3eqAcODzd;hEABab&5v(Zg5yh%* zb7AdtoSgzDwQxI$XJJl}l@=ibJ9`{zHX6lerf)~}=#(HG+*!rn$@{qU1ewSzd2X=O zi?HAzA$>$7U#y8V;MfxjO}AAjy4lY=C`_>kUG%?@g@5otfq*V*Xnv@g))pD{q(+$`;=oil#gd_CtslM~3_(3y{ef&|bO4Gn5hwSN3X=qrgybso zmdWZ*GvL@;Vfq6V!|(F0)F2}Wqxu^8UNlcHOvE0+RTXqa@fEOWax*M)r5uKU&Ub6& z<8#x){Ut`vVflFe(bzL$FT>F#zN3VRWUd^!nBTupxxf3I`z80QkBK2<(pDmN&n((r zkeL3OOZdd=%?y&#R|;iH=dQu_UFiGyM$<#jW2cZKvqU=jY(VSJWKF&YVqX_ZzQY_O zOoTau0dv6+*$fP8E^Im994|8*(Hb7Spx7;T>m&VxwD_-3^d;wrRjkyVg&kvmN0Z+i z^DAr+cvGti{PFYj-){$s+%p#K`w?c#pFb{AeJ?fR6e-2j5PQMCYjTYQ1w+dQ#JD{D zBfPQ7itx8yjK8Xa>Pi35#Qh+NMZ>$Qe?4+Wz!~l2R-iOjV81bDAU-B#^z7@9A#H@3 zO*voHY7F{L4_XpT6N}r131+Y>5W1YA!12q2!#c`l^*)+Ydkt1zHomc)ktbdnTq^cF zrFzqvSGc(z2sFJBci3HX%!S*;X^2UHn#jaUxa}Oei8OIWyLNDP={aLNZoYc!BeKtG z-BmQN7YfR8&~281e;IGXB~l-ecONyLf?OGIWpsJ_$L9hY)hoEO%2oC3`oEt}A|O}+ z=&D`XDFfFg<*qor;c4CUPTPZ@nROx8b5Q;aaf(?{rO65OwT>o@L;casWY!8X)7^!*z8b{FxjrQC&7C0(#%Fp89F8^1t>Ho@0KkFjVTZiP@+wQzCf zJo)F_$W@Rn+)tM2Y~%^|Nc>f*X*T;P-G^`$4B_T0b>rdFj=2Zf!}aM!5q4Sib#QZZ z&9*RVM$P-kLuYt)sr&0CM*Hoi(TS6qoh4=M~hk##=pN$DLt`Biy@y)a0v+);P zrtc`xTv!i(84}Un9nTO^CA!v=_-=XR88;f=)$M%4DwBFI!-E)68s8ruetd*hu&r!3 zne%+_nZjFd*Pj?nDH2K8f|yc0@enRB$fAJ^6Ml$Yiiy??9X7DsB8q$p_A=bn;7dIE zbD~7A(9xHWE{9q+x7izp9Gu!KJD`%bD=~TvR&-&!WdG0u$sNWJ<+G1;AJC<5ujcqe;=TT4RHu;(%2$-q=QfH`u73p7X4c03 zT10Wq{nt7NUD{dhKQ8{z+Pr14@ZD}}<0#enuUbIU-aod(?~O5Uh1?=Ocl3^;&j}82 z+GlyFSnEhpW1s?+2+dHZHs`tsnCPuh!M4q)DNwJIL}|HTM_HQ*4R%FE(zY;5@EBh@ zS+y=Ft5$}FbV?+$ASWxNs&P&ti2zR^UtZl6*MZNC%?V|1o?ojKIb)4Y6YP?jA`)Ag zUszO>Bw>~`6{cB+DxhFeVU=fj>FLix%g&9hgdS_BZJVw#-;NmYl8l52#^7Lf=R8nM zZy^oyh%%E%;)*f@1KvTV`tykMJqC+7Gif3G6jE>qlv#++1cyLe(4wx>*R6NcU(Ym` zsOQSU4^irJ#Qy!wERjsHO0f}-NR=DKuk4$-L+FUAW5JD$3JfB}3YB>9a2S=x^*uzh ztX3;oqWmhvG(ZnVRd>THd!jyQMNQvPZkp=cR zrP*jDJbH5)ay!;Xo>>emaT@h2oXfaE@Qv_L3?m`v+yEWp4~vrA16z zk#!VPd%XRkWVTelR`*rsGf9t}4)a;?W4f%7^GA*1dgRITrcWBK(F{2ybsp}Xb*OP^ z)x}M{d2*ziWPx&+JO7Qkygf(ab?at#M`+O!Ona|9;w`AIVZ%itpXzJIMNi5M%Q+&+ zo9~0~-=}~X*kmvqRt_GMs;V&6!pR5nU8A$w9EyxcvQ#&~S46qVCunv?g zf&wg&jd9!_bB*4VNVbIM?3Zz3vH=|bS=Gl%qAWccq!vY z2SLrg`w&!LVQsTFPuK;Iv-5Pniq#=J4Qk3 zph>^5+r1#X7EW)T=^WMN)Huz?^o2_HVr0n5>g)4LLIQ(?n2R0EF=EpK6SHtWpWF`& zx`fo1qw=QdO+zCUu0N*#64>>nww;v>kEw9#4o}f?Os3`qwUbBP^!gd_8zd|Ea^ z?FIB?chD7koK2d2I+C!p>d}LmTzdsXAQ(!t6VPvxqmfZv$+y3(}3H*pW#+jDa8=>pX#uD1Mbp2&^fKKhkLT9iYg z=9z)lkfKSgE~re^gu?47tiY8u6B%`8PgC zPBk{88Hn5=px2AKHhK(YC*UiHdMtLd1dkJmZ_tM(sMmO6sxnJ!8^5FSu*$aS; zOx6xPXc>w*?sQ!}HnoOO0}zs^`N}lN$FGlh3 z7*?q`0$XZ8M6o)HG3>!burUlgj|OM;gL+SJVN&gwl-~eHr%Wi%rtho;Xf%Y%9vefB zW2-Isx;yR+DXmeyLKp;8Hwb?aDM1OLF(m`T*7drZBG)lwPLEm zDkQfYlLb^fVm0je{Lg{~S2WlL?Spkr4}FWerUF5cCjGfO>)zQ=Qu6Nc!?zvGl{lL;?a@Aqe_i?y{ZsVA7ab?#RR~ zp>k#M9CcGrJf}fWOQL0r8Duw~d_kle_CX9|R%a$EK4&DcO+FCS5jCG}JCkVnWLb~J zog_*pd;D%sOmXB0#5G-?%dZk=& zqtU}Kyf-I{+IUx{s=D3c89D;MizHgnU8H}X|jat8@u49STWyhm$z|uQ}#T{W-WhRkLDLvu>LHBH}QI%QKvSUv? z1K5;a@LIq5GoPF-UIvY6S^?=SynnBzoWJG#D>HJzY$JL zk-66It82}T$G4hSI2NM0TF7EOLs`D&Z2hvKyGzjz0M&8AaQX|!+ zvJ#KFMC7SQC=T6%szRT5HDZpa`@G`ry$X;z1iMHRcXs!)2rZOpy|ObxSt!u=y`}un zI1PXxB_wm8=^134q40q4oLq@cz?mG$YiQ-o{N5vnF2== zjVlITs#Wzlx-2ZM>Ql(`zK-2X-_I7$Zq>CoIw><2F*Qby#>}MoN&q#z7e&ao+ z8r+_zR5 z&4Dw=wPQGck|UOg@gA>{x@)@DGyO*zkX-0AyznDG_F{gMD`+F>+#Yx|GCdRJ#i>Pu zlkhZD_N_52Yw)DXZ-t?Hi`vg?po04eedVh)GjRl7(65FH&~W)Ar4&?Qci;Csf3|(_ zoqr~vzM#DNO6_NedTMhaZC8DK4|*QP*QN&IITC>t$Z<#Gg(+MT(8yD&1ZQGCr@XQe zlNlI4v-125yGr(3yB`c=)L3}k;)R`TT=z493BO(Qc8M5C?(fareqQO`hwxN zt1Hlkh{ZsH9!=b=&alivq-K;5=sXd&R$(olPNhT@?a6jtLj0nGQ;-T*NO}HaWc?3( z(E9k&6Ha%rRNk&sxZHIjXF?f36N+XlF_09L@SOY!pm;d4Giz(IxRdRGM| z&Fho{XhYCNxxRN#LAyZ&zuJ4os1Eu_GVy#tn;YLk(9PkQ64|jUxY*uTpV}phbY@3ol)FkNRWb=tR3LdiV@^9Q?;_4C$B{gxSth#s#pN`sL>zN+UyyoglmcPW zc}_BRJ!XjPg%R=(MD`?Mq>ITnW6OFZSME5s_P$Pf8YA66ynO!KWJP;Auc^xmpKXIn zgAFU*D{rRU6QMo#$bJ59Ehi@qONN=I;XdGkEWF9w(mud2|1di02@LTX*&B6XUjV>xxs1TFjEJG52U_ zn9lNc_xVQW+Az~l!H5yq9MKnQvU%)u*)-Rcw9$|{WhPk9IrCvx1?DXD&P31^ZbqIH z_<0hpD97_@a^4stXK^8D8AMtRie`9yU0tt-m_xGgSiI&FDZ3lIB*v++RxgFFQ&8iY zM!rI=PmYLpbzQ-n4qe77wA?%rhZB+*%Cy!eJIF(+{+T75;~5u}8|XI6Im3l0=K2a> zeUX3XwR4B@BO6Kkc3m({h!Ljxw4^X;eYxBWtfjM&<>5-U_*^jpIbEDM&0P5OaGp+% zNUIj%q;yTR?iT-53mBvla%;kCkYj=fo;IP*3^fOlJXcqNZ%`ntau+T!buC)g6gPXK zsMDAu^1eP{YS_glNG@P5*7?9D>|`gnnP~4OtCK}^?n6ZAp;BbCB0>nQCvu+ zO@S5t?QM8OMG6jMwb#M!h6_BZWIcvdZ4wYXDJqRPhhCm0@I^{|0+cjjE(b8KPDr`@ z{zn-kwzx420KfUg;H_12>#CW%dOc7dBrjaST!LP&Pk(CP2(>lI6OW}TXdZ~F<-P}g zjic~1*UXe=Y+C#C~Uoz)3btM%E-oG8zEyR2>n$)bP z^G2XJJU%&DWzkjHo|>;zC`Lb!CJvgrqkB=dsUZ23i{As$A1`M7SLoGDt;9D(s=b-H@^uBiArR$BoUJ@DhL z^XRQR<56Peg}AWr5s;A<(*EuzL^A~okO?yWRT`Qm9koJ{p`Fx*sOa=Kbl3`&*rQNd zj@VfY;$5Mb%I8$kIh}$mxNa)OKeFmYFHu2h1g?k|k^)Ehuh9MR3=i)&d_s}ca}sQ) zCt3as;B9EZSLLnVM4lz3khZay$kZ*NQ9vJLs3J~TdeWo*3;rqw;q5RxfhI}qPO?ASMI;$&}#gkgGMXnat~WDTqQy0 zpn(^~9jk27UiYQS+elum+`Sc`}bRrbx9yGQn~p?Tq*att^X+B?%R7lXRPhfdN)S} zY(}vcVJOa_6oJ)Ci>rOKN!bsO&|E5;Sj5IW3J%JZSPH$9@(X4}79mo8S+q7iW3;0j zeDbC{Dne^NGdOKD(@;AzSFL=nW38!_;zpZ(9+e6GpN zb4SjS;NorcQ8$7x`&|-GWS`O}F%rDTL9QZt65~&0$xXf#hQ-qinsQO>mTJT$;pfXS zGlK_sSzKa+7sKo5Ip#PgQyDJL*+MsgzF$i#?cRK(GQ{vkMq_Ct&YsG?989vb25Bb>pR$&nnr^mg0&0!U1~#_DD` z1T{nV;dQ#Lg3B(XbEP*g9bY8GLbV>ovLvAoY#93J$C@K!VJcU`==ah+q-BYCQ@7Z{ zOj86brM>4=lm|<)IM4uID$!#dNIh4`7z6dY8Cs|8UoCV<{RIkqB8w0(1ER7Kvb&30 zy@gN*%z0T5U`^~XGRV|D48;#-O$UTHiA61<(-4F)_k#JH|L4s?wa#7|xka)7_PJeyDxEnBo(p9nc8i~V}|e2v*fpI|kN;-;W>GjZEJOC{S; zrf7G2qUO)>OG-j)|AV{2Qkg{sqwLX=k|4WH*-4Zu$fU_CloW<-qW*ByBb~|-nGf^T z2;`%$n~vkk(fr*t4X(ptF@zl|$*hi_s!&TY$AhDn!~_=u8y#*e7j%AGvRW~+U>(jT zMv};-+XtRJG$!0Wo4AAp>JNSHGf{;J4y-Z>aG+zWP>?Ko`YQ;B6rhOtO1p*B7g3*6 zSg#f4O3N3arC>(MS#}Xz)_j>|7b(G?sI9oT$Ya@96sIE@&%7wt`6e|(ge>el8M~{e z)&G8vnChZXgkaW5yMa7$1c~OQvLQ|R!X-?5qxPoKN#~b`hb#u-n|fBg66W7MawUaM zK0@^M3X~bLd2j{$F4$|1?kg(C^VF%tlOBjz1hpArL8NQ>L)dqlH_IYP0$kULB$t`W zpV_XwxdiH>j5kJ=`yc!3l7(MO7dpHi03Kio_zI_=H|8sUA&&W}=sJ`@w4Y79dpfK8 zDw0tGvK6EBzJV`&VRkF9$!ky0BB^~^O>jR}Lxwou+LN1f4Qf|Pb`E}@eev$hLN zGQD13H25*KWHE!9{rVl6(V))TU3H$U+JL%HP=DTyn?pGcV1`BdJpQ~<#qwAwepSOb z*A!S6rlv|m8TLA`^83J3VrRrwCAN_n_5n08RP0vn9PaNxW6y4*1OI-Jfy&{-07iei ztMDTnZD0TA7C<({Q8VSwp0>c9$>*MXX?s*6dyUoieo}jC;<@smby_1QyG9J3L9*zo zo1z&f?o%ct4dogk{dg}OR6}*Hk?dBHXqP>Z;e8=?lfv9-Qn6DmhA13liLzFmHX4pu zMpC&XY!nZZwJMRxSc6yd>NBijUe@FwD}%;Vq^xn1gNVL%M0%TvoyHxrtjQG&m$S&O z7qBDIgj?$SGa0Wd&bWJ8)v@n=>{5~qH{QplSH;t*Ak z+6*26L%rR~BHsVP-CFS@xv`RP9 zDIlGKf`B3-?E7VX>x=*2d(WIXbM~2Yh8fo^XGDbeeV+TiQV|d)Y=k7>piLU-U;qR& zg}PUb&Y(9+8PYnrA*~a^b(%HD%Cd?h?v!)_?1Rs&!if%>dNdW0Fs{S^wd|Y-pkS4N zUG_d;`ximHPq{ME`5nQM;=Jp%gg6tUR70$qyfcVouXG{c(bDHCgc%_8_+6(==-?o- z@)`LNy+EzDA0N@Xa|wUjA7sf<4qxJ@tFph&)S9XoRa*7vcECY94t;(3^W$&tjH=!} znR~eSllAFtqd4gAK-WfDY*3}jqVb{8e*9Wb4ft0IPE@KOUlVQeJw&{{_Yr?zy$`Z} z#reBp;INE(G1de^?I3iV&yUt=Qf;ALM<<#b+zbr|lA|}yPTXd%*@H`L8Ghet7Io&n zo;L`LrpyE!;lYC^HHWqsqP2=v`%)c*2lpmTg%$V_uVUUD@d6^}Ii=H!JyR$pR%+&1 z{5LEnp&r$5Os^R}%#7|dHw9FeTsspsN*#{SM-*uk32Z5slyPnoKkFT&xGdF~p800=gf1T|lGRlY)H39szUc!W?@9I)-4 zr<1l`ly_CT?ySUXc)&&^8qr^1#}Za>_{A1Y?T5@fJcbXMu-A#1T^aTWp>_>V90Z`l z|C-Aw?$l;3F$@bLJEzq^?B&VQ$Hs6B8>81iY)XL|Xk{RJj78lvM7#Bh#Ck>*PhF0= zifZ=@D6wb1hcy7T?ku;MMobx3rtHUFn?D7%HOlX%_F@y|28=V5lHRu}-yd%|cxtKo zL1hCNPGs*dwhEWbhbCXUV}G=JrL^f(tc$1enWT@pz;*(?+^72==hu87>o;!{u6z*U zWPI@bo$cED1|XXX+u`tGtyL&ByyZ2#4x;@pV{cT$@iU7(wx@cYd0e9uaUO!oLxE(A zuDG42{h8vmZtKMiqi_Dk0!p#+#Yj7VmR*Kbv(e~)=K=ssLShv_?dB(r?!{gaE>#`( z1MAO5^1T0ivP!j6TbOBHCBuqpDtD~H??He3I8Vu+WSATa>3}l+`$w}>F*1DkPoeXa z?rgoX57wAC2)HEFw=^*@rp^^fUE2aqUf0CB=610DNZ^fVLm52M`A8nn$lQ(zqMNz zq5`a|{OlE$Ixm=;Rj9S+FDP9Ma}2cKGq&zHq1V$Gu-zh-SB3q6pnWG$p6O2VO$zm; zq>Cmx7w`%7LqLziI1;S9WQ_xQx}pBT$3wB}=2Q9xNP5DXy8ftNsu7Hojd@p6pUXT= zvqc8?<+^D|Pk^To8JWWFqarvcV?@ydANZ|b(XJK2XM!!v3R(7`vvHLp#goNy=>6L5 zkwT&(A0o_-h{kSyypS#j;v1&_D!w`T!}f;#<_(k5Vz@)X|} zvk`oEUL#at5t%j!yI3rhUc_oM_LA@_(UQn9h?Y_bKvY^cvD8d-Wll_^e1tq5fEjID z`3qN&w?I5f_FA5eOtP%H|IWpSL37e#PUu-j*eCfML)8wcMWtI$rI^$BmRqhkQIzrs z9d19G1`b}O23~kk0)MGP4`nPe69I)*tDE z;xL>?P}@6E`iHM!h&k2xy4P;C+xkGP7?%{t&8!C=+wPjxCr_mFztMR!5_(z4Zl*@< z>9soo-9Yi?Gx5{9_4DN`&M!GtJ7D;a6PXv?DI(9*hst7+s!#2aNdqFw#a35DoHgB@ zqRC612=3z2h;d%ykiGHn>pR=G7x6{tJ{``UpVi2D{jZOOt44wMf1^%F)olAW#q#$l zE~jM@GJu*NQAUEAe~(&@m!B>OEzZf0f(U&x@ofPAz*2bhbb3)`dm;lz7~HKbEh6oC z)N;QZhjo%fwd!c{*lesBL{ta?1~JgGbv!(P*tX7d!k;;$e^Ity3qe~HrG>u0Dpx_L zio<|&Q|!r8>Wr)^z{ZnX#)q^~-4_#9omjq^H6T<|FS*4zTPp9|ik}v-a-kCN%4Rsy ziKw183Q~`nr=5>7xCx?k@-dfm`uaWIIxCSHB_;;_mnr(M`P`MrH6)1snkE+)>+L`Y zkXB_0fnZ>GgetrH^);_ENrxoaS%a9rP5woO!GLQs$tn}zDY2WXY5a^BNUl>qlItWu zyjZi!a&dwhPSn3ob6LyIi3JSw24`gQPzjms7D}qzVJ4iG?O%o6`k!tCX9=T zo|+hiRaR0Ykl(PMAZj>ICbCsVKuArGZ;a+vXP^X*@U`(e2CdhBK|}~s>MHctX^sbS ze(vec*WSfRab2C!C)5VdNA?&@$1o1aj#PDXpo;sYN{6K29O&j@0(KBi;w?Nysz99P z?2EQTNa7~zDV<^edpPT|4lv>829Fsy8+r80>0Wwu#$e>1g4#u)G3D%g9}nP%HFNG( zaEgQR^%U$@FGv`RAe_PBr)##j|r^@FiaLHIez^Bmr zi}+LiFqc=(C0oHP6MdOy`g^U{bMe(n???annA4S_epo&qTy_acrDyX){GDk|CU6W; zPJX*YKbFuxr8H=#HaEw_)`^Bp8c~H*rM0a{MN&e1E?HpTD{_jX?tQdrf{S~Zh~8`$ z1vv_%sZCPU&yQq^I_6;v7PmvvD@%oD_ug+zi;e{RCraLs!d#PrsO{N#oDkxWU~3T7 zf&-<&x!YA(JJrk^VDV1hAlWzU@rvoR-xBMY*8mnT@#2=kSGtmKuT`pY*yWZ^w*P9? zI=tmI+$4T>TY-0w4~BxyC}z6a#b)X zN}9nUBZpLRBlYFnNg*exMefuV%S9$;8`0}Wz=txB;u_{WD@{zd)CR?U7gLfVHG7Ky z2cdp){uk@pQE4zhxz6Mp>-5~cuDs-|-vodEK!oGAF)R0${xcvvZ^p@3uZh2fO9|Ma z*|TRw$W_P2zbc%Zg`WTOkr;OavE&QR3iR_G(dhz-F~W(3Dxj5rfo&sb(-Tu!vuENDv;NFDgBeQsD2n|~nc?A|?P(1T4BcY= zT+lSqP3V^0g^FSgV^4#@QT3wzG3}}nDH=*Czt)XmOAy?69B+CcnK)?EKuGE}{;-1x z+d3G-731C^+IU@ve_zDWXU){%Uwv+`Yg}x#+=&Noh8x6^9Db9^fzBy#9p0|8Mw%-cIG@NkGt1*~|crk2rO1IcB=B(72S{Pghu5PafIC@erz_pxfV({Dev-gOO(0)*^z}yPm0nxwY#Q{lgB^F`)2??-&=3qTwD_@907DOWPD=}4S-1ltWY#j@1{3*ns@Um z2nsCv(`G=~f~}burDa@gf9Kn0-{T)UQXp`2TWS)yc1?95UgEpbnA?wO8^y+65&@8p z!78}pfm!D`U5NxtO_g7P_5}I{5|&#>hm*TSkqgS@cZxoAb&l5qV+0~)qxz2bKMHk# z^VyMwHv2Mmj1SNZD_sq5u&lDV^H5F^#6&Gx0fb|>Rt~=+P~u9@Lnvca1?2Ol${ui{ z2_xC#0IWtYwuRRlW#7;U^}-W zWNaoKxXHvaHe=GEh9v{!2T)Pi@c5VOrq#_arcHjny#Y@-zG<@?sivi=aW6xPkA7>T z1C|VRBd9F4uB@$hZ+)4Rn*8oAFASS^A=Go#|M>J}r03oIKW~$N8=iQKQIZ<`QTmcw z4xagO(KX; zyIB{v2ELgzCfnN{E8tFX<43RbqUFBK5#60!be$~KfX^Sxg~?JcX5Dpo{9+*A!5G%9 zEI_clv$ueD(^OhDgHehZhHFhF$u_P4` zPG04ul&UY-&Y@zhGF4pGw6-W*VN~QaBrmP1%qtB^(`0esL>aA?F+)L|!9k{y%;A+! zbPNWArs6XC6XTw@EL~vN;w*)WWH|q>ZZZZtSQuF7sllCvX{*U2X?v+DPAoq}UZ6a02ScCz1v4aTm z*ZRZn3#W4$vwgFBb2bG%gb=%*Y-F`|32&fk4s>F-f5G)u2aoJ(GlKW%E6pH2NY!!A znftY}3Y`a#VMUx4oaxd@d6;1YGZ)DRk8Q9v7aCTpxX;;-|F|Nsu_fwe9Zw^^23zXS`BrbU6mO-IgLupIP){bCPSFq6{)q``I+E=M z{(ZmH+(U$zGnL2w`PF+1=#4J&EGlnej^*(A`fm}wVhk^~ij4?5P%><$Tu+lC3r`ju z3Ne=4bl&+S2!u8WkRF4_XTI3@7ambnq^3@t-=Bt#=v25fzfn<|n{OV0vhSVaw2ggV zYFR+#ZrEA>9#|><9Mg~9ApaW+_@dCI`CRzyS09g*5%h$qc`^_cl2B+#^Il61cDl~` zgdT!Z4!3l6Z zrv3k*6X2akcSa*^U(30}?ElMV0LJKInN6>_-18gm9y$_R0RYj)1Y&6^`+#lAb^Fy4 z(8FS0yL78jkcRPG_}jfza=3NAC8-zMHPZe0O>hKnw)A!V*6ap{sofK+J)nB?2Vnh4 z=14taR)7k{2zx+Vec+|n(nxNCHmw??#vkk{iprT{i^A8q^vk8^c^;kqs^du(J6brC zex1?q1SBPwFr` z^TA5){n3(fpG=%6%h7k9#*W}-!01$p;x_GlIbkAb1_#+-cD6`B=W6eM% zcax2z1$^J@#mIY~c;JkR9)2s@O}Mw(d&cigqZWvB`NN|h)9d;^3xRgJ54ahE`ij{G z`#r{%j`m2P?%}Kw;k&?m4KPLS0pQn0vcc9b+DlZY8*{5m^I1YT01X;)e272RC z?|R!YN(44u7M)S4JWTS7B*{IWIvYUk1))ON*RJIEtl`DJj zm$vP@OAxx>rLk*EVE@~op-IA?N>1)#B>)$zDs?c9{REz918>q>5xms*0d+F9*-|c;L&g1?Sf*Zd<;$Js(O3|? z;5$pfl3ZkJ!^{}uwNG|*MK{OU=o#V`4Z!tpFM%->e92K!5Q6mk&dFtCzWs%k$z(30 ziQXH34ytCHuGlp8z`7PoAjxFf_);#-r-~=|iK}GAsm>PO`LZ#i2jlP7*c;2r>o$WYzxJ>C zx~EjzQhz}+C^wUFXTykFSE{m>w77q;@%-nfq7isGEhT%<@;!6G>&GNBRCy0a{FyYY zppj5bIV|SV_yd+zy|T|peEO$qhgTW|^CImxi?#9_?vRuGf`k&6t4l6UvL}Gf=oRbp zwe(P*Vx%J7o#4?s{5ps6Fybj3tbQr1Nmu=jP_DfD+K`(TT8~HsMqgQ_|A%MwZ})1u z9-XQ8ViU%9X2$F;(@IpYh<5qFT+2rlM0r!LOkDbgw%4RAjZY|StdGGk0(3COb72i< z5bn$O?@@WdcQt(dp6~A;bB2&5_>_u^5~hV}jO9snYO$V4$cP2wDK6R+v7XiC~C5P{A-B zaYMER3|gq_vR@Oqn)6e(&vt4}p}0xtI#3&-a8~VuafY6SgkJK={UZV_d~fSc+%-oy zhQGkujj;)b5P$^FLA3g3x6R(2J%u2Gk6{Vsx--91ob z^HWLak{fWOOC1aa1CJ-IUe3WP%%6%@+SF>h$EJuqk5_n$P~nQ1H1mGnNB9Qlei0X6IapVeNCqd4KXGZ^Q}O0Aw(>npEgjI&z>Oa ze*N5Ke)$qJvvn-Ul_kOk-+C?o?#mk-YVB;dmeI7?brJ`jK5o*@JfXT_2`Zkvj@q7IfmOa5k zwIWw%nq;~dj+S3dwvyl&aI1PoEs<2VM3Ttx*9l6tQ|XYC zi|DpJp<#&yaM^|((#w&h=Ma_~cZPvAAFGAS&Un`$*%61{g|mX1%~UR(au1U_6vmdKW5zq>E%#gDKtxQnfmO2tDM3Y13mxnOSVzLEy{$~ zb8dsa!%kpb8S$;qoGdlT?}g>y+l-DW!y&lOONwC+{{79g&65Q4dj;ZhZvr}PD*w>f z%bcVysi#0~QO_SSbM*wZ`dkAr7KRcifFUD&3-j$~01av&!h*l=fs_OVK)O;mP3_%@ z!b|nNu$9Evkb-ALD614Ea(|(1kZXT97+Hh&Aog&99NfrX_7?|FrjuP6;URCod07zR zkmf&pDUBqM;N_~NqqMHRKVuCAQAfGa_D}~o4wa%mc4m0C9LF|-7|K{_xfD__m{wSH z9CRC*?l$i-UiEFmrLFe=>r=AVF|L@XF;jKrU9e*i<*o1F%SeNxA z*`7h$glo4yZgk@t*Y9b{C{wmZAWxr#$pU^zSL2B^BCCO-1zidB3a({}d4MBz5-FVP z-_# zxA-ZF%#;yDUbPwQe%{~!sR(@{%o+PQFKqprp2@gkZ4;>1@M**>mbGM1!@Zz4YSNfQ zACPh}`I|(9eNQo$qAc0}2rdD}@eiXWk|`s-|D1uDKrX${N^oh?U@LxI%rFlOwJG{6 zb-gS!;Em{vr%z*}=S@j@o+-@7Nou&Yv3Z71)Xb9h0ZH5t}s`l8&<}n0nnF1Z0ccmj^9c=z-rGeCB14)XnF#JkmNF zd-GGiu@{27=$V_{1|=`Y8%WNVF;P5YC-NzECxa%S4k!=508jvu$)Lr$@^_nN@G3!%(--5)9nc2}sjSmTgkB z)((#3PcDDT_F9TOJDzO1z2$$rX(JK%q@zEOL8tWHgUS)y>(9wD>xnMW@ka*4ypk#c zKS-k|7j3&{?hM3)JKcSn)NQrIx(uH*NIZoBL7HGSw(2a7sMSn12!bmpH)u^F{bk|> z4BMt$HOsssSW|vwh-!2RB(w}&j6#wh3j6U4CZ3AWMZiu6o<2G2FwGRkfWNW`{ulTA z`5V0!K*$HaI57CM(rY>1RKPCHP)e330xZ9iQ6PfF_rG568A|9-h{l;t`0PCXsR!cI zWO@=V5UCfWYb`V5k|erXi}s;tBqzOX<`F31F&~Jb9z$+-9GkGPVWp6nl;^nmZs3ER z{h>s@ZOU&39!&3q#9hwh$DKT8()c98-0d{0aSSHf30~t4AY%#p4j+Q!-6Utqd z%QyYviq)n?-E_29dX56lRC>>u&=UUQhv0LtddTR)j|krUsSnv!O}6&n zg@D8N>*%Y8K<3bCw@K}=YJ4zyM2dvKY+Nw|VK{4)p+b>bTrCSUz6n?-Ytn=FY}^ z`d#(t>DFrRQ;j!T>tHiA&>Z5Pjsr-a%#rI9Fo~mDiEX&(p_Hww@?Q3X`)K2@o{K#A z+$ZU6oU$v8MNsEdXFi25zMbP1O$cFXTd?-r<2uI9@d%2!n!Oos;&kT*7@#1z-`Twv zPZ-x9QSoFkEP_#`3%WNYymoWkhs&p#Ra1&hd9qJ#y_&uz<#YyR_sDZSYygJXkF)jr z&gh5Z$`X551nsR}soR~!S(O;FR)emdioVz9u;KbIpKUq>RK0}%j!GV{_95K8fuGRv zsoe3L3<)3ncZ}kZK1%kJ67Y@mrL-os>X_kB^>jU{U5QD<92KD}XH%?I;xex?|J0!3 zxQRBc>t0Luf)q{r7VoFqA5Kb~1^DdIIH;XX?*|Ocav{ z-zZZbA>6pp0~*Fa3k=%vYP-=(QQ#7G1G=53VPh#2pb5C{e*6l#0>ZwTVsN)w{chF|x=CEXuahtltfFgXUGK59hhiip+~>`epB z(!z{YrKP&wCE;-7H`$&cTTglnOELyHJ_2)4VN+g&J_{=Mh+Uoy&LPxi5{63KFOXUOrgXeWPjNmUXtej>vYl-5H>J7L9{dba2IcD+{FGSLo)sHc z+>Bo9cPUc^H1y(Cf9f02ufZH}tak?6@WHQj(|0G|Pmm=6K8M3}d}2~>dNB|g@Tp6HNdhb~p)Prk&X zx|FDw%00I$m-&ud7m2UNz}=VxW)S0Q#@$+{lu169jy)gP`C96}+C#332cRerZ5Qc2 zuT|@{N8AW7O9_ic*3^3+NJ;tH8ug4osL^ZBVwLu9mSRM=nc#0^;t1RE3-*cc>0)gO z$1eiYt7p`m{5j1-^uLnt4{;f&lX9!cOE@o#1N@;9GzZW#sokWBFlmssI+hhW`VM8i zYKCS=IQx3R0{|;Vwpq5EZ{x#7D8VN|(C|GkN zL0xJ!H>1fH&9y71{nxdNA&|?`vNOcBW&q&p>6fZDE*)_Ye)(loBen3t4QA=67qQ_1 zu<484`~-bi6@A>|BzspLaDrV!q63tiqd->qTdj2_IQne8c{KpjhTDKB$Rr0C6=EK5 zQbM?ag27SmNt?f#%0qmCc5yp#OV!>anb z*LMCxP#{a|_$a}kTx7ZPC77_T#fz@#zaW)*R)cX5z*6s@UnM~t3J==l!;n}S@fy%m z!f`tNaQ@nws2QPzF81a%#aU4C^BC6=wo}o*qJ^*<`F_IN#%+Vxy7hpuetnvPm8d`4 zPe)bNZY87-hfa6R#8R8e0|!Q(!ndrrqVgrKtG-{~?Z<7{5Hbr414?84(OaNUr!-&G z5~NQ=7^D0QRixO}{H^Dfyq4Et5YvYrQ5W(?L3t#NrVdltJ(-3+m?)AMO(7Z5m*&#s z@XiyL+{~dX>?0i!UzGx5?+WV^t$(<$qj>Q_t0KpF@gL-CfIN!1viSM>&y*;d63O|c z8ANVut8`2pHliR&%W{5!A}1>?_)(DGMu1^F0J{Y%>qJ_XiZ@9E8|)X&ga6m;7yl1M z^od>`;H*j`;p-|n59%Amp7oe)-x&B*bKkP5vHRp8Bv?aAl65gN9;8*-27c{y$1u+C zme~|rkixO}vi1|fiX>*Q|6!@ILrxgT%7OeJPOl2Cz)aD-Gy!)kTA zPj9F1=p6={{n&m5%^^Vnn~tzqV0}w4SnarMYV~XFqrV|7^LqAt4nzRL#51pOhG_zC zPrTT*ok?v71IHpt;lwf(nQC3vQ-6NGKn>LrOmCs+qs_I<-5U`IdTls2WuaH5)y6Dbmlwr30@xS!wIZPrsex) zuj-OO_*QL8^ixtp&%|Rq4A1KmdFN5Svnh6*>Iqn3mr6e@MRBy{yaA2;)z2|wcJs@Ne9GgMu_yQxjax<>u1-oYA6 zogxjq+sr7#p>M9Dk*{u$cjo1Wyz+?(sc`?Hyqhccf=C6%JSmA=$~KV0fd7(SRVxLc z>N($^DGaNa#xwbDkXjR#HlTiFUOjB|DccSMpb(>j4!zY2^A z2{PJ66Fpd_RZ?ENgc4CBS~t7Lc0(N9sS7l{fK>seC%A0o?yjl=|=Tqw5g^PGA50gzBu^>+@v$?OCY&Qj&j zug!0B{7XJxa zACL74nL z%!9c-H)Z&bJOpf#nR%y+&s{{-oOR0m#JM+svC1Tpjf^27zy5j^74cs} z-rJkFEOZYtb8uQb>tbV$dRbd7AvBnMc1*S_-d&Fhhz1I+_S7cKsrM&}-|T#?P@KKY z0;b2dNY*T!vd`1(JMZ=fvL%1piC&grAl>Ad_2S;S9{(O4p0yzPLvHE7>)yJafak*!DHA2unkz-iU&SMK_t>xwS%z3 zRJA%vg?hr?GVALmOrpWiIH?;a)^&gjAU%xj8tlmpKq!x3Zf^TCes}N6;SB9-mS|Y|CGSO+_wS{|cvfqt0u?rCSq`52vK_%Sb~B zk&7`%xRojj6S=~RjAz`LykzQL0rn6O^Ey(&lg=kFn-agRFLmDIV8duYbe-BO|HqIV z0Zh;{0CjV-vDr@ICs5^UH}kU*q2@n$w|9xC%D^NMdyY_%i%MBC>ZOVcG;HJ%u3y6XGO@f*4Mg}yA#*+2Zw!2rnEqqhOtbCDcd*#I4dT4i6FWJVMcNDX%KW2d)P#B`TmA3fCeP7&c`asIu}&I_PGz- zog_d~q;_Q2bm|tvu7C>&gCVj9_l50q{`GW-k;_3D2SM+yEvHyw#4zq(wxW7^X2BGJ zbZvUoHna>Tu`U5luF$4i>DR$_xdJ?0r~X)H3}uy7k41WW1S2#fux9!l+wqA@DlA00 zx@%8?$f)(>V1?!;CULnOP$^E`{e-=qm@-{Gr6Q&5*GhykX7a>%|MLm$ zuVfiCqL9Rhy>fv(%*z<6*{b*z)G-FSXn}l0yu5h7wC^K(`fOi{jWL!M2& zM|GYUoyMeuhRSH2V~9P#DcAof(2?r8unkHZ^L_Ub7hFCJs+59vFA~{|6WIduaV!~f z44Wf|)Vi=@?-5cBStuCD;G1YspmRL2Q}#umhf^N(=A0X#tlV= zb^!`LUi@eY7*v=nKLgsqDY|g5IeJAvJ{3q498%U_3h7$N`LHkl$ud_E{9N*@Ar5wyOqXKU1vszI=~_@Q=Mr6_SDi8ommb zWgO@xaGNwCIZR6G`Q7nR^x@a&c&QsjZtLm|?vpDbjp*N4+Si|q4;wQHF@ z@0a7w-0=@GLXOtRTnN6BI$Dqei##UnFR)?mPhIwF-b14(lHUoqh+jUpIclRHx0wPR zHM_?JhyMsfNw6W?-Tc=|dW5YRcV_(a={{LRSu0;r^w;u~&Iq z;PhTUL-W1Y-cs~SK{Cv^1S!zV=8o~k(jAs(_bS}6cn2|Y@YB$IrB0Ji#s;w%aQs%Z z;fp_uTw-s%$d?$|k)$rRnb#^vg7-YKZ&;)v;;4l~=QXdH^sWn}X@A&&*^0x|Pwyy~ z_jM%~Pzj$P5PrjrIoaZ1V;F=os<$HfcN!n8a+KjpU5N_aYyP^Lx^9U(JoM4bOY;s4 z?7%A1Z-WFMaf!gX4hSi((-r>9e7xfLQolK&jTS~Oo%-)L6bM|jo*7UGhf{dLt=sTy z;$?J3-ctj>yp6ZArOxiH5d1!zjD>Ek8XhG{hIwtW5S8BRyR5UNpj4Kp=FE(7m@M4{ z4=ti1CfovHWanY*WS24=y1x^RqMsKKz3hF0kDs=;=tLB?32E%Z> z)&towTpuhjezc(L$n8C?vpjLfDs>xgx)<&BJ%kYt8Nt9Itw1OovxCHO1E59WiJ{ZB zs?A{QL`R>O@QFQKoX-1dY5h)(E#ck^I)1@x)qw!khmL&PW@iOBG7VhI`U;tS`3G919%MHX)F4 z2T|AUcozxScxfhwi`ho$uP4F?C^xpV%)*yz{70;hhG_OVVwlujfW$=z-ED!NcwV#( zDHe~^c&V?-OO^VQ9tnAePXb>pCGOAEv{dCdl+oPgKAlU3!|H;C14Kf90Ic;BcehJd zsHr$)4Hp^LUthCeYzv>~wd_0qLUT2el@>&*@@J=i^89(eK^x{>(Aurg0kjV9rD5e& zx7r!*lc7ln2D13iC%y z!l*$J|J`HKB>Fk4IXUh3$KQKK&|Z0J?Ih117$hULa zfcV&Z;7875N8NID-U`9oj)Q@gFZ)4M3$f(Jc=m;$n>w>deE0J@R1>NfMO3G$bn zhrC%q`)vZLn5YJN>#_1KKrZumt@Cg4hbHx3k}+HG_%g9Ml=}xV4m^LY>OrbFrHJ|N z#q;qGB8-tHBvLy71Q0wQyy=;#cb|#7t@Xo{ic9-gtt&1QaIMk^l?|A6-?=Q8VKQe< z1zO}4!pq!V3@P|fjQD>{&5SdBZnEgR_{cM@Y*a4qxb>CMCv`*ZUiU|x9! zGOF&Hkn!UA#}S&=PuZ)qWn==Ma+x%^?=3OQ$0$Uq9e~E^{y{v>*c~qc0if3|qrhhCQAO ze}_OJ3j?BP>k63Y7JDjv^&i6tflo1XRsEK*4_LV8sjRHK?}?!pBRSnP2``{0Z^(>n zQ`;M)E3ulrftJ{~Re|8^qU~_^19@V9ZjxvsKX_(%+1U9U&;XVev9b$PWRoQxaCQF6 z4Z|%Pr^zdiUifmA<-vHsr4Uh^uJZ9@Qk%GYH-O0Xd|%lfRL`rnW3JAQiO?u%R4!OTHbn8fJAQe*h3(Q<#!I0 z2c(M=L!SA0$nC$gX#Z%6h$);=cS+o!g1?*o`g$v(9^xR^!#k~T`O|r}L^cHv8qmT= zyKVdrK0G4L;+KCIoC{Ha(;xOoXnOl0D>zS;+m3vk&h;R=Y-jA^A9jTERk^vQ5H7I&?t{zMBjar-FPxKndQDTqECE#5Qn5jbt1HZEYX zW+dFUo_B-*vo^^2$hw`hEdlOb2q@XG@?VsMbEx&^ul#EVFvw9%2dE9VRcQ%R#g}gGL^HULy zGP+Dako{AhHOhslE zxsgpB>ITg+9za9K(fG{3x*XxOh*#_T{qp7_hRw#1!~NYy`*%OU7zgI%TG|uaMt{AG z%+<*MFuX&&@}6FE*#ZYdf&&O;Ec%#r5_@WJA*h+~((4o?!1|W3B&_x5JnzbtzkPo1 zt%}3DXcUPjRKc+1+K<)w&w}Q z;_9@a!V?mBb%;WU$#3m<0MuWbN5C$1acn!RS5L0BYEhOp)VG;lVCP~riK>&O@%nPyEhl)d&XaRH zIy3G1LoHQo*T``j_9Sr0I5Pj!;p4vS%Kw^}Bo={?sD*t3wEF?TL4v)?)y_ReXfB8M z{~@-iIdMwGg=>C}@MbXK9x^VdN7StaEyXnI5H?{ipj|d$qocIa1+n2!i`H$?}C;yx5-1Cr`OgbcFreq(D<9?z62*nZK z=pN!Eg-|XAZ*qC|m4nF}&a6{-R_k>rF^0)+>L?G8+mP^0bJLm0PKeHflk-fj=Rca? z|5T^B@pvi#jxWI% z>UMJEvbGo?wzT^?Kdw3dLUk0`s$kidva3@qxx1l-tjYmB{)H7UIK)%_Wv zlwfMVBXdAiX#}@AK}YNagk@cIUMfWpnx*y0+q>?=p~7z}DbhJhn_+1#rF%jSPRoHBNfa;{^sDeF z9`lYS-aWz@Pv$nU|Go2Y$~=50zs|g^^QCI)CrSv8_ylZlPWdxjWbqTYPINmk(Wmj} z=ii8?0+fPy`mO32l0HHitVHn%KJCSBNf`g>_Xw&OxfoSoye1VFG3*zj3~d@$XuJ~9AUa> zokQj3{Q*D>mRl75hvRz7KO(x_Ex04*rbXZ+K@cDnCp2dy6w_1sNvC77Y$QYwLf zsnyf=D0u925$$kz9q5NelxKcqP>Q~$zt7yvnL$aVz)0j|)(o=>SUckR zY34w^QBQ8Me0QuPKl{vG)I_d!WB9WFnaVRIOWaCN-}d+3&HHLi@+I@D*SiI2VfOSDqx-gz7@lezFC|c zp#x*Epz}fiz1*d?(huHd@GxqppjU@V--oukJX2yMDG0FKQTxFg;_EQ1*Zuygj6vhB z*&3xt?II7TLfLyy%pYlv5i!FXm+6>qO@0M18S|xKSDal_jY#2?@qWMGEYK4B0!b8#3Ai;-cXH>= z#%YHt*l&8?J>vNoJ>ADM=nMIpusp=IEjQI)dt|rm3xE)d`a6=#P?qQG2IrOU@4I(u zoiaBt@RMv_9xPaQeng~M;Q7L(mB5se>0Sh?@(~Pc1!|3FkZcawFQ9cS1?ju2J3@K- zO`1G3Z^BUg@R<9WX50c~0TB4*xwJv6-RnC=DRsgi!3Eqsl~%IhC*;V0(sHAB!OJ!M|e&!EA^#_mm>Cu@oAS;I|Kt@f^dOi310Hv^nV;O5t3E9L@5 ztl*G#bqT&hy)IUbw^=|hnori?xB|o$s3rG!_GS;5X{frh02xEMcqzlBGrjKW6G1pY zpiATijqky55u790&sz5AteCL9*YS(fW|z%wqy4(?2g4B zwpP$I+>NY;Z{Qngt-0Y?5IW0bUekQ5PGbmtp)6SK!Pmyw^0u`LW=rNrf4~$Cd6uzW zoZ~q%!F-mTAXtxO&&R$fkG9=$B=ZvWjYvBMY8Z?C-lAjF^Qdrp28l>HU3NUVxZV(q z5BgW8J7E$ULI9hFt->2{$@KwZg~KZ3zyc-hVGPV%?3kR8Nfh?PK1Q{bxnFHH*kf6= z^z|XD>m7zWmK%}H&a4(ommsmG_e9!Qkcq*lnVI~rLd=%||Nkt+6bJ(Kl{iC5Q{t}@ z1h=#*YlbxGKz}ux$)|OBkV>=u{6P=uM4A6rkVsxuLpcl4n}LxcCkCI4OX_Q#WnzHg z#Lw_bZWDM}$+?Wrge)d(AXeI1wR&sU#KqBUU$!gG>sIgmwF!_Ke}_x`cy~| zt+oav>#5OiO+2SNAh;gJcn@TmTDtzqtBvQ&K|iXaIU*_E$O-Om)IJ;#FY~MX0KV#} z2bE1BlJGQv2=WV1aRbi|G0Rm`2SAI-y-0oH`kw+r|6J@N9bfeCB}hib<3YBWb@zmisH(V)T8(|HfSea=^iZGf3D>yh;UD8)edbrAtb zlX7kyEjgWFT#{$8hTMabRaRjAb-v{GrHTfGT1)^1`5swo13g(I84tr}H>z{#W!HY!B-cfeVPY z-Q*a!*yj?DzJK_w8<-sdJ8L@dwuyE~oCIjw{r-65Z-(;v9v^6{zllvDgE|*Nbw&$2 zdDoQS#JG&r@(hL&q)+9u&*1wJ;@vDb4Q_^ne0`r6!Z}=8$M7{jTc1t1&DC=Wj*;kj zp_})hu;?N~QgYzXi1V6${gPmRZnh|6mpryEQ6?jVWZz}Gw?GjjgN`8N{XzY?0n<ww_XujdW(ZTp>cT5VllAN0tXe8mv@B3U39N1GJE+U<+B%$-+Aha2f<(kQq}K-+4;}TDGfF zr{M6;1W`Tk6GtF#lsp{M-uMif54kX05QI5^$CJ+mAP^qC(su(0^-e_j4lvLp7PZ2= z@5Sn>AAG?25Vx%5@i!KbfTb$0+F&>O;Ob+-Q{@jpNVF?dj~PKy5Wm;1*%j6-$4AI# zt6zDt_R(m{`WH|PgkOpEt)seJyRK0Y1Pn?< zxOzWN>Q6a7G&v={t@mf%qkpPBFGXCUel`B=<1b!H z_?&X#iZREL=(htHpBNMIV6nsI%t&4e;?j4mh0e}^okI0`1*gVx5teCXN+sHM5kkZ#5sOnExH~E6wQSAv=A%U2QGSa zn#oBiL)+V3n3zk)TB$3yNsG@A5X{U34_os+f zb^3Uf9c=G-?zWxzM%&0LpZ+}#P!W?OSl0u=!-}Fg^N%I|<4lW%p4Z@nUEo-BR4TN6 z1_bzgujaN*L3pE^{{)R!q0v8{fafPXfzbl%xt?zmSGy-arzwilrdUbeHft+TZ>Ghq z2b}lEUGd|s^`{TF;%_K<0?TT?F{SXVo3a;3D#&|#Cyi*?GL_cTV`Tx9B9+e9$Q@#b zl6VLl6c`!ky6%l1c8cpFvC~HRL6)@QCv$M`UVyOyd>j~R55SgJ{_&30s0<3(AP8rd zkdT;zSu=rek?Y+T5JstTwzh2@uDV`=LkVlY*KHpd9tc`?MYw$&G zRjq*|abq#i!%x~8fG_y9m-Pb)0%HCuB)>VsMrA+d2HH|$5o2Ec`evNWeuDY+#LlPe#kOWHsM<* z>OE~$B=h}7e{SKfp{vW3vtCV}9^f>1Qv_ot@aWSN`yK_#-0i^lxy!`E+UY z?>YgxQ*Z36SA83xC=G-#_u!v?>4J1gdXbRHtN}3$1IkxCqYTLlPZKodu4;K82i;KP zgTdvNpA}92O%3xmf1*`gv}!3tbe@U;AfdM>C`(~GBF4$=ftd8AGDgHQiw=SO(qtm9 zYZShkXVQFR^>$bTHc8;^Gc2cpRUrrHekF1M9!>TX*EI1S^3fV{xl6vC$Oe%NbM?M< zdfT4ZusgB?*6|9{{!~0Xmj2h2ys-{GNwA`a#hGPRf_+jZ?A#0wESx!TP^D)DD!@s2SC2v0V4>XMa;Of*4_McpVT?ih zniN8`3%f7ir=yxH0ECrib@4CIr^6MXOo6Qo>#Y|e!>Ag~CtthS`IQIzdbGj{f)p4{yrE|)UaRO{XZO$gS6 z%!JdVv*Wi}xG-)Yxj1!wZ=RJT-o|LhVUWI}B0O!0CA~`RF+t#qVLASXi}pV4e{#`w z{)db9?TZEq^ZKIjc|)a2&od}$arxGruVcjgc$%Y3^6sEFjHuvaFYw8YNz%S)u;K7j znI57oo1&#M$q^^|uC_*=ag;S_@)umyvO z)es;2w-ak#fnj{Il6SK-#Ee{0E)I&V_k6j%m?N3O?*0BW81wI<2rzXmx-nL`{g1Y$ zIr0?fo4$S2u=yl3Xz(hg?>B7efs*|<>=E>Iuv``r>I#J9aQUuJ6%#L@9dn8@(qABV zZ`8652V6RsOCBEXoCCTuPlU-Z!awR<2%SDB&oOND07lpXdruOhWG}%s2|-TXXbdUz zrQM^>(qAaGz5ZjYrJat;(-@nsZYG~hQdViPKQBcd0vFB_sHQT``9>MV2~q)cATP)l zu$kw&953=(*-1Ngt5*Zy6O4up2UxQO{~)W@o?tH4u;eZSpM)Qm&-!_31=K%zgCr-b9nstVM#np|f(6Uaeq4rt2PKibaRnuA-+7hnK81xKeb8y(hozp8*7jfs z(0X?bt6>JV2G?68)?E-PQsq>tf`fFC%;}qprWXuxda8gmD~n{zf7%zk8#w*s0j;#LC1TU+|5BFTT~*0J zjFy&^gxe5~)L&bJr)@dgnDkuwq^FlkIEg-OR4(?}@6C)aO#MNf@ki(ZrC zw}dTxEj6^YrrjyhQ#9PM>Cq%HeR(MayaQOya5siRAmkyu*|%OwO`hR2^H>%PXnBR- zx#Ney-r%t9J3r}u*jT(2@`vjFqAz!4N$cd~9|2xRJU7PdkldI5>Bkyg9w-_Ysjbkj zpssD#eZIxVnpsboq6*jM=S075-W+rmI3d+h8X(Prf8}qU7%ZyBO@IpzL9EW0_*^2o z_E)nsYGGN;PvG1a^%{mnwBBTqap*X@gT%-gJPzCpKdL>=gL1Az?5>2w(Sr$q1AuC9 zP6WTSWvX5&D0=0H;Wj@937fGL421Z60Z)|UuXAakr#5sJh)Kqc(e@B1`*Hf@KfnhZ5ZtWehms8Cwxg}@$J$iLqkGlYD8psWW z8?oX=?nMa=$nSF?^_PXb2By1lrXwg1^u-G?-x}A!p}Bgam4)kS(PD17EgAuMjzs-M@tBP!$R zNZ|2f{_?e#VBUJF-PyrFrpilQM=Ez)>h2f3^i?YDxc$ErO?gKi&r9*r|3WflD5|%o zkmf5rlXdE(alXK<+gJP`6i90;Gm>ap;x=R%z`H8^-SW*glQqn4WmhKXB`M^nz1YT7 z+`%h$r7}vKm@0=s*U&Gm4ts%vPMQRS*(!XQ&;J!=FMS$iUkxke@6r+izVE2ho37w1 z0W|0Em$Aa%7qb8Q^`4?y&1nX8a1f$InVwYNzc^FRN*!s$ONZ`R6*Z5|b@Jv-r2n00 zZoUIH0Yra#w87H$q8|wM9R_WhLByPmRw@_T2-;f|HO$a9 z|NNwKo}Pg#;~M}WBQL+V1InPzXbHmmUtrM2&o+} zuF*W}rtu?o72&x9CKszYDohU%Ywjg{>{dTo{O5B*G4Y?(F=~^r0JXh#Fnrh2m~%?d zv&`S{o9K!`Z>C>h5w~%TBv1n#rAk{|difoi3XsdjMAB+C|UatLtm@KwN{I zFop^ss;p@GY;+MJ5BSd&tKNd^Q3Xqm6ADjZmdd21d4~rpVjC&2bORDiFk~XE0uL|NBX$@rfmsgbTH{}aoYZq1DombIV~{VG({(O(%mA`;(+$4ZPt-_01NIEkb|RJ)X!D6! zuIWiLs?q1@R<9iIia+===K)e_QuSpp)#=s5qYzkI$et_!`3af;XUB$tO8pdUHDu)z>OU) z4;BZx1W+{a8JmSn`B)Q6ct`uD(O$iahGpQz^aWZu5GoZkDWHE$qBk6MX7LtE2GoZ< z?Gj@!*pv`Ji{FM>K=ekAZ6Rm_HbN+?rE)IsY6E84^%j$aZ&L5(Aa8SAb96%;t555b zn}wFfCiN8G)KZw9w&6bVWDsf%46gN&K7W?JwS)G%d0Ud#pWwQ@w7+riX*eXaJN7sE zdiw`|254H#DS2}#VnBkXEiSCfM+=1bUw+TP&67lGXgh{ac=<{i#re3@b1q3=a0DZ~ zXfGxrq4epK{<0WuQ5#N@lH8nz&2jF9h%ZQ2X2w)7^CQ3iX-z{;%fns0nOA4H%domd zsRnW<}U z9lx|h_*C(nm_q#&zZ$QkY%1uU$AMGgB2&4falIFA@J8pE*{EV zv9!1db(1*(Hlq6yzjx1y8{WE9n|Rix+F>){8a7>al6THc4j4WGdS_#1_NkhDTX4x1 zJ}Kbq*054pSk&MrK9WC9Y(NfH`&65wFa5gV&rAj@V_w=P#pXJS@AXw{*a}TLSHNYn z5hIxAEVKKSq$F&g2wZTRHhzBJHPG;C87!?UGSeO1WJb>*JG%X*)va%=&Fua|H2a?9 z6K2#>p^-A_jUZ+FD-tq)0s;wmQUj;KIa>G4Y4#n7LQYpG=hf(4)IW-U zSTyyeyX<4+PJLm^y?31V8kLlLw;AN&DCH!AsZ-dgSrs2*T{rorM zB>(H@eKkboDW(%pZOPtNoAJU*9}^#!%UFV2XJ!dxFFrU*EX=0V)L|2`*Dw<<8^CDrP`a^scn;Dy#?5Wn3V#t-Igjk((l8Qe-h&r4V!Vz1!f}SRW9Y z7~*A^(d}t%@4(+ovU@2~T+gwBtEow=XyFi+GI>7E50xs?gSef{==8YWJeiKfA&Z`J znFL00_3L0GBx?f*UJGPx#5L!3qG+$~ljB2jvTuMmZ^Kcycn`7!xp61Dp)(nADzQG@ zuveTGLT{1EiX%g?*t^&&UrslrnLZ5|kZ)t741b~YXt`Y;*fTVM8sJt#Tr*tK&Ccov z`D5Gty1Kz{=3wJI!>u_kg6)ukY|rguvD5lQgY4xqieW|3ZqM509XQ+L=(yua#zGkt z+w9MHQ(oOoxnkdbp1>0GBY+TPv^-MGr3C-peE(Z&B$qdt@t^7_0Q>(N-~GuAM}4puS23BH9ELTNHi zgr+(w;uw=h%C4C!t^J0fWcropx6KD7B#uk6as z+Zl|kO<{g~dICHTL`U}f{xdoeQ*eaJDX?mrRAP0>BoUw)%ESe~kzn%^2nqW4=lj394L7H}H=UiQ3=oYj(nz=V zvuqN7_frt_T6C9A3S}mb+)bC3l5WGk_tJ3sW7``@Yk%@qo<%j?KY%p8m%bnTK8apX z;72uLxoIJ*#Llq!1TrxYgKUF~Tm`(HTrocoYWv+6XgXX_$InyM;2_=ucU^!OxFcBmm1<;*1*@se&(&mcn^^#ku zcSLbBVI-5EDk&upw*bo;$bB_wkFjaz^XP>9n!ZniKn700E+~@%UrGEA%XhrYQgyE8 z4immi^eJzX^d8WOL1rwobN2ltNw{+?YS=5epa=l9uwbPVi|o$Gp)N!TLRTX9>j$M( zeMt8{^vf1tQPE={kf&AX2;d2e2CMD|Oig+1sv-Xi0oMsnK99G)ADx?fM-==`L)zS+ zMBV4vUs!-~dK6coR;d7*Vx}GeV~t@h)svo_%Xh!Sj^(6`-?w5SE>B$v<8Z;J!i{yT zE-sS+=dv}N^F(;)t|iGEUsW)$9iwCDR$lR$=cMyJ1AKvCS)Y%};U}69PH(Ey`1qM` zU_SHT9&l*2S%uggr5}(KN@KclWsFOcAYnWBghmt6+_%+2o7+5%g9X2hdy)pNhZ?6L zab-T*9WNoYMt?G#n>&t^m4c3^1nHz@1ycxWum39}{%^p^+_xy~%&V4kuYOudN?pHw zsQ_O|6T{7DD)c6ABXp*JaF>B`-NDroZ`!{3PQ@6G1wZ)$5vecnqwoAwx^!o;zZ*Md z$)gJ1{1y2t9gMf9q$gc{B7!rTJu(w)m;qDBQ4Pu>F-D#1JlWkiVCD}_E2tYl{%nT^TnE?pmQ%RCM zC+*Xa`by;Bawq6hs*W}kQ`DS&fctQU_@v;7BG@}JeovDRdn6qnj$f^gXvSN2l!5@o zlPSA$z405Age_q0pN>?>0FrI-drLU|7i0J%7~5b(WKxRabUk4KVnrO|8Hvv4DZ<1e zDclf_fzLXO_#TGR$Mt+_rBS|dB;&AVBCQ8|36i5#$1yiwJcNVo?(Pmva%U_*o=l&S zto4&8pOyxzT=+|3awf$v@~UspE^A+5fgI8SQYpZfyV0~(iF zVcV9h_!fXBIn=4J@H~No$Ce^XSOuI{f0ioNB!H)|-lsPB^~E~1NmoEI8yE!)KYDo4 zZARM-WNI$FYC%+y4RkcvIr|{Im3qR#g?)+mJB{qS?tD)&SUv%Z6g1iP8{=vxphufv z!q$0S!j9@3DX-Dd4s<|Or({TGrOqc^?)G6g{LDg|S~;bD`*X$>GPTPn=9ufZeS>fB zybmSe*}0N8ENrUO<~q_6bskmgPoj2Z7xg->sYv_z@bgcbTDxWal^^0}XCG8A+ELD~ zigZjK>GU60jO>B0H8Z{3=;7zeyWzk* zOYt;lEoE~{b;>g0%Q(ju)Zj|=L=Nicfuz-X@xYOX_YbnLi32fZ zUpW{?pb0zg`SmYx3Q-sSY_iY!B}F|zk!1HRP3yft*A$k6;kCwJ?+(=F#)k+g+?udx zh2l(>&x>s@#Tb2z|Dk(KF%_c4tx{7yAsKdF@ER$zfPd4H{j0aamo=MyH4HpFveI7I zX|jI&hQZbdz9^b>m2>aV8{8&tSv~oP8?Jx)t3-kO6wJ6+u>SmwM1i&0sayN!a>O$- zhD8^{OSu^Q<~Ew!&=zK5T~R62$HL6i>e;Y4S(Inrz(W6czg5#^|GVaX>QedW@rs_e z=%UW5<1T>QPQRaK^rG(V&l@h(LJKq>XFYNPYdPZAQL>eVjbc*V{6lNmoi00t3;tkw z@m%>BF6D3Kr%+drg;8?GDTve@0a6Qkn4Ub><3;A`tu&6~F|1K0aiOY>_jxpdzYN3f z^y#{aZdnbE)luzqdFjIC6F*rG>Xtql!xA@5rx~O#; zn;ozDQ}BduWIRoZj$JBV-yfP4>!d&I@)kSl&2zE&m8Wn#CnsJ8I`eQ_-7CG~`glCm zzrD!K_ckJ{kD?47kNE3V5Zprc|8Q>3?cY;a$*;pDH_O-i{jQ8kc*zp=YB3**Xab02 zIvmB=!^$#^0k{lHIOsu-O?2V0>3ls>*dk@G7n3FJpH!Bk{P^p4_Hwhr_M60yEKgFX zwwZbEWx0~1i1W7}GOso_Rh;8#db+~(z>iHOD*9!zw%&bIEuKr_YNzfp+*MiwJ*hDQ zLmD^!AxreQY4EO@ks;Q>2s%0wLmD>n>CGeancIbz!tn}IUp-u&*d^rX#*25;YQ3(F4iR1xa?yiFNN~WA12iv0X2T);*R=|3014D*S1iXU2F7 zpSF-@jKtilk>urg>qd{84Boy-I7^Vqphr(r1LvgaRMHb%yy>MbyUUeXq*>E5xj}mb z3uDohqL zg~rF3-2XcE|8@)RQ#^>JWUeHJd%?1T+y^38jN$;yt0Ws1WgKsGI+kBb+xfwF;BgNe zi8R1DUO}Vmda|i&32k;p_4T5)b_wD>-9dsq0j(etn+0{B>}}Wfw+^-LS$)q?{kHnh9~i2wV~#fjtAM7MCQC;lsBkW3xfM(0(QI3 z9o8Q<2RdE8cBuCgSLM&%b6SR`u~)irnzU0OwUB;wIckoIo6T%H;c#dc;#@>^(8TBQ zT=(cDBm8ZwG;7qRTn`6FUv0*|_^LIfiJ{6Qf|0vE!y7l4M8P-QR~zrQIJhp-`^gXv z>ZY5>BeHe+wFmK5>v66n4HqusC)XL+c7*I;TZmBVUD?H26>m083@q@Br5U3MQsOwU zwYiqy{ZgShef>?16IH9oR%EJ%hKP+w4E=dGdj2o`n({o-ug=k?p0mX9uuInp>69wn zXg0Vr{F(_pPCBe}HYtweX@*v8gN{zIU^6|BO^(neDpsb5pW|}5vYrEU$vcK1dnuKh0aIr>} zQdP#ij=_yOx>%$rk@bltU~=6^XP?tRyWiR%VlVjt%7z7=YVi`#j^vds+)&T%q0E8E zByZHTuKD1dD%3G`39$5xg(C;#FTSjUg>Z6*0C2pACtofrVy6}1pRLMY%Yc=YNAU%n zVuv{oi`WaDt-57SOf1O8!OSXQ&2#vWm)xSF8_w8}Ec$+jUDalQg;V9dzRJq%e%?$oSpD^r0ZTC^-Wdr!-39NkwRU#Gf)>)6t-zPc}En~9dP`+@KQ6v6U(Ak zG)8^L+rKeMEMnUmdXpMh-dbINMcGvYLYawegud+`l% z(1V$H8!taLJ|2P)ZD-RY$s9yFJ`!liCN7EcB&-H<+R}kg* zjTjooEf!z?@{@n~)z6!Zz{EdA+Nk;OT^Di8zjRaT!Zxm*(HhX0pa3>E<2A(Ghf_UV zg%TP8XJ-jAfG4?x!36;-!%Z6@}VO!Op-J5^DN4YAn8{~SV%1nT- zbF#ff&B8!vg*sgIdE+z4F1GG_@0qy;_>Rza6xC9-#%VzAT$l+2k zC2(1tj(y{!@Orn<%+VF!5jmd65}jALr#~uT#w+2a?lS-?8F=!APdjcHfMQ3FX6`vn zw1S#p%9HSMCD5&42~ydwLrk767riAaVpLZ1z2$}Y$%E-oKrQOU)~)buuhhro)l>+F1L|;eRITLXU@=Hw!iT5RY0<*WAFZ4L=k~do;$Qj~&C9b71p1DaOvGnRmKAjmxMfZjt53+$wImsgM7mmK zL+gW`m}fDbdaN1$wBi>0yzXXTbH_A0@5Oo>ja=);=G~VTpF28ze%>lH;Mm2YB*nO1 z;>RH1&(kX_BxNHE#bQ?eHAWK_eVGV1X>)8>CZ>boS*fc|xxvQRztQRKKTFielvLAw zFup28dSJ^+wXu1b4~s8kUgBLURukWLy-M|gi8K{op#hie1(;ke((QQseR7#%Z|V)1 z++%e1TIVgL7`xhQv+2N`5ma#|i!?8;Qwm~sV}zhG5vEk@u^W6j~23RMxM-L)|3_Ngd+OK&~vsyeruM4t_EYE=m zu%CzNAZ0IsTc#PB0JhlG2!vHbebD7CGD+Hb-{cXXUlz`bTC&lpJ^E26A0lE3V9#uH z^TVL&Er;>9tLi3ZW%KFxTsFcEZ&)irhht~I?x#D{y#UYgAq+MdYJ_OrmO`kZ*(eo% zWEB^JETwKqr%P}LIVg3yzFo`KJzju5@388mJJH{?Pm&IO1QeV@mtVaVH>7Lk#h|j9 zTqAJD)Vhf0DZK=-5&}@7!_^`|Ggm8-tMe8>RiI{l1VQqY_xWQ;SIAg zm*g`C!?Mhg?)VEM!s6rcTx!K!p3k5B0#KtWAn3IK3?$U3y(a#OaU9LZ`@V%8LeGJY zA2yC{=5Qy6yny20!>d&`AG>bwkJ!^+=le`jHO0uGRq0sd*aQY0jd+v2ny%9onEte%|YogrDm`Yqod?|h!AR{Grrck^qW(=>}De)APWFq(VI zTf68Ag_a6zTAZsH9fDpDQQ{oPtdF9ON8z?&k7R3BOb|iX_5@cG#b$Vh$aETq^T0jV zgRqAd#$Ber%&zcnY877EdKa$L3SD{{ZQA)~ZwLfM!VS7|h@z%n@@U4eojb-hR;Eqx z{*2Ww_ulGu%a(w99>!wm%dKgp^sF#%TbZ8^tMPfK zID|W?A9XL;ja~SF>Z7ePS;6aMkNqC4w(C%$4ov&{cu$M#qLhK`~)sBNO5sy>ZPjUNju; zQu2VI)3@~RpJCYl`-t!GGI2}gp96osK5n>f%|ot53vF@^&L6waiEAhVbI1i1G5JDT zYO{08%AW5{!chR~E)BEn>8uUki|S)%IL(@`Kb{PMh8netI$_C%?x>HrYV9qAweNyi z(gD1G#{->WPS9p&sk#&~At`{K*St zo>Jq~tS+6e4Og|zN~bjz4_wm%zw8o~zj@^XGaND_>`zi#7`ZFyxP4W1j}UEOdmcL$ zG2n9ayT8gd4ds2EWdPvCgEkYfO(Txi*URrGOo&Xw<|ps5hDO@>OHjK~yk5$VTE^^+ z9YpI$Hs31lj@LeGGI-LOI``4TV>;Sj-JD`p6x?9JW!CXk#S;$a`EH~Q)KNxVVOY5> z;zj?Qj(fjZc)x15(gJ)2U);dZ({(XJjZ;@q7P~?JDKBe8MqiP~&@llV{37%QyZVv0 zxLIAhJgBY|<7^ZHrEdb0A$b9syN_X>qU|p|tm;cBGf2XN&ce9p1DU*b1%#g3?}F0u z;pbtb3$}*DdDlsDU6XRX=Y^ZS9(NBStQAu=M4|=Q)Zzx?=5$7K1CAciw&PP=@NXVZ zT6$8U6VeP*3v4^Mr??S_bkPK!yxbGVUenuWSXbbEUhn*KOCUyF_51yTthgq@Gj3lS zdT@#{uYXJ$YbL}}|q<1el?#(kl z17@?0NU=d4#nG*FRj6BG&95c_RM>3iM|}_?P&$VOJBgRg%hzGF33TE=*=y2&`Lw$nTK)j!6a_5KQYcl&K13T5v@z=NUcz%X`*s8zg z48^K?l5*A5oED41@(fwpg+!s07SzpS?{R(Olz^M&8y_{Ee(uiVc~H})OD9Hvy_A63 zPvAnqo*bAgRgN6Z6c0HrQn%cuJ(EV2>&V$lEi%MkwSK24vGSx&-02WdwQbc8FKf;- zRm`M@-F?P%Ss0qVK!J&7n?9{HTlze+84`s;_WqhRt;lAQ%f-(cfxmaQG?UX zIG9X?-6iOM_2X@6tjOrE%0TvtN!fQ!eF zp3c@2pT4v>;F`?ea5f3lc{JSynG+>hONO?))RoEV@7V(87`l`8qn4j6RFxsn1Vx(d zr=Cv6PI*OXE&(mc#H^c8r2ucv%rYj)<>xnO@pNCIf_uppbLU&T)BAzT-6U~hv|VcC ztpt((4P5vWa<2J3e{22^kfH4@GEU7*aOE7|VU>5TjgC=*FED%^fxn2#*8!eo82+JG zwo@nR)J-a~^Goy70Wk0VCnjc0wqt4YNoNQ$P z6Qn#>etQ4>I9B$LGnil=0{Fm66TN!tM-a5(kNeHg1i?q{C&!A<0Cs3FOlEi>JD=}_ z27lIN$w0LFqWc&XxY@S%rLc3GJb)4~-VvD~2+F*cdN^!x*jzou z$ZijR>Yx&%%0O?yE6y;uP$>>m^wc(B4`MS5)##wVVulZJ3AQ-L#Fv_L7B;5A1a+k> z1o$~v)cehH0N|{;4oy-uEhn$Tn$!tcS)cS3pWHioaUPtmw7}Ys7g2dauNcGlJG16nKk$7KF;9Sa`!Ku?26V zS;@bEXgjN`u9QjOY!II0D}m16giZ?seBafC+4ep{#|lL#<^Zk|GAqeHqAd8v@qE{t zKS{90zT;wWPcD?Zwx%yK2$l2q?v7FL{#69B{#&6s5){7gg0|SXKYwq1=~}yj{0pYg zCF1J6ydbA3`UQVy$jG)WE_c4&WnI>HALSkx-5C{q^S9|Fpl?g?M3>f4KG2WY7~N~+ zUm$X+{I0Wd8|*Xj0!NG2)D9|EomUTwT@RBCBQ(yzEs4ywOVw@Vdd_!nvYRIgiq^7^ z!?v&6fHh*~t=@09K&_&VBcY*uCsnx~VBxq^i067VNez3=-qqtc7JG11_5c>kF2CRc zlLn%IWi^8oJw5CTSxA>%W@B zH1wBayd0axHddTQ%~0WnmpI=F(WfnHrL@si(C1}prA>{reF2AC=!`k0(tY7O_Imci zA+7^o7I80Wj(Q9q^^ce};o+xY=(qw;esR<=chk3}X@w7PtgRkZ<=Ey=gGPd-G*>zx!9HSqxm#Qoz?gy(hUcY0s zcAp*Zv#7)iPJQM`$uVZZ7{S|tbtO}UKUlll>g7%Q#umOlll4Ri-v}_ z3B)DiTaoTBriibdyOc}d+nLa{3y(ah`DvD-P1{*5pFH{yuX8q4_P;sYLWy#dQ>xU9|9Ct}V@qkW%RaW|T`=$aVE6@L(? z5R0w3;RP==@+9mll?7<=pj`dUjm5XK?!lo)8p7g6v&19R)7TjO-cQ9R>%dvw9Zl%@ z{VbbJ8CD<4kOvUoX7by`(eJm7wJx5_@K?_tZfe4^(ed$WwSnnbc*2`FT=%(#>DFLQ z>xVAs;)lI@Cei(tdoIA9yoU1=2W-l#!@NpY#*5QW9=&W~G#joLU3KV$%iwJWN4$L1 zx!58d8S0w(N!VzA0TsLYdi2m`44ryu&f6q|yib!>cakrf+4b3$w1^xn+xY7+;m_AxkF< zu2y+Q6~9IGYDPPEqn^02ao~=KYzZYKEfE6Iqkp6bjfBrAd_thM&xW-90@t zb8c0M9_r8|hpB?}mC7)*yU8s;#@_Y+@-wG>A~$ys#0k+t8u9xm#^m3zk={CV;us2> zh4=?>0b9B?532R8Y*N*$Q#(07Tr)Xuu2`vy;O72v9yn$pos4-D2aGg|u?VF22X!SE zI2pM`I(CwtMoI&iO+&uli^|(Y-kpIRO-r9?-^Nlo3fzhKk4+{9ZaCwgMG+rCJ1$UP zVDCl?Lq(|I-u|RQ*7S2#PFW)q9{!(e&Hgn&q!3es1mF*}tWSINj!jW-Hov9`f_8xI z(UbvI;UL(JZ_LS|AD6(2Qsoq*-0-hMVXna!cGQkEw!i1~uwxwY>}${;A59R4FooM5 z!IU;qyaT0E|0`Je?yrE=_fSU2t9HJAM65v4#>00L0q~$*Woo~QMYY%So&9hQc+J;i zZdhWwrJY(2_I|oTSk~~%?`%LDQ&$72imS%M^Kf^s-?efDuI@d}d~lP6w#<$=>>B3n z>s;!S9@Ix;a$+yJUaRl^Sm^aT8O|~uQRq2;R7dTCiXAN1D4RQo8sC;!|nuaSZL#SEQPPxLLCA3&V9t| z5*)7%U5J@JuHC3Y2;Z5g>I3KvLWa^lxEn7oLqP|NzTJL+8V=!?bzq}&|G4fwdn6Zw zdG96Mlk|>~gM~a^)e7*c^>}EX|V!t;0oK)I!3^{A>6>i9qwA4O-h%f1x&> z&MDK%_ebX48DoU=)-d(zS~U=5#J#-GxrqF=X#rG$-FoCxXKcU#8vq?EHB?$x_=o2} zt$B+_b-%${ba$O*(bZ!szGDV01rn@_SOrwwQQpv4Lb89B)(y*?d$S)m1iBvgyIO-J z{3lAwq;ea&WU<*ecnMz2=5GtmRvZHoJ5kEH&F^acJ1e7VK3sKV44OA?#PMsX_KqKVxi#*toTQuomj;3kK2TQt0B$*eo*{%TYM zfgd5m;55C)ex+KHQ;t9en!82~cG_b(YX(}&DcLGh7yE_A$Jc+10bZJFz@qS?$fFFe`T)BX5?*#2g{`!^U(^ zroXa2pU~;ZXeS%6KOid>BMkqn*a(a0%(WrfKfkOr^3Tk zRCtrG=<4MK918&l*dt2i7eYupKC))$XTyy33foWI2hA&BQp?cp zb0>hxzR$mP@-}tr;)CAj!F{+J;ki#NzqZ`MesxjX%&MP0(0(2CbBNKG^(gg^;;QXW zaMzYzSO_EDL=#JXjbM-B0Em3moD7E$V3uIMHDMkCLYCa^%RkJ>&~zO=$FHQSHPnsZ za`zJZvGi+O4EI-`Y_}`!O%PYx58G(M&|16BY&T#OS%>FptDCg-S*B=D%XFW=dOv`; za;^c3VomL_2Mi>;kQn0xq~yy6BF$H$+2(vZ4K*M(QH944+0`42Cu>AzRKS$7k!dvZ zs8zFS;~a2v&EYN^6bKa-al(cP+EolR#7kfECrf_*y!P1Zu%` zvNiD-g`WG>;Wo(3e!}}Zda^wF*kStp7OFew@eWddA?ZjjpRe-(ItEAh^0~I5joJVn zRv3m6_{;4Sky`Og`Jo$1X{D$=i(C00@ z7sL~%KF{{D)x=!j1>q|U*{QYrfwf!Q>M@T;%#{ZxK940m@<042Bu;;qr#-N8NcVd) zjXc!#TD`cen?FcD4#I>eDEFIQK#Zh&I;7>+2bUDGsgU!RwAPUNY>MYU)`E#fJbv=d zK1OTKaBi?5%2g?JxhsqhHK=zs^yH1P!du zU9e-y4J`009N&+MH+bc@u!C^!{!Q<2!l8YqkbZZnKS`gubzSwJ{KVfH?3x#&ZncCF zx;125sfO1qX{rRChhp(dXq-*!k&^uM*g5hddkJz~HOP?EG!5yK>*}HeK~7 z=+*E$s*=w^N;cUsGPi+ai;UQsP2THe5U}=OyPK7aW5xz9A$mT}?^2g;M2GprgqXJv z@xCZ*7mabE9)PbPtPzx1pAOSsn!}hE|Nc~vsKQ?)b|=OmFi0-a0;B@~@nj-QH(2DU zs_fJOy48XJSfLyg^@z}gjQdBqP{}hN$MzqM_lH9ZeElUFALhF0U4n6~0d6omP}t-^ z4tT?N?@hv6sP@7*)SzcXTMcz&c~Hc$S|bWQ?{D3s#OvB>S5Xz%P7+>ymh!jzjtGu;A$x#sGJf3^XPtu^?p{4#@)l0 z35R>sgDE#&^X&zDivR%%?o6Ppd5b!9b=`&pZPymX$Cni>XX9gwDI*o4dUxJQV@93| z8S^fP;iU3PFmlp)d%wICQ*^fQROXnLNL|Z%17QB0#QjX}yVs+sB-Y;F`pWc+)ZgcW z`_E@GkCMFn^fZPs6PS2oXy@*eO&NdK3`)ffYKxhBlhoB=c2F?B;4f2!3h3Yygq?yj3%8;JT2f@(c!eDC8J+|M zp81PE-y6rN6po@T_iWITJ6{VabLx?yEKeDKhA0-%1ikVSp2JM=uxULuxgiAkpV#xJ zcdM&WA^BB|R)^Im{Xg~9i4AT9W7Wq76Czj8Kp`M}i|3_+96e5eQXQ@6_yt$YM}x#~ zFm}i4;Qj*d7QYL0-Z+S0jvY02MkqkLZmQo)V-BR80V!)nu-7IB%283}fS1u`(U|l=y(`}CTjn_G-bXrq}2D#HBL`hN`hBGn8(d163 zDSwfOiBh4-@acOk!pD*RI2rFoa6YBQI8a3-!w2y zhSY_y-7B%NK_J$Fq-uMh}RIQ?o4{#_PN3dAYe>RVP7zmm=1n=+h{jQ>%a)t^DUV3fgZr)BeR6V-1~1m z??Hcn4;hraec%4jeYyX)8o&VDim!R+a!8L@*#^^B)e1{v?&6j=;2tpu75ALnqB=BE ztgCl}#vPz-uLietJhcZv(mZpB=(g%L2LA~8DBwb&s3g{jC_AJr2k@H2-t3ElLin|e z(W`=^a?qI3pYJlwX^8XX*SyJ7hn`lcSngvtPguWMdWK4&+tbriGY2sM1x z2ab+a^l!5-^SK2g{O{`9VTI5|pA$BJE#sBb^cOiD#3I7|F7U|;(iy|h zdEz|BE!06mR-x`0OM|CQkZj+_`=p^a+h=+P*0j1kz^0=yIvAotK$#Xjij%)y42@zs z)vVqq9q4UF{7UCPA#6^2IF;+=*1D^fLw{>{G;b6gnnqWZT52v z`@>}9m%rM5#X-zrbc2LAXQKTzO(zC@AC+DnkVhq4Uer*$pUNYBZ|3aNjQ#P;cEM4Z zR>SgJkg^cSzC8maq6s2I0Su@Ggf7b=bzzR9Ok^tn+&^M~&^!wi9N=0oi3O29gBwRr zf-kLtodq#G?r-N_qS}6dW(%6j$1=6~4gl4$1DB^k3?_)+(v0Id0!l)ed$ad;N9W2s zhKp5-+X0ykX>tsKF(A`L%M%tij=x*q0eD3hXkL7S#U_mG1FH@PegQ58PWeEfH`t3Z}&{8Y0?-}yc zJjR%F@G%hIpqHe)zlSgf1B*W2-ga|Ji8pla@Bwka1J$X#c(|0KYqdQix^lB1)3$o| z)-_o|{C%$%_8=QanR|CK5=+kWL>p}s8+=xJp0_q>$YjL{@#es+geZ#i)DeKX?12{} z)c&rpV>GNg7hI)!OS)3#TbH|`ZL>5Ji=kI(^{)3h+B3^p*c7H!!FyL|{Pn`33pJ3`2WIRAEw#A~JGWA9hs?kNV~ zS5;qt#oPgm9stzLX@SNL_~#zAFiThhA_Xjo@aiZSz6`-GEvo_Srvu!X^<@&|LqN|Q z43_+6ge3`BtKcY7*aUF&0zK6Rx{p7&6fpYBsfbD%NhSWqRW^eSh-g61YjY_CUNx-g zs$56WrOJO~0d7Db{kH10C`F-@70Ei^E;4y_VBWXpt4;7+|1W3rH|JL~+P z-euoU!(aPQ^7=w}#5Lz=^J%xAb?#iDDt^|_rY=zlu{nuyP()!OjiYfP4YYEtvZ;8B z-7vVzqS!`XLp4!?&&8&Dfb64Bm1@?gLVfr_Kr8~Fu-iOTY&-ohLD*uZy`?524*wqL zQbT#FbnsNm#sV>izfE%ad{*U(M$Fz^TlRI1SsN3Ly-%Rt#^w|%#7*gkg~7c;IU7qF zT{?BjGxfpi#~ou{OBu{F3oPuds8QfU)jFFF{XQH27<4`f!a48$V-l)^_MsYY>}yjP z3ZaPMV1z6{tE}vtr}g5r1##!tH%{TcbpXEQnUt1Vrz4`U)zpDbS@`i^{=U}TI~U@h(Cbl z>Ex%Fz%a%7cy@OT`Qe9$8^C6Dg#!(yRDo2ar((HsM#&Pn9N% zetBI$^<}3zc+w%9V|^@>vKtbm;fQ~NSQLJK5Xb_UtI41?rCK$U$gM~o^4R5+1mG1Y zKRKXb2vD@X3>KfIE!MhCRSsvTM_i2SjIDg73n-hep09JLYQgM-%CUnFgiHwF5Cj5j zXB#BXqsp>NPp{YNJOlSm^VYRfsTwO4#hKL3DzT#VT!{#TlYZlL)%NaUEda&KeP1wV z@&w(09|W#|>uGa)1nbJ*_Oqqjxh8>7Z?h~R{g=j&r6SLoiqj*d^3nO;NTHY0>KRv^ zE2Im_Q`6hjwoI~s8#C~)*vH9rP#?#fKt zBS1eZ2ry_ZvPzO)jkA!*jbcMe1rl^36S^6-lzt)A*o61C=m<31H@qNiTiGkTCFW@@ zE`%AGlbSPlv0QBeVcwGzb}{D{WlrU&-=OD@0QeafACT0}4VeA7g(0oCqN^h`icA6o zgl)PPv7Z>1R^E66RQRknbJYc{qt|uO(~s14=#sRl+kLM2_skIT&cez_kcsK&}3M9e_S#^ zoG#X#>pL%i7e&GU{=G#3Fs^poPCP8TsYhA&agTfbd8!W(XElSj+~~lJ39I7;FX&Y8 zgTDv=g(!1xD6BX~QUh@B?|x06Cp-i#jt%}$ePhgShD!?NYdQF6Ow%MSF_{9%jtp^U zd>%wcWEH-q^!Ed3`*GI?8TJlP$Ir2@+*z89!gOS8N1P`}f1=XLiCC%SQAX+lIuT#o zW?;PVsgd;`jpD$_z3BXb-^J&}JdHEc7K7*ZogY_)E<~*{X_*&_SiNSo8~5*zGi;_97Of-x z8$9jb&ojcEo`op?;`wiOui1GO@zfH`WPM?KGCgDW0w|3U(%q{JJB!jtq`yPDf z^EptMk3NcmHk-J5h60+s0~08AtaSvphZ>hLhxt2;^k}`#!AQd*D3fn3tzX* z<-1WGAkOO)RROd2f_Rege&Pr60v+^(B+sUt?(xg^Q$e`GY0jpD3mg39{hj^QCOne0 zoh}xyNi(BIskRf@Kl^;Uu0`H#GJG>4^HHed-SV^ep0Xif!GIT^9E|{?V#nm4Y+yYc z`|#!G;ISO*?3KY!C<;wtvofy&Hx{$$H+jT(_KDb4#K6=$s{P5mWCq)TW!Qp=AUVE= z8K+GG_o{zX2a@erM~GC{fAT`~@;twM#}m8}N1I72suDQ(=jmI2T|Dk=l)uL3VnB2z zRvTUf63UgPa=F5HYDKjJO)Q+9j|UY5j^W4wa>#QaD9E9g^xkVbhC8*|?}7?ELC!=Y zM9EVS7D^WZtemkomhVF4y08=i$2pU6=jm!Nc&+)ZUHQAGCyP?qC{3{-*3Bk}jqbbr zhBoOJ({Wh?>iYG}IUJQ!+)-sxA{RQCa0~U><{;5GPFgAnMvr4{Dq9b4%!h}uxj+Yq zvm5x$0IWMkCz}+yr8rDb0-+PB%_-!RH>!Ruj)wpl*srC-NFsA1_F_aQ2)fW?|bOn>#cqeM-$jw^3RkNCoUgR4j==@Tj=IxQc!F}~gWb-0sX5^82a zvFwLQK_Rd^;E8SjiW;yW8g6^_7z38zM`cz<=Pw5$Kb5E#gKxXjXa$@tUT8!ZW$FM< ztO!+}COz`oGKIZjB|P0z1jeH6Ic#!Q1)3jc%Wjnz%Z!Z5LQ8tgVb$hTacg;I^MZoq z-CqVJvadWoa_uNtUfva`j)t#U+0c5ER<~|*j4un`59Y<)K+C=z`+_91(?o;F<8oKQ zM@K-E;KUw{dw@z3+YGR*-Z+qFnP3JeRA?&@oMkgx_(WE`1KeP4c~y5fQ}Rr{TKd1o7h`y93b6lM9RB7nQdx38S^U+k z|7j#|5uqPaY;q&O;n82V5Qf+kEQ7yb1Rl^@4zIv!)B8_d|9oeX2ClaPk&zK2f$Q|Faeiu<^#3E>6e?KG3U=Dv^klUW0t#cm2)O9 zYhHQ>^4SuN$pe0Z-n`VDy_mrlDl01fTtNyLa3r6OHRm-^!hY>6DJ$9mx;hIu%ge7x zT+F*(rKB1CQ(v15W3s;~0VjUtoOMyMgT9=9J8AhGeXTn=PUTbY2`{;`S|pC3nm8jw zo!C}*HTHVggNr0Q2?Z}?QA$EaNqU`gQZEP<*Advd)C?+=v$Ewgo)y|E_U&-4g|cO( zkBG=P{%Ze2QgIo$bR(xwklY|W&_7uOJ&-L2yDf zkNNf z2@ffVwYwqzBPWh%qA9)qh5Py=VhuSdpx7jiHd?!FEPc43E)2ut{^FSJYgRqU1ES@( z;Z6WjMO~)2sn?u;X2?)383s3AO#*XCMDsG{pmRr#DoHy9$U5w~k z;xfVN^b!`sCGe~vCi7Iv2_nDWqYobGw}+B8NAE=d8wQlQ#$+=e!TO-=W**o$fTK7h^WL81-=~_0h&6BYk zNIfn-J&)Ek_DcxH2}`<1%=)O9tBYM&-LDZ)p^ z6Zl{{3BP@e4?jaf9c`4sv>*~xN$FmADed(foGCVi7Rs0dmJMI+qY@0Mpq0zOPpc$P zy;EClHBX8rX@e83(d|EEtwVzP3o z7{+}=NxOBx=id#>bI>W%C+u}R=Hi&$gI|b^I3t3uw|<27QF+TUFi@#l3k zEOB_i|I6s4aY6)I$#tsEvC)42qL)M5LAkeAG}AzPWzd34@Pfgc=Xo@s_C5I6Qne&D z2{v(q0){^Yl;%Y4AVxi|5vCHkPl)5JzXHEuCYyCmtX-D64-oq?^)fnRIT%Nr>-tqu zoNNns&mGW(7!CxB0q#S0z(%>$8jT?iOwgU-R?!?NRMU3Pz_yiL5#KoRIZW_x@L7}JXJg>@D8l~1VO6UHbE46oToh?zwe1ZU;<%b97Sa8{=trW|mmRF7Dq)7zRfd z<<|{Nhg4gGa&Q-xN>9b#3A5(oEgp17y$CMSPmo{DS~QfnL*xXp+9}g2JySnB@%5#A z&PHmkQYiuY1ptONgAuGkWWkEH^7VwTz=ptXz8H~&5$VT<;RjD{tu@Dv6p$@?G_s?%|0m|$j~qHx^-)U1$ic7_ zS?0cpHea)}lV0jx$8Zv6mK7A)*K%2*glZNwO2})>EmwG&h`mPmd&_8P__@_GZPrX- zv4FhYL<4v5N<)!{hI%CcpgFKd{f`S_5uSOQ0V~JHBmnoAula&0MIK1KB>4HT-6%P# zUcrs<&i9me9tkFqTscy|0WqdxCrbgE^eY_R1>o@bE7PfRMWYTB+T?|rKMWEIP>&4~ zF#pCNLG-&pg56>ClsHwfN6fvYR}NP%4Mc%co-R6V6i}w_AzRI_(mz_w8!=roD>Y5} zQN{G_8_N4wGnS4bjT}WQpqEskc0Z-gXCMMq8H)VSH(-{Z^n=?%&!~l>Z2btcNR*5V zD-{G}k9^=H25}g3M8gB99i`IefqnF?D0c>2sf!>^IofhssGug3lXA2|?nlw{BTvRG zNyT3HRs2KZ42`89Ff;P`p&VlCSc+V;>Q)jEsv>J;Ow}MOoR3W<%*Cej2!N!w;(>t$ zpj*r4DbRd}o0|p^{7YSX zQ zDjJa*6J&$D-%pakPTP-&0zoFSuVlhy9rU_Cdry-m=#G^(w6@<--BcFTf-C6!#bCfl z8C{AeFpO0mgws5D%-Y zi#@yNnoUU?==*i#NG8!7Ff=ytZsEyig2RA)dpTkE@F4!h>{UA~n4hC%2hoXY2h}MF z%ZiRqBp-GK*8pg1c*)%_UOj-$k3V*rNJQ7O8-JPV1FfceoLpMuHyuBIMYkCWj>|aa zib9S_6=|iH!N%lkU!KnQ*6rn(hFKkD?<5DB`fPLVet0Ulc>?1=J+Aa*>OAMqy!lBg zKzP4<+Slr=1p9pkiBNcC&FwTQShKGNsc;1VH8R5Ui}@NZ6juUsJyo8-{t>MWlL*GIQ&TWbf7T9AHU;l#4@kZ#h2j zV!RhguxZgD^~wkU1rNDk2^T^0UPaQr(5jHMf6FZbF%dDk%zQpgLp27C=cjpZE+hX~-VAn3?XzLEK z$CJyd%QR{^D2C!wV3dR9wa_qArWaLowvd2}Ew&flMwU$g=lbl_$u~%#h7|=2ql$he z$e@*;9>>@}YM0-}AHN8!sY!`|ta#)+oaf=69Rsby!6fx}<&o18i{ZeN$Mm;|`M z+N85*H@3=asVSBt!WRyjInbC-(FTEGmB=8~bg)8u=WNHA0@w9B;$>C#)MTX{Yw?&@F57+$^M-)f3FM zA5z6F82AnX{eE!#Bb6SvoH|f(TWK&+^)^Cv=KbTuB!Bffy`oyR!CHoL8>+5UdJd(# zyPcPjLu8fsEsB$o@UkOcyaECb8lEgxOnM8$lz^u!Ab9tp_l!j%o=@lsY()f63kJ6r znE`EvhKrKeWTLN)FcPqNMPGw?dfwhN9=2SklLfU9K7l%^;Lm&KiJ7?-4^Q=!9g@C+ zEIdozlwz2RygCO_V4um9hbgrE29a3w$&@}v$zwv}me&kh(L-QGEKZMEL zSyDh(Cbpd^ciT$dsU2GK?sqj~dp{ugdELbA@$%&)yjdhhS7_2Z5|GwW(P7ex_kXGLd<+LC!UBrB z6(r;%IuY{S{ezIteY+Ah?AbXxdEle-uT49f_+>cw`44)s_U%AR4NX0*2LE>InR*m` z^cU@D=S#B}w%0r!p%afGt82a%6<-q{mxqP@3&!GPHiiyhyFe`|Gniv`(9cXB%v;@Msg3f+KL;`0WLVw3dv`x=QJo{WQ>s-Z{43{9PdcjxL(ZZoa+o z@RzAK^3aW$mWut+q#S2fcBEr#t2gVYfO8{*jALNRsb0oZ>`xsCFsZ`#mI~$O_`5a=)zLcJmz+IRA4@^C=iE~ChVqi?TJy_XVME!j|;wJMQ z6=#Hny5;w{l|2gX+yi*$R?OfToqxz=e+9xpS+N0VuT7*4vMSKWp z#fV$m#4rA4kOl_XGMl9|f$C*=#w4&Nn+p?9yt4YoOTTLW>#kHT79;CsBhZH)32uX8 z67B+Y(m=aO=Bdq>i>zXK9$)VU%hjIq+A0^>djn$-V0Nu7@WU7+1v!1W(jn>z#u7h} zTqb_hQb5|%CtAo7;D;L7@CA)y9QWop1s?v#V6&9o2`1~vPS3hQ!C33 zmy^mkl*c?=Gv1{20TVA@yIb|lbXA5Ry5ykk@^okXE81SSR zy!mt(_gp=$8OoVH5Lr4 zbIp&NFVVhyGuz=Pvw7~Hpe2A&>0Uz*&S(_(7HG;84Z-I|1kJT7#Fu8^u9u8tVmb2l z?G zk*ei4#XPZ$4M4ihrBVz9Z1WdVLSEV3NWOzelEVv=C@Hk#XQ$A zhkgfl1Fu+Ik*-JHC#~bf`CF*DipOQL8F(+9t8X5H<{;JNv;EKuj)kO8^n3RSR{Qu8 z2^+c_6ds2m9n31wpp(=khB&{r8x)?9gW1rrgW1w8JmymSkN)wc=#pbuJD0N{EyH%@ z_4!HawcM@~Ed$~Iq?W-q`@?_G#taY_0HbW;9x~lpe|Z&nT>k!X==p~=_MoicI6STS z5u^LvV+!uA+lYM_?^f|>7tOfx-H*MngEU>Z5HapK~`PHV&LzqPxcI38vCcImZ7L>A~k4s$UKzqKt9$~xgi6V z&)#|6C|3zyFmZ8@(L}d`_^`_Y{QY4m)tAEPZBGofD*rbaYIR>uyYv=vJNP*OZLSkq zCZUg}x7qHUq0f@yE{5Co1pjT_+gLApZT})t3~h}x*BS|Huh8UQx;2=16no*hzRCKn z(ULcyZNqsWnhKs@XY5rB$#4F|OEVLkj6sQ%VB#sR_n_gV16la2P*5%u+lzgPYV?(U8GfeU<>;+(>y?}^ zK8*odIUX@UJ_r=bii!b5Qiwfd=jpCnRn_`~J#=j0RPz!m+tldXIvvK&Cuh_+$YspQ zze3vn3bOwR5I;bION=}R7X5o4E`4db@aezllWf8NmR?ZlAPI&HnE9w)A_>G@)P_`V)XO4RJcj)~}{& zqo94$t%4jZu7C;X>;FVo>cU_?DDc!u8)!xnGe^V#x;Y-suM~p)aRHj6PLvlBI>BU>;_gALWdwV1J;Vb-bmq5WMN!WCfPpQ6i>5p5Et-jYC_j)8RA`nu1gaPV^|G0Ic6| z4phs4-Lihb0w~mA;OO};`N(knb3QWEw~Ke?=Zum&aHR*ou?I?kj|Apm-*o54QS*Ys z?6Ym5yuc^Bx~+8(z4q1%Sg*C4fbR2w1t=rbxl7L0%K}r+7?>35Ih+{?r}dR_xD#R3 zOVsH(nqvHnNe__ys#>40LHc1%a`m@>8EAshEWb$S-uL`Ec%?=!fL*I_pO*b?jZ5V4 zAonDP()2;>Om~S3!)|CF$jc8aby|~c7O;9O6iyRN3nHhXi*LGzi|5YYg5e;6gg?BPUSYaH8<0?!N~QMKFb?R zaXNYiEt!8z>;se2o;!jf&oa2T&fzuLh{HyL_`{SX*m?+#`TG=4E&3A=mu4V-f)$-a zriRVc{<9>|-7nmBSQvgkLTcLn!`!}6-fSLwMr7dbKF)p$S3r(QDf531@gnL_ z@?QQ9-UTOeqaG5oFQx9&8P4z})mmcPBz)j2P;HP7)vn7Bd8?hi6@!Wt$yXq9Qo^>P zE9cjHQ2iWvZ-ROtF}+5yK_UfJaZ->C?AVe;kA5}Gsmek?L=zg&I7QsQ=T-w!X;bv9 z?*Q#)6ho+yd%mOb+f9gRhCBQ20lrY+{nN*I5Rcz69t1$zCh{vKa7WV_`i3iskCUs% zhpTGX-B^fcUKByz@mC=4_+YC4+B<&e_6(2>*75X3Vh_oLU`JH4=l7dv#ZEY zI^W!H)sITSQxfq8)(@8|AeWfC3?MYmUm=O6g7PF`&h1wpDomi-A4}IwageCQ2ZS=1 z#AwZfhP0Uz66OLmV2v1vN&O7$zV=m$96%=mG{$59cJ`Wg#@xiZ46Cv)?^V0VYd zGUPP;KQFKoA&1O7aw4Xp6PHR!TXbcW9W_;dXkuQ3h+dl8JXL%W4Sc2|1(%SjI?X24hK( z>u-HEXy9}(j~Yg~`n4)U*Ps3_zC+Sf>f5@B@b;#T69fplM&*whdlc*sDTikrKAhX- z6kZBz`5NEP$GLI3*-hwHvhzVg?QXkfp(7Pc>47cJ=N1n9NYN}$mQp{B!*)jcP5%70vWAW?rg=9hOdrU07TETzxXu=__Bf| z7u=0HOq~K9>>;`mV2K^P&#w`6q&PNiTOj>5FmeFq*ir3n6K~syz0Is(7;=b0&^ z;(s|aO^`^r{yTuT5fF@S{JE0i9)r?r&H-z=HcpDK)`-o>quwYEX2p=ejg7^*ENQ8e zo>Zsa7TC?)6kukdhPSm!Hkte+=4ubH3e-+M*0&y+Q-4lvKx_Eox+ z-s^J!GHoYTccqQHH@pJyTE>>;f+3i=%qAfN`1c3}qU4_@&}Xwz%rQUYmoeiNG2S38AEI zQCPRlQ3Tga{h4g^o$T{eZ-GB80#w=)n>`h$^s)}t6| zo3s@i3<4^YKl3^RcLm&Ml)!5gvV#H6V`Q)8@>@$UfF#D({zW?^c-(P}24c(`tSkM? zbliq3!?s+vyGQ<*MyYm_X%pD5K&DJoS-nz&fT!%J5+jHng>j536}+DSE7Qxhk8DLL z!I3f#gtoa75HIlF>#Mj4Y_|*PkH}*D{J>pmQLT%2MM35q#|QqwKVlIH<;wgH%DsFH z<&s2S@U&n}rw6yH@D~%Hr9s2_77|^x`{yoYc>2?S0u$ljuXS1r0cE6`VtYqc#w#wi zvju?(8(n%90!FJp44D{^hD?=TW{8H@q8FA*q}HKc*-ZAF&_TpP=_h7lEtqeS&u6-f zlD|1wohe!Bf53oyP-EJ)Tf_nro_gPs_?)G(TD=E5^nW)qSFYP=-c!S!H6&-2qfO2zL)#$L%@|?PeL;*eL(h%E!wGedp`cQ7)-6C0vvV^ zFh19FPZ*=hmEa5_h0)`lb#epuSG|Z|yxOC{A>``a5`C=z?DQYR`6zBs5uGNU4*u+5 z@*1!KhNR1kH3XFDT@=B=)Sd_^$UpD2Vg%QK03Ol}@*b0_%jU)UGJl+kf#jF_H*H zeZIQr`DpC2B_PV<%wIR>DF9o4G#kRVA;R&W%Ud`RH4rm3*Yufr|AoodKXo0Q$&`}J zgHbbwb!}OblWLha<*zZ{t$C@Xf*%L6bt2??Ia1Uv@TO-!**WorsO0H`;@V1ZMI|r! zuo}ooQLr#VaU_T2ByYkkYouwQbn2#1R_X^Zq#2;bV(#JH|%v)086*?=%MT^ zr6NJ|=9RgYCvy;qj=CdUj@}Mk^6c-?US;qOw%vKL6rfj5J zCh?H&QrmO%e1N(#G552oO-7k`_}mWkk;j%6>fk5fDUMTnjoV1v1L{9jB3_&gABqA+ z$PACoG^3(!#r`pW*B}*KE`wEf!rz@nRK_^E^6{6V{S z!+sDx+d1e3wW;5IrhI>Q$M29UO8PHbJ19k zol8E=dCtrJcICQhOuBooWCOsBAgwXB5}pj)u!U{{QGl2~&4DedsukSQU~3oTkPlk* zJ#-1{gfYrIiCzvP0unWc&~YO@tSv?Uelys6*)@cf+^*ufWOnpbBV^|69l@Cc3ihyMqZ9QMl*;C z*)=?Wn%^z^k^ls)&)_y1szvsPUh!4|Dhr_dfw9eQ)c;%Ul8zI8~43I?cB z$N}mUx}jVKqZ`u>#Ovk$2fW^VU+IjRrUp!v=X4u~4BHXP^-?%x%FlheCcfs}yCD)y z&j`4^9v_lIbnqT_$Ho-;r#pMS%p_DHhi=9NJ9iGFy0jE>p%L3oZmip;L=#r@hhfRz z5Kq83mH&LNBjU1)EkF2*mlidai9q2*9uZd0ZTd{4Nmw}LRYRvd>AvN|H=DlcKL|QEi-T)+O?ms1J$L%WIM0h9?t~v2|U8!R9uk~qjvo^3N zvf=PgkfCPX1POs+^wd`1LsEa79RMxCB^qxt!zR@ zWvht}TiQ0)XQc~3_3|d8z39{pW~gHodB*DZ8QH2DNyo?96@q^ij8C6_AD=oD=o7gw z^3;g~%26fq^7W@F*R3ESTkt5s-i4;)RyB?G|C6mM^YpOF;mfqQ&r9(3SZU4bd5Lwd zl6Xo(_QK-Nn7xS7QLakP)Uti+Y#koBUj*)LVOeNo zY!kkgAO7ndI6qbvI%sRw#IC8_q)3^7mNMQ`OVb4iNf-0Sfy8@`8Zz1=?UogB%Ds%C za7nOEHl#x~gmb|qD`$L}CRw=T%r;eRZ;Jb*4HHxYa}{W4`INPaTn}X62DT-#BJ}*$ zLcA-E-vui`t=2<={b#k>KO!C-m%YCbk1CB$R3g&f-&*~<76z$<8{Lk57MQ9Pga?@jl=MFoV{bqC4d+&I=Lm0iYZ5E`3})PP8-^1n0j= z>t*5($_(}*b4&y?JWwxJ?7c=SSB z`F8)kZQHS_?vNLRx_KYnKtkN1WBh}^Q3R~9L6X$t%B@$o-4LAQn>XHyP#w5|bfg0j zk8D_<=8xa=Axp7VZqQmJmOj&i0@2;5W-rl$DK=mbsf2VUTLFxydj8U@M?~ z>tYQl@Xj{aUi&UBojK(Po~rvImtx6dw`Dhe7{O_noyBc%$u9)(I*U}hzrq|s2N<3f zmHXpD&yS{e<1IG9ZxGV2@mrVI6t4&ZTrxjO!~C#)yr{w5{Vn6BYz)67W;XJEH*dzH zq`fNXrEEGq3v#H?M&OAZXdIb{2~vY4M_w+^k_L>FOmpu7|8G=+P4wgB2?{REbN8K3^HAOgdiAJbF?G(?JE zI>)ojVaTVYRG8`IdE0GAKI=_*gLs1RWQ(EZ1<-|!VyQ_W2BUzz0)skSif+QC){C3? z)zuj79PPRsZJb?Aq!B}hnj=LLXb*Kzb5EI!-x&2$Af323FKQjD+l1i5YkE94p(2@E zm5=o15;^t>gYNHhim-zB_B@OIU~DM5kqADAv?W*mw{Z|7wq?okC1yZx=9DJECazENE z9n@NuKC)U*+q#+fbBN0RE72$^2yOFe6>C;K6^T#bMG>um9COVSu7N1`%1the`@HE=H^!NK z7I)5gLTh-B)FI8%Wp(bbpFV)*tZVFD? z&xiz=g8Huqv0)Dc4_3}+C0+=JaNny-Ad|MXoA5-9L@2(g01i)JmZ$)4Yo`wu`jE&N zCq!{cLI3cme9NW1g#T(>ejSaN|7tXqb(Q04s}eUcJuE$v>K&i|HoD`^M#MhKtJ85b zr#{r*$~{|OPj`u)zG3;vOP|OG-aZtpU3XihSP7Od0iQCI0DI5bF2hp) zbhC>DC)j5f=b6_fTZ&4gExBv+C7$8$(suUlh$M96H$YQcj5NW{2B#4)8DMlq$I+* zZp)4>TKZ^B7zOKOE#%cl50=KlYtQHLhZ@^=`88H83zm(3B>}g0+P)>f)blY6ZPW<2 zXG?wELb7S?@w5AZ@To2-!|^$%tj7ax)G)Q>1F(8l~+9{lN#!#$jBjQ5>> zhi4zVdXV|ra?NxcmW{GrxzLsCD6#jgo{w0^4>hs0Ex}*!Das$W(9@w8>PZa_a1+I8yCuOme(`7j4|iP zD9g^m=tkCz0!D>cR8|dR5mBJ9BZFzu6r4h&`gW6Lz@t){7A)9KM#vrOId_AuH%12j z&Z(4T$mUg(y*>fuRDRT6*TiL)cl=xR3B;wpv4?-h0#YtoV}k!it_j^|JVaqcNddmO z*ZD2J#jVQD(sJ;>Zb!IRSbKsWcAr9i=B?sfbNqBynDyRT&~RaqvbeQb?{LCJ9;&%# zB|El@9umJlD%pEocn+5~yy_hIEwP~1d(TltR5)MmPS-kDpsY!W_2c~d$EQaq4W&QV z^fhol;(CQEY`Q%bR{8UvUkdF&7xO?jy8mf_&A$aaAnO4^a?SfYe$2&; zWjt-G*J64FsP!Gq*!QkA0IRrHc4A|n&W&Dfq!*HkUgKV|o3_Is6mW=kTD$eKJCl$w0o<4B`hc=ov|1*XM_Sn^ zO4NGtSFjJ-)yCc^QP(C!Y+pSe5RZMP%BtGEXR@6|?y7Bb&5L*9;S{^z4JQVC0>`z@ zdoR6-wuMn$G(0U{b2an6a^tv&BCLOhK_4`mK0+{gP6 z2UCnA3E$P_#chB3TA&Q!3HD;-?CZA#ZH%>EHLbwh=tHCRPEYJk2){%WcW3Mxk3s(2 zPTWT`EnPY`gRVX|&5}K0hqO_bj2U-QrOqb&2@Qh!sTnK=LTJY$>AlF0aaa6c%?^AA zZysE+qj4rmuv2=G!&KouWs!TYDWPGiWz2m@a0-r@x|@{O(B>|Hn~`(;E?{!aN!=|p zdBI!Oyn3E^nQT_LHlmM|I==7j&8H)o&_X_jXh{4$`1ypK<3+FhIDC89wzx-t-n8lL ziQd#<%6)g_8@<=)lIjR}2wvo@PloS9CzD!B>~mBehUAxDo710APDxPTKD*Dd;LdtK z==|h(48m zSaIq-PmA$5W_?Tj1^Svd{nrl0RGw?d>_!*^zY_2-=0DX>=od17$$wSB2k6!1U57YI zyui$?JC7v~MZJZem$x^D$t^IdS28+*arH(J-VR1`ioT2vy73ZGGA~;Lfo(WXzl42U zOGm`xqT&xOrF#sS))Mw+-z2J+vi+;V@4D7RwqafVQs?D7wG74guG*MqjD$Up4P>+1 z`$_!;PC1yEj+1cQcBNK`dXhiy&f52BqrRc6lDU?YV)~q7E;KTgwC5WE;NJaLH#XFJ zOkQ&a^foWL#rAEfPr@wUD3t4ksqX{hzfRQCx|QSga91os>q_jIeGjL$H+$4Csdh%Z z?UI=+&;&F`t7|f~zbaY;<$^@ny&$fgvmw|vIJX|bHIz*J`Ohiv<%pkM{m=7r@)a@< zx}Ed&#@%aL+l(BQlet2&y#4=uCP+P^P#sCJ!+S^xbcsX;L(x5mx1;EX<`tC>SJ%f=dEtw6j60uI&}*hB?fl z-zw|8ZlV@-m%~Uet~+>KZ7WS{9*S2Af4)fJIrmR{TNf9zUuC~+PL+2F9X0MjY^nQT zj#f|+L6H~iuBbWJ1Z%Gri6b}z?uLZ&Y7rZ{!|X)w*^dY&@Lj)o&pwS>AL_io{B#b) z1-1Ox=!nY3qc?(O?q)s|$-SHH<4I5xnzzZUkmie-2cpW0qMTQP+Riima;C3Ih(k7t|q5W7__ zmZYx%?IKHsY3Gi6ZKz3+{i>UtZH3QKtu@}dzkuHl6c38}Ud2q+;cV}J|I06x&EY-D z#aoU0#6DjnU7gc)cAR3K1-232rG?Tw&y`TE;EIndl(h{z@!O2a53z1yCD7s9y`)Gq ziuRU$16of(ZuDwcDc1bO8rDs#ie1Vz(k#t278G7tX;!x+5EGXGf7eFrqL^&j6uzkF zM=%*>MxkBJbo#nQyC#sQ&3T!%2avf?$Ea&FBPbtRxzt>OjEsT}NO#UeUmIAGprg-a zp$&AtPhUs9Q~K1rmNM^vGQqS>$}&k=O$jYG#M0C>gZAntbjnO>P`$c<>h-GxtSZTADw`5Yb@IrAi2=BAqMaTu0zvuF4#GjHzhY%$*&qP$f}4JbM^dubmF>Jx^586Na;fK_hYtvy0|_SDd_B#r}B!%I=3 zhu{mH9Yhr1Zn(UFzYMOI1bR`ZXbpCNhwC?s-4&S#0O^XWz3&$47>)30s19`}HdoRI z1uYdc0}a1pk(ygYI|R+`90w(O6s{(PyBSkVvgvjGt*-M)kH6?5XP=s%OvCTq z|5Q(>$cO2TRZbbcx4>r;teH8!m)6ku*wk{r)4aqb_)SsWP3W?>3+9*)cY^Ss#5g5; zoEMWm-9XKNKH_W`eIB$wO4K1~nEpqc4!N2!L{%Ki6Iq z(CblF1n&C8sS2uAl)loru%q}w$zkG0Q2vO+FV9gL9{xO9$NZ+Hj!us}$)2vmc`f8z zNbqoOyxe|?ZyoXWBVaFpy2Ln$-ZMDnlPiWLEkDsRcznvK=Wa$^@Y`Xp&Z%IA>~gbj1bI&>vg~?LXxoLVoynN)SPyQnUe&gPS^Aw7CZ_bygyjEW@2$hKT+_Yb zr68daqDVK0h%_iADJ2MsDBUd$Qc{A1N+T_$fQY1YgCN}?-HifLQc~Y_J-`yzto6?9 zJu~~8cYojEA9F0`;dy}jzV7ope|5ITm-gf!o)IUSM|Hpyv|S)wXcvnAavLmVK#1+VJ@M|Xqe^xb;{nb#jjj^JWtRgr?5;;>=mM{lkO z`B@?pe4S(D{SP0d<-@Lgf1EQ8TUBn@s=oTRuf4vP?f5hlNpRoCto!0fzz&HYrEbl2 zGf*tby^JO9Ai*hZ&|I%R_bscxwqo-SCPn#_x67LX;023RCfLL$j=dnG`iK0TJQc80 ziu0U5ju0_th9Zt*ci;7-j+m( zN(^Og=8732cN%eo1=PY3O(!UaAn5PGl7KgIt&DHL<#APujx%FoH#-!Ao8&i@SdCo5 zllc1yLS{H+PcHby)0#eie~QA77(IfffS|T@;T8CCKv86=3cNw9HKYU|de-4#Os%@a^^=A02dE3xm3I5mfejuJ_6T6rKDk}JG!EnLC|N3VGyLc81gf8I0 z^A8P#d`$J1IbLPl9}zvRBgV+ioN4R|kEx%g#cM?A)FYGHOP=Nao3Ze4NL*^Qjg#pG zGlx9pcP0&0#g6A0JQ~?GF(M?vJWzGJMa^i>iiT!5Ggu~^5Z^kG*Sebf_4XZtyuwK; z-j)y%_5Kipg$j{tdQ7VutGUPK0~u&yTQxNmmb7K8g}pdp=k~WvUqHc zT#QxryjS{x6QtnR-?U z5x72dY-p?~=7dL(QD%H`aYCl7`xXCq<=u;F5%ixa*uam^nMKDEDH(_rHL&a+REsG8#H^?(#lmMaMceiI>PJ4r ziFKRM{SmyF_y7)!DSQ)(xzp;O4D|*q{AP47)0`1AmzP*_^Jfc?0?*bmn9RWP5te48 zmGAk*;FNDv^Um*>g+D@ctKpsjKSsg1x*%)IdndglQP6oFsBgiwSk$r>APJU_T0rwd z`3cmNU}oP_d1n+bG0DoO?c6C$#INW8+Io|OiU%&Ry%0So_LcBcfXd!CEVD|RC)LHZ1 zo15YDr<6%g|H#{=vdT3PQM@^MTlqYXKL=e)Zu~*{8?``vtb2q593IVs2Woi%((W0B zeH^9=Nle36PAlyz3yM6p>nVW?H00ZsfxoRvL|H^S&TtwPuXH%Gf2lK(q*i;@kXh^Z zdhXi{G2KUAcnP;Cb2fbEsbo@YSY3&2z;#Xn)vDoj&dcow3Vu(dwIz$oa2ilfjhlPCtmUOhy)@n|(wndTt4v=v;$W7@e=5 zAobvD+vrs1B*3vTfD1x6ZTG=ai%wyWdCE}|(|8u)b9;O&Yx|-AhL5p|2NAG9=5& zsnMQ&C1X8lf-Db5#tCnI5{zV~A3TuVIhP`xKy(77uRqn`xIOyH z%>6cjr@8L0C`ZAupwTPlfR7UfozBMs@az#!(A5}(2os2#23qmp zm9V`s2Ol9J&YvA(pZdULk$S`G%MQJwl7 zPR8gd|NQo^Sxm)pd&m-E^&X)p-Ac2*j?H|2iV-vNJsJz7HZd7}cv`6n`G->^C!;bP zV~OYjK?!z1N$A)z@1v97Yc)Mz&VHF4LzS(c;Cop?cbIZN1 z(gvH&tw=PPhn5J78y0W}`VFpIz5+8OD{dzKWf96jXRa$%q!26>PcYWNHuYB_Xu5BH zZ?el^k*A-HH?99JijJq7?9x>x-3O0Pc0B2`k+bn+|48-d(Jd1lsUg!_$d zLA)bUa6s#94jjgK6uRck2XLOFr~8PI6{Qz78`)qQx(S?t2*U8k_Ki0Y;PjAAqZxUC zBXTC;8P~_(i|Eg0OvU{B;|8PkTyXMvq%A&;BUe4t{rrAV5_V4FUrq}dd_PUm0>IF) zQO~JGcSDDTne(7kos9l3w5tEJ)1y}@(-qo`gMzu!h52ap52f?4gRL;*fdzAib}1vP zD%R1-*71~!V|yVu1*I^JCGv=zBz1ShUvGXezwG$EfJ6)_E?i5Zvv}}GI86icExAR|`krH-QkreRFN_zflod@B7DgYo z+*-~mOIU#*zfp@y?^nWlzD_bLIo)3OwB&=Gv;aM{ek6LkERhNsJGH=s2oFBbKELXn zRf0U>l$Hg@W;KlmS?s%$*$;}VjJi})!IG7g7ul!of+Z^+VV2}e6zUN@nl>*QtuZX4 z4$vBXfvZY$0G|Cf4v+S315}NSScVEYX{7*SJ)d?^qUCuPd?T;|crX1KyKzt?eUQ=+ zAi?N8)E{`6e7T7)0m1R={+7YkdTKP!_6<0lW5DTr5gR84P{SV8IPbU1s@@w*%$lOBW4VmvSCLuH*ErkJ%-`ieJ#hk@N=c z_7QX-`?s~*i8kr_}txt`#~U zU;jI>4v8I3OR2h-u~={4IU$9UVF4GlVyCL{U*0W4l}Rz8?HQD2jFr5tI}8>Ch(jMI z#skO71*twWSJI~~wOym5hTACrp**9g%xdv?#plD8=MV)L&9I6iGW`YNv7?1oarlej zPHySsnf%720f>>SUt(P3=4x(!KQK!I5oDw)$ zFtNd5weiVdWZE?&-w*G*20+$z58783dLGBsI_eGs>*l*XicehoRr5(K**ZN-n4<(6 zu!=QW*vDy)L|aLkBWJ#8k#)pj3QMwMNZmPvW5DB-G$2gB7}OibgH$10-ZsjQ%jc=7 zU)ae(BLpi3J$s<9Sk%5@YOL)IzQOP&XlOIr1>kz* zC7+&o)h5fE@$duvtR2;Y?moPxo>Jy}q0SE?uYD&=10g{*E~NVOKEpiImWJ~IKjqKe zHutCOF!-Xt{-%1xSN)ySsKz!Q_}^egM8BlIS?P!q#!G=k64>29`3;J27q7CFXV|Fcp&M3h2eLKR5p}HG9@@o~X!1c8Bfe zEoLNG$o80TIS78C3JVI{GSeAf>D9ldF`=uIUnibu z4F?>WBXOS}K2cH~YRiJ{cQZjp_(l z(1_006@MVv2VFj(>ci7(z|Paqcf9TelXrutElWDfZ{{}M8TQpqHd2e&05>IJ{g+G{ zA4$tC^F|2?foDh=eb<3#yU$pRZgPU_2p=Gi!*~YCrSSi7LYw348w%B`y2MLWiNp+p~;H= zGmoj%0U-B+Qx-J0IO}*WTJ8ONPAzAcKivffoezVqWX&p8ERYuTzA+Eex1yGtR2^4D z)1F6bw?wKay&q_JO7d%mqizwG`|DR0Dm>sgiD&b@SsS#h+3LRB^95Ex?&9Gx<8={_ zXE^g7Hz)3Lb_5QDikDymzJo-#XQ-7+*3BM4*NPY{67`7zu0!V}*F2z>Wd!xFh6o$d zs!mOKxKu_1ssSToG#!l-Kw_lvi@ICjW+t9SOF^JKaHWdG){_>FSRxey?@NzVw{a00 zRba>Dwk|}?R`CK*1m#{GMe&B32%h7SCp+tF$=t#1C?4&0_aCTSiD>WLaFbN72;Mo( z9sTSsatWZc8T$3A9$g;&Q@p1XiefZ7uK|OmJMQI;VyNk);L+$pmRO4V1qrWe z+FHHXE*!Xhsjgy@b%-yc|61XYN5Q>*~E!MOHvyMA|Uls`1_~ zd79;6nBa`&qmnv^R>tQTCBVto3B(!z{57o~;Ho^H&vW}dEu2cZCgyhh)v+Ar`0^#s z=R74$nO7ccN!_Jp7w-5e!O{L=X(rNvGN zisO3p=2x4K(G6B64no;dl56_CfJ`*==JRA$UcqLWdUAac{N5uPGniK zX{AxByX>m)z<^qqqYDc*fN52bOpqtm>+&ZVSfvZlz+ZO+CfWv3X-MLSO|FbxR0e56 z$IdiE3~DTYh8qfDD$U@96M!vbWEn_{06)4J#j9?lli=?;!^~9wUS)H3^O~5f8~OE| zjR)dvH?0Bk8Z}Tj8r|m(X615!-tKlM?!s~Eyd7|lRf+Qq^wW{9^-qJz)PJI*Z<9y~ z{KoR)ZZ2oK=HL@GJYv>PYVscdqN-Y5Am=?Ru`=a1pkA_MUM=V=RVg8nnSljV| z{}?VlXcMPDaGwCvlH z7qvURAF-~VfzmgYM++dV_P-^48|KRAC+kqV_fz_|8#qwk`|-V=*FYyQVLqA-(M0h7 z->6uHUf>9cZ*XO8Yc3Kxgbv*89}$$$I~xoYWsd}2go}#S9CW)|7Qlg-bkaR@(Mrcb zJih>R!yyQ!1Q{&m^kI#~f-tLGd0k&*+?h-vn{!J(uP79Skesf|J+`!7L$|F7!m?hL zj|beU)94^hXvGT;$-x*4mMGxhO443$%kr*yH-uW+;@|R68eEJFVW2kJt6R{S$1*^n zB|fpn z7)hXBJ{>8>QGYjnhZKYwU?3i;no)gPp#L3>%V zuua@IK>?b)pGp9z@{ADxJ5xMm34pHc_23*hYZQqm-2;H`Zlh|L1Hnd?KMiWazYK@W zFHbJ8`1<&;B_PRE7H-Ueg(*BB_eXLRr$cByy98gGwP9n_(0XAqa-e?7Dml676?mi@ z-f_du`uIYoAewHQp-sDOs{jQ>W?(SN;_bZ1gwJ?}sNu-n9~Ff(SAn=Htl-9k7AII; zBvU*8S{KjvZZX#5XtL<8C|Ev87fRnEgtY(Y!DM?TdRCeXn_Qa_b8u8V92`!AyAOTd z^UfLq-rY5RTNk#yKaVFo?8S~PFF6R!gbT`sqn53mzrOz?@p15+HCq(84(Th<<}9^9 z3afOrbIa&)BcAE%f+FEwwnZ;e$pa@WLytHVSQep-)abS@Y3(wN-eYk%O&RW3-2vUz zFtAHc{06l-wVPj8I`&bzd17Ctn{8JbdXCL9Il`sVqPY69X`e|CTj&XgdFw#b;uB^qA)duf+6+z)L25?NS4CWh$V4J zGFFy~WAs5;u#Dh3DOTj%?2~TGX0abt{v3J{Nb)Tg1Wjw(3G#2Id0~tBxi{eq`nVN3 zK~p6tiU2a2xtXd=52lbZ%vGF(#(BGH2^?N6Amd0RMq{>alAmVGntKcIzmf_$MP=|K z3}#+gsSJpiMw=Uj6K|{bm1%W5)u+U?Var?-+AGl%{x%C{;BfJEPt;t?gM+oG`xo~! zL>QAE6bP_(xcaIX`xWqk-xO+RXb2MZ03$dc?m7=_BPgK^hmb2H&9CH^w+ zE21j(99*trHS<^Q5%Xc(0`?sh{u!yO6b#6_uWoYxC^6aQRZkg44$*ui$yYg{vLz>e z<>W0;v3fj87j?-BbMhj;)8xmWtvefh=^SGzaWsW56zaTiL9F0}yb+nGA=70i$iSVQ zMw6uj)j#PDfj4V#nr9cND$ZDap5O+tm<*xgZS0w+tMFfFojti-Nx#JB{kb0N-c*=Y$3)4T+kc zf!7?d8nZ6s0rypc^(~)LX+qYqRBj!=t3EDiEAqzZtaBkkWR>WY_B~LtUVH=uw)cUt z&<2c!PCi1PKVS2i8)(k1v+xIRNU|VS5Pg6Bdi&XV0yN_;P%wvBno`%Ued_ErRlDuy zu&7eh%tn7|AucBlFdHthNJAEX#!kUAxU)*KsVvc6EkVa+s_=lsyu z5g!`m*yhYS#d1yj7sinQp#&G|uj|Agnfh~K>M%yr7%6P8R1X{%fO&7#=15+2N7N<(Z$DR4lHoU0S5DlyG=f)w+aQ z%3Ee!I(~%m-n;8WbbQIUvBc+LY{ZdstdpO%4v*g43h#c=(JEA6&JKmntH`|H1M$oT z#(>bsg>>$N7M7Eg6*yLnc@NDs8X?{4lZ(5SZ2qy3mh+@P7Em~}a-;Lj&G)c2N^c># z8<%FJ?No{Ld*!ytO$)t5GGc;62#^|&i-VFU*{iJE z6=v`3y#8y<5L@XWZ1hzLVy=6O#I+AH3UkQBxGe$ufcJ)V{)6^x(KZ)ci~`5-Ly>Cd z`)Db0uV{dm)6M!MT3%jANO5#*iT+?9^gli>5;u3uSL>#@_z!Gf*{)C&_i3toe+4h! zs+snS%Bm~<#75z5EZiJb7$BUAB6@>qz8qht8#cUNysE3kjl90;hvHNI)q zUt?fjye(kq&H=SgN6G-P0wJ8_3X#n*tU(_REZuc|=KCdbtN6K%ajVSSYLnpIHtt^D zGW&Lf1@vD@&Yu{dNhF7U|>_8%Vzo75^bp})YZXlPVFeJ}h zSmBcCHYoA^@TibyqVc;G53d(Z z@(v}QM@AO=tw(_9W5JCT277OxqJM~$T-uuP|F@2kihFoHS=X7c5G3TP+3WA%>H)dq zbdrMV)11i0&8TITty|9+=A7YG{Q$RgLIVewCxNaG<7{frZxGWt7%M?N-tW;!I}Q8YS5*Gl@g$q?knrac@hM7n0RPGc!);0R)V4#*BCrhfz3u^2TFi)ENW_mk{EOlcbTv#S;iK?p7P z_l8VbJNFmT8|MfpM1Xk`w7a{Rw!Vm#aWRgX4Fy48a+8ZlQBh5tHFOi3o!#Ngipsoq zLZ}xM^&1JwDh;XMZ{;x52!PD9ix{F2t*8)&eXou%PAWi1r=~dooBBmLV*h3i|5%H{ z%4_eptQo?FBa*)q)4%9p)xFls!VnWNSsOx;qX&#BPQ=+A^HYcFQ=a)djaIy;ev!?^ zCI6SrRS43RM#&}(cy5iVI9X~babhQhY&h*7ar8`fKKCv+O&1F0{S30@`l8@Q|yw`L|NLzAY(P;~9ZGA5dBa|4>@T zEq`{a1lZo)Md0Z1`>!c{@CpUPNk+g;AVB@-x;Fdz`U=N3v)-AD{v;6W(eA61WX zBq*j%K{CmaMW3{tXLQf#Vyj!R9)n()Cj^ZCq^@p$hF4U^ zA>uH1X34Wna27-dWQiQ6YEeUJYa!dk+waD32XRm6b7s{F1A`JmDe#e4@CpRFE?m*R z>zNf&I86l>(Ypu8VjSQ;EI-tAz+Z7hSmHumH_8F-qc2W%zDTaIbeF#Ft$Xwkg*%No zkln5;s`;=GOgSv&6xmodFHEi!ewLet>Sy-Lf@pmj)wF{x!Mhh{S!Nwoke())n6_}< zTYqCA`j4YN{Qm1|oe1(2l^tQK>I0}SS#2u2gFR6P;xJ+Ie1_zeQ?QLM!lNQ_;psh0 zY74mSWrIO!Y$m;EE&<v9iQ8%F-$ zy5DBKzOo->@+!#{^-yRXxBDeOn+0-e~$_lp$D*q?ucNa^(`Ma#70 zrU}lnPf}RPU})e1i%!y@!rUnVL(BLWA*oSX&qcS$Ag18(&Z}Tj0!KS<#pP57bzluw z|1*M?Anm5BeH>!m;8s@mYpf#K{uZT7DJC2AbcV*Ysdj255wnqgA0nb_DDci{1c)dO zxO8TIIb!DAnQo{`)Zt;;TiVw8TNL#=U+z6jKpAWZTcN8Po)EMmA!$8t_I9LuWr3V@bm=CRZq6Yvv8IUTbcxoa;aLaLL;a0~0qm@LWO z7E)>5%w8J5*XpF#YWE!AlZM6Ap4?@D?__wh0O7sz=54+WltqP9mlAI6$y9V)0c0nT zDehjAC66}O>~!ry`Yu`q{5?D_`$p?zp1g5?l<7chr-gXd@n`QdXbogKbLk=s1&dF7 zYx1sqvYr_Pvt@$L;*&21W?eB8|7nueOjYC@EXVJ+SXn?@sg%>~*_GrpTK}-#$cKgJ zLV{JZSQr9nWddPmnFD^;N+8x+*Bl^z>8K!rOLs_e%!FnlKe(zgzV74gipwN?jq;%w zn#Ic`6LzZKk(~PGxP4cF2Nri@>M=kTPi(E+ciBE|IohW&(_mtV-=1;?mBS)wfv-82C(_M&>@;f@>gS}+S#MAvU~3CFLuXK&QbqQKh2Jxkd4tN zf>ihh$5GJHEWj8Ggf=$`$;84Z>(=p^IxQXQH?mR~0&$t9^m$Xdcf2{9jd@y@OU@?h zjG=wIg08k?ffDo_+}78@N+`}t5PPy0h}lC}lFP!qqWLp|Fu_Hd!S2MCB?HiJl+af{ z)P|6J_Bt6PR%QfCpNjeJDG=q5d~63mIS}Pkd}cXN<(xUL%1Ko?uF9E4>qHMT=^CvF zEeE4Bz7hS`dt+`^GUmvnG(gW+;$XCQu56xtuciwSC9p~LJ(Gqx8Lkrt-IV}rB}Ra) z+ur;ibWQf5>2c++O^^2R-Je>tn?rAWR$9Fa&66*vdESy3X#PBQze*wjPB42u4@un; zo<&KU+)XP~<)J@=)W3Zr%Mm>NF|FM1Ba{MQ z%VuVRqrgmLD+UnBoi9q?Jq?#^LJZzg(19X|K%*Mab|b=uL+v@t2WHfhi%Pq^3mX*As>5Gzj7X*9}fWlv#$dAT|W^! zm#1)kbg8=cc$;+9V|aO}e|bu|e=2gD$o@i;8l@x%;DLm$|3p(a6asLTxl5V-wU#w= zxFaff0}PKGe^<%+IK0F#D5L2`gwod9d?#B@>4J0pMi}ymyZ%H!rL1zthQ`X+F_yX(sod&D{WSsff+4rT8|^m%4>j zD)GB0S3$lcTE4m;5SEv{HloF$Bf@tdppr+i!X3O|&(Xi_w|*9g%Y#ouypFrT+X!5U zF;Cbv@<>9W4_u12lcAX}U9s0&3U{{x)*}&chhAGAKGK5!pmYu90}h_S7_cxtQ8?qQ zgPYj9*+*o7=VXJig@8P02+N_T7mf3MvN5}a7sRl|58{#((K)lX&HFmHWiOD});DEkPTJ4Q7hFdzqJo*ffN zgzTEg%rk5^<2~syYm&CQILR#R;!Q;!;0FE4wia(c198Ae7613V2LR$P5qRN~p=H&) zkw?q*5R3sp&vOFecYHo<%JY$$tPV6#>us6pa%#=oR+{J&r$EpVyE%eBH&zp|<`e_a zJvax1bHhAQYaqFKb2B}|u2 zpvo^DyyR4$D0S*zbV8l{=9dFNrw5~N4o)a^Im*E7SK;Kd+Z8YGd|LxhO@QnP#N?>$ z*s^fL?Eia_Ify|NUFybRyE;7VYMS|{57%g@`*=K)wA%B1ea62g-+GQHKPP&zZzb7m z5EvCC?_eE~iO>f*5y60fCtNV$LtE;O07^!&dU?n@O?3cM-;f<`i zq8Tx*v{io6Fz8(j^sU?YM9>uL;n%I`93LIEh{@|et_BHAPgrirdQF8u4Cc+_r*Ov8 z{Vbd@2>Rt$Fnk#!b=37D`t;Q1c^r`vdg;d$TlFWJDH$gvIe~lVLV`d0tMrwK(K@v5 z1y1gX&{0l}>OiVwklp*CoybCo@;~1O$+SL3(IWbn3f9rsMS)m&1JR#9-#orx1E~BY@vN^tH1z*3h3->3Kk7w8HuippA5GziWM2ERWIbyxA(ik5iv_k zN!Eg=$FYvMkTukC_Pxs`5Sc<^lQRbEpO~rVP1d_R(RbK|+g{%QzZHy|PuKtmFJWKe0q#nPMzpw2fsaVZm`ilE&#ZxzrOFa5Yg*VCUzW#o-=l;vQIS}bU zd!t#MN3x7LDg!;q)r;#4`mHC>PU^L+02CvZnEP!5?-AqHi`t20)o-BE%#bVN9EjZ( z$EA{iIKYN@I$Itp=9t7tYzDa`-hkN&plw}qjBR?6rr-g^U=>6c4c()B-&+-T6s(NJ0UXZjBA*6zCdSH2pHKfY~Z3V0;`oG#G0Z=z~9o0JgFxSAFa%tpcJoVl-g7$%>R( z0F~#L(|95;{)(C&0I@Cs_g=(Z0Vg#P2RSjW^Etjq1-RpS-k4mI@;dqFS^;lJK!RiX z-w4e)(B;%OkD?()Ml}8%*H<5=UpMWYefuKpA!)n~!6Q=9T5m8G|4ipN=0^rzV}%qG z{GOgyY-KI`n`@c*->iz+1$o|mXeg^*XzG^{VxtBjSBJVemQY4peaDEs{wbcX#QLh` zR&**y)$llmgCMI$O^9bj!BL+?%<-XFk5$<$Pni`@nWvV$=IpVk9!3{jYHUwe_eJ9b5a;`4^l5=J5JwsC$ zD=&zI(T!vJ;t6;{goQ73H-XcbA8>o_ge!nyt-`}}?lU?*a(qQaCm2A~?*Pj!fK(Ag zNQ-eL_=piP(z#i_Xyd3RfYLz42ELKidSc}TvFoJ7^20f!o7aoYzeVg?sBjax2+x7@ z0`iaO8FSbJw1ZsTfTtN?;XYJ=uK0$aD=4Nn=WM_SZv^6LT=0iUCqRm0G6Ft_q-tgI zD`8V-BS$QK%=Ihhx1eX>nIWC|N=zqaHnfW#5RVlVS$L3mgqqd^;!*wC2Q3qa8LwJo zgnaI}bPf}f-Q8|Z-Se}6HCM}tjY8F##BrD2Er*7qFu9PFags>(pp8vL&^ zS^XotqxZ;UgxsSd|2j0fTWAzRGslxUe$UD}L8nDXK%g&vo>xe0rWUN&iw3JNL004f z#n8B{UZVUPn9Xw@Y`$b}a0EeCAXaXdQs2mpu>yw5v6*_hlONU3U4*Drl|96s{k>*|Q!m3+=K=n06UrW!?O z4cL#3C9Kk;hGin9S7o(yLBfv^xV9G14qRJU6HOP3^}?If>cQPuMm(o3cw;cS6NLpc zVDiXaXqjMJ31W3hq`c>Y76+DNQnxYD_h{DWTHi~Fu2M>q z0cT{?r9<4wZQ^WFiQWkCci~^OxJ_*TEs3v$`qj5c`L~%m)gy=u*GxBBW#k?A8Ec71 z#aZoeuur5sPLn6+>mZ1_Ii*J<*(t+kl*?1{V5qtu?7YkXJ1=vuyDQj%3?s4?aGCXz z3RHT?YwL9#TQ_1z+D* z$Xg2XVX)Z+q=z(Br5sp!iPXq=B;%1r$ap}e#R$H3d;c(aM?XMly2^r+Eh7}kCFl88 znNi>V?XyS^?CbW!m)Yelniflp$2myhh%R?o%%l@I`iV*c6 zl70l(pq}nkDX91sO}Dbc4yEJYGKCpH)9`x=T_n)mO$lfyTmP=Rn@5P%pU!7`{bWc$ zF*VoyUBPn@owZCE8k2+B+0(EM^8$_V1A$e`JeDIy1Ycdu$`Tc2h_ksIU-5| zr6i`|8GC-*aQ-6$0@rC>c;6kfrf*&Ge{KQ_=taMZ=8DJ9Bx9&8Kxzye1r4L( zeZ$ADa@8~i@w@C@mGrv^eN@C@UOWeptEJ`p_7dVPfQr13k&Boo0jCdz21qL>jcvgV z`wJC0A#)hHx+KH&hp`vIU<8D`GlVo7(pC`8T^jg*;HUPRy*|<}|_X z!iC<5nDZY@(?D|37I%|m0Auz9F0I7UvyVT?km9=ZSJ0Mm@}8~=h+Lq6C4hB*~IPdzy}s; zlf;JU1V=Xayf>pdl|_X|h_8?*U^WTZtjvNtJsS7V%*pI|-ENxPIskE&l98f~f2oVd zL^{QoJ8R`ntT)^l>|BxZhN*8-8Ns{^{ygc^xc4vJbJ}o0Xrf2yxJZ&V1W4Dx#a75i0z8Gz@7Ytf_Yl{Pu-T!njg)D1ZNiZcq-9{jRh0-=$6>r`ttOuX zBL30xvt}(Y#eQ8Dd?rasBcVmCS5C8PPAm!1-bzrrg`1K;c!Z)!JNfs#hu%laIEyF= zKV$#pms*9TlMa1wj65DBH)E&fDVt@EY#V~iw8@E74BoX766%zJVIt829&BlMdJq&){Fll z3G3X*m%guZdtL#oUtXNK{nw1+%ts81U|92nPn+!y&fJ}>KXha1^IGA>mfSVcnhDRo z6c+l`rdiA$n0u+j1OLGOH@jZ?^+~x<5eDM{e*~%S<7jO+))Gt3U(K=ooD@Y(ajBWs zVp6KqiWqdM9nQr6Ty{=nv?7mqP^N9m!tZ0`YZLcAp$bHb+#Q1TJD!ZilWH^2`zVKH z9*UicFxcVc;88}LcrZB4v3(=Bo87N6zDik}eSgU+49M7b}ozirLDf%D)9oq!urz6jiTPYZ`Bk2ZaJnPQ_Eq?^(yE zkK=>oCK2)GFkm?_Xy-}IIG672fBfFMdFco4*8rGxVzI*(nVbcF8R&n!M;!sC?xe9; z;i+w678XKZyCAAm$IbaB`@wzk?mV%q%_YF!0OVci+#7h-@Q-vUWid5f^`)U;Q!#+Xi?j%>wkeHHrL z5%w&f*q`ITj{V4ke9rbOp^tarv{en;hP?C2+ce)rUVrmO(iRo_rS0W=`+;NI(T_a- z^wQN5&)z>gp;(CAl}u}wp2`_#j*$JDAD2Gf>*Fq*%)3vK9;QM`bK)XW#6{4e9{H{Q zHzcptE^(#YRCL2!kSSmT*zB9+rnx))8$o>Lrs$Fy)s-}+tp)fk)P%F0EDi>JBHDoJ zSDO*j=STtKI??`SdkKiGsF z%jM_(_sY87U|yW{9KrZcuJO9 z4P?%N9vawif)0FITg)xSAB;Tf=R+X8f~8$lU}rABW?eTQMg8ln*juy?sYw{1gZYtv z@*JSXz^G^rM@8kO7@ylzzoe0uOs=)Ms+=?Tq#DqU(gc3n5PJ~g@soS}etn1|LrSy$ zML9Tdf({y|Wb)89(Oc(&*t6SenFl_Ey9id<7<3gv#Hs04=-XJw?uWn`QskX`p5v~X zMIQM>Gqev&vY5zxlk}_HP0|*H>4JVQ4^-l3pNSX^fvXr>`#7~%SQ0#&07^$<`FgbC z@povNa>CC(lbLXYGz z^D-_Tkw(`{cxtGk@7*7QG61^AAilvc2QJs4z79-}a27q<;8A&ySI1OL`go-!(fm(B z%)tTOv_>sD+U`-_2c^j6TVG0VFRtAlH2f?GN`E(?%4GRy0s_CTVR``F} zlhH|kIw=Aa=Ohy;jgtFBb^JJa%@X#?FobT7g3&(c6NP#<9Q+b2{H|$vW>4ZD%VS+J zKUAErZ}2mr*KZZ5#Ej?W{gTK!9P!6Q)>X?L^yierxU{9%dtYdxMd}?rGH9~bz3hL) zN8h#g1Dhtlae_^g@075GTrBm($KzbT5tw@7mPftDc*E^_pkck1exPBsNAJ+JDH*3m zC#6?F9M5p>X?iQXKI=|U)6_KHr!v6dSpnBxvkthjtj%Fq9dOsxmUmN<*Pftnu>2oH9Re|A!5?&Imev$eFGmfnV_(PhG(Pby)#j}Q=(N%fq_6R6x!cRb!$^}2M zG!EevWDBPfPejmSx>pt+&DSh#Ky1Forj~8yt#2Z)HZF&w!NTeBOH14GkA&+Wl2jksow60F0I3Aa_)biX z;Nd*OET#|wo<#S=Ei6t-HlRL&%a`#~M!$>FhUglrea7FXI`Q@p^l@6gO#oykRLe;G~Y-7?5C-f zmZzzrZq~BNy+6@YHC)uX(1E-VS94|iVm_M@h%FCb$L_V+ilQ}QAFfd-8jN1n{b3zO ztUqKj(_s>$i11&nVG$B9kUfe-^x;;WgPhhhDG46 z2>YbV#65@N7!Yj!4(oFTKN4JNWD(T|lXFOF@gl!4{O!2uz^Sm=wQy_yd|jhVL{zY? z@!TXS!YvtGFWjP^W)8xsfDYmOA3}GqUS7Yw5~9d*kG?#{=`q;(F~kIRe)N$5(JTJ% zqSu3!AC6d)$?f7t>pql?DNaye9uOho6BB6pc4}@rWK4e{d&U0Oto*1MX)BrzDHOul zQGTZeZcji|HpzS_Lh)bRBJlr~7~7j=ib(sgKOwpd^#WkqNAEhQVuJ^3K43U<;kbP# zYhWuJL&HN)(k^l>FgpNRsWYGwVW+(60PW1a(5&?ycD;KZ`1IX*wrc*#E3wO$dv;pt zcN%N>SMqcBCiwSeT=r)6i*}{XVdt~o_*;d+;S8#7F}k?pe^#AK)5r{>e%75aF;P}e zVyT!gfArgwOxl!H(%-3|2@{t9o-B4HR-2V|NdV^b(*NI|%tIl56k&G|-Gz4>q@8t? zg?)Fml2kZJf05C`p{CmWQoBH`U!QOzBVoJ^*>`S!?i4P_2VgFM&_1gCmmm1!2%?P1 zGnrQq#4#?wWmwbTM*!j1viP+f+aD;cuV@0FaM)r4I zE*Sn1k9Qt&HT@a;GJx3sG7vlJ{bPoIZMc^X;=C`Y`Z(RmPaR9LbHoCIp~IzQIIT6d zdGNmdeSLu=zJ6XWN0rX{Er{Msy{qyARt6s=YOW(^W^^X0Y1EiHTuQkE&O2Oum9X3n z44O9lH8L+mZ0a`_9u)t&Fso$Jel|pq8RpvQMSO1KJE&J4H1vDG3WmJkip$$aIZDf$A>Pp>L{?>7tF@a42Ton#}wm}U)r&x4!-25`02D4v5=J8npG?ZSWq zS=Vg3c$Jg~hNjeJd4%a0f0%=IX27Me;$0(Dun~l>0fFcMBT7}RYys0t4Ze5xI>eE{ zMlOtCPy=8<0T_KjKmnlue?9FhS|zAG*rtw^<*d>JNr2s zPk5J7y0>j!Wc)vcZ*5oA(^Z5e)f-@6@_`D`oRy7e>c)n~e$_W#l#J(UMvxkjIy>aCu z$@U6WWfxuGo3(a+^uX%(dJR$Rf8?mcM5Ehp@S`lrGt)o}HMkEb9zG;mM<@^kZF+@& zIpGDYzZdF*O(k~cc)m|YOXe308}=@KZq8U+*{nfyVBf|UY_s(~*{0*P$tF-7!wuyAZK;^jt0tGCK`j^z00GUCgpj+iYaH%$2 zG0W(WlxWUhQ=%>Z(Ud4tMPs6U&fHsYRX}*b-`_s@cb1KG$L?UgYWC<=zP?t_%9%~# zQjD~}6}vw-vbRva-?RT?U-~#(`Y>|mt2J6DKG(>Fm4${p{WStY@PnX$24^y_ft_) zzWpO;0OYBo+>79o$kH!5g}-J zQ1ulNL}@Gxmeg>rG+c<8GFm@RJfpY*9=Rh`IXQ=piEwGJg%$-p;a2d3BTm4DqBAKGGXWpO+uI2I{Jo{Yd$duv$ipk-QyknrS z!ZNE4)f*dkAOPtXWrK02M-i1j$lxZDsR$UY1r4`MAvZ*=Sz)%;ue(V8eE-PA51ZAi zmV?@W4nMR?-)2X0_8=441)qd%dO16VSmBi@{kN7XdSGkHTxXd%Qc-^pO{#riZFfdoX+~P z-#T2*ru*l4lS;Eu8$#)oT3lql+&0TrY-GQI@I)wEewR08P1*LcDZ6{Bi zUL|@lPmpLL`sVIKs`o{{r+u{oWpVraPq!lD)Ljp-FAU9iw#4cGY{`MtqIJXRTVCsn zse!P?QYW#&Gf~5UW1Xd4IMzy6Y~}fXw5!*BYK_sdyhYxpzBg4KzGvm$ zDN9?5^jH7PZld;MZe^08<%Epf-?on1Khf=6>g>xFGQvrH?rA!e|BR-E+E+T%M>qlk z2D2CNISsK2sVbjdCAeLCE3`0yHSLTx18+lgK~ANA zXUt8)4854UE8~d+h|vTvG>xP6*SL{ueB{v6h%<4*DQ-L&XCZlG-=Zt+FR0x>Wa$w^ z_ntYg&K1q)NnkoMAw}gq($+F@S#(tjWHvw6hKI{SjlWe&sP6{pw~VoD-WJ7Yzj?JFcX=8H2PO5LTRtZ$ z&*Q(cF5VrkLzU#|cjp{;*?I$o%D7_b4Q|Siu+GaC^iqfwX4FpkB%JFN_`cj=GwLw1t*zLA7wB<)9LsqrsdGf* zhOL?Q3&uH;*)??`jXw70~k zDwMUQo?hUZS{}rR)eFoo{FEj8uG&{6%V@sv%bW63U)yEzW93?d{Nf}&TDv^Jx z@#rq4ouYNLOb@iI6oh~Ev!7M(QSiC-YrXY$ayERQS4TnlYB`nkHO*t+A9(8bPq5yn z_F=H(N8Tf&YwWiV_L{vApA;=-k9)2+b$*U5S?vE|uhc z$}Fy)oaXP7Qk6EOQ;qSaM#;k=QRZBiT);)tlH=+ezGS+lFiqz_GtDXYU=Je=+%xD6 zuVXzv_qW8C5SQL7kBq)1$8q*%*cKcAj8cD(-r5%4O0eTlY?sMrq&t*Kec)w;xEc)u z;O}NI%@dr`ZrdeaE?w{~Yj>&(eC^%a+vmVfYb$)p#-pf!Y-*BTMKbHMhz^5FmVD<< zf^Ud?`YTRuuWnuLA8EW(%TXd+jRQN&X=T$xYPpzF`xm-PmdbYr_7}>x7x(!07hJaY zL!TRPt7Ggh`|peD{9wDfYzmLGnI7toWCzs8fBKIR2v(6&y_I{ecVo^{_47nnN(EwZ zNqmZ%qd=WJiR|vF^UHDmtx#N$BC>^xH|Js}wT>CJk!Y4jv0TS3q<1H%G*niQ)J}bS za^=Y_Wy($@gVBo}+z&p>iS|=bQqcoT7s}^w0eaL_WTgOV_R~SNQ8`}hmk14|uf@9w zD|?fY>LBG~cWV;Sygc#XMcoq<#=gA3`@(sa9k*5pkp+C+5Z|izj$DqSS{N(NRatz_ zj_YBu&m-h>1cl8sDJZEH6)6=l;y8q->QNY3ct zDs8*xl6=+3UaW6=v%<-m##oNjja$;z_@!ositC6i>JagBS z>JA6urzJc`$gL~*F~=xc-2cXLtJ>yw3E_Km{CFQf{Jn`tHzXD-=DJyG*h!idxC!$9}`ExTgjydn4#`8iiw-@7&3z!4IH)Z14_WAtIh(|0eB`Fca2v;s(0B2A6MbjSW5_TDN(H1Oq&t-EZs|^?OF@*D29fTRPU-WEsV;Txwf27dyyyD9i$CUs#lkt}Gw%Au zJ>`>TC)khdX6T-@+qb&(&xWPMK6!>3Qx%;Tb^A&`h`tx;?Gejg8$Tzu^t;y_N32A) zTn%J6NtJ7ARZ3#c;w2>Kdw=Ttxlp;cqi4BHU7$L1EzPeKTm-yhc0~b%$N z(3noOhHfV8H`1QlIoa?spRNs@V7xl>IiGer8LdB^w8?SXmOYzG2BU!#Ra$Q118nXR z+Sago+22E4djoy9e-C~4m#?u5gj0-HW_`_^{3yBTp(0mm%(iHBh~Ni#t}|mQ>(@A6 zY>+@mWm&#a$v+p2f>EN!Mr;B%M~>)a$g{ZF^FS&h^i5a+ejDz(f;c@|3R0l^vo;KS zoGOGoI66~5sc%84Ca;KZ6yh5=wh*pmCOCe%%(6iu1yTHNI@xf$IDH$El0{BvnkO>% ztZjppX7C6j0+Emi(o?Ipil71l%OGkBBQyv83n`*PDNzV27j7$I<|WRgA~Vn0_E@d^ zNKjL}lot^dMe*4$;$Cpjlf)?ur; zy7&VNkei=3rWw;WDfv(?f==M*xe+ATi9+;DTK}TwYY&8Y#%G2-0e!v`#4izqaU;W4 zy^@Y3_0@%cRCIdk!kZzX1U%{>qHDTJ9l0H;qXPQjsA`sq{n0oAnm`TVxS)&xyI`!; zR7KotQnjBPR4RK>X{fS#b<{C=iO%==iBF7-DksY zbXR+oByNe5ktdw3udw;5)IvwTI^>a*YnSquUsKAkjIVmQKAvJ*(X2Me&wrRui+E2@ z7EQCHy8J2k;0G)2XeP$|D`Ft$am@BhfigBGiWn1xpf=V@nJ{WqDRz#XgDh|4qQI}q z^PCFN>MC-5Vo97pK1MK|>_VeW+2dQ98VjFFGL08*8ACbYedjF)`XQwSig#U&r=h-O zqtp90f-73i<#HbDP0WHfD=jHU!B)5<6QyB7E1QN+LXy4oe+$kare71%-hQ z@;H_Bg6eW0wWds**=uHwO`6N7Wo!p6rGD)^MxgK_FVW~;0+Pm zviW(^&bmD`uy~ZB{DN`G6Ro64N1rTiF)ikP1}#k`OQnXX;uwhK+Y(C>*79l3YuLAa zQDf{?ID1Da>7aiW$I6-iI;B#+Ky8sIqJ^lIlHj|td)7_KgZ@v}?-n(S-2PJRmHcvS zy=*bE#R_+x!4_?7LD<`b&i?kn*`Us8{>gh)fs^Uv(m5b;=@gc@=s zg1E;hx>h8z7H!Fcx7E6Cf0cFM8%mWVpa4;TAt#h0AvwCtQV`F0TqHbfux}wl}SOVm~W7c5dqawQEwnAo}U!<(;_EmdvCg-n8-A%{TBI z&^^2v)bRcW2NLHe)fk(V!95?Xrvf&$+l)S^U+T{)1rFQlRhLM+&WtG*gczALe3=|Ju#%e-Z2+0H^%zYg3Kb&@ExI$hqL^zVZ4HRNW80 ztPx&2Y@4iYV$XRZ4V$gLW_(RA0X54LRr{@fVSatL%ZK@>#XC9H&>?`6P56wxqI6ZZ zsn2=71l*>jyhnb6(zH+*wTB$X9_dzz8>c z(>>;PtC7i~{2i3MD{;ZJf#sVt2066?oghv_0^SavJ$mK^LX|_Q|E7}jBj`rMsT`Bj z+KVLE8xCHo53+sGkorho&u z%Ey7AA+O_KsL11|%Z-x+K^$j`!x(##&6gCwl6y@D3%zQAl~|}!L4;%0bzk(H(z$i+ z;If1k#RoSErR!p!?q%XiG4|qsRM3lRcT-ijB=$`sQ>7t;TS83sT}yh906<5dv@*P) z^0jN;cvow0u$Xea{6$Q1POp5m#%%|K*P``N;2%R4irRWInt$rC3`iJRGpFOTIoY>% zqwf3!)a!yd7Hxqx2P*@?NmC)BxpKzL;r)_v-lw~Jv$qr)r{mQB>d zN=8$UK}pE{#~|*L$JgReM2Qdg=$H70Gro2aHi9B6u_$>^vhuqlncXPVy(g^?KFN~R zGC|U|8s3JfryZW&1NY{opyzr}2_%$zmkK@u<6FBvZ8>0zKZQch`Y=IKC8*9bV&b0m z3%DG4Ov8EisD>*zo^%=ZOYm$KmyL+cLs01{h}A_z87&0!U%(@TU00iRSM}fzgNA|I zjM)YD{&=}`iMxYLwJv*-L?lez;)9rq!~eMn+~T<<*K6}SHOmn6^f;X1ySv74G=DVg=}(EDNII)cY|P9C4$~ojs#b-kFuKSn!iGU<{KV?Lmvg&MfJ9r_T9aJ&xaL%lX#1`rO9Z`i7SnuE9n1K2cLV)g02mb1Y$LSPlQR zar^On47BWq;GSss@)_2&&uWctNJ-^UyQLE!yvtVq3~Mkc^^^^}!O&{1!`M^H6qtRs39bbRCbc}ot+qrNhnjv%5{Q^OaKF2OJ!A3Y`X zI;FZUO2392zjh}YC6*E;O7a9N=}`t*)iMzBF=FGN6l&#!aXr(gJ6@UicvDv(sH!7c{_G9#^x(i}&;q{K9F;3U*t}X%Ctj>3t63M&r zaA`JbrQyW(A}Z*WGaAq!hW?g9P=?hE!20Wh*BAi1Nf{#Nq@?dw9jIhe<6?yT;6uX;qJ&x{Xw}s;s*M6a^-L5DDnhjV(N}__- z3As|1v3-!<&;%`w_i{7q3E{VCFXh%NMYDtM;y}1$fjk5xKnKqOSYQv@Bn^VQB3CmJ ziMjWloAT3F>I`6#tHjD7fXx~~C}=NBQXYmP*>0Sq;w29Z1Jq!!-4`7clT$000yxY-QCKwdwBFdcNyc= zTR^fOoo<}#SQokNn4e{zpVgnApVhh@2y}?BMJY;7o}UTe#Eo9lTVJiSdzg&A%kbxu z|M7h(xnH;N(iwNCWl5Le<*~SYwW!Lm=9blO*efl;N1RC+3+%A^8;0}kw z`M^&zIc&Bluk9m2t9S(#;VcyyIq`jZ^CbW!tL8moAu-pVrxR8|e`r7vQ_z$|$Z;gr zIHqYQTB!JlmDoAJVCY3kdua8hf-MC&>2`B}A=_4yn%7#Al-Cxb>xGdf)uT6l|pN{h6t>S4?fvi_34^p zTr?hd=1f~msg1hz~Hi?#JD`U;(U6>l{`MAOsZ<>}w8-O0`g26#tx}=6jZc3xbUzw9 z=yB80CM7w`ZmOENY6Zc=L?FoC?6uapCGnD*`<~?+w;$gF!edCO_38rmzir z2%Fn*3CorL4$}p>y?>e-x@Z+pe_#RM(}a15UXVBpWc+W(^lTrO#;b9^YKAYq&<#L( zI*=SjbD^d_+sb+K9Wq1(HYJ}Qf>!Ws&S{cPSfpP7KsZ+kT`5l>Gi?y|m|b|6;n& zR)(hg`~P~nZ-{6Qa1|pmGiy_;&SE9KWQ)7*Ba$(WUWxInjQ7>EbSLw%UEvk`OohsH|e}I4R^?KhCq18|}w!|C(xV#|QC;?p^O4KAmvs?BN>T(R zt=#w$atb1{!1cNZvql3FA(0ttuc5X7Bjv|;&?GUMPI1JkR3u8=60`kaMt>{pU8QXS zi1+HC>T%-)1yDi~s|VkUb(l{_YSx>upqC(Kj;yIO9O~D#|=KD%v^;imExTO zP(>&}6?xh^Oyx=@bwwt=tcA&y5#!_p&}WekNxs z7p36AtXXAeT+SE{h|pD*Gx}@Zjla6DEi#pymIMJGATP#nmLrX%mr@_=<%NRR@s{sG zIntD`2^|GlAR1ARwV$wX;b*j{`_X~qCCck1nY5pv!7iMgYPdBw_2@Ecoh07Zq`w&I zqgQ+!zRP-}Hekr${!!Da;`lLJ799WgPJwC>4a) z08Ialrc2*nF!o&cE@s+}Uo84Tz1ee#;NR>R6jWJ1{IcVy)opWzE`5G77~*!q>2^AF zzF%kfF8@slgMVuy@BS~S?2qPt7kw-jf&VEq^6?11RVUS%8z|=77ie(&a4h-uv4D~6 z*&W6Qa%)L?;O6CURydIdxZKmbh)g<7p9Uuv@62qsTaha9#65=S=J1mwYrk{6Q(D zJ(F)*f>zQDYq%kufre|lrIeH>!d0NAOm6Ttrj|7ubiY+2bggW@;M7+GIQ)JrK;?6S zpD?D<_v()*S3TTL-nM6K&QNf^$2Aq-VSRD@4%Tqs7wys1p{gUk?$EZ4%aJwfLFb}5 z%)tc#{tU62Y4m3WX6ZQV_luhKSe(3c%zD+%IEE19KB$1MaKjswZ?LqpaPwuy;8N{M zzK-OW2{My_e0sViyMZ-2<#$Go55g+iahn(Tl88g=_JuLFM^MCC_y{)&b_{0`WZX_> z>klFE-C=(Hk!pgQ1f_=_%T{9MxuV*#aLbQgpEC{NH1tP*_w6ypc52lJ$>3$olci(r zHVC?Nq%Zi`%v)fYCawEqx$X?z7R2|&i*YT{;t#Krz;4w)&sO$1AHMm(iM@%4}(BM zye|T^3SCu+B{Q_z8F?0cs`ab;gG|rt>-eaZg{Aa;P&m10(bykOcWf)bD?+IIHwcf2 zAS0NnKIfGe$n!i`l?b!sC6bc!MjZ zJ@Q;4y7+AhhP;vf$ROB%-hF6mYFfRBCGXvrvh~64JWsg7`HkvAHOX z3Z_>__Yp2pwYuKyc>DDibiyDVLplB~12O(S$#y)?nsTw;w9nF-56Q-OXL?Dtrcd3S zo7k-i_4iqfZgEXVSOrC1MSl)5yKc&QJn9zK0PbzA)g4L2@_XnY!VLD_$~6LjXpD>E4~z9AJg8pdOaKK&`I~Yl5-EYHpsYNq`5V-J z*RA>I+%?_ZdqS@uP_Nyv6R{7aOkY;JM21I8Bht_9#u_dx{Ee$42ajHj7Ynwmng@Ff{3X|KjNs zZX?grbUoGv2`qfDer1%S#JE*O=7IR%L3~VNrZHi`WaJcJL>P2uN4LlMd=3N?DbIzyu2J%};#VRh&HjSkSD5MzhC*e( z4hdc^oeT#0@(ga?gQb>h_Egiatbn{E7wt~=X^xf%eGmnB#G&{=QCVf ziH&C*FqQCG@lbqQ1yOYkxRxomZ-naSY+JHlTQ6Z(pLsxzjK<%1Ae!>zVsKR!>xIV8 z4e-)2Tx?7Cj6^nqyF6}OZoj{OSN1fsq#zZ7ac-JOl|)6Tgp1urds&e3@PXE%`WvD* z5$#Pza96cAUAlk>#!L{B6%p5Q2#&kGkgF34e9%MRl2u=D1hsSACdFfZj_-bk_m5}A z_mGcnd>hmD*WnJIxQUdQ*B_HUTpQg`}Z2@(Rd2 zx9@aDf*+YGS;T3;1rS#2SvjrmFX>#^qev~gvuxji1U@jeX2HAbbc>HGj}Hjsp!pX@ zvF~2VF^InmN@(q@g|H+fyjezRRO`Z?@bwub<|CYS1Asbf6!kYc&EQFV`3?;!k#dq$ z_SI%AOALy}@tI_)rzXso{^q z{PmG@0|vZT?#?5GJGt@Yd5U>&&yR9}SC8?0lWbhFUQXsF5t{o6%fke*>Z{@GSlo*Z zYI);6iDi9o#`nd!KYF;xJ1oOT)@A8ZPA|$S#Ho0`#wD2#!ped7&_(}@P?iz`Cjy)2 z?5{{DX3`aEgS#C)N)+UIKwVtb+&0*|61{Wf477YUOX1)3SeSWzeYTEQ^0S~LKvwpb zdhPZ4p0;t2s5P1Ou!&}$cqtxrOI}Lf6C(Y{!5Ob;c+ZHpN0i-(?{zm5f{&amGb3n) z?uSV|Mfzs)d+u>)Gid6a=SFhHS5#BfOu5mB)Wfbphf z7ySK<PzHA+ZNmzeaJCZn{4{(?gNL8~@=ne^bC z_XL_K?Ll6bjc&SRob$HH{wAWqPewrE`Sd+?6KNE9VN^<+FzK7iIt61fAj-fSR{?2{ z$38^Mfv%b^dVxNMA9SkYy|O805^WmQStVcZ>G_OFaO=-A+t774abVcA&pKTBD7~9I zh#PgYKey7}mLCLi9EMVGe=B9aimT$4eqrtR!D}T9eC<|awW8-TnoUypqgABdH07@$ z6&!{=_lv{|@Lob#=yEJn{w=+0j{Ctu99AtQ@Sg|=)->hau6S3Pk2c75iMXQdO_+h| zRi3oQm~e2LCd8sDRYy{5((1R}A}6$uL_`#WQR96ZVllXRj!0<%!Bl~r4t#bE>cp;_ zSy#S*TZ+U=V~}L9_amh>WsOuVDxMT{`!&TX`4^)gYg)wxr;JjQCp;TB;oT)rOhK9&Rh*)V&kIpV_}*>va-#pC-b;LVxJcr;ru@XT{lFhWjj_> z^?quGi7Qdm4L*p(h)5T1jfrNryCFiCQ+*6tpDv4M-`W?)tN z?!;CL->soiH%i-2!`N$xYyw~3B{L2~Oe>R|oa|q;TWQ2gZQmd@#+8QQkPBTrF^vL} zb=NYEbv&RU`$3(!-Z_if)2`m<56VkZo!@bZ%W|ja3(Bph>QVe`y5*u4xw^}5B9I0C zf~x&cr~>(`H{C0dtZ%GWK~8R9nV5*EnN=GjXUaMv#I}Fq)F4D$4}p$L>Arm9w@&+4 zHC$d8Od)213CE5K1KML#pUZh&!}!L~&#uWo($Am>Xl+GAH?(1XNQMm)jJ=|U`gqIc z`A8huEplZq5bgSv#jbwuXXm+d2_Dn&id4N5H_Cy(tP>rB8cP6ZSf&ucLU^v39x@xY z!+T!0_}Wi<;!;MKgA}&ec**ZHE&=t{1W6k~#M8Nf9xNF-bg>@9732^ucG3DA74sLt zjW-B7?nmDpO;zG+1^3t}iV_;EZ-6v1KqUuhWXjX<%kcVBYVOEHf30%e`NF_i!Hpjj z#+J59KE$=Gye)Gd(%vXW?~G|nyf=z0eE-xBqvKf1Igv%<53!7l?;Qdj!4jcC%AYAY zpLi+Y=XXD!73(4&kv@DAY`14-z;hZKwo4r{={(ESf9KF?^K)Z0P`s$Wc1{Ii)xS}& zlgd@TDpNt^n@snSO>kE5$$j<-V#&qiuZwM(1cK=LawlityF>=>@p9{{gV3RYc@AlU z<5~P(NeTh2H??B=vcnkF>+7Lf7u3yO|D2+$UH~5P@On;d)?Md|a{8+WOy#*dT7B>Jc)@?yMJK(kq__uu{BtwmTSv9(qW*o$+O?%ru_FGTc{aNEp2p z5d{UUjoIQ4NGv!C&NA%zUAC82_J+5z#9Jrse+tyQ3|uGx07npQsG5U>)$q!2Q5AoV zS(T#YHMATS7-3aLCT@7`CPXJ2NwM`MJ{3juslesuYXy3lg7+K}R0svv{uS2+>*A$gyN`SA%5bNJw?I^VB1NGX>CbTe z_1VFaV8|ayd&J`mOWGuxM0)5P?o01_>*WFPL5>CHZ|2380JicV`BRs4OKcVhi!aQ{ zgu=rec)2(Qz*7VXy`!0KRs!@%I5U#g8>-TE*EJNBq(|}(KkLm8J~d4FtnOyJ7F-jM zM^mm`#Hy$Nu1l0rJ%FF{>28Q;b?SPcSte@4@{|T&Ey+b??~h(FC7>N2RUygxcW~bR zjw;qIN}4Rh^_pl_>kj=UxcMhee6v|!7h|KU7lo?YLv#5aN!f9T*n1yiz1GN2i%IP_ zD&6qDFklD@FEs8GW}Eo2ii}Pvm<&--DME!?uZ{ZG!fhF2^{b}M@SCP>1)ipf3-rc- z`;MIf7#vKezRJsY)}f5XS6d<9DR04l6S!Ue(5@P#FZlyKjG-5Acs`3dOw97oI-q$Q z6bBqo{*k<(5`c#D8D}M}5p{tDlYh2y$c{}_*Ea6u7Ozq?`m^<7K2!PYejxqVreoJw zYAIO=RZ5CPAKlZNKE!*qjil3cc{Lsbm+`(`C+;>r>EooqBpYo-g~`$HXviyb@KI|& zpzxoMpU@LeF{cWwXlF`4ND9@QD=)jBJ1!{a?giyVI5#6dXZjphIk``<+sUbuKfy08 zmefc5cNqXZ%FvAPw1rQi!PWi;LN+LYmg3%9O9P8QUNU}n>|yJi4_1s;j#mg2{ae^B zV^vuETCsl1Z+y7VjY`b?S@G28iv(rB7eeZ`pD?P;fr|9+> z@e;Lj1kY4`l0!t-v3GJ*H}|>v*6W?M%1M=vTRIKfss_m?{7!DYwl@tNBEcv0V((zW z{1vjd0jg_Bh@-iH`&CCY*O6Oa()CuSsdxqOc)ZPN5xHdb5y7lD31?EOo^23*9@F8T zoPLK=F_Z-oU+GH@e$*HMXdrR-nDrp$PT0!M1~SE&DBoB^;9Zs#=_mrn8)dbOZ)CmY)=19_(AvPQhv4DvUPp1D?hn^{7u#U)fbk8q06? zzxB^#{gu8BZ|z5(rW20N6M-yV$FUlmqCl3j?&FH0nRz?Of?L0)37{f?|LW-*BkiW5 z`;q}HH6$tNfs`PWsij2tnYY=jE?HTC`FI=5Sx1!fDxT=d`f2H2D2tl?T5H2?Fqyj1 zIZWa5Ozh z{X`C&E5`S3+ucyrO^e$bYV4LVvl{^fV)a$m)4d`8M9#0|w|UPnQy5;_L`U7;WY~&3 zRjtxy-osHoDEu{TUDw%qO;VX zBmM3hU16fxWYn5+DruzbU0LhJ;ud*=pPSKh&rQWZEst~ooLmQ1juQ+w_*J#~4fO)8 zw)FbF1#T#Tw@Gp>Yt2R7M=Q@xdFWr!1(1=zkq#q4JKgwI>4j?gA7WJ!ba|vUOZHGJ zGg3hv}Y{;eP#pU_+#sMh`+dUOK7O91uSBga;g z&wo;{=@K5i$IRrw?PrjghG#Me?FUicuL_{{T3%K3po;-I^h}28dwP%>WvZ35+jU9m=ya*?u5!1a zb#JfdYwnOmbgumO7!#3?06sseYnDHf&J$k^u&x**)#>MLZXo8aM@VepOuL&f_G4Ke zi|E}hax(SNo?Y4D6VBS+*iGEFhwLTFH94)%d9wJ@8Yv-6rIEO8FqYv-@n(l9e#hiL z%-V0QstH_FUG_};oYto1sg13biWUO9QZuB)en`@9C<3|cjgamo#v{kGD1nAPLgzP~ z0>#(gWM5zhGQbleI)e5Dp z{mViK`6&8F|2CA5a60>Z=!@&bIveCT9O@XS7@vvwu$IPHXm@jUSO~6QZKI#iqa966$cX-WdW=O}a@L>1m9+HkjjMVeYOv0n;{YxLv zc6Q~yRdI7;GKJ17F9CXC`~4C)sxTm?fID#Pg{(R zEA7DJD`dGbYmo?p7=elIOY6W|I>-JWx0V)Y_KyHZ=>g-qFfv4$Dk!-1&irnelw zYgSAnrI6HU$q_2R04J(~1~Z`k9i%p&v&Pzo1=GV65Wqy5PUO(cPgwOq&O_zM<^!}A zV(YnPu72L#>p+{PIWquv^VJW?+`+pafa>V+z-^SWaN*y;Z&j0qv*S5@1af_f3~w0~ zIp)G5Agv3Y5TBpgB#+=KxN# z$^2tO#5Y%Z6-&bW9bdi!Rdi26$eI!;3CyLhZr^>OC-g3K{0co$f6u4lx4>>zSB@7K zX#LrUC;WETPUExp%Tat+=afG2|6^bG^C!jD$c|fJ#lQmyb~7D&R^rBBKae)-U3Xjr z2KSwAftd9+op>J$$PMTmUlPfrK(Dq96QxY#7S3O8gC=-6T7CZ;5JAP%9DPk$F}^@^ zAN0F+V&hG@UG2)=1q^>OlJ|Cp{ndmHF!T~(?f#%YVdxmu=8k;W*PyzNJ)}@>>HWwN zVDS*%Myzu^VaJ{TRCa}z+xE}HyaWKG7S|4lF#};wgDO(2+HyKae4dvaU#Kg~wAj8O zfg1xVL$gEIOKf-Mxv=>CD%}?21~<&u3k9!wS&idO0gdPp5t!EcC2c2H7$5=a2Ag zQtD6Zb4<;5vp~3qI32eg^-iqi)wz7Mn{?5bciC#f%R5-eYE}FwEQ8Imy|24KCqk^1omK8ciVH4Y>VZyffu&2|EQ4memfO0+N1USNYQ&3a- zqFZ<22&%lwf^pcR!uEYzTfshvd8C0if2UEqZHCO(0>y9xh~Z!TD2GHB*_HNv1@~Z4 z6q|ZM0S2SvSH4KH5>Vp7Uk)S(T=YA4k5EZh!^nH|q%Ud*UWY5nj4TeNQb88I8&)3f zzE?7sZM`G3$w@D$d($zg3Qsd?L{Jt{TK4o%IGbNI7X3|=`a(NWba#D;=z2*?pdQoi zfDT;;1h!X-l{DXkS!Dj(9Vx%C*rygJ2n_Y*EkVe|A=yss7?x}=nY22)RXcXp^Go;O zpwl&fjC>ULSNUE05S_tI?o~fE%AAa!_MyfeHZtThz}9m6khth3q2X%ZRypCY_)_3x z8Y9{5tf~Ji(?foTuO?MZ>1|$PIxRL*|I|Y6qX9(b8pyG7rpJ%Dy}yxtB;@`HWbQ%Ct!#D2tU?`Z`dT&#)OQgx|qb6~FlTedP}<05YPP zOoxxRjMcC}jr}k5_AT6>4%2^0Zx5VvThQP2$z$#9y$d6`M_2jI=J{}H0c^psV4H91 z4-BbKMK5XjF-j=ORsQ>V?()sj2(UvLOa$xx68uf)+Z{~xXGbP)a)&gWxQ9#+DW30; z(iVtNB)`$89I=XNjrn*sW?cLBZ}lou;pn^k7(E_mmp&kjd1^_5Q!h8E)d|tt(YZQ3 zdGzU+XT%`cCClgv*{K87Av37w1G+paD6NzTNPS?bM|W#{K%&({hS7Cl8AyqikwLW3 zuznvS1yp_dO9DRO?PcUpzBdmPL_;C6Y9L8Lbh$_dTlLhaD;H0vYy>`qWyL0kjkO6A z($-Fe3*;NTN;KF68s8$}7`E@4D7mQUihf-+cCCGby*oJydj7WpZ*41>u%#iSc4*Ir z%f!Fo;#NV7;+UmLFTiCgyFvz;OC1)7fX2*vU@`*ugz@RZXP_ld+(3txed{C)lTI`X zwGCoYDCA7wek5v&;mdkII^QGF%4s{kdiHYz*af5M zUzeM_@zUy2YrIUqnV>n!(eJ~U;TJ*GpRinA4e^rsImSBiFrj5nXumiZ&H9t-7Lqj1 z<-QuMj@wNt58XN4?WcBohj&*x+3yh54BC5=AV(SXO^HVO%wfJ7gYG3HI>05Fr>gMe z8T_F5dW_+_T|CL{x{|jPr{s0sIk3}(K4kGRgA0BdsIw#pR#&z1{=q8#V>IWP^-4NM zuIZ~O(G+wkH<@8OFA5#JZDY^Hq4#?+qw zeDo|q-$07zGV8Ob$*J^zbwH;&pR~^`a+l16@+D&{w!U3)r4gDtwga}Vy? zYe-`7$2yqBe+L&{z6a*>_5{bV-4K7X(`f`og0t2%m)X0W-Ix24is+$~Zo4ihJM^bf z?c3mH5rCd}nDTI%!mH`&TpU@z%G=EqYiPAw(SbkT`3q|!tjfTwzSe$spbE{szx|Nz zT*Lg$-r4bn%T6a}vg?r_E)%nRhIWM_x{?6%;!SvN+i#N8SeH0Sy8arNKH{4IJw{?g zck_{kz3n*SGK&a@GIvos)1Q#`N`-@0Z=gM0cN%jbze(zIVQMnCde7a#VjOg^!Hs9# z1%1di&K3n)BnRK-0XKlz47#Xd;fEjZM}5<(^&!xZ^xueI)LhsFE8^;IsM5rxq3Q+@ z`GUS;St13C9GHby18zq3;M`^Y%Z#w`5g5)vXFoQT!8YLT#nd5*D1`=&CPpmf6CBYq z!%&|1le9)~uLCGY&NNn()*+r4i}aB-n7LpsG7d}QB@`f0rdYbL_d+a@AYDf(zfwqS z8Z$`$rex}x939CV_-m#Y^N?WX_$c5v1-iCxu-uiA0HA~+rIvKotUt7gCLB!+Y`#w* zZyRQkxJ&0ioq^>3b5BhBr$-eZeCAIX?{vi$T0VT~gu@)3qU{B2EKGjMF8gs4tzXva zCI)6LLTiWz?>!;l+r*$Bw4>yec_z)Z9o<`$o3XL>H;9e>d!C+k<^5pa5{+l7(XC7>Mp>Wuon4Wz*k6Dq0MdcmRDT%G-@**%g+3xd{$8YM zm86b!cAO#YNtVRhN1^x0`msFI#Z83bx(??wDds)@O+-4#0_Pr>QI^co&2Q3PD3VCy z_AECKg50j0lTj@MabSc;H}Innm~e`%#L1bB)3!-al>-@+{aP0^`#JhcSs;5lOqcHX zQl1|4f>G-qk+H<<=EbWmEfhESd!-X9J`A)SpIovmc}TI(6q|*Keac z`m4>ve4@f6@QxAEy`qO%%bf0Ye_gY&vxM}iB?9@yWHmUt!%>SIO>V&&+)!%O-|CkY zP=308nLpXZp* zjSCR)w11_O0g^@2N%rk1=kV6dl9-dxLN)oi<8@y1`qOt4 z{HZ0Ig&FZ^-L)&YL$KdtGh=q_&%u=Fzj;p@{|iLu-2H|f4ix#xe`6^9e}iQI?~aw9iK8FyWS0=eI~Te9d#Ld^I8Q4e~OveF6He z@vpbW&*$2w=zQn19+&UPRz2*TWeX-$9wiBA4G_rO0k0|V4MtJ{wH(NVg_?JbktdDM2x6i+%4ctsurkB;Y);w{eNEO)G z$BCmX@(L|W6&!q-4Y0ys+p$`9+NhI#=Yr}`xa-Q9G%cQ%?xkneY#C1DBr2p=uTD=9 z6?Gohy!xA2V5*CFY1#>yalK*H)b$IYtAfOE6ZdiRP&Twlj^s!?-0o25%^f<2tXBX7 zI9S^bdFXPqoc+KpdYMD&=zkFm@E2<-{u4{({&JCAY^f5WZwrbi3Nm_ug&|GrAKRu# zg}%)TkXH>-*z?^rUeW|m-U=9U=9gY7G0Gsg@^}wplSWrE{o?{j!~f6%$zROoOfSG} zeyFPBl3BUwND&f|TJiF0(jr-Mwz*Qof!}ColJn~Uv_Tv3UnsqXbla4n!C%_OO#&PD zRZ{di(aN1WV#{vsHpy?_#>=a^>V}HdO9yAY_t+U9o;+FLlqETHT<=%BxVbg-=Ee#oV(2WI{0)p+OVcnjQR=;ja&}&d&z5Rf@gCTq}*Za}X zSdOMQ&v|^A4g)>}^zjAo8dVeb7bQ4cd*(mZYy%fph9k)y-wv~wQu_7hh>ITyYErfV z9KYa3FS7m*EWk_BmelG?GsK&p_F#DATQ^^2%$BNDyABi6K8Qb_9Tw4l$p-#2f_3C; z2!QwW1CsTmCybBK89_@6rb791gQh|h;=FbdvCCLp)mb5?r8{3^c9d5C>*;z2+LQ4O z*X#j@%S@J!kE+BkvLzxG?`yBB_@{okKe@XAe0 znLDGrBGy;3;P0bxqAZ#-v5s}JJ!t~yZjz4^#pB7ZLe#PdNsht1lIZau2P~c*Odh`n zu9$>LXHDk})mGxy*TkX&eKZ;4oMED6>YFCymR%;fwz_Jl)cox31k4whJn7u&vh}jR z?RosMG8UM~V0&o3t(SxL(EJn4tWwdkUW3E=O)e_Ey-;Yi>|fYeU<+v{NN`j{c}jc( zHK*KFkP(o`S$+Zg4K!ucx2`cMD0406>)0Nz#BlN1E&y782GIJDLv<1Cq)Gf^Ck?DW zgb8Tl+fh(-5s=xmW_sl4ZG|brDbszQM%6ww^8aNx$T@p{VWSW6E%jf31er&Vz%r^j zB99t8t_64ghF^w*@5^ZNzVy#&>m`95iQiYzX!{MwIsLJ)D(6iik~L?RIAQfm8}akC)u}2WtWot#%>B{wIQP3fy-GTV>@{d_gwuk;>JFK9W+4F zyIC@fDkIeP8Gk{3rNDYtv=U@WLe-cdi z&++`J+j@{72dTRV+B#?bxo=-INlSXk7ga|Bfb?dM>FnvwW!f&ON~l`~v_kvl-h~My z0R{E$ac`zqUXsU>f|-9&1^2-TV=+urPXrUygFyh5s5(wkZ7-hYuF$(Vf%z@XK=HJ% z{uT}FF^A|e*}I`%fNed-Y#otHk1h-d;DI`)N=8dbPl#CYn*#=HmR*N!mR0>aUlBNO zZZ&>HUIA1l4xCC;xk;vGUK^T4Ft_W28EszsLq7uIsC@2pD;nDVUh{b%st^LJxRolH zZCht=*95%1a|{T09hdDk>JgQRx?~5P`pqXgyh-{7c&M!C(8acosqzAvW=wc?M~%2`sV*iJ-hwGz6btS*p z^{_*SKZ$kj_0`ro6#+re(vN%lZ+3<7eQHX z5gcd7nW4zJ^`z$WVoa8C01 zP8|4@ogD^DZw=OlUuA5WGY6P)AlP#^`pcfX_WD%dBjOg~-YpG%0ICnzJ$_WFR@8iG z_4Y&I=pM)g5N0u&gPd})5=sZ`bPbVUC6;>cM>~4e^o_h?*OwLoM%tVC;AisER_==>Z_}y?~na2AVQ>z@FMwRt_ie!0(`9R9v&i$_Ou`h5{j(^DhN z`kml&!~&-JlgAYUM!#f^A6_i5)G)w0g&IPpsxlA&z8F_AkM+cCmg~ z^j0pCEyrNKJt}X6{&35i?&%T6esq|!l#Ce@o1jtct0Wn>%7v&;4bwsomhrr`5PVu* zSb$ZGLXB$1TELf=hQ;1{FR4W^=Zbpn;*}w6e1Q&>NkWf!EUuYf+Kv>wOsqG&JjmV* zG!(;^`S)VlOQ0;{djFH=91E~6{kJc!o@ss>eN47Jro)YC1~?HcW=3cqe-{c`I3l93 z?d<{!sr08WpCHdExQZ=z2j@}Y0? zOoh~aX{7L%xwL_JsrZM&=-Z=e4nqB5(0SWt-8&sdr?vMU^I9(RXe*Fc6X?uzo()W^ zUg8e*+@Mf&blt1eoG59F!RVSp%FA{_?`70H8K-Wa07RhzSI51lVf7 z8ya~{xqiLd7_7Q(1sdXaWs=YuYoIb5hp7xZ&I;}@*WA-}0Ke{EU1)tPh4(Ma9; zwFDO??>Ek05Py3x;ncnZmdP}W)cj;Zf3DuCiz8mjUI!J(9*1{xtEFCf*wLgIDBcZ% zI!Md#_>_NO0hbd8?G_WjCyj&c%kN!u4vnajj}xZqTv3I)5Uti_!uPLj?!L5}_|#G> zD=RB-e%M|AbtYh2TC?-SX2M`=d(Z%JcLM2*tsk(JmGbZOGq3&P`0uw(wyx7hP-S5y zmT(0Nb}%Z{x}NR9^V5lE5&XbT@}5kjf#klEB z{KlFoqr^2{4`k#rycW^3V)WztKkU7ARFv=cHaasfbT^1FbT^0~=uiUE-3=oxt)xRY z3?Pj-ASvA?h%_>UG=d693I=5W>UqHU#P_@2_5Rj*&spoNb^aO{N1kWyXW!S}``Y`y zcDR#n(uZve|3I2_mUzoEwf>IeHeb87GxxF;-EAQK20v4;#Ed_I7#OAj5g7fp=UP~= znFIVYSo)bUAVKQYqXRG+wxiWLPOsDMK53)Zp_x06ZHK&CT)@)-QMKgZ6bH5x%8ZT;L zHqv}rsKym~ac;POx%(MKHIu@}&#&)V6@+}-d5sEJo;shT^RpL9Xf`yz^>2RZT;Zb% z>lm|^`Q$Xc(ceWVY%@5u_E4(Z|C;|RQfq%`@MGR{h0aGy<%@Iv70lNA%eS%1%U!v@ z0KV?)rQD{uY}(dYDfP`OGmpr0p49)* z_^ki0$oP3NOuWqE3{3NX|18w^y#X+5Cp22&o?N{-@mk(u+8pNM;K9c;c-eZGe3)?> zPI`4>@n8Yrj44rw-^d@iydxz@=#gnL{wPl7F3$e4nD{>Y)2!L)Y)e=1TVOhmm`zI^ z*0u7E+p5o>XdoB}sAzStA?W!s^)k$OSg))ZKI7qwF4yxHZ1yh$PWRhc zyBBIzHJ7nxYj*ZG?3`(P1);t2fCG|Ez@VNirhNv#e+}xHANVG$Se|%Re!0^sOMi{B;6bmUBsQ+M54 z0?uXqzaRrxetP9hr~v>E^K?PpdUO)cPi0S_0;7Chfhn%Ro!@LuaB%gO1u40nX^8#l zuWb9-U)j{x>GyG;QbL;7$oo1VgFDxb`f06B-x@tR z-pIWLSdQ820IOT$a}R5~=5VEQt;gg7Os!>Ked68LUX&(M_1uxm7edN>xR!f&GUQ_@ zz^wxRajUZO%75$1d;cml|Cgvx_Qfy9J2iJdHCQ?7y_$|!zje?r>8AR4?KM%WAnd`O ze}6z(S3v3c=np-+xt`SVlczArquj8DBmQ^NAFRrHY$q?TqX)$gHj6%Vetv(u>)>KA z`ZV6^boKU=ll!w<7mIYlR)x84E3Zf0;PzjUbN3J!VW&QOu2)!0C{w(FK|p~-SMLyx zS9icc?K*A3q?H3R2y7bleIerjoWY+++BXQIw>qLu&1 ziKNJo3_bH_-CuYK^yL(1dI`b`0ib?6X~l!Q5kMYn;GX0f0f(NxjcW=PIUShI0$*G{ z0(hjsDMb|R@_7GU>x9$&x!b4IILiNzc6XfdxZR~dPW)W?yAWx}mzC%MHBH^IEN+uh zuheXu^|DKq`h$IAF(WThpYRLz3JiszvZz8{wI>fhQtDzUuvu78~2!@fwb)1&*7d7SU_&CVsu zs-(a6cp8Rm3=`hf9_~+ETh(QdW5QGE0-6NQg5{=1$;i7$6;|oD_O8Cfeei6qJpINV zFe^}0^*n^>pHE!{SO;G`IJkL{HAS<0pd>2D{ z!DXRf@c5++Z{RcEp&bR*Q1y4zNx*Y;`ro1ftcj^_Vu&& zXkI#L+6MFq5U)|sh~paH88b*S)RF*3EuJ61{>{y_ z0~+NGBWD`rMr1GJ>UN)b=dNBGtYZ9@K6n88lKc9U^G8V6tEeZy`HKLx>K@K3Ihx;N zEAb37O5WWZes-NHD8$3>^U+wxM%mMAUzWpf11-D_<5$m`Mr(wQkMU&X|78+?Q8WNa zql`%jCA-#tnK3h#SlG zt?j){QJ89Z9kP@BeT#Vq4g7)OYp1=}g1)XBdD(uERgeZPBz%O$zw$}I`hR+E!6J7y zQLXNusbl9VV{@?I!%&13paldxOutl8&ty-F0NGQZ|J+34Z#t%zJYowVRfjt{YYUzNvXB39IRsf`{d_7QR&&)P;o%49zF{F-x)I6ct{!cmkj{`nv=En0ldfDJ@ z_vVAUds7d-t5a_#J|0>EDh8)(PkpM*m&a#z-k>8@GTVo5&UrXJ>ZeMr{NVc+T1cIvEEcG~^b$la&f7PRw z*3A>8lZ4ir`bJh|y9F5DoF`!bU6XtRP6be%S@xX0m4xjb*vgI)M%ozTo_#u)u#&Cx@VS1q_ z-vGk_*#7U|KR=nvb?-b1IeFJI68AcRmSRGmrdsPWZ?f90MTH0%bN14&ibVkum9rtn zKwCFI{~PVB1^PM~Zo8)^7Y}9r@CCfGXC9{q4_ocPTp=?cVYo~ z;<{GI{)gh{W_LPMXj#6MbRiL?8#8P*eE{8*Qm^$o?_7x4`~8t_3G2acE?^-o|7)U$ zVarP

6Na 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