From aa89f7e536d6d5e7d60a3f00e4d2aa78f696b92b Mon Sep 17 00:00:00 2001 From: 0xfnzero <0xfnzero@users.noreply.github.com> Date: Fri, 21 Aug 2026 13:24:11 +0800 Subject: [PATCH 1/5] Add Flutter mobile app and monorepo packaging --- .dockerignore | 14 +- .github/workflows/ci.yml | 34 +- .gitignore | 46 +- BOT_INTEGRATION.md | 26 +- BOT_INTEGRATION_CN.md | 26 +- Cargo.lock | 686 +-- Cargo.toml | 92 +- Dockerfile | 22 +- INTERACTIVE_TUTORIAL.md | 4 +- INTERACTIVE_TUTORIAL_CN.md | 4 +- Makefile | 158 +- README.md | 547 ++- README_CN.md | 517 ++- UI_USER_GUIDE.md | 23 +- UI_USER_GUIDE_CN.md | 23 +- USER_GUIDE.md | 18 +- USER_GUIDE_CN.md | 16 +- {ui => apps/desktop}/PROGRAM_DEPLOYMENT.md | 16 +- {ui => apps/desktop}/PROGRAM_DEPLOYMENT_CN.md | 16 +- apps/desktop/README.md | 59 + {ui => apps/desktop}/components.json | 0 {ui => apps/desktop}/eslint.config.mjs | 0 {ui => apps/desktop}/next.config.ts | 1 + {ui => apps/desktop}/package-lock.json | 342 +- {ui => apps/desktop}/package.json | 15 +- {ui => apps/desktop}/postcss.config.js | 0 .../desktop}/public/token-icons/bonk.jpg | Bin .../desktop}/public/token-icons/jitosol.png | Bin .../desktop}/public/token-icons/jto.webp | Bin .../desktop}/public/token-icons/jup.png | Bin .../desktop}/public/token-icons/msol.png | Bin .../desktop}/public/token-icons/pyth.png | Bin .../desktop}/public/token-icons/solana.png | Bin .../desktop}/public/token-icons/usdc.png | Bin .../desktop}/public/token-icons/usdt.png | Bin .../desktop}/public/token-icons/wif.jpg | Bin .../desktop}/scripts/assert-no-next-dev.cjs | 0 .../scripts/check-sensitive-inputs.cjs | 0 {ui => apps/desktop}/scripts/desktop-dev.cjs | 41 +- apps/desktop/scripts/dev-stack.cjs | 89 + {ui => apps/desktop}/scripts/ensure-out.cjs | 0 .../desktop}/scripts/free-api-port.cjs | 4 +- apps/desktop/scripts/kill-dev-processes.cjs | 141 + .../scripts/refresh-desktop-icons.cjs | 4 +- .../scripts/test-dependency-compat.cjs | 4 +- .../desktop}/scripts/test-devnet-airdrop.cjs | 6 +- .../desktop}/scripts/test-program-deploy.cjs | 24 +- {ui => apps/desktop}/src-tauri/.gitignore | 0 {ui => apps/desktop}/src-tauri/Cargo.toml | 17 +- {ui => apps/desktop}/src-tauri/build.rs | 0 .../desktop}/src-tauri/capabilities/dapp.json | 18 +- .../src-tauri/capabilities/default.json | 11 +- apps/desktop/src-tauri/icons/128x128.png | Bin 0 -> 31924 bytes apps/desktop/src-tauri/icons/128x128@2x.png | Bin 0 -> 104220 bytes apps/desktop/src-tauri/icons/32x32.png | Bin 0 -> 2851 bytes apps/desktop/src-tauri/icons/64x64.png | Bin 0 -> 9522 bytes .../src-tauri/icons/Square107x107Logo.png | Bin 0 -> 23124 bytes .../src-tauri/icons/Square142x142Logo.png | Bin 0 -> 38171 bytes .../src-tauri/icons/Square150x150Logo.png | Bin 0 -> 41768 bytes .../src-tauri/icons/Square284x284Logo.png | Bin 0 -> 124306 bytes .../src-tauri/icons/Square30x30Logo.png | Bin 0 -> 2563 bytes .../src-tauri/icons/Square310x310Logo.png | Bin 0 -> 143680 bytes .../src-tauri/icons/Square44x44Logo.png | Bin 0 -> 4847 bytes .../src-tauri/icons/Square71x71Logo.png | Bin 0 -> 11333 bytes .../src-tauri/icons/Square89x89Logo.png | Bin 0 -> 17000 bytes apps/desktop/src-tauri/icons/StoreLogo.png | Bin 0 -> 6163 bytes .../android/mipmap-anydpi-v26/ic_launcher.xml | 0 .../icons/android/mipmap-hdpi/ic_launcher.png | Bin 0 -> 4886 bytes .../mipmap-hdpi/ic_launcher_foreground.png | Bin 0 -> 47481 bytes .../android/mipmap-hdpi/ic_launcher_round.png | Bin 0 -> 5012 bytes .../icons/android/mipmap-mdpi/ic_launcher.png | Bin 0 -> 4620 bytes .../mipmap-mdpi/ic_launcher_foreground.png | Bin 0 -> 23426 bytes .../android/mipmap-mdpi/ic_launcher_round.png | Bin 0 -> 4764 bytes .../android/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 14576 bytes .../mipmap-xhdpi/ic_launcher_foreground.png | Bin 0 -> 78075 bytes .../mipmap-xhdpi/ic_launcher_round.png | Bin 0 -> 15972 bytes .../android/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 29914 bytes .../mipmap-xxhdpi/ic_launcher_foreground.png | Bin 0 -> 154676 bytes .../mipmap-xxhdpi/ic_launcher_round.png | Bin 0 -> 32665 bytes .../android/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 48778 bytes .../mipmap-xxxhdpi/ic_launcher_foreground.png | Bin 0 -> 247202 bytes .../mipmap-xxxhdpi/ic_launcher_round.png | Bin 0 -> 54090 bytes .../android/values/ic_launcher_background.xml | 0 .../src-tauri/icons/dapp-wallet-icon.png | Bin 0 -> 189239 bytes .../desktop}/src-tauri/icons/icon-preview.png | Bin apps/desktop/src-tauri/icons/icon-source.png | Bin 0 -> 1659216 bytes apps/desktop/src-tauri/icons/icon.icns | Bin 0 -> 1841909 bytes apps/desktop/src-tauri/icons/icon.ico | Bin 0 -> 126170 bytes apps/desktop/src-tauri/icons/icon.png | Bin 0 -> 325920 bytes .../src-tauri/icons/ios/AppIcon-20x20@1x.png | Bin 0 -> 1197 bytes .../icons/ios/AppIcon-20x20@2x-1.png | Bin 0 -> 3895 bytes .../src-tauri/icons/ios/AppIcon-20x20@2x.png | Bin 0 -> 3895 bytes .../src-tauri/icons/ios/AppIcon-20x20@3x.png | Bin 0 -> 8113 bytes .../src-tauri/icons/ios/AppIcon-29x29@1x.png | Bin 0 -> 2205 bytes .../icons/ios/AppIcon-29x29@2x-1.png | Bin 0 -> 7628 bytes .../src-tauri/icons/ios/AppIcon-29x29@2x.png | Bin 0 -> 7628 bytes .../src-tauri/icons/ios/AppIcon-29x29@3x.png | Bin 0 -> 15815 bytes .../src-tauri/icons/ios/AppIcon-40x40@1x.png | Bin 0 -> 3895 bytes .../icons/ios/AppIcon-40x40@2x-1.png | Bin 0 -> 13514 bytes .../src-tauri/icons/ios/AppIcon-40x40@2x.png | Bin 0 -> 13514 bytes .../src-tauri/icons/ios/AppIcon-40x40@3x.png | Bin 0 -> 27547 bytes .../src-tauri/icons/ios/AppIcon-512@2x.png | Bin 0 -> 930189 bytes .../src-tauri/icons/ios/AppIcon-60x60@2x.png | Bin 0 -> 27547 bytes .../src-tauri/icons/ios/AppIcon-60x60@3x.png | Bin 0 -> 56297 bytes .../src-tauri/icons/ios/AppIcon-76x76@1x.png | Bin 0 -> 12421 bytes .../src-tauri/icons/ios/AppIcon-76x76@2x.png | Bin 0 -> 41959 bytes .../icons/ios/AppIcon-83.5x83.5@2x.png | Bin 0 -> 49541 bytes .../permissions/biometric_wallet.toml | 19 + apps/desktop/src-tauri/permissions/dapp.toml | 34 + .../src-tauri/permissions/downloads.toml | 0 .../src-tauri/permissions/open_external.toml | 0 apps/desktop/src-tauri/permissions/proxy.toml | 4 + .../permissions/source_directory.toml | 0 apps/desktop/src-tauri/src/lib.rs | 2068 +++++++++ {ui => apps/desktop}/src-tauri/src/main.rs | 0 .../desktop}/src-tauri/tauri.conf.json | 6 +- .../src-tauri/tauri.desktop-dev.conf.json | 0 .../desktop}/src/app/[locale]/layout.tsx | 0 .../desktop}/src/app/[locale]/page.tsx | 3002 ++++++++++++- apps/desktop/src/app/favicon.ico | Bin 0 -> 126170 bytes apps/desktop/src/app/globals.css | 786 ++++ {ui => apps/desktop}/src/app/layout.tsx | 2 +- {ui => apps/desktop}/src/app/not-found.tsx | 0 {ui => apps/desktop}/src/app/page.tsx | 0 .../desktop}/src/components/FieldHelp.tsx | 0 .../src/components/LanguageSwitcher.tsx | 84 + .../src/components/SavedWalletPicker.tsx | 0 .../desktop}/src/components/providers.tsx | 0 .../desktop}/src/components/ui/button.tsx | 0 .../desktop}/src/components/ui/card.tsx | 0 .../desktop}/src/components/ui/input.tsx | 0 .../desktop}/src/components/ui/label.tsx | 0 .../desktop}/src/components/ui/sonner.tsx | 0 .../desktop}/src/components/ui/tabs.tsx | 0 .../desktop}/src/components/ui/textarea.tsx | 0 .../desktop}/src/hooks/useTranslations.ts | 0 {ui => apps/desktop}/src/i18n/config.ts | 0 {ui => apps/desktop}/src/i18n/request.ts | 0 .../desktop}/src/lib/anchorIdl.test.ts | 0 {ui => apps/desktop}/src/lib/anchorIdl.ts | 0 {ui => apps/desktop}/src/lib/api.ts | 0 {ui => apps/desktop}/src/lib/apiFetch.ts | 45 +- {ui => apps/desktop}/src/lib/apiPath.test.ts | 0 {ui => apps/desktop}/src/lib/apiPath.ts | 0 .../desktop}/src/lib/appStorage.test.ts | 0 {ui => apps/desktop}/src/lib/appStorage.ts | 56 +- .../desktop}/src/lib/localTokenRegistry.ts | 0 {ui => apps/desktop}/src/lib/openExternal.ts | 0 .../desktop}/src/lib/programDeploy.test.ts | 0 {ui => apps/desktop}/src/lib/programDeploy.ts | 0 .../desktop}/src/lib/programWorkspace.test.ts | 4 +- .../desktop}/src/lib/programWorkspace.ts | 4 +- {ui => apps/desktop}/src/lib/utils.ts | 0 {ui => apps/desktop}/src/lib/walletAuth.ts | 0 {ui => apps/desktop}/src/messages/en.json | 154 +- {ui => apps/desktop}/src/messages/zh.json | 152 +- {ui => apps/desktop}/tailwind.config.js | 0 {ui => apps/desktop}/tsconfig.json | 0 .../vendor/brace-expansion-compat/index.cjs | 2 +- .../vendor/brace-expansion-compat/index.mjs | 2 +- .../brace-expansion-compat/package.json | 6 +- apps/mobile/.gitignore | 48 + apps/mobile/.metadata | 33 + apps/mobile/README.md | 33 + apps/mobile/analysis_options.yaml | 16 + apps/mobile/android/.gitignore | 14 + apps/mobile/android/app/build.gradle.kts | 94 + .../android/app/src/main/AndroidManifest.xml | 48 + .../safe/fnzero_safe_mobile/MainActivity.kt | 5 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + apps/mobile/android/build.gradle.kts | 24 + apps/mobile/android/gradle.properties | 6 + .../gradle/wrapper/gradle-wrapper.properties | 5 + apps/mobile/android/key.properties.example | 4 + apps/mobile/android/settings.gradle.kts | 26 + apps/mobile/flutter_rust_bridge.yaml | 5 + apps/mobile/ios/.gitignore | 34 + .../mobile/ios/Flutter/AppFrameworkInfo.plist | 24 + apps/mobile/ios/Flutter/Debug.xcconfig | 2 + apps/mobile/ios/Flutter/Release.xcconfig | 2 + .../mobile/ios/FnzeroSafeMobileBridge.podspec | 12 + apps/mobile/ios/Podfile | 47 + apps/mobile/ios/Podfile.lock | 27 + .../ios/Runner.xcodeproj/project.pbxproj | 762 ++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/swiftpm/Package.resolved | 59 + .../xcshareddata/xcschemes/Runner.xcscheme | 119 + .../contents.xcworkspacedata | 10 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/swiftpm/Package.resolved | 59 + apps/mobile/ios/Runner/AppDelegate.swift | 16 + .../AppIcon.appiconset/Contents.json | 122 + .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 295 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 450 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 282 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 462 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 704 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 406 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 586 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 862 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 1674 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 762 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 1226 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 1418 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 + .../ios/Runner/Base.lproj/Main.storyboard | 26 + apps/mobile/ios/Runner/Info.plist | 74 + .../ios/Runner/Runner-Bridging-Header.h | 1 + apps/mobile/ios/Runner/SceneDelegate.swift | 6 + apps/mobile/ios/Runner/bridge_generated.h | 1 + apps/mobile/ios/RunnerTests/RunnerTests.swift | 12 + apps/mobile/lib/main.dart | 8 + apps/mobile/lib/src/app.dart | 153 + apps/mobile/lib/src/bridge/generated/api.dart | 1552 +++++++ .../src/bridge/generated/frb_generated.dart | 3601 +++++++++++++++ .../bridge/generated/frb_generated.io.dart | 933 ++++ .../bridge/generated/frb_generated.web.dart | 935 ++++ apps/mobile/lib/src/bridge/mobile_bridge.dart | 827 ++++ .../lib/src/bridge/mobile_bridge_backend.dart | 176 + .../src/bridge/mobile_bridge_generated.dart | 729 +++ .../src/bridge/mobile_bridge_provider.dart | 49 + apps/mobile/lib/src/bridge/mobile_models.dart | 444 ++ apps/mobile/lib/src/features/app_scope.dart | 24 + .../lib/src/features/assets_screen.dart | 152 + .../lib/src/features/confirmation_screen.dart | 484 ++ .../lib/src/features/dapp_browser_screen.dart | 429 ++ .../lib/src/features/dashboard_screen.dart | 115 + .../lib/src/features/feature_screen.dart | 156 + .../lib/src/features/mobile_capabilities.dart | 24 + .../lib/src/features/placeholder_screen.dart | 40 + .../lib/src/features/scanner_screen.dart | 80 + .../lib/src/features/security_screen.dart | 153 + apps/mobile/lib/src/features/send_screen.dart | 234 + .../lib/src/features/squads_screen.dart | 429 ++ .../lib/src/features/wallets_screen.dart | 298 ++ .../lib/src/security/biometric_gate.dart | 43 + .../lib/src/storage/mobile_wallet_store.dart | 128 + apps/mobile/pubspec.lock | 746 ++++ apps/mobile/pubspec.yaml | 32 + .../mobile/test/mobile_capabilities_test.dart | 11 + apps/mobile/test/widget_test.dart | 14 + apps/mobile/tool/bootstrap_mobile.sh | 55 + apps/mobile/tool/build_android_native.sh | 36 + apps/mobile/tool/build_ios_native.sh | 61 + apps/mobile/tool/generate_bridge.sh | 14 + build.sh | 6 +- context7.json | 2 +- crates/app-services/Cargo.toml | 25 + crates/app-services/src/lib.rs | 2485 +++++++++++ crates/app-services/src/squads_v4.rs | 713 +++ crates/core/Cargo.toml | 79 + .../core/examples}/bot_example.rs | 14 +- .../core/examples}/test_decrypt.rs | 6 +- {src => crates/core/src}/bot_helper.rs | 6 +- .../core/src}/hardware_fingerprint.rs | 1 + {src => crates/core/src}/interactive.rs | 10 +- {src => crates/core/src}/lib.rs | 20 +- {src => crates/core/src}/main.rs | 60 +- {src => crates/core/src}/operations.rs | 7 +- {src => crates/core/src}/secure_totp.rs | 14 +- {src => crates/core/src}/security_question.rs | 0 {src => crates/core/src}/solana_utils/cli.rs | 0 {src => crates/core/src}/solana_utils/mod.rs | 4 +- .../core/src}/solana_utils/pumpfun_sell.rs | 0 .../core/src}/solana_utils/pumpswap_sell.rs | 0 .../core/src}/solana_utils/solana_ops.rs | 0 {src => crates/core/src}/totp.rs | 2 +- {ui => crates/desktop-api}/Cargo.toml | 12 +- .../desktop-api/src}/main.rs | 1175 ++++- .../desktop-api/src}/program_deploy.rs | 0 .../desktop-api/src}/program_source_build.rs | 10 +- .../desktop-api/src}/squads_v4.rs | 0 .../desktop-api/src}/wallet_store.rs | 25 +- crates/mobile-bridge/Cargo.toml | 16 + crates/mobile-bridge/src/api.rs | 1205 +++++ crates/mobile-bridge/src/frb_generated.rs | 3962 +++++++++++++++++ crates/mobile-bridge/src/lib.rs | 2 + docs/mobile/INTERNAL_TEST_CHECKLIST.md | 65 + examples/README.md | 26 +- packages/shared-contracts/README.md | 8 + startup-example.sh | 2 +- ui/README.md | 74 - ui/src-tauri/icons/128x128.png | Bin 14902 -> 0 bytes ui/src-tauri/icons/128x128@2x.png | Bin 39697 -> 0 bytes ui/src-tauri/icons/32x32.png | Bin 2322 -> 0 bytes ui/src-tauri/icons/64x64.png | Bin 5998 -> 0 bytes ui/src-tauri/icons/Square107x107Logo.png | Bin 11713 -> 0 bytes ui/src-tauri/icons/Square142x142Logo.png | Bin 16923 -> 0 bytes ui/src-tauri/icons/Square150x150Logo.png | Bin 18468 -> 0 bytes ui/src-tauri/icons/Square284x284Logo.png | Bin 44387 -> 0 bytes ui/src-tauri/icons/Square30x30Logo.png | Bin 2075 -> 0 bytes ui/src-tauri/icons/Square310x310Logo.png | Bin 50320 -> 0 bytes ui/src-tauri/icons/Square44x44Logo.png | Bin 3646 -> 0 bytes ui/src-tauri/icons/Square71x71Logo.png | Bin 6934 -> 0 bytes ui/src-tauri/icons/Square89x89Logo.png | Bin 9269 -> 0 bytes ui/src-tauri/icons/StoreLogo.png | Bin 4355 -> 0 bytes .../icons/android/mipmap-hdpi/ic_launcher.png | Bin 4314 -> 0 bytes .../mipmap-hdpi/ic_launcher_foreground.png | Bin 20607 -> 0 bytes .../android/mipmap-hdpi/ic_launcher_round.png | Bin 4314 -> 0 bytes .../icons/android/mipmap-mdpi/ic_launcher.png | Bin 4073 -> 0 bytes .../mipmap-mdpi/ic_launcher_foreground.png | Bin 11918 -> 0 bytes .../android/mipmap-mdpi/ic_launcher_round.png | Bin 4073 -> 0 bytes .../android/mipmap-xhdpi/ic_launcher.png | Bin 10322 -> 0 bytes .../mipmap-xhdpi/ic_launcher_foreground.png | Bin 30158 -> 0 bytes .../mipmap-xhdpi/ic_launcher_round.png | Bin 10322 -> 0 bytes .../android/mipmap-xxhdpi/ic_launcher.png | Bin 17413 -> 0 bytes .../mipmap-xxhdpi/ic_launcher_foreground.png | Bin 53786 -> 0 bytes .../mipmap-xxhdpi/ic_launcher_round.png | Bin 17413 -> 0 bytes .../android/mipmap-xxxhdpi/ic_launcher.png | Bin 25679 -> 0 bytes .../mipmap-xxxhdpi/ic_launcher_foreground.png | Bin 81960 -> 0 bytes .../mipmap-xxxhdpi/ic_launcher_round.png | Bin 25679 -> 0 bytes ui/src-tauri/icons/icon-source.png | Bin 258572 -> 0 bytes ui/src-tauri/icons/icon.icns | Bin 801941 -> 0 bytes ui/src-tauri/icons/icon.ico | Bin 69483 -> 0 bytes ui/src-tauri/icons/icon.png | Bin 110398 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-20x20@1x.png | Bin 976 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-20x20@2x-1.png | Bin 2839 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-20x20@2x.png | Bin 2839 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-20x20@3x.png | Bin 4990 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-29x29@1x.png | Bin 1793 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-29x29@2x-1.png | Bin 4756 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-29x29@2x.png | Bin 4756 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-29x29@3x.png | Bin 8234 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-40x40@1x.png | Bin 2839 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-40x40@2x-1.png | Bin 7472 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-40x40@2x.png | Bin 7472 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-40x40@3x.png | Bin 12689 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-512@2x.png | Bin 250274 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-60x60@2x.png | Bin 12689 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-60x60@3x.png | Bin 22407 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-76x76@1x.png | Bin 6953 -> 0 bytes ui/src-tauri/icons/ios/AppIcon-76x76@2x.png | Bin 17806 -> 0 bytes .../icons/ios/AppIcon-83.5x83.5@2x.png | Bin 20000 -> 0 bytes ui/src-tauri/permissions/dapp.toml | 19 - ui/src-tauri/permissions/proxy.toml | 4 - ui/src-tauri/src/lib.rs | 954 ---- ui/src/app/favicon.ico | Bin 25931 -> 0 bytes ui/src/app/globals.css | 105 - ui/src/components/LanguageSwitcher.tsx | 44 - 359 files changed, 32970 insertions(+), 2798 deletions(-) mode change 100755 => 100644 Cargo.toml rename {ui => apps/desktop}/PROGRAM_DEPLOYMENT.md (85%) rename {ui => apps/desktop}/PROGRAM_DEPLOYMENT_CN.md (83%) create mode 100644 apps/desktop/README.md rename {ui => apps/desktop}/components.json (100%) rename {ui => apps/desktop}/eslint.config.mjs (100%) rename {ui => apps/desktop}/next.config.ts (97%) rename {ui => apps/desktop}/package-lock.json (97%) rename {ui => apps/desktop}/package.json (78%) rename {ui => apps/desktop}/postcss.config.js (100%) rename {ui => apps/desktop}/public/token-icons/bonk.jpg (100%) rename {ui => apps/desktop}/public/token-icons/jitosol.png (100%) rename {ui => apps/desktop}/public/token-icons/jto.webp (100%) rename {ui => apps/desktop}/public/token-icons/jup.png (100%) rename {ui => apps/desktop}/public/token-icons/msol.png (100%) rename {ui => apps/desktop}/public/token-icons/pyth.png (100%) rename {ui => apps/desktop}/public/token-icons/solana.png (100%) rename {ui => apps/desktop}/public/token-icons/usdc.png (100%) rename {ui => apps/desktop}/public/token-icons/usdt.png (100%) rename {ui => apps/desktop}/public/token-icons/wif.jpg (100%) rename {ui => apps/desktop}/scripts/assert-no-next-dev.cjs (100%) rename {ui => apps/desktop}/scripts/check-sensitive-inputs.cjs (100%) rename {ui => apps/desktop}/scripts/desktop-dev.cjs (83%) create mode 100644 apps/desktop/scripts/dev-stack.cjs rename {ui => apps/desktop}/scripts/ensure-out.cjs (100%) rename {ui => apps/desktop}/scripts/free-api-port.cjs (83%) create mode 100644 apps/desktop/scripts/kill-dev-processes.cjs rename {ui => apps/desktop}/scripts/refresh-desktop-icons.cjs (94%) rename {ui => apps/desktop}/scripts/test-dependency-compat.cjs (99%) rename {ui => apps/desktop}/scripts/test-devnet-airdrop.cjs (95%) rename {ui => apps/desktop}/scripts/test-program-deploy.cjs (92%) rename {ui => apps/desktop}/src-tauri/.gitignore (100%) rename {ui => apps/desktop}/src-tauri/Cargo.toml (66%) rename {ui => apps/desktop}/src-tauri/build.rs (100%) rename {ui => apps/desktop}/src-tauri/capabilities/dapp.json (55%) rename {ui => apps/desktop}/src-tauri/capabilities/default.json (56%) create mode 100644 apps/desktop/src-tauri/icons/128x128.png create mode 100644 apps/desktop/src-tauri/icons/128x128@2x.png create mode 100644 apps/desktop/src-tauri/icons/32x32.png create mode 100644 apps/desktop/src-tauri/icons/64x64.png create mode 100644 apps/desktop/src-tauri/icons/Square107x107Logo.png create mode 100644 apps/desktop/src-tauri/icons/Square142x142Logo.png create mode 100644 apps/desktop/src-tauri/icons/Square150x150Logo.png create mode 100644 apps/desktop/src-tauri/icons/Square284x284Logo.png create mode 100644 apps/desktop/src-tauri/icons/Square30x30Logo.png create mode 100644 apps/desktop/src-tauri/icons/Square310x310Logo.png create mode 100644 apps/desktop/src-tauri/icons/Square44x44Logo.png create mode 100644 apps/desktop/src-tauri/icons/Square71x71Logo.png create mode 100644 apps/desktop/src-tauri/icons/Square89x89Logo.png create mode 100644 apps/desktop/src-tauri/icons/StoreLogo.png rename {ui => apps/desktop}/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml (100%) create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png create mode 100644 apps/desktop/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png rename {ui => apps/desktop}/src-tauri/icons/android/values/ic_launcher_background.xml (100%) create mode 100644 apps/desktop/src-tauri/icons/dapp-wallet-icon.png rename {ui => apps/desktop}/src-tauri/icons/icon-preview.png (100%) create mode 100644 apps/desktop/src-tauri/icons/icon-source.png create mode 100644 apps/desktop/src-tauri/icons/icon.icns create mode 100644 apps/desktop/src-tauri/icons/icon.ico create mode 100644 apps/desktop/src-tauri/icons/icon.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-20x20@1x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-20x20@2x-1.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-20x20@2x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-20x20@3x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-29x29@1x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-29x29@2x-1.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-29x29@2x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-29x29@3x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-40x40@1x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-40x40@2x-1.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-40x40@2x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-40x40@3x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-512@2x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-60x60@2x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-60x60@3x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-76x76@1x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-76x76@2x.png create mode 100644 apps/desktop/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png create mode 100644 apps/desktop/src-tauri/permissions/biometric_wallet.toml create mode 100644 apps/desktop/src-tauri/permissions/dapp.toml rename {ui => apps/desktop}/src-tauri/permissions/downloads.toml (100%) rename {ui => apps/desktop}/src-tauri/permissions/open_external.toml (100%) create mode 100644 apps/desktop/src-tauri/permissions/proxy.toml rename {ui => apps/desktop}/src-tauri/permissions/source_directory.toml (100%) create mode 100644 apps/desktop/src-tauri/src/lib.rs rename {ui => apps/desktop}/src-tauri/src/main.rs (100%) rename {ui => apps/desktop}/src-tauri/tauri.conf.json (64%) rename {ui => apps/desktop}/src-tauri/tauri.desktop-dev.conf.json (100%) rename {ui => apps/desktop}/src/app/[locale]/layout.tsx (100%) rename {ui => apps/desktop}/src/app/[locale]/page.tsx (86%) create mode 100644 apps/desktop/src/app/favicon.ico create mode 100644 apps/desktop/src/app/globals.css rename {ui => apps/desktop}/src/app/layout.tsx (94%) rename {ui => apps/desktop}/src/app/not-found.tsx (100%) rename {ui => apps/desktop}/src/app/page.tsx (100%) rename {ui => apps/desktop}/src/components/FieldHelp.tsx (100%) create mode 100644 apps/desktop/src/components/LanguageSwitcher.tsx rename {ui => apps/desktop}/src/components/SavedWalletPicker.tsx (100%) rename {ui => apps/desktop}/src/components/providers.tsx (100%) rename {ui => apps/desktop}/src/components/ui/button.tsx (100%) rename {ui => apps/desktop}/src/components/ui/card.tsx (100%) rename {ui => apps/desktop}/src/components/ui/input.tsx (100%) rename {ui => apps/desktop}/src/components/ui/label.tsx (100%) rename {ui => apps/desktop}/src/components/ui/sonner.tsx (100%) rename {ui => apps/desktop}/src/components/ui/tabs.tsx (100%) rename {ui => apps/desktop}/src/components/ui/textarea.tsx (100%) rename {ui => apps/desktop}/src/hooks/useTranslations.ts (100%) rename {ui => apps/desktop}/src/i18n/config.ts (100%) rename {ui => apps/desktop}/src/i18n/request.ts (100%) rename {ui => apps/desktop}/src/lib/anchorIdl.test.ts (100%) rename {ui => apps/desktop}/src/lib/anchorIdl.ts (100%) rename {ui => apps/desktop}/src/lib/api.ts (100%) rename {ui => apps/desktop}/src/lib/apiFetch.ts (89%) rename {ui => apps/desktop}/src/lib/apiPath.test.ts (100%) rename {ui => apps/desktop}/src/lib/apiPath.ts (100%) rename {ui => apps/desktop}/src/lib/appStorage.test.ts (100%) rename {ui => apps/desktop}/src/lib/appStorage.ts (83%) rename {ui => apps/desktop}/src/lib/localTokenRegistry.ts (100%) rename {ui => apps/desktop}/src/lib/openExternal.ts (100%) rename {ui => apps/desktop}/src/lib/programDeploy.test.ts (100%) rename {ui => apps/desktop}/src/lib/programDeploy.ts (100%) rename {ui => apps/desktop}/src/lib/programWorkspace.test.ts (97%) rename {ui => apps/desktop}/src/lib/programWorkspace.ts (98%) rename {ui => apps/desktop}/src/lib/utils.ts (100%) rename {ui => apps/desktop}/src/lib/walletAuth.ts (100%) rename {ui => apps/desktop}/src/messages/en.json (89%) rename {ui => apps/desktop}/src/messages/zh.json (89%) rename {ui => apps/desktop}/tailwind.config.js (100%) rename {ui => apps/desktop}/tsconfig.json (100%) rename {ui => apps/desktop}/vendor/brace-expansion-compat/index.cjs (88%) rename {ui => apps/desktop}/vendor/brace-expansion-compat/index.mjs (86%) rename {ui => apps/desktop}/vendor/brace-expansion-compat/package.json (80%) create mode 100644 apps/mobile/.gitignore create mode 100644 apps/mobile/.metadata create mode 100644 apps/mobile/README.md create mode 100644 apps/mobile/analysis_options.yaml create mode 100644 apps/mobile/android/.gitignore create mode 100644 apps/mobile/android/app/build.gradle.kts create mode 100644 apps/mobile/android/app/src/main/AndroidManifest.xml create mode 100644 apps/mobile/android/app/src/main/kotlin/dev/fnzero/safe/fnzero_safe_mobile/MainActivity.kt create mode 100644 apps/mobile/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 apps/mobile/android/app/src/main/res/drawable/launch_background.xml create mode 100644 apps/mobile/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 apps/mobile/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 apps/mobile/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 apps/mobile/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 apps/mobile/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 apps/mobile/android/app/src/main/res/values-night/styles.xml create mode 100644 apps/mobile/android/app/src/main/res/values/styles.xml create mode 100644 apps/mobile/android/app/src/profile/AndroidManifest.xml create mode 100644 apps/mobile/android/build.gradle.kts create mode 100644 apps/mobile/android/gradle.properties create mode 100644 apps/mobile/android/gradle/wrapper/gradle-wrapper.properties create mode 100644 apps/mobile/android/key.properties.example create mode 100644 apps/mobile/android/settings.gradle.kts create mode 100644 apps/mobile/flutter_rust_bridge.yaml create mode 100644 apps/mobile/ios/.gitignore create mode 100644 apps/mobile/ios/Flutter/AppFrameworkInfo.plist create mode 100644 apps/mobile/ios/Flutter/Debug.xcconfig create mode 100644 apps/mobile/ios/Flutter/Release.xcconfig create mode 100644 apps/mobile/ios/FnzeroSafeMobileBridge.podspec create mode 100644 apps/mobile/ios/Podfile create mode 100644 apps/mobile/ios/Podfile.lock create mode 100644 apps/mobile/ios/Runner.xcodeproj/project.pbxproj create mode 100644 apps/mobile/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 apps/mobile/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 apps/mobile/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 apps/mobile/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved create mode 100644 apps/mobile/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 apps/mobile/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 apps/mobile/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 apps/mobile/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 apps/mobile/ios/Runner.xcworkspace/xcshareddata/swiftpm/Package.resolved create mode 100644 apps/mobile/ios/Runner/AppDelegate.swift create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 apps/mobile/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 apps/mobile/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 apps/mobile/ios/Runner/Base.lproj/Main.storyboard create mode 100644 apps/mobile/ios/Runner/Info.plist create mode 100644 apps/mobile/ios/Runner/Runner-Bridging-Header.h create mode 100644 apps/mobile/ios/Runner/SceneDelegate.swift create mode 100644 apps/mobile/ios/Runner/bridge_generated.h create mode 100644 apps/mobile/ios/RunnerTests/RunnerTests.swift create mode 100644 apps/mobile/lib/main.dart create mode 100644 apps/mobile/lib/src/app.dart create mode 100644 apps/mobile/lib/src/bridge/generated/api.dart create mode 100644 apps/mobile/lib/src/bridge/generated/frb_generated.dart create mode 100644 apps/mobile/lib/src/bridge/generated/frb_generated.io.dart create mode 100644 apps/mobile/lib/src/bridge/generated/frb_generated.web.dart create mode 100644 apps/mobile/lib/src/bridge/mobile_bridge.dart create mode 100644 apps/mobile/lib/src/bridge/mobile_bridge_backend.dart create mode 100644 apps/mobile/lib/src/bridge/mobile_bridge_generated.dart create mode 100644 apps/mobile/lib/src/bridge/mobile_bridge_provider.dart create mode 100644 apps/mobile/lib/src/bridge/mobile_models.dart create mode 100644 apps/mobile/lib/src/features/app_scope.dart create mode 100644 apps/mobile/lib/src/features/assets_screen.dart create mode 100644 apps/mobile/lib/src/features/confirmation_screen.dart create mode 100644 apps/mobile/lib/src/features/dapp_browser_screen.dart create mode 100644 apps/mobile/lib/src/features/dashboard_screen.dart create mode 100644 apps/mobile/lib/src/features/feature_screen.dart create mode 100644 apps/mobile/lib/src/features/mobile_capabilities.dart create mode 100644 apps/mobile/lib/src/features/placeholder_screen.dart create mode 100644 apps/mobile/lib/src/features/scanner_screen.dart create mode 100644 apps/mobile/lib/src/features/security_screen.dart create mode 100644 apps/mobile/lib/src/features/send_screen.dart create mode 100644 apps/mobile/lib/src/features/squads_screen.dart create mode 100644 apps/mobile/lib/src/features/wallets_screen.dart create mode 100644 apps/mobile/lib/src/security/biometric_gate.dart create mode 100644 apps/mobile/lib/src/storage/mobile_wallet_store.dart create mode 100644 apps/mobile/pubspec.lock create mode 100644 apps/mobile/pubspec.yaml create mode 100644 apps/mobile/test/mobile_capabilities_test.dart create mode 100644 apps/mobile/test/widget_test.dart create mode 100755 apps/mobile/tool/bootstrap_mobile.sh create mode 100755 apps/mobile/tool/build_android_native.sh create mode 100755 apps/mobile/tool/build_ios_native.sh create mode 100755 apps/mobile/tool/generate_bridge.sh create mode 100644 crates/app-services/Cargo.toml create mode 100644 crates/app-services/src/lib.rs create mode 100644 crates/app-services/src/squads_v4.rs create mode 100644 crates/core/Cargo.toml rename {examples => crates/core/examples}/bot_example.rs (97%) rename {examples => crates/core/examples}/test_decrypt.rs (94%) rename {src => crates/core/src}/bot_helper.rs (96%) rename {src => crates/core/src}/hardware_fingerprint.rs (99%) rename {src => crates/core/src}/interactive.rs (99%) rename {src => crates/core/src}/lib.rs (99%) mode change 100755 => 100644 rename {src => crates/core/src}/main.rs (95%) rename {src => crates/core/src}/operations.rs (99%) rename {src => crates/core/src}/secure_totp.rs (93%) rename {src => crates/core/src}/security_question.rs (100%) rename {src => crates/core/src}/solana_utils/cli.rs (100%) rename {src => crates/core/src}/solana_utils/mod.rs (63%) rename {src => crates/core/src}/solana_utils/pumpfun_sell.rs (100%) rename {src => crates/core/src}/solana_utils/pumpswap_sell.rs (100%) rename {src => crates/core/src}/solana_utils/solana_ops.rs (100%) rename {src => crates/core/src}/totp.rs (99%) rename {ui => crates/desktop-api}/Cargo.toml (82%) rename {ui/backend => crates/desktop-api/src}/main.rs (92%) rename {ui/backend => crates/desktop-api/src}/program_deploy.rs (100%) rename {ui/backend => crates/desktop-api/src}/program_source_build.rs (98%) rename {ui/backend => crates/desktop-api/src}/squads_v4.rs (100%) rename {ui/backend => crates/desktop-api/src}/wallet_store.rs (99%) create mode 100644 crates/mobile-bridge/Cargo.toml create mode 100644 crates/mobile-bridge/src/api.rs create mode 100644 crates/mobile-bridge/src/frb_generated.rs create mode 100644 crates/mobile-bridge/src/lib.rs create mode 100644 docs/mobile/INTERNAL_TEST_CHECKLIST.md create mode 100644 packages/shared-contracts/README.md delete mode 100644 ui/README.md delete mode 100644 ui/src-tauri/icons/128x128.png delete mode 100644 ui/src-tauri/icons/128x128@2x.png delete mode 100644 ui/src-tauri/icons/32x32.png delete mode 100644 ui/src-tauri/icons/64x64.png delete mode 100644 ui/src-tauri/icons/Square107x107Logo.png delete mode 100644 ui/src-tauri/icons/Square142x142Logo.png delete mode 100644 ui/src-tauri/icons/Square150x150Logo.png delete mode 100644 ui/src-tauri/icons/Square284x284Logo.png delete mode 100644 ui/src-tauri/icons/Square30x30Logo.png delete mode 100644 ui/src-tauri/icons/Square310x310Logo.png delete mode 100644 ui/src-tauri/icons/Square44x44Logo.png delete mode 100644 ui/src-tauri/icons/Square71x71Logo.png delete mode 100644 ui/src-tauri/icons/Square89x89Logo.png delete mode 100644 ui/src-tauri/icons/StoreLogo.png delete mode 100644 ui/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png delete mode 100644 ui/src-tauri/icons/android/mipmap-hdpi/ic_launcher_foreground.png delete mode 100644 ui/src-tauri/icons/android/mipmap-hdpi/ic_launcher_round.png delete mode 100644 ui/src-tauri/icons/android/mipmap-mdpi/ic_launcher.png delete mode 100644 ui/src-tauri/icons/android/mipmap-mdpi/ic_launcher_foreground.png delete mode 100644 ui/src-tauri/icons/android/mipmap-mdpi/ic_launcher_round.png delete mode 100644 ui/src-tauri/icons/android/mipmap-xhdpi/ic_launcher.png delete mode 100644 ui/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_foreground.png delete mode 100644 ui/src-tauri/icons/android/mipmap-xhdpi/ic_launcher_round.png delete mode 100644 ui/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher.png delete mode 100644 ui/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_foreground.png delete mode 100644 ui/src-tauri/icons/android/mipmap-xxhdpi/ic_launcher_round.png delete mode 100644 ui/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher.png delete mode 100644 ui/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_foreground.png delete mode 100644 ui/src-tauri/icons/android/mipmap-xxxhdpi/ic_launcher_round.png delete mode 100644 ui/src-tauri/icons/icon-source.png delete mode 100644 ui/src-tauri/icons/icon.icns delete mode 100644 ui/src-tauri/icons/icon.ico delete mode 100644 ui/src-tauri/icons/icon.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-20x20@1x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-20x20@2x-1.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-20x20@2x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-20x20@3x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-29x29@1x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-29x29@2x-1.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-29x29@2x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-29x29@3x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-40x40@1x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-40x40@2x-1.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-40x40@2x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-40x40@3x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-512@2x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-60x60@2x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-60x60@3x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-76x76@1x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-76x76@2x.png delete mode 100644 ui/src-tauri/icons/ios/AppIcon-83.5x83.5@2x.png delete mode 100644 ui/src-tauri/permissions/dapp.toml delete mode 100644 ui/src-tauri/permissions/proxy.toml delete mode 100644 ui/src-tauri/src/lib.rs delete mode 100644 ui/src/app/favicon.ico delete mode 100644 ui/src/app/globals.css delete mode 100644 ui/src/components/LanguageSwitcher.tsx diff --git a/.dockerignore b/.dockerignore index a76a51c..feeedb8 100644 --- a/.dockerignore +++ b/.dockerignore @@ -26,10 +26,12 @@ program-keypair.json **/*.so build-cache target -ui/node_modules -ui/.next -ui/out -ui/data -ui/logs -ui/src-tauri/target +apps/desktop/node_modules +apps/desktop/.next +apps/desktop/out +apps/desktop/data +apps/desktop/logs +apps/desktop/src-tauri/target +apps/mobile/.dart_tool +apps/mobile/build *.log diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index e6b9c6e..16a2d4e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -53,7 +53,7 @@ jobs: timeout-minutes: 30 defaults: run: - working-directory: ui + working-directory: apps/desktop steps: - name: Check out repository uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4 @@ -63,7 +63,7 @@ jobs: with: node-version: 20.19.5 cache: npm - cache-dependency-path: ui/package-lock.json + cache-dependency-path: apps/desktop/package-lock.json - name: Install locked dependencies run: | @@ -92,9 +92,35 @@ jobs: - name: Audit all Node dependencies run: npm audit --audit-level=high + mobile: + name: Flutter mobile release gate + runs-on: ubuntu-24.04 + timeout-minutes: 30 + defaults: + run: + working-directory: apps/mobile + steps: + - name: Check out repository + uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4 + + - name: Set up Flutter + uses: subosito/flutter-action@fd55f4c5af5b953cc57a2be44cb082c8f6635e8e # v2 + with: + channel: stable + cache: true + + - name: Install Flutter dependencies + run: flutter pub get + + - name: Analyze mobile app + run: flutter analyze + + - name: Test mobile app + run: flutter test + container: name: Linux container build - needs: [rust, frontend] + needs: [rust, frontend, mobile] runs-on: ubuntu-24.04 timeout-minutes: 90 steps: @@ -102,4 +128,4 @@ jobs: uses: actions/checkout@11d5960a326750d5838078e36cf38b85af677262 # v4 - name: Build deployment image - run: docker build --pull --tag sol-safekey-ui:ci . + run: docker build --pull --tag fnzero-safe:ci . diff --git a/.gitignore b/.gitignore index 4671d22..94af2e8 100644 --- a/.gitignore +++ b/.gitignore @@ -13,10 +13,11 @@ target # Generated by cargo mutants # Contains mutation testing data **/mutants.out*/ -sol-safekey +fnzero-safe open-source build-cache keystore.json +/release/ # Local configuration and deployment signing material .env @@ -26,20 +27,37 @@ keystore.json *-keypair.json program-keypair.json -# Integrated web and desktop UI -/ui/node_modules/ +# Desktop UI /ui/.next/ -/ui/.next-build/ -/ui/out/ -/ui/coverage/ -/ui/data/ -/ui/logs/ -/ui/tmp/ -/ui/.env* -/ui/.vercel/ -/ui/next-env.d.ts -/ui/*.tsbuildinfo -/ui/*.pid +/apps/desktop/node_modules/ +/apps/desktop/.next/ +/apps/desktop/.next-build/ +/apps/desktop/out/ +/apps/desktop/coverage/ +/apps/desktop/data/ +/apps/desktop/logs/ +/apps/desktop/tmp/ +/apps/desktop/.env* +/apps/desktop/.vercel/ +/apps/desktop/next-env.d.ts +/apps/desktop/*.tsbuildinfo +/apps/desktop/*.pid + +# Flutter mobile UI +/apps/mobile/.dart_tool/ +/apps/mobile/.flutter-plugins +/apps/mobile/.flutter-plugins-dependencies +/apps/mobile/build/ +/apps/mobile/ios/Flutter/Generated.xcconfig +/apps/mobile/ios/Flutter/flutter_export_environment.sh +/apps/mobile/ios/Frameworks/ +/apps/mobile/ios/Pods/ +/apps/mobile/ios/.symlinks/ +/apps/mobile/ios/Runner.xcworkspace/xcuserdata/ +/apps/mobile/ios/Runner.xcodeproj/xcuserdata/ +/apps/mobile/android/.gradle/ +/apps/mobile/android/app/.cxx/ +/apps/mobile/android/app/src/main/jniLibs/ # RustRover # JetBrains specific template is maintained in a separate JetBrains.gitignore that can diff --git a/BOT_INTEGRATION.md b/BOT_INTEGRATION.md index ff8ce98..6e2cbf3 100644 --- a/BOT_INTEGRATION.md +++ b/BOT_INTEGRATION.md @@ -1,12 +1,12 @@ # Bot Integration Guide -Complete guide for integrating sol-safekey into your Solana trading bot or application. +Complete guide for integrating fnzero-safe into your Solana trading bot or application. [中文文档](BOT_INTEGRATION_CN.md) -## Why Sol-SafeKey? +## Why FnzeroSafe? -Sol-SafeKey provides military-grade wallet security with simple integration - just 3 lines of code to add a complete interactive wallet management system to your bot. +FnzeroSafe provides military-grade wallet security with simple integration - just 3 lines of code to add a complete interactive wallet management system to your bot. ### Key Benefits @@ -24,11 +24,11 @@ Add to your `Cargo.toml`: ```toml [dependencies] -sol-safekey = { path = "../sol-safekey" } +fnzero-safe = { path = "../fnzero-safe" } [features] default = ["solana-ops"] -solana-ops = ["sol-safekey/solana-ops"] +solana-ops = ["fnzero-safe/solana-ops"] ``` ### Step 2: Add Safekey Command @@ -42,8 +42,8 @@ fn main() -> Result<()> { // Check if running in safekey interactive mode let args: Vec = std::env::args().skip(1).collect(); if args.first().map(|s| s.as_str()) == Some("safekey") { - // Launch sol-safekey interactive menu - if let Err(e) = sol_safekey::interactive::show_main_menu() { + // Launch fnzero-safe interactive menu + if let Err(e) = fnzero_safe::interactive::show_main_menu() { eprintln!("❌ {}", e); std::process::exit(1); } @@ -97,7 +97,7 @@ This launches the full interactive menu with all wallet operations: ### Password Handling -Sol-SafeKey uses a secure password handling model: +FnzeroSafe uses a secure password handling model: **✅ Secure Approach:** - Password passed via stdin pipe @@ -156,7 +156,7 @@ fi ### Loading Encrypted Wallet ```rust -use sol_safekey::KeyManager; +use fnzero_safe::KeyManager; use std::io::{self, Read}; fn load_wallet() -> Result { @@ -180,7 +180,7 @@ fn load_wallet() -> Result { ### Creating New Wallet ```rust -use sol_safekey::KeyManager; +use fnzero_safe::KeyManager; fn create_wallet(password: &str) -> Result<()> { // Generate new keypair @@ -201,7 +201,7 @@ fn create_wallet(password: &str) -> Result<()> { ### Using Solana Operations ```rust -use sol_safekey::solana_ops::SolanaClient; +use fnzero_safe::solana_ops::SolanaClient; fn bot_logic(keypair: &solana_sdk::signature::Keypair) -> Result<()> { // Initialize Solana client @@ -252,7 +252,7 @@ echo "your-password" | ./build-cache/release/examples/bot_example ## Key Features Summary -Sol-SafeKey provides comprehensive wallet management: +FnzeroSafe provides comprehensive wallet management: | Feature | Support | |---------|---------| @@ -290,7 +290,7 @@ solana airdrop 2 YOUR_WALLET_ADDRESS --url devnet ### Integration Checklist -- [ ] Added sol-safekey dependency to Cargo.toml +- [ ] Added fnzero-safe dependency to Cargo.toml - [ ] Added 3-line safekey command check to main() - [ ] Created secure startup script with stdin password - [ ] Tested wallet creation with safekey command diff --git a/BOT_INTEGRATION_CN.md b/BOT_INTEGRATION_CN.md index d69e7ae..fc1f4ba 100644 --- a/BOT_INTEGRATION_CN.md +++ b/BOT_INTEGRATION_CN.md @@ -1,12 +1,12 @@ # Bot 集成指南 -将 sol-safekey 集成到你的 Solana 交易机器人或应用程序的完整指南。 +将 fnzero-safe 集成到你的 Solana 交易机器人或应用程序的完整指南。 [English Documentation](BOT_INTEGRATION.md) -## 为什么选择 Sol-SafeKey? +## 为什么选择 FnzeroSafe? -Sol-SafeKey 提供军事级钱包安全性和简单集成 - 只需 3 行代码即可为你的 bot 添加完整的交互式钱包管理系统。 +FnzeroSafe 提供军事级钱包安全性和简单集成 - 只需 3 行代码即可为你的 bot 添加完整的交互式钱包管理系统。 ### 核心优势 @@ -24,11 +24,11 @@ Sol-SafeKey 提供军事级钱包安全性和简单集成 - 只需 3 行代码 ```toml [dependencies] -sol-safekey = { path = "../sol-safekey" } +fnzero-safe = { path = "../fnzero-safe" } [features] default = ["solana-ops"] -solana-ops = ["sol-safekey/solana-ops"] +solana-ops = ["fnzero-safe/solana-ops"] ``` ### 步骤 2: 添加 Safekey 命令 @@ -42,8 +42,8 @@ fn main() -> Result<()> { // 检查是否运行在 safekey 交互模式 let args: Vec = std::env::args().skip(1).collect(); if args.first().map(|s| s.as_str()) == Some("safekey") { - // 启动 sol-safekey 交互式菜单 - if let Err(e) = sol_safekey::interactive::show_main_menu() { + // 启动 fnzero-safe 交互式菜单 + if let Err(e) = fnzero_safe::interactive::show_main_menu() { eprintln!("❌ {}", e); std::process::exit(1); } @@ -97,7 +97,7 @@ cargo build --features solana-ops --release ### 密码处理 -Sol-SafeKey 使用安全的密码处理模型: +FnzeroSafe 使用安全的密码处理模型: **✅ 安全方式:** - 密码通过 stdin 管道传递 @@ -156,7 +156,7 @@ fi ### 加载加密钱包 ```rust -use sol_safekey::KeyManager; +use fnzero_safe::KeyManager; use std::io::{self, Read}; fn load_wallet() -> Result { @@ -180,7 +180,7 @@ fn load_wallet() -> Result { ### 创建新钱包 ```rust -use sol_safekey::KeyManager; +use fnzero_safe::KeyManager; fn create_wallet(password: &str) -> Result<()> { // 生成新密钥对 @@ -201,7 +201,7 @@ fn create_wallet(password: &str) -> Result<()> { ### 使用 Solana 操作 ```rust -use sol_safekey::solana_ops::SolanaClient; +use fnzero_safe::solana_ops::SolanaClient; fn bot_logic(keypair: &solana_sdk::signature::Keypair) -> Result<()> { // 初始化 Solana 客户端 @@ -252,7 +252,7 @@ echo "你的密码" | ./build-cache/release/examples/bot_example ## 核心功能总结 -Sol-SafeKey 提供全面的钱包管理: +FnzeroSafe 提供全面的钱包管理: | 功能 | 支持 | |------|------| @@ -290,7 +290,7 @@ solana airdrop 2 你的钱包地址 --url devnet ### 集成检查清单 -- [ ] 在 Cargo.toml 中添加了 sol-safekey 依赖 +- [ ] 在 Cargo.toml 中添加了 fnzero-safe 依赖 - [ ] 在 main() 中添加了 3 行 safekey 命令检查 - [ ] 创建了带 stdin 密码的安全启动脚本 - [ ] 通过 safekey 命令测试了钱包创建 diff --git a/Cargo.lock b/Cargo.lock index 819b1cc..a6b6179 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -12,6 +12,15 @@ dependencies = [ "regex", ] +[[package]] +name = "addr2line" +version = "0.25.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b5d307320b3181d6d7954e663bd7c774a838b8220fe0593c86d9fb09f498b4b" +dependencies = [ + "gimli", +] + [[package]] name = "adler2" version = "2.0.1" @@ -76,7 +85,7 @@ version = "3.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6200f3b8cfbe5992fde00d443f60e62a79d2d8f6a658af1ffb7c4f0baa3c7028" dependencies = [ - "ahash 0.8.12", + "ahash", "solana-epoch-schedule 3.0.0", "solana-hash 3.1.0", "solana-pubkey 3.0.0", @@ -155,17 +164,6 @@ dependencies = [ "solana-transaction-context", ] -[[package]] -name = "ahash" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" -dependencies = [ - "getrandom 0.2.16", - "once_cell", - "version_check", -] - [[package]] name = "ahash" version = "0.8.12" @@ -188,6 +186,17 @@ dependencies = [ "memchr", ] +[[package]] +name = "allo-isolate" +version = "0.1.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "449e356a4864c017286dbbec0e12767ea07efba29e3b7d984194c2a7ff3c4550" +dependencies = [ + "anyhow", + "atomic", + "backtrace", +] + [[package]] name = "alloc-no-stdlib" version = "2.0.4" @@ -334,26 +343,6 @@ dependencies = [ "web-time", ] -[[package]] -name = "app" -version = "0.4.0" -dependencies = [ - "aes-gcm", - "aws-lc-rs", - "base64 0.22.1", - "log", - "pem-rfc7468", - "rand 0.8.6", - "reqwest 0.12.28", - "rfd", - "serde", - "serde_json", - "tauri", - "tauri-build", - "tauri-plugin-log", - "zeroize", -] - [[package]] name = "arc-swap" version = "1.7.1" @@ -418,7 +407,7 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43d68f2d516162846c1238e755a7c4d131b892b70cc70c471a8e3ca3ed818fce" dependencies = [ - "ahash 0.8.12", + "ahash", "ark-ff 0.5.0", "ark-poly 0.5.0", "ark-serialize 0.5.0", @@ -538,7 +527,7 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "579305839da207f02b89cd1679e50e67b4331e2f9294a57693e5051b7703fe27" dependencies = [ - "ahash 0.8.12", + "ahash", "ark-ff 0.5.0", "ark-serialize 0.5.0", "ark-std 0.5.0", @@ -699,7 +688,7 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "435a87a52755b8f27fcf321ac4f04b2802e337c8c4872923137471ec39c37532" dependencies = [ - "event-listener 5.4.1", + "event-listener 5.4.2", "event-listener-strategy", "futures-core", "pin-project-lite", @@ -790,7 +779,7 @@ version = "3.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5fd03604047cee9b6ce9de9f70c6cd540a0520c813cbd49bae61f33ab80ed1dc" dependencies = [ - "event-listener 5.4.1", + "event-listener 5.4.2", "event-listener-strategy", "pin-project-lite", ] @@ -819,7 +808,7 @@ dependencies = [ "async-task", "blocking", "cfg-if", - "event-listener 5.4.1", + "event-listener 5.4.2", "futures-lite 2.6.1", "rustix", ] @@ -915,6 +904,12 @@ dependencies = [ "system-deps", ] +[[package]] +name = "atomic" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c59bdb34bc650a32731b31bd8f0829cc15d24a708ee31559e0bb34f2bc320cba" + [[package]] name = "atomic-waker" version = "1.1.2" @@ -1049,6 +1044,21 @@ dependencies = [ "tracing", ] +[[package]] +name = "backtrace" +version = "0.3.76" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb531853791a215d7c62a30daf0dde835f381ab5de4589cfe7c649d2cbe92bd6" +dependencies = [ + "addr2line", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", + "windows-link 0.2.0", +] + [[package]] name = "base16ct" version = "0.2.0" @@ -1100,6 +1110,19 @@ dependencies = [ "serde", ] +[[package]] +name = "bip39" +version = "2.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "90dbd31c98227229239363921e60fcf5e558e43ec69094d46fc4996f08d1d5bc" +dependencies = [ + "bitcoin_hashes", + "rand 0.8.6", + "rand_core 0.6.4", + "serde", + "unicode-normalization", +] + [[package]] name = "bit-set" version = "0.8.0" @@ -1115,6 +1138,15 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7" +[[package]] +name = "bitcoin_hashes" +version = "0.14.101" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bca4c7abb40c8817d77403c880988cfd484f23ab2365726afb2f798363e2c4a2" +dependencies = [ + "hex-conservative", +] + [[package]] name = "bitflags" version = "1.3.2" @@ -1130,18 +1162,6 @@ dependencies = [ "serde", ] -[[package]] -name = "bitvec" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddcec3d12c579d40898fe0a9a358a803c23e9c52ca3c425707f81c9436211837" -dependencies = [ - "funty", - "radium", - "tap", - "wyz", -] - [[package]] name = "blake2" version = "0.10.6" @@ -1322,6 +1342,12 @@ dependencies = [ "tinyvec", ] +[[package]] +name = "build-target" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "832133bbabbbaa9fbdba793456a2827627a7d2b8fb96032fa1e7666d7895832b" + [[package]] name = "bumpalo" version = "3.19.0" @@ -1338,40 +1364,6 @@ dependencies = [ "serde", ] -[[package]] -name = "byte-unit" -version = "5.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a813de7f2bbedb7dce265b64f1cf5908ebe4d56281ece8d847e98113788b9b0" -dependencies = [ - "rust_decimal", - "schemars 1.2.1", - "serde", - "utf8-width", -] - -[[package]] -name = "bytecheck" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2" -dependencies = [ - "bytecheck_derive", - "ptr_meta", - "simdutf8", -] - -[[package]] -name = "bytecheck_derive" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "bytemuck" version = "1.24.0" @@ -2105,6 +2097,15 @@ dependencies = [ "syn 2.0.117", ] +[[package]] +name = "dart-sys" +version = "4.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57967e4b200d767d091b961d6ab42cc7d0cc14fe9e052e75d0d3cf9eb732d895" +dependencies = [ + "cc", +] + [[package]] name = "dashmap" version = "5.5.3" @@ -2138,6 +2139,17 @@ version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476" +[[package]] +name = "delegate-attr" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a84c9a9c129b98e707ac9a31e204c10c064dd9f949b7da362310ff1a8b137d79" +dependencies = [ + "proc-macro2", + "quote", + "syn 3.0.3", +] + [[package]] name = "der" version = "0.7.10" @@ -2657,11 +2669,10 @@ checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0" [[package]] name = "event-listener" -version = "5.4.1" +version = "5.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13b66accf52311f30a0db42147dadea9850cb48cd070028831ae5f5d4b856ab" +checksum = "5a23add41df1562121a9393cb065eab5146a1242410f23a644851e90cfd669d2" dependencies = [ - "concurrent-queue", "parking", "pin-project-lite", ] @@ -2672,7 +2683,7 @@ version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8be9f3dfaaffdae2972880079a491a1a8bb7cbed0b8dd7a347f668b4150a3b93" dependencies = [ - "event-listener 5.4.1", + "event-listener 5.4.2", "pin-project-lite", ] @@ -2832,12 +2843,196 @@ dependencies = [ "miniz_oxide", ] +[[package]] +name = "flutter_rust_bridge" +version = "2.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0884853aae8a6517b5b58cf36f55da487f2fe110e1686938eb29b6640aae4a5" +dependencies = [ + "allo-isolate", + "android_logger", + "anyhow", + "build-target", + "bytemuck", + "byteorder", + "console_error_panic_hook", + "dart-sys", + "delegate-attr", + "flutter_rust_bridge_macros", + "futures", + "js-sys", + "lazy_static", + "log", + "oslog", + "portable-atomic", + "threadpool", + "tokio", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "flutter_rust_bridge_macros" +version = "2.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b5ce32f35f710ced8c5aa557f023f1a624e737b5460cee2b70fcd3a8df09e1b" +dependencies = [ + "hex", + "md-5", + "proc-macro2", + "quote", + "syn 2.0.117", +] + [[package]] name = "fnv" version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" +[[package]] +name = "fnzero-safe-app-services" +version = "0.1.0" +dependencies = [ + "base64 0.22.1", + "bincode", + "bip39", + "borsh 1.7.0", + "fnzero-safe-core", + "serde", + "serde_json", + "sha2 0.10.9", + "solana-account-decoder-client-types", + "solana-client", + "solana-commitment-config", + "solana-derivation-path", + "solana-rpc-client-types", + "solana-sdk", + "thiserror 2.0.18", + "uuid", +] + +[[package]] +name = "fnzero-safe-core" +version = "0.1.8" +dependencies = [ + "aes", + "aes-gcm", + "anyhow", + "argon2", + "base64 0.22.1", + "bincode", + "bs58", + "chrono", + "clap", + "colored", + "data-encoding", + "dotenv", + "ghash", + "hex", + "keccak", + "openssl", + "qrcode", + "rand 0.8.6", + "ring", + "rpassword", + "serde", + "serde_json", + "sol-trade-sdk", + "solana-client", + "solana-commitment-config", + "solana-message 3.1.0", + "solana-sdk", + "tokio", + "totp-rs", + "zeroize", +] + +[[package]] +name = "fnzero-safe-desktop" +version = "0.4.0" +dependencies = [ + "aes-gcm", + "aws-lc-rs", + "base64 0.22.1", + "block2 0.6.2", + "log", + "objc2 0.6.4", + "objc2-foundation 0.3.2", + "objc2-local-authentication", + "pem-rfc7468", + "rand 0.8.6", + "reqwest 0.12.28", + "rfd", + "security-framework 3.5.1", + "serde", + "serde_json", + "tauri", + "tauri-build", + "tauri-plugin-log", + "zeroize", +] + +[[package]] +name = "fnzero-safe-desktop-api" +version = "0.4.0" +dependencies = [ + "aes-gcm", + "agave-syscalls", + "anyhow", + "aws-lc-rs", + "axum 0.8.9", + "base64 0.22.1", + "bincode", + "bip39", + "borsh 1.7.0", + "bs58", + "fnzero-safe-app-services", + "fnzero-safe-core", + "futures", + "mime_guess", + "pem-rfc7468", + "rand 0.8.6", + "reqwest 0.12.28", + "rusqlite", + "rust-embed", + "serde", + "serde_json", + "sha2 0.10.9", + "sol-trade-sdk", + "solana-account-decoder-client-types", + "solana-client", + "solana-commitment-config", + "solana-derivation-path", + "solana-loader-v3-interface 6.1.0", + "solana-program-runtime", + "solana-rpc-client-api", + "solana-sbpf", + "solana-sdk", + "solana-svm-feature-set", + "solana-transaction-status-client-types", + "spl-token", + "tokio", + "tower 0.5.2", + "tower-http", + "tracing", + "tracing-subscriber", + "urlencoding", + "uuid", + "zeroize", +] + +[[package]] +name = "fnzero-safe-mobile-bridge" +version = "0.1.0" +dependencies = [ + "flutter_rust_bridge", + "fnzero-safe-app-services", + "fnzero-safe-core", + "serde", +] + [[package]] name = "foldhash" version = "0.1.5" @@ -2907,12 +3102,6 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "42703706b716c37f96a77aea830392ad231f44c9e9a67872fa5548707e11b11c" -[[package]] -name = "funty" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" - [[package]] name = "futf" version = "0.1.5" @@ -3235,6 +3424,12 @@ dependencies = [ "zeroize", ] +[[package]] +name = "gimli" +version = "0.32.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e629b9b98ef3dd8afe6ca2bd0f89306cec16d43d907889945bc5d6687f2f13c7" + [[package]] name = "gio" version = "0.18.4" @@ -3416,9 +3611,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.12" +version = "0.4.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3c0b69cfcb4e1b9f1bf2f53f95f766e4661169728ec61cd3fe5a0166f2d1386" +checksum = "a9f37a958b41b3b19ee2707c06439c0e9e547e847223eb791ecb0cb821c65e27" dependencies = [ "atomic-waker", "bytes", @@ -3447,9 +3642,6 @@ name = "hashbrown" version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" -dependencies = [ - "ahash 0.7.8", -] [[package]] name = "hashbrown" @@ -3457,7 +3649,7 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "43a3c133739dddd0d2990f9a4bdf8eb4b21ef50e4851ca85ab661199821d510e" dependencies = [ - "ahash 0.8.12", + "ahash", ] [[package]] @@ -3509,6 +3701,15 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +[[package]] +name = "hex-conservative" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fda06d18ac606267c40c04e41b9947729bf8b9efe74bd4e82b61a5f26a510b9f" +dependencies = [ + "arrayvec", +] + [[package]] name = "histogram" version = "0.6.9" @@ -4357,9 +4558,6 @@ name = "log" version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "34080505efa8e45a4b816c349525ebe327ceaa8559756f0356cba97ef3bf7432" -dependencies = [ - "value-bag", -] [[package]] name = "lru-slab" @@ -4436,6 +4634,16 @@ version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "47e1ffaa40ddd1f3ed91f717a33c8c0ee23fff369e3aa8772b9605cc1d22f4c3" +[[package]] +name = "md-5" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" +dependencies = [ + "cfg-if", + "digest 0.10.7", +] + [[package]] name = "memchr" version = "2.7.5" @@ -4888,10 +5096,23 @@ checksum = "e3e0adef53c21f888deb4fa59fc59f7eb17404926ee8a6f59f5df0fd7f9f3272" dependencies = [ "bitflags 2.9.4", "block2 0.6.2", + "libc", "objc2 0.6.4", "objc2-core-foundation", ] +[[package]] +name = "objc2-local-authentication" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e48e0b8b339e0d9d2ed4416b7f93f9d4daadff7d4dd797f89867cde11aeac607" +dependencies = [ + "block2 0.6.2", + "objc2 0.6.4", + "objc2-foundation 0.3.2", + "objc2-security", +] + [[package]] name = "objc2-metal" version = "0.2.2" @@ -4917,6 +5138,17 @@ dependencies = [ "objc2-metal", ] +[[package]] +name = "objc2-security" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "709fe137109bd1e8b5a99390f77a7d8b2961dafc1a1c5db8f2e60329ad6d895a" +dependencies = [ + "bitflags 2.9.4", + "objc2 0.6.4", + "objc2-core-foundation", +] + [[package]] name = "objc2-ui-kit" version = "0.3.2" @@ -4943,6 +5175,15 @@ dependencies = [ "objc2-foundation 0.3.2", ] +[[package]] +name = "object" +version = "0.37.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff76201f031d8863c38aa7f905eca4f53abbfa15f609db4277d44cd8938f33fe" +dependencies = [ + "memchr", +] + [[package]] name = "oid-registry" version = "0.6.1" @@ -5039,6 +5280,17 @@ dependencies = [ "pin-project-lite", ] +[[package]] +name = "oslog" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80d2043d1f61d77cb2f4b1f7b7b2295f40507f5f8e9d1c8bf10a1ca5f97a3969" +dependencies = [ + "cc", + "dashmap 5.5.3", + "log", +] + [[package]] name = "pango" version = "0.18.3" @@ -5656,26 +5908,6 @@ dependencies = [ "prost 0.13.5", ] -[[package]] -name = "ptr_meta" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" -dependencies = [ - "ptr_meta_derive", -] - -[[package]] -name = "ptr_meta_derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "pxfm" version = "0.1.24" @@ -5814,12 +6046,6 @@ version = "6.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8dcc9c7d52a811697d2151c701e0d08956f92b0e24136cf4cf27b57a6a0d9bf" -[[package]] -name = "radium" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" - [[package]] name = "rand" version = "0.7.3" @@ -6047,15 +6273,6 @@ version = "0.8.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7a2d987857b319362043e95f5353c0535c1f58eec5336fdfcf626430af7def58" -[[package]] -name = "rend" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" -dependencies = [ - "bytecheck", -] - [[package]] name = "reqwest" version = "0.12.28" @@ -6200,35 +6417,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "rkyv" -version = "0.7.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2297bf9c81a3f0dc96bc9521370b88f054168c29826a75e89c55ff196e7ed6a1" -dependencies = [ - "bitvec", - "bytecheck", - "bytes", - "hashbrown 0.12.3", - "ptr_meta", - "rend", - "rkyv_derive", - "seahash", - "tinyvec", - "uuid", -] - -[[package]] -name = "rkyv_derive" -version = "0.7.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84d7b42d4b8d06048d3ac8db0eb31bcb942cbeb709f0b5f2b2ebde398d3038f5" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - [[package]] name = "rpassword" version = "7.4.0" @@ -6299,23 +6487,6 @@ dependencies = [ "walkdir", ] -[[package]] -name = "rust_decimal" -version = "1.42.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be2a24f50780bc85f09cc6ac299bdf1424302742d77221106859c9d8b102126a" -dependencies = [ - "arrayvec", - "borsh 1.7.0", - "bytes", - "num-traits", - "rand 0.8.6", - "rkyv", - "serde", - "serde_json", - "wasm-bindgen", -] - [[package]] name = "rustc-demangle" version = "0.1.26" @@ -6529,12 +6700,6 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" -[[package]] -name = "seahash" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" - [[package]] name = "sec1" version = "0.7.3" @@ -6944,12 +7109,6 @@ version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "703d5c7ef118737c72f1af64ad2f6f8c5e1921f818cdcb97b8fe6fc69bf66214" -[[package]] -name = "simdutf8" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" - [[package]] name = "siphasher" version = "0.3.11" @@ -7027,87 +7186,6 @@ dependencies = [ "windows-sys 0.59.0", ] -[[package]] -name = "sol-safekey" -version = "0.1.8" -dependencies = [ - "aes", - "aes-gcm", - "anyhow", - "argon2", - "base64 0.22.1", - "bincode", - "bs58", - "chrono", - "clap", - "colored", - "data-encoding", - "dotenv", - "ghash", - "hex", - "keccak", - "openssl", - "qrcode", - "rand 0.8.6", - "ring", - "rpassword", - "serde", - "serde_json", - "sol-trade-sdk", - "solana-client", - "solana-commitment-config", - "solana-message 3.1.0", - "solana-sdk", - "tokio", - "totp-rs", - "zeroize", -] - -[[package]] -name = "sol-safekey-ui" -version = "0.4.0" -dependencies = [ - "aes-gcm", - "agave-syscalls", - "anyhow", - "aws-lc-rs", - "axum 0.8.9", - "base64 0.22.1", - "bincode", - "borsh 1.7.0", - "bs58", - "futures", - "mime_guess", - "pem-rfc7468", - "reqwest 0.12.28", - "rusqlite", - "rust-embed", - "serde", - "serde_json", - "sha2 0.10.9", - "sol-safekey", - "sol-trade-sdk", - "solana-account-decoder-client-types", - "solana-client", - "solana-commitment-config", - "solana-loader-v3-interface 6.1.0", - "solana-program-runtime", - "solana-rpc-client-api", - "solana-sbpf", - "solana-sdk", - "solana-svm-feature-set", - "solana-transaction-status-client-types", - "spl-token", - "tokio", - "tower 0.5.2", - "tower-http", - "tracing", - "tracing-subscriber", - "urlencoding", - "uuid", - "zeroize", -] - [[package]] name = "sol-trade-sdk" version = "4.0.21" @@ -7523,7 +7601,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5c6cd4d41f391f427e64e03fb00fb0c93443f18464dafd71e06f996ac03a3982" dependencies = [ "agave-feature-set", - "ahash 0.8.12", + "ahash", "log", "solana-bpf-loader-program", "solana-compute-budget-program", @@ -8572,7 +8650,7 @@ version = "3.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6efdfcbe201b25d6c30a69bb27201867d3da3c945dd06b181e61d5b956280663" dependencies = [ - "ahash 0.8.12", + "ahash", "bincode", "bv", "bytes", @@ -10708,12 +10786,6 @@ dependencies = [ "syn 2.0.117", ] -[[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - [[package]] name = "target-lexicon" version = "0.12.16" @@ -10853,12 +10925,11 @@ dependencies = [ [[package]] name = "tauri-plugin-log" -version = "2.8.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7545bd67f070a4500432c826e2e0682146a1d6712aee22a2786490156b574d93" +checksum = "6792296e6f389268016c77db21ebae1fc0568f2fccf88b1ec7e2ea71330afb4c" dependencies = [ "android_logger", - "byte-unit", "fern", "log", "objc2 0.6.4", @@ -11055,6 +11126,15 @@ dependencies = [ "cfg-if", ] +[[package]] +name = "threadpool" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d050e60b33d41c19108b32cea32164033a9013fe3b46cbd4457559bfbf77afaa" +dependencies = [ + "num_cpus", +] + [[package]] name = "time" version = "0.3.53" @@ -11672,6 +11752,15 @@ version = "1.0.19" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f63a545481291138910575129486daeaf8ac54aee4387fe7906919f7830c7d9d" +[[package]] +name = "unicode-normalization" +version = "0.1.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fd4f6878c9cb28d874b009da9e8d183b5abc80117c40bbd187a1fde336be6e8" +dependencies = [ + "tinyvec", +] + [[package]] name = "unicode-segmentation" version = "1.13.3" @@ -11767,12 +11856,6 @@ version = "0.7.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9" -[[package]] -name = "utf8-width" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "159a7cadce548703edd50d24069bc294c5415ecab0a480e0cd1ca06d112dc94a" - [[package]] name = "utf8_iter" version = "1.0.4" @@ -11803,12 +11886,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ba73ea9cf16a25df0c8caa16c51acb937d5712a8429db78a3ee29d5dcacd3a65" -[[package]] -name = "value-bag" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dd4ec1eb1d240636e354a30110a1dfcb37047169a4d9bd6d9d3469df574b5c4" - [[package]] name = "vcpkg" version = "0.2.15" @@ -12811,15 +12888,6 @@ dependencies = [ "x11-dl", ] -[[package]] -name = "wyz" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" -dependencies = [ - "tap", -] - [[package]] name = "x11" version = "2.21.0" @@ -12908,7 +12976,7 @@ dependencies = [ "async-trait", "blocking", "enumflags2", - "event-listener 5.4.1", + "event-listener 5.4.2", "futures-core", "futures-lite 2.6.1", "hex", diff --git a/Cargo.toml b/Cargo.toml old mode 100755 new mode 100644 index d43319c..54fc1b6 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,82 +1,18 @@ -[package] -name = "sol-safekey" -version = "0.1.8" -edition = "2021" -rust-version = "1.89" -default-run = "sol-safekey" -description = "Secure Solana wallet key management library and CLI with encrypted keystores, bot integration, and optional 2FA" -license = "MIT" -repository = "https://github.com/0xfnzero/sol-safekey" -documentation = "https://docs.rs/sol-safekey" -homepage = "https://github.com/0xfnzero/sol-safekey" -readme = "README.md" -keywords = ["solana", "wallet", "keystore", "encryption", "2fa"] -categories = ["cryptography", "command-line-utilities"] -exclude = ["ui/**", "Dockerfile", "Makefile", ".dockerignore"] - [workspace] -members = ["ui", "ui/src-tauri"] +members = [ + "crates/core", + "crates/app-services", + "crates/desktop-api", + "crates/mobile-bridge", + "apps/desktop/src-tauri", +] resolver = "2" -# Core dependencies (always required) -[dependencies] -# Transitive via solana-sdk → sha3; keep the patched implementation pinned. -keccak = { version = "=0.1.6" } -aes = { version = "0.8", features = ["zeroize"] } -aes-gcm = { version = "0.10", features = ["zeroize"] } -argon2 = { version = "0.5", features = ["zeroize"] } -base64 = "0.22.1" -bs58 = "0.5" -ring = "0.17.8" -solana-sdk = "3.0.0" -serde = { version = "1.0", features = ["derive"] } -serde_json = "1.0" -chrono = { version = "0.4", features = ["serde"] } -data-encoding = "2.4" -anyhow = "1.0" -hex = "0.4" -ghash = { version = "0.5", features = ["zeroize"] } -zeroize = "1" - -# Interactive UI dependencies (needed for bot integration) -colored = "3.0.0" -rpassword = "7.0" - -# Optional: CLI-only dependencies -clap = { version = "4.5", features = ["derive"], optional = true } -qrcode = { version = "0.14", optional = true } - -# Optional: 2FA/TOTP features -totp-rs = { version = "5.4", optional = true } -rand = { version = "0.8", optional = true } - -# Optional: Solana operations -solana-client = { version = "3.1.12", optional = true } -# Align with sol-trade-sdk (solana-message 3.1.x); avoids resolver conflict with solana-client's transitive 3.0.1. -solana-message = { version = "3.1.0", optional = true } -tokio = { version = "1.0", features = ["full"], optional = true } -bincode = { version = "1.3", optional = true } -solana-commitment-config = { version = "3.1.1", optional = true } -# Keep the core crate and integrated UI on the same SDK API. -sol-trade-sdk = { version = "=4.0.21", optional = true } - -# Optional: Other utilities -dotenv = { version = "0.15", optional = true } -openssl = { version = "0.10.80", features = ["vendored"], optional = true } - -[features] -default = [] -cli = ["clap", "qrcode", "totp-rs", "rand"] -2fa = ["totp-rs", "rand", "qrcode"] -sol-trade-sdk = ["dep:sol-trade-sdk", "tokio", "solana-commitment-config", "solana-client", "dep:solana-message"] -solana-ops = ["solana-client", "dep:solana-message", "tokio", "bincode", "sol-trade-sdk", "solana-commitment-config"] -full = ["cli", "2fa", "solana-ops", "sol-trade-sdk", "dotenv", "openssl"] - -[lib] -name = "sol_safekey" -path = "src/lib.rs" +[workspace.package] +edition = "2021" +license = "MIT" +repository = "https://github.com/0xfnzero/fnzero-safe" -[[bin]] -name = "sol-safekey" -path = "src/main.rs" -required-features = ["full"] +[workspace.dependencies] +fnzero-safe-core = { path = "crates/core", version = "0.1.8" } +fnzero-safe-app-services = { path = "crates/app-services", version = "0.1.0" } diff --git a/Dockerfile b/Dockerfile index 82e6766..fd29f00 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,12 +1,12 @@ FROM node:20.19.5-bookworm-slim AS frontend -WORKDIR /app/ui +WORKDIR /app/apps/desktop -COPY ui/package.json ui/package-lock.json ./ -COPY ui/vendor/brace-expansion-compat ./vendor/brace-expansion-compat +COPY apps/desktop/package.json apps/desktop/package-lock.json ./ +COPY apps/desktop/vendor/brace-expansion-compat ./vendor/brace-expansion-compat RUN npm ci -COPY ui/ ./ +COPY apps/desktop/ ./ RUN npm run build FROM rust:1.89.0-bookworm AS builder @@ -18,8 +18,8 @@ RUN apt-get update \ && rm -rf /var/lib/apt/lists/* COPY . . -COPY --from=frontend /app/ui/out /app/ui/out -RUN cargo build --locked --release -p sol-safekey-ui +COPY --from=frontend /app/apps/desktop/out /app/apps/desktop/out +RUN cargo build --locked --release -p fnzero-safe-desktop-api FROM debian:bookworm-slim AS runtime @@ -28,17 +28,17 @@ WORKDIR /app RUN apt-get update \ && apt-get install -y --no-install-recommends ca-certificates curl \ && rm -rf /var/lib/apt/lists/* \ - && groupadd --gid 10001 sol-safekey \ - && useradd --uid 10001 --gid 10001 --home-dir /app --no-create-home --no-log-init --shell /usr/sbin/nologin sol-safekey \ + && groupadd --gid 10001 fnzero-safe \ + && useradd --uid 10001 --gid 10001 --home-dir /app --no-create-home --no-log-init --shell /usr/sbin/nologin fnzero-safe \ && install -d -o 10001 -g 10001 /app/data -COPY --from=builder /app/build-cache/release/sol-safekey-ui /usr/local/bin/sol-safekey-ui +COPY --from=builder /app/build-cache/release/fnzero-safe-desktop-api /usr/local/bin/fnzero-safe-desktop-api # The wallet API is intentionally local-only. Run with host networking when a # container is required; publishing this loopback port with -p will not work. ENV HOST=127.0.0.1 ENV PORT=3841 -ENV SOL_SAFEKEY_DB_PATH=/app/data/sol-safekey.sqlite3 +ENV FNZERO_SAFE_DB_PATH=/app/data/fnzero-safe.sqlite3 VOLUME ["/app/data"] @@ -47,4 +47,4 @@ USER 10001:10001 HEALTHCHECK --interval=30s --timeout=3s --start-period=10s --retries=3 \ CMD curl --fail --silent --show-error http://127.0.0.1:3841/api/health >/dev/null || exit 1 -CMD ["sol-safekey-ui"] +CMD ["fnzero-safe-desktop-api"] diff --git a/INTERACTIVE_TUTORIAL.md b/INTERACTIVE_TUTORIAL.md index b7f9ad6..af5cb10 100644 --- a/INTERACTIVE_TUTORIAL.md +++ b/INTERACTIVE_TUTORIAL.md @@ -1,5 +1,5 @@
-

📖 Sol-SafeKey 交互式菜单完整教程

+

📖 FnzeroSafe 交互式菜单完整教程

Step-by-step guide for all interactive menu operations

@@ -69,7 +69,7 @@ Quick access to all 18 interactive menu operations: #### Step 1: Launch Interactive Menu ```bash -sol-safekey start +fnzero-safe start ``` You will see the language selection screen. Choose your preferred language: diff --git a/INTERACTIVE_TUTORIAL_CN.md b/INTERACTIVE_TUTORIAL_CN.md index 44f17cc..4d9d0ec 100644 --- a/INTERACTIVE_TUTORIAL_CN.md +++ b/INTERACTIVE_TUTORIAL_CN.md @@ -1,5 +1,5 @@
-

📖 Sol-SafeKey 交互式菜单完整教程

+

📖 FnzeroSafe 交互式菜单完整教程

所有交互式菜单操作的逐步指南

@@ -69,7 +69,7 @@ #### 步骤 1:启动交互式菜单 ```bash -sol-safekey start +fnzero-safe start ``` 你将看到语言选择界面。选择你偏好的语言: diff --git a/Makefile b/Makefile index 936b10e..ba3391d 100644 --- a/Makefile +++ b/Makefile @@ -1,66 +1,118 @@ SHELL := /bin/bash -RELEASE_NODE_VERSION := 20.19.5 -RELEASE_NPM_VERSION := 10.8.2 -RELEASE_CARGO_AUDIT_VERSION := 0.22.1 - .DEFAULT_GOAL := help -.PHONY: help install ui-dev ui-build api-build desktop-dev desktop-build check release-check +ROOT_DIR := $(CURDIR) +RELEASE_DIR := $(ROOT_DIR)/release +MOBILE_DIR := $(ROOT_DIR)/apps/mobile +DESKTOP_DIR := $(ROOT_DIR)/apps/desktop +ANDROID_RELEASE_DIR := $(RELEASE_DIR)/android +IOS_RELEASE_DIR := $(RELEASE_DIR)/ios +MACOS_RELEASE_DIR := $(RELEASE_DIR)/macos +WINDOWS_RELEASE_DIR := $(RELEASE_DIR)/windows +IOS_CODESIGN ?= false +IOS_EXPORT_OPTIONS_PLIST ?= +TAURI_WINDOWS_TARGET ?= x86_64-pc-windows-msvc +ANDROID_JAVA_HOME ?= $(shell if [[ -d /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home ]]; then echo /opt/homebrew/opt/openjdk@17/libexec/openjdk.jdk/Contents/Home; fi) +ANDROID_ENV := $(if $(ANDROID_JAVA_HOME),JAVA_HOME="$(ANDROID_JAVA_HOME)" PATH="$(ANDROID_JAVA_HOME)/bin:$$PATH",) -help: - @echo "Sol SafeKey workspace commands" - @echo " make install Install UI dependencies and prefetch Rust crates" - @echo " make ui-dev Start Next.js and the local Rust API" - @echo " make ui-build Build the static web UI" - @echo " make api-build Build the UI API release binary" - @echo " make desktop-dev Start the Tauri desktop app" - @echo " make desktop-build Build the Tauri desktop app" - @echo " make check Run Rust, lint, and TypeScript checks" - @echo " make release-check Run the complete non-deploying release gate" +.PHONY: help dev package package-android package-ios package-macos package-windows prepare-release-dir -install: - cd ui && npm ci - cargo fetch +help: + @echo "FnzeroSafe commands" + @echo " make dev Start the desktop dev app; old local dev processes are stopped first" + @echo " make package Build Android, iOS, macOS, and Windows packages into ./release" + @echo " make package-android Build Android APK/AAB into ./release/android" + @echo " make package-ios Build iOS app/IPA into ./release/ios" + @echo " make package-macos Build the macOS desktop package into ./release/macos" + @echo " make package-windows Build the Windows desktop package into ./release/windows" + @echo "" + @echo "Options:" + @echo " ANDROID_JAVA_HOME=/path/to/jdk17 make package-android" + @echo " IOS_CODESIGN=true IOS_EXPORT_OPTIONS_PLIST=/path/ExportOptions.plist make package-ios" + @echo " TAURI_WINDOWS_TARGET=x86_64-pc-windows-msvc make package-windows" -ui-dev: - cd ui && npm run dev:stack +dev: + cd apps/desktop && npm run desktop:dev -ui-build: - cd ui && npm run build +package: package-android package-ios package-macos package-windows -api-build: ui-build - cargo build --release -p sol-safekey-ui +prepare-release-dir: + mkdir -p "$(RELEASE_DIR)" -desktop-dev: - cd ui && npm run desktop:dev +package-android: prepare-release-dir + mkdir -p "$(ANDROID_RELEASE_DIR)" + cd "$(MOBILE_DIR)" && ./tool/build_android_native.sh + cd "$(MOBILE_DIR)" && $(ANDROID_ENV) flutter build apk --release + cd "$(MOBILE_DIR)" && $(ANDROID_ENV) flutter build appbundle + @copied=0; \ + for artifact in \ + "$(MOBILE_DIR)/build/app/outputs/flutter-apk/app-release.apk" \ + "$(MOBILE_DIR)/build/app/outputs/bundle/release/app-release.aab"; do \ + if [[ -f "$$artifact" ]]; then \ + cp -f "$$artifact" "$(ANDROID_RELEASE_DIR)/"; \ + echo "Copied $$artifact -> $(ANDROID_RELEASE_DIR)/"; \ + copied=1; \ + fi; \ + done; \ + if [[ "$$copied" != "1" ]]; then \ + echo "No Android package artifacts were found." >&2; \ + exit 1; \ + fi -desktop-build: - cd ui && npm run desktop:build +package-ios: prepare-release-dir + mkdir -p "$(IOS_RELEASE_DIR)" + cd "$(MOBILE_DIR)" && ./tool/build_ios_native.sh + @if [[ "$(IOS_CODESIGN)" == "true" ]]; then \ + if [[ -n "$(IOS_EXPORT_OPTIONS_PLIST)" ]]; then \ + cd "$(MOBILE_DIR)" && flutter build ipa --release --export-options-plist "$(IOS_EXPORT_OPTIONS_PLIST)"; \ + else \ + cd "$(MOBILE_DIR)" && flutter build ipa --release; \ + fi; \ + else \ + cd "$(MOBILE_DIR)" && flutter build ios --release --no-codesign; \ + fi + @copied=0; \ + while IFS= read -r artifact; do \ + cp -R "$$artifact" "$(IOS_RELEASE_DIR)/"; \ + echo "Copied $$artifact -> $(IOS_RELEASE_DIR)/"; \ + copied=1; \ + done < <(find "$(MOBILE_DIR)/build/ios" -maxdepth 5 \( -name "*.ipa" -o -name "*.app" \) -print 2>/dev/null); \ + if [[ "$$copied" != "1" ]]; then \ + echo "No iOS package artifacts were found." >&2; \ + exit 1; \ + fi -check: - cargo check --workspace - cd ui && npm run test:dependency-compat - cd ui && npm run test:devnet-airdrop - cd ui && npm run test:program-deploy - cd ui && npm run lint - cd ui && npm exec tsc -- --noEmit +package-macos: + mkdir -p "$(MACOS_RELEASE_DIR)" + cd "$(DESKTOP_DIR)" && npm run desktop:build + @copied=0; \ + while IFS= read -r artifact; do \ + cp -R "$$artifact" "$(MACOS_RELEASE_DIR)/"; \ + echo "Copied $$artifact -> $(MACOS_RELEASE_DIR)/"; \ + copied=1; \ + done < <(find \ + "$(DESKTOP_DIR)/src-tauri/target/release/bundle" \ + "$(ROOT_DIR)/build-cache/release/bundle" \ + -maxdepth 5 \( -name "*.dmg" -o -name "*.app" \) ! -name "rw.*" -print 2>/dev/null); \ + if [[ "$$copied" != "1" ]]; then \ + echo "No macOS desktop package artifacts were found." >&2; \ + exit 1; \ + fi -release-check: - @command -v cargo-audit >/dev/null || { echo "cargo-audit $(RELEASE_CARGO_AUDIT_VERSION) is required: cargo install cargo-audit --locked --version $(RELEASE_CARGO_AUDIT_VERSION)" >&2; exit 1; } - @test "$$(cargo audit --version | awk '{print $$NF}')" = "$(RELEASE_CARGO_AUDIT_VERSION)" || { echo "cargo-audit must be exactly $(RELEASE_CARGO_AUDIT_VERSION)" >&2; exit 1; } - @test "$$(node -p 'process.versions.node')" = "$(RELEASE_NODE_VERSION)" || { echo "Node.js must be exactly $(RELEASE_NODE_VERSION)" >&2; exit 1; } - @test "$$(npm --version)" = "$(RELEASE_NPM_VERSION)" || { echo "npm must be exactly $(RELEASE_NPM_VERSION)" >&2; exit 1; } - cd ui && node scripts/assert-no-next-dev.cjs - cargo fmt --all -- --check - cargo test --locked --workspace - cargo clippy --locked --workspace --all-targets --all-features -- -D warnings - cd ui && npm ci - cd ui && npm run test:dependency-compat - cd ui && npm run test:devnet-airdrop - cd ui && npm run test:program-deploy - cd ui && npm run lint - cd ui && npm exec tsc -- --noEmit - cd ui && npm run build - cargo audit - cd ui && npm audit --audit-level=high +package-windows: + mkdir -p "$(WINDOWS_RELEASE_DIR)" + cd "$(DESKTOP_DIR)" && npm run tauri -- build --target "$(TAURI_WINDOWS_TARGET)" + @copied=0; \ + while IFS= read -r artifact; do \ + cp -f "$$artifact" "$(WINDOWS_RELEASE_DIR)/"; \ + echo "Copied $$artifact -> $(WINDOWS_RELEASE_DIR)/"; \ + copied=1; \ + done < <(find \ + "$(DESKTOP_DIR)/src-tauri/target/$(TAURI_WINDOWS_TARGET)/release/bundle" \ + "$(ROOT_DIR)/build-cache/$(TAURI_WINDOWS_TARGET)/release/bundle" \ + -maxdepth 6 \( -name "*.msi" -o -name "*.exe" \) -print 2>/dev/null); \ + if [[ "$$copied" != "1" ]]; then \ + echo "No Windows desktop package artifacts were found." >&2; \ + exit 1; \ + fi diff --git a/README.md b/README.md index 013e8f1..54242f3 100644 --- a/README.md +++ b/README.md @@ -1,39 +1,38 @@
-

🔐 Sol SafeKey - Secure Solana Wallet & Keystore

-

Rust SDK · CLI · Web UI · Tauri Desktop Wallet

+

FnzeroSafe

+

Local-first Solana wallet, secure keystore, desktop app, and iOS/Android app

- Open-source, local-first Solana wallet security toolkit with encrypted keystores, 2FA, bot integration, token operations, Pump trading, and Squads multisig. + FnzeroSafe is an open-source Solana wallet security workspace for encrypted keystores, desktop signing, mobile wallets, dApp signing, Pump trading, Squads multisig, bot integration, and advanced desktop-only Program workflows.

- - Crates.io + + Crates.io - - Documentation + + Documentation - + License - - GitHub stars - - - GitHub forks + + GitHub stars

Rust Solana - Security + Next.js + Tauri + Flutter

- 中文 | - English | + 中文 | + English | Website | Telegram | Discord @@ -41,231 +40,433 @@ --- -## 📑 Table of Contents +## Document Outline + +1. [Project Overview](#1-project-overview) + 1. [What FnzeroSafe Is For](#11-what-fnzerosafe-is-for) + 2. [Product Editions](#12-product-editions) + 3. [Capability Matrix](#13-capability-matrix) + 4. [Platform Matrix](#14-platform-matrix) +2. [Repository Layout](#2-repository-layout) +3. [Development Environment](#3-development-environment) + 1. [Required Toolchains](#31-required-toolchains) + 2. [One-Time Setup](#32-one-time-setup) + 3. [Host Notes](#33-host-notes) +4. [Run In Development](#4-run-in-development) + 1. [Desktop App](#41-desktop-app) + 2. [iOS App](#42-ios-app) + 3. [Android App](#43-android-app) + 4. [CLI](#44-cli) +5. [Package For Release](#5-package-for-release) + 1. [Release Directory](#51-release-directory) + 2. [macOS Desktop](#52-macos-desktop) + 3. [Windows Desktop](#53-windows-desktop) + 4. [iOS](#54-ios) + 5. [Android](#55-android) + 6. [All Platforms](#56-all-platforms) +6. [Command Reference](#6-command-reference) +7. [Configuration](#7-configuration) +8. [Security Model](#8-security-model) +9. [Documentation](#9-documentation) +10. [Before Submitting To GitHub](#10-before-submitting-to-github) +11. [License](#11-license) + +--- -- [What This Project Provides](#what-this-project-provides) -- [✨ Features](#-features) -- [🚀 Quick Start](#-quick-start) -- [📦 Installation](#-installation) -- [🖥️ Web and Desktop UI](#️-web-and-desktop-ui) -- [📋 Feature Guide](#-feature-guide) -- [📚 Documentation](#-documentation) -- [🔐 Security](#-security) -- [💬 Contact](#-contact) +## 1. Project Overview -## What This Project Provides +### 1.1 What FnzeroSafe Is For -Sol SafeKey is an open-source, local-first Solana wallet and key management toolkit. It combines a Rust SDK, CLI, self-hosted web wallet, and Tauri desktop app in one repository, with encrypted Keystore workflows for developers, bot operators, multisig teams, and individual wallet users. +FnzeroSafe is a local-first Solana wallet and key-management workspace. It combines a Rust core crate, an interactive CLI, a local desktop API, a Next.js web interface, a Tauri desktop shell, and a Flutter mobile app for iOS and Android. | Area | Coverage | -|------|----------| -| Interfaces | Rust SDK, interactive CLI, Next.js web wallet, Tauri desktop wallet | -| Wallet security | AES-256 encrypted Keystore files, password unlock, hardware fingerprint, optional TOTP 2FA/3FA | -| Solana operations | SOL and SPL Token transfers, Token-2022 assets, WSOL, durable nonce accounts, transaction history | -| Trading | Pump.fun and PumpSwap sells, balance shortcuts, cashback claims | -| Teams and programs | Squads v4 multisig proposals, program deployment, upgrades, and authority management | -| Automation | Bot helper APIs, local Rust API, examples, and bilingual documentation | - -### 📋 Feature Guide - -#### 🚀 Quick Start -**[Installation →](#-installation)** → **[Unlock Wallet](INTERACTIVE_TUTORIAL.md#u-unlock-wallet)** → **[Check Balance](INTERACTIVE_TUTORIAL.md#7-check-sol-balance)** - -#### 🔑 Core Functions -- **[1. Create Plaintext Key](INTERACTIVE_TUTORIAL.md#1-create-plaintext-key)** - Generate unencrypted keypair (testing only) -- **[2. Create Encrypted Key](INTERACTIVE_TUTORIAL.md#2-create-encrypted-key)** - Encrypt and save to keystore -- **[3. Decrypt Key](INTERACTIVE_TUTORIAL.md#3-decrypt-key)** - Decrypt keystore and reveal private key - -#### 🔒 Wallet Management -- **[U. Unlock Wallet](INTERACTIVE_TUTORIAL.md#u-unlock-wallet)** - Unlock wallet for Solana operations - -#### 🛡️ Advanced Security -- **[4. Setup 2FA](INTERACTIVE_TUTORIAL.md#4-setup-2fa-authentication)** - Configure two-factor authentication -- **[5. Generate Triple-Factor Wallet](INTERACTIVE_TUTORIAL.md#5-generate-triple-factor-wallet)** - Create 3FA wallet -- **[6. Unlock Triple-Factor Wallet](INTERACTIVE_TUTORIAL.md#6-unlock-triple-factor-wallet)** - Decrypt 3FA encrypted wallet - -#### 💰 Solana Operations -##### Balance & Transfer -- **[7. Check Balance](INTERACTIVE_TUTORIAL.md#7-check-sol-balance)** - Query SOL balance -- **[8. Transfer SOL](INTERACTIVE_TUTORIAL.md#8-transfer-sol)** - Send SOL - -##### WSOL Operations -- **[9. Create WSOL ATA](INTERACTIVE_TUTORIAL.md#9-create-wsol-ata)** - Create WSOL ATA -- **[10. Wrap SOL](INTERACTIVE_TUTORIAL.md#10-wrap-sol--wsol)** - SOL → WSOL -- **[11. Unwrap WSOL](INTERACTIVE_TUTORIAL.md#11-unwrap-wsol--sol)** - WSOL → SOL -- **[12. Close WSOL ATA](INTERACTIVE_TUTORIAL.md#12-close-wsol-ata)** - Close WSOL ATA - -##### Token Operations -- **[13. Transfer SPL Token](INTERACTIVE_TUTORIAL.md#13-transfer-spl-token)** - Send SPL tokens -- **[14. Create Nonce Account](INTERACTIVE_TUTORIAL.md#14-create-nonce-account)** - Create durable nonce - -##### DEX Operations -- **[15. Pump.fun Sell](INTERACTIVE_TUTORIAL.md#15-pumpfun-sell-token)** - Sell on Pump.fun DEX -- **[16. PumpSwap Sell](INTERACTIVE_TUTORIAL.md#16-pumpswap-sell-token)** - Sell on PumpSwap DEX - -##### Cashback Operations -- **[17. Pump.fun Cashback](INTERACTIVE_TUTORIAL.md#17-pumpfun-cashback-view--claim)** - View/claim pump.fun cashback (SOL) -- **[18. PumpSwap Cashback](INTERACTIVE_TUTORIAL.md#18-pumpswap-cashback-view--claim)** - View/claim PumpSwap cashback (WSOL) +|---|---| +| Wallets | Create wallets, import keystores/private keys/mnemonics, unlock wallets, export encrypted backups | +| Security | Password keystores, encrypted local API bodies, local API token, TOTP, biometric confirmation, sensitive log filtering | +| Assets | SOL balance, SPL Token accounts, Token-2022 accounts, mint metadata, transaction history | +| Payments | SOL transfer, SPL transfer, WSOL wrap/unwrap/close ATA | +| dApps | In-app WebView, Solana provider injection, message/transaction preview, user-confirmed signing | +| Squads | Squads v4 multisig create/info/proposals/approve/reject/execute, SOL/SPL payment proposals | +| Trading | Pump.fun and PumpSwap sell flows, cashback views and claims, SWQoS token configuration | +| Programs | Desktop-only Program deploy, upgrade, source build, authority and deployment workflows | +| Automation | Rust SDK, CLI helpers, local API, examples for bot integration | + +### 1.2 Product Editions + +| Edition | Path | Technology | Primary Use | +|---|---|---|---| +| Desktop app | `apps/desktop` | Next.js + Tauri + Rust API | Full local wallet console, dApp signing, Pump, Squads, Program workflows | +| Mobile app | `apps/mobile` | Flutter + `flutter_rust_bridge` + Rust core | iOS/Android wallet, assets, payments, dApp signing, Pump, Squads | +| Rust core / CLI | `crates/core` | Rust | Keystore, CLI, SDK-style integration and automation | +| Shared services | `crates/app-services` | Rust | Business logic shared by desktop and mobile | +| Mobile bridge | `crates/mobile-bridge` | Rust FFI | FRB-friendly API consumed by Flutter | + +### 1.3 Capability Matrix + +| Capability | Desktop | iOS | Android | Notes | +|---|---:|---:|---:|---| +| Wallet create/import/unlock/export | Yes | Yes | Yes | Secrets stay in encrypted keystores | +| SOL/SPL assets and history | Yes | Yes | Yes | Uses Solana RPC | +| SOL/SPL/WSOL payments | Yes | Yes | Yes | User confirmation required | +| dApp message signing | Yes | Yes | Yes | WebView/provider flow on mobile | +| dApp transaction signing/sending | Yes | Yes | Yes | User confirmation required | +| Squads multisig | Yes | Yes | Yes | Create, proposals, approve/reject/execute | +| PumpFun/PumpSwap | Yes | Partial mobile integration | Partial mobile integration | Mobile submit flows continue to mature | +| Program deploy | Yes | No | No | Desktop-only by design | +| Program upgrade | Yes | No | No | Desktop-only by design | +| Program source build | Yes | No | No | Desktop-only by design | +| Generic Program invoke | Yes | No | No | Desktop-only by design | + +### 1.4 Platform Matrix + +| Platform | Status | Main Command | Output | +|---|---|---|---| +| Desktop development | Supported | `make dev` | Tauri app, Next.js on `127.0.0.1:3840`, API on `127.0.0.1:3841` | +| macOS desktop package | Supported on macOS | `make package-macos` | `release/macos/*.dmg` and `.app` | +| Windows desktop package | Supported on Windows runner | `make package-windows` | `release/windows/*.msi` and/or `.exe` | +| iOS app package | Supported with Xcode iOS platform/signing | `make package-ios` | `release/ios/*.app` or `.ipa` | +| Android app package | Supported | `make package-android` | `release/android/*.apk` and `.aab` | +| CLI | Supported | `cargo run -p fnzero-safe-core --features full -- start` | Interactive terminal wallet tools | --- +## 2. Repository Layout + +```text +/ +├─ Cargo.toml +├─ Makefile +├─ crates/ +│ ├─ core/ # Rust SDK and CLI binary: fnzero-safe +│ ├─ app-services/ # Shared wallet/assets/payments/dApp/Squads services +│ ├─ desktop-api/ # Local Axum API used by desktop/web +│ └─ mobile-bridge/ # flutter_rust_bridge FFI layer +├─ apps/ +│ ├─ desktop/ # Next.js UI and Tauri desktop shell +│ └─ mobile/ # Flutter iOS/Android app +├─ packages/ +│ └─ shared-contracts/ # Shared API contracts and interface notes +├─ examples/ # Bot and keystore examples +├─ docs/ # Internal testing and development notes +└─ release/ # Package output directory, ignored by Git +``` + +The public product name is **FnzeroSafe**. Internal Cargo package names such as `fnzero-safe-core`, `fnzero-safe-desktop-api`, and `fnzero-safe-mobile-bridge` keep workspace crates unique. --- -## 📦 Installation +## 3. Development Environment -### Install from crates.io (Recommended) +### 3.1 Required Toolchains -The latest stable release is available on [crates.io](https://crates.io/crates/sol-safekey): +| Tool | Recommended Version | Used For | +|---|---|---| +| Rust | 1.89+ | Workspace, CLI, desktop API, mobile bridge | +| Node.js | 20 or 22+ | Desktop web app | +| npm | 10+ | Desktop dependencies and scripts | +| Flutter / Dart | Flutter 3.24+ | iOS and Android app | +| Xcode | Current stable | macOS desktop package, iOS simulator/device/archive | +| Android Studio / SDK / NDK | Current stable | Android builds and emulators | +| JDK | 17 | Android Gradle builds | +| `cargo-ndk` | Latest | Android Rust bridge libraries | +| `flutter_rust_bridge_codegen` | FRB 2.x | Regenerating Dart/Rust bridge code | + +### 3.2 One-Time Setup ```bash -# Install with all features enabled -cargo install sol-safekey --features full +rustup update +npm --version +flutter doctor -v +cargo install cargo-ndk +cargo install flutter_rust_bridge_codegen +npm --prefix apps/desktop install +cd apps/mobile && flutter pub get +``` -# Verify installation -sol-safekey --version +Regenerate mobile bridge bindings after changing `crates/mobile-bridge/src/api.rs`: -# Start interactive menu -sol-safekey start +```bash +cd apps/mobile +./tool/generate_bridge.sh ``` -This installs the complete CLI with all features: -- 🔐 **Core encryption** - AES-256 password-based encryption -- 🔑 **2FA/TOTP** - Two-factor authentication support -- 🌐 **Solana operations** - Full Solana transaction support -- 💱 **DEX operations** - Pump.fun & PumpSwap trading -- 💰 **Cashback** - Claim trading cashback rewards +### 3.3 Host Notes -### Install from source +| Host | Notes | +|---|---| +| macOS | Required for macOS desktop packages and iOS builds. Install the matching iOS platform/runtime from Xcode > Settings > Components. | +| Windows | Recommended for `make package-windows` with the MSVC target and Visual Studio build tools. | +| Android | Use JDK 17. Override auto-detection with `ANDROID_JAVA_HOME=/path/to/jdk17 make package-android`. | +| iOS signing | Unsigned `.app` builds can use `make package-ios`; signed IPA/TestFlight builds require an Apple developer team, provisioning profile, and export options. | -```bash -# Clone repository -git clone https://github.com/0xfnzero/sol-safekey.git -cd sol-safekey +--- -# Build and install -cargo install --path . --features full +## 4. Run In Development + +### 4.1 Desktop App + +Run from the repository root: + +```bash +npm --prefix apps/desktop install +make dev ``` -### System Requirements +`make dev` stops stale local development processes first, then starts: -- **Rust**: 1.89+ (install from [rustup.rs](https://rustup.rs/)) -- **Operating System**: Linux, macOS, or Windows -- **Network**: Internet connection for Solana RPC calls +| Service | URL | +|---|---| +| English UI | `http://127.0.0.1:3840/en/` | +| Chinese UI | `http://127.0.0.1:3840/zh/` | +| Local API health | `http://127.0.0.1:3841/api/health` | -## 🖥️ Web and Desktop UI +The local API is designed for loopback use only. Do not expose `3841` through a public proxy, tunnel, or port forward. -The self-hosted web wallet, local Rust API, and Tauri desktop app live in this repository under [`ui/`](https://github.com/0xfnzero/sol-safekey/tree/main/ui). The API depends directly on the root `sol-safekey` crate, so the CLI, Rust SDK, web wallet, and desktop wallet use one source tree and one Cargo lockfile. +### 4.2 iOS App ```bash -# Install JavaScript and Rust dependencies -make install +cd apps/mobile +./tool/bootstrap_mobile.sh +flutter pub get +./tool/generate_bridge.sh +./tool/build_ios_native.sh +flutter run -d ios +``` -# Start Next.js on :3840 and the local API on :3841 -make ui-dev +iOS requirements: -# Build the embedded web/API binary -make api-build +1. Xcode command line tools are selected with `xcode-select`. +2. The matching iOS platform/runtime is installed in Xcode Components. +3. iOS deployment target is 15.0. +4. Physical devices and TestFlight require normal Xcode signing setup. -# Start the Tauri desktop app -make desktop-dev +### 4.3 Android App + +```bash +cd apps/mobile +./tool/bootstrap_mobile.sh +flutter pub get +./tool/generate_bridge.sh +./tool/build_android_native.sh +flutter run -d android ``` -Open `http://127.0.0.1:3840/en/` or `http://127.0.0.1:3840/zh/` during development. The release API binary embeds the static frontend and serves it on `http://127.0.0.1:3841`. +Android notes: -### Create or import your first wallet +1. Android application id is `dev.fnzero.safe`. +2. Android `minSdk` is 26. +3. Rust bridge `.so` libraries are generated for `arm64-v8a`, `armeabi-v7a`, `x86`, and `x86_64`. +4. JDK 17 is recommended for Gradle. -1. Open the UI and select **Create New Wallet** or **Import Wallet**. -2. For a new wallet, enter a name and a 10-20 character password. For an existing wallet, select its `keystore.json` and enter its password. -3. Download and back up the encrypted Keystore before depositing funds. The password cannot be recovered. -4. Select the wallet from the wallet picker, then use **Receive**, **Send**, or **Trade** from the wallet page. -5. Check the selected network and RPC under **Settings** before signing any transaction. +### 4.4 CLI -See the **[UI Wallet User Guide](UI_USER_GUIDE.md)** for wallet management, transfers, trading, multisig workflows, backups, and troubleshooting. +```bash +cargo run -p fnzero-safe-core --features full -- start +``` -### Cargo Feature Flags +Install the CLI locally from source: -- `full` - Enable all features (default for CLI) -- `cli` - Command-line interface with colored output -- `2fa` - Two-factor authentication (TOTP) support -- `solana-ops` - Solana blockchain operations -- `sol-trade-sdk` - Trading operations (Pump.fun, PumpSwap) +```bash +cargo install --path crates/core --features full +fnzero-safe start +``` --- -## 📖 Complete Interactive Menu Guide +## 5. Package For Release -📖 **[View Complete Interactive Menu Guide → INTERACTIVE_TUTORIAL.md](INTERACTIVE_TUTORIAL.md)** +### 5.1 Release Directory -Comprehensive step-by-step guide for all interactive menu operations, including detailed instructions, use cases, and example outputs for each of the 18 menu options. +All package commands copy artifacts into the root `release/` directory: ---- +```text +release/ +├─ android/ +│ ├─ app-release.apk +│ └─ app-release.aab +├─ ios/ +│ └─ *.app or *.ipa +├─ macos/ +│ ├─ FnzeroSafe.app +│ └─ FnzeroSafe_*.dmg +└─ windows/ + └─ *.msi and/or *.exe +``` -## 📚 Documentation +`release/` is ignored by Git. -- **[UI Wallet User Guide](UI_USER_GUIDE.md)** - Create, import, back up, and use wallets in the web or desktop UI -- **[Bot Integration Guide](BOT_INTEGRATION.md)** - How to integrate sol-safekey into your bot -- **[User Guide](USER_GUIDE.md)** - Complete usage instructions and examples +### 5.2 macOS Desktop ---- +```bash +make package-macos +``` + +This runs the desktop production build and copies `.dmg` and `.app` artifacts into `release/macos/`. + +### 5.3 Windows Desktop -## 🔐 Security +```bash +make package-windows +``` -- ✅ **Password Security**: stdin pipe only (never in environment variables) -- ✅ **Encryption**: AES-256 with PBKDF2 key derivation -- ✅ **Memory Safety**: Immediate password cleanup after use -- ✅ **Hardware Fingerprint**: Device-based security layer -- ✅ **2FA Support**: Optional two-factor authentication for enhanced security +This builds the Tauri Windows package and copies `.msi` and/or `.exe` artifacts into `release/windows/`. +Recommended build environment: a Windows runner with Rust, Node.js, npm, and Microsoft Visual Studio build tools installed. Cross-building Windows installers from macOS requires extra toolchain setup. -## 🛠️ Available Operations +Override the target when needed: -### Wallet Management -- **Create Wallet** - Generate new encrypted wallet with AES-256 -- **Import Wallet** - Import existing wallet from private key or seed phrase -- **Export Wallet** - Export wallet to encrypted JSON format -- **View Address** - Display wallet public address +```bash +TAURI_WINDOWS_TARGET=x86_64-pc-windows-msvc make package-windows +``` -### SOL Operations -- **Query Balance** - Check SOL balance in your wallet -- **Transfer SOL** - Send SOL to other addresses -- **Wrap SOL** - Convert SOL to WSOL (Wrapped SOL) -- **Unwrap WSOL** - Convert WSOL back to SOL -- **Close WSOL ATA** - Close WSOL ATA account +### 5.4 iOS -### Token Operations -- **Transfer SPL Token** - Send SPL tokens to other addresses -- **Query Token Balance** - Check token balances +Unsigned local `.app` build: -### DEX Operations -- **🔥 Pump.fun Sell** - Interactive token selling on Pump.fun DEX (internal market only) -- **🔄 PumpSwap Sell** - Sell tokens on PumpSwap DEX +```bash +make package-ios +``` + +Signed IPA build: -### Cashback Operations -- **Pump.fun Cashback** - View and claim pump.fun cashback (native SOL) -- **PumpSwap Cashback** - View and claim PumpSwap cashback (WSOL) +```bash +IOS_CODESIGN=true IOS_EXPORT_OPTIONS_PLIST=/path/to/ExportOptions.plist make package-ios +``` -### Advanced Features -- **Durable Nonce Accounts** - Create and manage nonce accounts for offline signing -- **2FA Support** - Optional two-factor authentication for enhanced security +The command first builds the Rust iOS `FnzeroSafeMobileBridge.xcframework`, then runs the Flutter iOS package step and copies artifacts into `release/ios/`. -### Transaction Management -- **Check Transaction Status** - Query transaction status on Solana +### 5.5 Android + +```bash +make package-android +``` + +If JDK 17 is not auto-detected: + +```bash +ANDROID_JAVA_HOME=/path/to/jdk17 make package-android +``` + +Android release signing: + +```bash +cp apps/mobile/android/key.properties.example apps/mobile/android/key.properties +# Edit key.properties so storeFile, storePassword, keyAlias, and keyPassword point to your upload keystore. +make package-android +``` + +The command builds Rust Android native libraries, a release APK, and a release AAB, then copies artifacts into `release/android/`. + +### 5.6 All Platforms + +```bash +make package +``` + +This runs Android, iOS, macOS, and Windows package targets in sequence. For CI, run each platform on its native runner when possible. + +--- + +## 6. Command Reference + +| Command | Description | +|---|---| +| `make dev` | Start desktop development; stale local app/API processes are stopped first | +| `make package-macos` | Build macOS desktop package into `release/macos/` | +| `make package-windows` | Build Windows desktop package into `release/windows/` | +| `make package-ios` | Build iOS `.app` or signed `.ipa` into `release/ios/` | +| `make package-android` | Build Android APK/AAB into `release/android/` | +| `make package` | Build all package targets | +| `cargo fmt --all -- --check` | Check Rust formatting | +| `cargo check --workspace --all-features` | Check the full Rust workspace | +| `cargo test --workspace` | Run Rust tests | +| `cargo clippy --workspace --all-targets --all-features -- -D warnings` | Run strict Rust linting | +| `npm --prefix apps/desktop run lint` | Run desktop lint and sensitive-input checks | +| `npm --prefix apps/desktop run build` | Build the Next.js static frontend | +| `cd apps/mobile && flutter analyze` | Analyze the Flutter app | +| `cd apps/mobile && flutter test --dart-define=FNZERO_MOBILE_DEV_BRIDGE=true` | Run Flutter tests with the dev bridge fallback | + +--- + +## 7. Configuration + +| Variable | Purpose | +|---|---| +| `FNZERO_SAFE_API_TOKEN` | Fixed local API token for desktop/web development | +| `FNZERO_SAFE_DB_PATH` | Override wallet database path | +| `FNZERO_SAFE_ALLOWED_ORIGINS` | Comma-separated list of additional trusted local API origins | +| `FNZERO_SAFE_ALLOW_SECRET_EXPORT=true` | Allow plaintext private key/mnemonic export from non-desktop local debugging contexts | +| `FNZERO_SAFE_ALLOW_DIRECT_SECRET_INPUT=true` | Allow direct plaintext private key submission from web debugging contexts | +| `FNZERO_MOBILE_DEV_BRIDGE=true` | Use Flutter dev bridge fallback for tests without native libraries | +| `ANDROID_JAVA_HOME` | JDK 17 path for Android package builds | +| `IOS_CODESIGN=true` | Build a signed iOS IPA instead of an unsigned `.app` | +| `IOS_EXPORT_OPTIONS_PLIST` | Export options plist path for signed iOS IPA builds | +| `TAURI_WINDOWS_TARGET` | Override the Tauri Windows target triple | +| `FNZERO_SAFE_FLASHBLOCK_SWQOS_API_TOKEN` | FlashBlock SWQoS token | +| `FNZERO_SAFE_BLOCKRAZOR_SWQOS_API_TOKEN` | BlockRazor SWQoS token | +| `FNZERO_SAFE_ASTRALANE_SWQOS_API_TOKEN` | Astralane SWQoS token | +| `FNZERO_SAFE_SPEEDLANDING_SWQOS_API_TOKEN` | SpeedLanding SWQoS token | + +Legacy `SOL_SAFEKEY_*` variables are still accepted as fallbacks for existing local setups. + +--- + +## 8. Security Model + +1. **Local-first API**: the desktop API binds to loopback and requires a local API token for protected routes. +2. **Encrypted sensitive requests**: password and secret-bearing JSON requests are encrypted before crossing the local web/API boundary. +3. **Keystore-first storage**: saved wallets store encrypted keystore JSON, not plaintext private keys. +4. **Mobile private storage**: mobile keystore files stay in app private storage; wallet metadata and biometric settings use secure storage. +5. **Biometric confirmation**: mobile signing actions can be gated by platform biometrics; desktop Touch ID uses macOS Keychain access control. +6. **Explicit signing confirmation**: payments, dApp signing, transaction sending, and Squads actions go through a confirmation screen. +7. **Plaintext export controls**: plaintext private key and mnemonic export are intentionally gated and should be used only for migration or local debugging. +8. **No mobile Program workflows**: mobile builds do not expose Program deploy, upgrade, source build, or generic invoke APIs. + +Always back up encrypted keystores before depositing funds. Passwords and seed phrases cannot be recovered by FnzeroSafe. --- -## 📖 Examples +## 9. Documentation -See `examples/bot_example.rs` for a complete bot integration example. +- [Desktop UI README](apps/desktop/README.md) +- [Mobile README](apps/mobile/README.md) +- [Mobile Internal Test Checklist](docs/mobile/INTERNAL_TEST_CHECKLIST.md) +- [UI Wallet User Guide](UI_USER_GUIDE.md) +- [Bot Integration Guide](BOT_INTEGRATION.md) +- [CLI User Guide](USER_GUIDE.md) +- [Interactive Tutorial](INTERACTIVE_TUTORIAL.md) +- [Program Deployment Guide](apps/desktop/PROGRAM_DEPLOYMENT.md) --- -## 🤝 Contributing +## 10. Before Submitting To GitHub + +Recommended validation: + +```bash +cargo fmt --all -- --check +cargo check --workspace --all-features +cargo test --workspace +cargo clippy --workspace --all-targets --all-features -- -D warnings +npm --prefix apps/desktop run lint +npm --prefix apps/desktop run build +cd apps/mobile && flutter analyze +cd apps/mobile && flutter test --dart-define=FNZERO_MOBILE_DEV_BRIDGE=true +``` + +Package validation when release artifacts are needed: + +```bash +make package-android +make package-macos +# Run package-ios on a macOS host with the required iOS platform/runtime installed. +# Run package-windows on a Windows host with MSVC build tools installed. +``` -Contributions welcome! Please ensure security best practices are followed. **Use English for commit and PR descriptions.** +For security-sensitive changes, include the threat model and the validation commands you ran in the pull request. --- -## 📄 License +## 11. License -MIT License - See LICENSE file for details +MIT License. See [LICENSE](LICENSE). diff --git a/README_CN.md b/README_CN.md index da146b0..a580c31 100644 --- a/README_CN.md +++ b/README_CN.md @@ -1,39 +1,38 @@

-

🔐 Sol SafeKey - 安全的 Solana 钱包与 Keystore

-

Rust SDK · CLI · Web UI · Tauri 桌面钱包

+

FnzeroSafe

+

本地优先的 Solana 钱包、安全 Keystore、桌面端与 iOS/Android 移动端应用

- 开源、本地优先的 Solana 钱包安全工具,支持加密 Keystore、2FA、Bot 集成、Token 操作、Pump 交易和 Squads 多签。 + FnzeroSafe 是一个开源 Solana 钱包安全工作区,覆盖加密 Keystore、桌面端签名、移动端钱包、dApp 签名、Pump 交易、Squads 多签、Bot 集成,以及仅桌面端开放的高级 Program 工作流。

- - Crates.io + + Crates.io - - Documentation + + Documentation - + License - - GitHub stars - - - GitHub forks + + GitHub stars

Rust Solana - Security + Next.js + Tauri + Flutter

- 中文 | - English | + 中文 | + English | 官网 | Telegram | Discord @@ -41,205 +40,433 @@ --- -## 📑 目录 +## 文档大纲 + +1. [项目概览](#1-项目概览) + 1. [FnzeroSafe 适合什么场景](#11-fnzerosafe-适合什么场景) + 2. [产品形态](#12-产品形态) + 3. [能力矩阵](#13-能力矩阵) + 4. [平台矩阵](#14-平台矩阵) +2. [仓库结构](#2-仓库结构) +3. [开发环境](#3-开发环境) + 1. [必要工具链](#31-必要工具链) + 2. [一次性初始化](#32-一次性初始化) + 3. [构建机说明](#33-构建机说明) +4. [开发环境运行](#4-开发环境运行) + 1. [桌面端](#41-桌面端) + 2. [iOS 端](#42-ios-端) + 3. [Android 端](#43-android-端) + 4. [CLI](#44-cli) +5. [打包发布](#5-打包发布) + 1. [Release 目录](#51-release-目录) + 2. [macOS 桌面端](#52-macos-桌面端) + 3. [Windows 桌面端](#53-windows-桌面端) + 4. [iOS](#54-ios) + 5. [Android](#55-android) + 6. [全部平台](#56-全部平台) +6. [命令速查](#6-命令速查) +7. [配置项](#7-配置项) +8. [安全模型](#8-安全模型) +9. [文档索引](#9-文档索引) +10. [提交到 GitHub 前](#10-提交到-github-前) +11. [许可证](#11-许可证) + +--- -- [这个项目提供什么](#这个项目提供什么) -- [✨ 特性](#-特性) -- [🚀 快速开始](#-快速开始) -- [📦 安装](#-安装) -- [🖥️ Web 与桌面 UI](#️-web-与桌面-ui) -- [📋 功能指南](#-功能指南) -- [📚 文档](#-文档) -- [🔐 安全性](#-安全性) -- [📖 示例](#-示例) -- [🤝 贡献](#-贡献) -- [📄 许可证](#-许可证) +## 1. 项目概览 + +### 1.1 FnzeroSafe 适合什么场景 + +FnzeroSafe 是一个本地优先的 Solana 钱包与密钥管理工作区。仓库内同时包含 Rust 核心库、交互式 CLI、本地桌面 API、Next.js 前端、Tauri 桌面壳,以及面向 iOS/Android 的 Flutter 移动端应用。 + +| 方向 | 覆盖范围 | +|---|---| +| 钱包 | 创建钱包、导入 keystore/私钥/助记词、解锁钱包、导出加密备份 | +| 安全 | 密码 Keystore、本地 API 敏感请求加密、本地 API token、TOTP、生物识别确认、敏感日志过滤 | +| 资产 | SOL 余额、SPL Token 账户、Token-2022 账户、mint 元数据、交易历史 | +| 转账 | SOL 转账、SPL 转账、WSOL wrap/unwrap/close ATA | +| dApp | 内置 WebView、Solana provider 注入、消息/交易预览、用户确认签名 | +| Squads | Squads v4 多签创建、查看、proposal、approve/reject/execute、SOL/SPL 支付 proposal | +| 交易 | Pump.fun 与 PumpSwap 卖出流程、返现查看与领取、SWQoS token 配置 | +| Program | 仅桌面端开放 Program 部署、升级、源码构建、权限与部署管理 | +| 自动化 | Rust SDK、CLI helper、本地 API、Bot 集成示例 | + +### 1.2 产品形态 + +| 形态 | 路径 | 技术栈 | 主要用途 | +|---|---|---|---| +| 桌面端应用 | `apps/desktop` | Next.js + Tauri + Rust API | 完整本地钱包控制台、dApp 签名、Pump、Squads、Program 工作流 | +| 移动端应用 | `apps/mobile` | Flutter + `flutter_rust_bridge` + Rust core | iOS/Android 钱包、资产、转账、dApp 签名、Pump、Squads | +| Rust core / CLI | `crates/core` | Rust | Keystore、CLI、SDK 集成和自动化 | +| 共享服务层 | `crates/app-services` | Rust | 桌面端与移动端复用的钱包/资产/转账/dApp/Squads 业务逻辑 | +| 移动端 bridge | `crates/mobile-bridge` | Rust FFI | Flutter 调用的 FRB-friendly API | + +### 1.3 能力矩阵 + +| 能力 | 桌面端 | iOS | Android | 说明 | +|---|---:|---:|---:|---| +| 钱包创建/导入/解锁/导出 | 支持 | 支持 | 支持 | Secret 保存在加密 Keystore 中 | +| SOL/SPL 资产和交易历史 | 支持 | 支持 | 支持 | 使用 Solana RPC | +| SOL/SPL/WSOL 转账 | 支持 | 支持 | 支持 | 必须用户确认 | +| dApp 消息签名 | 支持 | 支持 | 支持 | 移动端通过 WebView/provider 流程 | +| dApp 交易签名/发送 | 支持 | 支持 | 支持 | 必须用户确认 | +| Squads 多签 | 支持 | 支持 | 支持 | 创建、proposal、approve/reject/execute | +| PumpFun/PumpSwap | 支持 | 移动端部分集成 | 移动端部分集成 | 移动端 submit 流程持续完善 | +| Program deploy | 支持 | 不支持 | 不支持 | 设计上仅桌面端开放 | +| Program upgrade | 支持 | 不支持 | 不支持 | 设计上仅桌面端开放 | +| Program source build | 支持 | 不支持 | 不支持 | 设计上仅桌面端开放 | +| 通用 Program invoke | 支持 | 不支持 | 不支持 | 设计上仅桌面端开放 | + +### 1.4 平台矩阵 + +| 平台 | 状态 | 主要命令 | 输出 | +|---|---|---|---| +| 桌面端开发 | 支持 | `make dev` | Tauri 应用、`127.0.0.1:3840` 上的 Next.js、`127.0.0.1:3841` 上的 API | +| macOS 桌面端包 | macOS 构建机支持 | `make package-macos` | `release/macos/*.dmg` 和 `.app` | +| Windows 桌面端包 | Windows runner 支持 | `make package-windows` | `release/windows/*.msi` 和/或 `.exe` | +| iOS 应用包 | 需要 Xcode iOS platform/signing | `make package-ios` | `release/ios/*.app` 或 `.ipa` | +| Android 应用包 | 支持 | `make package-android` | `release/android/*.apk` 和 `.aab` | +| CLI | 支持 | `cargo run -p fnzero-safe-core --features full -- start` | 交互式终端钱包工具 | + +--- -## 这个项目提供什么 +## 2. 仓库结构 + +```text +/ +├─ Cargo.toml +├─ Makefile +├─ crates/ +│ ├─ core/ # Rust SDK 与 CLI 二进制:fnzero-safe +│ ├─ app-services/ # 共享钱包/资产/转账/dApp/Squads 服务 +│ ├─ desktop-api/ # 桌面端/Web 使用的本地 Axum API +│ └─ mobile-bridge/ # flutter_rust_bridge FFI 层 +├─ apps/ +│ ├─ desktop/ # Next.js UI 与 Tauri 桌面壳 +│ └─ mobile/ # Flutter iOS/Android 应用 +├─ packages/ +│ └─ shared-contracts/ # 共享 API 契约和接口说明 +├─ examples/ # Bot 与 Keystore 示例 +├─ docs/ # 内测和开发文档 +└─ release/ # 打包产物目录,已被 Git 忽略 +``` + +对外产品名统一是 **FnzeroSafe**。`fnzero-safe-core`、`fnzero-safe-desktop-api`、`fnzero-safe-mobile-bridge` 这类名称只是 Cargo workspace 内部包名,用来保证各 crate 名称唯一。 + +--- -Sol SafeKey 是一个开源、本地优先的 Solana 钱包和密钥管理工具。本仓库统一提供 Rust SDK、CLI、自托管 Web 钱包和 Tauri 桌面应用,适用于开发者、Bot 运营者、多签团队和个人钱包用户的加密 Keystore 工作流。 +## 3. 开发环境 -| 范围 | 覆盖内容 | -|------|----------| -| 使用界面 | Rust SDK、交互式 CLI、Next.js Web 钱包、Tauri 桌面钱包 | -| 钱包安全 | AES-256 加密 Keystore、密码解锁、硬件指纹、可选 TOTP 2FA/3FA | -| Solana 操作 | SOL 与 SPL Token 转账、Token-2022 资产、WSOL、Nonce 账户、交易记录 | -| 交易工具 | Pump.fun 与 PumpSwap 卖出、余额比例快捷操作、返现领取 | -| 团队与程序 | Squads v4 多签提案、程序部署、升级和权限管理 | -| 自动化集成 | Bot helper API、本地 Rust API、示例代码和中英双语文档 | +### 3.1 必要工具链 -### 📋 功能指南 +| 工具 | 推荐版本 | 用途 | +|---|---|---| +| Rust | 1.89+ | Workspace、CLI、桌面 API、移动端 bridge | +| Node.js | 20 或 22+ | 桌面端 Web 应用 | +| npm | 10+ | 桌面端依赖和脚本 | +| Flutter / Dart | Flutter 3.24+ | iOS 与 Android 应用 | +| Xcode | 当前稳定版 | macOS 桌面端包、iOS 模拟器/真机/archive | +| Android Studio / SDK / NDK | 当前稳定版 | Android 构建和模拟器 | +| JDK | 17 | Android Gradle 构建 | +| `cargo-ndk` | 最新版 | Android Rust bridge 动态库 | +| `flutter_rust_bridge_codegen` | FRB 2.x | 重新生成 Dart/Rust bridge 代码 | -#### 🎯 开始使用 +### 3.2 一次性初始化 -#### 步骤 1:启动交互式菜单 ```bash -sol-safekey start +rustup update +npm --version +flutter doctor -v +cargo install cargo-ndk +cargo install flutter_rust_bridge_codegen +npm --prefix apps/desktop install +cd apps/mobile && flutter pub get ``` -你将看到语言选择界面。选择你偏好的语言: +修改 `crates/mobile-bridge/src/api.rs` 后,需要重新生成移动端 bridge: -**英文**:输入 `2` -**中文**:输入 `1` +```bash +cd apps/mobile +./tool/generate_bridge.sh +``` -#### 步骤 2:选择一个操作 -选择语言后,你将看到主菜单。输入与你想执行的操作对应的数字。 +### 3.3 构建机说明 -**重要提示**:如果你还没有创建钱包,你需要: -- **解锁现有钱包**(选项 `U`) -- **创建新钱包**(选项 `1` 或 `2`) +| 构建机 | 说明 | +|---|---| +| macOS | macOS 桌面端包和 iOS 构建需要 macOS。请在 Xcode > Settings > Components 安装匹配的 iOS platform/runtime。 | +| Windows | 推荐在 Windows runner 上运行 `make package-windows`,并安装 MSVC target 和 Visual Studio build tools。 | +| Android | 推荐 JDK 17。可以用 `ANDROID_JAVA_HOME=/path/to/jdk17 make package-android` 覆盖自动检测。 | +| iOS 签名 | `make package-ios` 可做无签名 `.app` 构建;签名 IPA/TestFlight 需要 Apple developer team、profile 和 export options。 | --- -#### 🔑 核心功能(选项 1-3) -- **[1. 创建明文私钥](INTERACTIVE_TUTORIAL_CN.md#1-创建明文私钥(选项-1))** - 生成未加密密钥对(仅测试) -- **[2. 创建加密私钥](INTERACTIVE_TUTORIAL_CN.md)** - 加密并保存到 keystore -- **[3. 解密私钥](INTERACTIVE_TUTORIAL_CN.md#3-解密私钥(选项-3))** - 解密 keystore 显示私钥 +## 4. 开发环境运行 -#### 🔒 钱包管理(选项 U) -- **[U. 解锁钱包](INTERACTIVE_TUTORIAL_CN.md#u-解锁钱包)** - 解锁钱包进行 Solana 操作 +### 4.1 桌面端 -#### 🛡️ 高级安全(选项 4-6) -- **[4. 设置 2FA](INTERACTIVE_TUTORIAL_CN.md#4-设置-2fa-认证)** - 配置双因素认证 -- **[5. 生成三因子钱包](INTERACTIVE_TUTORIAL_CN.md#5-生成三因子钱包)** - 创建 3FA 钱包 -- **[6. 解锁三因子钱包](INTERACTIVE_TUTORIAL_CN.md#6-解锁三因子钱包)** - 解密 3FA 加密钱包 +在仓库根目录运行: -#### 💰 Solana 操作(选项 7-18) -##### 余额与转账 -- **[7. 查询余额](INTERACTIVE_TUTORIAL_CN.md#7-查询-sol-余额)** - 查询 SOL 余额 -- **[8. 转账 SOL](INTERACTIVE_TUTORIAL_CN.md#8-转账-sol)** - 发送 SOL +```bash +npm --prefix apps/desktop install +make dev +``` -##### WSOL 操作 -- **[9. 创建 WSOL ATA](INTERACTIVE_TUTORIAL_CN.md#9-创建-wsol-ata)** - 创建 WSOL 关联代币账户 -- **[10. 包装 SOL](INTERACTIVE_TUTORIAL_CN.md#10-包装-sol--wsol)** - SOL → WSOL -- **[11. 解包 WSOL](INTERACTIVE_TUTORIAL_CN.md#11-解包-wsol--sol)** - WSOL → SOL -- **[12. 关闭 WSOL ATA](INTERACTIVE_TUTORIAL_CN.md#12-关闭-wsol-ata)** - 关闭 WSOL ATA +`make dev` 会先停止旧的本地开发进程,然后启动: -##### 代币操作 -- **[13. 转账 SPL 代币](INTERACTIVE_TUTORIAL_CN.md#13-转账-spl-代币)** - 发送 SPL 代币 -- **[14. 创建 Nonce 账户](INTERACTIVE_TUTORIAL_CN.md#14-创建-nonce-账户)** - 创建持久化 nonce +| 服务 | 地址 | +|---|---| +| 英文 UI | `http://127.0.0.1:3840/en/` | +| 中文 UI | `http://127.0.0.1:3840/zh/` | +| 本地 API 健康检查 | `http://127.0.0.1:3841/api/health` | -##### DEX 操作 -- **[15. Pump.fun 卖出](INTERACTIVE_TUTORIAL_CN.md#15-pumpfun-卖出代币)** - Pump.fun DEX 卖出 -- **[16. PumpSwap 卖出](INTERACTIVE_TUTORIAL_CN.md#16-pumpswap-卖出代币)** - PumpSwap DEX 卖出 +本地 API 只应该绑定 loopback 使用。不要通过公网代理、隧道或端口转发暴露 `3841`。 -##### 返现操作 -- **[17. Pump.fun 返现](INTERACTIVE_TUTORIAL_CN.md#17-pumpfun-返现)** - pump.fun 返现(SOL) -- **[18. PumpSwap 返现](INTERACTIVE_TUTORIAL_CN.md#18-pumpswap-返现)** - PumpSwap 返现(WSOL) +### 4.2 iOS 端 ---- ---- +```bash +cd apps/mobile +./tool/bootstrap_mobile.sh +flutter pub get +./tool/generate_bridge.sh +./tool/build_ios_native.sh +flutter run -d ios +``` -## 📦 安装 +iOS 要求: -### 从 crates.io 安装(推荐) +1. 使用 `xcode-select` 选择正确的 Xcode command line tools。 +2. 在 Xcode Components 中安装匹配的 iOS platform/runtime。 +3. iOS deployment target 是 15.0。 +4. 真机和 TestFlight 需要常规 Xcode 签名配置。 -最新稳定版本已发布在 [crates.io](https://crates.io/crates/sol-safekey): +### 4.3 Android 端 ```bash -# 启用所有功能安装 -cargo install sol-safekey --features full +cd apps/mobile +./tool/bootstrap_mobile.sh +flutter pub get +./tool/generate_bridge.sh +./tool/build_android_native.sh +flutter run -d android +``` + +Android 说明: + +1. Android application id 是 `dev.fnzero.safe`。 +2. Android `minSdk` 是 26。 +3. Rust bridge `.so` 会生成 `arm64-v8a`、`armeabi-v7a`、`x86`、`x86_64` 四种 ABI。 +4. Gradle 推荐使用 JDK 17。 + +### 4.4 CLI + +```bash +cargo run -p fnzero-safe-core --features full -- start +``` + +从源码安装本地 CLI: + +```bash +cargo install --path crates/core --features full +fnzero-safe start +``` + +--- + +## 5. 打包发布 + +### 5.1 Release 目录 + +所有打包命令都会把产物复制到根目录 `release/`: -# 验证安装 -sol-safekey --version +```text +release/ +├─ android/ +│ ├─ app-release.apk +│ └─ app-release.aab +├─ ios/ +│ └─ *.app 或 *.ipa +├─ macos/ +│ ├─ FnzeroSafe.app +│ └─ FnzeroSafe_*.dmg +└─ windows/ + └─ *.msi 和/或 *.exe +``` + +`release/` 已被 Git 忽略。 + +### 5.2 macOS 桌面端 -# 启动交互式菜单 -sol-safekey start +```bash +make package-macos ``` -这将安装完整的 CLI 工具,包含所有功能: -- 🔐 **核心加密** - 基于 AES-256 的密码加密 -- 🔑 **2FA/TOTP** - 双因素认证支持 -- 🌐 **Solana 操作** - 完整的 Solana 交易功能 -- 💱 **DEX 操作** - Pump.fun & PumpSwap 交易 -- 💰 **返现** - 领取交易返现奖励 +该命令会执行桌面端生产构建,并把 `.dmg` 和 `.app` 复制到 `release/macos/`。 -### 从源码安装 +### 5.3 Windows 桌面端 ```bash -# 克隆仓库 -git clone https://github.com/0xfnzero/sol-safekey.git -cd sol-safekey +make package-windows +``` -# 编译并安装 -cargo install --path . --features full +该命令会构建 Tauri Windows 安装包,并把 `.msi` 和/或 `.exe` 复制到 `release/windows/`。 + +推荐构建环境:Windows runner,并安装 Rust、Node.js、npm 和 Microsoft Visual Studio build tools。从 macOS 交叉构建 Windows 安装包需要额外工具链配置。 + +需要覆盖目标平台时: + +```bash +TAURI_WINDOWS_TARGET=x86_64-pc-windows-msvc make package-windows ``` -### 系统要求 +### 5.4 iOS -- **Rust**: 1.89+ (从 [rustup.rs](https://rustup.rs/) 安装) -- **操作系统**: Linux、macOS 或 Windows -- **网络**: 进行 Solana RPC 调用需要互联网连接 +无签名本地 `.app` 构建: -## 🖥️ Web 与桌面 UI +```bash +make package-ios +``` -自托管 Web 钱包、本地 Rust API 与 Tauri 桌面应用统一放在本仓库的 [`ui/`](https://github.com/0xfnzero/sol-safekey/tree/main/ui) 下。API 直接依赖根目录的 `sol-safekey` crate,因此 CLI、Rust SDK、Web 钱包与桌面钱包共用同一份源码和 Cargo 锁文件。 +签名 IPA 构建: ```bash -# 安装 JavaScript 与 Rust 依赖 -make install +IOS_CODESIGN=true IOS_EXPORT_OPTIONS_PLIST=/path/to/ExportOptions.plist make package-ios +``` -# 启动 :3840 的 Next.js 与 :3841 的本地 API -make ui-dev +该命令会先构建 Rust iOS `FnzeroSafeMobileBridge.xcframework`,再执行 Flutter iOS 打包,并把产物复制到 `release/ios/`。 -# 构建内嵌 Web 页面的 API 二进制 -make api-build +### 5.5 Android -# 启动 Tauri 桌面应用 -make desktop-dev +```bash +make package-android ``` -开发时可访问 `http://127.0.0.1:3840/en/` 或 `http://127.0.0.1:3840/zh/`。发布版 API 二进制会内嵌静态前端,并在 `http://127.0.0.1:3841` 提供服务。 +如果 JDK 17 没有被自动发现: -### 创建或导入第一个钱包 +```bash +ANDROID_JAVA_HOME=/path/to/jdk17 make package-android +``` -1. 打开 UI,选择 **创建新钱包** 或 **导入钱包**。 -2. 创建钱包时填写名称和 10-20 位密码;导入钱包时选择 `keystore.json` 并输入对应密码。 -3. 存入资产前先下载并备份加密 Keystore。钱包密码无法找回。 -4. 在顶部钱包选择器中切换当前钱包,然后从钱包页使用 **接收**、**发送** 或 **交易**。 -5. 每次签名前,在 **设置** 中确认网络和 RPC 是否正确。 +Android release signing: -完整的钱包管理、转账、交易、多签、备份恢复与故障排查说明见 **[UI 钱包用户指南](UI_USER_GUIDE_CN.md)**。 +```bash +cp apps/mobile/android/key.properties.example apps/mobile/android/key.properties +# 编辑 key.properties,让 storeFile、storePassword、keyAlias、keyPassword 指向你的 upload keystore。 +make package-android +``` -### Cargo 功能特性 +该命令会构建 Rust Android native libraries、release APK 和 release AAB,并把产物复制到 `release/android/`。 -- `full` - 启用所有功能(CLI 默认) -- `cli` - 命令行界面(带彩色输出) -- `2fa` - 双因素认证(TOTP)支持 -- `solana-ops` - Solana 区块链操作 -- `sol-trade-sdk` - 交易操作(Pump.fun、PumpSwap) +### 5.6 全部平台 + +```bash +make package +``` + +该命令会依次运行 Android、iOS、macOS、Windows 打包目标。CI 中更推荐每个平台放到对应原生 runner 上分别构建。 --- -## 📚 文档 +## 6. 命令速查 + +| 命令 | 说明 | +|---|---| +| `make dev` | 启动桌面端开发环境;会先停止旧的本地应用/API 进程 | +| `make package-macos` | 构建 macOS 桌面端包到 `release/macos/` | +| `make package-windows` | 构建 Windows 桌面端包到 `release/windows/` | +| `make package-ios` | 构建 iOS `.app` 或签名 `.ipa` 到 `release/ios/` | +| `make package-android` | 构建 Android APK/AAB 到 `release/android/` | +| `make package` | 构建全部平台包 | +| `cargo fmt --all -- --check` | 检查 Rust 格式 | +| `cargo check --workspace --all-features` | 检查完整 Rust workspace | +| `cargo test --workspace` | 运行 Rust 测试 | +| `cargo clippy --workspace --all-targets --all-features -- -D warnings` | 运行严格 Rust lint | +| `npm --prefix apps/desktop run lint` | 运行桌面端 lint 和敏感输入检查 | +| `npm --prefix apps/desktop run build` | 构建 Next.js 静态前端 | +| `cd apps/mobile && flutter analyze` | 分析 Flutter 应用 | +| `cd apps/mobile && flutter test --dart-define=FNZERO_MOBILE_DEV_BRIDGE=true` | 使用 dev bridge fallback 运行 Flutter 测试 | -- **[UI 钱包用户指南](UI_USER_GUIDE_CN.md)** - 在 Web 或桌面 UI 中创建、导入、备份和使用钱包 -- **[Bot 集成指南](BOT_INTEGRATION_CN.md)** - 如何将 sol-safekey 集成到你的 bot -- **[使用手册](USER_GUIDE_CN.md)** - 完整的使用说明和示例 +--- + +## 7. 配置项 + +| 变量 | 用途 | +|---|---| +| `FNZERO_SAFE_API_TOKEN` | 桌面/Web 开发使用的固定本地 API token | +| `FNZERO_SAFE_DB_PATH` | 覆盖钱包数据库路径 | +| `FNZERO_SAFE_ALLOWED_ORIGINS` | 额外允许访问本地 API 的 origin,多个用逗号分隔 | +| `FNZERO_SAFE_ALLOW_SECRET_EXPORT=true` | 允许非桌面本机调试上下文导出明文私钥/助记词 | +| `FNZERO_SAFE_ALLOW_DIRECT_SECRET_INPUT=true` | 允许 Web 调试上下文直接提交明文私钥 | +| `FNZERO_MOBILE_DEV_BRIDGE=true` | 无 native library 测试时使用 Flutter dev bridge fallback | +| `ANDROID_JAVA_HOME` | Android 打包使用的 JDK 17 路径 | +| `IOS_CODESIGN=true` | 构建签名 iOS IPA,而不是无签名 `.app` | +| `IOS_EXPORT_OPTIONS_PLIST` | 签名 iOS IPA 使用的 export options plist | +| `TAURI_WINDOWS_TARGET` | 覆盖 Tauri Windows target triple | +| `FNZERO_SAFE_FLASHBLOCK_SWQOS_API_TOKEN` | FlashBlock SWQoS token | +| `FNZERO_SAFE_BLOCKRAZOR_SWQOS_API_TOKEN` | BlockRazor SWQoS token | +| `FNZERO_SAFE_ASTRALANE_SWQOS_API_TOKEN` | Astralane SWQoS token | +| `FNZERO_SAFE_SPEEDLANDING_SWQOS_API_TOKEN` | SpeedLanding SWQoS token | + +旧的 `SOL_SAFEKEY_*` 环境变量仍作为 fallback 保留,用于兼容已经存在的本机配置。 --- -## 🔐 安全性 +## 8. 安全模型 -- ✅ **密码安全**:仅通过 stdin 管道(永不使用环境变量) -- ✅ **加密方式**:AES-256 配合 PBKDF2 密钥派生 -- ✅ **内存安全**:使用后立即清除密码 -- ✅ **硬件指纹**:基于设备的安全层 -- ✅ **2FA 支持**:可选的双重因素认证以增强安全性 +1. **本地优先 API**:桌面端 API 绑定 loopback,受保护路由需要本地 API token。 +2. **敏感请求加密**:包含密码和 secret 的 JSON 请求在跨本地 Web/API 边界前会先加密。 +3. **Keystore 优先**:已保存钱包存储的是加密 keystore JSON,不保存明文私钥。 +4. **移动端私有存储**:移动端 keystore 文件保存在 App 私有目录;钱包元数据和生物识别设置使用 secure storage。 +5. **生物识别确认**:移动端签名动作可以由系统生物识别二次确认保护;桌面端 Touch ID 使用 macOS Keychain 访问控制。 +6. **显式签名确认**:转账、dApp 签名、交易发送、Squads 操作都必须进入确认页。 +7. **明文导出控制**:明文私钥和助记词导出有意加限制,只应临时用于迁移或本机调试。 +8. **移动端不开放 Program 工作流**:移动端不暴露 Program deploy、upgrade、source build 或 generic invoke API。 +存入资产前请先备份加密 Keystore。密码、私钥、助记词无法由 FnzeroSafe 恢复。 + +--- -## 📖 示例 +## 9. 文档索引 -参见 `examples/bot_example.rs` 获取完整的 bot 集成示例。 +- [桌面端 README](apps/desktop/README.md) +- [移动端 README](apps/mobile/README.md) +- [移动端内测清单](docs/mobile/INTERNAL_TEST_CHECKLIST.md) +- [UI 钱包用户指南](UI_USER_GUIDE_CN.md) +- [Bot 集成指南](BOT_INTEGRATION_CN.md) +- [CLI 使用手册](USER_GUIDE_CN.md) +- [交互式教程](INTERACTIVE_TUTORIAL_CN.md) +- [Program 部署指南](apps/desktop/PROGRAM_DEPLOYMENT_CN.md) --- -## 🤝 贡献 +## 10. 提交到 GitHub 前 + +推荐验证: + +```bash +cargo fmt --all -- --check +cargo check --workspace --all-features +cargo test --workspace +cargo clippy --workspace --all-targets --all-features -- -D warnings +npm --prefix apps/desktop run lint +npm --prefix apps/desktop run build +cd apps/mobile && flutter analyze +cd apps/mobile && flutter test --dart-define=FNZERO_MOBILE_DEV_BRIDGE=true +``` + +需要提交发布产物前,可额外验证打包: + +```bash +make package-android +make package-macos +# package-ios 需要在已安装对应 iOS platform/runtime 的 macOS 上运行。 +# package-windows 推荐在安装 MSVC build tools 的 Windows 构建机上运行。 +``` -欢迎贡献!请确保遵循安全最佳实践。**提交与 PR 描述请使用英文。** +涉及安全敏感逻辑的改动,请在 PR 中写清楚威胁模型和已经执行的验证命令。 --- -## 📄 许可证 +## 11. 许可证 -MIT License - 详见 LICENSE 文件 +MIT License。详见 [LICENSE](LICENSE)。 diff --git a/UI_USER_GUIDE.md b/UI_USER_GUIDE.md index 60d89d4..9343fd9 100644 --- a/UI_USER_GUIDE.md +++ b/UI_USER_GUIDE.md @@ -1,8 +1,8 @@ -# Sol SafeKey UI Wallet User Guide +# FnzeroSafe UI Wallet User Guide [中文](UI_USER_GUIDE_CN.md) | [Project README](README.md) -Sol SafeKey UI is a local wallet interface backed by the `sol-safekey` Rust library. It supports encrypted Keystore wallets, asset and transaction views, SOL and token transfers, WSOL operations, Pump.fun and PumpSwap sells, durable nonce accounts, program deployment, and Squads v4 multisig workflows. +FnzeroSafe UI is a local wallet interface backed by the `fnzero-safe` Rust library. It supports encrypted Keystore wallets, asset and transaction views, SOL and token transfers, WSOL operations, Pump.fun and PumpSwap sells, durable nonce accounts, program deployment, and Squads v4 multisig workflows. ## Before you start @@ -19,8 +19,7 @@ The default configuration accepts saved Keystore wallets only. Direct private-ke From the repository root: ```bash -make install -make ui-dev +make dev ``` Open one of these addresses: @@ -28,13 +27,7 @@ Open one of these addresses: - English: `http://127.0.0.1:3840/en/` - Chinese: `http://127.0.0.1:3840/zh/` -`make ui-dev` starts both the Next.js interface on port `3840` and the local Rust API on port `3841`. Running only `npm run dev` does not start the wallet API. - -For the desktop application: - -```bash -make desktop-dev -``` +`make dev` stops stale local development processes, starts the desktop app, starts the Next.js interface on port `3840`, and starts the local Rust API on port `3841`. ## Create a wallet @@ -160,7 +153,7 @@ These operations can permanently affect programs or treasury assets. Confirm the The default wallet database is: ```text -ui/data/sol-safekey.sqlite3 +apps/desktop/data/fnzero-safe.sqlite3 ``` It contains encrypted wallet records and local metadata and is ignored by Git. Passwords are not persisted by the frontend. Sensitive request bodies are encrypted between the local UI or Tauri bridge and the local Rust API. @@ -170,14 +163,14 @@ Security boundaries to remember: - The database is not a substitute for an exported Keystore backup. - Anyone with a Keystore and its password can access the wallet. - Anyone with a plaintext private key can spend all wallet assets. -- Do not commit `ui/data/`, Keystores, passwords, environment files, or exported private keys. +- Do not commit `apps/desktop/data/`, Keystores, passwords, environment files, or exported private keys. - The API binds to `127.0.0.1` by default. Do not expose it to an untrusted network. ## Troubleshooting ### The page opens but wallet actions fail -Start the full stack with `make ui-dev`. Check the API at `http://127.0.0.1:3841/api/health`. +Start the full stack with `make dev`. Check the API at `http://127.0.0.1:3841/api/health`. ### The wallet or assets are missing @@ -193,4 +186,4 @@ Check the network, RPC health, wallet balance, fee balance, recipient or mint ad ### Ports 3840 or 3841 are already in use -Stop the existing Sol SafeKey development process, then run `make ui-dev` again. Avoid terminating unrelated applications that happen to use a different project directory. +Run `make dev` again. It stops stale local development processes before starting the app. diff --git a/UI_USER_GUIDE_CN.md b/UI_USER_GUIDE_CN.md index c842c71..2c65fbf 100644 --- a/UI_USER_GUIDE_CN.md +++ b/UI_USER_GUIDE_CN.md @@ -1,8 +1,8 @@ -# Sol SafeKey UI 钱包用户指南 +# FnzeroSafe UI 钱包用户指南 [English](UI_USER_GUIDE.md) | [项目 README](README_CN.md) -Sol SafeKey UI 是由 `sol-safekey` Rust 核心库驱动的本地钱包界面,支持加密 Keystore 钱包、资产和交易记录、SOL 与 Token 转账、WSOL、Pump.fun/PumpSwap 卖出、Nonce 账户、程序部署和 Squads v4 多签。 +FnzeroSafe UI 是由 `fnzero-safe` Rust 核心库驱动的本地钱包界面,支持加密 Keystore 钱包、资产和交易记录、SOL 与 Token 转账、WSOL、Pump.fun/PumpSwap 卖出、Nonce 账户、程序部署和 Squads v4 多签。 ## 使用前须知 @@ -19,8 +19,7 @@ Sol SafeKey UI 是由 `sol-safekey` Rust 核心库驱动的本地钱包界面, 在仓库根目录执行: ```bash -make install -make ui-dev +make dev ``` 打开以下任一地址: @@ -28,13 +27,7 @@ make ui-dev - 中文:`http://127.0.0.1:3840/zh/` - English:`http://127.0.0.1:3840/en/` -`make ui-dev` 会同时启动 `3840` 端口的 Next.js 界面和 `3841` 端口的本地 Rust API。只运行 `npm run dev` 不会启动钱包 API。 - -桌面应用使用: - -```bash -make desktop-dev -``` +`make dev` 会先停止旧的本地开发进程,再启动桌面应用、`3840` 端口的 Next.js 界面和 `3841` 端口的本地 Rust API。 ## 创建钱包 @@ -160,7 +153,7 @@ make desktop-dev 默认钱包数据库位于: ```text -ui/data/sol-safekey.sqlite3 +apps/desktop/data/fnzero-safe.sqlite3 ``` 数据库包含加密钱包记录和本地元数据,并已被 Git 忽略。前端不会持久化钱包密码。本地 UI 或 Tauri 安全桥与 Rust API 之间的敏感请求体会加密传输。 @@ -170,14 +163,14 @@ ui/data/sol-safekey.sqlite3 - 数据库不能替代导出的 Keystore 备份。 - 任何同时获得 Keystore 和密码的人都能访问钱包。 - 任何获得明文私钥的人都能支配钱包内全部资产。 -- 不要提交 `ui/data/`、Keystore、密码、环境文件或导出的私钥。 +- 不要提交 `apps/desktop/data/`、Keystore、密码、环境文件或导出的私钥。 - API 默认只监听 `127.0.0.1`,不要将其暴露到不可信网络。 ## 常见问题 ### 页面能打开,但钱包操作失败 -使用 `make ui-dev` 启动完整服务,并访问 `http://127.0.0.1:3841/api/health` 检查 API。 +使用 `make dev` 启动完整服务,并访问 `http://127.0.0.1:3841/api/health` 检查 API。 ### 钱包或资产没有显示 @@ -193,4 +186,4 @@ ui/data/sol-safekey.sqlite3 ### 3840 或 3841 端口被占用 -停止已有的 Sol SafeKey 开发进程后,再运行 `make ui-dev`。不要结束属于其他项目的无关进程。 +再次运行 `make dev`。它会在启动前停止旧的本地开发进程。 diff --git a/USER_GUIDE.md b/USER_GUIDE.md index 97f0da0..5da4e89 100644 --- a/USER_GUIDE.md +++ b/USER_GUIDE.md @@ -1,12 +1,12 @@ # User Guide -Complete guide for using sol-safekey interactive commands and operations. +Complete guide for using fnzero-safe interactive commands and operations. [中文文档](USER_GUIDE_CN.md) ## Getting Started -Sol-SafeKey provides an interactive command-line interface for secure Solana wallet management and operations. This guide covers all available features and operations. +FnzeroSafe provides an interactive command-line interface for secure Solana wallet management and operations. This guide covers all available features and operations. ### Prerequisites @@ -16,7 +16,7 @@ Sol-SafeKey provides an interactive command-line interface for secure Solana wal ### Accessing Interactive Menu -If you're using a bot that integrates sol-safekey: +If you're using a bot that integrates fnzero-safe: ```bash ./your-bot safekey @@ -30,20 +30,20 @@ Or if using the standalone binary: #### Direct Installation (Standalone) -For standalone usage without a bot, install sol-safekey directly: +For standalone usage without a bot, install fnzero-safe directly: ```bash # Install from crates.io (recommended for latest version) -cargo install sol-safekey --features="full" +cargo install fnzero-safe --features="full" # Verify installation -sol-safekey --version +fnzero-safe --version # Start interactive menu -sol-safekey start +fnzero-safe start ``` -This method provides direct access to all sol-safekey features through the interactive menu. +This method provides direct access to all fnzero-safe features through the interactive menu. ## Main Menu @@ -702,7 +702,7 @@ Sell tokens on **Pump.fun internal market** (bonding curve) for native SOL. Use - Bilingual prompts (English/Chinese) **Steps**: -1. Run `sol-safekey` (or `./your-bot safekey`) and unlock your wallet. +1. Run `fnzero-safe` (or `./your-bot safekey`) and unlock your wallet. 2. Choose **13** (Pump.fun Sell) or **16** (Pump.fun Sell, no 2FA prompt). 3. Enter RPC URL when prompted (or use default). 4. Choose whether to use seed-optimized ATA when asked. diff --git a/USER_GUIDE_CN.md b/USER_GUIDE_CN.md index d63f9fe..a96deed 100644 --- a/USER_GUIDE_CN.md +++ b/USER_GUIDE_CN.md @@ -6,7 +6,7 @@ Sol-safekey 交互命令和操作的完整使用指南。 ## 开始使用 -Sol-SafeKey 提供交互式命令行界面,用于安全的 Solana 钱包管理和操作。本指南涵盖所有可用功能和操作。 +FnzeroSafe 提供交互式命令行界面,用于安全的 Solana 钱包管理和操作。本指南涵盖所有可用功能和操作。 ### 前置要求 @@ -16,7 +16,7 @@ Sol-SafeKey 提供交互式命令行界面,用于安全的 Solana 钱包管理 ### 访问交互式菜单 -如果你使用的 bot 集成了 sol-safekey: +如果你使用的 bot 集成了 fnzero-safe: ```bash ./你的bot safekey @@ -30,20 +30,20 @@ Sol-SafeKey 提供交互式命令行界面,用于安全的 Solana 钱包管理 #### 直接安装(独立使用) -对于不使用 bot 的独立使用,直接安装 sol-safekey: +对于不使用 bot 的独立使用,直接安装 fnzero-safe: ```bash # 从 crates.io 安装(推荐使用最新版本) -cargo install sol-safekey --features="full" +cargo install fnzero-safe --features="full" # 验证安装 -sol-safekey --version +fnzero-safe --version # 启动交互式菜单 -sol-safekey start +fnzero-safe start ``` -这种方式提供通过交互式菜单直接访问所有 sol-safekey 功能。 +这种方式提供通过交互式菜单直接访问所有 fnzero-safe 功能。 ## 主菜单 @@ -702,7 +702,7 @@ Keystore 路径: keystore.json - 中英双语提示 **步骤**: -1. 运行 `sol-safekey`(或 `./你的bot safekey`)并解锁钱包。 +1. 运行 `fnzero-safe`(或 `./你的bot safekey`)并解锁钱包。 2. 选择 **13**(Pump.fun 卖出)或 **16**(Pump.fun 卖出,无 2FA 确认)。 3. 按提示输入 RPC URL(或使用默认)。 4. 按提示选择是否使用 seed 优化 ATA。 diff --git a/ui/PROGRAM_DEPLOYMENT.md b/apps/desktop/PROGRAM_DEPLOYMENT.md similarity index 85% rename from ui/PROGRAM_DEPLOYMENT.md rename to apps/desktop/PROGRAM_DEPLOYMENT.md index 43f45fd..7055a6d 100644 --- a/ui/PROGRAM_DEPLOYMENT.md +++ b/apps/desktop/PROGRAM_DEPLOYMENT.md @@ -1,8 +1,8 @@ -# Solana Program Deployment with Sol SafeKey +# Solana Program Deployment with FnzeroSafe -This guide covers the first deployment of an arbitrary Solana SBF program through the Sol SafeKey UI. It is for new upgradeable-loader Program IDs, not upgrades to an existing program. +This guide covers the first deployment of an arbitrary Solana SBF program through the FnzeroSafe UI. It is for new upgradeable-loader Program IDs, not upgrades to an existing program. -Sol SafeKey is a general-purpose wallet and program operations tool. It does not audit a contract, approve a release, or make an untrusted binary safe. Complete the program's security review, reproducible build, local-validator tests, and release approval before using this workflow. +FnzeroSafe is a general-purpose wallet and program operations tool. It does not audit a contract, approve a release, or make an untrusted binary safe. Complete the program's security review, reproducible build, local-validator tests, and release approval before using this workflow. Every deployment spends SOL and may submit many transactions. Use the local desktop application or a UI and API bound only to loopback. Never expose the local API through a public proxy, tunnel, or port forward. @@ -26,7 +26,7 @@ The Program keypair determines the Program ID and signs creation of the new Prog - Keep it outside the repository, downloads folder, shared drives, cloud sync, shell history, logs, tickets, and chat. - Do not print the JSON with `cat`, paste it into a terminal, or include it in screenshots or screen sharing. - Store an encrypted, access-controlled backup before deployment. Verify the backup without displaying its contents. -- Upload it only to the trusted local Sol SafeKey UI for the deployment request. Clear the form and close unneeded browser windows afterward. +- Upload it only to the trusted local FnzeroSafe UI for the deployment request. Clear the form and close unneeded browser windows afterward. - Stop if the Program ID derived by the UI differs from the approved Program ID. The Program keypair and Upgrade Authority are different roles. The Program keypair fixes the program address. After deployment, upgrades are controlled by the ProgramData Upgrade Authority, which is the selected deployment wallet in this workflow. Protect both credentials independently. @@ -55,7 +55,7 @@ Select the intended RPC profile before loading deployment material. Confirm all - An independent read-only check against the target RPC returns the same genesis hash. - The payer wallet is funded on that exact cluster. -An RPC profile label such as `devnet` is not proof of cluster identity. Sol SafeKey reads the RPC's actual genesis hash before unlocking the wallet or spending SOL and rejects a mismatch. For a custom RPC, confirm that it serves the intended cluster and that its genesis hash is supported by the deployment form. +An RPC profile label such as `devnet` is not proof of cluster identity. FnzeroSafe reads the RPC's actual genesis hash before unlocking the wallet or spending SOL and rejects a mismatch. For a custom RPC, confirm that it serves the intended cluster and that its genesis hash is supported by the deployment form. Do not work around a mismatch by changing the network label or expected hash. Stop and identify whether the RPC profile or release target is wrong. @@ -73,7 +73,7 @@ Record the approved value with the release evidence before signing. ## First deployment through the UI -1. Start Sol SafeKey locally and open the UI. Confirm the local API health endpoint before loading any key material. +1. Start FnzeroSafe locally and open the UI. Confirm the local API health endpoint before loading any key material. 2. Select the target RPC profile, then open **Program Workspace** and **Deploy Program**. 3. Select the saved deployment wallet. Verify that its public key is the intended payer and Upgrade Authority. 4. Upload the approved `.so`. Compare the displayed filename, byte length, and SHA-256 with the release record. @@ -91,7 +91,7 @@ The backend verifies the SBF binary before signing, checks the Program ID derive A first deployment may require create-buffer, multiple write, and deploy transactions. A timeout or lost response does not prove that a transaction failed. Never blindly retry. -Use the persisted deployment record shown by Sol SafeKey to determine the next action. Recovery must retain the exact same intent: +Use the persisted deployment record shown by FnzeroSafe to determine the next action. Recovery must retain the exact same intent: - cluster genesis hash and Program ID; - `.so` bytes, SHA-256, and byte length; @@ -116,7 +116,7 @@ Do not consider deployment complete merely because a transaction signature exist Download the deployment receipt immediately. Independently compute its SHA-256, archive it with the source revision, build metadata, artifact digest, Program ID approval, and operator review, and verify the Program on-chain through a separate read-only method. -A receipt records what Sol SafeKey observed and submitted. It is not a contract audit, source-to-binary proof, or external attestation. Any required reviewer signatures or deployment attestations must be created separately after checking the finalized readback. +A receipt records what FnzeroSafe observed and submitted. It is not a contract audit, source-to-binary proof, or external attestation. Any required reviewer signatures or deployment attestations must be created separately after checking the finalized readback. ## Stop conditions diff --git a/ui/PROGRAM_DEPLOYMENT_CN.md b/apps/desktop/PROGRAM_DEPLOYMENT_CN.md similarity index 83% rename from ui/PROGRAM_DEPLOYMENT_CN.md rename to apps/desktop/PROGRAM_DEPLOYMENT_CN.md index 1843d09..9e115c4 100644 --- a/ui/PROGRAM_DEPLOYMENT_CN.md +++ b/apps/desktop/PROGRAM_DEPLOYMENT_CN.md @@ -1,8 +1,8 @@ -# 使用 Sol SafeKey 部署 Solana Program +# 使用 FnzeroSafe 部署 Solana Program -本文说明如何通过 Sol SafeKey UI 首次部署任意 Solana SBF Program。该流程适用于新的 upgradeable-loader Program ID,不用于升级已经存在的 Program。 +本文说明如何通过 FnzeroSafe UI 首次部署任意 Solana SBF Program。该流程适用于新的 upgradeable-loader Program ID,不用于升级已经存在的 Program。 -Sol SafeKey 是通用钱包和 Program 运维工具。它不会自动完成合约审计、批准发布,也不会把不可信的二进制变得安全。进入本流程前,必须完成合约安全与业务逻辑审查、可复现构建、本地验证器测试和发布审批。 +FnzeroSafe 是通用钱包和 Program 运维工具。它不会自动完成合约审计、批准发布,也不会把不可信的二进制变得安全。进入本流程前,必须完成合约安全与业务逻辑审查、可复现构建、本地验证器测试和发布审批。 部署会消耗 SOL,并且可能发送多笔交易。应使用本地桌面应用,或仅绑定 loopback 的 UI 与 API。不要通过公网代理、隧道或端口转发暴露本地 API。 @@ -26,7 +26,7 @@ Program keypair 决定 Program ID,并为新 Program 账户的创建签名。 - 存放在代码仓库、下载目录、共享盘、云同步、shell 历史、日志、工单和聊天之外; - 不要用 `cat` 打印、粘贴到终端,也不要放入截图或屏幕共享; - 部署前创建加密且受访问控制的备份,并在不显示文件内容的前提下验证备份; -- 只上传到可信的本地 Sol SafeKey UI;请求结束后清空表单并关闭不需要的浏览器窗口; +- 只上传到可信的本地 FnzeroSafe UI;请求结束后清空表单并关闭不需要的浏览器窗口; - 如果 UI 派生出的 Program ID 与批准值不同,立即停止。 Program keypair 与 Upgrade Authority 是不同角色。Program keypair 固定 Program 地址;部署后,升级由 ProgramData Upgrade Authority 控制,本流程中就是所选部署钱包。两份凭据都需要独立保护。 @@ -55,7 +55,7 @@ Linux 可以使用 `sha256sum`。把独立批准的 64 位小写 SHA-256 填入 - 通过独立的只读检查,从目标 RPC 得到相同 genesis hash; - 付款钱包在该精确集群上有足够余额。 -`devnet` 等 RPC 配置标签不能证明集群身份。Sol SafeKey 会在解锁钱包或花费 SOL 前读取 RPC 的真实 genesis hash,不匹配时拒绝部署。使用自定义 RPC 时,必须确认它服务于预期集群,并且部署表单支持该 genesis hash。 +`devnet` 等 RPC 配置标签不能证明集群身份。FnzeroSafe 会在解锁钱包或花费 SOL 前读取 RPC 的真实 genesis hash,不匹配时拒绝部署。使用自定义 RPC 时,必须确认它服务于预期集群,并且部署表单支持该 genesis hash。 不要通过修改网络标签或 expected hash 绕过不匹配。应停止操作,查明 RPC 配置和发布目标中哪一项错误。 @@ -73,7 +73,7 @@ Linux 可以使用 `sha256sum`。把独立批准的 64 位小写 SHA-256 填入 ## 通过 UI 首次部署 -1. 在本机启动 Sol SafeKey 并打开 UI。载入任何密钥材料前,确认本地 API health endpoint 正常。 +1. 在本机启动 FnzeroSafe 并打开 UI。载入任何密钥材料前,确认本地 API health endpoint 正常。 2. 选择目标 RPC,然后进入“Program 工作区”并打开“部署 Program”。 3. 选择已保存的部署钱包,确认其公钥正是预期付款钱包和 Upgrade Authority。 4. 上传已批准的 `.so`,逐项比较 UI 显示的文件名、字节长度、SHA-256 与发布记录。 @@ -91,7 +91,7 @@ Linux 可以使用 `sha256sum`。把独立批准的 64 位小写 SHA-256 填入 首次部署可能包含 create-buffer、多笔 write 和 deploy 交易。超时或响应丢失不能证明交易失败,绝不能盲目重试。 -应根据 Sol SafeKey 显示的持久化部署记录决定下一步。恢复必须保持完全相同的部署意图: +应根据 FnzeroSafe 显示的持久化部署记录决定下一步。恢复必须保持完全相同的部署意图: - 集群 genesis hash 和 Program ID; - `.so` 字节、SHA-256 和字节长度; @@ -116,7 +116,7 @@ Linux 可以使用 `sha256sum`。把独立批准的 64 位小写 SHA-256 填入 立即下载 deployment receipt,独立计算 receipt 的 SHA-256,并与源码版本、构建 metadata、制品摘要、Program ID 批准记录和操作者复核证据一起归档。还应通过另一种只读方式独立核对链上 Program。 -Receipt 只记录 Sol SafeKey 观察和提交的内容,不是合约审计、源码到二进制证明或外部证明。任何要求的复核者签名或部署 attestation,都必须在核对 finalized 回读后另行生成。 +Receipt 只记录 FnzeroSafe 观察和提交的内容,不是合约审计、源码到二进制证明或外部证明。任何要求的复核者签名或部署 attestation,都必须在核对 finalized 回读后另行生成。 ## 必须停止的情况 diff --git a/apps/desktop/README.md b/apps/desktop/README.md new file mode 100644 index 0000000..0c39172 --- /dev/null +++ b/apps/desktop/README.md @@ -0,0 +1,59 @@ +# FnzeroSafe UI + +This directory contains the integrated Next.js interface, local Rust API, and Tauri desktop shell for FnzeroSafe. The API uses the root workspace crate through a local path dependency; do not clone or vendor another copy of `fnzero-safe` here. + +## User guides + +- [English UI wallet guide](../../UI_USER_GUIDE.md) +- [中文 UI 钱包指南](../../UI_USER_GUIDE_CN.md) +- [General Solana Program deployment guide](PROGRAM_DEPLOYMENT.md) +- [通用 Solana Program 部署指南](PROGRAM_DEPLOYMENT_CN.md) + +## Development + +Prerequisites: Rust 1.89 or newer for workspace/API builds, and Node.js 20 or 22 and newer (Node.js 21 is unsupported). The release gate uses Node.js 20.19.5 and npm 10.8.2 exactly. The standalone Tauri crate declares its independently audited Rust 1.88 minimum, but repository-wide commands require Rust 1.89. + +Run commands from the repository root: + +```bash +make dev +``` + +This command stops stale local development processes, starts the local web/API +development stack, and opens the Tauri shell. +Keep the app local; do not expose the API port through a public proxy, tunnel, or +port forward. + +中文:从同一个仓库根目录启动 Tauri 桌面端: + +```bash +make dev +``` + +该命令会先停止旧的本地开发进程,再启动本地 Web/API 开发栈并打开 Tauri 桌面壳。请保持本地运行, +不要通过公网代理、隧道或端口转发暴露 API 端口。 + +Development endpoints: + +- English UI: `http://127.0.0.1:3840/en/` +- Chinese UI: `http://127.0.0.1:3840/zh/` +- Local API: `http://127.0.0.1:3841/api/health` + +Build and check the integrated application with: + +```bash +make package-mac +make package-windows +``` + +## Layout + +```text +apps/desktop/src/ Next.js application and translations +crates/desktop-api/src/ Local Axum API and wallet persistence +apps/desktop/src-tauri/ Tauri desktop shell and secure API bridge +apps/desktop/public/ Token and application assets +apps/desktop/scripts/ Development and security checks +``` + +Wallet data is stored locally in `apps/desktop/data/` by default and is ignored by Git. Passwords remain in memory only long enough to process each request and are never persisted by the frontend. diff --git a/ui/components.json b/apps/desktop/components.json similarity index 100% rename from ui/components.json rename to apps/desktop/components.json diff --git a/ui/eslint.config.mjs b/apps/desktop/eslint.config.mjs similarity index 100% rename from ui/eslint.config.mjs rename to apps/desktop/eslint.config.mjs diff --git a/ui/next.config.ts b/apps/desktop/next.config.ts similarity index 97% rename from ui/next.config.ts rename to apps/desktop/next.config.ts index 35e6b3b..6f9bedb 100644 --- a/ui/next.config.ts +++ b/apps/desktop/next.config.ts @@ -7,6 +7,7 @@ const nextConfig: NextConfig = { // Static export for embedding in Rust binary. Keep dev server on the normal runtime // so rewrites work and it does not read stale export artifacts. ...(process.env.NODE_ENV === "production" ? { output: "export" as const } : {}), + devIndicators: false, basePath: '', trailingSlash: true, /** Dev-only: same-origin `/api` → Rust backend, avoids CORS when UI is on localhost:3840 */ diff --git a/ui/package-lock.json b/apps/desktop/package-lock.json similarity index 97% rename from ui/package-lock.json rename to apps/desktop/package-lock.json index 1e7c115..d11a659 100644 --- a/ui/package-lock.json +++ b/apps/desktop/package-lock.json @@ -1,11 +1,11 @@ { - "name": "@sol-safekey/ui", + "name": "@fnzero/safe", "version": "0.4.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "@sol-safekey/ui", + "name": "@fnzero/safe", "version": "0.4.0", "dependencies": { "@base-ui/react": "^1.3.0", @@ -16,6 +16,7 @@ "next": "^15.5.21", "next-intl": "^4.13.0", "next-themes": "^0.4.6", + "qrcode": "^1.5.4", "react": "19.0.0", "react-dom": "19.0.0", "sonner": "^2.0.7", @@ -25,12 +26,12 @@ "@eslint/eslintrc": "^3.3.5", "@tauri-apps/cli": "^2.10.1", "@types/node": "^20", + "@types/qrcode": "^1.5.6", "@types/react": "^19", "@types/react-dom": "^19", "autoprefixer": "^10.4.27", "brace-expansion": "file:vendor/brace-expansion-compat", - "brace-expansion-upstream": "npm:brace-expansion@5.0.8", - "concurrently": "9.2.4", + "brace-expansion-upstream": "npm:brace-expansion@5.0.9", "eslint": "^9", "eslint-config-next": "^15.5.21", "postcss": "^8.5.23", @@ -1959,6 +1960,16 @@ "undici-types": "~6.21.0" } }, + "node_modules/@types/qrcode": { + "version": "1.5.6", + "resolved": "https://registry.npmjs.org/@types/qrcode/-/qrcode-1.5.6.tgz", + "integrity": "sha512-te7NQcV2BOvdj2b1hCAHzAoMNuj65kNBMz0KBaxM6c3VGBOhU0dURQKOtH8CFNI/dsKkwlv32p26qYQTWoB5bw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/react": { "version": "19.2.14", "resolved": "https://registry.npmjs.org/@types/react/-/react-19.2.14.tgz", @@ -2551,7 +2562,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -2561,7 +2571,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, "license": "MIT", "dependencies": { "color-convert": "^2.0.1" @@ -2923,9 +2932,9 @@ }, "node_modules/brace-expansion-upstream": { "name": "brace-expansion", - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.8.tgz", - "integrity": "sha512-JZyDyq3D4AUifKTPOB7DELf6XsB3WdPuNxCtob1vFXPsSXhdAiHBWJ/tJ8HAc9aH84BK+5JFZLNkJKx3G9kzQg==", + "version": "5.0.9", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-5.0.9.tgz", + "integrity": "sha512-ScQ4IuvIEF1TMlP7Zt+vjJ//9zlPb2SDcxWxM3bk8s6t6GGdJ7KO1dCcTidOPJKePW30LE/2cT7wCyPho9/Wxg==", "dev": true, "license": "MIT", "dependencies": { @@ -3042,6 +3051,15 @@ "node": ">=6" } }, + "node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/camelcase-css": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/camelcase-css/-/camelcase-css-2.0.1.tgz", @@ -3146,18 +3164,14 @@ "license": "MIT" }, "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - "dev": true, + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", + "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==", "license": "ISC", "dependencies": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" + "strip-ansi": "^6.0.0", + "wrap-ansi": "^6.2.0" } }, "node_modules/clsx": { @@ -3173,7 +3187,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, "license": "MIT", "dependencies": { "color-name": "~1.1.4" @@ -3186,50 +3199,8 @@ "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true, "license": "MIT" }, - "node_modules/concurrently": { - "version": "9.2.4", - "resolved": "https://registry.npmjs.org/concurrently/-/concurrently-9.2.4.tgz", - "integrity": "sha512-TZ0CEhyzvFjgtAvHTusDMgj7wNdihCh7LLLrzdUOXIhdlnL2JBBGA9eJxR24rtqgmdjh3OA3hrN1rCHj6HM8qA==", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "4.1.2", - "rxjs": "7.8.2", - "shell-quote": "1.9.0", - "supports-color": "8.1.1", - "tree-kill": "1.2.2", - "yargs": "17.7.2" - }, - "bin": { - "conc": "dist/bin/concurrently.js", - "concurrently": "dist/bin/concurrently.js" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/open-cli-tools/concurrently?sponsor=1" - } - }, - "node_modules/concurrently/node_modules/supports-color": { - "version": "8.1.1", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/supports-color?sponsor=1" - } - }, "node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", @@ -3344,6 +3315,15 @@ } } }, + "node_modules/decamelize": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", + "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/deep-is": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", @@ -3403,6 +3383,12 @@ "dev": true, "license": "Apache-2.0" }, + "node_modules/dijkstrajs": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/dijkstrajs/-/dijkstrajs-1.0.3.tgz", + "integrity": "sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==", + "license": "MIT" + }, "node_modules/dlv": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz", @@ -4309,7 +4295,6 @@ "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true, "license": "ISC", "engines": { "node": "6.* || 8.* || >= 10.*" @@ -4799,7 +4784,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -5085,9 +5069,9 @@ "license": "MIT" }, "node_modules/js-yaml": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.0.tgz", - "integrity": "sha512-1td788aAnnZ5qs7V2QIRl1owjtYpbKt749Y3xauqQgwIIGF/xXWz1wMTEBx5O3LK3lXLVuqXPdPxj2BoFHaW9Q==", + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.3.1.tgz", + "integrity": "sha512-CY6crGq313MX8GkwvB7tzgp99vjQxY1++5y10/BKN/GUfHqWaOGQMNZkBvqSzsZKWk/ijwHlWzzkLulsGHhjWQ==", "dev": true, "funding": [ { @@ -5343,9 +5327,9 @@ } }, "node_modules/nanoid": { - "version": "3.3.16", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.16.tgz", - "integrity": "sha512-bzlKTyNJ7+LdGIIwy8ijFpIqEQIvafahV7eYykJ8Cvh42EdJeODoJ6gUJXpQJvej1BddH8OqTXZNE/KfbWAu8Q==", + "version": "3.3.18", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.18.tgz", + "integrity": "sha512-DTg4MJbGMWkfi6VZFdNt2/caMbQy4Ou+Op/hJQvGEWcnVfoA1QA+xzRKAzw9jD6+GVOOeYr/mIcuDSdug6F6+w==", "funding": [ { "type": "github", @@ -5521,17 +5505,6 @@ } } }, - "node_modules/next-intl/node_modules/@swc/helpers": { - "version": "0.5.23", - "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.23.tgz", - "integrity": "sha512-5lSsMOTXURePglDfvuAQUqkGek9Hg2kksOYay2m0+XR++b2NWYL/4sWyuvVBIs8oKnJaxkdi9whaL/sqN13afw==", - "license": "Apache-2.0", - "optional": true, - "peer": true, - "dependencies": { - "tslib": "^2.8.0" - } - }, "node_modules/next-themes": { "version": "0.4.6", "resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.4.6.tgz", @@ -5795,6 +5768,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/parent-module": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", @@ -5812,7 +5794,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, "license": "MIT", "engines": { "node": ">=8" @@ -5873,6 +5854,15 @@ "node": ">= 6" } }, + "node_modules/pngjs": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-5.0.0.tgz", + "integrity": "sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw==", + "license": "MIT", + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/po-parser": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/po-parser/-/po-parser-2.1.1.tgz", @@ -6083,6 +6073,23 @@ "node": ">=6" } }, + "node_modules/qrcode": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/qrcode/-/qrcode-1.5.4.tgz", + "integrity": "sha512-1ca71Zgiu6ORjHqFBDpnSMTR2ReToX4l1Au1VFLyVeBTFavzQnv5JxMFr3ukHVKpSrSA2MCk0lNJSykjUfz7Zg==", + "license": "MIT", + "dependencies": { + "dijkstrajs": "^1.0.1", + "pngjs": "^5.0.0", + "yargs": "^15.3.1" + }, + "bin": { + "qrcode": "bin/qrcode" + }, + "engines": { + "node": ">=10.13.0" + } + }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -6216,12 +6223,17 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - "dev": true, "license": "MIT", "engines": { "node": ">=0.10.0" } }, + "node_modules/require-main-filename": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", + "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==", + "license": "ISC" + }, "node_modules/reselect": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/reselect/-/reselect-5.1.1.tgz", @@ -6304,16 +6316,6 @@ "queue-microtask": "^1.2.2" } }, - "node_modules/rxjs": { - "version": "7.8.2", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.2.tgz", - "integrity": "sha512-dhKf903U/PQZY6boNNtAGdWbG85WAbjT/1xYoZIC7FAY0yWapOBQVsVrDl58W86//e1VpMNBtRV4MaXfdMySFA==", - "dev": true, - "license": "Apache-2.0", - "dependencies": { - "tslib": "^2.1.0" - } - }, "node_modules/safe-array-concat": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.3.tgz", @@ -6388,6 +6390,12 @@ "node": ">=10" } }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "license": "ISC" + }, "node_modules/set-function-length": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz", @@ -6505,19 +6513,6 @@ "node": ">=8" } }, - "node_modules/shell-quote": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.9.0.tgz", - "integrity": "sha512-Iov+JwFv/2HcTpcwNMKd8+IWNb8tboQJNQTkAY/LLVK7gGH9jy+LGkVqPxfekHl+yMmiqXszdGWXgkfml7hjqA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/side-channel": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz", @@ -6638,7 +6633,6 @@ "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "dev": true, "license": "MIT", "dependencies": { "emoji-regex": "^8.0.0", @@ -6653,7 +6647,6 @@ "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true, "license": "MIT" }, "node_modules/string.prototype.includes": { @@ -6773,7 +6766,6 @@ "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "dev": true, "license": "MIT", "dependencies": { "ansi-regex": "^5.0.1" @@ -7066,16 +7058,6 @@ "node": ">=8.0" } }, - "node_modules/tree-kill": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - "dev": true, - "license": "MIT", - "bin": { - "tree-kill": "cli.js" - } - }, "node_modules/ts-api-utils": { "version": "2.5.0", "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-2.5.0.tgz", @@ -7455,6 +7437,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/which-module": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", + "license": "ISC" + }, "node_modules/which-typed-array": { "version": "1.1.20", "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.20.tgz", @@ -7488,10 +7476,9 @@ } }, "node_modules/wrap-ansi": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - "dev": true, + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "license": "MIT", "dependencies": { "ansi-styles": "^4.0.0", @@ -7499,49 +7486,100 @@ "strip-ansi": "^6.0.0" }, "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + "node": ">=8" } }, "node_modules/y18n": { - "version": "5.0.8", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - "dev": true, - "license": "ISC", - "engines": { - "node": ">=10" - } + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz", + "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==", + "license": "ISC" }, "node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - "dev": true, + "version": "15.4.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz", + "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==", "license": "MIT", "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", + "cliui": "^6.0.0", + "decamelize": "^1.2.0", + "find-up": "^4.1.0", + "get-caller-file": "^2.0.1", "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" + "require-main-filename": "^2.0.0", + "set-blocking": "^2.0.0", + "string-width": "^4.2.0", + "which-module": "^2.0.0", + "y18n": "^4.0.0", + "yargs-parser": "^18.1.2" }, "engines": { - "node": ">=12" + "node": ">=8" } }, "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - "dev": true, + "version": "18.1.3", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz", + "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==", "license": "ISC", + "dependencies": { + "camelcase": "^5.0.0", + "decamelize": "^1.2.0" + }, "engines": { - "node": ">=12" + "node": ">=6" + } + }, + "node_modules/yargs/node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "license": "MIT", + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "license": "MIT", + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/yargs/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "license": "MIT", + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/yargs/node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "license": "MIT", + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, "node_modules/yocto-queue": { @@ -7559,11 +7597,11 @@ }, "vendor/brace-expansion-compat": { "name": "brace-expansion", - "version": "5.0.8", + "version": "5.0.9", "dev": true, "license": "MIT", "dependencies": { - "brace-expansion-upstream": "npm:brace-expansion@5.0.8" + "brace-expansion-upstream": "npm:brace-expansion@5.0.9" }, "engines": { "node": "20 || >=22" diff --git a/ui/package.json b/apps/desktop/package.json similarity index 78% rename from ui/package.json rename to apps/desktop/package.json index 6308ae7..fcc06ec 100644 --- a/ui/package.json +++ b/apps/desktop/package.json @@ -1,5 +1,5 @@ { - "name": "@sol-safekey/ui", + "name": "@fnzero/safe", "version": "0.4.0", "private": true, "engines": { @@ -7,9 +7,9 @@ }, "scripts": { "dev": "next dev -H 127.0.0.1 -p 3840", - "predev:stack": "node scripts/ensure-out.cjs && node scripts/free-api-port.cjs", - "dev:stack": "concurrently -k -n next,api \"next dev -H 127.0.0.1 -p 3840\" \"cargo run --release -p sol-safekey-ui\"", - "backend": "cargo run --release -p sol-safekey-ui", + "predev:stack": "node scripts/kill-dev-processes.cjs && node scripts/ensure-out.cjs", + "dev:stack": "node scripts/dev-stack.cjs", + "backend": "cargo run --release -p fnzero-safe-desktop-api", "prebuild": "node scripts/assert-no-next-dev.cjs && node scripts/check-sensitive-inputs.cjs", "build": "next build", "start": "next start", @@ -18,7 +18,7 @@ "test:program-deploy": "node scripts/test-program-deploy.cjs", "lint": "node scripts/check-sensitive-inputs.cjs && eslint", "tauri": "tauri", - "predesktop:dev": "node scripts/refresh-desktop-icons.cjs", + "predesktop:dev": "node scripts/kill-dev-processes.cjs && node scripts/refresh-desktop-icons.cjs", "desktop:dev": "node scripts/desktop-dev.cjs", "desktop:build": "tauri build" }, @@ -31,6 +31,7 @@ "next": "^15.5.21", "next-intl": "^4.13.0", "next-themes": "^0.4.6", + "qrcode": "^1.5.4", "react": "19.0.0", "react-dom": "19.0.0", "sonner": "^2.0.7", @@ -40,12 +41,12 @@ "@eslint/eslintrc": "^3.3.5", "@tauri-apps/cli": "^2.10.1", "@types/node": "^20", + "@types/qrcode": "^1.5.6", "@types/react": "^19", "@types/react-dom": "^19", "autoprefixer": "^10.4.27", "brace-expansion": "file:vendor/brace-expansion-compat", - "brace-expansion-upstream": "npm:brace-expansion@5.0.8", - "concurrently": "9.2.4", + "brace-expansion-upstream": "npm:brace-expansion@5.0.9", "eslint": "^9", "eslint-config-next": "^15.5.21", "postcss": "^8.5.23", diff --git a/ui/postcss.config.js b/apps/desktop/postcss.config.js similarity index 100% rename from ui/postcss.config.js rename to apps/desktop/postcss.config.js diff --git a/ui/public/token-icons/bonk.jpg b/apps/desktop/public/token-icons/bonk.jpg similarity index 100% rename from ui/public/token-icons/bonk.jpg rename to apps/desktop/public/token-icons/bonk.jpg diff --git a/ui/public/token-icons/jitosol.png b/apps/desktop/public/token-icons/jitosol.png similarity index 100% rename from ui/public/token-icons/jitosol.png rename to apps/desktop/public/token-icons/jitosol.png diff --git a/ui/public/token-icons/jto.webp b/apps/desktop/public/token-icons/jto.webp similarity index 100% rename from ui/public/token-icons/jto.webp rename to apps/desktop/public/token-icons/jto.webp diff --git a/ui/public/token-icons/jup.png b/apps/desktop/public/token-icons/jup.png similarity index 100% rename from ui/public/token-icons/jup.png rename to apps/desktop/public/token-icons/jup.png diff --git a/ui/public/token-icons/msol.png b/apps/desktop/public/token-icons/msol.png similarity index 100% rename from ui/public/token-icons/msol.png rename to apps/desktop/public/token-icons/msol.png diff --git a/ui/public/token-icons/pyth.png b/apps/desktop/public/token-icons/pyth.png similarity index 100% rename from ui/public/token-icons/pyth.png rename to apps/desktop/public/token-icons/pyth.png diff --git a/ui/public/token-icons/solana.png b/apps/desktop/public/token-icons/solana.png similarity index 100% rename from ui/public/token-icons/solana.png rename to apps/desktop/public/token-icons/solana.png diff --git a/ui/public/token-icons/usdc.png b/apps/desktop/public/token-icons/usdc.png similarity index 100% rename from ui/public/token-icons/usdc.png rename to apps/desktop/public/token-icons/usdc.png diff --git a/ui/public/token-icons/usdt.png b/apps/desktop/public/token-icons/usdt.png similarity index 100% rename from ui/public/token-icons/usdt.png rename to apps/desktop/public/token-icons/usdt.png diff --git a/ui/public/token-icons/wif.jpg b/apps/desktop/public/token-icons/wif.jpg similarity index 100% rename from ui/public/token-icons/wif.jpg rename to apps/desktop/public/token-icons/wif.jpg diff --git a/ui/scripts/assert-no-next-dev.cjs b/apps/desktop/scripts/assert-no-next-dev.cjs similarity index 100% rename from ui/scripts/assert-no-next-dev.cjs rename to apps/desktop/scripts/assert-no-next-dev.cjs diff --git a/ui/scripts/check-sensitive-inputs.cjs b/apps/desktop/scripts/check-sensitive-inputs.cjs similarity index 100% rename from ui/scripts/check-sensitive-inputs.cjs rename to apps/desktop/scripts/check-sensitive-inputs.cjs diff --git a/ui/scripts/desktop-dev.cjs b/apps/desktop/scripts/desktop-dev.cjs similarity index 83% rename from ui/scripts/desktop-dev.cjs rename to apps/desktop/scripts/desktop-dev.cjs index ba706d2..d8cd69e 100644 --- a/ui/scripts/desktop-dev.cjs +++ b/apps/desktop/scripts/desktop-dev.cjs @@ -1,4 +1,5 @@ const { spawn } = require("node:child_process"); +const { randomBytes } = require("node:crypto"); const root = require("node:path").resolve(__dirname, ".."); const isWindows = process.platform === "win32"; @@ -13,12 +14,18 @@ function wait(ms) { return new Promise((resolve) => setTimeout(resolve, ms)); } -function spawnManaged(label, command, args) { +function sharedApiToken() { + const existing = String(process.env.FNZERO_SAFE_API_TOKEN || process.env.SOL_SAFEKEY_API_TOKEN || "").trim(); + return existing || randomBytes(32).toString("base64url"); +} + +function spawnManaged(label, command, args, env = process.env) { const child = spawn(command, args, { cwd: root, stdio: "inherit", shell: isWindows, detached: !isWindows, + env, }); child.on("error", (error) => { @@ -131,7 +138,16 @@ async function waitForDevStack(timeoutMs = 120000) { } async function main() { - devStack = spawnManaged("dev stack", "npm", ["run", "dev:stack"]); + const token = sharedApiToken(); + const sharedEnv = { + ...process.env, + FNZERO_SAFE_API_TOKEN: token, + NEXT_PUBLIC_FNZERO_SAFE_API_TOKEN: token, + SOL_SAFEKEY_API_TOKEN: token, + NEXT_PUBLIC_SOL_SAFEKEY_API_TOKEN: token, + }; + + devStack = spawnManaged("dev stack", "npm", ["run", "dev:stack"], sharedEnv); devStack.once("exit", (code, signal) => { devStackExitStatus = { code, signal }; if (!shuttingDown && desktopLaunchStarted) { @@ -148,14 +164,19 @@ async function main() { console.log("[desktop:dev] starting Tauri after the web/API stack is ready"); desktopLaunchStarted = true; - tauri = spawnManaged("Tauri", "npm", [ - "run", - "tauri", - "--", - "dev", - "--config", - "src-tauri/tauri.desktop-dev.conf.json", - ]); + tauri = spawnManaged( + "Tauri", + "npm", + [ + "run", + "tauri", + "--", + "dev", + "--config", + "src-tauri/tauri.desktop-dev.conf.json", + ], + sharedEnv, + ); const { code, signal } = await waitForExit(tauri); cleanup(); diff --git a/apps/desktop/scripts/dev-stack.cjs b/apps/desktop/scripts/dev-stack.cjs new file mode 100644 index 0000000..7b4b03a --- /dev/null +++ b/apps/desktop/scripts/dev-stack.cjs @@ -0,0 +1,89 @@ +const { spawn } = require("node:child_process"); +const { randomBytes } = require("node:crypto"); +const path = require("node:path"); + +const root = path.resolve(__dirname, ".."); +const isWindows = process.platform === "win32"; +let shuttingDown = false; +const children = []; + +function sharedApiToken() { + const existing = String(process.env.FNZERO_SAFE_API_TOKEN || process.env.SOL_SAFEKEY_API_TOKEN || "").trim(); + return existing || randomBytes(32).toString("base64url"); +} + +function spawnManaged(label, command, args, env) { + const child = spawn(command, args, { + cwd: root, + stdio: "inherit", + shell: isWindows, + detached: !isWindows, + env, + }); + children.push(child); + + child.on("error", (error) => { + if (!shuttingDown) { + console.error(`[dev:stack] ${label} failed to start: ${error.message}`); + } + }); + + child.once("exit", (code, signal) => { + if (!shuttingDown) { + console.error(`[dev:stack] ${label} exited (${signal || `code ${code ?? 0}`}); stopping stack`); + cleanup(); + process.exit(code ?? (signal ? 1 : 0)); + } + }); + + return child; +} + +function stopProcess(child, signal = "SIGTERM") { + if (!child || !child.pid || child.exitCode !== null || child.killed) return; + try { + if (isWindows) { + child.kill(signal); + } else { + process.kill(-child.pid, signal); + } + } catch { + try { + child.kill(signal); + } catch { + /* ignore */ + } + } +} + +function cleanup(signal = "SIGTERM") { + if (shuttingDown) return; + shuttingDown = true; + for (const child of children) { + stopProcess(child, signal); + } +} + +const token = sharedApiToken(); +const env = { + ...process.env, + FNZERO_SAFE_API_TOKEN: token, + NEXT_PUBLIC_FNZERO_SAFE_API_TOKEN: token, + SOL_SAFEKEY_API_TOKEN: token, + NEXT_PUBLIC_SOL_SAFEKEY_API_TOKEN: token, +}; + +spawnManaged("Next.js", "npm", ["exec", "--", "next", "dev", "-H", "127.0.0.1", "-p", "3840"], env); +spawnManaged("Rust API", "cargo", ["run", "--release", "-p", "fnzero-safe-desktop-api"], env); + +process.once("SIGINT", () => { + cleanup("SIGINT"); + process.exit(130); +}); + +process.once("SIGTERM", () => { + cleanup("SIGTERM"); + process.exit(143); +}); + +process.once("exit", () => cleanup()); diff --git a/ui/scripts/ensure-out.cjs b/apps/desktop/scripts/ensure-out.cjs similarity index 100% rename from ui/scripts/ensure-out.cjs rename to apps/desktop/scripts/ensure-out.cjs diff --git a/ui/scripts/free-api-port.cjs b/apps/desktop/scripts/free-api-port.cjs similarity index 83% rename from ui/scripts/free-api-port.cjs rename to apps/desktop/scripts/free-api-port.cjs index 1c76739..5cb584a 100644 --- a/ui/scripts/free-api-port.cjs +++ b/apps/desktop/scripts/free-api-port.cjs @@ -1,12 +1,12 @@ /** * Free DEFAULT_API_PORT (3841) before `cargo run`, so `desktop:dev` does not fail with - * EADDRINUSE when a previous sol-safekey-ui is still running. + * EADDRINUSE when a previous fnzero-safe is still running. * * macOS / Linux: lsof. Windows: no-op (run Task Manager or `netstat` manually if needed). */ const { execSync } = require("child_process"); -const port = process.env.SOL_SAFEKEY_API_PORT || "3841"; +const port = process.env.FNZERO_SAFE_API_PORT || process.env.SOL_SAFEKEY_API_PORT || "3841"; if (process.platform === "win32") { process.exit(0); diff --git a/apps/desktop/scripts/kill-dev-processes.cjs b/apps/desktop/scripts/kill-dev-processes.cjs new file mode 100644 index 0000000..a1537b1 --- /dev/null +++ b/apps/desktop/scripts/kill-dev-processes.cjs @@ -0,0 +1,141 @@ +const { execSync } = require("node:child_process"); +const fs = require("node:fs"); +const path = require("node:path"); + +const uiRoot = path.resolve(__dirname, ".."); +const workspaceRoot = path.resolve(uiRoot, ".."); +const ports = ["3840", process.env.FNZERO_SAFE_API_PORT || process.env.SOL_SAFEKEY_API_PORT || "3841"]; +const isWindows = process.platform === "win32"; + +function exec(command) { + try { + return execSync(command, { encoding: "utf8", stdio: ["ignore", "pipe", "ignore"] }).trim(); + } catch { + return ""; + } +} + +function commandLine(pid) { + if (isWindows) return ""; + return exec(`ps -p ${pid} -o command=`); +} + +function processCwd(pid) { + if (isWindows) return ""; + try { + return fs.realpathSync(`/proc/${pid}/cwd`); + } catch { + if (process.platform === "darwin") { + const out = exec(`lsof -a -d cwd -p ${pid} -Fn`); + const cwd = out.split("\n").find((line) => line.startsWith("n"))?.slice(1) || ""; + try { + return cwd ? fs.realpathSync(cwd) : ""; + } catch { + return cwd; + } + } + return ""; + } +} + +function ancestorPids() { + const pids = new Set([process.pid]); + let pid = process.ppid; + while (pid && !pids.has(pid)) { + pids.add(pid); + const parent = Number(exec(`ps -p ${pid} -o ppid=`)); + if (!Number.isInteger(parent) || parent <= 1) break; + pid = parent; + } + return pids; +} + +function pidsListeningOnPort(port) { + if (isWindows) { + const command = [ + "powershell", + "-NoProfile", + "-Command", + `"Get-NetTCPConnection -LocalPort ${port} -State Listen -ErrorAction SilentlyContinue | Select-Object -ExpandProperty OwningProcess"`, + ].join(" "); + return exec(command).split(/\s+/).filter(Boolean); + } + return exec(`lsof -nP -iTCP:${port} -sTCP:LISTEN -t`).split(/\s+/).filter(Boolean); +} + +function matchingProjectPids() { + if (isWindows) return []; + const patterns = [ + "next (dev|build)", + "next-server", + "tauri dev", + "scripts/dev-stack.cjs", + "scripts/desktop-dev.cjs", + "build-cache/debug/FnzeroSafe", + "build-cache/release/fnzero-safe-desktop-api", + ]; + const pids = new Set(); + for (const pattern of patterns) { + for (const pid of exec(`pgrep -f '${pattern}'`).split(/\s+/).filter(Boolean)) { + const cwd = processCwd(pid); + const command = commandLine(pid); + if ( + cwd === uiRoot || + cwd === workspaceRoot || + command.includes(`${uiRoot}${path.sep}`) || + command.includes(`${workspaceRoot}${path.sep}`) + ) { + pids.add(pid); + } + } + } + return [...pids]; +} + +function isRunning(pid) { + try { + process.kill(Number(pid), 0); + return true; + } catch { + return false; + } +} + +function stopPids(pids) { + const protectedPids = ancestorPids(); + const targets = [...new Set(pids.map(Number))] + .filter((pid) => Number.isInteger(pid) && pid > 1 && !protectedPids.has(pid)); + if (targets.length === 0) return; + + console.log(`[dev:cleanup] stopping stale process PID(s): ${targets.join(", ")}`); + for (const pid of targets) { + try { + process.kill(pid, "SIGTERM"); + } catch { + /* ignore */ + } + } + + const deadline = Date.now() + 3000; + while (targets.some(isRunning) && Date.now() < deadline) { + Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, 100); + } + + for (const pid of targets) { + if (!isRunning(pid)) continue; + console.log(`[dev:cleanup] force stopping stale process ${pid}`); + try { + process.kill(pid, "SIGKILL"); + } catch { + /* ignore */ + } + } +} + +const pids = new Set(matchingProjectPids()); +for (const port of ports) { + for (const pid of pidsListeningOnPort(port)) { + pids.add(pid); + } +} +stopPids([...pids]); diff --git a/ui/scripts/refresh-desktop-icons.cjs b/apps/desktop/scripts/refresh-desktop-icons.cjs similarity index 94% rename from ui/scripts/refresh-desktop-icons.cjs rename to apps/desktop/scripts/refresh-desktop-icons.cjs index 4896bed..cb43e4a 100644 --- a/ui/scripts/refresh-desktop-icons.cjs +++ b/apps/desktop/scripts/refresh-desktop-icons.cjs @@ -6,7 +6,7 @@ const repoRoot = path.resolve(__dirname, ".."); const tauriRoot = path.join(repoRoot, "src-tauri"); const sourceIcon = path.join(tauriRoot, "icons", "icon.icns"); const buildScript = path.join(tauriRoot, "build.rs"); -const debugApp = path.join(tauriRoot, "target", "debug", "app"); +const debugApp = path.join(tauriRoot, "target", "debug", "FnzeroSafe"); const existingBundleIcons = [ path.join( @@ -15,7 +15,7 @@ const existingBundleIcons = [ "release", "bundle", "macos", - "Sol SafeKey.app", + "FnzeroSafe.app", "Contents", "Resources", "icon.icns", diff --git a/ui/scripts/test-dependency-compat.cjs b/apps/desktop/scripts/test-dependency-compat.cjs similarity index 99% rename from ui/scripts/test-dependency-compat.cjs rename to apps/desktop/scripts/test-dependency-compat.cjs index 04d1321..be821c6 100644 --- a/ui/scripts/test-dependency-compat.cjs +++ b/apps/desktop/scripts/test-dependency-compat.cjs @@ -10,8 +10,8 @@ const numericExpected = ["item-1", "item-2", "item-3"]; async function main() { const braceExpansion = require("brace-expansion"); - assert.equal(require("brace-expansion/package.json").version, "5.0.8"); - assert.equal(require("brace-expansion-upstream/package.json").version, "5.0.8"); + assert.equal(require("brace-expansion/package.json").version, "5.0.9"); + assert.equal(require("brace-expansion-upstream/package.json").version, "5.0.9"); assert.equal(typeof braceExpansion, "function"); assert.equal(typeof braceExpansion.expand, "function"); assert.equal(braceExpansion.EXPANSION_MAX, 100_000); diff --git a/ui/scripts/test-devnet-airdrop.cjs b/apps/desktop/scripts/test-devnet-airdrop.cjs similarity index 95% rename from ui/scripts/test-devnet-airdrop.cjs rename to apps/desktop/scripts/test-devnet-airdrop.cjs index bce2624..23a9273 100644 --- a/ui/scripts/test-devnet-airdrop.cjs +++ b/apps/desktop/scripts/test-devnet-airdrop.cjs @@ -3,6 +3,7 @@ const fs = require("node:fs"); const path = require("node:path"); const uiRoot = path.resolve(__dirname, ".."); +const repoRoot = path.resolve(uiRoot, "..", ".."); const page = fs.readFileSync( path.join(uiRoot, "src", "app", "[locale]", "page.tsx"), "utf8", @@ -11,7 +12,10 @@ const openExternal = fs.readFileSync( path.join(uiRoot, "src", "lib", "openExternal.ts"), "utf8", ); -const backend = fs.readFileSync(path.join(uiRoot, "backend", "main.rs"), "utf8"); +const backend = fs.readFileSync( + path.join(repoRoot, "crates", "desktop-api", "src", "main.rs"), + "utf8", +); const tauriLib = fs.readFileSync( path.join(uiRoot, "src-tauri", "src", "lib.rs"), "utf8", diff --git a/ui/scripts/test-program-deploy.cjs b/apps/desktop/scripts/test-program-deploy.cjs similarity index 92% rename from ui/scripts/test-program-deploy.cjs rename to apps/desktop/scripts/test-program-deploy.cjs index 43070db..88e9a65 100644 --- a/ui/scripts/test-program-deploy.cjs +++ b/apps/desktop/scripts/test-program-deploy.cjs @@ -5,26 +5,25 @@ const os = require("node:os"); const path = require("node:path"); const uiRoot = path.resolve(__dirname, ".."); +const repoRoot = path.resolve(uiRoot, "..", ".."); +const deploymentPage = fs.readFileSync( + path.join(uiRoot, "src", "app", "[locale]", "page.tsx"), + "utf8", +); const genericBoundaryFiles = [ - path.join("src", "app", "[locale]", "page.tsx"), path.join("src", "components", "FieldHelp.tsx"), path.join("src", "lib", "apiPath.ts"), path.join("src", "lib", "apiPath.test.ts"), - path.join("src", "lib", "appStorage.ts"), - path.join("src", "lib", "appStorage.test.ts"), + path.join("src", "lib", "anchorIdl.ts"), + path.join("src", "lib", "anchorIdl.test.ts"), path.join("src", "lib", "programDeploy.ts"), path.join("src", "lib", "programDeploy.test.ts"), - path.join("src", "lib", "programWorkspace.ts"), - path.join("src", "lib", "programWorkspace.test.ts"), - path.join("src", "messages", "en.json"), - path.join("src", "messages", "zh.json"), ]; const genericBoundarySources = genericBoundaryFiles.map((relativePath) => [ relativePath, fs.readFileSync(path.join(uiRoot, relativePath), "utf8"), ]); -const deploymentPage = genericBoundarySources[0][1]; -const fieldHelpComponent = genericBoundarySources[1][1]; +const fieldHelpComponent = genericBoundarySources[0][1]; const projectSpecificName = ["fn", "zero"].join(""); const projectSpecificNamePattern = new RegExp(projectSpecificName, "i"); @@ -43,7 +42,10 @@ assert.match(deploymentPage, /removeProgramDeploymentHistoryRecord/); assert.match(deploymentPage, /features\.program-projects\.historyRemoveConfirm/); assert.match(deploymentPage, /buildProgramDeploymentReceiptJson\(/); -const backendMain = fs.readFileSync(path.join(uiRoot, "backend", "main.rs"), "utf8"); +const backendMain = fs.readFileSync( + path.join(repoRoot, "crates", "desktop-api", "src", "main.rs"), + "utf8", +); assert.match(backendMain, /route\("\/api\/program\/upgrade", post\(upgrade_generic_program\)\)/); assert.match(backendMain, /struct UpgradeProgramRequest/); assert.match(backendMain, /#\[serde\(deny_unknown_fields\)\]\s*struct UpgradeProgramRequest/); @@ -166,7 +168,7 @@ for (const key of tooltipKeys) { } const outputDirectory = fs.mkdtempSync( - path.join(os.tmpdir(), "sol-safekey-program-deploy-"), + path.join(os.tmpdir(), "fnzero-safe-program-deploy-"), ); try { diff --git a/ui/src-tauri/.gitignore b/apps/desktop/src-tauri/.gitignore similarity index 100% rename from ui/src-tauri/.gitignore rename to apps/desktop/src-tauri/.gitignore diff --git a/ui/src-tauri/Cargo.toml b/apps/desktop/src-tauri/Cargo.toml similarity index 66% rename from ui/src-tauri/Cargo.toml rename to apps/desktop/src-tauri/Cargo.toml index f472905..9f3f9b8 100644 --- a/ui/src-tauri/Cargo.toml +++ b/apps/desktop/src-tauri/Cargo.toml @@ -1,7 +1,7 @@ [package] -name = "app" +name = "fnzero-safe-desktop" version = "0.4.0" -description = "Sol SafeKey UI — Tauri desktop shell" +description = "FnzeroSafe — Tauri desktop shell" authors = ["you"] license = "MIT" repository = "" @@ -14,6 +14,10 @@ rust-version = "1.88" name = "app_lib" crate-type = ["staticlib", "cdylib", "rlib"] +[[bin]] +name = "FnzeroSafe" +path = "src/main.rs" + [build-dependencies] tauri-build = { version = "=2.5.6", features = [] } @@ -21,7 +25,7 @@ tauri-build = { version = "=2.5.6", features = [] } serde_json = "1.0" serde = { version = "1.0", features = ["derive"] } log = "0.4" -tauri = { version = "=2.10.3", features = [] } +tauri = { version = "=2.10.3", features = ["unstable"] } tauri-plugin-log = "2" reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls"] } aes-gcm = "0.10" @@ -31,3 +35,10 @@ pem-rfc7468 = { version = "0.7", features = ["std"] } rand = "0.8" zeroize = "1" rfd = "0.15" + +[target.'cfg(target_os = "macos")'.dependencies] +block2 = "0.6.2" +objc2 = "0.6.4" +objc2-foundation = "0.3.2" +objc2-local-authentication = "0.3.2" +security-framework = { version = "3.5", features = ["OSX_10_13"] } diff --git a/ui/src-tauri/build.rs b/apps/desktop/src-tauri/build.rs similarity index 100% rename from ui/src-tauri/build.rs rename to apps/desktop/src-tauri/build.rs diff --git a/ui/src-tauri/capabilities/dapp.json b/apps/desktop/src-tauri/capabilities/dapp.json similarity index 55% rename from ui/src-tauri/capabilities/dapp.json rename to apps/desktop/src-tauri/capabilities/dapp.json index 0f320be..3b63302 100644 --- a/ui/src-tauri/capabilities/dapp.json +++ b/apps/desktop/src-tauri/capabilities/dapp.json @@ -2,8 +2,8 @@ "$schema": "../gen/schemas/desktop-schema.json", "identifier": "dapp", "description": "Narrow bridge permissions for allowlisted Solana DApp webviews.", - "windows": [ - "dapp" + "webviews": [ + "dapp-tab-*" ], "local": false, "remote": { @@ -15,7 +15,19 @@ "https://raydium.io/*", "https://*.raydium.io/*", "https://app.meteora.ag/*", - "https://*.meteora.ag/*" + "https://*.meteora.ag/*", + "https://orca.so/*", + "https://*.orca.so/*", + "https://drift.trade/*", + "https://*.drift.trade/*", + "https://kamino.finance/*", + "https://*.kamino.finance/*", + "https://tensor.trade/*", + "https://*.tensor.trade/*", + "https://magiceden.io/*", + "https://*.magiceden.io/*", + "https://sanctum.so/*", + "https://*.sanctum.so/*" ] }, "permissions": [ diff --git a/ui/src-tauri/capabilities/default.json b/apps/desktop/src-tauri/capabilities/default.json similarity index 56% rename from ui/src-tauri/capabilities/default.json rename to apps/desktop/src-tauri/capabilities/default.json index c3e9ad8..57be98e 100644 --- a/ui/src-tauri/capabilities/default.json +++ b/apps/desktop/src-tauri/capabilities/default.json @@ -2,15 +2,22 @@ "$schema": "../gen/schemas/desktop-schema.json", "identifier": "default", "description": "enables the default permissions", - "windows": [ + "webviews": [ "main" ], "permissions": [ "core:default", "allow-proxy-api-request", "allow-open-external-url", - "allow-open-dapp-window", + "allow-open-dapp-tab", + "allow-navigate-dapp-tab", + "allow-set-active-dapp-tab", + "allow-close-dapp-tab", "allow-resolve-dapp-sign-request", + "allow-biometric-wallet-status", + "allow-biometric-wallet-store-password", + "allow-biometric-wallet-get-password", + "allow-biometric-wallet-delete-password", "allow-pick-source-directory", "allow-save-download-file", "allow-open-download-file-location" diff --git a/apps/desktop/src-tauri/icons/128x128.png b/apps/desktop/src-tauri/icons/128x128.png new file mode 100644 index 0000000000000000000000000000000000000000..818ee61185800450e636723fe55afb0c710960b9 GIT binary patch literal 31924 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 LNkvXXu0mjfcW*ID literal 0 HcmV?d00001 diff --git a/apps/desktop/src-tauri/icons/128x128@2x.png b/apps/desktop/src-tauri/icons/128x128@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9f74d45731b6e8ebed0c3affc9a55561599d65fd GIT binary patch literal 104220 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

s&&8pt+>aO`O&KNkZ$2k| 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 vLmMp3ez8?G}ZdaJe=Y6KD=d5DJ5A_Mq|T6HBK7 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 BST6to literal 0 HcmV?d00001 diff --git a/apps/desktop/src-tauri/icons/64x64.png b/apps/desktop/src-tauri/icons/64x64.png new file mode 100644 index 0000000000000000000000000000000000000000..ddb103db4a2b55d405687800b1418b0cdc235389 GIT binary patch literal 9522 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

s>ri}PDAHlgl*z!-(E*mQz`-2GdtdY z&8u$@J@W8l_dof>qxbKuue?y54x zC{Fy*pq)mfQtj6a5$VHeGN{N%A-Ik(XjZ#MCoP<#Jrl7@$OdeA_R?MALCkJ`D;lH? zGWn3Tr7{}Ds?ypJU{~tuJ;I4tK*H+qe!FHch+B3&69A#Sxh0pck5YUe!aYX#nO0K= z50~vWAzgfPqgo-*`>_v`#jguau>fGU>Vc>hgAa;^X(}gmZ=?1tXS6$-j1 zP2wy8d8_~-%>7+DBw6!0EuA!p(@m|-sU?rl$k5VCK-o4+XIdCFrHNoas9!1d#Px;V z_k8D_P?pK|FaOfN`w$O#VrN~Q7uu+ABxV_Bb@=e%M@~F@_RM>J^Z$9@%*>QOFnpK_ zcB-$sK%e55rZ9$&z1;*v7TaD=TO%Y|vQ$e#tPxT~& zOo65dhp9c-jllhqpgT8Gnk#s7we z`ME)@T_N;=J+WNVJWHUsjpGTlFxDp4<@4G8JHF?Qc<2fLx8M7o_pPs8JfrLBycng- z&R0lY{Fl4FzTTXi9Bw@R#EERNxN-73-u!Jh_x)^Sb7Q?(tnqSP#%~HG+`M`%ChT75TH8HCKYmO32ayt$UcwyZzPPSh2qyOrms(^ZZfV=>QVyvFUm44jZweq)GtNnQ3cEuv^Qm4XJC* z3pG`1&5ZQF|9jsY;x3ZT@4WB5?>T<#t7nIYhwoolSXkaM82{zoEc2@dx%`Vl8{9zJrBm)ReHT8#FiO;PP!mPN3D$o4mbl zI}rS9MVr^sv_L_RCiPmjub`N1DbcDOFeqw!_A>yEPAlk84msvhb&_dBf5j8VYG^G? zcT$m^9u&Q`b!2j{@rL@IuFYx(U`2fI#=~>+w(okAi;iXGUBCVx-+k`PvDIugdj#e2 zu@@7kUg~B&Uy*D!+bcsuS?BDzrTia!=%WwZc*FkKwTExnof(*MwzgaT+FHq1Hkw6N z0h5(RS|F|htr$8QXkn#Ip0ygFDZ4ql$&CLOCuF+V~t z2(!*dD;~Pf3sV&eMR`9fxkQ45xX%J=T#R8ADJ(=6d2MOM$YUL67u1~f-judkrdpW3 zmU4?`(Q1jf)u8huWUWa-&q$CoEAmWmMMj#rz};5M&t+o%Rm{P7!<{#{dw1<}9)J9) zul(A7`oDg!S}C?br(fkt_ai$*x&MtU{x`Z=&xbHJY?=P08X5ZhXFq@MGnX!&J9hBk z)dRct92lFM-Q^&RWTPCPaiV?$bxpC-_Eo$;h?e}B6Pxl3BfNDZ6$b0AZ~AYlNmR?y z(9^(uv}(2IyWVw670qcp(0r$@q82A&Iy^09^mblHJMPT_aIcz-ciL^c{6^!R-7d$z zY5|mLg2f+2dj_oyt+njRDUC7O9iqS`xX`m_3f{{DAN5dKf*$}8pBvKs3}$q2{~oUC zop!$URfio^O%C&OkA2_+@BJTN`20s6(zTAJ(|_5nR-bw)8znEQMf~f76OZ!LNUs-v z6XgWG4YYOVop;Q??YrM{$Nb#fb@4Pb>7IdNv2>tKUBrqs2$JLB72 z6RZRUy-qW5MLp&5ynf*Ryq%uh9c-wmP+gLLxl`YMK5VYe+fgos46Jy@(`m6VmQ2|9 zYQa%eQvUNM8N{2uDU<@0QwVn%a)VhK`i$lR)v7cd(E0NGyTbT5lC}&}-G&C4-_h~5 z&o3+-`|RgG`S6pE-*dr)x$!uc>$Sefe{X)HuJ7gAEcx0uhUC486M7>qM(3-*`oFT6s1IZV0VwPpgY;+6On#mj|yOD1(i>-I1W#G`4WiZhJWZ zs7uzw+_%>>5fDJJ*(h>P?)v)1^2PJZ3y&Rna7pi(&~|J#6KouLyxVO&{@2&*?_;y% zubFf#nT#Alj(jyIX>jN7yF1qu?2IRSS>E#>%9r;wzue2yQ?R5WS3Et(COxa(^>0|G zzqiejzva}7qv)CC_X$q+0Ins@DGuv_b=`kFn}x;qks`GCY-JAVYOmK^ljr^;u`Yk-b9QWY(BJ%-{VTPmZ{}wGO&j;JKJY)_uW$P2b^eY& z%sY#ca literal 0 HcmV?d00001 diff --git a/apps/desktop/src-tauri/icons/Square142x142Logo.png b/apps/desktop/src-tauri/icons/Square142x142Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..50cc83067f8433efa48336b6b891a26024b0ba5c GIT binary patch literal 38171 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 literal 0 HcmV?d00001 diff --git a/apps/desktop/src-tauri/icons/Square150x150Logo.png b/apps/desktop/src-tauri/icons/Square150x150Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..b9e6272773ea71c983ad9b42840c983eee984e46 GIT binary patch literal 41768 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 literal 0 HcmV?d00001 diff --git a/apps/desktop/src-tauri/icons/Square284x284Logo.png b/apps/desktop/src-tauri/icons/Square284x284Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..eb879c40472ce693c189bccd12a4b379e63f18cb GIT binary patch literal 124306 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

BIpTbA)IgfS!41xrY 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 z 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 literal 0 HcmV?d00001 diff --git a/apps/desktop/src-tauri/icons/Square30x30Logo.png b/apps/desktop/src-tauri/icons/Square30x30Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..994979848c9d6b389b647fde24fba666e8d46407 GIT binary patch literal 2563 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≀%c&{cKT`t(N$F)= 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 literal 0 HcmV?d00001 diff --git a/apps/desktop/src-tauri/icons/Square44x44Logo.png b/apps/desktop/src-tauri/icons/Square44x44Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..b35e7fad1d063a258305d7e2256f000f378bc3d7 GIT binary patch literal 4847 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 VQ$Rd?!XN+u002ovPDHLkV1kM0Mm+!k literal 0 HcmV?d00001 diff --git a/apps/desktop/src-tauri/icons/Square71x71Logo.png b/apps/desktop/src-tauri/icons/Square71x71Logo.png new file mode 100644 index 0000000000000000000000000000000000000000..82df855cc7588129cf1ddc82e2e23c66f3132492 GIT binary patch literal 11333 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 literal 0 HcmV?d00001 diff --git a/ui/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml b/apps/desktop/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml similarity index 100% rename from ui/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml rename to apps/desktop/src-tauri/icons/android/mipmap-anydpi-v26/ic_launcher.xml diff --git a/apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png b/apps/desktop/src-tauri/icons/android/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..c22427d21b1b96c39ca22a4a066463b2f1f08e4e GIT binary patch literal 4886 zcmV+x6Y1=UP)}2TH#)C~2!n9ywWYV^`VCzG~SpX?!RC9SNC0W)ApVVH}uWL5pp>p zN4!8lV|mz{6DU-HOd7D)>b6Uap9`fbsxp%k9uFaGe(JMI|$#23CG|5InDz$ZQ-{`epm06zU`v8DGd(w+C*|HVr;U-sFd zqq#_ibzCjU$frwCS@^C{5P{+Xq9ThFP_sY6_}u2a2H>^tyT!8+^#s z2jKRqsN`}OK6n_5bBkzbiDBJEt#GJrZ0dbW^5l_Y_uccYd%ynTo;_lDov#^)@`qyh zLuz%T+@#O>;o4l%dZr zKzFE^y=)`&ZM_hZgi5{)SI`gB5;!XysZvU4(%5JHDvK<7{Y5rtd^ z(u=T66P97J)=Q9i?;Ko|SF*SfTG{9o%Yx8UXl(TQiFqXF6PQp1vS}SgrGSy) zDO|9wOX_NGhTp46*S>ArC3>l{^Sj^qPU6EKxmh`O^yn)xBEMP?Kf1cP7TmULKCpdc zG8fU@F2m#Z$g0~yxjYM{-UD-ZKf?e1ZKTs#q+u_-LgaD7=XZf60+sbIMPtaZp{KGX zWSEOZ-NbZ~o$mG_?+zlPX^4y_5S*Mr8AXhqP9W4;hcy?pB32iZ6{piUJTery;l_7w zx7YKtA3gG_H~kes^j~|e^u;x;HU8T4)=T@&#^WfNWyy57aq`q*930q*!6QFMc+Y>n^Lkzh63UIYnJA`2tC{{H>k- z#?H03?0WL2Es4a8n4BJ!!yr78ldUr+@UF!qGUYOwyaFfY@(B86G}ZfXHX~3`xL8A= zs#nMjK&+k!Rj@h21x|R7uQCFUXD2 zKq4Ja{ItKZzC1mALRwr{5PvWecIVuE|NTM{Rb_5|MxGcugOkT!!q9>J=xUE45UWQk z%R|$PP$dHk$udX-AaWv^EJCRY1Plv>EZ=KYgx07CZE?ZjQxKodLRJL2Z|=oKpX!6F z&5tqz(L5T~F*D{w5Qet_&R~fB#F8tOF?RecvWr<+R-oK>_csI#WkG- zs(=)dzgR%ydpZ!_+5|U&;mTF@82$AGbY^CDCXR@I6*Tt5>TZ@{(tu`?`BfH+N`{B@ z^4*uDm1`$KlqnTTY~(zOTwt|elb0Kpw5W(q=i#y{kaYtRAymm$k#BLL?W!<*4jHZQ z^izDWCnA2J%tch(XxkP>cwIOA9WAJsUYt0V!^qeio*X%b+37g8ti2efhh>;4qAS{f zgOmhWX1S?8g1TswL3_`wY~?{X$h5M`s3j9i31+0|L3fW2sS58j`Cv`4OfFzE$`WFm zy)Zg8+%qu)gMq%S-iusn0nMQz)-*@aT<3;hcKjWU*zv?Lp4fK^Q*%i|a~@arZ$R&R z`!O(XK+dI@g&^kQS^l_C?m7mZl@OWohorqoM#w{~J2JS^Zlfv`EX{6?XfumV?wK)Eq3-!qvtZxqC zWMc@!vk9Ed16jR{EBaSs|L74+Po)uG$e?9)6%CXo@ueb!T*3O)Me;~>IT5*)2O--e zMU3}pJ_@@ETDVZZL#I}(nrxc4O2LMDC#~uJ@U^_(Ks4JX6BRjD$mD23qPf z_{wMdQCVWyX*rk_dOhI)_8*@|I$MFusp9DaleqedA*2#nn34mhPG=B{CXuFC-1p2` zgd0i8|2C%AIFQb(f; zYc5vt_^uQ_aN8+du#xp$_Tb+h9f8Xgz+Hd28dbAUE6=6HERB>-C^|?ZAHN}FCXxNAPChu}zd(R(4Xu0_bO}H>-Vj;4CseA!`$pcLZ zV2;*oylCRXH->TJHV;cQL`Wo5#uxDTiwbVq+FOI<-xfnyPu5->E3-7+keETkpnD5O zv2{%yx=ucZr^A=v$~6oilRg(YNjkP(un8Op#AIItjxrRb*tD12p zSH{yvmJsyiFf^INMd2*kBMn$vA4HjV+*>|__gpREaK}~n*y>oVp6M0n+!W+Wc}fJ0 zlH899`6uj7;lQFB;kGCVF#$itV?E*Y#ECdg43FWu>o+lr5#CWkxuU$LcX&k*?sMow zdE6RQSnCpwrkzkE9XD>$*yzCUR22b_z*7?y97t8+n@nMAtb+IS1fZ2GX!mp596&{< z7-adlsF@PkGCp?C4qV>55ug0vjd00HOcfOT@Tn}uC-N|Ppvz0h9-4#0!3A47_U%24 z%dXf2f7s2wST3hm5#FzC?B%~1n*F+f1Ml4$!$jOdHcLrS@5c8Yo?%A1uz9T${T#U@ zatc;=by2m}ZN%?sD#ZMJK=OX@$B9__RRay(>Y}@^LWQ)Q5-m0!qiL=g`$CMu1IrbGqy~>?LxIu!NjR?N)UY+HVfwu z!na&>vIE3z8FOQ7O4ET*(1|0ba!AwJUD_ByQ*#S?3J$ul5(bZ_5O7v08?vY~Qq)*7 zzOiE(!^e{N#`Ydu)f2-Uul?}eS@iX4=xUO1(`FheIfk9TArG{B5N$1?Na!+|wZ-{4 zOpM3*-nO(XtEe2Eo_cJB3P0dk6G~q(7g=9DkZnfzVPwnOE2xl z0v*?MmZZlKq=TZb#6eglou^n!*N*?y3#YMra12&hgU=O2H0HsUYc}A;7wAWL?x_WK zxJCuQEF2v_ixZOxHY+V{xE*;)@qD?83%Xh`F*Zp~DAoj^Jv5NXF^F$PlK6&o!B6dAXOF5Q?oT-rb=pEuZ zdBKm>J$_8l1)f>TpnJU^RicbkVm9*$6ylRCK@JO+a)ehOR<%U1w6K6xs~XYO-D(Rs z+t-lARX8=}wP@m1v{Pldnv9BMs!lE-LxX=3oy{@Cd>R?t!}4-M=ZK}~%_GGo-1D2$ z)csDI)9Cbykm53#xqxuku4@`7%65m-W(aDhc!4l!!sS*#%YyOa2M{DFHuqgoli;dL zMSJ@yj(9NbS6Hz%p2!~OT-H-!5cx;Md(<&S`2-ba(3(V2t zR{5JAX5KWXDJ@u{oQAZux6#PG9AGSFpJ}l#O2VjG)~&bRD(&9Adj&yoe)QDfUa6`V z^YigS(IzUVql%nPeJka0*``KBIl6IJ8vTWi@tHhXHGp|$EW|8Ygh^q~SSxwtsh2z) z+h`tFt&D6n?9iA=`jaHf#vYnUl>19_DKdD8geNF61?D+iD-;TZSPR`<5#;je;_%7S z`PsR%Qr0Gv^G!RlnXGUV*G5jBGTU04`!`(J)K{%!twK?eZIp{eOw3K%cfO83!-<_w z93yX792Q8tunu9AI3OS>*drT4q{`;B^}U1MfirXt*9^qxW_g_)n^vG`3p=_;y9d2Y zi!gK~I3}8&nBuUmY;D@KL7q5$_=)HD{Q5DC%`rJSVXkO+*57|w4Fev1boZ`ULuXk? ziYhCraB*Q3qEbpHYbsTYPNi_@@EDSbH2lE`d>$_>-f_z;!J;-2f}$?$Wya{&^BEMg z?60YDq-Pgk5*SKpIz_62a8$$S@%^;6HhdS6CN!5TMUl;A)uvded~k5zE_*$F{e5D^ zW6Wd6j)~iEzg_<2uE$Puys=^1*3Ii3B54J@PKoF$2@c1~r3!{mCh*Lj5h4eLdPQfi z*kx4YxP_I>v`K=F&VD{&k2HyFC5~V$qsp=(R2oJN|J`27a~mY`X~J?d&!LoAoEHo6 z1#5HPMtS_yOFIXCv-g{y|NQOp0}uSbdRqtZ z5S5b7tt@zgaCtn!>2UHmAHQ>1nRHU_XBk=L#X+N-{q*SQXmW7y<@LO-AeK*%&y0;N zd416XM~|QBxai``I~G!`4q-?kpC+c{}`rYMD?5y=yZO65{f5~d-ksw&B{ESaV$ zX%1E56i0G89g;8Lkur&-RIOH}YB4WyFfRGRVJR4GkUW8qKV9r%(R& zDXPZLJo)64$7`0KuRrB+SM34E)~(xG_Px0GrVoDLeeYb?)43)T@OVZ>Gg3TRsu3dZ zC@OrGVOi8rL>(JW2|Xk#r_EV4zbv!4%es9GkJa@WaoM9ydl1d2g~jybGWpXxc0BU< zRa-CL@$9pErqB0)<@G$XvjM<*_~D1;d+)usd1z>;-Q{xDQQpw}O2W2`_QE7e1SX*N zeC}m-mHFP@FV*Bit)V2jri*GTvv6T3fLjoag zelcKZ!X%s!TgJxN#*-w=l8~jcq>@ysQq`+^RrTiK&htG(*4p2B1<4=Xu~F#|i zs@`z#Ip5je-fOSD_Wm5X`f>H+Z^4IibqTJ1Ts6e2A6GxF8sgQDtA=>>ZFeh*v+Z8sgQDs~=Yl@#@D_L;R*beCvS+#JcwVmNoK7V97oB(xbBXpZ|}K zd;XiBxhMSd(f^;{k^hdL`#b&-F3tA6_XaNo?+-p89|**j;BV6 zpH^U5mUq=ZT=|b62qKR>@`!~`{{tWRfd44m6mO$UKDEP{!N$A z@8d`CmjS-!_5&HXu6{Eb#rwo!$IRd5H~i2D2Lm6UFbvnn z?^-a(07e?YYgzhQ{8_an7^=+|=6l)3WN0WpUWo7S`JrXt{Q`dWJ20X^uYs3f*?~T5 z8`t5%Lf!DOTX;`jUv1AjnClDzU%$rJ=8al>5#Cqe>%Hw_8!l}{=?2aa*t=*cJM!}M|}8U z-?{HT+ueKbCr;GgQ7mTPZHfCvTdZWgx+6Q=8`7v(xsaY8L<03#@ER^2oa02r!ULcY z`B-FLd@L5lr(=xIGM>tDEWI-tiepRo-~xSE^d_;mgJ)%l6Sef4-9aF|F1#B41&_-O$8r{_u^*JV2n-rF{YkFN)GQ!ozK?cnEV z9L7}-VDuUktkCS>-u%C2injh5?;Re|57b!cdG&kvJ^s7bX-T)!#=SUr{XRC+Kz!T> zJu{6yl}<^qki#olye2CVi$#jXq709WNGg+-LBHRP#baOY`TqZV&CJ4|?m6X$AAT6m z>OS{>C_{X}_if}JRv3bd{WjiUW z*Ry4PqlLxtrPJx-!8`DLc;G#HB^U+59(Q>>9+MazZX5;_#iv6riO?5II0&N#mjiu@ z+wI{2;`cIfabmVU=m0UHhpXyzB@D^N0Qh&XJ<>8OhAT7NI z8Yw)r8kMb|E(~n|Y{BmX+emqPTb9qAgCW}L{khTnJ`K^uy#z8oJuZh1FGvw)N=bib51t|>=Nu%95)9kc=^``wte%tJ!Ao70v=L5Fw|D89)hkbZK z+jzlKtAp>%Wu0G6C*;t%SC-|%#q*vWNlGd|VY_zTg6T*$n^0qLv8xe2q}}dIdAExP zXTcL%(yG;E0PmGbrSU)`SbR@+JMozVBXb-YAAZ)Mx3o31I#@?OeBzKqJ|)R?R3d|( z3~Ej3RCXm6^av1P;P8ILUNEqJ6-Lv>&k!9%@blRu13KNaL>1xUSJVYtCOpO?;xU@x zjXHRZ0X!JJmPF#fiD~H#T*U!_1D{7@^?F2+_;-XZSO#HO4I=Qa#D0VV+!6S*H|XhW zDfG~95L!f}4?{Y8`m9_yw~TemV#5w_zcJzw7;7KKDKa@bCfDC^NXEuTV2B-TxQ^tr zIT;xllFDvf&c1Rs@cW+6b(@`;jVvD64`1!QvRkSApEn)2_D^3c@911vI0)YWBmAvT zof>}AZ3ljXmHfuqM-8{u>QO8ld6QTEW zk`jrT#DHEVhSeqxa_KeOU9tMEBolE-1i(Z1ogO?D{D?TIgrxCxXX%XWKKC_n8EfJI zdj_>CLN7gBA0f@v>(Cds0`)ji;yJul1O|g-33g%cWd~}6wgaymjY|+uiW`s008qik z`&bBxlFEvo&5Mjqi<8btAHU<%8^UwasA!PAZW~6GQaC|8=vje+QA;V_x z6@Nx?za6X*?}^vl?=;op7cv>W#_g?b2>>PRz~I)(ZcR4U@wH$ei9}5At=+0g7wgf+ zdsmt@E0@bgM#d+k+Nk-DJ^B^@(4m6|XBXx_@yey;PdxU**M1a6xV`r*|4w;CTr|V5 z%~1S>&0?}di6YIVsW3dls_}YVe9e(`w=U6_o|5RvuS*2DDhjUx zBqs@k?uuW*{)(ceZEXA68ez)NFD;u0C#iwff_3l82&049t~^6jDgpcL~U0Rr;bYu z1{iHrBpQ#a!MX5&4A0Zqn2hC;A>R}7Kp_Q#IH!icu~Wl_@h@lIygrYf%`#z`*iAiL z_)RPPx@YoQ{au%Ule9`KE-t)U58gCLB_(=fzYMNBAiKzHyI2DzCAMQ;Gm3Ce?B{^4 zitv3b8dy(uHn!x_`6aAH8yf?g3HQV##$nP1ugols>)LL&b)zOyF?_~h>$X%YW#y}q zi6o3Zs+%VcE{sV|yU|f&FP3uZVJ(2(g?;;?3yb??WqtkU@45BZ2YH`(zV@rlJvy(t z5#j=^4}3r#IllGb*{SS%o_^x7pi*lG$>AHKy#OAd(ZchMXaeH8CPP$j=!t@I^^gpK zexR8$AEn|WhHhr6^g3cNl2S8P$gNoXy04I}&&&~fyR^L`$;Un;vDLGh;YRRKBM8+F zUN?nsnu#YQi-!~NIwAwbnw3gJ`b;$F8}OP9gh3j<9eO!iJsn<)#<)kfgmeyn#tMv4 z`g;UlV1@7^flG|&d)Nr65!}BIL-HQkl=w?$W&GBoQdyXjS}uk6@sumIZNda3K)}j9 ztjhqNZ)dYCm2yLx^`<5yg+g8mLpk-|afDuva0M`7fP|&n%}EuZxmoWZn#6S-yG{68 z*Hwlf30%nxd%IeeYPBi5yJg)-hps(<#HEjW^`qVX%YLm=kz4P${a^jXV_%uYCVNj1 z82|rj8l&|phhtVo?Gm?{@ElL@Av*f7ef2CRDdFYQ69(a}kV|AZwDJ0x<6n~0@kb>wXsL$@ z5TYGCfEk3OG~O#p!?dFsiY+7#;`F83Zp!NR4h+E2_vQ6P#1N8R5PEL>*AKlQzvYD+ zCFEcXcWB5T4Yg{c^q3)?gTKJ*fx5wO+UmU{h6AJr9UYebbqA$??V^;efoy}yaw6Pp zz9wen-6|3eACyd5@f|nb*w~10X*#&}Qa-OyqgWb7*zLmmHD!He6NXzSfRJJ_XCMrs z0jZrhaAFS|qF!kOTUJPiD=wYgHv{h(kyfW66XU~@i^YR{I_n*K-JQ;hCr|ys{cnBC z4{8KpMdDQo)7Gn5G9o5?`^bNm{BvJX4;a93 zUuoDeDl&I%Ahg9=}(> zYouby!JT*C6FqtQmEZjKH{Sc6y=VTnCNwjn!UeexKezpJi*v*8dF;!7;d;@0G>9)q zx7E_nL>{jX9xDcnlm?Gyh2AWcOz1--U8A9mujl$&reXrwM~L78C7C%7$j#XbxQ%19 zHQS`u@H}Rh$e_RUki?&V6eU1puY)$S=Rihad~v09j2Bgo4<3fztl2}B-b1MK5GIK& zk@2d*Y}$IYc)~}X-+k+Wh0^&N0`S|#D7c_vHc112BX!^5J1Mo|NH;N6(c(3uQa%0js6f96vX z``kk^1TQg4qry+b`11heh$1Gnf!pcBLsmh1RNDlI3z8-@?#bQZ#QCE`@O;YFhU5zL zbl^ODhEpZnDGn8tElA?NHa2!;`TUx$)9_eH?!5D6rM$>(mVqJ9o;oW#<*Itt2C*j$ zc?e#4p!YjaK9dnE3;r>mhzDasBf-6Ie3QMlx&5|l7iK>DY8a#QH?5e^2p@cSb$DT> z^x)dX^SGIQFmdoso0JEMgGeFOWO;~{Ep$BB$IZdO-H3is=EFXHBnzL-! zl}sHO@Kevr;?x9omxbz1Mi!>#VYq$0$7ZW3Bk-6}U278itS`ru_+~io!}DHZ=*I>a z8ym)kZm~FujnS9orL&R*_c=2?CKp#$fLEiMxOhF>Q#vV|+igU$uGac%C??o*vsSEH z4K`L+;8`ag{M0kg9K;&#z!>qzH(!CVUJYD$X50ICDk}GX<>4<3rmwj>+Q**ufDq{c z8E)}t@xc0eBQ!Ki>!gkeVeoz#WQqfXmsX{x2?PmjW~Btq=~P7N3wlO7Vha4~Nt{6G z3Myo*Fa4RM{`}K22}3n`DSuw;Xu5#yeoyKUAGEO%I!IauB$UMn2xt^Rn1}>g3N&<) zgs;P7rtcY&oZ*VzGKT9*#u7%6!}^E{4&d#Jc_~d#DkkRdF!QX#!_ZMCU?fe1TP8o; z0DRpTlOeu0H=|}co>E7)XOuRY)Nr$E(Hxrt*tTC9k~Jh5v7-lN?pyDWi@O`ZkL$8; z-#!h!WDIy!J`$25GU^&wfL)YPUwY{bAVx}Vzv~z_N1*Gtwz4h{fAK4l1J8Nr$U!g$ z6*+tMJUnF|++rTu$Y8%IoWcyY9X_ip}>>DU<#Ce^b2Z z{7nQ5#D&kEZ@puvVBi19=O1>9Q-`9SjfVw(j!>yfbl?=k<@r7|M}n$M{@<)eEftwTi%s&#*+p-X(^wTwM$*8!SJI< zwg?5*;#*;9(36!*=a7Vqz@VBkoEt)xyelW3If*qc;`LL~Xc2mVL`O9!k0d1$WtLvY z^J*yKKVB(1zO*%luJz7ZY}Kw zFIP4%9y+sh!OzXzY||U?MTxN}sj5|5TBy&WR?BL~03M|UYJuEV1Uoz)OPQ>d^hFz3 z4}gtcln;Ov6NWY~tZFbsJ1p73GvH-iS*`ctHJRLJ&KBO27F~Ypd!>9gcWv3WQSavsTAQ$J$O?ndo=-K z*d<4j%20%n(Cci}Py_DtB;lCN7+7LH`Sw)v5`%h7wnQq-l!r^w94W|3J}N7M2!n9i z=QUahGP4?4m^3A^QByfbGyTJd4hxG!&m4aauLW!jPiuo$VzMwhE^~8JGCDdU z=gwb%Dr#40pbYekIe1-?=IKO2VHdg0+D_TM?e^Q9-D>$qk6nM$N4{CFXnixvYTcgr z-Q&xxQ?<J28inyiNyAW0L;ew2XS{q#vS*)>(Wky3vjvo?h{IrjZF*u7%eYsN zY&wKED4PPv^qGZmnHbH3btnM##1!guv99MYtjG?s`VmOQ7D0B;PtPcgMh)bN=U(y= zvhDo`7f+{RY4wUMZhWIexATpA!$%|c-6!s6p4oUuJ{3QBYW0#=m^d17feo#MqlV@x z`8-fJZv(%wmYD>=W>PTd8@9KLOsuc`m&zOPfD?*KBB4i#u_Q)(#N{Am0;6`G`AaE1 z@hKUCfT4&?Z?{_23XC6mFin79NG=SXr9w5fa6K439pw=NK=t7Wqj4kyNs~z7-=tkg&ybw&@?HroY*Xd2LKQemX%;q73IuU>VniY^!gY9< z3cNQf8Zpb%iQB-)*n!~GA#W?%k{vF}>hgwW-3~K*y-Z8j((D_QD6!UMK$#fswOHvW z71bF-X)ha>7$kDY9W?ZVn1Tm|1Ly?OCVe!(z1UDN32-ZT$2KzV99}PpkW02;2UVCZ zB2yQeo3Nl-F6(;b$uGitlgTLJPnDSgqaQiAV4pZ~+Pm)B>kidhJMYM)hd=S?qmM?k zTjEL@;=SkucT2X znl)=;S8SvzqCmN0?wt>k^h==iauDgmd6}3VQt!0^kHXsS3aFeeF`maziSimYk^@Fz zteDi=x(!$}grv@0i^$}y zH9e|?`{}bwhTg)xlE_!ildJ_E`^D7@5>3S3jm7@No{fAXANDsYYG8`~kuvQ#d zae^z>!_U{Co`&RU{fwl){+J|p*QLF)reO^3M#GL3Rx+$G%VeV9s75hnYPqC^1Cted z8f=VC&kto|!yubyXD2{$G?aEpfWu6~FsTE~Anc_}AcnIU7@Q}Yje)E+2eM105ELrA z@J72(5cL9R1hIMAeR@Zc76lxD8xH7`rM0rW^uifbEK;(G47pwdN$eS^mwIsuJn%p> zkn_8E-3H!+?9HJg^H9>nq=px>(s`-)z<~{9$S~lJ6$c+m&**4HYV*>zOb?Ap8lkx4 zfq#YgHWo$V7wHR~qJ#giEulX!q`X$AA@=P?@pd73U@=mGxM zjZ(%n3K$a8o-sm_&>BKXOygUlz(qFHH>XZ7sS>AziVSE>1>yASeLrkxf|n@M0{||t zf|3Sk&rgiXDP*1Pus)sz7s}FE6_iRH<+2{U)v1?PlrlPcbWw)!z2*R}W3y*GxQ2CL zH?|4-hIVnWHVu%;Hp240{nKC?GVs#Ca@ZIt;K&VBQC7+*Ig(Sv^~KodfDJ(LYYyIb zI-QksFyz>9Ql)O~ev24KJ$_{uSQ=2K2@*b=E8_Z0F~P-#9)hQyou36aij4qTjb%f6 zzOTP@N?ts@EURnV@}_%lm(ht~dGX{KqaDB+6|r8oTz`!;`hiugHb8gAlEb4DZ^G^U z9=zf=q|ULwF+)^$2Ru_D1&!pb^RiK78FC5Bybz0rUvlTGWa%tWUnQO^Cwh4D4`I+ z4~%eCy)nXnE@{icSVE=?wv46Vv8a9~slJz(go1=1RMNy?^i7nsE@F4@pB<6Ii$lO@ zY*evK_Z#2<6P%$jQzIsD^tGqOmeCP-LwL7Z6W2op4_>@8AXez1GzN;s4n?!{Xr>FH|Pz34~cea{~;{srwn zH3<A+^(03B@TEZPso;KiG`CK@TBi5en| zlSWnDsL1qmNpWK|4Z6$WYk*1vy^|_VNq)Ew1Fy--g*A!R(WusiXUC>`@!SRZI_k~D zyfGRmjFZr$ID|}kK8NxrXfbTGUIiW%1UDPRvUxxWtl){$=iq31k^>F0wzh_7QMygE zeaLdZ5l->H+ao>@Qazviw?8wFuC@6pLaUw1SvE6Wtx%W`3I$T&#ggziC19ixs!p`N zjIV(trE;cieb-hHsr~(W&GJz&ELdOMh=Y^;TcUm+IU9Ol*D{45go{l zM@La@NFtnKp?i3k!cSYJ`z<{Dt?j0I_kjvyqAFIM7=bro>8)q@NH1U?N?f@)bjHa5 zZ45MPD=J8UA13YM1PNKr*0zF0>HO}nTwqxZYBSz}ZNY-u4HRh59IID!(dREESm zJaN~O=1yB&c;GDf+)-3s#*y6*!8nVhv@Fbz$+d^Z<<^_$<7PBfaRN&D02Y&Up=fj-BdeuGRwU%LcGa2U~vav`PZZMw6M7TR__5u5> zVgT?%h#H4JkcLO^ND6}s%ir$d!Z#6u&z}Ce)R1_TH&&(BfV+oRjKF}?!wk1kE%h-Q z8wI^M0-C3QKjR2Hj%@@HJ$MTjmU146fCM>h>AbYv!fQC16)uA(BM2mo*xf7FSwUzx zqSVsj!Ewl)z`5;qkf6dh7e z!qQhvv6c_)N`+Al8?%&0*Itd%u7TKLyHyKbV{^Nr>oE;{*+Ipk5AW9omD5EcRN!Xz zJrzR`zcpcqdAui+FQs9yfE84uT7WGHg!>4Hf4A4wO{Y9)#HeX@;q4AAPRcX8XqYMj z3V;sUSl+_@x3$rW?8PWNvkyLTd!13nk>SY^aGPa`rWj4=-c|rPHivMn;OD4{Yb*=9+C} z$W^w0LOV!GsNa-XgrzCqykR5)FP%FNj8uft#WW<%V#g*&quQP3;k9o&GNd)_we60a z*=U${1Bz@_JunExr?!>?C+3HwR03TBk;N_)KfCa5Rp40iojq-G1|iRS^3(_#{;LW# z66}|TEA1e3la_D7^CiJ6j>1E(UfMB@@4lmOz*9*uC=P_}wq{dE)Lb(!qyhaQo8G5J zOISBF6C%-wbR!ym8}N?YOg2lCc<4hT@aSLwnoWAMJQABU@N-`cJfcj1by=)Ic$+|l zWEY|L(87%D%TLM~7+O3(jP=AO=~F$_QWCp6fY+@f=>yjD5r%iDB7$K>3o)6zW&+;5 z2S*^XeCdL`^y15CFpELDS5ioEaNnFlgd{xt%MeX?ss;x90XNwnpqznqLhI^2wV9ET zSKko#24{7;wdp2SZ3`Z)(W)!^zq7joLtKN9p)EJwJc)3bRKaJ51h(HZvuM~WLV17C zK?b)4FBe12@{lfK6bA4TLUkRl)$PFh;AdyB#3f+GI6MQzwRvj#z<(_v{8aH^hI3Il zP>M<>W~uBy8ub;cu7Z0b|3^+w`%9?eh9TyloZ)WnA#)v>Dk|3Bt^&J(H*COAf>8d| z1vqC*YX%uB^?2+R=GXf$3>%WPT?jV1+n&DH%tQg=+ku&P6BzNY(pd1^Nf=Nb-i;jH zU(Lj^Rl3F6?c~ImWbnGx3d(w+5~v@lZnRDh??wW?fGUS322zJ$q5x0GYE?&T!JMnp zhat)3kt$k3l9is2o`sG{JA?IW0&?w4 zT{-p5qh@Sdqp>%zD z(}8D5;9K@P&~71N^_T+E&$f174xt^flRFm4Hp{ zxlCNO94>y2$$^bfOQ}{1*o+xCNo^9jTWDSy1_mu6^DhHKnp}=Ekx=0+fdrog7Jjx3 zC3aM{;pIqzlS1;ttlcz&`KlXCBkWQ=<5Lp}uS~fZdC&o5YwR^)iv&Hri_KJpj82>U zVM%GMAJ@Kx2hYw$O2Ak-;kWCgb0F!O09V)s{j*+!k+ES5&a2rPnCi$d8mAJVvXXt7 znH)lQFS7Nn=_BVRJ)Zh4IU1}C^F<8dyrvZ?D372TQUP<7)jWwNP+MT06PV4Qr(M`(2P8W z1@Kf=V`G7RS>0`Ejao~-VFT0RBIdkg*?`|yQZ~S5Xji(Lv10m$bl^l-k{ljE6$B51 zA=kr$qH>=C4)QP*Y!IihK2BL16Ob`fKXk*eKg2hlOdIk`DCr$dNbR{QLS;(Z6M8zY z#?;F-gu<&C6}GJz_!<(-KEh-MS$Z7rF+dBeABXG=;NJ_3r(+iFhY~g$I5-a0pp8V1 z?F9)y7gnz08N5d?f(#v$7l_3pgy{?DZ0xiC+#j4VB?4MIbGM#EGCj!SDypumX?F(&7k8hc>(rJvI%En6~sU5AVn+QyS#I0fTyv>eK+ z43nf15}zdMz`KAf^@!t;*;zR(M^8p8~aSTzzOZlHdY+Dvf5sC7f>f^54WO&DZ1<{Hcx z*wHI)h#K%LBZp$Cj>?iGb_9Eab+j73-G*05VUbt2R@8{H$g-HIw2+XTJoA$5!wx&V zZ(RE(_&Gd0Dw~i%HL&Yh>T(dG3o!JwhzTbE)69O$2$ddMKj$%-fNRoj4K#F7bg)(L z>71DXdn{Dq718NfRfP8dBTCq?)M)wIH5c)XqK4N`C&LZwK+(){5Gw{;OpY%ROh#}K z(o!jQ^g&yR_Dqtf33zEArM(sy0!pnYgyhe4nXCZEIca3m6S%iBVMSDSupya{^;OCx z8iGlQvfMeu{vBM~ZW|9BA#d*6Zjk)Z5gAm$XM%G~PUK|vo<;Re7hbv`yXP9{Ljg{N z{GY>^N-(qm@GC_guFHGsg)I`m%!o8&r~(b+o?!Q~i8({%8aAbe8AHI##L^UCG_Z~q z+ebmXmoOTI!>_j1n%YuI?w3;|l;p>_msW$EC?Ek!l>=9v$c4vhb!PLQ)z#8+Tnhqp*TEMOyhW;1=YQ;}zOwzMJKdHpe2*%*fK z@)C9^yedAm z=zP@OYzE^rGEb+EVZIM~o14Ir8F+2BX!Jn&?3P@}i^+3(WRew$IWnNrEK4GO9PswY=u@&`}6xg+HYXMuW( zBk8BQ?bpB%wabkiY@8>AGlp^^i>TOgk-!bwbb> zmqd_tDLR@fkQG0Rnb^V8{OI+U}r!JuKO@%>*PtVDdZVkc|-IVX0Rwt zP!O$M(^Jca_X3)FcFQ{mJ7_XWqpXC*$N;-+AhY7lP67W6gP_f1K;lA9wF4nT1GG#T z*&Q{06r2*<&t zg$eLvAilGB-A=bE3wKTG<{Q2fa{aYcnZ9#W#&0WXr6|Db#OEAYif>}x4#<6k=Q=1Z zs%ui&0?6d1hP4!o#li$i)#$NM1?RCk-8bfCT&f`NfITt2q~LVXu^4B1@5*T#Jg2;g+KCMdTyoP!k< zHR~o6yW)lzv5dOKVXkP*HDg)YSFI65MTVxo~M$ z=d84_Se$=IBczdJVO$g7%&xI`lXbZS+}5DN8`c$tkK_x%)qE`v_&AIsvL&w8s8V;WCYoF(Ke!p0X#B`{7eK$N3}Ua5#csI zf{bzz%|p*4Y{P>k=i^d3lz~AFBsG+f8-IKe{YUULUDtHJ352J}VWz+Dh@5#4%AQt1 z4$jWV^7^KrOA{O;yZ7+khbLtK{5f^^tfVIs>ix+Wgi?mEG-;|r#I5NGBsY^e^+MH+ zBl6VmK7l$os##Q~v-AdItE04+09+a8T%UMaYG|W)4l@+HNHPjD6LQ@!ByUw1R?kN=dlwjk5_Y=& zQFOJHw>NdLc@iPOhX-54E}TLAcoo^~4&`7j_%)R5M#COp3UEuPb5^K8LD*{nXuDzS z=iW?1g7~P8sx$l@LlMh@DbO6L0YW-{qlKR-ViH)EzlQfDxQHWjj)BPCK)Dc)0ywrT zqs6#P9ECV`Hl|Y#S}@MVx6heOnHe)@~Z2%RsSUsvXVaEjN$HUVvcC3^q^zOb>W!V6AmBbh!tp2zPc!-g&QwP+{xR1e59 zpQSt#^>~hkL?$IQ>=5=EbIKH()@?|mGI=uwW48=RdztmgsJ4x6T-??NnMCLDLiFARjKD{U7Y&tHb4I0Mzrqoe`IP9ew;e4PedQ7T~V|r$^xZ`j)m$QgzJ{8CiNL zojuL2w*X4$9x})bUMGrLbVHTm`62LpOiZx5Pa~uEM-2d}lQO-WHCM#dwmT`2=~f;^I2wUtfx{oGpdh9d(&I419dYduRMNUu7AT3nY*!o z&<{L#%N?i%C*_qdpO*QlacpkUdCVR>yu}l8*FJvtAMzTi1g%BFKBx#vueunY!KrJ4myK~8!U~6wkvOlEZ321 z;|yxsU^7R@>^a&L#nw&j%)`w_;-D35ggW#|aLh)p=_#hvE;i59N+-~;Q$To&B1BDM zkw&pIyU6-j%;#(v0^b~zJUJvg9&7i)Wff4pqt|fsHKA0xyAZ)h}6){wXTZUV;Vd(qcuqabUXXMo9&P(?xyx$m< z-%$Sa)sAU|w&{;yXt&}zjA?JClR0(3@RY0sDSr;nz3+|*Ie2VJ zbfIloL0c(>7UwXwWa;d(Y@@QoB1R744$9BE@QfQPC|g4A$7kwGM5&VG3z=vVMdEjo9&Ly8j#) z)&Q9qt27J?L-2wl#UaVF_ZW0d1D>*g*Y97F-@%HVmB(%mEsy&`?!plaTi!`}vCIESqK9TV`#5V2w}^fo~Y_1Mm8sa`ON z<|LkPVonUO!(oY`5n5)tm=U8yOlb8(oX6RXP`f0D)9{Wr%g*h)pq)5yC#nRs71oH& ztjL&-1F@Lh@-^+SpOhIr$!hJMBNKr818=y2>edSdUB{5xb zJZggEXCAt(2Dqh8Q;7$JKKu-NF4ixVwFMEi1T;*+V4=LW1C#>WG?thiG0_HT%tV9( z(f5N38_h67r&_xVsZ^jKpCjei>(|AN8w2#roEdnN3`0Acf@}l%*(bA$5xud$hw;6y z%S(E?fN{Y)vi{(XOkvOvo7;!JeFBAkJopAVk%3~~co7e~1pE^q8B-ZsOhdgf!axUT zN;uQj3SyU=bB*XL93K*d(;z68ve``+F{9s*q;T9Go8>)id*HNO8f;XjxDx8H_UwhT zdnmd{Anaw~*?J)5Yp7~GcVs~CHd$G@qzGUM*AbY+D-8o&l5Eh&Ge%cfF<5-L(8Y0P^j`%Vm~ zLpLcyPsVgQY`=?#Fzm<>Fy0985g!2ls@SK|>!><9hm0@@{B&})tetC}nhUH_(a<|r zjA@;jM#jvYy%Uu5bEY;K!h}ubGpHjcQ0z(}gNMG3ZBRV>jzR5mBi;jTn4H@*&8*&*?}fz8ds=|T%l)FjHoj{ zZ6j3Rm^~e}XShFu{~SGEL&KRB(;gN-Y-eRMmxM>6SFJ(%_3X)QdHidq<;mw>#sn}l zy`xmJ)h=WGu(7e`Nu94~8pSZ71wsmJSVj+A<0gh2q|o%0PFgaakLc9g`VPd#NGxX2 z3ej^h&~t|jgRMg}*;Z#N!|rK$Q8Q=Dd|x{W`KNE@Gn#28G`gs%m$M0qgPjl-W5_}o z8P+zMa^mG>c?^lcvp5Rm?8>UtKzBJY)7V7;?GT1O4bXDY)ALh2of%2&okwfx{NZ`o zM8)S6xX-$mgXlPdCaHlA;JkPa)gZhEmDm$w8R!jx_q~A*^sGWSvI8P~8YFlT!{?d6 zl))LZQbzc|3AHUGES&Pz##A+(E~W}BRAq`uZT_c%{)!u7l85E6*35oo>eb+lvIvEV ztfRDv+c%>)dR;cHM=pm>4pHYxPsLIJnZB!Hwci2X$1;5YRfa_QjA+Ajl^ONBxYwD_vYq;r1Dk7k6a5g{%}0Y>V@tai?xC zCO`c1UqyHt$Sp^vPry1U#~gZx1j_P^@@TKA0B7^yN~SjP+iK53siJl69kH{@&2FUePrpOhER zte|13qFu};F@ymkQc!Kw>vnX5Fw@Nf`;8UGWO{5&_Mr`QZr>Pq!4gCdo_ytn3*b^A zY(Q4h=?02-yU2FaadN&HBqJFZB9j)=j!QA|05n>wjarmLMR-jM6AKGdFw7CWS5_-M zh0>xPt--=FZMJ69H^g%?S3TdO`tlg%V zAga5*4@!sOn_9#?c5nrC-SATja`uM|K5A#%?tsKalXq zM|D2~KRlq(%=BURo)s>s8C4QC_e*#_i?x>pn-M3}OMLo^C*-Toosz#iaazuT&T4jD z(-CGHPcNRK%krop&p~N34?H(JIx35E)4*gP*=TygW$ol{@#Cn9Glva zECeD+Xg#SPJ$Jr}H5=&q+DJlpr3}|Lr;NGiLBX?&IC!7A8QdB~#;X_#0D%Xo9zOsz z1L$(*3_LTsE*H@Q9gU}SfI=eWs4%3{HK!tYgV&$WTp!V&I;~{+)cBhRi3=tx5ldmn91k=rBh5KK07BeBjqV2hRggj)tRQhyWJgac0L$vLAqb7Rv0& zabPHD@Zzjy*`_f|xG{Uao>oPZWb$CZW^lQm?eYm399e?Jc>ixbsQtsqG!Jcz>Gj0$ zdh-(#a?Qa-xn^-%CNbM4$!On7kh!>KwDrvDz%z=X;#M8*0$v6 z^$WN*0+*DN{|B`n&24?0%;tLAeIn_&~(k@Se#N!Z~uj+9nmI7x#WNl*R4Caghw8D;PGz)XX?;)d96 zQsiJV%Oo<~LdMZ~DSb%9lT$XPMGfmNA;Z26>3$bGwG4p+M{Q^hYWb?#b~%C$CoE1u z$-!{p`|O7ho#4>I43{EIhqGg{(9`w6jj=zu$m)Y-4g-qPQ}Vc6s>Xrs#-L92fPpxX zpt$--^L&;I}+0lPU2UpwTBa3 zg;<{T8cd9(>u0viEUgW#S~4HkV_L0<3opk~oUNSG=5}9BpFFSQ(W1a-3)jrarL$|= zI@v=nMk-=ntP2TMHf07irFp&yC!kW=4nRJQsaPC0%pMgcKSA75xxYD+86MVQIErc} z%d=9ND)IzzjQ_E7Pq{?aog-$pq0gzS&7H7p<``qN9W&z)9y_1IXNg#@Ebn>Ou)OD; zZw58Qh9}I6fmdyINKv8Q41RP87_$s1R0|Zw+0|`$upMB~vOIBSNgh7&ynN(873EVO z{z*A@=Qw(uJ#(;kFbKzRI);5<4-cr5(Uh;atq#vjQ~LFf{y8x302p;l4=TFmrkmy2 zmw$X)YrPUcrNU_ zSzB!?!CvEehhEPd6@rMCg(okm5qe6MH5x4YMKppn5uyBWoL{@+>gO8pN zMinalS2HFn)!J(ydf@R1q(oqdJzP*nr(iLgL)eI$S<>XoikM`Y*UUJA9^wgvW6%ew zQIw3jP<13_0m9KtqNBUF!_pl|Q?#WPDEdTpU5AlpVy3Y?m1ip@JxNF57&m?&H{4`v zB>6Ke@T@b?w$%=str){mR}I=mqp0WdDe%|)HJq3hRl+$e$|-ToP2=lePYxDsX#+fI zia6@iMb6CTYPnSUMCI-~W-iZG#K?bzAX{jMy|~#|viaQkvW$%9bXb(?+I>G9aBRRL zzwEOt$=+nn*ohVNAfNN=yYh)go1e8pk;e#DI5WB-h{ z^F@>cj^q9arJ7JZC1HTGQ)szG>2>)c^rY=QPyzg2=K%Ok?RNBg=>1O2L$8>Z@zJbc zW`Pbo=zFh0)~u7ZblR4q6iXJLxfJmN&qu}>_vk?Xo=pexJ@;P&i8}Z|%$_EBnjMPC z;Tas+mE@t0oUey&H((cqG{Ai+if0ju?HrO9V8tp3)J!a{864XfM>xw_%z4Ni`2QLV zr%shJjCcb^9O3*xK!uGnmVEw09a%cQD~E2%$Qyom2o3oSF%yQv)=xW}>gpTvTeDp4 z)3yv}&4=XU;nZwdz1WwRmdlzE9z8H6`{qz%#bAJl6(%DVOK(w`f>)VBBJ;Z2Z!#23 zt81FzEiMX|1F@;bN~Qv+#%|WWd9?K{z^y5@5^-Z?kD%Gv&IfK2Yw$ zu@8OVr#cq*To*kleE@Ql!fK~c%6g8nvpC08iuXNx6T%F}wDg?4nBG3$)nbbS(|LBd zq3QnoN=Kdpr}ykD7B6l?M(E zwPEx&C*4NPv{%zssNR=&jmB?t194gx`d&Cghcg(Th9~{_Up%F?T~e0$?1Y?r@siwj z>zg%;<#~EEYzyVO0oHsP$wUR(!UzfmPd@V^Lh~D-NH;#7eJFt!QJQUdET=6BjS6&( z<)$(pff!HS>xR>E+2=i|U>fX*@T9Z`sGQ9$tb18!r=dT(hhgzmtu~ne<7=M4c|%py zySFzX--E=A=LD8(uK|5Sqhqf}6@1`%)E5cd*)$$up9YV9#p3s{imhf9ZaUEMA)6IU zv_hS8c)WnwG-Ww^p`)YNkRj-S*PLX}kn7e_Pv#*x&@T>o?72lp9E^7x1oSpM<9Qf% z4hvRAB2q(k*Yzoh&q@v9vR>s`$F{b3+DJ;Wz!%WGZPS{Xp)1CEU|rF~<>XxznO zIxyatyoe6M<0mkP=*3NW0ab@H7cs|hz++~i2u}}T1EJypdL@YscnQhS4?XZ_@|jQlnho5SPHf^a6bh|v@3AZ%=6a#8fi4q9a&fAKWd3Ehhv z$;`@&1tBanlQ>ykc%IJ8?2xw1#-d0Fd9v#4g3grO+*(JXF^=$R>w%Lz`JmG=qgE(j zE{$Zhn6M@o?dO5(ZS>X9eJx?yro_m@m9S>nl%r#fw{Tc{wI0#&dL1}{o$ZdUCt(eV zeH{n@mCw*9bfVbAD=XWW>jRY(CeJo|%`0z+=Qpareo5H@aJYbZdpgt--CH_3ch|!X zWzqoL2dr_^O$T*)RzAn`QY@XbH#!2n8XLbGfhvg|cv26imJS94x)VAvb^~IFJiGXi z2+U*=R)Hxwg5xv-v%}t%8q_|Vk%KdzU3#{_NUm()O`8dUj&1V|+1__mKpM6nB0Q5U z=HN<{42xs(v+sXGe&?a%N=MNk(imEP;KsY;@4xe{^7LPxmM?t%DJ6A19uP#z1+#Eo zTyM&|e&Lhy$q#)GsuDbviU)`X+B3}_XTlC63riR*2IFV-C$RpjqJ4-TJvCU4O?llR=fFBk%ve|1rGIn*95Zd=U)6yl}KfI&FH8Su}Y4O^0R7!DNRH zJMNM?nBQ_AEljEDGXrF!?=T9AckT zVifZNJMsdC7bW2Cla#fi4m>@=ljC#Rn4XGcVE{e!o;Y&k))_4Yl|hZ1T?d}&LaGGp zX~p4%K!L2JHaVLY(-u&vq1V99tz$P+C@~0ZL;k81(A6$8PUy1rWca=ks!XIvKiu;6 zl1%T%v?>thdLX6F&<4qyE@1|sE1!L8MRM>aRJT+yi}9cR!UOWN@BQEOUVri@ei4S; z!Dx`YlK7e+utJ1~`S42>`LSR6lKjyxzfCi9QbH_?X-QDL%X&mJQPRu_w?jUatqe56 zy#Y<+;W(Trz=omD?;u76_mRlWEx#~Z~c~g<-5P@A7K-ZXl~Cjst)ko=3|h6G}Yf2;BKJ zaMzc=z9}p^ZPu$Y1du)o&|k)w;!X4`w@7qz;)3gGl1h!9wq*i`IpDIib%FgBT~{Y* z@nnIiYcg`%w~fd(ujkPbRWr$!h|o79+{&$l{LugPF)Tb3-{}b`j5+SND8Ka^56Vq9 zUMFvQ)9s*Yx@O3eM^Qn~40d9_4D4-uo3bI!BpL>U=S0h-g3GGTQ4|mj0KG= zZitG3c!U>vRr;9fH39?UsE(k$A=5=Srd5} z7Ireq<~p=}ZM83FF4a+Ijc6Mx4fYTS>M_s_myntD{E+luIdEX`3=J^=DI0Z+P&A70 z86QFhKaE+?_l(J*W9XlTLfi%Ms$)YKzIBoq`hA_E{KP;1qC9sBvs>T|$8p$U0vPJ_ zMhD(wRetaXeoF3q{mt_9Gsl5nEls$10(^&!TM={g8670&&HVG3>;S4;~tSFanOPk^u~|4|3PVg2mV)i!jW7oE}2|Fxooj zuSJU^I`A_?z))GR{ivU&5l&K&-X}n=Qb<9KB3lb=(aGtmcy@v1Ql&BZl|MKkAN}kJ zj7>WXiU{5lA?79+@Cz5us=}lNs^{YmeOgD0uwCID-~GR!tksl{fAkL#wi1dZ@y>D$ z%5pEP2J+({{E{49e3u-YjO(mND-tvH)==P}Oi4K1H9Wq@{LMC_`h0EU?1MHbnTLWY zYqw&;>kwE4cHzarF*=C?k83bzTI2oqBLZEzv@CP;n6-^_ouiG57?|nlEAN0Z<5-dz z_89{nq*;~)tv2AnNZr8HhkftznS()i<{HOw$k^MrR{!@ufPP0ol1*Vliu{Fy?A{_rz9@&EvTHd{hWGQUK@aXUEGDmBl4L~{wLK6a&wW!LDzu%lUt9<&mknOY_;XX zAA3&z-TU4EGGJf`^vmJcbQlIHN9>& zD-WHn!YC$;tc=}=5W_ZVD_VKFfD=N$^Si%W3Jn}B;c;?UN{4E0l{=;nTa)kTfP0p8HojS?`X@*gqkE4UG*|bb3#qMr^-`jy|`1SYX<(~T|B|k>Sqp7%v zJYB$=F%{1IyB@X^GbavMhOFJ2_|Bug;`n;AosysZ^^a+?Lk97!-+mva?L7%fq#;v) z6mL2_B7b;%6V;21;vfVnmBY6{Rb9M*L;#ve_SVolFW~2oK{1XxkgNeW-+jv=Em@jV z-a?s>TA~vgpcDQ*JmxPvkdinzK$giC(;4uB`{yR5acN2VI3@J0xc`S?V7zW0Ue*KU zH43rFum0LE%K!6k|GjLiugP6E9F}1HiwKA2{1v3ivWyA0%V)}Hh#FD`X>$z<>t<4M z9+UO7PQs1q>>&HH_p&tkv%@jeEF!RC#;lvCVId!p5j2jCf|DE>yAH;kmgk;3qtk&K z$P*yO(}}bcJ=oT3(AS*g07tl(ENY9BJn4uh8NrBlaLT|My5Trd*N$+C6c~E|{RRxJ z+^tEnVaqrMGmV1&NW%jhn1K2hq~O}lX=GcTEaD80DpbHt)S7woIgXM;h;C0>@`mqU zKrc!Yi`my>bV-%4{%q+8J4bsx_5`PU0#rVDR;6vaXBr4j^!&vSAD81VomZT7+if?< zLm&H)+z1Zc~hrN>Z6IP!$ym5BlSRXmkoMRe9q1`qtM+pd>q zUOp-7sK>trweRchNXUuKjyzk7%9lZ%1-U8td-vWezx0d0EVmuIP41dQ$o%SYB-dDX zcx(i6G*qFH3GinVGJid04xzk-zH-*ylMtGuGi=pmTdFw-$+v=V-Zzv*shDX%!}X;h zl$e>tEX#=@jSTe4B~I!^DU#D|3#A)@AED^pHfkxH2WlU;)plsj>qJlgA3 zkbUvQdyWR_>F^)S9jA}aU3?K|{UzW00I2}67mXQu4PKfUEzc{>uS|M*NDg44K$Q#fn+ z%ddVFOh7awfK91)2D18qhfu;mZ#g)oGrzkKNJPTQiI&FnQxAYv@vP;UBhnPJYOR~K z@QA59^ZY=lh`!~Ho8`ej{rYQDD=KtWCS<%i+vwi+4vH_xreo!8zW4H)=u z{Q3tay8K1J7Q8N^l%L4U4n|3oJ8^A%?{^y-o=F=~+)ECZUNxDvG_GSBefv0V`oO@J&9+m2RG7J5_Y4Qquqc6DPhFD|$ zlqVlyB7ocKYso4}3}%t!Mx!+rxPyeHN4?(woq0VDSjR~K5z+$q8fOgx@OBZp>nMpq zSOw!Fht@>a6}?O+^gx&JAnODaCe*_9Fr0}^R@!2zy(FgXQmC}S-_7(a#|#$d&?L{4 z@gkPNN)8t5eLr{<9yFm78hTyM?B0;?dDnNy`#<<$dGz$U{KU$L{NmdW$|I+a3urS8 z&5WqP!geB;4~Yyy?D-H%Z?{9k$0I1NfgVsS(ok3I|U>(Hp4X9=R&WC?h{_rEeA>E~?<(+LzKV!CJ!wZw+07zD{GreN{VdkrQ%boFR6 zOUK;qa7rw^VKU7z!hN&>u%X_Z4$t$JA!&fX0a(&?wE>DdWd&0O>>-k#AX{rYIGhJk zbYc+p4}rQM#v+EPg9D2}zCM(Th6me3m3-ACg>9NNL_4M-lx?IG0Pyrs9Sy9Va1qlR z%&W0jdP6@o4=G~UMyq51^0kZOG=^{eHu=7P@HY9KU-=Dr^68S?`<9aY$~$M}2Y>%8 zvl|YtHzlyZ4QD*EXFDa2LCg2R^UF9PG$x1UCpd3TF>0XnRxiwyjpt@{MaPf1uDKVT zdh3KUugQbP!&6%=J!JguYp3Msul+mu=pR2M|KgzsWey_QTQLbE&j}9r-Dhze#W7H0 z7UoYzu*o@qX+Y&jenwtK^Zq)z{4yzX6fX(pJStf{!|xng5!h}zfFQQK%NoBq8pD+C zeCH@(5jcC2_Qq@G(0S-1^ym_9OxbI%y`p{1 zo~`^7Cqb=)%;e;Ou`x@F;R{GWc!DRXo4issfu^g(4*mdBu)Mx{zys)sm_QbN7$>3I z0OWm+#O3G@WP&`Qo?|-fII>4H2l*Q-+H|jBS@}u(vf5ca6usoY7$@gGYeuRK?|oym z>LqwUb_1(`Q+z5Ex-GfuSykOdx;0G7f0m=D9Bxl z1LiUL3(Al_luSW#41-XYwA!J=N$_5AJy#GF7#LsAgQyiMr(SEIYA0RKz)(xt%MIMf zNx1ZsE9j;)(Eu_yV97iPd@B;wF?;NoG?V989B?>}NDrEXdol;5%WEKv&7mW#hl!&L zGgET&fxC5R5BVn^?o$Hgk%W83F?|YnS@)%zW@{*fNUH6NIc78oAH?KHRH=dhqu_e2 zDv}mU4TV$rZFt2tFxY@(d5`sD*9fbfh{-@n_i)NXb5Dbv8zr>T6h}F~-Bwzr%B&#hgb- znOWc%?_najt)G^jU)a}raJ9883rGy!`vc!Eo8NvvbdH$j@b%~Aj_VG~>p(VlDlZrs zg}h#B1ij%YIki;P8QpqrGzX1>PwnW*v7yoVhEwId$MA?ulh6q3?2xjd-N6U7!z0~1 zJm)CZaL}>z%)%NXo=U>7_T8SV#fTD`vkE-7#pj%FJ@y37|21e87>5Y50WjQ!jQ=JK zm*kv1-XS~qbeTCn(QPU4)qZEsQ^9H(M_M>mC=&I|prJlORj&uK6iOE=tOuR0QU#o8 z?RsZ1&KD{l7~!|fEMSbW=|1Do?trI`((|#p0x6Z7n#DUq1p+OcXupUtM(Z+x>?mHe zYzkg`Mi|RJY^tY&y|;UNo1W>O zeK458LXhAp?y)0^G98naVyBXnE2VOr{75P(S6P*$lJZuia(R)QIHV=oMM;)KF(E~X z1V~F1NRS{15Fml!U>(c=v-C34d*AN9`*P07^E~f&?+h8*6@r`*tzf9u0E3>}_nz~f z_j{LT`69}QS@$vQzfYgdxO*PVdZ8ugL1H@ayN^BR?tRM#+_j4c`G?1o^p$Q*7?j(q7K}3|Py+n?J#+3q zdGi8L>rn05Tf{gF!GPEAqwWpI4+6K?0wM}a0U&v7sS}tdUo!BhHvaX1?is7INTv45 zBfO8=b#0Bv8E{l^%+O8f6d+uA z{JqF3z!E<7Raass$_yn`0U5sKlwl3 z>HhJre8N5U-M0JBuXo&Ajsh+}mX%uTekbqVd;C848DyqrYuEk8-}?oJati(=yLf<# zl2=h6rGo)>a8p4k^j$LHXPCi3*$MoU8J7US+FskRMT}-CUM<2?Q8{v1$z@CJV0FU4}p1?IkBZ!Bgg_?Z3 ziZL66>AM|on~Q8*1$dT?3OOuqdGM^efx&qT4NDp7UvlAslwEDVC0rs6i?Yp(rYBvD zh^UfA6!>iqL~8Sq98aZxDs$z?8iUP+#2K^PK@+u2A2&1@AXF8LCDm%pc1uIgJerU` z7v~5#st%;BP$EVhdKCk%Uc*zmFgK?TY>#rdc=8I!wqIM@(stzDF?tOHjvi6o7y?Vr zd;vTa*tkCZge#zzd9@nA3!^)Nfr?NW_Bb^FV$vA)E zIy__Y?#!Ex$igh`QPH6d*j_Aul`E(n2{WT=#Pn=MQXwQkow?_fhUw%It;0TzY|APZ z6E$$dw;=}lD(rG8DMA=r5wpWNxEydJ!v}{0e`=oBstt7Mz&ZAr5h2^0y#sSZre#c^ zG^pMMyK5F%>L7rW9UL)p;G0y?ko2*JYrsQgt5|{l3K|7GAuZHHP40=Zfr6NHN8a0g z04upbr?JgG00S+~(_ovMN0w?rXbAnYE2CJZK>0&UH(V8ZEboMZf0P6=+RoBr_JxPt z6z)Pk#0L59hI7cv_zxnKSWP~WS^-Qwa7 z2<|7KsxSq@`-FS*sTp7e@fiU|=(jn{&uGs&6fsO=PpHzmVz2@5KgS29>SK;-{CW?s zkw@JdVh-EDp4yt(&|ZSXFa{$Y@R-11VlVN2IY1VUQ1sfY_Q2nIe#IR*dpA@s0L6k3 zXd6dno5n#n0jk)v)G*MmgFIgWe(!GM?56?IlCiU$ml~g%M&A*t!nZZtS|Ms5dro9O7hfODM9*YHLAl zU<=L5!~|jZs1c$6(gbmBmcUIAqrR}T1Yw~y_p{JrnJbu(5HrpM`NOl^wN+c- zYpy^IjOL1@mdd3l=LgTRG@%2J;O;?Q`7I~2?%`i~w;=K(Beb;lY7Intch-UB<585? zQEA1eX9*7W%&Z-JR`ja|kHWFlnWe+nb7!c7m{H9}MqYy|Y6D|&m--`~opd5-9UCon z|NN&eK6iwb>17CSZnv;G!LU0Qqq#x(!YM@&xBzLBV{GaO@in&LWytrfIR@RZ=$nlb zf=;uyJrEDgOaoMEN?>~=?%;>+K(CK7zk7g+?{%)?g63QWo!fYUz8qV^=@sxvj=&!! z;@%nc%VE@AA!IwcNtyT%_qnfq2fW}qE@GrD0FAv#-3$PP2+_gqAzC*f9?p_)7f;^x zc-~hsjpLySklomf^3=QSf!JtLR@fjvd%ITmZ6WoK7QyP9nnj_UxK}Q{gd+f* z))a#jKFG9rMR3vcqk}>?hX6V@iv@h9XA1P#5-h-{UfsX~Cv*u>`L25SAa^`_KJVb7>O^%M{%@4(jw!ONWke}bmnN>-HJ*DNow zAmHAZ0h$@0R*e=axD`$6gyv4fWf@*7?Xz>1X(JziX*fW=4n;W!IyX`Y^P1Ssmxu*1 z`@8@Ufx{dyb6e$8G6RwCjXzuSc<1My{#Xv2d0+S0(4i?jztnWEu0a0~pbpMwL-2p{ z=-@MGV)*kZr_uy7@*t)TeUvNQjW4ZixE+8hZa_|iB&&(?6x1BH!N%KD{ke2)Rpk=x z-XxVwf*f5|@zYn=HrrgnK8vr!dm=}-s6*Jy z&!vN7*zdm6n;R4RC*!yTCWfe4UVxJ2WdKbn_eMqk70?Ubao-ttH{f5jo~=&BG~oZ3 zJwuaVA$Bm;S6|OSpCC3o%p2J4KlC-2C8glFBsCqKT{LQ&t1y!U;h%7S>$+j^b7>Vx zq@y6_%&>;!&>*FN0s^_JwplBCt0LI5>!pBJ7}|n?V=g*nv9n%94f#y?0ubWIfK>#v z4D?ab2AD}%_tK3lN&9z#D$v(Dj)z*CAnB0~}0MTOE7fkiWHklN57fS`|U zNCd^JQb0{^3~>?6`D_`$h_VFGyR>A3BuEJ4&2BX5KJoIldv5y$=t-Y-GZRD-cXV+H zo)GmjHFy@Un}|=5SN8Id{?JgO9`>KPMT&SR>E(tq^Wh(*eqA?+(^M0H5;FT|zj@L9 zmw)$@!citM*P^@bKYIJSAO`UFQSi0Ahh91acL$+uk1P{*B{|n;*Nlv}-y3(o`meu@ zQv~{w=smaxF5u`Tla5Yc-3B$Up+}Urz+e+W+OGv>Xo8=SIj?eMN52)m=OSNBs<+|L z&5QeUE*ZFYe(9yl`fm{u#w4VlH}EjEamxCE{wGoKhRd)6T z+46o9Ad96hU3UM&2hX^-!H0xC$dnc_DZQT8&GDI%KSaEHBjg)W)I-j=78`2HdFf)W zo*#Jih(S~a-tWbw#*i!EhVNoL@;`s#^ID6IP?S{hoOfUU?)Tj9Kk}se8$bIlfJjT4@FjwiGQ zo5U1@3bKV742CM9J-{xw6V6kq3?N4eG`;SFXHjvR%cuzfP*`{y9E>owAs>Pu)+T_i zbn)C=-o&(i-@WI<4}i{?*98u9)ZK<)ICv4?IKPBIDk6yULfn*5^e&>dA*_hfxwKl? z4Zw9CsY~>S#Ww?#S)hu|0J+g+sFqgi45~=MGm7S=ge*D(5)qH^k3YBRK3uQ3kDM5H zV_8b!HGCRN1d}pv=GZp`S<8Zv-*kk2E|v^NKJhRJhZ%7oJD1)vs&Qu6n1?RhuYBSW zcXfFgZw)uDZ9vo#I@de~+kf!Y$K5Y}@P6q4ac3)3xoqz-`ht@XM@t6#$B~MG^w%z6 z<`<(T$F=W?&}7OB^tGV_z0P;>P`DpXy_md{;5}&!3>2bkC~?A}G#ipEmJB6aYdWu% zMk6V85K+~XEOMaf2wfeBIo#UVb}zm7s$6MFAfp->w^-UDdNS=D7--|^qyhrgOp_T9 zuyNDI0XbTS6VcH(0S<+yYX`Dt9ncaxfHWNfL?}+Nw>^E>9XUGgreOXv0___HGbMX3 zL-+6Ht2MU>Ex?I##hpBL9CI!JJHt75asm3xjV*QGP1GUtM`oecHLkT&4>~T?70jXg z9Y=#RIWaB8um;ypG0Eo#v|^0?$E*WEashL??aNK~UMPOuGfCs`j=Y%Dz?5qRxD`kv zwtgcFhW;t+s8gQ>EineSS}pt_M#<)v+`;1})$vfZfB^q5-u?ls!Di9KmE2$a*j9kGU~-zl>x>d{)5Gh9kPBg>*d!fbFxM|TPcU#mlxQL8JPs5dD&y#>-e z{rp02Z^jyP4MYCNAA1&cVoCa#Mxqz+(@pi}&B6sx2099KW&9FI!% zpj6=z3z-by4R5dm6QfJt}(+J2P^uxn$)5B5X>-GQA#3rENJbe`AY+-!!DlB(5aHJQCl(eHDW!oK`Mwi^BAk+wy zUk{-x1QG>LIr~kT4&^}JfBEv7`_#)XxsTj?$UTUaR5=Fk7iUpd+ZJy<78`An7!86y zO+GmG^23>1I%J_d@!%tZRMmKa2)KjscES712Fo%^Uu4x?jqh0^Sntk zGb=S6H#zWuM+>s^7Mz}n2~72bF(ninA6q~#P!Y3^(Dp6xaYu9Xhwo@lo#JWV$M7`* zC4twg)h&t$J^^HK9!E1#BQrCR_M;^f+}RAR(jZiXQA37m`SgUreFyN^jiavV&K-6a z@g(1P?nQU+NY|Z#GDU>U*h|`iatSO-aBULatPS0Ooi{jqqTzgSfNZhiF1`6@g6gB) zXzaMjW2t-V`!mo0Y5?ef>(V!vST80ICel&LzeA^cTIfc2-}U@4_wqg-Kqx*mHa9df zyN<4S549Sdwnht7`$7@+o0wyf_mrUpzv@b%?&P)}#H$!WA3cS5?j;tGJd_fc)vTN$mG z$~1qOuo~vxdyeA`62ySPbqQGzoRhgjWe5wQu%(kdjSoq>C(?!hSdz8rK!EvIou^PV zYHU15ZNw5JccK1(#-t3>Yod|6JLn$Cj~>HOytIYyo7QHa)7eJGgMlMPAvDaUBEclM z!ITG%@?+Y8uVV&A^7k0NZ#u`lc;K!9N%Z6^`|dPmnD0Htf%t?g0&p7SQZWz(rO(=& zFc^$&{DGhP`C$;;QY(4}A&dS%Ux~1p4A2sO-kGySQ6`d>sh_b&qJ1vcmEy1P?{IQ3 zal~D!Pq?Qq(8i38T+7(a111MJTOo^Ug!;0ZX$cB9UcmSS+?*CpA8H8ou>nqy!N>W1pKM6O}MQLSm$ z+;8838gYyEwlJ+X3ZR0K>I#!L)bNVFhfb|I&N$>L&5i)ieWvOcv`m5edROG zqk|(O8AUlIkR~E=r;3F;j;ZRF7@&V; zHFfvmJs$!1w}g7~09b}2T+5=nBwr-a$rgBIj90yIe#Db_L3d{;oKOM-JwdPN1g;D# zLm$q>@q30YQ^D)fj?^#84nfL!iOx|h}_+zZfTWQjn#vnJ>PB`J&{RB#M;@t}8s z`<%dgEdbCuF+Qa(m$SYIJnq_x8Mn-aYUhEZez zii`Hp39<_uha&12&_Nl1Eg}FO=7Bn&I64ZM#3qivhI{HI>hP4@16Ya8(Oa;)r&(Go z0i}$NzyaLL8WjJ#u$6tOV3_`!ZC~WcM_?)Og}A9b4CT9tA&=PfRdEBa?!$&-*IWT+ zp%YZ!r{V=fs&*mkf!C7mW#hH1VcY;nzo2w*4nq^xG z0@Iagx4W_BGVnIxTq?ydxd~H1VGW{01ob=sr8`jOPcigt)Ugpjrf8$4X+s&T(*r*k z9qhs!KoC_Ro!h1(&AO$C%*MKnuW^9>!?^Kln{}Z=7V$vv;vE4Yy$Cc6)u<>;NqaV- zh-nOoBfbT9q_hy~&x(lB_U;BCUW+b0JSHB>D7sb}oj0Wv*O4&jcnOa0b2x}IjmV@ja`5knhHV&1&`%CR1G4$&kpGpiDfx~C?c;XByDVD@xae1gLwE^yat3n zhyw*_==H`EnPS4Yb9P*1*8YCeP~V99=KdWJ>YPRmRfjwr?G>u+ZD?N43Vl&RW|~0V zw!Mi(I_66a{I_hsBe)SaAR|ESa4*S$bpw(ZR8BZ>cusniyg%buMrX6*u3RY_4L}HC z=*yfvhR(MrNIkvxCa0PZ)_g%~4;5@nCd+hH0<#X=6;e>?AxDRT8ynXVS&;;UsQp3> zZo;oRD8O4_AJR^vRLIJ|nB=V-%7X^xV|9Gr*g-(npuZiHr;HAA7ytal=c?|Z7XX=u zcH?oZ9Y6N=gYHeI%6d?8T3H(b$tVG#>C_}fFO8Exx{u_6>>?XiaeS_kqcehu15Stv zXcqzIqAeJA=Q)&y3=2g!PvL#gPVDI992kUVYvh9Q74&DW!N_R8 zLoftDAmj`oz`EV8*SAU4O|KCNj-ceY#b}>+4Kx&CJih=dufsImLC1#i!GYNsZBOdd^25!f z*!e*)1uHn(w|7>+Cq6FEkX5Mqj}-3#_;VR!pEY;<*eOsG@H3EwGAWVaCY455JAgIF zD%ilZJ36|_mEn4^gc>r7n^Ho?Dsg~~WBgTM?mF1StiiWseTTjybKn=xx~JE-UGJGS z@HET{f{5}Qku%yyr>2AG47IFM9}nP{pTFu}!*2J!pSjPiR563Q_=@{W@3||-Rs32PtHG`RvDzF58(8QBC0IoIdcy`12 zY2X_i#@-cdSr!%mFu}DD=Yi$DtjnL#Sjjy}u>4ICp0C>Mg!0IUW z?5P5z-c7ub<9*REX?rtsv+;}BG}nmvz`V;m#51|VXpu~A#EudfUEu(`2oK;mFP+zq`Au#J3F zQU;t~!ZPE=x)d?OXv*f0#XF!F8<9KQNrVI;W{m+=!$qWeRtq<^QES7n=DNlKlk+qB z9>f!BiiVDgSRjL}y4nuDe;18ELtiS`koQ-ymf_*@r9 zC0ASM#LzszT?wDBJdM&}{R(Q?t~ya>(WNV!Zu!cZdk)<+l~_OWu2b&qFqb@n0VQir z0xOsqSSM0jJB!zEuseqeLlY0k^_5*Ap%VnoS020Ko+;gM|1~@So4{%AbNm+JfuVv% z+BHvVWYJl0Qpm*UBZE~CR2`s@9)I?RyS8D7vNaCwOXF?G=(Im$vq#wf#@e1gveN;ZW;i!Z)ipaIZYC>} z(qClFE(6Q{9YEjESzgaOAAi(OCED9!z_3S-!#4D@k@Bnf(D&YV3N~W%I0CA2DO$j> zOIpA_bP>6MKLm3_Jk)Mw2>^yJNH^FXbU4`UnohH=rcy22sa!CIK<9dqwp;If=bQ1= zHZ&fp*P9y6G*KV6r5x+zj3j-gBo$6>8f!)>QgFt#2iQ`l(e*zgH0LDmk6Z!Zvov)8 z-YtMPLEGnh7gog+?gw;CsF}BD!JMR8s8=6*W*J|X#r1ycnZxeq-+t1)=e{HEz?c)I zHqxjkHEl>7>H8qL|K6uxzzs$%id7rknvQ{f@QWY)kHv=}%BBebK~|#{)Zql;A|u!8 zR(nx;g(Ln;@N)UyWzbsz@W^7lT0>$ep^3^M6YpL_5LA%I8AOMlTyt{z3yWiOPyns2A*tYgF8T; z>c__P=lg3l>D|T-x}`VBV-6!NXr~;Kd0>673Ngv67`u$QIn4N`Ca2s|y6QHuRWKX@ z`759rBpI!Ydc9O?0^~kSj*ZCgjd(ZeCUQVcn>A8Xr)Liec)N=IG=aG+3CN+=q@PF; zTu>JC1asyvoNhr6CWAqFljJPgiY4Y((nQAP1uvm1-$Fh10_X~_z$Rk}BIi`&+Q(e8 z2(a%c_Pqg6Mk;;-!wT}~qZ0r*!21}HeEpg0_*#J>dcpnD&z*Mv=kegx8C-iWBS>fnUf2#|g!=|Mj1J$sId14$F`V8mrX&YmU!JGm=UbVaG|Eu?ZWC zCW7n2(w@5xHHbD`x4;UqchD>$ zH~_C9<4WBj>8oa@Flh_dq>a~15|dexAV3gmRhka=$f>E^c2J|P->3-yAFeNRGp}g5_>`rN|nId;~Ib1TeHTAvKo;(H{f_r z|Bp6mw{B{?QYzoKn$*FD(*WwQKCWUG*&{nO9 zRgjHJ@~_VDXiND1dfK9_V*#)VxZ3lDb$1s`CQrh!@dS?ZF;GM6K-1J^3eGJIM3gqF z2*houuEEg(f|2w?*@al>4xnNi}_%WOyMU)2X>fq&{ zjjTyay1hEM%s7^txDVu<@ETJPD!tX}*W)a$YYsf-FjZ!4cIgz>lvNsWsGV+lXT11W zk2R>Dg3Neu?gX;TF0u|L>RF(EVfHfyUB4navl;LjD%kyY5-NM`>4S`8czyK55fs{6 zV40zILl7ODVuLavYT_0+F8RV;;tCU9vI`U*iA*hw;_4h!cR55)Q#CZq0F*!J z_KaP|?MjB|m&j1k9M`bur-0Jr0n}|MD87EN3hwecyi+iw2I0K`0V3|MZ8n_p42`~=PI+NDha)#;0;&geyh;S>&1;5s zZS%T&{8hl>F|ZB+|1RcC6FkL`omRgE{5@(;_j`52CZel301!v=!`N?9@#${DWeu_su`%Eo_^wG%m%0Cuv>1amXcOAWs8wgC=FKuuP2x78yHoB zd2nCAKW!ree)(G$+&7=O;NE=SX?OCjW0GdB(vT5a+KQwxxbdMGc->Ai!xfex7j@seSd&rhn5{?o^wcfa-Ua~LXP7(PFZ`6YS7Z4vq; zbrM>wiat{T&Sr+d1R~1Gr<#FL_=o@Mo7`&`a6E!XED$Q?>gapot$sN}DJKehOiMnEIm(uy@~$)J{)Fn>rtKF0?WJ;HDaz{f|#Rt^A&i-(PlM^bj~fs z_}B!B;jCJE?jLzk_!RLpqNM_5dh^Jr%PWg2p2=O#1$$Ci$glyT8ZFm;o}eAb*CU4u zwr%Sr1jYye4lNwPbl>bsbs{748`hKzM8evuyG;cZ1)d03YvAku_@@uMFMRzqm%|LP zQh_yW1Xly7d46$O`wVR$P5co2+kXkT7+`C$)Jq-$J7=EJ;9 z!A2l$k)pZ?@-rBsADf@i$ckzVbu>Dxe>wZjWNee#do^Ve$VdJo}(gNK_VSQM!3E;m3u1){PlHx{Au z_(HRv;O{&_c^@*^qVO`;Yl-UG7n%0@Ktsdbn=4QZnl!@ zApyTp9)gtl>)|0}Q^)JmZFdz=XU?9+PMEZWDOj83#YdJPK5>!UYvZA+K^=nYRc23~ zHoT`tkv;j~tt_t!QYTkZ!o=`CmhopM5ANS<`U5BU?G8i%lyRfm7=<_*$aE5O7DbSh zC#gPF*3P-tH^V{h9yzHmLjEm>uDb0DVg4EQR>E*so^H%I2M^6*TQaV7Q{b_1R^a2f z!e}C!%W2!P1u{4v0uHkBtZC%U$JgyB+u2Gnbl-gJ8Bh^m2m~p*{hf6KE^*Y5()KJT zQc#!f^4NisQ(YQMlx>N#lMuWg+zZzn8jCOV*h7wDT4>lPN>Arc9!$BYsG62=tY@L_ zx&l59c`;N!7zctqLk6ASe#tzC0`+>}jQN*%&_L)%LsV{M14qIV0lKsXNxZxciT`~p z3%ET>;55J$7Bk`wYUL@6qzHUizPhNDD7$W6Z_1}|$WEZc_7+sk5Jb&>SGD2P^rZOA zY`nN{Hl$C8Ro|v&wYFgBo0uqZ-2K#R^rRjlb~6Zr@DBK_)Bz;z^a{csHZjYh5&%sS z`DTdF^-e zUQMzVl=)>N!3z>m=qWKo2{RUV#td%lvU?N;&BDLMc?~M}p{Bx79JfBS(bdPKntC2!8nF zcV1DAS0oHeP6>UHzF0~SH<>R`uFnF}nlNT4ybj4}sm(?CKYl(r0MKhtb)4~OVjqk> zeD-PC$Tov_ppuNauV7mT+UEV{#iXTCF7r0cZ&;bGDgsX*%S_^y51K19Kjc%&6zA zuQE9eR$5s{BU2;ic~pqv)Sj3*US!rl8B!VX)1*F?2I_2COn1RO*~B=4Gs7wJO^QAn zYFM1nZkjt#>hMwKBGjnDYBttid~F^ZM3wCCZxb$xq4KUf|NP6Ml7@KVj~xcB01e9v zFE05lK_tIGrE)cFWUM-p!+dtwb#R-%^~5*5+rIeJ*WCl}`-ralPL24?agBG{b@E)YX7P(J9;rHQHC+s& z>7mW*pU)KpBO^4AT|Q}}ON(ooF>jVL}q1nBqVEmyyCw8jcGva3A68%Fi4R_QT z(oj38fEok8DPmd0EvYBTF?pto=*aOO-yzYg($rE>RZ8xFzRU)hoLAZf!3q?5DI2KW~ zmM|XTd!-i6I9}`6(RlvZHR=3AiC%f+-<4BeS4`MD8DvRI#6(0dE z2qs#Eph0yT_<-whR%b9!X)4*POCceIZC0CpBY_`5a95fd*@(J(JE+sRec|ysGd-&v zr|2Hyc-S(4br?T%;$^R$c)F>cO4gdpfIT%RX2Q+k?L|Pe7LK3tTY-!=4&+utbr;oO z3vz0sK#^CmmZW`dPMAktmd_ESou#LjLz2DcEgS+CMyhaK( z{3REMwqt3|=B5a8I;&cXllc8?U<$RK$Yf%ob~6JH)3@%lr@&Bi=8d>{jakE5Z5as& z+((TZq2VJ!K14UXzWjnacF+4YcWw1aP-{y>vxapZtwq>Xv(X%dV%jud{&Uc~+ynux z1q2l{C|Qn#ig9VM4H6bh3!=hn`&*W+^}u+(i%V~cPU-zwW*;fs0in(7e1pAu?SniM__vz~J=uV55ZaaS*2lj;P6rw zpsm$Xt@Ic}R3;ce&+GzPeb#Dp)LjPZV^*<+#?rsY*TCc+uwN&*TM?z8a4&hO&0Ne1>MZdnB;pCuFyiF$+N;5 z@`4q|tg_|>C#R*l1(;irE4rREcgm9#d}=G(b7jfeH58sN6>d^TtX6V8c~QqG@axE$ zxm?MQIQq7cP_5hd-KFiY12s1{1>c!9Ne>_hfjtcaIi~@4PqlICyJezyC{fblnyxaU zm8u>zyx1t%em54+ySZcULj4E6_jJYlRKma`f55##aI)E>fD$JTZ1{4bdK45;tJk;G z7|wtzE@cRe>3A9y)m2aEfos$|g4zvKa&09T$R@YC*NSg@AcBkBEte7bsEev~_$~7o z#!8GM8y+t?9J^iM{kSF2hd?7ThKsX{{pSRVVsd*4_v+$U-=p3OZfd*7rUOowWKpFC zJW>rt(V%`;m^%hzXNCqt9e;zJMnHMA=&LK+?)(c&$V6sFLmEQd>1pfJLMPa0SM}az zAeGGDOQlGelnqP53=FU@hsD*6eVO)Tv;2Gndxqky6an(hK@5}+RYLdo)MSr~V|L`S z?g|lTquAY2L4n}Xw3}$Y#$&aY^flBT18$QFXbc!i`?07O_qy9P#IuMIbk!oE2{^$W z-e`Qrf)nSPD3?giPfm3&2k)Z3^Q4kM&(9zUv0DR}m=6H6 z9lL!=Jh!@P!U_`G3{|e|LcOg5MrBDBYJqU2`#}4&>Yx(7Z9d67eA=?8EeOYFrl>;|mE`YGQ}CFgXEf`u z7#(qsmSAv>=jw}rR-QSa3qF_whJKsCn>&UL1<0Xp?X^WcOsemsIf#s!%c|~-rF<7D zIK!?TjikzIzl%DW*Pv7igzX~-hB(1?JC)M{uQ8=e_#SD^n+If$xSvX zu^4iM$cGx%XKiQAaS^)w8esTYy!I%D(NvrDYKT^|^3E}LCC*5gBf3jKwkYh zj%;G-^zyX#?b+tZb5jVGkS!gq5oeEOfJ-V+lHf7REf?vh+jA1|bLaU7Q#z%ga?o%r|aBAZ~8nt84$-YggA} z?TYcpCUlwaNSL!P=tx&}(m3XWBuAZs_b??v%DBjKXW~?zC==F8_&Y}-di2hB9zo-R zU_(I8;pm;4#6UD7_hB_FyqL7%ot~{Doy{X?ce0s^gyz4}-tCi@ysMi$0F0K8E*w z%uiEd#!^$v8UUdCMhlyp319?{z$KO4Jr`?`$_senEndC4 z!Pj{C-p%wUel&mXbDz`i&%bnWaF@Xookk>R0bbur z&7g*LCY53*fr4%~n2q;AD#9otXSzGW5qqO?W;r5ouA`>R<|=k{BWij+!?F3{D2G1Z zk)P|?daWZ9Bb?(H93!+d4HE$sO%#f@^M~Z5rEcE`76BUkto+J`c?mGFb}V7zk$UNb z;fic%WMN0SI@N9<(6EbBpGb{f!07_7^$Y+aF-sz-J9N+u*Rkj4W`x?-5tPAP)X)jU zfjy7?}^ixdtr2v?R@logL0KB_q+gI>!ZX^P{a-`ue| zD(hlg?-E4x#~=()0t#t#v=r8nZC`%nr4=7E?sf#CqWg(&KDV;Fvt27sjE_~fMp870 zf!JH2P4aVDc6AVN-``bg&kmeIQ{%ysxmL*Au|>twGAzw#G9JP$iF3XVObt_c_R-lL z;}C#b*@Q%qBrJvVAaS36HVLHhZ++(5*s;#KlV|S-tg9xuIF^wzI5#(-bYgxG4x8W%B<(3~W#ja14{hyAM}~ZmTbV z2uWNjDF}tb7-{{+qC0%#guQP^Vpm&MxSU$Bb|eOLm$qoC6>SSf?lkN0CO!60Cw99u zbIR(7Pxvt6b!wQDjN^3?1WOpGU!>y*#OGhUc#W;Z?d+Nd(OrGCGf&t=kB#3-V?zx&dTTZVIKgd)1Tzu``Tidn$`d=-sF z9d;TE3&$|repRv~Qp=|UyC}Jy4$5YPx`(mpW3!W0rsFmtF<=0j33{4n{^t!J36`({ zw5P^VpBh=G$Nh3H>pTAeNFi{qUb^H?ow-Y%#?+qX4Hf2bDB6^IY9<;koB(S8ooaI6 zl_^SNp>cP}rADUZwuUud7d&SwK`^BSyr#T>RR`|9kwHr%9we)ud(SV ze73F+d?&>V?X1xeH|u0uR{gB9XH5|e#PQ&;!Qr2=VIhQ#ycde;Z=!DQ;XUUvspR%v zdF90y@N&C9Doi$f9f8>X<3D}uT(bdv`-w`Jhe88ErFmqmBDp8oNEevdVIM(N#ZI~1 zi52sl(Ul4uH*mpD{%uFAq*$}LzN9@8WIGa%_I7J%j9$fYvZHZ@luHx3!zWs-PgG`r zIlKt6*0ei)bk4o!!MofM*uqYaphjy!AF#gZmR`LCYQwZNVYs*Lw^2tR@acFTdUY#> z0p*i%>_(V@1{ftV^?InM_dYR|)x-~f*{t#X3dqWgiISv{&#ShJapO4t5CzjKaUCM! z96xMxb3+YE+@tSILpPAN72NgGqdLUr+=61)KGt!ZI`9PH@y>r91U&+=XBe_Md+88|N4!w=)oV(E-R!`)GyJ3qVUdgd_oh$ zv9ddOq8qEpee8m{6V^_5 zumBvml~Vk(OJONwLU6G=EdxAA&l-2~&_dZAJvl0hD#t(M$6R{h95P+qgg4W^aD}`s zQN|v!EKZlPaT{iH3q%ojvLjnfBiQq^aKFu_E%m4yt`6Bj^SaP(7kJNPe&L8)ymsw! zqqcp4F%sOQ|NZ0x@fPgQ${+vnqfb{bPb$I$dyE>1>^?hv71k`Gxx?iLVTZ;y&I>{E zk2=w=0cF{+aLFEdXE6?kJH58{$kdn_1!^QCdSj{^NBj(t-pss9D_ic;l^dF))zRQw zUfOXlUs?hbt>Kn8P?$G*I-b}!kAPj6r#lt?U1Jq6*C?380Elrj8IW9)1!3RUg@a{& zI^ah5KQmEu2BDBac)wZve5z=%@yR1gjEz|t!K}&O8H}4i?ey9`k^EzU8Jsz61x}j} znl5f)u)Ifra1uxY*l{o~)ma-u@g(53C`iojkC`<`1IfMx_Bd3^#>$~AE*MbUtMljV z@2$IQuRN~}6dy#Q;YnCy;F1?j9y+0F4CosCv1_%Or~>Sq6OWNJL-9m^#~Prb6jKdPrFq@( z9yyU}yDSkn8l?7w@Cdw_BA=!bQ$nuf5s$1o z>c02F6$vVFL&7J28MMxeQ0iK|0cnw5MrMmdS_c5)a%3?B@>G~5KmsdBboHUnG`(J1 z?}eGN-){NYU3X~MqYjw#0dL$L3esiHQUx|=#k|c(2YAHLI33i7%tS`Snnqp5CWKjr zbuQP6+?_Y^d3RBhF+d}hGmM;AMykGv@;FDX@Zydh2sznP-lZ7%Ss!PLBY4=1FVnyR zp@$tl*^}HLWuU!y?edEXP>!ppzAGbel@J}Fm^d$_i03B6?who|pwtTkaL|+mUU~%M zw<7ApJ|2kWrFBq4+7xI_!I248VNWg#8N|wy+y}vluIuHHY)V zRSu-XJn9$Nnq@Ka`PLIJYCx`RB_s>xbXb>N2PAD9OL_(f)o0nH5SqnblQV|^LdDJ( z!lE2q$al_}#4qdDgvQ-?5CYljCf*gm`=^*WttShmBGDJ|W&9e;kitHa@We+4vrP6Z z{CDnXS?q_NFhzl=J|`K-Ri!Y;dCF zFYHk56JEXV%0UF+!PW|4XKsw*fBRs@3JW`!fA{r#GLCQmEzQBo(|A@P>1 z?}>tE_D&>a9Q!GUEiSlys$xwzfowQc8A~dYv+iq;eC08G)8cRcwqoP92cie6@ZDur ze)ZRW_vxjj#nqE1kH9)*26H5v(v!GdLd`Wj4L%FdA9-X98q|zn5PAfP5M_|mCvYU^ zy{Z6Zhet|d9w-qg069XSWJovZDv&5(ncz+pq1k<9r3!Ve7x8zBTK;E6;0dJ>I9{2R zN*ArWID;d_6XznJPdi#i77@hIa?^25)Q?ay5@ye6e@q9Q6oI0RiOr>av(h(%#-uB2 zvLNl*xJA=uWS2IF#e0$|A?Ty$H!f{v+ODZc2v)|aCI;LLtOmCjJYq8@3~wE2C_4?Y zh}r#0;BnB|r_y^r-|3i?z!uW7Y*4@L^!^$PX0>Y zz!3cG1U73=t&%Ag0gAP!wo0TmaD|BX%00ipxCr3mho{qHCyqroZd_k|=nsGQI|$(G zfBmlq@#~4J*As|}^amc8e-*!N|N3wI=EJiG;Js3sga|;zhR*n4l$%>zS=LN!9F52f z1ly;uBrjwG74Y0~QavG$85x@w-p`ViS5JrdE~yL4m#F*?cw(` zr{>-K!P%5v&!79;rypi4%+D((UKhLh^#)@2+;fY&Nafc*_qj)(d-}W2o_pYdd%|v9 z27qN;5@kH1#j8YdJ%y%b47AD-6v||_@rYu8aYVplz^uNEXk>s2yDM3* zEtC>}phBLa}V}l;V41kaO_g^0Pu~%2Ho)*zW^J0x}zqLgnG~iG%U6 z+W0f>Enzw;(r>VfJ;Ao{r^WN@`aU#4u1o^c>N^@YG$!I%6gb&9q+yL;H zV<43=1AF>=SKQ;@ehFD++*ogcT`Xo-?6pvnHuM_mJ_#G>_Y_#f403eA6{M3$KvkR< zX2&?TpC5SgQz%q;RsaYC#AfB16|fVQMxzrpQ8x?0(Awvb+!n@>-=876C>tun^82Nf z;8}h=(glQQb%td6FuZ9ln+E3pry;!D37n4gAh>C{7Dk5L9-wPjCzC?TK;9Q?Z4mJ zhIr(DkmmCnh{d*%;_0$fD0yvW3z!is|1%l8uyzz1rcoZl+|%-yAqp9DMs{`uWDxoS z6W&AvLt9Ct!-ub*^t6>=ChkDjCT=&>g!H}V2$gQ7oF%o`o@lCqyt@J7CZ~W*2ZoQH zTP%CL!23Hm(*ztKY*LS=;ZaD^f0)UtgC?qlM_ELzI|d4Zh7JL2+$bW?Yrp^&1USjq zdM;x!%BlgoJv$ctNGplMn~6r#1E+c|B6_E5Ovff3zO-ljZWkDXkWC4*br+Ki){qku z%%I4gVX9SMvuXStZcc>b-qf1D~tvICX+iEh{HMnV9_T~ET8(~A3bvZuDecr;cx!ZfAz6voIoOerEpcwC zd|HNvA}_`s00d!VP%EzYx?+z(DHc0V?m2m3`1ErFK;)EEzp(cVDkHkc)J1&jTh0Kh zSJsHZIJSu(UCg?1Y*NNVl5l{_6&8;%YHyo%OgiM3SSHF?P>2E$3cO)U?SY|)^XB1R z7cewhfynD@sJK=eaFsdmrj#yTo0-LIYBMT1xILm7CTmc0EN zZ3#V3XYjD3-{;7iD%TRvXH*2uaj8 zzvWCe@B;4s=gN4zul4Br-gO^_*K_Hi`Qzd5efoF4@Z7n_pF?s9(MUe|<0;?#_<_hf z)WwtabzFpx{+%Wapp;L$lX4b1ZFJYAEJ;`;b>l`8NE9#uVOu=rd&nRqv0rYQ$|_wy0*Dk4f!sWKBMQdbRmbVn6eNbq^}J+T{&CB|BbeX_Td#Th z2gGopG-@5L_{*lHbNKLrggj#piK7Gv=>nWB(#6Xpn)*WXgz#Aj3V{ukJsL;K5Awn@ zD=T)p0!U~t9_wgMyeW7Gqp}WggfXcU1S})d<%;q)48l{#55=cW-xEFj#V8vx9LHZ|4E#9R@W-wZhb~#p zAuY!x95KiLb`qV&i&knK6rR}rJ6Kbw9myPtl!ns%hetc+(I@3_(vUWI-L^1 z&5aD5mFR?&q4ABH!j4vBoI4(zU%)JI)_o7sA%FDcXVDo~{4*GNQc|p0Szq8#2p?fF z-%xhSYZl3ZTmqm}j-dZu7zyG&P*Sjca^J{CUJ)!3(mSx5K1fLe%UIT9nd}e=u6br^ zqaLBKy2o(c=Jb(xiQRANwp=;l32%laYj-lyaod=K4#<=PaRr);NfCcXVXGZ zENjB|zw7?=)QN@kt}}0nzVeknefqaQ_0Ko|#%<~-iavp3D0o%^%Mh(D;U{U|j2 zW^u9R{?>o%GWq zXG4>+Q^OUS9*hyFA~gfd(mBtRW40T^UcI~3_Uu0Uv%nwCY~BW{VS`#&<6EvFo!Qq) z5tjgCls<{~RHklsfiu~BQHUHiVH8JepoAlQtuL9tNWxYF=A@~S1;apRwq$oq#fP`v zeWse}mv3M^?RoH}&XGDt@A$(Cc`A!SpIV&}ls3qYr=S zYfnu~6oL=`+y~DNV#lk2Hd*Y86O4cw88JDOEJhTi(J=*(sHe{CU3tN& z@UIynGYcCAHaD^btEv0t?2)@%;wF_9UE&jBdP|VtzY{8jFB0_ScJJ+G{jyKn3D#!} zL>+m2Uj$%qZYRNlo)9@Q{!Y8TgO4>s# z@5shS;~17QM8;!`Rh~MmKo!LoKc8ibtzb=kmjiKbgWi1qarfZ;C*sqmPlx5Hx#0i$ z{ZBvi+28;5&ma>b2)epY! zo%fzRc_P2MPC2Pjs*(n~fQaok&@^;O-K36ogBroUFi+seM|rxAcEK?^%PNM`q^9n- zLieSwU2vQ{utN>p%?h4J<3OTBVnG=z@THaz26`>cEjfR~2uIS&vS&99MjopYbV6pP zq65LL3dFvRGWr9D`k`N^RYiPoh(PCvg!LQw+p6O<>w|hNScuc`7348Y(iq_+iIf<1W-EUZIa>_k+65z?BNDA z+hFV)cx8mZOm$djGYj>o>d)02>n?dYw-t!i1PpwZAt_g)L+Xt9$Ela!W2q2m1sJ*k zs6X^09v)}(Er~d@qmGUU@uu=6=vdtMnn8)gFSXG?09N5$UEkX`!J;I&1!S9;`3}_* zJR`B+GfitgP^?Lr2?v)vqXj|6n^8voE8|7u(_tB}S!SoD-w({pW9-v4ogM@!DIN#m znsDaCWO~=h>E!Oa?hdDC7J{dq{_gpI_z!;h6B}z+FChr0x<(UaCfxpUo0Hoah~F2C zB>bV~If4%`3(COW7a#iCQ=40BYxm!O_u>2Bbl+GeI}&jJjz%Ia6-I)Lis@KRox}?^ z5qUHdLcJ_~Zk+1U=-#Y$-4jnO0&-RKH_s<2b175@u7KbQjmYZ2#5T3&>$Ha(83TIW zq%Fy{onsgh_ghBG4cVxu88IF2aNvp!`1s$Ez5dV%wCCmcSUPY}&uitGRvOE2x*)+!4?7b=n}g}l zmk*w(#WiFDEWGK;g6d-~8;;CZ+=*io$*B`l>FHCa!b68ngv-lo>!13~PyYTFKL4pd z!Ut+2gHIt7Zu%gs{-lHOb_C+B!N|LQ0hzIar+FR$iM8M>SAOr)fA|!h&Ap??4$s1* zaO}{*g8@laMd$`Y2RbDJWE@fw8H{2&v8iQ|R9-3;WCHoxm8yIC{EF~@+P}u85SDnQ zX_;X}k$0#vXQVFDDjic9Y}zQaTdJJ~zDI4RuHCHW zJ>kl~b{Gx~zEjhuvP|w9D%Fb!OcBlyz;m+VQ z9qvkzK?#e883+mVo42nwUuWw&4#c6Gy=9C@G&ZggUj zz*1-E89eKz{BbzU(?e&Z*m%q$oDU?4gPW_Zz-JU|fHF1&AA%43=^PsL?AF<#d|?z2 z!SLq|00g0zmmB^})~Nz5#6wv(=f5{d2ZEfjf4`;;;)@p^{l=GH+1Xhp>kgWsVFC4J0W)8|2-$ewqyXFxxtIUJ z1>z6Oj;HbUHhj&AehD^s#~glo{`*EwpIVr_=j`d(Qzwp3&&*DjArLfz1wP8KT=>ds z+rj2eH)Xe%q{&dqLkg{AvQZ%wv%f)BQPUEdzRa*b^cxFvTMq|>I|~HQHF3V{WZgx; z!!TQ=&fJ##O&_Shh6=W<8z=`_?_prlbU^ZtLN9)4X;T}HUVQT&r>UourW&Cn-ou1l zv}Huo{|=*}1JCfnvO(c6T0w2xBK!hh55hm#aW{6hHui3;tZXhXEpAq;>ufd}{;#6S z$>$ODIdA$y`-Sh~>(cGcf`1l)c_LZ-f++{oq=LSB%f`&z&Mf$66^QQN@r2Fb>lD6@ z`r|tv+Akgzp1oub`5STdIwCPm#WtZqiV$5?1v2g9j;&_hA}1X9+W7a}qd%8{chuJ=3-xecmEyN_=hEg|6c~;4+~27({OSA9RB*Ly}rSJKo{_h zUq6|~<)`vj^v3;pEC-aY$_d&c{Wu?@zKO)v%lk%J;dmgR&*5m-VA%VPqL#Y2LL1PCG# zA&~?l^8h49IXqcTZ36T~%GxwcmZqxi#d$;4xruh)`N8b#--h-T&Lp zIp4W06aT2*0flI&=QKkc5w?_=i!q(rv2Y(5R;RWf)IRy@58elxIt-sk>3S~G9SU~z6W3O z`4*nl^I3WUk}M5^;vd47eS{)W$X*B+E?)5e*Jk3Ci_Sxdge2z@KuiHbe9iWF#xPJ< z0mlMTab})T`FyVRZ8-eB2n!xem@b18eK=qwf`pLb@tX(7w4H1!yID-7zx07g2CX+NIUkbA$#0dL4B(e9i1tea43cC+Kh8%~~Q^IK5 z9hjDZP)LEOgrGS-49kVY_6dhV>|Y-yzxRi7n9GHsU$YzWOo{;Dput`=3>SrR(mV3g z8B>ZNa_4Qg2!Hav_Y1$#OnmFPx@W2eo7ayDJb2LA;Y1jbLL6f!4`cY*$KVSt)=UlE z=0-58kePW8I>M0%`#pkOKFR(U`998%BEzawkvv_&fp8d2L&Dm@9T4Mjq@y8>O%&lc zg1CG4RJ7e|STa>+Ux{!lz)nMo=a5I2A^COi0 z>))W7CcFsIMF^lrf)bA)n+hY7OTjOc;O6pZ3o>dfLB;jZacr_f zvrAo++D*uD2OArGly*&G&ol?z70_0#@Y+__`QfwA*uQoq{{86%f3vx1rQ>nAty?&A z`Z?HU2hqxTeBk+Kk&m)H0vxq$*hH(2XJMkik+CGS_#jb0Bs8@-|078SZ4P>p0ViXu zBq3K~nfwr|!zOXs8j7nX+T#{tBOLtIEj-=Rkj%(@e@a}QTOx+#Rl=&0b=V(~rnC#C17q@h@_k{t%HyV+F7#puFVUD^~D&TK&M_vLYFv0qw=iK!{#KeOqH=&6J|qL9Tl z`r@PCCb|N5GSdysz;MDxr9&vCyomY^wi+ZhLq=Hku%SuFOiCEOA%*-c1)>?}BGQF3 zTY)m3#?*bgp^W6Q^M-LK$vD<$8c1bgs5G`vh?HOq<+1BP1fAypKr`Xo;ZcRlIsg14 z|0I0klOOl57(}3PJPxeu8ql;pIMQfsav1vxZrPbfsndfZx`?t>OrllDanWb6*=y4% z_e8b;vtEiIGn|AxL=@oQx>giJcjR$Xu82r3hvZcgFe*Npj)?AX9;a6~uzqO`qhVH{ z#H4jBjK=ebkuA^9uR(MP8nF;!sq_H#d|!RzN{B3L5Ted(n}o`R^9m2GV9)+6htY;^ z+fa0!N#Sr3Qd8LwBKZjB#(@hp9ea}uW-5+q-zVZ2C?!LTgO}06C>|O?qvher$IfE8 zrsC|m70yQ+J;%mSv4nnplrx}Vyr?ky0-@R?=Ky>5j1l$XDCcv7%J`VRauAPv?h)aO zU-=RwqDY2pDk>)WohT)Q58W`)h#Fu)AX~vAVh>bl@v0a~_h(Q!+ryc~EePu|EUoKU zS*Mm#GDr}1M@nhD{or2Y*%ljX9UMJ1hne|xthaT<+2Q~2srymhz7wDQ#tHb1269xD zFU^o=aG;qd{k&O*8N`yB9PTS4;JFD%9%JuiW>RB!759i zj%g?t3`j&8G$YVm6?H{Hciq9-s|IdJ;uQfqgB=5xF%<- zhW$ekeCQq1n7OotJX>ex^aj50*pKnx0}_mO3-!8%SI@Pvd!LKx{Y9KR)5F?&7uQ@j zg`LBbtd78Q9^+|^*RMn{_5uTtITx{T6!lIFvLd3GbugavQEQ2~#2^%Yz*;?lP4=+5 z;9wW`h3ns)#mUnK{_*QI?AUuX9{=$XCPBrwzwj<350VS0ZXH`Cv`RR2rjDZ*n%FxY zMv{Xaq2{u?HEgvllt!XxvqD;n?^h*k)%w_6ZNb@-Lna#;$QIuhUL*Tn6NDB7APFd> zLl{jF)8jUx5d}pC6yfV%eO|+*H35HQk~a=zuzMCa zYXWCv#}3?EI*PlNPT=V1?YOGg!cWd;QC~L^A0j~}1a!HQXNhD7Z=9qO4&dHFr$ut4 zd=bRq*VqHE2_opUU>;1<8NlaIX%`AZ3KGyToylVVsLHL(!nK6Zpqi$Uq>xI%BzN37 zoxVHNDl>+a77Q79CIo*)b&waK_K zuAU0P%x3FsG&Rmc50ceFNc3>JmB70vl2Fnm*ajh(!ruzzkZZk+o9?~_|H@76`r0|j zsXjjRPFAbiW%i=fN-2otAqWi{NkZnW_uYpy7BSoNvCyh>XOAJmATovQVB%bJI}Py+)|-Y&Bjv}&Ys^4 zln)JuK2Fb^$4%s#z0*55=l)=-!j6>}%MirYHi>3_$zzZ_w1}c-%gwfQiJq(w_ z@Qn=^8ub)+iXY6UaA|P~Dw*4%vfZL8&g4Y~qhKhR;eOG;;U69+I$8L`J8of?$+kX? ztARoEIzgNaR!dqa9W6v;D4UPO=VDRamnv>ao5|nW5?7a z&Mc{T=I9D{ZG~&6gEYCL5X?U%v`My)vO*92`3*pVhi-^C*-7HqlFWhc;?Q&i3rh+~ z&1B^q4z@!%vISXoxXW`#q0~SB3RU%T6}}q?!Jo3Fu0VD+0yYc`FDvLPK93`rNaE5; z54EO+B6o^7f1ccR0M!%ABte;ImBiV(8a%a!2(3ylWMjh?@zA#_m|`|RcFzbh+@)Kp zfLE$I{89+%@^<8+5o-PUG&d4rHT zHVVh!p}iCo3dT;OhL>k9kele1uo5<*HN&=+LjhyE1NZQCgLsArA`xQiTPC%9r@_{MOK2EtRPsxYJw zdR`8%K0lBAZ~=j%c5<$O=jLoY{R-#9i(>EOIO??~AvS_IrOif#$>ByxtYK#eP$~EI zzBNel8*X-={rD$*fu$SHrKc85KG&rcX8^KIdr){`-D`FINkSpBsMNF6nDepbTn9{&92H> ziqey%d>|49`Lmf-r{6_uX_mye6XkTAs1!x5vW`MNjpVj6=4Y3%v{)aEKspoUCMo?w zF@7NkhhBVO_;xKH7hb-^`wJ=xNqR&qGZRJpzPzmT8Hn2Ndg@KLA*2E`jOf<YIpVA0{iPqk{HLsQyP zHRMJkTwzxshi@Yvm{hByh%vx`>El!kLnAR?=BC$dYTm-aqW`H+ee#!EHcM-bj!363 zst6nrwhTX5ih8*9;5Oul{W>$0h`Ly&rmD!^=UVIh z%9hQ&_df8*_Q?qpGBF_*iTaJYFz{E?$u>^DbQm$oKrt7`;%XaLO(c-#K}>3)9`|EO za@aI9#(q{YlNGZ#s3EpvFhef)cH5$$tkkHMO}@uMeU+_A(p#CmKz=Y-C4=@(8*9tU zSXo*ljwr&O-II9Y@o&!mS~li=4}4lkWwN1u-?BxjRM!qPeGip(gEMBJ#p)cNSwwGh zW1x%j`67H>9bkB{)C3tM{Ugn`QmB(GdR2znMZdX;^;rVJW_xfSqhIeK&GHt9!nkny z2$99$Z7|MBr^9(s(dl(;S(ZZ+V}&z^fAYis{I$Ky9?AYTkXAV9`ItSJfQ1uRE@<#9Ym?+;+R+cG?|R(@j^?Ot;s!_}y|X%W-LIx`||h zOeOMl{!Z21UbpV5YRlDvyD)OZRpJ?ElNjA13KjEZ`9mMPM_!ztdHTmseD|K;+U>5- zeg0uDEcS$K3^@FJ70;chAfLV5Viw(uF8e*uGz!~Jq=(8KhFBjT+_wvcJ;UXx*=W)~ z(g*i2465KrjJ8fX%S|#naM2@V`u+P3`Vqxk`^={woOnxaJpRRp?|ZyZ%%+=7Tk7=e zffwtMh&&R~&y3K4L>TCP;qvX?V5N5%ktkihT%d_OC-|Fy1le|iJa9q+2esec>a47+ z&YhZh=@W1DeeA1$W;guCH`0IZEP*`j22}Ms`HzC%i+@lVA0HRr%-^l9u6qAx{_S6p%7S$|RUnxnfs} z0z%?QDsWO5W5+7P=uzitZIQ0#;QQ{oU)`{w7scX6>uX>8fcQg3^2=ZTvgG&sl~^o> zr=EJs{DV61_~VaDiA2Kn#1l_g)z5do`@??8<%;;cF1XdzQ&>g?j-;UMXw{&?qw(aH z1*>AhHf?6ZtVP>a6bPoqacn@A;19TK-&abN%#VNkqhj@3U-V1>%j*fu&eJMe&o@+Zn@?CyEkke>R(F2=cBE4e!%YmT;7^}$mRf3U&W@6fG}(W zx~LlNf-Q7dW*H6)IEoC@tYCR50o5hM#-aYw=*Zdepa0?)&ph_kzj~p1z3+VIJFffh zzu$ht4(#2#m&QM6fA8sM!k$R?{%vo){ynEhQfet@psY(UvSp|qFMM7F4daK=G&ziV zD-XS-BbTc{s@4coVfcI~Hnu}=2qLqt6;8b$nq%VpiPMPB&O^~O3~lX(TXSQ}=4;LA ziSeIU#nLDD?B0{zw{M^8fd?M2uiAmH6E>e?3V-l}XT#fWdf&?@&ZTxNujCML`z@Ka zsf35@@xzf7w7v8c`bLi+>IMVyFXC5gB$M z052`bFc77piD1|xjvXIWwqLgiH*DW_bk~lZx6+jCV~;&1J^b*);;LBa3T>^v zcYnNy9eTwuqjf%2ku^ou9fTrv@OuS1p5M>tA3>f3)4{z zwj<#4sBq2AATW9s(XMtZ-+dE`O?8O)Z3tC?*Y77m7?_%zG=o0>jw8dv```MOw|rn_ zWu<1z{PP}FFpey8e;~jtWwt-TqF#P!APsHxK?>_a^sZ;-rX64H{aPvSCUMpB%hqAehVtEP$HHYAf`{4i0FOlW<}evUOxP)ddpq!-d(k2 z!-heuDFZup-X^zp-Ql!#DgJvu@u@$3_4r7Kq{yP;Kpy_p3z(cc343u2yM_-VOk+cY zkxodJNQLdKe&~*Z45`$^C>Kou)-j_*#t{nKZa1-BB>)?S>_y(N;VJU>tv;k1ROm?^ zGqVX4Pz19rMrIe}Et|ILD+}@OheKgQFPG(og?aHi9nc~n`Gx1d;jHWJZ_-*??*G{@ zo^76=oe&phV)Cw`Uc~hb2FJ&+F;jve49G0z>2w(zd&xAWinJlIt18H5bSS0+Pe4LL zy^72->xLPsu&@JUqhbZHS?EsLfTH>^ENFHzPj+Hqwgr(+>0;vCoZK1>rq7-@^!&bm z*q76^sGP|xiQieoa;dWV#^WHD&Pb`HJWAOT!odjg{moTKql1_gmJT=FpGjGW_{b>v z5|%R-qM8TsLYaNRLGyJ1`1?K34C4RP3j2gW*M~Nv@rG_J9FJq-r&9<%g3@826!xH{KaBdF%}_&r*d+yhaSeXfQTIIqJbMWJx3|D? z`EcgkJVYV~PkkHQ!7v7U!;HSkhDd#+sx_*Xt<~CfyuK?tAPM=R#v(SWc&!u=U#LK} z9rScX(HCGO^b-6P9c6Y{uaC~Lsb#kLuwnp1H`Qa?P>?5Z12g~@BT9N4+Or*oMAPMaJ)V0fSr_^2_M^SQMv8)89Q9$EKq)l;32qyj(_e zV*`3yL)bFVjrQI)oIjVw{(nAOA?SuH{BM;%3LkV*K3W8Y2dkuA!2eRu^YEg9Qc*wZU{EG*~I-oA{%h`@*6z7=2C`*TE^+wknapTk{u z&%&YfSYWq2f3AcLTO6z#sK@A$6imW%UE2Wbu2i!rm03e4b^@zjDy9stCd0A(DAAej zRu>vP1uUir17i(E2;T-d_oxfRM0heY8JrmNUztzX#z zA65@m$!GlyE^Kcr!j=VE0$#X@>#rXyVS2&Br~19vc`da}QwW`#eV8v~@TtF!V=2y} zZcQUn*NDH{KaT4MTkwvZjn$O$Y8tv5eR!vq#;?*oyyxat>}o6HhsWJ0my6KIeA9C} z9O0m~Ekun}qVX*LU|<#90qM#Pc(IxRHc&LVi-^iujFUF~g5P-Su)a|xW5~Gmj(SAf zG+0U_TrBW8ru;Ma-Glg{6L{+1jv?jlz+F9U@cZjY_+%49VPVSHuxS(aY#yQb8^@OJ zW_ETHqcI(!02x3yHG?;8?!pENzNMT~tA|{E71vcgb!7;leCZ9pmC@1OgPy(+^g@#cj)B4MdJNSocwV{@pI$hJ35)F2)`V-i1K?Z8wg%k}qs|+~ z#s~id;@BBnzfH!=F@crzA_pKhC3qS24eTi{7ha#t*E;+SJH5CV)5}Wd%c#*+8m*WX z7FQVk3!`XoYe;0tI%I|U_%iZk2U}Z0c>jhb7PtpNc39gLMLD&Ew_V$Ur(#>soJ!!2 z-`fSh%Y<&Y;H55dH+P^+h*Txt4cGS)GD%Dr8m`@uhflN7+1-!X`5cZMoyC@|y_lX} zVSVJ775CK-^&ziJ#cAP{UnkMtqJdH!AG>uu4yY!6^jaG6Y#s+<1_m0^*cz?F?Y&V% z8{JT>aeV%xb&#}vj%FU{Wl=NW=$SE`8ash^-+nv1Ri$brap3g|W|At*QW<5-#_Y@j z@CJ@4Pn8?e*gt|eH9SUWm2uPcI|zzZ$tKBba$pr{Wm7_>qTuZ}_cC%z@NfXn zQPZ3l7r6DEofujdgfUh?XLAI%-Mj_k34vE$n?ZeE!$vY#i(f)OlQ`_tnM@X+yR8qD zuNW&>IJ{VgBV#tGP_Sveg0YDTvU!`W(4xpILUD20qt1+-na0S;G0qpO`m9ip)(#W7B!+q9PD+7g07!oW=^s=a#93@ z;>k_aQOCzA6)J2Rzd4=2OQ&a1^pI^7H*S3A01o|f3I|Uwp=VtH$Jl{`4IUgkIf;>J zE(h2c&&-!F(6<2@E(@yja*48JZZ^qlQ~OAC!jX_pbM7!MhE}X01D8-12>O^p6=9~a zslL8uB-Jx|yCMh$y(p47GPykQ>S80B!{h&W7^AEerMLv-Q*e0#*m7ep0<98W9bMtL z=t1{D03NA~L}CtSPaZ{pOhk~f-Y7-3^`nr@upfBP(b2qGw^YOuEBCkSO01y`>Gn43P^AT<)dE2fTqG<+?TOBE9 z7MBr;xLAZbC3%Itx=Mskj4-& zzfx`AC@vS_VppvgIj&jC@Pq@Ff}zLcJJP!96544HTL@0LQi`W8p2+Y%PO^D zy)l}>*xA?6)$CXGiBxo;;TN$VWb+Oixc;*@1jM zFG8VU4Qky45p8IOL<1eC!jo2N zi?nL=eT=eg=v1QQ_~kg}&&QA_>ll>ER>?p|PZYCb$H{o}H3gZbbA@~ksdQQ%=?6^OFX&5gsIcJd+!)3w!_U?Af#WC7agdK=r^qd-llBKKpFx;46nOeDH%GykoGhDKIfH zWs{8D47?*-<`Mf-?B^Y zXmrQE`8QwvboJU*8>+Uv(Hk7nrL?{4UAJBri;aHto_p?m`_TH1RzgTUa&lR!unBp| z9yS@spaOLWBZZ@*6<0i$bZa-N|6)q|^vuwxz z^`##j+_Y)npAH;2aO}U@@J4SjN#FX`xA4$I4~hNz_j@0G^wHkw>FK^`G!ik`eI#}l zVxc+>(rCH1ofiC1?Vz>JQyl}PRU249wc1%Fbn)9egEH$Xm&;^&y1J$w`HQbie&Q3K z)Ok&b*Sx|V!nNPzlR}}8l*{F=`Yz%ddGJ~?uO+Tz{8itjtRCOj*C+S(_6ox=BuSF~ zAO=^vKR4HcJxH3IoOIS=_#1WL%{%pPI`IF^f&T=vw|{p>&w}Ux0000X#zuZTv#G|J8!;#?c`S}>X?{z!F{$S9I$D*6jX!KG%5qqK?9zM<*Ec*`x>!LM&!8R`R z0&P}wZ=>vVaahPS?XC4n<*k)+@m_W?r4Qcj^sQcRTesV{7(2th82-`{i8x}P~1A5ZY!NlJu)^i^}dnu`1?k~qs9Mmjs9=jFj*D+AJUx1*ozTff<}R4l>5Mch&{u_zxpY=v{pZC$z;Sb!>)yUZ5!xkhdnJV z8`8Hn7RD}FD3-ByPYc~->$I6I3nf`(*-ePGjB2yPerP&ub|``s@tz^hMyJ`fGfzIr zhP2t#unpSU&aR!f^|0M~`|)ADRbq}A?QB+|E$ zT*|tf%pNYS-C+S`X;@XSJFu-v4NHqz8cV5__H+Nvmq^B zqm6a+Y|!dhmhCGfleopGi~x7Vdd0BVM9K!Kq_vYV-;_{##D){|W+P+P)xWX15iF$J zZDFlZx9YyT;Q_8WhQ*p6kT{kc!5!4x4(U;lx<9%OS*Qz?b=l<;WcvE5v;FcO)O4dxv`AxJ1}k85iGUUvP^0O&r-6?NZKYRriZ;&r zXt9VP&<5T}ZX!7OoMxQ3MdJyNE%H)YShL~Y#_=c-HU!r+cKWlHdh7v<*2@-8rY+8H z6!`b)Tm-i^1bB3<)xkorrgF7qjb_(Bif;}$=N6xe6J&frdL7|8op0O{9#;!S!eSv-C`Nz^ zDWbEJQQTHo@Q#HIYjNXAi_~_k@X6n`%#~-@=)R@+`+d0r@eS9Am4w*kuGQ_r%5^q8 zWQiE=ZWw%okfWF|h>#8C`y!EOu!%Y>9@7*#`5S3XRUent#)-Z zX2n*CXX;sHw?a(K@H2tC%a7%(S*==%*GOivwz*lc_2q3`bkDLG+$>%tk%_uxFJ0ZT zt^Seyv&llPbH|BO@kBaz{=a?hv-fJ#zFGGe`ep#eUa$;3`rPiLrS0Xr zuB;C_{m2;LtmTL)kxcmFr&B54ut9I=ZxCTo743xRv~okCyqMxw)ZJthH!^J1E%)Jn zV^gc=aFG$4h{P=yOR_i#7Ch`|ug&|Edo?T7OP0jC5*&aY@0-qMc<;1DIq4nTTAkRo zvs<%0gpNh&5XsKMHnBKohZR&6yoP@qu`Sa~dK^@)s?Zk@Mh*VZhR z%h|EpPZ?p>sQxq;u-%@pxt=|M>kczVjZrfv;QJ7Y=lU0{_*&xY>VCX=~-K?PjbqePACe z*0Z(MF7Mj62_9^8H0PV7&FX;Y+RYA@#R=tcVxgqxKLZwDZp2?Q!G-`G2mk)vHn(}j zrVFDM7fg>NeZd>;rtK2LihT9>pAecI07ua|B zp5zdub6LPcojH z&pg$6?aNl0Bd}-Z|&j3;$yKcGrPTDGY z*!;|##W`dHzBkQ#wt3xNvtsGA@M_Q2S6A)9&pik@N?0M2w&g3=P3x4-X02Rof-rY& zmoAB)^@Z=TIRM{=UKmixUlV;z3a({A}j8e%@{GBr74`{(BE z)T!g)E0-_Y;^N}FwuW1O7!HN2--v7cMl4LsQ4g#6xoV{}wb4v=!`t;3Gz7UvLMD!> zR~(-AS?m}vOVE9QOHh0flflC{OVP#O3n<{%ti8Kw$>0BXc6ejeS}e}`_O`WorzS48 zf$LD7rOlGH@*&){31Da;{XfsS%>RyDl&_FO_f-~CE{osVNT*{%T%bAh2{~)R2VryT z7KszF_?n-cuugZx$~z@L0CIaeRiVJI`y$8Kxb(G6vpE+2!eyQ_#_Ol8wA1ngeQbQp zMqxbGS2pbG)ny<(2|6Ek2ztHk_9J%U_z}Cp-=BT%GI4Xn*XYu*@dvI93(4BbrE4o|W6i_@P;d~^X2c0hLP#O;YC547u>h&d403PfP&}(ZJJha5X4fa zu!jCm0}uFOCj|eaY-SR$qIfmHt;WK^MkyccauBo;sj<8n?8(aJuJ|XC`7G|5O~PaJ z<#MZHLHZ7kqW%@I9+gv21I=#XOj@Y02Ap}E=l-PxJ>!+f^VpJ!!%riFd} z^TCdfgj;VNM22JG?0Bz`$wY@v*9f!+E+mah)MAoH63a@qy}54L^bAZz0c4cK-2^~? z7=_7LI%f-C{)lBZuUb{fEFZ+Nq+okLQ$fe6#fL z2@=^Oz0ms`XhsqOg0XQJo9X4fy9BK%qwTb&JkdSBN1Dn}D zZ7anFoFpz36xrhd#mW0Pa<<8PPNo|++GbN)MT<=2as365Ys_|bY7QBa@w81Z%vqoK zDYQD0AK`Q0iivX>*qB?7AI8%F{Q*uBxXDhp9U2?U^k7uR%8lK(@}&R%&$F^WbHiTs zs(^8h^jdGNH25HyNe*kzT~WmIT!`Cv#EDa#LJ{`LZ?0Z^)b=gjZj;laZgEXcRk>2J zc%^A`B*Y2wEqHE=cL#0(Jtt~Kx`M=D-#aY0SOdTz0{om>`5ENcUDd0Q@btj1=i6KpD$*)P^?VVJa7TZY@=8HiysSq@0oH?>WO z*x4=GEOAXK%*M`+J$L1*{q83|W54&&&)I`dT(qYzt=S)c;j8xO)0ge~Mmf9$|5~fJ z?tSpw^?9xNpH&3?Q)8HzWwG$jZVlhm++O*EbL%Wi0xX0JQz>D{!*uz*>Ox9xyI72f z+@(v;+E+gP0h^rNXN$-0#(Lsx-m3Mt*6h14UbFe-OC-3&G~8i67spyu%jjCE)UxT3 zq}AXVukJRiLMcY>R#a1;I5s<-w8M+zwzbTGsPg?Boa9K(GPtJIjXEwdYg58~}1DOG@C4O<@)`Rv;21@Ke%A&9zxyb_@)R3KJ17x-13*$Dxm4-QRibi$P zfw|dP4o8B|S+!EN?k;?4Y>I=@RV?Y>b>c*Xs>7S!_-*%o>;tU*TSB4!H{}wC!+`VY zce{6Vu!3l&FpQF0^k5qrEucJsG)JD};gN6cwcB>_>=SnBnMZ)ZYXB^2N3aK+*5#BrEVh-xl@IVt(CA2o>j!`ND>+eYg}U^ zs<0M0=%f@@TPjiWataMX8W2-%%GD9CLor9GVPJZb!_{0b0^19Ax!AG_v2UZe1iv@} zlb^D7v1>aQc6i3DMerEOEWRYtwYlk>ElzXbiaEP*brrfRVP&3GrJz_UKI{kuhog70 z2p^mL+~-2ybPW4Eh(rH%+Kt1NYK6tYy%ATQefAMS0b4wHs|VC{Dve7^5-XZ^^}gFbZpY9)Yh)dZe<_>@;=|H7lA~9bjkHjM9UNmVD^0z0Rebyd+unj=UVr?@v zULbG1y2AUmNp(0V-AUdzark*B&Rbhs!{FEJQ_Cxt?V^fwjSv#zCe^ zBAX=oNe*ZW0(f@?0CDmV2cu`)zu*$CLI*({4VpZfZ>|E4zV&2N6Q|4^yCoi3J&wn9=E7eB{hZfq>E zaYZW?tIoQspm*}%DSOFl@3XOV$R2Wt|iGPABMHaQjCpPh)Gxotd32M zrZ~CKP{qEjLSrR>C{ZI7j8T=Xg+Cms?9k%4e-*~BRH&)2Q}^I|$gCJ3ojD-`E4F;5btsc2wB zI~zriR2sr})W%2@^ArT{Jh9(uJ6o17O%ONARDP2-PLLlZ9q=kM7ShFS%mdN;Y>p~f zS1I#%MO(#&j^J9v!$w1{lS(hOwG^?l!Liig$VZfB3_P}}Y{C(OsgDD>v1H(WA0Sk3 zP&E||CBk_QumPo>70=8mA^UO*6TOt6Y*WZ3ux=J^pfq9Qgo)#0qgd|1&cd3sc;9St#M1p5-&eGHq-=$w^A-_D z3Q1a1I-~MaIF1!Hti08-e0GRu;E>ErTVZ4@^a7B-LucCsLFyp6BnzIyGWyDIq>SLC z?{4qf7asgPC#PkUFtM&(;vMA=c)cF<&H~>F7PDV8ulY06)++=zPnS2P8mLvv! ziVcR;7-XTxW^sdYtPQrJMy}Xkv$I%p6{?~zjuqhclAzGp?>cJZRnRF08s%AX`>+gQ zA@Vc8t|L#eE;%X^V*FKzO<}b&y{LWmxgN+hW@8h?CV059V>wGwde6e%H(Mm%Z6WHR z%}kHk?k;$Mm_Ic;LO3Zoy(gnk@%N@TOt2Q2nuU0XL6-+6KFFL4AiZgFoNZ2a26!zB zMgp48KYrS_ws-h2JOmGzE;nt4Q>6#0iFA2$; z2FCBEY?I_U8A&(?7-hkWTNOL;=HqtwHT#KCbw4;gT=sxX8apy&xBN9~Wao>veR12_ zn5qynVCdLwCv6=twrfSI;c=TJhV9}_*0(x#;^eGNA4<6}D8gZ=S4gz^EQ|Z*sF7_D z?{{o=E{TUi-cUw}6dRD_rySkh^oBX5#DeN84J0S~^i8b6TI5HgHaZq}f^-;a+tbgS zAxUn!<;ZPjK}7d)dNNqhW#U8?-#(7p%2IxB;qp3s@SRqm3yg}2Vgb|90I79IKxIKu zzDhM>P@MP$OdgQnmN^U!HZ7_cG}5#AmytUy!=xOITmCRK6$$Ju|I4C<@dg79ZIpO4 z`ey1;AKA32HK-|`L)_x{k!efaw`jS$CZUp0S!u_W(1!yCBzs`gW?nRJ=O4IYXTNmC zc6jFeVbTl96R`ei2;ZgME&klGW4D~JOk&I~o!_w*1i~zJy|xl^4qFGSg)Vk$ynb<& zR0l>Uk)fi!&i8aJKbLZXBm6?t!<-0p^-Rx`(+Wv#6yGm4J)Womt<$!%-LccBx2+0r z$N`tdTP28X6GZkGiERgzlsbxGAhQ{AH{3xMuCCq&ojE59Ko|<`b-Z>W-KJt!6jz)= z3?o;1VggQ*4}R4^dWdEa6aac!cHq7d8#|S-t%G4Z@ZEE~H!=j=o-`$cX2es2VTVfd zZF82H&f2AqZCdY15G~1T>eQ%>z5;1Ly#xOjXhH&pCF1m($~5I|00}wQ;wz7VXfyWm zx1B;)60-+>`%%10+d0D~8=V9l&H^}gwzA}wxIn;5t=x8zV;^Q{hj^ZbPdu=1k#&pM z<4;_`%e1^oo?@+1)XqWxmz%GL>C7R3iI78uNC4BE@+JW{O|ltF5J;O_>`&5#G9qsq ze$P5aFaogsQZ|*kj+O;(RPscq} z8ILnM7F58OmUgXr5=$#YUw|0a?Rp8NiBIoEA!R8ms4&^Z4OGi5fAc;;RT4D`KxGy2 zcnzr{nl5U#O~g`Ju&kU)2kjBVILBG70k|B0&bME(;dan1qHTf>M~hnp}D>DNwL z0vELP?iFj2?}YA2+5VU2UBEVWFmQK5l7u6Rae(AfRcf)l4YNH3u{?x|oc&(dll|G3 z?6;{G9|*|mzG_=o0l;CvW>LIxkd=&!vI<+3TOAJz76Y2Sv`mJt%6tJVC@t;u335ci=m>Z1*%jOCuY{l+wSJY2CAspU`6Q+}?o8K_$+~qPl#F|i2Qfin67Pe6vfN;#2XcZ{ySj!9)(gJQLmthkn;y}xg zM-I@%{k57ctE0OZK*xx6moB%@&-7hpiwk9aM`1p;cwM=}cs6DSzjuO~MZ)gO9J2aH zH!S_#W4JmjfDH|*&pb~o;*?W_RKaAeswRXYUX>2rsB{YayM8|AU;QRqE>}6^_x*^I z!l`7=KT8)$!^&FOo_X$yec{n__V}}xY;|kbR?3^oCmg-<(5xIZ6=~C2EdpFO+gBh@ z%(QK5ScQTrxKQ=lszjzxVKDz$HfL?^EQqj48dPvp+vCtDiDw64TnesZEZqEt#dtyK zDU_7z_tIqu+9Cqt@8W)Hm6xPaS@M*8P~u2J;ehDE@wQbiUM7zU@xdCF2Wie@IYDJN z)wG&*4??whuw;SrlfJYykze^QB6)DMMo zOFF%M6v3nu!(rI<6_V72qBxMW{=*FYCVcZ7CO4N#N1dtec3`(* zwafVAT1^X)3@X546>y1HsWV;Qkw~-~G!qcd4s(i+<6d^ebYPiTAqs-jAdK5jkGKutJv~RwEn}Od5XSOGNlLy#r7QJbR-t_(DMQ$&VApoX-XAgVpm+b z69GKV-$k*!ekU3zhjz)@r&5+DpGd=CH(}@n(stnhqe5+3D3DtRmzW?wk&I06K!wpc znD%g#Bytma=5WsnZ$tC(6iFwi^vA#dR*=}x$=LOshCO}enjPM^z$SL=pZ>c~I1EoE zK%^siTNp3c@x>{-?KodYChg>bF`Flmjg16cpkk(LHPnMLklrL|kDtHdF7H+MoUl7j zope64hozQD{;#fFwI`ozu#t89zE|FB?|9oAtk^-t1qofL()_@|m`CXsX2Vu4kQlR? zBNQw*)@pX~GGT+YX|^DmDWt|!x$XwG?)pt!Yqv`k0L!nfu~8$0iuen#VePhrC_@|N zR6*0>ecCopnLuxNb-4~3QHLo|c?HzQ_r{@hj?9s3!70|eu=tNx$U|Vz(e_c>0LpXf zqyW~NbK1(Bs{Ml|!8gRhh3yCse*8|#>nF1W;-*a2)bdXqL0 ze>KI^DhjK27_{xZ z@BC3`8fIpu>=Ja+xBuubaWKTxkoaZ`Xy*B>?X3OE@BBAQ&oA2dy#BQ?>{3mUU*X2v z#OCR#q+MaHH#Swr>)6xJl1JiMM#iD+#`7*v5;ODUlgmyJ$j$ZycyQkZ_(>H;6VoWk z63rI?*7G0@tfCBK5zQj5i8Ls@Nyibf^JfuBg3MlY=K-`FP)g)i`=?+kA|>xE8R0>b zK<)BH(g1`nZ31ueCm>OIKgLBr{yL4=@7jO*w1zh0+;YPn!&O~4zhxCF3*&H3JxO(iNO0#} zHaLM$H4>77chvsnfB6`dgiU+Xn_g!>|IVMWxBkG7S{2QP07(u8|J}d)VSDNQ_oMOe zQ>vlD&O$Fy5^7YU4&7^2JOTAN3A+jtaaTZ#(HYBwYN7LrW#}h>MiE~2^7#$-Q1{$_ z3VGZJ1OT;*8;Y=-*{~53y764bj$k3gy|@w)w$*DpY|bZom=p|+H=g|Q?^ zk2C;_*rE+bCo7Aa>{3rxi;%iVide}MOm+t$N|6|%Lc$d>DZK8=a?JkoPge=R1N+{e z8YdQ(yxC6ih6KP}kXQl-3?Rwni@WyR)rLKOp@J(5+28)Y7a<8qT9yMgUI-(4nY8cw z%P07Ll)#kydx%_Jc`V0-OAMpU=p*}1O&zu`K7G|b^4ZhG!3n!|WzC*^{6TvhoK}%9ce+MuCCCKTaWi)0K)1pKG!d=*@Gi9aHl3BQ)_PH=u?61A;jnH33Z!sE!l|U|JFTG{nk{uV#C<%2f zKV^2CUrgAMlcUZ6iCxj*kP>WXn?^ubj^Y;De>N~HHU^N=!8K-bG2h?`bSXJno%SKK zyJ-u{!sX3^z7Ech;bZ%D+ra~a7+N9fA`bNcI4fU+b{k2eW;6t zA)5igCMA|Pmk+%jMKtqTnrj~=NaeunBXJ#vvpll`*O@NZgI|6I_a>of-x-NFe(!7S z)yH^=-D?zW^Xg8tHTuUolzZCFond3uj#6K0aXLe40!Nb}+3rh^XYBYS z3L7dc6^ z0w7=m`v_}B7VIZ~?P2?qFRa_`hmMo;4eX(>oJN%MDn4w;@_D(WeRlooWrxgT6bpa# zKb{8C7woOCKVt2&8u)_7a&IuVpkFL#0E8tWna;3iz5J6( z7M#72cJd9cx!n$gzd-2)A|Xr(1&e4ReGmt_MUAW3?0FR+=p_s})v~G>kCh#UTV3BO z+SSW7r}pHQHz=IuSevD*8+P*8oLlluZgQ6PI0>6S_zDcJF& zvvXcHxxQVr$8jwU7W({F+_oFMJRDsNcR43&i(D!>9=Dgje%ub-mS!{5!2}uZC3_vEld*Ivkdu3RW_V9n8*+;b3CxIU;!rB7J^lEX?6o5^ z_UmChL2S;sz!C~&b&hq2qldG^ob5|CoIXyGwu255tASrFu*tPb$@8qBBW~c)M#rK| zEi3`ZI`>@3`OPRuxd0oofy6+u4Dji$HjXwX;6ZP8!{GFcJfukmAB~N0>R_8SKp~7I zKr&=jHkQB-r^$n$dgi9)afcwCsm|`46ZHFW4L2_y+sr`#)+w^KJLqADp2!)r|R=1u+Nb z&!`D735W^X>*h!7JhHiFe%i%AgKi~w&7c*N_rUE8L{D)dDrN% zEA}IVk_W0uJG)%7x4!*#7U^u*GRg3**-aa4AR&lk?753ub{*MW669J%deOblKlcC&QbhwbWpWhrpVAC zFqeu$d-D2@cY$0b|7nSD1LjW?g7;x<3etlYI$Sqt1s8 zIBlKl`Bln|miYpk`l$f%wRUhwV#no4@>H-)Fhvm#s^`z}8@d zsRv!8cbnGW?j!n9T`>4Em;DnW6o@1c`T{vjoL$riOt0o@3 zg-$O#q@@Q`G{%Q%P?m4u>e8`EcYEQa9EbXwmGq{AjT0#=6lV!9^$Udj0L8_>_MOLI zwdqWOP=4dv-ee#6$cOFU|Gm5Iy^pNgIiUYoIvAoNchaHx?>8U3Kn*ituR208v#mH1 z_eMQu*v00n6J3a>WnTXpB2DWwltVS`SAY3u>?7}ezrE|rAGg=cHtc>%`cHlJtSz5- zwS5P5x5l-a#YX4tIxcs0Yi8HZ+!eCR(tfK zJ+Rv2&>VuCrW}%-w$Lat?XQ|QF6J`0JXrTGF8tbB-K|$8|Nb7qEH6B_kaPLO27pG> z1xAn#B-1fhhxME4RLy`)Q+v(%F96dqPS;3eVFm>F8jupYa%5d&G-^v}BxE3y?|16% zc0{d&J=IT>Jl08GgI=pJ54aop1HJacdxA2 zcVHp4?nQFDf_2l2_Qbh$o{=03&rpXgsnmvE1(4?r`RIv(_iv}wJAjMcMKX@eh33Kz z@^63_#Xlw-Q2?&f7cRbXL~U^HDQ;?XUjk@7Vu}n(2)%rjA4|H<+2U@A#WPW073Q zp8cJ_&IpMO2-o-?GZ3+0f>`j(Lv)Tq08}_NZQ&B>1Jb*}Aka7tNu;Z#O{~6W_Yi|$ zwz$A&-c)izOq@brlC#rKKjDnKHbuW?MuJfm65J@qQ`uisTobPH>8Cb=d`t65U|zCW zXgXYVmBx!6?@{EvC5@XOTl8xEO>dZ_#oHSjNRv-f>hF4YiOT3{w11l$>)vOjn4vx_ z6$7P1j6mH;RHF$s1*|KF>lBsqReHE404H}9K!)v#mofT_ix8x|X0dMLFysA3Z?9C$ z#>ET4h&So0)m;hg)qMJ6_G>@>CVL06gg5<*U$fUfr-^PudzwWGC-e4Se(|+b6Bv3@ zZF?;Ae2C`_ro#oI9P$V#8H#V|QH#JAnz}BBdrgJBUljTcFbpMyz?CvlEZp=C(dY=! z|H)l+lmi=;0y(92*?~*VWpV0;Q6aa6In_yJq}!;20WO@|usdFK)Mh5e=@Y9UXhjM^ zEFID#yhAD^imKh3<*>g1u)fKusq-~p_h&Hg0i@+T=nSZ1D?sE@Cq@|si2yL!=V_3^ zSD>#XFs-t|%mV{KK|fJq&%)V#0v%tsRj_-iMB>LAk?9%0J zXIRvs*=FoffA9jp`cc^WO+NSf2F(Vzww;~JFb;V;O2gU#nD|XjkYvvcRF9E43s;)w}1?=WmgqwXN3Lfx)bm)z|DP=5yL8(tw445N{ZJn=%f z#H?m&VD9T{+8AJbG-GFBF}`&Ef-N%TrL?hWaZcf#a% zLDuyYNvtbJd1ig9OQ(O&u2DaFe0vLh`K}M9+((DUE69cJhoX{TMaitdM@Zrtfd&oJ zhy)|QH1Dv9t}wyIh%p~D)Si^~&i=5zZ(#pjITe_g^PQo+ZA-zd5WpOW3_GgH(NMu_ z#WbU_A9!GAZl%PRP7+tyk7w;G7il&J2^Y}AuUrnX3AjDn;v~~=#wlW^favRVq^wfN zY$2yuS%L87`FEH{rP`U?;qvlT)*)f9{(;C0{KqAJbmW&7w?&fBx_oLhK?ANY<}+TACP zqv|DLcW%)~iE)TTOjASS(8P(&ANu0Dec|C29VtNiHQJ^)z)g^E71X=CwE;S9`&%k} z^r1Df6l|pcu9K5WuI(fK!hMgU=jg#!g?of{-^z;k#4#7&s!8LfH%#s)hp^?&qsWkP z2p7mlb{U9u>#2F$E~#^}Zo62>0y)}iU$Fq_pwB5BG{|Lu=t_taQaEYRad9~+#gm}F zn5Ko|(he&7z(KIHTH5^Pi~9K;*N zx?wzk>8{!h@5QSdL~q|m_4U=LN9yn;Bn036bHB0o(OdS(N6yPAAhi9|M?@!Smr2dvDIMgA0C3ydU%e0Py_2r0haK#*swpAz)}hpKIPei z^qo2iN;|GyU$=)Je$MW@{|*i{75OrRLofHjSQt(M5_CZ6Bx7YxLw|}93WpEC+wqWV zjN;j;yNfz{|E-|1t|OrJ-M)SLF+SLEgdVUQafuHTMuU-OUInG~kqs{*kq?Bbe4 zdJGX}#1&3Q$@%*8GxiWDt9YhkZ#k5<{VA1f>aI>QS)6%$X`sv$ogjJjO3P`o z3+J!8Y+{;pq#fx7uK0yuI^_Em(?{a;I*~&R5#$_V^VDEhM6MMhcFZ3fw_`_OIx=0K zx4S}C|D`838QK-HAN>AX@YOjeB&@1ivb%5DXMGrSO(A&t>?-9Evt#>d`Xfek`kKQr z>G}>)JT2qzRVDq9J?Jb9fmeDqzqKK1wL&Ws6|u-d;K|48|_Y zg*HLB|Mcyzw6Qnh)zXTA1ZB{PX(w4?sq98bpdA?nEg0JaJf1Nax|2_^;*YOW6Iy;rJsEK zJfHKT&CE^P?MG)M*Sz@+D-s6qL$czXpYZ9r(7RkG@Sxvx3vC^}Bvsg`& zg@6^$VUdFD{MK`jQW>GnTnzCHkQf?FB@=xVl`V!8IY$rxjcHmbF6i-{u$`~=>}AKs z?2sl9fxyN_eC8}HOaR+uVS)BA+d2_Fq*gC{V`lwN!+p;0im_=hqHEVYQdH z(_54F#1blA*qS~pj)rT-G~<~hdJ@nyJ+{vojV^I>8&9&aUIYEreKcTy4~hDi^+?Dk z5481cn{|io0a+aJ(R_-Ps!U`k0oCYHs20_(`vS<^t}QRqY1H?Ub_>m52Z>vgB(GL& zd#49e&Jj(PfY~iOad?)$qd}ZlAZhb5^Dcy*8ePfalKyY=pd*bkuYj=HRHqBbyQZfm zP-o>`3LevB88rAYZ3e7?np{f+_)%tN9H1)DW^!qF8j1)F-;-C%)_ksOFJ8#leo$yE zHt_ytiA00ep1)(c2ysh~tQcS8&XLo>p=*=m@Q&pp$}}aXg`1QPv8@zDV`syG^>_*q)>Q6*$ac?sqXW#rQP{)mz+-XW zJ3D*4Mv^-x55yXM9k+J&d$?M%*PR+cNu2NoLCwb( zLJU#28^$PRa_Ti_v4qHUjoz)2A*tI>>_{>-pct}~Q&3LiRVk3&m1{HJG&rQ#*{F>= zDlJ3wo~A~pS&IX-Cd%oj@Bp&vlKQ#Ta~&0P(R5L5-vIldZaQ)1R40%c4}kVk|B8X`QrM}Yz->31eu`rRU)8Hh8fC->&q1!nfx8C} z&e@TpB+{JDeUPXb#tro;MeJLg$G1OaM-GjXTD860vC0^QvC&DpvaXJgu2%^JfjfP< zq_&q&!u%T5tq_b~h|i9~aaMiC;^WU$>}7aHOcc}59EYcxn`5~*Zw-p?A^n=t1TSunpUn@xDkm5%e~ z`@=|_H9Nn7$)9JI?Ra;>wH%iidoEgL44$wQMTnvj3kfynnnkbKLr-ovYJ2(pw=r=o z;o_9**Oo{UM_~r0ZU1b6S%p)9#vNZ$RF@)cxTP9IC`@(}I;+R)548EJ6t~sz4xvno zY8=i^Y`f$MC1{^(*ARSmwx~~q?EO{gEX-ca_skR$KFwQHQ6k*&7Tr&sE8ENVA$(md z*hSh`pFCf-TMy6syhbO7b4cHmNQRr9`;Fq-A3nQfUpe0<=fnznNkl)3-WjSAiDJ|G z`Z_Uq+RG}*c9K}fc!=B*dobX zTHdq+2NQnkzXOIrCvSay(^+y&E^5^K4y{%H%F&*xsWrQ63}k^QcIJ<#&3GIev(wkj z9(s{wg}8VPv5 z1E5m4P-~Tzzk+vY@-q=oWtHl6m1=pJzA*K`ImI>zt^^5WMxj0B7V>Nef@-bfRgrGz z1t?&O;ww|+tCqM=gi~LmOcIY0PdJVFLedrwF>{I5oEE22W58Dc9ZGx`CK8_4$e*i$ zO_N4EO~M&<+wTAZltQFHlkwEhr+TV4d4^K|Wk#Am@i00^I#uX> z;op-EW;7-uOpbT*#S0V*hqjG4Nb{lunUlO{8o^9?=c+R?t5gd<@X(ew0qR;2p*c0# z=b@`InBP?h+pAdIS1;_^U8fG((PN9mvw=N*aR(hs%cs@pZkT=jz8|2A!+Vqc-7RX3vHUJbx(ML9dDWDL6%${I zn!%0%RvW40CSe>jmL<6QU}i>wi%i{O*zvPhDp(K=4nSRj9hK+1F3+RfNgS&3=W4y? zrHu|Jw9yElvDhUEEJ4m7?X>s)CJ?nqzI^8Fx_##K6lKFp5V_7j{B=40O)G!N>I<;Sh2v<-sR?TC z()8?@H?Kuv49dc9tHeP$78g*FQ2^azK3_w;TpLM2r=tsLNTkX3hmZ1EK#6k8O44GwkU#(c_uB@V zpMLx?x5798C!VK4J`R+Rt7o9@pF{7lLJYoZVV2l9utSHK>2YD%7rx!>?v1TL@f9lv zr8&p+L!V*d4d}YtMN{M~{EZQb-)J7zWTI$`-X|?Mbw)1`cAJ<4X51xSDL6;!5|@bZ zq;X(WmEoF0{(~rSb+3w8fE+oC=ovKv_)Lzl*Z^G~K+M3G*O0=^(FgqSL(kgp{ozv# z=%O~3LDx>YpvgK3kXaOMNN_QZ8VN$)DZ+(##5!EAx@$;~$EV=<=w|HEozkS-^VoIX zk0uNez$(XN>2n*K5p6_*yixXIW*EjptsNY^XwdCGM%5^z>jrn#$vBE2MyKUVm>ENZY4_e(He-y)ohbyAQc+ zu2!UHjMB>h3yDObs*nrxG%jKw7%$hvbKq|Kd-Adfn=!^1Sih8wjmS{Xdi06s?A&E8 zGe}Bt&~rLSH%Y|fp@3~yrwOjT2C3buRs23MbxwB3{gl#lG*g84**flpan|HqG6h!$vV;x34nHJ;WRfW*r{Y!h#py#>i z4NKx{v$(Q5?l@-0kKq!)^*eBV4Hm7d!l0yVxS0_aV2a>>f+SRdwaW+GzcA_MuHj!v z+KzN$t591SA)%A3q*i^xF^O%UzP|Y7C!N^{*c?dX{S)4S-^H2-YE6<$;CnUWqEbW; zhyrRp<;?n)$YT9t!DFymLhHhGUG)}PSjZ+-(`%-M;a&sgj^N!#1Iqs2Xw z`k(t9Pn2|^G*3ebZj(FBEBSPfMj1WQ8aOcl~*zAHE;Mnf)u*%mEcgI z3GWLXHr$0u5v(o^ojiSDzc^s;0v*k!P}yI~rhx}%O6Uk-uF!I`LCz=TaHYD#d$cLr z2t?#TlSK}S>Pz$q?*^9_)XP#4B7FniYZPlFrdjz)%6mTgPZ9-fpio;}j5}aKiLol^ z+6d8Ke(8>ruaU3abtw&|-;#9$cK3ojtFD1(e9tboFEN&Y$)k(z+6#qgr@ZuUqNf_v z+@@w`y+Kc1Gov7CfsYylg3xg|6x7c`H=N@zs3?RTjJyC`Vi6NB> zBhX%Dgh|F8$wt?@|g#iMBoLh;h~R4 zAE58hkY%~e7Hv@xC^KDfGwj#*in0SgEPgTE;D(%S=zNYtY8hx#Gi6oc@~K#31b%~p~yoN=u8>UNZ+3E2N%oGY6mmt)tD`p zreGRp1N+?|Udhk5@cEI1x=wQT)u%7ezs!iAT+g;~e<=p7EG*CjPiey~OSD)oxEMgg zo68J^9KgV*7^^3?K~@n>j5-Jz?%fy>0_FAVU7z6_CwK|)C=L(%fh1ZQ%AiLqs7Ci; zB3dGtDRl@PN(`$F^CX{xsXN0a<|qNBbR968!(9HcF|JZ1&Cyjc`Qv+zEwlak7j)>>h%C<$?C)*mn!YyO>bD836yPu7k3B zk4d;vr@&am)l};1b_8}_{92aRE>~LaUMuJw+YOy;BnK%<@gUYjO1crY3F{5}2)jV5 zrW=!D8mbKZmL>+W3Ckm=g8|XSqOuyNqh%LOxeZwLabV5`z^H zSW0A&FI28EuYSyL4(wxv8>pjYEkcALANAA&*601=fg;{SDNPo^YSixltuyXun*QmI zPsLIERUB`$6l0#}hJ`{wSgh7s)d&lrJ0Eiz7%B6`N_LQN3lWZSql5aOYEgA>NFKxF zGLV*LydR|2rMVo62SSO0zVby9r&OV{k`SbLSvzxX)$az=zIw%(58Pza&eIot>m9Q` z+_|D@X`~KKO$XSkCP&y-&}dSAay|tBJ>1WDb=k)U|Z= zNh0P`$SVLXS-1o_BCi`9zIm**z~qH(?p;&p5+w%{RQ>w3e_kk&d}%$E)P({OD(p}} zJ(b#-S4*eJVH(mj$3uCRNKIX=mQ021B`;Y(Mvdl!`SH^&X_c#lb z#@*#9e-tT?*Ce?eg#82S7IJ0&G4eSf#-*!8Z`_Xg$!vMUw+@36QpFoFBQ5&R`Xu-L z3WyQd-QL{^T8g}zv*+}eW@T|{g5SriYpH^iq8A(z;#(REh-=7XSfkcKdD&n_q=qr8 zJXD|@r1Yf;bQg=E{7mzY^*owUCHLulgWawJ2;CKL{<%==vnMP%IUcD_HF|O%T0W+2>aEJ8M4bT(K@r%__<;FX=c$ zi)n80NN&t;V$dboxxyHKAGu+S4nQK&K<_PYpy}7LF4Y6)4o!Ni)%Nu=@e`>vQm-%- z@zKee>mAiDy8%U|5l*7nmX=n6-a2TxHLjq_!oiBg5n~_r8OBt+DbyFd}2PrJ?H49w*HJ8FSNL zh|ew3dSinktA=)RILak1MP;*!Sbc?Rw7f{8+40xezc|b0F?@Pica?Y6 zFWy-DZ`Q(wL)Sxup8MNBQocSjyMM7>TXz0khd2_ByH-#2oH~WaMnm&2XpuGbO(A0o z>)sNiQJNT27dw8*Zn^btXD_sv)AT}r^}!`CIvyHB+mQ|0nlvd*v)@%`8*nq8;)Z77 z`sJfyy4jRCgl5RCBcP}J20vLyIJ&2qu)u`^CWbsmIG%K9?pITV`auOk?X6yxkGf?v zv4-o+9~txl23?*+i`wBcZgC-iMi2VsH+*=txeAPIuU+Hvo+aGrxVzT^2TqbcZw_n< zB(;M(swEX@@A0PsEx6JNE=x_K&m8Vl2D8)S;Z3gKxOV=Db9-w(d_FPk#t*HYIeX@z zN#t$m%;-=+r8M%qT`l2SQ#P~jh<`ZO)oV@_q^c53YKJq-1(5GKR%%XL~w7}Bn!XHg?i{R4xT_(~kU*nET=5n-dT;mu_92klT zLE%*|b)8RC(NoiF4jt!WoQarA-_AVo6$fD=4U}GZyKiXd736^~S7^6<8mn?Yr4_w? zFcLy8P`z}A56%vc&_Htj96iBiEC0jVe{&nQcf(QZw}0nDpXzaa(b)I_Zm16pb?I8G z9n2fdDo!X73=ad9;1tP#1*K9Cas=ak93Qg5ce39rKK`@_RFKf=jvC;4T}c)?B|e$=i;4L6_!mxVL#hFcQE>XHt7bPKG$M!Kw<& zVw6+0#8~*rA2=~m2gTsh?7!44Lcowf8ByU?CUZen&6oVE~Z|{P^`)N z@;Q?DW$!W5%^51owAACq=iG!GE(7URL+k3IZ{4Y>IL4}PbF0SEwT({p*J^jR!5AEB>Q>h&SIEoqyX zo*Z{n7jc4g=!vqFvB4~gfsb>@&o0_UO7E90th$s*K9XqdGZrGD7D&cfzE+?4QG$1o7vmxO6)o_nxjuL|u(zj*g^1-#h;Zc$P>L z7`9An?5Dr*G@HVy7K$5aJ|ZOuB-xtF+a@r#xv-{93`-Ip5=wNH6i0&j!^(x)W&Ryj zybYvpv$^{IuI_v;?|6R5t%Cf18>?&tR|MlOr5ALkrQ2|$!F|s{iV-Enap?p@euI0& z#l+pGt~E~IN9C1#7Bp==OiaWA>wlg*{DwA6NgO+0E|*)6eei=H`}jVFkF&}pzJ5xj+Z&y{dfnN(7e=4SZ`k1VRC>DWjw8d9Cr{Y>-~Yak<3b?v^@zw{EwnD%R;z0`9K?!7v*{wtSR&;v zP0epYloE_?;q%ih;*FTo0a&Dg=54@0hg2aF*}EYjqG4k-k0SyK5%MqZl+*%;_O3Ja z8yx~*uDncodhvcb;X03sHynGv)j`R4oxCly*9)dgc0}?z`w`!QbE>F!_r}zQT^OpeOZRK&RUI@Zj_>ck@h`nD z^2no)Km3soy!W$O+dqTc_@+0^S)6m{&TaFeXWsE6fB!>&@CUy=ef-!x2iBGz?L!bm z(vuA2q6AW@7G0A!=yx3sD*=tkf3tZFIy;&y)H0fL0Q`=6O`zmCG7UB!XBt z4Edd7-FEQrx;#HWExK-S(y5zajCzion$EXk&8B15Ibln<8U^Zr^ zXQ8CVy!}Yu6Oq}=C6!KDzr9}|}YZ2SL<38-bDCknz`|9%aI9fAZbJ2Jd{Q)-+__$Yy;r8|I!-SJvKg%fhF3inXo3`j#L0b#(35<`3Q*Sy~Sd zwzf+{-2z@l!Yj$z4s!}uw{>r3)Wta?=<5pv?hKLvV5~iJc8N_&dP6{j#8y~8K?h4_ zlv@&J7g&S|{yycC&{Tx3ZoN#ZSU8vq4(-=&#S{t2{=(@X{3_Fe($sm z0E@;3O3kHv$I_{AAYYIh+ar3l&|bXMOyH2>uoPc?pUs#Cy62dbou$-2z5k%iA3077 z);^cfbrnz97>#C9wSDM-BogRG$oTKS_tfC8|G@V|O6A72fAkOj-mjxQ*;-gw_{=Z; zQg~qBP_yixPfh(_Ztxb9!sg~iw>LK{2j27BAA0yZzWt?z!$(go7As6tg8!*D`yt9c zp;ATjJpvapmgiQGW;~D@h7p(rmvC;V8 z+h2WW_~kEsY3Qk^pZ&_O{?gxnH}BQrl7auWxe0G~W6Z%{(1v+Dt5#cOKKNFv)jIOQ z4}IdR@z`MV?z`_ky0CaES#N|wjFcOcOI4n$6B6T{^ji;@yvjsrwU*W?f`0xh*KM%J zRR}q`pmI+IrJP2EH}Pb%;1a6!!$w>1o;Lmvh#hGcm?&(r#@;_?~uk``!&mgWa*(DNYV>4grT zgB`bEU8+;0{x|6t0@d_I%>#b5a8*Bv{4>Xn?p%oc^NmDOvwsNz5a zxl|WY%jz_psycTphg@)d*zU7%dHJHTvF4keY77fz+BHE@S$rU>!pg9a{TASgs8}h z#Yvsqgb0q~uH(t1$0EhTcqX^!T4R1$fCNE4fsTi1mA8mdci72WZVS&Lw4JB1o)Jck zM;>|f^S}8Y{?(@jgJz4%y;-UlIah7#`E1tBY?yuB8$$1;UyJnmxH@dd$MYjU{5Rfq z*PVCVcK1lWa3IB81C=&fESz-qiXEFYZlAeW3gEfiM<~2ECSmBm>d$I!b0D#I5uD;~A7E%IbYSh`$%P7@s4dVaoufbZWd?Dp#*Q@#N{pKKOz6JYKDG>9dB7 z$J6IKoyMnwc|Ff>vu<|7zJAkmHT(hG+DmbhQ$7HLPk;FEzVVmefA79S2Nw6uFU(J3 zIXUJm#D(CQ}oc;!%oz#XcTqL?EkumZnw903XCbj~RF@Qb~?axe@S`aS);V#*DH zW>8TMdukvjst(bB80~vZ^pcD(d=N7`-NDy{IVuY&7I`Vhhb@PEQ-T~Rz-Nv;W3jz< zAzl^q0LxL`+1%Ws4z_&${DuE>kDfjSUX>1U4luKG0IQDwz=7SL575JGAR-LejQ`Mx zQvwF2F0iPS1{Osu&=mCtD$htII|mc^kK{KN@XQVi%OBv3#xr0-y96u)?_mq4fs8O@ zv;L!8D#6Ak15BOLKr9R_%D90=4I7DFiJ<_1M^Q2V2Hy7f1vu9D4(QLP!1aocLCazA zgw3FcFa`oC336l%k;7p_2>gMTBEN|Yhd~!%$YwJl-F-R|025jH>}HQ#lM5jM0tlokmMB(AOA-sKyih0$u@uDvr4&j< z6e|hx2T}<^pb`NSVH0DrNp^GWJ-ahI_uY5*>+bjZoqk>?f1qXqghWi0UHf`wx_jUI zeShEY_j7z-%Xou7V+~+pazYJH5O^MZ&xbF{@O%N1#6w^Zet7u3gHOGS`I3Y{crhHGuZ#R! zQDt1bFlYa-^}xwl=djl|Vx;B){fBbdLz(bF32hB!+Zp%SL6cJCx5anuPr8z_@>yVu; z+D!{x%Y!a41DXU&Q(>lZu;MDZF#(PyKoj{MvvP6fJT_O?kw`>w^^KQ<(ct!5ZxddZ z0KWK*Qa9+jLEsATO&dZi1=((5@aWeux-x?ybm6&mwAx)b+rNv>4i4Zo{fWWKBt`$^wR8`D zju?XxOa^TG*xYPj*W_^U#D6^N)QpBdJ~pI({5L-={760U)u(EvQERB|Q_=MVsE!Ds zKZ``rz~ndo9?`|qsIhsA#TD3|&4tRn1{GLddL)KeECM|dgW2_?A#2H zuUc62L{x|SAv3GPLkakfBjj^AH9wH?OQpK?!ugrt@SeTGs}8{Tx?&=wioi){ zB1+~mlHa-;$@!D8*}&-tcbW@zAt9ZOAf42q_VvN<%b}%3P?J=wvoUMjt8ynmvE{+& zim3ZKHnb$%nuF2xI+7_HmKz|_pTpRm5mf31)~kl{+}x`Dz{3v*KXd?hKXN8mS-TL} z+|T*tihKFIYYL6^t#Pg4UlxE*X}$2lh4684YowOf68+bXaOc8IvU^ixT3p zf_l?Ne=^>?WTS4P6T&N^FkBJQ6`Kgwg`f3dluLN*ThHP6+*x#eOIRwFgR`3(I61%i zi66LxzIpuQXTS7~`_N@$>3SN4Od4;${u(@d?gXaR7Z7E+6x$Xq(-bU~I~d8S=;!WV zERwX?12QYNTxudBv7|KC`iPF^xh_;fXiU@LGB}Ar87&`bHVfA<(7)>AXlDzO2_$R{ z{;n8Goi>)|%FL~gt;yBw&RwJG(!#3!eFHGtO`*KqB&*u!w6~Bxun%f{fP1H6)G&z{ z7BV`pShOIrrc<(utqlW`r*qK)iVTqSgv|aZyl+2ZsVGj| ze-6e)19~=vJW;B!oyNQpLw=V`c8^2Xh+>^J7~2LcqsrHc^02OaTbR&aikhu);lqqdS}J-5n~ZLT}lE^MnSVt*E}dm1tWVC$lo#mjhXRD z(fJFTXf4~A{J>sF<2lGd1lQg*jniL0k1m5QEfkSRXGx4XLTLmxORPgak*Pvt5}~MS zJ&pB&4}V1X$IpB^c*P93mdg{gDFfQ5mJK*n7yX4k?2WomO%qAj@H<2uMT2PAFa|Zm zu1P>=&F^~;`5_tsvTP8M7wxK$;!*7Tg+7>d8OmTDjjD?6VhhWwRXkDNz;iS6m@Z7h zB)2%tHZo!oN?#05EzOfVGz=A@NHI8p!So+I^vW3syP9a&(<~OTd+~x!WQn1W(y&%z zP<&nPm_2sY6bXY@Mqy8A_*$!uwQV17n|nWw6_|DR{^#ItNfML?(CL?Na!yB#!qhs>=Z-U3B?8vhO%zKmiLwRHb1=IiqQAc&yle&pO5uQYrU?=)pdJVsS=QxENgC(*!RuO5* z!;QO>`22%Huf9bkg3o>R8B9-)qe>a!_#ze;Y}AYr`ZFRM3pS<}Hrczzp z=kRnXu+~MisAjj<%CI{=S|RG09gOZs(>G|i@=70%JaUNu4x7{Xcll9Fq5 znHCMZDg0-P9xiOTs8?M4&MiqCyeR>>FOK+N5>cgz5B=2wD(ya?v4)}?!N|xU7LV2O zt;b6EskaWXsdxcNLt-F-+XheJ_|_Vp@7sfS9#oO@OK3Y}<(5GW<&yDzoIcmW?%g@; zI}o8b2~7{dfQ;YI&ESuh4)-nq|2R911rEeWKO z5^Rx;DMwM8ui>tD9L5dTj$!U=_v3TV7h%P6xM6${JBNouT@A_R=h=TTErqM!_I6y+ z`~n7A8@O@j0OqP19a#mV1&VJ%jYLkk>grKkb$ARyB#vs`L#;-S(RC0C${@Hz04|!L z^6g3AWVRpI7Y6uY3Eg%LaaynGL2^K75ou;ZCEit1kodly7{Gx<75Rw-Drc|6r@U|D zBuQ{BpU2)24Niw>;VSUNI6Ozk)c#>?=Km14EG}Zln2aw!Xfe1pOj}2zVR5%9Lnyn? zEEs4u>l_SZ2qb!Fx#=A)L1cwOS`Y=95&9?+EfzPI5cQg{O#$1iMUxF)DplYzLzfp) zxML~yU{1hLylTWC7RQI*Ko?>_#@?;g5fM2btNXl$HnpF{r5mT$Vzq(IPBH zS(<4ST?a)n{58`pN)QKQ<9pGhxjA!s4HK8?w4Wko&aEJLkKgmoAxge%0NdMjdhbBc zRoX=2`?D_)Hk~2{awL+ZhIibs8+RWuaeTIm^?C!3U$n3%UBTX54mS^Fkll1I`uT+`7)#nJ5jG!3CS%SIj_KH&v=w48kKFmT7$t2 zv&=eX&o^-M+oqxENouDThXBEU^I-pj$iffhQ$7yR^35$IF+1xbcTnfN>omztMmXG1Szg~;M*o!u z_=e9CaU2;}?Mq{Phlt}RE113_gT;!2qi0>*arN9xDvxf+&= z>zGKkFu-z+C75pRzDXc(*#y_`h~fCBeufeuh1rb_oHo)pz6@j%lzl0Z6+atF?0~w+ zCla}V)0-u&E^Xt;zaGP_H{S@EWLVtRNNB<lbxF_N_Y!~5h`JmS&xv9qI7lvW%V*uu!FPb=1FAE%Lfp) z2P=VOBB8R}L95z9E)(I2Y@A#)VFz&vt1N~Fa(L5q0e9BMiJ1yVA*^5S^l;FG(v|Vh zsTw}}g;~7!ntt4I^BAt5$l{w9YIu0Fig(`>!_;sD@4rz)$Lq&ep6rn5Mlq4KVY^mu zX4LI8apC+tnpKB^P~FPx%edUjh^C3XS<)p+i0O2F)aov_L;vb_uw#@&6;<%$>H-#Y{y5HBe)u+Z@?2jc5E4s z9-AY1(H_RqY;qk}P`}8e{>_ydo?PtU#5}V(pdy;^aC%`2^BWD$k2=s&oF;{3TWzuD za^wk*gRW|CG!wuf`h+7_qEo|UFwB84M+7Sem-NK49M-x50Qy4l#XY<|LXJ^s;ou` zm3lD$iUBMxFWL*#<;R!mD6@$R^;PU2??GI)^>u(cTV~ z4fao|%BG7Gbwqe-1R_~lXJ3WjKuYWBA(I=>GfmXR68*H*o}*OQOBCYdB3D2*rN1O; zDC@a!idgoA*<1WQ_uL(PUsJzT?zAmW?U6^z^ytKzbcbCW7#l#6GP_B$?RHI^IbWh5 zriNc>A(K`R(EE0|i+axOF=>Q@T|J#(FOos+HtRpd42S+gL9=A>})^2b+eay~aAShb2wFdS73hTc~<6}{I);UO6CW);E4pC_5Se{PpnZ;(a;s3yctzY}CzZPP# zxN3A9&vA98o$y)R!2HS_Vw4N3TP@69ScGnuIU3JE=OEYN5P*HpvLFH~3bafLv3MLl z1)FOVMa(8jEAv>LU4q%N&?$2q+_5n>(TByEXPA}kp7k^uO&$$YEA)M$s2$ulRr}oE z{>A5i=+WYDeB_@*qK`X}Q-d76tExmH=@AqgbsT$P5!J0KR!UBxzR;t;j|bU-~=2U8D>q z2?_KHE=`C?XbvZGK1(T-6jrB2s0{~X^b{m7mog>7*^f~#qtzPcVS1%<#k*qPls>sL zckxHMOZk>te_O~8?N_T!MLK)YaN7o_nStkSmYX5Exu)&Afug#U$8Lju)3od`Hn(dB zZpR|82cm14j;kn&o6MwKi?5rO>$W>hx6`iBMH;+gBD&E;)@?KlcVoTc%3?%%%S|_^ z*I&73>CgYbz z2(3vPf8XsQp5+jLW5^1_Ome^ACRSuGH&t zkL+U~{m|pOuEv&D+q|Jcmqd*AiSwZd>p=t;Cvv1N5WFSc_y|jj?8eRxdUr4FP~%WK zIJ{@TcvyD)jQrx~?M}O0DVCPM{m6qq|9anMoqjFvF@KL3Zu2Wb>_M6yKkOf%yUF$@)X5<_0 zJ^P%!zy0lR@8^{(U;ms3_`Ow3j%QyBb|NW5+Pm+z z#p|{H)$Pa~+sCbuZQH!J{KpTpKk%}{j{a`n{+m5wHzQtg{oJF+M^(-qs^c#iqyvs?A@pY?}pJ$p;;<^Q|p@9uwRQ@iGImU%n<=6#%&G#j>S zmyaJiZm#=7Kl+j9p+Em~dv0>Fb>ZSg_gCHk?|#pF?XlrL>%D*U?^_2C-RQmfj@z&P z;Gcf@z~q_gL9cC%H=Fft*Kz#OuulShOMJFRd@QQhyRlRbx9zlA(r!EAv2Cd~EGd_p zVsYz%kWYMGe$T)8oHp;)l2)TB&88y`&uz1cjvi`HTWp^zEgskA?~dhc7(f@9-?;iX zp0A6}+w;4Y2#<9frxElA*8)NBWW0Ca=!gF3{m&fx#V?LO_QVsdkNw%7d8cM)+`sQT+uzyLKfmSPcfRItKL5G5&d=6vJ9X+@s=Kd8>P=hH>9Vw2j##>g zmRCX{zl8lZ#^5_-iJt{>Tw8)2F^uC%xmuS-oyXcDm0V47#g>GFwuIYt))YhWU(;zw zQ;&eh=5MyNniXEZCM}oO@_MA@X^Eu<#)>U0+~%=*l5*?ovb?mwB6y@;uF3Fduk74C z&h@p8k+*Ic&-U~W{PZ37yzNWh_`CbRW$y95`+WD@dvEhs&Hx|&;urlNxaXe6yFU7{ zt-t?UBcuZ4Tl?J=qD?Xm%Q5S`K_V|O+;51cvzC=^f>>ZOzEF!Lr zVXPX4;cU1KaWJMY;N|&_acQ>4m6J!Fk>!OI(d)>qW!%vn19H=?*SNu;?Z%>UYvSUx zFB%HVov(OhdtvI*cmDI={r!LX%zOXn(ucqFCI1KB_O`~ai~;Wd+E;w9f5V%b-+1KW zD{sAF+uuC)(E0v+-F7WI*=*GvFZb?g*YUS3nvWeRmd%cUHjC-7@DT~riV{BY zh(ymkA=cWW#I2T$##w9@%V9@0*yQWkG6rE0H5A}KJnVY)oHr)haS-bSTixou*v>lIrA9lqM{^^3)#sXMT3uUOo)CmIuPE-hU@`Kp8` zk4c;z-ka!>nBNDGa%C;IB*jV%m*ta2vt^#I4xD|>56id^4X8~=V}U|Do72`XyWi>U zlhU;ZWNll&^VOK*9xoH;%5oA0>iO<()~C*i}tH%RaRKpiIxtzv^wTea(08BPQJYOT+~G`9ATtK|Ak%-ygL8YGQ;Eyq%WOB%lr6d_o$oTkH*)~23d>)ha^_=t% z_YsW82+}!;#lpC!0+)bWaxBln(rUZeta;w`mbd&`I2!%t@BYs3tiR{Cf7^cQsi)jc z%Y=9A7`Mho`poIM^L6)p@)t*E`{RA1Ak2mj+#&q~os!Lz*?mQcL_^Z5^UykQFoLTH zTjosz7$}gQlm0J%T6!}}oP?N^D`iP%*CkgeO0(S}Uf{Y|;5u%{WN{!Obul)E2uCC0 zXUp2em3Sm7{zynFjh0jjC1P>Z7-oe9tQU)%fYwGfK=8FLP07$gSaQ{$$-@3#u{()9 z!KgWn3JCJVo_$wsk>&YCIdSy73=R)VB*clsWv;H|I8|PIbab?NZsJ1!>)!bKPyXQ_ z{K0F7$H%ShJ9kETVFw5nvEah`%cehzE+bqdO zqUEtX|CCsn#EaMAwJMD^Zh^=0eoles;nyu9OX6ba*MfW5dY zJG~|j!Fa)`$x=2iYs)2BPG=;M3}Rg3!NqyWtaDsAMSFIS%C(2~n@y3#9gPh4dy2(^ zY#koiKE1wv@_+l-$Io0hGUA(9T5>kQ00HYAZ~wfzRyb{c;r{P__>sqt@AXD|oA`KK za9hG5#r6RppWg&Bi-q_5f&@->7?9D!i3pu}Qii|rUnRP}AnOFZV!e*PuSgxA@4>fw zZQBG_#p^Z;VE)|J{6N`_poCc1s2{i*2!QW3`Layn=Ed&^I}@C=kW4M*aAgjL_ee4o zmKLX}QEf<&>xdG6Y<6^@Wt-P4#`zfx@_xJ?M{QwlP3EQu{Dq8!lTjHQ>K9GGyU9&J ztg>tSsC97fj^^a0N#DQwt#|u=^bgg)eF-|~g*V8HVGZ7YGljK{+g#Mj&GxVf2glE=M_Y~9B12&%2B*sE#T`ry|j zv~ZrkTcDMu38-S=q|y%xF*hg&e=r~c45`r71B?nJlj2Wx%38H09o-4Z6Kj?TniWn% zkz7Ke0rAH}GQVDuOv%BpcpVm67d4oQ%WAd>RP{?4gXbKZq^>RrHb}->lXjB#@P=ez zF(a+2BO`mpWnj;!Y#$qvy<5j5jIkT_mUML{rG~4^6bgVbuT?Bp`qQP-kACNWc=zI~ z@4CxAckZ0~f|7CXy5|$d_kZ-GAGzk@#8j%<^fW8{uSk-#nkz|qwP3!hxS$M+KRckB5a%#Vv^kJjM`_ z6mf#vtF(D+EGp?ri=gY1{=t;A@%b~0MV`ZH6CX5$%j*YCp0Ko5lTx8c04K91%g##} zgOMTQ4x8&08Ec2dCa8y_4e8&~Nw{()Q>=)G#4Q{NN_uToj-8*7ul?gMpmAMSGTuYV{8QemJ%E^;Ik;SEpQUI7mCI3^(0IzN)V&1VyI*)q7G_wIYbMca7 zYm4IZSEV??34VN*O;lv1DstxRSxJ*UkM;Mkc|206<;j*SP$S-P)+X}4_r1^g=jK+= z3x>9;Wq*3*hj~#MZ>BXiDy%~y2Bu!x}+evX45lr^!QOJ7Rv&vlPyXm*IKd)@7@&zi+db0 z-j}9MlEGa)a$xs%aR3n6b?B9WK3N43wK>^6eKE|~UKalYN*nN^+SLHdoyE(D=r4okI zVCYjqS&NLN4E%ZwszFa< zLWbTEmFBmW<-#Lbae%K|e`}xEyE@>F*es5JquNG7mfGJVJ%zf=oXyI$ue(ZYPVf2? zOJMtwtaFMEAKoX=oGXdaSRvxu%34J#oYWxshKHh3*pA8U;(~d-L?<)`ZqMCRRRl-X z!|t-Z96PISs0RIyO9vn8iO%)4E4IxnmFOc61a_( z5>BGmE91XAAj$J0g|93~95)lYIV#Ro_~7zo?9BT)V1G*~3s2Z2a9W{hkr#OEfQ;O+ z6PM)yg6cBCzD5#IBXLfx2ez{)Cni?p#K|dn;HjtO$d8JHL#L_OV&2Bzr!I0&j!%CK|vLLD(%-4AA7_ z;z_d8qAP_(f*u7Ig^|0)Q?hG>-5mk()T$sHYOuh)21sZtyT#I?ItiCU0PzDa6XS7N zI#LpM5Elm8IA_;o{OwyMc2$=MF3w|9%ozab;Sxjx9x$}6gkRkRApYIQPSlDr?^)g; z>tfUv1b1<1E-#NAeL^05@~k{{c3NhDlA5nL#I2FuF1h`shoxu7xIDTRFh!uAWLbui zP1(DH5@(}I9h>VX@luYe2)h~#beIj4U_OY zZ!F4x_~a8ZFp!W@5Xu{0bEEWx99dq^%C4p$poH zlBIw1$H(Q9U--UUnqTLD1Y{6oGte86t6A(F!-H~o{~qyEc^lq2z+=zKlaFP^kLy{O zS(B0Om~0(^I;XZAq|8|Wa`q4KyKM(#dAZ2_hfH>yo4BjGj1K!H z6>ZD;<27h&OP+kZMYanW7)Ve|g2o0E)M~CVaOtr*!pb1yA6Ungrr?Ba_iu!L~hHWS}R8Q78<_ zCK^DC8!58P?r;cRF$VbsbPU(!@U=;qomby#%Mb}mB2s}eCP*sYdq_RWXD zh`q!Fc7YXR0sRJ@#ciwytN(q?UdC*vuyrbqZWlM__lwB*yV2@31;FBUCA-h_Y#n}uouL_T4%V6iY zNyIc3Zk`L$Diz0EwK-WB%H;wqiOnf?NoM)o@o815gBMRM_oJ*|Hm&Ag(W7 zgxqS$v8lYQN1&Gr6-kg)Hkw}P8}>=0yC#tYMVUUb*hAeix`%jMSrcz`NbdXQf_&ot zI4L*nJ|wg2OY-)&{ySM)U6b*h+o1(k41MsC&z)xXfs%fGRO%FiY@^V1OaRt}YqIb$ zly=FGNA{95UEpMX?u|NWbfeYj`;ech{Z_^Cm;mvxuq5d%LC%-`1(Kgyk8%Q2P(=*oH zA*(F*!Q_ERnT_#3+mQa|+hrfv5zUIxQ zf8Z&(`?j0p<~P1wp7_*X$Qz(D9-k{4;_uR_6Sx{%hRG)mfK04g_nHMz>7pjY($?ZZ z(3C}5mbxa$x9hKwQ$PKl{LTKn{GuZ%$K%`NX*({j*bX?L__Ai*AQ#Ro;?t>!u_-z_ zZHe}KWp36nyItK&Kg{l)Jwwvdoir+K@rC6KDnJd?C5XdK%>x|V&KgpV(=!Vapi(r2 zAHTQ?#VbLHKn9skAdOF(Z_ zkx8p8 zB|tT-QfnC`)Zk}-Uszszc${kop+QfyRIS0u9pBMUylQGnw7D%xmPK*`p7#b5M*njN zJp7XIevH9+MY+~)l%*SSR2ae3T{i&jO6x}U(I8Pva6(!JhI&mo5u7TXP$$L+8oj@b zABzUiZ?0UBj-F%kvUj~v{_;KVlu!J|sEi~!<aA}66X z9PbLj0Rfe9Ij+K6XmTa+hQ<=eX3DZi0YBB3=Sb?ii-oB=4wE&Ch)>Vyb)N9?`y#72Nts^@hkg*Vk0zFil z{2t9_sxQdS)dG5mb?nBPrHxLO3qO%R`OROGyDr==JHPxTxpR0x&VkL}ar>CO{pCAh zDM|)r8aJkGG|B}Li=1#5gdf~eQRR!AOk^!JPN%0)xR9T+oLw?1n6!j zdCFI{Myg3}LH70}qzZLAlc}Lj_KOz@Uj|6Gy6!-RV!;_hRdn4ER=FVGV96j$$vUrmcu=_Aq%9qGn|y&5Oqycs7IKq zEl9=)8w_g;N?g|Ga35hP1c)?f>6S9M{tdOB(`uUYTERePms)b*`cZcM0*O~k7Llk# zDcbMao)DYIw;itx3?=30kqNnUX-2L-utl!BZl@eMIw@&lkfFle4KdlK89=Gm&O{gw z(?TnsrKTz}wO*i5jzBh>l|B6_Tth_0_6>rF;&3)=vQ8<`Qk5I~>yh(CIXYLu6(RWs zt_}h1ZXD{BtC1Dr3#3A(=~Z~@S07A41p?#NYXWlX^#p7!AX7)IQ>GN{FHix|Wr3gT zY-H&X7)qY3y?|1KzE(-3)&jIxk10SlXo1LjPh|YERtrmiha+cCltjA=21h!jm+L5! zI7~iiHsz`E?S+U z)|zqQ@om-weg@3kix-JoCF%4x2~-4N_?pfzTAsK^&L0D7XJf<%xS&={k|a6jNZ3** zCgiuT8Y#jf|l|3B9nXaR2+a9+PkW z^t4>NXPdnLoo_N&zHJy%m6(@+k!%>qzt4PaidfW1Qi;@McH`d`XY$ZXGZdWKCJEDx zU7`k{%&KxsS>W@}e*TOczWESDB)V4>nYk^)4s2dUjQ?zI=IU*z304roF4EL6MDhhG zq-DF<&ZPAAcEa`4<hP| zyz@Xr4s>cIs$^W8R?2-*?q0iV^s&mIm=*Utm-#xXoWphf=*iRaAO8G)7MvYEvnqGJ ze{<64{DDQ}r6uwhro0VK%hB|$6{dEJt zP^GLL`Sv4eN#}j?+Sd$A3VtU+-f;7EQ9(N^XD+0n6yQ_fkZ>H3V0)xQM*JwW@6_U| zycCET(?xS@Mkd%cEv5}4+_gNH3o-6x-M=mZ?xq)(_EWEYgWUS^F&W(vmnwWyiEKS+ z6nAx55BACV8fxeGf{cs_wd+;LwY*6kyqZN5zZ@g{AX$VoiqJ^X`Vt^h7_xF3y9rZXSzC zH;RaWdK=tQ0|3w_klG&WIhBTo;99R#Wd9iC;9Iq02E}t#g#r<-qb#eO!V{%Ixl{;Y zlr>^cm6%0or5lM1g`z6%umobNl0#I!(ZrI3m zk|Nvbl0rob`fK8&_o}aNSUL#A4PdC<$VnFj9ZDaHCQUh$BM6eMUPaS~c5H&e^1fQw!1MkE6Vm2puwLwB4lcFO5F6n8UI62q0X(6xp^Sn>Xt zQA%WUEhI5Db8jBXkP56kUX`|Ua$r`=XlQJ0F64wD4Ah1xHlg1%c(1QyP5oi>xF9Wp zo3snx+)}jysD)q_j?v))EipgeCWYssY|?mi{98G;O)j*rCnZ}(ce9JUh+vO^9vq`C z2>3WbHIX!3Dx=-NP;MqYI|qu|Dg%gf0&U8ksF$ByD3UZ)WDE7$Yx`WeaeKs|8tuUJ z7*dS*Ku}yJ-yGYaa>gP|P#WFjaTYQ7H5 z4Jru?P^%4rR-%0>BWzORt&t~?$e^6)L37#P2fXWnHxEUPj;4q5V;AgW1h>1oybjb1 z8udaVfR+ar;DWB2NC8_YtgTE&LaiPH1s{BBPQFe~@uKZv`Lnm~l`UNnlMj?|51s7D z`=6PSRSezLA4Pp3vON``j7d^QubkrMB615f3gakfbOdlQVO(JhmHa_x(xv;`^?n_|hR?|Ncoi zKgS9oeGJhfP;wrVakB24U$hm5bqGSxBNr|<FJ`p^5@0~BH$)9u zcUJ{cZe?kSoF#8$_paMCjfU!mbaG3PxfMChPs}uzO{|D%H>Z_^9)?Prv~RXNL{*Ogt!l!Ez0@XGM(*^X~5a; z9x`tvG-qi3xUhUmb_}Iu?`~R9>2q47=wGWV)eL78ic!a5%mK$vF@2pFr0umiY8*?8 z>&D#}%E7ZSaYYf3w!JEAR40~bQ;70on`ZzvK_s9W8e}Aax(tjA!=ux+m`E~xWDThZ zR18Pmwat7OsVgCePgTx7Pb;b7_ZkMQRw{=4Qp{cDro)J2e{pBZ{M}Olr$6a%%hj+l&8spO;CiveE2--08Q*bQ}HgJ?A$|#dneg? zkrM>0JU6|>=2$dEdj$1pSEGhjZ?skC>XYS_HHo7?>F@6}4Iy&?0gxz4xQ*^f>vFTK zA}~Kliw^7I2^4d^Lx2I|$`V<+2LlFhFG0jsZ4gqKJbrV%7x9xAozGvk_I z@N^m>7KQi%P0~SXsUg!^N?rA`a!%2PAHJv;8OQ+hf(p1BWev5+kZ|RhYu>}XT&!0)B|AmRi_=mVxr*zdi7zvY${{GjB!p#L=h_MtK9tiv zy-EIFG{4V5eP=RxGq<8-D2Qh#cDc`c=!WO{6=ZBJ3`<{sw;VjM%g_>9qHOEHBrZ-z z_w*xIiQ z6#3QnYH-YEil+O;^6Mx!GHTvKd&z>~pe&?UOg$nL^csJyMS0x>IvK0V0ygNtZxTrL zy|uYSbwS1DWtn>Fp$+$_otZikhu^P}IOaK3?RM3?PIqTYu43%X81kELPQEU<8J%Wr z#DLdx$AcYp+Z)SnHCYe#zGKfVq%k^AN;q`{A z_;_uO)4+RSlI95dvPO{kt*xxW(Ih2vYyru~vMO-c$q2xfb=noEh00biIFDbpO)6-$ zHbi26xO+8*?RCs<)Tt*;!x`CTadmxc%Q0gQ)Bx&=su-lbaE?M;CvhRksnG|K6%%|b z=vPO!j+$wK3~bDu+cX0(g^AwYyj)6WWqNAaEs$*G zSdL7Cu`>kCDAh18TFyMX)@iG9x?;M_)c`?%#N2$A?!`8+jwD%r@Y56U_LeL;c~l3? z@PWq(kkl1{gMKo#YEA`H8*?X+R^vUGxaC#ppwEmN(BugyWBjz+E}6jIwtS{@g|S7v zpSlY&W7>(7R&GMtm5X(=DH5oq%b7_UKK4j-bj*-)B}Sulb#~)^dg*ysCRd088aCKc z{pr(oDtgyk{lX6^h4IfFQSi%kNw#e_SE;oZxX_gfSuo|lGCRMZS{c;O6vs>h_0pP( zpvZAqBrPxM?kf=ovP?0lutNi3TaJ*q&ZcvwCwO%}FUv?;wxi2W0y$UKXnlevF0N|_ zJi;jAL!89PwF4%bHUcayun>?NrMhuB>K#M$1$cRk2Kz=$`^z{Hh}%@j?DaWjltO{m zjKReE@%v2%g;>=Un9u#hsj{gB_fXJiaZa zipf2;yJ<0?O3GTQw~Cg{t_x@m7@^wE~U`RISR+gy!NF({vXOuX7Y*3V!*pV@gT z^VZ2JjVcUcqb5%uo1rtZW;8uPh`bdV7J?rJQ;F5Q8^kY@A&?d(grHk^N@AQL(8>#ikWx9JgM`=hLxJ zTo%Yg{20H3h7Df_y<0j7i=)~ErHqY5sfIzo4MgF19HS-}K;RUkcHF6?7p^D+4V+-m zUbBi5qth`+0M5a?dpu=>wd;n3B(QonU}Y2WlvjOk1yL^5vA9k$!SxtOqH{>m3+V#t zLTTYhr?&VohEfe4pl`EfnPA^HLXR+TdSzza&`B4{ZOLR`^UrHwC(Ox4m! zk2z$B+I_z`vj_~2$;fDj+t&+>&1BQ$GPTV(0qzGs_)^d0qvsAXyX&pTyrn_X2-hdq9*K;S2(tLdhnK!$Wz%@+WcxE;$mu7P^zGXnRkj!Zi zZ8fR}Y9h8XP?u34P|an-Hfq(&Cc{=eQk$63B8Zkro|<5I9fPK_lAeM7=b){9IR-fF z+*-A0^qi{y2?P{fk#|gFxTXr%*OK%!ynZf6@rG;XMCy1PLqSwk5nVRmV1{8&`3%Yr zI(mvwDjHLUhq~qIBadBNTD(*n9et_ipF8&WpM3)EzyD_@-v97NKR^1ayZ#M9v)9vV z7hN4!Q>IYf)RB}`xE+-SvZJfu_%=Z`%}&;vzxKLYi4XW;vgi{RGE8|Y%f2o;VDb#d z(~*<`o$Hgw9nf(@kkk%HFUgRpf@vuV@O^x)7|Zp&@!fK}~! z^b>Fsu%bGcOp%Wny{yx2aXVh-H@FzZ=cRuPU;E6Nd1|#JbPQKoUCtSnuV-lM2AYB3 zYgKYO3lY(leHrF~fG85T8a2~Ar)VVEMNvJGG(E<;a0OySjYP^~*KX>s03Y8Vp z*r!q&ozmDQ!)5-SQ9H!D{L+i_nS#7X2=KEyS`2ZjrgTGOUpDD z(m$}8ZExQ;Vpq!f)5}YXPwUl1quuTcZh%s0#l8LZ+pI5r`RlVE`pCzBI6SgjcPsRY z*X?8ghVHluNl$`$fp!mSHeA)AO3aGzf}!!O5=Z4cu~3%j$$68wJ#{uCfFE3g*SMNQ z&oGY-ZH!;Q6|_q5`7JG~Yg342IxK?(zZebR8gzAnuFL2#)$rG=RkK({D1()`1>97_ zyspkH_2T+mcqy%*F;`r|(8zHh=K3;?*g)QLAuTJ57a3(40#Ia0BFh^I8N0p->})VV zR=YI|g}l4Inz43_kI8@e)W?7D58wL6>}|K*X05HQxSN53+=+=vrlQ})L^0pjkDWYw zer)_&o5W1(gbY~n%Lr}!so2I%$D&E%L)<7Bls%kZoKX}dPoJ1)T5S%MgkvV*dMVUs z94%*-O`$!M=)T17QXmc}S$@P$8T@bsQ*I*svx6R=?Xo);7FS1GJ(= z^LB+L*}$ei>}#&t zUH+f`8RlbJ)$FJbZp*K%YwcIO2+cOe$*Rg;k6P9Hn*;3@L3K zHb(Gsn*1SEUMu!bf$?d!2!<~Y__IwHdyrV;!-eVi0$YhGZRFPue&D9la!pa)w6VGy zdLm`{TI_VaHif*sgFB4!uBkJII0a_tH`kZVO%u;6Mt)Ph-ae#RCy z>5)JHosy-fs$uHe7|G3LGtQ0I?XzEV*URO;&;9k^oxODSD=)h9&d1LkIpRFK7Mp5- zXVcIlT)@~^@9IMjKUGgJr;E4VddCat;c0XxvGPG}^LSvYUq6c=U`7&0Kv0_eB^davBAB2l%!dt zRC1xX9S)Us$8FbpZn*B6>|cN8zkcP&lRy8?P=Ei=pLpPbiah&?5&uF4FmYskJzwqX z?OS>3>65L89(rW{+Usr%@4f2A-b&4Dr_(tL{-^ErQpN|TW=V#YGgbG2hi6;{?BQlx z^iwoZrne}V;f&aA(8n$V_gn&?TdS5`J>IP*bQ)PVfsvm)zQ*s`2u1ji0oX~mUMagQ zxa;wG`L^BJsTp@|VTs38-CCpSmTA=|R=C6!2sCwiTA;HvzPq?cUbkUhzlxl%O@~Hj zs@DZjc&T`t7$J93C0kRVw8oHIl2W`dIX$T2}nV4<;o8^wS~RN~!sw3<8V@ zZjw*bne)ti=8YMm&IZMzC&5e4vB_+mmLc~7I{PggF#|ueMOFQDfZ9Mf4xN$7nUP{j z=x868`g2vzwLmigauq#Ywgz_;dy2G_vQS=2p=yE{a$x@rkZ-B-+}z~3AN=6kM<0Fc zCnwu2--TE#@p!RF!TRz&%dgNUXqakxDwSeFS$QwJc4sOX9~j#*+`oI*j^S$$9T@CI z7!(W!qP2S4zBF6j7;UU$?D4^x@N5LcjjK}5T|05qce|IVUM&Q9Fob?wiP8ihfFr#uep%Ox(br`uNM+xXno_Wisn)6Bnlz zW~MLAO-)}+GrW5-9QL2D*Mq0q?LzDStHpmIK11fY3!^|1<3_jCYE>k#(h&($w_^24 z*nCJzEd6{J_qmI(E+F!V3kc2ekqq_iDXM2vtyZIW`SXPgc#>b$5Ak6!EZ6;~TW6;cKYa;^ zv2JcE0m&6~pRb7K1^@E2eLh=1+9T(>9jlI0&O1)2^-pVMiTqL}_|5%bHEXj!6zyN* zeOQ}#6V|`7g?Be&^H_4_ORjvF=M@87`MP3&D+ajob;STz3~=S^iUF<|;L6t(1N{H! a>%Rdf(x@o_(rW7f0000t{;%#Ihk!(1VI5rSxfC-Wr0|^pYKW30Y z04ISaFyx7YSQB|-jjVWVMYgQ*NVG*tmbjBmviGIB_U-Q5x8mCjtuPRar8Jc zu%pM(F zjvhw_cJw%U92wXT_>nlD{G>P+E_}h6nVE4!p7`!RKk=7-^EdPHlziV#^r`Q@e1GY8 zf7Qnmhwt;$cfH}x&Q5yq;>Gk+pZZjaf2MyEZin;N)|`^W`N9_*cV;Gao_x|t9mk1} z{N>-A$LBx)d2i;UGtSNzcG8c2^rMOEy6KUDy$MG3)KlX9e;d@-{Qu!ID~ogU#l?Ch zyX>avtmnB?j-)x)b%G#p-9jNqJtuLBc~?B&n9RwSuJqp==O;F#&R!!V5ZLWy=dy}|nK?&j)0{P|znz)Qn> z?{1o=-q*kWb?1pEo{0ZC8Jqvt!<(fZBNZ+z?xOHZe(_hHt$z54<;QA8|NX^c<~^B= z_dwu#OZh@JS1$90U?D{2JJzZMfmt{FnG2ii+4ao7bV*dXB-|{o&&F^_l zj5mSZNf?^r;LorzEL8Kw^&I$Su{+kFbwQ>@+B%**F)lfL?=&&zlc-Uo<{Yh|@l9z6 ziGF~q#>0i}9JkA~kqXg9y{ zwXc8cS-hrs=t{r#HJ|C^$3FJ4_$Y#X4-a}Re5EifT}A)&x9&{6{dD0+iv{nag>3MF zdM!VbgR>ruL^|!3w3_?U>9o@*93`XCC>;*^dgC=Z;AY2I<%nu9D%Y%8{9b>y3*L3i zLg8ZK^CpYl9*bGsb}{QaCU+Mx-%Gz7^I2T?QOrn&pYg@0!}sv8y3N8(5069N($x>q zW7YMHXym5mdDdpkA~pvj=5Syj$zM1o*I1+e-9{dMcdcQo!8qn`G}0u!y9)T+L?)l< zeAg;b!_v>c_XXxPlVfr2iGGu7ksxv+Siz8EbAEh2J~Rx?z3>A@^Q;sK1t*u!yOm1C zsn)83?~*U%rQaXOE*|~i@abN^|GPJCuKwXKec}_lHjBX9=_5Weu($z=0R6eBb^87v+bH!_hRlhr82 zr436B}_-rgW3nJJw!s z4Ui$|GeQ~*orM~gtH)p*gsYK^jsTgTbXrY3FT(3Gno@=cbdVlb=l7C!c(Z7fbKjw=T7QtWnDU*VS_HWU&aN+Gxv5&%Y7fxqZhOkH@YTt;}iymg=iLfBu!Lm;ZEgZ}WeIF@9;{ zn1A(Gf0Za?aumV-GJxUR8cUwN*8fng82ppD8UI5JAlI(mNp4)fmh^iaFPpD8UTz8t zpoRrhkV>^I#iFMRKSIGDj$-NcM$&FEpN~wrtqUlUVXrUaKD}yIiut@Qo(P`Rour9) zmkc8rzdTPD2J00r1R91$Kqt{O#}o5!dUh`xh==b1Jv!4at~NK-sHrtlI;rhUdX|g< zcyx!zArtB07zbng9g)w47iVO3!jS}6s2Lg)(324suPE?uEC;n0LZ*MJSZ;Ygzn zqcDz8f@}#vJTJpI))W;bChD_TQH_)ahWBM;V#suHzIc{|_&lwj)W8ybUsqE-*IX-H zLq;MxCdWoxMpGKSo*S;?xIaWx9?A7<*QK?8aG2)#eg;_p92ru^NDUJA0g-xcaYh!8 z&B%%4%ZO%qoa+cqv9C_7UaLtymj&<>A!FH+_I^{sahT={g?MRs$vu7c44tvGJME`i z!`^@U?sJbm^%vLD-}(sl$xnXLh1X$tkAC+n8?zT4s{h)|boLW)_Hyasjrhj3D>4qp zUSnq2om+WC{9F~00d?0f)M$|jkaobR3?k;Jk#W&is(CD;kuCt{`Dx@~0gW{MV%lOr z0H$AxY2jx_i+-kkDQ`XwAn+Xhj4|Gy2$;_l&ov-HpoR!r(O8B?kR* zE!d%^#n(BLveQIY-}7yxGf`CQNNb?X88eKAsEPM?cI9AiPkQa1}<=}Pf)9saHCTH>g6kPSX^A9}WoH=*ay|cE_-fQjugZDr3&d*K|#}9w_!_nWm z2=?r=&jv8A@JIi_Q|l)cXu{}`pmM_mfntKkdyr`k*M|| zI^~+ijv7`pWUy9_QO)7Z4o>ygGd4Incd%)Y(FR*hN;r~3w= zu+Vo1hk0NkUqlshA+fQ9Jb{-231`*PvzLEB<3~*qedPW);L}OZH zZXVfmP2wpST(u%nMr5avpq6rTzDDpN(`39Rg|kucg$0-bI>z7>p>)|h#JQJ{vJu#D z4I;?;FQGF*YRBVmb(+%ev?NPwL;V%wnt2*Y6LW6(>?j)Fb+RyeMz?0Og?m-T=a_3n zfTY!e!$b7X7s_&g%wT|YI>wG9=_rJ3aveuA7vH2cktuXsG0{uAGuj-b_w{j8(S+@dG=k~x z@f^E$^xuTf6{=UHFR-9V3XJsl58?6DMC6#Dh-1>ad+%5x=>&JT zj>VjFe3%_zA>&xs;EuJsizt;ZNKzB=^86=}ln)BO;|i7SHwca}&qZ zjGAI+2&LmX`wVoxh2t&g0b64#*xuij=KhWh;B30h4pQ>eL_VafS=3S8UPs}0rn=38 zj@}1?BN-e=v6Pn_j;VljFq1XV{s46w&n@HQHE5jg?Bn|5eM;qmp1XtdD;7%jUczrM zZ60VzkeoVmIyrsjjDO?S?JL)A-Tv`U{P>T*aleerxnE$$@BG_aKXUFw;}7O%O4%2l zdojFo`)W{~S`n{w0v_4Zs9|aVq;?|%XDjMuyROW<4A5YEK&dIXCx`+)rt1>0$Z9AOKiW#aVE{tNe{@ih8de^0i%rJX|t@wur`BmAo*)=i1)&uiMz3iD8`Z}5YzoJ z=_3!ygXf*XB3!B!wSH54-}Zp?XQrs>grea}2VloRyRXqWwQ)@D>C@72w~LgKj&JhbAPMNt?RHz5yL(arV}M4A{)UElaZT>+SrVVXC67k}Vr7>~g5gF7qMWZ4Bz}h8BHM;SJvMy0L zIf^GGi$*$E)0&Jv&%ooU)^R?)xi(r811;MQ=>!=gjfy?8F(N4cSd05oe(4+Hy!b82 zA(}b#=8S|`!bBT=_QG(qWq9K}7D@&OMV5xAbc|5@RAWTo-DcaQd$1NV8u(#-)Gmpl z;s%tULvbuSBC+%-h5aW?57#?1Ds>d8W2w$}+XE)MbW9ISor!0g&*|OhlfCUd{2OUI?*$xL z0mjzt4iwxPAlmN%p=5++6MN~{qO6=eh8k^0qu<#R%M#CB znI5!N-UCm{Yp+Z8nXgJ_<0eW9Q^x@}1`;^dX7GFk{TsmHE3-hsV*kh^{n~WAm`YKW(~~LVyPOQ z)}5Yrc$-bFnrLq<^&A@kjR6umkLWUHrX)RoQsRft$^eUgfF2rIG9eV4) z1T%2lwOSdCXVzT%+K5)<73Wc|*6?|4I0RSrcUyqwdzxHBTf~ds_1NPctKqLb^^ITnN5A}wzxiewne(RBTwlHR@kh=te{R@o$+O>nCPAmz z%{JgQ`}Cw^OYKp1nqfn*hm+Xm?_q7hUR6#PrF!JVurp|a5gJO2Jg#LGFufq%jTfFd zJ0ng8X%N#F=3I#-?=po^!?qD2OiW}dz47Ogd+OgHYN0Pf281oJm=`G-T(`*J)+I+~LwCe9k;P82|*S>U-q{^Y_b z*_yA&mEA4r3|dmFSJX(DZnL*GLKG{&cxLA2w1?J%F|p37VZmqf0Ssv*n|Ic6eL#gm z3xeq!L6LH;0Z^kO`+F^<{s3!oMNR*=wl<{-;{r1q#&iI*a83fG+ar7)TP?lL5K-y? z5f3eq*wktSY37z@wT;5ILk_?S+cYlzJwG+0Esz9=*E=73oOBoY=C_~w+5h72f8uj* zR!!!;S;qC*|L5|LTsX7vdl6Es=f3kylFb#}O#NYL0!lZ%CEqLzo7x3|>Hj#^b7ydY zd4s)44WbJ#Hcesnvhdm*j3`=_5mu3Q*3sXoqQ8^Daci_t`jlbJdK051w2j5w zLNDw9#lLGA?twQsX6Mk66ahb1fcE8z1<99+QUc;v2E&0M4UZ9S1m9y_{5&IKItq5H zqp&1h%Y$@mO&Qy|Z|T$t?bmgY%8?Pjd~9ALi~d18r&(Wn~RCi-vIxk;}E`M($-FDP4pVe;4WA4${Cb>djWO zE1O$;vc9o}_h{i5QvGT+n=(5)gXmMzXjm+lq=9HUJwJm;6)5spKt__nu=Ze>sl2UO)f#Q}vfBrEK<@Kl^%&o8SeFhhSXn%S3kxvuUcS2Mh92v7nuP zE)@2v7^Rqk(Ot7H^K9zFYpJa4C^ZY396{6riS=B7yV}R3k*KBGAP~wg}RNXX-o0J7msJkjPZWS3>EHdeZ5) zr3=(CRR(|7jCA1hb8sFR7&V_qj0c;G_IOkBqWkAUa2wn(3$8@{c%TkcU zH861m6!D+K3c*n3{+)4nwWEd^D>~W7X3L)b93WggPVA zh-F#rWSqmJv+iLk6~F+8qtPMj;&AlW_RJK$$Lk7+g0<;}8txdiQ3+hh!eT?Ohti(N zroh51qh6`txg8k&E*593&G39Z$q#x&%)5o-rwax%!*Uhbcd>`ro<&eKuQDB$KIVH%tw&$XCla7AC;e;44 z9K`UFL%py83AwhHrIm$aAZ1T!P$qI{WFU8tNTgkz3O>S613<*NtyNk3wf{+`0TWNb zTi20R6_}7Ew*E;SJ1%0HzI+U@7&`+%)iA7nIx^ANHN%N|+@xP|KoOtMbLD62TpD|A zzO6NJYE1uz0Aa?8PNt?-vU4izX<6HmT(yd85@@7mMylLJMh4bjc%wY7R|y8gdZUjT zC}O=7g_@o+V$j&L@Lt(Tt-_+s^o=!T?jh<%+RJkeXXD7+U_wi9D1o7OdHHANq(57i zH`-g`oSc?NKk_6#GN(0f3)kiISr53Q^^&msT%a~L@hj}C3msei8B)3+# zHPQ#T{|`QRLRMB56oq8gN9VJ;qsgpXYWTi%OqzbuvEltjOmQ=&ehu&3l03kw zb5k{0zul6~bJykElW?AR4Uav-F}2aFYBcIn1;noPAg%#xR$h++92%VtoogS?DTDLl z@i03%3F2=9^&IOmazb;+EY?83y7 z`m=SQjt$p}vw@r7GoD{LC7Ww&!POf#qtho(eEiDl>L1}A{mUN|vgrRHMoxI3pM82` zcB&G5y3>s0;>*vw^T*CgrnaQve=^l;xP)Vc-m7J@t;@LZ8C(orxB>bqeO=6UB+KO6 zX=r*>$^r$0?@{5i4{ov~7$@Y}eldXqyp(uoaLZ`L8@Dqu>5Nt97~WoLXjraY90UVcue1SL40IxwQUILE8f)ajp{Y0K%#|6rH)$TdsG}IBF;Hg$ z=ER0<8>XiDoXr$a$Y-@?WPgegId3BX|L&90MI&Y1iltBl2r#pvH}lo|I% z(E1O=-kps*IyRKcoWZ|)+5;QViM4ui(%n7pMLShuaF?jxw6R& z;#=0hIM4N|Pf7BQmD;Z@&1R}!|Jt92ekK=`7tSj|)S0k_Qqf2?Kxk(@!GSxCQ0l>R zxag=^5a!v?q^l;<$DYU-H@FBsoeNq|l)_j;4i1jh19L&r3y<);I5NP9bEqd_QpAZw zKnxqGRKPU&!{3wSOMf8eLA5C=>pqqV)mB;PL_Q@$k0G zq-dg}t%FqV=_?pe%T5+^;ZCN4$>EzIqKs;cGJOzanUc|9ONcU=`h=R~nn`Pm77|@7 z0Sp*nvFcO+PArGiF$b<7>nfUe2;{PZUR4d}RsiIkMao7;HDs;0!wK-F3`oFDQcVd7 zb32JaZJju^oDfm+udA{jW=w^j7t+Cyf!{`Yjrw&3OpVPqZp-t%FNt?{CxYW{5udmJ7_!~{hs{^r-E{KtPN$589}Oos^T^Z4vY zeT0z2`iYQp7mKoo=*2XR?2FiX`U&OAnT+gnz%h;w`H&N8mN7s%e9eU3l-hbxZ2Q3> zNWHz@0DK6MDn>Yd zH6}c#3UrRs0?mV_B7Nhb;eERHKW%3?#ufOMzLh#gR)O`M_8ZxAXQV^z=5B>DhlsSl z*OUEMZ%WO_Vvi1_kA^WX{rdV2oFll0aE!&GK@qj-jmSnI%g1}3JAVpmB9RK#!GmW{ z$sUf4C}Rc2Gq=E0H>b3zM<2O>V~OOA*I&V)W(7P(I+db2rxwoTU?24vP)W9M=H};Q zda8lCFQ-nN*Jp@mxpHzvUU~7A;Kr?+$(N2|5Kq*j6zxEYi}S5vQ3YbIAq_JHbAhO;IT56sO20zt2V|0?B93Qi zVM-zMkqMN+keZfwIs{PA(P-C2WYC3yXvldr1!g#&W0Z1i6W<&IQ(ihB3j6fQ1nIS9 zI?oyljpcGy1^_xXE?pD9Ue^0X??AwU)HlUE*-}B{emso8RV)bfEESv>!I_nSMl#i1 z2ZM&a&7d=q15&ZDWUpeF6Zo-S*IdScH4i>`M*DgLKzqj_VwHP-T|m4dWoz z?_3N-&^Y;_L3OgtZZ49HO|X_E~EeJU&zUFMwt|h5F>ns^4!?J!F!}c zF9DA;?H~g}8?qB4@JuvJtbCedQ#|J$O47t`oQa@~7=4dPU3X}4mW?s7H%GaKM)Hbe zSb`S5rnZh%#WE;m5!bN5>lmBy8*d`aBgPpKg)~i98xDG zLZh(GoRl?`dl6r`2_U3X29C7$_7~R zQ2@9c^>d^K9;m}28q744=S4XN$hQHoag_P8ht%~u&%Y!$Z{3m0m#*r%;W}V^^{^(c zU%!UPK15_H%QPTxpqVj|)V4Q5O zu6ZxL_;P&u?AZ@}<2&E^yKo?1{(eR=|N9-is=44FaYpOKx;>5LZ9Nb(}|Zv zr3fd6?aEzX#j&X;7co|p)X{9_aOOUcJ>_89`86Gx!Sx|wd5CM_Aj(fq)uoO4ZHU)0 z_G^QD!jp8&XDFXCHA6H^!7EHzpoemRv6Y$SB>)yXvT}M^vc7xX0-zZLT&JHQz0N}(6&%G*}o4Xi=G4v}*%(_YPkv5{IX6G;uR@dlMM+!Ma zddReO3BRwSksZyYvbMDa`qdWJ2n@eim1Ce(9a~(|Ci)~>D4|_(2aWEQRQOy5-sjy-($G`Q}8}FN{6rZ?t?F!aS>=kEDz_@%BR!OZGWfU3ePnwzw#<6~0 zm?B_So-pJAG-V)ZmN#y~c-QF1)X|L(#c8-W7)AJd(rdDyFR}Nbb&)d>iGhJKq4;-S zl**mgP#hn~0%|J)0!?`DxIfnD8Cgw1$MPO|d_*{nrbc>?!K8=j>V%bVC|T)ur;3gt z;@%??XrT>9qf2}bI5PQ3-;=Xfa1z?ngH>sBTN(dmL?yJ2)v;vV*pBKr6N$G8uaMW4 zoXHs!_88@G5XrYetZkuw3=`8UEWin|@5Ca>Bin`b9u_yR=hX5X80}58Lk5~vi1Iln z!>W${Z06TY%1FjN=if$fs3W9?i{JrXy?8_FXP2az1G)*)u*Z7@LyUAF)_@OYxYN-_ zeGn5)N5dYC>N46n8HdB6xWC9C4$uT={ac@%(v0BP$tBReiaMytH8KOXMh^~RfakHt zck9+|^utIzw!%Kv9m^*~;J_Eu7xS#rG`wC$XsVdokBFP*e?To^*idSR%rG@}=d zDPJH|pH=W8ie0^MM4#Fm;L{uGDtN*9CN?lxd$BL3Wd%vI@u6I%fyLP%1zFU+_L?kg z+>p716sjH;DGa&I;md)QH}g~rLhOi#SdBul^erPjm}gK zu~889NXxQ~Y8@4^Adi{%GKipq+Ok+MtQ9*`Y@?Hncsypj-+&xEF|2<&88z$3%7yaS zIbVh7l&_+u0o^E5HpM>yoF>x07%AESp@XN}QBfbT<2#X3etkF|f(6WzNO9CN=aYI*?)TQr_#Rl@ER^cKfg(}m(AA#z=NTt z&-}wFi+dO1`5`QdnM=QKvV{!NM5eY4 zP`xT>WJhoqQwvi_9eb)!#hRK!ohO!;ac_oHm6CY?B!$9xS%8cH$7>waT{XP6gF1F+ z?*R22kWI{@k-6Q+IdZMUN(xAjZr0`2?KN+8{WhcNPkr&LU;M|ozI%3Ur}x#s&^w?B zMgRUg&VFQhv08uexfh~rq3kDqk*rrU*L65HZ0SFVRh9LeL+D!T2YA_$rZ$El9@|+j zdi4<$n>OxT7xx4xP4fj^tU4GOm=Tj0&Ep8^&yeVl&9QSx5rS8rm&ySkVsPc+gKcdZ zYm_^zT}LdmX4x3nvr8jf3PjW99xskN9shc%@Nl8$8oS`mxL`8UzC zAxYN|mR&{UdhGqdNmQYk!PHF&$CxSG!SObGp{B>Nb_%cTpW+yxw-Lk(Oe-xBFI)EIDlp~5X(lS8EW z+iN?rh*WNU?Y884a7SfCD>_6Jd`$IS4-OF#BtmbDK7uMzVzpJ+!{kt99>+8XL*ny` z$cTza^?KkpE~2@89>+F z`AVI;b4e44SUW_>-bn~GsNp!ZDI9b9SwgH$*eFi>*6)e2`AYaaE*?x@ZrJwKs6Ik=-Legs7BZDhop+`Fb19WeVxnBD5=S zAj;&Y@;W}F*A%ANvYAWtJwpGI_7 zISJ@~Y;0^h1Xxg}{5=}jWNqI!17iqfA^3}*c@~Z$_d%v4NT=L@yK@<-;dSv26)$u&(-3hjD?yE(8i)8?jyNP@=s~7Om*{Y!*rqT& zePVUr-PEx)oTE^15#uK8<@DfHuf1_gA?&lK=WslpGC{Of!+WvrbO=oo?12|wSXh)E zXh1v;DqzL2nU1d4i>kuZ!qo6M)>25X8M%j3P{O51Os91KrUb~wFl2?1>@+u97X*H| zaLY)If&hRHQZYt-D{^fBAbcJPzyq*UhVbkx@o278b=v~lBaaBc$z@dt#=Y8awPhyL z01R(5GDu|_A>z>~@t$ZyUkpOW%XS0J@RM&lCvDvKP1L;}q}d|hq}9p^#ng8m6ft&W zs1iH^=tX4L3&5U7ddZ#$m8CL83~*wN9D@?@doMhoyiG+@eGF(i$8~hY#X##zIHqU* z{5wMMvJF86_-`ITR( zVr{p+*EI2aGO#ab=UC#OeC+sRQ&ahw*Iv4kc$vIA!fqpj!AQezY!#GrltfZXnvIR# zIc_W)xJu}bA|nUJ_~pCWgr<^gz&R-_$PUoI5jlX!!}kCM7cpXBP7UOM+LAH>`?nji#$PoiFNvw#0d_opvNm zM2Jj~Iix+QVaXva!>C;mO~d(YLUgkY5^Nn_{oE;l3`mJK*IR5IYs#Ctc36~N80UWM z_;F2>Qpd19QafqQfyfdTcNU<-y}ZkKykl7M_o)`9HzZHL;9pyOebCGZe|%h~GyfCyc^&KWQ!Ncd$P zRK~GY!Q9|&9Z=4WjGDwX+ay_M%81(mpR|Sgb7g)SsNTAyUAV47PC28hSqTRdWK#@R zmX$?M34$J)%1&zPG)_|}$_vRhrhNxMe%}B>$OuNRC68eTBB$Ois8*|+a`EbQR^M8u z(fHYxAd20GBW6|=={#YiY@ZSw^v2Gkkn8+TYtvGKHGkM+cp}!(=i5XnQ(j1MtGSRHG%gkI*YF zUITrL43M56F}e+o&h!AaBIDelC=1Xpq<=!jMM&KvcsZbfd#J5A$JN86>$k){}R7oqeqy?m^MS)O}3p@hLr4M&{Ma#V5+ zTzM(t9#XD+glM7d0)RVJey}*Y5P1biRRG9x8wBIat9Q&kWpJ!)XK>AsnZYJ~1%j((AeBs? zyQpa?y1IwPIhppXeO1&5&Y+5G(uSkhf?*PnBH%j*r?I!YmuP<_Oy7^g{}Z!Y>U~NP zpLERa^0VH%v8Iu(^_^(J2Q4COhk{?angd z5sIZ|9@z#h7}56TZAB27<_$4UGU#o~&SrwH{2et03gZkhRM=@BNQwo=8$L$`BS?n% zj8YV8;Z7b{blEJm?7@f283fW?0m@kejT&IFZ}oJb@%%y!YrvD)I;LwuSlxvYUqMeO zVSmc%UO4yi^B7&gB41o6$XOT{S8}^K!ZqO-3uLc>h<4ybX)KA|;V+NzksT-l*RXR4 z9YYWlbQ;%1`Z&{o2q$5A8%Z_7Y29SfT4n?~Ylib>-IK?;jfuR*hM3DW(nd7c*fClf z^I)6v-y@x(w(OC_Fj9t`!_yI(M4R;S*vK}}(=(!!0W7eu$a}+R$6?12?rn}!*O^2q zU4y}nM!D3vNA-%%2-mBRtYdp^OOBmbkj>jyWw_lDZ@C2coY5ROfM#Tg7vEU2CYZSbvW)Bb|JwmObaerhq!uAhm#9cy!h#j72sBq+*>xjBtM@3Lw?>#(+o$s*@^S_4z%xo9) z#MhAS2M=(_E@qNW0TatuFnlxHfv4s;;opGsUwJJyxquS8ztx0&z}IoafQEIjzX{g& zy6kS=Q3Hx$1jw0GO^7>-IGLhqx5p`Gqe7+VBv|A{)I2$&Ra8R4LTMlsm_q8uTyzI1 z#%qWw?2*kvuw@qGDOGsX_056YMlI71UAvQ|sfDy))Gc`|n`6=|(~S~bbq20#;*Vt! zi{{LU8R2%95!n3Q))+T2K-7x0^-v%u4u;33Col!w*QxGO$=4c<5s;}R zd666_JY6C>;JWVsgou;W$_ONiv~rYY2Wb%LO;z^UN>g%c zZBttnL^YWnjkrmM@)Hp$P}fm2exj_?MMw!at*Hu%D$p^ebj{ma17lpDQE-bi86I(f9fQ_ zq72?Q!M*~`ePl7?L=Ao5Vyp=52x@eYi(1B1#Bkh3{k;h-#XRnHLmeuYRu%1mjm*Bh zcKMb<^ghziv1gn(vl=k4-$%+L25+EQv4BP$tqHAZ$gB1&1`yoDA+;%Szf$6_%TFxEzW&Vn9gP7Y^H-8&dZb_zPx zEtWXC&uoC;$vzhLJWxrMH*3={N(wX(+~9eX06@4TU31ewRo5~?rX?&|_TgHX1}3we zj2S+ka6aX%N33artnv%fII%M3cNK`ah)F}k&WN%C&B7*L)1$V18BPq_HMOA4vbzi3 zC8i{(Hq~LhNC1N%6P!^G*M1*bBnjFSjoLKU0k(ZYZ>!U8t4!Mn5pswOfMf+S=Zn-e zu^^NZv*|oIXNGk#kLypzxUWrj0~o1H0&7oF?2t+VzyWbTUkHQg|Kn$#{j)YD1pwKn zZ)ya)aN!Gj3FqsXMWhwEZl{&{#G-jJ1e$eA9QJGa=)t_AR2UC^nCZD?{a8+&=Hb~& zNH5&U_`YXSAdanfyZg!<;D0qlnz0K59k|MP2tm7PwsvqadPoI0q*yX_-l!|H@IH0i z%tc(}DlXUymoKXWTE@aEqe#!|;3CqSN=8mhi5bg4t#@jrs{V#Uek9Ca-@yJ>7^P_u z!ga=C+S019gA^~-`LqdHm)+M>=a)!J#vS9P6Ntd@wjIh!^9BlMyYe~~k_kqdg3*(5 z!-E}7gRnpWP~?1Ltk^yk5f6+CM5Gb7dBs;9(T~?^eYL0O8ryx!s1?FV00*B}K^@yi z-8D)L@Zv^huP)CCG@+%8S{HCRh74g8R9r&T+mAF|@)AQrZX?1HED3UfBDmBc9AMOl z+eEEm2W{5(WW7jevK1S9vDzF`yv^&B^wpf2Ln@rE=`Aia(e z5wnioyY-C?^xZa8!jF;#oD<`*O`%otz^UWvj0tokH*U)|vKb~QiLO^V0XS|Dq%c{K zE}xvuz5D&|T>70~m(>dwE;w&`ia06$P^d1WM+c;;leGISZ*TP#)xl#gV;vIH>*$Vm zu$4~=ROoH*daoIuS129@IN!tX!Ddc&f1L(3f`4AUI(06&aQAod|nlQ36QLA zVMi0Be-!lW1N2~IDx(IO!cCol2hO5aD&s!4Fc(D3?9|!QI{vYxX9cE&O_%w)9D&xj8-CMIo#nPXra%)rQz>HxUHW)ci zm1hCZ1O3&_H1JY)tyDcO0fMg9V7{MdI%O6X z8l(Ux=+#xp-cr(Zv5j>C3dR8q!*WJ@c>Cx-u~DvjM4-0Z!t`zkR(Ve;KxQB2#LB~Q zUo4s_q2~@F1)~p%y=^fD(E+NJCmf3ub033>WA+HapFBRhgkD;#po2ETQv-B)3VMM2 zGz+E+dQ4P#Dq?Z&lN23MwisbYeYF)E+Mh^}k>lq0= z9}xa18e1(AUqwNghN`d)$NoJtR~9LG8*L8g8m2hLHdLGvOF`3JM3tSBD1gHe{~=Pq z5{zOd2CBG)v(E;qm$BQ%o@!99$|ZT7v>*tTslwrc0m8my4(a=e>XO{LzJUlfR_VPK z1WId&#B3pW+QiSPnlt4WsK?mql6vMVx_AJfYKL+P97%$4F%q&Bk_~*7VrLzl;vUA~ zC>@~jzqhq9d*8W;QPi61^{C?0)ikh$i{#q*E{>6~PvgR5}K+3;! zk%M?3u4YU0&}~_T?gK|DsLmUU8Luy8Gpb*~RLfWC^;ma=T;Caht~6G*fZQ|d#kwV* zO=M+p3gZyIs$%&V)+EKJ3$GrbK4@aGjK(I)>ORoA{ZS0MPEHyaKL|x z(vyKv%|NEl9V)SXghDuuaY{rO3CM6_dV;)eVa}@x)u<{`TIwNoHuuoLZmIq}2U=SP zLp??^U+PnV0#Y1+9V0XWB0`!8**9buV{Q$M_n=s5z%evVTBEk+eaS#dfN19o+AV#g z=Gr+Iv&AlV+GJ0)P2dD5FSQplIkt~*AANkm$jP<=1HWO}N&;E8`(t38UMJ5U1M3FL zX;EY{sFbNLAlU(sC+bS5AdXFKVqoW46v%a~@Z~IF|48qBUR%7La{j2J!9~x8 zauumaJzG-^d14<94626|WNo{vO>UzmYIHDogL8oO&z+u@5=YfI-ONU+XIcp{2+6(O zE?DG%@v#B>P-UfjW$PDfd9V+_q(F2ISy#ArkF59}P9zN(KLlA{CFojMJOppBff^z# z77vyecbxIn=tE_rdluJnb3i9gV4K!8jBVT*Vqp~}i_hlf4HLG%XSaamdD3y@aBqfV zGmi!>Se$#LOc8=p)a|H(K{7=B$1;;BT^|VU2sQICVpBNK`^SudJGC&~YmJ;s3Bq5&YuK`(P^wyM2SkJ5gq7fHR+IXxoDaEAQMMGRf;!FW}64(Ch>ZuYx& zu}1fCjR#ES0snWAu@oz4$tkg5L9T*AK`|Bhy z?kwvps@2jX_Q0;*z(C#%XfJ#wqaCHA*;%hbmg|ADXI1b8x*l>G$lL0TTky7+;i8ei zYS#Bh7^K@(K%{_~q9USP1`(wQZXDk+tBX(+h+to55mBcDglc2=K#SQ@CL5Zdq8`%t9j`@#5z1j0% zbY}?%!zc@g%mXh`#>8ZpRM9@OX9+-*Dn1pS^)nx0$RW4_$QrBeRv*+2_>uAQoY3TuX zQ=tK3t+bK89m7E83Px&fJ^zYafa=&)4?Rxa;~{!nV0=Vrv6z06=sei_q<0 z`oFc>mD&m<`--O3fc2BP?*_(=bySC)VxBlL&K~91@5-8u@pQB#HE<}us8y~zO=5BG zVtix<=pN^+n8)XlKQAvYYviinhOw8y(Uymxw=hBqdJBcBhm@uaw)8f|RA3ZUbnU4x zm_-^;VV}k^WMRX6hX>@oUMT2q0&HQFA~S@$o)A&v{&-A{xVXEBz&n70iF7hea&>n< zrfr@M6Gke}#-Ttn4C)(*M;AVELjK)}O}#^HKNjU|@KS!qW7C`hJQ@)^2mlSu#I`n! z$J$e4)MQF@u-i0j7SA)Auj3*P0FRG=4gyEl^o-_655jgpX$H9w5VY(ZG%zx4=!;-O z2C`t#03LA%P&?r~hLNytBg>tGh-6)`KBAO%1(9bDko%a7cD!eP8uiQ~`d#qs*%)Xq z*dAFjYVe-(?>i~SKXhI${_#b5`S)K&l*)?{?oQNr*;mVhg))VDtgXG#SZg^Nb(D;Z z$PeyN3sTr~sEy|Ut4|}%OVB1+IbD<0QAg{>AU5mA2Z~uj^qhveRu`jCJ!(E8dJcgu zGElSQ7@+M{4IeS%3sJ*#e~M1WoPW z=g?r}=Ht5nNuGTf;}ZDYc|f`+SLSqEoNZ_+aN*^!DA*4w6>HF|h^>YP78w3kq$VEK zYRP7RF*VyG9q?o)zmJ+&xXLb#(@z8K%T@w*XcQVpmflqLMBbz1_(qP0UUr zZ5W0RgDs<`q^!X%5V-+?k2KKw#dQs5FSaVaY|f@=DNvxMjTtJJySiZ2kOiJt$`qeZ z1Ez#rNMbX3WW?MuoS6&Qbw{6ygQ956hVa&OCS+@jaIM(HZZxtS^_I*uGK6Uy?*{89 zB*m0!fOB9?M8wpHS!2TC_WhZ_c#m&bnThmbk}$!sF^-+~wp zoZ-oLotFB8sQZDAuDoYKUj36-0Te}QxTI_`t!24To1Rm}UTS{mcCbh&oaX_ukYSi=WaLOH`=``QJcg}{ zxTyqbbKHqD)Gcbck>8$i+_|#0g@!5}7pie`zeGkk-lJWTfwzGoB0HHwR#-w59U+}X z-I(706w!&b8SYtXjn-5+sZKLgqA3l4`8d5Xy_kzdOd)?p4mLWoxWT%6Jv>PZ9<8PO zLixzgXE5eb0;~>UO8l+Wi;a#I)KpnCEPy-^E7mJ5qI0Csux7z~P?M1zump=~ z4f%aPEvVRvj@Q_&k94Gjid59Nz~TsUCfXFdK+l^nGb29JW-bykT&T3Whv>yIf3y`f zwdHty7tnIBq|(}$3lx?&{U;j z!+6LM7PKMgojuR&70qThCC`|8)5v?EHUM|KQj_HUa;)IVwYeMWa<39m?Brk1)Qnhu#w@Z$&sM)`Wc+2K5RTD*H&`v4g_?$^0@VlyTSJxVoXe!iB{J-B?05-$Tmi7BgDw)pB)=<8(En;Pu-Ft0RL> z{4^pdRj!!AQ(0?klk(hfq*X*|7t;uEl3n!77|E#wJXDm`Y%MzC1`2P1iDpX>b?vT( z5IKS8DuEKyYxec#XGomo-dq`qngDV|lb0hFo@e$?rg~DV#f`H?Ib<{7{^{5UF66~a zuPaY*j0M}r_W@vVqF1hkfq6kfK(AF&dYCdh1|eg=X@JE$jm6&tYk}VIp%t(g5K%c0 zNfq1yJlzbGk2uD_87AGAOE=>}DuiK3CJ0O$^SBY5fG$(X2@5F%!bklGvKM4*Xh|wU zYNrRZ=H#>hWw|+mG7-0#P^}U(^f=jGPxU{5YSH`iNxViB2hP%Sr!9Hp{mU=_M6_8< z9it}UqKdI7Ite1sw26uyS`EPhn!>M85HzP$G~dYTW6B^_P=mlrXce~T_!x26IOe!Y z6<`Ws?ep(H4;_z;Mm@9XVXVz~-7%D{b}Of#+sopjatk9KuZo}AEn->Ia?fc>ArR%$ zfeL)53KVe~-m@w=gXH{CT&D~JBjI~(dl%QNsKc8X0x>X(P1Ib=iBrX?m-OAXgV&sk02+4BpLu!sA zI(YSMi^g{ZV~XGc@E@gOuRO&&!>L*+9n4T>c@hd{Al zns{vv(ZExBR%+x3C^JU_uhNtf)s0v28C_h+=pw@*tkn@2d`48Z0ZvFI1$8!aD^bS$!P4JU$Igd^AZj05u-^u?M7a z1~m{C9<}OoCo$gQ^$cQ$T8NX#2du-`b5uwh@57yD?0w-_J!h>rveE|H`{++RERX)w z+fc_0?Dn(i;g*{OZ{p;xOb;JLjF{ZnIKb!%YU?)A)P89BhxmM?-$Q)13&uS^qm3zp zA~KTY(hI^enOfrG+nHyV1Latr|AXDYuX@QQP z)V!h+$P+tVFp-_;x5)0npeRIplmNlZ2kU0UX=ybuAZ@0C&-v&lzIa4PV^+T`{_F)hlpkv>ojsmuhXtW2T*avrv?B)QyhAd9J z2Jcb_VUwGwZDZbP8anG7(P+SvW_&hgBh^}HW$1T3h+#!|)@TCL)de@>H zdjd*Pa1LzjVpB7{{<%f;*UC4rl2aiiSyw0P(%iA zpcY>Ekuxx^2l2N9vR=)eWa&L>s;+am&od2Z2oT}1k3TN&_}DuEn`2YHYrFD|fBx?@ z#peFXE^6O4oPryeEq{lA*At|`D+@Eq2uTouE12Hyka5%DzSmieeg&j`vsHjSF~JvP zL4eW;j^%K#=9XaqRbRC{xTEDnszH^pQbypG)`HVmbEKVdN@Ew2+#8T?qf7zSkQsd` zu2e%Sg7o?!>vY_l9{1kfK?=RlfRYu}wy2$7c?%erZl+-1W73>BNz29`(+5(Lm;_O_ zxPg>wz)4jH#VvVmFu-o7r;R~^2J3g$WEzvNu4f_~2P;V=-32S41r|qFkvDusV6@xW z2+gC8Dgw1!#7M<*9>%(QTW7s|EG#Wgb;tRUoH{;_REBcWL!Gi^jWGa<ouem;)h<>l7;Ch0%Qgkj`oN=qG$ItD_y zWz;cT_p?6%;{vxcajhWEM17cOtnv$8Gv{UZe`X5l=RK{9sLs3m_C>kyV~@#mpZ^wW zp`kuECQKWfy|xKDCFnU7f%eW(UJnN~v$KcZ9daK;s*}e-iVg!E^%;jP zMNUZq4)S1LRHo4!XUfjWcr*ILx|VGR$`q7vjs>KN8D3{NiR++dQF3Aa*n-a45rO4+ z(+GPo?SVR{dig#De;P^wBiqJ<>X{*;hi?(#(TOgGXSUfHfON~6jKh@MTRW<=!Mv7* zw1?=_#hg~L1nK7n#?^D&{liydVsES0;ido{IE;ImmauQe;kX(`5bi)@BNG^f91>V_ zRFDOLaUSB91uU9vqz5rB7B6rF<_2{os99b_x=GpW6bpgu0UFT|M#7CEdXy^g0=u1( zITuskC5QTXuHM8{$5(XJeQYRHIZDC>i8>XIn~;@G6tj`fs==}*iP-BxO5%bY&}t5K zf|_F*V*m~t*jANvsWQ;N(h`0*K%+J{;xr1tla4(4;d45gf@)roPBCgFx=?9YOj&IO zjAKOl4Jud(&C*4bGX?b(@QrsTR*9^0+~BN_-NwQJKsH5